diff --git a/asm/Kyoto_CWD/BodyState/CBSCover.s b/asm/Kyoto_CWD/BodyState/CBSCover.s new file mode 100644 index 00000000..fa8e08ab --- /dev/null +++ b/asm/Kyoto_CWD/BodyState/CBSCover.s @@ -0,0 +1,579 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__8CBSCoverFv +__dt__8CBSCoverFv: +/* 80175CD8 00172C38 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80175CDC 00172C3C 7C 08 02 A6 */ mflr r0 +/* 80175CE0 00172C40 90 01 00 14 */ stw r0, 0x14(r1) +/* 80175CE4 00172C44 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80175CE8 00172C48 7C 7F 1B 79 */ or. r31, r3, r3 +/* 80175CEC 00172C4C 41 82 00 30 */ beq lbl_80175D1C +/* 80175CF0 00172C50 3C 60 80 3E */ lis r3, lbl_803E3E48@ha +/* 80175CF4 00172C54 38 03 3E 48 */ addi r0, r3, lbl_803E3E48@l +/* 80175CF8 00172C58 90 1F 00 00 */ stw r0, 0(r31) +/* 80175CFC 00172C5C 41 82 00 10 */ beq lbl_80175D0C +/* 80175D00 00172C60 3C 60 80 3E */ lis r3, lbl_803E1318@ha +/* 80175D04 00172C64 38 03 13 18 */ addi r0, r3, lbl_803E1318@l +/* 80175D08 00172C68 90 1F 00 00 */ stw r0, 0(r31) +lbl_80175D0C: +/* 80175D0C 00172C6C 7C 80 07 35 */ extsh. r0, r4 +/* 80175D10 00172C70 40 81 00 0C */ ble lbl_80175D1C +/* 80175D14 00172C74 7F E3 FB 78 */ mr r3, r31 +/* 80175D18 00172C78 48 19 FC 19 */ bl Free__7CMemoryFPCv +lbl_80175D1C: +/* 80175D1C 00172C7C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80175D20 00172C80 7F E3 FB 78 */ mr r3, r31 +/* 80175D24 00172C84 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80175D28 00172C88 7C 08 03 A6 */ mtlr r0 +/* 80175D2C 00172C8C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80175D30 00172C90 4E 80 00 20 */ blr + +.global IsMoving__8CBSCoverCFv +IsMoving__8CBSCoverCFv: +/* 80175D34 00172C94 38 60 00 01 */ li r3, 1 +/* 80175D38 00172C98 4E 80 00 20 */ blr + +.global ApplyHeadTracking__8CBSCoverCFv +ApplyHeadTracking__8CBSCoverCFv: +/* 80175D3C 00172C9C 38 60 00 00 */ li r3, 0 +/* 80175D40 00172CA0 4E 80 00 20 */ blr + +.global GetBodyStateTransition__8CBSCoverFfR15CBodyController +GetBodyStateTransition__8CBSCoverFfR15CBodyController: +/* 80175D44 00172CA4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80175D48 00172CA8 7C 08 02 A6 */ mflr r0 +/* 80175D4C 00172CAC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80175D50 00172CB0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80175D54 00172CB4 3B E4 00 04 */ addi r31, r4, 4 +/* 80175D58 00172CB8 38 80 00 0F */ li r4, 0xf +/* 80175D5C 00172CBC 7F E3 FB 78 */ mr r3, r31 +/* 80175D60 00172CC0 4B FB B6 F1 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80175D64 00172CC4 28 03 00 00 */ cmplwi r3, 0 +/* 80175D68 00172CC8 41 82 00 0C */ beq lbl_80175D74 +/* 80175D6C 00172CCC 38 60 00 0E */ li r3, 0xe +/* 80175D70 00172CD0 48 00 00 74 */ b lbl_80175DE4 +lbl_80175D74: +/* 80175D74 00172CD4 7F E3 FB 78 */ mr r3, r31 +/* 80175D78 00172CD8 38 80 00 03 */ li r4, 3 +/* 80175D7C 00172CDC 4B FB B6 D5 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80175D80 00172CE0 28 03 00 00 */ cmplwi r3, 0 +/* 80175D84 00172CE4 41 82 00 0C */ beq lbl_80175D90 +/* 80175D88 00172CE8 38 60 00 00 */ li r3, 0 +/* 80175D8C 00172CEC 48 00 00 58 */ b lbl_80175DE4 +lbl_80175D90: +/* 80175D90 00172CF0 7F E3 FB 78 */ mr r3, r31 +/* 80175D94 00172CF4 38 80 00 09 */ li r4, 9 +/* 80175D98 00172CF8 4B FB B6 B9 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80175D9C 00172CFC 28 03 00 00 */ cmplwi r3, 0 +/* 80175DA0 00172D00 41 82 00 0C */ beq lbl_80175DAC +/* 80175DA4 00172D04 38 60 00 0A */ li r3, 0xa +/* 80175DA8 00172D08 48 00 00 3C */ b lbl_80175DE4 +lbl_80175DAC: +/* 80175DAC 00172D0C 7F E3 FB 78 */ mr r3, r31 +/* 80175DB0 00172D10 38 80 00 04 */ li r4, 4 +/* 80175DB4 00172D14 4B FB B6 9D */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80175DB8 00172D18 28 03 00 00 */ cmplwi r3, 0 +/* 80175DBC 00172D1C 41 82 00 0C */ beq lbl_80175DC8 +/* 80175DC0 00172D20 38 60 00 06 */ li r3, 6 +/* 80175DC4 00172D24 48 00 00 20 */ b lbl_80175DE4 +lbl_80175DC8: +/* 80175DC8 00172D28 7F E3 FB 78 */ mr r3, r31 +/* 80175DCC 00172D2C 38 80 00 16 */ li r4, 0x16 +/* 80175DD0 00172D30 4B FB B6 81 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80175DD4 00172D34 28 03 00 00 */ cmplwi r3, 0 +/* 80175DD8 00172D38 38 60 FF FF */ li r3, -1 +/* 80175DDC 00172D3C 41 82 00 08 */ beq lbl_80175DE4 +/* 80175DE0 00172D40 38 60 00 05 */ li r3, 5 +lbl_80175DE4: +/* 80175DE4 00172D44 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80175DE8 00172D48 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80175DEC 00172D4C 7C 08 03 A6 */ mtlr r0 +/* 80175DF0 00172D50 38 21 00 10 */ addi r1, r1, 0x10 +/* 80175DF4 00172D54 4E 80 00 20 */ blr + +.global Shutdown__8CBSCoverFR15CBodyController +Shutdown__8CBSCoverFR15CBodyController: +/* 80175DF8 00172D58 4E 80 00 20 */ blr + +.global UpdateBody__8CBSCoverFfR15CBodyControllerR13CStateManager +UpdateBody__8CBSCoverFfR15CBodyControllerR13CStateManager: +/* 80175DFC 00172D5C 94 21 FE 30 */ stwu r1, -0x1d0(r1) +/* 80175E00 00172D60 7C 08 02 A6 */ mflr r0 +/* 80175E04 00172D64 90 01 01 D4 */ stw r0, 0x1d4(r1) +/* 80175E08 00172D68 DB E1 01 C0 */ stfd f31, 0x1c0(r1) +/* 80175E0C 00172D6C F3 E1 01 C8 */ psq_st f31, 456(r1), 0, qr0 +/* 80175E10 00172D70 BF 61 01 AC */ stmw r27, 0x1ac(r1) +/* 80175E14 00172D74 FF E0 08 90 */ fmr f31, f1 +/* 80175E18 00172D78 7C 7C 1B 78 */ mr r28, r3 +/* 80175E1C 00172D7C 7C 9D 23 78 */ mr r29, r4 +/* 80175E20 00172D80 7C BE 2B 78 */ mr r30, r5 +/* 80175E24 00172D84 4B FF FF 21 */ bl GetBodyStateTransition__8CBSCoverFfR15CBodyController +/* 80175E28 00172D88 7C 7F 1B 78 */ mr r31, r3 +/* 80175E2C 00172D8C 2C 1F FF FF */ cmpwi r31, -1 +/* 80175E30 00172D90 40 82 03 E0 */ bne lbl_80176210 +/* 80175E34 00172D94 80 1C 00 04 */ lwz r0, 4(r28) +/* 80175E38 00172D98 2C 00 00 02 */ cmpwi r0, 2 +/* 80175E3C 00172D9C 41 82 00 24 */ beq lbl_80175E60 +/* 80175E40 00172DA0 40 80 00 14 */ bge lbl_80175E54 +/* 80175E44 00172DA4 2C 00 00 00 */ cmpwi r0, 0 +/* 80175E48 00172DA8 41 82 00 18 */ beq lbl_80175E60 +/* 80175E4C 00172DAC 40 80 01 34 */ bge lbl_80175F80 +/* 80175E50 00172DB0 48 00 03 C0 */ b lbl_80176210 +lbl_80175E54: +/* 80175E54 00172DB4 2C 00 00 04 */ cmpwi r0, 4 +/* 80175E58 00172DB8 40 80 03 B8 */ bge lbl_80176210 +/* 80175E5C 00172DBC 48 00 03 9C */ b lbl_801761F8 +lbl_80175E60: +/* 80175E60 00172DC0 88 1D 03 00 */ lbz r0, 0x300(r29) +/* 80175E64 00172DC4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80175E68 00172DC8 41 82 00 F8 */ beq lbl_80175F60 +/* 80175E6C 00172DCC 38 00 00 01 */ li r0, 1 +/* 80175E70 00172DD0 38 61 00 90 */ addi r3, r1, 0x90 +/* 80175E74 00172DD4 90 1C 00 04 */ stw r0, 4(r28) +/* 80175E78 00172DD8 83 7C 00 08 */ lwz r27, 8(r28) +/* 80175E7C 00172DDC 48 16 D2 01 */ bl NoParameter__12CPASAnimParmFv +/* 80175E80 00172DE0 38 61 00 98 */ addi r3, r1, 0x98 +/* 80175E84 00172DE4 48 16 D1 F9 */ bl NoParameter__12CPASAnimParmFv +/* 80175E88 00172DE8 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 80175E8C 00172DEC 48 16 D1 F1 */ bl NoParameter__12CPASAnimParmFv +/* 80175E90 00172DF0 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 80175E94 00172DF4 48 16 D1 E9 */ bl NoParameter__12CPASAnimParmFv +/* 80175E98 00172DF8 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 80175E9C 00172DFC 48 16 D1 E1 */ bl NoParameter__12CPASAnimParmFv +/* 80175EA0 00172E00 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 80175EA4 00172E04 48 16 D1 D9 */ bl NoParameter__12CPASAnimParmFv +/* 80175EA8 00172E08 7F 64 DB 78 */ mr r4, r27 +/* 80175EAC 00172E0C 38 61 00 C0 */ addi r3, r1, 0xc0 +/* 80175EB0 00172E10 48 16 D0 D5 */ bl FromEnum__12CPASAnimParmFi +/* 80175EB4 00172E14 80 9C 00 04 */ lwz r4, 4(r28) +/* 80175EB8 00172E18 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 80175EBC 00172E1C 48 16 D0 C9 */ bl FromEnum__12CPASAnimParmFi +/* 80175EC0 00172E20 38 61 00 98 */ addi r3, r1, 0x98 +/* 80175EC4 00172E24 38 01 00 90 */ addi r0, r1, 0x90 +/* 80175EC8 00172E28 90 61 00 08 */ stw r3, 8(r1) +/* 80175ECC 00172E2C 38 61 01 60 */ addi r3, r1, 0x160 +/* 80175ED0 00172E30 38 A1 00 C8 */ addi r5, r1, 0xc8 +/* 80175ED4 00172E34 38 C1 00 C0 */ addi r6, r1, 0xc0 +/* 80175ED8 00172E38 90 01 00 0C */ stw r0, 0xc(r1) +/* 80175EDC 00172E3C 38 E1 00 B8 */ addi r7, r1, 0xb8 +/* 80175EE0 00172E40 39 01 00 B0 */ addi r8, r1, 0xb0 +/* 80175EE4 00172E44 39 21 00 A8 */ addi r9, r1, 0xa8 +/* 80175EE8 00172E48 39 41 00 A0 */ addi r10, r1, 0xa0 +/* 80175EEC 00172E4C 38 80 00 13 */ li r4, 0x13 +/* 80175EF0 00172E50 4B F0 73 D5 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 80175EF4 00172E54 80 BE 09 00 */ lwz r5, 0x900(r30) +/* 80175EF8 00172E58 7F A3 EB 78 */ mr r3, r29 +/* 80175EFC 00172E5C 38 81 01 60 */ addi r4, r1, 0x160 +/* 80175F00 00172E60 4B FC 43 FD */ bl LoopBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16 +/* 80175F04 00172E64 34 A1 01 64 */ addic. r5, r1, 0x164 +/* 80175F08 00172E68 41 82 00 58 */ beq lbl_80175F60 +/* 80175F0C 00172E6C 80 C5 00 00 */ lwz r6, 0(r5) +/* 80175F10 00172E70 38 60 00 00 */ li r3, 0 +/* 80175F14 00172E74 2C 06 00 00 */ cmpwi r6, 0 +/* 80175F18 00172E78 40 81 00 40 */ ble lbl_80175F58 +/* 80175F1C 00172E7C 2C 06 00 08 */ cmpwi r6, 8 +/* 80175F20 00172E80 38 86 FF F8 */ addi r4, r6, -8 +/* 80175F24 00172E84 40 81 00 20 */ ble lbl_80175F44 +/* 80175F28 00172E88 38 04 00 07 */ addi r0, r4, 7 +/* 80175F2C 00172E8C 54 00 E8 FE */ srwi r0, r0, 3 +/* 80175F30 00172E90 7C 09 03 A6 */ mtctr r0 +/* 80175F34 00172E94 2C 04 00 00 */ cmpwi r4, 0 +/* 80175F38 00172E98 40 81 00 0C */ ble lbl_80175F44 +lbl_80175F3C: +/* 80175F3C 00172E9C 38 63 00 08 */ addi r3, r3, 8 +/* 80175F40 00172EA0 42 00 FF FC */ bdnz lbl_80175F3C +lbl_80175F44: +/* 80175F44 00172EA4 7C 03 30 50 */ subf r0, r3, r6 +/* 80175F48 00172EA8 7C 09 03 A6 */ mtctr r0 +/* 80175F4C 00172EAC 7C 03 30 00 */ cmpw r3, r6 +/* 80175F50 00172EB0 40 80 00 08 */ bge lbl_80175F58 +lbl_80175F54: +/* 80175F54 00172EB4 42 00 00 00 */ bdnz lbl_80175F54 +lbl_80175F58: +/* 80175F58 00172EB8 38 00 00 00 */ li r0, 0 +/* 80175F5C 00172EBC 90 05 00 00 */ stw r0, 0(r5) +lbl_80175F60: +/* 80175F60 00172EC0 38 7D 00 04 */ addi r3, r29, 4 +/* 80175F64 00172EC4 38 80 00 0A */ li r4, 0xa +/* 80175F68 00172EC8 4B FB B4 E9 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80175F6C 00172ECC 28 03 00 00 */ cmplwi r3, 0 +/* 80175F70 00172ED0 41 82 02 A0 */ beq lbl_80176210 +/* 80175F74 00172ED4 38 00 00 01 */ li r0, 1 +/* 80175F78 00172ED8 98 1C 00 0C */ stb r0, 0xc(r28) +/* 80175F7C 00172EDC 48 00 02 94 */ b lbl_80176210 +lbl_80175F80: +/* 80175F80 00172EE0 3B 7D 00 04 */ addi r27, r29, 4 +/* 80175F84 00172EE4 C0 22 A1 A0 */ lfs f1, lbl_805ABEC0@sda21(r2) +/* 80175F88 00172EE8 C0 1D 00 1C */ lfs f0, 0x1c(r29) +/* 80175F8C 00172EEC 38 00 00 00 */ li r0, 0 +/* 80175F90 00172EF0 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 80175F94 00172EF4 40 82 00 1C */ bne lbl_80175FB0 +/* 80175F98 00172EF8 C0 1B 00 1C */ lfs f0, 0x1c(r27) +/* 80175F9C 00172EFC FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 80175FA0 00172F00 40 82 00 10 */ bne lbl_80175FB0 +/* 80175FA4 00172F04 C0 1B 00 20 */ lfs f0, 0x20(r27) +/* 80175FA8 00172F08 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 80175FAC 00172F0C 41 82 00 08 */ beq lbl_80175FB4 +lbl_80175FB0: +/* 80175FB0 00172F10 38 00 00 01 */ li r0, 1 +lbl_80175FB4: +/* 80175FB4 00172F14 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 80175FB8 00172F18 41 82 00 14 */ beq lbl_80175FCC +/* 80175FBC 00172F1C FC 20 F8 90 */ fmr f1, f31 +/* 80175FC0 00172F20 7F A3 EB 78 */ mr r3, r29 +/* 80175FC4 00172F24 38 9B 00 18 */ addi r4, r27, 0x18 +/* 80175FC8 00172F28 4B FC 46 DD */ bl FaceDirection__15CBodyControllerFRC9CVector3ff +lbl_80175FCC: +/* 80175FCC 00172F2C 7F 63 DB 78 */ mr r3, r27 +/* 80175FD0 00172F30 38 80 00 0A */ li r4, 0xa +/* 80175FD4 00172F34 4B FB B4 7D */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80175FD8 00172F38 28 03 00 00 */ cmplwi r3, 0 +/* 80175FDC 00172F3C 40 82 00 10 */ bne lbl_80175FEC +/* 80175FE0 00172F40 88 1C 00 0C */ lbz r0, 0xc(r28) +/* 80175FE4 00172F44 28 00 00 00 */ cmplwi r0, 0 +/* 80175FE8 00172F48 41 82 01 04 */ beq lbl_801760EC +lbl_80175FEC: +/* 80175FEC 00172F4C 38 60 00 00 */ li r3, 0 +/* 80175FF0 00172F50 38 00 00 03 */ li r0, 3 +/* 80175FF4 00172F54 98 7C 00 0C */ stb r3, 0xc(r28) +/* 80175FF8 00172F58 38 61 00 50 */ addi r3, r1, 0x50 +/* 80175FFC 00172F5C 90 1C 00 04 */ stw r0, 4(r28) +/* 80176000 00172F60 83 7C 00 08 */ lwz r27, 8(r28) +/* 80176004 00172F64 48 16 D0 79 */ bl NoParameter__12CPASAnimParmFv +/* 80176008 00172F68 38 61 00 58 */ addi r3, r1, 0x58 +/* 8017600C 00172F6C 48 16 D0 71 */ bl NoParameter__12CPASAnimParmFv +/* 80176010 00172F70 38 61 00 60 */ addi r3, r1, 0x60 +/* 80176014 00172F74 48 16 D0 69 */ bl NoParameter__12CPASAnimParmFv +/* 80176018 00172F78 38 61 00 68 */ addi r3, r1, 0x68 +/* 8017601C 00172F7C 48 16 D0 61 */ bl NoParameter__12CPASAnimParmFv +/* 80176020 00172F80 38 61 00 70 */ addi r3, r1, 0x70 +/* 80176024 00172F84 48 16 D0 59 */ bl NoParameter__12CPASAnimParmFv +/* 80176028 00172F88 38 61 00 78 */ addi r3, r1, 0x78 +/* 8017602C 00172F8C 48 16 D0 51 */ bl NoParameter__12CPASAnimParmFv +/* 80176030 00172F90 7F 64 DB 78 */ mr r4, r27 +/* 80176034 00172F94 38 61 00 80 */ addi r3, r1, 0x80 +/* 80176038 00172F98 48 16 CF 4D */ bl FromEnum__12CPASAnimParmFi +/* 8017603C 00172F9C 80 9C 00 04 */ lwz r4, 4(r28) +/* 80176040 00172FA0 38 61 00 88 */ addi r3, r1, 0x88 +/* 80176044 00172FA4 48 16 CF 41 */ bl FromEnum__12CPASAnimParmFi +/* 80176048 00172FA8 38 61 00 58 */ addi r3, r1, 0x58 +/* 8017604C 00172FAC 38 01 00 50 */ addi r0, r1, 0x50 +/* 80176050 00172FB0 90 61 00 08 */ stw r3, 8(r1) +/* 80176054 00172FB4 38 61 01 18 */ addi r3, r1, 0x118 +/* 80176058 00172FB8 38 A1 00 88 */ addi r5, r1, 0x88 +/* 8017605C 00172FBC 38 C1 00 80 */ addi r6, r1, 0x80 +/* 80176060 00172FC0 90 01 00 0C */ stw r0, 0xc(r1) +/* 80176064 00172FC4 38 E1 00 78 */ addi r7, r1, 0x78 +/* 80176068 00172FC8 39 01 00 70 */ addi r8, r1, 0x70 +/* 8017606C 00172FCC 39 21 00 68 */ addi r9, r1, 0x68 +/* 80176070 00172FD0 39 41 00 60 */ addi r10, r1, 0x60 +/* 80176074 00172FD4 38 80 00 13 */ li r4, 0x13 +/* 80176078 00172FD8 4B F0 72 4D */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 8017607C 00172FDC 80 BE 09 00 */ lwz r5, 0x900(r30) +/* 80176080 00172FE0 7F A3 EB 78 */ mr r3, r29 +/* 80176084 00172FE4 38 81 01 18 */ addi r4, r1, 0x118 +/* 80176088 00172FE8 4B FC 43 21 */ bl PlayBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16 +/* 8017608C 00172FEC 34 A1 01 1C */ addic. r5, r1, 0x11c +/* 80176090 00172FF0 41 82 01 80 */ beq lbl_80176210 +/* 80176094 00172FF4 80 C5 00 00 */ lwz r6, 0(r5) +/* 80176098 00172FF8 38 60 00 00 */ li r3, 0 +/* 8017609C 00172FFC 2C 06 00 00 */ cmpwi r6, 0 +/* 801760A0 00173000 40 81 00 40 */ ble lbl_801760E0 +/* 801760A4 00173004 2C 06 00 08 */ cmpwi r6, 8 +/* 801760A8 00173008 38 86 FF F8 */ addi r4, r6, -8 +/* 801760AC 0017300C 40 81 00 20 */ ble lbl_801760CC +/* 801760B0 00173010 38 04 00 07 */ addi r0, r4, 7 +/* 801760B4 00173014 54 00 E8 FE */ srwi r0, r0, 3 +/* 801760B8 00173018 7C 09 03 A6 */ mtctr r0 +/* 801760BC 0017301C 2C 04 00 00 */ cmpwi r4, 0 +/* 801760C0 00173020 40 81 00 0C */ ble lbl_801760CC +lbl_801760C4: +/* 801760C4 00173024 38 63 00 08 */ addi r3, r3, 8 +/* 801760C8 00173028 42 00 FF FC */ bdnz lbl_801760C4 +lbl_801760CC: +/* 801760CC 0017302C 7C 03 30 50 */ subf r0, r3, r6 +/* 801760D0 00173030 7C 09 03 A6 */ mtctr r0 +/* 801760D4 00173034 7C 03 30 00 */ cmpw r3, r6 +/* 801760D8 00173038 40 80 00 08 */ bge lbl_801760E0 +lbl_801760DC: +/* 801760DC 0017303C 42 00 00 00 */ bdnz lbl_801760DC +lbl_801760E0: +/* 801760E0 00173040 38 00 00 00 */ li r0, 0 +/* 801760E4 00173044 90 05 00 00 */ stw r0, 0(r5) +/* 801760E8 00173048 48 00 01 28 */ b lbl_80176210 +lbl_801760EC: +/* 801760EC 0017304C 7F 63 DB 78 */ mr r3, r27 +/* 801760F0 00173050 38 80 00 0B */ li r4, 0xb +/* 801760F4 00173054 4B FB B3 5D */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801760F8 00173058 28 03 00 00 */ cmplwi r3, 0 +/* 801760FC 0017305C 41 82 01 14 */ beq lbl_80176210 +/* 80176100 00173060 38 00 00 02 */ li r0, 2 +/* 80176104 00173064 38 61 00 10 */ addi r3, r1, 0x10 +/* 80176108 00173068 90 1C 00 04 */ stw r0, 4(r28) +/* 8017610C 0017306C 83 7C 00 08 */ lwz r27, 8(r28) +/* 80176110 00173070 48 16 CF 6D */ bl NoParameter__12CPASAnimParmFv +/* 80176114 00173074 38 61 00 18 */ addi r3, r1, 0x18 +/* 80176118 00173078 48 16 CF 65 */ bl NoParameter__12CPASAnimParmFv +/* 8017611C 0017307C 38 61 00 20 */ addi r3, r1, 0x20 +/* 80176120 00173080 48 16 CF 5D */ bl NoParameter__12CPASAnimParmFv +/* 80176124 00173084 38 61 00 28 */ addi r3, r1, 0x28 +/* 80176128 00173088 48 16 CF 55 */ bl NoParameter__12CPASAnimParmFv +/* 8017612C 0017308C 38 61 00 30 */ addi r3, r1, 0x30 +/* 80176130 00173090 48 16 CF 4D */ bl NoParameter__12CPASAnimParmFv +/* 80176134 00173094 38 61 00 38 */ addi r3, r1, 0x38 +/* 80176138 00173098 48 16 CF 45 */ bl NoParameter__12CPASAnimParmFv +/* 8017613C 0017309C 7F 64 DB 78 */ mr r4, r27 +/* 80176140 001730A0 38 61 00 40 */ addi r3, r1, 0x40 +/* 80176144 001730A4 48 16 CE 41 */ bl FromEnum__12CPASAnimParmFi +/* 80176148 001730A8 80 9C 00 04 */ lwz r4, 4(r28) +/* 8017614C 001730AC 38 61 00 48 */ addi r3, r1, 0x48 +/* 80176150 001730B0 48 16 CE 35 */ bl FromEnum__12CPASAnimParmFi +/* 80176154 001730B4 38 61 00 18 */ addi r3, r1, 0x18 +/* 80176158 001730B8 38 01 00 10 */ addi r0, r1, 0x10 +/* 8017615C 001730BC 90 61 00 08 */ stw r3, 8(r1) +/* 80176160 001730C0 38 61 00 D0 */ addi r3, r1, 0xd0 +/* 80176164 001730C4 38 A1 00 48 */ addi r5, r1, 0x48 +/* 80176168 001730C8 38 C1 00 40 */ addi r6, r1, 0x40 +/* 8017616C 001730CC 90 01 00 0C */ stw r0, 0xc(r1) +/* 80176170 001730D0 38 E1 00 38 */ addi r7, r1, 0x38 +/* 80176174 001730D4 39 01 00 30 */ addi r8, r1, 0x30 +/* 80176178 001730D8 39 21 00 28 */ addi r9, r1, 0x28 +/* 8017617C 001730DC 39 41 00 20 */ addi r10, r1, 0x20 +/* 80176180 001730E0 38 80 00 13 */ li r4, 0x13 +/* 80176184 001730E4 4B F0 71 41 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 80176188 001730E8 80 BE 09 00 */ lwz r5, 0x900(r30) +/* 8017618C 001730EC 7F A3 EB 78 */ mr r3, r29 +/* 80176190 001730F0 38 81 00 D0 */ addi r4, r1, 0xd0 +/* 80176194 001730F4 4B FC 42 15 */ bl PlayBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16 +/* 80176198 001730F8 34 A1 00 D4 */ addic. r5, r1, 0xd4 +/* 8017619C 001730FC 41 82 00 74 */ beq lbl_80176210 +/* 801761A0 00173100 80 C5 00 00 */ lwz r6, 0(r5) +/* 801761A4 00173104 38 60 00 00 */ li r3, 0 +/* 801761A8 00173108 2C 06 00 00 */ cmpwi r6, 0 +/* 801761AC 0017310C 40 81 00 40 */ ble lbl_801761EC +/* 801761B0 00173110 2C 06 00 08 */ cmpwi r6, 8 +/* 801761B4 00173114 38 86 FF F8 */ addi r4, r6, -8 +/* 801761B8 00173118 40 81 00 20 */ ble lbl_801761D8 +/* 801761BC 0017311C 38 04 00 07 */ addi r0, r4, 7 +/* 801761C0 00173120 54 00 E8 FE */ srwi r0, r0, 3 +/* 801761C4 00173124 7C 09 03 A6 */ mtctr r0 +/* 801761C8 00173128 2C 04 00 00 */ cmpwi r4, 0 +/* 801761CC 0017312C 40 81 00 0C */ ble lbl_801761D8 +lbl_801761D0: +/* 801761D0 00173130 38 63 00 08 */ addi r3, r3, 8 +/* 801761D4 00173134 42 00 FF FC */ bdnz lbl_801761D0 +lbl_801761D8: +/* 801761D8 00173138 7C 03 30 50 */ subf r0, r3, r6 +/* 801761DC 0017313C 7C 09 03 A6 */ mtctr r0 +/* 801761E0 00173140 7C 03 30 00 */ cmpw r3, r6 +/* 801761E4 00173144 40 80 00 08 */ bge lbl_801761EC +lbl_801761E8: +/* 801761E8 00173148 42 00 00 00 */ bdnz lbl_801761E8 +lbl_801761EC: +/* 801761EC 0017314C 38 00 00 00 */ li r0, 0 +/* 801761F0 00173150 90 05 00 00 */ stw r0, 0(r5) +/* 801761F4 00173154 48 00 00 1C */ b lbl_80176210 +lbl_801761F8: +/* 801761F8 00173158 88 1D 03 00 */ lbz r0, 0x300(r29) +/* 801761FC 0017315C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80176200 00173160 41 82 00 10 */ beq lbl_80176210 +/* 80176204 00173164 38 00 FF FF */ li r0, -1 +/* 80176208 00173168 3B E0 00 05 */ li r31, 5 +/* 8017620C 0017316C 90 1C 00 04 */ stw r0, 4(r28) +lbl_80176210: +/* 80176210 00173170 7F E3 FB 78 */ mr r3, r31 +/* 80176214 00173174 E3 E1 01 C8 */ psq_l f31, 456(r1), 0, qr0 +/* 80176218 00173178 CB E1 01 C0 */ lfd f31, 0x1c0(r1) +/* 8017621C 0017317C BB 61 01 AC */ lmw r27, 0x1ac(r1) +/* 80176220 00173180 80 01 01 D4 */ lwz r0, 0x1d4(r1) +/* 80176224 00173184 7C 08 03 A6 */ mtlr r0 +/* 80176228 00173188 38 21 01 D0 */ addi r1, r1, 0x1d0 +/* 8017622C 0017318C 4E 80 00 20 */ blr + +.global Start__8CBSCoverFR15CBodyControllerR13CStateManager +Start__8CBSCoverFR15CBodyControllerR13CStateManager: +/* 80176230 00173190 94 21 FE D0 */ stwu r1, -0x130(r1) +/* 80176234 00173194 7C 08 02 A6 */ mflr r0 +/* 80176238 00173198 90 01 01 34 */ stw r0, 0x134(r1) +/* 8017623C 0017319C BF 61 01 1C */ stmw r27, 0x11c(r1) +/* 80176240 001731A0 7C 9F 23 78 */ mr r31, r4 +/* 80176244 001731A4 7C 7E 1B 78 */ mr r30, r3 +/* 80176248 001731A8 7C BB 2B 78 */ mr r27, r5 +/* 8017624C 001731AC 38 80 00 14 */ li r4, 0x14 +/* 80176250 001731B0 38 7F 00 04 */ addi r3, r31, 4 +/* 80176254 001731B4 4B FB B1 FD */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80176258 001731B8 7C 7D 1B 78 */ mr r29, r3 +/* 8017625C 001731BC 38 00 00 00 */ li r0, 0 +/* 80176260 001731C0 80 83 00 08 */ lwz r4, 8(r3) +/* 80176264 001731C4 38 61 00 1C */ addi r3, r1, 0x1c +/* 80176268 001731C8 90 9E 00 08 */ stw r4, 8(r30) +/* 8017626C 001731CC 90 1E 00 04 */ stw r0, 4(r30) +/* 80176270 001731D0 83 9E 00 08 */ lwz r28, 8(r30) +/* 80176274 001731D4 48 16 CE 09 */ bl NoParameter__12CPASAnimParmFv +/* 80176278 001731D8 38 61 00 24 */ addi r3, r1, 0x24 +/* 8017627C 001731DC 48 16 CE 01 */ bl NoParameter__12CPASAnimParmFv +/* 80176280 001731E0 38 61 00 2C */ addi r3, r1, 0x2c +/* 80176284 001731E4 48 16 CD F9 */ bl NoParameter__12CPASAnimParmFv +/* 80176288 001731E8 38 61 00 34 */ addi r3, r1, 0x34 +/* 8017628C 001731EC 48 16 CD F1 */ bl NoParameter__12CPASAnimParmFv +/* 80176290 001731F0 38 61 00 3C */ addi r3, r1, 0x3c +/* 80176294 001731F4 48 16 CD E9 */ bl NoParameter__12CPASAnimParmFv +/* 80176298 001731F8 38 61 00 44 */ addi r3, r1, 0x44 +/* 8017629C 001731FC 48 16 CD E1 */ bl NoParameter__12CPASAnimParmFv +/* 801762A0 00173200 7F 84 E3 78 */ mr r4, r28 +/* 801762A4 00173204 38 61 00 4C */ addi r3, r1, 0x4c +/* 801762A8 00173208 48 16 CC DD */ bl FromEnum__12CPASAnimParmFi +/* 801762AC 0017320C 80 9E 00 04 */ lwz r4, 4(r30) +/* 801762B0 00173210 38 61 00 54 */ addi r3, r1, 0x54 +/* 801762B4 00173214 48 16 CC D1 */ bl FromEnum__12CPASAnimParmFi +/* 801762B8 00173218 38 61 00 24 */ addi r3, r1, 0x24 +/* 801762BC 0017321C 38 01 00 1C */ addi r0, r1, 0x1c +/* 801762C0 00173220 90 61 00 08 */ stw r3, 8(r1) +/* 801762C4 00173224 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 801762C8 00173228 38 A1 00 54 */ addi r5, r1, 0x54 +/* 801762CC 0017322C 38 C1 00 4C */ addi r6, r1, 0x4c +/* 801762D0 00173230 90 01 00 0C */ stw r0, 0xc(r1) +/* 801762D4 00173234 38 E1 00 44 */ addi r7, r1, 0x44 +/* 801762D8 00173238 39 01 00 3C */ addi r8, r1, 0x3c +/* 801762DC 0017323C 39 21 00 34 */ addi r9, r1, 0x34 +/* 801762E0 00173240 39 41 00 2C */ addi r10, r1, 0x2c +/* 801762E4 00173244 38 80 00 13 */ li r4, 0x13 +/* 801762E8 00173248 4B F0 6F DD */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 801762EC 0017324C 7F E3 FB 78 */ mr r3, r31 +/* 801762F0 00173250 4B FC 41 65 */ bl GetPASDatabase__15CBodyControllerCFv +/* 801762F4 00173254 80 DB 09 00 */ lwz r6, 0x900(r27) +/* 801762F8 00173258 7C 64 1B 78 */ mr r4, r3 +/* 801762FC 0017325C 38 61 00 14 */ addi r3, r1, 0x14 +/* 80176300 00173260 38 A1 00 C8 */ addi r5, r1, 0xc8 +/* 80176304 00173264 38 E0 FF FF */ li r7, -1 +/* 80176308 00173268 48 16 ED 59 */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i +/* 8017630C 0017326C 80 9F 00 00 */ lwz r4, 0(r31) +/* 80176310 00173270 3C 60 80 5A */ lis r3, lbl_805A6724@ha +/* 80176314 00173274 38 E3 67 24 */ addi r7, r3, lbl_805A6724@l +/* 80176318 00173278 C0 62 A1 A4 */ lfs f3, lbl_805ABEC4@sda21(r2) +/* 8017631C 0017327C 81 04 00 64 */ lwz r8, 0x64(r4) +/* 80176320 00173280 38 61 00 74 */ addi r3, r1, 0x74 +/* 80176324 00173284 C0 47 00 00 */ lfs f2, 0(r7) +/* 80176328 00173288 38 81 00 68 */ addi r4, r1, 0x68 +/* 8017632C 0017328C C0 88 00 04 */ lfs f4, 4(r8) +/* 80176330 00173290 38 A1 00 5C */ addi r5, r1, 0x5c +/* 80176334 00173294 C0 A8 00 08 */ lfs f5, 8(r8) +/* 80176338 00173298 38 C1 00 10 */ addi r6, r1, 0x10 +/* 8017633C 0017329C C0 08 00 00 */ lfs f0, 0(r8) +/* 80176340 001732A0 C0 27 00 04 */ lfs f1, 4(r7) +/* 80176344 001732A4 D0 01 00 94 */ stfs f0, 0x94(r1) +/* 80176348 001732A8 C0 07 00 08 */ lfs f0, 8(r7) +/* 8017634C 001732AC D0 81 00 98 */ stfs f4, 0x98(r1) +/* 80176350 001732B0 83 81 00 18 */ lwz r28, 0x18(r1) +/* 80176354 001732B4 D0 A1 00 9C */ stfs f5, 0x9c(r1) +/* 80176358 001732B8 D0 61 00 10 */ stfs f3, 0x10(r1) +/* 8017635C 001732BC C0 7D 00 18 */ lfs f3, 0x18(r29) +/* 80176360 001732C0 D0 61 00 5C */ stfs f3, 0x5c(r1) +/* 80176364 001732C4 C0 7D 00 1C */ lfs f3, 0x1c(r29) +/* 80176368 001732C8 D0 61 00 60 */ stfs f3, 0x60(r1) +/* 8017636C 001732CC C0 7D 00 20 */ lfs f3, 0x20(r29) +/* 80176370 001732D0 D0 61 00 64 */ stfs f3, 0x64(r1) +/* 80176374 001732D4 D0 41 00 68 */ stfs f2, 0x68(r1) +/* 80176378 001732D8 D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 8017637C 001732DC D0 01 00 70 */ stfs f0, 0x70(r1) +/* 80176380 001732E0 48 19 B3 15 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 80176384 001732E4 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 80176388 001732E8 39 1D 00 0C */ addi r8, r29, 0xc +/* 8017638C 001732EC C0 61 00 78 */ lfs f3, 0x78(r1) +/* 80176390 001732F0 38 E1 00 84 */ addi r7, r1, 0x84 +/* 80176394 001732F4 C0 41 00 7C */ lfs f2, 0x7c(r1) +/* 80176398 001732F8 38 01 00 94 */ addi r0, r1, 0x94 +/* 8017639C 001732FC C0 21 00 80 */ lfs f1, 0x80(r1) +/* 801763A0 00173300 39 60 FF FF */ li r11, -1 +/* 801763A4 00173304 D0 01 00 84 */ stfs f0, 0x84(r1) +/* 801763A8 00173308 39 40 00 01 */ li r10, 1 +/* 801763AC 0017330C C0 02 A1 A8 */ lfs f0, lbl_805ABEC8@sda21(r2) +/* 801763B0 00173310 39 20 00 00 */ li r9, 0 +/* 801763B4 00173314 D0 61 00 88 */ stfs f3, 0x88(r1) +/* 801763B8 00173318 7F E3 FB 78 */ mr r3, r31 +/* 801763BC 0017331C 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 801763C0 00173320 38 A0 00 00 */ li r5, 0 +/* 801763C4 00173324 D0 41 00 8C */ stfs f2, 0x8c(r1) +/* 801763C8 00173328 38 C0 00 00 */ li r6, 0 +/* 801763CC 0017332C D0 21 00 90 */ stfs f1, 0x90(r1) +/* 801763D0 00173330 81 9F 00 00 */ lwz r12, 0(r31) +/* 801763D4 00173334 39 8C 00 34 */ addi r12, r12, 0x34 +/* 801763D8 00173338 93 81 00 A0 */ stw r28, 0xa0(r1) +/* 801763DC 0017333C 91 61 00 A4 */ stw r11, 0xa4(r1) +/* 801763E0 00173340 D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 801763E4 00173344 99 41 00 AC */ stb r10, 0xac(r1) +/* 801763E8 00173348 91 21 00 B0 */ stw r9, 0xb0(r1) +/* 801763EC 0017334C 91 01 00 B4 */ stw r8, 0xb4(r1) +/* 801763F0 00173350 99 21 00 B8 */ stb r9, 0xb8(r1) +/* 801763F4 00173354 90 E1 00 BC */ stw r7, 0xbc(r1) +/* 801763F8 00173358 91 81 00 C0 */ stw r12, 0xc0(r1) +/* 801763FC 0017335C 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 80176400 00173360 4B FC 45 1D */ bl SetCurrentAnimation__15CBodyControllerFRC18CAnimPlaybackParmsbb +/* 80176404 00173364 38 00 00 00 */ li r0, 0 +/* 80176408 00173368 38 7F 00 04 */ addi r3, r31, 4 +/* 8017640C 0017336C 98 1E 00 0C */ stb r0, 0xc(r30) +/* 80176410 00173370 38 80 00 0A */ li r4, 0xa +/* 80176414 00173374 4B FB B0 3D */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80176418 00173378 28 03 00 00 */ cmplwi r3, 0 +/* 8017641C 0017337C 41 82 00 0C */ beq lbl_80176428 +/* 80176420 00173380 38 00 00 01 */ li r0, 1 +/* 80176424 00173384 98 1E 00 0C */ stb r0, 0xc(r30) +lbl_80176428: +/* 80176428 00173388 34 A1 00 CC */ addic. r5, r1, 0xcc +/* 8017642C 0017338C 41 82 00 58 */ beq lbl_80176484 +/* 80176430 00173390 80 C5 00 00 */ lwz r6, 0(r5) +/* 80176434 00173394 38 60 00 00 */ li r3, 0 +/* 80176438 00173398 2C 06 00 00 */ cmpwi r6, 0 +/* 8017643C 0017339C 40 81 00 40 */ ble lbl_8017647C +/* 80176440 001733A0 2C 06 00 08 */ cmpwi r6, 8 +/* 80176444 001733A4 38 86 FF F8 */ addi r4, r6, -8 +/* 80176448 001733A8 40 81 00 20 */ ble lbl_80176468 +/* 8017644C 001733AC 38 04 00 07 */ addi r0, r4, 7 +/* 80176450 001733B0 54 00 E8 FE */ srwi r0, r0, 3 +/* 80176454 001733B4 7C 09 03 A6 */ mtctr r0 +/* 80176458 001733B8 2C 04 00 00 */ cmpwi r4, 0 +/* 8017645C 001733BC 40 81 00 0C */ ble lbl_80176468 +lbl_80176460: +/* 80176460 001733C0 38 63 00 08 */ addi r3, r3, 8 +/* 80176464 001733C4 42 00 FF FC */ bdnz lbl_80176460 +lbl_80176468: +/* 80176468 001733C8 7C 03 30 50 */ subf r0, r3, r6 +/* 8017646C 001733CC 7C 09 03 A6 */ mtctr r0 +/* 80176470 001733D0 7C 03 30 00 */ cmpw r3, r6 +/* 80176474 001733D4 40 80 00 08 */ bge lbl_8017647C +lbl_80176478: +/* 80176478 001733D8 42 00 00 00 */ bdnz lbl_80176478 +lbl_8017647C: +/* 8017647C 001733DC 38 00 00 00 */ li r0, 0 +/* 80176480 001733E0 90 05 00 00 */ stw r0, 0(r5) +lbl_80176484: +/* 80176484 001733E4 BB 61 01 1C */ lmw r27, 0x11c(r1) +/* 80176488 001733E8 80 01 01 34 */ lwz r0, 0x134(r1) +/* 8017648C 001733EC 7C 08 03 A6 */ mtlr r0 +/* 80176490 001733F0 38 21 01 30 */ addi r1, r1, 0x130 +/* 80176494 001733F4 4E 80 00 20 */ blr + +.global __ct__8CBSCoverFv +__ct__8CBSCoverFv: +/* 80176498 001733F8 3C C0 80 3E */ lis r6, lbl_803E1318@ha +/* 8017649C 001733FC 3C A0 80 3E */ lis r5, lbl_803E3E48@ha +/* 801764A0 00173400 38 06 13 18 */ addi r0, r6, lbl_803E1318@l +/* 801764A4 00173404 38 80 FF FF */ li r4, -1 +/* 801764A8 00173408 90 03 00 00 */ stw r0, 0(r3) +/* 801764AC 0017340C 38 A5 3E 48 */ addi r5, r5, lbl_803E3E48@l +/* 801764B0 00173410 38 00 00 00 */ li r0, 0 +/* 801764B4 00173414 90 A3 00 00 */ stw r5, 0(r3) +/* 801764B8 00173418 90 83 00 04 */ stw r4, 4(r3) +/* 801764BC 0017341C 90 83 00 08 */ stw r4, 8(r3) +/* 801764C0 00173420 98 03 00 0C */ stb r0, 0xc(r3) +/* 801764C4 00173424 4E 80 00 20 */ blr + +.global CanShoot__8CBSCoverCFv +CanShoot__8CBSCoverCFv: +/* 801764C8 00173428 80 03 00 04 */ lwz r0, 4(r3) +/* 801764CC 0017342C 20 00 00 02 */ subfic r0, r0, 2 +/* 801764D0 00173430 7C 00 00 34 */ cntlzw r0, r0 +/* 801764D4 00173434 54 03 D9 7E */ srwi r3, r0, 5 +/* 801764D8 00173438 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/BodyState/CBSProjectileAttack.s b/asm/Kyoto_CWD/BodyState/CBSProjectileAttack.s new file mode 100644 index 00000000..6b639e28 --- /dev/null +++ b/asm/Kyoto_CWD/BodyState/CBSProjectileAttack.s @@ -0,0 +1,400 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__19CBSProjectileAttackFv +__dt__19CBSProjectileAttackFv: +/* 8014D3C4 0014A324 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8014D3C8 0014A328 7C 08 02 A6 */ mflr r0 +/* 8014D3CC 0014A32C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014D3D0 0014A330 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8014D3D4 0014A334 7C 7F 1B 79 */ or. r31, r3, r3 +/* 8014D3D8 0014A338 41 82 00 30 */ beq lbl_8014D408 +/* 8014D3DC 0014A33C 3C 60 80 3E */ lis r3, lbl_803E27D0@ha +/* 8014D3E0 0014A340 38 03 27 D0 */ addi r0, r3, lbl_803E27D0@l +/* 8014D3E4 0014A344 90 1F 00 00 */ stw r0, 0(r31) +/* 8014D3E8 0014A348 41 82 00 10 */ beq lbl_8014D3F8 +/* 8014D3EC 0014A34C 3C 60 80 3E */ lis r3, lbl_803E1318@ha +/* 8014D3F0 0014A350 38 03 13 18 */ addi r0, r3, lbl_803E1318@l +/* 8014D3F4 0014A354 90 1F 00 00 */ stw r0, 0(r31) +lbl_8014D3F8: +/* 8014D3F8 0014A358 7C 80 07 35 */ extsh. r0, r4 +/* 8014D3FC 0014A35C 40 81 00 0C */ ble lbl_8014D408 +/* 8014D400 0014A360 7F E3 FB 78 */ mr r3, r31 +/* 8014D404 0014A364 48 1C 85 2D */ bl Free__7CMemoryFPCv +lbl_8014D408: +/* 8014D408 0014A368 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014D40C 0014A36C 7F E3 FB 78 */ mr r3, r31 +/* 8014D410 0014A370 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8014D414 0014A374 7C 08 03 A6 */ mtlr r0 +/* 8014D418 0014A378 38 21 00 10 */ addi r1, r1, 0x10 +/* 8014D41C 0014A37C 4E 80 00 20 */ blr + +.global CanShoot__19CBSProjectileAttackCFv +CanShoot__19CBSProjectileAttackCFv: +/* 8014D420 0014A380 38 60 00 01 */ li r3, 1 +/* 8014D424 0014A384 4E 80 00 20 */ blr + +.global GetBodyStateTransition__19CBSProjectileAttackFfR15CBodyController +GetBodyStateTransition__19CBSProjectileAttackFfR15CBodyController: +/* 8014D428 0014A388 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8014D42C 0014A38C 7C 08 02 A6 */ mflr r0 +/* 8014D430 0014A390 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014D434 0014A394 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8014D438 0014A398 93 C1 00 08 */ stw r30, 8(r1) +/* 8014D43C 0014A39C 7C 9E 23 78 */ mr r30, r4 +/* 8014D440 0014A3A0 3B FE 00 04 */ addi r31, r30, 4 +/* 8014D444 0014A3A4 38 80 00 0F */ li r4, 0xf +/* 8014D448 0014A3A8 7F E3 FB 78 */ mr r3, r31 +/* 8014D44C 0014A3AC 4B FE 40 05 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8014D450 0014A3B0 28 03 00 00 */ cmplwi r3, 0 +/* 8014D454 0014A3B4 41 82 00 0C */ beq lbl_8014D460 +/* 8014D458 0014A3B8 38 60 00 0E */ li r3, 0xe +/* 8014D45C 0014A3BC 48 00 00 A0 */ b lbl_8014D4FC +lbl_8014D460: +/* 8014D460 0014A3C0 7F E3 FB 78 */ mr r3, r31 +/* 8014D464 0014A3C4 38 80 00 03 */ li r4, 3 +/* 8014D468 0014A3C8 4B FE 3F E9 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8014D46C 0014A3CC 28 03 00 00 */ cmplwi r3, 0 +/* 8014D470 0014A3D0 41 82 00 0C */ beq lbl_8014D47C +/* 8014D474 0014A3D4 38 60 00 00 */ li r3, 0 +/* 8014D478 0014A3D8 48 00 00 84 */ b lbl_8014D4FC +lbl_8014D47C: +/* 8014D47C 0014A3DC 7F E3 FB 78 */ mr r3, r31 +/* 8014D480 0014A3E0 38 80 00 09 */ li r4, 9 +/* 8014D484 0014A3E4 4B FE 3F CD */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8014D488 0014A3E8 28 03 00 00 */ cmplwi r3, 0 +/* 8014D48C 0014A3EC 41 82 00 0C */ beq lbl_8014D498 +/* 8014D490 0014A3F0 38 60 00 0A */ li r3, 0xa +/* 8014D494 0014A3F4 48 00 00 68 */ b lbl_8014D4FC +lbl_8014D498: +/* 8014D498 0014A3F8 7F E3 FB 78 */ mr r3, r31 +/* 8014D49C 0014A3FC 38 80 00 04 */ li r4, 4 +/* 8014D4A0 0014A400 4B FE 3F B1 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8014D4A4 0014A404 28 03 00 00 */ cmplwi r3, 0 +/* 8014D4A8 0014A408 41 82 00 0C */ beq lbl_8014D4B4 +/* 8014D4AC 0014A40C 38 60 00 06 */ li r3, 6 +/* 8014D4B0 0014A410 48 00 00 4C */ b lbl_8014D4FC +lbl_8014D4B4: +/* 8014D4B4 0014A414 7F E3 FB 78 */ mr r3, r31 +/* 8014D4B8 0014A418 38 80 00 16 */ li r4, 0x16 +/* 8014D4BC 0014A41C 4B FE 3F 95 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8014D4C0 0014A420 28 03 00 00 */ cmplwi r3, 0 +/* 8014D4C4 0014A424 41 82 00 0C */ beq lbl_8014D4D0 +/* 8014D4C8 0014A428 38 60 00 05 */ li r3, 5 +/* 8014D4CC 0014A42C 48 00 00 30 */ b lbl_8014D4FC +lbl_8014D4D0: +/* 8014D4D0 0014A430 88 1E 03 00 */ lbz r0, 0x300(r30) +/* 8014D4D4 0014A434 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8014D4D8 0014A438 40 82 00 18 */ bne lbl_8014D4F0 +/* 8014D4DC 0014A43C 7F E3 FB 78 */ mr r3, r31 +/* 8014D4E0 0014A440 38 80 00 0C */ li r4, 0xc +/* 8014D4E4 0014A444 4B FE 3F 6D */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8014D4E8 0014A448 28 03 00 00 */ cmplwi r3, 0 +/* 8014D4EC 0014A44C 41 82 00 0C */ beq lbl_8014D4F8 +lbl_8014D4F0: +/* 8014D4F0 0014A450 38 60 00 05 */ li r3, 5 +/* 8014D4F4 0014A454 48 00 00 08 */ b lbl_8014D4FC +lbl_8014D4F8: +/* 8014D4F8 0014A458 38 60 FF FF */ li r3, -1 +lbl_8014D4FC: +/* 8014D4FC 0014A45C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014D500 0014A460 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8014D504 0014A464 83 C1 00 08 */ lwz r30, 8(r1) +/* 8014D508 0014A468 7C 08 03 A6 */ mtlr r0 +/* 8014D50C 0014A46C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8014D510 0014A470 4E 80 00 20 */ blr + +.global Shutdown__19CBSProjectileAttackFR15CBodyController +Shutdown__19CBSProjectileAttackFR15CBodyController: +/* 8014D514 0014A474 4E 80 00 20 */ blr + +.global UpdateBody__19CBSProjectileAttackFfR15CBodyControllerR13CStateManager +UpdateBody__19CBSProjectileAttackFfR15CBodyControllerR13CStateManager: +/* 8014D518 0014A478 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8014D51C 0014A47C 7C 08 02 A6 */ mflr r0 +/* 8014D520 0014A480 90 01 00 24 */ stw r0, 0x24(r1) +/* 8014D524 0014A484 DB E1 00 10 */ stfd f31, 0x10(r1) +/* 8014D528 0014A488 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 +/* 8014D52C 0014A48C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8014D530 0014A490 93 C1 00 08 */ stw r30, 8(r1) +/* 8014D534 0014A494 FF E0 08 90 */ fmr f31, f1 +/* 8014D538 0014A498 7C 9E 23 78 */ mr r30, r4 +/* 8014D53C 0014A49C 4B FF FE ED */ bl GetBodyStateTransition__19CBSProjectileAttackFfR15CBodyController +/* 8014D540 0014A4A0 7C 7F 1B 78 */ mr r31, r3 +/* 8014D544 0014A4A4 2C 1F FF FF */ cmpwi r31, -1 +/* 8014D548 0014A4A8 40 82 00 50 */ bne lbl_8014D598 +/* 8014D54C 0014A4AC 38 7E 00 1C */ addi r3, r30, 0x1c +/* 8014D550 0014A4B0 C0 22 9D 38 */ lfs f1, lbl_805ABA58@sda21(r2) +/* 8014D554 0014A4B4 C0 1E 00 1C */ lfs f0, 0x1c(r30) +/* 8014D558 0014A4B8 38 00 00 00 */ li r0, 0 +/* 8014D55C 0014A4BC FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 8014D560 0014A4C0 40 82 00 1C */ bne lbl_8014D57C +/* 8014D564 0014A4C4 C0 03 00 04 */ lfs f0, 4(r3) +/* 8014D568 0014A4C8 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 8014D56C 0014A4CC 40 82 00 10 */ bne lbl_8014D57C +/* 8014D570 0014A4D0 C0 03 00 08 */ lfs f0, 8(r3) +/* 8014D574 0014A4D4 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 8014D578 0014A4D8 41 82 00 08 */ beq lbl_8014D580 +lbl_8014D57C: +/* 8014D57C 0014A4DC 38 00 00 01 */ li r0, 1 +lbl_8014D580: +/* 8014D580 0014A4E0 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8014D584 0014A4E4 41 82 00 14 */ beq lbl_8014D598 +/* 8014D588 0014A4E8 FC 20 F8 90 */ fmr f1, f31 +/* 8014D58C 0014A4EC 7F C3 F3 78 */ mr r3, r30 +/* 8014D590 0014A4F0 38 9E 00 1C */ addi r4, r30, 0x1c +/* 8014D594 0014A4F4 4B FE D1 11 */ bl FaceDirection__15CBodyControllerFRC9CVector3ff +lbl_8014D598: +/* 8014D598 0014A4F8 7F E3 FB 78 */ mr r3, r31 +/* 8014D59C 0014A4FC E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 +/* 8014D5A0 0014A500 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8014D5A4 0014A504 CB E1 00 10 */ lfd f31, 0x10(r1) +/* 8014D5A8 0014A508 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8014D5AC 0014A50C 83 C1 00 08 */ lwz r30, 8(r1) +/* 8014D5B0 0014A510 7C 08 03 A6 */ mtlr r0 +/* 8014D5B4 0014A514 38 21 00 20 */ addi r1, r1, 0x20 +/* 8014D5B8 0014A518 4E 80 00 20 */ blr + +.global Start__19CBSProjectileAttackFR15CBodyControllerR13CStateManager +Start__19CBSProjectileAttackFR15CBodyControllerR13CStateManager: +/* 8014D5BC 0014A51C 94 21 FE 80 */ stwu r1, -0x180(r1) +/* 8014D5C0 0014A520 7C 08 02 A6 */ mflr r0 +/* 8014D5C4 0014A524 90 01 01 84 */ stw r0, 0x184(r1) +/* 8014D5C8 0014A528 DB E1 01 70 */ stfd f31, 0x170(r1) +/* 8014D5CC 0014A52C F3 E1 01 78 */ psq_st f31, 376(r1), 0, qr0 +/* 8014D5D0 0014A530 DB C1 01 60 */ stfd f30, 0x160(r1) +/* 8014D5D4 0014A534 F3 C1 01 68 */ psq_st f30, 360(r1), 0, qr0 +/* 8014D5D8 0014A538 BF 41 01 48 */ stmw r26, 0x148(r1) +/* 8014D5DC 0014A53C 7C 9F 23 78 */ mr r31, r4 +/* 8014D5E0 0014A540 7C BA 2B 78 */ mr r26, r5 +/* 8014D5E4 0014A544 38 7F 00 04 */ addi r3, r31, 4 +/* 8014D5E8 0014A548 38 80 00 06 */ li r4, 6 +/* 8014D5EC 0014A54C 4B FE 3E 65 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8014D5F0 0014A550 80 DF 00 00 */ lwz r6, 0(r31) +/* 8014D5F4 0014A554 7C 7E 1B 78 */ mr r30, r3 +/* 8014D5F8 0014A558 C0 23 00 10 */ lfs f1, 0x10(r3) +/* 8014D5FC 0014A55C 38 61 00 80 */ addi r3, r1, 0x80 +/* 8014D600 0014A560 C0 06 00 50 */ lfs f0, 0x50(r6) +/* 8014D604 0014A564 38 86 00 34 */ addi r4, r6, 0x34 +/* 8014D608 0014A568 C0 7E 00 14 */ lfs f3, 0x14(r30) +/* 8014D60C 0014A56C 38 A1 00 8C */ addi r5, r1, 0x8c +/* 8014D610 0014A570 C0 46 00 60 */ lfs f2, 0x60(r6) +/* 8014D614 0014A574 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8014D618 0014A578 C0 3E 00 0C */ lfs f1, 0xc(r30) +/* 8014D61C 0014A57C C0 06 00 40 */ lfs f0, 0x40(r6) +/* 8014D620 0014A580 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8014D624 0014A584 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8014D628 0014A588 D0 81 00 90 */ stfs f4, 0x90(r1) +/* 8014D62C 0014A58C D0 41 00 94 */ stfs f2, 0x94(r1) +/* 8014D630 0014A590 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 8014D634 0014A594 48 1C 53 F1 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 8014D638 0014A598 C0 21 00 84 */ lfs f1, 0x84(r1) +/* 8014D63C 0014A59C C0 41 00 80 */ lfs f2, 0x80(r1) +/* 8014D640 0014A5A0 48 24 76 2D */ bl atan2 +/* 8014D644 0014A5A4 FC 80 08 18 */ frsp f4, f1 +/* 8014D648 0014A5A8 C0 02 9D 3C */ lfs f0, lbl_805ABA5C@sda21(r2) +/* 8014D64C 0014A5AC 3C 00 43 30 */ lis r0, 0x4330 +/* 8014D650 0014A5B0 C8 62 9D 58 */ lfd f3, lbl_805ABA78@sda21(r2) +/* 8014D654 0014A5B4 90 01 01 38 */ stw r0, 0x138(r1) +/* 8014D658 0014A5B8 EC 44 00 32 */ fmuls f2, f4, f0 +/* 8014D65C 0014A5BC C0 22 9D 40 */ lfs f1, lbl_805ABA60@sda21(r2) +/* 8014D660 0014A5C0 C0 02 9D 38 */ lfs f0, lbl_805ABA58@sda21(r2) +/* 8014D664 0014A5C4 FC 40 10 1E */ fctiwz f2, f2 +/* 8014D668 0014A5C8 D8 41 01 30 */ stfd f2, 0x130(r1) +/* 8014D66C 0014A5CC 80 01 01 34 */ lwz r0, 0x134(r1) +/* 8014D670 0014A5D0 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 8014D674 0014A5D4 90 01 01 3C */ stw r0, 0x13c(r1) +/* 8014D678 0014A5D8 C8 41 01 38 */ lfd f2, 0x138(r1) +/* 8014D67C 0014A5DC EC 42 18 28 */ fsubs f2, f2, f3 +/* 8014D680 0014A5E0 EC 42 20 7C */ fnmsubs f2, f2, f1, f4 +/* 8014D684 0014A5E4 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8014D688 0014A5E8 40 80 00 08 */ bge lbl_8014D690 +/* 8014D68C 0014A5EC EC 42 08 2A */ fadds f2, f2, f1 +lbl_8014D690: +/* 8014D690 0014A5F0 C0 02 9D 44 */ lfs f0, lbl_805ABA64@sda21(r2) +/* 8014D694 0014A5F4 7F E3 FB 78 */ mr r3, r31 +/* 8014D698 0014A5F8 EF E0 00 B2 */ fmuls f31, f0, f2 +/* 8014D69C 0014A5FC 4B FE CD B9 */ bl GetPASDatabase__15CBodyControllerCFv +/* 8014D6A0 0014A600 83 BF 02 EC */ lwz r29, 0x2ec(r31) +/* 8014D6A4 0014A604 7C 7B 1B 78 */ mr r27, r3 +/* 8014D6A8 0014A608 83 9E 00 08 */ lwz r28, 8(r30) +/* 8014D6AC 0014A60C 38 61 00 30 */ addi r3, r1, 0x30 +/* 8014D6B0 0014A610 48 19 59 CD */ bl NoParameter__12CPASAnimParmFv +/* 8014D6B4 0014A614 38 61 00 38 */ addi r3, r1, 0x38 +/* 8014D6B8 0014A618 48 19 59 C5 */ bl NoParameter__12CPASAnimParmFv +/* 8014D6BC 0014A61C 38 61 00 40 */ addi r3, r1, 0x40 +/* 8014D6C0 0014A620 48 19 59 BD */ bl NoParameter__12CPASAnimParmFv +/* 8014D6C4 0014A624 38 61 00 48 */ addi r3, r1, 0x48 +/* 8014D6C8 0014A628 48 19 59 B5 */ bl NoParameter__12CPASAnimParmFv +/* 8014D6CC 0014A62C 38 61 00 50 */ addi r3, r1, 0x50 +/* 8014D6D0 0014A630 48 19 59 AD */ bl NoParameter__12CPASAnimParmFv +/* 8014D6D4 0014A634 7F A4 EB 78 */ mr r4, r29 +/* 8014D6D8 0014A638 38 61 00 58 */ addi r3, r1, 0x58 +/* 8014D6DC 0014A63C 48 19 58 A9 */ bl FromEnum__12CPASAnimParmFi +/* 8014D6E0 0014A640 FC 20 F8 90 */ fmr f1, f31 +/* 8014D6E4 0014A644 38 61 00 60 */ addi r3, r1, 0x60 +/* 8014D6E8 0014A648 48 19 59 01 */ bl FromReal32__12CPASAnimParmFf +/* 8014D6EC 0014A64C 7F 84 E3 78 */ mr r4, r28 +/* 8014D6F0 0014A650 38 61 00 68 */ addi r3, r1, 0x68 +/* 8014D6F4 0014A654 48 19 58 91 */ bl FromEnum__12CPASAnimParmFi +/* 8014D6F8 0014A658 38 61 00 38 */ addi r3, r1, 0x38 +/* 8014D6FC 0014A65C 38 01 00 30 */ addi r0, r1, 0x30 +/* 8014D700 0014A660 90 61 00 08 */ stw r3, 8(r1) +/* 8014D704 0014A664 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 8014D708 0014A668 38 A1 00 68 */ addi r5, r1, 0x68 +/* 8014D70C 0014A66C 38 C1 00 60 */ addi r6, r1, 0x60 +/* 8014D710 0014A670 90 01 00 0C */ stw r0, 0xc(r1) +/* 8014D714 0014A674 38 E1 00 58 */ addi r7, r1, 0x58 +/* 8014D718 0014A678 39 01 00 50 */ addi r8, r1, 0x50 +/* 8014D71C 0014A67C 39 21 00 48 */ addi r9, r1, 0x48 +/* 8014D720 0014A680 39 41 00 40 */ addi r10, r1, 0x40 +/* 8014D724 0014A684 38 80 00 12 */ li r4, 0x12 +/* 8014D728 0014A688 4B F2 FB 9D */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 8014D72C 0014A68C 80 DA 09 00 */ lwz r6, 0x900(r26) +/* 8014D730 0014A690 7F 64 DB 78 */ mr r4, r27 +/* 8014D734 0014A694 38 61 00 28 */ addi r3, r1, 0x28 +/* 8014D738 0014A698 38 A1 00 E8 */ addi r5, r1, 0xe8 +/* 8014D73C 0014A69C 38 E0 FF FF */ li r7, -1 +/* 8014D740 0014A6A0 48 19 79 21 */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i +/* 8014D744 0014A6A4 88 1E 00 18 */ lbz r0, 0x18(r30) +/* 8014D748 0014A6A8 83 81 00 2C */ lwz r28, 0x2c(r1) +/* 8014D74C 0014A6AC 28 00 00 00 */ cmplwi r0, 0 +/* 8014D750 0014A6B0 41 82 01 10 */ beq lbl_8014D860 +/* 8014D754 0014A6B4 80 DA 09 00 */ lwz r6, 0x900(r26) +/* 8014D758 0014A6B8 7F 64 DB 78 */ mr r4, r27 +/* 8014D75C 0014A6BC 7F 87 E3 78 */ mr r7, r28 +/* 8014D760 0014A6C0 38 61 00 20 */ addi r3, r1, 0x20 +/* 8014D764 0014A6C4 38 A1 00 E8 */ addi r5, r1, 0xe8 +/* 8014D768 0014A6C8 48 19 78 F9 */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i +/* 8014D76C 0014A6CC 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8014D770 0014A6D0 7F 63 DB 78 */ mr r3, r27 +/* 8014D774 0014A6D4 38 80 00 12 */ li r4, 0x12 +/* 8014D778 0014A6D8 48 19 77 4D */ bl GetAnimState__12CPASDatabaseCFi +/* 8014D77C 0014A6DC 7C 7B 1B 78 */ mr r27, r3 +/* 8014D780 0014A6E0 7F 85 E3 78 */ mr r5, r28 +/* 8014D784 0014A6E4 38 61 00 18 */ addi r3, r1, 0x18 +/* 8014D788 0014A6E8 38 C0 00 01 */ li r6, 1 +/* 8014D78C 0014A6EC 7F 64 DB 78 */ mr r4, r27 +/* 8014D790 0014A6F0 48 19 68 65 */ bl GetAnimParmData__13CPASAnimStateCFiUi +/* 8014D794 0014A6F4 80 61 00 18 */ lwz r3, 0x18(r1) +/* 8014D798 0014A6F8 7F 64 DB 78 */ mr r4, r27 +/* 8014D79C 0014A6FC 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 8014D7A0 0014A700 7F A5 EB 78 */ mr r5, r29 +/* 8014D7A4 0014A704 90 61 00 78 */ stw r3, 0x78(r1) +/* 8014D7A8 0014A708 38 61 00 10 */ addi r3, r1, 0x10 +/* 8014D7AC 0014A70C 38 C0 00 01 */ li r6, 1 +/* 8014D7B0 0014A710 90 01 00 7C */ stw r0, 0x7c(r1) +/* 8014D7B4 0014A714 48 19 68 41 */ bl GetAnimParmData__13CPASAnimStateCFiUi +/* 8014D7B8 0014A718 80 81 00 10 */ lwz r4, 0x10(r1) +/* 8014D7BC 0014A71C 38 61 00 78 */ addi r3, r1, 0x78 +/* 8014D7C0 0014A720 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014D7C4 0014A724 90 81 00 70 */ stw r4, 0x70(r1) +/* 8014D7C8 0014A728 90 01 00 74 */ stw r0, 0x74(r1) +/* 8014D7CC 0014A72C 48 19 57 A1 */ bl GetReal32Value__12CPASAnimParmCFv +/* 8014D7D0 0014A730 FF C0 08 90 */ fmr f30, f1 +/* 8014D7D4 0014A734 38 61 00 70 */ addi r3, r1, 0x70 +/* 8014D7D8 0014A738 48 19 57 95 */ bl GetReal32Value__12CPASAnimParmCFv +/* 8014D7DC 0014A73C EC 1E 08 28 */ fsubs f0, f30, f1 +/* 8014D7E0 0014A740 C0 42 9D 48 */ lfs f2, lbl_805ABA68@sda21(r2) +/* 8014D7E4 0014A744 FC 00 10 40 */ fcmpo cr0, f0, f2 +/* 8014D7E8 0014A748 40 81 00 10 */ ble lbl_8014D7F8 +/* 8014D7EC 0014A74C C0 02 9D 4C */ lfs f0, lbl_805ABA6C@sda21(r2) +/* 8014D7F0 0014A750 EC 20 08 2A */ fadds f1, f0, f1 +/* 8014D7F4 0014A754 48 00 00 18 */ b lbl_8014D80C +lbl_8014D7F8: +/* 8014D7F8 0014A758 EC 01 F0 28 */ fsubs f0, f1, f30 +/* 8014D7FC 0014A75C FC 00 10 40 */ fcmpo cr0, f0, f2 +/* 8014D800 0014A760 40 81 00 0C */ ble lbl_8014D80C +/* 8014D804 0014A764 C0 02 9D 4C */ lfs f0, lbl_805ABA6C@sda21(r2) +/* 8014D808 0014A768 EF C0 F0 2A */ fadds f30, f0, f30 +lbl_8014D80C: +/* 8014D80C 0014A76C EC 5E F8 28 */ fsubs f2, f30, f31 +/* 8014D810 0014A770 38 00 00 00 */ li r0, 0 +/* 8014D814 0014A774 EC 1E 08 28 */ fsubs f0, f30, f1 +/* 8014D818 0014A778 38 C0 00 01 */ li r6, 1 +/* 8014D81C 0014A77C 93 81 00 C0 */ stw r28, 0xc0(r1) +/* 8014D820 0014A780 7F E3 FB 78 */ mr r3, r31 +/* 8014D824 0014A784 EC 02 00 24 */ fdivs f0, f2, f0 +/* 8014D828 0014A788 93 A1 00 C4 */ stw r29, 0xc4(r1) +/* 8014D82C 0014A78C 38 81 00 C0 */ addi r4, r1, 0xc0 +/* 8014D830 0014A790 38 A0 00 00 */ li r5, 0 +/* 8014D834 0014A794 98 C1 00 CC */ stb r6, 0xcc(r1) +/* 8014D838 0014A798 38 C0 00 00 */ li r6, 0 +/* 8014D83C 0014A79C D0 01 00 C8 */ stfs f0, 0xc8(r1) +/* 8014D840 0014A7A0 90 01 00 D0 */ stw r0, 0xd0(r1) +/* 8014D844 0014A7A4 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 8014D848 0014A7A8 98 01 00 D8 */ stb r0, 0xd8(r1) +/* 8014D84C 0014A7AC 90 01 00 DC */ stw r0, 0xdc(r1) +/* 8014D850 0014A7B0 90 01 00 E0 */ stw r0, 0xe0(r1) +/* 8014D854 0014A7B4 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 8014D858 0014A7B8 4B FE D0 C5 */ bl SetCurrentAnimation__15CBodyControllerFRC18CAnimPlaybackParmsbb +/* 8014D85C 0014A7BC 48 00 00 50 */ b lbl_8014D8AC +lbl_8014D860: +/* 8014D860 0014A7C0 C0 02 9D 50 */ lfs f0, lbl_805ABA70@sda21(r2) +/* 8014D864 0014A7C4 38 00 00 00 */ li r0, 0 +/* 8014D868 0014A7C8 38 C0 FF FF */ li r6, -1 +/* 8014D86C 0014A7CC 38 E0 00 01 */ li r7, 1 +/* 8014D870 0014A7D0 93 81 00 98 */ stw r28, 0x98(r1) +/* 8014D874 0014A7D4 7F E3 FB 78 */ mr r3, r31 +/* 8014D878 0014A7D8 38 81 00 98 */ addi r4, r1, 0x98 +/* 8014D87C 0014A7DC 38 A0 00 00 */ li r5, 0 +/* 8014D880 0014A7E0 90 C1 00 9C */ stw r6, 0x9c(r1) +/* 8014D884 0014A7E4 38 C0 00 00 */ li r6, 0 +/* 8014D888 0014A7E8 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 8014D88C 0014A7EC 98 E1 00 A4 */ stb r7, 0xa4(r1) +/* 8014D890 0014A7F0 90 01 00 A8 */ stw r0, 0xa8(r1) +/* 8014D894 0014A7F4 90 01 00 AC */ stw r0, 0xac(r1) +/* 8014D898 0014A7F8 98 01 00 B0 */ stb r0, 0xb0(r1) +/* 8014D89C 0014A7FC 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 8014D8A0 0014A800 90 01 00 B8 */ stw r0, 0xb8(r1) +/* 8014D8A4 0014A804 90 01 00 BC */ stw r0, 0xbc(r1) +/* 8014D8A8 0014A808 4B FE D0 75 */ bl SetCurrentAnimation__15CBodyControllerFRC18CAnimPlaybackParmsbb +lbl_8014D8AC: +/* 8014D8AC 0014A80C 34 A1 00 EC */ addic. r5, r1, 0xec +/* 8014D8B0 0014A810 41 82 00 58 */ beq lbl_8014D908 +/* 8014D8B4 0014A814 80 C5 00 00 */ lwz r6, 0(r5) +/* 8014D8B8 0014A818 38 60 00 00 */ li r3, 0 +/* 8014D8BC 0014A81C 2C 06 00 00 */ cmpwi r6, 0 +/* 8014D8C0 0014A820 40 81 00 40 */ ble lbl_8014D900 +/* 8014D8C4 0014A824 2C 06 00 08 */ cmpwi r6, 8 +/* 8014D8C8 0014A828 38 86 FF F8 */ addi r4, r6, -8 +/* 8014D8CC 0014A82C 40 81 00 20 */ ble lbl_8014D8EC +/* 8014D8D0 0014A830 38 04 00 07 */ addi r0, r4, 7 +/* 8014D8D4 0014A834 54 00 E8 FE */ srwi r0, r0, 3 +/* 8014D8D8 0014A838 7C 09 03 A6 */ mtctr r0 +/* 8014D8DC 0014A83C 2C 04 00 00 */ cmpwi r4, 0 +/* 8014D8E0 0014A840 40 81 00 0C */ ble lbl_8014D8EC +lbl_8014D8E4: +/* 8014D8E4 0014A844 38 63 00 08 */ addi r3, r3, 8 +/* 8014D8E8 0014A848 42 00 FF FC */ bdnz lbl_8014D8E4 +lbl_8014D8EC: +/* 8014D8EC 0014A84C 7C 03 30 50 */ subf r0, r3, r6 +/* 8014D8F0 0014A850 7C 09 03 A6 */ mtctr r0 +/* 8014D8F4 0014A854 7C 03 30 00 */ cmpw r3, r6 +/* 8014D8F8 0014A858 40 80 00 08 */ bge lbl_8014D900 +lbl_8014D8FC: +/* 8014D8FC 0014A85C 42 00 00 00 */ bdnz lbl_8014D8FC +lbl_8014D900: +/* 8014D900 0014A860 38 00 00 00 */ li r0, 0 +/* 8014D904 0014A864 90 05 00 00 */ stw r0, 0(r5) +lbl_8014D908: +/* 8014D908 0014A868 E3 E1 01 78 */ psq_l f31, 376(r1), 0, qr0 +/* 8014D90C 0014A86C CB E1 01 70 */ lfd f31, 0x170(r1) +/* 8014D910 0014A870 E3 C1 01 68 */ psq_l f30, 360(r1), 0, qr0 +/* 8014D914 0014A874 CB C1 01 60 */ lfd f30, 0x160(r1) +/* 8014D918 0014A878 BB 41 01 48 */ lmw r26, 0x148(r1) +/* 8014D91C 0014A87C 80 01 01 84 */ lwz r0, 0x184(r1) +/* 8014D920 0014A880 7C 08 03 A6 */ mtlr r0 +/* 8014D924 0014A884 38 21 01 80 */ addi r1, r1, 0x180 +/* 8014D928 0014A888 4E 80 00 20 */ blr + +.global __ct__19CBSProjectileAttackFv +__ct__19CBSProjectileAttackFv: +/* 8014D92C 0014A88C 3C A0 80 3E */ lis r5, lbl_803E1318@ha +/* 8014D930 0014A890 3C 80 80 3E */ lis r4, lbl_803E27D0@ha +/* 8014D934 0014A894 38 A5 13 18 */ addi r5, r5, lbl_803E1318@l +/* 8014D938 0014A898 90 A3 00 00 */ stw r5, 0(r3) +/* 8014D93C 0014A89C 38 04 27 D0 */ addi r0, r4, lbl_803E27D0@l +/* 8014D940 0014A8A0 90 03 00 00 */ stw r0, 0(r3) +/* 8014D944 0014A8A4 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/BodyState/CBSScripted.s b/asm/Kyoto_CWD/BodyState/CBSScripted.s new file mode 100644 index 00000000..bbcff7c1 --- /dev/null +++ b/asm/Kyoto_CWD/BodyState/CBSScripted.s @@ -0,0 +1,254 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__11CBSScriptedFv +__dt__11CBSScriptedFv: +/* 8014B0C0 00148020 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8014B0C4 00148024 7C 08 02 A6 */ mflr r0 +/* 8014B0C8 00148028 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014B0CC 0014802C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8014B0D0 00148030 7C 7F 1B 79 */ or. r31, r3, r3 +/* 8014B0D4 00148034 41 82 00 30 */ beq lbl_8014B104 +/* 8014B0D8 00148038 3C 60 80 3E */ lis r3, lbl_803E24A8@ha +/* 8014B0DC 0014803C 38 03 24 A8 */ addi r0, r3, lbl_803E24A8@l +/* 8014B0E0 00148040 90 1F 00 00 */ stw r0, 0(r31) +/* 8014B0E4 00148044 41 82 00 10 */ beq lbl_8014B0F4 +/* 8014B0E8 00148048 3C 60 80 3E */ lis r3, lbl_803E1318@ha +/* 8014B0EC 0014804C 38 03 13 18 */ addi r0, r3, lbl_803E1318@l +/* 8014B0F0 00148050 90 1F 00 00 */ stw r0, 0(r31) +lbl_8014B0F4: +/* 8014B0F4 00148054 7C 80 07 35 */ extsh. r0, r4 +/* 8014B0F8 00148058 40 81 00 0C */ ble lbl_8014B104 +/* 8014B0FC 0014805C 7F E3 FB 78 */ mr r3, r31 +/* 8014B100 00148060 48 1C A8 31 */ bl Free__7CMemoryFPCv +lbl_8014B104: +/* 8014B104 00148064 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014B108 00148068 7F E3 FB 78 */ mr r3, r31 +/* 8014B10C 0014806C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8014B110 00148070 7C 08 03 A6 */ mtlr r0 +/* 8014B114 00148074 38 21 00 10 */ addi r1, r1, 0x10 +/* 8014B118 00148078 4E 80 00 20 */ blr + +.global ApplyHeadTracking__11CBSScriptedCFv +ApplyHeadTracking__11CBSScriptedCFv: +/* 8014B11C 0014807C 38 60 00 00 */ li r3, 0 +/* 8014B120 00148080 4E 80 00 20 */ blr + +.global GetBodyStateTransition__11CBSScriptedFfR15CBodyController +GetBodyStateTransition__11CBSScriptedFfR15CBodyController: +/* 8014B124 00148084 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8014B128 00148088 7C 08 02 A6 */ mflr r0 +/* 8014B12C 0014808C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8014B130 00148090 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8014B134 00148094 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8014B138 00148098 7C 9E 23 78 */ mr r30, r4 +/* 8014B13C 0014809C 3B FE 00 04 */ addi r31, r30, 4 +/* 8014B140 001480A0 38 80 00 0F */ li r4, 0xf +/* 8014B144 001480A4 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8014B148 001480A8 7C 7D 1B 78 */ mr r29, r3 +/* 8014B14C 001480AC 7F E3 FB 78 */ mr r3, r31 +/* 8014B150 001480B0 4B FE 63 01 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8014B154 001480B4 28 03 00 00 */ cmplwi r3, 0 +/* 8014B158 001480B8 41 82 00 0C */ beq lbl_8014B164 +/* 8014B15C 001480BC 38 60 00 0E */ li r3, 0xe +/* 8014B160 001480C0 48 00 00 B4 */ b lbl_8014B214 +lbl_8014B164: +/* 8014B164 001480C4 7F E3 FB 78 */ mr r3, r31 +/* 8014B168 001480C8 38 80 00 03 */ li r4, 3 +/* 8014B16C 001480CC 4B FE 62 E5 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8014B170 001480D0 28 03 00 00 */ cmplwi r3, 0 +/* 8014B174 001480D4 41 82 00 0C */ beq lbl_8014B180 +/* 8014B178 001480D8 38 60 00 00 */ li r3, 0 +/* 8014B17C 001480DC 48 00 00 98 */ b lbl_8014B214 +lbl_8014B180: +/* 8014B180 001480E0 7F E3 FB 78 */ mr r3, r31 +/* 8014B184 001480E4 38 80 00 09 */ li r4, 9 +/* 8014B188 001480E8 4B FE 62 C9 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8014B18C 001480EC 28 03 00 00 */ cmplwi r3, 0 +/* 8014B190 001480F0 41 82 00 0C */ beq lbl_8014B19C +/* 8014B194 001480F4 38 60 00 0A */ li r3, 0xa +/* 8014B198 001480F8 48 00 00 7C */ b lbl_8014B214 +lbl_8014B19C: +/* 8014B19C 001480FC 7F E3 FB 78 */ mr r3, r31 +/* 8014B1A0 00148100 38 80 00 04 */ li r4, 4 +/* 8014B1A4 00148104 4B FE 62 AD */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8014B1A8 00148108 28 03 00 00 */ cmplwi r3, 0 +/* 8014B1AC 0014810C 41 82 00 0C */ beq lbl_8014B1B8 +/* 8014B1B0 00148110 38 60 00 06 */ li r3, 6 +/* 8014B1B4 00148114 48 00 00 60 */ b lbl_8014B214 +lbl_8014B1B8: +/* 8014B1B8 00148118 7F E3 FB 78 */ mr r3, r31 +/* 8014B1BC 0014811C 38 80 00 13 */ li r4, 0x13 +/* 8014B1C0 00148120 4B FE 62 91 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8014B1C4 00148124 28 03 00 00 */ cmplwi r3, 0 +/* 8014B1C8 00148128 41 82 00 0C */ beq lbl_8014B1D4 +/* 8014B1CC 0014812C 38 60 00 11 */ li r3, 0x11 +/* 8014B1D0 00148130 48 00 00 44 */ b lbl_8014B214 +lbl_8014B1D4: +/* 8014B1D4 00148134 88 1D 00 04 */ lbz r0, 4(r29) +/* 8014B1D8 00148138 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8014B1DC 0014813C 41 82 00 20 */ beq lbl_8014B1FC +/* 8014B1E0 00148140 7F E3 FB 78 */ mr r3, r31 +/* 8014B1E4 00148144 38 80 00 0A */ li r4, 0xa +/* 8014B1E8 00148148 4B FE 62 69 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8014B1EC 0014814C 28 03 00 00 */ cmplwi r3, 0 +/* 8014B1F0 00148150 41 82 00 20 */ beq lbl_8014B210 +/* 8014B1F4 00148154 38 60 00 05 */ li r3, 5 +/* 8014B1F8 00148158 48 00 00 1C */ b lbl_8014B214 +lbl_8014B1FC: +/* 8014B1FC 0014815C 88 1E 03 00 */ lbz r0, 0x300(r30) +/* 8014B200 00148160 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8014B204 00148164 41 82 00 0C */ beq lbl_8014B210 +/* 8014B208 00148168 38 60 00 05 */ li r3, 5 +/* 8014B20C 0014816C 48 00 00 08 */ b lbl_8014B214 +lbl_8014B210: +/* 8014B210 00148170 38 60 FF FF */ li r3, -1 +lbl_8014B214: +/* 8014B214 00148174 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8014B218 00148178 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8014B21C 0014817C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8014B220 00148180 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8014B224 00148184 7C 08 03 A6 */ mtlr r0 +/* 8014B228 00148188 38 21 00 20 */ addi r1, r1, 0x20 +/* 8014B22C 0014818C 4E 80 00 20 */ blr + +.global Shutdown__11CBSScriptedFR15CBodyController +Shutdown__11CBSScriptedFR15CBodyController: +/* 8014B230 00148190 4E 80 00 20 */ blr + +.global UpdateBody__11CBSScriptedFfR15CBodyControllerR13CStateManager +UpdateBody__11CBSScriptedFfR15CBodyControllerR13CStateManager: +/* 8014B234 00148194 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8014B238 00148198 7C 08 02 A6 */ mflr r0 +/* 8014B23C 0014819C 90 01 00 34 */ stw r0, 0x34(r1) +/* 8014B240 001481A0 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 8014B244 001481A4 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 8014B248 001481A8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8014B24C 001481AC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8014B250 001481B0 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8014B254 001481B4 FF E0 08 90 */ fmr f31, f1 +/* 8014B258 001481B8 7C 7D 1B 78 */ mr r29, r3 +/* 8014B25C 001481BC 7C 9E 23 78 */ mr r30, r4 +/* 8014B260 001481C0 4B FF FE C5 */ bl GetBodyStateTransition__11CBSScriptedFfR15CBodyController +/* 8014B264 001481C4 7C 7F 1B 78 */ mr r31, r3 +/* 8014B268 001481C8 2C 1F FF FF */ cmpwi r31, -1 +/* 8014B26C 001481CC 40 82 00 88 */ bne lbl_8014B2F4 +/* 8014B270 001481D0 38 7E 00 1C */ addi r3, r30, 0x1c +/* 8014B274 001481D4 C0 22 9C E8 */ lfs f1, lbl_805ABA08@sda21(r2) +/* 8014B278 001481D8 C0 1E 00 1C */ lfs f0, 0x1c(r30) +/* 8014B27C 001481DC 38 00 00 00 */ li r0, 0 +/* 8014B280 001481E0 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 8014B284 001481E4 40 82 00 1C */ bne lbl_8014B2A0 +/* 8014B288 001481E8 C0 03 00 04 */ lfs f0, 4(r3) +/* 8014B28C 001481EC FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 8014B290 001481F0 40 82 00 10 */ bne lbl_8014B2A0 +/* 8014B294 001481F4 C0 03 00 08 */ lfs f0, 8(r3) +/* 8014B298 001481F8 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 8014B29C 001481FC 41 82 00 08 */ beq lbl_8014B2A4 +lbl_8014B2A0: +/* 8014B2A0 00148200 38 00 00 01 */ li r0, 1 +lbl_8014B2A4: +/* 8014B2A4 00148204 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8014B2A8 00148208 41 82 00 14 */ beq lbl_8014B2BC +/* 8014B2AC 0014820C FC 20 F8 90 */ fmr f1, f31 +/* 8014B2B0 00148210 7F C3 F3 78 */ mr r3, r30 +/* 8014B2B4 00148214 38 9E 00 1C */ addi r4, r30, 0x1c +/* 8014B2B8 00148218 4B FE F3 ED */ bl FaceDirection__15CBodyControllerFRC9CVector3ff +lbl_8014B2BC: +/* 8014B2BC 0014821C 88 7D 00 04 */ lbz r3, 4(r29) +/* 8014B2C0 00148220 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 8014B2C4 00148224 41 82 00 30 */ beq lbl_8014B2F4 +/* 8014B2C8 00148228 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 8014B2CC 0014822C 41 82 00 28 */ beq lbl_8014B2F4 +/* 8014B2D0 00148230 C0 3D 00 08 */ lfs f1, 8(r29) +/* 8014B2D4 00148234 C0 02 9C E8 */ lfs f0, lbl_805ABA08@sda21(r2) +/* 8014B2D8 00148238 EC 21 F8 28 */ fsubs f1, f1, f31 +/* 8014B2DC 0014823C D0 3D 00 08 */ stfs f1, 8(r29) +/* 8014B2E0 00148240 C0 3D 00 08 */ lfs f1, 8(r29) +/* 8014B2E4 00148244 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8014B2E8 00148248 4C 40 13 82 */ cror 2, 0, 2 +/* 8014B2EC 0014824C 40 82 00 08 */ bne lbl_8014B2F4 +/* 8014B2F0 00148250 3B E0 00 05 */ li r31, 5 +lbl_8014B2F4: +/* 8014B2F4 00148254 7F E3 FB 78 */ mr r3, r31 +/* 8014B2F8 00148258 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 8014B2FC 0014825C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8014B300 00148260 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 8014B304 00148264 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8014B308 00148268 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8014B30C 0014826C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8014B310 00148270 7C 08 03 A6 */ mtlr r0 +/* 8014B314 00148274 38 21 00 30 */ addi r1, r1, 0x30 +/* 8014B318 00148278 4E 80 00 20 */ blr + +.global Start__11CBSScriptedFR15CBodyControllerR13CStateManager +Start__11CBSScriptedFR15CBodyControllerR13CStateManager: +/* 8014B31C 0014827C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8014B320 00148280 7C 08 02 A6 */ mflr r0 +/* 8014B324 00148284 90 01 00 44 */ stw r0, 0x44(r1) +/* 8014B328 00148288 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8014B32C 0014828C 7C 9F 23 78 */ mr r31, r4 +/* 8014B330 00148290 38 80 00 13 */ li r4, 0x13 +/* 8014B334 00148294 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8014B338 00148298 7C 7E 1B 78 */ mr r30, r3 +/* 8014B33C 0014829C 38 7F 00 04 */ addi r3, r31, 4 +/* 8014B340 001482A0 4B FE 61 11 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8014B344 001482A4 88 03 00 0C */ lbz r0, 0xc(r3) +/* 8014B348 001482A8 7C 6A 1B 78 */ mr r10, r3 +/* 8014B34C 001482AC 88 9E 00 04 */ lbz r4, 4(r30) +/* 8014B350 001482B0 38 E0 FF FF */ li r7, -1 +/* 8014B354 001482B4 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f +/* 8014B358 001482B8 C0 02 9C EC */ lfs f0, lbl_805ABA0C@sda21(r2) +/* 8014B35C 001482BC 50 64 3E 30 */ rlwimi r4, r3, 7, 0x18, 0x18 +/* 8014B360 001482C0 38 A0 00 01 */ li r5, 1 +/* 8014B364 001482C4 98 9E 00 04 */ stb r4, 4(r30) +/* 8014B368 001482C8 38 00 00 00 */ li r0, 0 +/* 8014B36C 001482CC 7F E3 FB 78 */ mr r3, r31 +/* 8014B370 001482D0 38 81 00 08 */ addi r4, r1, 8 +/* 8014B374 001482D4 89 2A 00 0C */ lbz r9, 0xc(r10) +/* 8014B378 001482D8 38 C0 00 00 */ li r6, 0 +/* 8014B37C 001482DC 89 1E 00 04 */ lbz r8, 4(r30) +/* 8014B380 001482E0 51 28 06 72 */ rlwimi r8, r9, 0, 0x19, 0x19 +/* 8014B384 001482E4 99 1E 00 04 */ stb r8, 4(r30) +/* 8014B388 001482E8 C0 2A 00 10 */ lfs f1, 0x10(r10) +/* 8014B38C 001482EC D0 3E 00 08 */ stfs f1, 8(r30) +/* 8014B390 001482F0 81 0A 00 08 */ lwz r8, 8(r10) +/* 8014B394 001482F4 91 01 00 08 */ stw r8, 8(r1) +/* 8014B398 001482F8 90 E1 00 0C */ stw r7, 0xc(r1) +/* 8014B39C 001482FC D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8014B3A0 00148300 98 A1 00 14 */ stb r5, 0x14(r1) +/* 8014B3A4 00148304 90 01 00 18 */ stw r0, 0x18(r1) +/* 8014B3A8 00148308 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8014B3AC 0014830C 98 01 00 20 */ stb r0, 0x20(r1) +/* 8014B3B0 00148310 90 01 00 24 */ stw r0, 0x24(r1) +/* 8014B3B4 00148314 90 01 00 28 */ stw r0, 0x28(r1) +/* 8014B3B8 00148318 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8014B3BC 0014831C 88 0A 00 0C */ lbz r0, 0xc(r10) +/* 8014B3C0 00148320 54 05 CF FE */ rlwinm r5, r0, 0x19, 0x1f, 0x1f +/* 8014B3C4 00148324 4B FE F5 59 */ bl SetCurrentAnimation__15CBodyControllerFRC18CAnimPlaybackParmsbb +/* 8014B3C8 00148328 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8014B3CC 0014832C 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8014B3D0 00148330 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8014B3D4 00148334 7C 08 03 A6 */ mtlr r0 +/* 8014B3D8 00148338 38 21 00 40 */ addi r1, r1, 0x40 +/* 8014B3DC 0014833C 4E 80 00 20 */ blr + +.global __ct__11CBSScriptedFv +__ct__11CBSScriptedFv: +/* 8014B3E0 00148340 3C C0 80 3E */ lis r6, lbl_803E1318@ha +/* 8014B3E4 00148344 3C A0 80 3E */ lis r5, lbl_803E24A8@ha +/* 8014B3E8 00148348 38 C6 13 18 */ addi r6, r6, lbl_803E1318@l +/* 8014B3EC 0014834C 38 80 00 00 */ li r4, 0 +/* 8014B3F0 00148350 90 C3 00 00 */ stw r6, 0(r3) +/* 8014B3F4 00148354 38 05 24 A8 */ addi r0, r5, lbl_803E24A8@l +/* 8014B3F8 00148358 C0 02 9C E8 */ lfs f0, lbl_805ABA08@sda21(r2) +/* 8014B3FC 0014835C 90 03 00 00 */ stw r0, 0(r3) +/* 8014B400 00148360 88 03 00 04 */ lbz r0, 4(r3) +/* 8014B404 00148364 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 8014B408 00148368 98 03 00 04 */ stb r0, 4(r3) +/* 8014B40C 0014836C 88 03 00 04 */ lbz r0, 4(r3) +/* 8014B410 00148370 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 8014B414 00148374 98 03 00 04 */ stb r0, 4(r3) +/* 8014B418 00148378 D0 03 00 08 */ stfs f0, 8(r3) +/* 8014B41C 0014837C 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/BodyState/CBSWallHang.s b/asm/Kyoto_CWD/BodyState/CBSWallHang.s new file mode 100644 index 00000000..dea98d70 --- /dev/null +++ b/asm/Kyoto_CWD/BodyState/CBSWallHang.s @@ -0,0 +1,1606 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__11CBSWallHangFv +__dt__11CBSWallHangFv: +/* 8018D4BC 0018A41C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018D4C0 0018A420 7C 08 02 A6 */ mflr r0 +/* 8018D4C4 0018A424 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018D4C8 0018A428 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8018D4CC 0018A42C 7C 7F 1B 79 */ or. r31, r3, r3 +/* 8018D4D0 0018A430 41 82 00 30 */ beq lbl_8018D500 +/* 8018D4D4 0018A434 3C 60 80 3E */ lis r3, lbl_803E43A0@ha +/* 8018D4D8 0018A438 38 03 43 A0 */ addi r0, r3, lbl_803E43A0@l +/* 8018D4DC 0018A43C 90 1F 00 00 */ stw r0, 0(r31) +/* 8018D4E0 0018A440 41 82 00 10 */ beq lbl_8018D4F0 +/* 8018D4E4 0018A444 3C 60 80 3E */ lis r3, lbl_803E1318@ha +/* 8018D4E8 0018A448 38 03 13 18 */ addi r0, r3, lbl_803E1318@l +/* 8018D4EC 0018A44C 90 1F 00 00 */ stw r0, 0(r31) +lbl_8018D4F0: +/* 8018D4F0 0018A450 7C 80 07 35 */ extsh. r0, r4 +/* 8018D4F4 0018A454 40 81 00 0C */ ble lbl_8018D500 +/* 8018D4F8 0018A458 7F E3 FB 78 */ mr r3, r31 +/* 8018D4FC 0018A45C 48 18 84 35 */ bl Free__7CMemoryFPCv +lbl_8018D500: +/* 8018D500 0018A460 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018D504 0018A464 7F E3 FB 78 */ mr r3, r31 +/* 8018D508 0018A468 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8018D50C 0018A46C 7C 08 03 A6 */ mtlr r0 +/* 8018D510 0018A470 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018D514 0018A474 4E 80 00 20 */ blr + +.global IsMoving__11CBSWallHangCFv +IsMoving__11CBSWallHangCFv: +/* 8018D518 0018A478 38 60 00 01 */ li r3, 1 +/* 8018D51C 0018A47C 4E 80 00 20 */ blr + +.global GetBodyStateTransition__11CBSWallHangFfR15CBodyController +GetBodyStateTransition__11CBSWallHangFfR15CBodyController: +/* 8018D520 0018A480 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018D524 0018A484 7C 08 02 A6 */ mflr r0 +/* 8018D528 0018A488 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018D52C 0018A48C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8018D530 0018A490 3B E4 00 04 */ addi r31, r4, 4 +/* 8018D534 0018A494 38 80 00 0F */ li r4, 0xf +/* 8018D538 0018A498 7F E3 FB 78 */ mr r3, r31 +/* 8018D53C 0018A49C 4B FA 3F 15 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8018D540 0018A4A0 28 03 00 00 */ cmplwi r3, 0 +/* 8018D544 0018A4A4 41 82 00 0C */ beq lbl_8018D550 +/* 8018D548 0018A4A8 38 60 00 0E */ li r3, 0xe +/* 8018D54C 0018A4AC 48 00 00 1C */ b lbl_8018D568 +lbl_8018D550: +/* 8018D550 0018A4B0 7F E3 FB 78 */ mr r3, r31 +/* 8018D554 0018A4B4 38 80 00 03 */ li r4, 3 +/* 8018D558 0018A4B8 4B FA 3E F9 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8018D55C 0018A4BC 7C 60 00 34 */ cntlzw r0, r3 +/* 8018D560 0018A4C0 54 00 DF FE */ rlwinm r0, r0, 0x1b, 0x1f, 0x1f +/* 8018D564 0018A4C4 7C 60 00 D0 */ neg r3, r0 +lbl_8018D568: +/* 8018D568 0018A4C8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018D56C 0018A4CC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8018D570 0018A4D0 7C 08 03 A6 */ mtlr r0 +/* 8018D574 0018A4D4 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018D578 0018A4D8 4E 80 00 20 */ blr + +.global FixInPlace__11CBSWallHangFR15CBodyController +FixInPlace__11CBSWallHangFR15CBodyController: +/* 8018D57C 0018A4DC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018D580 0018A4E0 7C 08 02 A6 */ mflr r0 +/* 8018D584 0018A4E4 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018D588 0018A4E8 38 61 00 08 */ addi r3, r1, 8 +/* 8018D58C 0018A4EC 80 84 00 00 */ lwz r4, 0(r4) +/* 8018D590 0018A4F0 4B F1 F4 CD */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" +/* 8018D594 0018A4F4 80 63 00 04 */ lwz r3, 4(r3) +/* 8018D598 0018A4F8 28 03 00 00 */ cmplwi r3, 0 +/* 8018D59C 0018A4FC 41 82 00 24 */ beq lbl_8018D5C0 +/* 8018D5A0 0018A500 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8018D5A4 0018A504 C4 04 66 A0 */ lfsu f0, skZero3f@l(r4) +/* 8018D5A8 0018A508 D0 03 00 FC */ stfs f0, 0xfc(r3) +/* 8018D5AC 0018A50C C0 04 00 04 */ lfs f0, 4(r4) +/* 8018D5B0 0018A510 D0 03 01 00 */ stfs f0, 0x100(r3) +/* 8018D5B4 0018A514 C0 04 00 08 */ lfs f0, 8(r4) +/* 8018D5B8 0018A518 D0 03 01 04 */ stfs f0, 0x104(r3) +/* 8018D5BC 0018A51C 4B F8 D6 E5 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +lbl_8018D5C0: +/* 8018D5C0 0018A520 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018D5C4 0018A524 7C 08 03 A6 */ mtlr r0 +/* 8018D5C8 0018A528 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018D5CC 0018A52C 4E 80 00 20 */ blr + +.global CheckForLand__11CBSWallHangFR15CBodyControllerR13CStateManager +CheckForLand__11CBSWallHangFR15CBodyControllerR13CStateManager: +/* 8018D5D0 0018A530 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 8018D5D4 0018A534 7C 08 02 A6 */ mflr r0 +/* 8018D5D8 0018A538 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 8018D5DC 0018A53C BF 61 00 AC */ stmw r27, 0xac(r1) +/* 8018D5E0 0018A540 7C 9C 23 78 */ mr r28, r4 +/* 8018D5E4 0018A544 7C 7B 1B 78 */ mr r27, r3 +/* 8018D5E8 0018A548 7C BD 2B 78 */ mr r29, r5 +/* 8018D5EC 0018A54C 38 61 00 54 */ addi r3, r1, 0x54 +/* 8018D5F0 0018A550 3B C0 00 00 */ li r30, 0 +/* 8018D5F4 0018A554 80 84 00 00 */ lwz r4, 0(r4) +/* 8018D5F8 0018A558 4B F1 F4 65 */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" +/* 8018D5FC 0018A55C 83 E3 00 04 */ lwz r31, 4(r3) +/* 8018D600 0018A560 28 1F 00 00 */ cmplwi r31, 0 +/* 8018D604 0018A564 41 82 01 38 */ beq lbl_8018D73C +/* 8018D608 0018A568 88 1F 03 28 */ lbz r0, 0x328(r31) +/* 8018D60C 0018A56C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8018D610 0018A570 40 82 00 20 */ bne lbl_8018D630 +/* 8018D614 0018A574 7F E3 FB 78 */ mr r3, r31 +/* 8018D618 0018A578 81 9F 00 00 */ lwz r12, 0(r31) +/* 8018D61C 0018A57C 81 8C 02 B8 */ lwz r12, 0x2b8(r12) +/* 8018D620 0018A580 7D 89 03 A6 */ mtctr r12 +/* 8018D624 0018A584 4E 80 04 21 */ bctrl +/* 8018D628 0018A588 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8018D62C 0018A58C 41 82 01 10 */ beq lbl_8018D73C +lbl_8018D630: +/* 8018D630 0018A590 38 00 00 09 */ li r0, 9 +/* 8018D634 0018A594 38 61 00 14 */ addi r3, r1, 0x14 +/* 8018D638 0018A598 90 1B 00 04 */ stw r0, 4(r27) +/* 8018D63C 0018A59C 48 15 5A 41 */ bl NoParameter__12CPASAnimParmFv +/* 8018D640 0018A5A0 38 61 00 1C */ addi r3, r1, 0x1c +/* 8018D644 0018A5A4 48 15 5A 39 */ bl NoParameter__12CPASAnimParmFv +/* 8018D648 0018A5A8 38 61 00 24 */ addi r3, r1, 0x24 +/* 8018D64C 0018A5AC 48 15 5A 31 */ bl NoParameter__12CPASAnimParmFv +/* 8018D650 0018A5B0 38 61 00 2C */ addi r3, r1, 0x2c +/* 8018D654 0018A5B4 48 15 5A 29 */ bl NoParameter__12CPASAnimParmFv +/* 8018D658 0018A5B8 38 61 00 34 */ addi r3, r1, 0x34 +/* 8018D65C 0018A5BC 48 15 5A 21 */ bl NoParameter__12CPASAnimParmFv +/* 8018D660 0018A5C0 38 61 00 3C */ addi r3, r1, 0x3c +/* 8018D664 0018A5C4 48 15 5A 19 */ bl NoParameter__12CPASAnimParmFv +/* 8018D668 0018A5C8 38 61 00 44 */ addi r3, r1, 0x44 +/* 8018D66C 0018A5CC 48 15 5A 11 */ bl NoParameter__12CPASAnimParmFv +/* 8018D670 0018A5D0 80 9B 00 04 */ lwz r4, 4(r27) +/* 8018D674 0018A5D4 38 61 00 4C */ addi r3, r1, 0x4c +/* 8018D678 0018A5D8 48 15 59 0D */ bl FromEnum__12CPASAnimParmFi +/* 8018D67C 0018A5DC 38 61 00 1C */ addi r3, r1, 0x1c +/* 8018D680 0018A5E0 38 01 00 14 */ addi r0, r1, 0x14 +/* 8018D684 0018A5E4 90 61 00 08 */ stw r3, 8(r1) +/* 8018D688 0018A5E8 38 61 00 5C */ addi r3, r1, 0x5c +/* 8018D68C 0018A5EC 38 A1 00 4C */ addi r5, r1, 0x4c +/* 8018D690 0018A5F0 38 C1 00 44 */ addi r6, r1, 0x44 +/* 8018D694 0018A5F4 90 01 00 0C */ stw r0, 0xc(r1) +/* 8018D698 0018A5F8 38 E1 00 3C */ addi r7, r1, 0x3c +/* 8018D69C 0018A5FC 39 01 00 34 */ addi r8, r1, 0x34 +/* 8018D6A0 0018A600 39 21 00 2C */ addi r9, r1, 0x2c +/* 8018D6A4 0018A604 39 41 00 24 */ addi r10, r1, 0x24 +/* 8018D6A8 0018A608 38 80 00 14 */ li r4, 0x14 +/* 8018D6AC 0018A60C 4B EE FC 19 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 8018D6B0 0018A610 80 BD 09 00 */ lwz r5, 0x900(r29) +/* 8018D6B4 0018A614 7F 83 E3 78 */ mr r3, r28 +/* 8018D6B8 0018A618 38 81 00 5C */ addi r4, r1, 0x5c +/* 8018D6BC 0018A61C 4B FA CC ED */ bl PlayBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16 +/* 8018D6C0 0018A620 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8018D6C4 0018A624 7F A3 EB 78 */ mr r3, r29 +/* 8018D6C8 0018A628 7F E4 FB 78 */ mr r4, r31 +/* 8018D6CC 0018A62C 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8018D6D0 0018A630 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8018D6D4 0018A634 38 C0 00 17 */ li r6, 0x17 +/* 8018D6D8 0018A638 4B EB 67 F9 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +/* 8018D6DC 0018A63C 34 A1 00 60 */ addic. r5, r1, 0x60 +/* 8018D6E0 0018A640 3B C0 00 01 */ li r30, 1 +/* 8018D6E4 0018A644 41 82 00 58 */ beq lbl_8018D73C +/* 8018D6E8 0018A648 80 C5 00 00 */ lwz r6, 0(r5) +/* 8018D6EC 0018A64C 38 60 00 00 */ li r3, 0 +/* 8018D6F0 0018A650 2C 06 00 00 */ cmpwi r6, 0 +/* 8018D6F4 0018A654 40 81 00 40 */ ble lbl_8018D734 +/* 8018D6F8 0018A658 2C 06 00 08 */ cmpwi r6, 8 +/* 8018D6FC 0018A65C 38 86 FF F8 */ addi r4, r6, -8 +/* 8018D700 0018A660 40 81 00 20 */ ble lbl_8018D720 +/* 8018D704 0018A664 38 04 00 07 */ addi r0, r4, 7 +/* 8018D708 0018A668 54 00 E8 FE */ srwi r0, r0, 3 +/* 8018D70C 0018A66C 7C 09 03 A6 */ mtctr r0 +/* 8018D710 0018A670 2C 04 00 00 */ cmpwi r4, 0 +/* 8018D714 0018A674 40 81 00 0C */ ble lbl_8018D720 +lbl_8018D718: +/* 8018D718 0018A678 38 63 00 08 */ addi r3, r3, 8 +/* 8018D71C 0018A67C 42 00 FF FC */ bdnz lbl_8018D718 +lbl_8018D720: +/* 8018D720 0018A680 7C 03 30 50 */ subf r0, r3, r6 +/* 8018D724 0018A684 7C 09 03 A6 */ mtctr r0 +/* 8018D728 0018A688 7C 03 30 00 */ cmpw r3, r6 +/* 8018D72C 0018A68C 40 80 00 08 */ bge lbl_8018D734 +lbl_8018D730: +/* 8018D730 0018A690 42 00 00 00 */ bdnz lbl_8018D730 +lbl_8018D734: +/* 8018D734 0018A694 38 00 00 00 */ li r0, 0 +/* 8018D738 0018A698 90 05 00 00 */ stw r0, 0(r5) +lbl_8018D73C: +/* 8018D73C 0018A69C 7F C3 F3 78 */ mr r3, r30 +/* 8018D740 0018A6A0 BB 61 00 AC */ lmw r27, 0xac(r1) +/* 8018D744 0018A6A4 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 8018D748 0018A6A8 7C 08 03 A6 */ mtlr r0 +/* 8018D74C 0018A6AC 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 8018D750 0018A6B0 4E 80 00 20 */ blr + +.global CheckForWall__11CBSWallHangFR15CBodyControllerR13CStateManager +CheckForWall__11CBSWallHangFR15CBodyControllerR13CStateManager: +/* 8018D754 0018A6B4 94 21 FE C0 */ stwu r1, -0x140(r1) +/* 8018D758 0018A6B8 7C 08 02 A6 */ mflr r0 +/* 8018D75C 0018A6BC 90 01 01 44 */ stw r0, 0x144(r1) +/* 8018D760 0018A6C0 BF 41 01 28 */ stmw r26, 0x128(r1) +/* 8018D764 0018A6C4 7C 9D 23 78 */ mr r29, r4 +/* 8018D768 0018A6C8 7C 7A 1B 78 */ mr r26, r3 +/* 8018D76C 0018A6CC 7C BE 2B 78 */ mr r30, r5 +/* 8018D770 0018A6D0 38 61 00 68 */ addi r3, r1, 0x68 +/* 8018D774 0018A6D4 3B 60 00 00 */ li r27, 0 +/* 8018D778 0018A6D8 80 84 00 00 */ lwz r4, 0(r4) +/* 8018D77C 0018A6DC 4B F1 F2 E1 */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" +/* 8018D780 0018A6E0 83 E3 00 04 */ lwz r31, 4(r3) +/* 8018D784 0018A6E4 28 1F 00 00 */ cmplwi r31, 0 +/* 8018D788 0018A6E8 41 82 02 C4 */ beq lbl_8018DA4C +/* 8018D78C 0018A6EC A0 1A 00 08 */ lhz r0, 8(r26) +/* 8018D790 0018A6F0 7F C3 F3 78 */ mr r3, r30 +/* 8018D794 0018A6F4 38 81 00 14 */ addi r4, r1, 0x14 +/* 8018D798 0018A6F8 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8018D79C 0018A6FC 4B EB EE 09 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8018D7A0 0018A700 7C 64 1B 78 */ mr r4, r3 +/* 8018D7A4 0018A704 38 61 00 18 */ addi r3, r1, 0x18 +/* 8018D7A8 0018A708 4B F2 24 E9 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8018D7AC 0018A70C 83 83 00 04 */ lwz r28, 4(r3) +/* 8018D7B0 0018A710 C0 22 A4 68 */ lfs f1, lbl_805AC188@sda21(r2) +/* 8018D7B4 0018A714 28 1C 00 00 */ cmplwi r28, 0 +/* 8018D7B8 0018A718 41 82 00 58 */ beq lbl_8018D810 +/* 8018D7BC 0018A71C C0 DC 00 50 */ lfs f6, 0x50(r28) +/* 8018D7C0 0018A720 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 8018D7C4 0018A724 C0 3C 00 40 */ lfs f1, 0x40(r28) +/* 8018D7C8 0018A728 EC A6 00 28 */ fsubs f5, f6, f0 +/* 8018D7CC 0018A72C C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8018D7D0 0018A730 C0 FC 00 60 */ lfs f7, 0x60(r28) +/* 8018D7D4 0018A734 EC 61 00 28 */ fsubs f3, f1, f0 +/* 8018D7D8 0018A738 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8018D7DC 0018A73C EC 05 01 72 */ fmuls f0, f5, f5 +/* 8018D7E0 0018A740 EC 87 10 28 */ fsubs f4, f7, f2 +/* 8018D7E4 0018A744 D0 21 00 88 */ stfs f1, 0x88(r1) +/* 8018D7E8 0018A748 EC 23 00 F2 */ fmuls f1, f3, f3 +/* 8018D7EC 0018A74C D0 C1 00 8C */ stfs f6, 0x8c(r1) +/* 8018D7F0 0018A750 EC 44 01 32 */ fmuls f2, f4, f4 +/* 8018D7F4 0018A754 EC 01 00 2A */ fadds f0, f1, f0 +/* 8018D7F8 0018A758 D0 E1 00 90 */ stfs f7, 0x90(r1) +/* 8018D7FC 0018A75C D0 61 00 94 */ stfs f3, 0x94(r1) +/* 8018D800 0018A760 EC 02 00 2A */ fadds f0, f2, f0 +/* 8018D804 0018A764 D0 A1 00 98 */ stfs f5, 0x98(r1) +/* 8018D808 0018A768 FC 20 00 90 */ fmr f1, f0 +/* 8018D80C 0018A76C D0 81 00 9C */ stfs f4, 0x9c(r1) +lbl_8018D810: +/* 8018D810 0018A770 C0 02 A4 6C */ lfs f0, lbl_805AC18C@sda21(r2) +/* 8018D814 0018A774 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018D818 0018A778 41 80 00 10 */ blt lbl_8018D828 +/* 8018D81C 0018A77C 88 1F 03 28 */ lbz r0, 0x328(r31) +/* 8018D820 0018A780 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8018D824 0018A784 41 82 02 28 */ beq lbl_8018DA4C +lbl_8018D828: +/* 8018D828 0018A788 38 00 00 03 */ li r0, 3 +/* 8018D82C 0018A78C 38 61 00 28 */ addi r3, r1, 0x28 +/* 8018D830 0018A790 90 1A 00 04 */ stw r0, 4(r26) +/* 8018D834 0018A794 48 15 58 49 */ bl NoParameter__12CPASAnimParmFv +/* 8018D838 0018A798 38 61 00 30 */ addi r3, r1, 0x30 +/* 8018D83C 0018A79C 48 15 58 41 */ bl NoParameter__12CPASAnimParmFv +/* 8018D840 0018A7A0 38 61 00 38 */ addi r3, r1, 0x38 +/* 8018D844 0018A7A4 48 15 58 39 */ bl NoParameter__12CPASAnimParmFv +/* 8018D848 0018A7A8 38 61 00 40 */ addi r3, r1, 0x40 +/* 8018D84C 0018A7AC 48 15 58 31 */ bl NoParameter__12CPASAnimParmFv +/* 8018D850 0018A7B0 38 61 00 48 */ addi r3, r1, 0x48 +/* 8018D854 0018A7B4 48 15 58 29 */ bl NoParameter__12CPASAnimParmFv +/* 8018D858 0018A7B8 38 61 00 50 */ addi r3, r1, 0x50 +/* 8018D85C 0018A7BC 48 15 58 21 */ bl NoParameter__12CPASAnimParmFv +/* 8018D860 0018A7C0 38 61 00 58 */ addi r3, r1, 0x58 +/* 8018D864 0018A7C4 48 15 58 19 */ bl NoParameter__12CPASAnimParmFv +/* 8018D868 0018A7C8 80 9A 00 04 */ lwz r4, 4(r26) +/* 8018D86C 0018A7CC 38 61 00 60 */ addi r3, r1, 0x60 +/* 8018D870 0018A7D0 48 15 57 15 */ bl FromEnum__12CPASAnimParmFi +/* 8018D874 0018A7D4 38 61 00 30 */ addi r3, r1, 0x30 +/* 8018D878 0018A7D8 38 01 00 28 */ addi r0, r1, 0x28 +/* 8018D87C 0018A7DC 90 61 00 08 */ stw r3, 8(r1) +/* 8018D880 0018A7E0 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 8018D884 0018A7E4 38 A1 00 60 */ addi r5, r1, 0x60 +/* 8018D888 0018A7E8 38 C1 00 58 */ addi r6, r1, 0x58 +/* 8018D88C 0018A7EC 90 01 00 0C */ stw r0, 0xc(r1) +/* 8018D890 0018A7F0 38 E1 00 50 */ addi r7, r1, 0x50 +/* 8018D894 0018A7F4 39 01 00 48 */ addi r8, r1, 0x48 +/* 8018D898 0018A7F8 39 21 00 40 */ addi r9, r1, 0x40 +/* 8018D89C 0018A7FC 39 41 00 38 */ addi r10, r1, 0x38 +/* 8018D8A0 0018A800 38 80 00 14 */ li r4, 0x14 +/* 8018D8A4 0018A804 4B EE FA 21 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 8018D8A8 0018A808 7F A3 EB 78 */ mr r3, r29 +/* 8018D8AC 0018A80C 4B FA CB A9 */ bl GetPASDatabase__15CBodyControllerCFv +/* 8018D8B0 0018A810 80 DE 09 00 */ lwz r6, 0x900(r30) +/* 8018D8B4 0018A814 7C 64 1B 78 */ mr r4, r3 +/* 8018D8B8 0018A818 38 61 00 20 */ addi r3, r1, 0x20 +/* 8018D8BC 0018A81C 38 A1 00 E0 */ addi r5, r1, 0xe0 +/* 8018D8C0 0018A820 38 E0 FF FF */ li r7, -1 +/* 8018D8C4 0018A824 48 15 77 9D */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i +/* 8018D8C8 0018A828 28 1C 00 00 */ cmplwi r28, 0 +/* 8018D8CC 0018A82C 83 61 00 24 */ lwz r27, 0x24(r1) +/* 8018D8D0 0018A830 41 82 00 24 */ beq lbl_8018D8F4 +/* 8018D8D4 0018A834 C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 8018D8D8 0018A838 39 61 00 7C */ addi r11, r1, 0x7c +/* 8018D8DC 0018A83C C0 3C 00 50 */ lfs f1, 0x50(r28) +/* 8018D8E0 0018A840 C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 8018D8E4 0018A844 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 8018D8E8 0018A848 D0 21 00 80 */ stfs f1, 0x80(r1) +/* 8018D8EC 0018A84C D0 41 00 84 */ stfs f2, 0x84(r1) +/* 8018D8F0 0018A850 48 00 00 20 */ b lbl_8018D910 +lbl_8018D8F4: +/* 8018D8F4 0018A854 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8018D8F8 0018A858 39 61 00 70 */ addi r11, r1, 0x70 +/* 8018D8FC 0018A85C C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 8018D900 0018A860 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8018D904 0018A864 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 8018D908 0018A868 D0 21 00 74 */ stfs f1, 0x74(r1) +/* 8018D90C 0018A86C D0 41 00 78 */ stfs f2, 0x78(r1) +lbl_8018D910: +/* 8018D910 0018A870 C0 2B 00 00 */ lfs f1, 0(r11) +/* 8018D914 0018A874 38 E1 00 AC */ addi r7, r1, 0xac +/* 8018D918 0018A878 C0 02 A4 6C */ lfs f0, lbl_805AC18C@sda21(r2) +/* 8018D91C 0018A87C 38 01 00 A0 */ addi r0, r1, 0xa0 +/* 8018D920 0018A880 D0 21 00 AC */ stfs f1, 0xac(r1) +/* 8018D924 0018A884 39 40 FF FF */ li r10, -1 +/* 8018D928 0018A888 39 20 00 01 */ li r9, 1 +/* 8018D92C 0018A88C 39 00 00 00 */ li r8, 0 +/* 8018D930 0018A890 C0 2B 00 04 */ lfs f1, 4(r11) +/* 8018D934 0018A894 7F A3 EB 78 */ mr r3, r29 +/* 8018D938 0018A898 38 81 00 B8 */ addi r4, r1, 0xb8 +/* 8018D93C 0018A89C 38 A0 00 00 */ li r5, 0 +/* 8018D940 0018A8A0 D0 21 00 B0 */ stfs f1, 0xb0(r1) +/* 8018D944 0018A8A4 38 C0 00 00 */ li r6, 0 +/* 8018D948 0018A8A8 C0 2B 00 08 */ lfs f1, 8(r11) +/* 8018D94C 0018A8AC D0 21 00 B4 */ stfs f1, 0xb4(r1) +/* 8018D950 0018A8B0 81 7D 00 00 */ lwz r11, 0(r29) +/* 8018D954 0018A8B4 81 8B 00 64 */ lwz r12, 0x64(r11) +/* 8018D958 0018A8B8 39 6B 00 34 */ addi r11, r11, 0x34 +/* 8018D95C 0018A8BC C0 4C 00 04 */ lfs f2, 4(r12) +/* 8018D960 0018A8C0 C0 6C 00 08 */ lfs f3, 8(r12) +/* 8018D964 0018A8C4 C0 2C 00 00 */ lfs f1, 0(r12) +/* 8018D968 0018A8C8 D0 21 00 A0 */ stfs f1, 0xa0(r1) +/* 8018D96C 0018A8CC D0 41 00 A4 */ stfs f2, 0xa4(r1) +/* 8018D970 0018A8D0 D0 61 00 A8 */ stfs f3, 0xa8(r1) +/* 8018D974 0018A8D4 93 61 00 B8 */ stw r27, 0xb8(r1) +/* 8018D978 0018A8D8 91 41 00 BC */ stw r10, 0xbc(r1) +/* 8018D97C 0018A8DC D0 01 00 C0 */ stfs f0, 0xc0(r1) +/* 8018D980 0018A8E0 99 21 00 C4 */ stb r9, 0xc4(r1) +/* 8018D984 0018A8E4 91 01 00 C8 */ stw r8, 0xc8(r1) +/* 8018D988 0018A8E8 90 E1 00 CC */ stw r7, 0xcc(r1) +/* 8018D98C 0018A8EC 99 01 00 D0 */ stb r8, 0xd0(r1) +/* 8018D990 0018A8F0 91 01 00 D4 */ stw r8, 0xd4(r1) +/* 8018D994 0018A8F4 91 61 00 D8 */ stw r11, 0xd8(r1) +/* 8018D998 0018A8F8 90 01 00 DC */ stw r0, 0xdc(r1) +/* 8018D99C 0018A8FC 4B FA CF 81 */ bl SetCurrentAnimation__15CBodyControllerFRC18CAnimPlaybackParmsbb +/* 8018D9A0 0018A900 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8018D9A4 0018A904 7F E3 FB 78 */ mr r3, r31 +/* 8018D9A8 0018A908 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 8018D9AC 0018A90C 4B F8 D2 F5 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 8018D9B0 0018A910 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8018D9B4 0018A914 7F C3 F3 78 */ mr r3, r30 +/* 8018D9B8 0018A918 38 E4 66 A0 */ addi r7, r4, skZero3f@l +/* 8018D9BC 0018A91C 7F E4 FB 78 */ mr r4, r31 +/* 8018D9C0 0018A920 C0 07 00 00 */ lfs f0, 0(r7) +/* 8018D9C4 0018A924 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8018D9C8 0018A928 38 C0 00 17 */ li r6, 0x17 +/* 8018D9CC 0018A92C D0 1F 01 50 */ stfs f0, 0x150(r31) +/* 8018D9D0 0018A930 C0 07 00 04 */ lfs f0, 4(r7) +/* 8018D9D4 0018A934 D0 1F 01 54 */ stfs f0, 0x154(r31) +/* 8018D9D8 0018A938 C0 07 00 08 */ lfs f0, 8(r7) +/* 8018D9DC 0018A93C D0 1F 01 58 */ stfs f0, 0x158(r31) +/* 8018D9E0 0018A940 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8018D9E4 0018A944 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8018D9E8 0018A948 4B EB 64 E9 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +/* 8018D9EC 0018A94C 34 A1 00 E4 */ addic. r5, r1, 0xe4 +/* 8018D9F0 0018A950 3B 60 00 01 */ li r27, 1 +/* 8018D9F4 0018A954 41 82 00 58 */ beq lbl_8018DA4C +/* 8018D9F8 0018A958 80 C5 00 00 */ lwz r6, 0(r5) +/* 8018D9FC 0018A95C 38 60 00 00 */ li r3, 0 +/* 8018DA00 0018A960 2C 06 00 00 */ cmpwi r6, 0 +/* 8018DA04 0018A964 40 81 00 40 */ ble lbl_8018DA44 +/* 8018DA08 0018A968 2C 06 00 08 */ cmpwi r6, 8 +/* 8018DA0C 0018A96C 38 86 FF F8 */ addi r4, r6, -8 +/* 8018DA10 0018A970 40 81 00 20 */ ble lbl_8018DA30 +/* 8018DA14 0018A974 38 04 00 07 */ addi r0, r4, 7 +/* 8018DA18 0018A978 54 00 E8 FE */ srwi r0, r0, 3 +/* 8018DA1C 0018A97C 7C 09 03 A6 */ mtctr r0 +/* 8018DA20 0018A980 2C 04 00 00 */ cmpwi r4, 0 +/* 8018DA24 0018A984 40 81 00 0C */ ble lbl_8018DA30 +lbl_8018DA28: +/* 8018DA28 0018A988 38 63 00 08 */ addi r3, r3, 8 +/* 8018DA2C 0018A98C 42 00 FF FC */ bdnz lbl_8018DA28 +lbl_8018DA30: +/* 8018DA30 0018A990 7C 03 30 50 */ subf r0, r3, r6 +/* 8018DA34 0018A994 7C 09 03 A6 */ mtctr r0 +/* 8018DA38 0018A998 7C 03 30 00 */ cmpw r3, r6 +/* 8018DA3C 0018A99C 40 80 00 08 */ bge lbl_8018DA44 +lbl_8018DA40: +/* 8018DA40 0018A9A0 42 00 00 00 */ bdnz lbl_8018DA40 +lbl_8018DA44: +/* 8018DA44 0018A9A4 38 00 00 00 */ li r0, 0 +/* 8018DA48 0018A9A8 90 05 00 00 */ stw r0, 0(r5) +lbl_8018DA4C: +/* 8018DA4C 0018A9AC 7F 63 DB 78 */ mr r3, r27 +/* 8018DA50 0018A9B0 BB 41 01 28 */ lmw r26, 0x128(r1) +/* 8018DA54 0018A9B4 80 01 01 44 */ lwz r0, 0x144(r1) +/* 8018DA58 0018A9B8 7C 08 03 A6 */ mtlr r0 +/* 8018DA5C 0018A9BC 38 21 01 40 */ addi r1, r1, 0x140 +/* 8018DA60 0018A9C0 4E 80 00 20 */ blr + +.global nullsub_134 +nullsub_134: +/* 8018DA64 0018A9C4 4E 80 00 20 */ blr + +.global UpdateBody__11CBSWallHangFfR15CBodyControllerR13CStateManager +UpdateBody__11CBSWallHangFfR15CBodyControllerR13CStateManager: +/* 8018DA68 0018A9C8 94 21 F9 F0 */ stwu r1, -0x610(r1) +/* 8018DA6C 0018A9CC 7C 08 02 A6 */ mflr r0 +/* 8018DA70 0018A9D0 90 01 06 14 */ stw r0, 0x614(r1) +/* 8018DA74 0018A9D4 DB E1 06 00 */ stfd f31, 0x600(r1) +/* 8018DA78 0018A9D8 F3 E1 06 08 */ psq_st f31, 1544(r1), 0, qr0 +/* 8018DA7C 0018A9DC DB C1 05 F0 */ stfd f30, 0x5f0(r1) +/* 8018DA80 0018A9E0 F3 C1 05 F8 */ psq_st f30, 1528(r1), 0, qr0 +/* 8018DA84 0018A9E4 DB A1 05 E0 */ stfd f29, 0x5e0(r1) +/* 8018DA88 0018A9E8 F3 A1 05 E8 */ psq_st f29, 1512(r1), 0, qr0 +/* 8018DA8C 0018A9EC BF 21 05 C4 */ stmw r25, 0x5c4(r1) +/* 8018DA90 0018A9F0 FF E0 08 90 */ fmr f31, f1 +/* 8018DA94 0018A9F4 7C 7C 1B 78 */ mr r28, r3 +/* 8018DA98 0018A9F8 7C 9D 23 78 */ mr r29, r4 +/* 8018DA9C 0018A9FC 7C BE 2B 78 */ mr r30, r5 +/* 8018DAA0 0018AA00 4B FF FA 81 */ bl GetBodyStateTransition__11CBSWallHangFfR15CBodyController +/* 8018DAA4 0018AA04 7C 7F 1B 78 */ mr r31, r3 +/* 8018DAA8 0018AA08 2C 1F FF FF */ cmpwi r31, -1 +/* 8018DAAC 0018AA0C 40 82 0D C0 */ bne lbl_8018E86C +/* 8018DAB0 0018AA10 80 1C 00 04 */ lwz r0, 4(r28) +/* 8018DAB4 0018AA14 28 00 00 09 */ cmplwi r0, 9 +/* 8018DAB8 0018AA18 41 81 0D B4 */ bgt lbl_8018E86C +/* 8018DABC 0018AA1C 3C 60 80 3E */ lis r3, lbl_803E43D8@ha +/* 8018DAC0 0018AA20 54 00 10 3A */ slwi r0, r0, 2 +/* 8018DAC4 0018AA24 38 63 43 D8 */ addi r3, r3, lbl_803E43D8@l +/* 8018DAC8 0018AA28 7C 03 00 2E */ lwzx r0, r3, r0 +/* 8018DACC 0018AA2C 7C 09 03 A6 */ mtctr r0 +/* 8018DAD0 0018AA30 4E 80 04 20 */ bctr +/* 8018DAD4 0018AA34 88 1D 03 00 */ lbz r0, 0x300(r29) +/* 8018DAD8 0018AA38 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8018DADC 0018AA3C 41 82 0D 90 */ beq lbl_8018E86C +/* 8018DAE0 0018AA40 38 61 02 64 */ addi r3, r1, 0x264 +/* 8018DAE4 0018AA44 48 15 55 99 */ bl NoParameter__12CPASAnimParmFv +/* 8018DAE8 0018AA48 38 61 02 6C */ addi r3, r1, 0x26c +/* 8018DAEC 0018AA4C 48 15 55 91 */ bl NoParameter__12CPASAnimParmFv +/* 8018DAF0 0018AA50 38 61 02 74 */ addi r3, r1, 0x274 +/* 8018DAF4 0018AA54 48 15 55 89 */ bl NoParameter__12CPASAnimParmFv +/* 8018DAF8 0018AA58 38 61 02 7C */ addi r3, r1, 0x27c +/* 8018DAFC 0018AA5C 48 15 55 81 */ bl NoParameter__12CPASAnimParmFv +/* 8018DB00 0018AA60 38 61 02 84 */ addi r3, r1, 0x284 +/* 8018DB04 0018AA64 48 15 55 79 */ bl NoParameter__12CPASAnimParmFv +/* 8018DB08 0018AA68 38 61 02 8C */ addi r3, r1, 0x28c +/* 8018DB0C 0018AA6C 48 15 55 71 */ bl NoParameter__12CPASAnimParmFv +/* 8018DB10 0018AA70 38 61 02 94 */ addi r3, r1, 0x294 +/* 8018DB14 0018AA74 48 15 55 69 */ bl NoParameter__12CPASAnimParmFv +/* 8018DB18 0018AA78 38 61 02 9C */ addi r3, r1, 0x29c +/* 8018DB1C 0018AA7C 38 80 00 01 */ li r4, 1 +/* 8018DB20 0018AA80 48 15 54 65 */ bl FromEnum__12CPASAnimParmFi +/* 8018DB24 0018AA84 38 61 02 6C */ addi r3, r1, 0x26c +/* 8018DB28 0018AA88 38 01 02 64 */ addi r0, r1, 0x264 +/* 8018DB2C 0018AA8C 90 61 00 08 */ stw r3, 8(r1) +/* 8018DB30 0018AA90 38 61 05 70 */ addi r3, r1, 0x570 +/* 8018DB34 0018AA94 38 A1 02 9C */ addi r5, r1, 0x29c +/* 8018DB38 0018AA98 38 C1 02 94 */ addi r6, r1, 0x294 +/* 8018DB3C 0018AA9C 90 01 00 0C */ stw r0, 0xc(r1) +/* 8018DB40 0018AAA0 38 E1 02 8C */ addi r7, r1, 0x28c +/* 8018DB44 0018AAA4 39 01 02 84 */ addi r8, r1, 0x284 +/* 8018DB48 0018AAA8 39 21 02 7C */ addi r9, r1, 0x27c +/* 8018DB4C 0018AAAC 39 41 02 74 */ addi r10, r1, 0x274 +/* 8018DB50 0018AAB0 38 80 00 14 */ li r4, 0x14 +/* 8018DB54 0018AAB4 4B EE F7 71 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 8018DB58 0018AAB8 7F A3 EB 78 */ mr r3, r29 +/* 8018DB5C 0018AABC 4B FA C8 F9 */ bl GetPASDatabase__15CBodyControllerCFv +/* 8018DB60 0018AAC0 80 DE 09 00 */ lwz r6, 0x900(r30) +/* 8018DB64 0018AAC4 7C 64 1B 78 */ mr r4, r3 +/* 8018DB68 0018AAC8 38 61 02 5C */ addi r3, r1, 0x25c +/* 8018DB6C 0018AACC 38 A1 05 70 */ addi r5, r1, 0x570 +/* 8018DB70 0018AAD0 38 E0 FF FF */ li r7, -1 +/* 8018DB74 0018AAD4 48 15 74 ED */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i +/* 8018DB78 0018AAD8 C0 21 02 5C */ lfs f1, 0x25c(r1) +/* 8018DB7C 0018AADC C0 02 A4 70 */ lfs f0, lbl_805AC190@sda21(r2) +/* 8018DB80 0018AAE0 80 81 02 60 */ lwz r4, 0x260(r1) +/* 8018DB84 0018AAE4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018DB88 0018AAE8 40 81 00 58 */ ble lbl_8018DBE0 +/* 8018DB8C 0018AAEC 39 00 00 01 */ li r8, 1 +/* 8018DB90 0018AAF0 C0 02 A4 6C */ lfs f0, lbl_805AC18C@sda21(r2) +/* 8018DB94 0018AAF4 91 1C 00 04 */ stw r8, 4(r28) +/* 8018DB98 0018AAF8 38 00 00 00 */ li r0, 0 +/* 8018DB9C 0018AAFC 38 E0 FF FF */ li r7, -1 +/* 8018DBA0 0018AB00 7F A3 EB 78 */ mr r3, r29 +/* 8018DBA4 0018AB04 90 81 03 08 */ stw r4, 0x308(r1) +/* 8018DBA8 0018AB08 38 81 03 08 */ addi r4, r1, 0x308 +/* 8018DBAC 0018AB0C 38 A0 00 00 */ li r5, 0 +/* 8018DBB0 0018AB10 38 C0 00 00 */ li r6, 0 +/* 8018DBB4 0018AB14 90 E1 03 0C */ stw r7, 0x30c(r1) +/* 8018DBB8 0018AB18 D0 01 03 10 */ stfs f0, 0x310(r1) +/* 8018DBBC 0018AB1C 99 01 03 14 */ stb r8, 0x314(r1) +/* 8018DBC0 0018AB20 90 01 03 18 */ stw r0, 0x318(r1) +/* 8018DBC4 0018AB24 90 01 03 1C */ stw r0, 0x31c(r1) +/* 8018DBC8 0018AB28 98 01 03 20 */ stb r0, 0x320(r1) +/* 8018DBCC 0018AB2C 90 01 03 24 */ stw r0, 0x324(r1) +/* 8018DBD0 0018AB30 90 01 03 28 */ stw r0, 0x328(r1) +/* 8018DBD4 0018AB34 90 01 03 2C */ stw r0, 0x32c(r1) +/* 8018DBD8 0018AB38 4B FA CD 45 */ bl SetCurrentAnimation__15CBodyControllerFRC18CAnimPlaybackParmsbb +/* 8018DBDC 0018AB3C 48 00 00 F0 */ b lbl_8018DCCC +lbl_8018DBE0: +/* 8018DBE0 0018AB40 38 00 00 02 */ li r0, 2 +/* 8018DBE4 0018AB44 38 61 02 1C */ addi r3, r1, 0x21c +/* 8018DBE8 0018AB48 90 1C 00 04 */ stw r0, 4(r28) +/* 8018DBEC 0018AB4C 48 15 54 91 */ bl NoParameter__12CPASAnimParmFv +/* 8018DBF0 0018AB50 38 61 02 24 */ addi r3, r1, 0x224 +/* 8018DBF4 0018AB54 48 15 54 89 */ bl NoParameter__12CPASAnimParmFv +/* 8018DBF8 0018AB58 38 61 02 2C */ addi r3, r1, 0x22c +/* 8018DBFC 0018AB5C 48 15 54 81 */ bl NoParameter__12CPASAnimParmFv +/* 8018DC00 0018AB60 38 61 02 34 */ addi r3, r1, 0x234 +/* 8018DC04 0018AB64 48 15 54 79 */ bl NoParameter__12CPASAnimParmFv +/* 8018DC08 0018AB68 38 61 02 3C */ addi r3, r1, 0x23c +/* 8018DC0C 0018AB6C 48 15 54 71 */ bl NoParameter__12CPASAnimParmFv +/* 8018DC10 0018AB70 38 61 02 44 */ addi r3, r1, 0x244 +/* 8018DC14 0018AB74 48 15 54 69 */ bl NoParameter__12CPASAnimParmFv +/* 8018DC18 0018AB78 38 61 02 4C */ addi r3, r1, 0x24c +/* 8018DC1C 0018AB7C 48 15 54 61 */ bl NoParameter__12CPASAnimParmFv +/* 8018DC20 0018AB80 80 9C 00 04 */ lwz r4, 4(r28) +/* 8018DC24 0018AB84 38 61 02 54 */ addi r3, r1, 0x254 +/* 8018DC28 0018AB88 48 15 53 5D */ bl FromEnum__12CPASAnimParmFi +/* 8018DC2C 0018AB8C 38 61 02 24 */ addi r3, r1, 0x224 +/* 8018DC30 0018AB90 38 01 02 1C */ addi r0, r1, 0x21c +/* 8018DC34 0018AB94 90 61 00 08 */ stw r3, 8(r1) +/* 8018DC38 0018AB98 38 61 05 28 */ addi r3, r1, 0x528 +/* 8018DC3C 0018AB9C 38 A1 02 54 */ addi r5, r1, 0x254 +/* 8018DC40 0018ABA0 38 C1 02 4C */ addi r6, r1, 0x24c +/* 8018DC44 0018ABA4 90 01 00 0C */ stw r0, 0xc(r1) +/* 8018DC48 0018ABA8 38 E1 02 44 */ addi r7, r1, 0x244 +/* 8018DC4C 0018ABAC 39 01 02 3C */ addi r8, r1, 0x23c +/* 8018DC50 0018ABB0 39 21 02 34 */ addi r9, r1, 0x234 +/* 8018DC54 0018ABB4 39 41 02 2C */ addi r10, r1, 0x22c +/* 8018DC58 0018ABB8 38 80 00 14 */ li r4, 0x14 +/* 8018DC5C 0018ABBC 4B EE F6 69 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 8018DC60 0018ABC0 80 BE 09 00 */ lwz r5, 0x900(r30) +/* 8018DC64 0018ABC4 7F A3 EB 78 */ mr r3, r29 +/* 8018DC68 0018ABC8 38 81 05 28 */ addi r4, r1, 0x528 +/* 8018DC6C 0018ABCC 4B FA C6 91 */ bl LoopBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16 +/* 8018DC70 0018ABD0 34 A1 05 2C */ addic. r5, r1, 0x52c +/* 8018DC74 0018ABD4 41 82 00 58 */ beq lbl_8018DCCC +/* 8018DC78 0018ABD8 80 C5 00 00 */ lwz r6, 0(r5) +/* 8018DC7C 0018ABDC 38 60 00 00 */ li r3, 0 +/* 8018DC80 0018ABE0 2C 06 00 00 */ cmpwi r6, 0 +/* 8018DC84 0018ABE4 40 81 00 40 */ ble lbl_8018DCC4 +/* 8018DC88 0018ABE8 2C 06 00 08 */ cmpwi r6, 8 +/* 8018DC8C 0018ABEC 38 86 FF F8 */ addi r4, r6, -8 +/* 8018DC90 0018ABF0 40 81 00 20 */ ble lbl_8018DCB0 +/* 8018DC94 0018ABF4 38 04 00 07 */ addi r0, r4, 7 +/* 8018DC98 0018ABF8 54 00 E8 FE */ srwi r0, r0, 3 +/* 8018DC9C 0018ABFC 7C 09 03 A6 */ mtctr r0 +/* 8018DCA0 0018AC00 2C 04 00 00 */ cmpwi r4, 0 +/* 8018DCA4 0018AC04 40 81 00 0C */ ble lbl_8018DCB0 +lbl_8018DCA8: +/* 8018DCA8 0018AC08 38 63 00 08 */ addi r3, r3, 8 +/* 8018DCAC 0018AC0C 42 00 FF FC */ bdnz lbl_8018DCA8 +lbl_8018DCB0: +/* 8018DCB0 0018AC10 7C 03 30 50 */ subf r0, r3, r6 +/* 8018DCB4 0018AC14 7C 09 03 A6 */ mtctr r0 +/* 8018DCB8 0018AC18 7C 03 30 00 */ cmpw r3, r6 +/* 8018DCBC 0018AC1C 40 80 00 08 */ bge lbl_8018DCC4 +lbl_8018DCC0: +/* 8018DCC0 0018AC20 42 00 00 00 */ bdnz lbl_8018DCC0 +lbl_8018DCC4: +/* 8018DCC4 0018AC24 38 00 00 00 */ li r0, 0 +/* 8018DCC8 0018AC28 90 05 00 00 */ stw r0, 0(r5) +lbl_8018DCCC: +/* 8018DCCC 0018AC2C 80 9D 00 00 */ lwz r4, 0(r29) +/* 8018DCD0 0018AC30 38 61 02 14 */ addi r3, r1, 0x214 +/* 8018DCD4 0018AC34 4B F1 EA 11 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" +/* 8018DCD8 0018AC38 83 43 00 04 */ lwz r26, 4(r3) +/* 8018DCDC 0018AC3C 28 1A 00 00 */ cmplwi r26, 0 +/* 8018DCE0 0018AC40 41 82 00 CC */ beq lbl_8018DDAC +/* 8018DCE4 0018AC44 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8018DCE8 0018AC48 7F C3 F3 78 */ mr r3, r30 +/* 8018DCEC 0018AC4C 7F 44 D3 78 */ mr r4, r26 +/* 8018DCF0 0018AC50 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8018DCF4 0018AC54 B0 01 00 20 */ sth r0, 0x20(r1) +/* 8018DCF8 0018AC58 38 C0 00 28 */ li r6, 0x28 +/* 8018DCFC 0018AC5C 4B EB 61 D5 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +/* 8018DD00 0018AC60 A0 1C 00 08 */ lhz r0, 8(r28) +/* 8018DD04 0018AC64 7F C3 F3 78 */ mr r3, r30 +/* 8018DD08 0018AC68 38 81 00 1C */ addi r4, r1, 0x1c +/* 8018DD0C 0018AC6C B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8018DD10 0018AC70 4B EB E8 95 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8018DD14 0018AC74 7C 64 1B 78 */ mr r4, r3 +/* 8018DD18 0018AC78 38 61 00 34 */ addi r3, r1, 0x34 +/* 8018DD1C 0018AC7C 4B F2 1F 75 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8018DD20 0018AC80 80 63 00 04 */ lwz r3, 4(r3) +/* 8018DD24 0018AC84 28 03 00 00 */ cmplwi r3, 0 +/* 8018DD28 0018AC88 41 82 00 84 */ beq lbl_8018DDAC +/* 8018DD2C 0018AC8C C0 23 00 60 */ lfs f1, 0x60(r3) +/* 8018DD30 0018AC90 C0 1A 00 60 */ lfs f0, 0x60(r26) +/* 8018DD34 0018AC94 C0 83 00 40 */ lfs f4, 0x40(r3) +/* 8018DD38 0018AC98 C0 7A 00 40 */ lfs f3, 0x40(r26) +/* 8018DD3C 0018AC9C EC A1 00 28 */ fsubs f5, f1, f0 +/* 8018DD40 0018ACA0 C0 02 A4 70 */ lfs f0, lbl_805AC190@sda21(r2) +/* 8018DD44 0018ACA4 C0 43 00 50 */ lfs f2, 0x50(r3) +/* 8018DD48 0018ACA8 EF C4 18 28 */ fsubs f30, f4, f3 +/* 8018DD4C 0018ACAC C0 3A 00 50 */ lfs f1, 0x50(r26) +/* 8018DD50 0018ACB0 FC 05 00 40 */ fcmpo cr0, f5, f0 +/* 8018DD54 0018ACB4 EF E2 08 28 */ fsubs f31, f2, f1 +/* 8018DD58 0018ACB8 41 80 00 54 */ blt lbl_8018DDAC +/* 8018DD5C 0018ACBC C0 1A 01 58 */ lfs f0, 0x158(r26) +/* 8018DD60 0018ACC0 C0 3A 00 E8 */ lfs f1, 0xe8(r26) +/* 8018DD64 0018ACC4 FC 40 00 50 */ fneg f2, f0 +/* 8018DD68 0018ACC8 C0 02 A4 74 */ lfs f0, lbl_805AC194@sda21(r2) +/* 8018DD6C 0018ACCC EF A2 08 24 */ fdivs f29, f2, f1 +/* 8018DD70 0018ACD0 EC 00 07 72 */ fmuls f0, f0, f29 +/* 8018DD74 0018ACD4 EC 20 01 72 */ fmuls f1, f0, f5 +/* 8018DD78 0018ACD8 48 18 77 89 */ bl SqrtF__5CMathFf +/* 8018DD7C 0018ACDC EC 01 E8 24 */ fdivs f0, f1, f29 +/* 8018DD80 0018ACE0 C0 42 A4 6C */ lfs f2, lbl_805AC18C@sda21(r2) +/* 8018DD84 0018ACE4 88 1C 00 18 */ lbz r0, 0x18(r28) +/* 8018DD88 0018ACE8 38 60 00 00 */ li r3, 0 +/* 8018DD8C 0018ACEC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8018DD90 0018ACF0 98 1C 00 18 */ stb r0, 0x18(r28) +/* 8018DD94 0018ACF4 EC 02 00 24 */ fdivs f0, f2, f0 +/* 8018DD98 0018ACF8 EC 40 07 B2 */ fmuls f2, f0, f30 +/* 8018DD9C 0018ACFC EC 00 07 F2 */ fmuls f0, f0, f31 +/* 8018DDA0 0018AD00 D0 5C 00 0C */ stfs f2, 0xc(r28) +/* 8018DDA4 0018AD04 D0 1C 00 10 */ stfs f0, 0x10(r28) +/* 8018DDA8 0018AD08 D0 3C 00 14 */ stfs f1, 0x14(r28) +lbl_8018DDAC: +/* 8018DDAC 0018AD0C 34 A1 05 74 */ addic. r5, r1, 0x574 +/* 8018DDB0 0018AD10 41 82 0A BC */ beq lbl_8018E86C +/* 8018DDB4 0018AD14 80 C5 00 00 */ lwz r6, 0(r5) +/* 8018DDB8 0018AD18 38 60 00 00 */ li r3, 0 +/* 8018DDBC 0018AD1C 2C 06 00 00 */ cmpwi r6, 0 +/* 8018DDC0 0018AD20 40 81 00 40 */ ble lbl_8018DE00 +/* 8018DDC4 0018AD24 2C 06 00 08 */ cmpwi r6, 8 +/* 8018DDC8 0018AD28 38 86 FF F8 */ addi r4, r6, -8 +/* 8018DDCC 0018AD2C 40 81 00 20 */ ble lbl_8018DDEC +/* 8018DDD0 0018AD30 38 04 00 07 */ addi r0, r4, 7 +/* 8018DDD4 0018AD34 54 00 E8 FE */ srwi r0, r0, 3 +/* 8018DDD8 0018AD38 7C 09 03 A6 */ mtctr r0 +/* 8018DDDC 0018AD3C 2C 04 00 00 */ cmpwi r4, 0 +/* 8018DDE0 0018AD40 40 81 00 0C */ ble lbl_8018DDEC +lbl_8018DDE4: +/* 8018DDE4 0018AD44 38 63 00 08 */ addi r3, r3, 8 +/* 8018DDE8 0018AD48 42 00 FF FC */ bdnz lbl_8018DDE4 +lbl_8018DDEC: +/* 8018DDEC 0018AD4C 7C 03 30 50 */ subf r0, r3, r6 +/* 8018DDF0 0018AD50 7C 09 03 A6 */ mtctr r0 +/* 8018DDF4 0018AD54 7C 03 30 00 */ cmpw r3, r6 +/* 8018DDF8 0018AD58 40 80 00 08 */ bge lbl_8018DE00 +lbl_8018DDFC: +/* 8018DDFC 0018AD5C 42 00 00 00 */ bdnz lbl_8018DDFC +lbl_8018DE00: +/* 8018DE00 0018AD60 38 00 00 00 */ li r0, 0 +/* 8018DE04 0018AD64 90 05 00 00 */ stw r0, 0(r5) +/* 8018DE08 0018AD68 48 00 0A 64 */ b lbl_8018E86C +/* 8018DE0C 0018AD6C 7F 83 E3 78 */ mr r3, r28 +/* 8018DE10 0018AD70 7F A4 EB 78 */ mr r4, r29 +/* 8018DE14 0018AD74 48 00 0C A1 */ bl SetLaunchVelocity__11CBSWallHangFR15CBodyController +/* 8018DE18 0018AD78 88 1D 03 00 */ lbz r0, 0x300(r29) +/* 8018DE1C 0018AD7C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8018DE20 0018AD80 41 82 00 F4 */ beq lbl_8018DF14 +/* 8018DE24 0018AD84 38 00 00 02 */ li r0, 2 +/* 8018DE28 0018AD88 38 61 01 D4 */ addi r3, r1, 0x1d4 +/* 8018DE2C 0018AD8C 90 1C 00 04 */ stw r0, 4(r28) +/* 8018DE30 0018AD90 48 15 52 4D */ bl NoParameter__12CPASAnimParmFv +/* 8018DE34 0018AD94 38 61 01 DC */ addi r3, r1, 0x1dc +/* 8018DE38 0018AD98 48 15 52 45 */ bl NoParameter__12CPASAnimParmFv +/* 8018DE3C 0018AD9C 38 61 01 E4 */ addi r3, r1, 0x1e4 +/* 8018DE40 0018ADA0 48 15 52 3D */ bl NoParameter__12CPASAnimParmFv +/* 8018DE44 0018ADA4 38 61 01 EC */ addi r3, r1, 0x1ec +/* 8018DE48 0018ADA8 48 15 52 35 */ bl NoParameter__12CPASAnimParmFv +/* 8018DE4C 0018ADAC 38 61 01 F4 */ addi r3, r1, 0x1f4 +/* 8018DE50 0018ADB0 48 15 52 2D */ bl NoParameter__12CPASAnimParmFv +/* 8018DE54 0018ADB4 38 61 01 FC */ addi r3, r1, 0x1fc +/* 8018DE58 0018ADB8 48 15 52 25 */ bl NoParameter__12CPASAnimParmFv +/* 8018DE5C 0018ADBC 38 61 02 04 */ addi r3, r1, 0x204 +/* 8018DE60 0018ADC0 48 15 52 1D */ bl NoParameter__12CPASAnimParmFv +/* 8018DE64 0018ADC4 80 9C 00 04 */ lwz r4, 4(r28) +/* 8018DE68 0018ADC8 38 61 02 0C */ addi r3, r1, 0x20c +/* 8018DE6C 0018ADCC 48 15 51 19 */ bl FromEnum__12CPASAnimParmFi +/* 8018DE70 0018ADD0 38 61 01 DC */ addi r3, r1, 0x1dc +/* 8018DE74 0018ADD4 38 01 01 D4 */ addi r0, r1, 0x1d4 +/* 8018DE78 0018ADD8 90 61 00 08 */ stw r3, 8(r1) +/* 8018DE7C 0018ADDC 38 61 04 E0 */ addi r3, r1, 0x4e0 +/* 8018DE80 0018ADE0 38 A1 02 0C */ addi r5, r1, 0x20c +/* 8018DE84 0018ADE4 38 C1 02 04 */ addi r6, r1, 0x204 +/* 8018DE88 0018ADE8 90 01 00 0C */ stw r0, 0xc(r1) +/* 8018DE8C 0018ADEC 38 E1 01 FC */ addi r7, r1, 0x1fc +/* 8018DE90 0018ADF0 39 01 01 F4 */ addi r8, r1, 0x1f4 +/* 8018DE94 0018ADF4 39 21 01 EC */ addi r9, r1, 0x1ec +/* 8018DE98 0018ADF8 39 41 01 E4 */ addi r10, r1, 0x1e4 +/* 8018DE9C 0018ADFC 38 80 00 14 */ li r4, 0x14 +/* 8018DEA0 0018AE00 4B EE F4 25 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 8018DEA4 0018AE04 80 BE 09 00 */ lwz r5, 0x900(r30) +/* 8018DEA8 0018AE08 7F A3 EB 78 */ mr r3, r29 +/* 8018DEAC 0018AE0C 38 81 04 E0 */ addi r4, r1, 0x4e0 +/* 8018DEB0 0018AE10 4B FA C4 4D */ bl LoopBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16 +/* 8018DEB4 0018AE14 34 A1 04 E4 */ addic. r5, r1, 0x4e4 +/* 8018DEB8 0018AE18 41 82 09 B4 */ beq lbl_8018E86C +/* 8018DEBC 0018AE1C 80 C5 00 00 */ lwz r6, 0(r5) +/* 8018DEC0 0018AE20 38 60 00 00 */ li r3, 0 +/* 8018DEC4 0018AE24 2C 06 00 00 */ cmpwi r6, 0 +/* 8018DEC8 0018AE28 40 81 00 40 */ ble lbl_8018DF08 +/* 8018DECC 0018AE2C 2C 06 00 08 */ cmpwi r6, 8 +/* 8018DED0 0018AE30 38 86 FF F8 */ addi r4, r6, -8 +/* 8018DED4 0018AE34 40 81 00 20 */ ble lbl_8018DEF4 +/* 8018DED8 0018AE38 38 04 00 07 */ addi r0, r4, 7 +/* 8018DEDC 0018AE3C 54 00 E8 FE */ srwi r0, r0, 3 +/* 8018DEE0 0018AE40 7C 09 03 A6 */ mtctr r0 +/* 8018DEE4 0018AE44 2C 04 00 00 */ cmpwi r4, 0 +/* 8018DEE8 0018AE48 40 81 00 0C */ ble lbl_8018DEF4 +lbl_8018DEEC: +/* 8018DEEC 0018AE4C 38 63 00 08 */ addi r3, r3, 8 +/* 8018DEF0 0018AE50 42 00 FF FC */ bdnz lbl_8018DEEC +lbl_8018DEF4: +/* 8018DEF4 0018AE54 7C 03 30 50 */ subf r0, r3, r6 +/* 8018DEF8 0018AE58 7C 09 03 A6 */ mtctr r0 +/* 8018DEFC 0018AE5C 7C 03 30 00 */ cmpw r3, r6 +/* 8018DF00 0018AE60 40 80 00 08 */ bge lbl_8018DF08 +lbl_8018DF04: +/* 8018DF04 0018AE64 42 00 00 00 */ bdnz lbl_8018DF04 +lbl_8018DF08: +/* 8018DF08 0018AE68 38 00 00 00 */ li r0, 0 +/* 8018DF0C 0018AE6C 90 05 00 00 */ stw r0, 0(r5) +/* 8018DF10 0018AE70 48 00 09 5C */ b lbl_8018E86C +lbl_8018DF14: +/* 8018DF14 0018AE74 7F 83 E3 78 */ mr r3, r28 +/* 8018DF18 0018AE78 7F A4 EB 78 */ mr r4, r29 +/* 8018DF1C 0018AE7C 7F C5 F3 78 */ mr r5, r30 +/* 8018DF20 0018AE80 4B FF F8 35 */ bl CheckForWall__11CBSWallHangFR15CBodyControllerR13CStateManager +/* 8018DF24 0018AE84 48 00 09 48 */ b lbl_8018E86C +/* 8018DF28 0018AE88 7F 83 E3 78 */ mr r3, r28 +/* 8018DF2C 0018AE8C 7F A4 EB 78 */ mr r4, r29 +/* 8018DF30 0018AE90 48 00 0B 85 */ bl SetLaunchVelocity__11CBSWallHangFR15CBodyController +/* 8018DF34 0018AE94 7F 83 E3 78 */ mr r3, r28 +/* 8018DF38 0018AE98 7F A4 EB 78 */ mr r4, r29 +/* 8018DF3C 0018AE9C 7F C5 F3 78 */ mr r5, r30 +/* 8018DF40 0018AEA0 4B FF F8 15 */ bl CheckForWall__11CBSWallHangFR15CBodyControllerR13CStateManager +/* 8018DF44 0018AEA4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8018DF48 0018AEA8 40 82 09 24 */ bne lbl_8018E86C +/* 8018DF4C 0018AEAC 7F 83 E3 78 */ mr r3, r28 +/* 8018DF50 0018AEB0 7F A4 EB 78 */ mr r4, r29 +/* 8018DF54 0018AEB4 7F C5 F3 78 */ mr r5, r30 +/* 8018DF58 0018AEB8 4B FF F6 79 */ bl CheckForLand__11CBSWallHangFR15CBodyControllerR13CStateManager +/* 8018DF5C 0018AEBC 48 00 09 10 */ b lbl_8018E86C +/* 8018DF60 0018AEC0 88 1D 03 00 */ lbz r0, 0x300(r29) +/* 8018DF64 0018AEC4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8018DF68 0018AEC8 41 82 00 F4 */ beq lbl_8018E05C +/* 8018DF6C 0018AECC 38 00 00 04 */ li r0, 4 +/* 8018DF70 0018AED0 38 61 01 94 */ addi r3, r1, 0x194 +/* 8018DF74 0018AED4 90 1C 00 04 */ stw r0, 4(r28) +/* 8018DF78 0018AED8 48 15 51 05 */ bl NoParameter__12CPASAnimParmFv +/* 8018DF7C 0018AEDC 38 61 01 9C */ addi r3, r1, 0x19c +/* 8018DF80 0018AEE0 48 15 50 FD */ bl NoParameter__12CPASAnimParmFv +/* 8018DF84 0018AEE4 38 61 01 A4 */ addi r3, r1, 0x1a4 +/* 8018DF88 0018AEE8 48 15 50 F5 */ bl NoParameter__12CPASAnimParmFv +/* 8018DF8C 0018AEEC 38 61 01 AC */ addi r3, r1, 0x1ac +/* 8018DF90 0018AEF0 48 15 50 ED */ bl NoParameter__12CPASAnimParmFv +/* 8018DF94 0018AEF4 38 61 01 B4 */ addi r3, r1, 0x1b4 +/* 8018DF98 0018AEF8 48 15 50 E5 */ bl NoParameter__12CPASAnimParmFv +/* 8018DF9C 0018AEFC 38 61 01 BC */ addi r3, r1, 0x1bc +/* 8018DFA0 0018AF00 48 15 50 DD */ bl NoParameter__12CPASAnimParmFv +/* 8018DFA4 0018AF04 38 61 01 C4 */ addi r3, r1, 0x1c4 +/* 8018DFA8 0018AF08 48 15 50 D5 */ bl NoParameter__12CPASAnimParmFv +/* 8018DFAC 0018AF0C 80 9C 00 04 */ lwz r4, 4(r28) +/* 8018DFB0 0018AF10 38 61 01 CC */ addi r3, r1, 0x1cc +/* 8018DFB4 0018AF14 48 15 4F D1 */ bl FromEnum__12CPASAnimParmFi +/* 8018DFB8 0018AF18 38 61 01 9C */ addi r3, r1, 0x19c +/* 8018DFBC 0018AF1C 38 01 01 94 */ addi r0, r1, 0x194 +/* 8018DFC0 0018AF20 90 61 00 08 */ stw r3, 8(r1) +/* 8018DFC4 0018AF24 38 61 04 98 */ addi r3, r1, 0x498 +/* 8018DFC8 0018AF28 38 A1 01 CC */ addi r5, r1, 0x1cc +/* 8018DFCC 0018AF2C 38 C1 01 C4 */ addi r6, r1, 0x1c4 +/* 8018DFD0 0018AF30 90 01 00 0C */ stw r0, 0xc(r1) +/* 8018DFD4 0018AF34 38 E1 01 BC */ addi r7, r1, 0x1bc +/* 8018DFD8 0018AF38 39 01 01 B4 */ addi r8, r1, 0x1b4 +/* 8018DFDC 0018AF3C 39 21 01 AC */ addi r9, r1, 0x1ac +/* 8018DFE0 0018AF40 39 41 01 A4 */ addi r10, r1, 0x1a4 +/* 8018DFE4 0018AF44 38 80 00 14 */ li r4, 0x14 +/* 8018DFE8 0018AF48 4B EE F2 DD */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 8018DFEC 0018AF4C 80 BE 09 00 */ lwz r5, 0x900(r30) +/* 8018DFF0 0018AF50 7F A3 EB 78 */ mr r3, r29 +/* 8018DFF4 0018AF54 38 81 04 98 */ addi r4, r1, 0x498 +/* 8018DFF8 0018AF58 4B FA C3 05 */ bl LoopBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16 +/* 8018DFFC 0018AF5C 34 A1 04 9C */ addic. r5, r1, 0x49c +/* 8018E000 0018AF60 41 82 08 6C */ beq lbl_8018E86C +/* 8018E004 0018AF64 80 C5 00 00 */ lwz r6, 0(r5) +/* 8018E008 0018AF68 38 60 00 00 */ li r3, 0 +/* 8018E00C 0018AF6C 2C 06 00 00 */ cmpwi r6, 0 +/* 8018E010 0018AF70 40 81 00 40 */ ble lbl_8018E050 +/* 8018E014 0018AF74 2C 06 00 08 */ cmpwi r6, 8 +/* 8018E018 0018AF78 38 86 FF F8 */ addi r4, r6, -8 +/* 8018E01C 0018AF7C 40 81 00 20 */ ble lbl_8018E03C +/* 8018E020 0018AF80 38 04 00 07 */ addi r0, r4, 7 +/* 8018E024 0018AF84 54 00 E8 FE */ srwi r0, r0, 3 +/* 8018E028 0018AF88 7C 09 03 A6 */ mtctr r0 +/* 8018E02C 0018AF8C 2C 04 00 00 */ cmpwi r4, 0 +/* 8018E030 0018AF90 40 81 00 0C */ ble lbl_8018E03C +lbl_8018E034: +/* 8018E034 0018AF94 38 63 00 08 */ addi r3, r3, 8 +/* 8018E038 0018AF98 42 00 FF FC */ bdnz lbl_8018E034 +lbl_8018E03C: +/* 8018E03C 0018AF9C 7C 03 30 50 */ subf r0, r3, r6 +/* 8018E040 0018AFA0 7C 09 03 A6 */ mtctr r0 +/* 8018E044 0018AFA4 7C 03 30 00 */ cmpw r3, r6 +/* 8018E048 0018AFA8 40 80 00 08 */ bge lbl_8018E050 +lbl_8018E04C: +/* 8018E04C 0018AFAC 42 00 00 00 */ bdnz lbl_8018E04C +lbl_8018E050: +/* 8018E050 0018AFB0 38 00 00 00 */ li r0, 0 +/* 8018E054 0018AFB4 90 05 00 00 */ stw r0, 0(r5) +/* 8018E058 0018AFB8 48 00 08 14 */ b lbl_8018E86C +lbl_8018E05C: +/* 8018E05C 0018AFBC 38 7D 00 04 */ addi r3, r29, 4 +/* 8018E060 0018AFC0 38 80 00 0A */ li r4, 0xa +/* 8018E064 0018AFC4 4B FA 33 ED */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8018E068 0018AFC8 28 03 00 00 */ cmplwi r3, 0 +/* 8018E06C 0018AFCC 41 82 08 00 */ beq lbl_8018E86C +/* 8018E070 0018AFD0 88 1C 00 18 */ lbz r0, 0x18(r28) +/* 8018E074 0018AFD4 38 60 00 01 */ li r3, 1 +/* 8018E078 0018AFD8 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8018E07C 0018AFDC 98 1C 00 18 */ stb r0, 0x18(r28) +/* 8018E080 0018AFE0 48 00 07 EC */ b lbl_8018E86C +/* 8018E084 0018AFE4 3B 7D 00 04 */ addi r27, r29, 4 +/* 8018E088 0018AFE8 C0 22 A4 70 */ lfs f1, lbl_805AC190@sda21(r2) +/* 8018E08C 0018AFEC C0 1D 00 1C */ lfs f0, 0x1c(r29) +/* 8018E090 0018AFF0 38 00 00 00 */ li r0, 0 +/* 8018E094 0018AFF4 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 8018E098 0018AFF8 40 82 00 1C */ bne lbl_8018E0B4 +/* 8018E09C 0018AFFC C0 1B 00 1C */ lfs f0, 0x1c(r27) +/* 8018E0A0 0018B000 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 8018E0A4 0018B004 40 82 00 10 */ bne lbl_8018E0B4 +/* 8018E0A8 0018B008 C0 1B 00 20 */ lfs f0, 0x20(r27) +/* 8018E0AC 0018B00C FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 8018E0B0 0018B010 41 82 00 08 */ beq lbl_8018E0B8 +lbl_8018E0B4: +/* 8018E0B4 0018B014 38 00 00 01 */ li r0, 1 +lbl_8018E0B8: +/* 8018E0B8 0018B018 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8018E0BC 0018B01C 41 82 00 F4 */ beq lbl_8018E1B0 +/* 8018E0C0 0018B020 A0 1C 00 08 */ lhz r0, 8(r28) +/* 8018E0C4 0018B024 7F C3 F3 78 */ mr r3, r30 +/* 8018E0C8 0018B028 38 81 00 18 */ addi r4, r1, 0x18 +/* 8018E0CC 0018B02C B0 01 00 18 */ sth r0, 0x18(r1) +/* 8018E0D0 0018B030 4B EB E4 D5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8018E0D4 0018B034 7C 64 1B 78 */ mr r4, r3 +/* 8018E0D8 0018B038 38 61 00 2C */ addi r3, r1, 0x2c +/* 8018E0DC 0018B03C 4B F2 1B B5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8018E0E0 0018B040 83 43 00 04 */ lwz r26, 4(r3) +/* 8018E0E4 0018B044 28 1A 00 00 */ cmplwi r26, 0 +/* 8018E0E8 0018B048 41 82 00 C8 */ beq lbl_8018E1B0 +/* 8018E0EC 0018B04C 80 9D 00 00 */ lwz r4, 0(r29) +/* 8018E0F0 0018B050 38 61 01 8C */ addi r3, r1, 0x18c +/* 8018E0F4 0018B054 4B F2 1B 9D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8018E0F8 0018B058 83 23 00 04 */ lwz r25, 4(r3) +/* 8018E0FC 0018B05C 28 19 00 00 */ cmplwi r25, 0 +/* 8018E100 0018B060 41 82 00 B0 */ beq lbl_8018E1B0 +/* 8018E104 0018B064 38 61 02 D4 */ addi r3, r1, 0x2d4 +/* 8018E108 0018B068 38 9B 00 18 */ addi r4, r27, 0x18 +/* 8018E10C 0018B06C 48 18 67 45 */ bl AsNormalized__9CVector3fCFv +/* 8018E110 0018B070 C0 BA 00 48 */ lfs f5, 0x48(r26) +/* 8018E114 0018B074 C0 F9 00 48 */ lfs f7, 0x48(r25) +/* 8018E118 0018B078 C0 9A 00 38 */ lfs f4, 0x38(r26) +/* 8018E11C 0018B07C C1 21 02 D8 */ lfs f9, 0x2d8(r1) +/* 8018E120 0018B080 EC 27 01 72 */ fmuls f1, f7, f5 +/* 8018E124 0018B084 C0 79 00 38 */ lfs f3, 0x38(r25) +/* 8018E128 0018B088 EC 09 01 72 */ fmuls f0, f9, f5 +/* 8018E12C 0018B08C C0 DA 00 58 */ lfs f6, 0x58(r26) +/* 8018E130 0018B090 C1 61 02 D4 */ lfs f11, 0x2d4(r1) +/* 8018E134 0018B094 EC 43 09 3A */ fmadds f2, f3, f4, f1 +/* 8018E138 0018B098 C1 19 00 58 */ lfs f8, 0x58(r25) +/* 8018E13C 0018B09C EC 2B 01 3A */ fmadds f1, f11, f4, f0 +/* 8018E140 0018B0A0 C1 41 02 DC */ lfs f10, 0x2dc(r1) +/* 8018E144 0018B0A4 EC 48 11 BA */ fmadds f2, f8, f6, f2 +/* 8018E148 0018B0A8 C0 02 A4 78 */ lfs f0, lbl_805AC198@sda21(r2) +/* 8018E14C 0018B0AC EC 2A 09 BA */ fmadds f1, f10, f6, f1 +/* 8018E150 0018B0B0 D0 81 02 BC */ stfs f4, 0x2bc(r1) +/* 8018E154 0018B0B4 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8018E158 0018B0B8 D0 A1 02 C0 */ stfs f5, 0x2c0(r1) +/* 8018E15C 0018B0BC D0 C1 02 C4 */ stfs f6, 0x2c4(r1) +/* 8018E160 0018B0C0 D0 61 02 C8 */ stfs f3, 0x2c8(r1) +/* 8018E164 0018B0C4 D0 E1 02 CC */ stfs f7, 0x2cc(r1) +/* 8018E168 0018B0C8 D1 01 02 D0 */ stfs f8, 0x2d0(r1) +/* 8018E16C 0018B0CC D0 81 02 B0 */ stfs f4, 0x2b0(r1) +/* 8018E170 0018B0D0 D0 A1 02 B4 */ stfs f5, 0x2b4(r1) +/* 8018E174 0018B0D4 D0 C1 02 B8 */ stfs f6, 0x2b8(r1) +/* 8018E178 0018B0D8 41 80 00 10 */ blt lbl_8018E188 +/* 8018E17C 0018B0DC C0 02 A4 7C */ lfs f0, lbl_805AC19C@sda21(r2) +/* 8018E180 0018B0E0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018E184 0018B0E4 40 81 00 2C */ ble lbl_8018E1B0 +lbl_8018E188: +/* 8018E188 0018B0E8 FC 60 58 50 */ fneg f3, f11 +/* 8018E18C 0018B0EC 7F A3 EB 78 */ mr r3, r29 +/* 8018E190 0018B0F0 FC 40 48 50 */ fneg f2, f9 +/* 8018E194 0018B0F4 38 81 02 A4 */ addi r4, r1, 0x2a4 +/* 8018E198 0018B0F8 FC 00 50 50 */ fneg f0, f10 +/* 8018E19C 0018B0FC FC 20 F8 90 */ fmr f1, f31 +/* 8018E1A0 0018B100 D0 61 02 A4 */ stfs f3, 0x2a4(r1) +/* 8018E1A4 0018B104 D0 41 02 A8 */ stfs f2, 0x2a8(r1) +/* 8018E1A8 0018B108 D0 01 02 AC */ stfs f0, 0x2ac(r1) +/* 8018E1AC 0018B10C 4B FA C4 F9 */ bl FaceDirection__15CBodyControllerFRC9CVector3ff +lbl_8018E1B0: +/* 8018E1B0 0018B110 7F 63 DB 78 */ mr r3, r27 +/* 8018E1B4 0018B114 38 80 00 0A */ li r4, 0xa +/* 8018E1B8 0018B118 4B FA 32 99 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8018E1BC 0018B11C 28 03 00 00 */ cmplwi r3, 0 +/* 8018E1C0 0018B120 40 82 00 10 */ bne lbl_8018E1D0 +/* 8018E1C4 0018B124 88 1C 00 18 */ lbz r0, 0x18(r28) +/* 8018E1C8 0018B128 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8018E1CC 0018B12C 41 82 00 F0 */ beq lbl_8018E2BC +lbl_8018E1D0: +/* 8018E1D0 0018B130 38 00 00 06 */ li r0, 6 +/* 8018E1D4 0018B134 38 61 01 4C */ addi r3, r1, 0x14c +/* 8018E1D8 0018B138 90 1C 00 04 */ stw r0, 4(r28) +/* 8018E1DC 0018B13C 48 15 4E A1 */ bl NoParameter__12CPASAnimParmFv +/* 8018E1E0 0018B140 38 61 01 54 */ addi r3, r1, 0x154 +/* 8018E1E4 0018B144 48 15 4E 99 */ bl NoParameter__12CPASAnimParmFv +/* 8018E1E8 0018B148 38 61 01 5C */ addi r3, r1, 0x15c +/* 8018E1EC 0018B14C 48 15 4E 91 */ bl NoParameter__12CPASAnimParmFv +/* 8018E1F0 0018B150 38 61 01 64 */ addi r3, r1, 0x164 +/* 8018E1F4 0018B154 48 15 4E 89 */ bl NoParameter__12CPASAnimParmFv +/* 8018E1F8 0018B158 38 61 01 6C */ addi r3, r1, 0x16c +/* 8018E1FC 0018B15C 48 15 4E 81 */ bl NoParameter__12CPASAnimParmFv +/* 8018E200 0018B160 38 61 01 74 */ addi r3, r1, 0x174 +/* 8018E204 0018B164 48 15 4E 79 */ bl NoParameter__12CPASAnimParmFv +/* 8018E208 0018B168 38 61 01 7C */ addi r3, r1, 0x17c +/* 8018E20C 0018B16C 48 15 4E 71 */ bl NoParameter__12CPASAnimParmFv +/* 8018E210 0018B170 80 9C 00 04 */ lwz r4, 4(r28) +/* 8018E214 0018B174 38 61 01 84 */ addi r3, r1, 0x184 +/* 8018E218 0018B178 48 15 4D 6D */ bl FromEnum__12CPASAnimParmFi +/* 8018E21C 0018B17C 38 61 01 54 */ addi r3, r1, 0x154 +/* 8018E220 0018B180 38 01 01 4C */ addi r0, r1, 0x14c +/* 8018E224 0018B184 90 61 00 08 */ stw r3, 8(r1) +/* 8018E228 0018B188 38 61 04 50 */ addi r3, r1, 0x450 +/* 8018E22C 0018B18C 38 A1 01 84 */ addi r5, r1, 0x184 +/* 8018E230 0018B190 38 C1 01 7C */ addi r6, r1, 0x17c +/* 8018E234 0018B194 90 01 00 0C */ stw r0, 0xc(r1) +/* 8018E238 0018B198 38 E1 01 74 */ addi r7, r1, 0x174 +/* 8018E23C 0018B19C 39 01 01 6C */ addi r8, r1, 0x16c +/* 8018E240 0018B1A0 39 21 01 64 */ addi r9, r1, 0x164 +/* 8018E244 0018B1A4 39 41 01 5C */ addi r10, r1, 0x15c +/* 8018E248 0018B1A8 38 80 00 14 */ li r4, 0x14 +/* 8018E24C 0018B1AC 4B EE F0 79 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 8018E250 0018B1B0 80 BE 09 00 */ lwz r5, 0x900(r30) +/* 8018E254 0018B1B4 7F A3 EB 78 */ mr r3, r29 +/* 8018E258 0018B1B8 38 81 04 50 */ addi r4, r1, 0x450 +/* 8018E25C 0018B1BC 4B FA C1 4D */ bl PlayBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16 +/* 8018E260 0018B1C0 34 A1 04 54 */ addic. r5, r1, 0x454 +/* 8018E264 0018B1C4 41 82 00 58 */ beq lbl_8018E2BC +/* 8018E268 0018B1C8 80 C5 00 00 */ lwz r6, 0(r5) +/* 8018E26C 0018B1CC 38 60 00 00 */ li r3, 0 +/* 8018E270 0018B1D0 2C 06 00 00 */ cmpwi r6, 0 +/* 8018E274 0018B1D4 40 81 00 40 */ ble lbl_8018E2B4 +/* 8018E278 0018B1D8 2C 06 00 08 */ cmpwi r6, 8 +/* 8018E27C 0018B1DC 38 86 FF F8 */ addi r4, r6, -8 +/* 8018E280 0018B1E0 40 81 00 20 */ ble lbl_8018E2A0 +/* 8018E284 0018B1E4 38 04 00 07 */ addi r0, r4, 7 +/* 8018E288 0018B1E8 54 00 E8 FE */ srwi r0, r0, 3 +/* 8018E28C 0018B1EC 7C 09 03 A6 */ mtctr r0 +/* 8018E290 0018B1F0 2C 04 00 00 */ cmpwi r4, 0 +/* 8018E294 0018B1F4 40 81 00 0C */ ble lbl_8018E2A0 +lbl_8018E298: +/* 8018E298 0018B1F8 38 63 00 08 */ addi r3, r3, 8 +/* 8018E29C 0018B1FC 42 00 FF FC */ bdnz lbl_8018E298 +lbl_8018E2A0: +/* 8018E2A0 0018B200 7C 03 30 50 */ subf r0, r3, r6 +/* 8018E2A4 0018B204 7C 09 03 A6 */ mtctr r0 +/* 8018E2A8 0018B208 7C 03 30 00 */ cmpw r3, r6 +/* 8018E2AC 0018B20C 40 80 00 08 */ bge lbl_8018E2B4 +lbl_8018E2B0: +/* 8018E2B0 0018B210 42 00 00 00 */ bdnz lbl_8018E2B0 +lbl_8018E2B4: +/* 8018E2B4 0018B214 38 00 00 00 */ li r0, 0 +/* 8018E2B8 0018B218 90 05 00 00 */ stw r0, 0(r5) +lbl_8018E2BC: +/* 8018E2BC 0018B21C 7F 83 E3 78 */ mr r3, r28 +/* 8018E2C0 0018B220 7F A4 EB 78 */ mr r4, r29 +/* 8018E2C4 0018B224 4B FF F2 B9 */ bl FixInPlace__11CBSWallHangFR15CBodyController +/* 8018E2C8 0018B228 48 00 05 A4 */ b lbl_8018E86C +/* 8018E2CC 0018B22C 88 1D 03 00 */ lbz r0, 0x300(r29) +/* 8018E2D0 0018B230 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8018E2D4 0018B234 41 82 00 F0 */ beq lbl_8018E3C4 +/* 8018E2D8 0018B238 38 00 00 04 */ li r0, 4 +/* 8018E2DC 0018B23C 38 61 01 0C */ addi r3, r1, 0x10c +/* 8018E2E0 0018B240 90 1C 00 04 */ stw r0, 4(r28) +/* 8018E2E4 0018B244 48 15 4D 99 */ bl NoParameter__12CPASAnimParmFv +/* 8018E2E8 0018B248 38 61 01 14 */ addi r3, r1, 0x114 +/* 8018E2EC 0018B24C 48 15 4D 91 */ bl NoParameter__12CPASAnimParmFv +/* 8018E2F0 0018B250 38 61 01 1C */ addi r3, r1, 0x11c +/* 8018E2F4 0018B254 48 15 4D 89 */ bl NoParameter__12CPASAnimParmFv +/* 8018E2F8 0018B258 38 61 01 24 */ addi r3, r1, 0x124 +/* 8018E2FC 0018B25C 48 15 4D 81 */ bl NoParameter__12CPASAnimParmFv +/* 8018E300 0018B260 38 61 01 2C */ addi r3, r1, 0x12c +/* 8018E304 0018B264 48 15 4D 79 */ bl NoParameter__12CPASAnimParmFv +/* 8018E308 0018B268 38 61 01 34 */ addi r3, r1, 0x134 +/* 8018E30C 0018B26C 48 15 4D 71 */ bl NoParameter__12CPASAnimParmFv +/* 8018E310 0018B270 38 61 01 3C */ addi r3, r1, 0x13c +/* 8018E314 0018B274 48 15 4D 69 */ bl NoParameter__12CPASAnimParmFv +/* 8018E318 0018B278 80 9C 00 04 */ lwz r4, 4(r28) +/* 8018E31C 0018B27C 38 61 01 44 */ addi r3, r1, 0x144 +/* 8018E320 0018B280 48 15 4C 65 */ bl FromEnum__12CPASAnimParmFi +/* 8018E324 0018B284 38 61 01 14 */ addi r3, r1, 0x114 +/* 8018E328 0018B288 38 01 01 0C */ addi r0, r1, 0x10c +/* 8018E32C 0018B28C 90 61 00 08 */ stw r3, 8(r1) +/* 8018E330 0018B290 38 61 04 08 */ addi r3, r1, 0x408 +/* 8018E334 0018B294 38 A1 01 44 */ addi r5, r1, 0x144 +/* 8018E338 0018B298 38 C1 01 3C */ addi r6, r1, 0x13c +/* 8018E33C 0018B29C 90 01 00 0C */ stw r0, 0xc(r1) +/* 8018E340 0018B2A0 38 E1 01 34 */ addi r7, r1, 0x134 +/* 8018E344 0018B2A4 39 01 01 2C */ addi r8, r1, 0x12c +/* 8018E348 0018B2A8 39 21 01 24 */ addi r9, r1, 0x124 +/* 8018E34C 0018B2AC 39 41 01 1C */ addi r10, r1, 0x11c +/* 8018E350 0018B2B0 38 80 00 14 */ li r4, 0x14 +/* 8018E354 0018B2B4 4B EE EF 71 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 8018E358 0018B2B8 80 BE 09 00 */ lwz r5, 0x900(r30) +/* 8018E35C 0018B2BC 7F A3 EB 78 */ mr r3, r29 +/* 8018E360 0018B2C0 38 81 04 08 */ addi r4, r1, 0x408 +/* 8018E364 0018B2C4 4B FA BF 99 */ bl LoopBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16 +/* 8018E368 0018B2C8 34 A1 04 0C */ addic. r5, r1, 0x40c +/* 8018E36C 0018B2CC 41 82 00 58 */ beq lbl_8018E3C4 +/* 8018E370 0018B2D0 80 C5 00 00 */ lwz r6, 0(r5) +/* 8018E374 0018B2D4 38 60 00 00 */ li r3, 0 +/* 8018E378 0018B2D8 2C 06 00 00 */ cmpwi r6, 0 +/* 8018E37C 0018B2DC 40 81 00 40 */ ble lbl_8018E3BC +/* 8018E380 0018B2E0 2C 06 00 08 */ cmpwi r6, 8 +/* 8018E384 0018B2E4 38 86 FF F8 */ addi r4, r6, -8 +/* 8018E388 0018B2E8 40 81 00 20 */ ble lbl_8018E3A8 +/* 8018E38C 0018B2EC 38 04 00 07 */ addi r0, r4, 7 +/* 8018E390 0018B2F0 54 00 E8 FE */ srwi r0, r0, 3 +/* 8018E394 0018B2F4 7C 09 03 A6 */ mtctr r0 +/* 8018E398 0018B2F8 2C 04 00 00 */ cmpwi r4, 0 +/* 8018E39C 0018B2FC 40 81 00 0C */ ble lbl_8018E3A8 +lbl_8018E3A0: +/* 8018E3A0 0018B300 38 63 00 08 */ addi r3, r3, 8 +/* 8018E3A4 0018B304 42 00 FF FC */ bdnz lbl_8018E3A0 +lbl_8018E3A8: +/* 8018E3A8 0018B308 7C 03 30 50 */ subf r0, r3, r6 +/* 8018E3AC 0018B30C 7C 09 03 A6 */ mtctr r0 +/* 8018E3B0 0018B310 7C 03 30 00 */ cmpw r3, r6 +/* 8018E3B4 0018B314 40 80 00 08 */ bge lbl_8018E3BC +lbl_8018E3B8: +/* 8018E3B8 0018B318 42 00 00 00 */ bdnz lbl_8018E3B8 +lbl_8018E3BC: +/* 8018E3BC 0018B31C 38 00 00 00 */ li r0, 0 +/* 8018E3C0 0018B320 90 05 00 00 */ stw r0, 0(r5) +lbl_8018E3C4: +/* 8018E3C4 0018B324 7F 83 E3 78 */ mr r3, r28 +/* 8018E3C8 0018B328 7F A4 EB 78 */ mr r4, r29 +/* 8018E3CC 0018B32C 4B FF F1 B1 */ bl FixInPlace__11CBSWallHangFR15CBodyController +/* 8018E3D0 0018B330 48 00 04 9C */ b lbl_8018E86C +/* 8018E3D4 0018B334 88 1D 03 00 */ lbz r0, 0x300(r29) +/* 8018E3D8 0018B338 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8018E3DC 0018B33C 41 82 04 90 */ beq lbl_8018E86C +/* 8018E3E0 0018B340 38 61 00 CC */ addi r3, r1, 0xcc +/* 8018E3E4 0018B344 48 15 4C 99 */ bl NoParameter__12CPASAnimParmFv +/* 8018E3E8 0018B348 38 61 00 D4 */ addi r3, r1, 0xd4 +/* 8018E3EC 0018B34C 48 15 4C 91 */ bl NoParameter__12CPASAnimParmFv +/* 8018E3F0 0018B350 38 61 00 DC */ addi r3, r1, 0xdc +/* 8018E3F4 0018B354 48 15 4C 89 */ bl NoParameter__12CPASAnimParmFv +/* 8018E3F8 0018B358 38 61 00 E4 */ addi r3, r1, 0xe4 +/* 8018E3FC 0018B35C 48 15 4C 81 */ bl NoParameter__12CPASAnimParmFv +/* 8018E400 0018B360 38 61 00 EC */ addi r3, r1, 0xec +/* 8018E404 0018B364 48 15 4C 79 */ bl NoParameter__12CPASAnimParmFv +/* 8018E408 0018B368 38 61 00 F4 */ addi r3, r1, 0xf4 +/* 8018E40C 0018B36C 48 15 4C 71 */ bl NoParameter__12CPASAnimParmFv +/* 8018E410 0018B370 38 61 00 FC */ addi r3, r1, 0xfc +/* 8018E414 0018B374 48 15 4C 69 */ bl NoParameter__12CPASAnimParmFv +/* 8018E418 0018B378 38 61 01 04 */ addi r3, r1, 0x104 +/* 8018E41C 0018B37C 38 80 00 07 */ li r4, 7 +/* 8018E420 0018B380 48 15 4B 65 */ bl FromEnum__12CPASAnimParmFi +/* 8018E424 0018B384 38 61 00 D4 */ addi r3, r1, 0xd4 +/* 8018E428 0018B388 38 01 00 CC */ addi r0, r1, 0xcc +/* 8018E42C 0018B38C 90 61 00 08 */ stw r3, 8(r1) +/* 8018E430 0018B390 38 61 03 C0 */ addi r3, r1, 0x3c0 +/* 8018E434 0018B394 38 A1 01 04 */ addi r5, r1, 0x104 +/* 8018E438 0018B398 38 C1 00 FC */ addi r6, r1, 0xfc +/* 8018E43C 0018B39C 90 01 00 0C */ stw r0, 0xc(r1) +/* 8018E440 0018B3A0 38 E1 00 F4 */ addi r7, r1, 0xf4 +/* 8018E444 0018B3A4 39 01 00 EC */ addi r8, r1, 0xec +/* 8018E448 0018B3A8 39 21 00 E4 */ addi r9, r1, 0xe4 +/* 8018E44C 0018B3AC 39 41 00 DC */ addi r10, r1, 0xdc +/* 8018E450 0018B3B0 38 80 00 14 */ li r4, 0x14 +/* 8018E454 0018B3B4 4B EE EE 71 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 8018E458 0018B3B8 7F A3 EB 78 */ mr r3, r29 +/* 8018E45C 0018B3BC 4B FA BF F9 */ bl GetPASDatabase__15CBodyControllerCFv +/* 8018E460 0018B3C0 80 DE 09 00 */ lwz r6, 0x900(r30) +/* 8018E464 0018B3C4 7C 64 1B 78 */ mr r4, r3 +/* 8018E468 0018B3C8 38 61 00 C4 */ addi r3, r1, 0xc4 +/* 8018E46C 0018B3CC 38 A1 03 C0 */ addi r5, r1, 0x3c0 +/* 8018E470 0018B3D0 38 E0 FF FF */ li r7, -1 +/* 8018E474 0018B3D4 48 15 6B ED */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i +/* 8018E478 0018B3D8 C0 21 00 C4 */ lfs f1, 0xc4(r1) +/* 8018E47C 0018B3DC C0 02 A4 70 */ lfs f0, lbl_805AC190@sda21(r2) +/* 8018E480 0018B3E0 80 61 00 C8 */ lwz r3, 0xc8(r1) +/* 8018E484 0018B3E4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018E488 0018B3E8 40 81 00 5C */ ble lbl_8018E4E4 +/* 8018E48C 0018B3EC 38 00 00 07 */ li r0, 7 +/* 8018E490 0018B3F0 C0 02 A4 6C */ lfs f0, lbl_805AC18C@sda21(r2) +/* 8018E494 0018B3F4 90 1C 00 04 */ stw r0, 4(r28) +/* 8018E498 0018B3F8 38 00 00 00 */ li r0, 0 +/* 8018E49C 0018B3FC 38 C0 FF FF */ li r6, -1 +/* 8018E4A0 0018B400 38 E0 00 01 */ li r7, 1 +/* 8018E4A4 0018B404 90 61 02 E0 */ stw r3, 0x2e0(r1) +/* 8018E4A8 0018B408 7F A3 EB 78 */ mr r3, r29 +/* 8018E4AC 0018B40C 38 81 02 E0 */ addi r4, r1, 0x2e0 +/* 8018E4B0 0018B410 38 A0 00 00 */ li r5, 0 +/* 8018E4B4 0018B414 90 C1 02 E4 */ stw r6, 0x2e4(r1) +/* 8018E4B8 0018B418 38 C0 00 00 */ li r6, 0 +/* 8018E4BC 0018B41C D0 01 02 E8 */ stfs f0, 0x2e8(r1) +/* 8018E4C0 0018B420 98 E1 02 EC */ stb r7, 0x2ec(r1) +/* 8018E4C4 0018B424 90 01 02 F0 */ stw r0, 0x2f0(r1) +/* 8018E4C8 0018B428 90 01 02 F4 */ stw r0, 0x2f4(r1) +/* 8018E4CC 0018B42C 98 01 02 F8 */ stb r0, 0x2f8(r1) +/* 8018E4D0 0018B430 90 01 02 FC */ stw r0, 0x2fc(r1) +/* 8018E4D4 0018B434 90 01 03 00 */ stw r0, 0x300(r1) +/* 8018E4D8 0018B438 90 01 03 04 */ stw r0, 0x304(r1) +/* 8018E4DC 0018B43C 4B FA C4 41 */ bl SetCurrentAnimation__15CBodyControllerFRC18CAnimPlaybackParmsbb +/* 8018E4E0 0018B440 48 00 00 F0 */ b lbl_8018E5D0 +lbl_8018E4E4: +/* 8018E4E4 0018B444 38 00 00 08 */ li r0, 8 +/* 8018E4E8 0018B448 38 61 00 84 */ addi r3, r1, 0x84 +/* 8018E4EC 0018B44C 90 1C 00 04 */ stw r0, 4(r28) +/* 8018E4F0 0018B450 48 15 4B 8D */ bl NoParameter__12CPASAnimParmFv +/* 8018E4F4 0018B454 38 61 00 8C */ addi r3, r1, 0x8c +/* 8018E4F8 0018B458 48 15 4B 85 */ bl NoParameter__12CPASAnimParmFv +/* 8018E4FC 0018B45C 38 61 00 94 */ addi r3, r1, 0x94 +/* 8018E500 0018B460 48 15 4B 7D */ bl NoParameter__12CPASAnimParmFv +/* 8018E504 0018B464 38 61 00 9C */ addi r3, r1, 0x9c +/* 8018E508 0018B468 48 15 4B 75 */ bl NoParameter__12CPASAnimParmFv +/* 8018E50C 0018B46C 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 8018E510 0018B470 48 15 4B 6D */ bl NoParameter__12CPASAnimParmFv +/* 8018E514 0018B474 38 61 00 AC */ addi r3, r1, 0xac +/* 8018E518 0018B478 48 15 4B 65 */ bl NoParameter__12CPASAnimParmFv +/* 8018E51C 0018B47C 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 8018E520 0018B480 48 15 4B 5D */ bl NoParameter__12CPASAnimParmFv +/* 8018E524 0018B484 80 9C 00 04 */ lwz r4, 4(r28) +/* 8018E528 0018B488 38 61 00 BC */ addi r3, r1, 0xbc +/* 8018E52C 0018B48C 48 15 4A 59 */ bl FromEnum__12CPASAnimParmFi +/* 8018E530 0018B490 38 61 00 8C */ addi r3, r1, 0x8c +/* 8018E534 0018B494 38 01 00 84 */ addi r0, r1, 0x84 +/* 8018E538 0018B498 90 61 00 08 */ stw r3, 8(r1) +/* 8018E53C 0018B49C 38 61 03 78 */ addi r3, r1, 0x378 +/* 8018E540 0018B4A0 38 A1 00 BC */ addi r5, r1, 0xbc +/* 8018E544 0018B4A4 38 C1 00 B4 */ addi r6, r1, 0xb4 +/* 8018E548 0018B4A8 90 01 00 0C */ stw r0, 0xc(r1) +/* 8018E54C 0018B4AC 38 E1 00 AC */ addi r7, r1, 0xac +/* 8018E550 0018B4B0 39 01 00 A4 */ addi r8, r1, 0xa4 +/* 8018E554 0018B4B4 39 21 00 9C */ addi r9, r1, 0x9c +/* 8018E558 0018B4B8 39 41 00 94 */ addi r10, r1, 0x94 +/* 8018E55C 0018B4BC 38 80 00 14 */ li r4, 0x14 +/* 8018E560 0018B4C0 4B EE ED 65 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 8018E564 0018B4C4 80 BE 09 00 */ lwz r5, 0x900(r30) +/* 8018E568 0018B4C8 7F A3 EB 78 */ mr r3, r29 +/* 8018E56C 0018B4CC 38 81 03 78 */ addi r4, r1, 0x378 +/* 8018E570 0018B4D0 4B FA BD 8D */ bl LoopBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16 +/* 8018E574 0018B4D4 34 A1 03 7C */ addic. r5, r1, 0x37c +/* 8018E578 0018B4D8 41 82 00 58 */ beq lbl_8018E5D0 +/* 8018E57C 0018B4DC 80 C5 00 00 */ lwz r6, 0(r5) +/* 8018E580 0018B4E0 38 60 00 00 */ li r3, 0 +/* 8018E584 0018B4E4 2C 06 00 00 */ cmpwi r6, 0 +/* 8018E588 0018B4E8 40 81 00 40 */ ble lbl_8018E5C8 +/* 8018E58C 0018B4EC 2C 06 00 08 */ cmpwi r6, 8 +/* 8018E590 0018B4F0 38 86 FF F8 */ addi r4, r6, -8 +/* 8018E594 0018B4F4 40 81 00 20 */ ble lbl_8018E5B4 +/* 8018E598 0018B4F8 38 04 00 07 */ addi r0, r4, 7 +/* 8018E59C 0018B4FC 54 00 E8 FE */ srwi r0, r0, 3 +/* 8018E5A0 0018B500 7C 09 03 A6 */ mtctr r0 +/* 8018E5A4 0018B504 2C 04 00 00 */ cmpwi r4, 0 +/* 8018E5A8 0018B508 40 81 00 0C */ ble lbl_8018E5B4 +lbl_8018E5AC: +/* 8018E5AC 0018B50C 38 63 00 08 */ addi r3, r3, 8 +/* 8018E5B0 0018B510 42 00 FF FC */ bdnz lbl_8018E5AC +lbl_8018E5B4: +/* 8018E5B4 0018B514 7C 03 30 50 */ subf r0, r3, r6 +/* 8018E5B8 0018B518 7C 09 03 A6 */ mtctr r0 +/* 8018E5BC 0018B51C 7C 03 30 00 */ cmpw r3, r6 +/* 8018E5C0 0018B520 40 80 00 08 */ bge lbl_8018E5C8 +lbl_8018E5C4: +/* 8018E5C4 0018B524 42 00 00 00 */ bdnz lbl_8018E5C4 +lbl_8018E5C8: +/* 8018E5C8 0018B528 38 00 00 00 */ li r0, 0 +/* 8018E5CC 0018B52C 90 05 00 00 */ stw r0, 0(r5) +lbl_8018E5D0: +/* 8018E5D0 0018B530 80 9D 00 00 */ lwz r4, 0(r29) +/* 8018E5D4 0018B534 38 61 00 7C */ addi r3, r1, 0x7c +/* 8018E5D8 0018B538 4B F1 E1 0D */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" +/* 8018E5DC 0018B53C 83 23 00 04 */ lwz r25, 4(r3) +/* 8018E5E0 0018B540 28 19 00 00 */ cmplwi r25, 0 +/* 8018E5E4 0018B544 41 82 00 D4 */ beq lbl_8018E6B8 +/* 8018E5E8 0018B548 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8018E5EC 0018B54C 7F C3 F3 78 */ mr r3, r30 +/* 8018E5F0 0018B550 7F 24 CB 78 */ mr r4, r25 +/* 8018E5F4 0018B554 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8018E5F8 0018B558 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8018E5FC 0018B55C 38 C0 00 28 */ li r6, 0x28 +/* 8018E600 0018B560 4B EB 58 D1 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +/* 8018E604 0018B564 88 1C 00 18 */ lbz r0, 0x18(r28) +/* 8018E608 0018B568 38 60 00 00 */ li r3, 0 +/* 8018E60C 0018B56C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8018E610 0018B570 7F C3 F3 78 */ mr r3, r30 +/* 8018E614 0018B574 98 1C 00 18 */ stb r0, 0x18(r28) +/* 8018E618 0018B578 38 81 00 10 */ addi r4, r1, 0x10 +/* 8018E61C 0018B57C A0 1C 00 08 */ lhz r0, 8(r28) +/* 8018E620 0018B580 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8018E624 0018B584 4B EB DF 81 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8018E628 0018B588 7C 64 1B 78 */ mr r4, r3 +/* 8018E62C 0018B58C 38 61 00 24 */ addi r3, r1, 0x24 +/* 8018E630 0018B590 4B F2 16 61 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8018E634 0018B594 80 63 00 04 */ lwz r3, 4(r3) +/* 8018E638 0018B598 28 03 00 00 */ cmplwi r3, 0 +/* 8018E63C 0018B59C 41 82 00 38 */ beq lbl_8018E674 +/* 8018E640 0018B5A0 C0 82 A4 80 */ lfs f4, lbl_805AC1A0@sda21(r2) +/* 8018E644 0018B5A4 C0 03 00 38 */ lfs f0, 0x38(r3) +/* 8018E648 0018B5A8 C0 63 00 48 */ lfs f3, 0x48(r3) +/* 8018E64C 0018B5AC C0 43 00 58 */ lfs f2, 0x58(r3) +/* 8018E650 0018B5B0 EC 24 00 32 */ fmuls f1, f4, f0 +/* 8018E654 0018B5B4 EC 64 00 F2 */ fmuls f3, f4, f3 +/* 8018E658 0018B5B8 C0 02 A4 84 */ lfs f0, lbl_805AC1A4@sda21(r2) +/* 8018E65C 0018B5BC EC 44 00 B2 */ fmuls f2, f4, f2 +/* 8018E660 0018B5C0 D0 3C 00 0C */ stfs f1, 0xc(r28) +/* 8018E664 0018B5C4 D0 7C 00 10 */ stfs f3, 0x10(r28) +/* 8018E668 0018B5C8 D0 5C 00 14 */ stfs f2, 0x14(r28) +/* 8018E66C 0018B5CC D0 1C 00 14 */ stfs f0, 0x14(r28) +/* 8018E670 0018B5D0 48 00 00 2C */ b lbl_8018E69C +lbl_8018E674: +/* 8018E674 0018B5D4 C0 62 A4 88 */ lfs f3, lbl_805AC1A8@sda21(r2) +/* 8018E678 0018B5D8 C0 19 00 38 */ lfs f0, 0x38(r25) +/* 8018E67C 0018B5DC C0 59 00 48 */ lfs f2, 0x48(r25) +/* 8018E680 0018B5E0 C0 39 00 58 */ lfs f1, 0x58(r25) +/* 8018E684 0018B5E4 EC 03 00 32 */ fmuls f0, f3, f0 +/* 8018E688 0018B5E8 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 8018E68C 0018B5EC EC 23 00 72 */ fmuls f1, f3, f1 +/* 8018E690 0018B5F0 D0 1C 00 0C */ stfs f0, 0xc(r28) +/* 8018E694 0018B5F4 D0 5C 00 10 */ stfs f2, 0x10(r28) +/* 8018E698 0018B5F8 D0 3C 00 14 */ stfs f1, 0x14(r28) +lbl_8018E69C: +/* 8018E69C 0018B5FC 4B E8 CE 99 */ bl Identity__10CAxisAngleFv +/* 8018E6A0 0018B600 80 83 00 00 */ lwz r4, 0(r3) +/* 8018E6A4 0018B604 80 03 00 04 */ lwz r0, 4(r3) +/* 8018E6A8 0018B608 90 99 01 08 */ stw r4, 0x108(r25) +/* 8018E6AC 0018B60C 90 19 01 0C */ stw r0, 0x10c(r25) +/* 8018E6B0 0018B610 80 03 00 08 */ lwz r0, 8(r3) +/* 8018E6B4 0018B614 90 19 01 10 */ stw r0, 0x110(r25) +lbl_8018E6B8: +/* 8018E6B8 0018B618 34 A1 03 C4 */ addic. r5, r1, 0x3c4 +/* 8018E6BC 0018B61C 41 82 01 B0 */ beq lbl_8018E86C +/* 8018E6C0 0018B620 80 C5 00 00 */ lwz r6, 0(r5) +/* 8018E6C4 0018B624 38 60 00 00 */ li r3, 0 +/* 8018E6C8 0018B628 2C 06 00 00 */ cmpwi r6, 0 +/* 8018E6CC 0018B62C 40 81 00 40 */ ble lbl_8018E70C +/* 8018E6D0 0018B630 2C 06 00 08 */ cmpwi r6, 8 +/* 8018E6D4 0018B634 38 86 FF F8 */ addi r4, r6, -8 +/* 8018E6D8 0018B638 40 81 00 20 */ ble lbl_8018E6F8 +/* 8018E6DC 0018B63C 38 04 00 07 */ addi r0, r4, 7 +/* 8018E6E0 0018B640 54 00 E8 FE */ srwi r0, r0, 3 +/* 8018E6E4 0018B644 7C 09 03 A6 */ mtctr r0 +/* 8018E6E8 0018B648 2C 04 00 00 */ cmpwi r4, 0 +/* 8018E6EC 0018B64C 40 81 00 0C */ ble lbl_8018E6F8 +lbl_8018E6F0: +/* 8018E6F0 0018B650 38 63 00 08 */ addi r3, r3, 8 +/* 8018E6F4 0018B654 42 00 FF FC */ bdnz lbl_8018E6F0 +lbl_8018E6F8: +/* 8018E6F8 0018B658 7C 03 30 50 */ subf r0, r3, r6 +/* 8018E6FC 0018B65C 7C 09 03 A6 */ mtctr r0 +/* 8018E700 0018B660 7C 03 30 00 */ cmpw r3, r6 +/* 8018E704 0018B664 40 80 00 08 */ bge lbl_8018E70C +lbl_8018E708: +/* 8018E708 0018B668 42 00 00 00 */ bdnz lbl_8018E708 +lbl_8018E70C: +/* 8018E70C 0018B66C 38 00 00 00 */ li r0, 0 +/* 8018E710 0018B670 90 05 00 00 */ stw r0, 0(r5) +/* 8018E714 0018B674 48 00 01 58 */ b lbl_8018E86C +/* 8018E718 0018B678 7F 83 E3 78 */ mr r3, r28 +/* 8018E71C 0018B67C 7F A4 EB 78 */ mr r4, r29 +/* 8018E720 0018B680 48 00 03 95 */ bl SetLaunchVelocity__11CBSWallHangFR15CBodyController +/* 8018E724 0018B684 88 1D 03 00 */ lbz r0, 0x300(r29) +/* 8018E728 0018B688 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8018E72C 0018B68C 41 82 00 F4 */ beq lbl_8018E820 +/* 8018E730 0018B690 38 00 00 08 */ li r0, 8 +/* 8018E734 0018B694 38 61 00 3C */ addi r3, r1, 0x3c +/* 8018E738 0018B698 90 1C 00 04 */ stw r0, 4(r28) +/* 8018E73C 0018B69C 48 15 49 41 */ bl NoParameter__12CPASAnimParmFv +/* 8018E740 0018B6A0 38 61 00 44 */ addi r3, r1, 0x44 +/* 8018E744 0018B6A4 48 15 49 39 */ bl NoParameter__12CPASAnimParmFv +/* 8018E748 0018B6A8 38 61 00 4C */ addi r3, r1, 0x4c +/* 8018E74C 0018B6AC 48 15 49 31 */ bl NoParameter__12CPASAnimParmFv +/* 8018E750 0018B6B0 38 61 00 54 */ addi r3, r1, 0x54 +/* 8018E754 0018B6B4 48 15 49 29 */ bl NoParameter__12CPASAnimParmFv +/* 8018E758 0018B6B8 38 61 00 5C */ addi r3, r1, 0x5c +/* 8018E75C 0018B6BC 48 15 49 21 */ bl NoParameter__12CPASAnimParmFv +/* 8018E760 0018B6C0 38 61 00 64 */ addi r3, r1, 0x64 +/* 8018E764 0018B6C4 48 15 49 19 */ bl NoParameter__12CPASAnimParmFv +/* 8018E768 0018B6C8 38 61 00 6C */ addi r3, r1, 0x6c +/* 8018E76C 0018B6CC 48 15 49 11 */ bl NoParameter__12CPASAnimParmFv +/* 8018E770 0018B6D0 80 9C 00 04 */ lwz r4, 4(r28) +/* 8018E774 0018B6D4 38 61 00 74 */ addi r3, r1, 0x74 +/* 8018E778 0018B6D8 48 15 48 0D */ bl FromEnum__12CPASAnimParmFi +/* 8018E77C 0018B6DC 38 61 00 44 */ addi r3, r1, 0x44 +/* 8018E780 0018B6E0 38 01 00 3C */ addi r0, r1, 0x3c +/* 8018E784 0018B6E4 90 61 00 08 */ stw r3, 8(r1) +/* 8018E788 0018B6E8 38 61 03 30 */ addi r3, r1, 0x330 +/* 8018E78C 0018B6EC 38 A1 00 74 */ addi r5, r1, 0x74 +/* 8018E790 0018B6F0 38 C1 00 6C */ addi r6, r1, 0x6c +/* 8018E794 0018B6F4 90 01 00 0C */ stw r0, 0xc(r1) +/* 8018E798 0018B6F8 38 E1 00 64 */ addi r7, r1, 0x64 +/* 8018E79C 0018B6FC 39 01 00 5C */ addi r8, r1, 0x5c +/* 8018E7A0 0018B700 39 21 00 54 */ addi r9, r1, 0x54 +/* 8018E7A4 0018B704 39 41 00 4C */ addi r10, r1, 0x4c +/* 8018E7A8 0018B708 38 80 00 14 */ li r4, 0x14 +/* 8018E7AC 0018B70C 4B EE EB 19 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 8018E7B0 0018B710 80 BE 09 00 */ lwz r5, 0x900(r30) +/* 8018E7B4 0018B714 7F A3 EB 78 */ mr r3, r29 +/* 8018E7B8 0018B718 38 81 03 30 */ addi r4, r1, 0x330 +/* 8018E7BC 0018B71C 4B FA BB 41 */ bl LoopBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16 +/* 8018E7C0 0018B720 34 A1 03 34 */ addic. r5, r1, 0x334 +/* 8018E7C4 0018B724 41 82 00 A8 */ beq lbl_8018E86C +/* 8018E7C8 0018B728 80 C5 00 00 */ lwz r6, 0(r5) +/* 8018E7CC 0018B72C 38 60 00 00 */ li r3, 0 +/* 8018E7D0 0018B730 2C 06 00 00 */ cmpwi r6, 0 +/* 8018E7D4 0018B734 40 81 00 40 */ ble lbl_8018E814 +/* 8018E7D8 0018B738 2C 06 00 08 */ cmpwi r6, 8 +/* 8018E7DC 0018B73C 38 86 FF F8 */ addi r4, r6, -8 +/* 8018E7E0 0018B740 40 81 00 20 */ ble lbl_8018E800 +/* 8018E7E4 0018B744 38 04 00 07 */ addi r0, r4, 7 +/* 8018E7E8 0018B748 54 00 E8 FE */ srwi r0, r0, 3 +/* 8018E7EC 0018B74C 7C 09 03 A6 */ mtctr r0 +/* 8018E7F0 0018B750 2C 04 00 00 */ cmpwi r4, 0 +/* 8018E7F4 0018B754 40 81 00 0C */ ble lbl_8018E800 +lbl_8018E7F8: +/* 8018E7F8 0018B758 38 63 00 08 */ addi r3, r3, 8 +/* 8018E7FC 0018B75C 42 00 FF FC */ bdnz lbl_8018E7F8 +lbl_8018E800: +/* 8018E800 0018B760 7C 03 30 50 */ subf r0, r3, r6 +/* 8018E804 0018B764 7C 09 03 A6 */ mtctr r0 +/* 8018E808 0018B768 7C 03 30 00 */ cmpw r3, r6 +/* 8018E80C 0018B76C 40 80 00 08 */ bge lbl_8018E814 +lbl_8018E810: +/* 8018E810 0018B770 42 00 00 00 */ bdnz lbl_8018E810 +lbl_8018E814: +/* 8018E814 0018B774 38 00 00 00 */ li r0, 0 +/* 8018E818 0018B778 90 05 00 00 */ stw r0, 0(r5) +/* 8018E81C 0018B77C 48 00 00 50 */ b lbl_8018E86C +lbl_8018E820: +/* 8018E820 0018B780 7F 83 E3 78 */ mr r3, r28 +/* 8018E824 0018B784 7F A4 EB 78 */ mr r4, r29 +/* 8018E828 0018B788 7F C5 F3 78 */ mr r5, r30 +/* 8018E82C 0018B78C 4B FF ED A5 */ bl CheckForLand__11CBSWallHangFR15CBodyControllerR13CStateManager +/* 8018E830 0018B790 48 00 00 3C */ b lbl_8018E86C +/* 8018E834 0018B794 7F 83 E3 78 */ mr r3, r28 +/* 8018E838 0018B798 7F A4 EB 78 */ mr r4, r29 +/* 8018E83C 0018B79C 48 00 02 79 */ bl SetLaunchVelocity__11CBSWallHangFR15CBodyController +/* 8018E840 0018B7A0 7F 83 E3 78 */ mr r3, r28 +/* 8018E844 0018B7A4 7F A4 EB 78 */ mr r4, r29 +/* 8018E848 0018B7A8 7F C5 F3 78 */ mr r5, r30 +/* 8018E84C 0018B7AC 4B FF ED 85 */ bl CheckForLand__11CBSWallHangFR15CBodyControllerR13CStateManager +/* 8018E850 0018B7B0 48 00 00 1C */ b lbl_8018E86C +/* 8018E854 0018B7B4 88 1D 03 00 */ lbz r0, 0x300(r29) +/* 8018E858 0018B7B8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8018E85C 0018B7BC 41 82 00 10 */ beq lbl_8018E86C +/* 8018E860 0018B7C0 38 00 FF FF */ li r0, -1 +/* 8018E864 0018B7C4 3B E0 00 05 */ li r31, 5 +/* 8018E868 0018B7C8 90 1C 00 04 */ stw r0, 4(r28) +lbl_8018E86C: +/* 8018E86C 0018B7CC 7F E3 FB 78 */ mr r3, r31 +/* 8018E870 0018B7D0 E3 E1 06 08 */ psq_l f31, 1544(r1), 0, qr0 +/* 8018E874 0018B7D4 CB E1 06 00 */ lfd f31, 0x600(r1) +/* 8018E878 0018B7D8 E3 C1 05 F8 */ psq_l f30, 1528(r1), 0, qr0 +/* 8018E87C 0018B7DC CB C1 05 F0 */ lfd f30, 0x5f0(r1) +/* 8018E880 0018B7E0 E3 A1 05 E8 */ psq_l f29, 1512(r1), 0, qr0 +/* 8018E884 0018B7E4 CB A1 05 E0 */ lfd f29, 0x5e0(r1) +/* 8018E888 0018B7E8 BB 21 05 C4 */ lmw r25, 0x5c4(r1) +/* 8018E88C 0018B7EC 80 01 06 14 */ lwz r0, 0x614(r1) +/* 8018E890 0018B7F0 7C 08 03 A6 */ mtlr r0 +/* 8018E894 0018B7F4 38 21 06 10 */ addi r1, r1, 0x610 +/* 8018E898 0018B7F8 4E 80 00 20 */ blr + +.global Start__11CBSWallHangFR15CBodyControllerR13CStateManager +Start__11CBSWallHangFR15CBodyControllerR13CStateManager: +/* 8018E89C 0018B7FC 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 8018E8A0 0018B800 7C 08 02 A6 */ mflr r0 +/* 8018E8A4 0018B804 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 8018E8A8 0018B808 93 E1 00 AC */ stw r31, 0xac(r1) +/* 8018E8AC 0018B80C 7C BF 2B 78 */ mr r31, r5 +/* 8018E8B0 0018B810 93 C1 00 A8 */ stw r30, 0xa8(r1) +/* 8018E8B4 0018B814 7C 9E 23 78 */ mr r30, r4 +/* 8018E8B8 0018B818 38 80 00 15 */ li r4, 0x15 +/* 8018E8BC 0018B81C 93 A1 00 A4 */ stw r29, 0xa4(r1) +/* 8018E8C0 0018B820 7C 7D 1B 78 */ mr r29, r3 +/* 8018E8C4 0018B824 38 7E 00 04 */ addi r3, r30, 4 +/* 8018E8C8 0018B828 4B FA 2B 89 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8018E8CC 0018B82C 38 80 00 00 */ li r4, 0 +/* 8018E8D0 0018B830 90 9D 00 04 */ stw r4, 4(r29) +/* 8018E8D4 0018B834 A0 03 00 08 */ lhz r0, 8(r3) +/* 8018E8D8 0018B838 38 61 00 10 */ addi r3, r1, 0x10 +/* 8018E8DC 0018B83C B0 1D 00 08 */ sth r0, 8(r29) +/* 8018E8E0 0018B840 88 1D 00 18 */ lbz r0, 0x18(r29) +/* 8018E8E4 0018B844 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 8018E8E8 0018B848 98 1D 00 18 */ stb r0, 0x18(r29) +/* 8018E8EC 0018B84C 48 15 47 91 */ bl NoParameter__12CPASAnimParmFv +/* 8018E8F0 0018B850 38 61 00 18 */ addi r3, r1, 0x18 +/* 8018E8F4 0018B854 48 15 47 89 */ bl NoParameter__12CPASAnimParmFv +/* 8018E8F8 0018B858 38 61 00 20 */ addi r3, r1, 0x20 +/* 8018E8FC 0018B85C 48 15 47 81 */ bl NoParameter__12CPASAnimParmFv +/* 8018E900 0018B860 38 61 00 28 */ addi r3, r1, 0x28 +/* 8018E904 0018B864 48 15 47 79 */ bl NoParameter__12CPASAnimParmFv +/* 8018E908 0018B868 38 61 00 30 */ addi r3, r1, 0x30 +/* 8018E90C 0018B86C 48 15 47 71 */ bl NoParameter__12CPASAnimParmFv +/* 8018E910 0018B870 38 61 00 38 */ addi r3, r1, 0x38 +/* 8018E914 0018B874 48 15 47 69 */ bl NoParameter__12CPASAnimParmFv +/* 8018E918 0018B878 38 61 00 40 */ addi r3, r1, 0x40 +/* 8018E91C 0018B87C 48 15 47 61 */ bl NoParameter__12CPASAnimParmFv +/* 8018E920 0018B880 80 9D 00 04 */ lwz r4, 4(r29) +/* 8018E924 0018B884 38 61 00 48 */ addi r3, r1, 0x48 +/* 8018E928 0018B888 48 15 46 5D */ bl FromEnum__12CPASAnimParmFi +/* 8018E92C 0018B88C 38 61 00 18 */ addi r3, r1, 0x18 +/* 8018E930 0018B890 38 01 00 10 */ addi r0, r1, 0x10 +/* 8018E934 0018B894 90 61 00 08 */ stw r3, 8(r1) +/* 8018E938 0018B898 38 61 00 50 */ addi r3, r1, 0x50 +/* 8018E93C 0018B89C 38 A1 00 48 */ addi r5, r1, 0x48 +/* 8018E940 0018B8A0 38 C1 00 40 */ addi r6, r1, 0x40 +/* 8018E944 0018B8A4 90 01 00 0C */ stw r0, 0xc(r1) +/* 8018E948 0018B8A8 38 E1 00 38 */ addi r7, r1, 0x38 +/* 8018E94C 0018B8AC 39 01 00 30 */ addi r8, r1, 0x30 +/* 8018E950 0018B8B0 39 21 00 28 */ addi r9, r1, 0x28 +/* 8018E954 0018B8B4 39 41 00 20 */ addi r10, r1, 0x20 +/* 8018E958 0018B8B8 38 80 00 14 */ li r4, 0x14 +/* 8018E95C 0018B8BC 4B EE E9 69 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 8018E960 0018B8C0 80 BF 09 00 */ lwz r5, 0x900(r31) +/* 8018E964 0018B8C4 7F C3 F3 78 */ mr r3, r30 +/* 8018E968 0018B8C8 38 81 00 50 */ addi r4, r1, 0x50 +/* 8018E96C 0018B8CC 4B FA BA 3D */ bl PlayBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16 +/* 8018E970 0018B8D0 34 A1 00 54 */ addic. r5, r1, 0x54 +/* 8018E974 0018B8D4 41 82 00 58 */ beq lbl_8018E9CC +/* 8018E978 0018B8D8 80 C5 00 00 */ lwz r6, 0(r5) +/* 8018E97C 0018B8DC 38 60 00 00 */ li r3, 0 +/* 8018E980 0018B8E0 2C 06 00 00 */ cmpwi r6, 0 +/* 8018E984 0018B8E4 40 81 00 40 */ ble lbl_8018E9C4 +/* 8018E988 0018B8E8 2C 06 00 08 */ cmpwi r6, 8 +/* 8018E98C 0018B8EC 38 86 FF F8 */ addi r4, r6, -8 +/* 8018E990 0018B8F0 40 81 00 20 */ ble lbl_8018E9B0 +/* 8018E994 0018B8F4 38 04 00 07 */ addi r0, r4, 7 +/* 8018E998 0018B8F8 54 00 E8 FE */ srwi r0, r0, 3 +/* 8018E99C 0018B8FC 7C 09 03 A6 */ mtctr r0 +/* 8018E9A0 0018B900 2C 04 00 00 */ cmpwi r4, 0 +/* 8018E9A4 0018B904 40 81 00 0C */ ble lbl_8018E9B0 +lbl_8018E9A8: +/* 8018E9A8 0018B908 38 63 00 08 */ addi r3, r3, 8 +/* 8018E9AC 0018B90C 42 00 FF FC */ bdnz lbl_8018E9A8 +lbl_8018E9B0: +/* 8018E9B0 0018B910 7C 03 30 50 */ subf r0, r3, r6 +/* 8018E9B4 0018B914 7C 09 03 A6 */ mtctr r0 +/* 8018E9B8 0018B918 7C 03 30 00 */ cmpw r3, r6 +/* 8018E9BC 0018B91C 40 80 00 08 */ bge lbl_8018E9C4 +lbl_8018E9C0: +/* 8018E9C0 0018B920 42 00 00 00 */ bdnz lbl_8018E9C0 +lbl_8018E9C4: +/* 8018E9C4 0018B924 38 00 00 00 */ li r0, 0 +/* 8018E9C8 0018B928 90 05 00 00 */ stw r0, 0(r5) +lbl_8018E9CC: +/* 8018E9CC 0018B92C 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 8018E9D0 0018B930 83 E1 00 AC */ lwz r31, 0xac(r1) +/* 8018E9D4 0018B934 83 C1 00 A8 */ lwz r30, 0xa8(r1) +/* 8018E9D8 0018B938 83 A1 00 A4 */ lwz r29, 0xa4(r1) +/* 8018E9DC 0018B93C 7C 08 03 A6 */ mtlr r0 +/* 8018E9E0 0018B940 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 8018E9E4 0018B944 4E 80 00 20 */ blr + +.global ApplyGravity__11CBSWallHangCFv +ApplyGravity__11CBSWallHangCFv: +/* 8018E9E8 0018B948 80 03 00 04 */ lwz r0, 4(r3) +/* 8018E9EC 0018B94C 38 60 00 00 */ li r3, 0 +/* 8018E9F0 0018B950 2C 00 00 04 */ cmpwi r0, 4 +/* 8018E9F4 0018B954 4D 82 00 20 */ beqlr +/* 8018E9F8 0018B958 2C 00 00 03 */ cmpwi r0, 3 +/* 8018E9FC 0018B95C 4D 82 00 20 */ beqlr +/* 8018EA00 0018B960 2C 00 00 06 */ cmpwi r0, 6 +/* 8018EA04 0018B964 4D 82 00 20 */ beqlr +/* 8018EA08 0018B968 38 60 00 01 */ li r3, 1 +/* 8018EA0C 0018B96C 4E 80 00 20 */ blr + +.global CanShoot__11CBSWallHangCFv +CanShoot__11CBSWallHangCFv: +/* 8018EA10 0018B970 80 03 00 04 */ lwz r0, 4(r3) +/* 8018EA14 0018B974 20 00 00 04 */ subfic r0, r0, 4 +/* 8018EA18 0018B978 7C 00 00 34 */ cntlzw r0, r0 +/* 8018EA1C 0018B97C 54 03 D9 7E */ srwi r3, r0, 5 +/* 8018EA20 0018B980 4E 80 00 20 */ blr + +.global ApplyHeadTracking__11CBSWallHangCFv +ApplyHeadTracking__11CBSWallHangCFv: +/* 8018EA24 0018B984 80 03 00 04 */ lwz r0, 4(r3) +/* 8018EA28 0018B988 38 60 00 00 */ li r3, 0 +/* 8018EA2C 0018B98C 2C 00 00 04 */ cmpwi r0, 4 +/* 8018EA30 0018B990 41 82 00 0C */ beq lbl_8018EA3C +/* 8018EA34 0018B994 2C 00 00 05 */ cmpwi r0, 5 +/* 8018EA38 0018B998 4C 82 00 20 */ bnelr +lbl_8018EA3C: +/* 8018EA3C 0018B99C 38 60 00 01 */ li r3, 1 +/* 8018EA40 0018B9A0 4E 80 00 20 */ blr + +.global ApplyAnimationDeltas__11CBSWallHangCFv +ApplyAnimationDeltas__11CBSWallHangCFv: +/* 8018EA44 0018B9A4 80 03 00 04 */ lwz r0, 4(r3) +/* 8018EA48 0018B9A8 38 60 00 00 */ li r3, 0 +/* 8018EA4C 0018B9AC 2C 00 00 00 */ cmpwi r0, 0 +/* 8018EA50 0018B9B0 41 82 00 2C */ beq lbl_8018EA7C +/* 8018EA54 0018B9B4 2C 00 00 03 */ cmpwi r0, 3 +/* 8018EA58 0018B9B8 41 82 00 24 */ beq lbl_8018EA7C +/* 8018EA5C 0018B9BC 2C 00 00 04 */ cmpwi r0, 4 +/* 8018EA60 0018B9C0 41 82 00 1C */ beq lbl_8018EA7C +/* 8018EA64 0018B9C4 2C 00 00 05 */ cmpwi r0, 5 +/* 8018EA68 0018B9C8 41 82 00 14 */ beq lbl_8018EA7C +/* 8018EA6C 0018B9CC 2C 00 00 06 */ cmpwi r0, 6 +/* 8018EA70 0018B9D0 41 82 00 0C */ beq lbl_8018EA7C +/* 8018EA74 0018B9D4 2C 00 00 09 */ cmpwi r0, 9 +/* 8018EA78 0018B9D8 4C 82 00 20 */ bnelr +lbl_8018EA7C: +/* 8018EA7C 0018B9DC 38 60 00 01 */ li r3, 1 +/* 8018EA80 0018B9E0 4E 80 00 20 */ blr + +.global IsInAir__11CBSWallHangCFRC15CBodyController +IsInAir__11CBSWallHangCFRC15CBodyController: +/* 8018EA84 0018B9E4 80 03 00 04 */ lwz r0, 4(r3) +/* 8018EA88 0018B9E8 38 60 00 00 */ li r3, 0 +/* 8018EA8C 0018B9EC 2C 00 00 01 */ cmpwi r0, 1 +/* 8018EA90 0018B9F0 41 82 00 1C */ beq lbl_8018EAAC +/* 8018EA94 0018B9F4 2C 00 00 02 */ cmpwi r0, 2 +/* 8018EA98 0018B9F8 41 82 00 14 */ beq lbl_8018EAAC +/* 8018EA9C 0018B9FC 2C 00 00 07 */ cmpwi r0, 7 +/* 8018EAA0 0018BA00 41 82 00 0C */ beq lbl_8018EAAC +/* 8018EAA4 0018BA04 2C 00 00 08 */ cmpwi r0, 8 +/* 8018EAA8 0018BA08 4C 82 00 20 */ bnelr +lbl_8018EAAC: +/* 8018EAAC 0018BA0C 38 60 00 01 */ li r3, 1 +/* 8018EAB0 0018BA10 4E 80 00 20 */ blr + +.global SetLaunchVelocity__11CBSWallHangFR15CBodyController +SetLaunchVelocity__11CBSWallHangFR15CBodyController: +/* 8018EAB4 0018BA14 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8018EAB8 0018BA18 7C 08 02 A6 */ mflr r0 +/* 8018EABC 0018BA1C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8018EAC0 0018BA20 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8018EAC4 0018BA24 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8018EAC8 0018BA28 7C 7E 1B 78 */ mr r30, r3 +/* 8018EACC 0018BA2C 88 03 00 18 */ lbz r0, 0x18(r3) +/* 8018EAD0 0018BA30 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8018EAD4 0018BA34 40 82 00 60 */ bne lbl_8018EB34 +/* 8018EAD8 0018BA38 80 84 00 00 */ lwz r4, 0(r4) +/* 8018EADC 0018BA3C 38 61 00 08 */ addi r3, r1, 8 +/* 8018EAE0 0018BA40 4B F1 DC 05 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" +/* 8018EAE4 0018BA44 83 E3 00 04 */ lwz r31, 4(r3) +/* 8018EAE8 0018BA48 28 1F 00 00 */ cmplwi r31, 0 +/* 8018EAEC 0018BA4C 41 82 00 38 */ beq lbl_8018EB24 +/* 8018EAF0 0018BA50 7F E3 FB 78 */ mr r3, r31 +/* 8018EAF4 0018BA54 38 9E 00 0C */ addi r4, r30, 0xc +/* 8018EAF8 0018BA58 4B F8 C1 A9 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 8018EAFC 0018BA5C C0 7F 00 E8 */ lfs f3, 0xe8(r31) +/* 8018EB00 0018BA60 C0 1E 00 0C */ lfs f0, 0xc(r30) +/* 8018EB04 0018BA64 C0 5E 00 10 */ lfs f2, 0x10(r30) +/* 8018EB08 0018BA68 C0 3E 00 14 */ lfs f1, 0x14(r30) +/* 8018EB0C 0018BA6C EC 03 00 32 */ fmuls f0, f3, f0 +/* 8018EB10 0018BA70 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 8018EB14 0018BA74 EC 23 00 72 */ fmuls f1, f3, f1 +/* 8018EB18 0018BA78 D0 1F 00 FC */ stfs f0, 0xfc(r31) +/* 8018EB1C 0018BA7C D0 5F 01 00 */ stfs f2, 0x100(r31) +/* 8018EB20 0018BA80 D0 3F 01 04 */ stfs f1, 0x104(r31) +lbl_8018EB24: +/* 8018EB24 0018BA84 88 1E 00 18 */ lbz r0, 0x18(r30) +/* 8018EB28 0018BA88 38 60 00 01 */ li r3, 1 +/* 8018EB2C 0018BA8C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8018EB30 0018BA90 98 1E 00 18 */ stb r0, 0x18(r30) +lbl_8018EB34: +/* 8018EB34 0018BA94 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8018EB38 0018BA98 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8018EB3C 0018BA9C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8018EB40 0018BAA0 7C 08 03 A6 */ mtlr r0 +/* 8018EB44 0018BAA4 38 21 00 20 */ addi r1, r1, 0x20 +/* 8018EB48 0018BAA8 4E 80 00 20 */ blr + +.global __ct__11CBSWallHangFv +__ct__11CBSWallHangFv: +/* 8018EB4C 0018BAAC 3C C0 80 3E */ lis r6, lbl_803E1318@ha +/* 8018EB50 0018BAB0 3C A0 80 3E */ lis r5, lbl_803E43A0@ha +/* 8018EB54 0018BAB4 38 06 13 18 */ addi r0, r6, lbl_803E1318@l +/* 8018EB58 0018BAB8 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8018EB5C 0018BABC 90 03 00 00 */ stw r0, 0(r3) +/* 8018EB60 0018BAC0 38 C5 43 A0 */ addi r6, r5, lbl_803E43A0@l +/* 8018EB64 0018BAC4 38 A4 66 A0 */ addi r5, r4, skZero3f@l +/* 8018EB68 0018BAC8 38 00 FF FF */ li r0, -1 +/* 8018EB6C 0018BACC 90 C3 00 00 */ stw r6, 0(r3) +/* 8018EB70 0018BAD0 38 80 00 00 */ li r4, 0 +/* 8018EB74 0018BAD4 90 03 00 04 */ stw r0, 4(r3) +/* 8018EB78 0018BAD8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8018EB7C 0018BADC B0 03 00 08 */ sth r0, 8(r3) +/* 8018EB80 0018BAE0 C0 05 00 00 */ lfs f0, 0(r5) +/* 8018EB84 0018BAE4 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 8018EB88 0018BAE8 C0 05 00 04 */ lfs f0, 4(r5) +/* 8018EB8C 0018BAEC D0 03 00 10 */ stfs f0, 0x10(r3) +/* 8018EB90 0018BAF0 C0 05 00 08 */ lfs f0, 8(r5) +/* 8018EB94 0018BAF4 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 8018EB98 0018BAF8 88 03 00 18 */ lbz r0, 0x18(r3) +/* 8018EB9C 0018BAFC 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 8018EBA0 0018BB00 98 03 00 18 */ stb r0, 0x18(r3) +/* 8018EBA4 0018BB04 88 03 00 18 */ lbz r0, 0x18(r3) +/* 8018EBA8 0018BB08 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 8018EBAC 0018BB0C 98 03 00 18 */ stb r0, 0x18(r3) +/* 8018EBB0 0018BB10 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CAABoxFilter.s b/asm/Kyoto_CWD/CAABoxFilter.s new file mode 100644 index 00000000..949a0e7c --- /dev/null +++ b/asm/Kyoto_CWD/CAABoxFilter.s @@ -0,0 +1,132 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global Filter__12CAABoxFilterCFRC18CCollisionInfoListR18CCollisionInfoList +Filter__12CAABoxFilterCFRC18CCollisionInfoListR18CCollisionInfoList: +/* 80185850 001827B0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80185854 001827B4 7C 08 02 A6 */ mflr r0 +/* 80185858 001827B8 7C 83 23 78 */ mr r3, r4 +/* 8018585C 001827BC 7C A4 2B 78 */ mr r4, r5 +/* 80185860 001827C0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80185864 001827C4 48 00 00 15 */ bl FilterBoxFloorCollisions__12CAABoxFilterFRC18CCollisionInfoListR18CCollisionInfoList +/* 80185868 001827C8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018586C 001827CC 7C 08 03 A6 */ mtlr r0 +/* 80185870 001827D0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80185874 001827D4 4E 80 00 20 */ blr + +.global FilterBoxFloorCollisions__12CAABoxFilterFRC18CCollisionInfoListR18CCollisionInfoList +FilterBoxFloorCollisions__12CAABoxFilterFRC18CCollisionInfoListR18CCollisionInfoList: +/* 80185878 001827D8 94 21 F3 D0 */ stwu r1, -0xc30(r1) +/* 8018587C 001827DC 7C 08 02 A6 */ mflr r0 +/* 80185880 001827E0 90 01 0C 34 */ stw r0, 0xc34(r1) +/* 80185884 001827E4 DB E1 0C 20 */ stfd f31, 0xc20(r1) +/* 80185888 001827E8 F3 E1 0C 28 */ psq_st f31, -984(r1), 0, qr0 +/* 8018588C 001827EC 93 E1 0C 1C */ stw r31, 0xc1c(r1) +/* 80185890 001827F0 93 C1 0C 18 */ stw r30, 0xc18(r1) +/* 80185894 001827F4 93 A1 0C 14 */ stw r29, 0xc14(r1) +/* 80185898 001827F8 93 81 0C 10 */ stw r28, 0xc10(r1) +/* 8018589C 001827FC 7C 7E 1B 78 */ mr r30, r3 +/* 801858A0 00182800 C3 E2 A3 08 */ lfs f31, lbl_805AC028@sda21(r2) +/* 801858A4 00182804 80 03 00 00 */ lwz r0, 0(r3) +/* 801858A8 00182808 7C 9F 23 78 */ mr r31, r4 +/* 801858AC 0018280C 38 FE 00 04 */ addi r7, r30, 4 +/* 801858B0 00182810 3C A0 40 00 */ lis r5, 0x4000 +/* 801858B4 00182814 1C 00 00 60 */ mulli r0, r0, 0x60 +/* 801858B8 00182818 38 80 00 00 */ li r4, 0 +/* 801858BC 0018281C 7C DE 02 14 */ add r6, r30, r0 +/* 801858C0 00182820 38 C6 00 04 */ addi r6, r6, 4 +/* 801858C4 00182824 48 00 00 38 */ b lbl_801858FC +lbl_801858C8: +/* 801858C8 00182828 80 07 00 38 */ lwz r0, 0x38(r7) +/* 801858CC 0018282C 80 67 00 3C */ lwz r3, 0x3c(r7) +/* 801858D0 00182830 7C 00 20 38 */ and r0, r0, r4 +/* 801858D4 00182834 7C 63 28 38 */ and r3, r3, r5 +/* 801858D8 00182838 7C 63 22 78 */ xor r3, r3, r4 +/* 801858DC 0018283C 7C 00 22 78 */ xor r0, r0, r4 +/* 801858E0 00182840 7C 60 03 79 */ or. r0, r3, r0 +/* 801858E4 00182844 41 82 00 14 */ beq lbl_801858F8 +/* 801858E8 00182848 C0 07 00 08 */ lfs f0, 8(r7) +/* 801858EC 0018284C FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 801858F0 00182850 40 80 00 08 */ bge lbl_801858F8 +/* 801858F4 00182854 FF E0 00 90 */ fmr f31, f0 +lbl_801858F8: +/* 801858F8 00182858 38 E7 00 60 */ addi r7, r7, 0x60 +lbl_801858FC: +/* 801858FC 0018285C 7C 07 30 40 */ cmplw r7, r6 +/* 80185900 00182860 40 82 FF C8 */ bne lbl_801858C8 +/* 80185904 00182864 38 00 00 00 */ li r0, 0 +/* 80185908 00182868 3B 9E 00 04 */ addi r28, r30, 4 +/* 8018590C 0018286C 90 01 00 08 */ stw r0, 8(r1) +/* 80185910 00182870 3F A0 80 00 */ lis r29, 0x8000 +/* 80185914 00182874 48 00 00 5C */ b lbl_80185970 +lbl_80185918: +/* 80185918 00182878 80 7C 00 3C */ lwz r3, 0x3c(r28) +/* 8018591C 0018287C 38 80 00 00 */ li r4, 0 +/* 80185920 00182880 80 1C 00 38 */ lwz r0, 0x38(r28) +/* 80185924 00182884 7C 63 E8 38 */ and r3, r3, r29 +/* 80185928 00182888 7C 00 20 38 */ and r0, r0, r4 +/* 8018592C 0018288C 7C 63 22 78 */ xor r3, r3, r4 +/* 80185930 00182890 7C 00 22 78 */ xor r0, r0, r4 +/* 80185934 00182894 7C 60 03 79 */ or. r0, r3, r0 +/* 80185938 00182898 41 82 00 24 */ beq lbl_8018595C +/* 8018593C 0018289C C0 1C 00 08 */ lfs f0, 8(r28) +/* 80185940 001828A0 FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 80185944 001828A4 40 80 00 28 */ bge lbl_8018596C +/* 80185948 001828A8 7F 84 E3 78 */ mr r4, r28 +/* 8018594C 001828AC 38 61 00 08 */ addi r3, r1, 8 +/* 80185950 001828B0 38 A0 00 00 */ li r5, 0 +/* 80185954 001828B4 4B FF FC CD */ bl Add__18CCollisionInfoListFRC14CCollisionInfob +/* 80185958 001828B8 48 00 00 14 */ b lbl_8018596C +lbl_8018595C: +/* 8018595C 001828BC 7F 84 E3 78 */ mr r4, r28 +/* 80185960 001828C0 38 61 00 08 */ addi r3, r1, 8 +/* 80185964 001828C4 38 A0 00 00 */ li r5, 0 +/* 80185968 001828C8 4B FF FC B9 */ bl Add__18CCollisionInfoListFRC14CCollisionInfob +lbl_8018596C: +/* 8018596C 001828CC 3B 9C 00 60 */ addi r28, r28, 0x60 +lbl_80185970: +/* 80185970 001828D0 80 1E 00 00 */ lwz r0, 0(r30) +/* 80185974 001828D4 1C 00 00 60 */ mulli r0, r0, 0x60 +/* 80185978 001828D8 7C 7E 02 14 */ add r3, r30, r0 +/* 8018597C 001828DC 38 03 00 04 */ addi r0, r3, 4 +/* 80185980 001828E0 7C 1C 00 40 */ cmplw r28, r0 +/* 80185984 001828E4 40 82 FF 94 */ bne lbl_80185918 +/* 80185988 001828E8 7F E4 FB 78 */ mr r4, r31 +/* 8018598C 001828EC 38 61 00 08 */ addi r3, r1, 8 +/* 80185990 001828F0 48 14 C7 25 */ bl AddAverageToFront__13CollisionUtilFRC18CCollisionInfoListR18CCollisionInfoList +/* 80185994 001828F4 80 A1 00 08 */ lwz r5, 8(r1) +/* 80185998 001828F8 38 60 00 00 */ li r3, 0 +/* 8018599C 001828FC 2C 05 00 00 */ cmpwi r5, 0 +/* 801859A0 00182900 40 81 00 40 */ ble lbl_801859E0 +/* 801859A4 00182904 2C 05 00 08 */ cmpwi r5, 8 +/* 801859A8 00182908 38 85 FF F8 */ addi r4, r5, -8 +/* 801859AC 0018290C 40 81 00 20 */ ble lbl_801859CC +/* 801859B0 00182910 38 04 00 07 */ addi r0, r4, 7 +/* 801859B4 00182914 54 00 E8 FE */ srwi r0, r0, 3 +/* 801859B8 00182918 7C 09 03 A6 */ mtctr r0 +/* 801859BC 0018291C 2C 04 00 00 */ cmpwi r4, 0 +/* 801859C0 00182920 40 81 00 0C */ ble lbl_801859CC +lbl_801859C4: +/* 801859C4 00182924 38 63 00 08 */ addi r3, r3, 8 +/* 801859C8 00182928 42 00 FF FC */ bdnz lbl_801859C4 +lbl_801859CC: +/* 801859CC 0018292C 7C 03 28 50 */ subf r0, r3, r5 +/* 801859D0 00182930 7C 09 03 A6 */ mtctr r0 +/* 801859D4 00182934 7C 03 28 00 */ cmpw r3, r5 +/* 801859D8 00182938 40 80 00 08 */ bge lbl_801859E0 +lbl_801859DC: +/* 801859DC 0018293C 42 00 00 00 */ bdnz lbl_801859DC +lbl_801859E0: +/* 801859E0 00182940 38 00 00 00 */ li r0, 0 +/* 801859E4 00182944 90 01 00 08 */ stw r0, 8(r1) +/* 801859E8 00182948 E3 E1 0C 28 */ psq_l f31, -984(r1), 0, qr0 +/* 801859EC 0018294C 80 01 0C 34 */ lwz r0, 0xc34(r1) +/* 801859F0 00182950 CB E1 0C 20 */ lfd f31, 0xc20(r1) +/* 801859F4 00182954 83 E1 0C 1C */ lwz r31, 0xc1c(r1) +/* 801859F8 00182958 83 C1 0C 18 */ lwz r30, 0xc18(r1) +/* 801859FC 0018295C 83 A1 0C 14 */ lwz r29, 0xc14(r1) +/* 80185A00 00182960 83 81 0C 10 */ lwz r28, 0xc10(r1) +/* 80185A04 00182964 7C 08 03 A6 */ mtlr r0 +/* 80185A08 00182968 38 21 0C 30 */ addi r1, r1, 0xc30 +/* 80185A0C 0018296C 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CBallFilter.s b/asm/Kyoto_CWD/CBallFilter.s new file mode 100644 index 00000000..8f1961f6 --- /dev/null +++ b/asm/Kyoto_CWD/CBallFilter.s @@ -0,0 +1,16 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global Filter__11CBallFilterCFRC18CCollisionInfoListR18CCollisionInfoList +Filter__11CBallFilterCFRC18CCollisionInfoListR18CCollisionInfoList: +/* 80185828 00182788 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018582C 0018278C 7C 08 02 A6 */ mflr r0 +/* 80185830 00182790 7C 83 23 78 */ mr r3, r4 +/* 80185834 00182794 7C A4 2B 78 */ mr r4, r5 +/* 80185838 00182798 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018583C 0018279C 48 14 C8 79 */ bl AddAverageToFront__13CollisionUtilFRC18CCollisionInfoListR18CCollisionInfoList +/* 80185840 001827A0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80185844 001827A4 7C 08 03 A6 */ mtlr r0 +/* 80185848 001827A8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018584C 001827AC 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CBoneTracking.s b/asm/Kyoto_CWD/CBoneTracking.s new file mode 100644 index 00000000..2896c585 --- /dev/null +++ b/asm/Kyoto_CWD/CBoneTracking.s @@ -0,0 +1,632 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global SetNoHorizontalAim__13CBoneTrackingFb +SetNoHorizontalAim__13CBoneTrackingFb: +/* 801751A8 00172108 88 03 00 36 */ lbz r0, 0x36(r3) +/* 801751AC 0017210C 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c +/* 801751B0 00172110 98 03 00 36 */ stb r0, 0x36(r3) +/* 801751B4 00172114 4E 80 00 20 */ blr + +.global SetTargetPosition__13CBoneTrackingFRC9CVector3f +SetTargetPosition__13CBoneTrackingFRC9CVector3f: +/* 801751B8 00172118 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801751BC 0017211C 28 00 00 00 */ cmplwi r0, 0 +/* 801751C0 00172120 40 82 00 30 */ bne lbl_801751F0 +/* 801751C4 00172124 34 A3 00 24 */ addic. r5, r3, 0x24 +/* 801751C8 00172128 41 82 00 1C */ beq lbl_801751E4 +/* 801751CC 0017212C C0 04 00 00 */ lfs f0, 0(r4) +/* 801751D0 00172130 D0 05 00 00 */ stfs f0, 0(r5) +/* 801751D4 00172134 C0 04 00 04 */ lfs f0, 4(r4) +/* 801751D8 00172138 D0 05 00 04 */ stfs f0, 4(r5) +/* 801751DC 0017213C C0 04 00 08 */ lfs f0, 8(r4) +/* 801751E0 00172140 D0 05 00 08 */ stfs f0, 8(r5) +lbl_801751E4: +/* 801751E4 00172144 38 00 00 01 */ li r0, 1 +/* 801751E8 00172148 98 03 00 30 */ stb r0, 0x30(r3) +/* 801751EC 0017214C 4E 80 00 20 */ blr +lbl_801751F0: +/* 801751F0 00172150 C0 04 00 00 */ lfs f0, 0(r4) +/* 801751F4 00172154 D0 03 00 24 */ stfs f0, 0x24(r3) +/* 801751F8 00172158 C0 04 00 04 */ lfs f0, 4(r4) +/* 801751FC 0017215C D0 03 00 28 */ stfs f0, 0x28(r3) +/* 80175200 00172160 C0 04 00 08 */ lfs f0, 8(r4) +/* 80175204 00172164 D0 03 00 2C */ stfs f0, 0x2c(r3) +/* 80175208 00172168 4E 80 00 20 */ blr + +.global UnsetTarget__13CBoneTrackingFv +UnsetTarget__13CBoneTrackingFv: +/* 8017520C 0017216C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80175210 00172170 B0 03 00 34 */ sth r0, 0x34(r3) +/* 80175214 00172174 4E 80 00 20 */ blr + +.global SetTarget__13CBoneTrackingF9TUniqueId +SetTarget__13CBoneTrackingF9TUniqueId: +/* 80175218 00172178 A0 04 00 00 */ lhz r0, 0(r4) +/* 8017521C 0017217C B0 03 00 34 */ sth r0, 0x34(r3) +/* 80175220 00172180 4E 80 00 20 */ blr + +.global SetActive__13CBoneTrackingFb +SetActive__13CBoneTrackingFb: +/* 80175224 00172184 88 03 00 36 */ lbz r0, 0x36(r3) +/* 80175228 00172188 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 8017522C 0017218C 98 03 00 36 */ stb r0, 0x36(r3) +/* 80175230 00172190 4E 80 00 20 */ blr + +.global PreRender__13CBoneTrackingFRC13CStateManagerR9CAnimDataRC12CTransform4fRC9CVector3fb +PreRender__13CBoneTrackingFRC13CStateManagerR9CAnimDataRC12CTransform4fRC9CVector3fb: +/* 80175234 00172194 94 21 FD A0 */ stwu r1, -0x260(r1) +/* 80175238 00172198 7C 08 02 A6 */ mflr r0 +/* 8017523C 0017219C 90 01 02 64 */ stw r0, 0x264(r1) +/* 80175240 001721A0 DB E1 02 50 */ stfd f31, 0x250(r1) +/* 80175244 001721A4 F3 E1 02 58 */ psq_st f31, 600(r1), 0, qr0 +/* 80175248 001721A8 BF 01 02 30 */ stmw r24, 0x230(r1) +/* 8017524C 001721AC 7C 7E 1B 78 */ mr r30, r3 +/* 80175250 001721B0 7C 99 23 78 */ mr r25, r4 +/* 80175254 001721B4 88 03 00 14 */ lbz r0, 0x14(r3) +/* 80175258 001721B8 7C BF 2B 78 */ mr r31, r5 +/* 8017525C 001721BC 7C DA 33 78 */ mr r26, r6 +/* 80175260 001721C0 7C FB 3B 78 */ mr r27, r7 +/* 80175264 001721C4 28 00 00 00 */ cmplwi r0, 0 +/* 80175268 001721C8 7D 18 43 78 */ mr r24, r8 +/* 8017526C 001721CC 41 82 06 80 */ beq lbl_801758EC +/* 80175270 001721D0 A0 1E 00 34 */ lhz r0, 0x34(r30) +/* 80175274 001721D4 7F 23 CB 78 */ mr r3, r25 +/* 80175278 001721D8 3B BF 02 FC */ addi r29, r31, 0x2fc +/* 8017527C 001721DC 38 81 00 10 */ addi r4, r1, 0x10 +/* 80175280 001721E0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80175284 001721E4 4B ED 73 21 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80175288 001721E8 7C 64 1B 78 */ mr r4, r3 +/* 8017528C 001721EC 38 61 00 38 */ addi r3, r1, 0x38 +/* 80175290 001721F0 4B F3 AA 01 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80175294 001721F4 88 1E 00 36 */ lbz r0, 0x36(r30) +/* 80175298 001721F8 83 83 00 04 */ lwz r28, 4(r3) +/* 8017529C 001721FC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801752A0 00172200 41 82 04 48 */ beq lbl_801756E8 +/* 801752A4 00172204 57 00 06 3F */ clrlwi. r0, r24, 0x18 +/* 801752A8 00172208 41 82 04 40 */ beq lbl_801756E8 +/* 801752AC 0017220C 28 1C 00 00 */ cmplwi r28, 0 +/* 801752B0 00172210 40 82 00 10 */ bne lbl_801752C0 +/* 801752B4 00172214 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 801752B8 00172218 28 00 00 00 */ cmplwi r0, 0 +/* 801752BC 0017221C 41 82 04 2C */ beq lbl_801756E8 +lbl_801752C0: +/* 801752C0 00172220 88 1E 00 36 */ lbz r0, 0x36(r30) +/* 801752C4 00172224 38 60 00 01 */ li r3, 1 +/* 801752C8 00172228 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801752CC 0017222C 98 1E 00 36 */ stb r0, 0x36(r30) +/* 801752D0 00172230 88 1D 00 2C */ lbz r0, 0x2c(r29) +/* 801752D4 00172234 28 00 00 00 */ cmplwi r0, 0 +/* 801752D8 00172238 41 82 00 0C */ beq lbl_801752E4 +/* 801752DC 0017223C 38 7D 00 0C */ addi r3, r29, 0xc +/* 801752E0 00172240 48 00 00 08 */ b lbl_801752E8 +lbl_801752E4: +/* 801752E4 00172244 7F A3 EB 78 */ mr r3, r29 +lbl_801752E8: +/* 801752E8 00172248 88 1E 00 36 */ lbz r0, 0x36(r30) +/* 801752EC 0017224C 80 63 00 08 */ lwz r3, 8(r3) +/* 801752F0 00172250 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801752F4 00172254 41 82 00 0C */ beq lbl_80175300 +/* 801752F8 00172258 38 BE 00 14 */ addi r5, r30, 0x14 +/* 801752FC 0017225C 48 00 00 2C */ b lbl_80175328 +lbl_80175300: +/* 80175300 00172260 88 1E 00 14 */ lbz r0, 0x14(r30) +/* 80175304 00172264 38 A1 00 08 */ addi r5, r1, 8 +/* 80175308 00172268 80 83 00 00 */ lwz r4, 0(r3) +/* 8017530C 0017226C 54 00 08 3C */ slwi r0, r0, 1 +/* 80175310 00172270 7C 64 02 14 */ add r3, r4, r0 +/* 80175314 00172274 80 84 00 D0 */ lwz r4, 0xd0(r4) +/* 80175318 00172278 88 03 00 09 */ lbz r0, 9(r3) +/* 8017531C 0017227C 54 00 2C F4 */ rlwinm r0, r0, 5, 0x13, 0x1a +/* 80175320 00172280 7C 04 00 AE */ lbzx r0, r4, r0 +/* 80175324 00172284 98 01 00 08 */ stb r0, 8(r1) +lbl_80175328: +/* 80175328 00172288 88 05 00 00 */ lbz r0, 0(r5) +/* 8017532C 0017228C 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 80175330 00172290 38 83 66 70 */ addi r4, r3, skIdentity4f@l +/* 80175334 00172294 98 01 00 0C */ stb r0, 0xc(r1) +/* 80175338 00172298 38 61 01 FC */ addi r3, r1, 0x1fc +/* 8017533C 0017229C 48 19 D8 39 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80175340 001722A0 7F A3 EB 78 */ mr r3, r29 +/* 80175344 001722A4 38 81 00 0C */ addi r4, r1, 0xc +/* 80175348 001722A8 38 A1 01 FC */ addi r5, r1, 0x1fc +/* 8017534C 001722AC 48 18 70 1D */ bl BuildTransform__21CHierarchyPoseBuilderCFRC6CSegIdR12CTransform4f +/* 80175350 001722B0 88 7E 00 36 */ lbz r3, 0x36(r30) +/* 80175354 001722B4 C0 A1 02 28 */ lfs f5, 0x228(r1) +/* 80175358 001722B8 54 60 E7 FF */ rlwinm. r0, r3, 0x1c, 0x1f, 0x1f +/* 8017535C 001722BC C0 81 02 18 */ lfs f4, 0x218(r1) +/* 80175360 001722C0 C0 61 02 08 */ lfs f3, 0x208(r1) +/* 80175364 001722C4 41 82 00 38 */ beq lbl_8017539C +/* 80175368 001722C8 54 60 DF FF */ rlwinm. r0, r3, 0x1b, 0x1f, 0x1f +/* 8017536C 001722CC 40 82 00 30 */ bne lbl_8017539C +/* 80175370 001722D0 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 80175374 001722D4 38 61 01 CC */ addi r3, r1, 0x1cc +/* 80175378 001722D8 38 84 66 70 */ addi r4, r4, skIdentity4f@l +/* 8017537C 001722DC 48 19 D7 F9 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80175380 001722E0 7F A3 EB 78 */ mr r3, r29 +/* 80175384 001722E4 38 9E 00 14 */ addi r4, r30, 0x14 +/* 80175388 001722E8 38 A1 01 CC */ addi r5, r1, 0x1cc +/* 8017538C 001722EC 48 18 6F DD */ bl BuildTransform__21CHierarchyPoseBuilderCFRC6CSegIdR12CTransform4f +/* 80175390 001722F0 C0 61 01 D8 */ lfs f3, 0x1d8(r1) +/* 80175394 001722F4 C0 81 01 E8 */ lfs f4, 0x1e8(r1) +/* 80175398 001722F8 C0 A1 01 F8 */ lfs f5, 0x1f8(r1) +lbl_8017539C: +/* 8017539C 001722FC C0 5B 00 08 */ lfs f2, 8(r27) +/* 801753A0 00172300 7F 44 D3 78 */ mr r4, r26 +/* 801753A4 00172304 C0 3B 00 04 */ lfs f1, 4(r27) +/* 801753A8 00172308 38 61 01 6C */ addi r3, r1, 0x16c +/* 801753AC 0017230C C0 1B 00 00 */ lfs f0, 0(r27) +/* 801753B0 00172310 EC 42 01 72 */ fmuls f2, f2, f5 +/* 801753B4 00172314 EC 21 01 32 */ fmuls f1, f1, f4 +/* 801753B8 00172318 38 A1 01 FC */ addi r5, r1, 0x1fc +/* 801753BC 0017231C EC 00 00 F2 */ fmuls f0, f0, f3 +/* 801753C0 00172320 D0 41 02 28 */ stfs f2, 0x228(r1) +/* 801753C4 00172324 D0 01 02 08 */ stfs f0, 0x208(r1) +/* 801753C8 00172328 D0 21 02 18 */ stfs f1, 0x218(r1) +/* 801753CC 0017232C 48 19 D5 85 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 801753D0 00172330 38 61 01 9C */ addi r3, r1, 0x19c +/* 801753D4 00172334 38 81 01 6C */ addi r4, r1, 0x16c +/* 801753D8 00172338 48 19 D7 9D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801753DC 0017233C 28 1C 00 00 */ cmplwi r28, 0 +/* 801753E0 00172340 41 82 00 2C */ beq lbl_8017540C +/* 801753E4 00172344 7F 84 E3 78 */ mr r4, r28 +/* 801753E8 00172348 7F 25 CB 78 */ mr r5, r25 +/* 801753EC 0017234C 81 9C 00 00 */ lwz r12, 0(r28) +/* 801753F0 00172350 38 61 01 04 */ addi r3, r1, 0x104 +/* 801753F4 00172354 C0 22 A1 78 */ lfs f1, lbl_805ABE98@sda21(r2) +/* 801753F8 00172358 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801753FC 0017235C 7D 89 03 A6 */ mtctr r12 +/* 80175400 00172360 4E 80 04 21 */ bctrl +/* 80175404 00172364 38 C1 01 04 */ addi r6, r1, 0x104 +/* 80175408 00172368 48 00 00 08 */ b lbl_80175410 +lbl_8017540C: +/* 8017540C 0017236C 38 DE 00 24 */ addi r6, r30, 0x24 +lbl_80175410: +/* 80175410 00172370 C0 46 00 04 */ lfs f2, 4(r6) +/* 80175414 00172374 38 61 00 EC */ addi r3, r1, 0xec +/* 80175418 00172378 C0 21 01 B8 */ lfs f1, 0x1b8(r1) +/* 8017541C 0017237C 38 81 01 9C */ addi r4, r1, 0x19c +/* 80175420 00172380 C0 86 00 08 */ lfs f4, 8(r6) +/* 80175424 00172384 38 A1 00 40 */ addi r5, r1, 0x40 +/* 80175428 00172388 C0 01 01 C8 */ lfs f0, 0x1c8(r1) +/* 8017542C 0017238C EC 22 08 28 */ fsubs f1, f2, f1 +/* 80175430 00172390 C0 66 00 00 */ lfs f3, 0(r6) +/* 80175434 00172394 C0 41 01 A8 */ lfs f2, 0x1a8(r1) +/* 80175438 00172398 EC 04 00 28 */ fsubs f0, f4, f0 +/* 8017543C 0017239C D0 21 00 44 */ stfs f1, 0x44(r1) +/* 80175440 001723A0 EC 23 10 28 */ fsubs f1, f3, f2 +/* 80175444 001723A4 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 80175448 001723A8 D0 21 00 40 */ stfs f1, 0x40(r1) +/* 8017544C 001723AC 48 19 D5 D9 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 80175450 001723B0 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 80175454 001723B4 38 81 00 EC */ addi r4, r1, 0xec +/* 80175458 001723B8 48 19 F3 F9 */ bl AsNormalized__9CVector3fCFv +/* 8017545C 001723BC C0 21 00 F8 */ lfs f1, 0xf8(r1) +/* 80175460 001723C0 C0 41 00 FC */ lfs f2, 0xfc(r1) +/* 80175464 001723C4 C0 01 01 00 */ lfs f0, 0x100(r1) +/* 80175468 001723C8 D0 21 01 60 */ stfs f1, 0x160(r1) +/* 8017546C 001723CC D0 41 01 64 */ stfs f2, 0x164(r1) +/* 80175470 001723D0 D0 01 01 68 */ stfs f0, 0x168(r1) +/* 80175474 001723D4 88 1E 00 36 */ lbz r0, 0x36(r30) +/* 80175478 001723D8 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 8017547C 001723DC 41 82 00 28 */ beq lbl_801754A4 +/* 80175480 001723E0 EC 21 00 72 */ fmuls f1, f1, f1 +/* 80175484 001723E4 EC 02 00 B2 */ fmuls f0, f2, f2 +/* 80175488 001723E8 EC 21 00 2A */ fadds f1, f1, f0 +/* 8017548C 001723EC 48 1A 00 75 */ bl SqrtF__5CMathFf +/* 80175490 001723F0 C0 41 01 68 */ lfs f2, 0x168(r1) +/* 80175494 001723F4 C0 02 A1 78 */ lfs f0, lbl_805ABE98@sda21(r2) +/* 80175498 001723F8 D0 21 01 64 */ stfs f1, 0x164(r1) +/* 8017549C 001723FC D0 01 01 60 */ stfs f0, 0x160(r1) +/* 801754A0 00172400 D0 41 01 68 */ stfs f2, 0x168(r1) +lbl_801754A4: +/* 801754A4 00172404 88 1E 00 36 */ lbz r0, 0x36(r30) +/* 801754A8 00172408 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 801754AC 0017240C 41 82 00 94 */ beq lbl_80175540 +/* 801754B0 00172410 C0 41 02 20 */ lfs f2, 0x220(r1) +/* 801754B4 00172414 C0 21 02 00 */ lfs f1, 0x200(r1) +/* 801754B8 00172418 FF E0 10 50 */ fneg f31, f2 +/* 801754BC 0017241C C0 02 A1 7C */ lfs f0, lbl_805ABE9C@sda21(r2) +/* 801754C0 00172420 C0 61 02 10 */ lfs f3, 0x210(r1) +/* 801754C4 00172424 D0 21 00 E0 */ stfs f1, 0xe0(r1) +/* 801754C8 00172428 EC 3F 07 FC */ fnmsubs f1, f31, f31, f0 +/* 801754CC 0017242C D0 61 00 E4 */ stfs f3, 0xe4(r1) +/* 801754D0 00172430 D0 41 00 E8 */ stfs f2, 0xe8(r1) +/* 801754D4 00172434 48 1A 00 2D */ bl SqrtF__5CMathFf +/* 801754D8 00172438 C0 02 A1 78 */ lfs f0, lbl_805ABE98@sda21(r2) +/* 801754DC 0017243C 38 61 01 54 */ addi r3, r1, 0x154 +/* 801754E0 00172440 D0 21 01 58 */ stfs f1, 0x158(r1) +/* 801754E4 00172444 38 81 01 60 */ addi r4, r1, 0x160 +/* 801754E8 00172448 D0 01 01 54 */ stfs f0, 0x154(r1) +/* 801754EC 0017244C D3 E1 01 5C */ stfs f31, 0x15c(r1) +/* 801754F0 00172450 48 19 F1 41 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 801754F4 00172454 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 801754F8 00172458 38 61 00 34 */ addi r3, r1, 0x34 +/* 801754FC 0017245C 38 9E 00 1C */ addi r4, r30, 0x1c +/* 80175500 00172460 4B F0 88 E1 */ bl "Min__5CMathFRCfRCf" +/* 80175504 00172464 C0 03 00 00 */ lfs f0, 0(r3) +/* 80175508 00172468 38 61 00 D4 */ addi r3, r1, 0xd4 +/* 8017550C 0017246C 38 81 01 54 */ addi r4, r1, 0x154 +/* 80175510 00172470 38 A1 01 60 */ addi r5, r1, 0x160 +/* 80175514 00172474 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 80175518 00172478 38 C1 00 1C */ addi r6, r1, 0x1c +/* 8017551C 0017247C D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80175520 00172480 48 19 F4 35 */ bl Slerp__9CVector3fFRC9CVector3fRC9CVector3fRC9CRelAngle +/* 80175524 00172484 C0 41 00 D4 */ lfs f2, 0xd4(r1) +/* 80175528 00172488 C0 21 00 D8 */ lfs f1, 0xd8(r1) +/* 8017552C 0017248C C0 01 00 DC */ lfs f0, 0xdc(r1) +/* 80175530 00172490 D0 41 01 60 */ stfs f2, 0x160(r1) +/* 80175534 00172494 D0 21 01 64 */ stfs f1, 0x164(r1) +/* 80175538 00172498 D0 01 01 68 */ stfs f0, 0x168(r1) +/* 8017553C 0017249C 48 00 00 60 */ b lbl_8017559C +lbl_80175540: +/* 80175540 001724A0 3C 60 80 5A */ lis r3, lbl_805A6724@ha +/* 80175544 001724A4 38 81 01 60 */ addi r4, r1, 0x160 +/* 80175548 001724A8 38 63 67 24 */ addi r3, r3, lbl_805A6724@l +/* 8017554C 001724AC 48 19 F0 E5 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 80175550 001724B0 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 80175554 001724B4 38 61 00 30 */ addi r3, r1, 0x30 +/* 80175558 001724B8 38 9E 00 1C */ addi r4, r30, 0x1c +/* 8017555C 001724BC 4B F0 88 85 */ bl "Min__5CMathFRCfRCf" +/* 80175560 001724C0 C0 03 00 00 */ lfs f0, 0(r3) +/* 80175564 001724C4 3C 60 80 5A */ lis r3, lbl_805A6724@ha +/* 80175568 001724C8 38 83 67 24 */ addi r4, r3, lbl_805A6724@l +/* 8017556C 001724CC 38 A1 01 60 */ addi r5, r1, 0x160 +/* 80175570 001724D0 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 80175574 001724D4 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 80175578 001724D8 38 C1 00 18 */ addi r6, r1, 0x18 +/* 8017557C 001724DC D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80175580 001724E0 48 19 F3 D5 */ bl Slerp__9CVector3fFRC9CVector3fRC9CVector3fRC9CRelAngle +/* 80175584 001724E4 C0 41 00 C8 */ lfs f2, 0xc8(r1) +/* 80175588 001724E8 C0 21 00 CC */ lfs f1, 0xcc(r1) +/* 8017558C 001724EC C0 01 00 D0 */ lfs f0, 0xd0(r1) +/* 80175590 001724F0 D0 41 01 60 */ stfs f2, 0x160(r1) +/* 80175594 001724F4 D0 21 01 64 */ stfs f1, 0x164(r1) +/* 80175598 001724F8 D0 01 01 68 */ stfs f0, 0x168(r1) +lbl_8017559C: +/* 8017559C 001724FC 3C 60 80 5A */ lis r3, lbl_805A6724@ha +/* 801755A0 00172500 7F C4 F3 78 */ mr r4, r30 +/* 801755A4 00172504 38 A3 67 24 */ addi r5, r3, lbl_805A6724@l +/* 801755A8 00172508 38 61 00 BC */ addi r3, r1, 0xbc +/* 801755AC 0017250C 48 19 BC B9 */ bl Transform__11CQuaternionCFRC9CVector3f +/* 801755B0 00172510 C0 41 00 BC */ lfs f2, 0xbc(r1) +/* 801755B4 00172514 38 61 01 48 */ addi r3, r1, 0x148 +/* 801755B8 00172518 C0 21 00 C0 */ lfs f1, 0xc0(r1) +/* 801755BC 0017251C 38 81 01 60 */ addi r4, r1, 0x160 +/* 801755C0 00172520 C0 01 00 C4 */ lfs f0, 0xc4(r1) +/* 801755C4 00172524 D0 41 01 48 */ stfs f2, 0x148(r1) +/* 801755C8 00172528 D0 21 01 4C */ stfs f1, 0x14c(r1) +/* 801755CC 0017252C D0 01 01 50 */ stfs f0, 0x150(r1) +/* 801755D0 00172530 48 19 F0 61 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 801755D4 00172534 C0 5E 00 18 */ lfs f2, 0x18(r30) +/* 801755D8 00172538 38 61 00 2C */ addi r3, r1, 0x2c +/* 801755DC 0017253C C0 1E 00 20 */ lfs f0, 0x20(r30) +/* 801755E0 00172540 38 81 00 28 */ addi r4, r1, 0x28 +/* 801755E4 00172544 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801755E8 00172548 EC 02 00 32 */ fmuls f0, f2, f0 +/* 801755EC 0017254C D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801755F0 00172550 4B F0 87 F1 */ bl "Min__5CMathFRCfRCf" +/* 801755F4 00172554 C3 E3 00 00 */ lfs f31, 0(r3) +/* 801755F8 00172558 C0 02 A1 80 */ lfs f0, lbl_805ABEA0@sda21(r2) +/* 801755FC 0017255C FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 80175600 00172560 40 81 00 98 */ ble lbl_80175698 +/* 80175604 00172564 C0 02 A1 84 */ lfs f0, lbl_805ABEA4@sda21(r2) +/* 80175608 00172568 38 61 00 94 */ addi r3, r1, 0x94 +/* 8017560C 0017256C 38 81 01 60 */ addi r4, r1, 0x160 +/* 80175610 00172570 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80175614 00172574 48 19 E7 BD */ bl __ct__11CUnitVectorFRC9CVector3f +/* 80175618 00172578 3C 80 80 5A */ lis r4, lbl_805A6724@ha +/* 8017561C 0017257C 7C 79 1B 78 */ mr r25, r3 +/* 80175620 00172580 38 84 67 24 */ addi r4, r4, lbl_805A6724@l +/* 80175624 00172584 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 80175628 00172588 48 19 E7 A9 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8017562C 0017258C 7C 64 1B 78 */ mr r4, r3 +/* 80175630 00172590 7F 25 CB 78 */ mr r5, r25 +/* 80175634 00172594 38 61 00 AC */ addi r3, r1, 0xac +/* 80175638 00172598 38 C1 00 14 */ addi r6, r1, 0x14 +/* 8017563C 0017259C 48 19 C0 59 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 80175640 001725A0 C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 80175644 001725A4 7F C4 F3 78 */ mr r4, r30 +/* 80175648 001725A8 C0 81 00 AC */ lfs f4, 0xac(r1) +/* 8017564C 001725AC 38 61 00 84 */ addi r3, r1, 0x84 +/* 80175650 001725B0 EC 3F 00 24 */ fdivs f1, f31, f0 +/* 80175654 001725B4 C0 61 00 B0 */ lfs f3, 0xb0(r1) +/* 80175658 001725B8 C0 41 00 B4 */ lfs f2, 0xb4(r1) +/* 8017565C 001725BC 38 A1 01 38 */ addi r5, r1, 0x138 +/* 80175660 001725C0 C0 01 00 B8 */ lfs f0, 0xb8(r1) +/* 80175664 001725C4 D0 81 01 38 */ stfs f4, 0x138(r1) +/* 80175668 001725C8 D0 61 01 3C */ stfs f3, 0x13c(r1) +/* 8017566C 001725CC D0 41 01 40 */ stfs f2, 0x140(r1) +/* 80175670 001725D0 D0 01 01 44 */ stfs f0, 0x144(r1) +/* 80175674 001725D4 48 19 BF 45 */ bl SlerpLocal__11CQuaternionFRC11CQuaternionRC11CQuaternionf +/* 80175678 001725D8 C0 01 00 84 */ lfs f0, 0x84(r1) +/* 8017567C 001725DC D0 1E 00 00 */ stfs f0, 0(r30) +/* 80175680 001725E0 80 61 00 88 */ lwz r3, 0x88(r1) +/* 80175684 001725E4 80 01 00 8C */ lwz r0, 0x8c(r1) +/* 80175688 001725E8 90 7E 00 04 */ stw r3, 4(r30) +/* 8017568C 001725EC 90 1E 00 08 */ stw r0, 8(r30) +/* 80175690 001725F0 80 01 00 90 */ lwz r0, 0x90(r1) +/* 80175694 001725F4 90 1E 00 0C */ stw r0, 0xc(r30) +lbl_80175698: +/* 80175698 001725F8 88 1E 00 14 */ lbz r0, 0x14(r30) +/* 8017569C 001725FC 38 60 00 00 */ li r3, 0 +/* 801756A0 00172600 80 BD 01 08 */ lwz r5, 0x108(r29) +/* 801756A4 00172604 54 00 08 3C */ slwi r0, r0, 1 +/* 801756A8 00172608 C0 1E 00 00 */ lfs f0, 0(r30) +/* 801756AC 0017260C 7C 9D 02 14 */ add r4, r29, r0 +/* 801756B0 00172610 88 04 00 41 */ lbz r0, 0x41(r4) +/* 801756B4 00172614 54 00 2C F4 */ rlwinm r0, r0, 5, 0x13, 0x1a +/* 801756B8 00172618 7C A5 02 14 */ add r5, r5, r0 +/* 801756BC 0017261C D0 05 00 04 */ stfs f0, 4(r5) +/* 801756C0 00172620 80 9E 00 04 */ lwz r4, 4(r30) +/* 801756C4 00172624 80 1E 00 08 */ lwz r0, 8(r30) +/* 801756C8 00172628 90 85 00 08 */ stw r4, 8(r5) +/* 801756CC 0017262C 90 05 00 0C */ stw r0, 0xc(r5) +/* 801756D0 00172630 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 801756D4 00172634 90 05 00 10 */ stw r0, 0x10(r5) +/* 801756D8 00172638 88 1F 02 20 */ lbz r0, 0x220(r31) +/* 801756DC 0017263C 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801756E0 00172640 98 1F 02 20 */ stb r0, 0x220(r31) +/* 801756E4 00172644 48 00 02 08 */ b lbl_801758EC +lbl_801756E8: +/* 801756E8 00172648 88 1E 00 36 */ lbz r0, 0x36(r30) +/* 801756EC 0017264C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801756F0 00172650 41 82 01 A0 */ beq lbl_80175890 +/* 801756F4 00172654 3C 60 80 5A */ lis r3, lbl_805A6724@ha +/* 801756F8 00172658 7F C4 F3 78 */ mr r4, r30 +/* 801756FC 0017265C 38 A3 67 24 */ addi r5, r3, lbl_805A6724@l +/* 80175700 00172660 38 61 00 78 */ addi r3, r1, 0x78 +/* 80175704 00172664 48 19 BB 61 */ bl Transform__11CQuaternionCFRC9CVector3f +/* 80175708 00172668 C0 41 00 78 */ lfs f2, 0x78(r1) +/* 8017570C 0017266C 3C 60 80 5A */ lis r3, lbl_805A6724@ha +/* 80175710 00172670 C0 21 00 7C */ lfs f1, 0x7c(r1) +/* 80175714 00172674 38 A3 67 24 */ addi r5, r3, lbl_805A6724@l +/* 80175718 00172678 C0 01 00 80 */ lfs f0, 0x80(r1) +/* 8017571C 0017267C 3B 9D 00 40 */ addi r28, r29, 0x40 +/* 80175720 00172680 D0 41 01 2C */ stfs f2, 0x12c(r1) +/* 80175724 00172684 38 61 00 6C */ addi r3, r1, 0x6c +/* 80175728 00172688 38 81 01 1C */ addi r4, r1, 0x11c +/* 8017572C 0017268C D0 21 01 30 */ stfs f1, 0x130(r1) +/* 80175730 00172690 D0 01 01 34 */ stfs f0, 0x134(r1) +/* 80175734 00172694 88 1E 00 14 */ lbz r0, 0x14(r30) +/* 80175738 00172698 80 FD 01 08 */ lwz r7, 0x108(r29) +/* 8017573C 0017269C 54 00 08 3C */ slwi r0, r0, 1 +/* 80175740 001726A0 7C DC 02 14 */ add r6, r28, r0 +/* 80175744 001726A4 88 06 00 01 */ lbz r0, 1(r6) +/* 80175748 001726A8 54 06 2C F4 */ rlwinm r6, r0, 5, 0x13, 0x1a +/* 8017574C 001726AC 38 C6 00 04 */ addi r6, r6, 4 +/* 80175750 001726B0 7C C7 32 14 */ add r6, r7, r6 +/* 80175754 001726B4 C0 26 00 04 */ lfs f1, 4(r6) +/* 80175758 001726B8 C0 46 00 08 */ lfs f2, 8(r6) +/* 8017575C 001726BC C0 66 00 0C */ lfs f3, 0xc(r6) +/* 80175760 001726C0 C0 06 00 00 */ lfs f0, 0(r6) +/* 80175764 001726C4 D0 01 01 1C */ stfs f0, 0x11c(r1) +/* 80175768 001726C8 D0 21 01 20 */ stfs f1, 0x120(r1) +/* 8017576C 001726CC D0 41 01 24 */ stfs f2, 0x124(r1) +/* 80175770 001726D0 D0 61 01 28 */ stfs f3, 0x128(r1) +/* 80175774 001726D4 48 19 BA F1 */ bl Transform__11CQuaternionCFRC9CVector3f +/* 80175778 001726D8 C0 41 00 6C */ lfs f2, 0x6c(r1) +/* 8017577C 001726DC 38 61 01 2C */ addi r3, r1, 0x12c +/* 80175780 001726E0 C0 21 00 70 */ lfs f1, 0x70(r1) +/* 80175784 001726E4 38 81 01 10 */ addi r4, r1, 0x110 +/* 80175788 001726E8 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 8017578C 001726EC D0 41 01 10 */ stfs f2, 0x110(r1) +/* 80175790 001726F0 D0 21 01 14 */ stfs f1, 0x114(r1) +/* 80175794 001726F4 D0 01 01 18 */ stfs f0, 0x118(r1) +/* 80175798 001726F8 48 19 EE 99 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 8017579C 001726FC C0 5E 00 18 */ lfs f2, 0x18(r30) +/* 801757A0 00172700 38 61 00 24 */ addi r3, r1, 0x24 +/* 801757A4 00172704 C0 1E 00 20 */ lfs f0, 0x20(r30) +/* 801757A8 00172708 38 81 00 20 */ addi r4, r1, 0x20 +/* 801757AC 0017270C D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801757B0 00172710 EC 02 00 32 */ fmuls f0, f2, f0 +/* 801757B4 00172714 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801757B8 00172718 4B F0 86 29 */ bl "Min__5CMathFRCfRCf" +/* 801757BC 0017271C C0 22 A1 88 */ lfs f1, lbl_805ABEA8@sda21(r2) +/* 801757C0 00172720 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 801757C4 00172724 C0 43 00 00 */ lfs f2, 0(r3) +/* 801757C8 00172728 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801757CC 0017272C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801757D0 00172730 40 81 00 8C */ ble lbl_8017585C +/* 801757D4 00172734 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 801757D8 00172738 7F C4 F3 78 */ mr r4, r30 +/* 801757DC 0017273C 38 61 00 5C */ addi r3, r1, 0x5c +/* 801757E0 00172740 38 A1 01 1C */ addi r5, r1, 0x11c +/* 801757E4 00172744 EC 22 00 24 */ fdivs f1, f2, f0 +/* 801757E8 00172748 48 19 BD D1 */ bl SlerpLocal__11CQuaternionFRC11CQuaternionRC11CQuaternionf +/* 801757EC 0017274C C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 801757F0 00172750 38 60 00 00 */ li r3, 0 +/* 801757F4 00172754 D0 1E 00 00 */ stfs f0, 0(r30) +/* 801757F8 00172758 80 81 00 60 */ lwz r4, 0x60(r1) +/* 801757FC 0017275C 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80175800 00172760 90 9E 00 04 */ stw r4, 4(r30) +/* 80175804 00172764 90 1E 00 08 */ stw r0, 8(r30) +/* 80175808 00172768 80 01 00 68 */ lwz r0, 0x68(r1) +/* 8017580C 0017276C 90 1E 00 0C */ stw r0, 0xc(r30) +/* 80175810 00172770 88 1E 00 14 */ lbz r0, 0x14(r30) +/* 80175814 00172774 80 BD 01 08 */ lwz r5, 0x108(r29) +/* 80175818 00172778 54 04 08 3C */ slwi r4, r0, 1 +/* 8017581C 0017277C C0 1E 00 00 */ lfs f0, 0(r30) +/* 80175820 00172780 38 04 00 01 */ addi r0, r4, 1 +/* 80175824 00172784 7C 1C 00 AE */ lbzx r0, r28, r0 +/* 80175828 00172788 54 00 2C F4 */ rlwinm r0, r0, 5, 0x13, 0x1a +/* 8017582C 0017278C 7C A5 02 14 */ add r5, r5, r0 +/* 80175830 00172790 D0 05 00 04 */ stfs f0, 4(r5) +/* 80175834 00172794 80 9E 00 04 */ lwz r4, 4(r30) +/* 80175838 00172798 80 1E 00 08 */ lwz r0, 8(r30) +/* 8017583C 0017279C 90 85 00 08 */ stw r4, 8(r5) +/* 80175840 001727A0 90 05 00 0C */ stw r0, 0xc(r5) +/* 80175844 001727A4 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 80175848 001727A8 90 05 00 10 */ stw r0, 0x10(r5) +/* 8017584C 001727AC 88 1F 02 20 */ lbz r0, 0x220(r31) +/* 80175850 001727B0 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 80175854 001727B4 98 1F 02 20 */ stb r0, 0x220(r31) +/* 80175858 001727B8 48 00 00 94 */ b lbl_801758EC +lbl_8017585C: +/* 8017585C 001727BC 88 1E 00 36 */ lbz r0, 0x36(r30) +/* 80175860 001727C0 38 60 00 00 */ li r3, 0 +/* 80175864 001727C4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80175868 001727C8 98 1E 00 36 */ stb r0, 0x36(r30) +/* 8017586C 001727CC C0 01 01 1C */ lfs f0, 0x11c(r1) +/* 80175870 001727D0 D0 1E 00 00 */ stfs f0, 0(r30) +/* 80175874 001727D4 80 61 01 20 */ lwz r3, 0x120(r1) +/* 80175878 001727D8 80 01 01 24 */ lwz r0, 0x124(r1) +/* 8017587C 001727DC 90 7E 00 04 */ stw r3, 4(r30) +/* 80175880 001727E0 90 1E 00 08 */ stw r0, 8(r30) +/* 80175884 001727E4 80 01 01 28 */ lwz r0, 0x128(r1) +/* 80175888 001727E8 90 1E 00 0C */ stw r0, 0xc(r30) +/* 8017588C 001727EC 48 00 00 60 */ b lbl_801758EC +lbl_80175890: +/* 80175890 001727F0 88 1E 00 14 */ lbz r0, 0x14(r30) +/* 80175894 001727F4 80 9D 01 08 */ lwz r4, 0x108(r29) +/* 80175898 001727F8 54 00 08 3C */ slwi r0, r0, 1 +/* 8017589C 001727FC 7C 7D 02 14 */ add r3, r29, r0 +/* 801758A0 00172800 88 03 00 41 */ lbz r0, 0x41(r3) +/* 801758A4 00172804 54 03 2C F4 */ rlwinm r3, r0, 5, 0x13, 0x1a +/* 801758A8 00172808 38 63 00 04 */ addi r3, r3, 4 +/* 801758AC 0017280C 7C 64 1A 14 */ add r3, r4, r3 +/* 801758B0 00172810 C0 03 00 04 */ lfs f0, 4(r3) +/* 801758B4 00172814 C0 43 00 00 */ lfs f2, 0(r3) +/* 801758B8 00172818 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 801758BC 0017281C C0 23 00 08 */ lfs f1, 8(r3) +/* 801758C0 00172820 C0 03 00 0C */ lfs f0, 0xc(r3) +/* 801758C4 00172824 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 801758C8 00172828 80 01 00 50 */ lwz r0, 0x50(r1) +/* 801758CC 0017282C D0 5E 00 00 */ stfs f2, 0(r30) +/* 801758D0 00172830 80 61 00 54 */ lwz r3, 0x54(r1) +/* 801758D4 00172834 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801758D8 00172838 90 1E 00 04 */ stw r0, 4(r30) +/* 801758DC 0017283C 80 01 00 58 */ lwz r0, 0x58(r1) +/* 801758E0 00172840 90 7E 00 08 */ stw r3, 8(r30) +/* 801758E4 00172844 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 801758E8 00172848 90 1E 00 0C */ stw r0, 0xc(r30) +lbl_801758EC: +/* 801758EC 0017284C C0 02 A1 78 */ lfs f0, lbl_805ABE98@sda21(r2) +/* 801758F0 00172850 D0 1E 00 18 */ stfs f0, 0x18(r30) +/* 801758F4 00172854 E3 E1 02 58 */ psq_l f31, 600(r1), 0, qr0 +/* 801758F8 00172858 CB E1 02 50 */ lfd f31, 0x250(r1) +/* 801758FC 0017285C BB 01 02 30 */ lmw r24, 0x230(r1) +/* 80175900 00172860 80 01 02 64 */ lwz r0, 0x264(r1) +/* 80175904 00172864 7C 08 03 A6 */ mtlr r0 +/* 80175908 00172868 38 21 02 60 */ addi r1, r1, 0x260 +/* 8017590C 0017286C 4E 80 00 20 */ blr + +.global PreRender__13CBoneTrackingFRC13CStateManagerR9CAnimDataRC12CTransform4fRC9CVector3fRC15CBodyController +PreRender__13CBoneTrackingFRC13CStateManagerR9CAnimDataRC12CTransform4fRC9CVector3fRC15CBodyController: +/* 80175910 00172870 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80175914 00172874 7C 08 02 A6 */ mflr r0 +/* 80175918 00172878 90 01 00 34 */ stw r0, 0x34(r1) +/* 8017591C 0017287C BF 21 00 14 */ stmw r25, 0x14(r1) +/* 80175920 00172880 7C 9A 23 78 */ mr r26, r4 +/* 80175924 00172884 7C 79 1B 78 */ mr r25, r3 +/* 80175928 00172888 7D 1F 43 78 */ mr r31, r8 +/* 8017592C 0017288C 7C BB 2B 78 */ mr r27, r5 +/* 80175930 00172890 7C DC 33 78 */ mr r28, r6 +/* 80175934 00172894 7C FD 3B 78 */ mr r29, r7 +/* 80175938 00172898 38 61 00 08 */ addi r3, r1, 8 +/* 8017593C 0017289C 80 88 00 00 */ lwz r4, 0(r8) +/* 80175940 001728A0 4B F3 71 89 */ bl "__ct__16TCastToPtr<10CPatterned>FR7CEntity" +/* 80175944 001728A4 83 C3 00 04 */ lwz r30, 4(r3) +/* 80175948 001728A8 38 7F 02 A4 */ addi r3, r31, 0x2a4 +/* 8017594C 001728AC 3B E0 00 00 */ li r31, 0 +/* 80175950 001728B0 4B FB E6 79 */ bl ApplyHeadTracking__14CBodyStateInfoCFv +/* 80175954 001728B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80175958 001728B8 41 82 00 20 */ beq lbl_80175978 +/* 8017595C 001728BC 28 1E 00 00 */ cmplwi r30, 0 +/* 80175960 001728C0 41 82 00 14 */ beq lbl_80175974 +/* 80175964 001728C4 7F C3 F3 78 */ mr r3, r30 +/* 80175968 001728C8 4B F0 71 39 */ bl ApplyBoneTracking__10CPatternedCFv +/* 8017596C 001728CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80175970 001728D0 41 82 00 08 */ beq lbl_80175978 +lbl_80175974: +/* 80175974 001728D4 3B E0 00 01 */ li r31, 1 +lbl_80175978: +/* 80175978 001728D8 7F 23 CB 78 */ mr r3, r25 +/* 8017597C 001728DC 7F 44 D3 78 */ mr r4, r26 +/* 80175980 001728E0 7F 65 DB 78 */ mr r5, r27 +/* 80175984 001728E4 7F 86 E3 78 */ mr r6, r28 +/* 80175988 001728E8 7F A7 EB 78 */ mr r7, r29 +/* 8017598C 001728EC 7F E8 FB 78 */ mr r8, r31 +/* 80175990 001728F0 4B FF F8 A5 */ bl PreRender__13CBoneTrackingFRC13CStateManagerR9CAnimDataRC12CTransform4fRC9CVector3fb +/* 80175994 001728F4 BB 21 00 14 */ lmw r25, 0x14(r1) +/* 80175998 001728F8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8017599C 001728FC 7C 08 03 A6 */ mtlr r0 +/* 801759A0 00172900 38 21 00 30 */ addi r1, r1, 0x30 +/* 801759A4 00172904 4E 80 00 20 */ blr + +.global Update__13CBoneTrackingFf +Update__13CBoneTrackingFf: +/* 801759A8 00172908 C0 03 00 18 */ lfs f0, 0x18(r3) +/* 801759AC 0017290C EC 00 08 2A */ fadds f0, f0, f1 +/* 801759B0 00172910 D0 03 00 18 */ stfs f0, 0x18(r3) +/* 801759B4 00172914 4E 80 00 20 */ blr + +.global "__ct__13CBoneTrackingFRC9CAnimDataRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>ffb" +"__ct__13CBoneTrackingFRC9CAnimDataRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>ffb": +/* 801759B8 00172918 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801759BC 0017291C 7C 08 02 A6 */ mflr r0 +/* 801759C0 00172920 90 01 00 44 */ stw r0, 0x44(r1) +/* 801759C4 00172924 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 801759C8 00172928 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 801759CC 0017292C DB C1 00 20 */ stfd f30, 0x20(r1) +/* 801759D0 00172930 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 +/* 801759D4 00172934 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801759D8 00172938 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801759DC 0017293C 3C E0 80 5A */ lis r7, lbl_805A6660@ha +/* 801759E0 00172940 C4 67 66 60 */ lfsu f3, lbl_805A6660@l(r7) +/* 801759E4 00172944 FF C0 08 90 */ fmr f30, f1 +/* 801759E8 00172948 7C 7F 1B 78 */ mr r31, r3 +/* 801759EC 0017294C D0 63 00 00 */ stfs f3, 0(r3) +/* 801759F0 00172950 FF E0 10 90 */ fmr f31, f2 +/* 801759F4 00172954 C0 02 A1 78 */ lfs f0, lbl_805ABE98@sda21(r2) +/* 801759F8 00172958 7C DE 33 78 */ mr r30, r6 +/* 801759FC 0017295C C0 27 00 04 */ lfs f1, 4(r7) +/* 80175A00 00172960 38 61 00 08 */ addi r3, r1, 8 +/* 80175A04 00172964 D0 3F 00 04 */ stfs f1, 4(r31) +/* 80175A08 00172968 C0 27 00 08 */ lfs f1, 8(r7) +/* 80175A0C 0017296C D0 3F 00 08 */ stfs f1, 8(r31) +/* 80175A10 00172970 C0 27 00 0C */ lfs f1, 0xc(r7) +/* 80175A14 00172974 D0 3F 00 0C */ stfs f1, 0xc(r31) +/* 80175A18 00172978 D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 80175A1C 0017297C 80 84 00 D4 */ lwz r4, 0xd4(r4) +/* 80175A20 00172980 48 18 22 45 */ bl "GetSegIdFromString__15CCharLayoutInfoCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80175A24 00172984 88 01 00 08 */ lbz r0, 8(r1) +/* 80175A28 00172988 39 00 00 00 */ li r8, 0 +/* 80175A2C 0017298C C0 02 A1 78 */ lfs f0, lbl_805ABE98@sda21(r2) +/* 80175A30 00172990 7F E3 FB 78 */ mr r3, r31 +/* 80175A34 00172994 98 1F 00 14 */ stb r0, 0x14(r31) +/* 80175A38 00172998 D0 1F 00 18 */ stfs f0, 0x18(r31) +/* 80175A3C 0017299C D3 DF 00 1C */ stfs f30, 0x1c(r31) +/* 80175A40 001729A0 D3 FF 00 20 */ stfs f31, 0x20(r31) +/* 80175A44 001729A4 99 1F 00 30 */ stb r8, 0x30(r31) +/* 80175A48 001729A8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80175A4C 001729AC B0 1F 00 34 */ sth r0, 0x34(r31) +/* 80175A50 001729B0 88 1F 00 36 */ lbz r0, 0x36(r31) +/* 80175A54 001729B4 51 00 3E 30 */ rlwimi r0, r8, 7, 0x18, 0x18 +/* 80175A58 001729B8 98 1F 00 36 */ stb r0, 0x36(r31) +/* 80175A5C 001729BC 88 1F 00 36 */ lbz r0, 0x36(r31) +/* 80175A60 001729C0 51 00 36 72 */ rlwimi r0, r8, 6, 0x19, 0x19 +/* 80175A64 001729C4 98 1F 00 36 */ stb r0, 0x36(r31) +/* 80175A68 001729C8 88 1F 00 36 */ lbz r0, 0x36(r31) +/* 80175A6C 001729CC 53 C0 2E B4 */ rlwimi r0, r30, 5, 0x1a, 0x1a +/* 80175A70 001729D0 98 1F 00 36 */ stb r0, 0x36(r31) +/* 80175A74 001729D4 88 1F 00 36 */ lbz r0, 0x36(r31) +/* 80175A78 001729D8 53 C0 1E F6 */ rlwimi r0, r30, 3, 0x1b, 0x1b +/* 80175A7C 001729DC 98 1F 00 36 */ stb r0, 0x36(r31) +/* 80175A80 001729E0 88 1F 00 36 */ lbz r0, 0x36(r31) +/* 80175A84 001729E4 53 C0 0F 38 */ rlwimi r0, r30, 1, 0x1c, 0x1c +/* 80175A88 001729E8 98 1F 00 36 */ stb r0, 0x36(r31) +/* 80175A8C 001729EC 88 1F 00 36 */ lbz r0, 0x36(r31) +/* 80175A90 001729F0 53 C0 FF 7A */ rlwimi r0, r30, 0x1f, 0x1d, 0x1d +/* 80175A94 001729F4 98 1F 00 36 */ stb r0, 0x36(r31) +/* 80175A98 001729F8 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 80175A9C 001729FC CB E1 00 30 */ lfd f31, 0x30(r1) +/* 80175AA0 00172A00 E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 +/* 80175AA4 00172A04 CB C1 00 20 */ lfd f30, 0x20(r1) +/* 80175AA8 00172A08 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80175AAC 00172A0C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80175AB0 00172A10 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80175AB4 00172A14 7C 08 03 A6 */ mtlr r0 +/* 80175AB8 00172A18 38 21 00 40 */ addi r1, r1, 0x40 +/* 80175ABC 00172A1C 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CCameraShakeData.s b/asm/Kyoto_CWD/CCameraShakeData.s new file mode 100644 index 00000000..7da9c6c7 --- /dev/null +++ b/asm/Kyoto_CWD/CCameraShakeData.s @@ -0,0 +1,1514 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global GetSomething2__16CCameraShakeDataFv +GetSomething2__16CCameraShakeDataFv: +/* 8015C8E0 00159840 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8015C8E4 00159844 7C 08 02 A6 */ mflr r0 +/* 8015C8E8 00159848 90 01 00 24 */ stw r0, 0x24(r1) +/* 8015C8EC 0015984C DB E1 00 10 */ stfd f31, 0x10(r1) +/* 8015C8F0 00159850 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 +/* 8015C8F4 00159854 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8015C8F8 00159858 80 03 00 0C */ lwz r0, 0xc(r3) +/* 8015C8FC 0015985C 7C 7F 1B 78 */ mr r31, r3 +/* 8015C900 00159860 C3 E2 9E E0 */ lfs f31, lbl_805ABC00@sda21(r2) +/* 8015C904 00159864 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 8015C908 00159868 41 82 00 10 */ beq lbl_8015C918 +/* 8015C90C 0015986C 38 7F 00 28 */ addi r3, r31, 0x28 +/* 8015C910 00159870 48 00 09 BD */ bl GetSomething__17SCameraShakePointFv +/* 8015C914 00159874 FF E0 08 90 */ fmr f31, f1 +lbl_8015C918: +/* 8015C918 00159878 80 1F 00 48 */ lwz r0, 0x48(r31) +/* 8015C91C 0015987C 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 8015C920 00159880 41 82 00 20 */ beq lbl_8015C940 +/* 8015C924 00159884 38 7F 00 64 */ addi r3, r31, 0x64 +/* 8015C928 00159888 48 00 09 A5 */ bl GetSomething__17SCameraShakePointFv +/* 8015C92C 0015988C FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 8015C930 00159890 40 81 00 10 */ ble lbl_8015C940 +/* 8015C934 00159894 38 7F 00 64 */ addi r3, r31, 0x64 +/* 8015C938 00159898 48 00 09 95 */ bl GetSomething__17SCameraShakePointFv +/* 8015C93C 0015989C FF E0 08 90 */ fmr f31, f1 +lbl_8015C940: +/* 8015C940 001598A0 80 1F 00 84 */ lwz r0, 0x84(r31) +/* 8015C944 001598A4 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 8015C948 001598A8 41 82 00 20 */ beq lbl_8015C968 +/* 8015C94C 001598AC 38 7F 00 A0 */ addi r3, r31, 0xa0 +/* 8015C950 001598B0 48 00 09 7D */ bl GetSomething__17SCameraShakePointFv +/* 8015C954 001598B4 FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 8015C958 001598B8 40 81 00 10 */ ble lbl_8015C968 +/* 8015C95C 001598BC 38 7F 00 A0 */ addi r3, r31, 0xa0 +/* 8015C960 001598C0 48 00 09 6D */ bl GetSomething__17SCameraShakePointFv +/* 8015C964 001598C4 FF E0 08 90 */ fmr f31, f1 +lbl_8015C968: +/* 8015C968 001598C8 FC 20 F8 90 */ fmr f1, f31 +/* 8015C96C 001598CC E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 +/* 8015C970 001598D0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8015C974 001598D4 CB E1 00 10 */ lfd f31, 0x10(r1) +/* 8015C978 001598D8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8015C97C 001598DC 7C 08 03 A6 */ mtlr r0 +/* 8015C980 001598E0 38 21 00 20 */ addi r1, r1, 0x20 +/* 8015C984 001598E4 4E 80 00 20 */ blr + +.global GetSomething__16CCameraShakeDataFv +GetSomething__16CCameraShakeDataFv: +/* 8015C988 001598E8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8015C98C 001598EC 7C 08 02 A6 */ mflr r0 +/* 8015C990 001598F0 90 01 00 24 */ stw r0, 0x24(r1) +/* 8015C994 001598F4 DB E1 00 10 */ stfd f31, 0x10(r1) +/* 8015C998 001598F8 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 +/* 8015C99C 001598FC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8015C9A0 00159900 80 03 00 0C */ lwz r0, 0xc(r3) +/* 8015C9A4 00159904 7C 7F 1B 78 */ mr r31, r3 +/* 8015C9A8 00159908 C3 E2 9E E0 */ lfs f31, lbl_805ABC00@sda21(r2) +/* 8015C9AC 0015990C 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 8015C9B0 00159910 41 82 00 10 */ beq lbl_8015C9C0 +/* 8015C9B4 00159914 38 7F 00 10 */ addi r3, r31, 0x10 +/* 8015C9B8 00159918 48 00 09 15 */ bl GetSomething__17SCameraShakePointFv +/* 8015C9BC 0015991C FF E0 08 90 */ fmr f31, f1 +lbl_8015C9C0: +/* 8015C9C0 00159920 80 1F 00 48 */ lwz r0, 0x48(r31) +/* 8015C9C4 00159924 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 8015C9C8 00159928 41 82 00 20 */ beq lbl_8015C9E8 +/* 8015C9CC 0015992C 38 7F 00 4C */ addi r3, r31, 0x4c +/* 8015C9D0 00159930 48 00 08 FD */ bl GetSomething__17SCameraShakePointFv +/* 8015C9D4 00159934 FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 8015C9D8 00159938 40 81 00 10 */ ble lbl_8015C9E8 +/* 8015C9DC 0015993C 38 7F 00 4C */ addi r3, r31, 0x4c +/* 8015C9E0 00159940 48 00 08 ED */ bl GetSomething__17SCameraShakePointFv +/* 8015C9E4 00159944 FF E0 08 90 */ fmr f31, f1 +lbl_8015C9E8: +/* 8015C9E8 00159948 80 1F 00 84 */ lwz r0, 0x84(r31) +/* 8015C9EC 0015994C 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 8015C9F0 00159950 41 82 00 20 */ beq lbl_8015CA10 +/* 8015C9F4 00159954 38 7F 00 88 */ addi r3, r31, 0x88 +/* 8015C9F8 00159958 48 00 08 D5 */ bl GetSomething__17SCameraShakePointFv +/* 8015C9FC 0015995C FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 8015CA00 00159960 40 81 00 10 */ ble lbl_8015CA10 +/* 8015CA04 00159964 38 7F 00 88 */ addi r3, r31, 0x88 +/* 8015CA08 00159968 48 00 08 C5 */ bl GetSomething__17SCameraShakePointFv +/* 8015CA0C 0015996C FF E0 08 90 */ fmr f31, f1 +lbl_8015CA10: +/* 8015CA10 00159970 FC 20 F8 90 */ fmr f1, f31 +/* 8015CA14 00159974 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 +/* 8015CA18 00159978 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8015CA1C 0015997C CB E1 00 10 */ lfd f31, 0x10(r1) +/* 8015CA20 00159980 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8015CA24 00159984 7C 08 03 A6 */ mtlr r0 +/* 8015CA28 00159988 38 21 00 20 */ addi r1, r1, 0x20 +/* 8015CA2C 0015998C 4E 80 00 20 */ blr + +.global __ct__16CCameraShakeDataFR12CInputStream +__ct__16CCameraShakeDataFR12CInputStream: +/* 8015CA30 00159990 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8015CA34 00159994 7C 08 02 A6 */ mflr r0 +/* 8015CA38 00159998 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015CA3C 0015999C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8015CA40 001599A0 7C 9F 23 78 */ mr r31, r4 +/* 8015CA44 001599A4 93 C1 00 08 */ stw r30, 8(r1) +/* 8015CA48 001599A8 7C 7E 1B 78 */ mr r30, r3 +/* 8015CA4C 001599AC 7F E3 FB 78 */ mr r3, r31 +/* 8015CA50 001599B0 48 1E 22 35 */ bl ReadLong__12CInputStreamFv +/* 8015CA54 001599B4 7F E3 FB 78 */ mr r3, r31 +/* 8015CA58 001599B8 48 1E 21 D1 */ bl ReadFloat__12CInputStreamFv +/* 8015CA5C 001599BC 7F E3 FB 78 */ mr r3, r31 +/* 8015CA60 001599C0 48 1E 21 C9 */ bl ReadFloat__12CInputStreamFv +/* 8015CA64 001599C4 7F E3 FB 78 */ mr r3, r31 +/* 8015CA68 001599C8 48 1E 21 C1 */ bl ReadFloat__12CInputStreamFv +/* 8015CA6C 001599CC 7F E3 FB 78 */ mr r3, r31 +/* 8015CA70 001599D0 48 1E 21 B9 */ bl ReadFloat__12CInputStreamFv +/* 8015CA74 001599D4 7F E3 FB 78 */ mr r3, r31 +/* 8015CA78 001599D8 48 1E 21 B1 */ bl ReadFloat__12CInputStreamFv +/* 8015CA7C 001599DC 7F E3 FB 78 */ mr r3, r31 +/* 8015CA80 001599E0 48 1E 21 A9 */ bl ReadFloat__12CInputStreamFv +/* 8015CA84 001599E4 7F E3 FB 78 */ mr r3, r31 +/* 8015CA88 001599E8 48 1E 21 A1 */ bl ReadFloat__12CInputStreamFv +/* 8015CA8C 001599EC 7F E3 FB 78 */ mr r3, r31 +/* 8015CA90 001599F0 48 1E 22 4D */ bl ReadBool__12CInputStreamFv +/* 8015CA94 001599F4 C0 22 9E E4 */ lfs f1, lbl_805ABC04@sda21(r2) +/* 8015CA98 001599F8 7F C3 F3 78 */ mr r3, r30 +/* 8015CA9C 001599FC C0 42 9E E8 */ lfs f2, lbl_805ABC08@sda21(r2) +/* 8015CAA0 00159A00 48 00 11 15 */ bl BuildProjectileCameraShake__16CCameraShakeDataFff +/* 8015CAA4 00159A04 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8015CAA8 00159A08 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8015CAAC 00159A0C 83 C1 00 08 */ lwz r30, 8(r1) +/* 8015CAB0 00159A10 7C 08 03 A6 */ mtlr r0 +/* 8015CAB4 00159A14 38 21 00 10 */ addi r1, r1, 0x10 +/* 8015CAB8 00159A18 4E 80 00 20 */ blr + +.global LoadCameraShakeData__FR12CInputStream +LoadCameraShakeData__FR12CInputStream: +/* 8015CABC 00159A1C 94 21 FE 30 */ stwu r1, -0x1d0(r1) +/* 8015CAC0 00159A20 7C 08 02 A6 */ mflr r0 +/* 8015CAC4 00159A24 90 01 01 D4 */ stw r0, 0x1d4(r1) +/* 8015CAC8 00159A28 DB E1 01 C0 */ stfd f31, 0x1c0(r1) +/* 8015CACC 00159A2C F3 E1 01 C8 */ psq_st f31, 456(r1), 0, qr0 +/* 8015CAD0 00159A30 DB C1 01 B0 */ stfd f30, 0x1b0(r1) +/* 8015CAD4 00159A34 F3 C1 01 B8 */ psq_st f30, 440(r1), 0, qr0 +/* 8015CAD8 00159A38 DB A1 01 A0 */ stfd f29, 0x1a0(r1) +/* 8015CADC 00159A3C F3 A1 01 A8 */ psq_st f29, 424(r1), 0, qr0 +/* 8015CAE0 00159A40 DB 81 01 90 */ stfd f28, 0x190(r1) +/* 8015CAE4 00159A44 F3 81 01 98 */ psq_st f28, 408(r1), 0, qr0 +/* 8015CAE8 00159A48 93 E1 01 8C */ stw r31, 0x18c(r1) +/* 8015CAEC 00159A4C 93 C1 01 88 */ stw r30, 0x188(r1) +/* 8015CAF0 00159A50 7C 9F 23 78 */ mr r31, r4 +/* 8015CAF4 00159A54 7C 7E 1B 78 */ mr r30, r3 +/* 8015CAF8 00159A58 7F E3 FB 78 */ mr r3, r31 +/* 8015CAFC 00159A5C 48 1E 21 2D */ bl ReadFloat__12CInputStreamFv +/* 8015CB00 00159A60 FF C0 08 90 */ fmr f30, f1 +/* 8015CB04 00159A64 7F E3 FB 78 */ mr r3, r31 +/* 8015CB08 00159A68 48 1E 21 21 */ bl ReadFloat__12CInputStreamFv +/* 8015CB0C 00159A6C 7F E3 FB 78 */ mr r3, r31 +/* 8015CB10 00159A70 48 1E 21 19 */ bl ReadFloat__12CInputStreamFv +/* 8015CB14 00159A74 FF 80 08 90 */ fmr f28, f1 +/* 8015CB18 00159A78 7F E3 FB 78 */ mr r3, r31 +/* 8015CB1C 00159A7C 48 1E 21 0D */ bl ReadFloat__12CInputStreamFv +/* 8015CB20 00159A80 7F E3 FB 78 */ mr r3, r31 +/* 8015CB24 00159A84 48 1E 21 05 */ bl ReadFloat__12CInputStreamFv +/* 8015CB28 00159A88 FF E0 08 90 */ fmr f31, f1 +/* 8015CB2C 00159A8C 7F E3 FB 78 */ mr r3, r31 +/* 8015CB30 00159A90 48 1E 20 F9 */ bl ReadFloat__12CInputStreamFv +/* 8015CB34 00159A94 7F E3 FB 78 */ mr r3, r31 +/* 8015CB38 00159A98 48 1E 20 F1 */ bl ReadFloat__12CInputStreamFv +/* 8015CB3C 00159A9C FF A0 08 90 */ fmr f29, f1 +/* 8015CB40 00159AA0 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) +/* 8015CB44 00159AA4 C0 02 9E EC */ lfs f0, lbl_805ABC0C@sda21(r2) +/* 8015CB48 00159AA8 38 61 00 80 */ addi r3, r1, 0x80 +/* 8015CB4C 00159AAC FC 40 08 90 */ fmr f2, f1 +/* 8015CB50 00159AB0 38 80 00 00 */ li r4, 0 +/* 8015CB54 00159AB4 EC 80 07 B2 */ fmuls f4, f0, f30 +/* 8015CB58 00159AB8 FC 60 E8 90 */ fmr f3, f29 +/* 8015CB5C 00159ABC 48 00 09 49 */ bl __ct__17SCameraShakePointFiffff +/* 8015CB60 00159AC0 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) +/* 8015CB64 00159AC4 FC 60 E8 90 */ fmr f3, f29 +/* 8015CB68 00159AC8 C0 02 9E EC */ lfs f0, lbl_805ABC0C@sda21(r2) +/* 8015CB6C 00159ACC 38 61 00 68 */ addi r3, r1, 0x68 +/* 8015CB70 00159AD0 FC 40 08 90 */ fmr f2, f1 +/* 8015CB74 00159AD4 38 80 00 00 */ li r4, 0 +/* 8015CB78 00159AD8 EC 80 07 32 */ fmuls f4, f0, f28 +/* 8015CB7C 00159ADC 48 00 09 29 */ bl __ct__17SCameraShakePointFiffff +/* 8015CB80 00159AE0 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) +/* 8015CB84 00159AE4 FC 60 E8 90 */ fmr f3, f29 +/* 8015CB88 00159AE8 C0 02 9E EC */ lfs f0, lbl_805ABC0C@sda21(r2) +/* 8015CB8C 00159AEC 38 61 00 50 */ addi r3, r1, 0x50 +/* 8015CB90 00159AF0 FC 40 08 90 */ fmr f2, f1 +/* 8015CB94 00159AF4 38 80 00 00 */ li r4, 0 +/* 8015CB98 00159AF8 EC 80 07 F2 */ fmuls f4, f0, f31 +/* 8015CB9C 00159AFC 48 00 09 09 */ bl __ct__17SCameraShakePointFiffff +/* 8015CBA0 00159B00 C0 02 9E E4 */ lfs f0, lbl_805ABC04@sda21(r2) +/* 8015CBA4 00159B04 38 61 00 38 */ addi r3, r1, 0x38 +/* 8015CBA8 00159B08 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) +/* 8015CBAC 00159B0C 38 80 00 00 */ li r4, 0 +/* 8015CBB0 00159B10 EF 80 07 72 */ fmuls f28, f0, f29 +/* 8015CBB4 00159B14 C0 82 9E F0 */ lfs f4, lbl_805ABC10@sda21(r2) +/* 8015CBB8 00159B18 FC 40 08 90 */ fmr f2, f1 +/* 8015CBBC 00159B1C FC 60 E0 90 */ fmr f3, f28 +/* 8015CBC0 00159B20 48 00 08 E5 */ bl __ct__17SCameraShakePointFiffff +/* 8015CBC4 00159B24 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) +/* 8015CBC8 00159B28 FC 60 E0 90 */ fmr f3, f28 +/* 8015CBCC 00159B2C 38 61 00 20 */ addi r3, r1, 0x20 +/* 8015CBD0 00159B30 38 80 00 00 */ li r4, 0 +/* 8015CBD4 00159B34 FC 40 08 90 */ fmr f2, f1 +/* 8015CBD8 00159B38 FC 80 08 90 */ fmr f4, f1 +/* 8015CBDC 00159B3C 48 00 08 C9 */ bl __ct__17SCameraShakePointFiffff +/* 8015CBE0 00159B40 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) +/* 8015CBE4 00159B44 FC 60 E0 90 */ fmr f3, f28 +/* 8015CBE8 00159B48 C0 82 9E F0 */ lfs f4, lbl_805ABC10@sda21(r2) +/* 8015CBEC 00159B4C 38 61 00 08 */ addi r3, r1, 8 +/* 8015CBF0 00159B50 FC 40 08 90 */ fmr f2, f1 +/* 8015CBF4 00159B54 38 80 00 00 */ li r4, 0 +/* 8015CBF8 00159B58 48 00 08 AD */ bl __ct__17SCameraShakePointFiffff +/* 8015CBFC 00159B5C 38 61 01 4C */ addi r3, r1, 0x14c +/* 8015CC00 00159B60 38 A1 00 80 */ addi r5, r1, 0x80 +/* 8015CC04 00159B64 38 C1 00 38 */ addi r6, r1, 0x38 +/* 8015CC08 00159B68 38 80 00 01 */ li r4, 1 +/* 8015CC0C 00159B6C 48 00 06 45 */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint +/* 8015CC10 00159B70 38 61 00 98 */ addi r3, r1, 0x98 +/* 8015CC14 00159B74 48 00 05 1D */ bl __ct__22CCameraShakerComponentFv +/* 8015CC18 00159B78 80 81 00 9C */ lwz r4, 0x9c(r1) +/* 8015CC1C 00159B7C 3C A0 80 3E */ lis r5, lbl_803D8EA8@ha +/* 8015CC20 00159B80 80 61 00 A0 */ lwz r3, 0xa0(r1) +/* 8015CC24 00159B84 38 A5 8E A8 */ addi r5, r5, lbl_803D8EA8@l +/* 8015CC28 00159B88 C1 41 00 A4 */ lfs f10, 0xa4(r1) +/* 8015CC2C 00159B8C 34 01 00 98 */ addic. r0, r1, 0x98 +/* 8015CC30 00159B90 C1 21 00 A8 */ lfs f9, 0xa8(r1) +/* 8015CC34 00159B94 C1 01 00 AC */ lfs f8, 0xac(r1) +/* 8015CC38 00159B98 C0 E1 00 B0 */ lfs f7, 0xb0(r1) +/* 8015CC3C 00159B9C C0 C1 00 B4 */ lfs f6, 0xb4(r1) +/* 8015CC40 00159BA0 80 01 00 B8 */ lwz r0, 0xb8(r1) +/* 8015CC44 00159BA4 C0 A1 00 BC */ lfs f5, 0xbc(r1) +/* 8015CC48 00159BA8 C0 81 00 C0 */ lfs f4, 0xc0(r1) +/* 8015CC4C 00159BAC C0 61 00 C4 */ lfs f3, 0xc4(r1) +/* 8015CC50 00159BB0 C0 41 00 C8 */ lfs f2, 0xc8(r1) +/* 8015CC54 00159BB4 C0 21 00 CC */ lfs f1, 0xcc(r1) +/* 8015CC58 00159BB8 C0 01 00 D0 */ lfs f0, 0xd0(r1) +/* 8015CC5C 00159BBC 90 A1 01 10 */ stw r5, 0x110(r1) +/* 8015CC60 00159BC0 90 81 01 14 */ stw r4, 0x114(r1) +/* 8015CC64 00159BC4 90 61 01 18 */ stw r3, 0x118(r1) +/* 8015CC68 00159BC8 D1 41 01 1C */ stfs f10, 0x11c(r1) +/* 8015CC6C 00159BCC D1 21 01 20 */ stfs f9, 0x120(r1) +/* 8015CC70 00159BD0 D1 01 01 24 */ stfs f8, 0x124(r1) +/* 8015CC74 00159BD4 D0 E1 01 28 */ stfs f7, 0x128(r1) +/* 8015CC78 00159BD8 D0 C1 01 2C */ stfs f6, 0x12c(r1) +/* 8015CC7C 00159BDC 90 01 01 30 */ stw r0, 0x130(r1) +/* 8015CC80 00159BE0 D0 A1 01 34 */ stfs f5, 0x134(r1) +/* 8015CC84 00159BE4 D0 81 01 38 */ stfs f4, 0x138(r1) +/* 8015CC88 00159BE8 D0 61 01 3C */ stfs f3, 0x13c(r1) +/* 8015CC8C 00159BEC D0 41 01 40 */ stfs f2, 0x140(r1) +/* 8015CC90 00159BF0 D0 21 01 44 */ stfs f1, 0x144(r1) +/* 8015CC94 00159BF4 D0 01 01 48 */ stfs f0, 0x148(r1) +/* 8015CC98 00159BF8 41 82 00 08 */ beq lbl_8015CCA0 +/* 8015CC9C 00159BFC 90 A1 00 98 */ stw r5, 0x98(r1) +lbl_8015CCA0: +/* 8015CCA0 00159C00 38 61 00 D4 */ addi r3, r1, 0xd4 +/* 8015CCA4 00159C04 38 A1 00 50 */ addi r5, r1, 0x50 +/* 8015CCA8 00159C08 38 C1 00 08 */ addi r6, r1, 8 +/* 8015CCAC 00159C0C 38 80 00 01 */ li r4, 1 +/* 8015CCB0 00159C10 48 00 05 A1 */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint +/* 8015CCB4 00159C14 FC 20 E8 90 */ fmr f1, f29 +/* 8015CCB8 00159C18 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8015CCBC 00159C1C C0 42 9E F4 */ lfs f2, lbl_805ABC14@sda21(r2) +/* 8015CCC0 00159C20 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 8015CCC4 00159C24 7F C3 F3 78 */ mr r3, r30 +/* 8015CCC8 00159C28 38 C1 01 4C */ addi r6, r1, 0x14c +/* 8015CCCC 00159C2C 38 E1 01 10 */ addi r7, r1, 0x110 +/* 8015CCD0 00159C30 39 01 00 D4 */ addi r8, r1, 0xd4 +/* 8015CCD4 00159C34 38 80 00 00 */ li r4, 0 +/* 8015CCD8 00159C38 48 00 01 C1 */ bl __ct__16CCameraShakeDataFffiRC9CVector3fRC22CCameraShakerComponentRC22CCameraShakerComponentRC22CCameraShakerComponent +/* 8015CCDC 00159C3C 34 01 00 D4 */ addic. r0, r1, 0xd4 +/* 8015CCE0 00159C40 41 82 00 10 */ beq lbl_8015CCF0 +/* 8015CCE4 00159C44 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015CCE8 00159C48 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015CCEC 00159C4C 90 01 00 D4 */ stw r0, 0xd4(r1) +lbl_8015CCF0: +/* 8015CCF0 00159C50 34 01 01 10 */ addic. r0, r1, 0x110 +/* 8015CCF4 00159C54 41 82 00 10 */ beq lbl_8015CD04 +/* 8015CCF8 00159C58 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015CCFC 00159C5C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015CD00 00159C60 90 01 01 10 */ stw r0, 0x110(r1) +lbl_8015CD04: +/* 8015CD04 00159C64 34 01 01 4C */ addic. r0, r1, 0x14c +/* 8015CD08 00159C68 41 82 00 10 */ beq lbl_8015CD18 +/* 8015CD0C 00159C6C 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015CD10 00159C70 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015CD14 00159C74 90 01 01 4C */ stw r0, 0x14c(r1) +lbl_8015CD18: +/* 8015CD18 00159C78 E3 E1 01 C8 */ psq_l f31, 456(r1), 0, qr0 +/* 8015CD1C 00159C7C CB E1 01 C0 */ lfd f31, 0x1c0(r1) +/* 8015CD20 00159C80 E3 C1 01 B8 */ psq_l f30, 440(r1), 0, qr0 +/* 8015CD24 00159C84 CB C1 01 B0 */ lfd f30, 0x1b0(r1) +/* 8015CD28 00159C88 E3 A1 01 A8 */ psq_l f29, 424(r1), 0, qr0 +/* 8015CD2C 00159C8C CB A1 01 A0 */ lfd f29, 0x1a0(r1) +/* 8015CD30 00159C90 E3 81 01 98 */ psq_l f28, 408(r1), 0, qr0 +/* 8015CD34 00159C94 CB 81 01 90 */ lfd f28, 0x190(r1) +/* 8015CD38 00159C98 83 E1 01 8C */ lwz r31, 0x18c(r1) +/* 8015CD3C 00159C9C 80 01 01 D4 */ lwz r0, 0x1d4(r1) +/* 8015CD40 00159CA0 83 C1 01 88 */ lwz r30, 0x188(r1) +/* 8015CD44 00159CA4 7C 08 03 A6 */ mtlr r0 +/* 8015CD48 00159CA8 38 21 01 D0 */ addi r1, r1, 0x1d0 +/* 8015CD4C 00159CAC 4E 80 00 20 */ blr + +.global GetPoint__16CCameraShakeDataCFv +GetPoint__16CCameraShakeDataCFv: +/* 8015CD50 00159CB0 C0 24 00 7C */ lfs f1, 0x7c(r4) +/* 8015CD54 00159CB4 C0 44 00 B8 */ lfs f2, 0xb8(r4) +/* 8015CD58 00159CB8 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 8015CD5C 00159CBC D0 03 00 00 */ stfs f0, 0(r3) +/* 8015CD60 00159CC0 D0 23 00 04 */ stfs f1, 4(r3) +/* 8015CD64 00159CC4 D0 43 00 08 */ stfs f2, 8(r3) +/* 8015CD68 00159CC8 4E 80 00 20 */ blr + +.global Update__16CCameraShakeDataFfR13CStateManager +Update__16CCameraShakeDataFfR13CStateManager: +/* 8015CD6C 00159CCC 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8015CD70 00159CD0 7C 08 02 A6 */ mflr r0 +/* 8015CD74 00159CD4 90 01 00 44 */ stw r0, 0x44(r1) +/* 8015CD78 00159CD8 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 8015CD7C 00159CDC F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 8015CD80 00159CE0 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8015CD84 00159CE4 C0 03 00 04 */ lfs f0, 4(r3) +/* 8015CD88 00159CE8 7C 7F 1B 78 */ mr r31, r3 +/* 8015CD8C 00159CEC C3 E2 9E F8 */ lfs f31, lbl_805ABC18@sda21(r2) +/* 8015CD90 00159CF0 EC 00 08 2A */ fadds f0, f0, f1 +/* 8015CD94 00159CF4 D0 03 00 04 */ stfs f0, 4(r3) +/* 8015CD98 00159CF8 80 03 00 C0 */ lwz r0, 0xc0(r3) +/* 8015CD9C 00159CFC 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 8015CDA0 00159D00 41 82 00 74 */ beq lbl_8015CE14 +/* 8015CDA4 00159D04 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 8015CDA8 00159D08 38 61 00 18 */ addi r3, r1, 0x18 +/* 8015CDAC 00159D0C C0 3F 00 C8 */ lfs f1, 0xc8(r31) +/* 8015CDB0 00159D10 C0 04 00 50 */ lfs f0, 0x50(r4) +/* 8015CDB4 00159D14 C0 7F 00 CC */ lfs f3, 0xcc(r31) +/* 8015CDB8 00159D18 C0 44 00 60 */ lfs f2, 0x60(r4) +/* 8015CDBC 00159D1C EC 81 00 28 */ fsubs f4, f1, f0 +/* 8015CDC0 00159D20 C0 3F 00 C4 */ lfs f1, 0xc4(r31) +/* 8015CDC4 00159D24 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 8015CDC8 00159D28 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8015CDCC 00159D2C D0 81 00 10 */ stfs f4, 0x10(r1) +/* 8015CDD0 00159D30 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8015CDD4 00159D34 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 8015CDD8 00159D38 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 8015CDDC 00159D3C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 8015CDE0 00159D40 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 8015CDE4 00159D44 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 8015CDE8 00159D48 48 1B 7A D1 */ bl Magnitude__9CVector3fCFv +/* 8015CDEC 00159D4C C0 1F 00 D0 */ lfs f0, 0xd0(r31) +/* 8015CDF0 00159D50 38 81 00 08 */ addi r4, r1, 8 +/* 8015CDF4 00159D54 38 6D 8C D8 */ addi r3, r13, lbl_805A7898@sda21 +/* 8015CDF8 00159D58 38 AD 8C DC */ addi r5, r13, lbl_805A789C@sda21 +/* 8015CDFC 00159D5C EC 01 00 24 */ fdivs f0, f1, f0 +/* 8015CE00 00159D60 D0 01 00 08 */ stfs f0, 8(r1) +/* 8015CE04 00159D64 4B EA F4 B1 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8015CE08 00159D68 C0 23 00 00 */ lfs f1, 0(r3) +/* 8015CE0C 00159D6C C0 02 9E F8 */ lfs f0, lbl_805ABC18@sda21(r2) +/* 8015CE10 00159D70 EF E0 08 28 */ fsubs f31, f0, f1 +lbl_8015CE14: +/* 8015CE14 00159D74 FC 60 F8 90 */ fmr f3, f31 +/* 8015CE18 00159D78 C0 3F 00 04 */ lfs f1, 4(r31) +/* 8015CE1C 00159D7C C0 5F 00 00 */ lfs f2, 0(r31) +/* 8015CE20 00159D80 38 7F 00 08 */ addi r3, r31, 8 +/* 8015CE24 00159D84 48 00 02 11 */ bl sub_8015d034 +/* 8015CE28 00159D88 FC 60 F8 90 */ fmr f3, f31 +/* 8015CE2C 00159D8C C0 3F 00 04 */ lfs f1, 4(r31) +/* 8015CE30 00159D90 C0 5F 00 00 */ lfs f2, 0(r31) +/* 8015CE34 00159D94 38 7F 00 44 */ addi r3, r31, 0x44 +/* 8015CE38 00159D98 48 00 01 FD */ bl sub_8015d034 +/* 8015CE3C 00159D9C FC 60 F8 90 */ fmr f3, f31 +/* 8015CE40 00159DA0 C0 3F 00 04 */ lfs f1, 4(r31) +/* 8015CE44 00159DA4 C0 5F 00 00 */ lfs f2, 0(r31) +/* 8015CE48 00159DA8 38 7F 00 80 */ addi r3, r31, 0x80 +/* 8015CE4C 00159DAC 48 00 01 E9 */ bl sub_8015d034 +/* 8015CE50 00159DB0 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 8015CE54 00159DB4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8015CE58 00159DB8 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 8015CE5C 00159DBC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8015CE60 00159DC0 7C 08 03 A6 */ mtlr r0 +/* 8015CE64 00159DC4 38 21 00 40 */ addi r1, r1, 0x40 +/* 8015CE68 00159DC8 4E 80 00 20 */ blr + +.global SetSfxPositionAndDistance__16CCameraShakeDataFRC9CVector3ff +SetSfxPositionAndDistance__16CCameraShakeDataFRC9CVector3ff: +/* 8015CE6C 00159DCC 80 03 00 C0 */ lwz r0, 0xc0(r3) +/* 8015CE70 00159DD0 60 00 00 01 */ ori r0, r0, 1 +/* 8015CE74 00159DD4 90 03 00 C0 */ stw r0, 0xc0(r3) +/* 8015CE78 00159DD8 D0 23 00 D0 */ stfs f1, 0xd0(r3) +/* 8015CE7C 00159DDC C0 04 00 00 */ lfs f0, 0(r4) +/* 8015CE80 00159DE0 D0 03 00 C4 */ stfs f0, 0xc4(r3) +/* 8015CE84 00159DE4 C0 04 00 04 */ lfs f0, 4(r4) +/* 8015CE88 00159DE8 D0 03 00 C8 */ stfs f0, 0xc8(r3) +/* 8015CE8C 00159DEC C0 04 00 08 */ lfs f0, 8(r4) +/* 8015CE90 00159DF0 D0 03 00 CC */ stfs f0, 0xcc(r3) +/* 8015CE94 00159DF4 4E 80 00 20 */ blr + +.global __ct__16CCameraShakeDataFffiRC9CVector3fRC22CCameraShakerComponentRC22CCameraShakerComponentRC22CCameraShakerComponent +__ct__16CCameraShakeDataFffiRC9CVector3fRC22CCameraShakerComponentRC22CCameraShakerComponentRC22CCameraShakerComponent: +/* 8015CE98 00159DF8 D0 23 00 00 */ stfs f1, 0(r3) +/* 8015CE9C 00159DFC 3D 20 80 3E */ lis r9, lbl_803D8EA8@ha +/* 8015CEA0 00159E00 C0 02 9E E0 */ lfs f0, lbl_805ABC00@sda21(r2) +/* 8015CEA4 00159E04 39 49 8E A8 */ addi r10, r9, lbl_803D8EA8@l +/* 8015CEA8 00159E08 38 00 00 00 */ li r0, 0 +/* 8015CEAC 00159E0C D0 03 00 04 */ stfs f0, 4(r3) +/* 8015CEB0 00159E10 91 43 00 08 */ stw r10, 8(r3) +/* 8015CEB4 00159E14 81 26 00 04 */ lwz r9, 4(r6) +/* 8015CEB8 00159E18 91 23 00 0C */ stw r9, 0xc(r3) +/* 8015CEBC 00159E1C 81 26 00 08 */ lwz r9, 8(r6) +/* 8015CEC0 00159E20 91 23 00 10 */ stw r9, 0x10(r3) +/* 8015CEC4 00159E24 C0 06 00 0C */ lfs f0, 0xc(r6) +/* 8015CEC8 00159E28 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 8015CECC 00159E2C C0 06 00 10 */ lfs f0, 0x10(r6) +/* 8015CED0 00159E30 D0 03 00 18 */ stfs f0, 0x18(r3) +/* 8015CED4 00159E34 C0 06 00 14 */ lfs f0, 0x14(r6) +/* 8015CED8 00159E38 D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 8015CEDC 00159E3C C0 06 00 18 */ lfs f0, 0x18(r6) +/* 8015CEE0 00159E40 D0 03 00 20 */ stfs f0, 0x20(r3) +/* 8015CEE4 00159E44 C0 06 00 1C */ lfs f0, 0x1c(r6) +/* 8015CEE8 00159E48 D0 03 00 24 */ stfs f0, 0x24(r3) +/* 8015CEEC 00159E4C 81 26 00 20 */ lwz r9, 0x20(r6) +/* 8015CEF0 00159E50 91 23 00 28 */ stw r9, 0x28(r3) +/* 8015CEF4 00159E54 C0 06 00 24 */ lfs f0, 0x24(r6) +/* 8015CEF8 00159E58 D0 03 00 2C */ stfs f0, 0x2c(r3) +/* 8015CEFC 00159E5C C0 06 00 28 */ lfs f0, 0x28(r6) +/* 8015CF00 00159E60 D0 03 00 30 */ stfs f0, 0x30(r3) +/* 8015CF04 00159E64 C0 06 00 2C */ lfs f0, 0x2c(r6) +/* 8015CF08 00159E68 D0 03 00 34 */ stfs f0, 0x34(r3) +/* 8015CF0C 00159E6C C0 06 00 30 */ lfs f0, 0x30(r6) +/* 8015CF10 00159E70 D0 03 00 38 */ stfs f0, 0x38(r3) +/* 8015CF14 00159E74 C0 06 00 34 */ lfs f0, 0x34(r6) +/* 8015CF18 00159E78 D0 03 00 3C */ stfs f0, 0x3c(r3) +/* 8015CF1C 00159E7C C0 06 00 38 */ lfs f0, 0x38(r6) +/* 8015CF20 00159E80 D0 03 00 40 */ stfs f0, 0x40(r3) +/* 8015CF24 00159E84 91 43 00 44 */ stw r10, 0x44(r3) +/* 8015CF28 00159E88 80 C7 00 04 */ lwz r6, 4(r7) +/* 8015CF2C 00159E8C 90 C3 00 48 */ stw r6, 0x48(r3) +/* 8015CF30 00159E90 80 C7 00 08 */ lwz r6, 8(r7) +/* 8015CF34 00159E94 90 C3 00 4C */ stw r6, 0x4c(r3) +/* 8015CF38 00159E98 C0 07 00 0C */ lfs f0, 0xc(r7) +/* 8015CF3C 00159E9C D0 03 00 50 */ stfs f0, 0x50(r3) +/* 8015CF40 00159EA0 C0 07 00 10 */ lfs f0, 0x10(r7) +/* 8015CF44 00159EA4 D0 03 00 54 */ stfs f0, 0x54(r3) +/* 8015CF48 00159EA8 C0 07 00 14 */ lfs f0, 0x14(r7) +/* 8015CF4C 00159EAC D0 03 00 58 */ stfs f0, 0x58(r3) +/* 8015CF50 00159EB0 C0 07 00 18 */ lfs f0, 0x18(r7) +/* 8015CF54 00159EB4 D0 03 00 5C */ stfs f0, 0x5c(r3) +/* 8015CF58 00159EB8 C0 07 00 1C */ lfs f0, 0x1c(r7) +/* 8015CF5C 00159EBC D0 03 00 60 */ stfs f0, 0x60(r3) +/* 8015CF60 00159EC0 80 C7 00 20 */ lwz r6, 0x20(r7) +/* 8015CF64 00159EC4 90 C3 00 64 */ stw r6, 0x64(r3) +/* 8015CF68 00159EC8 C0 07 00 24 */ lfs f0, 0x24(r7) +/* 8015CF6C 00159ECC D0 03 00 68 */ stfs f0, 0x68(r3) +/* 8015CF70 00159ED0 C0 07 00 28 */ lfs f0, 0x28(r7) +/* 8015CF74 00159ED4 D0 03 00 6C */ stfs f0, 0x6c(r3) +/* 8015CF78 00159ED8 C0 07 00 2C */ lfs f0, 0x2c(r7) +/* 8015CF7C 00159EDC D0 03 00 70 */ stfs f0, 0x70(r3) +/* 8015CF80 00159EE0 C0 07 00 30 */ lfs f0, 0x30(r7) +/* 8015CF84 00159EE4 D0 03 00 74 */ stfs f0, 0x74(r3) +/* 8015CF88 00159EE8 C0 07 00 34 */ lfs f0, 0x34(r7) +/* 8015CF8C 00159EEC D0 03 00 78 */ stfs f0, 0x78(r3) +/* 8015CF90 00159EF0 C0 07 00 38 */ lfs f0, 0x38(r7) +/* 8015CF94 00159EF4 D0 03 00 7C */ stfs f0, 0x7c(r3) +/* 8015CF98 00159EF8 91 43 00 80 */ stw r10, 0x80(r3) +/* 8015CF9C 00159EFC 80 C8 00 04 */ lwz r6, 4(r8) +/* 8015CFA0 00159F00 90 C3 00 84 */ stw r6, 0x84(r3) +/* 8015CFA4 00159F04 80 C8 00 08 */ lwz r6, 8(r8) +/* 8015CFA8 00159F08 90 C3 00 88 */ stw r6, 0x88(r3) +/* 8015CFAC 00159F0C C0 08 00 0C */ lfs f0, 0xc(r8) +/* 8015CFB0 00159F10 D0 03 00 8C */ stfs f0, 0x8c(r3) +/* 8015CFB4 00159F14 C0 08 00 10 */ lfs f0, 0x10(r8) +/* 8015CFB8 00159F18 D0 03 00 90 */ stfs f0, 0x90(r3) +/* 8015CFBC 00159F1C C0 08 00 14 */ lfs f0, 0x14(r8) +/* 8015CFC0 00159F20 D0 03 00 94 */ stfs f0, 0x94(r3) +/* 8015CFC4 00159F24 C0 08 00 18 */ lfs f0, 0x18(r8) +/* 8015CFC8 00159F28 D0 03 00 98 */ stfs f0, 0x98(r3) +/* 8015CFCC 00159F2C C0 08 00 1C */ lfs f0, 0x1c(r8) +/* 8015CFD0 00159F30 D0 03 00 9C */ stfs f0, 0x9c(r3) +/* 8015CFD4 00159F34 80 C8 00 20 */ lwz r6, 0x20(r8) +/* 8015CFD8 00159F38 90 C3 00 A0 */ stw r6, 0xa0(r3) +/* 8015CFDC 00159F3C C0 08 00 24 */ lfs f0, 0x24(r8) +/* 8015CFE0 00159F40 D0 03 00 A4 */ stfs f0, 0xa4(r3) +/* 8015CFE4 00159F44 C0 08 00 28 */ lfs f0, 0x28(r8) +/* 8015CFE8 00159F48 D0 03 00 A8 */ stfs f0, 0xa8(r3) +/* 8015CFEC 00159F4C C0 08 00 2C */ lfs f0, 0x2c(r8) +/* 8015CFF0 00159F50 D0 03 00 AC */ stfs f0, 0xac(r3) +/* 8015CFF4 00159F54 C0 08 00 30 */ lfs f0, 0x30(r8) +/* 8015CFF8 00159F58 D0 03 00 B0 */ stfs f0, 0xb0(r3) +/* 8015CFFC 00159F5C C0 08 00 34 */ lfs f0, 0x34(r8) +/* 8015D000 00159F60 D0 03 00 B4 */ stfs f0, 0xb4(r3) +/* 8015D004 00159F64 C0 08 00 38 */ lfs f0, 0x38(r8) +/* 8015D008 00159F68 D0 03 00 B8 */ stfs f0, 0xb8(r3) +/* 8015D00C 00159F6C 90 03 00 BC */ stw r0, 0xbc(r3) +/* 8015D010 00159F70 90 83 00 C0 */ stw r4, 0xc0(r3) +/* 8015D014 00159F74 C0 05 00 00 */ lfs f0, 0(r5) +/* 8015D018 00159F78 D0 03 00 C4 */ stfs f0, 0xc4(r3) +/* 8015D01C 00159F7C C0 05 00 04 */ lfs f0, 4(r5) +/* 8015D020 00159F80 D0 03 00 C8 */ stfs f0, 0xc8(r3) +/* 8015D024 00159F84 C0 05 00 08 */ lfs f0, 8(r5) +/* 8015D028 00159F88 D0 03 00 CC */ stfs f0, 0xcc(r3) +/* 8015D02C 00159F8C D0 43 00 D0 */ stfs f2, 0xd0(r3) +/* 8015D030 00159F90 4E 80 00 20 */ blr + +.global sub_8015d034 +sub_8015d034: +/* 8015D034 00159F94 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8015D038 00159F98 7C 08 02 A6 */ mflr r0 +/* 8015D03C 00159F9C 90 01 00 54 */ stw r0, 0x54(r1) +/* 8015D040 00159FA0 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 8015D044 00159FA4 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 8015D048 00159FA8 DB C1 00 30 */ stfd f30, 0x30(r1) +/* 8015D04C 00159FAC F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 8015D050 00159FB0 DB A1 00 20 */ stfd f29, 0x20(r1) +/* 8015D054 00159FB4 F3 A1 00 28 */ psq_st f29, 40(r1), 0, qr0 +/* 8015D058 00159FB8 DB 81 00 10 */ stfd f28, 0x10(r1) +/* 8015D05C 00159FBC F3 81 00 18 */ psq_st f28, 24(r1), 0, qr0 +/* 8015D060 00159FC0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8015D064 00159FC4 FF A0 10 90 */ fmr f29, f2 +/* 8015D068 00159FC8 C0 42 9E E0 */ lfs f2, lbl_805ABC00@sda21(r2) +/* 8015D06C 00159FCC C0 02 9E FC */ lfs f0, lbl_805ABC1C@sda21(r2) +/* 8015D070 00159FD0 FF 80 08 90 */ fmr f28, f1 +/* 8015D074 00159FD4 FF C0 18 90 */ fmr f30, f3 +/* 8015D078 00159FD8 7C 7F 1B 78 */ mr r31, r3 +/* 8015D07C 00159FDC EC 5D 10 28 */ fsubs f2, f29, f2 +/* 8015D080 00159FE0 FC 40 12 10 */ fabs f2, f2 +/* 8015D084 00159FE4 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8015D088 00159FE8 41 80 00 10 */ blt lbl_8015D098 +/* 8015D08C 00159FEC 80 1F 00 04 */ lwz r0, 4(r31) +/* 8015D090 00159FF0 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 8015D094 00159FF4 40 82 00 10 */ bne lbl_8015D0A4 +lbl_8015D098: +/* 8015D098 00159FF8 C0 02 9E E0 */ lfs f0, lbl_805ABC00@sda21(r2) +/* 8015D09C 00159FFC D0 1F 00 38 */ stfs f0, 0x38(r31) +/* 8015D0A0 0015A000 48 00 00 5C */ b lbl_8015D0FC +lbl_8015D0A4: +/* 8015D0A4 0015A004 38 7F 00 20 */ addi r3, r31, 0x20 +/* 8015D0A8 0015A008 48 00 02 41 */ bl sub_8015d2e8 +/* 8015D0AC 0015A00C 38 7F 00 20 */ addi r3, r31, 0x20 +/* 8015D0B0 0015A010 48 00 02 1D */ bl GetSomething__17SCameraShakePointFv +/* 8015D0B4 0015A014 C0 02 9E F8 */ lfs f0, lbl_805ABC18@sda21(r2) +/* 8015D0B8 0015A018 38 7F 00 08 */ addi r3, r31, 8 +/* 8015D0BC 0015A01C EF E0 08 2A */ fadds f31, f0, f1 +/* 8015D0C0 0015A020 FC 20 E0 90 */ fmr f1, f28 +/* 8015D0C4 0015A024 48 00 02 25 */ bl sub_8015d2e8 +/* 8015D0C8 0015A028 EC 1D E0 28 */ fsubs f0, f29, f28 +/* 8015D0CC 0015A02C C0 22 9F 00 */ lfs f1, lbl_805ABC20@sda21(r2) +/* 8015D0D0 0015A030 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8015D0D4 0015A034 EC 3F 00 32 */ fmuls f1, f31, f0 +/* 8015D0D8 0015A038 48 23 7A 05 */ bl sin +/* 8015D0DC 0015A03C FF E0 08 18 */ frsp f31, f1 +/* 8015D0E0 0015A040 38 7F 00 08 */ addi r3, r31, 8 +/* 8015D0E4 0015A044 48 00 01 E9 */ bl GetSomething__17SCameraShakePointFv +/* 8015D0E8 0015A048 EC 01 07 F2 */ fmuls f0, f1, f31 +/* 8015D0EC 0015A04C D0 1F 00 38 */ stfs f0, 0x38(r31) +/* 8015D0F0 0015A050 C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 8015D0F4 0015A054 EC 00 07 B2 */ fmuls f0, f0, f30 +/* 8015D0F8 0015A058 D0 1F 00 38 */ stfs f0, 0x38(r31) +lbl_8015D0FC: +/* 8015D0FC 0015A05C E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 8015D100 0015A060 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 8015D104 0015A064 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 8015D108 0015A068 CB C1 00 30 */ lfd f30, 0x30(r1) +/* 8015D10C 0015A06C E3 A1 00 28 */ psq_l f29, 40(r1), 0, qr0 +/* 8015D110 0015A070 CB A1 00 20 */ lfd f29, 0x20(r1) +/* 8015D114 0015A074 E3 81 00 18 */ psq_l f28, 24(r1), 0, qr0 +/* 8015D118 0015A078 CB 81 00 10 */ lfd f28, 0x10(r1) +/* 8015D11C 0015A07C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8015D120 0015A080 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8015D124 0015A084 7C 08 03 A6 */ mtlr r0 +/* 8015D128 0015A088 38 21 00 50 */ addi r1, r1, 0x50 +/* 8015D12C 0015A08C 4E 80 00 20 */ blr + +.global __ct__22CCameraShakerComponentFv +__ct__22CCameraShakerComponentFv: +/* 8015D130 0015A090 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8015D134 0015A094 7C 08 02 A6 */ mflr r0 +/* 8015D138 0015A098 90 01 00 44 */ stw r0, 0x44(r1) +/* 8015D13C 0015A09C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8015D140 0015A0A0 7C 7F 1B 78 */ mr r31, r3 +/* 8015D144 0015A0A4 38 61 00 08 */ addi r3, r1, 8 +/* 8015D148 0015A0A8 48 00 02 7D */ bl __ct__17SCameraShakePointFv +/* 8015D14C 0015A0AC 38 61 00 20 */ addi r3, r1, 0x20 +/* 8015D150 0015A0B0 48 00 02 75 */ bl __ct__17SCameraShakePointFv +/* 8015D154 0015A0B4 7F E3 FB 78 */ mr r3, r31 +/* 8015D158 0015A0B8 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8015D15C 0015A0BC 38 C1 00 08 */ addi r6, r1, 8 +/* 8015D160 0015A0C0 38 80 00 00 */ li r4, 0 +/* 8015D164 0015A0C4 48 00 00 ED */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint +/* 8015D168 0015A0C8 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8015D16C 0015A0CC 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8015D170 0015A0D0 7C 08 03 A6 */ mtlr r0 +/* 8015D174 0015A0D4 38 21 00 40 */ addi r1, r1, 0x40 +/* 8015D178 0015A0D8 4E 80 00 20 */ blr + +.global LoadNewCameraShakerComponent__FR12CInputStream +LoadNewCameraShakerComponent__FR12CInputStream: +/* 8015D17C 0015A0DC 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 8015D180 0015A0E0 7C 08 02 A6 */ mflr r0 +/* 8015D184 0015A0E4 90 01 00 84 */ stw r0, 0x84(r1) +/* 8015D188 0015A0E8 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 8015D18C 0015A0EC 93 C1 00 78 */ stw r30, 0x78(r1) +/* 8015D190 0015A0F0 7C 9E 23 78 */ mr r30, r4 +/* 8015D194 0015A0F4 93 A1 00 74 */ stw r29, 0x74(r1) +/* 8015D198 0015A0F8 7C 7D 1B 78 */ mr r29, r3 +/* 8015D19C 0015A0FC 7F C3 F3 78 */ mr r3, r30 +/* 8015D1A0 0015A100 4B F7 CA 5D */ bl LoadParameterFlags__FR12CInputStream +/* 8015D1A4 0015A104 7C 7F 1B 78 */ mr r31, r3 +/* 8015D1A8 0015A108 7F C4 F3 78 */ mr r4, r30 +/* 8015D1AC 0015A10C 38 61 00 20 */ addi r3, r1, 0x20 +/* 8015D1B0 0015A110 48 00 02 49 */ bl LoadCameraShakePoint__R12CInputStream +/* 8015D1B4 0015A114 80 01 00 20 */ lwz r0, 0x20(r1) +/* 8015D1B8 0015A118 7F C4 F3 78 */ mr r4, r30 +/* 8015D1BC 0015A11C C0 81 00 24 */ lfs f4, 0x24(r1) +/* 8015D1C0 0015A120 38 61 00 08 */ addi r3, r1, 8 +/* 8015D1C4 0015A124 C0 61 00 28 */ lfs f3, 0x28(r1) +/* 8015D1C8 0015A128 C0 41 00 2C */ lfs f2, 0x2c(r1) +/* 8015D1CC 0015A12C C0 21 00 30 */ lfs f1, 0x30(r1) +/* 8015D1D0 0015A130 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 8015D1D4 0015A134 90 01 00 50 */ stw r0, 0x50(r1) +/* 8015D1D8 0015A138 D0 81 00 54 */ stfs f4, 0x54(r1) +/* 8015D1DC 0015A13C D0 61 00 58 */ stfs f3, 0x58(r1) +/* 8015D1E0 0015A140 D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 8015D1E4 0015A144 D0 21 00 60 */ stfs f1, 0x60(r1) +/* 8015D1E8 0015A148 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 8015D1EC 0015A14C 48 00 02 0D */ bl LoadCameraShakePoint__R12CInputStream +/* 8015D1F0 0015A150 80 01 00 08 */ lwz r0, 8(r1) +/* 8015D1F4 0015A154 7F A3 EB 78 */ mr r3, r29 +/* 8015D1F8 0015A158 C0 81 00 0C */ lfs f4, 0xc(r1) +/* 8015D1FC 0015A15C 7F E4 FB 78 */ mr r4, r31 +/* 8015D200 0015A160 C0 61 00 10 */ lfs f3, 0x10(r1) +/* 8015D204 0015A164 38 A1 00 50 */ addi r5, r1, 0x50 +/* 8015D208 0015A168 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 8015D20C 0015A16C 38 C1 00 38 */ addi r6, r1, 0x38 +/* 8015D210 0015A170 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 8015D214 0015A174 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 8015D218 0015A178 90 01 00 38 */ stw r0, 0x38(r1) +/* 8015D21C 0015A17C D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 8015D220 0015A180 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 8015D224 0015A184 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 8015D228 0015A188 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 8015D22C 0015A18C D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 8015D230 0015A190 48 00 00 21 */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint +/* 8015D234 0015A194 80 01 00 84 */ lwz r0, 0x84(r1) +/* 8015D238 0015A198 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 8015D23C 0015A19C 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 8015D240 0015A1A0 83 A1 00 74 */ lwz r29, 0x74(r1) +/* 8015D244 0015A1A4 7C 08 03 A6 */ mtlr r0 +/* 8015D248 0015A1A8 38 21 00 80 */ addi r1, r1, 0x80 +/* 8015D24C 0015A1AC 4E 80 00 20 */ blr + +.global __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint +__ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint: +/* 8015D250 0015A1B0 3C E0 80 3E */ lis r7, lbl_803D8EA8@ha +/* 8015D254 0015A1B4 C0 02 9E E0 */ lfs f0, lbl_805ABC00@sda21(r2) +/* 8015D258 0015A1B8 38 07 8E A8 */ addi r0, r7, lbl_803D8EA8@l +/* 8015D25C 0015A1BC 90 03 00 00 */ stw r0, 0(r3) +/* 8015D260 0015A1C0 90 83 00 04 */ stw r4, 4(r3) +/* 8015D264 0015A1C4 80 05 00 00 */ lwz r0, 0(r5) +/* 8015D268 0015A1C8 90 03 00 08 */ stw r0, 8(r3) +/* 8015D26C 0015A1CC C0 25 00 04 */ lfs f1, 4(r5) +/* 8015D270 0015A1D0 D0 23 00 0C */ stfs f1, 0xc(r3) +/* 8015D274 0015A1D4 C0 25 00 08 */ lfs f1, 8(r5) +/* 8015D278 0015A1D8 D0 23 00 10 */ stfs f1, 0x10(r3) +/* 8015D27C 0015A1DC C0 25 00 0C */ lfs f1, 0xc(r5) +/* 8015D280 0015A1E0 D0 23 00 14 */ stfs f1, 0x14(r3) +/* 8015D284 0015A1E4 C0 25 00 10 */ lfs f1, 0x10(r5) +/* 8015D288 0015A1E8 D0 23 00 18 */ stfs f1, 0x18(r3) +/* 8015D28C 0015A1EC C0 25 00 14 */ lfs f1, 0x14(r5) +/* 8015D290 0015A1F0 D0 23 00 1C */ stfs f1, 0x1c(r3) +/* 8015D294 0015A1F4 80 06 00 00 */ lwz r0, 0(r6) +/* 8015D298 0015A1F8 90 03 00 20 */ stw r0, 0x20(r3) +/* 8015D29C 0015A1FC C0 26 00 04 */ lfs f1, 4(r6) +/* 8015D2A0 0015A200 D0 23 00 24 */ stfs f1, 0x24(r3) +/* 8015D2A4 0015A204 C0 26 00 08 */ lfs f1, 8(r6) +/* 8015D2A8 0015A208 D0 23 00 28 */ stfs f1, 0x28(r3) +/* 8015D2AC 0015A20C C0 26 00 0C */ lfs f1, 0xc(r6) +/* 8015D2B0 0015A210 D0 23 00 2C */ stfs f1, 0x2c(r3) +/* 8015D2B4 0015A214 C0 26 00 10 */ lfs f1, 0x10(r6) +/* 8015D2B8 0015A218 D0 23 00 30 */ stfs f1, 0x30(r3) +/* 8015D2BC 0015A21C C0 26 00 14 */ lfs f1, 0x14(r6) +/* 8015D2C0 0015A220 D0 23 00 34 */ stfs f1, 0x34(r3) +/* 8015D2C4 0015A224 D0 03 00 38 */ stfs f0, 0x38(r3) +/* 8015D2C8 0015A228 4E 80 00 20 */ blr + +.global GetSomething__17SCameraShakePointFv +GetSomething__17SCameraShakePointFv: +/* 8015D2CC 0015A22C 80 03 00 00 */ lwz r0, 0(r3) +/* 8015D2D0 0015A230 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 8015D2D4 0015A234 41 82 00 0C */ beq lbl_8015D2E0 +/* 8015D2D8 0015A238 C0 23 00 08 */ lfs f1, 8(r3) +/* 8015D2DC 0015A23C 4E 80 00 20 */ blr +lbl_8015D2E0: +/* 8015D2E0 0015A240 C0 23 00 04 */ lfs f1, 4(r3) +/* 8015D2E4 0015A244 4E 80 00 20 */ blr + +.global sub_8015d2e8 +sub_8015d2e8: +/* 8015D2E8 0015A248 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8015D2EC 0015A24C 7C 08 02 A6 */ mflr r0 +/* 8015D2F0 0015A250 90 01 00 44 */ stw r0, 0x44(r1) +/* 8015D2F4 0015A254 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 8015D2F8 0015A258 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 8015D2FC 0015A25C DB C1 00 20 */ stfd f30, 0x20(r1) +/* 8015D300 0015A260 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 +/* 8015D304 0015A264 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8015D308 0015A268 7C 7F 1B 78 */ mr r31, r3 +/* 8015D30C 0015A26C FF C0 08 90 */ fmr f30, f1 +/* 8015D310 0015A270 C0 23 00 0C */ lfs f1, 0xc(r3) +/* 8015D314 0015A274 C0 03 00 10 */ lfs f0, 0x10(r3) +/* 8015D318 0015A278 FC 1E 08 40 */ fcmpo cr0, f30, f1 +/* 8015D31C 0015A27C C0 42 9E F8 */ lfs f2, lbl_805ABC18@sda21(r2) +/* 8015D320 0015A280 EF E1 00 2A */ fadds f31, f1, f0 +/* 8015D324 0015A284 40 80 00 2C */ bge lbl_8015D350 +/* 8015D328 0015A288 C0 02 9E E0 */ lfs f0, lbl_805ABC00@sda21(r2) +/* 8015D32C 0015A28C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8015D330 0015A290 40 81 00 20 */ ble lbl_8015D350 +/* 8015D334 0015A294 EC 1E 08 24 */ fdivs f0, f30, f1 +/* 8015D338 0015A298 38 81 00 0C */ addi r4, r1, 0xc +/* 8015D33C 0015A29C 38 6D 8C C8 */ addi r3, r13, lbl_805A7888@sda21 +/* 8015D340 0015A2A0 38 AD 8C CC */ addi r5, r13, lbl_805A788C@sda21 +/* 8015D344 0015A2A4 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 8015D348 0015A2A8 4B EA EF 6D */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8015D34C 0015A2AC C0 43 00 00 */ lfs f2, 0(r3) +lbl_8015D350: +/* 8015D350 0015A2B0 FC 1E F8 40 */ fcmpo cr0, f30, f31 +/* 8015D354 0015A2B4 4C 41 13 82 */ cror 2, 1, 2 +/* 8015D358 0015A2B8 40 82 00 3C */ bne lbl_8015D394 +/* 8015D35C 0015A2BC C0 3F 00 14 */ lfs f1, 0x14(r31) +/* 8015D360 0015A2C0 C0 02 9E E0 */ lfs f0, lbl_805ABC00@sda21(r2) +/* 8015D364 0015A2C4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8015D368 0015A2C8 40 81 00 2C */ ble lbl_8015D394 +/* 8015D36C 0015A2CC EC 1E F8 28 */ fsubs f0, f30, f31 +/* 8015D370 0015A2D0 38 81 00 08 */ addi r4, r1, 8 +/* 8015D374 0015A2D4 38 6D 8C D0 */ addi r3, r13, lbl_805A7890@sda21 +/* 8015D378 0015A2D8 38 AD 8C D4 */ addi r5, r13, lbl_805A7894@sda21 +/* 8015D37C 0015A2DC EC 00 08 24 */ fdivs f0, f0, f1 +/* 8015D380 0015A2E0 D0 01 00 08 */ stfs f0, 8(r1) +/* 8015D384 0015A2E4 4B EA EF 31 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8015D388 0015A2E8 C0 23 00 00 */ lfs f1, 0(r3) +/* 8015D38C 0015A2EC C0 02 9E F8 */ lfs f0, lbl_805ABC18@sda21(r2) +/* 8015D390 0015A2F0 EC 40 08 28 */ fsubs f2, f0, f1 +lbl_8015D394: +/* 8015D394 0015A2F4 C0 1F 00 08 */ lfs f0, 8(r31) +/* 8015D398 0015A2F8 EC 00 00 B2 */ fmuls f0, f0, f2 +/* 8015D39C 0015A2FC D0 1F 00 04 */ stfs f0, 4(r31) +/* 8015D3A0 0015A300 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 8015D3A4 0015A304 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 8015D3A8 0015A308 E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 +/* 8015D3AC 0015A30C CB C1 00 20 */ lfd f30, 0x20(r1) +/* 8015D3B0 0015A310 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8015D3B4 0015A314 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8015D3B8 0015A318 7C 08 03 A6 */ mtlr r0 +/* 8015D3BC 0015A31C 38 21 00 40 */ addi r1, r1, 0x40 +/* 8015D3C0 0015A320 4E 80 00 20 */ blr + +.global __ct__17SCameraShakePointFv +__ct__17SCameraShakePointFv: +/* 8015D3C4 0015A324 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8015D3C8 0015A328 7C 08 02 A6 */ mflr r0 +/* 8015D3CC 0015A32C C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) +/* 8015D3D0 0015A330 38 80 00 00 */ li r4, 0 +/* 8015D3D4 0015A334 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015D3D8 0015A338 FC 40 08 90 */ fmr f2, f1 +/* 8015D3DC 0015A33C FC 60 08 90 */ fmr f3, f1 +/* 8015D3E0 0015A340 FC 80 08 90 */ fmr f4, f1 +/* 8015D3E4 0015A344 48 00 00 C1 */ bl __ct__17SCameraShakePointFiffff +/* 8015D3E8 0015A348 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8015D3EC 0015A34C 7C 08 03 A6 */ mtlr r0 +/* 8015D3F0 0015A350 38 21 00 10 */ addi r1, r1, 0x10 +/* 8015D3F4 0015A354 4E 80 00 20 */ blr + +.global LoadCameraShakePoint__R12CInputStream +LoadCameraShakePoint__R12CInputStream: +/* 8015D3F8 0015A358 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8015D3FC 0015A35C 7C 08 02 A6 */ mflr r0 +/* 8015D400 0015A360 90 01 00 34 */ stw r0, 0x34(r1) +/* 8015D404 0015A364 DB E1 00 28 */ stfd f31, 0x28(r1) +/* 8015D408 0015A368 DB C1 00 20 */ stfd f30, 0x20(r1) +/* 8015D40C 0015A36C DB A1 00 18 */ stfd f29, 0x18(r1) +/* 8015D410 0015A370 93 E1 00 14 */ stw r31, 0x14(r1) +/* 8015D414 0015A374 93 C1 00 10 */ stw r30, 0x10(r1) +/* 8015D418 0015A378 7C 9E 23 78 */ mr r30, r4 +/* 8015D41C 0015A37C 93 A1 00 0C */ stw r29, 0xc(r1) +/* 8015D420 0015A380 7C 7D 1B 78 */ mr r29, r3 +/* 8015D424 0015A384 7F C3 F3 78 */ mr r3, r30 +/* 8015D428 0015A388 4B F7 C7 D5 */ bl LoadParameterFlags__FR12CInputStream +/* 8015D42C 0015A38C 7C 60 1B 78 */ mr r0, r3 +/* 8015D430 0015A390 7F C3 F3 78 */ mr r3, r30 +/* 8015D434 0015A394 7C 1F 03 78 */ mr r31, r0 +/* 8015D438 0015A398 48 1E 17 F1 */ bl ReadFloat__12CInputStreamFv +/* 8015D43C 0015A39C FF E0 08 90 */ fmr f31, f1 +/* 8015D440 0015A3A0 7F C3 F3 78 */ mr r3, r30 +/* 8015D444 0015A3A4 48 1E 17 E5 */ bl ReadFloat__12CInputStreamFv +/* 8015D448 0015A3A8 FF C0 08 90 */ fmr f30, f1 +/* 8015D44C 0015A3AC 7F C3 F3 78 */ mr r3, r30 +/* 8015D450 0015A3B0 48 1E 17 D9 */ bl ReadFloat__12CInputStreamFv +/* 8015D454 0015A3B4 FF A0 08 90 */ fmr f29, f1 +/* 8015D458 0015A3B8 7F C3 F3 78 */ mr r3, r30 +/* 8015D45C 0015A3BC 48 1E 17 CD */ bl ReadFloat__12CInputStreamFv +/* 8015D460 0015A3C0 FC 80 08 90 */ fmr f4, f1 +/* 8015D464 0015A3C4 7F A3 EB 78 */ mr r3, r29 +/* 8015D468 0015A3C8 FC 20 F8 90 */ fmr f1, f31 +/* 8015D46C 0015A3CC 7F E4 FB 78 */ mr r4, r31 +/* 8015D470 0015A3D0 FC 40 F0 90 */ fmr f2, f30 +/* 8015D474 0015A3D4 FC 60 E8 90 */ fmr f3, f29 +/* 8015D478 0015A3D8 48 00 00 2D */ bl __ct__17SCameraShakePointFiffff +/* 8015D47C 0015A3DC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8015D480 0015A3E0 CB E1 00 28 */ lfd f31, 0x28(r1) +/* 8015D484 0015A3E4 CB C1 00 20 */ lfd f30, 0x20(r1) +/* 8015D488 0015A3E8 CB A1 00 18 */ lfd f29, 0x18(r1) +/* 8015D48C 0015A3EC 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 8015D490 0015A3F0 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 8015D494 0015A3F4 83 A1 00 0C */ lwz r29, 0xc(r1) +/* 8015D498 0015A3F8 7C 08 03 A6 */ mtlr r0 +/* 8015D49C 0015A3FC 38 21 00 30 */ addi r1, r1, 0x30 +/* 8015D4A0 0015A400 4E 80 00 20 */ blr + +.global __ct__17SCameraShakePointFiffff +__ct__17SCameraShakePointFiffff: +/* 8015D4A4 0015A404 90 83 00 00 */ stw r4, 0(r3) +/* 8015D4A8 0015A408 C0 02 9E E0 */ lfs f0, lbl_805ABC00@sda21(r2) +/* 8015D4AC 0015A40C D0 03 00 04 */ stfs f0, 4(r3) +/* 8015D4B0 0015A410 D0 83 00 08 */ stfs f4, 8(r3) +/* 8015D4B4 0015A414 D0 23 00 0C */ stfs f1, 0xc(r3) +/* 8015D4B8 0015A418 D0 43 00 10 */ stfs f2, 0x10(r3) +/* 8015D4BC 0015A41C D0 63 00 14 */ stfs f3, 0x14(r3) +/* 8015D4C0 0015A420 4E 80 00 20 */ blr + +.global BuildMissileShakeData__16CCameraShakeDataFfffRC9CVector3f +BuildMissileShakeData__16CCameraShakeDataFfffRC9CVector3f: +/* 8015D4C4 0015A424 94 21 FE 30 */ stwu r1, -0x1d0(r1) +/* 8015D4C8 0015A428 7C 08 02 A6 */ mflr r0 +/* 8015D4CC 0015A42C 90 01 01 D4 */ stw r0, 0x1d4(r1) +/* 8015D4D0 0015A430 DB E1 01 C8 */ stfd f31, 0x1c8(r1) +/* 8015D4D4 0015A434 FF E0 18 90 */ fmr f31, f3 +/* 8015D4D8 0015A438 93 E1 01 C4 */ stw r31, 0x1c4(r1) +/* 8015D4DC 0015A43C 7C 9F 23 78 */ mr r31, r4 +/* 8015D4E0 0015A440 93 C1 01 C0 */ stw r30, 0x1c0(r1) +/* 8015D4E4 0015A444 7C 7E 1B 78 */ mr r30, r3 +/* 8015D4E8 0015A448 38 61 00 14 */ addi r3, r1, 0x14 +/* 8015D4EC 0015A44C 48 00 03 45 */ bl __ct__16CCameraShakeDataFff +/* 8015D4F0 0015A450 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 8015D4F4 0015A454 38 81 00 14 */ addi r4, r1, 0x14 +/* 8015D4F8 0015A458 4B EA D8 B1 */ bl __ct__16CCameraShakeDataFRC16CCameraShakeData +/* 8015D4FC 0015A45C 34 81 00 94 */ addic. r4, r1, 0x94 +/* 8015D500 0015A460 41 82 00 10 */ beq lbl_8015D510 +/* 8015D504 0015A464 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015D508 0015A468 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015D50C 0015A46C 90 04 00 00 */ stw r0, 0(r4) +lbl_8015D510: +/* 8015D510 0015A470 34 81 00 58 */ addic. r4, r1, 0x58 +/* 8015D514 0015A474 41 82 00 10 */ beq lbl_8015D524 +/* 8015D518 0015A478 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015D51C 0015A47C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015D520 0015A480 90 04 00 00 */ stw r0, 0(r4) +lbl_8015D524: +/* 8015D524 0015A484 34 81 00 1C */ addic. r4, r1, 0x1c +/* 8015D528 0015A488 41 82 00 10 */ beq lbl_8015D538 +/* 8015D52C 0015A48C 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015D530 0015A490 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015D534 0015A494 90 04 00 00 */ stw r0, 0(r4) +lbl_8015D538: +/* 8015D538 0015A498 80 DF 00 00 */ lwz r6, 0(r31) +/* 8015D53C 0015A49C FC 20 F8 90 */ fmr f1, f31 +/* 8015D540 0015A4A0 80 BF 00 04 */ lwz r5, 4(r31) +/* 8015D544 0015A4A4 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 8015D548 0015A4A8 80 1F 00 08 */ lwz r0, 8(r31) +/* 8015D54C 0015A4AC 38 81 00 08 */ addi r4, r1, 8 +/* 8015D550 0015A4B0 90 C1 00 08 */ stw r6, 8(r1) +/* 8015D554 0015A4B4 90 A1 00 0C */ stw r5, 0xc(r1) +/* 8015D558 0015A4B8 90 01 00 10 */ stw r0, 0x10(r1) +/* 8015D55C 0015A4BC 4B FF F9 11 */ bl SetSfxPositionAndDistance__16CCameraShakeDataFRC9CVector3ff +/* 8015D560 0015A4C0 7F C3 F3 78 */ mr r3, r30 +/* 8015D564 0015A4C4 38 81 00 E8 */ addi r4, r1, 0xe8 +/* 8015D568 0015A4C8 4B EA D8 41 */ bl __ct__16CCameraShakeDataFRC16CCameraShakeData +/* 8015D56C 0015A4CC 34 81 01 68 */ addic. r4, r1, 0x168 +/* 8015D570 0015A4D0 41 82 00 10 */ beq lbl_8015D580 +/* 8015D574 0015A4D4 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015D578 0015A4D8 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015D57C 0015A4DC 90 04 00 00 */ stw r0, 0(r4) +lbl_8015D580: +/* 8015D580 0015A4E0 34 81 01 2C */ addic. r4, r1, 0x12c +/* 8015D584 0015A4E4 41 82 00 10 */ beq lbl_8015D594 +/* 8015D588 0015A4E8 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015D58C 0015A4EC 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015D590 0015A4F0 90 04 00 00 */ stw r0, 0(r4) +lbl_8015D594: +/* 8015D594 0015A4F4 34 81 00 F0 */ addic. r4, r1, 0xf0 +/* 8015D598 0015A4F8 41 82 00 10 */ beq lbl_8015D5A8 +/* 8015D59C 0015A4FC 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015D5A0 0015A500 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015D5A4 0015A504 90 04 00 00 */ stw r0, 0(r4) +lbl_8015D5A8: +/* 8015D5A8 0015A508 80 01 01 D4 */ lwz r0, 0x1d4(r1) +/* 8015D5AC 0015A50C CB E1 01 C8 */ lfd f31, 0x1c8(r1) +/* 8015D5B0 0015A510 83 E1 01 C4 */ lwz r31, 0x1c4(r1) +/* 8015D5B4 0015A514 83 C1 01 C0 */ lwz r30, 0x1c0(r1) +/* 8015D5B8 0015A518 7C 08 03 A6 */ mtlr r0 +/* 8015D5BC 0015A51C 38 21 01 D0 */ addi r1, r1, 0x1d0 +/* 8015D5C0 0015A520 4E 80 00 20 */ blr + +.global BuildPatternedExplodeShakeData__16CCameraShakeDataFRC9CVector3ffff +BuildPatternedExplodeShakeData__16CCameraShakeDataFRC9CVector3ffff: +/* 8015D5C4 0015A524 94 21 FE 30 */ stwu r1, -0x1d0(r1) +/* 8015D5C8 0015A528 7C 08 02 A6 */ mflr r0 +/* 8015D5CC 0015A52C 90 01 01 D4 */ stw r0, 0x1d4(r1) +/* 8015D5D0 0015A530 DB E1 01 C8 */ stfd f31, 0x1c8(r1) +/* 8015D5D4 0015A534 FF E0 18 90 */ fmr f31, f3 +/* 8015D5D8 0015A538 93 E1 01 C4 */ stw r31, 0x1c4(r1) +/* 8015D5DC 0015A53C 7C 9F 23 78 */ mr r31, r4 +/* 8015D5E0 0015A540 93 C1 01 C0 */ stw r30, 0x1c0(r1) +/* 8015D5E4 0015A544 7C 7E 1B 78 */ mr r30, r3 +/* 8015D5E8 0015A548 38 61 00 14 */ addi r3, r1, 0x14 +/* 8015D5EC 0015A54C 48 00 03 4D */ bl BuildPatternedExplodeShakeData__16CCameraShakeDataFff +/* 8015D5F0 0015A550 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 8015D5F4 0015A554 38 81 00 14 */ addi r4, r1, 0x14 +/* 8015D5F8 0015A558 4B EA D7 B1 */ bl __ct__16CCameraShakeDataFRC16CCameraShakeData +/* 8015D5FC 0015A55C 34 81 00 94 */ addic. r4, r1, 0x94 +/* 8015D600 0015A560 41 82 00 10 */ beq lbl_8015D610 +/* 8015D604 0015A564 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015D608 0015A568 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015D60C 0015A56C 90 04 00 00 */ stw r0, 0(r4) +lbl_8015D610: +/* 8015D610 0015A570 34 81 00 58 */ addic. r4, r1, 0x58 +/* 8015D614 0015A574 41 82 00 10 */ beq lbl_8015D624 +/* 8015D618 0015A578 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015D61C 0015A57C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015D620 0015A580 90 04 00 00 */ stw r0, 0(r4) +lbl_8015D624: +/* 8015D624 0015A584 34 81 00 1C */ addic. r4, r1, 0x1c +/* 8015D628 0015A588 41 82 00 10 */ beq lbl_8015D638 +/* 8015D62C 0015A58C 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015D630 0015A590 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015D634 0015A594 90 04 00 00 */ stw r0, 0(r4) +lbl_8015D638: +/* 8015D638 0015A598 80 DF 00 00 */ lwz r6, 0(r31) +/* 8015D63C 0015A59C FC 20 F8 90 */ fmr f1, f31 +/* 8015D640 0015A5A0 80 BF 00 04 */ lwz r5, 4(r31) +/* 8015D644 0015A5A4 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 8015D648 0015A5A8 80 1F 00 08 */ lwz r0, 8(r31) +/* 8015D64C 0015A5AC 38 81 00 08 */ addi r4, r1, 8 +/* 8015D650 0015A5B0 90 C1 00 08 */ stw r6, 8(r1) +/* 8015D654 0015A5B4 90 A1 00 0C */ stw r5, 0xc(r1) +/* 8015D658 0015A5B8 90 01 00 10 */ stw r0, 0x10(r1) +/* 8015D65C 0015A5BC 4B FF F8 11 */ bl SetSfxPositionAndDistance__16CCameraShakeDataFRC9CVector3ff +/* 8015D660 0015A5C0 7F C3 F3 78 */ mr r3, r30 +/* 8015D664 0015A5C4 38 81 00 E8 */ addi r4, r1, 0xe8 +/* 8015D668 0015A5C8 4B EA D7 41 */ bl __ct__16CCameraShakeDataFRC16CCameraShakeData +/* 8015D66C 0015A5CC 34 81 01 68 */ addic. r4, r1, 0x168 +/* 8015D670 0015A5D0 41 82 00 10 */ beq lbl_8015D680 +/* 8015D674 0015A5D4 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015D678 0015A5D8 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015D67C 0015A5DC 90 04 00 00 */ stw r0, 0(r4) +lbl_8015D680: +/* 8015D680 0015A5E0 34 81 01 2C */ addic. r4, r1, 0x12c +/* 8015D684 0015A5E4 41 82 00 10 */ beq lbl_8015D694 +/* 8015D688 0015A5E8 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015D68C 0015A5EC 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015D690 0015A5F0 90 04 00 00 */ stw r0, 0(r4) +lbl_8015D694: +/* 8015D694 0015A5F4 34 81 00 F0 */ addic. r4, r1, 0xf0 +/* 8015D698 0015A5F8 41 82 00 10 */ beq lbl_8015D6A8 +/* 8015D69C 0015A5FC 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015D6A0 0015A600 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015D6A4 0015A604 90 04 00 00 */ stw r0, 0(r4) +lbl_8015D6A8: +/* 8015D6A8 0015A608 80 01 01 D4 */ lwz r0, 0x1d4(r1) +/* 8015D6AC 0015A60C CB E1 01 C8 */ lfd f31, 0x1c8(r1) +/* 8015D6B0 0015A610 83 E1 01 C4 */ lwz r31, 0x1c4(r1) +/* 8015D6B4 0015A614 83 C1 01 C0 */ lwz r30, 0x1c0(r1) +/* 8015D6B8 0015A618 7C 08 03 A6 */ mtlr r0 +/* 8015D6BC 0015A61C 38 21 01 D0 */ addi r1, r1, 0x1d0 +/* 8015D6C0 0015A620 4E 80 00 20 */ blr + +.global BuildLandingCameraShake__16CCameraShakeDataFff +BuildLandingCameraShake__16CCameraShakeDataFff: +/* 8015D6C4 0015A624 94 21 FE B0 */ stwu r1, -0x150(r1) +/* 8015D6C8 0015A628 7C 08 02 A6 */ mflr r0 +/* 8015D6CC 0015A62C 90 01 01 54 */ stw r0, 0x154(r1) +/* 8015D6D0 0015A630 DB E1 01 40 */ stfd f31, 0x140(r1) +/* 8015D6D4 0015A634 F3 E1 01 48 */ psq_st f31, 328(r1), 0, qr0 +/* 8015D6D8 0015A638 DB C1 01 30 */ stfd f30, 0x130(r1) +/* 8015D6DC 0015A63C F3 C1 01 38 */ psq_st f30, 312(r1), 0, qr0 +/* 8015D6E0 0015A640 93 E1 01 2C */ stw r31, 0x12c(r1) +/* 8015D6E4 0015A644 FF E0 10 90 */ fmr f31, f2 +/* 8015D6E8 0015A648 7C 7F 1B 78 */ mr r31, r3 +/* 8015D6EC 0015A64C FF C0 08 90 */ fmr f30, f1 +/* 8015D6F0 0015A650 C0 22 9F 04 */ lfs f1, lbl_805ABC24@sda21(r2) +/* 8015D6F4 0015A654 C0 02 9F 08 */ lfs f0, lbl_805ABC28@sda21(r2) +/* 8015D6F8 0015A658 38 61 00 50 */ addi r3, r1, 0x50 +/* 8015D6FC 0015A65C FC 80 F8 90 */ fmr f4, f31 +/* 8015D700 0015A660 C0 42 9E E0 */ lfs f2, lbl_805ABC00@sda21(r2) +/* 8015D704 0015A664 EC 21 07 B2 */ fmuls f1, f1, f30 +/* 8015D708 0015A668 38 80 00 00 */ li r4, 0 +/* 8015D70C 0015A66C EC 60 07 B2 */ fmuls f3, f0, f30 +/* 8015D710 0015A670 4B FF FD 95 */ bl __ct__17SCameraShakePointFiffff +/* 8015D714 0015A674 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) +/* 8015D718 0015A678 38 61 00 38 */ addi r3, r1, 0x38 +/* 8015D71C 0015A67C C0 02 9F 0C */ lfs f0, lbl_805ABC2C@sda21(r2) +/* 8015D720 0015A680 38 80 00 01 */ li r4, 1 +/* 8015D724 0015A684 FC 40 08 90 */ fmr f2, f1 +/* 8015D728 0015A688 C0 82 9F 10 */ lfs f4, lbl_805ABC30@sda21(r2) +/* 8015D72C 0015A68C EC 60 07 B2 */ fmuls f3, f0, f30 +/* 8015D730 0015A690 4B FF FD 75 */ bl __ct__17SCameraShakePointFiffff +/* 8015D734 0015A694 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 8015D738 0015A698 38 A1 00 50 */ addi r5, r1, 0x50 +/* 8015D73C 0015A69C 38 C1 00 38 */ addi r6, r1, 0x38 +/* 8015D740 0015A6A0 38 80 00 01 */ li r4, 1 +/* 8015D744 0015A6A4 4B FF FB 0D */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint +/* 8015D748 0015A6A8 C0 22 9F 14 */ lfs f1, lbl_805ABC34@sda21(r2) +/* 8015D74C 0015A6AC FC 80 F8 90 */ fmr f4, f31 +/* 8015D750 0015A6B0 C0 02 9E E8 */ lfs f0, lbl_805ABC08@sda21(r2) +/* 8015D754 0015A6B4 38 61 00 20 */ addi r3, r1, 0x20 +/* 8015D758 0015A6B8 EC 21 07 B2 */ fmuls f1, f1, f30 +/* 8015D75C 0015A6BC C0 42 9E E0 */ lfs f2, lbl_805ABC00@sda21(r2) +/* 8015D760 0015A6C0 EC 60 07 B2 */ fmuls f3, f0, f30 +/* 8015D764 0015A6C4 38 80 00 00 */ li r4, 0 +/* 8015D768 0015A6C8 4B FF FD 3D */ bl __ct__17SCameraShakePointFiffff +/* 8015D76C 0015A6CC C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) +/* 8015D770 0015A6D0 38 61 00 08 */ addi r3, r1, 8 +/* 8015D774 0015A6D4 C0 02 9E E4 */ lfs f0, lbl_805ABC04@sda21(r2) +/* 8015D778 0015A6D8 38 80 00 01 */ li r4, 1 +/* 8015D77C 0015A6DC FC 40 08 90 */ fmr f2, f1 +/* 8015D780 0015A6E0 C0 82 9E EC */ lfs f4, lbl_805ABC0C@sda21(r2) +/* 8015D784 0015A6E4 EC 60 07 B2 */ fmuls f3, f0, f30 +/* 8015D788 0015A6E8 4B FF FD 1D */ bl __ct__17SCameraShakePointFiffff +/* 8015D78C 0015A6EC 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 8015D790 0015A6F0 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8015D794 0015A6F4 38 C1 00 08 */ addi r6, r1, 8 +/* 8015D798 0015A6F8 38 80 00 01 */ li r4, 1 +/* 8015D79C 0015A6FC 4B FF FA B5 */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint +/* 8015D7A0 0015A700 38 61 00 68 */ addi r3, r1, 0x68 +/* 8015D7A4 0015A704 4B FF F9 8D */ bl __ct__22CCameraShakerComponentFv +/* 8015D7A8 0015A708 FC 20 F0 90 */ fmr f1, f30 +/* 8015D7AC 0015A70C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8015D7B0 0015A710 C0 42 9E F4 */ lfs f2, lbl_805ABC14@sda21(r2) +/* 8015D7B4 0015A714 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 8015D7B8 0015A718 7F E3 FB 78 */ mr r3, r31 +/* 8015D7BC 0015A71C 38 C1 00 E0 */ addi r6, r1, 0xe0 +/* 8015D7C0 0015A720 38 E1 00 68 */ addi r7, r1, 0x68 +/* 8015D7C4 0015A724 39 01 00 A4 */ addi r8, r1, 0xa4 +/* 8015D7C8 0015A728 38 80 00 00 */ li r4, 0 +/* 8015D7CC 0015A72C 4B FF F6 CD */ bl __ct__16CCameraShakeDataFffiRC9CVector3fRC22CCameraShakerComponentRC22CCameraShakerComponentRC22CCameraShakerComponent +/* 8015D7D0 0015A730 34 01 00 68 */ addic. r0, r1, 0x68 +/* 8015D7D4 0015A734 41 82 00 10 */ beq lbl_8015D7E4 +/* 8015D7D8 0015A738 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015D7DC 0015A73C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015D7E0 0015A740 90 01 00 68 */ stw r0, 0x68(r1) +lbl_8015D7E4: +/* 8015D7E4 0015A744 34 01 00 A4 */ addic. r0, r1, 0xa4 +/* 8015D7E8 0015A748 41 82 00 10 */ beq lbl_8015D7F8 +/* 8015D7EC 0015A74C 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015D7F0 0015A750 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015D7F4 0015A754 90 01 00 A4 */ stw r0, 0xa4(r1) +lbl_8015D7F8: +/* 8015D7F8 0015A758 34 01 00 E0 */ addic. r0, r1, 0xe0 +/* 8015D7FC 0015A75C 41 82 00 10 */ beq lbl_8015D80C +/* 8015D800 0015A760 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015D804 0015A764 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015D808 0015A768 90 01 00 E0 */ stw r0, 0xe0(r1) +lbl_8015D80C: +/* 8015D80C 0015A76C E3 E1 01 48 */ psq_l f31, 328(r1), 0, qr0 +/* 8015D810 0015A770 CB E1 01 40 */ lfd f31, 0x140(r1) +/* 8015D814 0015A774 E3 C1 01 38 */ psq_l f30, 312(r1), 0, qr0 +/* 8015D818 0015A778 CB C1 01 30 */ lfd f30, 0x130(r1) +/* 8015D81C 0015A77C 80 01 01 54 */ lwz r0, 0x154(r1) +/* 8015D820 0015A780 83 E1 01 2C */ lwz r31, 0x12c(r1) +/* 8015D824 0015A784 7C 08 03 A6 */ mtlr r0 +/* 8015D828 0015A788 38 21 01 50 */ addi r1, r1, 0x150 +/* 8015D82C 0015A78C 4E 80 00 20 */ blr + +.global __ct__16CCameraShakeDataFff +__ct__16CCameraShakeDataFff: +/* 8015D830 0015A790 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 8015D834 0015A794 7C 08 02 A6 */ mflr r0 +/* 8015D838 0015A798 90 01 01 14 */ stw r0, 0x114(r1) +/* 8015D83C 0015A79C DB E1 01 00 */ stfd f31, 0x100(r1) +/* 8015D840 0015A7A0 F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 +/* 8015D844 0015A7A4 93 E1 00 FC */ stw r31, 0xfc(r1) +/* 8015D848 0015A7A8 FF E0 08 90 */ fmr f31, f1 +/* 8015D84C 0015A7AC C0 22 9F 14 */ lfs f1, lbl_805ABC34@sda21(r2) +/* 8015D850 0015A7B0 C0 02 9E E8 */ lfs f0, lbl_805ABC08@sda21(r2) +/* 8015D854 0015A7B4 FC 80 10 90 */ fmr f4, f2 +/* 8015D858 0015A7B8 7C 7F 1B 78 */ mr r31, r3 +/* 8015D85C 0015A7BC C0 42 9E E0 */ lfs f2, lbl_805ABC00@sda21(r2) +/* 8015D860 0015A7C0 EC 21 07 F2 */ fmuls f1, f1, f31 +/* 8015D864 0015A7C4 38 61 00 20 */ addi r3, r1, 0x20 +/* 8015D868 0015A7C8 EC 60 07 F2 */ fmuls f3, f0, f31 +/* 8015D86C 0015A7CC 38 80 00 00 */ li r4, 0 +/* 8015D870 0015A7D0 4B FF FC 35 */ bl __ct__17SCameraShakePointFiffff +/* 8015D874 0015A7D4 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) +/* 8015D878 0015A7D8 38 61 00 08 */ addi r3, r1, 8 +/* 8015D87C 0015A7DC C0 02 9E E4 */ lfs f0, lbl_805ABC04@sda21(r2) +/* 8015D880 0015A7E0 38 80 00 01 */ li r4, 1 +/* 8015D884 0015A7E4 FC 40 08 90 */ fmr f2, f1 +/* 8015D888 0015A7E8 C0 82 9E EC */ lfs f4, lbl_805ABC0C@sda21(r2) +/* 8015D88C 0015A7EC EC 60 07 F2 */ fmuls f3, f0, f31 +/* 8015D890 0015A7F0 4B FF FC 15 */ bl __ct__17SCameraShakePointFiffff +/* 8015D894 0015A7F4 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 8015D898 0015A7F8 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8015D89C 0015A7FC 38 C1 00 08 */ addi r6, r1, 8 +/* 8015D8A0 0015A800 38 80 00 01 */ li r4, 1 +/* 8015D8A4 0015A804 4B FF F9 AD */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint +/* 8015D8A8 0015A808 38 61 00 74 */ addi r3, r1, 0x74 +/* 8015D8AC 0015A80C 4B FF F8 85 */ bl __ct__22CCameraShakerComponentFv +/* 8015D8B0 0015A810 38 61 00 38 */ addi r3, r1, 0x38 +/* 8015D8B4 0015A814 4B FF F8 7D */ bl __ct__22CCameraShakerComponentFv +/* 8015D8B8 0015A818 FC 20 F8 90 */ fmr f1, f31 +/* 8015D8BC 0015A81C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8015D8C0 0015A820 C0 42 9E F4 */ lfs f2, lbl_805ABC14@sda21(r2) +/* 8015D8C4 0015A824 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 8015D8C8 0015A828 7F E3 FB 78 */ mr r3, r31 +/* 8015D8CC 0015A82C 38 C1 00 74 */ addi r6, r1, 0x74 +/* 8015D8D0 0015A830 38 E1 00 38 */ addi r7, r1, 0x38 +/* 8015D8D4 0015A834 39 01 00 B0 */ addi r8, r1, 0xb0 +/* 8015D8D8 0015A838 38 80 00 00 */ li r4, 0 +/* 8015D8DC 0015A83C 4B FF F5 BD */ bl __ct__16CCameraShakeDataFffiRC9CVector3fRC22CCameraShakerComponentRC22CCameraShakerComponentRC22CCameraShakerComponent +/* 8015D8E0 0015A840 34 01 00 38 */ addic. r0, r1, 0x38 +/* 8015D8E4 0015A844 41 82 00 10 */ beq lbl_8015D8F4 +/* 8015D8E8 0015A848 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015D8EC 0015A84C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015D8F0 0015A850 90 01 00 38 */ stw r0, 0x38(r1) +lbl_8015D8F4: +/* 8015D8F4 0015A854 34 01 00 74 */ addic. r0, r1, 0x74 +/* 8015D8F8 0015A858 41 82 00 10 */ beq lbl_8015D908 +/* 8015D8FC 0015A85C 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015D900 0015A860 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015D904 0015A864 90 01 00 74 */ stw r0, 0x74(r1) +lbl_8015D908: +/* 8015D908 0015A868 34 01 00 B0 */ addic. r0, r1, 0xb0 +/* 8015D90C 0015A86C 41 82 00 10 */ beq lbl_8015D91C +/* 8015D910 0015A870 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015D914 0015A874 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015D918 0015A878 90 01 00 B0 */ stw r0, 0xb0(r1) +lbl_8015D91C: +/* 8015D91C 0015A87C E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 +/* 8015D920 0015A880 80 01 01 14 */ lwz r0, 0x114(r1) +/* 8015D924 0015A884 CB E1 01 00 */ lfd f31, 0x100(r1) +/* 8015D928 0015A888 83 E1 00 FC */ lwz r31, 0xfc(r1) +/* 8015D92C 0015A88C 7C 08 03 A6 */ mtlr r0 +/* 8015D930 0015A890 38 21 01 10 */ addi r1, r1, 0x110 +/* 8015D934 0015A894 4E 80 00 20 */ blr + +.global BuildPatternedExplodeShakeData__16CCameraShakeDataFff +BuildPatternedExplodeShakeData__16CCameraShakeDataFff: +/* 8015D938 0015A898 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 8015D93C 0015A89C 7C 08 02 A6 */ mflr r0 +/* 8015D940 0015A8A0 90 01 01 14 */ stw r0, 0x114(r1) +/* 8015D944 0015A8A4 DB E1 01 00 */ stfd f31, 0x100(r1) +/* 8015D948 0015A8A8 F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 +/* 8015D94C 0015A8AC 93 E1 00 FC */ stw r31, 0xfc(r1) +/* 8015D950 0015A8B0 FF E0 08 90 */ fmr f31, f1 +/* 8015D954 0015A8B4 C0 22 9F 14 */ lfs f1, lbl_805ABC34@sda21(r2) +/* 8015D958 0015A8B8 C0 02 9E E8 */ lfs f0, lbl_805ABC08@sda21(r2) +/* 8015D95C 0015A8BC FC 80 10 90 */ fmr f4, f2 +/* 8015D960 0015A8C0 7C 7F 1B 78 */ mr r31, r3 +/* 8015D964 0015A8C4 C0 42 9E E0 */ lfs f2, lbl_805ABC00@sda21(r2) +/* 8015D968 0015A8C8 EC 21 07 F2 */ fmuls f1, f1, f31 +/* 8015D96C 0015A8CC 38 61 00 20 */ addi r3, r1, 0x20 +/* 8015D970 0015A8D0 EC 60 07 F2 */ fmuls f3, f0, f31 +/* 8015D974 0015A8D4 38 80 00 00 */ li r4, 0 +/* 8015D978 0015A8D8 4B FF FB 2D */ bl __ct__17SCameraShakePointFiffff +/* 8015D97C 0015A8DC C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) +/* 8015D980 0015A8E0 38 61 00 08 */ addi r3, r1, 8 +/* 8015D984 0015A8E4 C0 02 9E E4 */ lfs f0, lbl_805ABC04@sda21(r2) +/* 8015D988 0015A8E8 38 80 00 01 */ li r4, 1 +/* 8015D98C 0015A8EC FC 40 08 90 */ fmr f2, f1 +/* 8015D990 0015A8F0 C0 82 9E EC */ lfs f4, lbl_805ABC0C@sda21(r2) +/* 8015D994 0015A8F4 EC 60 07 F2 */ fmuls f3, f0, f31 +/* 8015D998 0015A8F8 4B FF FB 0D */ bl __ct__17SCameraShakePointFiffff +/* 8015D99C 0015A8FC 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 8015D9A0 0015A900 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8015D9A4 0015A904 38 C1 00 08 */ addi r6, r1, 8 +/* 8015D9A8 0015A908 38 80 00 01 */ li r4, 1 +/* 8015D9AC 0015A90C 4B FF F8 A5 */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint +/* 8015D9B0 0015A910 38 61 00 74 */ addi r3, r1, 0x74 +/* 8015D9B4 0015A914 4B FF F7 7D */ bl __ct__22CCameraShakerComponentFv +/* 8015D9B8 0015A918 38 61 00 38 */ addi r3, r1, 0x38 +/* 8015D9BC 0015A91C 4B FF F7 75 */ bl __ct__22CCameraShakerComponentFv +/* 8015D9C0 0015A920 FC 20 F8 90 */ fmr f1, f31 +/* 8015D9C4 0015A924 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8015D9C8 0015A928 C0 42 9E F4 */ lfs f2, lbl_805ABC14@sda21(r2) +/* 8015D9CC 0015A92C 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 8015D9D0 0015A930 7F E3 FB 78 */ mr r3, r31 +/* 8015D9D4 0015A934 38 C1 00 B0 */ addi r6, r1, 0xb0 +/* 8015D9D8 0015A938 38 E1 00 74 */ addi r7, r1, 0x74 +/* 8015D9DC 0015A93C 39 01 00 38 */ addi r8, r1, 0x38 +/* 8015D9E0 0015A940 38 80 00 00 */ li r4, 0 +/* 8015D9E4 0015A944 4B FF F4 B5 */ bl __ct__16CCameraShakeDataFffiRC9CVector3fRC22CCameraShakerComponentRC22CCameraShakerComponentRC22CCameraShakerComponent +/* 8015D9E8 0015A948 34 01 00 38 */ addic. r0, r1, 0x38 +/* 8015D9EC 0015A94C 41 82 00 10 */ beq lbl_8015D9FC +/* 8015D9F0 0015A950 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015D9F4 0015A954 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015D9F8 0015A958 90 01 00 38 */ stw r0, 0x38(r1) +lbl_8015D9FC: +/* 8015D9FC 0015A95C 34 01 00 74 */ addic. r0, r1, 0x74 +/* 8015DA00 0015A960 41 82 00 10 */ beq lbl_8015DA10 +/* 8015DA04 0015A964 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015DA08 0015A968 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015DA0C 0015A96C 90 01 00 74 */ stw r0, 0x74(r1) +lbl_8015DA10: +/* 8015DA10 0015A970 34 01 00 B0 */ addic. r0, r1, 0xb0 +/* 8015DA14 0015A974 41 82 00 10 */ beq lbl_8015DA24 +/* 8015DA18 0015A978 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015DA1C 0015A97C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015DA20 0015A980 90 01 00 B0 */ stw r0, 0xb0(r1) +lbl_8015DA24: +/* 8015DA24 0015A984 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 +/* 8015DA28 0015A988 80 01 01 14 */ lwz r0, 0x114(r1) +/* 8015DA2C 0015A98C CB E1 01 00 */ lfd f31, 0x100(r1) +/* 8015DA30 0015A990 83 E1 00 FC */ lwz r31, 0xfc(r1) +/* 8015DA34 0015A994 7C 08 03 A6 */ mtlr r0 +/* 8015DA38 0015A998 38 21 01 10 */ addi r1, r1, 0x110 +/* 8015DA3C 0015A99C 4E 80 00 20 */ blr + +.global BuildPhazonCameraShakeData__16CCameraShakeDataFff +BuildPhazonCameraShakeData__16CCameraShakeDataFff: +/* 8015DA40 0015A9A0 94 21 FE A0 */ stwu r1, -0x160(r1) +/* 8015DA44 0015A9A4 7C 08 02 A6 */ mflr r0 +/* 8015DA48 0015A9A8 90 01 01 64 */ stw r0, 0x164(r1) +/* 8015DA4C 0015A9AC DB E1 01 50 */ stfd f31, 0x150(r1) +/* 8015DA50 0015A9B0 F3 E1 01 58 */ psq_st f31, 344(r1), 0, qr0 +/* 8015DA54 0015A9B4 DB C1 01 40 */ stfd f30, 0x140(r1) +/* 8015DA58 0015A9B8 F3 C1 01 48 */ psq_st f30, 328(r1), 0, qr0 +/* 8015DA5C 0015A9BC DB A1 01 30 */ stfd f29, 0x130(r1) +/* 8015DA60 0015A9C0 F3 A1 01 38 */ psq_st f29, 312(r1), 0, qr0 +/* 8015DA64 0015A9C4 93 E1 01 2C */ stw r31, 0x12c(r1) +/* 8015DA68 0015A9C8 FF A0 08 90 */ fmr f29, f1 +/* 8015DA6C 0015A9CC C0 02 9F 14 */ lfs f0, lbl_805ABC34@sda21(r2) +/* 8015DA70 0015A9D0 FF C0 10 90 */ fmr f30, f2 +/* 8015DA74 0015A9D4 C0 22 9F 04 */ lfs f1, lbl_805ABC24@sda21(r2) +/* 8015DA78 0015A9D8 7C 7F 1B 78 */ mr r31, r3 +/* 8015DA7C 0015A9DC C0 42 9E E0 */ lfs f2, lbl_805ABC00@sda21(r2) +/* 8015DA80 0015A9E0 EF E0 07 72 */ fmuls f31, f0, f29 +/* 8015DA84 0015A9E4 38 61 00 50 */ addi r3, r1, 0x50 +/* 8015DA88 0015A9E8 FC 80 F0 90 */ fmr f4, f30 +/* 8015DA8C 0015A9EC 38 80 00 00 */ li r4, 0 +/* 8015DA90 0015A9F0 EC 21 07 72 */ fmuls f1, f1, f29 +/* 8015DA94 0015A9F4 FC 60 F8 90 */ fmr f3, f31 +/* 8015DA98 0015A9F8 4B FF FA 0D */ bl __ct__17SCameraShakePointFiffff +/* 8015DA9C 0015A9FC C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) +/* 8015DAA0 0015AA00 38 61 00 38 */ addi r3, r1, 0x38 +/* 8015DAA4 0015AA04 C0 02 9F 0C */ lfs f0, lbl_805ABC2C@sda21(r2) +/* 8015DAA8 0015AA08 38 80 00 01 */ li r4, 1 +/* 8015DAAC 0015AA0C FC 40 08 90 */ fmr f2, f1 +/* 8015DAB0 0015AA10 C0 82 9F 18 */ lfs f4, lbl_805ABC38@sda21(r2) +/* 8015DAB4 0015AA14 EC 60 07 72 */ fmuls f3, f0, f29 +/* 8015DAB8 0015AA18 4B FF F9 ED */ bl __ct__17SCameraShakePointFiffff +/* 8015DABC 0015AA1C 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 8015DAC0 0015AA20 38 A1 00 50 */ addi r5, r1, 0x50 +/* 8015DAC4 0015AA24 38 C1 00 38 */ addi r6, r1, 0x38 +/* 8015DAC8 0015AA28 38 80 00 01 */ li r4, 1 +/* 8015DACC 0015AA2C 4B FF F7 85 */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint +/* 8015DAD0 0015AA30 FC 20 F8 90 */ fmr f1, f31 +/* 8015DAD4 0015AA34 C0 42 9E E0 */ lfs f2, lbl_805ABC00@sda21(r2) +/* 8015DAD8 0015AA38 FC 60 F8 90 */ fmr f3, f31 +/* 8015DADC 0015AA3C 38 61 00 20 */ addi r3, r1, 0x20 +/* 8015DAE0 0015AA40 FC 80 F0 90 */ fmr f4, f30 +/* 8015DAE4 0015AA44 38 80 00 00 */ li r4, 0 +/* 8015DAE8 0015AA48 4B FF F9 BD */ bl __ct__17SCameraShakePointFiffff +/* 8015DAEC 0015AA4C C0 82 9E E4 */ lfs f4, lbl_805ABC04@sda21(r2) +/* 8015DAF0 0015AA50 38 61 00 08 */ addi r3, r1, 8 +/* 8015DAF4 0015AA54 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) +/* 8015DAF8 0015AA58 38 80 00 01 */ li r4, 1 +/* 8015DAFC 0015AA5C EC 64 07 72 */ fmuls f3, f4, f29 +/* 8015DB00 0015AA60 FC 40 08 90 */ fmr f2, f1 +/* 8015DB04 0015AA64 4B FF F9 A1 */ bl __ct__17SCameraShakePointFiffff +/* 8015DB08 0015AA68 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 8015DB0C 0015AA6C 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8015DB10 0015AA70 38 C1 00 08 */ addi r6, r1, 8 +/* 8015DB14 0015AA74 38 80 00 01 */ li r4, 1 +/* 8015DB18 0015AA78 4B FF F7 39 */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint +/* 8015DB1C 0015AA7C 38 61 00 68 */ addi r3, r1, 0x68 +/* 8015DB20 0015AA80 4B FF F6 11 */ bl __ct__22CCameraShakerComponentFv +/* 8015DB24 0015AA84 FC 20 E8 90 */ fmr f1, f29 +/* 8015DB28 0015AA88 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8015DB2C 0015AA8C C0 42 9E F4 */ lfs f2, lbl_805ABC14@sda21(r2) +/* 8015DB30 0015AA90 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 8015DB34 0015AA94 7F E3 FB 78 */ mr r3, r31 +/* 8015DB38 0015AA98 38 C1 00 E0 */ addi r6, r1, 0xe0 +/* 8015DB3C 0015AA9C 38 E1 00 68 */ addi r7, r1, 0x68 +/* 8015DB40 0015AAA0 39 01 00 A4 */ addi r8, r1, 0xa4 +/* 8015DB44 0015AAA4 38 80 00 00 */ li r4, 0 +/* 8015DB48 0015AAA8 4B FF F3 51 */ bl __ct__16CCameraShakeDataFffiRC9CVector3fRC22CCameraShakerComponentRC22CCameraShakerComponentRC22CCameraShakerComponent +/* 8015DB4C 0015AAAC 34 01 00 68 */ addic. r0, r1, 0x68 +/* 8015DB50 0015AAB0 41 82 00 10 */ beq lbl_8015DB60 +/* 8015DB54 0015AAB4 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015DB58 0015AAB8 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015DB5C 0015AABC 90 01 00 68 */ stw r0, 0x68(r1) +lbl_8015DB60: +/* 8015DB60 0015AAC0 34 01 00 A4 */ addic. r0, r1, 0xa4 +/* 8015DB64 0015AAC4 41 82 00 10 */ beq lbl_8015DB74 +/* 8015DB68 0015AAC8 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015DB6C 0015AACC 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015DB70 0015AAD0 90 01 00 A4 */ stw r0, 0xa4(r1) +lbl_8015DB74: +/* 8015DB74 0015AAD4 34 01 00 E0 */ addic. r0, r1, 0xe0 +/* 8015DB78 0015AAD8 41 82 00 10 */ beq lbl_8015DB88 +/* 8015DB7C 0015AADC 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015DB80 0015AAE0 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015DB84 0015AAE4 90 01 00 E0 */ stw r0, 0xe0(r1) +lbl_8015DB88: +/* 8015DB88 0015AAE8 E3 E1 01 58 */ psq_l f31, 344(r1), 0, qr0 +/* 8015DB8C 0015AAEC CB E1 01 50 */ lfd f31, 0x150(r1) +/* 8015DB90 0015AAF0 E3 C1 01 48 */ psq_l f30, 328(r1), 0, qr0 +/* 8015DB94 0015AAF4 CB C1 01 40 */ lfd f30, 0x140(r1) +/* 8015DB98 0015AAF8 E3 A1 01 38 */ psq_l f29, 312(r1), 0, qr0 +/* 8015DB9C 0015AAFC CB A1 01 30 */ lfd f29, 0x130(r1) +/* 8015DBA0 0015AB00 80 01 01 64 */ lwz r0, 0x164(r1) +/* 8015DBA4 0015AB04 83 E1 01 2C */ lwz r31, 0x12c(r1) +/* 8015DBA8 0015AB08 7C 08 03 A6 */ mtlr r0 +/* 8015DBAC 0015AB0C 38 21 01 60 */ addi r1, r1, 0x160 +/* 8015DBB0 0015AB10 4E 80 00 20 */ blr + +.global BuildProjectileCameraShake__16CCameraShakeDataFff +BuildProjectileCameraShake__16CCameraShakeDataFff: +/* 8015DBB4 0015AB14 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 8015DBB8 0015AB18 7C 08 02 A6 */ mflr r0 +/* 8015DBBC 0015AB1C 90 01 01 14 */ stw r0, 0x114(r1) +/* 8015DBC0 0015AB20 DB E1 01 00 */ stfd f31, 0x100(r1) +/* 8015DBC4 0015AB24 F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 +/* 8015DBC8 0015AB28 93 E1 00 FC */ stw r31, 0xfc(r1) +/* 8015DBCC 0015AB2C FF E0 08 90 */ fmr f31, f1 +/* 8015DBD0 0015AB30 7C 7F 1B 78 */ mr r31, r3 +/* 8015DBD4 0015AB34 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) +/* 8015DBD8 0015AB38 FC 80 10 90 */ fmr f4, f2 +/* 8015DBDC 0015AB3C 38 61 00 20 */ addi r3, r1, 0x20 +/* 8015DBE0 0015AB40 38 80 00 00 */ li r4, 0 +/* 8015DBE4 0015AB44 FC 40 08 90 */ fmr f2, f1 +/* 8015DBE8 0015AB48 FC 60 F8 90 */ fmr f3, f31 +/* 8015DBEC 0015AB4C 4B FF F8 B9 */ bl __ct__17SCameraShakePointFiffff +/* 8015DBF0 0015AB50 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) +/* 8015DBF4 0015AB54 38 61 00 08 */ addi r3, r1, 8 +/* 8015DBF8 0015AB58 C0 02 9E E4 */ lfs f0, lbl_805ABC04@sda21(r2) +/* 8015DBFC 0015AB5C 38 80 00 01 */ li r4, 1 +/* 8015DC00 0015AB60 FC 40 08 90 */ fmr f2, f1 +/* 8015DC04 0015AB64 C0 82 9E F0 */ lfs f4, lbl_805ABC10@sda21(r2) +/* 8015DC08 0015AB68 EC 60 07 F2 */ fmuls f3, f0, f31 +/* 8015DC0C 0015AB6C 4B FF F8 99 */ bl __ct__17SCameraShakePointFiffff +/* 8015DC10 0015AB70 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 8015DC14 0015AB74 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8015DC18 0015AB78 38 C1 00 08 */ addi r6, r1, 8 +/* 8015DC1C 0015AB7C 38 80 00 01 */ li r4, 1 +/* 8015DC20 0015AB80 4B FF F6 31 */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint +/* 8015DC24 0015AB84 38 61 00 74 */ addi r3, r1, 0x74 +/* 8015DC28 0015AB88 4B FF F5 09 */ bl __ct__22CCameraShakerComponentFv +/* 8015DC2C 0015AB8C 38 61 00 38 */ addi r3, r1, 0x38 +/* 8015DC30 0015AB90 4B FF F5 01 */ bl __ct__22CCameraShakerComponentFv +/* 8015DC34 0015AB94 FC 20 F8 90 */ fmr f1, f31 +/* 8015DC38 0015AB98 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8015DC3C 0015AB9C C0 42 9E F4 */ lfs f2, lbl_805ABC14@sda21(r2) +/* 8015DC40 0015ABA0 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 8015DC44 0015ABA4 7F E3 FB 78 */ mr r3, r31 +/* 8015DC48 0015ABA8 38 C1 00 B0 */ addi r6, r1, 0xb0 +/* 8015DC4C 0015ABAC 38 E1 00 74 */ addi r7, r1, 0x74 +/* 8015DC50 0015ABB0 39 01 00 38 */ addi r8, r1, 0x38 +/* 8015DC54 0015ABB4 38 80 00 00 */ li r4, 0 +/* 8015DC58 0015ABB8 4B FF F2 41 */ bl __ct__16CCameraShakeDataFffiRC9CVector3fRC22CCameraShakerComponentRC22CCameraShakerComponentRC22CCameraShakerComponent +/* 8015DC5C 0015ABBC 34 01 00 38 */ addic. r0, r1, 0x38 +/* 8015DC60 0015ABC0 41 82 00 10 */ beq lbl_8015DC70 +/* 8015DC64 0015ABC4 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015DC68 0015ABC8 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015DC6C 0015ABCC 90 01 00 38 */ stw r0, 0x38(r1) +lbl_8015DC70: +/* 8015DC70 0015ABD0 34 01 00 74 */ addic. r0, r1, 0x74 +/* 8015DC74 0015ABD4 41 82 00 10 */ beq lbl_8015DC84 +/* 8015DC78 0015ABD8 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015DC7C 0015ABDC 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015DC80 0015ABE0 90 01 00 74 */ stw r0, 0x74(r1) +lbl_8015DC84: +/* 8015DC84 0015ABE4 34 01 00 B0 */ addic. r0, r1, 0xb0 +/* 8015DC88 0015ABE8 41 82 00 10 */ beq lbl_8015DC98 +/* 8015DC8C 0015ABEC 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015DC90 0015ABF0 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015DC94 0015ABF4 90 01 00 B0 */ stw r0, 0xb0(r1) +lbl_8015DC98: +/* 8015DC98 0015ABF8 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 +/* 8015DC9C 0015ABFC 80 01 01 14 */ lwz r0, 0x114(r1) +/* 8015DCA0 0015AC00 CB E1 01 00 */ lfd f31, 0x100(r1) +/* 8015DCA4 0015AC04 83 E1 00 FC */ lwz r31, 0xfc(r1) +/* 8015DCA8 0015AC08 7C 08 03 A6 */ mtlr r0 +/* 8015DCAC 0015AC0C 38 21 01 10 */ addi r1, r1, 0x110 +/* 8015DCB0 0015AC10 4E 80 00 20 */ blr + +.global __sinit_CCameraShakeData_cpp +__sinit_CCameraShakeData_cpp: +/* 8015DCB4 0015AC14 94 21 FE 80 */ stwu r1, -0x180(r1) +/* 8015DCB8 0015AC18 7C 08 02 A6 */ mflr r0 +/* 8015DCBC 0015AC1C C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) +/* 8015DCC0 0015AC20 3C 60 80 47 */ lis r3, lbl_8046C7D0@ha +/* 8015DCC4 0015AC24 90 01 01 84 */ stw r0, 0x184(r1) +/* 8015DCC8 0015AC28 38 80 00 00 */ li r4, 0 +/* 8015DCCC 0015AC2C FC 40 08 90 */ fmr f2, f1 +/* 8015DCD0 0015AC30 C0 62 9F 18 */ lfs f3, lbl_805ABC38@sda21(r2) +/* 8015DCD4 0015AC34 93 E1 01 7C */ stw r31, 0x17c(r1) +/* 8015DCD8 0015AC38 3B E3 C7 D0 */ addi r31, r3, lbl_8046C7D0@l +/* 8015DCDC 0015AC3C C0 82 9F 1C */ lfs f4, lbl_805ABC3C@sda21(r2) +/* 8015DCE0 0015AC40 38 7F 00 00 */ addi r3, r31, 0 +/* 8015DCE4 0015AC44 4B FF F7 C1 */ bl __ct__17SCameraShakePointFiffff +/* 8015DCE8 0015AC48 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) +/* 8015DCEC 0015AC4C 38 7F 00 18 */ addi r3, r31, 0x18 +/* 8015DCF0 0015AC50 C0 62 9F 18 */ lfs f3, lbl_805ABC38@sda21(r2) +/* 8015DCF4 0015AC54 38 80 00 00 */ li r4, 0 +/* 8015DCF8 0015AC58 FC 40 08 90 */ fmr f2, f1 +/* 8015DCFC 0015AC5C C0 82 9F 20 */ lfs f4, lbl_805ABC40@sda21(r2) +/* 8015DD00 0015AC60 4B FF F7 A5 */ bl __ct__17SCameraShakePointFiffff +/* 8015DD04 0015AC64 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) +/* 8015DD08 0015AC68 38 7F 00 30 */ addi r3, r31, 0x30 +/* 8015DD0C 0015AC6C C0 62 9F 24 */ lfs f3, lbl_805ABC44@sda21(r2) +/* 8015DD10 0015AC70 38 80 00 01 */ li r4, 1 +/* 8015DD14 0015AC74 FC 40 08 90 */ fmr f2, f1 +/* 8015DD18 0015AC78 C0 82 9F 18 */ lfs f4, lbl_805ABC38@sda21(r2) +/* 8015DD1C 0015AC7C 4B FF F7 89 */ bl __ct__17SCameraShakePointFiffff +/* 8015DD20 0015AC80 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) +/* 8015DD24 0015AC84 38 7F 00 48 */ addi r3, r31, 0x48 +/* 8015DD28 0015AC88 C0 62 9F 24 */ lfs f3, lbl_805ABC44@sda21(r2) +/* 8015DD2C 0015AC8C 38 80 00 01 */ li r4, 1 +/* 8015DD30 0015AC90 FC 40 08 90 */ fmr f2, f1 +/* 8015DD34 0015AC94 C0 82 9E E4 */ lfs f4, lbl_805ABC04@sda21(r2) +/* 8015DD38 0015AC98 4B FF F7 6D */ bl __ct__17SCameraShakePointFiffff +/* 8015DD3C 0015AC9C 38 61 01 34 */ addi r3, r1, 0x134 +/* 8015DD40 0015ACA0 4B FF F3 F1 */ bl __ct__22CCameraShakerComponentFv +/* 8015DD44 0015ACA4 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 8015DD48 0015ACA8 38 BF 00 00 */ addi r5, r31, 0 +/* 8015DD4C 0015ACAC 38 DF 00 30 */ addi r6, r31, 0x30 +/* 8015DD50 0015ACB0 38 80 00 01 */ li r4, 1 +/* 8015DD54 0015ACB4 4B FF F4 FD */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint +/* 8015DD58 0015ACB8 38 61 00 BC */ addi r3, r1, 0xbc +/* 8015DD5C 0015ACBC 4B FF F3 D5 */ bl __ct__22CCameraShakerComponentFv +/* 8015DD60 0015ACC0 3C 60 80 57 */ lis r3, lbl_805719E8@ha +/* 8015DD64 0015ACC4 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8015DD68 0015ACC8 38 A4 66 A0 */ addi r5, r4, skZero3f@l +/* 8015DD6C 0015ACCC C0 22 9F 18 */ lfs f1, lbl_805ABC38@sda21(r2) +/* 8015DD70 0015ACD0 C0 42 9E F4 */ lfs f2, lbl_805ABC14@sda21(r2) +/* 8015DD74 0015ACD4 38 63 19 E8 */ addi r3, r3, lbl_805719E8@l +/* 8015DD78 0015ACD8 38 C1 01 34 */ addi r6, r1, 0x134 +/* 8015DD7C 0015ACDC 38 E1 00 F8 */ addi r7, r1, 0xf8 +/* 8015DD80 0015ACE0 39 01 00 BC */ addi r8, r1, 0xbc +/* 8015DD84 0015ACE4 38 80 00 00 */ li r4, 0 +/* 8015DD88 0015ACE8 4B FF F1 11 */ bl __ct__16CCameraShakeDataFffiRC9CVector3fRC22CCameraShakerComponentRC22CCameraShakerComponentRC22CCameraShakerComponent +/* 8015DD8C 0015ACEC 3C 80 80 01 */ lis r4, sub_8000ad2c@ha +/* 8015DD90 0015ACF0 38 BF 00 60 */ addi r5, r31, 0x60 +/* 8015DD94 0015ACF4 38 84 AD 2C */ addi r4, r4, sub_8000ad2c@l +/* 8015DD98 0015ACF8 48 22 B8 F5 */ bl __register_global_object +/* 8015DD9C 0015ACFC 34 01 00 BC */ addic. r0, r1, 0xbc +/* 8015DDA0 0015AD00 41 82 00 10 */ beq lbl_8015DDB0 +/* 8015DDA4 0015AD04 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015DDA8 0015AD08 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015DDAC 0015AD0C 90 01 00 BC */ stw r0, 0xbc(r1) +lbl_8015DDB0: +/* 8015DDB0 0015AD10 34 01 00 F8 */ addic. r0, r1, 0xf8 +/* 8015DDB4 0015AD14 41 82 00 10 */ beq lbl_8015DDC4 +/* 8015DDB8 0015AD18 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015DDBC 0015AD1C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015DDC0 0015AD20 90 01 00 F8 */ stw r0, 0xf8(r1) +lbl_8015DDC4: +/* 8015DDC4 0015AD24 34 01 01 34 */ addic. r0, r1, 0x134 +/* 8015DDC8 0015AD28 41 82 00 10 */ beq lbl_8015DDD8 +/* 8015DDCC 0015AD2C 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015DDD0 0015AD30 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015DDD4 0015AD34 90 01 01 34 */ stw r0, 0x134(r1) +lbl_8015DDD8: +/* 8015DDD8 0015AD38 38 61 00 80 */ addi r3, r1, 0x80 +/* 8015DDDC 0015AD3C 4B FF F3 55 */ bl __ct__22CCameraShakerComponentFv +/* 8015DDE0 0015AD40 38 61 00 44 */ addi r3, r1, 0x44 +/* 8015DDE4 0015AD44 38 BF 00 18 */ addi r5, r31, 0x18 +/* 8015DDE8 0015AD48 38 DF 00 48 */ addi r6, r31, 0x48 +/* 8015DDEC 0015AD4C 38 80 00 01 */ li r4, 1 +/* 8015DDF0 0015AD50 4B FF F4 61 */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint +/* 8015DDF4 0015AD54 38 61 00 08 */ addi r3, r1, 8 +/* 8015DDF8 0015AD58 4B FF F3 39 */ bl __ct__22CCameraShakerComponentFv +/* 8015DDFC 0015AD5C 3C 60 80 57 */ lis r3, lbl_80571B90@ha +/* 8015DE00 0015AD60 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8015DE04 0015AD64 38 A4 66 A0 */ addi r5, r4, skZero3f@l +/* 8015DE08 0015AD68 C0 22 9F 18 */ lfs f1, lbl_805ABC38@sda21(r2) +/* 8015DE0C 0015AD6C C0 42 9E F4 */ lfs f2, lbl_805ABC14@sda21(r2) +/* 8015DE10 0015AD70 38 63 1B 90 */ addi r3, r3, lbl_80571B90@l +/* 8015DE14 0015AD74 38 C1 00 80 */ addi r6, r1, 0x80 +/* 8015DE18 0015AD78 38 E1 00 44 */ addi r7, r1, 0x44 +/* 8015DE1C 0015AD7C 39 01 00 08 */ addi r8, r1, 8 +/* 8015DE20 0015AD80 38 80 00 00 */ li r4, 0 +/* 8015DE24 0015AD84 4B FF F0 75 */ bl __ct__16CCameraShakeDataFffiRC9CVector3fRC22CCameraShakerComponentRC22CCameraShakerComponentRC22CCameraShakerComponent +/* 8015DE28 0015AD88 3C 80 80 01 */ lis r4, sub_8000ad2c@ha +/* 8015DE2C 0015AD8C 38 BF 00 6C */ addi r5, r31, 0x6c +/* 8015DE30 0015AD90 38 84 AD 2C */ addi r4, r4, sub_8000ad2c@l +/* 8015DE34 0015AD94 48 22 B8 59 */ bl __register_global_object +/* 8015DE38 0015AD98 34 01 00 08 */ addic. r0, r1, 8 +/* 8015DE3C 0015AD9C 41 82 00 10 */ beq lbl_8015DE4C +/* 8015DE40 0015ADA0 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015DE44 0015ADA4 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015DE48 0015ADA8 90 01 00 08 */ stw r0, 8(r1) +lbl_8015DE4C: +/* 8015DE4C 0015ADAC 34 01 00 44 */ addic. r0, r1, 0x44 +/* 8015DE50 0015ADB0 41 82 00 10 */ beq lbl_8015DE60 +/* 8015DE54 0015ADB4 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015DE58 0015ADB8 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015DE5C 0015ADBC 90 01 00 44 */ stw r0, 0x44(r1) +lbl_8015DE60: +/* 8015DE60 0015ADC0 34 01 00 80 */ addic. r0, r1, 0x80 +/* 8015DE64 0015ADC4 41 82 00 10 */ beq lbl_8015DE74 +/* 8015DE68 0015ADC8 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8015DE6C 0015ADCC 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8015DE70 0015ADD0 90 01 00 80 */ stw r0, 0x80(r1) +lbl_8015DE74: +/* 8015DE74 0015ADD4 80 01 01 84 */ lwz r0, 0x184(r1) +/* 8015DE78 0015ADD8 83 E1 01 7C */ lwz r31, 0x17c(r1) +/* 8015DE7C 0015ADDC 7C 08 03 A6 */ mtlr r0 +/* 8015DE80 0015ADE0 38 21 01 80 */ addi r1, r1, 0x180 +/* 8015DE84 0015ADE4 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CGameCollision.s b/asm/Kyoto_CWD/CGameCollision.s new file mode 100644 index 00000000..428f4a6f --- /dev/null +++ b/asm/Kyoto_CWD/CGameCollision.s @@ -0,0 +1,6392 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global sub_8017fb84 +sub_8017fb84: +/* 8017FB84 0017CAE4 94 21 E1 C0 */ stwu r1, -0x1e40(r1) +/* 8017FB88 0017CAE8 7C 08 02 A6 */ mflr r0 +/* 8017FB8C 0017CAEC 90 01 1E 44 */ stw r0, 0x1e44(r1) +/* 8017FB90 0017CAF0 38 00 1E 38 */ li r0, 0x1e38 +/* 8017FB94 0017CAF4 DB E1 1E 30 */ stfd f31, 0x1e30(r1) +/* 8017FB98 0017CAF8 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 +/* 8017FB9C 0017CAFC 38 00 1E 28 */ li r0, 0x1e28 +/* 8017FBA0 0017CB00 DB C1 1E 20 */ stfd f30, 0x1e20(r1) +/* 8017FBA4 0017CB04 13 C1 00 0E */ psq_stx f30, r1, r0, 0, qr0 +/* 8017FBA8 0017CB08 38 00 1E 18 */ li r0, 0x1e18 +/* 8017FBAC 0017CB0C DB A1 1E 10 */ stfd f29, 0x1e10(r1) +/* 8017FBB0 0017CB10 13 A1 00 0E */ psq_stx f29, r1, r0, 0, qr0 +/* 8017FBB4 0017CB14 38 00 1E 08 */ li r0, 0x1e08 +/* 8017FBB8 0017CB18 DB 81 1E 00 */ stfd f28, 0x1e00(r1) +/* 8017FBBC 0017CB1C 13 81 00 0E */ psq_stx f28, r1, r0, 0, qr0 +/* 8017FBC0 0017CB20 38 00 1D F8 */ li r0, 0x1df8 +/* 8017FBC4 0017CB24 DB 61 1D F0 */ stfd f27, 0x1df0(r1) +/* 8017FBC8 0017CB28 13 61 00 0E */ psq_stx f27, r1, r0, 0, qr0 +/* 8017FBCC 0017CB2C 38 00 1D E8 */ li r0, 0x1de8 +/* 8017FBD0 0017CB30 DB 41 1D E0 */ stfd f26, 0x1de0(r1) +/* 8017FBD4 0017CB34 13 41 00 0E */ psq_stx f26, r1, r0, 0, qr0 +/* 8017FBD8 0017CB38 38 00 1D D8 */ li r0, 0x1dd8 +/* 8017FBDC 0017CB3C DB 21 1D D0 */ stfd f25, 0x1dd0(r1) +/* 8017FBE0 0017CB40 13 21 00 0E */ psq_stx f25, r1, r0, 0, qr0 +/* 8017FBE4 0017CB44 38 00 1D C8 */ li r0, 0x1dc8 +/* 8017FBE8 0017CB48 DB 01 1D C0 */ stfd f24, 0x1dc0(r1) +/* 8017FBEC 0017CB4C 13 01 00 0E */ psq_stx f24, r1, r0, 0, qr0 +/* 8017FBF0 0017CB50 38 00 1D B8 */ li r0, 0x1db8 +/* 8017FBF4 0017CB54 DA E1 1D B0 */ stfd f23, 0x1db0(r1) +/* 8017FBF8 0017CB58 12 E1 00 0E */ psq_stx f23, r1, r0, 0, qr0 +/* 8017FBFC 0017CB5C 38 00 1D A8 */ li r0, 0x1da8 +/* 8017FC00 0017CB60 DA C1 1D A0 */ stfd f22, 0x1da0(r1) +/* 8017FC04 0017CB64 12 C1 00 0E */ psq_stx f22, r1, r0, 0, qr0 +/* 8017FC08 0017CB68 38 00 1D 98 */ li r0, 0x1d98 +/* 8017FC0C 0017CB6C DA A1 1D 90 */ stfd f21, 0x1d90(r1) +/* 8017FC10 0017CB70 12 A1 00 0E */ psq_stx f21, r1, r0, 0, qr0 +/* 8017FC14 0017CB74 38 00 1D 88 */ li r0, 0x1d88 +/* 8017FC18 0017CB78 DA 81 1D 80 */ stfd f20, 0x1d80(r1) +/* 8017FC1C 0017CB7C 12 81 00 0E */ psq_stx f20, r1, r0, 0, qr0 +/* 8017FC20 0017CB80 38 00 1D 78 */ li r0, 0x1d78 +/* 8017FC24 0017CB84 DA 61 1D 70 */ stfd f19, 0x1d70(r1) +/* 8017FC28 0017CB88 12 61 00 0E */ psq_stx f19, r1, r0, 0, qr0 +/* 8017FC2C 0017CB8C 38 00 1D 68 */ li r0, 0x1d68 +/* 8017FC30 0017CB90 DA 41 1D 60 */ stfd f18, 0x1d60(r1) +/* 8017FC34 0017CB94 12 41 00 0E */ psq_stx f18, r1, r0, 0, qr0 +/* 8017FC38 0017CB98 38 00 1D 58 */ li r0, 0x1d58 +/* 8017FC3C 0017CB9C DA 21 1D 50 */ stfd f17, 0x1d50(r1) +/* 8017FC40 0017CBA0 12 21 00 0E */ psq_stx f17, r1, r0, 0, qr0 +/* 8017FC44 0017CBA4 38 00 1D 48 */ li r0, 0x1d48 +/* 8017FC48 0017CBA8 DA 01 1D 40 */ stfd f16, 0x1d40(r1) +/* 8017FC4C 0017CBAC 12 01 00 0E */ psq_stx f16, r1, r0, 0, qr0 +/* 8017FC50 0017CBB0 38 00 1D 38 */ li r0, 0x1d38 +/* 8017FC54 0017CBB4 D9 E1 1D 30 */ stfd f15, 0x1d30(r1) +/* 8017FC58 0017CBB8 11 E1 00 0E */ psq_stx f15, r1, r0, 0, qr0 +/* 8017FC5C 0017CBBC 38 00 1D 28 */ li r0, 0x1d28 +/* 8017FC60 0017CBC0 D9 C1 1D 20 */ stfd f14, 0x1d20(r1) +/* 8017FC64 0017CBC4 11 C1 00 0E */ psq_stx f14, r1, r0, 0, qr0 +/* 8017FC68 0017CBC8 BE E1 1C FC */ stmw r23, 0x1cfc(r1) +/* 8017FC6C 0017CBCC FE 60 28 90 */ fmr f19, f5 +/* 8017FC70 0017CBD0 7C 99 23 78 */ mr r25, r4 +/* 8017FC74 0017CBD4 C0 02 A2 AC */ lfs f0, lbl_805ABFCC@sda21(r2) +/* 8017FC78 0017CBD8 7C 78 1B 78 */ mr r24, r3 +/* 8017FC7C 0017CBDC C3 64 00 60 */ lfs f27, 0x60(r4) +/* 8017FC80 0017CBE0 7C BA 2B 78 */ mr r26, r5 +/* 8017FC84 0017CBE4 FE 20 18 90 */ fmr f17, f3 +/* 8017FC88 0017CBE8 C3 84 00 50 */ lfs f28, 0x50(r4) +/* 8017FC8C 0017CBEC ED 20 04 F2 */ fmuls f9, f0, f19 +/* 8017FC90 0017CBF0 C0 A2 A2 A8 */ lfs f5, lbl_805ABFC8@sda21(r2) +/* 8017FC94 0017CBF4 EC 1B 10 2A */ fadds f0, f27, f2 +/* 8017FC98 0017CBF8 C3 A4 00 40 */ lfs f29, 0x40(r4) +/* 8017FC9C 0017CBFC EC 7D 28 2A */ fadds f3, f29, f5 +/* 8017FCA0 0017CC00 38 61 01 30 */ addi r3, r1, 0x130 +/* 8017FCA4 0017CC04 ED 11 48 2A */ fadds f8, f17, f9 +/* 8017FCA8 0017CC08 D0 01 00 88 */ stfs f0, 0x88(r1) +/* 8017FCAC 0017CC0C EC 5C 28 2A */ fadds f2, f28, f5 +/* 8017FCB0 0017CC10 38 81 00 68 */ addi r4, r1, 0x68 +/* 8017FCB4 0017CC14 EC E3 40 2A */ fadds f7, f3, f8 +/* 8017FCB8 0017CC18 D0 61 00 80 */ stfs f3, 0x80(r1) +/* 8017FCBC 0017CC1C EC C2 40 2A */ fadds f6, f2, f8 +/* 8017FCC0 0017CC20 38 A1 00 5C */ addi r5, r1, 0x5c +/* 8017FCC4 0017CC24 EC A0 48 2A */ fadds f5, f0, f9 +/* 8017FCC8 0017CC28 D0 41 00 84 */ stfs f2, 0x84(r1) +/* 8017FCCC 0017CC2C EC 63 40 28 */ fsubs f3, f3, f8 +/* 8017FCD0 0017CC30 D0 E1 00 5C */ stfs f7, 0x5c(r1) +/* 8017FCD4 0017CC34 EC 42 40 28 */ fsubs f2, f2, f8 +/* 8017FCD8 0017CC38 EC 00 48 28 */ fsubs f0, f0, f9 +/* 8017FCDC 0017CC3C D0 C1 00 60 */ stfs f6, 0x60(r1) +/* 8017FCE0 0017CC40 FE 00 08 90 */ fmr f16, f1 +/* 8017FCE4 0017CC44 FE 40 20 90 */ fmr f18, f4 +/* 8017FCE8 0017CC48 D0 A1 00 64 */ stfs f5, 0x64(r1) +/* 8017FCEC 0017CC4C D0 61 00 68 */ stfs f3, 0x68(r1) +/* 8017FCF0 0017CC50 D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 8017FCF4 0017CC54 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 8017FCF8 0017CC58 48 1B 88 11 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8017FCFC 0017CC5C 38 61 01 A8 */ addi r3, r1, 0x1a8 +/* 8017FD00 0017CC60 38 81 01 30 */ addi r4, r1, 0x130 +/* 8017FD04 0017CC64 48 12 3D 8D */ bl __ct__19CAreaCollisionCacheFRC6CAABox +/* 8017FD08 0017CC68 7F 03 C3 78 */ mr r3, r24 +/* 8017FD0C 0017CC6C 38 81 01 A8 */ addi r4, r1, 0x1a8 +/* 8017FD10 0017CC70 48 00 49 B5 */ bl BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache +/* 8017FD14 0017CC74 38 00 00 00 */ li r0, 0 +/* 8017FD18 0017CC78 88 81 1C E8 */ lbz r4, 0x1ce8(r1) +/* 8017FD1C 0017CC7C 80 AD 8E 94 */ lwz r5, lbl_805A7A54@sda21(r13) +/* 8017FD20 0017CC80 38 60 00 00 */ li r3, 0 +/* 8017FD24 0017CC84 54 9C CF FE */ rlwinm r28, r4, 0x19, 0x1f, 0x1f +/* 8017FD28 0017CC88 90 01 00 14 */ stw r0, 0x14(r1) +/* 8017FD2C 0017CC8C C3 41 00 80 */ lfs f26, 0x80(r1) +/* 8017FD30 0017CC90 38 80 00 01 */ li r4, 1 +/* 8017FD34 0017CC94 90 01 00 10 */ stw r0, 0x10(r1) +/* 8017FD38 0017CC98 C3 21 00 84 */ lfs f25, 0x84(r1) +/* 8017FD3C 0017CC9C C3 01 00 88 */ lfs f24, 0x88(r1) +/* 8017FD40 0017CCA0 48 20 A1 B5 */ bl __shl2i +/* 8017FD44 0017CCA4 80 01 00 10 */ lwz r0, 0x10(r1) +/* 8017FD48 0017CCA8 80 A1 00 14 */ lwz r5, 0x14(r1) +/* 8017FD4C 0017CCAC 7C 00 1B 78 */ or r0, r0, r3 +/* 8017FD50 0017CCB0 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 8017FD54 0017CCB4 7C A5 23 78 */ or r5, r5, r4 +/* 8017FD58 0017CCB8 90 01 00 10 */ stw r0, 0x10(r1) +/* 8017FD5C 0017CCBC 38 81 00 10 */ addi r4, r1, 0x10 +/* 8017FD60 0017CCC0 90 A1 00 14 */ stw r5, 0x14(r1) +/* 8017FD64 0017CCC4 48 14 FB 51 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList +/* 8017FD68 0017CCC8 3C 60 80 3F */ lis r3, lbl_803ECAF8@ha +/* 8017FD6C 0017CCCC 80 AD 8E 98 */ lwz r5, lbl_805A7A58@sda21(r13) +/* 8017FD70 0017CCD0 38 03 CA F8 */ addi r0, r3, lbl_803ECAF8@l +/* 8017FD74 0017CCD4 D3 41 01 08 */ stfs f26, 0x108(r1) +/* 8017FD78 0017CCD8 38 60 00 00 */ li r3, 0 +/* 8017FD7C 0017CCDC 38 80 00 01 */ li r4, 1 +/* 8017FD80 0017CCE0 90 01 00 F8 */ stw r0, 0xf8(r1) +/* 8017FD84 0017CCE4 D3 21 01 0C */ stfs f25, 0x10c(r1) +/* 8017FD88 0017CCE8 D3 01 01 10 */ stfs f24, 0x110(r1) +/* 8017FD8C 0017CCEC D2 61 01 14 */ stfs f19, 0x114(r1) +/* 8017FD90 0017CCF0 48 20 A1 65 */ bl __shl2i +/* 8017FD94 0017CCF4 39 20 FF FF */ li r9, -1 +/* 8017FD98 0017CCF8 39 00 00 00 */ li r8, 0 +/* 8017FD9C 0017CCFC 38 00 00 02 */ li r0, 2 +/* 8017FDA0 0017CD00 3C A0 80 5A */ lis r5, skIdentity4f@ha +/* 8017FDA4 0017CD04 90 81 00 EC */ stw r4, 0xec(r1) +/* 8017FDA8 0017CD08 38 C5 66 70 */ addi r6, r5, skIdentity4f@l +/* 8017FDAC 0017CD0C 38 81 01 A8 */ addi r4, r1, 0x1a8 +/* 8017FDB0 0017CD10 38 A1 00 F8 */ addi r5, r1, 0xf8 +/* 8017FDB4 0017CD14 90 61 00 E8 */ stw r3, 0xe8(r1) +/* 8017FDB8 0017CD18 7F 03 C3 78 */ mr r3, r24 +/* 8017FDBC 0017CD1C 38 E1 00 E0 */ addi r7, r1, 0xe0 +/* 8017FDC0 0017CD20 91 21 00 E4 */ stw r9, 0xe4(r1) +/* 8017FDC4 0017CD24 91 01 00 E0 */ stw r8, 0xe0(r1) +/* 8017FDC8 0017CD28 90 01 00 F0 */ stw r0, 0xf0(r1) +/* 8017FDCC 0017CD2C 48 00 38 2D */ bl DetectStaticCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter +/* 8017FDD0 0017CD30 3C 80 80 3F */ lis r4, lbl_803ECAF8@ha +/* 8017FDD4 0017CD34 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017FDD8 0017CD38 3B A4 CA F8 */ addi r29, r4, lbl_803ECAF8@l +/* 8017FDDC 0017CD3C 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 8017FDE0 0017CD40 93 A1 00 F8 */ stw r29, 0xf8(r1) +/* 8017FDE4 0017CD44 3B C3 97 E4 */ addi r30, r3, lbl_803D97E4@l +/* 8017FDE8 0017CD48 93 C1 00 F8 */ stw r30, 0xf8(r1) +/* 8017FDEC 0017CD4C 41 82 00 A0 */ beq lbl_8017FE8C +/* 8017FDF0 0017CD50 34 E1 01 C0 */ addic. r7, r1, 0x1c0 +/* 8017FDF4 0017CD54 41 82 04 2C */ beq lbl_80180220 +/* 8017FDF8 0017CD58 38 C7 00 04 */ addi r6, r7, 4 +/* 8017FDFC 0017CD5C 38 60 00 00 */ li r3, 0 +/* 8017FE00 0017CD60 48 00 00 74 */ b lbl_8017FE74 +lbl_8017FE04: +/* 8017FE04 0017CD64 28 06 00 00 */ cmplwi r6, 0 +/* 8017FE08 0017CD68 41 82 00 64 */ beq lbl_8017FE6C +/* 8017FE0C 0017CD6C 34 06 00 04 */ addic. r0, r6, 4 +/* 8017FE10 0017CD70 41 82 00 5C */ beq lbl_8017FE6C +/* 8017FE14 0017CD74 81 06 00 04 */ lwz r8, 4(r6) +/* 8017FE18 0017CD78 38 80 00 00 */ li r4, 0 +/* 8017FE1C 0017CD7C 2C 08 00 00 */ cmpwi r8, 0 +/* 8017FE20 0017CD80 40 81 00 44 */ ble lbl_8017FE64 +/* 8017FE24 0017CD84 2C 08 00 08 */ cmpwi r8, 8 +/* 8017FE28 0017CD88 38 A8 FF F8 */ addi r5, r8, -8 +/* 8017FE2C 0017CD8C 40 81 00 20 */ ble lbl_8017FE4C +/* 8017FE30 0017CD90 38 05 00 07 */ addi r0, r5, 7 +/* 8017FE34 0017CD94 54 00 E8 FE */ srwi r0, r0, 3 +/* 8017FE38 0017CD98 7C 09 03 A6 */ mtctr r0 +/* 8017FE3C 0017CD9C 2C 05 00 00 */ cmpwi r5, 0 +/* 8017FE40 0017CDA0 40 81 00 0C */ ble lbl_8017FE4C +lbl_8017FE44: +/* 8017FE44 0017CDA4 38 84 00 08 */ addi r4, r4, 8 +/* 8017FE48 0017CDA8 42 00 FF FC */ bdnz lbl_8017FE44 +lbl_8017FE4C: +/* 8017FE4C 0017CDAC 7C 04 40 50 */ subf r0, r4, r8 +/* 8017FE50 0017CDB0 7C 09 03 A6 */ mtctr r0 +/* 8017FE54 0017CDB4 7C 04 40 00 */ cmpw r4, r8 +/* 8017FE58 0017CDB8 40 80 00 0C */ bge lbl_8017FE64 +lbl_8017FE5C: +/* 8017FE5C 0017CDBC 38 84 00 01 */ addi r4, r4, 1 +/* 8017FE60 0017CDC0 42 00 FF FC */ bdnz lbl_8017FE5C +lbl_8017FE64: +/* 8017FE64 0017CDC4 38 00 00 00 */ li r0, 0 +/* 8017FE68 0017CDC8 90 06 00 04 */ stw r0, 4(r6) +lbl_8017FE6C: +/* 8017FE6C 0017CDCC 38 C6 09 0C */ addi r6, r6, 0x90c +/* 8017FE70 0017CDD0 38 63 00 01 */ addi r3, r3, 1 +lbl_8017FE74: +/* 8017FE74 0017CDD4 80 07 00 00 */ lwz r0, 0(r7) +/* 8017FE78 0017CDD8 7C 03 00 00 */ cmpw r3, r0 +/* 8017FE7C 0017CDDC 41 80 FF 88 */ blt lbl_8017FE04 +/* 8017FE80 0017CDE0 38 00 00 00 */ li r0, 0 +/* 8017FE84 0017CDE4 90 07 00 00 */ stw r0, 0(r7) +/* 8017FE88 0017CDE8 48 00 03 98 */ b lbl_80180220 +lbl_8017FE8C: +/* 8017FE8C 0017CDEC 6F 40 80 00 */ xoris r0, r26, 0x8000 +/* 8017FE90 0017CDF0 3F E0 43 30 */ lis r31, 0x4330 +/* 8017FE94 0017CDF4 90 01 1C F4 */ stw r0, 0x1cf4(r1) +/* 8017FE98 0017CDF8 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8017FE9C 0017CDFC 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 8017FEA0 0017CE00 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 8017FEA4 0017CE04 93 E1 1C F0 */ stw r31, 0x1cf0(r1) +/* 8017FEA8 0017CE08 3A E3 66 70 */ addi r23, r3, skIdentity4f@l +/* 8017FEAC 0017CE0C CB C2 A2 B8 */ lfd f30, lbl_805ABFD8@sda21(r2) +/* 8017FEB0 0017CE10 3B 60 00 00 */ li r27, 0 +/* 8017FEB4 0017CE14 C8 01 1C F0 */ lfd f0, 0x1cf0(r1) +/* 8017FEB8 0017CE18 C0 22 A2 B0 */ lfs f1, lbl_805ABFD0@sda21(r2) +/* 8017FEBC 0017CE1C EC 00 F0 28 */ fsubs f0, f0, f30 +/* 8017FEC0 0017CE20 C2 E4 00 00 */ lfs f23, 0(r4) +/* 8017FEC4 0017CE24 C2 C4 00 04 */ lfs f22, 4(r4) +/* 8017FEC8 0017CE28 C2 A4 00 08 */ lfs f21, 8(r4) +/* 8017FECC 0017CE2C EE 81 00 24 */ fdivs f20, f1, f0 +/* 8017FED0 0017CE30 C3 E2 A2 A8 */ lfs f31, lbl_805ABFC8@sda21(r2) +/* 8017FED4 0017CE34 48 00 02 64 */ b lbl_80180138 +lbl_8017FED8: +/* 8017FED8 0017CE38 6F 60 80 00 */ xoris r0, r27, 0x8000 +/* 8017FEDC 0017CE3C 93 E1 1C F0 */ stw r31, 0x1cf0(r1) +/* 8017FEE0 0017CE40 90 01 1C F4 */ stw r0, 0x1cf4(r1) +/* 8017FEE4 0017CE44 C8 01 1C F0 */ lfd f0, 0x1cf0(r1) +/* 8017FEE8 0017CE48 EC 00 F0 28 */ fsubs f0, f0, f30 +/* 8017FEEC 0017CE4C ED D4 00 32 */ fmuls f14, f20, f0 +/* 8017FEF0 0017CE50 FC 20 70 90 */ fmr f1, f14 +/* 8017FEF4 0017CE54 48 19 53 F1 */ bl SlowCosineR__5CMathFf +/* 8017FEF8 0017CE58 FD E0 08 90 */ fmr f15, f1 +/* 8017FEFC 0017CE5C FC 20 70 90 */ fmr f1, f14 +/* 8017FF00 0017CE60 48 19 54 09 */ bl SlowSineR__5CMathFf +/* 8017FF04 0017CE64 D0 21 00 74 */ stfs f1, 0x74(r1) +/* 8017FF08 0017CE68 38 61 01 48 */ addi r3, r1, 0x148 +/* 8017FF0C 0017CE6C 38 80 00 00 */ li r4, 0 +/* 8017FF10 0017CE70 D1 E1 00 78 */ stfs f15, 0x78(r1) +/* 8017FF14 0017CE74 D3 E1 00 7C */ stfs f31, 0x7c(r1) +/* 8017FF18 0017CE78 DA 21 00 18 */ stfd f17, 0x18(r1) +/* 8017FF1C 0017CE7C 48 14 E2 6D */ bl __ct__14CCollisionInfoFQ214CCollisionInfo8EInvalid +/* 8017FF20 0017CE80 28 1C 00 00 */ cmplwi r28, 0 +/* 8017FF24 0017CE84 41 82 00 EC */ beq lbl_80180010 +/* 8017FF28 0017CE88 38 61 01 A8 */ addi r3, r1, 0x1a8 +/* 8017FF2C 0017CE8C 48 12 39 0D */ bl ClearCache__19CAreaCollisionCacheFv +/* 8017FF30 0017CE90 38 81 00 80 */ addi r4, r1, 0x80 +/* 8017FF34 0017CE94 38 61 01 18 */ addi r3, r1, 0x118 +/* 8017FF38 0017CE98 7C 85 23 78 */ mr r5, r4 +/* 8017FF3C 0017CE9C 48 1B 85 CD */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8017FF40 0017CEA0 FC 40 78 18 */ frsp f2, f15 +/* 8017FF44 0017CEA4 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 8017FF48 0017CEA8 FC 20 F8 18 */ frsp f1, f31 +/* 8017FF4C 0017CEAC 38 61 01 18 */ addi r3, r1, 0x118 +/* 8017FF50 0017CEB0 EC 11 00 32 */ fmuls f0, f17, f0 +/* 8017FF54 0017CEB4 38 81 00 50 */ addi r4, r1, 0x50 +/* 8017FF58 0017CEB8 EC 51 00 B2 */ fmuls f2, f17, f2 +/* 8017FF5C 0017CEBC EC 31 00 72 */ fmuls f1, f17, f1 +/* 8017FF60 0017CEC0 EC 1D 00 2A */ fadds f0, f29, f0 +/* 8017FF64 0017CEC4 EC 5C 10 2A */ fadds f2, f28, f2 +/* 8017FF68 0017CEC8 EC 3B 08 2A */ fadds f1, f27, f1 +/* 8017FF6C 0017CECC D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8017FF70 0017CED0 D0 41 00 54 */ stfs f2, 0x54(r1) +/* 8017FF74 0017CED4 D0 21 00 58 */ stfs f1, 0x58(r1) +/* 8017FF78 0017CED8 48 1B 7B 91 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 8017FF7C 0017CEDC C0 61 01 1C */ lfs f3, 0x11c(r1) +/* 8017FF80 0017CEE0 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 8017FF84 0017CEE4 C0 41 01 20 */ lfs f2, 0x120(r1) +/* 8017FF88 0017CEE8 38 81 00 44 */ addi r4, r1, 0x44 +/* 8017FF8C 0017CEEC C0 01 01 18 */ lfs f0, 0x118(r1) +/* 8017FF90 0017CEF0 EC A3 98 2A */ fadds f5, f3, f19 +/* 8017FF94 0017CEF4 EC 82 98 2A */ fadds f4, f2, f19 +/* 8017FF98 0017CEF8 38 A1 00 38 */ addi r5, r1, 0x38 +/* 8017FF9C 0017CEFC EC 20 98 2A */ fadds f1, f0, f19 +/* 8017FFA0 0017CF00 EC 63 98 28 */ fsubs f3, f3, f19 +/* 8017FFA4 0017CF04 D0 A1 00 3C */ stfs f5, 0x3c(r1) +/* 8017FFA8 0017CF08 EC 42 98 28 */ fsubs f2, f2, f19 +/* 8017FFAC 0017CF0C EC 00 98 28 */ fsubs f0, f0, f19 +/* 8017FFB0 0017CF10 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 8017FFB4 0017CF14 D0 81 00 40 */ stfs f4, 0x40(r1) +/* 8017FFB8 0017CF18 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 8017FFBC 0017CF1C D0 61 00 48 */ stfs f3, 0x48(r1) +/* 8017FFC0 0017CF20 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 8017FFC4 0017CF24 48 1B 85 45 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8017FFC8 0017CF28 81 21 00 C8 */ lwz r9, 0xc8(r1) +/* 8017FFCC 0017CF2C 38 61 01 A8 */ addi r3, r1, 0x1a8 +/* 8017FFD0 0017CF30 81 01 00 CC */ lwz r8, 0xcc(r1) +/* 8017FFD4 0017CF34 38 81 01 18 */ addi r4, r1, 0x118 +/* 8017FFD8 0017CF38 80 E1 00 D0 */ lwz r7, 0xd0(r1) +/* 8017FFDC 0017CF3C 80 C1 00 D4 */ lwz r6, 0xd4(r1) +/* 8017FFE0 0017CF40 80 A1 00 D8 */ lwz r5, 0xd8(r1) +/* 8017FFE4 0017CF44 80 01 00 DC */ lwz r0, 0xdc(r1) +/* 8017FFE8 0017CF48 91 21 01 18 */ stw r9, 0x118(r1) +/* 8017FFEC 0017CF4C 91 01 01 1C */ stw r8, 0x11c(r1) +/* 8017FFF0 0017CF50 90 E1 01 20 */ stw r7, 0x120(r1) +/* 8017FFF4 0017CF54 90 C1 01 24 */ stw r6, 0x124(r1) +/* 8017FFF8 0017CF58 90 A1 01 28 */ stw r5, 0x128(r1) +/* 8017FFFC 0017CF5C 90 01 01 2C */ stw r0, 0x12c(r1) +/* 80180000 0017CF60 48 12 38 E5 */ bl SetCacheBounds__19CAreaCollisionCacheFRC6CAABox +/* 80180004 0017CF64 7F 03 C3 78 */ mr r3, r24 +/* 80180008 0017CF68 38 81 01 A8 */ addi r4, r1, 0x1a8 +/* 8018000C 0017CF6C 48 00 46 B9 */ bl BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache +lbl_80180010: +/* 80180010 0017CF70 38 00 00 00 */ li r0, 0 +/* 80180014 0017CF74 80 AD 8E 9C */ lwz r5, lbl_805A7A5C@sda21(r13) +/* 80180018 0017CF78 90 01 00 0C */ stw r0, 0xc(r1) +/* 8018001C 0017CF7C 38 60 00 00 */ li r3, 0 +/* 80180020 0017CF80 38 80 00 01 */ li r4, 1 +/* 80180024 0017CF84 90 01 00 08 */ stw r0, 8(r1) +/* 80180028 0017CF88 48 20 9E CD */ bl __shl2i +/* 8018002C 0017CF8C 80 01 00 08 */ lwz r0, 8(r1) +/* 80180030 0017CF90 80 A1 00 0C */ lwz r5, 0xc(r1) +/* 80180034 0017CF94 7C 00 1B 78 */ or r0, r0, r3 +/* 80180038 0017CF98 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 8018003C 0017CF9C 7C A5 23 78 */ or r5, r5, r4 +/* 80180040 0017CFA0 90 01 00 08 */ stw r0, 8(r1) +/* 80180044 0017CFA4 38 81 00 08 */ addi r4, r1, 8 +/* 80180048 0017CFA8 90 A1 00 0C */ stw r5, 0xc(r1) +/* 8018004C 0017CFAC 48 14 F8 69 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList +/* 80180050 0017CFB0 80 E1 00 74 */ lwz r7, 0x74(r1) +/* 80180054 0017CFB4 38 60 00 00 */ li r3, 0 +/* 80180058 0017CFB8 80 C1 00 78 */ lwz r6, 0x78(r1) +/* 8018005C 0017CFBC 38 80 00 01 */ li r4, 1 +/* 80180060 0017CFC0 80 01 00 7C */ lwz r0, 0x7c(r1) +/* 80180064 0017CFC4 80 AD 8E A0 */ lwz r5, lbl_805A7A60@sda21(r13) +/* 80180068 0017CFC8 93 A1 00 A8 */ stw r29, 0xa8(r1) +/* 8018006C 0017CFCC D3 41 00 B8 */ stfs f26, 0xb8(r1) +/* 80180070 0017CFD0 D3 21 00 BC */ stfs f25, 0xbc(r1) +/* 80180074 0017CFD4 D3 01 00 C0 */ stfs f24, 0xc0(r1) +/* 80180078 0017CFD8 D2 61 00 C4 */ stfs f19, 0xc4(r1) +/* 8018007C 0017CFDC 90 E1 00 2C */ stw r7, 0x2c(r1) +/* 80180080 0017CFE0 90 C1 00 30 */ stw r6, 0x30(r1) +/* 80180084 0017CFE4 90 01 00 34 */ stw r0, 0x34(r1) +/* 80180088 0017CFE8 48 20 9E 6D */ bl __shl2i +/* 8018008C 0017CFEC 39 00 FF FF */ li r8, -1 +/* 80180090 0017CFF0 39 60 00 00 */ li r11, 0 +/* 80180094 0017CFF4 38 00 00 02 */ li r0, 2 +/* 80180098 0017CFF8 90 81 00 9C */ stw r4, 0x9c(r1) +/* 8018009C 0017CFFC 7E E6 BB 78 */ mr r6, r23 +/* 801800A0 0017D000 38 81 01 A8 */ addi r4, r1, 0x1a8 +/* 801800A4 0017D004 90 61 00 98 */ stw r3, 0x98(r1) +/* 801800A8 0017D008 7F 03 C3 78 */ mr r3, r24 +/* 801800AC 0017D00C 38 A1 00 A8 */ addi r5, r1, 0xa8 +/* 801800B0 0017D010 38 E1 00 90 */ addi r7, r1, 0x90 +/* 801800B4 0017D014 91 01 00 94 */ stw r8, 0x94(r1) +/* 801800B8 0017D018 39 01 00 2C */ addi r8, r1, 0x2c +/* 801800BC 0017D01C 39 21 01 48 */ addi r9, r1, 0x148 +/* 801800C0 0017D020 39 41 00 18 */ addi r10, r1, 0x18 +/* 801800C4 0017D024 91 61 00 90 */ stw r11, 0x90(r1) +/* 801800C8 0017D028 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 801800CC 0017D02C 48 00 2D 39 */ bl DetectStaticCollision_Cached_Moving__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter9CVector3fR14CCollisionInfoRd +/* 801800D0 0017D030 93 A1 00 A8 */ stw r29, 0xa8(r1) +/* 801800D4 0017D034 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801800D8 0017D038 93 C1 00 A8 */ stw r30, 0xa8(r1) +/* 801800DC 0017D03C 41 82 00 58 */ beq lbl_80180134 +/* 801800E0 0017D040 C8 01 00 18 */ lfd f0, 0x18(r1) +/* 801800E4 0017D044 6F 43 80 00 */ xoris r3, r26, 0x8000 +/* 801800E8 0017D048 3C 00 43 30 */ lis r0, 0x4330 +/* 801800EC 0017D04C 90 61 1C F4 */ stw r3, 0x1cf4(r1) +/* 801800F0 0017D050 FC 11 00 28 */ fsub f0, f17, f0 +/* 801800F4 0017D054 C8 62 A2 B8 */ lfd f3, lbl_805ABFD8@sda21(r2) +/* 801800F8 0017D058 90 01 1C F0 */ stw r0, 0x1cf0(r1) +/* 801800FC 0017D05C C0 41 00 74 */ lfs f2, 0x74(r1) +/* 80180100 0017D060 FC 80 00 18 */ frsp f4, f0 +/* 80180104 0017D064 C8 01 1C F0 */ lfd f0, 0x1cf0(r1) +/* 80180108 0017D068 C0 21 00 78 */ lfs f1, 0x78(r1) +/* 8018010C 0017D06C EC 60 18 28 */ fsubs f3, f0, f3 +/* 80180110 0017D070 C0 01 00 7C */ lfs f0, 0x7c(r1) +/* 80180114 0017D074 EC 84 88 24 */ fdivs f4, f4, f17 +/* 80180118 0017D078 EC 64 18 24 */ fdivs f3, f4, f3 +/* 8018011C 0017D07C EC 43 00 B2 */ fmuls f2, f3, f2 +/* 80180120 0017D080 EC 23 00 72 */ fmuls f1, f3, f1 +/* 80180124 0017D084 EC 03 00 32 */ fmuls f0, f3, f0 +/* 80180128 0017D088 EE F7 10 28 */ fsubs f23, f23, f2 +/* 8018012C 0017D08C EE D6 08 28 */ fsubs f22, f22, f1 +/* 80180130 0017D090 EE B5 00 28 */ fsubs f21, f21, f0 +lbl_80180134: +/* 80180134 0017D094 3B 7B 00 01 */ addi r27, r27, 1 +lbl_80180138: +/* 80180138 0017D098 7C 1B D0 00 */ cmpw r27, r26 +/* 8018013C 0017D09C 41 80 FD 9C */ blt lbl_8017FED8 +/* 80180140 0017D0A0 EC 92 05 B2 */ fmuls f4, f18, f22 +/* 80180144 0017D0A4 C0 B9 01 3C */ lfs f5, 0x13c(r25) +/* 80180148 0017D0A8 EC 52 05 72 */ fmuls f2, f18, f21 +/* 8018014C 0017D0AC C0 79 01 40 */ lfs f3, 0x140(r25) +/* 80180150 0017D0B0 EC 12 05 F2 */ fmuls f0, f18, f23 +/* 80180154 0017D0B4 C0 39 01 38 */ lfs f1, 0x138(r25) +/* 80180158 0017D0B8 EC 90 01 32 */ fmuls f4, f16, f4 +/* 8018015C 0017D0BC 7F 23 CB 78 */ mr r3, r25 +/* 80180160 0017D0C0 EC 50 00 B2 */ fmuls f2, f16, f2 +/* 80180164 0017D0C4 38 81 00 20 */ addi r4, r1, 0x20 +/* 80180168 0017D0C8 EC 10 00 32 */ fmuls f0, f16, f0 +/* 8018016C 0017D0CC EC 85 20 2A */ fadds f4, f5, f4 +/* 80180170 0017D0D0 EC 43 10 2A */ fadds f2, f3, f2 +/* 80180174 0017D0D4 EC 01 00 2A */ fadds f0, f1, f0 +/* 80180178 0017D0D8 D0 81 00 24 */ stfs f4, 0x24(r1) +/* 8018017C 0017D0DC D0 01 00 20 */ stfs f0, 0x20(r1) +/* 80180180 0017D0E0 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 80180184 0017D0E4 4B F9 AB 1D */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 80180188 0017D0E8 34 E1 01 C0 */ addic. r7, r1, 0x1c0 +/* 8018018C 0017D0EC 41 82 00 94 */ beq lbl_80180220 +/* 80180190 0017D0F0 38 C7 00 04 */ addi r6, r7, 4 +/* 80180194 0017D0F4 38 60 00 00 */ li r3, 0 +/* 80180198 0017D0F8 48 00 00 74 */ b lbl_8018020C +lbl_8018019C: +/* 8018019C 0017D0FC 28 06 00 00 */ cmplwi r6, 0 +/* 801801A0 0017D100 41 82 00 64 */ beq lbl_80180204 +/* 801801A4 0017D104 34 06 00 04 */ addic. r0, r6, 4 +/* 801801A8 0017D108 41 82 00 5C */ beq lbl_80180204 +/* 801801AC 0017D10C 81 06 00 04 */ lwz r8, 4(r6) +/* 801801B0 0017D110 38 80 00 00 */ li r4, 0 +/* 801801B4 0017D114 2C 08 00 00 */ cmpwi r8, 0 +/* 801801B8 0017D118 40 81 00 44 */ ble lbl_801801FC +/* 801801BC 0017D11C 2C 08 00 08 */ cmpwi r8, 8 +/* 801801C0 0017D120 38 A8 FF F8 */ addi r5, r8, -8 +/* 801801C4 0017D124 40 81 00 20 */ ble lbl_801801E4 +/* 801801C8 0017D128 38 05 00 07 */ addi r0, r5, 7 +/* 801801CC 0017D12C 54 00 E8 FE */ srwi r0, r0, 3 +/* 801801D0 0017D130 7C 09 03 A6 */ mtctr r0 +/* 801801D4 0017D134 2C 05 00 00 */ cmpwi r5, 0 +/* 801801D8 0017D138 40 81 00 0C */ ble lbl_801801E4 +lbl_801801DC: +/* 801801DC 0017D13C 38 84 00 08 */ addi r4, r4, 8 +/* 801801E0 0017D140 42 00 FF FC */ bdnz lbl_801801DC +lbl_801801E4: +/* 801801E4 0017D144 7C 04 40 50 */ subf r0, r4, r8 +/* 801801E8 0017D148 7C 09 03 A6 */ mtctr r0 +/* 801801EC 0017D14C 7C 04 40 00 */ cmpw r4, r8 +/* 801801F0 0017D150 40 80 00 0C */ bge lbl_801801FC +lbl_801801F4: +/* 801801F4 0017D154 38 84 00 01 */ addi r4, r4, 1 +/* 801801F8 0017D158 42 00 FF FC */ bdnz lbl_801801F4 +lbl_801801FC: +/* 801801FC 0017D15C 38 00 00 00 */ li r0, 0 +/* 80180200 0017D160 90 06 00 04 */ stw r0, 4(r6) +lbl_80180204: +/* 80180204 0017D164 38 C6 09 0C */ addi r6, r6, 0x90c +/* 80180208 0017D168 38 63 00 01 */ addi r3, r3, 1 +lbl_8018020C: +/* 8018020C 0017D16C 80 07 00 00 */ lwz r0, 0(r7) +/* 80180210 0017D170 7C 03 00 00 */ cmpw r3, r0 +/* 80180214 0017D174 41 80 FF 88 */ blt lbl_8018019C +/* 80180218 0017D178 38 00 00 00 */ li r0, 0 +/* 8018021C 0017D17C 90 07 00 00 */ stw r0, 0(r7) +lbl_80180220: +/* 80180220 0017D180 38 00 1E 38 */ li r0, 0x1e38 +/* 80180224 0017D184 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 +/* 80180228 0017D188 CB E1 1E 30 */ lfd f31, 0x1e30(r1) +/* 8018022C 0017D18C 38 00 1E 28 */ li r0, 0x1e28 +/* 80180230 0017D190 13 C1 00 0C */ psq_lx f30, r1, r0, 0, qr0 +/* 80180234 0017D194 CB C1 1E 20 */ lfd f30, 0x1e20(r1) +/* 80180238 0017D198 38 00 1E 18 */ li r0, 0x1e18 +/* 8018023C 0017D19C 13 A1 00 0C */ psq_lx f29, r1, r0, 0, qr0 +/* 80180240 0017D1A0 CB A1 1E 10 */ lfd f29, 0x1e10(r1) +/* 80180244 0017D1A4 38 00 1E 08 */ li r0, 0x1e08 +/* 80180248 0017D1A8 13 81 00 0C */ psq_lx f28, r1, r0, 0, qr0 +/* 8018024C 0017D1AC CB 81 1E 00 */ lfd f28, 0x1e00(r1) +/* 80180250 0017D1B0 38 00 1D F8 */ li r0, 0x1df8 +/* 80180254 0017D1B4 13 61 00 0C */ psq_lx f27, r1, r0, 0, qr0 +/* 80180258 0017D1B8 CB 61 1D F0 */ lfd f27, 0x1df0(r1) +/* 8018025C 0017D1BC 38 00 1D E8 */ li r0, 0x1de8 +/* 80180260 0017D1C0 13 41 00 0C */ psq_lx f26, r1, r0, 0, qr0 +/* 80180264 0017D1C4 CB 41 1D E0 */ lfd f26, 0x1de0(r1) +/* 80180268 0017D1C8 38 00 1D D8 */ li r0, 0x1dd8 +/* 8018026C 0017D1CC 13 21 00 0C */ psq_lx f25, r1, r0, 0, qr0 +/* 80180270 0017D1D0 CB 21 1D D0 */ lfd f25, 0x1dd0(r1) +/* 80180274 0017D1D4 38 00 1D C8 */ li r0, 0x1dc8 +/* 80180278 0017D1D8 13 01 00 0C */ psq_lx f24, r1, r0, 0, qr0 +/* 8018027C 0017D1DC CB 01 1D C0 */ lfd f24, 0x1dc0(r1) +/* 80180280 0017D1E0 38 00 1D B8 */ li r0, 0x1db8 +/* 80180284 0017D1E4 12 E1 00 0C */ psq_lx f23, r1, r0, 0, qr0 +/* 80180288 0017D1E8 CA E1 1D B0 */ lfd f23, 0x1db0(r1) +/* 8018028C 0017D1EC 38 00 1D A8 */ li r0, 0x1da8 +/* 80180290 0017D1F0 12 C1 00 0C */ psq_lx f22, r1, r0, 0, qr0 +/* 80180294 0017D1F4 CA C1 1D A0 */ lfd f22, 0x1da0(r1) +/* 80180298 0017D1F8 38 00 1D 98 */ li r0, 0x1d98 +/* 8018029C 0017D1FC 12 A1 00 0C */ psq_lx f21, r1, r0, 0, qr0 +/* 801802A0 0017D200 CA A1 1D 90 */ lfd f21, 0x1d90(r1) +/* 801802A4 0017D204 38 00 1D 88 */ li r0, 0x1d88 +/* 801802A8 0017D208 12 81 00 0C */ psq_lx f20, r1, r0, 0, qr0 +/* 801802AC 0017D20C CA 81 1D 80 */ lfd f20, 0x1d80(r1) +/* 801802B0 0017D210 38 00 1D 78 */ li r0, 0x1d78 +/* 801802B4 0017D214 12 61 00 0C */ psq_lx f19, r1, r0, 0, qr0 +/* 801802B8 0017D218 CA 61 1D 70 */ lfd f19, 0x1d70(r1) +/* 801802BC 0017D21C 38 00 1D 68 */ li r0, 0x1d68 +/* 801802C0 0017D220 12 41 00 0C */ psq_lx f18, r1, r0, 0, qr0 +/* 801802C4 0017D224 CA 41 1D 60 */ lfd f18, 0x1d60(r1) +/* 801802C8 0017D228 38 00 1D 58 */ li r0, 0x1d58 +/* 801802CC 0017D22C 12 21 00 0C */ psq_lx f17, r1, r0, 0, qr0 +/* 801802D0 0017D230 CA 21 1D 50 */ lfd f17, 0x1d50(r1) +/* 801802D4 0017D234 38 00 1D 48 */ li r0, 0x1d48 +/* 801802D8 0017D238 12 01 00 0C */ psq_lx f16, r1, r0, 0, qr0 +/* 801802DC 0017D23C CA 01 1D 40 */ lfd f16, 0x1d40(r1) +/* 801802E0 0017D240 38 00 1D 38 */ li r0, 0x1d38 +/* 801802E4 0017D244 11 E1 00 0C */ psq_lx f15, r1, r0, 0, qr0 +/* 801802E8 0017D248 C9 E1 1D 30 */ lfd f15, 0x1d30(r1) +/* 801802EC 0017D24C 38 00 1D 28 */ li r0, 0x1d28 +/* 801802F0 0017D250 11 C1 00 0C */ psq_lx f14, r1, r0, 0, qr0 +/* 801802F4 0017D254 C9 C1 1D 20 */ lfd f14, 0x1d20(r1) +/* 801802F8 0017D258 BA E1 1C FC */ lmw r23, 0x1cfc(r1) +/* 801802FC 0017D25C 80 01 1E 44 */ lwz r0, 0x1e44(r1) +/* 80180300 0017D260 7C 08 03 A6 */ mtlr r0 +/* 80180304 0017D264 38 21 1E 40 */ addi r1, r1, 0x1e40 +/* 80180308 0017D268 4E 80 00 20 */ blr + +.global GetActorRelativeVelocities__14CGameCollisionFPC13CPhysicsActorPC13CPhysicsActor +GetActorRelativeVelocities__14CGameCollisionFPC13CPhysicsActorPC13CPhysicsActor: +/* 8018030C 0017D26C 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80180310 0017D270 7C 08 02 A6 */ mflr r0 +/* 80180314 0017D274 90 01 00 64 */ stw r0, 0x64(r1) +/* 80180318 0017D278 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 8018031C 0017D27C F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 80180320 0017D280 DB C1 00 40 */ stfd f30, 0x40(r1) +/* 80180324 0017D284 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 +/* 80180328 0017D288 DB A1 00 30 */ stfd f29, 0x30(r1) +/* 8018032C 0017D28C F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0 +/* 80180330 0017D290 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80180334 0017D294 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80180338 0017D298 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8018033C 0017D29C 7C BF 2B 79 */ or. r31, r5, r5 +/* 80180340 0017D2A0 C3 E4 01 38 */ lfs f31, 0x138(r4) +/* 80180344 0017D2A4 C3 C4 01 3C */ lfs f30, 0x13c(r4) +/* 80180348 0017D2A8 7C 9E 23 78 */ mr r30, r4 +/* 8018034C 0017D2AC C3 A4 01 40 */ lfs f29, 0x140(r4) +/* 80180350 0017D2B0 7C 7D 1B 78 */ mr r29, r3 +/* 80180354 0017D2B4 41 82 00 58 */ beq lbl_801803AC +/* 80180358 0017D2B8 7F E4 FB 78 */ mr r4, r31 +/* 8018035C 0017D2BC 38 61 00 10 */ addi r3, r1, 0x10 +/* 80180360 0017D2C0 4B F2 8A B5 */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" +/* 80180364 0017D2C4 80 63 00 04 */ lwz r3, 4(r3) +/* 80180368 0017D2C8 38 00 00 00 */ li r0, 0 +/* 8018036C 0017D2CC 28 03 00 00 */ cmplwi r3, 0 +/* 80180370 0017D2D0 41 82 00 1C */ beq lbl_8018038C +/* 80180374 0017D2D4 A0 1E 00 08 */ lhz r0, 8(r30) +/* 80180378 0017D2D8 38 81 00 0C */ addi r4, r1, 0xc +/* 8018037C 0017D2DC B0 01 00 08 */ sth r0, 8(r1) +/* 80180380 0017D2E0 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80180384 0017D2E4 4B F3 19 CD */ bl IsRider__15CScriptPlatformCF9TUniqueId +/* 80180388 0017D2E8 7C 60 1B 78 */ mr r0, r3 +lbl_8018038C: +/* 8018038C 0017D2EC 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 80180390 0017D2F0 40 82 00 1C */ bne lbl_801803AC +/* 80180394 0017D2F4 C0 5F 01 38 */ lfs f2, 0x138(r31) +/* 80180398 0017D2F8 C0 3F 01 3C */ lfs f1, 0x13c(r31) +/* 8018039C 0017D2FC C0 1F 01 40 */ lfs f0, 0x140(r31) +/* 801803A0 0017D300 EF FF 10 28 */ fsubs f31, f31, f2 +/* 801803A4 0017D304 EF DE 08 28 */ fsubs f30, f30, f1 +/* 801803A8 0017D308 EF BD 00 28 */ fsubs f29, f29, f0 +lbl_801803AC: +/* 801803AC 0017D30C D3 FD 00 00 */ stfs f31, 0(r29) +/* 801803B0 0017D310 D3 DD 00 04 */ stfs f30, 4(r29) +/* 801803B4 0017D314 D3 BD 00 08 */ stfs f29, 8(r29) +/* 801803B8 0017D318 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 801803BC 0017D31C CB E1 00 50 */ lfd f31, 0x50(r1) +/* 801803C0 0017D320 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 +/* 801803C4 0017D324 CB C1 00 40 */ lfd f30, 0x40(r1) +/* 801803C8 0017D328 E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0 +/* 801803CC 0017D32C CB A1 00 30 */ lfd f29, 0x30(r1) +/* 801803D0 0017D330 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801803D4 0017D334 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801803D8 0017D338 80 01 00 64 */ lwz r0, 0x64(r1) +/* 801803DC 0017D33C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801803E0 0017D340 7C 08 03 A6 */ mtlr r0 +/* 801803E4 0017D344 38 21 00 60 */ addi r1, r1, 0x60 +/* 801803E8 0017D348 4E 80 00 20 */ blr + +.global "FindNonIntersectingVector__14CGameCollisionFR13CStateManagerRC19CAreaCollisionCacheRC13CPhysicsActorRC19CCollisionPrimitiveRCQ24rstl32reserved_vector<9TUniqueId,1024>" +"FindNonIntersectingVector__14CGameCollisionFR13CStateManagerRC19CAreaCollisionCacheRC13CPhysicsActorRC19CCollisionPrimitiveRCQ24rstl32reserved_vector<9TUniqueId,1024>": +/* 801803EC 0017D34C 94 21 FE 40 */ stwu r1, -0x1c0(r1) +/* 801803F0 0017D350 7C 08 02 A6 */ mflr r0 +/* 801803F4 0017D354 90 01 01 C4 */ stw r0, 0x1c4(r1) +/* 801803F8 0017D358 DB E1 01 B0 */ stfd f31, 0x1b0(r1) +/* 801803FC 0017D35C F3 E1 01 B8 */ psq_st f31, 440(r1), 0, qr0 +/* 80180400 0017D360 DB C1 01 A0 */ stfd f30, 0x1a0(r1) +/* 80180404 0017D364 F3 C1 01 A8 */ psq_st f30, 424(r1), 0, qr0 +/* 80180408 0017D368 DB A1 01 90 */ stfd f29, 0x190(r1) +/* 8018040C 0017D36C F3 A1 01 98 */ psq_st f29, 408(r1), 0, qr0 +/* 80180410 0017D370 DB 81 01 80 */ stfd f28, 0x180(r1) +/* 80180414 0017D374 F3 81 01 88 */ psq_st f28, 392(r1), 0, qr0 +/* 80180418 0017D378 DB 61 01 70 */ stfd f27, 0x170(r1) +/* 8018041C 0017D37C F3 61 01 78 */ psq_st f27, 376(r1), 0, qr0 +/* 80180420 0017D380 DB 41 01 60 */ stfd f26, 0x160(r1) +/* 80180424 0017D384 F3 41 01 68 */ psq_st f26, 360(r1), 0, qr0 +/* 80180428 0017D388 DB 21 01 50 */ stfd f25, 0x150(r1) +/* 8018042C 0017D38C F3 21 01 58 */ psq_st f25, 344(r1), 0, qr0 +/* 80180430 0017D390 DB 01 01 40 */ stfd f24, 0x140(r1) +/* 80180434 0017D394 F3 01 01 48 */ psq_st f24, 328(r1), 0, qr0 +/* 80180438 0017D398 DA E1 01 30 */ stfd f23, 0x130(r1) +/* 8018043C 0017D39C F2 E1 01 38 */ psq_st f23, 312(r1), 0, qr0 +/* 80180440 0017D3A0 DA C1 01 20 */ stfd f22, 0x120(r1) +/* 80180444 0017D3A4 F2 C1 01 28 */ psq_st f22, 296(r1), 0, qr0 +/* 80180448 0017D3A8 DA A1 01 10 */ stfd f21, 0x110(r1) +/* 8018044C 0017D3AC F2 A1 01 18 */ psq_st f21, 280(r1), 0, qr0 +/* 80180450 0017D3B0 DA 81 01 00 */ stfd f20, 0x100(r1) +/* 80180454 0017D3B4 F2 81 01 08 */ psq_st f20, 264(r1), 0, qr0 +/* 80180458 0017D3B8 DA 61 00 F0 */ stfd f19, 0xf0(r1) +/* 8018045C 0017D3BC F2 61 00 F8 */ psq_st f19, 248(r1), 0, qr0 +/* 80180460 0017D3C0 BE A1 00 C4 */ stmw r21, 0xc4(r1) +/* 80180464 0017D3C4 7C D9 33 78 */ mr r25, r6 +/* 80180468 0017D3C8 7C 97 23 78 */ mr r23, r4 +/* 8018046C 0017D3CC 7F 24 CB 78 */ mr r4, r25 +/* 80180470 0017D3D0 7C 76 1B 78 */ mr r22, r3 +/* 80180474 0017D3D4 81 99 00 00 */ lwz r12, 0(r25) +/* 80180478 0017D3D8 7C B8 2B 78 */ mr r24, r5 +/* 8018047C 0017D3DC 7C FA 3B 78 */ mr r26, r7 +/* 80180480 0017D3E0 7D 1B 43 78 */ mr r27, r8 +/* 80180484 0017D3E4 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 80180488 0017D3E8 38 61 00 58 */ addi r3, r1, 0x58 +/* 8018048C 0017D3EC 7D 89 03 A6 */ mtctr r12 +/* 80180490 0017D3F0 4E 80 04 21 */ bctrl +/* 80180494 0017D3F4 38 61 00 88 */ addi r3, r1, 0x88 +/* 80180498 0017D3F8 38 81 00 58 */ addi r4, r1, 0x58 +/* 8018049C 0017D3FC 48 19 26 D9 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801804A0 0017D400 7F 44 D3 78 */ mr r4, r26 +/* 801804A4 0017D404 38 61 00 40 */ addi r3, r1, 0x40 +/* 801804A8 0017D408 81 9A 00 00 */ lwz r12, 0(r26) +/* 801804AC 0017D40C 38 A1 00 88 */ addi r5, r1, 0x88 +/* 801804B0 0017D410 C3 61 00 B4 */ lfs f27, 0xb4(r1) +/* 801804B4 0017D414 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801804B8 0017D418 C3 81 00 A4 */ lfs f28, 0xa4(r1) +/* 801804BC 0017D41C C3 A1 00 94 */ lfs f29, 0x94(r1) +/* 801804C0 0017D420 7D 89 03 A6 */ mtctr r12 +/* 801804C4 0017D424 4E 80 04 21 */ bctrl +/* 801804C8 0017D428 38 61 00 28 */ addi r3, r1, 0x28 +/* 801804CC 0017D42C 38 81 00 40 */ addi r4, r1, 0x40 +/* 801804D0 0017D430 48 1B 71 3D */ bl GetCenterPoint__6CAABoxCFv +/* 801804D4 0017D434 C0 41 00 28 */ lfs f2, 0x28(r1) +/* 801804D8 0017D438 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801804DC 0017D43C C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 801804E0 0017D440 3B C3 66 A0 */ addi r30, r3, skZero3f@l +/* 801804E4 0017D444 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 801804E8 0017D448 3B A0 00 02 */ li r29, 2 +/* 801804EC 0017D44C D0 41 00 34 */ stfs f2, 0x34(r1) +/* 801804F0 0017D450 3F E0 43 30 */ lis r31, 0x4330 +/* 801804F4 0017D454 C3 C2 A2 C0 */ lfs f30, lbl_805ABFE0@sda21(r2) +/* 801804F8 0017D458 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 801804FC 0017D45C CB E2 A2 B8 */ lfd f31, lbl_805ABFD8@sda21(r2) +/* 80180500 0017D460 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 80180504 0017D464 48 00 02 FC */ b lbl_80180800 +lbl_80180508: +/* 80180508 0017D468 6F A0 80 00 */ xoris r0, r29, 0x8000 +/* 8018050C 0017D46C 93 E1 00 B8 */ stw r31, 0xb8(r1) +/* 80180510 0017D470 3B 80 00 00 */ li r28, 0 +/* 80180514 0017D474 3A A0 00 00 */ li r21, 0 +/* 80180518 0017D478 90 01 00 BC */ stw r0, 0xbc(r1) +/* 8018051C 0017D47C C8 01 00 B8 */ lfd f0, 0xb8(r1) +/* 80180520 0017D480 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 80180524 0017D484 EE 7E 00 32 */ fmuls f19, f30, f0 +/* 80180528 0017D488 FE E0 98 50 */ fneg f23, f19 +lbl_8018052C: +/* 8018052C 0017D48C 28 1C 00 19 */ cmplwi r28, 0x19 +/* 80180530 0017D490 C3 5E 00 00 */ lfs f26, 0(r30) +/* 80180534 0017D494 C3 3E 00 04 */ lfs f25, 4(r30) +/* 80180538 0017D498 C3 1E 00 08 */ lfs f24, 8(r30) +/* 8018053C 0017D49C 41 81 01 B4 */ bgt lbl_801806F0 +/* 80180540 0017D4A0 3C 60 80 3E */ lis r3, lbl_803E3F80@ha +/* 80180544 0017D4A4 38 63 3F 80 */ addi r3, r3, lbl_803E3F80@l +/* 80180548 0017D4A8 7C 03 A8 2E */ lwzx r0, r3, r21 +/* 8018054C 0017D4AC 7C 09 03 A6 */ mtctr r0 +/* 80180550 0017D4B0 4E 80 04 20 */ bctr +/* 80180554 0017D4B4 C3 42 A2 A8 */ lfs f26, lbl_805ABFC8@sda21(r2) +/* 80180558 0017D4B8 FF 20 98 90 */ fmr f25, f19 +/* 8018055C 0017D4BC FF 00 D0 90 */ fmr f24, f26 +/* 80180560 0017D4C0 48 00 01 90 */ b lbl_801806F0 +/* 80180564 0017D4C4 C3 42 A2 A8 */ lfs f26, lbl_805ABFC8@sda21(r2) +/* 80180568 0017D4C8 FF 20 B8 90 */ fmr f25, f23 +/* 8018056C 0017D4CC FF 00 D0 90 */ fmr f24, f26 +/* 80180570 0017D4D0 48 00 01 80 */ b lbl_801806F0 +/* 80180574 0017D4D4 C3 22 A2 A8 */ lfs f25, lbl_805ABFC8@sda21(r2) +/* 80180578 0017D4D8 FF 40 98 90 */ fmr f26, f19 +/* 8018057C 0017D4DC FF 00 C8 90 */ fmr f24, f25 +/* 80180580 0017D4E0 48 00 01 70 */ b lbl_801806F0 +/* 80180584 0017D4E4 C3 22 A2 A8 */ lfs f25, lbl_805ABFC8@sda21(r2) +/* 80180588 0017D4E8 FF 40 B8 90 */ fmr f26, f23 +/* 8018058C 0017D4EC FF 00 C8 90 */ fmr f24, f25 +/* 80180590 0017D4F0 48 00 01 60 */ b lbl_801806F0 +/* 80180594 0017D4F4 C3 42 A2 A8 */ lfs f26, lbl_805ABFC8@sda21(r2) +/* 80180598 0017D4F8 FF 00 98 90 */ fmr f24, f19 +/* 8018059C 0017D4FC FF 20 D0 90 */ fmr f25, f26 +/* 801805A0 0017D500 48 00 01 50 */ b lbl_801806F0 +/* 801805A4 0017D504 C3 42 A2 A8 */ lfs f26, lbl_805ABFC8@sda21(r2) +/* 801805A8 0017D508 FF 00 B8 90 */ fmr f24, f23 +/* 801805AC 0017D50C FF 20 D0 90 */ fmr f25, f26 +/* 801805B0 0017D510 48 00 01 40 */ b lbl_801806F0 +/* 801805B4 0017D514 FF 20 98 90 */ fmr f25, f19 +/* 801805B8 0017D518 C3 42 A2 A8 */ lfs f26, lbl_805ABFC8@sda21(r2) +/* 801805BC 0017D51C FF 00 98 90 */ fmr f24, f19 +/* 801805C0 0017D520 48 00 01 30 */ b lbl_801806F0 +/* 801805C4 0017D524 FF 20 B8 90 */ fmr f25, f23 +/* 801805C8 0017D528 C3 42 A2 A8 */ lfs f26, lbl_805ABFC8@sda21(r2) +/* 801805CC 0017D52C FF 00 B8 90 */ fmr f24, f23 +/* 801805D0 0017D530 48 00 01 20 */ b lbl_801806F0 +/* 801805D4 0017D534 FF 20 B8 90 */ fmr f25, f23 +/* 801805D8 0017D538 C3 42 A2 A8 */ lfs f26, lbl_805ABFC8@sda21(r2) +/* 801805DC 0017D53C FF 00 98 90 */ fmr f24, f19 +/* 801805E0 0017D540 48 00 01 10 */ b lbl_801806F0 +/* 801805E4 0017D544 FF 20 98 90 */ fmr f25, f19 +/* 801805E8 0017D548 C3 42 A2 A8 */ lfs f26, lbl_805ABFC8@sda21(r2) +/* 801805EC 0017D54C FF 00 B8 90 */ fmr f24, f23 +/* 801805F0 0017D550 48 00 01 00 */ b lbl_801806F0 +/* 801805F4 0017D554 FF 40 98 90 */ fmr f26, f19 +/* 801805F8 0017D558 C3 22 A2 A8 */ lfs f25, lbl_805ABFC8@sda21(r2) +/* 801805FC 0017D55C FF 00 98 90 */ fmr f24, f19 +/* 80180600 0017D560 48 00 00 F0 */ b lbl_801806F0 +/* 80180604 0017D564 FF 40 B8 90 */ fmr f26, f23 +/* 80180608 0017D568 C3 22 A2 A8 */ lfs f25, lbl_805ABFC8@sda21(r2) +/* 8018060C 0017D56C FF 00 B8 90 */ fmr f24, f23 +/* 80180610 0017D570 48 00 00 E0 */ b lbl_801806F0 +/* 80180614 0017D574 FF 40 B8 90 */ fmr f26, f23 +/* 80180618 0017D578 C3 22 A2 A8 */ lfs f25, lbl_805ABFC8@sda21(r2) +/* 8018061C 0017D57C FF 00 98 90 */ fmr f24, f19 +/* 80180620 0017D580 48 00 00 D0 */ b lbl_801806F0 +/* 80180624 0017D584 FF 40 98 90 */ fmr f26, f19 +/* 80180628 0017D588 C3 22 A2 A8 */ lfs f25, lbl_805ABFC8@sda21(r2) +/* 8018062C 0017D58C FF 00 B8 90 */ fmr f24, f23 +/* 80180630 0017D590 48 00 00 C0 */ b lbl_801806F0 +/* 80180634 0017D594 FF 40 98 90 */ fmr f26, f19 +/* 80180638 0017D598 C3 02 A2 A8 */ lfs f24, lbl_805ABFC8@sda21(r2) +/* 8018063C 0017D59C FF 20 98 90 */ fmr f25, f19 +/* 80180640 0017D5A0 48 00 00 B0 */ b lbl_801806F0 +/* 80180644 0017D5A4 FF 40 B8 90 */ fmr f26, f23 +/* 80180648 0017D5A8 C3 02 A2 A8 */ lfs f24, lbl_805ABFC8@sda21(r2) +/* 8018064C 0017D5AC FF 20 B8 90 */ fmr f25, f23 +/* 80180650 0017D5B0 48 00 00 A0 */ b lbl_801806F0 +/* 80180654 0017D5B4 FF 40 B8 90 */ fmr f26, f23 +/* 80180658 0017D5B8 C3 02 A2 A8 */ lfs f24, lbl_805ABFC8@sda21(r2) +/* 8018065C 0017D5BC FF 20 98 90 */ fmr f25, f19 +/* 80180660 0017D5C0 48 00 00 90 */ b lbl_801806F0 +/* 80180664 0017D5C4 FF 40 98 90 */ fmr f26, f19 +/* 80180668 0017D5C8 C3 02 A2 A8 */ lfs f24, lbl_805ABFC8@sda21(r2) +/* 8018066C 0017D5CC FF 20 B8 90 */ fmr f25, f23 +/* 80180670 0017D5D0 48 00 00 80 */ b lbl_801806F0 +/* 80180674 0017D5D4 FF 40 98 90 */ fmr f26, f19 +/* 80180678 0017D5D8 FF 20 98 90 */ fmr f25, f19 +/* 8018067C 0017D5DC FF 00 98 90 */ fmr f24, f19 +/* 80180680 0017D5E0 48 00 00 70 */ b lbl_801806F0 +/* 80180684 0017D5E4 FF 40 B8 90 */ fmr f26, f23 +/* 80180688 0017D5E8 FF 20 98 90 */ fmr f25, f19 +/* 8018068C 0017D5EC FF 00 98 90 */ fmr f24, f19 +/* 80180690 0017D5F0 48 00 00 60 */ b lbl_801806F0 +/* 80180694 0017D5F4 FF 40 98 90 */ fmr f26, f19 +/* 80180698 0017D5F8 FF 20 B8 90 */ fmr f25, f23 +/* 8018069C 0017D5FC FF 00 98 90 */ fmr f24, f19 +/* 801806A0 0017D600 48 00 00 50 */ b lbl_801806F0 +/* 801806A4 0017D604 FF 40 B8 90 */ fmr f26, f23 +/* 801806A8 0017D608 FF 20 B8 90 */ fmr f25, f23 +/* 801806AC 0017D60C FF 00 98 90 */ fmr f24, f19 +/* 801806B0 0017D610 48 00 00 40 */ b lbl_801806F0 +/* 801806B4 0017D614 FF 40 98 90 */ fmr f26, f19 +/* 801806B8 0017D618 FF 20 98 90 */ fmr f25, f19 +/* 801806BC 0017D61C FF 00 B8 90 */ fmr f24, f23 +/* 801806C0 0017D620 48 00 00 30 */ b lbl_801806F0 +/* 801806C4 0017D624 FF 40 B8 90 */ fmr f26, f23 +/* 801806C8 0017D628 FF 20 98 90 */ fmr f25, f19 +/* 801806CC 0017D62C FF 00 B8 90 */ fmr f24, f23 +/* 801806D0 0017D630 48 00 00 20 */ b lbl_801806F0 +/* 801806D4 0017D634 FF 40 98 90 */ fmr f26, f19 +/* 801806D8 0017D638 FF 20 B8 90 */ fmr f25, f23 +/* 801806DC 0017D63C FF 00 B8 90 */ fmr f24, f23 +/* 801806E0 0017D640 48 00 00 10 */ b lbl_801806F0 +/* 801806E4 0017D644 FF 40 B8 90 */ fmr f26, f23 +/* 801806E8 0017D648 FF 20 B8 90 */ fmr f25, f23 +/* 801806EC 0017D64C FF 00 B8 90 */ fmr f24, f23 +lbl_801806F0: +/* 801806F0 0017D650 EE DD D0 2A */ fadds f22, f29, f26 +/* 801806F4 0017D654 80 D7 08 CC */ lwz r6, 0x8cc(r23) +/* 801806F8 0017D658 EE BC C8 2A */ fadds f21, f28, f25 +/* 801806FC 0017D65C 80 B7 08 50 */ lwz r5, 0x850(r23) +/* 80180700 0017D660 EE 9B C0 2A */ fadds f20, f27, f24 +/* 80180704 0017D664 54 C3 18 38 */ slwi r3, r6, 3 +/* 80180708 0017D668 D2 C1 00 1C */ stfs f22, 0x1c(r1) +/* 8018070C 0017D66C 38 03 00 04 */ addi r0, r3, 4 +/* 80180710 0017D670 38 81 00 1C */ addi r4, r1, 0x1c +/* 80180714 0017D674 D2 A1 00 20 */ stfs f21, 0x20(r1) +/* 80180718 0017D678 D2 81 00 24 */ stfs f20, 0x24(r1) +/* 8018071C 0017D67C 80 65 00 20 */ lwz r3, 0x20(r5) +/* 80180720 0017D680 90 C1 00 08 */ stw r6, 8(r1) +/* 80180724 0017D684 7C 63 00 2E */ lwzx r3, r3, r0 +/* 80180728 0017D688 90 C1 00 0C */ stw r6, 0xc(r1) +/* 8018072C 0017D68C 38 63 00 6C */ addi r3, r3, 0x6c +/* 80180730 0017D690 48 1B 6E 05 */ bl PointInside__6CAABoxCFRC9CVector3f +/* 80180734 0017D694 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80180738 0017D698 41 82 00 A8 */ beq lbl_801807E0 +/* 8018073C 0017D69C C0 41 00 38 */ lfs f2, 0x38(r1) +/* 80180740 0017D6A0 3C 60 80 5A */ lis r3, lbl_8059FD18@ha +/* 80180744 0017D6A4 C0 21 00 3C */ lfs f1, 0x3c(r1) +/* 80180748 0017D6A8 38 E3 FD 18 */ addi r7, r3, lbl_8059FD18@l +/* 8018074C 0017D6AC C0 01 00 34 */ lfs f0, 0x34(r1) +/* 80180750 0017D6B0 EC 42 C8 2A */ fadds f2, f2, f25 +/* 80180754 0017D6B4 EC 21 C0 2A */ fadds f1, f1, f24 +/* 80180758 0017D6B8 7E E3 BB 78 */ mr r3, r23 +/* 8018075C 0017D6BC EC 00 D0 2A */ fadds f0, f0, f26 +/* 80180760 0017D6C0 7F 66 DB 78 */ mr r6, r27 +/* 80180764 0017D6C4 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 80180768 0017D6C8 7F 28 CB 78 */ mr r8, r25 +/* 8018076C 0017D6CC D0 01 00 10 */ stfs f0, 0x10(r1) +/* 80180770 0017D6D0 38 81 00 34 */ addi r4, r1, 0x34 +/* 80180774 0017D6D4 38 A1 00 10 */ addi r5, r1, 0x10 +/* 80180778 0017D6D8 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8018077C 0017D6DC 4B EC C7 F1 */ bl "RayCollideWorld__13CStateManagerRC9CVector3fRC9CVector3fRCQ24rstl49reserved_vector<9TUniqueId,1024>RC15CMaterialFilterPC6CActor" +/* 80180780 0017D6E0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80180784 0017D6E4 41 82 00 5C */ beq lbl_801807E0 +/* 80180788 0017D6E8 D2 C1 00 94 */ stfs f22, 0x94(r1) +/* 8018078C 0017D6EC 7F 23 CB 78 */ mr r3, r25 +/* 80180790 0017D6F0 D2 A1 00 A4 */ stfs f21, 0xa4(r1) +/* 80180794 0017D6F4 D2 81 00 B4 */ stfs f20, 0xb4(r1) +/* 80180798 0017D6F8 4B ED 31 25 */ bl GetMaterialFilter__6CActorCFv +/* 8018079C 0017D6FC 7C 67 1B 78 */ mr r7, r3 +/* 801807A0 0017D700 7E E3 BB 78 */ mr r3, r23 +/* 801807A4 0017D704 7F 04 C3 78 */ mr r4, r24 +/* 801807A8 0017D708 7F 45 D3 78 */ mr r5, r26 +/* 801807AC 0017D70C 7F 68 DB 78 */ mr r8, r27 +/* 801807B0 0017D710 38 C1 00 88 */ addi r6, r1, 0x88 +/* 801807B4 0017D714 48 00 3D B1 */ bl "DetectCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 801807B8 0017D718 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801807BC 0017D71C 40 82 00 24 */ bne lbl_801807E0 +/* 801807C0 0017D720 38 00 00 01 */ li r0, 1 +/* 801807C4 0017D724 28 16 00 00 */ cmplwi r22, 0 +/* 801807C8 0017D728 98 16 00 0C */ stb r0, 0xc(r22) +/* 801807CC 0017D72C 41 82 00 44 */ beq lbl_80180810 +/* 801807D0 0017D730 D3 56 00 00 */ stfs f26, 0(r22) +/* 801807D4 0017D734 D3 36 00 04 */ stfs f25, 4(r22) +/* 801807D8 0017D738 D3 16 00 08 */ stfs f24, 8(r22) +/* 801807DC 0017D73C 48 00 00 34 */ b lbl_80180810 +lbl_801807E0: +/* 801807E0 0017D740 3B 9C 00 01 */ addi r28, r28, 1 +/* 801807E4 0017D744 3A B5 00 04 */ addi r21, r21, 4 +/* 801807E8 0017D748 2C 1C 00 1A */ cmpwi r28, 0x1a +/* 801807EC 0017D74C 41 80 FD 40 */ blt lbl_8018052C +/* 801807F0 0017D750 57 A0 0F FE */ srwi r0, r29, 0x1f +/* 801807F4 0017D754 7C 00 EA 14 */ add r0, r0, r29 +/* 801807F8 0017D758 7C 00 0E 70 */ srawi r0, r0, 1 +/* 801807FC 0017D75C 7F BD 02 14 */ add r29, r29, r0 +lbl_80180800: +/* 80180800 0017D760 2C 1D 03 E8 */ cmpwi r29, 0x3e8 +/* 80180804 0017D764 41 80 FD 04 */ blt lbl_80180508 +/* 80180808 0017D768 38 00 00 00 */ li r0, 0 +/* 8018080C 0017D76C 98 16 00 0C */ stb r0, 0xc(r22) +lbl_80180810: +/* 80180810 0017D770 E3 E1 01 B8 */ psq_l f31, 440(r1), 0, qr0 +/* 80180814 0017D774 CB E1 01 B0 */ lfd f31, 0x1b0(r1) +/* 80180818 0017D778 E3 C1 01 A8 */ psq_l f30, 424(r1), 0, qr0 +/* 8018081C 0017D77C CB C1 01 A0 */ lfd f30, 0x1a0(r1) +/* 80180820 0017D780 E3 A1 01 98 */ psq_l f29, 408(r1), 0, qr0 +/* 80180824 0017D784 CB A1 01 90 */ lfd f29, 0x190(r1) +/* 80180828 0017D788 E3 81 01 88 */ psq_l f28, 392(r1), 0, qr0 +/* 8018082C 0017D78C CB 81 01 80 */ lfd f28, 0x180(r1) +/* 80180830 0017D790 E3 61 01 78 */ psq_l f27, 376(r1), 0, qr0 +/* 80180834 0017D794 CB 61 01 70 */ lfd f27, 0x170(r1) +/* 80180838 0017D798 E3 41 01 68 */ psq_l f26, 360(r1), 0, qr0 +/* 8018083C 0017D79C CB 41 01 60 */ lfd f26, 0x160(r1) +/* 80180840 0017D7A0 E3 21 01 58 */ psq_l f25, 344(r1), 0, qr0 +/* 80180844 0017D7A4 CB 21 01 50 */ lfd f25, 0x150(r1) +/* 80180848 0017D7A8 E3 01 01 48 */ psq_l f24, 328(r1), 0, qr0 +/* 8018084C 0017D7AC CB 01 01 40 */ lfd f24, 0x140(r1) +/* 80180850 0017D7B0 E2 E1 01 38 */ psq_l f23, 312(r1), 0, qr0 +/* 80180854 0017D7B4 CA E1 01 30 */ lfd f23, 0x130(r1) +/* 80180858 0017D7B8 E2 C1 01 28 */ psq_l f22, 296(r1), 0, qr0 +/* 8018085C 0017D7BC CA C1 01 20 */ lfd f22, 0x120(r1) +/* 80180860 0017D7C0 E2 A1 01 18 */ psq_l f21, 280(r1), 0, qr0 +/* 80180864 0017D7C4 CA A1 01 10 */ lfd f21, 0x110(r1) +/* 80180868 0017D7C8 E2 81 01 08 */ psq_l f20, 264(r1), 0, qr0 +/* 8018086C 0017D7CC CA 81 01 00 */ lfd f20, 0x100(r1) +/* 80180870 0017D7D0 E2 61 00 F8 */ psq_l f19, 248(r1), 0, qr0 +/* 80180874 0017D7D4 CA 61 00 F0 */ lfd f19, 0xf0(r1) +/* 80180878 0017D7D8 BA A1 00 C4 */ lmw r21, 0xc4(r1) +/* 8018087C 0017D7DC 80 01 01 C4 */ lwz r0, 0x1c4(r1) +/* 80180880 0017D7E0 7C 08 03 A6 */ mtlr r0 +/* 80180884 0017D7E4 38 21 01 C0 */ addi r1, r1, 0x1c0 +/* 80180888 0017D7E8 4E 80 00 20 */ blr + +.global "CollisionFailsafe__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheR13CPhysicsActorRC19CCollisionPrimitiveRCQ24rstl32reserved_vector<9TUniqueId,1024>fUi" +"CollisionFailsafe__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheR13CPhysicsActorRC19CCollisionPrimitiveRCQ24rstl32reserved_vector<9TUniqueId,1024>fUi": +/* 8018088C 0017D7EC 94 21 FD 50 */ stwu r1, -0x2b0(r1) +/* 80180890 0017D7F0 7C 08 02 A6 */ mflr r0 +/* 80180894 0017D7F4 90 01 02 B4 */ stw r0, 0x2b4(r1) +/* 80180898 0017D7F8 DB E1 02 A0 */ stfd f31, 0x2a0(r1) +/* 8018089C 0017D7FC F3 E1 02 A8 */ psq_st f31, 680(r1), 0, qr0 +/* 801808A0 0017D800 BF 21 02 84 */ stmw r25, 0x284(r1) +/* 801808A4 0017D804 3D 20 80 5A */ lis r9, skZero3f@ha +/* 801808A8 0017D808 FF E0 08 90 */ fmr f31, f1 +/* 801808AC 0017D80C 7C BD 2B 78 */ mr r29, r5 +/* 801808B0 0017D810 7C 7B 1B 78 */ mr r27, r3 +/* 801808B4 0017D814 38 09 66 A0 */ addi r0, r9, skZero3f@l +/* 801808B8 0017D818 7C 9C 23 78 */ mr r28, r4 +/* 801808BC 0017D81C 7C DE 33 78 */ mr r30, r6 +/* 801808C0 0017D820 7C FF 3B 78 */ mr r31, r7 +/* 801808C4 0017D824 7D 19 43 78 */ mr r25, r8 +/* 801808C8 0017D828 7F A3 EB 78 */ mr r3, r29 +/* 801808CC 0017D82C 7C 04 03 78 */ mr r4, r0 +/* 801808D0 0017D830 4B F9 A1 69 */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f +/* 801808D4 0017D834 C0 02 A2 C4 */ lfs f0, lbl_805ABFE4@sda21(r2) +/* 801808D8 0017D838 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 801808DC 0017D83C 40 81 00 10 */ ble lbl_801808EC +/* 801808E0 0017D840 80 7D 02 50 */ lwz r3, 0x250(r29) +/* 801808E4 0017D844 38 03 00 01 */ addi r0, r3, 1 +/* 801808E8 0017D848 90 1D 02 50 */ stw r0, 0x250(r29) +lbl_801808EC: +/* 801808EC 0017D84C 80 1D 02 50 */ lwz r0, 0x250(r29) +/* 801808F0 0017D850 28 00 00 01 */ cmplwi r0, 1 +/* 801808F4 0017D854 41 81 00 4C */ bgt lbl_80180940 +/* 801808F8 0017D858 7F A3 EB 78 */ mr r3, r29 +/* 801808FC 0017D85C 4B ED 2F C1 */ bl GetMaterialFilter__6CActorCFv +/* 80180900 0017D860 7F A4 EB 78 */ mr r4, r29 +/* 80180904 0017D864 7C 7A 1B 78 */ mr r26, r3 +/* 80180908 0017D868 81 9D 00 00 */ lwz r12, 0(r29) +/* 8018090C 0017D86C 38 61 02 50 */ addi r3, r1, 0x250 +/* 80180910 0017D870 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 80180914 0017D874 7D 89 03 A6 */ mtctr r12 +/* 80180918 0017D878 4E 80 04 21 */ bctrl +/* 8018091C 0017D87C 7F 63 DB 78 */ mr r3, r27 +/* 80180920 0017D880 7F 84 E3 78 */ mr r4, r28 +/* 80180924 0017D884 7F C5 F3 78 */ mr r5, r30 +/* 80180928 0017D888 7F 47 D3 78 */ mr r7, r26 +/* 8018092C 0017D88C 7F E8 FB 78 */ mr r8, r31 +/* 80180930 0017D890 38 C1 02 50 */ addi r6, r1, 0x250 +/* 80180934 0017D894 48 00 3C 31 */ bl "DetectCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 80180938 0017D898 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8018093C 0017D89C 41 82 05 20 */ beq lbl_80180E5C +lbl_80180940: +/* 80180940 0017D8A0 38 00 00 00 */ li r0, 0 +/* 80180944 0017D8A4 90 1D 02 50 */ stw r0, 0x250(r29) +/* 80180948 0017D8A8 80 7D 02 4C */ lwz r3, 0x24c(r29) +/* 8018094C 0017D8AC 38 03 00 01 */ addi r0, r3, 1 +/* 80180950 0017D8B0 90 1D 02 4C */ stw r0, 0x24c(r29) +/* 80180954 0017D8B4 80 1D 02 4C */ lwz r0, 0x24c(r29) +/* 80180958 0017D8B8 7C 00 C8 40 */ cmplw r0, r25 +/* 8018095C 0017D8BC 41 80 05 7C */ blt lbl_80180ED8 +/* 80180960 0017D8C0 7F A4 EB 78 */ mr r4, r29 +/* 80180964 0017D8C4 38 61 02 1C */ addi r3, r1, 0x21c +/* 80180968 0017D8C8 4B F9 AD 0D */ bl GetMotionState__13CPhysicsActorCFv +/* 8018096C 0017D8CC C1 9D 01 F4 */ lfs f12, 0x1f4(r29) +/* 80180970 0017D8D0 7F A3 EB 78 */ mr r3, r29 +/* 80180974 0017D8D4 38 81 01 B4 */ addi r4, r1, 0x1b4 +/* 80180978 0017D8D8 D1 81 01 E8 */ stfs f12, 0x1e8(r1) +/* 8018097C 0017D8DC C1 7D 01 F8 */ lfs f11, 0x1f8(r29) +/* 80180980 0017D8E0 D1 61 01 EC */ stfs f11, 0x1ec(r1) +/* 80180984 0017D8E4 C1 5D 01 FC */ lfs f10, 0x1fc(r29) +/* 80180988 0017D8E8 D1 41 01 F0 */ stfs f10, 0x1f0(r1) +/* 8018098C 0017D8EC C1 3D 02 00 */ lfs f9, 0x200(r29) +/* 80180990 0017D8F0 D1 21 01 F4 */ stfs f9, 0x1f4(r1) +/* 80180994 0017D8F4 C1 1D 02 04 */ lfs f8, 0x204(r29) +/* 80180998 0017D8F8 D1 01 01 F8 */ stfs f8, 0x1f8(r1) +/* 8018099C 0017D8FC C0 FD 02 08 */ lfs f7, 0x208(r29) +/* 801809A0 0017D900 D0 E1 01 FC */ stfs f7, 0x1fc(r1) +/* 801809A4 0017D904 C0 DD 02 0C */ lfs f6, 0x20c(r29) +/* 801809A8 0017D908 D0 C1 02 00 */ stfs f6, 0x200(r1) +/* 801809AC 0017D90C C0 BD 02 10 */ lfs f5, 0x210(r29) +/* 801809B0 0017D910 D0 A1 02 04 */ stfs f5, 0x204(r1) +/* 801809B4 0017D914 C0 9D 02 14 */ lfs f4, 0x214(r29) +/* 801809B8 0017D918 D0 81 02 08 */ stfs f4, 0x208(r1) +/* 801809BC 0017D91C C0 7D 02 18 */ lfs f3, 0x218(r29) +/* 801809C0 0017D920 D0 61 02 0C */ stfs f3, 0x20c(r1) +/* 801809C4 0017D924 C0 5D 02 1C */ lfs f2, 0x21c(r29) +/* 801809C8 0017D928 D0 41 02 10 */ stfs f2, 0x210(r1) +/* 801809CC 0017D92C C0 3D 02 20 */ lfs f1, 0x220(r29) +/* 801809D0 0017D930 D0 21 02 14 */ stfs f1, 0x214(r1) +/* 801809D4 0017D934 C0 1D 02 24 */ lfs f0, 0x224(r29) +/* 801809D8 0017D938 D0 01 02 18 */ stfs f0, 0x218(r1) +/* 801809DC 0017D93C D1 81 01 B4 */ stfs f12, 0x1b4(r1) +/* 801809E0 0017D940 D1 61 01 B8 */ stfs f11, 0x1b8(r1) +/* 801809E4 0017D944 D1 41 01 BC */ stfs f10, 0x1bc(r1) +/* 801809E8 0017D948 D1 21 01 C0 */ stfs f9, 0x1c0(r1) +/* 801809EC 0017D94C D1 01 01 C4 */ stfs f8, 0x1c4(r1) +/* 801809F0 0017D950 D0 E1 01 C8 */ stfs f7, 0x1c8(r1) +/* 801809F4 0017D954 D0 C1 01 CC */ stfs f6, 0x1cc(r1) +/* 801809F8 0017D958 D0 A1 01 D0 */ stfs f5, 0x1d0(r1) +/* 801809FC 0017D95C D0 81 01 D4 */ stfs f4, 0x1d4(r1) +/* 80180A00 0017D960 D0 61 01 D8 */ stfs f3, 0x1d8(r1) +/* 80180A04 0017D964 D0 41 01 DC */ stfs f2, 0x1dc(r1) +/* 80180A08 0017D968 D0 21 01 E0 */ stfs f1, 0x1e0(r1) +/* 80180A0C 0017D96C D0 01 01 E4 */ stfs f0, 0x1e4(r1) +/* 80180A10 0017D970 4B F9 AD 19 */ bl SetMotionState__13CPhysicsActorFRC12CMotionState +/* 80180A14 0017D974 7F A3 EB 78 */ mr r3, r29 +/* 80180A18 0017D978 4B ED 2E A5 */ bl GetMaterialFilter__6CActorCFv +/* 80180A1C 0017D97C 7F A4 EB 78 */ mr r4, r29 +/* 80180A20 0017D980 7C 7A 1B 78 */ mr r26, r3 +/* 80180A24 0017D984 81 9D 00 00 */ lwz r12, 0(r29) +/* 80180A28 0017D988 38 61 01 84 */ addi r3, r1, 0x184 +/* 80180A2C 0017D98C 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 80180A30 0017D990 7D 89 03 A6 */ mtctr r12 +/* 80180A34 0017D994 4E 80 04 21 */ bctrl +/* 80180A38 0017D998 7F 63 DB 78 */ mr r3, r27 +/* 80180A3C 0017D99C 7F 84 E3 78 */ mr r4, r28 +/* 80180A40 0017D9A0 7F C5 F3 78 */ mr r5, r30 +/* 80180A44 0017D9A4 7F 47 D3 78 */ mr r7, r26 +/* 80180A48 0017D9A8 7F E8 FB 78 */ mr r8, r31 +/* 80180A4C 0017D9AC 38 C1 01 84 */ addi r6, r1, 0x184 +/* 80180A50 0017D9B0 48 00 3B 15 */ bl "DetectCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 80180A54 0017D9B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80180A58 0017D9B8 40 82 01 0C */ bne lbl_80180B64 +/* 80180A5C 0017D9BC 38 61 00 30 */ addi r3, r1, 0x30 +/* 80180A60 0017D9C0 38 81 02 10 */ addi r4, r1, 0x210 +/* 80180A64 0017D9C4 38 AD 8E 8C */ addi r5, r13, lbl_805A7A4C@sda21 +/* 80180A68 0017D9C8 4B E9 AA 1D */ bl __ml__FRC10CAxisAngleRCf +/* 80180A6C 0017D9CC C0 21 01 E8 */ lfs f1, 0x1e8(r1) +/* 80180A70 0017D9D0 38 00 00 00 */ li r0, 0 +/* 80180A74 0017D9D4 C0 01 01 EC */ lfs f0, 0x1ec(r1) +/* 80180A78 0017D9D8 D0 21 01 50 */ stfs f1, 0x150(r1) +/* 80180A7C 0017D9DC C0 E1 01 F0 */ lfs f7, 0x1f0(r1) +/* 80180A80 0017D9E0 D0 01 01 54 */ stfs f0, 0x154(r1) +/* 80180A84 0017D9E4 C0 C1 01 F4 */ lfs f6, 0x1f4(r1) +/* 80180A88 0017D9E8 C0 A1 01 F8 */ lfs f5, 0x1f8(r1) +/* 80180A8C 0017D9EC C0 81 01 FC */ lfs f4, 0x1fc(r1) +/* 80180A90 0017D9F0 C0 61 02 00 */ lfs f3, 0x200(r1) +/* 80180A94 0017D9F4 C0 41 00 30 */ lfs f2, 0x30(r1) +/* 80180A98 0017D9F8 C0 21 00 34 */ lfs f1, 0x34(r1) +/* 80180A9C 0017D9FC C0 01 00 38 */ lfs f0, 0x38(r1) +/* 80180AA0 0017DA00 D0 E1 01 58 */ stfs f7, 0x158(r1) +/* 80180AA4 0017DA04 C1 01 02 04 */ lfs f8, 0x204(r1) +/* 80180AA8 0017DA08 D0 C1 01 5C */ stfs f6, 0x15c(r1) +/* 80180AAC 0017DA0C C1 22 A2 C4 */ lfs f9, lbl_805ABFE4@sda21(r2) +/* 80180AB0 0017DA10 C0 E1 02 08 */ lfs f7, 0x208(r1) +/* 80180AB4 0017DA14 C0 C1 02 0C */ lfs f6, 0x20c(r1) +/* 80180AB8 0017DA18 ED 09 02 32 */ fmuls f8, f9, f8 +/* 80180ABC 0017DA1C 80 61 01 50 */ lwz r3, 0x150(r1) +/* 80180AC0 0017DA20 EC E9 01 F2 */ fmuls f7, f9, f7 +/* 80180AC4 0017DA24 D0 A1 01 60 */ stfs f5, 0x160(r1) +/* 80180AC8 0017DA28 EC A9 01 B2 */ fmuls f5, f9, f6 +/* 80180ACC 0017DA2C 80 81 01 54 */ lwz r4, 0x154(r1) +/* 80180AD0 0017DA30 90 7D 01 F4 */ stw r3, 0x1f4(r29) +/* 80180AD4 0017DA34 80 61 01 58 */ lwz r3, 0x158(r1) +/* 80180AD8 0017DA38 90 9D 01 F8 */ stw r4, 0x1f8(r29) +/* 80180ADC 0017DA3C 80 81 01 5C */ lwz r4, 0x15c(r1) +/* 80180AE0 0017DA40 90 7D 01 FC */ stw r3, 0x1fc(r29) +/* 80180AE4 0017DA44 80 61 01 60 */ lwz r3, 0x160(r1) +/* 80180AE8 0017DA48 D0 81 01 64 */ stfs f4, 0x164(r1) +/* 80180AEC 0017DA4C 90 9D 02 00 */ stw r4, 0x200(r29) +/* 80180AF0 0017DA50 80 81 01 64 */ lwz r4, 0x164(r1) +/* 80180AF4 0017DA54 D0 61 01 68 */ stfs f3, 0x168(r1) +/* 80180AF8 0017DA58 90 7D 02 04 */ stw r3, 0x204(r29) +/* 80180AFC 0017DA5C 80 61 01 68 */ lwz r3, 0x168(r1) +/* 80180B00 0017DA60 D1 01 01 6C */ stfs f8, 0x16c(r1) +/* 80180B04 0017DA64 90 9D 02 08 */ stw r4, 0x208(r29) +/* 80180B08 0017DA68 80 81 01 6C */ lwz r4, 0x16c(r1) +/* 80180B0C 0017DA6C D0 E1 01 70 */ stfs f7, 0x170(r1) +/* 80180B10 0017DA70 90 7D 02 0C */ stw r3, 0x20c(r29) +/* 80180B14 0017DA74 80 61 01 70 */ lwz r3, 0x170(r1) +/* 80180B18 0017DA78 D0 A1 01 74 */ stfs f5, 0x174(r1) +/* 80180B1C 0017DA7C 90 9D 02 10 */ stw r4, 0x210(r29) +/* 80180B20 0017DA80 80 81 01 74 */ lwz r4, 0x174(r1) +/* 80180B24 0017DA84 D0 41 01 78 */ stfs f2, 0x178(r1) +/* 80180B28 0017DA88 90 7D 02 14 */ stw r3, 0x214(r29) +/* 80180B2C 0017DA8C 80 61 01 78 */ lwz r3, 0x178(r1) +/* 80180B30 0017DA90 D0 21 01 7C */ stfs f1, 0x17c(r1) +/* 80180B34 0017DA94 90 9D 02 18 */ stw r4, 0x218(r29) +/* 80180B38 0017DA98 80 81 01 7C */ lwz r4, 0x17c(r1) +/* 80180B3C 0017DA9C D0 01 01 80 */ stfs f0, 0x180(r1) +/* 80180B40 0017DAA0 90 7D 02 1C */ stw r3, 0x21c(r29) +/* 80180B44 0017DAA4 80 61 01 80 */ lwz r3, 0x180(r1) +/* 80180B48 0017DAA8 90 9D 02 20 */ stw r4, 0x220(r29) +/* 80180B4C 0017DAAC 90 7D 02 24 */ stw r3, 0x224(r29) +/* 80180B50 0017DAB0 80 6D A4 60 */ lwz r3, lbl_805A9020@sda21(r13) +/* 80180B54 0017DAB4 38 63 00 01 */ addi r3, r3, 1 +/* 80180B58 0017DAB8 90 6D A4 60 */ stw r3, lbl_805A9020@sda21(r13) +/* 80180B5C 0017DABC 90 1D 02 4C */ stw r0, 0x24c(r29) +/* 80180B60 0017DAC0 48 00 03 78 */ b lbl_80180ED8 +lbl_80180B64: +/* 80180B64 0017DAC4 C1 81 02 1C */ lfs f12, 0x21c(r1) +/* 80180B68 0017DAC8 7F A3 EB 78 */ mr r3, r29 +/* 80180B6C 0017DACC C1 61 02 20 */ lfs f11, 0x220(r1) +/* 80180B70 0017DAD0 38 81 01 1C */ addi r4, r1, 0x11c +/* 80180B74 0017DAD4 C1 41 02 24 */ lfs f10, 0x224(r1) +/* 80180B78 0017DAD8 C1 21 02 28 */ lfs f9, 0x228(r1) +/* 80180B7C 0017DADC C1 01 02 2C */ lfs f8, 0x22c(r1) +/* 80180B80 0017DAE0 C0 E1 02 30 */ lfs f7, 0x230(r1) +/* 80180B84 0017DAE4 C0 C1 02 34 */ lfs f6, 0x234(r1) +/* 80180B88 0017DAE8 C0 A1 02 38 */ lfs f5, 0x238(r1) +/* 80180B8C 0017DAEC C0 81 02 3C */ lfs f4, 0x23c(r1) +/* 80180B90 0017DAF0 C0 61 02 40 */ lfs f3, 0x240(r1) +/* 80180B94 0017DAF4 C0 41 02 44 */ lfs f2, 0x244(r1) +/* 80180B98 0017DAF8 C0 21 02 48 */ lfs f1, 0x248(r1) +/* 80180B9C 0017DAFC C0 01 02 4C */ lfs f0, 0x24c(r1) +/* 80180BA0 0017DB00 D1 81 01 1C */ stfs f12, 0x11c(r1) +/* 80180BA4 0017DB04 D1 61 01 20 */ stfs f11, 0x120(r1) +/* 80180BA8 0017DB08 D1 41 01 24 */ stfs f10, 0x124(r1) +/* 80180BAC 0017DB0C D1 21 01 28 */ stfs f9, 0x128(r1) +/* 80180BB0 0017DB10 D1 01 01 2C */ stfs f8, 0x12c(r1) +/* 80180BB4 0017DB14 D0 E1 01 30 */ stfs f7, 0x130(r1) +/* 80180BB8 0017DB18 D0 C1 01 34 */ stfs f6, 0x134(r1) +/* 80180BBC 0017DB1C D0 A1 01 38 */ stfs f5, 0x138(r1) +/* 80180BC0 0017DB20 D0 81 01 3C */ stfs f4, 0x13c(r1) +/* 80180BC4 0017DB24 D0 61 01 40 */ stfs f3, 0x140(r1) +/* 80180BC8 0017DB28 D0 41 01 44 */ stfs f2, 0x144(r1) +/* 80180BCC 0017DB2C D0 21 01 48 */ stfs f1, 0x148(r1) +/* 80180BD0 0017DB30 D0 01 01 4C */ stfs f0, 0x14c(r1) +/* 80180BD4 0017DB34 4B F9 AB 55 */ bl SetMotionState__13CPhysicsActorFRC12CMotionState +/* 80180BD8 0017DB38 7F 64 DB 78 */ mr r4, r27 +/* 80180BDC 0017DB3C 7F 85 E3 78 */ mr r5, r28 +/* 80180BE0 0017DB40 7F A6 EB 78 */ mr r6, r29 +/* 80180BE4 0017DB44 7F C7 F3 78 */ mr r7, r30 +/* 80180BE8 0017DB48 7F E8 FB 78 */ mr r8, r31 +/* 80180BEC 0017DB4C 38 61 00 20 */ addi r3, r1, 0x20 +/* 80180BF0 0017DB50 4B FF F7 FD */ bl "FindNonIntersectingVector__14CGameCollisionFR13CStateManagerRC19CAreaCollisionCacheRC13CPhysicsActorRC19CCollisionPrimitiveRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 80180BF4 0017DB54 88 01 00 2C */ lbz r0, 0x2c(r1) +/* 80180BF8 0017DB58 28 00 00 00 */ cmplwi r0, 0 +/* 80180BFC 0017DB5C 98 01 00 48 */ stb r0, 0x48(r1) +/* 80180C00 0017DB60 41 82 00 24 */ beq lbl_80180C24 +/* 80180C04 0017DB64 34 61 00 3C */ addic. r3, r1, 0x3c +/* 80180C08 0017DB68 41 82 00 1C */ beq lbl_80180C24 +/* 80180C0C 0017DB6C C0 01 00 20 */ lfs f0, 0x20(r1) +/* 80180C10 0017DB70 D0 03 00 00 */ stfs f0, 0(r3) +/* 80180C14 0017DB74 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 80180C18 0017DB78 D0 03 00 04 */ stfs f0, 4(r3) +/* 80180C1C 0017DB7C C0 01 00 28 */ lfs f0, 0x28(r1) +/* 80180C20 0017DB80 D0 03 00 08 */ stfs f0, 8(r3) +lbl_80180C24: +/* 80180C24 0017DB84 88 01 00 48 */ lbz r0, 0x48(r1) +/* 80180C28 0017DB88 38 60 00 00 */ li r3, 0 +/* 80180C2C 0017DB8C 98 61 00 2C */ stb r3, 0x2c(r1) +/* 80180C30 0017DB90 28 00 00 00 */ cmplwi r0, 0 +/* 80180C34 0017DB94 41 82 01 20 */ beq lbl_80180D54 +/* 80180C38 0017DB98 C0 41 02 20 */ lfs f2, 0x220(r1) +/* 80180C3C 0017DB9C 7F A3 EB 78 */ mr r3, r29 +/* 80180C40 0017DBA0 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 80180C44 0017DBA4 38 81 00 E8 */ addi r4, r1, 0xe8 +/* 80180C48 0017DBA8 C0 21 02 24 */ lfs f1, 0x224(r1) +/* 80180C4C 0017DBAC ED A2 00 2A */ fadds f13, f2, f0 +/* 80180C50 0017DBB0 C0 01 00 44 */ lfs f0, 0x44(r1) +/* 80180C54 0017DBB4 C1 21 02 28 */ lfs f9, 0x228(r1) +/* 80180C58 0017DBB8 ED 81 00 2A */ fadds f12, f1, f0 +/* 80180C5C 0017DBBC C1 01 02 2C */ lfs f8, 0x22c(r1) +/* 80180C60 0017DBC0 C0 E1 02 30 */ lfs f7, 0x230(r1) +/* 80180C64 0017DBC4 C0 C1 02 34 */ lfs f6, 0x234(r1) +/* 80180C68 0017DBC8 C0 A1 02 38 */ lfs f5, 0x238(r1) +/* 80180C6C 0017DBCC C0 81 02 3C */ lfs f4, 0x23c(r1) +/* 80180C70 0017DBD0 C0 61 02 40 */ lfs f3, 0x240(r1) +/* 80180C74 0017DBD4 C0 41 02 44 */ lfs f2, 0x244(r1) +/* 80180C78 0017DBD8 C0 21 02 48 */ lfs f1, 0x248(r1) +/* 80180C7C 0017DBDC C0 01 02 4C */ lfs f0, 0x24c(r1) +/* 80180C80 0017DBE0 C1 61 02 1C */ lfs f11, 0x21c(r1) +/* 80180C84 0017DBE4 C1 41 00 3C */ lfs f10, 0x3c(r1) +/* 80180C88 0017DBE8 D1 A1 00 18 */ stfs f13, 0x18(r1) +/* 80180C8C 0017DBEC ED 4B 50 2A */ fadds f10, f11, f10 +/* 80180C90 0017DBF0 D1 81 00 1C */ stfs f12, 0x1c(r1) +/* 80180C94 0017DBF4 D1 41 00 14 */ stfs f10, 0x14(r1) +/* 80180C98 0017DBF8 D1 41 00 E8 */ stfs f10, 0xe8(r1) +/* 80180C9C 0017DBFC D1 A1 00 EC */ stfs f13, 0xec(r1) +/* 80180CA0 0017DC00 D1 81 00 F0 */ stfs f12, 0xf0(r1) +/* 80180CA4 0017DC04 D1 21 00 F4 */ stfs f9, 0xf4(r1) +/* 80180CA8 0017DC08 D1 01 00 F8 */ stfs f8, 0xf8(r1) +/* 80180CAC 0017DC0C D0 E1 00 FC */ stfs f7, 0xfc(r1) +/* 80180CB0 0017DC10 D0 C1 01 00 */ stfs f6, 0x100(r1) +/* 80180CB4 0017DC14 D0 A1 01 04 */ stfs f5, 0x104(r1) +/* 80180CB8 0017DC18 D0 81 01 08 */ stfs f4, 0x108(r1) +/* 80180CBC 0017DC1C D0 61 01 0C */ stfs f3, 0x10c(r1) +/* 80180CC0 0017DC20 D0 41 01 10 */ stfs f2, 0x110(r1) +/* 80180CC4 0017DC24 D0 21 01 14 */ stfs f1, 0x114(r1) +/* 80180CC8 0017DC28 D0 01 01 18 */ stfs f0, 0x118(r1) +/* 80180CCC 0017DC2C 4B F9 AA 5D */ bl SetMotionState__13CPhysicsActorFRC12CMotionState +/* 80180CD0 0017DC30 7F A4 EB 78 */ mr r4, r29 +/* 80180CD4 0017DC34 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 80180CD8 0017DC38 4B F9 A9 9D */ bl GetMotionState__13CPhysicsActorCFv +/* 80180CDC 0017DC3C 80 61 00 B4 */ lwz r3, 0xb4(r1) +/* 80180CE0 0017DC40 80 01 00 B8 */ lwz r0, 0xb8(r1) +/* 80180CE4 0017DC44 90 7D 01 F4 */ stw r3, 0x1f4(r29) +/* 80180CE8 0017DC48 90 1D 01 F8 */ stw r0, 0x1f8(r29) +/* 80180CEC 0017DC4C 80 01 00 BC */ lwz r0, 0xbc(r1) +/* 80180CF0 0017DC50 90 1D 01 FC */ stw r0, 0x1fc(r29) +/* 80180CF4 0017DC54 80 61 00 C0 */ lwz r3, 0xc0(r1) +/* 80180CF8 0017DC58 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 80180CFC 0017DC5C 90 7D 02 00 */ stw r3, 0x200(r29) +/* 80180D00 0017DC60 90 1D 02 04 */ stw r0, 0x204(r29) +/* 80180D04 0017DC64 80 61 00 C8 */ lwz r3, 0xc8(r1) +/* 80180D08 0017DC68 80 01 00 CC */ lwz r0, 0xcc(r1) +/* 80180D0C 0017DC6C 90 7D 02 08 */ stw r3, 0x208(r29) +/* 80180D10 0017DC70 90 1D 02 0C */ stw r0, 0x20c(r29) +/* 80180D14 0017DC74 80 61 00 D0 */ lwz r3, 0xd0(r1) +/* 80180D18 0017DC78 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 80180D1C 0017DC7C 90 7D 02 10 */ stw r3, 0x210(r29) +/* 80180D20 0017DC80 90 1D 02 14 */ stw r0, 0x214(r29) +/* 80180D24 0017DC84 80 01 00 D8 */ lwz r0, 0xd8(r1) +/* 80180D28 0017DC88 90 1D 02 18 */ stw r0, 0x218(r29) +/* 80180D2C 0017DC8C 80 61 00 DC */ lwz r3, 0xdc(r1) +/* 80180D30 0017DC90 80 01 00 E0 */ lwz r0, 0xe0(r1) +/* 80180D34 0017DC94 90 7D 02 1C */ stw r3, 0x21c(r29) +/* 80180D38 0017DC98 90 1D 02 20 */ stw r0, 0x220(r29) +/* 80180D3C 0017DC9C 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 80180D40 0017DCA0 90 1D 02 24 */ stw r0, 0x224(r29) +/* 80180D44 0017DCA4 80 6D A4 60 */ lwz r3, lbl_805A9020@sda21(r13) +/* 80180D48 0017DCA8 38 03 00 01 */ addi r0, r3, 1 +/* 80180D4C 0017DCAC 90 0D A4 60 */ stw r0, lbl_805A9020@sda21(r13) +/* 80180D50 0017DCB0 48 00 01 00 */ b lbl_80180E50 +lbl_80180D54: +/* 80180D54 0017DCB4 80 CD A4 60 */ lwz r6, lbl_805A9020@sda21(r13) +/* 80180D58 0017DCB8 38 61 00 08 */ addi r3, r1, 8 +/* 80180D5C 0017DCBC 38 81 02 10 */ addi r4, r1, 0x210 +/* 80180D60 0017DCC0 38 AD 8E 90 */ addi r5, r13, lbl_805A7A50@sda21 +/* 80180D64 0017DCC4 38 06 00 01 */ addi r0, r6, 1 +/* 80180D68 0017DCC8 90 0D A4 60 */ stw r0, lbl_805A9020@sda21(r13) +/* 80180D6C 0017DCCC 4B E9 A7 19 */ bl __ml__FRC10CAxisAngleRCf +/* 80180D70 0017DCD0 C0 21 01 E8 */ lfs f1, 0x1e8(r1) +/* 80180D74 0017DCD4 C0 01 01 EC */ lfs f0, 0x1ec(r1) +/* 80180D78 0017DCD8 D0 21 00 80 */ stfs f1, 0x80(r1) +/* 80180D7C 0017DCDC C0 E1 01 F0 */ lfs f7, 0x1f0(r1) +/* 80180D80 0017DCE0 D0 01 00 84 */ stfs f0, 0x84(r1) +/* 80180D84 0017DCE4 C0 C1 01 F4 */ lfs f6, 0x1f4(r1) +/* 80180D88 0017DCE8 C0 A1 01 F8 */ lfs f5, 0x1f8(r1) +/* 80180D8C 0017DCEC C0 81 01 FC */ lfs f4, 0x1fc(r1) +/* 80180D90 0017DCF0 C0 61 02 00 */ lfs f3, 0x200(r1) +/* 80180D94 0017DCF4 C0 41 00 08 */ lfs f2, 8(r1) +/* 80180D98 0017DCF8 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 80180D9C 0017DCFC C0 01 00 10 */ lfs f0, 0x10(r1) +/* 80180DA0 0017DD00 D0 E1 00 88 */ stfs f7, 0x88(r1) +/* 80180DA4 0017DD04 C1 01 02 04 */ lfs f8, 0x204(r1) +/* 80180DA8 0017DD08 D0 C1 00 8C */ stfs f6, 0x8c(r1) +/* 80180DAC 0017DD0C C1 22 A2 C4 */ lfs f9, lbl_805ABFE4@sda21(r2) +/* 80180DB0 0017DD10 C0 E1 02 08 */ lfs f7, 0x208(r1) +/* 80180DB4 0017DD14 C0 C1 02 0C */ lfs f6, 0x20c(r1) +/* 80180DB8 0017DD18 ED 09 02 32 */ fmuls f8, f9, f8 +/* 80180DBC 0017DD1C 80 01 00 80 */ lwz r0, 0x80(r1) +/* 80180DC0 0017DD20 EC E9 01 F2 */ fmuls f7, f9, f7 +/* 80180DC4 0017DD24 D0 A1 00 90 */ stfs f5, 0x90(r1) +/* 80180DC8 0017DD28 EC A9 01 B2 */ fmuls f5, f9, f6 +/* 80180DCC 0017DD2C 80 61 00 84 */ lwz r3, 0x84(r1) +/* 80180DD0 0017DD30 90 1D 01 F4 */ stw r0, 0x1f4(r29) +/* 80180DD4 0017DD34 80 01 00 88 */ lwz r0, 0x88(r1) +/* 80180DD8 0017DD38 90 7D 01 F8 */ stw r3, 0x1f8(r29) +/* 80180DDC 0017DD3C 80 61 00 8C */ lwz r3, 0x8c(r1) +/* 80180DE0 0017DD40 90 1D 01 FC */ stw r0, 0x1fc(r29) +/* 80180DE4 0017DD44 80 01 00 90 */ lwz r0, 0x90(r1) +/* 80180DE8 0017DD48 D0 81 00 94 */ stfs f4, 0x94(r1) +/* 80180DEC 0017DD4C 90 7D 02 00 */ stw r3, 0x200(r29) +/* 80180DF0 0017DD50 80 61 00 94 */ lwz r3, 0x94(r1) +/* 80180DF4 0017DD54 D0 61 00 98 */ stfs f3, 0x98(r1) +/* 80180DF8 0017DD58 90 1D 02 04 */ stw r0, 0x204(r29) +/* 80180DFC 0017DD5C 80 01 00 98 */ lwz r0, 0x98(r1) +/* 80180E00 0017DD60 D1 01 00 9C */ stfs f8, 0x9c(r1) +/* 80180E04 0017DD64 90 7D 02 08 */ stw r3, 0x208(r29) +/* 80180E08 0017DD68 80 61 00 9C */ lwz r3, 0x9c(r1) +/* 80180E0C 0017DD6C D0 E1 00 A0 */ stfs f7, 0xa0(r1) +/* 80180E10 0017DD70 90 1D 02 0C */ stw r0, 0x20c(r29) +/* 80180E14 0017DD74 80 01 00 A0 */ lwz r0, 0xa0(r1) +/* 80180E18 0017DD78 D0 A1 00 A4 */ stfs f5, 0xa4(r1) +/* 80180E1C 0017DD7C 90 7D 02 10 */ stw r3, 0x210(r29) +/* 80180E20 0017DD80 80 61 00 A4 */ lwz r3, 0xa4(r1) +/* 80180E24 0017DD84 D0 41 00 A8 */ stfs f2, 0xa8(r1) +/* 80180E28 0017DD88 90 1D 02 14 */ stw r0, 0x214(r29) +/* 80180E2C 0017DD8C 80 01 00 A8 */ lwz r0, 0xa8(r1) +/* 80180E30 0017DD90 D0 21 00 AC */ stfs f1, 0xac(r1) +/* 80180E34 0017DD94 90 7D 02 18 */ stw r3, 0x218(r29) +/* 80180E38 0017DD98 80 61 00 AC */ lwz r3, 0xac(r1) +/* 80180E3C 0017DD9C D0 01 00 B0 */ stfs f0, 0xb0(r1) +/* 80180E40 0017DDA0 90 1D 02 1C */ stw r0, 0x21c(r29) +/* 80180E44 0017DDA4 80 01 00 B0 */ lwz r0, 0xb0(r1) +/* 80180E48 0017DDA8 90 7D 02 20 */ stw r3, 0x220(r29) +/* 80180E4C 0017DDAC 90 1D 02 24 */ stw r0, 0x224(r29) +lbl_80180E50: +/* 80180E50 0017DDB0 38 00 00 00 */ li r0, 0 +/* 80180E54 0017DDB4 98 01 00 48 */ stb r0, 0x48(r1) +/* 80180E58 0017DDB8 48 00 00 80 */ b lbl_80180ED8 +lbl_80180E5C: +/* 80180E5C 0017DDBC 7F A4 EB 78 */ mr r4, r29 +/* 80180E60 0017DDC0 38 61 00 4C */ addi r3, r1, 0x4c +/* 80180E64 0017DDC4 4B F9 A8 11 */ bl GetMotionState__13CPhysicsActorCFv +/* 80180E68 0017DDC8 80 81 00 4C */ lwz r4, 0x4c(r1) +/* 80180E6C 0017DDCC 38 00 00 00 */ li r0, 0 +/* 80180E70 0017DDD0 80 61 00 50 */ lwz r3, 0x50(r1) +/* 80180E74 0017DDD4 90 9D 01 F4 */ stw r4, 0x1f4(r29) +/* 80180E78 0017DDD8 90 7D 01 F8 */ stw r3, 0x1f8(r29) +/* 80180E7C 0017DDDC 80 61 00 54 */ lwz r3, 0x54(r1) +/* 80180E80 0017DDE0 90 7D 01 FC */ stw r3, 0x1fc(r29) +/* 80180E84 0017DDE4 80 81 00 58 */ lwz r4, 0x58(r1) +/* 80180E88 0017DDE8 80 61 00 5C */ lwz r3, 0x5c(r1) +/* 80180E8C 0017DDEC 90 9D 02 00 */ stw r4, 0x200(r29) +/* 80180E90 0017DDF0 90 7D 02 04 */ stw r3, 0x204(r29) +/* 80180E94 0017DDF4 80 81 00 60 */ lwz r4, 0x60(r1) +/* 80180E98 0017DDF8 80 61 00 64 */ lwz r3, 0x64(r1) +/* 80180E9C 0017DDFC 90 9D 02 08 */ stw r4, 0x208(r29) +/* 80180EA0 0017DE00 90 7D 02 0C */ stw r3, 0x20c(r29) +/* 80180EA4 0017DE04 80 81 00 68 */ lwz r4, 0x68(r1) +/* 80180EA8 0017DE08 80 61 00 6C */ lwz r3, 0x6c(r1) +/* 80180EAC 0017DE0C 90 9D 02 10 */ stw r4, 0x210(r29) +/* 80180EB0 0017DE10 90 7D 02 14 */ stw r3, 0x214(r29) +/* 80180EB4 0017DE14 80 61 00 70 */ lwz r3, 0x70(r1) +/* 80180EB8 0017DE18 90 7D 02 18 */ stw r3, 0x218(r29) +/* 80180EBC 0017DE1C 80 81 00 74 */ lwz r4, 0x74(r1) +/* 80180EC0 0017DE20 80 61 00 78 */ lwz r3, 0x78(r1) +/* 80180EC4 0017DE24 90 9D 02 1C */ stw r4, 0x21c(r29) +/* 80180EC8 0017DE28 90 7D 02 20 */ stw r3, 0x220(r29) +/* 80180ECC 0017DE2C 80 61 00 7C */ lwz r3, 0x7c(r1) +/* 80180ED0 0017DE30 90 7D 02 24 */ stw r3, 0x224(r29) +/* 80180ED4 0017DE34 90 1D 02 4C */ stw r0, 0x24c(r29) +lbl_80180ED8: +/* 80180ED8 0017DE38 E3 E1 02 A8 */ psq_l f31, 680(r1), 0, qr0 +/* 80180EDC 0017DE3C CB E1 02 A0 */ lfd f31, 0x2a0(r1) +/* 80180EE0 0017DE40 BB 21 02 84 */ lmw r25, 0x284(r1) +/* 80180EE4 0017DE44 80 01 02 B4 */ lwz r0, 0x2b4(r1) +/* 80180EE8 0017DE48 7C 08 03 A6 */ mtlr r0 +/* 80180EEC 0017DE4C 38 21 02 B0 */ addi r1, r1, 0x2b0 +/* 80180EF0 0017DE50 4E 80 00 20 */ blr + +.global "MoveAndCollide__14CGameCollisionFR13CStateManagerR13CPhysicsActorfRC16ICollisionFilterPCQ24rstl32reserved_vector<9TUniqueId,1024>" +"MoveAndCollide__14CGameCollisionFR13CStateManagerR13CPhysicsActorfRC16ICollisionFilterPCQ24rstl32reserved_vector<9TUniqueId,1024>": +/* 80180EF4 0017DE54 94 21 B5 10 */ stwu r1, -0x4af0(r1) +/* 80180EF8 0017DE58 7C 08 02 A6 */ mflr r0 +/* 80180EFC 0017DE5C 90 01 4A F4 */ stw r0, 0x4af4(r1) +/* 80180F00 0017DE60 38 00 4A E8 */ li r0, 0x4ae8 +/* 80180F04 0017DE64 DB E1 4A E0 */ stfd f31, 0x4ae0(r1) +/* 80180F08 0017DE68 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 +/* 80180F0C 0017DE6C 38 00 4A D8 */ li r0, 0x4ad8 +/* 80180F10 0017DE70 DB C1 4A D0 */ stfd f30, 0x4ad0(r1) +/* 80180F14 0017DE74 13 C1 00 0E */ psq_stx f30, r1, r0, 0, qr0 +/* 80180F18 0017DE78 38 00 4A C8 */ li r0, 0x4ac8 +/* 80180F1C 0017DE7C DB A1 4A C0 */ stfd f29, 0x4ac0(r1) +/* 80180F20 0017DE80 13 A1 00 0E */ psq_stx f29, r1, r0, 0, qr0 +/* 80180F24 0017DE84 38 00 4A B8 */ li r0, 0x4ab8 +/* 80180F28 0017DE88 DB 81 4A B0 */ stfd f28, 0x4ab0(r1) +/* 80180F2C 0017DE8C 13 81 00 0E */ psq_stx f28, r1, r0, 0, qr0 +/* 80180F30 0017DE90 38 00 4A A8 */ li r0, 0x4aa8 +/* 80180F34 0017DE94 DB 61 4A A0 */ stfd f27, 0x4aa0(r1) +/* 80180F38 0017DE98 13 61 00 0E */ psq_stx f27, r1, r0, 0, qr0 +/* 80180F3C 0017DE9C BE 81 4A 70 */ stmw r20, 0x4a70(r1) +/* 80180F40 0017DEA0 7C 9E 23 78 */ mr r30, r4 +/* 80180F44 0017DEA4 80 84 00 6C */ lwz r4, 0x6c(r4) +/* 80180F48 0017DEA8 81 1E 00 68 */ lwz r8, 0x68(r30) +/* 80180F4C 0017DEAC 38 E0 00 00 */ li r7, 0 +/* 80180F50 0017DEB0 38 00 00 01 */ li r0, 1 +/* 80180F54 0017DEB4 7C 7D 1B 78 */ mr r29, r3 +/* 80180F58 0017DEB8 7C 84 38 38 */ and r4, r4, r7 +/* 80180F5C 0017DEBC FF 80 08 90 */ fmr f28, f1 +/* 80180F60 0017DEC0 7D 00 00 38 */ and r0, r8, r0 +/* 80180F64 0017DEC4 7C BF 2B 78 */ mr r31, r5 +/* 80180F68 0017DEC8 7C 83 3A 78 */ xor r3, r4, r7 +/* 80180F6C 0017DECC 7C D6 33 78 */ mr r22, r6 +/* 80180F70 0017DED0 7C 00 3A 78 */ xor r0, r0, r7 +/* 80180F74 0017DED4 7C 60 03 79 */ or. r0, r3, r0 +/* 80180F78 0017DED8 3B 80 00 00 */ li r28, 0 +/* 80180F7C 0017DEDC 3B 60 00 00 */ li r27, 0 +/* 80180F80 0017DEE0 3B 00 00 00 */ li r24, 0 +/* 80180F84 0017DEE4 3B 40 00 00 */ li r26, 0 +/* 80180F88 0017DEE8 41 82 00 08 */ beq lbl_80180F90 +/* 80180F8C 0017DEEC 3B 00 00 01 */ li r24, 1 +lbl_80180F90: +/* 80180F90 0017DEF0 38 00 00 00 */ li r0, 0 +/* 80180F94 0017DEF4 FF E0 E0 90 */ fmr f31, f28 +/* 80180F98 0017DEF8 FC 20 E0 90 */ fmr f1, f28 +/* 80180F9C 0017DEFC D3 81 00 2C */ stfs f28, 0x2c(r1) +/* 80180FA0 0017DF00 7F C4 F3 78 */ mr r4, r30 +/* 80180FA4 0017DF04 38 61 02 B0 */ addi r3, r1, 0x2b0 +/* 80180FA8 0017DF08 D3 81 00 28 */ stfs f28, 0x28(r1) +/* 80180FAC 0017DF0C 90 01 3E 68 */ stw r0, 0x3e68(r1) +/* 80180FB0 0017DF10 4B F9 A8 59 */ bl PredictMotion_Internal__13CPhysicsActorCFf +/* 80180FB4 0017DF14 C1 81 02 B0 */ lfs f12, 0x2b0(r1) +/* 80180FB8 0017DF18 38 61 02 E4 */ addi r3, r1, 0x2e4 +/* 80180FBC 0017DF1C C1 61 02 B4 */ lfs f11, 0x2b4(r1) +/* 80180FC0 0017DF20 C1 41 02 B8 */ lfs f10, 0x2b8(r1) +/* 80180FC4 0017DF24 C1 21 02 BC */ lfs f9, 0x2bc(r1) +/* 80180FC8 0017DF28 C1 01 02 C0 */ lfs f8, 0x2c0(r1) +/* 80180FCC 0017DF2C C0 E1 02 C4 */ lfs f7, 0x2c4(r1) +/* 80180FD0 0017DF30 C0 C1 02 C8 */ lfs f6, 0x2c8(r1) +/* 80180FD4 0017DF34 C0 A1 02 CC */ lfs f5, 0x2cc(r1) +/* 80180FD8 0017DF38 C0 81 02 D0 */ lfs f4, 0x2d0(r1) +/* 80180FDC 0017DF3C C0 61 02 D4 */ lfs f3, 0x2d4(r1) +/* 80180FE0 0017DF40 C0 41 02 D8 */ lfs f2, 0x2d8(r1) +/* 80180FE4 0017DF44 C0 21 02 DC */ lfs f1, 0x2dc(r1) +/* 80180FE8 0017DF48 C0 01 02 E0 */ lfs f0, 0x2e0(r1) +/* 80180FEC 0017DF4C D1 81 02 E4 */ stfs f12, 0x2e4(r1) +/* 80180FF0 0017DF50 D1 61 02 E8 */ stfs f11, 0x2e8(r1) +/* 80180FF4 0017DF54 D1 41 02 EC */ stfs f10, 0x2ec(r1) +/* 80180FF8 0017DF58 D1 21 02 F0 */ stfs f9, 0x2f0(r1) +/* 80180FFC 0017DF5C D1 01 02 F4 */ stfs f8, 0x2f4(r1) +/* 80181000 0017DF60 D0 E1 02 F8 */ stfs f7, 0x2f8(r1) +/* 80181004 0017DF64 D0 C1 02 FC */ stfs f6, 0x2fc(r1) +/* 80181008 0017DF68 D0 A1 03 00 */ stfs f5, 0x300(r1) +/* 8018100C 0017DF6C D0 81 03 04 */ stfs f4, 0x304(r1) +/* 80181010 0017DF70 D0 61 03 08 */ stfs f3, 0x308(r1) +/* 80181014 0017DF74 D0 41 03 0C */ stfs f2, 0x30c(r1) +/* 80181018 0017DF78 D0 21 03 10 */ stfs f1, 0x310(r1) +/* 8018101C 0017DF7C D0 01 03 14 */ stfs f0, 0x314(r1) +/* 80181020 0017DF80 48 19 38 99 */ bl Magnitude__9CVector3fCFv +/* 80181024 0017DF84 FF C0 08 90 */ fmr f30, f1 +/* 80181028 0017DF88 7F C3 F3 78 */ mr r3, r30 +/* 8018102C 0017DF8C 4B F9 94 9D */ bl GetCollisionAccuracyModifier__13CPhysicsActorCFv +/* 80181030 0017DF90 C0 02 A2 C8 */ lfs f0, lbl_805ABFE8@sda21(r2) +/* 80181034 0017DF94 7F C3 F3 78 */ mr r3, r30 +/* 80181038 0017DF98 EC 00 08 24 */ fdivs f0, f0, f1 +/* 8018103C 0017DF9C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80181040 0017DFA0 4B F9 94 89 */ bl GetCollisionAccuracyModifier__13CPhysicsActorCFv +/* 80181044 0017DFA4 C0 42 A2 CC */ lfs f2, lbl_805ABFEC@sda21(r2) +/* 80181048 0017DFA8 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 8018104C 0017DFAC EC 22 00 72 */ fmuls f1, f2, f1 +/* 80181050 0017DFB0 EC 3E 08 24 */ fdivs f1, f30, f1 +/* 80181054 0017DFB4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80181058 0017DFB8 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 8018105C 0017DFBC 40 80 00 0C */ bge lbl_80181068 +/* 80181060 0017DFC0 38 61 00 18 */ addi r3, r1, 0x18 +/* 80181064 0017DFC4 48 00 00 08 */ b lbl_8018106C +lbl_80181068: +/* 80181068 0017DFC8 38 61 00 1C */ addi r3, r1, 0x1c +lbl_8018106C: +/* 8018106C 0017DFCC C0 03 00 00 */ lfs f0, 0(r3) +/* 80181070 0017DFD0 7F C3 F3 78 */ mr r3, r30 +/* 80181074 0017DFD4 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80181078 0017DFD8 4B F9 94 51 */ bl GetCollisionAccuracyModifier__13CPhysicsActorCFv +/* 8018107C 0017DFDC C0 02 A2 D0 */ lfs f0, lbl_805ABFF0@sda21(r2) +/* 80181080 0017DFE0 7F C3 F3 78 */ mr r3, r30 +/* 80181084 0017DFE4 EF A0 08 24 */ fdivs f29, f0, f1 +/* 80181088 0017DFE8 4B ED 28 35 */ bl GetMaterialFilter__6CActorCFv +/* 8018108C 0017DFEC 38 00 00 00 */ li r0, 0 +/* 80181090 0017DFF0 FC 20 E0 90 */ fmr f1, f28 +/* 80181094 0017DFF4 90 01 36 64 */ stw r0, 0x3664(r1) +/* 80181098 0017DFF8 7C 79 1B 78 */ mr r25, r3 +/* 8018109C 0017DFFC 7F C4 F3 78 */ mr r4, r30 +/* 801810A0 0017E000 38 61 00 D4 */ addi r3, r1, 0xd4 +/* 801810A4 0017E004 4B F9 96 11 */ bl GetMotionVolume__13CPhysicsActorCFf +/* 801810A8 0017E008 C0 C1 00 D4 */ lfs f6, 0xd4(r1) +/* 801810AC 0017E00C 28 16 00 00 */ cmplwi r22, 0 +/* 801810B0 0017E010 C0 A1 00 D8 */ lfs f5, 0xd8(r1) +/* 801810B4 0017E014 C0 81 00 DC */ lfs f4, 0xdc(r1) +/* 801810B8 0017E018 C0 61 00 E0 */ lfs f3, 0xe0(r1) +/* 801810BC 0017E01C C0 41 00 E4 */ lfs f2, 0xe4(r1) +/* 801810C0 0017E020 C0 21 00 E8 */ lfs f1, 0xe8(r1) +/* 801810C4 0017E024 D0 C1 01 04 */ stfs f6, 0x104(r1) +/* 801810C8 0017E028 D0 A1 01 08 */ stfs f5, 0x108(r1) +/* 801810CC 0017E02C D0 81 01 0C */ stfs f4, 0x10c(r1) +/* 801810D0 0017E030 D0 61 01 10 */ stfs f3, 0x110(r1) +/* 801810D4 0017E034 D0 41 01 14 */ stfs f2, 0x114(r1) +/* 801810D8 0017E038 D0 21 01 18 */ stfs f1, 0x118(r1) +/* 801810DC 0017E03C 41 82 00 AC */ beq lbl_80181188 +/* 801810E0 0017E040 38 01 36 64 */ addi r0, r1, 0x3664 +/* 801810E4 0017E044 7C 00 B0 40 */ cmplw r0, r22 +/* 801810E8 0017E048 41 82 00 F8 */ beq lbl_801811E0 +/* 801810EC 0017E04C 80 A1 36 64 */ lwz r5, 0x3664(r1) +/* 801810F0 0017E050 38 C1 36 68 */ addi r6, r1, 0x3668 +/* 801810F4 0017E054 38 60 00 00 */ li r3, 0 +/* 801810F8 0017E058 2C 05 00 00 */ cmpwi r5, 0 +/* 801810FC 0017E05C 40 81 00 40 */ ble lbl_8018113C +/* 80181100 0017E060 2C 05 00 08 */ cmpwi r5, 8 +/* 80181104 0017E064 38 85 FF F8 */ addi r4, r5, -8 +/* 80181108 0017E068 40 81 00 20 */ ble lbl_80181128 +/* 8018110C 0017E06C 38 04 00 07 */ addi r0, r4, 7 +/* 80181110 0017E070 54 00 E8 FE */ srwi r0, r0, 3 +/* 80181114 0017E074 7C 09 03 A6 */ mtctr r0 +/* 80181118 0017E078 2C 04 00 00 */ cmpwi r4, 0 +/* 8018111C 0017E07C 40 81 00 0C */ ble lbl_80181128 +lbl_80181120: +/* 80181120 0017E080 38 63 00 08 */ addi r3, r3, 8 +/* 80181124 0017E084 42 00 FF FC */ bdnz lbl_80181120 +lbl_80181128: +/* 80181128 0017E088 7C 03 28 50 */ subf r0, r3, r5 +/* 8018112C 0017E08C 7C 09 03 A6 */ mtctr r0 +/* 80181130 0017E090 7C 03 28 00 */ cmpw r3, r5 +/* 80181134 0017E094 40 80 00 08 */ bge lbl_8018113C +lbl_80181138: +/* 80181138 0017E098 42 00 00 00 */ bdnz lbl_80181138 +lbl_8018113C: +/* 8018113C 0017E09C 80 16 00 00 */ lwz r0, 0(r22) +/* 80181140 0017E0A0 38 60 00 00 */ li r3, 0 +/* 80181144 0017E0A4 90 61 36 64 */ stw r3, 0x3664(r1) +/* 80181148 0017E0A8 38 76 00 04 */ addi r3, r22, 4 +/* 8018114C 0017E0AC 54 00 08 3C */ slwi r0, r0, 1 +/* 80181150 0017E0B0 7C 96 02 14 */ add r4, r22, r0 +/* 80181154 0017E0B4 38 84 00 04 */ addi r4, r4, 4 +/* 80181158 0017E0B8 48 00 00 1C */ b lbl_80181174 +lbl_8018115C: +/* 8018115C 0017E0BC 28 06 00 00 */ cmplwi r6, 0 +/* 80181160 0017E0C0 41 82 00 0C */ beq lbl_8018116C +/* 80181164 0017E0C4 A0 03 00 00 */ lhz r0, 0(r3) +/* 80181168 0017E0C8 B0 06 00 00 */ sth r0, 0(r6) +lbl_8018116C: +/* 8018116C 0017E0CC 38 C6 00 02 */ addi r6, r6, 2 +/* 80181170 0017E0D0 38 63 00 02 */ addi r3, r3, 2 +lbl_80181174: +/* 80181174 0017E0D4 7C 03 20 40 */ cmplw r3, r4 +/* 80181178 0017E0D8 40 82 FF E4 */ bne lbl_8018115C +/* 8018117C 0017E0DC 80 16 00 00 */ lwz r0, 0(r22) +/* 80181180 0017E0E0 90 01 36 64 */ stw r0, 0x3664(r1) +/* 80181184 0017E0E4 48 00 00 5C */ b lbl_801811E0 +lbl_80181188: +/* 80181188 0017E0E8 C0 02 A2 D4 */ lfs f0, lbl_805ABFF4@sda21(r2) +/* 8018118C 0017E0EC 38 61 00 BC */ addi r3, r1, 0xbc +/* 80181190 0017E0F0 38 81 00 74 */ addi r4, r1, 0x74 +/* 80181194 0017E0F4 38 A1 00 68 */ addi r5, r1, 0x68 +/* 80181198 0017E0F8 EC 42 00 2A */ fadds f2, f2, f0 +/* 8018119C 0017E0FC EC E1 00 2A */ fadds f7, f1, f0 +/* 801811A0 0017E100 EC 23 00 2A */ fadds f1, f3, f0 +/* 801811A4 0017E104 EC 65 00 28 */ fsubs f3, f5, f0 +/* 801811A8 0017E108 D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 801811AC 0017E10C EC 44 00 28 */ fsubs f2, f4, f0 +/* 801811B0 0017E110 EC 06 00 28 */ fsubs f0, f6, f0 +/* 801811B4 0017E114 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 801811B8 0017E118 D0 E1 00 70 */ stfs f7, 0x70(r1) +/* 801811BC 0017E11C D0 01 00 74 */ stfs f0, 0x74(r1) +/* 801811C0 0017E120 D0 61 00 78 */ stfs f3, 0x78(r1) +/* 801811C4 0017E124 D0 41 00 7C */ stfs f2, 0x7c(r1) +/* 801811C8 0017E128 48 1B 73 41 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801811CC 0017E12C 7C 66 1B 78 */ mr r6, r3 +/* 801811D0 0017E130 7F A3 EB 78 */ mr r3, r29 +/* 801811D4 0017E134 7F C5 F3 78 */ mr r5, r30 +/* 801811D8 0017E138 38 81 36 64 */ addi r4, r1, 0x3664 +/* 801811DC 0017E13C 4B EC B5 21 */ bl "BuildColliderList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CActorRC6CAABox" +lbl_801811E0: +/* 801811E0 0017E140 38 61 1B 20 */ addi r3, r1, 0x1b20 +/* 801811E4 0017E144 38 81 01 04 */ addi r4, r1, 0x104 +/* 801811E8 0017E148 48 12 28 A9 */ bl __ct__19CAreaCollisionCacheFRC6CAABox +/* 801811EC 0017E14C 7F C3 F3 78 */ mr r3, r30 +/* 801811F0 0017E150 3A E0 00 01 */ li r23, 1 +/* 801811F4 0017E154 81 9E 00 00 */ lwz r12, 0(r30) +/* 801811F8 0017E158 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 801811FC 0017E15C 7D 89 03 A6 */ mtctr r12 +/* 80181200 0017E160 4E 80 04 21 */ bctrl +/* 80181204 0017E164 81 83 00 00 */ lwz r12, 0(r3) +/* 80181208 0017E168 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 8018120C 0017E16C 7D 89 03 A6 */ mtctr r12 +/* 80181210 0017E170 4E 80 04 21 */ bctrl +/* 80181214 0017E174 3C 03 B0 BE */ addis r0, r3, 0xb0be +/* 80181218 0017E178 28 00 54 47 */ cmplwi r0, 0x5447 +/* 8018121C 0017E17C 41 82 00 30 */ beq lbl_8018124C +/* 80181220 0017E180 80 79 00 08 */ lwz r3, 8(r25) +/* 80181224 0017E184 38 00 00 40 */ li r0, 0x40 +/* 80181228 0017E188 80 B9 00 0C */ lwz r5, 0xc(r25) +/* 8018122C 0017E18C 38 80 00 00 */ li r4, 0 +/* 80181230 0017E190 7C 60 00 38 */ and r0, r3, r0 +/* 80181234 0017E194 7C A3 20 38 */ and r3, r5, r4 +/* 80181238 0017E198 7C 63 22 78 */ xor r3, r3, r4 +/* 8018123C 0017E19C 7C 00 22 78 */ xor r0, r0, r4 +/* 80181240 0017E1A0 7C 60 03 79 */ or. r0, r3, r0 +/* 80181244 0017E1A4 40 82 00 08 */ bne lbl_8018124C +/* 80181248 0017E1A8 7C 97 23 78 */ mr r23, r4 +lbl_8018124C: +/* 8018124C 0017E1AC 56 E0 06 3F */ clrlwi. r0, r23, 0x18 +/* 80181250 0017E1B0 40 82 01 F0 */ bne lbl_80181440 +/* 80181254 0017E1B4 7F A3 EB 78 */ mr r3, r29 +/* 80181258 0017E1B8 38 81 1B 20 */ addi r4, r1, 0x1b20 +/* 8018125C 0017E1BC 48 00 34 69 */ bl BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache +/* 80181260 0017E1C0 7F C4 F3 78 */ mr r4, r30 +/* 80181264 0017E1C4 38 61 02 80 */ addi r3, r1, 0x280 +/* 80181268 0017E1C8 81 9E 00 00 */ lwz r12, 0(r30) +/* 8018126C 0017E1CC 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 80181270 0017E1D0 7D 89 03 A6 */ mtctr r12 +/* 80181274 0017E1D4 4E 80 04 21 */ bctrl +/* 80181278 0017E1D8 7F C3 F3 78 */ mr r3, r30 +/* 8018127C 0017E1DC 81 9E 00 00 */ lwz r12, 0(r30) +/* 80181280 0017E1E0 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80181284 0017E1E4 7D 89 03 A6 */ mtctr r12 +/* 80181288 0017E1E8 4E 80 04 21 */ bctrl +/* 8018128C 0017E1EC 7C 64 1B 78 */ mr r4, r3 +/* 80181290 0017E1F0 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 80181294 0017E1F4 81 84 00 00 */ lwz r12, 0(r4) +/* 80181298 0017E1F8 38 A1 02 80 */ addi r5, r1, 0x280 +/* 8018129C 0017E1FC 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801812A0 0017E200 7D 89 03 A6 */ mtctr r12 +/* 801812A4 0017E204 4E 80 04 21 */ bctrl +/* 801812A8 0017E208 C0 A1 00 A4 */ lfs f5, 0xa4(r1) +/* 801812AC 0017E20C 38 61 00 5C */ addi r3, r1, 0x5c +/* 801812B0 0017E210 C0 81 00 A8 */ lfs f4, 0xa8(r1) +/* 801812B4 0017E214 38 81 00 EC */ addi r4, r1, 0xec +/* 801812B8 0017E218 C0 61 00 AC */ lfs f3, 0xac(r1) +/* 801812BC 0017E21C C0 41 00 B0 */ lfs f2, 0xb0(r1) +/* 801812C0 0017E220 C0 21 00 B4 */ lfs f1, 0xb4(r1) +/* 801812C4 0017E224 C0 01 00 B8 */ lfs f0, 0xb8(r1) +/* 801812C8 0017E228 D0 A1 00 EC */ stfs f5, 0xec(r1) +/* 801812CC 0017E22C D0 81 00 F0 */ stfs f4, 0xf0(r1) +/* 801812D0 0017E230 D0 61 00 F4 */ stfs f3, 0xf4(r1) +/* 801812D4 0017E234 D0 41 00 F8 */ stfs f2, 0xf8(r1) +/* 801812D8 0017E238 D0 21 00 FC */ stfs f1, 0xfc(r1) +/* 801812DC 0017E23C D0 01 01 00 */ stfs f0, 0x100(r1) +/* 801812E0 0017E240 48 1B 63 2D */ bl GetCenterPoint__6CAABoxCFv +/* 801812E4 0017E244 C0 41 00 5C */ lfs f2, 0x5c(r1) +/* 801812E8 0017E248 7F C3 F3 78 */ mr r3, r30 +/* 801812EC 0017E24C C0 21 00 60 */ lfs f1, 0x60(r1) +/* 801812F0 0017E250 C0 01 00 64 */ lfs f0, 0x64(r1) +/* 801812F4 0017E254 D0 41 00 98 */ stfs f2, 0x98(r1) +/* 801812F8 0017E258 D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 801812FC 0017E25C D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 80181300 0017E260 81 9E 00 00 */ lwz r12, 0(r30) +/* 80181304 0017E264 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80181308 0017E268 7D 89 03 A6 */ mtctr r12 +/* 8018130C 0017E26C 4E 80 04 21 */ bctrl +/* 80181310 0017E270 48 00 13 BD */ bl GetMinExtentForCollisionPrimitive__14CGameCollisionFRC19CCollisionPrimitive +/* 80181314 0017E274 C0 02 A2 C4 */ lfs f0, lbl_805ABFE4@sda21(r2) +/* 80181318 0017E278 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8018131C 0017E27C FC 1E 00 40 */ fcmpo cr0, f30, f0 +/* 80181320 0017E280 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 80181324 0017E284 40 81 01 1C */ ble lbl_80181440 +/* 80181328 0017E288 C0 02 A2 D4 */ lfs f0, lbl_805ABFF4@sda21(r2) +/* 8018132C 0017E28C FC 20 F0 90 */ fmr f1, f30 +/* 80181330 0017E290 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80181334 0017E294 7F A4 EB 78 */ mr r4, r29 +/* 80181338 0017E298 EC 80 F0 24 */ fdivs f4, f0, f30 +/* 8018133C 0017E29C C0 61 02 E8 */ lfs f3, 0x2e8(r1) +/* 80181340 0017E2A0 C0 41 02 EC */ lfs f2, 0x2ec(r1) +/* 80181344 0017E2A4 C0 01 02 E4 */ lfs f0, 0x2e4(r1) +/* 80181348 0017E2A8 7F 28 CB 78 */ mr r8, r25 +/* 8018134C 0017E2AC B0 01 00 14 */ sth r0, 0x14(r1) +/* 80181350 0017E2B0 EC 64 00 F2 */ fmuls f3, f4, f3 +/* 80181354 0017E2B4 38 61 02 50 */ addi r3, r1, 0x250 +/* 80181358 0017E2B8 EC 44 00 B2 */ fmuls f2, f4, f2 +/* 8018135C 0017E2BC 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80181360 0017E2C0 EC 04 00 32 */ fmuls f0, f4, f0 +/* 80181364 0017E2C4 38 C1 00 98 */ addi r6, r1, 0x98 +/* 80181368 0017E2C8 D0 61 00 90 */ stfs f3, 0x90(r1) +/* 8018136C 0017E2CC 38 E1 00 8C */ addi r7, r1, 0x8c +/* 80181370 0017E2D0 39 21 36 64 */ addi r9, r1, 0x3664 +/* 80181374 0017E2D4 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 80181378 0017E2D8 D0 41 00 94 */ stfs f2, 0x94(r1) +/* 8018137C 0017E2DC 4B EC BC 49 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 80181380 0017E2E0 88 01 02 70 */ lbz r0, 0x270(r1) +/* 80181384 0017E2E4 C0 01 02 50 */ lfs f0, 0x250(r1) +/* 80181388 0017E2E8 28 00 00 00 */ cmplwi r0, 0 +/* 8018138C 0017E2EC 41 82 00 B4 */ beq lbl_80181440 +/* 80181390 0017E2F0 EC 00 F0 24 */ fdivs f0, f0, f30 +/* 80181394 0017E2F4 7F C4 F3 78 */ mr r4, r30 +/* 80181398 0017E2F8 38 61 02 18 */ addi r3, r1, 0x218 +/* 8018139C 0017E2FC EF FC 00 32 */ fmuls f31, f28, f0 +/* 801813A0 0017E300 FC 20 F8 90 */ fmr f1, f31 +/* 801813A4 0017E304 4B F9 A4 65 */ bl PredictMotion_Internal__13CPhysicsActorCFf +/* 801813A8 0017E308 EC 3C F0 24 */ fdivs f1, f28, f30 +/* 801813AC 0017E30C C0 41 00 20 */ lfs f2, 0x20(r1) +/* 801813B0 0017E310 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 801813B4 0017E314 82 A1 02 18 */ lwz r21, 0x218(r1) +/* 801813B8 0017E318 82 81 02 1C */ lwz r20, 0x21c(r1) +/* 801813BC 0017E31C 81 81 02 20 */ lwz r12, 0x220(r1) +/* 801813C0 0017E320 EC 22 00 72 */ fmuls f1, f2, f1 +/* 801813C4 0017E324 81 61 02 24 */ lwz r11, 0x224(r1) +/* 801813C8 0017E328 81 41 02 28 */ lwz r10, 0x228(r1) +/* 801813CC 0017E32C FC 00 10 40 */ fcmpo cr0, f0, f2 +/* 801813D0 0017E330 81 21 02 2C */ lwz r9, 0x22c(r1) +/* 801813D4 0017E334 81 01 02 30 */ lwz r8, 0x230(r1) +/* 801813D8 0017E338 80 E1 02 34 */ lwz r7, 0x234(r1) +/* 801813DC 0017E33C 80 C1 02 38 */ lwz r6, 0x238(r1) +/* 801813E0 0017E340 80 A1 02 3C */ lwz r5, 0x23c(r1) +/* 801813E4 0017E344 80 81 02 40 */ lwz r4, 0x240(r1) +/* 801813E8 0017E348 80 61 02 44 */ lwz r3, 0x244(r1) +/* 801813EC 0017E34C 80 01 02 48 */ lwz r0, 0x248(r1) +/* 801813F0 0017E350 92 A1 02 E4 */ stw r21, 0x2e4(r1) +/* 801813F4 0017E354 92 81 02 E8 */ stw r20, 0x2e8(r1) +/* 801813F8 0017E358 91 81 02 EC */ stw r12, 0x2ec(r1) +/* 801813FC 0017E35C 91 61 02 F0 */ stw r11, 0x2f0(r1) +/* 80181400 0017E360 91 41 02 F4 */ stw r10, 0x2f4(r1) +/* 80181404 0017E364 91 21 02 F8 */ stw r9, 0x2f8(r1) +/* 80181408 0017E368 91 01 02 FC */ stw r8, 0x2fc(r1) +/* 8018140C 0017E36C 90 E1 03 00 */ stw r7, 0x300(r1) +/* 80181410 0017E370 90 C1 03 04 */ stw r6, 0x304(r1) +/* 80181414 0017E374 90 A1 03 08 */ stw r5, 0x308(r1) +/* 80181418 0017E378 90 81 03 0C */ stw r4, 0x30c(r1) +/* 8018141C 0017E37C 90 61 03 10 */ stw r3, 0x310(r1) +/* 80181420 0017E380 90 01 03 14 */ stw r0, 0x314(r1) +/* 80181424 0017E384 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 80181428 0017E388 40 80 00 0C */ bge lbl_80181434 +/* 8018142C 0017E38C 38 61 00 24 */ addi r3, r1, 0x24 +/* 80181430 0017E390 48 00 00 08 */ b lbl_80181438 +lbl_80181434: +/* 80181434 0017E394 38 61 00 20 */ addi r3, r1, 0x20 +lbl_80181438: +/* 80181438 0017E398 C0 03 00 00 */ lfs f0, 0(r3) +/* 8018143C 0017E39C D0 01 00 24 */ stfs f0, 0x24(r1) +lbl_80181440: +/* 80181440 0017E3A0 FF 60 F8 90 */ fmr f27, f31 +/* 80181444 0017E3A4 C3 C2 A2 A8 */ lfs f30, lbl_805ABFC8@sda21(r2) +/* 80181448 0017E3A8 3A E1 01 AC */ addi r23, r1, 0x1ac +/* 8018144C 0017E3AC 3A C0 00 01 */ li r22, 1 +/* 80181450 0017E3B0 48 00 05 48 */ b lbl_80181998 +lbl_80181454: +/* 80181454 0017E3B4 7F C3 F3 78 */ mr r3, r30 +/* 80181458 0017E3B8 38 81 02 E4 */ addi r4, r1, 0x2e4 +/* 8018145C 0017E3BC 4B F9 95 DD */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f +/* 80181460 0017E3C0 7F C4 F3 78 */ mr r4, r30 +/* 80181464 0017E3C4 38 61 01 E8 */ addi r3, r1, 0x1e8 +/* 80181468 0017E3C8 81 9E 00 00 */ lwz r12, 0(r30) +/* 8018146C 0017E3CC 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 80181470 0017E3D0 7D 89 03 A6 */ mtctr r12 +/* 80181474 0017E3D4 4E 80 04 21 */ bctrl +/* 80181478 0017E3D8 7F C3 F3 78 */ mr r3, r30 +/* 8018147C 0017E3DC 81 9E 00 00 */ lwz r12, 0(r30) +/* 80181480 0017E3E0 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80181484 0017E3E4 7D 89 03 A6 */ mtctr r12 +/* 80181488 0017E3E8 4E 80 04 21 */ bctrl +/* 8018148C 0017E3EC 7C 65 1B 78 */ mr r5, r3 +/* 80181490 0017E3F0 7F A3 EB 78 */ mr r3, r29 +/* 80181494 0017E3F4 7F 27 CB 78 */ mr r7, r25 +/* 80181498 0017E3F8 38 81 1B 20 */ addi r4, r1, 0x1b20 +/* 8018149C 0017E3FC 38 C1 01 E8 */ addi r6, r1, 0x1e8 +/* 801814A0 0017E400 39 01 36 64 */ addi r8, r1, 0x3664 +/* 801814A4 0017E404 48 00 30 C1 */ bl "DetectCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 801814A8 0017E408 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801814AC 0017E40C 41 82 03 F0 */ beq lbl_8018189C +/* 801814B0 0017E410 38 61 02 E4 */ addi r3, r1, 0x2e4 +/* 801814B4 0017E414 3B 80 00 01 */ li r28, 1 +/* 801814B8 0017E418 48 19 34 01 */ bl Magnitude__9CVector3fCFv +/* 801814BC 0017E41C C0 01 00 24 */ lfs f0, 0x24(r1) +/* 801814C0 0017E420 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801814C4 0017E424 40 80 03 C8 */ bge lbl_8018188C +/* 801814C8 0017E428 80 A1 3E 68 */ lwz r5, 0x3e68(r1) +/* 801814CC 0017E42C 3B 60 00 01 */ li r27, 1 +/* 801814D0 0017E430 38 60 00 00 */ li r3, 0 +/* 801814D4 0017E434 2C 05 00 00 */ cmpwi r5, 0 +/* 801814D8 0017E438 40 81 00 44 */ ble lbl_8018151C +/* 801814DC 0017E43C 2C 05 00 08 */ cmpwi r5, 8 +/* 801814E0 0017E440 38 85 FF F8 */ addi r4, r5, -8 +/* 801814E4 0017E444 40 81 00 20 */ ble lbl_80181504 +/* 801814E8 0017E448 38 04 00 07 */ addi r0, r4, 7 +/* 801814EC 0017E44C 54 00 E8 FE */ srwi r0, r0, 3 +/* 801814F0 0017E450 7C 09 03 A6 */ mtctr r0 +/* 801814F4 0017E454 2C 04 00 00 */ cmpwi r4, 0 +/* 801814F8 0017E458 40 81 00 0C */ ble lbl_80181504 +lbl_801814FC: +/* 801814FC 0017E45C 38 63 00 08 */ addi r3, r3, 8 +/* 80181500 0017E460 42 00 FF FC */ bdnz lbl_801814FC +lbl_80181504: +/* 80181504 0017E464 7C 03 28 50 */ subf r0, r3, r5 +/* 80181508 0017E468 7C 09 03 A6 */ mtctr r0 +/* 8018150C 0017E46C 7C 03 28 00 */ cmpw r3, r5 +/* 80181510 0017E470 40 80 00 0C */ bge lbl_8018151C +lbl_80181514: +/* 80181514 0017E474 38 63 00 01 */ addi r3, r3, 1 +/* 80181518 0017E478 42 00 FF FC */ bdnz lbl_80181514 +lbl_8018151C: +/* 8018151C 0017E47C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80181520 0017E480 38 60 00 00 */ li r3, 0 +/* 80181524 0017E484 90 61 3E 68 */ stw r3, 0x3e68(r1) +/* 80181528 0017E488 7F C4 F3 78 */ mr r4, r30 +/* 8018152C 0017E48C 38 61 01 B8 */ addi r3, r1, 0x1b8 +/* 80181530 0017E490 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80181534 0017E494 81 9E 00 00 */ lwz r12, 0(r30) +/* 80181538 0017E498 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 8018153C 0017E49C 7D 89 03 A6 */ mtctr r12 +/* 80181540 0017E4A0 4E 80 04 21 */ bctrl +/* 80181544 0017E4A4 7F C3 F3 78 */ mr r3, r30 +/* 80181548 0017E4A8 81 9E 00 00 */ lwz r12, 0(r30) +/* 8018154C 0017E4AC 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80181550 0017E4B0 7D 89 03 A6 */ mtctr r12 +/* 80181554 0017E4B4 4E 80 04 21 */ bctrl +/* 80181558 0017E4B8 7C 65 1B 78 */ mr r5, r3 +/* 8018155C 0017E4BC 7F A3 EB 78 */ mr r3, r29 +/* 80181560 0017E4C0 7F 27 CB 78 */ mr r7, r25 +/* 80181564 0017E4C4 38 81 1B 20 */ addi r4, r1, 0x1b20 +/* 80181568 0017E4C8 38 C1 01 B8 */ addi r6, r1, 0x1b8 +/* 8018156C 0017E4CC 39 01 36 64 */ addi r8, r1, 0x3664 +/* 80181570 0017E4D0 39 21 00 10 */ addi r9, r1, 0x10 +/* 80181574 0017E4D4 39 41 3E 68 */ addi r10, r1, 0x3e68 +/* 80181578 0017E4D8 48 00 2E 6D */ bl "DetectCollision_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>R9TUniqueIdR18CCollisionInfoList" +/* 8018157C 0017E4DC A0 01 00 10 */ lhz r0, 0x10(r1) +/* 80181580 0017E4E0 7F A3 EB 78 */ mr r3, r29 +/* 80181584 0017E4E4 38 81 00 0C */ addi r4, r1, 0xc +/* 80181588 0017E4E8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8018158C 0017E4EC 4B EC AF E9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80181590 0017E4F0 7C 64 1B 78 */ mr r4, r3 +/* 80181594 0017E4F4 38 61 00 30 */ addi r3, r1, 0x30 +/* 80181598 0017E4F8 4B F2 B1 4D */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" +/* 8018159C 0017E4FC 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801815A0 0017E500 82 C3 00 04 */ lwz r22, 4(r3) +/* 801815A4 0017E504 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 801815A8 0017E508 7F C3 F3 78 */ mr r3, r30 +/* 801815AC 0017E50C 4B F9 94 8D */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f +/* 801815B0 0017E510 38 00 00 00 */ li r0, 0 +/* 801815B4 0017E514 7F C4 F3 78 */ mr r4, r30 +/* 801815B8 0017E518 90 01 0F 1C */ stw r0, 0xf1c(r1) +/* 801815BC 0017E51C 7E C5 B3 78 */ mr r5, r22 +/* 801815C0 0017E520 38 61 00 50 */ addi r3, r1, 0x50 +/* 801815C4 0017E524 90 01 03 18 */ stw r0, 0x318(r1) +/* 801815C8 0017E528 4B FF ED 45 */ bl GetActorRelativeVelocities__14CGameCollisionFPC13CPhysicsActorPC13CPhysicsActor +/* 801815CC 0017E52C C0 41 00 50 */ lfs f2, 0x50(r1) +/* 801815D0 0017E530 38 61 00 80 */ addi r3, r1, 0x80 +/* 801815D4 0017E534 C0 21 00 54 */ lfs f1, 0x54(r1) +/* 801815D8 0017E538 38 81 3E 68 */ addi r4, r1, 0x3e68 +/* 801815DC 0017E53C C0 01 00 58 */ lfs f0, 0x58(r1) +/* 801815E0 0017E540 38 A1 03 18 */ addi r5, r1, 0x318 +/* 801815E4 0017E544 D0 41 00 80 */ stfs f2, 0x80(r1) +/* 801815E8 0017E548 D0 21 00 84 */ stfs f1, 0x84(r1) +/* 801815EC 0017E54C D0 01 00 88 */ stfs f0, 0x88(r1) +/* 801815F0 0017E550 48 15 0D 59 */ bl FilterOutBackfaces__13CollisionUtilFRC9CVector3fRC18CCollisionInfoListR18CCollisionInfoList +/* 801815F4 0017E554 80 01 03 18 */ lwz r0, 0x318(r1) +/* 801815F8 0017E558 2C 00 00 00 */ cmpwi r0, 0 +/* 801815FC 0017E55C 40 81 01 5C */ ble lbl_80181758 +/* 80181600 0017E560 7F E3 FB 78 */ mr r3, r31 +/* 80181604 0017E564 38 81 03 18 */ addi r4, r1, 0x318 +/* 80181608 0017E568 81 9F 00 00 */ lwz r12, 0(r31) +/* 8018160C 0017E56C 38 A1 0F 1C */ addi r5, r1, 0xf1c +/* 80181610 0017E570 81 8C 00 08 */ lwz r12, 8(r12) +/* 80181614 0017E574 7D 89 03 A6 */ mtctr r12 +/* 80181618 0017E578 4E 80 04 21 */ bctrl +/* 8018161C 0017E57C 80 01 0F 1C */ lwz r0, 0xf1c(r1) +/* 80181620 0017E580 2C 00 00 00 */ cmpwi r0, 0 +/* 80181624 0017E584 40 82 01 34 */ bne lbl_80181758 +/* 80181628 0017E588 80 7E 00 68 */ lwz r3, 0x68(r30) +/* 8018162C 0017E58C 38 00 00 01 */ li r0, 1 +/* 80181630 0017E590 80 BE 00 6C */ lwz r5, 0x6c(r30) +/* 80181634 0017E594 38 80 00 00 */ li r4, 0 +/* 80181638 0017E598 7C 60 00 38 */ and r0, r3, r0 +/* 8018163C 0017E59C 7C A3 20 38 */ and r3, r5, r4 +/* 80181640 0017E5A0 7C 63 22 78 */ xor r3, r3, r4 +/* 80181644 0017E5A4 7C 00 22 78 */ xor r0, r0, r4 +/* 80181648 0017E5A8 7C 60 03 79 */ or. r0, r3, r0 +/* 8018164C 0017E5AC 41 82 01 0C */ beq lbl_80181758 +/* 80181650 0017E5B0 C0 1E 01 F4 */ lfs f0, 0x1f4(r30) +/* 80181654 0017E5B4 7E E4 BB 78 */ mr r4, r23 +/* 80181658 0017E5B8 38 61 00 38 */ addi r3, r1, 0x38 +/* 8018165C 0017E5BC 38 AD 8E 88 */ addi r5, r13, lbl_805A7A48@sda21 +/* 80181660 0017E5C0 D0 01 01 84 */ stfs f0, 0x184(r1) +/* 80181664 0017E5C4 C0 1E 01 F8 */ lfs f0, 0x1f8(r30) +/* 80181668 0017E5C8 D0 01 01 88 */ stfs f0, 0x188(r1) +/* 8018166C 0017E5CC C0 1E 01 FC */ lfs f0, 0x1fc(r30) +/* 80181670 0017E5D0 D0 01 01 8C */ stfs f0, 0x18c(r1) +/* 80181674 0017E5D4 C0 1E 02 00 */ lfs f0, 0x200(r30) +/* 80181678 0017E5D8 D0 01 01 90 */ stfs f0, 0x190(r1) +/* 8018167C 0017E5DC C0 1E 02 04 */ lfs f0, 0x204(r30) +/* 80181680 0017E5E0 D0 01 01 94 */ stfs f0, 0x194(r1) +/* 80181684 0017E5E4 C0 1E 02 08 */ lfs f0, 0x208(r30) +/* 80181688 0017E5E8 D0 01 01 98 */ stfs f0, 0x198(r1) +/* 8018168C 0017E5EC C0 1E 02 0C */ lfs f0, 0x20c(r30) +/* 80181690 0017E5F0 D0 01 01 9C */ stfs f0, 0x19c(r1) +/* 80181694 0017E5F4 C0 1E 02 10 */ lfs f0, 0x210(r30) +/* 80181698 0017E5F8 D0 01 01 A0 */ stfs f0, 0x1a0(r1) +/* 8018169C 0017E5FC C0 1E 02 14 */ lfs f0, 0x214(r30) +/* 801816A0 0017E600 D0 01 01 A4 */ stfs f0, 0x1a4(r1) +/* 801816A4 0017E604 C0 1E 02 18 */ lfs f0, 0x218(r30) +/* 801816A8 0017E608 D0 01 01 A8 */ stfs f0, 0x1a8(r1) +/* 801816AC 0017E60C C0 1E 02 1C */ lfs f0, 0x21c(r30) +/* 801816B0 0017E610 D0 01 01 AC */ stfs f0, 0x1ac(r1) +/* 801816B4 0017E614 C0 1E 02 20 */ lfs f0, 0x220(r30) +/* 801816B8 0017E618 D0 01 01 B0 */ stfs f0, 0x1b0(r1) +/* 801816BC 0017E61C C0 1E 02 24 */ lfs f0, 0x224(r30) +/* 801816C0 0017E620 D0 01 01 B4 */ stfs f0, 0x1b4(r1) +/* 801816C4 0017E624 4B E9 9D C1 */ bl __ml__FRC10CAxisAngleRCf +/* 801816C8 0017E628 C0 42 A2 C4 */ lfs f2, lbl_805ABFE4@sda21(r2) +/* 801816CC 0017E62C 7F C3 F3 78 */ mr r3, r30 +/* 801816D0 0017E630 C0 01 01 A4 */ lfs f0, 0x1a4(r1) +/* 801816D4 0017E634 38 81 01 50 */ addi r4, r1, 0x150 +/* 801816D8 0017E638 C0 21 01 A8 */ lfs f1, 0x1a8(r1) +/* 801816DC 0017E63C ED 82 00 32 */ fmuls f12, f2, f0 +/* 801816E0 0017E640 C0 01 01 A0 */ lfs f0, 0x1a0(r1) +/* 801816E4 0017E644 ED 62 00 72 */ fmuls f11, f2, f1 +/* 801816E8 0017E648 C1 21 01 84 */ lfs f9, 0x184(r1) +/* 801816EC 0017E64C ED 42 00 32 */ fmuls f10, f2, f0 +/* 801816F0 0017E650 C1 01 01 88 */ lfs f8, 0x188(r1) +/* 801816F4 0017E654 C0 E1 01 8C */ lfs f7, 0x18c(r1) +/* 801816F8 0017E658 C0 C1 01 90 */ lfs f6, 0x190(r1) +/* 801816FC 0017E65C C0 A1 01 94 */ lfs f5, 0x194(r1) +/* 80181700 0017E660 C0 81 01 98 */ lfs f4, 0x198(r1) +/* 80181704 0017E664 C0 61 01 9C */ lfs f3, 0x19c(r1) +/* 80181708 0017E668 C0 41 00 38 */ lfs f2, 0x38(r1) +/* 8018170C 0017E66C C0 21 00 3C */ lfs f1, 0x3c(r1) +/* 80181710 0017E670 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 80181714 0017E674 D1 41 00 44 */ stfs f10, 0x44(r1) +/* 80181718 0017E678 D1 81 00 48 */ stfs f12, 0x48(r1) +/* 8018171C 0017E67C D1 61 00 4C */ stfs f11, 0x4c(r1) +/* 80181720 0017E680 D1 21 01 50 */ stfs f9, 0x150(r1) +/* 80181724 0017E684 D1 01 01 54 */ stfs f8, 0x154(r1) +/* 80181728 0017E688 D0 E1 01 58 */ stfs f7, 0x158(r1) +/* 8018172C 0017E68C D0 C1 01 5C */ stfs f6, 0x15c(r1) +/* 80181730 0017E690 D0 A1 01 60 */ stfs f5, 0x160(r1) +/* 80181734 0017E694 D0 81 01 64 */ stfs f4, 0x164(r1) +/* 80181738 0017E698 D0 61 01 68 */ stfs f3, 0x168(r1) +/* 8018173C 0017E69C D1 41 01 6C */ stfs f10, 0x16c(r1) +/* 80181740 0017E6A0 D1 81 01 70 */ stfs f12, 0x170(r1) +/* 80181744 0017E6A4 D1 61 01 74 */ stfs f11, 0x174(r1) +/* 80181748 0017E6A8 D0 41 01 78 */ stfs f2, 0x178(r1) +/* 8018174C 0017E6AC D0 21 01 7C */ stfs f1, 0x17c(r1) +/* 80181750 0017E6B0 D0 01 01 80 */ stfs f0, 0x180(r1) +/* 80181754 0017E6B4 4B F9 9F D5 */ bl SetMotionState__13CPhysicsActorFRC12CMotionState +lbl_80181758: +/* 80181758 0017E6B8 7F A3 EB 78 */ mr r3, r29 +/* 8018175C 0017E6BC 7F C4 F3 78 */ mr r4, r30 +/* 80181760 0017E6C0 38 A1 00 10 */ addi r5, r1, 0x10 +/* 80181764 0017E6C4 38 C1 0F 1C */ addi r6, r1, 0xf1c +/* 80181768 0017E6C8 48 00 14 51 */ bl MakeCollisionCallbacks__14CGameCollisionFR13CStateManagerR13CPhysicsActorRC9TUniqueIdRC18CCollisionInfoList +/* 8018176C 0017E6CC 38 60 00 00 */ li r3, 0 +/* 80181770 0017E6D0 4B F3 2D 89 */ bl IsUser__Fi +/* 80181774 0017E6D4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80181778 0017E6D8 41 82 00 14 */ beq lbl_8018178C +/* 8018177C 0017E6DC 48 1C 88 29 */ bl Grey__6CColorFv +/* 80181780 0017E6E0 7C 64 1B 78 */ mr r4, r3 +/* 80181784 0017E6E4 38 61 0F 1C */ addi r3, r1, 0xf1c +/* 80181788 0017E6E8 48 00 11 CD */ bl ShowCollisionResults__14CGameCollisionFR18CCollisionInfoListRC6CColor +lbl_8018178C: +/* 8018178C 0017E6EC 7F A3 EB 78 */ mr r3, r29 +/* 80181790 0017E6F0 7F C4 F3 78 */ mr r4, r30 +/* 80181794 0017E6F4 7E C5 B3 78 */ mr r5, r22 +/* 80181798 0017E6F8 38 C1 0F 1C */ addi r6, r1, 0xf1c +/* 8018179C 0017E6FC 48 00 12 55 */ bl SendScriptMessages__14CGameCollisionFR13CStateManagerR6CActorP6CActorRC18CCollisionInfoList +/* 801817A0 0017E700 7F C3 F3 78 */ mr r3, r30 +/* 801817A4 0017E704 7E C4 B3 78 */ mr r4, r22 +/* 801817A8 0017E708 38 A1 0F 1C */ addi r5, r1, 0xf1c +/* 801817AC 0017E70C 48 00 0E 45 */ bl ResolveCollisions__14CGameCollisionFR13CPhysicsActorP13CPhysicsActorRC18CCollisionInfoList +/* 801817B0 0017E710 C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 801817B4 0017E714 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 801817B8 0017E718 EC 21 F8 28 */ fsubs f1, f1, f31 +/* 801817BC 0017E71C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801817C0 0017E720 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801817C4 0017E724 40 80 00 0C */ bge lbl_801817D0 +/* 801817C8 0017E728 38 61 00 28 */ addi r3, r1, 0x28 +/* 801817CC 0017E72C 48 00 00 08 */ b lbl_801817D4 +lbl_801817D0: +/* 801817D0 0017E730 38 61 00 2C */ addi r3, r1, 0x2c +lbl_801817D4: +/* 801817D4 0017E734 C3 63 00 00 */ lfs f27, 0(r3) +/* 801817D8 0017E738 38 60 00 00 */ li r3, 0 +/* 801817DC 0017E73C 80 A1 03 18 */ lwz r5, 0x318(r1) +/* 801817E0 0017E740 FF E0 D8 90 */ fmr f31, f27 +/* 801817E4 0017E744 2C 05 00 00 */ cmpwi r5, 0 +/* 801817E8 0017E748 40 81 00 44 */ ble lbl_8018182C +/* 801817EC 0017E74C 2C 05 00 08 */ cmpwi r5, 8 +/* 801817F0 0017E750 38 85 FF F8 */ addi r4, r5, -8 +/* 801817F4 0017E754 40 81 00 20 */ ble lbl_80181814 +/* 801817F8 0017E758 38 04 00 07 */ addi r0, r4, 7 +/* 801817FC 0017E75C 54 00 E8 FE */ srwi r0, r0, 3 +/* 80181800 0017E760 7C 09 03 A6 */ mtctr r0 +/* 80181804 0017E764 2C 04 00 00 */ cmpwi r4, 0 +/* 80181808 0017E768 40 81 00 0C */ ble lbl_80181814 +lbl_8018180C: +/* 8018180C 0017E76C 38 63 00 08 */ addi r3, r3, 8 +/* 80181810 0017E770 42 00 FF FC */ bdnz lbl_8018180C +lbl_80181814: +/* 80181814 0017E774 7C 03 28 50 */ subf r0, r3, r5 +/* 80181818 0017E778 7C 09 03 A6 */ mtctr r0 +/* 8018181C 0017E77C 7C 03 28 00 */ cmpw r3, r5 +/* 80181820 0017E780 40 80 00 0C */ bge lbl_8018182C +lbl_80181824: +/* 80181824 0017E784 38 63 00 01 */ addi r3, r3, 1 +/* 80181828 0017E788 42 00 FF FC */ bdnz lbl_80181824 +lbl_8018182C: +/* 8018182C 0017E78C 80 A1 0F 1C */ lwz r5, 0xf1c(r1) +/* 80181830 0017E790 38 60 00 00 */ li r3, 0 +/* 80181834 0017E794 90 61 03 18 */ stw r3, 0x318(r1) +/* 80181838 0017E798 2C 05 00 00 */ cmpwi r5, 0 +/* 8018183C 0017E79C 40 81 00 44 */ ble lbl_80181880 +/* 80181840 0017E7A0 2C 05 00 08 */ cmpwi r5, 8 +/* 80181844 0017E7A4 38 85 FF F8 */ addi r4, r5, -8 +/* 80181848 0017E7A8 40 81 00 20 */ ble lbl_80181868 +/* 8018184C 0017E7AC 38 04 00 07 */ addi r0, r4, 7 +/* 80181850 0017E7B0 54 00 E8 FE */ srwi r0, r0, 3 +/* 80181854 0017E7B4 7C 09 03 A6 */ mtctr r0 +/* 80181858 0017E7B8 2C 04 00 00 */ cmpwi r4, 0 +/* 8018185C 0017E7BC 40 81 00 0C */ ble lbl_80181868 +lbl_80181860: +/* 80181860 0017E7C0 38 63 00 08 */ addi r3, r3, 8 +/* 80181864 0017E7C4 42 00 FF FC */ bdnz lbl_80181860 +lbl_80181868: +/* 80181868 0017E7C8 7C 03 28 50 */ subf r0, r3, r5 +/* 8018186C 0017E7CC 7C 09 03 A6 */ mtctr r0 +/* 80181870 0017E7D0 7C 03 28 00 */ cmpw r3, r5 +/* 80181874 0017E7D4 40 80 00 0C */ bge lbl_80181880 +lbl_80181878: +/* 80181878 0017E7D8 38 63 00 01 */ addi r3, r3, 1 +/* 8018187C 0017E7DC 42 00 FF FC */ bdnz lbl_80181878 +lbl_80181880: +/* 80181880 0017E7E0 38 00 00 00 */ li r0, 0 +/* 80181884 0017E7E4 90 01 0F 1C */ stw r0, 0xf1c(r1) +/* 80181888 0017E7E8 48 00 00 48 */ b lbl_801818D0 +lbl_8018188C: +/* 8018188C 0017E7EC C0 02 A2 C4 */ lfs f0, lbl_805ABFE4@sda21(r2) +/* 80181890 0017E7F0 EF 7B 00 32 */ fmuls f27, f27, f0 +/* 80181894 0017E7F4 EF FF 00 32 */ fmuls f31, f31, f0 +/* 80181898 0017E7F8 48 00 00 38 */ b lbl_801818D0 +lbl_8018189C: +/* 8018189C 0017E7FC 7F C3 F3 78 */ mr r3, r30 +/* 801818A0 0017E800 38 81 02 E4 */ addi r4, r1, 0x2e4 +/* 801818A4 0017E804 4B F9 9C 71 */ bl AddMotionState__13CPhysicsActorFRC12CMotionState +/* 801818A8 0017E808 C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 801818AC 0017E80C 7F C3 F3 78 */ mr r3, r30 +/* 801818B0 0017E810 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 801818B4 0017E814 FF E0 D8 90 */ fmr f31, f27 +/* 801818B8 0017E818 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801818BC 0017E81C 4B F9 99 65 */ bl ClearImpulses__13CPhysicsActorFv +/* 801818C0 0017E820 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801818C4 0017E824 7F C3 F3 78 */ mr r3, r30 +/* 801818C8 0017E828 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 801818CC 0017E82C 4B F9 91 6D */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f +lbl_801818D0: +/* 801818D0 0017E830 C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 801818D4 0017E834 3A 80 00 00 */ li r20, 0 +/* 801818D8 0017E838 3B 5A 00 01 */ addi r26, r26, 1 +/* 801818DC 0017E83C FC 00 F0 40 */ fcmpo cr0, f0, f30 +/* 801818E0 0017E840 40 81 00 28 */ ble lbl_80181908 +/* 801818E4 0017E844 38 61 02 E4 */ addi r3, r1, 0x2e4 +/* 801818E8 0017E848 48 19 2F D1 */ bl Magnitude__9CVector3fCFv +/* 801818EC 0017E84C FC 01 E8 40 */ fcmpo cr0, f1, f29 +/* 801818F0 0017E850 40 81 00 0C */ ble lbl_801818FC +/* 801818F4 0017E854 57 60 06 3F */ clrlwi. r0, r27, 0x18 +/* 801818F8 0017E858 40 82 00 0C */ bne lbl_80181904 +lbl_801818FC: +/* 801818FC 0017E85C 57 60 06 3F */ clrlwi. r0, r27, 0x18 +/* 80181900 0017E860 40 82 00 08 */ bne lbl_80181908 +lbl_80181904: +/* 80181904 0017E864 3A 80 00 01 */ li r20, 1 +lbl_80181908: +/* 80181908 0017E868 28 1A 03 E8 */ cmplwi r26, 0x3e8 +/* 8018190C 0017E86C 7E 96 A3 78 */ mr r22, r20 +/* 80181910 0017E870 40 81 00 08 */ ble lbl_80181918 +/* 80181914 0017E874 3A C0 00 00 */ li r22, 0 +lbl_80181918: +/* 80181918 0017E878 56 C0 06 3F */ clrlwi. r0, r22, 0x18 +/* 8018191C 0017E87C 41 82 00 7C */ beq lbl_80181998 +/* 80181920 0017E880 FC 20 F8 90 */ fmr f1, f31 +/* 80181924 0017E884 7F C4 F3 78 */ mr r4, r30 +/* 80181928 0017E888 38 61 01 1C */ addi r3, r1, 0x11c +/* 8018192C 0017E88C 4B F9 9E DD */ bl PredictMotion_Internal__13CPhysicsActorCFf +/* 80181930 0017E890 82 81 01 1C */ lwz r20, 0x11c(r1) +/* 80181934 0017E894 82 A1 01 20 */ lwz r21, 0x120(r1) +/* 80181938 0017E898 81 81 01 24 */ lwz r12, 0x124(r1) +/* 8018193C 0017E89C 81 61 01 28 */ lwz r11, 0x128(r1) +/* 80181940 0017E8A0 81 41 01 2C */ lwz r10, 0x12c(r1) +/* 80181944 0017E8A4 81 21 01 30 */ lwz r9, 0x130(r1) +/* 80181948 0017E8A8 81 01 01 34 */ lwz r8, 0x134(r1) +/* 8018194C 0017E8AC 80 E1 01 38 */ lwz r7, 0x138(r1) +/* 80181950 0017E8B0 80 C1 01 3C */ lwz r6, 0x13c(r1) +/* 80181954 0017E8B4 80 A1 01 40 */ lwz r5, 0x140(r1) +/* 80181958 0017E8B8 80 81 01 44 */ lwz r4, 0x144(r1) +/* 8018195C 0017E8BC 80 61 01 48 */ lwz r3, 0x148(r1) +/* 80181960 0017E8C0 80 01 01 4C */ lwz r0, 0x14c(r1) +/* 80181964 0017E8C4 92 81 02 E4 */ stw r20, 0x2e4(r1) +/* 80181968 0017E8C8 92 A1 02 E8 */ stw r21, 0x2e8(r1) +/* 8018196C 0017E8CC 91 81 02 EC */ stw r12, 0x2ec(r1) +/* 80181970 0017E8D0 91 61 02 F0 */ stw r11, 0x2f0(r1) +/* 80181974 0017E8D4 91 41 02 F4 */ stw r10, 0x2f4(r1) +/* 80181978 0017E8D8 91 21 02 F8 */ stw r9, 0x2f8(r1) +/* 8018197C 0017E8DC 91 01 02 FC */ stw r8, 0x2fc(r1) +/* 80181980 0017E8E0 90 E1 03 00 */ stw r7, 0x300(r1) +/* 80181984 0017E8E4 90 C1 03 04 */ stw r6, 0x304(r1) +/* 80181988 0017E8E8 90 A1 03 08 */ stw r5, 0x308(r1) +/* 8018198C 0017E8EC 90 81 03 0C */ stw r4, 0x30c(r1) +/* 80181990 0017E8F0 90 61 03 10 */ stw r3, 0x310(r1) +/* 80181994 0017E8F4 90 01 03 14 */ stw r0, 0x314(r1) +lbl_80181998: +/* 80181998 0017E8F8 56 C0 06 3F */ clrlwi. r0, r22, 0x18 +/* 8018199C 0017E8FC 40 82 FA B8 */ bne lbl_80181454 +/* 801819A0 0017E900 C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 801819A4 0017E904 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 801819A8 0017E908 EF 60 E0 24 */ fdivs f27, f0, f28 +/* 801819AC 0017E90C 40 82 00 48 */ bne lbl_801819F4 +/* 801819B0 0017E910 80 7E 00 68 */ lwz r3, 0x68(r30) +/* 801819B4 0017E914 38 00 00 20 */ li r0, 0x20 +/* 801819B8 0017E918 80 BE 00 6C */ lwz r5, 0x6c(r30) +/* 801819BC 0017E91C 38 80 00 00 */ li r4, 0 +/* 801819C0 0017E920 7C 60 00 38 */ and r0, r3, r0 +/* 801819C4 0017E924 7C A3 20 38 */ and r3, r5, r4 +/* 801819C8 0017E928 7C 63 22 78 */ xor r3, r3, r4 +/* 801819CC 0017E92C 7C 00 22 78 */ xor r0, r0, r4 +/* 801819D0 0017E930 7C 60 03 79 */ or. r0, r3, r0 +/* 801819D4 0017E934 40 82 00 20 */ bne lbl_801819F4 +/* 801819D8 0017E938 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801819DC 0017E93C 7F A3 EB 78 */ mr r3, r29 +/* 801819E0 0017E940 7F C4 F3 78 */ mr r4, r30 +/* 801819E4 0017E944 38 A1 00 08 */ addi r5, r1, 8 +/* 801819E8 0017E948 B0 01 00 08 */ sth r0, 8(r1) +/* 801819EC 0017E94C 38 C0 00 1A */ li r6, 0x1a +/* 801819F0 0017E950 4B EC 24 E1 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +lbl_801819F4: +/* 801819F4 0017E954 57 00 06 3F */ clrlwi. r0, r24, 0x18 +/* 801819F8 0017E958 41 82 00 38 */ beq lbl_80181A30 +/* 801819FC 0017E95C 7F C3 F3 78 */ mr r3, r30 +/* 80181A00 0017E960 81 9E 00 00 */ lwz r12, 0(r30) +/* 80181A04 0017E964 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80181A08 0017E968 7D 89 03 A6 */ mtctr r12 +/* 80181A0C 0017E96C 4E 80 04 21 */ bctrl +/* 80181A10 0017E970 FC 20 D8 90 */ fmr f1, f27 +/* 80181A14 0017E974 7C 66 1B 78 */ mr r6, r3 +/* 80181A18 0017E978 7F A3 EB 78 */ mr r3, r29 +/* 80181A1C 0017E97C 7F C5 F3 78 */ mr r5, r30 +/* 80181A20 0017E980 38 81 1B 20 */ addi r4, r1, 0x1b20 +/* 80181A24 0017E984 38 E1 36 64 */ addi r7, r1, 0x3664 +/* 80181A28 0017E988 39 00 00 02 */ li r8, 2 +/* 80181A2C 0017E98C 4B FF EE 61 */ bl "CollisionFailsafe__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheR13CPhysicsActorRC19CCollisionPrimitiveRCQ24rstl32reserved_vector<9TUniqueId,1024>fUi" +lbl_80181A30: +/* 80181A30 0017E990 7F C3 F3 78 */ mr r3, r30 +/* 80181A34 0017E994 4B F9 98 81 */ bl ClearForcesAndTorques__13CPhysicsActorFv +/* 80181A38 0017E998 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80181A3C 0017E99C 7F C3 F3 78 */ mr r3, r30 +/* 80181A40 0017E9A0 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 80181A44 0017E9A4 4B F9 8F F5 */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f +/* 80181A48 0017E9A8 38 60 00 00 */ li r3, 0 +/* 80181A4C 0017E9AC 4B F3 2A AD */ bl IsUser__Fi +/* 80181A50 0017E9B0 34 E1 1B 38 */ addic. r7, r1, 0x1b38 +/* 80181A54 0017E9B4 41 82 00 94 */ beq lbl_80181AE8 +/* 80181A58 0017E9B8 38 C7 00 04 */ addi r6, r7, 4 +/* 80181A5C 0017E9BC 38 60 00 00 */ li r3, 0 +/* 80181A60 0017E9C0 48 00 00 74 */ b lbl_80181AD4 +lbl_80181A64: +/* 80181A64 0017E9C4 28 06 00 00 */ cmplwi r6, 0 +/* 80181A68 0017E9C8 41 82 00 64 */ beq lbl_80181ACC +/* 80181A6C 0017E9CC 34 06 00 04 */ addic. r0, r6, 4 +/* 80181A70 0017E9D0 41 82 00 5C */ beq lbl_80181ACC +/* 80181A74 0017E9D4 81 06 00 04 */ lwz r8, 4(r6) +/* 80181A78 0017E9D8 38 80 00 00 */ li r4, 0 +/* 80181A7C 0017E9DC 2C 08 00 00 */ cmpwi r8, 0 +/* 80181A80 0017E9E0 40 81 00 44 */ ble lbl_80181AC4 +/* 80181A84 0017E9E4 2C 08 00 08 */ cmpwi r8, 8 +/* 80181A88 0017E9E8 38 A8 FF F8 */ addi r5, r8, -8 +/* 80181A8C 0017E9EC 40 81 00 20 */ ble lbl_80181AAC +/* 80181A90 0017E9F0 38 05 00 07 */ addi r0, r5, 7 +/* 80181A94 0017E9F4 54 00 E8 FE */ srwi r0, r0, 3 +/* 80181A98 0017E9F8 7C 09 03 A6 */ mtctr r0 +/* 80181A9C 0017E9FC 2C 05 00 00 */ cmpwi r5, 0 +/* 80181AA0 0017EA00 40 81 00 0C */ ble lbl_80181AAC +lbl_80181AA4: +/* 80181AA4 0017EA04 38 84 00 08 */ addi r4, r4, 8 +/* 80181AA8 0017EA08 42 00 FF FC */ bdnz lbl_80181AA4 +lbl_80181AAC: +/* 80181AAC 0017EA0C 7C 04 40 50 */ subf r0, r4, r8 +/* 80181AB0 0017EA10 7C 09 03 A6 */ mtctr r0 +/* 80181AB4 0017EA14 7C 04 40 00 */ cmpw r4, r8 +/* 80181AB8 0017EA18 40 80 00 0C */ bge lbl_80181AC4 +lbl_80181ABC: +/* 80181ABC 0017EA1C 38 84 00 01 */ addi r4, r4, 1 +/* 80181AC0 0017EA20 42 00 FF FC */ bdnz lbl_80181ABC +lbl_80181AC4: +/* 80181AC4 0017EA24 38 00 00 00 */ li r0, 0 +/* 80181AC8 0017EA28 90 06 00 04 */ stw r0, 4(r6) +lbl_80181ACC: +/* 80181ACC 0017EA2C 38 C6 09 0C */ addi r6, r6, 0x90c +/* 80181AD0 0017EA30 38 63 00 01 */ addi r3, r3, 1 +lbl_80181AD4: +/* 80181AD4 0017EA34 80 07 00 00 */ lwz r0, 0(r7) +/* 80181AD8 0017EA38 7C 03 00 00 */ cmpw r3, r0 +/* 80181ADC 0017EA3C 41 80 FF 88 */ blt lbl_80181A64 +/* 80181AE0 0017EA40 38 00 00 00 */ li r0, 0 +/* 80181AE4 0017EA44 90 07 00 00 */ stw r0, 0(r7) +lbl_80181AE8: +/* 80181AE8 0017EA48 80 A1 36 64 */ lwz r5, 0x3664(r1) +/* 80181AEC 0017EA4C 38 60 00 00 */ li r3, 0 +/* 80181AF0 0017EA50 2C 05 00 00 */ cmpwi r5, 0 +/* 80181AF4 0017EA54 40 81 00 40 */ ble lbl_80181B34 +/* 80181AF8 0017EA58 2C 05 00 08 */ cmpwi r5, 8 +/* 80181AFC 0017EA5C 38 85 FF F8 */ addi r4, r5, -8 +/* 80181B00 0017EA60 40 81 00 20 */ ble lbl_80181B20 +/* 80181B04 0017EA64 38 04 00 07 */ addi r0, r4, 7 +/* 80181B08 0017EA68 54 00 E8 FE */ srwi r0, r0, 3 +/* 80181B0C 0017EA6C 7C 09 03 A6 */ mtctr r0 +/* 80181B10 0017EA70 2C 04 00 00 */ cmpwi r4, 0 +/* 80181B14 0017EA74 40 81 00 0C */ ble lbl_80181B20 +lbl_80181B18: +/* 80181B18 0017EA78 38 63 00 08 */ addi r3, r3, 8 +/* 80181B1C 0017EA7C 42 00 FF FC */ bdnz lbl_80181B18 +lbl_80181B20: +/* 80181B20 0017EA80 7C 03 28 50 */ subf r0, r3, r5 +/* 80181B24 0017EA84 7C 09 03 A6 */ mtctr r0 +/* 80181B28 0017EA88 7C 03 28 00 */ cmpw r3, r5 +/* 80181B2C 0017EA8C 40 80 00 08 */ bge lbl_80181B34 +lbl_80181B30: +/* 80181B30 0017EA90 42 00 00 00 */ bdnz lbl_80181B30 +lbl_80181B34: +/* 80181B34 0017EA94 80 A1 3E 68 */ lwz r5, 0x3e68(r1) +/* 80181B38 0017EA98 38 60 00 00 */ li r3, 0 +/* 80181B3C 0017EA9C 90 61 36 64 */ stw r3, 0x3664(r1) +/* 80181B40 0017EAA0 2C 05 00 00 */ cmpwi r5, 0 +/* 80181B44 0017EAA4 40 81 00 40 */ ble lbl_80181B84 +/* 80181B48 0017EAA8 2C 05 00 08 */ cmpwi r5, 8 +/* 80181B4C 0017EAAC 38 85 FF F8 */ addi r4, r5, -8 +/* 80181B50 0017EAB0 40 81 00 20 */ ble lbl_80181B70 +/* 80181B54 0017EAB4 38 04 00 07 */ addi r0, r4, 7 +/* 80181B58 0017EAB8 54 00 E8 FE */ srwi r0, r0, 3 +/* 80181B5C 0017EABC 7C 09 03 A6 */ mtctr r0 +/* 80181B60 0017EAC0 2C 04 00 00 */ cmpwi r4, 0 +/* 80181B64 0017EAC4 40 81 00 0C */ ble lbl_80181B70 +lbl_80181B68: +/* 80181B68 0017EAC8 38 63 00 08 */ addi r3, r3, 8 +/* 80181B6C 0017EACC 42 00 FF FC */ bdnz lbl_80181B68 +lbl_80181B70: +/* 80181B70 0017EAD0 7C 03 28 50 */ subf r0, r3, r5 +/* 80181B74 0017EAD4 7C 09 03 A6 */ mtctr r0 +/* 80181B78 0017EAD8 7C 03 28 00 */ cmpw r3, r5 +/* 80181B7C 0017EADC 40 80 00 08 */ bge lbl_80181B84 +lbl_80181B80: +/* 80181B80 0017EAE0 42 00 00 00 */ bdnz lbl_80181B80 +lbl_80181B84: +/* 80181B84 0017EAE4 38 00 00 00 */ li r0, 0 +/* 80181B88 0017EAE8 90 01 3E 68 */ stw r0, 0x3e68(r1) +/* 80181B8C 0017EAEC 38 00 4A E8 */ li r0, 0x4ae8 +/* 80181B90 0017EAF0 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 +/* 80181B94 0017EAF4 CB E1 4A E0 */ lfd f31, 0x4ae0(r1) +/* 80181B98 0017EAF8 38 00 4A D8 */ li r0, 0x4ad8 +/* 80181B9C 0017EAFC 13 C1 00 0C */ psq_lx f30, r1, r0, 0, qr0 +/* 80181BA0 0017EB00 CB C1 4A D0 */ lfd f30, 0x4ad0(r1) +/* 80181BA4 0017EB04 38 00 4A C8 */ li r0, 0x4ac8 +/* 80181BA8 0017EB08 13 A1 00 0C */ psq_lx f29, r1, r0, 0, qr0 +/* 80181BAC 0017EB0C CB A1 4A C0 */ lfd f29, 0x4ac0(r1) +/* 80181BB0 0017EB10 38 00 4A B8 */ li r0, 0x4ab8 +/* 80181BB4 0017EB14 13 81 00 0C */ psq_lx f28, r1, r0, 0, qr0 +/* 80181BB8 0017EB18 CB 81 4A B0 */ lfd f28, 0x4ab0(r1) +/* 80181BBC 0017EB1C 38 00 4A A8 */ li r0, 0x4aa8 +/* 80181BC0 0017EB20 13 61 00 0C */ psq_lx f27, r1, r0, 0, qr0 +/* 80181BC4 0017EB24 CB 61 4A A0 */ lfd f27, 0x4aa0(r1) +/* 80181BC8 0017EB28 BA 81 4A 70 */ lmw r20, 0x4a70(r1) +/* 80181BCC 0017EB2C 80 01 4A F4 */ lwz r0, 0x4af4(r1) +/* 80181BD0 0017EB30 7C 08 03 A6 */ mtlr r0 +/* 80181BD4 0017EB34 38 21 4A F0 */ addi r1, r1, 0x4af0 +/* 80181BD8 0017EB38 4E 80 00 20 */ blr + +.global "MovePlayer__14CGameCollisionFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>" +"MovePlayer__14CGameCollisionFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>": +/* 80181BDC 0017EB3C 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 80181BE0 0017EB40 7C 08 02 A6 */ mflr r0 +/* 80181BE4 0017EB44 90 01 00 74 */ stw r0, 0x74(r1) +/* 80181BE8 0017EB48 DB E1 00 68 */ stfd f31, 0x68(r1) +/* 80181BEC 0017EB4C FF E0 08 90 */ fmr f31, f1 +/* 80181BF0 0017EB50 93 E1 00 64 */ stw r31, 0x64(r1) +/* 80181BF4 0017EB54 7C BF 2B 78 */ mr r31, r5 +/* 80181BF8 0017EB58 93 C1 00 60 */ stw r30, 0x60(r1) +/* 80181BFC 0017EB5C 7C 9E 23 78 */ mr r30, r4 +/* 80181C00 0017EB60 93 A1 00 5C */ stw r29, 0x5c(r1) +/* 80181C04 0017EB64 7C 7D 1B 78 */ mr r29, r3 +/* 80181C08 0017EB68 38 60 00 01 */ li r3, 1 +/* 80181C0C 0017EB6C 88 04 00 F8 */ lbz r0, 0xf8(r4) +/* 80181C10 0017EB70 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80181C14 0017EB74 38 61 00 18 */ addi r3, r1, 0x18 +/* 80181C18 0017EB78 98 04 00 F8 */ stb r0, 0xf8(r4) +/* 80181C1C 0017EB7C 4B F9 9E 95 */ bl PredictAngularMotion__13CPhysicsActorCFf +/* 80181C20 0017EB80 7F C3 F3 78 */ mr r3, r30 +/* 80181C24 0017EB84 38 81 00 18 */ addi r4, r1, 0x18 +/* 80181C28 0017EB88 4B F9 98 ED */ bl AddMotionState__13CPhysicsActorFRC12CMotionState +/* 80181C2C 0017EB8C 88 1E 00 F9 */ lbz r0, 0xf9(r30) +/* 80181C30 0017EB90 28 00 00 00 */ cmplwi r0, 0 +/* 80181C34 0017EB94 41 82 00 3C */ beq lbl_80181C70 +/* 80181C38 0017EB98 3C 80 80 3E */ lis r4, lbl_803E3FE8@ha +/* 80181C3C 0017EB9C 3C 60 80 3E */ lis r3, lbl_803E3FF8@ha +/* 80181C40 0017EBA0 38 04 3F E8 */ addi r0, r4, lbl_803E3FE8@l +/* 80181C44 0017EBA4 FC 20 F8 90 */ fmr f1, f31 +/* 80181C48 0017EBA8 90 01 00 10 */ stw r0, 0x10(r1) +/* 80181C4C 0017EBAC 38 03 3F F8 */ addi r0, r3, lbl_803E3FF8@l +/* 80181C50 0017EBB0 7F A3 EB 78 */ mr r3, r29 +/* 80181C54 0017EBB4 7F C4 F3 78 */ mr r4, r30 +/* 80181C58 0017EBB8 90 01 00 10 */ stw r0, 0x10(r1) +/* 80181C5C 0017EBBC 7F E6 FB 78 */ mr r6, r31 +/* 80181C60 0017EBC0 38 A1 00 10 */ addi r5, r1, 0x10 +/* 80181C64 0017EBC4 93 C1 00 14 */ stw r30, 0x14(r1) +/* 80181C68 0017EBC8 4B FF F2 8D */ bl "MoveAndCollide__14CGameCollisionFR13CStateManagerR13CPhysicsActorfRC16ICollisionFilterPCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 80181C6C 0017EBCC 48 00 00 9C */ b lbl_80181D08 +lbl_80181C70: +/* 80181C70 0017EBD0 80 7E 00 68 */ lwz r3, 0x68(r30) +/* 80181C74 0017EBD4 38 00 00 20 */ li r0, 0x20 +/* 80181C78 0017EBD8 80 BE 00 6C */ lwz r5, 0x6c(r30) +/* 80181C7C 0017EBDC 38 80 00 00 */ li r4, 0 +/* 80181C80 0017EBE0 7C 60 00 38 */ and r0, r3, r0 +/* 80181C84 0017EBE4 7C A3 20 38 */ and r3, r5, r4 +/* 80181C88 0017EBE8 7C 63 22 78 */ xor r3, r3, r4 +/* 80181C8C 0017EBEC 7C 00 22 78 */ xor r0, r0, r4 +/* 80181C90 0017EBF0 7C 60 03 79 */ or. r0, r3, r0 +/* 80181C94 0017EBF4 41 82 00 40 */ beq lbl_80181CD4 +/* 80181C98 0017EBF8 88 02 80 E9 */ lbz r0, lbl_805A9E09@sda21(r2) +/* 80181C9C 0017EBFC 28 00 00 00 */ cmplwi r0, 0 +/* 80181CA0 0017EC00 41 82 00 1C */ beq lbl_80181CBC +/* 80181CA4 0017EC04 FC 20 F8 90 */ fmr f1, f31 +/* 80181CA8 0017EC08 7F A3 EB 78 */ mr r3, r29 +/* 80181CAC 0017EC0C 7F C4 F3 78 */ mr r4, r30 +/* 80181CB0 0017EC10 7F E5 FB 78 */ mr r5, r31 +/* 80181CB4 0017EC14 48 00 4A 49 */ bl "MoveGroundCollider_New__15CGroundMovementFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 80181CB8 0017EC18 48 00 00 50 */ b lbl_80181D08 +lbl_80181CBC: +/* 80181CBC 0017EC1C FC 20 F8 90 */ fmr f1, f31 +/* 80181CC0 0017EC20 7F A3 EB 78 */ mr r3, r29 +/* 80181CC4 0017EC24 7F C4 F3 78 */ mr r4, r30 +/* 80181CC8 0017EC28 7F E5 FB 78 */ mr r5, r31 +/* 80181CCC 0017EC2C 48 00 75 CD */ bl "MoveGroundCollider__15CGroundMovementFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 80181CD0 0017EC30 48 00 00 38 */ b lbl_80181D08 +lbl_80181CD4: +/* 80181CD4 0017EC34 3C 80 80 3E */ lis r4, lbl_803E3FE8@ha +/* 80181CD8 0017EC38 3C 60 80 3E */ lis r3, lbl_803E3FF8@ha +/* 80181CDC 0017EC3C 38 04 3F E8 */ addi r0, r4, lbl_803E3FE8@l +/* 80181CE0 0017EC40 FC 20 F8 90 */ fmr f1, f31 +/* 80181CE4 0017EC44 90 01 00 08 */ stw r0, 8(r1) +/* 80181CE8 0017EC48 38 03 3F F8 */ addi r0, r3, lbl_803E3FF8@l +/* 80181CEC 0017EC4C 7F A3 EB 78 */ mr r3, r29 +/* 80181CF0 0017EC50 7F C4 F3 78 */ mr r4, r30 +/* 80181CF4 0017EC54 90 01 00 08 */ stw r0, 8(r1) +/* 80181CF8 0017EC58 7F E6 FB 78 */ mr r6, r31 +/* 80181CFC 0017EC5C 38 A1 00 08 */ addi r5, r1, 8 +/* 80181D00 0017EC60 93 C1 00 0C */ stw r30, 0xc(r1) +/* 80181D04 0017EC64 4B FF F1 F1 */ bl "MoveAndCollide__14CGameCollisionFR13CStateManagerR13CPhysicsActorfRC16ICollisionFilterPCQ24rstl32reserved_vector<9TUniqueId,1024>" +lbl_80181D08: +/* 80181D08 0017EC68 88 1E 00 F8 */ lbz r0, 0xf8(r30) +/* 80181D0C 0017EC6C 38 60 00 00 */ li r3, 0 +/* 80181D10 0017EC70 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80181D14 0017EC74 98 1E 00 F8 */ stb r0, 0xf8(r30) +/* 80181D18 0017EC78 CB E1 00 68 */ lfd f31, 0x68(r1) +/* 80181D1C 0017EC7C 83 E1 00 64 */ lwz r31, 0x64(r1) +/* 80181D20 0017EC80 83 C1 00 60 */ lwz r30, 0x60(r1) +/* 80181D24 0017EC84 83 A1 00 5C */ lwz r29, 0x5c(r1) +/* 80181D28 0017EC88 80 01 00 74 */ lwz r0, 0x74(r1) +/* 80181D2C 0017EC8C 7C 08 03 A6 */ mtlr r0 +/* 80181D30 0017EC90 38 21 00 70 */ addi r1, r1, 0x70 +/* 80181D34 0017EC94 4E 80 00 20 */ blr + +.global "Move__14CGameCollisionFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>" +"Move__14CGameCollisionFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>": +/* 80181D38 0017EC98 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 80181D3C 0017EC9C 7C 08 02 A6 */ mflr r0 +/* 80181D40 0017ECA0 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 80181D44 0017ECA4 DB E1 00 C0 */ stfd f31, 0xc0(r1) +/* 80181D48 0017ECA8 F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 +/* 80181D4C 0017ECAC 93 E1 00 BC */ stw r31, 0xbc(r1) +/* 80181D50 0017ECB0 93 C1 00 B8 */ stw r30, 0xb8(r1) +/* 80181D54 0017ECB4 93 A1 00 B4 */ stw r29, 0xb4(r1) +/* 80181D58 0017ECB8 88 04 00 F8 */ lbz r0, 0xf8(r4) +/* 80181D5C 0017ECBC FF E0 08 90 */ fmr f31, f1 +/* 80181D60 0017ECC0 7C 9E 23 78 */ mr r30, r4 +/* 80181D64 0017ECC4 7C 7D 1B 78 */ mr r29, r3 +/* 80181D68 0017ECC8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80181D6C 0017ECCC 7C BF 2B 78 */ mr r31, r5 +/* 80181D70 0017ECD0 41 82 01 D8 */ beq lbl_80181F48 +/* 80181D74 0017ECD4 80 7E 00 68 */ lwz r3, 0x68(r30) +/* 80181D78 0017ECD8 38 00 00 20 */ li r0, 0x20 +/* 80181D7C 0017ECDC 80 BE 00 6C */ lwz r5, 0x6c(r30) +/* 80181D80 0017ECE0 38 80 00 00 */ li r4, 0 +/* 80181D84 0017ECE4 7C 60 00 38 */ and r0, r3, r0 +/* 80181D88 0017ECE8 7C A3 20 38 */ and r3, r5, r4 +/* 80181D8C 0017ECEC 7C 63 22 78 */ xor r3, r3, r4 +/* 80181D90 0017ECF0 7C 00 22 78 */ xor r0, r0, r4 +/* 80181D94 0017ECF4 7C 60 03 79 */ or. r0, r3, r0 +/* 80181D98 0017ECF8 40 82 00 18 */ bne lbl_80181DB0 +/* 80181D9C 0017ECFC 7F C3 F3 78 */ mr r3, r30 +/* 80181DA0 0017ED00 7F A4 EB 78 */ mr r4, r29 +/* 80181DA4 0017ED04 4B F9 96 41 */ bl WillMove__13CPhysicsActorFRC13CStateManager +/* 80181DA8 0017ED08 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80181DAC 0017ED0C 41 82 01 9C */ beq lbl_80181F48 +lbl_80181DB0: +/* 80181DB0 0017ED10 88 1E 00 F8 */ lbz r0, 0xf8(r30) +/* 80181DB4 0017ED14 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80181DB8 0017ED18 41 82 00 20 */ beq lbl_80181DD8 +/* 80181DBC 0017ED1C FC 20 F8 90 */ fmr f1, f31 +/* 80181DC0 0017ED20 7F C4 F3 78 */ mr r4, r30 +/* 80181DC4 0017ED24 38 61 00 44 */ addi r3, r1, 0x44 +/* 80181DC8 0017ED28 4B F9 9C E9 */ bl PredictAngularMotion__13CPhysicsActorCFf +/* 80181DCC 0017ED2C 7F C3 F3 78 */ mr r3, r30 +/* 80181DD0 0017ED30 38 81 00 44 */ addi r4, r1, 0x44 +/* 80181DD4 0017ED34 4B F9 97 41 */ bl AddMotionState__13CPhysicsActorFRC12CMotionState +lbl_80181DD8: +/* 80181DD8 0017ED38 7F C3 F3 78 */ mr r3, r30 +/* 80181DDC 0017ED3C 4B F9 93 A1 */ bl UseCollisionImpulses__13CPhysicsActorFv +/* 80181DE0 0017ED40 80 BE 00 68 */ lwz r5, 0x68(r30) +/* 80181DE4 0017ED44 38 80 00 00 */ li r4, 0 +/* 80181DE8 0017ED48 80 DE 00 6C */ lwz r6, 0x6c(r30) +/* 80181DEC 0017ED4C 3C 60 00 08 */ lis r3, 8 +/* 80181DF0 0017ED50 7C A0 20 38 */ and r0, r5, r4 +/* 80181DF4 0017ED54 7C C3 18 38 */ and r3, r6, r3 +/* 80181DF8 0017ED58 7C 63 22 78 */ xor r3, r3, r4 +/* 80181DFC 0017ED5C 7C 00 22 78 */ xor r0, r0, r4 +/* 80181E00 0017ED60 7C 60 03 79 */ or. r0, r3, r0 +/* 80181E04 0017ED64 41 82 00 08 */ beq lbl_80181E0C +/* 80181E08 0017ED68 38 80 00 01 */ li r4, 1 +lbl_80181E0C: +/* 80181E0C 0017ED6C 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 80181E10 0017ED70 41 82 00 A0 */ beq lbl_80181EB0 +/* 80181E14 0017ED74 38 80 00 00 */ li r4, 0 +/* 80181E18 0017ED78 38 00 00 01 */ li r0, 1 +/* 80181E1C 0017ED7C 7C C3 20 38 */ and r3, r6, r4 +/* 80181E20 0017ED80 7C A0 00 38 */ and r0, r5, r0 +/* 80181E24 0017ED84 7C 63 22 78 */ xor r3, r3, r4 +/* 80181E28 0017ED88 7C 00 22 78 */ xor r0, r0, r4 +/* 80181E2C 0017ED8C 7C 60 03 79 */ or. r0, r3, r0 +/* 80181E30 0017ED90 41 82 00 1C */ beq lbl_80181E4C +/* 80181E34 0017ED94 FC 20 F8 90 */ fmr f1, f31 +/* 80181E38 0017ED98 7F A3 EB 78 */ mr r3, r29 +/* 80181E3C 0017ED9C 7F C4 F3 78 */ mr r4, r30 +/* 80181E40 0017EDA0 7F E5 FB 78 */ mr r5, r31 +/* 80181E44 0017EDA4 4B FF FD 99 */ bl "MovePlayer__14CGameCollisionFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 80181E48 0017EDA8 48 00 00 F4 */ b lbl_80181F3C +lbl_80181E4C: +/* 80181E4C 0017EDAC 38 00 00 20 */ li r0, 0x20 +/* 80181E50 0017EDB0 7C A0 00 38 */ and r0, r5, r0 +/* 80181E54 0017EDB4 7C 00 22 78 */ xor r0, r0, r4 +/* 80181E58 0017EDB8 7C 60 03 79 */ or. r0, r3, r0 +/* 80181E5C 0017EDBC 41 82 00 1C */ beq lbl_80181E78 +/* 80181E60 0017EDC0 FC 20 F8 90 */ fmr f1, f31 +/* 80181E64 0017EDC4 7F A3 EB 78 */ mr r3, r29 +/* 80181E68 0017EDC8 7F C4 F3 78 */ mr r4, r30 +/* 80181E6C 0017EDCC 7F E5 FB 78 */ mr r5, r31 +/* 80181E70 0017EDD0 48 00 74 29 */ bl "MoveGroundCollider__15CGroundMovementFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 80181E74 0017EDD4 48 00 00 C8 */ b lbl_80181F3C +lbl_80181E78: +/* 80181E78 0017EDD8 3C 80 80 3E */ lis r4, lbl_803E3FE8@ha +/* 80181E7C 0017EDDC 3C 60 80 3E */ lis r3, lbl_803E4008@ha +/* 80181E80 0017EDE0 38 04 3F E8 */ addi r0, r4, lbl_803E3FE8@l +/* 80181E84 0017EDE4 FC 20 F8 90 */ fmr f1, f31 +/* 80181E88 0017EDE8 90 01 00 08 */ stw r0, 8(r1) +/* 80181E8C 0017EDEC 38 03 40 08 */ addi r0, r3, lbl_803E4008@l +/* 80181E90 0017EDF0 7F A3 EB 78 */ mr r3, r29 +/* 80181E94 0017EDF4 7F C4 F3 78 */ mr r4, r30 +/* 80181E98 0017EDF8 90 01 00 08 */ stw r0, 8(r1) +/* 80181E9C 0017EDFC 7F E6 FB 78 */ mr r6, r31 +/* 80181EA0 0017EE00 38 A1 00 08 */ addi r5, r1, 8 +/* 80181EA4 0017EE04 93 C1 00 0C */ stw r30, 0xc(r1) +/* 80181EA8 0017EE08 4B FF F0 4D */ bl "MoveAndCollide__14CGameCollisionFR13CStateManagerR13CPhysicsActorfRC16ICollisionFilterPCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 80181EAC 0017EE0C 48 00 00 90 */ b lbl_80181F3C +lbl_80181EB0: +/* 80181EB0 0017EE10 FC 20 F8 90 */ fmr f1, f31 +/* 80181EB4 0017EE14 7F C4 F3 78 */ mr r4, r30 +/* 80181EB8 0017EE18 38 61 00 10 */ addi r3, r1, 0x10 +/* 80181EBC 0017EE1C 4B F9 99 4D */ bl PredictMotion_Internal__13CPhysicsActorCFf +/* 80181EC0 0017EE20 C1 81 00 10 */ lfs f12, 0x10(r1) +/* 80181EC4 0017EE24 7F C3 F3 78 */ mr r3, r30 +/* 80181EC8 0017EE28 C1 61 00 14 */ lfs f11, 0x14(r1) +/* 80181ECC 0017EE2C 38 81 00 78 */ addi r4, r1, 0x78 +/* 80181ED0 0017EE30 C1 41 00 18 */ lfs f10, 0x18(r1) +/* 80181ED4 0017EE34 C1 21 00 1C */ lfs f9, 0x1c(r1) +/* 80181ED8 0017EE38 C1 01 00 20 */ lfs f8, 0x20(r1) +/* 80181EDC 0017EE3C C0 E1 00 24 */ lfs f7, 0x24(r1) +/* 80181EE0 0017EE40 C0 C1 00 28 */ lfs f6, 0x28(r1) +/* 80181EE4 0017EE44 C0 A1 00 2C */ lfs f5, 0x2c(r1) +/* 80181EE8 0017EE48 C0 81 00 30 */ lfs f4, 0x30(r1) +/* 80181EEC 0017EE4C C0 61 00 34 */ lfs f3, 0x34(r1) +/* 80181EF0 0017EE50 C0 41 00 38 */ lfs f2, 0x38(r1) +/* 80181EF4 0017EE54 C0 21 00 3C */ lfs f1, 0x3c(r1) +/* 80181EF8 0017EE58 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 80181EFC 0017EE5C D1 81 00 78 */ stfs f12, 0x78(r1) +/* 80181F00 0017EE60 D1 61 00 7C */ stfs f11, 0x7c(r1) +/* 80181F04 0017EE64 D1 41 00 80 */ stfs f10, 0x80(r1) +/* 80181F08 0017EE68 D1 21 00 84 */ stfs f9, 0x84(r1) +/* 80181F0C 0017EE6C D1 01 00 88 */ stfs f8, 0x88(r1) +/* 80181F10 0017EE70 D0 E1 00 8C */ stfs f7, 0x8c(r1) +/* 80181F14 0017EE74 D0 C1 00 90 */ stfs f6, 0x90(r1) +/* 80181F18 0017EE78 D0 A1 00 94 */ stfs f5, 0x94(r1) +/* 80181F1C 0017EE7C D0 81 00 98 */ stfs f4, 0x98(r1) +/* 80181F20 0017EE80 D0 61 00 9C */ stfs f3, 0x9c(r1) +/* 80181F24 0017EE84 D0 41 00 A0 */ stfs f2, 0xa0(r1) +/* 80181F28 0017EE88 D0 21 00 A4 */ stfs f1, 0xa4(r1) +/* 80181F2C 0017EE8C D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 80181F30 0017EE90 4B F9 95 E5 */ bl AddMotionState__13CPhysicsActorFRC12CMotionState +/* 80181F34 0017EE94 7F C3 F3 78 */ mr r3, r30 +/* 80181F38 0017EE98 4B F9 93 7D */ bl ClearForcesAndTorques__13CPhysicsActorFv +lbl_80181F3C: +/* 80181F3C 0017EE9C 7F A3 EB 78 */ mr r3, r29 +/* 80181F40 0017EEA0 7F C4 F3 78 */ mr r4, r30 +/* 80181F44 0017EEA4 4B EC A8 01 */ bl UpdateActorInSortedLists__13CStateManagerFR6CActor +lbl_80181F48: +/* 80181F48 0017EEA8 E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 +/* 80181F4C 0017EEAC 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 80181F50 0017EEB0 CB E1 00 C0 */ lfd f31, 0xc0(r1) +/* 80181F54 0017EEB4 83 E1 00 BC */ lwz r31, 0xbc(r1) +/* 80181F58 0017EEB8 83 C1 00 B8 */ lwz r30, 0xb8(r1) +/* 80181F5C 0017EEBC 83 A1 00 B4 */ lwz r29, 0xb4(r1) +/* 80181F60 0017EEC0 7C 08 03 A6 */ mtlr r0 +/* 80181F64 0017EEC4 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 80181F68 0017EEC8 4E 80 00 20 */ blr + +.global CollideWithStaticBodyNoRot__14CGameCollisionFR13CPhysicsActorRC13CMaterialListRC13CMaterialListRC13CUnitVector3ffb +CollideWithStaticBodyNoRot__14CGameCollisionFR13CPhysicsActorRC13CMaterialListRC13CMaterialListRC13CUnitVector3ffb: +/* 80181F6C 0017EECC 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80181F70 0017EED0 7C 08 02 A6 */ mflr r0 +/* 80181F74 0017EED4 90 01 00 54 */ stw r0, 0x54(r1) +/* 80181F78 0017EED8 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 80181F7C 0017EEDC F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 80181F80 0017EEE0 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80181F84 0017EEE4 C0 66 00 00 */ lfs f3, 0(r6) +/* 80181F88 0017EEE8 54 E0 06 3F */ clrlwi. r0, r7, 0x18 +/* 80181F8C 0017EEEC C0 46 00 04 */ lfs f2, 4(r6) +/* 80181F90 0017EEF0 FF E0 08 90 */ fmr f31, f1 +/* 80181F94 0017EEF4 C0 06 00 08 */ lfs f0, 8(r6) +/* 80181F98 0017EEF8 7C 7F 1B 78 */ mr r31, r3 +/* 80181F9C 0017EEFC D0 61 00 20 */ stfs f3, 0x20(r1) +/* 80181FA0 0017EF00 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 80181FA4 0017EF04 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80181FA8 0017EF08 41 82 00 58 */ beq lbl_80182000 +/* 80181FAC 0017EF0C 80 64 00 00 */ lwz r3, 0(r4) +/* 80181FB0 0017EF10 38 00 00 01 */ li r0, 1 +/* 80181FB4 0017EF14 80 84 00 04 */ lwz r4, 4(r4) +/* 80181FB8 0017EF18 38 C0 00 00 */ li r6, 0 +/* 80181FBC 0017EF1C 7C 60 00 38 */ and r0, r3, r0 +/* 80181FC0 0017EF20 7C 83 30 38 */ and r3, r4, r6 +/* 80181FC4 0017EF24 7C 63 32 78 */ xor r3, r3, r6 +/* 80181FC8 0017EF28 7C 00 32 78 */ xor r0, r0, r6 +/* 80181FCC 0017EF2C 7C 60 03 79 */ or. r0, r3, r0 +/* 80181FD0 0017EF30 41 82 00 30 */ beq lbl_80182000 +/* 80181FD4 0017EF34 80 05 00 00 */ lwz r0, 0(r5) +/* 80181FD8 0017EF38 3C 60 80 00 */ lis r3, 0x8000 +/* 80181FDC 0017EF3C 80 85 00 04 */ lwz r4, 4(r5) +/* 80181FE0 0017EF40 7C 00 30 38 */ and r0, r0, r6 +/* 80181FE4 0017EF44 7C 83 18 38 */ and r3, r4, r3 +/* 80181FE8 0017EF48 7C 63 32 78 */ xor r3, r3, r6 +/* 80181FEC 0017EF4C 7C 00 32 78 */ xor r0, r0, r6 +/* 80181FF0 0017EF50 7C 60 03 79 */ or. r0, r3, r0 +/* 80181FF4 0017EF54 40 82 00 0C */ bne lbl_80182000 +/* 80181FF8 0017EF58 C0 02 A2 A8 */ lfs f0, lbl_805ABFC8@sda21(r2) +/* 80181FFC 0017EF5C D0 01 00 28 */ stfs f0, 0x28(r1) +lbl_80182000: +/* 80182000 0017EF60 38 61 00 20 */ addi r3, r1, 0x20 +/* 80182004 0017EF64 48 19 26 F5 */ bl CanBeNormalized__9CVector3fCFv +/* 80182008 0017EF68 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8018200C 0017EF6C 41 82 00 D8 */ beq lbl_801820E4 +/* 80182010 0017EF70 38 61 00 20 */ addi r3, r1, 0x20 +/* 80182014 0017EF74 48 19 28 E5 */ bl Normalize__9CVector3fFv +/* 80182018 0017EF78 C0 1F 01 3C */ lfs f0, 0x13c(r31) +/* 8018201C 0017EF7C C0 81 00 24 */ lfs f4, 0x24(r1) +/* 80182020 0017EF80 C0 3F 01 38 */ lfs f1, 0x138(r31) +/* 80182024 0017EF84 EC 00 01 32 */ fmuls f0, f0, f4 +/* 80182028 0017EF88 C0 61 00 20 */ lfs f3, 0x20(r1) +/* 8018202C 0017EF8C C0 5F 01 40 */ lfs f2, 0x140(r31) +/* 80182030 0017EF90 C0 A1 00 28 */ lfs f5, 0x28(r1) +/* 80182034 0017EF94 EC 21 00 FA */ fmadds f1, f1, f3, f0 +/* 80182038 0017EF98 C0 02 A2 D8 */ lfs f0, lbl_805ABFF8@sda21(r2) +/* 8018203C 0017EF9C EC 42 09 7A */ fmadds f2, f2, f5, f1 +/* 80182040 0017EFA0 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80182044 0017EFA4 40 80 00 54 */ bge lbl_80182098 +/* 80182048 0017EFA8 FC 60 F8 90 */ fmr f3, f31 +/* 8018204C 0017EFAC C0 3F 00 E8 */ lfs f1, 0xe8(r31) +/* 80182050 0017EFB0 48 00 08 C1 */ bl CollisionImpulseFiniteVsInfinite__Ffff +/* 80182054 0017EFB4 C0 61 00 24 */ lfs f3, 0x24(r1) +/* 80182058 0017EFB8 C0 41 00 28 */ lfs f2, 0x28(r1) +/* 8018205C 0017EFBC C0 01 00 20 */ lfs f0, 0x20(r1) +/* 80182060 0017EFC0 EC 61 00 F2 */ fmuls f3, f1, f3 +/* 80182064 0017EFC4 EC 41 00 B2 */ fmuls f2, f1, f2 +/* 80182068 0017EFC8 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8018206C 0017EFCC D0 61 00 18 */ stfs f3, 0x18(r1) +/* 80182070 0017EFD0 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80182074 0017EFD4 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 80182078 0017EFD8 4B E9 94 BD */ bl Identity__10CAxisAngleFv +/* 8018207C 0017EFDC 7C 65 1B 78 */ mr r5, r3 +/* 80182080 0017EFE0 7F E3 FB 78 */ mr r3, r31 +/* 80182084 0017EFE4 38 81 00 14 */ addi r4, r1, 0x14 +/* 80182088 0017EFE8 4B F9 A3 11 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +/* 8018208C 0017EFEC 7F E3 FB 78 */ mr r3, r31 +/* 80182090 0017EFF0 4B F9 90 ED */ bl UseCollisionImpulses__13CPhysicsActorFv +/* 80182094 0017EFF4 48 00 00 50 */ b lbl_801820E4 +lbl_80182098: +/* 80182098 0017EFF8 C0 02 A2 D0 */ lfs f0, lbl_805ABFF0@sda21(r2) +/* 8018209C 0017EFFC FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801820A0 0017F000 40 80 00 44 */ bge lbl_801820E4 +/* 801820A4 0017F004 C0 22 A2 DC */ lfs f1, lbl_805ABFFC@sda21(r2) +/* 801820A8 0017F008 C0 1F 00 E8 */ lfs f0, 0xe8(r31) +/* 801820AC 0017F00C EC 01 00 32 */ fmuls f0, f1, f0 +/* 801820B0 0017F010 EC 40 00 F2 */ fmuls f2, f0, f3 +/* 801820B4 0017F014 EC 20 01 32 */ fmuls f1, f0, f4 +/* 801820B8 0017F018 EC 00 01 72 */ fmuls f0, f0, f5 +/* 801820BC 0017F01C D0 41 00 08 */ stfs f2, 8(r1) +/* 801820C0 0017F020 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801820C4 0017F024 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801820C8 0017F028 4B E9 94 6D */ bl Identity__10CAxisAngleFv +/* 801820CC 0017F02C 7C 65 1B 78 */ mr r5, r3 +/* 801820D0 0017F030 7F E3 FB 78 */ mr r3, r31 +/* 801820D4 0017F034 38 81 00 08 */ addi r4, r1, 8 +/* 801820D8 0017F038 4B F9 A2 C1 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +/* 801820DC 0017F03C 7F E3 FB 78 */ mr r3, r31 +/* 801820E0 0017F040 4B F9 90 9D */ bl UseCollisionImpulses__13CPhysicsActorFv +lbl_801820E4: +/* 801820E4 0017F044 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 801820E8 0017F048 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801820EC 0017F04C CB E1 00 40 */ lfd f31, 0x40(r1) +/* 801820F0 0017F050 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 801820F4 0017F054 7C 08 03 A6 */ mtlr r0 +/* 801820F8 0017F058 38 21 00 50 */ addi r1, r1, 0x50 +/* 801820FC 0017F05C 4E 80 00 20 */ blr + +.global CollideWithDynamicBodyNoRot__14CGameCollisionFR13CPhysicsActorR13CPhysicsActorRC14CCollisionInfofb +CollideWithDynamicBodyNoRot__14CGameCollisionFR13CPhysicsActorR13CPhysicsActorRC14CCollisionInfofb: +/* 80182100 0017F060 94 21 FE C0 */ stwu r1, -0x140(r1) +/* 80182104 0017F064 7C 08 02 A6 */ mflr r0 +/* 80182108 0017F068 90 01 01 44 */ stw r0, 0x144(r1) +/* 8018210C 0017F06C DB E1 01 30 */ stfd f31, 0x130(r1) +/* 80182110 0017F070 F3 E1 01 38 */ psq_st f31, 312(r1), 0, qr0 +/* 80182114 0017F074 DB C1 01 20 */ stfd f30, 0x120(r1) +/* 80182118 0017F078 F3 C1 01 28 */ psq_st f30, 296(r1), 0, qr0 +/* 8018211C 0017F07C DB A1 01 10 */ stfd f29, 0x110(r1) +/* 80182120 0017F080 F3 A1 01 18 */ psq_st f29, 280(r1), 0, qr0 +/* 80182124 0017F084 DB 81 01 00 */ stfd f28, 0x100(r1) +/* 80182128 0017F088 F3 81 01 08 */ psq_st f28, 264(r1), 0, qr0 +/* 8018212C 0017F08C DB 61 00 F0 */ stfd f27, 0xf0(r1) +/* 80182130 0017F090 F3 61 00 F8 */ psq_st f27, 248(r1), 0, qr0 +/* 80182134 0017F094 DB 41 00 E0 */ stfd f26, 0xe0(r1) +/* 80182138 0017F098 F3 41 00 E8 */ psq_st f26, 232(r1), 0, qr0 +/* 8018213C 0017F09C DB 21 00 D0 */ stfd f25, 0xd0(r1) +/* 80182140 0017F0A0 F3 21 00 D8 */ psq_st f25, 216(r1), 0, qr0 +/* 80182144 0017F0A4 DB 01 00 C0 */ stfd f24, 0xc0(r1) +/* 80182148 0017F0A8 F3 01 00 C8 */ psq_st f24, 200(r1), 0, qr0 +/* 8018214C 0017F0AC DA E1 00 B0 */ stfd f23, 0xb0(r1) +/* 80182150 0017F0B0 F2 E1 00 B8 */ psq_st f23, 184(r1), 0, qr0 +/* 80182154 0017F0B4 93 E1 00 AC */ stw r31, 0xac(r1) +/* 80182158 0017F0B8 93 C1 00 A8 */ stw r30, 0xa8(r1) +/* 8018215C 0017F0BC 93 A1 00 A4 */ stw r29, 0xa4(r1) +/* 80182160 0017F0C0 54 C0 06 3F */ clrlwi. r0, r6, 0x18 +/* 80182164 0017F0C4 FF 00 08 90 */ fmr f24, f1 +/* 80182168 0017F0C8 C3 A5 00 48 */ lfs f29, 0x48(r5) +/* 8018216C 0017F0CC 7C 7E 1B 78 */ mr r30, r3 +/* 80182170 0017F0D0 C3 85 00 4C */ lfs f28, 0x4c(r5) +/* 80182174 0017F0D4 7C 9F 23 78 */ mr r31, r4 +/* 80182178 0017F0D8 C3 65 00 50 */ lfs f27, 0x50(r5) +/* 8018217C 0017F0DC 41 82 00 08 */ beq lbl_80182184 +/* 80182180 0017F0E0 C3 62 A2 A8 */ lfs f27, lbl_805ABFC8@sda21(r2) +lbl_80182184: +/* 80182184 0017F0E4 7F C4 F3 78 */ mr r4, r30 +/* 80182188 0017F0E8 7F E5 FB 78 */ mr r5, r31 +/* 8018218C 0017F0EC 38 61 00 6C */ addi r3, r1, 0x6c +/* 80182190 0017F0F0 4B FF E1 7D */ bl GetActorRelativeVelocities__14CGameCollisionFPC13CPhysicsActorPC13CPhysicsActor +/* 80182194 0017F0F4 C0 01 00 70 */ lfs f0, 0x70(r1) +/* 80182198 0017F0F8 7F C3 F3 78 */ mr r3, r30 +/* 8018219C 0017F0FC C0 21 00 6C */ lfs f1, 0x6c(r1) +/* 801821A0 0017F100 EC 00 07 32 */ fmuls f0, f0, f28 +/* 801821A4 0017F104 C0 41 00 74 */ lfs f2, 0x74(r1) +/* 801821A8 0017F108 C3 FE 00 E8 */ lfs f31, 0xe8(r30) +/* 801821AC 0017F10C C3 DF 00 E8 */ lfs f30, 0xe8(r31) +/* 801821B0 0017F110 EC 01 07 7A */ fmadds f0, f1, f29, f0 +/* 801821B4 0017F114 EE E2 06 FA */ fmadds f23, f2, f27, f0 +/* 801821B8 0017F118 4B F9 83 01 */ bl GetMaximumCollisionVelocity__13CPhysicsActorCFv +/* 801821BC 0017F11C D0 21 00 10 */ stfs f1, 0x10(r1) +/* 801821C0 0017F120 38 7E 01 38 */ addi r3, r30, 0x138 +/* 801821C4 0017F124 48 19 26 F5 */ bl Magnitude__9CVector3fCFv +/* 801821C8 0017F128 FC 40 08 18 */ frsp f2, f1 +/* 801821CC 0017F12C C0 01 00 10 */ lfs f0, 0x10(r1) +/* 801821D0 0017F130 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801821D4 0017F134 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801821D8 0017F138 40 80 00 0C */ bge lbl_801821E4 +/* 801821DC 0017F13C 38 61 00 10 */ addi r3, r1, 0x10 +/* 801821E0 0017F140 48 00 00 08 */ b lbl_801821E8 +lbl_801821E4: +/* 801821E4 0017F144 38 61 00 14 */ addi r3, r1, 0x14 +lbl_801821E8: +/* 801821E8 0017F148 C3 43 00 00 */ lfs f26, 0(r3) +/* 801821EC 0017F14C 7F E3 FB 78 */ mr r3, r31 +/* 801821F0 0017F150 4B F9 82 C9 */ bl GetMaximumCollisionVelocity__13CPhysicsActorCFv +/* 801821F4 0017F154 D0 21 00 08 */ stfs f1, 8(r1) +/* 801821F8 0017F158 38 7F 01 38 */ addi r3, r31, 0x138 +/* 801821FC 0017F15C 48 19 26 BD */ bl Magnitude__9CVector3fCFv +/* 80182200 0017F160 FC 40 08 18 */ frsp f2, f1 +/* 80182204 0017F164 C0 01 00 08 */ lfs f0, 8(r1) +/* 80182208 0017F168 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 8018220C 0017F16C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80182210 0017F170 40 80 00 0C */ bge lbl_8018221C +/* 80182214 0017F174 38 C1 00 08 */ addi r6, r1, 8 +/* 80182218 0017F178 48 00 00 08 */ b lbl_80182220 +lbl_8018221C: +/* 8018221C 0017F17C 38 C1 00 0C */ addi r6, r1, 0xc +lbl_80182220: +/* 80182220 0017F180 80 7E 00 68 */ lwz r3, 0x68(r30) +/* 80182224 0017F184 38 00 08 00 */ li r0, 0x800 +/* 80182228 0017F188 80 BE 00 6C */ lwz r5, 0x6c(r30) +/* 8018222C 0017F18C 38 80 00 00 */ li r4, 0 +/* 80182230 0017F190 7C 60 00 38 */ and r0, r3, r0 +/* 80182234 0017F194 C3 26 00 00 */ lfs f25, 0(r6) +/* 80182238 0017F198 7C A3 20 38 */ and r3, r5, r4 +/* 8018223C 0017F19C 38 C0 00 01 */ li r6, 1 +/* 80182240 0017F1A0 7C 63 22 78 */ xor r3, r3, r4 +/* 80182244 0017F1A4 7C 00 22 78 */ xor r0, r0, r4 +/* 80182248 0017F1A8 7C 60 03 79 */ or. r0, r3, r0 +/* 8018224C 0017F1AC 40 82 00 14 */ bne lbl_80182260 +/* 80182250 0017F1B0 C0 02 A2 A8 */ lfs f0, lbl_805ABFC8@sda21(r2) +/* 80182254 0017F1B4 FC 00 F8 00 */ fcmpu cr0, f0, f31 +/* 80182258 0017F1B8 41 82 00 08 */ beq lbl_80182260 +/* 8018225C 0017F1BC 7C 86 23 78 */ mr r6, r4 +lbl_80182260: +/* 80182260 0017F1C0 80 7F 00 68 */ lwz r3, 0x68(r31) +/* 80182264 0017F1C4 38 00 08 00 */ li r0, 0x800 +/* 80182268 0017F1C8 80 BF 00 6C */ lwz r5, 0x6c(r31) +/* 8018226C 0017F1CC 38 80 00 00 */ li r4, 0 +/* 80182270 0017F1D0 7C 60 00 38 */ and r0, r3, r0 +/* 80182274 0017F1D4 3B A0 00 01 */ li r29, 1 +/* 80182278 0017F1D8 7C A3 20 38 */ and r3, r5, r4 +/* 8018227C 0017F1DC 7C 63 22 78 */ xor r3, r3, r4 +/* 80182280 0017F1E0 7C 00 22 78 */ xor r0, r0, r4 +/* 80182284 0017F1E4 7C 60 03 79 */ or. r0, r3, r0 +/* 80182288 0017F1E8 40 82 00 14 */ bne lbl_8018229C +/* 8018228C 0017F1EC C0 02 A2 A8 */ lfs f0, lbl_805ABFC8@sda21(r2) +/* 80182290 0017F1F0 FC 00 F0 00 */ fcmpu cr0, f0, f30 +/* 80182294 0017F1F4 41 82 00 08 */ beq lbl_8018229C +/* 80182298 0017F1F8 7C 9D 23 78 */ mr r29, r4 +lbl_8018229C: +/* 8018229C 0017F1FC C0 02 A2 D8 */ lfs f0, lbl_805ABFF8@sda21(r2) +/* 801822A0 0017F200 FC 17 00 40 */ fcmpo cr0, f23, f0 +/* 801822A4 0017F204 40 80 01 4C */ bge lbl_801823F0 +/* 801822A8 0017F208 54 C0 06 3F */ clrlwi. r0, r6, 0x18 +/* 801822AC 0017F20C 40 82 00 C4 */ bne lbl_80182370 +/* 801822B0 0017F210 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 801822B4 0017F214 40 82 00 7C */ bne lbl_80182330 +/* 801822B8 0017F218 FC 20 F8 90 */ fmr f1, f31 +/* 801822BC 0017F21C FC 40 F0 90 */ fmr f2, f30 +/* 801822C0 0017F220 FC 60 B8 90 */ fmr f3, f23 +/* 801822C4 0017F224 FC 80 C0 90 */ fmr f4, f24 +/* 801822C8 0017F228 48 00 06 61 */ bl CollisionImpulseFiniteVsFinite__Fffff +/* 801822CC 0017F22C FF 00 08 90 */ fmr f24, f1 +/* 801822D0 0017F230 EC 58 07 72 */ fmuls f2, f24, f29 +/* 801822D4 0017F234 EC 38 07 32 */ fmuls f1, f24, f28 +/* 801822D8 0017F238 EC 18 06 F2 */ fmuls f0, f24, f27 +/* 801822DC 0017F23C D0 41 00 60 */ stfs f2, 0x60(r1) +/* 801822E0 0017F240 D0 21 00 64 */ stfs f1, 0x64(r1) +/* 801822E4 0017F244 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 801822E8 0017F248 4B E9 92 4D */ bl Identity__10CAxisAngleFv +/* 801822EC 0017F24C 7C 65 1B 78 */ mr r5, r3 +/* 801822F0 0017F250 7F C3 F3 78 */ mr r3, r30 +/* 801822F4 0017F254 38 81 00 60 */ addi r4, r1, 0x60 +/* 801822F8 0017F258 4B F9 A0 A1 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +/* 801822FC 0017F25C FC 00 C0 50 */ fneg f0, f24 +/* 80182300 0017F260 EC 40 07 72 */ fmuls f2, f0, f29 +/* 80182304 0017F264 EC 20 07 32 */ fmuls f1, f0, f28 +/* 80182308 0017F268 EC 00 06 F2 */ fmuls f0, f0, f27 +/* 8018230C 0017F26C D0 41 00 54 */ stfs f2, 0x54(r1) +/* 80182310 0017F270 D0 21 00 58 */ stfs f1, 0x58(r1) +/* 80182314 0017F274 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 80182318 0017F278 4B E9 92 1D */ bl Identity__10CAxisAngleFv +/* 8018231C 0017F27C 7C 65 1B 78 */ mr r5, r3 +/* 80182320 0017F280 7F E3 FB 78 */ mr r3, r31 +/* 80182324 0017F284 38 81 00 54 */ addi r4, r1, 0x54 +/* 80182328 0017F288 4B F9 A0 71 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +/* 8018232C 0017F28C 48 00 00 B0 */ b lbl_801823DC +lbl_80182330: +/* 80182330 0017F290 FC 20 F8 90 */ fmr f1, f31 +/* 80182334 0017F294 FC 40 B8 90 */ fmr f2, f23 +/* 80182338 0017F298 FC 60 C0 90 */ fmr f3, f24 +/* 8018233C 0017F29C 48 00 05 D5 */ bl CollisionImpulseFiniteVsInfinite__Ffff +/* 80182340 0017F2A0 EC 61 07 72 */ fmuls f3, f1, f29 +/* 80182344 0017F2A4 EC 41 07 32 */ fmuls f2, f1, f28 +/* 80182348 0017F2A8 EC 01 06 F2 */ fmuls f0, f1, f27 +/* 8018234C 0017F2AC D0 61 00 90 */ stfs f3, 0x90(r1) +/* 80182350 0017F2B0 D0 41 00 94 */ stfs f2, 0x94(r1) +/* 80182354 0017F2B4 D0 01 00 98 */ stfs f0, 0x98(r1) +/* 80182358 0017F2B8 4B E9 91 DD */ bl Identity__10CAxisAngleFv +/* 8018235C 0017F2BC 7C 65 1B 78 */ mr r5, r3 +/* 80182360 0017F2C0 7F C3 F3 78 */ mr r3, r30 +/* 80182364 0017F2C4 38 81 00 90 */ addi r4, r1, 0x90 +/* 80182368 0017F2C8 4B F9 A0 31 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +/* 8018236C 0017F2CC 48 00 00 70 */ b lbl_801823DC +lbl_80182370: +/* 80182370 0017F2D0 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 80182374 0017F2D4 40 82 00 48 */ bne lbl_801823BC +/* 80182378 0017F2D8 FC 20 F0 90 */ fmr f1, f30 +/* 8018237C 0017F2DC FC 40 B8 90 */ fmr f2, f23 +/* 80182380 0017F2E0 FC 60 C0 90 */ fmr f3, f24 +/* 80182384 0017F2E4 48 00 05 8D */ bl CollisionImpulseFiniteVsInfinite__Ffff +/* 80182388 0017F2E8 FC 00 08 50 */ fneg f0, f1 +/* 8018238C 0017F2EC EC 40 07 72 */ fmuls f2, f0, f29 +/* 80182390 0017F2F0 EC 20 07 32 */ fmuls f1, f0, f28 +/* 80182394 0017F2F4 EC 00 06 F2 */ fmuls f0, f0, f27 +/* 80182398 0017F2F8 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 8018239C 0017F2FC D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 801823A0 0017F300 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 801823A4 0017F304 4B E9 91 91 */ bl Identity__10CAxisAngleFv +/* 801823A8 0017F308 7C 65 1B 78 */ mr r5, r3 +/* 801823AC 0017F30C 7F E3 FB 78 */ mr r3, r31 +/* 801823B0 0017F310 38 81 00 48 */ addi r4, r1, 0x48 +/* 801823B4 0017F314 4B F9 9F E5 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +/* 801823B8 0017F318 48 00 00 24 */ b lbl_801823DC +lbl_801823BC: +/* 801823BC 0017F31C 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801823C0 0017F320 7F C3 F3 78 */ mr r3, r30 +/* 801823C4 0017F324 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 801823C8 0017F328 4B F9 88 D9 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 801823CC 0017F32C 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801823D0 0017F330 7F E3 FB 78 */ mr r3, r31 +/* 801823D4 0017F334 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 801823D8 0017F338 4B F9 88 C9 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +lbl_801823DC: +/* 801823DC 0017F33C 7F C3 F3 78 */ mr r3, r30 +/* 801823E0 0017F340 4B F9 8D 9D */ bl UseCollisionImpulses__13CPhysicsActorFv +/* 801823E4 0017F344 7F E3 FB 78 */ mr r3, r31 +/* 801823E8 0017F348 4B F9 8D 95 */ bl UseCollisionImpulses__13CPhysicsActorFv +/* 801823EC 0017F34C 48 00 00 D0 */ b lbl_801824BC +lbl_801823F0: +/* 801823F0 0017F350 C0 02 A2 E0 */ lfs f0, lbl_805AC000@sda21(r2) +/* 801823F4 0017F354 FC 17 00 40 */ fcmpo cr0, f23, f0 +/* 801823F8 0017F358 40 80 00 C4 */ bge lbl_801824BC +/* 801823FC 0017F35C 54 C0 06 3F */ clrlwi. r0, r6, 0x18 +/* 80182400 0017F360 40 82 00 5C */ bne lbl_8018245C +/* 80182404 0017F364 38 60 00 00 */ li r3, 0 +/* 80182408 0017F368 4B F3 20 F1 */ bl IsUser__Fi +/* 8018240C 0017F36C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80182410 0017F370 41 82 00 10 */ beq lbl_80182420 +/* 80182414 0017F374 80 6D A4 60 */ lwz r3, lbl_805A9020@sda21(r13) +/* 80182418 0017F378 38 03 00 01 */ addi r0, r3, 1 +/* 8018241C 0017F37C 90 0D A4 60 */ stw r0, lbl_805A9020@sda21(r13) +lbl_80182420: +/* 80182420 0017F380 C0 02 A2 DC */ lfs f0, lbl_805ABFFC@sda21(r2) +/* 80182424 0017F384 EC 00 07 F2 */ fmuls f0, f0, f31 +/* 80182428 0017F388 EC 40 07 72 */ fmuls f2, f0, f29 +/* 8018242C 0017F38C EC 20 07 32 */ fmuls f1, f0, f28 +/* 80182430 0017F390 EC 00 06 F2 */ fmuls f0, f0, f27 +/* 80182434 0017F394 D0 41 00 84 */ stfs f2, 0x84(r1) +/* 80182438 0017F398 D0 21 00 88 */ stfs f1, 0x88(r1) +/* 8018243C 0017F39C D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 80182440 0017F3A0 4B E9 90 F5 */ bl Identity__10CAxisAngleFv +/* 80182444 0017F3A4 7C 65 1B 78 */ mr r5, r3 +/* 80182448 0017F3A8 7F C3 F3 78 */ mr r3, r30 +/* 8018244C 0017F3AC 38 81 00 84 */ addi r4, r1, 0x84 +/* 80182450 0017F3B0 4B F9 9F 49 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +/* 80182454 0017F3B4 7F C3 F3 78 */ mr r3, r30 +/* 80182458 0017F3B8 4B F9 8D 25 */ bl UseCollisionImpulses__13CPhysicsActorFv +lbl_8018245C: +/* 8018245C 0017F3BC 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 80182460 0017F3C0 40 82 00 5C */ bne lbl_801824BC +/* 80182464 0017F3C4 38 60 00 00 */ li r3, 0 +/* 80182468 0017F3C8 4B F3 20 91 */ bl IsUser__Fi +/* 8018246C 0017F3CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80182470 0017F3D0 41 82 00 10 */ beq lbl_80182480 +/* 80182474 0017F3D4 80 6D A4 60 */ lwz r3, lbl_805A9020@sda21(r13) +/* 80182478 0017F3D8 38 03 00 01 */ addi r0, r3, 1 +/* 8018247C 0017F3DC 90 0D A4 60 */ stw r0, lbl_805A9020@sda21(r13) +lbl_80182480: +/* 80182480 0017F3E0 C0 02 A2 E4 */ lfs f0, lbl_805AC004@sda21(r2) +/* 80182484 0017F3E4 EC 00 07 B2 */ fmuls f0, f0, f30 +/* 80182488 0017F3E8 EC 40 07 72 */ fmuls f2, f0, f29 +/* 8018248C 0017F3EC EC 20 07 32 */ fmuls f1, f0, f28 +/* 80182490 0017F3F0 EC 00 06 F2 */ fmuls f0, f0, f27 +/* 80182494 0017F3F4 D0 41 00 78 */ stfs f2, 0x78(r1) +/* 80182498 0017F3F8 D0 21 00 7C */ stfs f1, 0x7c(r1) +/* 8018249C 0017F3FC D0 01 00 80 */ stfs f0, 0x80(r1) +/* 801824A0 0017F400 4B E9 90 95 */ bl Identity__10CAxisAngleFv +/* 801824A4 0017F404 7C 65 1B 78 */ mr r5, r3 +/* 801824A8 0017F408 7F E3 FB 78 */ mr r3, r31 +/* 801824AC 0017F40C 38 81 00 78 */ addi r4, r1, 0x78 +/* 801824B0 0017F410 4B F9 9E E9 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +/* 801824B4 0017F414 7F E3 FB 78 */ mr r3, r31 +/* 801824B8 0017F418 4B F9 8C C5 */ bl UseCollisionImpulses__13CPhysicsActorFv +lbl_801824BC: +/* 801824BC 0017F41C 38 7E 01 38 */ addi r3, r30, 0x138 +/* 801824C0 0017F420 48 19 23 F9 */ bl Magnitude__9CVector3fCFv +/* 801824C4 0017F424 FC 01 D0 40 */ fcmpo cr0, f1, f26 +/* 801824C8 0017F428 40 81 00 5C */ ble lbl_80182524 +/* 801824CC 0017F42C C0 02 A2 D4 */ lfs f0, lbl_805ABFF4@sda21(r2) +/* 801824D0 0017F430 7F C3 F3 78 */ mr r3, r30 +/* 801824D4 0017F434 C0 5E 01 3C */ lfs f2, 0x13c(r30) +/* 801824D8 0017F438 38 81 00 3C */ addi r4, r1, 0x3c +/* 801824DC 0017F43C EC 80 08 24 */ fdivs f4, f0, f1 +/* 801824E0 0017F440 C0 3E 01 40 */ lfs f1, 0x140(r30) +/* 801824E4 0017F444 C0 1E 01 38 */ lfs f0, 0x138(r30) +/* 801824E8 0017F448 EC 64 00 B2 */ fmuls f3, f4, f2 +/* 801824EC 0017F44C EC 44 00 72 */ fmuls f2, f4, f1 +/* 801824F0 0017F450 EC 24 00 32 */ fmuls f1, f4, f0 +/* 801824F4 0017F454 EC 9A 00 F2 */ fmuls f4, f26, f3 +/* 801824F8 0017F458 D0 61 00 34 */ stfs f3, 0x34(r1) +/* 801824FC 0017F45C EC 7A 00 B2 */ fmuls f3, f26, f2 +/* 80182500 0017F460 EC 1A 00 72 */ fmuls f0, f26, f1 +/* 80182504 0017F464 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 80182508 0017F468 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 8018250C 0017F46C D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 80182510 0017F470 D0 81 00 40 */ stfs f4, 0x40(r1) +/* 80182514 0017F474 D0 61 00 44 */ stfs f3, 0x44(r1) +/* 80182518 0017F478 4B F9 87 89 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 8018251C 0017F47C 38 60 00 00 */ li r3, 0 +/* 80182520 0017F480 4B F3 1F D9 */ bl IsUser__Fi +lbl_80182524: +/* 80182524 0017F484 38 7F 01 38 */ addi r3, r31, 0x138 +/* 80182528 0017F488 48 19 23 91 */ bl Magnitude__9CVector3fCFv +/* 8018252C 0017F48C FC 01 C8 40 */ fcmpo cr0, f1, f25 +/* 80182530 0017F490 40 81 00 5C */ ble lbl_8018258C +/* 80182534 0017F494 C0 02 A2 D4 */ lfs f0, lbl_805ABFF4@sda21(r2) +/* 80182538 0017F498 7F E3 FB 78 */ mr r3, r31 +/* 8018253C 0017F49C C0 5F 01 3C */ lfs f2, 0x13c(r31) +/* 80182540 0017F4A0 38 81 00 24 */ addi r4, r1, 0x24 +/* 80182544 0017F4A4 EC 80 08 24 */ fdivs f4, f0, f1 +/* 80182548 0017F4A8 C0 3F 01 40 */ lfs f1, 0x140(r31) +/* 8018254C 0017F4AC C0 1F 01 38 */ lfs f0, 0x138(r31) +/* 80182550 0017F4B0 EC 64 00 B2 */ fmuls f3, f4, f2 +/* 80182554 0017F4B4 EC 44 00 72 */ fmuls f2, f4, f1 +/* 80182558 0017F4B8 EC 24 00 32 */ fmuls f1, f4, f0 +/* 8018255C 0017F4BC EC 99 00 F2 */ fmuls f4, f25, f3 +/* 80182560 0017F4C0 D0 61 00 1C */ stfs f3, 0x1c(r1) +/* 80182564 0017F4C4 EC 79 00 B2 */ fmuls f3, f25, f2 +/* 80182568 0017F4C8 EC 19 00 72 */ fmuls f0, f25, f1 +/* 8018256C 0017F4CC D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80182570 0017F4D0 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 80182574 0017F4D4 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80182578 0017F4D8 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 8018257C 0017F4DC D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 80182580 0017F4E0 4B F9 87 21 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 80182584 0017F4E4 38 60 00 00 */ li r3, 0 +/* 80182588 0017F4E8 4B F3 1F 71 */ bl IsUser__Fi +lbl_8018258C: +/* 8018258C 0017F4EC E3 E1 01 38 */ psq_l f31, 312(r1), 0, qr0 +/* 80182590 0017F4F0 CB E1 01 30 */ lfd f31, 0x130(r1) +/* 80182594 0017F4F4 E3 C1 01 28 */ psq_l f30, 296(r1), 0, qr0 +/* 80182598 0017F4F8 CB C1 01 20 */ lfd f30, 0x120(r1) +/* 8018259C 0017F4FC E3 A1 01 18 */ psq_l f29, 280(r1), 0, qr0 +/* 801825A0 0017F500 CB A1 01 10 */ lfd f29, 0x110(r1) +/* 801825A4 0017F504 E3 81 01 08 */ psq_l f28, 264(r1), 0, qr0 +/* 801825A8 0017F508 CB 81 01 00 */ lfd f28, 0x100(r1) +/* 801825AC 0017F50C E3 61 00 F8 */ psq_l f27, 248(r1), 0, qr0 +/* 801825B0 0017F510 CB 61 00 F0 */ lfd f27, 0xf0(r1) +/* 801825B4 0017F514 E3 41 00 E8 */ psq_l f26, 232(r1), 0, qr0 +/* 801825B8 0017F518 CB 41 00 E0 */ lfd f26, 0xe0(r1) +/* 801825BC 0017F51C E3 21 00 D8 */ psq_l f25, 216(r1), 0, qr0 +/* 801825C0 0017F520 CB 21 00 D0 */ lfd f25, 0xd0(r1) +/* 801825C4 0017F524 E3 01 00 C8 */ psq_l f24, 200(r1), 0, qr0 +/* 801825C8 0017F528 CB 01 00 C0 */ lfd f24, 0xc0(r1) +/* 801825CC 0017F52C E2 E1 00 B8 */ psq_l f23, 184(r1), 0, qr0 +/* 801825D0 0017F530 CA E1 00 B0 */ lfd f23, 0xb0(r1) +/* 801825D4 0017F534 83 E1 00 AC */ lwz r31, 0xac(r1) +/* 801825D8 0017F538 83 C1 00 A8 */ lwz r30, 0xa8(r1) +/* 801825DC 0017F53C 80 01 01 44 */ lwz r0, 0x144(r1) +/* 801825E0 0017F540 83 A1 00 A4 */ lwz r29, 0xa4(r1) +/* 801825E4 0017F544 7C 08 03 A6 */ mtlr r0 +/* 801825E8 0017F548 38 21 01 40 */ addi r1, r1, 0x140 +/* 801825EC 0017F54C 4E 80 00 20 */ blr + +.global ResolveCollisions__14CGameCollisionFR13CPhysicsActorP13CPhysicsActorRC18CCollisionInfoList +ResolveCollisions__14CGameCollisionFR13CPhysicsActorP13CPhysicsActorRC18CCollisionInfoList: +/* 801825F0 0017F550 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 801825F4 0017F554 7C 08 02 A6 */ mflr r0 +/* 801825F8 0017F558 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 801825FC 0017F55C DB E1 00 A0 */ stfd f31, 0xa0(r1) +/* 80182600 0017F560 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 +/* 80182604 0017F564 BF 01 00 80 */ stmw r24, 0x80(r1) +/* 80182608 0017F568 7C BA 2B 78 */ mr r26, r5 +/* 8018260C 0017F56C 7C 78 1B 78 */ mr r24, r3 +/* 80182610 0017F570 7C 99 23 78 */ mr r25, r4 +/* 80182614 0017F574 3B C1 00 60 */ addi r30, r1, 0x60 +/* 80182618 0017F578 3B FA 00 04 */ addi r31, r26, 4 +/* 8018261C 0017F57C 3B A1 00 58 */ addi r29, r1, 0x58 +/* 80182620 0017F580 3B 81 00 50 */ addi r28, r1, 0x50 +/* 80182624 0017F584 3B 60 00 00 */ li r27, 0 +/* 80182628 0017F588 48 00 00 7C */ b lbl_801826A4 +lbl_8018262C: +/* 8018262C 0017F58C 7F E4 FB 78 */ mr r4, r31 +/* 80182630 0017F590 38 61 00 18 */ addi r3, r1, 0x18 +/* 80182634 0017F594 4B F6 EE 6D */ bl __ct__14CCollisionInfoFRC14CCollisionInfo +/* 80182638 0017F598 7F 03 C3 78 */ mr r3, r24 +/* 8018263C 0017F59C 4B F9 7E 9D */ bl GetCoefficientOfRestitutionModifier__13CPhysicsActorCFv +/* 80182640 0017F5A0 FF E0 08 90 */ fmr f31, f1 +/* 80182644 0017F5A4 38 61 00 18 */ addi r3, r1, 0x18 +/* 80182648 0017F5A8 48 00 03 05 */ bl GetCoefficientOfRestitution__14CGameCollisionFRC14CCollisionInfo +/* 8018264C 0017F5AC 28 19 00 00 */ cmplwi r25, 0 +/* 80182650 0017F5B0 EF E1 F8 2A */ fadds f31, f1, f31 +/* 80182654 0017F5B4 41 82 00 20 */ beq lbl_80182674 +/* 80182658 0017F5B8 FC 20 F8 90 */ fmr f1, f31 +/* 8018265C 0017F5BC 7F 03 C3 78 */ mr r3, r24 +/* 80182660 0017F5C0 7F 24 CB 78 */ mr r4, r25 +/* 80182664 0017F5C4 38 A1 00 18 */ addi r5, r1, 0x18 +/* 80182668 0017F5C8 38 C0 00 00 */ li r6, 0 +/* 8018266C 0017F5CC 4B FF FA 95 */ bl CollideWithDynamicBodyNoRot__14CGameCollisionFR13CPhysicsActorR13CPhysicsActorRC14CCollisionInfofb +/* 80182670 0017F5D0 48 00 00 2C */ b lbl_8018269C +lbl_80182674: +/* 80182674 0017F5D4 7F C4 F3 78 */ mr r4, r30 +/* 80182678 0017F5D8 38 61 00 08 */ addi r3, r1, 8 +/* 8018267C 0017F5DC 48 19 17 55 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 80182680 0017F5E0 FC 20 F8 90 */ fmr f1, f31 +/* 80182684 0017F5E4 7C 66 1B 78 */ mr r6, r3 +/* 80182688 0017F5E8 7F 03 C3 78 */ mr r3, r24 +/* 8018268C 0017F5EC 7F 84 E3 78 */ mr r4, r28 +/* 80182690 0017F5F0 7F A5 EB 78 */ mr r5, r29 +/* 80182694 0017F5F4 38 E0 00 00 */ li r7, 0 +/* 80182698 0017F5F8 4B FF F8 D5 */ bl CollideWithStaticBodyNoRot__14CGameCollisionFR13CPhysicsActorRC13CMaterialListRC13CMaterialListRC13CUnitVector3ffb +lbl_8018269C: +/* 8018269C 0017F5FC 3B FF 00 60 */ addi r31, r31, 0x60 +/* 801826A0 0017F600 3B 7B 00 01 */ addi r27, r27, 1 +lbl_801826A4: +/* 801826A4 0017F604 80 1A 00 00 */ lwz r0, 0(r26) +/* 801826A8 0017F608 7C 1B 00 00 */ cmpw r27, r0 +/* 801826AC 0017F60C 41 80 FF 80 */ blt lbl_8018262C +/* 801826B0 0017F610 E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 +/* 801826B4 0017F614 CB E1 00 A0 */ lfd f31, 0xa0(r1) +/* 801826B8 0017F618 BB 01 00 80 */ lmw r24, 0x80(r1) +/* 801826BC 0017F61C 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 801826C0 0017F620 7C 08 03 A6 */ mtlr r0 +/* 801826C4 0017F624 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 801826C8 0017F628 4E 80 00 20 */ blr + +.global GetMinExtentForCollisionPrimitive__14CGameCollisionFRC19CCollisionPrimitive +GetMinExtentForCollisionPrimitive__14CGameCollisionFRC19CCollisionPrimitive: +/* 801826CC 0017F62C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801826D0 0017F630 7C 08 02 A6 */ mflr r0 +/* 801826D4 0017F634 90 01 00 34 */ stw r0, 0x34(r1) +/* 801826D8 0017F638 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801826DC 0017F63C 7C 7F 1B 78 */ mr r31, r3 +/* 801826E0 0017F640 81 83 00 00 */ lwz r12, 0(r3) +/* 801826E4 0017F644 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801826E8 0017F648 7D 89 03 A6 */ mtctr r12 +/* 801826EC 0017F64C 4E 80 04 21 */ bctrl +/* 801826F0 0017F650 3C 03 AC B0 */ addis r0, r3, 0xacb0 +/* 801826F4 0017F654 28 00 48 52 */ cmplwi r0, 0x4852 +/* 801826F8 0017F658 40 82 00 14 */ bne lbl_8018270C +/* 801826FC 0017F65C C0 22 A2 E8 */ lfs f1, lbl_805AC008@sda21(r2) +/* 80182700 0017F660 C0 1F 00 1C */ lfs f0, 0x1c(r31) +/* 80182704 0017F664 EC 21 00 32 */ fmuls f1, f1, f0 +/* 80182708 0017F668 48 00 00 EC */ b lbl_801827F4 +lbl_8018270C: +/* 8018270C 0017F66C 7F E3 FB 78 */ mr r3, r31 +/* 80182710 0017F670 81 9F 00 00 */ lwz r12, 0(r31) +/* 80182714 0017F674 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80182718 0017F678 7D 89 03 A6 */ mtctr r12 +/* 8018271C 0017F67C 4E 80 04 21 */ bctrl +/* 80182720 0017F680 3C 03 BE BF */ addis r0, r3, 0xbebf +/* 80182724 0017F684 28 00 42 58 */ cmplwi r0, 0x4258 +/* 80182728 0017F688 40 82 00 6C */ bne lbl_80182794 +/* 8018272C 0017F68C C0 7F 00 20 */ lfs f3, 0x20(r31) +/* 80182730 0017F690 38 61 00 14 */ addi r3, r1, 0x14 +/* 80182734 0017F694 C0 5F 00 14 */ lfs f2, 0x14(r31) +/* 80182738 0017F698 C0 3F 00 1C */ lfs f1, 0x1c(r31) +/* 8018273C 0017F69C C0 1F 00 10 */ lfs f0, 0x10(r31) +/* 80182740 0017F6A0 EC 63 10 28 */ fsubs f3, f3, f2 +/* 80182744 0017F6A4 C0 5F 00 24 */ lfs f2, 0x24(r31) +/* 80182748 0017F6A8 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8018274C 0017F6AC C0 3F 00 18 */ lfs f1, 0x18(r31) +/* 80182750 0017F6B0 D0 61 00 14 */ stfs f3, 0x14(r1) +/* 80182754 0017F6B4 EC 22 08 28 */ fsubs f1, f2, f1 +/* 80182758 0017F6B8 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 8018275C 0017F6BC D0 01 00 10 */ stfs f0, 0x10(r1) +/* 80182760 0017F6C0 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80182764 0017F6C4 40 80 00 08 */ bge lbl_8018276C +/* 80182768 0017F6C8 48 00 00 08 */ b lbl_80182770 +lbl_8018276C: +/* 8018276C 0017F6CC 38 61 00 10 */ addi r3, r1, 0x10 +lbl_80182770: +/* 80182770 0017F6D0 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 80182774 0017F6D4 38 81 00 18 */ addi r4, r1, 0x18 +/* 80182778 0017F6D8 C0 03 00 00 */ lfs f0, 0(r3) +/* 8018277C 0017F6DC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80182780 0017F6E0 40 80 00 08 */ bge lbl_80182788 +/* 80182784 0017F6E4 48 00 00 08 */ b lbl_8018278C +lbl_80182788: +/* 80182788 0017F6E8 7C 64 1B 78 */ mr r4, r3 +lbl_8018278C: +/* 8018278C 0017F6EC C0 24 00 00 */ lfs f1, 0(r4) +/* 80182790 0017F6F0 48 00 00 64 */ b lbl_801827F4 +lbl_80182794: +/* 80182794 0017F6F4 7F E3 FB 78 */ mr r3, r31 +/* 80182798 0017F6F8 81 9F 00 00 */ lwz r12, 0(r31) +/* 8018279C 0017F6FC 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801827A0 0017F700 7D 89 03 A6 */ mtctr r12 +/* 801827A4 0017F704 4E 80 04 21 */ bctrl +/* 801827A8 0017F708 3C 03 BE BE */ addis r0, r3, 0xbebe +/* 801827AC 0017F70C 28 00 53 48 */ cmplwi r0, 0x5348 +/* 801827B0 0017F710 40 82 00 40 */ bne lbl_801827F0 +/* 801827B4 0017F714 38 7F 00 38 */ addi r3, r31, 0x38 +/* 801827B8 0017F718 4B FF FF 15 */ bl GetMinExtentForCollisionPrimitive__14CGameCollisionFRC19CCollisionPrimitive +/* 801827BC 0017F71C D0 21 00 08 */ stfs f1, 8(r1) +/* 801827C0 0017F720 38 7F 00 10 */ addi r3, r31, 0x10 +/* 801827C4 0017F724 4B FF FF 09 */ bl GetMinExtentForCollisionPrimitive__14CGameCollisionFRC19CCollisionPrimitive +/* 801827C8 0017F728 FC 00 08 18 */ frsp f0, f1 +/* 801827CC 0017F72C C0 41 00 08 */ lfs f2, 8(r1) +/* 801827D0 0017F730 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801827D4 0017F734 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801827D8 0017F738 40 80 00 0C */ bge lbl_801827E4 +/* 801827DC 0017F73C 38 61 00 08 */ addi r3, r1, 8 +/* 801827E0 0017F740 48 00 00 08 */ b lbl_801827E8 +lbl_801827E4: +/* 801827E4 0017F744 38 61 00 0C */ addi r3, r1, 0xc +lbl_801827E8: +/* 801827E8 0017F748 C0 23 00 00 */ lfs f1, 0(r3) +/* 801827EC 0017F74C 48 00 00 08 */ b lbl_801827F4 +lbl_801827F0: +/* 801827F0 0017F750 C0 22 A2 D4 */ lfs f1, lbl_805ABFF4@sda21(r2) +lbl_801827F4: +/* 801827F4 0017F754 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801827F8 0017F758 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801827FC 0017F75C 7C 08 03 A6 */ mtlr r0 +/* 80182800 0017F760 38 21 00 30 */ addi r1, r1, 0x30 +/* 80182804 0017F764 4E 80 00 20 */ blr + +.global CanBlock__14CGameCollisionFRC13CMaterialListRC9CVector3f +CanBlock__14CGameCollisionFRC13CMaterialListRC9CVector3f: +/* 80182808 0017F768 80 C3 00 00 */ lwz r6, 0(r3) +/* 8018280C 0017F76C 38 00 00 02 */ li r0, 2 +/* 80182810 0017F770 80 E3 00 04 */ lwz r7, 4(r3) +/* 80182814 0017F774 38 A0 00 00 */ li r5, 0 +/* 80182818 0017F778 7C C0 00 38 */ and r0, r6, r0 +/* 8018281C 0017F77C 7C E3 28 38 */ and r3, r7, r5 +/* 80182820 0017F780 7C 63 2A 78 */ xor r3, r3, r5 +/* 80182824 0017F784 7C 00 2A 78 */ xor r0, r0, r5 +/* 80182828 0017F788 7C 60 03 79 */ or. r0, r3, r0 +/* 8018282C 0017F78C 41 82 00 08 */ beq lbl_80182834 +/* 80182830 0017F790 38 A0 00 01 */ li r5, 1 +lbl_80182834: +/* 80182834 0017F794 54 A0 06 3F */ clrlwi. r0, r5, 0x18 +/* 80182838 0017F798 41 82 00 2C */ beq lbl_80182864 +/* 8018283C 0017F79C 38 A0 00 00 */ li r5, 0 +/* 80182840 0017F7A0 3C 00 00 80 */ lis r0, 0x80 +/* 80182844 0017F7A4 7C E3 28 38 */ and r3, r7, r5 +/* 80182848 0017F7A8 7C C0 00 38 */ and r0, r6, r0 +/* 8018284C 0017F7AC 7C 63 2A 78 */ xor r3, r3, r5 +/* 80182850 0017F7B0 7C 00 2A 78 */ xor r0, r0, r5 +/* 80182854 0017F7B4 7C 60 03 79 */ or. r0, r3, r0 +/* 80182858 0017F7B8 40 82 00 0C */ bne lbl_80182864 +/* 8018285C 0017F7BC 38 60 00 00 */ li r3, 0 +/* 80182860 0017F7C0 4E 80 00 20 */ blr +lbl_80182864: +/* 80182864 0017F7C4 38 A0 00 00 */ li r5, 0 +/* 80182868 0017F7C8 3C 00 04 00 */ lis r0, 0x400 +/* 8018286C 0017F7CC 7C E3 28 38 */ and r3, r7, r5 +/* 80182870 0017F7D0 7C C0 00 38 */ and r0, r6, r0 +/* 80182874 0017F7D4 7C 63 2A 78 */ xor r3, r3, r5 +/* 80182878 0017F7D8 7C 00 2A 78 */ xor r0, r0, r5 +/* 8018287C 0017F7DC 7C 60 03 79 */ or. r0, r3, r0 +/* 80182880 0017F7E0 41 82 00 0C */ beq lbl_8018288C +/* 80182884 0017F7E4 38 60 00 00 */ li r3, 0 +/* 80182888 0017F7E8 4E 80 00 20 */ blr +lbl_8018288C: +/* 8018288C 0017F7EC 3C 60 80 00 */ lis r3, 0x8000 +/* 80182890 0017F7F0 7C C0 28 38 */ and r0, r6, r5 +/* 80182894 0017F7F4 7C E3 18 38 */ and r3, r7, r3 +/* 80182898 0017F7F8 7C 63 2A 78 */ xor r3, r3, r5 +/* 8018289C 0017F7FC 7C 00 2A 78 */ xor r0, r0, r5 +/* 801828A0 0017F800 7C 60 03 79 */ or. r0, r3, r0 +/* 801828A4 0017F804 41 82 00 0C */ beq lbl_801828B0 +/* 801828A8 0017F808 38 60 00 01 */ li r3, 1 +/* 801828AC 0017F80C 4E 80 00 20 */ blr +lbl_801828B0: +/* 801828B0 0017F810 C0 24 00 08 */ lfs f1, 8(r4) +/* 801828B4 0017F814 C0 02 A2 EC */ lfs f0, lbl_805AC00C@sda21(r2) +/* 801828B8 0017F818 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801828BC 0017F81C 7C 00 00 26 */ mfcr r0 +/* 801828C0 0017F820 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 801828C4 0017F824 4E 80 00 20 */ blr + +.global IsFloor__14CGameCollisionFRC13CMaterialListRC9CVector3f +IsFloor__14CGameCollisionFRC13CMaterialListRC9CVector3f: +/* 801828C8 0017F828 80 03 00 00 */ lwz r0, 0(r3) +/* 801828CC 0017F82C 38 A0 00 00 */ li r5, 0 +/* 801828D0 0017F830 80 C3 00 04 */ lwz r6, 4(r3) +/* 801828D4 0017F834 3C 60 80 00 */ lis r3, 0x8000 +/* 801828D8 0017F838 7C 00 28 38 */ and r0, r0, r5 +/* 801828DC 0017F83C 7C C3 18 38 */ and r3, r6, r3 +/* 801828E0 0017F840 7C 63 2A 78 */ xor r3, r3, r5 +/* 801828E4 0017F844 7C 00 2A 78 */ xor r0, r0, r5 +/* 801828E8 0017F848 7C 60 03 79 */ or. r0, r3, r0 +/* 801828EC 0017F84C 41 82 00 0C */ beq lbl_801828F8 +/* 801828F0 0017F850 38 60 00 01 */ li r3, 1 +/* 801828F4 0017F854 4E 80 00 20 */ blr +lbl_801828F8: +/* 801828F8 0017F858 C0 24 00 08 */ lfs f1, 8(r4) +/* 801828FC 0017F85C C0 02 A2 EC */ lfs f0, lbl_805AC00C@sda21(r2) +/* 80182900 0017F860 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80182904 0017F864 7C 00 00 26 */ mfcr r0 +/* 80182908 0017F868 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 8018290C 0017F86C 4E 80 00 20 */ blr + +.global CollisionImpulseFiniteVsInfinite__Ffff +CollisionImpulseFiniteVsInfinite__Ffff: +/* 80182910 0017F870 C0 02 A2 D4 */ lfs f0, lbl_805ABFF4@sda21(r2) +/* 80182914 0017F874 EC 00 18 2A */ fadds f0, f0, f3 +/* 80182918 0017F878 FC 00 00 50 */ fneg f0, f0 +/* 8018291C 0017F87C EC 00 00 B2 */ fmuls f0, f0, f2 +/* 80182920 0017F880 EC 21 00 32 */ fmuls f1, f1, f0 +/* 80182924 0017F884 4E 80 00 20 */ blr + +.global CollisionImpulseFiniteVsFinite__Fffff +CollisionImpulseFiniteVsFinite__Fffff: +/* 80182928 0017F888 C0 A2 A2 D4 */ lfs f5, lbl_805ABFF4@sda21(r2) +/* 8018292C 0017F88C EC 25 08 24 */ fdivs f1, f5, f1 +/* 80182930 0017F890 EC 05 10 24 */ fdivs f0, f5, f2 +/* 80182934 0017F894 EC 45 20 2A */ fadds f2, f5, f4 +/* 80182938 0017F898 EC 01 00 2A */ fadds f0, f1, f0 +/* 8018293C 0017F89C FC 20 10 50 */ fneg f1, f2 +/* 80182940 0017F8A0 EC 21 00 F2 */ fmuls f1, f1, f3 +/* 80182944 0017F8A4 EC 21 00 24 */ fdivs f1, f1, f0 +/* 80182948 0017F8A8 4E 80 00 20 */ blr + +.global GetCoefficientOfRestitution__14CGameCollisionFRC14CCollisionInfo +GetCoefficientOfRestitution__14CGameCollisionFRC14CCollisionInfo: +/* 8018294C 0017F8AC C0 22 A2 A8 */ lfs f1, lbl_805ABFC8@sda21(r2) +/* 80182950 0017F8B0 4E 80 00 20 */ blr + +.global ShowCollisionResults__14CGameCollisionFR18CCollisionInfoListRC6CColor +ShowCollisionResults__14CGameCollisionFR18CCollisionInfoListRC6CColor: +/* 80182954 0017F8B4 4E 80 00 20 */ blr + +.global SendMaterialMessage__14CGameCollisionFR13CStateManagerRC13CMaterialListR6CActor +SendMaterialMessage__14CGameCollisionFR13CStateManagerRC13CMaterialListR6CActor: +/* 80182958 0017F8B8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018295C 0017F8BC 7C 08 02 A6 */ mflr r0 +/* 80182960 0017F8C0 38 C0 00 00 */ li r6, 0 +/* 80182964 0017F8C4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80182968 0017F8C8 80 E4 00 00 */ lwz r7, 0(r4) +/* 8018296C 0017F8CC 81 04 00 04 */ lwz r8, 4(r4) +/* 80182970 0017F8D0 38 80 00 10 */ li r4, 0x10 +/* 80182974 0017F8D4 7C E0 30 38 */ and r0, r7, r6 +/* 80182978 0017F8D8 7D 04 20 38 */ and r4, r8, r4 +/* 8018297C 0017F8DC 7C 84 32 78 */ xor r4, r4, r6 +/* 80182980 0017F8E0 7C 00 32 78 */ xor r0, r0, r6 +/* 80182984 0017F8E4 7C 80 03 79 */ or. r0, r4, r0 +/* 80182988 0017F8E8 41 82 00 08 */ beq lbl_80182990 +/* 8018298C 0017F8EC 38 C0 00 01 */ li r6, 1 +lbl_80182990: +/* 80182990 0017F8F0 54 C0 06 3F */ clrlwi. r0, r6, 0x18 +/* 80182994 0017F8F4 41 82 00 0C */ beq lbl_801829A0 +/* 80182998 0017F8F8 38 C0 00 1B */ li r6, 0x1b +/* 8018299C 0017F8FC 48 00 00 30 */ b lbl_801829CC +lbl_801829A0: +/* 801829A0 0017F900 38 00 10 00 */ li r0, 0x1000 +/* 801829A4 0017F904 38 C0 00 00 */ li r6, 0 +/* 801829A8 0017F908 7D 04 00 38 */ and r4, r8, r0 +/* 801829AC 0017F90C 7C E0 30 38 */ and r0, r7, r6 +/* 801829B0 0017F910 7C 84 32 78 */ xor r4, r4, r6 +/* 801829B4 0017F914 7C 00 32 78 */ xor r0, r0, r6 +/* 801829B8 0017F918 7C 80 03 79 */ or. r0, r4, r0 +/* 801829BC 0017F91C 41 82 00 0C */ beq lbl_801829C8 +/* 801829C0 0017F920 38 C0 00 1C */ li r6, 0x1c +/* 801829C4 0017F924 48 00 00 08 */ b lbl_801829CC +lbl_801829C8: +/* 801829C8 0017F928 38 C0 00 1D */ li r6, 0x1d +lbl_801829CC: +/* 801829CC 0017F92C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801829D0 0017F930 7C A4 2B 78 */ mr r4, r5 +/* 801829D4 0017F934 38 A1 00 08 */ addi r5, r1, 8 +/* 801829D8 0017F938 B0 01 00 08 */ sth r0, 8(r1) +/* 801829DC 0017F93C 4B EC 14 F5 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +/* 801829E0 0017F940 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801829E4 0017F944 7C 08 03 A6 */ mtlr r0 +/* 801829E8 0017F948 38 21 00 10 */ addi r1, r1, 0x10 +/* 801829EC 0017F94C 4E 80 00 20 */ blr + +.global SendScriptMessages__14CGameCollisionFR13CStateManagerR6CActorP6CActorRC18CCollisionInfoList +SendScriptMessages__14CGameCollisionFR13CStateManagerR6CActorP6CActorRC18CCollisionInfoList: +/* 801829F0 0017F950 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801829F4 0017F954 7C 08 02 A6 */ mflr r0 +/* 801829F8 0017F958 90 01 00 64 */ stw r0, 0x64(r1) +/* 801829FC 0017F95C BE C1 00 38 */ stmw r22, 0x38(r1) +/* 80182A00 0017F960 7C DA 33 78 */ mr r26, r6 +/* 80182A04 0017F964 3B DA 00 04 */ addi r30, r26, 4 +/* 80182A08 0017F968 7C 77 1B 78 */ mr r23, r3 +/* 80182A0C 0017F96C 7C 98 23 78 */ mr r24, r4 +/* 80182A10 0017F970 7C B9 2B 78 */ mr r25, r5 +/* 80182A14 0017F974 3B A0 00 00 */ li r29, 0 +/* 80182A18 0017F978 7F DF F3 78 */ mr r31, r30 +/* 80182A1C 0017F97C 3B 80 00 00 */ li r28, 0 +/* 80182A20 0017F980 3B 60 00 00 */ li r27, 0 +/* 80182A24 0017F984 48 00 00 64 */ b lbl_80182A88 +lbl_80182A28: +/* 80182A28 0017F988 3A DF 00 38 */ addi r22, r31, 0x38 +/* 80182A2C 0017F98C 38 9F 00 48 */ addi r4, r31, 0x48 +/* 80182A30 0017F990 7E C3 B3 78 */ mr r3, r22 +/* 80182A34 0017F994 4B FF FE 95 */ bl IsFloor__14CGameCollisionFRC13CMaterialListRC9CVector3f +/* 80182A38 0017F998 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80182A3C 0017F99C 41 82 00 44 */ beq lbl_80182A80 +/* 80182A40 0017F9A0 80 76 00 00 */ lwz r3, 0(r22) +/* 80182A44 0017F9A4 3C 00 00 02 */ lis r0, 2 +/* 80182A48 0017F9A8 80 B6 00 04 */ lwz r5, 4(r22) +/* 80182A4C 0017F9AC 38 80 00 00 */ li r4, 0 +/* 80182A50 0017F9B0 7C 60 00 38 */ and r0, r3, r0 +/* 80182A54 0017F9B4 3B 80 00 01 */ li r28, 1 +/* 80182A58 0017F9B8 7C A3 20 38 */ and r3, r5, r4 +/* 80182A5C 0017F9BC 7C 63 22 78 */ xor r3, r3, r4 +/* 80182A60 0017F9C0 7C 00 22 78 */ xor r0, r0, r4 +/* 80182A64 0017F9C4 7C 60 03 79 */ or. r0, r3, r0 +/* 80182A68 0017F9C8 41 82 00 08 */ beq lbl_80182A70 +/* 80182A6C 0017F9CC 3B A0 00 01 */ li r29, 1 +lbl_80182A70: +/* 80182A70 0017F9D0 7E E3 BB 78 */ mr r3, r23 +/* 80182A74 0017F9D4 7F 05 C3 78 */ mr r5, r24 +/* 80182A78 0017F9D8 38 9F 00 38 */ addi r4, r31, 0x38 +/* 80182A7C 0017F9DC 4B FF FE DD */ bl SendMaterialMessage__14CGameCollisionFR13CStateManagerRC13CMaterialListR6CActor +lbl_80182A80: +/* 80182A80 0017F9E0 3B FF 00 60 */ addi r31, r31, 0x60 +/* 80182A84 0017F9E4 3B 7B 00 01 */ addi r27, r27, 1 +lbl_80182A88: +/* 80182A88 0017F9E8 80 1A 00 00 */ lwz r0, 0(r26) +/* 80182A8C 0017F9EC 7C 1B 00 00 */ cmpw r27, r0 +/* 80182A90 0017F9F0 41 80 FF 98 */ blt lbl_80182A28 +/* 80182A94 0017F9F4 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 80182A98 0017F9F8 41 82 00 60 */ beq lbl_80182AF8 +/* 80182A9C 0017F9FC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80182AA0 0017FA00 7E E3 BB 78 */ mr r3, r23 +/* 80182AA4 0017FA04 7F 04 C3 78 */ mr r4, r24 +/* 80182AA8 0017FA08 38 A1 00 18 */ addi r5, r1, 0x18 +/* 80182AAC 0017FA0C B0 01 00 18 */ sth r0, 0x18(r1) +/* 80182AB0 0017FA10 38 C0 00 17 */ li r6, 0x17 +/* 80182AB4 0017FA14 4B EC 14 1D */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +/* 80182AB8 0017FA18 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 80182ABC 0017FA1C 41 82 00 E8 */ beq lbl_80182BA4 +/* 80182AC0 0017FA20 7F 24 CB 78 */ mr r4, r25 +/* 80182AC4 0017FA24 38 61 00 24 */ addi r3, r1, 0x24 +/* 80182AC8 0017FA28 4B F2 63 4D */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" +/* 80182ACC 0017FA2C 80 83 00 04 */ lwz r4, 4(r3) +/* 80182AD0 0017FA30 28 04 00 00 */ cmplwi r4, 0 +/* 80182AD4 0017FA34 41 82 00 D0 */ beq lbl_80182BA4 +/* 80182AD8 0017FA38 A0 18 00 08 */ lhz r0, 8(r24) +/* 80182ADC 0017FA3C 7E E3 BB 78 */ mr r3, r23 +/* 80182AE0 0017FA40 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80182AE4 0017FA44 38 C0 00 1F */ li r6, 0x1f +/* 80182AE8 0017FA48 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80182AEC 0017FA4C B0 01 00 14 */ sth r0, 0x14(r1) +/* 80182AF0 0017FA50 4B EC 13 E1 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +/* 80182AF4 0017FA54 48 00 00 B0 */ b lbl_80182BA4 +lbl_80182AF8: +/* 80182AF8 0017FA58 28 19 00 00 */ cmplwi r25, 0 +/* 80182AFC 0017FA5C 41 82 00 A8 */ beq lbl_80182BA4 +/* 80182B00 0017FA60 7F 04 C3 78 */ mr r4, r24 +/* 80182B04 0017FA64 38 61 00 1C */ addi r3, r1, 0x1c +/* 80182B08 0017FA68 4B F2 63 0D */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" +/* 80182B0C 0017FA6C 83 63 00 04 */ lwz r27, 4(r3) +/* 80182B10 0017FA70 28 1B 00 00 */ cmplwi r27, 0 +/* 80182B14 0017FA74 41 82 00 90 */ beq lbl_80182BA4 +/* 80182B18 0017FA78 3B 80 00 00 */ li r28, 0 +/* 80182B1C 0017FA7C 3B E0 00 00 */ li r31, 0 +/* 80182B20 0017FA80 3F 00 00 02 */ lis r24, 2 +/* 80182B24 0017FA84 48 00 00 4C */ b lbl_80182B70 +lbl_80182B28: +/* 80182B28 0017FA88 3A DE 00 40 */ addi r22, r30, 0x40 +/* 80182B2C 0017FA8C 38 9E 00 54 */ addi r4, r30, 0x54 +/* 80182B30 0017FA90 7E C3 B3 78 */ mr r3, r22 +/* 80182B34 0017FA94 4B FF FD 95 */ bl IsFloor__14CGameCollisionFRC13CMaterialListRC9CVector3f +/* 80182B38 0017FA98 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80182B3C 0017FA9C 41 82 00 2C */ beq lbl_80182B68 +/* 80182B40 0017FAA0 80 16 00 00 */ lwz r0, 0(r22) +/* 80182B44 0017FAA4 80 76 00 04 */ lwz r3, 4(r22) +/* 80182B48 0017FAA8 7C 00 C0 38 */ and r0, r0, r24 +/* 80182B4C 0017FAAC 7C 63 F8 38 */ and r3, r3, r31 +/* 80182B50 0017FAB0 7C 63 FA 78 */ xor r3, r3, r31 +/* 80182B54 0017FAB4 7C 00 FA 78 */ xor r0, r0, r31 +/* 80182B58 0017FAB8 7C 60 03 79 */ or. r0, r3, r0 +/* 80182B5C 0017FABC 41 82 00 0C */ beq lbl_80182B68 +/* 80182B60 0017FAC0 3B A0 00 01 */ li r29, 1 +/* 80182B64 0017FAC4 48 00 00 18 */ b lbl_80182B7C +lbl_80182B68: +/* 80182B68 0017FAC8 3B DE 00 60 */ addi r30, r30, 0x60 +/* 80182B6C 0017FACC 3B 9C 00 01 */ addi r28, r28, 1 +lbl_80182B70: +/* 80182B70 0017FAD0 80 1A 00 00 */ lwz r0, 0(r26) +/* 80182B74 0017FAD4 7C 1C 00 00 */ cmpw r28, r0 +/* 80182B78 0017FAD8 41 80 FF B0 */ blt lbl_80182B28 +lbl_80182B7C: +/* 80182B7C 0017FADC 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 80182B80 0017FAE0 41 82 00 24 */ beq lbl_80182BA4 +/* 80182B84 0017FAE4 A0 19 00 08 */ lhz r0, 8(r25) +/* 80182B88 0017FAE8 7E E3 BB 78 */ mr r3, r23 +/* 80182B8C 0017FAEC 7F 64 DB 78 */ mr r4, r27 +/* 80182B90 0017FAF0 38 A1 00 0C */ addi r5, r1, 0xc +/* 80182B94 0017FAF4 B0 01 00 08 */ sth r0, 8(r1) +/* 80182B98 0017FAF8 38 C0 00 1F */ li r6, 0x1f +/* 80182B9C 0017FAFC B0 01 00 0C */ sth r0, 0xc(r1) +/* 80182BA0 0017FB00 4B EC 13 31 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +lbl_80182BA4: +/* 80182BA4 0017FB04 BA C1 00 38 */ lmw r22, 0x38(r1) +/* 80182BA8 0017FB08 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80182BAC 0017FB0C 7C 08 03 A6 */ mtlr r0 +/* 80182BB0 0017FB10 38 21 00 60 */ addi r1, r1, 0x60 +/* 80182BB4 0017FB14 4E 80 00 20 */ blr + +.global MakeCollisionCallbacks__14CGameCollisionFR13CStateManagerR13CPhysicsActorRC9TUniqueIdRC18CCollisionInfoList +MakeCollisionCallbacks__14CGameCollisionFR13CStateManagerR13CPhysicsActorRC9TUniqueIdRC18CCollisionInfoList: +/* 80182BB8 0017FB18 94 21 F3 C0 */ stwu r1, -0xc40(r1) +/* 80182BBC 0017FB1C 7C 08 02 A6 */ mflr r0 +/* 80182BC0 0017FB20 90 01 0C 44 */ stw r0, 0xc44(r1) +/* 80182BC4 0017FB24 BF 41 0C 28 */ stmw r26, 0xc28(r1) +/* 80182BC8 0017FB28 7C 9B 23 78 */ mr r27, r4 +/* 80182BCC 0017FB2C 7C 7A 1B 78 */ mr r26, r3 +/* 80182BD0 0017FB30 7C BD 2B 78 */ mr r29, r5 +/* 80182BD4 0017FB34 7C DC 33 78 */ mr r28, r6 +/* 80182BD8 0017FB38 7F 63 DB 78 */ mr r3, r27 +/* 80182BDC 0017FB3C 7F A4 EB 78 */ mr r4, r29 +/* 80182BE0 0017FB40 7F 46 D3 78 */ mr r6, r26 +/* 80182BE4 0017FB44 7F 85 E3 78 */ mr r5, r28 +/* 80182BE8 0017FB48 81 9B 00 00 */ lwz r12, 0(r27) +/* 80182BEC 0017FB4C 81 8C 00 74 */ lwz r12, 0x74(r12) +/* 80182BF0 0017FB50 7D 89 03 A6 */ mtctr r12 +/* 80182BF4 0017FB54 4E 80 04 21 */ bctrl +/* 80182BF8 0017FB58 A0 7D 00 00 */ lhz r3, 0(r29) +/* 80182BFC 0017FB5C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80182C00 0017FB60 7C 03 00 40 */ cmplw r3, r0 +/* 80182C04 0017FB64 41 82 00 DC */ beq lbl_80182CE0 +/* 80182C08 0017FB68 B0 61 00 0C */ sth r3, 0xc(r1) +/* 80182C0C 0017FB6C 7F 43 D3 78 */ mr r3, r26 +/* 80182C10 0017FB70 38 81 00 0C */ addi r4, r1, 0xc +/* 80182C14 0017FB74 4B EC 99 61 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80182C18 0017FB78 7C 64 1B 78 */ mr r4, r3 +/* 80182C1C 0017FB7C 38 61 00 10 */ addi r3, r1, 0x10 +/* 80182C20 0017FB80 4B F2 9A C5 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" +/* 80182C24 0017FB84 83 C3 00 04 */ lwz r30, 4(r3) +/* 80182C28 0017FB88 28 1E 00 00 */ cmplwi r30, 0 +/* 80182C2C 0017FB8C 41 82 00 B4 */ beq lbl_80182CE0 +/* 80182C30 0017FB90 7F 84 E3 78 */ mr r4, r28 +/* 80182C34 0017FB94 38 61 00 18 */ addi r3, r1, 0x18 +/* 80182C38 0017FB98 48 00 00 BD */ bl __ct__18CCollisionInfoListFRC18CCollisionInfoList +/* 80182C3C 0017FB9C 3B A1 00 1C */ addi r29, r1, 0x1c +/* 80182C40 0017FBA0 3B E0 00 00 */ li r31, 0 +/* 80182C44 0017FBA4 48 00 00 14 */ b lbl_80182C58 +lbl_80182C48: +/* 80182C48 0017FBA8 7F A3 EB 78 */ mr r3, r29 +/* 80182C4C 0017FBAC 48 14 B4 6D */ bl Swap__14CCollisionInfoFv +/* 80182C50 0017FBB0 3B BD 00 60 */ addi r29, r29, 0x60 +/* 80182C54 0017FBB4 3B FF 00 01 */ addi r31, r31, 1 +lbl_80182C58: +/* 80182C58 0017FBB8 80 01 00 18 */ lwz r0, 0x18(r1) +/* 80182C5C 0017FBBC 7C 1F 00 00 */ cmpw r31, r0 +/* 80182C60 0017FBC0 41 80 FF E8 */ blt lbl_80182C48 +/* 80182C64 0017FBC4 A0 1B 00 08 */ lhz r0, 8(r27) +/* 80182C68 0017FBC8 7F C3 F3 78 */ mr r3, r30 +/* 80182C6C 0017FBCC 7F 85 E3 78 */ mr r5, r28 +/* 80182C70 0017FBD0 7F 46 D3 78 */ mr r6, r26 +/* 80182C74 0017FBD4 B0 01 00 08 */ sth r0, 8(r1) +/* 80182C78 0017FBD8 38 81 00 08 */ addi r4, r1, 8 +/* 80182C7C 0017FBDC 81 9E 00 00 */ lwz r12, 0(r30) +/* 80182C80 0017FBE0 81 8C 00 74 */ lwz r12, 0x74(r12) +/* 80182C84 0017FBE4 7D 89 03 A6 */ mtctr r12 +/* 80182C88 0017FBE8 4E 80 04 21 */ bctrl +/* 80182C8C 0017FBEC 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 80182C90 0017FBF0 38 60 00 00 */ li r3, 0 +/* 80182C94 0017FBF4 2C 05 00 00 */ cmpwi r5, 0 +/* 80182C98 0017FBF8 40 81 00 40 */ ble lbl_80182CD8 +/* 80182C9C 0017FBFC 2C 05 00 08 */ cmpwi r5, 8 +/* 80182CA0 0017FC00 38 85 FF F8 */ addi r4, r5, -8 +/* 80182CA4 0017FC04 40 81 00 20 */ ble lbl_80182CC4 +/* 80182CA8 0017FC08 38 04 00 07 */ addi r0, r4, 7 +/* 80182CAC 0017FC0C 54 00 E8 FE */ srwi r0, r0, 3 +/* 80182CB0 0017FC10 7C 09 03 A6 */ mtctr r0 +/* 80182CB4 0017FC14 2C 04 00 00 */ cmpwi r4, 0 +/* 80182CB8 0017FC18 40 81 00 0C */ ble lbl_80182CC4 +lbl_80182CBC: +/* 80182CBC 0017FC1C 38 63 00 08 */ addi r3, r3, 8 +/* 80182CC0 0017FC20 42 00 FF FC */ bdnz lbl_80182CBC +lbl_80182CC4: +/* 80182CC4 0017FC24 7C 03 28 50 */ subf r0, r3, r5 +/* 80182CC8 0017FC28 7C 09 03 A6 */ mtctr r0 +/* 80182CCC 0017FC2C 7C 03 28 00 */ cmpw r3, r5 +/* 80182CD0 0017FC30 40 80 00 08 */ bge lbl_80182CD8 +lbl_80182CD4: +/* 80182CD4 0017FC34 42 00 00 00 */ bdnz lbl_80182CD4 +lbl_80182CD8: +/* 80182CD8 0017FC38 38 00 00 00 */ li r0, 0 +/* 80182CDC 0017FC3C 90 01 00 18 */ stw r0, 0x18(r1) +lbl_80182CE0: +/* 80182CE0 0017FC40 BB 41 0C 28 */ lmw r26, 0xc28(r1) +/* 80182CE4 0017FC44 80 01 0C 44 */ lwz r0, 0xc44(r1) +/* 80182CE8 0017FC48 7C 08 03 A6 */ mtlr r0 +/* 80182CEC 0017FC4C 38 21 0C 40 */ addi r1, r1, 0xc40 +/* 80182CF0 0017FC50 4E 80 00 20 */ blr + +.global __ct__18CCollisionInfoListFRC18CCollisionInfoList +__ct__18CCollisionInfoListFRC18CCollisionInfoList: +/* 80182CF4 0017FC54 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80182CF8 0017FC58 7C 08 02 A6 */ mflr r0 +/* 80182CFC 0017FC5C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80182D00 0017FC60 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80182D04 0017FC64 7C 7F 1B 78 */ mr r31, r3 +/* 80182D08 0017FC68 48 00 00 1D */ bl sub_80182d24 +/* 80182D0C 0017FC6C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80182D10 0017FC70 7F E3 FB 78 */ mr r3, r31 +/* 80182D14 0017FC74 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80182D18 0017FC78 7C 08 03 A6 */ mtlr r0 +/* 80182D1C 0017FC7C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80182D20 0017FC80 4E 80 00 20 */ blr + +.global sub_80182d24 +sub_80182d24: +/* 80182D24 0017FC84 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80182D28 0017FC88 7C 08 02 A6 */ mflr r0 +/* 80182D2C 0017FC8C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80182D30 0017FC90 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80182D34 0017FC94 7C 7F 1B 78 */ mr r31, r3 +/* 80182D38 0017FC98 38 64 00 04 */ addi r3, r4, 4 +/* 80182D3C 0017FC9C 80 04 00 00 */ lwz r0, 0(r4) +/* 80182D40 0017FCA0 38 BF 00 04 */ addi r5, r31, 4 +/* 80182D44 0017FCA4 90 1F 00 00 */ stw r0, 0(r31) +/* 80182D48 0017FCA8 80 9F 00 00 */ lwz r4, 0(r31) +/* 80182D4C 0017FCAC 48 00 00 1D */ bl sub_80182d68 +/* 80182D50 0017FCB0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80182D54 0017FCB4 7F E3 FB 78 */ mr r3, r31 +/* 80182D58 0017FCB8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80182D5C 0017FCBC 7C 08 03 A6 */ mtlr r0 +/* 80182D60 0017FCC0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80182D64 0017FCC4 4E 80 00 20 */ blr + +.global sub_80182d68 +sub_80182d68: +/* 80182D68 0017FCC8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80182D6C 0017FCCC 7C 08 02 A6 */ mflr r0 +/* 80182D70 0017FCD0 90 01 00 24 */ stw r0, 0x24(r1) +/* 80182D74 0017FCD4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80182D78 0017FCD8 7C 7F 1B 78 */ mr r31, r3 +/* 80182D7C 0017FCDC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80182D80 0017FCE0 7C BE 2B 78 */ mr r30, r5 +/* 80182D84 0017FCE4 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80182D88 0017FCE8 3B A0 00 00 */ li r29, 0 +/* 80182D8C 0017FCEC 93 81 00 10 */ stw r28, 0x10(r1) +/* 80182D90 0017FCF0 7C 9C 23 78 */ mr r28, r4 +/* 80182D94 0017FCF4 48 00 00 1C */ b lbl_80182DB0 +lbl_80182D98: +/* 80182D98 0017FCF8 7F C3 F3 78 */ mr r3, r30 +/* 80182D9C 0017FCFC 7F E4 FB 78 */ mr r4, r31 +/* 80182DA0 0017FD00 48 00 00 3D */ bl sub_80182ddc +/* 80182DA4 0017FD04 3B DE 00 60 */ addi r30, r30, 0x60 +/* 80182DA8 0017FD08 3B BD 00 01 */ addi r29, r29, 1 +/* 80182DAC 0017FD0C 3B FF 00 60 */ addi r31, r31, 0x60 +lbl_80182DB0: +/* 80182DB0 0017FD10 7C 1D E0 00 */ cmpw r29, r28 +/* 80182DB4 0017FD14 41 80 FF E4 */ blt lbl_80182D98 +/* 80182DB8 0017FD18 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80182DBC 0017FD1C 7F C3 F3 78 */ mr r3, r30 +/* 80182DC0 0017FD20 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80182DC4 0017FD24 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80182DC8 0017FD28 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80182DCC 0017FD2C 83 81 00 10 */ lwz r28, 0x10(r1) +/* 80182DD0 0017FD30 7C 08 03 A6 */ mtlr r0 +/* 80182DD4 0017FD34 38 21 00 20 */ addi r1, r1, 0x20 +/* 80182DD8 0017FD38 4E 80 00 20 */ blr + +.global sub_80182ddc +sub_80182ddc: +/* 80182DDC 0017FD3C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80182DE0 0017FD40 7C 08 02 A6 */ mflr r0 +/* 80182DE4 0017FD44 28 03 00 00 */ cmplwi r3, 0 +/* 80182DE8 0017FD48 90 01 00 14 */ stw r0, 0x14(r1) +/* 80182DEC 0017FD4C 41 82 00 08 */ beq lbl_80182DF4 +/* 80182DF0 0017FD50 4B F6 E6 B1 */ bl __ct__14CCollisionInfoFRC14CCollisionInfo +lbl_80182DF4: +/* 80182DF4 0017FD54 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80182DF8 0017FD58 7C 08 03 A6 */ mtlr r0 +/* 80182DFC 0017FD5C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80182E00 0017FD60 4E 80 00 20 */ blr + +.global DetectStaticCollision_Cached_Moving__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter9CVector3fR14CCollisionInfoRd +DetectStaticCollision_Cached_Moving__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter9CVector3fR14CCollisionInfoRd: +/* 80182E04 0017FD64 94 21 FD F0 */ stwu r1, -0x210(r1) +/* 80182E08 0017FD68 7C 08 02 A6 */ mflr r0 +/* 80182E0C 0017FD6C 90 01 02 14 */ stw r0, 0x214(r1) +/* 80182E10 0017FD70 DB E1 02 00 */ stfd f31, 0x200(r1) +/* 80182E14 0017FD74 F3 E1 02 08 */ psq_st f31, 520(r1), 0, qr0 +/* 80182E18 0017FD78 DB C1 01 F0 */ stfd f30, 0x1f0(r1) +/* 80182E1C 0017FD7C F3 C1 01 F8 */ psq_st f30, 504(r1), 0, qr0 +/* 80182E20 0017FD80 DB A1 01 E0 */ stfd f29, 0x1e0(r1) +/* 80182E24 0017FD84 F3 A1 01 E8 */ psq_st f29, 488(r1), 0, qr0 +/* 80182E28 0017FD88 BE E1 01 BC */ stmw r23, 0x1bc(r1) +/* 80182E2C 0017FD8C 7C BD 2B 78 */ mr r29, r5 +/* 80182E30 0017FD90 7C 7E 1B 78 */ mr r30, r3 +/* 80182E34 0017FD94 7F A3 EB 78 */ mr r3, r29 +/* 80182E38 0017FD98 7C 97 23 78 */ mr r23, r4 +/* 80182E3C 0017FD9C 81 9D 00 00 */ lwz r12, 0(r29) +/* 80182E40 0017FDA0 7C D8 33 78 */ mr r24, r6 +/* 80182E44 0017FDA4 7C F9 3B 78 */ mr r25, r7 +/* 80182E48 0017FDA8 7D 1A 43 78 */ mr r26, r8 +/* 80182E4C 0017FDAC 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80182E50 0017FDB0 7D 3B 4B 78 */ mr r27, r9 +/* 80182E54 0017FDB4 7D 5C 53 78 */ mr r28, r10 +/* 80182E58 0017FDB8 7D 89 03 A6 */ mtctr r12 +/* 80182E5C 0017FDBC 4E 80 04 21 */ bctrl +/* 80182E60 0017FDC0 3C 03 B0 BE */ addis r0, r3, 0xb0be +/* 80182E64 0017FDC4 28 00 54 47 */ cmplwi r0, 0x5447 +/* 80182E68 0017FDC8 40 82 00 0C */ bne lbl_80182E74 +/* 80182E6C 0017FDCC 38 60 00 00 */ li r3, 0 +/* 80182E70 0017FDD0 48 00 05 04 */ b lbl_80183374 +lbl_80182E74: +/* 80182E74 0017FDD4 C8 7C 00 00 */ lfd f3, 0(r28) +/* 80182E78 0017FDD8 7F A4 EB 78 */ mr r4, r29 +/* 80182E7C 0017FDDC 81 9D 00 00 */ lwz r12, 0(r29) +/* 80182E80 0017FDE0 7F 05 C3 78 */ mr r5, r24 +/* 80182E84 0017FDE4 FC 60 18 18 */ frsp f3, f3 +/* 80182E88 0017FDE8 C0 5A 00 00 */ lfs f2, 0(r26) +/* 80182E8C 0017FDEC C0 3A 00 04 */ lfs f1, 4(r26) +/* 80182E90 0017FDF0 38 61 00 8C */ addi r3, r1, 0x8c +/* 80182E94 0017FDF4 C0 1A 00 08 */ lfs f0, 8(r26) +/* 80182E98 0017FDF8 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80182E9C 0017FDFC EF E3 00 B2 */ fmuls f31, f3, f2 +/* 80182EA0 0017FE00 EF A3 00 72 */ fmuls f29, f3, f1 +/* 80182EA4 0017FE04 EF C3 00 32 */ fmuls f30, f3, f0 +/* 80182EA8 0017FE08 7D 89 03 A6 */ mtctr r12 +/* 80182EAC 0017FE0C 4E 80 04 21 */ bctrl +/* 80182EB0 0017FE10 C1 01 00 8C */ lfs f8, 0x8c(r1) +/* 80182EB4 0017FE14 38 61 00 BC */ addi r3, r1, 0xbc +/* 80182EB8 0017FE18 C0 E1 00 90 */ lfs f7, 0x90(r1) +/* 80182EBC 0017FE1C 38 81 00 80 */ addi r4, r1, 0x80 +/* 80182EC0 0017FE20 C0 C1 00 94 */ lfs f6, 0x94(r1) +/* 80182EC4 0017FE24 EC 48 F8 2A */ fadds f2, f8, f31 +/* 80182EC8 0017FE28 C0 A1 00 98 */ lfs f5, 0x98(r1) +/* 80182ECC 0017FE2C EC 27 E8 2A */ fadds f1, f7, f29 +/* 80182ED0 0017FE30 C0 81 00 9C */ lfs f4, 0x9c(r1) +/* 80182ED4 0017FE34 EC 06 F0 2A */ fadds f0, f6, f30 +/* 80182ED8 0017FE38 C0 61 00 A0 */ lfs f3, 0xa0(r1) +/* 80182EDC 0017FE3C D1 01 00 D4 */ stfs f8, 0xd4(r1) +/* 80182EE0 0017FE40 D0 E1 00 D8 */ stfs f7, 0xd8(r1) +/* 80182EE4 0017FE44 D0 C1 00 DC */ stfs f6, 0xdc(r1) +/* 80182EE8 0017FE48 D0 A1 00 E0 */ stfs f5, 0xe0(r1) +/* 80182EEC 0017FE4C D0 81 00 E4 */ stfs f4, 0xe4(r1) +/* 80182EF0 0017FE50 D0 61 00 E8 */ stfs f3, 0xe8(r1) +/* 80182EF4 0017FE54 D1 01 00 BC */ stfs f8, 0xbc(r1) +/* 80182EF8 0017FE58 D0 E1 00 C0 */ stfs f7, 0xc0(r1) +/* 80182EFC 0017FE5C D0 C1 00 C4 */ stfs f6, 0xc4(r1) +/* 80182F00 0017FE60 D0 A1 00 C8 */ stfs f5, 0xc8(r1) +/* 80182F04 0017FE64 D0 81 00 CC */ stfs f4, 0xcc(r1) +/* 80182F08 0017FE68 D0 61 00 D0 */ stfs f3, 0xd0(r1) +/* 80182F0C 0017FE6C D0 41 00 80 */ stfs f2, 0x80(r1) +/* 80182F10 0017FE70 D0 21 00 84 */ stfs f1, 0x84(r1) +/* 80182F14 0017FE74 D0 01 00 88 */ stfs f0, 0x88(r1) +/* 80182F18 0017FE78 48 1B 4B F1 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 80182F1C 0017FE7C C0 41 00 E4 */ lfs f2, 0xe4(r1) +/* 80182F20 0017FE80 38 61 00 BC */ addi r3, r1, 0xbc +/* 80182F24 0017FE84 C0 21 00 E8 */ lfs f1, 0xe8(r1) +/* 80182F28 0017FE88 38 81 00 74 */ addi r4, r1, 0x74 +/* 80182F2C 0017FE8C C0 01 00 E0 */ lfs f0, 0xe0(r1) +/* 80182F30 0017FE90 EC 42 E8 2A */ fadds f2, f2, f29 +/* 80182F34 0017FE94 EC 21 F0 2A */ fadds f1, f1, f30 +/* 80182F38 0017FE98 EC 00 F8 2A */ fadds f0, f0, f31 +/* 80182F3C 0017FE9C D0 41 00 78 */ stfs f2, 0x78(r1) +/* 80182F40 0017FEA0 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 80182F44 0017FEA4 D0 21 00 7C */ stfs f1, 0x7c(r1) +/* 80182F48 0017FEA8 48 1B 4B C1 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 80182F4C 0017FEAC 7E E4 BB 78 */ mr r4, r23 +/* 80182F50 0017FEB0 38 61 00 BC */ addi r3, r1, 0xbc +/* 80182F54 0017FEB4 48 1B 4B 2D */ bl Inside__6CAABoxCFRC6CAABox +/* 80182F58 0017FEB8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80182F5C 0017FEBC 40 82 00 98 */ bne lbl_80182FF4 +/* 80182F60 0017FEC0 C0 41 00 CC */ lfs f2, 0xcc(r1) +/* 80182F64 0017FEC4 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 80182F68 0017FEC8 C0 82 A2 F0 */ lfs f4, lbl_805AC010@sda21(r2) +/* 80182F6C 0017FECC 38 81 00 68 */ addi r4, r1, 0x68 +/* 80182F70 0017FED0 C0 21 00 D0 */ lfs f1, 0xd0(r1) +/* 80182F74 0017FED4 38 A1 00 5C */ addi r5, r1, 0x5c +/* 80182F78 0017FED8 C0 01 00 C8 */ lfs f0, 0xc8(r1) +/* 80182F7C 0017FEDC EC C2 20 2A */ fadds f6, f2, f4 +/* 80182F80 0017FEE0 C0 41 00 C0 */ lfs f2, 0xc0(r1) +/* 80182F84 0017FEE4 EC A1 20 2A */ fadds f5, f1, f4 +/* 80182F88 0017FEE8 C0 21 00 C4 */ lfs f1, 0xc4(r1) +/* 80182F8C 0017FEEC EC 60 20 2A */ fadds f3, f0, f4 +/* 80182F90 0017FEF0 C0 01 00 BC */ lfs f0, 0xbc(r1) +/* 80182F94 0017FEF4 EC 42 20 28 */ fsubs f2, f2, f4 +/* 80182F98 0017FEF8 D0 C1 00 60 */ stfs f6, 0x60(r1) +/* 80182F9C 0017FEFC EC 21 20 28 */ fsubs f1, f1, f4 +/* 80182FA0 0017FF00 EC 00 20 28 */ fsubs f0, f0, f4 +/* 80182FA4 0017FF04 D0 61 00 5C */ stfs f3, 0x5c(r1) +/* 80182FA8 0017FF08 D0 A1 00 64 */ stfs f5, 0x64(r1) +/* 80182FAC 0017FF0C D0 01 00 68 */ stfs f0, 0x68(r1) +/* 80182FB0 0017FF10 D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 80182FB4 0017FF14 D0 21 00 70 */ stfs f1, 0x70(r1) +/* 80182FB8 0017FF18 48 1B 55 51 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 80182FBC 0017FF1C 7E E4 BB 78 */ mr r4, r23 +/* 80182FC0 0017FF20 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 80182FC4 0017FF24 48 1B 4B 45 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 80182FC8 0017FF28 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 80182FCC 0017FF2C 38 97 00 0C */ addi r4, r23, 0xc +/* 80182FD0 0017FF30 48 1B 4B 39 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 80182FD4 0017FF34 7E E3 BB 78 */ mr r3, r23 +/* 80182FD8 0017FF38 38 81 00 A4 */ addi r4, r1, 0xa4 +/* 80182FDC 0017FF3C 48 12 09 09 */ bl SetCacheBounds__19CAreaCollisionCacheFRC6CAABox +/* 80182FE0 0017FF40 7F C3 F3 78 */ mr r3, r30 +/* 80182FE4 0017FF44 7E E4 BB 78 */ mr r4, r23 +/* 80182FE8 0017FF48 48 00 16 DD */ bl BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache +/* 80182FEC 0017FF4C 38 60 00 00 */ li r3, 0 +/* 80182FF0 0017FF50 4B F3 15 09 */ bl IsUser__Fi +lbl_80182FF4: +/* 80182FF4 0017FF54 7F A3 EB 78 */ mr r3, r29 +/* 80182FF8 0017FF58 81 9D 00 00 */ lwz r12, 0(r29) +/* 80182FFC 0017FF5C 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80183000 0017FF60 7D 89 03 A6 */ mtctr r12 +/* 80183004 0017FF64 4E 80 04 21 */ bctrl +/* 80183008 0017FF68 3C 03 BE BF */ addis r0, r3, 0xbebf +/* 8018300C 0017FF6C 28 00 42 58 */ cmplwi r0, 0x4258 +/* 80183010 0017FF70 40 82 01 88 */ bne lbl_80183198 +/* 80183014 0017FF74 3B F7 00 1C */ addi r31, r23, 0x1c +/* 80183018 0017FF78 3B C0 00 00 */ li r30, 0 +/* 8018301C 0017FF7C 48 00 01 6C */ b lbl_80183188 +lbl_80183020: +/* 80183020 0017FF80 38 61 01 50 */ addi r3, r1, 0x150 +/* 80183024 0017FF84 38 80 00 00 */ li r4, 0 +/* 80183028 0017FF88 48 14 B1 61 */ bl __ct__14CCollisionInfoFQ214CCollisionInfo8EInvalid +/* 8018302C 0017FF8C C8 1C 00 00 */ lfd f0, 0(r28) +/* 80183030 0017FF90 38 00 00 00 */ li r0, 0 +/* 80183034 0017FF94 81 1A 00 00 */ lwz r8, 0(r26) +/* 80183038 0017FF98 38 60 00 00 */ li r3, 0 +/* 8018303C 0017FF9C D8 01 00 20 */ stfd f0, 0x20(r1) +/* 80183040 0017FFA0 38 80 00 01 */ li r4, 1 +/* 80183044 0017FFA4 80 FA 00 04 */ lwz r7, 4(r26) +/* 80183048 0017FFA8 CB BC 00 00 */ lfd f29, 0(r28) +/* 8018304C 0017FFAC 80 DA 00 08 */ lwz r6, 8(r26) +/* 80183050 0017FFB0 FF A0 E8 18 */ frsp f29, f29 +/* 80183054 0017FFB4 80 AD 8E 80 */ lwz r5, lbl_805A7A40@sda21(r13) +/* 80183058 0017FFB8 91 01 00 50 */ stw r8, 0x50(r1) +/* 8018305C 0017FFBC 90 E1 00 54 */ stw r7, 0x54(r1) +/* 80183060 0017FFC0 90 C1 00 58 */ stw r6, 0x58(r1) +/* 80183064 0017FFC4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80183068 0017FFC8 90 01 00 10 */ stw r0, 0x10(r1) +/* 8018306C 0017FFCC 48 20 6E 89 */ bl __shl2i +/* 80183070 0017FFD0 80 01 00 10 */ lwz r0, 0x10(r1) +/* 80183074 0017FFD4 FC 20 E8 90 */ fmr f1, f29 +/* 80183078 0017FFD8 80 C1 00 14 */ lwz r6, 0x14(r1) +/* 8018307C 0017FFDC 7F 25 CB 78 */ mr r5, r25 +/* 80183080 0017FFE0 7C 00 1B 78 */ or r0, r0, r3 +/* 80183084 0017FFE4 7F E3 FB 78 */ mr r3, r31 +/* 80183088 0017FFE8 7C C4 23 78 */ or r4, r6, r4 +/* 8018308C 0017FFEC 90 81 00 14 */ stw r4, 0x14(r1) +/* 80183090 0017FFF0 38 81 00 D4 */ addi r4, r1, 0xd4 +/* 80183094 0017FFF4 38 C1 00 10 */ addi r6, r1, 0x10 +/* 80183098 0017FFF8 38 E1 00 50 */ addi r7, r1, 0x50 +/* 8018309C 0017FFFC 90 01 00 10 */ stw r0, 0x10(r1) +/* 801830A0 00180000 39 01 01 50 */ addi r8, r1, 0x150 +/* 801830A4 00180004 39 21 00 20 */ addi r9, r1, 0x20 +/* 801830A8 00180008 48 12 11 75 */ bl MovingAABoxCollisionCheck_Cached__20CMetroidAreaColliderFRCQ220CMetroidAreaCollider16COctreeLeafCacheRC6CAABoxRC15CMaterialFilterRC13CMaterialList9CVector3ffR14CCollisionInfoRd +/* 801830AC 0018000C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801830B0 00180010 41 82 00 D0 */ beq lbl_80183180 +/* 801830B4 00180014 C8 21 00 20 */ lfd f1, 0x20(r1) +/* 801830B8 00180018 C8 1C 00 00 */ lfd f0, 0(r28) +/* 801830BC 0018001C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801830C0 00180020 40 80 00 C0 */ bge lbl_80183180 +/* 801830C4 00180024 80 61 01 50 */ lwz r3, 0x150(r1) +/* 801830C8 00180028 80 01 01 54 */ lwz r0, 0x154(r1) +/* 801830CC 0018002C 90 7B 00 00 */ stw r3, 0(r27) +/* 801830D0 00180030 90 1B 00 04 */ stw r0, 4(r27) +/* 801830D4 00180034 80 01 01 58 */ lwz r0, 0x158(r1) +/* 801830D8 00180038 90 1B 00 08 */ stw r0, 8(r27) +/* 801830DC 0018003C 80 61 01 5C */ lwz r3, 0x15c(r1) +/* 801830E0 00180040 80 01 01 60 */ lwz r0, 0x160(r1) +/* 801830E4 00180044 90 7B 00 0C */ stw r3, 0xc(r27) +/* 801830E8 00180048 90 1B 00 10 */ stw r0, 0x10(r27) +/* 801830EC 0018004C 80 01 01 64 */ lwz r0, 0x164(r1) +/* 801830F0 00180050 90 1B 00 14 */ stw r0, 0x14(r27) +/* 801830F4 00180054 80 61 01 68 */ lwz r3, 0x168(r1) +/* 801830F8 00180058 80 01 01 6C */ lwz r0, 0x16c(r1) +/* 801830FC 0018005C 90 7B 00 18 */ stw r3, 0x18(r27) +/* 80183100 00180060 90 1B 00 1C */ stw r0, 0x1c(r27) +/* 80183104 00180064 80 01 01 70 */ lwz r0, 0x170(r1) +/* 80183108 00180068 90 1B 00 20 */ stw r0, 0x20(r27) +/* 8018310C 0018006C 80 61 01 74 */ lwz r3, 0x174(r1) +/* 80183110 00180070 80 01 01 78 */ lwz r0, 0x178(r1) +/* 80183114 00180074 90 7B 00 24 */ stw r3, 0x24(r27) +/* 80183118 00180078 90 1B 00 28 */ stw r0, 0x28(r27) +/* 8018311C 0018007C 80 01 01 7C */ lwz r0, 0x17c(r1) +/* 80183120 00180080 90 1B 00 2C */ stw r0, 0x2c(r27) +/* 80183124 00180084 88 01 01 80 */ lbz r0, 0x180(r1) +/* 80183128 00180088 98 1B 00 30 */ stb r0, 0x30(r27) +/* 8018312C 0018008C 88 01 01 81 */ lbz r0, 0x181(r1) +/* 80183130 00180090 98 1B 00 31 */ stb r0, 0x31(r27) +/* 80183134 00180094 C8 01 01 88 */ lfd f0, 0x188(r1) +/* 80183138 00180098 D8 1B 00 38 */ stfd f0, 0x38(r27) +/* 8018313C 0018009C C8 01 01 90 */ lfd f0, 0x190(r1) +/* 80183140 001800A0 D8 1B 00 40 */ stfd f0, 0x40(r27) +/* 80183144 001800A4 80 61 01 98 */ lwz r3, 0x198(r1) +/* 80183148 001800A8 80 01 01 9C */ lwz r0, 0x19c(r1) +/* 8018314C 001800AC 90 7B 00 48 */ stw r3, 0x48(r27) +/* 80183150 001800B0 90 1B 00 4C */ stw r0, 0x4c(r27) +/* 80183154 001800B4 80 01 01 A0 */ lwz r0, 0x1a0(r1) +/* 80183158 001800B8 90 1B 00 50 */ stw r0, 0x50(r27) +/* 8018315C 001800BC 80 61 01 A4 */ lwz r3, 0x1a4(r1) +/* 80183160 001800C0 80 01 01 A8 */ lwz r0, 0x1a8(r1) +/* 80183164 001800C4 90 7B 00 54 */ stw r3, 0x54(r27) +/* 80183168 001800C8 90 1B 00 58 */ stw r0, 0x58(r27) +/* 8018316C 001800CC 80 01 01 AC */ lwz r0, 0x1ac(r1) +/* 80183170 001800D0 90 1B 00 5C */ stw r0, 0x5c(r27) +/* 80183174 001800D4 C8 01 00 20 */ lfd f0, 0x20(r1) +/* 80183178 001800D8 FC 00 00 18 */ frsp f0, f0 +/* 8018317C 001800DC D8 1C 00 00 */ stfd f0, 0(r28) +lbl_80183180: +/* 80183180 001800E0 3B FF 09 0C */ addi r31, r31, 0x90c +/* 80183184 001800E4 3B DE 00 01 */ addi r30, r30, 1 +lbl_80183188: +/* 80183188 001800E8 80 17 00 18 */ lwz r0, 0x18(r23) +/* 8018318C 001800EC 7C 1E 00 00 */ cmpw r30, r0 +/* 80183190 001800F0 41 80 FE 90 */ blt lbl_80183020 +/* 80183194 001800F4 48 00 01 DC */ b lbl_80183370 +lbl_80183198: +/* 80183198 001800F8 7F A3 EB 78 */ mr r3, r29 +/* 8018319C 001800FC 81 9D 00 00 */ lwz r12, 0(r29) +/* 801831A0 00180100 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801831A4 00180104 7D 89 03 A6 */ mtctr r12 +/* 801831A8 00180108 4E 80 04 21 */ bctrl +/* 801831AC 0018010C 3C 03 AC B0 */ addis r0, r3, 0xacb0 +/* 801831B0 00180110 28 00 48 52 */ cmplwi r0, 0x4852 +/* 801831B4 00180114 40 82 01 BC */ bne lbl_80183370 +/* 801831B8 00180118 3B FD 00 10 */ addi r31, r29, 0x10 +/* 801831BC 0018011C 3B D7 00 1C */ addi r30, r23, 0x1c +/* 801831C0 00180120 3B A0 00 00 */ li r29, 0 +/* 801831C4 00180124 48 00 01 A0 */ b lbl_80183364 +lbl_801831C8: +/* 801831C8 00180128 38 61 00 F0 */ addi r3, r1, 0xf0 +/* 801831CC 0018012C 38 80 00 00 */ li r4, 0 +/* 801831D0 00180130 48 14 AF B9 */ bl __ct__14CCollisionInfoFQ214CCollisionInfo8EInvalid +/* 801831D4 00180134 C8 1C 00 00 */ lfd f0, 0(r28) +/* 801831D8 00180138 38 00 00 00 */ li r0, 0 +/* 801831DC 0018013C 81 1A 00 00 */ lwz r8, 0(r26) +/* 801831E0 00180140 38 60 00 00 */ li r3, 0 +/* 801831E4 00180144 D8 01 00 18 */ stfd f0, 0x18(r1) +/* 801831E8 00180148 38 80 00 01 */ li r4, 1 +/* 801831EC 0018014C 80 FA 00 04 */ lwz r7, 4(r26) +/* 801831F0 00180150 CB BC 00 00 */ lfd f29, 0(r28) +/* 801831F4 00180154 80 DA 00 08 */ lwz r6, 8(r26) +/* 801831F8 00180158 FF A0 E8 18 */ frsp f29, f29 +/* 801831FC 0018015C 80 AD 8E 84 */ lwz r5, lbl_805A7A44@sda21(r13) +/* 80183200 00180160 91 01 00 28 */ stw r8, 0x28(r1) +/* 80183204 00180164 90 E1 00 2C */ stw r7, 0x2c(r1) +/* 80183208 00180168 90 C1 00 30 */ stw r6, 0x30(r1) +/* 8018320C 0018016C 90 01 00 0C */ stw r0, 0xc(r1) +/* 80183210 00180170 90 01 00 08 */ stw r0, 8(r1) +/* 80183214 00180174 48 20 6C E1 */ bl __shl2i +/* 80183218 00180178 80 01 00 08 */ lwz r0, 8(r1) +/* 8018321C 0018017C 7F E5 FB 78 */ mr r5, r31 +/* 80183220 00180180 80 C1 00 0C */ lwz r6, 0xc(r1) +/* 80183224 00180184 7C 00 1B 78 */ or r0, r0, r3 +/* 80183228 00180188 C3 DF 00 0C */ lfs f30, 0xc(r31) +/* 8018322C 0018018C 7C C6 23 78 */ or r6, r6, r4 +/* 80183230 00180190 90 01 00 08 */ stw r0, 8(r1) +/* 80183234 00180194 7F 04 C3 78 */ mr r4, r24 +/* 80183238 00180198 38 61 00 34 */ addi r3, r1, 0x34 +/* 8018323C 0018019C 90 C1 00 0C */ stw r6, 0xc(r1) +/* 80183240 001801A0 48 18 F8 A9 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 80183244 001801A4 C0 61 00 34 */ lfs f3, 0x34(r1) +/* 80183248 001801A8 FC 20 E8 90 */ fmr f1, f29 +/* 8018324C 001801AC C0 41 00 38 */ lfs f2, 0x38(r1) +/* 80183250 001801B0 7F C3 F3 78 */ mr r3, r30 +/* 80183254 001801B4 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 80183258 001801B8 7F 26 CB 78 */ mr r6, r25 +/* 8018325C 001801BC D0 61 00 40 */ stfs f3, 0x40(r1) +/* 80183260 001801C0 38 81 00 D4 */ addi r4, r1, 0xd4 +/* 80183264 001801C4 38 A1 00 40 */ addi r5, r1, 0x40 +/* 80183268 001801C8 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 8018326C 001801CC 38 E1 00 08 */ addi r7, r1, 8 +/* 80183270 001801D0 39 01 00 28 */ addi r8, r1, 0x28 +/* 80183274 001801D4 39 21 00 F0 */ addi r9, r1, 0xf0 +/* 80183278 001801D8 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 8018327C 001801DC 39 41 00 18 */ addi r10, r1, 0x18 +/* 80183280 001801E0 D3 C1 00 4C */ stfs f30, 0x4c(r1) +/* 80183284 001801E4 48 12 19 99 */ bl MovingSphereCollisionCheck_Cached__20CMetroidAreaColliderFRCQ220CMetroidAreaCollider16COctreeLeafCacheRC6CAABoxRC7CSphereRC15CMaterialFilterRC13CMaterialList9CVector3ffR14CCollisionInfoRd +/* 80183288 001801E8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8018328C 001801EC 41 82 00 D0 */ beq lbl_8018335C +/* 80183290 001801F0 C8 21 00 18 */ lfd f1, 0x18(r1) +/* 80183294 001801F4 C8 1C 00 00 */ lfd f0, 0(r28) +/* 80183298 001801F8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018329C 001801FC 40 80 00 C0 */ bge lbl_8018335C +/* 801832A0 00180200 80 61 00 F0 */ lwz r3, 0xf0(r1) +/* 801832A4 00180204 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 801832A8 00180208 90 7B 00 00 */ stw r3, 0(r27) +/* 801832AC 0018020C 90 1B 00 04 */ stw r0, 4(r27) +/* 801832B0 00180210 80 01 00 F8 */ lwz r0, 0xf8(r1) +/* 801832B4 00180214 90 1B 00 08 */ stw r0, 8(r27) +/* 801832B8 00180218 80 61 00 FC */ lwz r3, 0xfc(r1) +/* 801832BC 0018021C 80 01 01 00 */ lwz r0, 0x100(r1) +/* 801832C0 00180220 90 7B 00 0C */ stw r3, 0xc(r27) +/* 801832C4 00180224 90 1B 00 10 */ stw r0, 0x10(r27) +/* 801832C8 00180228 80 01 01 04 */ lwz r0, 0x104(r1) +/* 801832CC 0018022C 90 1B 00 14 */ stw r0, 0x14(r27) +/* 801832D0 00180230 80 61 01 08 */ lwz r3, 0x108(r1) +/* 801832D4 00180234 80 01 01 0C */ lwz r0, 0x10c(r1) +/* 801832D8 00180238 90 7B 00 18 */ stw r3, 0x18(r27) +/* 801832DC 0018023C 90 1B 00 1C */ stw r0, 0x1c(r27) +/* 801832E0 00180240 80 01 01 10 */ lwz r0, 0x110(r1) +/* 801832E4 00180244 90 1B 00 20 */ stw r0, 0x20(r27) +/* 801832E8 00180248 80 61 01 14 */ lwz r3, 0x114(r1) +/* 801832EC 0018024C 80 01 01 18 */ lwz r0, 0x118(r1) +/* 801832F0 00180250 90 7B 00 24 */ stw r3, 0x24(r27) +/* 801832F4 00180254 90 1B 00 28 */ stw r0, 0x28(r27) +/* 801832F8 00180258 80 01 01 1C */ lwz r0, 0x11c(r1) +/* 801832FC 0018025C 90 1B 00 2C */ stw r0, 0x2c(r27) +/* 80183300 00180260 88 01 01 20 */ lbz r0, 0x120(r1) +/* 80183304 00180264 98 1B 00 30 */ stb r0, 0x30(r27) +/* 80183308 00180268 88 01 01 21 */ lbz r0, 0x121(r1) +/* 8018330C 0018026C 98 1B 00 31 */ stb r0, 0x31(r27) +/* 80183310 00180270 C8 01 01 28 */ lfd f0, 0x128(r1) +/* 80183314 00180274 D8 1B 00 38 */ stfd f0, 0x38(r27) +/* 80183318 00180278 C8 01 01 30 */ lfd f0, 0x130(r1) +/* 8018331C 0018027C D8 1B 00 40 */ stfd f0, 0x40(r27) +/* 80183320 00180280 80 61 01 38 */ lwz r3, 0x138(r1) +/* 80183324 00180284 80 01 01 3C */ lwz r0, 0x13c(r1) +/* 80183328 00180288 90 7B 00 48 */ stw r3, 0x48(r27) +/* 8018332C 0018028C 90 1B 00 4C */ stw r0, 0x4c(r27) +/* 80183330 00180290 80 01 01 40 */ lwz r0, 0x140(r1) +/* 80183334 00180294 90 1B 00 50 */ stw r0, 0x50(r27) +/* 80183338 00180298 80 61 01 44 */ lwz r3, 0x144(r1) +/* 8018333C 0018029C 80 01 01 48 */ lwz r0, 0x148(r1) +/* 80183340 001802A0 90 7B 00 54 */ stw r3, 0x54(r27) +/* 80183344 001802A4 90 1B 00 58 */ stw r0, 0x58(r27) +/* 80183348 001802A8 80 01 01 4C */ lwz r0, 0x14c(r1) +/* 8018334C 001802AC 90 1B 00 5C */ stw r0, 0x5c(r27) +/* 80183350 001802B0 C8 01 00 18 */ lfd f0, 0x18(r1) +/* 80183354 001802B4 FC 00 00 18 */ frsp f0, f0 +/* 80183358 001802B8 D8 1C 00 00 */ stfd f0, 0(r28) +lbl_8018335C: +/* 8018335C 001802BC 3B DE 09 0C */ addi r30, r30, 0x90c +/* 80183360 001802C0 3B BD 00 01 */ addi r29, r29, 1 +lbl_80183364: +/* 80183364 001802C4 80 17 00 18 */ lwz r0, 0x18(r23) +/* 80183368 001802C8 7C 1D 00 00 */ cmpw r29, r0 +/* 8018336C 001802CC 41 80 FE 5C */ blt lbl_801831C8 +lbl_80183370: +/* 80183370 001802D0 88 7B 00 30 */ lbz r3, 0x30(r27) +lbl_80183374: +/* 80183374 001802D4 E3 E1 02 08 */ psq_l f31, 520(r1), 0, qr0 +/* 80183378 001802D8 CB E1 02 00 */ lfd f31, 0x200(r1) +/* 8018337C 001802DC E3 C1 01 F8 */ psq_l f30, 504(r1), 0, qr0 +/* 80183380 001802E0 CB C1 01 F0 */ lfd f30, 0x1f0(r1) +/* 80183384 001802E4 E3 A1 01 E8 */ psq_l f29, 488(r1), 0, qr0 +/* 80183388 001802E8 CB A1 01 E0 */ lfd f29, 0x1e0(r1) +/* 8018338C 001802EC BA E1 01 BC */ lmw r23, 0x1bc(r1) +/* 80183390 001802F0 80 01 02 14 */ lwz r0, 0x214(r1) +/* 80183394 001802F4 7C 08 03 A6 */ mtlr r0 +/* 80183398 001802F8 38 21 02 10 */ addi r1, r1, 0x210 +/* 8018339C 001802FC 4E 80 00 20 */ blr + +.global DetectStaticCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter +DetectStaticCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter: +/* 801833A0 00180300 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 801833A4 00180304 7C 08 02 A6 */ mflr r0 +/* 801833A8 00180308 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 801833AC 0018030C BF 61 00 8C */ stmw r27, 0x8c(r1) +/* 801833B0 00180310 7C 9C 23 78 */ mr r28, r4 +/* 801833B4 00180314 7C 7B 1B 78 */ mr r27, r3 +/* 801833B8 00180318 7C BD 2B 78 */ mr r29, r5 +/* 801833BC 0018031C 7F 83 E3 78 */ mr r3, r28 +/* 801833C0 00180320 7C DE 33 78 */ mr r30, r6 +/* 801833C4 00180324 81 9C 00 00 */ lwz r12, 0(r28) +/* 801833C8 00180328 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801833CC 0018032C 7D 89 03 A6 */ mtctr r12 +/* 801833D0 00180330 4E 80 04 21 */ bctrl +/* 801833D4 00180334 3C 03 B0 BE */ addis r0, r3, 0xb0be +/* 801833D8 00180338 28 00 54 47 */ cmplwi r0, 0x5447 +/* 801833DC 0018033C 40 82 00 0C */ bne lbl_801833E8 +/* 801833E0 00180340 38 60 00 00 */ li r3, 0 +/* 801833E4 00180344 48 00 02 00 */ b lbl_801835E4 +lbl_801833E8: +/* 801833E8 00180348 7F 83 E3 78 */ mr r3, r28 +/* 801833EC 0018034C 83 FB 08 50 */ lwz r31, 0x850(r27) +/* 801833F0 00180350 81 9C 00 00 */ lwz r12, 0(r28) +/* 801833F4 00180354 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801833F8 00180358 7D 89 03 A6 */ mtctr r12 +/* 801833FC 0018035C 4E 80 04 21 */ bctrl +/* 80183400 00180360 3C 03 BE BF */ addis r0, r3, 0xbebf +/* 80183404 00180364 28 00 42 58 */ cmplwi r0, 0x4258 +/* 80183408 00180368 40 82 00 90 */ bne lbl_80183498 +/* 8018340C 0018036C 7F 84 E3 78 */ mr r4, r28 +/* 80183410 00180370 7F A5 EB 78 */ mr r5, r29 +/* 80183414 00180374 81 9C 00 00 */ lwz r12, 0(r28) +/* 80183418 00180378 38 61 00 40 */ addi r3, r1, 0x40 +/* 8018341C 0018037C 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80183420 00180380 7D 89 03 A6 */ mtctr r12 +/* 80183424 00180384 4E 80 04 21 */ bctrl +/* 80183428 00180388 C0 A1 00 40 */ lfs f5, 0x40(r1) +/* 8018342C 0018038C C0 81 00 44 */ lfs f4, 0x44(r1) +/* 80183430 00180390 C0 61 00 48 */ lfs f3, 0x48(r1) +/* 80183434 00180394 C0 41 00 4C */ lfs f2, 0x4c(r1) +/* 80183438 00180398 C0 21 00 50 */ lfs f1, 0x50(r1) +/* 8018343C 0018039C C0 01 00 54 */ lfs f0, 0x54(r1) +/* 80183440 001803A0 D0 A1 00 70 */ stfs f5, 0x70(r1) +/* 80183444 001803A4 D0 81 00 74 */ stfs f4, 0x74(r1) +/* 80183448 001803A8 D0 61 00 78 */ stfs f3, 0x78(r1) +/* 8018344C 001803AC D0 41 00 7C */ stfs f2, 0x7c(r1) +/* 80183450 001803B0 D0 21 00 80 */ stfs f1, 0x80(r1) +/* 80183454 001803B4 D0 01 00 84 */ stfs f0, 0x84(r1) +/* 80183458 001803B8 83 FF 00 58 */ lwz r31, 0x58(r31) +/* 8018345C 001803BC 48 00 00 2C */ b lbl_80183488 +lbl_80183460: +/* 80183460 001803C0 80 7F 01 2C */ lwz r3, 0x12c(r31) +/* 80183464 001803C4 7F C5 F3 78 */ mr r5, r30 +/* 80183468 001803C8 38 81 00 70 */ addi r4, r1, 0x70 +/* 8018346C 001803CC 80 63 00 04 */ lwz r3, 4(r3) +/* 80183470 001803D0 48 12 2F 71 */ bl AABoxCollisionCheckBoolean__20CMetroidAreaColliderFRC12CAreaOctTreeRC6CAABoxRC15CMaterialFilter +/* 80183474 001803D4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80183478 001803D8 41 82 00 0C */ beq lbl_80183484 +/* 8018347C 001803DC 38 60 00 01 */ li r3, 1 +/* 80183480 001803E0 48 00 01 64 */ b lbl_801835E4 +lbl_80183484: +/* 80183484 001803E4 83 FF 01 30 */ lwz r31, 0x130(r31) +lbl_80183488: +/* 80183488 001803E8 80 0D A2 18 */ lwz r0, lbl_805A8DD8@sda21(r13) +/* 8018348C 001803EC 7C 1F 00 40 */ cmplw r31, r0 +/* 80183490 001803F0 40 82 FF D0 */ bne lbl_80183460 +/* 80183494 001803F4 48 00 01 4C */ b lbl_801835E0 +lbl_80183498: +/* 80183498 001803F8 7F 83 E3 78 */ mr r3, r28 +/* 8018349C 001803FC 81 9C 00 00 */ lwz r12, 0(r28) +/* 801834A0 00180400 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801834A4 00180404 7D 89 03 A6 */ mtctr r12 +/* 801834A8 00180408 4E 80 04 21 */ bctrl +/* 801834AC 0018040C 3C 03 AC B0 */ addis r0, r3, 0xacb0 +/* 801834B0 00180410 28 00 48 52 */ cmplwi r0, 0x4852 +/* 801834B4 00180414 40 82 00 C4 */ bne lbl_80183578 +/* 801834B8 00180418 7F 84 E3 78 */ mr r4, r28 +/* 801834BC 0018041C 7F A5 EB 78 */ mr r5, r29 +/* 801834C0 00180420 81 9C 00 00 */ lwz r12, 0(r28) +/* 801834C4 00180424 38 61 00 28 */ addi r3, r1, 0x28 +/* 801834C8 00180428 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801834CC 0018042C 7D 89 03 A6 */ mtctr r12 +/* 801834D0 00180430 4E 80 04 21 */ bctrl +/* 801834D4 00180434 C0 A1 00 28 */ lfs f5, 0x28(r1) +/* 801834D8 00180438 7F 84 E3 78 */ mr r4, r28 +/* 801834DC 0018043C C0 81 00 2C */ lfs f4, 0x2c(r1) +/* 801834E0 00180440 7F A5 EB 78 */ mr r5, r29 +/* 801834E4 00180444 C0 61 00 30 */ lfs f3, 0x30(r1) +/* 801834E8 00180448 38 61 00 08 */ addi r3, r1, 8 +/* 801834EC 0018044C C0 41 00 34 */ lfs f2, 0x34(r1) +/* 801834F0 00180450 C0 21 00 38 */ lfs f1, 0x38(r1) +/* 801834F4 00180454 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 801834F8 00180458 D0 A1 00 58 */ stfs f5, 0x58(r1) +/* 801834FC 0018045C D0 81 00 5C */ stfs f4, 0x5c(r1) +/* 80183500 00180460 D0 61 00 60 */ stfs f3, 0x60(r1) +/* 80183504 00180464 D0 41 00 64 */ stfs f2, 0x64(r1) +/* 80183508 00180468 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 8018350C 0018046C D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 80183510 00180470 48 15 0E 45 */ bl Transform__17CCollidableSphereCFRC12CTransform4f +/* 80183514 00180474 C0 61 00 08 */ lfs f3, 8(r1) +/* 80183518 00180478 C0 41 00 0C */ lfs f2, 0xc(r1) +/* 8018351C 0018047C C0 21 00 10 */ lfs f1, 0x10(r1) +/* 80183520 00180480 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 80183524 00180484 D0 61 00 18 */ stfs f3, 0x18(r1) +/* 80183528 00180488 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 8018352C 0018048C D0 21 00 20 */ stfs f1, 0x20(r1) +/* 80183530 00180490 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80183534 00180494 83 FF 00 58 */ lwz r31, 0x58(r31) +/* 80183538 00180498 48 00 00 30 */ b lbl_80183568 +lbl_8018353C: +/* 8018353C 0018049C 80 7F 01 2C */ lwz r3, 0x12c(r31) +/* 80183540 001804A0 7F C6 F3 78 */ mr r6, r30 +/* 80183544 001804A4 38 81 00 58 */ addi r4, r1, 0x58 +/* 80183548 001804A8 38 A1 00 18 */ addi r5, r1, 0x18 +/* 8018354C 001804AC 80 63 00 04 */ lwz r3, 4(r3) +/* 80183550 001804B0 48 12 27 45 */ bl SphereCollisionCheckBoolean__20CMetroidAreaColliderFRC12CAreaOctTreeRC6CAABoxRC7CSphereRC15CMaterialFilter +/* 80183554 001804B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80183558 001804B8 41 82 00 0C */ beq lbl_80183564 +/* 8018355C 001804BC 38 60 00 01 */ li r3, 1 +/* 80183560 001804C0 48 00 00 84 */ b lbl_801835E4 +lbl_80183564: +/* 80183564 001804C4 83 FF 01 30 */ lwz r31, 0x130(r31) +lbl_80183568: +/* 80183568 001804C8 80 0D A2 18 */ lwz r0, lbl_805A8DD8@sda21(r13) +/* 8018356C 001804CC 7C 1F 00 40 */ cmplw r31, r0 +/* 80183570 001804D0 40 82 FF CC */ bne lbl_8018353C +/* 80183574 001804D4 48 00 00 6C */ b lbl_801835E0 +lbl_80183578: +/* 80183578 001804D8 7F 83 E3 78 */ mr r3, r28 +/* 8018357C 001804DC 81 9C 00 00 */ lwz r12, 0(r28) +/* 80183580 001804E0 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80183584 001804E4 7D 89 03 A6 */ mtctr r12 +/* 80183588 001804E8 4E 80 04 21 */ bctrl +/* 8018358C 001804EC 3C 03 BE BE */ addis r0, r3, 0xbebe +/* 80183590 001804F0 28 00 53 48 */ cmplwi r0, 0x5348 +/* 80183594 001804F4 40 82 00 4C */ bne lbl_801835E0 +/* 80183598 001804F8 7F 63 DB 78 */ mr r3, r27 +/* 8018359C 001804FC 7F A5 EB 78 */ mr r5, r29 +/* 801835A0 00180500 7F C6 F3 78 */ mr r6, r30 +/* 801835A4 00180504 38 9C 00 10 */ addi r4, r28, 0x10 +/* 801835A8 00180508 4B FF FD F9 */ bl DetectStaticCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter +/* 801835AC 0018050C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801835B0 00180510 41 82 00 0C */ beq lbl_801835BC +/* 801835B4 00180514 38 60 00 01 */ li r3, 1 +/* 801835B8 00180518 48 00 00 2C */ b lbl_801835E4 +lbl_801835BC: +/* 801835BC 0018051C 7F 63 DB 78 */ mr r3, r27 +/* 801835C0 00180520 7F A5 EB 78 */ mr r5, r29 +/* 801835C4 00180524 7F C6 F3 78 */ mr r6, r30 +/* 801835C8 00180528 38 9C 00 38 */ addi r4, r28, 0x38 +/* 801835CC 0018052C 4B FF FD D5 */ bl DetectStaticCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter +/* 801835D0 00180530 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801835D4 00180534 41 82 00 0C */ beq lbl_801835E0 +/* 801835D8 00180538 38 60 00 01 */ li r3, 1 +/* 801835DC 0018053C 48 00 00 08 */ b lbl_801835E4 +lbl_801835E0: +/* 801835E0 00180540 38 60 00 00 */ li r3, 0 +lbl_801835E4: +/* 801835E4 00180544 BB 61 00 8C */ lmw r27, 0x8c(r1) +/* 801835E8 00180548 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 801835EC 0018054C 7C 08 03 A6 */ mtlr r0 +/* 801835F0 00180550 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 801835F4 00180554 4E 80 00 20 */ blr + +.global DetectStaticCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter +DetectStaticCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter: +/* 801835F8 00180558 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 801835FC 0018055C 7C 08 02 A6 */ mflr r0 +/* 80183600 00180560 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 80183604 00180564 BF 41 00 88 */ stmw r26, 0x88(r1) +/* 80183608 00180568 7C BD 2B 78 */ mr r29, r5 +/* 8018360C 0018056C 7C 7A 1B 78 */ mr r26, r3 +/* 80183610 00180570 7C 9E 23 78 */ mr r30, r4 +/* 80183614 00180574 7F A3 EB 78 */ mr r3, r29 +/* 80183618 00180578 7C DB 33 78 */ mr r27, r6 +/* 8018361C 0018057C 7C FF 3B 78 */ mr r31, r7 +/* 80183620 00180580 81 9D 00 00 */ lwz r12, 0(r29) +/* 80183624 00180584 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80183628 00180588 7D 89 03 A6 */ mtctr r12 +/* 8018362C 0018058C 4E 80 04 21 */ bctrl +/* 80183630 00180590 3C 03 B0 BE */ addis r0, r3, 0xb0be +/* 80183634 00180594 28 00 54 47 */ cmplwi r0, 0x5447 +/* 80183638 00180598 40 82 00 0C */ bne lbl_80183644 +/* 8018363C 0018059C 38 60 00 00 */ li r3, 0 +/* 80183640 001805A0 48 00 02 8C */ b lbl_801838CC +lbl_80183644: +/* 80183644 001805A4 7F A4 EB 78 */ mr r4, r29 +/* 80183648 001805A8 7F 65 DB 78 */ mr r5, r27 +/* 8018364C 001805AC 81 9D 00 00 */ lwz r12, 0(r29) +/* 80183650 001805B0 38 61 00 40 */ addi r3, r1, 0x40 +/* 80183654 001805B4 3B 80 00 00 */ li r28, 0 +/* 80183658 001805B8 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 8018365C 001805BC 7D 89 03 A6 */ mtctr r12 +/* 80183660 001805C0 4E 80 04 21 */ bctrl +/* 80183664 001805C4 C0 A1 00 40 */ lfs f5, 0x40(r1) +/* 80183668 001805C8 7F C4 F3 78 */ mr r4, r30 +/* 8018366C 001805CC C0 81 00 44 */ lfs f4, 0x44(r1) +/* 80183670 001805D0 38 61 00 70 */ addi r3, r1, 0x70 +/* 80183674 001805D4 C0 61 00 48 */ lfs f3, 0x48(r1) +/* 80183678 001805D8 C0 41 00 4C */ lfs f2, 0x4c(r1) +/* 8018367C 001805DC C0 21 00 50 */ lfs f1, 0x50(r1) +/* 80183680 001805E0 C0 01 00 54 */ lfs f0, 0x54(r1) +/* 80183684 001805E4 D0 A1 00 70 */ stfs f5, 0x70(r1) +/* 80183688 001805E8 D0 81 00 74 */ stfs f4, 0x74(r1) +/* 8018368C 001805EC D0 61 00 78 */ stfs f3, 0x78(r1) +/* 80183690 001805F0 D0 41 00 7C */ stfs f2, 0x7c(r1) +/* 80183694 001805F4 D0 21 00 80 */ stfs f1, 0x80(r1) +/* 80183698 001805F8 D0 01 00 84 */ stfs f0, 0x84(r1) +/* 8018369C 001805FC 48 1B 43 E5 */ bl Inside__6CAABoxCFRC6CAABox +/* 801836A0 00180600 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801836A4 00180604 40 82 00 98 */ bne lbl_8018373C +/* 801836A8 00180608 C0 41 00 80 */ lfs f2, 0x80(r1) +/* 801836AC 0018060C 38 61 00 58 */ addi r3, r1, 0x58 +/* 801836B0 00180610 C0 82 A2 F0 */ lfs f4, lbl_805AC010@sda21(r2) +/* 801836B4 00180614 38 81 00 24 */ addi r4, r1, 0x24 +/* 801836B8 00180618 C0 21 00 84 */ lfs f1, 0x84(r1) +/* 801836BC 0018061C 38 A1 00 18 */ addi r5, r1, 0x18 +/* 801836C0 00180620 C0 01 00 7C */ lfs f0, 0x7c(r1) +/* 801836C4 00180624 EC C2 20 2A */ fadds f6, f2, f4 +/* 801836C8 00180628 C0 41 00 74 */ lfs f2, 0x74(r1) +/* 801836CC 0018062C EC A1 20 2A */ fadds f5, f1, f4 +/* 801836D0 00180630 C0 21 00 78 */ lfs f1, 0x78(r1) +/* 801836D4 00180634 EC 60 20 2A */ fadds f3, f0, f4 +/* 801836D8 00180638 C0 01 00 70 */ lfs f0, 0x70(r1) +/* 801836DC 0018063C EC 42 20 28 */ fsubs f2, f2, f4 +/* 801836E0 00180640 D0 C1 00 1C */ stfs f6, 0x1c(r1) +/* 801836E4 00180644 EC 21 20 28 */ fsubs f1, f1, f4 +/* 801836E8 00180648 EC 00 20 28 */ fsubs f0, f0, f4 +/* 801836EC 0018064C D0 61 00 18 */ stfs f3, 0x18(r1) +/* 801836F0 00180650 D0 A1 00 20 */ stfs f5, 0x20(r1) +/* 801836F4 00180654 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801836F8 00180658 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801836FC 0018065C D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 80183700 00180660 48 1B 4E 09 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 80183704 00180664 7F C4 F3 78 */ mr r4, r30 +/* 80183708 00180668 38 61 00 58 */ addi r3, r1, 0x58 +/* 8018370C 0018066C 48 1B 43 FD */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 80183710 00180670 38 61 00 58 */ addi r3, r1, 0x58 +/* 80183714 00180674 38 9E 00 0C */ addi r4, r30, 0xc +/* 80183718 00180678 48 1B 43 F1 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 8018371C 0018067C 7F C3 F3 78 */ mr r3, r30 +/* 80183720 00180680 38 81 00 58 */ addi r4, r1, 0x58 +/* 80183724 00180684 48 12 01 C1 */ bl SetCacheBounds__19CAreaCollisionCacheFRC6CAABox +/* 80183728 00180688 7F 43 D3 78 */ mr r3, r26 +/* 8018372C 0018068C 7F C4 F3 78 */ mr r4, r30 +/* 80183730 00180690 48 00 0F 95 */ bl BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache +/* 80183734 00180694 38 60 00 00 */ li r3, 0 +/* 80183738 00180698 4B F3 0D C1 */ bl IsUser__Fi +lbl_8018373C: +/* 8018373C 0018069C 88 1E 1B 40 */ lbz r0, 0x1b40(r30) +/* 80183740 001806A0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80183744 001806A4 41 82 00 1C */ beq lbl_80183760 +/* 80183748 001806A8 7F 43 D3 78 */ mr r3, r26 +/* 8018374C 001806AC 7F A4 EB 78 */ mr r4, r29 +/* 80183750 001806B0 7F 65 DB 78 */ mr r5, r27 +/* 80183754 001806B4 7F E6 FB 78 */ mr r6, r31 +/* 80183758 001806B8 4B FF FC 49 */ bl DetectStaticCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter +/* 8018375C 001806BC 48 00 01 70 */ b lbl_801838CC +lbl_80183760: +/* 80183760 001806C0 7F A3 EB 78 */ mr r3, r29 +/* 80183764 001806C4 81 9D 00 00 */ lwz r12, 0(r29) +/* 80183768 001806C8 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 8018376C 001806CC 7D 89 03 A6 */ mtctr r12 +/* 80183770 001806D0 4E 80 04 21 */ bctrl +/* 80183774 001806D4 3C 03 BE BF */ addis r0, r3, 0xbebf +/* 80183778 001806D8 28 00 42 58 */ cmplwi r0, 0x4258 +/* 8018377C 001806DC 40 82 00 48 */ bne lbl_801837C4 +/* 80183780 001806E0 3B BE 00 1C */ addi r29, r30, 0x1c +/* 80183784 001806E4 3B 60 00 00 */ li r27, 0 +/* 80183788 001806E8 48 00 00 2C */ b lbl_801837B4 +lbl_8018378C: +/* 8018378C 001806EC 7F A3 EB 78 */ mr r3, r29 +/* 80183790 001806F0 7F E5 FB 78 */ mr r5, r31 +/* 80183794 001806F4 38 81 00 70 */ addi r4, r1, 0x70 +/* 80183798 001806F8 48 12 2D 69 */ bl AABoxCollisionCheckBoolean_Cached__20CMetroidAreaColliderFRCQ220CMetroidAreaCollider16COctreeLeafCacheRC6CAABoxRC15CMaterialFilter +/* 8018379C 001806FC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801837A0 00180700 41 82 00 0C */ beq lbl_801837AC +/* 801837A4 00180704 3B 80 00 01 */ li r28, 1 +/* 801837A8 00180708 48 00 01 20 */ b lbl_801838C8 +lbl_801837AC: +/* 801837AC 0018070C 3B BD 09 0C */ addi r29, r29, 0x90c +/* 801837B0 00180710 3B 7B 00 01 */ addi r27, r27, 1 +lbl_801837B4: +/* 801837B4 00180714 80 1E 00 18 */ lwz r0, 0x18(r30) +/* 801837B8 00180718 7C 1B 00 00 */ cmpw r27, r0 +/* 801837BC 0018071C 41 80 FF D0 */ blt lbl_8018378C +/* 801837C0 00180720 48 00 01 08 */ b lbl_801838C8 +lbl_801837C4: +/* 801837C4 00180724 7F A3 EB 78 */ mr r3, r29 +/* 801837C8 00180728 81 9D 00 00 */ lwz r12, 0(r29) +/* 801837CC 0018072C 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801837D0 00180730 7D 89 03 A6 */ mtctr r12 +/* 801837D4 00180734 4E 80 04 21 */ bctrl +/* 801837D8 00180738 3C 03 AC B0 */ addis r0, r3, 0xacb0 +/* 801837DC 0018073C 28 00 48 52 */ cmplwi r0, 0x4852 +/* 801837E0 00180740 40 82 00 7C */ bne lbl_8018385C +/* 801837E4 00180744 7F A4 EB 78 */ mr r4, r29 +/* 801837E8 00180748 7F 65 DB 78 */ mr r5, r27 +/* 801837EC 0018074C 38 61 00 08 */ addi r3, r1, 8 +/* 801837F0 00180750 48 15 0B 65 */ bl Transform__17CCollidableSphereCFRC12CTransform4f +/* 801837F4 00180754 C0 61 00 08 */ lfs f3, 8(r1) +/* 801837F8 00180758 3B BE 00 1C */ addi r29, r30, 0x1c +/* 801837FC 0018075C C0 41 00 0C */ lfs f2, 0xc(r1) +/* 80183800 00180760 3B 60 00 00 */ li r27, 0 +/* 80183804 00180764 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 80183808 00180768 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 8018380C 0018076C D0 61 00 30 */ stfs f3, 0x30(r1) +/* 80183810 00180770 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 80183814 00180774 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 80183818 00180778 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 8018381C 0018077C 48 00 00 30 */ b lbl_8018384C +lbl_80183820: +/* 80183820 00180780 7F A3 EB 78 */ mr r3, r29 +/* 80183824 00180784 7F E6 FB 78 */ mr r6, r31 +/* 80183828 00180788 38 81 00 70 */ addi r4, r1, 0x70 +/* 8018382C 0018078C 38 A1 00 30 */ addi r5, r1, 0x30 +/* 80183830 00180790 48 12 24 DD */ bl SphereCollisionCheckBoolean_Cached__20CMetroidAreaColliderFRCQ220CMetroidAreaCollider16COctreeLeafCacheRC6CAABoxRC7CSphereRC15CMaterialFilter +/* 80183834 00180794 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80183838 00180798 41 82 00 0C */ beq lbl_80183844 +/* 8018383C 0018079C 3B 80 00 01 */ li r28, 1 +/* 80183840 001807A0 48 00 00 88 */ b lbl_801838C8 +lbl_80183844: +/* 80183844 001807A4 3B BD 09 0C */ addi r29, r29, 0x90c +/* 80183848 001807A8 3B 7B 00 01 */ addi r27, r27, 1 +lbl_8018384C: +/* 8018384C 001807AC 80 1E 00 18 */ lwz r0, 0x18(r30) +/* 80183850 001807B0 7C 1B 00 00 */ cmpw r27, r0 +/* 80183854 001807B4 41 80 FF CC */ blt lbl_80183820 +/* 80183858 001807B8 48 00 00 70 */ b lbl_801838C8 +lbl_8018385C: +/* 8018385C 001807BC 7F A3 EB 78 */ mr r3, r29 +/* 80183860 001807C0 81 9D 00 00 */ lwz r12, 0(r29) +/* 80183864 001807C4 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80183868 001807C8 7D 89 03 A6 */ mtctr r12 +/* 8018386C 001807CC 4E 80 04 21 */ bctrl +/* 80183870 001807D0 3C 03 BE BE */ addis r0, r3, 0xbebe +/* 80183874 001807D4 28 00 53 48 */ cmplwi r0, 0x5348 +/* 80183878 001807D8 40 82 00 50 */ bne lbl_801838C8 +/* 8018387C 001807DC 7F 43 D3 78 */ mr r3, r26 +/* 80183880 001807E0 7F C4 F3 78 */ mr r4, r30 +/* 80183884 001807E4 7F 66 DB 78 */ mr r6, r27 +/* 80183888 001807E8 7F E7 FB 78 */ mr r7, r31 +/* 8018388C 001807EC 38 BD 00 10 */ addi r5, r29, 0x10 +/* 80183890 001807F0 4B FF FD 69 */ bl DetectStaticCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter +/* 80183894 001807F4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80183898 001807F8 41 82 00 0C */ beq lbl_801838A4 +/* 8018389C 001807FC 3B 80 00 01 */ li r28, 1 +/* 801838A0 00180800 48 00 00 28 */ b lbl_801838C8 +lbl_801838A4: +/* 801838A4 00180804 7F 43 D3 78 */ mr r3, r26 +/* 801838A8 00180808 7F C4 F3 78 */ mr r4, r30 +/* 801838AC 0018080C 7F 66 DB 78 */ mr r6, r27 +/* 801838B0 00180810 7F E7 FB 78 */ mr r7, r31 +/* 801838B4 00180814 38 BD 00 38 */ addi r5, r29, 0x38 +/* 801838B8 00180818 4B FF FD 41 */ bl DetectStaticCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter +/* 801838BC 0018081C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801838C0 00180820 41 82 00 08 */ beq lbl_801838C8 +/* 801838C4 00180824 3B 80 00 01 */ li r28, 1 +lbl_801838C8: +/* 801838C8 00180828 7F 83 E3 78 */ mr r3, r28 +lbl_801838CC: +/* 801838CC 0018082C BB 41 00 88 */ lmw r26, 0x88(r1) +/* 801838D0 00180830 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 801838D4 00180834 7C 08 03 A6 */ mtlr r0 +/* 801838D8 00180838 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 801838DC 0018083C 4E 80 00 20 */ blr + +.global DetectStaticCollision__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterR18CCollisionInfoList +DetectStaticCollision__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterR18CCollisionInfoList: +/* 801838E0 00180840 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 801838E4 00180844 7C 08 02 A6 */ mflr r0 +/* 801838E8 00180848 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 801838EC 0018084C BF 21 00 94 */ stmw r25, 0x94(r1) +/* 801838F0 00180850 7C 9A 23 78 */ mr r26, r4 +/* 801838F4 00180854 7C 79 1B 78 */ mr r25, r3 +/* 801838F8 00180858 7C BB 2B 78 */ mr r27, r5 +/* 801838FC 0018085C 7F 43 D3 78 */ mr r3, r26 +/* 80183900 00180860 7C DD 33 78 */ mr r29, r6 +/* 80183904 00180864 7C FE 3B 78 */ mr r30, r7 +/* 80183908 00180868 81 9A 00 00 */ lwz r12, 0(r26) +/* 8018390C 0018086C 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80183910 00180870 7D 89 03 A6 */ mtctr r12 +/* 80183914 00180874 4E 80 04 21 */ bctrl +/* 80183918 00180878 3C 03 B0 BE */ addis r0, r3, 0xb0be +/* 8018391C 0018087C 28 00 54 47 */ cmplwi r0, 0x5447 +/* 80183920 00180880 40 82 00 0C */ bne lbl_8018392C +/* 80183924 00180884 38 60 00 00 */ li r3, 0 +/* 80183928 00180888 48 00 02 3C */ b lbl_80183B64 +lbl_8018392C: +/* 8018392C 0018088C 7F 43 D3 78 */ mr r3, r26 +/* 80183930 00180890 83 99 08 50 */ lwz r28, 0x850(r25) +/* 80183934 00180894 81 9A 00 00 */ lwz r12, 0(r26) +/* 80183938 00180898 3B E0 00 00 */ li r31, 0 +/* 8018393C 0018089C 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80183940 001808A0 7D 89 03 A6 */ mtctr r12 +/* 80183944 001808A4 4E 80 04 21 */ bctrl +/* 80183948 001808A8 3C 03 BE BF */ addis r0, r3, 0xbebf +/* 8018394C 001808AC 28 00 42 58 */ cmplwi r0, 0x4258 +/* 80183950 001808B0 40 82 00 AC */ bne lbl_801839FC +/* 80183954 001808B4 81 9A 00 00 */ lwz r12, 0(r26) +/* 80183958 001808B8 7F 44 D3 78 */ mr r4, r26 +/* 8018395C 001808BC 7F 65 DB 78 */ mr r5, r27 +/* 80183960 001808C0 38 61 00 40 */ addi r3, r1, 0x40 +/* 80183964 001808C4 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80183968 001808C8 7D 89 03 A6 */ mtctr r12 +/* 8018396C 001808CC 4E 80 04 21 */ bctrl +/* 80183970 001808D0 C0 A1 00 40 */ lfs f5, 0x40(r1) +/* 80183974 001808D4 C0 81 00 44 */ lfs f4, 0x44(r1) +/* 80183978 001808D8 C0 61 00 48 */ lfs f3, 0x48(r1) +/* 8018397C 001808DC C0 41 00 4C */ lfs f2, 0x4c(r1) +/* 80183980 001808E0 C0 21 00 50 */ lfs f1, 0x50(r1) +/* 80183984 001808E4 C0 01 00 54 */ lfs f0, 0x54(r1) +/* 80183988 001808E8 D0 A1 00 70 */ stfs f5, 0x70(r1) +/* 8018398C 001808EC D0 81 00 74 */ stfs f4, 0x74(r1) +/* 80183990 001808F0 D0 61 00 78 */ stfs f3, 0x78(r1) +/* 80183994 001808F4 D0 41 00 7C */ stfs f2, 0x7c(r1) +/* 80183998 001808F8 D0 21 00 80 */ stfs f1, 0x80(r1) +/* 8018399C 001808FC D0 01 00 84 */ stfs f0, 0x84(r1) +/* 801839A0 00180900 83 7C 00 58 */ lwz r27, 0x58(r28) +/* 801839A4 00180904 48 00 00 48 */ b lbl_801839EC +lbl_801839A8: +/* 801839A8 00180908 7F 43 D3 78 */ mr r3, r26 +/* 801839AC 0018090C 80 9B 01 2C */ lwz r4, 0x12c(r27) +/* 801839B0 00180910 81 9A 00 00 */ lwz r12, 0(r26) +/* 801839B4 00180914 83 84 00 04 */ lwz r28, 4(r4) +/* 801839B8 00180918 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 801839BC 0018091C 7D 89 03 A6 */ mtctr r12 +/* 801839C0 00180920 4E 80 04 21 */ bctrl +/* 801839C4 00180924 7C 66 1B 78 */ mr r6, r3 +/* 801839C8 00180928 7F 83 E3 78 */ mr r3, r28 +/* 801839CC 0018092C 7F A5 EB 78 */ mr r5, r29 +/* 801839D0 00180930 7F C7 F3 78 */ mr r7, r30 +/* 801839D4 00180934 38 81 00 70 */ addi r4, r1, 0x70 +/* 801839D8 00180938 48 12 2E 25 */ bl AABoxCollisionCheck__20CMetroidAreaColliderFRC12CAreaOctTreeRC6CAABoxRC15CMaterialFilterRC13CMaterialListR18CCollisionInfoList +/* 801839DC 0018093C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801839E0 00180940 41 82 00 08 */ beq lbl_801839E8 +/* 801839E4 00180944 3B E0 00 01 */ li r31, 1 +lbl_801839E8: +/* 801839E8 00180948 83 7B 01 30 */ lwz r27, 0x130(r27) +lbl_801839EC: +/* 801839EC 0018094C 80 0D A2 18 */ lwz r0, lbl_805A8DD8@sda21(r13) +/* 801839F0 00180950 7C 1B 00 40 */ cmplw r27, r0 +/* 801839F4 00180954 40 82 FF B4 */ bne lbl_801839A8 +/* 801839F8 00180958 48 00 01 68 */ b lbl_80183B60 +lbl_801839FC: +/* 801839FC 0018095C 7F 43 D3 78 */ mr r3, r26 +/* 80183A00 00180960 81 9A 00 00 */ lwz r12, 0(r26) +/* 80183A04 00180964 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80183A08 00180968 7D 89 03 A6 */ mtctr r12 +/* 80183A0C 0018096C 4E 80 04 21 */ bctrl +/* 80183A10 00180970 3C 03 AC B0 */ addis r0, r3, 0xacb0 +/* 80183A14 00180974 28 00 48 52 */ cmplwi r0, 0x4852 +/* 80183A18 00180978 40 82 00 E0 */ bne lbl_80183AF8 +/* 80183A1C 0018097C 81 9A 00 00 */ lwz r12, 0(r26) +/* 80183A20 00180980 7F 44 D3 78 */ mr r4, r26 +/* 80183A24 00180984 7F 65 DB 78 */ mr r5, r27 +/* 80183A28 00180988 38 61 00 28 */ addi r3, r1, 0x28 +/* 80183A2C 0018098C 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80183A30 00180990 7D 89 03 A6 */ mtctr r12 +/* 80183A34 00180994 4E 80 04 21 */ bctrl +/* 80183A38 00180998 C0 A1 00 28 */ lfs f5, 0x28(r1) +/* 80183A3C 0018099C 7F 44 D3 78 */ mr r4, r26 +/* 80183A40 001809A0 C0 81 00 2C */ lfs f4, 0x2c(r1) +/* 80183A44 001809A4 7F 65 DB 78 */ mr r5, r27 +/* 80183A48 001809A8 C0 61 00 30 */ lfs f3, 0x30(r1) +/* 80183A4C 001809AC 38 61 00 08 */ addi r3, r1, 8 +/* 80183A50 001809B0 C0 41 00 34 */ lfs f2, 0x34(r1) +/* 80183A54 001809B4 C0 21 00 38 */ lfs f1, 0x38(r1) +/* 80183A58 001809B8 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 80183A5C 001809BC D0 A1 00 58 */ stfs f5, 0x58(r1) +/* 80183A60 001809C0 D0 81 00 5C */ stfs f4, 0x5c(r1) +/* 80183A64 001809C4 D0 61 00 60 */ stfs f3, 0x60(r1) +/* 80183A68 001809C8 D0 41 00 64 */ stfs f2, 0x64(r1) +/* 80183A6C 001809CC D0 21 00 68 */ stfs f1, 0x68(r1) +/* 80183A70 001809D0 D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 80183A74 001809D4 48 15 08 E1 */ bl Transform__17CCollidableSphereCFRC12CTransform4f +/* 80183A78 001809D8 C0 61 00 08 */ lfs f3, 8(r1) +/* 80183A7C 001809DC C0 41 00 0C */ lfs f2, 0xc(r1) +/* 80183A80 001809E0 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 80183A84 001809E4 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 80183A88 001809E8 D0 61 00 18 */ stfs f3, 0x18(r1) +/* 80183A8C 001809EC D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 80183A90 001809F0 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 80183A94 001809F4 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80183A98 001809F8 83 7C 00 58 */ lwz r27, 0x58(r28) +/* 80183A9C 001809FC 48 00 00 4C */ b lbl_80183AE8 +lbl_80183AA0: +/* 80183AA0 00180A00 7F 43 D3 78 */ mr r3, r26 +/* 80183AA4 00180A04 80 9B 01 2C */ lwz r4, 0x12c(r27) +/* 80183AA8 00180A08 81 9A 00 00 */ lwz r12, 0(r26) +/* 80183AAC 00180A0C 83 84 00 04 */ lwz r28, 4(r4) +/* 80183AB0 00180A10 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 80183AB4 00180A14 7D 89 03 A6 */ mtctr r12 +/* 80183AB8 00180A18 4E 80 04 21 */ bctrl +/* 80183ABC 00180A1C 7C 66 1B 78 */ mr r6, r3 +/* 80183AC0 00180A20 7F 83 E3 78 */ mr r3, r28 +/* 80183AC4 00180A24 7F A7 EB 78 */ mr r7, r29 +/* 80183AC8 00180A28 7F C8 F3 78 */ mr r8, r30 +/* 80183ACC 00180A2C 38 81 00 58 */ addi r4, r1, 0x58 +/* 80183AD0 00180A30 38 A1 00 18 */ addi r5, r1, 0x18 +/* 80183AD4 00180A34 48 12 24 D1 */ bl SphereCollisionCheck__20CMetroidAreaColliderFRC12CAreaOctTreeRC6CAABoxRC7CSphereRC13CMaterialListRC15CMaterialFilterR18CCollisionInfoList +/* 80183AD8 00180A38 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80183ADC 00180A3C 41 82 00 08 */ beq lbl_80183AE4 +/* 80183AE0 00180A40 3B E0 00 01 */ li r31, 1 +lbl_80183AE4: +/* 80183AE4 00180A44 83 7B 01 30 */ lwz r27, 0x130(r27) +lbl_80183AE8: +/* 80183AE8 00180A48 80 0D A2 18 */ lwz r0, lbl_805A8DD8@sda21(r13) +/* 80183AEC 00180A4C 7C 1B 00 40 */ cmplw r27, r0 +/* 80183AF0 00180A50 40 82 FF B0 */ bne lbl_80183AA0 +/* 80183AF4 00180A54 48 00 00 6C */ b lbl_80183B60 +lbl_80183AF8: +/* 80183AF8 00180A58 7F 43 D3 78 */ mr r3, r26 +/* 80183AFC 00180A5C 81 9A 00 00 */ lwz r12, 0(r26) +/* 80183B00 00180A60 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80183B04 00180A64 7D 89 03 A6 */ mtctr r12 +/* 80183B08 00180A68 4E 80 04 21 */ bctrl +/* 80183B0C 00180A6C 3C 03 BE BE */ addis r0, r3, 0xbebe +/* 80183B10 00180A70 28 00 53 48 */ cmplwi r0, 0x5348 +/* 80183B14 00180A74 40 82 00 4C */ bne lbl_80183B60 +/* 80183B18 00180A78 7F 23 CB 78 */ mr r3, r25 +/* 80183B1C 00180A7C 7F 65 DB 78 */ mr r5, r27 +/* 80183B20 00180A80 7F A6 EB 78 */ mr r6, r29 +/* 80183B24 00180A84 7F C7 F3 78 */ mr r7, r30 +/* 80183B28 00180A88 38 9A 00 10 */ addi r4, r26, 0x10 +/* 80183B2C 00180A8C 4B FF FD B5 */ bl DetectStaticCollision__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterR18CCollisionInfoList +/* 80183B30 00180A90 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80183B34 00180A94 41 82 00 08 */ beq lbl_80183B3C +/* 80183B38 00180A98 3B E0 00 01 */ li r31, 1 +lbl_80183B3C: +/* 80183B3C 00180A9C 7F 23 CB 78 */ mr r3, r25 +/* 80183B40 00180AA0 7F 65 DB 78 */ mr r5, r27 +/* 80183B44 00180AA4 7F A6 EB 78 */ mr r6, r29 +/* 80183B48 00180AA8 7F C7 F3 78 */ mr r7, r30 +/* 80183B4C 00180AAC 38 9A 00 38 */ addi r4, r26, 0x38 +/* 80183B50 00180AB0 4B FF FD 91 */ bl DetectStaticCollision__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterR18CCollisionInfoList +/* 80183B54 00180AB4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80183B58 00180AB8 41 82 00 08 */ beq lbl_80183B60 +/* 80183B5C 00180ABC 3B E0 00 01 */ li r31, 1 +lbl_80183B60: +/* 80183B60 00180AC0 7F E3 FB 78 */ mr r3, r31 +lbl_80183B64: +/* 80183B64 00180AC4 BB 21 00 94 */ lmw r25, 0x94(r1) +/* 80183B68 00180AC8 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 80183B6C 00180ACC 7C 08 03 A6 */ mtlr r0 +/* 80183B70 00180AD0 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 80183B74 00180AD4 4E 80 00 20 */ blr + +.global DetectStaticCollision_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterR18CCollisionInfoList +DetectStaticCollision_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterR18CCollisionInfoList: +/* 80183B78 00180AD8 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 80183B7C 00180ADC 7C 08 02 A6 */ mflr r0 +/* 80183B80 00180AE0 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 80183B84 00180AE4 BF 21 00 94 */ stmw r25, 0x94(r1) +/* 80183B88 00180AE8 7C B9 2B 78 */ mr r25, r5 +/* 80183B8C 00180AEC 7C 7B 1B 78 */ mr r27, r3 +/* 80183B90 00180AF0 7C 9C 23 78 */ mr r28, r4 +/* 80183B94 00180AF4 7F 23 CB 78 */ mr r3, r25 +/* 80183B98 00180AF8 7C DA 33 78 */ mr r26, r6 +/* 80183B9C 00180AFC 7C FD 3B 78 */ mr r29, r7 +/* 80183BA0 00180B00 7D 1E 43 78 */ mr r30, r8 +/* 80183BA4 00180B04 81 99 00 00 */ lwz r12, 0(r25) +/* 80183BA8 00180B08 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80183BAC 00180B0C 7D 89 03 A6 */ mtctr r12 +/* 80183BB0 00180B10 4E 80 04 21 */ bctrl +/* 80183BB4 00180B14 3C 03 B0 BE */ addis r0, r3, 0xb0be +/* 80183BB8 00180B18 28 00 54 47 */ cmplwi r0, 0x5447 +/* 80183BBC 00180B1C 40 82 00 0C */ bne lbl_80183BC8 +/* 80183BC0 00180B20 38 60 00 00 */ li r3, 0 +/* 80183BC4 00180B24 48 00 02 C8 */ b lbl_80183E8C +lbl_80183BC8: +/* 80183BC8 00180B28 7F 24 CB 78 */ mr r4, r25 +/* 80183BCC 00180B2C 7F 45 D3 78 */ mr r5, r26 +/* 80183BD0 00180B30 81 99 00 00 */ lwz r12, 0(r25) +/* 80183BD4 00180B34 38 61 00 40 */ addi r3, r1, 0x40 +/* 80183BD8 00180B38 3B E0 00 00 */ li r31, 0 +/* 80183BDC 00180B3C 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80183BE0 00180B40 7D 89 03 A6 */ mtctr r12 +/* 80183BE4 00180B44 4E 80 04 21 */ bctrl +/* 80183BE8 00180B48 C0 A1 00 40 */ lfs f5, 0x40(r1) +/* 80183BEC 00180B4C 7F 84 E3 78 */ mr r4, r28 +/* 80183BF0 00180B50 C0 81 00 44 */ lfs f4, 0x44(r1) +/* 80183BF4 00180B54 38 61 00 70 */ addi r3, r1, 0x70 +/* 80183BF8 00180B58 C0 61 00 48 */ lfs f3, 0x48(r1) +/* 80183BFC 00180B5C C0 41 00 4C */ lfs f2, 0x4c(r1) +/* 80183C00 00180B60 C0 21 00 50 */ lfs f1, 0x50(r1) +/* 80183C04 00180B64 C0 01 00 54 */ lfs f0, 0x54(r1) +/* 80183C08 00180B68 D0 A1 00 70 */ stfs f5, 0x70(r1) +/* 80183C0C 00180B6C D0 81 00 74 */ stfs f4, 0x74(r1) +/* 80183C10 00180B70 D0 61 00 78 */ stfs f3, 0x78(r1) +/* 80183C14 00180B74 D0 41 00 7C */ stfs f2, 0x7c(r1) +/* 80183C18 00180B78 D0 21 00 80 */ stfs f1, 0x80(r1) +/* 80183C1C 00180B7C D0 01 00 84 */ stfs f0, 0x84(r1) +/* 80183C20 00180B80 48 1B 3E 61 */ bl Inside__6CAABoxCFRC6CAABox +/* 80183C24 00180B84 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80183C28 00180B88 40 82 00 98 */ bne lbl_80183CC0 +/* 80183C2C 00180B8C C0 41 00 80 */ lfs f2, 0x80(r1) +/* 80183C30 00180B90 38 61 00 58 */ addi r3, r1, 0x58 +/* 80183C34 00180B94 C0 82 A2 F0 */ lfs f4, lbl_805AC010@sda21(r2) +/* 80183C38 00180B98 38 81 00 24 */ addi r4, r1, 0x24 +/* 80183C3C 00180B9C C0 21 00 84 */ lfs f1, 0x84(r1) +/* 80183C40 00180BA0 38 A1 00 18 */ addi r5, r1, 0x18 +/* 80183C44 00180BA4 C0 01 00 7C */ lfs f0, 0x7c(r1) +/* 80183C48 00180BA8 EC C2 20 2A */ fadds f6, f2, f4 +/* 80183C4C 00180BAC C0 41 00 74 */ lfs f2, 0x74(r1) +/* 80183C50 00180BB0 EC A1 20 2A */ fadds f5, f1, f4 +/* 80183C54 00180BB4 C0 21 00 78 */ lfs f1, 0x78(r1) +/* 80183C58 00180BB8 EC 60 20 2A */ fadds f3, f0, f4 +/* 80183C5C 00180BBC C0 01 00 70 */ lfs f0, 0x70(r1) +/* 80183C60 00180BC0 EC 42 20 28 */ fsubs f2, f2, f4 +/* 80183C64 00180BC4 D0 C1 00 1C */ stfs f6, 0x1c(r1) +/* 80183C68 00180BC8 EC 21 20 28 */ fsubs f1, f1, f4 +/* 80183C6C 00180BCC EC 00 20 28 */ fsubs f0, f0, f4 +/* 80183C70 00180BD0 D0 61 00 18 */ stfs f3, 0x18(r1) +/* 80183C74 00180BD4 D0 A1 00 20 */ stfs f5, 0x20(r1) +/* 80183C78 00180BD8 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80183C7C 00180BDC D0 41 00 28 */ stfs f2, 0x28(r1) +/* 80183C80 00180BE0 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 80183C84 00180BE4 48 1B 48 85 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 80183C88 00180BE8 7F 84 E3 78 */ mr r4, r28 +/* 80183C8C 00180BEC 38 61 00 58 */ addi r3, r1, 0x58 +/* 80183C90 00180BF0 48 1B 3E 79 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 80183C94 00180BF4 38 61 00 58 */ addi r3, r1, 0x58 +/* 80183C98 00180BF8 38 9C 00 0C */ addi r4, r28, 0xc +/* 80183C9C 00180BFC 48 1B 3E 6D */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 80183CA0 00180C00 7F 83 E3 78 */ mr r3, r28 +/* 80183CA4 00180C04 38 81 00 58 */ addi r4, r1, 0x58 +/* 80183CA8 00180C08 48 11 FC 3D */ bl SetCacheBounds__19CAreaCollisionCacheFRC6CAABox +/* 80183CAC 00180C0C 7F 63 DB 78 */ mr r3, r27 +/* 80183CB0 00180C10 7F 84 E3 78 */ mr r4, r28 +/* 80183CB4 00180C14 48 00 0A 11 */ bl BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache +/* 80183CB8 00180C18 38 60 00 00 */ li r3, 0 +/* 80183CBC 00180C1C 4B F3 08 3D */ bl IsUser__Fi +lbl_80183CC0: +/* 80183CC0 00180C20 88 1C 1B 40 */ lbz r0, 0x1b40(r28) +/* 80183CC4 00180C24 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80183CC8 00180C28 41 82 00 20 */ beq lbl_80183CE8 +/* 80183CCC 00180C2C 7F 63 DB 78 */ mr r3, r27 +/* 80183CD0 00180C30 7F 24 CB 78 */ mr r4, r25 +/* 80183CD4 00180C34 7F 45 D3 78 */ mr r5, r26 +/* 80183CD8 00180C38 7F A6 EB 78 */ mr r6, r29 +/* 80183CDC 00180C3C 7F C7 F3 78 */ mr r7, r30 +/* 80183CE0 00180C40 4B FF FC 01 */ bl DetectStaticCollision__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterR18CCollisionInfoList +/* 80183CE4 00180C44 48 00 01 A8 */ b lbl_80183E8C +lbl_80183CE8: +/* 80183CE8 00180C48 7F 23 CB 78 */ mr r3, r25 +/* 80183CEC 00180C4C 81 99 00 00 */ lwz r12, 0(r25) +/* 80183CF0 00180C50 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80183CF4 00180C54 7D 89 03 A6 */ mtctr r12 +/* 80183CF8 00180C58 4E 80 04 21 */ bctrl +/* 80183CFC 00180C5C 3C 03 BE BF */ addis r0, r3, 0xbebf +/* 80183D00 00180C60 28 00 42 58 */ cmplwi r0, 0x4258 +/* 80183D04 00180C64 40 82 00 64 */ bne lbl_80183D68 +/* 80183D08 00180C68 7F 3A CB 78 */ mr r26, r25 +/* 80183D0C 00180C6C 3B 7C 00 1C */ addi r27, r28, 0x1c +/* 80183D10 00180C70 3B 20 00 00 */ li r25, 0 +/* 80183D14 00180C74 48 00 00 44 */ b lbl_80183D58 +lbl_80183D18: +/* 80183D18 00180C78 7F 43 D3 78 */ mr r3, r26 +/* 80183D1C 00180C7C 81 9A 00 00 */ lwz r12, 0(r26) +/* 80183D20 00180C80 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 80183D24 00180C84 7D 89 03 A6 */ mtctr r12 +/* 80183D28 00180C88 4E 80 04 21 */ bctrl +/* 80183D2C 00180C8C 7C 66 1B 78 */ mr r6, r3 +/* 80183D30 00180C90 7F 63 DB 78 */ mr r3, r27 +/* 80183D34 00180C94 7F A5 EB 78 */ mr r5, r29 +/* 80183D38 00180C98 7F C7 F3 78 */ mr r7, r30 +/* 80183D3C 00180C9C 38 81 00 70 */ addi r4, r1, 0x70 +/* 80183D40 00180CA0 48 12 2C FD */ bl AABoxCollisionCheck_Cached__20CMetroidAreaColliderFRCQ220CMetroidAreaCollider16COctreeLeafCacheRC6CAABoxRC15CMaterialFilterRC13CMaterialListR18CCollisionInfoList +/* 80183D44 00180CA4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80183D48 00180CA8 41 82 00 08 */ beq lbl_80183D50 +/* 80183D4C 00180CAC 3B E0 00 01 */ li r31, 1 +lbl_80183D50: +/* 80183D50 00180CB0 3B 7B 09 0C */ addi r27, r27, 0x90c +/* 80183D54 00180CB4 3B 39 00 01 */ addi r25, r25, 1 +lbl_80183D58: +/* 80183D58 00180CB8 80 1C 00 18 */ lwz r0, 0x18(r28) +/* 80183D5C 00180CBC 7C 19 00 00 */ cmpw r25, r0 +/* 80183D60 00180CC0 41 80 FF B8 */ blt lbl_80183D18 +/* 80183D64 00180CC4 48 00 01 24 */ b lbl_80183E88 +lbl_80183D68: +/* 80183D68 00180CC8 7F 23 CB 78 */ mr r3, r25 +/* 80183D6C 00180CCC 81 99 00 00 */ lwz r12, 0(r25) +/* 80183D70 00180CD0 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80183D74 00180CD4 7D 89 03 A6 */ mtctr r12 +/* 80183D78 00180CD8 4E 80 04 21 */ bctrl +/* 80183D7C 00180CDC 3C 03 AC B0 */ addis r0, r3, 0xacb0 +/* 80183D80 00180CE0 28 00 48 52 */ cmplwi r0, 0x4852 +/* 80183D84 00180CE4 40 82 00 94 */ bne lbl_80183E18 +/* 80183D88 00180CE8 7F 24 CB 78 */ mr r4, r25 +/* 80183D8C 00180CEC 7F 45 D3 78 */ mr r5, r26 +/* 80183D90 00180CF0 38 61 00 08 */ addi r3, r1, 8 +/* 80183D94 00180CF4 48 15 05 C1 */ bl Transform__17CCollidableSphereCFRC12CTransform4f +/* 80183D98 00180CF8 C0 61 00 08 */ lfs f3, 8(r1) +/* 80183D9C 00180CFC 3B 7C 00 1C */ addi r27, r28, 0x1c +/* 80183DA0 00180D00 C0 41 00 0C */ lfs f2, 0xc(r1) +/* 80183DA4 00180D04 3B 40 00 00 */ li r26, 0 +/* 80183DA8 00180D08 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 80183DAC 00180D0C C0 01 00 14 */ lfs f0, 0x14(r1) +/* 80183DB0 00180D10 D0 61 00 30 */ stfs f3, 0x30(r1) +/* 80183DB4 00180D14 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 80183DB8 00180D18 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 80183DBC 00180D1C D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 80183DC0 00180D20 48 00 00 48 */ b lbl_80183E08 +lbl_80183DC4: +/* 80183DC4 00180D24 7F 23 CB 78 */ mr r3, r25 +/* 80183DC8 00180D28 81 99 00 00 */ lwz r12, 0(r25) +/* 80183DCC 00180D2C 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 80183DD0 00180D30 7D 89 03 A6 */ mtctr r12 +/* 80183DD4 00180D34 4E 80 04 21 */ bctrl +/* 80183DD8 00180D38 7C 66 1B 78 */ mr r6, r3 +/* 80183DDC 00180D3C 7F 63 DB 78 */ mr r3, r27 +/* 80183DE0 00180D40 7F A7 EB 78 */ mr r7, r29 +/* 80183DE4 00180D44 7F C8 F3 78 */ mr r8, r30 +/* 80183DE8 00180D48 38 81 00 70 */ addi r4, r1, 0x70 +/* 80183DEC 00180D4C 38 A1 00 30 */ addi r5, r1, 0x30 +/* 80183DF0 00180D50 48 12 22 45 */ bl SphereCollisionCheck_Cached__20CMetroidAreaColliderFRCQ220CMetroidAreaCollider16COctreeLeafCacheRC6CAABoxRC7CSphereRC13CMaterialListRC15CMaterialFilterR18CCollisionInfoList +/* 80183DF4 00180D54 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80183DF8 00180D58 41 82 00 08 */ beq lbl_80183E00 +/* 80183DFC 00180D5C 3B E0 00 01 */ li r31, 1 +lbl_80183E00: +/* 80183E00 00180D60 3B 7B 09 0C */ addi r27, r27, 0x90c +/* 80183E04 00180D64 3B 5A 00 01 */ addi r26, r26, 1 +lbl_80183E08: +/* 80183E08 00180D68 80 1C 00 18 */ lwz r0, 0x18(r28) +/* 80183E0C 00180D6C 7C 1A 00 00 */ cmpw r26, r0 +/* 80183E10 00180D70 41 80 FF B4 */ blt lbl_80183DC4 +/* 80183E14 00180D74 48 00 00 74 */ b lbl_80183E88 +lbl_80183E18: +/* 80183E18 00180D78 7F 23 CB 78 */ mr r3, r25 +/* 80183E1C 00180D7C 81 99 00 00 */ lwz r12, 0(r25) +/* 80183E20 00180D80 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80183E24 00180D84 7D 89 03 A6 */ mtctr r12 +/* 80183E28 00180D88 4E 80 04 21 */ bctrl +/* 80183E2C 00180D8C 3C 03 BE BE */ addis r0, r3, 0xbebe +/* 80183E30 00180D90 28 00 53 48 */ cmplwi r0, 0x5348 +/* 80183E34 00180D94 40 82 00 54 */ bne lbl_80183E88 +/* 80183E38 00180D98 7F 63 DB 78 */ mr r3, r27 +/* 80183E3C 00180D9C 7F 84 E3 78 */ mr r4, r28 +/* 80183E40 00180DA0 7F 46 D3 78 */ mr r6, r26 +/* 80183E44 00180DA4 7F A7 EB 78 */ mr r7, r29 +/* 80183E48 00180DA8 7F C8 F3 78 */ mr r8, r30 +/* 80183E4C 00180DAC 38 B9 00 10 */ addi r5, r25, 0x10 +/* 80183E50 00180DB0 4B FF FD 29 */ bl DetectStaticCollision_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterR18CCollisionInfoList +/* 80183E54 00180DB4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80183E58 00180DB8 41 82 00 08 */ beq lbl_80183E60 +/* 80183E5C 00180DBC 3B E0 00 01 */ li r31, 1 +lbl_80183E60: +/* 80183E60 00180DC0 7F 63 DB 78 */ mr r3, r27 +/* 80183E64 00180DC4 7F 84 E3 78 */ mr r4, r28 +/* 80183E68 00180DC8 7F 46 D3 78 */ mr r6, r26 +/* 80183E6C 00180DCC 7F A7 EB 78 */ mr r7, r29 +/* 80183E70 00180DD0 7F C8 F3 78 */ mr r8, r30 +/* 80183E74 00180DD4 38 B9 00 38 */ addi r5, r25, 0x38 +/* 80183E78 00180DD8 4B FF FD 01 */ bl DetectStaticCollision_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterR18CCollisionInfoList +/* 80183E7C 00180DDC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80183E80 00180DE0 41 82 00 08 */ beq lbl_80183E88 +/* 80183E84 00180DE4 3B E0 00 01 */ li r31, 1 +lbl_80183E88: +/* 80183E88 00180DE8 7F E3 FB 78 */ mr r3, r31 +lbl_80183E8C: +/* 80183E8C 00180DEC BB 21 00 94 */ lmw r25, 0x94(r1) +/* 80183E90 00180DF0 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 80183E94 00180DF4 7C 08 03 A6 */ mtlr r0 +/* 80183E98 00180DF8 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 80183E9C 00180DFC 4E 80 00 20 */ blr + +.global "DetectDynamicCollision__14CGameCollisionFRC19CCollisionPrimitiveRC12CTransform4fRCQ24rstl32reserved_vector<9TUniqueId,1024>R9TUniqueIdR18CCollisionInfoListRC13CStateManager" +"DetectDynamicCollision__14CGameCollisionFRC19CCollisionPrimitiveRC12CTransform4fRCQ24rstl32reserved_vector<9TUniqueId,1024>R9TUniqueIdR18CCollisionInfoListRC13CStateManager": +/* 80183EA0 00180E00 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 80183EA4 00180E04 7C 08 02 A6 */ mflr r0 +/* 80183EA8 00180E08 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 80183EAC 00180E0C BE C1 00 B8 */ stmw r22, 0xb8(r1) +/* 80183EB0 00180E10 7C B9 2B 78 */ mr r25, r5 +/* 80183EB4 00180E14 7C 77 1B 78 */ mr r23, r3 +/* 80183EB8 00180E18 7C 98 23 78 */ mr r24, r4 +/* 80183EBC 00180E1C 7C DA 33 78 */ mr r26, r6 +/* 80183EC0 00180E20 7C FB 3B 78 */ mr r27, r7 +/* 80183EC4 00180E24 7D 1C 43 78 */ mr r28, r8 +/* 80183EC8 00180E28 3B B9 00 04 */ addi r29, r25, 4 +/* 80183ECC 00180E2C 3B E1 00 4C */ addi r31, r1, 0x4c +/* 80183ED0 00180E30 3B C1 00 84 */ addi r30, r1, 0x84 +/* 80183ED4 00180E34 48 00 00 C0 */ b lbl_80183F94 +lbl_80183ED8: +/* 80183ED8 00180E38 A0 1D 00 00 */ lhz r0, 0(r29) +/* 80183EDC 00180E3C 7F 83 E3 78 */ mr r3, r28 +/* 80183EE0 00180E40 38 81 00 08 */ addi r4, r1, 8 +/* 80183EE4 00180E44 B0 01 00 08 */ sth r0, 8(r1) +/* 80183EE8 00180E48 4B EC 86 BD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80183EEC 00180E4C 7C 64 1B 78 */ mr r4, r3 +/* 80183EF0 00180E50 38 61 00 0C */ addi r3, r1, 0xc +/* 80183EF4 00180E54 4B F2 87 F1 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" +/* 80183EF8 00180E58 82 C3 00 04 */ lwz r22, 4(r3) +/* 80183EFC 00180E5C 28 16 00 00 */ cmplwi r22, 0 +/* 80183F00 00180E60 41 82 00 90 */ beq lbl_80183F90 +/* 80183F04 00180E64 7E C4 B3 78 */ mr r4, r22 +/* 80183F08 00180E68 38 61 00 14 */ addi r3, r1, 0x14 +/* 80183F0C 00180E6C 81 96 00 00 */ lwz r12, 0(r22) +/* 80183F10 00180E70 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 80183F14 00180E74 7D 89 03 A6 */ mtctr r12 +/* 80183F18 00180E78 4E 80 04 21 */ bctrl +/* 80183F1C 00180E7C 7E C3 B3 78 */ mr r3, r22 +/* 80183F20 00180E80 81 96 00 00 */ lwz r12, 0(r22) +/* 80183F24 00180E84 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80183F28 00180E88 7D 89 03 A6 */ mtctr r12 +/* 80183F2C 00180E8C 4E 80 04 21 */ bctrl +/* 80183F30 00180E90 3C 80 80 5A */ lis r4, lbl_8059FD18@ha +/* 80183F34 00180E94 90 61 00 44 */ stw r3, 0x44(r1) +/* 80183F38 00180E98 38 04 FD 18 */ addi r0, r4, lbl_8059FD18@l +/* 80183F3C 00180E9C 7F E3 FB 78 */ mr r3, r31 +/* 80183F40 00180EA0 90 01 00 48 */ stw r0, 0x48(r1) +/* 80183F44 00180EA4 38 81 00 14 */ addi r4, r1, 0x14 +/* 80183F48 00180EA8 48 18 EC 2D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80183F4C 00180EAC 3C 60 80 5A */ lis r3, lbl_8059FD18@ha +/* 80183F50 00180EB0 92 E1 00 7C */ stw r23, 0x7c(r1) +/* 80183F54 00180EB4 38 03 FD 18 */ addi r0, r3, lbl_8059FD18@l +/* 80183F58 00180EB8 7F C3 F3 78 */ mr r3, r30 +/* 80183F5C 00180EBC 90 01 00 80 */ stw r0, 0x80(r1) +/* 80183F60 00180EC0 7F 04 C3 78 */ mr r4, r24 +/* 80183F64 00180EC4 48 18 EC 11 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80183F68 00180EC8 7F 65 DB 78 */ mr r5, r27 +/* 80183F6C 00180ECC 38 61 00 7C */ addi r3, r1, 0x7c +/* 80183F70 00180ED0 38 81 00 44 */ addi r4, r1, 0x44 +/* 80183F74 00180ED4 48 14 A8 3D */ bl Collide__19CCollisionPrimitiveFRCQ227CInternalCollisionStructure9CPrimDescRCQ227CInternalCollisionStructure9CPrimDescR18CCollisionInfoList +/* 80183F78 00180ED8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80183F7C 00180EDC 41 82 00 14 */ beq lbl_80183F90 +/* 80183F80 00180EE0 A0 16 00 08 */ lhz r0, 8(r22) +/* 80183F84 00180EE4 38 60 00 01 */ li r3, 1 +/* 80183F88 00180EE8 B0 1A 00 00 */ sth r0, 0(r26) +/* 80183F8C 00180EEC 48 00 00 2C */ b lbl_80183FB8 +lbl_80183F90: +/* 80183F90 00180EF0 3B BD 00 02 */ addi r29, r29, 2 +lbl_80183F94: +/* 80183F94 00180EF4 80 19 00 00 */ lwz r0, 0(r25) +/* 80183F98 00180EF8 54 00 08 3C */ slwi r0, r0, 1 +/* 80183F9C 00180EFC 7C 79 02 14 */ add r3, r25, r0 +/* 80183FA0 00180F00 38 03 00 04 */ addi r0, r3, 4 +/* 80183FA4 00180F04 7C 1D 00 40 */ cmplw r29, r0 +/* 80183FA8 00180F08 40 82 FF 30 */ bne lbl_80183ED8 +/* 80183FAC 00180F0C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80183FB0 00180F10 38 60 00 00 */ li r3, 0 +/* 80183FB4 00180F14 B0 1A 00 00 */ sth r0, 0(r26) +lbl_80183FB8: +/* 80183FB8 00180F18 BA C1 00 B8 */ lmw r22, 0xb8(r1) +/* 80183FBC 00180F1C 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 80183FC0 00180F20 7C 08 03 A6 */ mtlr r0 +/* 80183FC4 00180F24 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 80183FC8 00180F28 4E 80 00 20 */ blr + +.global "DetectDynamicCollisionBoolean__14CGameCollisionFRC19CCollisionPrimitiveRC12CTransform4fRCQ24rstl32reserved_vector<9TUniqueId,1024>RC13CStateManager" +"DetectDynamicCollisionBoolean__14CGameCollisionFRC19CCollisionPrimitiveRC12CTransform4fRCQ24rstl32reserved_vector<9TUniqueId,1024>RC13CStateManager": +/* 80183FCC 00180F2C 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 80183FD0 00180F30 7C 08 02 A6 */ mflr r0 +/* 80183FD4 00180F34 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 80183FD8 00180F38 BF 01 00 C0 */ stmw r24, 0xc0(r1) +/* 80183FDC 00180F3C 7C BB 2B 78 */ mr r27, r5 +/* 80183FE0 00180F40 7C 79 1B 78 */ mr r25, r3 +/* 80183FE4 00180F44 7C 9A 23 78 */ mr r26, r4 +/* 80183FE8 00180F48 7C DC 33 78 */ mr r28, r6 +/* 80183FEC 00180F4C 3B BB 00 04 */ addi r29, r27, 4 +/* 80183FF0 00180F50 3B E1 00 4C */ addi r31, r1, 0x4c +/* 80183FF4 00180F54 3B C1 00 84 */ addi r30, r1, 0x84 +/* 80183FF8 00180F58 48 00 00 B4 */ b lbl_801840AC +lbl_80183FFC: +/* 80183FFC 00180F5C A0 1D 00 00 */ lhz r0, 0(r29) +/* 80184000 00180F60 7F 83 E3 78 */ mr r3, r28 +/* 80184004 00180F64 38 81 00 08 */ addi r4, r1, 8 +/* 80184008 00180F68 B0 01 00 08 */ sth r0, 8(r1) +/* 8018400C 00180F6C 4B EC 85 99 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80184010 00180F70 7C 64 1B 78 */ mr r4, r3 +/* 80184014 00180F74 38 61 00 0C */ addi r3, r1, 0xc +/* 80184018 00180F78 4B F2 86 CD */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" +/* 8018401C 00180F7C 83 03 00 04 */ lwz r24, 4(r3) +/* 80184020 00180F80 28 18 00 00 */ cmplwi r24, 0 +/* 80184024 00180F84 41 82 00 84 */ beq lbl_801840A8 +/* 80184028 00180F88 7F 04 C3 78 */ mr r4, r24 +/* 8018402C 00180F8C 38 61 00 14 */ addi r3, r1, 0x14 +/* 80184030 00180F90 81 98 00 00 */ lwz r12, 0(r24) +/* 80184034 00180F94 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 80184038 00180F98 7D 89 03 A6 */ mtctr r12 +/* 8018403C 00180F9C 4E 80 04 21 */ bctrl +/* 80184040 00180FA0 7F 03 C3 78 */ mr r3, r24 +/* 80184044 00180FA4 81 98 00 00 */ lwz r12, 0(r24) +/* 80184048 00180FA8 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 8018404C 00180FAC 7D 89 03 A6 */ mtctr r12 +/* 80184050 00180FB0 4E 80 04 21 */ bctrl +/* 80184054 00180FB4 3C 80 80 5A */ lis r4, lbl_8059FD18@ha +/* 80184058 00180FB8 90 61 00 44 */ stw r3, 0x44(r1) +/* 8018405C 00180FBC 38 04 FD 18 */ addi r0, r4, lbl_8059FD18@l +/* 80184060 00180FC0 7F E3 FB 78 */ mr r3, r31 +/* 80184064 00180FC4 90 01 00 48 */ stw r0, 0x48(r1) +/* 80184068 00180FC8 38 81 00 14 */ addi r4, r1, 0x14 +/* 8018406C 00180FCC 48 18 EB 09 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80184070 00180FD0 3C 60 80 5A */ lis r3, lbl_8059FD18@ha +/* 80184074 00180FD4 93 21 00 7C */ stw r25, 0x7c(r1) +/* 80184078 00180FD8 38 03 FD 18 */ addi r0, r3, lbl_8059FD18@l +/* 8018407C 00180FDC 7F C3 F3 78 */ mr r3, r30 +/* 80184080 00180FE0 90 01 00 80 */ stw r0, 0x80(r1) +/* 80184084 00180FE4 7F 44 D3 78 */ mr r4, r26 +/* 80184088 00180FE8 48 18 EA ED */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8018408C 00180FEC 38 61 00 7C */ addi r3, r1, 0x7c +/* 80184090 00180FF0 38 81 00 44 */ addi r4, r1, 0x44 +/* 80184094 00180FF4 48 14 A7 99 */ bl CollideBoolean__19CCollisionPrimitiveFRCQ227CInternalCollisionStructure9CPrimDescRCQ227CInternalCollisionStructure9CPrimDesc +/* 80184098 00180FF8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8018409C 00180FFC 41 82 00 0C */ beq lbl_801840A8 +/* 801840A0 00181000 38 60 00 01 */ li r3, 1 +/* 801840A4 00181004 48 00 00 24 */ b lbl_801840C8 +lbl_801840A8: +/* 801840A8 00181008 3B BD 00 02 */ addi r29, r29, 2 +lbl_801840AC: +/* 801840AC 0018100C 80 1B 00 00 */ lwz r0, 0(r27) +/* 801840B0 00181010 54 00 08 3C */ slwi r0, r0, 1 +/* 801840B4 00181014 7C 7B 02 14 */ add r3, r27, r0 +/* 801840B8 00181018 38 03 00 04 */ addi r0, r3, 4 +/* 801840BC 0018101C 7C 1D 00 40 */ cmplw r29, r0 +/* 801840C0 00181020 40 82 FF 3C */ bne lbl_80183FFC +/* 801840C4 00181024 38 60 00 00 */ li r3, 0 +lbl_801840C8: +/* 801840C8 00181028 BB 01 00 C0 */ lmw r24, 0xc0(r1) +/* 801840CC 0018102C 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 801840D0 00181030 7C 08 03 A6 */ mtlr r0 +/* 801840D4 00181034 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 801840D8 00181038 4E 80 00 20 */ blr + +.global "DetectDynamicCollisionMoving__14CGameCollisionFRC19CCollisionPrimitiveRC12CTransform4fRCQ24rstl32reserved_vector<9TUniqueId,1024>9CVector3fR9TUniqueIdR14CCollisionInfoRdRC13CStateManager" +"DetectDynamicCollisionMoving__14CGameCollisionFRC19CCollisionPrimitiveRC12CTransform4fRCQ24rstl32reserved_vector<9TUniqueId,1024>9CVector3fR9TUniqueIdR14CCollisionInfoRdRC13CStateManager": +/* 801840DC 0018103C 94 21 FE A0 */ stwu r1, -0x160(r1) +/* 801840E0 00181040 7C 08 02 A6 */ mflr r0 +/* 801840E4 00181044 90 01 01 64 */ stw r0, 0x164(r1) +/* 801840E8 00181048 BE 61 01 2C */ stmw r19, 0x12c(r1) +/* 801840EC 0018104C 7C B5 2B 78 */ mr r21, r5 +/* 801840F0 00181050 7C 73 1B 78 */ mr r19, r3 +/* 801840F4 00181054 7C 94 23 78 */ mr r20, r4 +/* 801840F8 00181058 7C D6 33 78 */ mr r22, r6 +/* 801840FC 0018105C 7C F7 3B 78 */ mr r23, r7 +/* 80184100 00181060 7D 18 43 78 */ mr r24, r8 +/* 80184104 00181064 7D 39 4B 78 */ mr r25, r9 +/* 80184108 00181068 7D 5A 53 78 */ mr r26, r10 +/* 8018410C 0018106C 3B 95 00 04 */ addi r28, r21, 4 +/* 80184110 00181070 3B E1 00 58 */ addi r31, r1, 0x58 +/* 80184114 00181074 3B C1 00 90 */ addi r30, r1, 0x90 +/* 80184118 00181078 3B A0 00 00 */ li r29, 0 +/* 8018411C 0018107C 48 00 01 A0 */ b lbl_801842BC +lbl_80184120: +/* 80184120 00181080 A0 1C 00 00 */ lhz r0, 0(r28) +/* 80184124 00181084 7F 43 D3 78 */ mr r3, r26 +/* 80184128 00181088 38 81 00 08 */ addi r4, r1, 8 +/* 8018412C 0018108C B0 01 00 08 */ sth r0, 8(r1) +/* 80184130 00181090 4B EC 84 75 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80184134 00181094 7C 64 1B 78 */ mr r4, r3 +/* 80184138 00181098 38 61 00 0C */ addi r3, r1, 0xc +/* 8018413C 0018109C 4B F2 85 A9 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" +/* 80184140 001810A0 83 63 00 04 */ lwz r27, 4(r3) +/* 80184144 001810A4 38 61 00 C0 */ addi r3, r1, 0xc0 +/* 80184148 001810A8 C8 19 00 00 */ lfd f0, 0(r25) +/* 8018414C 001810AC 38 80 00 00 */ li r4, 0 +/* 80184150 001810B0 D8 01 00 18 */ stfd f0, 0x18(r1) +/* 80184154 001810B4 48 14 A0 35 */ bl __ct__14CCollisionInfoFQ214CCollisionInfo8EInvalid +/* 80184158 001810B8 28 1B 00 00 */ cmplwi r27, 0 +/* 8018415C 001810BC 41 82 01 5C */ beq lbl_801842B8 +/* 80184160 001810C0 7F 64 DB 78 */ mr r4, r27 +/* 80184164 001810C4 38 61 00 20 */ addi r3, r1, 0x20 +/* 80184168 001810C8 81 9B 00 00 */ lwz r12, 0(r27) +/* 8018416C 001810CC 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 80184170 001810D0 7D 89 03 A6 */ mtctr r12 +/* 80184174 001810D4 4E 80 04 21 */ bctrl +/* 80184178 001810D8 7F 63 DB 78 */ mr r3, r27 +/* 8018417C 001810DC 81 9B 00 00 */ lwz r12, 0(r27) +/* 80184180 001810E0 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80184184 001810E4 7D 89 03 A6 */ mtctr r12 +/* 80184188 001810E8 4E 80 04 21 */ bctrl +/* 8018418C 001810EC 3C 80 80 5A */ lis r4, lbl_8059FD18@ha +/* 80184190 001810F0 90 61 00 50 */ stw r3, 0x50(r1) +/* 80184194 001810F4 38 04 FD 18 */ addi r0, r4, lbl_8059FD18@l +/* 80184198 001810F8 7F E3 FB 78 */ mr r3, r31 +/* 8018419C 001810FC 90 01 00 54 */ stw r0, 0x54(r1) +/* 801841A0 00181100 38 81 00 20 */ addi r4, r1, 0x20 +/* 801841A4 00181104 48 18 E9 D1 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801841A8 00181108 3C 60 80 5A */ lis r3, lbl_8059FD18@ha +/* 801841AC 0018110C 92 61 00 88 */ stw r19, 0x88(r1) +/* 801841B0 00181110 38 03 FD 18 */ addi r0, r3, lbl_8059FD18@l +/* 801841B4 00181114 7F C3 F3 78 */ mr r3, r30 +/* 801841B8 00181118 90 01 00 8C */ stw r0, 0x8c(r1) +/* 801841BC 0018111C 7E 84 A3 78 */ mr r4, r20 +/* 801841C0 00181120 48 18 E9 B5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801841C4 00181124 7E C5 B3 78 */ mr r5, r22 +/* 801841C8 00181128 38 61 00 88 */ addi r3, r1, 0x88 +/* 801841CC 0018112C 38 81 00 50 */ addi r4, r1, 0x50 +/* 801841D0 00181130 38 C1 00 18 */ addi r6, r1, 0x18 +/* 801841D4 00181134 38 E1 00 C0 */ addi r7, r1, 0xc0 +/* 801841D8 00181138 48 14 A5 3D */ bl CollideMoving__19CCollisionPrimitiveFRCQ227CInternalCollisionStructure9CPrimDescRCQ227CInternalCollisionStructure9CPrimDescRC9CVector3fRdR14CCollisionInfo +/* 801841DC 0018113C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801841E0 00181140 41 82 00 D8 */ beq lbl_801842B8 +/* 801841E4 00181144 C8 21 00 18 */ lfd f1, 0x18(r1) +/* 801841E8 00181148 C8 19 00 00 */ lfd f0, 0(r25) +/* 801841EC 0018114C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801841F0 00181150 40 80 00 C8 */ bge lbl_801842B8 +/* 801841F4 00181154 80 61 00 C0 */ lwz r3, 0xc0(r1) +/* 801841F8 00181158 3B A0 00 01 */ li r29, 1 +/* 801841FC 0018115C 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 80184200 00181160 90 78 00 00 */ stw r3, 0(r24) +/* 80184204 00181164 90 18 00 04 */ stw r0, 4(r24) +/* 80184208 00181168 80 01 00 C8 */ lwz r0, 0xc8(r1) +/* 8018420C 0018116C 90 18 00 08 */ stw r0, 8(r24) +/* 80184210 00181170 80 61 00 CC */ lwz r3, 0xcc(r1) +/* 80184214 00181174 80 01 00 D0 */ lwz r0, 0xd0(r1) +/* 80184218 00181178 90 78 00 0C */ stw r3, 0xc(r24) +/* 8018421C 0018117C 90 18 00 10 */ stw r0, 0x10(r24) +/* 80184220 00181180 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 80184224 00181184 90 18 00 14 */ stw r0, 0x14(r24) +/* 80184228 00181188 80 61 00 D8 */ lwz r3, 0xd8(r1) +/* 8018422C 0018118C 80 01 00 DC */ lwz r0, 0xdc(r1) +/* 80184230 00181190 90 78 00 18 */ stw r3, 0x18(r24) +/* 80184234 00181194 90 18 00 1C */ stw r0, 0x1c(r24) +/* 80184238 00181198 80 01 00 E0 */ lwz r0, 0xe0(r1) +/* 8018423C 0018119C 90 18 00 20 */ stw r0, 0x20(r24) +/* 80184240 001811A0 80 61 00 E4 */ lwz r3, 0xe4(r1) +/* 80184244 001811A4 80 01 00 E8 */ lwz r0, 0xe8(r1) +/* 80184248 001811A8 90 78 00 24 */ stw r3, 0x24(r24) +/* 8018424C 001811AC 90 18 00 28 */ stw r0, 0x28(r24) +/* 80184250 001811B0 80 01 00 EC */ lwz r0, 0xec(r1) +/* 80184254 001811B4 90 18 00 2C */ stw r0, 0x2c(r24) +/* 80184258 001811B8 88 01 00 F0 */ lbz r0, 0xf0(r1) +/* 8018425C 001811BC 98 18 00 30 */ stb r0, 0x30(r24) +/* 80184260 001811C0 88 01 00 F1 */ lbz r0, 0xf1(r1) +/* 80184264 001811C4 98 18 00 31 */ stb r0, 0x31(r24) +/* 80184268 001811C8 C8 01 00 F8 */ lfd f0, 0xf8(r1) +/* 8018426C 001811CC D8 18 00 38 */ stfd f0, 0x38(r24) +/* 80184270 001811D0 C8 01 01 00 */ lfd f0, 0x100(r1) +/* 80184274 001811D4 D8 18 00 40 */ stfd f0, 0x40(r24) +/* 80184278 001811D8 80 61 01 08 */ lwz r3, 0x108(r1) +/* 8018427C 001811DC 80 01 01 0C */ lwz r0, 0x10c(r1) +/* 80184280 001811E0 90 78 00 48 */ stw r3, 0x48(r24) +/* 80184284 001811E4 90 18 00 4C */ stw r0, 0x4c(r24) +/* 80184288 001811E8 80 01 01 10 */ lwz r0, 0x110(r1) +/* 8018428C 001811EC 90 18 00 50 */ stw r0, 0x50(r24) +/* 80184290 001811F0 80 61 01 14 */ lwz r3, 0x114(r1) +/* 80184294 001811F4 80 01 01 18 */ lwz r0, 0x118(r1) +/* 80184298 001811F8 90 78 00 54 */ stw r3, 0x54(r24) +/* 8018429C 001811FC 90 18 00 58 */ stw r0, 0x58(r24) +/* 801842A0 00181200 80 01 01 1C */ lwz r0, 0x11c(r1) +/* 801842A4 00181204 90 18 00 5C */ stw r0, 0x5c(r24) +/* 801842A8 00181208 C8 01 00 18 */ lfd f0, 0x18(r1) +/* 801842AC 0018120C D8 19 00 00 */ stfd f0, 0(r25) +/* 801842B0 00181210 A0 1B 00 08 */ lhz r0, 8(r27) +/* 801842B4 00181214 B0 17 00 00 */ sth r0, 0(r23) +lbl_801842B8: +/* 801842B8 00181218 3B 9C 00 02 */ addi r28, r28, 2 +lbl_801842BC: +/* 801842BC 0018121C 80 15 00 00 */ lwz r0, 0(r21) +/* 801842C0 00181220 54 00 08 3C */ slwi r0, r0, 1 +/* 801842C4 00181224 7C 75 02 14 */ add r3, r21, r0 +/* 801842C8 00181228 38 03 00 04 */ addi r0, r3, 4 +/* 801842CC 0018122C 7C 1C 00 40 */ cmplw r28, r0 +/* 801842D0 00181230 40 82 FE 50 */ bne lbl_80184120 +/* 801842D4 00181234 7F A3 EB 78 */ mr r3, r29 +/* 801842D8 00181238 BA 61 01 2C */ lmw r19, 0x12c(r1) +/* 801842DC 0018123C 80 01 01 64 */ lwz r0, 0x164(r1) +/* 801842E0 00181240 7C 08 03 A6 */ mtlr r0 +/* 801842E4 00181244 38 21 01 60 */ addi r1, r1, 0x160 +/* 801842E8 00181248 4E 80 00 20 */ blr + +.global "DetectCollision_Cached_Moving__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>9CVector3fR9TUniqueIdR14CCollisionInfoRd" +"DetectCollision_Cached_Moving__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>9CVector3fR9TUniqueIdR14CCollisionInfoRd": +/* 801842EC 0018124C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801842F0 00181250 7C 08 02 A6 */ mflr r0 +/* 801842F4 00181254 90 01 00 54 */ stw r0, 0x54(r1) +/* 801842F8 00181258 38 00 00 40 */ li r0, 0x40 +/* 801842FC 0018125C BE E1 00 2C */ stmw r23, 0x2c(r1) +/* 80184300 00181260 7D 5C 53 78 */ mr r28, r10 +/* 80184304 00181264 39 40 00 00 */ li r10, 0 +/* 80184308 00181268 7D 1A 43 78 */ mr r26, r8 +/* 8018430C 0018126C 83 A1 00 58 */ lwz r29, 0x58(r1) +/* 80184310 00181270 7C 77 1B 78 */ mr r23, r3 +/* 80184314 00181274 83 C1 00 5C */ lwz r30, 0x5c(r1) +/* 80184318 00181278 7C B8 2B 78 */ mr r24, r5 +/* 8018431C 0018127C 7C D9 33 78 */ mr r25, r6 +/* 80184320 00181280 7D 3B 4B 78 */ mr r27, r9 +/* 80184324 00181284 3B E0 00 00 */ li r31, 0 +/* 80184328 00181288 A1 6D A3 8C */ lhz r11, lbl_805A8F4C@sda21(r13) +/* 8018432C 0018128C B1 7C 00 00 */ sth r11, 0(r28) +/* 80184330 00181290 81 67 00 08 */ lwz r11, 8(r7) +/* 80184334 00181294 81 87 00 0C */ lwz r12, 0xc(r7) +/* 80184338 00181298 7D 60 00 38 */ and r0, r11, r0 +/* 8018433C 0018129C 7D 88 50 38 */ and r8, r12, r10 +/* 80184340 001812A0 7D 08 52 78 */ xor r8, r8, r10 +/* 80184344 001812A4 7C 00 52 78 */ xor r0, r0, r10 +/* 80184348 001812A8 7D 00 03 79 */ or. r0, r8, r0 +/* 8018434C 001812AC 40 82 00 38 */ bne lbl_80184384 +/* 80184350 001812B0 81 9B 00 00 */ lwz r12, 0(r27) +/* 80184354 001812B4 7F A9 EB 78 */ mr r9, r29 +/* 80184358 001812B8 81 7B 00 04 */ lwz r11, 4(r27) +/* 8018435C 001812BC 7F CA F3 78 */ mr r10, r30 +/* 80184360 001812C0 80 1B 00 08 */ lwz r0, 8(r27) +/* 80184364 001812C4 39 01 00 14 */ addi r8, r1, 0x14 +/* 80184368 001812C8 91 81 00 14 */ stw r12, 0x14(r1) +/* 8018436C 001812CC 91 61 00 18 */ stw r11, 0x18(r1) +/* 80184370 001812D0 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80184374 001812D4 4B FF EA 91 */ bl DetectStaticCollision_Cached_Moving__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter9CVector3fR14CCollisionInfoRd +/* 80184378 001812D8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8018437C 001812DC 41 82 00 08 */ beq lbl_80184384 +/* 80184380 001812E0 3B E0 00 01 */ li r31, 1 +lbl_80184384: +/* 80184384 001812E4 80 FB 00 00 */ lwz r7, 0(r27) +/* 80184388 001812E8 7F 03 C3 78 */ mr r3, r24 +/* 8018438C 001812EC 80 DB 00 04 */ lwz r6, 4(r27) +/* 80184390 001812F0 7F 24 CB 78 */ mr r4, r25 +/* 80184394 001812F4 80 1B 00 08 */ lwz r0, 8(r27) +/* 80184398 001812F8 7F 45 D3 78 */ mr r5, r26 +/* 8018439C 001812FC 90 E1 00 08 */ stw r7, 8(r1) +/* 801843A0 00181300 7F 87 E3 78 */ mr r7, r28 +/* 801843A4 00181304 7F A8 EB 78 */ mr r8, r29 +/* 801843A8 00181308 7F C9 F3 78 */ mr r9, r30 +/* 801843AC 0018130C 90 C1 00 0C */ stw r6, 0xc(r1) +/* 801843B0 00181310 7E EA BB 78 */ mr r10, r23 +/* 801843B4 00181314 38 C1 00 08 */ addi r6, r1, 8 +/* 801843B8 00181318 90 01 00 10 */ stw r0, 0x10(r1) +/* 801843BC 0018131C 4B FF FD 21 */ bl "DetectDynamicCollisionMoving__14CGameCollisionFRC19CCollisionPrimitiveRC12CTransform4fRCQ24rstl32reserved_vector<9TUniqueId,1024>9CVector3fR9TUniqueIdR14CCollisionInfoRdRC13CStateManager" +/* 801843C0 00181320 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801843C4 00181324 41 82 00 08 */ beq lbl_801843CC +/* 801843C8 00181328 3B E0 00 01 */ li r31, 1 +lbl_801843CC: +/* 801843CC 0018132C 7F E3 FB 78 */ mr r3, r31 +/* 801843D0 00181330 BA E1 00 2C */ lmw r23, 0x2c(r1) +/* 801843D4 00181334 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801843D8 00181338 7C 08 03 A6 */ mtlr r0 +/* 801843DC 0018133C 38 21 00 50 */ addi r1, r1, 0x50 +/* 801843E0 00181340 4E 80 00 20 */ blr + +.global "DetectCollision_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>R9TUniqueIdR18CCollisionInfoList" +"DetectCollision_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>R9TUniqueIdR18CCollisionInfoList": +/* 801843E4 00181344 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801843E8 00181348 7C 08 02 A6 */ mflr r0 +/* 801843EC 0018134C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801843F0 00181350 38 00 00 40 */ li r0, 0x40 +/* 801843F4 00181354 BF 21 00 14 */ stmw r25, 0x14(r1) +/* 801843F8 00181358 7D 3D 4B 78 */ mr r29, r9 +/* 801843FC 0018135C 7D 1C 43 78 */ mr r28, r8 +/* 80184400 00181360 39 20 00 00 */ li r9, 0 +/* 80184404 00181364 7C 79 1B 78 */ mr r25, r3 +/* 80184408 00181368 7C BA 2B 78 */ mr r26, r5 +/* 8018440C 0018136C 7C DB 33 78 */ mr r27, r6 +/* 80184410 00181370 7D 5E 53 78 */ mr r30, r10 +/* 80184414 00181374 3B E0 00 00 */ li r31, 0 +/* 80184418 00181378 A1 6D A3 8C */ lhz r11, lbl_805A8F4C@sda21(r13) +/* 8018441C 0018137C B1 7D 00 00 */ sth r11, 0(r29) +/* 80184420 00181380 81 67 00 08 */ lwz r11, 8(r7) +/* 80184424 00181384 81 07 00 0C */ lwz r8, 0xc(r7) +/* 80184428 00181388 7D 60 00 38 */ and r0, r11, r0 +/* 8018442C 0018138C 7D 08 48 38 */ and r8, r8, r9 +/* 80184430 00181390 7D 08 4A 78 */ xor r8, r8, r9 +/* 80184434 00181394 7C 00 4A 78 */ xor r0, r0, r9 +/* 80184438 00181398 7D 00 03 79 */ or. r0, r8, r0 +/* 8018443C 0018139C 40 82 00 18 */ bne lbl_80184454 +/* 80184440 001813A0 7F C8 F3 78 */ mr r8, r30 +/* 80184444 001813A4 4B FF F7 35 */ bl DetectStaticCollision_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterR18CCollisionInfoList +/* 80184448 001813A8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8018444C 001813AC 41 82 00 08 */ beq lbl_80184454 +/* 80184450 001813B0 3B E0 00 01 */ li r31, 1 +lbl_80184454: +/* 80184454 001813B4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80184458 001813B8 7F 43 D3 78 */ mr r3, r26 +/* 8018445C 001813BC 7F 64 DB 78 */ mr r4, r27 +/* 80184460 001813C0 7F 85 E3 78 */ mr r5, r28 +/* 80184464 001813C4 B0 01 00 08 */ sth r0, 8(r1) +/* 80184468 001813C8 7F C7 F3 78 */ mr r7, r30 +/* 8018446C 001813CC 7F 28 CB 78 */ mr r8, r25 +/* 80184470 001813D0 38 C1 00 08 */ addi r6, r1, 8 +/* 80184474 001813D4 4B FF FA 2D */ bl "DetectDynamicCollision__14CGameCollisionFRC19CCollisionPrimitiveRC12CTransform4fRCQ24rstl32reserved_vector<9TUniqueId,1024>R9TUniqueIdR18CCollisionInfoListRC13CStateManager" +/* 80184478 001813D8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8018447C 001813DC 41 82 00 10 */ beq lbl_8018448C +/* 80184480 001813E0 A0 01 00 08 */ lhz r0, 8(r1) +/* 80184484 001813E4 3B E0 00 01 */ li r31, 1 +/* 80184488 001813E8 B0 1D 00 00 */ sth r0, 0(r29) +lbl_8018448C: +/* 8018448C 001813EC 7F E3 FB 78 */ mr r3, r31 +/* 80184490 001813F0 BB 21 00 14 */ lmw r25, 0x14(r1) +/* 80184494 001813F4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80184498 001813F8 7C 08 03 A6 */ mtlr r0 +/* 8018449C 001813FC 38 21 00 30 */ addi r1, r1, 0x30 +/* 801844A0 00181400 4E 80 00 20 */ blr + +.global "DetectCollision__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>R9TUniqueIdR18CCollisionInfoList" +"DetectCollision__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>R9TUniqueIdR18CCollisionInfoList": +/* 801844A4 00181404 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801844A8 00181408 7C 08 02 A6 */ mflr r0 +/* 801844AC 0018140C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801844B0 00181410 38 00 00 40 */ li r0, 0x40 +/* 801844B4 00181414 BF 21 00 14 */ stmw r25, 0x14(r1) +/* 801844B8 00181418 7D 1D 43 78 */ mr r29, r8 +/* 801844BC 0018141C 7C FC 3B 78 */ mr r28, r7 +/* 801844C0 00181420 39 00 00 00 */ li r8, 0 +/* 801844C4 00181424 7C 79 1B 78 */ mr r25, r3 +/* 801844C8 00181428 7C 9A 23 78 */ mr r26, r4 +/* 801844CC 0018142C 7C BB 2B 78 */ mr r27, r5 +/* 801844D0 00181430 7D 3E 4B 78 */ mr r30, r9 +/* 801844D4 00181434 3B E0 00 00 */ li r31, 0 +/* 801844D8 00181438 A1 4D A3 8C */ lhz r10, lbl_805A8F4C@sda21(r13) +/* 801844DC 0018143C B1 5D 00 00 */ sth r10, 0(r29) +/* 801844E0 00181440 81 46 00 08 */ lwz r10, 8(r6) +/* 801844E4 00181444 80 E6 00 0C */ lwz r7, 0xc(r6) +/* 801844E8 00181448 7D 40 00 38 */ and r0, r10, r0 +/* 801844EC 0018144C 7C E7 40 38 */ and r7, r7, r8 +/* 801844F0 00181450 7C E7 42 78 */ xor r7, r7, r8 +/* 801844F4 00181454 7C 00 42 78 */ xor r0, r0, r8 +/* 801844F8 00181458 7C E0 03 79 */ or. r0, r7, r0 +/* 801844FC 0018145C 40 82 00 18 */ bne lbl_80184514 +/* 80184500 00181460 7F C7 F3 78 */ mr r7, r30 +/* 80184504 00181464 4B FF F3 DD */ bl DetectStaticCollision__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterR18CCollisionInfoList +/* 80184508 00181468 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8018450C 0018146C 41 82 00 08 */ beq lbl_80184514 +/* 80184510 00181470 3B E0 00 01 */ li r31, 1 +lbl_80184514: +/* 80184514 00181474 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80184518 00181478 7F 43 D3 78 */ mr r3, r26 +/* 8018451C 0018147C 7F 64 DB 78 */ mr r4, r27 +/* 80184520 00181480 7F 85 E3 78 */ mr r5, r28 +/* 80184524 00181484 B0 01 00 08 */ sth r0, 8(r1) +/* 80184528 00181488 7F C7 F3 78 */ mr r7, r30 +/* 8018452C 0018148C 7F 28 CB 78 */ mr r8, r25 +/* 80184530 00181490 38 C1 00 08 */ addi r6, r1, 8 +/* 80184534 00181494 4B FF F9 6D */ bl "DetectDynamicCollision__14CGameCollisionFRC19CCollisionPrimitiveRC12CTransform4fRCQ24rstl32reserved_vector<9TUniqueId,1024>R9TUniqueIdR18CCollisionInfoListRC13CStateManager" +/* 80184538 00181498 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8018453C 0018149C 41 82 00 10 */ beq lbl_8018454C +/* 80184540 001814A0 A0 01 00 08 */ lhz r0, 8(r1) +/* 80184544 001814A4 3B E0 00 01 */ li r31, 1 +/* 80184548 001814A8 B0 1D 00 00 */ sth r0, 0(r29) +lbl_8018454C: +/* 8018454C 001814AC 7F E3 FB 78 */ mr r3, r31 +/* 80184550 001814B0 BB 21 00 14 */ lmw r25, 0x14(r1) +/* 80184554 001814B4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80184558 001814B8 7C 08 03 A6 */ mtlr r0 +/* 8018455C 001814BC 38 21 00 30 */ addi r1, r1, 0x30 +/* 80184560 001814C0 4E 80 00 20 */ blr + +.global "DetectCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +"DetectCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>": +/* 80184564 001814C4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80184568 001814C8 7C 08 02 A6 */ mflr r0 +/* 8018456C 001814CC 39 40 00 00 */ li r10, 0 +/* 80184570 001814D0 90 01 00 24 */ stw r0, 0x24(r1) +/* 80184574 001814D4 38 00 00 40 */ li r0, 0x40 +/* 80184578 001814D8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8018457C 001814DC 7D 1F 43 78 */ mr r31, r8 +/* 80184580 001814E0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80184584 001814E4 7C DE 33 78 */ mr r30, r6 +/* 80184588 001814E8 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8018458C 001814EC 7C BD 2B 78 */ mr r29, r5 +/* 80184590 001814F0 93 81 00 10 */ stw r28, 0x10(r1) +/* 80184594 001814F4 7C 7C 1B 78 */ mr r28, r3 +/* 80184598 001814F8 81 27 00 08 */ lwz r9, 8(r7) +/* 8018459C 001814FC 81 67 00 0C */ lwz r11, 0xc(r7) +/* 801845A0 00181500 7D 20 00 38 */ and r0, r9, r0 +/* 801845A4 00181504 7D 69 50 38 */ and r9, r11, r10 +/* 801845A8 00181508 7D 29 52 78 */ xor r9, r9, r10 +/* 801845AC 0018150C 7C 00 52 78 */ xor r0, r0, r10 +/* 801845B0 00181510 7D 20 03 79 */ or. r0, r9, r0 +/* 801845B4 00181514 40 82 00 18 */ bne lbl_801845CC +/* 801845B8 00181518 4B FF F0 41 */ bl DetectStaticCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter +/* 801845BC 0018151C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801845C0 00181520 41 82 00 0C */ beq lbl_801845CC +/* 801845C4 00181524 38 60 00 01 */ li r3, 1 +/* 801845C8 00181528 48 00 00 2C */ b lbl_801845F4 +lbl_801845CC: +/* 801845CC 0018152C 7F A3 EB 78 */ mr r3, r29 +/* 801845D0 00181530 7F C4 F3 78 */ mr r4, r30 +/* 801845D4 00181534 7F E5 FB 78 */ mr r5, r31 +/* 801845D8 00181538 7F 86 E3 78 */ mr r6, r28 +/* 801845DC 0018153C 4B FF F9 F1 */ bl "DetectDynamicCollisionBoolean__14CGameCollisionFRC19CCollisionPrimitiveRC12CTransform4fRCQ24rstl32reserved_vector<9TUniqueId,1024>RC13CStateManager" +/* 801845E0 00181540 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801845E4 00181544 41 82 00 0C */ beq lbl_801845F0 +/* 801845E8 00181548 38 60 00 01 */ li r3, 1 +/* 801845EC 0018154C 48 00 00 08 */ b lbl_801845F4 +lbl_801845F0: +/* 801845F0 00181550 38 60 00 00 */ li r3, 0 +lbl_801845F4: +/* 801845F4 00181554 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801845F8 00181558 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801845FC 0018155C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80184600 00181560 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80184604 00181564 83 81 00 10 */ lwz r28, 0x10(r1) +/* 80184608 00181568 7C 08 03 A6 */ mtlr r0 +/* 8018460C 0018156C 38 21 00 20 */ addi r1, r1, 0x20 +/* 80184610 00181570 4E 80 00 20 */ blr + +.global "DetectCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +"DetectCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>": +/* 80184614 00181574 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80184618 00181578 7C 08 02 A6 */ mflr r0 +/* 8018461C 0018157C 39 20 00 00 */ li r9, 0 +/* 80184620 00181580 90 01 00 24 */ stw r0, 0x24(r1) +/* 80184624 00181584 38 00 00 40 */ li r0, 0x40 +/* 80184628 00181588 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8018462C 0018158C 7C FF 3B 78 */ mr r31, r7 +/* 80184630 00181590 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80184634 00181594 7C BE 2B 78 */ mr r30, r5 +/* 80184638 00181598 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8018463C 0018159C 7C 9D 23 78 */ mr r29, r4 +/* 80184640 001815A0 93 81 00 10 */ stw r28, 0x10(r1) +/* 80184644 001815A4 7C 7C 1B 78 */ mr r28, r3 +/* 80184648 001815A8 81 06 00 08 */ lwz r8, 8(r6) +/* 8018464C 001815AC 81 46 00 0C */ lwz r10, 0xc(r6) +/* 80184650 001815B0 7D 00 00 38 */ and r0, r8, r0 +/* 80184654 001815B4 7D 48 48 38 */ and r8, r10, r9 +/* 80184658 001815B8 7D 08 4A 78 */ xor r8, r8, r9 +/* 8018465C 001815BC 7C 00 4A 78 */ xor r0, r0, r9 +/* 80184660 001815C0 7D 00 03 79 */ or. r0, r8, r0 +/* 80184664 001815C4 40 82 00 18 */ bne lbl_8018467C +/* 80184668 001815C8 4B FF ED 39 */ bl DetectStaticCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter +/* 8018466C 001815CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80184670 001815D0 41 82 00 0C */ beq lbl_8018467C +/* 80184674 001815D4 38 60 00 01 */ li r3, 1 +/* 80184678 001815D8 48 00 00 2C */ b lbl_801846A4 +lbl_8018467C: +/* 8018467C 001815DC 7F A3 EB 78 */ mr r3, r29 +/* 80184680 001815E0 7F C4 F3 78 */ mr r4, r30 +/* 80184684 001815E4 7F E5 FB 78 */ mr r5, r31 +/* 80184688 001815E8 7F 86 E3 78 */ mr r6, r28 +/* 8018468C 001815EC 4B FF F9 41 */ bl "DetectDynamicCollisionBoolean__14CGameCollisionFRC19CCollisionPrimitiveRC12CTransform4fRCQ24rstl32reserved_vector<9TUniqueId,1024>RC13CStateManager" +/* 80184690 001815F0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80184694 001815F4 41 82 00 0C */ beq lbl_801846A0 +/* 80184698 001815F8 38 60 00 01 */ li r3, 1 +/* 8018469C 001815FC 48 00 00 08 */ b lbl_801846A4 +lbl_801846A0: +/* 801846A0 00181600 38 60 00 00 */ li r3, 0 +lbl_801846A4: +/* 801846A4 00181604 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801846A8 00181608 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801846AC 0018160C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801846B0 00181610 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 801846B4 00181614 83 81 00 10 */ lwz r28, 0x10(r1) +/* 801846B8 00181618 7C 08 03 A6 */ mtlr r0 +/* 801846BC 0018161C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801846C0 00181620 4E 80 00 20 */ blr + +.global BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache +BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache: +/* 801846C4 00181624 94 21 F6 B0 */ stwu r1, -0x950(r1) +/* 801846C8 00181628 7C 08 02 A6 */ mflr r0 +/* 801846CC 0018162C 90 01 09 54 */ stw r0, 0x954(r1) +/* 801846D0 00181630 93 E1 09 4C */ stw r31, 0x94c(r1) +/* 801846D4 00181634 93 C1 09 48 */ stw r30, 0x948(r1) +/* 801846D8 00181638 7C 7E 1B 78 */ mr r30, r3 +/* 801846DC 0018163C 93 A1 09 44 */ stw r29, 0x944(r1) +/* 801846E0 00181640 7C 9D 23 78 */ mr r29, r4 +/* 801846E4 00181644 7F A3 EB 78 */ mr r3, r29 +/* 801846E8 00181648 48 11 F1 51 */ bl ClearCache__19CAreaCollisionCacheFv +/* 801846EC 0018164C 80 7E 08 50 */ lwz r3, 0x850(r30) +/* 801846F0 00181650 3B C1 00 30 */ addi r30, r1, 0x30 +/* 801846F4 00181654 83 E3 00 58 */ lwz r31, 0x58(r3) +/* 801846F8 00181658 48 00 00 E0 */ b lbl_801847D8 +lbl_801846FC: +/* 801846FC 0018165C 80 9F 01 2C */ lwz r4, 0x12c(r31) +/* 80184700 00181660 38 61 00 2C */ addi r3, r1, 0x2c +/* 80184704 00181664 80 84 00 04 */ lwz r4, 4(r4) +/* 80184708 00181668 48 11 F4 65 */ bl __ct__Q220CMetroidAreaCollider16COctreeLeafCacheFRC12CAreaOctTree +/* 8018470C 0018166C 80 DF 01 2C */ lwz r6, 0x12c(r31) +/* 80184710 00181670 7F A4 EB 78 */ mr r4, r29 +/* 80184714 00181674 38 61 00 08 */ addi r3, r1, 8 +/* 80184718 00181678 38 A1 00 2C */ addi r5, r1, 0x2c +/* 8018471C 0018167C 80 C6 00 04 */ lwz r6, 4(r6) +/* 80184720 00181680 80 06 00 18 */ lwz r0, 0x18(r6) +/* 80184724 00181684 80 E6 00 20 */ lwz r7, 0x20(r6) +/* 80184728 00181688 C0 06 00 00 */ lfs f0, 0(r6) +/* 8018472C 0018168C D0 01 00 08 */ stfs f0, 8(r1) +/* 80184730 00181690 C0 06 00 04 */ lfs f0, 4(r6) +/* 80184734 00181694 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 80184738 00181698 C0 06 00 08 */ lfs f0, 8(r6) +/* 8018473C 0018169C D0 01 00 10 */ stfs f0, 0x10(r1) +/* 80184740 001816A0 C0 06 00 0C */ lfs f0, 0xc(r6) +/* 80184744 001816A4 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80184748 001816A8 C0 06 00 10 */ lfs f0, 0x10(r6) +/* 8018474C 001816AC D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80184750 001816B0 C0 06 00 14 */ lfs f0, 0x14(r6) +/* 80184754 001816B4 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80184758 001816B8 90 E1 00 20 */ stw r7, 0x20(r1) +/* 8018475C 001816BC 90 C1 00 24 */ stw r6, 0x24(r1) +/* 80184760 001816C0 90 01 00 28 */ stw r0, 0x28(r1) +/* 80184764 001816C4 48 11 EF E5 */ bl BuildOctreeLeafCache__20CMetroidAreaColliderFRCQ212CAreaOctTree4NodeRC6CAABoxRQ220CMetroidAreaCollider16COctreeLeafCache +/* 80184768 001816C8 7F A3 EB 78 */ mr r3, r29 +/* 8018476C 001816CC 38 81 00 2C */ addi r4, r1, 0x2c +/* 80184770 001816D0 48 11 F1 A9 */ bl AddOctreeLeafCache__19CAreaCollisionCacheFRCQ220CMetroidAreaCollider16COctreeLeafCache +/* 80184774 001816D4 28 1E 00 00 */ cmplwi r30, 0 +/* 80184778 001816D8 41 82 00 5C */ beq lbl_801847D4 +/* 8018477C 001816DC 80 A1 00 30 */ lwz r5, 0x30(r1) +/* 80184780 001816E0 38 60 00 00 */ li r3, 0 +/* 80184784 001816E4 2C 05 00 00 */ cmpwi r5, 0 +/* 80184788 001816E8 40 81 00 44 */ ble lbl_801847CC +/* 8018478C 001816EC 2C 05 00 08 */ cmpwi r5, 8 +/* 80184790 001816F0 38 85 FF F8 */ addi r4, r5, -8 +/* 80184794 001816F4 40 81 00 20 */ ble lbl_801847B4 +/* 80184798 001816F8 38 04 00 07 */ addi r0, r4, 7 +/* 8018479C 001816FC 54 00 E8 FE */ srwi r0, r0, 3 +/* 801847A0 00181700 7C 09 03 A6 */ mtctr r0 +/* 801847A4 00181704 2C 04 00 00 */ cmpwi r4, 0 +/* 801847A8 00181708 40 81 00 0C */ ble lbl_801847B4 +lbl_801847AC: +/* 801847AC 0018170C 38 63 00 08 */ addi r3, r3, 8 +/* 801847B0 00181710 42 00 FF FC */ bdnz lbl_801847AC +lbl_801847B4: +/* 801847B4 00181714 7C 03 28 50 */ subf r0, r3, r5 +/* 801847B8 00181718 7C 09 03 A6 */ mtctr r0 +/* 801847BC 0018171C 7C 03 28 00 */ cmpw r3, r5 +/* 801847C0 00181720 40 80 00 0C */ bge lbl_801847CC +lbl_801847C4: +/* 801847C4 00181724 38 63 00 01 */ addi r3, r3, 1 +/* 801847C8 00181728 42 00 FF FC */ bdnz lbl_801847C4 +lbl_801847CC: +/* 801847CC 0018172C 38 00 00 00 */ li r0, 0 +/* 801847D0 00181730 90 01 00 30 */ stw r0, 0x30(r1) +lbl_801847D4: +/* 801847D4 00181734 83 FF 01 30 */ lwz r31, 0x130(r31) +lbl_801847D8: +/* 801847D8 00181738 80 0D A2 18 */ lwz r0, lbl_805A8DD8@sda21(r13) +/* 801847DC 0018173C 7C 1F 00 40 */ cmplw r31, r0 +/* 801847E0 00181740 40 82 FF 1C */ bne lbl_801846FC +/* 801847E4 00181744 38 60 00 00 */ li r3, 0 +/* 801847E8 00181748 4B F2 FD 11 */ bl IsUser__Fi +/* 801847EC 0018174C 80 01 09 54 */ lwz r0, 0x954(r1) +/* 801847F0 00181750 83 E1 09 4C */ lwz r31, 0x94c(r1) +/* 801847F4 00181754 83 C1 09 48 */ lwz r30, 0x948(r1) +/* 801847F8 00181758 83 A1 09 44 */ lwz r29, 0x944(r1) +/* 801847FC 0018175C 7C 08 03 A6 */ mtlr r0 +/* 80184800 00181760 38 21 09 50 */ addi r1, r1, 0x950 +/* 80184804 00181764 4E 80 00 20 */ blr + +.global RayStaticIntersection__14CGameCollisionFRC13CStateManagerRC9CVector3fRC9CVector3ffRC15CMaterialFilter +RayStaticIntersection__14CGameCollisionFRC13CStateManagerRC9CVector3fRC9CVector3ffRC15CMaterialFilter: +/* 80184808 00181768 94 21 FE B0 */ stwu r1, -0x150(r1) +/* 8018480C 0018176C 7C 08 02 A6 */ mflr r0 +/* 80184810 00181770 90 01 01 54 */ stw r0, 0x154(r1) +/* 80184814 00181774 DB E1 01 40 */ stfd f31, 0x140(r1) +/* 80184818 00181778 F3 E1 01 48 */ psq_st f31, 328(r1), 0, qr0 +/* 8018481C 0018177C DB C1 01 30 */ stfd f30, 0x130(r1) +/* 80184820 00181780 F3 C1 01 38 */ psq_st f30, 312(r1), 0, qr0 +/* 80184824 00181784 DB A1 01 20 */ stfd f29, 0x120(r1) +/* 80184828 00181788 F3 A1 01 28 */ psq_st f29, 296(r1), 0, qr0 +/* 8018482C 0018178C DB 81 01 10 */ stfd f28, 0x110(r1) +/* 80184830 00181790 F3 81 01 18 */ psq_st f28, 280(r1), 0, qr0 +/* 80184834 00181794 BF 41 00 F8 */ stmw r26, 0xf8(r1) +/* 80184838 00181798 7C BB 2B 78 */ mr r27, r5 +/* 8018483C 0018179C 7C DC 33 78 */ mr r28, r6 +/* 80184840 001817A0 C0 42 A2 A8 */ lfs f2, lbl_805ABFC8@sda21(r2) +/* 80184844 001817A4 7C 7A 1B 78 */ mr r26, r3 +/* 80184848 001817A8 C0 A6 00 00 */ lfs f5, 0(r6) +/* 8018484C 001817AC FF 80 08 90 */ fmr f28, f1 +/* 80184850 001817B0 C0 C6 00 04 */ lfs f6, 4(r6) +/* 80184854 001817B4 7C FD 3B 78 */ mr r29, r7 +/* 80184858 001817B8 C0 E6 00 08 */ lfs f7, 8(r6) +/* 8018485C 001817BC 38 61 00 08 */ addi r3, r1, 8 +/* 80184860 001817C0 C0 85 00 00 */ lfs f4, 0(r5) +/* 80184864 001817C4 C0 65 00 04 */ lfs f3, 4(r5) +/* 80184868 001817C8 C0 25 00 08 */ lfs f1, 8(r5) +/* 8018486C 001817CC C0 02 A2 D4 */ lfs f0, lbl_805ABFF4@sda21(r2) +/* 80184870 001817D0 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 80184874 001817D4 83 C4 08 50 */ lwz r30, 0x850(r4) +/* 80184878 001817D8 D0 61 00 18 */ stfs f3, 0x18(r1) +/* 8018487C 001817DC D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 80184880 001817E0 D0 A1 00 20 */ stfs f5, 0x20(r1) +/* 80184884 001817E4 D0 C1 00 24 */ stfs f6, 0x24(r1) +/* 80184888 001817E8 D0 E1 00 28 */ stfs f7, 0x28(r1) +/* 8018488C 001817EC D0 41 00 C8 */ stfs f2, 0xc8(r1) +/* 80184890 001817F0 D0 41 00 CC */ stfs f2, 0xcc(r1) +/* 80184894 001817F4 D0 41 00 D0 */ stfs f2, 0xd0(r1) +/* 80184898 001817F8 D0 41 00 D4 */ stfs f2, 0xd4(r1) +/* 8018489C 001817FC D0 01 00 08 */ stfs f0, 8(r1) +/* 801848A0 00181800 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 801848A4 00181804 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801848A8 00181808 48 19 00 51 */ bl Normalize__9CVector3fFv +/* 801848AC 0018180C C0 02 A2 A8 */ lfs f0, lbl_805ABFC8@sda21(r2) +/* 801848B0 00181810 38 00 00 00 */ li r0, 0 +/* 801848B4 00181814 C0 61 00 08 */ lfs f3, 8(r1) +/* 801848B8 00181818 C0 41 00 0C */ lfs f2, 0xc(r1) +/* 801848BC 0018181C FC 1C 00 40 */ fcmpo cr0, f28, f0 +/* 801848C0 00181820 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 801848C4 00181824 D0 61 00 D8 */ stfs f3, 0xd8(r1) +/* 801848C8 00181828 D0 41 00 DC */ stfs f2, 0xdc(r1) +/* 801848CC 0018182C D0 21 00 E0 */ stfs f1, 0xe0(r1) +/* 801848D0 00181830 D0 01 00 E4 */ stfs f0, 0xe4(r1) +/* 801848D4 00181834 98 01 00 E8 */ stb r0, 0xe8(r1) +/* 801848D8 00181838 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 801848DC 0018183C 90 01 00 F0 */ stw r0, 0xf0(r1) +/* 801848E0 00181840 40 81 00 0C */ ble lbl_801848EC +/* 801848E4 00181844 FF A0 E0 90 */ fmr f29, f28 +/* 801848E8 00181848 48 00 00 08 */ b lbl_801848F0 +lbl_801848EC: +/* 801848EC 0018184C C3 A2 A2 F4 */ lfs f29, lbl_805AC014@sda21(r2) +lbl_801848F0: +/* 801848F0 00181850 83 FE 00 58 */ lwz r31, 0x58(r30) +/* 801848F4 00181854 3B C1 00 94 */ addi r30, r1, 0x94 +/* 801848F8 00181858 C3 C2 A2 D4 */ lfs f30, lbl_805ABFF4@sda21(r2) +/* 801848FC 0018185C C3 E2 A2 A8 */ lfs f31, lbl_805ABFC8@sda21(r2) +/* 80184900 00181860 48 00 01 90 */ b lbl_80184A90 +lbl_80184904: +/* 80184904 00181864 38 00 00 00 */ li r0, 0 +/* 80184908 00181868 D3 C1 00 84 */ stfs f30, 0x84(r1) +/* 8018490C 0018186C FC 20 E0 90 */ fmr f1, f28 +/* 80184910 00181870 7F A5 EB 78 */ mr r5, r29 +/* 80184914 00181874 D3 E1 00 88 */ stfs f31, 0x88(r1) +/* 80184918 00181878 38 61 00 60 */ addi r3, r1, 0x60 +/* 8018491C 0018187C 38 81 00 14 */ addi r4, r1, 0x14 +/* 80184920 00181880 38 C1 00 84 */ addi r6, r1, 0x84 +/* 80184924 00181884 D3 E1 00 8C */ stfs f31, 0x8c(r1) +/* 80184928 00181888 D3 E1 00 90 */ stfs f31, 0x90(r1) +/* 8018492C 0018188C 98 01 00 BC */ stb r0, 0xbc(r1) +/* 80184930 00181890 D3 E1 00 C0 */ stfs f31, 0xc0(r1) +/* 80184934 00181894 80 FF 01 2C */ lwz r7, 0x12c(r31) +/* 80184938 00181898 80 E7 00 04 */ lwz r7, 4(r7) +/* 8018493C 0018189C 80 07 00 18 */ lwz r0, 0x18(r7) +/* 80184940 001818A0 81 07 00 20 */ lwz r8, 0x20(r7) +/* 80184944 001818A4 C0 07 00 00 */ lfs f0, 0(r7) +/* 80184948 001818A8 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 8018494C 001818AC C0 07 00 04 */ lfs f0, 4(r7) +/* 80184950 001818B0 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 80184954 001818B4 C0 07 00 08 */ lfs f0, 8(r7) +/* 80184958 001818B8 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 8018495C 001818BC C0 07 00 0C */ lfs f0, 0xc(r7) +/* 80184960 001818C0 D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 80184964 001818C4 C0 07 00 10 */ lfs f0, 0x10(r7) +/* 80184968 001818C8 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 8018496C 001818CC C0 07 00 14 */ lfs f0, 0x14(r7) +/* 80184970 001818D0 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 80184974 001818D4 91 01 00 78 */ stw r8, 0x78(r1) +/* 80184978 001818D8 90 E1 00 7C */ stw r7, 0x7c(r1) +/* 8018497C 001818DC 90 01 00 80 */ stw r0, 0x80(r1) +/* 80184980 001818E0 48 11 DA 11 */ bl LineTestEx__Q212CAreaOctTree4NodeCFRC5CLineRC15CMaterialFilterRQ212CAreaOctTree10SRayResultf +/* 80184984 001818E4 88 01 00 BC */ lbz r0, 0xbc(r1) +/* 80184988 001818E8 28 00 00 00 */ cmplwi r0, 0 +/* 8018498C 001818EC 41 82 00 1C */ beq lbl_801849A8 +/* 80184990 001818F0 C0 02 A2 A8 */ lfs f0, lbl_805ABFC8@sda21(r2) +/* 80184994 001818F4 FC 00 E0 00 */ fcmpu cr0, f0, f28 +/* 80184998 001818F8 41 82 00 24 */ beq lbl_801849BC +/* 8018499C 001818FC C0 01 00 C0 */ lfs f0, 0xc0(r1) +/* 801849A0 00181900 FC 1C 00 40 */ fcmpo cr0, f28, f0 +/* 801849A4 00181904 40 80 00 18 */ bge lbl_801849BC +lbl_801849A8: +/* 801849A8 00181908 28 1E 00 00 */ cmplwi r30, 0 +/* 801849AC 0018190C 41 82 00 E0 */ beq lbl_80184A8C +/* 801849B0 00181910 38 00 00 00 */ li r0, 0 +/* 801849B4 00181914 98 01 00 BC */ stb r0, 0xbc(r1) +/* 801849B8 00181918 48 00 00 D4 */ b lbl_80184A8C +lbl_801849BC: +/* 801849BC 0018191C C0 E1 00 C0 */ lfs f7, 0xc0(r1) +/* 801849C0 00181920 FC 07 E8 40 */ fcmpo cr0, f7, f29 +/* 801849C4 00181924 40 80 00 B8 */ bge lbl_80184A7C +/* 801849C8 00181928 C0 5C 00 00 */ lfs f2, 0(r28) +/* 801849CC 0018192C 38 A0 00 01 */ li r5, 1 +/* 801849D0 00181930 C0 3C 00 04 */ lfs f1, 4(r28) +/* 801849D4 00181934 38 00 00 00 */ li r0, 0 +/* 801849D8 00181938 C0 1C 00 08 */ lfs f0, 8(r28) +/* 801849DC 0018193C EC 87 00 B2 */ fmuls f4, f7, f2 +/* 801849E0 00181940 C0 BB 00 00 */ lfs f5, 0(r27) +/* 801849E4 00181944 EC 47 00 72 */ fmuls f2, f7, f1 +/* 801849E8 00181948 C0 7B 00 04 */ lfs f3, 4(r27) +/* 801849EC 0018194C EC 07 00 32 */ fmuls f0, f7, f0 +/* 801849F0 00181950 C0 3B 00 08 */ lfs f1, 8(r27) +/* 801849F4 00181954 EC C5 20 2A */ fadds f6, f5, f4 +/* 801849F8 00181958 80 61 00 B8 */ lwz r3, 0xb8(r1) +/* 801849FC 0018195C EC A3 10 2A */ fadds f5, f3, f2 +/* 80184A00 00181960 C0 81 00 84 */ lfs f4, 0x84(r1) +/* 80184A04 00181964 EC 01 00 2A */ fadds f0, f1, f0 +/* 80184A08 00181968 90 61 00 5C */ stw r3, 0x5c(r1) +/* 80184A0C 0018196C C0 61 00 88 */ lfs f3, 0x88(r1) +/* 80184A10 00181970 FF A0 38 90 */ fmr f29, f7 +/* 80184A14 00181974 C0 41 00 8C */ lfs f2, 0x8c(r1) +/* 80184A18 00181978 C0 21 00 90 */ lfs f1, 0x90(r1) +/* 80184A1C 0018197C D0 C1 00 34 */ stfs f6, 0x34(r1) +/* 80184A20 00181980 D0 A1 00 38 */ stfs f5, 0x38(r1) +/* 80184A24 00181984 80 81 00 34 */ lwz r4, 0x34(r1) +/* 80184A28 00181988 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 80184A2C 0018198C 80 61 00 38 */ lwz r3, 0x38(r1) +/* 80184A30 00181990 90 01 00 58 */ stw r0, 0x58(r1) +/* 80184A34 00181994 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 80184A38 00181998 C8 01 00 58 */ lfd f0, 0x58(r1) +/* 80184A3C 0018199C D0 E1 00 30 */ stfs f7, 0x30(r1) +/* 80184A40 001819A0 D0 81 00 40 */ stfs f4, 0x40(r1) +/* 80184A44 001819A4 D0 61 00 44 */ stfs f3, 0x44(r1) +/* 80184A48 001819A8 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 80184A4C 001819AC D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 80184A50 001819B0 98 A1 00 50 */ stb r5, 0x50(r1) +/* 80184A54 001819B4 D0 E1 00 C8 */ stfs f7, 0xc8(r1) +/* 80184A58 001819B8 90 81 00 CC */ stw r4, 0xcc(r1) +/* 80184A5C 001819BC 90 61 00 D0 */ stw r3, 0xd0(r1) +/* 80184A60 001819C0 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 80184A64 001819C4 D0 81 00 D8 */ stfs f4, 0xd8(r1) +/* 80184A68 001819C8 D0 61 00 DC */ stfs f3, 0xdc(r1) +/* 80184A6C 001819CC D0 41 00 E0 */ stfs f2, 0xe0(r1) +/* 80184A70 001819D0 D0 21 00 E4 */ stfs f1, 0xe4(r1) +/* 80184A74 001819D4 98 A1 00 E8 */ stb r5, 0xe8(r1) +/* 80184A78 001819D8 D8 01 00 F0 */ stfd f0, 0xf0(r1) +lbl_80184A7C: +/* 80184A7C 001819DC 28 1E 00 00 */ cmplwi r30, 0 +/* 80184A80 001819E0 41 82 00 0C */ beq lbl_80184A8C +/* 80184A84 001819E4 38 00 00 00 */ li r0, 0 +/* 80184A88 001819E8 98 01 00 BC */ stb r0, 0xbc(r1) +lbl_80184A8C: +/* 80184A8C 001819EC 83 FF 01 30 */ lwz r31, 0x130(r31) +lbl_80184A90: +/* 80184A90 001819F0 80 0D A2 18 */ lwz r0, lbl_805A8DD8@sda21(r13) +/* 80184A94 001819F4 7C 1F 00 40 */ cmplw r31, r0 +/* 80184A98 001819F8 40 82 FE 6C */ bne lbl_80184904 +/* 80184A9C 001819FC C0 21 00 C8 */ lfs f1, 0xc8(r1) +/* 80184AA0 00181A00 C0 01 00 CC */ lfs f0, 0xcc(r1) +/* 80184AA4 00181A04 D0 3A 00 00 */ stfs f1, 0(r26) +/* 80184AA8 00181A08 C0 21 00 D0 */ lfs f1, 0xd0(r1) +/* 80184AAC 00181A0C D0 1A 00 04 */ stfs f0, 4(r26) +/* 80184AB0 00181A10 C0 01 00 D4 */ lfs f0, 0xd4(r1) +/* 80184AB4 00181A14 D0 3A 00 08 */ stfs f1, 8(r26) +/* 80184AB8 00181A18 C0 21 00 D8 */ lfs f1, 0xd8(r1) +/* 80184ABC 00181A1C D0 1A 00 0C */ stfs f0, 0xc(r26) +/* 80184AC0 00181A20 C0 01 00 DC */ lfs f0, 0xdc(r1) +/* 80184AC4 00181A24 D0 3A 00 10 */ stfs f1, 0x10(r26) +/* 80184AC8 00181A28 C0 21 00 E0 */ lfs f1, 0xe0(r1) +/* 80184ACC 00181A2C D0 1A 00 14 */ stfs f0, 0x14(r26) +/* 80184AD0 00181A30 C0 01 00 E4 */ lfs f0, 0xe4(r1) +/* 80184AD4 00181A34 D0 3A 00 18 */ stfs f1, 0x18(r26) +/* 80184AD8 00181A38 88 01 00 E8 */ lbz r0, 0xe8(r1) +/* 80184ADC 00181A3C D0 1A 00 1C */ stfs f0, 0x1c(r26) +/* 80184AE0 00181A40 80 61 00 F4 */ lwz r3, 0xf4(r1) +/* 80184AE4 00181A44 98 1A 00 20 */ stb r0, 0x20(r26) +/* 80184AE8 00181A48 80 01 00 F0 */ lwz r0, 0xf0(r1) +/* 80184AEC 00181A4C 90 7A 00 2C */ stw r3, 0x2c(r26) +/* 80184AF0 00181A50 90 1A 00 28 */ stw r0, 0x28(r26) +/* 80184AF4 00181A54 E3 E1 01 48 */ psq_l f31, 328(r1), 0, qr0 +/* 80184AF8 00181A58 CB E1 01 40 */ lfd f31, 0x140(r1) +/* 80184AFC 00181A5C E3 C1 01 38 */ psq_l f30, 312(r1), 0, qr0 +/* 80184B00 00181A60 CB C1 01 30 */ lfd f30, 0x130(r1) +/* 80184B04 00181A64 E3 A1 01 28 */ psq_l f29, 296(r1), 0, qr0 +/* 80184B08 00181A68 CB A1 01 20 */ lfd f29, 0x120(r1) +/* 80184B0C 00181A6C E3 81 01 18 */ psq_l f28, 280(r1), 0, qr0 +/* 80184B10 00181A70 CB 81 01 10 */ lfd f28, 0x110(r1) +/* 80184B14 00181A74 BB 41 00 F8 */ lmw r26, 0xf8(r1) +/* 80184B18 00181A78 80 01 01 54 */ lwz r0, 0x154(r1) +/* 80184B1C 00181A7C 7C 08 03 A6 */ mtlr r0 +/* 80184B20 00181A80 38 21 01 50 */ addi r1, r1, 0x150 +/* 80184B24 00181A84 4E 80 00 20 */ blr + +.global RayStaticIntersectionArea__14CGameCollisionFRC9CGameAreaRC9CVector3fRC9CVector3fRC15CMaterialFilter +RayStaticIntersectionArea__14CGameCollisionFRC9CGameAreaRC9CVector3fRC9CVector3fRC15CMaterialFilter: +/* 80184B28 00181A88 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80184B2C 00181A8C 7C 08 02 A6 */ mflr r0 +/* 80184B30 00181A90 C0 02 A2 A8 */ lfs f0, lbl_805ABFC8@sda21(r2) +/* 80184B34 00181A94 90 01 00 54 */ stw r0, 0x54(r1) +/* 80184B38 00181A98 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80184B3C 00181A9C C0 85 00 00 */ lfs f4, 0(r5) +/* 80184B40 00181AA0 C0 A5 00 04 */ lfs f5, 4(r5) +/* 80184B44 00181AA4 C0 C5 00 08 */ lfs f6, 8(r5) +/* 80184B48 00181AA8 C0 64 00 00 */ lfs f3, 0(r4) +/* 80184B4C 00181AAC C0 44 00 04 */ lfs f2, 4(r4) +/* 80184B50 00181AB0 C0 04 00 08 */ lfs f0, 8(r4) +/* 80184B54 00181AB4 D0 61 00 08 */ stfs f3, 8(r1) +/* 80184B58 00181AB8 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 80184B5C 00181ABC D0 01 00 10 */ stfs f0, 0x10(r1) +/* 80184B60 00181AC0 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 80184B64 00181AC4 D0 A1 00 18 */ stfs f5, 0x18(r1) +/* 80184B68 00181AC8 D0 C1 00 1C */ stfs f6, 0x1c(r1) +/* 80184B6C 00181ACC 40 81 00 08 */ ble lbl_80184B74 +/* 80184B70 00181AD0 48 00 00 08 */ b lbl_80184B78 +lbl_80184B74: +/* 80184B74 00181AD4 C0 22 A2 F4 */ lfs f1, lbl_805AC014@sda21(r2) +lbl_80184B78: +/* 80184B78 00181AD8 80 83 01 2C */ lwz r4, 0x12c(r3) +/* 80184B7C 00181ADC 7C C5 33 78 */ mr r5, r6 +/* 80184B80 00181AE0 38 61 00 20 */ addi r3, r1, 0x20 +/* 80184B84 00181AE4 80 C4 00 04 */ lwz r6, 4(r4) +/* 80184B88 00181AE8 38 81 00 08 */ addi r4, r1, 8 +/* 80184B8C 00181AEC 80 06 00 18 */ lwz r0, 0x18(r6) +/* 80184B90 00181AF0 80 E6 00 20 */ lwz r7, 0x20(r6) +/* 80184B94 00181AF4 C0 06 00 00 */ lfs f0, 0(r6) +/* 80184B98 00181AF8 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 80184B9C 00181AFC C0 06 00 04 */ lfs f0, 4(r6) +/* 80184BA0 00181B00 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80184BA4 00181B04 C0 06 00 08 */ lfs f0, 8(r6) +/* 80184BA8 00181B08 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80184BAC 00181B0C C0 06 00 0C */ lfs f0, 0xc(r6) +/* 80184BB0 00181B10 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 80184BB4 00181B14 C0 06 00 10 */ lfs f0, 0x10(r6) +/* 80184BB8 00181B18 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 80184BBC 00181B1C C0 06 00 14 */ lfs f0, 0x14(r6) +/* 80184BC0 00181B20 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 80184BC4 00181B24 90 E1 00 38 */ stw r7, 0x38(r1) +/* 80184BC8 00181B28 90 C1 00 3C */ stw r6, 0x3c(r1) +/* 80184BCC 00181B2C 90 01 00 40 */ stw r0, 0x40(r1) +/* 80184BD0 00181B30 48 11 D6 DD */ bl LineTest__Q212CAreaOctTree4NodeCFRC5CLineRC15CMaterialFilterf +/* 80184BD4 00181B34 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80184BD8 00181B38 40 82 00 0C */ bne lbl_80184BE4 +/* 80184BDC 00181B3C 38 60 00 00 */ li r3, 0 +/* 80184BE0 00181B40 48 00 00 08 */ b lbl_80184BE8 +lbl_80184BE4: +/* 80184BE4 00181B44 38 60 00 01 */ li r3, 1 +lbl_80184BE8: +/* 80184BE8 00181B48 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80184BEC 00181B4C 7C 08 03 A6 */ mtlr r0 +/* 80184BF0 00181B50 38 21 00 50 */ addi r1, r1, 0x50 +/* 80184BF4 00181B54 4E 80 00 20 */ blr + +.global RayStaticIntersectionBool__14CGameCollisionFRC13CStateManagerRC9CVector3fRC9CVector3ffRC15CMaterialFilter +RayStaticIntersectionBool__14CGameCollisionFRC13CStateManagerRC9CVector3fRC9CVector3ffRC15CMaterialFilter: +/* 80184BF8 00181B58 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80184BFC 00181B5C 7C 08 02 A6 */ mflr r0 +/* 80184C00 00181B60 90 01 00 64 */ stw r0, 0x64(r1) +/* 80184C04 00181B64 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 80184C08 00181B68 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 80184C0C 00181B6C 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80184C10 00181B70 93 C1 00 48 */ stw r30, 0x48(r1) +/* 80184C14 00181B74 C0 02 A2 A8 */ lfs f0, lbl_805ABFC8@sda21(r2) +/* 80184C18 00181B78 7C DE 33 78 */ mr r30, r6 +/* 80184C1C 00181B7C C0 85 00 00 */ lfs f4, 0(r5) +/* 80184C20 00181B80 C0 A5 00 04 */ lfs f5, 4(r5) +/* 80184C24 00181B84 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80184C28 00181B88 C0 C5 00 08 */ lfs f6, 8(r5) +/* 80184C2C 00181B8C C0 64 00 00 */ lfs f3, 0(r4) +/* 80184C30 00181B90 C0 44 00 04 */ lfs f2, 4(r4) +/* 80184C34 00181B94 C0 04 00 08 */ lfs f0, 8(r4) +/* 80184C38 00181B98 D0 61 00 08 */ stfs f3, 8(r1) +/* 80184C3C 00181B9C 80 63 08 50 */ lwz r3, 0x850(r3) +/* 80184C40 00181BA0 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 80184C44 00181BA4 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 80184C48 00181BA8 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 80184C4C 00181BAC D0 A1 00 18 */ stfs f5, 0x18(r1) +/* 80184C50 00181BB0 D0 C1 00 1C */ stfs f6, 0x1c(r1) +/* 80184C54 00181BB4 40 81 00 0C */ ble lbl_80184C60 +/* 80184C58 00181BB8 FF E0 08 90 */ fmr f31, f1 +/* 80184C5C 00181BBC 48 00 00 08 */ b lbl_80184C64 +lbl_80184C60: +/* 80184C60 00181BC0 C3 E2 A2 F4 */ lfs f31, lbl_805AC014@sda21(r2) +lbl_80184C64: +/* 80184C64 00181BC4 83 E3 00 58 */ lwz r31, 0x58(r3) +/* 80184C68 00181BC8 48 00 00 78 */ b lbl_80184CE0 +lbl_80184C6C: +/* 80184C6C 00181BCC 80 9F 01 2C */ lwz r4, 0x12c(r31) +/* 80184C70 00181BD0 FC 20 F8 90 */ fmr f1, f31 +/* 80184C74 00181BD4 7F C5 F3 78 */ mr r5, r30 +/* 80184C78 00181BD8 38 61 00 20 */ addi r3, r1, 0x20 +/* 80184C7C 00181BDC 80 C4 00 04 */ lwz r6, 4(r4) +/* 80184C80 00181BE0 38 81 00 08 */ addi r4, r1, 8 +/* 80184C84 00181BE4 80 06 00 18 */ lwz r0, 0x18(r6) +/* 80184C88 00181BE8 80 E6 00 20 */ lwz r7, 0x20(r6) +/* 80184C8C 00181BEC C0 06 00 00 */ lfs f0, 0(r6) +/* 80184C90 00181BF0 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 80184C94 00181BF4 C0 06 00 04 */ lfs f0, 4(r6) +/* 80184C98 00181BF8 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80184C9C 00181BFC C0 06 00 08 */ lfs f0, 8(r6) +/* 80184CA0 00181C00 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80184CA4 00181C04 C0 06 00 0C */ lfs f0, 0xc(r6) +/* 80184CA8 00181C08 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 80184CAC 00181C0C C0 06 00 10 */ lfs f0, 0x10(r6) +/* 80184CB0 00181C10 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 80184CB4 00181C14 C0 06 00 14 */ lfs f0, 0x14(r6) +/* 80184CB8 00181C18 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 80184CBC 00181C1C 90 E1 00 38 */ stw r7, 0x38(r1) +/* 80184CC0 00181C20 90 C1 00 3C */ stw r6, 0x3c(r1) +/* 80184CC4 00181C24 90 01 00 40 */ stw r0, 0x40(r1) +/* 80184CC8 00181C28 48 11 D5 E5 */ bl LineTest__Q212CAreaOctTree4NodeCFRC5CLineRC15CMaterialFilterf +/* 80184CCC 00181C2C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80184CD0 00181C30 40 82 00 0C */ bne lbl_80184CDC +/* 80184CD4 00181C34 38 60 00 00 */ li r3, 0 +/* 80184CD8 00181C38 48 00 00 18 */ b lbl_80184CF0 +lbl_80184CDC: +/* 80184CDC 00181C3C 83 FF 01 30 */ lwz r31, 0x130(r31) +lbl_80184CE0: +/* 80184CE0 00181C40 80 0D A2 18 */ lwz r0, lbl_805A8DD8@sda21(r13) +/* 80184CE4 00181C44 7C 1F 00 40 */ cmplw r31, r0 +/* 80184CE8 00181C48 40 82 FF 84 */ bne lbl_80184C6C +/* 80184CEC 00181C4C 38 60 00 01 */ li r3, 1 +lbl_80184CF0: +/* 80184CF0 00181C50 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 80184CF4 00181C54 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80184CF8 00181C58 CB E1 00 50 */ lfd f31, 0x50(r1) +/* 80184CFC 00181C5C 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 80184D00 00181C60 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 80184D04 00181C64 7C 08 03 A6 */ mtlr r0 +/* 80184D08 00181C68 38 21 00 60 */ addi r1, r1, 0x60 +/* 80184D0C 00181C6C 4E 80 00 20 */ blr + +.global "RayDynamicIntersectionBool__14CGameCollisionFRC13CStateManagerRC9CVector3fRC9CVector3fRC15CMaterialFilterQ24rstl49reserved_vector<9TUniqueId,1024>PC6CActorf" +"RayDynamicIntersectionBool__14CGameCollisionFRC13CStateManagerRC9CVector3fRC9CVector3fRC15CMaterialFilterQ24rstl49reserved_vector<9TUniqueId,1024>PC6CActorf": +/* 80184D10 00181C70 94 21 FE E0 */ stwu r1, -0x120(r1) +/* 80184D14 00181C74 7C 08 02 A6 */ mflr r0 +/* 80184D18 00181C78 90 01 01 24 */ stw r0, 0x124(r1) +/* 80184D1C 00181C7C DB E1 01 10 */ stfd f31, 0x110(r1) +/* 80184D20 00181C80 F3 E1 01 18 */ psq_st f31, 280(r1), 0, qr0 +/* 80184D24 00181C84 BE E1 00 EC */ stmw r23, 0xec(r1) +/* 80184D28 00181C88 C0 02 A2 A8 */ lfs f0, lbl_805ABFC8@sda21(r2) +/* 80184D2C 00181C8C 7C 78 1B 78 */ mr r24, r3 +/* 80184D30 00181C90 7C 99 23 78 */ mr r25, r4 +/* 80184D34 00181C94 7C BA 2B 78 */ mr r26, r5 +/* 80184D38 00181C98 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80184D3C 00181C9C 7C DB 33 78 */ mr r27, r6 +/* 80184D40 00181CA0 7C FC 3B 78 */ mr r28, r7 +/* 80184D44 00181CA4 7D 1D 43 78 */ mr r29, r8 +/* 80184D48 00181CA8 40 81 00 0C */ ble lbl_80184D54 +/* 80184D4C 00181CAC FF E0 08 90 */ fmr f31, f1 +/* 80184D50 00181CB0 48 00 00 08 */ b lbl_80184D58 +lbl_80184D54: +/* 80184D54 00181CB4 C3 E2 A2 F4 */ lfs f31, lbl_805AC014@sda21(r2) +lbl_80184D58: +/* 80184D58 00181CB8 3B DC 00 04 */ addi r30, r28, 4 +/* 80184D5C 00181CBC 3B E1 00 B4 */ addi r31, r1, 0xb4 +/* 80184D60 00181CC0 48 00 00 D4 */ b lbl_80184E34 +lbl_80184D64: +/* 80184D64 00181CC4 A0 1E 00 00 */ lhz r0, 0(r30) +/* 80184D68 00181CC8 7F 03 C3 78 */ mr r3, r24 +/* 80184D6C 00181CCC 38 81 00 08 */ addi r4, r1, 8 +/* 80184D70 00181CD0 B0 01 00 08 */ sth r0, 8(r1) +/* 80184D74 00181CD4 4B EC 78 31 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80184D78 00181CD8 7C 64 1B 78 */ mr r4, r3 +/* 80184D7C 00181CDC 38 61 00 0C */ addi r3, r1, 0xc +/* 80184D80 00181CE0 4B F2 79 65 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" +/* 80184D84 00181CE4 82 E3 00 04 */ lwz r23, 4(r3) +/* 80184D88 00181CE8 28 17 00 00 */ cmplwi r23, 0 +/* 80184D8C 00181CEC 41 82 00 A4 */ beq lbl_80184E30 +/* 80184D90 00181CF0 28 1D 00 00 */ cmplwi r29, 0 +/* 80184D94 00181CF4 41 82 00 14 */ beq lbl_80184DA8 +/* 80184D98 00181CF8 A0 77 00 08 */ lhz r3, 8(r23) +/* 80184D9C 00181CFC A0 1D 00 08 */ lhz r0, 8(r29) +/* 80184DA0 00181D00 7C 03 00 40 */ cmplw r3, r0 +/* 80184DA4 00181D04 41 82 00 8C */ beq lbl_80184E30 +lbl_80184DA8: +/* 80184DA8 00181D08 7E E4 BB 78 */ mr r4, r23 +/* 80184DAC 00181D0C 38 61 00 14 */ addi r3, r1, 0x14 +/* 80184DB0 00181D10 81 97 00 00 */ lwz r12, 0(r23) +/* 80184DB4 00181D14 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 80184DB8 00181D18 7D 89 03 A6 */ mtctr r12 +/* 80184DBC 00181D1C 4E 80 04 21 */ bctrl +/* 80184DC0 00181D20 7E E3 BB 78 */ mr r3, r23 +/* 80184DC4 00181D24 81 97 00 00 */ lwz r12, 0(r23) +/* 80184DC8 00181D28 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80184DCC 00181D2C 7D 89 03 A6 */ mtctr r12 +/* 80184DD0 00181D30 4E 80 04 21 */ bctrl +/* 80184DD4 00181D34 FC 20 F8 90 */ fmr f1, f31 +/* 80184DD8 00181D38 7C 77 1B 78 */ mr r23, r3 +/* 80184DDC 00181D3C 7F 24 CB 78 */ mr r4, r25 +/* 80184DE0 00181D40 7F 45 D3 78 */ mr r5, r26 +/* 80184DE4 00181D44 38 61 00 78 */ addi r3, r1, 0x78 +/* 80184DE8 00181D48 48 15 12 85 */ bl __ct__5CMRayFRC9CVector3fRC9CVector3ff +/* 80184DEC 00181D4C D3 E1 00 B0 */ stfs f31, 0xb0(r1) +/* 80184DF0 00181D50 7F E3 FB 78 */ mr r3, r31 +/* 80184DF4 00181D54 38 81 00 14 */ addi r4, r1, 0x14 +/* 80184DF8 00181D58 48 18 DD 7D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80184DFC 00181D5C 93 61 00 E4 */ stw r27, 0xe4(r1) +/* 80184E00 00181D60 7E E4 BB 78 */ mr r4, r23 +/* 80184E04 00181D64 38 61 00 48 */ addi r3, r1, 0x48 +/* 80184E08 00181D68 38 A1 00 78 */ addi r5, r1, 0x78 +/* 80184E0C 00181D6C 81 97 00 00 */ lwz r12, 0(r23) +/* 80184E10 00181D70 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 80184E14 00181D74 7D 89 03 A6 */ mtctr r12 +/* 80184E18 00181D78 4E 80 04 21 */ bctrl +/* 80184E1C 00181D7C 88 01 00 68 */ lbz r0, 0x68(r1) +/* 80184E20 00181D80 28 00 00 00 */ cmplwi r0, 0 +/* 80184E24 00181D84 41 82 00 0C */ beq lbl_80184E30 +/* 80184E28 00181D88 38 60 00 00 */ li r3, 0 +/* 80184E2C 00181D8C 48 00 00 24 */ b lbl_80184E50 +lbl_80184E30: +/* 80184E30 00181D90 3B DE 00 02 */ addi r30, r30, 2 +lbl_80184E34: +/* 80184E34 00181D94 80 1C 00 00 */ lwz r0, 0(r28) +/* 80184E38 00181D98 54 00 08 3C */ slwi r0, r0, 1 +/* 80184E3C 00181D9C 7C 7C 02 14 */ add r3, r28, r0 +/* 80184E40 00181DA0 38 03 00 04 */ addi r0, r3, 4 +/* 80184E44 00181DA4 7C 1E 00 40 */ cmplw r30, r0 +/* 80184E48 00181DA8 40 82 FF 1C */ bne lbl_80184D64 +/* 80184E4C 00181DAC 38 60 00 01 */ li r3, 1 +lbl_80184E50: +/* 80184E50 00181DB0 E3 E1 01 18 */ psq_l f31, 280(r1), 0, qr0 +/* 80184E54 00181DB4 CB E1 01 10 */ lfd f31, 0x110(r1) +/* 80184E58 00181DB8 BA E1 00 EC */ lmw r23, 0xec(r1) +/* 80184E5C 00181DBC 80 01 01 24 */ lwz r0, 0x124(r1) +/* 80184E60 00181DC0 7C 08 03 A6 */ mtlr r0 +/* 80184E64 00181DC4 38 21 01 20 */ addi r1, r1, 0x120 +/* 80184E68 00181DC8 4E 80 00 20 */ blr + +.global "RayDynamicIntersection__14CGameCollisionFRC13CStateManagerR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +"RayDynamicIntersection__14CGameCollisionFRC13CStateManagerR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>": +/* 80184E6C 00181DCC 94 21 FE 70 */ stwu r1, -0x190(r1) +/* 80184E70 00181DD0 7C 08 02 A6 */ mflr r0 +/* 80184E74 00181DD4 90 01 01 94 */ stw r0, 0x194(r1) +/* 80184E78 00181DD8 DB E1 01 80 */ stfd f31, 0x180(r1) +/* 80184E7C 00181DDC F3 E1 01 88 */ psq_st f31, 392(r1), 0, qr0 +/* 80184E80 00181DE0 BE A1 01 54 */ stmw r21, 0x154(r1) +/* 80184E84 00181DE4 C0 02 A2 A8 */ lfs f0, lbl_805ABFC8@sda21(r2) +/* 80184E88 00181DE8 7C 76 1B 78 */ mr r22, r3 +/* 80184E8C 00181DEC 7C 97 23 78 */ mr r23, r4 +/* 80184E90 00181DF0 7C B8 2B 78 */ mr r24, r5 +/* 80184E94 00181DF4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80184E98 00181DF8 7C D9 33 78 */ mr r25, r6 +/* 80184E9C 00181DFC 7C FA 3B 78 */ mr r26, r7 +/* 80184EA0 00181E00 7D 1B 43 78 */ mr r27, r8 +/* 80184EA4 00181E04 7D 3C 4B 78 */ mr r28, r9 +/* 80184EA8 00181E08 40 81 00 0C */ ble lbl_80184EB4 +/* 80184EAC 00181E0C FF E0 08 90 */ fmr f31, f1 +/* 80184EB0 00181E10 48 00 00 08 */ b lbl_80184EB8 +lbl_80184EB4: +/* 80184EB4 00181E14 C3 E2 A2 F4 */ lfs f31, lbl_805AC014@sda21(r2) +lbl_80184EB8: +/* 80184EB8 00181E18 C0 22 A2 A8 */ lfs f1, lbl_805ABFC8@sda21(r2) +/* 80184EBC 00181E1C 38 61 00 14 */ addi r3, r1, 0x14 +/* 80184EC0 00181E20 C0 02 A2 D4 */ lfs f0, lbl_805ABFF4@sda21(r2) +/* 80184EC4 00181E24 D0 21 00 B0 */ stfs f1, 0xb0(r1) +/* 80184EC8 00181E28 D0 21 00 B4 */ stfs f1, 0xb4(r1) +/* 80184ECC 00181E2C D0 21 00 B8 */ stfs f1, 0xb8(r1) +/* 80184ED0 00181E30 D0 21 00 BC */ stfs f1, 0xbc(r1) +/* 80184ED4 00181E34 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80184ED8 00181E38 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80184EDC 00181E3C D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 80184EE0 00181E40 48 18 FA 19 */ bl Normalize__9CVector3fFv +/* 80184EE4 00181E44 C0 61 00 14 */ lfs f3, 0x14(r1) +/* 80184EE8 00181E48 38 00 00 00 */ li r0, 0 +/* 80184EEC 00181E4C C0 41 00 18 */ lfs f2, 0x18(r1) +/* 80184EF0 00181E50 3B DC 00 04 */ addi r30, r28, 4 +/* 80184EF4 00181E54 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 80184EF8 00181E58 3B E1 01 1C */ addi r31, r1, 0x11c +/* 80184EFC 00181E5C C0 02 A2 A8 */ lfs f0, lbl_805ABFC8@sda21(r2) +/* 80184F00 00181E60 D0 61 00 C0 */ stfs f3, 0xc0(r1) +/* 80184F04 00181E64 D0 41 00 C4 */ stfs f2, 0xc4(r1) +/* 80184F08 00181E68 D0 21 00 C8 */ stfs f1, 0xc8(r1) +/* 80184F0C 00181E6C D0 01 00 CC */ stfs f0, 0xcc(r1) +/* 80184F10 00181E70 98 01 00 D0 */ stb r0, 0xd0(r1) +/* 80184F14 00181E74 90 01 00 DC */ stw r0, 0xdc(r1) +/* 80184F18 00181E78 90 01 00 D8 */ stw r0, 0xd8(r1) +/* 80184F1C 00181E7C 48 00 01 54 */ b lbl_80185070 +lbl_80184F20: +/* 80184F20 00181E80 A0 1E 00 00 */ lhz r0, 0(r30) +/* 80184F24 00181E84 7E E3 BB 78 */ mr r3, r23 +/* 80184F28 00181E88 38 81 00 08 */ addi r4, r1, 8 +/* 80184F2C 00181E8C B0 01 00 08 */ sth r0, 8(r1) +/* 80184F30 00181E90 4B EC 76 75 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80184F34 00181E94 7C 64 1B 78 */ mr r4, r3 +/* 80184F38 00181E98 38 61 00 0C */ addi r3, r1, 0xc +/* 80184F3C 00181E9C 4B F2 77 A9 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" +/* 80184F40 00181EA0 83 A3 00 04 */ lwz r29, 4(r3) +/* 80184F44 00181EA4 28 1D 00 00 */ cmplwi r29, 0 +/* 80184F48 00181EA8 41 82 01 24 */ beq lbl_8018506C +/* 80184F4C 00181EAC 7F A4 EB 78 */ mr r4, r29 +/* 80184F50 00181EB0 38 61 00 20 */ addi r3, r1, 0x20 +/* 80184F54 00181EB4 81 9D 00 00 */ lwz r12, 0(r29) +/* 80184F58 00181EB8 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 80184F5C 00181EBC 7D 89 03 A6 */ mtctr r12 +/* 80184F60 00181EC0 4E 80 04 21 */ bctrl +/* 80184F64 00181EC4 7F A3 EB 78 */ mr r3, r29 +/* 80184F68 00181EC8 81 9D 00 00 */ lwz r12, 0(r29) +/* 80184F6C 00181ECC 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80184F70 00181ED0 7D 89 03 A6 */ mtctr r12 +/* 80184F74 00181ED4 4E 80 04 21 */ bctrl +/* 80184F78 00181ED8 FC 20 F8 90 */ fmr f1, f31 +/* 80184F7C 00181EDC 7C 75 1B 78 */ mr r21, r3 +/* 80184F80 00181EE0 7F 24 CB 78 */ mr r4, r25 +/* 80184F84 00181EE4 7F 45 D3 78 */ mr r5, r26 +/* 80184F88 00181EE8 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 80184F8C 00181EEC 48 15 10 E1 */ bl __ct__5CMRayFRC9CVector3fRC9CVector3ff +/* 80184F90 00181EF0 D3 E1 01 18 */ stfs f31, 0x118(r1) +/* 80184F94 00181EF4 7F E3 FB 78 */ mr r3, r31 +/* 80184F98 00181EF8 38 81 00 20 */ addi r4, r1, 0x20 +/* 80184F9C 00181EFC 48 18 DB D9 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80184FA0 00181F00 93 61 01 4C */ stw r27, 0x14c(r1) +/* 80184FA4 00181F04 7E A4 AB 78 */ mr r4, r21 +/* 80184FA8 00181F08 38 61 00 50 */ addi r3, r1, 0x50 +/* 80184FAC 00181F0C 38 A1 00 E0 */ addi r5, r1, 0xe0 +/* 80184FB0 00181F10 81 95 00 00 */ lwz r12, 0(r21) +/* 80184FB4 00181F14 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 80184FB8 00181F18 7D 89 03 A6 */ mtctr r12 +/* 80184FBC 00181F1C 4E 80 04 21 */ bctrl +/* 80184FC0 00181F20 88 C1 00 70 */ lbz r6, 0x70(r1) +/* 80184FC4 00181F24 C0 E1 00 50 */ lfs f7, 0x50(r1) +/* 80184FC8 00181F28 C0 C1 00 54 */ lfs f6, 0x54(r1) +/* 80184FCC 00181F2C 28 06 00 00 */ cmplwi r6, 0 +/* 80184FD0 00181F30 C0 A1 00 58 */ lfs f5, 0x58(r1) +/* 80184FD4 00181F34 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 80184FD8 00181F38 C0 81 00 60 */ lfs f4, 0x60(r1) +/* 80184FDC 00181F3C C0 61 00 64 */ lfs f3, 0x64(r1) +/* 80184FE0 00181F40 C0 41 00 68 */ lfs f2, 0x68(r1) +/* 80184FE4 00181F44 C0 21 00 6C */ lfs f1, 0x6c(r1) +/* 80184FE8 00181F48 80 01 00 78 */ lwz r0, 0x78(r1) +/* 80184FEC 00181F4C 80 61 00 7C */ lwz r3, 0x7c(r1) +/* 80184FF0 00181F50 D0 E1 00 80 */ stfs f7, 0x80(r1) +/* 80184FF4 00181F54 D0 C1 00 84 */ stfs f6, 0x84(r1) +/* 80184FF8 00181F58 D0 A1 00 88 */ stfs f5, 0x88(r1) +/* 80184FFC 00181F5C D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 80185000 00181F60 D0 81 00 90 */ stfs f4, 0x90(r1) +/* 80185004 00181F64 D0 61 00 94 */ stfs f3, 0x94(r1) +/* 80185008 00181F68 D0 41 00 98 */ stfs f2, 0x98(r1) +/* 8018500C 00181F6C D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 80185010 00181F70 98 C1 00 A0 */ stb r6, 0xa0(r1) +/* 80185014 00181F74 90 61 00 AC */ stw r3, 0xac(r1) +/* 80185018 00181F78 90 01 00 A8 */ stw r0, 0xa8(r1) +/* 8018501C 00181F7C 41 82 00 50 */ beq lbl_8018506C +/* 80185020 00181F80 FC 07 F8 40 */ fcmpo cr0, f7, f31 +/* 80185024 00181F84 40 80 00 48 */ bge lbl_8018506C +/* 80185028 00181F88 80 A1 00 84 */ lwz r5, 0x84(r1) +/* 8018502C 00181F8C FF E0 38 90 */ fmr f31, f7 +/* 80185030 00181F90 80 81 00 88 */ lwz r4, 0x88(r1) +/* 80185034 00181F94 80 61 00 8C */ lwz r3, 0x8c(r1) +/* 80185038 00181F98 C8 01 00 A8 */ lfd f0, 0xa8(r1) +/* 8018503C 00181F9C A0 1D 00 08 */ lhz r0, 8(r29) +/* 80185040 00181FA0 D0 E1 00 B0 */ stfs f7, 0xb0(r1) +/* 80185044 00181FA4 90 A1 00 B4 */ stw r5, 0xb4(r1) +/* 80185048 00181FA8 90 81 00 B8 */ stw r4, 0xb8(r1) +/* 8018504C 00181FAC 90 61 00 BC */ stw r3, 0xbc(r1) +/* 80185050 00181FB0 D0 81 00 C0 */ stfs f4, 0xc0(r1) +/* 80185054 00181FB4 D0 61 00 C4 */ stfs f3, 0xc4(r1) +/* 80185058 00181FB8 D0 41 00 C8 */ stfs f2, 0xc8(r1) +/* 8018505C 00181FBC D0 21 00 CC */ stfs f1, 0xcc(r1) +/* 80185060 00181FC0 98 C1 00 D0 */ stb r6, 0xd0(r1) +/* 80185064 00181FC4 D8 01 00 D8 */ stfd f0, 0xd8(r1) +/* 80185068 00181FC8 B0 18 00 00 */ sth r0, 0(r24) +lbl_8018506C: +/* 8018506C 00181FCC 3B DE 00 02 */ addi r30, r30, 2 +lbl_80185070: +/* 80185070 00181FD0 80 1C 00 00 */ lwz r0, 0(r28) +/* 80185074 00181FD4 54 00 08 3C */ slwi r0, r0, 1 +/* 80185078 00181FD8 7C 7C 02 14 */ add r3, r28, r0 +/* 8018507C 00181FDC 38 03 00 04 */ addi r0, r3, 4 +/* 80185080 00181FE0 7C 1E 00 40 */ cmplw r30, r0 +/* 80185084 00181FE4 40 82 FE 9C */ bne lbl_80184F20 +/* 80185088 00181FE8 C0 21 00 B0 */ lfs f1, 0xb0(r1) +/* 8018508C 00181FEC C0 01 00 B4 */ lfs f0, 0xb4(r1) +/* 80185090 00181FF0 D0 36 00 00 */ stfs f1, 0(r22) +/* 80185094 00181FF4 C0 21 00 B8 */ lfs f1, 0xb8(r1) +/* 80185098 00181FF8 D0 16 00 04 */ stfs f0, 4(r22) +/* 8018509C 00181FFC C0 01 00 BC */ lfs f0, 0xbc(r1) +/* 801850A0 00182000 D0 36 00 08 */ stfs f1, 8(r22) +/* 801850A4 00182004 C0 21 00 C0 */ lfs f1, 0xc0(r1) +/* 801850A8 00182008 D0 16 00 0C */ stfs f0, 0xc(r22) +/* 801850AC 0018200C C0 01 00 C4 */ lfs f0, 0xc4(r1) +/* 801850B0 00182010 D0 36 00 10 */ stfs f1, 0x10(r22) +/* 801850B4 00182014 C0 21 00 C8 */ lfs f1, 0xc8(r1) +/* 801850B8 00182018 D0 16 00 14 */ stfs f0, 0x14(r22) +/* 801850BC 0018201C C0 01 00 CC */ lfs f0, 0xcc(r1) +/* 801850C0 00182020 D0 36 00 18 */ stfs f1, 0x18(r22) +/* 801850C4 00182024 88 01 00 D0 */ lbz r0, 0xd0(r1) +/* 801850C8 00182028 D0 16 00 1C */ stfs f0, 0x1c(r22) +/* 801850CC 0018202C 80 61 00 DC */ lwz r3, 0xdc(r1) +/* 801850D0 00182030 98 16 00 20 */ stb r0, 0x20(r22) +/* 801850D4 00182034 80 01 00 D8 */ lwz r0, 0xd8(r1) +/* 801850D8 00182038 90 76 00 2C */ stw r3, 0x2c(r22) +/* 801850DC 0018203C 90 16 00 28 */ stw r0, 0x28(r22) +/* 801850E0 00182040 E3 E1 01 88 */ psq_l f31, 392(r1), 0, qr0 +/* 801850E4 00182044 CB E1 01 80 */ lfd f31, 0x180(r1) +/* 801850E8 00182048 BA A1 01 54 */ lmw r21, 0x154(r1) +/* 801850EC 0018204C 80 01 01 94 */ lwz r0, 0x194(r1) +/* 801850F0 00182050 7C 08 03 A6 */ mtlr r0 +/* 801850F4 00182054 38 21 01 90 */ addi r1, r1, 0x190 +/* 801850F8 00182058 4E 80 00 20 */ blr + +.global "RayWorldIntersection__14CGameCollisionFRC13CStateManagerR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +"RayWorldIntersection__14CGameCollisionFRC13CStateManagerR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>": +/* 801850FC 0018205C 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 80185100 00182060 7C 08 02 A6 */ mflr r0 +/* 80185104 00182064 90 01 01 14 */ stw r0, 0x114(r1) +/* 80185108 00182068 DB E1 01 00 */ stfd f31, 0x100(r1) +/* 8018510C 0018206C F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 +/* 80185110 00182070 DB C1 00 F0 */ stfd f30, 0xf0(r1) +/* 80185114 00182074 F3 C1 00 F8 */ psq_st f30, 248(r1), 0, qr0 +/* 80185118 00182078 DB A1 00 E0 */ stfd f29, 0xe0(r1) +/* 8018511C 0018207C F3 A1 00 E8 */ psq_st f29, 232(r1), 0, qr0 +/* 80185120 00182080 DB 81 00 D0 */ stfd f28, 0xd0(r1) +/* 80185124 00182084 F3 81 00 D8 */ psq_st f28, 216(r1), 0, qr0 +/* 80185128 00182088 DB 61 00 C0 */ stfd f27, 0xc0(r1) +/* 8018512C 0018208C F3 61 00 C8 */ psq_st f27, 200(r1), 0, qr0 +/* 80185130 00182090 DB 41 00 B0 */ stfd f26, 0xb0(r1) +/* 80185134 00182094 F3 41 00 B8 */ psq_st f26, 184(r1), 0, qr0 +/* 80185138 00182098 DB 21 00 A0 */ stfd f25, 0xa0(r1) +/* 8018513C 0018209C F3 21 00 A8 */ psq_st f25, 168(r1), 0, qr0 +/* 80185140 001820A0 DB 01 00 90 */ stfd f24, 0x90(r1) +/* 80185144 001820A4 F3 01 00 98 */ psq_st f24, 152(r1), 0, qr0 +/* 80185148 001820A8 BF 21 00 74 */ stmw r25, 0x74(r1) +/* 8018514C 001820AC FF 00 08 90 */ fmr f24, f1 +/* 80185150 001820B0 7C 79 1B 78 */ mr r25, r3 +/* 80185154 001820B4 7C DC 33 78 */ mr r28, r6 +/* 80185158 001820B8 7C FF 3B 78 */ mr r31, r7 +/* 8018515C 001820BC 7D 1E 43 78 */ mr r30, r8 +/* 80185160 001820C0 7C BB 2B 78 */ mr r27, r5 +/* 80185164 001820C4 7C 9A 23 78 */ mr r26, r4 +/* 80185168 001820C8 7D 3D 4B 78 */ mr r29, r9 +/* 8018516C 001820CC 7F 85 E3 78 */ mr r5, r28 +/* 80185170 001820D0 7F E6 FB 78 */ mr r6, r31 +/* 80185174 001820D4 7F C7 F3 78 */ mr r7, r30 +/* 80185178 001820D8 38 61 00 38 */ addi r3, r1, 0x38 +/* 8018517C 001820DC 4B FF F6 8D */ bl RayStaticIntersection__14CGameCollisionFRC13CStateManagerRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 80185180 001820E0 FC 20 C0 90 */ fmr f1, f24 +/* 80185184 001820E4 C3 E1 00 38 */ lfs f31, 0x38(r1) +/* 80185188 001820E8 C3 C1 00 3C */ lfs f30, 0x3c(r1) +/* 8018518C 001820EC 7F 44 D3 78 */ mr r4, r26 +/* 80185190 001820F0 C3 A1 00 40 */ lfs f29, 0x40(r1) +/* 80185194 001820F4 7F 65 DB 78 */ mr r5, r27 +/* 80185198 001820F8 C3 81 00 44 */ lfs f28, 0x44(r1) +/* 8018519C 001820FC 7F 86 E3 78 */ mr r6, r28 +/* 801851A0 00182100 C3 61 00 48 */ lfs f27, 0x48(r1) +/* 801851A4 00182104 7F E7 FB 78 */ mr r7, r31 +/* 801851A8 00182108 C3 41 00 4C */ lfs f26, 0x4c(r1) +/* 801851AC 0018210C 7F C8 F3 78 */ mr r8, r30 +/* 801851B0 00182110 C3 21 00 50 */ lfs f25, 0x50(r1) +/* 801851B4 00182114 7F A9 EB 78 */ mr r9, r29 +/* 801851B8 00182118 C3 01 00 54 */ lfs f24, 0x54(r1) +/* 801851BC 0018211C 38 61 00 08 */ addi r3, r1, 8 +/* 801851C0 00182120 8B E1 00 58 */ lbz r31, 0x58(r1) +/* 801851C4 00182124 83 C1 00 60 */ lwz r30, 0x60(r1) +/* 801851C8 00182128 83 A1 00 64 */ lwz r29, 0x64(r1) +/* 801851CC 0018212C 4B FF FC A1 */ bl "RayDynamicIntersection__14CGameCollisionFRC13CStateManagerR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 801851D0 00182130 88 01 00 28 */ lbz r0, 0x28(r1) +/* 801851D4 00182134 C0 01 00 08 */ lfs f0, 8(r1) +/* 801851D8 00182138 28 00 00 00 */ cmplwi r0, 0 +/* 801851DC 0018213C C0 21 00 0C */ lfs f1, 0xc(r1) +/* 801851E0 00182140 C0 41 00 10 */ lfs f2, 0x10(r1) +/* 801851E4 00182144 C0 61 00 14 */ lfs f3, 0x14(r1) +/* 801851E8 00182148 C0 81 00 18 */ lfs f4, 0x18(r1) +/* 801851EC 0018214C C0 A1 00 1C */ lfs f5, 0x1c(r1) +/* 801851F0 00182150 C0 C1 00 20 */ lfs f6, 0x20(r1) +/* 801851F4 00182154 C0 E1 00 24 */ lfs f7, 0x24(r1) +/* 801851F8 00182158 80 61 00 30 */ lwz r3, 0x30(r1) +/* 801851FC 0018215C 80 81 00 34 */ lwz r4, 0x34(r1) +/* 80185200 00182160 41 82 00 78 */ beq lbl_80185278 +/* 80185204 00182164 28 1F 00 00 */ cmplwi r31, 0 +/* 80185208 00182168 40 82 00 34 */ bne lbl_8018523C +/* 8018520C 0018216C D0 19 00 00 */ stfs f0, 0(r25) +/* 80185210 00182170 D0 39 00 04 */ stfs f1, 4(r25) +/* 80185214 00182174 D0 59 00 08 */ stfs f2, 8(r25) +/* 80185218 00182178 D0 79 00 0C */ stfs f3, 0xc(r25) +/* 8018521C 0018217C D0 99 00 10 */ stfs f4, 0x10(r25) +/* 80185220 00182180 D0 B9 00 14 */ stfs f5, 0x14(r25) +/* 80185224 00182184 D0 D9 00 18 */ stfs f6, 0x18(r25) +/* 80185228 00182188 D0 F9 00 1C */ stfs f7, 0x1c(r25) +/* 8018522C 0018218C 98 19 00 20 */ stb r0, 0x20(r25) +/* 80185230 00182190 90 99 00 2C */ stw r4, 0x2c(r25) +/* 80185234 00182194 90 79 00 28 */ stw r3, 0x28(r25) +/* 80185238 00182198 48 00 00 6C */ b lbl_801852A4 +lbl_8018523C: +/* 8018523C 0018219C FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 80185240 001821A0 4C 41 13 82 */ cror 2, 1, 2 +/* 80185244 001821A4 40 82 00 34 */ bne lbl_80185278 +/* 80185248 001821A8 D0 19 00 00 */ stfs f0, 0(r25) +/* 8018524C 001821AC D0 39 00 04 */ stfs f1, 4(r25) +/* 80185250 001821B0 D0 59 00 08 */ stfs f2, 8(r25) +/* 80185254 001821B4 D0 79 00 0C */ stfs f3, 0xc(r25) +/* 80185258 001821B8 D0 99 00 10 */ stfs f4, 0x10(r25) +/* 8018525C 001821BC D0 B9 00 14 */ stfs f5, 0x14(r25) +/* 80185260 001821C0 D0 D9 00 18 */ stfs f6, 0x18(r25) +/* 80185264 001821C4 D0 F9 00 1C */ stfs f7, 0x1c(r25) +/* 80185268 001821C8 98 19 00 20 */ stb r0, 0x20(r25) +/* 8018526C 001821CC 90 99 00 2C */ stw r4, 0x2c(r25) +/* 80185270 001821D0 90 79 00 28 */ stw r3, 0x28(r25) +/* 80185274 001821D4 48 00 00 30 */ b lbl_801852A4 +lbl_80185278: +/* 80185278 001821D8 D3 F9 00 00 */ stfs f31, 0(r25) +/* 8018527C 001821DC D3 D9 00 04 */ stfs f30, 4(r25) +/* 80185280 001821E0 D3 B9 00 08 */ stfs f29, 8(r25) +/* 80185284 001821E4 D3 99 00 0C */ stfs f28, 0xc(r25) +/* 80185288 001821E8 D3 79 00 10 */ stfs f27, 0x10(r25) +/* 8018528C 001821EC D3 59 00 14 */ stfs f26, 0x14(r25) +/* 80185290 001821F0 D3 39 00 18 */ stfs f25, 0x18(r25) +/* 80185294 001821F4 D3 19 00 1C */ stfs f24, 0x1c(r25) +/* 80185298 001821F8 9B F9 00 20 */ stb r31, 0x20(r25) +/* 8018529C 001821FC 93 B9 00 2C */ stw r29, 0x2c(r25) +/* 801852A0 00182200 93 D9 00 28 */ stw r30, 0x28(r25) +lbl_801852A4: +/* 801852A4 00182204 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 +/* 801852A8 00182208 CB E1 01 00 */ lfd f31, 0x100(r1) +/* 801852AC 0018220C E3 C1 00 F8 */ psq_l f30, 248(r1), 0, qr0 +/* 801852B0 00182210 CB C1 00 F0 */ lfd f30, 0xf0(r1) +/* 801852B4 00182214 E3 A1 00 E8 */ psq_l f29, 232(r1), 0, qr0 +/* 801852B8 00182218 CB A1 00 E0 */ lfd f29, 0xe0(r1) +/* 801852BC 0018221C E3 81 00 D8 */ psq_l f28, 216(r1), 0, qr0 +/* 801852C0 00182220 CB 81 00 D0 */ lfd f28, 0xd0(r1) +/* 801852C4 00182224 E3 61 00 C8 */ psq_l f27, 200(r1), 0, qr0 +/* 801852C8 00182228 CB 61 00 C0 */ lfd f27, 0xc0(r1) +/* 801852CC 0018222C E3 41 00 B8 */ psq_l f26, 184(r1), 0, qr0 +/* 801852D0 00182230 CB 41 00 B0 */ lfd f26, 0xb0(r1) +/* 801852D4 00182234 E3 21 00 A8 */ psq_l f25, 168(r1), 0, qr0 +/* 801852D8 00182238 CB 21 00 A0 */ lfd f25, 0xa0(r1) +/* 801852DC 0018223C E3 01 00 98 */ psq_l f24, 152(r1), 0, qr0 +/* 801852E0 00182240 CB 01 00 90 */ lfd f24, 0x90(r1) +/* 801852E4 00182244 BB 21 00 74 */ lmw r25, 0x74(r1) +/* 801852E8 00182248 80 01 01 14 */ lwz r0, 0x114(r1) +/* 801852EC 0018224C 7C 08 03 A6 */ mtlr r0 +/* 801852F0 00182250 38 21 01 10 */ addi r1, r1, 0x110 +/* 801852F4 00182254 4E 80 00 20 */ blr + +.global NullMovingCollider__14CGameCollisionFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo +NullMovingCollider__14CGameCollisionFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo: +/* 801852F8 00182258 38 60 00 00 */ li r3, 0 +/* 801852FC 0018225C 4E 80 00 20 */ blr + +.global NullBooleanCollider__14CGameCollisionFRC27CInternalCollisionStructure +NullBooleanCollider__14CGameCollisionFRC27CInternalCollisionStructure: +/* 80185300 00182260 38 60 00 00 */ li r3, 0 +/* 80185304 00182264 4E 80 00 20 */ blr + +.global NullCollisionCollider__14CGameCollisionFRC27CInternalCollisionStructureR18CCollisionInfoList +NullCollisionCollider__14CGameCollisionFRC27CInternalCollisionStructureR18CCollisionInfoList: +/* 80185308 00182268 38 60 00 00 */ li r3, 0 +/* 8018530C 0018226C 4E 80 00 20 */ blr + +.global InitCollision__14CGameCollisionFv +InitCollision__14CGameCollisionFv: +/* 80185310 00182270 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80185314 00182274 7C 08 02 A6 */ mflr r0 +/* 80185318 00182278 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018531C 0018227C 48 14 A4 CD */ bl InitBeginTypes__19CCollisionPrimitiveFv +/* 80185320 00182280 38 61 00 08 */ addi r3, r1, 8 +/* 80185324 00182284 48 12 86 91 */ bl GetType__23CCollidableOBBTreeGroupFv +/* 80185328 00182288 38 61 00 08 */ addi r3, r1, 8 +/* 8018532C 0018228C 48 14 A4 0D */ bl InitAddType__19CCollisionPrimitiveFRCQ219CCollisionPrimitive4Type +/* 80185330 00182290 48 14 A1 E9 */ bl InitEndTypes__19CCollisionPrimitiveFv +/* 80185334 00182294 48 14 A1 01 */ bl InitBeginColliders__19CCollisionPrimitiveFv +/* 80185338 00182298 3C 60 80 3D */ lis r3, lbl_803D0690@ha +/* 8018533C 0018229C 3C A0 80 2B */ lis r5, SphereCollide__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructureR18CCollisionInfoList@ha +/* 80185340 001822A0 38 83 06 90 */ addi r4, r3, lbl_803D0690@l +/* 80185344 001822A4 38 65 CF 40 */ addi r3, r5, SphereCollide__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructureR18CCollisionInfoList@l +/* 80185348 001822A8 38 A4 00 12 */ addi r5, r4, 0x12 +/* 8018534C 001822AC 48 14 93 99 */ bl InitAddCollider__19CCollisionPrimitiveFPFRC27CInternalCollisionStructureR18CCollisionInfoList_bPCcPCc +/* 80185350 001822B0 3C 60 80 3D */ lis r3, lbl_803D0690@ha +/* 80185354 001822B4 3C 80 80 2B */ lis r4, AABoxCollide__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructureR18CCollisionInfoList@ha +/* 80185358 001822B8 38 A3 06 90 */ addi r5, r3, lbl_803D0690@l +/* 8018535C 001822BC 38 64 D2 8C */ addi r3, r4, AABoxCollide__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructureR18CCollisionInfoList@l +/* 80185360 001822C0 38 85 00 2A */ addi r4, r5, 0x2a +/* 80185364 001822C4 38 A5 00 12 */ addi r5, r5, 0x12 +/* 80185368 001822C8 48 14 93 7D */ bl InitAddCollider__19CCollisionPrimitiveFPFRC27CInternalCollisionStructureR18CCollisionInfoList_bPCcPCc +/* 8018536C 001822CC 3C 60 80 3D */ lis r3, lbl_803D0690@ha +/* 80185370 001822D0 3C A0 80 2B */ lis r5, SphereCollideBoolean__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructure@ha +/* 80185374 001822D4 38 83 06 90 */ addi r4, r3, lbl_803D0690@l +/* 80185378 001822D8 38 65 CD AC */ addi r3, r5, SphereCollideBoolean__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructure@l +/* 8018537C 001822DC 38 A4 00 12 */ addi r5, r4, 0x12 +/* 80185380 001822E0 48 14 93 35 */ bl InitAddBooleanCollider__19CCollisionPrimitiveFPFRC27CInternalCollisionStructure_bPCcPCc +/* 80185384 001822E4 3C 60 80 3D */ lis r3, lbl_803D0690@ha +/* 80185388 001822E8 3C 80 80 2B */ lis r4, AABoxCollideBoolean__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructure@ha +/* 8018538C 001822EC 38 A3 06 90 */ addi r5, r3, lbl_803D0690@l +/* 80185390 001822F0 38 64 D0 E0 */ addi r3, r4, AABoxCollideBoolean__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructure@l +/* 80185394 001822F4 38 85 00 2A */ addi r4, r5, 0x2a +/* 80185398 001822F8 38 A5 00 12 */ addi r5, r5, 0x12 +/* 8018539C 001822FC 48 14 93 19 */ bl InitAddBooleanCollider__19CCollisionPrimitiveFPFRC27CInternalCollisionStructure_bPCcPCc +/* 801853A0 00182300 3C 60 80 3D */ lis r3, lbl_803D0690@ha +/* 801853A4 00182304 3C 80 80 2B */ lis r4, CollideMovingAABox__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo@ha +/* 801853A8 00182308 38 A3 06 90 */ addi r5, r3, lbl_803D0690@l +/* 801853AC 0018230C 38 64 CA 48 */ addi r3, r4, CollideMovingAABox__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo@l +/* 801853B0 00182310 38 85 00 2A */ addi r4, r5, 0x2a +/* 801853B4 00182314 38 A5 00 12 */ addi r5, r5, 0x12 +/* 801853B8 00182318 48 14 92 CD */ bl InitAddMovingCollider__19CCollisionPrimitiveFPFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo_bPCcPCc +/* 801853BC 0018231C 3C 60 80 3D */ lis r3, lbl_803D0690@ha +/* 801853C0 00182320 3C A0 80 2B */ lis r5, CollideMovingSphere__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo@ha +/* 801853C4 00182324 38 83 06 90 */ addi r4, r3, lbl_803D0690@l +/* 801853C8 00182328 38 65 C7 C4 */ addi r3, r5, CollideMovingSphere__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo@l +/* 801853CC 0018232C 38 A4 00 12 */ addi r5, r4, 0x12 +/* 801853D0 00182330 48 14 92 B5 */ bl InitAddMovingCollider__19CCollisionPrimitiveFPFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo_bPCcPCc +/* 801853D4 00182334 3C 60 80 3D */ lis r3, lbl_803D0690@ha +/* 801853D8 00182338 3C A0 80 18 */ lis r5, NullCollisionCollider__14CGameCollisionFRC27CInternalCollisionStructureR18CCollisionInfoList@ha +/* 801853DC 0018233C 38 83 06 90 */ addi r4, r3, lbl_803D0690@l +/* 801853E0 00182340 38 84 00 12 */ addi r4, r4, 0x12 +/* 801853E4 00182344 38 65 53 08 */ addi r3, r5, NullCollisionCollider__14CGameCollisionFRC27CInternalCollisionStructureR18CCollisionInfoList@l +/* 801853E8 00182348 7C 85 23 78 */ mr r5, r4 +/* 801853EC 0018234C 48 14 92 F9 */ bl InitAddCollider__19CCollisionPrimitiveFPFRC27CInternalCollisionStructureR18CCollisionInfoList_bPCcPCc +/* 801853F0 00182350 3C 60 80 3D */ lis r3, lbl_803D0690@ha +/* 801853F4 00182354 3C A0 80 18 */ lis r5, NullBooleanCollider__14CGameCollisionFRC27CInternalCollisionStructure@ha +/* 801853F8 00182358 38 83 06 90 */ addi r4, r3, lbl_803D0690@l +/* 801853FC 0018235C 38 84 00 12 */ addi r4, r4, 0x12 +/* 80185400 00182360 38 65 53 00 */ addi r3, r5, NullBooleanCollider__14CGameCollisionFRC27CInternalCollisionStructure@l +/* 80185404 00182364 7C 85 23 78 */ mr r5, r4 +/* 80185408 00182368 48 14 92 AD */ bl InitAddBooleanCollider__19CCollisionPrimitiveFPFRC27CInternalCollisionStructure_bPCcPCc +/* 8018540C 0018236C 3C 60 80 3D */ lis r3, lbl_803D0690@ha +/* 80185410 00182370 3C A0 80 18 */ lis r5, NullMovingCollider__14CGameCollisionFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo@ha +/* 80185414 00182374 38 83 06 90 */ addi r4, r3, lbl_803D0690@l +/* 80185418 00182378 38 84 00 12 */ addi r4, r4, 0x12 +/* 8018541C 0018237C 38 65 52 F8 */ addi r3, r5, NullMovingCollider__14CGameCollisionFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo@l +/* 80185420 00182380 7C 85 23 78 */ mr r5, r4 +/* 80185424 00182384 48 14 92 61 */ bl InitAddMovingCollider__19CCollisionPrimitiveFPFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo_bPCcPCc +/* 80185428 00182388 48 14 9F 79 */ bl InitEndColliders__19CCollisionPrimitiveFv +/* 8018542C 0018238C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80185430 00182390 7C 08 03 A6 */ mtlr r0 +/* 80185434 00182394 38 21 00 10 */ addi r1, r1, 0x10 +/* 80185438 00182398 4E 80 00 20 */ blr + +.global sub_8018543c +sub_8018543c: +/* 8018543C 0018239C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80185440 001823A0 7C 08 02 A6 */ mflr r0 +/* 80185444 001823A4 90 01 00 44 */ stw r0, 0x44(r1) +/* 80185448 001823A8 BF 21 00 24 */ stmw r25, 0x24(r1) +/* 8018544C 001823AC 7C 7A 1B 78 */ mr r26, r3 +/* 80185450 001823B0 7C 9B 23 78 */ mr r27, r4 +/* 80185454 001823B4 3B A0 00 00 */ li r29, 0 +/* 80185458 001823B8 3B DA 00 04 */ addi r30, r26, 4 +/* 8018545C 001823BC 48 00 01 3C */ b lbl_80185598 +lbl_80185460: +/* 80185460 001823C0 3B FB 00 04 */ addi r31, r27, 4 +/* 80185464 001823C4 3B 80 00 00 */ li r28, 0 +/* 80185468 001823C8 3B 20 00 00 */ li r25, 0 +/* 8018546C 001823CC 48 00 01 00 */ b lbl_8018556C +lbl_80185470: +/* 80185470 001823D0 C0 22 A2 F8 */ lfs f1, lbl_805AC018@sda21(r2) +/* 80185474 001823D4 7F E3 FB 78 */ mr r3, r31 +/* 80185478 001823D8 7F C4 F3 78 */ mr r4, r30 +/* 8018547C 001823DC 48 18 AA E9 */ bl close_enough__FRC9CVector3fRC9CVector3ff +/* 80185480 001823E0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80185484 001823E4 41 82 00 E0 */ beq lbl_80185564 +/* 80185488 001823E8 38 61 00 14 */ addi r3, r1, 0x14 +/* 8018548C 001823EC 38 9F 00 48 */ addi r4, r31, 0x48 +/* 80185490 001823F0 48 18 F3 C1 */ bl AsNormalized__9CVector3fCFv +/* 80185494 001823F4 C0 22 A2 FC */ lfs f1, lbl_805AC01C@sda21(r2) +/* 80185498 001823F8 38 61 00 14 */ addi r3, r1, 0x14 +/* 8018549C 001823FC 38 9E 00 48 */ addi r4, r30, 0x48 +/* 801854A0 00182400 48 18 AA C5 */ bl close_enough__FRC9CVector3fRC9CVector3ff +/* 801854A4 00182404 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801854A8 00182408 41 82 00 BC */ beq lbl_80185564 +/* 801854AC 0018240C C0 3F 00 00 */ lfs f1, 0(r31) +/* 801854B0 00182410 3B 80 00 01 */ li r28, 1 +/* 801854B4 00182414 C0 1E 00 00 */ lfs f0, 0(r30) +/* 801854B8 00182418 C0 7F 00 04 */ lfs f3, 4(r31) +/* 801854BC 0018241C C0 5E 00 04 */ lfs f2, 4(r30) +/* 801854C0 00182420 EC 01 00 2A */ fadds f0, f1, f0 +/* 801854C4 00182424 C0 82 A3 00 */ lfs f4, lbl_805AC020@sda21(r2) +/* 801854C8 00182428 EC 63 10 2A */ fadds f3, f3, f2 +/* 801854CC 0018242C C0 5F 00 08 */ lfs f2, 8(r31) +/* 801854D0 00182430 C0 3E 00 08 */ lfs f1, 8(r30) +/* 801854D4 00182434 EC 04 00 32 */ fmuls f0, f4, f0 +/* 801854D8 00182438 EC 22 08 2A */ fadds f1, f2, f1 +/* 801854DC 0018243C EC 44 00 F2 */ fmuls f2, f4, f3 +/* 801854E0 00182440 D0 1F 00 00 */ stfs f0, 0(r31) +/* 801854E4 00182444 EC 04 00 72 */ fmuls f0, f4, f1 +/* 801854E8 00182448 D0 5F 00 04 */ stfs f2, 4(r31) +/* 801854EC 0018244C D0 1F 00 08 */ stfs f0, 8(r31) +/* 801854F0 00182450 80 BF 00 3C */ lwz r5, 0x3c(r31) +/* 801854F4 00182454 80 1E 00 3C */ lwz r0, 0x3c(r30) +/* 801854F8 00182458 80 9F 00 38 */ lwz r4, 0x38(r31) +/* 801854FC 0018245C 80 7E 00 38 */ lwz r3, 0x38(r30) +/* 80185500 00182460 7C A0 03 78 */ or r0, r5, r0 +/* 80185504 00182464 90 1F 00 3C */ stw r0, 0x3c(r31) +/* 80185508 00182468 7C 80 1B 78 */ or r0, r4, r3 +/* 8018550C 0018246C 90 1F 00 38 */ stw r0, 0x38(r31) +/* 80185510 00182470 80 BF 00 44 */ lwz r5, 0x44(r31) +/* 80185514 00182474 80 1E 00 44 */ lwz r0, 0x44(r30) +/* 80185518 00182478 80 9F 00 40 */ lwz r4, 0x40(r31) +/* 8018551C 0018247C 80 7E 00 40 */ lwz r3, 0x40(r30) +/* 80185520 00182480 7C A0 03 78 */ or r0, r5, r0 +/* 80185524 00182484 90 1F 00 3C */ stw r0, 0x3c(r31) +/* 80185528 00182488 7C 80 1B 78 */ or r0, r4, r3 +/* 8018552C 0018248C 90 1F 00 38 */ stw r0, 0x38(r31) +/* 80185530 00182490 C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 80185534 00182494 C0 1E 00 48 */ lfs f0, 0x48(r30) +/* 80185538 00182498 C0 9F 00 4C */ lfs f4, 0x4c(r31) +/* 8018553C 0018249C C0 7E 00 4C */ lfs f3, 0x4c(r30) +/* 80185540 001824A0 EC 01 00 2A */ fadds f0, f1, f0 +/* 80185544 001824A4 C0 5F 00 50 */ lfs f2, 0x50(r31) +/* 80185548 001824A8 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 8018554C 001824AC EC 64 18 2A */ fadds f3, f4, f3 +/* 80185550 001824B0 D0 1F 00 48 */ stfs f0, 0x48(r31) +/* 80185554 001824B4 EC 02 08 2A */ fadds f0, f2, f1 +/* 80185558 001824B8 D0 7F 00 4C */ stfs f3, 0x4c(r31) +/* 8018555C 001824BC D0 1F 00 50 */ stfs f0, 0x50(r31) +/* 80185560 001824C0 48 00 00 18 */ b lbl_80185578 +lbl_80185564: +/* 80185564 001824C4 3B FF 00 60 */ addi r31, r31, 0x60 +/* 80185568 001824C8 3B 39 00 01 */ addi r25, r25, 1 +lbl_8018556C: +/* 8018556C 001824CC 80 1B 00 00 */ lwz r0, 0(r27) +/* 80185570 001824D0 7C 19 00 00 */ cmpw r25, r0 +/* 80185574 001824D4 41 80 FE FC */ blt lbl_80185470 +lbl_80185578: +/* 80185578 001824D8 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 8018557C 001824DC 40 82 00 14 */ bne lbl_80185590 +/* 80185580 001824E0 7F 63 DB 78 */ mr r3, r27 +/* 80185584 001824E4 7F C4 F3 78 */ mr r4, r30 +/* 80185588 001824E8 38 A0 00 00 */ li r5, 0 +/* 8018558C 001824EC 48 00 00 95 */ bl Add__18CCollisionInfoListFRC14CCollisionInfob +lbl_80185590: +/* 80185590 001824F0 3B DE 00 60 */ addi r30, r30, 0x60 +/* 80185594 001824F4 3B BD 00 01 */ addi r29, r29, 1 +lbl_80185598: +/* 80185598 001824F8 80 1A 00 00 */ lwz r0, 0(r26) +/* 8018559C 001824FC 7C 1D 00 00 */ cmpw r29, r0 +/* 801855A0 00182500 41 80 FE C0 */ blt lbl_80185460 +/* 801855A4 00182504 3B 5B 00 04 */ addi r26, r27, 4 +/* 801855A8 00182508 3B 20 00 00 */ li r25, 0 +/* 801855AC 0018250C 48 00 00 54 */ b lbl_80185600 +lbl_801855B0: +/* 801855B0 00182510 38 61 00 08 */ addi r3, r1, 8 +/* 801855B4 00182514 38 9A 00 48 */ addi r4, r26, 0x48 +/* 801855B8 00182518 48 18 F2 99 */ bl AsNormalized__9CVector3fCFv +/* 801855BC 0018251C C0 01 00 08 */ lfs f0, 8(r1) +/* 801855C0 00182520 3B 39 00 01 */ addi r25, r25, 1 +/* 801855C4 00182524 D0 1A 00 48 */ stfs f0, 0x48(r26) +/* 801855C8 00182528 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 801855CC 0018252C D0 1A 00 4C */ stfs f0, 0x4c(r26) +/* 801855D0 00182530 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 801855D4 00182534 D0 1A 00 50 */ stfs f0, 0x50(r26) +/* 801855D8 00182538 C0 1A 00 48 */ lfs f0, 0x48(r26) +/* 801855DC 0018253C C0 3A 00 4C */ lfs f1, 0x4c(r26) +/* 801855E0 00182540 FC 00 00 50 */ fneg f0, f0 +/* 801855E4 00182544 C0 5A 00 50 */ lfs f2, 0x50(r26) +/* 801855E8 00182548 FC 20 08 50 */ fneg f1, f1 +/* 801855EC 0018254C FC 40 10 50 */ fneg f2, f2 +/* 801855F0 00182550 D0 1A 00 54 */ stfs f0, 0x54(r26) +/* 801855F4 00182554 D0 3A 00 58 */ stfs f1, 0x58(r26) +/* 801855F8 00182558 D0 5A 00 5C */ stfs f2, 0x5c(r26) +/* 801855FC 0018255C 3B 5A 00 60 */ addi r26, r26, 0x60 +lbl_80185600: +/* 80185600 00182560 80 1B 00 00 */ lwz r0, 0(r27) +/* 80185604 00182564 7C 19 00 00 */ cmpw r25, r0 +/* 80185608 00182568 41 80 FF A8 */ blt lbl_801855B0 +/* 8018560C 0018256C BB 21 00 24 */ lmw r25, 0x24(r1) +/* 80185610 00182570 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80185614 00182574 7C 08 03 A6 */ mtlr r0 +/* 80185618 00182578 38 21 00 40 */ addi r1, r1, 0x40 +/* 8018561C 0018257C 4E 80 00 20 */ blr + +.global Add__18CCollisionInfoListFRC14CCollisionInfob +Add__18CCollisionInfoListFRC14CCollisionInfob: +/* 80185620 00182580 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 80185624 00182584 7C 08 02 A6 */ mflr r0 +/* 80185628 00182588 90 01 00 74 */ stw r0, 0x74(r1) +/* 8018562C 0018258C 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 80185630 00182590 7C 7F 1B 78 */ mr r31, r3 +/* 80185634 00182594 80 63 00 00 */ lwz r3, 0(r3) +/* 80185638 00182598 2C 03 00 20 */ cmpwi r3, 0x20 +/* 8018563C 0018259C 41 82 01 D8 */ beq lbl_80185814 +/* 80185640 001825A0 54 A0 06 3F */ clrlwi. r0, r5, 0x18 +/* 80185644 001825A4 40 82 00 E4 */ bne lbl_80185728 +/* 80185648 001825A8 1C 03 00 60 */ mulli r0, r3, 0x60 +/* 8018564C 001825AC 7C BF 02 14 */ add r5, r31, r0 +/* 80185650 001825B0 34 A5 00 04 */ addic. r5, r5, 4 +/* 80185654 001825B4 41 82 00 C4 */ beq lbl_80185718 +/* 80185658 001825B8 C0 04 00 00 */ lfs f0, 0(r4) +/* 8018565C 001825BC D0 05 00 00 */ stfs f0, 0(r5) +/* 80185660 001825C0 C0 04 00 04 */ lfs f0, 4(r4) +/* 80185664 001825C4 D0 05 00 04 */ stfs f0, 4(r5) +/* 80185668 001825C8 C0 04 00 08 */ lfs f0, 8(r4) +/* 8018566C 001825CC D0 05 00 08 */ stfs f0, 8(r5) +/* 80185670 001825D0 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 80185674 001825D4 D0 05 00 0C */ stfs f0, 0xc(r5) +/* 80185678 001825D8 C0 04 00 10 */ lfs f0, 0x10(r4) +/* 8018567C 001825DC D0 05 00 10 */ stfs f0, 0x10(r5) +/* 80185680 001825E0 C0 04 00 14 */ lfs f0, 0x14(r4) +/* 80185684 001825E4 D0 05 00 14 */ stfs f0, 0x14(r5) +/* 80185688 001825E8 C0 04 00 18 */ lfs f0, 0x18(r4) +/* 8018568C 001825EC D0 05 00 18 */ stfs f0, 0x18(r5) +/* 80185690 001825F0 C0 04 00 1C */ lfs f0, 0x1c(r4) +/* 80185694 001825F4 D0 05 00 1C */ stfs f0, 0x1c(r5) +/* 80185698 001825F8 C0 04 00 20 */ lfs f0, 0x20(r4) +/* 8018569C 001825FC D0 05 00 20 */ stfs f0, 0x20(r5) +/* 801856A0 00182600 C0 04 00 24 */ lfs f0, 0x24(r4) +/* 801856A4 00182604 D0 05 00 24 */ stfs f0, 0x24(r5) +/* 801856A8 00182608 C0 04 00 28 */ lfs f0, 0x28(r4) +/* 801856AC 0018260C D0 05 00 28 */ stfs f0, 0x28(r5) +/* 801856B0 00182610 C0 04 00 2C */ lfs f0, 0x2c(r4) +/* 801856B4 00182614 D0 05 00 2C */ stfs f0, 0x2c(r5) +/* 801856B8 00182618 88 04 00 30 */ lbz r0, 0x30(r4) +/* 801856BC 0018261C 98 05 00 30 */ stb r0, 0x30(r5) +/* 801856C0 00182620 88 04 00 31 */ lbz r0, 0x31(r4) +/* 801856C4 00182624 98 05 00 31 */ stb r0, 0x31(r5) +/* 801856C8 00182628 80 04 00 38 */ lwz r0, 0x38(r4) +/* 801856CC 0018262C 80 64 00 3C */ lwz r3, 0x3c(r4) +/* 801856D0 00182630 90 65 00 3C */ stw r3, 0x3c(r5) +/* 801856D4 00182634 90 05 00 38 */ stw r0, 0x38(r5) +/* 801856D8 00182638 80 04 00 40 */ lwz r0, 0x40(r4) +/* 801856DC 0018263C 80 64 00 44 */ lwz r3, 0x44(r4) +/* 801856E0 00182640 90 65 00 44 */ stw r3, 0x44(r5) +/* 801856E4 00182644 90 05 00 40 */ stw r0, 0x40(r5) +/* 801856E8 00182648 C0 04 00 48 */ lfs f0, 0x48(r4) +/* 801856EC 0018264C D0 05 00 48 */ stfs f0, 0x48(r5) +/* 801856F0 00182650 C0 04 00 4C */ lfs f0, 0x4c(r4) +/* 801856F4 00182654 D0 05 00 4C */ stfs f0, 0x4c(r5) +/* 801856F8 00182658 C0 04 00 50 */ lfs f0, 0x50(r4) +/* 801856FC 0018265C D0 05 00 50 */ stfs f0, 0x50(r5) +/* 80185700 00182660 C0 04 00 54 */ lfs f0, 0x54(r4) +/* 80185704 00182664 D0 05 00 54 */ stfs f0, 0x54(r5) +/* 80185708 00182668 C0 04 00 58 */ lfs f0, 0x58(r4) +/* 8018570C 0018266C D0 05 00 58 */ stfs f0, 0x58(r5) +/* 80185710 00182670 C0 04 00 5C */ lfs f0, 0x5c(r4) +/* 80185714 00182674 D0 05 00 5C */ stfs f0, 0x5c(r5) +lbl_80185718: +/* 80185718 00182678 80 7F 00 00 */ lwz r3, 0(r31) +/* 8018571C 0018267C 38 03 00 01 */ addi r0, r3, 1 +/* 80185720 00182680 90 1F 00 00 */ stw r0, 0(r31) +/* 80185724 00182684 48 00 00 F0 */ b lbl_80185814 +lbl_80185728: +/* 80185728 00182688 38 61 00 08 */ addi r3, r1, 8 +/* 8018572C 0018268C 38 A0 00 00 */ li r5, 0 +/* 80185730 00182690 48 14 8A C5 */ bl GetSwapped__14CCollisionInfoCFv +/* 80185734 00182694 80 1F 00 00 */ lwz r0, 0(r31) +/* 80185738 00182698 1C 00 00 60 */ mulli r0, r0, 0x60 +/* 8018573C 0018269C 7C 9F 02 14 */ add r4, r31, r0 +/* 80185740 001826A0 34 84 00 04 */ addic. r4, r4, 4 +/* 80185744 001826A4 41 82 00 C4 */ beq lbl_80185808 +/* 80185748 001826A8 C0 01 00 08 */ lfs f0, 8(r1) +/* 8018574C 001826AC D0 04 00 00 */ stfs f0, 0(r4) +/* 80185750 001826B0 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 80185754 001826B4 D0 04 00 04 */ stfs f0, 4(r4) +/* 80185758 001826B8 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 8018575C 001826BC D0 04 00 08 */ stfs f0, 8(r4) +/* 80185760 001826C0 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 80185764 001826C4 D0 04 00 0C */ stfs f0, 0xc(r4) +/* 80185768 001826C8 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 8018576C 001826CC D0 04 00 10 */ stfs f0, 0x10(r4) +/* 80185770 001826D0 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 80185774 001826D4 D0 04 00 14 */ stfs f0, 0x14(r4) +/* 80185778 001826D8 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 8018577C 001826DC D0 04 00 18 */ stfs f0, 0x18(r4) +/* 80185780 001826E0 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 80185784 001826E4 D0 04 00 1C */ stfs f0, 0x1c(r4) +/* 80185788 001826E8 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 8018578C 001826EC D0 04 00 20 */ stfs f0, 0x20(r4) +/* 80185790 001826F0 C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 80185794 001826F4 D0 04 00 24 */ stfs f0, 0x24(r4) +/* 80185798 001826F8 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 8018579C 001826FC D0 04 00 28 */ stfs f0, 0x28(r4) +/* 801857A0 00182700 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 801857A4 00182704 D0 04 00 2C */ stfs f0, 0x2c(r4) +/* 801857A8 00182708 88 01 00 38 */ lbz r0, 0x38(r1) +/* 801857AC 0018270C 98 04 00 30 */ stb r0, 0x30(r4) +/* 801857B0 00182710 88 01 00 39 */ lbz r0, 0x39(r1) +/* 801857B4 00182714 98 04 00 31 */ stb r0, 0x31(r4) +/* 801857B8 00182718 80 01 00 40 */ lwz r0, 0x40(r1) +/* 801857BC 0018271C 80 61 00 44 */ lwz r3, 0x44(r1) +/* 801857C0 00182720 90 64 00 3C */ stw r3, 0x3c(r4) +/* 801857C4 00182724 90 04 00 38 */ stw r0, 0x38(r4) +/* 801857C8 00182728 80 01 00 48 */ lwz r0, 0x48(r1) +/* 801857CC 0018272C 80 61 00 4C */ lwz r3, 0x4c(r1) +/* 801857D0 00182730 90 64 00 44 */ stw r3, 0x44(r4) +/* 801857D4 00182734 90 04 00 40 */ stw r0, 0x40(r4) +/* 801857D8 00182738 C0 01 00 50 */ lfs f0, 0x50(r1) +/* 801857DC 0018273C D0 04 00 48 */ stfs f0, 0x48(r4) +/* 801857E0 00182740 C0 01 00 54 */ lfs f0, 0x54(r1) +/* 801857E4 00182744 D0 04 00 4C */ stfs f0, 0x4c(r4) +/* 801857E8 00182748 C0 01 00 58 */ lfs f0, 0x58(r1) +/* 801857EC 0018274C D0 04 00 50 */ stfs f0, 0x50(r4) +/* 801857F0 00182750 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 801857F4 00182754 D0 04 00 54 */ stfs f0, 0x54(r4) +/* 801857F8 00182758 C0 01 00 60 */ lfs f0, 0x60(r1) +/* 801857FC 0018275C D0 04 00 58 */ stfs f0, 0x58(r4) +/* 80185800 00182760 C0 01 00 64 */ lfs f0, 0x64(r1) +/* 80185804 00182764 D0 04 00 5C */ stfs f0, 0x5c(r4) +lbl_80185808: +/* 80185808 00182768 80 7F 00 00 */ lwz r3, 0(r31) +/* 8018580C 0018276C 38 03 00 01 */ addi r0, r3, 1 +/* 80185810 00182770 90 1F 00 00 */ stw r0, 0(r31) +lbl_80185814: +/* 80185814 00182774 80 01 00 74 */ lwz r0, 0x74(r1) +/* 80185818 00182778 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 8018581C 0018277C 7C 08 03 A6 */ mtlr r0 +/* 80185820 00182780 38 21 00 70 */ addi r1, r1, 0x70 +/* 80185824 00182784 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CGroundMovement.s b/asm/Kyoto_CWD/CGroundMovement.s new file mode 100644 index 00000000..c89850aa --- /dev/null +++ b/asm/Kyoto_CWD/CGroundMovement.s @@ -0,0 +1,4689 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global "MoveObjectAnalytical__15CGroundMovementFR13CStateManagerR13CPhysicsActorfRCQ24rstl32reserved_vector<9TUniqueId,1024>R19CAreaCollisionCacheRfRCQ215CGroundMovement16SMovementOptions" +"MoveObjectAnalytical__15CGroundMovementFR13CStateManagerR13CPhysicsActorfRCQ24rstl32reserved_vector<9TUniqueId,1024>R19CAreaCollisionCacheRfRCQ215CGroundMovement16SMovementOptions": +/* 80185A10 00182970 94 21 FD 00 */ stwu r1, -0x300(r1) +/* 80185A14 00182974 7C 08 02 A6 */ mflr r0 +/* 80185A18 00182978 90 01 03 04 */ stw r0, 0x304(r1) +/* 80185A1C 0018297C DB E1 02 F0 */ stfd f31, 0x2f0(r1) +/* 80185A20 00182980 F3 E1 02 F8 */ psq_st f31, 760(r1), 0, qr0 +/* 80185A24 00182984 DB C1 02 E0 */ stfd f30, 0x2e0(r1) +/* 80185A28 00182988 F3 C1 02 E8 */ psq_st f30, 744(r1), 0, qr0 +/* 80185A2C 0018298C DB A1 02 D0 */ stfd f29, 0x2d0(r1) +/* 80185A30 00182990 F3 A1 02 D8 */ psq_st f29, 728(r1), 0, qr0 +/* 80185A34 00182994 DB 81 02 C0 */ stfd f28, 0x2c0(r1) +/* 80185A38 00182998 F3 81 02 C8 */ psq_st f28, 712(r1), 0, qr0 +/* 80185A3C 0018299C DB 61 02 B0 */ stfd f27, 0x2b0(r1) +/* 80185A40 001829A0 F3 61 02 B8 */ psq_st f27, 696(r1), 0, qr0 +/* 80185A44 001829A4 DB 41 02 A0 */ stfd f26, 0x2a0(r1) +/* 80185A48 001829A8 F3 41 02 A8 */ psq_st f26, 680(r1), 0, qr0 +/* 80185A4C 001829AC DB 21 02 90 */ stfd f25, 0x290(r1) +/* 80185A50 001829B0 F3 21 02 98 */ psq_st f25, 664(r1), 0, qr0 +/* 80185A54 001829B4 BE 01 02 50 */ stmw r16, 0x250(r1) +/* 80185A58 001829B8 3A 60 00 00 */ li r19, 0 +/* 80185A5C 001829BC 7D 3D 4B 78 */ mr r29, r9 +/* 80185A60 001829C0 92 69 00 6C */ stw r19, 0x6c(r9) +/* 80185A64 001829C4 FF 40 08 90 */ fmr f26, f1 +/* 80185A68 001829C8 7D 1C 43 78 */ mr r28, r8 +/* 80185A6C 001829CC 7C 77 1B 78 */ mr r23, r3 +/* 80185A70 001829D0 88 08 00 48 */ lbz r0, 0x48(r8) +/* 80185A74 001829D4 7C 98 23 78 */ mr r24, r4 +/* 80185A78 001829D8 FF 80 D0 90 */ fmr f28, f26 +/* 80185A7C 001829DC 28 00 00 00 */ cmplwi r0, 0 +/* 80185A80 001829E0 7C B9 2B 78 */ mr r25, r5 +/* 80185A84 001829E4 7C DA 33 78 */ mr r26, r6 +/* 80185A88 001829E8 7C FB 3B 78 */ mr r27, r7 +/* 80185A8C 001829EC 7E 74 9B 78 */ mr r20, r19 +/* 80185A90 001829F0 7C 1E 03 78 */ mr r30, r0 +/* 80185A94 001829F4 3B E0 00 00 */ li r31, 0 +/* 80185A98 001829F8 41 82 00 0C */ beq lbl_80185AA4 +/* 80185A9C 001829FC 38 7C 00 3C */ addi r3, r28, 0x3c +/* 80185AA0 00182A00 48 00 00 0C */ b lbl_80185AAC +lbl_80185AA4: +/* 80185AA4 00182A04 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80185AA8 00182A08 38 63 66 A0 */ addi r3, r3, skZero3f@l +lbl_80185AAC: +/* 80185AAC 00182A0C C0 03 00 00 */ lfs f0, 0(r3) +/* 80185AB0 00182A10 3A 41 02 28 */ addi r18, r1, 0x228 +/* 80185AB4 00182A14 C3 A2 A3 10 */ lfs f29, lbl_805AC030@sda21(r2) +/* 80185AB8 00182A18 D0 01 00 D0 */ stfs f0, 0xd0(r1) +/* 80185ABC 00182A1C C3 C2 A3 14 */ lfs f30, lbl_805AC034@sda21(r2) +/* 80185AC0 00182A20 C0 03 00 04 */ lfs f0, 4(r3) +/* 80185AC4 00182A24 C3 E2 A3 18 */ lfs f31, lbl_805AC038@sda21(r2) +/* 80185AC8 00182A28 D0 01 00 D4 */ stfs f0, 0xd4(r1) +/* 80185ACC 00182A2C C0 03 00 08 */ lfs f0, 8(r3) +/* 80185AD0 00182A30 D0 01 00 D8 */ stfs f0, 0xd8(r1) +/* 80185AD4 00182A34 48 00 07 C0 */ b lbl_80186294 +lbl_80185AD8: +/* 80185AD8 00182A38 FF 60 E0 90 */ fmr f27, f28 +/* 80185ADC 00182A3C 7F 24 CB 78 */ mr r4, r25 +/* 80185AE0 00182A40 FC 20 E0 90 */ fmr f1, f28 +/* 80185AE4 00182A44 38 61 01 88 */ addi r3, r1, 0x188 +/* 80185AE8 00182A48 4B F9 5D 21 */ bl PredictMotion_Internal__13CPhysicsActorCFf +/* 80185AEC 00182A4C C1 81 01 88 */ lfs f12, 0x188(r1) +/* 80185AF0 00182A50 38 61 01 BC */ addi r3, r1, 0x1bc +/* 80185AF4 00182A54 C1 61 01 8C */ lfs f11, 0x18c(r1) +/* 80185AF8 00182A58 C1 41 01 90 */ lfs f10, 0x190(r1) +/* 80185AFC 00182A5C C1 21 01 94 */ lfs f9, 0x194(r1) +/* 80185B00 00182A60 C1 01 01 98 */ lfs f8, 0x198(r1) +/* 80185B04 00182A64 C0 E1 01 9C */ lfs f7, 0x19c(r1) +/* 80185B08 00182A68 C0 C1 01 A0 */ lfs f6, 0x1a0(r1) +/* 80185B0C 00182A6C C0 A1 01 A4 */ lfs f5, 0x1a4(r1) +/* 80185B10 00182A70 C0 81 01 A8 */ lfs f4, 0x1a8(r1) +/* 80185B14 00182A74 C0 61 01 AC */ lfs f3, 0x1ac(r1) +/* 80185B18 00182A78 C0 41 01 B0 */ lfs f2, 0x1b0(r1) +/* 80185B1C 00182A7C C0 21 01 B4 */ lfs f1, 0x1b4(r1) +/* 80185B20 00182A80 C0 01 01 B8 */ lfs f0, 0x1b8(r1) +/* 80185B24 00182A84 D1 81 01 BC */ stfs f12, 0x1bc(r1) +/* 80185B28 00182A88 D1 61 01 C0 */ stfs f11, 0x1c0(r1) +/* 80185B2C 00182A8C D1 41 01 C4 */ stfs f10, 0x1c4(r1) +/* 80185B30 00182A90 D1 21 01 C8 */ stfs f9, 0x1c8(r1) +/* 80185B34 00182A94 D1 01 01 CC */ stfs f8, 0x1cc(r1) +/* 80185B38 00182A98 D0 E1 01 D0 */ stfs f7, 0x1d0(r1) +/* 80185B3C 00182A9C D0 C1 01 D4 */ stfs f6, 0x1d4(r1) +/* 80185B40 00182AA0 D0 A1 01 D8 */ stfs f5, 0x1d8(r1) +/* 80185B44 00182AA4 D0 81 01 DC */ stfs f4, 0x1dc(r1) +/* 80185B48 00182AA8 D0 61 01 E0 */ stfs f3, 0x1e0(r1) +/* 80185B4C 00182AAC D0 41 01 E4 */ stfs f2, 0x1e4(r1) +/* 80185B50 00182AB0 D0 21 01 E8 */ stfs f1, 0x1e8(r1) +/* 80185B54 00182AB4 D0 01 01 EC */ stfs f0, 0x1ec(r1) +/* 80185B58 00182AB8 48 18 ED 61 */ bl Magnitude__9CVector3fCFv +/* 80185B5C 00182ABC FF 20 08 90 */ fmr f25, f1 +/* 80185B60 00182AC0 FC 19 F0 40 */ fcmpo cr0, f25, f30 +/* 80185B64 00182AC4 40 81 00 0C */ ble lbl_80185B70 +/* 80185B68 00182AC8 FC 00 C8 90 */ fmr f0, f25 +/* 80185B6C 00182ACC 48 00 00 08 */ b lbl_80185B74 +lbl_80185B70: +/* 80185B70 00182AD0 FC 00 E8 90 */ fmr f0, f29 +lbl_80185B74: +/* 80185B74 00182AD4 EC 7D 00 24 */ fdivs f3, f29, f0 +/* 80185B78 00182AD8 C0 41 01 C0 */ lfs f2, 0x1c0(r1) +/* 80185B7C 00182ADC C0 21 01 C4 */ lfs f1, 0x1c4(r1) +/* 80185B80 00182AE0 7F 24 CB 78 */ mr r4, r25 +/* 80185B84 00182AE4 C0 01 01 BC */ lfs f0, 0x1bc(r1) +/* 80185B88 00182AE8 38 61 01 58 */ addi r3, r1, 0x158 +/* 80185B8C 00182AEC EC 43 00 B2 */ fmuls f2, f3, f2 +/* 80185B90 00182AF0 EC 23 00 72 */ fmuls f1, f3, f1 +/* 80185B94 00182AF4 EC 03 00 32 */ fmuls f0, f3, f0 +/* 80185B98 00182AF8 D0 41 00 C8 */ stfs f2, 0xc8(r1) +/* 80185B9C 00182AFC D0 01 00 C4 */ stfs f0, 0xc4(r1) +/* 80185BA0 00182B00 D0 21 00 CC */ stfs f1, 0xcc(r1) +/* 80185BA4 00182B04 81 99 00 00 */ lwz r12, 0(r25) +/* 80185BA8 00182B08 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 80185BAC 00182B0C 7D 89 03 A6 */ mtctr r12 +/* 80185BB0 00182B10 4E 80 04 21 */ bctrl +/* 80185BB4 00182B14 7F 23 CB 78 */ mr r3, r25 +/* 80185BB8 00182B18 81 99 00 00 */ lwz r12, 0(r25) +/* 80185BBC 00182B1C 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80185BC0 00182B20 7D 89 03 A6 */ mtctr r12 +/* 80185BC4 00182B24 4E 80 04 21 */ bctrl +/* 80185BC8 00182B28 7C 64 1B 78 */ mr r4, r3 +/* 80185BCC 00182B2C 38 61 00 DC */ addi r3, r1, 0xdc +/* 80185BD0 00182B30 81 84 00 00 */ lwz r12, 0(r4) +/* 80185BD4 00182B34 38 A1 01 58 */ addi r5, r1, 0x158 +/* 80185BD8 00182B38 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80185BDC 00182B3C 7D 89 03 A6 */ mtctr r12 +/* 80185BE0 00182B40 4E 80 04 21 */ bctrl +/* 80185BE4 00182B44 DB 21 00 20 */ stfd f25, 0x20(r1) +/* 80185BE8 00182B48 38 61 01 F0 */ addi r3, r1, 0x1f0 +/* 80185BEC 00182B4C 38 80 00 00 */ li r4, 0 +/* 80185BF0 00182B50 48 14 85 99 */ bl __ct__14CCollisionInfoFQ214CCollisionInfo8EInvalid +/* 80185BF4 00182B54 C0 1C 00 20 */ lfs f0, 0x20(r28) +/* 80185BF8 00182B58 FC 19 00 40 */ fcmpo cr0, f25, f0 +/* 80185BFC 00182B5C 40 81 00 E4 */ ble lbl_80185CE0 +/* 80185C00 00182B60 A0 CD A3 8C */ lhz r6, lbl_805A8F4C@sda21(r13) +/* 80185C04 00182B64 7F 23 CB 78 */ mr r3, r25 +/* 80185C08 00182B68 80 A1 00 C4 */ lwz r5, 0xc4(r1) +/* 80185C0C 00182B6C 80 81 00 C8 */ lwz r4, 0xc8(r1) +/* 80185C10 00182B70 80 01 00 CC */ lwz r0, 0xcc(r1) +/* 80185C14 00182B74 B0 C1 00 10 */ sth r6, 0x10(r1) +/* 80185C18 00182B78 90 A1 00 70 */ stw r5, 0x70(r1) +/* 80185C1C 00182B7C 90 81 00 74 */ stw r4, 0x74(r1) +/* 80185C20 00182B80 90 01 00 78 */ stw r0, 0x78(r1) +/* 80185C24 00182B84 4B EC DC 99 */ bl GetMaterialFilter__6CActorCFv +/* 80185C28 00182B88 7F 24 CB 78 */ mr r4, r25 +/* 80185C2C 00182B8C 7C 70 1B 78 */ mr r16, r3 +/* 80185C30 00182B90 81 99 00 00 */ lwz r12, 0(r25) +/* 80185C34 00182B94 38 61 01 28 */ addi r3, r1, 0x128 +/* 80185C38 00182B98 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 80185C3C 00182B9C 7D 89 03 A6 */ mtctr r12 +/* 80185C40 00182BA0 4E 80 04 21 */ bctrl +/* 80185C44 00182BA4 7F 23 CB 78 */ mr r3, r25 +/* 80185C48 00182BA8 81 99 00 00 */ lwz r12, 0(r25) +/* 80185C4C 00182BAC 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80185C50 00182BB0 7D 89 03 A6 */ mtctr r12 +/* 80185C54 00182BB4 4E 80 04 21 */ bctrl +/* 80185C58 00182BB8 38 01 01 F0 */ addi r0, r1, 0x1f0 +/* 80185C5C 00182BBC 7C 65 1B 78 */ mr r5, r3 +/* 80185C60 00182BC0 90 01 00 08 */ stw r0, 8(r1) +/* 80185C64 00182BC4 38 01 00 20 */ addi r0, r1, 0x20 +/* 80185C68 00182BC8 7F 03 C3 78 */ mr r3, r24 +/* 80185C6C 00182BCC 7F 64 DB 78 */ mr r4, r27 +/* 80185C70 00182BD0 90 01 00 0C */ stw r0, 0xc(r1) +/* 80185C74 00182BD4 7E 07 83 78 */ mr r7, r16 +/* 80185C78 00182BD8 7F 48 D3 78 */ mr r8, r26 +/* 80185C7C 00182BDC 38 C1 01 28 */ addi r6, r1, 0x128 +/* 80185C80 00182BE0 39 21 00 70 */ addi r9, r1, 0x70 +/* 80185C84 00182BE4 39 41 00 10 */ addi r10, r1, 0x10 +/* 80185C88 00182BE8 4B FF E6 65 */ bl "DetectCollision_Cached_Moving__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>9CVector3fR9TUniqueIdR14CCollisionInfoRd" +/* 80185C8C 00182BEC A0 61 00 10 */ lhz r3, 0x10(r1) +/* 80185C90 00182BF0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80185C94 00182BF4 7C 03 00 40 */ cmplw r3, r0 +/* 80185C98 00182BF8 41 82 00 38 */ beq lbl_80185CD0 +/* 80185C9C 00182BFC 88 1D 00 04 */ lbz r0, 4(r29) +/* 80185CA0 00182C00 28 00 00 00 */ cmplwi r0, 0 +/* 80185CA4 00182C04 40 82 00 1C */ bne lbl_80185CC0 +/* 80185CA8 00182C08 28 1D 00 00 */ cmplwi r29, 0 +/* 80185CAC 00182C0C 41 82 00 08 */ beq lbl_80185CB4 +/* 80185CB0 00182C10 B0 7D 00 00 */ sth r3, 0(r29) +lbl_80185CB4: +/* 80185CB4 00182C14 38 00 00 01 */ li r0, 1 +/* 80185CB8 00182C18 98 1D 00 04 */ stb r0, 4(r29) +/* 80185CBC 00182C1C 48 00 00 08 */ b lbl_80185CC4 +lbl_80185CC0: +/* 80185CC0 00182C20 B0 7D 00 00 */ sth r3, 0(r29) +lbl_80185CC4: +/* 80185CC4 00182C24 38 7D 00 08 */ addi r3, r29, 8 +/* 80185CC8 00182C28 38 81 01 F0 */ addi r4, r1, 0x1f0 +/* 80185CCC 00182C2C 48 00 06 2D */ bl sub_801862f8 +lbl_80185CD0: +/* 80185CD0 00182C30 C8 01 00 20 */ lfd f0, 0x20(r1) +/* 80185CD4 00182C34 FC 00 C8 24 */ fdiv f0, f0, f25 +/* 80185CD8 00182C38 FC 00 00 18 */ frsp f0, f0 +/* 80185CDC 00182C3C EF 7C 00 32 */ fmuls f27, f28, f0 +lbl_80185CE0: +/* 80185CE0 00182C40 C8 41 00 20 */ lfd f2, 0x20(r1) +/* 80185CE4 00182C44 C0 3C 00 20 */ lfs f1, 0x20(r28) +/* 80185CE8 00182C48 C0 0D 8E D8 */ lfs f0, lbl_805A7A98@sda21(r13) +/* 80185CEC 00182C4C FC 22 08 28 */ fsub f1, f2, f1 +/* 80185CF0 00182C50 FC 20 08 18 */ frsp f1, f1 +/* 80185CF4 00182C54 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80185CF8 00182C58 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80185CFC 00182C5C 40 80 00 0C */ bge lbl_80185D08 +/* 80185D00 00182C60 38 6D 8E D8 */ addi r3, r13, lbl_805A7A98@sda21 +/* 80185D04 00182C64 48 00 00 08 */ b lbl_80185D0C +lbl_80185D08: +/* 80185D08 00182C68 38 61 00 18 */ addi r3, r1, 0x18 +lbl_80185D0C: +/* 80185D0C 00182C6C C3 23 00 00 */ lfs f25, 0(r3) +/* 80185D10 00182C70 7E 43 93 78 */ mr r3, r18 +/* 80185D14 00182C74 C0 41 02 38 */ lfs f2, 0x238(r1) +/* 80185D18 00182C78 38 81 00 B8 */ addi r4, r1, 0xb8 +/* 80185D1C 00182C7C C0 21 02 3C */ lfs f1, 0x23c(r1) +/* 80185D20 00182C80 C0 01 02 40 */ lfs f0, 0x240(r1) +/* 80185D24 00182C84 D0 41 00 B8 */ stfs f2, 0xb8(r1) +/* 80185D28 00182C88 D0 21 00 BC */ stfs f1, 0xbc(r1) +/* 80185D2C 00182C8C D0 01 00 C0 */ stfs f0, 0xc0(r1) +/* 80185D30 00182C90 4B FF CA D9 */ bl CanBlock__14CGameCollisionFRC13CMaterialListRC9CVector3f +/* 80185D34 00182C94 88 1C 00 19 */ lbz r0, 0x19(r28) +/* 80185D38 00182C98 7C 76 1B 78 */ mr r22, r3 +/* 80185D3C 00182C9C 3A A0 00 01 */ li r21, 1 +/* 80185D40 00182CA0 28 00 00 00 */ cmplwi r0, 0 +/* 80185D44 00182CA4 40 82 00 2C */ bne lbl_80185D70 +/* 80185D48 00182CA8 88 1C 00 1A */ lbz r0, 0x1a(r28) +/* 80185D4C 00182CAC 38 60 00 00 */ li r3, 0 +/* 80185D50 00182CB0 28 00 00 00 */ cmplwi r0, 0 +/* 80185D54 00182CB4 41 82 00 10 */ beq lbl_80185D64 +/* 80185D58 00182CB8 56 C0 06 3F */ clrlwi. r0, r22, 0x18 +/* 80185D5C 00182CBC 40 82 00 08 */ bne lbl_80185D64 +/* 80185D60 00182CC0 7E A3 AB 78 */ mr r3, r21 +lbl_80185D64: +/* 80185D64 00182CC4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80185D68 00182CC8 40 82 00 08 */ bne lbl_80185D70 +/* 80185D6C 00182CCC 3A A0 00 00 */ li r21, 0 +lbl_80185D70: +/* 80185D70 00182CD0 88 01 02 20 */ lbz r0, 0x220(r1) +/* 80185D74 00182CD4 D3 E1 00 1C */ stfs f31, 0x1c(r1) +/* 80185D78 00182CD8 28 00 00 00 */ cmplwi r0, 0 +/* 80185D7C 00182CDC 41 82 01 0C */ beq lbl_80185E88 +/* 80185D80 00182CE0 80 7D 00 6C */ lwz r3, 0x6c(r29) +/* 80185D84 00182CE4 56 C0 06 3F */ clrlwi. r0, r22, 0x18 +/* 80185D88 00182CE8 38 03 00 01 */ addi r0, r3, 1 +/* 80185D8C 00182CEC 90 1D 00 6C */ stw r0, 0x6c(r29) +/* 80185D90 00182CF0 41 82 00 2C */ beq lbl_80185DBC +/* 80185D94 00182CF4 C0 41 02 38 */ lfs f2, 0x238(r1) +/* 80185D98 00182CF8 3C 00 80 00 */ lis r0, 0x8000 +/* 80185D9C 00182CFC C0 21 02 3C */ lfs f1, 0x23c(r1) +/* 80185DA0 00182D00 7E 73 03 78 */ or r19, r19, r0 +/* 80185DA4 00182D04 C0 01 02 40 */ lfs f0, 0x240(r1) +/* 80185DA8 00182D08 3B C0 00 01 */ li r30, 1 +/* 80185DAC 00182D0C D0 41 00 D0 */ stfs f2, 0xd0(r1) +/* 80185DB0 00182D10 D0 21 00 D4 */ stfs f1, 0xd4(r1) +/* 80185DB4 00182D14 D0 01 00 D8 */ stfs f0, 0xd8(r1) +/* 80185DB8 00182D18 48 00 00 0C */ b lbl_80185DC4 +lbl_80185DBC: +/* 80185DBC 00182D1C 3C 00 40 00 */ lis r0, 0x4000 +/* 80185DC0 00182D20 7E 73 03 78 */ or r19, r19, r0 +lbl_80185DC4: +/* 80185DC4 00182D24 56 A0 06 3F */ clrlwi. r0, r21, 0x18 +/* 80185DC8 00182D28 41 82 00 48 */ beq lbl_80185E10 +/* 80185DCC 00182D2C 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 80185DD0 00182D30 41 82 00 38 */ beq lbl_80185E08 +/* 80185DD4 00182D34 38 61 00 D0 */ addi r3, r1, 0xd0 +/* 80185DD8 00182D38 38 81 00 C4 */ addi r4, r1, 0xc4 +/* 80185DDC 00182D3C 38 A1 00 B8 */ addi r5, r1, 0xb8 +/* 80185DE0 00182D40 38 C1 00 1C */ addi r6, r1, 0x1c +/* 80185DE4 00182D44 48 00 06 D9 */ bl RemoveNormalComponent__15CGroundMovementFRC9CVector3fRC9CVector3fR9CVector3fRf +/* 80185DE8 00182D48 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80185DEC 00182D4C 40 82 00 10 */ bne lbl_80185DFC +/* 80185DF0 00182D50 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 80185DF4 00182D54 48 00 08 81 */ bl RemovePositiveZComponentFromNormal__FR9CVector3f +/* 80185DF8 00182D58 48 00 00 18 */ b lbl_80185E10 +lbl_80185DFC: +/* 80185DFC 00182D5C 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 80185E00 00182D60 48 18 EA F9 */ bl Normalize__9CVector3fFv +/* 80185E04 00182D64 48 00 00 0C */ b lbl_80185E10 +lbl_80185E08: +/* 80185E08 00182D68 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 80185E0C 00182D6C 48 00 08 69 */ bl RemovePositiveZComponentFromNormal__FR9CVector3f +lbl_80185E10: +/* 80185E10 00182D70 FC 20 D8 90 */ fmr f1, f27 +/* 80185E14 00182D74 7F 24 CB 78 */ mr r4, r25 +/* 80185E18 00182D78 38 61 00 F4 */ addi r3, r1, 0xf4 +/* 80185E1C 00182D7C 4B F9 59 ED */ bl PredictMotion_Internal__13CPhysicsActorCFf +/* 80185E20 00182D80 82 01 00 F4 */ lwz r16, 0xf4(r1) +/* 80185E24 00182D84 82 21 00 F8 */ lwz r17, 0xf8(r1) +/* 80185E28 00182D88 81 81 00 FC */ lwz r12, 0xfc(r1) +/* 80185E2C 00182D8C 81 61 01 00 */ lwz r11, 0x100(r1) +/* 80185E30 00182D90 81 41 01 04 */ lwz r10, 0x104(r1) +/* 80185E34 00182D94 81 21 01 08 */ lwz r9, 0x108(r1) +/* 80185E38 00182D98 81 01 01 0C */ lwz r8, 0x10c(r1) +/* 80185E3C 00182D9C 80 E1 01 10 */ lwz r7, 0x110(r1) +/* 80185E40 00182DA0 80 C1 01 14 */ lwz r6, 0x114(r1) +/* 80185E44 00182DA4 80 A1 01 18 */ lwz r5, 0x118(r1) +/* 80185E48 00182DA8 80 81 01 1C */ lwz r4, 0x11c(r1) +/* 80185E4C 00182DAC 80 61 01 20 */ lwz r3, 0x120(r1) +/* 80185E50 00182DB0 80 01 01 24 */ lwz r0, 0x124(r1) +/* 80185E54 00182DB4 92 01 01 BC */ stw r16, 0x1bc(r1) +/* 80185E58 00182DB8 92 21 01 C0 */ stw r17, 0x1c0(r1) +/* 80185E5C 00182DBC 91 81 01 C4 */ stw r12, 0x1c4(r1) +/* 80185E60 00182DC0 91 61 01 C8 */ stw r11, 0x1c8(r1) +/* 80185E64 00182DC4 91 41 01 CC */ stw r10, 0x1cc(r1) +/* 80185E68 00182DC8 91 21 01 D0 */ stw r9, 0x1d0(r1) +/* 80185E6C 00182DCC 91 01 01 D4 */ stw r8, 0x1d4(r1) +/* 80185E70 00182DD0 90 E1 01 D8 */ stw r7, 0x1d8(r1) +/* 80185E74 00182DD4 90 C1 01 DC */ stw r6, 0x1dc(r1) +/* 80185E78 00182DD8 90 A1 01 E0 */ stw r5, 0x1e0(r1) +/* 80185E7C 00182DDC 90 81 01 E4 */ stw r4, 0x1e4(r1) +/* 80185E80 00182DE0 90 61 01 E8 */ stw r3, 0x1e8(r1) +/* 80185E84 00182DE4 90 01 01 EC */ stw r0, 0x1ec(r1) +lbl_80185E88: +/* 80185E88 00182DE8 C0 41 00 C8 */ lfs f2, 0xc8(r1) +/* 80185E8C 00182DEC 7F 23 CB 78 */ mr r3, r25 +/* 80185E90 00182DF0 C0 21 00 CC */ lfs f1, 0xcc(r1) +/* 80185E94 00182DF4 38 81 01 BC */ addi r4, r1, 0x1bc +/* 80185E98 00182DF8 C0 01 00 C4 */ lfs f0, 0xc4(r1) +/* 80185E9C 00182DFC EC 59 00 B2 */ fmuls f2, f25, f2 +/* 80185EA0 00182E00 EC 39 00 72 */ fmuls f1, f25, f1 +/* 80185EA4 00182E04 EC 19 00 32 */ fmuls f0, f25, f0 +/* 80185EA8 00182E08 D0 41 01 C0 */ stfs f2, 0x1c0(r1) +/* 80185EAC 00182E0C D0 01 01 BC */ stfs f0, 0x1bc(r1) +/* 80185EB0 00182E10 D0 21 01 C4 */ stfs f1, 0x1c4(r1) +/* 80185EB4 00182E14 4B F9 56 61 */ bl AddMotionState__13CPhysicsActorFRC12CMotionState +/* 80185EB8 00182E18 88 01 02 20 */ lbz r0, 0x220(r1) +/* 80185EBC 00182E1C 28 00 00 00 */ cmplwi r0, 0 +/* 80185EC0 00182E20 41 82 03 6C */ beq lbl_8018622C +/* 80185EC4 00182E24 C0 19 01 38 */ lfs f0, 0x138(r25) +/* 80185EC8 00182E28 38 61 00 AC */ addi r3, r1, 0xac +/* 80185ECC 00182E2C D0 01 00 AC */ stfs f0, 0xac(r1) +/* 80185ED0 00182E30 C0 19 01 3C */ lfs f0, 0x13c(r25) +/* 80185ED4 00182E34 D0 01 00 B0 */ stfs f0, 0xb0(r1) +/* 80185ED8 00182E38 C0 19 01 40 */ lfs f0, 0x140(r25) +/* 80185EDC 00182E3C D0 01 00 B4 */ stfs f0, 0xb4(r1) +/* 80185EE0 00182E40 48 18 E8 19 */ bl CanBeNormalized__9CVector3fCFv +/* 80185EE4 00182E44 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80185EE8 00182E48 41 82 00 34 */ beq lbl_80185F1C +/* 80185EEC 00182E4C 38 61 00 64 */ addi r3, r1, 0x64 +/* 80185EF0 00182E50 38 81 00 AC */ addi r4, r1, 0xac +/* 80185EF4 00182E54 48 18 E9 5D */ bl AsNormalized__9CVector3fCFv +/* 80185EF8 00182E58 C0 3C 00 24 */ lfs f1, 0x24(r28) +/* 80185EFC 00182E5C 38 61 00 58 */ addi r3, r1, 0x58 +/* 80185F00 00182E60 C0 5C 00 28 */ lfs f2, 0x28(r28) +/* 80185F04 00182E64 38 81 00 AC */ addi r4, r1, 0xac +/* 80185F08 00182E68 38 A1 00 64 */ addi r5, r1, 0x64 +/* 80185F0C 00182E6C 38 C1 00 B8 */ addi r6, r1, 0xb8 +/* 80185F10 00182E70 48 00 20 FD */ bl CollisionDamping__15CGroundMovementFRC9CVector3fRC9CVector3fRC9CVector3fff +/* 80185F14 00182E74 38 61 00 58 */ addi r3, r1, 0x58 +/* 80185F18 00182E78 48 00 00 0C */ b lbl_80185F24 +lbl_80185F1C: +/* 80185F1C 00182E7C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80185F20 00182E80 38 63 66 A0 */ addi r3, r3, skZero3f@l +lbl_80185F24: +/* 80185F24 00182E84 C0 03 00 00 */ lfs f0, 0(r3) +/* 80185F28 00182E88 56 C0 06 3F */ clrlwi. r0, r22, 0x18 +/* 80185F2C 00182E8C D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 80185F30 00182E90 C0 03 00 04 */ lfs f0, 4(r3) +/* 80185F34 00182E94 D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 80185F38 00182E98 C0 03 00 08 */ lfs f0, 8(r3) +/* 80185F3C 00182E9C D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 80185F40 00182EA0 41 82 00 0C */ beq lbl_80185F4C +/* 80185F44 00182EA4 C0 7C 00 2C */ lfs f3, 0x2c(r28) +/* 80185F48 00182EA8 48 00 00 14 */ b lbl_80185F5C +lbl_80185F4C: +/* 80185F4C 00182EAC C0 5C 00 34 */ lfs f2, 0x34(r28) +/* 80185F50 00182EB0 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 80185F54 00182EB4 C0 1C 00 30 */ lfs f0, 0x30(r28) +/* 80185F58 00182EB8 EC 62 00 7A */ fmadds f3, f2, f1, f0 +lbl_80185F5C: +/* 80185F5C 00182EBC C0 C1 00 BC */ lfs f6, 0xbc(r1) +/* 80185F60 00182EC0 C0 01 00 A4 */ lfs f0, 0xa4(r1) +/* 80185F64 00182EC4 C0 A1 00 B8 */ lfs f5, 0xb8(r1) +/* 80185F68 00182EC8 EC 06 00 32 */ fmuls f0, f6, f0 +/* 80185F6C 00182ECC C0 21 00 A0 */ lfs f1, 0xa0(r1) +/* 80185F70 00182ED0 C0 E1 00 C0 */ lfs f7, 0xc0(r1) +/* 80185F74 00182ED4 C0 41 00 A8 */ lfs f2, 0xa8(r1) +/* 80185F78 00182ED8 EC 05 00 7A */ fmadds f0, f5, f1, f0 +/* 80185F7C 00182EDC EC 07 00 BA */ fmadds f0, f7, f2, f0 +/* 80185F80 00182EE0 FC 00 18 40 */ fcmpo cr0, f0, f3 +/* 80185F84 00182EE4 40 80 00 38 */ bge lbl_80185FBC +/* 80185F88 00182EE8 EC 03 00 28 */ fsubs f0, f3, f0 +/* 80185F8C 00182EEC C0 81 00 A0 */ lfs f4, 0xa0(r1) +/* 80185F90 00182EF0 C0 61 00 A4 */ lfs f3, 0xa4(r1) +/* 80185F94 00182EF4 C0 21 00 A8 */ lfs f1, 0xa8(r1) +/* 80185F98 00182EF8 EC A0 01 72 */ fmuls f5, f0, f5 +/* 80185F9C 00182EFC EC 40 01 B2 */ fmuls f2, f0, f6 +/* 80185FA0 00182F00 EC 00 01 F2 */ fmuls f0, f0, f7 +/* 80185FA4 00182F04 EC 84 28 2A */ fadds f4, f4, f5 +/* 80185FA8 00182F08 EC 43 10 2A */ fadds f2, f3, f2 +/* 80185FAC 00182F0C EC 01 00 2A */ fadds f0, f1, f0 +/* 80185FB0 00182F10 D0 81 00 A0 */ stfs f4, 0xa0(r1) +/* 80185FB4 00182F14 D0 41 00 A4 */ stfs f2, 0xa4(r1) +/* 80185FB8 00182F18 D0 01 00 A8 */ stfs f0, 0xa8(r1) +lbl_80185FBC: +/* 80185FBC 00182F1C 56 A0 06 3F */ clrlwi. r0, r21, 0x18 +/* 80185FC0 00182F20 41 82 00 28 */ beq lbl_80185FE8 +/* 80185FC4 00182F24 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 80185FC8 00182F28 41 82 00 20 */ beq lbl_80185FE8 +/* 80185FCC 00182F2C 38 61 00 D0 */ addi r3, r1, 0xd0 +/* 80185FD0 00182F30 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 80185FD4 00182F34 48 00 04 71 */ bl RemoveNormalComponent__15CGroundMovementFRC9CVector3fR9CVector3f +/* 80185FD8 00182F38 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80185FDC 00182F3C 40 82 00 0C */ bne lbl_80185FE8 +/* 80185FE0 00182F40 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) +/* 80185FE4 00182F44 D0 01 00 A8 */ stfs f0, 0xa8(r1) +lbl_80185FE8: +/* 80185FE8 00182F48 C0 61 00 A8 */ lfs f3, 0xa8(r1) +/* 80185FEC 00182F4C C0 1C 00 38 */ lfs f0, 0x38(r28) +/* 80185FF0 00182F50 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 80185FF4 00182F54 40 81 00 28 */ ble lbl_8018601C +/* 80185FF8 00182F58 EC 80 18 24 */ fdivs f4, f0, f3 +/* 80185FFC 00182F5C C0 21 00 A0 */ lfs f1, 0xa0(r1) +/* 80186000 00182F60 C0 01 00 A4 */ lfs f0, 0xa4(r1) +/* 80186004 00182F64 EC 41 01 32 */ fmuls f2, f1, f4 +/* 80186008 00182F68 EC 20 01 32 */ fmuls f1, f0, f4 +/* 8018600C 00182F6C EC 03 01 32 */ fmuls f0, f3, f4 +/* 80186010 00182F70 D0 41 00 A0 */ stfs f2, 0xa0(r1) +/* 80186014 00182F74 D0 21 00 A4 */ stfs f1, 0xa4(r1) +/* 80186018 00182F78 D0 01 00 A8 */ stfs f0, 0xa8(r1) +lbl_8018601C: +/* 8018601C 00182F7C 88 1C 00 18 */ lbz r0, 0x18(r28) +/* 80186020 00182F80 28 00 00 00 */ cmplwi r0, 0 +/* 80186024 00182F84 41 82 00 FC */ beq lbl_80186120 +/* 80186028 00182F88 C0 19 01 5C */ lfs f0, 0x15c(r25) +/* 8018602C 00182F8C 38 61 00 94 */ addi r3, r1, 0x94 +/* 80186030 00182F90 D0 01 00 94 */ stfs f0, 0x94(r1) +/* 80186034 00182F94 C0 19 01 60 */ lfs f0, 0x160(r25) +/* 80186038 00182F98 D0 01 00 98 */ stfs f0, 0x98(r1) +/* 8018603C 00182F9C C0 19 01 64 */ lfs f0, 0x164(r25) +/* 80186040 00182FA0 D0 01 00 9C */ stfs f0, 0x9c(r1) +/* 80186044 00182FA4 48 18 E6 B5 */ bl CanBeNormalized__9CVector3fCFv +/* 80186048 00182FA8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8018604C 00182FAC 41 82 00 58 */ beq lbl_801860A4 +/* 80186050 00182FB0 38 61 00 40 */ addi r3, r1, 0x40 +/* 80186054 00182FB4 38 81 00 94 */ addi r4, r1, 0x94 +/* 80186058 00182FB8 48 18 E7 F9 */ bl AsNormalized__9CVector3fCFv +/* 8018605C 00182FBC C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) +/* 80186060 00182FC0 38 61 00 4C */ addi r3, r1, 0x4c +/* 80186064 00182FC4 C0 42 A3 10 */ lfs f2, lbl_805AC030@sda21(r2) +/* 80186068 00182FC8 38 81 00 94 */ addi r4, r1, 0x94 +/* 8018606C 00182FCC 38 A1 00 40 */ addi r5, r1, 0x40 +/* 80186070 00182FD0 38 C1 00 B8 */ addi r6, r1, 0xb8 +/* 80186074 00182FD4 48 00 1F 99 */ bl CollisionDamping__15CGroundMovementFRC9CVector3fRC9CVector3fRC9CVector3fff +/* 80186078 00182FD8 C0 41 00 4C */ lfs f2, 0x4c(r1) +/* 8018607C 00182FDC C0 21 00 50 */ lfs f1, 0x50(r1) +/* 80186080 00182FE0 C0 01 00 54 */ lfs f0, 0x54(r1) +/* 80186084 00182FE4 D0 41 00 94 */ stfs f2, 0x94(r1) +/* 80186088 00182FE8 D0 21 00 98 */ stfs f1, 0x98(r1) +/* 8018608C 00182FEC D0 01 00 9C */ stfs f0, 0x9c(r1) +/* 80186090 00182FF0 D0 59 01 5C */ stfs f2, 0x15c(r25) +/* 80186094 00182FF4 C0 01 00 98 */ lfs f0, 0x98(r1) +/* 80186098 00182FF8 D0 19 01 60 */ stfs f0, 0x160(r25) +/* 8018609C 00182FFC C0 01 00 9C */ lfs f0, 0x9c(r1) +/* 801860A0 00183000 D0 19 01 64 */ stfs f0, 0x164(r25) +lbl_801860A4: +/* 801860A4 00183004 C0 19 01 50 */ lfs f0, 0x150(r25) +/* 801860A8 00183008 38 61 00 88 */ addi r3, r1, 0x88 +/* 801860AC 0018300C D0 01 00 88 */ stfs f0, 0x88(r1) +/* 801860B0 00183010 C0 19 01 54 */ lfs f0, 0x154(r25) +/* 801860B4 00183014 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 801860B8 00183018 C0 19 01 58 */ lfs f0, 0x158(r25) +/* 801860BC 0018301C D0 01 00 90 */ stfs f0, 0x90(r1) +/* 801860C0 00183020 48 18 E6 39 */ bl CanBeNormalized__9CVector3fCFv +/* 801860C4 00183024 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801860C8 00183028 41 82 00 58 */ beq lbl_80186120 +/* 801860CC 0018302C 38 61 00 28 */ addi r3, r1, 0x28 +/* 801860D0 00183030 38 81 00 88 */ addi r4, r1, 0x88 +/* 801860D4 00183034 48 18 E7 7D */ bl AsNormalized__9CVector3fCFv +/* 801860D8 00183038 C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) +/* 801860DC 0018303C 38 61 00 34 */ addi r3, r1, 0x34 +/* 801860E0 00183040 C0 42 A3 10 */ lfs f2, lbl_805AC030@sda21(r2) +/* 801860E4 00183044 38 81 00 88 */ addi r4, r1, 0x88 +/* 801860E8 00183048 38 A1 00 28 */ addi r5, r1, 0x28 +/* 801860EC 0018304C 38 C1 00 B8 */ addi r6, r1, 0xb8 +/* 801860F0 00183050 48 00 1F 1D */ bl CollisionDamping__15CGroundMovementFRC9CVector3fRC9CVector3fRC9CVector3fff +/* 801860F4 00183054 C0 41 00 34 */ lfs f2, 0x34(r1) +/* 801860F8 00183058 C0 21 00 38 */ lfs f1, 0x38(r1) +/* 801860FC 0018305C C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 80186100 00183060 D0 41 00 88 */ stfs f2, 0x88(r1) +/* 80186104 00183064 D0 21 00 8C */ stfs f1, 0x8c(r1) +/* 80186108 00183068 D0 01 00 90 */ stfs f0, 0x90(r1) +/* 8018610C 0018306C D0 59 01 50 */ stfs f2, 0x150(r25) +/* 80186110 00183070 C0 01 00 8C */ lfs f0, 0x8c(r1) +/* 80186114 00183074 D0 19 01 54 */ stfs f0, 0x154(r25) +/* 80186118 00183078 C0 01 00 90 */ lfs f0, 0x90(r1) +/* 8018611C 0018307C D0 19 01 58 */ stfs f0, 0x158(r25) +lbl_80186120: +/* 80186120 00183080 88 1C 00 00 */ lbz r0, 0(r28) +/* 80186124 00183084 28 00 00 00 */ cmplwi r0, 0 +/* 80186128 00183088 41 82 00 F4 */ beq lbl_8018621C +/* 8018612C 0018308C 56 C0 06 3F */ clrlwi. r0, r22, 0x18 +/* 80186130 00183090 40 82 00 EC */ bne lbl_8018621C +/* 80186134 00183094 C0 21 02 40 */ lfs f1, 0x240(r1) +/* 80186138 00183098 C0 02 A3 1C */ lfs f0, lbl_805AC03C@sda21(r2) +/* 8018613C 0018309C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80186140 001830A0 40 80 00 20 */ bge lbl_80186160 +/* 80186144 001830A4 C0 21 00 A8 */ lfs f1, 0xa8(r1) +/* 80186148 001830A8 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) +/* 8018614C 001830AC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80186150 001830B0 40 81 00 10 */ ble lbl_80186160 +/* 80186154 001830B4 C0 02 A3 20 */ lfs f0, lbl_805AC040@sda21(r2) +/* 80186158 001830B8 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8018615C 001830BC D0 01 00 A8 */ stfs f0, 0xa8(r1) +lbl_80186160: +/* 80186160 001830C0 C0 21 02 40 */ lfs f1, 0x240(r1) +/* 80186164 001830C4 C0 1C 00 10 */ lfs f0, 0x10(r28) +/* 80186168 001830C8 FC 20 0A 10 */ fabs f1, f1 +/* 8018616C 001830CC FC 40 08 18 */ frsp f2, f1 +/* 80186170 001830D0 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80186174 001830D4 40 81 00 14 */ ble lbl_80186188 +/* 80186178 001830D8 C0 21 00 A8 */ lfs f1, 0xa8(r1) +/* 8018617C 001830DC C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) +/* 80186180 001830E0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80186184 001830E4 41 80 00 10 */ blt lbl_80186194 +lbl_80186188: +/* 80186188 001830E8 C0 1C 00 0C */ lfs f0, 0xc(r28) +/* 8018618C 001830EC FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80186190 001830F0 40 81 00 8C */ ble lbl_8018621C +lbl_80186194: +/* 80186194 001830F4 C0 3C 00 04 */ lfs f1, 4(r28) +/* 80186198 001830F8 C0 1C 00 08 */ lfs f0, 8(r28) +/* 8018619C 001830FC EC 21 00 B2 */ fmuls f1, f1, f2 +/* 801861A0 00183100 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801861A4 00183104 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801861A8 00183108 40 80 00 0C */ bge lbl_801861B4 +/* 801861AC 0018310C 38 9C 00 08 */ addi r4, r28, 8 +/* 801861B0 00183110 48 00 00 08 */ b lbl_801861B8 +lbl_801861B4: +/* 801861B4 00183114 38 81 00 14 */ addi r4, r1, 0x14 +lbl_801861B8: +/* 801861B8 00183118 7F 23 CB 78 */ mr r3, r25 +/* 801861BC 0018311C C3 24 00 00 */ lfs f25, 0(r4) +/* 801861C0 00183120 81 99 00 00 */ lwz r12, 0(r25) +/* 801861C4 00183124 81 8C 00 80 */ lwz r12, 0x80(r12) +/* 801861C8 00183128 7D 89 03 A6 */ mtctr r12 +/* 801861CC 0018312C 4E 80 04 21 */ bctrl +/* 801861D0 00183130 C0 62 A3 10 */ lfs f3, lbl_805AC030@sda21(r2) +/* 801861D4 00183134 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) +/* 801861D8 00183138 EC 43 C8 2A */ fadds f2, f3, f25 +/* 801861DC 0018313C D0 19 01 5C */ stfs f0, 0x15c(r25) +/* 801861E0 00183140 FC 40 10 50 */ fneg f2, f2 +/* 801861E4 00183144 D0 19 01 60 */ stfs f0, 0x160(r25) +/* 801861E8 00183148 EC 02 00 72 */ fmuls f0, f2, f1 +/* 801861EC 0018314C D0 19 01 64 */ stfs f0, 0x164(r25) +/* 801861F0 00183150 C0 1C 00 14 */ lfs f0, 0x14(r28) +/* 801861F4 00183154 C0 41 00 A0 */ lfs f2, 0xa0(r1) +/* 801861F8 00183158 EC 63 00 28 */ fsubs f3, f3, f0 +/* 801861FC 0018315C C0 21 00 A4 */ lfs f1, 0xa4(r1) +/* 80186200 00183160 C0 01 00 A8 */ lfs f0, 0xa8(r1) +/* 80186204 00183164 EC 42 00 F2 */ fmuls f2, f2, f3 +/* 80186208 00183168 EC 21 00 F2 */ fmuls f1, f1, f3 +/* 8018620C 0018316C EC 00 00 F2 */ fmuls f0, f0, f3 +/* 80186210 00183170 D0 41 00 A0 */ stfs f2, 0xa0(r1) +/* 80186214 00183174 D0 21 00 A4 */ stfs f1, 0xa4(r1) +/* 80186218 00183178 D0 01 00 A8 */ stfs f0, 0xa8(r1) +lbl_8018621C: +/* 8018621C 0018317C 7F 23 CB 78 */ mr r3, r25 +/* 80186220 00183180 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 80186224 00183184 4B F9 4A 7D */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 80186228 00183188 48 00 00 50 */ b lbl_80186278 +lbl_8018622C: +/* 8018622C 0018318C C0 59 01 38 */ lfs f2, 0x138(r25) +/* 80186230 00183190 C0 7C 00 38 */ lfs f3, 0x38(r28) +/* 80186234 00183194 D0 41 00 7C */ stfs f2, 0x7c(r1) +/* 80186238 00183198 C0 39 01 3C */ lfs f1, 0x13c(r25) +/* 8018623C 0018319C D0 21 00 80 */ stfs f1, 0x80(r1) +/* 80186240 001831A0 C0 19 01 40 */ lfs f0, 0x140(r25) +/* 80186244 001831A4 FC 00 18 40 */ fcmpo cr0, f0, f3 +/* 80186248 001831A8 D0 01 00 84 */ stfs f0, 0x84(r1) +/* 8018624C 001831AC 40 81 00 20 */ ble lbl_8018626C +/* 80186250 001831B0 EC 63 00 24 */ fdivs f3, f3, f0 +/* 80186254 001831B4 EC 42 00 F2 */ fmuls f2, f2, f3 +/* 80186258 001831B8 EC 21 00 F2 */ fmuls f1, f1, f3 +/* 8018625C 001831BC EC 00 00 F2 */ fmuls f0, f0, f3 +/* 80186260 001831C0 D0 41 00 7C */ stfs f2, 0x7c(r1) +/* 80186264 001831C4 D0 21 00 80 */ stfs f1, 0x80(r1) +/* 80186268 001831C8 D0 01 00 84 */ stfs f0, 0x84(r1) +lbl_8018626C: +/* 8018626C 001831CC 7F 23 CB 78 */ mr r3, r25 +/* 80186270 001831D0 38 81 00 7C */ addi r4, r1, 0x7c +/* 80186274 001831D4 4B F9 4A 2D */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +lbl_80186278: +/* 80186278 001831D8 7F 23 CB 78 */ mr r3, r25 +/* 8018627C 001831DC 4B F9 4F A5 */ bl ClearImpulses__13CPhysicsActorFv +/* 80186280 001831E0 80 1C 00 1C */ lwz r0, 0x1c(r28) +/* 80186284 001831E4 3B FF 00 01 */ addi r31, r31, 1 +/* 80186288 001831E8 EF 9C D8 28 */ fsubs f28, f28, f27 +/* 8018628C 001831EC 7C 1F 00 40 */ cmplw r31, r0 +/* 80186290 001831F0 40 80 00 0C */ bge lbl_8018629C +lbl_80186294: +/* 80186294 001831F4 FC 1C F8 40 */ fcmpo cr0, f28, f31 +/* 80186298 001831F8 41 81 F8 40 */ bgt lbl_80185AD8 +lbl_8018629C: +/* 8018629C 001831FC EC 1A E0 28 */ fsubs f0, f26, f28 +/* 801862A0 00183200 D0 1D 00 70 */ stfs f0, 0x70(r29) +/* 801862A4 00183204 92 77 00 04 */ stw r19, 4(r23) +/* 801862A8 00183208 92 97 00 00 */ stw r20, 0(r23) +/* 801862AC 0018320C E3 E1 02 F8 */ psq_l f31, 760(r1), 0, qr0 +/* 801862B0 00183210 CB E1 02 F0 */ lfd f31, 0x2f0(r1) +/* 801862B4 00183214 E3 C1 02 E8 */ psq_l f30, 744(r1), 0, qr0 +/* 801862B8 00183218 CB C1 02 E0 */ lfd f30, 0x2e0(r1) +/* 801862BC 0018321C E3 A1 02 D8 */ psq_l f29, 728(r1), 0, qr0 +/* 801862C0 00183220 CB A1 02 D0 */ lfd f29, 0x2d0(r1) +/* 801862C4 00183224 E3 81 02 C8 */ psq_l f28, 712(r1), 0, qr0 +/* 801862C8 00183228 CB 81 02 C0 */ lfd f28, 0x2c0(r1) +/* 801862CC 0018322C E3 61 02 B8 */ psq_l f27, 696(r1), 0, qr0 +/* 801862D0 00183230 CB 61 02 B0 */ lfd f27, 0x2b0(r1) +/* 801862D4 00183234 E3 41 02 A8 */ psq_l f26, 680(r1), 0, qr0 +/* 801862D8 00183238 CB 41 02 A0 */ lfd f26, 0x2a0(r1) +/* 801862DC 0018323C E3 21 02 98 */ psq_l f25, 664(r1), 0, qr0 +/* 801862E0 00183240 CB 21 02 90 */ lfd f25, 0x290(r1) +/* 801862E4 00183244 BA 01 02 50 */ lmw r16, 0x250(r1) +/* 801862E8 00183248 80 01 03 04 */ lwz r0, 0x304(r1) +/* 801862EC 0018324C 7C 08 03 A6 */ mtlr r0 +/* 801862F0 00183250 38 21 03 00 */ addi r1, r1, 0x300 +/* 801862F4 00183254 4E 80 00 20 */ blr + +.global sub_801862f8 +sub_801862f8: +/* 801862F8 00183258 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801862FC 0018325C 7C 08 02 A6 */ mflr r0 +/* 80186300 00183260 90 01 00 14 */ stw r0, 0x14(r1) +/* 80186304 00183264 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80186308 00183268 7C 7F 1B 78 */ mr r31, r3 +/* 8018630C 0018326C 48 00 00 1D */ bl sub_80186328 +/* 80186310 00183270 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80186314 00183274 7F E3 FB 78 */ mr r3, r31 +/* 80186318 00183278 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8018631C 0018327C 7C 08 03 A6 */ mtlr r0 +/* 80186320 00183280 38 21 00 10 */ addi r1, r1, 0x10 +/* 80186324 00183284 4E 80 00 20 */ blr + +.global sub_80186328 +sub_80186328: +/* 80186328 00183288 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018632C 0018328C 7C 08 02 A6 */ mflr r0 +/* 80186330 00183290 90 01 00 14 */ stw r0, 0x14(r1) +/* 80186334 00183294 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80186338 00183298 7C 7F 1B 78 */ mr r31, r3 +/* 8018633C 0018329C 88 03 00 60 */ lbz r0, 0x60(r3) +/* 80186340 001832A0 28 00 00 00 */ cmplwi r0, 0 +/* 80186344 001832A4 40 82 00 14 */ bne lbl_80186358 +/* 80186348 001832A8 48 00 00 D5 */ bl sub_8018641c +/* 8018634C 001832AC 38 00 00 01 */ li r0, 1 +/* 80186350 001832B0 98 1F 00 60 */ stb r0, 0x60(r31) +/* 80186354 001832B4 48 00 00 B4 */ b lbl_80186408 +lbl_80186358: +/* 80186358 001832B8 80 64 00 00 */ lwz r3, 0(r4) +/* 8018635C 001832BC 80 04 00 04 */ lwz r0, 4(r4) +/* 80186360 001832C0 90 7F 00 00 */ stw r3, 0(r31) +/* 80186364 001832C4 90 1F 00 04 */ stw r0, 4(r31) +/* 80186368 001832C8 80 04 00 08 */ lwz r0, 8(r4) +/* 8018636C 001832CC 90 1F 00 08 */ stw r0, 8(r31) +/* 80186370 001832D0 80 64 00 0C */ lwz r3, 0xc(r4) +/* 80186374 001832D4 80 04 00 10 */ lwz r0, 0x10(r4) +/* 80186378 001832D8 90 7F 00 0C */ stw r3, 0xc(r31) +/* 8018637C 001832DC 90 1F 00 10 */ stw r0, 0x10(r31) +/* 80186380 001832E0 80 04 00 14 */ lwz r0, 0x14(r4) +/* 80186384 001832E4 90 1F 00 14 */ stw r0, 0x14(r31) +/* 80186388 001832E8 80 64 00 18 */ lwz r3, 0x18(r4) +/* 8018638C 001832EC 80 04 00 1C */ lwz r0, 0x1c(r4) +/* 80186390 001832F0 90 7F 00 18 */ stw r3, 0x18(r31) +/* 80186394 001832F4 90 1F 00 1C */ stw r0, 0x1c(r31) +/* 80186398 001832F8 80 04 00 20 */ lwz r0, 0x20(r4) +/* 8018639C 001832FC 90 1F 00 20 */ stw r0, 0x20(r31) +/* 801863A0 00183300 80 64 00 24 */ lwz r3, 0x24(r4) +/* 801863A4 00183304 80 04 00 28 */ lwz r0, 0x28(r4) +/* 801863A8 00183308 90 7F 00 24 */ stw r3, 0x24(r31) +/* 801863AC 0018330C 90 1F 00 28 */ stw r0, 0x28(r31) +/* 801863B0 00183310 80 04 00 2C */ lwz r0, 0x2c(r4) +/* 801863B4 00183314 90 1F 00 2C */ stw r0, 0x2c(r31) +/* 801863B8 00183318 88 04 00 30 */ lbz r0, 0x30(r4) +/* 801863BC 0018331C 98 1F 00 30 */ stb r0, 0x30(r31) +/* 801863C0 00183320 88 04 00 31 */ lbz r0, 0x31(r4) +/* 801863C4 00183324 98 1F 00 31 */ stb r0, 0x31(r31) +/* 801863C8 00183328 C8 04 00 38 */ lfd f0, 0x38(r4) +/* 801863CC 0018332C D8 1F 00 38 */ stfd f0, 0x38(r31) +/* 801863D0 00183330 C8 04 00 40 */ lfd f0, 0x40(r4) +/* 801863D4 00183334 D8 1F 00 40 */ stfd f0, 0x40(r31) +/* 801863D8 00183338 80 64 00 48 */ lwz r3, 0x48(r4) +/* 801863DC 0018333C 80 04 00 4C */ lwz r0, 0x4c(r4) +/* 801863E0 00183340 90 7F 00 48 */ stw r3, 0x48(r31) +/* 801863E4 00183344 90 1F 00 4C */ stw r0, 0x4c(r31) +/* 801863E8 00183348 80 04 00 50 */ lwz r0, 0x50(r4) +/* 801863EC 0018334C 90 1F 00 50 */ stw r0, 0x50(r31) +/* 801863F0 00183350 80 64 00 54 */ lwz r3, 0x54(r4) +/* 801863F4 00183354 80 04 00 58 */ lwz r0, 0x58(r4) +/* 801863F8 00183358 90 7F 00 54 */ stw r3, 0x54(r31) +/* 801863FC 0018335C 90 1F 00 58 */ stw r0, 0x58(r31) +/* 80186400 00183360 80 04 00 5C */ lwz r0, 0x5c(r4) +/* 80186404 00183364 90 1F 00 5C */ stw r0, 0x5c(r31) +lbl_80186408: +/* 80186408 00183368 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018640C 0018336C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80186410 00183370 7C 08 03 A6 */ mtlr r0 +/* 80186414 00183374 38 21 00 10 */ addi r1, r1, 0x10 +/* 80186418 00183378 4E 80 00 20 */ blr + +.global sub_8018641c +sub_8018641c: +/* 8018641C 0018337C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80186420 00183380 7C 08 02 A6 */ mflr r0 +/* 80186424 00183384 28 03 00 00 */ cmplwi r3, 0 +/* 80186428 00183388 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018642C 0018338C 41 82 00 08 */ beq lbl_80186434 +/* 80186430 00183390 4B F6 B0 71 */ bl __ct__14CCollisionInfoFRC14CCollisionInfo +lbl_80186434: +/* 80186434 00183394 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80186438 00183398 7C 08 03 A6 */ mtlr r0 +/* 8018643C 0018339C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80186440 001833A0 4E 80 00 20 */ blr + +.global RemoveNormalComponent__15CGroundMovementFRC9CVector3fR9CVector3f +RemoveNormalComponent__15CGroundMovementFRC9CVector3fR9CVector3f: +/* 80186444 001833A4 C0 43 00 04 */ lfs f2, 4(r3) +/* 80186448 001833A8 C0 04 00 04 */ lfs f0, 4(r4) +/* 8018644C 001833AC C0 63 00 00 */ lfs f3, 0(r3) +/* 80186450 001833B0 EC 02 00 32 */ fmuls f0, f2, f0 +/* 80186454 001833B4 C0 24 00 00 */ lfs f1, 0(r4) +/* 80186458 001833B8 C0 A3 00 08 */ lfs f5, 8(r3) +/* 8018645C 001833BC C0 84 00 08 */ lfs f4, 8(r4) +/* 80186460 001833C0 EC 23 00 7A */ fmadds f1, f3, f1, f0 +/* 80186464 001833C4 C0 02 A3 24 */ lfs f0, lbl_805AC044@sda21(r2) +/* 80186468 001833C8 EC 85 09 3A */ fmadds f4, f5, f4, f1 +/* 8018646C 001833CC FC 20 22 10 */ fabs f1, f4 +/* 80186470 001833D0 FC 20 08 18 */ frsp f1, f1 +/* 80186474 001833D4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80186478 001833D8 40 81 00 0C */ ble lbl_80186484 +/* 8018647C 001833DC 38 60 00 00 */ li r3, 0 +/* 80186480 001833E0 4E 80 00 20 */ blr +lbl_80186484: +/* 80186484 001833E4 EC 04 00 F2 */ fmuls f0, f4, f3 +/* 80186488 001833E8 C0 24 00 00 */ lfs f1, 0(r4) +/* 8018648C 001833EC EC 64 00 B2 */ fmuls f3, f4, f2 +/* 80186490 001833F0 38 60 00 01 */ li r3, 1 +/* 80186494 001833F4 EC 44 01 72 */ fmuls f2, f4, f5 +/* 80186498 001833F8 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8018649C 001833FC D0 04 00 00 */ stfs f0, 0(r4) +/* 801864A0 00183400 C0 04 00 04 */ lfs f0, 4(r4) +/* 801864A4 00183404 EC 00 18 28 */ fsubs f0, f0, f3 +/* 801864A8 00183408 D0 04 00 04 */ stfs f0, 4(r4) +/* 801864AC 0018340C C0 04 00 08 */ lfs f0, 8(r4) +/* 801864B0 00183410 EC 00 10 28 */ fsubs f0, f0, f2 +/* 801864B4 00183414 D0 04 00 08 */ stfs f0, 8(r4) +/* 801864B8 00183418 4E 80 00 20 */ blr + +.global RemoveNormalComponent__15CGroundMovementFRC9CVector3fRC9CVector3fR9CVector3fRf +RemoveNormalComponent__15CGroundMovementFRC9CVector3fRC9CVector3fR9CVector3fRf: +/* 801864BC 0018341C 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801864C0 00183420 7C 08 02 A6 */ mflr r0 +/* 801864C4 00183424 90 01 00 64 */ stw r0, 0x64(r1) +/* 801864C8 00183428 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 801864CC 0018342C F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 801864D0 00183430 DB C1 00 40 */ stfd f30, 0x40(r1) +/* 801864D4 00183434 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 +/* 801864D8 00183438 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801864DC 0018343C 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801864E0 00183440 93 A1 00 34 */ stw r29, 0x34(r1) +/* 801864E4 00183444 93 81 00 30 */ stw r28, 0x30(r1) +/* 801864E8 00183448 7C 7C 1B 78 */ mr r28, r3 +/* 801864EC 0018344C 7C BE 2B 78 */ mr r30, r5 +/* 801864F0 00183450 C0 43 00 04 */ lfs f2, 4(r3) +/* 801864F4 00183454 7C 9D 23 78 */ mr r29, r4 +/* 801864F8 00183458 C0 85 00 04 */ lfs f4, 4(r5) +/* 801864FC 0018345C 7C DF 33 78 */ mr r31, r6 +/* 80186500 00183460 C0 C3 00 00 */ lfs f6, 0(r3) +/* 80186504 00183464 EC 02 01 32 */ fmuls f0, f2, f4 +/* 80186508 00183468 C0 A5 00 00 */ lfs f5, 0(r5) +/* 8018650C 0018346C C0 63 00 08 */ lfs f3, 8(r3) +/* 80186510 00183470 C0 E5 00 08 */ lfs f7, 8(r5) +/* 80186514 00183474 EC 26 01 7A */ fmadds f1, f6, f5, f0 +/* 80186518 00183478 C0 02 A3 24 */ lfs f0, lbl_805AC044@sda21(r2) +/* 8018651C 0018347C EF E3 09 FA */ fmadds f31, f3, f7, f1 +/* 80186520 00183480 FC 20 FA 10 */ fabs f1, f31 +/* 80186524 00183484 FC 20 08 18 */ frsp f1, f1 +/* 80186528 00183488 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018652C 0018348C 40 81 00 0C */ ble lbl_80186538 +/* 80186530 00183490 38 60 00 00 */ li r3, 0 +/* 80186534 00183494 48 00 01 10 */ b lbl_80186644 +lbl_80186538: +/* 80186538 00183498 C0 1D 00 04 */ lfs f0, 4(r29) +/* 8018653C 0018349C ED 3F 00 B2 */ fmuls f9, f31, f2 +/* 80186540 001834A0 ED 1F 00 F2 */ fmuls f8, f31, f3 +/* 80186544 001834A4 C0 5D 00 00 */ lfs f2, 0(r29) +/* 80186548 001834A8 EC 00 01 32 */ fmuls f0, f0, f4 +/* 8018654C 001834AC C0 7D 00 08 */ lfs f3, 8(r29) +/* 80186550 001834B0 EC 3F 01 B2 */ fmuls f1, f31, f6 +/* 80186554 001834B4 EC C4 48 28 */ fsubs f6, f4, f9 +/* 80186558 001834B8 EC 42 01 7A */ fmadds f2, f2, f5, f0 +/* 8018655C 001834BC D1 21 00 0C */ stfs f9, 0xc(r1) +/* 80186560 001834C0 EC 87 40 28 */ fsubs f4, f7, f8 +/* 80186564 001834C4 38 61 00 20 */ addi r3, r1, 0x20 +/* 80186568 001834C8 EC 05 08 28 */ fsubs f0, f5, f1 +/* 8018656C 001834CC EF C3 11 FA */ fmadds f30, f3, f7, f2 +/* 80186570 001834D0 D0 21 00 08 */ stfs f1, 8(r1) +/* 80186574 001834D4 38 81 00 14 */ addi r4, r1, 0x14 +/* 80186578 001834D8 D1 01 00 10 */ stfs f8, 0x10(r1) +/* 8018657C 001834DC D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80186580 001834E0 D0 C1 00 18 */ stfs f6, 0x18(r1) +/* 80186584 001834E4 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 80186588 001834E8 48 18 E2 C9 */ bl AsNormalized__9CVector3fCFv +/* 8018658C 001834EC C0 5D 00 04 */ lfs f2, 4(r29) +/* 80186590 001834F0 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 80186594 001834F4 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) +/* 80186598 001834F8 EC 22 00 72 */ fmuls f1, f2, f1 +/* 8018659C 001834FC C0 7D 00 00 */ lfs f3, 0(r29) +/* 801865A0 00183500 C0 41 00 20 */ lfs f2, 0x20(r1) +/* 801865A4 00183504 FC 1E 00 40 */ fcmpo cr0, f30, f0 +/* 801865A8 00183508 C0 9D 00 08 */ lfs f4, 8(r29) +/* 801865AC 0018350C EC 23 08 BA */ fmadds f1, f3, f2, f1 +/* 801865B0 00183510 C0 41 00 28 */ lfs f2, 0x28(r1) +/* 801865B4 00183514 EC 44 08 BA */ fmadds f2, f4, f2, f1 +/* 801865B8 00183518 40 81 00 14 */ ble lbl_801865CC +/* 801865BC 0018351C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801865C0 00183520 40 80 00 0C */ bge lbl_801865CC +/* 801865C4 00183524 38 60 00 00 */ li r3, 0 +/* 801865C8 00183528 48 00 00 7C */ b lbl_80186644 +lbl_801865CC: +/* 801865CC 0018352C FC 20 F2 10 */ fabs f1, f30 +/* 801865D0 00183530 C0 02 A3 28 */ lfs f0, lbl_805AC048@sda21(r2) +/* 801865D4 00183534 FC 20 08 18 */ frsp f1, f1 +/* 801865D8 00183538 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801865DC 0018353C 40 81 00 24 */ ble lbl_80186600 +/* 801865E0 00183540 EC 22 F0 24 */ fdivs f1, f2, f30 +/* 801865E4 00183544 C0 02 A3 2C */ lfs f0, lbl_805AC04C@sda21(r2) +/* 801865E8 00183548 FC 20 0A 10 */ fabs f1, f1 +/* 801865EC 0018354C FC 20 08 18 */ frsp f1, f1 +/* 801865F0 00183550 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801865F4 00183554 40 81 00 0C */ ble lbl_80186600 +/* 801865F8 00183558 38 60 00 00 */ li r3, 0 +/* 801865FC 0018355C 48 00 00 48 */ b lbl_80186644 +lbl_80186600: +/* 80186600 00183560 C0 1C 00 00 */ lfs f0, 0(r28) +/* 80186604 00183564 38 60 00 01 */ li r3, 1 +/* 80186608 00183568 C0 7C 00 04 */ lfs f3, 4(r28) +/* 8018660C 0018356C EC 1F 00 32 */ fmuls f0, f31, f0 +/* 80186610 00183570 C0 3E 00 00 */ lfs f1, 0(r30) +/* 80186614 00183574 C0 5C 00 08 */ lfs f2, 8(r28) +/* 80186618 00183578 EC 7F 00 F2 */ fmuls f3, f31, f3 +/* 8018661C 0018357C EC 01 00 28 */ fsubs f0, f1, f0 +/* 80186620 00183580 EC 3F 00 B2 */ fmuls f1, f31, f2 +/* 80186624 00183584 D0 1E 00 00 */ stfs f0, 0(r30) +/* 80186628 00183588 C0 1E 00 04 */ lfs f0, 4(r30) +/* 8018662C 0018358C EC 00 18 28 */ fsubs f0, f0, f3 +/* 80186630 00183590 D0 1E 00 04 */ stfs f0, 4(r30) +/* 80186634 00183594 C0 1E 00 08 */ lfs f0, 8(r30) +/* 80186638 00183598 EC 00 08 28 */ fsubs f0, f0, f1 +/* 8018663C 0018359C D0 1E 00 08 */ stfs f0, 8(r30) +/* 80186640 001835A0 D3 FF 00 00 */ stfs f31, 0(r31) +lbl_80186644: +/* 80186644 001835A4 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 80186648 001835A8 CB E1 00 50 */ lfd f31, 0x50(r1) +/* 8018664C 001835AC E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 +/* 80186650 001835B0 CB C1 00 40 */ lfd f30, 0x40(r1) +/* 80186654 001835B4 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80186658 001835B8 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8018665C 001835BC 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 80186660 001835C0 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80186664 001835C4 83 81 00 30 */ lwz r28, 0x30(r1) +/* 80186668 001835C8 7C 08 03 A6 */ mtlr r0 +/* 8018666C 001835CC 38 21 00 60 */ addi r1, r1, 0x60 +/* 80186670 001835D0 4E 80 00 20 */ blr + +.global RemovePositiveZComponentFromNormal__FR9CVector3f +RemovePositiveZComponentFromNormal__FR9CVector3f: +/* 80186674 001835D4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80186678 001835D8 7C 08 02 A6 */ mflr r0 +/* 8018667C 001835DC C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) +/* 80186680 001835E0 90 01 00 34 */ stw r0, 0x34(r1) +/* 80186684 001835E4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80186688 001835E8 7C 7F 1B 78 */ mr r31, r3 +/* 8018668C 001835EC C0 43 00 08 */ lfs f2, 8(r3) +/* 80186690 001835F0 FC 02 08 40 */ fcmpo cr0, f2, f1 +/* 80186694 001835F4 40 81 00 50 */ ble lbl_801866E4 +/* 80186698 001835F8 C0 02 A3 24 */ lfs f0, lbl_805AC044@sda21(r2) +/* 8018669C 001835FC FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801866A0 00183600 40 80 00 44 */ bge lbl_801866E4 +/* 801866A4 00183604 C0 5F 00 04 */ lfs f2, 4(r31) +/* 801866A8 00183608 38 61 00 14 */ addi r3, r1, 0x14 +/* 801866AC 0018360C C0 1F 00 00 */ lfs f0, 0(r31) +/* 801866B0 00183610 38 81 00 08 */ addi r4, r1, 8 +/* 801866B4 00183614 D0 01 00 08 */ stfs f0, 8(r1) +/* 801866B8 00183618 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 801866BC 0018361C D0 21 00 10 */ stfs f1, 0x10(r1) +/* 801866C0 00183620 48 18 E1 91 */ bl AsNormalized__9CVector3fCFv +/* 801866C4 00183624 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 801866C8 00183628 38 60 00 01 */ li r3, 1 +/* 801866CC 0018362C D0 1F 00 00 */ stfs f0, 0(r31) +/* 801866D0 00183630 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 801866D4 00183634 D0 1F 00 04 */ stfs f0, 4(r31) +/* 801866D8 00183638 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801866DC 0018363C D0 1F 00 08 */ stfs f0, 8(r31) +/* 801866E0 00183640 48 00 00 08 */ b lbl_801866E8 +lbl_801866E4: +/* 801866E4 00183644 38 60 00 00 */ li r3, 0 +lbl_801866E8: +/* 801866E8 00183648 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801866EC 0018364C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801866F0 00183650 7C 08 03 A6 */ mtlr r0 +/* 801866F4 00183654 38 21 00 30 */ addi r1, r1, 0x30 +/* 801866F8 00183658 4E 80 00 20 */ blr + +.global "MoveGroundCollider_New__15CGroundMovementFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>" +"MoveGroundCollider_New__15CGroundMovementFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>": +/* 801866FC 0018365C 94 21 C5 60 */ stwu r1, -0x3aa0(r1) +/* 80186700 00183660 7C 08 02 A6 */ mflr r0 +/* 80186704 00183664 90 01 3A A4 */ stw r0, 0x3aa4(r1) +/* 80186708 00183668 38 00 3A 98 */ li r0, 0x3a98 +/* 8018670C 0018366C DB E1 3A 90 */ stfd f31, 0x3a90(r1) +/* 80186710 00183670 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 +/* 80186714 00183674 38 00 3A 88 */ li r0, 0x3a88 +/* 80186718 00183678 DB C1 3A 80 */ stfd f30, 0x3a80(r1) +/* 8018671C 0018367C 13 C1 00 0E */ psq_stx f30, r1, r0, 0, qr0 +/* 80186720 00183680 38 00 3A 78 */ li r0, 0x3a78 +/* 80186724 00183684 DB A1 3A 70 */ stfd f29, 0x3a70(r1) +/* 80186728 00183688 13 A1 00 0E */ psq_stx f29, r1, r0, 0, qr0 +/* 8018672C 0018368C 38 00 3A 68 */ li r0, 0x3a68 +/* 80186730 00183690 DB 81 3A 60 */ stfd f28, 0x3a60(r1) +/* 80186734 00183694 13 81 00 0E */ psq_stx f28, r1, r0, 0, qr0 +/* 80186738 00183698 38 00 3A 58 */ li r0, 0x3a58 +/* 8018673C 0018369C DB 61 3A 50 */ stfd f27, 0x3a50(r1) +/* 80186740 001836A0 13 61 00 0E */ psq_stx f27, r1, r0, 0, qr0 +/* 80186744 001836A4 38 00 3A 48 */ li r0, 0x3a48 +/* 80186748 001836A8 DB 41 3A 40 */ stfd f26, 0x3a40(r1) +/* 8018674C 001836AC 13 41 00 0E */ psq_stx f26, r1, r0, 0, qr0 +/* 80186750 001836B0 38 00 3A 38 */ li r0, 0x3a38 +/* 80186754 001836B4 DB 21 3A 30 */ stfd f25, 0x3a30(r1) +/* 80186758 001836B8 13 21 00 0E */ psq_stx f25, r1, r0, 0, qr0 +/* 8018675C 001836BC 38 00 3A 28 */ li r0, 0x3a28 +/* 80186760 001836C0 DB 01 3A 20 */ stfd f24, 0x3a20(r1) +/* 80186764 001836C4 13 01 00 0E */ psq_stx f24, r1, r0, 0, qr0 +/* 80186768 001836C8 38 00 3A 18 */ li r0, 0x3a18 +/* 8018676C 001836CC DA E1 3A 10 */ stfd f23, 0x3a10(r1) +/* 80186770 001836D0 12 E1 00 0E */ psq_stx f23, r1, r0, 0, qr0 +/* 80186774 001836D4 38 00 3A 08 */ li r0, 0x3a08 +/* 80186778 001836D8 DA C1 3A 00 */ stfd f22, 0x3a00(r1) +/* 8018677C 001836DC 12 C1 00 0E */ psq_stx f22, r1, r0, 0, qr0 +/* 80186780 001836E0 38 00 39 F8 */ li r0, 0x39f8 +/* 80186784 001836E4 DA A1 39 F0 */ stfd f21, 0x39f0(r1) +/* 80186788 001836E8 12 A1 00 0E */ psq_stx f21, r1, r0, 0, qr0 +/* 8018678C 001836EC BD C1 39 A8 */ stmw r14, 0x39a8(r1) +/* 80186790 001836F0 38 00 00 00 */ li r0, 0 +/* 80186794 001836F4 FE E0 08 90 */ fmr f23, f1 +/* 80186798 001836F8 90 01 31 94 */ stw r0, 0x3194(r1) +/* 8018679C 001836FC 7C 70 1B 78 */ mr r16, r3 +/* 801867A0 00183700 7C 91 23 78 */ mr r17, r4 +/* 801867A4 00183704 7C AE 2B 78 */ mr r14, r5 +/* 801867A8 00183708 38 61 02 28 */ addi r3, r1, 0x228 +/* 801867AC 0018370C 4B F9 3F 09 */ bl GetMotionVolume__13CPhysicsActorCFf +/* 801867B0 00183710 C0 A1 02 28 */ lfs f5, 0x228(r1) +/* 801867B4 00183714 28 0E 00 00 */ cmplwi r14, 0 +/* 801867B8 00183718 C0 81 02 2C */ lfs f4, 0x22c(r1) +/* 801867BC 0018371C C0 61 02 30 */ lfs f3, 0x230(r1) +/* 801867C0 00183720 C0 41 02 34 */ lfs f2, 0x234(r1) +/* 801867C4 00183724 C0 21 02 38 */ lfs f1, 0x238(r1) +/* 801867C8 00183728 C0 01 02 3C */ lfs f0, 0x23c(r1) +/* 801867CC 0018372C D0 A1 02 54 */ stfs f5, 0x254(r1) +/* 801867D0 00183730 D0 81 02 58 */ stfs f4, 0x258(r1) +/* 801867D4 00183734 D0 61 02 5C */ stfs f3, 0x25c(r1) +/* 801867D8 00183738 D0 41 02 60 */ stfs f2, 0x260(r1) +/* 801867DC 0018373C D0 21 02 64 */ stfs f1, 0x264(r1) +/* 801867E0 00183740 D0 01 02 68 */ stfs f0, 0x268(r1) +/* 801867E4 00183744 41 82 00 AC */ beq lbl_80186890 +/* 801867E8 00183748 38 01 31 94 */ addi r0, r1, 0x3194 +/* 801867EC 0018374C 7C 00 70 40 */ cmplw r0, r14 +/* 801867F0 00183750 41 82 00 B4 */ beq lbl_801868A4 +/* 801867F4 00183754 80 A1 31 94 */ lwz r5, 0x3194(r1) +/* 801867F8 00183758 38 C1 31 98 */ addi r6, r1, 0x3198 +/* 801867FC 0018375C 38 60 00 00 */ li r3, 0 +/* 80186800 00183760 2C 05 00 00 */ cmpwi r5, 0 +/* 80186804 00183764 40 81 00 40 */ ble lbl_80186844 +/* 80186808 00183768 2C 05 00 08 */ cmpwi r5, 8 +/* 8018680C 0018376C 38 85 FF F8 */ addi r4, r5, -8 +/* 80186810 00183770 40 81 00 20 */ ble lbl_80186830 +/* 80186814 00183774 38 04 00 07 */ addi r0, r4, 7 +/* 80186818 00183778 54 00 E8 FE */ srwi r0, r0, 3 +/* 8018681C 0018377C 7C 09 03 A6 */ mtctr r0 +/* 80186820 00183780 2C 04 00 00 */ cmpwi r4, 0 +/* 80186824 00183784 40 81 00 0C */ ble lbl_80186830 +lbl_80186828: +/* 80186828 00183788 38 63 00 08 */ addi r3, r3, 8 +/* 8018682C 0018378C 42 00 FF FC */ bdnz lbl_80186828 +lbl_80186830: +/* 80186830 00183790 7C 03 28 50 */ subf r0, r3, r5 +/* 80186834 00183794 7C 09 03 A6 */ mtctr r0 +/* 80186838 00183798 7C 03 28 00 */ cmpw r3, r5 +/* 8018683C 0018379C 40 80 00 08 */ bge lbl_80186844 +lbl_80186840: +/* 80186840 001837A0 42 00 00 00 */ bdnz lbl_80186840 +lbl_80186844: +/* 80186844 001837A4 80 0E 00 00 */ lwz r0, 0(r14) +/* 80186848 001837A8 38 60 00 00 */ li r3, 0 +/* 8018684C 001837AC 90 61 31 94 */ stw r3, 0x3194(r1) +/* 80186850 001837B0 38 6E 00 04 */ addi r3, r14, 4 +/* 80186854 001837B4 54 00 08 3C */ slwi r0, r0, 1 +/* 80186858 001837B8 7C 8E 02 14 */ add r4, r14, r0 +/* 8018685C 001837BC 38 84 00 04 */ addi r4, r4, 4 +/* 80186860 001837C0 48 00 00 1C */ b lbl_8018687C +lbl_80186864: +/* 80186864 001837C4 28 06 00 00 */ cmplwi r6, 0 +/* 80186868 001837C8 41 82 00 0C */ beq lbl_80186874 +/* 8018686C 001837CC A0 03 00 00 */ lhz r0, 0(r3) +/* 80186870 001837D0 B0 06 00 00 */ sth r0, 0(r6) +lbl_80186874: +/* 80186874 001837D4 38 C6 00 02 */ addi r6, r6, 2 +/* 80186878 001837D8 38 63 00 02 */ addi r3, r3, 2 +lbl_8018687C: +/* 8018687C 001837DC 7C 03 20 40 */ cmplw r3, r4 +/* 80186880 001837E0 40 82 FF E4 */ bne lbl_80186864 +/* 80186884 001837E4 80 0E 00 00 */ lwz r0, 0(r14) +/* 80186888 001837E8 90 01 31 94 */ stw r0, 0x3194(r1) +/* 8018688C 001837EC 48 00 00 18 */ b lbl_801868A4 +lbl_80186890: +/* 80186890 001837F0 7E 03 83 78 */ mr r3, r16 +/* 80186894 001837F4 7E 25 8B 78 */ mr r5, r17 +/* 80186898 001837F8 38 81 31 94 */ addi r4, r1, 0x3194 +/* 8018689C 001837FC 38 C1 02 54 */ addi r6, r1, 0x254 +/* 801868A0 00183800 4B EC 5E 5D */ bl "BuildColliderList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CActorRC6CAABox" +lbl_801868A4: +/* 801868A4 00183804 38 61 16 50 */ addi r3, r1, 0x1650 +/* 801868A8 00183808 38 81 02 54 */ addi r4, r1, 0x254 +/* 801868AC 0018380C 48 11 D1 E5 */ bl __ct__19CAreaCollisionCacheFRC6CAABox +/* 801868B0 00183810 7E 03 83 78 */ mr r3, r16 +/* 801868B4 00183814 38 81 16 50 */ addi r4, r1, 0x1650 +/* 801868B8 00183818 4B FF DE 0D */ bl BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache +/* 801868BC 0018381C 7E 24 8B 78 */ mr r4, r17 +/* 801868C0 00183820 38 61 00 80 */ addi r3, r1, 0x80 +/* 801868C4 00183824 4B F2 5A D1 */ bl "__ct__20TCastToPtr<7CPlayer>FP7CEntity" +/* 801868C8 00183828 83 A3 00 04 */ lwz r29, 4(r3) +/* 801868CC 0018382C 39 C0 00 00 */ li r14, 0 +/* 801868D0 00183830 88 1D 09 C5 */ lbz r0, 0x9c5(r29) +/* 801868D4 00183834 51 C0 1F 38 */ rlwimi r0, r14, 3, 0x1c, 0x1c +/* 801868D8 00183838 98 1D 09 C5 */ stb r0, 0x9c5(r29) +/* 801868DC 0018383C 88 1D 09 C4 */ lbz r0, 0x9c4(r29) +/* 801868E0 00183840 80 7D 02 58 */ lwz r3, 0x258(r29) +/* 801868E4 00183844 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801868E8 00183848 20 63 00 02 */ subfic r3, r3, 2 +/* 801868EC 0018384C 7C 63 00 34 */ cntlzw r3, r3 +/* 801868F0 00183850 54 6F D9 7E */ srwi r15, r3, 5 +/* 801868F4 00183854 41 82 00 20 */ beq lbl_80186914 +/* 801868F8 00183858 80 70 08 B8 */ lwz r3, 0x8b8(r16) +/* 801868FC 0018385C 38 80 00 15 */ li r4, 0x15 +/* 80186900 00183860 80 63 00 00 */ lwz r3, 0(r3) +/* 80186904 00183864 4B F0 B1 BD */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80186908 00183868 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8018690C 0018386C 40 82 00 08 */ bne lbl_80186914 +/* 80186910 00183870 39 C0 00 01 */ li r14, 1 +lbl_80186914: +/* 80186914 00183874 80 1D 02 58 */ lwz r0, 0x258(r29) +/* 80186918 00183878 3A 80 00 00 */ li r20, 0 +/* 8018691C 0018387C 2C 00 00 02 */ cmpwi r0, 2 +/* 80186920 00183880 41 82 00 10 */ beq lbl_80186930 +/* 80186924 00183884 2C 00 00 01 */ cmpwi r0, 1 +/* 80186928 00183888 41 82 00 08 */ beq lbl_80186930 +/* 8018692C 0018388C 3A 80 00 01 */ li r20, 1 +lbl_80186930: +/* 80186930 00183890 7E 23 8B 78 */ mr r3, r17 +/* 80186934 00183894 81 91 00 00 */ lwz r12, 0(r17) +/* 80186938 00183898 81 8C 00 78 */ lwz r12, 0x78(r12) +/* 8018693C 0018389C 7D 89 03 A6 */ mtctr r12 +/* 80186940 001838A0 4E 80 04 21 */ bctrl +/* 80186944 001838A4 7E 23 8B 78 */ mr r3, r17 +/* 80186948 001838A8 FF 80 08 90 */ fmr f28, f1 +/* 8018694C 001838AC 81 91 00 00 */ lwz r12, 0(r17) +/* 80186950 001838B0 81 8C 00 7C */ lwz r12, 0x7c(r12) +/* 80186954 001838B4 7D 89 03 A6 */ mtctr r12 +/* 80186958 001838B8 4E 80 04 21 */ bctrl +/* 8018695C 001838BC 38 00 00 01 */ li r0, 1 +/* 80186960 001838C0 FF 00 08 90 */ fmr f24, f1 +/* 80186964 001838C4 80 AD 8E BC */ lwz r5, lbl_805A7A7C@sda21(r13) +/* 80186968 001838C8 38 60 00 00 */ li r3, 0 +/* 8018696C 001838CC 98 01 39 98 */ stb r0, 0x3998(r1) +/* 80186970 001838D0 38 80 00 01 */ li r4, 1 +/* 80186974 001838D4 48 20 35 81 */ bl __shl2i +/* 80186978 001838D8 38 A0 00 00 */ li r5, 0 +/* 8018697C 001838DC 55 E0 06 3F */ clrlwi. r0, r15, 0x18 +/* 80186980 001838E0 98 A1 08 34 */ stb r5, 0x834(r1) +/* 80186984 001838E4 7C 92 23 78 */ mr r18, r4 +/* 80186988 001838E8 7C 6F 1B 78 */ mr r15, r3 +/* 8018698C 001838EC 98 A1 08 98 */ stb r5, 0x898(r1) +/* 80186990 001838F0 40 82 0A 5C */ bne lbl_801873EC +/* 80186994 001838F4 C0 A2 A3 18 */ lfs f5, lbl_805AC038@sda21(r2) +/* 80186998 001838F8 38 D1 02 28 */ addi r6, r17, 0x228 +/* 8018699C 001838FC C0 82 A3 30 */ lfs f4, lbl_805AC050@sda21(r2) +/* 801869A0 00183900 38 01 08 20 */ addi r0, r1, 0x820 +/* 801869A4 00183904 C0 62 A3 34 */ lfs f3, lbl_805AC054@sda21(r2) +/* 801869A8 00183908 38 80 00 01 */ li r4, 1 +/* 801869AC 0018390C C0 42 A3 38 */ lfs f2, lbl_805AC058@sda21(r2) +/* 801869B0 00183910 38 60 00 04 */ li r3, 4 +/* 801869B4 00183914 C0 22 A3 10 */ lfs f1, lbl_805AC030@sda21(r2) +/* 801869B8 00183918 7C 00 30 40 */ cmplw r0, r6 +/* 801869BC 0018391C C0 02 A3 3C */ lfs f0, lbl_805AC05C@sda21(r2) +/* 801869C0 00183920 56 93 06 3E */ clrlwi r19, r20, 0x18 +/* 801869C4 00183924 98 A1 08 2C */ stb r5, 0x82c(r1) +/* 801869C8 00183928 98 A1 07 E4 */ stb r5, 0x7e4(r1) +/* 801869CC 0018392C D0 A1 07 E8 */ stfs f5, 0x7e8(r1) +/* 801869D0 00183930 D0 A1 07 EC */ stfs f5, 0x7ec(r1) +/* 801869D4 00183934 D0 81 07 F0 */ stfs f4, 0x7f0(r1) +/* 801869D8 00183938 D0 61 07 F4 */ stfs f3, 0x7f4(r1) +/* 801869DC 0018393C D0 A1 07 F8 */ stfs f5, 0x7f8(r1) +/* 801869E0 00183940 98 81 07 FC */ stb r4, 0x7fc(r1) +/* 801869E4 00183944 98 A1 07 FD */ stb r5, 0x7fd(r1) +/* 801869E8 00183948 9A 81 07 FE */ stb r20, 0x7fe(r1) +/* 801869EC 0018394C 90 61 08 00 */ stw r3, 0x800(r1) +/* 801869F0 00183950 D0 41 08 04 */ stfs f2, 0x804(r1) +/* 801869F4 00183954 D0 A1 08 08 */ stfs f5, 0x808(r1) +/* 801869F8 00183958 D0 21 08 0C */ stfs f1, 0x80c(r1) +/* 801869FC 0018395C D0 A1 08 10 */ stfs f5, 0x810(r1) +/* 80186A00 00183960 D0 01 08 14 */ stfs f0, 0x814(r1) +/* 80186A04 00183964 41 82 00 64 */ beq lbl_80186A68 +/* 80186A08 00183968 88 06 00 0C */ lbz r0, 0xc(r6) +/* 80186A0C 0018396C 28 00 00 00 */ cmplwi r0, 0 +/* 80186A10 00183970 41 82 00 54 */ beq lbl_80186A64 +/* 80186A14 00183974 28 05 00 00 */ cmplwi r5, 0 +/* 80186A18 00183978 40 82 00 30 */ bne lbl_80186A48 +/* 80186A1C 0018397C 34 01 08 20 */ addic. r0, r1, 0x820 +/* 80186A20 00183980 41 82 00 1C */ beq lbl_80186A3C +/* 80186A24 00183984 C0 06 00 00 */ lfs f0, 0(r6) +/* 80186A28 00183988 D0 01 08 20 */ stfs f0, 0x820(r1) +/* 80186A2C 0018398C C0 06 00 04 */ lfs f0, 4(r6) +/* 80186A30 00183990 D0 01 08 24 */ stfs f0, 0x824(r1) +/* 80186A34 00183994 C0 06 00 08 */ lfs f0, 8(r6) +/* 80186A38 00183998 D0 01 08 28 */ stfs f0, 0x828(r1) +lbl_80186A3C: +/* 80186A3C 0018399C 38 00 00 01 */ li r0, 1 +/* 80186A40 001839A0 98 01 08 2C */ stb r0, 0x82c(r1) +/* 80186A44 001839A4 48 00 00 24 */ b lbl_80186A68 +lbl_80186A48: +/* 80186A48 001839A8 C0 06 00 00 */ lfs f0, 0(r6) +/* 80186A4C 001839AC D0 01 08 20 */ stfs f0, 0x820(r1) +/* 80186A50 001839B0 C0 06 00 04 */ lfs f0, 4(r6) +/* 80186A54 001839B4 D0 01 08 24 */ stfs f0, 0x824(r1) +/* 80186A58 001839B8 C0 06 00 08 */ lfs f0, 8(r6) +/* 80186A5C 001839BC D0 01 08 28 */ stfs f0, 0x828(r1) +/* 80186A60 001839C0 48 00 00 08 */ b lbl_80186A68 +lbl_80186A64: +/* 80186A64 001839C4 98 A1 08 2C */ stb r5, 0x82c(r1) +lbl_80186A68: +/* 80186A68 001839C8 C0 02 A3 40 */ lfs f0, lbl_805AC060@sda21(r2) +/* 80186A6C 001839CC 7F A3 EB 78 */ mr r3, r29 +/* 80186A70 001839D0 7E 04 83 78 */ mr r4, r16 +/* 80186A74 001839D4 D0 01 08 18 */ stfs f0, 0x818(r1) +/* 80186A78 001839D8 4B E8 E0 C9 */ bl GetMaximumPlayerPositiveVerticalVelocity__7CPlayerCFRC13CStateManager +/* 80186A7C 001839DC 56 80 06 3F */ clrlwi. r0, r20, 0x18 +/* 80186A80 001839E0 D0 21 08 1C */ stfs f1, 0x81c(r1) +/* 80186A84 001839E4 41 82 00 40 */ beq lbl_80186AC4 +/* 80186A88 001839E8 C0 31 01 38 */ lfs f1, 0x138(r17) +/* 80186A8C 001839EC 7E 23 8B 78 */ mr r3, r17 +/* 80186A90 001839F0 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) +/* 80186A94 001839F4 38 81 02 04 */ addi r4, r1, 0x204 +/* 80186A98 001839F8 D0 21 02 04 */ stfs f1, 0x204(r1) +/* 80186A9C 001839FC C0 31 01 3C */ lfs f1, 0x13c(r17) +/* 80186AA0 00183A00 D0 21 02 08 */ stfs f1, 0x208(r1) +/* 80186AA4 00183A04 C0 31 01 40 */ lfs f1, 0x140(r17) +/* 80186AA8 00183A08 D0 21 02 0C */ stfs f1, 0x20c(r1) +/* 80186AAC 00183A0C D0 01 02 0C */ stfs f0, 0x20c(r1) +/* 80186AB0 00183A10 4B F9 41 F1 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 80186AB4 00183A14 C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) +/* 80186AB8 00183A18 D0 31 01 64 */ stfs f1, 0x164(r17) +/* 80186ABC 00183A1C D0 31 01 58 */ stfs f1, 0x158(r17) +/* 80186AC0 00183A20 D0 31 01 70 */ stfs f1, 0x170(r17) +lbl_80186AC4: +/* 80186AC4 00183A24 7E 24 8B 78 */ mr r4, r17 +/* 80186AC8 00183A28 38 61 04 14 */ addi r3, r1, 0x414 +/* 80186ACC 00183A2C 4B F9 55 21 */ bl GetPhysicsState__13CPhysicsActorCFv +/* 80186AD0 00183A30 38 61 07 74 */ addi r3, r1, 0x774 +/* 80186AD4 00183A34 38 81 04 14 */ addi r4, r1, 0x414 +/* 80186AD8 00183A38 4B F2 C9 E9 */ bl __ct__13CPhysicsStateFRC13CPhysicsState +/* 80186ADC 00183A3C FC 20 B8 90 */ fmr f1, f23 +/* 80186AE0 00183A40 7E 04 83 78 */ mr r4, r16 +/* 80186AE4 00183A44 7E 25 8B 78 */ mr r5, r17 +/* 80186AE8 00183A48 38 61 00 78 */ addi r3, r1, 0x78 +/* 80186AEC 00183A4C 38 C1 31 94 */ addi r6, r1, 0x3194 +/* 80186AF0 00183A50 38 E1 16 50 */ addi r7, r1, 0x1650 +/* 80186AF4 00183A54 39 01 07 E4 */ addi r8, r1, 0x7e4 +/* 80186AF8 00183A58 39 21 08 30 */ addi r9, r1, 0x830 +/* 80186AFC 00183A5C 4B FF EF 15 */ bl "MoveObjectAnalytical__15CGroundMovementFR13CStateManagerR13CPhysicsActorfRCQ24rstl32reserved_vector<9TUniqueId,1024>R19CAreaCollisionCacheRfRCQ215CGroundMovement16SMovementOptions" +/* 80186B00 00183A60 81 C1 00 78 */ lwz r14, 0x78(r1) +/* 80186B04 00183A64 7E 24 8B 78 */ mr r4, r17 +/* 80186B08 00183A68 83 81 00 7C */ lwz r28, 0x7c(r1) +/* 80186B0C 00183A6C 38 61 03 A4 */ addi r3, r1, 0x3a4 +/* 80186B10 00183A70 4B F9 54 DD */ bl GetPhysicsState__13CPhysicsActorCFv +/* 80186B14 00183A74 38 61 07 04 */ addi r3, r1, 0x704 +/* 80186B18 00183A78 38 81 03 A4 */ addi r4, r1, 0x3a4 +/* 80186B1C 00183A7C 4B F2 C9 A5 */ bl __ct__13CPhysicsStateFRC13CPhysicsState +/* 80186B20 00183A80 38 60 00 01 */ li r3, 1 +/* 80186B24 00183A84 38 00 00 00 */ li r0, 0 +/* 80186B28 00183A88 7F 83 1A 78 */ xor r3, r28, r3 +/* 80186B2C 00183A8C 7D C0 02 78 */ xor r0, r14, r0 +/* 80186B30 00183A90 7C 60 03 79 */ or. r0, r3, r0 +/* 80186B34 00183A94 41 82 08 A4 */ beq lbl_801873D8 +/* 80186B38 00183A98 38 61 06 B8 */ addi r3, r1, 0x6b8 +/* 80186B3C 00183A9C 38 81 07 E4 */ addi r4, r1, 0x7e4 +/* 80186B40 00183AA0 48 00 14 0D */ bl __ct__Q215CGroundMovement16SMovementOptionsFRCQ215CGroundMovement16SMovementOptions +/* 80186B44 00183AA4 C1 41 07 04 */ lfs f10, 0x704(r1) +/* 80186B48 00183AA8 38 00 00 00 */ li r0, 0 +/* 80186B4C 00183AAC C0 E1 07 74 */ lfs f7, 0x774(r1) +/* 80186B50 00183AB0 3B 21 05 C8 */ addi r25, r1, 0x5c8 +/* 80186B54 00183AB4 C1 21 07 08 */ lfs f9, 0x708(r1) +/* 80186B58 00183AB8 3B 01 05 B8 */ addi r24, r1, 0x5b8 +/* 80186B5C 00183ABC C0 C1 07 78 */ lfs f6, 0x778(r1) +/* 80186B60 00183AC0 EC 87 50 28 */ fsubs f4, f7, f10 +/* 80186B64 00183AC4 C1 01 07 0C */ lfs f8, 0x70c(r1) +/* 80186B68 00183AC8 3A C1 01 FC */ addi r22, r1, 0x1fc +/* 80186B6C 00183ACC ED A6 48 28 */ fsubs f13, f6, f9 +/* 80186B70 00183AD0 C0 A1 07 7C */ lfs f5, 0x77c(r1) +/* 80186B74 00183AD4 EC 44 01 32 */ fmuls f2, f4, f4 +/* 80186B78 00183AD8 ED 85 40 28 */ fsubs f12, f5, f8 +/* 80186B7C 00183ADC C0 02 A3 34 */ lfs f0, lbl_805AC054@sda21(r2) +/* 80186B80 00183AE0 EC 2D 03 72 */ fmuls f1, f13, f13 +/* 80186B84 00183AE4 C1 62 A3 44 */ lfs f11, lbl_805AC064@sda21(r2) +/* 80186B88 00183AE8 EF 20 06 32 */ fmuls f25, f0, f24 +/* 80186B8C 00183AEC EC 6C 03 32 */ fmuls f3, f12, f12 +/* 80186B90 00183AF0 EC 02 08 2A */ fadds f0, f2, f1 +/* 80186B94 00183AF4 9A 61 06 D1 */ stb r19, 0x6d1(r1) +/* 80186B98 00183AF8 C3 A2 A3 18 */ lfs f29, lbl_805AC038@sda21(r2) +/* 80186B9C 00183AFC 3A 81 00 A4 */ addi r20, r1, 0xa4 +/* 80186BA0 00183B00 D1 61 06 E8 */ stfs f11, 0x6e8(r1) +/* 80186BA4 00183B04 EF 63 00 2A */ fadds f27, f3, f0 +/* 80186BA8 00183B08 90 01 09 68 */ stw r0, 0x968(r1) +/* 80186BAC 00183B0C 3A A1 02 44 */ addi r21, r1, 0x244 +/* 80186BB0 00183B10 C3 C2 A3 10 */ lfs f30, lbl_805AC030@sda21(r2) +/* 80186BB4 00183B14 3A E1 05 E8 */ addi r23, r1, 0x5e8 +/* 80186BB8 00183B18 90 01 01 F8 */ stw r0, 0x1f8(r1) +/* 80186BBC 00183B1C CB E2 A3 48 */ lfd f31, lbl_805AC068@sda21(r2) +/* 80186BC0 00183B20 3B C1 06 58 */ addi r30, r1, 0x658 +/* 80186BC4 00183B24 90 01 08 A4 */ stw r0, 0x8a4(r1) +/* 80186BC8 00183B28 3B E1 00 98 */ addi r31, r1, 0x98 +/* 80186BCC 00183B2C 3A 60 00 00 */ li r19, 0 +/* 80186BD0 00183B30 3A 40 00 00 */ li r18, 0 +/* 80186BD4 00183B34 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 80186BD8 00183B38 90 01 02 40 */ stw r0, 0x240(r1) +/* 80186BDC 00183B3C D1 41 01 D4 */ stfs f10, 0x1d4(r1) +/* 80186BE0 00183B40 D1 21 01 D8 */ stfs f9, 0x1d8(r1) +/* 80186BE4 00183B44 D1 01 01 DC */ stfs f8, 0x1dc(r1) +/* 80186BE8 00183B48 D0 E1 01 E0 */ stfs f7, 0x1e0(r1) +/* 80186BEC 00183B4C D0 C1 01 E4 */ stfs f6, 0x1e4(r1) +/* 80186BF0 00183B50 D0 A1 01 E8 */ stfs f5, 0x1e8(r1) +/* 80186BF4 00183B54 D0 81 01 EC */ stfs f4, 0x1ec(r1) +/* 80186BF8 00183B58 D1 A1 01 F0 */ stfs f13, 0x1f0(r1) +/* 80186BFC 00183B5C D1 81 01 F4 */ stfs f12, 0x1f4(r1) +/* 80186C00 00183B60 48 00 04 30 */ b lbl_80187030 +lbl_80186C04: +/* 80186C04 00183B64 2C 12 00 00 */ cmpwi r18, 0 +/* 80186C08 00183B68 40 82 00 0C */ bne lbl_80186C14 +/* 80186C0C 00183B6C FE A0 C8 90 */ fmr f21, f25 +/* 80186C10 00183B70 48 00 00 08 */ b lbl_80186C18 +lbl_80186C14: +/* 80186C14 00183B74 FE A0 C0 90 */ fmr f21, f24 +lbl_80186C18: +/* 80186C18 00183B78 7E 23 8B 78 */ mr r3, r17 +/* 80186C1C 00183B7C 38 81 07 74 */ addi r4, r1, 0x774 +/* 80186C20 00183B80 4B F9 52 05 */ bl SetPhysicsState__13CPhysicsActorFRC13CPhysicsState +/* 80186C24 00183B84 38 61 06 58 */ addi r3, r1, 0x658 +/* 80186C28 00183B88 38 80 00 00 */ li r4, 0 +/* 80186C2C 00183B8C 48 14 75 5D */ bl __ct__14CCollisionInfoFQ214CCollisionInfo8EInvalid +/* 80186C30 00183B90 D3 A1 01 BC */ stfs f29, 0x1bc(r1) +/* 80186C34 00183B94 7E 23 8B 78 */ mr r3, r17 +/* 80186C38 00183B98 A0 CD A3 8C */ lhz r6, lbl_805A8F4C@sda21(r13) +/* 80186C3C 00183B9C D3 A1 01 C0 */ stfs f29, 0x1c0(r1) +/* 80186C40 00183BA0 80 A1 01 BC */ lwz r5, 0x1bc(r1) +/* 80186C44 00183BA4 D3 C1 01 C4 */ stfs f30, 0x1c4(r1) +/* 80186C48 00183BA8 80 81 01 C0 */ lwz r4, 0x1c0(r1) +/* 80186C4C 00183BAC 80 01 01 C4 */ lwz r0, 0x1c4(r1) +/* 80186C50 00183BB0 DA A1 00 98 */ stfd f21, 0x98(r1) +/* 80186C54 00183BB4 B0 C1 00 38 */ sth r6, 0x38(r1) +/* 80186C58 00183BB8 90 A1 01 C8 */ stw r5, 0x1c8(r1) +/* 80186C5C 00183BBC 90 81 01 CC */ stw r4, 0x1cc(r1) +/* 80186C60 00183BC0 90 01 01 D0 */ stw r0, 0x1d0(r1) +/* 80186C64 00183BC4 4B EC CC 59 */ bl GetMaterialFilter__6CActorCFv +/* 80186C68 00183BC8 7C 6F 1B 78 */ mr r15, r3 +/* 80186C6C 00183BCC 7E 23 8B 78 */ mr r3, r17 +/* 80186C70 00183BD0 81 91 00 00 */ lwz r12, 0(r17) +/* 80186C74 00183BD4 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80186C78 00183BD8 7D 89 03 A6 */ mtctr r12 +/* 80186C7C 00183BDC 4E 80 04 21 */ bctrl +/* 80186C80 00183BE0 93 C1 00 08 */ stw r30, 8(r1) +/* 80186C84 00183BE4 7C 65 1B 78 */ mr r5, r3 +/* 80186C88 00183BE8 7E 03 83 78 */ mr r3, r16 +/* 80186C8C 00183BEC 7D E7 7B 78 */ mr r7, r15 +/* 80186C90 00183BF0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80186C94 00183BF4 38 81 16 50 */ addi r4, r1, 0x1650 +/* 80186C98 00183BF8 38 D1 00 34 */ addi r6, r17, 0x34 +/* 80186C9C 00183BFC 39 01 31 94 */ addi r8, r1, 0x3194 +/* 80186CA0 00183C00 39 21 01 C8 */ addi r9, r1, 0x1c8 +/* 80186CA4 00183C04 39 41 00 38 */ addi r10, r1, 0x38 +/* 80186CA8 00183C08 4B FF D6 45 */ bl "DetectCollision_Cached_Moving__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>9CVector3fR9TUniqueIdR14CCollisionInfoRd" +/* 80186CAC 00183C0C 88 01 06 88 */ lbz r0, 0x688(r1) +/* 80186CB0 00183C10 28 00 00 00 */ cmplwi r0, 0 +/* 80186CB4 00183C14 41 82 00 38 */ beq lbl_80186CEC +/* 80186CB8 00183C18 C8 41 00 98 */ lfd f2, 0x98(r1) +/* 80186CBC 00183C1C C0 21 06 D8 */ lfs f1, 0x6d8(r1) +/* 80186CC0 00183C20 C8 0D 8E C0 */ lfd f0, lbl_805A7A80@sda21(r13) +/* 80186CC4 00183C24 FC 22 08 28 */ fsub f1, f2, f1 +/* 80186CC8 00183C28 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80186CCC 00183C2C D8 21 00 70 */ stfd f1, 0x70(r1) +/* 80186CD0 00183C30 40 80 00 0C */ bge lbl_80186CDC +/* 80186CD4 00183C34 38 61 00 70 */ addi r3, r1, 0x70 +/* 80186CD8 00183C38 48 00 00 08 */ b lbl_80186CE0 +lbl_80186CDC: +/* 80186CDC 00183C3C 38 6D 8E C0 */ addi r3, r13, lbl_805A7A80@sda21 +lbl_80186CE0: +/* 80186CE0 00183C40 C8 03 00 00 */ lfd f0, 0(r3) +/* 80186CE4 00183C44 3A 60 00 01 */ li r19, 1 +/* 80186CE8 00183C48 D8 01 00 98 */ stfd f0, 0x98(r1) +lbl_80186CEC: +/* 80186CEC 00183C4C C8 01 00 98 */ lfd f0, 0x98(r1) +/* 80186CF0 00183C50 FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 80186CF4 00183C54 40 81 03 38 */ ble lbl_8018702C +/* 80186CF8 00183C58 FC 00 00 18 */ frsp f0, f0 +/* 80186CFC 00183C5C C0 D1 00 60 */ lfs f6, 0x60(r17) +/* 80186D00 00183C60 C0 B1 00 50 */ lfs f5, 0x50(r17) +/* 80186D04 00183C64 7E 23 8B 78 */ mr r3, r17 +/* 80186D08 00183C68 C0 51 00 40 */ lfs f2, 0x40(r17) +/* 80186D0C 00183C6C 38 81 01 B0 */ addi r4, r1, 0x1b0 +/* 80186D10 00183C70 C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) +/* 80186D14 00183C74 EC 66 00 2A */ fadds f3, f6, f0 +/* 80186D18 00183C78 D0 41 01 A4 */ stfs f2, 0x1a4(r1) +/* 80186D1C 00183C7C EC 85 08 2A */ fadds f4, f5, f1 +/* 80186D20 00183C80 EC 02 08 2A */ fadds f0, f2, f1 +/* 80186D24 00183C84 D0 A1 01 A8 */ stfs f5, 0x1a8(r1) +/* 80186D28 00183C88 D0 C1 01 AC */ stfs f6, 0x1ac(r1) +/* 80186D2C 00183C8C D0 01 01 B0 */ stfs f0, 0x1b0(r1) +/* 80186D30 00183C90 D0 81 01 B4 */ stfs f4, 0x1b4(r1) +/* 80186D34 00183C94 D0 61 01 B8 */ stfs f3, 0x1b8(r1) +/* 80186D38 00183C98 4B EC C1 55 */ bl SetTranslation__6CActorFRC9CVector3f +/* 80186D3C 00183C9C 38 00 00 00 */ li r0, 0 +/* 80186D40 00183CA0 FC 20 B8 90 */ fmr f1, f23 +/* 80186D44 00183CA4 98 01 05 E4 */ stb r0, 0x5e4(r1) +/* 80186D48 00183CA8 7E 04 83 78 */ mr r4, r16 +/* 80186D4C 00183CAC 7E 25 8B 78 */ mr r5, r17 +/* 80186D50 00183CB0 38 61 00 68 */ addi r3, r1, 0x68 +/* 80186D54 00183CB4 98 01 06 48 */ stb r0, 0x648(r1) +/* 80186D58 00183CB8 38 C1 31 94 */ addi r6, r1, 0x3194 +/* 80186D5C 00183CBC 38 E1 16 50 */ addi r7, r1, 0x1650 +/* 80186D60 00183CC0 39 01 06 B8 */ addi r8, r1, 0x6b8 +/* 80186D64 00183CC4 39 21 05 E0 */ addi r9, r1, 0x5e0 +/* 80186D68 00183CC8 4B FF EC A9 */ bl "MoveObjectAnalytical__15CGroundMovementFR13CStateManagerR13CPhysicsActorfRCQ24rstl32reserved_vector<9TUniqueId,1024>R19CAreaCollisionCacheRfRCQ215CGroundMovement16SMovementOptions" +/* 80186D6C 00183CCC 83 61 00 68 */ lwz r27, 0x68(r1) +/* 80186D70 00183CD0 38 61 05 80 */ addi r3, r1, 0x580 +/* 80186D74 00183CD4 83 41 00 6C */ lwz r26, 0x6c(r1) +/* 80186D78 00183CD8 38 80 00 00 */ li r4, 0 +/* 80186D7C 00183CDC 48 14 74 0D */ bl __ct__14CCollisionInfoFQ214CCollisionInfo8EInvalid +/* 80186D80 00183CE0 C8 01 00 98 */ lfd f0, 0x98(r1) +/* 80186D84 00183CE4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80186D88 00183CE8 FC 20 E0 2A */ fadd f1, f0, f28 +/* 80186D8C 00183CEC C8 02 A3 50 */ lfd f0, lbl_805AC070@sda21(r2) +/* 80186D90 00183CF0 B0 01 00 34 */ sth r0, 0x34(r1) +/* 80186D94 00183CF4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80186D98 00183CF8 D8 21 00 90 */ stfd f1, 0x90(r1) +/* 80186D9C 00183CFC 40 81 00 88 */ ble lbl_80186E24 +/* 80186DA0 00183D00 C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) +/* 80186DA4 00183D04 7E 23 8B 78 */ mr r3, r17 +/* 80186DA8 00183D08 C0 02 A3 58 */ lfs f0, lbl_805AC078@sda21(r2) +/* 80186DAC 00183D0C D0 21 01 8C */ stfs f1, 0x18c(r1) +/* 80186DB0 00183D10 D0 21 01 90 */ stfs f1, 0x190(r1) +/* 80186DB4 00183D14 80 A1 01 8C */ lwz r5, 0x18c(r1) +/* 80186DB8 00183D18 D0 01 01 94 */ stfs f0, 0x194(r1) +/* 80186DBC 00183D1C 80 81 01 90 */ lwz r4, 0x190(r1) +/* 80186DC0 00183D20 80 01 01 94 */ lwz r0, 0x194(r1) +/* 80186DC4 00183D24 90 A1 01 98 */ stw r5, 0x198(r1) +/* 80186DC8 00183D28 90 81 01 9C */ stw r4, 0x19c(r1) +/* 80186DCC 00183D2C 90 01 01 A0 */ stw r0, 0x1a0(r1) +/* 80186DD0 00183D30 4B EC CA ED */ bl GetMaterialFilter__6CActorCFv +/* 80186DD4 00183D34 7C 6F 1B 78 */ mr r15, r3 +/* 80186DD8 00183D38 7E 23 8B 78 */ mr r3, r17 +/* 80186DDC 00183D3C 81 91 00 00 */ lwz r12, 0(r17) +/* 80186DE0 00183D40 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80186DE4 00183D44 7D 89 03 A6 */ mtctr r12 +/* 80186DE8 00183D48 4E 80 04 21 */ bctrl +/* 80186DEC 00183D4C 38 01 05 80 */ addi r0, r1, 0x580 +/* 80186DF0 00183D50 7C 65 1B 78 */ mr r5, r3 +/* 80186DF4 00183D54 90 01 00 08 */ stw r0, 8(r1) +/* 80186DF8 00183D58 38 01 00 90 */ addi r0, r1, 0x90 +/* 80186DFC 00183D5C 7E 03 83 78 */ mr r3, r16 +/* 80186E00 00183D60 7D E7 7B 78 */ mr r7, r15 +/* 80186E04 00183D64 90 01 00 0C */ stw r0, 0xc(r1) +/* 80186E08 00183D68 38 81 16 50 */ addi r4, r1, 0x1650 +/* 80186E0C 00183D6C 38 D1 00 34 */ addi r6, r17, 0x34 +/* 80186E10 00183D70 39 01 31 94 */ addi r8, r1, 0x3194 +/* 80186E14 00183D74 39 21 01 98 */ addi r9, r1, 0x198 +/* 80186E18 00183D78 39 41 00 34 */ addi r10, r1, 0x34 +/* 80186E1C 00183D7C 4B FF D4 D1 */ bl "DetectCollision_Cached_Moving__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>9CVector3fR9TUniqueIdR14CCollisionInfoRd" +/* 80186E20 00183D80 48 00 00 08 */ b lbl_80186E28 +lbl_80186E24: +/* 80186E24 00183D84 D8 01 00 90 */ stfd f0, 0x90(r1) +lbl_80186E28: +/* 80186E28 00183D88 C8 21 00 98 */ lfd f1, 0x98(r1) +/* 80186E2C 00183D8C C8 01 00 90 */ lfd f0, 0x90(r1) +/* 80186E30 00183D90 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80186E34 00183D94 40 80 00 0C */ bge lbl_80186E40 +/* 80186E38 00183D98 38 61 00 98 */ addi r3, r1, 0x98 +/* 80186E3C 00183D9C 48 00 00 08 */ b lbl_80186E44 +lbl_80186E40: +/* 80186E40 00183DA0 38 61 00 90 */ addi r3, r1, 0x90 +lbl_80186E44: +/* 80186E44 00183DA4 C8 83 00 00 */ lfd f4, 0(r3) +/* 80186E48 00183DA8 39 E0 00 00 */ li r15, 0 +/* 80186E4C 00183DAC 88 01 05 B0 */ lbz r0, 0x5b0(r1) +/* 80186E50 00183DB0 FC 80 20 18 */ frsp f4, f4 +/* 80186E54 00183DB4 C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) +/* 80186E58 00183DB8 C0 02 A3 10 */ lfs f0, lbl_805AC030@sda21(r2) +/* 80186E5C 00183DBC 28 00 00 00 */ cmplwi r0, 0 +/* 80186E60 00183DC0 C0 71 00 40 */ lfs f3, 0x40(r17) +/* 80186E64 00183DC4 EC A4 00 72 */ fmuls f5, f4, f1 +/* 80186E68 00183DC8 C0 51 00 50 */ lfs f2, 0x50(r17) +/* 80186E6C 00183DCC EC 04 00 32 */ fmuls f0, f4, f0 +/* 80186E70 00183DD0 C0 31 00 60 */ lfs f1, 0x60(r17) +/* 80186E74 00183DD4 EE A3 28 28 */ fsubs f21, f3, f5 +/* 80186E78 00183DD8 EE C2 28 28 */ fsubs f22, f2, f5 +/* 80186E7C 00183DDC EF 41 00 28 */ fsubs f26, f1, f0 +/* 80186E80 00183DE0 41 82 00 1C */ beq lbl_80186E9C +/* 80186E84 00183DE4 7F 03 C3 78 */ mr r3, r24 +/* 80186E88 00183DE8 7F 24 CB 78 */ mr r4, r25 +/* 80186E8C 00183DEC 4B FF B9 7D */ bl CanBlock__14CGameCollisionFRC13CMaterialListRC9CVector3f +/* 80186E90 00183DF0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80186E94 00183DF4 41 82 00 08 */ beq lbl_80186E9C +/* 80186E98 00183DF8 39 E0 00 01 */ li r15, 1 +lbl_80186E9C: +/* 80186E9C 00183DFC C0 01 07 74 */ lfs f0, 0x774(r1) +/* 80186EA0 00183E00 55 E0 06 3F */ clrlwi. r0, r15, 0x18 +/* 80186EA4 00183E04 C0 41 07 78 */ lfs f2, 0x778(r1) +/* 80186EA8 00183E08 EC 60 A8 28 */ fsubs f3, f0, f21 +/* 80186EAC 00183E0C C0 81 07 7C */ lfs f4, 0x77c(r1) +/* 80186EB0 00183E10 EC C2 B0 28 */ fsubs f6, f2, f22 +/* 80186EB4 00183E14 D0 01 01 74 */ stfs f0, 0x174(r1) +/* 80186EB8 00183E18 EC A4 D0 28 */ fsubs f5, f4, f26 +/* 80186EBC 00183E1C EC 23 00 F2 */ fmuls f1, f3, f3 +/* 80186EC0 00183E20 EC 06 01 B2 */ fmuls f0, f6, f6 +/* 80186EC4 00183E24 D0 41 01 78 */ stfs f2, 0x178(r1) +/* 80186EC8 00183E28 EC 45 01 72 */ fmuls f2, f5, f5 +/* 80186ECC 00183E2C D0 81 01 7C */ stfs f4, 0x17c(r1) +/* 80186ED0 00183E30 EC 01 00 2A */ fadds f0, f1, f0 +/* 80186ED4 00183E34 D0 61 01 80 */ stfs f3, 0x180(r1) +/* 80186ED8 00183E38 EF 42 00 2A */ fadds f26, f2, f0 +/* 80186EDC 00183E3C D0 C1 01 84 */ stfs f6, 0x184(r1) +/* 80186EE0 00183E40 D0 A1 01 88 */ stfs f5, 0x188(r1) +/* 80186EE4 00183E44 41 82 01 30 */ beq lbl_80187014 +/* 80186EE8 00183E48 FC 1B D0 40 */ fcmpo cr0, f27, f26 +/* 80186EEC 00183E4C 40 80 01 28 */ bge lbl_80187014 +/* 80186EF0 00183E50 C8 41 00 90 */ lfd f2, 0x90(r1) +/* 80186EF4 00183E54 C8 22 A3 48 */ lfd f1, lbl_805AC068@sda21(r2) +/* 80186EF8 00183E58 C8 0D 8E C8 */ lfd f0, lbl_805A7A88@sda21(r13) +/* 80186EFC 00183E5C FC 22 08 28 */ fsub f1, f2, f1 +/* 80186F00 00183E60 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80186F04 00183E64 D8 21 00 60 */ stfd f1, 0x60(r1) +/* 80186F08 00183E68 40 80 00 0C */ bge lbl_80186F14 +/* 80186F0C 00183E6C 38 6D 8E C8 */ addi r3, r13, lbl_805A7A88@sda21 +/* 80186F10 00183E70 48 00 00 08 */ b lbl_80186F18 +lbl_80186F14: +/* 80186F14 00183E74 38 61 00 60 */ addi r3, r1, 0x60 +lbl_80186F18: +/* 80186F18 00183E78 C8 23 00 00 */ lfd f1, 0(r3) +/* 80186F1C 00183E7C 7E 23 8B 78 */ mr r3, r17 +/* 80186F20 00183E80 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) +/* 80186F24 00183E84 38 81 01 68 */ addi r4, r1, 0x168 +/* 80186F28 00183E88 FC 60 08 18 */ frsp f3, f1 +/* 80186F2C 00183E8C D8 21 00 90 */ stfd f1, 0x90(r1) +/* 80186F30 00183E90 C0 42 A3 10 */ lfs f2, lbl_805AC030@sda21(r2) +/* 80186F34 00183E94 C1 11 00 60 */ lfs f8, 0x60(r17) +/* 80186F38 00183E98 EC 83 00 32 */ fmuls f4, f3, f0 +/* 80186F3C 00183E9C C0 F1 00 50 */ lfs f7, 0x50(r17) +/* 80186F40 00183EA0 EC 63 00 B2 */ fmuls f3, f3, f2 +/* 80186F44 00183EA4 C0 31 00 40 */ lfs f1, 0x40(r17) +/* 80186F48 00183EA8 D0 01 01 44 */ stfs f0, 0x144(r1) +/* 80186F4C 00183EAC EC C7 20 28 */ fsubs f6, f7, f4 +/* 80186F50 00183EB0 EC A8 18 28 */ fsubs f5, f8, f3 +/* 80186F54 00183EB4 D0 01 01 48 */ stfs f0, 0x148(r1) +/* 80186F58 00183EB8 EC 01 20 28 */ fsubs f0, f1, f4 +/* 80186F5C 00183EBC D0 41 01 4C */ stfs f2, 0x14c(r1) +/* 80186F60 00183EC0 D0 81 01 50 */ stfs f4, 0x150(r1) +/* 80186F64 00183EC4 D0 81 01 54 */ stfs f4, 0x154(r1) +/* 80186F68 00183EC8 D0 61 01 58 */ stfs f3, 0x158(r1) +/* 80186F6C 00183ECC D0 21 01 5C */ stfs f1, 0x15c(r1) +/* 80186F70 00183ED0 D0 E1 01 60 */ stfs f7, 0x160(r1) +/* 80186F74 00183ED4 D1 01 01 64 */ stfs f8, 0x164(r1) +/* 80186F78 00183ED8 D0 01 01 68 */ stfs f0, 0x168(r1) +/* 80186F7C 00183EDC D0 C1 01 6C */ stfs f6, 0x16c(r1) +/* 80186F80 00183EE0 D0 A1 01 70 */ stfs f5, 0x170(r1) +/* 80186F84 00183EE4 4B EC BF 09 */ bl SetTranslation__6CActorFRC9CVector3f +/* 80186F88 00183EE8 7E 24 8B 78 */ mr r4, r17 +/* 80186F8C 00183EEC 38 61 03 34 */ addi r3, r1, 0x334 +/* 80186F90 00183EF0 4B F9 50 5D */ bl GetPhysicsState__13CPhysicsActorCFv +/* 80186F94 00183EF4 38 61 09 68 */ addi r3, r1, 0x968 +/* 80186F98 00183EF8 38 81 03 34 */ addi r4, r1, 0x334 +/* 80186F9C 00183EFC 48 00 0F 41 */ bl sub_80187edc +/* 80186FA0 00183F00 80 01 01 F8 */ lwz r0, 0x1f8(r1) +/* 80186FA4 00183F04 54 00 10 3A */ slwi r0, r0, 2 +/* 80186FA8 00183F08 7C 76 02 15 */ add. r3, r22, r0 +/* 80186FAC 00183F0C 41 82 00 08 */ beq lbl_80186FB4 +/* 80186FB0 00183F10 D3 43 00 00 */ stfs f26, 0(r3) +lbl_80186FB4: +/* 80186FB4 00183F14 80 A1 01 F8 */ lwz r5, 0x1f8(r1) +/* 80186FB8 00183F18 38 61 08 A4 */ addi r3, r1, 0x8a4 +/* 80186FBC 00183F1C 38 81 06 58 */ addi r4, r1, 0x658 +/* 80186FC0 00183F20 38 05 00 01 */ addi r0, r5, 1 +/* 80186FC4 00183F24 90 01 01 F8 */ stw r0, 0x1f8(r1) +/* 80186FC8 00183F28 48 00 0E CD */ bl sub_80187e94 +/* 80186FCC 00183F2C 80 01 00 A0 */ lwz r0, 0xa0(r1) +/* 80186FD0 00183F30 54 00 08 3C */ slwi r0, r0, 1 +/* 80186FD4 00183F34 7C 74 02 15 */ add. r3, r20, r0 +/* 80186FD8 00183F38 41 82 00 0C */ beq lbl_80186FE4 +/* 80186FDC 00183F3C A0 01 00 34 */ lhz r0, 0x34(r1) +/* 80186FE0 00183F40 B0 03 00 00 */ sth r0, 0(r3) +lbl_80186FE4: +/* 80186FE4 00183F44 80 01 02 40 */ lwz r0, 0x240(r1) +/* 80186FE8 00183F48 80 61 00 A0 */ lwz r3, 0xa0(r1) +/* 80186FEC 00183F4C 54 00 18 38 */ slwi r0, r0, 3 +/* 80186FF0 00183F50 38 63 00 01 */ addi r3, r3, 1 +/* 80186FF4 00183F54 7C 95 02 15 */ add. r4, r21, r0 +/* 80186FF8 00183F58 90 61 00 A0 */ stw r3, 0xa0(r1) +/* 80186FFC 00183F5C 41 82 00 0C */ beq lbl_80187008 +/* 80187000 00183F60 93 44 00 04 */ stw r26, 4(r4) +/* 80187004 00183F64 93 64 00 00 */ stw r27, 0(r4) +lbl_80187008: +/* 80187008 00183F68 80 61 02 40 */ lwz r3, 0x240(r1) +/* 8018700C 00183F6C 38 03 00 01 */ addi r0, r3, 1 +/* 80187010 00183F70 90 01 02 40 */ stw r0, 0x240(r1) +lbl_80187014: +/* 80187014 00183F74 28 17 00 00 */ cmplwi r23, 0 +/* 80187018 00183F78 41 82 00 0C */ beq lbl_80187024 +/* 8018701C 00183F7C 38 00 00 00 */ li r0, 0 +/* 80187020 00183F80 98 01 06 48 */ stb r0, 0x648(r1) +lbl_80187024: +/* 80187024 00183F84 38 00 00 00 */ li r0, 0 +/* 80187028 00183F88 98 01 05 E4 */ stb r0, 0x5e4(r1) +lbl_8018702C: +/* 8018702C 00183F8C 3A 52 00 01 */ addi r18, r18, 1 +lbl_80187030: +/* 80187030 00183F90 2C 12 00 02 */ cmpwi r18, 2 +/* 80187034 00183F94 40 80 00 0C */ bge lbl_80187040 +/* 80187038 00183F98 56 60 06 3F */ clrlwi. r0, r19, 0x18 +/* 8018703C 00183F9C 41 82 FB C8 */ beq lbl_80186C04 +lbl_80187040: +/* 80187040 00183FA0 80 01 09 68 */ lwz r0, 0x968(r1) +/* 80187044 00183FA4 2C 00 00 00 */ cmpwi r0, 0 +/* 80187048 00183FA8 40 82 00 1C */ bne lbl_80187064 +/* 8018704C 00183FAC 7E 23 8B 78 */ mr r3, r17 +/* 80187050 00183FB0 38 81 07 04 */ addi r4, r1, 0x704 +/* 80187054 00183FB4 4B F9 4D D1 */ bl SetPhysicsState__13CPhysicsActorFRC13CPhysicsState +/* 80187058 00183FB8 7F 92 E3 78 */ mr r18, r28 +/* 8018705C 00183FBC 7D CF 73 78 */ mr r15, r14 +/* 80187060 00183FC0 48 00 01 E0 */ b lbl_80187240 +lbl_80187064: +/* 80187064 00183FC4 C0 22 A3 5C */ lfs f1, lbl_805AC07C@sda21(r2) +/* 80187068 00183FC8 39 C0 FF FF */ li r14, -1 +/* 8018706C 00183FCC 38 60 00 00 */ li r3, 0 +/* 80187070 00183FD0 7C 09 03 A6 */ mtctr r0 +/* 80187074 00183FD4 40 81 00 24 */ ble lbl_80187098 +lbl_80187078: +/* 80187078 00183FD8 C0 16 00 00 */ lfs f0, 0(r22) +/* 8018707C 00183FDC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80187080 00183FE0 40 80 00 0C */ bge lbl_8018708C +/* 80187084 00183FE4 FC 20 00 90 */ fmr f1, f0 +/* 80187088 00183FE8 7C 6E 1B 78 */ mr r14, r3 +lbl_8018708C: +/* 8018708C 00183FEC 3A D6 00 04 */ addi r22, r22, 4 +/* 80187090 00183FF0 38 63 00 01 */ addi r3, r3, 1 +/* 80187094 00183FF4 42 00 FF E4 */ bdnz lbl_80187078 +lbl_80187098: +/* 80187098 00183FF8 1C 0E 00 70 */ mulli r0, r14, 0x70 +/* 8018709C 00183FFC 38 81 09 6C */ addi r4, r1, 0x96c +/* 801870A0 00184000 7E 23 8B 78 */ mr r3, r17 +/* 801870A4 00184004 7C 84 02 14 */ add r4, r4, r0 +/* 801870A8 00184008 4B F9 4D 7D */ bl SetPhysicsState__13CPhysicsActorFRC13CPhysicsState +/* 801870AC 0018400C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801870B0 00184010 7E 03 83 78 */ mr r3, r16 +/* 801870B4 00184014 7E 24 8B 78 */ mr r4, r17 +/* 801870B8 00184018 38 A1 00 2C */ addi r5, r1, 0x2c +/* 801870BC 0018401C B0 01 00 2C */ sth r0, 0x2c(r1) +/* 801870C0 00184020 38 C0 00 17 */ li r6, 0x17 +/* 801870C4 00184024 4B EB CE 0D */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +/* 801870C8 00184028 55 D3 08 3C */ slwi r19, r14, 1 +/* 801870CC 0018402C 55 C3 18 38 */ slwi r3, r14, 3 +/* 801870D0 00184030 7C 14 9A 2E */ lhzx r0, r20, r19 +/* 801870D4 00184034 7E 55 1A 14 */ add r18, r21, r3 +/* 801870D8 00184038 81 F2 00 00 */ lwz r15, 0(r18) +/* 801870DC 0018403C 7E 03 83 78 */ mr r3, r16 +/* 801870E0 00184040 B0 01 00 28 */ sth r0, 0x28(r1) +/* 801870E4 00184044 38 81 00 28 */ addi r4, r1, 0x28 +/* 801870E8 00184048 82 52 00 04 */ lwz r18, 4(r18) +/* 801870EC 0018404C 4B EC 54 89 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801870F0 00184050 7C 75 1B 79 */ or. r21, r3, r3 +/* 801870F4 00184054 41 82 00 80 */ beq lbl_80187174 +/* 801870F8 00184058 88 01 08 34 */ lbz r0, 0x834(r1) +/* 801870FC 0018405C 28 00 00 00 */ cmplwi r0, 0 +/* 80187100 00184060 40 82 00 20 */ bne lbl_80187120 +/* 80187104 00184064 34 61 08 30 */ addic. r3, r1, 0x830 +/* 80187108 00184068 41 82 00 0C */ beq lbl_80187114 +/* 8018710C 0018406C 7C 14 9A 2E */ lhzx r0, r20, r19 +/* 80187110 00184070 B0 03 00 00 */ sth r0, 0(r3) +lbl_80187114: +/* 80187114 00184074 38 00 00 01 */ li r0, 1 +/* 80187118 00184078 98 01 08 34 */ stb r0, 0x834(r1) +/* 8018711C 0018407C 48 00 00 0C */ b lbl_80187128 +lbl_80187120: +/* 80187120 00184080 7C 14 9A 2E */ lhzx r0, r20, r19 +/* 80187124 00184084 B0 01 08 30 */ sth r0, 0x830(r1) +lbl_80187128: +/* 80187128 00184088 1C 0E 00 60 */ mulli r0, r14, 0x60 +/* 8018712C 0018408C 38 81 08 A8 */ addi r4, r1, 0x8a8 +/* 80187130 00184090 38 61 08 38 */ addi r3, r1, 0x838 +/* 80187134 00184094 7C 84 02 14 */ add r4, r4, r0 +/* 80187138 00184098 4B FF F1 C1 */ bl sub_801862f8 +/* 8018713C 0018409C 7E A4 AB 78 */ mr r4, r21 +/* 80187140 001840A0 38 61 00 58 */ addi r3, r1, 0x58 +/* 80187144 001840A4 4B F2 1C D1 */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" +/* 80187148 001840A8 80 03 00 04 */ lwz r0, 4(r3) +/* 8018714C 001840AC 28 00 00 00 */ cmplwi r0, 0 +/* 80187150 001840B0 41 82 00 24 */ beq lbl_80187174 +/* 80187154 001840B4 A0 11 00 08 */ lhz r0, 8(r17) +/* 80187158 001840B8 7E 03 83 78 */ mr r3, r16 +/* 8018715C 001840BC 7E A4 AB 78 */ mr r4, r21 +/* 80187160 001840C0 38 A1 00 24 */ addi r5, r1, 0x24 +/* 80187164 001840C4 B0 01 00 20 */ sth r0, 0x20(r1) +/* 80187168 001840C8 38 C0 00 1F */ li r6, 0x1f +/* 8018716C 001840CC B0 01 00 24 */ sth r0, 0x24(r1) +/* 80187170 001840D0 4B EB CD 61 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +lbl_80187174: +/* 80187174 001840D4 1C 0E 00 60 */ mulli r0, r14, 0x60 +/* 80187178 001840D8 39 C1 08 A8 */ addi r14, r1, 0x8a8 +/* 8018717C 001840DC 7E 03 83 78 */ mr r3, r16 +/* 80187180 001840E0 7E 25 8B 78 */ mr r5, r17 +/* 80187184 001840E4 7D CE 02 14 */ add r14, r14, r0 +/* 80187188 001840E8 38 8E 00 38 */ addi r4, r14, 0x38 +/* 8018718C 001840EC 4B FF B7 CD */ bl SendMaterialMessage__14CGameCollisionFR13CStateManagerRC13CMaterialListR6CActor +/* 80187190 001840F0 38 00 00 01 */ li r0, 1 +/* 80187194 001840F4 34 61 01 34 */ addic. r3, r1, 0x134 +/* 80187198 001840F8 98 01 01 40 */ stb r0, 0x140(r1) +/* 8018719C 001840FC 38 00 00 00 */ li r0, 0 +/* 801871A0 00184100 98 01 39 98 */ stb r0, 0x3998(r1) +/* 801871A4 00184104 41 82 00 1C */ beq lbl_801871C0 +/* 801871A8 00184108 C0 0E 00 48 */ lfs f0, 0x48(r14) +/* 801871AC 0018410C D0 03 00 00 */ stfs f0, 0(r3) +/* 801871B0 00184110 C0 0E 00 4C */ lfs f0, 0x4c(r14) +/* 801871B4 00184114 D0 03 00 04 */ stfs f0, 4(r3) +/* 801871B8 00184118 C0 0E 00 50 */ lfs f0, 0x50(r14) +/* 801871BC 0018411C D0 03 00 08 */ stfs f0, 8(r3) +lbl_801871C0: +/* 801871C0 00184120 38 71 02 28 */ addi r3, r17, 0x228 +/* 801871C4 00184124 38 01 01 34 */ addi r0, r1, 0x134 +/* 801871C8 00184128 7C 03 00 40 */ cmplw r3, r0 +/* 801871CC 0018412C 41 82 00 6C */ beq lbl_80187238 +/* 801871D0 00184130 88 01 01 40 */ lbz r0, 0x140(r1) +/* 801871D4 00184134 28 00 00 00 */ cmplwi r0, 0 +/* 801871D8 00184138 41 82 00 58 */ beq lbl_80187230 +/* 801871DC 0018413C 88 11 02 34 */ lbz r0, 0x234(r17) +/* 801871E0 00184140 28 00 00 00 */ cmplwi r0, 0 +/* 801871E4 00184144 40 82 00 30 */ bne lbl_80187214 +/* 801871E8 00184148 34 71 02 28 */ addic. r3, r17, 0x228 +/* 801871EC 0018414C 41 82 00 1C */ beq lbl_80187208 +/* 801871F0 00184150 C0 01 01 34 */ lfs f0, 0x134(r1) +/* 801871F4 00184154 D0 03 00 00 */ stfs f0, 0(r3) +/* 801871F8 00184158 C0 01 01 38 */ lfs f0, 0x138(r1) +/* 801871FC 0018415C D0 03 00 04 */ stfs f0, 4(r3) +/* 80187200 00184160 C0 01 01 3C */ lfs f0, 0x13c(r1) +/* 80187204 00184164 D0 03 00 08 */ stfs f0, 8(r3) +lbl_80187208: +/* 80187208 00184168 38 00 00 01 */ li r0, 1 +/* 8018720C 0018416C 98 11 02 34 */ stb r0, 0x234(r17) +/* 80187210 00184170 48 00 00 28 */ b lbl_80187238 +lbl_80187214: +/* 80187214 00184174 C0 01 01 34 */ lfs f0, 0x134(r1) +/* 80187218 00184178 D0 03 00 00 */ stfs f0, 0(r3) +/* 8018721C 0018417C C0 01 01 38 */ lfs f0, 0x138(r1) +/* 80187220 00184180 D0 03 00 04 */ stfs f0, 4(r3) +/* 80187224 00184184 C0 01 01 3C */ lfs f0, 0x13c(r1) +/* 80187228 00184188 D0 03 00 08 */ stfs f0, 8(r3) +/* 8018722C 0018418C 48 00 00 0C */ b lbl_80187238 +lbl_80187230: +/* 80187230 00184190 38 00 00 00 */ li r0, 0 +/* 80187234 00184194 98 11 02 34 */ stb r0, 0x234(r17) +lbl_80187238: +/* 80187238 00184198 38 00 00 00 */ li r0, 0 +/* 8018723C 0018419C 98 01 01 40 */ stb r0, 0x140(r1) +lbl_80187240: +/* 80187240 001841A0 80 A1 02 40 */ lwz r5, 0x240(r1) +/* 80187244 001841A4 38 60 00 00 */ li r3, 0 +/* 80187248 001841A8 2C 05 00 00 */ cmpwi r5, 0 +/* 8018724C 001841AC 40 81 00 40 */ ble lbl_8018728C +/* 80187250 001841B0 2C 05 00 08 */ cmpwi r5, 8 +/* 80187254 001841B4 38 85 FF F8 */ addi r4, r5, -8 +/* 80187258 001841B8 40 81 00 20 */ ble lbl_80187278 +/* 8018725C 001841BC 38 04 00 07 */ addi r0, r4, 7 +/* 80187260 001841C0 54 00 E8 FE */ srwi r0, r0, 3 +/* 80187264 001841C4 7C 09 03 A6 */ mtctr r0 +/* 80187268 001841C8 2C 04 00 00 */ cmpwi r4, 0 +/* 8018726C 001841CC 40 81 00 0C */ ble lbl_80187278 +lbl_80187270: +/* 80187270 001841D0 38 63 00 08 */ addi r3, r3, 8 +/* 80187274 001841D4 42 00 FF FC */ bdnz lbl_80187270 +lbl_80187278: +/* 80187278 001841D8 7C 03 28 50 */ subf r0, r3, r5 +/* 8018727C 001841DC 7C 09 03 A6 */ mtctr r0 +/* 80187280 001841E0 7C 03 28 00 */ cmpw r3, r5 +/* 80187284 001841E4 40 80 00 08 */ bge lbl_8018728C +lbl_80187288: +/* 80187288 001841E8 42 00 00 00 */ bdnz lbl_80187288 +lbl_8018728C: +/* 8018728C 001841EC 80 A1 00 A0 */ lwz r5, 0xa0(r1) +/* 80187290 001841F0 38 60 00 00 */ li r3, 0 +/* 80187294 001841F4 90 61 02 40 */ stw r3, 0x240(r1) +/* 80187298 001841F8 2C 05 00 00 */ cmpwi r5, 0 +/* 8018729C 001841FC 40 81 00 40 */ ble lbl_801872DC +/* 801872A0 00184200 2C 05 00 08 */ cmpwi r5, 8 +/* 801872A4 00184204 38 85 FF F8 */ addi r4, r5, -8 +/* 801872A8 00184208 40 81 00 20 */ ble lbl_801872C8 +/* 801872AC 0018420C 38 04 00 07 */ addi r0, r4, 7 +/* 801872B0 00184210 54 00 E8 FE */ srwi r0, r0, 3 +/* 801872B4 00184214 7C 09 03 A6 */ mtctr r0 +/* 801872B8 00184218 2C 04 00 00 */ cmpwi r4, 0 +/* 801872BC 0018421C 40 81 00 0C */ ble lbl_801872C8 +lbl_801872C0: +/* 801872C0 00184220 38 63 00 08 */ addi r3, r3, 8 +/* 801872C4 00184224 42 00 FF FC */ bdnz lbl_801872C0 +lbl_801872C8: +/* 801872C8 00184228 7C 03 28 50 */ subf r0, r3, r5 +/* 801872CC 0018422C 7C 09 03 A6 */ mtctr r0 +/* 801872D0 00184230 7C 03 28 00 */ cmpw r3, r5 +/* 801872D4 00184234 40 80 00 08 */ bge lbl_801872DC +lbl_801872D8: +/* 801872D8 00184238 42 00 00 00 */ bdnz lbl_801872D8 +lbl_801872DC: +/* 801872DC 0018423C 80 A1 08 A4 */ lwz r5, 0x8a4(r1) +/* 801872E0 00184240 38 60 00 00 */ li r3, 0 +/* 801872E4 00184244 90 61 00 A0 */ stw r3, 0xa0(r1) +/* 801872E8 00184248 2C 05 00 00 */ cmpwi r5, 0 +/* 801872EC 0018424C 40 81 00 40 */ ble lbl_8018732C +/* 801872F0 00184250 2C 05 00 08 */ cmpwi r5, 8 +/* 801872F4 00184254 38 85 FF F8 */ addi r4, r5, -8 +/* 801872F8 00184258 40 81 00 20 */ ble lbl_80187318 +/* 801872FC 0018425C 38 04 00 07 */ addi r0, r4, 7 +/* 80187300 00184260 54 00 E8 FE */ srwi r0, r0, 3 +/* 80187304 00184264 7C 09 03 A6 */ mtctr r0 +/* 80187308 00184268 2C 04 00 00 */ cmpwi r4, 0 +/* 8018730C 0018426C 40 81 00 0C */ ble lbl_80187318 +lbl_80187310: +/* 80187310 00184270 38 63 00 08 */ addi r3, r3, 8 +/* 80187314 00184274 42 00 FF FC */ bdnz lbl_80187310 +lbl_80187318: +/* 80187318 00184278 7C 03 28 50 */ subf r0, r3, r5 +/* 8018731C 0018427C 7C 09 03 A6 */ mtctr r0 +/* 80187320 00184280 7C 03 28 00 */ cmpw r3, r5 +/* 80187324 00184284 40 80 00 08 */ bge lbl_8018732C +lbl_80187328: +/* 80187328 00184288 42 00 00 00 */ bdnz lbl_80187328 +lbl_8018732C: +/* 8018732C 0018428C 80 A1 01 F8 */ lwz r5, 0x1f8(r1) +/* 80187330 00184290 38 60 00 00 */ li r3, 0 +/* 80187334 00184294 90 61 08 A4 */ stw r3, 0x8a4(r1) +/* 80187338 00184298 2C 05 00 00 */ cmpwi r5, 0 +/* 8018733C 0018429C 40 81 00 40 */ ble lbl_8018737C +/* 80187340 001842A0 2C 05 00 08 */ cmpwi r5, 8 +/* 80187344 001842A4 38 85 FF F8 */ addi r4, r5, -8 +/* 80187348 001842A8 40 81 00 20 */ ble lbl_80187368 +/* 8018734C 001842AC 38 04 00 07 */ addi r0, r4, 7 +/* 80187350 001842B0 54 00 E8 FE */ srwi r0, r0, 3 +/* 80187354 001842B4 7C 09 03 A6 */ mtctr r0 +/* 80187358 001842B8 2C 04 00 00 */ cmpwi r4, 0 +/* 8018735C 001842BC 40 81 00 0C */ ble lbl_80187368 +lbl_80187360: +/* 80187360 001842C0 38 63 00 08 */ addi r3, r3, 8 +/* 80187364 001842C4 42 00 FF FC */ bdnz lbl_80187360 +lbl_80187368: +/* 80187368 001842C8 7C 03 28 50 */ subf r0, r3, r5 +/* 8018736C 001842CC 7C 09 03 A6 */ mtctr r0 +/* 80187370 001842D0 7C 03 28 00 */ cmpw r3, r5 +/* 80187374 001842D4 40 80 00 08 */ bge lbl_8018737C +lbl_80187378: +/* 80187378 001842D8 42 00 00 00 */ bdnz lbl_80187378 +lbl_8018737C: +/* 8018737C 001842DC 80 A1 09 68 */ lwz r5, 0x968(r1) +/* 80187380 001842E0 38 60 00 00 */ li r3, 0 +/* 80187384 001842E4 90 61 01 F8 */ stw r3, 0x1f8(r1) +/* 80187388 001842E8 2C 05 00 00 */ cmpwi r5, 0 +/* 8018738C 001842EC 40 81 00 40 */ ble lbl_801873CC +/* 80187390 001842F0 2C 05 00 08 */ cmpwi r5, 8 +/* 80187394 001842F4 38 85 FF F8 */ addi r4, r5, -8 +/* 80187398 001842F8 40 81 00 20 */ ble lbl_801873B8 +/* 8018739C 001842FC 38 04 00 07 */ addi r0, r4, 7 +/* 801873A0 00184300 54 00 E8 FE */ srwi r0, r0, 3 +/* 801873A4 00184304 7C 09 03 A6 */ mtctr r0 +/* 801873A8 00184308 2C 04 00 00 */ cmpwi r4, 0 +/* 801873AC 0018430C 40 81 00 0C */ ble lbl_801873B8 +lbl_801873B0: +/* 801873B0 00184310 38 63 00 08 */ addi r3, r3, 8 +/* 801873B4 00184314 42 00 FF FC */ bdnz lbl_801873B0 +lbl_801873B8: +/* 801873B8 00184318 7C 03 28 50 */ subf r0, r3, r5 +/* 801873BC 0018431C 7C 09 03 A6 */ mtctr r0 +/* 801873C0 00184320 7C 03 28 00 */ cmpw r3, r5 +/* 801873C4 00184324 40 80 00 08 */ bge lbl_801873CC +lbl_801873C8: +/* 801873C8 00184328 42 00 00 00 */ bdnz lbl_801873C8 +lbl_801873CC: +/* 801873CC 0018432C 38 00 00 00 */ li r0, 0 +/* 801873D0 00184330 90 01 09 68 */ stw r0, 0x968(r1) +/* 801873D4 00184334 98 01 07 00 */ stb r0, 0x700(r1) +lbl_801873D8: +/* 801873D8 00184338 34 01 08 20 */ addic. r0, r1, 0x820 +/* 801873DC 0018433C 41 82 01 28 */ beq lbl_80187504 +/* 801873E0 00184340 38 00 00 00 */ li r0, 0 +/* 801873E4 00184344 98 01 08 2C */ stb r0, 0x82c(r1) +/* 801873E8 00184348 48 00 01 1C */ b lbl_80187504 +lbl_801873EC: +/* 801873EC 0018434C 38 60 00 01 */ li r3, 1 +/* 801873F0 00184350 55 C0 06 3F */ clrlwi. r0, r14, 0x18 +/* 801873F4 00184354 98 A1 05 78 */ stb r5, 0x578(r1) +/* 801873F8 00184358 98 61 05 30 */ stb r3, 0x530(r1) +/* 801873FC 0018435C 41 82 00 0C */ beq lbl_80187408 +/* 80187400 00184360 C0 02 A3 60 */ lfs f0, lbl_805AC080@sda21(r2) +/* 80187404 00184364 48 00 00 08 */ b lbl_8018740C +lbl_80187408: +/* 80187408 00184368 C0 02 A3 10 */ lfs f0, lbl_805AC030@sda21(r2) +lbl_8018740C: +/* 8018740C 0018436C 55 C0 06 3F */ clrlwi. r0, r14, 0x18 +/* 80187410 00184370 D0 01 05 34 */ stfs f0, 0x534(r1) +/* 80187414 00184374 41 82 00 0C */ beq lbl_80187420 +/* 80187418 00184378 C0 02 A3 64 */ lfs f0, lbl_805AC084@sda21(r2) +/* 8018741C 0018437C 48 00 00 08 */ b lbl_80187424 +lbl_80187420: +/* 80187420 00184380 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) +lbl_80187424: +/* 80187424 00184384 55 C0 06 3F */ clrlwi. r0, r14, 0x18 +/* 80187428 00184388 D0 01 05 38 */ stfs f0, 0x538(r1) +/* 8018742C 0018438C 41 82 00 0C */ beq lbl_80187438 +/* 80187430 00184390 C0 02 A3 68 */ lfs f0, lbl_805AC088@sda21(r2) +/* 80187434 00184394 48 00 00 08 */ b lbl_8018743C +lbl_80187438: +/* 80187438 00184398 C0 02 A3 30 */ lfs f0, lbl_805AC050@sda21(r2) +lbl_8018743C: +/* 8018743C 0018439C 55 C0 06 3F */ clrlwi. r0, r14, 0x18 +/* 80187440 001843A0 D0 01 05 3C */ stfs f0, 0x53c(r1) +/* 80187444 001843A4 41 82 00 0C */ beq lbl_80187450 +/* 80187448 001843A8 C0 02 A3 28 */ lfs f0, lbl_805AC048@sda21(r2) +/* 8018744C 001843AC 48 00 00 08 */ b lbl_80187454 +lbl_80187450: +/* 80187450 001843B0 C0 02 A3 34 */ lfs f0, lbl_805AC054@sda21(r2) +lbl_80187454: +/* 80187454 001843B4 55 C0 06 3F */ clrlwi. r0, r14, 0x18 +/* 80187458 001843B8 D0 01 05 40 */ stfs f0, 0x540(r1) +/* 8018745C 001843BC 41 82 00 0C */ beq lbl_80187468 +/* 80187460 001843C0 C0 82 A3 40 */ lfs f4, lbl_805AC060@sda21(r2) +/* 80187464 001843C4 48 00 00 08 */ b lbl_8018746C +lbl_80187468: +/* 80187468 001843C8 C0 82 A3 18 */ lfs f4, lbl_805AC038@sda21(r2) +lbl_8018746C: +/* 8018746C 001843CC C0 62 A3 38 */ lfs f3, lbl_805AC058@sda21(r2) +/* 80187470 001843D0 38 80 00 00 */ li r4, 0 +/* 80187474 001843D4 C0 42 A3 18 */ lfs f2, lbl_805AC038@sda21(r2) +/* 80187478 001843D8 38 60 00 04 */ li r3, 4 +/* 8018747C 001843DC C0 22 A3 10 */ lfs f1, lbl_805AC030@sda21(r2) +/* 80187480 001843E0 55 C0 06 3F */ clrlwi. r0, r14, 0x18 +/* 80187484 001843E4 C0 02 A3 6C */ lfs f0, lbl_805AC08C@sda21(r2) +/* 80187488 001843E8 D0 81 05 44 */ stfs f4, 0x544(r1) +/* 8018748C 001843EC 98 81 05 48 */ stb r4, 0x548(r1) +/* 80187490 001843F0 98 81 05 49 */ stb r4, 0x549(r1) +/* 80187494 001843F4 98 81 05 4A */ stb r4, 0x54a(r1) +/* 80187498 001843F8 90 61 05 4C */ stw r3, 0x54c(r1) +/* 8018749C 001843FC D0 61 05 50 */ stfs f3, 0x550(r1) +/* 801874A0 00184400 D0 41 05 54 */ stfs f2, 0x554(r1) +/* 801874A4 00184404 D0 21 05 58 */ stfs f1, 0x558(r1) +/* 801874A8 00184408 D0 01 05 5C */ stfs f0, 0x55c(r1) +/* 801874AC 0018440C 41 82 00 0C */ beq lbl_801874B8 +/* 801874B0 00184410 C0 02 A3 40 */ lfs f0, lbl_805AC060@sda21(r2) +/* 801874B4 00184414 48 00 00 08 */ b lbl_801874BC +lbl_801874B8: +/* 801874B8 00184418 C0 02 A3 40 */ lfs f0, lbl_805AC060@sda21(r2) +lbl_801874BC: +/* 801874BC 0018441C D0 01 05 60 */ stfs f0, 0x560(r1) +/* 801874C0 00184420 7F A3 EB 78 */ mr r3, r29 +/* 801874C4 00184424 7E 04 83 78 */ mr r4, r16 +/* 801874C8 00184428 4B E8 D6 79 */ bl GetMaximumPlayerPositiveVerticalVelocity__7CPlayerCFRC13CStateManager +/* 801874CC 0018442C D0 21 05 68 */ stfs f1, 0x568(r1) +/* 801874D0 00184430 FC 20 B8 90 */ fmr f1, f23 +/* 801874D4 00184434 7E 04 83 78 */ mr r4, r16 +/* 801874D8 00184438 7E 25 8B 78 */ mr r5, r17 +/* 801874DC 0018443C 38 61 00 50 */ addi r3, r1, 0x50 +/* 801874E0 00184440 38 C1 31 94 */ addi r6, r1, 0x3194 +/* 801874E4 00184444 38 E1 16 50 */ addi r7, r1, 0x1650 +/* 801874E8 00184448 39 01 05 30 */ addi r8, r1, 0x530 +/* 801874EC 0018444C 39 21 08 30 */ addi r9, r1, 0x830 +/* 801874F0 00184450 4B FF E5 21 */ bl "MoveObjectAnalytical__15CGroundMovementFR13CStateManagerR13CPhysicsActorfRCQ24rstl32reserved_vector<9TUniqueId,1024>R19CAreaCollisionCacheRfRCQ215CGroundMovement16SMovementOptions" +/* 801874F4 00184454 38 00 00 00 */ li r0, 0 +/* 801874F8 00184458 81 E1 00 50 */ lwz r15, 0x50(r1) +/* 801874FC 0018445C 98 01 05 78 */ stb r0, 0x578(r1) +/* 80187500 00184460 82 41 00 54 */ lwz r18, 0x54(r1) +lbl_80187504: +/* 80187504 00184464 88 01 39 98 */ lbz r0, 0x3998(r1) +/* 80187508 00184468 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8018750C 0018446C 41 82 04 8C */ beq lbl_80187998 +/* 80187510 00184470 38 61 04 D0 */ addi r3, r1, 0x4d0 +/* 80187514 00184474 38 80 00 00 */ li r4, 0 +/* 80187518 00184478 48 14 6C 71 */ bl __ct__14CCollisionInfoFQ214CCollisionInfo8EInvalid +/* 8018751C 0018447C 7E 23 8B 78 */ mr r3, r17 +/* 80187520 00184480 81 91 00 00 */ lwz r12, 0(r17) +/* 80187524 00184484 81 8C 00 78 */ lwz r12, 0x78(r12) +/* 80187528 00184488 7D 89 03 A6 */ mtctr r12 +/* 8018752C 0018448C 4E 80 04 21 */ bctrl +/* 80187530 00184490 C8 02 A3 70 */ lfd f0, lbl_805AC090@sda21(r2) +/* 80187534 00184494 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80187538 00184498 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018753C 0018449C D8 21 00 88 */ stfd f1, 0x88(r1) +/* 80187540 001844A0 C3 02 A3 18 */ lfs f24, lbl_805AC038@sda21(r2) +/* 80187544 001844A4 B0 01 00 30 */ sth r0, 0x30(r1) +/* 80187548 001844A8 40 81 01 38 */ ble lbl_80187680 +/* 8018754C 001844AC 38 61 03 04 */ addi r3, r1, 0x304 +/* 80187550 001844B0 38 91 00 34 */ addi r4, r17, 0x34 +/* 80187554 001844B4 48 18 B6 21 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80187558 001844B8 C0 61 03 30 */ lfs f3, 0x330(r1) +/* 8018755C 001844BC 7E 23 8B 78 */ mr r3, r17 +/* 80187560 001844C0 C0 02 A3 78 */ lfs f0, lbl_805AC098@sda21(r2) +/* 80187564 001844C4 C0 21 03 20 */ lfs f1, 0x320(r1) +/* 80187568 001844C8 C0 42 A3 18 */ lfs f2, lbl_805AC038@sda21(r2) +/* 8018756C 001844CC EC 03 00 2A */ fadds f0, f3, f0 +/* 80187570 001844D0 C0 61 03 10 */ lfs f3, 0x310(r1) +/* 80187574 001844D4 EC 21 10 2A */ fadds f1, f1, f2 +/* 80187578 001844D8 EC 43 10 2A */ fadds f2, f3, f2 +/* 8018757C 001844DC D0 01 03 30 */ stfs f0, 0x330(r1) +/* 80187580 001844E0 D0 21 03 20 */ stfs f1, 0x320(r1) +/* 80187584 001844E4 D0 41 03 10 */ stfs f2, 0x310(r1) +/* 80187588 001844E8 4B EC C3 35 */ bl GetMaterialFilter__6CActorCFv +/* 8018758C 001844EC 7C 6E 1B 78 */ mr r14, r3 +/* 80187590 001844F0 7E 23 8B 78 */ mr r3, r17 +/* 80187594 001844F4 81 91 00 00 */ lwz r12, 0(r17) +/* 80187598 001844F8 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 8018759C 001844FC 7D 89 03 A6 */ mtctr r12 +/* 801875A0 00184500 4E 80 04 21 */ bctrl +/* 801875A4 00184504 7C 65 1B 78 */ mr r5, r3 +/* 801875A8 00184508 7E 03 83 78 */ mr r3, r16 +/* 801875AC 0018450C 7D C7 73 78 */ mr r7, r14 +/* 801875B0 00184510 38 81 16 50 */ addi r4, r1, 0x1650 +/* 801875B4 00184514 38 C1 03 04 */ addi r6, r1, 0x304 +/* 801875B8 00184518 39 01 31 94 */ addi r8, r1, 0x3194 +/* 801875BC 0018451C 4B FF CF A9 */ bl "DetectCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 801875C0 00184520 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801875C4 00184524 40 82 00 3C */ bne lbl_80187600 +/* 801875C8 00184528 C0 41 03 10 */ lfs f2, 0x310(r1) +/* 801875CC 0018452C 7E 23 8B 78 */ mr r3, r17 +/* 801875D0 00184530 C0 21 03 20 */ lfs f1, 0x320(r1) +/* 801875D4 00184534 38 81 01 28 */ addi r4, r1, 0x128 +/* 801875D8 00184538 C0 01 03 30 */ lfs f0, 0x330(r1) +/* 801875DC 0018453C D0 41 01 28 */ stfs f2, 0x128(r1) +/* 801875E0 00184540 C3 02 A3 78 */ lfs f24, lbl_805AC098@sda21(r2) +/* 801875E4 00184544 D0 21 01 2C */ stfs f1, 0x12c(r1) +/* 801875E8 00184548 D0 01 01 30 */ stfs f0, 0x130(r1) +/* 801875EC 0018454C 4B EC B8 A1 */ bl SetTranslation__6CActorFRC9CVector3f +/* 801875F0 00184550 C8 21 00 88 */ lfd f1, 0x88(r1) +/* 801875F4 00184554 C0 02 A3 78 */ lfs f0, lbl_805AC098@sda21(r2) +/* 801875F8 00184558 FC 01 00 2A */ fadd f0, f1, f0 +/* 801875FC 0018455C D8 01 00 88 */ stfd f0, 0x88(r1) +lbl_80187600: +/* 80187600 00184560 C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) +/* 80187604 00184564 7E 23 8B 78 */ mr r3, r17 +/* 80187608 00184568 C0 02 A3 58 */ lfs f0, lbl_805AC078@sda21(r2) +/* 8018760C 0018456C D0 21 01 10 */ stfs f1, 0x110(r1) +/* 80187610 00184570 D0 21 01 14 */ stfs f1, 0x114(r1) +/* 80187614 00184574 80 A1 01 10 */ lwz r5, 0x110(r1) +/* 80187618 00184578 D0 01 01 18 */ stfs f0, 0x118(r1) +/* 8018761C 0018457C 80 81 01 14 */ lwz r4, 0x114(r1) +/* 80187620 00184580 80 01 01 18 */ lwz r0, 0x118(r1) +/* 80187624 00184584 90 A1 01 1C */ stw r5, 0x11c(r1) +/* 80187628 00184588 90 81 01 20 */ stw r4, 0x120(r1) +/* 8018762C 0018458C 90 01 01 24 */ stw r0, 0x124(r1) +/* 80187630 00184590 4B EC C2 8D */ bl GetMaterialFilter__6CActorCFv +/* 80187634 00184594 7C 6E 1B 78 */ mr r14, r3 +/* 80187638 00184598 7E 23 8B 78 */ mr r3, r17 +/* 8018763C 0018459C 81 91 00 00 */ lwz r12, 0(r17) +/* 80187640 001845A0 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80187644 001845A4 7D 89 03 A6 */ mtctr r12 +/* 80187648 001845A8 4E 80 04 21 */ bctrl +/* 8018764C 001845AC 38 01 04 D0 */ addi r0, r1, 0x4d0 +/* 80187650 001845B0 7C 65 1B 78 */ mr r5, r3 +/* 80187654 001845B4 90 01 00 08 */ stw r0, 8(r1) +/* 80187658 001845B8 38 01 00 88 */ addi r0, r1, 0x88 +/* 8018765C 001845BC 7E 03 83 78 */ mr r3, r16 +/* 80187660 001845C0 7D C7 73 78 */ mr r7, r14 +/* 80187664 001845C4 90 01 00 0C */ stw r0, 0xc(r1) +/* 80187668 001845C8 38 81 16 50 */ addi r4, r1, 0x1650 +/* 8018766C 001845CC 38 D1 00 34 */ addi r6, r17, 0x34 +/* 80187670 001845D0 39 01 31 94 */ addi r8, r1, 0x3194 +/* 80187674 001845D4 39 21 01 1C */ addi r9, r1, 0x11c +/* 80187678 001845D8 39 41 00 30 */ addi r10, r1, 0x30 +/* 8018767C 001845DC 4B FF CC 71 */ bl "DetectCollision_Cached_Moving__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>9CVector3fR9TUniqueIdR14CCollisionInfoRd" +lbl_80187680: +/* 80187680 001845E0 A0 81 00 30 */ lhz r4, 0x30(r1) +/* 80187684 001845E4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80187688 001845E8 7C 04 00 40 */ cmplw r4, r0 +/* 8018768C 001845EC 41 82 00 38 */ beq lbl_801876C4 +/* 80187690 001845F0 88 01 08 34 */ lbz r0, 0x834(r1) +/* 80187694 001845F4 28 00 00 00 */ cmplwi r0, 0 +/* 80187698 001845F8 40 82 00 1C */ bne lbl_801876B4 +/* 8018769C 001845FC 34 61 08 30 */ addic. r3, r1, 0x830 +/* 801876A0 00184600 41 82 00 08 */ beq lbl_801876A8 +/* 801876A4 00184604 B0 83 00 00 */ sth r4, 0(r3) +lbl_801876A8: +/* 801876A8 00184608 38 00 00 01 */ li r0, 1 +/* 801876AC 0018460C 98 01 08 34 */ stb r0, 0x834(r1) +/* 801876B0 00184610 48 00 00 08 */ b lbl_801876B8 +lbl_801876B4: +/* 801876B4 00184614 B0 81 08 30 */ sth r4, 0x830(r1) +lbl_801876B8: +/* 801876B8 00184618 38 61 08 38 */ addi r3, r1, 0x838 +/* 801876BC 0018461C 38 81 04 D0 */ addi r4, r1, 0x4d0 +/* 801876C0 00184620 4B FF EC 39 */ bl sub_801862f8 +lbl_801876C4: +/* 801876C4 00184624 88 01 05 00 */ lbz r0, 0x500(r1) +/* 801876C8 00184628 28 00 00 00 */ cmplwi r0, 0 +/* 801876CC 0018462C 41 82 00 1C */ beq lbl_801876E8 +/* 801876D0 00184630 39 C1 05 08 */ addi r14, r1, 0x508 +/* 801876D4 00184634 38 81 05 18 */ addi r4, r1, 0x518 +/* 801876D8 00184638 7D C3 73 78 */ mr r3, r14 +/* 801876DC 0018463C 4B FF B1 2D */ bl CanBlock__14CGameCollisionFRC13CMaterialListRC9CVector3f +/* 801876E0 00184640 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801876E4 00184644 40 82 00 F4 */ bne lbl_801877D8 +lbl_801876E8: +/* 801876E8 00184648 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) +/* 801876EC 0018464C FC 18 00 40 */ fcmpo cr0, f24, f0 +/* 801876F0 00184650 40 81 00 38 */ ble lbl_80187728 +/* 801876F4 00184654 38 61 02 D4 */ addi r3, r1, 0x2d4 +/* 801876F8 00184658 38 91 00 34 */ addi r4, r17, 0x34 +/* 801876FC 0018465C 48 18 B4 79 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80187700 00184660 C0 01 03 00 */ lfs f0, 0x300(r1) +/* 80187704 00184664 C0 21 02 F0 */ lfs f1, 0x2f0(r1) +/* 80187708 00184668 C0 42 A3 18 */ lfs f2, lbl_805AC038@sda21(r2) +/* 8018770C 0018466C EC 00 C0 28 */ fsubs f0, f0, f24 +/* 80187710 00184670 C0 61 02 E0 */ lfs f3, 0x2e0(r1) +/* 80187714 00184674 EC 21 10 28 */ fsubs f1, f1, f2 +/* 80187718 00184678 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8018771C 0018467C D0 01 03 00 */ stfs f0, 0x300(r1) +/* 80187720 00184680 D0 21 02 F0 */ stfs f1, 0x2f0(r1) +/* 80187724 00184684 D0 41 02 E0 */ stfs f2, 0x2e0(r1) +lbl_80187728: +/* 80187728 00184688 88 01 05 00 */ lbz r0, 0x500(r1) +/* 8018772C 0018468C 28 00 00 00 */ cmplwi r0, 0 +/* 80187730 00184690 41 82 00 14 */ beq lbl_80187744 +/* 80187734 00184694 88 1D 09 C5 */ lbz r0, 0x9c5(r29) +/* 80187738 00184698 38 60 00 01 */ li r3, 1 +/* 8018773C 0018469C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 80187740 001846A0 98 1D 09 C5 */ stb r0, 0x9c5(r29) +lbl_80187744: +/* 80187744 001846A4 FC 20 B8 90 */ fmr f1, f23 +/* 80187748 001846A8 7E 23 8B 78 */ mr r3, r17 +/* 8018774C 001846AC 7E 04 83 78 */ mr r4, r16 +/* 80187750 001846B0 48 00 24 E1 */ bl CheckFalling__15CGroundMovementFR13CPhysicsActorR13CStateManagerf +/* 80187754 001846B4 38 71 02 28 */ addi r3, r17, 0x228 +/* 80187758 001846B8 38 01 01 00 */ addi r0, r1, 0x100 +/* 8018775C 001846BC 38 80 00 00 */ li r4, 0 +/* 80187760 001846C0 7C 03 00 40 */ cmplw r3, r0 +/* 80187764 001846C4 98 81 01 0C */ stb r4, 0x10c(r1) +/* 80187768 001846C8 41 82 00 64 */ beq lbl_801877CC +/* 8018776C 001846CC 28 04 00 00 */ cmplwi r4, 0 +/* 80187770 001846D0 41 82 00 58 */ beq lbl_801877C8 +/* 80187774 001846D4 88 11 02 34 */ lbz r0, 0x234(r17) +/* 80187778 001846D8 28 00 00 00 */ cmplwi r0, 0 +/* 8018777C 001846DC 40 82 00 30 */ bne lbl_801877AC +/* 80187780 001846E0 34 71 02 28 */ addic. r3, r17, 0x228 +/* 80187784 001846E4 41 82 00 1C */ beq lbl_801877A0 +/* 80187788 001846E8 C0 01 01 00 */ lfs f0, 0x100(r1) +/* 8018778C 001846EC D0 03 00 00 */ stfs f0, 0(r3) +/* 80187790 001846F0 C0 01 01 04 */ lfs f0, 0x104(r1) +/* 80187794 001846F4 D0 03 00 04 */ stfs f0, 4(r3) +/* 80187798 001846F8 C0 01 01 08 */ lfs f0, 0x108(r1) +/* 8018779C 001846FC D0 03 00 08 */ stfs f0, 8(r3) +lbl_801877A0: +/* 801877A0 00184700 38 00 00 01 */ li r0, 1 +/* 801877A4 00184704 98 11 02 34 */ stb r0, 0x234(r17) +/* 801877A8 00184708 48 00 00 24 */ b lbl_801877CC +lbl_801877AC: +/* 801877AC 0018470C C0 01 01 00 */ lfs f0, 0x100(r1) +/* 801877B0 00184710 D0 03 00 00 */ stfs f0, 0(r3) +/* 801877B4 00184714 C0 01 01 04 */ lfs f0, 0x104(r1) +/* 801877B8 00184718 D0 03 00 04 */ stfs f0, 4(r3) +/* 801877BC 0018471C C0 01 01 08 */ lfs f0, 0x108(r1) +/* 801877C0 00184720 D0 03 00 08 */ stfs f0, 8(r3) +/* 801877C4 00184724 48 00 00 08 */ b lbl_801877CC +lbl_801877C8: +/* 801877C8 00184728 98 91 02 34 */ stb r4, 0x234(r17) +lbl_801877CC: +/* 801877CC 0018472C 38 00 00 00 */ li r0, 0 +/* 801877D0 00184730 98 01 01 0C */ stb r0, 0x10c(r1) +/* 801877D4 00184734 48 00 01 C4 */ b lbl_80187998 +lbl_801877D8: +/* 801877D8 00184738 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801877DC 0018473C 7E 03 83 78 */ mr r3, r16 +/* 801877E0 00184740 7E 24 8B 78 */ mr r4, r17 +/* 801877E4 00184744 38 A1 00 1C */ addi r5, r1, 0x1c +/* 801877E8 00184748 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801877EC 0018474C 38 C0 00 17 */ li r6, 0x17 +/* 801877F0 00184750 4B EB C6 E1 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +/* 801877F4 00184754 C8 41 00 88 */ lfd f2, 0x88(r1) +/* 801877F8 00184758 C8 22 A3 48 */ lfd f1, lbl_805AC068@sda21(r2) +/* 801877FC 0018475C C8 0D 8E D0 */ lfd f0, lbl_805A7A90@sda21(r13) +/* 80187800 00184760 FC 22 08 28 */ fsub f1, f2, f1 +/* 80187804 00184764 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80187808 00184768 D8 21 00 48 */ stfd f1, 0x48(r1) +/* 8018780C 0018476C 40 80 00 0C */ bge lbl_80187818 +/* 80187810 00184770 38 6D 8E D0 */ addi r3, r13, lbl_805A7A90@sda21 +/* 80187814 00184774 48 00 00 08 */ b lbl_8018781C +lbl_80187818: +/* 80187818 00184778 38 61 00 48 */ addi r3, r1, 0x48 +lbl_8018781C: +/* 8018781C 0018477C C8 23 00 00 */ lfd f1, 0(r3) +/* 80187820 00184780 7E 23 8B 78 */ mr r3, r17 +/* 80187824 00184784 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) +/* 80187828 00184788 38 81 00 F4 */ addi r4, r1, 0xf4 +/* 8018782C 0018478C FC 60 08 18 */ frsp f3, f1 +/* 80187830 00184790 D8 21 00 88 */ stfd f1, 0x88(r1) +/* 80187834 00184794 C0 42 A3 10 */ lfs f2, lbl_805AC030@sda21(r2) +/* 80187838 00184798 C1 11 00 60 */ lfs f8, 0x60(r17) +/* 8018783C 0018479C EC 83 00 32 */ fmuls f4, f3, f0 +/* 80187840 001847A0 C0 F1 00 50 */ lfs f7, 0x50(r17) +/* 80187844 001847A4 EC 63 00 B2 */ fmuls f3, f3, f2 +/* 80187848 001847A8 C0 31 00 40 */ lfs f1, 0x40(r17) +/* 8018784C 001847AC D0 01 00 D0 */ stfs f0, 0xd0(r1) +/* 80187850 001847B0 EC C7 20 28 */ fsubs f6, f7, f4 +/* 80187854 001847B4 EC A8 18 28 */ fsubs f5, f8, f3 +/* 80187858 001847B8 D0 01 00 D4 */ stfs f0, 0xd4(r1) +/* 8018785C 001847BC EC 01 20 28 */ fsubs f0, f1, f4 +/* 80187860 001847C0 D0 41 00 D8 */ stfs f2, 0xd8(r1) +/* 80187864 001847C4 D0 81 00 DC */ stfs f4, 0xdc(r1) +/* 80187868 001847C8 D0 81 00 E0 */ stfs f4, 0xe0(r1) +/* 8018786C 001847CC D0 61 00 E4 */ stfs f3, 0xe4(r1) +/* 80187870 001847D0 D0 21 00 E8 */ stfs f1, 0xe8(r1) +/* 80187874 001847D4 D0 E1 00 EC */ stfs f7, 0xec(r1) +/* 80187878 001847D8 D1 01 00 F0 */ stfs f8, 0xf0(r1) +/* 8018787C 001847DC D0 01 00 F4 */ stfs f0, 0xf4(r1) +/* 80187880 001847E0 D0 C1 00 F8 */ stfs f6, 0xf8(r1) +/* 80187884 001847E4 D0 A1 00 FC */ stfs f5, 0xfc(r1) +/* 80187888 001847E8 4B EC B6 05 */ bl SetTranslation__6CActorFRC9CVector3f +/* 8018788C 001847EC A0 01 00 30 */ lhz r0, 0x30(r1) +/* 80187890 001847F0 7E 03 83 78 */ mr r3, r16 +/* 80187894 001847F4 38 81 00 18 */ addi r4, r1, 0x18 +/* 80187898 001847F8 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8018789C 001847FC 4B EC 4C D9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801878A0 00184800 7C 60 1B 78 */ mr r0, r3 +/* 801878A4 00184804 38 61 00 3C */ addi r3, r1, 0x3c +/* 801878A8 00184808 7C 13 03 78 */ mr r19, r0 +/* 801878AC 0018480C 7E 64 9B 78 */ mr r4, r19 +/* 801878B0 00184810 4B F2 15 65 */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" +/* 801878B4 00184814 80 03 00 04 */ lwz r0, 4(r3) +/* 801878B8 00184818 28 00 00 00 */ cmplwi r0, 0 +/* 801878BC 0018481C 41 82 00 24 */ beq lbl_801878E0 +/* 801878C0 00184820 A0 11 00 08 */ lhz r0, 8(r17) +/* 801878C4 00184824 7E 03 83 78 */ mr r3, r16 +/* 801878C8 00184828 7E 64 9B 78 */ mr r4, r19 +/* 801878CC 0018482C 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801878D0 00184830 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801878D4 00184834 38 C0 00 1F */ li r6, 0x1f +/* 801878D8 00184838 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801878DC 0018483C 4B EB C5 F5 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +lbl_801878E0: +/* 801878E0 00184840 7E 03 83 78 */ mr r3, r16 +/* 801878E4 00184844 7D C4 73 78 */ mr r4, r14 +/* 801878E8 00184848 7E 25 8B 78 */ mr r5, r17 +/* 801878EC 0018484C 4B FF B0 6D */ bl SendMaterialMessage__14CGameCollisionFR13CStateManagerRC13CMaterialListR6CActor +/* 801878F0 00184850 38 00 00 01 */ li r0, 1 +/* 801878F4 00184854 34 61 00 C0 */ addic. r3, r1, 0xc0 +/* 801878F8 00184858 98 01 00 CC */ stb r0, 0xcc(r1) +/* 801878FC 0018485C 41 82 00 1C */ beq lbl_80187918 +/* 80187900 00184860 C0 01 05 18 */ lfs f0, 0x518(r1) +/* 80187904 00184864 D0 03 00 00 */ stfs f0, 0(r3) +/* 80187908 00184868 C0 01 05 1C */ lfs f0, 0x51c(r1) +/* 8018790C 0018486C D0 03 00 04 */ stfs f0, 4(r3) +/* 80187910 00184870 C0 01 05 20 */ lfs f0, 0x520(r1) +/* 80187914 00184874 D0 03 00 08 */ stfs f0, 8(r3) +lbl_80187918: +/* 80187918 00184878 38 71 02 28 */ addi r3, r17, 0x228 +/* 8018791C 0018487C 38 01 00 C0 */ addi r0, r1, 0xc0 +/* 80187920 00184880 7C 03 00 40 */ cmplw r3, r0 +/* 80187924 00184884 41 82 00 6C */ beq lbl_80187990 +/* 80187928 00184888 88 01 00 CC */ lbz r0, 0xcc(r1) +/* 8018792C 0018488C 28 00 00 00 */ cmplwi r0, 0 +/* 80187930 00184890 41 82 00 58 */ beq lbl_80187988 +/* 80187934 00184894 88 11 02 34 */ lbz r0, 0x234(r17) +/* 80187938 00184898 28 00 00 00 */ cmplwi r0, 0 +/* 8018793C 0018489C 40 82 00 30 */ bne lbl_8018796C +/* 80187940 001848A0 34 71 02 28 */ addic. r3, r17, 0x228 +/* 80187944 001848A4 41 82 00 1C */ beq lbl_80187960 +/* 80187948 001848A8 C0 01 00 C0 */ lfs f0, 0xc0(r1) +/* 8018794C 001848AC D0 03 00 00 */ stfs f0, 0(r3) +/* 80187950 001848B0 C0 01 00 C4 */ lfs f0, 0xc4(r1) +/* 80187954 001848B4 D0 03 00 04 */ stfs f0, 4(r3) +/* 80187958 001848B8 C0 01 00 C8 */ lfs f0, 0xc8(r1) +/* 8018795C 001848BC D0 03 00 08 */ stfs f0, 8(r3) +lbl_80187960: +/* 80187960 001848C0 38 00 00 01 */ li r0, 1 +/* 80187964 001848C4 98 11 02 34 */ stb r0, 0x234(r17) +/* 80187968 001848C8 48 00 00 28 */ b lbl_80187990 +lbl_8018796C: +/* 8018796C 001848CC C0 01 00 C0 */ lfs f0, 0xc0(r1) +/* 80187970 001848D0 D0 03 00 00 */ stfs f0, 0(r3) +/* 80187974 001848D4 C0 01 00 C4 */ lfs f0, 0xc4(r1) +/* 80187978 001848D8 D0 03 00 04 */ stfs f0, 4(r3) +/* 8018797C 001848DC C0 01 00 C8 */ lfs f0, 0xc8(r1) +/* 80187980 001848E0 D0 03 00 08 */ stfs f0, 8(r3) +/* 80187984 001848E4 48 00 00 0C */ b lbl_80187990 +lbl_80187988: +/* 80187988 001848E8 38 00 00 00 */ li r0, 0 +/* 8018798C 001848EC 98 11 02 34 */ stb r0, 0x234(r17) +lbl_80187990: +/* 80187990 001848F0 38 00 00 00 */ li r0, 0 +/* 80187994 001848F4 98 01 00 CC */ stb r0, 0xcc(r1) +lbl_80187998: +/* 80187998 001848F8 7E 23 8B 78 */ mr r3, r17 +/* 8018799C 001848FC 4B F9 39 19 */ bl ClearForcesAndTorques__13CPhysicsActorFv +/* 801879A0 00184900 3C 00 40 00 */ lis r0, 0x4000 +/* 801879A4 00184904 38 80 00 00 */ li r4, 0 +/* 801879A8 00184908 7E 43 00 38 */ and r3, r18, r0 +/* 801879AC 0018490C 7D E0 20 38 */ and r0, r15, r4 +/* 801879B0 00184910 7C 63 22 78 */ xor r3, r3, r4 +/* 801879B4 00184914 7C 00 22 78 */ xor r0, r0, r4 +/* 801879B8 00184918 7C 60 03 79 */ or. r0, r3, r0 +/* 801879BC 0018491C 41 82 00 0C */ beq lbl_801879C8 +/* 801879C0 00184920 7F A3 EB 78 */ mr r3, r29 +/* 801879C4 00184924 4B E8 97 B1 */ bl SetPlayerHitWallDuringMove__7CPlayerFv +lbl_801879C8: +/* 801879C8 00184928 88 01 08 34 */ lbz r0, 0x834(r1) +/* 801879CC 0018492C 28 00 00 00 */ cmplwi r0, 0 +/* 801879D0 00184930 41 82 00 84 */ beq lbl_80187A54 +/* 801879D4 00184934 38 00 00 00 */ li r0, 0 +/* 801879D8 00184938 38 61 0A 4C */ addi r3, r1, 0xa4c +/* 801879DC 0018493C 90 01 0A 4C */ stw r0, 0xa4c(r1) +/* 801879E0 00184940 38 81 08 38 */ addi r4, r1, 0x838 +/* 801879E4 00184944 38 A0 00 00 */ li r5, 0 +/* 801879E8 00184948 4B FF DC 39 */ bl Add__18CCollisionInfoListFRC14CCollisionInfob +/* 801879EC 0018494C 7E 03 83 78 */ mr r3, r16 +/* 801879F0 00184950 7E 24 8B 78 */ mr r4, r17 +/* 801879F4 00184954 38 A1 08 30 */ addi r5, r1, 0x830 +/* 801879F8 00184958 38 C1 0A 4C */ addi r6, r1, 0xa4c +/* 801879FC 0018495C 4B FF B1 BD */ bl MakeCollisionCallbacks__14CGameCollisionFR13CStateManagerR13CPhysicsActorRC9TUniqueIdRC18CCollisionInfoList +/* 80187A00 00184960 80 A1 0A 4C */ lwz r5, 0xa4c(r1) +/* 80187A04 00184964 38 60 00 00 */ li r3, 0 +/* 80187A08 00184968 2C 05 00 00 */ cmpwi r5, 0 +/* 80187A0C 0018496C 40 81 00 40 */ ble lbl_80187A4C +/* 80187A10 00184970 2C 05 00 08 */ cmpwi r5, 8 +/* 80187A14 00184974 38 85 FF F8 */ addi r4, r5, -8 +/* 80187A18 00184978 40 81 00 20 */ ble lbl_80187A38 +/* 80187A1C 0018497C 38 04 00 07 */ addi r0, r4, 7 +/* 80187A20 00184980 54 00 E8 FE */ srwi r0, r0, 3 +/* 80187A24 00184984 7C 09 03 A6 */ mtctr r0 +/* 80187A28 00184988 2C 04 00 00 */ cmpwi r4, 0 +/* 80187A2C 0018498C 40 81 00 0C */ ble lbl_80187A38 +lbl_80187A30: +/* 80187A30 00184990 38 63 00 08 */ addi r3, r3, 8 +/* 80187A34 00184994 42 00 FF FC */ bdnz lbl_80187A30 +lbl_80187A38: +/* 80187A38 00184998 7C 03 28 50 */ subf r0, r3, r5 +/* 80187A3C 0018499C 7C 09 03 A6 */ mtctr r0 +/* 80187A40 001849A0 7C 03 28 00 */ cmpw r3, r5 +/* 80187A44 001849A4 40 80 00 08 */ bge lbl_80187A4C +lbl_80187A48: +/* 80187A48 001849A8 42 00 00 00 */ bdnz lbl_80187A48 +lbl_80187A4C: +/* 80187A4C 001849AC 38 00 00 00 */ li r0, 0 +/* 80187A50 001849B0 90 01 0A 4C */ stw r0, 0xa4c(r1) +lbl_80187A54: +/* 80187A54 001849B4 7E 24 8B 78 */ mr r4, r17 +/* 80187A58 001849B8 38 61 02 6C */ addi r3, r1, 0x26c +/* 80187A5C 001849BC 4B F9 3C 19 */ bl GetMotionState__13CPhysicsActorCFv +/* 80187A60 001849C0 C0 01 02 6C */ lfs f0, 0x26c(r1) +/* 80187A64 001849C4 7E 23 8B 78 */ mr r3, r17 +/* 80187A68 001849C8 C1 61 02 70 */ lfs f11, 0x270(r1) +/* 80187A6C 001849CC D0 01 02 A0 */ stfs f0, 0x2a0(r1) +/* 80187A70 001849D0 C0 11 01 F4 */ lfs f0, 0x1f4(r17) +/* 80187A74 001849D4 C1 41 02 74 */ lfs f10, 0x274(r1) +/* 80187A78 001849D8 D0 01 02 A0 */ stfs f0, 0x2a0(r1) +/* 80187A7C 001849DC C1 21 02 78 */ lfs f9, 0x278(r1) +/* 80187A80 001849E0 C1 01 02 7C */ lfs f8, 0x27c(r1) +/* 80187A84 001849E4 C0 E1 02 80 */ lfs f7, 0x280(r1) +/* 80187A88 001849E8 C0 C1 02 84 */ lfs f6, 0x284(r1) +/* 80187A8C 001849EC C0 A1 02 88 */ lfs f5, 0x288(r1) +/* 80187A90 001849F0 C0 81 02 8C */ lfs f4, 0x28c(r1) +/* 80187A94 001849F4 C0 61 02 90 */ lfs f3, 0x290(r1) +/* 80187A98 001849F8 C0 41 02 94 */ lfs f2, 0x294(r1) +/* 80187A9C 001849FC C0 21 02 98 */ lfs f1, 0x298(r1) +/* 80187AA0 00184A00 C0 01 02 9C */ lfs f0, 0x29c(r1) +/* 80187AA4 00184A04 D1 21 02 AC */ stfs f9, 0x2ac(r1) +/* 80187AA8 00184A08 C1 31 01 F8 */ lfs f9, 0x1f8(r17) +/* 80187AAC 00184A0C D1 61 02 A4 */ stfs f11, 0x2a4(r1) +/* 80187AB0 00184A10 C1 71 01 FC */ lfs f11, 0x1fc(r17) +/* 80187AB4 00184A14 D1 41 02 A8 */ stfs f10, 0x2a8(r1) +/* 80187AB8 00184A18 C1 51 02 10 */ lfs f10, 0x210(r17) +/* 80187ABC 00184A1C D1 21 02 A4 */ stfs f9, 0x2a4(r1) +/* 80187AC0 00184A20 C1 31 02 14 */ lfs f9, 0x214(r17) +/* 80187AC4 00184A24 D1 61 02 A8 */ stfs f11, 0x2a8(r1) +/* 80187AC8 00184A28 C1 71 02 18 */ lfs f11, 0x218(r17) +/* 80187ACC 00184A2C 80 81 02 A0 */ lwz r4, 0x2a0(r1) +/* 80187AD0 00184A30 D1 01 02 B0 */ stfs f8, 0x2b0(r1) +/* 80187AD4 00184A34 80 01 02 A4 */ lwz r0, 0x2a4(r1) +/* 80187AD8 00184A38 90 91 01 F4 */ stw r4, 0x1f4(r17) +/* 80187ADC 00184A3C 80 81 02 A8 */ lwz r4, 0x2a8(r1) +/* 80187AE0 00184A40 90 11 01 F8 */ stw r0, 0x1f8(r17) +/* 80187AE4 00184A44 80 01 02 AC */ lwz r0, 0x2ac(r1) +/* 80187AE8 00184A48 90 91 01 FC */ stw r4, 0x1fc(r17) +/* 80187AEC 00184A4C 80 A1 02 B0 */ lwz r5, 0x2b0(r1) +/* 80187AF0 00184A50 D0 E1 02 B4 */ stfs f7, 0x2b4(r1) +/* 80187AF4 00184A54 90 11 02 00 */ stw r0, 0x200(r17) +/* 80187AF8 00184A58 80 81 02 B4 */ lwz r4, 0x2b4(r1) +/* 80187AFC 00184A5C D0 C1 02 B8 */ stfs f6, 0x2b8(r1) +/* 80187B00 00184A60 D0 A1 02 BC */ stfs f5, 0x2bc(r1) +/* 80187B04 00184A64 80 01 02 B8 */ lwz r0, 0x2b8(r1) +/* 80187B08 00184A68 90 B1 02 04 */ stw r5, 0x204(r17) +/* 80187B0C 00184A6C D0 81 02 C0 */ stfs f4, 0x2c0(r1) +/* 80187B10 00184A70 D1 41 02 BC */ stfs f10, 0x2bc(r1) +/* 80187B14 00184A74 90 91 02 08 */ stw r4, 0x208(r17) +/* 80187B18 00184A78 80 81 02 BC */ lwz r4, 0x2bc(r1) +/* 80187B1C 00184A7C D0 61 02 C4 */ stfs f3, 0x2c4(r1) +/* 80187B20 00184A80 D1 21 02 C0 */ stfs f9, 0x2c0(r1) +/* 80187B24 00184A84 90 11 02 0C */ stw r0, 0x20c(r17) +/* 80187B28 00184A88 80 01 02 C0 */ lwz r0, 0x2c0(r1) +/* 80187B2C 00184A8C D1 61 02 C4 */ stfs f11, 0x2c4(r1) +/* 80187B30 00184A90 90 91 02 10 */ stw r4, 0x210(r17) +/* 80187B34 00184A94 80 81 02 C4 */ lwz r4, 0x2c4(r1) +/* 80187B38 00184A98 D0 41 02 C8 */ stfs f2, 0x2c8(r1) +/* 80187B3C 00184A9C 90 11 02 14 */ stw r0, 0x214(r17) +/* 80187B40 00184AA0 80 01 02 C8 */ lwz r0, 0x2c8(r1) +/* 80187B44 00184AA4 D0 21 02 CC */ stfs f1, 0x2cc(r1) +/* 80187B48 00184AA8 90 91 02 18 */ stw r4, 0x218(r17) +/* 80187B4C 00184AAC 80 81 02 CC */ lwz r4, 0x2cc(r1) +/* 80187B50 00184AB0 D0 01 02 D0 */ stfs f0, 0x2d0(r1) +/* 80187B54 00184AB4 90 11 02 1C */ stw r0, 0x21c(r17) +/* 80187B58 00184AB8 80 01 02 D0 */ lwz r0, 0x2d0(r1) +/* 80187B5C 00184ABC 90 91 02 20 */ stw r4, 0x220(r17) +/* 80187B60 00184AC0 90 11 02 24 */ stw r0, 0x224(r17) +/* 80187B64 00184AC4 81 91 00 00 */ lwz r12, 0(r17) +/* 80187B68 00184AC8 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80187B6C 00184ACC 7D 89 03 A6 */ mtctr r12 +/* 80187B70 00184AD0 4E 80 04 21 */ bctrl +/* 80187B74 00184AD4 81 83 00 00 */ lwz r12, 0(r3) +/* 80187B78 00184AD8 7C 6F 1B 78 */ mr r15, r3 +/* 80187B7C 00184ADC 3A 41 04 84 */ addi r18, r1, 0x484 +/* 80187B80 00184AE0 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80187B84 00184AE4 7D EE 7B 78 */ mr r14, r15 +/* 80187B88 00184AE8 7D 89 03 A6 */ mtctr r12 +/* 80187B8C 00184AEC 4E 80 04 21 */ bctrl +/* 80187B90 00184AF0 3C 03 BE BF */ addis r0, r3, 0xbebf +/* 80187B94 00184AF4 28 00 42 58 */ cmplwi r0, 0x4258 +/* 80187B98 00184AF8 40 82 00 D0 */ bne lbl_80187C68 +/* 80187B9C 00184AFC 28 12 00 00 */ cmplwi r18, 0 +/* 80187BA0 00184B00 7E 4E 93 78 */ mr r14, r18 +/* 80187BA4 00184B04 41 82 01 44 */ beq lbl_80187CE8 +/* 80187BA8 00184B08 C0 4F 00 14 */ lfs f2, 0x14(r15) +/* 80187BAC 00184B0C 7D E3 7B 78 */ mr r3, r15 +/* 80187BB0 00184B10 C0 62 A3 7C */ lfs f3, lbl_805AC09C@sda21(r2) +/* 80187BB4 00184B14 C0 2F 00 18 */ lfs f1, 0x18(r15) +/* 80187BB8 00184B18 C0 0F 00 10 */ lfs f0, 0x10(r15) +/* 80187BBC 00184B1C EC 42 18 2A */ fadds f2, f2, f3 +/* 80187BC0 00184B20 EC 21 18 2A */ fadds f1, f1, f3 +/* 80187BC4 00184B24 EC 00 18 2A */ fadds f0, f0, f3 +/* 80187BC8 00184B28 D0 41 00 AC */ stfs f2, 0xac(r1) +/* 80187BCC 00184B2C D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 80187BD0 00184B30 D0 21 00 B0 */ stfs f1, 0xb0(r1) +/* 80187BD4 00184B34 C0 4F 00 20 */ lfs f2, 0x20(r15) +/* 80187BD8 00184B38 C0 2F 00 24 */ lfs f1, 0x24(r15) +/* 80187BDC 00184B3C C0 0F 00 1C */ lfs f0, 0x1c(r15) +/* 80187BE0 00184B40 EC 42 18 28 */ fsubs f2, f2, f3 +/* 80187BE4 00184B44 EC 21 18 28 */ fsubs f1, f1, f3 +/* 80187BE8 00184B48 EC 00 18 28 */ fsubs f0, f0, f3 +/* 80187BEC 00184B4C D0 41 00 B8 */ stfs f2, 0xb8(r1) +/* 80187BF0 00184B50 D0 01 00 B4 */ stfs f0, 0xb4(r1) +/* 80187BF4 00184B54 D0 21 00 BC */ stfs f1, 0xbc(r1) +/* 80187BF8 00184B58 81 8F 00 00 */ lwz r12, 0(r15) +/* 80187BFC 00184B5C 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 80187C00 00184B60 7D 89 03 A6 */ mtctr r12 +/* 80187C04 00184B64 4E 80 04 21 */ bctrl +/* 80187C08 00184B68 7C 6F 1B 78 */ mr r15, r3 +/* 80187C0C 00184B6C 38 61 02 10 */ addi r3, r1, 0x210 +/* 80187C10 00184B70 38 81 00 A8 */ addi r4, r1, 0xa8 +/* 80187C14 00184B74 38 A1 00 B4 */ addi r5, r1, 0xb4 +/* 80187C18 00184B78 48 1B 08 F1 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 80187C1C 00184B7C 7E 43 93 78 */ mr r3, r18 +/* 80187C20 00184B80 7D E4 7B 78 */ mr r4, r15 +/* 80187C24 00184B84 48 14 7C 91 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList +/* 80187C28 00184B88 C0 A1 02 10 */ lfs f5, 0x210(r1) +/* 80187C2C 00184B8C 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha +/* 80187C30 00184B90 C0 81 02 14 */ lfs f4, 0x214(r1) +/* 80187C34 00184B94 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l +/* 80187C38 00184B98 C0 61 02 18 */ lfs f3, 0x218(r1) +/* 80187C3C 00184B9C C0 41 02 1C */ lfs f2, 0x21c(r1) +/* 80187C40 00184BA0 C0 21 02 20 */ lfs f1, 0x220(r1) +/* 80187C44 00184BA4 C0 01 02 24 */ lfs f0, 0x224(r1) +/* 80187C48 00184BA8 90 01 04 84 */ stw r0, 0x484(r1) +/* 80187C4C 00184BAC D0 A1 04 94 */ stfs f5, 0x494(r1) +/* 80187C50 00184BB0 D0 81 04 98 */ stfs f4, 0x498(r1) +/* 80187C54 00184BB4 D0 61 04 9C */ stfs f3, 0x49c(r1) +/* 80187C58 00184BB8 D0 41 04 A0 */ stfs f2, 0x4a0(r1) +/* 80187C5C 00184BBC D0 21 04 A4 */ stfs f1, 0x4a4(r1) +/* 80187C60 00184BC0 D0 01 04 A8 */ stfs f0, 0x4a8(r1) +/* 80187C64 00184BC4 48 00 00 84 */ b lbl_80187CE8 +lbl_80187C68: +/* 80187C68 00184BC8 7D E3 7B 78 */ mr r3, r15 +/* 80187C6C 00184BCC 81 8F 00 00 */ lwz r12, 0(r15) +/* 80187C70 00184BD0 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80187C74 00184BD4 7D 89 03 A6 */ mtctr r12 +/* 80187C78 00184BD8 4E 80 04 21 */ bctrl +/* 80187C7C 00184BDC 3C 03 AC B0 */ addis r0, r3, 0xacb0 +/* 80187C80 00184BE0 28 00 48 52 */ cmplwi r0, 0x4852 +/* 80187C84 00184BE4 40 82 00 64 */ bne lbl_80187CE8 +/* 80187C88 00184BE8 28 12 00 00 */ cmplwi r18, 0 +/* 80187C8C 00184BEC 7E 4E 93 78 */ mr r14, r18 +/* 80187C90 00184BF0 41 82 00 58 */ beq lbl_80187CE8 +/* 80187C94 00184BF4 7D E3 7B 78 */ mr r3, r15 +/* 80187C98 00184BF8 C0 2F 00 1C */ lfs f1, 0x1c(r15) +/* 80187C9C 00184BFC 81 8F 00 00 */ lwz r12, 0(r15) +/* 80187CA0 00184C00 C0 02 A3 7C */ lfs f0, lbl_805AC09C@sda21(r2) +/* 80187CA4 00184C04 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 80187CA8 00184C08 EF 01 00 28 */ fsubs f24, f1, f0 +/* 80187CAC 00184C0C C2 AF 00 10 */ lfs f21, 0x10(r15) +/* 80187CB0 00184C10 C2 CF 00 14 */ lfs f22, 0x14(r15) +/* 80187CB4 00184C14 C2 EF 00 18 */ lfs f23, 0x18(r15) +/* 80187CB8 00184C18 7D 89 03 A6 */ mtctr r12 +/* 80187CBC 00184C1C 4E 80 04 21 */ bctrl +/* 80187CC0 00184C20 7C 64 1B 78 */ mr r4, r3 +/* 80187CC4 00184C24 7E 43 93 78 */ mr r3, r18 +/* 80187CC8 00184C28 48 14 7B ED */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList +/* 80187CCC 00184C2C 3C 60 80 3F */ lis r3, lbl_803ECAF8@ha +/* 80187CD0 00184C30 D2 A1 04 94 */ stfs f21, 0x494(r1) +/* 80187CD4 00184C34 38 03 CA F8 */ addi r0, r3, lbl_803ECAF8@l +/* 80187CD8 00184C38 90 01 04 84 */ stw r0, 0x484(r1) +/* 80187CDC 00184C3C D2 C1 04 98 */ stfs f22, 0x498(r1) +/* 80187CE0 00184C40 D2 E1 04 9C */ stfs f23, 0x49c(r1) +/* 80187CE4 00184C44 D3 01 04 A0 */ stfs f24, 0x4a0(r1) +lbl_80187CE8: +/* 80187CE8 00184C48 C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) +/* 80187CEC 00184C4C 7E 03 83 78 */ mr r3, r16 +/* 80187CF0 00184C50 7E 25 8B 78 */ mr r5, r17 +/* 80187CF4 00184C54 7D C6 73 78 */ mr r6, r14 +/* 80187CF8 00184C58 38 81 16 50 */ addi r4, r1, 0x1650 +/* 80187CFC 00184C5C 38 E1 31 94 */ addi r7, r1, 0x3194 +/* 80187D00 00184C60 39 00 00 01 */ li r8, 1 +/* 80187D04 00184C64 4B FF 8B 89 */ bl "CollisionFailsafe__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheR13CPhysicsActorRC19CCollisionPrimitiveRCQ24rstl32reserved_vector<9TUniqueId,1024>fUi" +/* 80187D08 00184C68 38 60 00 00 */ li r3, 0 +/* 80187D0C 00184C6C 34 E1 16 68 */ addic. r7, r1, 0x1668 +/* 80187D10 00184C70 98 61 08 98 */ stb r3, 0x898(r1) +/* 80187D14 00184C74 98 61 08 34 */ stb r3, 0x834(r1) +/* 80187D18 00184C78 41 82 00 90 */ beq lbl_80187DA8 +/* 80187D1C 00184C7C 38 C7 00 04 */ addi r6, r7, 4 +/* 80187D20 00184C80 48 00 00 74 */ b lbl_80187D94 +lbl_80187D24: +/* 80187D24 00184C84 28 06 00 00 */ cmplwi r6, 0 +/* 80187D28 00184C88 41 82 00 64 */ beq lbl_80187D8C +/* 80187D2C 00184C8C 34 06 00 04 */ addic. r0, r6, 4 +/* 80187D30 00184C90 41 82 00 5C */ beq lbl_80187D8C +/* 80187D34 00184C94 81 06 00 04 */ lwz r8, 4(r6) +/* 80187D38 00184C98 38 80 00 00 */ li r4, 0 +/* 80187D3C 00184C9C 2C 08 00 00 */ cmpwi r8, 0 +/* 80187D40 00184CA0 40 81 00 44 */ ble lbl_80187D84 +/* 80187D44 00184CA4 2C 08 00 08 */ cmpwi r8, 8 +/* 80187D48 00184CA8 38 A8 FF F8 */ addi r5, r8, -8 +/* 80187D4C 00184CAC 40 81 00 20 */ ble lbl_80187D6C +/* 80187D50 00184CB0 38 05 00 07 */ addi r0, r5, 7 +/* 80187D54 00184CB4 54 00 E8 FE */ srwi r0, r0, 3 +/* 80187D58 00184CB8 7C 09 03 A6 */ mtctr r0 +/* 80187D5C 00184CBC 2C 05 00 00 */ cmpwi r5, 0 +/* 80187D60 00184CC0 40 81 00 0C */ ble lbl_80187D6C +lbl_80187D64: +/* 80187D64 00184CC4 38 84 00 08 */ addi r4, r4, 8 +/* 80187D68 00184CC8 42 00 FF FC */ bdnz lbl_80187D64 +lbl_80187D6C: +/* 80187D6C 00184CCC 7C 04 40 50 */ subf r0, r4, r8 +/* 80187D70 00184CD0 7C 09 03 A6 */ mtctr r0 +/* 80187D74 00184CD4 7C 04 40 00 */ cmpw r4, r8 +/* 80187D78 00184CD8 40 80 00 0C */ bge lbl_80187D84 +lbl_80187D7C: +/* 80187D7C 00184CDC 38 84 00 01 */ addi r4, r4, 1 +/* 80187D80 00184CE0 42 00 FF FC */ bdnz lbl_80187D7C +lbl_80187D84: +/* 80187D84 00184CE4 38 00 00 00 */ li r0, 0 +/* 80187D88 00184CE8 90 06 00 04 */ stw r0, 4(r6) +lbl_80187D8C: +/* 80187D8C 00184CEC 38 C6 09 0C */ addi r6, r6, 0x90c +/* 80187D90 00184CF0 38 63 00 01 */ addi r3, r3, 1 +lbl_80187D94: +/* 80187D94 00184CF4 80 07 00 00 */ lwz r0, 0(r7) +/* 80187D98 00184CF8 7C 03 00 00 */ cmpw r3, r0 +/* 80187D9C 00184CFC 41 80 FF 88 */ blt lbl_80187D24 +/* 80187DA0 00184D00 38 00 00 00 */ li r0, 0 +/* 80187DA4 00184D04 90 07 00 00 */ stw r0, 0(r7) +lbl_80187DA8: +/* 80187DA8 00184D08 80 A1 31 94 */ lwz r5, 0x3194(r1) +/* 80187DAC 00184D0C 38 60 00 00 */ li r3, 0 +/* 80187DB0 00184D10 2C 05 00 00 */ cmpwi r5, 0 +/* 80187DB4 00184D14 40 81 00 40 */ ble lbl_80187DF4 +/* 80187DB8 00184D18 2C 05 00 08 */ cmpwi r5, 8 +/* 80187DBC 00184D1C 38 85 FF F8 */ addi r4, r5, -8 +/* 80187DC0 00184D20 40 81 00 20 */ ble lbl_80187DE0 +/* 80187DC4 00184D24 38 04 00 07 */ addi r0, r4, 7 +/* 80187DC8 00184D28 54 00 E8 FE */ srwi r0, r0, 3 +/* 80187DCC 00184D2C 7C 09 03 A6 */ mtctr r0 +/* 80187DD0 00184D30 2C 04 00 00 */ cmpwi r4, 0 +/* 80187DD4 00184D34 40 81 00 0C */ ble lbl_80187DE0 +lbl_80187DD8: +/* 80187DD8 00184D38 38 63 00 08 */ addi r3, r3, 8 +/* 80187DDC 00184D3C 42 00 FF FC */ bdnz lbl_80187DD8 +lbl_80187DE0: +/* 80187DE0 00184D40 7C 03 28 50 */ subf r0, r3, r5 +/* 80187DE4 00184D44 7C 09 03 A6 */ mtctr r0 +/* 80187DE8 00184D48 7C 03 28 00 */ cmpw r3, r5 +/* 80187DEC 00184D4C 40 80 00 08 */ bge lbl_80187DF4 +lbl_80187DF0: +/* 80187DF0 00184D50 42 00 00 00 */ bdnz lbl_80187DF0 +lbl_80187DF4: +/* 80187DF4 00184D54 38 00 00 00 */ li r0, 0 +/* 80187DF8 00184D58 90 01 31 94 */ stw r0, 0x3194(r1) +/* 80187DFC 00184D5C 38 00 3A 98 */ li r0, 0x3a98 +/* 80187E00 00184D60 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 +/* 80187E04 00184D64 CB E1 3A 90 */ lfd f31, 0x3a90(r1) +/* 80187E08 00184D68 38 00 3A 88 */ li r0, 0x3a88 +/* 80187E0C 00184D6C 13 C1 00 0C */ psq_lx f30, r1, r0, 0, qr0 +/* 80187E10 00184D70 CB C1 3A 80 */ lfd f30, 0x3a80(r1) +/* 80187E14 00184D74 38 00 3A 78 */ li r0, 0x3a78 +/* 80187E18 00184D78 13 A1 00 0C */ psq_lx f29, r1, r0, 0, qr0 +/* 80187E1C 00184D7C CB A1 3A 70 */ lfd f29, 0x3a70(r1) +/* 80187E20 00184D80 38 00 3A 68 */ li r0, 0x3a68 +/* 80187E24 00184D84 13 81 00 0C */ psq_lx f28, r1, r0, 0, qr0 +/* 80187E28 00184D88 CB 81 3A 60 */ lfd f28, 0x3a60(r1) +/* 80187E2C 00184D8C 38 00 3A 58 */ li r0, 0x3a58 +/* 80187E30 00184D90 13 61 00 0C */ psq_lx f27, r1, r0, 0, qr0 +/* 80187E34 00184D94 CB 61 3A 50 */ lfd f27, 0x3a50(r1) +/* 80187E38 00184D98 38 00 3A 48 */ li r0, 0x3a48 +/* 80187E3C 00184D9C 13 41 00 0C */ psq_lx f26, r1, r0, 0, qr0 +/* 80187E40 00184DA0 CB 41 3A 40 */ lfd f26, 0x3a40(r1) +/* 80187E44 00184DA4 38 00 3A 38 */ li r0, 0x3a38 +/* 80187E48 00184DA8 13 21 00 0C */ psq_lx f25, r1, r0, 0, qr0 +/* 80187E4C 00184DAC CB 21 3A 30 */ lfd f25, 0x3a30(r1) +/* 80187E50 00184DB0 38 00 3A 28 */ li r0, 0x3a28 +/* 80187E54 00184DB4 13 01 00 0C */ psq_lx f24, r1, r0, 0, qr0 +/* 80187E58 00184DB8 CB 01 3A 20 */ lfd f24, 0x3a20(r1) +/* 80187E5C 00184DBC 38 00 3A 18 */ li r0, 0x3a18 +/* 80187E60 00184DC0 12 E1 00 0C */ psq_lx f23, r1, r0, 0, qr0 +/* 80187E64 00184DC4 CA E1 3A 10 */ lfd f23, 0x3a10(r1) +/* 80187E68 00184DC8 38 00 3A 08 */ li r0, 0x3a08 +/* 80187E6C 00184DCC 12 C1 00 0C */ psq_lx f22, r1, r0, 0, qr0 +/* 80187E70 00184DD0 CA C1 3A 00 */ lfd f22, 0x3a00(r1) +/* 80187E74 00184DD4 38 00 39 F8 */ li r0, 0x39f8 +/* 80187E78 00184DD8 12 A1 00 0C */ psq_lx f21, r1, r0, 0, qr0 +/* 80187E7C 00184DDC CA A1 39 F0 */ lfd f21, 0x39f0(r1) +/* 80187E80 00184DE0 B9 C1 39 A8 */ lmw r14, 0x39a8(r1) +/* 80187E84 00184DE4 80 01 3A A4 */ lwz r0, 0x3aa4(r1) +/* 80187E88 00184DE8 7C 08 03 A6 */ mtlr r0 +/* 80187E8C 00184DEC 38 21 3A A0 */ addi r1, r1, 0x3aa0 +/* 80187E90 00184DF0 4E 80 00 20 */ blr + +.global sub_80187e94 +sub_80187e94: +/* 80187E94 00184DF4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80187E98 00184DF8 7C 08 02 A6 */ mflr r0 +/* 80187E9C 00184DFC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80187EA0 00184E00 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80187EA4 00184E04 7C 7F 1B 78 */ mr r31, r3 +/* 80187EA8 00184E08 80 03 00 00 */ lwz r0, 0(r3) +/* 80187EAC 00184E0C 1C 00 00 60 */ mulli r0, r0, 0x60 +/* 80187EB0 00184E10 7C 7F 02 14 */ add r3, r31, r0 +/* 80187EB4 00184E14 38 63 00 04 */ addi r3, r3, 4 +/* 80187EB8 00184E18 4B FF E5 65 */ bl sub_8018641c +/* 80187EBC 00184E1C 80 7F 00 00 */ lwz r3, 0(r31) +/* 80187EC0 00184E20 38 03 00 01 */ addi r0, r3, 1 +/* 80187EC4 00184E24 90 1F 00 00 */ stw r0, 0(r31) +/* 80187EC8 00184E28 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80187ECC 00184E2C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80187ED0 00184E30 7C 08 03 A6 */ mtlr r0 +/* 80187ED4 00184E34 38 21 00 10 */ addi r1, r1, 0x10 +/* 80187ED8 00184E38 4E 80 00 20 */ blr + +.global sub_80187edc +sub_80187edc: +/* 80187EDC 00184E3C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80187EE0 00184E40 7C 08 02 A6 */ mflr r0 +/* 80187EE4 00184E44 90 01 00 14 */ stw r0, 0x14(r1) +/* 80187EE8 00184E48 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80187EEC 00184E4C 7C 7F 1B 78 */ mr r31, r3 +/* 80187EF0 00184E50 80 03 00 00 */ lwz r0, 0(r3) +/* 80187EF4 00184E54 1C 00 00 70 */ mulli r0, r0, 0x70 +/* 80187EF8 00184E58 7C 7F 02 14 */ add r3, r31, r0 +/* 80187EFC 00184E5C 38 63 00 04 */ addi r3, r3, 4 +/* 80187F00 00184E60 48 00 00 25 */ bl sub_80187f24 +/* 80187F04 00184E64 80 7F 00 00 */ lwz r3, 0(r31) +/* 80187F08 00184E68 38 03 00 01 */ addi r0, r3, 1 +/* 80187F0C 00184E6C 90 1F 00 00 */ stw r0, 0(r31) +/* 80187F10 00184E70 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80187F14 00184E74 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80187F18 00184E78 7C 08 03 A6 */ mtlr r0 +/* 80187F1C 00184E7C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80187F20 00184E80 4E 80 00 20 */ blr + +.global sub_80187f24 +sub_80187f24: +/* 80187F24 00184E84 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80187F28 00184E88 7C 08 02 A6 */ mflr r0 +/* 80187F2C 00184E8C 28 03 00 00 */ cmplwi r3, 0 +/* 80187F30 00184E90 90 01 00 14 */ stw r0, 0x14(r1) +/* 80187F34 00184E94 41 82 00 08 */ beq lbl_80187F3C +/* 80187F38 00184E98 4B F2 B5 89 */ bl __ct__13CPhysicsStateFRC13CPhysicsState +lbl_80187F3C: +/* 80187F3C 00184E9C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80187F40 00184EA0 7C 08 03 A6 */ mtlr r0 +/* 80187F44 00184EA4 38 21 00 10 */ addi r1, r1, 0x10 +/* 80187F48 00184EA8 4E 80 00 20 */ blr + +.global __ct__Q215CGroundMovement16SMovementOptionsFRCQ215CGroundMovement16SMovementOptions +__ct__Q215CGroundMovement16SMovementOptionsFRCQ215CGroundMovement16SMovementOptions: +/* 80187F4C 00184EAC 88 04 00 00 */ lbz r0, 0(r4) +/* 80187F50 00184EB0 98 03 00 00 */ stb r0, 0(r3) +/* 80187F54 00184EB4 C0 04 00 04 */ lfs f0, 4(r4) +/* 80187F58 00184EB8 D0 03 00 04 */ stfs f0, 4(r3) +/* 80187F5C 00184EBC C0 04 00 08 */ lfs f0, 8(r4) +/* 80187F60 00184EC0 D0 03 00 08 */ stfs f0, 8(r3) +/* 80187F64 00184EC4 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 80187F68 00184EC8 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 80187F6C 00184ECC C0 04 00 10 */ lfs f0, 0x10(r4) +/* 80187F70 00184ED0 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 80187F74 00184ED4 C0 04 00 14 */ lfs f0, 0x14(r4) +/* 80187F78 00184ED8 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 80187F7C 00184EDC 88 04 00 18 */ lbz r0, 0x18(r4) +/* 80187F80 00184EE0 98 03 00 18 */ stb r0, 0x18(r3) +/* 80187F84 00184EE4 88 04 00 19 */ lbz r0, 0x19(r4) +/* 80187F88 00184EE8 98 03 00 19 */ stb r0, 0x19(r3) +/* 80187F8C 00184EEC 88 04 00 1A */ lbz r0, 0x1a(r4) +/* 80187F90 00184EF0 98 03 00 1A */ stb r0, 0x1a(r3) +/* 80187F94 00184EF4 80 04 00 1C */ lwz r0, 0x1c(r4) +/* 80187F98 00184EF8 90 03 00 1C */ stw r0, 0x1c(r3) +/* 80187F9C 00184EFC C0 04 00 20 */ lfs f0, 0x20(r4) +/* 80187FA0 00184F00 D0 03 00 20 */ stfs f0, 0x20(r3) +/* 80187FA4 00184F04 C0 04 00 24 */ lfs f0, 0x24(r4) +/* 80187FA8 00184F08 D0 03 00 24 */ stfs f0, 0x24(r3) +/* 80187FAC 00184F0C C0 04 00 28 */ lfs f0, 0x28(r4) +/* 80187FB0 00184F10 D0 03 00 28 */ stfs f0, 0x28(r3) +/* 80187FB4 00184F14 C0 04 00 2C */ lfs f0, 0x2c(r4) +/* 80187FB8 00184F18 D0 03 00 2C */ stfs f0, 0x2c(r3) +/* 80187FBC 00184F1C C0 04 00 30 */ lfs f0, 0x30(r4) +/* 80187FC0 00184F20 D0 03 00 30 */ stfs f0, 0x30(r3) +/* 80187FC4 00184F24 C0 04 00 34 */ lfs f0, 0x34(r4) +/* 80187FC8 00184F28 D0 03 00 34 */ stfs f0, 0x34(r3) +/* 80187FCC 00184F2C C0 04 00 38 */ lfs f0, 0x38(r4) +/* 80187FD0 00184F30 D0 03 00 38 */ stfs f0, 0x38(r3) +/* 80187FD4 00184F34 88 04 00 48 */ lbz r0, 0x48(r4) +/* 80187FD8 00184F38 98 03 00 48 */ stb r0, 0x48(r3) +/* 80187FDC 00184F3C 88 04 00 48 */ lbz r0, 0x48(r4) +/* 80187FE0 00184F40 28 00 00 00 */ cmplwi r0, 0 +/* 80187FE4 00184F44 4D 82 00 20 */ beqlr +/* 80187FE8 00184F48 34 A3 00 3C */ addic. r5, r3, 0x3c +/* 80187FEC 00184F4C 4D 82 00 20 */ beqlr +/* 80187FF0 00184F50 C0 04 00 3C */ lfs f0, 0x3c(r4) +/* 80187FF4 00184F54 D0 05 00 00 */ stfs f0, 0(r5) +/* 80187FF8 00184F58 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 80187FFC 00184F5C D0 05 00 04 */ stfs f0, 4(r5) +/* 80188000 00184F60 C0 04 00 44 */ lfs f0, 0x44(r4) +/* 80188004 00184F64 D0 05 00 08 */ stfs f0, 8(r5) +/* 80188008 00184F68 4E 80 00 20 */ blr + +.global CollisionDamping__15CGroundMovementFRC9CVector3fRC9CVector3fRC9CVector3fff +CollisionDamping__15CGroundMovementFRC9CVector3fRC9CVector3fRC9CVector3fff: +/* 8018800C 00184F6C 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 80188010 00184F70 7C 08 02 A6 */ mflr r0 +/* 80188014 00184F74 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 80188018 00184F78 DB E1 00 D0 */ stfd f31, 0xd0(r1) +/* 8018801C 00184F7C F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 +/* 80188020 00184F80 DB C1 00 C0 */ stfd f30, 0xc0(r1) +/* 80188024 00184F84 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 +/* 80188028 00184F88 DB A1 00 B0 */ stfd f29, 0xb0(r1) +/* 8018802C 00184F8C F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0 +/* 80188030 00184F90 DB 81 00 A0 */ stfd f28, 0xa0(r1) +/* 80188034 00184F94 F3 81 00 A8 */ psq_st f28, 168(r1), 0, qr0 +/* 80188038 00184F98 DB 61 00 90 */ stfd f27, 0x90(r1) +/* 8018803C 00184F9C F3 61 00 98 */ psq_st f27, 152(r1), 0, qr0 +/* 80188040 00184FA0 DB 41 00 80 */ stfd f26, 0x80(r1) +/* 80188044 00184FA4 F3 41 00 88 */ psq_st f26, 136(r1), 0, qr0 +/* 80188048 00184FA8 DB 21 00 70 */ stfd f25, 0x70(r1) +/* 8018804C 00184FAC F3 21 00 78 */ psq_st f25, 120(r1), 0, qr0 +/* 80188050 00184FB0 DB 01 00 60 */ stfd f24, 0x60(r1) +/* 80188054 00184FB4 F3 01 00 68 */ psq_st f24, 104(r1), 0, qr0 +/* 80188058 00184FB8 DA E1 00 50 */ stfd f23, 0x50(r1) +/* 8018805C 00184FBC F2 E1 00 58 */ psq_st f23, 88(r1), 0, qr0 +/* 80188060 00184FC0 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80188064 00184FC4 93 C1 00 48 */ stw r30, 0x48(r1) +/* 80188068 00184FC8 93 A1 00 44 */ stw r29, 0x44(r1) +/* 8018806C 00184FCC 7C DF 33 78 */ mr r31, r6 +/* 80188070 00184FD0 7C 7D 1B 78 */ mr r29, r3 +/* 80188074 00184FD4 C0 86 00 04 */ lfs f4, 4(r6) +/* 80188078 00184FD8 7C 9E 23 78 */ mr r30, r4 +/* 8018807C 00184FDC C0 E5 00 04 */ lfs f7, 4(r5) +/* 80188080 00184FE0 FF C0 08 90 */ fmr f30, f1 +/* 80188084 00184FE4 C0 02 A3 80 */ lfs f0, lbl_805AC0A0@sda21(r2) +/* 80188088 00184FE8 FF E0 10 90 */ fmr f31, f2 +/* 8018808C 00184FEC C0 66 00 00 */ lfs f3, 0(r6) +/* 80188090 00184FF0 EC 24 01 F2 */ fmuls f1, f4, f7 +/* 80188094 00184FF4 C0 C5 00 00 */ lfs f6, 0(r5) +/* 80188098 00184FF8 C0 A6 00 08 */ lfs f5, 8(r6) +/* 8018809C 00184FFC EC 40 00 F2 */ fmuls f2, f0, f3 +/* 801880A0 00185000 EC 63 09 BA */ fmadds f3, f3, f6, f1 +/* 801880A4 00185004 C1 05 00 08 */ lfs f8, 8(r5) +/* 801880A8 00185008 EC 20 01 32 */ fmuls f1, f0, f4 +/* 801880AC 0018500C 38 61 00 2C */ addi r3, r1, 0x2c +/* 801880B0 00185010 EC 00 01 72 */ fmuls f0, f0, f5 +/* 801880B4 00185014 EC A5 1A 3A */ fmadds f5, f5, f8, f3 +/* 801880B8 00185018 D0 41 00 08 */ stfs f2, 8(r1) +/* 801880BC 0018501C 38 81 00 20 */ addi r4, r1, 0x20 +/* 801880C0 00185020 EC 85 00 72 */ fmuls f4, f5, f1 +/* 801880C4 00185024 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801880C8 00185028 EC 65 00 32 */ fmuls f3, f5, f0 +/* 801880CC 0018502C EC 25 00 B2 */ fmuls f1, f5, f2 +/* 801880D0 00185030 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801880D4 00185034 EC A7 20 2A */ fadds f5, f7, f4 +/* 801880D8 00185038 EC 48 18 2A */ fadds f2, f8, f3 +/* 801880DC 0018503C D0 81 00 18 */ stfs f4, 0x18(r1) +/* 801880E0 00185040 EC 06 08 2A */ fadds f0, f6, f1 +/* 801880E4 00185044 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801880E8 00185048 D0 61 00 1C */ stfs f3, 0x1c(r1) +/* 801880EC 0018504C D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801880F0 00185050 D0 A1 00 24 */ stfs f5, 0x24(r1) +/* 801880F4 00185054 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801880F8 00185058 48 18 C7 59 */ bl AsNormalized__9CVector3fCFv +/* 801880FC 0018505C C3 21 00 30 */ lfs f25, 0x30(r1) +/* 80188100 00185060 7F C3 F3 78 */ mr r3, r30 +/* 80188104 00185064 C0 5F 00 04 */ lfs f2, 4(r31) +/* 80188108 00185068 C0 3F 00 00 */ lfs f1, 0(r31) +/* 8018810C 0018506C EC 02 06 72 */ fmuls f0, f2, f25 +/* 80188110 00185070 C2 E1 00 2C */ lfs f23, 0x2c(r1) +/* 80188114 00185074 C3 01 00 34 */ lfs f24, 0x34(r1) +/* 80188118 00185078 C0 7F 00 08 */ lfs f3, 8(r31) +/* 8018811C 0018507C EC 01 05 FA */ fmadds f0, f1, f23, f0 +/* 80188120 00185080 EC 03 06 3A */ fmadds f0, f3, f24, f0 +/* 80188124 00185084 EF 40 00 72 */ fmuls f26, f0, f1 +/* 80188128 00185088 EF 60 00 B2 */ fmuls f27, f0, f2 +/* 8018812C 0018508C EF 80 00 F2 */ fmuls f28, f0, f3 +/* 80188130 00185090 48 18 C7 89 */ bl Magnitude__9CVector3fCFv +/* 80188134 00185094 FF A0 08 90 */ fmr f29, f1 +/* 80188138 00185098 7F C3 F3 78 */ mr r3, r30 +/* 8018813C 0018509C 48 18 C7 7D */ bl Magnitude__9CVector3fCFv +/* 80188140 001850A0 EC 17 D0 28 */ fsubs f0, f23, f26 +/* 80188144 001850A4 EC 59 D8 28 */ fsubs f2, f25, f27 +/* 80188148 001850A8 EC A1 06 B2 */ fmuls f5, f1, f26 +/* 8018814C 001850AC EC 9D 00 32 */ fmuls f4, f29, f0 +/* 80188150 001850B0 EC 18 E0 28 */ fsubs f0, f24, f28 +/* 80188154 001850B4 EC 61 06 F2 */ fmuls f3, f1, f27 +/* 80188158 001850B8 EC 5D 00 B2 */ fmuls f2, f29, f2 +/* 8018815C 001850BC EC 21 07 32 */ fmuls f1, f1, f28 +/* 80188160 001850C0 EC 1D 00 32 */ fmuls f0, f29, f0 +/* 80188164 001850C4 EC BE 01 72 */ fmuls f5, f30, f5 +/* 80188168 001850C8 EC 9F 01 32 */ fmuls f4, f31, f4 +/* 8018816C 001850CC EC 7E 00 F2 */ fmuls f3, f30, f3 +/* 80188170 001850D0 EC 5F 00 B2 */ fmuls f2, f31, f2 +/* 80188174 001850D4 EC 85 20 2A */ fadds f4, f5, f4 +/* 80188178 001850D8 EC 3E 00 72 */ fmuls f1, f30, f1 +/* 8018817C 001850DC EC 1F 00 32 */ fmuls f0, f31, f0 +/* 80188180 001850E0 EC 43 10 2A */ fadds f2, f3, f2 +/* 80188184 001850E4 D0 9D 00 00 */ stfs f4, 0(r29) +/* 80188188 001850E8 EC 01 00 2A */ fadds f0, f1, f0 +/* 8018818C 001850EC D0 5D 00 04 */ stfs f2, 4(r29) +/* 80188190 001850F0 D0 1D 00 08 */ stfs f0, 8(r29) +/* 80188194 001850F4 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 +/* 80188198 001850F8 CB E1 00 D0 */ lfd f31, 0xd0(r1) +/* 8018819C 001850FC E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 +/* 801881A0 00185100 CB C1 00 C0 */ lfd f30, 0xc0(r1) +/* 801881A4 00185104 E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0 +/* 801881A8 00185108 CB A1 00 B0 */ lfd f29, 0xb0(r1) +/* 801881AC 0018510C E3 81 00 A8 */ psq_l f28, 168(r1), 0, qr0 +/* 801881B0 00185110 CB 81 00 A0 */ lfd f28, 0xa0(r1) +/* 801881B4 00185114 E3 61 00 98 */ psq_l f27, 152(r1), 0, qr0 +/* 801881B8 00185118 CB 61 00 90 */ lfd f27, 0x90(r1) +/* 801881BC 0018511C E3 41 00 88 */ psq_l f26, 136(r1), 0, qr0 +/* 801881C0 00185120 CB 41 00 80 */ lfd f26, 0x80(r1) +/* 801881C4 00185124 E3 21 00 78 */ psq_l f25, 120(r1), 0, qr0 +/* 801881C8 00185128 CB 21 00 70 */ lfd f25, 0x70(r1) +/* 801881CC 0018512C E3 01 00 68 */ psq_l f24, 104(r1), 0, qr0 +/* 801881D0 00185130 CB 01 00 60 */ lfd f24, 0x60(r1) +/* 801881D4 00185134 E2 E1 00 58 */ psq_l f23, 88(r1), 0, qr0 +/* 801881D8 00185138 CA E1 00 50 */ lfd f23, 0x50(r1) +/* 801881DC 0018513C 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801881E0 00185140 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801881E4 00185144 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 801881E8 00185148 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 801881EC 0018514C 7C 08 03 A6 */ mtlr r0 +/* 801881F0 00185150 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 801881F4 00185154 4E 80 00 20 */ blr + +.global "MoveGroundColliderXY__15CGroundMovementFR19CAreaCollisionCacheR13CStateManagerR13CPhysicsActorRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>f" +"MoveGroundColliderXY__15CGroundMovementFR19CAreaCollisionCacheR13CStateManagerR13CPhysicsActorRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>f": +/* 801881F8 00185158 94 21 D8 E0 */ stwu r1, -0x2720(r1) +/* 801881FC 0018515C 7C 08 02 A6 */ mflr r0 +/* 80188200 00185160 90 01 27 24 */ stw r0, 0x2724(r1) +/* 80188204 00185164 38 00 27 18 */ li r0, 0x2718 +/* 80188208 00185168 DB E1 27 10 */ stfd f31, 0x2710(r1) +/* 8018820C 0018516C 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 +/* 80188210 00185170 38 00 27 08 */ li r0, 0x2708 +/* 80188214 00185174 DB C1 27 00 */ stfd f30, 0x2700(r1) +/* 80188218 00185178 13 C1 00 0E */ psq_stx f30, r1, r0, 0, qr0 +/* 8018821C 0018517C 38 00 26 F8 */ li r0, 0x26f8 +/* 80188220 00185180 DB A1 26 F0 */ stfd f29, 0x26f0(r1) +/* 80188224 00185184 13 A1 00 0E */ psq_stx f29, r1, r0, 0, qr0 +/* 80188228 00185188 BE 01 26 B0 */ stmw r16, 0x26b0(r1) +/* 8018822C 0018518C 7C BE 2B 78 */ mr r30, r5 +/* 80188230 00185190 80 A5 00 6C */ lwz r5, 0x6c(r5) +/* 80188234 00185194 80 1E 00 68 */ lwz r0, 0x68(r30) +/* 80188238 00185198 39 00 00 00 */ li r8, 0 +/* 8018823C 0018519C 3B 40 00 01 */ li r26, 1 +/* 80188240 001851A0 7C 7C 1B 78 */ mr r28, r3 +/* 80188244 001851A4 7C A5 40 38 */ and r5, r5, r8 +/* 80188248 001851A8 FF E0 08 90 */ fmr f31, f1 +/* 8018824C 001851AC 7C 00 D0 38 */ and r0, r0, r26 +/* 80188250 001851B0 7C 9D 23 78 */ mr r29, r4 +/* 80188254 001851B4 7C A3 42 78 */ xor r3, r5, r8 +/* 80188258 001851B8 7C D6 33 78 */ mr r22, r6 +/* 8018825C 001851BC 7C 00 42 78 */ xor r0, r0, r8 +/* 80188260 001851C0 7C 60 03 79 */ or. r0, r3, r0 +/* 80188264 001851C4 7C F5 3B 78 */ mr r21, r7 +/* 80188268 001851C8 3A 80 00 00 */ li r20, 0 +/* 8018826C 001851CC 41 82 00 08 */ beq lbl_80188274 +/* 80188270 001851D0 48 00 00 08 */ b lbl_80188278 +lbl_80188274: +/* 80188274 001851D4 7D 1A 43 78 */ mr r26, r8 +lbl_80188278: +/* 80188278 001851D8 7F C4 F3 78 */ mr r4, r30 +/* 8018827C 001851DC 38 61 01 A4 */ addi r3, r1, 0x1a4 +/* 80188280 001851E0 4B F9 33 F5 */ bl GetMotionState__13CPhysicsActorCFv +/* 80188284 001851E4 C1 81 01 A4 */ lfs f12, 0x1a4(r1) +/* 80188288 001851E8 38 60 00 00 */ li r3, 0 +/* 8018828C 001851EC C1 61 01 A8 */ lfs f11, 0x1a8(r1) +/* 80188290 001851F0 C1 41 01 AC */ lfs f10, 0x1ac(r1) +/* 80188294 001851F4 C1 21 01 B0 */ lfs f9, 0x1b0(r1) +/* 80188298 001851F8 C1 01 01 B4 */ lfs f8, 0x1b4(r1) +/* 8018829C 001851FC C0 E1 01 B8 */ lfs f7, 0x1b8(r1) +/* 801882A0 00185200 C0 C1 01 BC */ lfs f6, 0x1bc(r1) +/* 801882A4 00185204 C0 A1 01 C0 */ lfs f5, 0x1c0(r1) +/* 801882A8 00185208 C0 81 01 C4 */ lfs f4, 0x1c4(r1) +/* 801882AC 0018520C C0 61 01 C8 */ lfs f3, 0x1c8(r1) +/* 801882B0 00185210 C0 41 01 CC */ lfs f2, 0x1cc(r1) +/* 801882B4 00185214 C0 21 01 D0 */ lfs f1, 0x1d0(r1) +/* 801882B8 00185218 C0 01 01 D4 */ lfs f0, 0x1d4(r1) +/* 801882BC 0018521C D1 81 02 0C */ stfs f12, 0x20c(r1) +/* 801882C0 00185220 D1 61 02 10 */ stfs f11, 0x210(r1) +/* 801882C4 00185224 D1 41 02 14 */ stfs f10, 0x214(r1) +/* 801882C8 00185228 D1 21 02 18 */ stfs f9, 0x218(r1) +/* 801882CC 0018522C D1 01 02 1C */ stfs f8, 0x21c(r1) +/* 801882D0 00185230 D0 E1 02 20 */ stfs f7, 0x220(r1) +/* 801882D4 00185234 D0 C1 02 24 */ stfs f6, 0x224(r1) +/* 801882D8 00185238 D0 A1 02 28 */ stfs f5, 0x228(r1) +/* 801882DC 0018523C D0 81 02 2C */ stfs f4, 0x22c(r1) +/* 801882E0 00185240 D0 61 02 30 */ stfs f3, 0x230(r1) +/* 801882E4 00185244 D0 41 02 34 */ stfs f2, 0x234(r1) +/* 801882E8 00185248 D0 21 02 38 */ stfs f1, 0x238(r1) +/* 801882EC 0018524C D0 01 02 3C */ stfs f0, 0x23c(r1) +/* 801882F0 00185250 4B F2 C2 09 */ bl IsUser__Fi +/* 801882F4 00185254 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801882F8 00185258 41 82 00 20 */ beq lbl_80188318 +/* 801882FC 0018525C 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80188300 00185260 7F C3 F3 78 */ mr r3, r30 +/* 80188304 00185264 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 80188308 00185268 4B F9 27 31 */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f +/* 8018830C 0018526C 7F C3 F3 78 */ mr r3, r30 +/* 80188310 00185270 38 81 02 0C */ addi r4, r1, 0x20c +/* 80188314 00185274 4B F9 34 15 */ bl SetMotionState__13CPhysicsActorFRC12CMotionState +lbl_80188318: +/* 80188318 00185278 88 0D A4 6C */ lbz r0, lbl_805A902C@sda21(r13) +/* 8018831C 0018527C 7C 00 07 75 */ extsb. r0, r0 +/* 80188320 00185280 40 82 00 14 */ bne lbl_80188334 +/* 80188324 00185284 38 60 00 00 */ li r3, 0 +/* 80188328 00185288 38 00 00 01 */ li r0, 1 +/* 8018832C 0018528C 90 6D A4 68 */ stw r3, lbl_805A9028@sda21(r13) +/* 80188330 00185290 98 0D A4 6C */ stb r0, lbl_805A902C@sda21(r13) +lbl_80188334: +/* 80188334 00185294 88 0D A4 74 */ lbz r0, lbl_805A9034@sda21(r13) +/* 80188338 00185298 7C 00 07 75 */ extsb. r0, r0 +/* 8018833C 0018529C 40 82 00 14 */ bne lbl_80188350 +/* 80188340 001852A0 38 60 00 00 */ li r3, 0 +/* 80188344 001852A4 38 00 00 01 */ li r0, 1 +/* 80188348 001852A8 90 6D A4 70 */ stw r3, lbl_805A9030@sda21(r13) +/* 8018834C 001852AC 98 0D A4 74 */ stb r0, lbl_805A9034@sda21(r13) +lbl_80188350: +/* 80188350 001852B0 88 0D A4 7C */ lbz r0, lbl_805A903C@sda21(r13) +/* 80188354 001852B4 7C 00 07 75 */ extsb. r0, r0 +/* 80188358 001852B8 40 82 00 10 */ bne lbl_80188368 +/* 8018835C 001852BC 38 00 00 01 */ li r0, 1 +/* 80188360 001852C0 90 0D A4 78 */ stw r0, lbl_805A9038@sda21(r13) +/* 80188364 001852C4 98 0D A4 7C */ stb r0, lbl_805A903C@sda21(r13) +lbl_80188368: +/* 80188368 001852C8 38 00 00 00 */ li r0, 0 +/* 8018836C 001852CC FC 20 F8 90 */ fmr f1, f31 +/* 80188370 001852D0 D3 E1 00 28 */ stfs f31, 0x28(r1) +/* 80188374 001852D4 7F C4 F3 78 */ mr r4, r30 +/* 80188378 001852D8 38 61 01 70 */ addi r3, r1, 0x170 +/* 8018837C 001852DC 3B E0 00 00 */ li r31, 0 +/* 80188380 001852E0 D3 E1 00 24 */ stfs f31, 0x24(r1) +/* 80188384 001852E4 3A E0 00 00 */ li r23, 0 +/* 80188388 001852E8 90 01 1A A8 */ stw r0, 0x1aa8(r1) +/* 8018838C 001852EC 4B F9 34 7D */ bl PredictMotion_Internal__13CPhysicsActorCFf +/* 80188390 001852F0 C1 81 01 70 */ lfs f12, 0x170(r1) +/* 80188394 001852F4 38 61 01 D8 */ addi r3, r1, 0x1d8 +/* 80188398 001852F8 C1 61 01 74 */ lfs f11, 0x174(r1) +/* 8018839C 001852FC C1 41 01 78 */ lfs f10, 0x178(r1) +/* 801883A0 00185300 C1 21 01 7C */ lfs f9, 0x17c(r1) +/* 801883A4 00185304 C1 01 01 80 */ lfs f8, 0x180(r1) +/* 801883A8 00185308 C0 E1 01 84 */ lfs f7, 0x184(r1) +/* 801883AC 0018530C C0 C1 01 88 */ lfs f6, 0x188(r1) +/* 801883B0 00185310 C0 A1 01 8C */ lfs f5, 0x18c(r1) +/* 801883B4 00185314 C0 81 01 90 */ lfs f4, 0x190(r1) +/* 801883B8 00185318 C0 61 01 94 */ lfs f3, 0x194(r1) +/* 801883BC 0018531C C0 41 01 98 */ lfs f2, 0x198(r1) +/* 801883C0 00185320 C0 21 01 9C */ lfs f1, 0x19c(r1) +/* 801883C4 00185324 C0 01 01 A0 */ lfs f0, 0x1a0(r1) +/* 801883C8 00185328 D1 81 01 D8 */ stfs f12, 0x1d8(r1) +/* 801883CC 0018532C D1 61 01 DC */ stfs f11, 0x1dc(r1) +/* 801883D0 00185330 D1 41 01 E0 */ stfs f10, 0x1e0(r1) +/* 801883D4 00185334 D1 21 01 E4 */ stfs f9, 0x1e4(r1) +/* 801883D8 00185338 D1 01 01 E8 */ stfs f8, 0x1e8(r1) +/* 801883DC 0018533C D0 E1 01 EC */ stfs f7, 0x1ec(r1) +/* 801883E0 00185340 D0 C1 01 F0 */ stfs f6, 0x1f0(r1) +/* 801883E4 00185344 D0 A1 01 F4 */ stfs f5, 0x1f4(r1) +/* 801883E8 00185348 D0 81 01 F8 */ stfs f4, 0x1f8(r1) +/* 801883EC 0018534C D0 61 01 FC */ stfs f3, 0x1fc(r1) +/* 801883F0 00185350 D0 41 02 00 */ stfs f2, 0x200(r1) +/* 801883F4 00185354 D0 21 02 04 */ stfs f1, 0x204(r1) +/* 801883F8 00185358 D0 01 02 08 */ stfs f0, 0x208(r1) +/* 801883FC 0018535C 48 18 C4 BD */ bl Magnitude__9CVector3fCFv +/* 80188400 00185360 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 80188404 00185364 FF A0 08 90 */ fmr f29, f1 +/* 80188408 00185368 41 82 00 30 */ beq lbl_80188438 +/* 8018840C 0018536C C0 22 A3 64 */ lfs f1, lbl_805AC084@sda21(r2) +/* 80188410 00185370 C0 0D 8E B0 */ lfs f0, lbl_805A7A70@sda21(r13) +/* 80188414 00185374 EC 3D 08 24 */ fdivs f1, f29, f1 +/* 80188418 00185378 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018841C 0018537C D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80188420 00185380 40 80 00 0C */ bge lbl_8018842C +/* 80188424 00185384 38 6D 8E B0 */ addi r3, r13, lbl_805A7A70@sda21 +/* 80188428 00185388 48 00 00 08 */ b lbl_80188430 +lbl_8018842C: +/* 8018842C 0018538C 38 61 00 18 */ addi r3, r1, 0x18 +lbl_80188430: +/* 80188430 00185390 C0 03 00 00 */ lfs f0, 0(r3) +/* 80188434 00185394 48 00 00 2C */ b lbl_80188460 +lbl_80188438: +/* 80188438 00185398 C0 22 A3 84 */ lfs f1, lbl_805AC0A4@sda21(r2) +/* 8018843C 0018539C C0 0D 8E B4 */ lfs f0, lbl_805A7A74@sda21(r13) +/* 80188440 001853A0 EC 3D 08 24 */ fdivs f1, f29, f1 +/* 80188444 001853A4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80188448 001853A8 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 8018844C 001853AC 40 80 00 0C */ bge lbl_80188458 +/* 80188450 001853B0 38 6D 8E B4 */ addi r3, r13, lbl_805A7A74@sda21 +/* 80188454 001853B4 48 00 00 08 */ b lbl_8018845C +lbl_80188458: +/* 80188458 001853B8 38 61 00 14 */ addi r3, r1, 0x14 +lbl_8018845C: +/* 8018845C 001853BC C0 03 00 00 */ lfs f0, 0(r3) +lbl_80188460: +/* 80188460 001853C0 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 80188464 001853C4 7F C3 F3 78 */ mr r3, r30 +/* 80188468 001853C8 81 9E 00 00 */ lwz r12, 0(r30) +/* 8018846C 001853CC 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80188470 001853D0 7D 89 03 A6 */ mtctr r12 +/* 80188474 001853D4 4E 80 04 21 */ bctrl +/* 80188478 001853D8 4B FF A2 55 */ bl GetMinExtentForCollisionPrimitive__14CGameCollisionFRC19CCollisionPrimitive +/* 8018847C 001853DC C0 02 A3 20 */ lfs f0, lbl_805AC040@sda21(r2) +/* 80188480 001853E0 EC 20 00 72 */ fmuls f1, f0, f1 +/* 80188484 001853E4 FC 1D 08 40 */ fcmpo cr0, f29, f1 +/* 80188488 001853E8 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 8018848C 001853EC 40 81 00 AC */ ble lbl_80188538 +/* 80188490 001853F0 EC 1F E8 24 */ fdivs f0, f31, f29 +/* 80188494 001853F4 7F C4 F3 78 */ mr r4, r30 +/* 80188498 001853F8 38 61 01 3C */ addi r3, r1, 0x13c +/* 8018849C 001853FC EC 21 00 32 */ fmuls f1, f1, f0 +/* 801884A0 00185400 FF E0 08 90 */ fmr f31, f1 +/* 801884A4 00185404 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801884A8 00185408 4B F9 33 61 */ bl PredictMotion_Internal__13CPhysicsActorCFf +/* 801884AC 0018540C C0 21 00 20 */ lfs f1, 0x20(r1) +/* 801884B0 00185410 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 801884B4 00185414 82 21 01 3C */ lwz r17, 0x13c(r1) +/* 801884B8 00185418 82 01 01 40 */ lwz r16, 0x140(r1) +/* 801884BC 0018541C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801884C0 00185420 81 81 01 44 */ lwz r12, 0x144(r1) +/* 801884C4 00185424 81 61 01 48 */ lwz r11, 0x148(r1) +/* 801884C8 00185428 81 41 01 4C */ lwz r10, 0x14c(r1) +/* 801884CC 0018542C 81 21 01 50 */ lwz r9, 0x150(r1) +/* 801884D0 00185430 81 01 01 54 */ lwz r8, 0x154(r1) +/* 801884D4 00185434 80 E1 01 58 */ lwz r7, 0x158(r1) +/* 801884D8 00185438 80 C1 01 5C */ lwz r6, 0x15c(r1) +/* 801884DC 0018543C 80 A1 01 60 */ lwz r5, 0x160(r1) +/* 801884E0 00185440 80 81 01 64 */ lwz r4, 0x164(r1) +/* 801884E4 00185444 80 61 01 68 */ lwz r3, 0x168(r1) +/* 801884E8 00185448 80 01 01 6C */ lwz r0, 0x16c(r1) +/* 801884EC 0018544C 92 21 01 D8 */ stw r17, 0x1d8(r1) +/* 801884F0 00185450 92 01 01 DC */ stw r16, 0x1dc(r1) +/* 801884F4 00185454 91 81 01 E0 */ stw r12, 0x1e0(r1) +/* 801884F8 00185458 91 61 01 E4 */ stw r11, 0x1e4(r1) +/* 801884FC 0018545C 91 41 01 E8 */ stw r10, 0x1e8(r1) +/* 80188500 00185460 91 21 01 EC */ stw r9, 0x1ec(r1) +/* 80188504 00185464 91 01 01 F0 */ stw r8, 0x1f0(r1) +/* 80188508 00185468 90 E1 01 F4 */ stw r7, 0x1f4(r1) +/* 8018850C 0018546C 90 C1 01 F8 */ stw r6, 0x1f8(r1) +/* 80188510 00185470 90 A1 01 FC */ stw r5, 0x1fc(r1) +/* 80188514 00185474 90 81 02 00 */ stw r4, 0x200(r1) +/* 80188518 00185478 90 61 02 04 */ stw r3, 0x204(r1) +/* 8018851C 0018547C 90 01 02 08 */ stw r0, 0x208(r1) +/* 80188520 00185480 40 80 00 0C */ bge lbl_8018852C +/* 80188524 00185484 38 61 00 20 */ addi r3, r1, 0x20 +/* 80188528 00185488 48 00 00 08 */ b lbl_80188530 +lbl_8018852C: +/* 8018852C 0018548C 38 61 00 1C */ addi r3, r1, 0x1c +lbl_80188530: +/* 80188530 00185490 C0 03 00 00 */ lfs f0, 0(r3) +/* 80188534 00185494 D0 01 00 20 */ stfs f0, 0x20(r1) +lbl_80188538: +/* 80188538 00185498 FF A0 F8 90 */ fmr f29, f31 +/* 8018853C 0018549C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80188540 001854A0 C3 C2 A3 18 */ lfs f30, lbl_805AC038@sda21(r2) +/* 80188544 001854A4 3A 01 01 00 */ addi r16, r1, 0x100 +/* 80188548 001854A8 3A 21 02 A4 */ addi r17, r1, 0x2a4 +/* 8018854C 001854AC 3B 21 02 80 */ addi r25, r1, 0x280 +/* 80188550 001854B0 3B 01 02 78 */ addi r24, r1, 0x278 +/* 80188554 001854B4 3B 63 66 A0 */ addi r27, r3, skZero3f@l +/* 80188558 001854B8 38 00 00 01 */ li r0, 1 +/* 8018855C 001854BC 48 00 05 40 */ b lbl_80188A9C +lbl_80188560: +/* 80188560 001854C0 7F C3 F3 78 */ mr r3, r30 +/* 80188564 001854C4 38 81 01 D8 */ addi r4, r1, 0x1d8 +/* 80188568 001854C8 4B F9 24 D1 */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f +/* 8018856C 001854CC 80 A1 1A A8 */ lwz r5, 0x1aa8(r1) +/* 80188570 001854D0 38 60 00 00 */ li r3, 0 +/* 80188574 001854D4 2C 05 00 00 */ cmpwi r5, 0 +/* 80188578 001854D8 40 81 00 44 */ ble lbl_801885BC +/* 8018857C 001854DC 2C 05 00 08 */ cmpwi r5, 8 +/* 80188580 001854E0 38 85 FF F8 */ addi r4, r5, -8 +/* 80188584 001854E4 40 81 00 20 */ ble lbl_801885A4 +/* 80188588 001854E8 38 04 00 07 */ addi r0, r4, 7 +/* 8018858C 001854EC 54 00 E8 FE */ srwi r0, r0, 3 +/* 80188590 001854F0 7C 09 03 A6 */ mtctr r0 +/* 80188594 001854F4 2C 04 00 00 */ cmpwi r4, 0 +/* 80188598 001854F8 40 81 00 0C */ ble lbl_801885A4 +lbl_8018859C: +/* 8018859C 001854FC 38 63 00 08 */ addi r3, r3, 8 +/* 801885A0 00185500 42 00 FF FC */ bdnz lbl_8018859C +lbl_801885A4: +/* 801885A4 00185504 7C 03 28 50 */ subf r0, r3, r5 +/* 801885A8 00185508 7C 09 03 A6 */ mtctr r0 +/* 801885AC 0018550C 7C 03 28 00 */ cmpw r3, r5 +/* 801885B0 00185510 40 80 00 0C */ bge lbl_801885BC +lbl_801885B4: +/* 801885B4 00185514 38 63 00 01 */ addi r3, r3, 1 +/* 801885B8 00185518 42 00 FF FC */ bdnz lbl_801885B4 +lbl_801885BC: +/* 801885BC 0018551C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801885C0 00185520 38 60 00 00 */ li r3, 0 +/* 801885C4 00185524 90 61 1A A8 */ stw r3, 0x1aa8(r1) +/* 801885C8 00185528 7F C4 F3 78 */ mr r4, r30 +/* 801885CC 0018552C 38 61 01 0C */ addi r3, r1, 0x10c +/* 801885D0 00185530 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801885D4 00185534 81 9E 00 00 */ lwz r12, 0(r30) +/* 801885D8 00185538 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 801885DC 0018553C 7D 89 03 A6 */ mtctr r12 +/* 801885E0 00185540 3B FF 00 01 */ addi r31, r31, 1 +/* 801885E4 00185544 4E 80 04 21 */ bctrl +/* 801885E8 00185548 7F C3 F3 78 */ mr r3, r30 +/* 801885EC 0018554C 81 9E 00 00 */ lwz r12, 0(r30) +/* 801885F0 00185550 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 801885F4 00185554 7D 89 03 A6 */ mtctr r12 +/* 801885F8 00185558 4E 80 04 21 */ bctrl +/* 801885FC 0018555C 7C 65 1B 78 */ mr r5, r3 +/* 80188600 00185560 7F A3 EB 78 */ mr r3, r29 +/* 80188604 00185564 7F 84 E3 78 */ mr r4, r28 +/* 80188608 00185568 7E C7 B3 78 */ mr r7, r22 +/* 8018860C 0018556C 7E A8 AB 78 */ mr r8, r21 +/* 80188610 00185570 38 C1 01 0C */ addi r6, r1, 0x10c +/* 80188614 00185574 39 21 00 10 */ addi r9, r1, 0x10 +/* 80188618 00185578 39 41 1A A8 */ addi r10, r1, 0x1aa8 +/* 8018861C 0018557C 4B FF BD C9 */ bl "DetectCollision_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>R9TUniqueIdR18CCollisionInfoList" +/* 80188620 00185580 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80188624 00185584 7C 72 1B 78 */ mr r18, r3 +/* 80188628 00185588 41 82 00 28 */ beq lbl_80188650 +/* 8018862C 0018558C A0 01 00 10 */ lhz r0, 0x10(r1) +/* 80188630 00185590 7F A3 EB 78 */ mr r3, r29 +/* 80188634 00185594 38 81 00 0C */ addi r4, r1, 0xc +/* 80188638 00185598 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8018863C 0018559C 4B EC 3F 39 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80188640 001855A0 7C 64 1B 78 */ mr r4, r3 +/* 80188644 001855A4 38 61 00 2C */ addi r3, r1, 0x2c +/* 80188648 001855A8 4B F2 40 9D */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" +/* 8018864C 001855AC 82 E3 00 04 */ lwz r23, 4(r3) +lbl_80188650: +/* 80188650 001855B0 7F C3 F3 78 */ mr r3, r30 +/* 80188654 001855B4 7F 64 DB 78 */ mr r4, r27 +/* 80188658 001855B8 4B F9 23 E1 */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f +/* 8018865C 001855BC 56 40 06 3F */ clrlwi. r0, r18, 0x18 +/* 80188660 001855C0 41 82 03 88 */ beq lbl_801889E8 +/* 80188664 001855C4 38 61 01 D8 */ addi r3, r1, 0x1d8 +/* 80188668 001855C8 3A 80 00 01 */ li r20, 1 +/* 8018866C 001855CC 48 18 C2 4D */ bl Magnitude__9CVector3fCFv +/* 80188670 001855D0 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 80188674 001855D4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80188678 001855D8 40 80 03 60 */ bge lbl_801889D8 +/* 8018867C 001855DC 38 00 00 00 */ li r0, 0 +/* 80188680 001855E0 28 17 00 00 */ cmplwi r23, 0 +/* 80188684 001855E4 90 01 0E A4 */ stw r0, 0xea4(r1) +/* 80188688 001855E8 90 01 02 A0 */ stw r0, 0x2a0(r1) +/* 8018868C 001855EC C0 7E 01 38 */ lfs f3, 0x138(r30) +/* 80188690 001855F0 D0 61 00 64 */ stfs f3, 0x64(r1) +/* 80188694 001855F4 C0 5E 01 3C */ lfs f2, 0x13c(r30) +/* 80188698 001855F8 D0 41 00 68 */ stfs f2, 0x68(r1) +/* 8018869C 001855FC C0 3E 01 40 */ lfs f1, 0x140(r30) +/* 801886A0 00185600 D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 801886A4 00185604 41 82 00 28 */ beq lbl_801886CC +/* 801886A8 00185608 C0 17 01 38 */ lfs f0, 0x138(r23) +/* 801886AC 0018560C EC 03 00 28 */ fsubs f0, f3, f0 +/* 801886B0 00185610 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 801886B4 00185614 C0 17 01 3C */ lfs f0, 0x13c(r23) +/* 801886B8 00185618 EC 02 00 28 */ fsubs f0, f2, f0 +/* 801886BC 0018561C D0 01 00 68 */ stfs f0, 0x68(r1) +/* 801886C0 00185620 C0 17 01 40 */ lfs f0, 0x140(r23) +/* 801886C4 00185624 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801886C8 00185628 D0 01 00 6C */ stfs f0, 0x6c(r1) +lbl_801886CC: +/* 801886CC 0018562C 38 61 00 64 */ addi r3, r1, 0x64 +/* 801886D0 00185630 38 81 1A A8 */ addi r4, r1, 0x1aa8 +/* 801886D4 00185634 38 A1 0E A4 */ addi r5, r1, 0xea4 +/* 801886D8 00185638 48 14 9C 71 */ bl FilterOutBackfaces__13CollisionUtilFRC9CVector3fRC18CCollisionInfoListR18CCollisionInfoList +/* 801886DC 0018563C 38 61 0E A4 */ addi r3, r1, 0xea4 +/* 801886E0 00185640 38 81 02 A0 */ addi r4, r1, 0x2a0 +/* 801886E4 00185644 4B FF D1 95 */ bl FilterBoxFloorCollisions__12CAABoxFilterFRC18CCollisionInfoListR18CCollisionInfoList +/* 801886E8 00185648 7F A3 EB 78 */ mr r3, r29 +/* 801886EC 0018564C 7F C4 F3 78 */ mr r4, r30 +/* 801886F0 00185650 38 A1 00 10 */ addi r5, r1, 0x10 +/* 801886F4 00185654 38 C1 02 A0 */ addi r6, r1, 0x2a0 +/* 801886F8 00185658 4B FF A4 C1 */ bl MakeCollisionCallbacks__14CGameCollisionFR13CStateManagerR13CPhysicsActorRC9TUniqueIdRC18CCollisionInfoList +/* 801886FC 0018565C 80 01 02 A0 */ lwz r0, 0x2a0(r1) +/* 80188700 00185660 2C 00 00 00 */ cmpwi r0, 0 +/* 80188704 00185664 40 82 01 14 */ bne lbl_80188818 +/* 80188708 00185668 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 8018870C 0018566C 41 82 01 0C */ beq lbl_80188818 +/* 80188710 00185670 C0 1E 01 F4 */ lfs f0, 0x1f4(r30) +/* 80188714 00185674 7E 04 83 78 */ mr r4, r16 +/* 80188718 00185678 38 61 00 40 */ addi r3, r1, 0x40 +/* 8018871C 0018567C 38 AD 8E B8 */ addi r5, r13, lbl_805A7A78@sda21 +/* 80188720 00185680 D0 01 00 D8 */ stfs f0, 0xd8(r1) +/* 80188724 00185684 C0 1E 01 F8 */ lfs f0, 0x1f8(r30) +/* 80188728 00185688 D0 01 00 DC */ stfs f0, 0xdc(r1) +/* 8018872C 0018568C C0 1E 01 FC */ lfs f0, 0x1fc(r30) +/* 80188730 00185690 D0 01 00 E0 */ stfs f0, 0xe0(r1) +/* 80188734 00185694 C0 1E 02 00 */ lfs f0, 0x200(r30) +/* 80188738 00185698 D0 01 00 E4 */ stfs f0, 0xe4(r1) +/* 8018873C 0018569C C0 1E 02 04 */ lfs f0, 0x204(r30) +/* 80188740 001856A0 D0 01 00 E8 */ stfs f0, 0xe8(r1) +/* 80188744 001856A4 C0 1E 02 08 */ lfs f0, 0x208(r30) +/* 80188748 001856A8 D0 01 00 EC */ stfs f0, 0xec(r1) +/* 8018874C 001856AC C0 1E 02 0C */ lfs f0, 0x20c(r30) +/* 80188750 001856B0 D0 01 00 F0 */ stfs f0, 0xf0(r1) +/* 80188754 001856B4 C0 1E 02 10 */ lfs f0, 0x210(r30) +/* 80188758 001856B8 D0 01 00 F4 */ stfs f0, 0xf4(r1) +/* 8018875C 001856BC C0 1E 02 14 */ lfs f0, 0x214(r30) +/* 80188760 001856C0 D0 01 00 F8 */ stfs f0, 0xf8(r1) +/* 80188764 001856C4 C0 1E 02 18 */ lfs f0, 0x218(r30) +/* 80188768 001856C8 D0 01 00 FC */ stfs f0, 0xfc(r1) +/* 8018876C 001856CC C0 1E 02 1C */ lfs f0, 0x21c(r30) +/* 80188770 001856D0 D0 01 01 00 */ stfs f0, 0x100(r1) +/* 80188774 001856D4 C0 1E 02 20 */ lfs f0, 0x220(r30) +/* 80188778 001856D8 D0 01 01 04 */ stfs f0, 0x104(r1) +/* 8018877C 001856DC C0 1E 02 24 */ lfs f0, 0x224(r30) +/* 80188780 001856E0 D0 01 01 08 */ stfs f0, 0x108(r1) +/* 80188784 001856E4 4B E9 2D 01 */ bl __ml__FRC10CAxisAngleRCf +/* 80188788 001856E8 C0 42 A3 20 */ lfs f2, lbl_805AC040@sda21(r2) +/* 8018878C 001856EC 7F C3 F3 78 */ mr r3, r30 +/* 80188790 001856F0 C0 01 00 F8 */ lfs f0, 0xf8(r1) +/* 80188794 001856F4 38 81 00 A4 */ addi r4, r1, 0xa4 +/* 80188798 001856F8 C0 21 00 FC */ lfs f1, 0xfc(r1) +/* 8018879C 001856FC ED 82 00 32 */ fmuls f12, f2, f0 +/* 801887A0 00185700 C0 01 00 F4 */ lfs f0, 0xf4(r1) +/* 801887A4 00185704 ED 62 00 72 */ fmuls f11, f2, f1 +/* 801887A8 00185708 C1 21 00 D8 */ lfs f9, 0xd8(r1) +/* 801887AC 0018570C ED 42 00 32 */ fmuls f10, f2, f0 +/* 801887B0 00185710 C1 01 00 DC */ lfs f8, 0xdc(r1) +/* 801887B4 00185714 C0 E1 00 E0 */ lfs f7, 0xe0(r1) +/* 801887B8 00185718 C0 C1 00 E4 */ lfs f6, 0xe4(r1) +/* 801887BC 0018571C C0 A1 00 E8 */ lfs f5, 0xe8(r1) +/* 801887C0 00185720 C0 81 00 EC */ lfs f4, 0xec(r1) +/* 801887C4 00185724 C0 61 00 F0 */ lfs f3, 0xf0(r1) +/* 801887C8 00185728 C0 41 00 40 */ lfs f2, 0x40(r1) +/* 801887CC 0018572C C0 21 00 44 */ lfs f1, 0x44(r1) +/* 801887D0 00185730 C0 01 00 48 */ lfs f0, 0x48(r1) +/* 801887D4 00185734 D1 41 00 4C */ stfs f10, 0x4c(r1) +/* 801887D8 00185738 D1 81 00 50 */ stfs f12, 0x50(r1) +/* 801887DC 0018573C D1 61 00 54 */ stfs f11, 0x54(r1) +/* 801887E0 00185740 D1 21 00 A4 */ stfs f9, 0xa4(r1) +/* 801887E4 00185744 D1 01 00 A8 */ stfs f8, 0xa8(r1) +/* 801887E8 00185748 D0 E1 00 AC */ stfs f7, 0xac(r1) +/* 801887EC 0018574C D0 C1 00 B0 */ stfs f6, 0xb0(r1) +/* 801887F0 00185750 D0 A1 00 B4 */ stfs f5, 0xb4(r1) +/* 801887F4 00185754 D0 81 00 B8 */ stfs f4, 0xb8(r1) +/* 801887F8 00185758 D0 61 00 BC */ stfs f3, 0xbc(r1) +/* 801887FC 0018575C D1 41 00 C0 */ stfs f10, 0xc0(r1) +/* 80188800 00185760 D1 81 00 C4 */ stfs f12, 0xc4(r1) +/* 80188804 00185764 D1 61 00 C8 */ stfs f11, 0xc8(r1) +/* 80188808 00185768 D0 41 00 CC */ stfs f2, 0xcc(r1) +/* 8018880C 0018576C D0 21 00 D0 */ stfs f1, 0xd0(r1) +/* 80188810 00185770 D0 01 00 D4 */ stfs f0, 0xd4(r1) +/* 80188814 00185774 4B F9 2F 15 */ bl SetMotionState__13CPhysicsActorFRC12CMotionState +lbl_80188818: +/* 80188818 00185778 38 60 00 00 */ li r3, 0 +/* 8018881C 0018577C 4B F2 BC DD */ bl IsUser__Fi +/* 80188820 00185780 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80188824 00185784 41 82 00 34 */ beq lbl_80188858 +/* 80188828 00185788 80 01 02 A0 */ lwz r0, 0x2a0(r1) +/* 8018882C 0018578C 2C 00 00 00 */ cmpwi r0, 0 +/* 80188830 00185790 40 81 00 18 */ ble lbl_80188848 +/* 80188834 00185794 48 1C 17 79 */ bl White__6CColorFv +/* 80188838 00185798 7C 64 1B 78 */ mr r4, r3 +/* 8018883C 0018579C 38 61 02 A0 */ addi r3, r1, 0x2a0 +/* 80188840 001857A0 4B FF A1 15 */ bl ShowCollisionResults__14CGameCollisionFR18CCollisionInfoListRC6CColor +/* 80188844 001857A4 48 00 00 14 */ b lbl_80188858 +lbl_80188848: +/* 80188848 001857A8 48 1C 17 45 */ bl Yellow__6CColorFv +/* 8018884C 001857AC 7C 64 1B 78 */ mr r4, r3 +/* 80188850 001857B0 38 61 1A A8 */ addi r3, r1, 0x1aa8 +/* 80188854 001857B4 4B FF A1 01 */ bl ShowCollisionResults__14CGameCollisionFR18CCollisionInfoListRC6CColor +lbl_80188858: +/* 80188858 001857B8 7E 33 8B 78 */ mr r19, r17 +/* 8018885C 001857BC 3A 40 00 00 */ li r18, 0 +/* 80188860 001857C0 48 00 00 94 */ b lbl_801888F4 +lbl_80188864: +/* 80188864 001857C4 7E 64 9B 78 */ mr r4, r19 +/* 80188868 001857C8 38 61 02 40 */ addi r3, r1, 0x240 +/* 8018886C 001857CC 4B F6 8C 35 */ bl __ct__14CCollisionInfoFRC14CCollisionInfo +/* 80188870 001857D0 7F C3 F3 78 */ mr r3, r30 +/* 80188874 001857D4 4B F9 1C 65 */ bl GetCoefficientOfRestitutionModifier__13CPhysicsActorCFv +/* 80188878 001857D8 FF A0 08 90 */ fmr f29, f1 +/* 8018887C 001857DC 38 61 02 40 */ addi r3, r1, 0x240 +/* 80188880 001857E0 4B FF A0 CD */ bl GetCoefficientOfRestitution__14CGameCollisionFRC14CCollisionInfo +/* 80188884 001857E4 C0 61 02 88 */ lfs f3, 0x288(r1) +/* 80188888 001857E8 28 17 00 00 */ cmplwi r23, 0 +/* 8018888C 001857EC C0 41 02 8C */ lfs f2, 0x28c(r1) +/* 80188890 001857F0 EF A1 E8 2A */ fadds f29, f1, f29 +/* 80188894 001857F4 C0 01 02 90 */ lfs f0, 0x290(r1) +/* 80188898 001857F8 D0 61 00 58 */ stfs f3, 0x58(r1) +/* 8018889C 001857FC D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 801888A0 00185800 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 801888A4 00185804 41 82 00 20 */ beq lbl_801888C4 +/* 801888A8 00185808 FC 20 E8 90 */ fmr f1, f29 +/* 801888AC 0018580C 7F C3 F3 78 */ mr r3, r30 +/* 801888B0 00185810 7E E4 BB 78 */ mr r4, r23 +/* 801888B4 00185814 38 A1 02 40 */ addi r5, r1, 0x240 +/* 801888B8 00185818 38 C0 00 01 */ li r6, 1 +/* 801888BC 0018581C 4B FF 98 45 */ bl CollideWithDynamicBodyNoRot__14CGameCollisionFR13CPhysicsActorR13CPhysicsActorRC14CCollisionInfofb +/* 801888C0 00185820 48 00 00 2C */ b lbl_801888EC +lbl_801888C4: +/* 801888C4 00185824 38 61 00 34 */ addi r3, r1, 0x34 +/* 801888C8 00185828 38 81 00 58 */ addi r4, r1, 0x58 +/* 801888CC 0018582C 48 18 B5 05 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 801888D0 00185830 FC 20 E8 90 */ fmr f1, f29 +/* 801888D4 00185834 7C 66 1B 78 */ mr r6, r3 +/* 801888D8 00185838 7F C3 F3 78 */ mr r3, r30 +/* 801888DC 0018583C 7F 04 C3 78 */ mr r4, r24 +/* 801888E0 00185840 7F 25 CB 78 */ mr r5, r25 +/* 801888E4 00185844 38 E0 00 01 */ li r7, 1 +/* 801888E8 00185848 4B FF 96 85 */ bl CollideWithStaticBodyNoRot__14CGameCollisionFR13CPhysicsActorRC13CMaterialListRC13CMaterialListRC13CUnitVector3ffb +lbl_801888EC: +/* 801888EC 0018584C 3A 73 00 60 */ addi r19, r19, 0x60 +/* 801888F0 00185850 3A 52 00 01 */ addi r18, r18, 1 +lbl_801888F4: +/* 801888F4 00185854 80 A1 02 A0 */ lwz r5, 0x2a0(r1) +/* 801888F8 00185858 7C 12 28 00 */ cmpw r18, r5 +/* 801888FC 0018585C 41 80 FF 68 */ blt lbl_80188864 +/* 80188900 00185860 C0 21 00 28 */ lfs f1, 0x28(r1) +/* 80188904 00185864 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 80188908 00185868 EC 21 F8 28 */ fsubs f1, f1, f31 +/* 8018890C 0018586C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80188910 00185870 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 80188914 00185874 40 80 00 0C */ bge lbl_80188920 +/* 80188918 00185878 38 61 00 24 */ addi r3, r1, 0x24 +/* 8018891C 0018587C 48 00 00 08 */ b lbl_80188924 +lbl_80188920: +/* 80188920 00185880 38 61 00 28 */ addi r3, r1, 0x28 +lbl_80188924: +/* 80188924 00185884 C3 A3 00 00 */ lfs f29, 0(r3) +/* 80188928 00185888 2C 05 00 00 */ cmpwi r5, 0 +/* 8018892C 0018588C 38 60 00 00 */ li r3, 0 +/* 80188930 00185890 FF E0 E8 90 */ fmr f31, f29 +/* 80188934 00185894 40 81 00 44 */ ble lbl_80188978 +/* 80188938 00185898 2C 05 00 08 */ cmpwi r5, 8 +/* 8018893C 0018589C 38 85 FF F8 */ addi r4, r5, -8 +/* 80188940 001858A0 40 81 00 20 */ ble lbl_80188960 +/* 80188944 001858A4 38 04 00 07 */ addi r0, r4, 7 +/* 80188948 001858A8 54 00 E8 FE */ srwi r0, r0, 3 +/* 8018894C 001858AC 7C 09 03 A6 */ mtctr r0 +/* 80188950 001858B0 2C 04 00 00 */ cmpwi r4, 0 +/* 80188954 001858B4 40 81 00 0C */ ble lbl_80188960 +lbl_80188958: +/* 80188958 001858B8 38 63 00 08 */ addi r3, r3, 8 +/* 8018895C 001858BC 42 00 FF FC */ bdnz lbl_80188958 +lbl_80188960: +/* 80188960 001858C0 7C 03 28 50 */ subf r0, r3, r5 +/* 80188964 001858C4 7C 09 03 A6 */ mtctr r0 +/* 80188968 001858C8 7C 03 28 00 */ cmpw r3, r5 +/* 8018896C 001858CC 40 80 00 0C */ bge lbl_80188978 +lbl_80188970: +/* 80188970 001858D0 38 63 00 01 */ addi r3, r3, 1 +/* 80188974 001858D4 42 00 FF FC */ bdnz lbl_80188970 +lbl_80188978: +/* 80188978 001858D8 80 A1 0E A4 */ lwz r5, 0xea4(r1) +/* 8018897C 001858DC 38 60 00 00 */ li r3, 0 +/* 80188980 001858E0 90 61 02 A0 */ stw r3, 0x2a0(r1) +/* 80188984 001858E4 2C 05 00 00 */ cmpwi r5, 0 +/* 80188988 001858E8 40 81 00 44 */ ble lbl_801889CC +/* 8018898C 001858EC 2C 05 00 08 */ cmpwi r5, 8 +/* 80188990 001858F0 38 85 FF F8 */ addi r4, r5, -8 +/* 80188994 001858F4 40 81 00 20 */ ble lbl_801889B4 +/* 80188998 001858F8 38 04 00 07 */ addi r0, r4, 7 +/* 8018899C 001858FC 54 00 E8 FE */ srwi r0, r0, 3 +/* 801889A0 00185900 7C 09 03 A6 */ mtctr r0 +/* 801889A4 00185904 2C 04 00 00 */ cmpwi r4, 0 +/* 801889A8 00185908 40 81 00 0C */ ble lbl_801889B4 +lbl_801889AC: +/* 801889AC 0018590C 38 63 00 08 */ addi r3, r3, 8 +/* 801889B0 00185910 42 00 FF FC */ bdnz lbl_801889AC +lbl_801889B4: +/* 801889B4 00185914 7C 03 28 50 */ subf r0, r3, r5 +/* 801889B8 00185918 7C 09 03 A6 */ mtctr r0 +/* 801889BC 0018591C 7C 03 28 00 */ cmpw r3, r5 +/* 801889C0 00185920 40 80 00 0C */ bge lbl_801889CC +lbl_801889C4: +/* 801889C4 00185924 38 63 00 01 */ addi r3, r3, 1 +/* 801889C8 00185928 42 00 FF FC */ bdnz lbl_801889C4 +lbl_801889CC: +/* 801889CC 0018592C 38 00 00 00 */ li r0, 0 +/* 801889D0 00185930 90 01 0E A4 */ stw r0, 0xea4(r1) +/* 801889D4 00185934 48 00 00 40 */ b lbl_80188A14 +lbl_801889D8: +/* 801889D8 00185938 C0 02 A3 20 */ lfs f0, lbl_805AC040@sda21(r2) +/* 801889DC 0018593C EF BD 00 32 */ fmuls f29, f29, f0 +/* 801889E0 00185940 EF FF 00 32 */ fmuls f31, f31, f0 +/* 801889E4 00185944 48 00 00 30 */ b lbl_80188A14 +lbl_801889E8: +/* 801889E8 00185948 7F C3 F3 78 */ mr r3, r30 +/* 801889EC 0018594C 38 81 01 D8 */ addi r4, r1, 0x1d8 +/* 801889F0 00185950 4B F9 2B 25 */ bl AddMotionState__13CPhysicsActorFRC12CMotionState +/* 801889F4 00185954 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 801889F8 00185958 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801889FC 0018595C 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 80188A00 00185960 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 80188A04 00185964 7F C3 F3 78 */ mr r3, r30 +/* 80188A08 00185968 FF E0 E8 90 */ fmr f31, f29 +/* 80188A0C 0018596C D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80188A10 00185970 4B F9 20 29 */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f +lbl_80188A14: +/* 80188A14 00185974 FC 20 F8 90 */ fmr f1, f31 +/* 80188A18 00185978 7F C4 F3 78 */ mr r4, r30 +/* 80188A1C 0018597C 38 61 00 70 */ addi r3, r1, 0x70 +/* 80188A20 00185980 4B F9 2D E9 */ bl PredictMotion_Internal__13CPhysicsActorCFf +/* 80188A24 00185984 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 80188A28 00185988 82 61 00 70 */ lwz r19, 0x70(r1) +/* 80188A2C 0018598C FC 00 F0 40 */ fcmpo cr0, f0, f30 +/* 80188A30 00185990 82 41 00 74 */ lwz r18, 0x74(r1) +/* 80188A34 00185994 81 81 00 78 */ lwz r12, 0x78(r1) +/* 80188A38 00185998 81 61 00 7C */ lwz r11, 0x7c(r1) +/* 80188A3C 0018599C 81 41 00 80 */ lwz r10, 0x80(r1) +/* 80188A40 001859A0 81 21 00 84 */ lwz r9, 0x84(r1) +/* 80188A44 001859A4 81 01 00 88 */ lwz r8, 0x88(r1) +/* 80188A48 001859A8 80 E1 00 8C */ lwz r7, 0x8c(r1) +/* 80188A4C 001859AC 80 C1 00 90 */ lwz r6, 0x90(r1) +/* 80188A50 001859B0 80 A1 00 94 */ lwz r5, 0x94(r1) +/* 80188A54 001859B4 80 81 00 98 */ lwz r4, 0x98(r1) +/* 80188A58 001859B8 80 61 00 9C */ lwz r3, 0x9c(r1) +/* 80188A5C 001859BC 80 01 00 A0 */ lwz r0, 0xa0(r1) +/* 80188A60 001859C0 92 61 01 D8 */ stw r19, 0x1d8(r1) +/* 80188A64 001859C4 92 41 01 DC */ stw r18, 0x1dc(r1) +/* 80188A68 001859C8 91 81 01 E0 */ stw r12, 0x1e0(r1) +/* 80188A6C 001859CC 91 61 01 E4 */ stw r11, 0x1e4(r1) +/* 80188A70 001859D0 91 41 01 E8 */ stw r10, 0x1e8(r1) +/* 80188A74 001859D4 91 21 01 EC */ stw r9, 0x1ec(r1) +/* 80188A78 001859D8 91 01 01 F0 */ stw r8, 0x1f0(r1) +/* 80188A7C 001859DC 90 E1 01 F4 */ stw r7, 0x1f4(r1) +/* 80188A80 001859E0 90 C1 01 F8 */ stw r6, 0x1f8(r1) +/* 80188A84 001859E4 90 A1 01 FC */ stw r5, 0x1fc(r1) +/* 80188A88 001859E8 90 81 02 00 */ stw r4, 0x200(r1) +/* 80188A8C 001859EC 90 61 02 04 */ stw r3, 0x204(r1) +/* 80188A90 001859F0 90 01 02 08 */ stw r0, 0x208(r1) +/* 80188A94 001859F4 7C 00 00 26 */ mfcr r0 +/* 80188A98 001859F8 54 00 17 FE */ rlwinm r0, r0, 2, 0x1f, 0x1f +lbl_80188A9C: +/* 80188A9C 001859FC 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 80188AA0 00185A00 40 82 FA C0 */ bne lbl_80188560 +/* 80188AA4 00185A04 56 80 06 3F */ clrlwi. r0, r20, 0x18 +/* 80188AA8 00185A08 40 82 00 48 */ bne lbl_80188AF0 +/* 80188AAC 00185A0C 80 7E 00 68 */ lwz r3, 0x68(r30) +/* 80188AB0 00185A10 38 00 00 20 */ li r0, 0x20 +/* 80188AB4 00185A14 80 BE 00 6C */ lwz r5, 0x6c(r30) +/* 80188AB8 00185A18 38 80 00 00 */ li r4, 0 +/* 80188ABC 00185A1C 7C 60 00 38 */ and r0, r3, r0 +/* 80188AC0 00185A20 7C A3 20 38 */ and r3, r5, r4 +/* 80188AC4 00185A24 7C 63 22 78 */ xor r3, r3, r4 +/* 80188AC8 00185A28 7C 00 22 78 */ xor r0, r0, r4 +/* 80188ACC 00185A2C 7C 60 03 79 */ or. r0, r3, r0 +/* 80188AD0 00185A30 40 82 00 20 */ bne lbl_80188AF0 +/* 80188AD4 00185A34 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80188AD8 00185A38 7F A3 EB 78 */ mr r3, r29 +/* 80188ADC 00185A3C 7F C4 F3 78 */ mr r4, r30 +/* 80188AE0 00185A40 38 A1 00 08 */ addi r5, r1, 8 +/* 80188AE4 00185A44 B0 01 00 08 */ sth r0, 8(r1) +/* 80188AE8 00185A48 38 C0 00 1A */ li r6, 0x1a +/* 80188AEC 00185A4C 4B EB B3 E5 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +lbl_80188AF0: +/* 80188AF0 00185A50 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80188AF4 00185A54 7F C3 F3 78 */ mr r3, r30 +/* 80188AF8 00185A58 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 80188AFC 00185A5C 4B F9 1F 3D */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f +/* 80188B00 00185A60 38 60 00 00 */ li r3, 0 +/* 80188B04 00185A64 4B F2 B9 F5 */ bl IsUser__Fi +/* 80188B08 00185A68 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80188B0C 00185A6C 41 82 00 34 */ beq lbl_80188B40 +/* 80188B10 00185A70 56 80 06 3F */ clrlwi. r0, r20, 0x18 +/* 80188B14 00185A74 41 82 00 1C */ beq lbl_80188B30 +/* 80188B18 00185A78 80 0D A4 70 */ lwz r0, lbl_805A9030@sda21(r13) +/* 80188B1C 00185A7C 80 6D A4 68 */ lwz r3, lbl_805A9028@sda21(r13) +/* 80188B20 00185A80 7C 80 FA 14 */ add r4, r0, r31 +/* 80188B24 00185A84 38 03 00 01 */ addi r0, r3, 1 +/* 80188B28 00185A88 90 8D A4 70 */ stw r4, lbl_805A9030@sda21(r13) +/* 80188B2C 00185A8C 90 0D A4 68 */ stw r0, lbl_805A9028@sda21(r13) +lbl_80188B30: +/* 80188B30 00185A90 80 0D A4 78 */ lwz r0, lbl_805A9038@sda21(r13) +/* 80188B34 00185A94 7C 1F 00 00 */ cmpw r31, r0 +/* 80188B38 00185A98 40 81 00 08 */ ble lbl_80188B40 +/* 80188B3C 00185A9C 93 ED A4 78 */ stw r31, lbl_805A9038@sda21(r13) +lbl_80188B40: +/* 80188B40 00185AA0 80 A1 1A A8 */ lwz r5, 0x1aa8(r1) +/* 80188B44 00185AA4 38 60 00 00 */ li r3, 0 +/* 80188B48 00185AA8 2C 05 00 00 */ cmpwi r5, 0 +/* 80188B4C 00185AAC 40 81 00 40 */ ble lbl_80188B8C +/* 80188B50 00185AB0 2C 05 00 08 */ cmpwi r5, 8 +/* 80188B54 00185AB4 38 85 FF F8 */ addi r4, r5, -8 +/* 80188B58 00185AB8 40 81 00 20 */ ble lbl_80188B78 +/* 80188B5C 00185ABC 38 04 00 07 */ addi r0, r4, 7 +/* 80188B60 00185AC0 54 00 E8 FE */ srwi r0, r0, 3 +/* 80188B64 00185AC4 7C 09 03 A6 */ mtctr r0 +/* 80188B68 00185AC8 2C 04 00 00 */ cmpwi r4, 0 +/* 80188B6C 00185ACC 40 81 00 0C */ ble lbl_80188B78 +lbl_80188B70: +/* 80188B70 00185AD0 38 63 00 08 */ addi r3, r3, 8 +/* 80188B74 00185AD4 42 00 FF FC */ bdnz lbl_80188B70 +lbl_80188B78: +/* 80188B78 00185AD8 7C 03 28 50 */ subf r0, r3, r5 +/* 80188B7C 00185ADC 7C 09 03 A6 */ mtctr r0 +/* 80188B80 00185AE0 7C 03 28 00 */ cmpw r3, r5 +/* 80188B84 00185AE4 40 80 00 08 */ bge lbl_80188B8C +lbl_80188B88: +/* 80188B88 00185AE8 42 00 00 00 */ bdnz lbl_80188B88 +lbl_80188B8C: +/* 80188B8C 00185AEC 38 00 00 00 */ li r0, 0 +/* 80188B90 00185AF0 7E 83 A3 78 */ mr r3, r20 +/* 80188B94 00185AF4 90 01 1A A8 */ stw r0, 0x1aa8(r1) +/* 80188B98 00185AF8 38 00 27 18 */ li r0, 0x2718 +/* 80188B9C 00185AFC 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 +/* 80188BA0 00185B00 CB E1 27 10 */ lfd f31, 0x2710(r1) +/* 80188BA4 00185B04 38 00 27 08 */ li r0, 0x2708 +/* 80188BA8 00185B08 13 C1 00 0C */ psq_lx f30, r1, r0, 0, qr0 +/* 80188BAC 00185B0C CB C1 27 00 */ lfd f30, 0x2700(r1) +/* 80188BB0 00185B10 38 00 26 F8 */ li r0, 0x26f8 +/* 80188BB4 00185B14 13 A1 00 0C */ psq_lx f29, r1, r0, 0, qr0 +/* 80188BB8 00185B18 CB A1 26 F0 */ lfd f29, 0x26f0(r1) +/* 80188BBC 00185B1C BA 01 26 B0 */ lmw r16, 0x26b0(r1) +/* 80188BC0 00185B20 80 01 27 24 */ lwz r0, 0x2724(r1) +/* 80188BC4 00185B24 7C 08 03 A6 */ mtlr r0 +/* 80188BC8 00185B28 38 21 27 20 */ addi r1, r1, 0x2720 +/* 80188BCC 00185B2C 4E 80 00 20 */ blr + +.global "MoveGroundColliderZ__15CGroundMovementFR19CAreaCollisionCacheR13CStateManagerR13CPhysicsActorRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>fRfR18CCollisionInfoListR9TUniqueId" +"MoveGroundColliderZ__15CGroundMovementFR19CAreaCollisionCacheR13CStateManagerR13CPhysicsActorRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>fRfR18CCollisionInfoListR9TUniqueId": +/* 80188BD0 00185B30 94 21 F2 B0 */ stwu r1, -0xd50(r1) +/* 80188BD4 00185B34 7C 08 02 A6 */ mflr r0 +/* 80188BD8 00185B38 90 01 0D 54 */ stw r0, 0xd54(r1) +/* 80188BDC 00185B3C DB E1 0D 40 */ stfd f31, 0xd40(r1) +/* 80188BE0 00185B40 F3 E1 0D 48 */ psq_st f31, -696(r1), 0, qr0 +/* 80188BE4 00185B44 DB C1 0D 30 */ stfd f30, 0xd30(r1) +/* 80188BE8 00185B48 F3 C1 0D 38 */ psq_st f30, -712(r1), 0, qr0 +/* 80188BEC 00185B4C BE 81 0D 00 */ stmw r20, 0xd00(r1) +/* 80188BF0 00185B50 FF E0 08 90 */ fmr f31, f1 +/* 80188BF4 00185B54 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) +/* 80188BF8 00185B58 7C 97 23 78 */ mr r23, r4 +/* 80188BFC 00185B5C 7C B8 2B 78 */ mr r24, r5 +/* 80188C00 00185B60 7C 76 1B 78 */ mr r22, r3 +/* 80188C04 00185B64 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 80188C08 00185B68 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 80188C0C 00185B6C 7C D9 33 78 */ mr r25, r6 +/* 80188C10 00185B70 7C FA 3B 78 */ mr r26, r7 +/* 80188C14 00185B74 7D 1B 43 78 */ mr r27, r8 +/* 80188C18 00185B78 D3 E1 00 5C */ stfs f31, 0x5c(r1) +/* 80188C1C 00185B7C 7D 3C 4B 78 */ mr r28, r9 +/* 80188C20 00185B80 7D 5D 53 78 */ mr r29, r10 +/* 80188C24 00185B84 7F 03 C3 78 */ mr r3, r24 +/* 80188C28 00185B88 38 81 00 54 */ addi r4, r1, 0x54 +/* 80188C2C 00185B8C 4B F9 1E 0D */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f +/* 80188C30 00185B90 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80188C34 00185B94 3C 60 80 5A */ lis r3, lbl_805A6754@ha +/* 80188C38 00185B98 38 A3 67 54 */ addi r5, r3, lbl_805A6754@l +/* 80188C3C 00185B9C 7F 04 C3 78 */ mr r4, r24 +/* 80188C40 00185BA0 B0 1D 00 00 */ sth r0, 0(r29) +/* 80188C44 00185BA4 38 61 00 C0 */ addi r3, r1, 0xc0 +/* 80188C48 00185BA8 C0 A5 00 00 */ lfs f5, 0(r5) +/* 80188C4C 00185BAC C0 85 00 04 */ lfs f4, 4(r5) +/* 80188C50 00185BB0 C0 65 00 08 */ lfs f3, 8(r5) +/* 80188C54 00185BB4 C0 45 00 0C */ lfs f2, 0xc(r5) +/* 80188C58 00185BB8 C0 25 00 10 */ lfs f1, 0x10(r5) +/* 80188C5C 00185BBC C0 05 00 14 */ lfs f0, 0x14(r5) +/* 80188C60 00185BC0 D0 A1 00 78 */ stfs f5, 0x78(r1) +/* 80188C64 00185BC4 D0 81 00 7C */ stfs f4, 0x7c(r1) +/* 80188C68 00185BC8 D0 61 00 80 */ stfs f3, 0x80(r1) +/* 80188C6C 00185BCC D0 41 00 84 */ stfs f2, 0x84(r1) +/* 80188C70 00185BD0 D0 21 00 88 */ stfs f1, 0x88(r1) +/* 80188C74 00185BD4 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 80188C78 00185BD8 81 98 00 00 */ lwz r12, 0(r24) +/* 80188C7C 00185BDC 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 80188C80 00185BE0 7D 89 03 A6 */ mtctr r12 +/* 80188C84 00185BE4 4E 80 04 21 */ bctrl +/* 80188C88 00185BE8 7F 03 C3 78 */ mr r3, r24 +/* 80188C8C 00185BEC 81 98 00 00 */ lwz r12, 0(r24) +/* 80188C90 00185BF0 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80188C94 00185BF4 7D 89 03 A6 */ mtctr r12 +/* 80188C98 00185BF8 4E 80 04 21 */ bctrl +/* 80188C9C 00185BFC 7C 65 1B 78 */ mr r5, r3 +/* 80188CA0 00185C00 7E E3 BB 78 */ mr r3, r23 +/* 80188CA4 00185C04 7E C4 B3 78 */ mr r4, r22 +/* 80188CA8 00185C08 7F 27 CB 78 */ mr r7, r25 +/* 80188CAC 00185C0C 7F 48 D3 78 */ mr r8, r26 +/* 80188CB0 00185C10 7F A9 EB 78 */ mr r9, r29 +/* 80188CB4 00185C14 7F 8A E3 78 */ mr r10, r28 +/* 80188CB8 00185C18 38 C1 00 C0 */ addi r6, r1, 0xc0 +/* 80188CBC 00185C1C 4B FF B7 29 */ bl "DetectCollision_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>R9TUniqueIdR18CCollisionInfoList" +/* 80188CC0 00185C20 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80188CC4 00185C24 7C 7E 1B 78 */ mr r30, r3 +/* 80188CC8 00185C28 41 82 02 8C */ beq lbl_80188F54 +/* 80188CCC 00185C2C 3B FC 00 04 */ addi r31, r28, 4 +/* 80188CD0 00185C30 3A 80 00 00 */ li r20, 0 +/* 80188CD4 00185C34 7F F5 FB 78 */ mr r21, r31 +/* 80188CD8 00185C38 48 00 00 30 */ b lbl_80188D08 +lbl_80188CDC: +/* 80188CDC 00185C3C 7E A4 AB 78 */ mr r4, r21 +/* 80188CE0 00185C40 38 61 00 78 */ addi r3, r1, 0x78 +/* 80188CE4 00185C44 48 1A EE 25 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 80188CE8 00185C48 7E A4 AB 78 */ mr r4, r21 +/* 80188CEC 00185C4C 38 61 00 48 */ addi r3, r1, 0x48 +/* 80188CF0 00185C50 48 14 54 35 */ bl GetExtreme__14CCollisionInfoCFv +/* 80188CF4 00185C54 38 61 00 78 */ addi r3, r1, 0x78 +/* 80188CF8 00185C58 38 81 00 48 */ addi r4, r1, 0x48 +/* 80188CFC 00185C5C 48 1A EE 0D */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 80188D00 00185C60 3A B5 00 60 */ addi r21, r21, 0x60 +/* 80188D04 00185C64 3A 94 00 01 */ addi r20, r20, 1 +lbl_80188D08: +/* 80188D08 00185C68 80 1C 00 00 */ lwz r0, 0(r28) +/* 80188D0C 00185C6C 7C 14 00 00 */ cmpw r20, r0 +/* 80188D10 00185C70 41 80 FF CC */ blt lbl_80188CDC +/* 80188D14 00185C74 7F 04 C3 78 */ mr r4, r24 +/* 80188D18 00185C78 38 61 00 60 */ addi r3, r1, 0x60 +/* 80188D1C 00185C7C 4B F9 1C 11 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 80188D20 00185C80 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) +/* 80188D24 00185C84 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 80188D28 00185C88 40 81 00 20 */ ble lbl_80188D48 +/* 80188D2C 00185C8C C0 41 00 80 */ lfs f2, 0x80(r1) +/* 80188D30 00185C90 C0 21 00 74 */ lfs f1, 0x74(r1) +/* 80188D34 00185C94 C0 02 A3 3C */ lfs f0, lbl_805AC05C@sda21(r2) +/* 80188D38 00185C98 EC 22 08 28 */ fsubs f1, f2, f1 +/* 80188D3C 00185C9C EC 01 00 28 */ fsubs f0, f1, f0 +/* 80188D40 00185CA0 EF DF 00 2A */ fadds f30, f31, f0 +/* 80188D44 00185CA4 48 00 00 1C */ b lbl_80188D60 +lbl_80188D48: +/* 80188D48 00185CA8 C0 21 00 8C */ lfs f1, 0x8c(r1) +/* 80188D4C 00185CAC C0 01 00 68 */ lfs f0, 0x68(r1) +/* 80188D50 00185CB0 C0 42 A3 3C */ lfs f2, lbl_805AC05C@sda21(r2) +/* 80188D54 00185CB4 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80188D58 00185CB8 EC 02 00 2A */ fadds f0, f2, f0 +/* 80188D5C 00185CBC EF DF 00 2A */ fadds f30, f31, f0 +lbl_80188D60: +/* 80188D60 00185CC0 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) +/* 80188D64 00185CC4 7F 03 C3 78 */ mr r3, r24 +/* 80188D68 00185CC8 D3 C1 00 44 */ stfs f30, 0x44(r1) +/* 80188D6C 00185CCC 38 81 00 3C */ addi r4, r1, 0x3c +/* 80188D70 00185CD0 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 80188D74 00185CD4 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 80188D78 00185CD8 4B F9 1C C1 */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f +/* 80188D7C 00185CDC 7F 04 C3 78 */ mr r4, r24 +/* 80188D80 00185CE0 38 61 00 90 */ addi r3, r1, 0x90 +/* 80188D84 00185CE4 81 98 00 00 */ lwz r12, 0(r24) +/* 80188D88 00185CE8 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 80188D8C 00185CEC 7D 89 03 A6 */ mtctr r12 +/* 80188D90 00185CF0 4E 80 04 21 */ bctrl +/* 80188D94 00185CF4 7F 03 C3 78 */ mr r3, r24 +/* 80188D98 00185CF8 81 98 00 00 */ lwz r12, 0(r24) +/* 80188D9C 00185CFC 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80188DA0 00185D00 7D 89 03 A6 */ mtctr r12 +/* 80188DA4 00185D04 4E 80 04 21 */ bctrl +/* 80188DA8 00185D08 7C 65 1B 78 */ mr r5, r3 +/* 80188DAC 00185D0C 7E E3 BB 78 */ mr r3, r23 +/* 80188DB0 00185D10 7E C4 B3 78 */ mr r4, r22 +/* 80188DB4 00185D14 7F 27 CB 78 */ mr r7, r25 +/* 80188DB8 00185D18 7F 48 D3 78 */ mr r8, r26 +/* 80188DBC 00185D1C 38 C1 00 90 */ addi r6, r1, 0x90 +/* 80188DC0 00185D20 4B FF B7 A5 */ bl "DetectCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 80188DC4 00185D24 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80188DC8 00185D28 40 82 00 58 */ bne lbl_80188E20 +/* 80188DCC 00185D2C D3 DB 00 00 */ stfs f30, 0(r27) +/* 80188DD0 00185D30 7F 03 C3 78 */ mr r3, r24 +/* 80188DD4 00185D34 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) +/* 80188DD8 00185D38 38 81 00 30 */ addi r4, r1, 0x30 +/* 80188DDC 00185D3C C0 B8 00 60 */ lfs f5, 0x60(r24) +/* 80188DE0 00185D40 C0 98 00 50 */ lfs f4, 0x50(r24) +/* 80188DE4 00185D44 C0 38 00 40 */ lfs f1, 0x40(r24) +/* 80188DE8 00185D48 EC 45 F0 2A */ fadds f2, f5, f30 +/* 80188DEC 00185D4C EC 64 00 2A */ fadds f3, f4, f0 +/* 80188DF0 00185D50 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 80188DF4 00185D54 EC 01 00 2A */ fadds f0, f1, f0 +/* 80188DF8 00185D58 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 80188DFC 00185D5C D0 A1 00 2C */ stfs f5, 0x2c(r1) +/* 80188E00 00185D60 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 80188E04 00185D64 D0 61 00 34 */ stfs f3, 0x34(r1) +/* 80188E08 00185D68 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 80188E0C 00185D6C 4B EC A0 81 */ bl SetTranslation__6CActorFRC9CVector3f +/* 80188E10 00185D70 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80188E14 00185D74 7F 03 C3 78 */ mr r3, r24 +/* 80188E18 00185D78 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 80188E1C 00185D7C 4B F9 1C 1D */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f +lbl_80188E20: +/* 80188E20 00185D80 3A 80 00 00 */ li r20, 0 +/* 80188E24 00185D84 3A A0 00 00 */ li r21, 0 +/* 80188E28 00185D88 48 00 00 28 */ b lbl_80188E50 +lbl_80188E2C: +/* 80188E2C 00185D8C 38 7F 00 38 */ addi r3, r31, 0x38 +/* 80188E30 00185D90 38 9F 00 48 */ addi r4, r31, 0x48 +/* 80188E34 00185D94 4B FF 9A 95 */ bl IsFloor__14CGameCollisionFRC13CMaterialListRC9CVector3f +/* 80188E38 00185D98 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80188E3C 00185D9C 41 82 00 0C */ beq lbl_80188E48 +/* 80188E40 00185DA0 3A 80 00 01 */ li r20, 1 +/* 80188E44 00185DA4 48 00 00 18 */ b lbl_80188E5C +lbl_80188E48: +/* 80188E48 00185DA8 3B FF 00 60 */ addi r31, r31, 0x60 +/* 80188E4C 00185DAC 3A B5 00 01 */ addi r21, r21, 1 +lbl_80188E50: +/* 80188E50 00185DB0 80 1C 00 00 */ lwz r0, 0(r28) +/* 80188E54 00185DB4 7C 15 00 00 */ cmpw r21, r0 +/* 80188E58 00185DB8 41 80 FF D4 */ blt lbl_80188E2C +lbl_80188E5C: +/* 80188E5C 00185DBC 56 80 06 3F */ clrlwi. r0, r20, 0x18 +/* 80188E60 00185DC0 40 82 00 20 */ bne lbl_80188E80 +/* 80188E64 00185DC4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80188E68 00185DC8 7E E3 BB 78 */ mr r3, r23 +/* 80188E6C 00185DCC 7F 04 C3 78 */ mr r4, r24 +/* 80188E70 00185DD0 38 A1 00 08 */ addi r5, r1, 8 +/* 80188E74 00185DD4 B0 01 00 08 */ sth r0, 8(r1) +/* 80188E78 00185DD8 38 C0 00 20 */ li r6, 0x20 +/* 80188E7C 00185DDC 4B EB B0 55 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +lbl_80188E80: +/* 80188E80 00185DE0 C8 02 A3 50 */ lfd f0, lbl_805AC070@sda21(r2) +/* 80188E84 00185DE4 38 00 00 00 */ li r0, 0 +/* 80188E88 00185DE8 90 01 00 F0 */ stw r0, 0xf0(r1) +/* 80188E8C 00185DEC FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 80188E90 00185DF0 40 81 00 2C */ ble lbl_80188EBC +/* 80188E94 00185DF4 C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) +/* 80188E98 00185DF8 7F 84 E3 78 */ mr r4, r28 +/* 80188E9C 00185DFC C0 02 A3 58 */ lfs f0, lbl_805AC078@sda21(r2) +/* 80188EA0 00185E00 38 61 00 18 */ addi r3, r1, 0x18 +/* 80188EA4 00185E04 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80188EA8 00185E08 38 A1 00 F0 */ addi r5, r1, 0xf0 +/* 80188EAC 00185E0C D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 80188EB0 00185E10 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 80188EB4 00185E14 48 14 95 A5 */ bl FilterByClosestNormal__13CollisionUtilFRC9CVector3fRC18CCollisionInfoListR18CCollisionInfoList +/* 80188EB8 00185E18 48 00 00 28 */ b lbl_80188EE0 +lbl_80188EBC: +/* 80188EBC 00185E1C C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) +/* 80188EC0 00185E20 7F 84 E3 78 */ mr r4, r28 +/* 80188EC4 00185E24 C0 02 A3 10 */ lfs f0, lbl_805AC030@sda21(r2) +/* 80188EC8 00185E28 38 61 00 0C */ addi r3, r1, 0xc +/* 80188ECC 00185E2C D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80188ED0 00185E30 38 A1 00 F0 */ addi r5, r1, 0xf0 +/* 80188ED4 00185E34 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 80188ED8 00185E38 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80188EDC 00185E3C 48 14 95 7D */ bl FilterByClosestNormal__13CollisionUtilFRC9CVector3fRC18CCollisionInfoListR18CCollisionInfoList +lbl_80188EE0: +/* 80188EE0 00185E40 80 01 00 F0 */ lwz r0, 0xf0(r1) +/* 80188EE4 00185E44 2C 00 00 00 */ cmpwi r0, 0 +/* 80188EE8 00185E48 40 81 00 18 */ ble lbl_80188F00 +/* 80188EEC 00185E4C 7E E3 BB 78 */ mr r3, r23 +/* 80188EF0 00185E50 7F 04 C3 78 */ mr r4, r24 +/* 80188EF4 00185E54 7F A5 EB 78 */ mr r5, r29 +/* 80188EF8 00185E58 38 C1 00 F0 */ addi r6, r1, 0xf0 +/* 80188EFC 00185E5C 4B FF 9C BD */ bl MakeCollisionCallbacks__14CGameCollisionFR13CStateManagerR13CPhysicsActorRC9TUniqueIdRC18CCollisionInfoList +lbl_80188F00: +/* 80188F00 00185E60 80 A1 00 F0 */ lwz r5, 0xf0(r1) +/* 80188F04 00185E64 38 60 00 00 */ li r3, 0 +/* 80188F08 00185E68 2C 05 00 00 */ cmpwi r5, 0 +/* 80188F0C 00185E6C 40 81 00 40 */ ble lbl_80188F4C +/* 80188F10 00185E70 2C 05 00 08 */ cmpwi r5, 8 +/* 80188F14 00185E74 38 85 FF F8 */ addi r4, r5, -8 +/* 80188F18 00185E78 40 81 00 20 */ ble lbl_80188F38 +/* 80188F1C 00185E7C 38 04 00 07 */ addi r0, r4, 7 +/* 80188F20 00185E80 54 00 E8 FE */ srwi r0, r0, 3 +/* 80188F24 00185E84 7C 09 03 A6 */ mtctr r0 +/* 80188F28 00185E88 2C 04 00 00 */ cmpwi r4, 0 +/* 80188F2C 00185E8C 40 81 00 0C */ ble lbl_80188F38 +lbl_80188F30: +/* 80188F30 00185E90 38 63 00 08 */ addi r3, r3, 8 +/* 80188F34 00185E94 42 00 FF FC */ bdnz lbl_80188F30 +lbl_80188F38: +/* 80188F38 00185E98 7C 03 28 50 */ subf r0, r3, r5 +/* 80188F3C 00185E9C 7C 09 03 A6 */ mtctr r0 +/* 80188F40 00185EA0 7C 03 28 00 */ cmpw r3, r5 +/* 80188F44 00185EA4 40 80 00 08 */ bge lbl_80188F4C +lbl_80188F48: +/* 80188F48 00185EA8 42 00 00 00 */ bdnz lbl_80188F48 +lbl_80188F4C: +/* 80188F4C 00185EAC 38 00 00 00 */ li r0, 0 +/* 80188F50 00185EB0 90 01 00 F0 */ stw r0, 0xf0(r1) +lbl_80188F54: +/* 80188F54 00185EB4 7F C3 F3 78 */ mr r3, r30 +/* 80188F58 00185EB8 E3 E1 0D 48 */ psq_l f31, -696(r1), 0, qr0 +/* 80188F5C 00185EBC CB E1 0D 40 */ lfd f31, 0xd40(r1) +/* 80188F60 00185EC0 E3 C1 0D 38 */ psq_l f30, -712(r1), 0, qr0 +/* 80188F64 00185EC4 CB C1 0D 30 */ lfd f30, 0xd30(r1) +/* 80188F68 00185EC8 BA 81 0D 00 */ lmw r20, 0xd00(r1) +/* 80188F6C 00185ECC 80 01 0D 54 */ lwz r0, 0xd54(r1) +/* 80188F70 00185ED0 7C 08 03 A6 */ mtlr r0 +/* 80188F74 00185ED4 38 21 0D 50 */ addi r1, r1, 0xd50 +/* 80188F78 00185ED8 4E 80 00 20 */ blr + +.global "ResolveUpDown__15CGroundMovementFR19CAreaCollisionCacheR13CStateManagerR13CPhysicsActorRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>ffRfR18CCollisionInfoList" +"ResolveUpDown__15CGroundMovementFR19CAreaCollisionCacheR13CStateManagerR13CPhysicsActorRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>ffRfR18CCollisionInfoList": +/* 80188F7C 00185EDC 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 80188F80 00185EE0 7C 08 02 A6 */ mflr r0 +/* 80188F84 00185EE4 90 01 01 04 */ stw r0, 0x104(r1) +/* 80188F88 00185EE8 DB E1 00 F0 */ stfd f31, 0xf0(r1) +/* 80188F8C 00185EEC F3 E1 00 F8 */ psq_st f31, 248(r1), 0, qr0 +/* 80188F90 00185EF0 DB C1 00 E0 */ stfd f30, 0xe0(r1) +/* 80188F94 00185EF4 F3 C1 00 E8 */ psq_st f30, 232(r1), 0, qr0 +/* 80188F98 00185EF8 BE C1 00 B8 */ stmw r22, 0xb8(r1) +/* 80188F9C 00185EFC 7D 3F 4B 78 */ mr r31, r9 +/* 80188FA0 00185F00 FF C0 08 90 */ fmr f30, f1 +/* 80188FA4 00185F04 80 09 00 00 */ lwz r0, 0(r9) +/* 80188FA8 00185F08 FF E0 10 90 */ fmr f31, f2 +/* 80188FAC 00185F0C 7C 76 1B 78 */ mr r22, r3 +/* 80188FB0 00185F10 7C 9D 23 78 */ mr r29, r4 +/* 80188FB4 00185F14 2C 00 00 00 */ cmpwi r0, 0 +/* 80188FB8 00185F18 7C BE 2B 78 */ mr r30, r5 +/* 80188FBC 00185F1C 7C D7 33 78 */ mr r23, r6 +/* 80188FC0 00185F20 7C F8 3B 78 */ mr r24, r7 +/* 80188FC4 00185F24 7D 19 43 78 */ mr r25, r8 +/* 80188FC8 00185F28 40 81 02 A8 */ ble lbl_80189270 +/* 80188FCC 00185F2C 3C 60 80 5A */ lis r3, lbl_805A6754@ha +/* 80188FD0 00185F30 C4 C3 67 54 */ lfsu f6, lbl_805A6754@l(r3) +/* 80188FD4 00185F34 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) +/* 80188FD8 00185F38 3B 7F 00 04 */ addi r27, r31, 4 +/* 80188FDC 00185F3C C0 A3 00 04 */ lfs f5, 4(r3) +/* 80188FE0 00185F40 7F 7C DB 78 */ mr r28, r27 +/* 80188FE4 00185F44 C0 83 00 08 */ lfs f4, 8(r3) +/* 80188FE8 00185F48 3B 40 00 00 */ li r26, 0 +/* 80188FEC 00185F4C C0 63 00 0C */ lfs f3, 0xc(r3) +/* 80188FF0 00185F50 C0 43 00 10 */ lfs f2, 0x10(r3) +/* 80188FF4 00185F54 C0 23 00 14 */ lfs f1, 0x14(r3) +/* 80188FF8 00185F58 D0 C1 00 6C */ stfs f6, 0x6c(r1) +/* 80188FFC 00185F5C D0 A1 00 70 */ stfs f5, 0x70(r1) +/* 80189000 00185F60 D0 81 00 74 */ stfs f4, 0x74(r1) +/* 80189004 00185F64 D0 61 00 78 */ stfs f3, 0x78(r1) +/* 80189008 00185F68 D0 41 00 7C */ stfs f2, 0x7c(r1) +/* 8018900C 00185F6C D0 21 00 80 */ stfs f1, 0x80(r1) +/* 80189010 00185F70 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 80189014 00185F74 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 80189018 00185F78 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8018901C 00185F7C 48 00 00 74 */ b lbl_80189090 +lbl_80189020: +/* 80189020 00185F80 38 7C 00 38 */ addi r3, r28, 0x38 +/* 80189024 00185F84 38 9C 00 48 */ addi r4, r28, 0x48 +/* 80189028 00185F88 4B FF 98 A1 */ bl IsFloor__14CGameCollisionFRC13CMaterialListRC9CVector3f +/* 8018902C 00185F8C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80189030 00185F90 41 82 00 58 */ beq lbl_80189088 +/* 80189034 00185F94 7F 84 E3 78 */ mr r4, r28 +/* 80189038 00185F98 38 61 00 6C */ addi r3, r1, 0x6c +/* 8018903C 00185F9C 48 1A EA CD */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 80189040 00185FA0 7F 84 E3 78 */ mr r4, r28 +/* 80189044 00185FA4 38 61 00 3C */ addi r3, r1, 0x3c +/* 80189048 00185FA8 48 14 50 DD */ bl GetExtreme__14CCollisionInfoCFv +/* 8018904C 00185FAC 38 61 00 6C */ addi r3, r1, 0x6c +/* 80189050 00185FB0 38 81 00 3C */ addi r4, r1, 0x3c +/* 80189054 00185FB4 48 1A EA B5 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 80189058 00185FB8 C0 21 00 48 */ lfs f1, 0x48(r1) +/* 8018905C 00185FBC C0 1C 00 48 */ lfs f0, 0x48(r28) +/* 80189060 00185FC0 C0 41 00 4C */ lfs f2, 0x4c(r1) +/* 80189064 00185FC4 EC 01 00 2A */ fadds f0, f1, f0 +/* 80189068 00185FC8 C0 21 00 50 */ lfs f1, 0x50(r1) +/* 8018906C 00185FCC D0 01 00 48 */ stfs f0, 0x48(r1) +/* 80189070 00185FD0 C0 1C 00 4C */ lfs f0, 0x4c(r28) +/* 80189074 00185FD4 EC 02 00 2A */ fadds f0, f2, f0 +/* 80189078 00185FD8 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 8018907C 00185FDC C0 1C 00 50 */ lfs f0, 0x50(r28) +/* 80189080 00185FE0 EC 01 00 2A */ fadds f0, f1, f0 +/* 80189084 00185FE4 D0 01 00 50 */ stfs f0, 0x50(r1) +lbl_80189088: +/* 80189088 00185FE8 3B 9C 00 60 */ addi r28, r28, 0x60 +/* 8018908C 00185FEC 3B 5A 00 01 */ addi r26, r26, 1 +lbl_80189090: +/* 80189090 00185FF0 80 1F 00 00 */ lwz r0, 0(r31) +/* 80189094 00185FF4 7C 1A 00 00 */ cmpw r26, r0 +/* 80189098 00185FF8 41 80 FF 88 */ blt lbl_80189020 +/* 8018909C 00185FFC 38 61 00 48 */ addi r3, r1, 0x48 +/* 801890A0 00186000 48 18 B6 59 */ bl CanBeNormalized__9CVector3fCFv +/* 801890A4 00186004 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801890A8 00186008 41 82 00 2C */ beq lbl_801890D4 +/* 801890AC 0018600C 38 61 00 30 */ addi r3, r1, 0x30 +/* 801890B0 00186010 38 81 00 48 */ addi r4, r1, 0x48 +/* 801890B4 00186014 48 18 B7 9D */ bl AsNormalized__9CVector3fCFv +/* 801890B8 00186018 C0 41 00 30 */ lfs f2, 0x30(r1) +/* 801890BC 0018601C C0 21 00 34 */ lfs f1, 0x34(r1) +/* 801890C0 00186020 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 801890C4 00186024 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 801890C8 00186028 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 801890CC 0018602C D0 01 00 50 */ stfs f0, 0x50(r1) +/* 801890D0 00186030 48 00 00 0C */ b lbl_801890DC +lbl_801890D4: +/* 801890D4 00186034 38 60 00 01 */ li r3, 1 +/* 801890D8 00186038 48 00 01 9C */ b lbl_80189274 +lbl_801890DC: +/* 801890DC 0018603C 7F C4 F3 78 */ mr r4, r30 +/* 801890E0 00186040 38 61 00 54 */ addi r3, r1, 0x54 +/* 801890E4 00186044 4B F9 18 49 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 801890E8 00186048 C0 21 00 50 */ lfs f1, 0x50(r1) +/* 801890EC 0018604C C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) +/* 801890F0 00186050 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801890F4 00186054 4C 41 13 82 */ cror 2, 1, 2 +/* 801890F8 00186058 40 82 00 28 */ bne lbl_80189120 +/* 801890FC 0018605C C0 21 00 80 */ lfs f1, 0x80(r1) +/* 80189100 00186060 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 80189104 00186064 C0 42 A3 3C */ lfs f2, lbl_805AC05C@sda21(r2) +/* 80189108 00186068 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8018910C 0018606C EF E2 00 2A */ fadds f31, f2, f0 +/* 80189110 00186070 FC 1F F0 40 */ fcmpo cr0, f31, f30 +/* 80189114 00186074 40 81 00 34 */ ble lbl_80189148 +/* 80189118 00186078 38 60 00 01 */ li r3, 1 +/* 8018911C 0018607C 48 00 01 58 */ b lbl_80189274 +lbl_80189120: +/* 80189120 00186080 C0 61 00 74 */ lfs f3, 0x74(r1) +/* 80189124 00186084 FC 00 F8 50 */ fneg f0, f31 +/* 80189128 00186088 C0 41 00 68 */ lfs f2, 0x68(r1) +/* 8018912C 0018608C C0 22 A3 3C */ lfs f1, lbl_805AC05C@sda21(r2) +/* 80189130 00186090 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80189134 00186094 EF E2 08 28 */ fsubs f31, f2, f1 +/* 80189138 00186098 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 8018913C 0018609C 40 80 00 0C */ bge lbl_80189148 +/* 80189140 001860A0 38 60 00 01 */ li r3, 1 +/* 80189144 001860A4 48 00 01 30 */ b lbl_80189274 +lbl_80189148: +/* 80189148 001860A8 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) +/* 8018914C 001860AC 7F C3 F3 78 */ mr r3, r30 +/* 80189150 001860B0 D3 E1 00 2C */ stfs f31, 0x2c(r1) +/* 80189154 001860B4 38 81 00 24 */ addi r4, r1, 0x24 +/* 80189158 001860B8 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 8018915C 001860BC D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80189160 001860C0 4B F9 18 D9 */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f +/* 80189164 001860C4 7F C4 F3 78 */ mr r4, r30 +/* 80189168 001860C8 38 61 00 84 */ addi r3, r1, 0x84 +/* 8018916C 001860CC 81 9E 00 00 */ lwz r12, 0(r30) +/* 80189170 001860D0 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 80189174 001860D4 7D 89 03 A6 */ mtctr r12 +/* 80189178 001860D8 4E 80 04 21 */ bctrl +/* 8018917C 001860DC 7F C3 F3 78 */ mr r3, r30 +/* 80189180 001860E0 81 9E 00 00 */ lwz r12, 0(r30) +/* 80189184 001860E4 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80189188 001860E8 7D 89 03 A6 */ mtctr r12 +/* 8018918C 001860EC 4E 80 04 21 */ bctrl +/* 80189190 001860F0 7C 65 1B 78 */ mr r5, r3 +/* 80189194 001860F4 7F A3 EB 78 */ mr r3, r29 +/* 80189198 001860F8 7E C4 B3 78 */ mr r4, r22 +/* 8018919C 001860FC 7E E7 BB 78 */ mr r7, r23 +/* 801891A0 00186100 7F 08 C3 78 */ mr r8, r24 +/* 801891A4 00186104 38 C1 00 84 */ addi r6, r1, 0x84 +/* 801891A8 00186108 4B FF B3 BD */ bl "DetectCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 801891AC 0018610C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801891B0 00186110 40 82 00 C0 */ bne lbl_80189270 +/* 801891B4 00186114 D3 F9 00 00 */ stfs f31, 0(r25) +/* 801891B8 00186118 7F C3 F3 78 */ mr r3, r30 +/* 801891BC 0018611C C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) +/* 801891C0 00186120 38 81 00 18 */ addi r4, r1, 0x18 +/* 801891C4 00186124 C0 BE 00 60 */ lfs f5, 0x60(r30) +/* 801891C8 00186128 C0 9E 00 50 */ lfs f4, 0x50(r30) +/* 801891CC 0018612C C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 801891D0 00186130 EC 45 F8 2A */ fadds f2, f5, f31 +/* 801891D4 00186134 EC 64 00 2A */ fadds f3, f4, f0 +/* 801891D8 00186138 D0 81 00 10 */ stfs f4, 0x10(r1) +/* 801891DC 0018613C EC 01 00 2A */ fadds f0, f1, f0 +/* 801891E0 00186140 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801891E4 00186144 D0 A1 00 14 */ stfs f5, 0x14(r1) +/* 801891E8 00186148 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801891EC 0018614C D0 61 00 1C */ stfs f3, 0x1c(r1) +/* 801891F0 00186150 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 801891F4 00186154 4B EC 9C 99 */ bl SetTranslation__6CActorFRC9CVector3f +/* 801891F8 00186158 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801891FC 0018615C 7F C3 F3 78 */ mr r3, r30 +/* 80189200 00186160 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 80189204 00186164 4B F9 18 35 */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f +/* 80189208 00186168 3B 40 00 00 */ li r26, 0 +/* 8018920C 0018616C 3B 80 00 00 */ li r28, 0 +/* 80189210 00186170 48 00 00 28 */ b lbl_80189238 +lbl_80189214: +/* 80189214 00186174 38 7B 00 38 */ addi r3, r27, 0x38 +/* 80189218 00186178 38 9B 00 48 */ addi r4, r27, 0x48 +/* 8018921C 0018617C 4B FF 96 AD */ bl IsFloor__14CGameCollisionFRC13CMaterialListRC9CVector3f +/* 80189220 00186180 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80189224 00186184 41 82 00 0C */ beq lbl_80189230 +/* 80189228 00186188 3B 40 00 01 */ li r26, 1 +/* 8018922C 0018618C 48 00 00 18 */ b lbl_80189244 +lbl_80189230: +/* 80189230 00186190 3B 7B 00 60 */ addi r27, r27, 0x60 +/* 80189234 00186194 3B 9C 00 01 */ addi r28, r28, 1 +lbl_80189238: +/* 80189238 00186198 80 1F 00 00 */ lwz r0, 0(r31) +/* 8018923C 0018619C 7C 1C 00 00 */ cmpw r28, r0 +/* 80189240 001861A0 41 80 FF D4 */ blt lbl_80189214 +lbl_80189244: +/* 80189244 001861A4 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 80189248 001861A8 40 82 00 20 */ bne lbl_80189268 +/* 8018924C 001861AC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80189250 001861B0 7F A3 EB 78 */ mr r3, r29 +/* 80189254 001861B4 7F C4 F3 78 */ mr r4, r30 +/* 80189258 001861B8 38 A1 00 08 */ addi r5, r1, 8 +/* 8018925C 001861BC B0 01 00 08 */ sth r0, 8(r1) +/* 80189260 001861C0 38 C0 00 20 */ li r6, 0x20 +/* 80189264 001861C4 4B EB AC 6D */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +lbl_80189268: +/* 80189268 001861C8 38 60 00 00 */ li r3, 0 +/* 8018926C 001861CC 48 00 00 08 */ b lbl_80189274 +lbl_80189270: +/* 80189270 001861D0 38 60 00 01 */ li r3, 1 +lbl_80189274: +/* 80189274 001861D4 E3 E1 00 F8 */ psq_l f31, 248(r1), 0, qr0 +/* 80189278 001861D8 CB E1 00 F0 */ lfd f31, 0xf0(r1) +/* 8018927C 001861DC E3 C1 00 E8 */ psq_l f30, 232(r1), 0, qr0 +/* 80189280 001861E0 CB C1 00 E0 */ lfd f30, 0xe0(r1) +/* 80189284 001861E4 BA C1 00 B8 */ lmw r22, 0xb8(r1) +/* 80189288 001861E8 80 01 01 04 */ lwz r0, 0x104(r1) +/* 8018928C 001861EC 7C 08 03 A6 */ mtlr r0 +/* 80189290 001861F0 38 21 01 00 */ addi r1, r1, 0x100 +/* 80189294 001861F4 4E 80 00 20 */ blr + +.global "MoveGroundCollider__15CGroundMovementFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>" +"MoveGroundCollider__15CGroundMovementFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>": +/* 80189298 001861F8 94 21 C1 90 */ stwu r1, -0x3e70(r1) +/* 8018929C 001861FC 7C 08 02 A6 */ mflr r0 +/* 801892A0 00186200 90 01 3E 74 */ stw r0, 0x3e74(r1) +/* 801892A4 00186204 38 00 3E 68 */ li r0, 0x3e68 +/* 801892A8 00186208 DB E1 3E 60 */ stfd f31, 0x3e60(r1) +/* 801892AC 0018620C 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 +/* 801892B0 00186210 38 00 3E 58 */ li r0, 0x3e58 +/* 801892B4 00186214 DB C1 3E 50 */ stfd f30, 0x3e50(r1) +/* 801892B8 00186218 13 C1 00 0E */ psq_stx f30, r1, r0, 0, qr0 +/* 801892BC 0018621C 38 00 3E 48 */ li r0, 0x3e48 +/* 801892C0 00186220 DB A1 3E 40 */ stfd f29, 0x3e40(r1) +/* 801892C4 00186224 13 A1 00 0E */ psq_stx f29, r1, r0, 0, qr0 +/* 801892C8 00186228 BF 61 3E 2C */ stmw r27, 0x3e2c(r1) +/* 801892CC 0018622C FF A0 08 90 */ fmr f29, f1 +/* 801892D0 00186230 7C 7C 1B 78 */ mr r28, r3 +/* 801892D4 00186234 7C 9D 23 78 */ mr r29, r4 +/* 801892D8 00186238 7C BE 2B 78 */ mr r30, r5 +/* 801892DC 0018623C 38 61 01 DC */ addi r3, r1, 0x1dc +/* 801892E0 00186240 4B F9 23 95 */ bl GetMotionState__13CPhysicsActorCFv +/* 801892E4 00186244 C1 81 01 DC */ lfs f12, 0x1dc(r1) +/* 801892E8 00186248 38 60 00 00 */ li r3, 0 +/* 801892EC 0018624C C1 61 01 E0 */ lfs f11, 0x1e0(r1) +/* 801892F0 00186250 C1 41 01 E4 */ lfs f10, 0x1e4(r1) +/* 801892F4 00186254 C1 21 01 E8 */ lfs f9, 0x1e8(r1) +/* 801892F8 00186258 C1 01 01 EC */ lfs f8, 0x1ec(r1) +/* 801892FC 0018625C C0 E1 01 F0 */ lfs f7, 0x1f0(r1) +/* 80189300 00186260 C0 C1 01 F4 */ lfs f6, 0x1f4(r1) +/* 80189304 00186264 C0 A1 01 F8 */ lfs f5, 0x1f8(r1) +/* 80189308 00186268 C0 81 01 FC */ lfs f4, 0x1fc(r1) +/* 8018930C 0018626C C0 61 02 00 */ lfs f3, 0x200(r1) +/* 80189310 00186270 C0 41 02 04 */ lfs f2, 0x204(r1) +/* 80189314 00186274 C0 21 02 08 */ lfs f1, 0x208(r1) +/* 80189318 00186278 C0 01 02 0C */ lfs f0, 0x20c(r1) +/* 8018931C 0018627C D1 81 02 44 */ stfs f12, 0x244(r1) +/* 80189320 00186280 D1 61 02 48 */ stfs f11, 0x248(r1) +/* 80189324 00186284 D1 41 02 4C */ stfs f10, 0x24c(r1) +/* 80189328 00186288 D1 21 02 50 */ stfs f9, 0x250(r1) +/* 8018932C 0018628C D1 01 02 54 */ stfs f8, 0x254(r1) +/* 80189330 00186290 D0 E1 02 58 */ stfs f7, 0x258(r1) +/* 80189334 00186294 D0 C1 02 5C */ stfs f6, 0x25c(r1) +/* 80189338 00186298 D0 A1 02 60 */ stfs f5, 0x260(r1) +/* 8018933C 0018629C D0 81 02 64 */ stfs f4, 0x264(r1) +/* 80189340 001862A0 D0 61 02 68 */ stfs f3, 0x268(r1) +/* 80189344 001862A4 D0 41 02 6C */ stfs f2, 0x26c(r1) +/* 80189348 001862A8 D0 21 02 70 */ stfs f1, 0x270(r1) +/* 8018934C 001862AC D0 01 02 74 */ stfs f0, 0x274(r1) +/* 80189350 001862B0 4B F2 B1 A9 */ bl IsUser__Fi +/* 80189354 001862B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80189358 001862B8 41 82 00 10 */ beq lbl_80189368 +/* 8018935C 001862BC 7F A3 EB 78 */ mr r3, r29 +/* 80189360 001862C0 38 81 02 44 */ addi r4, r1, 0x244 +/* 80189364 001862C4 4B F9 23 C5 */ bl SetMotionState__13CPhysicsActorFRC12CMotionState +lbl_80189368: +/* 80189368 001862C8 FC 20 E8 90 */ fmr f1, f29 +/* 8018936C 001862CC 7F A4 EB 78 */ mr r4, r29 +/* 80189370 001862D0 38 61 01 A8 */ addi r3, r1, 0x1a8 +/* 80189374 001862D4 4B F9 24 95 */ bl PredictMotion_Internal__13CPhysicsActorCFf +/* 80189378 001862D8 C1 81 01 A8 */ lfs f12, 0x1a8(r1) +/* 8018937C 001862DC 38 61 02 10 */ addi r3, r1, 0x210 +/* 80189380 001862E0 C1 61 01 AC */ lfs f11, 0x1ac(r1) +/* 80189384 001862E4 C1 41 01 B0 */ lfs f10, 0x1b0(r1) +/* 80189388 001862E8 C1 21 01 B4 */ lfs f9, 0x1b4(r1) +/* 8018938C 001862EC C1 01 01 B8 */ lfs f8, 0x1b8(r1) +/* 80189390 001862F0 C0 E1 01 BC */ lfs f7, 0x1bc(r1) +/* 80189394 001862F4 C0 C1 01 C0 */ lfs f6, 0x1c0(r1) +/* 80189398 001862F8 C0 A1 01 C4 */ lfs f5, 0x1c4(r1) +/* 8018939C 001862FC C0 81 01 C8 */ lfs f4, 0x1c8(r1) +/* 801893A0 00186300 C0 61 01 CC */ lfs f3, 0x1cc(r1) +/* 801893A4 00186304 C0 41 01 D0 */ lfs f2, 0x1d0(r1) +/* 801893A8 00186308 C0 21 01 D4 */ lfs f1, 0x1d4(r1) +/* 801893AC 0018630C C0 01 01 D8 */ lfs f0, 0x1d8(r1) +/* 801893B0 00186310 D1 81 02 10 */ stfs f12, 0x210(r1) +/* 801893B4 00186314 D1 61 02 14 */ stfs f11, 0x214(r1) +/* 801893B8 00186318 D1 41 02 18 */ stfs f10, 0x218(r1) +/* 801893BC 0018631C D1 21 02 1C */ stfs f9, 0x21c(r1) +/* 801893C0 00186320 D1 01 02 20 */ stfs f8, 0x220(r1) +/* 801893C4 00186324 D0 E1 02 24 */ stfs f7, 0x224(r1) +/* 801893C8 00186328 D0 C1 02 28 */ stfs f6, 0x228(r1) +/* 801893CC 0018632C D0 A1 02 2C */ stfs f5, 0x22c(r1) +/* 801893D0 00186330 D0 81 02 30 */ stfs f4, 0x230(r1) +/* 801893D4 00186334 D0 61 02 34 */ stfs f3, 0x234(r1) +/* 801893D8 00186338 D0 41 02 38 */ stfs f2, 0x238(r1) +/* 801893DC 0018633C D0 21 02 3C */ stfs f1, 0x23c(r1) +/* 801893E0 00186340 D0 01 02 40 */ stfs f0, 0x240(r1) +/* 801893E4 00186344 48 18 B4 D5 */ bl Magnitude__9CVector3fCFv +/* 801893E8 00186348 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801893EC 0018634C 38 80 00 00 */ li r4, 0 +/* 801893F0 00186350 FF E0 08 90 */ fmr f31, f1 +/* 801893F4 00186354 90 81 32 24 */ stw r4, 0x3224(r1) +/* 801893F8 00186358 7F A3 EB 78 */ mr r3, r29 +/* 801893FC 0018635C B0 01 00 20 */ sth r0, 0x20(r1) +/* 80189400 00186360 90 81 2A 20 */ stw r4, 0x2a20(r1) +/* 80189404 00186364 4B EC A4 B9 */ bl GetMaterialFilter__6CActorCFv +/* 80189408 00186368 FC 20 E8 90 */ fmr f1, f29 +/* 8018940C 0018636C 7C 7F 1B 78 */ mr r31, r3 +/* 80189410 00186370 7F A4 EB 78 */ mr r4, r29 +/* 80189414 00186374 38 61 00 98 */ addi r3, r1, 0x98 +/* 80189418 00186378 4B F9 12 9D */ bl GetMotionVolume__13CPhysicsActorCFf +/* 8018941C 0018637C C0 A1 00 98 */ lfs f5, 0x98(r1) +/* 80189420 00186380 28 1E 00 00 */ cmplwi r30, 0 +/* 80189424 00186384 C0 81 00 9C */ lfs f4, 0x9c(r1) +/* 80189428 00186388 C0 61 00 A0 */ lfs f3, 0xa0(r1) +/* 8018942C 0018638C C0 41 00 A4 */ lfs f2, 0xa4(r1) +/* 80189430 00186390 C0 21 00 A8 */ lfs f1, 0xa8(r1) +/* 80189434 00186394 C0 01 00 AC */ lfs f0, 0xac(r1) +/* 80189438 00186398 D0 A1 00 C8 */ stfs f5, 0xc8(r1) +/* 8018943C 0018639C D0 81 00 CC */ stfs f4, 0xcc(r1) +/* 80189440 001863A0 D0 61 00 D0 */ stfs f3, 0xd0(r1) +/* 80189444 001863A4 D0 41 00 D4 */ stfs f2, 0xd4(r1) +/* 80189448 001863A8 D0 21 00 D8 */ stfs f1, 0xd8(r1) +/* 8018944C 001863AC D0 01 00 DC */ stfs f0, 0xdc(r1) +/* 80189450 001863B0 41 82 00 AC */ beq lbl_801894FC +/* 80189454 001863B4 38 01 2A 20 */ addi r0, r1, 0x2a20 +/* 80189458 001863B8 7C 00 F0 40 */ cmplw r0, r30 +/* 8018945C 001863BC 41 82 00 B4 */ beq lbl_80189510 +/* 80189460 001863C0 80 A1 2A 20 */ lwz r5, 0x2a20(r1) +/* 80189464 001863C4 38 C1 2A 24 */ addi r6, r1, 0x2a24 +/* 80189468 001863C8 38 60 00 00 */ li r3, 0 +/* 8018946C 001863CC 2C 05 00 00 */ cmpwi r5, 0 +/* 80189470 001863D0 40 81 00 40 */ ble lbl_801894B0 +/* 80189474 001863D4 2C 05 00 08 */ cmpwi r5, 8 +/* 80189478 001863D8 38 85 FF F8 */ addi r4, r5, -8 +/* 8018947C 001863DC 40 81 00 20 */ ble lbl_8018949C +/* 80189480 001863E0 38 04 00 07 */ addi r0, r4, 7 +/* 80189484 001863E4 54 00 E8 FE */ srwi r0, r0, 3 +/* 80189488 001863E8 7C 09 03 A6 */ mtctr r0 +/* 8018948C 001863EC 2C 04 00 00 */ cmpwi r4, 0 +/* 80189490 001863F0 40 81 00 0C */ ble lbl_8018949C +lbl_80189494: +/* 80189494 001863F4 38 63 00 08 */ addi r3, r3, 8 +/* 80189498 001863F8 42 00 FF FC */ bdnz lbl_80189494 +lbl_8018949C: +/* 8018949C 001863FC 7C 03 28 50 */ subf r0, r3, r5 +/* 801894A0 00186400 7C 09 03 A6 */ mtctr r0 +/* 801894A4 00186404 7C 03 28 00 */ cmpw r3, r5 +/* 801894A8 00186408 40 80 00 08 */ bge lbl_801894B0 +lbl_801894AC: +/* 801894AC 0018640C 42 00 00 00 */ bdnz lbl_801894AC +lbl_801894B0: +/* 801894B0 00186410 80 1E 00 00 */ lwz r0, 0(r30) +/* 801894B4 00186414 38 60 00 00 */ li r3, 0 +/* 801894B8 00186418 90 61 2A 20 */ stw r3, 0x2a20(r1) +/* 801894BC 0018641C 38 7E 00 04 */ addi r3, r30, 4 +/* 801894C0 00186420 54 00 08 3C */ slwi r0, r0, 1 +/* 801894C4 00186424 7C 9E 02 14 */ add r4, r30, r0 +/* 801894C8 00186428 38 84 00 04 */ addi r4, r4, 4 +/* 801894CC 0018642C 48 00 00 1C */ b lbl_801894E8 +lbl_801894D0: +/* 801894D0 00186430 28 06 00 00 */ cmplwi r6, 0 +/* 801894D4 00186434 41 82 00 0C */ beq lbl_801894E0 +/* 801894D8 00186438 A0 03 00 00 */ lhz r0, 0(r3) +/* 801894DC 0018643C B0 06 00 00 */ sth r0, 0(r6) +lbl_801894E0: +/* 801894E0 00186440 38 C6 00 02 */ addi r6, r6, 2 +/* 801894E4 00186444 38 63 00 02 */ addi r3, r3, 2 +lbl_801894E8: +/* 801894E8 00186448 7C 03 20 40 */ cmplw r3, r4 +/* 801894EC 0018644C 40 82 FF E4 */ bne lbl_801894D0 +/* 801894F0 00186450 80 1E 00 00 */ lwz r0, 0(r30) +/* 801894F4 00186454 90 01 2A 20 */ stw r0, 0x2a20(r1) +/* 801894F8 00186458 48 00 00 18 */ b lbl_80189510 +lbl_801894FC: +/* 801894FC 0018645C 7F 83 E3 78 */ mr r3, r28 +/* 80189500 00186460 7F A5 EB 78 */ mr r5, r29 +/* 80189504 00186464 38 81 2A 20 */ addi r4, r1, 0x2a20 +/* 80189508 00186468 38 C1 00 C8 */ addi r6, r1, 0xc8 +/* 8018950C 0018646C 4B EC 31 F1 */ bl "BuildColliderList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CActorRC6CAABox" +lbl_80189510: +/* 80189510 00186470 38 61 0E DC */ addi r3, r1, 0xedc +/* 80189514 00186474 38 81 00 C8 */ addi r4, r1, 0xc8 +/* 80189518 00186478 48 11 A5 79 */ bl __ct__19CAreaCollisionCacheFRC6CAABox +/* 8018951C 0018647C 7F A3 EB 78 */ mr r3, r29 +/* 80189520 00186480 FF C0 E8 90 */ fmr f30, f29 +/* 80189524 00186484 81 9D 00 00 */ lwz r12, 0(r29) +/* 80189528 00186488 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 8018952C 0018648C 7D 89 03 A6 */ mtctr r12 +/* 80189530 00186490 4E 80 04 21 */ bctrl +/* 80189534 00186494 81 83 00 00 */ lwz r12, 0(r3) +/* 80189538 00186498 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 8018953C 0018649C 7D 89 03 A6 */ mtctr r12 +/* 80189540 001864A0 4E 80 04 21 */ bctrl +/* 80189544 001864A4 3C 03 B0 BE */ addis r0, r3, 0xb0be +/* 80189548 001864A8 28 00 54 47 */ cmplwi r0, 0x5447 +/* 8018954C 001864AC 41 82 01 E8 */ beq lbl_80189734 +/* 80189550 001864B0 7F 83 E3 78 */ mr r3, r28 +/* 80189554 001864B4 38 81 0E DC */ addi r4, r1, 0xedc +/* 80189558 001864B8 4B FF B1 6D */ bl BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache +/* 8018955C 001864BC 7F A3 EB 78 */ mr r3, r29 +/* 80189560 001864C0 81 9D 00 00 */ lwz r12, 0(r29) +/* 80189564 001864C4 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80189568 001864C8 7D 89 03 A6 */ mtctr r12 +/* 8018956C 001864CC 4E 80 04 21 */ bctrl +/* 80189570 001864D0 4B FF 91 5D */ bl GetMinExtentForCollisionPrimitive__14CGameCollisionFRC19CCollisionPrimitive +/* 80189574 001864D4 C0 02 A3 20 */ lfs f0, lbl_805AC040@sda21(r2) +/* 80189578 001864D8 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8018957C 001864DC FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 80189580 001864E0 40 81 01 B4 */ ble lbl_80189734 +/* 80189584 001864E4 7F A4 EB 78 */ mr r4, r29 +/* 80189588 001864E8 38 61 01 78 */ addi r3, r1, 0x178 +/* 8018958C 001864EC 81 9D 00 00 */ lwz r12, 0(r29) +/* 80189590 001864F0 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 80189594 001864F4 7D 89 03 A6 */ mtctr r12 +/* 80189598 001864F8 4E 80 04 21 */ bctrl +/* 8018959C 001864FC 7F A3 EB 78 */ mr r3, r29 +/* 801895A0 00186500 81 9D 00 00 */ lwz r12, 0(r29) +/* 801895A4 00186504 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 801895A8 00186508 7D 89 03 A6 */ mtctr r12 +/* 801895AC 0018650C 4E 80 04 21 */ bctrl +/* 801895B0 00186510 7C 64 1B 78 */ mr r4, r3 +/* 801895B4 00186514 38 61 00 80 */ addi r3, r1, 0x80 +/* 801895B8 00186518 81 84 00 00 */ lwz r12, 0(r4) +/* 801895BC 0018651C 38 A1 01 78 */ addi r5, r1, 0x178 +/* 801895C0 00186520 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801895C4 00186524 7D 89 03 A6 */ mtctr r12 +/* 801895C8 00186528 4E 80 04 21 */ bctrl +/* 801895CC 0018652C C0 A1 00 80 */ lfs f5, 0x80(r1) +/* 801895D0 00186530 38 61 00 40 */ addi r3, r1, 0x40 +/* 801895D4 00186534 C0 81 00 84 */ lfs f4, 0x84(r1) +/* 801895D8 00186538 38 81 00 B0 */ addi r4, r1, 0xb0 +/* 801895DC 0018653C C0 61 00 88 */ lfs f3, 0x88(r1) +/* 801895E0 00186540 C0 41 00 8C */ lfs f2, 0x8c(r1) +/* 801895E4 00186544 C0 21 00 90 */ lfs f1, 0x90(r1) +/* 801895E8 00186548 C0 01 00 94 */ lfs f0, 0x94(r1) +/* 801895EC 0018654C D0 A1 00 B0 */ stfs f5, 0xb0(r1) +/* 801895F0 00186550 D0 81 00 B4 */ stfs f4, 0xb4(r1) +/* 801895F4 00186554 D0 61 00 B8 */ stfs f3, 0xb8(r1) +/* 801895F8 00186558 D0 41 00 BC */ stfs f2, 0xbc(r1) +/* 801895FC 0018655C D0 21 00 C0 */ stfs f1, 0xc0(r1) +/* 80189600 00186560 D0 01 00 C4 */ stfs f0, 0xc4(r1) +/* 80189604 00186564 48 1A E0 09 */ bl GetCenterPoint__6CAABoxCFv +/* 80189608 00186568 C0 02 A3 10 */ lfs f0, lbl_805AC030@sda21(r2) +/* 8018960C 0018656C 38 60 00 00 */ li r3, 0 +/* 80189610 00186570 C0 A1 00 40 */ lfs f5, 0x40(r1) +/* 80189614 00186574 38 80 00 01 */ li r4, 1 +/* 80189618 00186578 EC C0 F8 24 */ fdivs f6, f0, f31 +/* 8018961C 0018657C C0 41 02 14 */ lfs f2, 0x214(r1) +/* 80189620 00186580 C0 21 02 18 */ lfs f1, 0x218(r1) +/* 80189624 00186584 C0 01 02 10 */ lfs f0, 0x210(r1) +/* 80189628 00186588 C0 81 00 44 */ lfs f4, 0x44(r1) +/* 8018962C 0018658C C0 61 00 48 */ lfs f3, 0x48(r1) +/* 80189630 00186590 EC 46 00 B2 */ fmuls f2, f6, f2 +/* 80189634 00186594 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80189638 00186598 EC 26 00 72 */ fmuls f1, f6, f1 +/* 8018963C 0018659C 80 AD 8E AC */ lwz r5, lbl_805A7A6C@sda21(r13) +/* 80189640 001865A0 EC 06 00 32 */ fmuls f0, f6, f0 +/* 80189644 001865A4 D0 A1 00 58 */ stfs f5, 0x58(r1) +/* 80189648 001865A8 D0 81 00 5C */ stfs f4, 0x5c(r1) +/* 8018964C 001865AC D0 61 00 60 */ stfs f3, 0x60(r1) +/* 80189650 001865B0 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 80189654 001865B4 D0 41 00 50 */ stfs f2, 0x50(r1) +/* 80189658 001865B8 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 8018965C 001865BC B0 01 00 1C */ sth r0, 0x1c(r1) +/* 80189660 001865C0 48 20 08 95 */ bl __shl2i +/* 80189664 001865C4 39 40 00 00 */ li r10, 0 +/* 80189668 001865C8 38 00 00 01 */ li r0, 1 +/* 8018966C 001865CC 90 81 00 6C */ stw r4, 0x6c(r1) +/* 80189670 001865D0 FC 20 F8 90 */ fmr f1, f31 +/* 80189674 001865D4 7F 84 E3 78 */ mr r4, r28 +/* 80189678 001865D8 38 A1 00 1C */ addi r5, r1, 0x1c +/* 8018967C 001865DC 90 61 00 68 */ stw r3, 0x68(r1) +/* 80189680 001865E0 38 61 01 48 */ addi r3, r1, 0x148 +/* 80189684 001865E4 38 C1 00 58 */ addi r6, r1, 0x58 +/* 80189688 001865E8 91 41 00 74 */ stw r10, 0x74(r1) +/* 8018968C 001865EC 38 E1 00 4C */ addi r7, r1, 0x4c +/* 80189690 001865F0 39 01 00 68 */ addi r8, r1, 0x68 +/* 80189694 001865F4 39 21 2A 20 */ addi r9, r1, 0x2a20 +/* 80189698 001865F8 91 41 00 70 */ stw r10, 0x70(r1) +/* 8018969C 001865FC 90 01 00 78 */ stw r0, 0x78(r1) +/* 801896A0 00186600 4B EC 39 25 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 801896A4 00186604 88 01 01 68 */ lbz r0, 0x168(r1) +/* 801896A8 00186608 C0 01 01 48 */ lfs f0, 0x148(r1) +/* 801896AC 0018660C 28 00 00 00 */ cmplwi r0, 0 +/* 801896B0 00186610 41 82 00 84 */ beq lbl_80189734 +/* 801896B4 00186614 EC 00 F8 24 */ fdivs f0, f0, f31 +/* 801896B8 00186618 7F A4 EB 78 */ mr r4, r29 +/* 801896BC 0018661C 38 61 01 10 */ addi r3, r1, 0x110 +/* 801896C0 00186620 EF DD 00 32 */ fmuls f30, f29, f0 +/* 801896C4 00186624 FC 20 F0 90 */ fmr f1, f30 +/* 801896C8 00186628 4B F9 21 41 */ bl PredictMotion_Internal__13CPhysicsActorCFf +/* 801896CC 0018662C 83 61 01 10 */ lwz r27, 0x110(r1) +/* 801896D0 00186630 83 C1 01 14 */ lwz r30, 0x114(r1) +/* 801896D4 00186634 81 81 01 18 */ lwz r12, 0x118(r1) +/* 801896D8 00186638 81 61 01 1C */ lwz r11, 0x11c(r1) +/* 801896DC 0018663C 81 41 01 20 */ lwz r10, 0x120(r1) +/* 801896E0 00186640 81 21 01 24 */ lwz r9, 0x124(r1) +/* 801896E4 00186644 81 01 01 28 */ lwz r8, 0x128(r1) +/* 801896E8 00186648 80 E1 01 2C */ lwz r7, 0x12c(r1) +/* 801896EC 0018664C 80 C1 01 30 */ lwz r6, 0x130(r1) +/* 801896F0 00186650 80 A1 01 34 */ lwz r5, 0x134(r1) +/* 801896F4 00186654 80 81 01 38 */ lwz r4, 0x138(r1) +/* 801896F8 00186658 80 61 01 3C */ lwz r3, 0x13c(r1) +/* 801896FC 0018665C 80 01 01 40 */ lwz r0, 0x140(r1) +/* 80189700 00186660 93 61 02 10 */ stw r27, 0x210(r1) +/* 80189704 00186664 93 C1 02 14 */ stw r30, 0x214(r1) +/* 80189708 00186668 91 81 02 18 */ stw r12, 0x218(r1) +/* 8018970C 0018666C 91 61 02 1C */ stw r11, 0x21c(r1) +/* 80189710 00186670 91 41 02 20 */ stw r10, 0x220(r1) +/* 80189714 00186674 91 21 02 24 */ stw r9, 0x224(r1) +/* 80189718 00186678 91 01 02 28 */ stw r8, 0x228(r1) +/* 8018971C 0018667C 90 E1 02 2C */ stw r7, 0x22c(r1) +/* 80189720 00186680 90 C1 02 30 */ stw r6, 0x230(r1) +/* 80189724 00186684 90 A1 02 34 */ stw r5, 0x234(r1) +/* 80189728 00186688 90 81 02 38 */ stw r4, 0x238(r1) +/* 8018972C 0018668C 90 61 02 3C */ stw r3, 0x23c(r1) +/* 80189730 00186690 90 01 02 40 */ stw r0, 0x240(r1) +lbl_80189734: +/* 80189734 00186694 7F A3 EB 78 */ mr r3, r29 +/* 80189738 00186698 38 81 02 10 */ addi r4, r1, 0x210 +/* 8018973C 0018669C 4B F9 12 FD */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f +/* 80189740 001866A0 7F A4 EB 78 */ mr r4, r29 +/* 80189744 001866A4 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 80189748 001866A8 81 9D 00 00 */ lwz r12, 0(r29) +/* 8018974C 001866AC 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 80189750 001866B0 7D 89 03 A6 */ mtctr r12 +/* 80189754 001866B4 4E 80 04 21 */ bctrl +/* 80189758 001866B8 7F A3 EB 78 */ mr r3, r29 +/* 8018975C 001866BC 81 9D 00 00 */ lwz r12, 0(r29) +/* 80189760 001866C0 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80189764 001866C4 7D 89 03 A6 */ mtctr r12 +/* 80189768 001866C8 4E 80 04 21 */ bctrl +/* 8018976C 001866CC 7C 65 1B 78 */ mr r5, r3 +/* 80189770 001866D0 7F 83 E3 78 */ mr r3, r28 +/* 80189774 001866D4 7F E7 FB 78 */ mr r7, r31 +/* 80189778 001866D8 38 81 0E DC */ addi r4, r1, 0xedc +/* 8018977C 001866DC 38 C1 00 E0 */ addi r6, r1, 0xe0 +/* 80189780 001866E0 39 01 2A 20 */ addi r8, r1, 0x2a20 +/* 80189784 001866E4 39 21 00 20 */ addi r9, r1, 0x20 +/* 80189788 001866E8 39 41 32 24 */ addi r10, r1, 0x3224 +/* 8018978C 001866EC 4B FF AC 59 */ bl "DetectCollision_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>R9TUniqueIdR18CCollisionInfoList" +/* 80189790 001866F0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80189794 001866F4 41 82 00 8C */ beq lbl_80189820 +/* 80189798 001866F8 7F A3 EB 78 */ mr r3, r29 +/* 8018979C 001866FC 81 9D 00 00 */ lwz r12, 0(r29) +/* 801897A0 00186700 81 8C 00 7C */ lwz r12, 0x7c(r12) +/* 801897A4 00186704 7D 89 03 A6 */ mtctr r12 +/* 801897A8 00186708 4E 80 04 21 */ bctrl +/* 801897AC 0018670C C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) +/* 801897B0 00186710 FF E0 08 90 */ fmr f31, f1 +/* 801897B4 00186714 7F A3 EB 78 */ mr r3, r29 +/* 801897B8 00186718 38 81 02 10 */ addi r4, r1, 0x210 +/* 801897BC 0018671C D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801897C0 00186720 4B F9 1D 55 */ bl AddMotionState__13CPhysicsActorFRC12CMotionState +/* 801897C4 00186724 FC 20 F8 90 */ fmr f1, f31 +/* 801897C8 00186728 C0 42 A3 18 */ lfs f2, lbl_805AC038@sda21(r2) +/* 801897CC 0018672C 7F 84 E3 78 */ mr r4, r28 +/* 801897D0 00186730 7F A5 EB 78 */ mr r5, r29 +/* 801897D4 00186734 7F E6 FB 78 */ mr r6, r31 +/* 801897D8 00186738 38 61 0E DC */ addi r3, r1, 0xedc +/* 801897DC 0018673C 38 E1 2A 20 */ addi r7, r1, 0x2a20 +/* 801897E0 00186740 39 01 00 28 */ addi r8, r1, 0x28 +/* 801897E4 00186744 39 21 32 24 */ addi r9, r1, 0x3224 +/* 801897E8 00186748 4B FF F7 95 */ bl "ResolveUpDown__15CGroundMovementFR19CAreaCollisionCacheR13CStateManagerR13CPhysicsActorRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>ffRfR18CCollisionInfoList" +/* 801897EC 0018674C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801897F0 00186750 41 82 00 3C */ beq lbl_8018982C +/* 801897F4 00186754 7F A3 EB 78 */ mr r3, r29 +/* 801897F8 00186758 38 81 02 44 */ addi r4, r1, 0x244 +/* 801897FC 0018675C 4B F9 1F 2D */ bl SetMotionState__13CPhysicsActorFRC12CMotionState +/* 80189800 00186760 FC 20 F0 90 */ fmr f1, f30 +/* 80189804 00186764 7F 84 E3 78 */ mr r4, r28 +/* 80189808 00186768 7F A5 EB 78 */ mr r5, r29 +/* 8018980C 0018676C 7F E6 FB 78 */ mr r6, r31 +/* 80189810 00186770 38 61 0E DC */ addi r3, r1, 0xedc +/* 80189814 00186774 38 E1 2A 20 */ addi r7, r1, 0x2a20 +/* 80189818 00186778 4B FF E9 E1 */ bl "MoveGroundColliderXY__15CGroundMovementFR19CAreaCollisionCacheR13CStateManagerR13CPhysicsActorRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>f" +/* 8018981C 0018677C 48 00 00 10 */ b lbl_8018982C +lbl_80189820: +/* 80189820 00186780 7F A3 EB 78 */ mr r3, r29 +/* 80189824 00186784 38 81 02 10 */ addi r4, r1, 0x210 +/* 80189828 00186788 4B F9 1C ED */ bl AddMotionState__13CPhysicsActorFRC12CMotionState +lbl_8018982C: +/* 8018982C 0018678C C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) +/* 80189830 00186790 7F A3 EB 78 */ mr r3, r29 +/* 80189834 00186794 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80189838 00186798 81 9D 00 00 */ lwz r12, 0(r29) +/* 8018983C 0018679C 81 8C 00 78 */ lwz r12, 0x78(r12) +/* 80189840 001867A0 7D 89 03 A6 */ mtctr r12 +/* 80189844 001867A4 4E 80 04 21 */ bctrl +/* 80189848 001867A8 80 A1 32 24 */ lwz r5, 0x3224(r1) +/* 8018984C 001867AC 38 60 00 00 */ li r3, 0 +/* 80189850 001867B0 2C 05 00 00 */ cmpwi r5, 0 +/* 80189854 001867B4 40 81 00 40 */ ble lbl_80189894 +/* 80189858 001867B8 2C 05 00 08 */ cmpwi r5, 8 +/* 8018985C 001867BC 38 85 FF F8 */ addi r4, r5, -8 +/* 80189860 001867C0 40 81 00 20 */ ble lbl_80189880 +/* 80189864 001867C4 38 04 00 07 */ addi r0, r4, 7 +/* 80189868 001867C8 54 00 E8 FE */ srwi r0, r0, 3 +/* 8018986C 001867CC 7C 09 03 A6 */ mtctr r0 +/* 80189870 001867D0 2C 04 00 00 */ cmpwi r4, 0 +/* 80189874 001867D4 40 81 00 0C */ ble lbl_80189880 +lbl_80189878: +/* 80189878 001867D8 38 63 00 08 */ addi r3, r3, 8 +/* 8018987C 001867DC 42 00 FF FC */ bdnz lbl_80189878 +lbl_80189880: +/* 80189880 001867E0 7C 03 28 50 */ subf r0, r3, r5 +/* 80189884 001867E4 7C 09 03 A6 */ mtctr r0 +/* 80189888 001867E8 7C 03 28 00 */ cmpw r3, r5 +/* 8018988C 001867EC 40 80 00 08 */ bge lbl_80189894 +lbl_80189890: +/* 80189890 001867F0 42 00 00 00 */ bdnz lbl_80189890 +lbl_80189894: +/* 80189894 001867F4 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) +/* 80189898 001867F8 38 60 00 00 */ li r3, 0 +/* 8018989C 001867FC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801898A0 00186800 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801898A4 00186804 90 61 32 24 */ stw r3, 0x3224(r1) +/* 801898A8 00186808 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801898AC 0018680C 4C 41 13 82 */ cror 2, 1, 2 +/* 801898B0 00186810 40 82 01 88 */ bne lbl_80189A38 +/* 801898B4 00186814 FC 20 08 50 */ fneg f1, f1 +/* 801898B8 00186818 7F 84 E3 78 */ mr r4, r28 +/* 801898BC 0018681C 7F A5 EB 78 */ mr r5, r29 +/* 801898C0 00186820 7F E6 FB 78 */ mr r6, r31 +/* 801898C4 00186824 38 61 0E DC */ addi r3, r1, 0xedc +/* 801898C8 00186828 38 E1 2A 20 */ addi r7, r1, 0x2a20 +/* 801898CC 0018682C 39 01 00 24 */ addi r8, r1, 0x24 +/* 801898D0 00186830 39 21 32 24 */ addi r9, r1, 0x3224 +/* 801898D4 00186834 39 41 00 18 */ addi r10, r1, 0x18 +/* 801898D8 00186838 4B FF F2 F9 */ bl "MoveGroundColliderZ__15CGroundMovementFR19CAreaCollisionCacheR13CStateManagerR13CPhysicsActorRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>fRfR18CCollisionInfoListR9TUniqueId" +/* 801898DC 0018683C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801898E0 00186840 41 82 01 58 */ beq lbl_80189A38 +/* 801898E4 00186844 80 01 32 24 */ lwz r0, 0x3224(r1) +/* 801898E8 00186848 2C 00 00 00 */ cmpwi r0, 0 +/* 801898EC 0018684C 40 81 01 5C */ ble lbl_80189A48 +/* 801898F0 00186850 C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) +/* 801898F4 00186854 38 00 00 00 */ li r0, 0 +/* 801898F8 00186858 C0 02 A3 10 */ lfs f0, lbl_805AC030@sda21(r2) +/* 801898FC 0018685C 38 61 00 34 */ addi r3, r1, 0x34 +/* 80189900 00186860 90 01 02 D8 */ stw r0, 0x2d8(r1) +/* 80189904 00186864 38 81 32 24 */ addi r4, r1, 0x3224 +/* 80189908 00186868 38 A1 02 D8 */ addi r5, r1, 0x2d8 +/* 8018990C 0018686C D0 21 00 34 */ stfs f1, 0x34(r1) +/* 80189910 00186870 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 80189914 00186874 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 80189918 00186878 48 14 8B 41 */ bl FilterByClosestNormal__13CollisionUtilFRC9CVector3fRC18CCollisionInfoListR18CCollisionInfoList +/* 8018991C 0018687C 80 01 02 D8 */ lwz r0, 0x2d8(r1) +/* 80189920 00186880 2C 00 00 00 */ cmpwi r0, 0 +/* 80189924 00186884 40 81 00 BC */ ble lbl_801899E0 +/* 80189928 00186888 38 61 02 78 */ addi r3, r1, 0x278 +/* 8018992C 0018688C 38 81 02 DC */ addi r4, r1, 0x2dc +/* 80189930 00186890 4B F6 7B 71 */ bl __ct__14CCollisionInfoFRC14CCollisionInfo +/* 80189934 00186894 3B 61 02 B0 */ addi r27, r1, 0x2b0 +/* 80189938 00186898 38 81 02 C0 */ addi r4, r1, 0x2c0 +/* 8018993C 0018689C 7F 63 DB 78 */ mr r3, r27 +/* 80189940 001868A0 4B FF 8F 89 */ bl IsFloor__14CGameCollisionFRC13CMaterialListRC9CVector3f +/* 80189944 001868A4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80189948 001868A8 41 82 00 88 */ beq lbl_801899D0 +/* 8018994C 001868AC A0 01 00 18 */ lhz r0, 0x18(r1) +/* 80189950 001868B0 7F 83 E3 78 */ mr r3, r28 +/* 80189954 001868B4 38 81 00 14 */ addi r4, r1, 0x14 +/* 80189958 001868B8 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8018995C 001868BC 4B EC 2C 19 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80189960 001868C0 7C 60 1B 78 */ mr r0, r3 +/* 80189964 001868C4 38 61 00 2C */ addi r3, r1, 0x2c +/* 80189968 001868C8 7C 1E 03 78 */ mr r30, r0 +/* 8018996C 001868CC 7F C4 F3 78 */ mr r4, r30 +/* 80189970 001868D0 4B F1 F4 A5 */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" +/* 80189974 001868D4 80 03 00 04 */ lwz r0, 4(r3) +/* 80189978 001868D8 28 00 00 00 */ cmplwi r0, 0 +/* 8018997C 001868DC 41 82 00 24 */ beq lbl_801899A0 +/* 80189980 001868E0 A0 1D 00 08 */ lhz r0, 8(r29) +/* 80189984 001868E4 7F 83 E3 78 */ mr r3, r28 +/* 80189988 001868E8 7F C4 F3 78 */ mr r4, r30 +/* 8018998C 001868EC 38 A1 00 10 */ addi r5, r1, 0x10 +/* 80189990 001868F0 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80189994 001868F4 38 C0 00 1F */ li r6, 0x1f +/* 80189998 001868F8 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8018999C 001868FC 4B EB A5 35 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +lbl_801899A0: +/* 801899A0 00186900 7F 83 E3 78 */ mr r3, r28 +/* 801899A4 00186904 7F 64 DB 78 */ mr r4, r27 +/* 801899A8 00186908 7F A5 EB 78 */ mr r5, r29 +/* 801899AC 0018690C 4B FF 8F AD */ bl SendMaterialMessage__14CGameCollisionFR13CStateManagerRC13CMaterialListR6CActor +/* 801899B0 00186910 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801899B4 00186914 7F 83 E3 78 */ mr r3, r28 +/* 801899B8 00186918 7F A4 EB 78 */ mr r4, r29 +/* 801899BC 0018691C 38 A1 00 08 */ addi r5, r1, 8 +/* 801899C0 00186920 B0 01 00 08 */ sth r0, 8(r1) +/* 801899C4 00186924 38 C0 00 17 */ li r6, 0x17 +/* 801899C8 00186928 4B EB A5 09 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +/* 801899CC 0018692C 48 00 00 14 */ b lbl_801899E0 +lbl_801899D0: +/* 801899D0 00186930 FC 20 E8 90 */ fmr f1, f29 +/* 801899D4 00186934 7F A3 EB 78 */ mr r3, r29 +/* 801899D8 00186938 7F 84 E3 78 */ mr r4, r28 +/* 801899DC 0018693C 48 00 02 55 */ bl CheckFalling__15CGroundMovementFR13CPhysicsActorR13CStateManagerf +lbl_801899E0: +/* 801899E0 00186940 80 A1 02 D8 */ lwz r5, 0x2d8(r1) +/* 801899E4 00186944 38 60 00 00 */ li r3, 0 +/* 801899E8 00186948 2C 05 00 00 */ cmpwi r5, 0 +/* 801899EC 0018694C 40 81 00 40 */ ble lbl_80189A2C +/* 801899F0 00186950 2C 05 00 08 */ cmpwi r5, 8 +/* 801899F4 00186954 38 85 FF F8 */ addi r4, r5, -8 +/* 801899F8 00186958 40 81 00 20 */ ble lbl_80189A18 +/* 801899FC 0018695C 38 04 00 07 */ addi r0, r4, 7 +/* 80189A00 00186960 54 00 E8 FE */ srwi r0, r0, 3 +/* 80189A04 00186964 7C 09 03 A6 */ mtctr r0 +/* 80189A08 00186968 2C 04 00 00 */ cmpwi r4, 0 +/* 80189A0C 0018696C 40 81 00 0C */ ble lbl_80189A18 +lbl_80189A10: +/* 80189A10 00186970 38 63 00 08 */ addi r3, r3, 8 +/* 80189A14 00186974 42 00 FF FC */ bdnz lbl_80189A10 +lbl_80189A18: +/* 80189A18 00186978 7C 03 28 50 */ subf r0, r3, r5 +/* 80189A1C 0018697C 7C 09 03 A6 */ mtctr r0 +/* 80189A20 00186980 7C 03 28 00 */ cmpw r3, r5 +/* 80189A24 00186984 40 80 00 08 */ bge lbl_80189A2C +lbl_80189A28: +/* 80189A28 00186988 42 00 00 00 */ bdnz lbl_80189A28 +lbl_80189A2C: +/* 80189A2C 0018698C 38 00 00 00 */ li r0, 0 +/* 80189A30 00186990 90 01 02 D8 */ stw r0, 0x2d8(r1) +/* 80189A34 00186994 48 00 00 14 */ b lbl_80189A48 +lbl_80189A38: +/* 80189A38 00186998 FC 20 E8 90 */ fmr f1, f29 +/* 80189A3C 0018699C 7F A3 EB 78 */ mr r3, r29 +/* 80189A40 001869A0 7F 84 E3 78 */ mr r4, r28 +/* 80189A44 001869A4 48 00 01 ED */ bl CheckFalling__15CGroundMovementFR13CPhysicsActorR13CStateManagerf +lbl_80189A48: +/* 80189A48 001869A8 7F A3 EB 78 */ mr r3, r29 +/* 80189A4C 001869AC 4B F9 18 69 */ bl ClearForcesAndTorques__13CPhysicsActorFv +/* 80189A50 001869B0 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80189A54 001869B4 7F A3 EB 78 */ mr r3, r29 +/* 80189A58 001869B8 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 80189A5C 001869BC 4B F9 0F DD */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f +/* 80189A60 001869C0 80 7D 00 68 */ lwz r3, 0x68(r29) +/* 80189A64 001869C4 38 00 00 01 */ li r0, 1 +/* 80189A68 001869C8 80 BD 00 6C */ lwz r5, 0x6c(r29) +/* 80189A6C 001869CC 38 80 00 00 */ li r4, 0 +/* 80189A70 001869D0 7C 60 00 38 */ and r0, r3, r0 +/* 80189A74 001869D4 7C A3 20 38 */ and r3, r5, r4 +/* 80189A78 001869D8 7C 63 22 78 */ xor r3, r3, r4 +/* 80189A7C 001869DC 7C 00 22 78 */ xor r0, r0, r4 +/* 80189A80 001869E0 7C 60 03 79 */ or. r0, r3, r0 +/* 80189A84 001869E4 41 82 00 38 */ beq lbl_80189ABC +/* 80189A88 001869E8 7F A3 EB 78 */ mr r3, r29 +/* 80189A8C 001869EC 81 9D 00 00 */ lwz r12, 0(r29) +/* 80189A90 001869F0 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80189A94 001869F4 7D 89 03 A6 */ mtctr r12 +/* 80189A98 001869F8 4E 80 04 21 */ bctrl +/* 80189A9C 001869FC C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) +/* 80189AA0 00186A00 7C 66 1B 78 */ mr r6, r3 +/* 80189AA4 00186A04 7F 83 E3 78 */ mr r3, r28 +/* 80189AA8 00186A08 7F A5 EB 78 */ mr r5, r29 +/* 80189AAC 00186A0C 38 81 0E DC */ addi r4, r1, 0xedc +/* 80189AB0 00186A10 38 E1 2A 20 */ addi r7, r1, 0x2a20 +/* 80189AB4 00186A14 39 00 00 01 */ li r8, 1 +/* 80189AB8 00186A18 4B FF 6D D5 */ bl "CollisionFailsafe__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheR13CPhysicsActorRC19CCollisionPrimitiveRCQ24rstl32reserved_vector<9TUniqueId,1024>fUi" +lbl_80189ABC: +/* 80189ABC 00186A1C 34 E1 0E F4 */ addic. r7, r1, 0xef4 +/* 80189AC0 00186A20 41 82 00 94 */ beq lbl_80189B54 +/* 80189AC4 00186A24 38 C7 00 04 */ addi r6, r7, 4 +/* 80189AC8 00186A28 38 60 00 00 */ li r3, 0 +/* 80189ACC 00186A2C 48 00 00 74 */ b lbl_80189B40 +lbl_80189AD0: +/* 80189AD0 00186A30 28 06 00 00 */ cmplwi r6, 0 +/* 80189AD4 00186A34 41 82 00 64 */ beq lbl_80189B38 +/* 80189AD8 00186A38 34 06 00 04 */ addic. r0, r6, 4 +/* 80189ADC 00186A3C 41 82 00 5C */ beq lbl_80189B38 +/* 80189AE0 00186A40 81 06 00 04 */ lwz r8, 4(r6) +/* 80189AE4 00186A44 38 80 00 00 */ li r4, 0 +/* 80189AE8 00186A48 2C 08 00 00 */ cmpwi r8, 0 +/* 80189AEC 00186A4C 40 81 00 44 */ ble lbl_80189B30 +/* 80189AF0 00186A50 2C 08 00 08 */ cmpwi r8, 8 +/* 80189AF4 00186A54 38 A8 FF F8 */ addi r5, r8, -8 +/* 80189AF8 00186A58 40 81 00 20 */ ble lbl_80189B18 +/* 80189AFC 00186A5C 38 05 00 07 */ addi r0, r5, 7 +/* 80189B00 00186A60 54 00 E8 FE */ srwi r0, r0, 3 +/* 80189B04 00186A64 7C 09 03 A6 */ mtctr r0 +/* 80189B08 00186A68 2C 05 00 00 */ cmpwi r5, 0 +/* 80189B0C 00186A6C 40 81 00 0C */ ble lbl_80189B18 +lbl_80189B10: +/* 80189B10 00186A70 38 84 00 08 */ addi r4, r4, 8 +/* 80189B14 00186A74 42 00 FF FC */ bdnz lbl_80189B10 +lbl_80189B18: +/* 80189B18 00186A78 7C 04 40 50 */ subf r0, r4, r8 +/* 80189B1C 00186A7C 7C 09 03 A6 */ mtctr r0 +/* 80189B20 00186A80 7C 04 40 00 */ cmpw r4, r8 +/* 80189B24 00186A84 40 80 00 0C */ bge lbl_80189B30 +lbl_80189B28: +/* 80189B28 00186A88 38 84 00 01 */ addi r4, r4, 1 +/* 80189B2C 00186A8C 42 00 FF FC */ bdnz lbl_80189B28 +lbl_80189B30: +/* 80189B30 00186A90 38 00 00 00 */ li r0, 0 +/* 80189B34 00186A94 90 06 00 04 */ stw r0, 4(r6) +lbl_80189B38: +/* 80189B38 00186A98 38 C6 09 0C */ addi r6, r6, 0x90c +/* 80189B3C 00186A9C 38 63 00 01 */ addi r3, r3, 1 +lbl_80189B40: +/* 80189B40 00186AA0 80 07 00 00 */ lwz r0, 0(r7) +/* 80189B44 00186AA4 7C 03 00 00 */ cmpw r3, r0 +/* 80189B48 00186AA8 41 80 FF 88 */ blt lbl_80189AD0 +/* 80189B4C 00186AAC 38 00 00 00 */ li r0, 0 +/* 80189B50 00186AB0 90 07 00 00 */ stw r0, 0(r7) +lbl_80189B54: +/* 80189B54 00186AB4 80 A1 2A 20 */ lwz r5, 0x2a20(r1) +/* 80189B58 00186AB8 38 60 00 00 */ li r3, 0 +/* 80189B5C 00186ABC 2C 05 00 00 */ cmpwi r5, 0 +/* 80189B60 00186AC0 40 81 00 40 */ ble lbl_80189BA0 +/* 80189B64 00186AC4 2C 05 00 08 */ cmpwi r5, 8 +/* 80189B68 00186AC8 38 85 FF F8 */ addi r4, r5, -8 +/* 80189B6C 00186ACC 40 81 00 20 */ ble lbl_80189B8C +/* 80189B70 00186AD0 38 04 00 07 */ addi r0, r4, 7 +/* 80189B74 00186AD4 54 00 E8 FE */ srwi r0, r0, 3 +/* 80189B78 00186AD8 7C 09 03 A6 */ mtctr r0 +/* 80189B7C 00186ADC 2C 04 00 00 */ cmpwi r4, 0 +/* 80189B80 00186AE0 40 81 00 0C */ ble lbl_80189B8C +lbl_80189B84: +/* 80189B84 00186AE4 38 63 00 08 */ addi r3, r3, 8 +/* 80189B88 00186AE8 42 00 FF FC */ bdnz lbl_80189B84 +lbl_80189B8C: +/* 80189B8C 00186AEC 7C 03 28 50 */ subf r0, r3, r5 +/* 80189B90 00186AF0 7C 09 03 A6 */ mtctr r0 +/* 80189B94 00186AF4 7C 03 28 00 */ cmpw r3, r5 +/* 80189B98 00186AF8 40 80 00 08 */ bge lbl_80189BA0 +lbl_80189B9C: +/* 80189B9C 00186AFC 42 00 00 00 */ bdnz lbl_80189B9C +lbl_80189BA0: +/* 80189BA0 00186B00 80 A1 32 24 */ lwz r5, 0x3224(r1) +/* 80189BA4 00186B04 38 60 00 00 */ li r3, 0 +/* 80189BA8 00186B08 90 61 2A 20 */ stw r3, 0x2a20(r1) +/* 80189BAC 00186B0C 2C 05 00 00 */ cmpwi r5, 0 +/* 80189BB0 00186B10 40 81 00 40 */ ble lbl_80189BF0 +/* 80189BB4 00186B14 2C 05 00 08 */ cmpwi r5, 8 +/* 80189BB8 00186B18 38 85 FF F8 */ addi r4, r5, -8 +/* 80189BBC 00186B1C 40 81 00 20 */ ble lbl_80189BDC +/* 80189BC0 00186B20 38 04 00 07 */ addi r0, r4, 7 +/* 80189BC4 00186B24 54 00 E8 FE */ srwi r0, r0, 3 +/* 80189BC8 00186B28 7C 09 03 A6 */ mtctr r0 +/* 80189BCC 00186B2C 2C 04 00 00 */ cmpwi r4, 0 +/* 80189BD0 00186B30 40 81 00 0C */ ble lbl_80189BDC +lbl_80189BD4: +/* 80189BD4 00186B34 38 63 00 08 */ addi r3, r3, 8 +/* 80189BD8 00186B38 42 00 FF FC */ bdnz lbl_80189BD4 +lbl_80189BDC: +/* 80189BDC 00186B3C 7C 03 28 50 */ subf r0, r3, r5 +/* 80189BE0 00186B40 7C 09 03 A6 */ mtctr r0 +/* 80189BE4 00186B44 7C 03 28 00 */ cmpw r3, r5 +/* 80189BE8 00186B48 40 80 00 08 */ bge lbl_80189BF0 +lbl_80189BEC: +/* 80189BEC 00186B4C 42 00 00 00 */ bdnz lbl_80189BEC +lbl_80189BF0: +/* 80189BF0 00186B50 38 00 00 00 */ li r0, 0 +/* 80189BF4 00186B54 90 01 32 24 */ stw r0, 0x3224(r1) +/* 80189BF8 00186B58 38 00 3E 68 */ li r0, 0x3e68 +/* 80189BFC 00186B5C 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 +/* 80189C00 00186B60 CB E1 3E 60 */ lfd f31, 0x3e60(r1) +/* 80189C04 00186B64 38 00 3E 58 */ li r0, 0x3e58 +/* 80189C08 00186B68 13 C1 00 0C */ psq_lx f30, r1, r0, 0, qr0 +/* 80189C0C 00186B6C CB C1 3E 50 */ lfd f30, 0x3e50(r1) +/* 80189C10 00186B70 38 00 3E 48 */ li r0, 0x3e48 +/* 80189C14 00186B74 13 A1 00 0C */ psq_lx f29, r1, r0, 0, qr0 +/* 80189C18 00186B78 CB A1 3E 40 */ lfd f29, 0x3e40(r1) +/* 80189C1C 00186B7C BB 61 3E 2C */ lmw r27, 0x3e2c(r1) +/* 80189C20 00186B80 80 01 3E 74 */ lwz r0, 0x3e74(r1) +/* 80189C24 00186B84 7C 08 03 A6 */ mtlr r0 +/* 80189C28 00186B88 38 21 3E 70 */ addi r1, r1, 0x3e70 +/* 80189C2C 00186B8C 4E 80 00 20 */ blr + +.global CheckFalling__15CGroundMovementFR13CPhysicsActorR13CStateManagerf +CheckFalling__15CGroundMovementFR13CPhysicsActorR13CStateManagerf: +/* 80189C30 00186B90 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 80189C34 00186B94 7C 08 02 A6 */ mflr r0 +/* 80189C38 00186B98 90 01 00 94 */ stw r0, 0x94(r1) +/* 80189C3C 00186B9C BF 61 00 7C */ stmw r27, 0x7c(r1) +/* 80189C40 00186BA0 7C 7B 1B 78 */ mr r27, r3 +/* 80189C44 00186BA4 7C 9C 23 78 */ mr r28, r4 +/* 80189C48 00186BA8 38 61 00 54 */ addi r3, r1, 0x54 +/* 80189C4C 00186BAC 7F 64 DB 78 */ mr r4, r27 +/* 80189C50 00186BB0 3B A0 00 01 */ li r29, 1 +/* 80189C54 00186BB4 81 9B 00 00 */ lwz r12, 0(r27) +/* 80189C58 00186BB8 81 8C 00 40 */ lwz r12, 0x40(r12) +/* 80189C5C 00186BBC 7D 89 03 A6 */ mtctr r12 +/* 80189C60 00186BC0 4E 80 04 21 */ bctrl +/* 80189C64 00186BC4 3B E0 00 00 */ li r31, 0 +/* 80189C68 00186BC8 9B E1 00 6C */ stb r31, 0x6c(r1) +/* 80189C6C 00186BCC 80 7C 08 50 */ lwz r3, 0x850(r28) +/* 80189C70 00186BD0 83 C3 00 58 */ lwz r30, 0x58(r3) +/* 80189C74 00186BD4 48 00 00 40 */ b lbl_80189CB4 +lbl_80189C78: +/* 80189C78 00186BD8 7F 64 DB 78 */ mr r4, r27 +/* 80189C7C 00186BDC 38 61 00 38 */ addi r3, r1, 0x38 +/* 80189C80 00186BE0 81 9B 00 00 */ lwz r12, 0(r27) +/* 80189C84 00186BE4 81 8C 00 40 */ lwz r12, 0x40(r12) +/* 80189C88 00186BE8 7D 89 03 A6 */ mtctr r12 +/* 80189C8C 00186BEC 4E 80 04 21 */ bctrl +/* 80189C90 00186BF0 38 7E 00 6C */ addi r3, r30, 0x6c +/* 80189C94 00186BF4 38 81 00 38 */ addi r4, r1, 0x38 +/* 80189C98 00186BF8 48 1A DE ED */ bl DoBoundsOverlap__6CAABoxCFRC6CAABox +/* 80189C9C 00186BFC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80189CA0 00186C00 9B E1 00 50 */ stb r31, 0x50(r1) +/* 80189CA4 00186C04 41 82 00 0C */ beq lbl_80189CB0 +/* 80189CA8 00186C08 3B A0 00 00 */ li r29, 0 +/* 80189CAC 00186C0C 48 00 00 1C */ b lbl_80189CC8 +lbl_80189CB0: +/* 80189CB0 00186C10 83 DE 01 30 */ lwz r30, 0x130(r30) +lbl_80189CB4: +/* 80189CB4 00186C14 38 61 00 10 */ addi r3, r1, 0x10 +/* 80189CB8 00186C18 4B EB D0 55 */ bl GetAliveAreasEnd__6CWorldFv +/* 80189CBC 00186C1C 80 01 00 10 */ lwz r0, 0x10(r1) +/* 80189CC0 00186C20 7C 1E 00 40 */ cmplw r30, r0 +/* 80189CC4 00186C24 40 82 FF B4 */ bne lbl_80189C78 +lbl_80189CC8: +/* 80189CC8 00186C28 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 80189CCC 00186C2C 40 82 00 24 */ bne lbl_80189CF0 +/* 80189CD0 00186C30 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80189CD4 00186C34 7F 83 E3 78 */ mr r3, r28 +/* 80189CD8 00186C38 7F 64 DB 78 */ mr r4, r27 +/* 80189CDC 00186C3C 38 A1 00 0C */ addi r5, r1, 0xc +/* 80189CE0 00186C40 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80189CE4 00186C44 38 C0 00 1A */ li r6, 0x1a +/* 80189CE8 00186C48 4B EB A1 E9 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +/* 80189CEC 00186C4C 48 00 00 94 */ b lbl_80189D80 +lbl_80189CF0: +/* 80189CF0 00186C50 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80189CF4 00186C54 7F 83 E3 78 */ mr r3, r28 +/* 80189CF8 00186C58 7F 64 DB 78 */ mr r4, r27 +/* 80189CFC 00186C5C 38 A1 00 08 */ addi r5, r1, 8 +/* 80189D00 00186C60 B0 01 00 08 */ sth r0, 8(r1) +/* 80189D04 00186C64 38 C0 00 17 */ li r6, 0x17 +/* 80189D08 00186C68 4B EB A1 C9 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +/* 80189D0C 00186C6C 38 61 00 20 */ addi r3, r1, 0x20 +/* 80189D10 00186C70 38 9B 01 44 */ addi r4, r27, 0x144 +/* 80189D14 00186C74 38 AD 8E A8 */ addi r5, r13, lbl_805A7A68@sda21 +/* 80189D18 00186C78 4B E9 17 6D */ bl __ml__FRC10CAxisAngleRCf +/* 80189D1C 00186C7C 7F 63 DB 78 */ mr r3, r27 +/* 80189D20 00186C80 38 81 00 20 */ addi r4, r1, 0x20 +/* 80189D24 00186C84 4B F9 0E D9 */ bl SetAngularVelocityWR__13CPhysicsActorFRC10CAxisAngle +/* 80189D28 00186C88 38 61 00 14 */ addi r3, r1, 0x14 +/* 80189D2C 00186C8C 38 9B 00 34 */ addi r4, r27, 0x34 +/* 80189D30 00186C90 38 BB 01 38 */ addi r5, r27, 0x138 +/* 80189D34 00186C94 48 18 8C F1 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 80189D38 00186C98 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 80189D3C 00186C9C 7F 63 DB 78 */ mr r3, r27 +/* 80189D40 00186CA0 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 80189D44 00186CA4 38 81 00 2C */ addi r4, r1, 0x2c +/* 80189D48 00186CA8 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 80189D4C 00186CAC D0 01 00 34 */ stfs f0, 0x34(r1) +/* 80189D50 00186CB0 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) +/* 80189D54 00186CB4 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 80189D58 00186CB8 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 80189D5C 00186CBC D0 01 00 34 */ stfs f0, 0x34(r1) +/* 80189D60 00186CC0 4B F9 0F B9 */ bl SetVelocityOR__13CPhysicsActorFRC9CVector3f +/* 80189D64 00186CC4 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80189D68 00186CC8 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 80189D6C 00186CCC D0 1B 01 50 */ stfs f0, 0x150(r27) +/* 80189D70 00186CD0 C0 03 00 04 */ lfs f0, 4(r3) +/* 80189D74 00186CD4 D0 1B 01 54 */ stfs f0, 0x154(r27) +/* 80189D78 00186CD8 C0 03 00 08 */ lfs f0, 8(r3) +/* 80189D7C 00186CDC D0 1B 01 58 */ stfs f0, 0x158(r27) +lbl_80189D80: +/* 80189D80 00186CE0 BB 61 00 7C */ lmw r27, 0x7c(r1) +/* 80189D84 00186CE4 80 01 00 94 */ lwz r0, 0x94(r1) +/* 80189D88 00186CE8 7C 08 03 A6 */ mtlr r0 +/* 80189D8C 00186CEC 38 21 00 90 */ addi r1, r1, 0x90 +/* 80189D90 00186CF0 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CMapWorldInfo.s b/asm/Kyoto_CWD/CMapWorldInfo.s new file mode 100644 index 00000000..f3d9daf6 --- /dev/null +++ b/asm/Kyoto_CWD/CMapWorldInfo.s @@ -0,0 +1,2071 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global IsAnythingSet__13CMapWorldInfoFv +IsAnythingSet__13CMapWorldInfoFv: +/* 80167C14 00164B74 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80167C18 00164B78 39 00 00 00 */ li r8, 0 +/* 80167C1C 00164B7C 38 A0 00 01 */ li r5, 1 +/* 80167C20 00164B80 80 03 00 00 */ lwz r0, 0(r3) +/* 80167C24 00164B84 7C 09 03 A6 */ mtctr r0 +/* 80167C28 00164B88 2C 00 00 00 */ cmpwi r0, 0 +/* 80167C2C 00164B8C 40 81 00 5C */ ble lbl_80167C88 +lbl_80167C30: +/* 80167C30 00164B90 7D 04 2E 70 */ srawi r4, r8, 5 +/* 80167C34 00164B94 55 00 D8 08 */ slwi r0, r8, 0x1b +/* 80167C38 00164B98 7C C4 01 94 */ addze r6, r4 +/* 80167C3C 00164B9C 55 04 0F FE */ srwi r4, r8, 0x1f +/* 80167C40 00164BA0 7C 04 00 50 */ subf r0, r4, r0 +/* 80167C44 00164BA4 80 E3 00 10 */ lwz r7, 0x10(r3) +/* 80167C48 00164BA8 54 C6 10 3A */ slwi r6, r6, 2 +/* 80167C4C 00164BAC 7C E7 32 14 */ add r7, r7, r6 +/* 80167C50 00164BB0 54 00 28 3E */ rotlwi r0, r0, 5 +/* 80167C54 00164BB4 7C 80 22 14 */ add r4, r0, r4 +/* 80167C58 00164BB8 80 07 00 00 */ lwz r0, 0(r7) +/* 80167C5C 00164BBC 7C A4 20 30 */ slw r4, r5, r4 +/* 80167C60 00164BC0 90 E1 00 14 */ stw r7, 0x14(r1) +/* 80167C64 00164BC4 7C 80 00 39 */ and. r0, r4, r0 +/* 80167C68 00164BC8 90 E1 00 10 */ stw r7, 0x10(r1) +/* 80167C6C 00164BCC 90 E1 00 20 */ stw r7, 0x20(r1) +/* 80167C70 00164BD0 90 81 00 24 */ stw r4, 0x24(r1) +/* 80167C74 00164BD4 41 82 00 0C */ beq lbl_80167C80 +/* 80167C78 00164BD8 38 60 00 01 */ li r3, 1 +/* 80167C7C 00164BDC 48 00 00 80 */ b lbl_80167CFC +lbl_80167C80: +/* 80167C80 00164BE0 39 08 00 01 */ addi r8, r8, 1 +/* 80167C84 00164BE4 42 00 FF AC */ bdnz lbl_80167C30 +lbl_80167C88: +/* 80167C88 00164BE8 80 03 00 14 */ lwz r0, 0x14(r3) +/* 80167C8C 00164BEC 39 00 00 00 */ li r8, 0 +/* 80167C90 00164BF0 38 A0 00 01 */ li r5, 1 +/* 80167C94 00164BF4 7C 09 03 A6 */ mtctr r0 +/* 80167C98 00164BF8 2C 00 00 00 */ cmpwi r0, 0 +/* 80167C9C 00164BFC 40 81 00 5C */ ble lbl_80167CF8 +lbl_80167CA0: +/* 80167CA0 00164C00 7D 04 2E 70 */ srawi r4, r8, 5 +/* 80167CA4 00164C04 55 00 D8 08 */ slwi r0, r8, 0x1b +/* 80167CA8 00164C08 7C C4 01 94 */ addze r6, r4 +/* 80167CAC 00164C0C 55 04 0F FE */ srwi r4, r8, 0x1f +/* 80167CB0 00164C10 7C 04 00 50 */ subf r0, r4, r0 +/* 80167CB4 00164C14 80 E3 00 24 */ lwz r7, 0x24(r3) +/* 80167CB8 00164C18 54 C6 10 3A */ slwi r6, r6, 2 +/* 80167CBC 00164C1C 7C E7 32 14 */ add r7, r7, r6 +/* 80167CC0 00164C20 54 00 28 3E */ rotlwi r0, r0, 5 +/* 80167CC4 00164C24 7C 80 22 14 */ add r4, r0, r4 +/* 80167CC8 00164C28 80 07 00 00 */ lwz r0, 0(r7) +/* 80167CCC 00164C2C 7C A4 20 30 */ slw r4, r5, r4 +/* 80167CD0 00164C30 90 E1 00 0C */ stw r7, 0xc(r1) +/* 80167CD4 00164C34 7C 80 00 39 */ and. r0, r4, r0 +/* 80167CD8 00164C38 90 E1 00 08 */ stw r7, 8(r1) +/* 80167CDC 00164C3C 90 E1 00 18 */ stw r7, 0x18(r1) +/* 80167CE0 00164C40 90 81 00 1C */ stw r4, 0x1c(r1) +/* 80167CE4 00164C44 41 82 00 0C */ beq lbl_80167CF0 +/* 80167CE8 00164C48 38 60 00 01 */ li r3, 1 +/* 80167CEC 00164C4C 48 00 00 10 */ b lbl_80167CFC +lbl_80167CF0: +/* 80167CF0 00164C50 39 08 00 01 */ addi r8, r8, 1 +/* 80167CF4 00164C54 42 00 FF AC */ bdnz lbl_80167CA0 +lbl_80167CF8: +/* 80167CF8 00164C58 88 63 00 38 */ lbz r3, 0x38(r3) +lbl_80167CFC: +/* 80167CFC 00164C5C 38 21 00 30 */ addi r1, r1, 0x30 +/* 80167D00 00164C60 4E 80 00 20 */ blr + +.global IsAreaVisible__13CMapWorldInfoCF7TAreaId +IsAreaVisible__13CMapWorldInfoCF7TAreaId: +/* 80167D04 00164C64 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80167D08 00164C68 7C 08 02 A6 */ mflr r0 +/* 80167D0C 00164C6C 90 01 00 24 */ stw r0, 0x24(r1) +/* 80167D10 00164C70 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80167D14 00164C74 3B E0 00 01 */ li r31, 1 +/* 80167D18 00164C78 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80167D1C 00164C7C 7C 9E 23 78 */ mr r30, r4 +/* 80167D20 00164C80 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80167D24 00164C84 7C 7D 1B 78 */ mr r29, r3 +/* 80167D28 00164C88 80 04 00 00 */ lwz r0, 0(r4) +/* 80167D2C 00164C8C 38 81 00 0C */ addi r4, r1, 0xc +/* 80167D30 00164C90 90 01 00 0C */ stw r0, 0xc(r1) +/* 80167D34 00164C94 48 00 00 4D */ bl IsAreaVisited__13CMapWorldInfoCF7TAreaId +/* 80167D38 00164C98 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80167D3C 00164C9C 40 82 00 24 */ bne lbl_80167D60 +/* 80167D40 00164CA0 80 1E 00 00 */ lwz r0, 0(r30) +/* 80167D44 00164CA4 7F A3 EB 78 */ mr r3, r29 +/* 80167D48 00164CA8 38 81 00 08 */ addi r4, r1, 8 +/* 80167D4C 00164CAC 90 01 00 08 */ stw r0, 8(r1) +/* 80167D50 00164CB0 48 00 05 D5 */ bl IsMapped__13CMapWorldInfoCF7TAreaId +/* 80167D54 00164CB4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80167D58 00164CB8 40 82 00 08 */ bne lbl_80167D60 +/* 80167D5C 00164CBC 3B E0 00 00 */ li r31, 0 +lbl_80167D60: +/* 80167D60 00164CC0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80167D64 00164CC4 7F E3 FB 78 */ mr r3, r31 +/* 80167D68 00164CC8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80167D6C 00164CCC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80167D70 00164CD0 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80167D74 00164CD4 7C 08 03 A6 */ mtlr r0 +/* 80167D78 00164CD8 38 21 00 20 */ addi r1, r1, 0x20 +/* 80167D7C 00164CDC 4E 80 00 20 */ blr + +.global IsAreaVisited__13CMapWorldInfoCF7TAreaId +IsAreaVisited__13CMapWorldInfoCF7TAreaId: +/* 80167D80 00164CE0 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80167D84 00164CE4 7C 08 02 A6 */ mflr r0 +/* 80167D88 00164CE8 90 01 00 54 */ stw r0, 0x54(r1) +/* 80167D8C 00164CEC 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80167D90 00164CF0 7C 9F 23 78 */ mr r31, r4 +/* 80167D94 00164CF4 93 C1 00 48 */ stw r30, 0x48(r1) +/* 80167D98 00164CF8 7C 7E 1B 78 */ mr r30, r3 +/* 80167D9C 00164CFC 80 64 00 00 */ lwz r3, 0(r4) +/* 80167DA0 00164D00 80 1E 00 00 */ lwz r0, 0(r30) +/* 80167DA4 00164D04 38 63 00 01 */ addi r3, r3, 1 +/* 80167DA8 00164D08 7C 03 00 00 */ cmpw r3, r0 +/* 80167DAC 00164D0C 40 81 00 80 */ ble lbl_80167E2C +/* 80167DB0 00164D10 54 60 D8 08 */ slwi r0, r3, 0x1b +/* 80167DB4 00164D14 54 64 0F FE */ srwi r4, r3, 0x1f +/* 80167DB8 00164D18 7C 04 00 50 */ subf r0, r4, r0 +/* 80167DBC 00164D1C 7C 65 2E 70 */ srawi r5, r3, 5 +/* 80167DC0 00164D20 54 00 28 3E */ rotlwi r0, r0, 5 +/* 80167DC4 00164D24 38 7E 00 04 */ addi r3, r30, 4 +/* 80167DC8 00164D28 7C 80 22 14 */ add r4, r0, r4 +/* 80167DCC 00164D2C 7C A5 01 94 */ addze r5, r5 +/* 80167DD0 00164D30 7C 04 00 D0 */ neg r0, r4 +/* 80167DD4 00164D34 7C 00 23 78 */ or r0, r0, r4 +/* 80167DD8 00164D38 54 00 0F FE */ srwi r0, r0, 0x1f +/* 80167DDC 00164D3C 7C 85 02 14 */ add r4, r5, r0 +/* 80167DE0 00164D40 4B EF BD 45 */ bl "reserve__Q24rstl37vectorFi" +/* 80167DE4 00164D44 80 1E 00 10 */ lwz r0, 0x10(r30) +/* 80167DE8 00164D48 7F C3 F3 78 */ mr r3, r30 +/* 80167DEC 00164D4C 80 FE 00 00 */ lwz r7, 0(r30) +/* 80167DF0 00164D50 38 81 00 30 */ addi r4, r1, 0x30 +/* 80167DF4 00164D54 80 BF 00 00 */ lwz r5, 0(r31) +/* 80167DF8 00164D58 38 C0 00 00 */ li r6, 0 +/* 80167DFC 00164D5C 90 01 00 18 */ stw r0, 0x18(r1) +/* 80167E00 00164D60 7C A7 28 50 */ subf r5, r7, r5 +/* 80167E04 00164D64 90 01 00 14 */ stw r0, 0x14(r1) +/* 80167E08 00164D68 38 A5 00 01 */ addi r5, r5, 1 +/* 80167E0C 00164D6C 90 01 00 10 */ stw r0, 0x10(r1) +/* 80167E10 00164D70 90 01 00 24 */ stw r0, 0x24(r1) +/* 80167E14 00164D74 90 E1 00 28 */ stw r7, 0x28(r1) +/* 80167E18 00164D78 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80167E1C 00164D7C 90 01 00 30 */ stw r0, 0x30(r1) +/* 80167E20 00164D80 90 E1 00 34 */ stw r7, 0x34(r1) +/* 80167E24 00164D84 90 01 00 38 */ stw r0, 0x38(r1) +/* 80167E28 00164D88 48 00 00 75 */ bl sub_80167e9c +lbl_80167E2C: +/* 80167E2C 00164D8C 80 9F 00 00 */ lwz r4, 0(r31) +/* 80167E30 00164D90 38 A0 00 01 */ li r5, 1 +/* 80167E34 00164D94 80 DE 00 10 */ lwz r6, 0x10(r30) +/* 80167E38 00164D98 7C 83 2E 70 */ srawi r3, r4, 5 +/* 80167E3C 00164D9C 54 80 D8 08 */ slwi r0, r4, 0x1b +/* 80167E40 00164DA0 7C 63 01 94 */ addze r3, r3 +/* 80167E44 00164DA4 54 84 0F FE */ srwi r4, r4, 0x1f +/* 80167E48 00164DA8 54 63 10 3A */ slwi r3, r3, 2 +/* 80167E4C 00164DAC 7C C6 1A 14 */ add r6, r6, r3 +/* 80167E50 00164DB0 7C 04 00 50 */ subf r0, r4, r0 +/* 80167E54 00164DB4 54 03 28 3E */ rotlwi r3, r0, 5 +/* 80167E58 00164DB8 80 06 00 00 */ lwz r0, 0(r6) +/* 80167E5C 00164DBC 7C 63 22 14 */ add r3, r3, r4 +/* 80167E60 00164DC0 90 C1 00 0C */ stw r6, 0xc(r1) +/* 80167E64 00164DC4 7C A4 18 30 */ slw r4, r5, r3 +/* 80167E68 00164DC8 7C 83 00 38 */ and r3, r4, r0 +/* 80167E6C 00164DCC 90 C1 00 08 */ stw r6, 8(r1) +/* 80167E70 00164DD0 7C 03 00 D0 */ neg r0, r3 +/* 80167E74 00164DD4 7C 00 1B 78 */ or r0, r0, r3 +/* 80167E78 00164DD8 90 C1 00 1C */ stw r6, 0x1c(r1) +/* 80167E7C 00164DDC 54 03 0F FE */ srwi r3, r0, 0x1f +/* 80167E80 00164DE0 90 81 00 20 */ stw r4, 0x20(r1) +/* 80167E84 00164DE4 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 80167E88 00164DE8 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 80167E8C 00164DEC 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80167E90 00164DF0 7C 08 03 A6 */ mtlr r0 +/* 80167E94 00164DF4 38 21 00 50 */ addi r1, r1, 0x50 +/* 80167E98 00164DF8 4E 80 00 20 */ blr + +.global sub_80167e9c +sub_80167e9c: +/* 80167E9C 00164DFC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80167EA0 00164E00 7C 08 02 A6 */ mflr r0 +/* 80167EA4 00164E04 90 01 00 24 */ stw r0, 0x24(r1) +/* 80167EA8 00164E08 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80167EAC 00164E0C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80167EB0 00164E10 7C 7E 1B 78 */ mr r30, r3 +/* 80167EB4 00164E14 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80167EB8 00164E18 7C DD 33 78 */ mr r29, r6 +/* 80167EBC 00164E1C 93 81 00 10 */ stw r28, 0x10(r1) +/* 80167EC0 00164E20 7C BC 2B 78 */ mr r28, r5 +/* 80167EC4 00164E24 80 84 00 04 */ lwz r4, 4(r4) +/* 80167EC8 00164E28 7C 9F 23 78 */ mr r31, r4 +/* 80167ECC 00164E2C 48 00 02 CD */ bl sub_80168198 +/* 80167ED0 00164E30 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 80167ED4 00164E34 41 82 01 58 */ beq lbl_8016802C +/* 80167ED8 00164E38 2C 1C 00 00 */ cmpwi r28, 0 +/* 80167EDC 00164E3C 7F 83 E3 78 */ mr r3, r28 +/* 80167EE0 00164E40 40 81 02 98 */ ble lbl_80168178 +/* 80167EE4 00164E44 57 80 F0 BF */ rlwinm. r0, r28, 0x1e, 2, 0x1f +/* 80167EE8 00164E48 7C 09 03 A6 */ mtctr r0 +/* 80167EEC 00164E4C 41 82 00 F4 */ beq lbl_80167FE0 +lbl_80167EF0: +/* 80167EF0 00164E50 7F EB 2E 70 */ srawi r11, r31, 5 +/* 80167EF4 00164E54 57 E6 D8 08 */ slwi r6, r31, 0x1b +/* 80167EF8 00164E58 57 E5 0F FE */ srwi r5, r31, 0x1f +/* 80167EFC 00164E5C 81 9E 00 10 */ lwz r12, 0x10(r30) +/* 80167F00 00164E60 7D 4B 01 94 */ addze r10, r11 +/* 80167F04 00164E64 3B FF 00 01 */ addi r31, r31, 1 +/* 80167F08 00164E68 7C 85 30 50 */ subf r4, r5, r6 +/* 80167F0C 00164E6C 38 E0 00 01 */ li r7, 1 +/* 80167F10 00164E70 55 49 10 3A */ slwi r9, r10, 2 +/* 80167F14 00164E74 7F EB 2E 70 */ srawi r11, r31, 5 +/* 80167F18 00164E78 54 84 28 3E */ rotlwi r4, r4, 5 +/* 80167F1C 00164E7C 7D 0C 48 2E */ lwzx r8, r12, r9 +/* 80167F20 00164E80 7C 04 2A 14 */ add r0, r4, r5 +/* 80167F24 00164E84 57 E6 D8 08 */ slwi r6, r31, 0x1b +/* 80167F28 00164E88 57 E5 0F FE */ srwi r5, r31, 0x1f +/* 80167F2C 00164E8C 7D 4B 01 94 */ addze r10, r11 +/* 80167F30 00164E90 7C E0 00 30 */ slw r0, r7, r0 +/* 80167F34 00164E94 3B FF 00 01 */ addi r31, r31, 1 +/* 80167F38 00164E98 7C 85 30 50 */ subf r4, r5, r6 +/* 80167F3C 00164E9C 7D 00 03 78 */ or r0, r8, r0 +/* 80167F40 00164EA0 7F EB 2E 70 */ srawi r11, r31, 5 +/* 80167F44 00164EA4 7C 0C 49 2E */ stwx r0, r12, r9 +/* 80167F48 00164EA8 55 49 10 3A */ slwi r9, r10, 2 +/* 80167F4C 00164EAC 54 84 28 3E */ rotlwi r4, r4, 5 +/* 80167F50 00164EB0 57 E6 D8 08 */ slwi r6, r31, 0x1b +/* 80167F54 00164EB4 7C 04 2A 14 */ add r0, r4, r5 +/* 80167F58 00164EB8 81 9E 00 10 */ lwz r12, 0x10(r30) +/* 80167F5C 00164EBC 57 E5 0F FE */ srwi r5, r31, 0x1f +/* 80167F60 00164EC0 7D 4B 01 94 */ addze r10, r11 +/* 80167F64 00164EC4 7C 85 30 50 */ subf r4, r5, r6 +/* 80167F68 00164EC8 7D 0C 48 2E */ lwzx r8, r12, r9 +/* 80167F6C 00164ECC 7C E0 00 30 */ slw r0, r7, r0 +/* 80167F70 00164ED0 3B FF 00 01 */ addi r31, r31, 1 +/* 80167F74 00164ED4 7D 00 03 78 */ or r0, r8, r0 +/* 80167F78 00164ED8 54 84 28 3E */ rotlwi r4, r4, 5 +/* 80167F7C 00164EDC 7C 0C 49 2E */ stwx r0, r12, r9 +/* 80167F80 00164EE0 7C 04 2A 14 */ add r0, r4, r5 +/* 80167F84 00164EE4 55 49 10 3A */ slwi r9, r10, 2 +/* 80167F88 00164EE8 7F EB 2E 70 */ srawi r11, r31, 5 +/* 80167F8C 00164EEC 81 9E 00 10 */ lwz r12, 0x10(r30) +/* 80167F90 00164EF0 7C E0 00 30 */ slw r0, r7, r0 +/* 80167F94 00164EF4 57 E6 D8 08 */ slwi r6, r31, 0x1b +/* 80167F98 00164EF8 57 E5 0F FE */ srwi r5, r31, 0x1f +/* 80167F9C 00164EFC 7D 0C 48 2E */ lwzx r8, r12, r9 +/* 80167FA0 00164F00 7C 85 30 50 */ subf r4, r5, r6 +/* 80167FA4 00164F04 7D 4B 01 94 */ addze r10, r11 +/* 80167FA8 00164F08 3B FF 00 01 */ addi r31, r31, 1 +/* 80167FAC 00164F0C 7D 00 03 78 */ or r0, r8, r0 +/* 80167FB0 00164F10 54 84 28 3E */ rotlwi r4, r4, 5 +/* 80167FB4 00164F14 7C 0C 49 2E */ stwx r0, r12, r9 +/* 80167FB8 00164F18 7C 04 2A 14 */ add r0, r4, r5 +/* 80167FBC 00164F1C 55 49 10 3A */ slwi r9, r10, 2 +/* 80167FC0 00164F20 81 9E 00 10 */ lwz r12, 0x10(r30) +/* 80167FC4 00164F24 7C E0 00 30 */ slw r0, r7, r0 +/* 80167FC8 00164F28 7D 0C 48 2E */ lwzx r8, r12, r9 +/* 80167FCC 00164F2C 7D 00 03 78 */ or r0, r8, r0 +/* 80167FD0 00164F30 7C 0C 49 2E */ stwx r0, r12, r9 +/* 80167FD4 00164F34 42 00 FF 1C */ bdnz lbl_80167EF0 +/* 80167FD8 00164F38 70 63 00 03 */ andi. r3, r3, 3 +/* 80167FDC 00164F3C 41 82 01 9C */ beq lbl_80168178 +lbl_80167FE0: +/* 80167FE0 00164F40 7C 69 03 A6 */ mtctr r3 +/* 80167FE4 00164F44 38 E0 00 01 */ li r7, 1 +lbl_80167FE8: +/* 80167FE8 00164F48 7F E0 FB 78 */ mr r0, r31 +/* 80167FEC 00164F4C 57 E6 D8 08 */ slwi r6, r31, 0x1b +/* 80167FF0 00164F50 57 E5 0F FE */ srwi r5, r31, 0x1f +/* 80167FF4 00164F54 81 9E 00 10 */ lwz r12, 0x10(r30) +/* 80167FF8 00164F58 7C 0B 2E 70 */ srawi r11, r0, 5 +/* 80167FFC 00164F5C 3B FF 00 01 */ addi r31, r31, 1 +/* 80168000 00164F60 7D 4B 01 94 */ addze r10, r11 +/* 80168004 00164F64 7C 85 30 50 */ subf r4, r5, r6 +/* 80168008 00164F68 55 49 10 3A */ slwi r9, r10, 2 +/* 8016800C 00164F6C 54 84 28 3E */ rotlwi r4, r4, 5 +/* 80168010 00164F70 7D 0C 48 2E */ lwzx r8, r12, r9 +/* 80168014 00164F74 7C 04 2A 14 */ add r0, r4, r5 +/* 80168018 00164F78 7C E0 00 30 */ slw r0, r7, r0 +/* 8016801C 00164F7C 7D 00 03 78 */ or r0, r8, r0 +/* 80168020 00164F80 7C 0C 49 2E */ stwx r0, r12, r9 +/* 80168024 00164F84 42 00 FF C4 */ bdnz lbl_80167FE8 +/* 80168028 00164F88 48 00 01 50 */ b lbl_80168178 +lbl_8016802C: +/* 8016802C 00164F8C 2C 1C 00 00 */ cmpwi r28, 0 +/* 80168030 00164F90 7F 83 E3 78 */ mr r3, r28 +/* 80168034 00164F94 40 81 01 44 */ ble lbl_80168178 +/* 80168038 00164F98 57 80 F0 BF */ rlwinm. r0, r28, 0x1e, 2, 0x1f +/* 8016803C 00164F9C 7C 09 03 A6 */ mtctr r0 +/* 80168040 00164FA0 41 82 00 F4 */ beq lbl_80168134 +lbl_80168044: +/* 80168044 00164FA4 7F EB 2E 70 */ srawi r11, r31, 5 +/* 80168048 00164FA8 57 E6 D8 08 */ slwi r6, r31, 0x1b +/* 8016804C 00164FAC 57 E5 0F FE */ srwi r5, r31, 0x1f +/* 80168050 00164FB0 81 9E 00 10 */ lwz r12, 0x10(r30) +/* 80168054 00164FB4 7D 4B 01 94 */ addze r10, r11 +/* 80168058 00164FB8 3B FF 00 01 */ addi r31, r31, 1 +/* 8016805C 00164FBC 7C 85 30 50 */ subf r4, r5, r6 +/* 80168060 00164FC0 38 E0 00 01 */ li r7, 1 +/* 80168064 00164FC4 55 49 10 3A */ slwi r9, r10, 2 +/* 80168068 00164FC8 7F EB 2E 70 */ srawi r11, r31, 5 +/* 8016806C 00164FCC 54 84 28 3E */ rotlwi r4, r4, 5 +/* 80168070 00164FD0 7D 0C 48 2E */ lwzx r8, r12, r9 +/* 80168074 00164FD4 7C 04 2A 14 */ add r0, r4, r5 +/* 80168078 00164FD8 57 E6 D8 08 */ slwi r6, r31, 0x1b +/* 8016807C 00164FDC 57 E5 0F FE */ srwi r5, r31, 0x1f +/* 80168080 00164FE0 7D 4B 01 94 */ addze r10, r11 +/* 80168084 00164FE4 7C E0 00 30 */ slw r0, r7, r0 +/* 80168088 00164FE8 3B FF 00 01 */ addi r31, r31, 1 +/* 8016808C 00164FEC 7C 85 30 50 */ subf r4, r5, r6 +/* 80168090 00164FF0 7D 00 00 78 */ andc r0, r8, r0 +/* 80168094 00164FF4 7F EB 2E 70 */ srawi r11, r31, 5 +/* 80168098 00164FF8 7C 0C 49 2E */ stwx r0, r12, r9 +/* 8016809C 00164FFC 55 49 10 3A */ slwi r9, r10, 2 +/* 801680A0 00165000 54 84 28 3E */ rotlwi r4, r4, 5 +/* 801680A4 00165004 57 E6 D8 08 */ slwi r6, r31, 0x1b +/* 801680A8 00165008 7C 04 2A 14 */ add r0, r4, r5 +/* 801680AC 0016500C 81 9E 00 10 */ lwz r12, 0x10(r30) +/* 801680B0 00165010 57 E5 0F FE */ srwi r5, r31, 0x1f +/* 801680B4 00165014 7D 4B 01 94 */ addze r10, r11 +/* 801680B8 00165018 7C 85 30 50 */ subf r4, r5, r6 +/* 801680BC 0016501C 7D 0C 48 2E */ lwzx r8, r12, r9 +/* 801680C0 00165020 7C E0 00 30 */ slw r0, r7, r0 +/* 801680C4 00165024 3B FF 00 01 */ addi r31, r31, 1 +/* 801680C8 00165028 7D 00 00 78 */ andc r0, r8, r0 +/* 801680CC 0016502C 54 84 28 3E */ rotlwi r4, r4, 5 +/* 801680D0 00165030 7C 0C 49 2E */ stwx r0, r12, r9 +/* 801680D4 00165034 7C 04 2A 14 */ add r0, r4, r5 +/* 801680D8 00165038 55 49 10 3A */ slwi r9, r10, 2 +/* 801680DC 0016503C 7F EB 2E 70 */ srawi r11, r31, 5 +/* 801680E0 00165040 81 9E 00 10 */ lwz r12, 0x10(r30) +/* 801680E4 00165044 7C E0 00 30 */ slw r0, r7, r0 +/* 801680E8 00165048 57 E6 D8 08 */ slwi r6, r31, 0x1b +/* 801680EC 0016504C 57 E5 0F FE */ srwi r5, r31, 0x1f +/* 801680F0 00165050 7D 0C 48 2E */ lwzx r8, r12, r9 +/* 801680F4 00165054 7C 85 30 50 */ subf r4, r5, r6 +/* 801680F8 00165058 7D 4B 01 94 */ addze r10, r11 +/* 801680FC 0016505C 3B FF 00 01 */ addi r31, r31, 1 +/* 80168100 00165060 7D 00 00 78 */ andc r0, r8, r0 +/* 80168104 00165064 54 84 28 3E */ rotlwi r4, r4, 5 +/* 80168108 00165068 7C 0C 49 2E */ stwx r0, r12, r9 +/* 8016810C 0016506C 7C 04 2A 14 */ add r0, r4, r5 +/* 80168110 00165070 55 49 10 3A */ slwi r9, r10, 2 +/* 80168114 00165074 81 9E 00 10 */ lwz r12, 0x10(r30) +/* 80168118 00165078 7C E0 00 30 */ slw r0, r7, r0 +/* 8016811C 0016507C 7D 0C 48 2E */ lwzx r8, r12, r9 +/* 80168120 00165080 7D 00 00 78 */ andc r0, r8, r0 +/* 80168124 00165084 7C 0C 49 2E */ stwx r0, r12, r9 +/* 80168128 00165088 42 00 FF 1C */ bdnz lbl_80168044 +/* 8016812C 0016508C 70 63 00 03 */ andi. r3, r3, 3 +/* 80168130 00165090 41 82 00 48 */ beq lbl_80168178 +lbl_80168134: +/* 80168134 00165094 7C 69 03 A6 */ mtctr r3 +/* 80168138 00165098 38 E0 00 01 */ li r7, 1 +lbl_8016813C: +/* 8016813C 0016509C 7F EB 2E 70 */ srawi r11, r31, 5 +/* 80168140 001650A0 57 E6 D8 08 */ slwi r6, r31, 0x1b +/* 80168144 001650A4 57 E5 0F FE */ srwi r5, r31, 0x1f +/* 80168148 001650A8 81 9E 00 10 */ lwz r12, 0x10(r30) +/* 8016814C 001650AC 7D 4B 01 94 */ addze r10, r11 +/* 80168150 001650B0 3B FF 00 01 */ addi r31, r31, 1 +/* 80168154 001650B4 7C 85 30 50 */ subf r4, r5, r6 +/* 80168158 001650B8 55 49 10 3A */ slwi r9, r10, 2 +/* 8016815C 001650BC 54 84 28 3E */ rotlwi r4, r4, 5 +/* 80168160 001650C0 7D 0C 48 2E */ lwzx r8, r12, r9 +/* 80168164 001650C4 7C 04 2A 14 */ add r0, r4, r5 +/* 80168168 001650C8 7C E0 00 30 */ slw r0, r7, r0 +/* 8016816C 001650CC 7D 00 00 78 */ andc r0, r8, r0 +/* 80168170 001650D0 7C 0C 49 2E */ stwx r0, r12, r9 +/* 80168174 001650D4 42 00 FF C8 */ bdnz lbl_8016813C +lbl_80168178: +/* 80168178 001650D8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8016817C 001650DC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80168180 001650E0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80168184 001650E4 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80168188 001650E8 83 81 00 10 */ lwz r28, 0x10(r1) +/* 8016818C 001650EC 7C 08 03 A6 */ mtlr r0 +/* 80168190 001650F0 38 21 00 20 */ addi r1, r1, 0x20 +/* 80168194 001650F4 4E 80 00 20 */ blr + +.global sub_80168198 +sub_80168198: +/* 80168198 001650F8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8016819C 001650FC 7C 08 02 A6 */ mflr r0 +/* 801681A0 00165100 90 01 00 24 */ stw r0, 0x24(r1) +/* 801681A4 00165104 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801681A8 00165108 7C BF 2B 78 */ mr r31, r5 +/* 801681AC 0016510C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801681B0 00165110 7C 9E 23 78 */ mr r30, r4 +/* 801681B4 00165114 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801681B8 00165118 7C 7D 1B 78 */ mr r29, r3 +/* 801681BC 0016511C 93 81 00 10 */ stw r28, 0x10(r1) +/* 801681C0 00165120 80 03 00 08 */ lwz r0, 8(r3) +/* 801681C4 00165124 80 63 00 00 */ lwz r3, 0(r3) +/* 801681C8 00165128 54 00 28 34 */ slwi r0, r0, 5 +/* 801681CC 0016512C 7F 83 00 50 */ subf r28, r3, r0 +/* 801681D0 00165130 48 00 00 58 */ b lbl_80168228 +lbl_801681D4: +/* 801681D4 00165134 80 1D 00 08 */ lwz r0, 8(r29) +/* 801681D8 00165138 80 BD 00 0C */ lwz r5, 0xc(r29) +/* 801681DC 0016513C 7C 00 28 00 */ cmpw r0, r5 +/* 801681E0 00165140 41 80 00 1C */ blt lbl_801681FC +/* 801681E4 00165144 2C 05 00 00 */ cmpwi r5, 0 +/* 801681E8 00165148 38 7D 00 04 */ addi r3, r29, 4 +/* 801681EC 0016514C 38 80 00 04 */ li r4, 4 +/* 801681F0 00165150 41 82 00 08 */ beq lbl_801681F8 +/* 801681F4 00165154 54 A4 08 3C */ slwi r4, r5, 1 +lbl_801681F8: +/* 801681F8 00165158 4B EF B9 2D */ bl "reserve__Q24rstl37vectorFi" +lbl_801681FC: +/* 801681FC 0016515C 80 1D 00 08 */ lwz r0, 8(r29) +/* 80168200 00165160 80 7D 00 10 */ lwz r3, 0x10(r29) +/* 80168204 00165164 54 00 10 3A */ slwi r0, r0, 2 +/* 80168208 00165168 7C 63 02 15 */ add. r3, r3, r0 +/* 8016820C 0016516C 41 82 00 0C */ beq lbl_80168218 +/* 80168210 00165170 80 0D 8D 8C */ lwz r0, lbl_805A794C@sda21(r13) +/* 80168214 00165174 90 03 00 00 */ stw r0, 0(r3) +lbl_80168218: +/* 80168218 00165178 80 7D 00 08 */ lwz r3, 8(r29) +/* 8016821C 0016517C 3B 9C 00 20 */ addi r28, r28, 0x20 +/* 80168220 00165180 38 03 00 01 */ addi r0, r3, 1 +/* 80168224 00165184 90 1D 00 08 */ stw r0, 8(r29) +lbl_80168228: +/* 80168228 00165188 7C 1C F8 00 */ cmpw r28, r31 +/* 8016822C 0016518C 41 80 FF A8 */ blt lbl_801681D4 +/* 80168230 00165190 80 7D 00 00 */ lwz r3, 0(r29) +/* 80168234 00165194 38 83 FF FF */ addi r4, r3, -1 +/* 80168238 00165198 38 04 00 01 */ addi r0, r4, 1 +/* 8016823C 0016519C 7C 1E 00 50 */ subf r0, r30, r0 +/* 80168240 001651A0 7C 09 03 A6 */ mtctr r0 +/* 80168244 001651A4 7C 04 F0 00 */ cmpw r4, r30 +/* 80168248 001651A8 41 80 00 B0 */ blt lbl_801682F8 +lbl_8016824C: +/* 8016824C 001651AC 7C 86 2E 70 */ srawi r6, r4, 5 +/* 80168250 001651B0 54 80 D8 08 */ slwi r0, r4, 0x1b +/* 80168254 001651B4 54 85 0F FE */ srwi r5, r4, 0x1f +/* 80168258 001651B8 80 7D 00 10 */ lwz r3, 0x10(r29) +/* 8016825C 001651BC 7C C6 01 94 */ addze r6, r6 +/* 80168260 001651C0 39 00 00 01 */ li r8, 1 +/* 80168264 001651C4 7C 05 00 50 */ subf r0, r5, r0 +/* 80168268 001651C8 54 C6 10 3A */ slwi r6, r6, 2 +/* 8016826C 001651CC 54 00 28 3E */ rotlwi r0, r0, 5 +/* 80168270 001651D0 7C C3 30 2E */ lwzx r6, r3, r6 +/* 80168274 001651D4 7C 00 2A 14 */ add r0, r0, r5 +/* 80168278 001651D8 7D 00 00 30 */ slw r0, r8, r0 +/* 8016827C 001651DC 7C C0 00 39 */ and. r0, r6, r0 +/* 80168280 001651E0 41 82 00 3C */ beq lbl_801682BC +/* 80168284 001651E4 7C A4 FA 14 */ add r5, r4, r31 +/* 80168288 001651E8 7C A0 2E 70 */ srawi r0, r5, 5 +/* 8016828C 001651EC 7C C0 01 94 */ addze r6, r0 +/* 80168290 001651F0 54 A0 D8 08 */ slwi r0, r5, 0x1b +/* 80168294 001651F4 54 A5 0F FE */ srwi r5, r5, 0x1f +/* 80168298 001651F8 7C 05 00 50 */ subf r0, r5, r0 +/* 8016829C 001651FC 54 C7 10 3A */ slwi r7, r6, 2 +/* 801682A0 00165200 54 00 28 3E */ rotlwi r0, r0, 5 +/* 801682A4 00165204 7C C3 38 2E */ lwzx r6, r3, r7 +/* 801682A8 00165208 7C 00 2A 14 */ add r0, r0, r5 +/* 801682AC 0016520C 7D 00 00 30 */ slw r0, r8, r0 +/* 801682B0 00165210 7C C0 03 78 */ or r0, r6, r0 +/* 801682B4 00165214 7C 03 39 2E */ stwx r0, r3, r7 +/* 801682B8 00165218 48 00 00 38 */ b lbl_801682F0 +lbl_801682BC: +/* 801682BC 0016521C 7C A4 FA 14 */ add r5, r4, r31 +/* 801682C0 00165220 7C A0 2E 70 */ srawi r0, r5, 5 +/* 801682C4 00165224 7C C0 01 94 */ addze r6, r0 +/* 801682C8 00165228 54 A0 D8 08 */ slwi r0, r5, 0x1b +/* 801682CC 0016522C 54 A5 0F FE */ srwi r5, r5, 0x1f +/* 801682D0 00165230 7C 05 00 50 */ subf r0, r5, r0 +/* 801682D4 00165234 54 C7 10 3A */ slwi r7, r6, 2 +/* 801682D8 00165238 54 00 28 3E */ rotlwi r0, r0, 5 +/* 801682DC 0016523C 7C C3 38 2E */ lwzx r6, r3, r7 +/* 801682E0 00165240 7C 00 2A 14 */ add r0, r0, r5 +/* 801682E4 00165244 7D 00 00 30 */ slw r0, r8, r0 +/* 801682E8 00165248 7C C0 00 78 */ andc r0, r6, r0 +/* 801682EC 0016524C 7C 03 39 2E */ stwx r0, r3, r7 +lbl_801682F0: +/* 801682F0 00165250 38 84 FF FF */ addi r4, r4, -1 +/* 801682F4 00165254 42 00 FF 58 */ bdnz lbl_8016824C +lbl_801682F8: +/* 801682F8 00165258 80 1D 00 00 */ lwz r0, 0(r29) +/* 801682FC 0016525C 7C 00 FA 14 */ add r0, r0, r31 +/* 80168300 00165260 90 1D 00 00 */ stw r0, 0(r29) +/* 80168304 00165264 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80168308 00165268 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8016830C 0016526C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80168310 00165270 83 81 00 10 */ lwz r28, 0x10(r1) +/* 80168314 00165274 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80168318 00165278 7C 08 03 A6 */ mtlr r0 +/* 8016831C 0016527C 38 21 00 20 */ addi r1, r1, 0x20 +/* 80168320 00165280 4E 80 00 20 */ blr + +.global IsMapped__13CMapWorldInfoCF7TAreaId +IsMapped__13CMapWorldInfoCF7TAreaId: +/* 80168324 00165284 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80168328 00165288 7C 08 02 A6 */ mflr r0 +/* 8016832C 0016528C 90 01 00 54 */ stw r0, 0x54(r1) +/* 80168330 00165290 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80168334 00165294 7C 9F 23 78 */ mr r31, r4 +/* 80168338 00165298 93 C1 00 48 */ stw r30, 0x48(r1) +/* 8016833C 0016529C 7C 7E 1B 78 */ mr r30, r3 +/* 80168340 001652A0 80 64 00 00 */ lwz r3, 0(r4) +/* 80168344 001652A4 80 1E 00 14 */ lwz r0, 0x14(r30) +/* 80168348 001652A8 38 63 00 01 */ addi r3, r3, 1 +/* 8016834C 001652AC 7C 03 00 00 */ cmpw r3, r0 +/* 80168350 001652B0 40 81 00 80 */ ble lbl_801683D0 +/* 80168354 001652B4 54 60 D8 08 */ slwi r0, r3, 0x1b +/* 80168358 001652B8 54 64 0F FE */ srwi r4, r3, 0x1f +/* 8016835C 001652BC 7C 04 00 50 */ subf r0, r4, r0 +/* 80168360 001652C0 7C 65 2E 70 */ srawi r5, r3, 5 +/* 80168364 001652C4 54 00 28 3E */ rotlwi r0, r0, 5 +/* 80168368 001652C8 38 7E 00 18 */ addi r3, r30, 0x18 +/* 8016836C 001652CC 7C 80 22 14 */ add r4, r0, r4 +/* 80168370 001652D0 7C A5 01 94 */ addze r5, r5 +/* 80168374 001652D4 7C 04 00 D0 */ neg r0, r4 +/* 80168378 001652D8 7C 00 23 78 */ or r0, r0, r4 +/* 8016837C 001652DC 54 00 0F FE */ srwi r0, r0, 0x1f +/* 80168380 001652E0 7C 85 02 14 */ add r4, r5, r0 +/* 80168384 001652E4 4B EF B7 A1 */ bl "reserve__Q24rstl37vectorFi" +/* 80168388 001652E8 80 1E 00 24 */ lwz r0, 0x24(r30) +/* 8016838C 001652EC 38 7E 00 14 */ addi r3, r30, 0x14 +/* 80168390 001652F0 80 FE 00 14 */ lwz r7, 0x14(r30) +/* 80168394 001652F4 38 81 00 30 */ addi r4, r1, 0x30 +/* 80168398 001652F8 80 BF 00 00 */ lwz r5, 0(r31) +/* 8016839C 001652FC 38 C0 00 00 */ li r6, 0 +/* 801683A0 00165300 90 01 00 18 */ stw r0, 0x18(r1) +/* 801683A4 00165304 7C A7 28 50 */ subf r5, r7, r5 +/* 801683A8 00165308 90 01 00 14 */ stw r0, 0x14(r1) +/* 801683AC 0016530C 38 A5 00 01 */ addi r5, r5, 1 +/* 801683B0 00165310 90 01 00 10 */ stw r0, 0x10(r1) +/* 801683B4 00165314 90 01 00 24 */ stw r0, 0x24(r1) +/* 801683B8 00165318 90 E1 00 28 */ stw r7, 0x28(r1) +/* 801683BC 0016531C 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801683C0 00165320 90 01 00 30 */ stw r0, 0x30(r1) +/* 801683C4 00165324 90 E1 00 34 */ stw r7, 0x34(r1) +/* 801683C8 00165328 90 01 00 38 */ stw r0, 0x38(r1) +/* 801683CC 0016532C 4B FF FA D1 */ bl sub_80167e9c +lbl_801683D0: +/* 801683D0 00165330 80 9F 00 00 */ lwz r4, 0(r31) +/* 801683D4 00165334 38 A0 00 01 */ li r5, 1 +/* 801683D8 00165338 80 DE 00 24 */ lwz r6, 0x24(r30) +/* 801683DC 0016533C 7C 83 2E 70 */ srawi r3, r4, 5 +/* 801683E0 00165340 54 80 D8 08 */ slwi r0, r4, 0x1b +/* 801683E4 00165344 7C 63 01 94 */ addze r3, r3 +/* 801683E8 00165348 54 84 0F FE */ srwi r4, r4, 0x1f +/* 801683EC 0016534C 54 63 10 3A */ slwi r3, r3, 2 +/* 801683F0 00165350 7C C6 1A 14 */ add r6, r6, r3 +/* 801683F4 00165354 7C 04 00 50 */ subf r0, r4, r0 +/* 801683F8 00165358 54 03 28 3E */ rotlwi r3, r0, 5 +/* 801683FC 0016535C 80 06 00 00 */ lwz r0, 0(r6) +/* 80168400 00165360 7C 63 22 14 */ add r3, r3, r4 +/* 80168404 00165364 90 C1 00 0C */ stw r6, 0xc(r1) +/* 80168408 00165368 7C A4 18 30 */ slw r4, r5, r3 +/* 8016840C 0016536C 7C 83 00 38 */ and r3, r4, r0 +/* 80168410 00165370 90 C1 00 08 */ stw r6, 8(r1) +/* 80168414 00165374 7C 03 00 D0 */ neg r0, r3 +/* 80168418 00165378 7C 00 1B 78 */ or r0, r0, r3 +/* 8016841C 0016537C 90 C1 00 1C */ stw r6, 0x1c(r1) +/* 80168420 00165380 54 03 0F FE */ srwi r3, r0, 0x1f +/* 80168424 00165384 90 81 00 20 */ stw r4, 0x20(r1) +/* 80168428 00165388 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 8016842C 0016538C 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 80168430 00165390 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80168434 00165394 7C 08 03 A6 */ mtlr r0 +/* 80168438 00165398 38 21 00 50 */ addi r1, r1, 0x50 +/* 8016843C 0016539C 4E 80 00 20 */ blr + +.global IsWorldVisible__13CMapWorldInfoCF7TAreaId +IsWorldVisible__13CMapWorldInfoCF7TAreaId: +/* 80168440 001653A0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80168444 001653A4 7C 08 02 A6 */ mflr r0 +/* 80168448 001653A8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8016844C 001653AC 88 03 00 38 */ lbz r0, 0x38(r3) +/* 80168450 001653B0 28 00 00 00 */ cmplwi r0, 0 +/* 80168454 001653B4 41 82 00 0C */ beq lbl_80168460 +/* 80168458 001653B8 38 60 00 01 */ li r3, 1 +/* 8016845C 001653BC 48 00 00 14 */ b lbl_80168470 +lbl_80168460: +/* 80168460 001653C0 80 04 00 00 */ lwz r0, 0(r4) +/* 80168464 001653C4 38 81 00 08 */ addi r4, r1, 8 +/* 80168468 001653C8 90 01 00 08 */ stw r0, 8(r1) +/* 8016846C 001653CC 4B FF FE B9 */ bl IsMapped__13CMapWorldInfoCF7TAreaId +lbl_80168470: +/* 80168470 001653D0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80168474 001653D4 7C 08 03 A6 */ mtlr r0 +/* 80168478 001653D8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8016847C 001653DC 4E 80 00 20 */ blr + +.global SetIsMapped__13CMapWorldInfoCF7TAreaId +SetIsMapped__13CMapWorldInfoCF7TAreaId: +/* 80168480 001653E0 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80168484 001653E4 7C 08 02 A6 */ mflr r0 +/* 80168488 001653E8 90 01 00 54 */ stw r0, 0x54(r1) +/* 8016848C 001653EC 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80168490 001653F0 7C BF 2B 78 */ mr r31, r5 +/* 80168494 001653F4 93 C1 00 48 */ stw r30, 0x48(r1) +/* 80168498 001653F8 7C 9E 23 78 */ mr r30, r4 +/* 8016849C 001653FC 93 A1 00 44 */ stw r29, 0x44(r1) +/* 801684A0 00165400 7C 7D 1B 78 */ mr r29, r3 +/* 801684A4 00165404 80 64 00 00 */ lwz r3, 0(r4) +/* 801684A8 00165408 80 1D 00 14 */ lwz r0, 0x14(r29) +/* 801684AC 0016540C 38 63 00 01 */ addi r3, r3, 1 +/* 801684B0 00165410 7C 03 00 00 */ cmpw r3, r0 +/* 801684B4 00165414 40 81 00 80 */ ble lbl_80168534 +/* 801684B8 00165418 54 60 D8 08 */ slwi r0, r3, 0x1b +/* 801684BC 0016541C 54 64 0F FE */ srwi r4, r3, 0x1f +/* 801684C0 00165420 7C 04 00 50 */ subf r0, r4, r0 +/* 801684C4 00165424 7C 65 2E 70 */ srawi r5, r3, 5 +/* 801684C8 00165428 54 00 28 3E */ rotlwi r0, r0, 5 +/* 801684CC 0016542C 38 7D 00 18 */ addi r3, r29, 0x18 +/* 801684D0 00165430 7C 80 22 14 */ add r4, r0, r4 +/* 801684D4 00165434 7C A5 01 94 */ addze r5, r5 +/* 801684D8 00165438 7C 04 00 D0 */ neg r0, r4 +/* 801684DC 0016543C 7C 00 23 78 */ or r0, r0, r4 +/* 801684E0 00165440 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801684E4 00165444 7C 85 02 14 */ add r4, r5, r0 +/* 801684E8 00165448 4B EF B6 3D */ bl "reserve__Q24rstl37vectorFi" +/* 801684EC 0016544C 80 1D 00 24 */ lwz r0, 0x24(r29) +/* 801684F0 00165450 38 7D 00 14 */ addi r3, r29, 0x14 +/* 801684F4 00165454 80 FD 00 14 */ lwz r7, 0x14(r29) +/* 801684F8 00165458 38 81 00 30 */ addi r4, r1, 0x30 +/* 801684FC 0016545C 80 BE 00 00 */ lwz r5, 0(r30) +/* 80168500 00165460 38 C0 00 00 */ li r6, 0 +/* 80168504 00165464 90 01 00 18 */ stw r0, 0x18(r1) +/* 80168508 00165468 7C A7 28 50 */ subf r5, r7, r5 +/* 8016850C 0016546C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80168510 00165470 38 A5 00 01 */ addi r5, r5, 1 +/* 80168514 00165474 90 01 00 10 */ stw r0, 0x10(r1) +/* 80168518 00165478 90 01 00 24 */ stw r0, 0x24(r1) +/* 8016851C 0016547C 90 E1 00 28 */ stw r7, 0x28(r1) +/* 80168520 00165480 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80168524 00165484 90 01 00 30 */ stw r0, 0x30(r1) +/* 80168528 00165488 90 E1 00 34 */ stw r7, 0x34(r1) +/* 8016852C 0016548C 90 01 00 38 */ stw r0, 0x38(r1) +/* 80168530 00165490 4B FF F9 6D */ bl sub_80167e9c +lbl_80168534: +/* 80168534 00165494 80 DE 00 00 */ lwz r6, 0(r30) +/* 80168538 00165498 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 8016853C 0016549C 80 FD 00 24 */ lwz r7, 0x24(r29) +/* 80168540 001654A0 38 A0 00 01 */ li r5, 1 +/* 80168544 001654A4 54 C4 D8 08 */ slwi r4, r6, 0x1b +/* 80168548 001654A8 54 C3 0F FE */ srwi r3, r6, 0x1f +/* 8016854C 001654AC 7C 03 20 50 */ subf r0, r3, r4 +/* 80168550 001654B0 7C C6 2E 70 */ srawi r6, r6, 5 +/* 80168554 001654B4 7C 86 01 94 */ addze r4, r6 +/* 80168558 001654B8 54 00 28 3E */ rotlwi r0, r0, 5 +/* 8016855C 001654BC 54 84 10 3A */ slwi r4, r4, 2 +/* 80168560 001654C0 7C E7 22 14 */ add r7, r7, r4 +/* 80168564 001654C4 7C 00 1A 14 */ add r0, r0, r3 +/* 80168568 001654C8 7C A4 00 30 */ slw r4, r5, r0 +/* 8016856C 001654CC 90 E1 00 0C */ stw r7, 0xc(r1) +/* 80168570 001654D0 90 E1 00 08 */ stw r7, 8(r1) +/* 80168574 001654D4 90 E1 00 1C */ stw r7, 0x1c(r1) +/* 80168578 001654D8 90 81 00 20 */ stw r4, 0x20(r1) +/* 8016857C 001654DC 41 82 00 14 */ beq lbl_80168590 +/* 80168580 001654E0 80 07 00 00 */ lwz r0, 0(r7) +/* 80168584 001654E4 7C 00 23 78 */ or r0, r0, r4 +/* 80168588 001654E8 90 07 00 00 */ stw r0, 0(r7) +/* 8016858C 001654EC 48 00 00 10 */ b lbl_8016859C +lbl_80168590: +/* 80168590 001654F0 80 67 00 00 */ lwz r3, 0(r7) +/* 80168594 001654F4 7C 60 20 78 */ andc r0, r3, r4 +/* 80168598 001654F8 90 07 00 00 */ stw r0, 0(r7) +lbl_8016859C: +/* 8016859C 001654FC 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801685A0 00165500 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801685A4 00165504 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801685A8 00165508 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 801685AC 0016550C 7C 08 03 A6 */ mtlr r0 +/* 801685B0 00165510 38 21 00 50 */ addi r1, r1, 0x50 +/* 801685B4 00165514 4E 80 00 20 */ blr + +.global SetAreaVisited__13CMapWorldInfoF7TAreaIdb +SetAreaVisited__13CMapWorldInfoF7TAreaIdb: +/* 801685B8 00165518 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801685BC 0016551C 7C 08 02 A6 */ mflr r0 +/* 801685C0 00165520 90 01 00 54 */ stw r0, 0x54(r1) +/* 801685C4 00165524 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801685C8 00165528 7C BF 2B 78 */ mr r31, r5 +/* 801685CC 0016552C 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801685D0 00165530 7C 9E 23 78 */ mr r30, r4 +/* 801685D4 00165534 93 A1 00 44 */ stw r29, 0x44(r1) +/* 801685D8 00165538 7C 7D 1B 78 */ mr r29, r3 +/* 801685DC 0016553C 80 64 00 00 */ lwz r3, 0(r4) +/* 801685E0 00165540 80 1D 00 00 */ lwz r0, 0(r29) +/* 801685E4 00165544 38 63 00 01 */ addi r3, r3, 1 +/* 801685E8 00165548 7C 03 00 00 */ cmpw r3, r0 +/* 801685EC 0016554C 40 81 00 80 */ ble lbl_8016866C +/* 801685F0 00165550 54 60 D8 08 */ slwi r0, r3, 0x1b +/* 801685F4 00165554 54 64 0F FE */ srwi r4, r3, 0x1f +/* 801685F8 00165558 7C 04 00 50 */ subf r0, r4, r0 +/* 801685FC 0016555C 7C 65 2E 70 */ srawi r5, r3, 5 +/* 80168600 00165560 54 00 28 3E */ rotlwi r0, r0, 5 +/* 80168604 00165564 38 7D 00 04 */ addi r3, r29, 4 +/* 80168608 00165568 7C 80 22 14 */ add r4, r0, r4 +/* 8016860C 0016556C 7C A5 01 94 */ addze r5, r5 +/* 80168610 00165570 7C 04 00 D0 */ neg r0, r4 +/* 80168614 00165574 7C 00 23 78 */ or r0, r0, r4 +/* 80168618 00165578 54 00 0F FE */ srwi r0, r0, 0x1f +/* 8016861C 0016557C 7C 85 02 14 */ add r4, r5, r0 +/* 80168620 00165580 4B EF B5 05 */ bl "reserve__Q24rstl37vectorFi" +/* 80168624 00165584 80 1D 00 10 */ lwz r0, 0x10(r29) +/* 80168628 00165588 7F A3 EB 78 */ mr r3, r29 +/* 8016862C 0016558C 80 FD 00 00 */ lwz r7, 0(r29) +/* 80168630 00165590 38 81 00 30 */ addi r4, r1, 0x30 +/* 80168634 00165594 80 BE 00 00 */ lwz r5, 0(r30) +/* 80168638 00165598 38 C0 00 00 */ li r6, 0 +/* 8016863C 0016559C 90 01 00 18 */ stw r0, 0x18(r1) +/* 80168640 001655A0 7C A7 28 50 */ subf r5, r7, r5 +/* 80168644 001655A4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80168648 001655A8 38 A5 00 01 */ addi r5, r5, 1 +/* 8016864C 001655AC 90 01 00 10 */ stw r0, 0x10(r1) +/* 80168650 001655B0 90 01 00 24 */ stw r0, 0x24(r1) +/* 80168654 001655B4 90 E1 00 28 */ stw r7, 0x28(r1) +/* 80168658 001655B8 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8016865C 001655BC 90 01 00 30 */ stw r0, 0x30(r1) +/* 80168660 001655C0 90 E1 00 34 */ stw r7, 0x34(r1) +/* 80168664 001655C4 90 01 00 38 */ stw r0, 0x38(r1) +/* 80168668 001655C8 4B FF F8 35 */ bl sub_80167e9c +lbl_8016866C: +/* 8016866C 001655CC 80 DE 00 00 */ lwz r6, 0(r30) +/* 80168670 001655D0 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80168674 001655D4 80 FD 00 10 */ lwz r7, 0x10(r29) +/* 80168678 001655D8 38 A0 00 01 */ li r5, 1 +/* 8016867C 001655DC 54 C4 D8 08 */ slwi r4, r6, 0x1b +/* 80168680 001655E0 54 C3 0F FE */ srwi r3, r6, 0x1f +/* 80168684 001655E4 7C 03 20 50 */ subf r0, r3, r4 +/* 80168688 001655E8 7C C6 2E 70 */ srawi r6, r6, 5 +/* 8016868C 001655EC 7C 86 01 94 */ addze r4, r6 +/* 80168690 001655F0 54 00 28 3E */ rotlwi r0, r0, 5 +/* 80168694 001655F4 54 84 10 3A */ slwi r4, r4, 2 +/* 80168698 001655F8 7C E7 22 14 */ add r7, r7, r4 +/* 8016869C 001655FC 7C 00 1A 14 */ add r0, r0, r3 +/* 801686A0 00165600 7C A4 00 30 */ slw r4, r5, r0 +/* 801686A4 00165604 90 E1 00 0C */ stw r7, 0xc(r1) +/* 801686A8 00165608 90 E1 00 08 */ stw r7, 8(r1) +/* 801686AC 0016560C 90 E1 00 1C */ stw r7, 0x1c(r1) +/* 801686B0 00165610 90 81 00 20 */ stw r4, 0x20(r1) +/* 801686B4 00165614 41 82 00 14 */ beq lbl_801686C8 +/* 801686B8 00165618 80 07 00 00 */ lwz r0, 0(r7) +/* 801686BC 0016561C 7C 00 23 78 */ or r0, r0, r4 +/* 801686C0 00165620 90 07 00 00 */ stw r0, 0(r7) +/* 801686C4 00165624 48 00 00 10 */ b lbl_801686D4 +lbl_801686C8: +/* 801686C8 00165628 80 67 00 00 */ lwz r3, 0(r7) +/* 801686CC 0016562C 7C 60 20 78 */ andc r0, r3, r4 +/* 801686D0 00165630 90 07 00 00 */ stw r0, 0(r7) +lbl_801686D4: +/* 801686D4 00165634 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801686D8 00165638 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801686DC 0016563C 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801686E0 00165640 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 801686E4 00165644 7C 08 03 A6 */ mtlr r0 +/* 801686E8 00165648 38 21 00 50 */ addi r1, r1, 0x50 +/* 801686EC 0016564C 4E 80 00 20 */ blr + +.global IsDoorVisited__13CMapWorldInfoCF9TEditorId +IsDoorVisited__13CMapWorldInfoCF9TEditorId: +/* 801686F0 00165650 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801686F4 00165654 7C 08 02 A6 */ mflr r0 +/* 801686F8 00165658 90 01 00 34 */ stw r0, 0x34(r1) +/* 801686FC 0016565C 38 E1 00 10 */ addi r7, r1, 0x10 +/* 80168700 00165660 88 A1 00 08 */ lbz r5, 8(r1) +/* 80168704 00165664 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80168708 00165668 7C 9F 23 78 */ mr r31, r4 +/* 8016870C 0016566C 7F E6 FB 78 */ mr r6, r31 +/* 80168710 00165670 38 81 00 20 */ addi r4, r1, 0x20 +/* 80168714 00165674 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80168718 00165678 7C 7E 1B 78 */ mr r30, r3 +/* 8016871C 0016567C 80 03 00 2C */ lwz r0, 0x2c(r3) +/* 80168720 00165680 81 03 00 34 */ lwz r8, 0x34(r3) +/* 80168724 00165684 38 61 00 24 */ addi r3, r1, 0x24 +/* 80168728 00165688 54 00 18 38 */ slwi r0, r0, 3 +/* 8016872C 0016568C 98 A1 00 0C */ stb r5, 0xc(r1) +/* 80168730 00165690 7C 08 02 14 */ add r0, r8, r0 +/* 80168734 00165694 98 A1 00 10 */ stb r5, 0x10(r1) +/* 80168738 00165698 38 A1 00 18 */ addi r5, r1, 0x18 +/* 8016873C 0016569C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80168740 001656A0 90 01 00 18 */ stw r0, 0x18(r1) +/* 80168744 001656A4 91 01 00 1C */ stw r8, 0x1c(r1) +/* 80168748 001656A8 91 01 00 20 */ stw r8, 0x20(r1) +/* 8016874C 001656AC 48 00 0E 49 */ bl "lower_bound,Q24rstl62vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>,9TEditorId,Q24rstl73pair_sorter_finder,Q24rstl16less<9TEditorId>>>__4rstlFQ24rstl144pointer_iterator,Q24rstl62vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl144pointer_iterator,Q24rstl62vector,Q24rstl17rmemory_allocator>Fi" +/* 801687E4 00165744 89 21 00 08 */ lbz r9, 8(r1) +/* 801687E8 00165748 7F C6 F3 78 */ mr r6, r30 +/* 801687EC 0016574C 38 61 00 2C */ addi r3, r1, 0x2c +/* 801687F0 00165750 38 81 00 28 */ addi r4, r1, 0x28 +/* 801687F4 00165754 99 21 00 10 */ stb r9, 0x10(r1) +/* 801687F8 00165758 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801687FC 0016575C 38 E1 00 10 */ addi r7, r1, 0x10 +/* 80168800 00165760 80 1D 00 2C */ lwz r0, 0x2c(r29) +/* 80168804 00165764 81 1D 00 34 */ lwz r8, 0x34(r29) +/* 80168808 00165768 54 00 18 38 */ slwi r0, r0, 3 +/* 8016880C 0016576C 99 21 00 0C */ stb r9, 0xc(r1) +/* 80168810 00165770 7D 08 02 14 */ add r8, r8, r0 +/* 80168814 00165774 91 01 00 20 */ stw r8, 0x20(r1) +/* 80168818 00165778 80 1D 00 34 */ lwz r0, 0x34(r29) +/* 8016881C 0016577C 91 01 00 1C */ stw r8, 0x1c(r1) +/* 80168820 00165780 90 01 00 24 */ stw r0, 0x24(r1) +/* 80168824 00165784 90 01 00 28 */ stw r0, 0x28(r1) +/* 80168828 00165788 48 00 0D 6D */ bl "lower_bound,Q24rstl62vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>,9TEditorId,Q24rstl73pair_sorter_finder,Q24rstl16less<9TEditorId>>>__4rstlFQ24rstl144pointer_iterator,Q24rstl62vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl144pointer_iterator,Q24rstl62vectorFi" +/* 80168EE4 00165E44 80 FD 00 10 */ lwz r7, 0x10(r29) +/* 80168EE8 00165E48 38 00 00 00 */ li r0, 0 +/* 80168EEC 00165E4C 90 01 00 18 */ stw r0, 0x18(r1) +/* 80168EF0 00165E50 7F A3 EB 78 */ mr r3, r29 +/* 80168EF4 00165E54 7F C5 F3 78 */ mr r5, r30 +/* 80168EF8 00165E58 7F E6 FB 78 */ mr r6, r31 +/* 80168EFC 00165E5C 90 E1 00 10 */ stw r7, 0x10(r1) +/* 80168F00 00165E60 38 81 00 20 */ addi r4, r1, 0x20 +/* 80168F04 00165E64 90 E1 00 0C */ stw r7, 0xc(r1) +/* 80168F08 00165E68 90 E1 00 08 */ stw r7, 8(r1) +/* 80168F0C 00165E6C 90 E1 00 14 */ stw r7, 0x14(r1) +/* 80168F10 00165E70 90 E1 00 1C */ stw r7, 0x1c(r1) +/* 80168F14 00165E74 90 E1 00 20 */ stw r7, 0x20(r1) +/* 80168F18 00165E78 90 01 00 24 */ stw r0, 0x24(r1) +/* 80168F1C 00165E7C 90 E1 00 28 */ stw r7, 0x28(r1) +/* 80168F20 00165E80 4B FF EF 7D */ bl sub_80167e9c +/* 80168F24 00165E84 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80168F28 00165E88 7F A3 EB 78 */ mr r3, r29 +/* 80168F2C 00165E8C 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80168F30 00165E90 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80168F34 00165E94 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 80168F38 00165E98 7C 08 03 A6 */ mtlr r0 +/* 80168F3C 00165E9C 38 21 00 40 */ addi r1, r1, 0x40 +/* 80168F40 00165EA0 4E 80 00 20 */ blr + +.global __ct__13CMapWorldInfoFR16CBitStreamReaderRC10CSaveWorldUi +__ct__13CMapWorldInfoFR16CBitStreamReaderRC10CSaveWorldUi: +/* 80168F44 00165EA4 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 80168F48 00165EA8 7C 08 02 A6 */ mflr r0 +/* 80168F4C 00165EAC 90 01 00 84 */ stw r0, 0x84(r1) +/* 80168F50 00165EB0 38 00 00 00 */ li r0, 0 +/* 80168F54 00165EB4 BF 01 00 60 */ stmw r24, 0x60(r1) +/* 80168F58 00165EB8 7C 99 23 78 */ mr r25, r4 +/* 80168F5C 00165EBC 7C 78 1B 78 */ mr r24, r3 +/* 80168F60 00165EC0 7C BA 2B 78 */ mr r26, r5 +/* 80168F64 00165EC4 7C C4 33 78 */ mr r4, r6 +/* 80168F68 00165EC8 90 03 00 00 */ stw r0, 0(r3) +/* 80168F6C 00165ECC 90 03 00 08 */ stw r0, 8(r3) +/* 80168F70 00165ED0 90 03 00 0C */ stw r0, 0xc(r3) +/* 80168F74 00165ED4 90 03 00 10 */ stw r0, 0x10(r3) +/* 80168F78 00165ED8 90 03 00 14 */ stw r0, 0x14(r3) +/* 80168F7C 00165EDC 90 03 00 1C */ stw r0, 0x1c(r3) +/* 80168F80 00165EE0 90 03 00 20 */ stw r0, 0x20(r3) +/* 80168F84 00165EE4 90 03 00 24 */ stw r0, 0x24(r3) +/* 80168F88 00165EE8 90 03 00 2C */ stw r0, 0x2c(r3) +/* 80168F8C 00165EEC 90 03 00 30 */ stw r0, 0x30(r3) +/* 80168F90 00165EF0 90 03 00 34 */ stw r0, 0x34(r3) +/* 80168F94 00165EF4 98 03 00 38 */ stb r0, 0x38(r3) +/* 80168F98 00165EF8 80 6D A0 84 */ lwz r3, gpMemoryCard@sda21(r13) +/* 80168F9C 00165EFC 48 0D FF 71 */ bl GetSaveWorldMemory__14CMemoryCardSysCFi +/* 80168FA0 00165F00 83 83 00 08 */ lwz r28, 8(r3) +/* 80168FA4 00165F04 38 78 00 04 */ addi r3, r24, 4 +/* 80168FA8 00165F08 57 80 D8 08 */ slwi r0, r28, 0x1b +/* 80168FAC 00165F0C 57 85 0F FE */ srwi r5, r28, 0x1f +/* 80168FB0 00165F10 7C 85 00 50 */ subf r4, r5, r0 +/* 80168FB4 00165F14 7F 80 2E 70 */ srawi r0, r28, 5 +/* 80168FB8 00165F18 54 84 28 3E */ rotlwi r4, r4, 5 +/* 80168FBC 00165F1C 7F C4 2A 14 */ add r30, r4, r5 +/* 80168FC0 00165F20 7F A0 01 94 */ addze r29, r0 +/* 80168FC4 00165F24 7C 1E 00 D0 */ neg r0, r30 +/* 80168FC8 00165F28 7C 00 F3 78 */ or r0, r0, r30 +/* 80168FCC 00165F2C 54 00 0F FE */ srwi r0, r0, 0x1f +/* 80168FD0 00165F30 7C 9D 02 14 */ add r4, r29, r0 +/* 80168FD4 00165F34 4B EF AB 51 */ bl "reserve__Q24rstl37vectorFi" +/* 80168FD8 00165F38 3B 60 00 00 */ li r27, 0 +/* 80168FDC 00165F3C 48 00 01 14 */ b lbl_801690F0 +lbl_80168FE0: +/* 80168FE0 00165F40 7F 23 CB 78 */ mr r3, r25 +/* 80168FE4 00165F44 38 80 00 01 */ li r4, 1 +/* 80168FE8 00165F48 48 1D 5D 51 */ bl ReadBits__12CInputStreamFi +/* 80168FEC 00165F4C 80 98 00 00 */ lwz r4, 0(r24) +/* 80168FF0 00165F50 7C 03 00 D0 */ neg r0, r3 +/* 80168FF4 00165F54 7C 05 1B 78 */ or r5, r0, r3 +/* 80168FF8 00165F58 54 80 D8 08 */ slwi r0, r4, 0x1b +/* 80168FFC 00165F5C 54 83 0F FE */ srwi r3, r4, 0x1f +/* 80169000 00165F60 7C 03 00 50 */ subf r0, r3, r0 +/* 80169004 00165F64 54 BF 0F FE */ srwi r31, r5, 0x1f +/* 80169008 00165F68 54 00 28 3E */ rotlwi r0, r0, 5 +/* 8016900C 00165F6C 7C 00 1A 15 */ add. r0, r0, r3 +/* 80169010 00165F70 40 82 00 54 */ bne lbl_80169064 +/* 80169014 00165F74 80 18 00 08 */ lwz r0, 8(r24) +/* 80169018 00165F78 80 B8 00 0C */ lwz r5, 0xc(r24) +/* 8016901C 00165F7C 7C 00 28 00 */ cmpw r0, r5 +/* 80169020 00165F80 41 80 00 1C */ blt lbl_8016903C +/* 80169024 00165F84 2C 05 00 00 */ cmpwi r5, 0 +/* 80169028 00165F88 38 78 00 04 */ addi r3, r24, 4 +/* 8016902C 00165F8C 38 80 00 04 */ li r4, 4 +/* 80169030 00165F90 41 82 00 08 */ beq lbl_80169038 +/* 80169034 00165F94 54 A4 08 3C */ slwi r4, r5, 1 +lbl_80169038: +/* 80169038 00165F98 4B EF AA ED */ bl "reserve__Q24rstl37vectorFi" +lbl_8016903C: +/* 8016903C 00165F9C 80 18 00 08 */ lwz r0, 8(r24) +/* 80169040 00165FA0 80 78 00 10 */ lwz r3, 0x10(r24) +/* 80169044 00165FA4 54 00 10 3A */ slwi r0, r0, 2 +/* 80169048 00165FA8 7C 63 02 15 */ add. r3, r3, r0 +/* 8016904C 00165FAC 41 82 00 0C */ beq lbl_80169058 +/* 80169050 00165FB0 80 0D 8D 88 */ lwz r0, lbl_805A7948@sda21(r13) +/* 80169054 00165FB4 90 03 00 00 */ stw r0, 0(r3) +lbl_80169058: +/* 80169058 00165FB8 80 78 00 08 */ lwz r3, 8(r24) +/* 8016905C 00165FBC 38 03 00 01 */ addi r0, r3, 1 +/* 80169060 00165FC0 90 18 00 08 */ stw r0, 8(r24) +lbl_80169064: +/* 80169064 00165FC4 80 78 00 00 */ lwz r3, 0(r24) +/* 80169068 00165FC8 28 1F 00 00 */ cmplwi r31, 0 +/* 8016906C 00165FCC 38 03 00 01 */ addi r0, r3, 1 +/* 80169070 00165FD0 90 18 00 00 */ stw r0, 0(r24) +/* 80169074 00165FD4 41 82 00 40 */ beq lbl_801690B4 +/* 80169078 00165FD8 7C 64 2E 70 */ srawi r4, r3, 5 +/* 8016907C 00165FDC 54 60 D8 08 */ slwi r0, r3, 0x1b +/* 80169080 00165FE0 54 63 0F FE */ srwi r3, r3, 0x1f +/* 80169084 00165FE4 80 F8 00 10 */ lwz r7, 0x10(r24) +/* 80169088 00165FE8 7C A4 01 94 */ addze r5, r4 +/* 8016908C 00165FEC 38 80 00 01 */ li r4, 1 +/* 80169090 00165FF0 7C 03 00 50 */ subf r0, r3, r0 +/* 80169094 00165FF4 54 A6 10 3A */ slwi r6, r5, 2 +/* 80169098 00165FF8 54 00 28 3E */ rotlwi r0, r0, 5 +/* 8016909C 00165FFC 7C A7 30 2E */ lwzx r5, r7, r6 +/* 801690A0 00166000 7C 00 1A 14 */ add r0, r0, r3 +/* 801690A4 00166004 7C 80 00 30 */ slw r0, r4, r0 +/* 801690A8 00166008 7C A0 03 78 */ or r0, r5, r0 +/* 801690AC 0016600C 7C 07 31 2E */ stwx r0, r7, r6 +/* 801690B0 00166010 48 00 00 3C */ b lbl_801690EC +lbl_801690B4: +/* 801690B4 00166014 7C 64 2E 70 */ srawi r4, r3, 5 +/* 801690B8 00166018 54 60 D8 08 */ slwi r0, r3, 0x1b +/* 801690BC 0016601C 54 63 0F FE */ srwi r3, r3, 0x1f +/* 801690C0 00166020 80 F8 00 10 */ lwz r7, 0x10(r24) +/* 801690C4 00166024 7C A4 01 94 */ addze r5, r4 +/* 801690C8 00166028 38 80 00 01 */ li r4, 1 +/* 801690CC 0016602C 7C 03 00 50 */ subf r0, r3, r0 +/* 801690D0 00166030 54 A6 10 3A */ slwi r6, r5, 2 +/* 801690D4 00166034 54 00 28 3E */ rotlwi r0, r0, 5 +/* 801690D8 00166038 7C A7 30 2E */ lwzx r5, r7, r6 +/* 801690DC 0016603C 7C 00 1A 14 */ add r0, r0, r3 +/* 801690E0 00166040 7C 80 00 30 */ slw r0, r4, r0 +/* 801690E4 00166044 7C A0 00 78 */ andc r0, r5, r0 +/* 801690E8 00166048 7C 07 31 2E */ stwx r0, r7, r6 +lbl_801690EC: +/* 801690EC 0016604C 3B 7B 00 01 */ addi r27, r27, 1 +lbl_801690F0: +/* 801690F0 00166050 7C 1B E0 00 */ cmpw r27, r28 +/* 801690F4 00166054 41 80 FE EC */ blt lbl_80168FE0 +/* 801690F8 00166058 7C 1E 00 D0 */ neg r0, r30 +/* 801690FC 0016605C 38 78 00 18 */ addi r3, r24, 0x18 +/* 80169100 00166060 7C 00 F3 78 */ or r0, r0, r30 +/* 80169104 00166064 54 00 0F FE */ srwi r0, r0, 0x1f +/* 80169108 00166068 7C 9D 02 14 */ add r4, r29, r0 +/* 8016910C 0016606C 4B EF AA 19 */ bl "reserve__Q24rstl37vectorFi" +/* 80169110 00166070 3B 60 00 00 */ li r27, 0 +/* 80169114 00166074 48 00 01 14 */ b lbl_80169228 +lbl_80169118: +/* 80169118 00166078 7F 23 CB 78 */ mr r3, r25 +/* 8016911C 0016607C 38 80 00 01 */ li r4, 1 +/* 80169120 00166080 48 1D 5C 19 */ bl ReadBits__12CInputStreamFi +/* 80169124 00166084 80 98 00 14 */ lwz r4, 0x14(r24) +/* 80169128 00166088 7C 03 00 D0 */ neg r0, r3 +/* 8016912C 0016608C 7C 05 1B 78 */ or r5, r0, r3 +/* 80169130 00166090 54 80 D8 08 */ slwi r0, r4, 0x1b +/* 80169134 00166094 54 83 0F FE */ srwi r3, r4, 0x1f +/* 80169138 00166098 7C 03 00 50 */ subf r0, r3, r0 +/* 8016913C 0016609C 54 BF 0F FE */ srwi r31, r5, 0x1f +/* 80169140 001660A0 54 00 28 3E */ rotlwi r0, r0, 5 +/* 80169144 001660A4 7C 00 1A 15 */ add. r0, r0, r3 +/* 80169148 001660A8 40 82 00 54 */ bne lbl_8016919C +/* 8016914C 001660AC 80 18 00 1C */ lwz r0, 0x1c(r24) +/* 80169150 001660B0 80 B8 00 20 */ lwz r5, 0x20(r24) +/* 80169154 001660B4 7C 00 28 00 */ cmpw r0, r5 +/* 80169158 001660B8 41 80 00 1C */ blt lbl_80169174 +/* 8016915C 001660BC 2C 05 00 00 */ cmpwi r5, 0 +/* 80169160 001660C0 38 78 00 18 */ addi r3, r24, 0x18 +/* 80169164 001660C4 38 80 00 04 */ li r4, 4 +/* 80169168 001660C8 41 82 00 08 */ beq lbl_80169170 +/* 8016916C 001660CC 54 A4 08 3C */ slwi r4, r5, 1 +lbl_80169170: +/* 80169170 001660D0 4B EF A9 B5 */ bl "reserve__Q24rstl37vectorFi" +lbl_80169174: +/* 80169174 001660D4 80 18 00 1C */ lwz r0, 0x1c(r24) +/* 80169178 001660D8 80 78 00 24 */ lwz r3, 0x24(r24) +/* 8016917C 001660DC 54 00 10 3A */ slwi r0, r0, 2 +/* 80169180 001660E0 7C 63 02 15 */ add. r3, r3, r0 +/* 80169184 001660E4 41 82 00 0C */ beq lbl_80169190 +/* 80169188 001660E8 80 0D 8D 88 */ lwz r0, lbl_805A7948@sda21(r13) +/* 8016918C 001660EC 90 03 00 00 */ stw r0, 0(r3) +lbl_80169190: +/* 80169190 001660F0 80 78 00 1C */ lwz r3, 0x1c(r24) +/* 80169194 001660F4 38 03 00 01 */ addi r0, r3, 1 +/* 80169198 001660F8 90 18 00 1C */ stw r0, 0x1c(r24) +lbl_8016919C: +/* 8016919C 001660FC 80 78 00 14 */ lwz r3, 0x14(r24) +/* 801691A0 00166100 28 1F 00 00 */ cmplwi r31, 0 +/* 801691A4 00166104 38 03 00 01 */ addi r0, r3, 1 +/* 801691A8 00166108 90 18 00 14 */ stw r0, 0x14(r24) +/* 801691AC 0016610C 41 82 00 40 */ beq lbl_801691EC +/* 801691B0 00166110 7C 64 2E 70 */ srawi r4, r3, 5 +/* 801691B4 00166114 54 60 D8 08 */ slwi r0, r3, 0x1b +/* 801691B8 00166118 54 63 0F FE */ srwi r3, r3, 0x1f +/* 801691BC 0016611C 80 F8 00 24 */ lwz r7, 0x24(r24) +/* 801691C0 00166120 7C A4 01 94 */ addze r5, r4 +/* 801691C4 00166124 38 80 00 01 */ li r4, 1 +/* 801691C8 00166128 7C 03 00 50 */ subf r0, r3, r0 +/* 801691CC 0016612C 54 A6 10 3A */ slwi r6, r5, 2 +/* 801691D0 00166130 54 00 28 3E */ rotlwi r0, r0, 5 +/* 801691D4 00166134 7C A7 30 2E */ lwzx r5, r7, r6 +/* 801691D8 00166138 7C 00 1A 14 */ add r0, r0, r3 +/* 801691DC 0016613C 7C 80 00 30 */ slw r0, r4, r0 +/* 801691E0 00166140 7C A0 03 78 */ or r0, r5, r0 +/* 801691E4 00166144 7C 07 31 2E */ stwx r0, r7, r6 +/* 801691E8 00166148 48 00 00 3C */ b lbl_80169224 +lbl_801691EC: +/* 801691EC 0016614C 7C 64 2E 70 */ srawi r4, r3, 5 +/* 801691F0 00166150 54 60 D8 08 */ slwi r0, r3, 0x1b +/* 801691F4 00166154 54 63 0F FE */ srwi r3, r3, 0x1f +/* 801691F8 00166158 80 F8 00 24 */ lwz r7, 0x24(r24) +/* 801691FC 0016615C 7C A4 01 94 */ addze r5, r4 +/* 80169200 00166160 38 80 00 01 */ li r4, 1 +/* 80169204 00166164 7C 03 00 50 */ subf r0, r3, r0 +/* 80169208 00166168 54 A6 10 3A */ slwi r6, r5, 2 +/* 8016920C 0016616C 54 00 28 3E */ rotlwi r0, r0, 5 +/* 80169210 00166170 7C A7 30 2E */ lwzx r5, r7, r6 +/* 80169214 00166174 7C 00 1A 14 */ add r0, r0, r3 +/* 80169218 00166178 7C 80 00 30 */ slw r0, r4, r0 +/* 8016921C 0016617C 7C A0 00 78 */ andc r0, r5, r0 +/* 80169220 00166180 7C 07 31 2E */ stwx r0, r7, r6 +lbl_80169224: +/* 80169224 00166184 3B 7B 00 01 */ addi r27, r27, 1 +lbl_80169228: +/* 80169228 00166188 7C 1B E0 00 */ cmpw r27, r28 +/* 8016922C 0016618C 41 80 FE EC */ blt lbl_80169118 +/* 80169230 00166190 80 9A 00 38 */ lwz r4, 0x38(r26) +/* 80169234 00166194 38 61 00 44 */ addi r3, r1, 0x44 +/* 80169238 00166198 38 A0 00 00 */ li r5, 0 +/* 8016923C 0016619C 4B FF FC 3D */ bl sub_80168e78 +/* 80169240 001661A0 3B 60 00 00 */ li r27, 0 +/* 80169244 001661A4 48 00 00 80 */ b lbl_801692C4 +lbl_80169248: +/* 80169248 001661A8 7F 23 CB 78 */ mr r3, r25 +/* 8016924C 001661AC 38 80 00 01 */ li r4, 1 +/* 80169250 001661B0 48 1D 5A E9 */ bl ReadBits__12CInputStreamFi +/* 80169254 001661B4 57 60 D8 08 */ slwi r0, r27, 0x1b +/* 80169258 001661B8 57 64 0F FE */ srwi r4, r27, 0x1f +/* 8016925C 001661BC 7F 65 2E 70 */ srawi r5, r27, 5 +/* 80169260 001661C0 7C C3 00 D0 */ neg r6, r3 +/* 80169264 001661C4 7C 04 00 50 */ subf r0, r4, r0 +/* 80169268 001661C8 80 E1 00 54 */ lwz r7, 0x54(r1) +/* 8016926C 001661CC 7C C6 1B 78 */ or r6, r6, r3 +/* 80169270 001661D0 7C A5 01 94 */ addze r5, r5 +/* 80169274 001661D4 54 00 28 3E */ rotlwi r0, r0, 5 +/* 80169278 001661D8 38 60 00 01 */ li r3, 1 +/* 8016927C 001661DC 54 A5 10 3A */ slwi r5, r5, 2 +/* 80169280 001661E0 54 C6 0F FF */ rlwinm. r6, r6, 1, 0x1f, 0x1f +/* 80169284 001661E4 7C E7 2A 14 */ add r7, r7, r5 +/* 80169288 001661E8 7C 00 22 14 */ add r0, r0, r4 +/* 8016928C 001661EC 7C 64 00 30 */ slw r4, r3, r0 +/* 80169290 001661F0 90 E1 00 18 */ stw r7, 0x18(r1) +/* 80169294 001661F4 90 E1 00 14 */ stw r7, 0x14(r1) +/* 80169298 001661F8 90 E1 00 3C */ stw r7, 0x3c(r1) +/* 8016929C 001661FC 90 81 00 40 */ stw r4, 0x40(r1) +/* 801692A0 00166200 41 82 00 14 */ beq lbl_801692B4 +/* 801692A4 00166204 80 07 00 00 */ lwz r0, 0(r7) +/* 801692A8 00166208 7C 00 23 78 */ or r0, r0, r4 +/* 801692AC 0016620C 90 07 00 00 */ stw r0, 0(r7) +/* 801692B0 00166210 48 00 00 10 */ b lbl_801692C0 +lbl_801692B4: +/* 801692B4 00166214 80 67 00 00 */ lwz r3, 0(r7) +/* 801692B8 00166218 7C 60 20 78 */ andc r0, r3, r4 +/* 801692BC 0016621C 90 07 00 00 */ stw r0, 0(r7) +lbl_801692C0: +/* 801692C0 00166220 3B 7B 00 01 */ addi r27, r27, 1 +lbl_801692C4: +/* 801692C4 00166224 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801692C8 00166228 7C 1B 00 00 */ cmpw r27, r0 +/* 801692CC 0016622C 41 80 FF 7C */ blt lbl_80169248 +/* 801692D0 00166230 7F 23 CB 78 */ mr r3, r25 +/* 801692D4 00166234 38 80 00 01 */ li r4, 1 +/* 801692D8 00166238 48 1D 5A 61 */ bl ReadBits__12CInputStreamFi +/* 801692DC 0016623C 7C 83 00 D0 */ neg r4, r3 +/* 801692E0 00166240 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801692E4 00166244 7C 84 1B 78 */ or r4, r4, r3 +/* 801692E8 00166248 38 61 00 2C */ addi r3, r1, 0x2c +/* 801692EC 0016624C 54 86 0F FE */ srwi r6, r4, 0x1f +/* 801692F0 00166250 98 01 00 0C */ stb r0, 0xc(r1) +/* 801692F4 00166254 38 81 00 34 */ addi r4, r1, 0x34 +/* 801692F8 00166258 38 A1 00 08 */ addi r5, r1, 8 +/* 801692FC 0016625C 98 D8 00 38 */ stb r6, 0x38(r24) +/* 80169300 00166260 98 01 00 08 */ stb r0, 8(r1) +/* 80169304 00166264 80 18 00 2C */ lwz r0, 0x2c(r24) +/* 80169308 00166268 80 D8 00 34 */ lwz r6, 0x34(r24) +/* 8016930C 0016626C 54 00 18 38 */ slwi r0, r0, 3 +/* 80169310 00166270 7C C6 02 14 */ add r6, r6, r0 +/* 80169314 00166274 90 C1 00 34 */ stw r6, 0x34(r1) +/* 80169318 00166278 80 18 00 34 */ lwz r0, 0x34(r24) +/* 8016931C 0016627C 90 C1 00 38 */ stw r6, 0x38(r1) +/* 80169320 00166280 90 01 00 30 */ stw r0, 0x30(r1) +/* 80169324 00166284 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80169328 00166288 48 00 00 95 */ bl sub_801693bc +/* 8016932C 0016628C 80 01 00 4C */ lwz r0, 0x4c(r1) +/* 80169330 00166290 80 61 00 54 */ lwz r3, 0x54(r1) +/* 80169334 00166294 54 00 10 3A */ slwi r0, r0, 2 +/* 80169338 00166298 7C 03 02 14 */ add r0, r3, r0 +/* 8016933C 0016629C 90 61 00 20 */ stw r3, 0x20(r1) +/* 80169340 001662A0 7C 64 1B 78 */ mr r4, r3 +/* 80169344 001662A4 90 01 00 28 */ stw r0, 0x28(r1) +/* 80169348 001662A8 90 01 00 24 */ stw r0, 0x24(r1) +/* 8016934C 001662AC 90 61 00 1C */ stw r3, 0x1c(r1) +/* 80169350 001662B0 48 00 00 08 */ b lbl_80169358 +lbl_80169354: +/* 80169354 001662B4 38 84 00 04 */ addi r4, r4, 4 +lbl_80169358: +/* 80169358 001662B8 7C 04 00 40 */ cmplw r4, r0 +/* 8016935C 001662BC 40 82 FF F8 */ bne lbl_80169354 +/* 80169360 001662C0 28 03 00 00 */ cmplwi r3, 0 +/* 80169364 001662C4 41 82 00 08 */ beq lbl_8016936C +/* 80169368 001662C8 48 1A C5 C9 */ bl Free__7CMemoryFPCv +lbl_8016936C: +/* 8016936C 001662CC 7F 03 C3 78 */ mr r3, r24 +/* 80169370 001662D0 BB 01 00 60 */ lmw r24, 0x60(r1) +/* 80169374 001662D4 80 01 00 84 */ lwz r0, 0x84(r1) +/* 80169378 001662D8 7C 08 03 A6 */ mtlr r0 +/* 8016937C 001662DC 38 21 00 80 */ addi r1, r1, 0x80 +/* 80169380 001662E0 4E 80 00 20 */ blr + +.global __ct__13CMapWorldInfoFv +__ct__13CMapWorldInfoFv: +/* 80169384 001662E4 38 00 00 00 */ li r0, 0 +/* 80169388 001662E8 90 03 00 00 */ stw r0, 0(r3) +/* 8016938C 001662EC 90 03 00 08 */ stw r0, 8(r3) +/* 80169390 001662F0 90 03 00 0C */ stw r0, 0xc(r3) +/* 80169394 001662F4 90 03 00 10 */ stw r0, 0x10(r3) +/* 80169398 001662F8 90 03 00 14 */ stw r0, 0x14(r3) +/* 8016939C 001662FC 90 03 00 1C */ stw r0, 0x1c(r3) +/* 801693A0 00166300 90 03 00 20 */ stw r0, 0x20(r3) +/* 801693A4 00166304 90 03 00 24 */ stw r0, 0x24(r3) +/* 801693A8 00166308 90 03 00 2C */ stw r0, 0x2c(r3) +/* 801693AC 0016630C 90 03 00 30 */ stw r0, 0x30(r3) +/* 801693B0 00166310 90 03 00 34 */ stw r0, 0x34(r3) +/* 801693B4 00166314 98 03 00 38 */ stb r0, 0x38(r3) +/* 801693B8 00166318 4E 80 00 20 */ blr + +.global sub_801693bc +sub_801693bc: +/* 801693BC 0016631C 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801693C0 00166320 7C 08 02 A6 */ mflr r0 +/* 801693C4 00166324 90 01 00 64 */ stw r0, 0x64(r1) +/* 801693C8 00166328 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 801693CC 0016632C 7C BF 2B 78 */ mr r31, r5 +/* 801693D0 00166330 93 C1 00 58 */ stw r30, 0x58(r1) +/* 801693D4 00166334 7C 9E 23 78 */ mr r30, r4 +/* 801693D8 00166338 93 A1 00 54 */ stw r29, 0x54(r1) +/* 801693DC 0016633C 7C 7D 1B 78 */ mr r29, r3 +/* 801693E0 00166340 93 81 00 50 */ stw r28, 0x50(r1) +/* 801693E4 00166344 80 63 00 00 */ lwz r3, 0(r3) +/* 801693E8 00166348 80 A4 00 00 */ lwz r5, 0(r4) +/* 801693EC 0016634C 7C 03 28 50 */ subf r0, r3, r5 +/* 801693F0 00166350 7C 00 1E 70 */ srawi r0, r0, 3 +/* 801693F4 00166354 7C 80 01 94 */ addze r4, r0 +/* 801693F8 00166358 2C 04 00 01 */ cmpwi r4, 1 +/* 801693FC 0016635C 40 81 01 78 */ ble lbl_80169574 +/* 80169400 00166360 2C 04 00 14 */ cmpwi r4, 0x14 +/* 80169404 00166364 41 81 00 30 */ bgt lbl_80169434 +/* 80169408 00166368 88 FF 00 00 */ lbz r7, 0(r31) +/* 8016940C 0016636C 38 61 00 34 */ addi r3, r1, 0x34 +/* 80169410 00166370 80 DE 00 00 */ lwz r6, 0(r30) +/* 80169414 00166374 38 81 00 30 */ addi r4, r1, 0x30 +/* 80169418 00166378 80 1D 00 00 */ lwz r0, 0(r29) +/* 8016941C 0016637C 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80169420 00166380 98 E1 00 14 */ stb r7, 0x14(r1) +/* 80169424 00166384 90 C1 00 30 */ stw r6, 0x30(r1) +/* 80169428 00166388 90 01 00 34 */ stw r0, 0x34(r1) +/* 8016942C 0016638C 48 00 04 65 */ bl sub_80169890 +/* 80169430 00166390 48 00 01 44 */ b lbl_80169574 +lbl_80169434: +/* 80169434 00166394 54 80 0F FE */ srwi r0, r4, 0x1f +/* 80169438 00166398 38 A5 FF F8 */ addi r5, r5, -8 +/* 8016943C 0016639C 7C 80 22 14 */ add r4, r0, r4 +/* 80169440 001663A0 88 1F 00 00 */ lbz r0, 0(r31) +/* 80169444 001663A4 7C 84 0E 70 */ srawi r4, r4, 1 +/* 80169448 001663A8 90 A1 00 3C */ stw r5, 0x3c(r1) +/* 8016944C 001663AC 54 84 18 38 */ slwi r4, r4, 3 +/* 80169450 001663B0 38 C1 00 10 */ addi r6, r1, 0x10 +/* 80169454 001663B4 7F 83 22 14 */ add r28, r3, r4 +/* 80169458 001663B8 98 01 00 10 */ stb r0, 0x10(r1) +/* 8016945C 001663BC 7F 84 E3 78 */ mr r4, r28 +/* 80169460 001663C0 48 00 03 8D */ bl sub_801697ec +/* 80169464 001663C4 80 9D 00 00 */ lwz r4, 0(r29) +/* 80169468 001663C8 80 61 00 3C */ lwz r3, 0x3c(r1) +/* 8016946C 001663CC 38 84 00 08 */ addi r4, r4, 8 +/* 80169470 001663D0 80 BC 00 00 */ lwz r5, 0(r28) +/* 80169474 001663D4 38 03 FF F8 */ addi r0, r3, -8 +/* 80169478 001663D8 90 81 00 38 */ stw r4, 0x38(r1) +/* 8016947C 001663DC 54 A9 01 BE */ clrlwi r9, r5, 6 +/* 80169480 001663E0 90 01 00 3C */ stw r0, 0x3c(r1) +/* 80169484 001663E4 48 00 00 10 */ b lbl_80169494 +lbl_80169488: +/* 80169488 001663E8 80 61 00 38 */ lwz r3, 0x38(r1) +/* 8016948C 001663EC 38 03 00 08 */ addi r0, r3, 8 +/* 80169490 001663F0 90 01 00 38 */ stw r0, 0x38(r1) +lbl_80169494: +/* 80169494 001663F4 80 61 00 38 */ lwz r3, 0x38(r1) +/* 80169498 001663F8 80 03 00 00 */ lwz r0, 0(r3) +/* 8016949C 001663FC 54 00 01 BE */ clrlwi r0, r0, 6 +/* 801694A0 00166400 7C 00 48 40 */ cmplw r0, r9 +/* 801694A4 00166404 41 80 FF E4 */ blt lbl_80169488 +/* 801694A8 00166408 48 00 00 10 */ b lbl_801694B8 +lbl_801694AC: +/* 801694AC 0016640C 80 61 00 3C */ lwz r3, 0x3c(r1) +/* 801694B0 00166410 38 03 FF F8 */ addi r0, r3, -8 +/* 801694B4 00166414 90 01 00 3C */ stw r0, 0x3c(r1) +lbl_801694B8: +/* 801694B8 00166418 80 61 00 3C */ lwz r3, 0x3c(r1) +/* 801694BC 0016641C 80 03 00 00 */ lwz r0, 0(r3) +/* 801694C0 00166420 54 00 01 BE */ clrlwi r0, r0, 6 +/* 801694C4 00166424 7C 09 00 40 */ cmplw r9, r0 +/* 801694C8 00166428 41 80 FF E4 */ blt lbl_801694AC +/* 801694CC 0016642C 80 01 00 38 */ lwz r0, 0x38(r1) +/* 801694D0 00166430 7C 00 18 40 */ cmplw r0, r3 +/* 801694D4 00166434 40 80 00 50 */ bge lbl_80169524 +/* 801694D8 00166438 80 E1 00 38 */ lwz r7, 0x38(r1) +/* 801694DC 0016643C 81 01 00 3C */ lwz r8, 0x3c(r1) +/* 801694E0 00166440 80 C7 00 00 */ lwz r6, 0(r7) +/* 801694E4 00166444 38 67 00 08 */ addi r3, r7, 8 +/* 801694E8 00166448 88 A7 00 04 */ lbz r5, 4(r7) +/* 801694EC 0016644C 38 08 FF F8 */ addi r0, r8, -8 +/* 801694F0 00166450 80 88 00 00 */ lwz r4, 0(r8) +/* 801694F4 00166454 91 01 00 28 */ stw r8, 0x28(r1) +/* 801694F8 00166458 90 87 00 00 */ stw r4, 0(r7) +/* 801694FC 0016645C 88 88 00 04 */ lbz r4, 4(r8) +/* 80169500 00166460 90 E1 00 2C */ stw r7, 0x2c(r1) +/* 80169504 00166464 98 87 00 04 */ stb r4, 4(r7) +/* 80169508 00166468 90 C8 00 00 */ stw r6, 0(r8) +/* 8016950C 0016646C 90 C1 00 40 */ stw r6, 0x40(r1) +/* 80169510 00166470 98 A1 00 44 */ stb r5, 0x44(r1) +/* 80169514 00166474 98 A8 00 04 */ stb r5, 4(r8) +/* 80169518 00166478 90 61 00 38 */ stw r3, 0x38(r1) +/* 8016951C 0016647C 90 01 00 3C */ stw r0, 0x3c(r1) +/* 80169520 00166480 4B FF FF 74 */ b lbl_80169494 +lbl_80169524: +/* 80169524 00166484 88 FF 00 00 */ lbz r7, 0(r31) +/* 80169528 00166488 38 61 00 24 */ addi r3, r1, 0x24 +/* 8016952C 0016648C 80 C1 00 38 */ lwz r6, 0x38(r1) +/* 80169530 00166490 38 81 00 20 */ addi r4, r1, 0x20 +/* 80169534 00166494 80 1D 00 00 */ lwz r0, 0(r29) +/* 80169538 00166498 38 A1 00 0C */ addi r5, r1, 0xc +/* 8016953C 0016649C 98 E1 00 0C */ stb r7, 0xc(r1) +/* 80169540 001664A0 90 C1 00 20 */ stw r6, 0x20(r1) +/* 80169544 001664A4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80169548 001664A8 4B FF FE 75 */ bl sub_801693bc +/* 8016954C 001664AC 88 FF 00 00 */ lbz r7, 0(r31) +/* 80169550 001664B0 38 61 00 1C */ addi r3, r1, 0x1c +/* 80169554 001664B4 80 DE 00 00 */ lwz r6, 0(r30) +/* 80169558 001664B8 38 81 00 18 */ addi r4, r1, 0x18 +/* 8016955C 001664BC 80 01 00 38 */ lwz r0, 0x38(r1) +/* 80169560 001664C0 38 A1 00 08 */ addi r5, r1, 8 +/* 80169564 001664C4 98 E1 00 08 */ stb r7, 8(r1) +/* 80169568 001664C8 90 C1 00 18 */ stw r6, 0x18(r1) +/* 8016956C 001664CC 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80169570 001664D0 4B FF FE 4D */ bl sub_801693bc +lbl_80169574: +/* 80169574 001664D4 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80169578 001664D8 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8016957C 001664DC 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 80169580 001664E0 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 80169584 001664E4 83 81 00 50 */ lwz r28, 0x50(r1) +/* 80169588 001664E8 7C 08 03 A6 */ mtlr r0 +/* 8016958C 001664EC 38 21 00 60 */ addi r1, r1, 0x60 +/* 80169590 001664F0 4E 80 00 20 */ blr + +.global "lower_bound,Q24rstl62vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>,9TEditorId,Q24rstl73pair_sorter_finder,Q24rstl16less<9TEditorId>>>__4rstlFQ24rstl144pointer_iterator,Q24rstl62vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl144pointer_iterator,Q24rstl62vector,Q24rstl62vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>,9TEditorId,Q24rstl73pair_sorter_finder,Q24rstl16less<9TEditorId>>>__4rstlFQ24rstl144pointer_iterator,Q24rstl62vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl144pointer_iterator,Q24rstl62vector,Q24rstl17rmemory_allocator>Fi" +"reserve__Q24rstl62vector,Q24rstl17rmemory_allocator>Fi": +/* 8016965C 001665BC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80169660 001665C0 7C 08 02 A6 */ mflr r0 +/* 80169664 001665C4 90 01 00 34 */ stw r0, 0x34(r1) +/* 80169668 001665C8 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8016966C 001665CC 7C 9F 23 78 */ mr r31, r4 +/* 80169670 001665D0 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80169674 001665D4 7C 7E 1B 78 */ mr r30, r3 +/* 80169678 001665D8 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8016967C 001665DC 80 03 00 08 */ lwz r0, 8(r3) +/* 80169680 001665E0 7C 1F 00 00 */ cmpw r31, r0 +/* 80169684 001665E4 40 81 00 B0 */ ble lbl_80169734 +/* 80169688 001665E8 57 E3 18 39 */ rlwinm. r3, r31, 3, 0, 0x1c +/* 8016968C 001665EC 40 82 00 0C */ bne lbl_80169698 +/* 80169690 001665F0 3B A0 00 00 */ li r29, 0 +/* 80169694 001665F4 48 00 00 18 */ b lbl_801696AC +lbl_80169698: +/* 80169698 001665F8 3C 80 80 3D */ lis r4, lbl_803D0428@ha +/* 8016969C 001665FC 38 A0 00 00 */ li r5, 0 +/* 801696A0 00166600 38 84 04 28 */ addi r4, r4, lbl_803D0428@l +/* 801696A4 00166604 48 1A C1 75 */ bl __nwa__FUlPCcPCc +/* 801696A8 00166608 7C 7D 1B 78 */ mr r29, r3 +lbl_801696AC: +/* 801696AC 0016660C 80 1E 00 04 */ lwz r0, 4(r30) +/* 801696B0 00166610 7F A4 EB 78 */ mr r4, r29 +/* 801696B4 00166614 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 801696B8 00166618 54 00 18 38 */ slwi r0, r0, 3 +/* 801696BC 0016661C 7C 65 02 14 */ add r3, r5, r0 +/* 801696C0 00166620 90 A1 00 10 */ stw r5, 0x10(r1) +/* 801696C4 00166624 90 61 00 08 */ stw r3, 8(r1) +/* 801696C8 00166628 90 61 00 0C */ stw r3, 0xc(r1) +/* 801696CC 0016662C 90 A1 00 14 */ stw r5, 0x14(r1) +/* 801696D0 00166630 48 00 00 24 */ b lbl_801696F4 +lbl_801696D4: +/* 801696D4 00166634 28 04 00 00 */ cmplwi r4, 0 +/* 801696D8 00166638 41 82 00 14 */ beq lbl_801696EC +/* 801696DC 0016663C 80 05 00 00 */ lwz r0, 0(r5) +/* 801696E0 00166640 90 04 00 00 */ stw r0, 0(r4) +/* 801696E4 00166644 88 05 00 04 */ lbz r0, 4(r5) +/* 801696E8 00166648 98 04 00 04 */ stb r0, 4(r4) +lbl_801696EC: +/* 801696EC 0016664C 38 84 00 08 */ addi r4, r4, 8 +/* 801696F0 00166650 38 A5 00 08 */ addi r5, r5, 8 +lbl_801696F4: +/* 801696F4 00166654 7C 05 18 40 */ cmplw r5, r3 +/* 801696F8 00166658 40 82 FF DC */ bne lbl_801696D4 +/* 801696FC 0016665C 80 1E 00 04 */ lwz r0, 4(r30) +/* 80169700 00166660 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 80169704 00166664 54 00 18 38 */ slwi r0, r0, 3 +/* 80169708 00166668 7C 64 1B 78 */ mr r4, r3 +/* 8016970C 0016666C 7C 03 02 14 */ add r0, r3, r0 +/* 80169710 00166670 48 00 00 08 */ b lbl_80169718 +lbl_80169714: +/* 80169714 00166674 38 84 00 08 */ addi r4, r4, 8 +lbl_80169718: +/* 80169718 00166678 7C 04 00 40 */ cmplw r4, r0 +/* 8016971C 0016667C 40 82 FF F8 */ bne lbl_80169714 +/* 80169720 00166680 28 03 00 00 */ cmplwi r3, 0 +/* 80169724 00166684 41 82 00 08 */ beq lbl_8016972C +/* 80169728 00166688 48 1A C2 09 */ bl Free__7CMemoryFPCv +lbl_8016972C: +/* 8016972C 0016668C 93 BE 00 0C */ stw r29, 0xc(r30) +/* 80169730 00166690 93 FE 00 08 */ stw r31, 8(r30) +lbl_80169734: +/* 80169734 00166694 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80169738 00166698 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8016973C 0016669C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80169740 001666A0 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80169744 001666A4 7C 08 03 A6 */ mtlr r0 +/* 80169748 001666A8 38 21 00 30 */ addi r1, r1, 0x30 +/* 8016974C 001666AC 4E 80 00 20 */ blr + +.global sub_80169750 +sub_80169750: +/* 80169750 001666B0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80169754 001666B4 7C 08 02 A6 */ mflr r0 +/* 80169758 001666B8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8016975C 001666BC 38 A1 00 0C */ addi r5, r1, 0xc +/* 80169760 001666C0 88 01 00 08 */ lbz r0, 8(r1) +/* 80169764 001666C4 98 01 00 0C */ stb r0, 0xc(r1) +/* 80169768 001666C8 48 00 00 15 */ bl sub_8016977c +/* 8016976C 001666CC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80169770 001666D0 7C 08 03 A6 */ mtlr r0 +/* 80169774 001666D4 38 21 00 10 */ addi r1, r1, 0x10 +/* 80169778 001666D8 4E 80 00 20 */ blr + +.global sub_8016977c +sub_8016977c: +/* 8016977C 001666DC 80 A3 00 00 */ lwz r5, 0(r3) +/* 80169780 001666E0 54 80 18 38 */ slwi r0, r4, 3 +/* 80169784 001666E4 7C 05 02 14 */ add r0, r5, r0 +/* 80169788 001666E8 90 03 00 00 */ stw r0, 0(r3) +/* 8016978C 001666EC 4E 80 00 20 */ blr + +.global sub_80169790 +sub_80169790: +/* 80169790 001666F0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80169794 001666F4 7C 08 02 A6 */ mflr r0 +/* 80169798 001666F8 90 01 00 24 */ stw r0, 0x24(r1) +/* 8016979C 001666FC 38 A1 00 0C */ addi r5, r1, 0xc +/* 801697A0 00166700 88 E1 00 08 */ lbz r7, 8(r1) +/* 801697A4 00166704 80 C4 00 00 */ lwz r6, 0(r4) +/* 801697A8 00166708 38 81 00 10 */ addi r4, r1, 0x10 +/* 801697AC 0016670C 80 03 00 00 */ lwz r0, 0(r3) +/* 801697B0 00166710 38 61 00 14 */ addi r3, r1, 0x14 +/* 801697B4 00166714 90 C1 00 10 */ stw r6, 0x10(r1) +/* 801697B8 00166718 98 E1 00 0C */ stb r7, 0xc(r1) +/* 801697BC 0016671C 90 01 00 14 */ stw r0, 0x14(r1) +/* 801697C0 00166720 48 00 00 15 */ bl sub_801697d4 +/* 801697C4 00166724 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801697C8 00166728 7C 08 03 A6 */ mtlr r0 +/* 801697CC 0016672C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801697D0 00166730 4E 80 00 20 */ blr + +.global sub_801697d4 +sub_801697d4: +/* 801697D4 00166734 80 63 00 00 */ lwz r3, 0(r3) +/* 801697D8 00166738 80 04 00 00 */ lwz r0, 0(r4) +/* 801697DC 0016673C 7C 03 00 50 */ subf r0, r3, r0 +/* 801697E0 00166740 7C 00 1E 70 */ srawi r0, r0, 3 +/* 801697E4 00166744 7C 60 01 94 */ addze r3, r0 +/* 801697E8 00166748 4E 80 00 20 */ blr + +.global sub_801697ec +sub_801697ec: +/* 801697EC 0016674C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801697F0 00166750 80 E4 00 00 */ lwz r7, 0(r4) +/* 801697F4 00166754 81 03 00 00 */ lwz r8, 0(r3) +/* 801697F8 00166758 54 E6 01 BE */ clrlwi r6, r7, 6 +/* 801697FC 0016675C 55 00 01 BE */ clrlwi r0, r8, 6 +/* 80169800 00166760 7C 06 00 40 */ cmplw r6, r0 +/* 80169804 00166764 40 80 00 24 */ bge lbl_80169828 +/* 80169808 00166768 88 C3 00 04 */ lbz r6, 4(r3) +/* 8016980C 0016676C 91 01 00 08 */ stw r8, 8(r1) +/* 80169810 00166770 90 E3 00 00 */ stw r7, 0(r3) +/* 80169814 00166774 88 04 00 04 */ lbz r0, 4(r4) +/* 80169818 00166778 98 C1 00 0C */ stb r6, 0xc(r1) +/* 8016981C 0016677C 98 03 00 04 */ stb r0, 4(r3) +/* 80169820 00166780 91 04 00 00 */ stw r8, 0(r4) +/* 80169824 00166784 98 C4 00 04 */ stb r6, 4(r4) +lbl_80169828: +/* 80169828 00166788 81 25 00 00 */ lwz r9, 0(r5) +/* 8016982C 0016678C 80 E4 00 00 */ lwz r7, 0(r4) +/* 80169830 00166790 55 28 01 BE */ clrlwi r8, r9, 6 +/* 80169834 00166794 54 E0 01 BE */ clrlwi r0, r7, 6 +/* 80169838 00166798 7C 08 00 40 */ cmplw r8, r0 +/* 8016983C 0016679C 40 80 00 4C */ bge lbl_80169888 +/* 80169840 001667A0 88 C5 00 04 */ lbz r6, 4(r5) +/* 80169844 001667A4 91 21 00 10 */ stw r9, 0x10(r1) +/* 80169848 001667A8 90 E5 00 00 */ stw r7, 0(r5) +/* 8016984C 001667AC 88 04 00 04 */ lbz r0, 4(r4) +/* 80169850 001667B0 98 C1 00 14 */ stb r6, 0x14(r1) +/* 80169854 001667B4 98 05 00 04 */ stb r0, 4(r5) +/* 80169858 001667B8 80 A3 00 00 */ lwz r5, 0(r3) +/* 8016985C 001667BC 54 A0 01 BE */ clrlwi r0, r5, 6 +/* 80169860 001667C0 7C 08 00 40 */ cmplw r8, r0 +/* 80169864 001667C4 40 80 00 1C */ bge lbl_80169880 +/* 80169868 001667C8 90 A4 00 00 */ stw r5, 0(r4) +/* 8016986C 001667CC 88 03 00 04 */ lbz r0, 4(r3) +/* 80169870 001667D0 98 04 00 04 */ stb r0, 4(r4) +/* 80169874 001667D4 91 23 00 00 */ stw r9, 0(r3) +/* 80169878 001667D8 98 C3 00 04 */ stb r6, 4(r3) +/* 8016987C 001667DC 48 00 00 0C */ b lbl_80169888 +lbl_80169880: +/* 80169880 001667E0 91 24 00 00 */ stw r9, 0(r4) +/* 80169884 001667E4 98 C4 00 04 */ stb r6, 4(r4) +lbl_80169888: +/* 80169888 001667E8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8016988C 001667EC 4E 80 00 20 */ blr + +.global sub_80169890 +sub_80169890: +/* 80169890 001667F0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80169894 001667F4 80 C3 00 00 */ lwz r6, 0(r3) +/* 80169898 001667F8 38 C6 00 08 */ addi r6, r6, 8 +/* 8016989C 001667FC 48 00 00 6C */ b lbl_80169908 +lbl_801698A0: +/* 801698A0 00166800 80 A6 00 00 */ lwz r5, 0(r6) +/* 801698A4 00166804 7C C8 33 78 */ mr r8, r6 +/* 801698A8 00166808 88 06 00 04 */ lbz r0, 4(r6) +/* 801698AC 0016680C 38 E6 FF F8 */ addi r7, r6, -8 +/* 801698B0 00166810 90 A1 00 08 */ stw r5, 8(r1) +/* 801698B4 00166814 54 A5 01 BE */ clrlwi r5, r5, 6 +/* 801698B8 00166818 98 01 00 0C */ stb r0, 0xc(r1) +/* 801698BC 0016681C 48 00 00 1C */ b lbl_801698D8 +lbl_801698C0: +/* 801698C0 00166820 80 07 00 00 */ lwz r0, 0(r7) +/* 801698C4 00166824 90 08 00 00 */ stw r0, 0(r8) +/* 801698C8 00166828 88 07 00 04 */ lbz r0, 4(r7) +/* 801698CC 0016682C 38 E7 FF F8 */ addi r7, r7, -8 +/* 801698D0 00166830 98 08 00 04 */ stb r0, 4(r8) +/* 801698D4 00166834 39 08 FF F8 */ addi r8, r8, -8 +lbl_801698D8: +/* 801698D8 00166838 80 03 00 00 */ lwz r0, 0(r3) +/* 801698DC 0016683C 7C 00 40 40 */ cmplw r0, r8 +/* 801698E0 00166840 40 80 00 14 */ bge lbl_801698F4 +/* 801698E4 00166844 80 07 00 00 */ lwz r0, 0(r7) +/* 801698E8 00166848 54 00 01 BE */ clrlwi r0, r0, 6 +/* 801698EC 0016684C 7C 05 00 40 */ cmplw r5, r0 +/* 801698F0 00166850 41 80 FF D0 */ blt lbl_801698C0 +lbl_801698F4: +/* 801698F4 00166854 80 A1 00 08 */ lwz r5, 8(r1) +/* 801698F8 00166858 38 C6 00 08 */ addi r6, r6, 8 +/* 801698FC 0016685C 88 01 00 0C */ lbz r0, 0xc(r1) +/* 80169900 00166860 90 A8 00 00 */ stw r5, 0(r8) +/* 80169904 00166864 98 08 00 04 */ stb r0, 4(r8) +lbl_80169908: +/* 80169908 00166868 80 04 00 00 */ lwz r0, 0(r4) +/* 8016990C 0016686C 7C 06 00 40 */ cmplw r6, r0 +/* 80169910 00166870 41 80 FF 90 */ blt lbl_801698A0 +/* 80169914 00166874 38 21 00 10 */ addi r1, r1, 0x10 +/* 80169918 00166878 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CDrone.s b/asm/Kyoto_CWD/Enemies/CDrone.s new file mode 100644 index 00000000..fe37c95e --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CDrone.s @@ -0,0 +1,9726 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__6CDroneFv +__dt__6CDroneFv: +/* 8015EE50 0015BDB0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8015EE54 0015BDB4 7C 08 02 A6 */ mflr r0 +/* 8015EE58 0015BDB8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015EE5C 0015BDBC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8015EE60 0015BDC0 7C 9F 23 78 */ mr r31, r4 +/* 8015EE64 0015BDC4 93 C1 00 08 */ stw r30, 8(r1) +/* 8015EE68 0015BDC8 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8015EE6C 0015BDCC 41 82 02 C0 */ beq lbl_8015F12C +/* 8015EE70 0015BDD0 3C 60 80 3E */ lis r3, lbl_803E36A8@ha +/* 8015EE74 0015BDD4 34 1E 08 2C */ addic. r0, r30, 0x82c +/* 8015EE78 0015BDD8 38 03 36 A8 */ addi r0, r3, lbl_803E36A8@l +/* 8015EE7C 0015BDDC 90 1E 00 00 */ stw r0, 0(r30) +/* 8015EE80 0015BDE0 41 82 00 10 */ beq lbl_8015EE90 +/* 8015EE84 0015BDE4 80 7E 08 2C */ lwz r3, 0x82c(r30) +/* 8015EE88 0015BDE8 38 80 00 01 */ li r4, 1 +/* 8015EE8C 0015BDEC 4B FB 7B C1 */ bl __dt__10CModelDataFv +lbl_8015EE90: +/* 8015EE90 0015BDF0 34 1E 08 24 */ addic. r0, r30, 0x824 +/* 8015EE94 0015BDF4 41 82 00 58 */ beq lbl_8015EEEC +/* 8015EE98 0015BDF8 80 BE 08 24 */ lwz r5, 0x824(r30) +/* 8015EE9C 0015BDFC 38 60 00 00 */ li r3, 0 +/* 8015EEA0 0015BE00 2C 05 00 00 */ cmpwi r5, 0 +/* 8015EEA4 0015BE04 40 81 00 40 */ ble lbl_8015EEE4 +/* 8015EEA8 0015BE08 2C 05 00 08 */ cmpwi r5, 8 +/* 8015EEAC 0015BE0C 38 85 FF F8 */ addi r4, r5, -8 +/* 8015EEB0 0015BE10 40 81 00 20 */ ble lbl_8015EED0 +/* 8015EEB4 0015BE14 38 04 00 07 */ addi r0, r4, 7 +/* 8015EEB8 0015BE18 54 00 E8 FE */ srwi r0, r0, 3 +/* 8015EEBC 0015BE1C 7C 09 03 A6 */ mtctr r0 +/* 8015EEC0 0015BE20 2C 04 00 00 */ cmpwi r4, 0 +/* 8015EEC4 0015BE24 40 81 00 0C */ ble lbl_8015EED0 +lbl_8015EEC8: +/* 8015EEC8 0015BE28 38 63 00 08 */ addi r3, r3, 8 +/* 8015EECC 0015BE2C 42 00 FF FC */ bdnz lbl_8015EEC8 +lbl_8015EED0: +/* 8015EED0 0015BE30 7C 03 28 50 */ subf r0, r3, r5 +/* 8015EED4 0015BE34 7C 09 03 A6 */ mtctr r0 +/* 8015EED8 0015BE38 7C 03 28 00 */ cmpw r3, r5 +/* 8015EEDC 0015BE3C 40 80 00 08 */ bge lbl_8015EEE4 +lbl_8015EEE0: +/* 8015EEE0 0015BE40 42 00 00 00 */ bdnz lbl_8015EEE0 +lbl_8015EEE4: +/* 8015EEE4 0015BE44 38 00 00 00 */ li r0, 0 +/* 8015EEE8 0015BE48 90 1E 08 24 */ stw r0, 0x824(r30) +lbl_8015EEEC: +/* 8015EEEC 0015BE4C 34 1E 08 18 */ addic. r0, r30, 0x818 +/* 8015EEF0 0015BE50 41 82 00 58 */ beq lbl_8015EF48 +/* 8015EEF4 0015BE54 80 BE 08 18 */ lwz r5, 0x818(r30) +/* 8015EEF8 0015BE58 38 60 00 00 */ li r3, 0 +/* 8015EEFC 0015BE5C 2C 05 00 00 */ cmpwi r5, 0 +/* 8015EF00 0015BE60 40 81 00 40 */ ble lbl_8015EF40 +/* 8015EF04 0015BE64 2C 05 00 08 */ cmpwi r5, 8 +/* 8015EF08 0015BE68 38 85 FF F8 */ addi r4, r5, -8 +/* 8015EF0C 0015BE6C 40 81 00 20 */ ble lbl_8015EF2C +/* 8015EF10 0015BE70 38 04 00 07 */ addi r0, r4, 7 +/* 8015EF14 0015BE74 54 00 E8 FE */ srwi r0, r0, 3 +/* 8015EF18 0015BE78 7C 09 03 A6 */ mtctr r0 +/* 8015EF1C 0015BE7C 2C 04 00 00 */ cmpwi r4, 0 +/* 8015EF20 0015BE80 40 81 00 0C */ ble lbl_8015EF2C +lbl_8015EF24: +/* 8015EF24 0015BE84 38 63 00 08 */ addi r3, r3, 8 +/* 8015EF28 0015BE88 42 00 FF FC */ bdnz lbl_8015EF24 +lbl_8015EF2C: +/* 8015EF2C 0015BE8C 7C 03 28 50 */ subf r0, r3, r5 +/* 8015EF30 0015BE90 7C 09 03 A6 */ mtctr r0 +/* 8015EF34 0015BE94 7C 03 28 00 */ cmpw r3, r5 +/* 8015EF38 0015BE98 40 80 00 08 */ bge lbl_8015EF40 +lbl_8015EF3C: +/* 8015EF3C 0015BE9C 42 00 00 00 */ bdnz lbl_8015EF3C +lbl_8015EF40: +/* 8015EF40 0015BEA0 38 00 00 00 */ li r0, 0 +/* 8015EF44 0015BEA4 90 1E 08 18 */ stw r0, 0x818(r30) +lbl_8015EF48: +/* 8015EF48 0015BEA8 34 1E 07 FC */ addic. r0, r30, 0x7fc +/* 8015EF4C 0015BEAC 41 82 00 58 */ beq lbl_8015EFA4 +/* 8015EF50 0015BEB0 80 BE 07 FC */ lwz r5, 0x7fc(r30) +/* 8015EF54 0015BEB4 38 60 00 00 */ li r3, 0 +/* 8015EF58 0015BEB8 2C 05 00 00 */ cmpwi r5, 0 +/* 8015EF5C 0015BEBC 40 81 00 40 */ ble lbl_8015EF9C +/* 8015EF60 0015BEC0 2C 05 00 08 */ cmpwi r5, 8 +/* 8015EF64 0015BEC4 38 85 FF F8 */ addi r4, r5, -8 +/* 8015EF68 0015BEC8 40 81 00 20 */ ble lbl_8015EF88 +/* 8015EF6C 0015BECC 38 04 00 07 */ addi r0, r4, 7 +/* 8015EF70 0015BED0 54 00 E8 FE */ srwi r0, r0, 3 +/* 8015EF74 0015BED4 7C 09 03 A6 */ mtctr r0 +/* 8015EF78 0015BED8 2C 04 00 00 */ cmpwi r4, 0 +/* 8015EF7C 0015BEDC 40 81 00 0C */ ble lbl_8015EF88 +lbl_8015EF80: +/* 8015EF80 0015BEE0 38 63 00 08 */ addi r3, r3, 8 +/* 8015EF84 0015BEE4 42 00 FF FC */ bdnz lbl_8015EF80 +lbl_8015EF88: +/* 8015EF88 0015BEE8 7C 03 28 50 */ subf r0, r3, r5 +/* 8015EF8C 0015BEEC 7C 09 03 A6 */ mtctr r0 +/* 8015EF90 0015BEF0 7C 03 28 00 */ cmpw r3, r5 +/* 8015EF94 0015BEF4 40 80 00 08 */ bge lbl_8015EF9C +lbl_8015EF98: +/* 8015EF98 0015BEF8 42 00 00 00 */ bdnz lbl_8015EF98 +lbl_8015EF9C: +/* 8015EF9C 0015BEFC 38 00 00 00 */ li r0, 0 +/* 8015EFA0 0015BF00 90 1E 07 FC */ stw r0, 0x7fc(r30) +lbl_8015EFA4: +/* 8015EFA4 0015BF04 34 1E 07 E0 */ addic. r0, r30, 0x7e0 +/* 8015EFA8 0015BF08 41 82 00 58 */ beq lbl_8015F000 +/* 8015EFAC 0015BF0C 80 BE 07 E0 */ lwz r5, 0x7e0(r30) +/* 8015EFB0 0015BF10 38 60 00 00 */ li r3, 0 +/* 8015EFB4 0015BF14 2C 05 00 00 */ cmpwi r5, 0 +/* 8015EFB8 0015BF18 40 81 00 40 */ ble lbl_8015EFF8 +/* 8015EFBC 0015BF1C 2C 05 00 08 */ cmpwi r5, 8 +/* 8015EFC0 0015BF20 38 85 FF F8 */ addi r4, r5, -8 +/* 8015EFC4 0015BF24 40 81 00 20 */ ble lbl_8015EFE4 +/* 8015EFC8 0015BF28 38 04 00 07 */ addi r0, r4, 7 +/* 8015EFCC 0015BF2C 54 00 E8 FE */ srwi r0, r0, 3 +/* 8015EFD0 0015BF30 7C 09 03 A6 */ mtctr r0 +/* 8015EFD4 0015BF34 2C 04 00 00 */ cmpwi r4, 0 +/* 8015EFD8 0015BF38 40 81 00 0C */ ble lbl_8015EFE4 +lbl_8015EFDC: +/* 8015EFDC 0015BF3C 38 63 00 08 */ addi r3, r3, 8 +/* 8015EFE0 0015BF40 42 00 FF FC */ bdnz lbl_8015EFDC +lbl_8015EFE4: +/* 8015EFE4 0015BF44 7C 03 28 50 */ subf r0, r3, r5 +/* 8015EFE8 0015BF48 7C 09 03 A6 */ mtctr r0 +/* 8015EFEC 0015BF4C 7C 03 28 00 */ cmpw r3, r5 +/* 8015EFF0 0015BF50 40 80 00 08 */ bge lbl_8015EFF8 +lbl_8015EFF4: +/* 8015EFF4 0015BF54 42 00 00 00 */ bdnz lbl_8015EFF4 +lbl_8015EFF8: +/* 8015EFF8 0015BF58 38 00 00 00 */ li r0, 0 +/* 8015EFFC 0015BF5C 90 1E 07 E0 */ stw r0, 0x7e0(r30) +lbl_8015F000: +/* 8015F000 0015BF60 34 1E 07 D8 */ addic. r0, r30, 0x7d8 +/* 8015F004 0015BF64 41 82 00 58 */ beq lbl_8015F05C +/* 8015F008 0015BF68 80 BE 07 D8 */ lwz r5, 0x7d8(r30) +/* 8015F00C 0015BF6C 38 60 00 00 */ li r3, 0 +/* 8015F010 0015BF70 2C 05 00 00 */ cmpwi r5, 0 +/* 8015F014 0015BF74 40 81 00 40 */ ble lbl_8015F054 +/* 8015F018 0015BF78 2C 05 00 08 */ cmpwi r5, 8 +/* 8015F01C 0015BF7C 38 85 FF F8 */ addi r4, r5, -8 +/* 8015F020 0015BF80 40 81 00 20 */ ble lbl_8015F040 +/* 8015F024 0015BF84 38 04 00 07 */ addi r0, r4, 7 +/* 8015F028 0015BF88 54 00 E8 FE */ srwi r0, r0, 3 +/* 8015F02C 0015BF8C 7C 09 03 A6 */ mtctr r0 +/* 8015F030 0015BF90 2C 04 00 00 */ cmpwi r4, 0 +/* 8015F034 0015BF94 40 81 00 0C */ ble lbl_8015F040 +lbl_8015F038: +/* 8015F038 0015BF98 38 63 00 08 */ addi r3, r3, 8 +/* 8015F03C 0015BF9C 42 00 FF FC */ bdnz lbl_8015F038 +lbl_8015F040: +/* 8015F040 0015BFA0 7C 03 28 50 */ subf r0, r3, r5 +/* 8015F044 0015BFA4 7C 09 03 A6 */ mtctr r0 +/* 8015F048 0015BFA8 7C 03 28 00 */ cmpw r3, r5 +/* 8015F04C 0015BFAC 40 80 00 08 */ bge lbl_8015F054 +lbl_8015F050: +/* 8015F050 0015BFB0 42 00 00 00 */ bdnz lbl_8015F050 +lbl_8015F054: +/* 8015F054 0015BFB4 38 00 00 00 */ li r0, 0 +/* 8015F058 0015BFB8 90 1E 07 D8 */ stw r0, 0x7d8(r30) +lbl_8015F05C: +/* 8015F05C 0015BFBC 34 1E 06 B0 */ addic. r0, r30, 0x6b0 +/* 8015F060 0015BFC0 41 82 00 60 */ beq lbl_8015F0C0 +/* 8015F064 0015BFC4 34 1E 06 B4 */ addic. r0, r30, 0x6b4 +/* 8015F068 0015BFC8 41 82 00 58 */ beq lbl_8015F0C0 +/* 8015F06C 0015BFCC 80 BE 06 B4 */ lwz r5, 0x6b4(r30) +/* 8015F070 0015BFD0 38 60 00 00 */ li r3, 0 +/* 8015F074 0015BFD4 2C 05 00 00 */ cmpwi r5, 0 +/* 8015F078 0015BFD8 40 81 00 40 */ ble lbl_8015F0B8 +/* 8015F07C 0015BFDC 2C 05 00 08 */ cmpwi r5, 8 +/* 8015F080 0015BFE0 38 85 FF F8 */ addi r4, r5, -8 +/* 8015F084 0015BFE4 40 81 00 20 */ ble lbl_8015F0A4 +/* 8015F088 0015BFE8 38 04 00 07 */ addi r0, r4, 7 +/* 8015F08C 0015BFEC 54 00 E8 FE */ srwi r0, r0, 3 +/* 8015F090 0015BFF0 7C 09 03 A6 */ mtctr r0 +/* 8015F094 0015BFF4 2C 04 00 00 */ cmpwi r4, 0 +/* 8015F098 0015BFF8 40 81 00 0C */ ble lbl_8015F0A4 +lbl_8015F09C: +/* 8015F09C 0015BFFC 38 63 00 08 */ addi r3, r3, 8 +/* 8015F0A0 0015C000 42 00 FF FC */ bdnz lbl_8015F09C +lbl_8015F0A4: +/* 8015F0A4 0015C004 7C 03 28 50 */ subf r0, r3, r5 +/* 8015F0A8 0015C008 7C 09 03 A6 */ mtctr r0 +/* 8015F0AC 0015C00C 7C 03 28 00 */ cmpw r3, r5 +/* 8015F0B0 0015C010 40 80 00 08 */ bge lbl_8015F0B8 +lbl_8015F0B4: +/* 8015F0B4 0015C014 42 00 00 00 */ bdnz lbl_8015F0B4 +lbl_8015F0B8: +/* 8015F0B8 0015C018 38 00 00 00 */ li r0, 0 +/* 8015F0BC 0015C01C 90 1E 06 B4 */ stw r0, 0x6b4(r30) +lbl_8015F0C0: +/* 8015F0C0 0015C020 34 1E 06 90 */ addic. r0, r30, 0x690 +/* 8015F0C4 0015C024 41 82 00 24 */ beq lbl_8015F0E8 +/* 8015F0C8 0015C028 3C 60 80 3F */ lis r3, lbl_803ECAF8@ha +/* 8015F0CC 0015C02C 34 1E 06 90 */ addic. r0, r30, 0x690 +/* 8015F0D0 0015C030 38 03 CA F8 */ addi r0, r3, lbl_803ECAF8@l +/* 8015F0D4 0015C034 90 1E 06 90 */ stw r0, 0x690(r30) +/* 8015F0D8 0015C038 41 82 00 10 */ beq lbl_8015F0E8 +/* 8015F0DC 0015C03C 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 8015F0E0 0015C040 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l +/* 8015F0E4 0015C044 90 1E 06 90 */ stw r0, 0x690(r30) +lbl_8015F0E8: +/* 8015F0E8 0015C048 38 7E 05 7C */ addi r3, r30, 0x57c +/* 8015F0EC 0015C04C 38 80 FF FF */ li r4, -1 +/* 8015F0F0 0015C050 4B F6 E6 C9 */ bl sub_800cd7b8 +/* 8015F0F4 0015C054 34 1E 05 6C */ addic. r0, r30, 0x56c +/* 8015F0F8 0015C058 41 82 00 18 */ beq lbl_8015F110 +/* 8015F0FC 0015C05C 34 1E 05 6C */ addic. r0, r30, 0x56c +/* 8015F100 0015C060 41 82 00 10 */ beq lbl_8015F110 +/* 8015F104 0015C064 38 7E 05 6C */ addi r3, r30, 0x56c +/* 8015F108 0015C068 38 80 00 00 */ li r4, 0 +/* 8015F10C 0015C06C 48 1E 1D 35 */ bl __dt__6CTokenFv +lbl_8015F110: +/* 8015F110 0015C070 7F C3 F3 78 */ mr r3, r30 +/* 8015F114 0015C074 38 80 00 00 */ li r4, 0 +/* 8015F118 0015C078 4B F1 84 59 */ bl __dt__10CPatternedFv +/* 8015F11C 0015C07C 7F E0 07 35 */ extsh. r0, r31 +/* 8015F120 0015C080 40 81 00 0C */ ble lbl_8015F12C +/* 8015F124 0015C084 7F C3 F3 78 */ mr r3, r30 +/* 8015F128 0015C088 48 1B 68 09 */ bl Free__7CMemoryFPCv +lbl_8015F12C: +/* 8015F12C 0015C08C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8015F130 0015C090 7F C3 F3 78 */ mr r3, r30 +/* 8015F134 0015C094 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8015F138 0015C098 83 C1 00 08 */ lwz r30, 8(r1) +/* 8015F13C 0015C09C 7C 08 03 A6 */ mtlr r0 +/* 8015F140 0015C0A0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8015F144 0015C0A4 4E 80 00 20 */ blr + +.global GetSearchPath__6CDroneFv +GetSearchPath__6CDroneFv: +/* 8015F148 0015C0A8 38 63 06 B0 */ addi r3, r3, 0x6b0 +/* 8015F14C 0015C0AC 4E 80 00 20 */ blr + +.global sub_8015f150 +sub_8015f150: +/* 8015F150 0015C0B0 38 60 00 03 */ li r3, 3 +/* 8015F154 0015C0B4 4E 80 00 20 */ blr + +.global sub_8015f158 +sub_8015f158: +/* 8015F158 0015C0B8 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8015F15C 0015C0BC 7C 08 02 A6 */ mflr r0 +/* 8015F160 0015C0C0 90 01 00 44 */ stw r0, 0x44(r1) +/* 8015F164 0015C0C4 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 8015F168 0015C0C8 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 8015F16C 0015C0CC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8015F170 0015C0D0 7C 7F 1B 78 */ mr r31, r3 +/* 8015F174 0015C0D4 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 8015F178 0015C0D8 C0 43 06 30 */ lfs f2, 0x630(r3) +/* 8015F17C 0015C0DC FF E0 08 90 */ fmr f31, f1 +/* 8015F180 0015C0E0 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8015F184 0015C0E4 40 81 00 0C */ ble lbl_8015F190 +/* 8015F188 0015C0E8 EC 02 F8 28 */ fsubs f0, f2, f31 +/* 8015F18C 0015C0EC D0 1F 06 30 */ stfs f0, 0x630(r31) +lbl_8015F190: +/* 8015F190 0015C0F0 7F E4 FB 78 */ mr r4, r31 +/* 8015F194 0015C0F4 38 61 00 18 */ addi r3, r1, 0x18 +/* 8015F198 0015C0F8 4B EF 41 81 */ bl GetSfxHandle__6CActorCFv +/* 8015F19C 0015C0FC C0 02 9F 6C */ lfs f0, lbl_805ABC8C@sda21(r2) +/* 8015F1A0 0015C100 38 61 00 14 */ addi r3, r1, 0x14 +/* 8015F1A4 0015C104 80 01 00 18 */ lwz r0, 0x18(r1) +/* 8015F1A8 0015C108 38 81 00 10 */ addi r4, r1, 0x10 +/* 8015F1AC 0015C10C EC 5F 00 24 */ fdivs f2, f31, f0 +/* 8015F1B0 0015C110 C0 3F 06 34 */ lfs f1, 0x634(r31) +/* 8015F1B4 0015C114 C0 1F 06 38 */ lfs f0, 0x638(r31) +/* 8015F1B8 0015C118 38 A1 00 1C */ addi r5, r1, 0x1c +/* 8015F1BC 0015C11C 90 01 00 20 */ stw r0, 0x20(r1) +/* 8015F1C0 0015C120 EC 21 00 28 */ fsubs f1, f1, f0 +/* 8015F1C4 0015C124 FC 00 10 50 */ fneg f0, f2 +/* 8015F1C8 0015C128 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 8015F1CC 0015C12C D0 21 00 10 */ stfs f1, 0x10(r1) +/* 8015F1D0 0015C130 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8015F1D4 0015C134 4B EA D0 E1 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8015F1D8 0015C138 C0 23 00 00 */ lfs f1, 0(r3) +/* 8015F1DC 0015C13C C0 1F 06 38 */ lfs f0, 0x638(r31) +/* 8015F1E0 0015C140 80 01 00 20 */ lwz r0, 0x20(r1) +/* 8015F1E4 0015C144 EC 00 08 2A */ fadds f0, f0, f1 +/* 8015F1E8 0015C148 28 00 00 00 */ cmplwi r0, 0 +/* 8015F1EC 0015C14C D0 1F 06 38 */ stfs f0, 0x638(r31) +/* 8015F1F0 0015C150 41 82 00 50 */ beq lbl_8015F240 +/* 8015F1F4 0015C154 C0 42 9F 74 */ lfs f2, lbl_805ABC94@sda21(r2) +/* 8015F1F8 0015C158 C0 3F 06 38 */ lfs f1, 0x638(r31) +/* 8015F1FC 0015C15C C0 02 9F 70 */ lfs f0, lbl_805ABC90@sda21(r2) +/* 8015F200 0015C160 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 8015F204 0015C164 48 22 A7 51 */ bl __cvt_fp2unsigned +/* 8015F208 0015C168 88 1F 08 35 */ lbz r0, 0x835(r31) +/* 8015F20C 0015C16C 7C 64 1B 78 */ mr r4, r3 +/* 8015F210 0015C170 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8015F214 0015C174 41 82 00 1C */ beq lbl_8015F230 +/* 8015F218 0015C178 80 01 00 20 */ lwz r0, 0x20(r1) +/* 8015F21C 0015C17C 38 61 00 0C */ addi r3, r1, 0xc +/* 8015F220 0015C180 38 84 E0 00 */ addi r4, r4, -8192 +/* 8015F224 0015C184 90 01 00 0C */ stw r0, 0xc(r1) +/* 8015F228 0015C188 48 18 9C 85 */ bl PitchBend__11CSfxManagerF10CSfxHandlei +/* 8015F22C 0015C18C 48 00 00 14 */ b lbl_8015F240 +lbl_8015F230: +/* 8015F230 0015C190 80 01 00 20 */ lwz r0, 0x20(r1) +/* 8015F234 0015C194 38 61 00 08 */ addi r3, r1, 8 +/* 8015F238 0015C198 90 01 00 08 */ stw r0, 8(r1) +/* 8015F23C 0015C19C 48 18 9C 71 */ bl PitchBend__11CSfxManagerF10CSfxHandlei +lbl_8015F240: +/* 8015F240 0015C1A0 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 8015F244 0015C1A4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8015F248 0015C1A8 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 8015F24C 0015C1AC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8015F250 0015C1B0 7C 08 03 A6 */ mtlr r0 +/* 8015F254 0015C1B4 38 21 00 40 */ addi r1, r1, 0x40 +/* 8015F258 0015C1B8 4E 80 00 20 */ blr + +.global sub_8015f25c +sub_8015f25c: +/* 8015F25C 0015C1BC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8015F260 0015C1C0 7C 08 02 A6 */ mflr r0 +/* 8015F264 0015C1C4 90 01 00 34 */ stw r0, 0x34(r1) +/* 8015F268 0015C1C8 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 8015F26C 0015C1CC F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 8015F270 0015C1D0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8015F274 0015C1D4 7C 7F 1B 78 */ mr r31, r3 +/* 8015F278 0015C1D8 FF E0 08 90 */ fmr f31, f1 +/* 8015F27C 0015C1DC 88 63 08 32 */ lbz r3, 0x832(r3) +/* 8015F280 0015C1E0 7C 86 23 78 */ mr r6, r4 +/* 8015F284 0015C1E4 54 60 D8 06 */ rlwinm r0, r3, 0x1b, 0, 3 +/* 8015F288 0015C1E8 7C 00 EE 70 */ srawi r0, r0, 0x1d +/* 8015F28C 0015C1EC 2C 00 00 02 */ cmpwi r0, 2 +/* 8015F290 0015C1F0 41 82 00 68 */ beq lbl_8015F2F8 +/* 8015F294 0015C1F4 40 80 00 14 */ bge lbl_8015F2A8 +/* 8015F298 0015C1F8 2C 00 00 00 */ cmpwi r0, 0 +/* 8015F29C 0015C1FC 41 82 00 18 */ beq lbl_8015F2B4 +/* 8015F2A0 0015C200 40 80 00 34 */ bge lbl_8015F2D4 +/* 8015F2A4 0015C204 48 00 00 CC */ b lbl_8015F370 +lbl_8015F2A8: +/* 8015F2A8 0015C208 2C 00 00 04 */ cmpwi r0, 4 +/* 8015F2AC 0015C20C 40 80 00 C4 */ bge lbl_8015F370 +/* 8015F2B0 0015C210 48 00 00 88 */ b lbl_8015F338 +lbl_8015F2B4: +/* 8015F2B4 0015C214 C0 3F 06 28 */ lfs f1, 0x628(r31) +/* 8015F2B8 0015C218 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 8015F2BC 0015C21C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8015F2C0 0015C220 40 81 00 B0 */ ble lbl_8015F370 +/* 8015F2C4 0015C224 38 00 00 02 */ li r0, 2 +/* 8015F2C8 0015C228 50 03 16 FA */ rlwimi r3, r0, 2, 0x1b, 0x1d +/* 8015F2CC 0015C22C 98 7F 08 32 */ stb r3, 0x832(r31) +/* 8015F2D0 0015C230 48 00 00 A0 */ b lbl_8015F370 +lbl_8015F2D4: +/* 8015F2D4 0015C234 C0 3F 06 28 */ lfs f1, 0x628(r31) +/* 8015F2D8 0015C238 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 8015F2DC 0015C23C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8015F2E0 0015C240 4C 40 13 82 */ cror 2, 0, 2 +/* 8015F2E4 0015C244 40 82 00 8C */ bne lbl_8015F370 +/* 8015F2E8 0015C248 38 00 00 03 */ li r0, 3 +/* 8015F2EC 0015C24C 50 03 16 FA */ rlwimi r3, r0, 2, 0x1b, 0x1d +/* 8015F2F0 0015C250 98 7F 08 32 */ stb r3, 0x832(r31) +/* 8015F2F4 0015C254 48 00 00 7C */ b lbl_8015F370 +lbl_8015F2F8: +/* 8015F2F8 0015C258 C0 02 9F 78 */ lfs f0, lbl_805ABC98@sda21(r2) +/* 8015F2FC 0015C25C C0 5F 06 2C */ lfs f2, 0x62c(r31) +/* 8015F300 0015C260 EC 3F 00 24 */ fdivs f1, f31, f0 +/* 8015F304 0015C264 C0 02 9F 7C */ lfs f0, lbl_805ABC9C@sda21(r2) +/* 8015F308 0015C268 EC 22 08 2A */ fadds f1, f2, f1 +/* 8015F30C 0015C26C D0 3F 06 2C */ stfs f1, 0x62c(r31) +/* 8015F310 0015C270 C0 3F 06 2C */ lfs f1, 0x62c(r31) +/* 8015F314 0015C274 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8015F318 0015C278 4C 41 13 82 */ cror 2, 1, 2 +/* 8015F31C 0015C27C 40 82 00 54 */ bne lbl_8015F370 +/* 8015F320 0015C280 D0 1F 06 2C */ stfs f0, 0x62c(r31) +/* 8015F324 0015C284 38 60 00 01 */ li r3, 1 +/* 8015F328 0015C288 88 1F 08 32 */ lbz r0, 0x832(r31) +/* 8015F32C 0015C28C 50 60 16 FA */ rlwimi r0, r3, 2, 0x1b, 0x1d +/* 8015F330 0015C290 98 1F 08 32 */ stb r0, 0x832(r31) +/* 8015F334 0015C294 48 00 00 3C */ b lbl_8015F370 +lbl_8015F338: +/* 8015F338 0015C298 C0 42 9F 80 */ lfs f2, lbl_805ABCA0@sda21(r2) +/* 8015F33C 0015C29C C0 3F 06 2C */ lfs f1, 0x62c(r31) +/* 8015F340 0015C2A0 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 8015F344 0015C2A4 EC 3F 08 BC */ fnmsubs f1, f31, f2, f1 +/* 8015F348 0015C2A8 D0 3F 06 2C */ stfs f1, 0x62c(r31) +/* 8015F34C 0015C2AC C0 3F 06 2C */ lfs f1, 0x62c(r31) +/* 8015F350 0015C2B0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8015F354 0015C2B4 4C 40 13 82 */ cror 2, 0, 2 +/* 8015F358 0015C2B8 40 82 00 18 */ bne lbl_8015F370 +/* 8015F35C 0015C2BC D0 1F 06 2C */ stfs f0, 0x62c(r31) +/* 8015F360 0015C2C0 38 60 00 00 */ li r3, 0 +/* 8015F364 0015C2C4 88 1F 08 32 */ lbz r0, 0x832(r31) +/* 8015F368 0015C2C8 50 60 16 FA */ rlwimi r0, r3, 2, 0x1b, 0x1d +/* 8015F36C 0015C2CC 98 1F 08 32 */ stb r0, 0x832(r31) +lbl_8015F370: +/* 8015F370 0015C2D0 80 66 08 B8 */ lwz r3, 0x8b8(r6) +/* 8015F374 0015C2D4 80 63 00 00 */ lwz r3, 0(r3) +/* 8015F378 0015C2D8 80 03 00 14 */ lwz r0, 0x14(r3) +/* 8015F37C 0015C2DC 2C 00 00 03 */ cmpwi r0, 3 +/* 8015F380 0015C2E0 40 82 00 40 */ bne lbl_8015F3C0 +/* 8015F384 0015C2E4 C0 3F 06 2C */ lfs f1, 0x62c(r31) +/* 8015F388 0015C2E8 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 8015F38C 0015C2EC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8015F390 0015C2F0 40 81 00 30 */ ble lbl_8015F3C0 +/* 8015F394 0015C2F4 C0 06 0F 28 */ lfs f0, 0xf28(r6) +/* 8015F398 0015C2F8 38 81 00 0C */ addi r4, r1, 0xc +/* 8015F39C 0015C2FC 38 A0 00 08 */ li r5, 8 +/* 8015F3A0 0015C300 EC 00 08 2A */ fadds f0, f0, f1 +/* 8015F3A4 0015C304 D0 06 0F 28 */ stfs f0, 0xf28(r6) +/* 8015F3A8 0015C308 80 66 08 4C */ lwz r3, 0x84c(r6) +/* 8015F3AC 0015C30C A0 03 03 10 */ lhz r0, 0x310(r3) +/* 8015F3B0 0015C310 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8015F3B4 0015C314 B0 01 00 08 */ sth r0, 8(r1) +/* 8015F3B8 0015C318 80 66 08 4C */ lwz r3, 0x84c(r6) +/* 8015F3BC 0015C31C 48 01 BE 99 */ bl SetOrbitRequestForTarget__7CPlayerF9TUniqueId19EPlayerOrbitRequestR13CStateManager +lbl_8015F3C0: +/* 8015F3C0 0015C320 C0 3F 06 28 */ lfs f1, 0x628(r31) +/* 8015F3C4 0015C324 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 8015F3C8 0015C328 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8015F3CC 0015C32C 40 81 00 0C */ ble lbl_8015F3D8 +/* 8015F3D0 0015C330 EC 01 F8 28 */ fsubs f0, f1, f31 +/* 8015F3D4 0015C334 D0 1F 06 28 */ stfs f0, 0x628(r31) +lbl_8015F3D8: +/* 8015F3D8 0015C338 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 8015F3DC 0015C33C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8015F3E0 0015C340 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 8015F3E4 0015C344 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8015F3E8 0015C348 7C 08 03 A6 */ mtlr r0 +/* 8015F3EC 0015C34C 38 21 00 30 */ addi r1, r1, 0x30 +/* 8015F3F0 0015C350 4E 80 00 20 */ blr + +.global sub_8015f3f4 +sub_8015f3f4: +/* 8015F3F4 0015C354 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8015F3F8 0015C358 7C 08 02 A6 */ mflr r0 +/* 8015F3FC 0015C35C 90 01 00 34 */ stw r0, 0x34(r1) +/* 8015F400 0015C360 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8015F404 0015C364 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8015F408 0015C368 7C 7E 1B 78 */ mr r30, r3 +/* 8015F40C 0015C36C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8015F410 0015C370 A0 63 06 88 */ lhz r3, 0x688(r3) +/* 8015F414 0015C374 7C 03 00 40 */ cmplw r3, r0 +/* 8015F418 0015C378 41 82 00 68 */ beq lbl_8015F480 +/* 8015F41C 0015C37C A0 1E 06 88 */ lhz r0, 0x688(r30) +/* 8015F420 0015C380 7C 83 23 78 */ mr r3, r4 +/* 8015F424 0015C384 38 81 00 18 */ addi r4, r1, 0x18 +/* 8015F428 0015C388 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8015F42C 0015C38C 4B EE D1 49 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8015F430 0015C390 7C 64 1B 78 */ mr r4, r3 +/* 8015F434 0015C394 38 61 00 1C */ addi r3, r1, 0x1c +/* 8015F438 0015C398 4B F4 81 3D */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 8015F43C 0015C39C 83 E3 00 04 */ lwz r31, 4(r3) +/* 8015F440 0015C3A0 28 1F 00 00 */ cmplwi r31, 0 +/* 8015F444 0015C3A4 41 82 00 3C */ beq lbl_8015F480 +/* 8015F448 0015C3A8 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8015F44C 0015C3AC 7F E3 FB 78 */ mr r3, r31 +/* 8015F450 0015C3B0 38 81 00 14 */ addi r4, r1, 0x14 +/* 8015F454 0015C3B4 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8015F458 0015C3B8 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8015F45C 0015C3BC 48 0D 9B 95 */ bl IsPartOfTeam__10CTeamAiMgrCF9TUniqueId +/* 8015F460 0015C3C0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8015F464 0015C3C4 41 82 00 1C */ beq lbl_8015F480 +/* 8015F468 0015C3C8 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8015F46C 0015C3CC 7F E3 FB 78 */ mr r3, r31 +/* 8015F470 0015C3D0 38 81 00 0C */ addi r4, r1, 0xc +/* 8015F474 0015C3D4 B0 01 00 08 */ sth r0, 8(r1) +/* 8015F478 0015C3D8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8015F47C 0015C3DC 48 0D A0 79 */ bl RemoveTeamAiRole__10CTeamAiMgrF9TUniqueId +lbl_8015F480: +/* 8015F480 0015C3E0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8015F484 0015C3E4 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8015F488 0015C3E8 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8015F48C 0015C3EC 7C 08 03 A6 */ mtlr r0 +/* 8015F490 0015C3F0 38 21 00 30 */ addi r1, r1, 0x30 +/* 8015F494 0015C3F4 4E 80 00 20 */ blr + +.global sub_8015f498 +sub_8015f498: +/* 8015F498 0015C3F8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8015F49C 0015C3FC 7C 08 02 A6 */ mflr r0 +/* 8015F4A0 0015C400 90 01 00 24 */ stw r0, 0x24(r1) +/* 8015F4A4 0015C404 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8015F4A8 0015C408 7C 7F 1B 78 */ mr r31, r3 +/* 8015F4AC 0015C40C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8015F4B0 0015C410 A0 63 06 88 */ lhz r3, 0x688(r3) +/* 8015F4B4 0015C414 7C 03 00 40 */ cmplw r3, r0 +/* 8015F4B8 0015C418 41 82 00 44 */ beq lbl_8015F4FC +/* 8015F4BC 0015C41C A0 1F 06 88 */ lhz r0, 0x688(r31) +/* 8015F4C0 0015C420 7C 83 23 78 */ mr r3, r4 +/* 8015F4C4 0015C424 38 81 00 08 */ addi r4, r1, 8 +/* 8015F4C8 0015C428 B0 01 00 08 */ sth r0, 8(r1) +/* 8015F4CC 0015C42C 4B EE D0 A9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8015F4D0 0015C430 7C 64 1B 78 */ mr r4, r3 +/* 8015F4D4 0015C434 38 61 00 0C */ addi r3, r1, 0xc +/* 8015F4D8 0015C438 4B F4 80 9D */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 8015F4DC 0015C43C 80 63 00 04 */ lwz r3, 4(r3) +/* 8015F4E0 0015C440 28 03 00 00 */ cmplwi r3, 0 +/* 8015F4E4 0015C444 41 82 00 18 */ beq lbl_8015F4FC +/* 8015F4E8 0015C448 7F E4 FB 78 */ mr r4, r31 +/* 8015F4EC 0015C44C 38 A0 00 02 */ li r5, 2 +/* 8015F4F0 0015C450 38 C0 00 01 */ li r6, 1 +/* 8015F4F4 0015C454 38 E0 FF FF */ li r7, -1 +/* 8015F4F8 0015C458 48 0D A2 B5 */ bl AssignTeamAiRole__10CTeamAiMgrFRC3CAiiii +lbl_8015F4FC: +/* 8015F4FC 0015C45C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8015F500 0015C460 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8015F504 0015C464 7C 08 03 A6 */ mtlr r0 +/* 8015F508 0015C468 38 21 00 20 */ addi r1, r1, 0x20 +/* 8015F50C 0015C46C 4E 80 00 20 */ blr + +.global sub_8015f510 +sub_8015f510: +/* 8015F510 0015C470 94 21 F7 50 */ stwu r1, -0x8b0(r1) +/* 8015F514 0015C474 7C 08 02 A6 */ mflr r0 +/* 8015F518 0015C478 90 01 08 B4 */ stw r0, 0x8b4(r1) +/* 8015F51C 0015C47C DB E1 08 A0 */ stfd f31, 0x8a0(r1) +/* 8015F520 0015C480 F3 E1 08 A8 */ psq_st f31, -1880(r1), 0, qr0 +/* 8015F524 0015C484 DB C1 08 90 */ stfd f30, 0x890(r1) +/* 8015F528 0015C488 F3 C1 08 98 */ psq_st f30, -1896(r1), 0, qr0 +/* 8015F52C 0015C48C DB A1 08 80 */ stfd f29, 0x880(r1) +/* 8015F530 0015C490 F3 A1 08 88 */ psq_st f29, -1912(r1), 0, qr0 +/* 8015F534 0015C494 DB 81 08 70 */ stfd f28, 0x870(r1) +/* 8015F538 0015C498 F3 81 08 78 */ psq_st f28, -1928(r1), 0, qr0 +/* 8015F53C 0015C49C 93 E1 08 6C */ stw r31, 0x86c(r1) +/* 8015F540 0015C4A0 93 C1 08 68 */ stw r30, 0x868(r1) +/* 8015F544 0015C4A4 93 A1 08 64 */ stw r29, 0x864(r1) +/* 8015F548 0015C4A8 93 81 08 60 */ stw r28, 0x860(r1) +/* 8015F54C 0015C4AC 7C 7F 1B 78 */ mr r31, r3 +/* 8015F550 0015C4B0 7C 9C 23 78 */ mr r28, r4 +/* 8015F554 0015C4B4 80 83 04 50 */ lwz r4, 0x450(r3) +/* 8015F558 0015C4B8 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 8015F55C 0015C4BC 2C 00 00 03 */ cmpwi r0, 3 +/* 8015F560 0015C4C0 41 82 02 EC */ beq lbl_8015F84C +/* 8015F564 0015C4C4 38 00 00 00 */ li r0, 0 +/* 8015F568 0015C4C8 7F 87 E3 78 */ mr r7, r28 +/* 8015F56C 0015C4CC 90 01 00 5C */ stw r0, 0x5c(r1) +/* 8015F570 0015C4D0 38 C1 00 5C */ addi r6, r1, 0x5c +/* 8015F574 0015C4D4 38 80 00 21 */ li r4, 0x21 +/* 8015F578 0015C4D8 38 A0 00 20 */ li r5, 0x20 +/* 8015F57C 0015C4DC 81 83 00 00 */ lwz r12, 0(r3) +/* 8015F580 0015C4E0 C0 3F 06 1C */ lfs f1, 0x61c(r31) +/* 8015F584 0015C4E4 81 8C 02 CC */ lwz r12, 0x2cc(r12) +/* 8015F588 0015C4E8 7D 89 03 A6 */ mtctr r12 +/* 8015F58C 0015C4EC 4E 80 04 21 */ bctrl +/* 8015F590 0015C4F0 80 01 00 5C */ lwz r0, 0x5c(r1) +/* 8015F594 0015C4F4 2C 00 00 00 */ cmpwi r0, 0 +/* 8015F598 0015C4F8 40 81 02 60 */ ble lbl_8015F7F8 +/* 8015F59C 0015C4FC 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8015F5A0 0015C500 C7 E3 66 A0 */ lfsu f31, skZero3f@l(r3) +/* 8015F5A4 0015C504 C3 82 9F 84 */ lfs f28, lbl_805ABCA4@sda21(r2) +/* 8015F5A8 0015C508 3B C1 00 60 */ addi r30, r1, 0x60 +/* 8015F5AC 0015C50C C3 C3 00 04 */ lfs f30, 4(r3) +/* 8015F5B0 0015C510 3B A0 00 00 */ li r29, 0 +/* 8015F5B4 0015C514 C3 A3 00 08 */ lfs f29, 8(r3) +/* 8015F5B8 0015C518 48 00 00 A0 */ b lbl_8015F658 +lbl_8015F5BC: +/* 8015F5BC 0015C51C A0 1E 00 00 */ lhz r0, 0(r30) +/* 8015F5C0 0015C520 7F 83 E3 78 */ mr r3, r28 +/* 8015F5C4 0015C524 38 81 00 08 */ addi r4, r1, 8 +/* 8015F5C8 0015C528 B0 01 00 08 */ sth r0, 8(r1) +/* 8015F5CC 0015C52C 4B EE CF D9 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8015F5D0 0015C530 28 03 00 00 */ cmplwi r3, 0 +/* 8015F5D4 0015C534 41 82 00 7C */ beq lbl_8015F650 +/* 8015F5D8 0015C538 C0 E3 00 50 */ lfs f7, 0x50(r3) +/* 8015F5DC 0015C53C C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 8015F5E0 0015C540 C0 83 00 40 */ lfs f4, 0x40(r3) +/* 8015F5E4 0015C544 EC C7 00 28 */ fsubs f6, f7, f0 +/* 8015F5E8 0015C548 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8015F5EC 0015C54C C1 03 00 60 */ lfs f8, 0x60(r3) +/* 8015F5F0 0015C550 EC 64 00 28 */ fsubs f3, f4, f0 +/* 8015F5F4 0015C554 C0 3F 00 60 */ lfs f1, 0x60(r31) +/* 8015F5F8 0015C558 EC 06 01 B2 */ fmuls f0, f6, f6 +/* 8015F5FC 0015C55C EC A8 08 28 */ fsubs f5, f8, f1 +/* 8015F600 0015C560 A0 7E 00 00 */ lhz r3, 0(r30) +/* 8015F604 0015C564 EC 23 00 F2 */ fmuls f1, f3, f3 +/* 8015F608 0015C568 A0 1F 00 08 */ lhz r0, 8(r31) +/* 8015F60C 0015C56C EC 45 01 72 */ fmuls f2, f5, f5 +/* 8015F610 0015C570 D0 81 00 44 */ stfs f4, 0x44(r1) +/* 8015F614 0015C574 EC 01 00 2A */ fadds f0, f1, f0 +/* 8015F618 0015C578 7C 03 00 40 */ cmplw r3, r0 +/* 8015F61C 0015C57C D0 E1 00 48 */ stfs f7, 0x48(r1) +/* 8015F620 0015C580 EC 02 00 2A */ fadds f0, f2, f0 +/* 8015F624 0015C584 D1 01 00 4C */ stfs f8, 0x4c(r1) +/* 8015F628 0015C588 D0 61 00 50 */ stfs f3, 0x50(r1) +/* 8015F62C 0015C58C D0 C1 00 54 */ stfs f6, 0x54(r1) +/* 8015F630 0015C590 D0 A1 00 58 */ stfs f5, 0x58(r1) +/* 8015F634 0015C594 41 82 00 1C */ beq lbl_8015F650 +/* 8015F638 0015C598 FC 00 E0 40 */ fcmpo cr0, f0, f28 +/* 8015F63C 0015C59C 40 80 00 14 */ bge lbl_8015F650 +/* 8015F640 0015C5A0 FF E0 20 90 */ fmr f31, f4 +/* 8015F644 0015C5A4 FF C0 38 90 */ fmr f30, f7 +/* 8015F648 0015C5A8 FF A0 40 90 */ fmr f29, f8 +/* 8015F64C 0015C5AC FF 80 00 90 */ fmr f28, f0 +lbl_8015F650: +/* 8015F650 0015C5B0 3B DE 00 02 */ addi r30, r30, 2 +/* 8015F654 0015C5B4 3B BD 00 01 */ addi r29, r29, 1 +lbl_8015F658: +/* 8015F658 0015C5B8 80 01 00 5C */ lwz r0, 0x5c(r1) +/* 8015F65C 0015C5BC 7C 1D 00 00 */ cmpw r29, r0 +/* 8015F660 0015C5C0 41 80 FF 5C */ blt lbl_8015F5BC +/* 8015F664 0015C5C4 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8015F668 0015C5C8 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 8015F66C 0015C5CC 38 00 00 00 */ li r0, 0 +/* 8015F670 0015C5D0 FC 1F 00 00 */ fcmpu cr0, f31, f0 +/* 8015F674 0015C5D4 40 82 00 20 */ bne lbl_8015F694 +/* 8015F678 0015C5D8 C0 03 00 04 */ lfs f0, 4(r3) +/* 8015F67C 0015C5DC FC 1E 00 00 */ fcmpu cr0, f30, f0 +/* 8015F680 0015C5E0 40 82 00 14 */ bne lbl_8015F694 +/* 8015F684 0015C5E4 C0 03 00 08 */ lfs f0, 8(r3) +/* 8015F688 0015C5E8 FC 1D 00 00 */ fcmpu cr0, f29, f0 +/* 8015F68C 0015C5EC 40 82 00 08 */ bne lbl_8015F694 +/* 8015F690 0015C5F0 38 00 00 01 */ li r0, 1 +lbl_8015F694: +/* 8015F694 0015C5F4 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8015F698 0015C5F8 40 82 01 60 */ bne lbl_8015F7F8 +/* 8015F69C 0015C5FC C0 1F 06 1C */ lfs f0, 0x61c(r31) +/* 8015F6A0 0015C600 EC 00 00 32 */ fmuls f0, f0, f0 +/* 8015F6A4 0015C604 FC 1C 00 40 */ fcmpo cr0, f28, f0 +/* 8015F6A8 0015C608 40 80 01 50 */ bge lbl_8015F7F8 +/* 8015F6AC 0015C60C C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 8015F6B0 0015C610 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8015F6B4 0015C614 EC BE 08 28 */ fsubs f5, f30, f1 +/* 8015F6B8 0015C618 C0 DF 00 44 */ lfs f6, 0x44(r31) +/* 8015F6BC 0015C61C EC 7F 00 28 */ fsubs f3, f31, f0 +/* 8015F6C0 0015C620 C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 8015F6C4 0015C624 C0 5F 00 34 */ lfs f2, 0x34(r31) +/* 8015F6C8 0015C628 EC 26 01 72 */ fmuls f1, f6, f5 +/* 8015F6CC 0015C62C EC 9D 00 28 */ fsubs f4, f29, f0 +/* 8015F6D0 0015C630 C0 FF 00 54 */ lfs f7, 0x54(r31) +/* 8015F6D4 0015C634 C0 02 9F 88 */ lfs f0, lbl_805ABCA8@sda21(r2) +/* 8015F6D8 0015C638 EC 22 08 FA */ fmadds f1, f2, f3, f1 +/* 8015F6DC 0015C63C D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 8015F6E0 0015C640 D0 A1 00 30 */ stfs f5, 0x30(r1) +/* 8015F6E4 0015C644 EC 27 09 3A */ fmadds f1, f7, f4, f1 +/* 8015F6E8 0015C648 D0 81 00 34 */ stfs f4, 0x34(r1) +/* 8015F6EC 0015C64C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8015F6F0 0015C650 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 8015F6F4 0015C654 D0 C1 00 3C */ stfs f6, 0x3c(r1) +/* 8015F6F8 0015C658 D0 E1 00 40 */ stfs f7, 0x40(r1) +/* 8015F6FC 0015C65C 40 80 00 7C */ bge lbl_8015F778 +/* 8015F700 0015C660 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 8015F704 0015C664 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8015F708 0015C668 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 8015F70C 0015C66C 3C 80 80 3E */ lis r4, lbl_803DA9E4@ha +/* 8015F710 0015C670 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8015F714 0015C674 38 C4 A9 E4 */ addi r6, r4, lbl_803DA9E4@l +/* 8015F718 0015C678 38 80 00 01 */ li r4, 1 +/* 8015F71C 0015C67C 38 A0 00 03 */ li r5, 3 +/* 8015F720 0015C680 38 00 00 00 */ li r0, 0 +/* 8015F724 0015C684 3B E3 00 04 */ addi r31, r3, 4 +/* 8015F728 0015C688 90 81 00 20 */ stw r4, 0x20(r1) +/* 8015F72C 0015C68C 7F E3 FB 78 */ mr r3, r31 +/* 8015F730 0015C690 38 80 00 01 */ li r4, 1 +/* 8015F734 0015C694 90 C1 00 1C */ stw r6, 0x1c(r1) +/* 8015F738 0015C698 90 A1 00 24 */ stw r5, 0x24(r1) +/* 8015F73C 0015C69C 90 01 00 28 */ stw r0, 0x28(r1) +/* 8015F740 0015C6A0 4B FD 1C F9 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8015F744 0015C6A4 80 01 00 20 */ lwz r0, 0x20(r1) +/* 8015F748 0015C6A8 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 8015F74C 0015C6AC 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l +/* 8015F750 0015C6B0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8015F754 0015C6B4 90 1F 00 C8 */ stw r0, 0xc8(r31) +/* 8015F758 0015C6B8 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8015F75C 0015C6BC 80 A1 00 24 */ lwz r5, 0x24(r1) +/* 8015F760 0015C6C0 90 81 00 1C */ stw r4, 0x1c(r1) +/* 8015F764 0015C6C4 80 61 00 28 */ lwz r3, 0x28(r1) +/* 8015F768 0015C6C8 90 BF 00 CC */ stw r5, 0xcc(r31) +/* 8015F76C 0015C6CC 90 7F 00 D0 */ stw r3, 0xd0(r31) +/* 8015F770 0015C6D0 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8015F774 0015C6D4 48 00 00 84 */ b lbl_8015F7F8 +lbl_8015F778: +/* 8015F778 0015C6D8 C0 02 9F 8C */ lfs f0, lbl_805ABCAC@sda21(r2) +/* 8015F77C 0015C6DC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8015F780 0015C6E0 40 81 00 78 */ ble lbl_8015F7F8 +/* 8015F784 0015C6E4 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 8015F788 0015C6E8 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8015F78C 0015C6EC 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 8015F790 0015C6F0 3C 80 80 3E */ lis r4, lbl_803DA9E4@ha +/* 8015F794 0015C6F4 90 01 00 0C */ stw r0, 0xc(r1) +/* 8015F798 0015C6F8 38 C4 A9 E4 */ addi r6, r4, lbl_803DA9E4@l +/* 8015F79C 0015C6FC 38 80 00 01 */ li r4, 1 +/* 8015F7A0 0015C700 38 A0 00 02 */ li r5, 2 +/* 8015F7A4 0015C704 38 00 00 00 */ li r0, 0 +/* 8015F7A8 0015C708 3B E3 00 04 */ addi r31, r3, 4 +/* 8015F7AC 0015C70C 90 81 00 10 */ stw r4, 0x10(r1) +/* 8015F7B0 0015C710 7F E3 FB 78 */ mr r3, r31 +/* 8015F7B4 0015C714 38 80 00 01 */ li r4, 1 +/* 8015F7B8 0015C718 90 C1 00 0C */ stw r6, 0xc(r1) +/* 8015F7BC 0015C71C 90 A1 00 14 */ stw r5, 0x14(r1) +/* 8015F7C0 0015C720 90 01 00 18 */ stw r0, 0x18(r1) +/* 8015F7C4 0015C724 4B FD 1C 75 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8015F7C8 0015C728 80 01 00 10 */ lwz r0, 0x10(r1) +/* 8015F7CC 0015C72C 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 8015F7D0 0015C730 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l +/* 8015F7D4 0015C734 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8015F7D8 0015C738 90 1F 00 C8 */ stw r0, 0xc8(r31) +/* 8015F7DC 0015C73C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8015F7E0 0015C740 80 A1 00 14 */ lwz r5, 0x14(r1) +/* 8015F7E4 0015C744 90 81 00 0C */ stw r4, 0xc(r1) +/* 8015F7E8 0015C748 80 61 00 18 */ lwz r3, 0x18(r1) +/* 8015F7EC 0015C74C 90 BF 00 CC */ stw r5, 0xcc(r31) +/* 8015F7F0 0015C750 90 7F 00 D0 */ stw r3, 0xd0(r31) +/* 8015F7F4 0015C754 90 01 00 0C */ stw r0, 0xc(r1) +lbl_8015F7F8: +/* 8015F7F8 0015C758 80 A1 00 5C */ lwz r5, 0x5c(r1) +/* 8015F7FC 0015C75C 38 60 00 00 */ li r3, 0 +/* 8015F800 0015C760 2C 05 00 00 */ cmpwi r5, 0 +/* 8015F804 0015C764 40 81 00 40 */ ble lbl_8015F844 +/* 8015F808 0015C768 2C 05 00 08 */ cmpwi r5, 8 +/* 8015F80C 0015C76C 38 85 FF F8 */ addi r4, r5, -8 +/* 8015F810 0015C770 40 81 00 20 */ ble lbl_8015F830 +/* 8015F814 0015C774 38 04 00 07 */ addi r0, r4, 7 +/* 8015F818 0015C778 54 00 E8 FE */ srwi r0, r0, 3 +/* 8015F81C 0015C77C 7C 09 03 A6 */ mtctr r0 +/* 8015F820 0015C780 2C 04 00 00 */ cmpwi r4, 0 +/* 8015F824 0015C784 40 81 00 0C */ ble lbl_8015F830 +lbl_8015F828: +/* 8015F828 0015C788 38 63 00 08 */ addi r3, r3, 8 +/* 8015F82C 0015C78C 42 00 FF FC */ bdnz lbl_8015F828 +lbl_8015F830: +/* 8015F830 0015C790 7C 03 28 50 */ subf r0, r3, r5 +/* 8015F834 0015C794 7C 09 03 A6 */ mtctr r0 +/* 8015F838 0015C798 7C 03 28 00 */ cmpw r3, r5 +/* 8015F83C 0015C79C 40 80 00 08 */ bge lbl_8015F844 +lbl_8015F840: +/* 8015F840 0015C7A0 42 00 00 00 */ bdnz lbl_8015F840 +lbl_8015F844: +/* 8015F844 0015C7A4 38 00 00 00 */ li r0, 0 +/* 8015F848 0015C7A8 90 01 00 5C */ stw r0, 0x5c(r1) +lbl_8015F84C: +/* 8015F84C 0015C7AC E3 E1 08 A8 */ psq_l f31, -1880(r1), 0, qr0 +/* 8015F850 0015C7B0 CB E1 08 A0 */ lfd f31, 0x8a0(r1) +/* 8015F854 0015C7B4 E3 C1 08 98 */ psq_l f30, -1896(r1), 0, qr0 +/* 8015F858 0015C7B8 CB C1 08 90 */ lfd f30, 0x890(r1) +/* 8015F85C 0015C7BC E3 A1 08 88 */ psq_l f29, -1912(r1), 0, qr0 +/* 8015F860 0015C7C0 CB A1 08 80 */ lfd f29, 0x880(r1) +/* 8015F864 0015C7C4 E3 81 08 78 */ psq_l f28, -1928(r1), 0, qr0 +/* 8015F868 0015C7C8 CB 81 08 70 */ lfd f28, 0x870(r1) +/* 8015F86C 0015C7CC 83 E1 08 6C */ lwz r31, 0x86c(r1) +/* 8015F870 0015C7D0 83 C1 08 68 */ lwz r30, 0x868(r1) +/* 8015F874 0015C7D4 83 A1 08 64 */ lwz r29, 0x864(r1) +/* 8015F878 0015C7D8 80 01 08 B4 */ lwz r0, 0x8b4(r1) +/* 8015F87C 0015C7DC 83 81 08 60 */ lwz r28, 0x860(r1) +/* 8015F880 0015C7E0 7C 08 03 A6 */ mtlr r0 +/* 8015F884 0015C7E4 38 21 08 B0 */ addi r1, r1, 0x8b0 +/* 8015F888 0015C7E8 4E 80 00 20 */ blr + +.global Burn__6CDroneFff +Burn__6CDroneFff: +/* 8015F88C 0015C7EC 4E 80 00 20 */ blr + +.global CanRenderUnsorted__6CDroneCFRC13CStateManager +CanRenderUnsorted__6CDroneCFRC13CStateManager: +/* 8015F890 0015C7F0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8015F894 0015C7F4 7C 08 02 A6 */ mflr r0 +/* 8015F898 0015C7F8 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 8015F89C 0015C7FC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015F8A0 0015C800 C0 02 9F 90 */ lfs f0, lbl_805ABCB0@sda21(r2) +/* 8015F8A4 0015C804 C0 43 05 DC */ lfs f2, 0x5dc(r3) +/* 8015F8A8 0015C808 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8015F8AC 0015C80C FC 20 0A 10 */ fabs f1, f1 +/* 8015F8B0 0015C810 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8015F8B4 0015C814 40 80 00 0C */ bge lbl_8015F8C0 +/* 8015F8B8 0015C818 4B F1 89 E9 */ bl CanRenderUnsorted__10CPatternedCFRC13CStateManager +/* 8015F8BC 0015C81C 48 00 00 08 */ b lbl_8015F8C4 +lbl_8015F8C0: +/* 8015F8C0 0015C820 38 60 00 00 */ li r3, 0 +lbl_8015F8C4: +/* 8015F8C4 0015C824 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8015F8C8 0015C828 7C 08 03 A6 */ mtlr r0 +/* 8015F8CC 0015C82C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8015F8D0 0015C830 4E 80 00 20 */ blr + +.global Cover__6CDroneFR13CStateManager9EStateMsgf +Cover__6CDroneFR13CStateManager9EStateMsgf: +/* 8015F8D4 0015C834 94 21 FE 90 */ stwu r1, -0x170(r1) +/* 8015F8D8 0015C838 7C 08 02 A6 */ mflr r0 +/* 8015F8DC 0015C83C 90 01 01 74 */ stw r0, 0x174(r1) +/* 8015F8E0 0015C840 DB E1 01 60 */ stfd f31, 0x160(r1) +/* 8015F8E4 0015C844 F3 E1 01 68 */ psq_st f31, 360(r1), 0, qr0 +/* 8015F8E8 0015C848 DB C1 01 50 */ stfd f30, 0x150(r1) +/* 8015F8EC 0015C84C F3 C1 01 58 */ psq_st f30, 344(r1), 0, qr0 +/* 8015F8F0 0015C850 DB A1 01 40 */ stfd f29, 0x140(r1) +/* 8015F8F4 0015C854 F3 A1 01 48 */ psq_st f29, 328(r1), 0, qr0 +/* 8015F8F8 0015C858 DB 81 01 30 */ stfd f28, 0x130(r1) +/* 8015F8FC 0015C85C F3 81 01 38 */ psq_st f28, 312(r1), 0, qr0 +/* 8015F900 0015C860 DB 61 01 20 */ stfd f27, 0x120(r1) +/* 8015F904 0015C864 F3 61 01 28 */ psq_st f27, 296(r1), 0, qr0 +/* 8015F908 0015C868 93 E1 01 1C */ stw r31, 0x11c(r1) +/* 8015F90C 0015C86C 93 C1 01 18 */ stw r30, 0x118(r1) +/* 8015F910 0015C870 93 A1 01 14 */ stw r29, 0x114(r1) +/* 8015F914 0015C874 FF 60 08 90 */ fmr f27, f1 +/* 8015F918 0015C878 2C 05 00 01 */ cmpwi r5, 1 +/* 8015F91C 0015C87C 7C 7D 1B 78 */ mr r29, r3 +/* 8015F920 0015C880 7C 9E 23 78 */ mr r30, r4 +/* 8015F924 0015C884 41 82 02 90 */ beq lbl_8015FBB4 +/* 8015F928 0015C888 40 80 00 10 */ bge lbl_8015F938 +/* 8015F92C 0015C88C 2C 05 00 00 */ cmpwi r5, 0 +/* 8015F930 0015C890 40 80 00 14 */ bge lbl_8015F944 +/* 8015F934 0015C894 48 00 03 F0 */ b lbl_8015FD24 +lbl_8015F938: +/* 8015F938 0015C898 2C 05 00 03 */ cmpwi r5, 3 +/* 8015F93C 0015C89C 40 80 03 E8 */ bge lbl_8015FD24 +/* 8015F940 0015C8A0 48 00 03 C8 */ b lbl_8015FD08 +lbl_8015F944: +/* 8015F944 0015C8A4 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8015F948 0015C8A8 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 8015F94C 0015C8AC C3 E2 9F 68 */ lfs f31, lbl_805ABC88@sda21(r2) +/* 8015F950 0015C8B0 3B E0 00 00 */ li r31, 0 +/* 8015F954 0015C8B4 D0 1D 06 7C */ stfs f0, 0x67c(r29) +/* 8015F958 0015C8B8 C0 03 00 04 */ lfs f0, 4(r3) +/* 8015F95C 0015C8BC D0 1D 06 80 */ stfs f0, 0x680(r29) +/* 8015F960 0015C8C0 C0 03 00 08 */ lfs f0, 8(r3) +/* 8015F964 0015C8C4 D0 1D 06 84 */ stfs f0, 0x684(r29) +/* 8015F968 0015C8C8 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 8015F96C 0015C8CC C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 8015F970 0015C8D0 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 8015F974 0015C8D4 D0 1D 06 70 */ stfs f0, 0x670(r29) +/* 8015F978 0015C8D8 D0 3D 06 74 */ stfs f1, 0x674(r29) +/* 8015F97C 0015C8DC D0 5D 06 78 */ stfs f2, 0x678(r29) +lbl_8015F980: +/* 8015F980 0015C8E0 C3 7D 06 48 */ lfs f27, 0x648(r29) +/* 8015F984 0015C8E4 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 8015F988 0015C8E8 48 1B 2B 55 */ bl Float__9CRandom16Fv +/* 8015F98C 0015C8EC C0 1D 06 4C */ lfs f0, 0x64c(r29) +/* 8015F990 0015C8F0 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 8015F994 0015C8F4 EC 00 D8 28 */ fsubs f0, f0, f27 +/* 8015F998 0015C8F8 EF C0 D8 7A */ fmadds f30, f0, f1, f27 +/* 8015F99C 0015C8FC 48 1B 2B 85 */ bl Next__9CRandom16Fv +/* 8015F9A0 0015C900 54 60 EF FF */ rlwinm. r0, r3, 0x1d, 0x1f, 0x1f +/* 8015F9A4 0015C904 D3 E1 00 08 */ stfs f31, 8(r1) +/* 8015F9A8 0015C908 41 82 00 38 */ beq lbl_8015F9E0 +/* 8015F9AC 0015C90C C0 42 9F 94 */ lfs f2, lbl_805ABCB4@sda21(r2) +/* 8015F9B0 0015C910 C0 3D 06 50 */ lfs f1, 0x650(r29) +/* 8015F9B4 0015C914 C0 1D 06 54 */ lfs f0, 0x654(r29) +/* 8015F9B8 0015C918 EF 62 08 28 */ fsubs f27, f2, f1 +/* 8015F9BC 0015C91C 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 8015F9C0 0015C920 EF 82 00 2A */ fadds f28, f2, f0 +/* 8015F9C4 0015C924 48 1B 2B 19 */ bl Float__9CRandom16Fv +/* 8015F9C8 0015C928 EC 5C D8 28 */ fsubs f2, f28, f27 +/* 8015F9CC 0015C92C C0 02 9F 98 */ lfs f0, lbl_805ABCB8@sda21(r2) +/* 8015F9D0 0015C930 EC 22 D8 7A */ fmadds f1, f2, f1, f27 +/* 8015F9D4 0015C934 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8015F9D8 0015C938 D0 01 00 08 */ stfs f0, 8(r1) +/* 8015F9DC 0015C93C 48 00 00 34 */ b lbl_8015FA10 +lbl_8015F9E0: +/* 8015F9E0 0015C940 C0 42 9F 9C */ lfs f2, lbl_805ABCBC@sda21(r2) +/* 8015F9E4 0015C944 C0 3D 06 54 */ lfs f1, 0x654(r29) +/* 8015F9E8 0015C948 C0 1D 06 50 */ lfs f0, 0x650(r29) +/* 8015F9EC 0015C94C EF 62 08 28 */ fsubs f27, f2, f1 +/* 8015F9F0 0015C950 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 8015F9F4 0015C954 EF 82 00 2A */ fadds f28, f2, f0 +/* 8015F9F8 0015C958 48 1B 2A E5 */ bl Float__9CRandom16Fv +/* 8015F9FC 0015C95C EC 5C D8 28 */ fsubs f2, f28, f27 +/* 8015FA00 0015C960 C0 02 9F 98 */ lfs f0, lbl_805ABCB8@sda21(r2) +/* 8015FA04 0015C964 EC 22 D8 7A */ fmadds f1, f2, f1, f27 +/* 8015FA08 0015C968 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8015FA0C 0015C96C D0 01 00 08 */ stfs f0, 8(r1) +lbl_8015FA10: +/* 8015FA10 0015C970 80 9E 08 4C */ lwz r4, 0x84c(r30) +/* 8015FA14 0015C974 7F C5 F3 78 */ mr r5, r30 +/* 8015FA18 0015C978 38 61 00 94 */ addi r3, r1, 0x94 +/* 8015FA1C 0015C97C C3 7D 00 60 */ lfs f27, 0x60(r29) +/* 8015FA20 0015C980 81 84 00 00 */ lwz r12, 0(r4) +/* 8015FA24 0015C984 C3 9D 00 50 */ lfs f28, 0x50(r29) +/* 8015FA28 0015C988 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8015FA2C 0015C98C C3 BD 00 40 */ lfs f29, 0x40(r29) +/* 8015FA30 0015C990 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 8015FA34 0015C994 7D 89 03 A6 */ mtctr r12 +/* 8015FA38 0015C998 4E 80 04 21 */ bctrl +/* 8015FA3C 0015C99C C0 41 00 98 */ lfs f2, 0x98(r1) +/* 8015FA40 0015C9A0 38 61 00 AC */ addi r3, r1, 0xac +/* 8015FA44 0015C9A4 C0 21 00 9C */ lfs f1, 0x9c(r1) +/* 8015FA48 0015C9A8 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 8015FA4C 0015C9AC C0 01 00 94 */ lfs f0, 0x94(r1) +/* 8015FA50 0015C9B0 EC 42 E0 28 */ fsubs f2, f2, f28 +/* 8015FA54 0015C9B4 EC 21 D8 28 */ fsubs f1, f1, f27 +/* 8015FA58 0015C9B8 EC 00 E8 28 */ fsubs f0, f0, f29 +/* 8015FA5C 0015C9BC D0 41 00 A4 */ stfs f2, 0xa4(r1) +/* 8015FA60 0015C9C0 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 8015FA64 0015C9C4 D0 21 00 A8 */ stfs f1, 0xa8(r1) +/* 8015FA68 0015C9C8 48 1B 4D E9 */ bl AsNormalized__9CVector3fCFv +/* 8015FA6C 0015C9CC C0 41 00 B0 */ lfs f2, 0xb0(r1) +/* 8015FA70 0015C9D0 38 61 00 78 */ addi r3, r1, 0x78 +/* 8015FA74 0015C9D4 C0 21 00 B4 */ lfs f1, 0xb4(r1) +/* 8015FA78 0015C9D8 38 81 00 08 */ addi r4, r1, 8 +/* 8015FA7C 0015C9DC C0 01 00 AC */ lfs f0, 0xac(r1) +/* 8015FA80 0015C9E0 EC 5E 00 B2 */ fmuls f2, f30, f2 +/* 8015FA84 0015C9E4 EC 3E 00 72 */ fmuls f1, f30, f1 +/* 8015FA88 0015C9E8 EC 1E 00 32 */ fmuls f0, f30, f0 +/* 8015FA8C 0015C9EC D0 41 00 70 */ stfs f2, 0x70(r1) +/* 8015FA90 0015C9F0 D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 8015FA94 0015C9F4 D0 21 00 74 */ stfs f1, 0x74(r1) +/* 8015FA98 0015C9F8 48 1B 16 61 */ bl ZRotation__11CQuaternionFRC9CRelAngle +/* 8015FA9C 0015C9FC 38 61 00 88 */ addi r3, r1, 0x88 +/* 8015FAA0 0015CA00 38 81 00 78 */ addi r4, r1, 0x78 +/* 8015FAA4 0015CA04 38 A1 00 6C */ addi r5, r1, 0x6c +/* 8015FAA8 0015CA08 48 1B 17 BD */ bl Transform__11CQuaternionCFRC9CVector3f +/* 8015FAAC 0015CA0C C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 8015FAB0 0015CA10 38 60 00 00 */ li r3, 0 +/* 8015FAB4 0015CA14 C0 01 00 8C */ lfs f0, 0x8c(r1) +/* 8015FAB8 0015CA18 38 80 00 01 */ li r4, 1 +/* 8015FABC 0015CA1C C0 7D 00 60 */ lfs f3, 0x60(r29) +/* 8015FAC0 0015CA20 EC 81 00 2A */ fadds f4, f1, f0 +/* 8015FAC4 0015CA24 C0 41 00 90 */ lfs f2, 0x90(r1) +/* 8015FAC8 0015CA28 C0 3D 00 40 */ lfs f1, 0x40(r29) +/* 8015FACC 0015CA2C C0 01 00 88 */ lfs f0, 0x88(r1) +/* 8015FAD0 0015CA30 EC 43 10 2A */ fadds f2, f3, f2 +/* 8015FAD4 0015CA34 80 AD 8D 84 */ lwz r5, lbl_805A7944@sda21(r13) +/* 8015FAD8 0015CA38 EC 01 00 2A */ fadds f0, f1, f0 +/* 8015FADC 0015CA3C D0 81 00 D4 */ stfs f4, 0xd4(r1) +/* 8015FAE0 0015CA40 D0 41 00 D8 */ stfs f2, 0xd8(r1) +/* 8015FAE4 0015CA44 D0 01 00 D0 */ stfs f0, 0xd0(r1) +/* 8015FAE8 0015CA48 48 22 A4 0D */ bl __shl2i +/* 8015FAEC 0015CA4C 39 00 00 00 */ li r8, 0 +/* 8015FAF0 0015CA50 38 00 00 01 */ li r0, 1 +/* 8015FAF4 0015CA54 90 81 00 FC */ stw r4, 0xfc(r1) +/* 8015FAF8 0015CA58 7F A7 EB 78 */ mr r7, r29 +/* 8015FAFC 0015CA5C 38 81 00 60 */ addi r4, r1, 0x60 +/* 8015FB00 0015CA60 38 A1 00 D0 */ addi r5, r1, 0xd0 +/* 8015FB04 0015CA64 90 61 00 F8 */ stw r3, 0xf8(r1) +/* 8015FB08 0015CA68 7F C3 F3 78 */ mr r3, r30 +/* 8015FB0C 0015CA6C 38 C1 00 F8 */ addi r6, r1, 0xf8 +/* 8015FB10 0015CA70 91 01 01 04 */ stw r8, 0x104(r1) +/* 8015FB14 0015CA74 91 01 01 00 */ stw r8, 0x100(r1) +/* 8015FB18 0015CA78 90 01 01 08 */ stw r0, 0x108(r1) +/* 8015FB1C 0015CA7C C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 8015FB20 0015CA80 C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 8015FB24 0015CA84 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 8015FB28 0015CA88 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 8015FB2C 0015CA8C D0 21 00 64 */ stfs f1, 0x64(r1) +/* 8015FB30 0015CA90 D0 41 00 68 */ stfs f2, 0x68(r1) +/* 8015FB34 0015CA94 4B EE D3 09 */ bl RayCollideWorld__13CStateManagerFRC9CVector3fRC9CVector3fRC15CMaterialFilterPC6CActor +/* 8015FB38 0015CA98 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8015FB3C 0015CA9C 41 82 00 68 */ beq lbl_8015FBA4 +/* 8015FB40 0015CAA0 C0 01 00 D0 */ lfs f0, 0xd0(r1) +/* 8015FB44 0015CAA4 38 7D 06 7C */ addi r3, r29, 0x67c +/* 8015FB48 0015CAA8 D0 1D 06 70 */ stfs f0, 0x670(r29) +/* 8015FB4C 0015CAAC C0 01 00 D4 */ lfs f0, 0xd4(r1) +/* 8015FB50 0015CAB0 D0 1D 06 74 */ stfs f0, 0x674(r29) +/* 8015FB54 0015CAB4 C0 01 00 D8 */ lfs f0, 0xd8(r1) +/* 8015FB58 0015CAB8 D0 1D 06 78 */ stfs f0, 0x678(r29) +/* 8015FB5C 0015CABC C0 21 00 D0 */ lfs f1, 0xd0(r1) +/* 8015FB60 0015CAC0 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 8015FB64 0015CAC4 C0 81 00 D4 */ lfs f4, 0xd4(r1) +/* 8015FB68 0015CAC8 C0 7D 00 50 */ lfs f3, 0x50(r29) +/* 8015FB6C 0015CACC EC 01 00 28 */ fsubs f0, f1, f0 +/* 8015FB70 0015CAD0 C0 41 00 D8 */ lfs f2, 0xd8(r1) +/* 8015FB74 0015CAD4 C0 3D 00 60 */ lfs f1, 0x60(r29) +/* 8015FB78 0015CAD8 EC 64 18 28 */ fsubs f3, f4, f3 +/* 8015FB7C 0015CADC D0 1D 06 7C */ stfs f0, 0x67c(r29) +/* 8015FB80 0015CAE0 EC 02 08 28 */ fsubs f0, f2, f1 +/* 8015FB84 0015CAE4 D0 7D 06 80 */ stfs f3, 0x680(r29) +/* 8015FB88 0015CAE8 D0 1D 06 84 */ stfs f0, 0x684(r29) +/* 8015FB8C 0015CAEC 48 1B 4B 6D */ bl CanBeNormalized__9CVector3fCFv +/* 8015FB90 0015CAF0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8015FB94 0015CAF4 41 82 01 90 */ beq lbl_8015FD24 +/* 8015FB98 0015CAF8 38 7D 06 7C */ addi r3, r29, 0x67c +/* 8015FB9C 0015CAFC 48 1B 4D 5D */ bl Normalize__9CVector3fFv +/* 8015FBA0 0015CB00 48 00 01 84 */ b lbl_8015FD24 +lbl_8015FBA4: +/* 8015FBA4 0015CB04 3B FF 00 01 */ addi r31, r31, 1 +/* 8015FBA8 0015CB08 2C 1F 00 04 */ cmpwi r31, 4 +/* 8015FBAC 0015CB0C 41 80 FD D4 */ blt lbl_8015F980 +/* 8015FBB0 0015CB10 48 00 01 74 */ b lbl_8015FD24 +lbl_8015FBB4: +/* 8015FBB4 0015CB14 C0 7D 06 58 */ lfs f3, 0x658(r29) +/* 8015FBB8 0015CB18 38 61 00 48 */ addi r3, r1, 0x48 +/* 8015FBBC 0015CB1C C0 5D 06 80 */ lfs f2, 0x680(r29) +/* 8015FBC0 0015CB20 38 9D 00 34 */ addi r4, r29, 0x34 +/* 8015FBC4 0015CB24 C0 3D 06 84 */ lfs f1, 0x684(r29) +/* 8015FBC8 0015CB28 38 A1 00 C4 */ addi r5, r1, 0xc4 +/* 8015FBCC 0015CB2C C0 1D 06 7C */ lfs f0, 0x67c(r29) +/* 8015FBD0 0015CB30 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 8015FBD4 0015CB34 EC 23 00 72 */ fmuls f1, f3, f1 +/* 8015FBD8 0015CB38 EC 03 00 32 */ fmuls f0, f3, f0 +/* 8015FBDC 0015CB3C EC 5B 00 B2 */ fmuls f2, f27, f2 +/* 8015FBE0 0015CB40 EC 3B 00 72 */ fmuls f1, f27, f1 +/* 8015FBE4 0015CB44 EC 1B 00 32 */ fmuls f0, f27, f0 +/* 8015FBE8 0015CB48 D0 41 00 C8 */ stfs f2, 0xc8(r1) +/* 8015FBEC 0015CB4C D0 01 00 C4 */ stfs f0, 0xc4(r1) +/* 8015FBF0 0015CB50 D0 21 00 CC */ stfs f1, 0xcc(r1) +/* 8015FBF4 0015CB54 48 1B 2E 31 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 8015FBF8 0015CB58 FC 20 D8 90 */ fmr f1, f27 +/* 8015FBFC 0015CB5C 7F A4 EB 78 */ mr r4, r29 +/* 8015FC00 0015CB60 38 61 00 54 */ addi r3, r1, 0x54 +/* 8015FC04 0015CB64 38 A1 00 48 */ addi r5, r1, 0x48 +/* 8015FC08 0015CB68 4B FB B4 01 */ bl GetMoveToORImpulseWR__13CPhysicsActorCFRC9CVector3ff +/* 8015FC0C 0015CB6C C0 41 00 54 */ lfs f2, 0x54(r1) +/* 8015FC10 0015CB70 C0 21 00 58 */ lfs f1, 0x58(r1) +/* 8015FC14 0015CB74 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 8015FC18 0015CB78 D0 41 00 B8 */ stfs f2, 0xb8(r1) +/* 8015FC1C 0015CB7C D0 21 00 BC */ stfs f1, 0xbc(r1) +/* 8015FC20 0015CB80 D0 01 00 C0 */ stfs f0, 0xc0(r1) +/* 8015FC24 0015CB84 4B EB B9 11 */ bl Identity__10CAxisAngleFv +/* 8015FC28 0015CB88 7C 65 1B 78 */ mr r5, r3 +/* 8015FC2C 0015CB8C 7F A3 EB 78 */ mr r3, r29 +/* 8015FC30 0015CB90 38 81 00 B8 */ addi r4, r1, 0xb8 +/* 8015FC34 0015CB94 4B FB C7 65 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +/* 8015FC38 0015CB98 80 9E 08 4C */ lwz r4, 0x84c(r30) +/* 8015FC3C 0015CB9C 7F C5 F3 78 */ mr r5, r30 +/* 8015FC40 0015CBA0 38 61 00 24 */ addi r3, r1, 0x24 +/* 8015FC44 0015CBA4 C3 BD 00 60 */ lfs f29, 0x60(r29) +/* 8015FC48 0015CBA8 81 84 00 00 */ lwz r12, 0(r4) +/* 8015FC4C 0015CBAC C3 9D 00 50 */ lfs f28, 0x50(r29) +/* 8015FC50 0015CBB0 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8015FC54 0015CBB4 C3 7D 00 40 */ lfs f27, 0x40(r29) +/* 8015FC58 0015CBB8 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 8015FC5C 0015CBBC 7D 89 03 A6 */ mtctr r12 +/* 8015FC60 0015CBC0 4E 80 04 21 */ bctrl +/* 8015FC64 0015CBC4 C0 41 00 24 */ lfs f2, 0x24(r1) +/* 8015FC68 0015CBC8 38 61 00 3C */ addi r3, r1, 0x3c +/* 8015FC6C 0015CBCC C0 21 00 28 */ lfs f1, 0x28(r1) +/* 8015FC70 0015CBD0 38 81 00 30 */ addi r4, r1, 0x30 +/* 8015FC74 0015CBD4 C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 8015FC78 0015CBD8 EC 42 D8 28 */ fsubs f2, f2, f27 +/* 8015FC7C 0015CBDC EC 21 E0 28 */ fsubs f1, f1, f28 +/* 8015FC80 0015CBE0 EC 00 E8 28 */ fsubs f0, f0, f29 +/* 8015FC84 0015CBE4 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 8015FC88 0015CBE8 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 8015FC8C 0015CBEC D0 01 00 38 */ stfs f0, 0x38(r1) +/* 8015FC90 0015CBF0 48 1B 4B C1 */ bl AsNormalized__9CVector3fCFv +/* 8015FC94 0015CBF4 C1 3D 00 58 */ lfs f9, 0x58(r29) +/* 8015FC98 0015CBF8 38 81 00 DC */ addi r4, r1, 0xdc +/* 8015FC9C 0015CBFC C1 1D 00 48 */ lfs f8, 0x48(r29) +/* 8015FCA0 0015CC00 C0 02 9F A0 */ lfs f0, lbl_805ABCC0@sda21(r2) +/* 8015FCA4 0015CC04 C0 BD 00 38 */ lfs f5, 0x38(r29) +/* 8015FCA8 0015CC08 EC E0 02 32 */ fmuls f7, f0, f8 +/* 8015FCAC 0015CC0C C0 61 00 3C */ lfs f3, 0x3c(r1) +/* 8015FCB0 0015CC10 EC C0 02 72 */ fmuls f6, f0, f9 +/* 8015FCB4 0015CC14 C0 41 00 40 */ lfs f2, 0x40(r1) +/* 8015FCB8 0015CC18 EC 80 01 72 */ fmuls f4, f0, f5 +/* 8015FCBC 0015CC1C C0 21 00 44 */ lfs f1, 0x44(r1) +/* 8015FCC0 0015CC20 C0 02 9F 7C */ lfs f0, lbl_805ABC9C@sda21(r2) +/* 8015FCC4 0015CC24 D0 81 00 DC */ stfs f4, 0xdc(r1) +/* 8015FCC8 0015CC28 D0 E1 00 E0 */ stfs f7, 0xe0(r1) +/* 8015FCCC 0015CC2C D0 C1 00 E4 */ stfs f6, 0xe4(r1) +/* 8015FCD0 0015CC30 D0 61 00 E8 */ stfs f3, 0xe8(r1) +/* 8015FCD4 0015CC34 D0 41 00 EC */ stfs f2, 0xec(r1) +/* 8015FCD8 0015CC38 D0 21 00 F0 */ stfs f1, 0xf0(r1) +/* 8015FCDC 0015CC3C D0 01 00 F4 */ stfs f0, 0xf4(r1) +/* 8015FCE0 0015CC40 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8015FCE4 0015CC44 D0 A1 00 0C */ stfs f5, 0xc(r1) +/* 8015FCE8 0015CC48 38 63 00 04 */ addi r3, r3, 4 +/* 8015FCEC 0015CC4C D1 01 00 10 */ stfs f8, 0x10(r1) +/* 8015FCF0 0015CC50 D1 21 00 14 */ stfs f9, 0x14(r1) +/* 8015FCF4 0015CC54 D0 81 00 18 */ stfs f4, 0x18(r1) +/* 8015FCF8 0015CC58 D0 E1 00 1C */ stfs f7, 0x1c(r1) +/* 8015FCFC 0015CC5C D0 C1 00 20 */ stfs f6, 0x20(r1) +/* 8015FD00 0015CC60 4B FD 1A 19 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 8015FD04 0015CC64 48 00 00 20 */ b lbl_8015FD24 +lbl_8015FD08: +/* 8015FD08 0015CC68 C3 7D 06 3C */ lfs f27, 0x63c(r29) +/* 8015FD0C 0015CC6C 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 8015FD10 0015CC70 48 1B 27 CD */ bl Float__9CRandom16Fv +/* 8015FD14 0015CC74 C0 1D 06 40 */ lfs f0, 0x640(r29) +/* 8015FD18 0015CC78 EC 00 D8 28 */ fsubs f0, f0, f27 +/* 8015FD1C 0015CC7C EC 00 D8 7A */ fmadds f0, f0, f1, f27 +/* 8015FD20 0015CC80 D0 1D 06 44 */ stfs f0, 0x644(r29) +lbl_8015FD24: +/* 8015FD24 0015CC84 E3 E1 01 68 */ psq_l f31, 360(r1), 0, qr0 +/* 8015FD28 0015CC88 CB E1 01 60 */ lfd f31, 0x160(r1) +/* 8015FD2C 0015CC8C E3 C1 01 58 */ psq_l f30, 344(r1), 0, qr0 +/* 8015FD30 0015CC90 CB C1 01 50 */ lfd f30, 0x150(r1) +/* 8015FD34 0015CC94 E3 A1 01 48 */ psq_l f29, 328(r1), 0, qr0 +/* 8015FD38 0015CC98 CB A1 01 40 */ lfd f29, 0x140(r1) +/* 8015FD3C 0015CC9C E3 81 01 38 */ psq_l f28, 312(r1), 0, qr0 +/* 8015FD40 0015CCA0 CB 81 01 30 */ lfd f28, 0x130(r1) +/* 8015FD44 0015CCA4 E3 61 01 28 */ psq_l f27, 296(r1), 0, qr0 +/* 8015FD48 0015CCA8 CB 61 01 20 */ lfd f27, 0x120(r1) +/* 8015FD4C 0015CCAC 83 E1 01 1C */ lwz r31, 0x11c(r1) +/* 8015FD50 0015CCB0 83 C1 01 18 */ lwz r30, 0x118(r1) +/* 8015FD54 0015CCB4 80 01 01 74 */ lwz r0, 0x174(r1) +/* 8015FD58 0015CCB8 83 A1 01 14 */ lwz r29, 0x114(r1) +/* 8015FD5C 0015CCBC 7C 08 03 A6 */ mtlr r0 +/* 8015FD60 0015CCC0 38 21 01 70 */ addi r1, r1, 0x170 +/* 8015FD64 0015CCC4 4E 80 00 20 */ blr + +.global CoverCheck__6CDroneFR13CStateManagerf +CoverCheck__6CDroneFR13CStateManagerf: +/* 8015FD68 0015CCC8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8015FD6C 0015CCCC 7C 08 02 A6 */ mflr r0 +/* 8015FD70 0015CCD0 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8015FD74 0015CCD4 C0 22 9F A4 */ lfs f1, lbl_805ABCC4@sda21(r2) +/* 8015FD78 0015CCD8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015FD7C 0015CCDC 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 8015FD80 0015CCE0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8015FD84 0015CCE4 7C 7F 1B 78 */ mr r31, r3 +/* 8015FD88 0015CCE8 38 7F 06 7C */ addi r3, r31, 0x67c +/* 8015FD8C 0015CCEC 48 1B 01 D9 */ bl close_enough__FRC9CVector3fRC9CVector3ff +/* 8015FD90 0015CCF0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8015FD94 0015CCF4 41 82 00 0C */ beq lbl_8015FDA0 +/* 8015FD98 0015CCF8 38 60 00 01 */ li r3, 1 +/* 8015FD9C 0015CCFC 48 00 00 6C */ b lbl_8015FE08 +lbl_8015FDA0: +/* 8015FDA0 0015CD00 C0 3F 06 74 */ lfs f1, 0x674(r31) +/* 8015FDA4 0015CD04 38 60 00 00 */ li r3, 0 +/* 8015FDA8 0015CD08 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 8015FDAC 0015CD0C C0 7F 06 70 */ lfs f3, 0x670(r31) +/* 8015FDB0 0015CD10 C0 5F 00 40 */ lfs f2, 0x40(r31) +/* 8015FDB4 0015CD14 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8015FDB8 0015CD18 C0 1F 06 80 */ lfs f0, 0x680(r31) +/* 8015FDBC 0015CD1C EC A3 10 28 */ fsubs f5, f3, f2 +/* 8015FDC0 0015CD20 C0 7F 06 78 */ lfs f3, 0x678(r31) +/* 8015FDC4 0015CD24 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8015FDC8 0015CD28 EC 00 01 32 */ fmuls f0, f0, f4 +/* 8015FDCC 0015CD2C C0 3F 06 7C */ lfs f1, 0x67c(r31) +/* 8015FDD0 0015CD30 EC 63 10 28 */ fsubs f3, f3, f2 +/* 8015FDD4 0015CD34 EC 21 01 7A */ fmadds f1, f1, f5, f0 +/* 8015FDD8 0015CD38 C0 5F 06 84 */ lfs f2, 0x684(r31) +/* 8015FDDC 0015CD3C C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 8015FDE0 0015CD40 EC 22 08 FA */ fmadds f1, f2, f3, f1 +/* 8015FDE4 0015CD44 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8015FDE8 0015CD48 41 80 00 1C */ blt lbl_8015FE04 +/* 8015FDEC 0015CD4C EC 24 01 32 */ fmuls f1, f4, f4 +/* 8015FDF0 0015CD50 C0 02 9F 78 */ lfs f0, lbl_805ABC98@sda21(r2) +/* 8015FDF4 0015CD54 EC 25 09 7A */ fmadds f1, f5, f5, f1 +/* 8015FDF8 0015CD58 EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 8015FDFC 0015CD5C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8015FE00 0015CD60 40 80 00 08 */ bge lbl_8015FE08 +lbl_8015FE04: +/* 8015FE04 0015CD64 38 60 00 01 */ li r3, 1 +lbl_8015FE08: +/* 8015FE08 0015CD68 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8015FE0C 0015CD6C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8015FE10 0015CD70 7C 08 03 A6 */ mtlr r0 +/* 8015FE14 0015CD74 38 21 00 10 */ addi r1, r1, 0x10 +/* 8015FE18 0015CD78 4E 80 00 20 */ blr + +.global ShouldMove__6CDroneFR13CStateManagerf +ShouldMove__6CDroneFR13CStateManagerf: +/* 8015FE1C 0015CD7C C0 23 06 44 */ lfs f1, 0x644(r3) +/* 8015FE20 0015CD80 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 8015FE24 0015CD84 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8015FE28 0015CD88 4C 40 13 82 */ cror 2, 0, 2 +/* 8015FE2C 0015CD8C 7C 00 00 26 */ mfcr r0 +/* 8015FE30 0015CD90 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f +/* 8015FE34 0015CD94 4E 80 00 20 */ blr + +.global Leash__6CDroneFR13CStateManagerf +Leash__6CDroneFR13CStateManagerf: +/* 8015FE38 0015CD98 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8015FE3C 0015CD9C 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 8015FE40 0015CDA0 C0 03 03 C8 */ lfs f0, 0x3c8(r3) +/* 8015FE44 0015CDA4 C0 E4 00 50 */ lfs f7, 0x50(r4) +/* 8015FE48 0015CDA8 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 8015FE4C 0015CDAC EC 00 00 32 */ fmuls f0, f0, f0 +/* 8015FE50 0015CDB0 C0 44 00 40 */ lfs f2, 0x40(r4) +/* 8015FE54 0015CDB4 EC C7 08 28 */ fsubs f6, f7, f1 +/* 8015FE58 0015CDB8 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 8015FE5C 0015CDBC C1 04 00 60 */ lfs f8, 0x60(r4) +/* 8015FE60 0015CDC0 EC 82 08 28 */ fsubs f4, f2, f1 +/* 8015FE64 0015CDC4 C0 63 00 60 */ lfs f3, 0x60(r3) +/* 8015FE68 0015CDC8 D0 41 00 08 */ stfs f2, 8(r1) +/* 8015FE6C 0015CDCC EC A8 18 28 */ fsubs f5, f8, f3 +/* 8015FE70 0015CDD0 EC 26 01 B2 */ fmuls f1, f6, f6 +/* 8015FE74 0015CDD4 D0 E1 00 0C */ stfs f7, 0xc(r1) +/* 8015FE78 0015CDD8 EC 44 01 32 */ fmuls f2, f4, f4 +/* 8015FE7C 0015CDDC EC 65 01 72 */ fmuls f3, f5, f5 +/* 8015FE80 0015CDE0 D1 01 00 10 */ stfs f8, 0x10(r1) +/* 8015FE84 0015CDE4 EC 22 08 2A */ fadds f1, f2, f1 +/* 8015FE88 0015CDE8 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 8015FE8C 0015CDEC D0 C1 00 18 */ stfs f6, 0x18(r1) +/* 8015FE90 0015CDF0 EC 23 08 2A */ fadds f1, f3, f1 +/* 8015FE94 0015CDF4 D0 A1 00 1C */ stfs f5, 0x1c(r1) +/* 8015FE98 0015CDF8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8015FE9C 0015CDFC 7C 00 00 26 */ mfcr r0 +/* 8015FEA0 0015CE00 54 03 0F FE */ srwi r3, r0, 0x1f +/* 8015FEA4 0015CE04 38 21 00 20 */ addi r1, r1, 0x20 +/* 8015FEA8 0015CE08 4E 80 00 20 */ blr + +.global TargetPlayer__6CDroneFR13CStateManager9EStateMsgf +TargetPlayer__6CDroneFR13CStateManager9EStateMsgf: +/* 8015FEAC 0015CE0C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8015FEB0 0015CE10 7C 08 02 A6 */ mflr r0 +/* 8015FEB4 0015CE14 2C 05 00 01 */ cmpwi r5, 1 +/* 8015FEB8 0015CE18 90 01 00 44 */ stw r0, 0x44(r1) +/* 8015FEBC 0015CE1C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8015FEC0 0015CE20 7C 7F 1B 78 */ mr r31, r3 +/* 8015FEC4 0015CE24 41 82 00 10 */ beq lbl_8015FED4 +/* 8015FEC8 0015CE28 40 80 00 84 */ bge lbl_8015FF4C +/* 8015FECC 0015CE2C 48 00 00 80 */ b lbl_8015FF4C +/* 8015FED0 0015CE30 48 00 00 7C */ b lbl_8015FF4C +lbl_8015FED4: +/* 8015FED4 0015CE34 C0 3F 05 E4 */ lfs f1, 0x5e4(r31) +/* 8015FED8 0015CE38 38 61 00 08 */ addi r3, r1, 8 +/* 8015FEDC 0015CE3C C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 8015FEE0 0015CE40 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8015FEE4 0015CE44 C0 42 9F 7C */ lfs f2, lbl_805ABC9C@sda21(r2) +/* 8015FEE8 0015CE48 38 A1 00 2C */ addi r5, r1, 0x2c +/* 8015FEEC 0015CE4C EC 61 00 32 */ fmuls f3, f1, f0 +/* 8015FEF0 0015CE50 EC 01 00 B2 */ fmuls f0, f1, f2 +/* 8015FEF4 0015CE54 EC 22 00 F2 */ fmuls f1, f2, f3 +/* 8015FEF8 0015CE58 EC 02 00 32 */ fmuls f0, f2, f0 +/* 8015FEFC 0015CE5C D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 8015FF00 0015CE60 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 8015FF04 0015CE64 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 8015FF08 0015CE68 48 1B 2B 1D */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 8015FF0C 0015CE6C C0 22 9F 7C */ lfs f1, lbl_805ABC9C@sda21(r2) +/* 8015FF10 0015CE70 7F E4 FB 78 */ mr r4, r31 +/* 8015FF14 0015CE74 38 61 00 14 */ addi r3, r1, 0x14 +/* 8015FF18 0015CE78 38 A1 00 08 */ addi r5, r1, 8 +/* 8015FF1C 0015CE7C 4B FB B0 ED */ bl GetMoveToORImpulseWR__13CPhysicsActorCFRC9CVector3ff +/* 8015FF20 0015CE80 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 8015FF24 0015CE84 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 8015FF28 0015CE88 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 8015FF2C 0015CE8C D0 41 00 20 */ stfs f2, 0x20(r1) +/* 8015FF30 0015CE90 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 8015FF34 0015CE94 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 8015FF38 0015CE98 4B EB B5 FD */ bl Identity__10CAxisAngleFv +/* 8015FF3C 0015CE9C 7C 65 1B 78 */ mr r5, r3 +/* 8015FF40 0015CEA0 7F E3 FB 78 */ mr r3, r31 +/* 8015FF44 0015CEA4 38 81 00 20 */ addi r4, r1, 0x20 +/* 8015FF48 0015CEA8 4B FB C4 51 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +lbl_8015FF4C: +/* 8015FF4C 0015CEAC 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8015FF50 0015CEB0 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8015FF54 0015CEB4 7C 08 03 A6 */ mtlr r0 +/* 8015FF58 0015CEB8 38 21 00 40 */ addi r1, r1, 0x40 +/* 8015FF5C 0015CEBC 4E 80 00 20 */ blr + +.global PathFind__6CDroneFR13CStateManager9EStateMsgf +PathFind__6CDroneFR13CStateManager9EStateMsgf: +/* 8015FF60 0015CEC0 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 8015FF64 0015CEC4 7C 08 02 A6 */ mflr r0 +/* 8015FF68 0015CEC8 90 01 01 04 */ stw r0, 0x104(r1) +/* 8015FF6C 0015CECC DB E1 00 F0 */ stfd f31, 0xf0(r1) +/* 8015FF70 0015CED0 F3 E1 00 F8 */ psq_st f31, 248(r1), 0, qr0 +/* 8015FF74 0015CED4 DB C1 00 E0 */ stfd f30, 0xe0(r1) +/* 8015FF78 0015CED8 F3 C1 00 E8 */ psq_st f30, 232(r1), 0, qr0 +/* 8015FF7C 0015CEDC DB A1 00 D0 */ stfd f29, 0xd0(r1) +/* 8015FF80 0015CEE0 F3 A1 00 D8 */ psq_st f29, 216(r1), 0, qr0 +/* 8015FF84 0015CEE4 93 E1 00 CC */ stw r31, 0xcc(r1) +/* 8015FF88 0015CEE8 93 C1 00 C8 */ stw r30, 0xc8(r1) +/* 8015FF8C 0015CEEC 93 A1 00 C4 */ stw r29, 0xc4(r1) +/* 8015FF90 0015CEF0 2C 05 00 01 */ cmpwi r5, 1 +/* 8015FF94 0015CEF4 7C 7D 1B 78 */ mr r29, r3 +/* 8015FF98 0015CEF8 7C 9E 23 78 */ mr r30, r4 +/* 8015FF9C 0015CEFC 41 82 01 58 */ beq lbl_801600F4 +/* 8015FFA0 0015CF00 40 80 00 10 */ bge lbl_8015FFB0 +/* 8015FFA4 0015CF04 2C 05 00 00 */ cmpwi r5, 0 +/* 8015FFA8 0015CF08 40 80 00 14 */ bge lbl_8015FFBC +/* 8015FFAC 0015CF0C 48 00 03 0C */ b lbl_801602B8 +lbl_8015FFB0: +/* 8015FFB0 0015CF10 2C 05 00 03 */ cmpwi r5, 3 +/* 8015FFB4 0015CF14 40 80 03 04 */ bge lbl_801602B8 +/* 8015FFB8 0015CF18 48 00 02 FC */ b lbl_801602B4 +lbl_8015FFBC: +/* 8015FFBC 0015CF1C C0 1D 02 E0 */ lfs f0, 0x2e0(r29) +/* 8015FFC0 0015CF20 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 8015FFC4 0015CF24 C0 1D 02 E4 */ lfs f0, 0x2e4(r29) +/* 8015FFC8 0015CF28 D0 01 00 90 */ stfs f0, 0x90(r1) +/* 8015FFCC 0015CF2C C0 1D 02 E8 */ lfs f0, 0x2e8(r29) +/* 8015FFD0 0015CF30 D0 01 00 94 */ stfs f0, 0x94(r1) +/* 8015FFD4 0015CF34 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 8015FFD8 0015CF38 C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 8015FFDC 0015CF3C C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 8015FFE0 0015CF40 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 8015FFE4 0015CF44 D0 21 00 78 */ stfs f1, 0x78(r1) +/* 8015FFE8 0015CF48 D0 41 00 7C */ stfs f2, 0x7c(r1) +/* 8015FFEC 0015CF4C 81 83 00 00 */ lwz r12, 0(r3) +/* 8015FFF0 0015CF50 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 8015FFF4 0015CF54 7D 89 03 A6 */ mtctr r12 +/* 8015FFF8 0015CF58 4E 80 04 21 */ bctrl +/* 8015FFFC 0015CF5C 38 81 00 74 */ addi r4, r1, 0x74 +/* 80160000 0015CF60 38 A1 00 8C */ addi r5, r1, 0x8c +/* 80160004 0015CF64 48 06 7C 69 */ bl Search__15CPathFindSearchFRC9CVector3fRC9CVector3f +/* 80160008 0015CF68 2C 03 00 00 */ cmpwi r3, 0 +/* 8016000C 0015CF6C 41 82 00 C8 */ beq lbl_801600D4 +/* 80160010 0015CF70 7F A3 EB 78 */ mr r3, r29 +/* 80160014 0015CF74 81 9D 00 00 */ lwz r12, 0(r29) +/* 80160018 0015CF78 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 8016001C 0015CF7C 7D 89 03 A6 */ mtctr r12 +/* 80160020 0015CF80 4E 80 04 21 */ bctrl +/* 80160024 0015CF84 80 03 00 CC */ lwz r0, 0xcc(r3) +/* 80160028 0015CF88 2C 00 00 03 */ cmpwi r0, 3 +/* 8016002C 0015CF8C 41 82 00 24 */ beq lbl_80160050 +/* 80160030 0015CF90 7F A3 EB 78 */ mr r3, r29 +/* 80160034 0015CF94 81 9D 00 00 */ lwz r12, 0(r29) +/* 80160038 0015CF98 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 8016003C 0015CF9C 7D 89 03 A6 */ mtctr r12 +/* 80160040 0015CFA0 4E 80 04 21 */ bctrl +/* 80160044 0015CFA4 80 03 00 CC */ lwz r0, 0xcc(r3) +/* 80160048 0015CFA8 2C 00 00 04 */ cmpwi r0, 4 +/* 8016004C 0015CFAC 40 82 00 88 */ bne lbl_801600D4 +lbl_80160050: +/* 80160050 0015CFB0 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 80160054 0015CFB4 7F A3 EB 78 */ mr r3, r29 +/* 80160058 0015CFB8 C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 8016005C 0015CFBC C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 80160060 0015CFC0 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 80160064 0015CFC4 D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 80160068 0015CFC8 D0 41 00 70 */ stfs f2, 0x70(r1) +/* 8016006C 0015CFCC 81 9D 00 00 */ lwz r12, 0(r29) +/* 80160070 0015CFD0 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 80160074 0015CFD4 7D 89 03 A6 */ mtctr r12 +/* 80160078 0015CFD8 4E 80 04 21 */ bctrl +/* 8016007C 0015CFDC 38 81 00 68 */ addi r4, r1, 0x68 +/* 80160080 0015CFE0 38 A1 00 8C */ addi r5, r1, 0x8c +/* 80160084 0015CFE4 48 06 70 79 */ bl FindClosestReachablePoint__15CPathFindSearchCFRC9CVector3fR9CVector3f +/* 80160088 0015CFE8 2C 03 00 00 */ cmpwi r3, 0 +/* 8016008C 0015CFEC 40 82 00 48 */ bne lbl_801600D4 +/* 80160090 0015CFF0 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 80160094 0015CFF4 7F A3 EB 78 */ mr r3, r29 +/* 80160098 0015CFF8 C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 8016009C 0015CFFC C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 801600A0 0015D000 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 801600A4 0015D004 D0 21 00 60 */ stfs f1, 0x60(r1) +/* 801600A8 0015D008 D0 41 00 64 */ stfs f2, 0x64(r1) +/* 801600AC 0015D00C 81 9D 00 00 */ lwz r12, 0(r29) +/* 801600B0 0015D010 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801600B4 0015D014 7D 89 03 A6 */ mtctr r12 +/* 801600B8 0015D018 4E 80 04 21 */ bctrl +/* 801600BC 0015D01C 38 81 00 5C */ addi r4, r1, 0x5c +/* 801600C0 0015D020 38 A1 00 8C */ addi r5, r1, 0x8c +/* 801600C4 0015D024 48 06 7B A9 */ bl Search__15CPathFindSearchFRC9CVector3fRC9CVector3f +/* 801600C8 0015D028 7F A3 EB 78 */ mr r3, r29 +/* 801600CC 0015D02C 38 81 00 8C */ addi r4, r1, 0x8c +/* 801600D0 0015D030 4B F1 CA 8D */ bl SetDestPos__10CPatternedFRC9CVector3f +lbl_801600D4: +/* 801600D4 0015D034 80 1D 03 FC */ lwz r0, 0x3fc(r29) +/* 801600D8 0015D038 2C 00 00 01 */ cmpwi r0, 1 +/* 801600DC 0015D03C 40 82 01 DC */ bne lbl_801602B8 +/* 801600E0 0015D040 88 1D 08 34 */ lbz r0, 0x834(r29) +/* 801600E4 0015D044 38 60 00 01 */ li r3, 1 +/* 801600E8 0015D048 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801600EC 0015D04C 98 1D 08 34 */ stb r0, 0x834(r29) +/* 801600F0 0015D050 48 00 01 C8 */ b lbl_801602B8 +lbl_801600F4: +/* 801600F4 0015D054 48 09 65 D9 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 801600F8 0015D058 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 801600FC 0015D05C 3B E3 00 04 */ addi r31, r3, 4 +/* 80160100 0015D060 7F E3 FB 78 */ mr r3, r31 +/* 80160104 0015D064 4B FD 14 45 */ bl BlendSteeringCmds__16CBodyStateCmdMgrFv +/* 80160108 0015D068 C0 1F 00 00 */ lfs f0, 0(r31) +/* 8016010C 0015D06C 38 61 00 80 */ addi r3, r1, 0x80 +/* 80160110 0015D070 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 80160114 0015D074 C0 1F 00 04 */ lfs f0, 4(r31) +/* 80160118 0015D078 D0 01 00 84 */ stfs f0, 0x84(r1) +/* 8016011C 0015D07C C0 1F 00 08 */ lfs f0, 8(r31) +/* 80160120 0015D080 D0 01 00 88 */ stfs f0, 0x88(r1) +/* 80160124 0015D084 48 1B 45 D5 */ bl CanBeNormalized__9CVector3fCFv +/* 80160128 0015D088 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016012C 0015D08C 41 82 01 6C */ beq lbl_80160298 +/* 80160130 0015D090 38 61 00 80 */ addi r3, r1, 0x80 +/* 80160134 0015D094 48 1B 47 C5 */ bl Normalize__9CVector3fFv +/* 80160138 0015D098 7F E3 FB 78 */ mr r3, r31 +/* 8016013C 0015D09C 4B FD 13 6D */ bl ClearLocomotionCmds__16CBodyStateCmdMgrFv +/* 80160140 0015D0A0 C0 9D 05 E4 */ lfs f4, 0x5e4(r29) +/* 80160144 0015D0A4 C0 41 00 84 */ lfs f2, 0x84(r1) +/* 80160148 0015D0A8 C0 21 00 88 */ lfs f1, 0x88(r1) +/* 8016014C 0015D0AC C0 01 00 80 */ lfs f0, 0x80(r1) +/* 80160150 0015D0B0 EC 64 00 B2 */ fmuls f3, f4, f2 +/* 80160154 0015D0B4 EC 44 00 72 */ fmuls f2, f4, f1 +/* 80160158 0015D0B8 C0 BD 00 E8 */ lfs f5, 0xe8(r29) +/* 8016015C 0015D0BC EC 24 00 32 */ fmuls f1, f4, f0 +/* 80160160 0015D0C0 EC 85 00 F2 */ fmuls f4, f5, f3 +/* 80160164 0015D0C4 D0 61 00 48 */ stfs f3, 0x48(r1) +/* 80160168 0015D0C8 EC 65 00 B2 */ fmuls f3, f5, f2 +/* 8016016C 0015D0CC EC 05 00 72 */ fmuls f0, f5, f1 +/* 80160170 0015D0D0 D0 21 00 44 */ stfs f1, 0x44(r1) +/* 80160174 0015D0D4 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 80160178 0015D0D8 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8016017C 0015D0DC D0 81 00 54 */ stfs f4, 0x54(r1) +/* 80160180 0015D0E0 D0 61 00 58 */ stfs f3, 0x58(r1) +/* 80160184 0015D0E4 4B EB B3 B1 */ bl Identity__10CAxisAngleFv +/* 80160188 0015D0E8 7C 65 1B 78 */ mr r5, r3 +/* 8016018C 0015D0EC 7F A3 EB 78 */ mr r3, r29 +/* 80160190 0015D0F0 38 81 00 50 */ addi r4, r1, 0x50 +/* 80160194 0015D0F4 4B FB C2 05 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +/* 80160198 0015D0F8 80 9E 08 4C */ lwz r4, 0x84c(r30) +/* 8016019C 0015D0FC 7F C5 F3 78 */ mr r5, r30 +/* 801601A0 0015D100 38 61 00 20 */ addi r3, r1, 0x20 +/* 801601A4 0015D104 C3 BD 00 60 */ lfs f29, 0x60(r29) +/* 801601A8 0015D108 81 84 00 00 */ lwz r12, 0(r4) +/* 801601AC 0015D10C C3 DD 00 50 */ lfs f30, 0x50(r29) +/* 801601B0 0015D110 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801601B4 0015D114 C3 FD 00 40 */ lfs f31, 0x40(r29) +/* 801601B8 0015D118 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 801601BC 0015D11C 7D 89 03 A6 */ mtctr r12 +/* 801601C0 0015D120 4E 80 04 21 */ bctrl +/* 801601C4 0015D124 C0 41 00 20 */ lfs f2, 0x20(r1) +/* 801601C8 0015D128 38 61 00 38 */ addi r3, r1, 0x38 +/* 801601CC 0015D12C C0 21 00 24 */ lfs f1, 0x24(r1) +/* 801601D0 0015D130 38 81 00 2C */ addi r4, r1, 0x2c +/* 801601D4 0015D134 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 801601D8 0015D138 EC 42 F8 28 */ fsubs f2, f2, f31 +/* 801601DC 0015D13C EC 21 F0 28 */ fsubs f1, f1, f30 +/* 801601E0 0015D140 EC 00 E8 28 */ fsubs f0, f0, f29 +/* 801601E4 0015D144 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 801601E8 0015D148 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 801601EC 0015D14C D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801601F0 0015D150 48 1B 46 61 */ bl AsNormalized__9CVector3fCFv +/* 801601F4 0015D154 C0 DD 00 58 */ lfs f6, 0x58(r29) +/* 801601F8 0015D158 7F E3 FB 78 */ mr r3, r31 +/* 801601FC 0015D15C C0 BD 00 48 */ lfs f5, 0x48(r29) +/* 80160200 0015D160 38 81 00 98 */ addi r4, r1, 0x98 +/* 80160204 0015D164 C0 02 9F A0 */ lfs f0, lbl_805ABCC0@sda21(r2) +/* 80160208 0015D168 C0 5D 00 38 */ lfs f2, 0x38(r29) +/* 8016020C 0015D16C EC 80 01 72 */ fmuls f4, f0, f5 +/* 80160210 0015D170 C3 E1 00 38 */ lfs f31, 0x38(r1) +/* 80160214 0015D174 EC 60 01 B2 */ fmuls f3, f0, f6 +/* 80160218 0015D178 C3 A1 00 3C */ lfs f29, 0x3c(r1) +/* 8016021C 0015D17C EC 20 00 B2 */ fmuls f1, f0, f2 +/* 80160220 0015D180 C3 C1 00 40 */ lfs f30, 0x40(r1) +/* 80160224 0015D184 C0 02 9F 7C */ lfs f0, lbl_805ABC9C@sda21(r2) +/* 80160228 0015D188 D0 41 00 08 */ stfs f2, 8(r1) +/* 8016022C 0015D18C D0 A1 00 0C */ stfs f5, 0xc(r1) +/* 80160230 0015D190 D0 C1 00 10 */ stfs f6, 0x10(r1) +/* 80160234 0015D194 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 80160238 0015D198 D0 81 00 18 */ stfs f4, 0x18(r1) +/* 8016023C 0015D19C D0 61 00 1C */ stfs f3, 0x1c(r1) +/* 80160240 0015D1A0 D0 21 00 98 */ stfs f1, 0x98(r1) +/* 80160244 0015D1A4 D0 81 00 9C */ stfs f4, 0x9c(r1) +/* 80160248 0015D1A8 D0 61 00 A0 */ stfs f3, 0xa0(r1) +/* 8016024C 0015D1AC D3 E1 00 A4 */ stfs f31, 0xa4(r1) +/* 80160250 0015D1B0 D3 A1 00 A8 */ stfs f29, 0xa8(r1) +/* 80160254 0015D1B4 D3 C1 00 AC */ stfs f30, 0xac(r1) +/* 80160258 0015D1B8 D0 01 00 B0 */ stfs f0, 0xb0(r1) +/* 8016025C 0015D1BC 4B FD 14 BD */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 80160260 0015D1C0 D3 FF 00 18 */ stfs f31, 0x18(r31) +/* 80160264 0015D1C4 7F A3 EB 78 */ mr r3, r29 +/* 80160268 0015D1C8 7F C4 F3 78 */ mr r4, r30 +/* 8016026C 0015D1CC D3 BF 00 1C */ stfs f29, 0x1c(r31) +/* 80160270 0015D1D0 D3 DF 00 20 */ stfs f30, 0x20(r31) +/* 80160274 0015D1D4 4B FF F2 9D */ bl sub_8015f510 +/* 80160278 0015D1D8 C0 3D 06 30 */ lfs f1, 0x630(r29) +/* 8016027C 0015D1DC C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 80160280 0015D1E0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80160284 0015D1E4 4C 40 13 82 */ cror 2, 0, 2 +/* 80160288 0015D1E8 40 82 00 30 */ bne lbl_801602B8 +/* 8016028C 0015D1EC C0 02 9F A8 */ lfs f0, lbl_805ABCC8@sda21(r2) +/* 80160290 0015D1F0 D0 1D 06 34 */ stfs f0, 0x634(r29) +/* 80160294 0015D1F4 48 00 00 24 */ b lbl_801602B8 +lbl_80160298: +/* 80160298 0015D1F8 C0 3D 06 30 */ lfs f1, 0x630(r29) +/* 8016029C 0015D1FC C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 801602A0 0015D200 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801602A4 0015D204 4C 40 13 82 */ cror 2, 0, 2 +/* 801602A8 0015D208 40 82 00 10 */ bne lbl_801602B8 +/* 801602AC 0015D20C D0 1D 06 34 */ stfs f0, 0x634(r29) +/* 801602B0 0015D210 48 00 00 08 */ b lbl_801602B8 +lbl_801602B4: +/* 801602B4 0015D214 48 09 64 19 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +lbl_801602B8: +/* 801602B8 0015D218 E3 E1 00 F8 */ psq_l f31, 248(r1), 0, qr0 +/* 801602BC 0015D21C CB E1 00 F0 */ lfd f31, 0xf0(r1) +/* 801602C0 0015D220 E3 C1 00 E8 */ psq_l f30, 232(r1), 0, qr0 +/* 801602C4 0015D224 CB C1 00 E0 */ lfd f30, 0xe0(r1) +/* 801602C8 0015D228 E3 A1 00 D8 */ psq_l f29, 216(r1), 0, qr0 +/* 801602CC 0015D22C CB A1 00 D0 */ lfd f29, 0xd0(r1) +/* 801602D0 0015D230 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 801602D4 0015D234 83 C1 00 C8 */ lwz r30, 0xc8(r1) +/* 801602D8 0015D238 80 01 01 04 */ lwz r0, 0x104(r1) +/* 801602DC 0015D23C 83 A1 00 C4 */ lwz r29, 0xc4(r1) +/* 801602E0 0015D240 7C 08 03 A6 */ mtlr r0 +/* 801602E4 0015D244 38 21 01 00 */ addi r1, r1, 0x100 +/* 801602E8 0015D248 4E 80 00 20 */ blr + +.global PathFindEx__6CDroneFR13CStateManager9EStateMsgf +PathFindEx__6CDroneFR13CStateManager9EStateMsgf: +/* 801602EC 0015D24C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801602F0 0015D250 7C 08 02 A6 */ mflr r0 +/* 801602F4 0015D254 90 01 00 54 */ stw r0, 0x54(r1) +/* 801602F8 0015D258 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801602FC 0015D25C 7C BF 2B 78 */ mr r31, r5 +/* 80160300 0015D260 93 C1 00 48 */ stw r30, 0x48(r1) +/* 80160304 0015D264 7C 9E 23 78 */ mr r30, r4 +/* 80160308 0015D268 93 A1 00 44 */ stw r29, 0x44(r1) +/* 8016030C 0015D26C 7C 7D 1B 78 */ mr r29, r3 +/* 80160310 0015D270 48 09 63 BD */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 80160314 0015D274 2C 1F 00 00 */ cmpwi r31, 0 +/* 80160318 0015D278 41 82 00 0C */ beq lbl_80160324 +/* 8016031C 0015D27C 41 80 01 3C */ blt lbl_80160458 +/* 80160320 0015D280 48 00 01 38 */ b lbl_80160458 +lbl_80160324: +/* 80160324 0015D284 80 9E 08 4C */ lwz r4, 0x84c(r30) +/* 80160328 0015D288 7F A3 EB 78 */ mr r3, r29 +/* 8016032C 0015D28C C0 62 9F 68 */ lfs f3, lbl_805ABC88@sda21(r2) +/* 80160330 0015D290 C0 24 00 50 */ lfs f1, 0x50(r4) +/* 80160334 0015D294 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 80160338 0015D298 C0 44 00 60 */ lfs f2, 0x60(r4) +/* 8016033C 0015D29C EC 81 18 2A */ fadds f4, f1, f3 +/* 80160340 0015D2A0 C0 3D 06 64 */ lfs f1, 0x664(r29) +/* 80160344 0015D2A4 EC 00 18 2A */ fadds f0, f0, f3 +/* 80160348 0015D2A8 EC 22 08 2A */ fadds f1, f2, f1 +/* 8016034C 0015D2AC D0 81 00 30 */ stfs f4, 0x30(r1) +/* 80160350 0015D2B0 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 80160354 0015D2B4 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 80160358 0015D2B8 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 8016035C 0015D2BC C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 80160360 0015D2C0 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 80160364 0015D2C4 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 80160368 0015D2C8 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 8016036C 0015D2CC D0 41 00 28 */ stfs f2, 0x28(r1) +/* 80160370 0015D2D0 81 9D 00 00 */ lwz r12, 0(r29) +/* 80160374 0015D2D4 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 80160378 0015D2D8 7D 89 03 A6 */ mtctr r12 +/* 8016037C 0015D2DC 4E 80 04 21 */ bctrl +/* 80160380 0015D2E0 38 81 00 20 */ addi r4, r1, 0x20 +/* 80160384 0015D2E4 38 A1 00 2C */ addi r5, r1, 0x2c +/* 80160388 0015D2E8 48 06 78 E5 */ bl Search__15CPathFindSearchFRC9CVector3fRC9CVector3f +/* 8016038C 0015D2EC 2C 03 00 00 */ cmpwi r3, 0 +/* 80160390 0015D2F0 41 82 00 C8 */ beq lbl_80160458 +/* 80160394 0015D2F4 7F A3 EB 78 */ mr r3, r29 +/* 80160398 0015D2F8 81 9D 00 00 */ lwz r12, 0(r29) +/* 8016039C 0015D2FC 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801603A0 0015D300 7D 89 03 A6 */ mtctr r12 +/* 801603A4 0015D304 4E 80 04 21 */ bctrl +/* 801603A8 0015D308 80 03 00 CC */ lwz r0, 0xcc(r3) +/* 801603AC 0015D30C 2C 00 00 03 */ cmpwi r0, 3 +/* 801603B0 0015D310 41 82 00 24 */ beq lbl_801603D4 +/* 801603B4 0015D314 7F A3 EB 78 */ mr r3, r29 +/* 801603B8 0015D318 81 9D 00 00 */ lwz r12, 0(r29) +/* 801603BC 0015D31C 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801603C0 0015D320 7D 89 03 A6 */ mtctr r12 +/* 801603C4 0015D324 4E 80 04 21 */ bctrl +/* 801603C8 0015D328 80 03 00 CC */ lwz r0, 0xcc(r3) +/* 801603CC 0015D32C 2C 00 00 04 */ cmpwi r0, 4 +/* 801603D0 0015D330 40 82 00 88 */ bne lbl_80160458 +lbl_801603D4: +/* 801603D4 0015D334 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 801603D8 0015D338 7F A3 EB 78 */ mr r3, r29 +/* 801603DC 0015D33C C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 801603E0 0015D340 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 801603E4 0015D344 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801603E8 0015D348 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801603EC 0015D34C D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 801603F0 0015D350 81 9D 00 00 */ lwz r12, 0(r29) +/* 801603F4 0015D354 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801603F8 0015D358 7D 89 03 A6 */ mtctr r12 +/* 801603FC 0015D35C 4E 80 04 21 */ bctrl +/* 80160400 0015D360 38 81 00 14 */ addi r4, r1, 0x14 +/* 80160404 0015D364 38 A1 00 2C */ addi r5, r1, 0x2c +/* 80160408 0015D368 48 06 6C F5 */ bl FindClosestReachablePoint__15CPathFindSearchCFRC9CVector3fR9CVector3f +/* 8016040C 0015D36C 2C 03 00 00 */ cmpwi r3, 0 +/* 80160410 0015D370 40 82 00 48 */ bne lbl_80160458 +/* 80160414 0015D374 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 80160418 0015D378 7F A3 EB 78 */ mr r3, r29 +/* 8016041C 0015D37C C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 80160420 0015D380 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 80160424 0015D384 D0 01 00 08 */ stfs f0, 8(r1) +/* 80160428 0015D388 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 8016042C 0015D38C D0 41 00 10 */ stfs f2, 0x10(r1) +/* 80160430 0015D390 81 9D 00 00 */ lwz r12, 0(r29) +/* 80160434 0015D394 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 80160438 0015D398 7D 89 03 A6 */ mtctr r12 +/* 8016043C 0015D39C 4E 80 04 21 */ bctrl +/* 80160440 0015D3A0 38 81 00 08 */ addi r4, r1, 8 +/* 80160444 0015D3A4 38 A1 00 2C */ addi r5, r1, 0x2c +/* 80160448 0015D3A8 48 06 78 25 */ bl Search__15CPathFindSearchFRC9CVector3fRC9CVector3f +/* 8016044C 0015D3AC 7F A3 EB 78 */ mr r3, r29 +/* 80160450 0015D3B0 38 81 00 2C */ addi r4, r1, 0x2c +/* 80160454 0015D3B4 4B F1 C7 09 */ bl SetDestPos__10CPatternedFRC9CVector3f +lbl_80160458: +/* 80160458 0015D3B8 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8016045C 0015D3BC 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 80160460 0015D3C0 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 80160464 0015D3C4 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 80160468 0015D3C8 7C 08 03 A6 */ mtlr r0 +/* 8016046C 0015D3CC 38 21 00 50 */ addi r1, r1, 0x50 +/* 80160470 0015D3D0 4E 80 00 20 */ blr + +.global Attack__6CDroneFR13CStateManager9EStateMsgf +Attack__6CDroneFR13CStateManager9EStateMsgf: +/* 80160474 0015D3D4 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 80160478 0015D3D8 7C 08 02 A6 */ mflr r0 +/* 8016047C 0015D3DC 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 80160480 0015D3E0 DB E1 00 C0 */ stfd f31, 0xc0(r1) +/* 80160484 0015D3E4 F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 +/* 80160488 0015D3E8 DB C1 00 B0 */ stfd f30, 0xb0(r1) +/* 8016048C 0015D3EC F3 C1 00 B8 */ psq_st f30, 184(r1), 0, qr0 +/* 80160490 0015D3F0 DB A1 00 A0 */ stfd f29, 0xa0(r1) +/* 80160494 0015D3F4 F3 A1 00 A8 */ psq_st f29, 168(r1), 0, qr0 +/* 80160498 0015D3F8 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 8016049C 0015D3FC 93 C1 00 98 */ stw r30, 0x98(r1) +/* 801604A0 0015D400 2C 05 00 01 */ cmpwi r5, 1 +/* 801604A4 0015D404 7C 7E 1B 78 */ mr r30, r3 +/* 801604A8 0015D408 7C 9F 23 78 */ mr r31, r4 +/* 801604AC 0015D40C 41 82 07 18 */ beq lbl_80160BC4 +/* 801604B0 0015D410 40 80 00 10 */ bge lbl_801604C0 +/* 801604B4 0015D414 2C 05 00 00 */ cmpwi r5, 0 +/* 801604B8 0015D418 40 80 00 14 */ bge lbl_801604CC +/* 801604BC 0015D41C 48 00 08 7C */ b lbl_80160D38 +lbl_801604C0: +/* 801604C0 0015D420 2C 05 00 03 */ cmpwi r5, 3 +/* 801604C4 0015D424 40 80 08 74 */ bge lbl_80160D38 +/* 801604C8 0015D428 48 00 08 10 */ b lbl_80160CD8 +lbl_801604CC: +/* 801604CC 0015D42C 38 80 00 00 */ li r4, 0 +/* 801604D0 0015D430 7F E5 FB 78 */ mr r5, r31 +/* 801604D4 0015D434 90 9E 07 C8 */ stw r4, 0x7c8(r30) +/* 801604D8 0015D438 38 61 00 5C */ addi r3, r1, 0x5c +/* 801604DC 0015D43C C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 801604E0 0015D440 88 1E 08 34 */ lbz r0, 0x834(r30) +/* 801604E4 0015D444 50 80 07 FE */ rlwimi r0, r4, 0, 0x1f, 0x1f +/* 801604E8 0015D448 98 1E 08 34 */ stb r0, 0x834(r30) +/* 801604EC 0015D44C 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 801604F0 0015D450 81 84 00 00 */ lwz r12, 0(r4) +/* 801604F4 0015D454 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801604F8 0015D458 7D 89 03 A6 */ mtctr r12 +/* 801604FC 0015D45C 4E 80 04 21 */ bctrl +/* 80160500 0015D460 C0 A1 00 5C */ lfs f5, 0x5c(r1) +/* 80160504 0015D464 38 61 00 50 */ addi r3, r1, 0x50 +/* 80160508 0015D468 C0 81 00 60 */ lfs f4, 0x60(r1) +/* 8016050C 0015D46C 38 81 00 44 */ addi r4, r1, 0x44 +/* 80160510 0015D470 C0 61 00 64 */ lfs f3, 0x64(r1) +/* 80160514 0015D474 D0 A1 00 68 */ stfs f5, 0x68(r1) +/* 80160518 0015D478 D0 81 00 6C */ stfs f4, 0x6c(r1) +/* 8016051C 0015D47C D0 61 00 70 */ stfs f3, 0x70(r1) +/* 80160520 0015D480 C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 80160524 0015D484 C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 80160528 0015D488 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8016052C 0015D48C EC 44 10 28 */ fsubs f2, f4, f2 +/* 80160530 0015D490 EC 23 08 28 */ fsubs f1, f3, f1 +/* 80160534 0015D494 EC 05 00 28 */ fsubs f0, f5, f0 +/* 80160538 0015D498 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 8016053C 0015D49C D0 01 00 44 */ stfs f0, 0x44(r1) +/* 80160540 0015D4A0 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 80160544 0015D4A4 48 1B 43 0D */ bl AsNormalized__9CVector3fCFv +/* 80160548 0015D4A8 C0 9E 00 48 */ lfs f4, 0x48(r30) +/* 8016054C 0015D4AC C0 01 00 54 */ lfs f0, 0x54(r1) +/* 80160550 0015D4B0 C0 7E 00 38 */ lfs f3, 0x38(r30) +/* 80160554 0015D4B4 EC 00 01 32 */ fmuls f0, f0, f4 +/* 80160558 0015D4B8 C0 21 00 50 */ lfs f1, 0x50(r1) +/* 8016055C 0015D4BC C0 BE 00 58 */ lfs f5, 0x58(r30) +/* 80160560 0015D4C0 C0 41 00 58 */ lfs f2, 0x58(r1) +/* 80160564 0015D4C4 EC 21 00 FA */ fmadds f1, f1, f3, f0 +/* 80160568 0015D4C8 C0 02 9F AC */ lfs f0, lbl_805ABCCC@sda21(r2) +/* 8016056C 0015D4CC D0 61 00 38 */ stfs f3, 0x38(r1) +/* 80160570 0015D4D0 EC 22 09 7A */ fmadds f1, f2, f5, f1 +/* 80160574 0015D4D4 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 80160578 0015D4D8 D0 A1 00 40 */ stfs f5, 0x40(r1) +/* 8016057C 0015D4DC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80160580 0015D4E0 40 80 00 64 */ bge lbl_801605E4 +/* 80160584 0015D4E4 C0 02 9F B0 */ lfs f0, lbl_805ABCD0@sda21(r2) +/* 80160588 0015D4E8 38 61 00 08 */ addi r3, r1, 8 +/* 8016058C 0015D4EC C1 5E 00 60 */ lfs f10, 0x60(r30) +/* 80160590 0015D4F0 EC C0 01 72 */ fmuls f6, f0, f5 +/* 80160594 0015D4F4 C1 3E 00 50 */ lfs f9, 0x50(r30) +/* 80160598 0015D4F8 EC E0 01 32 */ fmuls f7, f0, f4 +/* 8016059C 0015D4FC C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 801605A0 0015D500 EC 40 00 F2 */ fmuls f2, f0, f3 +/* 801605A4 0015D504 D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 801605A8 0015D508 ED 09 38 2A */ fadds f8, f9, f7 +/* 801605AC 0015D50C D0 81 00 30 */ stfs f4, 0x30(r1) +/* 801605B0 0015D510 EC 6A 30 2A */ fadds f3, f10, f6 +/* 801605B4 0015D514 EC 01 10 2A */ fadds f0, f1, f2 +/* 801605B8 0015D518 D0 A1 00 34 */ stfs f5, 0x34(r1) +/* 801605BC 0015D51C D0 41 00 20 */ stfs f2, 0x20(r1) +/* 801605C0 0015D520 D0 E1 00 24 */ stfs f7, 0x24(r1) +/* 801605C4 0015D524 D0 C1 00 28 */ stfs f6, 0x28(r1) +/* 801605C8 0015D528 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801605CC 0015D52C D1 21 00 18 */ stfs f9, 0x18(r1) +/* 801605D0 0015D530 D1 41 00 1C */ stfs f10, 0x1c(r1) +/* 801605D4 0015D534 D0 01 00 08 */ stfs f0, 8(r1) +/* 801605D8 0015D538 D1 01 00 0C */ stfs f8, 0xc(r1) +/* 801605DC 0015D53C D0 61 00 10 */ stfs f3, 0x10(r1) +/* 801605E0 0015D540 48 00 00 08 */ b lbl_801605E8 +lbl_801605E4: +/* 801605E4 0015D544 38 61 00 68 */ addi r3, r1, 0x68 +lbl_801605E8: +/* 801605E8 0015D548 C3 E3 00 00 */ lfs f31, 0(r3) +/* 801605EC 0015D54C C3 C3 00 04 */ lfs f30, 4(r3) +/* 801605F0 0015D550 C3 A3 00 08 */ lfs f29, 8(r3) +/* 801605F4 0015D554 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801605F8 0015D558 48 1B 1F 29 */ bl Next__9CRandom16Fv +/* 801605FC 0015D55C 54 60 F0 02 */ slwi r0, r3, 0x1e +/* 80160600 0015D560 54 63 0F FE */ srwi r3, r3, 0x1f +/* 80160604 0015D564 7C 03 00 50 */ subf r0, r3, r0 +/* 80160608 0015D568 54 00 10 3E */ rotlwi r0, r0, 2 +/* 8016060C 0015D56C 7C 00 1A 14 */ add r0, r0, r3 +/* 80160610 0015D570 2C 00 00 02 */ cmpwi r0, 2 +/* 80160614 0015D574 41 82 02 DC */ beq lbl_801608F0 +/* 80160618 0015D578 40 80 00 14 */ bge lbl_8016062C +/* 8016061C 0015D57C 2C 00 00 00 */ cmpwi r0, 0 +/* 80160620 0015D580 41 82 00 18 */ beq lbl_80160638 +/* 80160624 0015D584 40 80 01 70 */ bge lbl_80160794 +/* 80160628 0015D588 48 00 05 7C */ b lbl_80160BA4 +lbl_8016062C: +/* 8016062C 0015D58C 2C 00 00 04 */ cmpwi r0, 4 +/* 80160630 0015D590 40 80 05 74 */ bge lbl_80160BA4 +/* 80160634 0015D594 48 00 04 18 */ b lbl_80160A4C +lbl_80160638: +/* 80160638 0015D598 C0 22 9F B4 */ lfs f1, lbl_805ABCD4@sda21(r2) +/* 8016063C 0015D59C C0 1E 00 34 */ lfs f0, 0x34(r30) +/* 80160640 0015D5A0 C0 9E 00 44 */ lfs f4, 0x44(r30) +/* 80160644 0015D5A4 EC 61 00 32 */ fmuls f3, f1, f0 +/* 80160648 0015D5A8 C0 02 9F B8 */ lfs f0, lbl_805ABCD8@sda21(r2) +/* 8016064C 0015D5AC C0 5E 00 3C */ lfs f2, 0x3c(r30) +/* 80160650 0015D5B0 EC E1 01 32 */ fmuls f7, f1, f4 +/* 80160654 0015D5B4 C0 9E 00 54 */ lfs f4, 0x54(r30) +/* 80160658 0015D5B8 C0 DE 00 4C */ lfs f6, 0x4c(r30) +/* 8016065C 0015D5BC EC A1 01 32 */ fmuls f5, f1, f4 +/* 80160660 0015D5C0 C0 9E 00 5C */ lfs f4, 0x5c(r30) +/* 80160664 0015D5C4 EC 7F 18 2A */ fadds f3, f31, f3 +/* 80160668 0015D5C8 EC 40 00 B2 */ fmuls f2, f0, f2 +/* 8016066C 0015D5CC EC FE 38 2A */ fadds f7, f30, f7 +/* 80160670 0015D5D0 EC C0 01 B2 */ fmuls f6, f0, f6 +/* 80160674 0015D5D4 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80160678 0015D5D8 EC BD 28 2A */ fadds f5, f29, f5 +/* 8016067C 0015D5DC EC 60 01 32 */ fmuls f3, f0, f4 +/* 80160680 0015D5E0 EC 87 30 28 */ fsubs f4, f7, f6 +/* 80160684 0015D5E4 D0 5E 07 E4 */ stfs f2, 0x7e4(r30) +/* 80160688 0015D5E8 EC 45 18 28 */ fsubs f2, f5, f3 +/* 8016068C 0015D5EC D0 9E 07 E8 */ stfs f4, 0x7e8(r30) +/* 80160690 0015D5F0 D0 5E 07 EC */ stfs f2, 0x7ec(r30) +/* 80160694 0015D5F4 C0 5E 00 34 */ lfs f2, 0x34(r30) +/* 80160698 0015D5F8 C0 9E 00 44 */ lfs f4, 0x44(r30) +/* 8016069C 0015D5FC EC 61 00 B2 */ fmuls f3, f1, f2 +/* 801606A0 0015D600 C0 5E 00 3C */ lfs f2, 0x3c(r30) +/* 801606A4 0015D604 EC E1 01 32 */ fmuls f7, f1, f4 +/* 801606A8 0015D608 C0 BE 00 54 */ lfs f5, 0x54(r30) +/* 801606AC 0015D60C C0 DE 00 4C */ lfs f6, 0x4c(r30) +/* 801606B0 0015D610 EC 40 00 B2 */ fmuls f2, f0, f2 +/* 801606B4 0015D614 EC 7F 18 28 */ fsubs f3, f31, f3 +/* 801606B8 0015D618 C0 9E 00 5C */ lfs f4, 0x5c(r30) +/* 801606BC 0015D61C EC A1 01 72 */ fmuls f5, f1, f5 +/* 801606C0 0015D620 EC FE 38 28 */ fsubs f7, f30, f7 +/* 801606C4 0015D624 EC C0 01 B2 */ fmuls f6, f0, f6 +/* 801606C8 0015D628 EC 43 10 2A */ fadds f2, f3, f2 +/* 801606CC 0015D62C EC BD 28 28 */ fsubs f5, f29, f5 +/* 801606D0 0015D630 EC 60 01 32 */ fmuls f3, f0, f4 +/* 801606D4 0015D634 EC 87 30 2A */ fadds f4, f7, f6 +/* 801606D8 0015D638 D0 5E 08 00 */ stfs f2, 0x800(r30) +/* 801606DC 0015D63C EC 45 18 2A */ fadds f2, f5, f3 +/* 801606E0 0015D640 D0 9E 08 04 */ stfs f4, 0x804(r30) +/* 801606E4 0015D644 D0 5E 08 08 */ stfs f2, 0x808(r30) +/* 801606E8 0015D648 C0 5E 00 34 */ lfs f2, 0x34(r30) +/* 801606EC 0015D64C C0 9E 00 44 */ lfs f4, 0x44(r30) +/* 801606F0 0015D650 EC 61 00 B2 */ fmuls f3, f1, f2 +/* 801606F4 0015D654 C0 5E 00 3C */ lfs f2, 0x3c(r30) +/* 801606F8 0015D658 EC E1 01 32 */ fmuls f7, f1, f4 +/* 801606FC 0015D65C C0 BE 00 54 */ lfs f5, 0x54(r30) +/* 80160700 0015D660 C0 DE 00 4C */ lfs f6, 0x4c(r30) +/* 80160704 0015D664 EC 40 00 B2 */ fmuls f2, f0, f2 +/* 80160708 0015D668 EC 7F 18 28 */ fsubs f3, f31, f3 +/* 8016070C 0015D66C C0 9E 00 5C */ lfs f4, 0x5c(r30) +/* 80160710 0015D670 EC A1 01 72 */ fmuls f5, f1, f5 +/* 80160714 0015D674 EC FE 38 28 */ fsubs f7, f30, f7 +/* 80160718 0015D678 EC C0 01 B2 */ fmuls f6, f0, f6 +/* 8016071C 0015D67C EC 43 10 28 */ fsubs f2, f3, f2 +/* 80160720 0015D680 EC BD 28 28 */ fsubs f5, f29, f5 +/* 80160724 0015D684 EC 60 01 32 */ fmuls f3, f0, f4 +/* 80160728 0015D688 EC 87 30 28 */ fsubs f4, f7, f6 +/* 8016072C 0015D68C D0 5E 07 F0 */ stfs f2, 0x7f0(r30) +/* 80160730 0015D690 EC 45 18 28 */ fsubs f2, f5, f3 +/* 80160734 0015D694 D0 9E 07 F4 */ stfs f4, 0x7f4(r30) +/* 80160738 0015D698 D0 5E 07 F8 */ stfs f2, 0x7f8(r30) +/* 8016073C 0015D69C C0 5E 00 34 */ lfs f2, 0x34(r30) +/* 80160740 0015D6A0 C0 9E 00 44 */ lfs f4, 0x44(r30) +/* 80160744 0015D6A4 EC 61 00 B2 */ fmuls f3, f1, f2 +/* 80160748 0015D6A8 C0 5E 00 3C */ lfs f2, 0x3c(r30) +/* 8016074C 0015D6AC EC E1 01 32 */ fmuls f7, f1, f4 +/* 80160750 0015D6B0 C0 BE 00 54 */ lfs f5, 0x54(r30) +/* 80160754 0015D6B4 C0 DE 00 4C */ lfs f6, 0x4c(r30) +/* 80160758 0015D6B8 EC 40 00 B2 */ fmuls f2, f0, f2 +/* 8016075C 0015D6BC EC 7F 18 2A */ fadds f3, f31, f3 +/* 80160760 0015D6C0 C0 9E 00 5C */ lfs f4, 0x5c(r30) +/* 80160764 0015D6C4 EC A1 01 72 */ fmuls f5, f1, f5 +/* 80160768 0015D6C8 EC FE 38 2A */ fadds f7, f30, f7 +/* 8016076C 0015D6CC EC C0 01 B2 */ fmuls f6, f0, f6 +/* 80160770 0015D6D0 EC 23 10 2A */ fadds f1, f3, f2 +/* 80160774 0015D6D4 EC 5D 28 2A */ fadds f2, f29, f5 +/* 80160778 0015D6D8 EC 00 01 32 */ fmuls f0, f0, f4 +/* 8016077C 0015D6DC EC 67 30 2A */ fadds f3, f7, f6 +/* 80160780 0015D6E0 D0 3E 08 0C */ stfs f1, 0x80c(r30) +/* 80160784 0015D6E4 EC 02 00 2A */ fadds f0, f2, f0 +/* 80160788 0015D6E8 D0 7E 08 10 */ stfs f3, 0x810(r30) +/* 8016078C 0015D6EC D0 1E 08 14 */ stfs f0, 0x814(r30) +/* 80160790 0015D6F0 48 00 04 14 */ b lbl_80160BA4 +lbl_80160794: +/* 80160794 0015D6F4 C0 22 9F B4 */ lfs f1, lbl_805ABCD4@sda21(r2) +/* 80160798 0015D6F8 C0 1E 00 34 */ lfs f0, 0x34(r30) +/* 8016079C 0015D6FC C0 9E 00 44 */ lfs f4, 0x44(r30) +/* 801607A0 0015D700 EC 61 00 32 */ fmuls f3, f1, f0 +/* 801607A4 0015D704 C0 02 9F B8 */ lfs f0, lbl_805ABCD8@sda21(r2) +/* 801607A8 0015D708 C0 5E 00 3C */ lfs f2, 0x3c(r30) +/* 801607AC 0015D70C EC E1 01 32 */ fmuls f7, f1, f4 +/* 801607B0 0015D710 C0 9E 00 54 */ lfs f4, 0x54(r30) +/* 801607B4 0015D714 C0 DE 00 4C */ lfs f6, 0x4c(r30) +/* 801607B8 0015D718 EC A1 01 32 */ fmuls f5, f1, f4 +/* 801607BC 0015D71C C0 9E 00 5C */ lfs f4, 0x5c(r30) +/* 801607C0 0015D720 EC 7F 18 2A */ fadds f3, f31, f3 +/* 801607C4 0015D724 EC 40 00 B2 */ fmuls f2, f0, f2 +/* 801607C8 0015D728 EC FE 38 2A */ fadds f7, f30, f7 +/* 801607CC 0015D72C EC C0 01 B2 */ fmuls f6, f0, f6 +/* 801607D0 0015D730 EC 43 10 2A */ fadds f2, f3, f2 +/* 801607D4 0015D734 EC BD 28 2A */ fadds f5, f29, f5 +/* 801607D8 0015D738 EC 60 01 32 */ fmuls f3, f0, f4 +/* 801607DC 0015D73C EC 87 30 2A */ fadds f4, f7, f6 +/* 801607E0 0015D740 D0 5E 07 E4 */ stfs f2, 0x7e4(r30) +/* 801607E4 0015D744 EC 45 18 2A */ fadds f2, f5, f3 +/* 801607E8 0015D748 D0 9E 07 E8 */ stfs f4, 0x7e8(r30) +/* 801607EC 0015D74C D0 5E 07 EC */ stfs f2, 0x7ec(r30) +/* 801607F0 0015D750 C0 5E 00 34 */ lfs f2, 0x34(r30) +/* 801607F4 0015D754 C0 9E 00 44 */ lfs f4, 0x44(r30) +/* 801607F8 0015D758 EC 61 00 B2 */ fmuls f3, f1, f2 +/* 801607FC 0015D75C C0 5E 00 3C */ lfs f2, 0x3c(r30) +/* 80160800 0015D760 EC E1 01 32 */ fmuls f7, f1, f4 +/* 80160804 0015D764 C0 BE 00 54 */ lfs f5, 0x54(r30) +/* 80160808 0015D768 C0 DE 00 4C */ lfs f6, 0x4c(r30) +/* 8016080C 0015D76C EC 40 00 B2 */ fmuls f2, f0, f2 +/* 80160810 0015D770 EC 7F 18 28 */ fsubs f3, f31, f3 +/* 80160814 0015D774 C0 9E 00 5C */ lfs f4, 0x5c(r30) +/* 80160818 0015D778 EC A1 01 72 */ fmuls f5, f1, f5 +/* 8016081C 0015D77C EC FE 38 28 */ fsubs f7, f30, f7 +/* 80160820 0015D780 EC C0 01 B2 */ fmuls f6, f0, f6 +/* 80160824 0015D784 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80160828 0015D788 EC BD 28 28 */ fsubs f5, f29, f5 +/* 8016082C 0015D78C EC 60 01 32 */ fmuls f3, f0, f4 +/* 80160830 0015D790 EC 87 30 28 */ fsubs f4, f7, f6 +/* 80160834 0015D794 D0 5E 08 00 */ stfs f2, 0x800(r30) +/* 80160838 0015D798 EC 45 18 28 */ fsubs f2, f5, f3 +/* 8016083C 0015D79C D0 9E 08 04 */ stfs f4, 0x804(r30) +/* 80160840 0015D7A0 D0 5E 08 08 */ stfs f2, 0x808(r30) +/* 80160844 0015D7A4 C0 5E 00 34 */ lfs f2, 0x34(r30) +/* 80160848 0015D7A8 C0 9E 00 44 */ lfs f4, 0x44(r30) +/* 8016084C 0015D7AC EC 61 00 B2 */ fmuls f3, f1, f2 +/* 80160850 0015D7B0 C0 5E 00 3C */ lfs f2, 0x3c(r30) +/* 80160854 0015D7B4 EC E1 01 32 */ fmuls f7, f1, f4 +/* 80160858 0015D7B8 C0 BE 00 54 */ lfs f5, 0x54(r30) +/* 8016085C 0015D7BC C0 DE 00 4C */ lfs f6, 0x4c(r30) +/* 80160860 0015D7C0 EC 40 00 B2 */ fmuls f2, f0, f2 +/* 80160864 0015D7C4 EC 7F 18 28 */ fsubs f3, f31, f3 +/* 80160868 0015D7C8 C0 9E 00 5C */ lfs f4, 0x5c(r30) +/* 8016086C 0015D7CC EC A1 01 72 */ fmuls f5, f1, f5 +/* 80160870 0015D7D0 EC FE 38 28 */ fsubs f7, f30, f7 +/* 80160874 0015D7D4 EC C0 01 B2 */ fmuls f6, f0, f6 +/* 80160878 0015D7D8 EC 43 10 2A */ fadds f2, f3, f2 +/* 8016087C 0015D7DC EC BD 28 28 */ fsubs f5, f29, f5 +/* 80160880 0015D7E0 EC 60 01 32 */ fmuls f3, f0, f4 +/* 80160884 0015D7E4 EC 87 30 2A */ fadds f4, f7, f6 +/* 80160888 0015D7E8 D0 5E 07 F0 */ stfs f2, 0x7f0(r30) +/* 8016088C 0015D7EC EC 45 18 2A */ fadds f2, f5, f3 +/* 80160890 0015D7F0 D0 9E 07 F4 */ stfs f4, 0x7f4(r30) +/* 80160894 0015D7F4 D0 5E 07 F8 */ stfs f2, 0x7f8(r30) +/* 80160898 0015D7F8 C0 5E 00 34 */ lfs f2, 0x34(r30) +/* 8016089C 0015D7FC C0 9E 00 44 */ lfs f4, 0x44(r30) +/* 801608A0 0015D800 EC 61 00 B2 */ fmuls f3, f1, f2 +/* 801608A4 0015D804 C0 5E 00 3C */ lfs f2, 0x3c(r30) +/* 801608A8 0015D808 EC E1 01 32 */ fmuls f7, f1, f4 +/* 801608AC 0015D80C C0 BE 00 54 */ lfs f5, 0x54(r30) +/* 801608B0 0015D810 C0 DE 00 4C */ lfs f6, 0x4c(r30) +/* 801608B4 0015D814 EC 40 00 B2 */ fmuls f2, f0, f2 +/* 801608B8 0015D818 EC 7F 18 2A */ fadds f3, f31, f3 +/* 801608BC 0015D81C C0 9E 00 5C */ lfs f4, 0x5c(r30) +/* 801608C0 0015D820 EC A1 01 72 */ fmuls f5, f1, f5 +/* 801608C4 0015D824 EC FE 38 2A */ fadds f7, f30, f7 +/* 801608C8 0015D828 EC C0 01 B2 */ fmuls f6, f0, f6 +/* 801608CC 0015D82C EC 23 10 28 */ fsubs f1, f3, f2 +/* 801608D0 0015D830 EC 5D 28 2A */ fadds f2, f29, f5 +/* 801608D4 0015D834 EC 00 01 32 */ fmuls f0, f0, f4 +/* 801608D8 0015D838 EC 67 30 28 */ fsubs f3, f7, f6 +/* 801608DC 0015D83C D0 3E 08 0C */ stfs f1, 0x80c(r30) +/* 801608E0 0015D840 EC 02 00 28 */ fsubs f0, f2, f0 +/* 801608E4 0015D844 D0 7E 08 10 */ stfs f3, 0x810(r30) +/* 801608E8 0015D848 D0 1E 08 14 */ stfs f0, 0x814(r30) +/* 801608EC 0015D84C 48 00 02 B8 */ b lbl_80160BA4 +lbl_801608F0: +/* 801608F0 0015D850 C0 22 9F B8 */ lfs f1, lbl_805ABCD8@sda21(r2) +/* 801608F4 0015D854 C0 1E 00 34 */ lfs f0, 0x34(r30) +/* 801608F8 0015D858 C0 9E 00 44 */ lfs f4, 0x44(r30) +/* 801608FC 0015D85C EC 61 00 32 */ fmuls f3, f1, f0 +/* 80160900 0015D860 C0 02 9F B4 */ lfs f0, lbl_805ABCD4@sda21(r2) +/* 80160904 0015D864 C0 5E 00 3C */ lfs f2, 0x3c(r30) +/* 80160908 0015D868 EC E1 01 32 */ fmuls f7, f1, f4 +/* 8016090C 0015D86C C0 9E 00 54 */ lfs f4, 0x54(r30) +/* 80160910 0015D870 C0 DE 00 4C */ lfs f6, 0x4c(r30) +/* 80160914 0015D874 EC A1 01 32 */ fmuls f5, f1, f4 +/* 80160918 0015D878 C0 9E 00 5C */ lfs f4, 0x5c(r30) +/* 8016091C 0015D87C EC 7F 18 28 */ fsubs f3, f31, f3 +/* 80160920 0015D880 EC 40 00 B2 */ fmuls f2, f0, f2 +/* 80160924 0015D884 EC FE 38 28 */ fsubs f7, f30, f7 +/* 80160928 0015D888 EC C0 01 B2 */ fmuls f6, f0, f6 +/* 8016092C 0015D88C EC 43 10 28 */ fsubs f2, f3, f2 +/* 80160930 0015D890 EC BD 28 28 */ fsubs f5, f29, f5 +/* 80160934 0015D894 EC 60 01 32 */ fmuls f3, f0, f4 +/* 80160938 0015D898 EC 87 30 28 */ fsubs f4, f7, f6 +/* 8016093C 0015D89C D0 5E 07 E4 */ stfs f2, 0x7e4(r30) +/* 80160940 0015D8A0 EC 45 18 28 */ fsubs f2, f5, f3 +/* 80160944 0015D8A4 D0 9E 07 E8 */ stfs f4, 0x7e8(r30) +/* 80160948 0015D8A8 D0 5E 07 EC */ stfs f2, 0x7ec(r30) +/* 8016094C 0015D8AC C0 5E 00 34 */ lfs f2, 0x34(r30) +/* 80160950 0015D8B0 C0 9E 00 44 */ lfs f4, 0x44(r30) +/* 80160954 0015D8B4 EC 61 00 B2 */ fmuls f3, f1, f2 +/* 80160958 0015D8B8 C0 5E 00 3C */ lfs f2, 0x3c(r30) +/* 8016095C 0015D8BC EC E1 01 32 */ fmuls f7, f1, f4 +/* 80160960 0015D8C0 C0 BE 00 54 */ lfs f5, 0x54(r30) +/* 80160964 0015D8C4 C0 DE 00 4C */ lfs f6, 0x4c(r30) +/* 80160968 0015D8C8 EC 40 00 B2 */ fmuls f2, f0, f2 +/* 8016096C 0015D8CC EC 7F 18 2A */ fadds f3, f31, f3 +/* 80160970 0015D8D0 C0 9E 00 5C */ lfs f4, 0x5c(r30) +/* 80160974 0015D8D4 EC A1 01 72 */ fmuls f5, f1, f5 +/* 80160978 0015D8D8 EC FE 38 2A */ fadds f7, f30, f7 +/* 8016097C 0015D8DC EC C0 01 B2 */ fmuls f6, f0, f6 +/* 80160980 0015D8E0 EC 43 10 2A */ fadds f2, f3, f2 +/* 80160984 0015D8E4 EC BD 28 2A */ fadds f5, f29, f5 +/* 80160988 0015D8E8 EC 60 01 32 */ fmuls f3, f0, f4 +/* 8016098C 0015D8EC EC 87 30 2A */ fadds f4, f7, f6 +/* 80160990 0015D8F0 D0 5E 08 00 */ stfs f2, 0x800(r30) +/* 80160994 0015D8F4 EC 45 18 2A */ fadds f2, f5, f3 +/* 80160998 0015D8F8 D0 9E 08 04 */ stfs f4, 0x804(r30) +/* 8016099C 0015D8FC D0 5E 08 08 */ stfs f2, 0x808(r30) +/* 801609A0 0015D900 C0 5E 00 34 */ lfs f2, 0x34(r30) +/* 801609A4 0015D904 C0 9E 00 44 */ lfs f4, 0x44(r30) +/* 801609A8 0015D908 EC 61 00 B2 */ fmuls f3, f1, f2 +/* 801609AC 0015D90C C0 5E 00 3C */ lfs f2, 0x3c(r30) +/* 801609B0 0015D910 EC E1 01 32 */ fmuls f7, f1, f4 +/* 801609B4 0015D914 C0 BE 00 54 */ lfs f5, 0x54(r30) +/* 801609B8 0015D918 C0 DE 00 4C */ lfs f6, 0x4c(r30) +/* 801609BC 0015D91C EC 40 00 B2 */ fmuls f2, f0, f2 +/* 801609C0 0015D920 EC 7F 18 2A */ fadds f3, f31, f3 +/* 801609C4 0015D924 C0 9E 00 5C */ lfs f4, 0x5c(r30) +/* 801609C8 0015D928 EC A1 01 72 */ fmuls f5, f1, f5 +/* 801609CC 0015D92C EC FE 38 2A */ fadds f7, f30, f7 +/* 801609D0 0015D930 EC C0 01 B2 */ fmuls f6, f0, f6 +/* 801609D4 0015D934 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801609D8 0015D938 EC BD 28 2A */ fadds f5, f29, f5 +/* 801609DC 0015D93C EC 60 01 32 */ fmuls f3, f0, f4 +/* 801609E0 0015D940 EC 87 30 28 */ fsubs f4, f7, f6 +/* 801609E4 0015D944 D0 5E 07 F0 */ stfs f2, 0x7f0(r30) +/* 801609E8 0015D948 EC 45 18 28 */ fsubs f2, f5, f3 +/* 801609EC 0015D94C D0 9E 07 F4 */ stfs f4, 0x7f4(r30) +/* 801609F0 0015D950 D0 5E 07 F8 */ stfs f2, 0x7f8(r30) +/* 801609F4 0015D954 C0 5E 00 34 */ lfs f2, 0x34(r30) +/* 801609F8 0015D958 C0 9E 00 44 */ lfs f4, 0x44(r30) +/* 801609FC 0015D95C EC 61 00 B2 */ fmuls f3, f1, f2 +/* 80160A00 0015D960 C0 5E 00 3C */ lfs f2, 0x3c(r30) +/* 80160A04 0015D964 EC E1 01 32 */ fmuls f7, f1, f4 +/* 80160A08 0015D968 C0 BE 00 54 */ lfs f5, 0x54(r30) +/* 80160A0C 0015D96C C0 DE 00 4C */ lfs f6, 0x4c(r30) +/* 80160A10 0015D970 EC 40 00 B2 */ fmuls f2, f0, f2 +/* 80160A14 0015D974 EC 7F 18 28 */ fsubs f3, f31, f3 +/* 80160A18 0015D978 C0 9E 00 5C */ lfs f4, 0x5c(r30) +/* 80160A1C 0015D97C EC A1 01 72 */ fmuls f5, f1, f5 +/* 80160A20 0015D980 EC FE 38 28 */ fsubs f7, f30, f7 +/* 80160A24 0015D984 EC C0 01 B2 */ fmuls f6, f0, f6 +/* 80160A28 0015D988 EC 23 10 2A */ fadds f1, f3, f2 +/* 80160A2C 0015D98C EC 5D 28 28 */ fsubs f2, f29, f5 +/* 80160A30 0015D990 EC 00 01 32 */ fmuls f0, f0, f4 +/* 80160A34 0015D994 EC 67 30 2A */ fadds f3, f7, f6 +/* 80160A38 0015D998 D0 3E 08 0C */ stfs f1, 0x80c(r30) +/* 80160A3C 0015D99C EC 02 00 2A */ fadds f0, f2, f0 +/* 80160A40 0015D9A0 D0 7E 08 10 */ stfs f3, 0x810(r30) +/* 80160A44 0015D9A4 D0 1E 08 14 */ stfs f0, 0x814(r30) +/* 80160A48 0015D9A8 48 00 01 5C */ b lbl_80160BA4 +lbl_80160A4C: +/* 80160A4C 0015D9AC C0 22 9F B8 */ lfs f1, lbl_805ABCD8@sda21(r2) +/* 80160A50 0015D9B0 C0 1E 00 34 */ lfs f0, 0x34(r30) +/* 80160A54 0015D9B4 C0 9E 00 44 */ lfs f4, 0x44(r30) +/* 80160A58 0015D9B8 EC 61 00 32 */ fmuls f3, f1, f0 +/* 80160A5C 0015D9BC C0 02 9F B4 */ lfs f0, lbl_805ABCD4@sda21(r2) +/* 80160A60 0015D9C0 C0 5E 00 3C */ lfs f2, 0x3c(r30) +/* 80160A64 0015D9C4 EC E1 01 32 */ fmuls f7, f1, f4 +/* 80160A68 0015D9C8 C0 9E 00 54 */ lfs f4, 0x54(r30) +/* 80160A6C 0015D9CC C0 DE 00 4C */ lfs f6, 0x4c(r30) +/* 80160A70 0015D9D0 EC A1 01 32 */ fmuls f5, f1, f4 +/* 80160A74 0015D9D4 C0 9E 00 5C */ lfs f4, 0x5c(r30) +/* 80160A78 0015D9D8 EC 7F 18 28 */ fsubs f3, f31, f3 +/* 80160A7C 0015D9DC EC 40 00 B2 */ fmuls f2, f0, f2 +/* 80160A80 0015D9E0 EC FE 38 28 */ fsubs f7, f30, f7 +/* 80160A84 0015D9E4 EC C0 01 B2 */ fmuls f6, f0, f6 +/* 80160A88 0015D9E8 EC 43 10 2A */ fadds f2, f3, f2 +/* 80160A8C 0015D9EC EC BD 28 28 */ fsubs f5, f29, f5 +/* 80160A90 0015D9F0 EC 60 01 32 */ fmuls f3, f0, f4 +/* 80160A94 0015D9F4 EC 87 30 2A */ fadds f4, f7, f6 +/* 80160A98 0015D9F8 D0 5E 07 E4 */ stfs f2, 0x7e4(r30) +/* 80160A9C 0015D9FC EC 45 18 2A */ fadds f2, f5, f3 +/* 80160AA0 0015DA00 D0 9E 07 E8 */ stfs f4, 0x7e8(r30) +/* 80160AA4 0015DA04 D0 5E 07 EC */ stfs f2, 0x7ec(r30) +/* 80160AA8 0015DA08 C0 5E 00 34 */ lfs f2, 0x34(r30) +/* 80160AAC 0015DA0C C0 9E 00 44 */ lfs f4, 0x44(r30) +/* 80160AB0 0015DA10 EC 61 00 B2 */ fmuls f3, f1, f2 +/* 80160AB4 0015DA14 C0 5E 00 3C */ lfs f2, 0x3c(r30) +/* 80160AB8 0015DA18 EC E1 01 32 */ fmuls f7, f1, f4 +/* 80160ABC 0015DA1C C0 BE 00 54 */ lfs f5, 0x54(r30) +/* 80160AC0 0015DA20 C0 DE 00 4C */ lfs f6, 0x4c(r30) +/* 80160AC4 0015DA24 EC 40 00 B2 */ fmuls f2, f0, f2 +/* 80160AC8 0015DA28 EC 7F 18 2A */ fadds f3, f31, f3 +/* 80160ACC 0015DA2C C0 9E 00 5C */ lfs f4, 0x5c(r30) +/* 80160AD0 0015DA30 EC A1 01 72 */ fmuls f5, f1, f5 +/* 80160AD4 0015DA34 EC FE 38 2A */ fadds f7, f30, f7 +/* 80160AD8 0015DA38 EC C0 01 B2 */ fmuls f6, f0, f6 +/* 80160ADC 0015DA3C EC 43 10 28 */ fsubs f2, f3, f2 +/* 80160AE0 0015DA40 EC BD 28 2A */ fadds f5, f29, f5 +/* 80160AE4 0015DA44 EC 60 01 32 */ fmuls f3, f0, f4 +/* 80160AE8 0015DA48 EC 87 30 28 */ fsubs f4, f7, f6 +/* 80160AEC 0015DA4C D0 5E 08 00 */ stfs f2, 0x800(r30) +/* 80160AF0 0015DA50 EC 45 18 28 */ fsubs f2, f5, f3 +/* 80160AF4 0015DA54 D0 9E 08 04 */ stfs f4, 0x804(r30) +/* 80160AF8 0015DA58 D0 5E 08 08 */ stfs f2, 0x808(r30) +/* 80160AFC 0015DA5C C0 5E 00 34 */ lfs f2, 0x34(r30) +/* 80160B00 0015DA60 C0 9E 00 44 */ lfs f4, 0x44(r30) +/* 80160B04 0015DA64 EC 61 00 B2 */ fmuls f3, f1, f2 +/* 80160B08 0015DA68 C0 5E 00 3C */ lfs f2, 0x3c(r30) +/* 80160B0C 0015DA6C EC E1 01 32 */ fmuls f7, f1, f4 +/* 80160B10 0015DA70 C0 BE 00 54 */ lfs f5, 0x54(r30) +/* 80160B14 0015DA74 C0 DE 00 4C */ lfs f6, 0x4c(r30) +/* 80160B18 0015DA78 EC 40 00 B2 */ fmuls f2, f0, f2 +/* 80160B1C 0015DA7C EC 7F 18 2A */ fadds f3, f31, f3 +/* 80160B20 0015DA80 C0 9E 00 5C */ lfs f4, 0x5c(r30) +/* 80160B24 0015DA84 EC A1 01 72 */ fmuls f5, f1, f5 +/* 80160B28 0015DA88 EC FE 38 2A */ fadds f7, f30, f7 +/* 80160B2C 0015DA8C EC C0 01 B2 */ fmuls f6, f0, f6 +/* 80160B30 0015DA90 EC 43 10 2A */ fadds f2, f3, f2 +/* 80160B34 0015DA94 EC BD 28 2A */ fadds f5, f29, f5 +/* 80160B38 0015DA98 EC 60 01 32 */ fmuls f3, f0, f4 +/* 80160B3C 0015DA9C EC 87 30 2A */ fadds f4, f7, f6 +/* 80160B40 0015DAA0 D0 5E 07 F0 */ stfs f2, 0x7f0(r30) +/* 80160B44 0015DAA4 EC 45 18 2A */ fadds f2, f5, f3 +/* 80160B48 0015DAA8 D0 9E 07 F4 */ stfs f4, 0x7f4(r30) +/* 80160B4C 0015DAAC D0 5E 07 F8 */ stfs f2, 0x7f8(r30) +/* 80160B50 0015DAB0 C0 5E 00 34 */ lfs f2, 0x34(r30) +/* 80160B54 0015DAB4 C0 9E 00 44 */ lfs f4, 0x44(r30) +/* 80160B58 0015DAB8 EC 61 00 B2 */ fmuls f3, f1, f2 +/* 80160B5C 0015DABC C0 5E 00 3C */ lfs f2, 0x3c(r30) +/* 80160B60 0015DAC0 EC E1 01 32 */ fmuls f7, f1, f4 +/* 80160B64 0015DAC4 C0 BE 00 54 */ lfs f5, 0x54(r30) +/* 80160B68 0015DAC8 C0 DE 00 4C */ lfs f6, 0x4c(r30) +/* 80160B6C 0015DACC EC 40 00 B2 */ fmuls f2, f0, f2 +/* 80160B70 0015DAD0 EC 7F 18 28 */ fsubs f3, f31, f3 +/* 80160B74 0015DAD4 C0 9E 00 5C */ lfs f4, 0x5c(r30) +/* 80160B78 0015DAD8 EC A1 01 72 */ fmuls f5, f1, f5 +/* 80160B7C 0015DADC EC FE 38 28 */ fsubs f7, f30, f7 +/* 80160B80 0015DAE0 EC C0 01 B2 */ fmuls f6, f0, f6 +/* 80160B84 0015DAE4 EC 23 10 28 */ fsubs f1, f3, f2 +/* 80160B88 0015DAE8 EC 5D 28 28 */ fsubs f2, f29, f5 +/* 80160B8C 0015DAEC EC 00 01 32 */ fmuls f0, f0, f4 +/* 80160B90 0015DAF0 EC 67 30 28 */ fsubs f3, f7, f6 +/* 80160B94 0015DAF4 D0 3E 08 0C */ stfs f1, 0x80c(r30) +/* 80160B98 0015DAF8 EC 02 00 28 */ fsubs f0, f2, f0 +/* 80160B9C 0015DAFC D0 7E 08 10 */ stfs f3, 0x810(r30) +/* 80160BA0 0015DB00 D0 1E 08 14 */ stfs f0, 0x814(r30) +lbl_80160BA4: +/* 80160BA4 0015DB04 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 80160BA8 0015DB08 38 60 00 01 */ li r3, 1 +/* 80160BAC 0015DB0C D0 1E 08 1C */ stfs f0, 0x81c(r30) +/* 80160BB0 0015DB10 D0 1E 08 20 */ stfs f0, 0x820(r30) +/* 80160BB4 0015DB14 88 1E 08 35 */ lbz r0, 0x835(r30) +/* 80160BB8 0015DB18 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80160BBC 0015DB1C 98 1E 08 35 */ stb r0, 0x835(r30) +/* 80160BC0 0015DB20 48 00 01 78 */ b lbl_80160D38 +lbl_80160BC4: +/* 80160BC4 0015DB24 80 1E 07 C8 */ lwz r0, 0x7c8(r30) +/* 80160BC8 0015DB28 2C 00 00 01 */ cmpwi r0, 1 +/* 80160BCC 0015DB2C 41 82 00 D8 */ beq lbl_80160CA4 +/* 80160BD0 0015DB30 40 80 00 EC */ bge lbl_80160CBC +/* 80160BD4 0015DB34 2C 00 00 00 */ cmpwi r0, 0 +/* 80160BD8 0015DB38 40 80 00 08 */ bge lbl_80160BE0 +/* 80160BDC 0015DB3C 48 00 00 E0 */ b lbl_80160CBC +lbl_80160BE0: +/* 80160BE0 0015DB40 81 1E 04 50 */ lwz r8, 0x450(r30) +/* 80160BE4 0015DB44 80 08 02 B8 */ lwz r0, 0x2b8(r8) +/* 80160BE8 0015DB48 2C 00 00 12 */ cmpwi r0, 0x12 +/* 80160BEC 0015DB4C 40 82 00 10 */ bne lbl_80160BFC +/* 80160BF0 0015DB50 38 00 00 01 */ li r0, 1 +/* 80160BF4 0015DB54 90 1E 07 C8 */ stw r0, 0x7c8(r30) +/* 80160BF8 0015DB58 48 00 00 C4 */ b lbl_80160CBC +lbl_80160BFC: +/* 80160BFC 0015DB5C 80 DF 08 4C */ lwz r6, 0x84c(r31) +/* 80160C00 0015DB60 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80160C04 0015DB64 38 83 AA 68 */ addi r4, r3, lbl_803DAA68@l +/* 80160C08 0015DB68 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha +/* 80160C0C 0015DB6C C0 46 00 60 */ lfs f2, 0x60(r6) +/* 80160C10 0015DB70 38 E0 00 06 */ li r7, 6 +/* 80160C14 0015DB74 C0 26 00 50 */ lfs f1, 0x50(r6) +/* 80160C18 0015DB78 38 A0 00 02 */ li r5, 2 +/* 80160C1C 0015DB7C C0 06 00 40 */ lfs f0, 0x40(r6) +/* 80160C20 0015DB80 38 00 00 00 */ li r0, 0 +/* 80160C24 0015DB84 3B E8 00 04 */ addi r31, r8, 4 +/* 80160C28 0015DB88 90 81 00 74 */ stw r4, 0x74(r1) +/* 80160C2C 0015DB8C 38 C3 A9 CC */ addi r6, r3, lbl_803DA9CC@l +/* 80160C30 0015DB90 38 80 00 06 */ li r4, 6 +/* 80160C34 0015DB94 90 E1 00 78 */ stw r7, 0x78(r1) +/* 80160C38 0015DB98 7F E3 FB 78 */ mr r3, r31 +/* 80160C3C 0015DB9C 90 C1 00 74 */ stw r6, 0x74(r1) +/* 80160C40 0015DBA0 90 A1 00 7C */ stw r5, 0x7c(r1) +/* 80160C44 0015DBA4 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 80160C48 0015DBA8 D0 21 00 84 */ stfs f1, 0x84(r1) +/* 80160C4C 0015DBAC D0 41 00 88 */ stfs f2, 0x88(r1) +/* 80160C50 0015DBB0 98 01 00 8C */ stb r0, 0x8c(r1) +/* 80160C54 0015DBB4 4B FD 07 E5 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80160C58 0015DBB8 80 01 00 78 */ lwz r0, 0x78(r1) +/* 80160C5C 0015DBBC 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha +/* 80160C60 0015DBC0 38 83 A9 CC */ addi r4, r3, lbl_803DA9CC@l +/* 80160C64 0015DBC4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80160C68 0015DBC8 90 1F 01 2C */ stw r0, 0x12c(r31) +/* 80160C6C 0015DBCC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80160C70 0015DBD0 80 61 00 7C */ lwz r3, 0x7c(r1) +/* 80160C74 0015DBD4 80 A1 00 80 */ lwz r5, 0x80(r1) +/* 80160C78 0015DBD8 90 7F 01 30 */ stw r3, 0x130(r31) +/* 80160C7C 0015DBDC 80 61 00 84 */ lwz r3, 0x84(r1) +/* 80160C80 0015DBE0 90 BF 01 34 */ stw r5, 0x134(r31) +/* 80160C84 0015DBE4 80 A1 00 88 */ lwz r5, 0x88(r1) +/* 80160C88 0015DBE8 90 7F 01 38 */ stw r3, 0x138(r31) +/* 80160C8C 0015DBEC 88 61 00 8C */ lbz r3, 0x8c(r1) +/* 80160C90 0015DBF0 90 BF 01 3C */ stw r5, 0x13c(r31) +/* 80160C94 0015DBF4 90 81 00 74 */ stw r4, 0x74(r1) +/* 80160C98 0015DBF8 98 7F 01 40 */ stb r3, 0x140(r31) +/* 80160C9C 0015DBFC 90 01 00 74 */ stw r0, 0x74(r1) +/* 80160CA0 0015DC00 48 00 00 1C */ b lbl_80160CBC +lbl_80160CA4: +/* 80160CA4 0015DC04 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80160CA8 0015DC08 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 80160CAC 0015DC0C 2C 00 00 12 */ cmpwi r0, 0x12 +/* 80160CB0 0015DC10 41 82 00 0C */ beq lbl_80160CBC +/* 80160CB4 0015DC14 38 00 00 02 */ li r0, 2 +/* 80160CB8 0015DC18 90 1E 07 C8 */ stw r0, 0x7c8(r30) +lbl_80160CBC: +/* 80160CBC 0015DC1C C0 3E 06 30 */ lfs f1, 0x630(r30) +/* 80160CC0 0015DC20 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 80160CC4 0015DC24 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80160CC8 0015DC28 4C 40 13 82 */ cror 2, 0, 2 +/* 80160CCC 0015DC2C 40 82 00 6C */ bne lbl_80160D38 +/* 80160CD0 0015DC30 D0 1E 06 34 */ stfs f0, 0x634(r30) +/* 80160CD4 0015DC34 48 00 00 64 */ b lbl_80160D38 +lbl_80160CD8: +/* 80160CD8 0015DC38 38 00 00 00 */ li r0, 0 +/* 80160CDC 0015DC3C 38 A0 00 00 */ li r5, 0 +/* 80160CE0 0015DC40 98 1E 08 28 */ stb r0, 0x828(r30) +/* 80160CE4 0015DC44 38 C0 00 00 */ li r6, 0 +/* 80160CE8 0015DC48 98 1E 08 29 */ stb r0, 0x829(r30) +/* 80160CEC 0015DC4C 48 00 25 B9 */ bl sub_801632a4 +/* 80160CF0 0015DC50 7F C3 F3 78 */ mr r3, r30 +/* 80160CF4 0015DC54 7F E4 FB 78 */ mr r4, r31 +/* 80160CF8 0015DC58 38 A0 00 01 */ li r5, 1 +/* 80160CFC 0015DC5C 38 C0 00 00 */ li r6, 0 +/* 80160D00 0015DC60 48 00 25 A5 */ bl sub_801632a4 +/* 80160D04 0015DC64 7F C3 F3 78 */ mr r3, r30 +/* 80160D08 0015DC68 7F E4 FB 78 */ mr r4, r31 +/* 80160D0C 0015DC6C 81 9E 00 00 */ lwz r12, 0(r30) +/* 80160D10 0015DC70 38 A0 00 00 */ li r5, 0 +/* 80160D14 0015DC74 81 8C 02 D4 */ lwz r12, 0x2d4(r12) +/* 80160D18 0015DC78 7D 89 03 A6 */ mtctr r12 +/* 80160D1C 0015DC7C 4E 80 04 21 */ bctrl +/* 80160D20 0015DC80 C0 1E 05 F4 */ lfs f0, 0x5f4(r30) +/* 80160D24 0015DC84 38 60 00 00 */ li r3, 0 +/* 80160D28 0015DC88 D0 1E 05 D0 */ stfs f0, 0x5d0(r30) +/* 80160D2C 0015DC8C 88 1E 08 35 */ lbz r0, 0x835(r30) +/* 80160D30 0015DC90 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80160D34 0015DC94 98 1E 08 35 */ stb r0, 0x835(r30) +lbl_80160D38: +/* 80160D38 0015DC98 E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 +/* 80160D3C 0015DC9C CB E1 00 C0 */ lfd f31, 0xc0(r1) +/* 80160D40 0015DCA0 E3 C1 00 B8 */ psq_l f30, 184(r1), 0, qr0 +/* 80160D44 0015DCA4 CB C1 00 B0 */ lfd f30, 0xb0(r1) +/* 80160D48 0015DCA8 E3 A1 00 A8 */ psq_l f29, 168(r1), 0, qr0 +/* 80160D4C 0015DCAC CB A1 00 A0 */ lfd f29, 0xa0(r1) +/* 80160D50 0015DCB0 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 80160D54 0015DCB4 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 80160D58 0015DCB8 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 80160D5C 0015DCBC 7C 08 03 A6 */ mtlr r0 +/* 80160D60 0015DCC0 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 80160D64 0015DCC4 4E 80 00 20 */ blr + +.global Active__6CDroneFR13CStateManager9EStateMsgf +Active__6CDroneFR13CStateManager9EStateMsgf: +/* 80160D68 0015DCC8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80160D6C 0015DCCC 7C 08 02 A6 */ mflr r0 +/* 80160D70 0015DCD0 2C 05 00 01 */ cmpwi r5, 1 +/* 80160D74 0015DCD4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80160D78 0015DCD8 41 82 00 40 */ beq lbl_80160DB8 +/* 80160D7C 0015DCDC 40 80 00 10 */ bge lbl_80160D8C +/* 80160D80 0015DCE0 2C 05 00 00 */ cmpwi r5, 0 +/* 80160D84 0015DCE4 40 80 00 14 */ bge lbl_80160D98 +/* 80160D88 0015DCE8 48 00 00 30 */ b lbl_80160DB8 +lbl_80160D8C: +/* 80160D8C 0015DCEC 2C 05 00 03 */ cmpwi r5, 3 +/* 80160D90 0015DCF0 40 80 00 28 */ bge lbl_80160DB8 +/* 80160D94 0015DCF4 48 00 00 1C */ b lbl_80160DB0 +lbl_80160D98: +/* 80160D98 0015DCF8 C0 03 05 F0 */ lfs f0, 0x5f0(r3) +/* 80160D9C 0015DCFC 38 80 00 01 */ li r4, 1 +/* 80160DA0 0015DD00 D0 03 03 40 */ stfs f0, 0x340(r3) +/* 80160DA4 0015DD04 80 63 04 50 */ lwz r3, 0x450(r3) +/* 80160DA8 0015DD08 4B FD 9C 31 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 80160DAC 0015DD0C 48 00 00 0C */ b lbl_80160DB8 +lbl_80160DB0: +/* 80160DB0 0015DD10 C0 03 05 F8 */ lfs f0, 0x5f8(r3) +/* 80160DB4 0015DD14 D0 03 05 D0 */ stfs f0, 0x5d0(r3) +lbl_80160DB8: +/* 80160DB8 0015DD18 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80160DBC 0015DD1C 7C 08 03 A6 */ mtlr r0 +/* 80160DC0 0015DD20 38 21 00 10 */ addi r1, r1, 0x10 +/* 80160DC4 0015DD24 4E 80 00 20 */ blr + +.global ProjectileAttack__6CDroneFR13CStateManager9EStateMsgf +ProjectileAttack__6CDroneFR13CStateManager9EStateMsgf: +/* 80160DC8 0015DD28 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 80160DCC 0015DD2C 7C 08 02 A6 */ mflr r0 +/* 80160DD0 0015DD30 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 80160DD4 0015DD34 DB E1 00 E0 */ stfd f31, 0xe0(r1) +/* 80160DD8 0015DD38 F3 E1 00 E8 */ psq_st f31, 232(r1), 0, qr0 +/* 80160DDC 0015DD3C 93 E1 00 DC */ stw r31, 0xdc(r1) +/* 80160DE0 0015DD40 93 C1 00 D8 */ stw r30, 0xd8(r1) +/* 80160DE4 0015DD44 93 A1 00 D4 */ stw r29, 0xd4(r1) +/* 80160DE8 0015DD48 2C 05 00 01 */ cmpwi r5, 1 +/* 80160DEC 0015DD4C 7C 7D 1B 78 */ mr r29, r3 +/* 80160DF0 0015DD50 7C 9E 23 78 */ mr r30, r4 +/* 80160DF4 0015DD54 41 82 00 D8 */ beq lbl_80160ECC +/* 80160DF8 0015DD58 40 80 00 10 */ bge lbl_80160E08 +/* 80160DFC 0015DD5C 2C 05 00 00 */ cmpwi r5, 0 +/* 80160E00 0015DD60 40 80 00 14 */ bge lbl_80160E14 +/* 80160E04 0015DD64 48 00 04 28 */ b lbl_8016122C +lbl_80160E08: +/* 80160E08 0015DD68 2C 05 00 03 */ cmpwi r5, 3 +/* 80160E0C 0015DD6C 40 80 04 20 */ bge lbl_8016122C +/* 80160E10 0015DD70 48 00 03 A4 */ b lbl_801611B4 +lbl_80160E14: +/* 80160E14 0015DD74 38 00 00 00 */ li r0, 0 +/* 80160E18 0015DD78 C0 02 9F BC */ lfs f0, lbl_805ABCDC@sda21(r2) +/* 80160E1C 0015DD7C 90 1D 07 C8 */ stw r0, 0x7c8(r29) +/* 80160E20 0015DD80 7F C3 F3 78 */ mr r3, r30 +/* 80160E24 0015DD84 38 81 00 2C */ addi r4, r1, 0x2c +/* 80160E28 0015DD88 80 BD 04 50 */ lwz r5, 0x450(r29) +/* 80160E2C 0015DD8C D0 05 02 D4 */ stfs f0, 0x2d4(r5) +/* 80160E30 0015DD90 A0 1D 06 88 */ lhz r0, 0x688(r29) +/* 80160E34 0015DD94 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 80160E38 0015DD98 4B EE B7 3D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80160E3C 0015DD9C 7C 64 1B 78 */ mr r4, r3 +/* 80160E40 0015DDA0 38 61 00 38 */ addi r3, r1, 0x38 +/* 80160E44 0015DDA4 4B F4 67 31 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 80160E48 0015DDA8 83 C3 00 04 */ lwz r30, 4(r3) +/* 80160E4C 0015DDAC 28 1E 00 00 */ cmplwi r30, 0 +/* 80160E50 0015DDB0 41 82 00 54 */ beq lbl_80160EA4 +/* 80160E54 0015DDB4 A0 1D 00 08 */ lhz r0, 8(r29) +/* 80160E58 0015DDB8 7F C3 F3 78 */ mr r3, r30 +/* 80160E5C 0015DDBC 38 81 00 28 */ addi r4, r1, 0x28 +/* 80160E60 0015DDC0 B0 01 00 24 */ sth r0, 0x24(r1) +/* 80160E64 0015DDC4 B0 01 00 28 */ sth r0, 0x28(r1) +/* 80160E68 0015DDC8 48 0D 82 9D */ bl HasTeamAiRole__10CTeamAiMgrCF9TUniqueId +/* 80160E6C 0015DDCC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80160E70 0015DDD0 41 82 00 34 */ beq lbl_80160EA4 +/* 80160E74 0015DDD4 A0 1D 00 08 */ lhz r0, 8(r29) +/* 80160E78 0015DDD8 7F C3 F3 78 */ mr r3, r30 +/* 80160E7C 0015DDDC 38 81 00 20 */ addi r4, r1, 0x20 +/* 80160E80 0015DDE0 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 80160E84 0015DDE4 B0 01 00 20 */ sth r0, 0x20(r1) +/* 80160E88 0015DDE8 48 0D 77 3D */ bl AddProjectileAttacker__10CTeamAiMgrF9TUniqueId +/* 80160E8C 0015DDEC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80160E90 0015DDF0 38 60 00 02 */ li r3, 2 +/* 80160E94 0015DDF4 41 82 00 08 */ beq lbl_80160E9C +/* 80160E98 0015DDF8 38 60 00 00 */ li r3, 0 +lbl_80160E9C: +/* 80160E9C 0015DDFC 90 7D 07 C8 */ stw r3, 0x7c8(r29) +/* 80160EA0 0015DE00 48 00 00 0C */ b lbl_80160EAC +lbl_80160EA4: +/* 80160EA4 0015DE04 38 00 00 00 */ li r0, 0 +/* 80160EA8 0015DE08 90 1D 07 C8 */ stw r0, 0x7c8(r29) +lbl_80160EAC: +/* 80160EAC 0015DE0C A8 9D 08 30 */ lha r4, 0x830(r29) +/* 80160EB0 0015DE10 38 60 00 01 */ li r3, 1 +/* 80160EB4 0015DE14 38 04 00 01 */ addi r0, r4, 1 +/* 80160EB8 0015DE18 B0 1D 08 30 */ sth r0, 0x830(r29) +/* 80160EBC 0015DE1C 88 1D 08 34 */ lbz r0, 0x834(r29) +/* 80160EC0 0015DE20 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 80160EC4 0015DE24 98 1D 08 34 */ stb r0, 0x834(r29) +/* 80160EC8 0015DE28 48 00 03 64 */ b lbl_8016122C +lbl_80160ECC: +/* 80160ECC 0015DE2C 80 1D 07 C8 */ lwz r0, 0x7c8(r29) +/* 80160ED0 0015DE30 2C 00 00 01 */ cmpwi r0, 1 +/* 80160ED4 0015DE34 41 82 00 E8 */ beq lbl_80160FBC +/* 80160ED8 0015DE38 40 80 02 70 */ bge lbl_80161148 +/* 80160EDC 0015DE3C 2C 00 00 00 */ cmpwi r0, 0 +/* 80160EE0 0015DE40 40 80 00 08 */ bge lbl_80160EE8 +/* 80160EE4 0015DE44 48 00 02 64 */ b lbl_80161148 +lbl_80160EE8: +/* 80160EE8 0015DE48 81 1D 04 50 */ lwz r8, 0x450(r29) +/* 80160EEC 0015DE4C 80 08 02 B8 */ lwz r0, 0x2b8(r8) +/* 80160EF0 0015DE50 2C 00 00 12 */ cmpwi r0, 0x12 +/* 80160EF4 0015DE54 40 82 00 10 */ bne lbl_80160F04 +/* 80160EF8 0015DE58 38 00 00 01 */ li r0, 1 +/* 80160EFC 0015DE5C 90 1D 07 C8 */ stw r0, 0x7c8(r29) +/* 80160F00 0015DE60 48 00 02 48 */ b lbl_80161148 +lbl_80160F04: +/* 80160F04 0015DE64 88 1D 08 34 */ lbz r0, 0x834(r29) +/* 80160F08 0015DE68 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80160F0C 0015DE6C 80 DE 08 4C */ lwz r6, 0x84c(r30) +/* 80160F10 0015DE70 38 83 AA 68 */ addi r4, r3, lbl_803DAA68@l +/* 80160F14 0015DE74 54 05 E7 FE */ rlwinm r5, r0, 0x1c, 0x1f, 0x1f +/* 80160F18 0015DE78 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha +/* 80160F1C 0015DE7C 7C 05 00 D0 */ neg r0, r5 +/* 80160F20 0015DE80 C0 46 00 60 */ lfs f2, 0x60(r6) +/* 80160F24 0015DE84 7C 00 2B 78 */ or r0, r0, r5 +/* 80160F28 0015DE88 C0 26 00 50 */ lfs f1, 0x50(r6) +/* 80160F2C 0015DE8C C0 06 00 40 */ lfs f0, 0x40(r6) +/* 80160F30 0015DE90 54 07 0F FE */ srwi r7, r0, 0x1f +/* 80160F34 0015DE94 38 C0 00 06 */ li r6, 6 +/* 80160F38 0015DE98 38 00 00 00 */ li r0, 0 +/* 80160F3C 0015DE9C 3B E8 00 04 */ addi r31, r8, 4 +/* 80160F40 0015DEA0 90 81 00 AC */ stw r4, 0xac(r1) +/* 80160F44 0015DEA4 38 A3 A9 CC */ addi r5, r3, lbl_803DA9CC@l +/* 80160F48 0015DEA8 38 80 00 06 */ li r4, 6 +/* 80160F4C 0015DEAC 90 C1 00 B0 */ stw r6, 0xb0(r1) +/* 80160F50 0015DEB0 7F E3 FB 78 */ mr r3, r31 +/* 80160F54 0015DEB4 90 A1 00 AC */ stw r5, 0xac(r1) +/* 80160F58 0015DEB8 90 E1 00 B4 */ stw r7, 0xb4(r1) +/* 80160F5C 0015DEBC D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 80160F60 0015DEC0 D0 21 00 BC */ stfs f1, 0xbc(r1) +/* 80160F64 0015DEC4 D0 41 00 C0 */ stfs f2, 0xc0(r1) +/* 80160F68 0015DEC8 98 01 00 C4 */ stb r0, 0xc4(r1) +/* 80160F6C 0015DECC 4B FD 04 CD */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80160F70 0015DED0 80 01 00 B0 */ lwz r0, 0xb0(r1) +/* 80160F74 0015DED4 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha +/* 80160F78 0015DED8 38 83 A9 CC */ addi r4, r3, lbl_803DA9CC@l +/* 80160F7C 0015DEDC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80160F80 0015DEE0 90 1F 01 2C */ stw r0, 0x12c(r31) +/* 80160F84 0015DEE4 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80160F88 0015DEE8 80 61 00 B4 */ lwz r3, 0xb4(r1) +/* 80160F8C 0015DEEC 80 A1 00 B8 */ lwz r5, 0xb8(r1) +/* 80160F90 0015DEF0 90 7F 01 30 */ stw r3, 0x130(r31) +/* 80160F94 0015DEF4 80 61 00 BC */ lwz r3, 0xbc(r1) +/* 80160F98 0015DEF8 90 BF 01 34 */ stw r5, 0x134(r31) +/* 80160F9C 0015DEFC 80 A1 00 C0 */ lwz r5, 0xc0(r1) +/* 80160FA0 0015DF00 90 7F 01 38 */ stw r3, 0x138(r31) +/* 80160FA4 0015DF04 88 61 00 C4 */ lbz r3, 0xc4(r1) +/* 80160FA8 0015DF08 90 BF 01 3C */ stw r5, 0x13c(r31) +/* 80160FAC 0015DF0C 90 81 00 AC */ stw r4, 0xac(r1) +/* 80160FB0 0015DF10 98 7F 01 40 */ stb r3, 0x140(r31) +/* 80160FB4 0015DF14 90 01 00 AC */ stw r0, 0xac(r1) +/* 80160FB8 0015DF18 48 00 01 90 */ b lbl_80161148 +lbl_80160FBC: +/* 80160FBC 0015DF1C 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 80160FC0 0015DF20 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 80160FC4 0015DF24 2C 00 00 12 */ cmpwi r0, 0x12 +/* 80160FC8 0015DF28 41 82 00 0C */ beq lbl_80160FD4 +/* 80160FCC 0015DF2C 38 00 00 02 */ li r0, 2 +/* 80160FD0 0015DF30 90 1D 07 C8 */ stw r0, 0x7c8(r29) +lbl_80160FD4: +/* 80160FD4 0015DF34 80 9E 08 4C */ lwz r4, 0x84c(r30) +/* 80160FD8 0015DF38 7F C5 F3 78 */ mr r5, r30 +/* 80160FDC 0015DF3C 38 61 00 88 */ addi r3, r1, 0x88 +/* 80160FE0 0015DF40 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 80160FE4 0015DF44 81 84 00 00 */ lwz r12, 0(r4) +/* 80160FE8 0015DF48 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 80160FEC 0015DF4C 7D 89 03 A6 */ mtctr r12 +/* 80160FF0 0015DF50 4E 80 04 21 */ bctrl +/* 80160FF4 0015DF54 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 80160FF8 0015DF58 C0 61 00 90 */ lfs f3, 0x90(r1) +/* 80160FFC 0015DF5C C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 80161000 0015DF60 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 80161004 0015DF64 EF E3 10 28 */ fsubs f31, f3, f2 +/* 80161008 0015DF68 C0 9D 06 68 */ lfs f4, 0x668(r29) +/* 8016100C 0015DF6C C0 7D 06 64 */ lfs f3, 0x664(r29) +/* 80161010 0015DF70 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 80161014 0015DF74 FC 04 18 40 */ fcmpo cr0, f4, f3 +/* 80161018 0015DF78 D0 21 00 80 */ stfs f1, 0x80(r1) +/* 8016101C 0015DF7C D0 41 00 84 */ stfs f2, 0x84(r1) +/* 80161020 0015DF80 40 80 00 10 */ bge lbl_80161030 +/* 80161024 0015DF84 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 80161028 0015DF88 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 8016102C 0015DF8C 41 81 00 0C */ bgt lbl_80161038 +lbl_80161030: +/* 80161030 0015DF90 FC 04 18 40 */ fcmpo cr0, f4, f3 +/* 80161034 0015DF94 40 81 01 0C */ ble lbl_80161140 +lbl_80161038: +/* 80161038 0015DF98 C0 1D 06 20 */ lfs f0, 0x620(r29) +/* 8016103C 0015DF9C FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 80161040 0015DFA0 41 81 00 10 */ bgt lbl_80161050 +/* 80161044 0015DFA4 FC 00 00 50 */ fneg f0, f0 +/* 80161048 0015DFA8 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 8016104C 0015DFAC 40 80 00 B0 */ bge lbl_801610FC +lbl_80161050: +/* 80161050 0015DFB0 FC 20 FA 10 */ fabs f1, f31 +/* 80161054 0015DFB4 C0 02 9F B8 */ lfs f0, lbl_805ABCD8@sda21(r2) +/* 80161058 0015DFB8 FC 20 08 18 */ frsp f1, f1 +/* 8016105C 0015DFBC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80161060 0015DFC0 40 81 00 0C */ ble lbl_8016106C +/* 80161064 0015DFC4 C0 22 9F 7C */ lfs f1, lbl_805ABC9C@sda21(r2) +/* 80161068 0015DFC8 48 00 00 0C */ b lbl_80161074 +lbl_8016106C: +/* 8016106C 0015DFCC C0 02 9F 78 */ lfs f0, lbl_805ABC98@sda21(r2) +/* 80161070 0015DFD0 EC 20 00 72 */ fmuls f1, f0, f1 +lbl_80161074: +/* 80161074 0015DFD4 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 80161078 0015DFD8 C0 7D 05 E4 */ lfs f3, 0x5e4(r29) +/* 8016107C 0015DFDC FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 80161080 0015DFE0 40 80 00 08 */ bge lbl_80161088 +/* 80161084 0015DFE4 FC 20 08 50 */ fneg f1, f1 +lbl_80161088: +/* 80161088 0015DFE8 C0 42 9F 68 */ lfs f2, lbl_805ABC88@sda21(r2) +/* 8016108C 0015DFEC EC 03 00 72 */ fmuls f0, f3, f1 +/* 80161090 0015DFF0 C0 22 9F 7C */ lfs f1, lbl_805ABC9C@sda21(r2) +/* 80161094 0015DFF4 38 61 00 64 */ addi r3, r1, 0x64 +/* 80161098 0015DFF8 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 8016109C 0015DFFC 38 9D 00 34 */ addi r4, r29, 0x34 +/* 801610A0 0015E000 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801610A4 0015E004 38 A1 00 A0 */ addi r5, r1, 0xa0 +/* 801610A8 0015E008 EC 21 00 B2 */ fmuls f1, f1, f2 +/* 801610AC 0015E00C D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 801610B0 0015E010 D0 21 00 A0 */ stfs f1, 0xa0(r1) +/* 801610B4 0015E014 D0 21 00 A4 */ stfs f1, 0xa4(r1) +/* 801610B8 0015E018 48 1B 19 6D */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 801610BC 0015E01C C0 22 9F 7C */ lfs f1, lbl_805ABC9C@sda21(r2) +/* 801610C0 0015E020 7F A4 EB 78 */ mr r4, r29 +/* 801610C4 0015E024 38 61 00 70 */ addi r3, r1, 0x70 +/* 801610C8 0015E028 38 A1 00 64 */ addi r5, r1, 0x64 +/* 801610CC 0015E02C 4B FB 9F 3D */ bl GetMoveToORImpulseWR__13CPhysicsActorCFRC9CVector3ff +/* 801610D0 0015E030 C0 41 00 70 */ lfs f2, 0x70(r1) +/* 801610D4 0015E034 C0 21 00 74 */ lfs f1, 0x74(r1) +/* 801610D8 0015E038 C0 01 00 78 */ lfs f0, 0x78(r1) +/* 801610DC 0015E03C D0 41 00 94 */ stfs f2, 0x94(r1) +/* 801610E0 0015E040 D0 21 00 98 */ stfs f1, 0x98(r1) +/* 801610E4 0015E044 D0 01 00 9C */ stfs f0, 0x9c(r1) +/* 801610E8 0015E048 4B EB A4 4D */ bl Identity__10CAxisAngleFv +/* 801610EC 0015E04C 7C 65 1B 78 */ mr r5, r3 +/* 801610F0 0015E050 7F A3 EB 78 */ mr r3, r29 +/* 801610F4 0015E054 38 81 00 94 */ addi r4, r1, 0x94 +/* 801610F8 0015E058 4B FB B2 A1 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +lbl_801610FC: +/* 801610FC 0015E05C C0 3D 06 30 */ lfs f1, 0x630(r29) +/* 80161100 0015E060 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 80161104 0015E064 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80161108 0015E068 4C 40 13 82 */ cror 2, 0, 2 +/* 8016110C 0015E06C 40 82 00 3C */ bne lbl_80161148 +/* 80161110 0015E070 C0 02 9F C0 */ lfs f0, lbl_805ABCE0@sda21(r2) +/* 80161114 0015E074 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 80161118 0015E078 41 81 00 10 */ bgt lbl_80161128 +/* 8016111C 0015E07C C0 02 9F C4 */ lfs f0, lbl_805ABCE4@sda21(r2) +/* 80161120 0015E080 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 80161124 0015E084 40 80 00 10 */ bge lbl_80161134 +lbl_80161128: +/* 80161128 0015E088 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 8016112C 0015E08C D0 1D 06 34 */ stfs f0, 0x634(r29) +/* 80161130 0015E090 48 00 00 18 */ b lbl_80161148 +lbl_80161134: +/* 80161134 0015E094 C0 02 9F A8 */ lfs f0, lbl_805ABCC8@sda21(r2) +/* 80161138 0015E098 D0 1D 06 34 */ stfs f0, 0x634(r29) +/* 8016113C 0015E09C 48 00 00 0C */ b lbl_80161148 +lbl_80161140: +/* 80161140 0015E0A0 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 80161144 0015E0A4 D0 1D 06 34 */ stfs f0, 0x634(r29) +lbl_80161148: +/* 80161148 0015E0A8 80 BE 08 4C */ lwz r5, 0x84c(r30) +/* 8016114C 0015E0AC 38 61 00 58 */ addi r3, r1, 0x58 +/* 80161150 0015E0B0 C0 1D 00 60 */ lfs f0, 0x60(r29) +/* 80161154 0015E0B4 38 81 00 4C */ addi r4, r1, 0x4c +/* 80161158 0015E0B8 C0 A5 00 60 */ lfs f5, 0x60(r5) +/* 8016115C 0015E0BC C0 85 00 50 */ lfs f4, 0x50(r5) +/* 80161160 0015E0C0 C0 5D 00 50 */ lfs f2, 0x50(r29) +/* 80161164 0015E0C4 EC 25 00 28 */ fsubs f1, f5, f0 +/* 80161168 0015E0C8 C0 05 00 40 */ lfs f0, 0x40(r5) +/* 8016116C 0015E0CC C0 7D 00 40 */ lfs f3, 0x40(r29) +/* 80161170 0015E0D0 EC 44 10 28 */ fsubs f2, f4, f2 +/* 80161174 0015E0D4 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 80161178 0015E0D8 EC 00 18 28 */ fsubs f0, f0, f3 +/* 8016117C 0015E0DC D0 81 00 44 */ stfs f4, 0x44(r1) +/* 80161180 0015E0E0 D0 A1 00 48 */ stfs f5, 0x48(r1) +/* 80161184 0015E0E4 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 80161188 0015E0E8 D0 41 00 50 */ stfs f2, 0x50(r1) +/* 8016118C 0015E0EC D0 21 00 54 */ stfs f1, 0x54(r1) +/* 80161190 0015E0F0 48 1B 36 C1 */ bl AsNormalized__9CVector3fCFv +/* 80161194 0015E0F4 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 80161198 0015E0F8 C0 01 00 58 */ lfs f0, 0x58(r1) +/* 8016119C 0015E0FC D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 801611A0 0015E100 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 801611A4 0015E104 D0 03 00 20 */ stfs f0, 0x20(r3) +/* 801611A8 0015E108 C0 01 00 60 */ lfs f0, 0x60(r1) +/* 801611AC 0015E10C D0 03 00 24 */ stfs f0, 0x24(r3) +/* 801611B0 0015E110 48 00 00 7C */ b lbl_8016122C +lbl_801611B4: +/* 801611B4 0015E114 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 801611B8 0015E118 7F C3 F3 78 */ mr r3, r30 +/* 801611BC 0015E11C 80 BD 04 50 */ lwz r5, 0x450(r29) +/* 801611C0 0015E120 38 81 00 18 */ addi r4, r1, 0x18 +/* 801611C4 0015E124 D0 05 02 D4 */ stfs f0, 0x2d4(r5) +/* 801611C8 0015E128 A0 1D 06 88 */ lhz r0, 0x688(r29) +/* 801611CC 0015E12C B0 01 00 18 */ sth r0, 0x18(r1) +/* 801611D0 0015E130 4B EE B3 A5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801611D4 0015E134 7C 64 1B 78 */ mr r4, r3 +/* 801611D8 0015E138 38 61 00 30 */ addi r3, r1, 0x30 +/* 801611DC 0015E13C 4B F4 63 99 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 801611E0 0015E140 83 C3 00 04 */ lwz r30, 4(r3) +/* 801611E4 0015E144 28 1E 00 00 */ cmplwi r30, 0 +/* 801611E8 0015E148 41 82 00 3C */ beq lbl_80161224 +/* 801611EC 0015E14C A0 1D 00 08 */ lhz r0, 8(r29) +/* 801611F0 0015E150 7F C3 F3 78 */ mr r3, r30 +/* 801611F4 0015E154 38 81 00 14 */ addi r4, r1, 0x14 +/* 801611F8 0015E158 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801611FC 0015E15C B0 01 00 14 */ sth r0, 0x14(r1) +/* 80161200 0015E160 48 0D 79 01 */ bl IsProjectileAttacker__10CTeamAiMgrCF9TUniqueId +/* 80161204 0015E164 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80161208 0015E168 41 82 00 1C */ beq lbl_80161224 +/* 8016120C 0015E16C A0 1D 00 08 */ lhz r0, 8(r29) +/* 80161210 0015E170 7F C3 F3 78 */ mr r3, r30 +/* 80161214 0015E174 38 81 00 0C */ addi r4, r1, 0xc +/* 80161218 0015E178 B0 01 00 08 */ sth r0, 8(r1) +/* 8016121C 0015E17C B0 01 00 0C */ sth r0, 0xc(r1) +/* 80161220 0015E180 48 0D 72 C5 */ bl RemoveProjectileAttacker__10CTeamAiMgrF9TUniqueId +lbl_80161224: +/* 80161224 0015E184 C0 1D 05 FC */ lfs f0, 0x5fc(r29) +/* 80161228 0015E188 D0 1D 06 24 */ stfs f0, 0x624(r29) +lbl_8016122C: +/* 8016122C 0015E18C E3 E1 00 E8 */ psq_l f31, 232(r1), 0, qr0 +/* 80161230 0015E190 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 80161234 0015E194 CB E1 00 E0 */ lfd f31, 0xe0(r1) +/* 80161238 0015E198 83 E1 00 DC */ lwz r31, 0xdc(r1) +/* 8016123C 0015E19C 83 C1 00 D8 */ lwz r30, 0xd8(r1) +/* 80161240 0015E1A0 83 A1 00 D4 */ lwz r29, 0xd4(r1) +/* 80161244 0015E1A4 7C 08 03 A6 */ mtlr r0 +/* 80161248 0015E1A8 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 8016124C 0015E1AC 4E 80 00 20 */ blr + +.global sub_80161250 +sub_80161250: +/* 80161250 0015E1B0 80 03 07 C8 */ lwz r0, 0x7c8(r3) +/* 80161254 0015E1B4 20 00 00 02 */ subfic r0, r0, 2 +/* 80161258 0015E1B8 7C 00 00 34 */ cntlzw r0, r0 +/* 8016125C 0015E1BC 54 03 D9 7E */ srwi r3, r0, 5 +/* 80161260 0015E1C0 4E 80 00 20 */ blr + +.global TelegraphAttack__6CDroneFR13CStateManager9EStateMsgf +TelegraphAttack__6CDroneFR13CStateManager9EStateMsgf: +/* 80161264 0015E1C4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80161268 0015E1C8 7C 08 02 A6 */ mflr r0 +/* 8016126C 0015E1CC 2C 05 00 01 */ cmpwi r5, 1 +/* 80161270 0015E1D0 90 01 00 24 */ stw r0, 0x24(r1) +/* 80161274 0015E1D4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80161278 0015E1D8 41 82 00 2C */ beq lbl_801612A4 +/* 8016127C 0015E1DC 40 80 00 10 */ bge lbl_8016128C +/* 80161280 0015E1E0 2C 05 00 00 */ cmpwi r5, 0 +/* 80161284 0015E1E4 40 80 00 14 */ bge lbl_80161298 +/* 80161288 0015E1E8 48 00 00 E8 */ b lbl_80161370 +lbl_8016128C: +/* 8016128C 0015E1EC 2C 05 00 03 */ cmpwi r5, 3 +/* 80161290 0015E1F0 40 80 00 E0 */ bge lbl_80161370 +/* 80161294 0015E1F4 48 00 00 CC */ b lbl_80161360 +lbl_80161298: +/* 80161298 0015E1F8 38 00 00 00 */ li r0, 0 +/* 8016129C 0015E1FC 90 03 07 C8 */ stw r0, 0x7c8(r3) +/* 801612A0 0015E200 48 00 00 D0 */ b lbl_80161370 +lbl_801612A4: +/* 801612A4 0015E204 80 03 07 C8 */ lwz r0, 0x7c8(r3) +/* 801612A8 0015E208 2C 00 00 01 */ cmpwi r0, 1 +/* 801612AC 0015E20C 41 82 00 98 */ beq lbl_80161344 +/* 801612B0 0015E210 40 80 00 C0 */ bge lbl_80161370 +/* 801612B4 0015E214 2C 00 00 00 */ cmpwi r0, 0 +/* 801612B8 0015E218 40 80 00 0C */ bge lbl_801612C4 +/* 801612BC 0015E21C 48 00 00 B4 */ b lbl_80161370 +/* 801612C0 0015E220 48 00 00 B0 */ b lbl_80161370 +lbl_801612C4: +/* 801612C4 0015E224 80 C3 04 50 */ lwz r6, 0x450(r3) +/* 801612C8 0015E228 80 06 02 B8 */ lwz r0, 0x2b8(r6) +/* 801612CC 0015E22C 2C 00 00 10 */ cmpwi r0, 0x10 +/* 801612D0 0015E230 40 82 00 10 */ bne lbl_801612E0 +/* 801612D4 0015E234 38 00 00 01 */ li r0, 1 +/* 801612D8 0015E238 90 03 07 C8 */ stw r0, 0x7c8(r3) +/* 801612DC 0015E23C 48 00 00 94 */ b lbl_80161370 +lbl_801612E0: +/* 801612E0 0015E240 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 801612E4 0015E244 3C 60 80 3E */ lis r3, lbl_803DAA14@ha +/* 801612E8 0015E248 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 801612EC 0015E24C 38 80 00 12 */ li r4, 0x12 +/* 801612F0 0015E250 90 01 00 08 */ stw r0, 8(r1) +/* 801612F4 0015E254 38 A3 AA 14 */ addi r5, r3, lbl_803DAA14@l +/* 801612F8 0015E258 38 00 00 01 */ li r0, 1 +/* 801612FC 0015E25C 3B E6 00 04 */ addi r31, r6, 4 +/* 80161300 0015E260 90 81 00 0C */ stw r4, 0xc(r1) +/* 80161304 0015E264 7F E3 FB 78 */ mr r3, r31 +/* 80161308 0015E268 38 80 00 12 */ li r4, 0x12 +/* 8016130C 0015E26C 90 A1 00 08 */ stw r5, 8(r1) +/* 80161310 0015E270 90 01 00 10 */ stw r0, 0x10(r1) +/* 80161314 0015E274 4B FD 01 25 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80161318 0015E278 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8016131C 0015E27C 3C 60 80 3E */ lis r3, lbl_803DAA14@ha +/* 80161320 0015E280 38 83 AA 14 */ addi r4, r3, lbl_803DAA14@l +/* 80161324 0015E284 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80161328 0015E288 90 1F 02 14 */ stw r0, 0x214(r31) +/* 8016132C 0015E28C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80161330 0015E290 80 61 00 10 */ lwz r3, 0x10(r1) +/* 80161334 0015E294 90 81 00 08 */ stw r4, 8(r1) +/* 80161338 0015E298 90 7F 02 18 */ stw r3, 0x218(r31) +/* 8016133C 0015E29C 90 01 00 08 */ stw r0, 8(r1) +/* 80161340 0015E2A0 48 00 00 30 */ b lbl_80161370 +lbl_80161344: +/* 80161344 0015E2A4 80 83 04 50 */ lwz r4, 0x450(r3) +/* 80161348 0015E2A8 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 8016134C 0015E2AC 2C 00 00 10 */ cmpwi r0, 0x10 +/* 80161350 0015E2B0 41 82 00 20 */ beq lbl_80161370 +/* 80161354 0015E2B4 38 00 00 02 */ li r0, 2 +/* 80161358 0015E2B8 90 03 07 C8 */ stw r0, 0x7c8(r3) +/* 8016135C 0015E2BC 48 00 00 14 */ b lbl_80161370 +lbl_80161360: +/* 80161360 0015E2C0 7C 85 23 78 */ mr r5, r4 +/* 80161364 0015E2C4 38 80 00 09 */ li r4, 9 +/* 80161368 0015E2C8 38 C0 FF FF */ li r6, -1 +/* 8016136C 0015E2CC 4B EE FD 55 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_80161370: +/* 80161370 0015E2D0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80161374 0015E2D4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80161378 0015E2D8 7C 08 03 A6 */ mtlr r0 +/* 8016137C 0015E2DC 38 21 00 20 */ addi r1, r1, 0x20 +/* 80161380 0015E2E0 4E 80 00 20 */ blr + +.global Flee__6CDroneFR13CStateManager9EStateMsgf +Flee__6CDroneFR13CStateManager9EStateMsgf: +/* 80161384 0015E2E4 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 80161388 0015E2E8 7C 08 02 A6 */ mflr r0 +/* 8016138C 0015E2EC 2C 05 00 01 */ cmpwi r5, 1 +/* 80161390 0015E2F0 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 80161394 0015E2F4 93 E1 00 EC */ stw r31, 0xec(r1) +/* 80161398 0015E2F8 93 C1 00 E8 */ stw r30, 0xe8(r1) +/* 8016139C 0015E2FC 7C 9E 23 78 */ mr r30, r4 +/* 801613A0 0015E300 93 A1 00 E4 */ stw r29, 0xe4(r1) +/* 801613A4 0015E304 7C 7D 1B 78 */ mr r29, r3 +/* 801613A8 0015E308 41 82 01 08 */ beq lbl_801614B0 +/* 801613AC 0015E30C 40 80 03 40 */ bge lbl_801616EC +/* 801613B0 0015E310 2C 05 00 00 */ cmpwi r5, 0 +/* 801613B4 0015E314 40 80 00 0C */ bge lbl_801613C0 +/* 801613B8 0015E318 48 00 03 34 */ b lbl_801616EC +/* 801613BC 0015E31C 48 00 03 30 */ b lbl_801616EC +lbl_801613C0: +/* 801613C0 0015E320 38 A0 00 00 */ li r5, 0 +/* 801613C4 0015E324 38 60 00 00 */ li r3, 0 +/* 801613C8 0015E328 90 BD 07 C8 */ stw r5, 0x7c8(r29) +/* 801613CC 0015E32C 38 80 00 01 */ li r4, 1 +/* 801613D0 0015E330 88 1D 08 32 */ lbz r0, 0x832(r29) +/* 801613D4 0015E334 50 A0 2E 34 */ rlwimi r0, r5, 5, 0x18, 0x1a +/* 801613D8 0015E338 98 1D 08 32 */ stb r0, 0x832(r29) +/* 801613DC 0015E33C 80 AD 8D 80 */ lwz r5, lbl_805A7940@sda21(r13) +/* 801613E0 0015E340 48 22 8B 15 */ bl __shl2i +/* 801613E4 0015E344 39 00 00 01 */ li r8, 1 +/* 801613E8 0015E348 38 00 00 00 */ li r0, 0 +/* 801613EC 0015E34C 90 81 00 9C */ stw r4, 0x9c(r1) +/* 801613F0 0015E350 7F C4 F3 78 */ mr r4, r30 +/* 801613F4 0015E354 C0 22 9F B8 */ lfs f1, lbl_805ABCD8@sda21(r2) +/* 801613F8 0015E358 38 A1 00 74 */ addi r5, r1, 0x74 +/* 801613FC 0015E35C 90 61 00 98 */ stw r3, 0x98(r1) +/* 80161400 0015E360 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 80161404 0015E364 38 C1 00 68 */ addi r6, r1, 0x68 +/* 80161408 0015E368 38 E1 00 98 */ addi r7, r1, 0x98 +/* 8016140C 0015E36C 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 80161410 0015E370 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 80161414 0015E374 91 01 00 A8 */ stw r8, 0xa8(r1) +/* 80161418 0015E378 C0 DD 00 58 */ lfs f6, 0x58(r29) +/* 8016141C 0015E37C C0 BD 00 48 */ lfs f5, 0x48(r29) +/* 80161420 0015E380 C0 9D 00 38 */ lfs f4, 0x38(r29) +/* 80161424 0015E384 FC 00 30 50 */ fneg f0, f6 +/* 80161428 0015E388 FC 40 28 50 */ fneg f2, f5 +/* 8016142C 0015E38C 91 01 00 90 */ stw r8, 0x90(r1) +/* 80161430 0015E390 FC 60 20 50 */ fneg f3, f4 +/* 80161434 0015E394 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 80161438 0015E398 D0 61 00 68 */ stfs f3, 0x68(r1) +/* 8016143C 0015E39C D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 80161440 0015E3A0 C0 7D 00 60 */ lfs f3, 0x60(r29) +/* 80161444 0015E3A4 C0 5D 00 50 */ lfs f2, 0x50(r29) +/* 80161448 0015E3A8 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 8016144C 0015E3AC D0 81 00 5C */ stfs f4, 0x5c(r1) +/* 80161450 0015E3B0 D0 A1 00 60 */ stfs f5, 0x60(r1) +/* 80161454 0015E3B4 D0 C1 00 64 */ stfs f6, 0x64(r1) +/* 80161458 0015E3B8 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 8016145C 0015E3BC D0 41 00 78 */ stfs f2, 0x78(r1) +/* 80161460 0015E3C0 D0 61 00 7C */ stfs f3, 0x7c(r1) +/* 80161464 0015E3C4 4B EE BB 35 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 80161468 0015E3C8 88 01 00 D0 */ lbz r0, 0xd0(r1) +/* 8016146C 0015E3CC 28 00 00 00 */ cmplwi r0, 0 +/* 80161470 0015E3D0 41 82 02 7C */ beq lbl_801616EC +/* 80161474 0015E3D4 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 80161478 0015E3D8 48 1B 10 65 */ bl Float__9CRandom16Fv +/* 8016147C 0015E3DC C0 02 9F 80 */ lfs f0, lbl_805ABCA0@sda21(r2) +/* 80161480 0015E3E0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80161484 0015E3E4 40 80 00 18 */ bge lbl_8016149C +/* 80161488 0015E3E8 88 1D 08 32 */ lbz r0, 0x832(r29) +/* 8016148C 0015E3EC 38 60 00 01 */ li r3, 1 +/* 80161490 0015E3F0 50 60 2E 34 */ rlwimi r0, r3, 5, 0x18, 0x1a +/* 80161494 0015E3F4 98 1D 08 32 */ stb r0, 0x832(r29) +/* 80161498 0015E3F8 48 00 02 54 */ b lbl_801616EC +lbl_8016149C: +/* 8016149C 0015E3FC 88 1D 08 32 */ lbz r0, 0x832(r29) +/* 801614A0 0015E400 38 60 00 02 */ li r3, 2 +/* 801614A4 0015E404 50 60 2E 34 */ rlwimi r0, r3, 5, 0x18, 0x1a +/* 801614A8 0015E408 98 1D 08 32 */ stb r0, 0x832(r29) +/* 801614AC 0015E40C 48 00 02 40 */ b lbl_801616EC +lbl_801614B0: +/* 801614B0 0015E410 80 1D 07 C8 */ lwz r0, 0x7c8(r29) +/* 801614B4 0015E414 2C 00 00 01 */ cmpwi r0, 1 +/* 801614B8 0015E418 41 82 01 B4 */ beq lbl_8016166C +/* 801614BC 0015E41C 40 80 01 C8 */ bge lbl_80161684 +/* 801614C0 0015E420 2C 00 00 00 */ cmpwi r0, 0 +/* 801614C4 0015E424 40 80 00 0C */ bge lbl_801614D0 +/* 801614C8 0015E428 48 00 01 BC */ b lbl_80161684 +/* 801614CC 0015E42C 48 00 01 B8 */ b lbl_80161684 +lbl_801614D0: +/* 801614D0 0015E430 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 801614D4 0015E434 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801614D8 0015E438 2C 00 00 03 */ cmpwi r0, 3 +/* 801614DC 0015E43C 40 82 00 10 */ bne lbl_801614EC +/* 801614E0 0015E440 38 00 00 01 */ li r0, 1 +/* 801614E4 0015E444 90 1D 07 C8 */ stw r0, 0x7c8(r29) +/* 801614E8 0015E448 48 00 01 9C */ b lbl_80161684 +lbl_801614EC: +/* 801614EC 0015E44C 88 1D 08 32 */ lbz r0, 0x832(r29) +/* 801614F0 0015E450 3B E3 00 04 */ addi r31, r3, 4 +/* 801614F4 0015E454 54 00 C0 06 */ rlwinm r0, r0, 0x18, 0, 3 +/* 801614F8 0015E458 7C 00 EE 70 */ srawi r0, r0, 0x1d +/* 801614FC 0015E45C 2C 00 00 01 */ cmpwi r0, 1 +/* 80161500 0015E460 41 82 00 8C */ beq lbl_8016158C +/* 80161504 0015E464 40 80 00 10 */ bge lbl_80161514 +/* 80161508 0015E468 2C 00 00 00 */ cmpwi r0, 0 +/* 8016150C 0015E46C 40 80 00 14 */ bge lbl_80161520 +/* 80161510 0015E470 48 00 01 74 */ b lbl_80161684 +lbl_80161514: +/* 80161514 0015E474 2C 00 00 03 */ cmpwi r0, 3 +/* 80161518 0015E478 40 80 01 6C */ bge lbl_80161684 +/* 8016151C 0015E47C 48 00 00 E0 */ b lbl_801615FC +lbl_80161520: +/* 80161520 0015E480 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80161524 0015E484 38 C0 00 01 */ li r6, 1 +/* 80161528 0015E488 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8016152C 0015E48C 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 80161530 0015E490 90 01 00 4C */ stw r0, 0x4c(r1) +/* 80161534 0015E494 38 A3 A9 E4 */ addi r5, r3, lbl_803DA9E4@l +/* 80161538 0015E498 38 00 00 02 */ li r0, 2 +/* 8016153C 0015E49C 7F E3 FB 78 */ mr r3, r31 +/* 80161540 0015E4A0 90 C1 00 50 */ stw r6, 0x50(r1) +/* 80161544 0015E4A4 38 80 00 01 */ li r4, 1 +/* 80161548 0015E4A8 90 A1 00 4C */ stw r5, 0x4c(r1) +/* 8016154C 0015E4AC 90 C1 00 54 */ stw r6, 0x54(r1) +/* 80161550 0015E4B0 90 01 00 58 */ stw r0, 0x58(r1) +/* 80161554 0015E4B4 4B FC FE E5 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80161558 0015E4B8 80 01 00 50 */ lwz r0, 0x50(r1) +/* 8016155C 0015E4BC 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 80161560 0015E4C0 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l +/* 80161564 0015E4C4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80161568 0015E4C8 90 1F 00 C8 */ stw r0, 0xc8(r31) +/* 8016156C 0015E4CC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80161570 0015E4D0 80 A1 00 54 */ lwz r5, 0x54(r1) +/* 80161574 0015E4D4 90 81 00 4C */ stw r4, 0x4c(r1) +/* 80161578 0015E4D8 80 61 00 58 */ lwz r3, 0x58(r1) +/* 8016157C 0015E4DC 90 BF 00 CC */ stw r5, 0xcc(r31) +/* 80161580 0015E4E0 90 7F 00 D0 */ stw r3, 0xd0(r31) +/* 80161584 0015E4E4 90 01 00 4C */ stw r0, 0x4c(r1) +/* 80161588 0015E4E8 48 00 00 FC */ b lbl_80161684 +lbl_8016158C: +/* 8016158C 0015E4EC 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 80161590 0015E4F0 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 80161594 0015E4F4 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 80161598 0015E4F8 38 80 00 01 */ li r4, 1 +/* 8016159C 0015E4FC 90 01 00 3C */ stw r0, 0x3c(r1) +/* 801615A0 0015E500 38 C3 A9 E4 */ addi r6, r3, lbl_803DA9E4@l +/* 801615A4 0015E504 38 A0 00 02 */ li r5, 2 +/* 801615A8 0015E508 38 00 00 00 */ li r0, 0 +/* 801615AC 0015E50C 90 81 00 40 */ stw r4, 0x40(r1) +/* 801615B0 0015E510 7F E3 FB 78 */ mr r3, r31 +/* 801615B4 0015E514 38 80 00 01 */ li r4, 1 +/* 801615B8 0015E518 90 C1 00 3C */ stw r6, 0x3c(r1) +/* 801615BC 0015E51C 90 A1 00 44 */ stw r5, 0x44(r1) +/* 801615C0 0015E520 90 01 00 48 */ stw r0, 0x48(r1) +/* 801615C4 0015E524 4B FC FE 75 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801615C8 0015E528 80 01 00 40 */ lwz r0, 0x40(r1) +/* 801615CC 0015E52C 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 801615D0 0015E530 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l +/* 801615D4 0015E534 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801615D8 0015E538 90 1F 00 C8 */ stw r0, 0xc8(r31) +/* 801615DC 0015E53C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801615E0 0015E540 80 A1 00 44 */ lwz r5, 0x44(r1) +/* 801615E4 0015E544 90 81 00 3C */ stw r4, 0x3c(r1) +/* 801615E8 0015E548 80 61 00 48 */ lwz r3, 0x48(r1) +/* 801615EC 0015E54C 90 BF 00 CC */ stw r5, 0xcc(r31) +/* 801615F0 0015E550 90 7F 00 D0 */ stw r3, 0xd0(r31) +/* 801615F4 0015E554 90 01 00 3C */ stw r0, 0x3c(r1) +/* 801615F8 0015E558 48 00 00 8C */ b lbl_80161684 +lbl_801615FC: +/* 801615FC 0015E55C 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 80161600 0015E560 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 80161604 0015E564 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 80161608 0015E568 38 80 00 01 */ li r4, 1 +/* 8016160C 0015E56C 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80161610 0015E570 38 C3 A9 E4 */ addi r6, r3, lbl_803DA9E4@l +/* 80161614 0015E574 38 A0 00 03 */ li r5, 3 +/* 80161618 0015E578 38 00 00 00 */ li r0, 0 +/* 8016161C 0015E57C 90 81 00 30 */ stw r4, 0x30(r1) +/* 80161620 0015E580 7F E3 FB 78 */ mr r3, r31 +/* 80161624 0015E584 38 80 00 01 */ li r4, 1 +/* 80161628 0015E588 90 C1 00 2C */ stw r6, 0x2c(r1) +/* 8016162C 0015E58C 90 A1 00 34 */ stw r5, 0x34(r1) +/* 80161630 0015E590 90 01 00 38 */ stw r0, 0x38(r1) +/* 80161634 0015E594 4B FC FE 05 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80161638 0015E598 80 01 00 30 */ lwz r0, 0x30(r1) +/* 8016163C 0015E59C 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 80161640 0015E5A0 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l +/* 80161644 0015E5A4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80161648 0015E5A8 90 1F 00 C8 */ stw r0, 0xc8(r31) +/* 8016164C 0015E5AC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80161650 0015E5B0 80 A1 00 34 */ lwz r5, 0x34(r1) +/* 80161654 0015E5B4 90 81 00 2C */ stw r4, 0x2c(r1) +/* 80161658 0015E5B8 80 61 00 38 */ lwz r3, 0x38(r1) +/* 8016165C 0015E5BC 90 BF 00 CC */ stw r5, 0xcc(r31) +/* 80161660 0015E5C0 90 7F 00 D0 */ stw r3, 0xd0(r31) +/* 80161664 0015E5C4 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80161668 0015E5C8 48 00 00 1C */ b lbl_80161684 +lbl_8016166C: +/* 8016166C 0015E5CC 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 80161670 0015E5D0 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 80161674 0015E5D4 2C 00 00 03 */ cmpwi r0, 3 +/* 80161678 0015E5D8 41 82 00 0C */ beq lbl_80161684 +/* 8016167C 0015E5DC 38 00 00 02 */ li r0, 2 +/* 80161680 0015E5E0 90 1D 07 C8 */ stw r0, 0x7c8(r29) +lbl_80161684: +/* 80161684 0015E5E4 80 BE 08 4C */ lwz r5, 0x84c(r30) +/* 80161688 0015E5E8 38 61 00 20 */ addi r3, r1, 0x20 +/* 8016168C 0015E5EC C0 1D 00 60 */ lfs f0, 0x60(r29) +/* 80161690 0015E5F0 38 81 00 14 */ addi r4, r1, 0x14 +/* 80161694 0015E5F4 C0 A5 00 60 */ lfs f5, 0x60(r5) +/* 80161698 0015E5F8 C0 85 00 50 */ lfs f4, 0x50(r5) +/* 8016169C 0015E5FC C0 5D 00 50 */ lfs f2, 0x50(r29) +/* 801616A0 0015E600 EC 25 00 28 */ fsubs f1, f5, f0 +/* 801616A4 0015E604 C0 05 00 40 */ lfs f0, 0x40(r5) +/* 801616A8 0015E608 C0 7D 00 40 */ lfs f3, 0x40(r29) +/* 801616AC 0015E60C EC 44 10 28 */ fsubs f2, f4, f2 +/* 801616B0 0015E610 D0 01 00 08 */ stfs f0, 8(r1) +/* 801616B4 0015E614 EC 00 18 28 */ fsubs f0, f0, f3 +/* 801616B8 0015E618 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 801616BC 0015E61C D0 A1 00 10 */ stfs f5, 0x10(r1) +/* 801616C0 0015E620 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801616C4 0015E624 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801616C8 0015E628 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801616CC 0015E62C 48 1B 31 85 */ bl AsNormalized__9CVector3fCFv +/* 801616D0 0015E630 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 801616D4 0015E634 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 801616D8 0015E638 D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 801616DC 0015E63C C0 01 00 24 */ lfs f0, 0x24(r1) +/* 801616E0 0015E640 D0 03 00 20 */ stfs f0, 0x20(r3) +/* 801616E4 0015E644 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 801616E8 0015E648 D0 03 00 24 */ stfs f0, 0x24(r3) +lbl_801616EC: +/* 801616EC 0015E64C 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 801616F0 0015E650 83 E1 00 EC */ lwz r31, 0xec(r1) +/* 801616F4 0015E654 83 C1 00 E8 */ lwz r30, 0xe8(r1) +/* 801616F8 0015E658 83 A1 00 E4 */ lwz r29, 0xe4(r1) +/* 801616FC 0015E65C 7C 08 03 A6 */ mtlr r0 +/* 80161700 0015E660 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 80161704 0015E664 4E 80 00 20 */ blr + +.global SpecialAttack__6CDroneFR13CStateManager9EStateMsgf +SpecialAttack__6CDroneFR13CStateManager9EStateMsgf: +/* 80161708 0015E668 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 8016170C 0015E66C 7C 08 02 A6 */ mflr r0 +/* 80161710 0015E670 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 80161714 0015E674 DB E1 00 C0 */ stfd f31, 0xc0(r1) +/* 80161718 0015E678 F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 +/* 8016171C 0015E67C DB C1 00 B0 */ stfd f30, 0xb0(r1) +/* 80161720 0015E680 F3 C1 00 B8 */ psq_st f30, 184(r1), 0, qr0 +/* 80161724 0015E684 DB A1 00 A0 */ stfd f29, 0xa0(r1) +/* 80161728 0015E688 F3 A1 00 A8 */ psq_st f29, 168(r1), 0, qr0 +/* 8016172C 0015E68C DB 81 00 90 */ stfd f28, 0x90(r1) +/* 80161730 0015E690 F3 81 00 98 */ psq_st f28, 152(r1), 0, qr0 +/* 80161734 0015E694 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 80161738 0015E698 93 C1 00 88 */ stw r30, 0x88(r1) +/* 8016173C 0015E69C FF E0 08 90 */ fmr f31, f1 +/* 80161740 0015E6A0 2C 05 00 01 */ cmpwi r5, 1 +/* 80161744 0015E6A4 7C 7E 1B 78 */ mr r30, r3 +/* 80161748 0015E6A8 7C 9F 23 78 */ mr r31, r4 +/* 8016174C 0015E6AC 41 82 00 4C */ beq lbl_80161798 +/* 80161750 0015E6B0 40 80 01 DC */ bge lbl_8016192C +/* 80161754 0015E6B4 2C 05 00 00 */ cmpwi r5, 0 +/* 80161758 0015E6B8 40 80 00 0C */ bge lbl_80161764 +/* 8016175C 0015E6BC 48 00 01 D0 */ b lbl_8016192C +/* 80161760 0015E6C0 48 00 01 CC */ b lbl_8016192C +lbl_80161764: +/* 80161764 0015E6C4 80 1E 03 FC */ lwz r0, 0x3fc(r30) +/* 80161768 0015E6C8 2C 00 00 01 */ cmpwi r0, 1 +/* 8016176C 0015E6CC 40 82 00 14 */ bne lbl_80161780 +/* 80161770 0015E6D0 88 1E 08 34 */ lbz r0, 0x834(r30) +/* 80161774 0015E6D4 38 60 00 01 */ li r3, 1 +/* 80161778 0015E6D8 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 8016177C 0015E6DC 98 1E 08 34 */ stb r0, 0x834(r30) +lbl_80161780: +/* 80161780 0015E6E0 C0 1E 06 60 */ lfs f0, 0x660(r30) +/* 80161784 0015E6E4 38 80 00 0A */ li r4, 0xa +/* 80161788 0015E6E8 D0 1E 03 40 */ stfs f0, 0x340(r30) +/* 8016178C 0015E6EC 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80161790 0015E6F0 4B FD 92 49 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 80161794 0015E6F4 48 00 01 98 */ b lbl_8016192C +lbl_80161798: +/* 80161798 0015E6F8 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8016179C 0015E6FC C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 801617A0 0015E700 C0 DE 00 58 */ lfs f6, 0x58(r30) +/* 801617A4 0015E704 38 81 00 68 */ addi r4, r1, 0x68 +/* 801617A8 0015E708 C0 BE 00 48 */ lfs f5, 0x48(r30) +/* 801617AC 0015E70C C0 9E 00 38 */ lfs f4, 0x38(r30) +/* 801617B0 0015E710 C0 43 00 04 */ lfs f2, 4(r3) +/* 801617B4 0015E714 C0 23 00 08 */ lfs f1, 8(r3) +/* 801617B8 0015E718 C0 02 9F 7C */ lfs f0, lbl_805ABC9C@sda21(r2) +/* 801617BC 0015E71C D0 81 00 68 */ stfs f4, 0x68(r1) +/* 801617C0 0015E720 D0 A1 00 6C */ stfs f5, 0x6c(r1) +/* 801617C4 0015E724 D0 C1 00 70 */ stfs f6, 0x70(r1) +/* 801617C8 0015E728 D0 61 00 74 */ stfs f3, 0x74(r1) +/* 801617CC 0015E72C D0 41 00 78 */ stfs f2, 0x78(r1) +/* 801617D0 0015E730 D0 21 00 7C */ stfs f1, 0x7c(r1) +/* 801617D4 0015E734 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 801617D8 0015E738 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801617DC 0015E73C D0 81 00 38 */ stfs f4, 0x38(r1) +/* 801617E0 0015E740 38 63 00 04 */ addi r3, r3, 4 +/* 801617E4 0015E744 D0 A1 00 3C */ stfs f5, 0x3c(r1) +/* 801617E8 0015E748 D0 C1 00 40 */ stfs f6, 0x40(r1) +/* 801617EC 0015E74C 4B FC FF 2D */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 801617F0 0015E750 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 801617F4 0015E754 7F E5 FB 78 */ mr r5, r31 +/* 801617F8 0015E758 38 61 00 2C */ addi r3, r1, 0x2c +/* 801617FC 0015E75C C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 80161800 0015E760 81 84 00 00 */ lwz r12, 0(r4) +/* 80161804 0015E764 C3 84 00 60 */ lfs f28, 0x60(r4) +/* 80161808 0015E768 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8016180C 0015E76C C3 A4 00 50 */ lfs f29, 0x50(r4) +/* 80161810 0015E770 C3 C4 00 40 */ lfs f30, 0x40(r4) +/* 80161814 0015E774 7D 89 03 A6 */ mtctr r12 +/* 80161818 0015E778 4E 80 04 21 */ bctrl +/* 8016181C 0015E77C C0 41 00 30 */ lfs f2, 0x30(r1) +/* 80161820 0015E780 C0 21 00 34 */ lfs f1, 0x34(r1) +/* 80161824 0015E784 C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 80161828 0015E788 EC 42 E8 2A */ fadds f2, f2, f29 +/* 8016182C 0015E78C C0 C2 9F 80 */ lfs f6, lbl_805ABCA0@sda21(r2) +/* 80161830 0015E790 EC 21 E0 2A */ fadds f1, f1, f28 +/* 80161834 0015E794 EC 00 F0 2A */ fadds f0, f0, f30 +/* 80161838 0015E798 C0 9E 00 50 */ lfs f4, 0x50(r30) +/* 8016183C 0015E79C EC A6 00 B2 */ fmuls f5, f6, f2 +/* 80161840 0015E7A0 EC 66 00 72 */ fmuls f3, f6, f1 +/* 80161844 0015E7A4 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 80161848 0015E7A8 EC 26 00 32 */ fmuls f1, f6, f0 +/* 8016184C 0015E7AC C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 80161850 0015E7B0 EC 85 20 28 */ fsubs f4, f5, f4 +/* 80161854 0015E7B4 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80161858 0015E7B8 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8016185C 0015E7BC D0 81 00 60 */ stfs f4, 0x60(r1) +/* 80161860 0015E7C0 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 80161864 0015E7C4 D0 41 00 64 */ stfs f2, 0x64(r1) +/* 80161868 0015E7C8 C0 7E 06 68 */ lfs f3, 0x668(r30) +/* 8016186C 0015E7CC C0 3E 06 64 */ lfs f1, 0x664(r30) +/* 80161870 0015E7D0 FC 03 08 40 */ fcmpo cr0, f3, f1 +/* 80161874 0015E7D4 40 80 00 10 */ bge lbl_80161884 +/* 80161878 0015E7D8 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 8016187C 0015E7DC FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80161880 0015E7E0 41 81 00 0C */ bgt lbl_8016188C +lbl_80161884: +/* 80161884 0015E7E4 FC 03 08 40 */ fcmpo cr0, f3, f1 +/* 80161888 0015E7E8 40 81 00 A4 */ ble lbl_8016192C +lbl_8016188C: +/* 8016188C 0015E7EC 38 61 00 5C */ addi r3, r1, 0x5c +/* 80161890 0015E7F0 48 1B 2E 69 */ bl CanBeNormalized__9CVector3fCFv +/* 80161894 0015E7F4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80161898 0015E7F8 41 82 00 94 */ beq lbl_8016192C +/* 8016189C 0015E7FC C3 DE 05 E4 */ lfs f30, 0x5e4(r30) +/* 801618A0 0015E800 38 61 00 20 */ addi r3, r1, 0x20 +/* 801618A4 0015E804 38 81 00 5C */ addi r4, r1, 0x5c +/* 801618A8 0015E808 48 1B 2F A9 */ bl AsNormalized__9CVector3fCFv +/* 801618AC 0015E80C C0 41 00 20 */ lfs f2, 0x20(r1) +/* 801618B0 0015E810 38 61 00 08 */ addi r3, r1, 8 +/* 801618B4 0015E814 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 801618B8 0015E818 38 9E 00 34 */ addi r4, r30, 0x34 +/* 801618BC 0015E81C C0 01 00 28 */ lfs f0, 0x28(r1) +/* 801618C0 0015E820 EC 5E 00 B2 */ fmuls f2, f30, f2 +/* 801618C4 0015E824 EC 3E 00 72 */ fmuls f1, f30, f1 +/* 801618C8 0015E828 38 A1 00 50 */ addi r5, r1, 0x50 +/* 801618CC 0015E82C EC 1E 00 32 */ fmuls f0, f30, f0 +/* 801618D0 0015E830 EC 5F 00 B2 */ fmuls f2, f31, f2 +/* 801618D4 0015E834 EC 3F 00 72 */ fmuls f1, f31, f1 +/* 801618D8 0015E838 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801618DC 0015E83C D0 41 00 50 */ stfs f2, 0x50(r1) +/* 801618E0 0015E840 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 801618E4 0015E844 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 801618E8 0015E848 48 1B 11 3D */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 801618EC 0015E84C FC 20 F8 90 */ fmr f1, f31 +/* 801618F0 0015E850 7F C4 F3 78 */ mr r4, r30 +/* 801618F4 0015E854 38 61 00 14 */ addi r3, r1, 0x14 +/* 801618F8 0015E858 38 A1 00 08 */ addi r5, r1, 8 +/* 801618FC 0015E85C 4B FB 97 0D */ bl GetMoveToORImpulseWR__13CPhysicsActorCFRC9CVector3ff +/* 80161900 0015E860 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 80161904 0015E864 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 80161908 0015E868 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 8016190C 0015E86C D0 41 00 44 */ stfs f2, 0x44(r1) +/* 80161910 0015E870 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 80161914 0015E874 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 80161918 0015E878 4B EB 9C 1D */ bl Identity__10CAxisAngleFv +/* 8016191C 0015E87C 7C 65 1B 78 */ mr r5, r3 +/* 80161920 0015E880 7F C3 F3 78 */ mr r3, r30 +/* 80161924 0015E884 38 81 00 44 */ addi r4, r1, 0x44 +/* 80161928 0015E888 4B FB AA 71 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +lbl_8016192C: +/* 8016192C 0015E88C E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 +/* 80161930 0015E890 CB E1 00 C0 */ lfd f31, 0xc0(r1) +/* 80161934 0015E894 E3 C1 00 B8 */ psq_l f30, 184(r1), 0, qr0 +/* 80161938 0015E898 CB C1 00 B0 */ lfd f30, 0xb0(r1) +/* 8016193C 0015E89C E3 A1 00 A8 */ psq_l f29, 168(r1), 0, qr0 +/* 80161940 0015E8A0 CB A1 00 A0 */ lfd f29, 0xa0(r1) +/* 80161944 0015E8A4 E3 81 00 98 */ psq_l f28, 152(r1), 0, qr0 +/* 80161948 0015E8A8 CB 81 00 90 */ lfd f28, 0x90(r1) +/* 8016194C 0015E8AC 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 80161950 0015E8B0 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 80161954 0015E8B4 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 80161958 0015E8B8 7C 08 03 A6 */ mtlr r0 +/* 8016195C 0015E8BC 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 80161960 0015E8C0 4E 80 00 20 */ blr + +.global Retreat__6CDroneFR13CStateManager9EStateMsgf +Retreat__6CDroneFR13CStateManager9EStateMsgf: +/* 80161964 0015E8C4 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80161968 0015E8C8 7C 08 02 A6 */ mflr r0 +/* 8016196C 0015E8CC 2C 05 00 01 */ cmpwi r5, 1 +/* 80161970 0015E8D0 90 01 00 54 */ stw r0, 0x54(r1) +/* 80161974 0015E8D4 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80161978 0015E8D8 7C 9F 23 78 */ mr r31, r4 +/* 8016197C 0015E8DC 93 C1 00 48 */ stw r30, 0x48(r1) +/* 80161980 0015E8E0 7C 7E 1B 78 */ mr r30, r3 +/* 80161984 0015E8E4 93 A1 00 44 */ stw r29, 0x44(r1) +/* 80161988 0015E8E8 41 82 00 48 */ beq lbl_801619D0 +/* 8016198C 0015E8EC 40 80 01 A0 */ bge lbl_80161B2C +/* 80161990 0015E8F0 2C 05 00 00 */ cmpwi r5, 0 +/* 80161994 0015E8F4 40 80 00 0C */ bge lbl_801619A0 +/* 80161998 0015E8F8 48 00 01 94 */ b lbl_80161B2C +/* 8016199C 0015E8FC 48 00 01 90 */ b lbl_80161B2C +lbl_801619A0: +/* 801619A0 0015E900 38 00 00 00 */ li r0, 0 +/* 801619A4 0015E904 90 1E 07 C8 */ stw r0, 0x7c8(r30) +/* 801619A8 0015E908 80 1E 03 FC */ lwz r0, 0x3fc(r30) +/* 801619AC 0015E90C 2C 00 00 01 */ cmpwi r0, 1 +/* 801619B0 0015E910 40 82 00 14 */ bne lbl_801619C4 +/* 801619B4 0015E914 88 1E 08 34 */ lbz r0, 0x834(r30) +/* 801619B8 0015E918 38 60 00 01 */ li r3, 1 +/* 801619BC 0015E91C 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801619C0 0015E920 98 1E 08 34 */ stb r0, 0x834(r30) +lbl_801619C4: +/* 801619C4 0015E924 C0 1E 06 5C */ lfs f0, 0x65c(r30) +/* 801619C8 0015E928 D0 1E 03 40 */ stfs f0, 0x340(r30) +/* 801619CC 0015E92C 48 00 01 60 */ b lbl_80161B2C +lbl_801619D0: +/* 801619D0 0015E930 80 1E 07 C8 */ lwz r0, 0x7c8(r30) +/* 801619D4 0015E934 2C 00 00 01 */ cmpwi r0, 1 +/* 801619D8 0015E938 41 82 00 AC */ beq lbl_80161A84 +/* 801619DC 0015E93C 40 80 00 10 */ bge lbl_801619EC +/* 801619E0 0015E940 2C 00 00 00 */ cmpwi r0, 0 +/* 801619E4 0015E944 40 80 00 14 */ bge lbl_801619F8 +/* 801619E8 0015E948 48 00 00 C0 */ b lbl_80161AA8 +lbl_801619EC: +/* 801619EC 0015E94C 2C 00 00 03 */ cmpwi r0, 3 +/* 801619F0 0015E950 40 80 00 B8 */ bge lbl_80161AA8 +/* 801619F4 0015E954 48 00 00 AC */ b lbl_80161AA0 +lbl_801619F8: +/* 801619F8 0015E958 80 9E 04 50 */ lwz r4, 0x450(r30) +/* 801619FC 0015E95C 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 80161A00 0015E960 2C 00 00 03 */ cmpwi r0, 3 +/* 80161A04 0015E964 40 82 00 10 */ bne lbl_80161A14 +/* 80161A08 0015E968 38 00 00 01 */ li r0, 1 +/* 80161A0C 0015E96C 90 1E 07 C8 */ stw r0, 0x7c8(r30) +/* 80161A10 0015E970 48 00 00 98 */ b lbl_80161AA8 +lbl_80161A14: +/* 80161A14 0015E974 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80161A18 0015E978 38 C0 00 01 */ li r6, 1 +/* 80161A1C 0015E97C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80161A20 0015E980 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 80161A24 0015E984 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80161A28 0015E988 38 A3 A9 E4 */ addi r5, r3, lbl_803DA9E4@l +/* 80161A2C 0015E98C 38 00 00 00 */ li r0, 0 +/* 80161A30 0015E990 3B A4 00 04 */ addi r29, r4, 4 +/* 80161A34 0015E994 90 C1 00 30 */ stw r6, 0x30(r1) +/* 80161A38 0015E998 7F A3 EB 78 */ mr r3, r29 +/* 80161A3C 0015E99C 38 80 00 01 */ li r4, 1 +/* 80161A40 0015E9A0 90 A1 00 2C */ stw r5, 0x2c(r1) +/* 80161A44 0015E9A4 90 C1 00 34 */ stw r6, 0x34(r1) +/* 80161A48 0015E9A8 90 01 00 38 */ stw r0, 0x38(r1) +/* 80161A4C 0015E9AC 4B FC F9 ED */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80161A50 0015E9B0 80 01 00 30 */ lwz r0, 0x30(r1) +/* 80161A54 0015E9B4 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 80161A58 0015E9B8 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l +/* 80161A5C 0015E9BC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80161A60 0015E9C0 90 1D 00 C8 */ stw r0, 0xc8(r29) +/* 80161A64 0015E9C4 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80161A68 0015E9C8 80 A1 00 34 */ lwz r5, 0x34(r1) +/* 80161A6C 0015E9CC 90 81 00 2C */ stw r4, 0x2c(r1) +/* 80161A70 0015E9D0 80 61 00 38 */ lwz r3, 0x38(r1) +/* 80161A74 0015E9D4 90 BD 00 CC */ stw r5, 0xcc(r29) +/* 80161A78 0015E9D8 90 7D 00 D0 */ stw r3, 0xd0(r29) +/* 80161A7C 0015E9DC 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80161A80 0015E9E0 48 00 00 28 */ b lbl_80161AA8 +lbl_80161A84: +/* 80161A84 0015E9E4 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80161A88 0015E9E8 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 80161A8C 0015E9EC 2C 00 00 03 */ cmpwi r0, 3 +/* 80161A90 0015E9F0 41 82 00 18 */ beq lbl_80161AA8 +/* 80161A94 0015E9F4 38 00 00 02 */ li r0, 2 +/* 80161A98 0015E9F8 90 1E 07 C8 */ stw r0, 0x7c8(r30) +/* 80161A9C 0015E9FC 48 00 00 0C */ b lbl_80161AA8 +lbl_80161AA0: +/* 80161AA0 0015EA00 38 00 00 00 */ li r0, 0 +/* 80161AA4 0015EA04 90 1E 07 C8 */ stw r0, 0x7c8(r30) +lbl_80161AA8: +/* 80161AA8 0015EA08 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 80161AAC 0015EA0C 38 61 00 20 */ addi r3, r1, 0x20 +/* 80161AB0 0015EA10 C0 1E 00 60 */ lfs f0, 0x60(r30) +/* 80161AB4 0015EA14 38 81 00 14 */ addi r4, r1, 0x14 +/* 80161AB8 0015EA18 C0 A5 00 60 */ lfs f5, 0x60(r5) +/* 80161ABC 0015EA1C C0 85 00 50 */ lfs f4, 0x50(r5) +/* 80161AC0 0015EA20 C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 80161AC4 0015EA24 EC 25 00 28 */ fsubs f1, f5, f0 +/* 80161AC8 0015EA28 C0 05 00 40 */ lfs f0, 0x40(r5) +/* 80161ACC 0015EA2C C0 7E 00 40 */ lfs f3, 0x40(r30) +/* 80161AD0 0015EA30 EC 44 10 28 */ fsubs f2, f4, f2 +/* 80161AD4 0015EA34 D0 01 00 08 */ stfs f0, 8(r1) +/* 80161AD8 0015EA38 EC 00 18 28 */ fsubs f0, f0, f3 +/* 80161ADC 0015EA3C D0 81 00 0C */ stfs f4, 0xc(r1) +/* 80161AE0 0015EA40 D0 A1 00 10 */ stfs f5, 0x10(r1) +/* 80161AE4 0015EA44 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80161AE8 0015EA48 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 80161AEC 0015EA4C D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 80161AF0 0015EA50 48 1B 2D 61 */ bl AsNormalized__9CVector3fCFv +/* 80161AF4 0015EA54 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80161AF8 0015EA58 C0 21 00 20 */ lfs f1, 0x20(r1) +/* 80161AFC 0015EA5C C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 80161B00 0015EA60 D0 23 00 1C */ stfs f1, 0x1c(r3) +/* 80161B04 0015EA64 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 80161B08 0015EA68 D0 23 00 20 */ stfs f1, 0x20(r3) +/* 80161B0C 0015EA6C C0 21 00 28 */ lfs f1, 0x28(r1) +/* 80161B10 0015EA70 D0 23 00 24 */ stfs f1, 0x24(r3) +/* 80161B14 0015EA74 C0 3E 06 30 */ lfs f1, 0x630(r30) +/* 80161B18 0015EA78 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80161B1C 0015EA7C 4C 40 13 82 */ cror 2, 0, 2 +/* 80161B20 0015EA80 40 82 00 0C */ bne lbl_80161B2C +/* 80161B24 0015EA84 C0 02 9F A8 */ lfs f0, lbl_805ABCC8@sda21(r2) +/* 80161B28 0015EA88 D0 1E 06 34 */ stfs f0, 0x634(r30) +lbl_80161B2C: +/* 80161B2C 0015EA8C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80161B30 0015EA90 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 80161B34 0015EA94 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 80161B38 0015EA98 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 80161B3C 0015EA9C 7C 08 03 A6 */ mtlr r0 +/* 80161B40 0015EAA0 38 21 00 50 */ addi r1, r1, 0x50 +/* 80161B44 0015EAA4 4E 80 00 20 */ blr + +.global TargetPatrol__6CDroneFR13CStateManager9EStateMsgf +TargetPatrol__6CDroneFR13CStateManager9EStateMsgf: +/* 80161B48 0015EAA8 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 80161B4C 0015EAAC 7C 08 02 A6 */ mflr r0 +/* 80161B50 0015EAB0 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 80161B54 0015EAB4 DB E1 00 B0 */ stfd f31, 0xb0(r1) +/* 80161B58 0015EAB8 F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 +/* 80161B5C 0015EABC DB C1 00 A0 */ stfd f30, 0xa0(r1) +/* 80161B60 0015EAC0 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 +/* 80161B64 0015EAC4 DB A1 00 90 */ stfd f29, 0x90(r1) +/* 80161B68 0015EAC8 F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0 +/* 80161B6C 0015EACC 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 80161B70 0015EAD0 93 C1 00 88 */ stw r30, 0x88(r1) +/* 80161B74 0015EAD4 2C 05 00 01 */ cmpwi r5, 1 +/* 80161B78 0015EAD8 7C 7E 1B 78 */ mr r30, r3 +/* 80161B7C 0015EADC 7C 9F 23 78 */ mr r31, r4 +/* 80161B80 0015EAE0 41 82 00 D8 */ beq lbl_80161C58 +/* 80161B84 0015EAE4 40 80 00 10 */ bge lbl_80161B94 +/* 80161B88 0015EAE8 2C 05 00 00 */ cmpwi r5, 0 +/* 80161B8C 0015EAEC 40 80 00 14 */ bge lbl_80161BA0 +/* 80161B90 0015EAF0 48 00 02 10 */ b lbl_80161DA0 +lbl_80161B94: +/* 80161B94 0015EAF4 2C 05 00 03 */ cmpwi r5, 3 +/* 80161B98 0015EAF8 40 80 02 08 */ bge lbl_80161DA0 +/* 80161B9C 0015EAFC 48 00 01 C0 */ b lbl_80161D5C +lbl_80161BA0: +/* 80161BA0 0015EB00 C0 1E 05 EC */ lfs f0, 0x5ec(r30) +/* 80161BA4 0015EB04 D0 1E 03 B8 */ stfs f0, 0x3b8(r30) +/* 80161BA8 0015EB08 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80161BAC 0015EB0C C0 3E 05 EC */ lfs f1, 0x5ec(r30) +/* 80161BB0 0015EB10 4B FD 8D F5 */ bl SetTurnSpeed__15CBodyControllerFf +/* 80161BB4 0015EB14 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80161BB8 0015EB18 80 03 02 EC */ lwz r0, 0x2ec(r3) +/* 80161BBC 0015EB1C 2C 00 00 03 */ cmpwi r0, 3 +/* 80161BC0 0015EB20 41 82 00 0C */ beq lbl_80161BCC +/* 80161BC4 0015EB24 38 80 00 03 */ li r4, 3 +/* 80161BC8 0015EB28 4B FD 8E 11 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +lbl_80161BCC: +/* 80161BCC 0015EB2C C0 02 9F BC */ lfs f0, lbl_805ABCDC@sda21(r2) +/* 80161BD0 0015EB30 7F E5 FB 78 */ mr r5, r31 +/* 80161BD4 0015EB34 80 9E 04 50 */ lwz r4, 0x450(r30) +/* 80161BD8 0015EB38 38 61 00 5C */ addi r3, r1, 0x5c +/* 80161BDC 0015EB3C C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 80161BE0 0015EB40 D0 04 02 D4 */ stfs f0, 0x2d4(r4) +/* 80161BE4 0015EB44 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 80161BE8 0015EB48 81 84 00 00 */ lwz r12, 0(r4) +/* 80161BEC 0015EB4C 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 80161BF0 0015EB50 7D 89 03 A6 */ mtctr r12 +/* 80161BF4 0015EB54 4E 80 04 21 */ bctrl +/* 80161BF8 0015EB58 7F C3 F3 78 */ mr r3, r30 +/* 80161BFC 0015EB5C 38 81 00 5C */ addi r4, r1, 0x5c +/* 80161C00 0015EB60 4B F1 AF 5D */ bl SetDestPos__10CPatternedFRC9CVector3f +/* 80161C04 0015EB64 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 80161C08 0015EB68 38 60 00 00 */ li r3, 0 +/* 80161C0C 0015EB6C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80161C10 0015EB70 98 1E 04 00 */ stb r0, 0x400(r30) +/* 80161C14 0015EB74 80 1E 03 FC */ lwz r0, 0x3fc(r30) +/* 80161C18 0015EB78 2C 00 00 01 */ cmpwi r0, 1 +/* 80161C1C 0015EB7C 40 82 00 14 */ bne lbl_80161C30 +/* 80161C20 0015EB80 88 1E 08 34 */ lbz r0, 0x834(r30) +/* 80161C24 0015EB84 38 60 00 01 */ li r3, 1 +/* 80161C28 0015EB88 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 80161C2C 0015EB8C 98 1E 08 34 */ stb r0, 0x834(r30) +lbl_80161C30: +/* 80161C30 0015EB90 C0 2D 8D 7C */ lfs f1, lbl_805A793C@sda21(r13) +/* 80161C34 0015EB94 C0 1E 06 24 */ lfs f0, 0x624(r30) +/* 80161C38 0015EB98 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80161C3C 0015EB9C 40 80 00 0C */ bge lbl_80161C48 +/* 80161C40 0015EBA0 38 7E 06 24 */ addi r3, r30, 0x624 +/* 80161C44 0015EBA4 48 00 00 08 */ b lbl_80161C4C +lbl_80161C48: +/* 80161C48 0015EBA8 38 6D 8D 7C */ addi r3, r13, lbl_805A793C@sda21 +lbl_80161C4C: +/* 80161C4C 0015EBAC C0 03 00 00 */ lfs f0, 0(r3) +/* 80161C50 0015EBB0 D0 1E 03 40 */ stfs f0, 0x340(r30) +/* 80161C54 0015EBB4 48 00 01 4C */ b lbl_80161DA0 +lbl_80161C58: +/* 80161C58 0015EBB8 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 80161C5C 0015EBBC 7F E5 FB 78 */ mr r5, r31 +/* 80161C60 0015EBC0 38 61 00 38 */ addi r3, r1, 0x38 +/* 80161C64 0015EBC4 C3 BE 00 60 */ lfs f29, 0x60(r30) +/* 80161C68 0015EBC8 81 84 00 00 */ lwz r12, 0(r4) +/* 80161C6C 0015EBCC C3 DE 00 50 */ lfs f30, 0x50(r30) +/* 80161C70 0015EBD0 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 80161C74 0015EBD4 C3 FE 00 40 */ lfs f31, 0x40(r30) +/* 80161C78 0015EBD8 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 80161C7C 0015EBDC 7D 89 03 A6 */ mtctr r12 +/* 80161C80 0015EBE0 4E 80 04 21 */ bctrl +/* 80161C84 0015EBE4 C0 41 00 38 */ lfs f2, 0x38(r1) +/* 80161C88 0015EBE8 38 61 00 50 */ addi r3, r1, 0x50 +/* 80161C8C 0015EBEC C0 21 00 3C */ lfs f1, 0x3c(r1) +/* 80161C90 0015EBF0 38 81 00 44 */ addi r4, r1, 0x44 +/* 80161C94 0015EBF4 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 80161C98 0015EBF8 EC 42 F8 28 */ fsubs f2, f2, f31 +/* 80161C9C 0015EBFC EC 21 F0 28 */ fsubs f1, f1, f30 +/* 80161CA0 0015EC00 EC 00 E8 28 */ fsubs f0, f0, f29 +/* 80161CA4 0015EC04 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 80161CA8 0015EC08 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 80161CAC 0015EC0C D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 80161CB0 0015EC10 48 1B 2B A1 */ bl AsNormalized__9CVector3fCFv +/* 80161CB4 0015EC14 C0 DE 00 58 */ lfs f6, 0x58(r30) +/* 80161CB8 0015EC18 38 81 00 68 */ addi r4, r1, 0x68 +/* 80161CBC 0015EC1C C0 BE 00 48 */ lfs f5, 0x48(r30) +/* 80161CC0 0015EC20 C0 02 9F A0 */ lfs f0, lbl_805ABCC0@sda21(r2) +/* 80161CC4 0015EC24 C0 5E 00 38 */ lfs f2, 0x38(r30) +/* 80161CC8 0015EC28 EC 80 01 72 */ fmuls f4, f0, f5 +/* 80161CCC 0015EC2C C3 E1 00 50 */ lfs f31, 0x50(r1) +/* 80161CD0 0015EC30 EC 60 01 B2 */ fmuls f3, f0, f6 +/* 80161CD4 0015EC34 C3 A1 00 54 */ lfs f29, 0x54(r1) +/* 80161CD8 0015EC38 EC 20 00 B2 */ fmuls f1, f0, f2 +/* 80161CDC 0015EC3C C3 C1 00 58 */ lfs f30, 0x58(r1) +/* 80161CE0 0015EC40 C0 02 9F 7C */ lfs f0, lbl_805ABC9C@sda21(r2) +/* 80161CE4 0015EC44 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 80161CE8 0015EC48 D0 81 00 6C */ stfs f4, 0x6c(r1) +/* 80161CEC 0015EC4C D0 61 00 70 */ stfs f3, 0x70(r1) +/* 80161CF0 0015EC50 D3 E1 00 74 */ stfs f31, 0x74(r1) +/* 80161CF4 0015EC54 D3 A1 00 78 */ stfs f29, 0x78(r1) +/* 80161CF8 0015EC58 D3 C1 00 7C */ stfs f30, 0x7c(r1) +/* 80161CFC 0015EC5C D0 01 00 80 */ stfs f0, 0x80(r1) +/* 80161D00 0015EC60 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80161D04 0015EC64 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 80161D08 0015EC68 38 63 00 04 */ addi r3, r3, 4 +/* 80161D0C 0015EC6C D0 A1 00 24 */ stfs f5, 0x24(r1) +/* 80161D10 0015EC70 D0 C1 00 28 */ stfs f6, 0x28(r1) +/* 80161D14 0015EC74 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 80161D18 0015EC78 D0 81 00 30 */ stfs f4, 0x30(r1) +/* 80161D1C 0015EC7C D0 61 00 34 */ stfs f3, 0x34(r1) +/* 80161D20 0015EC80 4B FC F9 F9 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 80161D24 0015EC84 80 BE 04 50 */ lwz r5, 0x450(r30) +/* 80161D28 0015EC88 7F C3 F3 78 */ mr r3, r30 +/* 80161D2C 0015EC8C 7F E4 FB 78 */ mr r4, r31 +/* 80161D30 0015EC90 D3 E5 00 1C */ stfs f31, 0x1c(r5) +/* 80161D34 0015EC94 D3 A5 00 20 */ stfs f29, 0x20(r5) +/* 80161D38 0015EC98 D3 C5 00 24 */ stfs f30, 0x24(r5) +/* 80161D3C 0015EC9C 4B FF D7 D5 */ bl sub_8015f510 +/* 80161D40 0015ECA0 C0 3E 06 30 */ lfs f1, 0x630(r30) +/* 80161D44 0015ECA4 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 80161D48 0015ECA8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80161D4C 0015ECAC 4C 40 13 82 */ cror 2, 0, 2 +/* 80161D50 0015ECB0 40 82 00 50 */ bne lbl_80161DA0 +/* 80161D54 0015ECB4 D0 1E 06 34 */ stfs f0, 0x634(r30) +/* 80161D58 0015ECB8 48 00 00 48 */ b lbl_80161DA0 +lbl_80161D5C: +/* 80161D5C 0015ECBC 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 80161D60 0015ECC0 38 81 00 14 */ addi r4, r1, 0x14 +/* 80161D64 0015ECC4 C0 1E 06 64 */ lfs f0, 0x664(r30) +/* 80161D68 0015ECC8 C0 A5 00 60 */ lfs f5, 0x60(r5) +/* 80161D6C 0015ECCC C0 85 00 50 */ lfs f4, 0x50(r5) +/* 80161D70 0015ECD0 C0 25 00 40 */ lfs f1, 0x40(r5) +/* 80161D74 0015ECD4 EC 45 00 2A */ fadds f2, f5, f0 +/* 80161D78 0015ECD8 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 80161D7C 0015ECDC D0 21 00 08 */ stfs f1, 8(r1) +/* 80161D80 0015ECE0 EC 64 00 2A */ fadds f3, f4, f0 +/* 80161D84 0015ECE4 EC 01 00 2A */ fadds f0, f1, f0 +/* 80161D88 0015ECE8 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 80161D8C 0015ECEC D0 A1 00 10 */ stfs f5, 0x10(r1) +/* 80161D90 0015ECF0 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80161D94 0015ECF4 D0 61 00 18 */ stfs f3, 0x18(r1) +/* 80161D98 0015ECF8 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 80161D9C 0015ECFC 4B F1 AD C1 */ bl SetDestPos__10CPatternedFRC9CVector3f +lbl_80161DA0: +/* 80161DA0 0015ED00 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 +/* 80161DA4 0015ED04 CB E1 00 B0 */ lfd f31, 0xb0(r1) +/* 80161DA8 0015ED08 E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 +/* 80161DAC 0015ED0C CB C1 00 A0 */ lfd f30, 0xa0(r1) +/* 80161DB0 0015ED10 E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0 +/* 80161DB4 0015ED14 CB A1 00 90 */ lfd f29, 0x90(r1) +/* 80161DB8 0015ED18 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 80161DBC 0015ED1C 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 80161DC0 0015ED20 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 80161DC4 0015ED24 7C 08 03 A6 */ mtlr r0 +/* 80161DC8 0015ED28 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 80161DCC 0015ED2C 4E 80 00 20 */ blr + +.global AddToRenderer__6CDroneCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__6CDroneCFRC14CFrustumPlanesRC13CStateManager: +/* 80161DD0 0015ED30 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80161DD4 0015ED34 7C 08 02 A6 */ mflr r0 +/* 80161DD8 0015ED38 90 01 00 14 */ stw r0, 0x14(r1) +/* 80161DDC 0015ED3C 4B F1 5A DD */ bl AddToRenderer__10CPatternedCFRC14CFrustumPlanesRC13CStateManager +/* 80161DE0 0015ED40 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80161DE4 0015ED44 7C 08 03 A6 */ mtlr r0 +/* 80161DE8 0015ED48 38 21 00 10 */ addi r1, r1, 0x10 +/* 80161DEC 0015ED4C 4E 80 00 20 */ blr + +.global Render__6CDroneCFRC13CStateManager +Render__6CDroneCFRC13CStateManager: +/* 80161DF0 0015ED50 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 80161DF4 0015ED54 7C 08 02 A6 */ mflr r0 +/* 80161DF8 0015ED58 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 80161DFC 0015ED5C 93 E1 00 BC */ stw r31, 0xbc(r1) +/* 80161E00 0015ED60 93 C1 00 B8 */ stw r30, 0xb8(r1) +/* 80161E04 0015ED64 7C 9E 23 78 */ mr r30, r4 +/* 80161E08 0015ED68 93 A1 00 B4 */ stw r29, 0xb4(r1) +/* 80161E0C 0015ED6C 7C 7D 1B 78 */ mr r29, r3 +/* 80161E10 0015ED70 93 81 00 B0 */ stw r28, 0xb0(r1) +/* 80161E14 0015ED74 81 83 00 00 */ lwz r12, 0(r3) +/* 80161E18 0015ED78 80 03 03 FC */ lwz r0, 0x3fc(r3) +/* 80161E1C 0015ED7C 80 A3 00 04 */ lwz r5, 4(r3) +/* 80161E20 0015ED80 20 00 00 01 */ subfic r0, r0, 1 +/* 80161E24 0015ED84 81 8C 02 B4 */ lwz r12, 0x2b4(r12) +/* 80161E28 0015ED88 7C 00 00 34 */ cntlzw r0, r0 +/* 80161E2C 0015ED8C 90 A1 00 20 */ stw r5, 0x20(r1) +/* 80161E30 0015ED90 54 1F D9 7E */ srwi r31, r0, 5 +/* 80161E34 0015ED94 7D 89 03 A6 */ mtctr r12 +/* 80161E38 0015ED98 4E 80 04 21 */ bctrl +/* 80161E3C 0015ED9C 54 64 06 3E */ clrlwi r4, r3, 0x18 +/* 80161E40 0015EDA0 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80161E44 0015EDA4 7C 64 00 D0 */ neg r3, r4 +/* 80161E48 0015EDA8 7C 63 23 78 */ or r3, r3, r4 +/* 80161E4C 0015EDAC 54 60 0F FE */ srwi r0, r3, 0x1f +/* 80161E50 0015EDB0 41 82 00 0C */ beq lbl_80161E5C +/* 80161E54 0015EDB4 28 00 00 00 */ cmplwi r0, 0 +/* 80161E58 0015EDB8 41 82 01 D0 */ beq lbl_80162028 +lbl_80161E5C: +/* 80161E5C 0015EDBC 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 80161E60 0015EDC0 7F C4 F3 78 */ mr r4, r30 +/* 80161E64 0015EDC4 80 63 00 00 */ lwz r3, 0(r3) +/* 80161E68 0015EDC8 4B F2 F6 F1 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager +/* 80161E6C 0015EDCC 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80161E70 0015EDD0 20 63 00 01 */ subfic r3, r3, 1 +/* 80161E74 0015EDD4 7C 60 00 34 */ cntlzw r0, r3 +/* 80161E78 0015EDD8 54 1C D9 7E */ srwi r28, r0, 5 +/* 80161E7C 0015EDDC 41 82 00 54 */ beq lbl_80161ED0 +/* 80161E80 0015EDE0 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 80161E84 0015EDE4 41 82 00 4C */ beq lbl_80161ED0 +/* 80161E88 0015EDE8 38 00 00 01 */ li r0, 1 +/* 80161E8C 0015EDEC 98 0D A8 B9 */ stb r0, lbl_805A9479@sda21(r13) +/* 80161E90 0015EDF0 98 0D A8 B8 */ stb r0, lbl_805A9478@sda21(r13) +/* 80161E94 0015EDF4 48 1E 81 21 */ bl Black__6CColorFv +/* 80161E98 0015EDF8 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 80161E9C 0015EDFC 7C 64 1B 78 */ mr r4, r3 +/* 80161EA0 0015EE00 C0 42 9F C8 */ lfs f2, lbl_805ABCE8@sda21(r2) +/* 80161EA4 0015EE04 38 60 00 02 */ li r3, 2 +/* 80161EA8 0015EE08 48 1A 83 E1 */ bl SetFog__9CGraphicsF11ERglFogModeffRC6CColor +/* 80161EAC 0015EE0C 80 7D 00 64 */ lwz r3, 0x64(r29) +/* 80161EB0 0015EE10 80 63 00 10 */ lwz r3, 0x10(r3) +/* 80161EB4 0015EE14 38 63 01 20 */ addi r3, r3, 0x120 +/* 80161EB8 0015EE18 4B F5 60 FD */ bl RenderSystemsToBeDrawnFirst__17CParticleDatabaseCFv +/* 80161EBC 0015EE1C 80 01 00 20 */ lwz r0, 0x20(r1) +/* 80161EC0 0015EE20 7F C3 F3 78 */ mr r3, r30 +/* 80161EC4 0015EE24 38 81 00 18 */ addi r4, r1, 0x18 +/* 80161EC8 0015EE28 90 01 00 18 */ stw r0, 0x18(r1) +/* 80161ECC 0015EE2C 4B EE 4E 4D */ bl sub_80046d18 +lbl_80161ED0: +/* 80161ED0 0015EE30 7F A3 EB 78 */ mr r3, r29 +/* 80161ED4 0015EE34 7F C4 F3 78 */ mr r4, r30 +/* 80161ED8 0015EE38 4B F1 61 55 */ bl Render__10CPatternedCFRC13CStateManager +/* 80161EDC 0015EE3C 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80161EE0 0015EE40 41 82 00 54 */ beq lbl_80161F34 +/* 80161EE4 0015EE44 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 80161EE8 0015EE48 41 82 00 4C */ beq lbl_80161F34 +/* 80161EEC 0015EE4C 48 1E 80 C9 */ bl Black__6CColorFv +/* 80161EF0 0015EE50 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 80161EF4 0015EE54 7C 64 1B 78 */ mr r4, r3 +/* 80161EF8 0015EE58 C0 42 9F C8 */ lfs f2, lbl_805ABCE8@sda21(r2) +/* 80161EFC 0015EE5C 38 60 00 02 */ li r3, 2 +/* 80161F00 0015EE60 48 1A 83 89 */ bl SetFog__9CGraphicsF11ERglFogModeffRC6CColor +/* 80161F04 0015EE64 80 7D 00 64 */ lwz r3, 0x64(r29) +/* 80161F08 0015EE68 80 63 00 10 */ lwz r3, 0x10(r3) +/* 80161F0C 0015EE6C 38 63 01 20 */ addi r3, r3, 0x120 +/* 80161F10 0015EE70 4B F5 60 15 */ bl RenderSystemsToBeDrawnLast__17CParticleDatabaseCFv +/* 80161F14 0015EE74 80 01 00 20 */ lwz r0, 0x20(r1) +/* 80161F18 0015EE78 7F C3 F3 78 */ mr r3, r30 +/* 80161F1C 0015EE7C 38 81 00 14 */ addi r4, r1, 0x14 +/* 80161F20 0015EE80 90 01 00 14 */ stw r0, 0x14(r1) +/* 80161F24 0015EE84 4B EE 4E 5D */ bl SetupFogForArea__13CStateManagerCF7TAreaId +/* 80161F28 0015EE88 38 00 00 00 */ li r0, 0 +/* 80161F2C 0015EE8C 98 0D A8 B9 */ stb r0, lbl_805A9479@sda21(r13) +/* 80161F30 0015EE90 98 0D A8 B8 */ stb r0, lbl_805A9478@sda21(r13) +lbl_80161F34: +/* 80161F34 0015EE94 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80161F38 0015EE98 41 82 00 F0 */ beq lbl_80162028 +/* 80161F3C 0015EE9C C0 9D 05 DC */ lfs f4, 0x5dc(r29) +/* 80161F40 0015EEA0 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 80161F44 0015EEA4 C0 02 9F 90 */ lfs f0, lbl_805ABCB0@sda21(r2) +/* 80161F48 0015EEA8 EC 24 08 28 */ fsubs f1, f4, f1 +/* 80161F4C 0015EEAC FC 20 0A 10 */ fabs f1, f1 +/* 80161F50 0015EEB0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80161F54 0015EEB4 41 80 00 D4 */ blt lbl_80162028 +/* 80161F58 0015EEB8 C0 22 9F 7C */ lfs f1, lbl_805ABC9C@sda21(r2) +/* 80161F5C 0015EEBC 38 61 00 10 */ addi r3, r1, 0x10 +/* 80161F60 0015EEC0 FC 40 08 90 */ fmr f2, f1 +/* 80161F64 0015EEC4 FC 60 08 90 */ fmr f3, f1 +/* 80161F68 0015EEC8 48 20 14 85 */ bl __ct__6CColorFffff +/* 80161F6C 0015EECC C0 22 9F 7C */ lfs f1, lbl_805ABC9C@sda21(r2) +/* 80161F70 0015EED0 38 61 00 08 */ addi r3, r1, 8 +/* 80161F74 0015EED4 C0 42 9F 68 */ lfs f2, lbl_805ABC88@sda21(r2) +/* 80161F78 0015EED8 80 01 00 10 */ lwz r0, 0x10(r1) +/* 80161F7C 0015EEDC FC 80 08 90 */ fmr f4, f1 +/* 80161F80 0015EEE0 FC 60 10 90 */ fmr f3, f2 +/* 80161F84 0015EEE4 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80161F88 0015EEE8 48 20 14 65 */ bl __ct__6CColorFffff +/* 80161F8C 0015EEEC C0 3D 05 E8 */ lfs f1, 0x5e8(r29) +/* 80161F90 0015EEF0 7C 65 1B 78 */ mr r5, r3 +/* 80161F94 0015EEF4 38 61 00 0C */ addi r3, r1, 0xc +/* 80161F98 0015EEF8 38 81 00 1C */ addi r4, r1, 0x1c +/* 80161F9C 0015EEFC 48 20 13 11 */ bl Lerp__6CColorFRC6CColorRC6CColorf +/* 80161FA0 0015EF00 3C 60 80 3D */ lis r3, lbl_803D0398@ha +/* 80161FA4 0015EF04 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80161FA8 0015EF08 38 83 03 98 */ addi r4, r3, lbl_803D0398@l +/* 80161FAC 0015EF0C 38 61 00 34 */ addi r3, r1, 0x34 +/* 80161FB0 0015EF10 38 84 00 2A */ addi r4, r4, 0x2a +/* 80161FB4 0015EF14 4B EA 2D 05 */ bl string_l__4rstlFPCc +/* 80161FB8 0015EF18 7F A4 EB 78 */ mr r4, r29 +/* 80161FBC 0015EF1C 38 61 00 44 */ addi r3, r1, 0x44 +/* 80161FC0 0015EF20 38 A1 00 34 */ addi r5, r1, 0x34 +/* 80161FC4 0015EF24 4B F1 69 B5 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80161FC8 0015EF28 38 61 00 74 */ addi r3, r1, 0x74 +/* 80161FCC 0015EF2C 38 81 00 44 */ addi r4, r1, 0x44 +/* 80161FD0 0015EF30 48 1B 0B A5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80161FD4 0015EF34 38 61 00 34 */ addi r3, r1, 0x34 +/* 80161FD8 0015EF38 48 1D BB 09 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80161FDC 0015EF3C 38 E0 00 03 */ li r7, 3 +/* 80161FE0 0015EF40 39 20 00 08 */ li r9, 8 +/* 80161FE4 0015EF44 54 E0 00 3A */ rlwinm r0, r7, 0, 0, 0x1d +/* 80161FE8 0015EF48 39 00 00 00 */ li r8, 0 +/* 80161FEC 0015EF4C 60 00 00 03 */ ori r0, r0, 3 +/* 80161FF0 0015EF50 B0 E1 00 26 */ sth r7, 0x26(r1) +/* 80161FF4 0015EF54 80 7D 08 2C */ lwz r3, 0x82c(r29) +/* 80161FF8 0015EF58 7F C4 F3 78 */ mr r4, r30 +/* 80161FFC 0015EF5C 99 21 00 24 */ stb r9, 0x24(r1) +/* 80162000 0015EF60 38 A1 00 74 */ addi r5, r1, 0x74 +/* 80162004 0015EF64 80 DD 00 90 */ lwz r6, 0x90(r29) +/* 80162008 0015EF68 38 E1 00 2C */ addi r7, r1, 0x2c +/* 8016200C 0015EF6C 99 01 00 25 */ stb r8, 0x25(r1) +/* 80162010 0015EF70 93 E1 00 28 */ stw r31, 0x28(r1) +/* 80162014 0015EF74 99 21 00 2C */ stb r9, 0x2c(r1) +/* 80162018 0015EF78 99 01 00 2D */ stb r8, 0x2d(r1) +/* 8016201C 0015EF7C B0 01 00 2E */ sth r0, 0x2e(r1) +/* 80162020 0015EF80 93 E1 00 30 */ stw r31, 0x30(r1) +/* 80162024 0015EF84 4B FB 2D 99 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags +lbl_80162028: +/* 80162028 0015EF88 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 8016202C 0015EF8C 83 E1 00 BC */ lwz r31, 0xbc(r1) +/* 80162030 0015EF90 83 C1 00 B8 */ lwz r30, 0xb8(r1) +/* 80162034 0015EF94 83 A1 00 B4 */ lwz r29, 0xb4(r1) +/* 80162038 0015EF98 83 81 00 B0 */ lwz r28, 0xb0(r1) +/* 8016203C 0015EF9C 7C 08 03 A6 */ mtlr r0 +/* 80162040 0015EFA0 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 80162044 0015EFA4 4E 80 00 20 */ blr + +.global PreRender__6CDroneFR13CStateManagerRC14CFrustumPlanes +PreRender__6CDroneFR13CStateManagerRC14CFrustumPlanes: +/* 80162048 0015EFA8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8016204C 0015EFAC 7C 08 02 A6 */ mflr r0 +/* 80162050 0015EFB0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80162054 0015EFB4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80162058 0015EFB8 7C 9F 23 78 */ mr r31, r4 +/* 8016205C 0015EFBC 93 C1 00 08 */ stw r30, 8(r1) +/* 80162060 0015EFC0 7C 7E 1B 78 */ mr r30, r3 +/* 80162064 0015EFC4 4B F1 62 79 */ bl PreRender__10CPatternedFR13CStateManagerRC14CFrustumPlanes +/* 80162068 0015EFC8 80 1E 03 FC */ lwz r0, 0x3fc(r30) +/* 8016206C 0015EFCC 2C 00 00 01 */ cmpwi r0, 1 +/* 80162070 0015EFD0 40 82 00 9C */ bne lbl_8016210C +/* 80162074 0015EFD4 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 80162078 0015EFD8 38 80 00 00 */ li r4, 0 +/* 8016207C 0015EFDC 7C 05 00 D0 */ neg r0, r5 +/* 80162080 0015EFE0 7C 00 2B 78 */ or r0, r0, r5 +/* 80162084 0015EFE4 54 03 0F FF */ rlwinm. r3, r0, 1, 0x1f, 0x1f +/* 80162088 0015EFE8 41 82 00 20 */ beq lbl_801620A8 +/* 8016208C 0015EFEC 80 05 00 10 */ lwz r0, 0x10(r5) +/* 80162090 0015EFF0 28 00 00 00 */ cmplwi r0, 0 +/* 80162094 0015EFF4 40 82 00 10 */ bne lbl_801620A4 +/* 80162098 0015EFF8 88 05 00 28 */ lbz r0, 0x28(r5) +/* 8016209C 0015EFFC 28 00 00 00 */ cmplwi r0, 0 +/* 801620A0 0015F000 41 82 00 08 */ beq lbl_801620A8 +lbl_801620A4: +/* 801620A4 0015F004 38 80 00 01 */ li r4, 1 +lbl_801620A8: +/* 801620A8 0015F008 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 801620AC 0015F00C 41 82 00 60 */ beq lbl_8016210C +/* 801620B0 0015F010 28 03 00 00 */ cmplwi r3, 0 +/* 801620B4 0015F014 38 60 00 00 */ li r3, 0 +/* 801620B8 0015F018 41 82 00 14 */ beq lbl_801620CC +/* 801620BC 0015F01C 80 05 00 10 */ lwz r0, 0x10(r5) +/* 801620C0 0015F020 28 00 00 00 */ cmplwi r0, 0 +/* 801620C4 0015F024 41 82 00 08 */ beq lbl_801620CC +/* 801620C8 0015F028 38 60 00 01 */ li r3, 1 +lbl_801620CC: +/* 801620CC 0015F02C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801620D0 0015F030 41 82 00 3C */ beq lbl_8016210C +/* 801620D4 0015F034 7F C3 F3 78 */ mr r3, r30 +/* 801620D8 0015F038 7F E4 FB 78 */ mr r4, r31 +/* 801620DC 0015F03C 81 9E 00 00 */ lwz r12, 0(r30) +/* 801620E0 0015F040 81 8C 02 B4 */ lwz r12, 0x2b4(r12) +/* 801620E4 0015F044 7D 89 03 A6 */ mtctr r12 +/* 801620E8 0015F048 4E 80 04 21 */ bctrl +/* 801620EC 0015F04C 54 63 06 3E */ clrlwi r3, r3, 0x18 +/* 801620F0 0015F050 7C 03 00 D0 */ neg r0, r3 +/* 801620F4 0015F054 7C 00 1B 78 */ or r0, r0, r3 +/* 801620F8 0015F058 54 00 0F FF */ rlwinm. r0, r0, 1, 0x1f, 0x1f +/* 801620FC 0015F05C 40 82 00 10 */ bne lbl_8016210C +/* 80162100 0015F060 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 80162104 0015F064 80 63 00 10 */ lwz r3, 0x10(r3) +/* 80162108 0015F068 4B EC A9 59 */ bl BuildPose__9CAnimDataFv +lbl_8016210C: +/* 8016210C 0015F06C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80162110 0015F070 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80162114 0015F074 83 C1 00 08 */ lwz r30, 8(r1) +/* 80162118 0015F078 7C 08 03 A6 */ mtlr r0 +/* 8016211C 0015F07C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80162120 0015F080 4E 80 00 20 */ blr + +.global Death__6CDroneFRC9CVector3fR13CStateManager +Death__6CDroneFRC9CVector3fR13CStateManager: +/* 80162124 0015F084 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 80162128 0015F088 7C 08 02 A6 */ mflr r0 +/* 8016212C 0015F08C 90 01 01 14 */ stw r0, 0x114(r1) +/* 80162130 0015F090 93 E1 01 0C */ stw r31, 0x10c(r1) +/* 80162134 0015F094 7C DF 33 78 */ mr r31, r6 +/* 80162138 0015F098 93 C1 01 08 */ stw r30, 0x108(r1) +/* 8016213C 0015F09C 7C 9E 23 78 */ mr r30, r4 +/* 80162140 0015F0A0 93 A1 01 04 */ stw r29, 0x104(r1) +/* 80162144 0015F0A4 7C 7D 1B 78 */ mr r29, r3 +/* 80162148 0015F0A8 93 81 01 00 */ stw r28, 0x100(r1) +/* 8016214C 0015F0AC 7C BC 2B 78 */ mr r28, r5 +/* 80162150 0015F0B0 88 03 04 00 */ lbz r0, 0x400(r3) +/* 80162154 0015F0B4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80162158 0015F0B8 41 82 01 E8 */ beq lbl_80162340 +/* 8016215C 0015F0BC 38 00 00 00 */ li r0, 0 +/* 80162160 0015F0C0 38 A0 00 00 */ li r5, 0 +/* 80162164 0015F0C4 98 1D 08 28 */ stb r0, 0x828(r29) +/* 80162168 0015F0C8 38 C0 00 00 */ li r6, 0 +/* 8016216C 0015F0CC 98 1D 08 29 */ stb r0, 0x829(r29) +/* 80162170 0015F0D0 48 00 11 35 */ bl sub_801632a4 +/* 80162174 0015F0D4 7F A3 EB 78 */ mr r3, r29 +/* 80162178 0015F0D8 7F C4 F3 78 */ mr r4, r30 +/* 8016217C 0015F0DC 38 A0 00 01 */ li r5, 1 +/* 80162180 0015F0E0 38 C0 00 00 */ li r6, 0 +/* 80162184 0015F0E4 48 00 11 21 */ bl sub_801632a4 +/* 80162188 0015F0E8 7F A3 EB 78 */ mr r3, r29 +/* 8016218C 0015F0EC 7F C4 F3 78 */ mr r4, r30 +/* 80162190 0015F0F0 81 9D 00 00 */ lwz r12, 0(r29) +/* 80162194 0015F0F4 38 A0 00 00 */ li r5, 0 +/* 80162198 0015F0F8 81 8C 02 D4 */ lwz r12, 0x2d4(r12) +/* 8016219C 0015F0FC 7D 89 03 A6 */ mtctr r12 +/* 801621A0 0015F100 4E 80 04 21 */ bctrl +/* 801621A4 0015F104 7F A3 EB 78 */ mr r3, r29 +/* 801621A8 0015F108 7F C4 F3 78 */ mr r4, r30 +/* 801621AC 0015F10C 81 9D 00 00 */ lwz r12, 0(r29) +/* 801621B0 0015F110 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801621B4 0015F114 7D 89 03 A6 */ mtctr r12 +/* 801621B8 0015F118 4E 80 04 21 */ bctrl +/* 801621BC 0015F11C C0 5D 03 E4 */ lfs f2, 0x3e4(r29) +/* 801621C0 0015F120 C0 23 00 00 */ lfs f1, 0(r3) +/* 801621C4 0015F124 C0 1D 03 D8 */ lfs f0, 0x3d8(r29) +/* 801621C8 0015F128 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801621CC 0015F12C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801621D0 0015F130 4C 41 13 82 */ cror 2, 1, 2 +/* 801621D4 0015F134 40 82 00 F0 */ bne lbl_801622C4 +/* 801621D8 0015F138 88 1D 08 34 */ lbz r0, 0x834(r29) +/* 801621DC 0015F13C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801621E0 0015F140 40 82 00 E4 */ bne lbl_801622C4 +/* 801621E4 0015F144 88 1D 04 00 */ lbz r0, 0x400(r29) +/* 801621E8 0015F148 38 60 00 01 */ li r3, 1 +/* 801621EC 0015F14C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801621F0 0015F150 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 801621F4 0015F154 98 1D 04 00 */ stb r0, 0x400(r29) +/* 801621F8 0015F158 C0 3D 03 E0 */ lfs f1, 0x3e0(r29) +/* 801621FC 0015F15C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80162200 0015F160 4C 40 13 82 */ cror 2, 0, 2 +/* 80162204 0015F164 40 82 00 FC */ bne lbl_80162300 +/* 80162208 0015F168 C0 DD 00 60 */ lfs f6, 0x60(r29) +/* 8016220C 0015F16C 38 61 00 34 */ addi r3, r1, 0x34 +/* 80162210 0015F170 C0 1C 00 08 */ lfs f0, 8(r28) +/* 80162214 0015F174 38 81 00 08 */ addi r4, r1, 8 +/* 80162218 0015F178 C0 BD 00 50 */ lfs f5, 0x50(r29) +/* 8016221C 0015F17C C0 5D 00 40 */ lfs f2, 0x40(r29) +/* 80162220 0015F180 EC 66 00 28 */ fsubs f3, f6, f0 +/* 80162224 0015F184 C0 1C 00 04 */ lfs f0, 4(r28) +/* 80162228 0015F188 C0 3C 00 00 */ lfs f1, 0(r28) +/* 8016222C 0015F18C EC 85 00 28 */ fsubs f4, f5, f0 +/* 80162230 0015F190 C0 02 9F CC */ lfs f0, lbl_805ABCEC@sda21(r2) +/* 80162234 0015F194 EC 22 08 28 */ fsubs f1, f2, f1 +/* 80162238 0015F198 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 8016223C 0015F19C D0 A1 00 2C */ stfs f5, 0x2c(r1) +/* 80162240 0015F1A0 D0 C1 00 30 */ stfs f6, 0x30(r1) +/* 80162244 0015F1A4 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 80162248 0015F1A8 D0 81 00 20 */ stfs f4, 0x20(r1) +/* 8016224C 0015F1AC D0 61 00 24 */ stfs f3, 0x24(r1) +/* 80162250 0015F1B0 D0 01 00 08 */ stfs f0, 8(r1) +/* 80162254 0015F1B4 48 1B 16 ED */ bl RotateX__12CTransform4fFRC9CRelAngle +/* 80162258 0015F1B8 3C 80 80 5A */ lis r4, lbl_805A66F4@ha +/* 8016225C 0015F1BC 38 61 00 64 */ addi r3, r1, 0x64 +/* 80162260 0015F1C0 38 C4 66 F4 */ addi r6, r4, lbl_805A66F4@l +/* 80162264 0015F1C4 38 A1 00 1C */ addi r5, r1, 0x1c +/* 80162268 0015F1C8 38 81 00 28 */ addi r4, r1, 0x28 +/* 8016226C 0015F1CC 48 1B 18 A5 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 80162270 0015F1D0 38 61 00 94 */ addi r3, r1, 0x94 +/* 80162274 0015F1D4 38 81 00 64 */ addi r4, r1, 0x64 +/* 80162278 0015F1D8 38 A1 00 34 */ addi r5, r1, 0x34 +/* 8016227C 0015F1DC 48 1B 06 D5 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80162280 0015F1E0 38 61 00 C4 */ addi r3, r1, 0xc4 +/* 80162284 0015F1E4 38 81 00 94 */ addi r4, r1, 0x94 +/* 80162288 0015F1E8 48 1B 08 ED */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8016228C 0015F1EC 38 7D 00 34 */ addi r3, r29, 0x34 +/* 80162290 0015F1F0 38 81 00 C4 */ addi r4, r1, 0xc4 +/* 80162294 0015F1F4 48 1B 08 AD */ bl __as__12CTransform4fFRC12CTransform4f +/* 80162298 0015F1F8 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 8016229C 0015F1FC 38 60 00 01 */ li r3, 1 +/* 801622A0 0015F200 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801622A4 0015F204 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 801622A8 0015F208 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 801622AC 0015F20C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801622B0 0015F210 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 801622B4 0015F214 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 801622B8 0015F218 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801622BC 0015F21C 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 801622C0 0015F220 48 00 00 40 */ b lbl_80162300 +lbl_801622C4: +/* 801622C4 0015F224 3C 80 80 3D */ lis r4, lbl_803D0398@ha +/* 801622C8 0015F228 38 61 00 0C */ addi r3, r1, 0xc +/* 801622CC 0015F22C 38 84 03 98 */ addi r4, r4, lbl_803D0398@l +/* 801622D0 0015F230 38 84 00 36 */ addi r4, r4, 0x36 +/* 801622D4 0015F234 4B EA 29 E5 */ bl string_l__4rstlFPCc +/* 801622D8 0015F238 7F A3 EB 78 */ mr r3, r29 +/* 801622DC 0015F23C 4B F4 06 1D */ bl GetStateMachine__3CAiFv +/* 801622E0 0015F240 7C 66 1B 78 */ mr r6, r3 +/* 801622E4 0015F244 7F C4 F3 78 */ mr r4, r30 +/* 801622E8 0015F248 7F A5 EB 78 */ mr r5, r29 +/* 801622EC 0015F24C 38 7D 03 30 */ addi r3, r29, 0x330 +/* 801622F0 0015F250 38 E1 00 0C */ addi r7, r1, 0xc +/* 801622F4 0015F254 4B F1 D9 11 */ bl "SetState__18CStateMachineStateFR13CStateManagerR3CAiPC13CStateMachineRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801622F8 0015F258 38 61 00 0C */ addi r3, r1, 0xc +/* 801622FC 0015F25C 48 1D B7 E5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80162300: +/* 80162300 0015F260 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 80162304 0015F264 4B FD 7D C9 */ bl GetPercentageFrozen__15CBodyControllerCFv +/* 80162308 0015F268 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 8016230C 0015F26C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80162310 0015F270 40 81 00 0C */ ble lbl_8016231C +/* 80162314 0015F274 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 80162318 0015F278 4B FD 7E 3D */ bl UnFreeze__15CBodyControllerFv +lbl_8016231C: +/* 8016231C 0015F27C 88 1D 04 00 */ lbz r0, 0x400(r29) +/* 80162320 0015F280 38 60 00 00 */ li r3, 0 +/* 80162324 0015F284 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80162328 0015F288 7F A3 EB 78 */ mr r3, r29 +/* 8016232C 0015F28C 98 1D 04 00 */ stb r0, 0x400(r29) +/* 80162330 0015F290 7F E4 FB 78 */ mr r4, r31 +/* 80162334 0015F294 7F C5 F3 78 */ mr r5, r30 +/* 80162338 0015F298 38 C0 FF FF */ li r6, -1 +/* 8016233C 0015F29C 4B EE ED 85 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_80162340: +/* 80162340 0015F2A0 80 01 01 14 */ lwz r0, 0x114(r1) +/* 80162344 0015F2A4 83 E1 01 0C */ lwz r31, 0x10c(r1) +/* 80162348 0015F2A8 83 C1 01 08 */ lwz r30, 0x108(r1) +/* 8016234C 0015F2AC 83 A1 01 04 */ lwz r29, 0x104(r1) +/* 80162350 0015F2B0 83 81 01 00 */ lwz r28, 0x100(r1) +/* 80162354 0015F2B4 7C 08 03 A6 */ mtlr r0 +/* 80162358 0015F2B8 38 21 01 10 */ addi r1, r1, 0x110 +/* 8016235C 0015F2BC 4E 80 00 20 */ blr + +.global Dead__6CDroneFR13CStateManager9EStateMsgf +Dead__6CDroneFR13CStateManager9EStateMsgf: +/* 80162360 0015F2C0 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80162364 0015F2C4 7C 08 02 A6 */ mflr r0 +/* 80162368 0015F2C8 2C 05 00 01 */ cmpwi r5, 1 +/* 8016236C 0015F2CC 90 01 00 54 */ stw r0, 0x54(r1) +/* 80162370 0015F2D0 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80162374 0015F2D4 7C 9F 23 78 */ mr r31, r4 +/* 80162378 0015F2D8 93 C1 00 48 */ stw r30, 0x48(r1) +/* 8016237C 0015F2DC 7C 7E 1B 78 */ mr r30, r3 +/* 80162380 0015F2E0 41 82 00 D0 */ beq lbl_80162450 +/* 80162384 0015F2E4 40 80 02 60 */ bge lbl_801625E4 +/* 80162388 0015F2E8 2C 05 00 00 */ cmpwi r5, 0 +/* 8016238C 0015F2EC 40 80 00 0C */ bge lbl_80162398 +/* 80162390 0015F2F0 48 00 02 54 */ b lbl_801625E4 +/* 80162394 0015F2F4 48 00 02 50 */ b lbl_801625E4 +lbl_80162398: +/* 80162398 0015F2F8 38 7E 04 60 */ addi r3, r30, 0x460 +/* 8016239C 0015F2FC 38 80 00 00 */ li r4, 0 +/* 801623A0 0015F300 48 0D 19 C5 */ bl SetAutoResetImpulse__20CKnockBackControllerFb +/* 801623A4 0015F304 88 1E 08 34 */ lbz r0, 0x834(r30) +/* 801623A8 0015F308 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801623AC 0015F30C 41 82 00 30 */ beq lbl_801623DC +/* 801623B0 0015F310 7F C3 F3 78 */ mr r3, r30 +/* 801623B4 0015F314 81 9E 00 00 */ lwz r12, 0(r30) +/* 801623B8 0015F318 81 8C 00 80 */ lwz r12, 0x80(r12) +/* 801623BC 0015F31C 7D 89 03 A6 */ mtctr r12 +/* 801623C0 0015F320 4E 80 04 21 */ bctrl +/* 801623C4 0015F324 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 801623C8 0015F328 FC 20 08 50 */ fneg f1, f1 +/* 801623CC 0015F32C D0 1E 01 50 */ stfs f0, 0x150(r30) +/* 801623D0 0015F330 D0 1E 01 54 */ stfs f0, 0x154(r30) +/* 801623D4 0015F334 D0 3E 01 58 */ stfs f1, 0x158(r30) +/* 801623D8 0015F338 48 00 00 38 */ b lbl_80162410 +lbl_801623DC: +/* 801623DC 0015F33C 7F C3 F3 78 */ mr r3, r30 +/* 801623E0 0015F340 4B FB 8F 99 */ bl Stop__13CPhysicsActorFv +/* 801623E4 0015F344 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801623E8 0015F348 7F C3 F3 78 */ mr r3, r30 +/* 801623EC 0015F34C 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 801623F0 0015F350 4B FB 88 B1 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 801623F4 0015F354 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801623F8 0015F358 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 801623FC 0015F35C D0 1E 01 50 */ stfs f0, 0x150(r30) +/* 80162400 0015F360 C0 03 00 04 */ lfs f0, 4(r3) +/* 80162404 0015F364 D0 1E 01 54 */ stfs f0, 0x154(r30) +/* 80162408 0015F368 C0 03 00 08 */ lfs f0, 8(r3) +/* 8016240C 0015F36C D0 1E 01 58 */ stfs f0, 0x158(r30) +lbl_80162410: +/* 80162410 0015F370 88 1E 04 01 */ lbz r0, 0x401(r30) +/* 80162414 0015F374 38 60 00 01 */ li r3, 1 +/* 80162418 0015F378 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 8016241C 0015F37C C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 80162420 0015F380 98 1E 04 01 */ stb r0, 0x401(r30) +/* 80162424 0015F384 7F C3 F3 78 */ mr r3, r30 +/* 80162428 0015F388 7F E4 FB 78 */ mr r4, r31 +/* 8016242C 0015F38C 38 A0 00 00 */ li r5, 0 +/* 80162430 0015F390 D0 1E 05 C8 */ stfs f0, 0x5c8(r30) +/* 80162434 0015F394 81 9E 00 00 */ lwz r12, 0(r30) +/* 80162438 0015F398 81 8C 02 D4 */ lwz r12, 0x2d4(r12) +/* 8016243C 0015F39C 7D 89 03 A6 */ mtctr r12 +/* 80162440 0015F3A0 4E 80 04 21 */ bctrl +/* 80162444 0015F3A4 38 00 00 00 */ li r0, 0 +/* 80162448 0015F3A8 90 1E 07 C8 */ stw r0, 0x7c8(r30) +/* 8016244C 0015F3AC 48 00 01 98 */ b lbl_801625E4 +lbl_80162450: +/* 80162450 0015F3B0 80 1E 07 C8 */ lwz r0, 0x7c8(r30) +/* 80162454 0015F3B4 2C 00 00 00 */ cmpwi r0, 0 +/* 80162458 0015F3B8 41 82 00 08 */ beq lbl_80162460 +/* 8016245C 0015F3BC 48 00 01 88 */ b lbl_801625E4 +lbl_80162460: +/* 80162460 0015F3C0 88 1E 08 34 */ lbz r0, 0x834(r30) +/* 80162464 0015F3C4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80162468 0015F3C8 41 82 00 D0 */ beq lbl_80162538 +/* 8016246C 0015F3CC 3C A0 80 3E */ lis r5, lbl_803DAA68@ha +/* 80162470 0015F3D0 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80162474 0015F3D4 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 80162478 0015F3D8 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8016247C 0015F3DC C0 04 00 00 */ lfs f0, 0(r4) +/* 80162480 0015F3E0 38 E5 AA 68 */ addi r7, r5, lbl_803DAA68@l +/* 80162484 0015F3E4 C0 24 00 04 */ lfs f1, 4(r4) +/* 80162488 0015F3E8 3C A0 80 3E */ lis r5, lbl_803DAA5C@ha +/* 8016248C 0015F3EC C0 44 00 08 */ lfs f2, 8(r4) +/* 80162490 0015F3F0 38 C0 00 0F */ li r6, 0xf +/* 80162494 0015F3F4 38 00 00 00 */ li r0, 0 +/* 80162498 0015F3F8 3B E3 00 04 */ addi r31, r3, 4 +/* 8016249C 0015F3FC 90 E1 00 20 */ stw r7, 0x20(r1) +/* 801624A0 0015F400 38 A5 AA 5C */ addi r5, r5, lbl_803DAA5C@l +/* 801624A4 0015F404 7F E3 FB 78 */ mr r3, r31 +/* 801624A8 0015F408 38 80 00 0F */ li r4, 0xf +/* 801624AC 0015F40C 90 C1 00 24 */ stw r6, 0x24(r1) +/* 801624B0 0015F410 90 A1 00 20 */ stw r5, 0x20(r1) +/* 801624B4 0015F414 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801624B8 0015F418 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801624BC 0015F41C D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801624C0 0015F420 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801624C4 0015F424 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 801624C8 0015F428 D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 801624CC 0015F42C 98 01 00 40 */ stb r0, 0x40(r1) +/* 801624D0 0015F430 4B FC EF 69 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801624D4 0015F434 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801624D8 0015F438 3C 60 80 3E */ lis r3, lbl_803DAA5C@ha +/* 801624DC 0015F43C 38 83 AA 5C */ addi r4, r3, lbl_803DAA5C@l +/* 801624E0 0015F440 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801624E4 0015F444 90 1F 01 B0 */ stw r0, 0x1b0(r31) +/* 801624E8 0015F448 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 801624EC 0015F44C 80 A1 00 28 */ lwz r5, 0x28(r1) +/* 801624F0 0015F450 38 00 00 01 */ li r0, 1 +/* 801624F4 0015F454 80 C1 00 2C */ lwz r6, 0x2c(r1) +/* 801624F8 0015F458 90 BF 01 B4 */ stw r5, 0x1b4(r31) +/* 801624FC 0015F45C 80 A1 00 30 */ lwz r5, 0x30(r1) +/* 80162500 0015F460 90 DF 01 B8 */ stw r6, 0x1b8(r31) +/* 80162504 0015F464 80 C1 00 34 */ lwz r6, 0x34(r1) +/* 80162508 0015F468 90 BF 01 BC */ stw r5, 0x1bc(r31) +/* 8016250C 0015F46C 80 A1 00 38 */ lwz r5, 0x38(r1) +/* 80162510 0015F470 90 DF 01 C0 */ stw r6, 0x1c0(r31) +/* 80162514 0015F474 80 C1 00 3C */ lwz r6, 0x3c(r1) +/* 80162518 0015F478 90 BF 01 C4 */ stw r5, 0x1c4(r31) +/* 8016251C 0015F47C 88 A1 00 40 */ lbz r5, 0x40(r1) +/* 80162520 0015F480 90 DF 01 C8 */ stw r6, 0x1c8(r31) +/* 80162524 0015F484 98 BF 01 CC */ stb r5, 0x1cc(r31) +/* 80162528 0015F488 90 81 00 20 */ stw r4, 0x20(r1) +/* 8016252C 0015F48C 90 61 00 20 */ stw r3, 0x20(r1) +/* 80162530 0015F490 90 1E 07 C8 */ stw r0, 0x7c8(r30) +/* 80162534 0015F494 48 00 00 B0 */ b lbl_801625E4 +lbl_80162538: +/* 80162538 0015F498 3C A0 80 3E */ lis r5, lbl_803DAA68@ha +/* 8016253C 0015F49C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80162540 0015F4A0 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 80162544 0015F4A4 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80162548 0015F4A8 38 E5 AA 68 */ addi r7, r5, lbl_803DAA68@l +/* 8016254C 0015F4AC C0 44 00 00 */ lfs f2, 0(r4) +/* 80162550 0015F4B0 C0 24 00 04 */ lfs f1, 4(r4) +/* 80162554 0015F4B4 3C A0 80 3E */ lis r5, lbl_803DAA50@ha +/* 80162558 0015F4B8 C0 04 00 08 */ lfs f0, 8(r4) +/* 8016255C 0015F4BC 38 C0 00 03 */ li r6, 3 +/* 80162560 0015F4C0 38 00 00 00 */ li r0, 0 +/* 80162564 0015F4C4 3B E3 00 04 */ addi r31, r3, 4 +/* 80162568 0015F4C8 90 E1 00 08 */ stw r7, 8(r1) +/* 8016256C 0015F4CC 38 A5 AA 50 */ addi r5, r5, lbl_803DAA50@l +/* 80162570 0015F4D0 7F E3 FB 78 */ mr r3, r31 +/* 80162574 0015F4D4 38 80 00 03 */ li r4, 3 +/* 80162578 0015F4D8 90 C1 00 0C */ stw r6, 0xc(r1) +/* 8016257C 0015F4DC 90 A1 00 08 */ stw r5, 8(r1) +/* 80162580 0015F4E0 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 80162584 0015F4E4 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 80162588 0015F4E8 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 8016258C 0015F4EC 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80162590 0015F4F0 4B FC EE A9 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80162594 0015F4F4 80 01 00 0C */ lwz r0, 0xc(r1) +/* 80162598 0015F4F8 3C 60 80 3E */ lis r3, lbl_803DAA50@ha +/* 8016259C 0015F4FC 38 A3 AA 50 */ addi r5, r3, lbl_803DAA50@l +/* 801625A0 0015F500 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801625A4 0015F504 90 1F 00 E0 */ stw r0, 0xe0(r31) +/* 801625A8 0015F508 38 83 AA 68 */ addi r4, r3, lbl_803DAA68@l +/* 801625AC 0015F50C 80 E1 00 10 */ lwz r7, 0x10(r1) +/* 801625B0 0015F510 38 00 00 01 */ li r0, 1 +/* 801625B4 0015F514 80 C1 00 14 */ lwz r6, 0x14(r1) +/* 801625B8 0015F518 7F C3 F3 78 */ mr r3, r30 +/* 801625BC 0015F51C 90 FF 00 E4 */ stw r7, 0xe4(r31) +/* 801625C0 0015F520 80 E1 00 18 */ lwz r7, 0x18(r1) +/* 801625C4 0015F524 90 DF 00 E8 */ stw r6, 0xe8(r31) +/* 801625C8 0015F528 80 C1 00 1C */ lwz r6, 0x1c(r1) +/* 801625CC 0015F52C 90 FF 00 EC */ stw r7, 0xec(r31) +/* 801625D0 0015F530 90 DF 00 F0 */ stw r6, 0xf0(r31) +/* 801625D4 0015F534 90 A1 00 08 */ stw r5, 8(r1) +/* 801625D8 0015F538 90 81 00 08 */ stw r4, 8(r1) +/* 801625DC 0015F53C 90 1E 07 C8 */ stw r0, 0x7c8(r30) +/* 801625E0 0015F540 4B FB 8D 99 */ bl Stop__13CPhysicsActorFv +lbl_801625E4: +/* 801625E4 0015F544 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801625E8 0015F548 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801625EC 0015F54C 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 801625F0 0015F550 7C 08 03 A6 */ mtlr r0 +/* 801625F4 0015F554 38 21 00 50 */ addi r1, r1, 0x50 +/* 801625F8 0015F558 4E 80 00 20 */ blr + +.global SpotPlayer__6CDroneFR13CStateManagerf +SpotPlayer__6CDroneFR13CStateManagerf: +/* 801625FC 0015F55C 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 80162600 0015F560 7C 08 02 A6 */ mflr r0 +/* 80162604 0015F564 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 80162608 0015F568 DB E1 00 E0 */ stfd f31, 0xe0(r1) +/* 8016260C 0015F56C F3 E1 00 E8 */ psq_st f31, 232(r1), 0, qr0 +/* 80162610 0015F570 DB C1 00 D0 */ stfd f30, 0xd0(r1) +/* 80162614 0015F574 F3 C1 00 D8 */ psq_st f30, 216(r1), 0, qr0 +/* 80162618 0015F578 DB A1 00 C0 */ stfd f29, 0xc0(r1) +/* 8016261C 0015F57C F3 A1 00 C8 */ psq_st f29, 200(r1), 0, qr0 +/* 80162620 0015F580 DB 81 00 B0 */ stfd f28, 0xb0(r1) +/* 80162624 0015F584 F3 81 00 B8 */ psq_st f28, 184(r1), 0, qr0 +/* 80162628 0015F588 DB 61 00 A0 */ stfd f27, 0xa0(r1) +/* 8016262C 0015F58C F3 61 00 A8 */ psq_st f27, 168(r1), 0, qr0 +/* 80162630 0015F590 DB 41 00 90 */ stfd f26, 0x90(r1) +/* 80162634 0015F594 F3 41 00 98 */ psq_st f26, 152(r1), 0, qr0 +/* 80162638 0015F598 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 8016263C 0015F59C 93 C1 00 88 */ stw r30, 0x88(r1) +/* 80162640 0015F5A0 7C 9F 23 78 */ mr r31, r4 +/* 80162644 0015F5A4 7C 7E 1B 78 */ mr r30, r3 +/* 80162648 0015F5A8 80 A4 08 4C */ lwz r5, 0x84c(r4) +/* 8016264C 0015F5AC C0 03 03 BC */ lfs f0, 0x3bc(r3) +/* 80162650 0015F5B0 C0 E5 00 50 */ lfs f7, 0x50(r5) +/* 80162654 0015F5B4 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 80162658 0015F5B8 EC 00 00 32 */ fmuls f0, f0, f0 +/* 8016265C 0015F5BC C0 45 00 40 */ lfs f2, 0x40(r5) +/* 80162660 0015F5C0 EC C7 08 28 */ fsubs f6, f7, f1 +/* 80162664 0015F5C4 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 80162668 0015F5C8 C1 05 00 60 */ lfs f8, 0x60(r5) +/* 8016266C 0015F5CC EC 82 08 28 */ fsubs f4, f2, f1 +/* 80162670 0015F5D0 C0 63 00 60 */ lfs f3, 0x60(r3) +/* 80162674 0015F5D4 EC 26 01 B2 */ fmuls f1, f6, f6 +/* 80162678 0015F5D8 EC A8 18 28 */ fsubs f5, f8, f3 +/* 8016267C 0015F5DC D0 41 00 68 */ stfs f2, 0x68(r1) +/* 80162680 0015F5E0 EC 44 01 32 */ fmuls f2, f4, f4 +/* 80162684 0015F5E4 D0 E1 00 6C */ stfs f7, 0x6c(r1) +/* 80162688 0015F5E8 EC 65 01 72 */ fmuls f3, f5, f5 +/* 8016268C 0015F5EC EC 22 08 2A */ fadds f1, f2, f1 +/* 80162690 0015F5F0 D1 01 00 70 */ stfs f8, 0x70(r1) +/* 80162694 0015F5F4 D0 81 00 74 */ stfs f4, 0x74(r1) +/* 80162698 0015F5F8 EC 23 08 2A */ fadds f1, f3, f1 +/* 8016269C 0015F5FC D0 C1 00 78 */ stfs f6, 0x78(r1) +/* 801626A0 0015F600 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801626A4 0015F604 D0 A1 00 7C */ stfs f5, 0x7c(r1) +/* 801626A8 0015F608 40 81 00 0C */ ble lbl_801626B4 +/* 801626AC 0015F60C 38 60 00 00 */ li r3, 0 +/* 801626B0 0015F610 48 00 01 28 */ b lbl_801627D8 +lbl_801626B4: +/* 801626B4 0015F614 81 83 00 00 */ lwz r12, 0(r3) +/* 801626B8 0015F618 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 801626BC 0015F61C 81 8C 02 20 */ lwz r12, 0x220(r12) +/* 801626C0 0015F620 7D 89 03 A6 */ mtctr r12 +/* 801626C4 0015F624 4E 80 04 21 */ bctrl +/* 801626C8 0015F628 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801626CC 0015F62C 40 82 00 0C */ bne lbl_801626D8 +/* 801626D0 0015F630 38 60 00 00 */ li r3, 0 +/* 801626D4 0015F634 48 00 01 04 */ b lbl_801627D8 +lbl_801626D8: +/* 801626D8 0015F638 C1 1E 00 54 */ lfs f8, 0x54(r30) +/* 801626DC 0015F63C 38 61 00 5C */ addi r3, r1, 0x5c +/* 801626E0 0015F640 C0 3E 05 CC */ lfs f1, 0x5cc(r30) +/* 801626E4 0015F644 38 81 00 50 */ addi r4, r1, 0x50 +/* 801626E8 0015F648 C0 FE 00 44 */ lfs f7, 0x44(r30) +/* 801626EC 0015F64C C0 1E 00 34 */ lfs f0, 0x34(r30) +/* 801626F0 0015F650 EC 61 02 32 */ fmuls f3, f1, f8 +/* 801626F4 0015F654 C1 5E 00 58 */ lfs f10, 0x58(r30) +/* 801626F8 0015F658 EC 81 01 F2 */ fmuls f4, f1, f7 +/* 801626FC 0015F65C C1 3E 00 48 */ lfs f9, 0x48(r30) +/* 80162700 0015F660 EC 41 00 32 */ fmuls f2, f1, f0 +/* 80162704 0015F664 C0 3E 00 38 */ lfs f1, 0x38(r30) +/* 80162708 0015F668 EC C9 20 2A */ fadds f6, f9, f4 +/* 8016270C 0015F66C D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 80162710 0015F670 EC AA 18 2A */ fadds f5, f10, f3 +/* 80162714 0015F674 EC 01 10 2A */ fadds f0, f1, f2 +/* 80162718 0015F678 D0 E1 00 30 */ stfs f7, 0x30(r1) +/* 8016271C 0015F67C D1 01 00 34 */ stfs f8, 0x34(r1) +/* 80162720 0015F680 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 80162724 0015F684 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 80162728 0015F688 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 8016272C 0015F68C D0 21 00 44 */ stfs f1, 0x44(r1) +/* 80162730 0015F690 D1 21 00 48 */ stfs f9, 0x48(r1) +/* 80162734 0015F694 D1 41 00 4C */ stfs f10, 0x4c(r1) +/* 80162738 0015F698 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8016273C 0015F69C D0 C1 00 54 */ stfs f6, 0x54(r1) +/* 80162740 0015F6A0 D0 A1 00 58 */ stfs f5, 0x58(r1) +/* 80162744 0015F6A4 48 1B 21 0D */ bl AsNormalized__9CVector3fCFv +/* 80162748 0015F6A8 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 8016274C 0015F6AC 7F E5 FB 78 */ mr r5, r31 +/* 80162750 0015F6B0 38 61 00 08 */ addi r3, r1, 8 +/* 80162754 0015F6B4 C3 81 00 5C */ lfs f28, 0x5c(r1) +/* 80162758 0015F6B8 81 84 00 00 */ lwz r12, 0(r4) +/* 8016275C 0015F6BC C3 61 00 60 */ lfs f27, 0x60(r1) +/* 80162760 0015F6C0 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 80162764 0015F6C4 C3 41 00 64 */ lfs f26, 0x64(r1) +/* 80162768 0015F6C8 C3 BE 00 60 */ lfs f29, 0x60(r30) +/* 8016276C 0015F6CC C3 DE 00 50 */ lfs f30, 0x50(r30) +/* 80162770 0015F6D0 C3 FE 00 40 */ lfs f31, 0x40(r30) +/* 80162774 0015F6D4 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 80162778 0015F6D8 7D 89 03 A6 */ mtctr r12 +/* 8016277C 0015F6DC 4E 80 04 21 */ bctrl +/* 80162780 0015F6E0 C0 41 00 08 */ lfs f2, 8(r1) +/* 80162784 0015F6E4 38 61 00 20 */ addi r3, r1, 0x20 +/* 80162788 0015F6E8 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 8016278C 0015F6EC 38 81 00 14 */ addi r4, r1, 0x14 +/* 80162790 0015F6F0 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 80162794 0015F6F4 EC 42 F8 28 */ fsubs f2, f2, f31 +/* 80162798 0015F6F8 EC 21 F0 28 */ fsubs f1, f1, f30 +/* 8016279C 0015F6FC EC 00 E8 28 */ fsubs f0, f0, f29 +/* 801627A0 0015F700 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801627A4 0015F704 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801627A8 0015F708 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801627AC 0015F70C 48 1B 20 A5 */ bl AsNormalized__9CVector3fCFv +/* 801627B0 0015F710 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 801627B4 0015F714 C0 41 00 20 */ lfs f2, 0x20(r1) +/* 801627B8 0015F718 EC 3B 00 32 */ fmuls f1, f27, f0 +/* 801627BC 0015F71C C0 61 00 28 */ lfs f3, 0x28(r1) +/* 801627C0 0015F720 C8 02 9F D0 */ lfd f0, lbl_805ABCF0@sda21(r2) +/* 801627C4 0015F724 EC 3C 08 BA */ fmadds f1, f28, f2, f1 +/* 801627C8 0015F728 EC 3A 08 FA */ fmadds f1, f26, f3, f1 +/* 801627CC 0015F72C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801627D0 0015F730 7C 00 00 26 */ mfcr r0 +/* 801627D4 0015F734 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +lbl_801627D8: +/* 801627D8 0015F738 E3 E1 00 E8 */ psq_l f31, 232(r1), 0, qr0 +/* 801627DC 0015F73C CB E1 00 E0 */ lfd f31, 0xe0(r1) +/* 801627E0 0015F740 E3 C1 00 D8 */ psq_l f30, 216(r1), 0, qr0 +/* 801627E4 0015F744 CB C1 00 D0 */ lfd f30, 0xd0(r1) +/* 801627E8 0015F748 E3 A1 00 C8 */ psq_l f29, 200(r1), 0, qr0 +/* 801627EC 0015F74C CB A1 00 C0 */ lfd f29, 0xc0(r1) +/* 801627F0 0015F750 E3 81 00 B8 */ psq_l f28, 184(r1), 0, qr0 +/* 801627F4 0015F754 CB 81 00 B0 */ lfd f28, 0xb0(r1) +/* 801627F8 0015F758 E3 61 00 A8 */ psq_l f27, 168(r1), 0, qr0 +/* 801627FC 0015F75C CB 61 00 A0 */ lfd f27, 0xa0(r1) +/* 80162800 0015F760 E3 41 00 98 */ psq_l f26, 152(r1), 0, qr0 +/* 80162804 0015F764 CB 41 00 90 */ lfd f26, 0x90(r1) +/* 80162808 0015F768 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 8016280C 0015F76C 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 80162810 0015F770 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 80162814 0015F774 7C 08 03 A6 */ mtlr r0 +/* 80162818 0015F778 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 8016281C 0015F77C 4E 80 00 20 */ blr + +.global ShouldFire__6CDroneFR13CStateManagerf +ShouldFire__6CDroneFR13CStateManagerf: +/* 80162820 0015F780 94 21 FE A0 */ stwu r1, -0x160(r1) +/* 80162824 0015F784 7C 08 02 A6 */ mflr r0 +/* 80162828 0015F788 90 01 01 64 */ stw r0, 0x164(r1) +/* 8016282C 0015F78C BF 41 01 48 */ stmw r26, 0x148(r1) +/* 80162830 0015F790 7C 7A 1B 78 */ mr r26, r3 +/* 80162834 0015F794 7C 9B 23 78 */ mr r27, r4 +/* 80162838 0015F798 80 64 08 4C */ lwz r3, 0x84c(r4) +/* 8016283C 0015F79C 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 80162840 0015F7A0 2C 00 00 01 */ cmpwi r0, 1 +/* 80162844 0015F7A4 41 82 01 A4 */ beq lbl_801629E8 +/* 80162848 0015F7A8 C0 3A 06 24 */ lfs f1, 0x624(r26) +/* 8016284C 0015F7AC C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 80162850 0015F7B0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80162854 0015F7B4 4C 40 13 82 */ cror 2, 0, 2 +/* 80162858 0015F7B8 40 82 01 90 */ bne lbl_801629E8 +/* 8016285C 0015F7BC 80 AD 8D 74 */ lwz r5, lbl_805A7934@sda21(r13) +/* 80162860 0015F7C0 38 60 00 00 */ li r3, 0 +/* 80162864 0015F7C4 38 80 00 01 */ li r4, 1 +/* 80162868 0015F7C8 48 22 76 8D */ bl __shl2i +/* 8016286C 0015F7CC 80 AD 8D 78 */ lwz r5, lbl_805A7938@sda21(r13) +/* 80162870 0015F7D0 7C 9E 23 78 */ mr r30, r4 +/* 80162874 0015F7D4 7C 7F 1B 78 */ mr r31, r3 +/* 80162878 0015F7D8 38 60 00 00 */ li r3, 0 +/* 8016287C 0015F7DC 38 80 00 01 */ li r4, 1 +/* 80162880 0015F7E0 48 22 76 75 */ bl __shl2i +/* 80162884 0015F7E4 80 AD 8D 6C */ lwz r5, lbl_805A792C@sda21(r13) +/* 80162888 0015F7E8 7F DE 23 78 */ or r30, r30, r4 +/* 8016288C 0015F7EC 7F FF 1B 78 */ or r31, r31, r3 +/* 80162890 0015F7F0 38 60 00 00 */ li r3, 0 +/* 80162894 0015F7F4 38 80 00 01 */ li r4, 1 +/* 80162898 0015F7F8 48 22 76 5D */ bl __shl2i +/* 8016289C 0015F7FC 80 AD 8D 70 */ lwz r5, lbl_805A7930@sda21(r13) +/* 801628A0 0015F800 7C 9C 23 78 */ mr r28, r4 +/* 801628A4 0015F804 7C 7D 1B 78 */ mr r29, r3 +/* 801628A8 0015F808 38 60 00 00 */ li r3, 0 +/* 801628AC 0015F80C 38 80 00 01 */ li r4, 1 +/* 801628B0 0015F810 48 22 76 45 */ bl __shl2i +/* 801628B4 0015F814 7F BD 1B 78 */ or r29, r29, r3 +/* 801628B8 0015F818 38 00 00 03 */ li r0, 3 +/* 801628BC 0015F81C 7F 9C 23 78 */ or r28, r28, r4 +/* 801628C0 0015F820 93 A1 00 70 */ stw r29, 0x70(r1) +/* 801628C4 0015F824 7F 65 DB 78 */ mr r5, r27 +/* 801628C8 0015F828 38 61 00 40 */ addi r3, r1, 0x40 +/* 801628CC 0015F82C 93 81 00 74 */ stw r28, 0x74(r1) +/* 801628D0 0015F830 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 801628D4 0015F834 93 C1 00 7C */ stw r30, 0x7c(r1) +/* 801628D8 0015F838 93 E1 00 78 */ stw r31, 0x78(r1) +/* 801628DC 0015F83C 90 01 00 80 */ stw r0, 0x80(r1) +/* 801628E0 0015F840 80 9B 08 4C */ lwz r4, 0x84c(r27) +/* 801628E4 0015F844 90 01 00 68 */ stw r0, 0x68(r1) +/* 801628E8 0015F848 81 84 00 00 */ lwz r12, 0(r4) +/* 801628EC 0015F84C 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801628F0 0015F850 7D 89 03 A6 */ mtctr r12 +/* 801628F4 0015F854 4E 80 04 21 */ bctrl +/* 801628F8 0015F858 C0 41 00 40 */ lfs f2, 0x40(r1) +/* 801628FC 0015F85C 38 61 00 30 */ addi r3, r1, 0x30 +/* 80162900 0015F860 C0 21 00 44 */ lfs f1, 0x44(r1) +/* 80162904 0015F864 C0 01 00 48 */ lfs f0, 0x48(r1) +/* 80162908 0015F868 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 8016290C 0015F86C 80 8D 8C F8 */ lwz r4, lbl_805A78B8@sda21(r13) +/* 80162910 0015F870 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 80162914 0015F874 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 80162918 0015F878 4B EA 23 A1 */ bl string_l__4rstlFPCc +/* 8016291C 0015F87C 7F 44 D3 78 */ mr r4, r26 +/* 80162920 0015F880 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 80162924 0015F884 38 A1 00 30 */ addi r5, r1, 0x30 +/* 80162928 0015F888 4B F1 60 51 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8016292C 0015F88C 38 61 01 18 */ addi r3, r1, 0x118 +/* 80162930 0015F890 38 81 00 B8 */ addi r4, r1, 0xb8 +/* 80162934 0015F894 48 1B 02 41 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80162938 0015F898 38 61 00 30 */ addi r3, r1, 0x30 +/* 8016293C 0015F89C 48 1D B1 A5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80162940 0015F8A0 C0 41 01 24 */ lfs f2, 0x124(r1) +/* 80162944 0015F8A4 7F 63 DB 78 */ mr r3, r27 +/* 80162948 0015F8A8 C0 21 01 34 */ lfs f1, 0x134(r1) +/* 8016294C 0015F8AC 7F 47 D3 78 */ mr r7, r26 +/* 80162950 0015F8B0 C0 01 01 44 */ lfs f0, 0x144(r1) +/* 80162954 0015F8B4 38 81 00 24 */ addi r4, r1, 0x24 +/* 80162958 0015F8B8 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 8016295C 0015F8BC 38 A1 00 4C */ addi r5, r1, 0x4c +/* 80162960 0015F8C0 38 C1 00 70 */ addi r6, r1, 0x70 +/* 80162964 0015F8C4 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 80162968 0015F8C8 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8016296C 0015F8CC 4B EE A4 D1 */ bl RayCollideWorld__13CStateManagerFRC9CVector3fRC9CVector3fRC15CMaterialFilterPC6CActor +/* 80162970 0015F8D0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80162974 0015F8D4 41 82 00 74 */ beq lbl_801629E8 +/* 80162978 0015F8D8 80 8D 8C FC */ lwz r4, lbl_805A78BC@sda21(r13) +/* 8016297C 0015F8DC 38 61 00 14 */ addi r3, r1, 0x14 +/* 80162980 0015F8E0 4B EA 23 39 */ bl string_l__4rstlFPCc +/* 80162984 0015F8E4 7F 44 D3 78 */ mr r4, r26 +/* 80162988 0015F8E8 38 61 00 88 */ addi r3, r1, 0x88 +/* 8016298C 0015F8EC 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80162990 0015F8F0 4B F1 5F E9 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80162994 0015F8F4 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 80162998 0015F8F8 38 81 00 88 */ addi r4, r1, 0x88 +/* 8016299C 0015F8FC 48 1B 01 D9 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801629A0 0015F900 38 61 00 14 */ addi r3, r1, 0x14 +/* 801629A4 0015F904 48 1D B1 3D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801629A8 0015F908 C0 41 00 F4 */ lfs f2, 0xf4(r1) +/* 801629AC 0015F90C 7F 63 DB 78 */ mr r3, r27 +/* 801629B0 0015F910 C0 21 01 04 */ lfs f1, 0x104(r1) +/* 801629B4 0015F914 7F 47 D3 78 */ mr r7, r26 +/* 801629B8 0015F918 C0 01 01 14 */ lfs f0, 0x114(r1) +/* 801629BC 0015F91C 38 81 00 08 */ addi r4, r1, 8 +/* 801629C0 0015F920 D0 41 00 08 */ stfs f2, 8(r1) +/* 801629C4 0015F924 38 A1 00 4C */ addi r5, r1, 0x4c +/* 801629C8 0015F928 38 C1 00 70 */ addi r6, r1, 0x70 +/* 801629CC 0015F92C D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801629D0 0015F930 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801629D4 0015F934 4B EE A4 69 */ bl RayCollideWorld__13CStateManagerFRC9CVector3fRC9CVector3fRC15CMaterialFilterPC6CActor +/* 801629D8 0015F938 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801629DC 0015F93C 41 82 00 0C */ beq lbl_801629E8 +/* 801629E0 0015F940 38 60 00 01 */ li r3, 1 +/* 801629E4 0015F944 48 00 00 08 */ b lbl_801629EC +lbl_801629E8: +/* 801629E8 0015F948 38 60 00 00 */ li r3, 0 +lbl_801629EC: +/* 801629EC 0015F94C BB 41 01 48 */ lmw r26, 0x148(r1) +/* 801629F0 0015F950 80 01 01 64 */ lwz r0, 0x164(r1) +/* 801629F4 0015F954 7C 08 03 A6 */ mtlr r0 +/* 801629F8 0015F958 38 21 01 60 */ addi r1, r1, 0x160 +/* 801629FC 0015F95C 4E 80 00 20 */ blr + +.global LineOfSight__6CDroneFR13CStateManagerf +LineOfSight__6CDroneFR13CStateManagerf: +/* 80162A00 0015F960 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 80162A04 0015F964 7C 08 02 A6 */ mflr r0 +/* 80162A08 0015F968 90 01 00 84 */ stw r0, 0x84(r1) +/* 80162A0C 0015F96C BF 41 00 68 */ stmw r26, 0x68(r1) +/* 80162A10 0015F970 7C 9B 23 78 */ mr r27, r4 +/* 80162A14 0015F974 7C 7A 1B 78 */ mr r26, r3 +/* 80162A18 0015F978 38 80 00 01 */ li r4, 1 +/* 80162A1C 0015F97C C0 43 00 60 */ lfs f2, 0x60(r3) +/* 80162A20 0015F980 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 80162A24 0015F984 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 80162A28 0015F988 38 60 00 00 */ li r3, 0 +/* 80162A2C 0015F98C 80 AD 8D 64 */ lwz r5, lbl_805A7924@sda21(r13) +/* 80162A30 0015F990 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 80162A34 0015F994 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 80162A38 0015F998 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 80162A3C 0015F99C 48 22 74 B9 */ bl __shl2i +/* 80162A40 0015F9A0 80 AD 8D 68 */ lwz r5, lbl_805A7928@sda21(r13) +/* 80162A44 0015F9A4 7C 9E 23 78 */ mr r30, r4 +/* 80162A48 0015F9A8 7C 7F 1B 78 */ mr r31, r3 +/* 80162A4C 0015F9AC 38 60 00 00 */ li r3, 0 +/* 80162A50 0015F9B0 38 80 00 01 */ li r4, 1 +/* 80162A54 0015F9B4 48 22 74 A1 */ bl __shl2i +/* 80162A58 0015F9B8 80 AD 8D 5C */ lwz r5, lbl_805A791C@sda21(r13) +/* 80162A5C 0015F9BC 7F DE 23 78 */ or r30, r30, r4 +/* 80162A60 0015F9C0 7F FF 1B 78 */ or r31, r31, r3 +/* 80162A64 0015F9C4 38 60 00 00 */ li r3, 0 +/* 80162A68 0015F9C8 38 80 00 01 */ li r4, 1 +/* 80162A6C 0015F9CC 48 22 74 89 */ bl __shl2i +/* 80162A70 0015F9D0 80 AD 8D 60 */ lwz r5, lbl_805A7920@sda21(r13) +/* 80162A74 0015F9D4 7C 9C 23 78 */ mr r28, r4 +/* 80162A78 0015F9D8 7C 7D 1B 78 */ mr r29, r3 +/* 80162A7C 0015F9DC 38 60 00 00 */ li r3, 0 +/* 80162A80 0015F9E0 38 80 00 01 */ li r4, 1 +/* 80162A84 0015F9E4 48 22 74 71 */ bl __shl2i +/* 80162A88 0015F9E8 7F BD 1B 78 */ or r29, r29, r3 +/* 80162A8C 0015F9EC 38 00 00 03 */ li r0, 3 +/* 80162A90 0015F9F0 7F 9C 23 78 */ or r28, r28, r4 +/* 80162A94 0015F9F4 93 A1 00 48 */ stw r29, 0x48(r1) +/* 80162A98 0015F9F8 7F 65 DB 78 */ mr r5, r27 +/* 80162A9C 0015F9FC 38 61 00 08 */ addi r3, r1, 8 +/* 80162AA0 0015FA00 93 81 00 4C */ stw r28, 0x4c(r1) +/* 80162AA4 0015FA04 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 80162AA8 0015FA08 93 C1 00 54 */ stw r30, 0x54(r1) +/* 80162AAC 0015FA0C 93 E1 00 50 */ stw r31, 0x50(r1) +/* 80162AB0 0015FA10 90 01 00 58 */ stw r0, 0x58(r1) +/* 80162AB4 0015FA14 80 9B 08 4C */ lwz r4, 0x84c(r27) +/* 80162AB8 0015FA18 90 01 00 40 */ stw r0, 0x40(r1) +/* 80162ABC 0015FA1C 81 84 00 00 */ lwz r12, 0(r4) +/* 80162AC0 0015FA20 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 80162AC4 0015FA24 7D 89 03 A6 */ mtctr r12 +/* 80162AC8 0015FA28 4E 80 04 21 */ bctrl +/* 80162ACC 0015FA2C C0 41 00 08 */ lfs f2, 8(r1) +/* 80162AD0 0015FA30 7F 63 DB 78 */ mr r3, r27 +/* 80162AD4 0015FA34 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 80162AD8 0015FA38 7F 47 D3 78 */ mr r7, r26 +/* 80162ADC 0015FA3C C0 01 00 10 */ lfs f0, 0x10(r1) +/* 80162AE0 0015FA40 38 81 00 20 */ addi r4, r1, 0x20 +/* 80162AE4 0015FA44 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 80162AE8 0015FA48 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80162AEC 0015FA4C 38 C1 00 48 */ addi r6, r1, 0x48 +/* 80162AF0 0015FA50 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80162AF4 0015FA54 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80162AF8 0015FA58 4B EE A3 45 */ bl RayCollideWorld__13CStateManagerFRC9CVector3fRC9CVector3fRC15CMaterialFilterPC6CActor +/* 80162AFC 0015FA5C BB 41 00 68 */ lmw r26, 0x68(r1) +/* 80162B00 0015FA60 80 01 00 84 */ lwz r0, 0x84(r1) +/* 80162B04 0015FA64 7C 08 03 A6 */ mtlr r0 +/* 80162B08 0015FA68 38 21 00 80 */ addi r1, r1, 0x80 +/* 80162B0C 0015FA6C 4E 80 00 20 */ blr + +.global Deactivate__6CDroneFR13CStateManager9EStateMsgf +Deactivate__6CDroneFR13CStateManager9EStateMsgf: +/* 80162B10 0015FA70 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80162B14 0015FA74 7C 08 02 A6 */ mflr r0 +/* 80162B18 0015FA78 2C 05 00 00 */ cmpwi r5, 0 +/* 80162B1C 0015FA7C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80162B20 0015FA80 41 82 00 08 */ beq lbl_80162B28 +/* 80162B24 0015FA84 48 00 00 08 */ b lbl_80162B2C +lbl_80162B28: +/* 80162B28 0015FA88 4B F1 5E D9 */ bl DeathDelete__10CPatternedFR13CStateManager +lbl_80162B2C: +/* 80162B2C 0015FA8C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80162B30 0015FA90 7C 08 03 A6 */ mtlr r0 +/* 80162B34 0015FA94 38 21 00 10 */ addi r1, r1, 0x10 +/* 80162B38 0015FA98 4E 80 00 20 */ blr + +.global Dodge__6CDroneFR13CStateManager9EStateMsgf +Dodge__6CDroneFR13CStateManager9EStateMsgf: +/* 80162B3C 0015FA9C 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80162B40 0015FAA0 7C 08 02 A6 */ mflr r0 +/* 80162B44 0015FAA4 2C 05 00 01 */ cmpwi r5, 1 +/* 80162B48 0015FAA8 90 01 00 64 */ stw r0, 0x64(r1) +/* 80162B4C 0015FAAC 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 80162B50 0015FAB0 7C 9F 23 78 */ mr r31, r4 +/* 80162B54 0015FAB4 93 C1 00 58 */ stw r30, 0x58(r1) +/* 80162B58 0015FAB8 7C 7E 1B 78 */ mr r30, r3 +/* 80162B5C 0015FABC 93 A1 00 54 */ stw r29, 0x54(r1) +/* 80162B60 0015FAC0 41 82 00 50 */ beq lbl_80162BB0 +/* 80162B64 0015FAC4 40 80 03 28 */ bge lbl_80162E8C +/* 80162B68 0015FAC8 2C 05 00 00 */ cmpwi r5, 0 +/* 80162B6C 0015FACC 40 80 00 0C */ bge lbl_80162B78 +/* 80162B70 0015FAD0 48 00 03 1C */ b lbl_80162E8C +/* 80162B74 0015FAD4 48 00 03 18 */ b lbl_80162E8C +lbl_80162B78: +/* 80162B78 0015FAD8 38 00 00 00 */ li r0, 0 +/* 80162B7C 0015FADC C0 22 9F 80 */ lfs f1, lbl_805ABCA0@sda21(r2) +/* 80162B80 0015FAE0 90 1E 07 C8 */ stw r0, 0x7c8(r30) +/* 80162B84 0015FAE4 C0 02 9F 7C */ lfs f0, lbl_805ABC9C@sda21(r2) +/* 80162B88 0015FAE8 D0 3E 06 30 */ stfs f1, 0x630(r30) +/* 80162B8C 0015FAEC D0 1E 06 34 */ stfs f0, 0x634(r30) +/* 80162B90 0015FAF0 80 1E 03 FC */ lwz r0, 0x3fc(r30) +/* 80162B94 0015FAF4 2C 00 00 01 */ cmpwi r0, 1 +/* 80162B98 0015FAF8 40 82 02 F4 */ bne lbl_80162E8C +/* 80162B9C 0015FAFC 88 1E 08 34 */ lbz r0, 0x834(r30) +/* 80162BA0 0015FB00 38 60 00 01 */ li r3, 1 +/* 80162BA4 0015FB04 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 80162BA8 0015FB08 98 1E 08 34 */ stb r0, 0x834(r30) +/* 80162BAC 0015FB0C 48 00 02 E0 */ b lbl_80162E8C +lbl_80162BB0: +/* 80162BB0 0015FB10 80 1E 07 C8 */ lwz r0, 0x7c8(r30) +/* 80162BB4 0015FB14 2C 00 00 01 */ cmpwi r0, 1 +/* 80162BB8 0015FB18 41 82 02 70 */ beq lbl_80162E28 +/* 80162BBC 0015FB1C 40 80 02 84 */ bge lbl_80162E40 +/* 80162BC0 0015FB20 2C 00 00 00 */ cmpwi r0, 0 +/* 80162BC4 0015FB24 40 80 00 08 */ bge lbl_80162BCC +/* 80162BC8 0015FB28 48 00 02 78 */ b lbl_80162E40 +lbl_80162BCC: +/* 80162BCC 0015FB2C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80162BD0 0015FB30 38 00 00 0C */ li r0, 0xc +/* 80162BD4 0015FB34 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 80162BD8 0015FB38 90 01 00 0C */ stw r0, 0xc(r1) +/* 80162BDC 0015FB3C 38 81 00 08 */ addi r4, r1, 8 +/* 80162BE0 0015FB40 90 61 00 08 */ stw r3, 8(r1) +/* 80162BE4 0015FB44 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80162BE8 0015FB48 38 63 00 04 */ addi r3, r3, 4 +/* 80162BEC 0015FB4C 4B FC EB CD */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd +/* 80162BF0 0015FB50 34 01 00 08 */ addic. r0, r1, 8 +/* 80162BF4 0015FB54 41 82 00 10 */ beq lbl_80162C04 +/* 80162BF8 0015FB58 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80162BFC 0015FB5C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80162C00 0015FB60 90 01 00 08 */ stw r0, 8(r1) +lbl_80162C04: +/* 80162C04 0015FB64 80 1E 05 8C */ lwz r0, 0x58c(r30) +/* 80162C08 0015FB68 2C 00 00 04 */ cmpwi r0, 4 +/* 80162C0C 0015FB6C 41 82 01 1C */ beq lbl_80162D28 +/* 80162C10 0015FB70 40 80 00 14 */ bge lbl_80162C24 +/* 80162C14 0015FB74 2C 00 00 02 */ cmpwi r0, 2 +/* 80162C18 0015FB78 41 82 00 18 */ beq lbl_80162C30 +/* 80162C1C 0015FB7C 40 80 00 90 */ bge lbl_80162CAC +/* 80162C20 0015FB80 48 00 01 FC */ b lbl_80162E1C +lbl_80162C24: +/* 80162C24 0015FB84 2C 00 00 06 */ cmpwi r0, 6 +/* 80162C28 0015FB88 40 80 01 F4 */ bge lbl_80162E1C +/* 80162C2C 0015FB8C 48 00 01 78 */ b lbl_80162DA4 +lbl_80162C30: +/* 80162C30 0015FB90 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80162C34 0015FB94 38 C0 00 01 */ li r6, 1 +/* 80162C38 0015FB98 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80162C3C 0015FB9C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80162C40 0015FBA0 3C 80 80 3E */ lis r4, lbl_803DA9E4@ha +/* 80162C44 0015FBA4 90 01 00 40 */ stw r0, 0x40(r1) +/* 80162C48 0015FBA8 38 A4 A9 E4 */ addi r5, r4, lbl_803DA9E4@l +/* 80162C4C 0015FBAC 38 00 00 03 */ li r0, 3 +/* 80162C50 0015FBB0 3B A3 00 04 */ addi r29, r3, 4 +/* 80162C54 0015FBB4 90 C1 00 44 */ stw r6, 0x44(r1) +/* 80162C58 0015FBB8 7F A3 EB 78 */ mr r3, r29 +/* 80162C5C 0015FBBC 38 80 00 01 */ li r4, 1 +/* 80162C60 0015FBC0 90 A1 00 40 */ stw r5, 0x40(r1) +/* 80162C64 0015FBC4 90 01 00 48 */ stw r0, 0x48(r1) +/* 80162C68 0015FBC8 90 C1 00 4C */ stw r6, 0x4c(r1) +/* 80162C6C 0015FBCC 4B FC E7 CD */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80162C70 0015FBD0 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80162C74 0015FBD4 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 80162C78 0015FBD8 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l +/* 80162C7C 0015FBDC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80162C80 0015FBE0 90 1D 00 C8 */ stw r0, 0xc8(r29) +/* 80162C84 0015FBE4 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 80162C88 0015FBE8 80 C1 00 48 */ lwz r6, 0x48(r1) +/* 80162C8C 0015FBEC 38 00 00 03 */ li r0, 3 +/* 80162C90 0015FBF0 80 A1 00 4C */ lwz r5, 0x4c(r1) +/* 80162C94 0015FBF4 90 DD 00 CC */ stw r6, 0xcc(r29) +/* 80162C98 0015FBF8 90 BD 00 D0 */ stw r5, 0xd0(r29) +/* 80162C9C 0015FBFC 90 81 00 40 */ stw r4, 0x40(r1) +/* 80162CA0 0015FC00 90 61 00 40 */ stw r3, 0x40(r1) +/* 80162CA4 0015FC04 90 1E 05 8C */ stw r0, 0x58c(r30) +/* 80162CA8 0015FC08 48 00 01 74 */ b lbl_80162E1C +lbl_80162CAC: +/* 80162CAC 0015FC0C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80162CB0 0015FC10 38 C0 00 01 */ li r6, 1 +/* 80162CB4 0015FC14 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80162CB8 0015FC18 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80162CBC 0015FC1C 3C 80 80 3E */ lis r4, lbl_803DA9E4@ha +/* 80162CC0 0015FC20 90 01 00 30 */ stw r0, 0x30(r1) +/* 80162CC4 0015FC24 38 A4 A9 E4 */ addi r5, r4, lbl_803DA9E4@l +/* 80162CC8 0015FC28 38 00 00 04 */ li r0, 4 +/* 80162CCC 0015FC2C 3B A3 00 04 */ addi r29, r3, 4 +/* 80162CD0 0015FC30 90 C1 00 34 */ stw r6, 0x34(r1) +/* 80162CD4 0015FC34 7F A3 EB 78 */ mr r3, r29 +/* 80162CD8 0015FC38 38 80 00 01 */ li r4, 1 +/* 80162CDC 0015FC3C 90 A1 00 30 */ stw r5, 0x30(r1) +/* 80162CE0 0015FC40 90 01 00 38 */ stw r0, 0x38(r1) +/* 80162CE4 0015FC44 90 C1 00 3C */ stw r6, 0x3c(r1) +/* 80162CE8 0015FC48 4B FC E7 51 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80162CEC 0015FC4C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80162CF0 0015FC50 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 80162CF4 0015FC54 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l +/* 80162CF8 0015FC58 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80162CFC 0015FC5C 90 1D 00 C8 */ stw r0, 0xc8(r29) +/* 80162D00 0015FC60 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 80162D04 0015FC64 80 C1 00 38 */ lwz r6, 0x38(r1) +/* 80162D08 0015FC68 38 00 00 04 */ li r0, 4 +/* 80162D0C 0015FC6C 80 A1 00 3C */ lwz r5, 0x3c(r1) +/* 80162D10 0015FC70 90 DD 00 CC */ stw r6, 0xcc(r29) +/* 80162D14 0015FC74 90 BD 00 D0 */ stw r5, 0xd0(r29) +/* 80162D18 0015FC78 90 81 00 30 */ stw r4, 0x30(r1) +/* 80162D1C 0015FC7C 90 61 00 30 */ stw r3, 0x30(r1) +/* 80162D20 0015FC80 90 1E 05 8C */ stw r0, 0x58c(r30) +/* 80162D24 0015FC84 48 00 00 F8 */ b lbl_80162E1C +lbl_80162D28: +/* 80162D28 0015FC88 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80162D2C 0015FC8C 38 C0 00 01 */ li r6, 1 +/* 80162D30 0015FC90 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80162D34 0015FC94 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80162D38 0015FC98 3C 80 80 3E */ lis r4, lbl_803DA9E4@ha +/* 80162D3C 0015FC9C 90 01 00 20 */ stw r0, 0x20(r1) +/* 80162D40 0015FCA0 38 A4 A9 E4 */ addi r5, r4, lbl_803DA9E4@l +/* 80162D44 0015FCA4 38 00 00 05 */ li r0, 5 +/* 80162D48 0015FCA8 3B A3 00 04 */ addi r29, r3, 4 +/* 80162D4C 0015FCAC 90 C1 00 24 */ stw r6, 0x24(r1) +/* 80162D50 0015FCB0 7F A3 EB 78 */ mr r3, r29 +/* 80162D54 0015FCB4 38 80 00 01 */ li r4, 1 +/* 80162D58 0015FCB8 90 A1 00 20 */ stw r5, 0x20(r1) +/* 80162D5C 0015FCBC 90 01 00 28 */ stw r0, 0x28(r1) +/* 80162D60 0015FCC0 90 C1 00 2C */ stw r6, 0x2c(r1) +/* 80162D64 0015FCC4 4B FC E6 D5 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80162D68 0015FCC8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80162D6C 0015FCCC 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 80162D70 0015FCD0 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l +/* 80162D74 0015FCD4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80162D78 0015FCD8 90 1D 00 C8 */ stw r0, 0xc8(r29) +/* 80162D7C 0015FCDC 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 80162D80 0015FCE0 80 C1 00 28 */ lwz r6, 0x28(r1) +/* 80162D84 0015FCE4 38 00 00 05 */ li r0, 5 +/* 80162D88 0015FCE8 80 A1 00 2C */ lwz r5, 0x2c(r1) +/* 80162D8C 0015FCEC 90 DD 00 CC */ stw r6, 0xcc(r29) +/* 80162D90 0015FCF0 90 BD 00 D0 */ stw r5, 0xd0(r29) +/* 80162D94 0015FCF4 90 81 00 20 */ stw r4, 0x20(r1) +/* 80162D98 0015FCF8 90 61 00 20 */ stw r3, 0x20(r1) +/* 80162D9C 0015FCFC 90 1E 05 8C */ stw r0, 0x58c(r30) +/* 80162DA0 0015FD00 48 00 00 7C */ b lbl_80162E1C +lbl_80162DA4: +/* 80162DA4 0015FD04 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80162DA8 0015FD08 38 C0 00 01 */ li r6, 1 +/* 80162DAC 0015FD0C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80162DB0 0015FD10 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80162DB4 0015FD14 3C 80 80 3E */ lis r4, lbl_803DA9E4@ha +/* 80162DB8 0015FD18 90 01 00 10 */ stw r0, 0x10(r1) +/* 80162DBC 0015FD1C 38 A4 A9 E4 */ addi r5, r4, lbl_803DA9E4@l +/* 80162DC0 0015FD20 38 00 00 02 */ li r0, 2 +/* 80162DC4 0015FD24 3B A3 00 04 */ addi r29, r3, 4 +/* 80162DC8 0015FD28 90 C1 00 14 */ stw r6, 0x14(r1) +/* 80162DCC 0015FD2C 7F A3 EB 78 */ mr r3, r29 +/* 80162DD0 0015FD30 38 80 00 01 */ li r4, 1 +/* 80162DD4 0015FD34 90 A1 00 10 */ stw r5, 0x10(r1) +/* 80162DD8 0015FD38 90 01 00 18 */ stw r0, 0x18(r1) +/* 80162DDC 0015FD3C 90 C1 00 1C */ stw r6, 0x1c(r1) +/* 80162DE0 0015FD40 4B FC E6 59 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80162DE4 0015FD44 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80162DE8 0015FD48 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 80162DEC 0015FD4C 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l +/* 80162DF0 0015FD50 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80162DF4 0015FD54 90 1D 00 C8 */ stw r0, 0xc8(r29) +/* 80162DF8 0015FD58 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 80162DFC 0015FD5C 80 C1 00 18 */ lwz r6, 0x18(r1) +/* 80162E00 0015FD60 38 00 00 02 */ li r0, 2 +/* 80162E04 0015FD64 80 A1 00 1C */ lwz r5, 0x1c(r1) +/* 80162E08 0015FD68 90 DD 00 CC */ stw r6, 0xcc(r29) +/* 80162E0C 0015FD6C 90 BD 00 D0 */ stw r5, 0xd0(r29) +/* 80162E10 0015FD70 90 81 00 10 */ stw r4, 0x10(r1) +/* 80162E14 0015FD74 90 61 00 10 */ stw r3, 0x10(r1) +/* 80162E18 0015FD78 90 1E 05 8C */ stw r0, 0x58c(r30) +lbl_80162E1C: +/* 80162E1C 0015FD7C 38 00 00 01 */ li r0, 1 +/* 80162E20 0015FD80 90 1E 07 C8 */ stw r0, 0x7c8(r30) +/* 80162E24 0015FD84 48 00 00 1C */ b lbl_80162E40 +lbl_80162E28: +/* 80162E28 0015FD88 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80162E2C 0015FD8C 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 80162E30 0015FD90 2C 00 00 03 */ cmpwi r0, 3 +/* 80162E34 0015FD94 41 82 00 0C */ beq lbl_80162E40 +/* 80162E38 0015FD98 38 00 00 02 */ li r0, 2 +/* 80162E3C 0015FD9C 90 1E 07 C8 */ stw r0, 0x7c8(r30) +lbl_80162E40: +/* 80162E40 0015FDA0 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 80162E44 0015FDA4 C0 42 9F 68 */ lfs f2, lbl_805ABC88@sda21(r2) +/* 80162E48 0015FDA8 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 80162E4C 0015FDAC C0 63 00 50 */ lfs f3, 0x50(r3) +/* 80162E50 0015FDB0 EC 20 10 2A */ fadds f1, f0, f2 +/* 80162E54 0015FDB4 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 80162E58 0015FDB8 EC A3 10 2A */ fadds f5, f3, f2 +/* 80162E5C 0015FDBC C0 9E 00 50 */ lfs f4, 0x50(r30) +/* 80162E60 0015FDC0 C0 63 00 60 */ lfs f3, 0x60(r3) +/* 80162E64 0015FDC4 C0 42 9F 7C */ lfs f2, lbl_805ABC9C@sda21(r2) +/* 80162E68 0015FDC8 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80162E6C 0015FDCC C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 80162E70 0015FDD0 EC 43 10 2A */ fadds f2, f3, f2 +/* 80162E74 0015FDD4 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80162E78 0015FDD8 EC 65 20 28 */ fsubs f3, f5, f4 +/* 80162E7C 0015FDDC D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 80162E80 0015FDE0 EC 02 08 28 */ fsubs f0, f2, f1 +/* 80162E84 0015FDE4 D0 63 00 20 */ stfs f3, 0x20(r3) +/* 80162E88 0015FDE8 D0 03 00 24 */ stfs f0, 0x24(r3) +lbl_80162E8C: +/* 80162E8C 0015FDEC 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80162E90 0015FDF0 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 80162E94 0015FDF4 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 80162E98 0015FDF8 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 80162E9C 0015FDFC 7C 08 03 A6 */ mtlr r0 +/* 80162EA0 0015FE00 38 21 00 60 */ addi r1, r1, 0x60 +/* 80162EA4 0015FE04 4E 80 00 20 */ blr + +.global AttackOver__6CDroneFR13CStateManagerf +AttackOver__6CDroneFR13CStateManagerf: +/* 80162EA8 0015FE08 88 03 08 34 */ lbz r0, 0x834(r3) +/* 80162EAC 0015FE0C 54 03 07 FE */ clrlwi r3, r0, 0x1f +/* 80162EB0 0015FE10 4E 80 00 20 */ blr + +.global CodeTrigger__6CDroneFR13CStateManagerf +CodeTrigger__6CDroneFR13CStateManagerf: +/* 80162EB4 0015FE14 88 03 08 34 */ lbz r0, 0x834(r3) +/* 80162EB8 0015FE18 54 03 F7 FE */ rlwinm r3, r0, 0x1e, 0x1f, 0x1f +/* 80162EBC 0015FE1C 4E 80 00 20 */ blr + +.global InRange__6CDroneFR13CStateManagerf +InRange__6CDroneFR13CStateManagerf: +/* 80162EC0 0015FE20 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80162EC4 0015FE24 38 00 00 00 */ li r0, 0 +/* 80162EC8 0015FE28 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 80162ECC 0015FE2C C0 03 02 FC */ lfs f0, 0x2fc(r3) +/* 80162ED0 0015FE30 C0 E4 00 50 */ lfs f7, 0x50(r4) +/* 80162ED4 0015FE34 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 80162ED8 0015FE38 EC 00 00 32 */ fmuls f0, f0, f0 +/* 80162EDC 0015FE3C C0 44 00 40 */ lfs f2, 0x40(r4) +/* 80162EE0 0015FE40 EC C7 08 28 */ fsubs f6, f7, f1 +/* 80162EE4 0015FE44 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 80162EE8 0015FE48 C1 04 00 60 */ lfs f8, 0x60(r4) +/* 80162EEC 0015FE4C EC 82 08 28 */ fsubs f4, f2, f1 +/* 80162EF0 0015FE50 C0 63 00 60 */ lfs f3, 0x60(r3) +/* 80162EF4 0015FE54 D0 41 00 08 */ stfs f2, 8(r1) +/* 80162EF8 0015FE58 EC A8 18 28 */ fsubs f5, f8, f3 +/* 80162EFC 0015FE5C EC 26 01 B2 */ fmuls f1, f6, f6 +/* 80162F00 0015FE60 D0 E1 00 0C */ stfs f7, 0xc(r1) +/* 80162F04 0015FE64 EC 44 01 32 */ fmuls f2, f4, f4 +/* 80162F08 0015FE68 EC 65 01 72 */ fmuls f3, f5, f5 +/* 80162F0C 0015FE6C D1 01 00 10 */ stfs f8, 0x10(r1) +/* 80162F10 0015FE70 EC 22 08 2A */ fadds f1, f2, f1 +/* 80162F14 0015FE74 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 80162F18 0015FE78 D0 C1 00 18 */ stfs f6, 0x18(r1) +/* 80162F1C 0015FE7C EC 23 08 2A */ fadds f1, f3, f1 +/* 80162F20 0015FE80 D0 A1 00 1C */ stfs f5, 0x1c(r1) +/* 80162F24 0015FE84 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80162F28 0015FE88 40 81 00 18 */ ble lbl_80162F40 +/* 80162F2C 0015FE8C C0 03 03 00 */ lfs f0, 0x300(r3) +/* 80162F30 0015FE90 EC 00 00 32 */ fmuls f0, f0, f0 +/* 80162F34 0015FE94 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80162F38 0015FE98 40 80 00 08 */ bge lbl_80162F40 +/* 80162F3C 0015FE9C 38 00 00 01 */ li r0, 1 +lbl_80162F40: +/* 80162F40 0015FEA0 7C 03 03 78 */ mr r3, r0 +/* 80162F44 0015FEA4 38 21 00 20 */ addi r1, r1, 0x20 +/* 80162F48 0015FEA8 4E 80 00 20 */ blr + +.global sub_80162f4c +sub_80162f4c: +/* 80162F4C 0015FEAC 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 80162F50 0015FEB0 7C 08 02 A6 */ mflr r0 +/* 80162F54 0015FEB4 90 01 00 84 */ stw r0, 0x84(r1) +/* 80162F58 0015FEB8 BF 61 00 6C */ stmw r27, 0x6c(r1) +/* 80162F5C 0015FEBC 7C 9B 23 78 */ mr r27, r4 +/* 80162F60 0015FEC0 7C BE 2B 78 */ mr r30, r5 +/* 80162F64 0015FEC4 7C DC 33 78 */ mr r28, r6 +/* 80162F68 0015FEC8 7C FD 3B 78 */ mr r29, r7 +/* 80162F6C 0015FECC 38 81 00 14 */ addi r4, r1, 0x14 +/* 80162F70 0015FED0 38 A1 00 08 */ addi r5, r1, 8 +/* 80162F74 0015FED4 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 80162F78 0015FED8 C0 E3 00 60 */ lfs f7, 0x60(r3) +/* 80162F7C 0015FEDC C0 43 00 50 */ lfs f2, 0x50(r3) +/* 80162F80 0015FEE0 EC C0 08 2A */ fadds f6, f0, f1 +/* 80162F84 0015FEE4 EC 60 08 28 */ fsubs f3, f0, f1 +/* 80162F88 0015FEE8 38 61 00 50 */ addi r3, r1, 0x50 +/* 80162F8C 0015FEEC EC A2 08 2A */ fadds f5, f2, f1 +/* 80162F90 0015FEF0 EC 87 08 2A */ fadds f4, f7, f1 +/* 80162F94 0015FEF4 D0 C1 00 08 */ stfs f6, 8(r1) +/* 80162F98 0015FEF8 EC 42 08 28 */ fsubs f2, f2, f1 +/* 80162F9C 0015FEFC EC 07 08 28 */ fsubs f0, f7, f1 +/* 80162FA0 0015FF00 D0 A1 00 0C */ stfs f5, 0xc(r1) +/* 80162FA4 0015FF04 D0 81 00 10 */ stfs f4, 0x10(r1) +/* 80162FA8 0015FF08 D0 61 00 14 */ stfs f3, 0x14(r1) +/* 80162FAC 0015FF0C D0 41 00 18 */ stfs f2, 0x18(r1) +/* 80162FB0 0015FF10 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80162FB4 0015FF14 48 1D 55 55 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 80162FB8 0015FF18 7F C5 F3 78 */ mr r5, r30 +/* 80162FBC 0015FF1C 38 60 00 00 */ li r3, 0 +/* 80162FC0 0015FF20 38 80 00 01 */ li r4, 1 +/* 80162FC4 0015FF24 48 22 6F 31 */ bl __shl2i +/* 80162FC8 0015FF28 7C 9E 23 78 */ mr r30, r4 +/* 80162FCC 0015FF2C 7C 7F 1B 78 */ mr r31, r3 +/* 80162FD0 0015FF30 7F 65 DB 78 */ mr r5, r27 +/* 80162FD4 0015FF34 38 60 00 00 */ li r3, 0 +/* 80162FD8 0015FF38 38 80 00 01 */ li r4, 1 +/* 80162FDC 0015FF3C 48 22 6F 19 */ bl __shl2i +/* 80162FE0 0015FF40 38 00 00 03 */ li r0, 3 +/* 80162FE4 0015FF44 90 81 00 3C */ stw r4, 0x3c(r1) +/* 80162FE8 0015FF48 7F 84 E3 78 */ mr r4, r28 +/* 80162FEC 0015FF4C 38 A1 00 50 */ addi r5, r1, 0x50 +/* 80162FF0 0015FF50 90 61 00 38 */ stw r3, 0x38(r1) +/* 80162FF4 0015FF54 7F A3 EB 78 */ mr r3, r29 +/* 80162FF8 0015FF58 38 C1 00 38 */ addi r6, r1, 0x38 +/* 80162FFC 0015FF5C 38 E0 00 00 */ li r7, 0 +/* 80163000 0015FF60 90 01 00 30 */ stw r0, 0x30(r1) +/* 80163004 0015FF64 93 C1 00 44 */ stw r30, 0x44(r1) +/* 80163008 0015FF68 93 E1 00 40 */ stw r31, 0x40(r1) +/* 8016300C 0015FF6C 90 01 00 48 */ stw r0, 0x48(r1) +/* 80163010 0015FF70 4B EE 97 11 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 80163014 0015FF74 BB 61 00 6C */ lmw r27, 0x6c(r1) +/* 80163018 0015FF78 80 01 00 84 */ lwz r0, 0x84(r1) +/* 8016301C 0015FF7C 7C 08 03 A6 */ mtlr r0 +/* 80163020 0015FF80 38 21 00 80 */ addi r1, r1, 0x80 +/* 80163024 0015FF84 4E 80 00 20 */ blr + +.global HearShot__6CDroneFR13CStateManagerf +HearShot__6CDroneFR13CStateManagerf: +/* 80163028 0015FF88 94 21 F7 D0 */ stwu r1, -0x830(r1) +/* 8016302C 0015FF8C 7C 08 02 A6 */ mflr r0 +/* 80163030 0015FF90 C0 22 9F B0 */ lfs f1, lbl_805ABCD0@sda21(r2) +/* 80163034 0015FF94 38 A0 00 20 */ li r5, 0x20 +/* 80163038 0015FF98 90 01 08 34 */ stw r0, 0x834(r1) +/* 8016303C 0015FF9C 38 00 00 00 */ li r0, 0 +/* 80163040 0015FFA0 38 C1 00 14 */ addi r6, r1, 0x14 +/* 80163044 0015FFA4 93 E1 08 2C */ stw r31, 0x82c(r1) +/* 80163048 0015FFA8 93 C1 08 28 */ stw r30, 0x828(r1) +/* 8016304C 0015FFAC 93 A1 08 24 */ stw r29, 0x824(r1) +/* 80163050 0015FFB0 7C 9D 23 78 */ mr r29, r4 +/* 80163054 0015FFB4 7F A7 EB 78 */ mr r7, r29 +/* 80163058 0015FFB8 38 80 00 23 */ li r4, 0x23 +/* 8016305C 0015FFBC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80163060 0015FFC0 81 83 00 00 */ lwz r12, 0(r3) +/* 80163064 0015FFC4 81 8C 02 CC */ lwz r12, 0x2cc(r12) +/* 80163068 0015FFC8 7D 89 03 A6 */ mtctr r12 +/* 8016306C 0015FFCC 4E 80 04 21 */ bctrl +/* 80163070 0015FFD0 3B E1 00 18 */ addi r31, r1, 0x18 +/* 80163074 0015FFD4 7F FE FB 78 */ mr r30, r31 +/* 80163078 0015FFD8 48 00 00 9C */ b lbl_80163114 +lbl_8016307C: +/* 8016307C 0015FFDC A0 1E 00 00 */ lhz r0, 0(r30) +/* 80163080 0015FFE0 7F A3 EB 78 */ mr r3, r29 +/* 80163084 0015FFE4 38 81 00 08 */ addi r4, r1, 8 +/* 80163088 0015FFE8 B0 01 00 08 */ sth r0, 8(r1) +/* 8016308C 0015FFEC 4B EE 95 19 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80163090 0015FFF0 7C 64 1B 78 */ mr r4, r3 +/* 80163094 0015FFF4 38 61 00 0C */ addi r3, r1, 0xc +/* 80163098 0015FFF8 4B F4 28 01 */ bl "__ct__20TCastToPtr<7CWeapon>FP7CEntity" +/* 8016309C 0015FFFC 80 63 00 04 */ lwz r3, 4(r3) +/* 801630A0 00160000 28 03 00 00 */ cmplwi r3, 0 +/* 801630A4 00160004 41 82 00 6C */ beq lbl_80163110 +/* 801630A8 00160008 80 03 00 F0 */ lwz r0, 0xf0(r3) +/* 801630AC 0016000C 2C 00 00 09 */ cmpwi r0, 9 +/* 801630B0 00160010 41 82 00 60 */ beq lbl_80163110 +/* 801630B4 00160014 80 A1 00 14 */ lwz r5, 0x14(r1) +/* 801630B8 00160018 38 60 00 00 */ li r3, 0 +/* 801630BC 0016001C 2C 05 00 00 */ cmpwi r5, 0 +/* 801630C0 00160020 40 81 00 40 */ ble lbl_80163100 +/* 801630C4 00160024 2C 05 00 08 */ cmpwi r5, 8 +/* 801630C8 00160028 38 85 FF F8 */ addi r4, r5, -8 +/* 801630CC 0016002C 40 81 00 20 */ ble lbl_801630EC +/* 801630D0 00160030 38 04 00 07 */ addi r0, r4, 7 +/* 801630D4 00160034 54 00 E8 FE */ srwi r0, r0, 3 +/* 801630D8 00160038 7C 09 03 A6 */ mtctr r0 +/* 801630DC 0016003C 2C 04 00 00 */ cmpwi r4, 0 +/* 801630E0 00160040 40 81 00 0C */ ble lbl_801630EC +lbl_801630E4: +/* 801630E4 00160044 38 63 00 08 */ addi r3, r3, 8 +/* 801630E8 00160048 42 00 FF FC */ bdnz lbl_801630E4 +lbl_801630EC: +/* 801630EC 0016004C 7C 03 28 50 */ subf r0, r3, r5 +/* 801630F0 00160050 7C 09 03 A6 */ mtctr r0 +/* 801630F4 00160054 7C 03 28 00 */ cmpw r3, r5 +/* 801630F8 00160058 40 80 00 08 */ bge lbl_80163100 +lbl_801630FC: +/* 801630FC 0016005C 42 00 00 00 */ bdnz lbl_801630FC +lbl_80163100: +/* 80163100 00160060 38 00 00 00 */ li r0, 0 +/* 80163104 00160064 38 60 00 01 */ li r3, 1 +/* 80163108 00160068 90 01 00 14 */ stw r0, 0x14(r1) +/* 8016310C 0016006C 48 00 00 70 */ b lbl_8016317C +lbl_80163110: +/* 80163110 00160070 3B DE 00 02 */ addi r30, r30, 2 +lbl_80163114: +/* 80163114 00160074 80 A1 00 14 */ lwz r5, 0x14(r1) +/* 80163118 00160078 54 A0 08 3C */ slwi r0, r5, 1 +/* 8016311C 0016007C 7C 1F 02 14 */ add r0, r31, r0 +/* 80163120 00160080 7C 1E 00 40 */ cmplw r30, r0 +/* 80163124 00160084 40 82 FF 58 */ bne lbl_8016307C +/* 80163128 00160088 2C 05 00 00 */ cmpwi r5, 0 +/* 8016312C 0016008C 38 60 00 00 */ li r3, 0 +/* 80163130 00160090 40 81 00 40 */ ble lbl_80163170 +/* 80163134 00160094 2C 05 00 08 */ cmpwi r5, 8 +/* 80163138 00160098 38 85 FF F8 */ addi r4, r5, -8 +/* 8016313C 0016009C 40 81 00 20 */ ble lbl_8016315C +/* 80163140 001600A0 38 04 00 07 */ addi r0, r4, 7 +/* 80163144 001600A4 54 00 E8 FE */ srwi r0, r0, 3 +/* 80163148 001600A8 7C 09 03 A6 */ mtctr r0 +/* 8016314C 001600AC 2C 04 00 00 */ cmpwi r4, 0 +/* 80163150 001600B0 40 81 00 0C */ ble lbl_8016315C +lbl_80163154: +/* 80163154 001600B4 38 63 00 08 */ addi r3, r3, 8 +/* 80163158 001600B8 42 00 FF FC */ bdnz lbl_80163154 +lbl_8016315C: +/* 8016315C 001600BC 7C 03 28 50 */ subf r0, r3, r5 +/* 80163160 001600C0 7C 09 03 A6 */ mtctr r0 +/* 80163164 001600C4 7C 03 28 00 */ cmpw r3, r5 +/* 80163168 001600C8 40 80 00 08 */ bge lbl_80163170 +lbl_8016316C: +/* 8016316C 001600CC 42 00 00 00 */ bdnz lbl_8016316C +lbl_80163170: +/* 80163170 001600D0 38 00 00 00 */ li r0, 0 +/* 80163174 001600D4 38 60 00 00 */ li r3, 0 +/* 80163178 001600D8 90 01 00 14 */ stw r0, 0x14(r1) +lbl_8016317C: +/* 8016317C 001600DC 80 01 08 34 */ lwz r0, 0x834(r1) +/* 80163180 001600E0 83 E1 08 2C */ lwz r31, 0x82c(r1) +/* 80163184 001600E4 83 C1 08 28 */ lwz r30, 0x828(r1) +/* 80163188 001600E8 83 A1 08 24 */ lwz r29, 0x824(r1) +/* 8016318C 001600EC 7C 08 03 A6 */ mtlr r0 +/* 80163190 001600F0 38 21 08 30 */ addi r1, r1, 0x830 +/* 80163194 001600F4 4E 80 00 20 */ blr + +.global ShouldAttack__6CDroneFR13CStateManagerf +ShouldAttack__6CDroneFR13CStateManagerf: +/* 80163198 001600F8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8016319C 001600FC 7C 08 02 A6 */ mflr r0 +/* 801631A0 00160100 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 801631A4 00160104 90 01 00 34 */ stw r0, 0x34(r1) +/* 801631A8 00160108 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801631AC 0016010C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801631B0 00160110 7C 7E 1B 78 */ mr r30, r3 +/* 801631B4 00160114 C0 23 05 D0 */ lfs f1, 0x5d0(r3) +/* 801631B8 00160118 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801631BC 0016011C 4C 40 13 82 */ cror 2, 0, 2 +/* 801631C0 00160120 40 82 00 74 */ bne lbl_80163234 +/* 801631C4 00160124 A0 1E 06 88 */ lhz r0, 0x688(r30) +/* 801631C8 00160128 7C 83 23 78 */ mr r3, r4 +/* 801631CC 0016012C 38 81 00 18 */ addi r4, r1, 0x18 +/* 801631D0 00160130 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801631D4 00160134 4B EE 93 A1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801631D8 00160138 7C 64 1B 78 */ mr r4, r3 +/* 801631DC 0016013C 38 61 00 1C */ addi r3, r1, 0x1c +/* 801631E0 00160140 4B F4 43 95 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 801631E4 00160144 83 E3 00 04 */ lwz r31, 4(r3) +/* 801631E8 00160148 28 1F 00 00 */ cmplwi r31, 0 +/* 801631EC 0016014C 41 82 00 40 */ beq lbl_8016322C +/* 801631F0 00160150 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801631F4 00160154 7F E3 FB 78 */ mr r3, r31 +/* 801631F8 00160158 38 81 00 14 */ addi r4, r1, 0x14 +/* 801631FC 0016015C B0 01 00 10 */ sth r0, 0x10(r1) +/* 80163200 00160160 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80163204 00160164 48 0D 5F 01 */ bl HasTeamAiRole__10CTeamAiMgrCF9TUniqueId +/* 80163208 00160168 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016320C 0016016C 41 82 00 20 */ beq lbl_8016322C +/* 80163210 00160170 A0 1E 00 08 */ lhz r0, 8(r30) +/* 80163214 00160174 7F E3 FB 78 */ mr r3, r31 +/* 80163218 00160178 38 81 00 0C */ addi r4, r1, 0xc +/* 8016321C 0016017C B0 01 00 08 */ sth r0, 8(r1) +/* 80163220 00160180 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80163224 00160184 48 0D 53 A1 */ bl AddProjectileAttacker__10CTeamAiMgrF9TUniqueId +/* 80163228 00160188 48 00 00 10 */ b lbl_80163238 +lbl_8016322C: +/* 8016322C 0016018C 38 60 00 01 */ li r3, 1 +/* 80163230 00160190 48 00 00 08 */ b lbl_80163238 +lbl_80163234: +/* 80163234 00160194 38 60 00 00 */ li r3, 0 +lbl_80163238: +/* 80163238 00160198 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8016323C 0016019C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80163240 001601A0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80163244 001601A4 7C 08 03 A6 */ mtlr r0 +/* 80163248 001601A8 38 21 00 30 */ addi r1, r1, 0x30 +/* 8016324C 001601AC 4E 80 00 20 */ blr + +.global KnockBack__6CDroneFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef +KnockBack__6CDroneFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef: +/* 80163250 001601B0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80163254 001601B4 7C 08 02 A6 */ mflr r0 +/* 80163258 001601B8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8016325C 001601BC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80163260 001601C0 7C 7F 1B 78 */ mr r31, r3 +/* 80163264 001601C4 88 03 04 00 */ lbz r0, 0x400(r3) +/* 80163268 001601C8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8016326C 001601CC 41 82 00 24 */ beq lbl_80163290 +/* 80163270 001601D0 4B F1 75 0D */ bl KnockBack__10CPatternedFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef +/* 80163274 001601D4 80 1F 04 64 */ lwz r0, 0x464(r31) +/* 80163278 001601D8 2C 00 FF FF */ cmpwi r0, -1 +/* 8016327C 001601DC 41 82 00 14 */ beq lbl_80163290 +/* 80163280 001601E0 C0 22 9F 80 */ lfs f1, lbl_805ABCA0@sda21(r2) +/* 80163284 001601E4 C0 02 9F 7C */ lfs f0, lbl_805ABC9C@sda21(r2) +/* 80163288 001601E8 D0 3F 06 30 */ stfs f1, 0x630(r31) +/* 8016328C 001601EC D0 1F 06 34 */ stfs f0, 0x634(r31) +lbl_80163290: +/* 80163290 001601F0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80163294 001601F4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80163298 001601F8 7C 08 03 A6 */ mtlr r0 +/* 8016329C 001601FC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801632A0 00160200 4E 80 00 20 */ blr + +.global sub_801632a4 +sub_801632a4: +/* 801632A4 00160204 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801632A8 00160208 7C 08 02 A6 */ mflr r0 +/* 801632AC 0016020C 90 01 00 44 */ stw r0, 0x44(r1) +/* 801632B0 00160210 54 C0 06 3F */ clrlwi. r0, r6, 0x18 +/* 801632B4 00160214 BF 61 00 2C */ stmw r27, 0x2c(r1) +/* 801632B8 00160218 7C DF 33 78 */ mr r31, r6 +/* 801632BC 0016021C 7C 7D 1B 78 */ mr r29, r3 +/* 801632C0 00160220 7C 9E 23 78 */ mr r30, r4 +/* 801632C4 00160224 7C BB 2B 78 */ mr r27, r5 +/* 801632C8 00160228 41 82 00 80 */ beq lbl_80163348 +/* 801632CC 0016022C 57 63 08 3C */ slwi r3, r27, 1 +/* 801632D0 00160230 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801632D4 00160234 7F 9D 1A 14 */ add r28, r29, r3 +/* 801632D8 00160238 A0 7C 07 DC */ lhz r3, 0x7dc(r28) +/* 801632DC 0016023C 7C 03 00 40 */ cmplw r3, r0 +/* 801632E0 00160240 40 82 00 68 */ bne lbl_80163348 +/* 801632E4 00160244 38 61 00 18 */ addi r3, r1, 0x18 +/* 801632E8 00160248 4B EE 9D F5 */ bl AllocateUniqueId__13CStateManagerFv +/* 801632EC 0016024C A0 01 00 18 */ lhz r0, 0x18(r1) +/* 801632F0 00160250 3C 60 80 3D */ lis r3, lbl_803D0398@ha +/* 801632F4 00160254 38 83 03 98 */ addi r4, r3, lbl_803D0398@l +/* 801632F8 00160258 38 60 01 08 */ li r3, 0x108 +/* 801632FC 0016025C B0 1C 07 DC */ sth r0, 0x7dc(r28) +/* 80163300 00160260 38 84 00 3B */ addi r4, r4, 0x3b +/* 80163304 00160264 38 A0 00 00 */ li r5, 0 +/* 80163308 00160268 48 1B 25 65 */ bl __nw__FUlPCcPCc +/* 8016330C 0016026C 7C 64 1B 79 */ or. r4, r3, r3 +/* 80163310 00160270 41 82 00 30 */ beq lbl_80163340 +/* 80163314 00160274 80 FD 00 04 */ lwz r7, 4(r29) +/* 80163318 00160278 38 81 00 14 */ addi r4, r1, 0x14 +/* 8016331C 0016027C 38 A1 00 20 */ addi r5, r1, 0x20 +/* 80163320 00160280 38 DD 00 34 */ addi r6, r29, 0x34 +/* 80163324 00160284 90 E1 00 20 */ stw r7, 0x20(r1) +/* 80163328 00160288 A0 1C 07 DC */ lhz r0, 0x7dc(r28) +/* 8016332C 0016028C 90 E1 00 1C */ stw r7, 0x1c(r1) +/* 80163330 00160290 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80163334 00160294 80 FD 05 68 */ lwz r7, 0x568(r29) +/* 80163338 00160298 48 00 45 CD */ bl __ct__11CDroneLaserF9TUniqueIdRC12CTransform4fUi +/* 8016333C 0016029C 7C 64 1B 78 */ mr r4, r3 +lbl_80163340: +/* 80163340 001602A0 7F C3 F3 78 */ mr r3, r30 +/* 80163344 001602A4 4B EE 97 D1 */ bl AddObject__13CStateManagerFR7CEntity +lbl_80163348: +/* 80163348 001602A8 57 60 08 3C */ slwi r0, r27, 1 +/* 8016334C 001602AC 7F C3 F3 78 */ mr r3, r30 +/* 80163350 001602B0 7C BD 02 14 */ add r5, r29, r0 +/* 80163354 001602B4 38 81 00 10 */ addi r4, r1, 0x10 +/* 80163358 001602B8 A0 05 07 DC */ lhz r0, 0x7dc(r5) +/* 8016335C 001602BC B0 01 00 10 */ sth r0, 0x10(r1) +/* 80163360 001602C0 4B EE 92 15 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80163364 001602C4 7C 64 1B 79 */ or. r4, r3, r3 +/* 80163368 001602C8 41 82 00 2C */ beq lbl_80163394 +/* 8016336C 001602CC 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80163370 001602D0 38 C0 00 04 */ li r6, 4 +/* 80163374 001602D4 41 82 00 08 */ beq lbl_8016337C +/* 80163378 001602D8 38 C0 00 01 */ li r6, 1 +lbl_8016337C: +/* 8016337C 001602DC A0 1D 00 08 */ lhz r0, 8(r29) +/* 80163380 001602E0 7F C3 F3 78 */ mr r3, r30 +/* 80163384 001602E4 38 A1 00 0C */ addi r5, r1, 0xc +/* 80163388 001602E8 B0 01 00 08 */ sth r0, 8(r1) +/* 8016338C 001602EC B0 01 00 0C */ sth r0, 0xc(r1) +/* 80163390 001602F0 4B EE 0B 41 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +lbl_80163394: +/* 80163394 001602F4 BB 61 00 2C */ lmw r27, 0x2c(r1) +/* 80163398 001602F8 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8016339C 001602FC 7C 08 03 A6 */ mtlr r0 +/* 801633A0 00160300 38 21 00 40 */ addi r1, r1, 0x40 +/* 801633A4 00160304 4E 80 00 20 */ blr + +.global sub_801633a8 +sub_801633a8: +/* 801633A8 00160308 94 21 F6 60 */ stwu r1, -0x9a0(r1) +/* 801633AC 0016030C 7C 08 02 A6 */ mflr r0 +/* 801633B0 00160310 90 01 09 A4 */ stw r0, 0x9a4(r1) +/* 801633B4 00160314 93 E1 09 9C */ stw r31, 0x99c(r1) +/* 801633B8 00160318 7C 9F 23 78 */ mr r31, r4 +/* 801633BC 0016031C 93 C1 09 98 */ stw r30, 0x998(r1) +/* 801633C0 00160320 7C 7E 1B 78 */ mr r30, r3 +/* 801633C4 00160324 93 A1 09 94 */ stw r29, 0x994(r1) +/* 801633C8 00160328 93 81 09 90 */ stw r28, 0x990(r1) +/* 801633CC 0016032C 88 0D A4 23 */ lbz r0, lbl_805A8FE3@sda21(r13) +/* 801633D0 00160330 7C 00 07 75 */ extsb. r0, r0 +/* 801633D4 00160334 40 82 00 58 */ bne lbl_8016342C +/* 801633D8 00160338 80 AD 8D 50 */ lwz r5, lbl_805A7910@sda21(r13) +/* 801633DC 0016033C 38 60 00 00 */ li r3, 0 +/* 801633E0 00160340 38 80 00 01 */ li r4, 1 +/* 801633E4 00160344 48 22 6B 11 */ bl __shl2i +/* 801633E8 00160348 80 AD 8D 4C */ lwz r5, lbl_805A790C@sda21(r13) +/* 801633EC 0016034C 7C 9C 23 78 */ mr r28, r4 +/* 801633F0 00160350 7C 7D 1B 78 */ mr r29, r3 +/* 801633F4 00160354 38 60 00 00 */ li r3, 0 +/* 801633F8 00160358 38 80 00 01 */ li r4, 1 +/* 801633FC 0016035C 48 22 6A F9 */ bl __shl2i +/* 80163400 00160360 3C A0 80 47 */ lis r5, lbl_8046C890@ha +/* 80163404 00160364 38 C0 00 03 */ li r6, 3 +/* 80163408 00160368 38 A5 C8 90 */ addi r5, r5, lbl_8046C890@l +/* 8016340C 0016036C 38 00 00 01 */ li r0, 1 +/* 80163410 00160370 90 C1 00 D0 */ stw r6, 0xd0(r1) +/* 80163414 00160374 90 85 00 04 */ stw r4, 4(r5) +/* 80163418 00160378 90 65 00 00 */ stw r3, 0(r5) +/* 8016341C 0016037C 93 85 00 0C */ stw r28, 0xc(r5) +/* 80163420 00160380 93 A5 00 08 */ stw r29, 8(r5) +/* 80163424 00160384 90 C5 00 10 */ stw r6, 0x10(r5) +/* 80163428 00160388 98 0D A4 23 */ stb r0, lbl_805A8FE3@sda21(r13) +lbl_8016342C: +/* 8016342C 0016038C 88 0D A4 24 */ lbz r0, lbl_805A8FE4@sda21(r13) +/* 80163430 00160390 7C 00 07 75 */ extsb. r0, r0 +/* 80163434 00160394 40 82 00 58 */ bne lbl_8016348C +/* 80163438 00160398 80 AD 8D 58 */ lwz r5, lbl_805A7918@sda21(r13) +/* 8016343C 0016039C 38 60 00 00 */ li r3, 0 +/* 80163440 001603A0 38 80 00 01 */ li r4, 1 +/* 80163444 001603A4 48 22 6A B1 */ bl __shl2i +/* 80163448 001603A8 80 AD 8D 54 */ lwz r5, lbl_805A7914@sda21(r13) +/* 8016344C 001603AC 7C 9D 23 78 */ mr r29, r4 +/* 80163450 001603B0 7C 7C 1B 78 */ mr r28, r3 +/* 80163454 001603B4 38 60 00 00 */ li r3, 0 +/* 80163458 001603B8 38 80 00 01 */ li r4, 1 +/* 8016345C 001603BC 48 22 6A 99 */ bl __shl2i +/* 80163460 001603C0 3C A0 80 47 */ lis r5, lbl_8046C8A8@ha +/* 80163464 001603C4 38 C0 00 03 */ li r6, 3 +/* 80163468 001603C8 38 A5 C8 A8 */ addi r5, r5, lbl_8046C8A8@l +/* 8016346C 001603CC 38 00 00 01 */ li r0, 1 +/* 80163470 001603D0 90 C1 00 B8 */ stw r6, 0xb8(r1) +/* 80163474 001603D4 90 85 00 04 */ stw r4, 4(r5) +/* 80163478 001603D8 90 65 00 00 */ stw r3, 0(r5) +/* 8016347C 001603DC 93 A5 00 0C */ stw r29, 0xc(r5) +/* 80163480 001603E0 93 85 00 08 */ stw r28, 8(r5) +/* 80163484 001603E4 90 C5 00 10 */ stw r6, 0x10(r5) +/* 80163488 001603E8 98 0D A4 24 */ stb r0, lbl_805A8FE4@sda21(r13) +lbl_8016348C: +/* 8016348C 001603EC C0 5E 00 5C */ lfs f2, 0x5c(r30) +/* 80163490 001603F0 7F C4 F3 78 */ mr r4, r30 +/* 80163494 001603F4 C0 3E 00 4C */ lfs f1, 0x4c(r30) +/* 80163498 001603F8 38 61 00 8C */ addi r3, r1, 0x8c +/* 8016349C 001603FC C0 1E 00 3C */ lfs f0, 0x3c(r30) +/* 801634A0 00160400 FC 40 10 50 */ fneg f2, f2 +/* 801634A4 00160404 FC 20 08 50 */ fneg f1, f1 +/* 801634A8 00160408 FC 00 00 50 */ fneg f0, f0 +/* 801634AC 0016040C D0 41 00 70 */ stfs f2, 0x70(r1) +/* 801634B0 00160410 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 801634B4 00160414 D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 801634B8 00160418 4B FB 74 75 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 801634BC 0016041C C0 01 00 8C */ lfs f0, 0x8c(r1) +/* 801634C0 00160420 7F C4 F3 78 */ mr r4, r30 +/* 801634C4 00160424 C0 A1 00 90 */ lfs f5, 0x90(r1) +/* 801634C8 00160428 38 61 00 74 */ addi r3, r1, 0x74 +/* 801634CC 0016042C C0 81 00 94 */ lfs f4, 0x94(r1) +/* 801634D0 00160430 C0 61 00 98 */ lfs f3, 0x98(r1) +/* 801634D4 00160434 C0 41 00 9C */ lfs f2, 0x9c(r1) +/* 801634D8 00160438 C0 21 00 A0 */ lfs f1, 0xa0(r1) +/* 801634DC 0016043C D0 01 00 D8 */ stfs f0, 0xd8(r1) +/* 801634E0 00160440 C0 02 9F D8 */ lfs f0, lbl_805ABCF8@sda21(r2) +/* 801634E4 00160444 D0 A1 00 DC */ stfs f5, 0xdc(r1) +/* 801634E8 00160448 D0 81 00 E0 */ stfs f4, 0xe0(r1) +/* 801634EC 0016044C D0 61 00 E4 */ stfs f3, 0xe4(r1) +/* 801634F0 00160450 D0 41 00 E8 */ stfs f2, 0xe8(r1) +/* 801634F4 00160454 D0 21 00 EC */ stfs f1, 0xec(r1) +/* 801634F8 00160458 C0 BE 00 5C */ lfs f5, 0x5c(r30) +/* 801634FC 0016045C C0 9E 00 4C */ lfs f4, 0x4c(r30) +/* 80163500 00160460 C0 3E 00 3C */ lfs f1, 0x3c(r30) +/* 80163504 00160464 EC 40 01 72 */ fmuls f2, f0, f5 +/* 80163508 00160468 EC 60 01 32 */ fmuls f3, f0, f4 +/* 8016350C 0016046C D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 80163510 00160470 EC 00 00 72 */ fmuls f0, f0, f1 +/* 80163514 00160474 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 80163518 00160478 D0 A1 00 40 */ stfs f5, 0x40(r1) +/* 8016351C 0016047C D0 01 00 44 */ stfs f0, 0x44(r1) +/* 80163520 00160480 D0 61 00 48 */ stfs f3, 0x48(r1) +/* 80163524 00160484 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 80163528 00160488 4B FB 74 05 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 8016352C 0016048C C0 21 00 78 */ lfs f1, 0x78(r1) +/* 80163530 00160490 38 61 00 D8 */ addi r3, r1, 0xd8 +/* 80163534 00160494 C0 01 00 48 */ lfs f0, 0x48(r1) +/* 80163538 00160498 38 81 00 50 */ addi r4, r1, 0x50 +/* 8016353C 0016049C C0 61 00 7C */ lfs f3, 0x7c(r1) +/* 80163540 001604A0 C0 41 00 4C */ lfs f2, 0x4c(r1) +/* 80163544 001604A4 EC 81 00 2A */ fadds f4, f1, f0 +/* 80163548 001604A8 C0 21 00 74 */ lfs f1, 0x74(r1) +/* 8016354C 001604AC C0 01 00 44 */ lfs f0, 0x44(r1) +/* 80163550 001604B0 EC 43 10 2A */ fadds f2, f3, f2 +/* 80163554 001604B4 D0 81 00 54 */ stfs f4, 0x54(r1) +/* 80163558 001604B8 EC 01 00 2A */ fadds f0, f1, f0 +/* 8016355C 001604BC D0 41 00 58 */ stfs f2, 0x58(r1) +/* 80163560 001604C0 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 80163564 001604C4 48 1D 45 A5 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 80163568 001604C8 38 00 00 00 */ li r0, 0 +/* 8016356C 001604CC 3C 60 80 47 */ lis r3, lbl_8046C890@ha +/* 80163570 001604D0 90 01 01 80 */ stw r0, 0x180(r1) +/* 80163574 001604D4 38 C3 C8 90 */ addi r6, r3, lbl_8046C890@l +/* 80163578 001604D8 7F E3 FB 78 */ mr r3, r31 +/* 8016357C 001604DC 38 81 01 80 */ addi r4, r1, 0x180 +/* 80163580 001604E0 38 A1 00 D8 */ addi r5, r1, 0xd8 +/* 80163584 001604E4 38 E0 00 00 */ li r7, 0 +/* 80163588 001604E8 4B EE 91 99 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 8016358C 001604EC 80 01 01 80 */ lwz r0, 0x180(r1) +/* 80163590 001604F0 2C 00 00 00 */ cmpwi r0, 0 +/* 80163594 001604F4 40 81 01 B0 */ ble lbl_80163744 +/* 80163598 001604F8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016359C 001604FC 3C 60 80 47 */ lis r3, lbl_8046C8A8@ha +/* 801635A0 00160500 38 E3 C8 A8 */ addi r7, r3, lbl_8046C8A8@l +/* 801635A4 00160504 C0 22 9F DC */ lfs f1, lbl_805ABCFC@sda21(r2) +/* 801635A8 00160508 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801635AC 0016050C 7F E4 FB 78 */ mr r4, r31 +/* 801635B0 00160510 38 61 01 20 */ addi r3, r1, 0x120 +/* 801635B4 00160514 38 A1 00 2C */ addi r5, r1, 0x2c +/* 801635B8 00160518 C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 801635BC 0016051C 38 C1 00 68 */ addi r6, r1, 0x68 +/* 801635C0 00160520 C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 801635C4 00160524 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801635C8 00160528 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801635CC 0016052C D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801635D0 00160530 D0 61 00 34 */ stfs f3, 0x34(r1) +/* 801635D4 00160534 4B EE 99 C5 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 801635D8 00160538 C0 E1 01 20 */ lfs f7, 0x120(r1) +/* 801635DC 0016053C 7F E4 FB 78 */ mr r4, r31 +/* 801635E0 00160540 C0 C1 01 24 */ lfs f6, 0x124(r1) +/* 801635E4 00160544 38 61 00 F0 */ addi r3, r1, 0xf0 +/* 801635E8 00160548 C0 A1 01 28 */ lfs f5, 0x128(r1) +/* 801635EC 0016054C 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801635F0 00160550 C0 81 01 2C */ lfs f4, 0x12c(r1) +/* 801635F4 00160554 38 C1 00 20 */ addi r6, r1, 0x20 +/* 801635F8 00160558 C0 61 01 30 */ lfs f3, 0x130(r1) +/* 801635FC 0016055C 38 E1 00 68 */ addi r7, r1, 0x68 +/* 80163600 00160560 C0 41 01 34 */ lfs f2, 0x134(r1) +/* 80163604 00160564 39 01 01 80 */ addi r8, r1, 0x180 +/* 80163608 00160568 C0 21 01 38 */ lfs f1, 0x138(r1) +/* 8016360C 0016056C 39 21 01 50 */ addi r9, r1, 0x150 +/* 80163610 00160570 C0 01 01 3C */ lfs f0, 0x13c(r1) +/* 80163614 00160574 89 61 01 40 */ lbz r11, 0x140(r1) +/* 80163618 00160578 80 01 01 48 */ lwz r0, 0x148(r1) +/* 8016361C 0016057C 81 41 01 4C */ lwz r10, 0x14c(r1) +/* 80163620 00160580 D0 E1 01 50 */ stfs f7, 0x150(r1) +/* 80163624 00160584 D0 C1 01 54 */ stfs f6, 0x154(r1) +/* 80163628 00160588 D0 A1 01 58 */ stfs f5, 0x158(r1) +/* 8016362C 0016058C D0 81 01 5C */ stfs f4, 0x15c(r1) +/* 80163630 00160590 D0 61 01 60 */ stfs f3, 0x160(r1) +/* 80163634 00160594 D0 41 01 64 */ stfs f2, 0x164(r1) +/* 80163638 00160598 D0 21 01 68 */ stfs f1, 0x168(r1) +/* 8016363C 0016059C D0 01 01 6C */ stfs f0, 0x16c(r1) +/* 80163640 001605A0 99 61 01 70 */ stb r11, 0x170(r1) +/* 80163644 001605A4 91 41 01 7C */ stw r10, 0x17c(r1) +/* 80163648 001605A8 90 01 01 78 */ stw r0, 0x178(r1) +/* 8016364C 001605AC C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 80163650 001605B0 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 80163654 001605B4 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 80163658 001605B8 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 8016365C 001605BC D0 21 00 24 */ stfs f1, 0x24(r1) +/* 80163660 001605C0 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 80163664 001605C4 48 00 01 55 */ bl sub_801637b8 +/* 80163668 001605C8 88 01 01 10 */ lbz r0, 0x110(r1) +/* 8016366C 001605CC C0 A1 00 F0 */ lfs f5, 0xf0(r1) +/* 80163670 001605D0 80 A1 00 F4 */ lwz r5, 0xf4(r1) +/* 80163674 001605D4 28 00 00 00 */ cmplwi r0, 0 +/* 80163678 001605D8 80 81 00 F8 */ lwz r4, 0xf8(r1) +/* 8016367C 001605DC 80 61 00 FC */ lwz r3, 0xfc(r1) +/* 80163680 001605E0 C0 81 01 00 */ lfs f4, 0x100(r1) +/* 80163684 001605E4 C0 61 01 04 */ lfs f3, 0x104(r1) +/* 80163688 001605E8 C0 41 01 08 */ lfs f2, 0x108(r1) +/* 8016368C 001605EC C0 21 01 0C */ lfs f1, 0x10c(r1) +/* 80163690 001605F0 C8 01 01 18 */ lfd f0, 0x118(r1) +/* 80163694 001605F4 D0 A1 01 50 */ stfs f5, 0x150(r1) +/* 80163698 001605F8 90 A1 01 54 */ stw r5, 0x154(r1) +/* 8016369C 001605FC 90 81 01 58 */ stw r4, 0x158(r1) +/* 801636A0 00160600 90 61 01 5C */ stw r3, 0x15c(r1) +/* 801636A4 00160604 D0 81 01 60 */ stfs f4, 0x160(r1) +/* 801636A8 00160608 D0 61 01 64 */ stfs f3, 0x164(r1) +/* 801636AC 0016060C D0 41 01 68 */ stfs f2, 0x168(r1) +/* 801636B0 00160610 D0 21 01 6C */ stfs f1, 0x16c(r1) +/* 801636B4 00160614 98 01 01 70 */ stb r0, 0x170(r1) +/* 801636B8 00160618 D8 01 01 78 */ stfd f0, 0x178(r1) +/* 801636BC 0016061C 41 82 00 88 */ beq lbl_80163744 +/* 801636C0 00160620 A0 61 00 14 */ lhz r3, 0x14(r1) +/* 801636C4 00160624 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801636C8 00160628 7C 03 00 40 */ cmplw r3, r0 +/* 801636CC 0016062C 41 82 00 78 */ beq lbl_80163744 +/* 801636D0 00160630 A0 01 00 14 */ lhz r0, 0x14(r1) +/* 801636D4 00160634 7F E3 FB 78 */ mr r3, r31 +/* 801636D8 00160638 38 81 00 10 */ addi r4, r1, 0x10 +/* 801636DC 0016063C B0 01 00 10 */ sth r0, 0x10(r1) +/* 801636E0 00160640 4B EE 8E 95 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801636E4 00160644 7C 64 1B 78 */ mr r4, r3 +/* 801636E8 00160648 38 61 00 18 */ addi r3, r1, 0x18 +/* 801636EC 0016064C 4B F4 31 75 */ bl "__ct__26TCastToPtr<12CScriptWater>FP7CEntity" +/* 801636F0 00160650 80 C3 00 04 */ lwz r6, 4(r3) +/* 801636F4 00160654 28 06 00 00 */ cmplwi r6, 0 +/* 801636F8 00160658 41 82 00 4C */ beq lbl_80163744 +/* 801636FC 0016065C C0 21 01 54 */ lfs f1, 0x154(r1) +/* 80163700 00160660 7F E7 FB 78 */ mr r7, r31 +/* 80163704 00160664 C0 41 01 58 */ lfs f2, 0x158(r1) +/* 80163708 00160668 38 81 00 0C */ addi r4, r1, 0xc +/* 8016370C 0016066C C0 01 01 5C */ lfs f0, 0x15c(r1) +/* 80163710 00160670 38 A1 00 5C */ addi r5, r1, 0x5c +/* 80163714 00160674 D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 80163718 00160678 C0 22 9F E0 */ lfs f1, lbl_805ABD00@sda21(r2) +/* 8016371C 0016067C D0 41 00 60 */ stfs f2, 0x60(r1) +/* 80163720 00160680 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 80163724 00160684 A0 1E 00 08 */ lhz r0, 8(r30) +/* 80163728 00160688 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8016372C 0016068C 80 66 01 B4 */ lwz r3, 0x1b4(r6) +/* 80163730 00160690 B0 01 00 08 */ sth r0, 8(r1) +/* 80163734 00160694 81 83 00 00 */ lwz r12, 0(r3) +/* 80163738 00160698 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8016373C 0016069C 7D 89 03 A6 */ mtctr r12 +/* 80163740 001606A0 4E 80 04 21 */ bctrl +lbl_80163744: +/* 80163744 001606A4 80 A1 01 80 */ lwz r5, 0x180(r1) +/* 80163748 001606A8 38 60 00 00 */ li r3, 0 +/* 8016374C 001606AC 2C 05 00 00 */ cmpwi r5, 0 +/* 80163750 001606B0 40 81 00 40 */ ble lbl_80163790 +/* 80163754 001606B4 2C 05 00 08 */ cmpwi r5, 8 +/* 80163758 001606B8 38 85 FF F8 */ addi r4, r5, -8 +/* 8016375C 001606BC 40 81 00 20 */ ble lbl_8016377C +/* 80163760 001606C0 38 04 00 07 */ addi r0, r4, 7 +/* 80163764 001606C4 54 00 E8 FE */ srwi r0, r0, 3 +/* 80163768 001606C8 7C 09 03 A6 */ mtctr r0 +/* 8016376C 001606CC 2C 04 00 00 */ cmpwi r4, 0 +/* 80163770 001606D0 40 81 00 0C */ ble lbl_8016377C +lbl_80163774: +/* 80163774 001606D4 38 63 00 08 */ addi r3, r3, 8 +/* 80163778 001606D8 42 00 FF FC */ bdnz lbl_80163774 +lbl_8016377C: +/* 8016377C 001606DC 7C 03 28 50 */ subf r0, r3, r5 +/* 80163780 001606E0 7C 09 03 A6 */ mtctr r0 +/* 80163784 001606E4 7C 03 28 00 */ cmpw r3, r5 +/* 80163788 001606E8 40 80 00 08 */ bge lbl_80163790 +lbl_8016378C: +/* 8016378C 001606EC 42 00 00 00 */ bdnz lbl_8016378C +lbl_80163790: +/* 80163790 001606F0 38 00 00 00 */ li r0, 0 +/* 80163794 001606F4 90 01 01 80 */ stw r0, 0x180(r1) +/* 80163798 001606F8 80 01 09 A4 */ lwz r0, 0x9a4(r1) +/* 8016379C 001606FC 83 E1 09 9C */ lwz r31, 0x99c(r1) +/* 801637A0 00160700 83 C1 09 98 */ lwz r30, 0x998(r1) +/* 801637A4 00160704 83 A1 09 94 */ lwz r29, 0x994(r1) +/* 801637A8 00160708 83 81 09 90 */ lwz r28, 0x990(r1) +/* 801637AC 0016070C 7C 08 03 A6 */ mtlr r0 +/* 801637B0 00160710 38 21 09 A0 */ addi r1, r1, 0x9a0 +/* 801637B4 00160714 4E 80 00 20 */ blr + +.global sub_801637b8 +sub_801637b8: +/* 801637B8 00160718 94 21 FD 60 */ stwu r1, -0x2a0(r1) +/* 801637BC 0016071C 7C 08 02 A6 */ mflr r0 +/* 801637C0 00160720 90 01 02 A4 */ stw r0, 0x2a4(r1) +/* 801637C4 00160724 DB E1 02 90 */ stfd f31, 0x290(r1) +/* 801637C8 00160728 F3 E1 02 98 */ psq_st f31, 664(r1), 0, qr0 +/* 801637CC 0016072C BE A1 02 64 */ stmw r21, 0x264(r1) +/* 801637D0 00160730 C0 E9 00 00 */ lfs f7, 0(r9) +/* 801637D4 00160734 7D 1B 43 78 */ mr r27, r8 +/* 801637D8 00160738 C0 C9 00 04 */ lfs f6, 4(r9) +/* 801637DC 0016073C 7C 76 1B 78 */ mr r22, r3 +/* 801637E0 00160740 C0 A9 00 08 */ lfs f5, 8(r9) +/* 801637E4 00160744 FF E0 38 90 */ fmr f31, f7 +/* 801637E8 00160748 C0 89 00 0C */ lfs f4, 0xc(r9) +/* 801637EC 0016074C 7C 97 23 78 */ mr r23, r4 +/* 801637F0 00160750 C0 69 00 10 */ lfs f3, 0x10(r9) +/* 801637F4 00160754 7C B8 2B 78 */ mr r24, r5 +/* 801637F8 00160758 C0 49 00 14 */ lfs f2, 0x14(r9) +/* 801637FC 0016075C C0 29 00 18 */ lfs f1, 0x18(r9) +/* 80163800 00160760 7C D9 33 78 */ mr r25, r6 +/* 80163804 00160764 C0 09 00 1C */ lfs f0, 0x1c(r9) +/* 80163808 00160768 7C FA 3B 78 */ mr r26, r7 +/* 8016380C 0016076C 88 89 00 20 */ lbz r4, 0x20(r9) +/* 80163810 00160770 3B BB 00 04 */ addi r29, r27, 4 +/* 80163814 00160774 80 09 00 28 */ lwz r0, 0x28(r9) +/* 80163818 00160778 3B E1 02 2C */ addi r31, r1, 0x22c +/* 8016381C 0016077C 80 69 00 2C */ lwz r3, 0x2c(r9) +/* 80163820 00160780 3B C1 01 BC */ addi r30, r1, 0x1bc +/* 80163824 00160784 D0 E1 01 50 */ stfs f7, 0x150(r1) +/* 80163828 00160788 D0 C1 01 54 */ stfs f6, 0x154(r1) +/* 8016382C 0016078C D0 A1 01 58 */ stfs f5, 0x158(r1) +/* 80163830 00160790 D0 81 01 5C */ stfs f4, 0x15c(r1) +/* 80163834 00160794 D0 61 01 60 */ stfs f3, 0x160(r1) +/* 80163838 00160798 D0 41 01 64 */ stfs f2, 0x164(r1) +/* 8016383C 0016079C D0 21 01 68 */ stfs f1, 0x168(r1) +/* 80163840 001607A0 D0 01 01 6C */ stfs f0, 0x16c(r1) +/* 80163844 001607A4 98 81 01 70 */ stb r4, 0x170(r1) +/* 80163848 001607A8 90 61 01 7C */ stw r3, 0x17c(r1) +/* 8016384C 001607AC 90 01 01 78 */ stw r0, 0x178(r1) +/* 80163850 001607B0 48 00 03 64 */ b lbl_80163BB4 +lbl_80163854: +/* 80163854 001607B4 A0 1D 00 00 */ lhz r0, 0(r29) +/* 80163858 001607B8 7E E3 BB 78 */ mr r3, r23 +/* 8016385C 001607BC 38 81 00 0C */ addi r4, r1, 0xc +/* 80163860 001607C0 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80163864 001607C4 4B EE 8D 41 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80163868 001607C8 7C 64 1B 78 */ mr r4, r3 +/* 8016386C 001607CC 38 61 00 18 */ addi r3, r1, 0x18 +/* 80163870 001607D0 4B F4 8E 75 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" +/* 80163874 001607D4 83 83 00 04 */ lwz r28, 4(r3) +/* 80163878 001607D8 28 1C 00 00 */ cmplwi r28, 0 +/* 8016387C 001607DC 41 82 01 4C */ beq lbl_801639C8 +/* 80163880 001607E0 7F 84 E3 78 */ mr r4, r28 +/* 80163884 001607E4 38 61 00 68 */ addi r3, r1, 0x68 +/* 80163888 001607E8 81 9C 00 00 */ lwz r12, 0(r28) +/* 8016388C 001607EC 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 80163890 001607F0 7D 89 03 A6 */ mtctr r12 +/* 80163894 001607F4 4E 80 04 21 */ bctrl +/* 80163898 001607F8 7F 83 E3 78 */ mr r3, r28 +/* 8016389C 001607FC 81 9C 00 00 */ lwz r12, 0(r28) +/* 801638A0 00160800 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 801638A4 00160804 7D 89 03 A6 */ mtctr r12 +/* 801638A8 00160808 4E 80 04 21 */ bctrl +/* 801638AC 0016080C FC 20 F8 90 */ fmr f1, f31 +/* 801638B0 00160810 7C 75 1B 78 */ mr r21, r3 +/* 801638B4 00160814 7F 24 CB 78 */ mr r4, r25 +/* 801638B8 00160818 7F 45 D3 78 */ mr r5, r26 +/* 801638BC 0016081C 38 61 01 F0 */ addi r3, r1, 0x1f0 +/* 801638C0 00160820 48 17 27 AD */ bl __ct__5CMRayFRC9CVector3fRC9CVector3ff +/* 801638C4 00160824 D3 E1 02 28 */ stfs f31, 0x228(r1) +/* 801638C8 00160828 7F E3 FB 78 */ mr r3, r31 +/* 801638CC 0016082C 38 81 00 68 */ addi r4, r1, 0x68 +/* 801638D0 00160830 48 1A F2 A5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801638D4 00160834 3C 60 80 5A */ lis r3, lbl_8059FD18@ha +/* 801638D8 00160838 7E A4 AB 78 */ mr r4, r21 +/* 801638DC 0016083C 38 03 FD 18 */ addi r0, r3, lbl_8059FD18@l +/* 801638E0 00160840 38 61 00 98 */ addi r3, r1, 0x98 +/* 801638E4 00160844 90 01 02 5C */ stw r0, 0x25c(r1) +/* 801638E8 00160848 38 A1 01 F0 */ addi r5, r1, 0x1f0 +/* 801638EC 0016084C 81 95 00 00 */ lwz r12, 0(r21) +/* 801638F0 00160850 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 801638F4 00160854 7D 89 03 A6 */ mtctr r12 +/* 801638F8 00160858 4E 80 04 21 */ bctrl +/* 801638FC 0016085C 88 81 00 B8 */ lbz r4, 0xb8(r1) +/* 80163900 00160860 C0 E1 00 98 */ lfs f7, 0x98(r1) +/* 80163904 00160864 C0 C1 00 9C */ lfs f6, 0x9c(r1) +/* 80163908 00160868 28 04 00 00 */ cmplwi r4, 0 +/* 8016390C 0016086C C0 A1 00 A0 */ lfs f5, 0xa0(r1) +/* 80163910 00160870 C0 81 00 A4 */ lfs f4, 0xa4(r1) +/* 80163914 00160874 C0 61 00 A8 */ lfs f3, 0xa8(r1) +/* 80163918 00160878 C0 41 00 AC */ lfs f2, 0xac(r1) +/* 8016391C 0016087C C0 21 00 B0 */ lfs f1, 0xb0(r1) +/* 80163920 00160880 C0 01 00 B4 */ lfs f0, 0xb4(r1) +/* 80163924 00160884 80 01 00 C0 */ lwz r0, 0xc0(r1) +/* 80163928 00160888 80 61 00 C4 */ lwz r3, 0xc4(r1) +/* 8016392C 0016088C D0 E1 01 20 */ stfs f7, 0x120(r1) +/* 80163930 00160890 D0 C1 01 24 */ stfs f6, 0x124(r1) +/* 80163934 00160894 D0 A1 01 28 */ stfs f5, 0x128(r1) +/* 80163938 00160898 D0 81 01 2C */ stfs f4, 0x12c(r1) +/* 8016393C 0016089C D0 61 01 30 */ stfs f3, 0x130(r1) +/* 80163940 001608A0 D0 41 01 34 */ stfs f2, 0x134(r1) +/* 80163944 001608A4 D0 21 01 38 */ stfs f1, 0x138(r1) +/* 80163948 001608A8 D0 01 01 3C */ stfs f0, 0x13c(r1) +/* 8016394C 001608AC 98 81 01 40 */ stb r4, 0x140(r1) +/* 80163950 001608B0 90 61 01 4C */ stw r3, 0x14c(r1) +/* 80163954 001608B4 90 01 01 48 */ stw r0, 0x148(r1) +/* 80163958 001608B8 41 82 02 58 */ beq lbl_80163BB0 +/* 8016395C 001608BC FC 07 F8 40 */ fcmpo cr0, f7, f31 +/* 80163960 001608C0 41 80 00 10 */ blt lbl_80163970 +/* 80163964 001608C4 88 01 01 70 */ lbz r0, 0x170(r1) +/* 80163968 001608C8 28 00 00 00 */ cmplwi r0, 0 +/* 8016396C 001608CC 40 82 00 5C */ bne lbl_801639C8 +lbl_80163970: +/* 80163970 001608D0 80 C1 01 24 */ lwz r6, 0x124(r1) +/* 80163974 001608D4 FF E0 38 90 */ fmr f31, f7 +/* 80163978 001608D8 80 A1 01 28 */ lwz r5, 0x128(r1) +/* 8016397C 001608DC 80 81 01 2C */ lwz r4, 0x12c(r1) +/* 80163980 001608E0 C0 81 01 30 */ lfs f4, 0x130(r1) +/* 80163984 001608E4 C0 61 01 34 */ lfs f3, 0x134(r1) +/* 80163988 001608E8 C0 41 01 38 */ lfs f2, 0x138(r1) +/* 8016398C 001608EC C0 21 01 3C */ lfs f1, 0x13c(r1) +/* 80163990 001608F0 88 61 01 40 */ lbz r3, 0x140(r1) +/* 80163994 001608F4 C8 01 01 48 */ lfd f0, 0x148(r1) +/* 80163998 001608F8 A0 1C 00 08 */ lhz r0, 8(r28) +/* 8016399C 001608FC D0 E1 01 50 */ stfs f7, 0x150(r1) +/* 801639A0 00160900 90 C1 01 54 */ stw r6, 0x154(r1) +/* 801639A4 00160904 90 A1 01 58 */ stw r5, 0x158(r1) +/* 801639A8 00160908 90 81 01 5C */ stw r4, 0x15c(r1) +/* 801639AC 0016090C D0 81 01 60 */ stfs f4, 0x160(r1) +/* 801639B0 00160910 D0 61 01 64 */ stfs f3, 0x164(r1) +/* 801639B4 00160914 D0 41 01 68 */ stfs f2, 0x168(r1) +/* 801639B8 00160918 D0 21 01 6C */ stfs f1, 0x16c(r1) +/* 801639BC 0016091C 98 61 01 70 */ stb r3, 0x170(r1) +/* 801639C0 00160920 D8 01 01 78 */ stfd f0, 0x178(r1) +/* 801639C4 00160924 B0 18 00 00 */ sth r0, 0(r24) +lbl_801639C8: +/* 801639C8 00160928 A0 1D 00 00 */ lhz r0, 0(r29) +/* 801639CC 0016092C 7E E3 BB 78 */ mr r3, r23 +/* 801639D0 00160930 38 81 00 08 */ addi r4, r1, 8 +/* 801639D4 00160934 B0 01 00 08 */ sth r0, 8(r1) +/* 801639D8 00160938 4B EE 8B CD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801639DC 0016093C 7C 64 1B 78 */ mr r4, r3 +/* 801639E0 00160940 38 61 00 10 */ addi r3, r1, 0x10 +/* 801639E4 00160944 4B F4 2E 7D */ bl "__ct__26TCastToPtr<12CScriptWater>FP7CEntity" +/* 801639E8 00160948 83 83 00 04 */ lwz r28, 4(r3) +/* 801639EC 0016094C 28 1C 00 00 */ cmplwi r28, 0 +/* 801639F0 00160950 41 82 01 A8 */ beq lbl_80163B98 +/* 801639F4 00160954 7F 84 E3 78 */ mr r4, r28 +/* 801639F8 00160958 38 61 00 20 */ addi r3, r1, 0x20 +/* 801639FC 0016095C 4B F1 2C D1 */ bl GetTriggerBoundsWR__14CScriptTriggerCFv +/* 80163A00 00160960 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 80163A04 00160964 38 9C 00 68 */ addi r4, r28, 0x68 +/* 80163A08 00160968 48 16 BE AD */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList +/* 80163A0C 0016096C C0 C1 00 20 */ lfs f6, 0x20(r1) +/* 80163A10 00160970 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha +/* 80163A14 00160974 C0 A1 00 24 */ lfs f5, 0x24(r1) +/* 80163A18 00160978 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l +/* 80163A1C 0016097C C0 81 00 28 */ lfs f4, 0x28(r1) +/* 80163A20 00160980 FC 20 F8 90 */ fmr f1, f31 +/* 80163A24 00160984 C0 61 00 2C */ lfs f3, 0x2c(r1) +/* 80163A28 00160988 7F 24 CB 78 */ mr r4, r25 +/* 80163A2C 0016098C C0 41 00 30 */ lfs f2, 0x30(r1) +/* 80163A30 00160990 7F 45 D3 78 */ mr r5, r26 +/* 80163A34 00160994 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 80163A38 00160998 90 01 00 F8 */ stw r0, 0xf8(r1) +/* 80163A3C 0016099C 38 61 01 80 */ addi r3, r1, 0x180 +/* 80163A40 001609A0 D0 C1 01 08 */ stfs f6, 0x108(r1) +/* 80163A44 001609A4 D0 A1 01 0C */ stfs f5, 0x10c(r1) +/* 80163A48 001609A8 D0 81 01 10 */ stfs f4, 0x110(r1) +/* 80163A4C 001609AC D0 61 01 14 */ stfs f3, 0x114(r1) +/* 80163A50 001609B0 D0 41 01 18 */ stfs f2, 0x118(r1) +/* 80163A54 001609B4 D0 01 01 1C */ stfs f0, 0x11c(r1) +/* 80163A58 001609B8 48 17 26 15 */ bl __ct__5CMRayFRC9CVector3fRC9CVector3ff +/* 80163A5C 001609BC 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 80163A60 001609C0 D3 E1 01 B8 */ stfs f31, 0x1b8(r1) +/* 80163A64 001609C4 38 83 66 70 */ addi r4, r3, skIdentity4f@l +/* 80163A68 001609C8 7F C3 F3 78 */ mr r3, r30 +/* 80163A6C 001609CC 48 1A F1 09 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80163A70 001609D0 3C 60 80 5A */ lis r3, lbl_8059FD18@ha +/* 80163A74 001609D4 81 81 00 F8 */ lwz r12, 0xf8(r1) +/* 80163A78 001609D8 38 03 FD 18 */ addi r0, r3, lbl_8059FD18@l +/* 80163A7C 001609DC 38 61 00 38 */ addi r3, r1, 0x38 +/* 80163A80 001609E0 90 01 01 EC */ stw r0, 0x1ec(r1) +/* 80163A84 001609E4 38 81 00 F8 */ addi r4, r1, 0xf8 +/* 80163A88 001609E8 38 A1 01 80 */ addi r5, r1, 0x180 +/* 80163A8C 001609EC 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 80163A90 001609F0 7D 89 03 A6 */ mtctr r12 +/* 80163A94 001609F4 4E 80 04 21 */ bctrl +/* 80163A98 001609F8 88 81 00 58 */ lbz r4, 0x58(r1) +/* 80163A9C 001609FC C0 E1 00 38 */ lfs f7, 0x38(r1) +/* 80163AA0 00160A00 C0 C1 00 3C */ lfs f6, 0x3c(r1) +/* 80163AA4 00160A04 28 04 00 00 */ cmplwi r4, 0 +/* 80163AA8 00160A08 C0 A1 00 40 */ lfs f5, 0x40(r1) +/* 80163AAC 00160A0C C0 81 00 44 */ lfs f4, 0x44(r1) +/* 80163AB0 00160A10 C0 61 00 48 */ lfs f3, 0x48(r1) +/* 80163AB4 00160A14 C0 41 00 4C */ lfs f2, 0x4c(r1) +/* 80163AB8 00160A18 C0 21 00 50 */ lfs f1, 0x50(r1) +/* 80163ABC 00160A1C C0 01 00 54 */ lfs f0, 0x54(r1) +/* 80163AC0 00160A20 80 01 00 60 */ lwz r0, 0x60(r1) +/* 80163AC4 00160A24 80 61 00 64 */ lwz r3, 0x64(r1) +/* 80163AC8 00160A28 D0 E1 00 C8 */ stfs f7, 0xc8(r1) +/* 80163ACC 00160A2C D0 C1 00 CC */ stfs f6, 0xcc(r1) +/* 80163AD0 00160A30 D0 A1 00 D0 */ stfs f5, 0xd0(r1) +/* 80163AD4 00160A34 D0 81 00 D4 */ stfs f4, 0xd4(r1) +/* 80163AD8 00160A38 D0 61 00 D8 */ stfs f3, 0xd8(r1) +/* 80163ADC 00160A3C D0 41 00 DC */ stfs f2, 0xdc(r1) +/* 80163AE0 00160A40 D0 21 00 E0 */ stfs f1, 0xe0(r1) +/* 80163AE4 00160A44 D0 01 00 E4 */ stfs f0, 0xe4(r1) +/* 80163AE8 00160A48 98 81 00 E8 */ stb r4, 0xe8(r1) +/* 80163AEC 00160A4C 90 61 00 F4 */ stw r3, 0xf4(r1) +/* 80163AF0 00160A50 90 01 00 F0 */ stw r0, 0xf0(r1) +/* 80163AF4 00160A54 40 82 00 20 */ bne lbl_80163B14 +/* 80163AF8 00160A58 3C 80 80 3F */ lis r4, lbl_803ECAD0@ha +/* 80163AFC 00160A5C 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 80163B00 00160A60 38 04 CA D0 */ addi r0, r4, lbl_803ECAD0@l +/* 80163B04 00160A64 90 01 00 F8 */ stw r0, 0xf8(r1) +/* 80163B08 00160A68 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l +/* 80163B0C 00160A6C 90 01 00 F8 */ stw r0, 0xf8(r1) +/* 80163B10 00160A70 48 00 00 A0 */ b lbl_80163BB0 +lbl_80163B14: +/* 80163B14 00160A74 FC 07 F8 40 */ fcmpo cr0, f7, f31 +/* 80163B18 00160A78 41 80 00 10 */ blt lbl_80163B28 +/* 80163B1C 00160A7C 88 01 01 70 */ lbz r0, 0x170(r1) +/* 80163B20 00160A80 28 00 00 00 */ cmplwi r0, 0 +/* 80163B24 00160A84 40 82 00 5C */ bne lbl_80163B80 +lbl_80163B28: +/* 80163B28 00160A88 80 C1 00 CC */ lwz r6, 0xcc(r1) +/* 80163B2C 00160A8C FF E0 38 90 */ fmr f31, f7 +/* 80163B30 00160A90 80 A1 00 D0 */ lwz r5, 0xd0(r1) +/* 80163B34 00160A94 80 81 00 D4 */ lwz r4, 0xd4(r1) +/* 80163B38 00160A98 C0 81 00 D8 */ lfs f4, 0xd8(r1) +/* 80163B3C 00160A9C C0 61 00 DC */ lfs f3, 0xdc(r1) +/* 80163B40 00160AA0 C0 41 00 E0 */ lfs f2, 0xe0(r1) +/* 80163B44 00160AA4 C0 21 00 E4 */ lfs f1, 0xe4(r1) +/* 80163B48 00160AA8 88 61 00 E8 */ lbz r3, 0xe8(r1) +/* 80163B4C 00160AAC C8 01 00 F0 */ lfd f0, 0xf0(r1) +/* 80163B50 00160AB0 A0 1C 00 08 */ lhz r0, 8(r28) +/* 80163B54 00160AB4 D0 E1 01 50 */ stfs f7, 0x150(r1) +/* 80163B58 00160AB8 90 C1 01 54 */ stw r6, 0x154(r1) +/* 80163B5C 00160ABC 90 A1 01 58 */ stw r5, 0x158(r1) +/* 80163B60 00160AC0 90 81 01 5C */ stw r4, 0x15c(r1) +/* 80163B64 00160AC4 D0 81 01 60 */ stfs f4, 0x160(r1) +/* 80163B68 00160AC8 D0 61 01 64 */ stfs f3, 0x164(r1) +/* 80163B6C 00160ACC D0 41 01 68 */ stfs f2, 0x168(r1) +/* 80163B70 00160AD0 D0 21 01 6C */ stfs f1, 0x16c(r1) +/* 80163B74 00160AD4 98 61 01 70 */ stb r3, 0x170(r1) +/* 80163B78 00160AD8 D8 01 01 78 */ stfd f0, 0x178(r1) +/* 80163B7C 00160ADC B0 18 00 00 */ sth r0, 0(r24) +lbl_80163B80: +/* 80163B80 00160AE0 3C 80 80 3F */ lis r4, lbl_803ECAD0@ha +/* 80163B84 00160AE4 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 80163B88 00160AE8 38 04 CA D0 */ addi r0, r4, lbl_803ECAD0@l +/* 80163B8C 00160AEC 90 01 00 F8 */ stw r0, 0xf8(r1) +/* 80163B90 00160AF0 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l +/* 80163B94 00160AF4 90 01 00 F8 */ stw r0, 0xf8(r1) +lbl_80163B98: +/* 80163B98 00160AF8 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 80163B9C 00160AFC C0 02 9F 90 */ lfs f0, lbl_805ABCB0@sda21(r2) +/* 80163BA0 00160B00 EC 3F 08 28 */ fsubs f1, f31, f1 +/* 80163BA4 00160B04 FC 20 0A 10 */ fabs f1, f1 +/* 80163BA8 00160B08 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80163BAC 00160B0C 41 80 00 20 */ blt lbl_80163BCC +lbl_80163BB0: +/* 80163BB0 00160B10 3B BD 00 02 */ addi r29, r29, 2 +lbl_80163BB4: +/* 80163BB4 00160B14 80 1B 00 00 */ lwz r0, 0(r27) +/* 80163BB8 00160B18 54 00 08 3C */ slwi r0, r0, 1 +/* 80163BBC 00160B1C 7C 7B 02 14 */ add r3, r27, r0 +/* 80163BC0 00160B20 38 03 00 04 */ addi r0, r3, 4 +/* 80163BC4 00160B24 7C 1D 00 40 */ cmplw r29, r0 +/* 80163BC8 00160B28 40 82 FC 8C */ bne lbl_80163854 +lbl_80163BCC: +/* 80163BCC 00160B2C C0 21 01 50 */ lfs f1, 0x150(r1) +/* 80163BD0 00160B30 C0 01 01 54 */ lfs f0, 0x154(r1) +/* 80163BD4 00160B34 D0 36 00 00 */ stfs f1, 0(r22) +/* 80163BD8 00160B38 C0 21 01 58 */ lfs f1, 0x158(r1) +/* 80163BDC 00160B3C D0 16 00 04 */ stfs f0, 4(r22) +/* 80163BE0 00160B40 C0 01 01 5C */ lfs f0, 0x15c(r1) +/* 80163BE4 00160B44 D0 36 00 08 */ stfs f1, 8(r22) +/* 80163BE8 00160B48 C0 21 01 60 */ lfs f1, 0x160(r1) +/* 80163BEC 00160B4C D0 16 00 0C */ stfs f0, 0xc(r22) +/* 80163BF0 00160B50 C0 01 01 64 */ lfs f0, 0x164(r1) +/* 80163BF4 00160B54 D0 36 00 10 */ stfs f1, 0x10(r22) +/* 80163BF8 00160B58 C0 21 01 68 */ lfs f1, 0x168(r1) +/* 80163BFC 00160B5C D0 16 00 14 */ stfs f0, 0x14(r22) +/* 80163C00 00160B60 C0 01 01 6C */ lfs f0, 0x16c(r1) +/* 80163C04 00160B64 D0 36 00 18 */ stfs f1, 0x18(r22) +/* 80163C08 00160B68 88 01 01 70 */ lbz r0, 0x170(r1) +/* 80163C0C 00160B6C D0 16 00 1C */ stfs f0, 0x1c(r22) +/* 80163C10 00160B70 80 61 01 7C */ lwz r3, 0x17c(r1) +/* 80163C14 00160B74 98 16 00 20 */ stb r0, 0x20(r22) +/* 80163C18 00160B78 80 01 01 78 */ lwz r0, 0x178(r1) +/* 80163C1C 00160B7C 90 76 00 2C */ stw r3, 0x2c(r22) +/* 80163C20 00160B80 90 16 00 28 */ stw r0, 0x28(r22) +/* 80163C24 00160B84 E3 E1 02 98 */ psq_l f31, 664(r1), 0, qr0 +/* 80163C28 00160B88 CB E1 02 90 */ lfd f31, 0x290(r1) +/* 80163C2C 00160B8C BA A1 02 64 */ lmw r21, 0x264(r1) +/* 80163C30 00160B90 80 01 02 A4 */ lwz r0, 0x2a4(r1) +/* 80163C34 00160B94 7C 08 03 A6 */ mtlr r0 +/* 80163C38 00160B98 38 21 02 A0 */ addi r1, r1, 0x2a0 +/* 80163C3C 00160B9C 4E 80 00 20 */ blr + +.global sub_80163c40 +sub_80163c40: +/* 80163C40 00160BA0 94 21 F5 70 */ stwu r1, -0xa90(r1) +/* 80163C44 00160BA4 7C 08 02 A6 */ mflr r0 +/* 80163C48 00160BA8 90 01 0A 94 */ stw r0, 0xa94(r1) +/* 80163C4C 00160BAC DB E1 0A 80 */ stfd f31, 0xa80(r1) +/* 80163C50 00160BB0 F3 E1 0A 88 */ psq_st f31, -1400(r1), 0, qr0 +/* 80163C54 00160BB4 DB C1 0A 70 */ stfd f30, 0xa70(r1) +/* 80163C58 00160BB8 F3 C1 0A 78 */ psq_st f30, -1416(r1), 0, qr0 +/* 80163C5C 00160BBC BE 81 0A 40 */ stmw r20, 0xa40(r1) +/* 80163C60 00160BC0 88 0D A4 22 */ lbz r0, lbl_805A8FE2@sda21(r13) +/* 80163C64 00160BC4 FF C0 08 90 */ fmr f30, f1 +/* 80163C68 00160BC8 7C 7E 1B 78 */ mr r30, r3 +/* 80163C6C 00160BCC 7C 9F 23 78 */ mr r31, r4 +/* 80163C70 00160BD0 7C 00 07 75 */ extsb. r0, r0 +/* 80163C74 00160BD4 40 82 00 58 */ bne lbl_80163CCC +/* 80163C78 00160BD8 80 AD 8D 48 */ lwz r5, lbl_805A7908@sda21(r13) +/* 80163C7C 00160BDC 38 60 00 00 */ li r3, 0 +/* 80163C80 00160BE0 38 80 00 01 */ li r4, 1 +/* 80163C84 00160BE4 48 22 62 71 */ bl __shl2i +/* 80163C88 00160BE8 80 AD 8D 44 */ lwz r5, lbl_805A7904@sda21(r13) +/* 80163C8C 00160BEC 7C 95 23 78 */ mr r21, r4 +/* 80163C90 00160BF0 7C 74 1B 78 */ mr r20, r3 +/* 80163C94 00160BF4 38 60 00 00 */ li r3, 0 +/* 80163C98 00160BF8 38 80 00 01 */ li r4, 1 +/* 80163C9C 00160BFC 48 22 62 59 */ bl __shl2i +/* 80163CA0 00160C00 3C A0 80 47 */ lis r5, lbl_8046C878@ha +/* 80163CA4 00160C04 38 C0 00 03 */ li r6, 3 +/* 80163CA8 00160C08 38 A5 C8 78 */ addi r5, r5, lbl_8046C878@l +/* 80163CAC 00160C0C 38 00 00 01 */ li r0, 1 +/* 80163CB0 00160C10 90 C1 01 58 */ stw r6, 0x158(r1) +/* 80163CB4 00160C14 90 85 00 04 */ stw r4, 4(r5) +/* 80163CB8 00160C18 90 65 00 00 */ stw r3, 0(r5) +/* 80163CBC 00160C1C 92 A5 00 0C */ stw r21, 0xc(r5) +/* 80163CC0 00160C20 92 85 00 08 */ stw r20, 8(r5) +/* 80163CC4 00160C24 90 C5 00 10 */ stw r6, 0x10(r5) +/* 80163CC8 00160C28 98 0D A4 22 */ stb r0, lbl_805A8FE2@sda21(r13) +lbl_80163CCC: +/* 80163CCC 00160C2C 80 8D 8C F4 */ lwz r4, lbl_805A78B4@sda21(r13) +/* 80163CD0 00160C30 38 61 00 D4 */ addi r3, r1, 0xd4 +/* 80163CD4 00160C34 4B EA 0F E5 */ bl string_l__4rstlFPCc +/* 80163CD8 00160C38 7F C4 F3 78 */ mr r4, r30 +/* 80163CDC 00160C3C 38 61 01 A8 */ addi r3, r1, 0x1a8 +/* 80163CE0 00160C40 38 A1 00 D4 */ addi r5, r1, 0xd4 +/* 80163CE4 00160C44 4B F1 4C 95 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80163CE8 00160C48 38 61 02 08 */ addi r3, r1, 0x208 +/* 80163CEC 00160C4C 38 81 01 A8 */ addi r4, r1, 0x1a8 +/* 80163CF0 00160C50 48 1A EE 85 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80163CF4 00160C54 38 61 00 D4 */ addi r3, r1, 0xd4 +/* 80163CF8 00160C58 48 1D 9D E9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80163CFC 00160C5C 3C 60 80 5A */ lis r3, lbl_805A6754@ha +/* 80163D00 00160C60 C3 E2 9F 7C */ lfs f31, lbl_805ABC9C@sda21(r2) +/* 80163D04 00160C64 3B 9E 08 1C */ addi r28, r30, 0x81c +/* 80163D08 00160C68 3A FE 08 28 */ addi r23, r30, 0x828 +/* 80163D0C 00160C6C 3B 7E 08 00 */ addi r27, r30, 0x800 +/* 80163D10 00160C70 3B 5E 07 E4 */ addi r26, r30, 0x7e4 +/* 80163D14 00160C74 3B 3E 07 DC */ addi r25, r30, 0x7dc +/* 80163D18 00160C78 3B A3 67 54 */ addi r29, r3, lbl_805A6754@l +/* 80163D1C 00160C7C 3A C1 01 DC */ addi r22, r1, 0x1dc +/* 80163D20 00160C80 3A A1 01 E8 */ addi r21, r1, 0x1e8 +/* 80163D24 00160C84 3B 00 00 00 */ li r24, 0 +/* 80163D28 00160C88 48 00 05 0C */ b lbl_80164234 +lbl_80163D2C: +/* 80163D2C 00160C8C C0 1C 00 00 */ lfs f0, 0(r28) +/* 80163D30 00160C90 FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 80163D34 00160C94 40 80 04 E8 */ bge lbl_8016421C +/* 80163D38 00160C98 88 17 00 00 */ lbz r0, 0(r23) +/* 80163D3C 00160C9C 28 00 00 00 */ cmplwi r0, 0 +/* 80163D40 00160CA0 41 82 04 DC */ beq lbl_8016421C +/* 80163D44 00160CA4 EC 00 F0 2A */ fadds f0, f0, f30 +/* 80163D48 00160CA8 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 80163D4C 00160CAC 38 81 00 BC */ addi r4, r1, 0xbc +/* 80163D50 00160CB0 D0 1C 00 00 */ stfs f0, 0(r28) +/* 80163D54 00160CB4 C1 1C 00 00 */ lfs f8, 0(r28) +/* 80163D58 00160CB8 C0 5B 00 04 */ lfs f2, 4(r27) +/* 80163D5C 00160CBC C0 3B 00 08 */ lfs f1, 8(r27) +/* 80163D60 00160CC0 EC FF 40 28 */ fsubs f7, f31, f8 +/* 80163D64 00160CC4 C0 1B 00 00 */ lfs f0, 0(r27) +/* 80163D68 00160CC8 EC A2 02 32 */ fmuls f5, f2, f8 +/* 80163D6C 00160CCC C0 DA 00 04 */ lfs f6, 4(r26) +/* 80163D70 00160CD0 EC 61 02 32 */ fmuls f3, f1, f8 +/* 80163D74 00160CD4 C0 9A 00 08 */ lfs f4, 8(r26) +/* 80163D78 00160CD8 EC 20 02 32 */ fmuls f1, f0, f8 +/* 80163D7C 00160CDC C0 5A 00 00 */ lfs f2, 0(r26) +/* 80163D80 00160CE0 EC A6 29 FA */ fmadds f5, f6, f7, f5 +/* 80163D84 00160CE4 C0 01 02 24 */ lfs f0, 0x224(r1) +/* 80163D88 00160CE8 EC 84 19 FA */ fmadds f4, f4, f7, f3 +/* 80163D8C 00160CEC C0 61 02 34 */ lfs f3, 0x234(r1) +/* 80163D90 00160CF0 EC A5 00 28 */ fsubs f5, f5, f0 +/* 80163D94 00160CF4 C0 01 02 14 */ lfs f0, 0x214(r1) +/* 80163D98 00160CF8 EC 22 09 FA */ fmadds f1, f2, f7, f1 +/* 80163D9C 00160CFC EC 44 18 28 */ fsubs f2, f4, f3 +/* 80163DA0 00160D00 D0 A1 00 C0 */ stfs f5, 0xc0(r1) +/* 80163DA4 00160D04 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80163DA8 00160D08 D0 41 00 C4 */ stfs f2, 0xc4(r1) +/* 80163DAC 00160D0C D0 01 00 BC */ stfs f0, 0xbc(r1) +/* 80163DB0 00160D10 48 1B 0A A1 */ bl AsNormalized__9CVector3fCFv +/* 80163DB4 00160D14 3C 60 80 5A */ lis r3, lbl_805A6754@ha +/* 80163DB8 00160D18 C1 21 00 C8 */ lfs f9, 0xc8(r1) +/* 80163DBC 00160D1C 38 A3 67 54 */ addi r5, r3, lbl_805A6754@l +/* 80163DC0 00160D20 C1 01 00 CC */ lfs f8, 0xcc(r1) +/* 80163DC4 00160D24 C0 E1 00 D0 */ lfs f7, 0xd0(r1) +/* 80163DC8 00160D28 38 61 01 60 */ addi r3, r1, 0x160 +/* 80163DCC 00160D2C C0 02 9F E4 */ lfs f0, lbl_805ABD04@sda21(r2) +/* 80163DD0 00160D30 38 81 00 B0 */ addi r4, r1, 0xb0 +/* 80163DD4 00160D34 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80163DD8 00160D38 C0 C5 00 00 */ lfs f6, 0(r5) +/* 80163DDC 00160D3C ED 60 02 32 */ fmuls f11, f0, f8 +/* 80163DE0 00160D40 C0 BD 00 04 */ lfs f5, 4(r29) +/* 80163DE4 00160D44 ED 40 01 F2 */ fmuls f10, f0, f7 +/* 80163DE8 00160D48 C0 9D 00 08 */ lfs f4, 8(r29) +/* 80163DEC 00160D4C EC 00 02 72 */ fmuls f0, f0, f9 +/* 80163DF0 00160D50 C0 7D 00 0C */ lfs f3, 0xc(r29) +/* 80163DF4 00160D54 C0 5D 00 10 */ lfs f2, 0x10(r29) +/* 80163DF8 00160D58 C0 3D 00 14 */ lfs f1, 0x14(r29) +/* 80163DFC 00160D5C D1 21 00 E4 */ stfs f9, 0xe4(r1) +/* 80163E00 00160D60 D1 01 00 E8 */ stfs f8, 0xe8(r1) +/* 80163E04 00160D64 D0 E1 00 EC */ stfs f7, 0xec(r1) +/* 80163E08 00160D68 B0 01 00 34 */ sth r0, 0x34(r1) +/* 80163E0C 00160D6C D0 C1 01 60 */ stfs f6, 0x160(r1) +/* 80163E10 00160D70 D0 A1 01 64 */ stfs f5, 0x164(r1) +/* 80163E14 00160D74 D0 81 01 68 */ stfs f4, 0x168(r1) +/* 80163E18 00160D78 D0 61 01 6C */ stfs f3, 0x16c(r1) +/* 80163E1C 00160D7C D0 41 01 70 */ stfs f2, 0x170(r1) +/* 80163E20 00160D80 D0 21 01 74 */ stfs f1, 0x174(r1) +/* 80163E24 00160D84 C0 BE 00 60 */ lfs f5, 0x60(r30) +/* 80163E28 00160D88 C0 9E 00 50 */ lfs f4, 0x50(r30) +/* 80163E2C 00160D8C C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 80163E30 00160D90 EC 45 50 2A */ fadds f2, f5, f10 +/* 80163E34 00160D94 EC 64 58 2A */ fadds f3, f4, f11 +/* 80163E38 00160D98 D0 01 00 98 */ stfs f0, 0x98(r1) +/* 80163E3C 00160D9C EC 01 00 2A */ fadds f0, f1, f0 +/* 80163E40 00160DA0 D1 61 00 9C */ stfs f11, 0x9c(r1) +/* 80163E44 00160DA4 D1 41 00 A0 */ stfs f10, 0xa0(r1) +/* 80163E48 00160DA8 D0 21 00 A4 */ stfs f1, 0xa4(r1) +/* 80163E4C 00160DAC D0 81 00 A8 */ stfs f4, 0xa8(r1) +/* 80163E50 00160DB0 D0 A1 00 AC */ stfs f5, 0xac(r1) +/* 80163E54 00160DB4 D0 01 00 B0 */ stfs f0, 0xb0(r1) +/* 80163E58 00160DB8 D0 61 00 B4 */ stfs f3, 0xb4(r1) +/* 80163E5C 00160DBC D0 41 00 B8 */ stfs f2, 0xb8(r1) +/* 80163E60 00160DC0 48 1D 3C A9 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 80163E64 00160DC4 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 80163E68 00160DC8 38 61 01 60 */ addi r3, r1, 0x160 +/* 80163E6C 00160DCC C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 80163E70 00160DD0 38 81 00 8C */ addi r4, r1, 0x8c +/* 80163E74 00160DD4 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 80163E78 00160DD8 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 80163E7C 00160DDC D0 21 00 90 */ stfs f1, 0x90(r1) +/* 80163E80 00160DE0 D0 41 00 94 */ stfs f2, 0x94(r1) +/* 80163E84 00160DE4 48 1D 3C 85 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 80163E88 00160DE8 38 00 00 00 */ li r0, 0 +/* 80163E8C 00160DEC 3C 60 80 47 */ lis r3, lbl_8046C878@ha +/* 80163E90 00160DF0 90 01 02 38 */ stw r0, 0x238(r1) +/* 80163E94 00160DF4 38 C3 C8 78 */ addi r6, r3, lbl_8046C878@l +/* 80163E98 00160DF8 7F E3 FB 78 */ mr r3, r31 +/* 80163E9C 00160DFC 38 81 02 38 */ addi r4, r1, 0x238 +/* 80163EA0 00160E00 38 A1 01 60 */ addi r5, r1, 0x160 +/* 80163EA4 00160E04 38 E0 00 00 */ li r7, 0 +/* 80163EA8 00160E08 4B EE 88 79 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 80163EAC 00160E0C C0 82 9F E8 */ lfs f4, lbl_805ABD08@sda21(r2) +/* 80163EB0 00160E10 3C 60 80 47 */ lis r3, lbl_8046C878@ha +/* 80163EB4 00160E14 C0 41 00 E8 */ lfs f2, 0xe8(r1) +/* 80163EB8 00160E18 39 03 C8 78 */ addi r8, r3, lbl_8046C878@l +/* 80163EBC 00160E1C C0 21 00 EC */ lfs f1, 0xec(r1) +/* 80163EC0 00160E20 7F E4 FB 78 */ mr r4, r31 +/* 80163EC4 00160E24 EC E4 00 B2 */ fmuls f7, f4, f2 +/* 80163EC8 00160E28 C0 61 02 24 */ lfs f3, 0x224(r1) +/* 80163ECC 00160E2C EC C4 00 72 */ fmuls f6, f4, f1 +/* 80163ED0 00160E30 C0 01 00 E4 */ lfs f0, 0xe4(r1) +/* 80163ED4 00160E34 C0 41 02 34 */ lfs f2, 0x234(r1) +/* 80163ED8 00160E38 38 61 01 78 */ addi r3, r1, 0x178 +/* 80163EDC 00160E3C EC A4 00 32 */ fmuls f5, f4, f0 +/* 80163EE0 00160E40 C0 81 02 14 */ lfs f4, 0x214(r1) +/* 80163EE4 00160E44 ED 03 38 2A */ fadds f8, f3, f7 +/* 80163EE8 00160E48 D0 E1 00 6C */ stfs f7, 0x6c(r1) +/* 80163EEC 00160E4C EC E2 30 2A */ fadds f7, f2, f6 +/* 80163EF0 00160E50 C0 22 9F EC */ lfs f1, lbl_805ABD0C@sda21(r2) +/* 80163EF4 00160E54 EC 04 28 2A */ fadds f0, f4, f5 +/* 80163EF8 00160E58 D0 A1 00 68 */ stfs f5, 0x68(r1) +/* 80163EFC 00160E5C 38 A1 00 34 */ addi r5, r1, 0x34 +/* 80163F00 00160E60 38 C1 00 80 */ addi r6, r1, 0x80 +/* 80163F04 00160E64 D0 C1 00 70 */ stfs f6, 0x70(r1) +/* 80163F08 00160E68 38 E1 00 E4 */ addi r7, r1, 0xe4 +/* 80163F0C 00160E6C D0 81 00 74 */ stfs f4, 0x74(r1) +/* 80163F10 00160E70 39 21 02 38 */ addi r9, r1, 0x238 +/* 80163F14 00160E74 D0 61 00 78 */ stfs f3, 0x78(r1) +/* 80163F18 00160E78 D0 41 00 7C */ stfs f2, 0x7c(r1) +/* 80163F1C 00160E7C D0 01 00 80 */ stfs f0, 0x80(r1) +/* 80163F20 00160E80 D1 01 00 84 */ stfs f8, 0x84(r1) +/* 80163F24 00160E84 D0 E1 00 88 */ stfs f7, 0x88(r1) +/* 80163F28 00160E88 4B EE 90 9D */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 80163F2C 00160E8C 88 81 01 98 */ lbz r4, 0x198(r1) +/* 80163F30 00160E90 C0 E1 01 78 */ lfs f7, 0x178(r1) +/* 80163F34 00160E94 C0 C1 01 7C */ lfs f6, 0x17c(r1) +/* 80163F38 00160E98 28 04 00 00 */ cmplwi r4, 0 +/* 80163F3C 00160E9C C0 A1 01 80 */ lfs f5, 0x180(r1) +/* 80163F40 00160EA0 C0 81 01 84 */ lfs f4, 0x184(r1) +/* 80163F44 00160EA4 C0 61 01 88 */ lfs f3, 0x188(r1) +/* 80163F48 00160EA8 C0 41 01 8C */ lfs f2, 0x18c(r1) +/* 80163F4C 00160EAC C0 21 01 90 */ lfs f1, 0x190(r1) +/* 80163F50 00160EB0 C0 01 01 94 */ lfs f0, 0x194(r1) +/* 80163F54 00160EB4 80 01 01 A0 */ lwz r0, 0x1a0(r1) +/* 80163F58 00160EB8 80 61 01 A4 */ lwz r3, 0x1a4(r1) +/* 80163F5C 00160EBC D0 E1 01 D8 */ stfs f7, 0x1d8(r1) +/* 80163F60 00160EC0 D0 C1 01 DC */ stfs f6, 0x1dc(r1) +/* 80163F64 00160EC4 D0 A1 01 E0 */ stfs f5, 0x1e0(r1) +/* 80163F68 00160EC8 D0 81 01 E4 */ stfs f4, 0x1e4(r1) +/* 80163F6C 00160ECC D0 61 01 E8 */ stfs f3, 0x1e8(r1) +/* 80163F70 00160ED0 D0 41 01 EC */ stfs f2, 0x1ec(r1) +/* 80163F74 00160ED4 D0 21 01 F0 */ stfs f1, 0x1f0(r1) +/* 80163F78 00160ED8 D0 01 01 F4 */ stfs f0, 0x1f4(r1) +/* 80163F7C 00160EDC 98 81 01 F8 */ stb r4, 0x1f8(r1) +/* 80163F80 00160EE0 90 61 02 04 */ stw r3, 0x204(r1) +/* 80163F84 00160EE4 90 01 02 00 */ stw r0, 0x200(r1) +/* 80163F88 00160EE8 41 82 02 3C */ beq lbl_801641C4 +/* 80163F8C 00160EEC A0 79 00 00 */ lhz r3, 0(r25) +/* 80163F90 00160EF0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80163F94 00160EF4 7C 03 00 40 */ cmplw r3, r0 +/* 80163F98 00160EF8 41 82 00 68 */ beq lbl_80164000 +/* 80163F9C 00160EFC A0 19 00 00 */ lhz r0, 0(r25) +/* 80163FA0 00160F00 7F E3 FB 78 */ mr r3, r31 +/* 80163FA4 00160F04 38 81 00 30 */ addi r4, r1, 0x30 +/* 80163FA8 00160F08 B0 01 00 30 */ sth r0, 0x30(r1) +/* 80163FAC 00160F0C 4B EE 85 C9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80163FB0 00160F10 7C 74 1B 79 */ or. r20, r3, r3 +/* 80163FB4 00160F14 41 82 00 4C */ beq lbl_80164000 +/* 80163FB8 00160F18 38 74 00 34 */ addi r3, r20, 0x34 +/* 80163FBC 00160F1C 38 81 02 08 */ addi r4, r1, 0x208 +/* 80163FC0 00160F20 48 1A EB 81 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80163FC4 00160F24 88 14 00 E4 */ lbz r0, 0xe4(r20) +/* 80163FC8 00160F28 38 E0 00 01 */ li r7, 1 +/* 80163FCC 00160F2C 50 E0 26 F6 */ rlwimi r0, r7, 4, 0x1b, 0x1b +/* 80163FD0 00160F30 7E 83 A3 78 */ mr r3, r20 +/* 80163FD4 00160F34 98 14 00 E4 */ stb r0, 0xe4(r20) +/* 80163FD8 00160F38 7F E4 FB 78 */ mr r4, r31 +/* 80163FDC 00160F3C 7E C5 B3 78 */ mr r5, r22 +/* 80163FE0 00160F40 7E A6 AB 78 */ mr r6, r21 +/* 80163FE4 00160F44 88 14 00 E4 */ lbz r0, 0xe4(r20) +/* 80163FE8 00160F48 50 E0 1F 38 */ rlwimi r0, r7, 3, 0x1c, 0x1c +/* 80163FEC 00160F4C 98 14 00 E4 */ stb r0, 0xe4(r20) +/* 80163FF0 00160F50 88 14 00 E4 */ lbz r0, 0xe4(r20) +/* 80163FF4 00160F54 50 E0 17 7A */ rlwimi r0, r7, 2, 0x1d, 0x1d +/* 80163FF8 00160F58 98 14 00 E4 */ stb r0, 0xe4(r20) +/* 80163FFC 00160F5C 48 00 37 59 */ bl sub_80167754 +lbl_80164000: +/* 80164000 00160F60 A0 01 00 34 */ lhz r0, 0x34(r1) +/* 80164004 00160F64 7F E3 FB 78 */ mr r3, r31 +/* 80164008 00160F68 38 81 00 2C */ addi r4, r1, 0x2c +/* 8016400C 00160F6C B0 01 00 2C */ sth r0, 0x2c(r1) +/* 80164010 00160F70 4B EE 85 65 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80164014 00160F74 7C 64 1B 78 */ mr r4, r3 +/* 80164018 00160F78 38 61 00 44 */ addi r3, r1, 0x44 +/* 8016401C 00160F7C 4B F4 83 79 */ bl "__ct__20TCastToPtr<7CPlayer>FP7CEntity" +/* 80164020 00160F80 82 83 00 04 */ lwz r20, 4(r3) +/* 80164024 00160F84 28 14 00 00 */ cmplwi r20, 0 +/* 80164028 00160F88 41 82 01 10 */ beq lbl_80164138 +/* 8016402C 00160F8C C0 3E 04 20 */ lfs f1, 0x420(r30) +/* 80164030 00160F90 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 80164034 00160F94 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80164038 00160F98 4C 40 13 82 */ cror 2, 0, 2 +/* 8016403C 00160F9C 40 82 00 FC */ bne lbl_80164138 +/* 80164040 00160FA0 80 AD 8C F0 */ lwz r5, lbl_805A78B0@sda21(r13) +/* 80164044 00160FA4 38 60 00 00 */ li r3, 0 +/* 80164048 00160FA8 38 80 00 01 */ li r4, 1 +/* 8016404C 00160FAC 48 22 5E A9 */ bl __shl2i +/* 80164050 00160FB0 38 A0 00 00 */ li r5, 0 +/* 80164054 00160FB4 38 00 00 03 */ li r0, 3 +/* 80164058 00160FB8 90 81 01 14 */ stw r4, 0x114(r1) +/* 8016405C 00160FBC 7F C4 F3 78 */ mr r4, r30 +/* 80164060 00160FC0 90 61 01 10 */ stw r3, 0x110(r1) +/* 80164064 00160FC4 38 61 01 28 */ addi r3, r1, 0x128 +/* 80164068 00160FC8 90 A1 01 1C */ stw r5, 0x11c(r1) +/* 8016406C 00160FCC 90 A1 01 18 */ stw r5, 0x118(r1) +/* 80164070 00160FD0 90 01 01 20 */ stw r0, 0x120(r1) +/* 80164074 00160FD4 A0 1E 00 08 */ lhz r0, 8(r30) +/* 80164078 00160FD8 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8016407C 00160FDC A0 B4 00 08 */ lhz r5, 8(r20) +/* 80164080 00160FE0 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80164084 00160FE4 B0 A1 00 20 */ sth r5, 0x20(r1) +/* 80164088 00160FE8 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8016408C 00160FEC B0 A1 00 1C */ sth r5, 0x1c(r1) +/* 80164090 00160FF0 B0 01 00 28 */ sth r0, 0x28(r1) +/* 80164094 00160FF4 81 9E 00 00 */ lwz r12, 0(r30) +/* 80164098 00160FF8 B0 01 00 24 */ sth r0, 0x24(r1) +/* 8016409C 00160FFC 81 8C 02 B0 */ lwz r12, 0x2b0(r12) +/* 801640A0 00161000 7D 89 03 A6 */ mtctr r12 +/* 801640A4 00161004 4E 80 04 21 */ bctrl +/* 801640A8 00161008 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801640AC 0016100C 7F E3 FB 78 */ mr r3, r31 +/* 801640B0 00161010 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 801640B4 00161014 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801640B8 00161018 38 81 00 28 */ addi r4, r1, 0x28 +/* 801640BC 0016101C 38 C1 00 18 */ addi r6, r1, 0x18 +/* 801640C0 00161020 38 E1 01 28 */ addi r7, r1, 0x128 +/* 801640C4 00161024 39 01 01 10 */ addi r8, r1, 0x110 +/* 801640C8 00161028 4B EE 5F D9 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 801640CC 0016102C C0 1E 04 24 */ lfs f0, 0x424(r30) +/* 801640D0 00161030 38 81 00 10 */ addi r4, r1, 0x10 +/* 801640D4 00161034 C0 22 9F F0 */ lfs f1, lbl_805ABD10@sda21(r2) +/* 801640D8 00161038 D0 1E 04 20 */ stfs f0, 0x420(r30) +/* 801640DC 0016103C C0 42 9F 7C */ lfs f2, lbl_805ABC9C@sda21(r2) +/* 801640E0 00161040 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801640E4 00161044 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801640E8 00161048 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 801640EC 0016104C B0 01 00 0C */ sth r0, 0xc(r1) +/* 801640F0 00161050 80 63 00 00 */ lwz r3, 0(r3) +/* 801640F4 00161054 38 63 01 88 */ addi r3, r3, 0x188 +/* 801640F8 00161058 48 05 CA 41 */ bl AddSource__19CStaticInterferenceF9TUniqueId +/* 801640FC 0016105C C0 22 9F 80 */ lfs f1, lbl_805ABCA0@sda21(r2) +/* 80164100 00161060 7E C5 B3 78 */ mr r5, r22 +/* 80164104 00161064 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 80164108 00161068 38 61 00 38 */ addi r3, r1, 0x38 +/* 8016410C 0016106C D0 3E 06 28 */ stfs f1, 0x628(r30) +/* 80164110 00161070 38 C1 00 5C */ addi r6, r1, 0x5c +/* 80164114 00161074 A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 80164118 00161078 38 E0 00 01 */ li r7, 1 +/* 8016411C 0016107C 81 5E 00 04 */ lwz r10, 4(r30) +/* 80164120 00161080 39 00 00 00 */ li r8, 0 +/* 80164124 00161084 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 80164128 00161088 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 8016412C 0016108C D0 01 00 64 */ stfs f0, 0x64(r1) +/* 80164130 00161090 A0 9E 07 CC */ lhz r4, 0x7cc(r30) +/* 80164134 00161094 48 18 61 7D */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +lbl_80164138: +/* 80164138 00161098 A0 61 00 34 */ lhz r3, 0x34(r1) +/* 8016413C 0016109C A0 1E 00 08 */ lhz r0, 8(r30) +/* 80164140 001610A0 7C 03 00 40 */ cmplw r3, r0 +/* 80164144 001610A4 41 82 00 80 */ beq lbl_801641C4 +/* 80164148 001610A8 A0 01 00 34 */ lhz r0, 0x34(r1) +/* 8016414C 001610AC 7F E3 FB 78 */ mr r3, r31 +/* 80164150 001610B0 38 81 00 08 */ addi r4, r1, 8 +/* 80164154 001610B4 B0 01 00 08 */ sth r0, 8(r1) +/* 80164158 001610B8 4B EE 84 1D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8016415C 001610BC 7C 64 1B 78 */ mr r4, r3 +/* 80164160 001610C0 38 61 00 3C */ addi r3, r1, 0x3c +/* 80164164 001610C4 4B F4 88 F9 */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" +/* 80164168 001610C8 80 03 00 04 */ lwz r0, 4(r3) +/* 8016416C 001610CC 28 00 00 00 */ cmplwi r0, 0 +/* 80164170 001610D0 41 82 00 54 */ beq lbl_801641C4 +/* 80164174 001610D4 88 1E 08 34 */ lbz r0, 0x834(r30) +/* 80164178 001610D8 38 60 00 01 */ li r3, 1 +/* 8016417C 001610DC 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 80164180 001610E0 3C 60 80 3D */ lis r3, lbl_803D0398@ha +/* 80164184 001610E4 38 83 03 98 */ addi r4, r3, lbl_803D0398@l +/* 80164188 001610E8 98 1E 08 34 */ stb r0, 0x834(r30) +/* 8016418C 001610EC 38 61 00 4C */ addi r3, r1, 0x4c +/* 80164190 001610F0 38 84 00 42 */ addi r4, r4, 0x42 +/* 80164194 001610F4 4B EA 0B 25 */ bl string_l__4rstlFPCc +/* 80164198 001610F8 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 8016419C 001610FC 38 81 00 4C */ addi r4, r1, 0x4c +/* 801641A0 00161100 80 63 00 10 */ lwz r3, 0x10(r3) +/* 801641A4 00161104 4B EC 82 C9 */ bl "GetAnimTimeRemaining__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801641A8 00161108 7F C4 F3 78 */ mr r4, r30 +/* 801641AC 0016110C 7F E5 FB 78 */ mr r5, r31 +/* 801641B0 00161110 38 61 00 F0 */ addi r3, r1, 0xf0 +/* 801641B4 00161114 38 C0 00 01 */ li r6, 1 +/* 801641B8 00161118 4B EF 10 E5 */ bl UpdateAnimation__6CActorFfR13CStateManagerb +/* 801641BC 0016111C 38 61 00 4C */ addi r3, r1, 0x4c +/* 801641C0 00161120 48 1D 99 21 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801641C4: +/* 801641C4 00161124 80 A1 02 38 */ lwz r5, 0x238(r1) +/* 801641C8 00161128 38 60 00 00 */ li r3, 0 +/* 801641CC 0016112C 2C 05 00 00 */ cmpwi r5, 0 +/* 801641D0 00161130 40 81 00 44 */ ble lbl_80164214 +/* 801641D4 00161134 2C 05 00 08 */ cmpwi r5, 8 +/* 801641D8 00161138 38 85 FF F8 */ addi r4, r5, -8 +/* 801641DC 0016113C 40 81 00 20 */ ble lbl_801641FC +/* 801641E0 00161140 38 04 00 07 */ addi r0, r4, 7 +/* 801641E4 00161144 54 00 E8 FE */ srwi r0, r0, 3 +/* 801641E8 00161148 7C 09 03 A6 */ mtctr r0 +/* 801641EC 0016114C 2C 04 00 00 */ cmpwi r4, 0 +/* 801641F0 00161150 40 81 00 0C */ ble lbl_801641FC +lbl_801641F4: +/* 801641F4 00161154 38 63 00 08 */ addi r3, r3, 8 +/* 801641F8 00161158 42 00 FF FC */ bdnz lbl_801641F4 +lbl_801641FC: +/* 801641FC 0016115C 7C 03 28 50 */ subf r0, r3, r5 +/* 80164200 00161160 7C 09 03 A6 */ mtctr r0 +/* 80164204 00161164 7C 03 28 00 */ cmpw r3, r5 +/* 80164208 00161168 40 80 00 0C */ bge lbl_80164214 +lbl_8016420C: +/* 8016420C 0016116C 38 63 00 01 */ addi r3, r3, 1 +/* 80164210 00161170 42 00 FF FC */ bdnz lbl_8016420C +lbl_80164214: +/* 80164214 00161174 38 00 00 00 */ li r0, 0 +/* 80164218 00161178 90 01 02 38 */ stw r0, 0x238(r1) +lbl_8016421C: +/* 8016421C 0016117C 3B 9C 00 04 */ addi r28, r28, 4 +/* 80164220 00161180 3A F7 00 01 */ addi r23, r23, 1 +/* 80164224 00161184 3B 7B 00 0C */ addi r27, r27, 0xc +/* 80164228 00161188 3B 5A 00 0C */ addi r26, r26, 0xc +/* 8016422C 0016118C 3B 39 00 02 */ addi r25, r25, 2 +/* 80164230 00161190 3B 18 00 01 */ addi r24, r24, 1 +lbl_80164234: +/* 80164234 00161194 80 1E 08 18 */ lwz r0, 0x818(r30) +/* 80164238 00161198 7C 18 00 00 */ cmpw r24, r0 +/* 8016423C 0016119C 41 80 FA F0 */ blt lbl_80163D2C +/* 80164240 001611A0 E3 E1 0A 88 */ psq_l f31, -1400(r1), 0, qr0 +/* 80164244 001611A4 CB E1 0A 80 */ lfd f31, 0xa80(r1) +/* 80164248 001611A8 E3 C1 0A 78 */ psq_l f30, -1416(r1), 0, qr0 +/* 8016424C 001611AC CB C1 0A 70 */ lfd f30, 0xa70(r1) +/* 80164250 001611B0 BA 81 0A 40 */ lmw r20, 0xa40(r1) +/* 80164254 001611B4 80 01 0A 94 */ lwz r0, 0xa94(r1) +/* 80164258 001611B8 7C 08 03 A6 */ mtlr r0 +/* 8016425C 001611BC 38 21 0A 90 */ addi r1, r1, 0xa90 +/* 80164260 001611C0 4E 80 00 20 */ blr + +.global sub_80164264 +sub_80164264: +/* 80164264 001611C4 94 21 F6 70 */ stwu r1, -0x990(r1) +/* 80164268 001611C8 7C 08 02 A6 */ mflr r0 +/* 8016426C 001611CC 90 01 09 94 */ stw r0, 0x994(r1) +/* 80164270 001611D0 DB E1 09 80 */ stfd f31, 0x980(r1) +/* 80164274 001611D4 F3 E1 09 88 */ psq_st f31, -1656(r1), 0, qr0 +/* 80164278 001611D8 93 E1 09 7C */ stw r31, 0x97c(r1) +/* 8016427C 001611DC 93 C1 09 78 */ stw r30, 0x978(r1) +/* 80164280 001611E0 93 A1 09 74 */ stw r29, 0x974(r1) +/* 80164284 001611E4 93 81 09 70 */ stw r28, 0x970(r1) +/* 80164288 001611E8 7C 7E 1B 78 */ mr r30, r3 +/* 8016428C 001611EC C0 62 9F F4 */ lfs f3, lbl_805ABD14@sda21(r2) +/* 80164290 001611F0 C0 43 05 D4 */ lfs f2, 0x5d4(r3) +/* 80164294 001611F4 7C 9F 23 78 */ mr r31, r4 +/* 80164298 001611F8 C0 02 9F F8 */ lfs f0, lbl_805ABD18@sda21(r2) +/* 8016429C 001611FC EC 23 10 7A */ fmadds f1, f3, f1, f2 +/* 801642A0 00161200 D0 23 05 D4 */ stfs f1, 0x5d4(r3) +/* 801642A4 00161204 C0 23 05 D4 */ lfs f1, 0x5d4(r3) +/* 801642A8 00161208 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801642AC 0016120C 40 81 00 0C */ ble lbl_801642B8 +/* 801642B0 00161210 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801642B4 00161214 D0 1E 05 D4 */ stfs f0, 0x5d4(r30) +lbl_801642B8: +/* 801642B8 00161218 C0 3E 05 D4 */ lfs f1, 0x5d4(r30) +/* 801642BC 0016121C C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 801642C0 00161220 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801642C4 00161224 40 80 00 08 */ bge lbl_801642CC +/* 801642C8 00161228 D0 1E 05 D4 */ stfs f0, 0x5d4(r30) +lbl_801642CC: +/* 801642CC 0016122C C0 3E 05 D8 */ lfs f1, 0x5d8(r30) +/* 801642D0 00161230 C0 02 9F F8 */ lfs f0, lbl_805ABD18@sda21(r2) +/* 801642D4 00161234 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801642D8 00161238 40 81 00 0C */ ble lbl_801642E4 +/* 801642DC 0016123C EC 01 00 28 */ fsubs f0, f1, f0 +/* 801642E0 00161240 D0 1E 05 D8 */ stfs f0, 0x5d8(r30) +lbl_801642E4: +/* 801642E4 00161244 C0 3E 05 D8 */ lfs f1, 0x5d8(r30) +/* 801642E8 00161248 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 801642EC 0016124C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801642F0 00161250 40 80 00 08 */ bge lbl_801642F8 +/* 801642F4 00161254 D0 1E 05 D8 */ stfs f0, 0x5d8(r30) +lbl_801642F8: +/* 801642F8 00161258 C0 3E 05 D4 */ lfs f1, 0x5d4(r30) +/* 801642FC 0016125C 48 1B 0A F5 */ bl FastSinR__5CMathFf +/* 80164300 00161260 C0 42 9F 7C */ lfs f2, lbl_805ABC9C@sda21(r2) +/* 80164304 00161264 38 81 00 14 */ addi r4, r1, 0x14 +/* 80164308 00161268 C0 02 9F 80 */ lfs f0, lbl_805ABCA0@sda21(r2) +/* 8016430C 0016126C 38 6D 8D 34 */ addi r3, r13, lbl_805A78F4@sda21 +/* 80164310 00161270 EC 22 08 2A */ fadds f1, f2, f1 +/* 80164314 00161274 38 AD 8D 38 */ addi r5, r13, lbl_805A78F8@sda21 +/* 80164318 00161278 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8016431C 0016127C D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80164320 00161280 4B EA 7F 95 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 80164324 00161284 C0 23 00 00 */ lfs f1, 0(r3) +/* 80164328 00161288 3C 00 7F 80 */ lis r0, 0x7f80 +/* 8016432C 0016128C D0 21 00 10 */ stfs f1, 0x10(r1) +/* 80164330 00161290 80 81 00 10 */ lwz r4, 0x10(r1) +/* 80164334 00161294 54 83 00 50 */ rlwinm r3, r4, 0, 1, 8 +/* 80164338 00161298 7C 03 00 00 */ cmpw r3, r0 +/* 8016433C 0016129C 41 82 00 34 */ beq lbl_80164370 +/* 80164340 001612A0 40 80 00 28 */ bge lbl_80164368 +/* 80164344 001612A4 2C 03 00 00 */ cmpwi r3, 0 +/* 80164348 001612A8 41 82 00 08 */ beq lbl_80164350 +/* 8016434C 001612AC 48 00 00 1C */ b lbl_80164368 +lbl_80164350: +/* 80164350 001612B0 54 80 02 7F */ clrlwi. r0, r4, 9 +/* 80164354 001612B4 41 82 00 0C */ beq lbl_80164360 +/* 80164358 001612B8 38 00 00 02 */ li r0, 2 +/* 8016435C 001612BC 48 00 00 28 */ b lbl_80164384 +lbl_80164360: +/* 80164360 001612C0 38 00 00 03 */ li r0, 3 +/* 80164364 001612C4 48 00 00 20 */ b lbl_80164384 +lbl_80164368: +/* 80164368 001612C8 38 00 00 04 */ li r0, 4 +/* 8016436C 001612CC 48 00 00 18 */ b lbl_80164384 +lbl_80164370: +/* 80164370 001612D0 54 80 02 7F */ clrlwi. r0, r4, 9 +/* 80164374 001612D4 41 82 00 0C */ beq lbl_80164380 +/* 80164378 001612D8 38 00 00 00 */ li r0, 0 +/* 8016437C 001612DC 48 00 00 08 */ b lbl_80164384 +lbl_80164380: +/* 80164380 001612E0 38 00 00 01 */ li r0, 1 +lbl_80164384: +/* 80164384 001612E4 2C 00 00 02 */ cmpwi r0, 2 +/* 80164388 001612E8 41 82 00 1C */ beq lbl_801643A4 +/* 8016438C 001612EC C0 42 A0 00 */ lfs f2, lbl_805ABD20@sda21(r2) +/* 80164390 001612F0 48 1B 0F 9D */ bl PowF__5CMathFff +/* 80164394 001612F4 C0 42 9F FC */ lfs f2, lbl_805ABD1C@sda21(r2) +/* 80164398 001612F8 C0 1E 05 D8 */ lfs f0, 0x5d8(r30) +/* 8016439C 001612FC EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 801643A0 00161300 D0 1E 05 D8 */ stfs f0, 0x5d8(r30) +lbl_801643A4: +/* 801643A4 00161304 C0 3E 05 D8 */ lfs f1, 0x5d8(r30) +/* 801643A8 00161308 48 1B 09 9D */ bl FastCosR__5CMathFf +/* 801643AC 0016130C C0 62 9F 80 */ lfs f3, lbl_805ABCA0@sda21(r2) +/* 801643B0 00161310 C0 42 A0 04 */ lfs f2, lbl_805ABD24@sda21(r2) +/* 801643B4 00161314 C0 1E 05 D8 */ lfs f0, 0x5d8(r30) +/* 801643B8 00161318 EF E3 00 72 */ fmuls f31, f3, f1 +/* 801643BC 0016131C EC 22 00 32 */ fmuls f1, f2, f0 +/* 801643C0 00161320 48 1B 0A 31 */ bl FastSinR__5CMathFf +/* 801643C4 00161324 C0 42 9F 80 */ lfs f2, lbl_805ABCA0@sda21(r2) +/* 801643C8 00161328 38 61 00 54 */ addi r3, r1, 0x54 +/* 801643CC 0016132C C0 02 9F 7C */ lfs f0, lbl_805ABC9C@sda21(r2) +/* 801643D0 00161330 38 81 00 78 */ addi r4, r1, 0x78 +/* 801643D4 00161334 EC 22 00 72 */ fmuls f1, f2, f1 +/* 801643D8 00161338 D3 E1 00 78 */ stfs f31, 0x78(r1) +/* 801643DC 0016133C D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 801643E0 00161340 D0 21 00 80 */ stfs f1, 0x80(r1) +/* 801643E4 00161344 48 1B 04 6D */ bl AsNormalized__9CVector3fCFv +/* 801643E8 00161348 38 61 00 60 */ addi r3, r1, 0x60 +/* 801643EC 0016134C 38 9E 00 34 */ addi r4, r30, 0x34 +/* 801643F0 00161350 38 A1 00 54 */ addi r5, r1, 0x54 +/* 801643F4 00161354 48 1A E6 8D */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 801643F8 00161358 88 0D A4 21 */ lbz r0, lbl_805A8FE1@sda21(r13) +/* 801643FC 0016135C C0 41 00 60 */ lfs f2, 0x60(r1) +/* 80164400 00161360 C0 21 00 64 */ lfs f1, 0x64(r1) +/* 80164404 00161364 7C 00 07 75 */ extsb. r0, r0 +/* 80164408 00161368 C0 01 00 68 */ lfs f0, 0x68(r1) +/* 8016440C 0016136C D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 80164410 00161370 D0 21 00 70 */ stfs f1, 0x70(r1) +/* 80164414 00161374 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 80164418 00161378 40 82 00 58 */ bne lbl_80164470 +/* 8016441C 0016137C 80 AD 8D 40 */ lwz r5, lbl_805A7900@sda21(r13) +/* 80164420 00161380 38 60 00 00 */ li r3, 0 +/* 80164424 00161384 38 80 00 01 */ li r4, 1 +/* 80164428 00161388 48 22 5A CD */ bl __shl2i +/* 8016442C 0016138C 80 AD 8D 3C */ lwz r5, lbl_805A78FC@sda21(r13) +/* 80164430 00161390 7C 9C 23 78 */ mr r28, r4 +/* 80164434 00161394 7C 7D 1B 78 */ mr r29, r3 +/* 80164438 00161398 38 60 00 00 */ li r3, 0 +/* 8016443C 0016139C 38 80 00 01 */ li r4, 1 +/* 80164440 001613A0 48 22 5A B5 */ bl __shl2i +/* 80164444 001613A4 3C A0 80 47 */ lis r5, lbl_8046C860@ha +/* 80164448 001613A8 38 C0 00 03 */ li r6, 3 +/* 8016444C 001613AC 38 A5 C8 60 */ addi r5, r5, lbl_8046C860@l +/* 80164450 001613B0 38 00 00 01 */ li r0, 1 +/* 80164454 001613B4 90 C1 00 98 */ stw r6, 0x98(r1) +/* 80164458 001613B8 90 85 00 04 */ stw r4, 4(r5) +/* 8016445C 001613BC 90 65 00 00 */ stw r3, 0(r5) +/* 80164460 001613C0 93 85 00 0C */ stw r28, 0xc(r5) +/* 80164464 001613C4 93 A5 00 08 */ stw r29, 8(r5) +/* 80164468 001613C8 90 C5 00 10 */ stw r6, 0x10(r5) +/* 8016446C 001613CC 98 0D A4 21 */ stb r0, lbl_805A8FE1@sda21(r13) +lbl_80164470: +/* 80164470 001613D0 80 8D 8C F4 */ lwz r4, lbl_805A78B4@sda21(r13) +/* 80164474 001613D4 38 61 00 44 */ addi r3, r1, 0x44 +/* 80164478 001613D8 4B EA 08 41 */ bl string_l__4rstlFPCc +/* 8016447C 001613DC 7F C4 F3 78 */ mr r4, r30 +/* 80164480 001613E0 38 61 00 D0 */ addi r3, r1, 0xd0 +/* 80164484 001613E4 38 A1 00 44 */ addi r5, r1, 0x44 +/* 80164488 001613E8 4B F1 44 F1 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8016448C 001613EC 38 61 01 30 */ addi r3, r1, 0x130 +/* 80164490 001613F0 38 81 00 D0 */ addi r4, r1, 0xd0 +/* 80164494 001613F4 48 1A E6 E1 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80164498 001613F8 38 61 00 44 */ addi r3, r1, 0x44 +/* 8016449C 001613FC 48 1D 96 45 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801644A0 00161400 A0 6D A3 8C */ lhz r3, lbl_805A8F4C@sda21(r13) +/* 801644A4 00161404 38 00 00 00 */ li r0, 0 +/* 801644A8 00161408 90 01 01 60 */ stw r0, 0x160(r1) +/* 801644AC 0016140C 54 00 08 3C */ slwi r0, r0, 1 +/* 801644B0 00161410 38 81 01 64 */ addi r4, r1, 0x164 +/* 801644B4 00161414 B0 61 00 0C */ sth r3, 0xc(r1) +/* 801644B8 00161418 7C 84 02 15 */ add. r4, r4, r0 +/* 801644BC 0016141C 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801644C0 00161420 A0 03 00 08 */ lhz r0, 8(r3) +/* 801644C4 00161424 41 82 00 08 */ beq lbl_801644CC +/* 801644C8 00161428 B0 04 00 00 */ sth r0, 0(r4) +lbl_801644CC: +/* 801644CC 0016142C C0 82 9F 8C */ lfs f4, lbl_805ABCAC@sda21(r2) +/* 801644D0 00161430 3C 60 80 47 */ lis r3, lbl_8046C860@ha +/* 801644D4 00161434 C0 41 00 70 */ lfs f2, 0x70(r1) +/* 801644D8 00161438 39 03 C8 60 */ addi r8, r3, lbl_8046C860@l +/* 801644DC 0016143C C0 21 00 74 */ lfs f1, 0x74(r1) +/* 801644E0 00161440 7F E4 FB 78 */ mr r4, r31 +/* 801644E4 00161444 EC C4 00 B2 */ fmuls f6, f4, f2 +/* 801644E8 00161448 C0 61 01 4C */ lfs f3, 0x14c(r1) +/* 801644EC 0016144C EC A4 00 72 */ fmuls f5, f4, f1 +/* 801644F0 00161450 C0 41 01 5C */ lfs f2, 0x15c(r1) +/* 801644F4 00161454 C0 01 00 6C */ lfs f0, 0x6c(r1) +/* 801644F8 00161458 38 A1 00 0C */ addi r5, r1, 0xc +/* 801644FC 0016145C EC 04 00 32 */ fmuls f0, f4, f0 +/* 80164500 00161460 C0 81 01 3C */ lfs f4, 0x13c(r1) +/* 80164504 00161464 ED 03 30 2A */ fadds f8, f3, f6 +/* 80164508 00161468 80 61 01 60 */ lwz r3, 0x160(r1) +/* 8016450C 0016146C EC E2 28 2A */ fadds f7, f2, f5 +/* 80164510 00161470 C0 22 9F EC */ lfs f1, lbl_805ABD0C@sda21(r2) +/* 80164514 00161474 38 03 00 01 */ addi r0, r3, 1 +/* 80164518 00161478 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 8016451C 0016147C EC 04 00 2A */ fadds f0, f4, f0 +/* 80164520 00161480 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 80164524 00161484 90 01 01 60 */ stw r0, 0x160(r1) +/* 80164528 00161488 38 C1 00 38 */ addi r6, r1, 0x38 +/* 8016452C 0016148C 38 E1 00 6C */ addi r7, r1, 0x6c +/* 80164530 00161490 39 21 01 60 */ addi r9, r1, 0x160 +/* 80164534 00161494 D0 C1 00 24 */ stfs f6, 0x24(r1) +/* 80164538 00161498 D0 A1 00 28 */ stfs f5, 0x28(r1) +/* 8016453C 0016149C D0 81 00 2C */ stfs f4, 0x2c(r1) +/* 80164540 001614A0 D0 61 00 30 */ stfs f3, 0x30(r1) +/* 80164544 001614A4 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 80164548 001614A8 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 8016454C 001614AC D1 01 00 3C */ stfs f8, 0x3c(r1) +/* 80164550 001614B0 D0 E1 00 40 */ stfs f7, 0x40(r1) +/* 80164554 001614B4 4B EE 8A 71 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 80164558 001614B8 88 81 00 C0 */ lbz r4, 0xc0(r1) +/* 8016455C 001614BC 3B 81 01 04 */ addi r28, r1, 0x104 +/* 80164560 001614C0 C0 E1 00 A0 */ lfs f7, 0xa0(r1) +/* 80164564 001614C4 C0 C1 00 A4 */ lfs f6, 0xa4(r1) +/* 80164568 001614C8 28 04 00 00 */ cmplwi r4, 0 +/* 8016456C 001614CC C0 A1 00 A8 */ lfs f5, 0xa8(r1) +/* 80164570 001614D0 C0 81 00 AC */ lfs f4, 0xac(r1) +/* 80164574 001614D4 C0 61 00 B0 */ lfs f3, 0xb0(r1) +/* 80164578 001614D8 C0 41 00 B4 */ lfs f2, 0xb4(r1) +/* 8016457C 001614DC C0 21 00 B8 */ lfs f1, 0xb8(r1) +/* 80164580 001614E0 C0 01 00 BC */ lfs f0, 0xbc(r1) +/* 80164584 001614E4 80 01 00 C8 */ lwz r0, 0xc8(r1) +/* 80164588 001614E8 80 61 00 CC */ lwz r3, 0xcc(r1) +/* 8016458C 001614EC D0 E1 01 00 */ stfs f7, 0x100(r1) +/* 80164590 001614F0 D0 C1 01 04 */ stfs f6, 0x104(r1) +/* 80164594 001614F4 D0 A1 01 08 */ stfs f5, 0x108(r1) +/* 80164598 001614F8 D0 81 01 0C */ stfs f4, 0x10c(r1) +/* 8016459C 001614FC D0 61 01 10 */ stfs f3, 0x110(r1) +/* 801645A0 00161500 D0 41 01 14 */ stfs f2, 0x114(r1) +/* 801645A4 00161504 D0 21 01 18 */ stfs f1, 0x118(r1) +/* 801645A8 00161508 D0 01 01 1C */ stfs f0, 0x11c(r1) +/* 801645AC 0016150C 98 81 01 20 */ stb r4, 0x120(r1) +/* 801645B0 00161510 90 61 01 2C */ stw r3, 0x12c(r1) +/* 801645B4 00161514 90 01 01 28 */ stw r0, 0x128(r1) +/* 801645B8 00161518 41 82 00 60 */ beq lbl_80164618 +/* 801645BC 0016151C A0 7E 05 78 */ lhz r3, 0x578(r30) +/* 801645C0 00161520 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801645C4 00161524 7C 03 00 40 */ cmplw r3, r0 +/* 801645C8 00161528 41 82 00 50 */ beq lbl_80164618 +/* 801645CC 0016152C A0 1E 05 78 */ lhz r0, 0x578(r30) +/* 801645D0 00161530 7F E3 FB 78 */ mr r3, r31 +/* 801645D4 00161534 38 81 00 08 */ addi r4, r1, 8 +/* 801645D8 00161538 B0 01 00 08 */ sth r0, 8(r1) +/* 801645DC 0016153C 4B EE 7F 99 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801645E0 00161540 7C 64 1B 78 */ mr r4, r3 +/* 801645E4 00161544 38 61 00 18 */ addi r3, r1, 0x18 +/* 801645E8 00161548 4B F4 94 9D */ bl "__ct__24TCastToPtr<10CGameLight>FP7CEntity" +/* 801645EC 0016154C 80 63 00 04 */ lwz r3, 4(r3) +/* 801645F0 00161550 28 03 00 00 */ cmplwi r3, 0 +/* 801645F4 00161554 41 82 00 24 */ beq lbl_80164618 +/* 801645F8 00161558 7F 84 E3 78 */ mr r4, r28 +/* 801645FC 0016155C 4B EE E8 91 */ bl SetTranslation__6CActorFRC9CVector3f +/* 80164600 00161560 C0 01 01 04 */ lfs f0, 0x104(r1) +/* 80164604 00161564 D0 1E 07 AC */ stfs f0, 0x7ac(r30) +/* 80164608 00161568 C0 01 01 08 */ lfs f0, 0x108(r1) +/* 8016460C 0016156C D0 1E 07 B0 */ stfs f0, 0x7b0(r30) +/* 80164610 00161570 C0 01 01 0C */ lfs f0, 0x10c(r1) +/* 80164614 00161574 D0 1E 07 B4 */ stfs f0, 0x7b4(r30) +lbl_80164618: +/* 80164618 00161578 80 A1 01 60 */ lwz r5, 0x160(r1) +/* 8016461C 0016157C 38 60 00 00 */ li r3, 0 +/* 80164620 00161580 2C 05 00 00 */ cmpwi r5, 0 +/* 80164624 00161584 40 81 00 40 */ ble lbl_80164664 +/* 80164628 00161588 2C 05 00 08 */ cmpwi r5, 8 +/* 8016462C 0016158C 38 85 FF F8 */ addi r4, r5, -8 +/* 80164630 00161590 40 81 00 20 */ ble lbl_80164650 +/* 80164634 00161594 38 04 00 07 */ addi r0, r4, 7 +/* 80164638 00161598 54 00 E8 FE */ srwi r0, r0, 3 +/* 8016463C 0016159C 7C 09 03 A6 */ mtctr r0 +/* 80164640 001615A0 2C 04 00 00 */ cmpwi r4, 0 +/* 80164644 001615A4 40 81 00 0C */ ble lbl_80164650 +lbl_80164648: +/* 80164648 001615A8 38 63 00 08 */ addi r3, r3, 8 +/* 8016464C 001615AC 42 00 FF FC */ bdnz lbl_80164648 +lbl_80164650: +/* 80164650 001615B0 7C 03 28 50 */ subf r0, r3, r5 +/* 80164654 001615B4 7C 09 03 A6 */ mtctr r0 +/* 80164658 001615B8 7C 03 28 00 */ cmpw r3, r5 +/* 8016465C 001615BC 40 80 00 08 */ bge lbl_80164664 +lbl_80164660: +/* 80164660 001615C0 42 00 00 00 */ bdnz lbl_80164660 +lbl_80164664: +/* 80164664 001615C4 38 00 00 00 */ li r0, 0 +/* 80164668 001615C8 90 01 01 60 */ stw r0, 0x160(r1) +/* 8016466C 001615CC E3 E1 09 88 */ psq_l f31, -1656(r1), 0, qr0 +/* 80164670 001615D0 80 01 09 94 */ lwz r0, 0x994(r1) +/* 80164674 001615D4 CB E1 09 80 */ lfd f31, 0x980(r1) +/* 80164678 001615D8 83 E1 09 7C */ lwz r31, 0x97c(r1) +/* 8016467C 001615DC 83 C1 09 78 */ lwz r30, 0x978(r1) +/* 80164680 001615E0 83 A1 09 74 */ lwz r29, 0x974(r1) +/* 80164684 001615E4 83 81 09 70 */ lwz r28, 0x970(r1) +/* 80164688 001615E8 7C 08 03 A6 */ mtlr r0 +/* 8016468C 001615EC 38 21 09 90 */ addi r1, r1, 0x990 +/* 80164690 001615F0 4E 80 00 20 */ blr + +.global GetCollisionPrimitive__6CDroneCFv +GetCollisionPrimitive__6CDroneCFv: +/* 80164694 001615F4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80164698 001615F8 7C 08 02 A6 */ mflr r0 +/* 8016469C 001615FC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801646A0 00161600 88 03 08 34 */ lbz r0, 0x834(r3) +/* 801646A4 00161604 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 801646A8 00161608 41 82 00 0C */ beq lbl_801646B4 +/* 801646AC 0016160C 4B FB 63 A9 */ bl GetCollisionPrimitive__13CPhysicsActorCFv +/* 801646B0 00161610 48 00 00 08 */ b lbl_801646B8 +lbl_801646B4: +/* 801646B4 00161614 38 63 06 90 */ addi r3, r3, 0x690 +lbl_801646B8: +/* 801646B8 00161618 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801646BC 0016161C 7C 08 03 A6 */ mtlr r0 +/* 801646C0 00161620 38 21 00 10 */ addi r1, r1, 0x10 +/* 801646C4 00161624 4E 80 00 20 */ blr + +.global Patrol__6CDroneFR13CStateManager9EStateMsgf +Patrol__6CDroneFR13CStateManager9EStateMsgf: +/* 801646C8 00161628 94 21 F7 90 */ stwu r1, -0x870(r1) +/* 801646CC 0016162C 7C 08 02 A6 */ mflr r0 +/* 801646D0 00161630 90 01 08 74 */ stw r0, 0x874(r1) +/* 801646D4 00161634 DB E1 08 60 */ stfd f31, 0x860(r1) +/* 801646D8 00161638 F3 E1 08 68 */ psq_st f31, -1944(r1), 0, qr0 +/* 801646DC 0016163C 93 E1 08 5C */ stw r31, 0x85c(r1) +/* 801646E0 00161640 93 C1 08 58 */ stw r30, 0x858(r1) +/* 801646E4 00161644 93 A1 08 54 */ stw r29, 0x854(r1) +/* 801646E8 00161648 7C BF 2B 78 */ mr r31, r5 +/* 801646EC 0016164C FF E0 08 90 */ fmr f31, f1 +/* 801646F0 00161650 2C 1F 00 01 */ cmpwi r31, 1 +/* 801646F4 00161654 7C 7D 1B 78 */ mr r29, r3 +/* 801646F8 00161658 7C 9E 23 78 */ mr r30, r4 +/* 801646FC 0016165C 41 82 00 5C */ beq lbl_80164758 +/* 80164700 00161660 40 80 00 10 */ bge lbl_80164710 +/* 80164704 00161664 2C 1F 00 00 */ cmpwi r31, 0 +/* 80164708 00161668 40 80 00 14 */ bge lbl_8016471C +/* 8016470C 0016166C 48 00 01 C8 */ b lbl_801648D4 +lbl_80164710: +/* 80164710 00161670 2C 1F 00 03 */ cmpwi r31, 3 +/* 80164714 00161674 40 80 01 C0 */ bge lbl_801648D4 +/* 80164718 00161678 48 00 01 98 */ b lbl_801648B0 +lbl_8016471C: +/* 8016471C 0016167C 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 80164720 00161680 38 80 00 02 */ li r4, 2 +/* 80164724 00161684 4B FD 62 B5 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 80164728 00161688 7F A3 EB 78 */ mr r3, r29 +/* 8016472C 0016168C 7F C4 F3 78 */ mr r4, r30 +/* 80164730 00161690 81 9D 00 00 */ lwz r12, 0(r29) +/* 80164734 00161694 38 A0 00 01 */ li r5, 1 +/* 80164738 00161698 81 8C 02 D0 */ lwz r12, 0x2d0(r12) +/* 8016473C 0016169C 7D 89 03 A6 */ mtctr r12 +/* 80164740 001616A0 4E 80 04 21 */ bctrl +/* 80164744 001616A4 88 1D 08 34 */ lbz r0, 0x834(r29) +/* 80164748 001616A8 38 60 00 01 */ li r3, 1 +/* 8016474C 001616AC 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80164750 001616B0 98 1D 08 34 */ stb r0, 0x834(r29) +/* 80164754 001616B4 48 00 01 80 */ b lbl_801648D4 +lbl_80164758: +/* 80164758 001616B8 38 00 00 00 */ li r0, 0 +/* 8016475C 001616BC 7F C7 F3 78 */ mr r7, r30 +/* 80164760 001616C0 90 01 00 40 */ stw r0, 0x40(r1) +/* 80164764 001616C4 38 C1 00 40 */ addi r6, r1, 0x40 +/* 80164768 001616C8 C0 22 A0 00 */ lfs f1, lbl_805ABD20@sda21(r2) +/* 8016476C 001616CC 38 80 00 21 */ li r4, 0x21 +/* 80164770 001616D0 81 83 00 00 */ lwz r12, 0(r3) +/* 80164774 001616D4 38 A0 00 20 */ li r5, 0x20 +/* 80164778 001616D8 81 8C 02 CC */ lwz r12, 0x2cc(r12) +/* 8016477C 001616DC 7D 89 03 A6 */ mtctr r12 +/* 80164780 001616E0 4E 80 04 21 */ bctrl +/* 80164784 001616E4 80 01 00 40 */ lwz r0, 0x40(r1) +/* 80164788 001616E8 2C 00 00 00 */ cmpwi r0, 0 +/* 8016478C 001616EC 41 82 00 CC */ beq lbl_80164858 +/* 80164790 001616F0 A0 01 00 44 */ lhz r0, 0x44(r1) +/* 80164794 001616F4 7F C3 F3 78 */ mr r3, r30 +/* 80164798 001616F8 38 81 00 08 */ addi r4, r1, 8 +/* 8016479C 001616FC B0 01 00 08 */ sth r0, 8(r1) +/* 801647A0 00161700 4B EE 7E 05 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801647A4 00161704 C0 63 00 60 */ lfs f3, 0x60(r3) +/* 801647A8 00161708 7F A5 EB 78 */ mr r5, r29 +/* 801647AC 0016170C C0 43 00 50 */ lfs f2, 0x50(r3) +/* 801647B0 00161710 38 9D 04 5C */ addi r4, r29, 0x45c +/* 801647B4 00161714 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 801647B8 00161718 38 61 00 18 */ addi r3, r1, 0x18 +/* 801647BC 0016171C C0 22 A0 00 */ lfs f1, lbl_805ABD20@sda21(r2) +/* 801647C0 00161720 38 C1 00 0C */ addi r6, r1, 0xc +/* 801647C4 00161724 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801647C8 00161728 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801647CC 0016172C D0 61 00 14 */ stfs f3, 0x14(r1) +/* 801647D0 00161730 4B FD A1 21 */ bl Separation__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff +/* 801647D4 00161734 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801647D8 00161738 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 801647DC 0016173C C4 A3 66 A0 */ lfsu f5, skZero3f@l(r3) +/* 801647E0 00161740 38 00 00 00 */ li r0, 0 +/* 801647E4 00161744 C0 61 00 1C */ lfs f3, 0x1c(r1) +/* 801647E8 00161748 FC 01 28 00 */ fcmpu cr0, f1, f5 +/* 801647EC 0016174C C0 81 00 20 */ lfs f4, 0x20(r1) +/* 801647F0 00161750 40 82 00 20 */ bne lbl_80164810 +/* 801647F4 00161754 C0 03 00 04 */ lfs f0, 4(r3) +/* 801647F8 00161758 FC 03 00 00 */ fcmpu cr0, f3, f0 +/* 801647FC 0016175C 40 82 00 14 */ bne lbl_80164810 +/* 80164800 00161760 C0 03 00 08 */ lfs f0, 8(r3) +/* 80164804 00161764 FC 04 00 00 */ fcmpu cr0, f4, f0 +/* 80164808 00161768 40 82 00 08 */ bne lbl_80164810 +/* 8016480C 0016176C 38 00 00 01 */ li r0, 1 +lbl_80164810: +/* 80164810 00161770 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 80164814 00161774 40 82 00 44 */ bne lbl_80164858 +/* 80164818 00161778 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8016481C 0016177C C0 02 9F 80 */ lfs f0, lbl_805ABCA0@sda21(r2) +/* 80164820 00161780 38 63 66 A0 */ addi r3, r3, skZero3f@l +/* 80164824 00161784 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 80164828 00161788 C0 43 00 04 */ lfs f2, 4(r3) +/* 8016482C 0016178C 38 81 00 24 */ addi r4, r1, 0x24 +/* 80164830 00161790 C0 23 00 08 */ lfs f1, 8(r3) +/* 80164834 00161794 D0 61 00 28 */ stfs f3, 0x28(r1) +/* 80164838 00161798 D0 81 00 2C */ stfs f4, 0x2c(r1) +/* 8016483C 0016179C D0 A1 00 30 */ stfs f5, 0x30(r1) +/* 80164840 001617A0 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 80164844 001617A4 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 80164848 001617A8 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 8016484C 001617AC 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 80164850 001617B0 38 63 00 04 */ addi r3, r3, 4 +/* 80164854 001617B4 4B FC CE C5 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_80164858: +/* 80164858 001617B8 80 A1 00 40 */ lwz r5, 0x40(r1) +/* 8016485C 001617BC 38 60 00 00 */ li r3, 0 +/* 80164860 001617C0 2C 05 00 00 */ cmpwi r5, 0 +/* 80164864 001617C4 40 81 00 40 */ ble lbl_801648A4 +/* 80164868 001617C8 2C 05 00 08 */ cmpwi r5, 8 +/* 8016486C 001617CC 38 85 FF F8 */ addi r4, r5, -8 +/* 80164870 001617D0 40 81 00 20 */ ble lbl_80164890 +/* 80164874 001617D4 38 04 00 07 */ addi r0, r4, 7 +/* 80164878 001617D8 54 00 E8 FE */ srwi r0, r0, 3 +/* 8016487C 001617DC 7C 09 03 A6 */ mtctr r0 +/* 80164880 001617E0 2C 04 00 00 */ cmpwi r4, 0 +/* 80164884 001617E4 40 81 00 0C */ ble lbl_80164890 +lbl_80164888: +/* 80164888 001617E8 38 63 00 08 */ addi r3, r3, 8 +/* 8016488C 001617EC 42 00 FF FC */ bdnz lbl_80164888 +lbl_80164890: +/* 80164890 001617F0 7C 03 28 50 */ subf r0, r3, r5 +/* 80164894 001617F4 7C 09 03 A6 */ mtctr r0 +/* 80164898 001617F8 7C 03 28 00 */ cmpw r3, r5 +/* 8016489C 001617FC 40 80 00 08 */ bge lbl_801648A4 +lbl_801648A0: +/* 801648A0 00161800 42 00 00 00 */ bdnz lbl_801648A0 +lbl_801648A4: +/* 801648A4 00161804 38 00 00 00 */ li r0, 0 +/* 801648A8 00161808 90 01 00 40 */ stw r0, 0x40(r1) +/* 801648AC 0016180C 48 00 00 28 */ b lbl_801648D4 +lbl_801648B0: +/* 801648B0 00161810 81 83 00 00 */ lwz r12, 0(r3) +/* 801648B4 00161814 38 A0 00 00 */ li r5, 0 +/* 801648B8 00161818 81 8C 02 D0 */ lwz r12, 0x2d0(r12) +/* 801648BC 0016181C 7D 89 03 A6 */ mtctr r12 +/* 801648C0 00161820 4E 80 04 21 */ bctrl +/* 801648C4 00161824 88 1D 08 34 */ lbz r0, 0x834(r29) +/* 801648C8 00161828 38 60 00 00 */ li r3, 0 +/* 801648CC 0016182C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801648D0 00161830 98 1D 08 34 */ stb r0, 0x834(r29) +lbl_801648D4: +/* 801648D4 00161834 FC 20 F8 90 */ fmr f1, f31 +/* 801648D8 00161838 7F A3 EB 78 */ mr r3, r29 +/* 801648DC 0016183C 7F C4 F3 78 */ mr r4, r30 +/* 801648E0 00161840 7F E5 FB 78 */ mr r5, r31 +/* 801648E4 00161844 48 09 25 91 */ bl Patrol__10CPatternedFR13CStateManager9EStateMsgf +/* 801648E8 00161848 E3 E1 08 68 */ psq_l f31, -1944(r1), 0, qr0 +/* 801648EC 0016184C 80 01 08 74 */ lwz r0, 0x874(r1) +/* 801648F0 00161850 CB E1 08 60 */ lfd f31, 0x860(r1) +/* 801648F4 00161854 83 E1 08 5C */ lwz r31, 0x85c(r1) +/* 801648F8 00161858 83 C1 08 58 */ lwz r30, 0x858(r1) +/* 801648FC 0016185C 83 A1 08 54 */ lwz r29, 0x854(r1) +/* 80164900 00161860 7C 08 03 A6 */ mtlr r0 +/* 80164904 00161864 38 21 08 70 */ addi r1, r1, 0x870 +/* 80164908 00161868 4E 80 00 20 */ blr + +.global sub_8016490c +sub_8016490c: +/* 8016490C 0016186C 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 80164910 00161870 7C 08 02 A6 */ mflr r0 +/* 80164914 00161874 90 01 01 04 */ stw r0, 0x104(r1) +/* 80164918 00161878 DB E1 00 F0 */ stfd f31, 0xf0(r1) +/* 8016491C 0016187C F3 E1 00 F8 */ psq_st f31, 248(r1), 0, qr0 +/* 80164920 00161880 DB C1 00 E0 */ stfd f30, 0xe0(r1) +/* 80164924 00161884 F3 C1 00 E8 */ psq_st f30, 232(r1), 0, qr0 +/* 80164928 00161888 DB A1 00 D0 */ stfd f29, 0xd0(r1) +/* 8016492C 0016188C F3 A1 00 D8 */ psq_st f29, 216(r1), 0, qr0 +/* 80164930 00161890 DB 81 00 C0 */ stfd f28, 0xc0(r1) +/* 80164934 00161894 F3 81 00 C8 */ psq_st f28, 200(r1), 0, qr0 +/* 80164938 00161898 93 E1 00 BC */ stw r31, 0xbc(r1) +/* 8016493C 0016189C 3C 80 80 3D */ lis r4, lbl_803D0398@ha +/* 80164940 001618A0 FF 80 08 90 */ fmr f28, f1 +/* 80164944 001618A4 38 84 03 98 */ addi r4, r4, lbl_803D0398@l +/* 80164948 001618A8 7C 7F 1B 78 */ mr r31, r3 +/* 8016494C 001618AC 38 61 00 30 */ addi r3, r1, 0x30 +/* 80164950 001618B0 38 84 00 4D */ addi r4, r4, 0x4d +/* 80164954 001618B4 4B EA 03 65 */ bl string_l__4rstlFPCc +/* 80164958 001618B8 7F E4 FB 78 */ mr r4, r31 +/* 8016495C 001618BC 38 61 00 58 */ addi r3, r1, 0x58 +/* 80164960 001618C0 38 A1 00 30 */ addi r5, r1, 0x30 +/* 80164964 001618C4 4B F1 40 15 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80164968 001618C8 38 61 00 88 */ addi r3, r1, 0x88 +/* 8016496C 001618CC 38 81 00 58 */ addi r4, r1, 0x58 +/* 80164970 001618D0 48 1A E2 05 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80164974 001618D4 38 61 00 30 */ addi r3, r1, 0x30 +/* 80164978 001618D8 48 1D 91 69 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8016497C 001618DC C0 41 00 94 */ lfs f2, 0x94(r1) +/* 80164980 001618E0 38 61 00 40 */ addi r3, r1, 0x40 +/* 80164984 001618E4 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 80164988 001618E8 38 81 00 24 */ addi r4, r1, 0x24 +/* 8016498C 001618EC C0 21 00 A4 */ lfs f1, 0xa4(r1) +/* 80164990 001618F0 38 A1 00 18 */ addi r5, r1, 0x18 +/* 80164994 001618F4 EF A2 00 28 */ fsubs f29, f2, f0 +/* 80164998 001618F8 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 8016499C 001618FC C0 41 00 B4 */ lfs f2, 0xb4(r1) +/* 801649A0 00161900 EF C1 00 28 */ fsubs f30, f1, f0 +/* 801649A4 00161904 C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 801649A8 00161908 EC 3D E0 2A */ fadds f1, f29, f28 +/* 801649AC 0016190C EF E2 00 28 */ fsubs f31, f2, f0 +/* 801649B0 00161910 EC 1E E0 2A */ fadds f0, f30, f28 +/* 801649B4 00161914 EC 5D E0 28 */ fsubs f2, f29, f28 +/* 801649B8 00161918 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801649BC 0016191C EC 7F E0 2A */ fadds f3, f31, f28 +/* 801649C0 00161920 EC 3E E0 28 */ fsubs f1, f30, f28 +/* 801649C4 00161924 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801649C8 00161928 EC 1F E0 28 */ fsubs f0, f31, f28 +/* 801649CC 0016192C D0 61 00 20 */ stfs f3, 0x20(r1) +/* 801649D0 00161930 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 801649D4 00161934 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801649D8 00161938 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801649DC 0016193C 48 1D 3B 2D */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801649E0 00161940 D3 A1 00 08 */ stfs f29, 8(r1) +/* 801649E4 00161944 FC 00 E0 18 */ frsp f0, f28 +/* 801649E8 00161948 7F E3 FB 78 */ mr r3, r31 +/* 801649EC 0016194C 38 81 00 40 */ addi r4, r1, 0x40 +/* 801649F0 00161950 D3 C1 00 0C */ stfs f30, 0xc(r1) +/* 801649F4 00161954 80 01 00 08 */ lwz r0, 8(r1) +/* 801649F8 00161958 D3 E1 00 10 */ stfs f31, 0x10(r1) +/* 801649FC 0016195C 80 A1 00 0C */ lwz r5, 0xc(r1) +/* 80164A00 00161960 90 1F 06 A0 */ stw r0, 0x6a0(r31) +/* 80164A04 00161964 80 01 00 10 */ lwz r0, 0x10(r1) +/* 80164A08 00161968 90 BF 06 A4 */ stw r5, 0x6a4(r31) +/* 80164A0C 0016196C 90 1F 06 A8 */ stw r0, 0x6a8(r31) +/* 80164A10 00161970 D3 81 00 14 */ stfs f28, 0x14(r1) +/* 80164A14 00161974 D0 1F 06 AC */ stfs f0, 0x6ac(r31) +/* 80164A18 00161978 4B FB 5C 41 */ bl SetBoundingBox__13CPhysicsActorFRC6CAABox +/* 80164A1C 0016197C C0 02 9F 78 */ lfs f0, lbl_805ABC98@sda21(r2) +/* 80164A20 00161980 EC 00 E0 2A */ fadds f0, f0, f28 +/* 80164A24 00161984 D0 1F 07 84 */ stfs f0, 0x784(r31) +/* 80164A28 00161988 E3 E1 00 F8 */ psq_l f31, 248(r1), 0, qr0 +/* 80164A2C 0016198C CB E1 00 F0 */ lfd f31, 0xf0(r1) +/* 80164A30 00161990 E3 C1 00 E8 */ psq_l f30, 232(r1), 0, qr0 +/* 80164A34 00161994 CB C1 00 E0 */ lfd f30, 0xe0(r1) +/* 80164A38 00161998 E3 A1 00 D8 */ psq_l f29, 216(r1), 0, qr0 +/* 80164A3C 0016199C CB A1 00 D0 */ lfd f29, 0xd0(r1) +/* 80164A40 001619A0 E3 81 00 C8 */ psq_l f28, 200(r1), 0, qr0 +/* 80164A44 001619A4 CB 81 00 C0 */ lfd f28, 0xc0(r1) +/* 80164A48 001619A8 80 01 01 04 */ lwz r0, 0x104(r1) +/* 80164A4C 001619AC 83 E1 00 BC */ lwz r31, 0xbc(r1) +/* 80164A50 001619B0 7C 08 03 A6 */ mtlr r0 +/* 80164A54 001619B4 38 21 01 00 */ addi r1, r1, 0x100 +/* 80164A58 001619B8 4E 80 00 20 */ blr + +.global Think__6CDroneFfR13CStateManager +Think__6CDroneFfR13CStateManager: +/* 80164A5C 001619BC 94 21 F5 D0 */ stwu r1, -0xa30(r1) +/* 80164A60 001619C0 7C 08 02 A6 */ mflr r0 +/* 80164A64 001619C4 90 01 0A 34 */ stw r0, 0xa34(r1) +/* 80164A68 001619C8 DB E1 0A 20 */ stfd f31, 0xa20(r1) +/* 80164A6C 001619CC F3 E1 0A 28 */ psq_st f31, -1496(r1), 0, qr0 +/* 80164A70 001619D0 DB C1 0A 10 */ stfd f30, 0xa10(r1) +/* 80164A74 001619D4 F3 C1 0A 18 */ psq_st f30, -1512(r1), 0, qr0 +/* 80164A78 001619D8 BF 61 09 FC */ stmw r27, 0x9fc(r1) +/* 80164A7C 001619DC 7C 7E 1B 78 */ mr r30, r3 +/* 80164A80 001619E0 FF E0 08 90 */ fmr f31, f1 +/* 80164A84 001619E4 80 03 03 FC */ lwz r0, 0x3fc(r3) +/* 80164A88 001619E8 7C 9F 23 78 */ mr r31, r4 +/* 80164A8C 001619EC 2C 00 00 01 */ cmpwi r0, 1 +/* 80164A90 001619F0 40 82 00 64 */ bne lbl_80164AF4 +/* 80164A94 001619F4 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 80164A98 001619F8 80 63 00 00 */ lwz r3, 0(r3) +/* 80164A9C 001619FC 4B F2 CA BD */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager +/* 80164AA0 00161A00 20 03 00 01 */ subfic r0, r3, 1 +/* 80164AA4 00161A04 C0 22 9F 7C */ lfs f1, lbl_805ABC9C@sda21(r2) +/* 80164AA8 00161A08 7C 00 00 34 */ cntlzw r0, r0 +/* 80164AAC 00161A0C 54 00 DE 3F */ rlwinm. r0, r0, 0x1b, 0x18, 0x1f +/* 80164AB0 00161A10 40 82 00 30 */ bne lbl_80164AE0 +/* 80164AB4 00161A14 C0 5E 04 28 */ lfs f2, 0x428(r30) +/* 80164AB8 00161A18 C0 22 88 F0 */ lfs f1, lbl_805AA610@sda21(r2) +/* 80164ABC 00161A1C C0 0D 8D 14 */ lfs f0, lbl_805A78D4@sda21(r13) +/* 80164AC0 00161A20 EC 22 08 24 */ fdivs f1, f2, f1 +/* 80164AC4 00161A24 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80164AC8 00161A28 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 80164ACC 00161A2C 40 80 00 0C */ bge lbl_80164AD8 +/* 80164AD0 00161A30 38 61 00 4C */ addi r3, r1, 0x4c +/* 80164AD4 00161A34 48 00 00 08 */ b lbl_80164ADC +lbl_80164AD8: +/* 80164AD8 00161A38 38 6D 8D 14 */ addi r3, r13, lbl_805A78D4@sda21 +lbl_80164ADC: +/* 80164ADC 00161A3C C0 23 00 00 */ lfs f1, 0(r3) +lbl_80164AE0: +/* 80164AE0 00161A40 C0 02 A0 08 */ lfs f0, lbl_805ABD28@sda21(r2) +/* 80164AE4 00161A44 EF C0 00 72 */ fmuls f30, f0, f1 +/* 80164AE8 00161A48 F3 C1 A0 08 */ psq_st f30, 8(r1), 1, qr2 +/* 80164AEC 00161A4C 88 01 00 08 */ lbz r0, 8(r1) +/* 80164AF0 00161A50 98 1E 04 2F */ stb r0, 0x42f(r30) +lbl_80164AF4: +/* 80164AF4 00161A54 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80164AF8 00161A58 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 80164AFC 00161A5C C0 03 03 24 */ lfs f0, 0x324(r3) +/* 80164B00 00161A60 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80164B04 00161A64 7C 60 00 26 */ mfcr r3 +/* 80164B08 00161A68 88 1E 04 03 */ lbz r0, 0x403(r30) +/* 80164B0C 00161A6C 54 63 17 FE */ rlwinm r3, r3, 2, 0x1f, 0x1f +/* 80164B10 00161A70 7C 63 00 34 */ cntlzw r3, r3 +/* 80164B14 00161A74 50 60 0E 72 */ rlwimi r0, r3, 1, 0x19, 0x19 +/* 80164B18 00161A78 98 1E 04 03 */ stb r0, 0x403(r30) +/* 80164B1C 00161A7C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80164B20 00161A80 C0 03 03 24 */ lfs f0, 0x324(r3) +/* 80164B24 00161A84 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80164B28 00161A88 40 81 00 6C */ ble lbl_80164B94 +/* 80164B2C 00161A8C 88 1E 08 28 */ lbz r0, 0x828(r30) +/* 80164B30 00161A90 28 00 00 00 */ cmplwi r0, 0 +/* 80164B34 00161A94 40 82 00 10 */ bne lbl_80164B44 +/* 80164B38 00161A98 88 1E 08 29 */ lbz r0, 0x829(r30) +/* 80164B3C 00161A9C 28 00 00 00 */ cmplwi r0, 0 +/* 80164B40 00161AA0 41 82 00 54 */ beq lbl_80164B94 +lbl_80164B44: +/* 80164B44 00161AA4 38 00 00 00 */ li r0, 0 +/* 80164B48 00161AA8 7F C3 F3 78 */ mr r3, r30 +/* 80164B4C 00161AAC 98 1E 08 28 */ stb r0, 0x828(r30) +/* 80164B50 00161AB0 7F E4 FB 78 */ mr r4, r31 +/* 80164B54 00161AB4 38 A0 00 00 */ li r5, 0 +/* 80164B58 00161AB8 38 C0 00 00 */ li r6, 0 +/* 80164B5C 00161ABC 98 1E 08 29 */ stb r0, 0x829(r30) +/* 80164B60 00161AC0 4B FF E7 45 */ bl sub_801632a4 +/* 80164B64 00161AC4 7F C3 F3 78 */ mr r3, r30 +/* 80164B68 00161AC8 7F E4 FB 78 */ mr r4, r31 +/* 80164B6C 00161ACC 38 A0 00 01 */ li r5, 1 +/* 80164B70 00161AD0 38 C0 00 00 */ li r6, 0 +/* 80164B74 00161AD4 4B FF E7 31 */ bl sub_801632a4 +/* 80164B78 00161AD8 7F C3 F3 78 */ mr r3, r30 +/* 80164B7C 00161ADC 7F E4 FB 78 */ mr r4, r31 +/* 80164B80 00161AE0 81 9E 00 00 */ lwz r12, 0(r30) +/* 80164B84 00161AE4 38 A0 00 00 */ li r5, 0 +/* 80164B88 00161AE8 81 8C 02 D4 */ lwz r12, 0x2d4(r12) +/* 80164B8C 00161AEC 7D 89 03 A6 */ mtctr r12 +/* 80164B90 00161AF0 4E 80 04 21 */ bctrl +lbl_80164B94: +/* 80164B94 00161AF4 FC 20 F8 90 */ fmr f1, f31 +/* 80164B98 00161AF8 7F C3 F3 78 */ mr r3, r30 +/* 80164B9C 00161AFC 7F E4 FB 78 */ mr r4, r31 +/* 80164BA0 00161B00 4B F1 4F 79 */ bl Think__10CPatternedFfR13CStateManager +/* 80164BA4 00161B04 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 80164BA8 00161B08 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80164BAC 00161B0C 41 82 09 14 */ beq lbl_801654C0 +/* 80164BB0 00161B10 C0 3E 05 C8 */ lfs f1, 0x5c8(r30) +/* 80164BB4 00161B14 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 80164BB8 00161B18 EC 21 F8 28 */ fsubs f1, f1, f31 +/* 80164BBC 00161B1C D0 3E 05 C8 */ stfs f1, 0x5c8(r30) +/* 80164BC0 00161B20 C0 3E 07 C4 */ lfs f1, 0x7c4(r30) +/* 80164BC4 00161B24 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80164BC8 00161B28 4C 41 13 82 */ cror 2, 1, 2 +/* 80164BCC 00161B2C 40 82 00 0C */ bne lbl_80164BD8 +/* 80164BD0 00161B30 EC 01 F8 28 */ fsubs f0, f1, f31 +/* 80164BD4 00161B34 D0 1E 07 C4 */ stfs f0, 0x7c4(r30) +lbl_80164BD8: +/* 80164BD8 00161B38 C0 3E 05 D0 */ lfs f1, 0x5d0(r30) +/* 80164BDC 00161B3C C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 80164BE0 00161B40 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80164BE4 00161B44 4C 41 13 82 */ cror 2, 1, 2 +/* 80164BE8 00161B48 40 82 00 2C */ bne lbl_80164C14 +/* 80164BEC 00161B4C 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 80164BF0 00161B50 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 80164BF4 00161B54 2C 00 00 01 */ cmpwi r0, 1 +/* 80164BF8 00161B58 40 82 00 14 */ bne lbl_80164C0C +/* 80164BFC 00161B5C C0 02 9F B4 */ lfs f0, lbl_805ABCD4@sda21(r2) +/* 80164C00 00161B60 EC 00 0F FC */ fnmsubs f0, f0, f31, f1 +/* 80164C04 00161B64 D0 1E 05 D0 */ stfs f0, 0x5d0(r30) +/* 80164C08 00161B68 48 00 00 0C */ b lbl_80164C14 +lbl_80164C0C: +/* 80164C0C 00161B6C EC 01 F8 28 */ fsubs f0, f1, f31 +/* 80164C10 00161B70 D0 1E 05 D0 */ stfs f0, 0x5d0(r30) +lbl_80164C14: +/* 80164C14 00161B74 C0 3E 06 24 */ lfs f1, 0x624(r30) +/* 80164C18 00161B78 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 80164C1C 00161B7C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80164C20 00161B80 4C 41 13 82 */ cror 2, 1, 2 +/* 80164C24 00161B84 40 82 00 0C */ bne lbl_80164C30 +/* 80164C28 00161B88 EC 01 F8 28 */ fsubs f0, f1, f31 +/* 80164C2C 00161B8C D0 1E 06 24 */ stfs f0, 0x624(r30) +lbl_80164C30: +/* 80164C30 00161B90 C0 3E 06 44 */ lfs f1, 0x644(r30) +/* 80164C34 00161B94 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 80164C38 00161B98 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80164C3C 00161B9C 4C 41 13 82 */ cror 2, 1, 2 +/* 80164C40 00161BA0 40 82 00 0C */ bne lbl_80164C4C +/* 80164C44 00161BA4 EC 01 F8 28 */ fsubs f0, f1, f31 +/* 80164C48 00161BA8 D0 1E 06 44 */ stfs f0, 0x644(r30) +lbl_80164C4C: +/* 80164C4C 00161BAC 88 1E 08 28 */ lbz r0, 0x828(r30) +/* 80164C50 00161BB0 28 00 00 00 */ cmplwi r0, 0 +/* 80164C54 00161BB4 40 82 00 1C */ bne lbl_80164C70 +/* 80164C58 00161BB8 88 1E 08 29 */ lbz r0, 0x829(r30) +/* 80164C5C 00161BBC 28 00 00 00 */ cmplwi r0, 0 +/* 80164C60 00161BC0 41 82 00 38 */ beq lbl_80164C98 +/* 80164C64 00161BC4 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 80164C68 00161BC8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80164C6C 00161BCC 41 82 00 2C */ beq lbl_80164C98 +lbl_80164C70: +/* 80164C70 00161BD0 FC 20 F8 90 */ fmr f1, f31 +/* 80164C74 00161BD4 7F C3 F3 78 */ mr r3, r30 +/* 80164C78 00161BD8 7F E4 FB 78 */ mr r4, r31 +/* 80164C7C 00161BDC 4B FF EF C5 */ bl sub_80163c40 +/* 80164C80 00161BE0 7F C3 F3 78 */ mr r3, r30 +/* 80164C84 00161BE4 7F E4 FB 78 */ mr r4, r31 +/* 80164C88 00161BE8 81 9E 00 00 */ lwz r12, 0(r30) +/* 80164C8C 00161BEC 81 8C 02 D8 */ lwz r12, 0x2d8(r12) +/* 80164C90 00161BF0 7D 89 03 A6 */ mtctr r12 +/* 80164C94 00161BF4 4E 80 04 21 */ bctrl +lbl_80164C98: +/* 80164C98 00161BF8 88 1E 08 34 */ lbz r0, 0x834(r30) +/* 80164C9C 00161BFC 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80164CA0 00161C00 41 82 00 20 */ beq lbl_80164CC0 +/* 80164CA4 00161C04 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 80164CA8 00161C08 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80164CAC 00161C0C 41 82 00 14 */ beq lbl_80164CC0 +/* 80164CB0 00161C10 FC 20 F8 90 */ fmr f1, f31 +/* 80164CB4 00161C14 7F C3 F3 78 */ mr r3, r30 +/* 80164CB8 00161C18 7F E4 FB 78 */ mr r4, r31 +/* 80164CBC 00161C1C 4B FF F5 A9 */ bl sub_80164264 +lbl_80164CC0: +/* 80164CC0 00161C20 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 80164CC4 00161C24 88 1E 08 34 */ lbz r0, 0x834(r30) +/* 80164CC8 00161C28 C0 C3 00 50 */ lfs f6, 0x50(r3) +/* 80164CCC 00161C2C C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 80164CD0 00161C30 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 80164CD4 00161C34 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 80164CD8 00161C38 EC A6 00 28 */ fsubs f5, f6, f0 +/* 80164CDC 00161C3C C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 80164CE0 00161C40 C0 E3 00 60 */ lfs f7, 0x60(r3) +/* 80164CE4 00161C44 EC 61 00 28 */ fsubs f3, f1, f0 +/* 80164CE8 00161C48 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 80164CEC 00161C4C D0 21 00 DC */ stfs f1, 0xdc(r1) +/* 80164CF0 00161C50 EC 87 10 28 */ fsubs f4, f7, f2 +/* 80164CF4 00161C54 EC 05 01 72 */ fmuls f0, f5, f5 +/* 80164CF8 00161C58 D0 C1 00 E0 */ stfs f6, 0xe0(r1) +/* 80164CFC 00161C5C EC 23 00 F2 */ fmuls f1, f3, f3 +/* 80164D00 00161C60 EC 44 01 32 */ fmuls f2, f4, f4 +/* 80164D04 00161C64 D0 E1 00 E4 */ stfs f7, 0xe4(r1) +/* 80164D08 00161C68 EC 01 00 2A */ fadds f0, f1, f0 +/* 80164D0C 00161C6C D0 61 00 E8 */ stfs f3, 0xe8(r1) +/* 80164D10 00161C70 D0 A1 00 EC */ stfs f5, 0xec(r1) +/* 80164D14 00161C74 EF C2 00 2A */ fadds f30, f2, f0 +/* 80164D18 00161C78 D0 81 00 F0 */ stfs f4, 0xf0(r1) +/* 80164D1C 00161C7C 41 82 00 90 */ beq lbl_80164DAC +/* 80164D20 00161C80 C0 1E 06 0C */ lfs f0, 0x60c(r30) +/* 80164D24 00161C84 EC 00 00 32 */ fmuls f0, f0, f0 +/* 80164D28 00161C88 FC 1E 00 40 */ fcmpo cr0, f30, f0 +/* 80164D2C 00161C8C 40 80 00 80 */ bge lbl_80164DAC +/* 80164D30 00161C90 A0 1E 00 08 */ lhz r0, 8(r30) +/* 80164D34 00161C94 38 81 00 2C */ addi r4, r1, 0x2c +/* 80164D38 00161C98 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 80164D3C 00161C9C 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 80164D40 00161CA0 B0 01 00 28 */ sth r0, 0x28(r1) +/* 80164D44 00161CA4 80 63 00 00 */ lwz r3, 0(r3) +/* 80164D48 00161CA8 38 63 01 88 */ addi r3, r3, 0x188 +/* 80164D4C 00161CAC 48 05 BC 69 */ bl sub_801c09b4 +/* 80164D50 00161CB0 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 80164D54 00161CB4 80 63 00 00 */ lwz r3, 0(r3) +/* 80164D58 00161CB8 38 63 01 88 */ addi r3, r3, 0x188 +/* 80164D5C 00161CBC 48 05 BB C9 */ bl GetTotalInterference__19CStaticInterferenceCFv +/* 80164D60 00161CC0 C0 5E 06 08 */ lfs f2, 0x608(r30) +/* 80164D64 00161CC4 C0 0D 8D 18 */ lfs f0, lbl_805A78D8@sda21(r13) +/* 80164D68 00161CC8 EC 22 08 28 */ fsubs f1, f2, f1 +/* 80164D6C 00161CCC FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80164D70 00161CD0 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 80164D74 00161CD4 40 80 00 0C */ bge lbl_80164D80 +/* 80164D78 00161CD8 38 61 00 48 */ addi r3, r1, 0x48 +/* 80164D7C 00161CDC 48 00 00 08 */ b lbl_80164D84 +lbl_80164D80: +/* 80164D80 00161CE0 38 6D 8D 18 */ addi r3, r13, lbl_805A78D8@sda21 +lbl_80164D84: +/* 80164D84 00161CE4 A0 1E 00 08 */ lhz r0, 8(r30) +/* 80164D88 00161CE8 38 81 00 24 */ addi r4, r1, 0x24 +/* 80164D8C 00161CEC C0 23 00 00 */ lfs f1, 0(r3) +/* 80164D90 00161CF0 C0 42 9F 8C */ lfs f2, lbl_805ABCAC@sda21(r2) +/* 80164D94 00161CF4 B0 01 00 24 */ sth r0, 0x24(r1) +/* 80164D98 00161CF8 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 80164D9C 00161CFC B0 01 00 20 */ sth r0, 0x20(r1) +/* 80164DA0 00161D00 80 63 00 00 */ lwz r3, 0(r3) +/* 80164DA4 00161D04 38 63 01 88 */ addi r3, r3, 0x188 +/* 80164DA8 00161D08 48 05 BD 91 */ bl AddSource__19CStaticInterferenceF9TUniqueId +lbl_80164DAC: +/* 80164DAC 00161D0C 88 1E 08 34 */ lbz r0, 0x834(r30) +/* 80164DB0 00161D10 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 80164DB4 00161D14 40 82 00 90 */ bne lbl_80164E44 +/* 80164DB8 00161D18 C0 1E 06 14 */ lfs f0, 0x614(r30) +/* 80164DBC 00161D1C EC 00 00 32 */ fmuls f0, f0, f0 +/* 80164DC0 00161D20 FC 1E 00 40 */ fcmpo cr0, f30, f0 +/* 80164DC4 00161D24 40 80 00 80 */ bge lbl_80164E44 +/* 80164DC8 00161D28 A0 1E 00 08 */ lhz r0, 8(r30) +/* 80164DCC 00161D2C 38 81 00 1C */ addi r4, r1, 0x1c +/* 80164DD0 00161D30 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 80164DD4 00161D34 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 80164DD8 00161D38 B0 01 00 18 */ sth r0, 0x18(r1) +/* 80164DDC 00161D3C 80 63 00 00 */ lwz r3, 0(r3) +/* 80164DE0 00161D40 38 63 01 88 */ addi r3, r3, 0x188 +/* 80164DE4 00161D44 48 05 BB D1 */ bl sub_801c09b4 +/* 80164DE8 00161D48 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 80164DEC 00161D4C 80 63 00 00 */ lwz r3, 0(r3) +/* 80164DF0 00161D50 38 63 01 88 */ addi r3, r3, 0x188 +/* 80164DF4 00161D54 48 05 BB 31 */ bl GetTotalInterference__19CStaticInterferenceCFv +/* 80164DF8 00161D58 C0 5E 06 10 */ lfs f2, 0x610(r30) +/* 80164DFC 00161D5C C0 0D 8D 1C */ lfs f0, lbl_805A78DC@sda21(r13) +/* 80164E00 00161D60 EC 22 08 28 */ fsubs f1, f2, f1 +/* 80164E04 00161D64 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80164E08 00161D68 D0 21 00 44 */ stfs f1, 0x44(r1) +/* 80164E0C 00161D6C 40 80 00 0C */ bge lbl_80164E18 +/* 80164E10 00161D70 38 61 00 44 */ addi r3, r1, 0x44 +/* 80164E14 00161D74 48 00 00 08 */ b lbl_80164E1C +lbl_80164E18: +/* 80164E18 00161D78 38 6D 8D 1C */ addi r3, r13, lbl_805A78DC@sda21 +lbl_80164E1C: +/* 80164E1C 00161D7C A0 1E 00 08 */ lhz r0, 8(r30) +/* 80164E20 00161D80 38 81 00 14 */ addi r4, r1, 0x14 +/* 80164E24 00161D84 C0 23 00 00 */ lfs f1, 0(r3) +/* 80164E28 00161D88 C0 42 9F 8C */ lfs f2, lbl_805ABCAC@sda21(r2) +/* 80164E2C 00161D8C B0 01 00 14 */ sth r0, 0x14(r1) +/* 80164E30 00161D90 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 80164E34 00161D94 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80164E38 00161D98 80 63 00 00 */ lwz r3, 0(r3) +/* 80164E3C 00161D9C 38 63 01 88 */ addi r3, r3, 0x188 +/* 80164E40 00161DA0 48 05 BC F9 */ bl AddSource__19CStaticInterferenceF9TUniqueId +lbl_80164E44: +/* 80164E44 00161DA4 88 1E 08 34 */ lbz r0, 0x834(r30) +/* 80164E48 00161DA8 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 80164E4C 00161DAC 40 82 00 50 */ bne lbl_80164E9C +/* 80164E50 00161DB0 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 80164E54 00161DB4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80164E58 00161DB8 41 82 00 44 */ beq lbl_80164E9C +/* 80164E5C 00161DBC 88 1E 08 35 */ lbz r0, 0x835(r30) +/* 80164E60 00161DC0 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80164E64 00161DC4 40 82 00 38 */ bne lbl_80164E9C +/* 80164E68 00161DC8 C0 3E 05 E0 */ lfs f1, 0x5e0(r30) +/* 80164E6C 00161DCC C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 80164E70 00161DD0 EC 21 F8 28 */ fsubs f1, f1, f31 +/* 80164E74 00161DD4 D0 3E 05 E0 */ stfs f1, 0x5e0(r30) +/* 80164E78 00161DD8 C0 3E 05 E0 */ lfs f1, 0x5e0(r30) +/* 80164E7C 00161DDC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80164E80 00161DE0 4C 40 13 82 */ cror 2, 0, 2 +/* 80164E84 00161DE4 40 82 00 18 */ bne lbl_80164E9C +/* 80164E88 00161DE8 7F C3 F3 78 */ mr r3, r30 +/* 80164E8C 00161DEC 7F E4 FB 78 */ mr r4, r31 +/* 80164E90 00161DF0 4B FF E5 19 */ bl sub_801633a8 +/* 80164E94 00161DF4 C0 02 9F C0 */ lfs f0, lbl_805ABCE0@sda21(r2) +/* 80164E98 00161DF8 D0 1E 05 E0 */ stfs f0, 0x5e0(r30) +lbl_80164E9C: +/* 80164E9C 00161DFC 7F C3 F3 78 */ mr r3, r30 +/* 80164EA0 00161E00 7F E4 FB 78 */ mr r4, r31 +/* 80164EA4 00161E04 81 9E 00 00 */ lwz r12, 0(r30) +/* 80164EA8 00161E08 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80164EAC 00161E0C 7D 89 03 A6 */ mtctr r12 +/* 80164EB0 00161E10 4E 80 04 21 */ bctrl +/* 80164EB4 00161E14 C0 5E 06 00 */ lfs f2, 0x600(r30) +/* 80164EB8 00161E18 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 80164EBC 00161E1C C0 9E 06 04 */ lfs f4, 0x604(r30) +/* 80164EC0 00161E20 EC 22 00 28 */ fsubs f1, f2, f0 +/* 80164EC4 00161E24 C0 63 00 00 */ lfs f3, 0(r3) +/* 80164EC8 00161E28 C0 02 9F 90 */ lfs f0, lbl_805ABCB0@sda21(r2) +/* 80164ECC 00161E2C EC 64 18 28 */ fsubs f3, f4, f3 +/* 80164ED0 00161E30 FC 20 0A 10 */ fabs f1, f1 +/* 80164ED4 00161E34 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80164ED8 00161E38 41 80 00 28 */ blt lbl_80164F00 +/* 80164EDC 00161E3C EC 03 10 24 */ fdivs f0, f3, f2 +/* 80164EE0 00161E40 C0 3E 05 D0 */ lfs f1, 0x5d0(r30) +/* 80164EE4 00161E44 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80164EE8 00161E48 D0 1E 05 D0 */ stfs f0, 0x5d0(r30) +/* 80164EEC 00161E4C C0 1E 06 00 */ lfs f0, 0x600(r30) +/* 80164EF0 00161E50 C0 3E 06 24 */ lfs f1, 0x624(r30) +/* 80164EF4 00161E54 EC 03 00 24 */ fdivs f0, f3, f0 +/* 80164EF8 00161E58 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80164EFC 00161E5C D0 1E 06 24 */ stfs f0, 0x624(r30) +lbl_80164F00: +/* 80164F00 00161E60 7F C3 F3 78 */ mr r3, r30 +/* 80164F04 00161E64 7F E4 FB 78 */ mr r4, r31 +/* 80164F08 00161E68 81 9E 00 00 */ lwz r12, 0(r30) +/* 80164F0C 00161E6C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80164F10 00161E70 7D 89 03 A6 */ mtctr r12 +/* 80164F14 00161E74 4E 80 04 21 */ bctrl +/* 80164F18 00161E78 C0 03 00 00 */ lfs f0, 0(r3) +/* 80164F1C 00161E7C D0 1E 06 04 */ stfs f0, 0x604(r30) +/* 80164F20 00161E80 80 1E 03 FC */ lwz r0, 0x3fc(r30) +/* 80164F24 00161E84 2C 00 00 01 */ cmpwi r0, 1 +/* 80164F28 00161E88 40 82 01 44 */ bne lbl_8016506C +/* 80164F2C 00161E8C 88 1E 08 34 */ lbz r0, 0x834(r30) +/* 80164F30 00161E90 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 80164F34 00161E94 41 82 00 38 */ beq lbl_80164F6C +/* 80164F38 00161E98 C0 42 9F B4 */ lfs f2, lbl_805ABCD4@sda21(r2) +/* 80164F3C 00161E9C C0 3E 05 DC */ lfs f1, 0x5dc(r30) +/* 80164F40 00161EA0 C0 0D 8D 20 */ lfs f0, lbl_805A78E0@sda21(r13) +/* 80164F44 00161EA4 EC 22 0F FA */ fmadds f1, f2, f31, f1 +/* 80164F48 00161EA8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80164F4C 00161EAC D0 21 00 40 */ stfs f1, 0x40(r1) +/* 80164F50 00161EB0 40 80 00 0C */ bge lbl_80164F5C +/* 80164F54 00161EB4 38 61 00 40 */ addi r3, r1, 0x40 +/* 80164F58 00161EB8 48 00 00 08 */ b lbl_80164F60 +lbl_80164F5C: +/* 80164F5C 00161EBC 38 6D 8D 20 */ addi r3, r13, lbl_805A78E0@sda21 +lbl_80164F60: +/* 80164F60 00161EC0 C0 03 00 00 */ lfs f0, 0(r3) +/* 80164F64 00161EC4 D0 1E 05 DC */ stfs f0, 0x5dc(r30) +/* 80164F68 00161EC8 48 00 00 34 */ b lbl_80164F9C +lbl_80164F6C: +/* 80164F6C 00161ECC C0 42 9F B4 */ lfs f2, lbl_805ABCD4@sda21(r2) +/* 80164F70 00161ED0 C0 3E 05 DC */ lfs f1, 0x5dc(r30) +/* 80164F74 00161ED4 C0 0D 8D 24 */ lfs f0, lbl_805A78E4@sda21(r13) +/* 80164F78 00161ED8 EC 22 0F FC */ fnmsubs f1, f2, f31, f1 +/* 80164F7C 00161EDC FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80164F80 00161EE0 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 80164F84 00161EE4 40 80 00 0C */ bge lbl_80164F90 +/* 80164F88 00161EE8 38 61 00 3C */ addi r3, r1, 0x3c +/* 80164F8C 00161EEC 48 00 00 08 */ b lbl_80164F94 +lbl_80164F90: +/* 80164F90 00161EF0 38 6D 8D 24 */ addi r3, r13, lbl_805A78E4@sda21 +lbl_80164F94: +/* 80164F94 00161EF4 C0 03 00 00 */ lfs f0, 0(r3) +/* 80164F98 00161EF8 D0 1E 05 DC */ stfs f0, 0x5dc(r30) +lbl_80164F9C: +/* 80164F9C 00161EFC C0 3E 05 E8 */ lfs f1, 0x5e8(r30) +/* 80164FA0 00161F00 C0 0D 8D 28 */ lfs f0, lbl_805A78E8@sda21(r13) +/* 80164FA4 00161F04 EC 21 F8 28 */ fsubs f1, f1, f31 +/* 80164FA8 00161F08 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80164FAC 00161F0C D0 21 00 38 */ stfs f1, 0x38(r1) +/* 80164FB0 00161F10 40 80 00 0C */ bge lbl_80164FBC +/* 80164FB4 00161F14 38 61 00 38 */ addi r3, r1, 0x38 +/* 80164FB8 00161F18 48 00 00 08 */ b lbl_80164FC0 +lbl_80164FBC: +/* 80164FBC 00161F1C 38 6D 8D 28 */ addi r3, r13, lbl_805A78E8@sda21 +lbl_80164FC0: +/* 80164FC0 00161F20 C0 03 00 00 */ lfs f0, 0(r3) +/* 80164FC4 00161F24 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 80164FC8 00161F28 D0 1E 05 E8 */ stfs f0, 0x5e8(r30) +/* 80164FCC 00161F2C C0 02 9F 90 */ lfs f0, lbl_805ABCB0@sda21(r2) +/* 80164FD0 00161F30 C0 5E 05 DC */ lfs f2, 0x5dc(r30) +/* 80164FD4 00161F34 EC 22 08 28 */ fsubs f1, f2, f1 +/* 80164FD8 00161F38 FC 20 0A 10 */ fabs f1, f1 +/* 80164FDC 00161F3C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80164FE0 00161F40 41 80 00 68 */ blt lbl_80165048 +/* 80164FE4 00161F44 80 1E 07 D0 */ lwz r0, 0x7d0(r30) +/* 80164FE8 00161F48 28 00 00 00 */ cmplwi r0, 0 +/* 80164FEC 00161F4C 40 82 00 80 */ bne lbl_8016506C +/* 80164FF0 00161F50 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 80164FF4 00161F54 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80164FF8 00161F58 41 82 00 74 */ beq lbl_8016506C +/* 80164FFC 00161F5C 81 5E 00 04 */ lwz r10, 4(r30) +/* 80165000 00161F60 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80165004 00161F64 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 80165008 00161F68 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 8016500C 00161F6C C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 80165010 00161F70 38 61 00 34 */ addi r3, r1, 0x34 +/* 80165014 00161F74 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 80165018 00161F78 38 A1 00 D0 */ addi r5, r1, 0xd0 +/* 8016501C 00161F7C A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 80165020 00161F80 38 80 00 DD */ li r4, 0xdd +/* 80165024 00161F84 D0 01 00 D0 */ stfs f0, 0xd0(r1) +/* 80165028 00161F88 38 E0 00 01 */ li r7, 1 +/* 8016502C 00161F8C 39 00 00 01 */ li r8, 1 +/* 80165030 00161F90 D0 21 00 D4 */ stfs f1, 0xd4(r1) +/* 80165034 00161F94 D0 41 00 D8 */ stfs f2, 0xd8(r1) +/* 80165038 00161F98 48 18 52 79 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 8016503C 00161F9C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80165040 00161FA0 90 1E 07 D0 */ stw r0, 0x7d0(r30) +/* 80165044 00161FA4 48 00 00 28 */ b lbl_8016506C +lbl_80165048: +/* 80165048 00161FA8 80 1E 07 D0 */ lwz r0, 0x7d0(r30) +/* 8016504C 00161FAC 28 00 00 00 */ cmplwi r0, 0 +/* 80165050 00161FB0 41 82 00 1C */ beq lbl_8016506C +/* 80165054 00161FB4 80 1E 07 D0 */ lwz r0, 0x7d0(r30) +/* 80165058 00161FB8 38 61 00 30 */ addi r3, r1, 0x30 +/* 8016505C 00161FBC 90 01 00 30 */ stw r0, 0x30(r1) +/* 80165060 00161FC0 48 18 4E 25 */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle +/* 80165064 00161FC4 38 00 00 00 */ li r0, 0 +/* 80165068 00161FC8 90 1E 07 D0 */ stw r0, 0x7d0(r30) +lbl_8016506C: +/* 8016506C 00161FCC FC 20 F8 90 */ fmr f1, f31 +/* 80165070 00161FD0 7F C3 F3 78 */ mr r3, r30 +/* 80165074 00161FD4 7F E4 FB 78 */ mr r4, r31 +/* 80165078 00161FD8 4B FF A1 E5 */ bl sub_8015f25c +/* 8016507C 00161FDC FC 20 F8 90 */ fmr f1, f31 +/* 80165080 00161FE0 7F C3 F3 78 */ mr r3, r30 +/* 80165084 00161FE4 4B FF A0 D5 */ bl sub_8015f158 +/* 80165088 00161FE8 88 1E 08 35 */ lbz r0, 0x835(r30) +/* 8016508C 00161FEC 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80165090 00161FF0 40 82 00 48 */ bne lbl_801650D8 +/* 80165094 00161FF4 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 80165098 00161FF8 FC 20 F8 90 */ fmr f1, f31 +/* 8016509C 00161FFC C0 02 A0 0C */ lfs f0, lbl_805ABD2C@sda21(r2) +/* 801650A0 00162000 7F E3 FB 78 */ mr r3, r31 +/* 801650A4 00162004 C0 85 00 04 */ lfs f4, 4(r5) +/* 801650A8 00162008 7F C4 F3 78 */ mr r4, r30 +/* 801650AC 0016200C C0 45 00 00 */ lfs f2, 0(r5) +/* 801650B0 00162010 C0 A5 00 08 */ lfs f5, 8(r5) +/* 801650B4 00162014 EC 60 01 32 */ fmuls f3, f0, f4 +/* 801650B8 00162018 D0 41 00 C4 */ stfs f2, 0xc4(r1) +/* 801650BC 0016201C 38 A0 00 08 */ li r5, 8 +/* 801650C0 00162020 C0 42 9F 78 */ lfs f2, lbl_805ABC98@sda21(r2) +/* 801650C4 00162024 D0 81 00 C8 */ stfs f4, 0xc8(r1) +/* 801650C8 00162028 C0 82 A0 10 */ lfs f4, lbl_805ABD30@sda21(r2) +/* 801650CC 0016202C D0 A1 00 CC */ stfs f5, 0xcc(r1) +/* 801650D0 00162030 C0 A2 9F 80 */ lfs f5, lbl_805ABCA0@sda21(r2) +/* 801650D4 00162034 48 01 AA B1 */ bl sub_8017fb84 +lbl_801650D8: +/* 801650D8 00162038 C0 3E 06 6C */ lfs f1, 0x66c(r30) +/* 801650DC 0016203C C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 801650E0 00162040 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801650E4 00162044 4C 40 13 82 */ cror 2, 0, 2 +/* 801650E8 00162048 40 82 00 7C */ bne lbl_80165164 +/* 801650EC 0016204C 80 AD 8D 2C */ lwz r5, lbl_805A78EC@sda21(r13) +/* 801650F0 00162050 38 60 00 00 */ li r3, 0 +/* 801650F4 00162054 38 80 00 01 */ li r4, 1 +/* 801650F8 00162058 48 22 4D FD */ bl __shl2i +/* 801650FC 0016205C 39 00 00 00 */ li r8, 0 +/* 80165100 00162060 38 00 00 01 */ li r0, 1 +/* 80165104 00162064 90 81 01 8C */ stw r4, 0x18c(r1) +/* 80165108 00162068 3C 80 80 5A */ lis r4, lbl_805A6700@ha +/* 8016510C 0016206C 38 C4 67 00 */ addi r6, r4, lbl_805A6700@l +/* 80165110 00162070 C0 22 9F EC */ lfs f1, lbl_805ABD0C@sda21(r2) +/* 80165114 00162074 90 61 01 88 */ stw r3, 0x188(r1) +/* 80165118 00162078 7F E4 FB 78 */ mr r4, r31 +/* 8016511C 0016207C 38 61 01 B8 */ addi r3, r1, 0x1b8 +/* 80165120 00162080 38 A1 00 B8 */ addi r5, r1, 0xb8 +/* 80165124 00162084 91 01 01 94 */ stw r8, 0x194(r1) +/* 80165128 00162088 38 E1 01 88 */ addi r7, r1, 0x188 +/* 8016512C 0016208C 91 01 01 90 */ stw r8, 0x190(r1) +/* 80165130 00162090 90 01 01 98 */ stw r0, 0x198(r1) +/* 80165134 00162094 C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 80165138 00162098 C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 8016513C 0016209C C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 80165140 001620A0 D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 80165144 001620A4 D0 41 00 BC */ stfs f2, 0xbc(r1) +/* 80165148 001620A8 D0 61 00 C0 */ stfs f3, 0xc0(r1) +/* 8016514C 001620AC 4B EE 7E 4D */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 80165150 001620B0 C0 21 01 B8 */ lfs f1, 0x1b8(r1) +/* 80165154 001620B4 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 80165158 001620B8 D0 3E 06 68 */ stfs f1, 0x668(r30) +/* 8016515C 001620BC D0 1E 06 6C */ stfs f0, 0x66c(r30) +/* 80165160 001620C0 48 00 00 0C */ b lbl_8016516C +lbl_80165164: +/* 80165164 001620C4 EC 01 F8 28 */ fsubs f0, f1, f31 +/* 80165168 001620C8 D0 1E 06 6C */ stfs f0, 0x66c(r30) +lbl_8016516C: +/* 8016516C 001620CC 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 80165170 001620D0 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80165174 001620D4 41 82 02 88 */ beq lbl_801653FC +/* 80165178 001620D8 88 1E 08 35 */ lbz r0, 0x835(r30) +/* 8016517C 001620DC 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80165180 001620E0 41 82 02 7C */ beq lbl_801653FC +/* 80165184 001620E4 38 00 00 00 */ li r0, 0 +/* 80165188 001620E8 7F C4 F3 78 */ mr r4, r30 +/* 8016518C 001620EC 90 01 01 E8 */ stw r0, 0x1e8(r1) +/* 80165190 001620F0 38 61 01 70 */ addi r3, r1, 0x170 +/* 80165194 001620F4 4B FB 57 99 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 80165198 001620F8 3C 60 80 5A */ lis r3, lbl_805A6700@ha +/* 8016519C 001620FC C1 21 01 70 */ lfs f9, 0x170(r1) +/* 801651A0 00162100 3B A3 67 00 */ addi r29, r3, lbl_805A6700@l +/* 801651A4 00162104 C1 01 01 74 */ lfs f8, 0x174(r1) +/* 801651A8 00162108 C0 E1 01 78 */ lfs f7, 0x178(r1) +/* 801651AC 0016210C 38 61 01 A0 */ addi r3, r1, 0x1a0 +/* 801651B0 00162110 C0 C1 01 7C */ lfs f6, 0x17c(r1) +/* 801651B4 00162114 38 81 00 AC */ addi r4, r1, 0xac +/* 801651B8 00162118 C0 A1 01 80 */ lfs f5, 0x180(r1) +/* 801651BC 0016211C C0 81 01 84 */ lfs f4, 0x184(r1) +/* 801651C0 00162120 C0 62 A0 14 */ lfs f3, lbl_805ABD34@sda21(r2) +/* 801651C4 00162124 C0 5D 00 04 */ lfs f2, 4(r29) +/* 801651C8 00162128 C0 3D 00 08 */ lfs f1, 8(r29) +/* 801651CC 0016212C C0 1D 00 00 */ lfs f0, 0(r29) +/* 801651D0 00162130 ED 43 00 B2 */ fmuls f10, f3, f2 +/* 801651D4 00162134 EC 43 00 72 */ fmuls f2, f3, f1 +/* 801651D8 00162138 D1 21 01 A0 */ stfs f9, 0x1a0(r1) +/* 801651DC 0016213C EC 03 00 32 */ fmuls f0, f3, f0 +/* 801651E0 00162140 D1 01 01 A4 */ stfs f8, 0x1a4(r1) +/* 801651E4 00162144 D0 E1 01 A8 */ stfs f7, 0x1a8(r1) +/* 801651E8 00162148 D0 C1 01 AC */ stfs f6, 0x1ac(r1) +/* 801651EC 0016214C D0 A1 01 B0 */ stfs f5, 0x1b0(r1) +/* 801651F0 00162150 D0 81 01 B4 */ stfs f4, 0x1b4(r1) +/* 801651F4 00162154 C0 DE 00 60 */ lfs f6, 0x60(r30) +/* 801651F8 00162158 C0 BE 00 50 */ lfs f5, 0x50(r30) +/* 801651FC 0016215C C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 80165200 00162160 EC 66 10 2A */ fadds f3, f6, f2 +/* 80165204 00162164 EC 85 50 2A */ fadds f4, f5, f10 +/* 80165208 00162168 D0 01 00 94 */ stfs f0, 0x94(r1) +/* 8016520C 0016216C EC 01 00 2A */ fadds f0, f1, f0 +/* 80165210 00162170 D1 41 00 98 */ stfs f10, 0x98(r1) +/* 80165214 00162174 D0 41 00 9C */ stfs f2, 0x9c(r1) +/* 80165218 00162178 D0 21 00 A0 */ stfs f1, 0xa0(r1) +/* 8016521C 0016217C D0 A1 00 A4 */ stfs f5, 0xa4(r1) +/* 80165220 00162180 D0 C1 00 A8 */ stfs f6, 0xa8(r1) +/* 80165224 00162184 D0 01 00 AC */ stfs f0, 0xac(r1) +/* 80165228 00162188 D0 81 00 B0 */ stfs f4, 0xb0(r1) +/* 8016522C 0016218C D0 61 00 B4 */ stfs f3, 0xb4(r1) +/* 80165230 00162190 48 1D 28 D9 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 80165234 00162194 80 AD 8D 30 */ lwz r5, lbl_805A78F0@sda21(r13) +/* 80165238 00162198 38 60 00 00 */ li r3, 0 +/* 8016523C 0016219C 38 80 00 01 */ li r4, 1 +/* 80165240 001621A0 48 22 4C B5 */ bl __shl2i +/* 80165244 001621A4 38 A0 00 00 */ li r5, 0 +/* 80165248 001621A8 38 00 00 01 */ li r0, 1 +/* 8016524C 001621AC 90 81 01 44 */ stw r4, 0x144(r1) +/* 80165250 001621B0 7F C4 F3 78 */ mr r4, r30 +/* 80165254 001621B4 90 61 01 40 */ stw r3, 0x140(r1) +/* 80165258 001621B8 38 61 01 58 */ addi r3, r1, 0x158 +/* 8016525C 001621BC 90 A1 01 4C */ stw r5, 0x14c(r1) +/* 80165260 001621C0 90 A1 01 48 */ stw r5, 0x148(r1) +/* 80165264 001621C4 90 01 01 50 */ stw r0, 0x150(r1) +/* 80165268 001621C8 4B FB 56 C5 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 8016526C 001621CC 7F E3 FB 78 */ mr r3, r31 +/* 80165270 001621D0 7F C7 F3 78 */ mr r7, r30 +/* 80165274 001621D4 38 81 01 E8 */ addi r4, r1, 0x1e8 +/* 80165278 001621D8 38 A1 01 58 */ addi r5, r1, 0x158 +/* 8016527C 001621DC 38 C1 01 40 */ addi r6, r1, 0x140 +/* 80165280 001621E0 4B EE 74 A1 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 80165284 001621E4 3B 81 01 EC */ addi r28, r1, 0x1ec +/* 80165288 001621E8 7F 9B E3 78 */ mr r27, r28 +/* 8016528C 001621EC 48 00 01 08 */ b lbl_80165394 +lbl_80165290: +/* 80165290 001621F0 A0 1B 00 00 */ lhz r0, 0(r27) +/* 80165294 001621F4 7F E3 FB 78 */ mr r3, r31 +/* 80165298 001621F8 38 81 00 0C */ addi r4, r1, 0xc +/* 8016529C 001621FC B0 01 00 0C */ sth r0, 0xc(r1) +/* 801652A0 00162200 4B EE 73 05 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801652A4 00162204 7C 64 1B 78 */ mr r4, r3 +/* 801652A8 00162208 38 61 00 50 */ addi r3, r1, 0x50 +/* 801652AC 0016220C 4B F4 15 B5 */ bl "__ct__26TCastToPtr<12CScriptWater>FP7CEntity" +/* 801652B0 00162210 80 83 00 04 */ lwz r4, 4(r3) +/* 801652B4 00162214 28 04 00 00 */ cmplwi r4, 0 +/* 801652B8 00162218 41 82 00 D8 */ beq lbl_80165390 +/* 801652BC 0016221C C3 DE 00 60 */ lfs f30, 0x60(r30) +/* 801652C0 00162220 38 61 01 24 */ addi r3, r1, 0x124 +/* 801652C4 00162224 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 801652C8 00162228 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801652CC 0016222C D0 21 00 8C */ stfs f1, 0x8c(r1) +/* 801652D0 00162230 D0 01 00 88 */ stfs f0, 0x88(r1) +/* 801652D4 00162234 D3 C1 00 90 */ stfs f30, 0x90(r1) +/* 801652D8 00162238 4B F1 13 F5 */ bl GetTriggerBoundsWR__14CScriptTriggerCFv +/* 801652DC 0016223C C0 21 01 38 */ lfs f1, 0x138(r1) +/* 801652E0 00162240 C0 02 9F B4 */ lfs f0, lbl_805ABCD4@sda21(r2) +/* 801652E4 00162244 EC 21 F0 28 */ fsubs f1, f1, f30 +/* 801652E8 00162248 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801652EC 0016224C 40 80 00 A4 */ bge lbl_80165390 +/* 801652F0 00162250 C8 02 A0 20 */ lfd f0, lbl_805ABD40@sda21(r2) +/* 801652F4 00162254 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801652F8 00162258 40 80 00 0C */ bge lbl_80165304 +/* 801652FC 0016225C C0 62 A0 18 */ lfs f3, lbl_805ABD38@sda21(r2) +/* 80165300 00162260 48 00 00 08 */ b lbl_80165308 +lbl_80165304: +/* 80165304 00162264 C0 62 A0 14 */ lfs f3, lbl_805ABD34@sda21(r2) +lbl_80165308: +/* 80165308 00162268 3C 60 80 5A */ lis r3, lbl_805A6700@ha +/* 8016530C 0016226C C0 5D 00 04 */ lfs f2, 4(r29) +/* 80165310 00162270 C0 03 67 00 */ lfs f0, lbl_805A6700@l(r3) +/* 80165314 00162274 38 61 00 70 */ addi r3, r1, 0x70 +/* 80165318 00162278 C0 3D 00 08 */ lfs f1, 8(r29) +/* 8016531C 0016227C EC 5F 00 B2 */ fmuls f2, f31, f2 +/* 80165320 00162280 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 80165324 00162284 38 9E 00 34 */ addi r4, r30, 0x34 +/* 80165328 00162288 EC 3F 00 72 */ fmuls f1, f31, f1 +/* 8016532C 0016228C 38 A1 01 18 */ addi r5, r1, 0x118 +/* 80165330 00162290 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 80165334 00162294 EC 03 00 32 */ fmuls f0, f3, f0 +/* 80165338 00162298 EC 23 00 72 */ fmuls f1, f3, f1 +/* 8016533C 0016229C D0 41 01 1C */ stfs f2, 0x11c(r1) +/* 80165340 001622A0 D0 01 01 18 */ stfs f0, 0x118(r1) +/* 80165344 001622A4 D0 21 01 20 */ stfs f1, 0x120(r1) +/* 80165348 001622A8 48 1A D6 DD */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 8016534C 001622AC FC 20 F8 90 */ fmr f1, f31 +/* 80165350 001622B0 7F C4 F3 78 */ mr r4, r30 +/* 80165354 001622B4 38 61 00 7C */ addi r3, r1, 0x7c +/* 80165358 001622B8 38 A1 00 70 */ addi r5, r1, 0x70 +/* 8016535C 001622BC 4B FB 5C AD */ bl GetMoveToORImpulseWR__13CPhysicsActorCFRC9CVector3ff +/* 80165360 001622C0 C0 41 00 7C */ lfs f2, 0x7c(r1) +/* 80165364 001622C4 C0 21 00 80 */ lfs f1, 0x80(r1) +/* 80165368 001622C8 C0 01 00 84 */ lfs f0, 0x84(r1) +/* 8016536C 001622CC D0 41 01 0C */ stfs f2, 0x10c(r1) +/* 80165370 001622D0 D0 21 01 10 */ stfs f1, 0x110(r1) +/* 80165374 001622D4 D0 01 01 14 */ stfs f0, 0x114(r1) +/* 80165378 001622D8 4B EB 61 BD */ bl Identity__10CAxisAngleFv +/* 8016537C 001622DC 7C 65 1B 78 */ mr r5, r3 +/* 80165380 001622E0 7F C3 F3 78 */ mr r3, r30 +/* 80165384 001622E4 38 81 01 0C */ addi r4, r1, 0x10c +/* 80165388 001622E8 4B FB 70 11 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +/* 8016538C 001622EC 48 00 00 1C */ b lbl_801653A8 +lbl_80165390: +/* 80165390 001622F0 3B 7B 00 02 */ addi r27, r27, 2 +lbl_80165394: +/* 80165394 001622F4 80 01 01 E8 */ lwz r0, 0x1e8(r1) +/* 80165398 001622F8 54 00 08 3C */ slwi r0, r0, 1 +/* 8016539C 001622FC 7C 1C 02 14 */ add r0, r28, r0 +/* 801653A0 00162300 7C 1B 00 40 */ cmplw r27, r0 +/* 801653A4 00162304 41 80 FE EC */ blt lbl_80165290 +lbl_801653A8: +/* 801653A8 00162308 80 A1 01 E8 */ lwz r5, 0x1e8(r1) +/* 801653AC 0016230C 38 60 00 00 */ li r3, 0 +/* 801653B0 00162310 2C 05 00 00 */ cmpwi r5, 0 +/* 801653B4 00162314 40 81 00 40 */ ble lbl_801653F4 +/* 801653B8 00162318 2C 05 00 08 */ cmpwi r5, 8 +/* 801653BC 0016231C 38 85 FF F8 */ addi r4, r5, -8 +/* 801653C0 00162320 40 81 00 20 */ ble lbl_801653E0 +/* 801653C4 00162324 38 04 00 07 */ addi r0, r4, 7 +/* 801653C8 00162328 54 00 E8 FE */ srwi r0, r0, 3 +/* 801653CC 0016232C 7C 09 03 A6 */ mtctr r0 +/* 801653D0 00162330 2C 04 00 00 */ cmpwi r4, 0 +/* 801653D4 00162334 40 81 00 0C */ ble lbl_801653E0 +lbl_801653D8: +/* 801653D8 00162338 38 63 00 08 */ addi r3, r3, 8 +/* 801653DC 0016233C 42 00 FF FC */ bdnz lbl_801653D8 +lbl_801653E0: +/* 801653E0 00162340 7C 03 28 50 */ subf r0, r3, r5 +/* 801653E4 00162344 7C 09 03 A6 */ mtctr r0 +/* 801653E8 00162348 7C 03 28 00 */ cmpw r3, r5 +/* 801653EC 0016234C 40 80 00 08 */ bge lbl_801653F4 +lbl_801653F0: +/* 801653F0 00162350 42 00 00 00 */ bdnz lbl_801653F0 +lbl_801653F4: +/* 801653F4 00162354 38 00 00 00 */ li r0, 0 +/* 801653F8 00162358 90 01 01 E8 */ stw r0, 0x1e8(r1) +lbl_801653FC: +/* 801653FC 0016235C 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 80165400 00162360 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80165404 00162364 41 82 00 A0 */ beq lbl_801654A4 +/* 80165408 00162368 C0 3E 06 68 */ lfs f1, 0x668(r30) +/* 8016540C 0016236C C0 1E 06 64 */ lfs f0, 0x664(r30) +/* 80165410 00162370 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80165414 00162374 40 80 00 90 */ bge lbl_801654A4 +/* 80165418 00162378 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 8016541C 0016237C C0 62 9F 7C */ lfs f3, lbl_805ABC9C@sda21(r2) +/* 80165420 00162380 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 80165424 00162384 38 61 00 58 */ addi r3, r1, 0x58 +/* 80165428 00162388 C0 46 00 00 */ lfs f2, 0(r6) +/* 8016542C 0016238C 38 9E 00 34 */ addi r4, r30, 0x34 +/* 80165430 00162390 C0 26 00 04 */ lfs f1, 4(r6) +/* 80165434 00162394 38 A1 01 00 */ addi r5, r1, 0x100 +/* 80165438 00162398 C0 06 00 08 */ lfs f0, 8(r6) +/* 8016543C 0016239C EC 43 00 B2 */ fmuls f2, f3, f2 +/* 80165440 001623A0 EC 23 00 72 */ fmuls f1, f3, f1 +/* 80165444 001623A4 EC 03 00 32 */ fmuls f0, f3, f0 +/* 80165448 001623A8 EC 5F 00 B2 */ fmuls f2, f31, f2 +/* 8016544C 001623AC EC 3F 00 72 */ fmuls f1, f31, f1 +/* 80165450 001623B0 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 80165454 001623B4 D0 41 01 00 */ stfs f2, 0x100(r1) +/* 80165458 001623B8 D0 21 01 04 */ stfs f1, 0x104(r1) +/* 8016545C 001623BC D0 01 01 08 */ stfs f0, 0x108(r1) +/* 80165460 001623C0 48 1A D5 C5 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 80165464 001623C4 FC 20 F8 90 */ fmr f1, f31 +/* 80165468 001623C8 7F C4 F3 78 */ mr r4, r30 +/* 8016546C 001623CC 38 61 00 64 */ addi r3, r1, 0x64 +/* 80165470 001623D0 38 A1 00 58 */ addi r5, r1, 0x58 +/* 80165474 001623D4 4B FB 5B 95 */ bl GetMoveToORImpulseWR__13CPhysicsActorCFRC9CVector3ff +/* 80165478 001623D8 C0 41 00 64 */ lfs f2, 0x64(r1) +/* 8016547C 001623DC C0 21 00 68 */ lfs f1, 0x68(r1) +/* 80165480 001623E0 C0 01 00 6C */ lfs f0, 0x6c(r1) +/* 80165484 001623E4 D0 41 00 F4 */ stfs f2, 0xf4(r1) +/* 80165488 001623E8 D0 21 00 F8 */ stfs f1, 0xf8(r1) +/* 8016548C 001623EC D0 01 00 FC */ stfs f0, 0xfc(r1) +/* 80165490 001623F0 4B EB 60 A5 */ bl Identity__10CAxisAngleFv +/* 80165494 001623F4 7C 65 1B 78 */ mr r5, r3 +/* 80165498 001623F8 7F C3 F3 78 */ mr r3, r30 +/* 8016549C 001623FC 38 81 00 F4 */ addi r4, r1, 0xf4 +/* 801654A0 00162400 4B FB 6E F9 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +lbl_801654A4: +/* 801654A4 00162404 88 7E 04 00 */ lbz r3, 0x400(r30) +/* 801654A8 00162408 88 1E 00 E7 */ lbz r0, 0xe7(r30) +/* 801654AC 0016240C 54 64 D7 FE */ rlwinm r4, r3, 0x1a, 0x1f, 0x1f +/* 801654B0 00162410 7C 64 00 D0 */ neg r3, r4 +/* 801654B4 00162414 7C 63 23 78 */ or r3, r3, r4 +/* 801654B8 00162418 50 60 0F FE */ rlwimi r0, r3, 1, 0x1f, 0x1f +/* 801654BC 0016241C 98 1E 00 E7 */ stb r0, 0xe7(r30) +lbl_801654C0: +/* 801654C0 00162420 E3 E1 0A 28 */ psq_l f31, -1496(r1), 0, qr0 +/* 801654C4 00162424 CB E1 0A 20 */ lfd f31, 0xa20(r1) +/* 801654C8 00162428 E3 C1 0A 18 */ psq_l f30, -1512(r1), 0, qr0 +/* 801654CC 0016242C CB C1 0A 10 */ lfd f30, 0xa10(r1) +/* 801654D0 00162430 BB 61 09 FC */ lmw r27, 0x9fc(r1) +/* 801654D4 00162434 80 01 0A 34 */ lwz r0, 0xa34(r1) +/* 801654D8 00162438 7C 08 03 A6 */ mtlr r0 +/* 801654DC 0016243C 38 21 0A 30 */ addi r1, r1, 0xa30 +/* 801654E0 00162440 4E 80 00 20 */ blr + +.global GetDamageVulnerability__6CDroneCFRC9CVector3fRC9CVector3fRC11CDamageInfo +GetDamageVulnerability__6CDroneCFRC9CVector3fRC9CVector3fRC11CDamageInfo: +/* 801654E4 00162444 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801654E8 00162448 7C 08 02 A6 */ mflr r0 +/* 801654EC 0016244C 90 01 00 24 */ stw r0, 0x24(r1) +/* 801654F0 00162450 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801654F4 00162454 7C 7F 1B 78 */ mr r31, r3 +/* 801654F8 00162458 80 03 03 FC */ lwz r0, 0x3fc(r3) +/* 801654FC 0016245C 2C 00 00 01 */ cmpwi r0, 1 +/* 80165500 00162460 40 82 00 4C */ bne lbl_8016554C +/* 80165504 00162464 C0 45 00 08 */ lfs f2, 8(r5) +/* 80165508 00162468 38 81 00 08 */ addi r4, r1, 8 +/* 8016550C 0016246C C0 25 00 04 */ lfs f1, 4(r5) +/* 80165510 00162470 C0 05 00 00 */ lfs f0, 0(r5) +/* 80165514 00162474 FC 40 10 50 */ fneg f2, f2 +/* 80165518 00162478 FC 20 08 50 */ fneg f1, f1 +/* 8016551C 0016247C FC 00 00 50 */ fneg f0, f0 +/* 80165520 00162480 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 80165524 00162484 D0 01 00 08 */ stfs f0, 8(r1) +/* 80165528 00162488 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 8016552C 0016248C 48 00 00 C1 */ bl sub_801655ec +/* 80165530 00162490 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80165534 00162494 41 82 00 18 */ beq lbl_8016554C +/* 80165538 00162498 C0 02 9F 7C */ lfs f0, lbl_805ABC9C@sda21(r2) +/* 8016553C 0016249C 3C 60 80 57 */ lis r3, lbl_8056D780@ha +/* 80165540 001624A0 38 63 D7 80 */ addi r3, r3, lbl_8056D780@l +/* 80165544 001624A4 D0 1F 05 E8 */ stfs f0, 0x5e8(r31) +/* 80165548 001624A8 48 00 00 0C */ b lbl_80165554 +lbl_8016554C: +/* 8016554C 001624AC 7F E3 FB 78 */ mr r3, r31 +/* 80165550 001624B0 4B F3 D8 21 */ bl GetDamageVulnerability__3CAiCFv +lbl_80165554: +/* 80165554 001624B4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80165558 001624B8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8016555C 001624BC 7C 08 03 A6 */ mtlr r0 +/* 80165560 001624C0 38 21 00 20 */ addi r1, r1, 0x20 +/* 80165564 001624C4 4E 80 00 20 */ blr + +.global GetCollisionResponseType__6CDroneCFRC9CVector3fRC9CVector3fRC11CWeaponModei +GetCollisionResponseType__6CDroneCFRC9CVector3fRC9CVector3fRC11CWeaponModei: +/* 80165568 001624C8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8016556C 001624CC 7C 08 02 A6 */ mflr r0 +/* 80165570 001624D0 90 01 00 24 */ stw r0, 0x24(r1) +/* 80165574 001624D4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80165578 001624D8 3B E0 00 24 */ li r31, 0x24 +/* 8016557C 001624DC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80165580 001624E0 7C 7E 1B 78 */ mr r30, r3 +/* 80165584 001624E4 80 03 03 FC */ lwz r0, 0x3fc(r3) +/* 80165588 001624E8 2C 00 00 01 */ cmpwi r0, 1 +/* 8016558C 001624EC 40 82 00 44 */ bne lbl_801655D0 +/* 80165590 001624F0 C0 45 00 08 */ lfs f2, 8(r5) +/* 80165594 001624F4 38 81 00 08 */ addi r4, r1, 8 +/* 80165598 001624F8 C0 25 00 04 */ lfs f1, 4(r5) +/* 8016559C 001624FC C0 05 00 00 */ lfs f0, 0(r5) +/* 801655A0 00162500 FC 40 10 50 */ fneg f2, f2 +/* 801655A4 00162504 FC 20 08 50 */ fneg f1, f1 +/* 801655A8 00162508 FC 00 00 50 */ fneg f0, f0 +/* 801655AC 0016250C D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801655B0 00162510 D0 01 00 08 */ stfs f0, 8(r1) +/* 801655B4 00162514 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801655B8 00162518 48 00 00 35 */ bl sub_801655ec +/* 801655BC 0016251C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801655C0 00162520 41 82 00 10 */ beq lbl_801655D0 +/* 801655C4 00162524 C0 02 9F 7C */ lfs f0, lbl_805ABC9C@sda21(r2) +/* 801655C8 00162528 3B E0 00 56 */ li r31, 0x56 +/* 801655CC 0016252C D0 1E 05 E8 */ stfs f0, 0x5e8(r30) +lbl_801655D0: +/* 801655D0 00162530 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801655D4 00162534 7F E3 FB 78 */ mr r3, r31 +/* 801655D8 00162538 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801655DC 0016253C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801655E0 00162540 7C 08 03 A6 */ mtlr r0 +/* 801655E4 00162544 38 21 00 20 */ addi r1, r1, 0x20 +/* 801655E8 00162548 4E 80 00 20 */ blr + +.global sub_801655ec +sub_801655ec: +/* 801655EC 0016254C 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 801655F0 00162550 7C 08 02 A6 */ mflr r0 +/* 801655F4 00162554 90 01 00 74 */ stw r0, 0x74(r1) +/* 801655F8 00162558 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 801655FC 0016255C 7C 9F 23 78 */ mr r31, r4 +/* 80165600 00162560 93 C1 00 68 */ stw r30, 0x68(r1) +/* 80165604 00162564 7C 7E 1B 78 */ mr r30, r3 +/* 80165608 00162568 80 03 03 FC */ lwz r0, 0x3fc(r3) +/* 8016560C 0016256C 2C 00 00 01 */ cmpwi r0, 1 +/* 80165610 00162570 41 82 00 0C */ beq lbl_8016561C +/* 80165614 00162574 38 60 00 00 */ li r3, 0 +/* 80165618 00162578 48 00 00 A4 */ b lbl_801656BC +lbl_8016561C: +/* 8016561C 0016257C C0 5E 05 DC */ lfs f2, 0x5dc(r30) +/* 80165620 00162580 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 80165624 00162584 C0 02 9F 90 */ lfs f0, lbl_805ABCB0@sda21(r2) +/* 80165628 00162588 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8016562C 0016258C FC 20 0A 10 */ fabs f1, f1 +/* 80165630 00162590 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80165634 00162594 40 80 00 0C */ bge lbl_80165640 +/* 80165638 00162598 38 60 00 00 */ li r3, 0 +/* 8016563C 0016259C 48 00 00 80 */ b lbl_801656BC +lbl_80165640: +/* 80165640 001625A0 3C 80 80 3D */ lis r4, lbl_803D0398@ha +/* 80165644 001625A4 38 61 00 14 */ addi r3, r1, 0x14 +/* 80165648 001625A8 38 84 03 98 */ addi r4, r4, lbl_803D0398@l +/* 8016564C 001625AC 38 84 00 2A */ addi r4, r4, 0x2a +/* 80165650 001625B0 4B E9 F6 69 */ bl string_l__4rstlFPCc +/* 80165654 001625B4 7F E4 FB 78 */ mr r4, r31 +/* 80165658 001625B8 38 61 00 08 */ addi r3, r1, 8 +/* 8016565C 001625BC 48 1A F1 F5 */ bl AsNormalized__9CVector3fCFv +/* 80165660 001625C0 7F C4 F3 78 */ mr r4, r30 +/* 80165664 001625C4 38 61 00 30 */ addi r3, r1, 0x30 +/* 80165668 001625C8 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8016566C 001625CC 4B F1 33 0D */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80165670 001625D0 C0 81 00 44 */ lfs f4, 0x44(r1) +/* 80165674 001625D4 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 80165678 001625D8 C0 61 00 34 */ lfs f3, 0x34(r1) +/* 8016567C 001625DC EC 04 00 32 */ fmuls f0, f4, f0 +/* 80165680 001625E0 C0 21 00 08 */ lfs f1, 8(r1) +/* 80165684 001625E4 C0 A1 00 54 */ lfs f5, 0x54(r1) +/* 80165688 001625E8 C0 41 00 10 */ lfs f2, 0x10(r1) +/* 8016568C 001625EC EC 23 00 7A */ fmadds f1, f3, f1, f0 +/* 80165690 001625F0 C0 02 A0 28 */ lfs f0, lbl_805ABD48@sda21(r2) +/* 80165694 001625F4 D0 61 00 24 */ stfs f3, 0x24(r1) +/* 80165698 001625F8 EC 25 08 BA */ fmadds f1, f5, f2, f1 +/* 8016569C 001625FC D0 81 00 28 */ stfs f4, 0x28(r1) +/* 801656A0 00162600 D0 A1 00 2C */ stfs f5, 0x2c(r1) +/* 801656A4 00162604 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801656A8 00162608 7C 00 00 26 */ mfcr r0 +/* 801656AC 0016260C 38 61 00 14 */ addi r3, r1, 0x14 +/* 801656B0 00162610 54 1F 17 FE */ rlwinm r31, r0, 2, 0x1f, 0x1f +/* 801656B4 00162614 48 1D 84 2D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801656B8 00162618 7F E3 FB 78 */ mr r3, r31 +lbl_801656BC: +/* 801656BC 0016261C 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801656C0 00162620 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 801656C4 00162624 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 801656C8 00162628 7C 08 03 A6 */ mtlr r0 +/* 801656CC 0016262C 38 21 00 70 */ addi r1, r1, 0x70 +/* 801656D0 00162630 4E 80 00 20 */ blr + +.global sub_801656d4 +sub_801656d4: +/* 801656D4 00162634 94 21 F6 F0 */ stwu r1, -0x910(r1) +/* 801656D8 00162638 7C 08 02 A6 */ mflr r0 +/* 801656DC 0016263C 90 01 09 14 */ stw r0, 0x914(r1) +/* 801656E0 00162640 BF 61 08 FC */ stmw r27, 0x8fc(r1) +/* 801656E4 00162644 7C 7D 1B 78 */ mr r29, r3 +/* 801656E8 00162648 7C 9E 23 78 */ mr r30, r4 +/* 801656EC 0016264C 7C BF 2B 78 */ mr r31, r5 +/* 801656F0 00162650 88 0D A4 20 */ lbz r0, lbl_805A8FE0@sda21(r13) +/* 801656F4 00162654 7C 00 07 75 */ extsb. r0, r0 +/* 801656F8 00162658 40 82 00 58 */ bne lbl_80165750 +/* 801656FC 0016265C 80 AD 8D 10 */ lwz r5, lbl_805A78D0@sda21(r13) +/* 80165700 00162660 38 60 00 00 */ li r3, 0 +/* 80165704 00162664 38 80 00 01 */ li r4, 1 +/* 80165708 00162668 48 22 47 ED */ bl __shl2i +/* 8016570C 0016266C 80 AD 8D 0C */ lwz r5, lbl_805A78CC@sda21(r13) +/* 80165710 00162670 7C 9B 23 78 */ mr r27, r4 +/* 80165714 00162674 7C 7C 1B 78 */ mr r28, r3 +/* 80165718 00162678 38 60 00 00 */ li r3, 0 +/* 8016571C 0016267C 38 80 00 01 */ li r4, 1 +/* 80165720 00162680 48 22 47 D5 */ bl __shl2i +/* 80165724 00162684 3C A0 80 47 */ lis r5, lbl_8046C848@ha +/* 80165728 00162688 38 C0 00 03 */ li r6, 3 +/* 8016572C 0016268C 38 A5 C8 48 */ addi r5, r5, lbl_8046C848@l +/* 80165730 00162690 38 00 00 01 */ li r0, 1 +/* 80165734 00162694 90 C1 00 80 */ stw r6, 0x80(r1) +/* 80165738 00162698 90 85 00 04 */ stw r4, 4(r5) +/* 8016573C 0016269C 90 65 00 00 */ stw r3, 0(r5) +/* 80165740 001626A0 93 65 00 0C */ stw r27, 0xc(r5) +/* 80165744 001626A4 93 85 00 08 */ stw r28, 8(r5) +/* 80165748 001626A8 90 C5 00 10 */ stw r6, 0x10(r5) +/* 8016574C 001626AC 98 0D A4 20 */ stb r0, lbl_805A8FE0@sda21(r13) +lbl_80165750: +/* 80165750 001626B0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80165754 001626B4 38 A0 00 00 */ li r5, 0 +/* 80165758 001626B8 C0 DE 00 24 */ lfs f6, 0x24(r30) +/* 8016575C 001626BC 3C 60 80 47 */ lis r3, lbl_8046C848@ha +/* 80165760 001626C0 C0 BE 00 14 */ lfs f5, 0x14(r30) +/* 80165764 001626C4 38 E3 C8 48 */ addi r7, r3, lbl_8046C848@l +/* 80165768 001626C8 C0 5E 00 04 */ lfs f2, 4(r30) +/* 8016576C 001626CC 7F E3 FB 78 */ mr r3, r31 +/* 80165770 001626D0 C0 9E 00 2C */ lfs f4, 0x2c(r30) +/* 80165774 001626D4 7F A8 EB 78 */ mr r8, r29 +/* 80165778 001626D8 C0 7E 00 1C */ lfs f3, 0x1c(r30) +/* 8016577C 001626DC 38 81 00 E8 */ addi r4, r1, 0xe8 +/* 80165780 001626E0 C0 1E 00 0C */ lfs f0, 0xc(r30) +/* 80165784 001626E4 38 C1 00 3C */ addi r6, r1, 0x3c +/* 80165788 001626E8 90 A1 00 E8 */ stw r5, 0xe8(r1) +/* 8016578C 001626EC 38 A1 00 48 */ addi r5, r1, 0x48 +/* 80165790 001626F0 C0 22 A0 2C */ lfs f1, lbl_805ABD4C@sda21(r2) +/* 80165794 001626F4 B0 01 00 20 */ sth r0, 0x20(r1) +/* 80165798 001626F8 D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 8016579C 001626FC D0 A1 00 40 */ stfs f5, 0x40(r1) +/* 801657A0 00162700 D0 C1 00 44 */ stfs f6, 0x44(r1) +/* 801657A4 00162704 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801657A8 00162708 D0 61 00 4C */ stfs f3, 0x4c(r1) +/* 801657AC 0016270C D0 81 00 50 */ stfs f4, 0x50(r1) +/* 801657B0 00162710 4B EE 6F 29 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" +/* 801657B4 00162714 C0 BE 00 24 */ lfs f5, 0x24(r30) +/* 801657B8 00162718 3C 60 80 47 */ lis r3, lbl_8046C848@ha +/* 801657BC 0016271C C0 9E 00 14 */ lfs f4, 0x14(r30) +/* 801657C0 00162720 39 03 C8 48 */ addi r8, r3, lbl_8046C848@l +/* 801657C4 00162724 C0 3E 00 04 */ lfs f1, 4(r30) +/* 801657C8 00162728 7F E4 FB 78 */ mr r4, r31 +/* 801657CC 0016272C C0 7E 00 2C */ lfs f3, 0x2c(r30) +/* 801657D0 00162730 38 61 00 88 */ addi r3, r1, 0x88 +/* 801657D4 00162734 C0 5E 00 1C */ lfs f2, 0x1c(r30) +/* 801657D8 00162738 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801657DC 0016273C C0 1E 00 0C */ lfs f0, 0xc(r30) +/* 801657E0 00162740 38 C1 00 30 */ addi r6, r1, 0x30 +/* 801657E4 00162744 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 801657E8 00162748 38 E1 00 24 */ addi r7, r1, 0x24 +/* 801657EC 0016274C C0 22 A0 2C */ lfs f1, lbl_805ABD4C@sda21(r2) +/* 801657F0 00162750 39 21 00 E8 */ addi r9, r1, 0xe8 +/* 801657F4 00162754 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 801657F8 00162758 D0 A1 00 2C */ stfs f5, 0x2c(r1) +/* 801657FC 0016275C D0 01 00 30 */ stfs f0, 0x30(r1) +/* 80165800 00162760 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 80165804 00162764 D0 61 00 38 */ stfs f3, 0x38(r1) +/* 80165808 00162768 4B EE 77 BD */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 8016580C 0016276C 88 81 00 A8 */ lbz r4, 0xa8(r1) +/* 80165810 00162770 C0 E1 00 88 */ lfs f7, 0x88(r1) +/* 80165814 00162774 C0 C1 00 8C */ lfs f6, 0x8c(r1) +/* 80165818 00162778 28 04 00 00 */ cmplwi r4, 0 +/* 8016581C 0016277C C0 A1 00 90 */ lfs f5, 0x90(r1) +/* 80165820 00162780 C0 81 00 94 */ lfs f4, 0x94(r1) +/* 80165824 00162784 C0 61 00 98 */ lfs f3, 0x98(r1) +/* 80165828 00162788 C0 41 00 9C */ lfs f2, 0x9c(r1) +/* 8016582C 0016278C C0 21 00 A0 */ lfs f1, 0xa0(r1) +/* 80165830 00162790 C0 01 00 A4 */ lfs f0, 0xa4(r1) +/* 80165834 00162794 80 01 00 B0 */ lwz r0, 0xb0(r1) +/* 80165838 00162798 80 61 00 B4 */ lwz r3, 0xb4(r1) +/* 8016583C 0016279C D0 E1 00 B8 */ stfs f7, 0xb8(r1) +/* 80165840 001627A0 D0 C1 00 BC */ stfs f6, 0xbc(r1) +/* 80165844 001627A4 D0 A1 00 C0 */ stfs f5, 0xc0(r1) +/* 80165848 001627A8 D0 81 00 C4 */ stfs f4, 0xc4(r1) +/* 8016584C 001627AC D0 61 00 C8 */ stfs f3, 0xc8(r1) +/* 80165850 001627B0 D0 41 00 CC */ stfs f2, 0xcc(r1) +/* 80165854 001627B4 D0 21 00 D0 */ stfs f1, 0xd0(r1) +/* 80165858 001627B8 D0 01 00 D4 */ stfs f0, 0xd4(r1) +/* 8016585C 001627BC 98 81 00 D8 */ stb r4, 0xd8(r1) +/* 80165860 001627C0 90 61 00 E4 */ stw r3, 0xe4(r1) +/* 80165864 001627C4 90 01 00 E0 */ stw r0, 0xe0(r1) +/* 80165868 001627C8 41 82 00 B4 */ beq lbl_8016591C +/* 8016586C 001627CC 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 80165870 001627D0 A0 81 00 20 */ lhz r4, 0x20(r1) +/* 80165874 001627D4 A0 03 00 08 */ lhz r0, 8(r3) +/* 80165878 001627D8 7C 04 00 40 */ cmplw r4, r0 +/* 8016587C 001627DC 40 82 00 74 */ bne lbl_801658F0 +/* 80165880 001627E0 80 AD 8C F0 */ lwz r5, lbl_805A78B0@sda21(r13) +/* 80165884 001627E4 38 60 00 00 */ li r3, 0 +/* 80165888 001627E8 38 80 00 01 */ li r4, 1 +/* 8016588C 001627EC 48 22 46 69 */ bl __shl2i +/* 80165890 001627F0 39 00 00 00 */ li r8, 0 +/* 80165894 001627F4 39 40 00 03 */ li r10, 3 +/* 80165898 001627F8 90 81 00 5C */ stw r4, 0x5c(r1) +/* 8016589C 001627FC 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801658A0 00162800 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 801658A4 00162804 A0 01 00 20 */ lhz r0, 0x20(r1) +/* 801658A8 00162808 90 61 00 58 */ stw r3, 0x58(r1) +/* 801658AC 0016280C 7F E3 FB 78 */ mr r3, r31 +/* 801658B0 00162810 38 81 00 1C */ addi r4, r1, 0x1c +/* 801658B4 00162814 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801658B8 00162818 91 01 00 64 */ stw r8, 0x64(r1) +/* 801658BC 0016281C 38 C1 00 10 */ addi r6, r1, 0x10 +/* 801658C0 00162820 38 FD 05 AC */ addi r7, r29, 0x5ac +/* 801658C4 00162824 91 01 00 60 */ stw r8, 0x60(r1) +/* 801658C8 00162828 39 01 00 58 */ addi r8, r1, 0x58 +/* 801658CC 0016282C 91 41 00 68 */ stw r10, 0x68(r1) +/* 801658D0 00162830 A1 5D 00 08 */ lhz r10, 8(r29) +/* 801658D4 00162834 B1 41 00 10 */ sth r10, 0x10(r1) +/* 801658D8 00162838 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801658DC 0016283C A0 1D 00 08 */ lhz r0, 8(r29) +/* 801658E0 00162840 B1 41 00 0C */ sth r10, 0xc(r1) +/* 801658E4 00162844 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801658E8 00162848 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801658EC 0016284C 4B EE 47 B5 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +lbl_801658F0: +/* 801658F0 00162850 88 9D 00 E6 */ lbz r4, 0xe6(r29) +/* 801658F4 00162854 7F E3 FB 78 */ mr r3, r31 +/* 801658F8 00162858 A0 01 00 20 */ lhz r0, 0x20(r1) +/* 801658FC 0016285C 38 A1 00 B8 */ addi r5, r1, 0xb8 +/* 80165900 00162860 54 89 E7 FE */ rlwinm r9, r4, 0x1c, 0x1f, 0x1f +/* 80165904 00162864 38 C1 00 08 */ addi r6, r1, 8 +/* 80165908 00162868 B0 01 00 08 */ sth r0, 8(r1) +/* 8016590C 0016286C 38 FD 05 AC */ addi r7, r29, 0x5ac +/* 80165910 00162870 39 00 00 01 */ li r8, 1 +/* 80165914 00162874 80 9D 05 74 */ lwz r4, 0x574(r29) +/* 80165918 00162878 4B ED E7 81 */ bl sub_80044098 +lbl_8016591C: +/* 8016591C 0016287C 80 A1 00 E8 */ lwz r5, 0xe8(r1) +/* 80165920 00162880 38 60 00 00 */ li r3, 0 +/* 80165924 00162884 2C 05 00 00 */ cmpwi r5, 0 +/* 80165928 00162888 40 81 00 40 */ ble lbl_80165968 +/* 8016592C 0016288C 2C 05 00 08 */ cmpwi r5, 8 +/* 80165930 00162890 38 85 FF F8 */ addi r4, r5, -8 +/* 80165934 00162894 40 81 00 20 */ ble lbl_80165954 +/* 80165938 00162898 38 04 00 07 */ addi r0, r4, 7 +/* 8016593C 0016289C 54 00 E8 FE */ srwi r0, r0, 3 +/* 80165940 001628A0 7C 09 03 A6 */ mtctr r0 +/* 80165944 001628A4 2C 04 00 00 */ cmpwi r4, 0 +/* 80165948 001628A8 40 81 00 0C */ ble lbl_80165954 +lbl_8016594C: +/* 8016594C 001628AC 38 63 00 08 */ addi r3, r3, 8 +/* 80165950 001628B0 42 00 FF FC */ bdnz lbl_8016594C +lbl_80165954: +/* 80165954 001628B4 7C 03 28 50 */ subf r0, r3, r5 +/* 80165958 001628B8 7C 09 03 A6 */ mtctr r0 +/* 8016595C 001628BC 7C 03 28 00 */ cmpw r3, r5 +/* 80165960 001628C0 40 80 00 08 */ bge lbl_80165968 +lbl_80165964: +/* 80165964 001628C4 42 00 00 00 */ bdnz lbl_80165964 +lbl_80165968: +/* 80165968 001628C8 38 00 00 00 */ li r0, 0 +/* 8016596C 001628CC 90 01 00 E8 */ stw r0, 0xe8(r1) +/* 80165970 001628D0 BB 61 08 FC */ lmw r27, 0x8fc(r1) +/* 80165974 001628D4 80 01 09 14 */ lwz r0, 0x914(r1) +/* 80165978 001628D8 7C 08 03 A6 */ mtlr r0 +/* 8016597C 001628DC 38 21 09 10 */ addi r1, r1, 0x910 +/* 80165980 001628E0 4E 80 00 20 */ blr + +.global sub_80165984 +sub_80165984: +/* 80165984 001628E4 94 21 FE 50 */ stwu r1, -0x1b0(r1) +/* 80165988 001628E8 7C 08 02 A6 */ mflr r0 +/* 8016598C 001628EC 90 01 01 B4 */ stw r0, 0x1b4(r1) +/* 80165990 001628F0 DB E1 01 A0 */ stfd f31, 0x1a0(r1) +/* 80165994 001628F4 F3 E1 01 A8 */ psq_st f31, 424(r1), 0, qr0 +/* 80165998 001628F8 DB C1 01 90 */ stfd f30, 0x190(r1) +/* 8016599C 001628FC F3 C1 01 98 */ psq_st f30, 408(r1), 0, qr0 +/* 801659A0 00162900 DB A1 01 80 */ stfd f29, 0x180(r1) +/* 801659A4 00162904 F3 A1 01 88 */ psq_st f29, 392(r1), 0, qr0 +/* 801659A8 00162908 93 E1 01 7C */ stw r31, 0x17c(r1) +/* 801659AC 0016290C 93 C1 01 78 */ stw r30, 0x178(r1) +/* 801659B0 00162910 93 A1 01 74 */ stw r29, 0x174(r1) +/* 801659B4 00162914 7C 9E 23 78 */ mr r30, r4 +/* 801659B8 00162918 7C 7D 1B 78 */ mr r29, r3 +/* 801659BC 0016291C 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 801659C0 00162920 7C BF 2B 78 */ mr r31, r5 +/* 801659C4 00162924 7F C5 F3 78 */ mr r5, r30 +/* 801659C8 00162928 38 61 00 70 */ addi r3, r1, 0x70 +/* 801659CC 0016292C 81 84 00 00 */ lwz r12, 0(r4) +/* 801659D0 00162930 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 801659D4 00162934 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 801659D8 00162938 7D 89 03 A6 */ mtctr r12 +/* 801659DC 0016293C 4E 80 04 21 */ bctrl +/* 801659E0 00162940 C0 A1 00 70 */ lfs f5, 0x70(r1) +/* 801659E4 00162944 38 61 00 64 */ addi r3, r1, 0x64 +/* 801659E8 00162948 C0 81 00 74 */ lfs f4, 0x74(r1) +/* 801659EC 0016294C 38 81 00 58 */ addi r4, r1, 0x58 +/* 801659F0 00162950 C0 61 00 78 */ lfs f3, 0x78(r1) +/* 801659F4 00162954 C0 5F 00 1C */ lfs f2, 0x1c(r31) +/* 801659F8 00162958 C0 3F 00 2C */ lfs f1, 0x2c(r31) +/* 801659FC 0016295C C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 80165A00 00162960 EC 44 10 28 */ fsubs f2, f4, f2 +/* 80165A04 00162964 EC 23 08 28 */ fsubs f1, f3, f1 +/* 80165A08 00162968 D0 A1 00 98 */ stfs f5, 0x98(r1) +/* 80165A0C 0016296C EC 05 00 28 */ fsubs f0, f5, f0 +/* 80165A10 00162970 C3 BF 00 24 */ lfs f29, 0x24(r31) +/* 80165A14 00162974 D0 81 00 9C */ stfs f4, 0x9c(r1) +/* 80165A18 00162978 C3 DF 00 14 */ lfs f30, 0x14(r31) +/* 80165A1C 0016297C D0 61 00 A0 */ stfs f3, 0xa0(r1) +/* 80165A20 00162980 C3 FF 00 04 */ lfs f31, 4(r31) +/* 80165A24 00162984 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 80165A28 00162988 D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 80165A2C 0016298C D0 21 00 60 */ stfs f1, 0x60(r1) +/* 80165A30 00162990 48 1A EE 21 */ bl AsNormalized__9CVector3fCFv +/* 80165A34 00162994 C0 01 00 68 */ lfs f0, 0x68(r1) +/* 80165A38 00162998 C0 41 00 64 */ lfs f2, 0x64(r1) +/* 80165A3C 0016299C EC 20 07 B2 */ fmuls f1, f0, f30 +/* 80165A40 001629A0 C0 61 00 6C */ lfs f3, 0x6c(r1) +/* 80165A44 001629A4 C0 02 A0 30 */ lfs f0, lbl_805ABD50@sda21(r2) +/* 80165A48 001629A8 EC 22 0F FA */ fmadds f1, f2, f31, f1 +/* 80165A4C 001629AC EC 23 0F 7A */ fmadds f1, f3, f29, f1 +/* 80165A50 001629B0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80165A54 001629B4 40 81 01 78 */ ble lbl_80165BCC +/* 80165A58 001629B8 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80165A5C 001629BC C7 A4 66 A0 */ lfsu f29, skZero3f@l(r4) +/* 80165A60 001629C0 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 80165A64 001629C4 C3 C4 00 04 */ lfs f30, 4(r4) +/* 80165A68 001629C8 C3 E4 00 08 */ lfs f31, 8(r4) +/* 80165A6C 001629CC 48 1A CA 71 */ bl Float__9CRandom16Fv +/* 80165A70 001629D0 C0 02 9F 8C */ lfs f0, lbl_805ABCAC@sda21(r2) +/* 80165A74 001629D4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80165A78 001629D8 40 81 00 E0 */ ble lbl_80165B58 +/* 80165A7C 001629DC C0 5F 00 2C */ lfs f2, 0x2c(r31) +/* 80165A80 001629E0 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 80165A84 001629E4 C0 3F 00 1C */ lfs f1, 0x1c(r31) +/* 80165A88 001629E8 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 80165A8C 001629EC C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 80165A90 001629F0 38 61 00 D4 */ addi r3, r1, 0xd4 +/* 80165A94 001629F4 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 80165A98 001629F8 38 81 00 4C */ addi r4, r1, 0x4c +/* 80165A9C 001629FC 38 A1 00 98 */ addi r5, r1, 0x98 +/* 80165AA0 00162A00 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 80165AA4 00162A04 D0 41 00 54 */ stfs f2, 0x54(r1) +/* 80165AA8 00162A08 48 1A E0 69 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 80165AAC 00162A0C 38 61 01 34 */ addi r3, r1, 0x134 +/* 80165AB0 00162A10 38 81 00 D4 */ addi r4, r1, 0xd4 +/* 80165AB4 00162A14 48 1A D0 C1 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80165AB8 00162A18 C0 21 01 38 */ lfs f1, 0x138(r1) +/* 80165ABC 00162A1C C0 41 01 48 */ lfs f2, 0x148(r1) +/* 80165AC0 00162A20 C0 01 01 58 */ lfs f0, 0x158(r1) +/* 80165AC4 00162A24 D0 21 00 8C */ stfs f1, 0x8c(r1) +/* 80165AC8 00162A28 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 80165ACC 00162A2C D0 41 00 90 */ stfs f2, 0x90(r1) +/* 80165AD0 00162A30 C0 42 A0 34 */ lfs f2, lbl_805ABD54@sda21(r2) +/* 80165AD4 00162A34 D0 01 00 94 */ stfs f0, 0x94(r1) +/* 80165AD8 00162A38 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 80165ADC 00162A3C 48 1A CA 69 */ bl Range__9CRandom16Fff +/* 80165AE0 00162A40 D0 21 00 08 */ stfs f1, 8(r1) +/* 80165AE4 00162A44 38 61 00 3C */ addi r3, r1, 0x3c +/* 80165AE8 00162A48 38 81 00 8C */ addi r4, r1, 0x8c +/* 80165AEC 00162A4C 38 A1 00 08 */ addi r5, r1, 8 +/* 80165AF0 00162A50 48 1A B8 05 */ bl AxisAngle__11CQuaternionFRC13CUnitVector3fRC9CRelAngle +/* 80165AF4 00162A54 C0 62 9F B8 */ lfs f3, lbl_805ABCD8@sda21(r2) +/* 80165AF8 00162A58 38 61 00 30 */ addi r3, r1, 0x30 +/* 80165AFC 00162A5C C0 41 01 34 */ lfs f2, 0x134(r1) +/* 80165B00 00162A60 38 81 00 7C */ addi r4, r1, 0x7c +/* 80165B04 00162A64 C0 21 01 44 */ lfs f1, 0x144(r1) +/* 80165B08 00162A68 38 A1 00 24 */ addi r5, r1, 0x24 +/* 80165B0C 00162A6C C0 01 01 54 */ lfs f0, 0x154(r1) +/* 80165B10 00162A70 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 80165B14 00162A74 EC 23 00 72 */ fmuls f1, f3, f1 +/* 80165B18 00162A78 C0 C1 00 3C */ lfs f6, 0x3c(r1) +/* 80165B1C 00162A7C EC 03 00 32 */ fmuls f0, f3, f0 +/* 80165B20 00162A80 C0 A1 00 40 */ lfs f5, 0x40(r1) +/* 80165B24 00162A84 C0 81 00 44 */ lfs f4, 0x44(r1) +/* 80165B28 00162A88 C0 61 00 48 */ lfs f3, 0x48(r1) +/* 80165B2C 00162A8C D0 C1 00 7C */ stfs f6, 0x7c(r1) +/* 80165B30 00162A90 D0 A1 00 80 */ stfs f5, 0x80(r1) +/* 80165B34 00162A94 D0 81 00 84 */ stfs f4, 0x84(r1) +/* 80165B38 00162A98 D0 61 00 88 */ stfs f3, 0x88(r1) +/* 80165B3C 00162A9C D0 41 00 24 */ stfs f2, 0x24(r1) +/* 80165B40 00162AA0 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 80165B44 00162AA4 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 80165B48 00162AA8 48 1A B7 1D */ bl Transform__11CQuaternionCFRC9CVector3f +/* 80165B4C 00162AAC C3 A1 00 30 */ lfs f29, 0x30(r1) +/* 80165B50 00162AB0 C3 C1 00 34 */ lfs f30, 0x34(r1) +/* 80165B54 00162AB4 C3 E1 00 38 */ lfs f31, 0x38(r1) +lbl_80165B58: +/* 80165B58 00162AB8 C0 41 00 9C */ lfs f2, 0x9c(r1) +/* 80165B5C 00162ABC 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 80165B60 00162AC0 C0 21 00 A0 */ lfs f1, 0xa0(r1) +/* 80165B64 00162AC4 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 80165B68 00162AC8 EC 62 F0 2A */ fadds f3, f2, f30 +/* 80165B6C 00162ACC C0 01 00 98 */ lfs f0, 0x98(r1) +/* 80165B70 00162AD0 EC 41 F8 2A */ fadds f2, f1, f31 +/* 80165B74 00162AD4 C0 BF 00 2C */ lfs f5, 0x2c(r31) +/* 80165B78 00162AD8 EC 20 E8 2A */ fadds f1, f0, f29 +/* 80165B7C 00162ADC C0 9F 00 1C */ lfs f4, 0x1c(r31) +/* 80165B80 00162AE0 C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 80165B84 00162AE4 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 80165B88 00162AE8 D0 61 00 10 */ stfs f3, 0x10(r1) +/* 80165B8C 00162AEC 38 81 00 18 */ addi r4, r1, 0x18 +/* 80165B90 00162AF0 38 A1 00 0C */ addi r5, r1, 0xc +/* 80165B94 00162AF4 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80165B98 00162AF8 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 80165B9C 00162AFC D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80165BA0 00162B00 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 80165BA4 00162B04 D0 A1 00 20 */ stfs f5, 0x20(r1) +/* 80165BA8 00162B08 48 1A DF 69 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 80165BAC 00162B0C 38 61 01 04 */ addi r3, r1, 0x104 +/* 80165BB0 00162B10 38 81 00 A4 */ addi r4, r1, 0xa4 +/* 80165BB4 00162B14 48 1A CF C1 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80165BB8 00162B18 7F A3 EB 78 */ mr r3, r29 +/* 80165BBC 00162B1C 7F C5 F3 78 */ mr r5, r30 +/* 80165BC0 00162B20 38 81 01 04 */ addi r4, r1, 0x104 +/* 80165BC4 00162B24 4B FF FB 11 */ bl sub_801656d4 +/* 80165BC8 00162B28 48 00 00 14 */ b lbl_80165BDC +lbl_80165BCC: +/* 80165BCC 00162B2C 7F A3 EB 78 */ mr r3, r29 +/* 80165BD0 00162B30 7F E4 FB 78 */ mr r4, r31 +/* 80165BD4 00162B34 7F C5 F3 78 */ mr r5, r30 +/* 80165BD8 00162B38 4B FF FA FD */ bl sub_801656d4 +lbl_80165BDC: +/* 80165BDC 00162B3C E3 E1 01 A8 */ psq_l f31, 424(r1), 0, qr0 +/* 80165BE0 00162B40 CB E1 01 A0 */ lfd f31, 0x1a0(r1) +/* 80165BE4 00162B44 E3 C1 01 98 */ psq_l f30, 408(r1), 0, qr0 +/* 80165BE8 00162B48 CB C1 01 90 */ lfd f30, 0x190(r1) +/* 80165BEC 00162B4C E3 A1 01 88 */ psq_l f29, 392(r1), 0, qr0 +/* 80165BF0 00162B50 CB A1 01 80 */ lfd f29, 0x180(r1) +/* 80165BF4 00162B54 83 E1 01 7C */ lwz r31, 0x17c(r1) +/* 80165BF8 00162B58 83 C1 01 78 */ lwz r30, 0x178(r1) +/* 80165BFC 00162B5C 80 01 01 B4 */ lwz r0, 0x1b4(r1) +/* 80165C00 00162B60 83 A1 01 74 */ lwz r29, 0x174(r1) +/* 80165C04 00162B64 7C 08 03 A6 */ mtlr r0 +/* 80165C08 00162B68 38 21 01 B0 */ addi r1, r1, 0x1b0 +/* 80165C0C 00162B6C 4E 80 00 20 */ blr + +.global Touch__6CDroneFR6CActorR13CStateManager +Touch__6CDroneFR6CActorR13CStateManager: +/* 80165C10 00162B70 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80165C14 00162B74 7C 08 02 A6 */ mflr r0 +/* 80165C18 00162B78 90 01 00 34 */ stw r0, 0x34(r1) +/* 80165C1C 00162B7C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80165C20 00162B80 7C 9F 23 78 */ mr r31, r4 +/* 80165C24 00162B84 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80165C28 00162B88 7C 7E 1B 78 */ mr r30, r3 +/* 80165C2C 00162B8C 4B F1 3E 75 */ bl Touch__10CPatternedFR6CActorR13CStateManager +/* 80165C30 00162B90 7F E4 FB 78 */ mr r4, r31 +/* 80165C34 00162B94 38 61 00 08 */ addi r3, r1, 8 +/* 80165C38 00162B98 4B F3 FC CD */ bl "__ct__20TCastToPtr<7CWeapon>FR7CEntity" +/* 80165C3C 00162B9C 80 A3 00 04 */ lwz r5, 4(r3) +/* 80165C40 00162BA0 28 05 00 00 */ cmplwi r5, 0 +/* 80165C44 00162BA4 41 82 00 80 */ beq lbl_80165CC4 +/* 80165C48 00162BA8 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 80165C4C 00162BAC 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80165C50 00162BB0 41 82 00 74 */ beq lbl_80165CC4 +/* 80165C54 00162BB4 80 65 00 F0 */ lwz r3, 0xf0(r5) +/* 80165C58 00162BB8 88 1E 08 34 */ lbz r0, 0x834(r30) +/* 80165C5C 00162BBC 20 63 00 02 */ subfic r3, r3, 2 +/* 80165C60 00162BC0 7C 63 00 34 */ cntlzw r3, r3 +/* 80165C64 00162BC4 50 60 16 30 */ rlwimi r0, r3, 2, 0x18, 0x18 +/* 80165C68 00162BC8 98 1E 08 34 */ stb r0, 0x834(r30) +/* 80165C6C 00162BCC 80 1E 03 FC */ lwz r0, 0x3fc(r30) +/* 80165C70 00162BD0 2C 00 00 01 */ cmpwi r0, 1 +/* 80165C74 00162BD4 40 82 00 50 */ bne lbl_80165CC4 +/* 80165C78 00162BD8 C0 25 00 50 */ lfs f1, 0x50(r5) +/* 80165C7C 00162BDC 7F C3 F3 78 */ mr r3, r30 +/* 80165C80 00162BE0 C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 80165C84 00162BE4 38 81 00 10 */ addi r4, r1, 0x10 +/* 80165C88 00162BE8 C0 65 00 60 */ lfs f3, 0x60(r5) +/* 80165C8C 00162BEC C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 80165C90 00162BF0 EC 81 00 28 */ fsubs f4, f1, f0 +/* 80165C94 00162BF4 C0 25 00 40 */ lfs f1, 0x40(r5) +/* 80165C98 00162BF8 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 80165C9C 00162BFC EC 43 10 28 */ fsubs f2, f3, f2 +/* 80165CA0 00162C00 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80165CA4 00162C04 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 80165CA8 00162C08 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 80165CAC 00162C0C D0 01 00 10 */ stfs f0, 0x10(r1) +/* 80165CB0 00162C10 4B FF F9 3D */ bl sub_801655ec +/* 80165CB4 00162C14 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80165CB8 00162C18 41 82 00 0C */ beq lbl_80165CC4 +/* 80165CBC 00162C1C C0 02 9F 7C */ lfs f0, lbl_805ABC9C@sda21(r2) +/* 80165CC0 00162C20 D0 1E 05 E8 */ stfs f0, 0x5e8(r30) +lbl_80165CC4: +/* 80165CC4 00162C24 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80165CC8 00162C28 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80165CCC 00162C2C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80165CD0 00162C30 7C 08 03 A6 */ mtlr r0 +/* 80165CD4 00162C34 38 21 00 30 */ addi r1, r1, 0x30 +/* 80165CD8 00162C38 4E 80 00 20 */ blr + +.global DoUserAnimEvent__6CDroneFR13CStateManagerRC13CInt32POINode14EUserEventType +DoUserAnimEvent__6CDroneFR13CStateManagerRC13CInt32POINode14EUserEventType: +/* 80165CDC 00162C3C 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 80165CE0 00162C40 7C 08 02 A6 */ mflr r0 +/* 80165CE4 00162C44 90 01 00 94 */ stw r0, 0x94(r1) +/* 80165CE8 00162C48 DB E1 00 88 */ stfd f31, 0x88(r1) +/* 80165CEC 00162C4C FF E0 08 90 */ fmr f31, f1 +/* 80165CF0 00162C50 BF 61 00 74 */ stmw r27, 0x74(r1) +/* 80165CF4 00162C54 7C DF 33 78 */ mr r31, r6 +/* 80165CF8 00162C58 28 1F 00 0F */ cmplwi r31, 0xf +/* 80165CFC 00162C5C 7C 7C 1B 78 */ mr r28, r3 +/* 80165D00 00162C60 7C 9D 23 78 */ mr r29, r4 +/* 80165D04 00162C64 7C BE 2B 78 */ mr r30, r5 +/* 80165D08 00162C68 3B 60 00 00 */ li r27, 0 +/* 80165D0C 00162C6C 41 81 01 BC */ bgt lbl_80165EC8 +/* 80165D10 00162C70 3C A0 80 3E */ lis r5, lbl_803E3988@ha +/* 80165D14 00162C74 57 E0 10 3A */ slwi r0, r31, 2 +/* 80165D18 00162C78 38 A5 39 88 */ addi r5, r5, lbl_803E3988@l +/* 80165D1C 00162C7C 7C 05 00 2E */ lwzx r0, r5, r0 +/* 80165D20 00162C80 7C 09 03 A6 */ mtctr r0 +/* 80165D24 00162C84 4E 80 04 20 */ bctr +/* 80165D28 00162C88 7F 84 E3 78 */ mr r4, r28 +/* 80165D2C 00162C8C 38 61 00 0C */ addi r3, r1, 0xc +/* 80165D30 00162C90 38 BE 00 3C */ addi r5, r30, 0x3c +/* 80165D34 00162C94 4B F1 2C 45 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80165D38 00162C98 38 61 00 3C */ addi r3, r1, 0x3c +/* 80165D3C 00162C9C 38 81 00 0C */ addi r4, r1, 0xc +/* 80165D40 00162CA0 48 1A CE 35 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80165D44 00162CA4 7F 83 E3 78 */ mr r3, r28 +/* 80165D48 00162CA8 7F A4 EB 78 */ mr r4, r29 +/* 80165D4C 00162CAC 38 A1 00 3C */ addi r5, r1, 0x3c +/* 80165D50 00162CB0 4B FF FC 35 */ bl sub_80165984 +/* 80165D54 00162CB4 3B 60 00 01 */ li r27, 1 +/* 80165D58 00162CB8 48 00 01 70 */ b lbl_80165EC8 +/* 80165D5C 00162CBC 88 1C 04 00 */ lbz r0, 0x400(r28) +/* 80165D60 00162CC0 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80165D64 00162CC4 41 82 00 70 */ beq lbl_80165DD4 +/* 80165D68 00162CC8 88 1C 08 35 */ lbz r0, 0x835(r28) +/* 80165D6C 00162CCC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80165D70 00162CD0 41 82 00 64 */ beq lbl_80165DD4 +/* 80165D74 00162CD4 88 1C 08 28 */ lbz r0, 0x828(r28) +/* 80165D78 00162CD8 28 00 00 00 */ cmplwi r0, 0 +/* 80165D7C 00162CDC 40 82 00 38 */ bne lbl_80165DB4 +/* 80165D80 00162CE0 38 A0 00 00 */ li r5, 0 +/* 80165D84 00162CE4 38 C0 00 01 */ li r6, 1 +/* 80165D88 00162CE8 4B FF D5 1D */ bl sub_801632a4 +/* 80165D8C 00162CEC 38 00 00 01 */ li r0, 1 +/* 80165D90 00162CF0 7F 83 E3 78 */ mr r3, r28 +/* 80165D94 00162CF4 98 1C 08 28 */ stb r0, 0x828(r28) +/* 80165D98 00162CF8 7F A4 EB 78 */ mr r4, r29 +/* 80165D9C 00162CFC 38 A0 00 01 */ li r5, 1 +/* 80165DA0 00162D00 81 9C 00 00 */ lwz r12, 0(r28) +/* 80165DA4 00162D04 81 8C 02 D4 */ lwz r12, 0x2d4(r12) +/* 80165DA8 00162D08 7D 89 03 A6 */ mtctr r12 +/* 80165DAC 00162D0C 4E 80 04 21 */ bctrl +/* 80165DB0 00162D10 48 00 00 24 */ b lbl_80165DD4 +lbl_80165DB4: +/* 80165DB4 00162D14 80 1C 03 FC */ lwz r0, 0x3fc(r28) +/* 80165DB8 00162D18 2C 00 00 01 */ cmpwi r0, 1 +/* 80165DBC 00162D1C 40 82 00 18 */ bne lbl_80165DD4 +/* 80165DC0 00162D20 38 A0 00 01 */ li r5, 1 +/* 80165DC4 00162D24 38 C0 00 01 */ li r6, 1 +/* 80165DC8 00162D28 4B FF D4 DD */ bl sub_801632a4 +/* 80165DCC 00162D2C 38 00 00 01 */ li r0, 1 +/* 80165DD0 00162D30 98 1C 08 29 */ stb r0, 0x829(r28) +lbl_80165DD4: +/* 80165DD4 00162D34 3B 60 00 01 */ li r27, 1 +/* 80165DD8 00162D38 48 00 00 F0 */ b lbl_80165EC8 +/* 80165DDC 00162D3C 88 1C 08 28 */ lbz r0, 0x828(r28) +/* 80165DE0 00162D40 28 00 00 00 */ cmplwi r0, 0 +/* 80165DE4 00162D44 41 82 00 38 */ beq lbl_80165E1C +/* 80165DE8 00162D48 38 A0 00 00 */ li r5, 0 +/* 80165DEC 00162D4C 38 C0 00 00 */ li r6, 0 +/* 80165DF0 00162D50 4B FF D4 B5 */ bl sub_801632a4 +/* 80165DF4 00162D54 38 00 00 00 */ li r0, 0 +/* 80165DF8 00162D58 7F 83 E3 78 */ mr r3, r28 +/* 80165DFC 00162D5C 98 1C 08 28 */ stb r0, 0x828(r28) +/* 80165E00 00162D60 7F A4 EB 78 */ mr r4, r29 +/* 80165E04 00162D64 38 A0 00 00 */ li r5, 0 +/* 80165E08 00162D68 81 9C 00 00 */ lwz r12, 0(r28) +/* 80165E0C 00162D6C 81 8C 02 D4 */ lwz r12, 0x2d4(r12) +/* 80165E10 00162D70 7D 89 03 A6 */ mtctr r12 +/* 80165E14 00162D74 4E 80 04 21 */ bctrl +/* 80165E18 00162D78 48 00 00 24 */ b lbl_80165E3C +lbl_80165E1C: +/* 80165E1C 00162D7C 80 1C 03 FC */ lwz r0, 0x3fc(r28) +/* 80165E20 00162D80 2C 00 00 01 */ cmpwi r0, 1 +/* 80165E24 00162D84 40 82 00 18 */ bne lbl_80165E3C +/* 80165E28 00162D88 38 A0 00 01 */ li r5, 1 +/* 80165E2C 00162D8C 38 C0 00 00 */ li r6, 0 +/* 80165E30 00162D90 4B FF D4 75 */ bl sub_801632a4 +/* 80165E34 00162D94 38 00 00 00 */ li r0, 0 +/* 80165E38 00162D98 98 1C 08 29 */ stb r0, 0x829(r28) +lbl_80165E3C: +/* 80165E3C 00162D9C 3B 60 00 01 */ li r27, 1 +/* 80165E40 00162DA0 48 00 00 88 */ b lbl_80165EC8 +/* 80165E44 00162DA4 80 1C 03 FC */ lwz r0, 0x3fc(r28) +/* 80165E48 00162DA8 2C 00 00 01 */ cmpwi r0, 1 +/* 80165E4C 00162DAC 40 82 00 14 */ bne lbl_80165E60 +/* 80165E50 00162DB0 88 1C 08 34 */ lbz r0, 0x834(r28) +/* 80165E54 00162DB4 38 60 00 01 */ li r3, 1 +/* 80165E58 00162DB8 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 80165E5C 00162DBC 98 1C 08 34 */ stb r0, 0x834(r28) +lbl_80165E60: +/* 80165E60 00162DC0 3B 60 00 01 */ li r27, 1 +/* 80165E64 00162DC4 48 00 00 64 */ b lbl_80165EC8 +/* 80165E68 00162DC8 80 1C 03 FC */ lwz r0, 0x3fc(r28) +/* 80165E6C 00162DCC 2C 00 00 01 */ cmpwi r0, 1 +/* 80165E70 00162DD0 40 82 00 14 */ bne lbl_80165E84 +/* 80165E74 00162DD4 88 1C 08 34 */ lbz r0, 0x834(r28) +/* 80165E78 00162DD8 38 60 00 00 */ li r3, 0 +/* 80165E7C 00162DDC 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 80165E80 00162DE0 98 1C 08 34 */ stb r0, 0x834(r28) +lbl_80165E84: +/* 80165E84 00162DE4 3B 60 00 01 */ li r27, 1 +/* 80165E88 00162DE8 48 00 00 40 */ b lbl_80165EC8 +/* 80165E8C 00162DEC 80 1C 07 D0 */ lwz r0, 0x7d0(r28) +/* 80165E90 00162DF0 28 00 00 00 */ cmplwi r0, 0 +/* 80165E94 00162DF4 41 82 00 1C */ beq lbl_80165EB0 +/* 80165E98 00162DF8 80 1C 07 D0 */ lwz r0, 0x7d0(r28) +/* 80165E9C 00162DFC 38 61 00 08 */ addi r3, r1, 8 +/* 80165EA0 00162E00 90 01 00 08 */ stw r0, 8(r1) +/* 80165EA4 00162E04 48 18 3F E1 */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle +/* 80165EA8 00162E08 38 00 00 00 */ li r0, 0 +/* 80165EAC 00162E0C 90 1C 07 D0 */ stw r0, 0x7d0(r28) +lbl_80165EB0: +/* 80165EB0 00162E10 7F 83 E3 78 */ mr r3, r28 +/* 80165EB4 00162E14 7F A4 EB 78 */ mr r4, r29 +/* 80165EB8 00162E18 81 9C 00 00 */ lwz r12, 0(r28) +/* 80165EBC 00162E1C 81 8C 02 98 */ lwz r12, 0x298(r12) +/* 80165EC0 00162E20 7D 89 03 A6 */ mtctr r12 +/* 80165EC4 00162E24 4E 80 04 21 */ bctrl +lbl_80165EC8: +/* 80165EC8 00162E28 57 60 06 3F */ clrlwi. r0, r27, 0x18 +/* 80165ECC 00162E2C 40 82 00 1C */ bne lbl_80165EE8 +/* 80165ED0 00162E30 FC 20 F8 90 */ fmr f1, f31 +/* 80165ED4 00162E34 7F 83 E3 78 */ mr r3, r28 +/* 80165ED8 00162E38 7F A4 EB 78 */ mr r4, r29 +/* 80165EDC 00162E3C 7F C5 F3 78 */ mr r5, r30 +/* 80165EE0 00162E40 7F E6 FB 78 */ mr r6, r31 +/* 80165EE4 00162E44 4B F1 2F CD */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +lbl_80165EE8: +/* 80165EE8 00162E48 CB E1 00 88 */ lfd f31, 0x88(r1) +/* 80165EEC 00162E4C BB 61 00 74 */ lmw r27, 0x74(r1) +/* 80165EF0 00162E50 80 01 00 94 */ lwz r0, 0x94(r1) +/* 80165EF4 00162E54 7C 08 03 A6 */ mtlr r0 +/* 80165EF8 00162E58 38 21 00 90 */ addi r1, r1, 0x90 +/* 80165EFC 00162E5C 4E 80 00 20 */ blr + +.global sub_80165f00 +sub_80165f00: +/* 80165F00 00162E60 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 80165F04 00162E64 7C 08 02 A6 */ mflr r0 +/* 80165F08 00162E68 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 80165F0C 00162E6C 93 E1 00 EC */ stw r31, 0xec(r1) +/* 80165F10 00162E70 93 C1 00 E8 */ stw r30, 0xe8(r1) +/* 80165F14 00162E74 7C 9E 23 78 */ mr r30, r4 +/* 80165F18 00162E78 38 81 00 08 */ addi r4, r1, 8 +/* 80165F1C 00162E7C 93 A1 00 E4 */ stw r29, 0xe4(r1) +/* 80165F20 00162E80 7C 7D 1B 78 */ mr r29, r3 +/* 80165F24 00162E84 A0 03 05 7A */ lhz r0, 0x57a(r3) +/* 80165F28 00162E88 7F C3 F3 78 */ mr r3, r30 +/* 80165F2C 00162E8C B0 01 00 08 */ sth r0, 8(r1) +/* 80165F30 00162E90 4B EE 66 45 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80165F34 00162E94 7C 64 1B 78 */ mr r4, r3 +/* 80165F38 00162E98 38 61 00 0C */ addi r3, r1, 0xc +/* 80165F3C 00162E9C 4B F4 0C 9D */ bl "__ct__31TCastToPtr<17CScriptVisorFlare>FP7CEntity" +/* 80165F40 00162EA0 80 BE 08 4C */ lwz r5, 0x84c(r30) +/* 80165F44 00162EA4 38 81 00 60 */ addi r4, r1, 0x60 +/* 80165F48 00162EA8 83 E3 00 04 */ lwz r31, 4(r3) +/* 80165F4C 00162EAC 38 61 00 6C */ addi r3, r1, 0x6c +/* 80165F50 00162EB0 C0 A5 00 60 */ lfs f5, 0x60(r5) +/* 80165F54 00162EB4 C0 1D 00 60 */ lfs f0, 0x60(r29) +/* 80165F58 00162EB8 C0 85 00 50 */ lfs f4, 0x50(r5) +/* 80165F5C 00162EBC C0 5D 00 50 */ lfs f2, 0x50(r29) +/* 80165F60 00162EC0 EC 25 00 28 */ fsubs f1, f5, f0 +/* 80165F64 00162EC4 C0 05 00 40 */ lfs f0, 0x40(r5) +/* 80165F68 00162EC8 C0 7D 00 40 */ lfs f3, 0x40(r29) +/* 80165F6C 00162ECC EC 44 10 28 */ fsubs f2, f4, f2 +/* 80165F70 00162ED0 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 80165F74 00162ED4 EC 00 18 28 */ fsubs f0, f0, f3 +/* 80165F78 00162ED8 D0 81 00 58 */ stfs f4, 0x58(r1) +/* 80165F7C 00162EDC D0 A1 00 5C */ stfs f5, 0x5c(r1) +/* 80165F80 00162EE0 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 80165F84 00162EE4 D0 41 00 64 */ stfs f2, 0x64(r1) +/* 80165F88 00162EE8 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 80165F8C 00162EEC 48 1A E8 C5 */ bl AsNormalized__9CVector3fCFv +/* 80165F90 00162EF0 C0 9D 00 48 */ lfs f4, 0x48(r29) +/* 80165F94 00162EF4 7F A3 EB 78 */ mr r3, r29 +/* 80165F98 00162EF8 C0 01 00 70 */ lfs f0, 0x70(r1) +/* 80165F9C 00162EFC 7F C4 F3 78 */ mr r4, r30 +/* 80165FA0 00162F00 C0 7D 00 38 */ lfs f3, 0x38(r29) +/* 80165FA4 00162F04 EC 00 01 32 */ fmuls f0, f0, f4 +/* 80165FA8 00162F08 C0 21 00 6C */ lfs f1, 0x6c(r1) +/* 80165FAC 00162F0C C0 BD 00 58 */ lfs f5, 0x58(r29) +/* 80165FB0 00162F10 C0 41 00 74 */ lfs f2, 0x74(r1) +/* 80165FB4 00162F14 EC 21 00 FA */ fmadds f1, f1, f3, f0 +/* 80165FB8 00162F18 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 80165FBC 00162F1C D0 61 00 48 */ stfs f3, 0x48(r1) +/* 80165FC0 00162F20 EC 22 09 7A */ fmadds f1, f2, f5, f1 +/* 80165FC4 00162F24 D0 81 00 4C */ stfs f4, 0x4c(r1) +/* 80165FC8 00162F28 D0 A1 00 50 */ stfs f5, 0x50(r1) +/* 80165FCC 00162F2C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80165FD0 00162F30 7C 00 00 26 */ mfcr r0 +/* 80165FD4 00162F34 81 9D 00 00 */ lwz r12, 0(r29) +/* 80165FD8 00162F38 54 05 17 FE */ rlwinm r5, r0, 2, 0x1f, 0x1f +/* 80165FDC 00162F3C 81 8C 02 D4 */ lwz r12, 0x2d4(r12) +/* 80165FE0 00162F40 7D 89 03 A6 */ mtctr r12 +/* 80165FE4 00162F44 4E 80 04 21 */ bctrl +/* 80165FE8 00162F48 28 1F 00 00 */ cmplwi r31, 0 +/* 80165FEC 00162F4C 41 82 00 9C */ beq lbl_80166088 +/* 80165FF0 00162F50 3C 80 80 3D */ lis r4, lbl_803D0398@ha +/* 80165FF4 00162F54 38 61 00 38 */ addi r3, r1, 0x38 +/* 80165FF8 00162F58 38 84 03 98 */ addi r4, r4, lbl_803D0398@l +/* 80165FFC 00162F5C 4B E9 EC BD */ bl string_l__4rstlFPCc +/* 80166000 00162F60 7F A4 EB 78 */ mr r4, r29 +/* 80166004 00162F64 38 61 00 78 */ addi r3, r1, 0x78 +/* 80166008 00162F68 38 A1 00 38 */ addi r5, r1, 0x38 +/* 8016600C 00162F6C 4B F1 29 6D */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80166010 00162F70 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 80166014 00162F74 38 81 00 78 */ addi r4, r1, 0x78 +/* 80166018 00162F78 48 1A CB 5D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8016601C 00162F7C 38 61 00 38 */ addi r3, r1, 0x38 +/* 80166020 00162F80 48 1D 7A C1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80166024 00162F84 C0 82 9F C0 */ lfs f4, lbl_805ABCE0@sda21(r2) +/* 80166028 00162F88 7F E3 FB 78 */ mr r3, r31 +/* 8016602C 00162F8C C0 21 00 CC */ lfs f1, 0xcc(r1) +/* 80166030 00162F90 38 81 00 2C */ addi r4, r1, 0x2c +/* 80166034 00162F94 C0 41 00 AC */ lfs f2, 0xac(r1) +/* 80166038 00162F98 C0 01 00 BC */ lfs f0, 0xbc(r1) +/* 8016603C 00162F9C EC C4 00 72 */ fmuls f6, f4, f1 +/* 80166040 00162FA0 C0 21 00 D4 */ lfs f1, 0xd4(r1) +/* 80166044 00162FA4 EC A4 00 B2 */ fmuls f5, f4, f2 +/* 80166048 00162FA8 C0 61 00 B4 */ lfs f3, 0xb4(r1) +/* 8016604C 00162FAC EC 84 00 32 */ fmuls f4, f4, f0 +/* 80166050 00162FB0 C0 41 00 C4 */ lfs f2, 0xc4(r1) +/* 80166054 00162FB4 EC E1 30 2A */ fadds f7, f1, f6 +/* 80166058 00162FB8 D0 A1 00 14 */ stfs f5, 0x14(r1) +/* 8016605C 00162FBC ED 02 20 2A */ fadds f8, f2, f4 +/* 80166060 00162FC0 EC 03 28 2A */ fadds f0, f3, f5 +/* 80166064 00162FC4 D0 81 00 18 */ stfs f4, 0x18(r1) +/* 80166068 00162FC8 D0 C1 00 1C */ stfs f6, 0x1c(r1) +/* 8016606C 00162FCC D0 61 00 20 */ stfs f3, 0x20(r1) +/* 80166070 00162FD0 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 80166074 00162FD4 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 80166078 00162FD8 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8016607C 00162FDC D1 01 00 30 */ stfs f8, 0x30(r1) +/* 80166080 00162FE0 D0 E1 00 34 */ stfs f7, 0x34(r1) +/* 80166084 00162FE4 4B EE CE 09 */ bl SetTranslation__6CActorFRC9CVector3f +lbl_80166088: +/* 80166088 00162FE8 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 8016608C 00162FEC 83 E1 00 EC */ lwz r31, 0xec(r1) +/* 80166090 00162FF0 83 C1 00 E8 */ lwz r30, 0xe8(r1) +/* 80166094 00162FF4 83 A1 00 E4 */ lwz r29, 0xe4(r1) +/* 80166098 00162FF8 7C 08 03 A6 */ mtlr r0 +/* 8016609C 00162FFC 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 801660A0 00163000 4E 80 00 20 */ blr + +.global sub_801660a4 +sub_801660a4: +/* 801660A4 00163004 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 801660A8 00163008 7C 08 02 A6 */ mflr r0 +/* 801660AC 0016300C 90 01 01 14 */ stw r0, 0x114(r1) +/* 801660B0 00163010 BF 41 00 F8 */ stmw r26, 0xf8(r1) +/* 801660B4 00163014 7C 7C 1B 78 */ mr r28, r3 +/* 801660B8 00163018 7C 9D 23 78 */ mr r29, r4 +/* 801660BC 0016301C 7C BE 2B 78 */ mr r30, r5 +/* 801660C0 00163020 88 03 04 00 */ lbz r0, 0x400(r3) +/* 801660C4 00163024 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801660C8 00163028 41 82 01 EC */ beq lbl_801662B4 +/* 801660CC 0016302C A0 1C 05 7A */ lhz r0, 0x57a(r28) +/* 801660D0 00163030 7F A3 EB 78 */ mr r3, r29 +/* 801660D4 00163034 38 81 00 28 */ addi r4, r1, 0x28 +/* 801660D8 00163038 B0 01 00 28 */ sth r0, 0x28(r1) +/* 801660DC 0016303C 4B EE 64 99 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801660E0 00163040 7C 64 1B 78 */ mr r4, r3 +/* 801660E4 00163044 38 61 00 48 */ addi r3, r1, 0x48 +/* 801660E8 00163048 4B F4 0A F1 */ bl "__ct__31TCastToPtr<17CScriptVisorFlare>FP7CEntity" +/* 801660EC 0016304C 80 03 00 04 */ lwz r0, 4(r3) +/* 801660F0 00163050 28 00 00 00 */ cmplwi r0, 0 +/* 801660F4 00163054 7C 1F 03 78 */ mr r31, r0 +/* 801660F8 00163058 40 82 01 90 */ bne lbl_80166288 +/* 801660FC 0016305C 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 80166100 00163060 41 82 01 88 */ beq lbl_80166288 +/* 80166104 00163064 7F A4 EB 78 */ mr r4, r29 +/* 80166108 00163068 38 61 00 24 */ addi r3, r1, 0x24 +/* 8016610C 0016306C 4B EE 6F D1 */ bl AllocateUniqueId__13CStateManagerFv +/* 80166110 00163070 A0 01 00 24 */ lhz r0, 0x24(r1) +/* 80166114 00163074 3C 60 80 3D */ lis r3, lbl_803D0398@ha +/* 80166118 00163078 38 83 03 98 */ addi r4, r3, lbl_803D0398@l +/* 8016611C 0016307C B0 1C 05 7A */ sth r0, 0x57a(r28) +/* 80166120 00163080 38 61 00 6C */ addi r3, r1, 0x6c +/* 80166124 00163084 4B E9 EB 95 */ bl string_l__4rstlFPCc +/* 80166128 00163088 7F 84 E3 78 */ mr r4, r28 +/* 8016612C 0016308C 38 61 00 94 */ addi r3, r1, 0x94 +/* 80166130 00163090 38 A1 00 6C */ addi r5, r1, 0x6c +/* 80166134 00163094 4B F1 28 45 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80166138 00163098 38 61 00 C4 */ addi r3, r1, 0xc4 +/* 8016613C 0016309C 38 81 00 94 */ addi r4, r1, 0x94 +/* 80166140 001630A0 48 1A CA 35 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80166144 001630A4 38 61 00 6C */ addi r3, r1, 0x6c +/* 80166148 001630A8 48 1D 79 99 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8016614C 001630AC 3C 60 80 3D */ lis r3, lbl_803D0398@ha +/* 80166150 001630B0 3B 60 00 00 */ li r27, 0 +/* 80166154 001630B4 38 63 03 98 */ addi r3, r3, lbl_803D0398@l +/* 80166158 001630B8 3B 40 00 00 */ li r26, 0 +/* 8016615C 001630BC 38 83 00 3B */ addi r4, r3, 0x3b +/* 80166160 001630C0 38 60 01 20 */ li r3, 0x120 +/* 80166164 001630C4 38 A0 00 00 */ li r5, 0 +/* 80166168 001630C8 48 1A F7 05 */ bl __nw__FUlPCcPCc +/* 8016616C 001630CC 7C 7F 1B 79 */ or. r31, r3, r3 +/* 80166170 001630D0 41 82 00 B4 */ beq lbl_80166224 +/* 80166174 001630D4 C0 41 00 D0 */ lfs f2, 0xd0(r1) +/* 80166178 001630D8 3C 60 80 57 */ lis r3, lbl_8056D410@ha +/* 8016617C 001630DC C0 21 00 E0 */ lfs f1, 0xe0(r1) +/* 80166180 001630E0 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l +/* 80166184 001630E4 C0 01 00 F0 */ lfs f0, 0xf0(r1) +/* 80166188 001630E8 38 61 00 7C */ addi r3, r1, 0x7c +/* 8016618C 001630EC 80 0D A3 88 */ lwz r0, lbl_805A8F48@sda21(r13) +/* 80166190 001630F0 38 81 00 40 */ addi r4, r1, 0x40 +/* 80166194 001630F4 D0 41 00 60 */ stfs f2, 0x60(r1) +/* 80166198 001630F8 38 C1 00 44 */ addi r6, r1, 0x44 +/* 8016619C 001630FC D0 21 00 64 */ stfs f1, 0x64(r1) +/* 801661A0 00163100 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 801661A4 00163104 90 01 00 44 */ stw r0, 0x44(r1) +/* 801661A8 00163108 80 1C 00 04 */ lwz r0, 4(r28) +/* 801661AC 0016310C 90 01 00 3C */ stw r0, 0x3c(r1) +/* 801661B0 00163110 90 01 00 40 */ stw r0, 0x40(r1) +/* 801661B4 00163114 4B EE B2 D1 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 801661B8 00163118 3C 80 80 3D */ lis r4, lbl_803D0398@ha +/* 801661BC 0016311C 38 61 00 50 */ addi r3, r1, 0x50 +/* 801661C0 00163120 38 84 03 98 */ addi r4, r4, lbl_803D0398@l +/* 801661C4 00163124 3B 60 00 01 */ li r27, 1 +/* 801661C8 00163128 38 84 00 5B */ addi r4, r4, 0x5b +/* 801661CC 0016312C 4B E9 EA ED */ bl string_l__4rstlFPCc +/* 801661D0 00163130 A0 7C 05 7A */ lhz r3, 0x57a(r28) +/* 801661D4 00163134 38 C0 00 00 */ li r6, 0 +/* 801661D8 00163138 38 1C 05 7C */ addi r0, r28, 0x57c +/* 801661DC 0016313C C0 22 9F C0 */ lfs f1, lbl_805ABCE0@sda21(r2) +/* 801661E0 00163140 B0 61 00 20 */ sth r3, 0x20(r1) +/* 801661E4 00163144 7F E3 FB 78 */ mr r3, r31 +/* 801661E8 00163148 C0 42 9F 7C */ lfs f2, lbl_805ABC9C@sda21(r2) +/* 801661EC 0016314C 7F C7 F3 78 */ mr r7, r30 +/* 801661F0 00163150 90 C1 00 08 */ stw r6, 8(r1) +/* 801661F4 00163154 38 81 00 20 */ addi r4, r1, 0x20 +/* 801661F8 00163158 C0 62 9F E8 */ lfs f3, lbl_805ABD08@sda21(r2) +/* 801661FC 0016315C 38 A1 00 50 */ addi r5, r1, 0x50 +/* 80166200 00163160 90 C1 00 0C */ stw r6, 0xc(r1) +/* 80166204 00163164 38 C1 00 7C */ addi r6, r1, 0x7c +/* 80166208 00163168 39 01 00 60 */ addi r8, r1, 0x60 +/* 8016620C 0016316C 3B 40 00 01 */ li r26, 1 +/* 80166210 00163170 90 01 00 10 */ stw r0, 0x10(r1) +/* 80166214 00163174 39 20 00 00 */ li r9, 0 +/* 80166218 00163178 39 40 00 01 */ li r10, 1 +/* 8016621C 0016317C 48 07 05 11 */ bl "__ct__17CScriptVisorFlareF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfobRC9CVector3fQ211CVisorFlare10EBlendModebfffRCQ24rstl60vector" +/* 80166220 00163180 7C 7F 1B 78 */ mr r31, r3 +lbl_80166224: +/* 80166224 00163184 7F 40 07 75 */ extsb. r0, r26 +/* 80166228 00163188 41 82 00 0C */ beq lbl_80166234 +/* 8016622C 0016318C 38 61 00 50 */ addi r3, r1, 0x50 +/* 80166230 00163190 48 1D 78 B1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80166234: +/* 80166234 00163194 7F 60 07 75 */ extsb. r0, r27 +/* 80166238 00163198 41 82 00 44 */ beq lbl_8016627C +/* 8016623C 0016319C 80 01 00 84 */ lwz r0, 0x84(r1) +/* 80166240 001631A0 80 61 00 8C */ lwz r3, 0x8c(r1) +/* 80166244 001631A4 1C 00 00 0C */ mulli r0, r0, 0xc +/* 80166248 001631A8 90 61 00 30 */ stw r3, 0x30(r1) +/* 8016624C 001631AC 7C 64 1B 78 */ mr r4, r3 +/* 80166250 001631B0 7C 03 02 14 */ add r0, r3, r0 +/* 80166254 001631B4 90 61 00 2C */ stw r3, 0x2c(r1) +/* 80166258 001631B8 90 01 00 38 */ stw r0, 0x38(r1) +/* 8016625C 001631BC 90 01 00 34 */ stw r0, 0x34(r1) +/* 80166260 001631C0 48 00 00 08 */ b lbl_80166268 +lbl_80166264: +/* 80166264 001631C4 38 84 00 0C */ addi r4, r4, 0xc +lbl_80166268: +/* 80166268 001631C8 7C 04 00 40 */ cmplw r4, r0 +/* 8016626C 001631CC 40 82 FF F8 */ bne lbl_80166264 +/* 80166270 001631D0 28 03 00 00 */ cmplwi r3, 0 +/* 80166274 001631D4 41 82 00 08 */ beq lbl_8016627C +/* 80166278 001631D8 48 1A F6 B9 */ bl Free__7CMemoryFPCv +lbl_8016627C: +/* 8016627C 001631DC 7F A3 EB 78 */ mr r3, r29 +/* 80166280 001631E0 7F E4 FB 78 */ mr r4, r31 +/* 80166284 001631E4 4B EE 68 91 */ bl AddObject__13CStateManagerFR7CEntity +lbl_80166288: +/* 80166288 001631E8 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 8016628C 001631EC 38 C0 00 04 */ li r6, 4 +/* 80166290 001631F0 41 82 00 08 */ beq lbl_80166298 +/* 80166294 001631F4 38 C0 00 01 */ li r6, 1 +lbl_80166298: +/* 80166298 001631F8 A0 1C 00 08 */ lhz r0, 8(r28) +/* 8016629C 001631FC 7F A3 EB 78 */ mr r3, r29 +/* 801662A0 00163200 7F E4 FB 78 */ mr r4, r31 +/* 801662A4 00163204 38 A1 00 1C */ addi r5, r1, 0x1c +/* 801662A8 00163208 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801662AC 0016320C B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801662B0 00163210 4B ED DC 21 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +lbl_801662B4: +/* 801662B4 00163214 BB 41 00 F8 */ lmw r26, 0xf8(r1) +/* 801662B8 00163218 80 01 01 14 */ lwz r0, 0x114(r1) +/* 801662BC 0016321C 7C 08 03 A6 */ mtlr r0 +/* 801662C0 00163220 38 21 01 10 */ addi r1, r1, 0x110 +/* 801662C4 00163224 4E 80 00 20 */ blr + +.global sub_801662c8 +sub_801662c8: +/* 801662C8 00163228 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801662CC 0016322C 7C 08 02 A6 */ mflr r0 +/* 801662D0 00163230 7C 88 23 78 */ mr r8, r4 +/* 801662D4 00163234 38 C0 00 04 */ li r6, 4 +/* 801662D8 00163238 90 01 00 24 */ stw r0, 0x24(r1) +/* 801662DC 0016323C 54 A0 06 3F */ clrlwi. r0, r5, 0x18 +/* 801662E0 00163240 41 82 00 08 */ beq lbl_801662E8 +/* 801662E4 00163244 38 C0 00 01 */ li r6, 1 +lbl_801662E8: +/* 801662E8 00163248 A0 E3 00 08 */ lhz r7, 8(r3) +/* 801662EC 0016324C 38 81 00 10 */ addi r4, r1, 0x10 +/* 801662F0 00163250 38 A1 00 0C */ addi r5, r1, 0xc +/* 801662F4 00163254 B0 E1 00 0C */ sth r7, 0xc(r1) +/* 801662F8 00163258 A0 03 05 78 */ lhz r0, 0x578(r3) +/* 801662FC 0016325C 7D 03 43 78 */ mr r3, r8 +/* 80166300 00163260 B0 E1 00 08 */ sth r7, 8(r1) +/* 80166304 00163264 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80166308 00163268 4B ED DB 4D */ bl SendScriptMsgAlways__13CStateManagerF9TUniqueId +/* 8016630C 0016326C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80166310 00163270 7C 08 03 A6 */ mtlr r0 +/* 80166314 00163274 38 21 00 20 */ addi r1, r1, 0x20 +/* 80166318 00163278 4E 80 00 20 */ blr + +.global AcceptScriptMsg__6CDroneF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__6CDroneF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8016631C 0016327C 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 80166320 00163280 7C 08 02 A6 */ mflr r0 +/* 80166324 00163284 90 01 01 14 */ stw r0, 0x114(r1) +/* 80166328 00163288 93 E1 01 0C */ stw r31, 0x10c(r1) +/* 8016632C 0016328C 7C DF 33 78 */ mr r31, r6 +/* 80166330 00163290 93 C1 01 08 */ stw r30, 0x108(r1) +/* 80166334 00163294 7C 7E 1B 78 */ mr r30, r3 +/* 80166338 00163298 93 A1 01 04 */ stw r29, 0x104(r1) +/* 8016633C 0016329C 93 81 01 00 */ stw r28, 0x100(r1) +/* 80166340 001632A0 7C 9C 23 78 */ mr r28, r4 +/* 80166344 001632A4 A0 05 00 00 */ lhz r0, 0(r5) +/* 80166348 001632A8 38 A1 00 38 */ addi r5, r1, 0x38 +/* 8016634C 001632AC B0 01 00 38 */ sth r0, 0x38(r1) +/* 80166350 001632B0 4B F1 68 29 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 80166354 001632B4 28 1C 00 23 */ cmplwi r28, 0x23 +/* 80166358 001632B8 41 81 03 B0 */ bgt lbl_80166708 +/* 8016635C 001632BC 3C 60 80 3E */ lis r3, lbl_803E39C8@ha +/* 80166360 001632C0 57 80 10 3A */ slwi r0, r28, 2 +/* 80166364 001632C4 38 63 39 C8 */ addi r3, r3, lbl_803E39C8@l +/* 80166368 001632C8 7C 03 00 2E */ lwzx r0, r3, r0 +/* 8016636C 001632CC 7C 09 03 A6 */ mtctr r0 +/* 80166370 001632D0 4E 80 04 20 */ bctr +/* 80166374 001632D4 7F C3 F3 78 */ mr r3, r30 +/* 80166378 001632D8 7F E4 FB 78 */ mr r4, r31 +/* 8016637C 001632DC 81 9E 00 00 */ lwz r12, 0(r30) +/* 80166380 001632E0 38 A0 00 01 */ li r5, 1 +/* 80166384 001632E4 81 8C 02 D0 */ lwz r12, 0x2d0(r12) +/* 80166388 001632E8 7D 89 03 A6 */ mtctr r12 +/* 8016638C 001632EC 4E 80 04 21 */ bctrl +/* 80166390 001632F0 7F C3 F3 78 */ mr r3, r30 +/* 80166394 001632F4 7F E4 FB 78 */ mr r4, r31 +/* 80166398 001632F8 4B FF 91 01 */ bl sub_8015f498 +/* 8016639C 001632FC 48 00 03 6C */ b lbl_80166708 +/* 801663A0 00163300 3B BE 07 DC */ addi r29, r30, 0x7dc +/* 801663A4 00163304 3B 80 00 00 */ li r28, 0 +/* 801663A8 00163308 48 00 00 38 */ b lbl_801663E0 +lbl_801663AC: +/* 801663AC 0016330C A0 7D 00 00 */ lhz r3, 0(r29) +/* 801663B0 00163310 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801663B4 00163314 7C 03 00 40 */ cmplw r3, r0 +/* 801663B8 00163318 41 82 00 20 */ beq lbl_801663D8 +/* 801663BC 0016331C A0 1D 00 00 */ lhz r0, 0(r29) +/* 801663C0 00163320 7F E3 FB 78 */ mr r3, r31 +/* 801663C4 00163324 38 81 00 34 */ addi r4, r1, 0x34 +/* 801663C8 00163328 B0 01 00 34 */ sth r0, 0x34(r1) +/* 801663CC 0016332C 4B EE 5E A1 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 801663D0 00163330 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801663D4 00163334 B0 1D 00 00 */ sth r0, 0(r29) +lbl_801663D8: +/* 801663D8 00163338 3B BD 00 02 */ addi r29, r29, 2 +/* 801663DC 0016333C 3B 9C 00 01 */ addi r28, r28, 1 +lbl_801663E0: +/* 801663E0 00163340 80 1E 07 D8 */ lwz r0, 0x7d8(r30) +/* 801663E4 00163344 7C 1C 00 00 */ cmpw r28, r0 +/* 801663E8 00163348 41 80 FF C4 */ blt lbl_801663AC +/* 801663EC 0016334C 7F C3 F3 78 */ mr r3, r30 +/* 801663F0 00163350 7F E4 FB 78 */ mr r4, r31 +/* 801663F4 00163354 4B FF 90 01 */ bl sub_8015f3f4 +/* 801663F8 00163358 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801663FC 0016335C 38 81 00 30 */ addi r4, r1, 0x30 +/* 80166400 00163360 B0 01 00 30 */ sth r0, 0x30(r1) +/* 80166404 00163364 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 80166408 00163368 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 8016640C 0016336C 80 63 00 00 */ lwz r3, 0(r3) +/* 80166410 00163370 38 63 01 88 */ addi r3, r3, 0x188 +/* 80166414 00163374 48 05 A5 A1 */ bl sub_801c09b4 +/* 80166418 00163378 A0 7E 05 78 */ lhz r3, 0x578(r30) +/* 8016641C 0016337C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80166420 00163380 7C 03 00 40 */ cmplw r3, r0 +/* 80166424 00163384 41 82 00 20 */ beq lbl_80166444 +/* 80166428 00163388 A0 1E 05 78 */ lhz r0, 0x578(r30) +/* 8016642C 0016338C 7F E3 FB 78 */ mr r3, r31 +/* 80166430 00163390 38 81 00 28 */ addi r4, r1, 0x28 +/* 80166434 00163394 B0 01 00 28 */ sth r0, 0x28(r1) +/* 80166438 00163398 4B EE 5E 35 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 8016643C 0016339C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80166440 001633A0 B0 1E 05 78 */ sth r0, 0x578(r30) +lbl_80166444: +/* 80166444 001633A4 A0 7E 05 7A */ lhz r3, 0x57a(r30) +/* 80166448 001633A8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016644C 001633AC 7C 03 00 40 */ cmplw r3, r0 +/* 80166450 001633B0 41 82 00 20 */ beq lbl_80166470 +/* 80166454 001633B4 A0 1E 05 7A */ lhz r0, 0x57a(r30) +/* 80166458 001633B8 7F E3 FB 78 */ mr r3, r31 +/* 8016645C 001633BC 38 81 00 24 */ addi r4, r1, 0x24 +/* 80166460 001633C0 B0 01 00 24 */ sth r0, 0x24(r1) +/* 80166464 001633C4 4B EE 5E 09 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 80166468 001633C8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016646C 001633CC B0 1E 05 7A */ sth r0, 0x57a(r30) +lbl_80166470: +/* 80166470 001633D0 80 1E 07 D0 */ lwz r0, 0x7d0(r30) +/* 80166474 001633D4 28 00 00 00 */ cmplwi r0, 0 +/* 80166478 001633D8 41 82 02 90 */ beq lbl_80166708 +/* 8016647C 001633DC 80 1E 07 D0 */ lwz r0, 0x7d0(r30) +/* 80166480 001633E0 38 61 00 48 */ addi r3, r1, 0x48 +/* 80166484 001633E4 90 01 00 48 */ stw r0, 0x48(r1) +/* 80166488 001633E8 48 18 39 FD */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle +/* 8016648C 001633EC 38 00 00 00 */ li r0, 0 +/* 80166490 001633F0 90 1E 07 D0 */ stw r0, 0x7d0(r30) +/* 80166494 001633F4 48 00 02 74 */ b lbl_80166708 +/* 80166498 001633F8 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8016649C 001633FC 7F E4 FB 78 */ mr r4, r31 +/* 801664A0 00163400 4B FD 48 51 */ bl Activate__15CBodyControllerFR13CStateManager +/* 801664A4 00163404 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801664A8 00163408 38 80 00 02 */ li r4, 2 +/* 801664AC 0016340C 4B FD 45 2D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801664B0 00163410 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 801664B4 00163414 38 C0 00 00 */ li r6, 0 +/* 801664B8 00163418 80 FE 04 50 */ lwz r7, 0x450(r30) +/* 801664BC 0016341C 7F C3 F3 78 */ mr r3, r30 +/* 801664C0 00163420 7F E5 FB 78 */ mr r5, r31 +/* 801664C4 00163424 38 80 00 35 */ li r4, 0x35 +/* 801664C8 00163428 D0 07 02 D4 */ stfs f0, 0x2d4(r7) +/* 801664CC 0016342C D0 1E 05 CC */ stfs f0, 0x5cc(r30) +/* 801664D0 00163430 88 1E 04 E1 */ lbz r0, 0x4e1(r30) +/* 801664D4 00163434 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 +/* 801664D8 00163438 98 1E 04 E1 */ stb r0, 0x4e1(r30) +/* 801664DC 0016343C 4B EE DE 75 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801664E0 00163440 7F E4 FB 78 */ mr r4, r31 +/* 801664E4 00163444 38 61 00 20 */ addi r3, r1, 0x20 +/* 801664E8 00163448 4B EE 6B F5 */ bl AllocateUniqueId__13CStateManagerFv +/* 801664EC 0016344C A0 01 00 20 */ lhz r0, 0x20(r1) +/* 801664F0 00163450 B0 1E 05 78 */ sth r0, 0x578(r30) +/* 801664F4 00163454 48 1E 3A A9 */ bl Red__6CColorFv +/* 801664F8 00163458 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801664FC 0016345C 7C 65 1B 78 */ mr r5, r3 +/* 80166500 00163460 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 80166504 00163464 38 61 00 60 */ addi r3, r1, 0x60 +/* 80166508 00163468 48 19 FF 2D */ bl BuildPoint__6CLightFRC9CVector3fRC6CColor +/* 8016650C 0016346C 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 80166510 00163470 38 81 00 60 */ addi r4, r1, 0x60 +/* 80166514 00163474 4B ED 50 5D */ bl __ct__6CLightFCR6CLight +/* 80166518 00163478 3C 60 80 3D */ lis r3, lbl_803D0398@ha +/* 8016651C 0016347C 3B 80 00 00 */ li r28, 0 +/* 80166520 00163480 38 83 03 98 */ addi r4, r3, lbl_803D0398@l +/* 80166524 00163484 38 60 01 48 */ li r3, 0x148 +/* 80166528 00163488 38 84 00 3B */ addi r4, r4, 0x3b +/* 8016652C 0016348C 38 A0 00 00 */ li r5, 0 +/* 80166530 00163490 48 1A F3 3D */ bl __nw__FUlPCcPCc +/* 80166534 00163494 7C 7D 1B 79 */ or. r29, r3, r3 +/* 80166538 00163498 41 82 00 7C */ beq lbl_801665B4 +/* 8016653C 0016349C A0 1E 00 08 */ lhz r0, 8(r30) +/* 80166540 001634A0 3C 60 80 3D */ lis r3, lbl_803D0398@ha +/* 80166544 001634A4 38 83 03 98 */ addi r4, r3, lbl_803D0398@l +/* 80166548 001634A8 38 61 00 50 */ addi r3, r1, 0x50 +/* 8016654C 001634AC B0 01 00 18 */ sth r0, 0x18(r1) +/* 80166550 001634B0 38 84 00 6B */ addi r4, r4, 0x6b +/* 80166554 001634B4 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 80166558 001634B8 4B E9 E7 61 */ bl string_l__4rstlFPCc +/* 8016655C 001634BC 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 80166560 001634C0 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 80166564 001634C4 80 9E 00 04 */ lwz r4, 4(r30) +/* 80166568 001634C8 39 03 66 70 */ addi r8, r3, skIdentity4f@l +/* 8016656C 001634CC 54 06 CF FE */ rlwinm r6, r0, 0x19, 0x1f, 0x1f +/* 80166570 001634D0 38 00 00 00 */ li r0, 0 +/* 80166574 001634D4 90 81 00 44 */ stw r4, 0x44(r1) +/* 80166578 001634D8 7F A3 EB 78 */ mr r3, r29 +/* 8016657C 001634DC C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 80166580 001634E0 38 A1 00 44 */ addi r5, r1, 0x44 +/* 80166584 001634E4 A1 3E 05 78 */ lhz r9, 0x578(r30) +/* 80166588 001634E8 38 E1 00 50 */ addi r7, r1, 0x50 +/* 8016658C 001634EC 90 81 00 40 */ stw r4, 0x40(r1) +/* 80166590 001634F0 38 81 00 14 */ addi r4, r1, 0x14 +/* 80166594 001634F4 39 41 00 B0 */ addi r10, r1, 0xb0 +/* 80166598 001634F8 3B 80 00 01 */ li r28, 1 +/* 8016659C 001634FC B1 21 00 14 */ sth r9, 0x14(r1) +/* 801665A0 00163500 39 21 00 1C */ addi r9, r1, 0x1c +/* 801665A4 00163504 90 01 00 08 */ stw r0, 8(r1) +/* 801665A8 00163508 90 01 00 0C */ stw r0, 0xc(r1) +/* 801665AC 0016350C 4B F4 F2 79 */ bl "__ct__10CGameLightF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC12CTransform4f9TUniqueIdRC6CLightUiUif" +/* 801665B0 00163510 7C 7D 1B 78 */ mr r29, r3 +lbl_801665B4: +/* 801665B4 00163514 7F 80 07 75 */ extsb. r0, r28 +/* 801665B8 00163518 7F BC EB 78 */ mr r28, r29 +/* 801665BC 0016351C 41 82 00 0C */ beq lbl_801665C8 +/* 801665C0 00163520 38 61 00 50 */ addi r3, r1, 0x50 +/* 801665C4 00163524 48 1D 75 1D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801665C8: +/* 801665C8 00163528 7F E3 FB 78 */ mr r3, r31 +/* 801665CC 0016352C 7F 84 E3 78 */ mr r4, r28 +/* 801665D0 00163530 4B EE 65 45 */ bl AddObject__13CStateManagerFR7CEntity +/* 801665D4 00163534 48 00 01 34 */ b lbl_80166708 +/* 801665D8 00163538 88 1E 08 34 */ lbz r0, 0x834(r30) +/* 801665DC 0016353C 38 60 00 01 */ li r3, 1 +/* 801665E0 00163540 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801665E4 00163544 98 1E 08 34 */ stb r0, 0x834(r30) +/* 801665E8 00163548 48 00 01 20 */ b lbl_80166708 +/* 801665EC 0016354C 80 BE 00 04 */ lwz r5, 4(r30) +/* 801665F0 00163550 80 9F 08 50 */ lwz r4, 0x850(r31) +/* 801665F4 00163554 54 A3 18 38 */ slwi r3, r5, 3 +/* 801665F8 00163558 90 A1 00 4C */ stw r5, 0x4c(r1) +/* 801665FC 0016355C 80 84 00 20 */ lwz r4, 0x20(r4) +/* 80166600 00163560 38 03 00 04 */ addi r0, r3, 4 +/* 80166604 00163564 90 A1 00 3C */ stw r5, 0x3c(r1) +/* 80166608 00163568 7C 64 00 2E */ lwzx r3, r4, r0 +/* 8016660C 0016356C 80 63 01 2C */ lwz r3, 0x12c(r3) +/* 80166610 00163570 80 03 10 BC */ lwz r0, 0x10bc(r3) +/* 80166614 00163574 90 1E 06 B0 */ stw r0, 0x6b0(r30) +/* 80166618 00163578 A0 7E 06 88 */ lhz r3, 0x688(r30) +/* 8016661C 0016357C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80166620 00163580 7C 03 00 40 */ cmplw r3, r0 +/* 80166624 00163584 40 82 00 34 */ bne lbl_80166658 +/* 80166628 00163588 7F C4 F3 78 */ mr r4, r30 +/* 8016662C 0016358C 7F E5 FB 78 */ mr r5, r31 +/* 80166630 00163590 38 61 00 10 */ addi r3, r1, 0x10 +/* 80166634 00163594 48 0D 3B B5 */ bl GetTeamAiMgr__10CTeamAiMgrF3CAiRC13CStateManager +/* 80166638 00163598 A0 01 00 10 */ lhz r0, 0x10(r1) +/* 8016663C 0016359C B0 1E 06 88 */ sth r0, 0x688(r30) +/* 80166640 001635A0 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 80166644 001635A4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80166648 001635A8 41 82 00 10 */ beq lbl_80166658 +/* 8016664C 001635AC 7F C3 F3 78 */ mr r3, r30 +/* 80166650 001635B0 7F E4 FB 78 */ mr r4, r31 +/* 80166654 001635B4 4B FF 8E 45 */ bl sub_8015f498 +lbl_80166658: +/* 80166658 001635B8 7F C3 F3 78 */ mr r3, r30 +/* 8016665C 001635BC 7F E4 FB 78 */ mr r4, r31 +/* 80166660 001635C0 81 9E 00 00 */ lwz r12, 0(r30) +/* 80166664 001635C4 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80166668 001635C8 7D 89 03 A6 */ mtctr r12 +/* 8016666C 001635CC 4E 80 04 21 */ bctrl +/* 80166670 001635D0 C0 03 00 00 */ lfs f0, 0(r3) +/* 80166674 001635D4 C0 62 9F 7C */ lfs f3, lbl_805ABC9C@sda21(r2) +/* 80166678 001635D8 D0 1E 06 04 */ stfs f0, 0x604(r30) +/* 8016667C 001635DC 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 80166680 001635E0 C0 03 00 00 */ lfs f0, 0(r3) +/* 80166684 001635E4 C0 23 00 04 */ lfs f1, 4(r3) +/* 80166688 001635E8 EC 03 00 24 */ fdivs f0, f3, f0 +/* 8016668C 001635EC C0 43 00 08 */ lfs f2, 8(r3) +/* 80166690 001635F0 D0 1E 05 5C */ stfs f0, 0x55c(r30) +/* 80166694 001635F4 EC 23 08 24 */ fdivs f1, f3, f1 +/* 80166698 001635F8 EC 03 10 24 */ fdivs f0, f3, f2 +/* 8016669C 001635FC D0 3E 05 60 */ stfs f1, 0x560(r30) +/* 801666A0 00163600 D0 1E 05 64 */ stfs f0, 0x564(r30) +/* 801666A4 00163604 88 1E 08 35 */ lbz r0, 0x835(r30) +/* 801666A8 00163608 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801666AC 0016360C 41 82 00 5C */ beq lbl_80166708 +/* 801666B0 00163610 7F C3 F3 78 */ mr r3, r30 +/* 801666B4 00163614 38 80 00 00 */ li r4, 0 +/* 801666B8 00163618 4B EE CC 6D */ bl SetSoundEventPitchBend__6CActorFi +/* 801666BC 0016361C 48 00 00 4C */ b lbl_80166708 +/* 801666C0 00163620 88 9E 08 35 */ lbz r4, 0x835(r30) +/* 801666C4 00163624 54 80 DF FF */ rlwinm. r0, r4, 0x1b, 0x1f, 0x1f +/* 801666C8 00163628 40 82 00 40 */ bne lbl_80166708 +/* 801666CC 0016362C 88 1E 08 34 */ lbz r0, 0x834(r30) +/* 801666D0 00163630 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801666D4 00163634 41 82 00 34 */ beq lbl_80166708 +/* 801666D8 00163638 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 801666DC 0016363C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801666E0 00163640 40 82 00 28 */ bne lbl_80166708 +/* 801666E4 00163644 38 00 00 01 */ li r0, 1 +/* 801666E8 00163648 7F C3 F3 78 */ mr r3, r30 +/* 801666EC 0016364C 50 04 2E B4 */ rlwimi r4, r0, 5, 0x1a, 0x1a +/* 801666F0 00163650 98 9E 08 35 */ stb r4, 0x835(r30) +/* 801666F4 00163654 7F E4 FB 78 */ mr r4, r31 +/* 801666F8 00163658 81 9E 00 00 */ lwz r12, 0(r30) +/* 801666FC 0016365C 81 8C 02 9C */ lwz r12, 0x29c(r12) +/* 80166700 00163660 7D 89 03 A6 */ mtctr r12 +/* 80166704 00163664 4E 80 04 21 */ bctrl +lbl_80166708: +/* 80166708 00163668 80 01 01 14 */ lwz r0, 0x114(r1) +/* 8016670C 0016366C 83 E1 01 0C */ lwz r31, 0x10c(r1) +/* 80166710 00163670 83 C1 01 08 */ lwz r30, 0x108(r1) +/* 80166714 00163674 83 A1 01 04 */ lwz r29, 0x104(r1) +/* 80166718 00163678 83 81 01 00 */ lwz r28, 0x100(r1) +/* 8016671C 0016367C 7C 08 03 A6 */ mtlr r0 +/* 80166720 00163680 38 21 01 10 */ addi r1, r1, 0x110 +/* 80166724 00163684 4E 80 00 20 */ blr + +.global Accept__6CDroneFR8IVisitor +Accept__6CDroneFR8IVisitor: +/* 80166728 00163688 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8016672C 0016368C 7C 08 02 A6 */ mflr r0 +/* 80166730 00163690 90 01 00 14 */ stw r0, 0x14(r1) +/* 80166734 00163694 7C 60 1B 78 */ mr r0, r3 +/* 80166738 00163698 7C 83 23 78 */ mr r3, r4 +/* 8016673C 0016369C 81 84 00 00 */ lwz r12, 0(r4) +/* 80166740 001636A0 7C 04 03 78 */ mr r4, r0 +/* 80166744 001636A4 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 80166748 001636A8 7D 89 03 A6 */ mtctr r12 +/* 8016674C 001636AC 4E 80 04 21 */ bctrl +/* 80166750 001636B0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80166754 001636B4 7C 08 03 A6 */ mtlr r0 +/* 80166758 001636B8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8016675C 001636BC 4E 80 00 20 */ blr + +.global "__ct__6CDroneF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC11CDamageInfoUiUiUiRC11CDamageInfofUiQ24rstl60vectorRC16CActorParameters" +"__ct__6CDroneF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC11CDamageInfoUiUiUiRC11CDamageInfofUiQ24rstl60vectorRC16CActorParameters": +/* 80166760 001636C0 94 21 FE 50 */ stwu r1, -0x1b0(r1) +/* 80166764 001636C4 7C 08 02 A6 */ mflr r0 +/* 80166768 001636C8 90 01 01 B4 */ stw r0, 0x1b4(r1) +/* 8016676C 001636CC DB E1 01 A0 */ stfd f31, 0x1a0(r1) +/* 80166770 001636D0 F3 E1 01 A8 */ psq_st f31, 424(r1), 0, qr0 +/* 80166774 001636D4 DB C1 01 90 */ stfd f30, 0x190(r1) +/* 80166778 001636D8 F3 C1 01 98 */ psq_st f30, 408(r1), 0, qr0 +/* 8016677C 001636DC DB A1 01 80 */ stfd f29, 0x180(r1) +/* 80166780 001636E0 F3 A1 01 88 */ psq_st f29, 392(r1), 0, qr0 +/* 80166784 001636E4 DB 81 01 70 */ stfd f28, 0x170(r1) +/* 80166788 001636E8 F3 81 01 78 */ psq_st f28, 376(r1), 0, qr0 +/* 8016678C 001636EC DB 61 01 60 */ stfd f27, 0x160(r1) +/* 80166790 001636F0 F3 61 01 68 */ psq_st f27, 360(r1), 0, qr0 +/* 80166794 001636F4 DB 41 01 50 */ stfd f26, 0x150(r1) +/* 80166798 001636F8 F3 41 01 58 */ psq_st f26, 344(r1), 0, qr0 +/* 8016679C 001636FC DB 21 01 40 */ stfd f25, 0x140(r1) +/* 801667A0 00163700 F3 21 01 48 */ psq_st f25, 328(r1), 0, qr0 +/* 801667A4 00163704 DB 01 01 30 */ stfd f24, 0x130(r1) +/* 801667A8 00163708 F3 01 01 38 */ psq_st f24, 312(r1), 0, qr0 +/* 801667AC 0016370C DA E1 01 20 */ stfd f23, 0x120(r1) +/* 801667B0 00163710 F2 E1 01 28 */ psq_st f23, 296(r1), 0, qr0 +/* 801667B4 00163714 DA C1 01 10 */ stfd f22, 0x110(r1) +/* 801667B8 00163718 F2 C1 01 18 */ psq_st f22, 280(r1), 0, qr0 +/* 801667BC 0016371C DA A1 01 00 */ stfd f21, 0x100(r1) +/* 801667C0 00163720 F2 A1 01 08 */ psq_st f21, 264(r1), 0, qr0 +/* 801667C4 00163724 DA 81 00 F0 */ stfd f20, 0xf0(r1) +/* 801667C8 00163728 F2 81 00 F8 */ psq_st f20, 248(r1), 0, qr0 +/* 801667CC 0016372C DA 61 00 E0 */ stfd f19, 0xe0(r1) +/* 801667D0 00163730 F2 61 00 E8 */ psq_st f19, 232(r1), 0, qr0 +/* 801667D4 00163734 DA 41 00 D0 */ stfd f18, 0xd0(r1) +/* 801667D8 00163738 F2 41 00 D8 */ psq_st f18, 216(r1), 0, qr0 +/* 801667DC 0016373C DA 21 00 C0 */ stfd f17, 0xc0(r1) +/* 801667E0 00163740 F2 21 00 C8 */ psq_st f17, 200(r1), 0, qr0 +/* 801667E4 00163744 DA 01 00 B0 */ stfd f16, 0xb0(r1) +/* 801667E8 00163748 F2 01 00 B8 */ psq_st f16, 184(r1), 0, qr0 +/* 801667EC 0016374C D9 E1 00 A0 */ stfd f15, 0xa0(r1) +/* 801667F0 00163750 F1 E1 00 A8 */ psq_st f15, 168(r1), 0, qr0 +/* 801667F4 00163754 D9 C1 00 90 */ stfd f14, 0x90(r1) +/* 801667F8 00163758 F1 C1 00 98 */ psq_st f14, 152(r1), 0, qr0 +/* 801667FC 0016375C BE 01 00 50 */ stmw r16, 0x50(r1) +/* 80166800 00163760 7C D1 33 79 */ or. r17, r6, r6 +/* 80166804 00163764 FD C0 08 90 */ fmr f14, f1 +/* 80166808 00163768 FD E0 10 90 */ fmr f15, f2 +/* 8016680C 0016376C 82 A1 01 B8 */ lwz r21, 0x1b8(r1) +/* 80166810 00163770 FE 00 18 90 */ fmr f16, f3 +/* 80166814 00163774 82 C1 01 BC */ lwz r22, 0x1bc(r1) +/* 80166818 00163778 FE 20 20 90 */ fmr f17, f4 +/* 8016681C 0016377C FE 40 28 90 */ fmr f18, f5 +/* 80166820 00163780 FE 60 30 90 */ fmr f19, f6 +/* 80166824 00163784 81 81 01 C0 */ lwz r12, 0x1c0(r1) +/* 80166828 00163788 FE 80 38 90 */ fmr f20, f7 +/* 8016682C 0016378C 81 61 01 C4 */ lwz r11, 0x1c4(r1) +/* 80166830 00163790 FE A0 40 90 */ fmr f21, f8 +/* 80166834 00163794 82 E1 01 C8 */ lwz r23, 0x1c8(r1) +/* 80166838 00163798 83 01 01 CC */ lwz r24, 0x1cc(r1) +/* 8016683C 0016379C 7C 7E 1B 78 */ mr r30, r3 +/* 80166840 001637A0 83 21 01 D0 */ lwz r25, 0x1d0(r1) +/* 80166844 001637A4 7C F2 3B 78 */ mr r18, r7 +/* 80166848 001637A8 82 01 01 D4 */ lwz r16, 0x1d4(r1) +/* 8016684C 001637AC 7D 13 43 78 */ mr r19, r8 +/* 80166850 001637B0 83 41 01 D8 */ lwz r26, 0x1d8(r1) +/* 80166854 001637B4 7D 34 4B 78 */ mr r20, r9 +/* 80166858 001637B8 C2 C1 01 DC */ lfs f22, 0x1dc(r1) +/* 8016685C 001637BC 7D 5F 53 78 */ mr r31, r10 +/* 80166860 001637C0 C2 E1 01 E0 */ lfs f23, 0x1e0(r1) +/* 80166864 001637C4 38 00 00 02 */ li r0, 2 +/* 80166868 001637C8 C3 01 01 E4 */ lfs f24, 0x1e4(r1) +/* 8016686C 001637CC C3 21 01 E8 */ lfs f25, 0x1e8(r1) +/* 80166870 001637D0 C3 41 01 EC */ lfs f26, 0x1ec(r1) +/* 80166874 001637D4 C3 61 01 F0 */ lfs f27, 0x1f0(r1) +/* 80166878 001637D8 C3 81 01 F4 */ lfs f28, 0x1f4(r1) +/* 8016687C 001637DC C3 A1 01 F8 */ lfs f29, 0x1f8(r1) +/* 80166880 001637E0 C3 C1 01 FC */ lfs f30, 0x1fc(r1) +/* 80166884 001637E4 C3 E1 02 00 */ lfs f31, 0x200(r1) +/* 80166888 001637E8 83 61 02 0C */ lwz r27, 0x20c(r1) +/* 8016688C 001637EC 83 81 02 20 */ lwz r28, 0x220(r1) +/* 80166890 001637F0 8B A1 02 27 */ lbz r29, 0x227(r1) +/* 80166894 001637F4 40 82 00 08 */ bne lbl_8016689C +/* 80166898 001637F8 38 00 00 01 */ li r0, 1 +lbl_8016689C: +/* 8016689C 001637FC A0 84 00 00 */ lhz r4, 0(r4) +/* 801668A0 00163800 7F C3 F3 78 */ mr r3, r30 +/* 801668A4 00163804 7C A6 2B 78 */ mr r6, r5 +/* 801668A8 00163808 7E 27 8B 78 */ mr r7, r17 +/* 801668AC 0016380C B0 81 00 20 */ sth r4, 0x20(r1) +/* 801668B0 00163810 7E 48 93 78 */ mr r8, r18 +/* 801668B4 00163814 7E 69 9B 78 */ mr r9, r19 +/* 801668B8 00163818 7E 8A A3 78 */ mr r10, r20 +/* 801668BC 0016381C 93 E1 00 08 */ stw r31, 8(r1) +/* 801668C0 00163820 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801668C4 00163824 38 80 00 07 */ li r4, 7 +/* 801668C8 00163828 92 C1 00 0C */ stw r22, 0xc(r1) +/* 801668CC 0016382C 91 81 00 10 */ stw r12, 0x10(r1) +/* 801668D0 00163830 91 61 00 14 */ stw r11, 0x14(r1) +/* 801668D4 00163834 92 A1 00 18 */ stw r21, 0x18(r1) +/* 801668D8 00163838 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801668DC 0016383C 4B F1 6B 75 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" +/* 801668E0 00163840 3C 60 80 3E */ lis r3, lbl_803E36A8@ha +/* 801668E4 00163844 3C 80 43 52 */ lis r4, 0x43525343@ha +/* 801668E8 00163848 38 03 36 A8 */ addi r0, r3, lbl_803E36A8@l +/* 801668EC 0016384C 38 61 00 24 */ addi r3, r1, 0x24 +/* 801668F0 00163850 90 1E 00 00 */ stw r0, 0(r30) +/* 801668F4 00163854 38 04 53 43 */ addi r0, r4, 0x43525343@l +/* 801668F8 00163858 38 A1 00 2C */ addi r5, r1, 0x2c +/* 801668FC 0016385C 93 1E 05 68 */ stw r24, 0x568(r30) +/* 80166900 00163860 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80166904 00163864 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80166908 00163868 93 61 00 30 */ stw r27, 0x30(r1) +/* 8016690C 0016386C 81 84 00 00 */ lwz r12, 0(r4) +/* 80166910 00163870 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80166914 00163874 7D 89 03 A6 */ mtctr r12 +/* 80166918 00163878 4E 80 04 21 */ bctrl +/* 8016691C 0016387C 3A 3E 05 6C */ addi r17, r30, 0x56c +/* 80166920 00163880 38 81 00 24 */ addi r4, r1, 0x24 +/* 80166924 00163884 7E 23 8B 78 */ mr r3, r17 +/* 80166928 00163888 48 1D A5 81 */ bl __ct__6CTokenFRC6CToken +/* 8016692C 0016388C 7E 23 8B 78 */ mr r3, r17 +/* 80166930 00163890 48 1D A4 DD */ bl GetObj__6CTokenFv +/* 80166934 00163894 80 03 00 04 */ lwz r0, 4(r3) +/* 80166938 00163898 38 61 00 24 */ addi r3, r1, 0x24 +/* 8016693C 0016389C 38 80 FF FF */ li r4, -1 +/* 80166940 001638A0 90 11 00 08 */ stw r0, 8(r17) +/* 80166944 001638A4 48 1D A4 FD */ bl __dt__6CTokenFv +/* 80166948 001638A8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016694C 001638AC 7F 44 D3 78 */ mr r4, r26 +/* 80166950 001638B0 38 7E 05 7C */ addi r3, r30, 0x57c +/* 80166954 001638B4 B0 1E 05 78 */ sth r0, 0x578(r30) +/* 80166958 001638B8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016695C 001638BC B0 1E 05 7A */ sth r0, 0x57a(r30) +/* 80166960 001638C0 4B F6 7B 0D */ bl sub_800ce46c +/* 80166964 001638C4 38 00 00 02 */ li r0, 2 +/* 80166968 001638C8 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8016696C 001638CC 90 1E 05 8C */ stw r0, 0x58c(r30) +/* 80166970 001638D0 3A 23 66 A0 */ addi r17, r3, skZero3f@l +/* 80166974 001638D4 3A 5E 06 90 */ addi r18, r30, 0x690 +/* 80166978 001638D8 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 8016697C 001638DC 80 17 00 00 */ lwz r0, 0(r23) +/* 80166980 001638E0 38 9E 00 68 */ addi r4, r30, 0x68 +/* 80166984 001638E4 7E 43 93 78 */ mr r3, r18 +/* 80166988 001638E8 90 1E 05 90 */ stw r0, 0x590(r30) +/* 8016698C 001638EC 88 17 00 04 */ lbz r0, 4(r23) +/* 80166990 001638F0 98 1E 05 94 */ stb r0, 0x594(r30) +/* 80166994 001638F4 C0 17 00 08 */ lfs f0, 8(r23) +/* 80166998 001638F8 D0 1E 05 98 */ stfs f0, 0x598(r30) +/* 8016699C 001638FC C0 17 00 0C */ lfs f0, 0xc(r23) +/* 801669A0 00163900 D0 1E 05 9C */ stfs f0, 0x59c(r30) +/* 801669A4 00163904 C0 17 00 10 */ lfs f0, 0x10(r23) +/* 801669A8 00163908 D0 1E 05 A0 */ stfs f0, 0x5a0(r30) +/* 801669AC 0016390C C0 17 00 14 */ lfs f0, 0x14(r23) +/* 801669B0 00163910 D0 1E 05 A4 */ stfs f0, 0x5a4(r30) +/* 801669B4 00163914 88 17 00 18 */ lbz r0, 0x18(r23) +/* 801669B8 00163918 98 1E 05 A8 */ stb r0, 0x5a8(r30) +/* 801669BC 0016391C 80 19 00 00 */ lwz r0, 0(r25) +/* 801669C0 00163920 90 1E 05 AC */ stw r0, 0x5ac(r30) +/* 801669C4 00163924 88 19 00 04 */ lbz r0, 4(r25) +/* 801669C8 00163928 98 1E 05 B0 */ stb r0, 0x5b0(r30) +/* 801669CC 0016392C C0 19 00 08 */ lfs f0, 8(r25) +/* 801669D0 00163930 D0 1E 05 B4 */ stfs f0, 0x5b4(r30) +/* 801669D4 00163934 C0 19 00 0C */ lfs f0, 0xc(r25) +/* 801669D8 00163938 D0 1E 05 B8 */ stfs f0, 0x5b8(r30) +/* 801669DC 0016393C C0 19 00 10 */ lfs f0, 0x10(r25) +/* 801669E0 00163940 D0 1E 05 BC */ stfs f0, 0x5bc(r30) +/* 801669E4 00163944 C0 19 00 14 */ lfs f0, 0x14(r25) +/* 801669E8 00163948 D0 1E 05 C0 */ stfs f0, 0x5c0(r30) +/* 801669EC 0016394C C0 01 02 18 */ lfs f0, 0x218(r1) +/* 801669F0 00163950 88 19 00 18 */ lbz r0, 0x18(r25) +/* 801669F4 00163954 98 1E 05 C4 */ stb r0, 0x5c4(r30) +/* 801669F8 00163958 D0 3E 05 C8 */ stfs f1, 0x5c8(r30) +/* 801669FC 0016395C D0 3E 05 CC */ stfs f1, 0x5cc(r30) +/* 80166A00 00163960 D0 3E 05 D0 */ stfs f1, 0x5d0(r30) +/* 80166A04 00163964 D0 3E 05 D4 */ stfs f1, 0x5d4(r30) +/* 80166A08 00163968 D0 3E 05 D8 */ stfs f1, 0x5d8(r30) +/* 80166A0C 0016396C D0 3E 05 DC */ stfs f1, 0x5dc(r30) +/* 80166A10 00163970 D0 3E 05 E0 */ stfs f1, 0x5e0(r30) +/* 80166A14 00163974 D0 1E 05 E4 */ stfs f0, 0x5e4(r30) +/* 80166A18 00163978 C0 01 02 08 */ lfs f0, 0x208(r1) +/* 80166A1C 0016397C D0 3E 05 E8 */ stfs f1, 0x5e8(r30) +/* 80166A20 00163980 D1 DE 05 EC */ stfs f14, 0x5ec(r30) +/* 80166A24 00163984 D1 FE 05 F0 */ stfs f15, 0x5f0(r30) +/* 80166A28 00163988 D2 1E 05 F4 */ stfs f16, 0x5f4(r30) +/* 80166A2C 0016398C D2 3E 05 F8 */ stfs f17, 0x5f8(r30) +/* 80166A30 00163990 D2 5E 05 FC */ stfs f18, 0x5fc(r30) +/* 80166A34 00163994 D3 1E 06 00 */ stfs f24, 0x600(r30) +/* 80166A38 00163998 D0 3E 06 04 */ stfs f1, 0x604(r30) +/* 80166A3C 0016399C D2 7E 06 08 */ stfs f19, 0x608(r30) +/* 80166A40 001639A0 D2 9E 06 0C */ stfs f20, 0x60c(r30) +/* 80166A44 001639A4 D2 BE 06 10 */ stfs f21, 0x610(r30) +/* 80166A48 001639A8 D2 DE 06 14 */ stfs f22, 0x614(r30) +/* 80166A4C 001639AC D2 FE 06 18 */ stfs f23, 0x618(r30) +/* 80166A50 001639B0 D3 3E 06 1C */ stfs f25, 0x61c(r30) +/* 80166A54 001639B4 D0 1E 06 20 */ stfs f0, 0x620(r30) +/* 80166A58 001639B8 C0 01 02 04 */ lfs f0, 0x204(r1) +/* 80166A5C 001639BC D0 3E 06 24 */ stfs f1, 0x624(r30) +/* 80166A60 001639C0 D0 3E 06 28 */ stfs f1, 0x628(r30) +/* 80166A64 001639C4 D0 3E 06 2C */ stfs f1, 0x62c(r30) +/* 80166A68 001639C8 D0 3E 06 30 */ stfs f1, 0x630(r30) +/* 80166A6C 001639CC D0 3E 06 34 */ stfs f1, 0x634(r30) +/* 80166A70 001639D0 D0 3E 06 38 */ stfs f1, 0x638(r30) +/* 80166A74 001639D4 D3 5E 06 3C */ stfs f26, 0x63c(r30) +/* 80166A78 001639D8 D3 7E 06 40 */ stfs f27, 0x640(r30) +/* 80166A7C 001639DC D0 3E 06 44 */ stfs f1, 0x644(r30) +/* 80166A80 001639E0 D3 9E 06 48 */ stfs f28, 0x648(r30) +/* 80166A84 001639E4 D3 BE 06 4C */ stfs f29, 0x64c(r30) +/* 80166A88 001639E8 D3 DE 06 50 */ stfs f30, 0x650(r30) +/* 80166A8C 001639EC D3 FE 06 54 */ stfs f31, 0x654(r30) +/* 80166A90 001639F0 D0 1E 06 58 */ stfs f0, 0x658(r30) +/* 80166A94 001639F4 C0 01 02 10 */ lfs f0, 0x210(r1) +/* 80166A98 001639F8 D0 1E 06 5C */ stfs f0, 0x65c(r30) +/* 80166A9C 001639FC C0 01 02 14 */ lfs f0, 0x214(r1) +/* 80166AA0 00163A00 D0 1E 06 60 */ stfs f0, 0x660(r30) +/* 80166AA4 00163A04 C0 01 02 1C */ lfs f0, 0x21c(r1) +/* 80166AA8 00163A08 D0 1E 06 64 */ stfs f0, 0x664(r30) +/* 80166AAC 00163A0C D0 3E 06 68 */ stfs f1, 0x668(r30) +/* 80166AB0 00163A10 D0 3E 06 6C */ stfs f1, 0x66c(r30) +/* 80166AB4 00163A14 C0 11 00 00 */ lfs f0, 0(r17) +/* 80166AB8 00163A18 D0 1E 06 70 */ stfs f0, 0x670(r30) +/* 80166ABC 00163A1C C0 11 00 04 */ lfs f0, 4(r17) +/* 80166AC0 00163A20 D0 1E 06 74 */ stfs f0, 0x674(r30) +/* 80166AC4 00163A24 C0 11 00 08 */ lfs f0, 8(r17) +/* 80166AC8 00163A28 D0 1E 06 78 */ stfs f0, 0x678(r30) +/* 80166ACC 00163A2C C0 11 00 00 */ lfs f0, 0(r17) +/* 80166AD0 00163A30 D0 1E 06 7C */ stfs f0, 0x67c(r30) +/* 80166AD4 00163A34 C0 11 00 04 */ lfs f0, 4(r17) +/* 80166AD8 00163A38 D0 1E 06 80 */ stfs f0, 0x680(r30) +/* 80166ADC 00163A3C C0 11 00 08 */ lfs f0, 8(r17) +/* 80166AE0 00163A40 D0 1E 06 84 */ stfs f0, 0x684(r30) +/* 80166AE4 00163A44 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80166AE8 00163A48 B0 1E 06 88 */ sth r0, 0x688(r30) +/* 80166AEC 00163A4C 48 16 8D C9 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList +/* 80166AF0 00163A50 3C 60 80 3F */ lis r3, lbl_803ECAF8@ha +/* 80166AF4 00163A54 7C 1D 00 D0 */ neg r0, r29 +/* 80166AF8 00163A58 38 63 CA F8 */ addi r3, r3, lbl_803ECAF8@l +/* 80166AFC 00163A5C C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 80166B00 00163A60 90 72 00 00 */ stw r3, 0(r18) +/* 80166B04 00163A64 7C 00 EB 78 */ or r0, r0, r29 +/* 80166B08 00163A68 54 03 0F FE */ srwi r3, r0, 0x1f +/* 80166B0C 00163A6C C0 42 A0 38 */ lfs f2, lbl_805ABD58@sda21(r2) +/* 80166B10 00163A70 D0 32 00 10 */ stfs f1, 0x10(r18) +/* 80166B14 00163A74 38 A3 00 03 */ addi r5, r3, 3 +/* 80166B18 00163A78 C0 02 A0 3C */ lfs f0, lbl_805ABD5C@sda21(r2) +/* 80166B1C 00163A7C 38 7E 06 B0 */ addi r3, r30, 0x6b0 +/* 80166B20 00163A80 D0 32 00 14 */ stfs f1, 0x14(r18) +/* 80166B24 00163A84 38 80 00 00 */ li r4, 0 +/* 80166B28 00163A88 C0 22 9F 7C */ lfs f1, lbl_805ABC9C@sda21(r2) +/* 80166B2C 00163A8C D0 52 00 18 */ stfs f2, 0x18(r18) +/* 80166B30 00163A90 C0 42 A0 40 */ lfs f2, lbl_805ABD60@sda21(r2) +/* 80166B34 00163A94 D0 12 00 1C */ stfs f0, 0x1c(r18) +/* 80166B38 00163A98 80 DF 01 0C */ lwz r6, 0x10c(r31) +/* 80166B3C 00163A9C 48 06 22 59 */ bl __ct__15CPathFindSearchFP7CPFAreaUiff +/* 80166B40 00163AA0 4B EB 49 F5 */ bl Identity__10CAxisAngleFv +/* 80166B44 00163AA4 C0 23 00 00 */ lfs f1, 0(r3) +/* 80166B48 00163AA8 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80166B4C 00163AAC C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) +/* 80166B50 00163AB0 38 00 00 00 */ li r0, 0 +/* 80166B54 00163AB4 D0 3E 07 94 */ stfs f1, 0x794(r30) +/* 80166B58 00163AB8 C0 23 00 04 */ lfs f1, 4(r3) +/* 80166B5C 00163ABC D0 3E 07 98 */ stfs f1, 0x798(r30) +/* 80166B60 00163AC0 C0 23 00 08 */ lfs f1, 8(r3) +/* 80166B64 00163AC4 57 83 04 3E */ clrlwi r3, r28, 0x10 +/* 80166B68 00163AC8 D0 3E 07 9C */ stfs f1, 0x79c(r30) +/* 80166B6C 00163ACC C0 24 66 A0 */ lfs f1, skZero3f@l(r4) +/* 80166B70 00163AD0 D0 3E 07 A0 */ stfs f1, 0x7a0(r30) +/* 80166B74 00163AD4 C0 31 00 04 */ lfs f1, 4(r17) +/* 80166B78 00163AD8 D0 3E 07 A4 */ stfs f1, 0x7a4(r30) +/* 80166B7C 00163ADC C0 31 00 08 */ lfs f1, 8(r17) +/* 80166B80 00163AE0 D0 3E 07 A8 */ stfs f1, 0x7a8(r30) +/* 80166B84 00163AE4 D0 1E 07 AC */ stfs f0, 0x7ac(r30) +/* 80166B88 00163AE8 D0 1E 07 B0 */ stfs f0, 0x7b0(r30) +/* 80166B8C 00163AEC D0 1E 07 B4 */ stfs f0, 0x7b4(r30) +/* 80166B90 00163AF0 D0 1E 07 B8 */ stfs f0, 0x7b8(r30) +/* 80166B94 00163AF4 D0 1E 07 BC */ stfs f0, 0x7bc(r30) +/* 80166B98 00163AF8 D0 1E 07 C0 */ stfs f0, 0x7c0(r30) +/* 80166B9C 00163AFC D0 1E 07 C4 */ stfs f0, 0x7c4(r30) +/* 80166BA0 00163B00 90 1E 07 C8 */ stw r0, 0x7c8(r30) +/* 80166BA4 00163B04 48 18 1E 0D */ bl TranslateSFXID__11CSfxManagerFUs +/* 80166BA8 00163B08 B0 7E 07 CC */ sth r3, 0x7cc(r30) +/* 80166BAC 00163B0C 38 60 00 00 */ li r3, 0 +/* 80166BB0 00163B10 34 9E 07 DC */ addic. r4, r30, 0x7dc +/* 80166BB4 00163B14 38 00 00 02 */ li r0, 2 +/* 80166BB8 00163B18 90 7E 07 D0 */ stw r3, 0x7d0(r30) +/* 80166BBC 00163B1C 90 1E 07 D8 */ stw r0, 0x7d8(r30) +/* 80166BC0 00163B20 41 82 00 0C */ beq lbl_80166BCC +/* 80166BC4 00163B24 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80166BC8 00163B28 B0 04 00 00 */ sth r0, 0(r4) +lbl_80166BCC: +/* 80166BCC 00163B2C 34 84 00 02 */ addic. r4, r4, 2 +/* 80166BD0 00163B30 41 82 00 0C */ beq lbl_80166BDC +/* 80166BD4 00163B34 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80166BD8 00163B38 B0 04 00 00 */ sth r0, 0(r4) +lbl_80166BDC: +/* 80166BDC 00163B3C 38 00 00 02 */ li r0, 2 +/* 80166BE0 00163B40 34 9E 07 E4 */ addic. r4, r30, 0x7e4 +/* 80166BE4 00163B44 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80166BE8 00163B48 90 1E 07 E0 */ stw r0, 0x7e0(r30) +/* 80166BEC 00163B4C 38 63 66 A0 */ addi r3, r3, skZero3f@l +/* 80166BF0 00163B50 41 82 00 1C */ beq lbl_80166C0C +/* 80166BF4 00163B54 C0 03 00 00 */ lfs f0, 0(r3) +/* 80166BF8 00163B58 D0 04 00 00 */ stfs f0, 0(r4) +/* 80166BFC 00163B5C C0 03 00 04 */ lfs f0, 4(r3) +/* 80166C00 00163B60 D0 04 00 04 */ stfs f0, 4(r4) +/* 80166C04 00163B64 C0 03 00 08 */ lfs f0, 8(r3) +/* 80166C08 00163B68 D0 04 00 08 */ stfs f0, 8(r4) +lbl_80166C0C: +/* 80166C0C 00163B6C 34 84 00 0C */ addic. r4, r4, 0xc +/* 80166C10 00163B70 41 82 00 1C */ beq lbl_80166C2C +/* 80166C14 00163B74 C0 03 00 00 */ lfs f0, 0(r3) +/* 80166C18 00163B78 D0 04 00 00 */ stfs f0, 0(r4) +/* 80166C1C 00163B7C C0 03 00 04 */ lfs f0, 4(r3) +/* 80166C20 00163B80 D0 04 00 04 */ stfs f0, 4(r4) +/* 80166C24 00163B84 C0 03 00 08 */ lfs f0, 8(r3) +/* 80166C28 00163B88 D0 04 00 08 */ stfs f0, 8(r4) +lbl_80166C2C: +/* 80166C2C 00163B8C 38 00 00 02 */ li r0, 2 +/* 80166C30 00163B90 34 9E 08 00 */ addic. r4, r30, 0x800 +/* 80166C34 00163B94 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80166C38 00163B98 90 1E 07 FC */ stw r0, 0x7fc(r30) +/* 80166C3C 00163B9C 38 63 66 A0 */ addi r3, r3, skZero3f@l +/* 80166C40 00163BA0 41 82 00 1C */ beq lbl_80166C5C +/* 80166C44 00163BA4 C0 03 00 00 */ lfs f0, 0(r3) +/* 80166C48 00163BA8 D0 04 00 00 */ stfs f0, 0(r4) +/* 80166C4C 00163BAC C0 03 00 04 */ lfs f0, 4(r3) +/* 80166C50 00163BB0 D0 04 00 04 */ stfs f0, 4(r4) +/* 80166C54 00163BB4 C0 03 00 08 */ lfs f0, 8(r3) +/* 80166C58 00163BB8 D0 04 00 08 */ stfs f0, 8(r4) +lbl_80166C5C: +/* 80166C5C 00163BBC 34 84 00 0C */ addic. r4, r4, 0xc +/* 80166C60 00163BC0 41 82 00 1C */ beq lbl_80166C7C +/* 80166C64 00163BC4 C0 03 00 00 */ lfs f0, 0(r3) +/* 80166C68 00163BC8 D0 04 00 00 */ stfs f0, 0(r4) +/* 80166C6C 00163BCC C0 03 00 04 */ lfs f0, 4(r3) +/* 80166C70 00163BD0 D0 04 00 04 */ stfs f0, 4(r4) +/* 80166C74 00163BD4 C0 03 00 08 */ lfs f0, 8(r3) +/* 80166C78 00163BD8 D0 04 00 08 */ stfs f0, 8(r4) +lbl_80166C7C: +/* 80166C7C 00163BDC 38 00 00 02 */ li r0, 2 +/* 80166C80 00163BE0 34 7E 08 1C */ addic. r3, r30, 0x81c +/* 80166C84 00163BE4 90 1E 08 18 */ stw r0, 0x818(r30) +/* 80166C88 00163BE8 41 82 00 0C */ beq lbl_80166C94 +/* 80166C8C 00163BEC C0 0D 8D 04 */ lfs f0, lbl_805A78C4@sda21(r13) +/* 80166C90 00163BF0 D0 03 00 00 */ stfs f0, 0(r3) +lbl_80166C94: +/* 80166C94 00163BF4 34 63 00 04 */ addic. r3, r3, 4 +/* 80166C98 00163BF8 41 82 00 0C */ beq lbl_80166CA4 +/* 80166C9C 00163BFC C0 0D 8D 04 */ lfs f0, lbl_805A78C4@sda21(r13) +/* 80166CA0 00163C00 D0 03 00 00 */ stfs f0, 0(r3) +lbl_80166CA4: +/* 80166CA4 00163C04 38 00 00 02 */ li r0, 2 +/* 80166CA8 00163C08 34 7E 08 28 */ addic. r3, r30, 0x828 +/* 80166CAC 00163C0C 90 1E 08 24 */ stw r0, 0x824(r30) +/* 80166CB0 00163C10 41 82 00 0C */ beq lbl_80166CBC +/* 80166CB4 00163C14 88 0D 8D 08 */ lbz r0, lbl_805A78C8@sda21(r13) +/* 80166CB8 00163C18 98 03 00 00 */ stb r0, 0(r3) +lbl_80166CBC: +/* 80166CBC 00163C1C 34 63 00 01 */ addic. r3, r3, 1 +/* 80166CC0 00163C20 41 82 00 0C */ beq lbl_80166CCC +/* 80166CC4 00163C24 88 0D 8D 08 */ lbz r0, lbl_805A78C8@sda21(r13) +/* 80166CC8 00163C28 98 03 00 00 */ stb r0, 0(r3) +lbl_80166CCC: +/* 80166CCC 00163C2C 3C 80 80 3D */ lis r4, lbl_803D0398@ha +/* 80166CD0 00163C30 38 60 00 4C */ li r3, 0x4c +/* 80166CD4 00163C34 38 84 03 98 */ addi r4, r4, lbl_803D0398@l +/* 80166CD8 00163C38 38 A0 00 00 */ li r5, 0 +/* 80166CDC 00163C3C 38 84 00 3B */ addi r4, r4, 0x3b +/* 80166CE0 00163C40 48 1A EB 8D */ bl __nw__FUlPCcPCc +/* 80166CE4 00163C44 7C 60 1B 79 */ or. r0, r3, r3 +/* 80166CE8 00163C48 41 82 00 24 */ beq lbl_80166D0C +/* 80166CEC 00163C4C C0 02 9F 7C */ lfs f0, lbl_805ABC9C@sda21(r2) +/* 80166CF0 00163C50 38 81 00 34 */ addi r4, r1, 0x34 +/* 80166CF4 00163C54 92 01 00 34 */ stw r16, 0x34(r1) +/* 80166CF8 00163C58 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 80166CFC 00163C5C D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 80166D00 00163C60 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 80166D04 00163C64 4B FB 00 59 */ bl __ct__10CModelDataFRC10CStaticRes +/* 80166D08 00163C68 7C 60 1B 78 */ mr r0, r3 +lbl_80166D0C: +/* 80166D0C 00163C6C 90 1E 08 2C */ stw r0, 0x82c(r30) +/* 80166D10 00163C70 38 80 00 00 */ li r4, 0 +/* 80166D14 00163C74 7F C3 F3 78 */ mr r3, r30 +/* 80166D18 00163C78 B0 9E 08 30 */ sth r4, 0x830(r30) +/* 80166D1C 00163C7C 80 1E 08 30 */ lwz r0, 0x830(r30) +/* 80166D20 00163C80 50 80 6C 24 */ rlwimi r0, r4, 0xd, 0x10, 0x12 +/* 80166D24 00163C84 90 1E 08 30 */ stw r0, 0x830(r30) +/* 80166D28 00163C88 80 1E 08 30 */ lwz r0, 0x830(r30) +/* 80166D2C 00163C8C 50 80 54 EA */ rlwimi r0, r4, 0xa, 0x13, 0x15 +/* 80166D30 00163C90 90 1E 08 30 */ stw r0, 0x830(r30) +/* 80166D34 00163C94 88 1E 08 34 */ lbz r0, 0x834(r30) +/* 80166D38 00163C98 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 80166D3C 00163C9C 98 1E 08 34 */ stb r0, 0x834(r30) +/* 80166D40 00163CA0 88 1E 08 34 */ lbz r0, 0x834(r30) +/* 80166D44 00163CA4 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 80166D48 00163CA8 98 1E 08 34 */ stb r0, 0x834(r30) +/* 80166D4C 00163CAC 88 1E 08 34 */ lbz r0, 0x834(r30) +/* 80166D50 00163CB0 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 80166D54 00163CB4 98 1E 08 34 */ stb r0, 0x834(r30) +/* 80166D58 00163CB8 88 1E 08 34 */ lbz r0, 0x834(r30) +/* 80166D5C 00163CBC 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 80166D60 00163CC0 98 1E 08 34 */ stb r0, 0x834(r30) +/* 80166D64 00163CC4 88 1E 08 34 */ lbz r0, 0x834(r30) +/* 80166D68 00163CC8 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c +/* 80166D6C 00163CCC 98 1E 08 34 */ stb r0, 0x834(r30) +/* 80166D70 00163CD0 88 1E 08 34 */ lbz r0, 0x834(r30) +/* 80166D74 00163CD4 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d +/* 80166D78 00163CD8 98 1E 08 34 */ stb r0, 0x834(r30) +/* 80166D7C 00163CDC 88 1E 08 34 */ lbz r0, 0x834(r30) +/* 80166D80 00163CE0 50 80 0F BC */ rlwimi r0, r4, 1, 0x1e, 0x1e +/* 80166D84 00163CE4 98 1E 08 34 */ stb r0, 0x834(r30) +/* 80166D88 00163CE8 88 1E 08 34 */ lbz r0, 0x834(r30) +/* 80166D8C 00163CEC 50 80 07 FE */ rlwimi r0, r4, 0, 0x1f, 0x1f +/* 80166D90 00163CF0 98 1E 08 34 */ stb r0, 0x834(r30) +/* 80166D94 00163CF4 88 1E 08 35 */ lbz r0, 0x835(r30) +/* 80166D98 00163CF8 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 80166D9C 00163CFC 98 1E 08 35 */ stb r0, 0x835(r30) +/* 80166DA0 00163D00 88 1E 08 35 */ lbz r0, 0x835(r30) +/* 80166DA4 00163D04 53 A0 36 72 */ rlwimi r0, r29, 6, 0x19, 0x19 +/* 80166DA8 00163D08 98 1E 08 35 */ stb r0, 0x835(r30) +/* 80166DAC 00163D0C 88 1E 08 35 */ lbz r0, 0x835(r30) +/* 80166DB0 00163D10 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 80166DB4 00163D14 98 1E 08 35 */ stb r0, 0x835(r30) +/* 80166DB8 00163D18 C0 3F 00 C4 */ lfs f1, 0xc4(r31) +/* 80166DBC 00163D1C 4B FF DB 51 */ bl sub_8016490c +/* 80166DC0 00163D20 88 1E 04 E1 */ lbz r0, 0x4e1(r30) +/* 80166DC4 00163D24 38 60 00 01 */ li r3, 1 +/* 80166DC8 00163D28 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 80166DCC 00163D2C 38 7E 04 60 */ addi r3, r30, 0x460 +/* 80166DD0 00163D30 98 1E 04 E1 */ stb r0, 0x4e1(r30) +/* 80166DD4 00163D34 38 80 00 03 */ li r4, 3 +/* 80166DD8 00163D38 38 A0 00 00 */ li r5, 0 +/* 80166DDC 00163D3C 48 0C CF E9 */ bl SetAvailableState__20CKnockBackControllerFib +/* 80166DE0 00163D40 88 1E 04 E2 */ lbz r0, 0x4e2(r30) +/* 80166DE4 00163D44 38 60 00 01 */ li r3, 1 +/* 80166DE8 00163D48 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 80166DEC 00163D4C 7F C3 F3 78 */ mr r3, r30 +/* 80166DF0 00163D50 98 1E 04 E2 */ stb r0, 0x4e2(r30) +/* 80166DF4 00163D54 4B F1 0A A1 */ bl MakeThermalColdAndHot__10CPatternedFv +/* 80166DF8 00163D58 80 BE 03 FC */ lwz r5, 0x3fc(r30) +/* 80166DFC 00163D5C 7F C3 F3 78 */ mr r3, r30 +/* 80166E00 00163D60 20 85 00 01 */ subfic r4, r5, 1 +/* 80166E04 00163D64 38 05 FF FF */ addi r0, r5, -1 +/* 80166E08 00163D68 7C 80 03 78 */ or r0, r4, r0 +/* 80166E0C 00163D6C 54 04 0F FE */ srwi r4, r0, 0x1f +/* 80166E10 00163D70 4B EE BF 5D */ bl CreateShadow__6CActorFb +/* 80166E14 00163D74 7F C3 F3 78 */ mr r3, r30 +/* 80166E18 00163D78 E3 E1 01 A8 */ psq_l f31, 424(r1), 0, qr0 +/* 80166E1C 00163D7C CB E1 01 A0 */ lfd f31, 0x1a0(r1) +/* 80166E20 00163D80 E3 C1 01 98 */ psq_l f30, 408(r1), 0, qr0 +/* 80166E24 00163D84 CB C1 01 90 */ lfd f30, 0x190(r1) +/* 80166E28 00163D88 E3 A1 01 88 */ psq_l f29, 392(r1), 0, qr0 +/* 80166E2C 00163D8C CB A1 01 80 */ lfd f29, 0x180(r1) +/* 80166E30 00163D90 E3 81 01 78 */ psq_l f28, 376(r1), 0, qr0 +/* 80166E34 00163D94 CB 81 01 70 */ lfd f28, 0x170(r1) +/* 80166E38 00163D98 E3 61 01 68 */ psq_l f27, 360(r1), 0, qr0 +/* 80166E3C 00163D9C CB 61 01 60 */ lfd f27, 0x160(r1) +/* 80166E40 00163DA0 E3 41 01 58 */ psq_l f26, 344(r1), 0, qr0 +/* 80166E44 00163DA4 CB 41 01 50 */ lfd f26, 0x150(r1) +/* 80166E48 00163DA8 E3 21 01 48 */ psq_l f25, 328(r1), 0, qr0 +/* 80166E4C 00163DAC CB 21 01 40 */ lfd f25, 0x140(r1) +/* 80166E50 00163DB0 E3 01 01 38 */ psq_l f24, 312(r1), 0, qr0 +/* 80166E54 00163DB4 CB 01 01 30 */ lfd f24, 0x130(r1) +/* 80166E58 00163DB8 E2 E1 01 28 */ psq_l f23, 296(r1), 0, qr0 +/* 80166E5C 00163DBC CA E1 01 20 */ lfd f23, 0x120(r1) +/* 80166E60 00163DC0 E2 C1 01 18 */ psq_l f22, 280(r1), 0, qr0 +/* 80166E64 00163DC4 CA C1 01 10 */ lfd f22, 0x110(r1) +/* 80166E68 00163DC8 E2 A1 01 08 */ psq_l f21, 264(r1), 0, qr0 +/* 80166E6C 00163DCC CA A1 01 00 */ lfd f21, 0x100(r1) +/* 80166E70 00163DD0 E2 81 00 F8 */ psq_l f20, 248(r1), 0, qr0 +/* 80166E74 00163DD4 CA 81 00 F0 */ lfd f20, 0xf0(r1) +/* 80166E78 00163DD8 E2 61 00 E8 */ psq_l f19, 232(r1), 0, qr0 +/* 80166E7C 00163DDC CA 61 00 E0 */ lfd f19, 0xe0(r1) +/* 80166E80 00163DE0 E2 41 00 D8 */ psq_l f18, 216(r1), 0, qr0 +/* 80166E84 00163DE4 CA 41 00 D0 */ lfd f18, 0xd0(r1) +/* 80166E88 00163DE8 E2 21 00 C8 */ psq_l f17, 200(r1), 0, qr0 +/* 80166E8C 00163DEC CA 21 00 C0 */ lfd f17, 0xc0(r1) +/* 80166E90 00163DF0 E2 01 00 B8 */ psq_l f16, 184(r1), 0, qr0 +/* 80166E94 00163DF4 CA 01 00 B0 */ lfd f16, 0xb0(r1) +/* 80166E98 00163DF8 E1 E1 00 A8 */ psq_l f15, 168(r1), 0, qr0 +/* 80166E9C 00163DFC C9 E1 00 A0 */ lfd f15, 0xa0(r1) +/* 80166EA0 00163E00 E1 C1 00 98 */ psq_l f14, 152(r1), 0, qr0 +/* 80166EA4 00163E04 C9 C1 00 90 */ lfd f14, 0x90(r1) +/* 80166EA8 00163E08 BA 01 00 50 */ lmw r16, 0x50(r1) +/* 80166EAC 00163E0C 80 01 01 B4 */ lwz r0, 0x1b4(r1) +/* 80166EB0 00163E10 7C 08 03 A6 */ mtlr r0 +/* 80166EB4 00163E14 38 21 01 B0 */ addi r1, r1, 0x1b0 +/* 80166EB8 00163E18 4E 80 00 20 */ blr + +.global sub_80166ebc +sub_80166ebc: +/* 80166EBC 00163E1C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80166EC0 00163E20 7C 08 02 A6 */ mflr r0 +/* 80166EC4 00163E24 7C 88 23 78 */ mr r8, r4 +/* 80166EC8 00163E28 38 C0 00 04 */ li r6, 4 +/* 80166ECC 00163E2C 90 01 00 24 */ stw r0, 0x24(r1) +/* 80166ED0 00163E30 54 A0 06 3F */ clrlwi. r0, r5, 0x18 +/* 80166ED4 00163E34 41 82 00 08 */ beq lbl_80166EDC +/* 80166ED8 00163E38 38 C0 00 01 */ li r6, 1 +lbl_80166EDC: +/* 80166EDC 00163E3C A0 E3 00 08 */ lhz r7, 8(r3) +/* 80166EE0 00163E40 38 81 00 10 */ addi r4, r1, 0x10 +/* 80166EE4 00163E44 38 A1 00 0C */ addi r5, r1, 0xc +/* 80166EE8 00163E48 B0 E1 00 0C */ sth r7, 0xc(r1) +/* 80166EEC 00163E4C A0 03 00 F4 */ lhz r0, 0xf4(r3) +/* 80166EF0 00163E50 7D 03 43 78 */ mr r3, r8 +/* 80166EF4 00163E54 B0 E1 00 08 */ sth r7, 8(r1) +/* 80166EF8 00163E58 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80166EFC 00163E5C 4B ED CF 59 */ bl SendScriptMsgAlways__13CStateManagerF9TUniqueId +/* 80166F00 00163E60 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80166F04 00163E64 7C 08 03 A6 */ mtlr r0 +/* 80166F08 00163E68 38 21 00 20 */ addi r1, r1, 0x20 +/* 80166F0C 00163E6C 4E 80 00 20 */ blr + +.global sub_80166f10 +sub_80166f10: +/* 80166F10 00163E70 94 21 FE C0 */ stwu r1, -0x140(r1) +/* 80166F14 00163E74 7C 08 02 A6 */ mflr r0 +/* 80166F18 00163E78 90 01 01 44 */ stw r0, 0x144(r1) +/* 80166F1C 00163E7C DB E1 01 30 */ stfd f31, 0x130(r1) +/* 80166F20 00163E80 F3 E1 01 38 */ psq_st f31, 312(r1), 0, qr0 +/* 80166F24 00163E84 DB C1 01 20 */ stfd f30, 0x120(r1) +/* 80166F28 00163E88 F3 C1 01 28 */ psq_st f30, 296(r1), 0, qr0 +/* 80166F2C 00163E8C DB A1 01 10 */ stfd f29, 0x110(r1) +/* 80166F30 00163E90 F3 A1 01 18 */ psq_st f29, 280(r1), 0, qr0 +/* 80166F34 00163E94 DB 81 01 00 */ stfd f28, 0x100(r1) +/* 80166F38 00163E98 F3 81 01 08 */ psq_st f28, 264(r1), 0, qr0 +/* 80166F3C 00163E9C DB 61 00 F0 */ stfd f27, 0xf0(r1) +/* 80166F40 00163EA0 F3 61 00 F8 */ psq_st f27, 248(r1), 0, qr0 +/* 80166F44 00163EA4 DB 41 00 E0 */ stfd f26, 0xe0(r1) +/* 80166F48 00163EA8 F3 41 00 E8 */ psq_st f26, 232(r1), 0, qr0 +/* 80166F4C 00163EAC DB 21 00 D0 */ stfd f25, 0xd0(r1) +/* 80166F50 00163EB0 F3 21 00 D8 */ psq_st f25, 216(r1), 0, qr0 +/* 80166F54 00163EB4 93 E1 00 CC */ stw r31, 0xcc(r1) +/* 80166F58 00163EB8 93 C1 00 C8 */ stw r30, 0xc8(r1) +/* 80166F5C 00163EBC 93 A1 00 C4 */ stw r29, 0xc4(r1) +/* 80166F60 00163EC0 93 81 00 C0 */ stw r28, 0xc0(r1) +/* 80166F64 00163EC4 88 03 00 30 */ lbz r0, 0x30(r3) +/* 80166F68 00163EC8 FF A0 08 90 */ fmr f29, f1 +/* 80166F6C 00163ECC 7C 7C 1B 78 */ mr r28, r3 +/* 80166F70 00163ED0 7C 9F 23 78 */ mr r31, r4 +/* 80166F74 00163ED4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80166F78 00163ED8 7C BE 2B 78 */ mr r30, r5 +/* 80166F7C 00163EDC 7C DD 33 78 */ mr r29, r6 +/* 80166F80 00163EE0 41 82 02 08 */ beq lbl_80167188 +/* 80166F84 00163EE4 C0 3C 00 EC */ lfs f1, 0xec(r28) +/* 80166F88 00163EE8 38 61 00 44 */ addi r3, r1, 0x44 +/* 80166F8C 00163EEC C0 1C 00 50 */ lfs f0, 0x50(r28) +/* 80166F90 00163EF0 C0 7C 00 F0 */ lfs f3, 0xf0(r28) +/* 80166F94 00163EF4 C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 80166F98 00163EF8 EC 81 00 28 */ fsubs f4, f1, f0 +/* 80166F9C 00163EFC C0 3C 00 E8 */ lfs f1, 0xe8(r28) +/* 80166FA0 00163F00 C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 80166FA4 00163F04 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80166FA8 00163F08 D0 81 00 48 */ stfs f4, 0x48(r1) +/* 80166FAC 00163F0C EC 01 00 28 */ fsubs f0, f1, f0 +/* 80166FB0 00163F10 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 80166FB4 00163F14 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 80166FB8 00163F18 48 1A D9 01 */ bl Magnitude__9CVector3fCFv +/* 80166FBC 00163F1C C0 7C 00 60 */ lfs f3, 0x60(r28) +/* 80166FC0 00163F20 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 80166FC4 00163F24 C0 5C 00 50 */ lfs f2, 0x50(r28) +/* 80166FC8 00163F28 FF E0 08 90 */ fmr f31, f1 +/* 80166FCC 00163F2C C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 80166FD0 00163F30 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 80166FD4 00163F34 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 80166FD8 00163F38 38 61 00 50 */ addi r3, r1, 0x50 +/* 80166FDC 00163F3C 38 81 00 2C */ addi r4, r1, 0x2c +/* 80166FE0 00163F40 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 80166FE4 00163F44 38 BC 00 E8 */ addi r5, r28, 0xe8 +/* 80166FE8 00163F48 D0 61 00 34 */ stfs f3, 0x34(r1) +/* 80166FEC 00163F4C 48 1A CB 25 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 80166FF0 00163F50 38 61 00 80 */ addi r3, r1, 0x80 +/* 80166FF4 00163F54 38 81 00 50 */ addi r4, r1, 0x50 +/* 80166FF8 00163F58 48 1A BB 7D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80166FFC 00163F5C 48 1A 59 81 */ bl DisableAllLights__9CGraphicsFv +/* 80167000 00163F60 38 60 00 00 */ li r3, 0 +/* 80167004 00163F64 48 1A 1E 11 */ bl SetNumTexGens__3CGXFUc +/* 80167008 00163F68 38 60 00 00 */ li r3, 0 +/* 8016700C 00163F6C 38 80 00 FF */ li r4, 0xff +/* 80167010 00163F70 38 A0 00 FF */ li r5, 0xff +/* 80167014 00163F74 38 C0 00 04 */ li r6, 4 +/* 80167018 00163F78 48 1A 19 35 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 8016701C 00163F7C 80 8D 9C 68 */ lwz r4, lbl_805A8828@sda21(r13) +/* 80167020 00163F80 38 60 00 00 */ li r3, 0 +/* 80167024 00163F84 48 1A 32 95 */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass +/* 80167028 00163F88 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 8016702C 00163F8C 41 82 00 1C */ beq lbl_80167048 +/* 80167030 00163F90 38 60 00 01 */ li r3, 1 +/* 80167034 00163F94 38 80 00 01 */ li r4, 1 +/* 80167038 00163F98 38 A0 00 01 */ li r5, 1 +/* 8016703C 00163F9C 38 C0 00 00 */ li r6, 0 +/* 80167040 00163FA0 48 1A 4A 11 */ bl SetBlendMode__9CGraphicsF13ERglBlendMode15ERglBlendFactor15ERglBlendFactor11ERglLogicOp +/* 80167044 00163FA4 48 00 00 18 */ b lbl_8016705C +lbl_80167048: +/* 80167048 00163FA8 38 60 00 01 */ li r3, 1 +/* 8016704C 00163FAC 38 80 00 04 */ li r4, 4 +/* 80167050 00163FB0 38 A0 00 01 */ li r5, 1 +/* 80167054 00163FB4 38 C0 00 00 */ li r6, 0 +/* 80167058 00163FB8 48 1A 49 F9 */ bl SetBlendMode__9CGraphicsF13ERglBlendMode15ERglBlendFactor15ERglBlendFactor11ERglLogicOp +lbl_8016705C: +/* 8016705C 00163FBC 38 60 00 00 */ li r3, 0 +/* 80167060 00163FC0 48 1A 4A 11 */ bl SetCullMode__9CGraphicsF12ERglCullMode +/* 80167064 00163FC4 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80167068 00163FC8 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 8016706C 00163FCC 38 84 66 70 */ addi r4, r4, skIdentity4f@l +/* 80167070 00163FD0 81 83 00 00 */ lwz r12, 0(r3) +/* 80167074 00163FD4 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 80167078 00163FD8 7D 89 03 A6 */ mtctr r12 +/* 8016707C 00163FDC 4E 80 04 21 */ bctrl +/* 80167080 00163FE0 38 60 00 98 */ li r3, 0x98 +/* 80167084 00163FE4 48 1A 45 E5 */ bl StreamBegin__9CGraphicsF13ERglPrimitive +/* 80167088 00163FE8 3C 00 43 30 */ lis r0, 0x4330 +/* 8016708C 00163FEC C3 C2 9F 68 */ lfs f30, lbl_805ABC88@sda21(r2) +/* 80167090 00163FF0 93 E1 00 B4 */ stw r31, 0xb4(r1) +/* 80167094 00163FF4 3B FF 00 01 */ addi r31, r31, 1 +/* 80167098 00163FF8 C8 22 A0 48 */ lfd f1, lbl_805ABD68@sda21(r2) +/* 8016709C 00163FFC FF 60 F0 90 */ fmr f27, f30 +/* 801670A0 00164000 90 01 00 B0 */ stw r0, 0xb0(r1) +/* 801670A4 00164004 FF 80 F0 90 */ fmr f28, f30 +/* 801670A8 00164008 C0 42 9F F8 */ lfs f2, lbl_805ABD18@sda21(r2) +/* 801670AC 0016400C 3B A0 00 00 */ li r29, 0 +/* 801670B0 00164010 C8 01 00 B0 */ lfd f0, 0xb0(r1) +/* 801670B4 00164014 83 DE 00 00 */ lwz r30, 0(r30) +/* 801670B8 00164018 EC 00 08 28 */ fsubs f0, f0, f1 +/* 801670BC 0016401C EF 42 00 24 */ fdivs f26, f2, f0 +/* 801670C0 00164020 48 00 00 B4 */ b lbl_80167174 +lbl_801670C4: +/* 801670C4 00164024 FC 20 F0 90 */ fmr f1, f30 +/* 801670C8 00164028 48 1A DC 7D */ bl FastCosR__5CMathFf +/* 801670CC 0016402C FC 00 08 90 */ fmr f0, f1 +/* 801670D0 00164030 FC 20 F0 90 */ fmr f1, f30 +/* 801670D4 00164034 FF 20 00 90 */ fmr f25, f0 +/* 801670D8 00164038 48 1A DD 19 */ bl FastSinR__5CMathFf +/* 801670DC 0016403C EC 59 07 72 */ fmuls f2, f25, f29 +/* 801670E0 00164040 D3 61 00 3C */ stfs f27, 0x3c(r1) +/* 801670E4 00164044 EC 01 07 72 */ fmuls f0, f1, f29 +/* 801670E8 00164048 38 61 00 20 */ addi r3, r1, 0x20 +/* 801670EC 0016404C 38 81 00 80 */ addi r4, r1, 0x80 +/* 801670F0 00164050 38 A1 00 38 */ addi r5, r1, 0x38 +/* 801670F4 00164054 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 801670F8 00164058 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 801670FC 0016405C 48 1A B9 ED */ bl __ml__12CTransform4fCFRC9CVector3f +/* 80167100 00164060 38 61 00 20 */ addi r3, r1, 0x20 +/* 80167104 00164064 48 1A 44 BD */ bl StreamVertex__9CGraphicsFRC9CVector3f +/* 80167108 00164068 7F C3 F3 78 */ mr r3, r30 +/* 8016710C 0016406C 48 1A 44 61 */ bl StreamColor__9CGraphicsFUi +/* 80167110 00164070 FC 40 C8 90 */ fmr f2, f25 +/* 80167114 00164074 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 80167118 00164078 48 1A 43 4D */ bl StreamTexcoord__9CGraphicsFff +/* 8016711C 0016407C C0 41 00 3C */ lfs f2, 0x3c(r1) +/* 80167120 00164080 38 61 00 14 */ addi r3, r1, 0x14 +/* 80167124 00164084 C0 21 00 40 */ lfs f1, 0x40(r1) +/* 80167128 00164088 38 81 00 80 */ addi r4, r1, 0x80 +/* 8016712C 0016408C C0 01 00 38 */ lfs f0, 0x38(r1) +/* 80167130 00164090 EC 5F 10 2A */ fadds f2, f31, f2 +/* 80167134 00164094 EC 3C 08 2A */ fadds f1, f28, f1 +/* 80167138 00164098 38 A1 00 08 */ addi r5, r1, 8 +/* 8016713C 0016409C EC 1C 00 2A */ fadds f0, f28, f0 +/* 80167140 001640A0 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 80167144 001640A4 D0 01 00 08 */ stfs f0, 8(r1) +/* 80167148 001640A8 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 8016714C 001640AC 48 1A B9 9D */ bl __ml__12CTransform4fCFRC9CVector3f +/* 80167150 001640B0 38 61 00 14 */ addi r3, r1, 0x14 +/* 80167154 001640B4 48 1A 44 6D */ bl StreamVertex__9CGraphicsFRC9CVector3f +/* 80167158 001640B8 7F C3 F3 78 */ mr r3, r30 +/* 8016715C 001640BC 48 1A 44 11 */ bl StreamColor__9CGraphicsFUi +/* 80167160 001640C0 FC 20 F8 90 */ fmr f1, f31 +/* 80167164 001640C4 FC 40 C8 90 */ fmr f2, f25 +/* 80167168 001640C8 48 1A 42 FD */ bl StreamTexcoord__9CGraphicsFff +/* 8016716C 001640CC EF DE D0 2A */ fadds f30, f30, f26 +/* 80167170 001640D0 3B BD 00 01 */ addi r29, r29, 1 +lbl_80167174: +/* 80167174 001640D4 7C 1D F8 40 */ cmplw r29, r31 +/* 80167178 001640D8 41 80 FF 4C */ blt lbl_801670C4 +/* 8016717C 001640DC 48 1A 42 95 */ bl StreamEnd__9CGraphicsFv +/* 80167180 001640E0 38 60 00 01 */ li r3, 1 +/* 80167184 001640E4 48 1A 48 ED */ bl SetCullMode__9CGraphicsF12ERglCullMode +lbl_80167188: +/* 80167188 001640E8 E3 E1 01 38 */ psq_l f31, 312(r1), 0, qr0 +/* 8016718C 001640EC CB E1 01 30 */ lfd f31, 0x130(r1) +/* 80167190 001640F0 E3 C1 01 28 */ psq_l f30, 296(r1), 0, qr0 +/* 80167194 001640F4 CB C1 01 20 */ lfd f30, 0x120(r1) +/* 80167198 001640F8 E3 A1 01 18 */ psq_l f29, 280(r1), 0, qr0 +/* 8016719C 001640FC CB A1 01 10 */ lfd f29, 0x110(r1) +/* 801671A0 00164100 E3 81 01 08 */ psq_l f28, 264(r1), 0, qr0 +/* 801671A4 00164104 CB 81 01 00 */ lfd f28, 0x100(r1) +/* 801671A8 00164108 E3 61 00 F8 */ psq_l f27, 248(r1), 0, qr0 +/* 801671AC 0016410C CB 61 00 F0 */ lfd f27, 0xf0(r1) +/* 801671B0 00164110 E3 41 00 E8 */ psq_l f26, 232(r1), 0, qr0 +/* 801671B4 00164114 CB 41 00 E0 */ lfd f26, 0xe0(r1) +/* 801671B8 00164118 E3 21 00 D8 */ psq_l f25, 216(r1), 0, qr0 +/* 801671BC 0016411C CB 21 00 D0 */ lfd f25, 0xd0(r1) +/* 801671C0 00164120 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 801671C4 00164124 83 C1 00 C8 */ lwz r30, 0xc8(r1) +/* 801671C8 00164128 83 A1 00 C4 */ lwz r29, 0xc4(r1) +/* 801671CC 0016412C 80 01 01 44 */ lwz r0, 0x144(r1) +/* 801671D0 00164130 83 81 00 C0 */ lwz r28, 0xc0(r1) +/* 801671D4 00164134 7C 08 03 A6 */ mtlr r0 +/* 801671D8 00164138 38 21 01 40 */ addi r1, r1, 0x140 +/* 801671DC 0016413C 4E 80 00 20 */ blr + +.global Render__11CDroneLaserCFRC13CStateManager +Render__11CDroneLaserCFRC13CStateManager: +/* 801671E0 00164140 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801671E4 00164144 7C 08 02 A6 */ mflr r0 +/* 801671E8 00164148 38 80 00 01 */ li r4, 1 +/* 801671EC 0016414C 38 A0 00 01 */ li r5, 1 +/* 801671F0 00164150 90 01 00 24 */ stw r0, 0x24(r1) +/* 801671F4 00164154 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801671F8 00164158 7C 7F 1B 78 */ mr r31, r3 +/* 801671FC 0016415C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80167200 00164160 81 83 00 00 */ lwz r12, 0(r3) +/* 80167204 00164164 81 8C 00 60 */ lwz r12, 0x60(r12) +/* 80167208 00164168 7D 89 03 A6 */ mtctr r12 +/* 8016720C 0016416C 4E 80 04 21 */ bctrl +/* 80167210 00164170 C0 22 9F 7C */ lfs f1, lbl_805ABC9C@sda21(r2) +/* 80167214 00164174 38 61 00 10 */ addi r3, r1, 0x10 +/* 80167218 00164178 C0 42 A0 54 */ lfs f2, lbl_805ABD74@sda21(r2) +/* 8016721C 0016417C FC 80 08 90 */ fmr f4, f1 +/* 80167220 00164180 FC 60 10 90 */ fmr f3, f2 +/* 80167224 00164184 48 1F C1 C9 */ bl __ct__6CColorFffff +/* 80167228 00164188 C0 22 A0 50 */ lfs f1, lbl_805ABD70@sda21(r2) +/* 8016722C 0016418C 7C 65 1B 78 */ mr r5, r3 +/* 80167230 00164190 7F E3 FB 78 */ mr r3, r31 +/* 80167234 00164194 38 80 00 04 */ li r4, 4 +/* 80167238 00164198 38 C0 00 01 */ li r6, 1 +/* 8016723C 0016419C 4B FF FC D5 */ bl sub_80166f10 +/* 80167240 001641A0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80167244 001641A4 38 80 00 01 */ li r4, 1 +/* 80167248 001641A8 38 A0 00 00 */ li r5, 0 +/* 8016724C 001641AC 81 83 00 00 */ lwz r12, 0(r3) +/* 80167250 001641B0 81 8C 00 60 */ lwz r12, 0x60(r12) +/* 80167254 001641B4 7D 89 03 A6 */ mtctr r12 +/* 80167258 001641B8 4E 80 04 21 */ bctrl +/* 8016725C 001641BC C0 42 9F 68 */ lfs f2, lbl_805ABC88@sda21(r2) +/* 80167260 001641C0 38 61 00 0C */ addi r3, r1, 0xc +/* 80167264 001641C4 C0 22 A0 5C */ lfs f1, lbl_805ABD7C@sda21(r2) +/* 80167268 001641C8 FC 60 10 90 */ fmr f3, f2 +/* 8016726C 001641CC C0 82 9F 80 */ lfs f4, lbl_805ABCA0@sda21(r2) +/* 80167270 001641D0 48 1F C1 7D */ bl __ct__6CColorFffff +/* 80167274 001641D4 C0 22 A0 58 */ lfs f1, lbl_805ABD78@sda21(r2) +/* 80167278 001641D8 7C 65 1B 78 */ mr r5, r3 +/* 8016727C 001641DC 7F E3 FB 78 */ mr r3, r31 +/* 80167280 001641E0 38 80 00 05 */ li r4, 5 +/* 80167284 001641E4 38 C0 00 00 */ li r6, 0 +/* 80167288 001641E8 4B FF FC 89 */ bl sub_80166f10 +/* 8016728C 001641EC C0 42 9F 8C */ lfs f2, lbl_805ABCAC@sda21(r2) +/* 80167290 001641F0 38 61 00 08 */ addi r3, r1, 8 +/* 80167294 001641F4 C0 22 A0 5C */ lfs f1, lbl_805ABD7C@sda21(r2) +/* 80167298 001641F8 FC 60 10 90 */ fmr f3, f2 +/* 8016729C 001641FC C0 82 9F C0 */ lfs f4, lbl_805ABCE0@sda21(r2) +/* 801672A0 00164200 48 1F C1 4D */ bl __ct__6CColorFffff +/* 801672A4 00164204 C0 22 A0 60 */ lfs f1, lbl_805ABD80@sda21(r2) +/* 801672A8 00164208 7C 65 1B 78 */ mr r5, r3 +/* 801672AC 0016420C 7F E3 FB 78 */ mr r3, r31 +/* 801672B0 00164210 38 80 00 07 */ li r4, 7 +/* 801672B4 00164214 38 C0 00 00 */ li r6, 0 +/* 801672B8 00164218 4B FF FC 59 */ bl sub_80166f10 +/* 801672BC 0016421C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801672C0 00164220 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801672C4 00164224 7C 08 03 A6 */ mtlr r0 +/* 801672C8 00164228 38 21 00 20 */ addi r1, r1, 0x20 +/* 801672CC 0016422C 4E 80 00 20 */ blr + +.global AddToRenderer__11CDroneLaserCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__11CDroneLaserCFRC14CFrustumPlanesRC13CStateManager: +/* 801672D0 00164230 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801672D4 00164234 7C 08 02 A6 */ mflr r0 +/* 801672D8 00164238 90 01 00 14 */ stw r0, 0x14(r1) +/* 801672DC 0016423C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801672E0 00164240 7C BF 2B 78 */ mr r31, r5 +/* 801672E4 00164244 93 C1 00 08 */ stw r30, 8(r1) +/* 801672E8 00164248 7C 7E 1B 78 */ mr r30, r3 +/* 801672EC 0016424C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801672F0 00164250 80 9E 01 04 */ lwz r4, 0x104(r30) +/* 801672F4 00164254 81 83 00 00 */ lwz r12, 0(r3) +/* 801672F8 00164258 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801672FC 0016425C 7D 89 03 A6 */ mtctr r12 +/* 80167300 00164260 4E 80 04 21 */ bctrl +/* 80167304 00164264 7F C3 F3 78 */ mr r3, r30 +/* 80167308 00164268 7F E4 FB 78 */ mr r4, r31 +/* 8016730C 0016426C 4B EE D6 C1 */ bl EnsureRendered__6CActorCFRC13CStateManager +/* 80167310 00164270 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80167314 00164274 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80167318 00164278 83 C1 00 08 */ lwz r30, 8(r1) +/* 8016731C 0016427C 7C 08 03 A6 */ mtlr r0 +/* 80167320 00164280 38 21 00 10 */ addi r1, r1, 0x10 +/* 80167324 00164284 4E 80 00 20 */ blr + +.global CalculateRenderBounds__11CDroneLaserFv +CalculateRenderBounds__11CDroneLaserFv: +/* 80167328 00164288 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 8016732C 0016428C 7C 08 02 A6 */ mflr r0 +/* 80167330 00164290 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 80167334 00164294 DB E1 00 90 */ stfd f31, 0x90(r1) +/* 80167338 00164298 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 +/* 8016733C 0016429C 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 80167340 001642A0 3C 80 80 5A */ lis r4, lbl_805A6754@ha +/* 80167344 001642A4 C4 A4 67 54 */ lfsu f5, lbl_805A6754@l(r4) +/* 80167348 001642A8 7C 7F 1B 78 */ mr r31, r3 +/* 8016734C 001642AC 38 61 00 5C */ addi r3, r1, 0x5c +/* 80167350 001642B0 C0 84 00 04 */ lfs f4, 4(r4) +/* 80167354 001642B4 C0 64 00 08 */ lfs f3, 8(r4) +/* 80167358 001642B8 C0 44 00 0C */ lfs f2, 0xc(r4) +/* 8016735C 001642BC C0 24 00 10 */ lfs f1, 0x10(r4) +/* 80167360 001642C0 C0 04 00 14 */ lfs f0, 0x14(r4) +/* 80167364 001642C4 D0 A1 00 68 */ stfs f5, 0x68(r1) +/* 80167368 001642C8 D0 81 00 6C */ stfs f4, 0x6c(r1) +/* 8016736C 001642CC D0 61 00 70 */ stfs f3, 0x70(r1) +/* 80167370 001642D0 D0 41 00 74 */ stfs f2, 0x74(r1) +/* 80167374 001642D4 D0 21 00 78 */ stfs f1, 0x78(r1) +/* 80167378 001642D8 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 8016737C 001642DC C0 3F 00 EC */ lfs f1, 0xec(r31) +/* 80167380 001642E0 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 80167384 001642E4 C0 7F 00 F0 */ lfs f3, 0xf0(r31) +/* 80167388 001642E8 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8016738C 001642EC C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 80167390 001642F0 C0 3F 00 E8 */ lfs f1, 0xe8(r31) +/* 80167394 001642F4 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 80167398 001642F8 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8016739C 001642FC EC 01 00 28 */ fsubs f0, f1, f0 +/* 801673A0 00164300 D0 81 00 60 */ stfs f4, 0x60(r1) +/* 801673A4 00164304 D0 41 00 64 */ stfs f2, 0x64(r1) +/* 801673A8 00164308 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 801673AC 0016430C 48 1A D5 0D */ bl Magnitude__9CVector3fCFv +/* 801673B0 00164310 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801673B4 00164314 FF E0 08 90 */ fmr f31, f1 +/* 801673B8 00164318 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801673BC 0016431C 38 61 00 68 */ addi r3, r1, 0x68 +/* 801673C0 00164320 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801673C4 00164324 38 81 00 50 */ addi r4, r1, 0x50 +/* 801673C8 00164328 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 801673CC 0016432C D0 21 00 54 */ stfs f1, 0x54(r1) +/* 801673D0 00164330 D0 41 00 58 */ stfs f2, 0x58(r1) +/* 801673D4 00164334 48 1D 07 35 */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 801673D8 00164338 C0 02 9F C0 */ lfs f0, lbl_805ABCE0@sda21(r2) +/* 801673DC 0016433C 38 61 00 68 */ addi r3, r1, 0x68 +/* 801673E0 00164340 C1 1F 00 5C */ lfs f8, 0x5c(r31) +/* 801673E4 00164344 38 81 00 44 */ addi r4, r1, 0x44 +/* 801673E8 00164348 EF E0 07 F2 */ fmuls f31, f0, f31 +/* 801673EC 0016434C C0 FF 00 4C */ lfs f7, 0x4c(r31) +/* 801673F0 00164350 C0 7F 00 3C */ lfs f3, 0x3c(r31) +/* 801673F4 00164354 C0 5F 00 EC */ lfs f2, 0xec(r31) +/* 801673F8 00164358 EC BF 01 F2 */ fmuls f5, f31, f7 +/* 801673FC 0016435C C0 3F 00 F0 */ lfs f1, 0xf0(r31) +/* 80167400 00164360 EC 9F 02 32 */ fmuls f4, f31, f8 +/* 80167404 00164364 C0 1F 00 E8 */ lfs f0, 0xe8(r31) +/* 80167408 00164368 EC DF 00 F2 */ fmuls f6, f31, f3 +/* 8016740C 0016436C D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 80167410 00164370 EC 42 28 2A */ fadds f2, f2, f5 +/* 80167414 00164374 D0 E1 00 30 */ stfs f7, 0x30(r1) +/* 80167418 00164378 EC 21 20 2A */ fadds f1, f1, f4 +/* 8016741C 0016437C EC 00 30 2A */ fadds f0, f0, f6 +/* 80167420 00164380 D1 01 00 34 */ stfs f8, 0x34(r1) +/* 80167424 00164384 D0 C1 00 38 */ stfs f6, 0x38(r1) +/* 80167428 00164388 D0 A1 00 3C */ stfs f5, 0x3c(r1) +/* 8016742C 0016438C D0 81 00 40 */ stfs f4, 0x40(r1) +/* 80167430 00164390 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 80167434 00164394 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 80167438 00164398 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 8016743C 0016439C 48 1D 06 CD */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 80167440 001643A0 C1 1F 00 5C */ lfs f8, 0x5c(r31) +/* 80167444 001643A4 38 61 00 68 */ addi r3, r1, 0x68 +/* 80167448 001643A8 C0 FF 00 4C */ lfs f7, 0x4c(r31) +/* 8016744C 001643AC 38 81 00 20 */ addi r4, r1, 0x20 +/* 80167450 001643B0 C0 9F 00 3C */ lfs f4, 0x3c(r31) +/* 80167454 001643B4 EC BF 02 32 */ fmuls f5, f31, f8 +/* 80167458 001643B8 EC DF 01 F2 */ fmuls f6, f31, f7 +/* 8016745C 001643BC C0 5F 00 EC */ lfs f2, 0xec(r31) +/* 80167460 001643C0 EC 7F 01 32 */ fmuls f3, f31, f4 +/* 80167464 001643C4 C0 3F 00 F0 */ lfs f1, 0xf0(r31) +/* 80167468 001643C8 C0 1F 00 E8 */ lfs f0, 0xe8(r31) +/* 8016746C 001643CC EC 42 30 28 */ fsubs f2, f2, f6 +/* 80167470 001643D0 EC 21 28 28 */ fsubs f1, f1, f5 +/* 80167474 001643D4 D0 81 00 08 */ stfs f4, 8(r1) +/* 80167478 001643D8 EC 00 18 28 */ fsubs f0, f0, f3 +/* 8016747C 001643DC D0 E1 00 0C */ stfs f7, 0xc(r1) +/* 80167480 001643E0 D1 01 00 10 */ stfs f8, 0x10(r1) +/* 80167484 001643E4 D0 61 00 14 */ stfs f3, 0x14(r1) +/* 80167488 001643E8 D0 C1 00 18 */ stfs f6, 0x18(r1) +/* 8016748C 001643EC D0 A1 00 1C */ stfs f5, 0x1c(r1) +/* 80167490 001643F0 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 80167494 001643F4 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 80167498 001643F8 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 8016749C 001643FC 48 1D 06 6D */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 801674A0 00164400 80 61 00 68 */ lwz r3, 0x68(r1) +/* 801674A4 00164404 80 01 00 6C */ lwz r0, 0x6c(r1) +/* 801674A8 00164408 90 7F 00 9C */ stw r3, 0x9c(r31) +/* 801674AC 0016440C 90 1F 00 A0 */ stw r0, 0xa0(r31) +/* 801674B0 00164410 80 01 00 70 */ lwz r0, 0x70(r1) +/* 801674B4 00164414 90 1F 00 A4 */ stw r0, 0xa4(r31) +/* 801674B8 00164418 80 61 00 74 */ lwz r3, 0x74(r1) +/* 801674BC 0016441C 80 01 00 78 */ lwz r0, 0x78(r1) +/* 801674C0 00164420 90 7F 00 A8 */ stw r3, 0xa8(r31) +/* 801674C4 00164424 90 1F 00 AC */ stw r0, 0xac(r31) +/* 801674C8 00164428 80 01 00 7C */ lwz r0, 0x7c(r1) +/* 801674CC 0016442C 90 1F 00 B0 */ stw r0, 0xb0(r31) +/* 801674D0 00164430 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 +/* 801674D4 00164434 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 801674D8 00164438 CB E1 00 90 */ lfd f31, 0x90(r1) +/* 801674DC 0016443C 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 801674E0 00164440 7C 08 03 A6 */ mtlr r0 +/* 801674E4 00164444 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 801674E8 00164448 4E 80 00 20 */ blr + +.global Accept__11CDroneLaserFR8IVisitor +Accept__11CDroneLaserFR8IVisitor: +/* 801674EC 0016444C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801674F0 00164450 7C 08 02 A6 */ mflr r0 +/* 801674F4 00164454 90 01 00 14 */ stw r0, 0x14(r1) +/* 801674F8 00164458 7C 60 1B 78 */ mr r0, r3 +/* 801674FC 0016445C 7C 83 23 78 */ mr r3, r4 +/* 80167500 00164460 81 84 00 00 */ lwz r12, 0(r4) +/* 80167504 00164464 7C 04 03 78 */ mr r4, r0 +/* 80167508 00164468 81 8C 00 08 */ lwz r12, 8(r12) +/* 8016750C 0016446C 7D 89 03 A6 */ mtctr r12 +/* 80167510 00164470 4E 80 04 21 */ bctrl +/* 80167514 00164474 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80167518 00164478 7C 08 03 A6 */ mtlr r0 +/* 8016751C 0016447C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80167520 00164480 4E 80 00 20 */ blr + +.global AcceptScriptMsg__11CDroneLaserF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__11CDroneLaserF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 80167524 00164484 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 80167528 00164488 7C 08 02 A6 */ mflr r0 +/* 8016752C 0016448C 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 80167530 00164490 93 E1 00 EC */ stw r31, 0xec(r1) +/* 80167534 00164494 7C DF 33 78 */ mr r31, r6 +/* 80167538 00164498 93 C1 00 E8 */ stw r30, 0xe8(r1) +/* 8016753C 0016449C 7C 7E 1B 78 */ mr r30, r3 +/* 80167540 001644A0 93 A1 00 E4 */ stw r29, 0xe4(r1) +/* 80167544 001644A4 7C 9D 23 78 */ mr r29, r4 +/* 80167548 001644A8 93 81 00 E0 */ stw r28, 0xe0(r1) +/* 8016754C 001644AC A0 05 00 00 */ lhz r0, 0(r5) +/* 80167550 001644B0 38 A1 00 24 */ addi r5, r1, 0x24 +/* 80167554 001644B4 B0 01 00 24 */ sth r0, 0x24(r1) +/* 80167558 001644B8 4B EE C0 BD */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8016755C 001644BC 2C 1D 00 04 */ cmpwi r29, 4 +/* 80167560 001644C0 41 82 00 58 */ beq lbl_801675B8 +/* 80167564 001644C4 40 80 00 10 */ bge lbl_80167574 +/* 80167568 001644C8 2C 1D 00 01 */ cmpwi r29, 1 +/* 8016756C 001644CC 41 82 00 20 */ beq lbl_8016758C +/* 80167570 001644D0 48 00 01 94 */ b lbl_80167704 +lbl_80167574: +/* 80167574 001644D4 2C 1D 00 22 */ cmpwi r29, 0x22 +/* 80167578 001644D8 41 82 01 60 */ beq lbl_801676D8 +/* 8016757C 001644DC 40 80 01 88 */ bge lbl_80167704 +/* 80167580 001644E0 2C 1D 00 21 */ cmpwi r29, 0x21 +/* 80167584 001644E4 40 80 00 60 */ bge lbl_801675E4 +/* 80167588 001644E8 48 00 01 7C */ b lbl_80167704 +lbl_8016758C: +/* 8016758C 001644EC 7F C3 F3 78 */ mr r3, r30 +/* 80167590 001644F0 7F E4 FB 78 */ mr r4, r31 +/* 80167594 001644F4 38 A0 00 01 */ li r5, 1 +/* 80167598 001644F8 4B FF F9 25 */ bl sub_80166ebc +/* 8016759C 001644FC 80 7E 01 04 */ lwz r3, 0x104(r30) +/* 801675A0 00164500 38 80 00 01 */ li r4, 1 +/* 801675A4 00164504 81 83 00 00 */ lwz r12, 0(r3) +/* 801675A8 00164508 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801675AC 0016450C 7D 89 03 A6 */ mtctr r12 +/* 801675B0 00164510 4E 80 04 21 */ bctrl +/* 801675B4 00164514 48 00 01 50 */ b lbl_80167704 +lbl_801675B8: +/* 801675B8 00164518 7F C3 F3 78 */ mr r3, r30 +/* 801675BC 0016451C 7F E4 FB 78 */ mr r4, r31 +/* 801675C0 00164520 38 A0 00 00 */ li r5, 0 +/* 801675C4 00164524 4B FF F8 F9 */ bl sub_80166ebc +/* 801675C8 00164528 80 7E 01 04 */ lwz r3, 0x104(r30) +/* 801675CC 0016452C 38 80 00 00 */ li r4, 0 +/* 801675D0 00164530 81 83 00 00 */ lwz r12, 0(r3) +/* 801675D4 00164534 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801675D8 00164538 7D 89 03 A6 */ mtctr r12 +/* 801675DC 0016453C 4E 80 04 21 */ bctrl +/* 801675E0 00164540 48 00 01 24 */ b lbl_80167704 +lbl_801675E4: +/* 801675E4 00164544 7F E4 FB 78 */ mr r4, r31 +/* 801675E8 00164548 38 61 00 20 */ addi r3, r1, 0x20 +/* 801675EC 0016454C 4B EE 5A F1 */ bl AllocateUniqueId__13CStateManagerFv +/* 801675F0 00164550 A0 01 00 20 */ lhz r0, 0x20(r1) +/* 801675F4 00164554 B0 1E 00 F4 */ sth r0, 0xf4(r30) +/* 801675F8 00164558 48 1E 29 A5 */ bl Red__6CColorFv +/* 801675FC 0016455C 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80167600 00164560 7C 65 1B 78 */ mr r5, r3 +/* 80167604 00164564 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 80167608 00164568 38 61 00 40 */ addi r3, r1, 0x40 +/* 8016760C 0016456C 48 19 EE 29 */ bl BuildPoint__6CLightFRC9CVector3fRC6CColor +/* 80167610 00164570 38 61 00 90 */ addi r3, r1, 0x90 +/* 80167614 00164574 38 81 00 40 */ addi r4, r1, 0x40 +/* 80167618 00164578 4B ED 3F 59 */ bl __ct__6CLightFCR6CLight +/* 8016761C 0016457C 3C 60 80 3D */ lis r3, lbl_803D0398@ha +/* 80167620 00164580 3B 80 00 00 */ li r28, 0 +/* 80167624 00164584 38 83 03 98 */ addi r4, r3, lbl_803D0398@l +/* 80167628 00164588 38 60 01 48 */ li r3, 0x148 +/* 8016762C 0016458C 38 84 00 3B */ addi r4, r4, 0x3b +/* 80167630 00164590 38 A0 00 00 */ li r5, 0 +/* 80167634 00164594 48 1A E2 39 */ bl __nw__FUlPCcPCc +/* 80167638 00164598 7C 7D 1B 79 */ or. r29, r3, r3 +/* 8016763C 0016459C 41 82 00 7C */ beq lbl_801676B8 +/* 80167640 001645A0 A0 1E 00 08 */ lhz r0, 8(r30) +/* 80167644 001645A4 3C 60 80 3D */ lis r3, lbl_803D0398@ha +/* 80167648 001645A8 38 83 03 98 */ addi r4, r3, lbl_803D0398@l +/* 8016764C 001645AC 38 61 00 30 */ addi r3, r1, 0x30 +/* 80167650 001645B0 B0 01 00 18 */ sth r0, 0x18(r1) +/* 80167654 001645B4 38 84 00 76 */ addi r4, r4, 0x76 +/* 80167658 001645B8 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8016765C 001645BC 4B E9 D6 5D */ bl string_l__4rstlFPCc +/* 80167660 001645C0 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 80167664 001645C4 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 80167668 001645C8 80 9E 00 04 */ lwz r4, 4(r30) +/* 8016766C 001645CC 39 03 66 70 */ addi r8, r3, skIdentity4f@l +/* 80167670 001645D0 54 06 CF FE */ rlwinm r6, r0, 0x19, 0x1f, 0x1f +/* 80167674 001645D4 38 00 00 00 */ li r0, 0 +/* 80167678 001645D8 90 81 00 2C */ stw r4, 0x2c(r1) +/* 8016767C 001645DC 7F A3 EB 78 */ mr r3, r29 +/* 80167680 001645E0 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) +/* 80167684 001645E4 38 A1 00 2C */ addi r5, r1, 0x2c +/* 80167688 001645E8 A1 3E 00 F4 */ lhz r9, 0xf4(r30) +/* 8016768C 001645EC 38 E1 00 30 */ addi r7, r1, 0x30 +/* 80167690 001645F0 90 81 00 28 */ stw r4, 0x28(r1) +/* 80167694 001645F4 38 81 00 14 */ addi r4, r1, 0x14 +/* 80167698 001645F8 39 41 00 90 */ addi r10, r1, 0x90 +/* 8016769C 001645FC 3B 80 00 01 */ li r28, 1 +/* 801676A0 00164600 B1 21 00 14 */ sth r9, 0x14(r1) +/* 801676A4 00164604 39 21 00 1C */ addi r9, r1, 0x1c +/* 801676A8 00164608 90 01 00 08 */ stw r0, 8(r1) +/* 801676AC 0016460C 90 01 00 0C */ stw r0, 0xc(r1) +/* 801676B0 00164610 4B F4 E1 75 */ bl "__ct__10CGameLightF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC12CTransform4f9TUniqueIdRC6CLightUiUif" +/* 801676B4 00164614 7C 7D 1B 78 */ mr r29, r3 +lbl_801676B8: +/* 801676B8 00164618 7F 80 07 75 */ extsb. r0, r28 +/* 801676BC 0016461C 41 82 00 0C */ beq lbl_801676C8 +/* 801676C0 00164620 38 61 00 30 */ addi r3, r1, 0x30 +/* 801676C4 00164624 48 1D 64 1D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_801676C8: +/* 801676C8 00164628 7F E3 FB 78 */ mr r3, r31 +/* 801676CC 0016462C 7F A4 EB 78 */ mr r4, r29 +/* 801676D0 00164630 4B EE 54 45 */ bl AddObject__13CStateManagerFR7CEntity +/* 801676D4 00164634 48 00 00 30 */ b lbl_80167704 +lbl_801676D8: +/* 801676D8 00164638 A0 7E 00 F4 */ lhz r3, 0xf4(r30) +/* 801676DC 0016463C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801676E0 00164640 7C 03 00 40 */ cmplw r3, r0 +/* 801676E4 00164644 41 82 00 20 */ beq lbl_80167704 +/* 801676E8 00164648 A0 1E 00 F4 */ lhz r0, 0xf4(r30) +/* 801676EC 0016464C 7F E3 FB 78 */ mr r3, r31 +/* 801676F0 00164650 38 81 00 10 */ addi r4, r1, 0x10 +/* 801676F4 00164654 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801676F8 00164658 4B EE 4B 75 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 801676FC 0016465C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80167700 00164660 B0 1E 00 F4 */ sth r0, 0xf4(r30) +lbl_80167704: +/* 80167704 00164664 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 80167708 00164668 83 E1 00 EC */ lwz r31, 0xec(r1) +/* 8016770C 0016466C 83 C1 00 E8 */ lwz r30, 0xe8(r1) +/* 80167710 00164670 83 A1 00 E4 */ lwz r29, 0xe4(r1) +/* 80167714 00164674 83 81 00 E0 */ lwz r28, 0xe0(r1) +/* 80167718 00164678 7C 08 03 A6 */ mtlr r0 +/* 8016771C 0016467C 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 80167720 00164680 4E 80 00 20 */ blr + +.global Think__11CDroneLaserFfR13CStateManager +Think__11CDroneLaserFfR13CStateManager: +/* 80167724 00164684 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80167728 00164688 7C 08 02 A6 */ mflr r0 +/* 8016772C 0016468C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80167730 00164690 80 63 01 04 */ lwz r3, 0x104(r3) +/* 80167734 00164694 81 83 00 00 */ lwz r12, 0(r3) +/* 80167738 00164698 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8016773C 0016469C 7D 89 03 A6 */ mtctr r12 +/* 80167740 001646A0 4E 80 04 21 */ bctrl +/* 80167744 001646A4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80167748 001646A8 7C 08 03 A6 */ mtlr r0 +/* 8016774C 001646AC 38 21 00 10 */ addi r1, r1, 0x10 +/* 80167750 001646B0 4E 80 00 20 */ blr + +.global sub_80167754 +sub_80167754: +/* 80167754 001646B4 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 80167758 001646B8 7C 08 02 A6 */ mflr r0 +/* 8016775C 001646BC 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 80167760 001646C0 DB E1 00 B0 */ stfd f31, 0xb0(r1) +/* 80167764 001646C4 F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 +/* 80167768 001646C8 DB C1 00 A0 */ stfd f30, 0xa0(r1) +/* 8016776C 001646CC F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 +/* 80167770 001646D0 DB A1 00 90 */ stfd f29, 0x90(r1) +/* 80167774 001646D4 F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0 +/* 80167778 001646D8 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 8016777C 001646DC 93 C1 00 88 */ stw r30, 0x88(r1) +/* 80167780 001646E0 93 A1 00 84 */ stw r29, 0x84(r1) +/* 80167784 001646E4 93 81 00 80 */ stw r28, 0x80(r1) +/* 80167788 001646E8 7C BD 2B 78 */ mr r29, r5 +/* 8016778C 001646EC 7C 7C 1B 78 */ mr r28, r3 +/* 80167790 001646F0 C0 05 00 00 */ lfs f0, 0(r5) +/* 80167794 001646F4 7C 9F 23 78 */ mr r31, r4 +/* 80167798 001646F8 7C DE 33 78 */ mr r30, r6 +/* 8016779C 001646FC 38 61 00 38 */ addi r3, r1, 0x38 +/* 801677A0 00164700 D0 1C 00 E8 */ stfs f0, 0xe8(r28) +/* 801677A4 00164704 38 81 00 2C */ addi r4, r1, 0x2c +/* 801677A8 00164708 C0 05 00 04 */ lfs f0, 4(r5) +/* 801677AC 0016470C D0 1C 00 EC */ stfs f0, 0xec(r28) +/* 801677B0 00164710 C0 05 00 08 */ lfs f0, 8(r5) +/* 801677B4 00164714 D0 1C 00 F0 */ stfs f0, 0xf0(r28) +/* 801677B8 00164718 C0 25 00 04 */ lfs f1, 4(r5) +/* 801677BC 0016471C C0 1C 00 50 */ lfs f0, 0x50(r28) +/* 801677C0 00164720 C0 65 00 08 */ lfs f3, 8(r5) +/* 801677C4 00164724 C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 801677C8 00164728 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801677CC 0016472C C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 801677D0 00164730 C0 25 00 00 */ lfs f1, 0(r5) +/* 801677D4 00164734 EC 43 10 28 */ fsubs f2, f3, f2 +/* 801677D8 00164738 D0 81 00 30 */ stfs f4, 0x30(r1) +/* 801677DC 0016473C EC 01 00 28 */ fsubs f0, f1, f0 +/* 801677E0 00164740 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 801677E4 00164744 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801677E8 00164748 48 1A D0 69 */ bl AsNormalized__9CVector3fCFv +/* 801677EC 0016474C A0 7C 00 F4 */ lhz r3, 0xf4(r28) +/* 801677F0 00164750 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801677F4 00164754 C3 E1 00 38 */ lfs f31, 0x38(r1) +/* 801677F8 00164758 7C 03 00 40 */ cmplw r3, r0 +/* 801677FC 0016475C C3 C1 00 3C */ lfs f30, 0x3c(r1) +/* 80167800 00164760 C3 A1 00 40 */ lfs f29, 0x40(r1) +/* 80167804 00164764 41 82 00 78 */ beq lbl_8016787C +/* 80167808 00164768 A0 1C 00 F4 */ lhz r0, 0xf4(r28) +/* 8016780C 0016476C 7F E3 FB 78 */ mr r3, r31 +/* 80167810 00164770 38 81 00 08 */ addi r4, r1, 8 +/* 80167814 00164774 B0 01 00 08 */ sth r0, 8(r1) +/* 80167818 00164778 4B EE 4D 5D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8016781C 0016477C 7C 64 1B 78 */ mr r4, r3 +/* 80167820 00164780 38 61 00 0C */ addi r3, r1, 0xc +/* 80167824 00164784 4B F4 62 61 */ bl "__ct__24TCastToPtr<10CGameLight>FP7CEntity" +/* 80167828 00164788 80 63 00 04 */ lwz r3, 4(r3) +/* 8016782C 0016478C 28 03 00 00 */ cmplwi r3, 0 +/* 80167830 00164790 41 82 00 4C */ beq lbl_8016787C +/* 80167834 00164794 C0 A2 9F 80 */ lfs f5, lbl_805ABCA0@sda21(r2) +/* 80167838 00164798 38 81 00 20 */ addi r4, r1, 0x20 +/* 8016783C 0016479C C0 5D 00 04 */ lfs f2, 4(r29) +/* 80167840 001647A0 EC 85 07 B2 */ fmuls f4, f5, f30 +/* 80167844 001647A4 C0 3D 00 08 */ lfs f1, 8(r29) +/* 80167848 001647A8 EC 65 07 72 */ fmuls f3, f5, f29 +/* 8016784C 001647AC C0 1D 00 00 */ lfs f0, 0(r29) +/* 80167850 001647B0 EC A5 07 F2 */ fmuls f5, f5, f31 +/* 80167854 001647B4 EC 42 20 28 */ fsubs f2, f2, f4 +/* 80167858 001647B8 EC 21 18 28 */ fsubs f1, f1, f3 +/* 8016785C 001647BC D0 81 00 18 */ stfs f4, 0x18(r1) +/* 80167860 001647C0 EC 00 28 28 */ fsubs f0, f0, f5 +/* 80167864 001647C4 D0 A1 00 14 */ stfs f5, 0x14(r1) +/* 80167868 001647C8 D0 61 00 1C */ stfs f3, 0x1c(r1) +/* 8016786C 001647CC D0 01 00 20 */ stfs f0, 0x20(r1) +/* 80167870 001647D0 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 80167874 001647D4 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 80167878 001647D8 4B EE B6 15 */ bl SetTranslation__6CActorFRC9CVector3f +lbl_8016787C: +/* 8016787C 001647DC 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80167880 001647E0 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 80167884 001647E4 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 80167888 001647E8 83 FC 01 04 */ lwz r31, 0x104(r28) +/* 8016788C 001647EC 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 80167890 001647F0 7F C5 F3 78 */ mr r5, r30 +/* 80167894 001647F4 38 61 00 44 */ addi r3, r1, 0x44 +/* 80167898 001647F8 48 1A C2 79 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 8016789C 001647FC 7F E3 FB 78 */ mr r3, r31 +/* 801678A0 00164800 38 81 00 44 */ addi r4, r1, 0x44 +/* 801678A4 00164804 81 9F 00 00 */ lwz r12, 0(r31) +/* 801678A8 00164808 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801678AC 0016480C 7D 89 03 A6 */ mtctr r12 +/* 801678B0 00164810 4E 80 04 21 */ bctrl +/* 801678B4 00164814 80 7C 01 04 */ lwz r3, 0x104(r28) +/* 801678B8 00164818 7F A4 EB 78 */ mr r4, r29 +/* 801678BC 0016481C 81 83 00 00 */ lwz r12, 0(r3) +/* 801678C0 00164820 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 801678C4 00164824 7D 89 03 A6 */ mtctr r12 +/* 801678C8 00164828 4E 80 04 21 */ bctrl +/* 801678CC 0016482C E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 +/* 801678D0 00164830 CB E1 00 B0 */ lfd f31, 0xb0(r1) +/* 801678D4 00164834 E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 +/* 801678D8 00164838 CB C1 00 A0 */ lfd f30, 0xa0(r1) +/* 801678DC 0016483C E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0 +/* 801678E0 00164840 CB A1 00 90 */ lfd f29, 0x90(r1) +/* 801678E4 00164844 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 801678E8 00164848 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 801678EC 0016484C 83 A1 00 84 */ lwz r29, 0x84(r1) +/* 801678F0 00164850 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 801678F4 00164854 83 81 00 80 */ lwz r28, 0x80(r1) +/* 801678F8 00164858 7C 08 03 A6 */ mtlr r0 +/* 801678FC 0016485C 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 80167900 00164860 4E 80 00 20 */ blr + +.global __ct__11CDroneLaserF9TUniqueIdRC12CTransform4fUi +__ct__11CDroneLaserF9TUniqueIdRC12CTransform4fUi: +/* 80167904 00164864 94 21 FE 50 */ stwu r1, -0x1b0(r1) +/* 80167908 00164868 7C 08 02 A6 */ mflr r0 +/* 8016790C 0016486C 3D 00 80 3D */ lis r8, lbl_803D0398@ha +/* 80167910 00164870 90 01 01 B4 */ stw r0, 0x1b4(r1) +/* 80167914 00164874 39 08 03 98 */ addi r8, r8, lbl_803D0398@l +/* 80167918 00164878 BF 61 01 9C */ stmw r27, 0x19c(r1) +/* 8016791C 0016487C 7C 7C 1B 78 */ mr r28, r3 +/* 80167920 00164880 7C 9D 23 78 */ mr r29, r4 +/* 80167924 00164884 7C BB 2B 78 */ mr r27, r5 +/* 80167928 00164888 7C DE 33 78 */ mr r30, r6 +/* 8016792C 0016488C 7C FF 3B 78 */ mr r31, r7 +/* 80167930 00164890 38 61 00 50 */ addi r3, r1, 0x50 +/* 80167934 00164894 38 88 00 83 */ addi r4, r8, 0x83 +/* 80167938 00164898 4B E9 D3 81 */ bl string_l__4rstlFPCc +/* 8016793C 0016489C 80 8D A3 88 */ lwz r4, lbl_805A8F48@sda21(r13) +/* 80167940 001648A0 3C 60 80 57 */ lis r3, lbl_8056D410@ha +/* 80167944 001648A4 80 1B 00 00 */ lwz r0, 0(r27) +/* 80167948 001648A8 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l +/* 8016794C 001648AC 90 81 00 28 */ stw r4, 0x28(r1) +/* 80167950 001648B0 38 61 00 60 */ addi r3, r1, 0x60 +/* 80167954 001648B4 38 81 00 2C */ addi r4, r1, 0x2c +/* 80167958 001648B8 38 C1 00 28 */ addi r6, r1, 0x28 +/* 8016795C 001648BC 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80167960 001648C0 4B EE 9B 25 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 80167964 001648C4 38 61 01 48 */ addi r3, r1, 0x148 +/* 80167968 001648C8 4B ED 2E 3D */ bl CModelDataNull__10CModelDataFv +/* 8016796C 001648CC 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 80167970 001648D0 4B EB 34 C9 */ bl None__16CActorParametersFv +/* 80167974 001648D4 38 61 00 78 */ addi r3, r1, 0x78 +/* 80167978 001648D8 38 81 00 E0 */ addi r4, r1, 0xe0 +/* 8016797C 001648DC 38 A0 00 01 */ li r5, 1 +/* 80167980 001648E0 4B F9 EE 8D */ bl sub_8010680c +/* 80167984 001648E4 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 80167988 001648E8 38 00 00 00 */ li r0, 0 +/* 8016798C 001648EC 80 AD 8D 00 */ lwz r5, lbl_805A78C0@sda21(r13) +/* 80167990 001648F0 38 60 00 00 */ li r3, 0 +/* 80167994 001648F4 B0 81 00 10 */ sth r4, 0x10(r1) +/* 80167998 001648F8 38 80 00 01 */ li r4, 1 +/* 8016799C 001648FC 90 01 00 4C */ stw r0, 0x4c(r1) +/* 801679A0 00164900 90 01 00 48 */ stw r0, 0x48(r1) +/* 801679A4 00164904 48 22 25 51 */ bl __shl2i +/* 801679A8 00164908 80 A1 00 48 */ lwz r5, 0x48(r1) +/* 801679AC 0016490C 39 61 00 78 */ addi r11, r1, 0x78 +/* 801679B0 00164910 80 C1 00 4C */ lwz r6, 0x4c(r1) +/* 801679B4 00164914 38 01 00 10 */ addi r0, r1, 0x10 +/* 801679B8 00164918 7C A3 1B 78 */ or r3, r5, r3 +/* 801679BC 0016491C A0 BD 00 00 */ lhz r5, 0(r29) +/* 801679C0 00164920 7C C4 23 78 */ or r4, r6, r4 +/* 801679C4 00164924 90 61 00 48 */ stw r3, 0x48(r1) +/* 801679C8 00164928 7F 83 E3 78 */ mr r3, r28 +/* 801679CC 0016492C 7F C8 F3 78 */ mr r8, r30 +/* 801679D0 00164930 90 81 00 4C */ stw r4, 0x4c(r1) +/* 801679D4 00164934 38 81 00 14 */ addi r4, r1, 0x14 +/* 801679D8 00164938 38 C1 00 50 */ addi r6, r1, 0x50 +/* 801679DC 0016493C 38 E1 00 60 */ addi r7, r1, 0x60 +/* 801679E0 00164940 B0 A1 00 14 */ sth r5, 0x14(r1) +/* 801679E4 00164944 39 21 01 48 */ addi r9, r1, 0x148 +/* 801679E8 00164948 39 41 00 48 */ addi r10, r1, 0x48 +/* 801679EC 0016494C 38 A0 00 01 */ li r5, 1 +/* 801679F0 00164950 91 61 00 08 */ stw r11, 8(r1) +/* 801679F4 00164954 90 01 00 0C */ stw r0, 0xc(r1) +/* 801679F8 00164958 4B EE DE 29 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" +/* 801679FC 0016495C 38 61 00 78 */ addi r3, r1, 0x78 +/* 80167A00 00164960 38 80 FF FF */ li r4, -1 +/* 80167A04 00164964 4B F9 EC 05 */ bl __dt__16CActorParametersFv +/* 80167A08 00164968 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 80167A0C 0016496C 38 80 FF FF */ li r4, -1 +/* 80167A10 00164970 4B F9 EB F9 */ bl __dt__16CActorParametersFv +/* 80167A14 00164974 38 61 01 48 */ addi r3, r1, 0x148 +/* 80167A18 00164978 38 80 FF FF */ li r4, -1 +/* 80167A1C 0016497C 4B FA F0 31 */ bl __dt__10CModelDataFv +/* 80167A20 00164980 80 01 00 68 */ lwz r0, 0x68(r1) +/* 80167A24 00164984 80 61 00 70 */ lwz r3, 0x70(r1) +/* 80167A28 00164988 1C 00 00 0C */ mulli r0, r0, 0xc +/* 80167A2C 0016498C 90 61 00 1C */ stw r3, 0x1c(r1) +/* 80167A30 00164990 7C 64 1B 78 */ mr r4, r3 +/* 80167A34 00164994 7C 03 02 14 */ add r0, r3, r0 +/* 80167A38 00164998 90 61 00 18 */ stw r3, 0x18(r1) +/* 80167A3C 0016499C 90 01 00 24 */ stw r0, 0x24(r1) +/* 80167A40 001649A0 90 01 00 20 */ stw r0, 0x20(r1) +/* 80167A44 001649A4 48 00 00 08 */ b lbl_80167A4C +lbl_80167A48: +/* 80167A48 001649A8 38 84 00 0C */ addi r4, r4, 0xc +lbl_80167A4C: +/* 80167A4C 001649AC 7C 04 00 40 */ cmplw r4, r0 +/* 80167A50 001649B0 40 82 FF F8 */ bne lbl_80167A48 +/* 80167A54 001649B4 28 03 00 00 */ cmplwi r3, 0 +/* 80167A58 001649B8 41 82 00 08 */ beq lbl_80167A60 +/* 80167A5C 001649BC 48 1A DE D5 */ bl Free__7CMemoryFPCv +lbl_80167A60: +/* 80167A60 001649C0 38 61 00 50 */ addi r3, r1, 0x50 +/* 80167A64 001649C4 48 1D 60 7D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80167A68 001649C8 3C 60 80 3E */ lis r3, lbl_803E3A58@ha +/* 80167A6C 001649CC 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80167A70 001649D0 38 03 3A 58 */ addi r0, r3, lbl_803E3A58@l +/* 80167A74 001649D4 38 A1 00 40 */ addi r5, r1, 0x40 +/* 80167A78 001649D8 90 1C 00 00 */ stw r0, 0(r28) +/* 80167A7C 001649DC 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 80167A80 001649E0 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 80167A84 001649E4 C4 04 66 A0 */ lfsu f0, skZero3f@l(r4) +/* 80167A88 001649E8 38 61 00 38 */ addi r3, r1, 0x38 +/* 80167A8C 001649EC D0 1C 00 E8 */ stfs f0, 0xe8(r28) +/* 80167A90 001649F0 C0 04 00 04 */ lfs f0, 4(r4) +/* 80167A94 001649F4 D0 1C 00 EC */ stfs f0, 0xec(r28) +/* 80167A98 001649F8 C0 04 00 08 */ lfs f0, 8(r4) +/* 80167A9C 001649FC D0 1C 00 F0 */ stfs f0, 0xf0(r28) +/* 80167AA0 00164A00 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 80167AA4 00164A04 B0 9C 00 F4 */ sth r4, 0xf4(r28) +/* 80167AA8 00164A08 90 01 00 40 */ stw r0, 0x40(r1) +/* 80167AAC 00164A0C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80167AB0 00164A10 93 E1 00 44 */ stw r31, 0x44(r1) +/* 80167AB4 00164A14 81 84 00 00 */ lwz r12, 0(r4) +/* 80167AB8 00164A18 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80167ABC 00164A1C 7D 89 03 A6 */ mtctr r12 +/* 80167AC0 00164A20 4E 80 04 21 */ bctrl +/* 80167AC4 00164A24 3B 7C 00 F8 */ addi r27, r28, 0xf8 +/* 80167AC8 00164A28 38 81 00 38 */ addi r4, r1, 0x38 +/* 80167ACC 00164A2C 7F 63 DB 78 */ mr r3, r27 +/* 80167AD0 00164A30 48 1D 93 D9 */ bl __ct__6CTokenFRC6CToken +/* 80167AD4 00164A34 7F 63 DB 78 */ mr r3, r27 +/* 80167AD8 00164A38 48 1D 93 35 */ bl GetObj__6CTokenFv +/* 80167ADC 00164A3C 80 03 00 04 */ lwz r0, 4(r3) +/* 80167AE0 00164A40 38 61 00 38 */ addi r3, r1, 0x38 +/* 80167AE4 00164A44 38 80 FF FF */ li r4, -1 +/* 80167AE8 00164A48 90 1B 00 08 */ stw r0, 8(r27) +/* 80167AEC 00164A4C 48 1D 93 55 */ bl __dt__6CTokenFv +/* 80167AF0 00164A50 3C 60 80 3D */ lis r3, lbl_803D0398@ha +/* 80167AF4 00164A54 3B 60 00 00 */ li r27, 0 +/* 80167AF8 00164A58 38 83 03 98 */ addi r4, r3, lbl_803D0398@l +/* 80167AFC 00164A5C 38 60 03 40 */ li r3, 0x340 +/* 80167B00 00164A60 38 84 00 3B */ addi r4, r4, 0x3b +/* 80167B04 00164A64 38 A0 00 00 */ li r5, 0 +/* 80167B08 00164A68 48 1A DD 65 */ bl __nw__FUlPCcPCc +/* 80167B0C 00164A6C 7C 7D 1B 79 */ or. r29, r3, r3 +/* 80167B10 00164A70 41 82 00 2C */ beq lbl_80167B3C +/* 80167B14 00164A74 38 61 00 30 */ addi r3, r1, 0x30 +/* 80167B18 00164A78 38 9C 00 F8 */ addi r4, r28, 0xf8 +/* 80167B1C 00164A7C 48 1D 93 8D */ bl __ct__6CTokenFRC6CToken +/* 80167B20 00164A80 7F A3 EB 78 */ mr r3, r29 +/* 80167B24 00164A84 38 81 00 30 */ addi r4, r1, 0x30 +/* 80167B28 00164A88 3B 60 00 01 */ li r27, 1 +/* 80167B2C 00164A8C 38 A0 00 00 */ li r5, 0 +/* 80167B30 00164A90 38 C0 00 01 */ li r6, 1 +/* 80167B34 00164A94 48 1B 78 AD */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 80167B38 00164A98 7C 7D 1B 78 */ mr r29, r3 +lbl_80167B3C: +/* 80167B3C 00164A9C 7F 60 07 75 */ extsb. r0, r27 +/* 80167B40 00164AA0 93 BC 01 04 */ stw r29, 0x104(r28) +/* 80167B44 00164AA4 41 82 00 10 */ beq lbl_80167B54 +/* 80167B48 00164AA8 38 61 00 30 */ addi r3, r1, 0x30 +/* 80167B4C 00164AAC 38 80 00 00 */ li r4, 0 +/* 80167B50 00164AB0 48 1D 92 F1 */ bl __dt__6CTokenFv +lbl_80167B54: +/* 80167B54 00164AB4 7F 83 E3 78 */ mr r3, r28 +/* 80167B58 00164AB8 BB 61 01 9C */ lmw r27, 0x19c(r1) +/* 80167B5C 00164ABC 80 01 01 B4 */ lwz r0, 0x1b4(r1) +/* 80167B60 00164AC0 7C 08 03 A6 */ mtlr r0 +/* 80167B64 00164AC4 38 21 01 B0 */ addi r1, r1, 0x1b0 +/* 80167B68 00164AC8 4E 80 00 20 */ blr + +.global __dt__11CDroneLaserFv +__dt__11CDroneLaserFv: +/* 80167B6C 00164ACC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80167B70 00164AD0 7C 08 02 A6 */ mflr r0 +/* 80167B74 00164AD4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80167B78 00164AD8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80167B7C 00164ADC 7C 9F 23 78 */ mr r31, r4 +/* 80167B80 00164AE0 93 C1 00 08 */ stw r30, 8(r1) +/* 80167B84 00164AE4 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80167B88 00164AE8 41 82 00 70 */ beq lbl_80167BF8 +/* 80167B8C 00164AEC 3C 60 80 3E */ lis r3, lbl_803E3A58@ha +/* 80167B90 00164AF0 34 1E 01 04 */ addic. r0, r30, 0x104 +/* 80167B94 00164AF4 38 03 3A 58 */ addi r0, r3, lbl_803E3A58@l +/* 80167B98 00164AF8 90 1E 00 00 */ stw r0, 0(r30) +/* 80167B9C 00164AFC 41 82 00 24 */ beq lbl_80167BC0 +/* 80167BA0 00164B00 80 7E 01 04 */ lwz r3, 0x104(r30) +/* 80167BA4 00164B04 28 03 00 00 */ cmplwi r3, 0 +/* 80167BA8 00164B08 41 82 00 18 */ beq lbl_80167BC0 +/* 80167BAC 00164B0C 81 83 00 00 */ lwz r12, 0(r3) +/* 80167BB0 00164B10 38 80 00 01 */ li r4, 1 +/* 80167BB4 00164B14 81 8C 00 08 */ lwz r12, 8(r12) +/* 80167BB8 00164B18 7D 89 03 A6 */ mtctr r12 +/* 80167BBC 00164B1C 4E 80 04 21 */ bctrl +lbl_80167BC0: +/* 80167BC0 00164B20 34 1E 00 F8 */ addic. r0, r30, 0xf8 +/* 80167BC4 00164B24 41 82 00 18 */ beq lbl_80167BDC +/* 80167BC8 00164B28 34 1E 00 F8 */ addic. r0, r30, 0xf8 +/* 80167BCC 00164B2C 41 82 00 10 */ beq lbl_80167BDC +/* 80167BD0 00164B30 38 7E 00 F8 */ addi r3, r30, 0xf8 +/* 80167BD4 00164B34 38 80 00 00 */ li r4, 0 +/* 80167BD8 00164B38 48 1D 92 69 */ bl __dt__6CTokenFv +lbl_80167BDC: +/* 80167BDC 00164B3C 7F C3 F3 78 */ mr r3, r30 +/* 80167BE0 00164B40 38 80 00 00 */ li r4, 0 +/* 80167BE4 00164B44 4B EE DB 0D */ bl __dt__6CActorFv +/* 80167BE8 00164B48 7F E0 07 35 */ extsh. r0, r31 +/* 80167BEC 00164B4C 40 81 00 0C */ ble lbl_80167BF8 +/* 80167BF0 00164B50 7F C3 F3 78 */ mr r3, r30 +/* 80167BF4 00164B54 48 1A DD 3D */ bl Free__7CMemoryFPCv +lbl_80167BF8: +/* 80167BF8 00164B58 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80167BFC 00164B5C 7F C3 F3 78 */ mr r3, r30 +/* 80167C00 00164B60 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80167C04 00164B64 83 C1 00 08 */ lwz r30, 8(r1) +/* 80167C08 00164B68 7C 08 03 A6 */ mtlr r0 +/* 80167C0C 00164B6C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80167C10 00164B70 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CMetaree.s b/asm/Kyoto_CWD/Enemies/CMetaree.s new file mode 100644 index 00000000..13459ba8 --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CMetaree.s @@ -0,0 +1,1009 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__8CMetareeFv +__dt__8CMetareeFv: +/* 8014E104 0014B064 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8014E108 0014B068 7C 08 02 A6 */ mflr r0 +/* 8014E10C 0014B06C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014E110 0014B070 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8014E114 0014B074 7C 9F 23 78 */ mr r31, r4 +/* 8014E118 0014B078 93 C1 00 08 */ stw r30, 8(r1) +/* 8014E11C 0014B07C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8014E120 0014B080 41 82 00 28 */ beq lbl_8014E148 +/* 8014E124 0014B084 3C A0 80 3E */ lis r5, lbl_803E2878@ha +/* 8014E128 0014B088 38 80 00 00 */ li r4, 0 +/* 8014E12C 0014B08C 38 05 28 78 */ addi r0, r5, lbl_803E2878@l +/* 8014E130 0014B090 90 1E 00 00 */ stw r0, 0(r30) +/* 8014E134 0014B094 4B F2 94 3D */ bl __dt__10CPatternedFv +/* 8014E138 0014B098 7F E0 07 35 */ extsh. r0, r31 +/* 8014E13C 0014B09C 40 81 00 0C */ ble lbl_8014E148 +/* 8014E140 0014B0A0 7F C3 F3 78 */ mr r3, r30 +/* 8014E144 0014B0A4 48 1C 77 ED */ bl Free__7CMemoryFPCv +lbl_8014E148: +/* 8014E148 0014B0A8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014E14C 0014B0AC 7F C3 F3 78 */ mr r3, r30 +/* 8014E150 0014B0B0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8014E154 0014B0B4 83 C1 00 08 */ lwz r30, 8(r1) +/* 8014E158 0014B0B8 7C 08 03 A6 */ mtlr r0 +/* 8014E15C 0014B0BC 38 21 00 10 */ addi r1, r1, 0x10 +/* 8014E160 0014B0C0 4E 80 00 20 */ blr + +.global Delay__8CMetareeFR13CStateManagerf +Delay__8CMetareeFR13CStateManagerf: +/* 8014E164 0014B0C4 C0 23 03 38 */ lfs f1, 0x338(r3) +/* 8014E168 0014B0C8 C0 03 05 68 */ lfs f0, 0x568(r3) +/* 8014E16C 0014B0CC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8014E170 0014B0D0 7C 00 00 26 */ mfcr r0 +/* 8014E174 0014B0D4 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 8014E178 0014B0D8 4E 80 00 20 */ blr + +.global Think__8CMetareeFfR13CStateManager +Think__8CMetareeFfR13CStateManager: +/* 8014E17C 0014B0DC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8014E180 0014B0E0 7C 08 02 A6 */ mflr r0 +/* 8014E184 0014B0E4 38 C0 00 01 */ li r6, 1 +/* 8014E188 0014B0E8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014E18C 0014B0EC 7C C0 33 78 */ mr r0, r6 +/* 8014E190 0014B0F0 80 A4 08 B8 */ lwz r5, 0x8b8(r4) +/* 8014E194 0014B0F4 80 A5 00 00 */ lwz r5, 0(r5) +/* 8014E198 0014B0F8 80 A5 00 14 */ lwz r5, 0x14(r5) +/* 8014E19C 0014B0FC 2C 05 00 03 */ cmpwi r5, 3 +/* 8014E1A0 0014B100 41 82 00 10 */ beq lbl_8014E1B0 +/* 8014E1A4 0014B104 2C 05 00 02 */ cmpwi r5, 2 +/* 8014E1A8 0014B108 41 82 00 08 */ beq lbl_8014E1B0 +/* 8014E1AC 0014B10C 38 00 00 00 */ li r0, 0 +lbl_8014E1B0: +/* 8014E1B0 0014B110 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8014E1B4 0014B114 40 82 00 14 */ bne lbl_8014E1C8 +/* 8014E1B8 0014B118 88 03 05 CA */ lbz r0, 0x5ca(r3) +/* 8014E1BC 0014B11C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8014E1C0 0014B120 40 82 00 08 */ bne lbl_8014E1C8 +/* 8014E1C4 0014B124 38 C0 00 00 */ li r6, 0 +lbl_8014E1C8: +/* 8014E1C8 0014B128 88 03 00 E7 */ lbz r0, 0xe7(r3) +/* 8014E1CC 0014B12C 50 C0 07 FE */ rlwimi r0, r6, 0, 0x1f, 0x1f +/* 8014E1D0 0014B130 98 03 00 E7 */ stb r0, 0xe7(r3) +/* 8014E1D4 0014B134 4B F2 B9 45 */ bl Think__10CPatternedFfR13CStateManager +/* 8014E1D8 0014B138 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014E1DC 0014B13C 7C 08 03 A6 */ mtlr r0 +/* 8014E1E0 0014B140 38 21 00 10 */ addi r1, r1, 0x10 +/* 8014E1E4 0014B144 4E 80 00 20 */ blr + +.global Explode__8CMetareeFR13CStateManager9EStateMsgf +Explode__8CMetareeFR13CStateManager9EStateMsgf: +/* 8014E1E8 0014B148 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8014E1EC 0014B14C 7C 08 02 A6 */ mflr r0 +/* 8014E1F0 0014B150 2C 05 00 00 */ cmpwi r5, 0 +/* 8014E1F4 0014B154 90 01 00 44 */ stw r0, 0x44(r1) +/* 8014E1F8 0014B158 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8014E1FC 0014B15C 7C 9F 23 78 */ mr r31, r4 +/* 8014E200 0014B160 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8014E204 0014B164 7C 7E 1B 78 */ mr r30, r3 +/* 8014E208 0014B168 41 82 00 08 */ beq lbl_8014E210 +/* 8014E20C 0014B16C 48 00 00 94 */ b lbl_8014E2A0 +lbl_8014E210: +/* 8014E210 0014B170 80 AD 8C 38 */ lwz r5, lbl_805A77F8@sda21(r13) +/* 8014E214 0014B174 38 60 00 00 */ li r3, 0 +/* 8014E218 0014B178 38 80 00 01 */ li r4, 1 +/* 8014E21C 0014B17C 48 23 BC D9 */ bl __shl2i +/* 8014E220 0014B180 39 40 00 00 */ li r10, 0 +/* 8014E224 0014B184 38 00 00 03 */ li r0, 3 +/* 8014E228 0014B188 90 81 00 24 */ stw r4, 0x24(r1) +/* 8014E22C 0014B18C 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8014E230 0014B190 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 8014E234 0014B194 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8014E238 0014B198 90 61 00 20 */ stw r3, 0x20(r1) +/* 8014E23C 0014B19C 38 81 00 1C */ addi r4, r1, 0x1c +/* 8014E240 0014B1A0 7F E3 FB 78 */ mr r3, r31 +/* 8014E244 0014B1A4 38 C1 00 0C */ addi r6, r1, 0xc +/* 8014E248 0014B1A8 91 41 00 2C */ stw r10, 0x2c(r1) +/* 8014E24C 0014B1AC 38 FE 05 AC */ addi r7, r30, 0x5ac +/* 8014E250 0014B1B0 39 01 00 20 */ addi r8, r1, 0x20 +/* 8014E254 0014B1B4 91 41 00 28 */ stw r10, 0x28(r1) +/* 8014E258 0014B1B8 90 01 00 30 */ stw r0, 0x30(r1) +/* 8014E25C 0014B1BC A0 1E 00 08 */ lhz r0, 8(r30) +/* 8014E260 0014B1C0 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8014E264 0014B1C4 81 5F 08 4C */ lwz r10, 0x84c(r31) +/* 8014E268 0014B1C8 B0 01 00 08 */ sth r0, 8(r1) +/* 8014E26C 0014B1CC A1 4A 00 08 */ lhz r10, 8(r10) +/* 8014E270 0014B1D0 B1 41 00 14 */ sth r10, 0x14(r1) +/* 8014E274 0014B1D4 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8014E278 0014B1D8 B1 41 00 10 */ sth r10, 0x10(r1) +/* 8014E27C 0014B1DC B0 01 00 18 */ sth r0, 0x18(r1) +/* 8014E280 0014B1E0 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8014E284 0014B1E4 4B EF BE 1D */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 8014E288 0014B1E8 7F C3 F3 78 */ mr r3, r30 +/* 8014E28C 0014B1EC 7F E4 FB 78 */ mr r4, r31 +/* 8014E290 0014B1F0 81 9E 00 00 */ lwz r12, 0(r30) +/* 8014E294 0014B1F4 81 8C 02 98 */ lwz r12, 0x298(r12) +/* 8014E298 0014B1F8 7D 89 03 A6 */ mtctr r12 +/* 8014E29C 0014B1FC 4E 80 04 21 */ bctrl +lbl_8014E2A0: +/* 8014E2A0 0014B200 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8014E2A4 0014B204 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8014E2A8 0014B208 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8014E2AC 0014B20C 7C 08 03 A6 */ mtlr r0 +/* 8014E2B0 0014B210 38 21 00 40 */ addi r1, r1, 0x40 +/* 8014E2B4 0014B214 4E 80 00 20 */ blr + +.global Flee__8CMetareeFR13CStateManager9EStateMsgf +Flee__8CMetareeFR13CStateManager9EStateMsgf: +/* 8014E2B8 0014B218 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 8014E2BC 0014B21C 7C 08 02 A6 */ mflr r0 +/* 8014E2C0 0014B220 90 01 00 84 */ stw r0, 0x84(r1) +/* 8014E2C4 0014B224 DB E1 00 70 */ stfd f31, 0x70(r1) +/* 8014E2C8 0014B228 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 8014E2CC 0014B22C 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 8014E2D0 0014B230 2C 05 00 01 */ cmpwi r5, 1 +/* 8014E2D4 0014B234 7C 7F 1B 78 */ mr r31, r3 +/* 8014E2D8 0014B238 41 82 00 F8 */ beq lbl_8014E3D0 +/* 8014E2DC 0014B23C 40 80 01 AC */ bge lbl_8014E488 +/* 8014E2E0 0014B240 2C 05 00 00 */ cmpwi r5, 0 +/* 8014E2E4 0014B244 40 80 00 0C */ bge lbl_8014E2F0 +/* 8014E2E8 0014B248 48 00 01 A0 */ b lbl_8014E488 +/* 8014E2EC 0014B24C 48 00 01 9C */ b lbl_8014E488 +lbl_8014E2F0: +/* 8014E2F0 0014B250 C0 9F 00 E8 */ lfs f4, 0xe8(r31) +/* 8014E2F4 0014B254 C0 5F 05 94 */ lfs f2, 0x594(r31) +/* 8014E2F8 0014B258 C0 3F 05 90 */ lfs f1, 0x590(r31) +/* 8014E2FC 0014B25C C0 02 9D 8C */ lfs f0, lbl_805ABAAC@sda21(r2) +/* 8014E300 0014B260 EC 44 00 B2 */ fmuls f2, f4, f2 +/* 8014E304 0014B264 C0 62 9D 88 */ lfs f3, lbl_805ABAA8@sda21(r2) +/* 8014E308 0014B268 EC 24 00 72 */ fmuls f1, f4, f1 +/* 8014E30C 0014B26C EC 04 00 32 */ fmuls f0, f4, f0 +/* 8014E310 0014B270 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 8014E314 0014B274 EC 23 00 72 */ fmuls f1, f3, f1 +/* 8014E318 0014B278 EC 03 00 32 */ fmuls f0, f3, f0 +/* 8014E31C 0014B27C D0 41 00 18 */ stfs f2, 0x18(r1) +/* 8014E320 0014B280 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 8014E324 0014B284 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8014E328 0014B288 4B EC D2 0D */ bl Identity__10CAxisAngleFv +/* 8014E32C 0014B28C 7C 65 1B 78 */ mr r5, r3 +/* 8014E330 0014B290 7F E3 FB 78 */ mr r3, r31 +/* 8014E334 0014B294 38 81 00 14 */ addi r4, r1, 0x14 +/* 8014E338 0014B298 4B FC E0 61 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +/* 8014E33C 0014B29C 7F E3 FB 78 */ mr r3, r31 +/* 8014E340 0014B2A0 C3 FF 00 E8 */ lfs f31, 0xe8(r31) +/* 8014E344 0014B2A4 81 9F 00 00 */ lwz r12, 0(r31) +/* 8014E348 0014B2A8 81 8C 02 BC */ lwz r12, 0x2bc(r12) +/* 8014E34C 0014B2AC 7D 89 03 A6 */ mtctr r12 +/* 8014E350 0014B2B0 4E 80 04 21 */ bctrl +/* 8014E354 0014B2B4 FC 20 08 50 */ fneg f1, f1 +/* 8014E358 0014B2B8 C0 02 9D 8C */ lfs f0, lbl_805ABAAC@sda21(r2) +/* 8014E35C 0014B2BC 38 61 00 38 */ addi r3, r1, 0x38 +/* 8014E360 0014B2C0 38 81 00 08 */ addi r4, r1, 8 +/* 8014E364 0014B2C4 D0 1F 01 50 */ stfs f0, 0x150(r31) +/* 8014E368 0014B2C8 EC 21 07 F2 */ fmuls f1, f1, f31 +/* 8014E36C 0014B2CC D0 1F 01 54 */ stfs f0, 0x154(r31) +/* 8014E370 0014B2D0 D0 3F 01 58 */ stfs f1, 0x158(r31) +/* 8014E374 0014B2D4 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8014E378 0014B2D8 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 8014E37C 0014B2DC C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8014E380 0014B2E0 D0 01 00 08 */ stfs f0, 8(r1) +/* 8014E384 0014B2E4 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 8014E388 0014B2E8 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 8014E38C 0014B2EC 48 1C 4D B5 */ bl Translate__12CTransform4fFRC9CVector3f +/* 8014E390 0014B2F0 38 7F 00 34 */ addi r3, r31, 0x34 +/* 8014E394 0014B2F4 38 81 00 38 */ addi r4, r1, 0x38 +/* 8014E398 0014B2F8 48 1C 47 A9 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8014E39C 0014B2FC 88 7F 00 E4 */ lbz r3, 0xe4(r31) +/* 8014E3A0 0014B300 38 80 00 01 */ li r4, 1 +/* 8014E3A4 0014B304 50 83 26 F6 */ rlwimi r3, r4, 4, 0x1b, 0x1b +/* 8014E3A8 0014B308 38 00 00 00 */ li r0, 0 +/* 8014E3AC 0014B30C 98 7F 00 E4 */ stb r3, 0xe4(r31) +/* 8014E3B0 0014B310 88 7F 00 E4 */ lbz r3, 0xe4(r31) +/* 8014E3B4 0014B314 50 83 1F 38 */ rlwimi r3, r4, 3, 0x1c, 0x1c +/* 8014E3B8 0014B318 98 7F 00 E4 */ stb r3, 0xe4(r31) +/* 8014E3BC 0014B31C 88 7F 00 E4 */ lbz r3, 0xe4(r31) +/* 8014E3C0 0014B320 50 83 17 7A */ rlwimi r3, r4, 2, 0x1d, 0x1d +/* 8014E3C4 0014B324 98 7F 00 E4 */ stb r3, 0xe4(r31) +/* 8014E3C8 0014B328 90 1F 05 A8 */ stw r0, 0x5a8(r31) +/* 8014E3CC 0014B32C 48 00 00 BC */ b lbl_8014E488 +lbl_8014E3D0: +/* 8014E3D0 0014B330 80 1F 05 A8 */ lwz r0, 0x5a8(r31) +/* 8014E3D4 0014B334 2C 00 00 00 */ cmpwi r0, 0 +/* 8014E3D8 0014B338 41 82 00 08 */ beq lbl_8014E3E0 +/* 8014E3DC 0014B33C 48 00 00 AC */ b lbl_8014E488 +lbl_8014E3E0: +/* 8014E3E0 0014B340 80 9F 04 50 */ lwz r4, 0x450(r31) +/* 8014E3E4 0014B344 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 8014E3E8 0014B348 2C 00 00 02 */ cmpwi r0, 2 +/* 8014E3EC 0014B34C 40 82 00 10 */ bne lbl_8014E3FC +/* 8014E3F0 0014B350 38 00 00 01 */ li r0, 1 +/* 8014E3F4 0014B354 90 1F 05 A8 */ stw r0, 0x5a8(r31) +/* 8014E3F8 0014B358 48 00 00 90 */ b lbl_8014E488 +lbl_8014E3FC: +/* 8014E3FC 0014B35C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8014E400 0014B360 C0 22 9D 8C */ lfs f1, lbl_805ABAAC@sda21(r2) +/* 8014E404 0014B364 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8014E408 0014B368 C0 02 9D 90 */ lfs f0, lbl_805ABAB0@sda21(r2) +/* 8014E40C 0014B36C 3C 60 80 3E */ lis r3, lbl_803DAA50@ha +/* 8014E410 0014B370 90 01 00 20 */ stw r0, 0x20(r1) +/* 8014E414 0014B374 38 A3 AA 50 */ addi r5, r3, lbl_803DAA50@l +/* 8014E418 0014B378 38 60 00 03 */ li r3, 3 +/* 8014E41C 0014B37C 38 00 00 00 */ li r0, 0 +/* 8014E420 0014B380 3B E4 00 04 */ addi r31, r4, 4 +/* 8014E424 0014B384 90 61 00 24 */ stw r3, 0x24(r1) +/* 8014E428 0014B388 7F E3 FB 78 */ mr r3, r31 +/* 8014E42C 0014B38C 38 80 00 03 */ li r4, 3 +/* 8014E430 0014B390 90 A1 00 20 */ stw r5, 0x20(r1) +/* 8014E434 0014B394 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 8014E438 0014B398 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8014E43C 0014B39C D0 21 00 30 */ stfs f1, 0x30(r1) +/* 8014E440 0014B3A0 90 01 00 34 */ stw r0, 0x34(r1) +/* 8014E444 0014B3A4 4B FE 2F F5 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8014E448 0014B3A8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8014E44C 0014B3AC 3C 60 80 3E */ lis r3, lbl_803DAA50@ha +/* 8014E450 0014B3B0 38 83 AA 50 */ addi r4, r3, lbl_803DAA50@l +/* 8014E454 0014B3B4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8014E458 0014B3B8 90 1F 00 E0 */ stw r0, 0xe0(r31) +/* 8014E45C 0014B3BC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8014E460 0014B3C0 80 A1 00 28 */ lwz r5, 0x28(r1) +/* 8014E464 0014B3C4 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 8014E468 0014B3C8 90 BF 00 E4 */ stw r5, 0xe4(r31) +/* 8014E46C 0014B3CC 80 A1 00 30 */ lwz r5, 0x30(r1) +/* 8014E470 0014B3D0 90 7F 00 E8 */ stw r3, 0xe8(r31) +/* 8014E474 0014B3D4 80 61 00 34 */ lwz r3, 0x34(r1) +/* 8014E478 0014B3D8 90 BF 00 EC */ stw r5, 0xec(r31) +/* 8014E47C 0014B3DC 90 81 00 20 */ stw r4, 0x20(r1) +/* 8014E480 0014B3E0 90 7F 00 F0 */ stw r3, 0xf0(r31) +/* 8014E484 0014B3E4 90 01 00 20 */ stw r0, 0x20(r1) +lbl_8014E488: +/* 8014E488 0014B3E8 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 8014E48C 0014B3EC 80 01 00 84 */ lwz r0, 0x84(r1) +/* 8014E490 0014B3F0 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 8014E494 0014B3F4 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 8014E498 0014B3F8 7C 08 03 A6 */ mtlr r0 +/* 8014E49C 0014B3FC 38 21 00 80 */ addi r1, r1, 0x80 +/* 8014E4A0 0014B400 4E 80 00 20 */ blr + +.global Dead__8CMetareeFR13CStateManager9EStateMsgf +Dead__8CMetareeFR13CStateManager9EStateMsgf: +/* 8014E4A4 0014B404 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8014E4A8 0014B408 7C 08 02 A6 */ mflr r0 +/* 8014E4AC 0014B40C 2C 05 00 00 */ cmpwi r5, 0 +/* 8014E4B0 0014B410 90 01 00 44 */ stw r0, 0x44(r1) +/* 8014E4B4 0014B414 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8014E4B8 0014B418 7C 9F 23 78 */ mr r31, r4 +/* 8014E4BC 0014B41C 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8014E4C0 0014B420 7C 7E 1B 78 */ mr r30, r3 +/* 8014E4C4 0014B424 41 82 00 08 */ beq lbl_8014E4CC +/* 8014E4C8 0014B428 48 00 00 7C */ b lbl_8014E544 +lbl_8014E4CC: +/* 8014E4CC 0014B42C 80 AD 8C 40 */ lwz r5, lbl_805A7800@sda21(r13) +/* 8014E4D0 0014B430 38 60 00 00 */ li r3, 0 +/* 8014E4D4 0014B434 38 80 00 01 */ li r4, 1 +/* 8014E4D8 0014B438 48 23 BA 1D */ bl __shl2i +/* 8014E4DC 0014B43C 39 20 00 00 */ li r9, 0 +/* 8014E4E0 0014B440 38 00 00 03 */ li r0, 3 +/* 8014E4E4 0014B444 90 81 00 24 */ stw r4, 0x24(r1) +/* 8014E4E8 0014B448 7F C5 F3 78 */ mr r5, r30 +/* 8014E4EC 0014B44C 38 81 00 0C */ addi r4, r1, 0xc +/* 8014E4F0 0014B450 38 C1 00 10 */ addi r6, r1, 0x10 +/* 8014E4F4 0014B454 90 61 00 20 */ stw r3, 0x20(r1) +/* 8014E4F8 0014B458 7F E3 FB 78 */ mr r3, r31 +/* 8014E4FC 0014B45C 38 FE 05 AC */ addi r7, r30, 0x5ac +/* 8014E500 0014B460 39 01 00 20 */ addi r8, r1, 0x20 +/* 8014E504 0014B464 91 21 00 2C */ stw r9, 0x2c(r1) +/* 8014E508 0014B468 91 21 00 28 */ stw r9, 0x28(r1) +/* 8014E50C 0014B46C 90 01 00 30 */ stw r0, 0x30(r1) +/* 8014E510 0014B470 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 8014E514 0014B474 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 8014E518 0014B478 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8014E51C 0014B47C D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8014E520 0014B480 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 8014E524 0014B484 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 8014E528 0014B488 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8014E52C 0014B48C B0 01 00 08 */ sth r0, 8(r1) +/* 8014E530 0014B490 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8014E534 0014B494 4B EF A7 79 */ bl ApplyDamageToWorld__13CStateManagerF9TUniqueIdRC6CActorRC9CVector3fRC11CDamageInfoRC15CMaterialFilter +/* 8014E538 0014B498 7F C3 F3 78 */ mr r3, r30 +/* 8014E53C 0014B49C 7F E4 FB 78 */ mr r4, r31 +/* 8014E540 0014B4A0 4B F2 A4 C1 */ bl DeathDelete__10CPatternedFR13CStateManager +lbl_8014E544: +/* 8014E544 0014B4A4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8014E548 0014B4A8 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8014E54C 0014B4AC 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8014E550 0014B4B0 7C 08 03 A6 */ mtlr r0 +/* 8014E554 0014B4B4 38 21 00 40 */ addi r1, r1, 0x40 +/* 8014E558 0014B4B8 4E 80 00 20 */ blr + +.global Attack__8CMetareeFR13CStateManager9EStateMsgf +Attack__8CMetareeFR13CStateManager9EStateMsgf: +/* 8014E55C 0014B4BC 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 8014E560 0014B4C0 7C 08 02 A6 */ mflr r0 +/* 8014E564 0014B4C4 90 01 00 84 */ stw r0, 0x84(r1) +/* 8014E568 0014B4C8 DB E1 00 70 */ stfd f31, 0x70(r1) +/* 8014E56C 0014B4CC F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 8014E570 0014B4D0 DB C1 00 60 */ stfd f30, 0x60(r1) +/* 8014E574 0014B4D4 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 +/* 8014E578 0014B4D8 DB A1 00 50 */ stfd f29, 0x50(r1) +/* 8014E57C 0014B4DC F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 +/* 8014E580 0014B4E0 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 8014E584 0014B4E4 2C 05 00 01 */ cmpwi r5, 1 +/* 8014E588 0014B4E8 7C 7F 1B 78 */ mr r31, r3 +/* 8014E58C 0014B4EC 41 82 00 FC */ beq lbl_8014E688 +/* 8014E590 0014B4F0 40 80 01 34 */ bge lbl_8014E6C4 +/* 8014E594 0014B4F4 2C 05 00 00 */ cmpwi r5, 0 +/* 8014E598 0014B4F8 40 80 00 0C */ bge lbl_8014E5A4 +/* 8014E59C 0014B4FC 48 00 01 28 */ b lbl_8014E6C4 +/* 8014E5A0 0014B500 48 00 01 24 */ b lbl_8014E6C4 +lbl_8014E5A4: +/* 8014E5A4 0014B504 38 00 00 00 */ li r0, 0 +/* 8014E5A8 0014B508 38 61 00 30 */ addi r3, r1, 0x30 +/* 8014E5AC 0014B50C 90 1F 05 A8 */ stw r0, 0x5a8(r31) +/* 8014E5B0 0014B510 38 81 00 24 */ addi r4, r1, 0x24 +/* 8014E5B4 0014B514 C0 3F 05 88 */ lfs f1, 0x588(r31) +/* 8014E5B8 0014B518 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 8014E5BC 0014B51C C0 7F 05 8C */ lfs f3, 0x58c(r31) +/* 8014E5C0 0014B520 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8014E5C4 0014B524 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8014E5C8 0014B528 C0 3F 05 84 */ lfs f1, 0x584(r31) +/* 8014E5CC 0014B52C C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8014E5D0 0014B530 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8014E5D4 0014B534 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8014E5D8 0014B538 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 8014E5DC 0014B53C D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 8014E5E0 0014B540 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 8014E5E4 0014B544 48 1C 62 6D */ bl AsNormalized__9CVector3fCFv +/* 8014E5E8 0014B548 C3 A1 00 30 */ lfs f29, 0x30(r1) +/* 8014E5EC 0014B54C 7F E3 FB 78 */ mr r3, r31 +/* 8014E5F0 0014B550 C0 1F 05 80 */ lfs f0, 0x580(r31) +/* 8014E5F4 0014B554 38 81 00 18 */ addi r4, r1, 0x18 +/* 8014E5F8 0014B558 C3 E1 00 34 */ lfs f31, 0x34(r1) +/* 8014E5FC 0014B55C C3 C1 00 38 */ lfs f30, 0x38(r1) +/* 8014E600 0014B560 EC 40 07 72 */ fmuls f2, f0, f29 +/* 8014E604 0014B564 EC 20 07 F2 */ fmuls f1, f0, f31 +/* 8014E608 0014B568 EC 00 07 B2 */ fmuls f0, f0, f30 +/* 8014E60C 0014B56C D0 41 00 18 */ stfs f2, 0x18(r1) +/* 8014E610 0014B570 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 8014E614 0014B574 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 8014E618 0014B578 4B FC C6 89 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 8014E61C 0014B57C C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8014E620 0014B580 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8014E624 0014B584 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 8014E628 0014B588 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 8014E62C 0014B58C C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8014E630 0014B590 38 61 00 08 */ addi r3, r1, 8 +/* 8014E634 0014B594 A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 8014E638 0014B598 38 A1 00 0C */ addi r5, r1, 0xc +/* 8014E63C 0014B59C D0 01 00 0C */ stfs f0, 0xc(r1) +/* 8014E640 0014B5A0 38 E0 00 01 */ li r7, 1 +/* 8014E644 0014B5A4 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8014E648 0014B5A8 39 00 00 00 */ li r8, 0 +/* 8014E64C 0014B5AC D0 21 00 10 */ stfs f1, 0x10(r1) +/* 8014E650 0014B5B0 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 8014E654 0014B5B4 A0 9F 05 C8 */ lhz r4, 0x5c8(r31) +/* 8014E658 0014B5B8 48 19 BC 59 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 8014E65C 0014B5BC 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8014E660 0014B5C0 38 80 00 03 */ li r4, 3 +/* 8014E664 0014B5C4 4B FE C3 75 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8014E668 0014B5C8 C0 1F 05 80 */ lfs f0, 0x580(r31) +/* 8014E66C 0014B5CC EC 40 07 72 */ fmuls f2, f0, f29 +/* 8014E670 0014B5D0 EC 20 07 F2 */ fmuls f1, f0, f31 +/* 8014E674 0014B5D4 EC 00 07 B2 */ fmuls f0, f0, f30 +/* 8014E678 0014B5D8 D0 5F 05 9C */ stfs f2, 0x59c(r31) +/* 8014E67C 0014B5DC D0 3F 05 A0 */ stfs f1, 0x5a0(r31) +/* 8014E680 0014B5E0 D0 1F 05 A4 */ stfs f0, 0x5a4(r31) +/* 8014E684 0014B5E4 48 00 00 40 */ b lbl_8014E6C4 +lbl_8014E688: +/* 8014E688 0014B5E8 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8014E68C 0014B5EC 4B FE BA 41 */ bl GetPercentageFrozen__15CBodyControllerCFv +/* 8014E690 0014B5F0 C0 02 9D 8C */ lfs f0, lbl_805ABAAC@sda21(r2) +/* 8014E694 0014B5F4 FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 8014E698 0014B5F8 40 82 00 14 */ bne lbl_8014E6AC +/* 8014E69C 0014B5FC 7F E3 FB 78 */ mr r3, r31 +/* 8014E6A0 0014B600 38 9F 05 9C */ addi r4, r31, 0x59c +/* 8014E6A4 0014B604 4B FC C5 FD */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 8014E6A8 0014B608 48 00 00 1C */ b lbl_8014E6C4 +lbl_8014E6AC: +/* 8014E6AC 0014B60C 7F E3 FB 78 */ mr r3, r31 +/* 8014E6B0 0014B610 4B FC CC C9 */ bl Stop__13CPhysicsActorFv +/* 8014E6B4 0014B614 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8014E6B8 0014B618 7F E3 FB 78 */ mr r3, r31 +/* 8014E6BC 0014B61C 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 8014E6C0 0014B620 4B FC C5 E1 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +lbl_8014E6C4: +/* 8014E6C4 0014B624 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 8014E6C8 0014B628 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 8014E6CC 0014B62C E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 +/* 8014E6D0 0014B630 CB C1 00 60 */ lfd f30, 0x60(r1) +/* 8014E6D4 0014B634 E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0 +/* 8014E6D8 0014B638 CB A1 00 50 */ lfd f29, 0x50(r1) +/* 8014E6DC 0014B63C 80 01 00 84 */ lwz r0, 0x84(r1) +/* 8014E6E0 0014B640 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 8014E6E4 0014B644 7C 08 03 A6 */ mtlr r0 +/* 8014E6E8 0014B648 38 21 00 80 */ addi r1, r1, 0x80 +/* 8014E6EC 0014B64C 4E 80 00 20 */ blr + +.global Halt__8CMetareeFR13CStateManager9EStateMsgf +Halt__8CMetareeFR13CStateManager9EStateMsgf: +/* 8014E6F0 0014B650 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8014E6F4 0014B654 7C 08 02 A6 */ mflr r0 +/* 8014E6F8 0014B658 2C 05 00 00 */ cmpwi r5, 0 +/* 8014E6FC 0014B65C 90 01 00 54 */ stw r0, 0x54(r1) +/* 8014E700 0014B660 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 8014E704 0014B664 7C 9F 23 78 */ mr r31, r4 +/* 8014E708 0014B668 93 C1 00 48 */ stw r30, 0x48(r1) +/* 8014E70C 0014B66C 7C 7E 1B 78 */ mr r30, r3 +/* 8014E710 0014B670 41 82 00 0C */ beq lbl_8014E71C +/* 8014E714 0014B674 41 80 00 E4 */ blt lbl_8014E7F8 +/* 8014E718 0014B678 48 00 00 E0 */ b lbl_8014E7F8 +lbl_8014E71C: +/* 8014E71C 0014B67C 4B FC CC 5D */ bl Stop__13CPhysicsActorFv +/* 8014E720 0014B680 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8014E724 0014B684 7F C3 F3 78 */ mr r3, r30 +/* 8014E728 0014B688 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 8014E72C 0014B68C 4B FC C5 75 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 8014E730 0014B690 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8014E734 0014B694 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 8014E738 0014B698 38 80 00 02 */ li r4, 2 +/* 8014E73C 0014B69C D0 1E 01 50 */ stfs f0, 0x150(r30) +/* 8014E740 0014B6A0 C0 03 00 04 */ lfs f0, 4(r3) +/* 8014E744 0014B6A4 D0 1E 01 54 */ stfs f0, 0x154(r30) +/* 8014E748 0014B6A8 C0 03 00 08 */ lfs f0, 8(r3) +/* 8014E74C 0014B6AC D0 1E 01 58 */ stfs f0, 0x158(r30) +/* 8014E750 0014B6B0 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8014E754 0014B6B4 4B FE C2 85 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8014E758 0014B6B8 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 8014E75C 0014B6BC 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 8014E760 0014B6C0 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 8014E764 0014B6C4 C0 1E 05 74 */ lfs f0, 0x574(r30) +/* 8014E768 0014B6C8 C0 24 00 40 */ lfs f1, 0x40(r4) +/* 8014E76C 0014B6CC 38 61 00 14 */ addi r3, r1, 0x14 +/* 8014E770 0014B6D0 C0 84 00 50 */ lfs f4, 0x50(r4) +/* 8014E774 0014B6D4 38 BE 05 84 */ addi r5, r30, 0x584 +/* 8014E778 0014B6D8 C0 7E 05 78 */ lfs f3, 0x578(r30) +/* 8014E77C 0014B6DC EC 01 00 2A */ fadds f0, f1, f0 +/* 8014E780 0014B6E0 C0 44 00 60 */ lfs f2, 0x60(r4) +/* 8014E784 0014B6E4 38 81 00 08 */ addi r4, r1, 8 +/* 8014E788 0014B6E8 C0 3E 05 7C */ lfs f1, 0x57c(r30) +/* 8014E78C 0014B6EC EC 64 18 2A */ fadds f3, f4, f3 +/* 8014E790 0014B6F0 D0 1E 05 84 */ stfs f0, 0x584(r30) +/* 8014E794 0014B6F4 EC 02 08 2A */ fadds f0, f2, f1 +/* 8014E798 0014B6F8 D0 7E 05 88 */ stfs f3, 0x588(r30) +/* 8014E79C 0014B6FC D0 1E 05 8C */ stfs f0, 0x58c(r30) +/* 8014E7A0 0014B700 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 8014E7A4 0014B704 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 8014E7A8 0014B708 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8014E7AC 0014B70C D0 01 00 08 */ stfs f0, 8(r1) +/* 8014E7B0 0014B710 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 8014E7B4 0014B714 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 8014E7B8 0014B718 48 1C 53 59 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 8014E7BC 0014B71C 38 7E 00 34 */ addi r3, r30, 0x34 +/* 8014E7C0 0014B720 38 81 00 14 */ addi r4, r1, 0x14 +/* 8014E7C4 0014B724 48 1C 43 7D */ bl __as__12CTransform4fFRC12CTransform4f +/* 8014E7C8 0014B728 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 8014E7CC 0014B72C 38 60 00 01 */ li r3, 1 +/* 8014E7D0 0014B730 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8014E7D4 0014B734 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 8014E7D8 0014B738 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 8014E7DC 0014B73C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 8014E7E0 0014B740 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 8014E7E4 0014B744 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 8014E7E8 0014B748 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 8014E7EC 0014B74C 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 8014E7F0 0014B750 C0 1E 05 6C */ lfs f0, 0x56c(r30) +/* 8014E7F4 0014B754 D0 1E 03 40 */ stfs f0, 0x340(r30) +lbl_8014E7F8: +/* 8014E7F8 0014B758 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8014E7FC 0014B75C 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 8014E800 0014B760 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 8014E804 0014B764 7C 08 03 A6 */ mtlr r0 +/* 8014E808 0014B768 38 21 00 50 */ addi r1, r1, 0x50 +/* 8014E80C 0014B76C 4E 80 00 20 */ blr + +.global Active__8CMetareeFR13CStateManager9EStateMsgf +Active__8CMetareeFR13CStateManager9EStateMsgf: +/* 8014E810 0014B770 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8014E814 0014B774 7C 08 02 A6 */ mflr r0 +/* 8014E818 0014B778 90 01 00 74 */ stw r0, 0x74(r1) +/* 8014E81C 0014B77C DB E1 00 60 */ stfd f31, 0x60(r1) +/* 8014E820 0014B780 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 8014E824 0014B784 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8014E828 0014B788 93 C1 00 58 */ stw r30, 0x58(r1) +/* 8014E82C 0014B78C 2C 05 00 01 */ cmpwi r5, 1 +/* 8014E830 0014B790 7C 7F 1B 78 */ mr r31, r3 +/* 8014E834 0014B794 41 82 01 54 */ beq lbl_8014E988 +/* 8014E838 0014B798 40 80 00 10 */ bge lbl_8014E848 +/* 8014E83C 0014B79C 2C 05 00 00 */ cmpwi r5, 0 +/* 8014E840 0014B7A0 40 80 00 14 */ bge lbl_8014E854 +/* 8014E844 0014B7A4 48 00 01 CC */ b lbl_8014EA10 +lbl_8014E848: +/* 8014E848 0014B7A8 2C 05 00 03 */ cmpwi r5, 3 +/* 8014E84C 0014B7AC 40 80 01 C4 */ bge lbl_8014EA10 +/* 8014E850 0014B7B0 48 00 01 A4 */ b lbl_8014E9F4 +lbl_8014E854: +/* 8014E854 0014B7B4 39 20 00 00 */ li r9, 0 +/* 8014E858 0014B7B8 88 1F 04 00 */ lbz r0, 0x400(r31) +/* 8014E85C 0014B7BC 51 20 3E 30 */ rlwimi r0, r9, 7, 0x18, 0x18 +/* 8014E860 0014B7C0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8014E864 0014B7C4 98 1F 04 00 */ stb r0, 0x400(r31) +/* 8014E868 0014B7C8 39 03 AA 68 */ addi r8, r3, lbl_803DAA68@l +/* 8014E86C 0014B7CC 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 8014E870 0014B7D0 38 E0 00 0E */ li r7, 0xe +/* 8014E874 0014B7D4 C0 62 9D 8C */ lfs f3, lbl_805ABAAC@sda21(r2) +/* 8014E878 0014B7D8 38 A0 FF FF */ li r5, -1 +/* 8014E87C 0014B7DC C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8014E880 0014B7E0 38 00 00 01 */ li r0, 1 +/* 8014E884 0014B7E4 C0 9F 00 50 */ lfs f4, 0x50(r31) +/* 8014E888 0014B7E8 38 C3 A9 F0 */ addi r6, r3, lbl_803DA9F0@l +/* 8014E88C 0014B7EC EC 00 18 28 */ fsubs f0, f0, f3 +/* 8014E890 0014B7F0 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8014E894 0014B7F4 C0 3F 05 70 */ lfs f1, 0x570(r31) +/* 8014E898 0014B7F8 EC 64 18 28 */ fsubs f3, f4, f3 +/* 8014E89C 0014B7FC 80 61 00 48 */ lwz r3, 0x48(r1) +/* 8014E8A0 0014B800 50 03 F8 00 */ rlwimi r3, r0, 0x1f, 0, 0 +/* 8014E8A4 0014B804 D0 1F 05 84 */ stfs f0, 0x584(r31) +/* 8014E8A8 0014B808 EC 02 08 28 */ fsubs f0, f2, f1 +/* 8014E8AC 0014B80C 7C 60 1B 78 */ mr r0, r3 +/* 8014E8B0 0014B810 38 80 00 0E */ li r4, 0xe +/* 8014E8B4 0014B814 D0 7F 05 88 */ stfs f3, 0x588(r31) +/* 8014E8B8 0014B818 51 20 F0 42 */ rlwimi r0, r9, 0x1e, 1, 1 +/* 8014E8BC 0014B81C D0 1F 05 8C */ stfs f0, 0x58c(r31) +/* 8014E8C0 0014B820 91 01 00 2C */ stw r8, 0x2c(r1) +/* 8014E8C4 0014B824 C0 5F 05 84 */ lfs f2, 0x584(r31) +/* 8014E8C8 0014B828 90 61 00 48 */ stw r3, 0x48(r1) +/* 8014E8CC 0014B82C C0 3F 05 88 */ lfs f1, 0x588(r31) +/* 8014E8D0 0014B830 C0 1F 05 8C */ lfs f0, 0x58c(r31) +/* 8014E8D4 0014B834 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8014E8D8 0014B838 90 E1 00 30 */ stw r7, 0x30(r1) +/* 8014E8DC 0014B83C 3B C3 00 04 */ addi r30, r3, 4 +/* 8014E8E0 0014B840 90 C1 00 2C */ stw r6, 0x2c(r1) +/* 8014E8E4 0014B844 7F C3 F3 78 */ mr r3, r30 +/* 8014E8E8 0014B848 91 21 00 34 */ stw r9, 0x34(r1) +/* 8014E8EC 0014B84C D0 41 00 38 */ stfs f2, 0x38(r1) +/* 8014E8F0 0014B850 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 8014E8F4 0014B854 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 8014E8F8 0014B858 90 A1 00 44 */ stw r5, 0x44(r1) +/* 8014E8FC 0014B85C 90 01 00 48 */ stw r0, 0x48(r1) +/* 8014E900 0014B860 4B FE 2B 39 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8014E904 0014B864 80 01 00 30 */ lwz r0, 0x30(r1) +/* 8014E908 0014B868 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 8014E90C 0014B86C 38 A3 A9 F0 */ addi r5, r3, lbl_803DA9F0@l +/* 8014E910 0014B870 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 8014E914 0014B874 90 1E 01 90 */ stw r0, 0x190(r30) +/* 8014E918 0014B878 7F E3 FB 78 */ mr r3, r31 +/* 8014E91C 0014B87C 80 C1 00 34 */ lwz r6, 0x34(r1) +/* 8014E920 0014B880 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 8014E924 0014B884 80 81 00 38 */ lwz r4, 0x38(r1) +/* 8014E928 0014B888 90 DE 01 94 */ stw r6, 0x194(r30) +/* 8014E92C 0014B88C 80 C1 00 3C */ lwz r6, 0x3c(r1) +/* 8014E930 0014B890 90 9E 01 98 */ stw r4, 0x198(r30) +/* 8014E934 0014B894 80 81 00 40 */ lwz r4, 0x40(r1) +/* 8014E938 0014B898 90 DE 01 9C */ stw r6, 0x19c(r30) +/* 8014E93C 0014B89C 80 C1 00 44 */ lwz r6, 0x44(r1) +/* 8014E940 0014B8A0 90 9E 01 A0 */ stw r4, 0x1a0(r30) +/* 8014E944 0014B8A4 80 81 00 48 */ lwz r4, 0x48(r1) +/* 8014E948 0014B8A8 90 DE 01 A4 */ stw r6, 0x1a4(r30) +/* 8014E94C 0014B8AC 90 9E 01 A8 */ stw r4, 0x1a8(r30) +/* 8014E950 0014B8B0 81 9F 00 00 */ lwz r12, 0(r31) +/* 8014E954 0014B8B4 90 A1 00 2C */ stw r5, 0x2c(r1) +/* 8014E958 0014B8B8 81 8C 02 BC */ lwz r12, 0x2bc(r12) +/* 8014E95C 0014B8BC 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8014E960 0014B8C0 C3 FF 00 E8 */ lfs f31, 0xe8(r31) +/* 8014E964 0014B8C4 7D 89 03 A6 */ mtctr r12 +/* 8014E968 0014B8C8 4E 80 04 21 */ bctrl +/* 8014E96C 0014B8CC FC 20 08 50 */ fneg f1, f1 +/* 8014E970 0014B8D0 C0 02 9D 8C */ lfs f0, lbl_805ABAAC@sda21(r2) +/* 8014E974 0014B8D4 D0 1F 01 50 */ stfs f0, 0x150(r31) +/* 8014E978 0014B8D8 EC 21 07 F2 */ fmuls f1, f1, f31 +/* 8014E97C 0014B8DC D0 1F 01 54 */ stfs f0, 0x154(r31) +/* 8014E980 0014B8E0 D0 3F 01 58 */ stfs f1, 0x158(r31) +/* 8014E984 0014B8E4 48 00 00 8C */ b lbl_8014EA10 +lbl_8014E988: +/* 8014E988 0014B8E8 80 A4 08 4C */ lwz r5, 0x84c(r4) +/* 8014E98C 0014B8EC 38 61 00 20 */ addi r3, r1, 0x20 +/* 8014E990 0014B8F0 C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 8014E994 0014B8F4 38 81 00 14 */ addi r4, r1, 0x14 +/* 8014E998 0014B8F8 C0 A5 00 60 */ lfs f5, 0x60(r5) +/* 8014E99C 0014B8FC C0 85 00 50 */ lfs f4, 0x50(r5) +/* 8014E9A0 0014B900 C0 5F 00 50 */ lfs f2, 0x50(r31) +/* 8014E9A4 0014B904 EC 25 00 28 */ fsubs f1, f5, f0 +/* 8014E9A8 0014B908 C0 05 00 40 */ lfs f0, 0x40(r5) +/* 8014E9AC 0014B90C C0 7F 00 40 */ lfs f3, 0x40(r31) +/* 8014E9B0 0014B910 EC 44 10 28 */ fsubs f2, f4, f2 +/* 8014E9B4 0014B914 D0 01 00 08 */ stfs f0, 8(r1) +/* 8014E9B8 0014B918 EC 00 18 28 */ fsubs f0, f0, f3 +/* 8014E9BC 0014B91C D0 81 00 0C */ stfs f4, 0xc(r1) +/* 8014E9C0 0014B920 D0 A1 00 10 */ stfs f5, 0x10(r1) +/* 8014E9C4 0014B924 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8014E9C8 0014B928 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 8014E9CC 0014B92C D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 8014E9D0 0014B930 48 1C 5E 81 */ bl AsNormalized__9CVector3fCFv +/* 8014E9D4 0014B934 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8014E9D8 0014B938 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 8014E9DC 0014B93C D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 8014E9E0 0014B940 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 8014E9E4 0014B944 D0 03 00 20 */ stfs f0, 0x20(r3) +/* 8014E9E8 0014B948 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 8014E9EC 0014B94C D0 03 00 24 */ stfs f0, 0x24(r3) +/* 8014E9F0 0014B950 48 00 00 20 */ b lbl_8014EA10 +lbl_8014E9F4: +/* 8014E9F4 0014B954 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8014E9F8 0014B958 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 8014E9FC 0014B95C D0 1F 01 50 */ stfs f0, 0x150(r31) +/* 8014EA00 0014B960 C0 03 00 04 */ lfs f0, 4(r3) +/* 8014EA04 0014B964 D0 1F 01 54 */ stfs f0, 0x154(r31) +/* 8014EA08 0014B968 C0 03 00 08 */ lfs f0, 8(r3) +/* 8014EA0C 0014B96C D0 1F 01 58 */ stfs f0, 0x158(r31) +lbl_8014EA10: +/* 8014EA10 0014B970 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 8014EA14 0014B974 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8014EA18 0014B978 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 8014EA1C 0014B97C 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8014EA20 0014B980 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 8014EA24 0014B984 7C 08 03 A6 */ mtlr r0 +/* 8014EA28 0014B988 38 21 00 70 */ addi r1, r1, 0x70 +/* 8014EA2C 0014B98C 4E 80 00 20 */ blr + +.global InActive__8CMetareeFR13CStateManager9EStateMsgf +InActive__8CMetareeFR13CStateManager9EStateMsgf: +/* 8014EA30 0014B990 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8014EA34 0014B994 7C 08 02 A6 */ mflr r0 +/* 8014EA38 0014B998 2C 05 00 01 */ cmpwi r5, 1 +/* 8014EA3C 0014B99C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014EA40 0014B9A0 41 82 00 5C */ beq lbl_8014EA9C +/* 8014EA44 0014B9A4 40 80 00 10 */ bge lbl_8014EA54 +/* 8014EA48 0014B9A8 2C 05 00 00 */ cmpwi r5, 0 +/* 8014EA4C 0014B9AC 40 80 00 14 */ bge lbl_8014EA60 +/* 8014EA50 0014B9B0 48 00 00 4C */ b lbl_8014EA9C +lbl_8014EA54: +/* 8014EA54 0014B9B4 2C 05 00 03 */ cmpwi r5, 3 +/* 8014EA58 0014B9B8 40 80 00 44 */ bge lbl_8014EA9C +/* 8014EA5C 0014B9BC 48 00 00 30 */ b lbl_8014EA8C +lbl_8014EA60: +/* 8014EA60 0014B9C0 88 03 05 CA */ lbz r0, 0x5ca(r3) +/* 8014EA64 0014B9C4 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8014EA68 0014B9C8 40 82 00 14 */ bne lbl_8014EA7C +/* 8014EA6C 0014B9CC 80 63 04 50 */ lwz r3, 0x450(r3) +/* 8014EA70 0014B9D0 38 80 00 01 */ li r4, 1 +/* 8014EA74 0014B9D4 4B FE BF 65 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8014EA78 0014B9D8 48 00 00 24 */ b lbl_8014EA9C +lbl_8014EA7C: +/* 8014EA7C 0014B9DC 80 63 04 50 */ lwz r3, 0x450(r3) +/* 8014EA80 0014B9E0 38 80 00 00 */ li r4, 0 +/* 8014EA84 0014B9E4 4B FE BF 55 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8014EA88 0014B9E8 48 00 00 14 */ b lbl_8014EA9C +lbl_8014EA8C: +/* 8014EA8C 0014B9EC 88 03 05 CA */ lbz r0, 0x5ca(r3) +/* 8014EA90 0014B9F0 38 80 00 01 */ li r4, 1 +/* 8014EA94 0014B9F4 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 8014EA98 0014B9F8 98 03 05 CA */ stb r0, 0x5ca(r3) +lbl_8014EA9C: +/* 8014EA9C 0014B9FC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014EAA0 0014BA00 7C 08 03 A6 */ mtlr r0 +/* 8014EAA4 0014BA04 38 21 00 10 */ addi r1, r1, 0x10 +/* 8014EAA8 0014BA08 4E 80 00 20 */ blr + +.global InRange__8CMetareeFR13CStateManagerf +InRange__8CMetareeFR13CStateManagerf: +/* 8014EAAC 0014BA0C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8014EAB0 0014BA10 7C 08 02 A6 */ mflr r0 +/* 8014EAB4 0014BA14 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014EAB8 0014BA18 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8014EABC 0014BA1C 3B E0 00 00 */ li r31, 0 +/* 8014EAC0 0014BA20 88 03 05 CA */ lbz r0, 0x5ca(r3) +/* 8014EAC4 0014BA24 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8014EAC8 0014BA28 40 82 00 10 */ bne lbl_8014EAD8 +/* 8014EACC 0014BA2C 48 0A 7A 01 */ bl InRange__10CPatternedFR13CStateManagerf +/* 8014EAD0 0014BA30 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8014EAD4 0014BA34 41 82 00 08 */ beq lbl_8014EADC +lbl_8014EAD8: +/* 8014EAD8 0014BA38 3B E0 00 01 */ li r31, 1 +lbl_8014EADC: +/* 8014EADC 0014BA3C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014EAE0 0014BA40 7F E3 FB 78 */ mr r3, r31 +/* 8014EAE4 0014BA44 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8014EAE8 0014BA48 7C 08 03 A6 */ mtlr r0 +/* 8014EAEC 0014BA4C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8014EAF0 0014BA50 4E 80 00 20 */ blr + +.global ShouldAttack__8CMetareeFR13CStateManagerf +ShouldAttack__8CMetareeFR13CStateManagerf: +/* 8014EAF4 0014BA54 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8014EAF8 0014BA58 C0 63 00 60 */ lfs f3, 0x60(r3) +/* 8014EAFC 0014BA5C C0 03 05 8C */ lfs f0, 0x58c(r3) +/* 8014EB00 0014BA60 C0 43 00 50 */ lfs f2, 0x50(r3) +/* 8014EB04 0014BA64 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 8014EB08 0014BA68 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 8014EB0C 0014BA6C D0 41 00 0C */ stfs f2, 0xc(r1) +/* 8014EB10 0014BA70 D0 21 00 08 */ stfs f1, 8(r1) +/* 8014EB14 0014BA74 D0 61 00 10 */ stfs f3, 0x10(r1) +/* 8014EB18 0014BA78 7C 00 00 26 */ mfcr r0 +/* 8014EB1C 0014BA7C 54 03 0F FE */ srwi r3, r0, 0x1f +/* 8014EB20 0014BA80 38 21 00 20 */ addi r1, r1, 0x20 +/* 8014EB24 0014BA84 4E 80 00 20 */ blr + +.global Touch__8CMetareeFR6CActorR13CStateManager +Touch__8CMetareeFR6CActorR13CStateManager: +/* 8014EB28 0014BA88 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8014EB2C 0014BA8C 7C 08 02 A6 */ mflr r0 +/* 8014EB30 0014BA90 90 01 00 24 */ stw r0, 0x24(r1) +/* 8014EB34 0014BA94 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8014EB38 0014BA98 7C BF 2B 78 */ mr r31, r5 +/* 8014EB3C 0014BA9C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8014EB40 0014BAA0 7C 7E 1B 78 */ mr r30, r3 +/* 8014EB44 0014BAA4 88 03 04 00 */ lbz r0, 0x400(r3) +/* 8014EB48 0014BAA8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8014EB4C 0014BAAC 41 82 00 6C */ beq lbl_8014EBB8 +/* 8014EB50 0014BAB0 38 61 00 08 */ addi r3, r1, 8 +/* 8014EB54 0014BAB4 4B F5 EC 25 */ bl "__ct__29TCastToPtr<15CGameProjectile>FR7CEntity" +/* 8014EB58 0014BAB8 80 A3 00 04 */ lwz r5, 4(r3) +/* 8014EB5C 0014BABC 28 05 00 00 */ cmplwi r5, 0 +/* 8014EB60 0014BAC0 41 82 00 58 */ beq lbl_8014EBB8 +/* 8014EB64 0014BAC4 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8014EB68 0014BAC8 A0 85 00 EC */ lhz r4, 0xec(r5) +/* 8014EB6C 0014BACC A0 03 00 08 */ lhz r0, 8(r3) +/* 8014EB70 0014BAD0 7C 04 00 40 */ cmplw r4, r0 +/* 8014EB74 0014BAD4 40 82 00 44 */ bne lbl_8014EBB8 +/* 8014EB78 0014BAD8 88 1E 04 00 */ lbz r0, 0x400(r30) +/* 8014EB7C 0014BADC 38 60 00 01 */ li r3, 1 +/* 8014EB80 0014BAE0 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8014EB84 0014BAE4 98 1E 04 00 */ stb r0, 0x400(r30) +/* 8014EB88 0014BAE8 C0 25 00 40 */ lfs f1, 0x40(r5) +/* 8014EB8C 0014BAEC C0 05 02 98 */ lfs f0, 0x298(r5) +/* 8014EB90 0014BAF0 C0 85 00 50 */ lfs f4, 0x50(r5) +/* 8014EB94 0014BAF4 C0 65 02 9C */ lfs f3, 0x29c(r5) +/* 8014EB98 0014BAF8 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8014EB9C 0014BAFC C0 45 00 60 */ lfs f2, 0x60(r5) +/* 8014EBA0 0014BB00 C0 25 02 A0 */ lfs f1, 0x2a0(r5) +/* 8014EBA4 0014BB04 EC 64 18 28 */ fsubs f3, f4, f3 +/* 8014EBA8 0014BB08 D0 1E 05 90 */ stfs f0, 0x590(r30) +/* 8014EBAC 0014BB0C EC 02 08 28 */ fsubs f0, f2, f1 +/* 8014EBB0 0014BB10 D0 7E 05 94 */ stfs f3, 0x594(r30) +/* 8014EBB4 0014BB14 D0 1E 05 98 */ stfs f0, 0x598(r30) +lbl_8014EBB8: +/* 8014EBB8 0014BB18 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8014EBBC 0014BB1C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8014EBC0 0014BB20 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8014EBC4 0014BB24 7C 08 03 A6 */ mtlr r0 +/* 8014EBC8 0014BB28 38 21 00 20 */ addi r1, r1, 0x20 +/* 8014EBCC 0014BB2C 4E 80 00 20 */ blr + +.global CollidedWith__8CMetareeFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager +CollidedWith__8CMetareeFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager: +/* 8014EBD0 0014BB30 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8014EBD4 0014BB34 7C 08 02 A6 */ mflr r0 +/* 8014EBD8 0014BB38 90 01 00 44 */ stw r0, 0x44(r1) +/* 8014EBDC 0014BB3C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8014EBE0 0014BB40 7C DF 33 78 */ mr r31, r6 +/* 8014EBE4 0014BB44 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8014EBE8 0014BB48 7C 7E 1B 78 */ mr r30, r3 +/* 8014EBEC 0014BB4C 88 03 04 00 */ lbz r0, 0x400(r3) +/* 8014EBF0 0014BB50 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8014EBF4 0014BB54 41 82 00 A8 */ beq lbl_8014EC9C +/* 8014EBF8 0014BB58 80 05 00 00 */ lwz r0, 0(r5) +/* 8014EBFC 0014BB5C 2C 00 00 00 */ cmpwi r0, 0 +/* 8014EC00 0014BB60 40 81 00 9C */ ble lbl_8014EC9C +/* 8014EC04 0014BB64 80 AD 8C 3C */ lwz r5, lbl_805A77FC@sda21(r13) +/* 8014EC08 0014BB68 38 60 00 00 */ li r3, 0 +/* 8014EC0C 0014BB6C 38 80 00 01 */ li r4, 1 +/* 8014EC10 0014BB70 48 23 B2 E5 */ bl __shl2i +/* 8014EC14 0014BB74 39 20 00 00 */ li r9, 0 +/* 8014EC18 0014BB78 38 00 00 01 */ li r0, 1 +/* 8014EC1C 0014BB7C 90 81 00 24 */ stw r4, 0x24(r1) +/* 8014EC20 0014BB80 7F C5 F3 78 */ mr r5, r30 +/* 8014EC24 0014BB84 38 81 00 0C */ addi r4, r1, 0xc +/* 8014EC28 0014BB88 38 C1 00 10 */ addi r6, r1, 0x10 +/* 8014EC2C 0014BB8C 90 61 00 20 */ stw r3, 0x20(r1) +/* 8014EC30 0014BB90 7F E3 FB 78 */ mr r3, r31 +/* 8014EC34 0014BB94 38 FE 05 AC */ addi r7, r30, 0x5ac +/* 8014EC38 0014BB98 39 01 00 20 */ addi r8, r1, 0x20 +/* 8014EC3C 0014BB9C 91 21 00 2C */ stw r9, 0x2c(r1) +/* 8014EC40 0014BBA0 91 21 00 28 */ stw r9, 0x28(r1) +/* 8014EC44 0014BBA4 90 01 00 30 */ stw r0, 0x30(r1) +/* 8014EC48 0014BBA8 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 8014EC4C 0014BBAC C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 8014EC50 0014BBB0 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8014EC54 0014BBB4 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8014EC58 0014BBB8 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 8014EC5C 0014BBBC D0 41 00 18 */ stfs f2, 0x18(r1) +/* 8014EC60 0014BBC0 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8014EC64 0014BBC4 B0 01 00 08 */ sth r0, 8(r1) +/* 8014EC68 0014BBC8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8014EC6C 0014BBCC 4B EF A0 41 */ bl ApplyDamageToWorld__13CStateManagerF9TUniqueIdRC6CActorRC9CVector3fRC11CDamageInfoRC15CMaterialFilter +/* 8014EC70 0014BBD0 7F C3 F3 78 */ mr r3, r30 +/* 8014EC74 0014BBD4 7F E5 FB 78 */ mr r5, r31 +/* 8014EC78 0014BBD8 38 80 00 01 */ li r4, 1 +/* 8014EC7C 0014BBDC 38 C0 FF FF */ li r6, -1 +/* 8014EC80 0014BBE0 4B F0 24 41 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 8014EC84 0014BBE4 7F C3 F3 78 */ mr r3, r30 +/* 8014EC88 0014BBE8 7F E4 FB 78 */ mr r4, r31 +/* 8014EC8C 0014BBEC 81 9E 00 00 */ lwz r12, 0(r30) +/* 8014EC90 0014BBF0 81 8C 02 98 */ lwz r12, 0x298(r12) +/* 8014EC94 0014BBF4 7D 89 03 A6 */ mtctr r12 +/* 8014EC98 0014BBF8 4E 80 04 21 */ bctrl +lbl_8014EC9C: +/* 8014EC9C 0014BBFC 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8014ECA0 0014BC00 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8014ECA4 0014BC04 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8014ECA8 0014BC08 7C 08 03 A6 */ mtlr r0 +/* 8014ECAC 0014BC0C 38 21 00 40 */ addi r1, r1, 0x40 +/* 8014ECB0 0014BC10 4E 80 00 20 */ blr + +.global ThinkAboutMove__8CMetareeFf +ThinkAboutMove__8CMetareeFf: +/* 8014ECB4 0014BC14 4E 80 00 20 */ blr + +.global AcceptScriptMsg__8CMetareeF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__8CMetareeF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8014ECB8 0014BC18 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8014ECBC 0014BC1C 7C 08 02 A6 */ mflr r0 +/* 8014ECC0 0014BC20 90 01 00 24 */ stw r0, 0x24(r1) +/* 8014ECC4 0014BC24 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8014ECC8 0014BC28 7C DF 33 78 */ mr r31, r6 +/* 8014ECCC 0014BC2C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8014ECD0 0014BC30 7C 9E 23 78 */ mr r30, r4 +/* 8014ECD4 0014BC34 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8014ECD8 0014BC38 7C 7D 1B 78 */ mr r29, r3 +/* 8014ECDC 0014BC3C A0 05 00 00 */ lhz r0, 0(r5) +/* 8014ECE0 0014BC40 38 A1 00 08 */ addi r5, r1, 8 +/* 8014ECE4 0014BC44 B0 01 00 08 */ sth r0, 8(r1) +/* 8014ECE8 0014BC48 4B F2 DE 91 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8014ECEC 0014BC4C 2C 1E 00 0E */ cmpwi r30, 0xe +/* 8014ECF0 0014BC50 41 82 00 30 */ beq lbl_8014ED20 +/* 8014ECF4 0014BC54 40 80 00 10 */ bge lbl_8014ED04 +/* 8014ECF8 0014BC58 2C 1E 00 01 */ cmpwi r30, 1 +/* 8014ECFC 0014BC5C 41 82 00 34 */ beq lbl_8014ED30 +/* 8014ED00 0014BC60 48 00 00 30 */ b lbl_8014ED30 +lbl_8014ED04: +/* 8014ED04 0014BC64 2C 1E 00 21 */ cmpwi r30, 0x21 +/* 8014ED08 0014BC68 41 82 00 08 */ beq lbl_8014ED10 +/* 8014ED0C 0014BC6C 48 00 00 24 */ b lbl_8014ED30 +lbl_8014ED10: +/* 8014ED10 0014BC70 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8014ED14 0014BC74 7F E4 FB 78 */ mr r4, r31 +/* 8014ED18 0014BC78 4B FE BF D9 */ bl Activate__15CBodyControllerFR13CStateManager +/* 8014ED1C 0014BC7C 48 00 00 14 */ b lbl_8014ED30 +lbl_8014ED20: +/* 8014ED20 0014BC80 88 1D 05 CA */ lbz r0, 0x5ca(r29) +/* 8014ED24 0014BC84 38 60 00 01 */ li r3, 1 +/* 8014ED28 0014BC88 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8014ED2C 0014BC8C 98 1D 05 CA */ stb r0, 0x5ca(r29) +lbl_8014ED30: +/* 8014ED30 0014BC90 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8014ED34 0014BC94 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8014ED38 0014BC98 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8014ED3C 0014BC9C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8014ED40 0014BCA0 7C 08 03 A6 */ mtlr r0 +/* 8014ED44 0014BCA4 38 21 00 20 */ addi r1, r1, 0x20 +/* 8014ED48 0014BCA8 4E 80 00 20 */ blr + +.global Accept__8CMetareeFR8IVisitor +Accept__8CMetareeFR8IVisitor: +/* 8014ED4C 0014BCAC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8014ED50 0014BCB0 7C 08 02 A6 */ mflr r0 +/* 8014ED54 0014BCB4 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014ED58 0014BCB8 7C 60 1B 78 */ mr r0, r3 +/* 8014ED5C 0014BCBC 7C 83 23 78 */ mr r3, r4 +/* 8014ED60 0014BCC0 81 84 00 00 */ lwz r12, 0(r4) +/* 8014ED64 0014BCC4 7C 04 03 78 */ mr r4, r0 +/* 8014ED68 0014BCC8 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8014ED6C 0014BCCC 7D 89 03 A6 */ mtctr r12 +/* 8014ED70 0014BCD0 4E 80 04 21 */ bctrl +/* 8014ED74 0014BCD4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014ED78 0014BCD8 7C 08 03 A6 */ mtlr r0 +/* 8014ED7C 0014BCDC 38 21 00 10 */ addi r1, r1, 0x10 +/* 8014ED80 0014BCE0 4E 80 00 20 */ blr + +.global "__ct__8CMetareeF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC11CDamageInfofRC9CVector3ff9EBodyTypeffRC16CActorParameters" +"__ct__8CMetareeF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC11CDamageInfofRC9CVector3ff9EBodyTypeffRC16CActorParameters": +/* 8014ED84 0014BCE4 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 8014ED88 0014BCE8 7C 08 02 A6 */ mflr r0 +/* 8014ED8C 0014BCEC 90 01 00 84 */ stw r0, 0x84(r1) +/* 8014ED90 0014BCF0 DB E1 00 70 */ stfd f31, 0x70(r1) +/* 8014ED94 0014BCF4 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 8014ED98 0014BCF8 DB C1 00 60 */ stfd f30, 0x60(r1) +/* 8014ED9C 0014BCFC F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 +/* 8014EDA0 0014BD00 DB A1 00 50 */ stfd f29, 0x50(r1) +/* 8014EDA4 0014BD04 F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 +/* 8014EDA8 0014BD08 DB 81 00 40 */ stfd f28, 0x40(r1) +/* 8014EDAC 0014BD0C F3 81 00 48 */ psq_st f28, 72(r1), 0, qr0 +/* 8014EDB0 0014BD10 BF 61 00 2C */ stmw r27, 0x2c(r1) +/* 8014EDB4 0014BD14 A0 04 00 00 */ lhz r0, 0(r4) +/* 8014EDB8 0014BD18 7C DB 33 78 */ mr r27, r6 +/* 8014EDBC 0014BD1C 7C FC 3B 78 */ mr r28, r7 +/* 8014EDC0 0014BD20 7D 0C 43 78 */ mr r12, r8 +/* 8014EDC4 0014BD24 B0 01 00 20 */ sth r0, 0x20(r1) +/* 8014EDC8 0014BD28 7D 2B 4B 78 */ mr r11, r9 +/* 8014EDCC 0014BD2C 38 80 00 01 */ li r4, 1 +/* 8014EDD0 0014BD30 38 00 00 00 */ li r0, 0 +/* 8014EDD4 0014BD34 91 41 00 08 */ stw r10, 8(r1) +/* 8014EDD8 0014BD38 FF 80 08 90 */ fmr f28, f1 +/* 8014EDDC 0014BD3C 80 C1 00 90 */ lwz r6, 0x90(r1) +/* 8014EDE0 0014BD40 FF A0 10 90 */ fmr f29, f2 +/* 8014EDE4 0014BD44 90 81 00 0C */ stw r4, 0xc(r1) +/* 8014EDE8 0014BD48 FF C0 18 90 */ fmr f30, f3 +/* 8014EDEC 0014BD4C 80 81 00 94 */ lwz r4, 0x94(r1) +/* 8014EDF0 0014BD50 90 01 00 10 */ stw r0, 0x10(r1) +/* 8014EDF4 0014BD54 FF E0 20 90 */ fmr f31, f4 +/* 8014EDF8 0014BD58 83 A1 00 88 */ lwz r29, 0x88(r1) +/* 8014EDFC 0014BD5C 7C 7F 1B 78 */ mr r31, r3 +/* 8014EE00 0014BD60 90 C1 00 14 */ stw r6, 0x14(r1) +/* 8014EE04 0014BD64 7C A6 2B 78 */ mr r6, r5 +/* 8014EE08 0014BD68 83 C1 00 8C */ lwz r30, 0x8c(r1) +/* 8014EE0C 0014BD6C 90 81 00 18 */ stw r4, 0x18(r1) +/* 8014EE10 0014BD70 7F 67 DB 78 */ mr r7, r27 +/* 8014EE14 0014BD74 7F 88 E3 78 */ mr r8, r28 +/* 8014EE18 0014BD78 7D 89 63 78 */ mr r9, r12 +/* 8014EE1C 0014BD7C 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8014EE20 0014BD80 7D 6A 5B 78 */ mr r10, r11 +/* 8014EE24 0014BD84 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8014EE28 0014BD88 38 80 00 12 */ li r4, 0x12 +/* 8014EE2C 0014BD8C 4B F2 E6 25 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" +/* 8014EE30 0014BD90 3C 80 80 3E */ lis r4, lbl_803E2878@ha +/* 8014EE34 0014BD94 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8014EE38 0014BD98 38 04 28 78 */ addi r0, r4, lbl_803E2878@l +/* 8014EE3C 0014BD9C C0 02 9D 8C */ lfs f0, lbl_805ABAAC@sda21(r2) +/* 8014EE40 0014BDA0 90 1F 00 00 */ stw r0, 0(r31) +/* 8014EE44 0014BDA4 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 8014EE48 0014BDA8 38 C0 00 00 */ li r6, 0 +/* 8014EE4C 0014BDAC 38 00 02 25 */ li r0, 0x225 +/* 8014EE50 0014BDB0 D3 DF 05 68 */ stfs f30, 0x568(r31) +/* 8014EE54 0014BDB4 38 80 00 01 */ li r4, 1 +/* 8014EE58 0014BDB8 7F E3 FB 78 */ mr r3, r31 +/* 8014EE5C 0014BDBC D3 FF 05 6C */ stfs f31, 0x56c(r31) +/* 8014EE60 0014BDC0 D3 9F 05 70 */ stfs f28, 0x570(r31) +/* 8014EE64 0014BDC4 C0 3E 00 00 */ lfs f1, 0(r30) +/* 8014EE68 0014BDC8 D0 3F 05 74 */ stfs f1, 0x574(r31) +/* 8014EE6C 0014BDCC C0 3E 00 04 */ lfs f1, 4(r30) +/* 8014EE70 0014BDD0 D0 3F 05 78 */ stfs f1, 0x578(r31) +/* 8014EE74 0014BDD4 C0 3E 00 08 */ lfs f1, 8(r30) +/* 8014EE78 0014BDD8 D0 3F 05 7C */ stfs f1, 0x57c(r31) +/* 8014EE7C 0014BDDC D3 BF 05 80 */ stfs f29, 0x580(r31) +/* 8014EE80 0014BDE0 C0 25 00 00 */ lfs f1, 0(r5) +/* 8014EE84 0014BDE4 D0 3F 05 84 */ stfs f1, 0x584(r31) +/* 8014EE88 0014BDE8 C0 25 00 04 */ lfs f1, 4(r5) +/* 8014EE8C 0014BDEC D0 3F 05 88 */ stfs f1, 0x588(r31) +/* 8014EE90 0014BDF0 C0 25 00 08 */ lfs f1, 8(r5) +/* 8014EE94 0014BDF4 D0 3F 05 8C */ stfs f1, 0x58c(r31) +/* 8014EE98 0014BDF8 D0 1F 05 90 */ stfs f0, 0x590(r31) +/* 8014EE9C 0014BDFC D0 1F 05 94 */ stfs f0, 0x594(r31) +/* 8014EEA0 0014BE00 D0 1F 05 98 */ stfs f0, 0x598(r31) +/* 8014EEA4 0014BE04 C0 05 00 00 */ lfs f0, 0(r5) +/* 8014EEA8 0014BE08 D0 1F 05 9C */ stfs f0, 0x59c(r31) +/* 8014EEAC 0014BE0C C0 05 00 04 */ lfs f0, 4(r5) +/* 8014EEB0 0014BE10 D0 1F 05 A0 */ stfs f0, 0x5a0(r31) +/* 8014EEB4 0014BE14 C0 05 00 08 */ lfs f0, 8(r5) +/* 8014EEB8 0014BE18 D0 1F 05 A4 */ stfs f0, 0x5a4(r31) +/* 8014EEBC 0014BE1C 90 DF 05 A8 */ stw r6, 0x5a8(r31) +/* 8014EEC0 0014BE20 80 BD 00 00 */ lwz r5, 0(r29) +/* 8014EEC4 0014BE24 90 BF 05 AC */ stw r5, 0x5ac(r31) +/* 8014EEC8 0014BE28 88 BD 00 04 */ lbz r5, 4(r29) +/* 8014EECC 0014BE2C 98 BF 05 B0 */ stb r5, 0x5b0(r31) +/* 8014EED0 0014BE30 C0 1D 00 08 */ lfs f0, 8(r29) +/* 8014EED4 0014BE34 D0 1F 05 B4 */ stfs f0, 0x5b4(r31) +/* 8014EED8 0014BE38 C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 8014EEDC 0014BE3C D0 1F 05 B8 */ stfs f0, 0x5b8(r31) +/* 8014EEE0 0014BE40 C0 1D 00 10 */ lfs f0, 0x10(r29) +/* 8014EEE4 0014BE44 D0 1F 05 BC */ stfs f0, 0x5bc(r31) +/* 8014EEE8 0014BE48 C0 1D 00 14 */ lfs f0, 0x14(r29) +/* 8014EEEC 0014BE4C D0 1F 05 C0 */ stfs f0, 0x5c0(r31) +/* 8014EEF0 0014BE50 88 BD 00 18 */ lbz r5, 0x18(r29) +/* 8014EEF4 0014BE54 98 BF 05 C4 */ stb r5, 0x5c4(r31) +/* 8014EEF8 0014BE58 B0 1F 05 C8 */ sth r0, 0x5c8(r31) +/* 8014EEFC 0014BE5C 88 1F 05 CA */ lbz r0, 0x5ca(r31) +/* 8014EF00 0014BE60 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 8014EF04 0014BE64 98 1F 05 CA */ stb r0, 0x5ca(r31) +/* 8014EF08 0014BE68 88 1F 05 CA */ lbz r0, 0x5ca(r31) +/* 8014EF0C 0014BE6C 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 +/* 8014EF10 0014BE70 98 1F 05 CA */ stb r0, 0x5ca(r31) +/* 8014EF14 0014BE74 88 1F 05 CA */ lbz r0, 0x5ca(r31) +/* 8014EF18 0014BE78 50 C0 2E B4 */ rlwimi r0, r6, 5, 0x1a, 0x1a +/* 8014EF1C 0014BE7C 98 1F 05 CA */ stb r0, 0x5ca(r31) +/* 8014EF20 0014BE80 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 8014EF24 0014BE84 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 8014EF28 0014BE88 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 +/* 8014EF2C 0014BE8C CB C1 00 60 */ lfd f30, 0x60(r1) +/* 8014EF30 0014BE90 E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0 +/* 8014EF34 0014BE94 CB A1 00 50 */ lfd f29, 0x50(r1) +/* 8014EF38 0014BE98 E3 81 00 48 */ psq_l f28, 72(r1), 0, qr0 +/* 8014EF3C 0014BE9C CB 81 00 40 */ lfd f28, 0x40(r1) +/* 8014EF40 0014BEA0 BB 61 00 2C */ lmw r27, 0x2c(r1) +/* 8014EF44 0014BEA4 80 01 00 84 */ lwz r0, 0x84(r1) +/* 8014EF48 0014BEA8 7C 08 03 A6 */ mtlr r0 +/* 8014EF4C 0014BEAC 38 21 00 80 */ addi r1, r1, 0x80 +/* 8014EF50 0014BEB0 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CMetroid.s b/asm/Kyoto_CWD/Enemies/CMetroid.s new file mode 100644 index 00000000..a6a651b3 --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CMetroid.s @@ -0,0 +1,9577 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global GetSearchPath__8CMetroidFv +GetSearchPath__8CMetroidFv: +/* 80169FB8 00166F18 38 63 06 C0 */ addi r3, r3, 0x6c0 +/* 80169FBC 00166F1C 4E 80 00 20 */ blr + +.global IsListening__8CMetroidCFv +IsListening__8CMetroidCFv: +/* 80169FC0 00166F20 38 60 00 01 */ li r3, 1 +/* 80169FC4 00166F24 4E 80 00 20 */ blr + +.global sub_80169fc8 +sub_80169fc8: +/* 80169FC8 00166F28 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80169FCC 00166F2C 7C 08 02 A6 */ mflr r0 +/* 80169FD0 00166F30 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 80169FD4 00166F34 90 01 00 24 */ stw r0, 0x24(r1) +/* 80169FD8 00166F38 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80169FDC 00166F3C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80169FE0 00166F40 7C 9E 23 78 */ mr r30, r4 +/* 80169FE4 00166F44 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80169FE8 00166F48 7C 7D 1B 78 */ mr r29, r3 +/* 80169FEC 00166F4C C0 23 07 B4 */ lfs f1, 0x7b4(r3) +/* 80169FF0 00166F50 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80169FF4 00166F54 4C 40 13 82 */ cror 2, 0, 2 +/* 80169FF8 00166F58 40 82 00 BC */ bne lbl_8016A0B4 +/* 80169FFC 00166F5C 83 FE 08 4C */ lwz r31, 0x84c(r30) +/* 8016A000 00166F60 A0 BD 07 B0 */ lhz r5, 0x7b0(r29) +/* 8016A004 00166F64 A0 1F 00 08 */ lhz r0, 8(r31) +/* 8016A008 00166F68 7C 05 00 40 */ cmplw r5, r0 +/* 8016A00C 00166F6C 40 82 00 60 */ bne lbl_8016A06C +/* 8016A010 00166F70 48 00 01 71 */ bl sub_8016a180 +/* 8016A014 00166F74 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016A018 00166F78 40 82 00 20 */ bne lbl_8016A038 +/* 8016A01C 00166F7C 80 1F 02 F8 */ lwz r0, 0x2f8(r31) +/* 8016A020 00166F80 2C 00 00 01 */ cmpwi r0, 1 +/* 8016A024 00166F84 40 82 00 1C */ bne lbl_8016A040 +/* 8016A028 00166F88 80 7F 07 68 */ lwz r3, 0x768(r31) +/* 8016A02C 00166F8C 80 03 18 7C */ lwz r0, 0x187c(r3) +/* 8016A030 00166F90 2C 00 00 01 */ cmpwi r0, 1 +/* 8016A034 00166F94 40 82 00 0C */ bne lbl_8016A040 +lbl_8016A038: +/* 8016A038 00166F98 38 60 00 00 */ li r3, 0 +/* 8016A03C 00166F9C 48 00 00 7C */ b lbl_8016A0B8 +lbl_8016A040: +/* 8016A040 00166FA0 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 8016A044 00166FA4 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 8016A048 00166FA8 2C 00 00 01 */ cmpwi r0, 1 +/* 8016A04C 00166FAC 41 82 00 20 */ beq lbl_8016A06C +/* 8016A050 00166FB0 7F A3 EB 78 */ mr r3, r29 +/* 8016A054 00166FB4 7F C4 F3 78 */ mr r4, r30 +/* 8016A058 00166FB8 48 00 04 C5 */ bl sub_8016a51c +/* 8016A05C 00166FBC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016A060 00166FC0 41 82 00 0C */ beq lbl_8016A06C +/* 8016A064 00166FC4 38 60 00 00 */ li r3, 0 +/* 8016A068 00166FC8 48 00 00 50 */ b lbl_8016A0B8 +lbl_8016A06C: +/* 8016A06C 00166FCC A0 1D 07 B0 */ lhz r0, 0x7b0(r29) +/* 8016A070 00166FD0 7F C3 F3 78 */ mr r3, r30 +/* 8016A074 00166FD4 38 81 00 08 */ addi r4, r1, 8 +/* 8016A078 00166FD8 B0 01 00 08 */ sth r0, 8(r1) +/* 8016A07C 00166FDC 4B EE 25 29 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8016A080 00166FE0 28 03 00 00 */ cmplwi r3, 0 +/* 8016A084 00166FE4 41 82 00 30 */ beq lbl_8016A0B4 +/* 8016A088 00166FE8 80 63 00 04 */ lwz r3, 4(r3) +/* 8016A08C 00166FEC 80 1D 00 04 */ lwz r0, 4(r29) +/* 8016A090 00166FF0 7C 03 00 00 */ cmpw r3, r0 +/* 8016A094 00166FF4 40 82 00 20 */ bne lbl_8016A0B4 +/* 8016A098 00166FF8 7F A3 EB 78 */ mr r3, r29 +/* 8016A09C 00166FFC 7F C4 F3 78 */ mr r4, r30 +/* 8016A0A0 00167000 48 00 05 49 */ bl sub_8016a5e8 +/* 8016A0A4 00167004 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 8016A0A8 00167008 7C 00 00 34 */ cntlzw r0, r0 +/* 8016A0AC 0016700C 54 03 D9 7E */ srwi r3, r0, 5 +/* 8016A0B0 00167010 48 00 00 08 */ b lbl_8016A0B8 +lbl_8016A0B4: +/* 8016A0B4 00167014 38 60 00 00 */ li r3, 0 +lbl_8016A0B8: +/* 8016A0B8 00167018 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8016A0BC 0016701C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8016A0C0 00167020 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8016A0C4 00167024 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8016A0C8 00167028 7C 08 03 A6 */ mtlr r0 +/* 8016A0CC 0016702C 38 21 00 20 */ addi r1, r1, 0x20 +/* 8016A0D0 00167030 4E 80 00 20 */ blr + +.global sub_8016a0d4 +sub_8016a0d4: +/* 8016A0D4 00167034 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8016A0D8 00167038 7C 08 02 A6 */ mflr r0 +/* 8016A0DC 0016703C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8016A0E0 00167040 DB E1 00 10 */ stfd f31, 0x10(r1) +/* 8016A0E4 00167044 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 +/* 8016A0E8 00167048 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8016A0EC 0016704C 93 C1 00 08 */ stw r30, 8(r1) +/* 8016A0F0 00167050 FF E0 08 90 */ fmr f31, f1 +/* 8016A0F4 00167054 7C 7E 1B 78 */ mr r30, r3 +/* 8016A0F8 00167058 7C 9F 23 78 */ mr r31, r4 +/* 8016A0FC 0016705C 48 00 04 ED */ bl sub_8016a5e8 +/* 8016A100 00167060 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016A104 00167064 41 82 00 20 */ beq lbl_8016A124 +/* 8016A108 00167068 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 8016A10C 0016706C 48 1A 83 D1 */ bl Float__9CRandom16Fv +/* 8016A110 00167070 C0 5E 03 08 */ lfs f2, 0x308(r30) +/* 8016A114 00167074 C0 1E 03 04 */ lfs f0, 0x304(r30) +/* 8016A118 00167078 EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 8016A11C 0016707C D0 1E 07 B4 */ stfs f0, 0x7b4(r30) +/* 8016A120 00167080 48 00 00 40 */ b lbl_8016A160 +lbl_8016A124: +/* 8016A124 00167084 C0 3E 07 B4 */ lfs f1, 0x7b4(r30) +/* 8016A128 00167088 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016A12C 0016708C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8016A130 00167090 40 81 00 30 */ ble lbl_8016A160 +/* 8016A134 00167094 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8016A138 00167098 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 8016A13C 0016709C 2C 00 00 01 */ cmpwi r0, 1 +/* 8016A140 001670A0 40 82 00 10 */ bne lbl_8016A150 +/* 8016A144 001670A4 C0 02 A0 84 */ lfs f0, lbl_805ABDA4@sda21(r2) +/* 8016A148 001670A8 EC 20 07 F2 */ fmuls f1, f0, f31 +/* 8016A14C 001670AC 48 00 00 08 */ b lbl_8016A154 +lbl_8016A150: +/* 8016A150 001670B0 FC 20 F8 90 */ fmr f1, f31 +lbl_8016A154: +/* 8016A154 001670B4 C0 1E 07 B4 */ lfs f0, 0x7b4(r30) +/* 8016A158 001670B8 EC 00 08 28 */ fsubs f0, f0, f1 +/* 8016A15C 001670BC D0 1E 07 B4 */ stfs f0, 0x7b4(r30) +lbl_8016A160: +/* 8016A160 001670C0 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 +/* 8016A164 001670C4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8016A168 001670C8 CB E1 00 10 */ lfd f31, 0x10(r1) +/* 8016A16C 001670CC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8016A170 001670D0 83 C1 00 08 */ lwz r30, 8(r1) +/* 8016A174 001670D4 7C 08 03 A6 */ mtlr r0 +/* 8016A178 001670D8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8016A17C 001670DC 4E 80 00 20 */ blr + +.global sub_8016a180 +sub_8016a180: +/* 8016A180 001670E0 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 8016A184 001670E4 7C 08 02 A6 */ mflr r0 +/* 8016A188 001670E8 90 01 00 64 */ stw r0, 0x64(r1) +/* 8016A18C 001670EC DB E1 00 50 */ stfd f31, 0x50(r1) +/* 8016A190 001670F0 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 8016A194 001670F4 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 8016A198 001670F8 93 C1 00 48 */ stw r30, 0x48(r1) +/* 8016A19C 001670FC 83 E4 08 4C */ lwz r31, 0x84c(r4) +/* 8016A1A0 00167100 7C 9E 23 78 */ mr r30, r4 +/* 8016A1A4 00167104 88 1F 00 E6 */ lbz r0, 0xe6(r31) +/* 8016A1A8 00167108 54 00 DF 7F */ rlwinm. r0, r0, 0x1b, 0x1d, 0x1f +/* 8016A1AC 0016710C 41 82 00 8C */ beq lbl_8016A238 +/* 8016A1B0 00167110 A0 7F 00 C4 */ lhz r3, 0xc4(r31) +/* 8016A1B4 00167114 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016A1B8 00167118 7C 03 00 40 */ cmplw r3, r0 +/* 8016A1BC 0016711C 41 82 00 74 */ beq lbl_8016A230 +/* 8016A1C0 00167120 7F E4 FB 78 */ mr r4, r31 +/* 8016A1C4 00167124 7F C5 F3 78 */ mr r5, r30 +/* 8016A1C8 00167128 81 9F 00 00 */ lwz r12, 0(r31) +/* 8016A1CC 0016712C 38 61 00 18 */ addi r3, r1, 0x18 +/* 8016A1D0 00167130 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) +/* 8016A1D4 00167134 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8016A1D8 00167138 7D 89 03 A6 */ mtctr r12 +/* 8016A1DC 0016713C 4E 80 04 21 */ bctrl +/* 8016A1E0 00167140 A0 1F 00 C4 */ lhz r0, 0xc4(r31) +/* 8016A1E4 00167144 7F C3 F3 78 */ mr r3, r30 +/* 8016A1E8 00167148 C3 E1 00 20 */ lfs f31, 0x20(r1) +/* 8016A1EC 0016714C 38 81 00 0C */ addi r4, r1, 0xc +/* 8016A1F0 00167150 B0 01 00 08 */ sth r0, 8(r1) +/* 8016A1F4 00167154 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8016A1F8 00167158 4B EE 23 AD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8016A1FC 0016715C 7C 64 1B 78 */ mr r4, r3 +/* 8016A200 00167160 38 61 00 10 */ addi r3, r1, 0x10 +/* 8016A204 00167164 4B F3 C6 5D */ bl "__ct__26TCastToPtr<12CScriptWater>FP7CEntity" +/* 8016A208 00167168 80 83 00 04 */ lwz r4, 4(r3) +/* 8016A20C 0016716C 28 04 00 00 */ cmplwi r4, 0 +/* 8016A210 00167170 41 82 00 20 */ beq lbl_8016A230 +/* 8016A214 00167174 38 61 00 24 */ addi r3, r1, 0x24 +/* 8016A218 00167178 4B F0 C4 B5 */ bl GetTriggerBoundsWR__14CScriptTriggerCFv +/* 8016A21C 0016717C C0 01 00 38 */ lfs f0, 0x38(r1) +/* 8016A220 00167180 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 8016A224 00167184 7C 00 00 26 */ mfcr r0 +/* 8016A228 00167188 54 03 0F FE */ srwi r3, r0, 0x1f +/* 8016A22C 0016718C 48 00 00 10 */ b lbl_8016A23C +lbl_8016A230: +/* 8016A230 00167190 38 60 00 01 */ li r3, 1 +/* 8016A234 00167194 48 00 00 08 */ b lbl_8016A23C +lbl_8016A238: +/* 8016A238 00167198 38 60 00 00 */ li r3, 0 +lbl_8016A23C: +/* 8016A23C 0016719C E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 8016A240 001671A0 80 01 00 64 */ lwz r0, 0x64(r1) +/* 8016A244 001671A4 CB E1 00 50 */ lfd f31, 0x50(r1) +/* 8016A248 001671A8 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 8016A24C 001671AC 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 8016A250 001671B0 7C 08 03 A6 */ mtlr r0 +/* 8016A254 001671B4 38 21 00 60 */ addi r1, r1, 0x60 +/* 8016A258 001671B8 4E 80 00 20 */ blr + +.global GetOrigin__8CMetroidCFv +GetOrigin__8CMetroidCFv: +/* 8016A25C 001671BC 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 8016A260 001671C0 7C 08 02 A6 */ mflr r0 +/* 8016A264 001671C4 90 01 01 14 */ stw r0, 0x114(r1) +/* 8016A268 001671C8 DB E1 01 00 */ stfd f31, 0x100(r1) +/* 8016A26C 001671CC F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 +/* 8016A270 001671D0 DB C1 00 F0 */ stfd f30, 0xf0(r1) +/* 8016A274 001671D4 F3 C1 00 F8 */ psq_st f30, 248(r1), 0, qr0 +/* 8016A278 001671D8 DB A1 00 E0 */ stfd f29, 0xe0(r1) +/* 8016A27C 001671DC F3 A1 00 E8 */ psq_st f29, 232(r1), 0, qr0 +/* 8016A280 001671E0 DB 81 00 D0 */ stfd f28, 0xd0(r1) +/* 8016A284 001671E4 F3 81 00 D8 */ psq_st f28, 216(r1), 0, qr0 +/* 8016A288 001671E8 93 E1 00 CC */ stw r31, 0xcc(r1) +/* 8016A28C 001671EC 93 C1 00 C8 */ stw r30, 0xc8(r1) +/* 8016A290 001671F0 93 A1 00 C4 */ stw r29, 0xc4(r1) +/* 8016A294 001671F4 C0 24 02 FC */ lfs f1, 0x2fc(r4) +/* 8016A298 001671F8 7C 9E 23 78 */ mr r30, r4 +/* 8016A29C 001671FC C0 04 03 00 */ lfs f0, 0x300(r4) +/* 8016A2A0 00167200 7C 7D 1B 78 */ mr r29, r3 +/* 8016A2A4 00167204 83 E5 08 4C */ lwz r31, 0x84c(r5) +/* 8016A2A8 00167208 EC 01 00 2A */ fadds f0, f1, f0 +/* 8016A2AC 0016720C C0 A2 A0 88 */ lfs f5, lbl_805ABDA8@sda21(r2) +/* 8016A2B0 00167210 A0 C4 07 B0 */ lhz r6, 0x7b0(r4) +/* 8016A2B4 00167214 A0 1F 00 08 */ lhz r0, 8(r31) +/* 8016A2B8 00167218 EF C5 00 32 */ fmuls f30, f5, f0 +/* 8016A2BC 0016721C C3 A4 00 60 */ lfs f29, 0x60(r4) +/* 8016A2C0 00167220 7C 00 30 40 */ cmplw r0, r6 +/* 8016A2C4 00167224 C3 84 00 50 */ lfs f28, 0x50(r4) +/* 8016A2C8 00167228 C3 E4 00 40 */ lfs f31, 0x40(r4) +/* 8016A2CC 0016722C 40 82 01 08 */ bne lbl_8016A3D4 +/* 8016A2D0 00167230 80 1F 02 F8 */ lwz r0, 0x2f8(r31) +/* 8016A2D4 00167234 2C 00 00 01 */ cmpwi r0, 1 +/* 8016A2D8 00167238 40 82 00 D0 */ bne lbl_8016A3A8 +/* 8016A2DC 0016723C C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 8016A2E0 00167240 38 61 00 20 */ addi r3, r1, 0x20 +/* 8016A2E4 00167244 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8016A2E8 00167248 EC 5C 08 28 */ fsubs f2, f28, f1 +/* 8016A2EC 0016724C C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 8016A2F0 00167250 EC 3F 00 28 */ fsubs f1, f31, f0 +/* 8016A2F4 00167254 D3 E1 00 88 */ stfs f31, 0x88(r1) +/* 8016A2F8 00167258 EC 1D 18 28 */ fsubs f0, f29, f3 +/* 8016A2FC 0016725C D3 81 00 8C */ stfs f28, 0x8c(r1) +/* 8016A300 00167260 D3 A1 00 90 */ stfs f29, 0x90(r1) +/* 8016A304 00167264 D0 21 00 94 */ stfs f1, 0x94(r1) +/* 8016A308 00167268 D0 41 00 98 */ stfs f2, 0x98(r1) +/* 8016A30C 0016726C D0 01 00 9C */ stfs f0, 0x9c(r1) +/* 8016A310 00167270 48 1A 9E F1 */ bl __ct__9CVector2fFff +/* 8016A314 00167274 C0 41 00 20 */ lfs f2, 0x20(r1) +/* 8016A318 00167278 38 61 00 AC */ addi r3, r1, 0xac +/* 8016A31C 0016727C C0 21 00 24 */ lfs f1, 0x24(r1) +/* 8016A320 00167280 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016A324 00167284 D0 41 00 AC */ stfs f2, 0xac(r1) +/* 8016A328 00167288 D0 21 00 B0 */ stfs f1, 0xb0(r1) +/* 8016A32C 0016728C D0 01 00 B4 */ stfs f0, 0xb4(r1) +/* 8016A330 00167290 48 1A A3 C9 */ bl CanBeNormalized__9CVector3fCFv +/* 8016A334 00167294 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016A338 00167298 41 82 00 18 */ beq lbl_8016A350 +/* 8016A33C 0016729C 38 61 00 7C */ addi r3, r1, 0x7c +/* 8016A340 001672A0 38 81 00 AC */ addi r4, r1, 0xac +/* 8016A344 001672A4 48 1A A5 0D */ bl AsNormalized__9CVector3fCFv +/* 8016A348 001672A8 38 61 00 7C */ addi r3, r1, 0x7c +/* 8016A34C 001672AC 48 00 00 20 */ b lbl_8016A36C +lbl_8016A350: +/* 8016A350 001672B0 C0 5F 00 58 */ lfs f2, 0x58(r31) +/* 8016A354 001672B4 38 61 00 70 */ addi r3, r1, 0x70 +/* 8016A358 001672B8 C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 8016A35C 001672BC C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 8016A360 001672C0 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 8016A364 001672C4 D0 21 00 74 */ stfs f1, 0x74(r1) +/* 8016A368 001672C8 D0 41 00 78 */ stfs f2, 0x78(r1) +lbl_8016A36C: +/* 8016A36C 001672CC C0 23 00 00 */ lfs f1, 0(r3) +/* 8016A370 001672D0 C0 03 00 04 */ lfs f0, 4(r3) +/* 8016A374 001672D4 EC 5E 00 72 */ fmuls f2, f30, f1 +/* 8016A378 001672D8 C0 BF 00 40 */ lfs f5, 0x40(r31) +/* 8016A37C 001672DC C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 8016A380 001672E0 EC 3E 00 32 */ fmuls f1, f30, f0 +/* 8016A384 001672E4 C0 9F 00 50 */ lfs f4, 0x50(r31) +/* 8016A388 001672E8 C0 02 A0 88 */ lfs f0, lbl_805ABDA8@sda21(r2) +/* 8016A38C 001672EC EF E5 10 2A */ fadds f31, f5, f2 +/* 8016A390 001672F0 D0 A1 00 64 */ stfs f5, 0x64(r1) +/* 8016A394 001672F4 EF 84 08 2A */ fadds f28, f4, f1 +/* 8016A398 001672F8 EF A0 18 2A */ fadds f29, f0, f3 +/* 8016A39C 001672FC D0 81 00 68 */ stfs f4, 0x68(r1) +/* 8016A3A0 00167300 D0 61 00 6C */ stfs f3, 0x6c(r1) +/* 8016A3A4 00167304 48 00 01 30 */ b lbl_8016A4D4 +lbl_8016A3A8: +/* 8016A3A8 00167308 C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 8016A3AC 0016730C C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 8016A3B0 00167310 EC 7E 00 32 */ fmuls f3, f30, f0 +/* 8016A3B4 00167314 C0 87 00 00 */ lfs f4, 0(r7) +/* 8016A3B8 00167318 C0 07 00 08 */ lfs f0, 8(r7) +/* 8016A3BC 0016731C EC 3E 00 72 */ fmuls f1, f30, f1 +/* 8016A3C0 00167320 C0 47 00 04 */ lfs f2, 4(r7) +/* 8016A3C4 00167324 EF E4 18 2A */ fadds f31, f4, f3 +/* 8016A3C8 00167328 EF 82 08 2A */ fadds f28, f2, f1 +/* 8016A3CC 0016732C EF A5 00 2A */ fadds f29, f5, f0 +/* 8016A3D0 00167330 48 00 01 04 */ b lbl_8016A4D4 +lbl_8016A3D4: +/* 8016A3D4 00167334 B0 C1 00 08 */ sth r6, 8(r1) +/* 8016A3D8 00167338 7C A3 2B 78 */ mr r3, r5 +/* 8016A3DC 0016733C 38 81 00 0C */ addi r4, r1, 0xc +/* 8016A3E0 00167340 B0 C1 00 0C */ sth r6, 0xc(r1) +/* 8016A3E4 00167344 4B EE 21 C1 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8016A3E8 00167348 7C 64 1B 78 */ mr r4, r3 +/* 8016A3EC 0016734C 38 61 00 10 */ addi r3, r1, 0x10 +/* 8016A3F0 00167350 4B F4 58 A1 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8016A3F4 00167354 83 E3 00 04 */ lwz r31, 4(r3) +/* 8016A3F8 00167358 28 1F 00 00 */ cmplwi r31, 0 +/* 8016A3FC 0016735C 41 82 00 D8 */ beq lbl_8016A4D4 +/* 8016A400 00167360 C0 9E 00 50 */ lfs f4, 0x50(r30) +/* 8016A404 00167364 38 61 00 18 */ addi r3, r1, 0x18 +/* 8016A408 00167368 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 8016A40C 0016736C C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8016A410 00167370 EC 44 08 28 */ fsubs f2, f4, f1 +/* 8016A414 00167374 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 8016A418 00167378 C0 BE 00 60 */ lfs f5, 0x60(r30) +/* 8016A41C 0016737C C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 8016A420 00167380 EC 20 08 28 */ fsubs f1, f0, f1 +/* 8016A424 00167384 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 8016A428 00167388 EC 65 18 28 */ fsubs f3, f5, f3 +/* 8016A42C 0016738C D0 81 00 50 */ stfs f4, 0x50(r1) +/* 8016A430 00167390 D0 A1 00 54 */ stfs f5, 0x54(r1) +/* 8016A434 00167394 D0 21 00 58 */ stfs f1, 0x58(r1) +/* 8016A438 00167398 D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 8016A43C 0016739C D0 61 00 60 */ stfs f3, 0x60(r1) +/* 8016A440 001673A0 48 1A 9D C1 */ bl __ct__9CVector2fFff +/* 8016A444 001673A4 C0 41 00 18 */ lfs f2, 0x18(r1) +/* 8016A448 001673A8 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 8016A44C 001673AC C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 8016A450 001673B0 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016A454 001673B4 D0 41 00 A0 */ stfs f2, 0xa0(r1) +/* 8016A458 001673B8 D0 21 00 A4 */ stfs f1, 0xa4(r1) +/* 8016A45C 001673BC D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 8016A460 001673C0 48 1A A2 99 */ bl CanBeNormalized__9CVector3fCFv +/* 8016A464 001673C4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016A468 001673C8 41 82 00 18 */ beq lbl_8016A480 +/* 8016A46C 001673CC 38 61 00 40 */ addi r3, r1, 0x40 +/* 8016A470 001673D0 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 8016A474 001673D4 48 1A A3 DD */ bl AsNormalized__9CVector3fCFv +/* 8016A478 001673D8 38 61 00 40 */ addi r3, r1, 0x40 +/* 8016A47C 001673DC 48 00 00 20 */ b lbl_8016A49C +lbl_8016A480: +/* 8016A480 001673E0 C0 5F 00 58 */ lfs f2, 0x58(r31) +/* 8016A484 001673E4 38 61 00 34 */ addi r3, r1, 0x34 +/* 8016A488 001673E8 C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 8016A48C 001673EC C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 8016A490 001673F0 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 8016A494 001673F4 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 8016A498 001673F8 D0 41 00 3C */ stfs f2, 0x3c(r1) +lbl_8016A49C: +/* 8016A49C 001673FC C0 23 00 00 */ lfs f1, 0(r3) +/* 8016A4A0 00167400 C0 03 00 04 */ lfs f0, 4(r3) +/* 8016A4A4 00167404 EC 5E 00 72 */ fmuls f2, f30, f1 +/* 8016A4A8 00167408 C0 BF 00 40 */ lfs f5, 0x40(r31) +/* 8016A4AC 0016740C C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 8016A4B0 00167410 EC 3E 00 32 */ fmuls f1, f30, f0 +/* 8016A4B4 00167414 C0 9F 00 50 */ lfs f4, 0x50(r31) +/* 8016A4B8 00167418 C0 02 A0 88 */ lfs f0, lbl_805ABDA8@sda21(r2) +/* 8016A4BC 0016741C EF E5 10 2A */ fadds f31, f5, f2 +/* 8016A4C0 00167420 D0 A1 00 28 */ stfs f5, 0x28(r1) +/* 8016A4C4 00167424 EF 84 08 2A */ fadds f28, f4, f1 +/* 8016A4C8 00167428 EF A0 18 2A */ fadds f29, f0, f3 +/* 8016A4CC 0016742C D0 81 00 2C */ stfs f4, 0x2c(r1) +/* 8016A4D0 00167430 D0 61 00 30 */ stfs f3, 0x30(r1) +lbl_8016A4D4: +/* 8016A4D4 00167434 D3 FD 00 00 */ stfs f31, 0(r29) +/* 8016A4D8 00167438 D3 9D 00 04 */ stfs f28, 4(r29) +/* 8016A4DC 0016743C D3 BD 00 08 */ stfs f29, 8(r29) +/* 8016A4E0 00167440 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 +/* 8016A4E4 00167444 CB E1 01 00 */ lfd f31, 0x100(r1) +/* 8016A4E8 00167448 E3 C1 00 F8 */ psq_l f30, 248(r1), 0, qr0 +/* 8016A4EC 0016744C CB C1 00 F0 */ lfd f30, 0xf0(r1) +/* 8016A4F0 00167450 E3 A1 00 E8 */ psq_l f29, 232(r1), 0, qr0 +/* 8016A4F4 00167454 CB A1 00 E0 */ lfd f29, 0xe0(r1) +/* 8016A4F8 00167458 E3 81 00 D8 */ psq_l f28, 216(r1), 0, qr0 +/* 8016A4FC 0016745C CB 81 00 D0 */ lfd f28, 0xd0(r1) +/* 8016A500 00167460 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 8016A504 00167464 83 C1 00 C8 */ lwz r30, 0xc8(r1) +/* 8016A508 00167468 80 01 01 14 */ lwz r0, 0x114(r1) +/* 8016A50C 0016746C 83 A1 00 C4 */ lwz r29, 0xc4(r1) +/* 8016A510 00167470 7C 08 03 A6 */ mtlr r0 +/* 8016A514 00167474 38 21 01 10 */ addi r1, r1, 0x110 +/* 8016A518 00167478 4E 80 00 20 */ blr + +.global sub_8016a51c +sub_8016a51c: +/* 8016A51C 0016747C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8016A520 00167480 7C 08 02 A6 */ mflr r0 +/* 8016A524 00167484 90 01 00 34 */ stw r0, 0x34(r1) +/* 8016A528 00167488 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8016A52C 0016748C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8016A530 00167490 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8016A534 00167494 7C 9D 23 78 */ mr r29, r4 +/* 8016A538 00167498 38 81 00 0C */ addi r4, r1, 0xc +/* 8016A53C 0016749C A0 03 06 98 */ lhz r0, 0x698(r3) +/* 8016A540 001674A0 7F A3 EB 78 */ mr r3, r29 +/* 8016A544 001674A4 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8016A548 001674A8 4B EE 20 5D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8016A54C 001674AC 7C 64 1B 78 */ mr r4, r3 +/* 8016A550 001674B0 38 61 00 14 */ addi r3, r1, 0x14 +/* 8016A554 001674B4 4B F3 D0 21 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 8016A558 001674B8 83 C3 00 04 */ lwz r30, 4(r3) +/* 8016A55C 001674BC 28 1E 00 00 */ cmplwi r30, 0 +/* 8016A560 001674C0 41 82 00 68 */ beq lbl_8016A5C8 +/* 8016A564 001674C4 80 1E 00 7C */ lwz r0, 0x7c(r30) +/* 8016A568 001674C8 28 00 00 00 */ cmplwi r0, 0 +/* 8016A56C 001674CC 41 82 00 5C */ beq lbl_8016A5C8 +/* 8016A570 001674D0 83 FE 00 84 */ lwz r31, 0x84(r30) +/* 8016A574 001674D4 48 00 00 3C */ b lbl_8016A5B0 +lbl_8016A578: +/* 8016A578 001674D8 A0 1F 00 00 */ lhz r0, 0(r31) +/* 8016A57C 001674DC 7F A3 EB 78 */ mr r3, r29 +/* 8016A580 001674E0 38 81 00 08 */ addi r4, r1, 8 +/* 8016A584 001674E4 B0 01 00 08 */ sth r0, 8(r1) +/* 8016A588 001674E8 4B EE 20 1D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8016A58C 001674EC 7C 64 1B 78 */ mr r4, r3 +/* 8016A590 001674F0 38 61 00 10 */ addi r3, r1, 0x10 +/* 8016A594 001674F4 4B F3 AF 0D */ bl sub_800a54a0 +/* 8016A598 001674F8 4B F3 AE DD */ bl "CastTo<12CMetroidBeta>__10CPatternedFP7CEntity" +/* 8016A59C 001674FC 28 03 00 00 */ cmplwi r3, 0 +/* 8016A5A0 00167500 41 82 00 0C */ beq lbl_8016A5AC +/* 8016A5A4 00167504 38 60 00 01 */ li r3, 1 +/* 8016A5A8 00167508 48 00 00 24 */ b lbl_8016A5CC +lbl_8016A5AC: +/* 8016A5AC 0016750C 3B FF 00 02 */ addi r31, r31, 2 +lbl_8016A5B0: +/* 8016A5B0 00167510 80 1E 00 7C */ lwz r0, 0x7c(r30) +/* 8016A5B4 00167514 80 7E 00 84 */ lwz r3, 0x84(r30) +/* 8016A5B8 00167518 54 00 08 3C */ slwi r0, r0, 1 +/* 8016A5BC 0016751C 7C 03 02 14 */ add r0, r3, r0 +/* 8016A5C0 00167520 7C 1F 00 40 */ cmplw r31, r0 +/* 8016A5C4 00167524 40 82 FF B4 */ bne lbl_8016A578 +lbl_8016A5C8: +/* 8016A5C8 00167528 38 60 00 00 */ li r3, 0 +lbl_8016A5CC: +/* 8016A5CC 0016752C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8016A5D0 00167530 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8016A5D4 00167534 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8016A5D8 00167538 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8016A5DC 0016753C 7C 08 03 A6 */ mtlr r0 +/* 8016A5E0 00167540 38 21 00 30 */ addi r1, r1, 0x30 +/* 8016A5E4 00167544 4E 80 00 20 */ blr + +.global sub_8016a5e8 +sub_8016a5e8: +/* 8016A5E8 00167548 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8016A5EC 0016754C 7C 08 02 A6 */ mflr r0 +/* 8016A5F0 00167550 90 01 00 34 */ stw r0, 0x34(r1) +/* 8016A5F4 00167554 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8016A5F8 00167558 7C 9F 23 78 */ mr r31, r4 +/* 8016A5FC 0016755C 38 81 00 0C */ addi r4, r1, 0xc +/* 8016A600 00167560 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8016A604 00167564 7C 7E 1B 78 */ mr r30, r3 +/* 8016A608 00167568 A0 03 07 B0 */ lhz r0, 0x7b0(r3) +/* 8016A60C 0016756C 7F E3 FB 78 */ mr r3, r31 +/* 8016A610 00167570 B0 01 00 08 */ sth r0, 8(r1) +/* 8016A614 00167574 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8016A618 00167578 4B EE 1F 8D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8016A61C 0016757C 7C 64 1B 78 */ mr r4, r3 +/* 8016A620 00167580 38 61 00 14 */ addi r3, r1, 0x14 +/* 8016A624 00167584 4B F4 56 6D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8016A628 00167588 80 83 00 04 */ lwz r4, 4(r3) +/* 8016A62C 0016758C 28 04 00 00 */ cmplwi r4, 0 +/* 8016A630 00167590 41 82 00 74 */ beq lbl_8016A6A4 +/* 8016A634 00167594 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 8016A638 00167598 A0 1E 07 B0 */ lhz r0, 0x7b0(r30) +/* 8016A63C 0016759C A0 65 00 08 */ lhz r3, 8(r5) +/* 8016A640 001675A0 7C 03 00 40 */ cmplw r3, r0 +/* 8016A644 001675A4 40 82 00 28 */ bne lbl_8016A66C +/* 8016A648 001675A8 A0 65 02 6C */ lhz r3, 0x26c(r5) +/* 8016A64C 001675AC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016A650 001675B0 7C 03 00 40 */ cmplw r3, r0 +/* 8016A654 001675B4 41 82 00 50 */ beq lbl_8016A6A4 +/* 8016A658 001675B8 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8016A65C 001675BC 7C 03 00 40 */ cmplw r3, r0 +/* 8016A660 001675C0 41 82 00 44 */ beq lbl_8016A6A4 +/* 8016A664 001675C4 38 60 00 01 */ li r3, 1 +/* 8016A668 001675C8 48 00 00 40 */ b lbl_8016A6A8 +lbl_8016A66C: +/* 8016A66C 001675CC 38 61 00 10 */ addi r3, r1, 0x10 +/* 8016A670 001675D0 4B F3 AD 61 */ bl sub_800a53d0 +/* 8016A674 001675D4 4B F3 AD 31 */ bl "CastTo<12CSpacePirate>__10CPatternedFP7CEntity" +/* 8016A678 001675D8 28 03 00 00 */ cmplwi r3, 0 +/* 8016A67C 001675DC 41 82 00 28 */ beq lbl_8016A6A4 +/* 8016A680 001675E0 A0 63 07 B4 */ lhz r3, 0x7b4(r3) +/* 8016A684 001675E4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016A688 001675E8 7C 03 00 40 */ cmplw r3, r0 +/* 8016A68C 001675EC 41 82 00 18 */ beq lbl_8016A6A4 +/* 8016A690 001675F0 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8016A694 001675F4 7C 03 00 40 */ cmplw r3, r0 +/* 8016A698 001675F8 41 82 00 0C */ beq lbl_8016A6A4 +/* 8016A69C 001675FC 38 60 00 01 */ li r3, 1 +/* 8016A6A0 00167600 48 00 00 08 */ b lbl_8016A6A8 +lbl_8016A6A4: +/* 8016A6A4 00167604 38 60 00 00 */ li r3, 0 +lbl_8016A6A8: +/* 8016A6A8 00167608 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8016A6AC 0016760C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8016A6B0 00167610 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8016A6B4 00167614 7C 08 03 A6 */ mtlr r0 +/* 8016A6B8 00167618 38 21 00 30 */ addi r1, r1, 0x30 +/* 8016A6BC 0016761C 4E 80 00 20 */ blr + +.global sub_8016a6c0 +sub_8016a6c0: +/* 8016A6C0 00167620 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 8016A6C4 00167624 7C 08 02 A6 */ mflr r0 +/* 8016A6C8 00167628 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 8016A6CC 0016762C DB E1 00 A0 */ stfd f31, 0xa0(r1) +/* 8016A6D0 00167630 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 +/* 8016A6D4 00167634 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 8016A6D8 00167638 93 C1 00 98 */ stw r30, 0x98(r1) +/* 8016A6DC 0016763C 93 A1 00 94 */ stw r29, 0x94(r1) +/* 8016A6E0 00167640 7C 9D 23 78 */ mr r29, r4 +/* 8016A6E4 00167644 C3 E2 A0 80 */ lfs f31, lbl_805ABDA0@sda21(r2) +/* 8016A6E8 00167648 80 84 00 64 */ lwz r4, 0x64(r4) +/* 8016A6EC 0016764C 38 60 00 00 */ li r3, 0 +/* 8016A6F0 00167650 28 04 00 00 */ cmplwi r4, 0 +/* 8016A6F4 00167654 41 82 00 20 */ beq lbl_8016A714 +/* 8016A6F8 00167658 80 04 00 10 */ lwz r0, 0x10(r4) +/* 8016A6FC 0016765C 28 00 00 00 */ cmplwi r0, 0 +/* 8016A700 00167660 40 82 00 10 */ bne lbl_8016A710 +/* 8016A704 00167664 88 04 00 28 */ lbz r0, 0x28(r4) +/* 8016A708 00167668 28 00 00 00 */ cmplwi r0, 0 +/* 8016A70C 0016766C 41 82 00 08 */ beq lbl_8016A714 +lbl_8016A710: +/* 8016A710 00167670 38 60 00 01 */ li r3, 1 +lbl_8016A714: +/* 8016A714 00167674 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016A718 00167678 41 82 00 80 */ beq lbl_8016A798 +/* 8016A71C 0016767C 3C 60 80 3D */ lis r3, lbl_803D04D8@ha +/* 8016A720 00167680 3B C0 00 00 */ li r30, 0 +/* 8016A724 00167684 3B E3 04 D8 */ addi r31, r3, lbl_803D04D8@l +lbl_8016A728: +/* 8016A728 00167688 80 9F 00 00 */ lwz r4, 0(r31) +/* 8016A72C 0016768C 38 61 00 14 */ addi r3, r1, 0x14 +/* 8016A730 00167690 4B E9 A5 89 */ bl string_l__4rstlFPCc +/* 8016A734 00167694 7F A4 EB 78 */ mr r4, r29 +/* 8016A738 00167698 38 61 00 24 */ addi r3, r1, 0x24 +/* 8016A73C 0016769C 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8016A740 001676A0 4B EE 87 C1 */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8016A744 001676A4 38 61 00 54 */ addi r3, r1, 0x54 +/* 8016A748 001676A8 38 81 00 24 */ addi r4, r1, 0x24 +/* 8016A74C 001676AC 48 1A 84 29 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8016A750 001676B0 38 61 00 14 */ addi r3, r1, 0x14 +/* 8016A754 001676B4 48 1D 33 8D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8016A758 001676B8 80 7D 00 64 */ lwz r3, 0x64(r29) +/* 8016A75C 001676BC C0 21 00 80 */ lfs f1, 0x80(r1) +/* 8016A760 001676C0 C0 03 00 08 */ lfs f0, 8(r3) +/* 8016A764 001676C4 C0 43 00 00 */ lfs f2, 0(r3) +/* 8016A768 001676C8 EC 61 00 32 */ fmuls f3, f1, f0 +/* 8016A76C 001676CC C0 23 00 04 */ lfs f1, 4(r3) +/* 8016A770 001676D0 D0 41 00 08 */ stfs f2, 8(r1) +/* 8016A774 001676D4 FC 03 F8 40 */ fcmpo cr0, f3, f31 +/* 8016A778 001676D8 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 8016A77C 001676DC D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8016A780 001676E0 40 81 00 08 */ ble lbl_8016A788 +/* 8016A784 001676E4 FF E0 18 90 */ fmr f31, f3 +lbl_8016A788: +/* 8016A788 001676E8 3B DE 00 01 */ addi r30, r30, 1 +/* 8016A78C 001676EC 3B FF 00 04 */ addi r31, r31, 4 +/* 8016A790 001676F0 28 1E 00 11 */ cmplwi r30, 0x11 +/* 8016A794 001676F4 41 80 FF 94 */ blt lbl_8016A728 +lbl_8016A798: +/* 8016A798 001676F8 FC 20 F8 90 */ fmr f1, f31 +/* 8016A79C 001676FC E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 +/* 8016A7A0 00167700 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 8016A7A4 00167704 CB E1 00 A0 */ lfd f31, 0xa0(r1) +/* 8016A7A8 00167708 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 8016A7AC 0016770C 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 8016A7B0 00167710 83 A1 00 94 */ lwz r29, 0x94(r1) +/* 8016A7B4 00167714 7C 08 03 A6 */ mtlr r0 +/* 8016A7B8 00167718 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 8016A7BC 0016771C 4E 80 00 20 */ blr + +.global sub_8016a7c0 +sub_8016a7c0: +/* 8016A7C0 00167720 94 21 FE 50 */ stwu r1, -0x1b0(r1) +/* 8016A7C4 00167724 7C 08 02 A6 */ mflr r0 +/* 8016A7C8 00167728 90 01 01 B4 */ stw r0, 0x1b4(r1) +/* 8016A7CC 0016772C 93 E1 01 AC */ stw r31, 0x1ac(r1) +/* 8016A7D0 00167730 93 C1 01 A8 */ stw r30, 0x1a8(r1) +/* 8016A7D4 00167734 7C DE 33 78 */ mr r30, r6 +/* 8016A7D8 00167738 93 A1 01 A4 */ stw r29, 0x1a4(r1) +/* 8016A7DC 0016773C 7C BD 2B 78 */ mr r29, r5 +/* 8016A7E0 00167740 A0 03 07 B0 */ lhz r0, 0x7b0(r3) +/* 8016A7E4 00167744 7C 83 23 78 */ mr r3, r4 +/* 8016A7E8 00167748 38 81 00 0C */ addi r4, r1, 0xc +/* 8016A7EC 0016774C B0 01 00 08 */ sth r0, 8(r1) +/* 8016A7F0 00167750 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8016A7F4 00167754 4B EE 1D B1 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8016A7F8 00167758 7C 64 1B 78 */ mr r4, r3 +/* 8016A7FC 0016775C 38 61 00 14 */ addi r3, r1, 0x14 +/* 8016A800 00167760 4B F4 54 91 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8016A804 00167764 83 E3 00 04 */ lwz r31, 4(r3) +/* 8016A808 00167768 28 1F 00 00 */ cmplwi r31, 0 +/* 8016A80C 0016776C 41 82 01 E8 */ beq lbl_8016A9F4 +/* 8016A810 00167770 80 82 A0 78 */ lwz r4, lbl_805ABD98@sda21(r2) +/* 8016A814 00167774 38 61 00 80 */ addi r3, r1, 0x80 +/* 8016A818 00167778 4B E9 A4 A1 */ bl string_l__4rstlFPCc +/* 8016A81C 0016777C 7F E4 FB 78 */ mr r4, r31 +/* 8016A820 00167780 38 61 01 0C */ addi r3, r1, 0x10c +/* 8016A824 00167784 38 A1 00 80 */ addi r5, r1, 0x80 +/* 8016A828 00167788 4B EE 86 D9 */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8016A82C 0016778C 38 61 01 6C */ addi r3, r1, 0x16c +/* 8016A830 00167790 38 81 01 0C */ addi r4, r1, 0x10c +/* 8016A834 00167794 48 1A 83 41 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8016A838 00167798 38 61 00 80 */ addi r3, r1, 0x80 +/* 8016A83C 0016779C 48 1D 32 A5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8016A840 001677A0 80 82 A0 7C */ lwz r4, lbl_805ABD9C@sda21(r2) +/* 8016A844 001677A4 38 61 00 70 */ addi r3, r1, 0x70 +/* 8016A848 001677A8 4B E9 A4 71 */ bl string_l__4rstlFPCc +/* 8016A84C 001677AC 7F E4 FB 78 */ mr r4, r31 +/* 8016A850 001677B0 38 61 00 DC */ addi r3, r1, 0xdc +/* 8016A854 001677B4 38 A1 00 70 */ addi r5, r1, 0x70 +/* 8016A858 001677B8 4B EE 86 A9 */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8016A85C 001677BC 38 61 01 3C */ addi r3, r1, 0x13c +/* 8016A860 001677C0 38 81 00 DC */ addi r4, r1, 0xdc +/* 8016A864 001677C4 48 1A 83 11 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8016A868 001677C8 38 61 00 70 */ addi r3, r1, 0x70 +/* 8016A86C 001677CC 48 1D 32 75 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8016A870 001677D0 C0 62 A0 8C */ lfs f3, lbl_805ABDAC@sda21(r2) +/* 8016A874 001677D4 38 61 00 64 */ addi r3, r1, 0x64 +/* 8016A878 001677D8 C0 41 01 64 */ lfs f2, 0x164(r1) +/* 8016A87C 001677DC 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8016A880 001677E0 C0 21 01 54 */ lfs f1, 0x154(r1) +/* 8016A884 001677E4 38 A1 00 A0 */ addi r5, r1, 0xa0 +/* 8016A888 001677E8 C0 01 01 44 */ lfs f0, 0x144(r1) +/* 8016A88C 001677EC EC 83 00 B2 */ fmuls f4, f3, f2 +/* 8016A890 001677F0 80 DF 00 64 */ lwz r6, 0x64(r31) +/* 8016A894 001677F4 EC 43 00 72 */ fmuls f2, f3, f1 +/* 8016A898 001677F8 C0 A1 01 98 */ lfs f5, 0x198(r1) +/* 8016A89C 001677FC EC 03 00 32 */ fmuls f0, f3, f0 +/* 8016A8A0 00167800 C0 61 01 88 */ lfs f3, 0x188(r1) +/* 8016A8A4 00167804 C0 21 01 78 */ lfs f1, 0x178(r1) +/* 8016A8A8 00167808 EC 85 20 2A */ fadds f4, f5, f4 +/* 8016A8AC 0016780C C0 A6 00 08 */ lfs f5, 8(r6) +/* 8016A8B0 00167810 EC 43 10 2A */ fadds f2, f3, f2 +/* 8016A8B4 00167814 C0 66 00 04 */ lfs f3, 4(r6) +/* 8016A8B8 00167818 EC 01 00 2A */ fadds f0, f1, f0 +/* 8016A8BC 0016781C C0 26 00 00 */ lfs f1, 0(r6) +/* 8016A8C0 00167820 EC 85 01 32 */ fmuls f4, f5, f4 +/* 8016A8C4 00167824 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 8016A8C8 00167828 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8016A8CC 0016782C D0 81 00 A8 */ stfs f4, 0xa8(r1) +/* 8016A8D0 00167830 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 8016A8D4 00167834 D0 41 00 A4 */ stfs f2, 0xa4(r1) +/* 8016A8D8 00167838 48 1A 81 A9 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 8016A8DC 0016783C C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 8016A8E0 00167840 38 61 00 58 */ addi r3, r1, 0x58 +/* 8016A8E4 00167844 C0 01 00 64 */ lfs f0, 0x64(r1) +/* 8016A8E8 00167848 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8016A8EC 0016784C C0 9F 00 50 */ lfs f4, 0x50(r31) +/* 8016A8F0 00167850 38 A1 00 4C */ addi r5, r1, 0x4c +/* 8016A8F4 00167854 C0 61 00 68 */ lfs f3, 0x68(r1) +/* 8016A8F8 00167858 EC 01 00 2A */ fadds f0, f1, f0 +/* 8016A8FC 0016785C C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8016A900 00167860 C0 21 00 6C */ lfs f1, 0x6c(r1) +/* 8016A904 00167864 EC 64 18 2A */ fadds f3, f4, f3 +/* 8016A908 00167868 D0 1D 00 00 */ stfs f0, 0(r29) +/* 8016A90C 0016786C EC 02 08 2A */ fadds f0, f2, f1 +/* 8016A910 00167870 D0 7D 00 04 */ stfs f3, 4(r29) +/* 8016A914 00167874 D0 1D 00 08 */ stfs f0, 8(r29) +/* 8016A918 00167878 C0 41 01 40 */ lfs f2, 0x140(r1) +/* 8016A91C 0016787C C0 21 01 50 */ lfs f1, 0x150(r1) +/* 8016A920 00167880 C0 01 01 60 */ lfs f0, 0x160(r1) +/* 8016A924 00167884 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 8016A928 00167888 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 8016A92C 0016788C D0 01 00 54 */ stfs f0, 0x54(r1) +/* 8016A930 00167890 48 1A 81 51 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 8016A934 00167894 C0 82 A0 90 */ lfs f4, lbl_805ABDB0@sda21(r2) +/* 8016A938 00167898 38 61 00 AC */ addi r3, r1, 0xac +/* 8016A93C 0016789C C0 01 00 58 */ lfs f0, 0x58(r1) +/* 8016A940 001678A0 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8016A944 001678A4 C0 61 00 5C */ lfs f3, 0x5c(r1) +/* 8016A948 001678A8 38 A1 01 3C */ addi r5, r1, 0x13c +/* 8016A94C 001678AC EC 04 00 32 */ fmuls f0, f4, f0 +/* 8016A950 001678B0 C0 3D 00 00 */ lfs f1, 0(r29) +/* 8016A954 001678B4 C0 41 00 60 */ lfs f2, 0x60(r1) +/* 8016A958 001678B8 EC 64 00 F2 */ fmuls f3, f4, f3 +/* 8016A95C 001678BC EC 01 00 2A */ fadds f0, f1, f0 +/* 8016A960 001678C0 EC 24 00 B2 */ fmuls f1, f4, f2 +/* 8016A964 001678C4 D0 1D 00 00 */ stfs f0, 0(r29) +/* 8016A968 001678C8 C0 1D 00 04 */ lfs f0, 4(r29) +/* 8016A96C 001678CC EC 00 18 2A */ fadds f0, f0, f3 +/* 8016A970 001678D0 D0 1D 00 04 */ stfs f0, 4(r29) +/* 8016A974 001678D4 C0 1D 00 08 */ lfs f0, 8(r29) +/* 8016A978 001678D8 EC 00 08 2A */ fadds f0, f0, f1 +/* 8016A97C 001678DC D0 1D 00 08 */ stfs f0, 8(r29) +/* 8016A980 001678E0 48 1A 7F D1 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8016A984 001678E4 38 61 00 3C */ addi r3, r1, 0x3c +/* 8016A988 001678E8 38 81 00 AC */ addi r4, r1, 0xac +/* 8016A98C 001678EC 48 1A 77 9D */ bl FromMatrix__11CQuaternionFRC12CTransform4f +/* 8016A990 001678F0 C0 81 00 3C */ lfs f4, 0x3c(r1) +/* 8016A994 001678F4 38 61 00 1C */ addi r3, r1, 0x1c +/* 8016A998 001678F8 C0 61 00 40 */ lfs f3, 0x40(r1) +/* 8016A99C 001678FC 38 81 00 10 */ addi r4, r1, 0x10 +/* 8016A9A0 00167900 C0 41 00 44 */ lfs f2, 0x44(r1) +/* 8016A9A4 00167904 C0 21 00 48 */ lfs f1, 0x48(r1) +/* 8016A9A8 00167908 C0 02 A0 94 */ lfs f0, lbl_805ABDB4@sda21(r2) +/* 8016A9AC 0016790C D0 81 00 90 */ stfs f4, 0x90(r1) +/* 8016A9B0 00167910 D0 61 00 94 */ stfs f3, 0x94(r1) +/* 8016A9B4 00167914 D0 41 00 98 */ stfs f2, 0x98(r1) +/* 8016A9B8 00167918 D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 8016A9BC 0016791C D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8016A9C0 00167920 48 1A 67 39 */ bl ZRotation__11CQuaternionFRC9CRelAngle +/* 8016A9C4 00167924 38 61 00 2C */ addi r3, r1, 0x2c +/* 8016A9C8 00167928 38 81 00 90 */ addi r4, r1, 0x90 +/* 8016A9CC 0016792C 38 A1 00 1C */ addi r5, r1, 0x1c +/* 8016A9D0 00167930 48 1A 67 D1 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 8016A9D4 00167934 C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 8016A9D8 00167938 D0 1E 00 00 */ stfs f0, 0(r30) +/* 8016A9DC 0016793C 80 61 00 30 */ lwz r3, 0x30(r1) +/* 8016A9E0 00167940 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8016A9E4 00167944 90 7E 00 04 */ stw r3, 4(r30) +/* 8016A9E8 00167948 90 1E 00 08 */ stw r0, 8(r30) +/* 8016A9EC 0016794C 80 01 00 38 */ lwz r0, 0x38(r1) +/* 8016A9F0 00167950 90 1E 00 0C */ stw r0, 0xc(r30) +lbl_8016A9F4: +/* 8016A9F4 00167954 80 01 01 B4 */ lwz r0, 0x1b4(r1) +/* 8016A9F8 00167958 83 E1 01 AC */ lwz r31, 0x1ac(r1) +/* 8016A9FC 0016795C 83 C1 01 A8 */ lwz r30, 0x1a8(r1) +/* 8016AA00 00167960 83 A1 01 A4 */ lwz r29, 0x1a4(r1) +/* 8016AA04 00167964 7C 08 03 A6 */ mtlr r0 +/* 8016AA08 00167968 38 21 01 B0 */ addi r1, r1, 0x1b0 +/* 8016AA0C 0016796C 4E 80 00 20 */ blr + +.global sub_8016aa10 +sub_8016aa10: +/* 8016AA10 00167970 94 21 FC A0 */ stwu r1, -0x360(r1) +/* 8016AA14 00167974 7C 08 02 A6 */ mflr r0 +/* 8016AA18 00167978 90 01 03 64 */ stw r0, 0x364(r1) +/* 8016AA1C 0016797C DB E1 03 50 */ stfd f31, 0x350(r1) +/* 8016AA20 00167980 F3 E1 03 58 */ psq_st f31, 856(r1), 0, qr0 +/* 8016AA24 00167984 DB C1 03 40 */ stfd f30, 0x340(r1) +/* 8016AA28 00167988 F3 C1 03 48 */ psq_st f30, 840(r1), 0, qr0 +/* 8016AA2C 0016798C DB A1 03 30 */ stfd f29, 0x330(r1) +/* 8016AA30 00167990 F3 A1 03 38 */ psq_st f29, 824(r1), 0, qr0 +/* 8016AA34 00167994 DB 81 03 20 */ stfd f28, 0x320(r1) +/* 8016AA38 00167998 F3 81 03 28 */ psq_st f28, 808(r1), 0, qr0 +/* 8016AA3C 0016799C DB 61 03 10 */ stfd f27, 0x310(r1) +/* 8016AA40 001679A0 F3 61 03 18 */ psq_st f27, 792(r1), 0, qr0 +/* 8016AA44 001679A4 DB 41 03 00 */ stfd f26, 0x300(r1) +/* 8016AA48 001679A8 F3 41 03 08 */ psq_st f26, 776(r1), 0, qr0 +/* 8016AA4C 001679AC DB 21 02 F0 */ stfd f25, 0x2f0(r1) +/* 8016AA50 001679B0 F3 21 02 F8 */ psq_st f25, 760(r1), 0, qr0 +/* 8016AA54 001679B4 BF 61 02 DC */ stmw r27, 0x2dc(r1) +/* 8016AA58 001679B8 7C 9C 23 78 */ mr r28, r4 +/* 8016AA5C 001679BC 7C BD 2B 78 */ mr r29, r5 +/* 8016AA60 001679C0 83 E4 08 4C */ lwz r31, 0x84c(r4) +/* 8016AA64 001679C4 7C 7B 1B 78 */ mr r27, r3 +/* 8016AA68 001679C8 7C DE 33 78 */ mr r30, r6 +/* 8016AA6C 001679CC C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8016AA70 001679D0 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 8016AA74 001679D4 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8016AA78 001679D8 D0 05 00 00 */ stfs f0, 0(r5) +/* 8016AA7C 001679DC D0 25 00 04 */ stfs f1, 4(r5) +/* 8016AA80 001679E0 D0 45 00 08 */ stfs f2, 8(r5) +/* 8016AA84 001679E4 80 83 00 64 */ lwz r4, 0x64(r3) +/* 8016AA88 001679E8 80 1F 02 F8 */ lwz r0, 0x2f8(r31) +/* 8016AA8C 001679EC C0 24 00 00 */ lfs f1, 0(r4) +/* 8016AA90 001679F0 C3 E4 00 04 */ lfs f31, 4(r4) +/* 8016AA94 001679F4 2C 00 00 02 */ cmpwi r0, 2 +/* 8016AA98 001679F8 C0 04 00 08 */ lfs f0, 8(r4) +/* 8016AA9C 001679FC D0 21 02 08 */ stfs f1, 0x208(r1) +/* 8016AAA0 00167A00 D3 E1 02 0C */ stfs f31, 0x20c(r1) +/* 8016AAA4 00167A04 D0 01 02 10 */ stfs f0, 0x210(r1) +/* 8016AAA8 00167A08 41 82 01 64 */ beq lbl_8016AC0C +/* 8016AAAC 00167A0C 40 80 00 14 */ bge lbl_8016AAC0 +/* 8016AAB0 00167A10 2C 00 00 00 */ cmpwi r0, 0 +/* 8016AAB4 00167A14 41 82 00 18 */ beq lbl_8016AACC +/* 8016AAB8 00167A18 40 80 05 C0 */ bge lbl_8016B078 +/* 8016AABC 00167A1C 48 00 06 E0 */ b lbl_8016B19C +lbl_8016AAC0: +/* 8016AAC0 00167A20 2C 00 00 04 */ cmpwi r0, 4 +/* 8016AAC4 00167A24 40 80 06 D8 */ bge lbl_8016B19C +/* 8016AAC8 00167A28 48 00 02 84 */ b lbl_8016AD4C +lbl_8016AACC: +/* 8016AACC 00167A2C 80 9C 08 70 */ lwz r4, 0x870(r28) +/* 8016AAD0 00167A30 38 61 01 F8 */ addi r3, r1, 0x1f8 +/* 8016AAD4 00167A34 80 84 00 7C */ lwz r4, 0x7c(r4) +/* 8016AAD8 00167A38 38 84 00 34 */ addi r4, r4, 0x34 +/* 8016AADC 00167A3C 48 1A 76 4D */ bl FromMatrix__11CQuaternionFRC12CTransform4f +/* 8016AAE0 00167A40 C0 81 01 F8 */ lfs f4, 0x1f8(r1) +/* 8016AAE4 00167A44 38 61 01 D8 */ addi r3, r1, 0x1d8 +/* 8016AAE8 00167A48 C0 61 01 FC */ lfs f3, 0x1fc(r1) +/* 8016AAEC 00167A4C 38 81 00 34 */ addi r4, r1, 0x34 +/* 8016AAF0 00167A50 C0 41 02 00 */ lfs f2, 0x200(r1) +/* 8016AAF4 00167A54 C0 21 02 04 */ lfs f1, 0x204(r1) +/* 8016AAF8 00167A58 C0 02 A0 94 */ lfs f0, lbl_805ABDB4@sda21(r2) +/* 8016AAFC 00167A5C D0 81 02 34 */ stfs f4, 0x234(r1) +/* 8016AB00 00167A60 D0 61 02 38 */ stfs f3, 0x238(r1) +/* 8016AB04 00167A64 D0 41 02 3C */ stfs f2, 0x23c(r1) +/* 8016AB08 00167A68 D0 21 02 40 */ stfs f1, 0x240(r1) +/* 8016AB0C 00167A6C D0 01 00 34 */ stfs f0, 0x34(r1) +/* 8016AB10 00167A70 48 1A 65 E9 */ bl ZRotation__11CQuaternionFRC9CRelAngle +/* 8016AB14 00167A74 38 61 01 E8 */ addi r3, r1, 0x1e8 +/* 8016AB18 00167A78 38 81 02 34 */ addi r4, r1, 0x234 +/* 8016AB1C 00167A7C 38 A1 01 D8 */ addi r5, r1, 0x1d8 +/* 8016AB20 00167A80 48 1A 66 81 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 8016AB24 00167A84 C0 01 01 E8 */ lfs f0, 0x1e8(r1) +/* 8016AB28 00167A88 38 61 02 68 */ addi r3, r1, 0x268 +/* 8016AB2C 00167A8C 38 81 02 34 */ addi r4, r1, 0x234 +/* 8016AB30 00167A90 D0 1E 00 00 */ stfs f0, 0(r30) +/* 8016AB34 00167A94 80 A1 01 EC */ lwz r5, 0x1ec(r1) +/* 8016AB38 00167A98 80 01 01 F0 */ lwz r0, 0x1f0(r1) +/* 8016AB3C 00167A9C 90 BE 00 04 */ stw r5, 4(r30) +/* 8016AB40 00167AA0 90 1E 00 08 */ stw r0, 8(r30) +/* 8016AB44 00167AA4 80 01 01 F4 */ lwz r0, 0x1f4(r1) +/* 8016AB48 00167AA8 90 1E 00 0C */ stw r0, 0xc(r30) +/* 8016AB4C 00167AAC 48 1A 75 41 */ bl BuildTransform__11CQuaternionCFv +/* 8016AB50 00167AB0 38 61 02 B0 */ addi r3, r1, 0x2b0 +/* 8016AB54 00167AB4 38 81 02 68 */ addi r4, r1, 0x268 +/* 8016AB58 00167AB8 48 1A 54 CD */ bl __ct__9CMatrix3fFRC9CMatrix3f +/* 8016AB5C 00167ABC 3C 80 80 5A */ lis r4, lbl_805A6724@ha +/* 8016AB60 00167AC0 38 61 01 CC */ addi r3, r1, 0x1cc +/* 8016AB64 00167AC4 38 A4 67 24 */ addi r5, r4, lbl_805A6724@l +/* 8016AB68 00167AC8 38 81 02 B0 */ addi r4, r1, 0x2b0 +/* 8016AB6C 00167ACC 48 1A 57 29 */ bl __ml__9CMatrix3fCFRC9CVector3f +/* 8016AB70 00167AD0 C0 62 A0 98 */ lfs f3, lbl_805ABDB8@sda21(r2) +/* 8016AB74 00167AD4 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 8016AB78 00167AD8 C0 41 01 CC */ lfs f2, 0x1cc(r1) +/* 8016AB7C 00167ADC 38 A3 66 F4 */ addi r5, r3, lbl_805A66F4@l +/* 8016AB80 00167AE0 C0 21 01 D0 */ lfs f1, 0x1d0(r1) +/* 8016AB84 00167AE4 38 61 01 C0 */ addi r3, r1, 0x1c0 +/* 8016AB88 00167AE8 C0 01 01 D4 */ lfs f0, 0x1d4(r1) +/* 8016AB8C 00167AEC EF 83 00 B2 */ fmuls f28, f3, f2 +/* 8016AB90 00167AF0 EF 63 00 72 */ fmuls f27, f3, f1 +/* 8016AB94 00167AF4 38 81 02 B0 */ addi r4, r1, 0x2b0 +/* 8016AB98 00167AF8 EF 43 00 32 */ fmuls f26, f3, f0 +/* 8016AB9C 00167AFC 48 1A 56 F9 */ bl __ml__9CMatrix3fCFRC9CVector3f +/* 8016ABA0 00167B00 C0 02 A0 9C */ lfs f0, lbl_805ABDBC@sda21(r2) +/* 8016ABA4 00167B04 7F E3 FB 78 */ mr r3, r31 +/* 8016ABA8 00167B08 C0 41 01 C0 */ lfs f2, 0x1c0(r1) +/* 8016ABAC 00167B0C EC 60 07 F2 */ fmuls f3, f0, f31 +/* 8016ABB0 00167B10 C0 21 01 C4 */ lfs f1, 0x1c4(r1) +/* 8016ABB4 00167B14 C0 01 01 C8 */ lfs f0, 0x1c8(r1) +/* 8016ABB8 00167B18 EF E3 00 B2 */ fmuls f31, f3, f2 +/* 8016ABBC 00167B1C EF C3 00 72 */ fmuls f30, f3, f1 +/* 8016ABC0 00167B20 EF A3 00 32 */ fmuls f29, f3, f0 +/* 8016ABC4 00167B24 48 11 A2 1D */ bl GetEyeHeight__7CPlayerCFv +/* 8016ABC8 00167B28 C0 62 A0 80 */ lfs f3, lbl_805ABDA0@sda21(r2) +/* 8016ABCC 00167B2C EC 01 E8 2A */ fadds f0, f1, f29 +/* 8016ABD0 00167B30 C0 9D 00 00 */ lfs f4, 0(r29) +/* 8016ABD4 00167B34 EC 43 F8 2A */ fadds f2, f3, f31 +/* 8016ABD8 00167B38 EC 23 F0 2A */ fadds f1, f3, f30 +/* 8016ABDC 00167B3C EC 00 D0 2A */ fadds f0, f0, f26 +/* 8016ABE0 00167B40 EC 42 E0 2A */ fadds f2, f2, f28 +/* 8016ABE4 00167B44 EC 21 D8 2A */ fadds f1, f1, f27 +/* 8016ABE8 00167B48 EC 44 10 2A */ fadds f2, f4, f2 +/* 8016ABEC 00167B4C D0 5D 00 00 */ stfs f2, 0(r29) +/* 8016ABF0 00167B50 C0 5D 00 04 */ lfs f2, 4(r29) +/* 8016ABF4 00167B54 EC 22 08 2A */ fadds f1, f2, f1 +/* 8016ABF8 00167B58 D0 3D 00 04 */ stfs f1, 4(r29) +/* 8016ABFC 00167B5C C0 3D 00 08 */ lfs f1, 8(r29) +/* 8016AC00 00167B60 EC 01 00 2A */ fadds f0, f1, f0 +/* 8016AC04 00167B64 D0 1D 00 08 */ stfs f0, 8(r29) +/* 8016AC08 00167B68 48 00 05 94 */ b lbl_8016B19C +lbl_8016AC0C: +/* 8016AC0C 00167B6C 7F E4 FB 78 */ mr r4, r31 +/* 8016AC10 00167B70 4B FF FA B1 */ bl sub_8016a6c0 +/* 8016AC14 00167B74 C0 5D 00 00 */ lfs f2, 0(r29) +/* 8016AC18 00167B78 C0 62 A0 80 */ lfs f3, lbl_805ABDA0@sda21(r2) +/* 8016AC1C 00167B7C C0 02 A0 A0 */ lfs f0, lbl_805ABDC0@sda21(r2) +/* 8016AC20 00167B80 EC 42 18 2A */ fadds f2, f2, f3 +/* 8016AC24 00167B84 EC 00 08 2A */ fadds f0, f0, f1 +/* 8016AC28 00167B88 D0 5D 00 00 */ stfs f2, 0(r29) +/* 8016AC2C 00167B8C C0 3D 00 04 */ lfs f1, 4(r29) +/* 8016AC30 00167B90 EC 21 18 2A */ fadds f1, f1, f3 +/* 8016AC34 00167B94 D0 3D 00 04 */ stfs f1, 4(r29) +/* 8016AC38 00167B98 C0 3D 00 08 */ lfs f1, 8(r29) +/* 8016AC3C 00167B9C EC 01 00 2A */ fadds f0, f1, f0 +/* 8016AC40 00167BA0 D0 1D 00 08 */ stfs f0, 8(r29) +/* 8016AC44 00167BA4 80 7F 07 68 */ lwz r3, 0x768(r31) +/* 8016AC48 00167BA8 4B F8 E1 BD */ bl GetBallRadius__10CMorphBallCFv +/* 8016AC4C 00167BAC C0 1B 00 3C */ lfs f0, 0x3c(r27) +/* 8016AC50 00167BB0 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 8016AC54 00167BB4 C1 02 A0 88 */ lfs f8, lbl_805ABDA8@sda21(r2) +/* 8016AC58 00167BB8 38 81 00 30 */ addi r4, r1, 0x30 +/* 8016AC5C 00167BBC C0 5F 00 38 */ lfs f2, 0x38(r31) +/* 8016AC60 00167BC0 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8016AC64 00167BC4 C0 9F 00 48 */ lfs f4, 0x48(r31) +/* 8016AC68 00167BC8 EC 48 00 B2 */ fmuls f2, f8, f2 +/* 8016AC6C 00167BCC C0 7B 00 4C */ lfs f3, 0x4c(r27) +/* 8016AC70 00167BD0 C0 DF 00 58 */ lfs f6, 0x58(r31) +/* 8016AC74 00167BD4 EC E8 01 32 */ fmuls f7, f8, f4 +/* 8016AC78 00167BD8 C0 9D 00 00 */ lfs f4, 0(r29) +/* 8016AC7C 00167BDC EC 61 00 F2 */ fmuls f3, f1, f3 +/* 8016AC80 00167BE0 EC 02 00 28 */ fsubs f0, f2, f0 +/* 8016AC84 00167BE4 C0 BB 00 5C */ lfs f5, 0x5c(r27) +/* 8016AC88 00167BE8 EC E7 18 28 */ fsubs f7, f7, f3 +/* 8016AC8C 00167BEC C0 62 A0 94 */ lfs f3, lbl_805ABDB4@sda21(r2) +/* 8016AC90 00167BF0 EC C8 01 B2 */ fmuls f6, f8, f6 +/* 8016AC94 00167BF4 C0 42 A0 A4 */ lfs f2, lbl_805ABDC4@sda21(r2) +/* 8016AC98 00167BF8 EC 84 00 2A */ fadds f4, f4, f0 +/* 8016AC9C 00167BFC C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016ACA0 00167C00 EC 21 01 72 */ fmuls f1, f1, f5 +/* 8016ACA4 00167C04 D0 9D 00 00 */ stfs f4, 0(r29) +/* 8016ACA8 00167C08 EC 86 08 28 */ fsubs f4, f6, f1 +/* 8016ACAC 00167C0C C0 3D 00 04 */ lfs f1, 4(r29) +/* 8016ACB0 00167C10 EC 21 38 2A */ fadds f1, f1, f7 +/* 8016ACB4 00167C14 D0 3D 00 04 */ stfs f1, 4(r29) +/* 8016ACB8 00167C18 C0 3D 00 08 */ lfs f1, 8(r29) +/* 8016ACBC 00167C1C EC 21 20 2A */ fadds f1, f1, f4 +/* 8016ACC0 00167C20 D0 3D 00 08 */ stfs f1, 8(r29) +/* 8016ACC4 00167C24 D0 61 00 28 */ stfs f3, 0x28(r1) +/* 8016ACC8 00167C28 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 8016ACCC 00167C2C D0 01 00 30 */ stfs f0, 0x30(r1) +/* 8016ACD0 00167C30 48 1A 64 61 */ bl YRotation__11CQuaternionFRC9CRelAngle +/* 8016ACD4 00167C34 38 61 00 D8 */ addi r3, r1, 0xd8 +/* 8016ACD8 00167C38 38 81 00 2C */ addi r4, r1, 0x2c +/* 8016ACDC 00167C3C 48 1A 64 8D */ bl XRotation__11CQuaternionFRC9CRelAngle +/* 8016ACE0 00167C40 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 8016ACE4 00167C44 38 81 00 28 */ addi r4, r1, 0x28 +/* 8016ACE8 00167C48 48 1A 64 11 */ bl ZRotation__11CQuaternionFRC9CRelAngle +/* 8016ACEC 00167C4C 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 8016ACF0 00167C50 38 81 00 C8 */ addi r4, r1, 0xc8 +/* 8016ACF4 00167C54 38 A1 00 D8 */ addi r5, r1, 0xd8 +/* 8016ACF8 00167C58 48 1A 64 A9 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 8016ACFC 00167C5C 38 61 01 90 */ addi r3, r1, 0x190 +/* 8016AD00 00167C60 38 81 00 B8 */ addi r4, r1, 0xb8 +/* 8016AD04 00167C64 38 A1 00 E8 */ addi r5, r1, 0xe8 +/* 8016AD08 00167C68 48 1A 64 99 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 8016AD0C 00167C6C 38 61 01 A0 */ addi r3, r1, 0x1a0 +/* 8016AD10 00167C70 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8016AD14 00167C74 48 1A 74 15 */ bl FromMatrix__11CQuaternionFRC12CTransform4f +/* 8016AD18 00167C78 38 61 01 B0 */ addi r3, r1, 0x1b0 +/* 8016AD1C 00167C7C 38 81 01 A0 */ addi r4, r1, 0x1a0 +/* 8016AD20 00167C80 38 A1 01 90 */ addi r5, r1, 0x190 +/* 8016AD24 00167C84 48 1A 64 7D */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 8016AD28 00167C88 C0 01 01 B0 */ lfs f0, 0x1b0(r1) +/* 8016AD2C 00167C8C D0 1E 00 00 */ stfs f0, 0(r30) +/* 8016AD30 00167C90 80 61 01 B4 */ lwz r3, 0x1b4(r1) +/* 8016AD34 00167C94 80 01 01 B8 */ lwz r0, 0x1b8(r1) +/* 8016AD38 00167C98 90 7E 00 04 */ stw r3, 4(r30) +/* 8016AD3C 00167C9C 90 1E 00 08 */ stw r0, 8(r30) +/* 8016AD40 00167CA0 80 01 01 BC */ lwz r0, 0x1bc(r1) +/* 8016AD44 00167CA4 90 1E 00 0C */ stw r0, 0xc(r30) +/* 8016AD48 00167CA8 48 00 04 54 */ b lbl_8016B19C +lbl_8016AD4C: +/* 8016AD4C 00167CAC 7F E4 FB 78 */ mr r4, r31 +/* 8016AD50 00167CB0 4B FF F9 71 */ bl sub_8016a6c0 +/* 8016AD54 00167CB4 C0 5D 00 00 */ lfs f2, 0(r29) +/* 8016AD58 00167CB8 C0 62 A0 80 */ lfs f3, lbl_805ABDA0@sda21(r2) +/* 8016AD5C 00167CBC C0 02 A0 A0 */ lfs f0, lbl_805ABDC0@sda21(r2) +/* 8016AD60 00167CC0 EC 42 18 2A */ fadds f2, f2, f3 +/* 8016AD64 00167CC4 EC 00 08 2A */ fadds f0, f0, f1 +/* 8016AD68 00167CC8 D0 5D 00 00 */ stfs f2, 0(r29) +/* 8016AD6C 00167CCC C0 3D 00 04 */ lfs f1, 4(r29) +/* 8016AD70 00167CD0 EC 21 18 2A */ fadds f1, f1, f3 +/* 8016AD74 00167CD4 D0 3D 00 04 */ stfs f1, 4(r29) +/* 8016AD78 00167CD8 C0 3D 00 08 */ lfs f1, 8(r29) +/* 8016AD7C 00167CDC EC 01 00 2A */ fadds f0, f1, f0 +/* 8016AD80 00167CE0 D0 1D 00 08 */ stfs f0, 8(r29) +/* 8016AD84 00167CE4 80 7F 07 68 */ lwz r3, 0x768(r31) +/* 8016AD88 00167CE8 4B F8 E0 7D */ bl GetBallRadius__10CMorphBallCFv +/* 8016AD8C 00167CEC C0 1B 00 3C */ lfs f0, 0x3c(r27) +/* 8016AD90 00167CF0 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 8016AD94 00167CF4 C1 02 A0 88 */ lfs f8, lbl_805ABDA8@sda21(r2) +/* 8016AD98 00167CF8 38 81 00 24 */ addi r4, r1, 0x24 +/* 8016AD9C 00167CFC C0 5F 00 38 */ lfs f2, 0x38(r31) +/* 8016ADA0 00167D00 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8016ADA4 00167D04 C0 9F 00 48 */ lfs f4, 0x48(r31) +/* 8016ADA8 00167D08 EC 48 00 B2 */ fmuls f2, f8, f2 +/* 8016ADAC 00167D0C C0 7B 00 4C */ lfs f3, 0x4c(r27) +/* 8016ADB0 00167D10 C0 DF 00 58 */ lfs f6, 0x58(r31) +/* 8016ADB4 00167D14 EC E8 01 32 */ fmuls f7, f8, f4 +/* 8016ADB8 00167D18 C0 9D 00 00 */ lfs f4, 0(r29) +/* 8016ADBC 00167D1C EC 61 00 F2 */ fmuls f3, f1, f3 +/* 8016ADC0 00167D20 EC 02 00 28 */ fsubs f0, f2, f0 +/* 8016ADC4 00167D24 C0 BB 00 5C */ lfs f5, 0x5c(r27) +/* 8016ADC8 00167D28 EC E7 18 28 */ fsubs f7, f7, f3 +/* 8016ADCC 00167D2C C0 62 A0 94 */ lfs f3, lbl_805ABDB4@sda21(r2) +/* 8016ADD0 00167D30 EC C8 01 B2 */ fmuls f6, f8, f6 +/* 8016ADD4 00167D34 C0 42 A0 A4 */ lfs f2, lbl_805ABDC4@sda21(r2) +/* 8016ADD8 00167D38 EC 84 00 2A */ fadds f4, f4, f0 +/* 8016ADDC 00167D3C C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016ADE0 00167D40 EC 21 01 72 */ fmuls f1, f1, f5 +/* 8016ADE4 00167D44 D0 9D 00 00 */ stfs f4, 0(r29) +/* 8016ADE8 00167D48 EC 86 08 28 */ fsubs f4, f6, f1 +/* 8016ADEC 00167D4C C0 3D 00 04 */ lfs f1, 4(r29) +/* 8016ADF0 00167D50 EC 21 38 2A */ fadds f1, f1, f7 +/* 8016ADF4 00167D54 D0 3D 00 04 */ stfs f1, 4(r29) +/* 8016ADF8 00167D58 C0 3D 00 08 */ lfs f1, 8(r29) +/* 8016ADFC 00167D5C EC 21 20 2A */ fadds f1, f1, f4 +/* 8016AE00 00167D60 D0 3D 00 08 */ stfs f1, 8(r29) +/* 8016AE04 00167D64 D0 61 00 1C */ stfs f3, 0x1c(r1) +/* 8016AE08 00167D68 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 8016AE0C 00167D6C D0 01 00 24 */ stfs f0, 0x24(r1) +/* 8016AE10 00167D70 48 1A 63 21 */ bl YRotation__11CQuaternionFRC9CRelAngle +/* 8016AE14 00167D74 38 61 00 98 */ addi r3, r1, 0x98 +/* 8016AE18 00167D78 38 81 00 20 */ addi r4, r1, 0x20 +/* 8016AE1C 00167D7C 48 1A 63 4D */ bl XRotation__11CQuaternionFRC9CRelAngle +/* 8016AE20 00167D80 38 61 00 88 */ addi r3, r1, 0x88 +/* 8016AE24 00167D84 38 81 00 1C */ addi r4, r1, 0x1c +/* 8016AE28 00167D88 48 1A 62 D1 */ bl ZRotation__11CQuaternionFRC9CRelAngle +/* 8016AE2C 00167D8C 38 61 00 78 */ addi r3, r1, 0x78 +/* 8016AE30 00167D90 38 81 00 88 */ addi r4, r1, 0x88 +/* 8016AE34 00167D94 38 A1 00 98 */ addi r5, r1, 0x98 +/* 8016AE38 00167D98 48 1A 63 69 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 8016AE3C 00167D9C 38 61 01 60 */ addi r3, r1, 0x160 +/* 8016AE40 00167DA0 38 81 00 78 */ addi r4, r1, 0x78 +/* 8016AE44 00167DA4 38 A1 00 A8 */ addi r5, r1, 0xa8 +/* 8016AE48 00167DA8 48 1A 63 59 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 8016AE4C 00167DAC 38 61 01 70 */ addi r3, r1, 0x170 +/* 8016AE50 00167DB0 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8016AE54 00167DB4 48 1A 72 D5 */ bl FromMatrix__11CQuaternionFRC12CTransform4f +/* 8016AE58 00167DB8 38 61 01 80 */ addi r3, r1, 0x180 +/* 8016AE5C 00167DBC 38 81 01 70 */ addi r4, r1, 0x170 +/* 8016AE60 00167DC0 38 A1 01 60 */ addi r5, r1, 0x160 +/* 8016AE64 00167DC4 48 1A 63 3D */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 8016AE68 00167DC8 C0 01 01 80 */ lfs f0, 0x180(r1) +/* 8016AE6C 00167DCC C3 42 A0 80 */ lfs f26, lbl_805ABDA0@sda21(r2) +/* 8016AE70 00167DD0 D0 1E 00 00 */ stfs f0, 0(r30) +/* 8016AE74 00167DD4 80 61 01 84 */ lwz r3, 0x184(r1) +/* 8016AE78 00167DD8 80 01 01 88 */ lwz r0, 0x188(r1) +/* 8016AE7C 00167DDC 90 7E 00 04 */ stw r3, 4(r30) +/* 8016AE80 00167DE0 90 1E 00 08 */ stw r0, 8(r30) +/* 8016AE84 00167DE4 80 01 01 8C */ lwz r0, 0x18c(r1) +/* 8016AE88 00167DE8 90 1E 00 0C */ stw r0, 0xc(r30) +/* 8016AE8C 00167DEC C0 3F 05 78 */ lfs f1, 0x578(r31) +/* 8016AE90 00167DF0 FC 1A 08 00 */ fcmpu cr0, f26, f1 +/* 8016AE94 00167DF4 40 82 00 08 */ bne lbl_8016AE9C +/* 8016AE98 00167DF8 48 00 00 24 */ b lbl_8016AEBC +lbl_8016AE9C: +/* 8016AE9C 00167DFC C0 1F 05 74 */ lfs f0, 0x574(r31) +/* 8016AEA0 00167E00 38 81 00 08 */ addi r4, r1, 8 +/* 8016AEA4 00167E04 38 6D 8D 90 */ addi r3, r13, lbl_805A7950@sda21 +/* 8016AEA8 00167E08 38 AD 8D 94 */ addi r5, r13, lbl_805A7954@sda21 +/* 8016AEAC 00167E0C EC 00 08 24 */ fdivs f0, f0, f1 +/* 8016AEB0 00167E10 D0 01 00 08 */ stfs f0, 8(r1) +/* 8016AEB4 00167E14 4B EA 14 01 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8016AEB8 00167E18 C3 43 00 00 */ lfs f26, 0(r3) +lbl_8016AEBC: +/* 8016AEBC 00167E1C C0 02 A0 A8 */ lfs f0, lbl_805ABDC8@sda21(r2) +/* 8016AEC0 00167E20 FC 1A 00 40 */ fcmpo cr0, f26, f0 +/* 8016AEC4 00167E24 40 81 02 D8 */ ble lbl_8016B19C +/* 8016AEC8 00167E28 80 9C 08 70 */ lwz r4, 0x870(r28) +/* 8016AECC 00167E2C 38 61 01 50 */ addi r3, r1, 0x150 +/* 8016AED0 00167E30 80 84 00 7C */ lwz r4, 0x7c(r4) +/* 8016AED4 00167E34 38 84 00 34 */ addi r4, r4, 0x34 +/* 8016AED8 00167E38 48 1A 72 51 */ bl FromMatrix__11CQuaternionFRC12CTransform4f +/* 8016AEDC 00167E3C C0 81 01 50 */ lfs f4, 0x150(r1) +/* 8016AEE0 00167E40 38 61 01 30 */ addi r3, r1, 0x130 +/* 8016AEE4 00167E44 C0 61 01 54 */ lfs f3, 0x154(r1) +/* 8016AEE8 00167E48 38 81 00 18 */ addi r4, r1, 0x18 +/* 8016AEEC 00167E4C C0 41 01 58 */ lfs f2, 0x158(r1) +/* 8016AEF0 00167E50 C0 21 01 5C */ lfs f1, 0x15c(r1) +/* 8016AEF4 00167E54 C0 02 A0 94 */ lfs f0, lbl_805ABDB4@sda21(r2) +/* 8016AEF8 00167E58 D0 81 02 24 */ stfs f4, 0x224(r1) +/* 8016AEFC 00167E5C D0 61 02 28 */ stfs f3, 0x228(r1) +/* 8016AF00 00167E60 D0 41 02 2C */ stfs f2, 0x22c(r1) +/* 8016AF04 00167E64 D0 21 02 30 */ stfs f1, 0x230(r1) +/* 8016AF08 00167E68 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 8016AF0C 00167E6C 48 1A 61 ED */ bl ZRotation__11CQuaternionFRC9CRelAngle +/* 8016AF10 00167E70 38 61 01 40 */ addi r3, r1, 0x140 +/* 8016AF14 00167E74 38 81 02 24 */ addi r4, r1, 0x224 +/* 8016AF18 00167E78 38 A1 01 30 */ addi r5, r1, 0x130 +/* 8016AF1C 00167E7C 48 1A 62 85 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 8016AF20 00167E80 C0 61 01 40 */ lfs f3, 0x140(r1) +/* 8016AF24 00167E84 38 61 02 44 */ addi r3, r1, 0x244 +/* 8016AF28 00167E88 C0 41 01 44 */ lfs f2, 0x144(r1) +/* 8016AF2C 00167E8C 38 81 02 24 */ addi r4, r1, 0x224 +/* 8016AF30 00167E90 C0 21 01 48 */ lfs f1, 0x148(r1) +/* 8016AF34 00167E94 C0 01 01 4C */ lfs f0, 0x14c(r1) +/* 8016AF38 00167E98 D0 61 02 14 */ stfs f3, 0x214(r1) +/* 8016AF3C 00167E9C D0 41 02 18 */ stfs f2, 0x218(r1) +/* 8016AF40 00167EA0 D0 21 02 1C */ stfs f1, 0x21c(r1) +/* 8016AF44 00167EA4 D0 01 02 20 */ stfs f0, 0x220(r1) +/* 8016AF48 00167EA8 48 1A 71 45 */ bl BuildTransform__11CQuaternionCFv +/* 8016AF4C 00167EAC 38 61 02 8C */ addi r3, r1, 0x28c +/* 8016AF50 00167EB0 38 81 02 44 */ addi r4, r1, 0x244 +/* 8016AF54 00167EB4 48 1A 50 D1 */ bl __ct__9CMatrix3fFRC9CMatrix3f +/* 8016AF58 00167EB8 3C 80 80 5A */ lis r4, lbl_805A6724@ha +/* 8016AF5C 00167EBC 38 61 01 24 */ addi r3, r1, 0x124 +/* 8016AF60 00167EC0 38 A4 67 24 */ addi r5, r4, lbl_805A6724@l +/* 8016AF64 00167EC4 38 81 02 8C */ addi r4, r1, 0x28c +/* 8016AF68 00167EC8 48 1A 53 2D */ bl __ml__9CMatrix3fCFRC9CVector3f +/* 8016AF6C 00167ECC C0 62 A0 98 */ lfs f3, lbl_805ABDB8@sda21(r2) +/* 8016AF70 00167ED0 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 8016AF74 00167ED4 C0 41 01 24 */ lfs f2, 0x124(r1) +/* 8016AF78 00167ED8 38 A3 66 F4 */ addi r5, r3, lbl_805A66F4@l +/* 8016AF7C 00167EDC C0 21 01 28 */ lfs f1, 0x128(r1) +/* 8016AF80 00167EE0 38 61 01 18 */ addi r3, r1, 0x118 +/* 8016AF84 00167EE4 C0 01 01 2C */ lfs f0, 0x12c(r1) +/* 8016AF88 00167EE8 EF 83 00 B2 */ fmuls f28, f3, f2 +/* 8016AF8C 00167EEC EF A3 00 72 */ fmuls f29, f3, f1 +/* 8016AF90 00167EF0 38 81 02 8C */ addi r4, r1, 0x28c +/* 8016AF94 00167EF4 EF C3 00 32 */ fmuls f30, f3, f0 +/* 8016AF98 00167EF8 48 1A 52 FD */ bl __ml__9CMatrix3fCFRC9CVector3f +/* 8016AF9C 00167EFC C0 02 A0 9C */ lfs f0, lbl_805ABDBC@sda21(r2) +/* 8016AFA0 00167F00 7F E3 FB 78 */ mr r3, r31 +/* 8016AFA4 00167F04 C0 41 01 18 */ lfs f2, 0x118(r1) +/* 8016AFA8 00167F08 EC 60 07 F2 */ fmuls f3, f0, f31 +/* 8016AFAC 00167F0C C0 21 01 1C */ lfs f1, 0x11c(r1) +/* 8016AFB0 00167F10 C0 01 01 20 */ lfs f0, 0x120(r1) +/* 8016AFB4 00167F14 EF 63 00 B2 */ fmuls f27, f3, f2 +/* 8016AFB8 00167F18 EF E3 00 72 */ fmuls f31, f3, f1 +/* 8016AFBC 00167F1C EF 23 00 32 */ fmuls f25, f3, f0 +/* 8016AFC0 00167F20 48 11 9E 21 */ bl GetEyeHeight__7CPlayerCFv +/* 8016AFC4 00167F24 C0 02 A0 A8 */ lfs f0, lbl_805ABDC8@sda21(r2) +/* 8016AFC8 00167F28 7F C4 F3 78 */ mr r4, r30 +/* 8016AFCC 00167F2C C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 8016AFD0 00167F30 38 61 01 08 */ addi r3, r1, 0x108 +/* 8016AFD4 00167F34 EC 5A 00 28 */ fsubs f2, f26, f0 +/* 8016AFD8 00167F38 C0 02 A0 AC */ lfs f0, lbl_805ABDCC@sda21(r2) +/* 8016AFDC 00167F3C EC 23 08 2A */ fadds f1, f3, f1 +/* 8016AFE0 00167F40 C0 7F 00 40 */ lfs f3, 0x40(r31) +/* 8016AFE4 00167F44 C0 82 A0 80 */ lfs f4, lbl_805ABDA0@sda21(r2) +/* 8016AFE8 00167F48 38 A1 02 14 */ addi r5, r1, 0x214 +/* 8016AFEC 00167F4C EF 42 00 24 */ fdivs f26, f2, f0 +/* 8016AFF0 00167F50 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 8016AFF4 00167F54 EC 63 20 2A */ fadds f3, f3, f4 +/* 8016AFF8 00167F58 EC 40 20 2A */ fadds f2, f0, f4 +/* 8016AFFC 00167F5C EC 01 C8 2A */ fadds f0, f1, f25 +/* 8016B000 00167F60 EC 63 D8 2A */ fadds f3, f3, f27 +/* 8016B004 00167F64 EC 42 F8 2A */ fadds f2, f2, f31 +/* 8016B008 00167F68 FC 20 D0 90 */ fmr f1, f26 +/* 8016B00C 00167F6C EF 83 E0 2A */ fadds f28, f3, f28 +/* 8016B010 00167F70 EF 62 E8 2A */ fadds f27, f2, f29 +/* 8016B014 00167F74 EF 20 F0 2A */ fadds f25, f0, f30 +/* 8016B018 00167F78 48 1A 65 A1 */ bl SlerpLocal__11CQuaternionFRC11CQuaternionRC11CQuaternionf +/* 8016B01C 00167F7C C0 41 01 08 */ lfs f2, 0x108(r1) +/* 8016B020 00167F80 EC 1C 06 B2 */ fmuls f0, f28, f26 +/* 8016B024 00167F84 C0 22 A0 98 */ lfs f1, lbl_805ABDB8@sda21(r2) +/* 8016B028 00167F88 EC 9B 06 B2 */ fmuls f4, f27, f26 +/* 8016B02C 00167F8C D0 5E 00 00 */ stfs f2, 0(r30) +/* 8016B030 00167F90 EC 59 06 B2 */ fmuls f2, f25, f26 +/* 8016B034 00167F94 EC C1 D0 28 */ fsubs f6, f1, f26 +/* 8016B038 00167F98 80 61 01 0C */ lwz r3, 0x10c(r1) +/* 8016B03C 00167F9C 80 01 01 10 */ lwz r0, 0x110(r1) +/* 8016B040 00167FA0 90 7E 00 04 */ stw r3, 4(r30) +/* 8016B044 00167FA4 90 1E 00 08 */ stw r0, 8(r30) +/* 8016B048 00167FA8 80 01 01 14 */ lwz r0, 0x114(r1) +/* 8016B04C 00167FAC 90 1E 00 0C */ stw r0, 0xc(r30) +/* 8016B050 00167FB0 C0 3D 00 00 */ lfs f1, 0(r29) +/* 8016B054 00167FB4 C0 BD 00 04 */ lfs f5, 4(r29) +/* 8016B058 00167FB8 C0 7D 00 08 */ lfs f3, 8(r29) +/* 8016B05C 00167FBC EC 01 01 BA */ fmadds f0, f1, f6, f0 +/* 8016B060 00167FC0 EC 85 21 BA */ fmadds f4, f5, f6, f4 +/* 8016B064 00167FC4 EC 23 11 BA */ fmadds f1, f3, f6, f2 +/* 8016B068 00167FC8 D0 1D 00 00 */ stfs f0, 0(r29) +/* 8016B06C 00167FCC D0 9D 00 04 */ stfs f4, 4(r29) +/* 8016B070 00167FD0 D0 3D 00 08 */ stfs f1, 8(r29) +/* 8016B074 00167FD4 48 00 01 28 */ b lbl_8016B19C +lbl_8016B078: +/* 8016B078 00167FD8 80 7F 07 68 */ lwz r3, 0x768(r31) +/* 8016B07C 00167FDC 4B F8 DD 89 */ bl GetBallRadius__10CMorphBallCFv +/* 8016B080 00167FE0 C0 62 A0 84 */ lfs f3, lbl_805ABDA4@sda21(r2) +/* 8016B084 00167FE4 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 8016B088 00167FE8 C0 42 A0 AC */ lfs f2, lbl_805ABDCC@sda21(r2) +/* 8016B08C 00167FEC C4 03 66 F4 */ lfsu f0, lbl_805A66F4@l(r3) +/* 8016B090 00167FF0 EC 83 10 7A */ fmadds f4, f3, f1, f2 +/* 8016B094 00167FF4 C0 3D 00 00 */ lfs f1, 0(r29) +/* 8016B098 00167FF8 C0 63 00 04 */ lfs f3, 4(r3) +/* 8016B09C 00167FFC C0 43 00 08 */ lfs f2, 8(r3) +/* 8016B0A0 00168000 EC 04 00 32 */ fmuls f0, f4, f0 +/* 8016B0A4 00168004 EC 64 00 F2 */ fmuls f3, f4, f3 +/* 8016B0A8 00168008 EC 44 00 B2 */ fmuls f2, f4, f2 +/* 8016B0AC 0016800C EC 01 00 2A */ fadds f0, f1, f0 +/* 8016B0B0 00168010 D0 1D 00 00 */ stfs f0, 0(r29) +/* 8016B0B4 00168014 C0 1D 00 04 */ lfs f0, 4(r29) +/* 8016B0B8 00168018 EC 00 18 2A */ fadds f0, f0, f3 +/* 8016B0BC 0016801C D0 1D 00 04 */ stfs f0, 4(r29) +/* 8016B0C0 00168020 C0 1D 00 08 */ lfs f0, 8(r29) +/* 8016B0C4 00168024 EC 00 10 2A */ fadds f0, f0, f2 +/* 8016B0C8 00168028 D0 1D 00 08 */ stfs f0, 8(r29) +/* 8016B0CC 0016802C 80 7F 07 68 */ lwz r3, 0x768(r31) +/* 8016B0D0 00168030 4B F8 DD 35 */ bl GetBallRadius__10CMorphBallCFv +/* 8016B0D4 00168034 C0 1B 00 3C */ lfs f0, 0x3c(r27) +/* 8016B0D8 00168038 7F 63 DB 78 */ mr r3, r27 +/* 8016B0DC 0016803C C0 5B 00 4C */ lfs f2, 0x4c(r27) +/* 8016B0E0 00168040 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 8016B0E4 00168044 C0 7B 00 5C */ lfs f3, 0x5c(r27) +/* 8016B0E8 00168048 EC 9F 00 B2 */ fmuls f4, f31, f2 +/* 8016B0EC 0016804C C0 5D 00 00 */ lfs f2, 0(r29) +/* 8016B0F0 00168050 EC 7F 00 F2 */ fmuls f3, f31, f3 +/* 8016B0F4 00168054 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8016B0F8 00168058 EC 81 01 32 */ fmuls f4, f1, f4 +/* 8016B0FC 0016805C EC 21 00 F2 */ fmuls f1, f1, f3 +/* 8016B100 00168060 EC 02 00 28 */ fsubs f0, f2, f0 +/* 8016B104 00168064 D0 1D 00 00 */ stfs f0, 0(r29) +/* 8016B108 00168068 C0 1D 00 04 */ lfs f0, 4(r29) +/* 8016B10C 0016806C EC 00 20 28 */ fsubs f0, f0, f4 +/* 8016B110 00168070 D0 1D 00 04 */ stfs f0, 4(r29) +/* 8016B114 00168074 C0 1D 00 08 */ lfs f0, 8(r29) +/* 8016B118 00168078 EC 00 08 28 */ fsubs f0, f0, f1 +/* 8016B11C 0016807C D0 1D 00 08 */ stfs f0, 8(r29) +/* 8016B120 00168080 4B EE 93 91 */ bl GetYaw__6CActorCFv +/* 8016B124 00168084 C0 42 A0 A4 */ lfs f2, lbl_805ABDC4@sda21(r2) +/* 8016B128 00168088 38 61 00 68 */ addi r3, r1, 0x68 +/* 8016B12C 0016808C C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016B130 00168090 38 81 00 14 */ addi r4, r1, 0x14 +/* 8016B134 00168094 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 8016B138 00168098 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 8016B13C 0016809C D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8016B140 001680A0 48 1A 5F F1 */ bl YRotation__11CQuaternionFRC9CRelAngle +/* 8016B144 001680A4 38 61 00 58 */ addi r3, r1, 0x58 +/* 8016B148 001680A8 38 81 00 10 */ addi r4, r1, 0x10 +/* 8016B14C 001680AC 48 1A 60 1D */ bl XRotation__11CQuaternionFRC9CRelAngle +/* 8016B150 001680B0 38 61 00 48 */ addi r3, r1, 0x48 +/* 8016B154 001680B4 38 81 00 0C */ addi r4, r1, 0xc +/* 8016B158 001680B8 48 1A 5F A1 */ bl ZRotation__11CQuaternionFRC9CRelAngle +/* 8016B15C 001680BC 38 61 00 38 */ addi r3, r1, 0x38 +/* 8016B160 001680C0 38 81 00 48 */ addi r4, r1, 0x48 +/* 8016B164 001680C4 38 A1 00 58 */ addi r5, r1, 0x58 +/* 8016B168 001680C8 48 1A 60 39 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 8016B16C 001680CC 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 8016B170 001680D0 38 81 00 38 */ addi r4, r1, 0x38 +/* 8016B174 001680D4 38 A1 00 68 */ addi r5, r1, 0x68 +/* 8016B178 001680D8 48 1A 60 29 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 8016B17C 001680DC C0 01 00 F8 */ lfs f0, 0xf8(r1) +/* 8016B180 001680E0 D0 1E 00 00 */ stfs f0, 0(r30) +/* 8016B184 001680E4 80 61 00 FC */ lwz r3, 0xfc(r1) +/* 8016B188 001680E8 80 01 01 00 */ lwz r0, 0x100(r1) +/* 8016B18C 001680EC 90 7E 00 04 */ stw r3, 4(r30) +/* 8016B190 001680F0 90 1E 00 08 */ stw r0, 8(r30) +/* 8016B194 001680F4 80 01 01 04 */ lwz r0, 0x104(r1) +/* 8016B198 001680F8 90 1E 00 0C */ stw r0, 0xc(r30) +lbl_8016B19C: +/* 8016B19C 001680FC E3 E1 03 58 */ psq_l f31, 856(r1), 0, qr0 +/* 8016B1A0 00168100 CB E1 03 50 */ lfd f31, 0x350(r1) +/* 8016B1A4 00168104 E3 C1 03 48 */ psq_l f30, 840(r1), 0, qr0 +/* 8016B1A8 00168108 CB C1 03 40 */ lfd f30, 0x340(r1) +/* 8016B1AC 0016810C E3 A1 03 38 */ psq_l f29, 824(r1), 0, qr0 +/* 8016B1B0 00168110 CB A1 03 30 */ lfd f29, 0x330(r1) +/* 8016B1B4 00168114 E3 81 03 28 */ psq_l f28, 808(r1), 0, qr0 +/* 8016B1B8 00168118 CB 81 03 20 */ lfd f28, 0x320(r1) +/* 8016B1BC 0016811C E3 61 03 18 */ psq_l f27, 792(r1), 0, qr0 +/* 8016B1C0 00168120 CB 61 03 10 */ lfd f27, 0x310(r1) +/* 8016B1C4 00168124 E3 41 03 08 */ psq_l f26, 776(r1), 0, qr0 +/* 8016B1C8 00168128 CB 41 03 00 */ lfd f26, 0x300(r1) +/* 8016B1CC 0016812C E3 21 02 F8 */ psq_l f25, 760(r1), 0, qr0 +/* 8016B1D0 00168130 CB 21 02 F0 */ lfd f25, 0x2f0(r1) +/* 8016B1D4 00168134 BB 61 02 DC */ lmw r27, 0x2dc(r1) +/* 8016B1D8 00168138 80 01 03 64 */ lwz r0, 0x364(r1) +/* 8016B1DC 0016813C 7C 08 03 A6 */ mtlr r0 +/* 8016B1E0 00168140 38 21 03 60 */ addi r1, r1, 0x360 +/* 8016B1E4 00168144 4E 80 00 20 */ blr + +.global sub_8016b1e8 +sub_8016b1e8: +/* 8016B1E8 00168148 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8016B1EC 0016814C 7C 08 02 A6 */ mflr r0 +/* 8016B1F0 00168150 90 01 00 34 */ stw r0, 0x34(r1) +/* 8016B1F4 00168154 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8016B1F8 00168158 7C DF 33 78 */ mr r31, r6 +/* 8016B1FC 0016815C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8016B200 00168160 7C BE 2B 78 */ mr r30, r5 +/* 8016B204 00168164 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8016B208 00168168 7C 9D 23 78 */ mr r29, r4 +/* 8016B20C 0016816C 93 81 00 20 */ stw r28, 0x20(r1) +/* 8016B210 00168170 7C 7C 1B 78 */ mr r28, r3 +/* 8016B214 00168174 38 9C 00 34 */ addi r4, r28, 0x34 +/* 8016B218 00168178 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 8016B21C 0016817C C0 23 00 50 */ lfs f1, 0x50(r3) +/* 8016B220 00168180 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 8016B224 00168184 38 61 00 08 */ addi r3, r1, 8 +/* 8016B228 00168188 D0 05 00 00 */ stfs f0, 0(r5) +/* 8016B22C 0016818C D0 25 00 04 */ stfs f1, 4(r5) +/* 8016B230 00168190 D0 45 00 08 */ stfs f2, 8(r5) +/* 8016B234 00168194 48 1A 6E F5 */ bl FromMatrix__11CQuaternionFRC12CTransform4f +/* 8016B238 00168198 C0 01 00 08 */ lfs f0, 8(r1) +/* 8016B23C 0016819C D0 1F 00 00 */ stfs f0, 0(r31) +/* 8016B240 001681A0 80 61 00 0C */ lwz r3, 0xc(r1) +/* 8016B244 001681A4 80 01 00 10 */ lwz r0, 0x10(r1) +/* 8016B248 001681A8 90 7F 00 04 */ stw r3, 4(r31) +/* 8016B24C 001681AC 90 1F 00 08 */ stw r0, 8(r31) +/* 8016B250 001681B0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8016B254 001681B4 90 1F 00 0C */ stw r0, 0xc(r31) +/* 8016B258 001681B8 80 7D 08 4C */ lwz r3, 0x84c(r29) +/* 8016B25C 001681BC A0 9C 07 B0 */ lhz r4, 0x7b0(r28) +/* 8016B260 001681C0 A0 03 00 08 */ lhz r0, 8(r3) +/* 8016B264 001681C4 7C 04 00 40 */ cmplw r4, r0 +/* 8016B268 001681C8 40 82 00 1C */ bne lbl_8016B284 +/* 8016B26C 001681CC 7F 83 E3 78 */ mr r3, r28 +/* 8016B270 001681D0 7F A4 EB 78 */ mr r4, r29 +/* 8016B274 001681D4 7F C5 F3 78 */ mr r5, r30 +/* 8016B278 001681D8 7F E6 FB 78 */ mr r6, r31 +/* 8016B27C 001681DC 4B FF F7 95 */ bl sub_8016aa10 +/* 8016B280 001681E0 48 00 00 18 */ b lbl_8016B298 +lbl_8016B284: +/* 8016B284 001681E4 7F 83 E3 78 */ mr r3, r28 +/* 8016B288 001681E8 7F A4 EB 78 */ mr r4, r29 +/* 8016B28C 001681EC 7F C5 F3 78 */ mr r5, r30 +/* 8016B290 001681F0 7F E6 FB 78 */ mr r6, r31 +/* 8016B294 001681F4 4B FF F5 2D */ bl sub_8016a7c0 +lbl_8016B298: +/* 8016B298 001681F8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8016B29C 001681FC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8016B2A0 00168200 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8016B2A4 00168204 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8016B2A8 00168208 83 81 00 20 */ lwz r28, 0x20(r1) +/* 8016B2AC 0016820C 7C 08 03 A6 */ mtlr r0 +/* 8016B2B0 00168210 38 21 00 30 */ addi r1, r1, 0x30 +/* 8016B2B4 00168214 4E 80 00 20 */ blr + +.global sub_8016b2b8 +sub_8016b2b8: +/* 8016B2B8 00168218 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8016B2BC 0016821C 7C 08 02 A6 */ mflr r0 +/* 8016B2C0 00168220 90 01 00 44 */ stw r0, 0x44(r1) +/* 8016B2C4 00168224 38 00 00 00 */ li r0, 0 +/* 8016B2C8 00168228 BF 41 00 28 */ stmw r26, 0x28(r1) +/* 8016B2CC 0016822C 7C 7A 1B 78 */ mr r26, r3 +/* 8016B2D0 00168230 7C 9B 23 78 */ mr r27, r4 +/* 8016B2D4 00168234 7C BC 2B 78 */ mr r28, r5 +/* 8016B2D8 00168238 90 01 00 08 */ stw r0, 8(r1) +/* 8016B2DC 0016823C 3B E1 00 0C */ addi r31, r1, 0xc +/* 8016B2E0 00168240 3B C0 FF FF */ li r30, -1 +/* 8016B2E4 00168244 3B A0 00 01 */ li r29, 1 +lbl_8016B2E8: +/* 8016B2E8 00168248 7F A4 EB 78 */ mr r4, r29 +/* 8016B2EC 0016824C 38 7A 05 6C */ addi r3, r26, 0x56c +/* 8016B2F0 00168250 48 00 72 31 */ bl sub_80172520 +/* 8016B2F4 00168254 88 03 00 0C */ lbz r0, 0xc(r3) +/* 8016B2F8 00168258 28 00 00 00 */ cmplwi r0, 0 +/* 8016B2FC 0016825C 41 82 00 24 */ beq lbl_8016B320 +/* 8016B300 00168260 80 01 00 08 */ lwz r0, 8(r1) +/* 8016B304 00168264 54 00 10 3A */ slwi r0, r0, 2 +/* 8016B308 00168268 7C 7F 02 15 */ add. r3, r31, r0 +/* 8016B30C 0016826C 41 82 00 08 */ beq lbl_8016B314 +/* 8016B310 00168270 93 A3 00 00 */ stw r29, 0(r3) +lbl_8016B314: +/* 8016B314 00168274 80 61 00 08 */ lwz r3, 8(r1) +/* 8016B318 00168278 38 03 00 01 */ addi r0, r3, 1 +/* 8016B31C 0016827C 90 01 00 08 */ stw r0, 8(r1) +lbl_8016B320: +/* 8016B320 00168280 3B BD 00 01 */ addi r29, r29, 1 +/* 8016B324 00168284 2C 1D 00 04 */ cmpwi r29, 4 +/* 8016B328 00168288 40 81 FF C0 */ ble lbl_8016B2E8 +/* 8016B32C 0016828C 80 81 00 08 */ lwz r4, 8(r1) +/* 8016B330 00168290 2C 04 00 00 */ cmpwi r4, 0 +/* 8016B334 00168294 41 82 00 64 */ beq lbl_8016B398 +/* 8016B338 00168298 80 7B 09 00 */ lwz r3, 0x900(r27) +/* 8016B33C 0016829C 38 A4 FF FF */ addi r5, r4, -1 +/* 8016B340 001682A0 38 80 00 00 */ li r4, 0 +/* 8016B344 001682A4 48 1A 72 51 */ bl Range__9CRandom16Fii +/* 8016B348 001682A8 54 60 10 3A */ slwi r0, r3, 2 +/* 8016B34C 001682AC 7C BF 00 2E */ lwzx r5, r31, r0 +/* 8016B350 001682B0 7C 1C 28 00 */ cmpw r28, r5 +/* 8016B354 001682B4 41 82 00 0C */ beq lbl_8016B360 +/* 8016B358 001682B8 7C BE 2B 78 */ mr r30, r5 +/* 8016B35C 001682BC 48 00 00 3C */ b lbl_8016B398 +lbl_8016B360: +/* 8016B360 001682C0 80 01 00 08 */ lwz r0, 8(r1) +/* 8016B364 001682C4 38 83 00 01 */ addi r4, r3, 1 +/* 8016B368 001682C8 7C 04 00 00 */ cmpw r4, r0 +/* 8016B36C 001682CC 40 80 00 10 */ bge lbl_8016B37C +/* 8016B370 001682D0 54 80 10 3A */ slwi r0, r4, 2 +/* 8016B374 001682D4 7F DF 00 2E */ lwzx r30, r31, r0 +/* 8016B378 001682D8 48 00 00 20 */ b lbl_8016B398 +lbl_8016B37C: +/* 8016B37C 001682DC 34 03 FF FF */ addic. r0, r3, -1 +/* 8016B380 001682E0 41 80 00 14 */ blt lbl_8016B394 +/* 8016B384 001682E4 38 03 FF FF */ addi r0, r3, -1 +/* 8016B388 001682E8 54 00 10 3A */ slwi r0, r0, 2 +/* 8016B38C 001682EC 7F DF 00 2E */ lwzx r30, r31, r0 +/* 8016B390 001682F0 48 00 00 08 */ b lbl_8016B398 +lbl_8016B394: +/* 8016B394 001682F4 7C BE 2B 78 */ mr r30, r5 +lbl_8016B398: +/* 8016B398 001682F8 80 C1 00 08 */ lwz r6, 8(r1) +/* 8016B39C 001682FC 7F C3 F3 78 */ mr r3, r30 +/* 8016B3A0 00168300 38 80 00 00 */ li r4, 0 +/* 8016B3A4 00168304 2C 06 00 00 */ cmpwi r6, 0 +/* 8016B3A8 00168308 40 81 00 40 */ ble lbl_8016B3E8 +/* 8016B3AC 0016830C 2C 06 00 08 */ cmpwi r6, 8 +/* 8016B3B0 00168310 38 A6 FF F8 */ addi r5, r6, -8 +/* 8016B3B4 00168314 40 81 00 20 */ ble lbl_8016B3D4 +/* 8016B3B8 00168318 38 05 00 07 */ addi r0, r5, 7 +/* 8016B3BC 0016831C 54 00 E8 FE */ srwi r0, r0, 3 +/* 8016B3C0 00168320 7C 09 03 A6 */ mtctr r0 +/* 8016B3C4 00168324 2C 05 00 00 */ cmpwi r5, 0 +/* 8016B3C8 00168328 40 81 00 0C */ ble lbl_8016B3D4 +lbl_8016B3CC: +/* 8016B3CC 0016832C 38 84 00 08 */ addi r4, r4, 8 +/* 8016B3D0 00168330 42 00 FF FC */ bdnz lbl_8016B3CC +lbl_8016B3D4: +/* 8016B3D4 00168334 7C 04 30 50 */ subf r0, r4, r6 +/* 8016B3D8 00168338 7C 09 03 A6 */ mtctr r0 +/* 8016B3DC 0016833C 7C 04 30 00 */ cmpw r4, r6 +/* 8016B3E0 00168340 40 80 00 08 */ bge lbl_8016B3E8 +lbl_8016B3E4: +/* 8016B3E4 00168344 42 00 00 00 */ bdnz lbl_8016B3E4 +lbl_8016B3E8: +/* 8016B3E8 00168348 BB 41 00 28 */ lmw r26, 0x28(r1) +/* 8016B3EC 0016834C 38 00 00 00 */ li r0, 0 +/* 8016B3F0 00168350 90 01 00 08 */ stw r0, 8(r1) +/* 8016B3F4 00168354 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8016B3F8 00168358 7C 08 03 A6 */ mtlr r0 +/* 8016B3FC 0016835C 38 21 00 40 */ addi r1, r1, 0x40 +/* 8016B400 00168360 4E 80 00 20 */ blr + +.global sub_8016b404 +sub_8016b404: +/* 8016B404 00168364 94 21 FB E0 */ stwu r1, -0x420(r1) +/* 8016B408 00168368 7C 08 02 A6 */ mflr r0 +/* 8016B40C 0016836C 38 A0 FF FF */ li r5, -1 +/* 8016B410 00168370 90 01 04 24 */ stw r0, 0x424(r1) +/* 8016B414 00168374 BF 01 04 00 */ stmw r24, 0x400(r1) +/* 8016B418 00168378 7C 7C 1B 78 */ mr r28, r3 +/* 8016B41C 0016837C 7C 9D 23 78 */ mr r29, r4 +/* 8016B420 00168380 4B FF FE 99 */ bl sub_8016b2b8 +/* 8016B424 00168384 7C 60 1B 78 */ mr r0, r3 +/* 8016B428 00168388 7F 83 E3 78 */ mr r3, r28 +/* 8016B42C 0016838C 7C 1A 03 78 */ mr r26, r0 +/* 8016B430 00168390 7F A4 EB 78 */ mr r4, r29 +/* 8016B434 00168394 7F 45 D3 78 */ mr r5, r26 +/* 8016B438 00168398 4B FF FE 81 */ bl sub_8016b2b8 +/* 8016B43C 0016839C 2C 1A FF FF */ cmpwi r26, -1 +/* 8016B440 001683A0 7C 7E 1B 78 */ mr r30, r3 +/* 8016B444 001683A4 41 82 03 D8 */ beq lbl_8016B81C +/* 8016B448 001683A8 2C 1E FF FF */ cmpwi r30, -1 +/* 8016B44C 001683AC 41 82 03 D0 */ beq lbl_8016B81C +/* 8016B450 001683B0 7F 44 D3 78 */ mr r4, r26 +/* 8016B454 001683B4 38 7C 05 6C */ addi r3, r28, 0x56c +/* 8016B458 001683B8 48 00 70 C9 */ bl sub_80172520 +/* 8016B45C 001683BC 80 E3 00 08 */ lwz r7, 8(r3) +/* 8016B460 001683C0 38 00 00 01 */ li r0, 1 +/* 8016B464 001683C4 80 C3 00 04 */ lwz r6, 4(r3) +/* 8016B468 001683C8 38 81 00 8C */ addi r4, r1, 0x8c +/* 8016B46C 001683CC 80 A3 00 00 */ lwz r5, 0(r3) +/* 8016B470 001683D0 38 61 01 5C */ addi r3, r1, 0x15c +/* 8016B474 001683D4 90 A1 00 8C */ stw r5, 0x8c(r1) +/* 8016B478 001683D8 90 C1 00 90 */ stw r6, 0x90(r1) +/* 8016B47C 001683DC C0 1C 07 E8 */ lfs f0, 0x7e8(r28) +/* 8016B480 001683E0 D0 01 00 94 */ stfs f0, 0x94(r1) +/* 8016B484 001683E4 C0 1C 07 EC */ lfs f0, 0x7ec(r28) +/* 8016B488 001683E8 D0 01 00 98 */ stfs f0, 0x98(r1) +/* 8016B48C 001683EC C0 1C 07 F0 */ lfs f0, 0x7f0(r28) +/* 8016B490 001683F0 D0 01 00 9C */ stfs f0, 0x9c(r1) +/* 8016B494 001683F4 98 01 00 A0 */ stb r0, 0xa0(r1) +/* 8016B498 001683F8 90 E1 00 A4 */ stw r7, 0xa4(r1) +/* 8016B49C 001683FC 4B FA B6 B9 */ bl __ct__10CModelDataFRC8CAnimRes +/* 8016B4A0 00168400 93 5C 07 CC */ stw r26, 0x7cc(r28) +/* 8016B4A4 00168404 38 61 02 D4 */ addi r3, r1, 0x2d4 +/* 8016B4A8 00168408 38 9C 05 6C */ addi r4, r28, 0x56c +/* 8016B4AC 0016840C 48 00 03 85 */ bl sub_8016b830 +/* 8016B4B0 00168410 88 01 03 FC */ lbz r0, 0x3fc(r1) +/* 8016B4B4 00168414 38 60 00 00 */ li r3, 0 +/* 8016B4B8 00168418 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8016B4BC 0016841C 3C 60 80 3D */ lis r3, lbl_803D051C@ha +/* 8016B4C0 00168420 98 01 03 FC */ stb r0, 0x3fc(r1) +/* 8016B4C4 00168424 38 63 05 1C */ addi r3, r3, lbl_803D051C@l +/* 8016B4C8 00168428 C0 02 A0 84 */ lfs f0, lbl_805ABDA4@sda21(r2) +/* 8016B4CC 0016842C 7F A4 EB 78 */ mr r4, r29 +/* 8016B4D0 00168430 80 1C 07 CC */ lwz r0, 0x7cc(r28) +/* 8016B4D4 00168434 54 00 10 3A */ slwi r0, r0, 2 +/* 8016B4D8 00168438 7C 23 04 2E */ lfsx f1, r3, r0 +/* 8016B4DC 0016843C EC 00 00 72 */ fmuls f0, f0, f1 +/* 8016B4E0 00168440 D0 21 03 B4 */ stfs f1, 0x3b4(r1) +/* 8016B4E4 00168444 D0 01 03 B8 */ stfs f0, 0x3b8(r1) +/* 8016B4E8 00168448 80 7C 00 64 */ lwz r3, 0x64(r28) +/* 8016B4EC 0016844C 80 63 00 10 */ lwz r3, 0x10(r3) +/* 8016B4F0 00168450 38 63 01 20 */ addi r3, r3, 0x120 +/* 8016B4F4 00168454 4B F4 C8 3D */ bl DeleteAllLights__17CParticleDatabaseCFR13CStateManager +/* 8016B4F8 00168458 7F 83 E3 78 */ mr r3, r28 +/* 8016B4FC 0016845C 38 81 01 5C */ addi r4, r1, 0x15c +/* 8016B500 00168460 4B EE 9B 31 */ bl SetModelData__6CActorFRC10CModelData +/* 8016B504 00168464 C0 01 03 B4 */ lfs f0, 0x3b4(r1) +/* 8016B508 00168468 7F 83 E3 78 */ mr r3, r28 +/* 8016B50C 0016846C 7F 84 E3 78 */ mr r4, r28 +/* 8016B510 00168470 D0 1C 07 FC */ stfs f0, 0x7fc(r28) +/* 8016B514 00168474 D0 1C 07 F8 */ stfs f0, 0x7f8(r28) +/* 8016B518 00168478 C0 1C 07 E8 */ lfs f0, 0x7e8(r28) +/* 8016B51C 0016847C D0 1C 07 DC */ stfs f0, 0x7dc(r28) +/* 8016B520 00168480 C0 1C 07 EC */ lfs f0, 0x7ec(r28) +/* 8016B524 00168484 D0 1C 07 E0 */ stfs f0, 0x7e0(r28) +/* 8016B528 00168488 C0 1C 07 F0 */ lfs f0, 0x7f0(r28) +/* 8016B52C 0016848C D0 1C 07 E4 */ stfs f0, 0x7e4(r28) +/* 8016B530 00168490 C0 1C 07 DC */ lfs f0, 0x7dc(r28) +/* 8016B534 00168494 D0 1C 07 D0 */ stfs f0, 0x7d0(r28) +/* 8016B538 00168498 C0 1C 07 E0 */ lfs f0, 0x7e0(r28) +/* 8016B53C 0016849C D0 1C 07 D4 */ stfs f0, 0x7d4(r28) +/* 8016B540 001684A0 C0 1C 07 E4 */ lfs f0, 0x7e4(r28) +/* 8016B544 001684A4 D0 1C 07 D8 */ stfs f0, 0x7d8(r28) +/* 8016B548 001684A8 48 00 0E 61 */ bl sub_8016c3a8 +/* 8016B54C 001684AC 88 1C 09 BF */ lbz r0, 0x9bf(r28) +/* 8016B550 001684B0 38 60 00 01 */ li r3, 1 +/* 8016B554 001684B4 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 8016B558 001684B8 98 1C 09 BF */ stb r0, 0x9bf(r28) +/* 8016B55C 001684BC 80 7C 04 50 */ lwz r3, 0x450(r28) +/* 8016B560 001684C0 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 8016B564 001684C4 2C 00 00 05 */ cmpwi r0, 5 +/* 8016B568 001684C8 41 82 00 10 */ beq lbl_8016B578 +/* 8016B56C 001684CC 38 63 02 A4 */ addi r3, r3, 0x2a4 +/* 8016B570 001684D0 38 80 00 05 */ li r4, 5 +/* 8016B574 001684D4 4B FC 8B 69 */ bl SetState__14CBodyStateInfoFQ23pas15EAnimationState +lbl_8016B578: +/* 8016B578 001684D8 7F C4 F3 78 */ mr r4, r30 +/* 8016B57C 001684DC 38 7C 05 6C */ addi r3, r28, 0x56c +/* 8016B580 001684E0 48 00 6F A1 */ bl sub_80172520 +/* 8016B584 001684E4 7C 7B 1B 78 */ mr r27, r3 +/* 8016B588 001684E8 38 61 01 A8 */ addi r3, r1, 0x1a8 +/* 8016B58C 001684EC 38 81 02 D4 */ addi r4, r1, 0x2d4 +/* 8016B590 001684F0 48 00 02 A1 */ bl sub_8016b830 +/* 8016B594 001684F4 3C 60 80 3D */ lis r3, lbl_803D051C@ha +/* 8016B598 001684F8 57 C0 10 3A */ slwi r0, r30, 2 +/* 8016B59C 001684FC 38 63 05 1C */ addi r3, r3, lbl_803D051C@l +/* 8016B5A0 00168500 C0 02 A0 84 */ lfs f0, lbl_805ABDA4@sda21(r2) +/* 8016B5A4 00168504 7C 23 04 2E */ lfsx f1, r3, r0 +/* 8016B5A8 00168508 38 00 00 01 */ li r0, 1 +/* 8016B5AC 0016850C 38 61 01 10 */ addi r3, r1, 0x110 +/* 8016B5B0 00168510 38 81 00 70 */ addi r4, r1, 0x70 +/* 8016B5B4 00168514 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8016B5B8 00168518 D0 21 02 88 */ stfs f1, 0x288(r1) +/* 8016B5BC 0016851C D0 01 02 8C */ stfs f0, 0x28c(r1) +/* 8016B5C0 00168520 80 FB 00 08 */ lwz r7, 8(r27) +/* 8016B5C4 00168524 80 DB 00 04 */ lwz r6, 4(r27) +/* 8016B5C8 00168528 80 BB 00 00 */ lwz r5, 0(r27) +/* 8016B5CC 0016852C 90 A1 00 70 */ stw r5, 0x70(r1) +/* 8016B5D0 00168530 90 C1 00 74 */ stw r6, 0x74(r1) +/* 8016B5D4 00168534 C0 1C 07 E8 */ lfs f0, 0x7e8(r28) +/* 8016B5D8 00168538 D0 01 00 78 */ stfs f0, 0x78(r1) +/* 8016B5DC 0016853C C0 1C 07 EC */ lfs f0, 0x7ec(r28) +/* 8016B5E0 00168540 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 8016B5E4 00168544 C0 1C 07 F0 */ lfs f0, 0x7f0(r28) +/* 8016B5E8 00168548 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 8016B5EC 0016854C 98 01 00 84 */ stb r0, 0x84(r1) +/* 8016B5F0 00168550 90 E1 00 88 */ stw r7, 0x88(r1) +/* 8016B5F4 00168554 4B FA B5 61 */ bl __ct__10CModelDataFRC8CAnimRes +/* 8016B5F8 00168558 7F 83 E3 78 */ mr r3, r28 +/* 8016B5FC 0016855C 7F A5 EB 78 */ mr r5, r29 +/* 8016B600 00168560 38 80 00 07 */ li r4, 7 +/* 8016B604 00168564 38 C0 FF FF */ li r6, -1 +/* 8016B608 00168568 4B EE 5A B9 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 8016B60C 0016856C 3C 60 80 3D */ lis r3, lbl_803D0550@ha +/* 8016B610 00168570 3B 60 00 00 */ li r27, 0 +/* 8016B614 00168574 38 63 05 50 */ addi r3, r3, lbl_803D0550@l +/* 8016B618 00168578 3B 20 00 00 */ li r25, 0 +/* 8016B61C 0016857C 38 83 00 B3 */ addi r4, r3, 0xb3 +/* 8016B620 00168580 3B 00 00 00 */ li r24, 0 +/* 8016B624 00168584 38 60 09 C8 */ li r3, 0x9c8 +/* 8016B628 00168588 38 A0 00 00 */ li r5, 0 +/* 8016B62C 0016858C 48 1A A2 41 */ bl __nw__FUlPCcPCc +/* 8016B630 00168590 7C 7F 1B 79 */ or. r31, r3, r3 +/* 8016B634 00168594 41 82 00 C0 */ beq lbl_8016B6F4 +/* 8016B638 00168598 A0 1C 00 08 */ lhz r0, 8(r28) +/* 8016B63C 0016859C 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 8016B640 001685A0 38 9C 09 54 */ addi r4, r28, 0x954 +/* 8016B644 001685A4 B0 01 00 20 */ sth r0, 0x20(r1) +/* 8016B648 001685A8 B0 01 00 24 */ sth r0, 0x24(r1) +/* 8016B64C 001685AC 4B F5 9F D1 */ bl __ct__16CActorParametersFRC16CActorParameters +/* 8016B650 001685B0 80 FC 00 0C */ lwz r7, 0xc(r28) +/* 8016B654 001685B4 38 61 00 58 */ addi r3, r1, 0x58 +/* 8016B658 001685B8 38 81 00 3C */ addi r4, r1, 0x3c +/* 8016B65C 001685BC 38 BC 00 20 */ addi r5, r28, 0x20 +/* 8016B660 001685C0 90 E1 00 44 */ stw r7, 0x44(r1) +/* 8016B664 001685C4 38 C1 00 44 */ addi r6, r1, 0x44 +/* 8016B668 001685C8 3B 60 00 01 */ li r27, 1 +/* 8016B66C 001685CC 80 1C 00 04 */ lwz r0, 4(r28) +/* 8016B670 001685D0 90 E1 00 40 */ stw r7, 0x40(r1) +/* 8016B674 001685D4 90 01 00 38 */ stw r0, 0x38(r1) +/* 8016B678 001685D8 90 01 00 3C */ stw r0, 0x3c(r1) +/* 8016B67C 001685DC 4B EE 5E 09 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 8016B680 001685E0 3C 60 80 3D */ lis r3, lbl_803D0550@ha +/* 8016B684 001685E4 83 5C 03 FC */ lwz r26, 0x3fc(r28) +/* 8016B688 001685E8 38 83 05 50 */ addi r4, r3, lbl_803D0550@l +/* 8016B68C 001685EC 38 61 00 48 */ addi r3, r1, 0x48 +/* 8016B690 001685F0 38 84 00 BA */ addi r4, r4, 0xba +/* 8016B694 001685F4 3B 20 00 01 */ li r25, 1 +/* 8016B698 001685F8 4B E9 96 21 */ bl string_l__4rstlFPCc +/* 8016B69C 001685FC 7F A4 EB 78 */ mr r4, r29 +/* 8016B6A0 00168600 38 61 00 18 */ addi r3, r1, 0x18 +/* 8016B6A4 00168604 3B 00 00 01 */ li r24, 1 +/* 8016B6A8 00168608 4B EE 1A 35 */ bl AllocateUniqueId__13CStateManagerFv +/* 8016B6AC 0016860C A0 61 00 18 */ lhz r3, 0x18(r1) +/* 8016B6B0 00168610 38 A1 00 A8 */ addi r5, r1, 0xa8 +/* 8016B6B4 00168614 39 21 01 A8 */ addi r9, r1, 0x1a8 +/* 8016B6B8 00168618 38 01 00 24 */ addi r0, r1, 0x24 +/* 8016B6BC 0016861C B0 61 00 1C */ sth r3, 0x1c(r1) +/* 8016B6C0 00168620 7F E3 FB 78 */ mr r3, r31 +/* 8016B6C4 00168624 7F 46 D3 78 */ mr r6, r26 +/* 8016B6C8 00168628 38 81 00 1C */ addi r4, r1, 0x1c +/* 8016B6CC 0016862C 90 A1 00 08 */ stw r5, 8(r1) +/* 8016B6D0 00168630 38 A1 00 48 */ addi r5, r1, 0x48 +/* 8016B6D4 00168634 38 E1 00 58 */ addi r7, r1, 0x58 +/* 8016B6D8 00168638 39 1C 00 34 */ addi r8, r28, 0x34 +/* 8016B6DC 0016863C 91 21 00 0C */ stw r9, 0xc(r1) +/* 8016B6E0 00168640 39 21 01 10 */ addi r9, r1, 0x110 +/* 8016B6E4 00168644 39 5C 08 1C */ addi r10, r28, 0x81c +/* 8016B6E8 00168648 90 01 00 10 */ stw r0, 0x10(r1) +/* 8016B6EC 0016864C 48 00 67 7D */ bl "__ct__8CMetroidF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersRC12CMetroidData" +/* 8016B6F0 00168650 7C 7F 1B 78 */ mr r31, r3 +lbl_8016B6F4: +/* 8016B6F4 00168654 7F 00 07 75 */ extsb. r0, r24 +/* 8016B6F8 00168658 41 82 00 0C */ beq lbl_8016B704 +/* 8016B6FC 0016865C 38 61 00 48 */ addi r3, r1, 0x48 +/* 8016B700 00168660 48 1D 23 E1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8016B704: +/* 8016B704 00168664 7F 20 07 75 */ extsb. r0, r25 +/* 8016B708 00168668 41 82 00 44 */ beq lbl_8016B74C +/* 8016B70C 0016866C 80 01 00 60 */ lwz r0, 0x60(r1) +/* 8016B710 00168670 80 61 00 68 */ lwz r3, 0x68(r1) +/* 8016B714 00168674 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8016B718 00168678 90 61 00 2C */ stw r3, 0x2c(r1) +/* 8016B71C 0016867C 7C 64 1B 78 */ mr r4, r3 +/* 8016B720 00168680 7C 03 02 14 */ add r0, r3, r0 +/* 8016B724 00168684 90 61 00 28 */ stw r3, 0x28(r1) +/* 8016B728 00168688 90 01 00 34 */ stw r0, 0x34(r1) +/* 8016B72C 0016868C 90 01 00 30 */ stw r0, 0x30(r1) +/* 8016B730 00168690 48 00 00 08 */ b lbl_8016B738 +lbl_8016B734: +/* 8016B734 00168694 38 84 00 0C */ addi r4, r4, 0xc +lbl_8016B738: +/* 8016B738 00168698 7C 04 00 40 */ cmplw r4, r0 +/* 8016B73C 0016869C 40 82 FF F8 */ bne lbl_8016B734 +/* 8016B740 001686A0 28 03 00 00 */ cmplwi r3, 0 +/* 8016B744 001686A4 41 82 00 08 */ beq lbl_8016B74C +/* 8016B748 001686A8 48 1A A1 E9 */ bl Free__7CMemoryFPCv +lbl_8016B74C: +/* 8016B74C 001686AC 7F 60 07 75 */ extsb. r0, r27 +/* 8016B750 001686B0 41 82 00 10 */ beq lbl_8016B760 +/* 8016B754 001686B4 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 8016B758 001686B8 38 80 FF FF */ li r4, -1 +/* 8016B75C 001686BC 4B F9 AE AD */ bl __dt__16CActorParametersFv +lbl_8016B760: +/* 8016B760 001686C0 28 1F 00 00 */ cmplwi r31, 0 +/* 8016B764 001686C4 41 82 00 88 */ beq lbl_8016B7EC +/* 8016B768 001686C8 7F A3 EB 78 */ mr r3, r29 +/* 8016B76C 001686CC 7F E4 FB 78 */ mr r4, r31 +/* 8016B770 001686D0 4B EE 15 85 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 8016B774 001686D4 7F 83 E3 78 */ mr r3, r28 +/* 8016B778 001686D8 7F E4 FB 78 */ mr r4, r31 +/* 8016B77C 001686DC 48 00 0C 2D */ bl sub_8016c3a8 +/* 8016B780 001686E0 C0 21 02 88 */ lfs f1, 0x288(r1) +/* 8016B784 001686E4 7F E3 FB 78 */ mr r3, r31 +/* 8016B788 001686E8 7F A4 EB 78 */ mr r4, r29 +/* 8016B78C 001686EC 48 00 25 7D */ bl sub_8016dd08 +/* 8016B790 001686F0 93 DF 07 CC */ stw r30, 0x7cc(r31) +/* 8016B794 001686F4 38 60 00 01 */ li r3, 1 +/* 8016B798 001686F8 88 1F 09 BF */ lbz r0, 0x9bf(r31) +/* 8016B79C 001686FC 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 8016B7A0 00168700 98 1F 09 BF */ stb r0, 0x9bf(r31) +/* 8016B7A4 00168704 C0 1C 07 E8 */ lfs f0, 0x7e8(r28) +/* 8016B7A8 00168708 D0 1F 07 DC */ stfs f0, 0x7dc(r31) +/* 8016B7AC 0016870C C0 1C 07 EC */ lfs f0, 0x7ec(r28) +/* 8016B7B0 00168710 D0 1F 07 E0 */ stfs f0, 0x7e0(r31) +/* 8016B7B4 00168714 C0 1C 07 F0 */ lfs f0, 0x7f0(r28) +/* 8016B7B8 00168718 D0 1F 07 E4 */ stfs f0, 0x7e4(r31) +/* 8016B7BC 0016871C C0 1F 07 DC */ lfs f0, 0x7dc(r31) +/* 8016B7C0 00168720 D0 1F 07 D0 */ stfs f0, 0x7d0(r31) +/* 8016B7C4 00168724 C0 1F 07 E0 */ lfs f0, 0x7e0(r31) +/* 8016B7C8 00168728 D0 1F 07 D4 */ stfs f0, 0x7d4(r31) +/* 8016B7CC 0016872C C0 1F 07 E4 */ lfs f0, 0x7e4(r31) +/* 8016B7D0 00168730 D0 1F 07 D8 */ stfs f0, 0x7d8(r31) +/* 8016B7D4 00168734 88 1F 09 BF */ lbz r0, 0x9bf(r31) +/* 8016B7D8 00168738 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8016B7DC 0016873C 98 1F 09 BF */ stb r0, 0x9bf(r31) +/* 8016B7E0 00168740 88 7C 09 BE */ lbz r3, 0x9be(r28) +/* 8016B7E4 00168744 38 03 00 01 */ addi r0, r3, 1 +/* 8016B7E8 00168748 98 1C 09 BE */ stb r0, 0x9be(r28) +lbl_8016B7EC: +/* 8016B7EC 0016874C 38 61 01 10 */ addi r3, r1, 0x110 +/* 8016B7F0 00168750 38 80 FF FF */ li r4, -1 +/* 8016B7F4 00168754 4B FA B2 59 */ bl __dt__10CModelDataFv +/* 8016B7F8 00168758 38 61 01 A8 */ addi r3, r1, 0x1a8 +/* 8016B7FC 0016875C 38 80 FF FF */ li r4, -1 +/* 8016B800 00168760 4B F6 45 19 */ bl sub_800cfd18 +/* 8016B804 00168764 38 61 02 D4 */ addi r3, r1, 0x2d4 +/* 8016B808 00168768 38 80 FF FF */ li r4, -1 +/* 8016B80C 0016876C 4B F6 45 0D */ bl sub_800cfd18 +/* 8016B810 00168770 38 61 01 5C */ addi r3, r1, 0x15c +/* 8016B814 00168774 38 80 FF FF */ li r4, -1 +/* 8016B818 00168778 4B FA B2 35 */ bl __dt__10CModelDataFv +lbl_8016B81C: +/* 8016B81C 0016877C BB 01 04 00 */ lmw r24, 0x400(r1) +/* 8016B820 00168780 80 01 04 24 */ lwz r0, 0x424(r1) +/* 8016B824 00168784 7C 08 03 A6 */ mtlr r0 +/* 8016B828 00168788 38 21 04 20 */ addi r1, r1, 0x420 +/* 8016B82C 0016878C 4E 80 00 20 */ blr + +.global sub_8016b830 +sub_8016b830: +/* 8016B830 00168790 80 A4 00 00 */ lwz r5, 0(r4) +/* 8016B834 00168794 80 04 00 04 */ lwz r0, 4(r4) +/* 8016B838 00168798 90 A3 00 00 */ stw r5, 0(r3) +/* 8016B83C 0016879C 90 03 00 04 */ stw r0, 4(r3) +/* 8016B840 001687A0 80 A4 00 08 */ lwz r5, 8(r4) +/* 8016B844 001687A4 80 04 00 0C */ lwz r0, 0xc(r4) +/* 8016B848 001687A8 90 A3 00 08 */ stw r5, 8(r3) +/* 8016B84C 001687AC 90 03 00 0C */ stw r0, 0xc(r3) +/* 8016B850 001687B0 80 A4 00 10 */ lwz r5, 0x10(r4) +/* 8016B854 001687B4 80 04 00 14 */ lwz r0, 0x14(r4) +/* 8016B858 001687B8 90 A3 00 10 */ stw r5, 0x10(r3) +/* 8016B85C 001687BC 90 03 00 14 */ stw r0, 0x14(r3) +/* 8016B860 001687C0 80 A4 00 18 */ lwz r5, 0x18(r4) +/* 8016B864 001687C4 80 04 00 1C */ lwz r0, 0x1c(r4) +/* 8016B868 001687C8 90 A3 00 18 */ stw r5, 0x18(r3) +/* 8016B86C 001687CC 90 03 00 1C */ stw r0, 0x1c(r3) +/* 8016B870 001687D0 80 A4 00 20 */ lwz r5, 0x20(r4) +/* 8016B874 001687D4 80 04 00 24 */ lwz r0, 0x24(r4) +/* 8016B878 001687D8 90 A3 00 20 */ stw r5, 0x20(r3) +/* 8016B87C 001687DC 90 03 00 24 */ stw r0, 0x24(r3) +/* 8016B880 001687E0 80 A4 00 28 */ lwz r5, 0x28(r4) +/* 8016B884 001687E4 80 04 00 2C */ lwz r0, 0x2c(r4) +/* 8016B888 001687E8 90 A3 00 28 */ stw r5, 0x28(r3) +/* 8016B88C 001687EC 90 03 00 2C */ stw r0, 0x2c(r3) +/* 8016B890 001687F0 80 A4 00 30 */ lwz r5, 0x30(r4) +/* 8016B894 001687F4 80 04 00 34 */ lwz r0, 0x34(r4) +/* 8016B898 001687F8 90 A3 00 30 */ stw r5, 0x30(r3) +/* 8016B89C 001687FC 90 03 00 34 */ stw r0, 0x34(r3) +/* 8016B8A0 00168800 80 04 00 38 */ lwz r0, 0x38(r4) +/* 8016B8A4 00168804 90 03 00 38 */ stw r0, 0x38(r3) +/* 8016B8A8 00168808 80 A4 00 3C */ lwz r5, 0x3c(r4) +/* 8016B8AC 0016880C 80 04 00 40 */ lwz r0, 0x40(r4) +/* 8016B8B0 00168810 90 A3 00 3C */ stw r5, 0x3c(r3) +/* 8016B8B4 00168814 90 03 00 40 */ stw r0, 0x40(r3) +/* 8016B8B8 00168818 80 A4 00 44 */ lwz r5, 0x44(r4) +/* 8016B8BC 0016881C 80 04 00 48 */ lwz r0, 0x48(r4) +/* 8016B8C0 00168820 90 A3 00 44 */ stw r5, 0x44(r3) +/* 8016B8C4 00168824 90 03 00 48 */ stw r0, 0x48(r3) +/* 8016B8C8 00168828 80 A4 00 4C */ lwz r5, 0x4c(r4) +/* 8016B8CC 0016882C 80 04 00 50 */ lwz r0, 0x50(r4) +/* 8016B8D0 00168830 90 A3 00 4C */ stw r5, 0x4c(r3) +/* 8016B8D4 00168834 90 03 00 50 */ stw r0, 0x50(r3) +/* 8016B8D8 00168838 80 A4 00 54 */ lwz r5, 0x54(r4) +/* 8016B8DC 0016883C 80 04 00 58 */ lwz r0, 0x58(r4) +/* 8016B8E0 00168840 90 A3 00 54 */ stw r5, 0x54(r3) +/* 8016B8E4 00168844 90 03 00 58 */ stw r0, 0x58(r3) +/* 8016B8E8 00168848 80 04 00 5C */ lwz r0, 0x5c(r4) +/* 8016B8EC 0016884C 90 03 00 5C */ stw r0, 0x5c(r3) +/* 8016B8F0 00168850 80 04 00 60 */ lwz r0, 0x60(r4) +/* 8016B8F4 00168854 90 03 00 60 */ stw r0, 0x60(r3) +/* 8016B8F8 00168858 80 04 00 64 */ lwz r0, 0x64(r4) +/* 8016B8FC 0016885C 90 03 00 64 */ stw r0, 0x64(r3) +/* 8016B900 00168860 80 A4 00 68 */ lwz r5, 0x68(r4) +/* 8016B904 00168864 80 04 00 6C */ lwz r0, 0x6c(r4) +/* 8016B908 00168868 90 A3 00 68 */ stw r5, 0x68(r3) +/* 8016B90C 0016886C 90 03 00 6C */ stw r0, 0x6c(r3) +/* 8016B910 00168870 80 A4 00 70 */ lwz r5, 0x70(r4) +/* 8016B914 00168874 80 04 00 74 */ lwz r0, 0x74(r4) +/* 8016B918 00168878 90 A3 00 70 */ stw r5, 0x70(r3) +/* 8016B91C 0016887C 90 03 00 74 */ stw r0, 0x74(r3) +/* 8016B920 00168880 80 A4 00 78 */ lwz r5, 0x78(r4) +/* 8016B924 00168884 80 04 00 7C */ lwz r0, 0x7c(r4) +/* 8016B928 00168888 90 A3 00 78 */ stw r5, 0x78(r3) +/* 8016B92C 0016888C 90 03 00 7C */ stw r0, 0x7c(r3) +/* 8016B930 00168890 80 A4 00 80 */ lwz r5, 0x80(r4) +/* 8016B934 00168894 80 04 00 84 */ lwz r0, 0x84(r4) +/* 8016B938 00168898 90 A3 00 80 */ stw r5, 0x80(r3) +/* 8016B93C 0016889C 90 03 00 84 */ stw r0, 0x84(r3) +/* 8016B940 001688A0 80 A4 00 88 */ lwz r5, 0x88(r4) +/* 8016B944 001688A4 80 04 00 8C */ lwz r0, 0x8c(r4) +/* 8016B948 001688A8 90 A3 00 88 */ stw r5, 0x88(r3) +/* 8016B94C 001688AC 90 03 00 8C */ stw r0, 0x8c(r3) +/* 8016B950 001688B0 80 A4 00 90 */ lwz r5, 0x90(r4) +/* 8016B954 001688B4 80 04 00 94 */ lwz r0, 0x94(r4) +/* 8016B958 001688B8 90 A3 00 90 */ stw r5, 0x90(r3) +/* 8016B95C 001688BC 90 03 00 94 */ stw r0, 0x94(r3) +/* 8016B960 001688C0 80 A4 00 98 */ lwz r5, 0x98(r4) +/* 8016B964 001688C4 80 04 00 9C */ lwz r0, 0x9c(r4) +/* 8016B968 001688C8 90 A3 00 98 */ stw r5, 0x98(r3) +/* 8016B96C 001688CC 90 03 00 9C */ stw r0, 0x9c(r3) +/* 8016B970 001688D0 80 04 00 A0 */ lwz r0, 0xa0(r4) +/* 8016B974 001688D4 90 03 00 A0 */ stw r0, 0xa0(r3) +/* 8016B978 001688D8 80 A4 00 A4 */ lwz r5, 0xa4(r4) +/* 8016B97C 001688DC 80 04 00 A8 */ lwz r0, 0xa8(r4) +/* 8016B980 001688E0 90 A3 00 A4 */ stw r5, 0xa4(r3) +/* 8016B984 001688E4 90 03 00 A8 */ stw r0, 0xa8(r3) +/* 8016B988 001688E8 80 A4 00 AC */ lwz r5, 0xac(r4) +/* 8016B98C 001688EC 80 04 00 B0 */ lwz r0, 0xb0(r4) +/* 8016B990 001688F0 90 A3 00 AC */ stw r5, 0xac(r3) +/* 8016B994 001688F4 90 03 00 B0 */ stw r0, 0xb0(r3) +/* 8016B998 001688F8 80 A4 00 B4 */ lwz r5, 0xb4(r4) +/* 8016B99C 001688FC 80 04 00 B8 */ lwz r0, 0xb8(r4) +/* 8016B9A0 00168900 90 A3 00 B4 */ stw r5, 0xb4(r3) +/* 8016B9A4 00168904 90 03 00 B8 */ stw r0, 0xb8(r3) +/* 8016B9A8 00168908 80 A4 00 BC */ lwz r5, 0xbc(r4) +/* 8016B9AC 0016890C 80 04 00 C0 */ lwz r0, 0xc0(r4) +/* 8016B9B0 00168910 90 A3 00 BC */ stw r5, 0xbc(r3) +/* 8016B9B4 00168914 90 03 00 C0 */ stw r0, 0xc0(r3) +/* 8016B9B8 00168918 80 04 00 C4 */ lwz r0, 0xc4(r4) +/* 8016B9BC 0016891C 90 03 00 C4 */ stw r0, 0xc4(r3) +/* 8016B9C0 00168920 80 04 00 C8 */ lwz r0, 0xc8(r4) +/* 8016B9C4 00168924 90 03 00 C8 */ stw r0, 0xc8(r3) +/* 8016B9C8 00168928 80 04 00 CC */ lwz r0, 0xcc(r4) +/* 8016B9CC 0016892C 90 03 00 CC */ stw r0, 0xcc(r3) +/* 8016B9D0 00168930 C0 04 00 D0 */ lfs f0, 0xd0(r4) +/* 8016B9D4 00168934 D0 03 00 D0 */ stfs f0, 0xd0(r3) +/* 8016B9D8 00168938 C0 04 00 D4 */ lfs f0, 0xd4(r4) +/* 8016B9DC 0016893C D0 03 00 D4 */ stfs f0, 0xd4(r3) +/* 8016B9E0 00168940 C0 04 00 D8 */ lfs f0, 0xd8(r4) +/* 8016B9E4 00168944 D0 03 00 D8 */ stfs f0, 0xd8(r3) +/* 8016B9E8 00168948 C0 04 00 DC */ lfs f0, 0xdc(r4) +/* 8016B9EC 0016894C D0 03 00 DC */ stfs f0, 0xdc(r3) +/* 8016B9F0 00168950 C0 04 00 E0 */ lfs f0, 0xe0(r4) +/* 8016B9F4 00168954 D0 03 00 E0 */ stfs f0, 0xe0(r3) +/* 8016B9F8 00168958 C0 04 00 E4 */ lfs f0, 0xe4(r4) +/* 8016B9FC 0016895C D0 03 00 E4 */ stfs f0, 0xe4(r3) +/* 8016BA00 00168960 88 04 00 F4 */ lbz r0, 0xf4(r4) +/* 8016BA04 00168964 98 03 00 F4 */ stb r0, 0xf4(r3) +/* 8016BA08 00168968 88 04 00 F4 */ lbz r0, 0xf4(r4) +/* 8016BA0C 0016896C 28 00 00 00 */ cmplwi r0, 0 +/* 8016BA10 00168970 41 82 00 24 */ beq lbl_8016BA34 +/* 8016BA14 00168974 34 A3 00 E8 */ addic. r5, r3, 0xe8 +/* 8016BA18 00168978 41 82 00 1C */ beq lbl_8016BA34 +/* 8016BA1C 0016897C 80 04 00 E8 */ lwz r0, 0xe8(r4) +/* 8016BA20 00168980 90 05 00 00 */ stw r0, 0(r5) +/* 8016BA24 00168984 80 04 00 EC */ lwz r0, 0xec(r4) +/* 8016BA28 00168988 90 05 00 04 */ stw r0, 4(r5) +/* 8016BA2C 0016898C 80 04 00 F0 */ lwz r0, 0xf0(r4) +/* 8016BA30 00168990 90 05 00 08 */ stw r0, 8(r5) +lbl_8016BA34: +/* 8016BA34 00168994 88 04 01 04 */ lbz r0, 0x104(r4) +/* 8016BA38 00168998 98 03 01 04 */ stb r0, 0x104(r3) +/* 8016BA3C 0016899C 88 04 01 04 */ lbz r0, 0x104(r4) +/* 8016BA40 001689A0 28 00 00 00 */ cmplwi r0, 0 +/* 8016BA44 001689A4 41 82 00 24 */ beq lbl_8016BA68 +/* 8016BA48 001689A8 34 A3 00 F8 */ addic. r5, r3, 0xf8 +/* 8016BA4C 001689AC 41 82 00 1C */ beq lbl_8016BA68 +/* 8016BA50 001689B0 80 04 00 F8 */ lwz r0, 0xf8(r4) +/* 8016BA54 001689B4 90 05 00 00 */ stw r0, 0(r5) +/* 8016BA58 001689B8 80 04 00 FC */ lwz r0, 0xfc(r4) +/* 8016BA5C 001689BC 90 05 00 04 */ stw r0, 4(r5) +/* 8016BA60 001689C0 80 04 01 00 */ lwz r0, 0x100(r4) +/* 8016BA64 001689C4 90 05 00 08 */ stw r0, 8(r5) +lbl_8016BA68: +/* 8016BA68 001689C8 88 04 01 14 */ lbz r0, 0x114(r4) +/* 8016BA6C 001689CC 98 03 01 14 */ stb r0, 0x114(r3) +/* 8016BA70 001689D0 88 04 01 14 */ lbz r0, 0x114(r4) +/* 8016BA74 001689D4 28 00 00 00 */ cmplwi r0, 0 +/* 8016BA78 001689D8 41 82 00 24 */ beq lbl_8016BA9C +/* 8016BA7C 001689DC 34 A3 01 08 */ addic. r5, r3, 0x108 +/* 8016BA80 001689E0 41 82 00 1C */ beq lbl_8016BA9C +/* 8016BA84 001689E4 80 04 01 08 */ lwz r0, 0x108(r4) +/* 8016BA88 001689E8 90 05 00 00 */ stw r0, 0(r5) +/* 8016BA8C 001689EC 80 04 01 0C */ lwz r0, 0x10c(r4) +/* 8016BA90 001689F0 90 05 00 04 */ stw r0, 4(r5) +/* 8016BA94 001689F4 80 04 01 10 */ lwz r0, 0x110(r4) +/* 8016BA98 001689F8 90 05 00 08 */ stw r0, 8(r5) +lbl_8016BA9C: +/* 8016BA9C 001689FC 88 04 01 24 */ lbz r0, 0x124(r4) +/* 8016BAA0 00168A00 98 03 01 24 */ stb r0, 0x124(r3) +/* 8016BAA4 00168A04 88 04 01 24 */ lbz r0, 0x124(r4) +/* 8016BAA8 00168A08 28 00 00 00 */ cmplwi r0, 0 +/* 8016BAAC 00168A0C 41 82 00 24 */ beq lbl_8016BAD0 +/* 8016BAB0 00168A10 34 A3 01 18 */ addic. r5, r3, 0x118 +/* 8016BAB4 00168A14 41 82 00 1C */ beq lbl_8016BAD0 +/* 8016BAB8 00168A18 80 04 01 18 */ lwz r0, 0x118(r4) +/* 8016BABC 00168A1C 90 05 00 00 */ stw r0, 0(r5) +/* 8016BAC0 00168A20 80 04 01 1C */ lwz r0, 0x11c(r4) +/* 8016BAC4 00168A24 90 05 00 04 */ stw r0, 4(r5) +/* 8016BAC8 00168A28 80 04 01 20 */ lwz r0, 0x120(r4) +/* 8016BACC 00168A2C 90 05 00 08 */ stw r0, 8(r5) +lbl_8016BAD0: +/* 8016BAD0 00168A30 88 04 01 28 */ lbz r0, 0x128(r4) +/* 8016BAD4 00168A34 98 03 01 28 */ stb r0, 0x128(r3) +/* 8016BAD8 00168A38 4E 80 00 20 */ blr + +.global sub_8016badc +sub_8016badc: +/* 8016BADC 00168A3C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8016BAE0 00168A40 7C 08 02 A6 */ mflr r0 +/* 8016BAE4 00168A44 90 01 00 14 */ stw r0, 0x14(r1) +/* 8016BAE8 00168A48 80 03 03 FC */ lwz r0, 0x3fc(r3) +/* 8016BAEC 00168A4C 2C 00 00 02 */ cmpwi r0, 2 +/* 8016BAF0 00168A50 40 82 00 68 */ bne lbl_8016BB58 +/* 8016BAF4 00168A54 A0 83 09 BC */ lhz r4, 0x9bc(r3) +/* 8016BAF8 00168A58 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016BAFC 00168A5C 7C 04 00 40 */ cmplw r4, r0 +/* 8016BB00 00168A60 40 82 00 58 */ bne lbl_8016BB58 +/* 8016BB04 00168A64 88 03 09 BE */ lbz r0, 0x9be(r3) +/* 8016BB08 00168A68 28 00 00 00 */ cmplwi r0, 0 +/* 8016BB0C 00168A6C 40 82 00 4C */ bne lbl_8016BB58 +/* 8016BB10 00168A70 C0 63 07 F8 */ lfs f3, 0x7f8(r3) +/* 8016BB14 00168A74 C0 43 07 FC */ lfs f2, 0x7fc(r3) +/* 8016BB18 00168A78 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016BB1C 00168A7C EC 23 10 28 */ fsubs f1, f3, f2 +/* 8016BB20 00168A80 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8016BB24 00168A84 40 81 00 34 */ ble lbl_8016BB58 +/* 8016BB28 00168A88 C0 03 06 4C */ lfs f0, 0x64c(r3) +/* 8016BB2C 00168A8C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8016BB30 00168A90 40 80 00 28 */ bge lbl_8016BB58 +/* 8016BB34 00168A94 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 8016BB38 00168A98 4C 41 13 82 */ cror 2, 1, 2 +/* 8016BB3C 00168A9C 40 82 00 1C */ bne lbl_8016BB58 +/* 8016BB40 00168AA0 38 63 05 6C */ addi r3, r3, 0x56c +/* 8016BB44 00168AA4 48 00 6A 2D */ bl sub_80172570 +/* 8016BB48 00168AA8 7C 03 00 D0 */ neg r0, r3 +/* 8016BB4C 00168AAC 7C 00 1B 78 */ or r0, r0, r3 +/* 8016BB50 00168AB0 54 03 0F FE */ srwi r3, r0, 0x1f +/* 8016BB54 00168AB4 48 00 00 08 */ b lbl_8016BB5C +lbl_8016BB58: +/* 8016BB58 00168AB8 38 60 00 00 */ li r3, 0 +lbl_8016BB5C: +/* 8016BB5C 00168ABC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8016BB60 00168AC0 7C 08 03 A6 */ mtlr r0 +/* 8016BB64 00168AC4 38 21 00 10 */ addi r1, r1, 0x10 +/* 8016BB68 00168AC8 4E 80 00 20 */ blr + +.global sub_8016bb6c +sub_8016bb6c: +/* 8016BB6C 00168ACC 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 8016BB70 00168AD0 7C 08 02 A6 */ mflr r0 +/* 8016BB74 00168AD4 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 8016BB78 00168AD8 DB E1 00 C0 */ stfd f31, 0xc0(r1) +/* 8016BB7C 00168ADC F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 +/* 8016BB80 00168AE0 93 E1 00 BC */ stw r31, 0xbc(r1) +/* 8016BB84 00168AE4 3C C0 80 5A */ lis r6, skZero3f@ha +/* 8016BB88 00168AE8 3C A0 80 5A */ lis r5, lbl_805A6660@ha +/* 8016BB8C 00168AEC 38 E5 66 60 */ addi r7, r5, lbl_805A6660@l +/* 8016BB90 00168AF0 FF E0 08 90 */ fmr f31, f1 +/* 8016BB94 00168AF4 38 A6 66 A0 */ addi r5, r6, skZero3f@l +/* 8016BB98 00168AF8 C0 67 00 00 */ lfs f3, 0(r7) +/* 8016BB9C 00168AFC C0 C5 00 00 */ lfs f6, 0(r5) +/* 8016BBA0 00168B00 7C 7F 1B 78 */ mr r31, r3 +/* 8016BBA4 00168B04 C0 A5 00 04 */ lfs f5, 4(r5) +/* 8016BBA8 00168B08 C0 85 00 08 */ lfs f4, 8(r5) +/* 8016BBAC 00168B0C 38 A1 00 70 */ addi r5, r1, 0x70 +/* 8016BBB0 00168B10 C0 47 00 04 */ lfs f2, 4(r7) +/* 8016BBB4 00168B14 38 C1 00 60 */ addi r6, r1, 0x60 +/* 8016BBB8 00168B18 C0 27 00 08 */ lfs f1, 8(r7) +/* 8016BBBC 00168B1C C0 07 00 0C */ lfs f0, 0xc(r7) +/* 8016BBC0 00168B20 D0 C1 00 70 */ stfs f6, 0x70(r1) +/* 8016BBC4 00168B24 D0 A1 00 74 */ stfs f5, 0x74(r1) +/* 8016BBC8 00168B28 D0 81 00 78 */ stfs f4, 0x78(r1) +/* 8016BBCC 00168B2C D0 61 00 60 */ stfs f3, 0x60(r1) +/* 8016BBD0 00168B30 D0 41 00 64 */ stfs f2, 0x64(r1) +/* 8016BBD4 00168B34 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 8016BBD8 00168B38 D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 8016BBDC 00168B3C 4B FF F6 0D */ bl sub_8016b1e8 +/* 8016BBE0 00168B40 C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) +/* 8016BBE4 00168B44 38 61 00 24 */ addi r3, r1, 0x24 +/* 8016BBE8 00168B48 C0 41 00 74 */ lfs f2, 0x74(r1) +/* 8016BBEC 00168B4C 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8016BBF0 00168B50 C0 21 00 78 */ lfs f1, 0x78(r1) +/* 8016BBF4 00168B54 EC C0 F8 28 */ fsubs f6, f0, f31 +/* 8016BBF8 00168B58 C0 01 00 70 */ lfs f0, 0x70(r1) +/* 8016BBFC 00168B5C EC 82 07 F2 */ fmuls f4, f2, f31 +/* 8016BC00 00168B60 C0 BF 00 50 */ lfs f5, 0x50(r31) +/* 8016BC04 00168B64 EC 41 07 F2 */ fmuls f2, f1, f31 +/* 8016BC08 00168B68 C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 8016BC0C 00168B6C EC 00 07 F2 */ fmuls f0, f0, f31 +/* 8016BC10 00168B70 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 8016BC14 00168B74 EC 85 21 BA */ fmadds f4, f5, f6, f4 +/* 8016BC18 00168B78 EC 43 11 BA */ fmadds f2, f3, f6, f2 +/* 8016BC1C 00168B7C EC 01 01 BA */ fmadds f0, f1, f6, f0 +/* 8016BC20 00168B80 D0 81 00 58 */ stfs f4, 0x58(r1) +/* 8016BC24 00168B84 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 8016BC28 00168B88 D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 8016BC2C 00168B8C 48 1A 64 FD */ bl FromMatrix__11CQuaternionFRC12CTransform4f +/* 8016BC30 00168B90 FC 20 F8 90 */ fmr f1, f31 +/* 8016BC34 00168B94 38 61 00 34 */ addi r3, r1, 0x34 +/* 8016BC38 00168B98 38 81 00 24 */ addi r4, r1, 0x24 +/* 8016BC3C 00168B9C 38 A1 00 60 */ addi r5, r1, 0x60 +/* 8016BC40 00168BA0 48 1A 59 79 */ bl SlerpLocal__11CQuaternionFRC11CQuaternionRC11CQuaternionf +/* 8016BC44 00168BA4 C0 61 00 34 */ lfs f3, 0x34(r1) +/* 8016BC48 00168BA8 7F E3 FB 78 */ mr r3, r31 +/* 8016BC4C 00168BAC C0 41 00 38 */ lfs f2, 0x38(r1) +/* 8016BC50 00168BB0 38 81 00 54 */ addi r4, r1, 0x54 +/* 8016BC54 00168BB4 C0 21 00 3C */ lfs f1, 0x3c(r1) +/* 8016BC58 00168BB8 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 8016BC5C 00168BBC D0 61 00 44 */ stfs f3, 0x44(r1) +/* 8016BC60 00168BC0 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 8016BC64 00168BC4 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 8016BC68 00168BC8 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8016BC6C 00168BCC 4B EE 72 21 */ bl SetTranslation__6CActorFRC9CVector3f +/* 8016BC70 00168BD0 38 61 00 14 */ addi r3, r1, 0x14 +/* 8016BC74 00168BD4 38 81 00 44 */ addi r4, r1, 0x44 +/* 8016BC78 00168BD8 48 1A 57 25 */ bl BuildNormalized__11CQuaternionCFv +/* 8016BC7C 00168BDC C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8016BC80 00168BE0 38 61 00 7C */ addi r3, r1, 0x7c +/* 8016BC84 00168BE4 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 8016BC88 00168BE8 38 81 00 14 */ addi r4, r1, 0x14 +/* 8016BC8C 00168BEC C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8016BC90 00168BF0 38 A1 00 08 */ addi r5, r1, 8 +/* 8016BC94 00168BF4 D0 01 00 08 */ stfs f0, 8(r1) +/* 8016BC98 00168BF8 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 8016BC9C 00168BFC D0 41 00 10 */ stfs f2, 0x10(r1) +/* 8016BCA0 00168C00 48 1A 62 1D */ bl BuildTransform4f__11CQuaternionCFRC9CVector3f +/* 8016BCA4 00168C04 38 7F 00 34 */ addi r3, r31, 0x34 +/* 8016BCA8 00168C08 38 81 00 7C */ addi r4, r1, 0x7c +/* 8016BCAC 00168C0C 48 1A 6E 95 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8016BCB0 00168C10 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8016BCB4 00168C14 38 60 00 01 */ li r3, 1 +/* 8016BCB8 00168C18 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8016BCBC 00168C1C 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 8016BCC0 00168C20 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8016BCC4 00168C24 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 8016BCC8 00168C28 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 8016BCCC 00168C2C 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8016BCD0 00168C30 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 8016BCD4 00168C34 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 8016BCD8 00168C38 E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 +/* 8016BCDC 00168C3C 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 8016BCE0 00168C40 CB E1 00 C0 */ lfd f31, 0xc0(r1) +/* 8016BCE4 00168C44 83 E1 00 BC */ lwz r31, 0xbc(r1) +/* 8016BCE8 00168C48 7C 08 03 A6 */ mtlr r0 +/* 8016BCEC 00168C4C 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 8016BCF0 00168C50 4E 80 00 20 */ blr + +.global sub_8016bcf4 +sub_8016bcf4: +/* 8016BCF4 00168C54 94 21 FE 60 */ stwu r1, -0x1a0(r1) +/* 8016BCF8 00168C58 7C 08 02 A6 */ mflr r0 +/* 8016BCFC 00168C5C 90 01 01 A4 */ stw r0, 0x1a4(r1) +/* 8016BD00 00168C60 DB E1 01 90 */ stfd f31, 0x190(r1) +/* 8016BD04 00168C64 F3 E1 01 98 */ psq_st f31, 408(r1), 0, qr0 +/* 8016BD08 00168C68 DB C1 01 80 */ stfd f30, 0x180(r1) +/* 8016BD0C 00168C6C F3 C1 01 88 */ psq_st f30, 392(r1), 0, qr0 +/* 8016BD10 00168C70 93 E1 01 7C */ stw r31, 0x17c(r1) +/* 8016BD14 00168C74 93 C1 01 78 */ stw r30, 0x178(r1) +/* 8016BD18 00168C78 93 A1 01 74 */ stw r29, 0x174(r1) +/* 8016BD1C 00168C7C 7C 7D 1B 78 */ mr r29, r3 +/* 8016BD20 00168C80 38 A0 00 00 */ li r5, 0 +/* 8016BD24 00168C84 88 03 09 C0 */ lbz r0, 0x9c0(r3) +/* 8016BD28 00168C88 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 8016BD2C 00168C8C FF E0 08 90 */ fmr f31, f1 +/* 8016BD30 00168C90 7C 9E 23 78 */ mr r30, r4 +/* 8016BD34 00168C94 98 03 09 C0 */ stb r0, 0x9c0(r3) +/* 8016BD38 00168C98 A0 A3 07 B0 */ lhz r5, 0x7b0(r3) +/* 8016BD3C 00168C9C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016BD40 00168CA0 7C 05 00 40 */ cmplw r5, r0 +/* 8016BD44 00168CA4 41 82 04 E8 */ beq lbl_8016C22C +/* 8016BD48 00168CA8 80 1D 07 C8 */ lwz r0, 0x7c8(r29) +/* 8016BD4C 00168CAC 2C 00 00 02 */ cmpwi r0, 2 +/* 8016BD50 00168CB0 41 82 00 80 */ beq lbl_8016BDD0 +/* 8016BD54 00168CB4 40 80 00 14 */ bge lbl_8016BD68 +/* 8016BD58 00168CB8 2C 00 00 00 */ cmpwi r0, 0 +/* 8016BD5C 00168CBC 41 82 04 D0 */ beq lbl_8016C22C +/* 8016BD60 00168CC0 40 80 00 14 */ bge lbl_8016BD74 +/* 8016BD64 00168CC4 48 00 04 C8 */ b lbl_8016C22C +lbl_8016BD68: +/* 8016BD68 00168CC8 2C 00 00 04 */ cmpwi r0, 4 +/* 8016BD6C 00168CCC 40 80 04 C0 */ bge lbl_8016C22C +/* 8016BD70 00168CD0 48 00 03 E0 */ b lbl_8016C150 +lbl_8016BD74: +/* 8016BD74 00168CD4 C0 22 A0 A0 */ lfs f1, lbl_805ABDC0@sda21(r2) +/* 8016BD78 00168CD8 4B FF FD F5 */ bl sub_8016bb6c +/* 8016BD7C 00168CDC 80 9E 08 4C */ lwz r4, 0x84c(r30) +/* 8016BD80 00168CE0 A0 1D 07 B0 */ lhz r0, 0x7b0(r29) +/* 8016BD84 00168CE4 A0 64 00 08 */ lhz r3, 8(r4) +/* 8016BD88 00168CE8 7C 03 00 40 */ cmplw r3, r0 +/* 8016BD8C 00168CEC 40 82 00 38 */ bne lbl_8016BDC4 +/* 8016BD90 00168CF0 88 1D 04 02 */ lbz r0, 0x402(r29) +/* 8016BD94 00168CF4 38 60 00 01 */ li r3, 1 +/* 8016BD98 00168CF8 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 8016BD9C 00168CFC C0 02 A0 B0 */ lfs f0, lbl_805ABDD0@sda21(r2) +/* 8016BDA0 00168D00 98 1D 04 02 */ stb r0, 0x402(r29) +/* 8016BDA4 00168D04 7F C3 F3 78 */ mr r3, r30 +/* 8016BDA8 00168D08 38 A1 00 40 */ addi r5, r1, 0x40 +/* 8016BDAC 00168D0C 38 C0 00 29 */ li r6, 0x29 +/* 8016BDB0 00168D10 D0 1D 05 04 */ stfs f0, 0x504(r29) +/* 8016BDB4 00168D14 A0 1D 00 08 */ lhz r0, 8(r29) +/* 8016BDB8 00168D18 B0 01 00 3C */ sth r0, 0x3c(r1) +/* 8016BDBC 00168D1C B0 01 00 40 */ sth r0, 0x40(r1) +/* 8016BDC0 00168D20 4B ED 81 11 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +lbl_8016BDC4: +/* 8016BDC4 00168D24 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016BDC8 00168D28 D0 1D 07 C0 */ stfs f0, 0x7c0(r29) +/* 8016BDCC 00168D2C 48 00 04 60 */ b lbl_8016C22C +lbl_8016BDD0: +/* 8016BDD0 00168D30 A0 1D 07 B0 */ lhz r0, 0x7b0(r29) +/* 8016BDD4 00168D34 7F C3 F3 78 */ mr r3, r30 +/* 8016BDD8 00168D38 38 81 00 38 */ addi r4, r1, 0x38 +/* 8016BDDC 00168D3C B0 01 00 38 */ sth r0, 0x38(r1) +/* 8016BDE0 00168D40 4B EE 07 95 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8016BDE4 00168D44 7C 64 1B 78 */ mr r4, r3 +/* 8016BDE8 00168D48 38 61 00 5C */ addi r3, r1, 0x5c +/* 8016BDEC 00168D4C 4B F4 3E A5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8016BDF0 00168D50 80 63 00 04 */ lwz r3, 4(r3) +/* 8016BDF4 00168D54 28 03 00 00 */ cmplwi r3, 0 +/* 8016BDF8 00168D58 41 82 02 74 */ beq lbl_8016C06C +/* 8016BDFC 00168D5C 81 83 00 00 */ lwz r12, 0(r3) +/* 8016BE00 00168D60 7F C4 F3 78 */ mr r4, r30 +/* 8016BE04 00168D64 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8016BE08 00168D68 7D 89 03 A6 */ mtctr r12 +/* 8016BE0C 00168D6C 4E 80 04 21 */ bctrl +/* 8016BE10 00168D70 28 03 00 00 */ cmplwi r3, 0 +/* 8016BE14 00168D74 41 82 02 58 */ beq lbl_8016C06C +/* 8016BE18 00168D78 C3 DD 06 3C */ lfs f30, 0x63c(r29) +/* 8016BE1C 00168D7C 7F A3 EB 78 */ mr r3, r29 +/* 8016BE20 00168D80 48 00 21 21 */ bl sub_8016df40 +/* 8016BE24 00168D84 EC 5F 07 B2 */ fmuls f2, f31, f30 +/* 8016BE28 00168D88 C0 1D 07 BC */ lfs f0, 0x7bc(r29) +/* 8016BE2C 00168D8C EF C2 00 72 */ fmuls f30, f2, f1 +/* 8016BE30 00168D90 EC 00 F0 2A */ fadds f0, f0, f30 +/* 8016BE34 00168D94 D0 1D 07 BC */ stfs f0, 0x7bc(r29) +/* 8016BE38 00168D98 83 FE 08 4C */ lwz r31, 0x84c(r30) +/* 8016BE3C 00168D9C A0 7D 07 B0 */ lhz r3, 0x7b0(r29) +/* 8016BE40 00168DA0 A0 1F 00 08 */ lhz r0, 8(r31) +/* 8016BE44 00168DA4 7C 03 00 40 */ cmplw r3, r0 +/* 8016BE48 00168DA8 40 82 01 08 */ bne lbl_8016BF50 +/* 8016BE4C 00168DAC 88 81 00 58 */ lbz r4, 0x58(r1) +/* 8016BE50 00168DB0 38 60 00 00 */ li r3, 0 +/* 8016BE54 00168DB4 50 64 3E 30 */ rlwimi r4, r3, 7, 0x18, 0x18 +/* 8016BE58 00168DB8 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016BE5C 00168DBC 54 87 06 3E */ clrlwi r7, r4, 0x18 +/* 8016BE60 00168DC0 88 01 01 34 */ lbz r0, 0x134(r1) +/* 8016BE64 00168DC4 39 00 00 0A */ li r8, 0xa +/* 8016BE68 00168DC8 38 A0 00 01 */ li r5, 1 +/* 8016BE6C 00168DCC 50 67 36 72 */ rlwimi r7, r3, 6, 0x19, 0x19 +/* 8016BE70 00168DD0 91 01 01 1C */ stw r8, 0x11c(r1) +/* 8016BE74 00168DD4 54 E6 06 3E */ clrlwi r6, r7, 0x18 +/* 8016BE78 00168DD8 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 8016BE7C 00168DDC 50 66 2E B4 */ rlwimi r6, r3, 5, 0x1a, 0x1a +/* 8016BE80 00168DE0 98 81 00 58 */ stb r4, 0x58(r1) +/* 8016BE84 00168DE4 38 60 00 00 */ li r3, 0 +/* 8016BE88 00168DE8 38 80 00 01 */ li r4, 1 +/* 8016BE8C 00168DEC 98 E1 00 58 */ stb r7, 0x58(r1) +/* 8016BE90 00168DF0 D3 C1 01 24 */ stfs f30, 0x124(r1) +/* 8016BE94 00168DF4 98 C1 01 20 */ stb r6, 0x120(r1) +/* 8016BE98 00168DF8 D3 C1 01 28 */ stfs f30, 0x128(r1) +/* 8016BE9C 00168DFC D0 01 01 2C */ stfs f0, 0x12c(r1) +/* 8016BEA0 00168E00 D0 01 01 30 */ stfs f0, 0x130(r1) +/* 8016BEA4 00168E04 98 01 01 34 */ stb r0, 0x134(r1) +/* 8016BEA8 00168E08 88 1F 09 C7 */ lbz r0, 0x9c7(r31) +/* 8016BEAC 00168E0C 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 8016BEB0 00168E10 91 01 00 54 */ stw r8, 0x54(r1) +/* 8016BEB4 00168E14 98 1F 09 C7 */ stb r0, 0x9c7(r31) +/* 8016BEB8 00168E18 80 AD 8D 98 */ lwz r5, lbl_805A7958@sda21(r13) +/* 8016BEBC 00168E1C 98 C1 00 58 */ stb r6, 0x58(r1) +/* 8016BEC0 00168E20 48 21 E0 35 */ bl __shl2i +/* 8016BEC4 00168E24 39 40 00 00 */ li r10, 0 +/* 8016BEC8 00168E28 38 00 00 03 */ li r0, 3 +/* 8016BECC 00168E2C 90 81 00 EC */ stw r4, 0xec(r1) +/* 8016BED0 00168E30 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8016BED4 00168E34 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 8016BED8 00168E38 38 A1 00 2C */ addi r5, r1, 0x2c +/* 8016BEDC 00168E3C 90 61 00 E8 */ stw r3, 0xe8(r1) +/* 8016BEE0 00168E40 38 81 00 34 */ addi r4, r1, 0x34 +/* 8016BEE4 00168E44 7F C3 F3 78 */ mr r3, r30 +/* 8016BEE8 00168E48 38 C1 00 28 */ addi r6, r1, 0x28 +/* 8016BEEC 00168E4C 91 41 00 F4 */ stw r10, 0xf4(r1) +/* 8016BEF0 00168E50 38 E1 01 1C */ addi r7, r1, 0x11c +/* 8016BEF4 00168E54 39 01 00 E8 */ addi r8, r1, 0xe8 +/* 8016BEF8 00168E58 91 41 00 F0 */ stw r10, 0xf0(r1) +/* 8016BEFC 00168E5C 90 01 00 F8 */ stw r0, 0xf8(r1) +/* 8016BF00 00168E60 A1 5D 00 08 */ lhz r10, 8(r29) +/* 8016BF04 00168E64 B1 41 00 28 */ sth r10, 0x28(r1) +/* 8016BF08 00168E68 A0 1D 07 B0 */ lhz r0, 0x7b0(r29) +/* 8016BF0C 00168E6C B1 41 00 24 */ sth r10, 0x24(r1) +/* 8016BF10 00168E70 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 8016BF14 00168E74 A0 1D 00 08 */ lhz r0, 8(r29) +/* 8016BF18 00168E78 B0 01 00 30 */ sth r0, 0x30(r1) +/* 8016BF1C 00168E7C B0 01 00 34 */ sth r0, 0x34(r1) +/* 8016BF20 00168E80 4B ED E1 81 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 8016BF24 00168E84 88 1F 09 C7 */ lbz r0, 0x9c7(r31) +/* 8016BF28 00168E88 38 60 00 00 */ li r3, 0 +/* 8016BF2C 00168E8C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8016BF30 00168E90 98 1F 09 C7 */ stb r0, 0x9c7(r31) +/* 8016BF34 00168E94 80 7F 02 F8 */ lwz r3, 0x2f8(r31) +/* 8016BF38 00168E98 88 1D 09 C0 */ lbz r0, 0x9c0(r29) +/* 8016BF3C 00168E9C 20 63 00 01 */ subfic r3, r3, 1 +/* 8016BF40 00168EA0 7C 63 00 34 */ cntlzw r3, r3 +/* 8016BF44 00168EA4 50 60 16 30 */ rlwimi r0, r3, 2, 0x18, 0x18 +/* 8016BF48 00168EA8 98 1D 09 C0 */ stb r0, 0x9c0(r29) +/* 8016BF4C 00168EAC 48 00 00 D8 */ b lbl_8016C024 +lbl_8016BF50: +/* 8016BF50 00168EB0 38 E0 00 00 */ li r7, 0 +/* 8016BF54 00168EB4 88 01 00 50 */ lbz r0, 0x50(r1) +/* 8016BF58 00168EB8 50 E0 3E 30 */ rlwimi r0, r7, 7, 0x18, 0x18 +/* 8016BF5C 00168EBC 88 7D 09 C0 */ lbz r3, 0x9c0(r29) +/* 8016BF60 00168EC0 38 80 00 01 */ li r4, 1 +/* 8016BF64 00168EC4 98 01 00 50 */ stb r0, 0x50(r1) +/* 8016BF68 00168EC8 50 83 3E 30 */ rlwimi r3, r4, 7, 0x18, 0x18 +/* 8016BF6C 00168ECC 54 00 06 3E */ clrlwi r0, r0, 0x18 +/* 8016BF70 00168ED0 98 7D 09 C0 */ stb r3, 0x9c0(r29) +/* 8016BF74 00168ED4 50 E0 36 72 */ rlwimi r0, r7, 6, 0x19, 0x19 +/* 8016BF78 00168ED8 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016BF7C 00168EDC 54 06 06 3E */ clrlwi r6, r0, 0x18 +/* 8016BF80 00168EE0 98 01 00 50 */ stb r0, 0x50(r1) +/* 8016BF84 00168EE4 50 E6 2E B4 */ rlwimi r6, r7, 5, 0x1a, 0x1a +/* 8016BF88 00168EE8 88 01 01 18 */ lbz r0, 0x118(r1) +/* 8016BF8C 00168EEC 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 8016BF90 00168EF0 80 AD 8D 98 */ lwz r5, lbl_805A7958@sda21(r13) +/* 8016BF94 00168EF4 38 60 00 00 */ li r3, 0 +/* 8016BF98 00168EF8 90 E1 00 4C */ stw r7, 0x4c(r1) +/* 8016BF9C 00168EFC 38 80 00 01 */ li r4, 1 +/* 8016BFA0 00168F00 98 C1 00 50 */ stb r6, 0x50(r1) +/* 8016BFA4 00168F04 90 E1 01 00 */ stw r7, 0x100(r1) +/* 8016BFA8 00168F08 98 C1 01 04 */ stb r6, 0x104(r1) +/* 8016BFAC 00168F0C D3 C1 01 08 */ stfs f30, 0x108(r1) +/* 8016BFB0 00168F10 D3 C1 01 0C */ stfs f30, 0x10c(r1) +/* 8016BFB4 00168F14 D0 01 01 10 */ stfs f0, 0x110(r1) +/* 8016BFB8 00168F18 D0 01 01 14 */ stfs f0, 0x114(r1) +/* 8016BFBC 00168F1C 98 01 01 18 */ stb r0, 0x118(r1) +/* 8016BFC0 00168F20 48 21 DF 35 */ bl __shl2i +/* 8016BFC4 00168F24 39 40 00 00 */ li r10, 0 +/* 8016BFC8 00168F28 38 00 00 03 */ li r0, 3 +/* 8016BFCC 00168F2C 90 81 00 D4 */ stw r4, 0xd4(r1) +/* 8016BFD0 00168F30 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8016BFD4 00168F34 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 8016BFD8 00168F38 38 A1 00 18 */ addi r5, r1, 0x18 +/* 8016BFDC 00168F3C 90 61 00 D0 */ stw r3, 0xd0(r1) +/* 8016BFE0 00168F40 38 81 00 20 */ addi r4, r1, 0x20 +/* 8016BFE4 00168F44 7F C3 F3 78 */ mr r3, r30 +/* 8016BFE8 00168F48 38 C1 00 14 */ addi r6, r1, 0x14 +/* 8016BFEC 00168F4C 91 41 00 DC */ stw r10, 0xdc(r1) +/* 8016BFF0 00168F50 38 E1 01 00 */ addi r7, r1, 0x100 +/* 8016BFF4 00168F54 39 01 00 D0 */ addi r8, r1, 0xd0 +/* 8016BFF8 00168F58 91 41 00 D8 */ stw r10, 0xd8(r1) +/* 8016BFFC 00168F5C 90 01 00 E0 */ stw r0, 0xe0(r1) +/* 8016C000 00168F60 A1 5D 00 08 */ lhz r10, 8(r29) +/* 8016C004 00168F64 B1 41 00 14 */ sth r10, 0x14(r1) +/* 8016C008 00168F68 A0 1D 07 B0 */ lhz r0, 0x7b0(r29) +/* 8016C00C 00168F6C B1 41 00 10 */ sth r10, 0x10(r1) +/* 8016C010 00168F70 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8016C014 00168F74 A0 1D 00 08 */ lhz r0, 8(r29) +/* 8016C018 00168F78 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8016C01C 00168F7C B0 01 00 20 */ sth r0, 0x20(r1) +/* 8016C020 00168F80 4B ED E0 81 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +lbl_8016C024: +/* 8016C024 00168F84 7F A3 EB 78 */ mr r3, r29 +/* 8016C028 00168F88 48 00 1F 49 */ bl sub_8016df70 +/* 8016C02C 00168F8C C0 02 A0 84 */ lfs f0, lbl_805ABDA4@sda21(r2) +/* 8016C030 00168F90 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8016C034 00168F94 40 80 00 18 */ bge lbl_8016C04C +/* 8016C038 00168F98 FC 20 F0 90 */ fmr f1, f30 +/* 8016C03C 00168F9C 7F A3 EB 78 */ mr r3, r29 +/* 8016C040 00168FA0 7F C4 F3 78 */ mr r4, r30 +/* 8016C044 00168FA4 48 00 1C C5 */ bl sub_8016dd08 +/* 8016C048 00168FA8 48 00 00 24 */ b lbl_8016C06C +lbl_8016C04C: +/* 8016C04C 00168FAC 81 9D 00 00 */ lwz r12, 0(r29) +/* 8016C050 00168FB0 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8016C054 00168FB4 7F A3 EB 78 */ mr r3, r29 +/* 8016C058 00168FB8 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) +/* 8016C05C 00168FBC 81 8C 00 90 */ lwz r12, 0x90(r12) +/* 8016C060 00168FC0 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 8016C064 00168FC4 7D 89 03 A6 */ mtctr r12 +/* 8016C068 00168FC8 4E 80 04 21 */ bctrl +lbl_8016C06C: +/* 8016C06C 00168FCC 80 9E 08 4C */ lwz r4, 0x84c(r30) +/* 8016C070 00168FD0 A0 1D 07 B0 */ lhz r0, 0x7b0(r29) +/* 8016C074 00168FD4 A0 64 00 08 */ lhz r3, 8(r4) +/* 8016C078 00168FD8 C3 C2 A0 B4 */ lfs f30, lbl_805ABDD4@sda21(r2) +/* 8016C07C 00168FDC 7C 03 00 40 */ cmplw r3, r0 +/* 8016C080 00168FE0 40 82 00 B0 */ bne lbl_8016C130 +/* 8016C084 00168FE4 80 04 02 F8 */ lwz r0, 0x2f8(r4) +/* 8016C088 00168FE8 2C 00 00 00 */ cmpwi r0, 0 +/* 8016C08C 00168FEC 41 82 00 10 */ beq lbl_8016C09C +/* 8016C090 00168FF0 2C 00 00 01 */ cmpwi r0, 1 +/* 8016C094 00168FF4 41 82 00 08 */ beq lbl_8016C09C +/* 8016C098 00168FF8 C3 C2 A0 A0 */ lfs f30, lbl_805ABDC0@sda21(r2) +lbl_8016C09C: +/* 8016C09C 00168FFC 2C 00 00 00 */ cmpwi r0, 0 +/* 8016C0A0 00169000 40 82 00 78 */ bne lbl_8016C118 +/* 8016C0A4 00169004 C0 22 A0 B8 */ lfs f1, lbl_805ABDD8@sda21(r2) +/* 8016C0A8 00169008 C0 1D 07 C0 */ lfs f0, 0x7c0(r29) +/* 8016C0AC 0016900C EC 21 00 32 */ fmuls f1, f1, f0 +/* 8016C0B0 00169010 48 1A 8D 41 */ bl FastSinR__5CMathFf +/* 8016C0B4 00169014 FC 00 0A 10 */ fabs f0, f1 +/* 8016C0B8 00169018 38 81 00 48 */ addi r4, r1, 0x48 +/* 8016C0BC 0016901C 38 6D 8E 14 */ addi r3, r13, lbl_805A79D4@sda21 +/* 8016C0C0 00169020 38 AD 8E 18 */ addi r5, r13, lbl_805A79D8@sda21 +/* 8016C0C4 00169024 FC 00 00 18 */ frsp f0, f0 +/* 8016C0C8 00169028 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 8016C0CC 0016902C 4B EA 01 E9 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8016C0D0 00169030 A0 1D 00 08 */ lhz r0, 8(r29) +/* 8016C0D4 00169034 38 81 00 0C */ addi r4, r1, 0xc +/* 8016C0D8 00169038 C0 23 00 00 */ lfs f1, 0(r3) +/* 8016C0DC 0016903C C0 42 A0 B0 */ lfs f2, lbl_805ABDD0@sda21(r2) +/* 8016C0E0 00169040 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8016C0E4 00169044 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 8016C0E8 00169048 B0 01 00 08 */ sth r0, 8(r1) +/* 8016C0EC 0016904C 80 63 00 00 */ lwz r3, 0(r3) +/* 8016C0F0 00169050 38 63 01 88 */ addi r3, r3, 0x188 +/* 8016C0F4 00169054 48 05 4A 45 */ bl AddSource__19CStaticInterferenceF9TUniqueId +/* 8016C0F8 00169058 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 8016C0FC 0016905C C0 22 A0 B0 */ lfs f1, lbl_805ABDD0@sda21(r2) +/* 8016C100 00169060 C0 03 07 40 */ lfs f0, 0x740(r3) +/* 8016C104 00169064 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8016C108 00169068 40 80 00 10 */ bge lbl_8016C118 +/* 8016C10C 0016906C C0 42 80 F8 */ lfs f2, lbl_805A9E18@sda21(r2) +/* 8016C110 00169070 C0 62 80 FC */ lfs f3, lbl_805A9E1C@sda21(r2) +/* 8016C114 00169074 4B EA 6F 59 */ bl SetHudDisable__7CPlayerFfff +lbl_8016C118: +/* 8016C118 00169078 88 1D 04 02 */ lbz r0, 0x402(r29) +/* 8016C11C 0016907C 38 60 00 01 */ li r3, 1 +/* 8016C120 00169080 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 8016C124 00169084 C0 02 A0 B0 */ lfs f0, lbl_805ABDD0@sda21(r2) +/* 8016C128 00169088 98 1D 04 02 */ stb r0, 0x402(r29) +/* 8016C12C 0016908C D0 1D 05 04 */ stfs f0, 0x504(r29) +lbl_8016C130: +/* 8016C130 00169090 FC 20 F0 90 */ fmr f1, f30 +/* 8016C134 00169094 7F A3 EB 78 */ mr r3, r29 +/* 8016C138 00169098 7F C4 F3 78 */ mr r4, r30 +/* 8016C13C 0016909C 4B FF FA 31 */ bl sub_8016bb6c +/* 8016C140 001690A0 C0 1D 07 C0 */ lfs f0, 0x7c0(r29) +/* 8016C144 001690A4 EC 00 F8 2A */ fadds f0, f0, f31 +/* 8016C148 001690A8 D0 1D 07 C0 */ stfs f0, 0x7c0(r29) +/* 8016C14C 001690AC 48 00 00 E0 */ b lbl_8016C22C +lbl_8016C150: +/* 8016C150 001690B0 4B EE 83 61 */ bl GetYaw__6CActorCFv +/* 8016C154 001690B4 D0 21 00 44 */ stfs f1, 0x44(r1) +/* 8016C158 001690B8 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 8016C15C 001690BC 38 81 00 44 */ addi r4, r1, 0x44 +/* 8016C160 001690C0 48 1A 4F 99 */ bl ZRotation__11CQuaternionFRC9CRelAngle +/* 8016C164 001690C4 C0 61 00 A0 */ lfs f3, 0xa0(r1) +/* 8016C168 001690C8 38 61 00 80 */ addi r3, r1, 0x80 +/* 8016C16C 001690CC C0 41 00 A4 */ lfs f2, 0xa4(r1) +/* 8016C170 001690D0 38 9D 00 34 */ addi r4, r29, 0x34 +/* 8016C174 001690D4 C0 21 00 A8 */ lfs f1, 0xa8(r1) +/* 8016C178 001690D8 C0 01 00 AC */ lfs f0, 0xac(r1) +/* 8016C17C 001690DC D0 61 00 C0 */ stfs f3, 0xc0(r1) +/* 8016C180 001690E0 D0 41 00 C4 */ stfs f2, 0xc4(r1) +/* 8016C184 001690E4 D0 21 00 C8 */ stfs f1, 0xc8(r1) +/* 8016C188 001690E8 D0 01 00 CC */ stfs f0, 0xcc(r1) +/* 8016C18C 001690EC 48 1A 5F 9D */ bl FromMatrix__11CQuaternionFRC12CTransform4f +/* 8016C190 001690F0 C0 22 A0 B4 */ lfs f1, lbl_805ABDD4@sda21(r2) +/* 8016C194 001690F4 38 61 00 90 */ addi r3, r1, 0x90 +/* 8016C198 001690F8 38 81 00 80 */ addi r4, r1, 0x80 +/* 8016C19C 001690FC 38 A1 00 C0 */ addi r5, r1, 0xc0 +/* 8016C1A0 00169100 48 1A 54 19 */ bl SlerpLocal__11CQuaternionFRC11CQuaternionRC11CQuaternionf +/* 8016C1A4 00169104 C0 61 00 90 */ lfs f3, 0x90(r1) +/* 8016C1A8 00169108 38 61 00 70 */ addi r3, r1, 0x70 +/* 8016C1AC 0016910C C0 41 00 94 */ lfs f2, 0x94(r1) +/* 8016C1B0 00169110 38 81 00 B0 */ addi r4, r1, 0xb0 +/* 8016C1B4 00169114 C0 21 00 98 */ lfs f1, 0x98(r1) +/* 8016C1B8 00169118 C0 01 00 9C */ lfs f0, 0x9c(r1) +/* 8016C1BC 0016911C D0 61 00 B0 */ stfs f3, 0xb0(r1) +/* 8016C1C0 00169120 D0 41 00 B4 */ stfs f2, 0xb4(r1) +/* 8016C1C4 00169124 D0 21 00 B8 */ stfs f1, 0xb8(r1) +/* 8016C1C8 00169128 D0 01 00 BC */ stfs f0, 0xbc(r1) +/* 8016C1CC 0016912C 48 1A 51 D1 */ bl BuildNormalized__11CQuaternionCFv +/* 8016C1D0 00169130 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 8016C1D4 00169134 38 61 01 38 */ addi r3, r1, 0x138 +/* 8016C1D8 00169138 C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 8016C1DC 0016913C 38 81 00 70 */ addi r4, r1, 0x70 +/* 8016C1E0 00169140 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 8016C1E4 00169144 38 A1 00 64 */ addi r5, r1, 0x64 +/* 8016C1E8 00169148 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 8016C1EC 0016914C D0 21 00 68 */ stfs f1, 0x68(r1) +/* 8016C1F0 00169150 D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 8016C1F4 00169154 48 1A 5C C9 */ bl BuildTransform4f__11CQuaternionCFRC9CVector3f +/* 8016C1F8 00169158 38 7D 00 34 */ addi r3, r29, 0x34 +/* 8016C1FC 0016915C 38 81 01 38 */ addi r4, r1, 0x138 +/* 8016C200 00169160 48 1A 69 41 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8016C204 00169164 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 8016C208 00169168 38 60 00 01 */ li r3, 1 +/* 8016C20C 0016916C 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8016C210 00169170 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 8016C214 00169174 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 8016C218 00169178 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 8016C21C 0016917C 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 8016C220 00169180 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 8016C224 00169184 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 8016C228 00169188 98 1D 00 E4 */ stb r0, 0xe4(r29) +lbl_8016C22C: +/* 8016C22C 0016918C E3 E1 01 98 */ psq_l f31, 408(r1), 0, qr0 +/* 8016C230 00169190 CB E1 01 90 */ lfd f31, 0x190(r1) +/* 8016C234 00169194 E3 C1 01 88 */ psq_l f30, 392(r1), 0, qr0 +/* 8016C238 00169198 CB C1 01 80 */ lfd f30, 0x180(r1) +/* 8016C23C 0016919C 83 E1 01 7C */ lwz r31, 0x17c(r1) +/* 8016C240 001691A0 83 C1 01 78 */ lwz r30, 0x178(r1) +/* 8016C244 001691A4 80 01 01 A4 */ lwz r0, 0x1a4(r1) +/* 8016C248 001691A8 83 A1 01 74 */ lwz r29, 0x174(r1) +/* 8016C24C 001691AC 7C 08 03 A6 */ mtlr r0 +/* 8016C250 001691B0 38 21 01 A0 */ addi r1, r1, 0x1a0 +/* 8016C254 001691B4 4E 80 00 20 */ blr + +.global sub_8016c258 +sub_8016c258: +/* 8016C258 001691B8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8016C25C 001691BC 7C 08 02 A6 */ mflr r0 +/* 8016C260 001691C0 90 01 00 34 */ stw r0, 0x34(r1) +/* 8016C264 001691C4 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 8016C268 001691C8 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 8016C26C 001691CC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8016C270 001691D0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8016C274 001691D4 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8016C278 001691D8 7C 9E 23 78 */ mr r30, r4 +/* 8016C27C 001691DC 80 83 04 50 */ lwz r4, 0x450(r3) +/* 8016C280 001691E0 7C 7D 1B 78 */ mr r29, r3 +/* 8016C284 001691E4 88 04 03 00 */ lbz r0, 0x300(r4) +/* 8016C288 001691E8 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8016C28C 001691EC 41 82 00 0C */ beq lbl_8016C298 +/* 8016C290 001691F0 38 60 00 01 */ li r3, 1 +/* 8016C294 001691F4 48 00 00 F0 */ b lbl_8016C384 +lbl_8016C298: +/* 8016C298 001691F8 83 FE 08 4C */ lwz r31, 0x84c(r30) +/* 8016C29C 001691FC A0 9D 07 B0 */ lhz r4, 0x7b0(r29) +/* 8016C2A0 00169200 A0 1F 00 08 */ lhz r0, 8(r31) +/* 8016C2A4 00169204 7C 04 00 40 */ cmplw r4, r0 +/* 8016C2A8 00169208 40 82 00 58 */ bne lbl_8016C300 +/* 8016C2AC 0016920C C3 FD 06 40 */ lfs f31, 0x640(r29) +/* 8016C2B0 00169210 48 00 1C 91 */ bl sub_8016df40 +/* 8016C2B4 00169214 EC 3F 00 72 */ fmuls f1, f31, f1 +/* 8016C2B8 00169218 C0 1D 07 BC */ lfs f0, 0x7bc(r29) +/* 8016C2BC 0016921C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8016C2C0 00169220 4C 41 13 82 */ cror 2, 1, 2 +/* 8016C2C4 00169224 41 82 00 18 */ beq lbl_8016C2DC +/* 8016C2C8 00169228 7F A3 EB 78 */ mr r3, r29 +/* 8016C2CC 0016922C 7F C4 F3 78 */ mr r4, r30 +/* 8016C2D0 00169230 4B FF DE B1 */ bl sub_8016a180 +/* 8016C2D4 00169234 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016C2D8 00169238 41 82 00 0C */ beq lbl_8016C2E4 +lbl_8016C2DC: +/* 8016C2DC 0016923C 38 60 00 01 */ li r3, 1 +/* 8016C2E0 00169240 48 00 00 A4 */ b lbl_8016C384 +lbl_8016C2E4: +/* 8016C2E4 00169244 80 1F 02 F8 */ lwz r0, 0x2f8(r31) +/* 8016C2E8 00169248 2C 00 00 00 */ cmpwi r0, 0 +/* 8016C2EC 0016924C 41 82 00 94 */ beq lbl_8016C380 +/* 8016C2F0 00169250 7F A3 EB 78 */ mr r3, r29 +/* 8016C2F4 00169254 7F C4 F3 78 */ mr r4, r30 +/* 8016C2F8 00169258 4B FF E2 25 */ bl sub_8016a51c +/* 8016C2FC 0016925C 48 00 00 88 */ b lbl_8016C384 +lbl_8016C300: +/* 8016C300 00169260 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016C304 00169264 7C 04 00 40 */ cmplw r4, r0 +/* 8016C308 00169268 41 82 00 78 */ beq lbl_8016C380 +/* 8016C30C 0016926C A0 1D 07 B0 */ lhz r0, 0x7b0(r29) +/* 8016C310 00169270 7F C3 F3 78 */ mr r3, r30 +/* 8016C314 00169274 38 81 00 08 */ addi r4, r1, 8 +/* 8016C318 00169278 B0 01 00 08 */ sth r0, 8(r1) +/* 8016C31C 0016927C 4B EE 02 89 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8016C320 00169280 7C 64 1B 78 */ mr r4, r3 +/* 8016C324 00169284 38 61 00 0C */ addi r3, r1, 0xc +/* 8016C328 00169288 4B F3 90 A9 */ bl sub_800a53d0 +/* 8016C32C 0016928C 4B F3 90 79 */ bl "CastTo<12CSpacePirate>__10CPatternedFP7CEntity" +/* 8016C330 00169290 28 03 00 00 */ cmplwi r3, 0 +/* 8016C334 00169294 41 82 00 44 */ beq lbl_8016C378 +/* 8016C338 00169298 88 03 06 38 */ lbz r0, 0x638(r3) +/* 8016C33C 0016929C 3B E0 00 01 */ li r31, 1 +/* 8016C340 001692A0 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 8016C344 001692A4 40 82 00 2C */ bne lbl_8016C370 +/* 8016C348 001692A8 80 63 04 50 */ lwz r3, 0x450(r3) +/* 8016C34C 001692AC 38 63 02 A4 */ addi r3, r3, 0x2a4 +/* 8016C350 001692B0 4B FC 7D 29 */ bl GetCurrentState__14CBodyStateInfoCFv +/* 8016C354 001692B4 81 83 00 00 */ lwz r12, 0(r3) +/* 8016C358 001692B8 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8016C35C 001692BC 7D 89 03 A6 */ mtctr r12 +/* 8016C360 001692C0 4E 80 04 21 */ bctrl +/* 8016C364 001692C4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016C368 001692C8 40 82 00 08 */ bne lbl_8016C370 +/* 8016C36C 001692CC 3B E0 00 00 */ li r31, 0 +lbl_8016C370: +/* 8016C370 001692D0 7F E3 FB 78 */ mr r3, r31 +/* 8016C374 001692D4 48 00 00 10 */ b lbl_8016C384 +lbl_8016C378: +/* 8016C378 001692D8 38 60 00 01 */ li r3, 1 +/* 8016C37C 001692DC 48 00 00 08 */ b lbl_8016C384 +lbl_8016C380: +/* 8016C380 001692E0 38 60 00 00 */ li r3, 0 +lbl_8016C384: +/* 8016C384 001692E4 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 8016C388 001692E8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8016C38C 001692EC CB E1 00 20 */ lfd f31, 0x20(r1) +/* 8016C390 001692F0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8016C394 001692F4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8016C398 001692F8 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8016C39C 001692FC 7C 08 03 A6 */ mtlr r0 +/* 8016C3A0 00169300 38 21 00 30 */ addi r1, r1, 0x30 +/* 8016C3A4 00169304 4E 80 00 20 */ blr + +.global sub_8016c3a8 +sub_8016c3a8: +/* 8016C3A8 00169308 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8016C3AC 0016930C 7C 08 02 A6 */ mflr r0 +/* 8016C3B0 00169310 90 01 00 34 */ stw r0, 0x34(r1) +/* 8016C3B4 00169314 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8016C3B8 00169318 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8016C3BC 0016931C 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8016C3C0 00169320 7C 9D 23 78 */ mr r29, r4 +/* 8016C3C4 00169324 7F A3 EB 78 */ mr r3, r29 +/* 8016C3C8 00169328 4B EE 74 F5 */ bl GetMaterialFilter__6CActorCFv +/* 8016C3CC 0016932C 80 03 00 00 */ lwz r0, 0(r3) +/* 8016C3D0 00169330 38 80 00 01 */ li r4, 1 +/* 8016C3D4 00169334 80 C3 00 04 */ lwz r6, 4(r3) +/* 8016C3D8 00169338 80 AD 8E 0C */ lwz r5, lbl_805A79CC@sda21(r13) +/* 8016C3DC 0016933C 90 C1 00 0C */ stw r6, 0xc(r1) +/* 8016C3E0 00169340 90 01 00 08 */ stw r0, 8(r1) +/* 8016C3E4 00169344 80 03 00 08 */ lwz r0, 8(r3) +/* 8016C3E8 00169348 80 C3 00 0C */ lwz r6, 0xc(r3) +/* 8016C3EC 0016934C 90 C1 00 14 */ stw r6, 0x14(r1) +/* 8016C3F0 00169350 90 01 00 10 */ stw r0, 0x10(r1) +/* 8016C3F4 00169354 80 03 00 10 */ lwz r0, 0x10(r3) +/* 8016C3F8 00169358 38 60 00 00 */ li r3, 0 +/* 8016C3FC 0016935C 90 01 00 18 */ stw r0, 0x18(r1) +/* 8016C400 00169360 48 21 DA F5 */ bl __shl2i +/* 8016C404 00169364 80 AD 8E 10 */ lwz r5, lbl_805A79D0@sda21(r13) +/* 8016C408 00169368 7C 9E 23 78 */ mr r30, r4 +/* 8016C40C 0016936C 7C 7F 1B 78 */ mr r31, r3 +/* 8016C410 00169370 38 60 00 00 */ li r3, 0 +/* 8016C414 00169374 38 80 00 01 */ li r4, 1 +/* 8016C418 00169378 48 21 DA DD */ bl __shl2i +/* 8016C41C 0016937C 80 01 00 10 */ lwz r0, 0x10(r1) +/* 8016C420 00169380 7F FF 1B 78 */ or r31, r31, r3 +/* 8016C424 00169384 7F DE 23 78 */ or r30, r30, r4 +/* 8016C428 00169388 80 81 00 14 */ lwz r4, 0x14(r1) +/* 8016C42C 0016938C 7C 00 FB 78 */ or r0, r0, r31 +/* 8016C430 00169390 7F A3 EB 78 */ mr r3, r29 +/* 8016C434 00169394 7C 85 F3 78 */ or r5, r4, r30 +/* 8016C438 00169398 90 01 00 10 */ stw r0, 0x10(r1) +/* 8016C43C 0016939C 38 81 00 08 */ addi r4, r1, 8 +/* 8016C440 001693A0 90 A1 00 14 */ stw r5, 0x14(r1) +/* 8016C444 001693A4 4B EE 74 5D */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +/* 8016C448 001693A8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8016C44C 001693AC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8016C450 001693B0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8016C454 001693B4 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8016C458 001693B8 7C 08 03 A6 */ mtlr r0 +/* 8016C45C 001693BC 38 21 00 30 */ addi r1, r1, 0x30 +/* 8016C460 001693C0 4E 80 00 20 */ blr + +.global sub_8016c464 +sub_8016c464: +/* 8016C464 001693C4 94 21 F6 E0 */ stwu r1, -0x920(r1) +/* 8016C468 001693C8 7C 08 02 A6 */ mflr r0 +/* 8016C46C 001693CC 90 01 09 24 */ stw r0, 0x924(r1) +/* 8016C470 001693D0 93 E1 09 1C */ stw r31, 0x91c(r1) +/* 8016C474 001693D4 7C 9F 23 78 */ mr r31, r4 +/* 8016C478 001693D8 38 80 00 01 */ li r4, 1 +/* 8016C47C 001693DC 93 C1 09 18 */ stw r30, 0x918(r1) +/* 8016C480 001693E0 7C 7E 1B 78 */ mr r30, r3 +/* 8016C484 001693E4 38 60 00 00 */ li r3, 0 +/* 8016C488 001693E8 93 A1 09 14 */ stw r29, 0x914(r1) +/* 8016C48C 001693EC 93 81 09 10 */ stw r28, 0x910(r1) +/* 8016C490 001693F0 80 AD 8D F0 */ lwz r5, lbl_805A79B0@sda21(r13) +/* 8016C494 001693F4 48 21 DA 61 */ bl __shl2i +/* 8016C498 001693F8 80 AD 8D F4 */ lwz r5, lbl_805A79B4@sda21(r13) +/* 8016C49C 001693FC 7C 9C 23 78 */ mr r28, r4 +/* 8016C4A0 00169400 7C 7D 1B 78 */ mr r29, r3 +/* 8016C4A4 00169404 38 60 00 00 */ li r3, 0 +/* 8016C4A8 00169408 38 80 00 01 */ li r4, 1 +/* 8016C4AC 0016940C 48 21 DA 49 */ bl __shl2i +/* 8016C4B0 00169410 38 A0 00 01 */ li r5, 1 +/* 8016C4B4 00169414 38 00 00 00 */ li r0, 0 +/* 8016C4B8 00169418 7F 9C 23 78 */ or r28, r28, r4 +/* 8016C4BC 0016941C 7F BD 1B 78 */ or r29, r29, r3 +/* 8016C4C0 00169420 93 81 00 C4 */ stw r28, 0xc4(r1) +/* 8016C4C4 00169424 93 A1 00 C0 */ stw r29, 0xc0(r1) +/* 8016C4C8 00169428 90 01 00 CC */ stw r0, 0xcc(r1) +/* 8016C4CC 0016942C 90 01 00 C8 */ stw r0, 0xc8(r1) +/* 8016C4D0 00169430 90 A1 00 D0 */ stw r5, 0xd0(r1) +/* 8016C4D4 00169434 88 1E 09 BF */ lbz r0, 0x9bf(r30) +/* 8016C4D8 00169438 90 A1 00 70 */ stw r5, 0x70(r1) +/* 8016C4DC 0016943C 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 8016C4E0 00169440 41 82 01 18 */ beq lbl_8016C5F8 +/* 8016C4E4 00169444 7F E3 FB 78 */ mr r3, r31 +/* 8016C4E8 00169448 38 9E 06 A0 */ addi r4, r30, 0x6a0 +/* 8016C4EC 0016944C 38 BE 00 34 */ addi r5, r30, 0x34 +/* 8016C4F0 00169450 38 C1 00 C0 */ addi r6, r1, 0xc0 +/* 8016C4F4 00169454 48 01 6E AD */ bl DetectStaticCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter +/* 8016C4F8 00169458 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016C4FC 0016945C 40 82 00 FC */ bne lbl_8016C5F8 +/* 8016C500 00169460 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) +/* 8016C504 00169464 3B 80 00 01 */ li r28, 1 +/* 8016C508 00169468 C0 5E 08 0C */ lfs f2, 0x80c(r30) +/* 8016C50C 0016946C 38 00 00 00 */ li r0, 0 +/* 8016C510 00169470 FC 01 10 00 */ fcmpu cr0, f1, f2 +/* 8016C514 00169474 40 82 00 1C */ bne lbl_8016C530 +/* 8016C518 00169478 C0 1E 08 10 */ lfs f0, 0x810(r30) +/* 8016C51C 0016947C FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 8016C520 00169480 40 82 00 10 */ bne lbl_8016C530 +/* 8016C524 00169484 C0 1E 08 14 */ lfs f0, 0x814(r30) +/* 8016C528 00169488 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 8016C52C 0016948C 41 82 00 08 */ beq lbl_8016C534 +lbl_8016C530: +/* 8016C530 00169490 38 00 00 01 */ li r0, 1 +lbl_8016C534: +/* 8016C534 00169494 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8016C538 00169498 41 82 00 98 */ beq lbl_8016C5D0 +/* 8016C53C 0016949C C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8016C540 001694A0 38 61 00 38 */ addi r3, r1, 0x38 +/* 8016C544 001694A4 C0 9E 00 50 */ lfs f4, 0x50(r30) +/* 8016C548 001694A8 C0 7E 08 10 */ lfs f3, 0x810(r30) +/* 8016C54C 001694AC EC 00 10 28 */ fsubs f0, f0, f2 +/* 8016C550 001694B0 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 8016C554 001694B4 C0 3E 08 14 */ lfs f1, 0x814(r30) +/* 8016C558 001694B8 EC 64 18 28 */ fsubs f3, f4, f3 +/* 8016C55C 001694BC EC 22 08 28 */ fsubs f1, f2, f1 +/* 8016C560 001694C0 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 8016C564 001694C4 D0 61 00 3C */ stfs f3, 0x3c(r1) +/* 8016C568 001694C8 D0 21 00 40 */ stfs f1, 0x40(r1) +/* 8016C56C 001694CC 48 1A 83 4D */ bl Magnitude__9CVector3fCFv +/* 8016C570 001694D0 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016C574 001694D4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8016C578 001694D8 40 81 00 58 */ ble lbl_8016C5D0 +/* 8016C57C 001694DC C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) +/* 8016C580 001694E0 7F E4 FB 78 */ mr r4, r31 +/* 8016C584 001694E4 C0 61 00 38 */ lfs f3, 0x38(r1) +/* 8016C588 001694E8 38 61 00 D8 */ addi r3, r1, 0xd8 +/* 8016C58C 001694EC EC 80 08 24 */ fdivs f4, f0, f1 +/* 8016C590 001694F0 C0 41 00 3C */ lfs f2, 0x3c(r1) +/* 8016C594 001694F4 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 8016C598 001694F8 38 BE 08 0C */ addi r5, r30, 0x80c +/* 8016C59C 001694FC 38 C1 00 2C */ addi r6, r1, 0x2c +/* 8016C5A0 00169500 38 E1 00 C0 */ addi r7, r1, 0xc0 +/* 8016C5A4 00169504 EC 64 00 F2 */ fmuls f3, f4, f3 +/* 8016C5A8 00169508 EC 44 00 B2 */ fmuls f2, f4, f2 +/* 8016C5AC 0016950C EC 04 00 32 */ fmuls f0, f4, f0 +/* 8016C5B0 00169510 D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 8016C5B4 00169514 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 8016C5B8 00169518 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 8016C5BC 0016951C 4B EE 09 DD */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 8016C5C0 00169520 88 01 00 F8 */ lbz r0, 0xf8(r1) +/* 8016C5C4 00169524 7C 00 00 34 */ cntlzw r0, r0 +/* 8016C5C8 00169528 54 00 D9 7E */ srwi r0, r0, 5 +/* 8016C5CC 0016952C 7C 1C 03 78 */ mr r28, r0 +lbl_8016C5D0: +/* 8016C5D0 00169530 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 8016C5D4 00169534 41 82 00 24 */ beq lbl_8016C5F8 +/* 8016C5D8 00169538 7F C3 F3 78 */ mr r3, r30 +/* 8016C5DC 0016953C 7F E5 FB 78 */ mr r5, r31 +/* 8016C5E0 00169540 38 80 00 13 */ li r4, 0x13 +/* 8016C5E4 00169544 4B EE 7D 6D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 8016C5E8 00169548 88 1E 09 BF */ lbz r0, 0x9bf(r30) +/* 8016C5EC 0016954C 38 60 00 00 */ li r3, 0 +/* 8016C5F0 00169550 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 8016C5F4 00169554 98 1E 09 BF */ stb r0, 0x9bf(r30) +lbl_8016C5F8: +/* 8016C5F8 00169558 88 1E 09 BF */ lbz r0, 0x9bf(r30) +/* 8016C5FC 0016955C 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 8016C600 00169560 41 82 02 08 */ beq lbl_8016C808 +/* 8016C604 00169564 38 00 00 00 */ li r0, 0 +/* 8016C608 00169568 80 AD 8D F8 */ lwz r5, lbl_805A79B8@sda21(r13) +/* 8016C60C 0016956C 90 01 01 08 */ stw r0, 0x108(r1) +/* 8016C610 00169570 38 60 00 00 */ li r3, 0 +/* 8016C614 00169574 38 80 00 01 */ li r4, 1 +/* 8016C618 00169578 48 21 D8 DD */ bl __shl2i +/* 8016C61C 0016957C 80 AD 8D FC */ lwz r5, lbl_805A79BC@sda21(r13) +/* 8016C620 00169580 7C 9D 23 78 */ mr r29, r4 +/* 8016C624 00169584 7C 7C 1B 78 */ mr r28, r3 +/* 8016C628 00169588 38 60 00 00 */ li r3, 0 +/* 8016C62C 0016958C 38 80 00 01 */ li r4, 1 +/* 8016C630 00169590 48 21 D8 C5 */ bl __shl2i +/* 8016C634 00169594 80 AD 8E 00 */ lwz r5, lbl_805A79C0@sda21(r13) +/* 8016C638 00169598 7F BD 23 78 */ or r29, r29, r4 +/* 8016C63C 0016959C 7F 9C 1B 78 */ or r28, r28, r3 +/* 8016C640 001695A0 38 60 00 00 */ li r3, 0 +/* 8016C644 001695A4 38 80 00 01 */ li r4, 1 +/* 8016C648 001695A8 48 21 D8 AD */ bl __shl2i +/* 8016C64C 001695AC 7F BD 23 78 */ or r29, r29, r4 +/* 8016C650 001695B0 7F 9C 1B 78 */ or r28, r28, r3 +/* 8016C654 001695B4 38 C0 00 01 */ li r6, 1 +/* 8016C658 001695B8 38 00 00 00 */ li r0, 0 +/* 8016C65C 001695BC 93 A1 00 AC */ stw r29, 0xac(r1) +/* 8016C660 001695C0 38 61 00 90 */ addi r3, r1, 0x90 +/* 8016C664 001695C4 38 81 00 14 */ addi r4, r1, 0x14 +/* 8016C668 001695C8 38 A1 00 08 */ addi r5, r1, 8 +/* 8016C66C 001695CC 93 81 00 A8 */ stw r28, 0xa8(r1) +/* 8016C670 001695D0 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 8016C674 001695D4 90 01 00 B0 */ stw r0, 0xb0(r1) +/* 8016C678 001695D8 90 C1 00 B8 */ stw r6, 0xb8(r1) +/* 8016C67C 001695DC 80 FE 00 64 */ lwz r7, 0x64(r30) +/* 8016C680 001695E0 C0 1E 08 08 */ lfs f0, 0x808(r30) +/* 8016C684 001695E4 C0 A7 00 04 */ lfs f5, 4(r7) +/* 8016C688 001695E8 C0 C7 00 00 */ lfs f6, 0(r7) +/* 8016C68C 001695EC C0 87 00 08 */ lfs f4, 8(r7) +/* 8016C690 001695F0 ED 20 01 72 */ fmuls f9, f0, f5 +/* 8016C694 001695F4 C0 7E 00 50 */ lfs f3, 0x50(r30) +/* 8016C698 001695F8 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 8016C69C 001695FC C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8016C6A0 00169600 ED 03 48 2A */ fadds f8, f3, f9 +/* 8016C6A4 00169604 EC E2 48 2A */ fadds f7, f2, f9 +/* 8016C6A8 00169608 90 C1 00 58 */ stw r6, 0x58(r1) +/* 8016C6AC 0016960C EC 20 48 2A */ fadds f1, f0, f9 +/* 8016C6B0 00169610 EC 63 48 28 */ fsubs f3, f3, f9 +/* 8016C6B4 00169614 D0 C1 00 20 */ stfs f6, 0x20(r1) +/* 8016C6B8 00169618 EC 42 48 28 */ fsubs f2, f2, f9 +/* 8016C6BC 0016961C EC 00 48 28 */ fsubs f0, f0, f9 +/* 8016C6C0 00169620 D0 A1 00 24 */ stfs f5, 0x24(r1) +/* 8016C6C4 00169624 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 8016C6C8 00169628 D0 21 00 08 */ stfs f1, 8(r1) +/* 8016C6CC 0016962C D1 01 00 0C */ stfs f8, 0xc(r1) +/* 8016C6D0 00169630 D0 E1 00 10 */ stfs f7, 0x10(r1) +/* 8016C6D4 00169634 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8016C6D8 00169638 D0 61 00 18 */ stfs f3, 0x18(r1) +/* 8016C6DC 0016963C D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 8016C6E0 00169640 48 1C BE 29 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8016C6E4 00169644 7F E3 FB 78 */ mr r3, r31 +/* 8016C6E8 00169648 7F C7 F3 78 */ mr r7, r30 +/* 8016C6EC 0016964C 38 81 01 08 */ addi r4, r1, 0x108 +/* 8016C6F0 00169650 38 A1 00 90 */ addi r5, r1, 0x90 +/* 8016C6F4 00169654 38 C1 00 A8 */ addi r6, r1, 0xa8 +/* 8016C6F8 00169658 4B EE 00 29 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 8016C6FC 0016965C 7F E6 FB 78 */ mr r6, r31 +/* 8016C700 00169660 38 7E 06 A0 */ addi r3, r30, 0x6a0 +/* 8016C704 00169664 38 9E 00 34 */ addi r4, r30, 0x34 +/* 8016C708 00169668 38 A1 01 08 */ addi r5, r1, 0x108 +/* 8016C70C 0016966C 48 01 78 C1 */ bl "DetectDynamicCollisionBoolean__14CGameCollisionFRC19CCollisionPrimitiveRC12CTransform4fRCQ24rstl32reserved_vector<9TUniqueId,1024>RC13CStateManager" +/* 8016C710 00169670 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016C714 00169674 40 82 00 A0 */ bne lbl_8016C7B4 +/* 8016C718 00169678 88 1E 09 BF */ lbz r0, 0x9bf(r30) +/* 8016C71C 0016967C 38 60 00 00 */ li r3, 0 +/* 8016C720 00169680 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 8016C724 00169684 7F C3 F3 78 */ mr r3, r30 +/* 8016C728 00169688 98 1E 09 BF */ stb r0, 0x9bf(r30) +/* 8016C72C 0016968C 4B EE 71 91 */ bl GetMaterialFilter__6CActorCFv +/* 8016C730 00169690 80 03 00 00 */ lwz r0, 0(r3) +/* 8016C734 00169694 38 80 00 01 */ li r4, 1 +/* 8016C738 00169698 80 C3 00 04 */ lwz r6, 4(r3) +/* 8016C73C 0016969C 80 AD 8E 04 */ lwz r5, lbl_805A79C4@sda21(r13) +/* 8016C740 001696A0 90 C1 00 7C */ stw r6, 0x7c(r1) +/* 8016C744 001696A4 90 01 00 78 */ stw r0, 0x78(r1) +/* 8016C748 001696A8 80 03 00 08 */ lwz r0, 8(r3) +/* 8016C74C 001696AC 80 C3 00 0C */ lwz r6, 0xc(r3) +/* 8016C750 001696B0 90 C1 00 84 */ stw r6, 0x84(r1) +/* 8016C754 001696B4 90 01 00 80 */ stw r0, 0x80(r1) +/* 8016C758 001696B8 80 03 00 10 */ lwz r0, 0x10(r3) +/* 8016C75C 001696BC 38 60 00 00 */ li r3, 0 +/* 8016C760 001696C0 90 01 00 88 */ stw r0, 0x88(r1) +/* 8016C764 001696C4 48 21 D7 91 */ bl __shl2i +/* 8016C768 001696C8 80 AD 8E 08 */ lwz r5, lbl_805A79C8@sda21(r13) +/* 8016C76C 001696CC 7C 9D 23 78 */ mr r29, r4 +/* 8016C770 001696D0 7C 7C 1B 78 */ mr r28, r3 +/* 8016C774 001696D4 38 60 00 00 */ li r3, 0 +/* 8016C778 001696D8 38 80 00 01 */ li r4, 1 +/* 8016C77C 001696DC 48 21 D7 79 */ bl __shl2i +/* 8016C780 001696E0 7F BD 23 78 */ or r29, r29, r4 +/* 8016C784 001696E4 7F 9C 1B 78 */ or r28, r28, r3 +/* 8016C788 001696E8 80 61 00 80 */ lwz r3, 0x80(r1) +/* 8016C78C 001696EC 7F 80 E0 F8 */ nor r0, r28, r28 +/* 8016C790 001696F0 80 A1 00 84 */ lwz r5, 0x84(r1) +/* 8016C794 001696F4 7F A4 E8 F8 */ nor r4, r29, r29 +/* 8016C798 001696F8 7C 60 00 38 */ and r0, r3, r0 +/* 8016C79C 001696FC 7F C3 F3 78 */ mr r3, r30 +/* 8016C7A0 00169700 7C A5 20 38 */ and r5, r5, r4 +/* 8016C7A4 00169704 90 01 00 80 */ stw r0, 0x80(r1) +/* 8016C7A8 00169708 38 81 00 78 */ addi r4, r1, 0x78 +/* 8016C7AC 0016970C 90 A1 00 84 */ stw r5, 0x84(r1) +/* 8016C7B0 00169710 4B EE 70 F1 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +lbl_8016C7B4: +/* 8016C7B4 00169714 80 A1 01 08 */ lwz r5, 0x108(r1) +/* 8016C7B8 00169718 38 60 00 00 */ li r3, 0 +/* 8016C7BC 0016971C 2C 05 00 00 */ cmpwi r5, 0 +/* 8016C7C0 00169720 40 81 00 40 */ ble lbl_8016C800 +/* 8016C7C4 00169724 2C 05 00 08 */ cmpwi r5, 8 +/* 8016C7C8 00169728 38 85 FF F8 */ addi r4, r5, -8 +/* 8016C7CC 0016972C 40 81 00 20 */ ble lbl_8016C7EC +/* 8016C7D0 00169730 38 04 00 07 */ addi r0, r4, 7 +/* 8016C7D4 00169734 54 00 E8 FE */ srwi r0, r0, 3 +/* 8016C7D8 00169738 7C 09 03 A6 */ mtctr r0 +/* 8016C7DC 0016973C 2C 04 00 00 */ cmpwi r4, 0 +/* 8016C7E0 00169740 40 81 00 0C */ ble lbl_8016C7EC +lbl_8016C7E4: +/* 8016C7E4 00169744 38 63 00 08 */ addi r3, r3, 8 +/* 8016C7E8 00169748 42 00 FF FC */ bdnz lbl_8016C7E4 +lbl_8016C7EC: +/* 8016C7EC 0016974C 7C 03 28 50 */ subf r0, r3, r5 +/* 8016C7F0 00169750 7C 09 03 A6 */ mtctr r0 +/* 8016C7F4 00169754 7C 03 28 00 */ cmpw r3, r5 +/* 8016C7F8 00169758 40 80 00 08 */ bge lbl_8016C800 +lbl_8016C7FC: +/* 8016C7FC 0016975C 42 00 00 00 */ bdnz lbl_8016C7FC +lbl_8016C800: +/* 8016C800 00169760 38 00 00 00 */ li r0, 0 +/* 8016C804 00169764 90 01 01 08 */ stw r0, 0x108(r1) +lbl_8016C808: +/* 8016C808 00169768 80 01 09 24 */ lwz r0, 0x924(r1) +/* 8016C80C 0016976C 83 E1 09 1C */ lwz r31, 0x91c(r1) +/* 8016C810 00169770 83 C1 09 18 */ lwz r30, 0x918(r1) +/* 8016C814 00169774 83 A1 09 14 */ lwz r29, 0x914(r1) +/* 8016C818 00169778 83 81 09 10 */ lwz r28, 0x910(r1) +/* 8016C81C 0016977C 7C 08 03 A6 */ mtlr r0 +/* 8016C820 00169780 38 21 09 20 */ addi r1, r1, 0x920 +/* 8016C824 00169784 4E 80 00 20 */ blr + +.global sub_8016c828 +sub_8016c828: +/* 8016C828 00169788 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8016C82C 0016978C 7C 08 02 A6 */ mflr r0 +/* 8016C830 00169790 90 01 00 54 */ stw r0, 0x54(r1) +/* 8016C834 00169794 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 8016C838 00169798 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 8016C83C 0016979C DB C1 00 30 */ stfd f30, 0x30(r1) +/* 8016C840 001697A0 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 8016C844 001697A4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8016C848 001697A8 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8016C84C 001697AC 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8016C850 001697B0 7C 7D 1B 78 */ mr r29, r3 +/* 8016C854 001697B4 C0 42 A0 84 */ lfs f2, lbl_805ABDA4@sda21(r2) +/* 8016C858 001697B8 C0 03 06 BC */ lfs f0, 0x6bc(r3) +/* 8016C85C 001697BC FF E0 08 90 */ fmr f31, f1 +/* 8016C860 001697C0 7C 9E 23 78 */ mr r30, r4 +/* 8016C864 001697C4 EF C2 00 32 */ fmuls f30, f2, f0 +/* 8016C868 001697C8 48 00 19 8D */ bl sub_8016e1f4 +/* 8016C86C 001697CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016C870 001697D0 41 82 00 BC */ beq lbl_8016C92C +/* 8016C874 001697D4 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 8016C878 001697D8 A0 1D 07 B0 */ lhz r0, 0x7b0(r29) +/* 8016C87C 001697DC A0 63 00 08 */ lhz r3, 8(r3) +/* 8016C880 001697E0 7C 03 00 40 */ cmplw r3, r0 +/* 8016C884 001697E4 40 82 00 9C */ bne lbl_8016C920 +/* 8016C888 001697E8 A0 1D 07 B0 */ lhz r0, 0x7b0(r29) +/* 8016C88C 001697EC 7F C3 F3 78 */ mr r3, r30 +/* 8016C890 001697F0 38 81 00 08 */ addi r4, r1, 8 +/* 8016C894 001697F4 B0 01 00 08 */ sth r0, 8(r1) +/* 8016C898 001697F8 4B ED FC DD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8016C89C 001697FC 7C 64 1B 78 */ mr r4, r3 +/* 8016C8A0 00169800 38 61 00 10 */ addi r3, r1, 0x10 +/* 8016C8A4 00169804 4B F3 FE 41 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" +/* 8016C8A8 00169808 83 E3 00 04 */ lwz r31, 4(r3) +/* 8016C8AC 0016980C 28 1F 00 00 */ cmplwi r31, 0 +/* 8016C8B0 00169810 41 82 00 70 */ beq lbl_8016C920 +/* 8016C8B4 00169814 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 8016C8B8 00169818 C0 82 A0 BC */ lfs f4, lbl_805ABDDC@sda21(r2) +/* 8016C8BC 0016981C 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 8016C8C0 00169820 2C 00 00 00 */ cmpwi r0, 0 +/* 8016C8C4 00169824 40 82 00 3C */ bne lbl_8016C900 +/* 8016C8C8 00169828 C0 22 A0 C0 */ lfs f1, lbl_805ABDE0@sda21(r2) +/* 8016C8CC 0016982C 38 81 00 0C */ addi r4, r1, 0xc +/* 8016C8D0 00169830 C0 1D 07 C0 */ lfs f0, 0x7c0(r29) +/* 8016C8D4 00169834 38 6D 8D EC */ addi r3, r13, lbl_805A79AC@sda21 +/* 8016C8D8 00169838 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8016C8DC 0016983C D0 01 00 0C */ stfs f0, 0xc(r1) +/* 8016C8E0 00169840 4B F1 15 01 */ bl "Min__5CMathFRCfRCf" +/* 8016C8E4 00169844 C0 63 00 00 */ lfs f3, 0(r3) +/* 8016C8E8 00169848 C0 22 A0 98 */ lfs f1, lbl_805ABDB8@sda21(r2) +/* 8016C8EC 0016984C C0 02 A0 C4 */ lfs f0, lbl_805ABDE4@sda21(r2) +/* 8016C8F0 00169850 EC 21 18 28 */ fsubs f1, f1, f3 +/* 8016C8F4 00169854 C0 42 A0 BC */ lfs f2, lbl_805ABDDC@sda21(r2) +/* 8016C8F8 00169858 EC 00 00 F2 */ fmuls f0, f0, f3 +/* 8016C8FC 0016985C EC 82 00 7A */ fmadds f4, f2, f1, f0 +lbl_8016C900: +/* 8016C900 00169860 FC 20 F8 90 */ fmr f1, f31 +/* 8016C904 00169864 C0 42 A0 AC */ lfs f2, lbl_805ABDCC@sda21(r2) +/* 8016C908 00169868 FC 60 F0 90 */ fmr f3, f30 +/* 8016C90C 0016986C C0 A2 A0 88 */ lfs f5, lbl_805ABDA8@sda21(r2) +/* 8016C910 00169870 7F C3 F3 78 */ mr r3, r30 +/* 8016C914 00169874 7F E4 FB 78 */ mr r4, r31 +/* 8016C918 00169878 38 A0 00 08 */ li r5, 8 +/* 8016C91C 0016987C 48 01 32 69 */ bl sub_8017fb84 +lbl_8016C920: +/* 8016C920 00169880 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016C924 00169884 D0 1D 07 C4 */ stfs f0, 0x7c4(r29) +/* 8016C928 00169888 48 00 00 A8 */ b lbl_8016C9D0 +lbl_8016C92C: +/* 8016C92C 0016988C 88 7D 09 BF */ lbz r3, 0x9bf(r29) +/* 8016C930 00169890 54 60 FF FF */ rlwinm. r0, r3, 0x1f, 0x1f, 0x1f +/* 8016C934 00169894 40 82 00 0C */ bne lbl_8016C940 +/* 8016C938 00169898 54 60 07 FF */ clrlwi. r0, r3, 0x1f +/* 8016C93C 0016989C 41 82 00 8C */ beq lbl_8016C9C8 +lbl_8016C940: +/* 8016C940 001698A0 C0 3D 07 C4 */ lfs f1, 0x7c4(r29) +/* 8016C944 001698A4 C0 02 A0 C8 */ lfs f0, lbl_805ABDE8@sda21(r2) +/* 8016C948 001698A8 EC 21 F8 2A */ fadds f1, f1, f31 +/* 8016C94C 001698AC D0 3D 07 C4 */ stfs f1, 0x7c4(r29) +/* 8016C950 001698B0 C0 3D 07 C4 */ lfs f1, 0x7c4(r29) +/* 8016C954 001698B4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8016C958 001698B8 40 81 00 20 */ ble lbl_8016C978 +/* 8016C95C 001698BC 7F A3 EB 78 */ mr r3, r29 +/* 8016C960 001698C0 7F C4 F3 78 */ mr r4, r30 +/* 8016C964 001698C4 81 9D 00 00 */ lwz r12, 0(r29) +/* 8016C968 001698C8 81 8C 02 98 */ lwz r12, 0x298(r12) +/* 8016C96C 001698CC 7D 89 03 A6 */ mtctr r12 +/* 8016C970 001698D0 4E 80 04 21 */ bctrl +/* 8016C974 001698D4 48 00 00 2C */ b lbl_8016C9A0 +lbl_8016C978: +/* 8016C978 001698D8 88 1D 09 BF */ lbz r0, 0x9bf(r29) +/* 8016C97C 001698DC 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 8016C980 001698E0 41 82 00 20 */ beq lbl_8016C9A0 +/* 8016C984 001698E4 C0 02 A0 AC */ lfs f0, lbl_805ABDCC@sda21(r2) +/* 8016C988 001698E8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8016C98C 001698EC 40 81 00 14 */ ble lbl_8016C9A0 +/* 8016C990 001698F0 7F A3 EB 78 */ mr r3, r29 +/* 8016C994 001698F4 7F C5 F3 78 */ mr r5, r30 +/* 8016C998 001698F8 38 80 00 13 */ li r4, 0x13 +/* 8016C99C 001698FC 4B EE 75 E5 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_8016C9A0: +/* 8016C9A0 00169900 FC 20 F8 90 */ fmr f1, f31 +/* 8016C9A4 00169904 C0 42 A0 AC */ lfs f2, lbl_805ABDCC@sda21(r2) +/* 8016C9A8 00169908 FC 60 F0 90 */ fmr f3, f30 +/* 8016C9AC 0016990C C0 82 A0 CC */ lfs f4, lbl_805ABDEC@sda21(r2) +/* 8016C9B0 00169910 C0 A2 A0 88 */ lfs f5, lbl_805ABDA8@sda21(r2) +/* 8016C9B4 00169914 7F C3 F3 78 */ mr r3, r30 +/* 8016C9B8 00169918 7F A4 EB 78 */ mr r4, r29 +/* 8016C9BC 0016991C 38 A0 00 08 */ li r5, 8 +/* 8016C9C0 00169920 48 01 31 C5 */ bl sub_8017fb84 +/* 8016C9C4 00169924 48 00 00 0C */ b lbl_8016C9D0 +lbl_8016C9C8: +/* 8016C9C8 00169928 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016C9CC 0016992C D0 1D 07 C4 */ stfs f0, 0x7c4(r29) +lbl_8016C9D0: +/* 8016C9D0 00169930 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 8016C9D4 00169934 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 8016C9D8 00169938 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 8016C9DC 0016993C CB C1 00 30 */ lfd f30, 0x30(r1) +/* 8016C9E0 00169940 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8016C9E4 00169944 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8016C9E8 00169948 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8016C9EC 0016994C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8016C9F0 00169950 7C 08 03 A6 */ mtlr r0 +/* 8016C9F4 00169954 38 21 00 50 */ addi r1, r1, 0x50 +/* 8016C9F8 00169958 4E 80 00 20 */ blr + +.global sub_8016c9fc +sub_8016c9fc: +/* 8016C9FC 0016995C 94 21 F5 B0 */ stwu r1, -0xa50(r1) +/* 8016CA00 00169960 7C 08 02 A6 */ mflr r0 +/* 8016CA04 00169964 90 01 0A 54 */ stw r0, 0xa54(r1) +/* 8016CA08 00169968 DB E1 0A 40 */ stfd f31, 0xa40(r1) +/* 8016CA0C 0016996C F3 E1 0A 48 */ psq_st f31, -1464(r1), 0, qr0 +/* 8016CA10 00169970 DB C1 0A 30 */ stfd f30, 0xa30(r1) +/* 8016CA14 00169974 F3 C1 0A 38 */ psq_st f30, -1480(r1), 0, qr0 +/* 8016CA18 00169978 DB A1 0A 20 */ stfd f29, 0xa20(r1) +/* 8016CA1C 0016997C F3 A1 0A 28 */ psq_st f29, -1496(r1), 0, qr0 +/* 8016CA20 00169980 DB 81 0A 10 */ stfd f28, 0xa10(r1) +/* 8016CA24 00169984 F3 81 0A 18 */ psq_st f28, -1512(r1), 0, qr0 +/* 8016CA28 00169988 DB 61 0A 00 */ stfd f27, 0xa00(r1) +/* 8016CA2C 0016998C F3 61 0A 08 */ psq_st f27, -1528(r1), 0, qr0 +/* 8016CA30 00169990 DB 41 09 F0 */ stfd f26, 0x9f0(r1) +/* 8016CA34 00169994 F3 41 09 F8 */ psq_st f26, -1544(r1), 0, qr0 +/* 8016CA38 00169998 DB 21 09 E0 */ stfd f25, 0x9e0(r1) +/* 8016CA3C 0016999C F3 21 09 E8 */ psq_st f25, -1560(r1), 0, qr0 +/* 8016CA40 001699A0 DB 01 09 D0 */ stfd f24, 0x9d0(r1) +/* 8016CA44 001699A4 F3 01 09 D8 */ psq_st f24, -1576(r1), 0, qr0 +/* 8016CA48 001699A8 DA E1 09 C0 */ stfd f23, 0x9c0(r1) +/* 8016CA4C 001699AC F2 E1 09 C8 */ psq_st f23, -1592(r1), 0, qr0 +/* 8016CA50 001699B0 BE E1 09 9C */ stmw r23, 0x99c(r1) +/* 8016CA54 001699B4 7C 9A 23 79 */ or. r26, r4, r4 +/* 8016CA58 001699B8 7C 79 1B 78 */ mr r25, r3 +/* 8016CA5C 001699BC 7C BB 2B 78 */ mr r27, r5 +/* 8016CA60 001699C0 7C DC 33 78 */ mr r28, r6 +/* 8016CA64 001699C4 7C FD 3B 78 */ mr r29, r7 +/* 8016CA68 001699C8 41 82 03 F8 */ beq lbl_8016CE60 +/* 8016CA6C 001699CC 80 19 07 C8 */ lwz r0, 0x7c8(r25) +/* 8016CA70 001699D0 2C 00 00 03 */ cmpwi r0, 3 +/* 8016CA74 001699D4 41 82 03 EC */ beq lbl_8016CE60 +/* 8016CA78 001699D8 80 AD 8D E4 */ lwz r5, lbl_805A79A4@sda21(r13) +/* 8016CA7C 001699DC 38 60 00 00 */ li r3, 0 +/* 8016CA80 001699E0 38 80 00 01 */ li r4, 1 +/* 8016CA84 001699E4 48 21 D4 71 */ bl __shl2i +/* 8016CA88 001699E8 80 AD 8D E8 */ lwz r5, lbl_805A79A8@sda21(r13) +/* 8016CA8C 001699EC 7C 9E 23 78 */ mr r30, r4 +/* 8016CA90 001699F0 7C 78 1B 78 */ mr r24, r3 +/* 8016CA94 001699F4 38 60 00 00 */ li r3, 0 +/* 8016CA98 001699F8 38 80 00 01 */ li r4, 1 +/* 8016CA9C 001699FC 48 21 D4 59 */ bl __shl2i +/* 8016CAA0 00169A00 80 AD 8D DC */ lwz r5, lbl_805A799C@sda21(r13) +/* 8016CAA4 00169A04 7F DE 23 78 */ or r30, r30, r4 +/* 8016CAA8 00169A08 7F 18 1B 78 */ or r24, r24, r3 +/* 8016CAAC 00169A0C 38 60 00 00 */ li r3, 0 +/* 8016CAB0 00169A10 38 80 00 01 */ li r4, 1 +/* 8016CAB4 00169A14 48 21 D4 41 */ bl __shl2i +/* 8016CAB8 00169A18 80 AD 8D E0 */ lwz r5, lbl_805A79A0@sda21(r13) +/* 8016CABC 00169A1C 7C 97 23 78 */ mr r23, r4 +/* 8016CAC0 00169A20 7C 7F 1B 78 */ mr r31, r3 +/* 8016CAC4 00169A24 38 60 00 00 */ li r3, 0 +/* 8016CAC8 00169A28 38 80 00 01 */ li r4, 1 +/* 8016CACC 00169A2C 48 21 D4 29 */ bl __shl2i +/* 8016CAD0 00169A30 38 00 00 03 */ li r0, 3 +/* 8016CAD4 00169A34 7F FF 1B 78 */ or r31, r31, r3 +/* 8016CAD8 00169A38 7E F7 23 78 */ or r23, r23, r4 +/* 8016CADC 00169A3C 93 C1 00 EC */ stw r30, 0xec(r1) +/* 8016CAE0 00169A40 3C 60 80 3D */ lis r3, lbl_803D0530@ha +/* 8016CAE4 00169A44 C3 22 A0 80 */ lfs f25, lbl_805ABDA0@sda21(r2) +/* 8016CAE8 00169A48 93 E1 00 E0 */ stw r31, 0xe0(r1) +/* 8016CAEC 00169A4C 3B E3 05 30 */ addi r31, r3, lbl_803D0530@l +/* 8016CAF0 00169A50 FF E0 C8 90 */ fmr f31, f25 +/* 8016CAF4 00169A54 C3 C2 A0 D0 */ lfs f30, lbl_805ABDF0@sda21(r2) +/* 8016CAF8 00169A58 92 E1 00 E4 */ stw r23, 0xe4(r1) +/* 8016CAFC 00169A5C 3B C0 00 00 */ li r30, 0 +/* 8016CB00 00169A60 93 01 00 E8 */ stw r24, 0xe8(r1) +/* 8016CB04 00169A64 90 01 00 F0 */ stw r0, 0xf0(r1) +/* 8016CB08 00169A68 80 79 00 64 */ lwz r3, 0x64(r25) +/* 8016CB0C 00169A6C C0 19 00 38 */ lfs f0, 0x38(r25) +/* 8016CB10 00169A70 C0 63 00 04 */ lfs f3, 4(r3) +/* 8016CB14 00169A74 C0 59 08 08 */ lfs f2, 0x808(r25) +/* 8016CB18 00169A78 FF A0 00 50 */ fneg f29, f0 +/* 8016CB1C 00169A7C C0 39 00 48 */ lfs f1, 0x48(r25) +/* 8016CB20 00169A80 C0 19 00 58 */ lfs f0, 0x58(r25) +/* 8016CB24 00169A84 EF 42 00 F2 */ fmuls f26, f2, f3 +/* 8016CB28 00169A88 C0 43 00 00 */ lfs f2, 0(r3) +/* 8016CB2C 00169A8C FF 80 08 50 */ fneg f28, f1 +/* 8016CB30 00169A90 C0 23 00 08 */ lfs f1, 8(r3) +/* 8016CB34 00169A94 FF 60 00 50 */ fneg f27, f0 +/* 8016CB38 00169A98 90 01 00 D8 */ stw r0, 0xd8(r1) +/* 8016CB3C 00169A9C D0 41 00 88 */ stfs f2, 0x88(r1) +/* 8016CB40 00169AA0 D0 61 00 8C */ stfs f3, 0x8c(r1) +/* 8016CB44 00169AA4 D0 21 00 90 */ stfs f1, 0x90(r1) +lbl_8016CB48: +/* 8016CB48 00169AA8 C0 1F 00 00 */ lfs f0, 0(r31) +/* 8016CB4C 00169AAC EE FE 00 32 */ fmuls f23, f30, f0 +/* 8016CB50 00169AB0 FC 20 B8 90 */ fmr f1, f23 +/* 8016CB54 00169AB4 48 1A 82 9D */ bl FastSinR__5CMathFf +/* 8016CB58 00169AB8 FF 00 08 90 */ fmr f24, f1 +/* 8016CB5C 00169ABC FC 20 B8 90 */ fmr f1, f23 +/* 8016CB60 00169AC0 48 1A 81 E5 */ bl FastCosR__5CMathFf +/* 8016CB64 00169AC4 D0 21 00 BC */ stfs f1, 0xbc(r1) +/* 8016CB68 00169AC8 7F A4 EB 78 */ mr r4, r29 +/* 8016CB6C 00169ACC 38 61 00 70 */ addi r3, r1, 0x70 +/* 8016CB70 00169AD0 38 A1 00 BC */ addi r5, r1, 0xbc +/* 8016CB74 00169AD4 D3 01 00 C0 */ stfs f24, 0xc0(r1) +/* 8016CB78 00169AD8 D3 E1 00 C4 */ stfs f31, 0xc4(r1) +/* 8016CB7C 00169ADC 48 1A 5F 05 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 8016CB80 00169AE0 38 61 00 7C */ addi r3, r1, 0x7c +/* 8016CB84 00169AE4 38 81 00 70 */ addi r4, r1, 0x70 +/* 8016CB88 00169AE8 48 1A 7C C9 */ bl AsNormalized__9CVector3fCFv +/* 8016CB8C 00169AEC C0 61 00 7C */ lfs f3, 0x7c(r1) +/* 8016CB90 00169AF0 FC 20 D0 90 */ fmr f1, f26 +/* 8016CB94 00169AF4 C0 41 00 80 */ lfs f2, 0x80(r1) +/* 8016CB98 00169AF8 38 00 00 00 */ li r0, 0 +/* 8016CB9C 00169AFC C0 01 00 84 */ lfs f0, 0x84(r1) +/* 8016CBA0 00169B00 7F 63 DB 78 */ mr r3, r27 +/* 8016CBA4 00169B04 D0 61 00 B0 */ stfs f3, 0xb0(r1) +/* 8016CBA8 00169B08 A1 2D A3 8C */ lhz r9, lbl_805A8F4C@sda21(r13) +/* 8016CBAC 00169B0C 7F 28 CB 78 */ mr r8, r25 +/* 8016CBB0 00169B10 D0 41 00 B4 */ stfs f2, 0xb4(r1) +/* 8016CBB4 00169B14 38 81 01 88 */ addi r4, r1, 0x188 +/* 8016CBB8 00169B18 38 A1 00 A4 */ addi r5, r1, 0xa4 +/* 8016CBBC 00169B1C 38 C1 00 B0 */ addi r6, r1, 0xb0 +/* 8016CBC0 00169B20 D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 8016CBC4 00169B24 38 E1 00 E0 */ addi r7, r1, 0xe0 +/* 8016CBC8 00169B28 C0 7A 00 60 */ lfs f3, 0x60(r26) +/* 8016CBCC 00169B2C C0 5A 00 50 */ lfs f2, 0x50(r26) +/* 8016CBD0 00169B30 C0 1A 00 40 */ lfs f0, 0x40(r26) +/* 8016CBD4 00169B34 D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 8016CBD8 00169B38 D0 41 00 A8 */ stfs f2, 0xa8(r1) +/* 8016CBDC 00169B3C D0 61 00 AC */ stfs f3, 0xac(r1) +/* 8016CBE0 00169B40 C0 79 00 60 */ lfs f3, 0x60(r25) +/* 8016CBE4 00169B44 C0 59 00 50 */ lfs f2, 0x50(r25) +/* 8016CBE8 00169B48 C0 19 00 40 */ lfs f0, 0x40(r25) +/* 8016CBEC 00169B4C D0 41 00 68 */ stfs f2, 0x68(r1) +/* 8016CBF0 00169B50 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 8016CBF4 00169B54 D0 61 00 6C */ stfs f3, 0x6c(r1) +/* 8016CBF8 00169B58 D0 61 00 AC */ stfs f3, 0xac(r1) +/* 8016CBFC 00169B5C B1 21 00 08 */ sth r9, 8(r1) +/* 8016CC00 00169B60 90 01 01 88 */ stw r0, 0x188(r1) +/* 8016CC04 00169B64 4B ED FA D5 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" +/* 8016CC08 00169B68 FC 20 D0 90 */ fmr f1, f26 +/* 8016CC0C 00169B6C 7F 64 DB 78 */ mr r4, r27 +/* 8016CC10 00169B70 38 61 01 28 */ addi r3, r1, 0x128 +/* 8016CC14 00169B74 38 A1 00 08 */ addi r5, r1, 8 +/* 8016CC18 00169B78 38 C1 00 A4 */ addi r6, r1, 0xa4 +/* 8016CC1C 00169B7C 38 E1 00 B0 */ addi r7, r1, 0xb0 +/* 8016CC20 00169B80 39 01 00 E0 */ addi r8, r1, 0xe0 +/* 8016CC24 00169B84 39 21 01 88 */ addi r9, r1, 0x188 +/* 8016CC28 00169B88 4B EE 03 9D */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 8016CC2C 00169B8C 88 01 01 48 */ lbz r0, 0x148(r1) +/* 8016CC30 00169B90 C0 01 01 28 */ lfs f0, 0x128(r1) +/* 8016CC34 00169B94 28 00 00 00 */ cmplwi r0, 0 +/* 8016CC38 00169B98 40 82 00 D0 */ bne lbl_8016CD08 +/* 8016CC3C 00169B9C FF 20 D0 90 */ fmr f25, f26 +/* 8016CC40 00169BA0 C3 A1 00 B0 */ lfs f29, 0xb0(r1) +/* 8016CC44 00169BA4 C3 81 00 B4 */ lfs f28, 0xb4(r1) +/* 8016CC48 00169BA8 38 61 01 58 */ addi r3, r1, 0x158 +/* 8016CC4C 00169BAC C3 61 00 B8 */ lfs f27, 0xb8(r1) +/* 8016CC50 00169BB0 38 99 00 34 */ addi r4, r25, 0x34 +/* 8016CC54 00169BB4 48 1A 5F 21 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8016CC58 00169BB8 C0 21 00 B4 */ lfs f1, 0xb4(r1) +/* 8016CC5C 00169BBC 7F 63 DB 78 */ mr r3, r27 +/* 8016CC60 00169BC0 C0 01 00 B8 */ lfs f0, 0xb8(r1) +/* 8016CC64 00169BC4 38 99 06 A0 */ addi r4, r25, 0x6a0 +/* 8016CC68 00169BC8 C0 41 00 B0 */ lfs f2, 0xb0(r1) +/* 8016CC6C 00169BCC EC BA 00 72 */ fmuls f5, f26, f1 +/* 8016CC70 00169BD0 C0 21 01 74 */ lfs f1, 0x174(r1) +/* 8016CC74 00169BD4 EC 9A 00 32 */ fmuls f4, f26, f0 +/* 8016CC78 00169BD8 C0 01 01 84 */ lfs f0, 0x184(r1) +/* 8016CC7C 00169BDC EC 5A 00 B2 */ fmuls f2, f26, f2 +/* 8016CC80 00169BE0 C0 61 01 64 */ lfs f3, 0x164(r1) +/* 8016CC84 00169BE4 EC 21 28 2A */ fadds f1, f1, f5 +/* 8016CC88 00169BE8 38 A1 01 58 */ addi r5, r1, 0x158 +/* 8016CC8C 00169BEC EC 43 10 2A */ fadds f2, f3, f2 +/* 8016CC90 00169BF0 38 C1 00 E0 */ addi r6, r1, 0xe0 +/* 8016CC94 00169BF4 EC 00 20 2A */ fadds f0, f0, f4 +/* 8016CC98 00169BF8 D0 21 01 74 */ stfs f1, 0x174(r1) +/* 8016CC9C 00169BFC D0 41 01 64 */ stfs f2, 0x164(r1) +/* 8016CCA0 00169C00 D0 01 01 84 */ stfs f0, 0x184(r1) +/* 8016CCA4 00169C04 48 01 66 FD */ bl DetectStaticCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter +/* 8016CCA8 00169C08 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016CCAC 00169C0C 40 82 00 74 */ bne lbl_8016CD20 +/* 8016CCB0 00169C10 80 A1 01 88 */ lwz r5, 0x188(r1) +/* 8016CCB4 00169C14 38 60 00 00 */ li r3, 0 +/* 8016CCB8 00169C18 2C 05 00 00 */ cmpwi r5, 0 +/* 8016CCBC 00169C1C 40 81 00 40 */ ble lbl_8016CCFC +/* 8016CCC0 00169C20 2C 05 00 08 */ cmpwi r5, 8 +/* 8016CCC4 00169C24 38 85 FF F8 */ addi r4, r5, -8 +/* 8016CCC8 00169C28 40 81 00 20 */ ble lbl_8016CCE8 +/* 8016CCCC 00169C2C 38 04 00 07 */ addi r0, r4, 7 +/* 8016CCD0 00169C30 54 00 E8 FE */ srwi r0, r0, 3 +/* 8016CCD4 00169C34 7C 09 03 A6 */ mtctr r0 +/* 8016CCD8 00169C38 2C 04 00 00 */ cmpwi r4, 0 +/* 8016CCDC 00169C3C 40 81 00 0C */ ble lbl_8016CCE8 +lbl_8016CCE0: +/* 8016CCE0 00169C40 38 63 00 08 */ addi r3, r3, 8 +/* 8016CCE4 00169C44 42 00 FF FC */ bdnz lbl_8016CCE0 +lbl_8016CCE8: +/* 8016CCE8 00169C48 7C 03 28 50 */ subf r0, r3, r5 +/* 8016CCEC 00169C4C 7C 09 03 A6 */ mtctr r0 +/* 8016CCF0 00169C50 7C 03 28 00 */ cmpw r3, r5 +/* 8016CCF4 00169C54 40 80 00 08 */ bge lbl_8016CCFC +lbl_8016CCF8: +/* 8016CCF8 00169C58 42 00 00 00 */ bdnz lbl_8016CCF8 +lbl_8016CCFC: +/* 8016CCFC 00169C5C 38 00 00 00 */ li r0, 0 +/* 8016CD00 00169C60 90 01 01 88 */ stw r0, 0x188(r1) +/* 8016CD04 00169C64 48 00 00 84 */ b lbl_8016CD88 +lbl_8016CD08: +/* 8016CD08 00169C68 FC 00 C8 40 */ fcmpo cr0, f0, f25 +/* 8016CD0C 00169C6C 40 81 00 14 */ ble lbl_8016CD20 +/* 8016CD10 00169C70 FF 20 00 90 */ fmr f25, f0 +/* 8016CD14 00169C74 C3 A1 00 B0 */ lfs f29, 0xb0(r1) +/* 8016CD18 00169C78 C3 81 00 B4 */ lfs f28, 0xb4(r1) +/* 8016CD1C 00169C7C C3 61 00 B8 */ lfs f27, 0xb8(r1) +lbl_8016CD20: +/* 8016CD20 00169C80 80 A1 01 88 */ lwz r5, 0x188(r1) +/* 8016CD24 00169C84 38 60 00 00 */ li r3, 0 +/* 8016CD28 00169C88 2C 05 00 00 */ cmpwi r5, 0 +/* 8016CD2C 00169C8C 40 81 00 44 */ ble lbl_8016CD70 +/* 8016CD30 00169C90 2C 05 00 08 */ cmpwi r5, 8 +/* 8016CD34 00169C94 38 85 FF F8 */ addi r4, r5, -8 +/* 8016CD38 00169C98 40 81 00 20 */ ble lbl_8016CD58 +/* 8016CD3C 00169C9C 38 04 00 07 */ addi r0, r4, 7 +/* 8016CD40 00169CA0 54 00 E8 FE */ srwi r0, r0, 3 +/* 8016CD44 00169CA4 7C 09 03 A6 */ mtctr r0 +/* 8016CD48 00169CA8 2C 04 00 00 */ cmpwi r4, 0 +/* 8016CD4C 00169CAC 40 81 00 0C */ ble lbl_8016CD58 +lbl_8016CD50: +/* 8016CD50 00169CB0 38 63 00 08 */ addi r3, r3, 8 +/* 8016CD54 00169CB4 42 00 FF FC */ bdnz lbl_8016CD50 +lbl_8016CD58: +/* 8016CD58 00169CB8 7C 03 28 50 */ subf r0, r3, r5 +/* 8016CD5C 00169CBC 7C 09 03 A6 */ mtctr r0 +/* 8016CD60 00169CC0 7C 03 28 00 */ cmpw r3, r5 +/* 8016CD64 00169CC4 40 80 00 0C */ bge lbl_8016CD70 +lbl_8016CD68: +/* 8016CD68 00169CC8 38 63 00 01 */ addi r3, r3, 1 +/* 8016CD6C 00169CCC 42 00 FF FC */ bdnz lbl_8016CD68 +lbl_8016CD70: +/* 8016CD70 00169CD0 3B DE 00 01 */ addi r30, r30, 1 +/* 8016CD74 00169CD4 38 00 00 00 */ li r0, 0 +/* 8016CD78 00169CD8 28 1E 00 08 */ cmplwi r30, 8 +/* 8016CD7C 00169CDC 90 01 01 88 */ stw r0, 0x188(r1) +/* 8016CD80 00169CE0 3B FF 00 04 */ addi r31, r31, 4 +/* 8016CD84 00169CE4 41 80 FD C4 */ blt lbl_8016CB48 +lbl_8016CD88: +/* 8016CD88 00169CE8 C0 62 A0 D4 */ lfs f3, lbl_805ABDF4@sda21(r2) +/* 8016CD8C 00169CEC 38 61 00 54 */ addi r3, r1, 0x54 +/* 8016CD90 00169CF0 C0 5C 00 00 */ lfs f2, 0(r28) +/* 8016CD94 00169CF4 38 81 00 48 */ addi r4, r1, 0x48 +/* 8016CD98 00169CF8 C0 3C 00 04 */ lfs f1, 4(r28) +/* 8016CD9C 00169CFC 38 A1 00 3C */ addi r5, r1, 0x3c +/* 8016CDA0 00169D00 C0 1C 00 08 */ lfs f0, 8(r28) +/* 8016CDA4 00169D04 38 C1 00 0C */ addi r6, r1, 0xc +/* 8016CDA8 00169D08 D0 61 00 0C */ stfs f3, 0xc(r1) +/* 8016CDAC 00169D0C D3 A1 00 3C */ stfs f29, 0x3c(r1) +/* 8016CDB0 00169D10 D3 81 00 40 */ stfs f28, 0x40(r1) +/* 8016CDB4 00169D14 D3 61 00 44 */ stfs f27, 0x44(r1) +/* 8016CDB8 00169D18 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 8016CDBC 00169D1C D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 8016CDC0 00169D20 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8016CDC4 00169D24 48 1A 48 D1 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 8016CDC8 00169D28 C0 61 00 54 */ lfs f3, 0x54(r1) +/* 8016CDCC 00169D2C 38 61 00 1C */ addi r3, r1, 0x1c +/* 8016CDD0 00169D30 C0 41 00 58 */ lfs f2, 0x58(r1) +/* 8016CDD4 00169D34 38 99 00 34 */ addi r4, r25, 0x34 +/* 8016CDD8 00169D38 C0 21 00 5C */ lfs f1, 0x5c(r1) +/* 8016CDDC 00169D3C C0 01 00 60 */ lfs f0, 0x60(r1) +/* 8016CDE0 00169D40 D0 61 00 94 */ stfs f3, 0x94(r1) +/* 8016CDE4 00169D44 D0 41 00 98 */ stfs f2, 0x98(r1) +/* 8016CDE8 00169D48 D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 8016CDEC 00169D4C D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 8016CDF0 00169D50 48 1A 53 39 */ bl FromMatrix__11CQuaternionFRC12CTransform4f +/* 8016CDF4 00169D54 38 61 00 2C */ addi r3, r1, 0x2c +/* 8016CDF8 00169D58 38 81 00 1C */ addi r4, r1, 0x1c +/* 8016CDFC 00169D5C 38 A1 00 94 */ addi r5, r1, 0x94 +/* 8016CE00 00169D60 48 1A 43 A1 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 8016CE04 00169D64 C0 59 00 60 */ lfs f2, 0x60(r25) +/* 8016CE08 00169D68 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 8016CE0C 00169D6C C0 39 00 50 */ lfs f1, 0x50(r25) +/* 8016CE10 00169D70 38 81 00 2C */ addi r4, r1, 0x2c +/* 8016CE14 00169D74 C0 19 00 40 */ lfs f0, 0x40(r25) +/* 8016CE18 00169D78 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8016CE1C 00169D7C D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8016CE20 00169D80 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 8016CE24 00169D84 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 8016CE28 00169D88 48 1A 50 95 */ bl BuildTransform4f__11CQuaternionCFRC9CVector3f +/* 8016CE2C 00169D8C 38 79 00 34 */ addi r3, r25, 0x34 +/* 8016CE30 00169D90 38 81 00 F8 */ addi r4, r1, 0xf8 +/* 8016CE34 00169D94 48 1A 5D 0D */ bl __as__12CTransform4fFRC12CTransform4f +/* 8016CE38 00169D98 88 19 00 E4 */ lbz r0, 0xe4(r25) +/* 8016CE3C 00169D9C 38 60 00 01 */ li r3, 1 +/* 8016CE40 00169DA0 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8016CE44 00169DA4 98 19 00 E4 */ stb r0, 0xe4(r25) +/* 8016CE48 00169DA8 88 19 00 E4 */ lbz r0, 0xe4(r25) +/* 8016CE4C 00169DAC 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 8016CE50 00169DB0 98 19 00 E4 */ stb r0, 0xe4(r25) +/* 8016CE54 00169DB4 88 19 00 E4 */ lbz r0, 0xe4(r25) +/* 8016CE58 00169DB8 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 8016CE5C 00169DBC 98 19 00 E4 */ stb r0, 0xe4(r25) +lbl_8016CE60: +/* 8016CE60 00169DC0 E3 E1 0A 48 */ psq_l f31, -1464(r1), 0, qr0 +/* 8016CE64 00169DC4 CB E1 0A 40 */ lfd f31, 0xa40(r1) +/* 8016CE68 00169DC8 E3 C1 0A 38 */ psq_l f30, -1480(r1), 0, qr0 +/* 8016CE6C 00169DCC CB C1 0A 30 */ lfd f30, 0xa30(r1) +/* 8016CE70 00169DD0 E3 A1 0A 28 */ psq_l f29, -1496(r1), 0, qr0 +/* 8016CE74 00169DD4 CB A1 0A 20 */ lfd f29, 0xa20(r1) +/* 8016CE78 00169DD8 E3 81 0A 18 */ psq_l f28, -1512(r1), 0, qr0 +/* 8016CE7C 00169DDC CB 81 0A 10 */ lfd f28, 0xa10(r1) +/* 8016CE80 00169DE0 E3 61 0A 08 */ psq_l f27, -1528(r1), 0, qr0 +/* 8016CE84 00169DE4 CB 61 0A 00 */ lfd f27, 0xa00(r1) +/* 8016CE88 00169DE8 E3 41 09 F8 */ psq_l f26, -1544(r1), 0, qr0 +/* 8016CE8C 00169DEC CB 41 09 F0 */ lfd f26, 0x9f0(r1) +/* 8016CE90 00169DF0 E3 21 09 E8 */ psq_l f25, -1560(r1), 0, qr0 +/* 8016CE94 00169DF4 CB 21 09 E0 */ lfd f25, 0x9e0(r1) +/* 8016CE98 00169DF8 E3 01 09 D8 */ psq_l f24, -1576(r1), 0, qr0 +/* 8016CE9C 00169DFC CB 01 09 D0 */ lfd f24, 0x9d0(r1) +/* 8016CEA0 00169E00 E2 E1 09 C8 */ psq_l f23, -1592(r1), 0, qr0 +/* 8016CEA4 00169E04 CA E1 09 C0 */ lfd f23, 0x9c0(r1) +/* 8016CEA8 00169E08 BA E1 09 9C */ lmw r23, 0x99c(r1) +/* 8016CEAC 00169E0C 80 01 0A 54 */ lwz r0, 0xa54(r1) +/* 8016CEB0 00169E10 7C 08 03 A6 */ mtlr r0 +/* 8016CEB4 00169E14 38 21 0A 50 */ addi r1, r1, 0xa50 +/* 8016CEB8 00169E18 4E 80 00 20 */ blr + +.global sub_8016cebc +sub_8016cebc: +/* 8016CEBC 00169E1C 94 21 FE B0 */ stwu r1, -0x150(r1) +/* 8016CEC0 00169E20 7C 08 02 A6 */ mflr r0 +/* 8016CEC4 00169E24 3C C0 80 5A */ lis r6, lbl_805A6724@ha +/* 8016CEC8 00169E28 3C A0 80 5A */ lis r5, skIdentity4f@ha +/* 8016CECC 00169E2C 90 01 01 54 */ stw r0, 0x154(r1) +/* 8016CED0 00169E30 38 05 66 70 */ addi r0, r5, skIdentity4f@l +/* 8016CED4 00169E34 93 E1 01 4C */ stw r31, 0x14c(r1) +/* 8016CED8 00169E38 3B E0 00 00 */ li r31, 0 +/* 8016CEDC 00169E3C 93 C1 01 48 */ stw r30, 0x148(r1) +/* 8016CEE0 00169E40 7C 9E 23 78 */ mr r30, r4 +/* 8016CEE4 00169E44 7C 04 03 78 */ mr r4, r0 +/* 8016CEE8 00169E48 93 A1 01 44 */ stw r29, 0x144(r1) +/* 8016CEEC 00169E4C 7C 7D 1B 78 */ mr r29, r3 +/* 8016CEF0 00169E50 38 61 01 08 */ addi r3, r1, 0x108 +/* 8016CEF4 00169E54 93 81 01 40 */ stw r28, 0x140(r1) +/* 8016CEF8 00169E58 C4 46 67 24 */ lfsu f2, lbl_805A6724@l(r6) +/* 8016CEFC 00169E5C C0 26 00 04 */ lfs f1, 4(r6) +/* 8016CF00 00169E60 C0 06 00 08 */ lfs f0, 8(r6) +/* 8016CF04 00169E64 D0 41 00 84 */ stfs f2, 0x84(r1) +/* 8016CF08 00169E68 D0 21 00 88 */ stfs f1, 0x88(r1) +/* 8016CF0C 00169E6C D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 8016CF10 00169E70 48 1A 5C 65 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8016CF14 00169E74 83 9E 08 4C */ lwz r28, 0x84c(r30) +/* 8016CF18 00169E78 A0 7D 07 B0 */ lhz r3, 0x7b0(r29) +/* 8016CF1C 00169E7C A0 1C 00 08 */ lhz r0, 8(r28) +/* 8016CF20 00169E80 7C 03 00 40 */ cmplw r3, r0 +/* 8016CF24 00169E84 40 82 01 80 */ bne lbl_8016D0A4 +/* 8016CF28 00169E88 A0 7C 02 6C */ lhz r3, 0x26c(r28) +/* 8016CF2C 00169E8C A0 1D 00 08 */ lhz r0, 8(r29) +/* 8016CF30 00169E90 7C 03 00 40 */ cmplw r3, r0 +/* 8016CF34 00169E94 40 82 01 FC */ bne lbl_8016D130 +/* 8016CF38 00169E98 7F 83 E3 78 */ mr r3, r28 +/* 8016CF3C 00169E9C 4B EA 7A 69 */ bl DetachActorFromPlayer__7CPlayerFv +/* 8016CF40 00169EA0 80 1C 02 F8 */ lwz r0, 0x2f8(r28) +/* 8016CF44 00169EA4 7F 9F E3 78 */ mr r31, r28 +/* 8016CF48 00169EA8 2C 00 00 01 */ cmpwi r0, 1 +/* 8016CF4C 00169EAC 41 82 00 2C */ beq lbl_8016CF78 +/* 8016CF50 00169EB0 C0 5C 00 58 */ lfs f2, 0x58(r28) +/* 8016CF54 00169EB4 38 9C 00 34 */ addi r4, r28, 0x34 +/* 8016CF58 00169EB8 C0 3C 00 48 */ lfs f1, 0x48(r28) +/* 8016CF5C 00169EBC 38 61 01 08 */ addi r3, r1, 0x108 +/* 8016CF60 00169EC0 C0 1C 00 38 */ lfs f0, 0x38(r28) +/* 8016CF64 00169EC4 D0 01 00 84 */ stfs f0, 0x84(r1) +/* 8016CF68 00169EC8 D0 21 00 88 */ stfs f1, 0x88(r1) +/* 8016CF6C 00169ECC D0 41 00 8C */ stfs f2, 0x8c(r1) +/* 8016CF70 00169ED0 48 1A 5B D1 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8016CF74 00169ED4 48 00 00 D8 */ b lbl_8016D04C +lbl_8016CF78: +/* 8016CF78 00169ED8 C0 02 A0 94 */ lfs f0, lbl_805ABDB4@sda21(r2) +/* 8016CF7C 00169EDC 7F A3 EB 78 */ mr r3, r29 +/* 8016CF80 00169EE0 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 8016CF84 00169EE4 4B EE 75 2D */ bl GetYaw__6CActorCFv +/* 8016CF88 00169EE8 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 8016CF8C 00169EEC 38 61 00 44 */ addi r3, r1, 0x44 +/* 8016CF90 00169EF0 38 81 00 18 */ addi r4, r1, 0x18 +/* 8016CF94 00169EF4 48 1A 41 65 */ bl ZRotation__11CQuaternionFRC9CRelAngle +/* 8016CF98 00169EF8 38 61 00 54 */ addi r3, r1, 0x54 +/* 8016CF9C 00169EFC 38 81 00 1C */ addi r4, r1, 0x1c +/* 8016CFA0 00169F00 48 1A 41 59 */ bl ZRotation__11CQuaternionFRC9CRelAngle +/* 8016CFA4 00169F04 38 61 00 64 */ addi r3, r1, 0x64 +/* 8016CFA8 00169F08 38 81 00 54 */ addi r4, r1, 0x54 +/* 8016CFAC 00169F0C 38 A1 00 44 */ addi r5, r1, 0x44 +/* 8016CFB0 00169F10 48 1A 41 F1 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 8016CFB4 00169F14 C0 61 00 64 */ lfs f3, 0x64(r1) +/* 8016CFB8 00169F18 38 61 00 C0 */ addi r3, r1, 0xc0 +/* 8016CFBC 00169F1C C0 41 00 68 */ lfs f2, 0x68(r1) +/* 8016CFC0 00169F20 38 81 00 74 */ addi r4, r1, 0x74 +/* 8016CFC4 00169F24 C0 21 00 6C */ lfs f1, 0x6c(r1) +/* 8016CFC8 00169F28 C0 01 00 70 */ lfs f0, 0x70(r1) +/* 8016CFCC 00169F2C D0 61 00 74 */ stfs f3, 0x74(r1) +/* 8016CFD0 00169F30 D0 41 00 78 */ stfs f2, 0x78(r1) +/* 8016CFD4 00169F34 D0 21 00 7C */ stfs f1, 0x7c(r1) +/* 8016CFD8 00169F38 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 8016CFDC 00169F3C 48 1A 50 B1 */ bl BuildTransform__11CQuaternionCFv +/* 8016CFE0 00169F40 38 61 00 E4 */ addi r3, r1, 0xe4 +/* 8016CFE4 00169F44 38 81 00 C0 */ addi r4, r1, 0xc0 +/* 8016CFE8 00169F48 48 1A 30 3D */ bl __ct__9CMatrix3fFRC9CMatrix3f +/* 8016CFEC 00169F4C 3C 80 80 5A */ lis r4, lbl_805A6724@ha +/* 8016CFF0 00169F50 38 61 00 38 */ addi r3, r1, 0x38 +/* 8016CFF4 00169F54 38 A4 67 24 */ addi r5, r4, lbl_805A6724@l +/* 8016CFF8 00169F58 38 81 00 E4 */ addi r4, r1, 0xe4 +/* 8016CFFC 00169F5C 48 1A 32 99 */ bl __ml__9CMatrix3fCFRC9CVector3f +/* 8016D000 00169F60 C0 41 00 38 */ lfs f2, 0x38(r1) +/* 8016D004 00169F64 38 61 00 90 */ addi r3, r1, 0x90 +/* 8016D008 00169F68 C0 21 00 3C */ lfs f1, 0x3c(r1) +/* 8016D00C 00169F6C 38 81 00 E4 */ addi r4, r1, 0xe4 +/* 8016D010 00169F70 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 8016D014 00169F74 38 A1 00 2C */ addi r5, r1, 0x2c +/* 8016D018 00169F78 D0 41 00 84 */ stfs f2, 0x84(r1) +/* 8016D01C 00169F7C D0 21 00 88 */ stfs f1, 0x88(r1) +/* 8016D020 00169F80 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 8016D024 00169F84 C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 8016D028 00169F88 C0 3C 00 50 */ lfs f1, 0x50(r28) +/* 8016D02C 00169F8C C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 8016D030 00169F90 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8016D034 00169F94 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 8016D038 00169F98 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 8016D03C 00169F9C 48 1A 62 3D */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f +/* 8016D040 00169FA0 7C 64 1B 78 */ mr r4, r3 +/* 8016D044 00169FA4 38 61 01 08 */ addi r3, r1, 0x108 +/* 8016D048 00169FA8 48 1A 5A F9 */ bl __as__12CTransform4fFRC12CTransform4f +lbl_8016D04C: +/* 8016D04C 00169FAC 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 8016D050 00169FB0 38 81 00 10 */ addi r4, r1, 0x10 +/* 8016D054 00169FB4 A0 1D 00 08 */ lhz r0, 8(r29) +/* 8016D058 00169FB8 38 63 02 74 */ addi r3, r3, 0x274 +/* 8016D05C 00169FBC B0 01 00 0C */ sth r0, 0xc(r1) +/* 8016D060 00169FC0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8016D064 00169FC4 48 04 76 61 */ bl RemoveEnergyDrainSource__18CPlayerEnergyDrainF9TUniqueId +/* 8016D068 00169FC8 7F 84 E3 78 */ mr r4, r28 +/* 8016D06C 00169FCC 7F C5 F3 78 */ mr r5, r30 +/* 8016D070 00169FD0 81 9C 00 00 */ lwz r12, 0(r28) +/* 8016D074 00169FD4 38 61 00 20 */ addi r3, r1, 0x20 +/* 8016D078 00169FD8 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) +/* 8016D07C 00169FDC 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8016D080 00169FE0 7D 89 03 A6 */ mtctr r12 +/* 8016D084 00169FE4 4E 80 04 21 */ bctrl +/* 8016D088 00169FE8 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 8016D08C 00169FEC D0 1D 08 0C */ stfs f0, 0x80c(r29) +/* 8016D090 00169FF0 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 8016D094 00169FF4 D0 1D 08 10 */ stfs f0, 0x810(r29) +/* 8016D098 00169FF8 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 8016D09C 00169FFC D0 1D 08 14 */ stfs f0, 0x814(r29) +/* 8016D0A0 0016A000 48 00 00 90 */ b lbl_8016D130 +lbl_8016D0A4: +/* 8016D0A4 0016A004 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016D0A8 0016A008 7C 03 00 40 */ cmplw r3, r0 +/* 8016D0AC 0016A00C 41 82 00 84 */ beq lbl_8016D130 +/* 8016D0B0 0016A010 A0 1D 07 B0 */ lhz r0, 0x7b0(r29) +/* 8016D0B4 0016A014 7F C3 F3 78 */ mr r3, r30 +/* 8016D0B8 0016A018 38 81 00 08 */ addi r4, r1, 8 +/* 8016D0BC 0016A01C B0 01 00 08 */ sth r0, 8(r1) +/* 8016D0C0 0016A020 4B ED F4 B5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8016D0C4 0016A024 7C 64 1B 78 */ mr r4, r3 +/* 8016D0C8 0016A028 38 61 00 14 */ addi r3, r1, 0x14 +/* 8016D0CC 0016A02C 4B F3 83 05 */ bl sub_800a53d0 +/* 8016D0D0 0016A030 4B F3 82 D5 */ bl "CastTo<12CSpacePirate>__10CPatternedFP7CEntity" +/* 8016D0D4 0016A034 7C 7C 1B 79 */ or. r28, r3, r3 +/* 8016D0D8 0016A038 41 82 00 58 */ beq lbl_8016D130 +/* 8016D0DC 0016A03C A0 9C 07 B4 */ lhz r4, 0x7b4(r28) +/* 8016D0E0 0016A040 A0 1D 00 08 */ lhz r0, 8(r29) +/* 8016D0E4 0016A044 7C 04 00 40 */ cmplw r4, r0 +/* 8016D0E8 0016A048 40 82 00 48 */ bne lbl_8016D130 +/* 8016D0EC 0016A04C 4B FB C7 21 */ bl DetachActorFromPirate__12CSpacePirateFv +/* 8016D0F0 0016A050 C0 5C 00 58 */ lfs f2, 0x58(r28) +/* 8016D0F4 0016A054 38 9C 00 34 */ addi r4, r28, 0x34 +/* 8016D0F8 0016A058 C0 3C 00 48 */ lfs f1, 0x48(r28) +/* 8016D0FC 0016A05C 7F 9F E3 78 */ mr r31, r28 +/* 8016D100 0016A060 C0 1C 00 38 */ lfs f0, 0x38(r28) +/* 8016D104 0016A064 38 61 01 08 */ addi r3, r1, 0x108 +/* 8016D108 0016A068 D0 01 00 84 */ stfs f0, 0x84(r1) +/* 8016D10C 0016A06C D0 21 00 88 */ stfs f1, 0x88(r1) +/* 8016D110 0016A070 D0 41 00 8C */ stfs f2, 0x8c(r1) +/* 8016D114 0016A074 48 1A 5A 2D */ bl __as__12CTransform4fFRC12CTransform4f +/* 8016D118 0016A078 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 8016D11C 0016A07C C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 8016D120 0016A080 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 8016D124 0016A084 D0 1D 08 0C */ stfs f0, 0x80c(r29) +/* 8016D128 0016A088 D0 3D 08 10 */ stfs f1, 0x810(r29) +/* 8016D12C 0016A08C D0 5D 08 14 */ stfs f2, 0x814(r29) +lbl_8016D130: +/* 8016D130 0016A090 7F A3 EB 78 */ mr r3, r29 +/* 8016D134 0016A094 7F E4 FB 78 */ mr r4, r31 +/* 8016D138 0016A098 7F C5 F3 78 */ mr r5, r30 +/* 8016D13C 0016A09C 38 C1 00 84 */ addi r6, r1, 0x84 +/* 8016D140 0016A0A0 38 E1 01 08 */ addi r7, r1, 0x108 +/* 8016D144 0016A0A4 4B FF F8 B9 */ bl sub_8016c9fc +/* 8016D148 0016A0A8 88 1D 09 BF */ lbz r0, 0x9bf(r29) +/* 8016D14C 0016A0AC 38 60 00 01 */ li r3, 1 +/* 8016D150 0016A0B0 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 8016D154 0016A0B4 98 1D 09 BF */ stb r0, 0x9bf(r29) +/* 8016D158 0016A0B8 54 03 07 FE */ clrlwi r3, r0, 0x1f +/* 8016D15C 0016A0BC 88 1D 09 BF */ lbz r0, 0x9bf(r29) +/* 8016D160 0016A0C0 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 8016D164 0016A0C4 98 1D 09 BF */ stb r0, 0x9bf(r29) +/* 8016D168 0016A0C8 83 E1 01 4C */ lwz r31, 0x14c(r1) +/* 8016D16C 0016A0CC 83 C1 01 48 */ lwz r30, 0x148(r1) +/* 8016D170 0016A0D0 83 A1 01 44 */ lwz r29, 0x144(r1) +/* 8016D174 0016A0D4 83 81 01 40 */ lwz r28, 0x140(r1) +/* 8016D178 0016A0D8 80 01 01 54 */ lwz r0, 0x154(r1) +/* 8016D17C 0016A0DC 7C 08 03 A6 */ mtlr r0 +/* 8016D180 0016A0E0 38 21 01 50 */ addi r1, r1, 0x150 +/* 8016D184 0016A0E4 4E 80 00 20 */ blr + +.global sub_8016d188 +sub_8016d188: +/* 8016D188 0016A0E8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8016D18C 0016A0EC 7C 08 02 A6 */ mflr r0 +/* 8016D190 0016A0F0 90 01 00 24 */ stw r0, 0x24(r1) +/* 8016D194 0016A0F4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8016D198 0016A0F8 7C 9F 23 78 */ mr r31, r4 +/* 8016D19C 0016A0FC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8016D1A0 0016A100 7C 7E 1B 78 */ mr r30, r3 +/* 8016D1A4 0016A104 80 A4 08 4C */ lwz r5, 0x84c(r4) +/* 8016D1A8 0016A108 A0 C3 07 B0 */ lhz r6, 0x7b0(r3) +/* 8016D1AC 0016A10C A0 05 00 08 */ lhz r0, 8(r5) +/* 8016D1B0 0016A110 7C 06 00 40 */ cmplw r6, r0 +/* 8016D1B4 0016A114 40 82 00 50 */ bne lbl_8016D204 +/* 8016D1B8 0016A118 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8016D1BC 0016A11C 38 81 00 14 */ addi r4, r1, 0x14 +/* 8016D1C0 0016A120 38 A0 00 00 */ li r5, 0 +/* 8016D1C4 0016A124 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8016D1C8 0016A128 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8016D1CC 0016A12C 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8016D1D0 0016A130 4B EA 78 01 */ bl AttachActorToPlayer__7CPlayerF9TUniqueId +/* 8016D1D4 0016A134 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016D1D8 0016A138 41 82 00 34 */ beq lbl_8016D20C +/* 8016D1DC 0016A13C 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8016D1E0 0016A140 38 81 00 0C */ addi r4, r1, 0xc +/* 8016D1E4 0016A144 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8016D1E8 0016A148 C0 22 A0 98 */ lfs f1, lbl_805ABDB8@sda21(r2) +/* 8016D1EC 0016A14C 38 63 02 74 */ addi r3, r3, 0x274 +/* 8016D1F0 0016A150 B0 01 00 08 */ sth r0, 8(r1) +/* 8016D1F4 0016A154 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8016D1F8 0016A158 48 04 76 9D */ bl sub_801b4894 +/* 8016D1FC 0016A15C 38 60 00 01 */ li r3, 1 +/* 8016D200 0016A160 48 00 00 10 */ b lbl_8016D210 +lbl_8016D204: +/* 8016D204 0016A164 48 00 0B AD */ bl sub_8016ddb0 +/* 8016D208 0016A168 48 00 00 08 */ b lbl_8016D210 +lbl_8016D20C: +/* 8016D20C 0016A16C 38 60 00 00 */ li r3, 0 +lbl_8016D210: +/* 8016D210 0016A170 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8016D214 0016A174 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8016D218 0016A178 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8016D21C 0016A17C 7C 08 03 A6 */ mtlr r0 +/* 8016D220 0016A180 38 21 00 20 */ addi r1, r1, 0x20 +/* 8016D224 0016A184 4E 80 00 20 */ blr + +.global sub_8016d228 +sub_8016d228: +/* 8016D228 0016A188 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8016D22C 0016A18C 7C 08 02 A6 */ mflr r0 +/* 8016D230 0016A190 90 01 00 34 */ stw r0, 0x34(r1) +/* 8016D234 0016A194 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8016D238 0016A198 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8016D23C 0016A19C 7C 7E 1B 78 */ mr r30, r3 +/* 8016D240 0016A1A0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016D244 0016A1A4 A0 63 06 98 */ lhz r3, 0x698(r3) +/* 8016D248 0016A1A8 7C 03 00 40 */ cmplw r3, r0 +/* 8016D24C 0016A1AC 41 82 00 68 */ beq lbl_8016D2B4 +/* 8016D250 0016A1B0 A0 1E 06 98 */ lhz r0, 0x698(r30) +/* 8016D254 0016A1B4 7C 83 23 78 */ mr r3, r4 +/* 8016D258 0016A1B8 38 81 00 18 */ addi r4, r1, 0x18 +/* 8016D25C 0016A1BC B0 01 00 18 */ sth r0, 0x18(r1) +/* 8016D260 0016A1C0 4B ED F3 15 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8016D264 0016A1C4 7C 64 1B 78 */ mr r4, r3 +/* 8016D268 0016A1C8 38 61 00 1C */ addi r3, r1, 0x1c +/* 8016D26C 0016A1CC 4B F3 A3 09 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 8016D270 0016A1D0 83 E3 00 04 */ lwz r31, 4(r3) +/* 8016D274 0016A1D4 28 1F 00 00 */ cmplwi r31, 0 +/* 8016D278 0016A1D8 41 82 00 3C */ beq lbl_8016D2B4 +/* 8016D27C 0016A1DC A0 1E 00 08 */ lhz r0, 8(r30) +/* 8016D280 0016A1E0 7F E3 FB 78 */ mr r3, r31 +/* 8016D284 0016A1E4 38 81 00 14 */ addi r4, r1, 0x14 +/* 8016D288 0016A1E8 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8016D28C 0016A1EC B0 01 00 14 */ sth r0, 0x14(r1) +/* 8016D290 0016A1F0 48 0C BD 61 */ bl IsPartOfTeam__10CTeamAiMgrCF9TUniqueId +/* 8016D294 0016A1F4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016D298 0016A1F8 41 82 00 1C */ beq lbl_8016D2B4 +/* 8016D29C 0016A1FC A0 1E 00 08 */ lhz r0, 8(r30) +/* 8016D2A0 0016A200 7F E3 FB 78 */ mr r3, r31 +/* 8016D2A4 0016A204 38 81 00 0C */ addi r4, r1, 0xc +/* 8016D2A8 0016A208 B0 01 00 08 */ sth r0, 8(r1) +/* 8016D2AC 0016A20C B0 01 00 0C */ sth r0, 0xc(r1) +/* 8016D2B0 0016A210 48 0C C2 45 */ bl RemoveTeamAiRole__10CTeamAiMgrF9TUniqueId +lbl_8016D2B4: +/* 8016D2B4 0016A214 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8016D2B8 0016A218 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8016D2BC 0016A21C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8016D2C0 0016A220 7C 08 03 A6 */ mtlr r0 +/* 8016D2C4 0016A224 38 21 00 30 */ addi r1, r1, 0x30 +/* 8016D2C8 0016A228 4E 80 00 20 */ blr + +.global sub_8016d2cc +sub_8016d2cc: +/* 8016D2CC 0016A22C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8016D2D0 0016A230 7C 08 02 A6 */ mflr r0 +/* 8016D2D4 0016A234 90 01 00 34 */ stw r0, 0x34(r1) +/* 8016D2D8 0016A238 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8016D2DC 0016A23C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8016D2E0 0016A240 7C 7E 1B 78 */ mr r30, r3 +/* 8016D2E4 0016A244 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016D2E8 0016A248 A0 63 06 98 */ lhz r3, 0x698(r3) +/* 8016D2EC 0016A24C 7C 03 00 40 */ cmplw r3, r0 +/* 8016D2F0 0016A250 41 82 00 68 */ beq lbl_8016D358 +/* 8016D2F4 0016A254 A0 1E 06 98 */ lhz r0, 0x698(r30) +/* 8016D2F8 0016A258 7C 83 23 78 */ mr r3, r4 +/* 8016D2FC 0016A25C 38 81 00 10 */ addi r4, r1, 0x10 +/* 8016D300 0016A260 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8016D304 0016A264 4B ED F2 71 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8016D308 0016A268 7C 64 1B 78 */ mr r4, r3 +/* 8016D30C 0016A26C 38 61 00 14 */ addi r3, r1, 0x14 +/* 8016D310 0016A270 4B F3 A2 65 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 8016D314 0016A274 83 E3 00 04 */ lwz r31, 4(r3) +/* 8016D318 0016A278 28 1F 00 00 */ cmplwi r31, 0 +/* 8016D31C 0016A27C 41 82 00 3C */ beq lbl_8016D358 +/* 8016D320 0016A280 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8016D324 0016A284 7F E3 FB 78 */ mr r3, r31 +/* 8016D328 0016A288 38 81 00 0C */ addi r4, r1, 0xc +/* 8016D32C 0016A28C B0 01 00 08 */ sth r0, 8(r1) +/* 8016D330 0016A290 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8016D334 0016A294 48 0C BC BD */ bl IsPartOfTeam__10CTeamAiMgrCF9TUniqueId +/* 8016D338 0016A298 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016D33C 0016A29C 40 82 00 1C */ bne lbl_8016D358 +/* 8016D340 0016A2A0 7F E3 FB 78 */ mr r3, r31 +/* 8016D344 0016A2A4 7F C4 F3 78 */ mr r4, r30 +/* 8016D348 0016A2A8 38 A0 00 01 */ li r5, 1 +/* 8016D34C 0016A2AC 38 C0 FF FF */ li r6, -1 +/* 8016D350 0016A2B0 38 E0 FF FF */ li r7, -1 +/* 8016D354 0016A2B4 48 0C C4 59 */ bl AssignTeamAiRole__10CTeamAiMgrFRC3CAiiii +lbl_8016D358: +/* 8016D358 0016A2B8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8016D35C 0016A2BC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8016D360 0016A2C0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8016D364 0016A2C4 7C 08 03 A6 */ mtlr r0 +/* 8016D368 0016A2C8 38 21 00 30 */ addi r1, r1, 0x30 +/* 8016D36C 0016A2CC 4E 80 00 20 */ blr + +.global sub_8016d370 +sub_8016d370: +/* 8016D370 0016A2D0 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 8016D374 0016A2D4 7C 08 02 A6 */ mflr r0 +/* 8016D378 0016A2D8 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 8016D37C 0016A2DC DB E1 00 D0 */ stfd f31, 0xd0(r1) +/* 8016D380 0016A2E0 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 +/* 8016D384 0016A2E4 DB C1 00 C0 */ stfd f30, 0xc0(r1) +/* 8016D388 0016A2E8 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 +/* 8016D38C 0016A2EC DB A1 00 B0 */ stfd f29, 0xb0(r1) +/* 8016D390 0016A2F0 F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0 +/* 8016D394 0016A2F4 DB 81 00 A0 */ stfd f28, 0xa0(r1) +/* 8016D398 0016A2F8 F3 81 00 A8 */ psq_st f28, 168(r1), 0, qr0 +/* 8016D39C 0016A2FC DB 61 00 90 */ stfd f27, 0x90(r1) +/* 8016D3A0 0016A300 F3 61 00 98 */ psq_st f27, 152(r1), 0, qr0 +/* 8016D3A4 0016A304 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 8016D3A8 0016A308 93 C1 00 88 */ stw r30, 0x88(r1) +/* 8016D3AC 0016A30C A0 03 09 BC */ lhz r0, 0x9bc(r3) +/* 8016D3B0 0016A310 7C 7E 1B 78 */ mr r30, r3 +/* 8016D3B4 0016A314 FF E0 08 90 */ fmr f31, f1 +/* 8016D3B8 0016A318 7C 83 23 78 */ mr r3, r4 +/* 8016D3BC 0016A31C B0 01 00 08 */ sth r0, 8(r1) +/* 8016D3C0 0016A320 38 81 00 08 */ addi r4, r1, 8 +/* 8016D3C4 0016A324 4B ED F1 B1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8016D3C8 0016A328 7C 64 1B 78 */ mr r4, r3 +/* 8016D3CC 0016A32C 38 61 00 0C */ addi r3, r1, 0xc +/* 8016D3D0 0016A330 4B F3 81 05 */ bl sub_800a54d4 +/* 8016D3D4 0016A334 4B F3 80 D5 */ bl "CastTo<8CMetroid>__10CPatternedFP7CEntity" +/* 8016D3D8 0016A338 7C 7F 1B 79 */ or. r31, r3, r3 +/* 8016D3DC 0016A33C 41 82 01 60 */ beq lbl_8016D53C +/* 8016D3E0 0016A340 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 8016D3E4 0016A344 38 61 00 70 */ addi r3, r1, 0x70 +/* 8016D3E8 0016A348 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 8016D3EC 0016A34C C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 8016D3F0 0016A350 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8016D3F4 0016A354 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8016D3F8 0016A358 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 8016D3FC 0016A35C C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8016D400 0016A360 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8016D404 0016A364 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8016D408 0016A368 D0 81 00 74 */ stfs f4, 0x74(r1) +/* 8016D40C 0016A36C D0 41 00 78 */ stfs f2, 0x78(r1) +/* 8016D410 0016A370 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 8016D414 0016A374 C3 9E 00 54 */ lfs f28, 0x54(r30) +/* 8016D418 0016A378 C3 BE 00 44 */ lfs f29, 0x44(r30) +/* 8016D41C 0016A37C C3 DE 00 34 */ lfs f30, 0x34(r30) +/* 8016D420 0016A380 C3 7E 06 BC */ lfs f27, 0x6bc(r30) +/* 8016D424 0016A384 48 1A 74 95 */ bl Magnitude__9CVector3fCFv +/* 8016D428 0016A388 C0 02 A0 D8 */ lfs f0, lbl_805ABDF8@sda21(r2) +/* 8016D42C 0016A38C EC 00 06 F2 */ fmuls f0, f0, f27 +/* 8016D430 0016A390 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8016D434 0016A394 40 80 01 08 */ bge lbl_8016D53C +/* 8016D438 0016A398 EF 60 08 28 */ fsubs f27, f0, f1 +/* 8016D43C 0016A39C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8016D440 0016A3A0 4B FC D4 79 */ bl GetAnimTimeRemaining__15CBodyControllerCFv +/* 8016D444 0016A3A4 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016D448 0016A3A8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8016D44C 0016A3AC 40 81 00 10 */ ble lbl_8016D45C +/* 8016D450 0016A3B0 EC 1B 07 F2 */ fmuls f0, f27, f31 +/* 8016D454 0016A3B4 EC 00 08 24 */ fdivs f0, f0, f1 +/* 8016D458 0016A3B8 48 00 00 08 */ b lbl_8016D460 +lbl_8016D45C: +/* 8016D45C 0016A3BC FC 00 D8 90 */ fmr f0, f27 +lbl_8016D460: +/* 8016D460 0016A3C0 EC 40 07 B2 */ fmuls f2, f0, f30 +/* 8016D464 0016A3C4 38 61 00 34 */ addi r3, r1, 0x34 +/* 8016D468 0016A3C8 EC 20 07 72 */ fmuls f1, f0, f29 +/* 8016D46C 0016A3CC 38 9E 00 34 */ addi r4, r30, 0x34 +/* 8016D470 0016A3D0 EC 00 07 32 */ fmuls f0, f0, f28 +/* 8016D474 0016A3D4 38 A1 00 64 */ addi r5, r1, 0x64 +/* 8016D478 0016A3D8 D0 41 00 64 */ stfs f2, 0x64(r1) +/* 8016D47C 0016A3DC D0 21 00 68 */ stfs f1, 0x68(r1) +/* 8016D480 0016A3E0 D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 8016D484 0016A3E4 48 1A 55 A1 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 8016D488 0016A3E8 FC 20 F8 90 */ fmr f1, f31 +/* 8016D48C 0016A3EC 7F C4 F3 78 */ mr r4, r30 +/* 8016D490 0016A3F0 38 61 00 40 */ addi r3, r1, 0x40 +/* 8016D494 0016A3F4 38 A1 00 34 */ addi r5, r1, 0x34 +/* 8016D498 0016A3F8 4B FA DB 71 */ bl GetMoveToORImpulseWR__13CPhysicsActorCFRC9CVector3ff +/* 8016D49C 0016A3FC C0 41 00 40 */ lfs f2, 0x40(r1) +/* 8016D4A0 0016A400 C0 21 00 44 */ lfs f1, 0x44(r1) +/* 8016D4A4 0016A404 C0 01 00 48 */ lfs f0, 0x48(r1) +/* 8016D4A8 0016A408 D0 41 00 58 */ stfs f2, 0x58(r1) +/* 8016D4AC 0016A40C D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 8016D4B0 0016A410 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 8016D4B4 0016A414 4B EA E0 81 */ bl Identity__10CAxisAngleFv +/* 8016D4B8 0016A418 7C 65 1B 78 */ mr r5, r3 +/* 8016D4BC 0016A41C 7F C3 F3 78 */ mr r3, r30 +/* 8016D4C0 0016A420 38 81 00 58 */ addi r4, r1, 0x58 +/* 8016D4C4 0016A424 4B FA EE D5 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +/* 8016D4C8 0016A428 C0 41 00 64 */ lfs f2, 0x64(r1) +/* 8016D4CC 0016A42C 38 61 00 1C */ addi r3, r1, 0x1c +/* 8016D4D0 0016A430 C0 21 00 68 */ lfs f1, 0x68(r1) +/* 8016D4D4 0016A434 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8016D4D8 0016A438 C0 01 00 6C */ lfs f0, 0x6c(r1) +/* 8016D4DC 0016A43C FC 40 10 50 */ fneg f2, f2 +/* 8016D4E0 0016A440 FC 20 08 50 */ fneg f1, f1 +/* 8016D4E4 0016A444 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8016D4E8 0016A448 FC 00 00 50 */ fneg f0, f0 +/* 8016D4EC 0016A44C D0 41 00 10 */ stfs f2, 0x10(r1) +/* 8016D4F0 0016A450 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 8016D4F4 0016A454 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 8016D4F8 0016A458 48 1A 55 2D */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 8016D4FC 0016A45C FC 20 F8 90 */ fmr f1, f31 +/* 8016D500 0016A460 7F E4 FB 78 */ mr r4, r31 +/* 8016D504 0016A464 38 61 00 28 */ addi r3, r1, 0x28 +/* 8016D508 0016A468 38 A1 00 1C */ addi r5, r1, 0x1c +/* 8016D50C 0016A46C 4B FA DA FD */ bl GetMoveToORImpulseWR__13CPhysicsActorCFRC9CVector3ff +/* 8016D510 0016A470 C0 41 00 28 */ lfs f2, 0x28(r1) +/* 8016D514 0016A474 C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 8016D518 0016A478 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 8016D51C 0016A47C D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 8016D520 0016A480 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 8016D524 0016A484 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 8016D528 0016A488 4B EA E0 0D */ bl Identity__10CAxisAngleFv +/* 8016D52C 0016A48C 7C 65 1B 78 */ mr r5, r3 +/* 8016D530 0016A490 7F E3 FB 78 */ mr r3, r31 +/* 8016D534 0016A494 38 81 00 4C */ addi r4, r1, 0x4c +/* 8016D538 0016A498 4B FA EE 61 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +lbl_8016D53C: +/* 8016D53C 0016A49C E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 +/* 8016D540 0016A4A0 CB E1 00 D0 */ lfd f31, 0xd0(r1) +/* 8016D544 0016A4A4 E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 +/* 8016D548 0016A4A8 CB C1 00 C0 */ lfd f30, 0xc0(r1) +/* 8016D54C 0016A4AC E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0 +/* 8016D550 0016A4B0 CB A1 00 B0 */ lfd f29, 0xb0(r1) +/* 8016D554 0016A4B4 E3 81 00 A8 */ psq_l f28, 168(r1), 0, qr0 +/* 8016D558 0016A4B8 CB 81 00 A0 */ lfd f28, 0xa0(r1) +/* 8016D55C 0016A4BC E3 61 00 98 */ psq_l f27, 152(r1), 0, qr0 +/* 8016D560 0016A4C0 CB 61 00 90 */ lfd f27, 0x90(r1) +/* 8016D564 0016A4C4 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 8016D568 0016A4C8 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 8016D56C 0016A4CC 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 8016D570 0016A4D0 7C 08 03 A6 */ mtlr r0 +/* 8016D574 0016A4D4 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 8016D578 0016A4D8 4E 80 00 20 */ blr + +.global sub_8016d57c +sub_8016d57c: +/* 8016D57C 0016A4DC 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 8016D580 0016A4E0 7C 08 02 A6 */ mflr r0 +/* 8016D584 0016A4E4 90 01 01 04 */ stw r0, 0x104(r1) +/* 8016D588 0016A4E8 93 E1 00 FC */ stw r31, 0xfc(r1) +/* 8016D58C 0016A4EC 7C 7F 1B 78 */ mr r31, r3 +/* 8016D590 0016A4F0 93 C1 00 F8 */ stw r30, 0xf8(r1) +/* 8016D594 0016A4F4 7C BE 2B 78 */ mr r30, r5 +/* 8016D598 0016A4F8 93 A1 00 F4 */ stw r29, 0xf4(r1) +/* 8016D59C 0016A4FC 7C 9D 23 78 */ mr r29, r4 +/* 8016D5A0 0016A500 C0 C3 00 50 */ lfs f6, 0x50(r3) +/* 8016D5A4 0016A504 C0 05 00 04 */ lfs f0, 4(r5) +/* 8016D5A8 0016A508 C0 E3 00 40 */ lfs f7, 0x40(r3) +/* 8016D5AC 0016A50C EC 20 30 28 */ fsubs f1, f0, f6 +/* 8016D5B0 0016A510 C0 05 00 00 */ lfs f0, 0(r5) +/* 8016D5B4 0016A514 C0 A3 00 60 */ lfs f5, 0x60(r3) +/* 8016D5B8 0016A518 EC 60 38 28 */ fsubs f3, f0, f7 +/* 8016D5BC 0016A51C C0 85 00 08 */ lfs f4, 8(r5) +/* 8016D5C0 0016A520 EC 21 00 72 */ fmuls f1, f1, f1 +/* 8016D5C4 0016A524 EC 44 28 28 */ fsubs f2, f4, f5 +/* 8016D5C8 0016A528 C0 02 A0 DC */ lfs f0, lbl_805ABDFC@sda21(r2) +/* 8016D5CC 0016A52C EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 8016D5D0 0016A530 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 8016D5D4 0016A534 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8016D5D8 0016A538 40 81 01 90 */ ble lbl_8016D768 +/* 8016D5DC 0016A53C D0 E1 00 50 */ stfs f7, 0x50(r1) +/* 8016D5E0 0016A540 7F E5 FB 78 */ mr r5, r31 +/* 8016D5E4 0016A544 C0 22 A0 88 */ lfs f1, lbl_805ABDA8@sda21(r2) +/* 8016D5E8 0016A548 38 61 00 44 */ addi r3, r1, 0x44 +/* 8016D5EC 0016A54C D0 C1 00 54 */ stfs f6, 0x54(r1) +/* 8016D5F0 0016A550 38 9F 04 5C */ addi r4, r31, 0x45c +/* 8016D5F4 0016A554 38 C1 00 68 */ addi r6, r1, 0x68 +/* 8016D5F8 0016A558 D0 A1 00 58 */ stfs f5, 0x58(r1) +/* 8016D5FC 0016A55C D0 E1 00 68 */ stfs f7, 0x68(r1) +/* 8016D600 0016A560 D0 C1 00 6C */ stfs f6, 0x6c(r1) +/* 8016D604 0016A564 D0 81 00 70 */ stfs f4, 0x70(r1) +/* 8016D608 0016A568 4B FD 15 15 */ bl Arrival__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff +/* 8016D60C 0016A56C C0 81 00 48 */ lfs f4, 0x48(r1) +/* 8016D610 0016A570 C0 41 00 44 */ lfs f2, 0x44(r1) +/* 8016D614 0016A574 EC 24 01 32 */ fmuls f1, f4, f4 +/* 8016D618 0016A578 C0 A1 00 4C */ lfs f5, 0x4c(r1) +/* 8016D61C 0016A57C C0 02 A0 E0 */ lfs f0, lbl_805ABE00@sda21(r2) +/* 8016D620 0016A580 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 8016D624 0016A584 EC 25 09 7A */ fmadds f1, f5, f5, f1 +/* 8016D628 0016A588 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8016D62C 0016A58C 40 81 00 44 */ ble lbl_8016D670 +/* 8016D630 0016A590 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8016D634 0016A594 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 8016D638 0016A598 C0 02 A0 D8 */ lfs f0, lbl_805ABDF8@sda21(r2) +/* 8016D63C 0016A59C 38 81 00 C8 */ addi r4, r1, 0xc8 +/* 8016D640 0016A5A0 D0 41 00 C8 */ stfs f2, 0xc8(r1) +/* 8016D644 0016A5A4 C0 43 00 04 */ lfs f2, 4(r3) +/* 8016D648 0016A5A8 C0 23 00 08 */ lfs f1, 8(r3) +/* 8016D64C 0016A5AC D0 81 00 CC */ stfs f4, 0xcc(r1) +/* 8016D650 0016A5B0 D0 A1 00 D0 */ stfs f5, 0xd0(r1) +/* 8016D654 0016A5B4 D0 61 00 D4 */ stfs f3, 0xd4(r1) +/* 8016D658 0016A5B8 D0 41 00 D8 */ stfs f2, 0xd8(r1) +/* 8016D65C 0016A5BC D0 21 00 DC */ stfs f1, 0xdc(r1) +/* 8016D660 0016A5C0 D0 01 00 E0 */ stfs f0, 0xe0(r1) +/* 8016D664 0016A5C4 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8016D668 0016A5C8 38 63 00 04 */ addi r3, r3, 4 +/* 8016D66C 0016A5CC 4B FC 40 AD */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_8016D670: +/* 8016D670 0016A5D0 A0 1F 07 B0 */ lhz r0, 0x7b0(r31) +/* 8016D674 0016A5D4 7F A3 EB 78 */ mr r3, r29 +/* 8016D678 0016A5D8 38 81 00 0C */ addi r4, r1, 0xc +/* 8016D67C 0016A5DC B0 01 00 0C */ sth r0, 0xc(r1) +/* 8016D680 0016A5E0 4B ED EF 25 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8016D684 0016A5E4 7C 64 1B 78 */ mr r4, r3 +/* 8016D688 0016A5E8 38 61 00 18 */ addi r3, r1, 0x18 +/* 8016D68C 0016A5EC 4B F3 F0 59 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" +/* 8016D690 0016A5F0 80 E3 00 04 */ lwz r7, 4(r3) +/* 8016D694 0016A5F4 28 07 00 00 */ cmplwi r7, 0 +/* 8016D698 0016A5F8 41 82 00 6C */ beq lbl_8016D704 +/* 8016D69C 0016A5FC 7F E5 FB 78 */ mr r5, r31 +/* 8016D6A0 0016A600 7F C6 F3 78 */ mr r6, r30 +/* 8016D6A4 0016A604 38 61 00 38 */ addi r3, r1, 0x38 +/* 8016D6A8 0016A608 38 9F 04 5C */ addi r4, r31, 0x45c +/* 8016D6AC 0016A60C 38 E7 01 38 */ addi r7, r7, 0x138 +/* 8016D6B0 0016A610 4B FD 13 6D */ bl Pursuit__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3fRC9CVector3f +/* 8016D6B4 0016A614 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8016D6B8 0016A618 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 8016D6BC 0016A61C C0 C1 00 38 */ lfs f6, 0x38(r1) +/* 8016D6C0 0016A620 38 81 00 AC */ addi r4, r1, 0xac +/* 8016D6C4 0016A624 C0 A1 00 3C */ lfs f5, 0x3c(r1) +/* 8016D6C8 0016A628 C0 81 00 40 */ lfs f4, 0x40(r1) +/* 8016D6CC 0016A62C C0 43 00 04 */ lfs f2, 4(r3) +/* 8016D6D0 0016A630 C0 23 00 08 */ lfs f1, 8(r3) +/* 8016D6D4 0016A634 C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) +/* 8016D6D8 0016A638 D0 C1 00 AC */ stfs f6, 0xac(r1) +/* 8016D6DC 0016A63C D0 A1 00 B0 */ stfs f5, 0xb0(r1) +/* 8016D6E0 0016A640 D0 81 00 B4 */ stfs f4, 0xb4(r1) +/* 8016D6E4 0016A644 D0 61 00 B8 */ stfs f3, 0xb8(r1) +/* 8016D6E8 0016A648 D0 41 00 BC */ stfs f2, 0xbc(r1) +/* 8016D6EC 0016A64C D0 21 00 C0 */ stfs f1, 0xc0(r1) +/* 8016D6F0 0016A650 D0 01 00 C4 */ stfs f0, 0xc4(r1) +/* 8016D6F4 0016A654 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8016D6F8 0016A658 38 63 00 04 */ addi r3, r3, 4 +/* 8016D6FC 0016A65C 4B FC 40 1D */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 8016D700 0016A660 48 00 01 58 */ b lbl_8016D858 +lbl_8016D704: +/* 8016D704 0016A664 7F E5 FB 78 */ mr r5, r31 +/* 8016D708 0016A668 7F C6 F3 78 */ mr r6, r30 +/* 8016D70C 0016A66C 38 61 00 2C */ addi r3, r1, 0x2c +/* 8016D710 0016A670 38 9F 04 5C */ addi r4, r31, 0x45c +/* 8016D714 0016A674 4B FD 15 0D */ bl Seek__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3f +/* 8016D718 0016A678 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8016D71C 0016A67C C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 8016D720 0016A680 C0 C1 00 2C */ lfs f6, 0x2c(r1) +/* 8016D724 0016A684 38 81 00 90 */ addi r4, r1, 0x90 +/* 8016D728 0016A688 C0 A1 00 30 */ lfs f5, 0x30(r1) +/* 8016D72C 0016A68C C0 81 00 34 */ lfs f4, 0x34(r1) +/* 8016D730 0016A690 C0 43 00 04 */ lfs f2, 4(r3) +/* 8016D734 0016A694 C0 23 00 08 */ lfs f1, 8(r3) +/* 8016D738 0016A698 C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) +/* 8016D73C 0016A69C D0 C1 00 90 */ stfs f6, 0x90(r1) +/* 8016D740 0016A6A0 D0 A1 00 94 */ stfs f5, 0x94(r1) +/* 8016D744 0016A6A4 D0 81 00 98 */ stfs f4, 0x98(r1) +/* 8016D748 0016A6A8 D0 61 00 9C */ stfs f3, 0x9c(r1) +/* 8016D74C 0016A6AC D0 41 00 A0 */ stfs f2, 0xa0(r1) +/* 8016D750 0016A6B0 D0 21 00 A4 */ stfs f1, 0xa4(r1) +/* 8016D754 0016A6B4 D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 8016D758 0016A6B8 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8016D75C 0016A6BC 38 63 00 04 */ addi r3, r3, 4 +/* 8016D760 0016A6C0 4B FC 3F B9 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 8016D764 0016A6C4 48 00 00 F4 */ b lbl_8016D858 +lbl_8016D768: +/* 8016D768 0016A6C8 81 83 00 00 */ lwz r12, 0(r3) +/* 8016D76C 0016A6CC C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) +/* 8016D770 0016A6D0 81 8C 01 E8 */ lwz r12, 0x1e8(r12) +/* 8016D774 0016A6D4 7D 89 03 A6 */ mtctr r12 +/* 8016D778 0016A6D8 4E 80 04 21 */ bctrl +/* 8016D77C 0016A6DC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016D780 0016A6E0 41 82 00 D8 */ beq lbl_8016D858 +/* 8016D784 0016A6E4 A0 7F 07 B0 */ lhz r3, 0x7b0(r31) +/* 8016D788 0016A6E8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016D78C 0016A6EC 7C 03 00 40 */ cmplw r3, r0 +/* 8016D790 0016A6F0 41 82 00 C8 */ beq lbl_8016D858 +/* 8016D794 0016A6F4 A0 1F 07 B0 */ lhz r0, 0x7b0(r31) +/* 8016D798 0016A6F8 7F A3 EB 78 */ mr r3, r29 +/* 8016D79C 0016A6FC 38 81 00 08 */ addi r4, r1, 8 +/* 8016D7A0 0016A700 B0 01 00 08 */ sth r0, 8(r1) +/* 8016D7A4 0016A704 4B ED EE 01 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8016D7A8 0016A708 7C 64 1B 78 */ mr r4, r3 +/* 8016D7AC 0016A70C 38 61 00 10 */ addi r3, r1, 0x10 +/* 8016D7B0 0016A710 4B F4 24 E1 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8016D7B4 0016A714 80 83 00 04 */ lwz r4, 4(r3) +/* 8016D7B8 0016A718 28 04 00 00 */ cmplwi r4, 0 +/* 8016D7BC 0016A71C 41 82 00 9C */ beq lbl_8016D858 +/* 8016D7C0 0016A720 C0 24 00 50 */ lfs f1, 0x50(r4) +/* 8016D7C4 0016A724 38 61 00 5C */ addi r3, r1, 0x5c +/* 8016D7C8 0016A728 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 8016D7CC 0016A72C C0 64 00 60 */ lfs f3, 0x60(r4) +/* 8016D7D0 0016A730 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8016D7D4 0016A734 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8016D7D8 0016A738 C0 24 00 40 */ lfs f1, 0x40(r4) +/* 8016D7DC 0016A73C C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8016D7E0 0016A740 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8016D7E4 0016A744 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8016D7E8 0016A748 D0 81 00 60 */ stfs f4, 0x60(r1) +/* 8016D7EC 0016A74C D0 41 00 64 */ stfs f2, 0x64(r1) +/* 8016D7F0 0016A750 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 8016D7F4 0016A754 48 1A 6F 05 */ bl CanBeNormalized__9CVector3fCFv +/* 8016D7F8 0016A758 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016D7FC 0016A75C 41 82 00 5C */ beq lbl_8016D858 +/* 8016D800 0016A760 38 61 00 20 */ addi r3, r1, 0x20 +/* 8016D804 0016A764 38 81 00 5C */ addi r4, r1, 0x5c +/* 8016D808 0016A768 48 1A 70 49 */ bl AsNormalized__9CVector3fCFv +/* 8016D80C 0016A76C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8016D810 0016A770 C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 8016D814 0016A774 C0 61 00 20 */ lfs f3, 0x20(r1) +/* 8016D818 0016A778 38 81 00 74 */ addi r4, r1, 0x74 +/* 8016D81C 0016A77C C0 41 00 24 */ lfs f2, 0x24(r1) +/* 8016D820 0016A780 C0 A3 00 04 */ lfs f5, 4(r3) +/* 8016D824 0016A784 C0 83 00 08 */ lfs f4, 8(r3) +/* 8016D828 0016A788 C0 21 00 28 */ lfs f1, 0x28(r1) +/* 8016D82C 0016A78C C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) +/* 8016D830 0016A790 D0 C1 00 74 */ stfs f6, 0x74(r1) +/* 8016D834 0016A794 D0 A1 00 78 */ stfs f5, 0x78(r1) +/* 8016D838 0016A798 D0 81 00 7C */ stfs f4, 0x7c(r1) +/* 8016D83C 0016A79C D0 61 00 80 */ stfs f3, 0x80(r1) +/* 8016D840 0016A7A0 D0 41 00 84 */ stfs f2, 0x84(r1) +/* 8016D844 0016A7A4 D0 21 00 88 */ stfs f1, 0x88(r1) +/* 8016D848 0016A7A8 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 8016D84C 0016A7AC 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8016D850 0016A7B0 38 63 00 04 */ addi r3, r3, 4 +/* 8016D854 0016A7B4 4B FC 3E C5 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_8016D858: +/* 8016D858 0016A7B8 80 01 01 04 */ lwz r0, 0x104(r1) +/* 8016D85C 0016A7BC 83 E1 00 FC */ lwz r31, 0xfc(r1) +/* 8016D860 0016A7C0 83 C1 00 F8 */ lwz r30, 0xf8(r1) +/* 8016D864 0016A7C4 83 A1 00 F4 */ lwz r29, 0xf4(r1) +/* 8016D868 0016A7C8 7C 08 03 A6 */ mtlr r0 +/* 8016D86C 0016A7CC 38 21 01 00 */ addi r1, r1, 0x100 +/* 8016D870 0016A7D0 4E 80 00 20 */ blr + +.global sub_8016d874 +sub_8016d874: +/* 8016D874 0016A7D4 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8016D878 0016A7D8 7C 08 02 A6 */ mflr r0 +/* 8016D87C 0016A7DC 90 01 00 74 */ stw r0, 0x74(r1) +/* 8016D880 0016A7E0 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 8016D884 0016A7E4 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 8016D888 0016A7E8 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8016D88C 0016A7EC 93 C1 00 58 */ stw r30, 0x58(r1) +/* 8016D890 0016A7F0 93 A1 00 54 */ stw r29, 0x54(r1) +/* 8016D894 0016A7F4 93 81 00 50 */ stw r28, 0x50(r1) +/* 8016D898 0016A7F8 7C 7F 1B 78 */ mr r31, r3 +/* 8016D89C 0016A7FC 7C 9C 23 78 */ mr r28, r4 +/* 8016D8A0 0016A800 A0 03 06 98 */ lhz r0, 0x698(r3) +/* 8016D8A4 0016A804 FF E0 08 90 */ fmr f31, f1 +/* 8016D8A8 0016A808 7F 83 E3 78 */ mr r3, r28 +/* 8016D8AC 0016A80C 38 81 00 08 */ addi r4, r1, 8 +/* 8016D8B0 0016A810 B0 01 00 08 */ sth r0, 8(r1) +/* 8016D8B4 0016A814 4B ED EC C1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8016D8B8 0016A818 7C 64 1B 78 */ mr r4, r3 +/* 8016D8BC 0016A81C 38 61 00 14 */ addi r3, r1, 0x14 +/* 8016D8C0 0016A820 4B F3 9C B5 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 8016D8C4 0016A824 80 03 00 04 */ lwz r0, 4(r3) +/* 8016D8C8 0016A828 28 00 00 00 */ cmplwi r0, 0 +/* 8016D8CC 0016A82C 41 82 01 28 */ beq lbl_8016D9F4 +/* 8016D8D0 0016A830 C0 02 A0 84 */ lfs f0, lbl_805ABDA4@sda21(r2) +/* 8016D8D4 0016A834 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8016D8D8 0016A838 83 BC 08 38 */ lwz r29, 0x838(r28) +/* 8016D8DC 0016A83C 3B C3 66 A0 */ addi r30, r3, skZero3f@l +/* 8016D8E0 0016A840 EF E0 07 F2 */ fmuls f31, f0, f31 +/* 8016D8E4 0016A844 AB 9D 20 08 */ lha r28, 0x2008(r29) +/* 8016D8E8 0016A848 48 00 01 04 */ b lbl_8016D9EC +lbl_8016D8EC: +/* 8016D8EC 0016A84C 7F A3 EB 78 */ mr r3, r29 +/* 8016D8F0 0016A850 7F 84 E3 78 */ mr r4, r28 +/* 8016D8F4 0016A854 4B EA 23 E9 */ bl __vc__11CObjectListCFi +/* 8016D8F8 0016A858 7C 64 1B 78 */ mr r4, r3 +/* 8016D8FC 0016A85C 38 61 00 0C */ addi r3, r1, 0xc +/* 8016D900 0016A860 4B F3 F1 5D */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" +/* 8016D904 0016A864 80 83 00 04 */ lwz r4, 4(r3) +/* 8016D908 0016A868 28 04 00 00 */ cmplwi r4, 0 +/* 8016D90C 0016A86C 41 82 00 C4 */ beq lbl_8016D9D0 +/* 8016D910 0016A870 7C 04 F8 40 */ cmplw r4, r31 +/* 8016D914 0016A874 41 82 00 BC */ beq lbl_8016D9D0 +/* 8016D918 0016A878 80 64 00 04 */ lwz r3, 4(r4) +/* 8016D91C 0016A87C 80 1F 00 04 */ lwz r0, 4(r31) +/* 8016D920 0016A880 7C 03 00 00 */ cmpw r3, r0 +/* 8016D924 0016A884 40 82 00 AC */ bne lbl_8016D9D0 +/* 8016D928 0016A888 C0 64 00 60 */ lfs f3, 0x60(r4) +/* 8016D92C 0016A88C FC 20 F8 90 */ fmr f1, f31 +/* 8016D930 0016A890 C0 44 00 50 */ lfs f2, 0x50(r4) +/* 8016D934 0016A894 7F E5 FB 78 */ mr r5, r31 +/* 8016D938 0016A898 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 8016D93C 0016A89C 38 61 00 28 */ addi r3, r1, 0x28 +/* 8016D940 0016A8A0 38 9F 04 5C */ addi r4, r31, 0x45c +/* 8016D944 0016A8A4 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8016D948 0016A8A8 38 C1 00 1C */ addi r6, r1, 0x1c +/* 8016D94C 0016A8AC D0 41 00 20 */ stfs f2, 0x20(r1) +/* 8016D950 0016A8B0 D0 61 00 24 */ stfs f3, 0x24(r1) +/* 8016D954 0016A8B4 4B FD 0F 9D */ bl Separation__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff +/* 8016D958 0016A8B8 C0 C1 00 28 */ lfs f6, 0x28(r1) +/* 8016D95C 0016A8BC 38 00 00 00 */ li r0, 0 +/* 8016D960 0016A8C0 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016D964 0016A8C4 C0 81 00 2C */ lfs f4, 0x2c(r1) +/* 8016D968 0016A8C8 FC 00 30 00 */ fcmpu cr0, f0, f6 +/* 8016D96C 0016A8CC C0 A1 00 30 */ lfs f5, 0x30(r1) +/* 8016D970 0016A8D0 40 82 00 14 */ bne lbl_8016D984 +/* 8016D974 0016A8D4 FC 00 20 00 */ fcmpu cr0, f0, f4 +/* 8016D978 0016A8D8 40 82 00 0C */ bne lbl_8016D984 +/* 8016D97C 0016A8DC FC 00 28 00 */ fcmpu cr0, f0, f5 +/* 8016D980 0016A8E0 41 82 00 08 */ beq lbl_8016D988 +lbl_8016D984: +/* 8016D984 0016A8E4 38 00 00 01 */ li r0, 1 +lbl_8016D988: +/* 8016D988 0016A8E8 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8016D98C 0016A8EC 41 82 00 44 */ beq lbl_8016D9D0 +/* 8016D990 0016A8F0 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8016D994 0016A8F4 C0 5E 00 04 */ lfs f2, 4(r30) +/* 8016D998 0016A8F8 C0 3E 00 08 */ lfs f1, 8(r30) +/* 8016D99C 0016A8FC 38 81 00 34 */ addi r4, r1, 0x34 +/* 8016D9A0 0016A900 C0 63 66 A0 */ lfs f3, skZero3f@l(r3) +/* 8016D9A4 0016A904 C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) +/* 8016D9A8 0016A908 D0 C1 00 34 */ stfs f6, 0x34(r1) +/* 8016D9AC 0016A90C D0 81 00 38 */ stfs f4, 0x38(r1) +/* 8016D9B0 0016A910 D0 A1 00 3C */ stfs f5, 0x3c(r1) +/* 8016D9B4 0016A914 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 8016D9B8 0016A918 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 8016D9BC 0016A91C D0 21 00 48 */ stfs f1, 0x48(r1) +/* 8016D9C0 0016A920 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 8016D9C4 0016A924 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8016D9C8 0016A928 38 63 00 04 */ addi r3, r3, 4 +/* 8016D9CC 0016A92C 4B FC 3D 4D */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_8016D9D0: +/* 8016D9D0 0016A930 2C 1C FF FF */ cmpwi r28, -1 +/* 8016D9D4 0016A934 41 82 00 14 */ beq lbl_8016D9E8 +/* 8016D9D8 0016A938 57 83 18 38 */ slwi r3, r28, 3 +/* 8016D9DC 0016A93C 38 03 00 08 */ addi r0, r3, 8 +/* 8016D9E0 0016A940 7F 9D 02 AE */ lhax r28, r29, r0 +/* 8016D9E4 0016A944 48 00 00 08 */ b lbl_8016D9EC +lbl_8016D9E8: +/* 8016D9E8 0016A948 3B 80 FF FF */ li r28, -1 +lbl_8016D9EC: +/* 8016D9EC 0016A94C 2C 1C FF FF */ cmpwi r28, -1 +/* 8016D9F0 0016A950 40 82 FE FC */ bne lbl_8016D8EC +lbl_8016D9F4: +/* 8016D9F4 0016A954 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 8016D9F8 0016A958 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8016D9FC 0016A95C CB E1 00 60 */ lfd f31, 0x60(r1) +/* 8016DA00 0016A960 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8016DA04 0016A964 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 8016DA08 0016A968 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 8016DA0C 0016A96C 83 81 00 50 */ lwz r28, 0x50(r1) +/* 8016DA10 0016A970 7C 08 03 A6 */ mtlr r0 +/* 8016DA14 0016A974 38 21 00 70 */ addi r1, r1, 0x70 +/* 8016DA18 0016A978 4E 80 00 20 */ blr + +.global sub_8016da1c +sub_8016da1c: +/* 8016DA1C 0016A97C 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 8016DA20 0016A980 7C 08 02 A6 */ mflr r0 +/* 8016DA24 0016A984 38 A0 00 00 */ li r5, 0 +/* 8016DA28 0016A988 90 01 01 04 */ stw r0, 0x104(r1) +/* 8016DA2C 0016A98C 93 E1 00 FC */ stw r31, 0xfc(r1) +/* 8016DA30 0016A990 7C 9F 23 78 */ mr r31, r4 +/* 8016DA34 0016A994 93 C1 00 F8 */ stw r30, 0xf8(r1) +/* 8016DA38 0016A998 7C 7E 1B 78 */ mr r30, r3 +/* 8016DA3C 0016A99C 93 A1 00 F4 */ stw r29, 0xf4(r1) +/* 8016DA40 0016A9A0 93 81 00 F0 */ stw r28, 0xf0(r1) +/* 8016DA44 0016A9A4 88 03 09 BF */ lbz r0, 0x9bf(r3) +/* 8016DA48 0016A9A8 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 8016DA4C 0016A9AC 98 03 09 BF */ stb r0, 0x9bf(r3) +/* 8016DA50 0016A9B0 81 83 00 00 */ lwz r12, 0(r3) +/* 8016DA54 0016A9B4 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 8016DA58 0016A9B8 7D 89 03 A6 */ mtctr r12 +/* 8016DA5C 0016A9BC 4E 80 04 21 */ bctrl +/* 8016DA60 0016A9C0 28 03 00 00 */ cmplwi r3, 0 +/* 8016DA64 0016A9C4 41 82 02 84 */ beq lbl_8016DCE8 +/* 8016DA68 0016A9C8 A0 DE 00 08 */ lhz r6, 8(r30) +/* 8016DA6C 0016A9CC 7F E3 FB 78 */ mr r3, r31 +/* 8016DA70 0016A9D0 38 81 00 18 */ addi r4, r1, 0x18 +/* 8016DA74 0016A9D4 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8016DA78 0016A9D8 B0 C1 00 14 */ sth r6, 0x14(r1) +/* 8016DA7C 0016A9DC A0 1E 06 98 */ lhz r0, 0x698(r30) +/* 8016DA80 0016A9E0 B0 C1 00 10 */ sth r6, 0x10(r1) +/* 8016DA84 0016A9E4 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8016DA88 0016A9E8 48 0C C6 F9 */ bl GetTeamAiRole__10CTeamAiMgrCFRC13CStateManager9TUniqueId9TUniqueId +/* 8016DA8C 0016A9EC 28 03 00 00 */ cmplwi r3, 0 +/* 8016DA90 0016A9F0 41 82 00 20 */ beq lbl_8016DAB0 +/* 8016DA94 0016A9F4 C0 03 00 1C */ lfs f0, 0x1c(r3) +/* 8016DA98 0016A9F8 D0 1E 02 E0 */ stfs f0, 0x2e0(r30) +/* 8016DA9C 0016A9FC C0 03 00 20 */ lfs f0, 0x20(r3) +/* 8016DAA0 0016AA00 D0 1E 02 E4 */ stfs f0, 0x2e4(r30) +/* 8016DAA4 0016AA04 C0 03 00 24 */ lfs f0, 0x24(r3) +/* 8016DAA8 0016AA08 D0 1E 02 E8 */ stfs f0, 0x2e8(r30) +/* 8016DAAC 0016AA0C 48 00 00 AC */ b lbl_8016DB58 +lbl_8016DAB0: +/* 8016DAB0 0016AA10 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 8016DAB4 0016AA14 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8016DAB8 0016AA18 39 03 66 A0 */ addi r8, r3, skZero3f@l +/* 8016DABC 0016AA1C 39 20 FF FF */ li r9, -1 +/* 8016DAC0 0016AA20 C0 85 00 60 */ lfs f4, 0x60(r5) +/* 8016DAC4 0016AA24 38 00 00 00 */ li r0, 0 +/* 8016DAC8 0016AA28 C0 65 00 50 */ lfs f3, 0x50(r5) +/* 8016DACC 0016AA2C 7F C4 F3 78 */ mr r4, r30 +/* 8016DAD0 0016AA30 C0 05 00 40 */ lfs f0, 0x40(r5) +/* 8016DAD4 0016AA34 7F E5 FB 78 */ mr r5, r31 +/* 8016DAD8 0016AA38 C0 48 00 00 */ lfs f2, 0(r8) +/* 8016DADC 0016AA3C 38 61 00 34 */ addi r3, r1, 0x34 +/* 8016DAE0 0016AA40 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 8016DAE4 0016AA44 38 C1 00 C8 */ addi r6, r1, 0xc8 +/* 8016DAE8 0016AA48 C0 28 00 04 */ lfs f1, 4(r8) +/* 8016DAEC 0016AA4C 38 E1 00 28 */ addi r7, r1, 0x28 +/* 8016DAF0 0016AA50 D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 8016DAF4 0016AA54 C0 08 00 08 */ lfs f0, 8(r8) +/* 8016DAF8 0016AA58 D0 81 00 30 */ stfs f4, 0x30(r1) +/* 8016DAFC 0016AA5C A1 1E 00 08 */ lhz r8, 8(r30) +/* 8016DB00 0016AA60 B1 01 00 C8 */ sth r8, 0xc8(r1) +/* 8016DB04 0016AA64 91 21 00 CC */ stw r9, 0xcc(r1) +/* 8016DB08 0016AA68 91 21 00 D0 */ stw r9, 0xd0(r1) +/* 8016DB0C 0016AA6C 91 21 00 D4 */ stw r9, 0xd4(r1) +/* 8016DB10 0016AA70 91 21 00 D8 */ stw r9, 0xd8(r1) +/* 8016DB14 0016AA74 91 21 00 DC */ stw r9, 0xdc(r1) +/* 8016DB18 0016AA78 90 01 00 E0 */ stw r0, 0xe0(r1) +/* 8016DB1C 0016AA7C D0 41 00 E4 */ stfs f2, 0xe4(r1) +/* 8016DB20 0016AA80 D0 21 00 E8 */ stfs f1, 0xe8(r1) +/* 8016DB24 0016AA84 D0 01 00 EC */ stfs f0, 0xec(r1) +/* 8016DB28 0016AA88 81 9E 00 00 */ lwz r12, 0(r30) +/* 8016DB2C 0016AA8C B1 01 00 08 */ sth r8, 8(r1) +/* 8016DB30 0016AA90 81 8C 00 A0 */ lwz r12, 0xa0(r12) +/* 8016DB34 0016AA94 B1 01 00 0C */ sth r8, 0xc(r1) +/* 8016DB38 0016AA98 7D 89 03 A6 */ mtctr r12 +/* 8016DB3C 0016AA9C 4E 80 04 21 */ bctrl +/* 8016DB40 0016AAA0 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 8016DB44 0016AAA4 D0 1E 02 E0 */ stfs f0, 0x2e0(r30) +/* 8016DB48 0016AAA8 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 8016DB4C 0016AAAC D0 1E 02 E4 */ stfs f0, 0x2e4(r30) +/* 8016DB50 0016AAB0 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 8016DB54 0016AAB4 D0 1E 02 E8 */ stfs f0, 0x2e8(r30) +lbl_8016DB58: +/* 8016DB58 0016AAB8 7F C4 F3 78 */ mr r4, r30 +/* 8016DB5C 0016AABC 7F E5 FB 78 */ mr r5, r31 +/* 8016DB60 0016AAC0 38 61 00 1C */ addi r3, r1, 0x1c +/* 8016DB64 0016AAC4 48 00 04 59 */ bl sub_8016dfbc +/* 8016DB68 0016AAC8 C0 A1 00 1C */ lfs f5, 0x1c(r1) +/* 8016DB6C 0016AACC 38 61 00 4C */ addi r3, r1, 0x4c +/* 8016DB70 0016AAD0 C0 81 00 20 */ lfs f4, 0x20(r1) +/* 8016DB74 0016AAD4 C0 61 00 24 */ lfs f3, 0x24(r1) +/* 8016DB78 0016AAD8 D0 A1 00 58 */ stfs f5, 0x58(r1) +/* 8016DB7C 0016AADC D0 81 00 5C */ stfs f4, 0x5c(r1) +/* 8016DB80 0016AAE0 D0 61 00 60 */ stfs f3, 0x60(r1) +/* 8016DB84 0016AAE4 C0 5E 02 E4 */ lfs f2, 0x2e4(r30) +/* 8016DB88 0016AAE8 C0 3E 02 E8 */ lfs f1, 0x2e8(r30) +/* 8016DB8C 0016AAEC C0 1E 02 E0 */ lfs f0, 0x2e0(r30) +/* 8016DB90 0016AAF0 EC 42 20 28 */ fsubs f2, f2, f4 +/* 8016DB94 0016AAF4 EC 21 18 28 */ fsubs f1, f1, f3 +/* 8016DB98 0016AAF8 EC 00 28 28 */ fsubs f0, f0, f5 +/* 8016DB9C 0016AAFC D0 41 00 50 */ stfs f2, 0x50(r1) +/* 8016DBA0 0016AB00 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 8016DBA4 0016AB04 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 8016DBA8 0016AB08 48 1A 6B 51 */ bl CanBeNormalized__9CVector3fCFv +/* 8016DBAC 0016AB0C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016DBB0 0016AB10 41 82 01 0C */ beq lbl_8016DCBC +/* 8016DBB4 0016AB14 80 AD 8D D4 */ lwz r5, lbl_805A7994@sda21(r13) +/* 8016DBB8 0016AB18 38 60 00 00 */ li r3, 0 +/* 8016DBBC 0016AB1C 38 80 00 01 */ li r4, 1 +/* 8016DBC0 0016AB20 48 21 C3 35 */ bl __shl2i +/* 8016DBC4 0016AB24 80 AD 8D D8 */ lwz r5, lbl_805A7998@sda21(r13) +/* 8016DBC8 0016AB28 7C 9C 23 78 */ mr r28, r4 +/* 8016DBCC 0016AB2C 7C 7D 1B 78 */ mr r29, r3 +/* 8016DBD0 0016AB30 38 60 00 00 */ li r3, 0 +/* 8016DBD4 0016AB34 38 80 00 01 */ li r4, 1 +/* 8016DBD8 0016AB38 48 21 C3 1D */ bl __shl2i +/* 8016DBDC 0016AB3C 7F BD 1B 78 */ or r29, r29, r3 +/* 8016DBE0 0016AB40 38 A0 00 01 */ li r5, 1 +/* 8016DBE4 0016AB44 38 00 00 00 */ li r0, 0 +/* 8016DBE8 0016AB48 7F 9C 23 78 */ or r28, r28, r4 +/* 8016DBEC 0016AB4C 90 A1 00 78 */ stw r5, 0x78(r1) +/* 8016DBF0 0016AB50 38 61 00 4C */ addi r3, r1, 0x4c +/* 8016DBF4 0016AB54 93 81 00 84 */ stw r28, 0x84(r1) +/* 8016DBF8 0016AB58 93 A1 00 80 */ stw r29, 0x80(r1) +/* 8016DBFC 0016AB5C 90 01 00 8C */ stw r0, 0x8c(r1) +/* 8016DC00 0016AB60 90 01 00 88 */ stw r0, 0x88(r1) +/* 8016DC04 0016AB64 90 A1 00 90 */ stw r5, 0x90(r1) +/* 8016DC08 0016AB68 48 1A 6C B1 */ bl Magnitude__9CVector3fCFv +/* 8016DC0C 0016AB6C C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) +/* 8016DC10 0016AB70 7F E4 FB 78 */ mr r4, r31 +/* 8016DC14 0016AB74 C0 61 00 4C */ lfs f3, 0x4c(r1) +/* 8016DC18 0016AB78 38 61 00 98 */ addi r3, r1, 0x98 +/* 8016DC1C 0016AB7C EC 80 08 24 */ fdivs f4, f0, f1 +/* 8016DC20 0016AB80 C0 41 00 50 */ lfs f2, 0x50(r1) +/* 8016DC24 0016AB84 C0 01 00 54 */ lfs f0, 0x54(r1) +/* 8016DC28 0016AB88 38 A1 00 58 */ addi r5, r1, 0x58 +/* 8016DC2C 0016AB8C 38 C1 00 40 */ addi r6, r1, 0x40 +/* 8016DC30 0016AB90 38 E1 00 80 */ addi r7, r1, 0x80 +/* 8016DC34 0016AB94 EC 64 00 F2 */ fmuls f3, f4, f3 +/* 8016DC38 0016AB98 EC 44 00 B2 */ fmuls f2, f4, f2 +/* 8016DC3C 0016AB9C EC 04 00 32 */ fmuls f0, f4, f0 +/* 8016DC40 0016ABA0 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 8016DC44 0016ABA4 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 8016DC48 0016ABA8 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 8016DC4C 0016ABAC 4B ED F3 4D */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 8016DC50 0016ABB0 88 01 00 B8 */ lbz r0, 0xb8(r1) +/* 8016DC54 0016ABB4 C0 81 00 98 */ lfs f4, 0x98(r1) +/* 8016DC58 0016ABB8 28 00 00 00 */ cmplwi r0, 0 +/* 8016DC5C 0016ABBC 41 82 00 60 */ beq lbl_8016DCBC +/* 8016DC60 0016ABC0 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 8016DC64 0016ABC4 38 60 00 01 */ li r3, 1 +/* 8016DC68 0016ABC8 C0 21 00 44 */ lfs f1, 0x44(r1) +/* 8016DC6C 0016ABCC EC 04 00 32 */ fmuls f0, f4, f0 +/* 8016DC70 0016ABD0 C0 A2 A0 88 */ lfs f5, lbl_805ABDA8@sda21(r2) +/* 8016DC74 0016ABD4 EC 64 00 72 */ fmuls f3, f4, f1 +/* 8016DC78 0016ABD8 C0 41 00 48 */ lfs f2, 0x48(r1) +/* 8016DC7C 0016ABDC C0 21 00 58 */ lfs f1, 0x58(r1) +/* 8016DC80 0016ABE0 EC 05 00 32 */ fmuls f0, f5, f0 +/* 8016DC84 0016ABE4 EC 44 00 B2 */ fmuls f2, f4, f2 +/* 8016DC88 0016ABE8 C0 C1 00 5C */ lfs f6, 0x5c(r1) +/* 8016DC8C 0016ABEC EC 85 00 F2 */ fmuls f4, f5, f3 +/* 8016DC90 0016ABF0 C0 61 00 60 */ lfs f3, 0x60(r1) +/* 8016DC94 0016ABF4 EC 01 00 2A */ fadds f0, f1, f0 +/* 8016DC98 0016ABF8 EC 25 00 B2 */ fmuls f1, f5, f2 +/* 8016DC9C 0016ABFC EC 46 20 2A */ fadds f2, f6, f4 +/* 8016DCA0 0016AC00 D0 1E 02 E0 */ stfs f0, 0x2e0(r30) +/* 8016DCA4 0016AC04 EC 03 08 2A */ fadds f0, f3, f1 +/* 8016DCA8 0016AC08 D0 5E 02 E4 */ stfs f2, 0x2e4(r30) +/* 8016DCAC 0016AC0C D0 1E 02 E8 */ stfs f0, 0x2e8(r30) +/* 8016DCB0 0016AC10 88 1E 09 BF */ lbz r0, 0x9bf(r30) +/* 8016DCB4 0016AC14 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 8016DCB8 0016AC18 98 1E 09 BF */ stb r0, 0x9bf(r30) +lbl_8016DCBC: +/* 8016DCBC 0016AC1C C0 1E 02 E0 */ lfs f0, 0x2e0(r30) +/* 8016DCC0 0016AC20 7F C3 F3 78 */ mr r3, r30 +/* 8016DCC4 0016AC24 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) +/* 8016DCC8 0016AC28 7F E4 FB 78 */ mr r4, r31 +/* 8016DCCC 0016AC2C D0 1E 07 A4 */ stfs f0, 0x7a4(r30) +/* 8016DCD0 0016AC30 38 A0 00 00 */ li r5, 0 +/* 8016DCD4 0016AC34 C0 1E 02 E4 */ lfs f0, 0x2e4(r30) +/* 8016DCD8 0016AC38 D0 1E 07 A8 */ stfs f0, 0x7a8(r30) +/* 8016DCDC 0016AC3C C0 1E 02 E8 */ lfs f0, 0x2e8(r30) +/* 8016DCE0 0016AC40 D0 1E 07 AC */ stfs f0, 0x7ac(r30) +/* 8016DCE4 0016AC44 48 08 89 E9 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +lbl_8016DCE8: +/* 8016DCE8 0016AC48 80 01 01 04 */ lwz r0, 0x104(r1) +/* 8016DCEC 0016AC4C 83 E1 00 FC */ lwz r31, 0xfc(r1) +/* 8016DCF0 0016AC50 83 C1 00 F8 */ lwz r30, 0xf8(r1) +/* 8016DCF4 0016AC54 83 A1 00 F4 */ lwz r29, 0xf4(r1) +/* 8016DCF8 0016AC58 83 81 00 F0 */ lwz r28, 0xf0(r1) +/* 8016DCFC 0016AC5C 7C 08 03 A6 */ mtlr r0 +/* 8016DD00 0016AC60 38 21 01 00 */ addi r1, r1, 0x100 +/* 8016DD04 0016AC64 4E 80 00 20 */ blr + +.global sub_8016dd08 +sub_8016dd08: +/* 8016DD08 0016AC68 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8016DD0C 0016AC6C 7C 08 02 A6 */ mflr r0 +/* 8016DD10 0016AC70 90 01 00 34 */ stw r0, 0x34(r1) +/* 8016DD14 0016AC74 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 8016DD18 0016AC78 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 8016DD1C 0016AC7C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8016DD20 0016AC80 7C 7F 1B 78 */ mr r31, r3 +/* 8016DD24 0016AC84 38 81 00 08 */ addi r4, r1, 8 +/* 8016DD28 0016AC88 C0 03 07 F8 */ lfs f0, 0x7f8(r3) +/* 8016DD2C 0016AC8C 38 6D 8D CC */ addi r3, r13, lbl_805A798C@sda21 +/* 8016DD30 0016AC90 38 AD 8D D0 */ addi r5, r13, lbl_805A7990@sda21 +/* 8016DD34 0016AC94 EC 00 08 2A */ fadds f0, f0, f1 +/* 8016DD38 0016AC98 D0 1F 07 F8 */ stfs f0, 0x7f8(r31) +/* 8016DD3C 0016AC9C C0 3F 07 F8 */ lfs f1, 0x7f8(r31) +/* 8016DD40 0016ACA0 C0 1F 06 4C */ lfs f0, 0x64c(r31) +/* 8016DD44 0016ACA4 C0 5F 06 48 */ lfs f2, 0x648(r31) +/* 8016DD48 0016ACA8 EC 01 00 24 */ fdivs f0, f1, f0 +/* 8016DD4C 0016ACAC C0 3F 07 EC */ lfs f1, 0x7ec(r31) +/* 8016DD50 0016ACB0 EF E2 08 28 */ fsubs f31, f2, f1 +/* 8016DD54 0016ACB4 D0 01 00 08 */ stfs f0, 8(r1) +/* 8016DD58 0016ACB8 4B E9 E5 5D */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8016DD5C 0016ACBC C0 43 00 00 */ lfs f2, 0(r3) +/* 8016DD60 0016ACC0 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8016DD64 0016ACC4 C0 1F 07 EC */ lfs f0, 0x7ec(r31) +/* 8016DD68 0016ACC8 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 8016DD6C 0016ACCC 7F E3 FB 78 */ mr r3, r31 +/* 8016DD70 0016ACD0 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) +/* 8016DD74 0016ACD4 EC 02 07 FA */ fmadds f0, f2, f31, f0 +/* 8016DD78 0016ACD8 D0 1F 07 D0 */ stfs f0, 0x7d0(r31) +/* 8016DD7C 0016ACDC D0 1F 07 D4 */ stfs f0, 0x7d4(r31) +/* 8016DD80 0016ACE0 D0 1F 07 D8 */ stfs f0, 0x7d8(r31) +/* 8016DD84 0016ACE4 81 9F 00 00 */ lwz r12, 0(r31) +/* 8016DD88 0016ACE8 81 8C 00 90 */ lwz r12, 0x90(r12) +/* 8016DD8C 0016ACEC 7D 89 03 A6 */ mtctr r12 +/* 8016DD90 0016ACF0 4E 80 04 21 */ bctrl +/* 8016DD94 0016ACF4 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 8016DD98 0016ACF8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8016DD9C 0016ACFC CB E1 00 20 */ lfd f31, 0x20(r1) +/* 8016DDA0 0016AD00 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8016DDA4 0016AD04 7C 08 03 A6 */ mtlr r0 +/* 8016DDA8 0016AD08 38 21 00 30 */ addi r1, r1, 0x30 +/* 8016DDAC 0016AD0C 4E 80 00 20 */ blr + +.global sub_8016ddb0 +sub_8016ddb0: +/* 8016DDB0 0016AD10 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 8016DDB4 0016AD14 7C 08 02 A6 */ mflr r0 +/* 8016DDB8 0016AD18 90 01 00 84 */ stw r0, 0x84(r1) +/* 8016DDBC 0016AD1C 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 8016DDC0 0016AD20 7C 9F 23 78 */ mr r31, r4 +/* 8016DDC4 0016AD24 93 C1 00 78 */ stw r30, 0x78(r1) +/* 8016DDC8 0016AD28 7C 7E 1B 78 */ mr r30, r3 +/* 8016DDCC 0016AD2C 93 A1 00 74 */ stw r29, 0x74(r1) +/* 8016DDD0 0016AD30 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016DDD4 0016AD34 A0 63 07 B0 */ lhz r3, 0x7b0(r3) +/* 8016DDD8 0016AD38 7C 03 00 40 */ cmplw r3, r0 +/* 8016DDDC 0016AD3C 41 82 01 44 */ beq lbl_8016DF20 +/* 8016DDE0 0016AD40 A0 1E 07 B0 */ lhz r0, 0x7b0(r30) +/* 8016DDE4 0016AD44 7F E3 FB 78 */ mr r3, r31 +/* 8016DDE8 0016AD48 38 81 00 24 */ addi r4, r1, 0x24 +/* 8016DDEC 0016AD4C B0 01 00 24 */ sth r0, 0x24(r1) +/* 8016DDF0 0016AD50 4B ED E7 85 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8016DDF4 0016AD54 7C 64 1B 78 */ mr r4, r3 +/* 8016DDF8 0016AD58 38 61 00 28 */ addi r3, r1, 0x28 +/* 8016DDFC 0016AD5C 4B F3 75 D5 */ bl sub_800a53d0 +/* 8016DE00 0016AD60 4B F3 75 A5 */ bl "CastTo<12CSpacePirate>__10CPatternedFP7CEntity" +/* 8016DE04 0016AD64 7C 7D 1B 79 */ or. r29, r3, r3 +/* 8016DE08 0016AD68 41 82 01 18 */ beq lbl_8016DF20 +/* 8016DE0C 0016AD6C 7F C3 F3 78 */ mr r3, r30 +/* 8016DE10 0016AD70 7F A4 EB 78 */ mr r4, r29 +/* 8016DE14 0016AD74 7F E5 FB 78 */ mr r5, r31 +/* 8016DE18 0016AD78 48 00 03 61 */ bl sub_8016e178 +/* 8016DE1C 0016AD7C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016DE20 0016AD80 41 82 01 00 */ beq lbl_8016DF20 +/* 8016DE24 0016AD84 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8016DE28 0016AD88 7F A3 EB 78 */ mr r3, r29 +/* 8016DE2C 0016AD8C 38 81 00 20 */ addi r4, r1, 0x20 +/* 8016DE30 0016AD90 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8016DE34 0016AD94 B0 01 00 20 */ sth r0, 0x20(r1) +/* 8016DE38 0016AD98 4B FB B9 E1 */ bl AttachActorToPirate__12CSpacePirateF9TUniqueId +/* 8016DE3C 0016AD9C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016DE40 0016ADA0 41 82 00 E0 */ beq lbl_8016DF20 +/* 8016DE44 0016ADA4 38 E0 00 00 */ li r7, 0 +/* 8016DE48 0016ADA8 88 61 00 30 */ lbz r3, 0x30(r1) +/* 8016DE4C 0016ADAC 50 E3 3E 30 */ rlwimi r3, r7, 7, 0x18, 0x18 +/* 8016DE50 0016ADB0 C0 3D 03 D8 */ lfs f1, 0x3d8(r29) +/* 8016DE54 0016ADB4 C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) +/* 8016DE58 0016ADB8 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 8016DE5C 0016ADBC 98 61 00 30 */ stb r3, 0x30(r1) +/* 8016DE60 0016ADC0 50 E0 36 72 */ rlwimi r0, r7, 6, 0x19, 0x19 +/* 8016DE64 0016ADC4 EC 21 00 28 */ fsubs f1, f1, f0 +/* 8016DE68 0016ADC8 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016DE6C 0016ADCC 54 06 06 3E */ clrlwi r6, r0, 0x18 +/* 8016DE70 0016ADD0 98 01 00 30 */ stb r0, 0x30(r1) +/* 8016DE74 0016ADD4 50 E6 2E B4 */ rlwimi r6, r7, 5, 0x1a, 0x1a +/* 8016DE78 0016ADD8 88 01 00 68 */ lbz r0, 0x68(r1) +/* 8016DE7C 0016ADDC 38 60 00 01 */ li r3, 1 +/* 8016DE80 0016ADE0 80 AD 8D 98 */ lwz r5, lbl_805A7958@sda21(r13) +/* 8016DE84 0016ADE4 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8016DE88 0016ADE8 90 E1 00 2C */ stw r7, 0x2c(r1) +/* 8016DE8C 0016ADEC 38 60 00 00 */ li r3, 0 +/* 8016DE90 0016ADF0 38 80 00 01 */ li r4, 1 +/* 8016DE94 0016ADF4 98 C1 00 30 */ stb r6, 0x30(r1) +/* 8016DE98 0016ADF8 90 E1 00 50 */ stw r7, 0x50(r1) +/* 8016DE9C 0016ADFC 98 C1 00 54 */ stb r6, 0x54(r1) +/* 8016DEA0 0016AE00 D0 21 00 58 */ stfs f1, 0x58(r1) +/* 8016DEA4 0016AE04 D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 8016DEA8 0016AE08 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 8016DEAC 0016AE0C D0 01 00 64 */ stfs f0, 0x64(r1) +/* 8016DEB0 0016AE10 98 01 00 68 */ stb r0, 0x68(r1) +/* 8016DEB4 0016AE14 48 21 C0 41 */ bl __shl2i +/* 8016DEB8 0016AE18 39 40 00 00 */ li r10, 0 +/* 8016DEBC 0016AE1C 38 00 00 03 */ li r0, 3 +/* 8016DEC0 0016AE20 90 81 00 3C */ stw r4, 0x3c(r1) +/* 8016DEC4 0016AE24 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8016DEC8 0016AE28 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 8016DECC 0016AE2C 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8016DED0 0016AE30 90 61 00 38 */ stw r3, 0x38(r1) +/* 8016DED4 0016AE34 38 81 00 18 */ addi r4, r1, 0x18 +/* 8016DED8 0016AE38 7F E3 FB 78 */ mr r3, r31 +/* 8016DEDC 0016AE3C 38 C1 00 0C */ addi r6, r1, 0xc +/* 8016DEE0 0016AE40 91 41 00 44 */ stw r10, 0x44(r1) +/* 8016DEE4 0016AE44 38 E1 00 50 */ addi r7, r1, 0x50 +/* 8016DEE8 0016AE48 39 01 00 38 */ addi r8, r1, 0x38 +/* 8016DEEC 0016AE4C 91 41 00 40 */ stw r10, 0x40(r1) +/* 8016DEF0 0016AE50 90 01 00 48 */ stw r0, 0x48(r1) +/* 8016DEF4 0016AE54 A1 5E 00 08 */ lhz r10, 8(r30) +/* 8016DEF8 0016AE58 B1 41 00 0C */ sth r10, 0xc(r1) +/* 8016DEFC 0016AE5C A0 1E 07 B0 */ lhz r0, 0x7b0(r30) +/* 8016DF00 0016AE60 B1 41 00 08 */ sth r10, 8(r1) +/* 8016DF04 0016AE64 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8016DF08 0016AE68 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8016DF0C 0016AE6C B0 01 00 14 */ sth r0, 0x14(r1) +/* 8016DF10 0016AE70 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8016DF14 0016AE74 4B ED C1 8D */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 8016DF18 0016AE78 38 60 00 01 */ li r3, 1 +/* 8016DF1C 0016AE7C 48 00 00 08 */ b lbl_8016DF24 +lbl_8016DF20: +/* 8016DF20 0016AE80 38 60 00 00 */ li r3, 0 +lbl_8016DF24: +/* 8016DF24 0016AE84 80 01 00 84 */ lwz r0, 0x84(r1) +/* 8016DF28 0016AE88 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 8016DF2C 0016AE8C 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 8016DF30 0016AE90 83 A1 00 74 */ lwz r29, 0x74(r1) +/* 8016DF34 0016AE94 7C 08 03 A6 */ mtlr r0 +/* 8016DF38 0016AE98 38 21 00 80 */ addi r1, r1, 0x80 +/* 8016DF3C 0016AE9C 4E 80 00 20 */ blr + +.global sub_8016df40 +sub_8016df40: +/* 8016DF40 0016AEA0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8016DF44 0016AEA4 7C 08 02 A6 */ mflr r0 +/* 8016DF48 0016AEA8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8016DF4C 0016AEAC 48 00 00 25 */ bl sub_8016df70 +/* 8016DF50 0016AEB0 C0 42 A0 98 */ lfs f2, lbl_805ABDB8@sda21(r2) +/* 8016DF54 0016AEB4 C0 02 A0 88 */ lfs f0, lbl_805ABDA8@sda21(r2) +/* 8016DF58 0016AEB8 EC 21 10 28 */ fsubs f1, f1, f2 +/* 8016DF5C 0016AEBC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8016DF60 0016AEC0 EC 20 10 7A */ fmadds f1, f0, f1, f2 +/* 8016DF64 0016AEC4 7C 08 03 A6 */ mtlr r0 +/* 8016DF68 0016AEC8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8016DF6C 0016AECC 4E 80 00 20 */ blr + +.global sub_8016df70 +sub_8016df70: +/* 8016DF70 0016AED0 C0 23 07 F8 */ lfs f1, 0x7f8(r3) +/* 8016DF74 0016AED4 C0 03 06 4C */ lfs f0, 0x64c(r3) +/* 8016DF78 0016AED8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8016DF7C 0016AEDC 40 80 00 14 */ bge lbl_8016DF90 +/* 8016DF80 0016AEE0 EC 01 00 24 */ fdivs f0, f1, f0 +/* 8016DF84 0016AEE4 C0 22 A0 98 */ lfs f1, lbl_805ABDB8@sda21(r2) +/* 8016DF88 0016AEE8 EC 21 00 2A */ fadds f1, f1, f0 +/* 8016DF8C 0016AEEC 4E 80 00 20 */ blr +lbl_8016DF90: +/* 8016DF90 0016AEF0 C0 63 06 50 */ lfs f3, 0x650(r3) +/* 8016DF94 0016AEF4 FC 01 18 40 */ fcmpo cr0, f1, f3 +/* 8016DF98 0016AEF8 40 80 00 1C */ bge lbl_8016DFB4 +/* 8016DF9C 0016AEFC EC 21 00 28 */ fsubs f1, f1, f0 +/* 8016DFA0 0016AF00 C0 42 A0 84 */ lfs f2, lbl_805ABDA4@sda21(r2) +/* 8016DFA4 0016AF04 EC 03 00 28 */ fsubs f0, f3, f0 +/* 8016DFA8 0016AF08 EC 01 00 24 */ fdivs f0, f1, f0 +/* 8016DFAC 0016AF0C EC 22 00 2A */ fadds f1, f2, f0 +/* 8016DFB0 0016AF10 4E 80 00 20 */ blr +lbl_8016DFB4: +/* 8016DFB4 0016AF14 C0 22 A0 D8 */ lfs f1, lbl_805ABDF8@sda21(r2) +/* 8016DFB8 0016AF18 4E 80 00 20 */ blr + +.global sub_8016dfbc +sub_8016dfbc: +/* 8016DFBC 0016AF1C 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 8016DFC0 0016AF20 7C 08 02 A6 */ mflr r0 +/* 8016DFC4 0016AF24 90 01 01 14 */ stw r0, 0x114(r1) +/* 8016DFC8 0016AF28 DB E1 01 00 */ stfd f31, 0x100(r1) +/* 8016DFCC 0016AF2C F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 +/* 8016DFD0 0016AF30 DB C1 00 F0 */ stfd f30, 0xf0(r1) +/* 8016DFD4 0016AF34 F3 C1 00 F8 */ psq_st f30, 248(r1), 0, qr0 +/* 8016DFD8 0016AF38 DB A1 00 E0 */ stfd f29, 0xe0(r1) +/* 8016DFDC 0016AF3C F3 A1 00 E8 */ psq_st f29, 232(r1), 0, qr0 +/* 8016DFE0 0016AF40 93 E1 00 DC */ stw r31, 0xdc(r1) +/* 8016DFE4 0016AF44 93 C1 00 D8 */ stw r30, 0xd8(r1) +/* 8016DFE8 0016AF48 93 A1 00 D4 */ stw r29, 0xd4(r1) +/* 8016DFEC 0016AF4C A0 C4 07 B0 */ lhz r6, 0x7b0(r4) +/* 8016DFF0 0016AF50 7C 7D 1B 78 */ mr r29, r3 +/* 8016DFF4 0016AF54 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016DFF8 0016AF58 7C BE 2B 78 */ mr r30, r5 +/* 8016DFFC 0016AF5C 7C 06 00 40 */ cmplw r6, r0 +/* 8016E000 0016AF60 41 82 01 24 */ beq lbl_8016E124 +/* 8016E004 0016AF64 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 8016E008 0016AF68 A0 03 00 08 */ lhz r0, 8(r3) +/* 8016E00C 0016AF6C 7C 06 00 40 */ cmplw r6, r0 +/* 8016E010 0016AF70 41 82 00 B4 */ beq lbl_8016E0C4 +/* 8016E014 0016AF74 B0 C1 00 08 */ sth r6, 8(r1) +/* 8016E018 0016AF78 7F C3 F3 78 */ mr r3, r30 +/* 8016E01C 0016AF7C 38 81 00 0C */ addi r4, r1, 0xc +/* 8016E020 0016AF80 B0 C1 00 0C */ sth r6, 0xc(r1) +/* 8016E024 0016AF84 4B ED E5 81 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8016E028 0016AF88 7C 64 1B 78 */ mr r4, r3 +/* 8016E02C 0016AF8C 38 61 00 10 */ addi r3, r1, 0x10 +/* 8016E030 0016AF90 4B F4 1C 61 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8016E034 0016AF94 83 E3 00 04 */ lwz r31, 4(r3) +/* 8016E038 0016AF98 28 1F 00 00 */ cmplwi r31, 0 +/* 8016E03C 0016AF9C 41 82 00 E8 */ beq lbl_8016E124 +/* 8016E040 0016AFA0 80 82 A0 78 */ lwz r4, lbl_805ABD98@sda21(r2) +/* 8016E044 0016AFA4 38 61 00 24 */ addi r3, r1, 0x24 +/* 8016E048 0016AFA8 4B E9 6C 71 */ bl string_l__4rstlFPCc +/* 8016E04C 0016AFAC 7F E4 FB 78 */ mr r4, r31 +/* 8016E050 0016AFB0 38 61 00 64 */ addi r3, r1, 0x64 +/* 8016E054 0016AFB4 38 A1 00 24 */ addi r5, r1, 0x24 +/* 8016E058 0016AFB8 4B EE 4E A9 */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8016E05C 0016AFBC 38 61 00 94 */ addi r3, r1, 0x94 +/* 8016E060 0016AFC0 38 81 00 64 */ addi r4, r1, 0x64 +/* 8016E064 0016AFC4 48 1A 4B 11 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8016E068 0016AFC8 38 61 00 24 */ addi r3, r1, 0x24 +/* 8016E06C 0016AFCC 48 1C FA 75 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8016E070 0016AFD0 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 8016E074 0016AFD4 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) +/* 8016E078 0016AFD8 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8016E07C 0016AFDC C0 63 00 08 */ lfs f3, 8(r3) +/* 8016E080 0016AFE0 C0 5F 00 50 */ lfs f2, 0x50(r31) +/* 8016E084 0016AFE4 EC 00 08 2A */ fadds f0, f0, f1 +/* 8016E088 0016AFE8 C0 A3 00 00 */ lfs f5, 0(r3) +/* 8016E08C 0016AFEC C0 83 00 04 */ lfs f4, 4(r3) +/* 8016E090 0016AFF0 EC C2 08 2A */ fadds f6, f2, f1 +/* 8016E094 0016AFF4 C0 E1 00 C0 */ lfs f7, 0xc0(r1) +/* 8016E098 0016AFF8 C0 22 A0 A0 */ lfs f1, lbl_805ABDC0@sda21(r2) +/* 8016E09C 0016AFFC C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8016E0A0 0016B000 EC 27 08 FA */ fmadds f1, f7, f3, f1 +/* 8016E0A4 0016B004 D0 A1 00 18 */ stfs f5, 0x18(r1) +/* 8016E0A8 0016B008 D0 1D 00 00 */ stfs f0, 0(r29) +/* 8016E0AC 0016B00C EC 02 08 2A */ fadds f0, f2, f1 +/* 8016E0B0 0016B010 D0 DD 00 04 */ stfs f6, 4(r29) +/* 8016E0B4 0016B014 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 8016E0B8 0016B018 D0 61 00 20 */ stfs f3, 0x20(r1) +/* 8016E0BC 0016B01C D0 1D 00 08 */ stfs f0, 8(r29) +/* 8016E0C0 0016B020 48 00 00 84 */ b lbl_8016E144 +lbl_8016E0C4: +/* 8016E0C4 0016B024 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 8016E0C8 0016B028 C3 E3 00 40 */ lfs f31, 0x40(r3) +/* 8016E0CC 0016B02C 2C 00 00 01 */ cmpwi r0, 1 +/* 8016E0D0 0016B030 C3 C3 00 50 */ lfs f30, 0x50(r3) +/* 8016E0D4 0016B034 C3 A3 00 60 */ lfs f29, 0x60(r3) +/* 8016E0D8 0016B038 41 82 00 24 */ beq lbl_8016E0FC +/* 8016E0DC 0016B03C 48 11 6D 05 */ bl GetEyeHeight__7CPlayerCFv +/* 8016E0E0 0016B040 C0 42 A0 9C */ lfs f2, lbl_805ABDBC@sda21(r2) +/* 8016E0E4 0016B044 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016E0E8 0016B048 EC 22 08 2A */ fadds f1, f2, f1 +/* 8016E0EC 0016B04C EF FF 00 2A */ fadds f31, f31, f0 +/* 8016E0F0 0016B050 EF DE 00 2A */ fadds f30, f30, f0 +/* 8016E0F4 0016B054 EF BD 08 2A */ fadds f29, f29, f1 +/* 8016E0F8 0016B058 48 00 00 1C */ b lbl_8016E114 +lbl_8016E0FC: +/* 8016E0FC 0016B05C 80 83 07 68 */ lwz r4, 0x768(r3) +/* 8016E100 0016B060 38 61 00 34 */ addi r3, r1, 0x34 +/* 8016E104 0016B064 4B F8 85 F1 */ bl GetBallToWorld__10CMorphBallCFv +/* 8016E108 0016B068 C3 E1 00 40 */ lfs f31, 0x40(r1) +/* 8016E10C 0016B06C C3 C1 00 50 */ lfs f30, 0x50(r1) +/* 8016E110 0016B070 C3 A1 00 60 */ lfs f29, 0x60(r1) +lbl_8016E114: +/* 8016E114 0016B074 D3 FD 00 00 */ stfs f31, 0(r29) +/* 8016E118 0016B078 D3 DD 00 04 */ stfs f30, 4(r29) +/* 8016E11C 0016B07C D3 BD 00 08 */ stfs f29, 8(r29) +/* 8016E120 0016B080 48 00 00 24 */ b lbl_8016E144 +lbl_8016E124: +/* 8016E124 0016B084 80 9E 08 4C */ lwz r4, 0x84c(r30) +/* 8016E128 0016B088 7F A3 EB 78 */ mr r3, r29 +/* 8016E12C 0016B08C 7F C5 F3 78 */ mr r5, r30 +/* 8016E130 0016B090 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) +/* 8016E134 0016B094 81 84 00 00 */ lwz r12, 0(r4) +/* 8016E138 0016B098 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8016E13C 0016B09C 7D 89 03 A6 */ mtctr r12 +/* 8016E140 0016B0A0 4E 80 04 21 */ bctrl +lbl_8016E144: +/* 8016E144 0016B0A4 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 +/* 8016E148 0016B0A8 CB E1 01 00 */ lfd f31, 0x100(r1) +/* 8016E14C 0016B0AC E3 C1 00 F8 */ psq_l f30, 248(r1), 0, qr0 +/* 8016E150 0016B0B0 CB C1 00 F0 */ lfd f30, 0xf0(r1) +/* 8016E154 0016B0B4 E3 A1 00 E8 */ psq_l f29, 232(r1), 0, qr0 +/* 8016E158 0016B0B8 CB A1 00 E0 */ lfd f29, 0xe0(r1) +/* 8016E15C 0016B0BC 83 E1 00 DC */ lwz r31, 0xdc(r1) +/* 8016E160 0016B0C0 83 C1 00 D8 */ lwz r30, 0xd8(r1) +/* 8016E164 0016B0C4 80 01 01 14 */ lwz r0, 0x114(r1) +/* 8016E168 0016B0C8 83 A1 00 D4 */ lwz r29, 0xd4(r1) +/* 8016E16C 0016B0CC 7C 08 03 A6 */ mtlr r0 +/* 8016E170 0016B0D0 38 21 01 10 */ addi r1, r1, 0x110 +/* 8016E174 0016B0D4 4E 80 00 20 */ blr + +.global sub_8016e178 +sub_8016e178: +/* 8016E178 0016B0D8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8016E17C 0016B0DC 7C 08 02 A6 */ mflr r0 +/* 8016E180 0016B0E0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8016E184 0016B0E4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016E188 0016B0E8 A0 64 07 B4 */ lhz r3, 0x7b4(r4) +/* 8016E18C 0016B0EC 7C 03 00 40 */ cmplw r3, r0 +/* 8016E190 0016B0F0 40 82 00 50 */ bne lbl_8016E1E0 +/* 8016E194 0016B0F4 88 04 06 36 */ lbz r0, 0x636(r4) +/* 8016E198 0016B0F8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8016E19C 0016B0FC 40 82 00 44 */ bne lbl_8016E1E0 +/* 8016E1A0 0016B100 7C 83 23 78 */ mr r3, r4 +/* 8016E1A4 0016B104 7C A4 2B 78 */ mr r4, r5 +/* 8016E1A8 0016B108 81 83 00 00 */ lwz r12, 0(r3) +/* 8016E1AC 0016B10C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8016E1B0 0016B110 7D 89 03 A6 */ mtctr r12 +/* 8016E1B4 0016B114 4E 80 04 21 */ bctrl +/* 8016E1B8 0016B118 28 03 00 00 */ cmplwi r3, 0 +/* 8016E1BC 0016B11C 38 00 00 00 */ li r0, 0 +/* 8016E1C0 0016B120 41 82 00 18 */ beq lbl_8016E1D8 +/* 8016E1C4 0016B124 C0 23 00 00 */ lfs f1, 0(r3) +/* 8016E1C8 0016B128 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016E1CC 0016B12C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8016E1D0 0016B130 40 81 00 08 */ ble lbl_8016E1D8 +/* 8016E1D4 0016B134 38 00 00 01 */ li r0, 1 +lbl_8016E1D8: +/* 8016E1D8 0016B138 7C 03 03 78 */ mr r3, r0 +/* 8016E1DC 0016B13C 48 00 00 08 */ b lbl_8016E1E4 +lbl_8016E1E0: +/* 8016E1E0 0016B140 38 60 00 00 */ li r3, 0 +lbl_8016E1E4: +/* 8016E1E4 0016B144 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8016E1E8 0016B148 7C 08 03 A6 */ mtlr r0 +/* 8016E1EC 0016B14C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8016E1F0 0016B150 4E 80 00 20 */ blr + +.global sub_8016e1f4 +sub_8016e1f4: +/* 8016E1F4 0016B154 80 03 07 C8 */ lwz r0, 0x7c8(r3) +/* 8016E1F8 0016B158 38 80 00 00 */ li r4, 0 +/* 8016E1FC 0016B15C 2C 00 00 02 */ cmpwi r0, 2 +/* 8016E200 0016B160 40 82 00 18 */ bne lbl_8016E218 +/* 8016E204 0016B164 80 63 04 50 */ lwz r3, 0x450(r3) +/* 8016E208 0016B168 88 03 03 00 */ lbz r0, 0x300(r3) +/* 8016E20C 0016B16C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8016E210 0016B170 40 82 00 08 */ bne lbl_8016E218 +/* 8016E214 0016B174 38 80 00 01 */ li r4, 1 +lbl_8016E218: +/* 8016E218 0016B178 7C 83 23 78 */ mr r3, r4 +/* 8016E21C 0016B17C 4E 80 00 20 */ blr + +.global Dodge__8CMetroidFR13CStateManager9EStateMsgf +Dodge__8CMetroidFR13CStateManager9EStateMsgf: +/* 8016E220 0016B180 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8016E224 0016B184 7C 08 02 A6 */ mflr r0 +/* 8016E228 0016B188 2C 05 00 01 */ cmpwi r5, 1 +/* 8016E22C 0016B18C 90 01 00 34 */ stw r0, 0x34(r1) +/* 8016E230 0016B190 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8016E234 0016B194 7C 7F 1B 78 */ mr r31, r3 +/* 8016E238 0016B198 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8016E23C 0016B19C 41 82 00 A4 */ beq lbl_8016E2E0 +/* 8016E240 0016B1A0 40 80 00 10 */ bge lbl_8016E250 +/* 8016E244 0016B1A4 2C 05 00 00 */ cmpwi r5, 0 +/* 8016E248 0016B1A8 40 80 00 14 */ bge lbl_8016E25C +/* 8016E24C 0016B1AC 48 00 01 2C */ b lbl_8016E378 +lbl_8016E250: +/* 8016E250 0016B1B0 2C 05 00 03 */ cmpwi r5, 3 +/* 8016E254 0016B1B4 40 80 01 24 */ bge lbl_8016E378 +/* 8016E258 0016B1B8 48 00 01 18 */ b lbl_8016E370 +lbl_8016E25C: +/* 8016E25C 0016B1BC 80 DF 08 18 */ lwz r6, 0x818(r31) +/* 8016E260 0016B1C0 2C 06 FF FF */ cmpwi r6, -1 +/* 8016E264 0016B1C4 41 82 01 14 */ beq lbl_8016E378 +/* 8016E268 0016B1C8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8016E26C 0016B1CC 38 A0 00 01 */ li r5, 1 +/* 8016E270 0016B1D0 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8016E274 0016B1D4 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8016E278 0016B1D8 3C 80 80 3E */ lis r4, lbl_803DA9E4@ha +/* 8016E27C 0016B1DC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8016E280 0016B1E0 38 04 A9 E4 */ addi r0, r4, lbl_803DA9E4@l +/* 8016E284 0016B1E4 3B C3 00 04 */ addi r30, r3, 4 +/* 8016E288 0016B1E8 90 A1 00 18 */ stw r5, 0x18(r1) +/* 8016E28C 0016B1EC 7F C3 F3 78 */ mr r3, r30 +/* 8016E290 0016B1F0 38 80 00 01 */ li r4, 1 +/* 8016E294 0016B1F4 90 01 00 14 */ stw r0, 0x14(r1) +/* 8016E298 0016B1F8 90 C1 00 1C */ stw r6, 0x1c(r1) +/* 8016E29C 0016B1FC 90 A1 00 20 */ stw r5, 0x20(r1) +/* 8016E2A0 0016B200 4B FC 31 99 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8016E2A4 0016B204 80 01 00 18 */ lwz r0, 0x18(r1) +/* 8016E2A8 0016B208 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 8016E2AC 0016B20C 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l +/* 8016E2B0 0016B210 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8016E2B4 0016B214 90 1E 00 C8 */ stw r0, 0xc8(r30) +/* 8016E2B8 0016B218 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 8016E2BC 0016B21C 80 C1 00 1C */ lwz r6, 0x1c(r1) +/* 8016E2C0 0016B220 38 00 00 02 */ li r0, 2 +/* 8016E2C4 0016B224 80 A1 00 20 */ lwz r5, 0x20(r1) +/* 8016E2C8 0016B228 90 DE 00 CC */ stw r6, 0xcc(r30) +/* 8016E2CC 0016B22C 90 BE 00 D0 */ stw r5, 0xd0(r30) +/* 8016E2D0 0016B230 90 81 00 14 */ stw r4, 0x14(r1) +/* 8016E2D4 0016B234 90 61 00 14 */ stw r3, 0x14(r1) +/* 8016E2D8 0016B238 90 1F 05 68 */ stw r0, 0x568(r31) +/* 8016E2DC 0016B23C 48 00 00 9C */ b lbl_8016E378 +lbl_8016E2E0: +/* 8016E2E0 0016B240 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8016E2E4 0016B244 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 8016E2E8 0016B248 2C 00 00 03 */ cmpwi r0, 3 +/* 8016E2EC 0016B24C 41 82 00 10 */ beq lbl_8016E2FC +/* 8016E2F0 0016B250 38 00 00 03 */ li r0, 3 +/* 8016E2F4 0016B254 90 1F 05 68 */ stw r0, 0x568(r31) +/* 8016E2F8 0016B258 48 00 00 80 */ b lbl_8016E378 +lbl_8016E2FC: +/* 8016E2FC 0016B25C A0 7F 07 B0 */ lhz r3, 0x7b0(r31) +/* 8016E300 0016B260 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016E304 0016B264 7C 03 00 40 */ cmplw r3, r0 +/* 8016E308 0016B268 41 82 00 70 */ beq lbl_8016E378 +/* 8016E30C 0016B26C A0 1F 07 B0 */ lhz r0, 0x7b0(r31) +/* 8016E310 0016B270 7C 83 23 78 */ mr r3, r4 +/* 8016E314 0016B274 38 81 00 08 */ addi r4, r1, 8 +/* 8016E318 0016B278 B0 01 00 08 */ sth r0, 8(r1) +/* 8016E31C 0016B27C 4B ED E2 89 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8016E320 0016B280 7C 64 1B 78 */ mr r4, r3 +/* 8016E324 0016B284 38 61 00 0C */ addi r3, r1, 0xc +/* 8016E328 0016B288 4B F4 19 69 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8016E32C 0016B28C 80 63 00 04 */ lwz r3, 4(r3) +/* 8016E330 0016B290 28 03 00 00 */ cmplwi r3, 0 +/* 8016E334 0016B294 41 82 00 44 */ beq lbl_8016E378 +/* 8016E338 0016B298 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 8016E33C 0016B29C C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8016E340 0016B2A0 C0 83 00 50 */ lfs f4, 0x50(r3) +/* 8016E344 0016B2A4 C0 7F 00 50 */ lfs f3, 0x50(r31) +/* 8016E348 0016B2A8 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8016E34C 0016B2AC C0 43 00 60 */ lfs f2, 0x60(r3) +/* 8016E350 0016B2B0 C0 3F 00 60 */ lfs f1, 0x60(r31) +/* 8016E354 0016B2B4 EC 64 18 28 */ fsubs f3, f4, f3 +/* 8016E358 0016B2B8 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8016E35C 0016B2BC EC 22 08 28 */ fsubs f1, f2, f1 +/* 8016E360 0016B2C0 D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 8016E364 0016B2C4 D0 63 00 20 */ stfs f3, 0x20(r3) +/* 8016E368 0016B2C8 D0 23 00 24 */ stfs f1, 0x24(r3) +/* 8016E36C 0016B2CC 48 00 00 0C */ b lbl_8016E378 +lbl_8016E370: +/* 8016E370 0016B2D0 38 00 FF FF */ li r0, -1 +/* 8016E374 0016B2D4 90 1F 08 18 */ stw r0, 0x818(r31) +lbl_8016E378: +/* 8016E378 0016B2D8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8016E37C 0016B2DC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8016E380 0016B2E0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8016E384 0016B2E4 7C 08 03 A6 */ mtlr r0 +/* 8016E388 0016B2E8 38 21 00 30 */ addi r1, r1, 0x30 +/* 8016E38C 0016B2EC 4E 80 00 20 */ blr + +.global WallHang__8CMetroidFR13CStateManager9EStateMsgf +WallHang__8CMetroidFR13CStateManager9EStateMsgf: +/* 8016E390 0016B2F0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8016E394 0016B2F4 7C 08 02 A6 */ mflr r0 +/* 8016E398 0016B2F8 2C 05 00 01 */ cmpwi r5, 1 +/* 8016E39C 0016B2FC 90 01 00 34 */ stw r0, 0x34(r1) +/* 8016E3A0 0016B300 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8016E3A4 0016B304 7C 7F 1B 78 */ mr r31, r3 +/* 8016E3A8 0016B308 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8016E3AC 0016B30C 7C 9E 23 78 */ mr r30, r4 +/* 8016E3B0 0016B310 41 82 00 58 */ beq lbl_8016E408 +/* 8016E3B4 0016B314 40 80 00 10 */ bge lbl_8016E3C4 +/* 8016E3B8 0016B318 2C 05 00 00 */ cmpwi r5, 0 +/* 8016E3BC 0016B31C 40 80 00 14 */ bge lbl_8016E3D0 +/* 8016E3C0 0016B320 48 00 01 CC */ b lbl_8016E58C +lbl_8016E3C4: +/* 8016E3C4 0016B324 2C 05 00 03 */ cmpwi r5, 3 +/* 8016E3C8 0016B328 40 80 01 C4 */ bge lbl_8016E58C +/* 8016E3CC 0016B32C 48 00 01 A4 */ b lbl_8016E570 +lbl_8016E3D0: +/* 8016E3D0 0016B330 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8016E3D4 0016B334 38 80 00 00 */ li r4, 0 +/* 8016E3D8 0016B338 4B FC C6 01 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8016E3DC 0016B33C 38 00 00 00 */ li r0, 0 +/* 8016E3E0 0016B340 7F E3 FB 78 */ mr r3, r31 +/* 8016E3E4 0016B344 90 1F 05 68 */ stw r0, 0x568(r31) +/* 8016E3E8 0016B348 7F C5 F3 78 */ mr r5, r30 +/* 8016E3EC 0016B34C 38 80 00 13 */ li r4, 0x13 +/* 8016E3F0 0016B350 4B EE 5B 91 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 8016E3F4 0016B354 88 1F 09 BF */ lbz r0, 0x9bf(r31) +/* 8016E3F8 0016B358 38 60 00 00 */ li r3, 0 +/* 8016E3FC 0016B35C 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 8016E400 0016B360 98 1F 09 BF */ stb r0, 0x9bf(r31) +/* 8016E404 0016B364 48 00 01 88 */ b lbl_8016E58C +lbl_8016E408: +/* 8016E408 0016B368 80 1F 05 68 */ lwz r0, 0x568(r31) +/* 8016E40C 0016B36C 2C 00 00 01 */ cmpwi r0, 1 +/* 8016E410 0016B370 41 82 00 60 */ beq lbl_8016E470 +/* 8016E414 0016B374 40 80 00 10 */ bge lbl_8016E424 +/* 8016E418 0016B378 2C 00 00 00 */ cmpwi r0, 0 +/* 8016E41C 0016B37C 40 80 00 14 */ bge lbl_8016E430 +/* 8016E420 0016B380 48 00 01 6C */ b lbl_8016E58C +lbl_8016E424: +/* 8016E424 0016B384 2C 00 00 03 */ cmpwi r0, 3 +/* 8016E428 0016B388 40 80 01 64 */ bge lbl_8016E58C +/* 8016E42C 0016B38C 48 00 01 28 */ b lbl_8016E554 +lbl_8016E430: +/* 8016E430 0016B390 88 1F 09 BF */ lbz r0, 0x9bf(r31) +/* 8016E434 0016B394 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8016E438 0016B398 41 82 01 54 */ beq lbl_8016E58C +/* 8016E43C 0016B39C 38 80 00 01 */ li r4, 1 +/* 8016E440 0016B3A0 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8016E444 0016B3A4 90 9F 05 68 */ stw r4, 0x568(r31) +/* 8016E448 0016B3A8 88 1F 09 BF */ lbz r0, 0x9bf(r31) +/* 8016E44C 0016B3AC 50 80 0F BC */ rlwimi r0, r4, 1, 0x1e, 0x1e +/* 8016E450 0016B3B0 98 1F 09 BF */ stb r0, 0x9bf(r31) +/* 8016E454 0016B3B4 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 8016E458 0016B3B8 D0 1F 08 0C */ stfs f0, 0x80c(r31) +/* 8016E45C 0016B3BC C0 03 00 04 */ lfs f0, 4(r3) +/* 8016E460 0016B3C0 D0 1F 08 10 */ stfs f0, 0x810(r31) +/* 8016E464 0016B3C4 C0 03 00 08 */ lfs f0, 8(r3) +/* 8016E468 0016B3C8 D0 1F 08 14 */ stfs f0, 0x814(r31) +/* 8016E46C 0016B3CC 48 00 01 20 */ b lbl_8016E58C +lbl_8016E470: +/* 8016E470 0016B3D0 81 5F 04 50 */ lwz r10, 0x450(r31) +/* 8016E474 0016B3D4 80 0A 02 B8 */ lwz r0, 0x2b8(r10) +/* 8016E478 0016B3D8 2C 00 00 0C */ cmpwi r0, 0xc +/* 8016E47C 0016B3DC 40 82 00 10 */ bne lbl_8016E48C +/* 8016E480 0016B3E0 38 00 00 02 */ li r0, 2 +/* 8016E484 0016B3E4 90 1F 05 68 */ stw r0, 0x568(r31) +/* 8016E488 0016B3E8 48 00 01 04 */ b lbl_8016E58C +lbl_8016E48C: +/* 8016E48C 0016B3EC 3C A0 80 3E */ lis r5, lbl_803DAA68@ha +/* 8016E490 0016B3F0 38 C0 00 00 */ li r6, 0 +/* 8016E494 0016B3F4 39 25 AA 68 */ addi r9, r5, lbl_803DAA68@l +/* 8016E498 0016B3F8 80 61 00 24 */ lwz r3, 0x24(r1) +/* 8016E49C 0016B3FC 50 C3 F8 00 */ rlwimi r3, r6, 0x1f, 0, 0 +/* 8016E4A0 0016B400 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8016E4A4 0016B404 C4 44 66 A0 */ lfsu f2, skZero3f@l(r4) +/* 8016E4A8 0016B408 3C E0 80 3E */ lis r7, lbl_803DA9F0@ha +/* 8016E4AC 0016B40C 7C 60 1B 78 */ mr r0, r3 +/* 8016E4B0 0016B410 39 00 00 0E */ li r8, 0xe +/* 8016E4B4 0016B414 C0 24 00 04 */ lfs f1, 4(r4) +/* 8016E4B8 0016B418 38 A0 FF FF */ li r5, -1 +/* 8016E4BC 0016B41C C0 04 00 08 */ lfs f0, 8(r4) +/* 8016E4C0 0016B420 38 E7 A9 F0 */ addi r7, r7, lbl_803DA9F0@l +/* 8016E4C4 0016B424 91 21 00 08 */ stw r9, 8(r1) +/* 8016E4C8 0016B428 50 C0 F0 42 */ rlwimi r0, r6, 0x1e, 1, 1 +/* 8016E4CC 0016B42C 3B EA 00 04 */ addi r31, r10, 4 +/* 8016E4D0 0016B430 38 80 00 0E */ li r4, 0xe +/* 8016E4D4 0016B434 90 61 00 24 */ stw r3, 0x24(r1) +/* 8016E4D8 0016B438 7F E3 FB 78 */ mr r3, r31 +/* 8016E4DC 0016B43C 91 01 00 0C */ stw r8, 0xc(r1) +/* 8016E4E0 0016B440 90 E1 00 08 */ stw r7, 8(r1) +/* 8016E4E4 0016B444 90 C1 00 10 */ stw r6, 0x10(r1) +/* 8016E4E8 0016B448 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 8016E4EC 0016B44C D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8016E4F0 0016B450 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8016E4F4 0016B454 90 A1 00 20 */ stw r5, 0x20(r1) +/* 8016E4F8 0016B458 90 01 00 24 */ stw r0, 0x24(r1) +/* 8016E4FC 0016B45C 4B FC 2F 3D */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8016E500 0016B460 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8016E504 0016B464 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 8016E508 0016B468 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l +/* 8016E50C 0016B46C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8016E510 0016B470 90 1F 01 90 */ stw r0, 0x190(r31) +/* 8016E514 0016B474 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8016E518 0016B478 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 8016E51C 0016B47C 80 61 00 14 */ lwz r3, 0x14(r1) +/* 8016E520 0016B480 90 BF 01 94 */ stw r5, 0x194(r31) +/* 8016E524 0016B484 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 8016E528 0016B488 90 7F 01 98 */ stw r3, 0x198(r31) +/* 8016E52C 0016B48C 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 8016E530 0016B490 90 BF 01 9C */ stw r5, 0x19c(r31) +/* 8016E534 0016B494 80 A1 00 20 */ lwz r5, 0x20(r1) +/* 8016E538 0016B498 90 7F 01 A0 */ stw r3, 0x1a0(r31) +/* 8016E53C 0016B49C 80 61 00 24 */ lwz r3, 0x24(r1) +/* 8016E540 0016B4A0 90 BF 01 A4 */ stw r5, 0x1a4(r31) +/* 8016E544 0016B4A4 90 81 00 08 */ stw r4, 8(r1) +/* 8016E548 0016B4A8 90 7F 01 A8 */ stw r3, 0x1a8(r31) +/* 8016E54C 0016B4AC 90 01 00 08 */ stw r0, 8(r1) +/* 8016E550 0016B4B0 48 00 00 3C */ b lbl_8016E58C +lbl_8016E554: +/* 8016E554 0016B4B4 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8016E558 0016B4B8 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 8016E55C 0016B4BC 2C 00 00 0C */ cmpwi r0, 0xc +/* 8016E560 0016B4C0 41 82 00 2C */ beq lbl_8016E58C +/* 8016E564 0016B4C4 38 00 00 03 */ li r0, 3 +/* 8016E568 0016B4C8 90 1F 05 68 */ stw r0, 0x568(r31) +/* 8016E56C 0016B4CC 48 00 00 20 */ b lbl_8016E58C +lbl_8016E570: +/* 8016E570 0016B4D0 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8016E574 0016B4D4 38 80 00 01 */ li r4, 1 +/* 8016E578 0016B4D8 4B FC C4 61 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8016E57C 0016B4DC 88 1F 09 BF */ lbz r0, 0x9bf(r31) +/* 8016E580 0016B4E0 38 60 00 01 */ li r3, 1 +/* 8016E584 0016B4E4 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8016E588 0016B4E8 98 1F 09 BF */ stb r0, 0x9bf(r31) +lbl_8016E58C: +/* 8016E58C 0016B4EC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8016E590 0016B4F0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8016E594 0016B4F4 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8016E598 0016B4F8 7C 08 03 A6 */ mtlr r0 +/* 8016E59C 0016B4FC 38 21 00 30 */ addi r1, r1, 0x30 +/* 8016E5A0 0016B500 4E 80 00 20 */ blr + +.global TelegraphAttack__8CMetroidFR13CStateManager9EStateMsgf +TelegraphAttack__8CMetroidFR13CStateManager9EStateMsgf: +/* 8016E5A4 0016B504 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 8016E5A8 0016B508 7C 08 02 A6 */ mflr r0 +/* 8016E5AC 0016B50C 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 8016E5B0 0016B510 DB E1 00 E0 */ stfd f31, 0xe0(r1) +/* 8016E5B4 0016B514 F3 E1 00 E8 */ psq_st f31, 232(r1), 0, qr0 +/* 8016E5B8 0016B518 DB C1 00 D0 */ stfd f30, 0xd0(r1) +/* 8016E5BC 0016B51C F3 C1 00 D8 */ psq_st f30, 216(r1), 0, qr0 +/* 8016E5C0 0016B520 DB A1 00 C0 */ stfd f29, 0xc0(r1) +/* 8016E5C4 0016B524 F3 A1 00 C8 */ psq_st f29, 200(r1), 0, qr0 +/* 8016E5C8 0016B528 93 E1 00 BC */ stw r31, 0xbc(r1) +/* 8016E5CC 0016B52C 93 C1 00 B8 */ stw r30, 0xb8(r1) +/* 8016E5D0 0016B530 2C 05 00 01 */ cmpwi r5, 1 +/* 8016E5D4 0016B534 7C 7F 1B 78 */ mr r31, r3 +/* 8016E5D8 0016B538 7C 9E 23 78 */ mr r30, r4 +/* 8016E5DC 0016B53C 41 82 00 54 */ beq lbl_8016E630 +/* 8016E5E0 0016B540 40 80 00 10 */ bge lbl_8016E5F0 +/* 8016E5E4 0016B544 2C 05 00 00 */ cmpwi r5, 0 +/* 8016E5E8 0016B548 40 80 00 14 */ bge lbl_8016E5FC +/* 8016E5EC 0016B54C 48 00 03 28 */ b lbl_8016E914 +lbl_8016E5F0: +/* 8016E5F0 0016B550 2C 05 00 03 */ cmpwi r5, 3 +/* 8016E5F4 0016B554 40 80 03 20 */ bge lbl_8016E914 +/* 8016E5F8 0016B558 48 00 02 9C */ b lbl_8016E894 +lbl_8016E5FC: +/* 8016E5FC 0016B55C 38 00 00 00 */ li r0, 0 +/* 8016E600 0016B560 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016E604 0016B564 90 1F 05 68 */ stw r0, 0x568(r31) +/* 8016E608 0016B568 C0 3F 06 44 */ lfs f1, 0x644(r31) +/* 8016E60C 0016B56C D0 3F 07 B8 */ stfs f1, 0x7b8(r31) +/* 8016E610 0016B570 D0 1F 08 00 */ stfs f0, 0x800(r31) +/* 8016E614 0016B574 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8016E618 0016B578 38 63 00 04 */ addi r3, r3, 4 +/* 8016E61C 0016B57C 4B FC 2E 8D */ bl ClearLocomotionCmds__16CBodyStateCmdMgrFv +/* 8016E620 0016B580 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8016E624 0016B584 38 80 00 03 */ li r4, 3 +/* 8016E628 0016B588 4B FC C3 B1 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8016E62C 0016B58C 48 00 02 E8 */ b lbl_8016E914 +lbl_8016E630: +/* 8016E630 0016B590 80 1F 05 68 */ lwz r0, 0x568(r31) +/* 8016E634 0016B594 2C 00 00 01 */ cmpwi r0, 1 +/* 8016E638 0016B598 41 82 02 DC */ beq lbl_8016E914 +/* 8016E63C 0016B59C 40 80 00 10 */ bge lbl_8016E64C +/* 8016E640 0016B5A0 2C 00 00 00 */ cmpwi r0, 0 +/* 8016E644 0016B5A4 40 80 00 14 */ bge lbl_8016E658 +/* 8016E648 0016B5A8 48 00 02 CC */ b lbl_8016E914 +lbl_8016E64C: +/* 8016E64C 0016B5AC 2C 00 00 03 */ cmpwi r0, 3 +/* 8016E650 0016B5B0 40 80 02 C4 */ bge lbl_8016E914 +/* 8016E654 0016B5B4 48 00 01 A8 */ b lbl_8016E7FC +lbl_8016E658: +/* 8016E658 0016B5B8 C0 5F 07 B8 */ lfs f2, 0x7b8(r31) +/* 8016E65C 0016B5BC C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016E660 0016B5C0 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8016E664 0016B5C4 D0 3F 07 B8 */ stfs f1, 0x7b8(r31) +/* 8016E668 0016B5C8 C0 3F 07 B8 */ lfs f1, 0x7b8(r31) +/* 8016E66C 0016B5CC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8016E670 0016B5D0 40 80 00 B4 */ bge lbl_8016E724 +/* 8016E674 0016B5D4 38 00 00 02 */ li r0, 2 +/* 8016E678 0016B5D8 7F E4 FB 78 */ mr r4, r31 +/* 8016E67C 0016B5DC 90 1F 05 68 */ stw r0, 0x568(r31) +/* 8016E680 0016B5E0 7F C5 F3 78 */ mr r5, r30 +/* 8016E684 0016B5E4 38 61 00 44 */ addi r3, r1, 0x44 +/* 8016E688 0016B5E8 C3 BF 00 60 */ lfs f29, 0x60(r31) +/* 8016E68C 0016B5EC C3 DF 00 50 */ lfs f30, 0x50(r31) +/* 8016E690 0016B5F0 C3 FF 00 40 */ lfs f31, 0x40(r31) +/* 8016E694 0016B5F4 4B FF F9 29 */ bl sub_8016dfbc +/* 8016E698 0016B5F8 C0 41 00 44 */ lfs f2, 0x44(r1) +/* 8016E69C 0016B5FC 38 61 00 68 */ addi r3, r1, 0x68 +/* 8016E6A0 0016B600 C0 21 00 48 */ lfs f1, 0x48(r1) +/* 8016E6A4 0016B604 C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 8016E6A8 0016B608 EC 42 F8 28 */ fsubs f2, f2, f31 +/* 8016E6AC 0016B60C EC 21 F0 28 */ fsubs f1, f1, f30 +/* 8016E6B0 0016B610 EC 00 E8 28 */ fsubs f0, f0, f29 +/* 8016E6B4 0016B614 D0 41 00 68 */ stfs f2, 0x68(r1) +/* 8016E6B8 0016B618 D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 8016E6BC 0016B61C D0 01 00 70 */ stfs f0, 0x70(r1) +/* 8016E6C0 0016B620 48 1A 61 F9 */ bl Magnitude__9CVector3fCFv +/* 8016E6C4 0016B624 C0 02 A0 E4 */ lfs f0, lbl_805ABE04@sda21(r2) +/* 8016E6C8 0016B628 C3 BF 03 B4 */ lfs f29, 0x3b4(r31) +/* 8016E6CC 0016B62C C3 C2 A0 80 */ lfs f30, lbl_805ABDA0@sda21(r2) +/* 8016E6D0 0016B630 EF E0 00 72 */ fmuls f31, f0, f1 +/* 8016E6D4 0016B634 FC 1D F0 40 */ fcmpo cr0, f29, f30 +/* 8016E6D8 0016B638 40 81 00 0C */ ble lbl_8016E6E4 +/* 8016E6DC 0016B63C C0 02 A0 E8 */ lfs f0, lbl_805ABE08@sda21(r2) +/* 8016E6E0 0016B640 EF C0 E8 24 */ fdivs f30, f0, f29 +lbl_8016E6E4: +/* 8016E6E4 0016B644 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8016E6E8 0016B648 38 63 02 A4 */ addi r3, r3, 0x2a4 +/* 8016E6EC 0016B64C 4B FC 57 C1 */ bl GetMaxSpeed__14CBodyStateInfoCFv +/* 8016E6F0 0016B650 EC 3F 08 24 */ fdivs f1, f31, f1 +/* 8016E6F4 0016B654 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016E6F8 0016B658 EC 3E 08 2A */ fadds f1, f30, f1 +/* 8016E6FC 0016B65C FC 1D 00 40 */ fcmpo cr0, f29, f0 +/* 8016E700 0016B660 D0 3F 08 04 */ stfs f1, 0x804(r31) +/* 8016E704 0016B664 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8016E708 0016B668 40 81 00 10 */ ble lbl_8016E718 +/* 8016E70C 0016B66C C0 02 A0 EC */ lfs f0, lbl_805ABE0C@sda21(r2) +/* 8016E710 0016B670 EC 20 E8 24 */ fdivs f1, f0, f29 +/* 8016E714 0016B674 48 00 00 08 */ b lbl_8016E71C +lbl_8016E718: +/* 8016E718 0016B678 C0 22 A0 EC */ lfs f1, lbl_805ABE0C@sda21(r2) +lbl_8016E71C: +/* 8016E71C 0016B67C 4B FC C2 89 */ bl SetTurnSpeed__15CBodyControllerFf +/* 8016E720 0016B680 48 00 01 F4 */ b lbl_8016E914 +lbl_8016E724: +/* 8016E724 0016B684 A0 7F 07 B0 */ lhz r3, 0x7b0(r31) +/* 8016E728 0016B688 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016E72C 0016B68C 7C 03 00 40 */ cmplw r3, r0 +/* 8016E730 0016B690 41 82 01 E4 */ beq lbl_8016E914 +/* 8016E734 0016B694 A0 1F 07 B0 */ lhz r0, 0x7b0(r31) +/* 8016E738 0016B698 7F C3 F3 78 */ mr r3, r30 +/* 8016E73C 0016B69C 38 81 00 14 */ addi r4, r1, 0x14 +/* 8016E740 0016B6A0 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8016E744 0016B6A4 4B ED DE 61 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8016E748 0016B6A8 7C 64 1B 78 */ mr r4, r3 +/* 8016E74C 0016B6AC 38 61 00 18 */ addi r3, r1, 0x18 +/* 8016E750 0016B6B0 4B F4 15 41 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8016E754 0016B6B4 80 83 00 04 */ lwz r4, 4(r3) +/* 8016E758 0016B6B8 28 04 00 00 */ cmplwi r4, 0 +/* 8016E75C 0016B6BC 41 82 01 B8 */ beq lbl_8016E914 +/* 8016E760 0016B6C0 C0 24 00 50 */ lfs f1, 0x50(r4) +/* 8016E764 0016B6C4 38 61 00 5C */ addi r3, r1, 0x5c +/* 8016E768 0016B6C8 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 8016E76C 0016B6CC C0 64 00 60 */ lfs f3, 0x60(r4) +/* 8016E770 0016B6D0 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8016E774 0016B6D4 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8016E778 0016B6D8 C0 24 00 40 */ lfs f1, 0x40(r4) +/* 8016E77C 0016B6DC C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8016E780 0016B6E0 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8016E784 0016B6E4 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8016E788 0016B6E8 D0 81 00 60 */ stfs f4, 0x60(r1) +/* 8016E78C 0016B6EC D0 41 00 64 */ stfs f2, 0x64(r1) +/* 8016E790 0016B6F0 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 8016E794 0016B6F4 48 1A 5F 65 */ bl CanBeNormalized__9CVector3fCFv +/* 8016E798 0016B6F8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016E79C 0016B6FC 41 82 01 78 */ beq lbl_8016E914 +/* 8016E7A0 0016B700 38 61 00 38 */ addi r3, r1, 0x38 +/* 8016E7A4 0016B704 38 81 00 5C */ addi r4, r1, 0x5c +/* 8016E7A8 0016B708 48 1A 60 A9 */ bl AsNormalized__9CVector3fCFv +/* 8016E7AC 0016B70C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8016E7B0 0016B710 C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 8016E7B4 0016B714 C0 61 00 38 */ lfs f3, 0x38(r1) +/* 8016E7B8 0016B718 38 81 00 90 */ addi r4, r1, 0x90 +/* 8016E7BC 0016B71C C0 41 00 3C */ lfs f2, 0x3c(r1) +/* 8016E7C0 0016B720 C0 A3 00 04 */ lfs f5, 4(r3) +/* 8016E7C4 0016B724 C0 83 00 08 */ lfs f4, 8(r3) +/* 8016E7C8 0016B728 C0 21 00 40 */ lfs f1, 0x40(r1) +/* 8016E7CC 0016B72C C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) +/* 8016E7D0 0016B730 D0 C1 00 90 */ stfs f6, 0x90(r1) +/* 8016E7D4 0016B734 D0 A1 00 94 */ stfs f5, 0x94(r1) +/* 8016E7D8 0016B738 D0 81 00 98 */ stfs f4, 0x98(r1) +/* 8016E7DC 0016B73C D0 61 00 9C */ stfs f3, 0x9c(r1) +/* 8016E7E0 0016B740 D0 41 00 A0 */ stfs f2, 0xa0(r1) +/* 8016E7E4 0016B744 D0 21 00 A4 */ stfs f1, 0xa4(r1) +/* 8016E7E8 0016B748 D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 8016E7EC 0016B74C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8016E7F0 0016B750 38 63 00 04 */ addi r3, r3, 4 +/* 8016E7F4 0016B754 4B FC 2F 25 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 8016E7F8 0016B758 48 00 01 1C */ b lbl_8016E914 +lbl_8016E7FC: +/* 8016E7FC 0016B75C C0 1F 08 00 */ lfs f0, 0x800(r31) +/* 8016E800 0016B760 7F E4 FB 78 */ mr r4, r31 +/* 8016E804 0016B764 7F C5 F3 78 */ mr r5, r30 +/* 8016E808 0016B768 38 61 00 2C */ addi r3, r1, 0x2c +/* 8016E80C 0016B76C EC 00 08 2A */ fadds f0, f0, f1 +/* 8016E810 0016B770 D0 1F 08 00 */ stfs f0, 0x800(r31) +/* 8016E814 0016B774 4B FF F7 A9 */ bl sub_8016dfbc +/* 8016E818 0016B778 C0 41 00 2C */ lfs f2, 0x2c(r1) +/* 8016E81C 0016B77C 7F E5 FB 78 */ mr r5, r31 +/* 8016E820 0016B780 C0 21 00 30 */ lfs f1, 0x30(r1) +/* 8016E824 0016B784 38 61 00 20 */ addi r3, r1, 0x20 +/* 8016E828 0016B788 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 8016E82C 0016B78C 38 9F 04 5C */ addi r4, r31, 0x45c +/* 8016E830 0016B790 D0 41 00 50 */ stfs f2, 0x50(r1) +/* 8016E834 0016B794 38 C1 00 50 */ addi r6, r1, 0x50 +/* 8016E838 0016B798 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 8016E83C 0016B79C D0 01 00 58 */ stfs f0, 0x58(r1) +/* 8016E840 0016B7A0 4B FD 03 E1 */ bl Seek__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3f +/* 8016E844 0016B7A4 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8016E848 0016B7A8 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) +/* 8016E84C 0016B7AC C0 C1 00 20 */ lfs f6, 0x20(r1) +/* 8016E850 0016B7B0 38 81 00 74 */ addi r4, r1, 0x74 +/* 8016E854 0016B7B4 C0 A1 00 24 */ lfs f5, 0x24(r1) +/* 8016E858 0016B7B8 C0 81 00 28 */ lfs f4, 0x28(r1) +/* 8016E85C 0016B7BC C0 43 00 04 */ lfs f2, 4(r3) +/* 8016E860 0016B7C0 C0 23 00 08 */ lfs f1, 8(r3) +/* 8016E864 0016B7C4 C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) +/* 8016E868 0016B7C8 D0 C1 00 74 */ stfs f6, 0x74(r1) +/* 8016E86C 0016B7CC D0 A1 00 78 */ stfs f5, 0x78(r1) +/* 8016E870 0016B7D0 D0 81 00 7C */ stfs f4, 0x7c(r1) +/* 8016E874 0016B7D4 D0 61 00 80 */ stfs f3, 0x80(r1) +/* 8016E878 0016B7D8 D0 41 00 84 */ stfs f2, 0x84(r1) +/* 8016E87C 0016B7DC D0 21 00 88 */ stfs f1, 0x88(r1) +/* 8016E880 0016B7E0 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 8016E884 0016B7E4 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8016E888 0016B7E8 38 63 00 04 */ addi r3, r3, 4 +/* 8016E88C 0016B7EC 4B FC 2E 8D */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 8016E890 0016B7F0 48 00 00 84 */ b lbl_8016E914 +lbl_8016E894: +/* 8016E894 0016B7F4 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8016E898 0016B7F8 C0 3F 03 B8 */ lfs f1, 0x3b8(r31) +/* 8016E89C 0016B7FC 4B FC C1 09 */ bl SetTurnSpeed__15CBodyControllerFf +/* 8016E8A0 0016B800 7F E3 FB 78 */ mr r3, r31 +/* 8016E8A4 0016B804 7F C4 F3 78 */ mr r4, r30 +/* 8016E8A8 0016B808 81 9F 00 00 */ lwz r12, 0(r31) +/* 8016E8AC 0016B80C C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) +/* 8016E8B0 0016B810 81 8C 01 8C */ lwz r12, 0x18c(r12) +/* 8016E8B4 0016B814 7D 89 03 A6 */ mtctr r12 +/* 8016E8B8 0016B818 4E 80 04 21 */ bctrl +/* 8016E8BC 0016B81C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016E8C0 0016B820 40 82 00 28 */ bne lbl_8016E8E8 +/* 8016E8C4 0016B824 7F E3 FB 78 */ mr r3, r31 +/* 8016E8C8 0016B828 7F C4 F3 78 */ mr r4, r30 +/* 8016E8CC 0016B82C 81 9F 00 00 */ lwz r12, 0(r31) +/* 8016E8D0 0016B830 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) +/* 8016E8D4 0016B834 81 8C 01 B8 */ lwz r12, 0x1b8(r12) +/* 8016E8D8 0016B838 7D 89 03 A6 */ mtctr r12 +/* 8016E8DC 0016B83C 4E 80 04 21 */ bctrl +/* 8016E8E0 0016B840 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016E8E4 0016B844 41 82 00 30 */ beq lbl_8016E914 +lbl_8016E8E8: +/* 8016E8E8 0016B848 A1 1F 00 08 */ lhz r8, 8(r31) +/* 8016E8EC 0016B84C 7F C4 F3 78 */ mr r4, r30 +/* 8016E8F0 0016B850 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8016E8F4 0016B854 38 C1 00 0C */ addi r6, r1, 0xc +/* 8016E8F8 0016B858 B1 01 00 0C */ sth r8, 0xc(r1) +/* 8016E8FC 0016B85C 38 60 00 00 */ li r3, 0 +/* 8016E900 0016B860 38 E0 00 00 */ li r7, 0 +/* 8016E904 0016B864 A0 1F 06 98 */ lhz r0, 0x698(r31) +/* 8016E908 0016B868 B1 01 00 08 */ sth r8, 8(r1) +/* 8016E90C 0016B86C B0 01 00 10 */ sth r0, 0x10(r1) +/* 8016E910 0016B870 48 0C B5 C1 */ bl ResetTeamAiRole__10CTeamAiMgrF11EAttackTypeR13CStateManager9TUniqueId9TUniqueIdb +lbl_8016E914: +/* 8016E914 0016B874 E3 E1 00 E8 */ psq_l f31, 232(r1), 0, qr0 +/* 8016E918 0016B878 CB E1 00 E0 */ lfd f31, 0xe0(r1) +/* 8016E91C 0016B87C E3 C1 00 D8 */ psq_l f30, 216(r1), 0, qr0 +/* 8016E920 0016B880 CB C1 00 D0 */ lfd f30, 0xd0(r1) +/* 8016E924 0016B884 E3 A1 00 C8 */ psq_l f29, 200(r1), 0, qr0 +/* 8016E928 0016B888 CB A1 00 C0 */ lfd f29, 0xc0(r1) +/* 8016E92C 0016B88C 83 E1 00 BC */ lwz r31, 0xbc(r1) +/* 8016E930 0016B890 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 8016E934 0016B894 83 C1 00 B8 */ lwz r30, 0xb8(r1) +/* 8016E938 0016B898 7C 08 03 A6 */ mtlr r0 +/* 8016E93C 0016B89C 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 8016E940 0016B8A0 4E 80 00 20 */ blr + +.global Attack__8CMetroidFR13CStateManager9EStateMsgf +Attack__8CMetroidFR13CStateManager9EStateMsgf: +/* 8016E944 0016B8A4 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 8016E948 0016B8A8 7C 08 02 A6 */ mflr r0 +/* 8016E94C 0016B8AC 2C 05 00 01 */ cmpwi r5, 1 +/* 8016E950 0016B8B0 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 8016E954 0016B8B4 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 8016E958 0016B8B8 7C 9F 23 78 */ mr r31, r4 +/* 8016E95C 0016B8BC 93 C1 00 98 */ stw r30, 0x98(r1) +/* 8016E960 0016B8C0 7C 7E 1B 78 */ mr r30, r3 +/* 8016E964 0016B8C4 41 82 00 AC */ beq lbl_8016EA10 +/* 8016E968 0016B8C8 40 80 00 10 */ bge lbl_8016E978 +/* 8016E96C 0016B8CC 2C 05 00 00 */ cmpwi r5, 0 +/* 8016E970 0016B8D0 40 80 00 14 */ bge lbl_8016E984 +/* 8016E974 0016B8D4 48 00 03 54 */ b lbl_8016ECC8 +lbl_8016E978: +/* 8016E978 0016B8D8 2C 05 00 03 */ cmpwi r5, 3 +/* 8016E97C 0016B8DC 40 80 03 4C */ bge lbl_8016ECC8 +/* 8016E980 0016B8E0 48 00 02 2C */ b lbl_8016EBAC +lbl_8016E984: +/* 8016E984 0016B8E4 4B FF E8 05 */ bl sub_8016d188 +/* 8016E988 0016B8E8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016E98C 0016B8EC 41 82 00 78 */ beq lbl_8016EA04 +/* 8016E990 0016B8F0 38 E0 00 01 */ li r7, 1 +/* 8016E994 0016B8F4 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016E998 0016B8F8 90 FE 05 68 */ stw r7, 0x568(r30) +/* 8016E99C 0016B8FC 7F C3 F3 78 */ mr r3, r30 +/* 8016E9A0 0016B900 7F E6 FB 78 */ mr r6, r31 +/* 8016E9A4 0016B904 38 80 00 29 */ li r4, 0x29 +/* 8016E9A8 0016B908 D0 1E 07 BC */ stfs f0, 0x7bc(r30) +/* 8016E9AC 0016B90C 38 A0 00 28 */ li r5, 0x28 +/* 8016E9B0 0016B910 90 FE 07 C8 */ stw r7, 0x7c8(r30) +/* 8016E9B4 0016B914 88 1E 09 BF */ lbz r0, 0x9bf(r30) +/* 8016E9B8 0016B918 50 E0 17 7A */ rlwimi r0, r7, 2, 0x1d, 0x1d +/* 8016E9BC 0016B91C 98 1E 09 BF */ stb r0, 0x9bf(r30) +/* 8016E9C0 0016B920 4B EE 55 15 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +/* 8016E9C4 0016B924 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8016E9C8 0016B928 7F E6 FB 78 */ mr r6, r31 +/* 8016E9CC 0016B92C 38 81 00 18 */ addi r4, r1, 0x18 +/* 8016E9D0 0016B930 38 A0 00 08 */ li r5, 8 +/* 8016E9D4 0016B934 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8016E9D8 0016B938 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8016E9DC 0016B93C 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8016E9E0 0016B940 48 00 C8 75 */ bl SetOrbitRequestForTarget__7CPlayerF9TUniqueId19EPlayerOrbitRequestR13CStateManager +/* 8016E9E4 0016B944 7F C3 F3 78 */ mr r3, r30 +/* 8016E9E8 0016B948 7F C4 F3 78 */ mr r4, r30 +/* 8016E9EC 0016B94C 4B FF D9 BD */ bl sub_8016c3a8 +/* 8016E9F0 0016B950 7F C3 F3 78 */ mr r3, r30 +/* 8016E9F4 0016B954 7F E5 FB 78 */ mr r5, r31 +/* 8016E9F8 0016B958 38 80 00 22 */ li r4, 0x22 +/* 8016E9FC 0016B95C 4B EE 59 55 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 8016EA00 0016B960 48 00 02 C8 */ b lbl_8016ECC8 +lbl_8016EA04: +/* 8016EA04 0016B964 38 00 00 03 */ li r0, 3 +/* 8016EA08 0016B968 90 1E 05 68 */ stw r0, 0x568(r30) +/* 8016EA0C 0016B96C 48 00 02 BC */ b lbl_8016ECC8 +lbl_8016EA10: +/* 8016EA10 0016B970 80 1E 05 68 */ lwz r0, 0x568(r30) +/* 8016EA14 0016B974 2C 00 00 02 */ cmpwi r0, 2 +/* 8016EA18 0016B978 41 82 00 A4 */ beq lbl_8016EABC +/* 8016EA1C 0016B97C 40 80 02 AC */ bge lbl_8016ECC8 +/* 8016EA20 0016B980 2C 00 00 01 */ cmpwi r0, 1 +/* 8016EA24 0016B984 40 80 00 08 */ bge lbl_8016EA2C +/* 8016EA28 0016B988 48 00 02 A0 */ b lbl_8016ECC8 +lbl_8016EA2C: +/* 8016EA2C 0016B98C 80 FE 04 50 */ lwz r7, 0x450(r30) +/* 8016EA30 0016B990 80 07 02 B8 */ lwz r0, 0x2b8(r7) +/* 8016EA34 0016B994 2C 00 00 09 */ cmpwi r0, 9 +/* 8016EA38 0016B998 40 82 00 10 */ bne lbl_8016EA48 +/* 8016EA3C 0016B99C 38 00 00 02 */ li r0, 2 +/* 8016EA40 0016B9A0 90 1E 05 68 */ stw r0, 0x568(r30) +/* 8016EA44 0016B9A4 48 00 02 84 */ b lbl_8016ECC8 +lbl_8016EA48: +/* 8016EA48 0016B9A8 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 8016EA4C 0016B9AC 3C 60 80 3E */ lis r3, lbl_803E10B0@ha +/* 8016EA50 0016B9B0 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 8016EA54 0016B9B4 38 80 00 07 */ li r4, 7 +/* 8016EA58 0016B9B8 90 01 00 44 */ stw r0, 0x44(r1) +/* 8016EA5C 0016B9BC 38 C3 10 B0 */ addi r6, r3, lbl_803E10B0@l +/* 8016EA60 0016B9C0 38 A0 00 03 */ li r5, 3 +/* 8016EA64 0016B9C4 38 00 00 00 */ li r0, 0 +/* 8016EA68 0016B9C8 3B C7 00 04 */ addi r30, r7, 4 +/* 8016EA6C 0016B9CC 90 81 00 48 */ stw r4, 0x48(r1) +/* 8016EA70 0016B9D0 7F C3 F3 78 */ mr r3, r30 +/* 8016EA74 0016B9D4 38 80 00 07 */ li r4, 7 +/* 8016EA78 0016B9D8 90 C1 00 44 */ stw r6, 0x44(r1) +/* 8016EA7C 0016B9DC 90 A1 00 4C */ stw r5, 0x4c(r1) +/* 8016EA80 0016B9E0 90 01 00 50 */ stw r0, 0x50(r1) +/* 8016EA84 0016B9E4 4B FC 29 B5 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8016EA88 0016B9E8 80 01 00 48 */ lwz r0, 0x48(r1) +/* 8016EA8C 0016B9EC 3C 60 80 3E */ lis r3, lbl_803E10B0@ha +/* 8016EA90 0016B9F0 38 83 10 B0 */ addi r4, r3, lbl_803E10B0@l +/* 8016EA94 0016B9F4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8016EA98 0016B9F8 90 1E 01 48 */ stw r0, 0x148(r30) +/* 8016EA9C 0016B9FC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8016EAA0 0016BA00 80 A1 00 4C */ lwz r5, 0x4c(r1) +/* 8016EAA4 0016BA04 90 81 00 44 */ stw r4, 0x44(r1) +/* 8016EAA8 0016BA08 80 61 00 50 */ lwz r3, 0x50(r1) +/* 8016EAAC 0016BA0C 90 BE 01 4C */ stw r5, 0x14c(r30) +/* 8016EAB0 0016BA10 90 7E 01 50 */ stw r3, 0x150(r30) +/* 8016EAB4 0016BA14 90 01 00 44 */ stw r0, 0x44(r1) +/* 8016EAB8 0016BA18 48 00 02 10 */ b lbl_8016ECC8 +lbl_8016EABC: +/* 8016EABC 0016BA1C 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 8016EAC0 0016BA20 80 63 00 10 */ lwz r3, 0x10(r3) +/* 8016EAC4 0016BA24 88 03 02 20 */ lbz r0, 0x220(r3) +/* 8016EAC8 0016BA28 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8016EACC 0016BA2C 41 82 00 0C */ beq lbl_8016EAD8 +/* 8016EAD0 0016BA30 38 00 00 02 */ li r0, 2 +/* 8016EAD4 0016BA34 90 1E 07 C8 */ stw r0, 0x7c8(r30) +lbl_8016EAD8: +/* 8016EAD8 0016BA38 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 8016EADC 0016BA3C A0 7E 07 B0 */ lhz r3, 0x7b0(r30) +/* 8016EAE0 0016BA40 A0 04 00 08 */ lhz r0, 8(r4) +/* 8016EAE4 0016BA44 7C 03 00 40 */ cmplw r3, r0 +/* 8016EAE8 0016BA48 40 82 00 44 */ bne lbl_8016EB2C +/* 8016EAEC 0016BA4C A0 64 02 6C */ lhz r3, 0x26c(r4) +/* 8016EAF0 0016BA50 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8016EAF4 0016BA54 7C 03 00 40 */ cmplw r3, r0 +/* 8016EAF8 0016BA58 40 82 00 34 */ bne lbl_8016EB2C +/* 8016EAFC 0016BA5C 80 64 00 04 */ lwz r3, 4(r4) +/* 8016EB00 0016BA60 80 1E 00 04 */ lwz r0, 4(r30) +/* 8016EB04 0016BA64 7C 03 00 00 */ cmpw r3, r0 +/* 8016EB08 0016BA68 41 82 00 24 */ beq lbl_8016EB2C +/* 8016EB0C 0016BA6C 7F C3 F3 78 */ mr r3, r30 +/* 8016EB10 0016BA70 7F E4 FB 78 */ mr r4, r31 +/* 8016EB14 0016BA74 4B FF E3 A9 */ bl sub_8016cebc +/* 8016EB18 0016BA78 88 1E 04 01 */ lbz r0, 0x401(r30) +/* 8016EB1C 0016BA7C 38 60 00 01 */ li r3, 1 +/* 8016EB20 0016BA80 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 8016EB24 0016BA84 98 1E 04 01 */ stb r0, 0x401(r30) +/* 8016EB28 0016BA88 48 00 01 A0 */ b lbl_8016ECC8 +lbl_8016EB2C: +/* 8016EB2C 0016BA8C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8016EB30 0016BA90 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 8016EB34 0016BA94 2C 00 00 09 */ cmpwi r0, 9 +/* 8016EB38 0016BA98 41 82 00 10 */ beq lbl_8016EB48 +/* 8016EB3C 0016BA9C 38 00 00 03 */ li r0, 3 +/* 8016EB40 0016BAA0 90 1E 05 68 */ stw r0, 0x568(r30) +/* 8016EB44 0016BAA4 48 00 01 84 */ b lbl_8016ECC8 +lbl_8016EB48: +/* 8016EB48 0016BAA8 7F C3 F3 78 */ mr r3, r30 +/* 8016EB4C 0016BAAC 7F E4 FB 78 */ mr r4, r31 +/* 8016EB50 0016BAB0 4B FF D7 09 */ bl sub_8016c258 +/* 8016EB54 0016BAB4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016EB58 0016BAB8 41 82 01 70 */ beq lbl_8016ECC8 +/* 8016EB5C 0016BABC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8016EB60 0016BAC0 38 00 00 0A */ li r0, 0xa +/* 8016EB64 0016BAC4 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 8016EB68 0016BAC8 90 01 00 24 */ stw r0, 0x24(r1) +/* 8016EB6C 0016BACC 38 81 00 20 */ addi r4, r1, 0x20 +/* 8016EB70 0016BAD0 90 61 00 20 */ stw r3, 0x20(r1) +/* 8016EB74 0016BAD4 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8016EB78 0016BAD8 38 63 00 04 */ addi r3, r3, 4 +/* 8016EB7C 0016BADC 4B FC 2C 3D */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd +/* 8016EB80 0016BAE0 34 01 00 20 */ addic. r0, r1, 0x20 +/* 8016EB84 0016BAE4 41 82 00 10 */ beq lbl_8016EB94 +/* 8016EB88 0016BAE8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8016EB8C 0016BAEC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8016EB90 0016BAF0 90 01 00 20 */ stw r0, 0x20(r1) +lbl_8016EB94: +/* 8016EB94 0016BAF4 7F C3 F3 78 */ mr r3, r30 +/* 8016EB98 0016BAF8 7F E4 FB 78 */ mr r4, r31 +/* 8016EB9C 0016BAFC 4B FF E3 21 */ bl sub_8016cebc +/* 8016EBA0 0016BB00 38 00 00 03 */ li r0, 3 +/* 8016EBA4 0016BB04 90 1E 07 C8 */ stw r0, 0x7c8(r30) +/* 8016EBA8 0016BB08 48 00 01 20 */ b lbl_8016ECC8 +lbl_8016EBAC: +/* 8016EBAC 0016BB0C A1 1E 00 08 */ lhz r8, 8(r30) +/* 8016EBB0 0016BB10 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8016EBB4 0016BB14 38 C1 00 0C */ addi r6, r1, 0xc +/* 8016EBB8 0016BB18 38 60 00 00 */ li r3, 0 +/* 8016EBBC 0016BB1C B1 01 00 0C */ sth r8, 0xc(r1) +/* 8016EBC0 0016BB20 38 E0 00 00 */ li r7, 0 +/* 8016EBC4 0016BB24 A0 1E 06 98 */ lhz r0, 0x698(r30) +/* 8016EBC8 0016BB28 B1 01 00 08 */ sth r8, 8(r1) +/* 8016EBCC 0016BB2C B0 01 00 10 */ sth r0, 0x10(r1) +/* 8016EBD0 0016BB30 48 0C B3 01 */ bl ResetTeamAiRole__10CTeamAiMgrF11EAttackTypeR13CStateManager9TUniqueId9TUniqueIdb +/* 8016EBD4 0016BB34 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 8016EBD8 0016BB38 48 1A 39 05 */ bl Float__9CRandom16Fv +/* 8016EBDC 0016BB3C C0 5E 03 08 */ lfs f2, 0x308(r30) +/* 8016EBE0 0016BB40 38 00 00 00 */ li r0, 0 +/* 8016EBE4 0016BB44 C0 1E 03 04 */ lfs f0, 0x304(r30) +/* 8016EBE8 0016BB48 7F C3 F3 78 */ mr r3, r30 +/* 8016EBEC 0016BB4C 7F E4 FB 78 */ mr r4, r31 +/* 8016EBF0 0016BB50 EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 8016EBF4 0016BB54 D0 1E 07 B4 */ stfs f0, 0x7b4(r30) +/* 8016EBF8 0016BB58 90 1E 07 C8 */ stw r0, 0x7c8(r30) +/* 8016EBFC 0016BB5C 4B FF E2 C1 */ bl sub_8016cebc +/* 8016EC00 0016BB60 88 1E 09 BF */ lbz r0, 0x9bf(r30) +/* 8016EC04 0016BB64 38 60 00 00 */ li r3, 0 +/* 8016EC08 0016BB68 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 8016EC0C 0016BB6C 7F C3 F3 78 */ mr r3, r30 +/* 8016EC10 0016BB70 98 1E 09 BF */ stb r0, 0x9bf(r30) +/* 8016EC14 0016BB74 4B EE 58 9D */ bl GetYaw__6CActorCFv +/* 8016EC18 0016BB78 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 8016EC1C 0016BB7C 38 61 00 34 */ addi r3, r1, 0x34 +/* 8016EC20 0016BB80 38 81 00 1C */ addi r4, r1, 0x1c +/* 8016EC24 0016BB84 48 1A 24 D5 */ bl ZRotation__11CQuaternionFRC9CRelAngle +/* 8016EC28 0016BB88 C0 61 00 34 */ lfs f3, 0x34(r1) +/* 8016EC2C 0016BB8C 38 61 00 64 */ addi r3, r1, 0x64 +/* 8016EC30 0016BB90 C0 41 00 38 */ lfs f2, 0x38(r1) +/* 8016EC34 0016BB94 38 81 00 54 */ addi r4, r1, 0x54 +/* 8016EC38 0016BB98 C0 21 00 3C */ lfs f1, 0x3c(r1) +/* 8016EC3C 0016BB9C 38 A1 00 28 */ addi r5, r1, 0x28 +/* 8016EC40 0016BBA0 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 8016EC44 0016BBA4 D0 61 00 54 */ stfs f3, 0x54(r1) +/* 8016EC48 0016BBA8 D0 41 00 58 */ stfs f2, 0x58(r1) +/* 8016EC4C 0016BBAC D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 8016EC50 0016BBB0 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 8016EC54 0016BBB4 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 8016EC58 0016BBB8 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 8016EC5C 0016BBBC C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8016EC60 0016BBC0 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 8016EC64 0016BBC4 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 8016EC68 0016BBC8 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 8016EC6C 0016BBCC 48 1A 32 51 */ bl BuildTransform4f__11CQuaternionCFRC9CVector3f +/* 8016EC70 0016BBD0 38 7E 00 34 */ addi r3, r30, 0x34 +/* 8016EC74 0016BBD4 38 81 00 64 */ addi r4, r1, 0x64 +/* 8016EC78 0016BBD8 48 1A 3E C9 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8016EC7C 0016BBDC 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 8016EC80 0016BBE0 38 E0 00 01 */ li r7, 1 +/* 8016EC84 0016BBE4 50 E0 26 F6 */ rlwimi r0, r7, 4, 0x1b, 0x1b +/* 8016EC88 0016BBE8 7F C3 F3 78 */ mr r3, r30 +/* 8016EC8C 0016BBEC 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 8016EC90 0016BBF0 7F E6 FB 78 */ mr r6, r31 +/* 8016EC94 0016BBF4 38 80 00 29 */ li r4, 0x29 +/* 8016EC98 0016BBF8 38 A0 00 28 */ li r5, 0x28 +/* 8016EC9C 0016BBFC 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 8016ECA0 0016BC00 50 E0 1F 38 */ rlwimi r0, r7, 3, 0x1c, 0x1c +/* 8016ECA4 0016BC04 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 8016ECA8 0016BC08 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 8016ECAC 0016BC0C 50 E0 17 7A */ rlwimi r0, r7, 2, 0x1d, 0x1d +/* 8016ECB0 0016BC10 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 8016ECB4 0016BC14 4B EE 56 01 */ bl AddMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +/* 8016ECB8 0016BC18 7F C3 F3 78 */ mr r3, r30 +/* 8016ECBC 0016BC1C 7F E5 FB 78 */ mr r5, r31 +/* 8016ECC0 0016BC20 38 80 00 22 */ li r4, 0x22 +/* 8016ECC4 0016BC24 4B EE 52 BD */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_8016ECC8: +/* 8016ECC8 0016BC28 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 8016ECCC 0016BC2C 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 8016ECD0 0016BC30 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 8016ECD4 0016BC34 7C 08 03 A6 */ mtlr r0 +/* 8016ECD8 0016BC38 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 8016ECDC 0016BC3C 4E 80 00 20 */ blr + +.global TurnAround__8CMetroidFR13CStateManager9EStateMsgf +TurnAround__8CMetroidFR13CStateManager9EStateMsgf: +/* 8016ECE0 0016BC40 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8016ECE4 0016BC44 7C 08 02 A6 */ mflr r0 +/* 8016ECE8 0016BC48 2C 05 00 01 */ cmpwi r5, 1 +/* 8016ECEC 0016BC4C 90 01 00 54 */ stw r0, 0x54(r1) +/* 8016ECF0 0016BC50 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 8016ECF4 0016BC54 7C 9F 23 78 */ mr r31, r4 +/* 8016ECF8 0016BC58 93 C1 00 48 */ stw r30, 0x48(r1) +/* 8016ECFC 0016BC5C 7C 7E 1B 78 */ mr r30, r3 +/* 8016ED00 0016BC60 41 82 00 08 */ beq lbl_8016ED08 +/* 8016ED04 0016BC64 48 00 00 FC */ b lbl_8016EE00 +lbl_8016ED08: +/* 8016ED08 0016BC68 A0 7E 07 B0 */ lhz r3, 0x7b0(r30) +/* 8016ED0C 0016BC6C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016ED10 0016BC70 7C 03 00 40 */ cmplw r3, r0 +/* 8016ED14 0016BC74 41 82 00 EC */ beq lbl_8016EE00 +/* 8016ED18 0016BC78 A0 1E 07 B0 */ lhz r0, 0x7b0(r30) +/* 8016ED1C 0016BC7C 7F E3 FB 78 */ mr r3, r31 +/* 8016ED20 0016BC80 38 81 00 08 */ addi r4, r1, 8 +/* 8016ED24 0016BC84 B0 01 00 08 */ sth r0, 8(r1) +/* 8016ED28 0016BC88 4B ED D8 7D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8016ED2C 0016BC8C 7C 64 1B 78 */ mr r4, r3 +/* 8016ED30 0016BC90 38 61 00 0C */ addi r3, r1, 0xc +/* 8016ED34 0016BC94 4B F4 0F 5D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8016ED38 0016BC98 80 A3 00 04 */ lwz r5, 4(r3) +/* 8016ED3C 0016BC9C 28 05 00 00 */ cmplwi r5, 0 +/* 8016ED40 0016BCA0 41 82 00 C0 */ beq lbl_8016EE00 +/* 8016ED44 0016BCA4 C0 45 00 50 */ lfs f2, 0x50(r5) +/* 8016ED48 0016BCA8 7F C3 F3 78 */ mr r3, r30 +/* 8016ED4C 0016BCAC C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 8016ED50 0016BCB0 7F E4 FB 78 */ mr r4, r31 +/* 8016ED54 0016BCB4 C0 65 00 60 */ lfs f3, 0x60(r5) +/* 8016ED58 0016BCB8 C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 8016ED5C 0016BCBC EC 82 00 28 */ fsubs f4, f2, f0 +/* 8016ED60 0016BCC0 C0 45 00 40 */ lfs f2, 0x40(r5) +/* 8016ED64 0016BCC4 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8016ED68 0016BCC8 EC 63 08 28 */ fsubs f3, f3, f1 +/* 8016ED6C 0016BCCC C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) +/* 8016ED70 0016BCD0 EC 02 00 28 */ fsubs f0, f2, f0 +/* 8016ED74 0016BCD4 D0 81 00 24 */ stfs f4, 0x24(r1) +/* 8016ED78 0016BCD8 D0 61 00 28 */ stfs f3, 0x28(r1) +/* 8016ED7C 0016BCDC D0 01 00 20 */ stfs f0, 0x20(r1) +/* 8016ED80 0016BCE0 81 9E 00 00 */ lwz r12, 0(r30) +/* 8016ED84 0016BCE4 81 8C 01 E8 */ lwz r12, 0x1e8(r12) +/* 8016ED88 0016BCE8 7D 89 03 A6 */ mtctr r12 +/* 8016ED8C 0016BCEC 4E 80 04 21 */ bctrl +/* 8016ED90 0016BCF0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016ED94 0016BCF4 41 82 00 6C */ beq lbl_8016EE00 +/* 8016ED98 0016BCF8 38 61 00 20 */ addi r3, r1, 0x20 +/* 8016ED9C 0016BCFC 48 1A 59 5D */ bl CanBeNormalized__9CVector3fCFv +/* 8016EDA0 0016BD00 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016EDA4 0016BD04 41 82 00 5C */ beq lbl_8016EE00 +/* 8016EDA8 0016BD08 38 61 00 14 */ addi r3, r1, 0x14 +/* 8016EDAC 0016BD0C 38 81 00 20 */ addi r4, r1, 0x20 +/* 8016EDB0 0016BD10 48 1A 5A A1 */ bl AsNormalized__9CVector3fCFv +/* 8016EDB4 0016BD14 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8016EDB8 0016BD18 C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 8016EDBC 0016BD1C C0 61 00 14 */ lfs f3, 0x14(r1) +/* 8016EDC0 0016BD20 38 81 00 2C */ addi r4, r1, 0x2c +/* 8016EDC4 0016BD24 C0 41 00 18 */ lfs f2, 0x18(r1) +/* 8016EDC8 0016BD28 C0 A3 00 04 */ lfs f5, 4(r3) +/* 8016EDCC 0016BD2C C0 83 00 08 */ lfs f4, 8(r3) +/* 8016EDD0 0016BD30 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 8016EDD4 0016BD34 C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) +/* 8016EDD8 0016BD38 D0 C1 00 2C */ stfs f6, 0x2c(r1) +/* 8016EDDC 0016BD3C D0 A1 00 30 */ stfs f5, 0x30(r1) +/* 8016EDE0 0016BD40 D0 81 00 34 */ stfs f4, 0x34(r1) +/* 8016EDE4 0016BD44 D0 61 00 38 */ stfs f3, 0x38(r1) +/* 8016EDE8 0016BD48 D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 8016EDEC 0016BD4C D0 21 00 40 */ stfs f1, 0x40(r1) +/* 8016EDF0 0016BD50 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 8016EDF4 0016BD54 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8016EDF8 0016BD58 38 63 00 04 */ addi r3, r3, 4 +/* 8016EDFC 0016BD5C 4B FC 29 1D */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_8016EE00: +/* 8016EE00 0016BD60 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8016EE04 0016BD64 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 8016EE08 0016BD68 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 8016EE0C 0016BD6C 7C 08 03 A6 */ mtlr r0 +/* 8016EE10 0016BD70 38 21 00 50 */ addi r1, r1, 0x50 +/* 8016EE14 0016BD74 4E 80 00 20 */ blr + +.global PathFind__8CMetroidFR13CStateManager9EStateMsgf +PathFind__8CMetroidFR13CStateManager9EStateMsgf: +/* 8016EE18 0016BD78 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 8016EE1C 0016BD7C 7C 08 02 A6 */ mflr r0 +/* 8016EE20 0016BD80 90 01 00 94 */ stw r0, 0x94(r1) +/* 8016EE24 0016BD84 DB E1 00 80 */ stfd f31, 0x80(r1) +/* 8016EE28 0016BD88 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 +/* 8016EE2C 0016BD8C 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 8016EE30 0016BD90 93 C1 00 78 */ stw r30, 0x78(r1) +/* 8016EE34 0016BD94 93 A1 00 74 */ stw r29, 0x74(r1) +/* 8016EE38 0016BD98 7C BF 2B 78 */ mr r31, r5 +/* 8016EE3C 0016BD9C FF E0 08 90 */ fmr f31, f1 +/* 8016EE40 0016BDA0 2C 1F 00 01 */ cmpwi r31, 1 +/* 8016EE44 0016BDA4 7C 7D 1B 78 */ mr r29, r3 +/* 8016EE48 0016BDA8 7C 9E 23 78 */ mr r30, r4 +/* 8016EE4C 0016BDAC 41 82 00 5C */ beq lbl_8016EEA8 +/* 8016EE50 0016BDB0 40 80 00 10 */ bge lbl_8016EE60 +/* 8016EE54 0016BDB4 2C 1F 00 00 */ cmpwi r31, 0 +/* 8016EE58 0016BDB8 40 80 00 14 */ bge lbl_8016EE6C +/* 8016EE5C 0016BDBC 48 00 01 F0 */ b lbl_8016F04C +lbl_8016EE60: +/* 8016EE60 0016BDC0 2C 1F 00 03 */ cmpwi r31, 3 +/* 8016EE64 0016BDC4 40 80 01 E8 */ bge lbl_8016F04C +/* 8016EE68 0016BDC8 48 00 01 D8 */ b lbl_8016F040 +lbl_8016EE6C: +/* 8016EE6C 0016BDCC 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8016EE70 0016BDD0 38 80 00 02 */ li r4, 2 +/* 8016EE74 0016BDD4 4B FC BB 65 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8016EE78 0016BDD8 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8016EE7C 0016BDDC 38 00 00 01 */ li r0, 1 +/* 8016EE80 0016BDE0 C0 22 A0 98 */ lfs f1, lbl_805ABDB8@sda21(r2) +/* 8016EE84 0016BDE4 90 03 00 34 */ stw r0, 0x34(r3) +/* 8016EE88 0016BDE8 FC 40 08 90 */ fmr f2, f1 +/* 8016EE8C 0016BDEC 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8016EE90 0016BDF0 38 63 00 04 */ addi r3, r3, 4 +/* 8016EE94 0016BDF4 4B FC 29 55 */ bl SetSteeringSpeedRange__16CBodyStateCmdMgrFff +/* 8016EE98 0016BDF8 7F A3 EB 78 */ mr r3, r29 +/* 8016EE9C 0016BDFC 7F C4 F3 78 */ mr r4, r30 +/* 8016EEA0 0016BE00 4B FF EB 7D */ bl sub_8016da1c +/* 8016EEA4 0016BE04 48 00 01 A8 */ b lbl_8016F04C +lbl_8016EEA8: +/* 8016EEA8 0016BE08 81 83 00 00 */ lwz r12, 0(r3) +/* 8016EEAC 0016BE0C 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 8016EEB0 0016BE10 7D 89 03 A6 */ mtctr r12 +/* 8016EEB4 0016BE14 4E 80 04 21 */ bctrl +/* 8016EEB8 0016BE18 28 03 00 00 */ cmplwi r3, 0 +/* 8016EEBC 0016BE1C 41 82 00 64 */ beq lbl_8016EF20 +/* 8016EEC0 0016BE20 7F A3 EB 78 */ mr r3, r29 +/* 8016EEC4 0016BE24 7F C4 F3 78 */ mr r4, r30 +/* 8016EEC8 0016BE28 81 9D 00 00 */ lwz r12, 0(r29) +/* 8016EECC 0016BE2C C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) +/* 8016EED0 0016BE30 81 8C 01 90 */ lwz r12, 0x190(r12) +/* 8016EED4 0016BE34 7D 89 03 A6 */ mtctr r12 +/* 8016EED8 0016BE38 4E 80 04 21 */ bctrl +/* 8016EEDC 0016BE3C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016EEE0 0016BE40 40 82 00 40 */ bne lbl_8016EF20 +/* 8016EEE4 0016BE44 7F A3 EB 78 */ mr r3, r29 +/* 8016EEE8 0016BE48 7F C4 F3 78 */ mr r4, r30 +/* 8016EEEC 0016BE4C 81 9D 00 00 */ lwz r12, 0(r29) +/* 8016EEF0 0016BE50 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) +/* 8016EEF4 0016BE54 81 8C 01 94 */ lwz r12, 0x194(r12) +/* 8016EEF8 0016BE58 7D 89 03 A6 */ mtctr r12 +/* 8016EEFC 0016BE5C 4E 80 04 21 */ bctrl +/* 8016EF00 0016BE60 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016EF04 0016BE64 40 82 00 1C */ bne lbl_8016EF20 +/* 8016EF08 0016BE68 FC 20 F8 90 */ fmr f1, f31 +/* 8016EF0C 0016BE6C 7F A3 EB 78 */ mr r3, r29 +/* 8016EF10 0016BE70 7F C4 F3 78 */ mr r4, r30 +/* 8016EF14 0016BE74 7F E5 FB 78 */ mr r5, r31 +/* 8016EF18 0016BE78 48 08 77 B5 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 8016EF1C 0016BE7C 48 00 01 10 */ b lbl_8016F02C +lbl_8016EF20: +/* 8016EF20 0016BE80 A0 DD 00 08 */ lhz r6, 8(r29) +/* 8016EF24 0016BE84 7F C3 F3 78 */ mr r3, r30 +/* 8016EF28 0016BE88 38 81 00 18 */ addi r4, r1, 0x18 +/* 8016EF2C 0016BE8C 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8016EF30 0016BE90 B0 C1 00 14 */ sth r6, 0x14(r1) +/* 8016EF34 0016BE94 A0 1D 06 98 */ lhz r0, 0x698(r29) +/* 8016EF38 0016BE98 B0 C1 00 10 */ sth r6, 0x10(r1) +/* 8016EF3C 0016BE9C B0 01 00 18 */ sth r0, 0x18(r1) +/* 8016EF40 0016BEA0 48 0C B2 41 */ bl GetTeamAiRole__10CTeamAiMgrCFRC13CStateManager9TUniqueId9TUniqueId +/* 8016EF44 0016BEA4 28 03 00 00 */ cmplwi r3, 0 +/* 8016EF48 0016BEA8 41 82 00 20 */ beq lbl_8016EF68 +/* 8016EF4C 0016BEAC C0 03 00 1C */ lfs f0, 0x1c(r3) +/* 8016EF50 0016BEB0 D0 1D 07 A4 */ stfs f0, 0x7a4(r29) +/* 8016EF54 0016BEB4 C0 03 00 20 */ lfs f0, 0x20(r3) +/* 8016EF58 0016BEB8 D0 1D 07 A8 */ stfs f0, 0x7a8(r29) +/* 8016EF5C 0016BEBC C0 03 00 24 */ lfs f0, 0x24(r3) +/* 8016EF60 0016BEC0 D0 1D 07 AC */ stfs f0, 0x7ac(r29) +/* 8016EF64 0016BEC4 48 00 00 B8 */ b lbl_8016F01C +lbl_8016EF68: +/* 8016EF68 0016BEC8 7F A4 EB 78 */ mr r4, r29 +/* 8016EF6C 0016BECC 7F C5 F3 78 */ mr r5, r30 +/* 8016EF70 0016BED0 38 61 00 28 */ addi r3, r1, 0x28 +/* 8016EF74 0016BED4 4B FF F0 49 */ bl sub_8016dfbc +/* 8016EF78 0016BED8 C0 41 00 28 */ lfs f2, 0x28(r1) +/* 8016EF7C 0016BEDC 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8016EF80 0016BEE0 C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 8016EF84 0016BEE4 38 E3 66 A0 */ addi r7, r3, skZero3f@l +/* 8016EF88 0016BEE8 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 8016EF8C 0016BEEC 39 00 FF FF */ li r8, -1 +/* 8016EF90 0016BEF0 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 8016EF94 0016BEF4 38 00 00 00 */ li r0, 0 +/* 8016EF98 0016BEF8 C0 47 00 00 */ lfs f2, 0(r7) +/* 8016EF9C 0016BEFC 7F A4 EB 78 */ mr r4, r29 +/* 8016EFA0 0016BF00 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 8016EFA4 0016BF04 7F C5 F3 78 */ mr r5, r30 +/* 8016EFA8 0016BF08 C0 27 00 04 */ lfs f1, 4(r7) +/* 8016EFAC 0016BF0C 38 61 00 1C */ addi r3, r1, 0x1c +/* 8016EFB0 0016BF10 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 8016EFB4 0016BF14 38 C1 00 40 */ addi r6, r1, 0x40 +/* 8016EFB8 0016BF18 C0 07 00 08 */ lfs f0, 8(r7) +/* 8016EFBC 0016BF1C 38 E1 00 34 */ addi r7, r1, 0x34 +/* 8016EFC0 0016BF20 A1 3D 00 08 */ lhz r9, 8(r29) +/* 8016EFC4 0016BF24 B1 21 00 40 */ sth r9, 0x40(r1) +/* 8016EFC8 0016BF28 91 01 00 44 */ stw r8, 0x44(r1) +/* 8016EFCC 0016BF2C 91 01 00 48 */ stw r8, 0x48(r1) +/* 8016EFD0 0016BF30 91 01 00 4C */ stw r8, 0x4c(r1) +/* 8016EFD4 0016BF34 91 01 00 50 */ stw r8, 0x50(r1) +/* 8016EFD8 0016BF38 91 01 00 54 */ stw r8, 0x54(r1) +/* 8016EFDC 0016BF3C 90 01 00 58 */ stw r0, 0x58(r1) +/* 8016EFE0 0016BF40 D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 8016EFE4 0016BF44 D0 21 00 60 */ stfs f1, 0x60(r1) +/* 8016EFE8 0016BF48 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 8016EFEC 0016BF4C 81 9D 00 00 */ lwz r12, 0(r29) +/* 8016EFF0 0016BF50 B1 21 00 08 */ sth r9, 8(r1) +/* 8016EFF4 0016BF54 81 8C 00 A0 */ lwz r12, 0xa0(r12) +/* 8016EFF8 0016BF58 B1 21 00 0C */ sth r9, 0xc(r1) +/* 8016EFFC 0016BF5C 7D 89 03 A6 */ mtctr r12 +/* 8016F000 0016BF60 4E 80 04 21 */ bctrl +/* 8016F004 0016BF64 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 8016F008 0016BF68 D0 1D 07 A4 */ stfs f0, 0x7a4(r29) +/* 8016F00C 0016BF6C C0 01 00 20 */ lfs f0, 0x20(r1) +/* 8016F010 0016BF70 D0 1D 07 A8 */ stfs f0, 0x7a8(r29) +/* 8016F014 0016BF74 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 8016F018 0016BF78 D0 1D 07 AC */ stfs f0, 0x7ac(r29) +lbl_8016F01C: +/* 8016F01C 0016BF7C 7F A3 EB 78 */ mr r3, r29 +/* 8016F020 0016BF80 7F C4 F3 78 */ mr r4, r30 +/* 8016F024 0016BF84 38 BD 07 A4 */ addi r5, r29, 0x7a4 +/* 8016F028 0016BF88 4B FF E5 55 */ bl sub_8016d57c +lbl_8016F02C: +/* 8016F02C 0016BF8C C0 22 A0 F0 */ lfs f1, lbl_805ABE10@sda21(r2) +/* 8016F030 0016BF90 7F A3 EB 78 */ mr r3, r29 +/* 8016F034 0016BF94 7F C4 F3 78 */ mr r4, r30 +/* 8016F038 0016BF98 4B FF E8 3D */ bl sub_8016d874 +/* 8016F03C 0016BF9C 48 00 00 10 */ b lbl_8016F04C +lbl_8016F040: +/* 8016F040 0016BFA0 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8016F044 0016BFA4 38 00 00 00 */ li r0, 0 +/* 8016F048 0016BFA8 90 03 00 34 */ stw r0, 0x34(r3) +lbl_8016F04C: +/* 8016F04C 0016BFAC E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 +/* 8016F050 0016BFB0 80 01 00 94 */ lwz r0, 0x94(r1) +/* 8016F054 0016BFB4 CB E1 00 80 */ lfd f31, 0x80(r1) +/* 8016F058 0016BFB8 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 8016F05C 0016BFBC 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 8016F060 0016BFC0 83 A1 00 74 */ lwz r29, 0x74(r1) +/* 8016F064 0016BFC4 7C 08 03 A6 */ mtlr r0 +/* 8016F068 0016BFC8 38 21 00 90 */ addi r1, r1, 0x90 +/* 8016F06C 0016BFCC 4E 80 00 20 */ blr + +.global SelectTarget__8CMetroidFR13CStateManager9EStateMsgf +SelectTarget__8CMetroidFR13CStateManager9EStateMsgf: +/* 8016F070 0016BFD0 94 21 F7 10 */ stwu r1, -0x8f0(r1) +/* 8016F074 0016BFD4 7C 08 02 A6 */ mflr r0 +/* 8016F078 0016BFD8 90 01 08 F4 */ stw r0, 0x8f4(r1) +/* 8016F07C 0016BFDC DB E1 08 E0 */ stfd f31, 0x8e0(r1) +/* 8016F080 0016BFE0 F3 E1 08 E8 */ psq_st f31, -1816(r1), 0, qr0 +/* 8016F084 0016BFE4 BF 41 08 C8 */ stmw r26, 0x8c8(r1) +/* 8016F088 0016BFE8 2C 05 00 01 */ cmpwi r5, 1 +/* 8016F08C 0016BFEC 7C 7E 1B 78 */ mr r30, r3 +/* 8016F090 0016BFF0 7C 9F 23 78 */ mr r31, r4 +/* 8016F094 0016BFF4 41 82 02 C8 */ beq lbl_8016F35C +/* 8016F098 0016BFF8 40 80 04 58 */ bge lbl_8016F4F0 +/* 8016F09C 0016BFFC 2C 05 00 00 */ cmpwi r5, 0 +/* 8016F0A0 0016C000 40 80 00 0C */ bge lbl_8016F0AC +/* 8016F0A4 0016C004 48 00 04 4C */ b lbl_8016F4F0 +/* 8016F0A8 0016C008 48 00 04 48 */ b lbl_8016F4F0 +lbl_8016F0AC: +/* 8016F0AC 0016C00C 88 1E 09 BF */ lbz r0, 0x9bf(r30) +/* 8016F0B0 0016C010 38 60 00 01 */ li r3, 1 +/* 8016F0B4 0016C014 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 8016F0B8 0016C018 41 82 00 08 */ beq lbl_8016F0C0 +/* 8016F0BC 0016C01C 38 60 00 03 */ li r3, 3 +lbl_8016F0C0: +/* 8016F0C0 0016C020 90 7E 05 68 */ stw r3, 0x568(r30) +/* 8016F0C4 0016C024 A0 7E 07 B0 */ lhz r3, 0x7b0(r30) +/* 8016F0C8 0016C028 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016F0CC 0016C02C 7C 03 00 40 */ cmplw r3, r0 +/* 8016F0D0 0016C030 40 82 02 40 */ bne lbl_8016F310 +/* 8016F0D4 0016C034 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8016F0D8 0016C038 C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 8016F0DC 0016C03C C0 23 00 50 */ lfs f1, 0x50(r3) +/* 8016F0E0 0016C040 C0 63 00 40 */ lfs f3, 0x40(r3) +/* 8016F0E4 0016C044 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8016F0E8 0016C048 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8016F0EC 0016C04C C0 43 00 60 */ lfs f2, 0x60(r3) +/* 8016F0F0 0016C050 EC 63 00 28 */ fsubs f3, f3, f0 +/* 8016F0F4 0016C054 C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 8016F0F8 0016C058 EC 04 01 32 */ fmuls f0, f4, f4 +/* 8016F0FC 0016C05C A0 03 00 08 */ lhz r0, 8(r3) +/* 8016F100 0016C060 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8016F104 0016C064 B0 1E 07 B0 */ sth r0, 0x7b0(r30) +/* 8016F108 0016C068 EC 03 00 FA */ fmadds f0, f3, f3, f0 +/* 8016F10C 0016C06C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8016F110 0016C070 EC 21 00 7A */ fmadds f1, f1, f1, f0 +/* 8016F114 0016C074 88 03 03 00 */ lbz r0, 0x300(r3) +/* 8016F118 0016C078 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 8016F11C 0016C07C FF E0 08 90 */ fmr f31, f1 +/* 8016F120 0016C080 40 82 01 F0 */ bne lbl_8016F310 +/* 8016F124 0016C084 48 1A 63 DD */ bl SqrtF__5CMathFf +/* 8016F128 0016C088 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 8016F12C 0016C08C 38 61 00 30 */ addi r3, r1, 0x30 +/* 8016F130 0016C090 38 81 00 2C */ addi r4, r1, 0x2c +/* 8016F134 0016C094 C0 1E 03 BC */ lfs f0, 0x3bc(r30) +/* 8016F138 0016C098 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 8016F13C 0016C09C 4B EE 05 F5 */ bl "Max__5CMathFRCfRCf" +/* 8016F140 0016C0A0 C0 E3 00 00 */ lfs f7, 0(r3) +/* 8016F144 0016C0A4 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 8016F148 0016C0A8 C0 DE 00 60 */ lfs f6, 0x60(r30) +/* 8016F14C 0016C0AC 38 81 00 48 */ addi r4, r1, 0x48 +/* 8016F150 0016C0B0 C0 BE 00 50 */ lfs f5, 0x50(r30) +/* 8016F154 0016C0B4 38 A1 00 3C */ addi r5, r1, 0x3c +/* 8016F158 0016C0B8 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 8016F15C 0016C0BC EC 06 38 2A */ fadds f0, f6, f7 +/* 8016F160 0016C0C0 EC 65 38 2A */ fadds f3, f5, f7 +/* 8016F164 0016C0C4 EC 81 38 2A */ fadds f4, f1, f7 +/* 8016F168 0016C0C8 EC 41 38 28 */ fsubs f2, f1, f7 +/* 8016F16C 0016C0CC D0 01 00 44 */ stfs f0, 0x44(r1) +/* 8016F170 0016C0D0 EC 25 38 28 */ fsubs f1, f5, f7 +/* 8016F174 0016C0D4 EC 06 38 28 */ fsubs f0, f6, f7 +/* 8016F178 0016C0D8 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 8016F17C 0016C0DC D0 61 00 40 */ stfs f3, 0x40(r1) +/* 8016F180 0016C0E0 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 8016F184 0016C0E4 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 8016F188 0016C0E8 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8016F18C 0016C0EC 48 1C 93 7D */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8016F190 0016C0F0 80 AD 8D C8 */ lwz r5, lbl_805A7988@sda21(r13) +/* 8016F194 0016C0F4 38 60 00 00 */ li r3, 0 +/* 8016F198 0016C0F8 38 80 00 01 */ li r4, 1 +/* 8016F19C 0016C0FC 48 21 AD 59 */ bl __shl2i +/* 8016F1A0 0016C100 38 00 00 00 */ li r0, 0 +/* 8016F1A4 0016C104 39 00 00 01 */ li r8, 1 +/* 8016F1A8 0016C108 90 81 00 94 */ stw r4, 0x94(r1) +/* 8016F1AC 0016C10C 38 81 00 C0 */ addi r4, r1, 0xc0 +/* 8016F1B0 0016C110 38 A1 00 A8 */ addi r5, r1, 0xa8 +/* 8016F1B4 0016C114 38 C1 00 90 */ addi r6, r1, 0x90 +/* 8016F1B8 0016C118 90 61 00 90 */ stw r3, 0x90(r1) +/* 8016F1BC 0016C11C 7F E3 FB 78 */ mr r3, r31 +/* 8016F1C0 0016C120 38 E0 00 00 */ li r7, 0 +/* 8016F1C4 0016C124 91 01 00 88 */ stw r8, 0x88(r1) +/* 8016F1C8 0016C128 90 01 00 9C */ stw r0, 0x9c(r1) +/* 8016F1CC 0016C12C 90 01 00 98 */ stw r0, 0x98(r1) +/* 8016F1D0 0016C130 91 01 00 A0 */ stw r8, 0xa0(r1) +/* 8016F1D4 0016C134 90 01 00 C0 */ stw r0, 0xc0(r1) +/* 8016F1D8 0016C138 4B ED D5 49 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 8016F1DC 0016C13C 80 01 00 C0 */ lwz r0, 0xc0(r1) +/* 8016F1E0 0016C140 2C 00 00 00 */ cmpwi r0, 0 +/* 8016F1E4 0016C144 41 82 00 D8 */ beq lbl_8016F2BC +/* 8016F1E8 0016C148 3B A1 00 C4 */ addi r29, r1, 0xc4 +/* 8016F1EC 0016C14C 3B 80 00 00 */ li r28, 0 +/* 8016F1F0 0016C150 7F BB EB 78 */ mr r27, r29 +/* 8016F1F4 0016C154 48 00 00 8C */ b lbl_8016F280 +lbl_8016F1F8: +/* 8016F1F8 0016C158 A0 1B 00 00 */ lhz r0, 0(r27) +/* 8016F1FC 0016C15C 7F E3 FB 78 */ mr r3, r31 +/* 8016F200 0016C160 38 81 00 20 */ addi r4, r1, 0x20 +/* 8016F204 0016C164 B0 01 00 20 */ sth r0, 0x20(r1) +/* 8016F208 0016C168 4B ED D3 6D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8016F20C 0016C16C 7C 64 1B 78 */ mr r4, r3 +/* 8016F210 0016C170 38 61 00 28 */ addi r3, r1, 0x28 +/* 8016F214 0016C174 4B F3 61 BD */ bl sub_800a53d0 +/* 8016F218 0016C178 4B F3 61 8D */ bl "CastTo<12CSpacePirate>__10CPatternedFP7CEntity" +/* 8016F21C 0016C17C 7C 7A 1B 79 */ or. r26, r3, r3 +/* 8016F220 0016C180 41 82 00 5C */ beq lbl_8016F27C +/* 8016F224 0016C184 7F C3 F3 78 */ mr r3, r30 +/* 8016F228 0016C188 7F 44 D3 78 */ mr r4, r26 +/* 8016F22C 0016C18C 7F E5 FB 78 */ mr r5, r31 +/* 8016F230 0016C190 4B FF EF 49 */ bl sub_8016e178 +/* 8016F234 0016C194 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016F238 0016C198 41 82 00 44 */ beq lbl_8016F27C +/* 8016F23C 0016C19C C0 3A 00 50 */ lfs f1, 0x50(r26) +/* 8016F240 0016C1A0 C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 8016F244 0016C1A4 C0 7A 00 40 */ lfs f3, 0x40(r26) +/* 8016F248 0016C1A8 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8016F24C 0016C1AC C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8016F250 0016C1B0 C0 5A 00 60 */ lfs f2, 0x60(r26) +/* 8016F254 0016C1B4 EC 63 00 28 */ fsubs f3, f3, f0 +/* 8016F258 0016C1B8 C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 8016F25C 0016C1BC EC 04 01 32 */ fmuls f0, f4, f4 +/* 8016F260 0016C1C0 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8016F264 0016C1C4 EC 03 00 FA */ fmadds f0, f3, f3, f0 +/* 8016F268 0016C1C8 EC 01 00 7A */ fmadds f0, f1, f1, f0 +/* 8016F26C 0016C1CC FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 8016F270 0016C1D0 40 80 00 0C */ bge lbl_8016F27C +/* 8016F274 0016C1D4 7F 5C D3 78 */ mr r28, r26 +/* 8016F278 0016C1D8 FF E0 00 90 */ fmr f31, f0 +lbl_8016F27C: +/* 8016F27C 0016C1DC 3B 7B 00 02 */ addi r27, r27, 2 +lbl_8016F280: +/* 8016F280 0016C1E0 80 01 00 C0 */ lwz r0, 0xc0(r1) +/* 8016F284 0016C1E4 54 00 08 3C */ slwi r0, r0, 1 +/* 8016F288 0016C1E8 7C 1D 02 14 */ add r0, r29, r0 +/* 8016F28C 0016C1EC 7C 1B 00 40 */ cmplw r27, r0 +/* 8016F290 0016C1F0 40 82 FF 68 */ bne lbl_8016F1F8 +/* 8016F294 0016C1F4 28 1C 00 00 */ cmplwi r28, 0 +/* 8016F298 0016C1F8 41 82 00 24 */ beq lbl_8016F2BC +/* 8016F29C 0016C1FC A0 1C 00 08 */ lhz r0, 8(r28) +/* 8016F2A0 0016C200 7F 83 E3 78 */ mr r3, r28 +/* 8016F2A4 0016C204 38 81 00 1C */ addi r4, r1, 0x1c +/* 8016F2A8 0016C208 B0 1E 07 B0 */ sth r0, 0x7b0(r30) +/* 8016F2AC 0016C20C A0 1E 00 08 */ lhz r0, 8(r30) +/* 8016F2B0 0016C210 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8016F2B4 0016C214 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8016F2B8 0016C218 4B FB A5 89 */ bl SetAttackTarget__12CSpacePirateF9TUniqueId +lbl_8016F2BC: +/* 8016F2BC 0016C21C 80 A1 00 C0 */ lwz r5, 0xc0(r1) +/* 8016F2C0 0016C220 38 60 00 00 */ li r3, 0 +/* 8016F2C4 0016C224 2C 05 00 00 */ cmpwi r5, 0 +/* 8016F2C8 0016C228 40 81 00 40 */ ble lbl_8016F308 +/* 8016F2CC 0016C22C 2C 05 00 08 */ cmpwi r5, 8 +/* 8016F2D0 0016C230 38 85 FF F8 */ addi r4, r5, -8 +/* 8016F2D4 0016C234 40 81 00 20 */ ble lbl_8016F2F4 +/* 8016F2D8 0016C238 38 04 00 07 */ addi r0, r4, 7 +/* 8016F2DC 0016C23C 54 00 E8 FE */ srwi r0, r0, 3 +/* 8016F2E0 0016C240 7C 09 03 A6 */ mtctr r0 +/* 8016F2E4 0016C244 2C 04 00 00 */ cmpwi r4, 0 +/* 8016F2E8 0016C248 40 81 00 0C */ ble lbl_8016F2F4 +lbl_8016F2EC: +/* 8016F2EC 0016C24C 38 63 00 08 */ addi r3, r3, 8 +/* 8016F2F0 0016C250 42 00 FF FC */ bdnz lbl_8016F2EC +lbl_8016F2F4: +/* 8016F2F4 0016C254 7C 03 28 50 */ subf r0, r3, r5 +/* 8016F2F8 0016C258 7C 09 03 A6 */ mtctr r0 +/* 8016F2FC 0016C25C 7C 03 28 00 */ cmpw r3, r5 +/* 8016F300 0016C260 40 80 00 08 */ bge lbl_8016F308 +lbl_8016F304: +/* 8016F304 0016C264 42 00 00 00 */ bdnz lbl_8016F304 +lbl_8016F308: +/* 8016F308 0016C268 38 00 00 00 */ li r0, 0 +/* 8016F30C 0016C26C 90 01 00 C0 */ stw r0, 0xc0(r1) +lbl_8016F310: +/* 8016F310 0016C270 A0 1E 07 B0 */ lhz r0, 0x7b0(r30) +/* 8016F314 0016C274 7F E3 FB 78 */ mr r3, r31 +/* 8016F318 0016C278 38 81 00 14 */ addi r4, r1, 0x14 +/* 8016F31C 0016C27C B0 01 00 14 */ sth r0, 0x14(r1) +/* 8016F320 0016C280 4B ED D2 55 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8016F324 0016C284 7C 64 1B 78 */ mr r4, r3 +/* 8016F328 0016C288 38 61 00 24 */ addi r3, r1, 0x24 +/* 8016F32C 0016C28C 4B F3 60 A5 */ bl sub_800a53d0 +/* 8016F330 0016C290 4B F3 60 75 */ bl "CastTo<12CSpacePirate>__10CPatternedFP7CEntity" +/* 8016F334 0016C294 7C 64 1B 79 */ or. r4, r3, r3 +/* 8016F338 0016C298 41 82 01 B8 */ beq lbl_8016F4F0 +/* 8016F33C 0016C29C A0 1E 00 08 */ lhz r0, 8(r30) +/* 8016F340 0016C2A0 7F E3 FB 78 */ mr r3, r31 +/* 8016F344 0016C2A4 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8016F348 0016C2A8 38 C0 00 15 */ li r6, 0x15 +/* 8016F34C 0016C2AC B0 01 00 0C */ sth r0, 0xc(r1) +/* 8016F350 0016C2B0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8016F354 0016C2B4 4B ED 4B 7D */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +/* 8016F358 0016C2B8 48 00 01 98 */ b lbl_8016F4F0 +lbl_8016F35C: +/* 8016F35C 0016C2BC 80 1E 05 68 */ lwz r0, 0x568(r30) +/* 8016F360 0016C2C0 2C 00 00 02 */ cmpwi r0, 2 +/* 8016F364 0016C2C4 41 82 01 00 */ beq lbl_8016F464 +/* 8016F368 0016C2C8 40 80 01 88 */ bge lbl_8016F4F0 +/* 8016F36C 0016C2CC 2C 00 00 01 */ cmpwi r0, 1 +/* 8016F370 0016C2D0 40 80 00 08 */ bge lbl_8016F378 +/* 8016F374 0016C2D4 48 00 01 7C */ b lbl_8016F4F0 +lbl_8016F378: +/* 8016F378 0016C2D8 81 5E 04 50 */ lwz r10, 0x450(r30) +/* 8016F37C 0016C2DC 80 0A 02 B8 */ lwz r0, 0x2b8(r10) +/* 8016F380 0016C2E0 2C 00 00 0C */ cmpwi r0, 0xc +/* 8016F384 0016C2E4 40 82 00 10 */ bne lbl_8016F394 +/* 8016F388 0016C2E8 38 00 00 02 */ li r0, 2 +/* 8016F38C 0016C2EC 90 1E 05 68 */ stw r0, 0x568(r30) +/* 8016F390 0016C2F0 48 00 01 60 */ b lbl_8016F4F0 +lbl_8016F394: +/* 8016F394 0016C2F4 3C C0 80 3E */ lis r6, lbl_803DAA68@ha +/* 8016F398 0016C2F8 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8016F39C 0016C2FC 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 8016F3A0 0016C300 80 81 00 70 */ lwz r4, 0x70(r1) +/* 8016F3A4 0016C304 38 60 00 00 */ li r3, 0 +/* 8016F3A8 0016C308 39 26 AA 68 */ addi r9, r6, lbl_803DAA68@l +/* 8016F3AC 0016C30C 50 64 F8 00 */ rlwimi r4, r3, 0x1f, 0, 0 +/* 8016F3B0 0016C310 C0 45 00 00 */ lfs f2, 0(r5) +/* 8016F3B4 0016C314 C0 25 00 04 */ lfs f1, 4(r5) +/* 8016F3B8 0016C318 3C E0 80 3E */ lis r7, lbl_803DA9F0@ha +/* 8016F3BC 0016C31C C0 05 00 08 */ lfs f0, 8(r5) +/* 8016F3C0 0016C320 7C 80 23 78 */ mr r0, r4 +/* 8016F3C4 0016C324 39 00 00 0E */ li r8, 0xe +/* 8016F3C8 0016C328 38 C0 00 03 */ li r6, 3 +/* 8016F3CC 0016C32C 38 A0 FF FF */ li r5, -1 +/* 8016F3D0 0016C330 3B EA 00 04 */ addi r31, r10, 4 +/* 8016F3D4 0016C334 91 21 00 54 */ stw r9, 0x54(r1) +/* 8016F3D8 0016C338 38 E7 A9 F0 */ addi r7, r7, lbl_803DA9F0@l +/* 8016F3DC 0016C33C 50 60 F0 42 */ rlwimi r0, r3, 0x1e, 1, 1 +/* 8016F3E0 0016C340 7F E3 FB 78 */ mr r3, r31 +/* 8016F3E4 0016C344 90 81 00 70 */ stw r4, 0x70(r1) +/* 8016F3E8 0016C348 38 80 00 0E */ li r4, 0xe +/* 8016F3EC 0016C34C 91 01 00 58 */ stw r8, 0x58(r1) +/* 8016F3F0 0016C350 90 E1 00 54 */ stw r7, 0x54(r1) +/* 8016F3F4 0016C354 90 C1 00 5C */ stw r6, 0x5c(r1) +/* 8016F3F8 0016C358 D0 41 00 60 */ stfs f2, 0x60(r1) +/* 8016F3FC 0016C35C D0 21 00 64 */ stfs f1, 0x64(r1) +/* 8016F400 0016C360 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 8016F404 0016C364 90 A1 00 6C */ stw r5, 0x6c(r1) +/* 8016F408 0016C368 90 01 00 70 */ stw r0, 0x70(r1) +/* 8016F40C 0016C36C 4B FC 20 2D */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8016F410 0016C370 80 01 00 58 */ lwz r0, 0x58(r1) +/* 8016F414 0016C374 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 8016F418 0016C378 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l +/* 8016F41C 0016C37C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8016F420 0016C380 90 1F 01 90 */ stw r0, 0x190(r31) +/* 8016F424 0016C384 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8016F428 0016C388 80 A1 00 5C */ lwz r5, 0x5c(r1) +/* 8016F42C 0016C38C 80 61 00 60 */ lwz r3, 0x60(r1) +/* 8016F430 0016C390 90 BF 01 94 */ stw r5, 0x194(r31) +/* 8016F434 0016C394 80 A1 00 64 */ lwz r5, 0x64(r1) +/* 8016F438 0016C398 90 7F 01 98 */ stw r3, 0x198(r31) +/* 8016F43C 0016C39C 80 61 00 68 */ lwz r3, 0x68(r1) +/* 8016F440 0016C3A0 90 BF 01 9C */ stw r5, 0x19c(r31) +/* 8016F444 0016C3A4 80 A1 00 6C */ lwz r5, 0x6c(r1) +/* 8016F448 0016C3A8 90 7F 01 A0 */ stw r3, 0x1a0(r31) +/* 8016F44C 0016C3AC 80 61 00 70 */ lwz r3, 0x70(r1) +/* 8016F450 0016C3B0 90 BF 01 A4 */ stw r5, 0x1a4(r31) +/* 8016F454 0016C3B4 90 81 00 54 */ stw r4, 0x54(r1) +/* 8016F458 0016C3B8 90 7F 01 A8 */ stw r3, 0x1a8(r31) +/* 8016F45C 0016C3BC 90 01 00 54 */ stw r0, 0x54(r1) +/* 8016F460 0016C3C0 48 00 00 90 */ b lbl_8016F4F0 +lbl_8016F464: +/* 8016F464 0016C3C4 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8016F468 0016C3C8 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 8016F46C 0016C3CC 2C 00 00 0C */ cmpwi r0, 0xc +/* 8016F470 0016C3D0 41 82 00 10 */ beq lbl_8016F480 +/* 8016F474 0016C3D4 38 00 00 03 */ li r0, 3 +/* 8016F478 0016C3D8 90 1E 05 68 */ stw r0, 0x568(r30) +/* 8016F47C 0016C3DC 48 00 00 74 */ b lbl_8016F4F0 +lbl_8016F480: +/* 8016F480 0016C3E0 A0 7E 07 B0 */ lhz r3, 0x7b0(r30) +/* 8016F484 0016C3E4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016F488 0016C3E8 7C 03 00 40 */ cmplw r3, r0 +/* 8016F48C 0016C3EC 41 82 00 64 */ beq lbl_8016F4F0 +/* 8016F490 0016C3F0 A0 1E 07 B0 */ lhz r0, 0x7b0(r30) +/* 8016F494 0016C3F4 7F E3 FB 78 */ mr r3, r31 +/* 8016F498 0016C3F8 38 81 00 08 */ addi r4, r1, 8 +/* 8016F49C 0016C3FC B0 01 00 08 */ sth r0, 8(r1) +/* 8016F4A0 0016C400 4B ED D1 05 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8016F4A4 0016C404 7C 64 1B 78 */ mr r4, r3 +/* 8016F4A8 0016C408 38 61 00 34 */ addi r3, r1, 0x34 +/* 8016F4AC 0016C40C 4B F4 07 E5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8016F4B0 0016C410 80 63 00 04 */ lwz r3, 4(r3) +/* 8016F4B4 0016C414 28 03 00 00 */ cmplwi r3, 0 +/* 8016F4B8 0016C418 41 82 00 38 */ beq lbl_8016F4F0 +/* 8016F4BC 0016C41C C0 23 00 40 */ lfs f1, 0x40(r3) +/* 8016F4C0 0016C420 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8016F4C4 0016C424 C0 83 00 50 */ lfs f4, 0x50(r3) +/* 8016F4C8 0016C428 C0 7E 00 50 */ lfs f3, 0x50(r30) +/* 8016F4CC 0016C42C EC 01 00 28 */ fsubs f0, f1, f0 +/* 8016F4D0 0016C430 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 8016F4D4 0016C434 C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 8016F4D8 0016C438 EC 64 18 28 */ fsubs f3, f4, f3 +/* 8016F4DC 0016C43C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8016F4E0 0016C440 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8016F4E4 0016C444 D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 8016F4E8 0016C448 D0 63 00 20 */ stfs f3, 0x20(r3) +/* 8016F4EC 0016C44C D0 23 00 24 */ stfs f1, 0x24(r3) +lbl_8016F4F0: +/* 8016F4F0 0016C450 E3 E1 08 E8 */ psq_l f31, -1816(r1), 0, qr0 +/* 8016F4F4 0016C454 CB E1 08 E0 */ lfd f31, 0x8e0(r1) +/* 8016F4F8 0016C458 BB 41 08 C8 */ lmw r26, 0x8c8(r1) +/* 8016F4FC 0016C45C 80 01 08 F4 */ lwz r0, 0x8f4(r1) +/* 8016F500 0016C460 7C 08 03 A6 */ mtlr r0 +/* 8016F504 0016C464 38 21 08 F0 */ addi r1, r1, 0x8f0 +/* 8016F508 0016C468 4E 80 00 20 */ blr + +.global Generate__8CMetroidFR13CStateManager9EStateMsgf +Generate__8CMetroidFR13CStateManager9EStateMsgf: +/* 8016F50C 0016C46C 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 8016F510 0016C470 7C 08 02 A6 */ mflr r0 +/* 8016F514 0016C474 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 8016F518 0016C478 DB E1 00 90 */ stfd f31, 0x90(r1) +/* 8016F51C 0016C47C F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 +/* 8016F520 0016C480 DB C1 00 80 */ stfd f30, 0x80(r1) +/* 8016F524 0016C484 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 +/* 8016F528 0016C488 DB A1 00 70 */ stfd f29, 0x70(r1) +/* 8016F52C 0016C48C F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0 +/* 8016F530 0016C490 DB 81 00 60 */ stfd f28, 0x60(r1) +/* 8016F534 0016C494 F3 81 00 68 */ psq_st f28, 104(r1), 0, qr0 +/* 8016F538 0016C498 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8016F53C 0016C49C 93 C1 00 58 */ stw r30, 0x58(r1) +/* 8016F540 0016C4A0 93 A1 00 54 */ stw r29, 0x54(r1) +/* 8016F544 0016C4A4 FF C0 08 90 */ fmr f30, f1 +/* 8016F548 0016C4A8 2C 05 00 01 */ cmpwi r5, 1 +/* 8016F54C 0016C4AC 7C 7F 1B 78 */ mr r31, r3 +/* 8016F550 0016C4B0 7C 9D 23 78 */ mr r29, r4 +/* 8016F554 0016C4B4 41 82 00 9C */ beq lbl_8016F5F0 +/* 8016F558 0016C4B8 40 80 00 10 */ bge lbl_8016F568 +/* 8016F55C 0016C4BC 2C 05 00 00 */ cmpwi r5, 0 +/* 8016F560 0016C4C0 40 80 00 14 */ bge lbl_8016F574 +/* 8016F564 0016C4C4 48 00 04 94 */ b lbl_8016F9F8 +lbl_8016F568: +/* 8016F568 0016C4C8 2C 05 00 03 */ cmpwi r5, 3 +/* 8016F56C 0016C4CC 40 80 04 8C */ bge lbl_8016F9F8 +/* 8016F570 0016C4D0 48 00 04 2C */ b lbl_8016F99C +lbl_8016F574: +/* 8016F574 0016C4D4 4B FF C5 69 */ bl sub_8016badc +/* 8016F578 0016C4D8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016F57C 0016C4DC 41 82 00 14 */ beq lbl_8016F590 +/* 8016F580 0016C4E0 7F E3 FB 78 */ mr r3, r31 +/* 8016F584 0016C4E4 7F A4 EB 78 */ mr r4, r29 +/* 8016F588 0016C4E8 4B FF BE 7D */ bl sub_8016b404 +/* 8016F58C 0016C4EC 48 00 00 30 */ b lbl_8016F5BC +lbl_8016F590: +/* 8016F590 0016C4F0 C0 3F 07 F8 */ lfs f1, 0x7f8(r31) +/* 8016F594 0016C4F4 C0 1F 06 50 */ lfs f0, 0x650(r31) +/* 8016F598 0016C4F8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8016F59C 0016C4FC 4C 41 13 82 */ cror 2, 1, 2 +/* 8016F5A0 0016C500 40 82 00 1C */ bne lbl_8016F5BC +/* 8016F5A4 0016C504 7F E3 FB 78 */ mr r3, r31 +/* 8016F5A8 0016C508 7F A4 EB 78 */ mr r4, r29 +/* 8016F5AC 0016C50C 81 9F 00 00 */ lwz r12, 0(r31) +/* 8016F5B0 0016C510 81 8C 02 98 */ lwz r12, 0x298(r12) +/* 8016F5B4 0016C514 7D 89 03 A6 */ mtctr r12 +/* 8016F5B8 0016C518 4E 80 04 21 */ bctrl +lbl_8016F5BC: +/* 8016F5BC 0016C51C 38 60 00 01 */ li r3, 1 +/* 8016F5C0 0016C520 90 7F 05 68 */ stw r3, 0x568(r31) +/* 8016F5C4 0016C524 80 9F 00 64 */ lwz r4, 0x64(r31) +/* 8016F5C8 0016C528 C0 24 00 04 */ lfs f1, 4(r4) +/* 8016F5CC 0016C52C C0 44 00 08 */ lfs f2, 8(r4) +/* 8016F5D0 0016C530 C0 04 00 00 */ lfs f0, 0(r4) +/* 8016F5D4 0016C534 D0 1F 07 DC */ stfs f0, 0x7dc(r31) +/* 8016F5D8 0016C538 D0 3F 07 E0 */ stfs f1, 0x7e0(r31) +/* 8016F5DC 0016C53C D0 5F 07 E4 */ stfs f2, 0x7e4(r31) +/* 8016F5E0 0016C540 88 1F 09 BF */ lbz r0, 0x9bf(r31) +/* 8016F5E4 0016C544 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8016F5E8 0016C548 98 1F 09 BF */ stb r0, 0x9bf(r31) +/* 8016F5EC 0016C54C 48 00 04 0C */ b lbl_8016F9F8 +lbl_8016F5F0: +/* 8016F5F0 0016C550 80 1F 05 68 */ lwz r0, 0x568(r31) +/* 8016F5F4 0016C554 2C 00 00 02 */ cmpwi r0, 2 +/* 8016F5F8 0016C558 41 82 02 10 */ beq lbl_8016F808 +/* 8016F5FC 0016C55C 40 80 03 FC */ bge lbl_8016F9F8 +/* 8016F600 0016C560 2C 00 00 01 */ cmpwi r0, 1 +/* 8016F604 0016C564 40 80 00 08 */ bge lbl_8016F60C +/* 8016F608 0016C568 48 00 03 F0 */ b lbl_8016F9F8 +lbl_8016F60C: +/* 8016F60C 0016C56C 80 BF 04 50 */ lwz r5, 0x450(r31) +/* 8016F610 0016C570 80 05 02 B8 */ lwz r0, 0x2b8(r5) +/* 8016F614 0016C574 2C 00 00 0C */ cmpwi r0, 0xc +/* 8016F618 0016C578 40 82 00 34 */ bne lbl_8016F64C +/* 8016F61C 0016C57C 7C A3 2B 78 */ mr r3, r5 +/* 8016F620 0016C580 4B FC B2 99 */ bl GetAnimTimeRemaining__15CBodyControllerCFv +/* 8016F624 0016C584 D0 3F 07 F4 */ stfs f1, 0x7f4(r31) +/* 8016F628 0016C588 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016F62C 0016C58C C0 3F 07 F4 */ lfs f1, 0x7f4(r31) +/* 8016F630 0016C590 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8016F634 0016C594 40 81 00 0C */ ble lbl_8016F640 +/* 8016F638 0016C598 38 00 00 02 */ li r0, 2 +/* 8016F63C 0016C59C 48 00 00 08 */ b lbl_8016F644 +lbl_8016F640: +/* 8016F640 0016C5A0 38 00 00 03 */ li r0, 3 +lbl_8016F644: +/* 8016F644 0016C5A4 90 1F 05 68 */ stw r0, 0x568(r31) +/* 8016F648 0016C5A8 48 00 03 B0 */ b lbl_8016F9F8 +lbl_8016F64C: +/* 8016F64C 0016C5AC 81 83 00 00 */ lwz r12, 0(r3) +/* 8016F650 0016C5B0 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) +/* 8016F654 0016C5B4 81 8C 01 8C */ lwz r12, 0x18c(r12) +/* 8016F658 0016C5B8 7D 89 03 A6 */ mtctr r12 +/* 8016F65C 0016C5BC 4E 80 04 21 */ bctrl +/* 8016F660 0016C5C0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016F664 0016C5C4 41 82 00 D4 */ beq lbl_8016F738 +/* 8016F668 0016C5C8 3C C0 80 3E */ lis r6, lbl_803DAA68@ha +/* 8016F66C 0016C5CC 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8016F670 0016C5D0 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 8016F674 0016C5D4 39 46 AA 68 */ addi r10, r6, lbl_803DAA68@l +/* 8016F678 0016C5D8 3D 00 80 3E */ lis r8, lbl_803DA9F0@ha +/* 8016F67C 0016C5DC 80 81 00 4C */ lwz r4, 0x4c(r1) +/* 8016F680 0016C5E0 38 A0 00 00 */ li r5, 0 +/* 8016F684 0016C5E4 C0 23 00 04 */ lfs f1, 4(r3) +/* 8016F688 0016C5E8 50 A4 F8 00 */ rlwimi r4, r5, 0x1f, 0, 0 +/* 8016F68C 0016C5EC C0 03 00 08 */ lfs f0, 8(r3) +/* 8016F690 0016C5F0 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8016F694 0016C5F4 7C 80 23 78 */ mr r0, r4 +/* 8016F698 0016C5F8 90 81 00 4C */ stw r4, 0x4c(r1) +/* 8016F69C 0016C5FC 39 20 00 0E */ li r9, 0xe +/* 8016F6A0 0016C600 38 E0 00 02 */ li r7, 2 +/* 8016F6A4 0016C604 38 C0 FF FF */ li r6, -1 +/* 8016F6A8 0016C608 50 A0 F0 42 */ rlwimi r0, r5, 0x1e, 1, 1 +/* 8016F6AC 0016C60C 3B E3 00 04 */ addi r31, r3, 4 +/* 8016F6B0 0016C610 91 41 00 30 */ stw r10, 0x30(r1) +/* 8016F6B4 0016C614 39 08 A9 F0 */ addi r8, r8, lbl_803DA9F0@l +/* 8016F6B8 0016C618 7F E3 FB 78 */ mr r3, r31 +/* 8016F6BC 0016C61C 38 80 00 0E */ li r4, 0xe +/* 8016F6C0 0016C620 91 21 00 34 */ stw r9, 0x34(r1) +/* 8016F6C4 0016C624 91 01 00 30 */ stw r8, 0x30(r1) +/* 8016F6C8 0016C628 90 E1 00 38 */ stw r7, 0x38(r1) +/* 8016F6CC 0016C62C D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 8016F6D0 0016C630 D0 21 00 40 */ stfs f1, 0x40(r1) +/* 8016F6D4 0016C634 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 8016F6D8 0016C638 90 C1 00 48 */ stw r6, 0x48(r1) +/* 8016F6DC 0016C63C 90 01 00 4C */ stw r0, 0x4c(r1) +/* 8016F6E0 0016C640 4B FC 1D 59 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8016F6E4 0016C644 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8016F6E8 0016C648 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 8016F6EC 0016C64C 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l +/* 8016F6F0 0016C650 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8016F6F4 0016C654 90 1F 01 90 */ stw r0, 0x190(r31) +/* 8016F6F8 0016C658 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8016F6FC 0016C65C 80 A1 00 38 */ lwz r5, 0x38(r1) +/* 8016F700 0016C660 80 61 00 3C */ lwz r3, 0x3c(r1) +/* 8016F704 0016C664 90 BF 01 94 */ stw r5, 0x194(r31) +/* 8016F708 0016C668 80 A1 00 40 */ lwz r5, 0x40(r1) +/* 8016F70C 0016C66C 90 7F 01 98 */ stw r3, 0x198(r31) +/* 8016F710 0016C670 80 61 00 44 */ lwz r3, 0x44(r1) +/* 8016F714 0016C674 90 BF 01 9C */ stw r5, 0x19c(r31) +/* 8016F718 0016C678 80 A1 00 48 */ lwz r5, 0x48(r1) +/* 8016F71C 0016C67C 90 7F 01 A0 */ stw r3, 0x1a0(r31) +/* 8016F720 0016C680 80 61 00 4C */ lwz r3, 0x4c(r1) +/* 8016F724 0016C684 90 BF 01 A4 */ stw r5, 0x1a4(r31) +/* 8016F728 0016C688 90 81 00 30 */ stw r4, 0x30(r1) +/* 8016F72C 0016C68C 90 7F 01 A8 */ stw r3, 0x1a8(r31) +/* 8016F730 0016C690 90 01 00 30 */ stw r0, 0x30(r1) +/* 8016F734 0016C694 48 00 02 C4 */ b lbl_8016F9F8 +lbl_8016F738: +/* 8016F738 0016C698 3C C0 80 3E */ lis r6, lbl_803DAA68@ha +/* 8016F73C 0016C69C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8016F740 0016C6A0 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 8016F744 0016C6A4 39 46 AA 68 */ addi r10, r6, lbl_803DAA68@l +/* 8016F748 0016C6A8 3D 00 80 3E */ lis r8, lbl_803DA9F0@ha +/* 8016F74C 0016C6AC 80 81 00 2C */ lwz r4, 0x2c(r1) +/* 8016F750 0016C6B0 38 A0 00 00 */ li r5, 0 +/* 8016F754 0016C6B4 C0 23 00 04 */ lfs f1, 4(r3) +/* 8016F758 0016C6B8 50 A4 F8 00 */ rlwimi r4, r5, 0x1f, 0, 0 +/* 8016F75C 0016C6BC C0 03 00 08 */ lfs f0, 8(r3) +/* 8016F760 0016C6C0 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8016F764 0016C6C4 7C 80 23 78 */ mr r0, r4 +/* 8016F768 0016C6C8 90 81 00 2C */ stw r4, 0x2c(r1) +/* 8016F76C 0016C6CC 39 20 00 0E */ li r9, 0xe +/* 8016F770 0016C6D0 38 E0 00 07 */ li r7, 7 +/* 8016F774 0016C6D4 38 C0 FF FF */ li r6, -1 +/* 8016F778 0016C6D8 50 A0 F0 42 */ rlwimi r0, r5, 0x1e, 1, 1 +/* 8016F77C 0016C6DC 3B E3 00 04 */ addi r31, r3, 4 +/* 8016F780 0016C6E0 91 41 00 10 */ stw r10, 0x10(r1) +/* 8016F784 0016C6E4 39 08 A9 F0 */ addi r8, r8, lbl_803DA9F0@l +/* 8016F788 0016C6E8 7F E3 FB 78 */ mr r3, r31 +/* 8016F78C 0016C6EC 38 80 00 0E */ li r4, 0xe +/* 8016F790 0016C6F0 91 21 00 14 */ stw r9, 0x14(r1) +/* 8016F794 0016C6F4 91 01 00 10 */ stw r8, 0x10(r1) +/* 8016F798 0016C6F8 90 E1 00 18 */ stw r7, 0x18(r1) +/* 8016F79C 0016C6FC D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 8016F7A0 0016C700 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 8016F7A4 0016C704 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 8016F7A8 0016C708 90 C1 00 28 */ stw r6, 0x28(r1) +/* 8016F7AC 0016C70C 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8016F7B0 0016C710 4B FC 1C 89 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8016F7B4 0016C714 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8016F7B8 0016C718 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 8016F7BC 0016C71C 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l +/* 8016F7C0 0016C720 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8016F7C4 0016C724 90 1F 01 90 */ stw r0, 0x190(r31) +/* 8016F7C8 0016C728 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8016F7CC 0016C72C 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 8016F7D0 0016C730 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 8016F7D4 0016C734 90 BF 01 94 */ stw r5, 0x194(r31) +/* 8016F7D8 0016C738 80 A1 00 20 */ lwz r5, 0x20(r1) +/* 8016F7DC 0016C73C 90 7F 01 98 */ stw r3, 0x198(r31) +/* 8016F7E0 0016C740 80 61 00 24 */ lwz r3, 0x24(r1) +/* 8016F7E4 0016C744 90 BF 01 9C */ stw r5, 0x19c(r31) +/* 8016F7E8 0016C748 80 A1 00 28 */ lwz r5, 0x28(r1) +/* 8016F7EC 0016C74C 90 7F 01 A0 */ stw r3, 0x1a0(r31) +/* 8016F7F0 0016C750 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 8016F7F4 0016C754 90 BF 01 A4 */ stw r5, 0x1a4(r31) +/* 8016F7F8 0016C758 90 81 00 10 */ stw r4, 0x10(r1) +/* 8016F7FC 0016C75C 90 7F 01 A8 */ stw r3, 0x1a8(r31) +/* 8016F800 0016C760 90 01 00 10 */ stw r0, 0x10(r1) +/* 8016F804 0016C764 48 00 01 F4 */ b lbl_8016F9F8 +lbl_8016F808: +/* 8016F808 0016C768 80 BF 04 50 */ lwz r5, 0x450(r31) +/* 8016F80C 0016C76C 80 05 02 B8 */ lwz r0, 0x2b8(r5) +/* 8016F810 0016C770 2C 00 00 0C */ cmpwi r0, 0xc +/* 8016F814 0016C774 41 82 00 10 */ beq lbl_8016F824 +/* 8016F818 0016C778 38 00 00 03 */ li r0, 3 +/* 8016F81C 0016C77C 90 1F 05 68 */ stw r0, 0x568(r31) +/* 8016F820 0016C780 48 00 01 D8 */ b lbl_8016F9F8 +lbl_8016F824: +/* 8016F824 0016C784 88 05 03 00 */ lbz r0, 0x300(r5) +/* 8016F828 0016C788 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8016F82C 0016C78C 40 82 01 CC */ bne lbl_8016F9F8 +/* 8016F830 0016C790 81 83 00 00 */ lwz r12, 0(r3) +/* 8016F834 0016C794 C0 22 A0 D8 */ lfs f1, lbl_805ABDF8@sda21(r2) +/* 8016F838 0016C798 81 8C 02 30 */ lwz r12, 0x230(r12) +/* 8016F83C 0016C79C 7D 89 03 A6 */ mtctr r12 +/* 8016F840 0016C7A0 4E 80 04 21 */ bctrl +/* 8016F844 0016C7A4 7C 7E 1B 78 */ mr r30, r3 +/* 8016F848 0016C7A8 7F E3 FB 78 */ mr r3, r31 +/* 8016F84C 0016C7AC 81 9F 00 00 */ lwz r12, 0(r31) +/* 8016F850 0016C7B0 7F A4 EB 78 */ mr r4, r29 +/* 8016F854 0016C7B4 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) +/* 8016F858 0016C7B8 81 8C 01 8C */ lwz r12, 0x18c(r12) +/* 8016F85C 0016C7BC 7D 89 03 A6 */ mtctr r12 +/* 8016F860 0016C7C0 4E 80 04 21 */ bctrl +/* 8016F864 0016C7C4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016F868 0016C7C8 40 82 00 0C */ bne lbl_8016F874 +/* 8016F86C 0016C7CC 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 8016F870 0016C7D0 41 82 01 88 */ beq lbl_8016F9F8 +lbl_8016F874: +/* 8016F874 0016C7D4 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8016F878 0016C7D8 4B FC B0 41 */ bl GetAnimTimeRemaining__15CBodyControllerCFv +/* 8016F87C 0016C7DC FF E0 08 90 */ fmr f31, f1 +/* 8016F880 0016C7E0 C0 1F 07 F4 */ lfs f0, 0x7f4(r31) +/* 8016F884 0016C7E4 C0 22 A0 98 */ lfs f1, lbl_805ABDB8@sda21(r2) +/* 8016F888 0016C7E8 38 81 00 0C */ addi r4, r1, 0xc +/* 8016F88C 0016C7EC 38 6D 8D B8 */ addi r3, r13, lbl_805A7978@sda21 +/* 8016F890 0016C7F0 38 AD 8D BC */ addi r5, r13, lbl_805A797C@sda21 +/* 8016F894 0016C7F4 EC 1F 00 24 */ fdivs f0, f31, f0 +/* 8016F898 0016C7F8 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8016F89C 0016C7FC D0 01 00 0C */ stfs f0, 0xc(r1) +/* 8016F8A0 0016C800 4B E9 CA 15 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8016F8A4 0016C804 C0 23 00 00 */ lfs f1, 0(r3) +/* 8016F8A8 0016C808 C0 02 A0 AC */ lfs f0, lbl_805ABDCC@sda21(r2) +/* 8016F8AC 0016C80C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8016F8B0 0016C810 40 80 00 48 */ bge lbl_8016F8F8 +/* 8016F8B4 0016C814 EC 21 00 24 */ fdivs f1, f1, f0 +/* 8016F8B8 0016C818 C0 42 A0 88 */ lfs f2, lbl_805ABDA8@sda21(r2) +/* 8016F8BC 0016C81C C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) +/* 8016F8C0 0016C820 38 81 00 08 */ addi r4, r1, 8 +/* 8016F8C4 0016C824 38 6D 8D C0 */ addi r3, r13, lbl_805A7980@sda21 +/* 8016F8C8 0016C828 38 AD 8D C4 */ addi r5, r13, lbl_805A7984@sda21 +/* 8016F8CC 0016C82C EC 02 00 7C */ fnmsubs f0, f2, f1, f0 +/* 8016F8D0 0016C830 D0 01 00 08 */ stfs f0, 8(r1) +/* 8016F8D4 0016C834 4B E9 C9 E1 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8016F8D8 0016C838 C0 63 00 00 */ lfs f3, 0(r3) +/* 8016F8DC 0016C83C C0 5F 07 DC */ lfs f2, 0x7dc(r31) +/* 8016F8E0 0016C840 C0 3F 07 E0 */ lfs f1, 0x7e0(r31) +/* 8016F8E4 0016C844 C0 1F 07 E4 */ lfs f0, 0x7e4(r31) +/* 8016F8E8 0016C848 EF E3 00 B2 */ fmuls f31, f3, f2 +/* 8016F8EC 0016C84C EF A3 00 72 */ fmuls f29, f3, f1 +/* 8016F8F0 0016C850 EF 83 00 32 */ fmuls f28, f3, f0 +/* 8016F8F4 0016C854 48 00 00 74 */ b lbl_8016F968 +lbl_8016F8F8: +/* 8016F8F8 0016C858 C0 42 A0 A8 */ lfs f2, lbl_805ABDC8@sda21(r2) +/* 8016F8FC 0016C85C C0 3F 07 F4 */ lfs f1, 0x7f4(r31) +/* 8016F900 0016C860 C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) +/* 8016F904 0016C864 ED 02 00 72 */ fmuls f8, f2, f1 +/* 8016F908 0016C868 C0 C2 A0 88 */ lfs f6, lbl_805ABDA8@sda21(r2) +/* 8016F90C 0016C86C C0 BF 07 DC */ lfs f5, 0x7dc(r31) +/* 8016F910 0016C870 C0 9F 07 E0 */ lfs f4, 0x7e0(r31) +/* 8016F914 0016C874 EC E0 40 24 */ fdivs f7, f0, f8 +/* 8016F918 0016C878 C0 7F 07 E4 */ lfs f3, 0x7e4(r31) +/* 8016F91C 0016C87C C0 5F 07 D0 */ lfs f2, 0x7d0(r31) +/* 8016F920 0016C880 C0 3F 07 D4 */ lfs f1, 0x7d4(r31) +/* 8016F924 0016C884 C0 1F 07 D8 */ lfs f0, 0x7d8(r31) +/* 8016F928 0016C888 EC A6 01 72 */ fmuls f5, f6, f5 +/* 8016F92C 0016C88C EC 86 01 32 */ fmuls f4, f6, f4 +/* 8016F930 0016C890 EC 66 00 F2 */ fmuls f3, f6, f3 +/* 8016F934 0016C894 EC 42 28 28 */ fsubs f2, f2, f5 +/* 8016F938 0016C898 EC 21 20 28 */ fsubs f1, f1, f4 +/* 8016F93C 0016C89C EC 00 18 28 */ fsubs f0, f0, f3 +/* 8016F940 0016C8A0 EC C8 F8 28 */ fsubs f6, f8, f31 +/* 8016F944 0016C8A4 EC 47 00 B2 */ fmuls f2, f7, f2 +/* 8016F948 0016C8A8 EC 27 00 72 */ fmuls f1, f7, f1 +/* 8016F94C 0016C8AC EC 07 00 32 */ fmuls f0, f7, f0 +/* 8016F950 0016C8B0 EC 46 00 B2 */ fmuls f2, f6, f2 +/* 8016F954 0016C8B4 EC 26 00 72 */ fmuls f1, f6, f1 +/* 8016F958 0016C8B8 EC 06 00 32 */ fmuls f0, f6, f0 +/* 8016F95C 0016C8BC EF E5 10 2A */ fadds f31, f5, f2 +/* 8016F960 0016C8C0 EF A4 08 2A */ fadds f29, f4, f1 +/* 8016F964 0016C8C4 EF 83 00 2A */ fadds f28, f3, f0 +lbl_8016F968: +/* 8016F968 0016C8C8 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 8016F96C 0016C8CC 41 82 00 14 */ beq lbl_8016F980 +/* 8016F970 0016C8D0 FC 20 F0 90 */ fmr f1, f30 +/* 8016F974 0016C8D4 7F E3 FB 78 */ mr r3, r31 +/* 8016F978 0016C8D8 7F A4 EB 78 */ mr r4, r29 +/* 8016F97C 0016C8DC 4B FF D9 F5 */ bl sub_8016d370 +lbl_8016F980: +/* 8016F980 0016C8E0 80 9F 00 64 */ lwz r4, 0x64(r31) +/* 8016F984 0016C8E4 7F E3 FB 78 */ mr r3, r31 +/* 8016F988 0016C8E8 D3 E4 00 00 */ stfs f31, 0(r4) +/* 8016F98C 0016C8EC D3 A4 00 04 */ stfs f29, 4(r4) +/* 8016F990 0016C8F0 D3 84 00 08 */ stfs f28, 8(r4) +/* 8016F994 0016C8F4 48 00 1D 31 */ bl sub_801716c4 +/* 8016F998 0016C8F8 48 00 00 60 */ b lbl_8016F9F8 +lbl_8016F99C: +/* 8016F99C 0016C8FC C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) +/* 8016F9A0 0016C900 38 A0 00 00 */ li r5, 0 +/* 8016F9A4 0016C904 D0 3F 07 F4 */ stfs f1, 0x7f4(r31) +/* 8016F9A8 0016C908 88 1F 09 BF */ lbz r0, 0x9bf(r31) +/* 8016F9AC 0016C90C 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 8016F9B0 0016C910 98 1F 09 BF */ stb r0, 0x9bf(r31) +/* 8016F9B4 0016C914 81 83 00 00 */ lwz r12, 0(r3) +/* 8016F9B8 0016C918 81 8C 01 8C */ lwz r12, 0x18c(r12) +/* 8016F9BC 0016C91C 7D 89 03 A6 */ mtctr r12 +/* 8016F9C0 0016C920 4E 80 04 21 */ bctrl +/* 8016F9C4 0016C924 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016F9C8 0016C928 41 82 00 28 */ beq lbl_8016F9F0 +/* 8016F9CC 0016C92C C0 1F 07 F8 */ lfs f0, 0x7f8(r31) +/* 8016F9D0 0016C930 D0 1F 07 FC */ stfs f0, 0x7fc(r31) +/* 8016F9D4 0016C934 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 8016F9D8 0016C938 C0 1F 07 D0 */ lfs f0, 0x7d0(r31) +/* 8016F9DC 0016C93C D0 03 00 00 */ stfs f0, 0(r3) +/* 8016F9E0 0016C940 C0 1F 07 D4 */ lfs f0, 0x7d4(r31) +/* 8016F9E4 0016C944 D0 03 00 04 */ stfs f0, 4(r3) +/* 8016F9E8 0016C948 C0 1F 07 D8 */ lfs f0, 0x7d8(r31) +/* 8016F9EC 0016C94C D0 03 00 08 */ stfs f0, 8(r3) +lbl_8016F9F0: +/* 8016F9F0 0016C950 7F E3 FB 78 */ mr r3, r31 +/* 8016F9F4 0016C954 48 00 1C D1 */ bl sub_801716c4 +lbl_8016F9F8: +/* 8016F9F8 0016C958 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 +/* 8016F9FC 0016C95C CB E1 00 90 */ lfd f31, 0x90(r1) +/* 8016FA00 0016C960 E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 +/* 8016FA04 0016C964 CB C1 00 80 */ lfd f30, 0x80(r1) +/* 8016FA08 0016C968 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0 +/* 8016FA0C 0016C96C CB A1 00 70 */ lfd f29, 0x70(r1) +/* 8016FA10 0016C970 E3 81 00 68 */ psq_l f28, 104(r1), 0, qr0 +/* 8016FA14 0016C974 CB 81 00 60 */ lfd f28, 0x60(r1) +/* 8016FA18 0016C978 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8016FA1C 0016C97C 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 8016FA20 0016C980 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 8016FA24 0016C984 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 8016FA28 0016C988 7C 08 03 A6 */ mtlr r0 +/* 8016FA2C 0016C98C 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 8016FA30 0016C990 4E 80 00 20 */ blr + +.global TargetPatrol__8CMetroidFR13CStateManager9EStateMsgf +TargetPatrol__8CMetroidFR13CStateManager9EStateMsgf: +/* 8016FA34 0016C994 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8016FA38 0016C998 7C 08 02 A6 */ mflr r0 +/* 8016FA3C 0016C99C 90 01 00 34 */ stw r0, 0x34(r1) +/* 8016FA40 0016C9A0 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 8016FA44 0016C9A4 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 8016FA48 0016C9A8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8016FA4C 0016C9AC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8016FA50 0016C9B0 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8016FA54 0016C9B4 7C BF 2B 78 */ mr r31, r5 +/* 8016FA58 0016C9B8 FF E0 08 90 */ fmr f31, f1 +/* 8016FA5C 0016C9BC 2C 1F 00 01 */ cmpwi r31, 1 +/* 8016FA60 0016C9C0 7C 7D 1B 78 */ mr r29, r3 +/* 8016FA64 0016C9C4 7C 9E 23 78 */ mr r30, r4 +/* 8016FA68 0016C9C8 41 82 00 D8 */ beq lbl_8016FB40 +/* 8016FA6C 0016C9CC 40 80 01 4C */ bge lbl_8016FBB8 +/* 8016FA70 0016C9D0 2C 1F 00 00 */ cmpwi r31, 0 +/* 8016FA74 0016C9D4 40 80 00 08 */ bge lbl_8016FA7C +/* 8016FA78 0016C9D8 48 00 01 40 */ b lbl_8016FBB8 +lbl_8016FA7C: +/* 8016FA7C 0016C9DC 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8016FA80 0016C9E0 38 80 00 01 */ li r4, 1 +/* 8016FA84 0016C9E4 4B FC AF 55 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8016FA88 0016C9E8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016FA8C 0016C9EC 38 A0 00 00 */ li r5, 0 +/* 8016FA90 0016C9F0 7F A3 EB 78 */ mr r3, r29 +/* 8016FA94 0016C9F4 7F C4 F3 78 */ mr r4, r30 +/* 8016FA98 0016C9F8 B0 1D 07 B0 */ sth r0, 0x7b0(r29) +/* 8016FA9C 0016C9FC C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) +/* 8016FAA0 0016CA00 88 1D 09 BF */ lbz r0, 0x9bf(r29) +/* 8016FAA4 0016CA04 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a +/* 8016FAA8 0016CA08 98 1D 09 BF */ stb r0, 0x9bf(r29) +/* 8016FAAC 0016CA0C 81 9D 00 00 */ lwz r12, 0(r29) +/* 8016FAB0 0016CA10 81 8C 01 C0 */ lwz r12, 0x1c0(r12) +/* 8016FAB4 0016CA14 7D 89 03 A6 */ mtctr r12 +/* 8016FAB8 0016CA18 4E 80 04 21 */ bctrl +/* 8016FABC 0016CA1C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016FAC0 0016CA20 41 82 00 28 */ beq lbl_8016FAE8 +/* 8016FAC4 0016CA24 FC 20 F8 90 */ fmr f1, f31 +/* 8016FAC8 0016CA28 7F A3 EB 78 */ mr r3, r29 +/* 8016FACC 0016CA2C 7F C4 F3 78 */ mr r4, r30 +/* 8016FAD0 0016CA30 7F E5 FB 78 */ mr r5, r31 +/* 8016FAD4 0016CA34 48 08 73 A1 */ bl Patrol__10CPatternedFR13CStateManager9EStateMsgf +/* 8016FAD8 0016CA38 7F A3 EB 78 */ mr r3, r29 +/* 8016FADC 0016CA3C 7F C4 F3 78 */ mr r4, r30 +/* 8016FAE0 0016CA40 48 08 57 B1 */ bl UpdateDest__10CPatternedFR13CStateManager +/* 8016FAE4 0016CA44 48 00 00 10 */ b lbl_8016FAF4 +lbl_8016FAE8: +/* 8016FAE8 0016CA48 7F A3 EB 78 */ mr r3, r29 +/* 8016FAEC 0016CA4C 38 9D 03 A0 */ addi r4, r29, 0x3a0 +/* 8016FAF0 0016CA50 4B F0 D0 6D */ bl SetDestPos__10CPatternedFRC9CVector3f +lbl_8016FAF4: +/* 8016FAF4 0016CA54 C0 1D 02 E0 */ lfs f0, 0x2e0(r29) +/* 8016FAF8 0016CA58 7F A3 EB 78 */ mr r3, r29 +/* 8016FAFC 0016CA5C D0 1D 07 A4 */ stfs f0, 0x7a4(r29) +/* 8016FB00 0016CA60 C0 1D 02 E4 */ lfs f0, 0x2e4(r29) +/* 8016FB04 0016CA64 D0 1D 07 A8 */ stfs f0, 0x7a8(r29) +/* 8016FB08 0016CA68 C0 1D 02 E8 */ lfs f0, 0x2e8(r29) +/* 8016FB0C 0016CA6C D0 1D 07 AC */ stfs f0, 0x7ac(r29) +/* 8016FB10 0016CA70 81 9D 00 00 */ lwz r12, 0(r29) +/* 8016FB14 0016CA74 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 8016FB18 0016CA78 7D 89 03 A6 */ mtctr r12 +/* 8016FB1C 0016CA7C 4E 80 04 21 */ bctrl +/* 8016FB20 0016CA80 28 03 00 00 */ cmplwi r3, 0 +/* 8016FB24 0016CA84 41 82 00 94 */ beq lbl_8016FBB8 +/* 8016FB28 0016CA88 FC 20 F8 90 */ fmr f1, f31 +/* 8016FB2C 0016CA8C 7F A3 EB 78 */ mr r3, r29 +/* 8016FB30 0016CA90 7F C4 F3 78 */ mr r4, r30 +/* 8016FB34 0016CA94 7F E5 FB 78 */ mr r5, r31 +/* 8016FB38 0016CA98 48 08 6B 95 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 8016FB3C 0016CA9C 48 00 00 7C */ b lbl_8016FBB8 +lbl_8016FB40: +/* 8016FB40 0016CAA0 81 83 00 00 */ lwz r12, 0(r3) +/* 8016FB44 0016CAA4 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 8016FB48 0016CAA8 7D 89 03 A6 */ mtctr r12 +/* 8016FB4C 0016CAAC 4E 80 04 21 */ bctrl +/* 8016FB50 0016CAB0 28 03 00 00 */ cmplwi r3, 0 +/* 8016FB54 0016CAB4 41 82 00 40 */ beq lbl_8016FB94 +/* 8016FB58 0016CAB8 7F A3 EB 78 */ mr r3, r29 +/* 8016FB5C 0016CABC 7F C4 F3 78 */ mr r4, r30 +/* 8016FB60 0016CAC0 81 9D 00 00 */ lwz r12, 0(r29) +/* 8016FB64 0016CAC4 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) +/* 8016FB68 0016CAC8 81 8C 01 90 */ lwz r12, 0x190(r12) +/* 8016FB6C 0016CACC 7D 89 03 A6 */ mtctr r12 +/* 8016FB70 0016CAD0 4E 80 04 21 */ bctrl +/* 8016FB74 0016CAD4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8016FB78 0016CAD8 40 82 00 1C */ bne lbl_8016FB94 +/* 8016FB7C 0016CADC FC 20 F8 90 */ fmr f1, f31 +/* 8016FB80 0016CAE0 7F A3 EB 78 */ mr r3, r29 +/* 8016FB84 0016CAE4 7F C4 F3 78 */ mr r4, r30 +/* 8016FB88 0016CAE8 7F E5 FB 78 */ mr r5, r31 +/* 8016FB8C 0016CAEC 48 08 6B 41 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf +/* 8016FB90 0016CAF0 48 00 00 18 */ b lbl_8016FBA8 +lbl_8016FB94: +/* 8016FB94 0016CAF4 FC 20 F8 90 */ fmr f1, f31 +/* 8016FB98 0016CAF8 7F A3 EB 78 */ mr r3, r29 +/* 8016FB9C 0016CAFC 7F C4 F3 78 */ mr r4, r30 +/* 8016FBA0 0016CB00 7F E5 FB 78 */ mr r5, r31 +/* 8016FBA4 0016CB04 48 08 72 D1 */ bl Patrol__10CPatternedFR13CStateManager9EStateMsgf +lbl_8016FBA8: +/* 8016FBA8 0016CB08 C0 22 A0 F0 */ lfs f1, lbl_805ABE10@sda21(r2) +/* 8016FBAC 0016CB0C 7F A3 EB 78 */ mr r3, r29 +/* 8016FBB0 0016CB10 7F C4 F3 78 */ mr r4, r30 +/* 8016FBB4 0016CB14 4B FF DC C1 */ bl sub_8016d874 +lbl_8016FBB8: +/* 8016FBB8 0016CB18 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 8016FBBC 0016CB1C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8016FBC0 0016CB20 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 8016FBC4 0016CB24 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8016FBC8 0016CB28 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8016FBCC 0016CB2C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8016FBD0 0016CB30 7C 08 03 A6 */ mtlr r0 +/* 8016FBD4 0016CB34 38 21 00 30 */ addi r1, r1, 0x30 +/* 8016FBD8 0016CB38 4E 80 00 20 */ blr + +.global Patrol__8CMetroidFR13CStateManager9EStateMsgf +Patrol__8CMetroidFR13CStateManager9EStateMsgf: +/* 8016FBDC 0016CB3C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8016FBE0 0016CB40 7C 08 02 A6 */ mflr r0 +/* 8016FBE4 0016CB44 90 01 00 24 */ stw r0, 0x24(r1) +/* 8016FBE8 0016CB48 DB E1 00 18 */ stfd f31, 0x18(r1) +/* 8016FBEC 0016CB4C FF E0 08 90 */ fmr f31, f1 +/* 8016FBF0 0016CB50 93 E1 00 14 */ stw r31, 0x14(r1) +/* 8016FBF4 0016CB54 7C BF 2B 79 */ or. r31, r5, r5 +/* 8016FBF8 0016CB58 93 C1 00 10 */ stw r30, 0x10(r1) +/* 8016FBFC 0016CB5C 7C 9E 23 78 */ mr r30, r4 +/* 8016FC00 0016CB60 93 A1 00 0C */ stw r29, 0xc(r1) +/* 8016FC04 0016CB64 7C 7D 1B 78 */ mr r29, r3 +/* 8016FC08 0016CB68 41 82 00 08 */ beq lbl_8016FC10 +/* 8016FC0C 0016CB6C 48 00 00 28 */ b lbl_8016FC34 +lbl_8016FC10: +/* 8016FC10 0016CB70 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8016FC14 0016CB74 38 80 00 01 */ li r4, 1 +/* 8016FC18 0016CB78 4B FC AD C1 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8016FC1C 0016CB7C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016FC20 0016CB80 38 60 00 00 */ li r3, 0 +/* 8016FC24 0016CB84 B0 1D 07 B0 */ sth r0, 0x7b0(r29) +/* 8016FC28 0016CB88 88 1D 09 BF */ lbz r0, 0x9bf(r29) +/* 8016FC2C 0016CB8C 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 8016FC30 0016CB90 98 1D 09 BF */ stb r0, 0x9bf(r29) +lbl_8016FC34: +/* 8016FC34 0016CB94 FC 20 F8 90 */ fmr f1, f31 +/* 8016FC38 0016CB98 7F A3 EB 78 */ mr r3, r29 +/* 8016FC3C 0016CB9C 7F C4 F3 78 */ mr r4, r30 +/* 8016FC40 0016CBA0 7F E5 FB 78 */ mr r5, r31 +/* 8016FC44 0016CBA4 48 08 72 31 */ bl Patrol__10CPatternedFR13CStateManager9EStateMsgf +/* 8016FC48 0016CBA8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8016FC4C 0016CBAC CB E1 00 18 */ lfd f31, 0x18(r1) +/* 8016FC50 0016CBB0 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 8016FC54 0016CBB4 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 8016FC58 0016CBB8 83 A1 00 0C */ lwz r29, 0xc(r1) +/* 8016FC5C 0016CBBC 7C 08 03 A6 */ mtlr r0 +/* 8016FC60 0016CBC0 38 21 00 20 */ addi r1, r1, 0x20 +/* 8016FC64 0016CBC4 4E 80 00 20 */ blr + +.global ShouldDodge__8CMetroidFR13CStateManagerf +ShouldDodge__8CMetroidFR13CStateManagerf: +/* 8016FC68 0016CBC8 94 21 F7 50 */ stwu r1, -0x8b0(r1) +/* 8016FC6C 0016CBCC 7C 08 02 A6 */ mflr r0 +/* 8016FC70 0016CBD0 90 01 08 B4 */ stw r0, 0x8b4(r1) +/* 8016FC74 0016CBD4 93 E1 08 AC */ stw r31, 0x8ac(r1) +/* 8016FC78 0016CBD8 7C 9F 23 78 */ mr r31, r4 +/* 8016FC7C 0016CBDC 93 C1 08 A8 */ stw r30, 0x8a8(r1) +/* 8016FC80 0016CBE0 7C 7E 1B 78 */ mr r30, r3 +/* 8016FC84 0016CBE4 93 A1 08 A4 */ stw r29, 0x8a4(r1) +/* 8016FC88 0016CBE8 93 81 08 A0 */ stw r28, 0x8a0(r1) +/* 8016FC8C 0016CBEC 80 03 03 FC */ lwz r0, 0x3fc(r3) +/* 8016FC90 0016CBF0 2C 00 00 02 */ cmpwi r0, 2 +/* 8016FC94 0016CBF4 41 82 02 BC */ beq lbl_8016FF50 +/* 8016FC98 0016CBF8 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 8016FC9C 0016CBFC A0 7E 07 B0 */ lhz r3, 0x7b0(r30) +/* 8016FCA0 0016CC00 A0 04 00 08 */ lhz r0, 8(r4) +/* 8016FCA4 0016CC04 7C 03 00 40 */ cmplw r3, r0 +/* 8016FCA8 0016CC08 40 82 02 A8 */ bne lbl_8016FF50 +/* 8016FCAC 0016CC0C 80 7E 00 04 */ lwz r3, 4(r30) +/* 8016FCB0 0016CC10 80 04 00 04 */ lwz r0, 4(r4) +/* 8016FCB4 0016CC14 7C 03 00 00 */ cmpw r3, r0 +/* 8016FCB8 0016CC18 40 82 02 98 */ bne lbl_8016FF50 +/* 8016FCBC 0016CC1C A0 DE 00 08 */ lhz r6, 8(r30) +/* 8016FCC0 0016CC20 7F E3 FB 78 */ mr r3, r31 +/* 8016FCC4 0016CC24 38 81 00 14 */ addi r4, r1, 0x14 +/* 8016FCC8 0016CC28 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8016FCCC 0016CC2C B0 C1 00 10 */ sth r6, 0x10(r1) +/* 8016FCD0 0016CC30 A0 1E 06 98 */ lhz r0, 0x698(r30) +/* 8016FCD4 0016CC34 B0 C1 00 0C */ sth r6, 0xc(r1) +/* 8016FCD8 0016CC38 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8016FCDC 0016CC3C 48 0C A4 A5 */ bl GetTeamAiRole__10CTeamAiMgrCFRC13CStateManager9TUniqueId9TUniqueId +/* 8016FCE0 0016CC40 28 03 00 00 */ cmplwi r3, 0 +/* 8016FCE4 0016CC44 41 82 02 6C */ beq lbl_8016FF50 +/* 8016FCE8 0016CC48 80 03 00 10 */ lwz r0, 0x10(r3) +/* 8016FCEC 0016CC4C 2C 00 00 01 */ cmpwi r0, 1 +/* 8016FCF0 0016CC50 40 82 02 60 */ bne lbl_8016FF50 +/* 8016FCF4 0016CC54 C0 FE 00 60 */ lfs f7, 0x60(r30) +/* 8016FCF8 0016CC58 38 61 00 80 */ addi r3, r1, 0x80 +/* 8016FCFC 0016CC5C C0 A2 A0 F0 */ lfs f5, lbl_805ABE10@sda21(r2) +/* 8016FD00 0016CC60 38 81 00 2C */ addi r4, r1, 0x2c +/* 8016FD04 0016CC64 C0 DE 00 50 */ lfs f6, 0x50(r30) +/* 8016FD08 0016CC68 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8016FD0C 0016CC6C C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 8016FD10 0016CC70 EC 07 28 2A */ fadds f0, f7, f5 +/* 8016FD14 0016CC74 EC 66 28 2A */ fadds f3, f6, f5 +/* 8016FD18 0016CC78 EC 81 28 2A */ fadds f4, f1, f5 +/* 8016FD1C 0016CC7C EC 41 28 28 */ fsubs f2, f1, f5 +/* 8016FD20 0016CC80 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 8016FD24 0016CC84 EC 26 28 28 */ fsubs f1, f6, f5 +/* 8016FD28 0016CC88 EC 07 28 28 */ fsubs f0, f7, f5 +/* 8016FD2C 0016CC8C D0 81 00 20 */ stfs f4, 0x20(r1) +/* 8016FD30 0016CC90 D0 61 00 24 */ stfs f3, 0x24(r1) +/* 8016FD34 0016CC94 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 8016FD38 0016CC98 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 8016FD3C 0016CC9C D0 01 00 34 */ stfs f0, 0x34(r1) +/* 8016FD40 0016CCA0 48 1C 87 C9 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8016FD44 0016CCA4 38 00 00 00 */ li r0, 0 +/* 8016FD48 0016CCA8 80 AD 8D B4 */ lwz r5, lbl_805A7974@sda21(r13) +/* 8016FD4C 0016CCAC 90 01 00 98 */ stw r0, 0x98(r1) +/* 8016FD50 0016CCB0 38 60 00 00 */ li r3, 0 +/* 8016FD54 0016CCB4 38 80 00 01 */ li r4, 1 +/* 8016FD58 0016CCB8 48 21 A1 9D */ bl __shl2i +/* 8016FD5C 0016CCBC 39 00 00 01 */ li r8, 1 +/* 8016FD60 0016CCC0 38 00 00 00 */ li r0, 0 +/* 8016FD64 0016CCC4 90 81 00 6C */ stw r4, 0x6c(r1) +/* 8016FD68 0016CCC8 38 81 00 98 */ addi r4, r1, 0x98 +/* 8016FD6C 0016CCCC 38 A1 00 80 */ addi r5, r1, 0x80 +/* 8016FD70 0016CCD0 38 C1 00 68 */ addi r6, r1, 0x68 +/* 8016FD74 0016CCD4 90 61 00 68 */ stw r3, 0x68(r1) +/* 8016FD78 0016CCD8 7F E3 FB 78 */ mr r3, r31 +/* 8016FD7C 0016CCDC 38 E0 00 00 */ li r7, 0 +/* 8016FD80 0016CCE0 91 01 00 60 */ stw r8, 0x60(r1) +/* 8016FD84 0016CCE4 90 01 00 74 */ stw r0, 0x74(r1) +/* 8016FD88 0016CCE8 90 01 00 70 */ stw r0, 0x70(r1) +/* 8016FD8C 0016CCEC 91 01 00 78 */ stw r8, 0x78(r1) +/* 8016FD90 0016CCF0 4B ED C9 91 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 8016FD94 0016CCF4 80 01 00 98 */ lwz r0, 0x98(r1) +/* 8016FD98 0016CCF8 2C 00 00 00 */ cmpwi r0, 0 +/* 8016FD9C 0016CCFC 40 81 01 60 */ ble lbl_8016FEFC +/* 8016FDA0 0016CD00 C0 5E 00 58 */ lfs f2, 0x58(r30) +/* 8016FDA4 0016CD04 3B A1 00 9C */ addi r29, r1, 0x9c +/* 8016FDA8 0016CD08 C0 3E 00 48 */ lfs f1, 0x48(r30) +/* 8016FDAC 0016CD0C 7F BC EB 78 */ mr r28, r29 +/* 8016FDB0 0016CD10 C0 1E 00 38 */ lfs f0, 0x38(r30) +/* 8016FDB4 0016CD14 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 8016FDB8 0016CD18 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 8016FDBC 0016CD1C D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 8016FDC0 0016CD20 48 00 01 28 */ b lbl_8016FEE8 +lbl_8016FDC4: +/* 8016FDC4 0016CD24 A0 1C 00 00 */ lhz r0, 0(r28) +/* 8016FDC8 0016CD28 7F E3 FB 78 */ mr r3, r31 +/* 8016FDCC 0016CD2C 38 81 00 08 */ addi r4, r1, 8 +/* 8016FDD0 0016CD30 B0 01 00 08 */ sth r0, 8(r1) +/* 8016FDD4 0016CD34 4B ED C7 D1 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8016FDD8 0016CD38 7C 64 1B 78 */ mr r4, r3 +/* 8016FDDC 0016CD3C 38 61 00 18 */ addi r3, r1, 0x18 +/* 8016FDE0 0016CD40 4B F3 D9 2D */ bl "__ct__29TCastToPtr<15CGameProjectile>FP7CEntity" +/* 8016FDE4 0016CD44 80 A3 00 04 */ lwz r5, 4(r3) +/* 8016FDE8 0016CD48 28 05 00 00 */ cmplwi r5, 0 +/* 8016FDEC 0016CD4C 41 82 00 F8 */ beq lbl_8016FEE4 +/* 8016FDF0 0016CD50 80 05 00 E8 */ lwz r0, 0xe8(r5) +/* 8016FDF4 0016CD54 54 00 07 38 */ rlwinm r0, r0, 0, 0x1c, 0x1c +/* 8016FDF8 0016CD58 2C 00 00 08 */ cmpwi r0, 8 +/* 8016FDFC 0016CD5C 40 82 00 E8 */ bne lbl_8016FEE4 +/* 8016FE00 0016CD60 C0 25 00 50 */ lfs f1, 0x50(r5) +/* 8016FE04 0016CD64 38 61 00 44 */ addi r3, r1, 0x44 +/* 8016FE08 0016CD68 C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 8016FE0C 0016CD6C 38 81 00 38 */ addi r4, r1, 0x38 +/* 8016FE10 0016CD70 C0 65 00 60 */ lfs f3, 0x60(r5) +/* 8016FE14 0016CD74 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 8016FE18 0016CD78 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8016FE1C 0016CD7C C0 25 00 40 */ lfs f1, 0x40(r5) +/* 8016FE20 0016CD80 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8016FE24 0016CD84 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8016FE28 0016CD88 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8016FE2C 0016CD8C D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 8016FE30 0016CD90 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 8016FE34 0016CD94 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 8016FE38 0016CD98 48 1A 47 F9 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f +/* 8016FE3C 0016CD9C C0 02 A0 F4 */ lfs f0, lbl_805ABE14@sda21(r2) +/* 8016FE40 0016CDA0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8016FE44 0016CDA4 40 80 00 A0 */ bge lbl_8016FEE4 +/* 8016FE48 0016CDA8 C0 3E 00 44 */ lfs f1, 0x44(r30) +/* 8016FE4C 0016CDAC C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 8016FE50 0016CDB0 C0 5E 00 34 */ lfs f2, 0x34(r30) +/* 8016FE54 0016CDB4 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8016FE58 0016CDB8 C0 21 00 38 */ lfs f1, 0x38(r1) +/* 8016FE5C 0016CDBC C0 9E 00 54 */ lfs f4, 0x54(r30) +/* 8016FE60 0016CDC0 C0 61 00 40 */ lfs f3, 0x40(r1) +/* 8016FE64 0016CDC4 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 8016FE68 0016CDC8 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016FE6C 0016CDCC EC 24 08 FA */ fmadds f1, f4, f3, f1 +/* 8016FE70 0016CDD0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8016FE74 0016CDD4 40 81 00 0C */ ble lbl_8016FE80 +/* 8016FE78 0016CDD8 38 00 00 03 */ li r0, 3 +/* 8016FE7C 0016CDDC 48 00 00 08 */ b lbl_8016FE84 +lbl_8016FE80: +/* 8016FE80 0016CDE0 38 00 00 02 */ li r0, 2 +lbl_8016FE84: +/* 8016FE84 0016CDE4 90 1E 08 18 */ stw r0, 0x818(r30) +/* 8016FE88 0016CDE8 38 60 00 00 */ li r3, 0 +/* 8016FE8C 0016CDEC 80 A1 00 98 */ lwz r5, 0x98(r1) +/* 8016FE90 0016CDF0 2C 05 00 00 */ cmpwi r5, 0 +/* 8016FE94 0016CDF4 40 81 00 40 */ ble lbl_8016FED4 +/* 8016FE98 0016CDF8 2C 05 00 08 */ cmpwi r5, 8 +/* 8016FE9C 0016CDFC 38 85 FF F8 */ addi r4, r5, -8 +/* 8016FEA0 0016CE00 40 81 00 20 */ ble lbl_8016FEC0 +/* 8016FEA4 0016CE04 38 04 00 07 */ addi r0, r4, 7 +/* 8016FEA8 0016CE08 54 00 E8 FE */ srwi r0, r0, 3 +/* 8016FEAC 0016CE0C 7C 09 03 A6 */ mtctr r0 +/* 8016FEB0 0016CE10 2C 04 00 00 */ cmpwi r4, 0 +/* 8016FEB4 0016CE14 40 81 00 0C */ ble lbl_8016FEC0 +lbl_8016FEB8: +/* 8016FEB8 0016CE18 38 63 00 08 */ addi r3, r3, 8 +/* 8016FEBC 0016CE1C 42 00 FF FC */ bdnz lbl_8016FEB8 +lbl_8016FEC0: +/* 8016FEC0 0016CE20 7C 03 28 50 */ subf r0, r3, r5 +/* 8016FEC4 0016CE24 7C 09 03 A6 */ mtctr r0 +/* 8016FEC8 0016CE28 7C 03 28 00 */ cmpw r3, r5 +/* 8016FECC 0016CE2C 40 80 00 08 */ bge lbl_8016FED4 +lbl_8016FED0: +/* 8016FED0 0016CE30 42 00 00 00 */ bdnz lbl_8016FED0 +lbl_8016FED4: +/* 8016FED4 0016CE34 38 00 00 00 */ li r0, 0 +/* 8016FED8 0016CE38 38 60 00 01 */ li r3, 1 +/* 8016FEDC 0016CE3C 90 01 00 98 */ stw r0, 0x98(r1) +/* 8016FEE0 0016CE40 48 00 00 74 */ b lbl_8016FF54 +lbl_8016FEE4: +/* 8016FEE4 0016CE44 3B 9C 00 02 */ addi r28, r28, 2 +lbl_8016FEE8: +/* 8016FEE8 0016CE48 80 01 00 98 */ lwz r0, 0x98(r1) +/* 8016FEEC 0016CE4C 54 00 08 3C */ slwi r0, r0, 1 +/* 8016FEF0 0016CE50 7C 1D 02 14 */ add r0, r29, r0 +/* 8016FEF4 0016CE54 7C 1C 00 40 */ cmplw r28, r0 +/* 8016FEF8 0016CE58 40 82 FE CC */ bne lbl_8016FDC4 +lbl_8016FEFC: +/* 8016FEFC 0016CE5C 80 A1 00 98 */ lwz r5, 0x98(r1) +/* 8016FF00 0016CE60 38 60 00 00 */ li r3, 0 +/* 8016FF04 0016CE64 2C 05 00 00 */ cmpwi r5, 0 +/* 8016FF08 0016CE68 40 81 00 40 */ ble lbl_8016FF48 +/* 8016FF0C 0016CE6C 2C 05 00 08 */ cmpwi r5, 8 +/* 8016FF10 0016CE70 38 85 FF F8 */ addi r4, r5, -8 +/* 8016FF14 0016CE74 40 81 00 20 */ ble lbl_8016FF34 +/* 8016FF18 0016CE78 38 04 00 07 */ addi r0, r4, 7 +/* 8016FF1C 0016CE7C 54 00 E8 FE */ srwi r0, r0, 3 +/* 8016FF20 0016CE80 7C 09 03 A6 */ mtctr r0 +/* 8016FF24 0016CE84 2C 04 00 00 */ cmpwi r4, 0 +/* 8016FF28 0016CE88 40 81 00 0C */ ble lbl_8016FF34 +lbl_8016FF2C: +/* 8016FF2C 0016CE8C 38 63 00 08 */ addi r3, r3, 8 +/* 8016FF30 0016CE90 42 00 FF FC */ bdnz lbl_8016FF2C +lbl_8016FF34: +/* 8016FF34 0016CE94 7C 03 28 50 */ subf r0, r3, r5 +/* 8016FF38 0016CE98 7C 09 03 A6 */ mtctr r0 +/* 8016FF3C 0016CE9C 7C 03 28 00 */ cmpw r3, r5 +/* 8016FF40 0016CEA0 40 80 00 08 */ bge lbl_8016FF48 +lbl_8016FF44: +/* 8016FF44 0016CEA4 42 00 00 00 */ bdnz lbl_8016FF44 +lbl_8016FF48: +/* 8016FF48 0016CEA8 38 00 00 00 */ li r0, 0 +/* 8016FF4C 0016CEAC 90 01 00 98 */ stw r0, 0x98(r1) +lbl_8016FF50: +/* 8016FF50 0016CEB0 38 60 00 00 */ li r3, 0 +lbl_8016FF54: +/* 8016FF54 0016CEB4 80 01 08 B4 */ lwz r0, 0x8b4(r1) +/* 8016FF58 0016CEB8 83 E1 08 AC */ lwz r31, 0x8ac(r1) +/* 8016FF5C 0016CEBC 83 C1 08 A8 */ lwz r30, 0x8a8(r1) +/* 8016FF60 0016CEC0 83 A1 08 A4 */ lwz r29, 0x8a4(r1) +/* 8016FF64 0016CEC4 83 81 08 A0 */ lwz r28, 0x8a0(r1) +/* 8016FF68 0016CEC8 7C 08 03 A6 */ mtlr r0 +/* 8016FF6C 0016CECC 38 21 08 B0 */ addi r1, r1, 0x8b0 +/* 8016FF70 0016CED0 4E 80 00 20 */ blr + +.global Inside__8CMetroidFR13CStateManagerf +Inside__8CMetroidFR13CStateManagerf: +/* 8016FF74 0016CED4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8016FF78 0016CED8 7C 08 02 A6 */ mflr r0 +/* 8016FF7C 0016CEDC 90 01 00 34 */ stw r0, 0x34(r1) +/* 8016FF80 0016CEE0 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 8016FF84 0016CEE4 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 8016FF88 0016CEE8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8016FF8C 0016CEEC 7C 7F 1B 78 */ mr r31, r3 +/* 8016FF90 0016CEF0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8016FF94 0016CEF4 A0 63 09 BC */ lhz r3, 0x9bc(r3) +/* 8016FF98 0016CEF8 FF E0 08 90 */ fmr f31, f1 +/* 8016FF9C 0016CEFC 7C 03 00 40 */ cmplw r3, r0 +/* 8016FFA0 0016CF00 41 82 00 90 */ beq lbl_80170030 +/* 8016FFA4 0016CF04 A0 1F 09 BC */ lhz r0, 0x9bc(r31) +/* 8016FFA8 0016CF08 7C 83 23 78 */ mr r3, r4 +/* 8016FFAC 0016CF0C 38 81 00 08 */ addi r4, r1, 8 +/* 8016FFB0 0016CF10 B0 01 00 08 */ sth r0, 8(r1) +/* 8016FFB4 0016CF14 4B ED C5 F1 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8016FFB8 0016CF18 7C 64 1B 78 */ mr r4, r3 +/* 8016FFBC 0016CF1C 38 61 00 0C */ addi r3, r1, 0xc +/* 8016FFC0 0016CF20 4B F3 55 15 */ bl sub_800a54d4 +/* 8016FFC4 0016CF24 4B F3 54 E5 */ bl "CastTo<8CMetroid>__10CPatternedFP7CEntity" +/* 8016FFC8 0016CF28 28 03 00 00 */ cmplwi r3, 0 +/* 8016FFCC 0016CF2C 41 82 00 64 */ beq lbl_80170030 +/* 8016FFD0 0016CF30 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8016FFD4 0016CF34 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 8016FFD8 0016CF38 40 81 00 10 */ ble lbl_8016FFE8 +/* 8016FFDC 0016CF3C C0 1F 06 BC */ lfs f0, 0x6bc(r31) +/* 8016FFE0 0016CF40 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 8016FFE4 0016CF44 48 00 00 08 */ b lbl_8016FFEC +lbl_8016FFE8: +/* 8016FFE8 0016CF48 C0 1F 06 BC */ lfs f0, 0x6bc(r31) +lbl_8016FFEC: +/* 8016FFEC 0016CF4C C0 43 00 50 */ lfs f2, 0x50(r3) +/* 8016FFF0 0016CF50 EC 00 00 32 */ fmuls f0, f0, f0 +/* 8016FFF4 0016CF54 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 8016FFF8 0016CF58 C0 83 00 40 */ lfs f4, 0x40(r3) +/* 8016FFFC 0016CF5C EC A2 08 28 */ fsubs f5, f2, f1 +/* 80170000 0016CF60 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 80170004 0016CF64 C0 63 00 60 */ lfs f3, 0x60(r3) +/* 80170008 0016CF68 EC 84 08 28 */ fsubs f4, f4, f1 +/* 8017000C 0016CF6C C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 80170010 0016CF70 EC 25 01 72 */ fmuls f1, f5, f5 +/* 80170014 0016CF74 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80170018 0016CF78 EC 24 09 3A */ fmadds f1, f4, f4, f1 +/* 8017001C 0016CF7C EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 80170020 0016CF80 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80170024 0016CF84 40 80 00 0C */ bge lbl_80170030 +/* 80170028 0016CF88 38 60 00 01 */ li r3, 1 +/* 8017002C 0016CF8C 48 00 00 08 */ b lbl_80170034 +lbl_80170030: +/* 80170030 0016CF90 38 60 00 00 */ li r3, 0 +lbl_80170034: +/* 80170034 0016CF94 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 80170038 0016CF98 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8017003C 0016CF9C CB E1 00 20 */ lfd f31, 0x20(r1) +/* 80170040 0016CFA0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80170044 0016CFA4 7C 08 03 A6 */ mtlr r0 +/* 80170048 0016CFA8 38 21 00 30 */ addi r1, r1, 0x30 + +.global sub_8017004c +sub_8017004c: +/* 8017004C 0016CFAC 4E 80 00 20 */ blr + +.global ShouldWallHang__8CMetroidFR13CStateManagerf +ShouldWallHang__8CMetroidFR13CStateManagerf: +/* 80170050 0016CFB0 88 03 06 94 */ lbz r0, 0x694(r3) +/* 80170054 0016CFB4 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f +/* 80170058 0016CFB8 4E 80 00 20 */ blr + +.global Leash__8CMetroidFR13CStateManagerf +Leash__8CMetroidFR13CStateManagerf: +/* 8017005C 0016CFBC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80170060 0016CFC0 7C 08 02 A6 */ mflr r0 +/* 80170064 0016CFC4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80170068 0016CFC8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8017006C 0016CFCC 7C 9F 23 78 */ mr r31, r4 +/* 80170070 0016CFD0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80170074 0016CFD4 7C 7E 1B 78 */ mr r30, r3 +/* 80170078 0016CFD8 80 A4 08 4C */ lwz r5, 0x84c(r4) +/* 8017007C 0016CFDC A0 C3 07 B0 */ lhz r6, 0x7b0(r3) +/* 80170080 0016CFE0 A0 05 00 08 */ lhz r0, 8(r5) +/* 80170084 0016CFE4 7C 06 00 40 */ cmplw r6, r0 +/* 80170088 0016CFE8 40 82 00 18 */ bne lbl_801700A0 +/* 8017008C 0016CFEC 4B FF A0 F5 */ bl sub_8016a180 +/* 80170090 0016CFF0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80170094 0016CFF4 41 82 00 0C */ beq lbl_801700A0 +/* 80170098 0016CFF8 38 60 00 01 */ li r3, 1 +/* 8017009C 0016CFFC 48 00 00 E8 */ b lbl_80170184 +lbl_801700A0: +/* 801700A0 0016D000 C0 3E 03 A4 */ lfs f1, 0x3a4(r30) +/* 801700A4 0016D004 C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 801700A8 0016D008 C0 5E 03 C8 */ lfs f2, 0x3c8(r30) +/* 801700AC 0016D00C EC A1 00 28 */ fsubs f5, f1, f0 +/* 801700B0 0016D010 C0 9E 03 A0 */ lfs f4, 0x3a0(r30) +/* 801700B4 0016D014 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 801700B8 0016D018 EC 02 00 B2 */ fmuls f0, f2, f2 +/* 801700BC 0016D01C C0 7E 03 A8 */ lfs f3, 0x3a8(r30) +/* 801700C0 0016D020 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 801700C4 0016D024 EC 84 08 28 */ fsubs f4, f4, f1 +/* 801700C8 0016D028 EC 25 01 72 */ fmuls f1, f5, f5 +/* 801700CC 0016D02C EC 43 10 28 */ fsubs f2, f3, f2 +/* 801700D0 0016D030 EC 24 09 3A */ fmadds f1, f4, f4, f1 +/* 801700D4 0016D034 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 801700D8 0016D038 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801700DC 0016D03C 40 81 00 A4 */ ble lbl_80170180 +/* 801700E0 0016D040 A0 7E 07 B0 */ lhz r3, 0x7b0(r30) +/* 801700E4 0016D044 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801700E8 0016D048 7C 03 00 40 */ cmplw r3, r0 +/* 801700EC 0016D04C 41 82 00 8C */ beq lbl_80170178 +/* 801700F0 0016D050 A0 1E 07 B0 */ lhz r0, 0x7b0(r30) +/* 801700F4 0016D054 7F E3 FB 78 */ mr r3, r31 +/* 801700F8 0016D058 38 81 00 08 */ addi r4, r1, 8 +/* 801700FC 0016D05C B0 01 00 08 */ sth r0, 8(r1) +/* 80170100 0016D060 4B ED C4 A5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80170104 0016D064 7C 64 1B 78 */ mr r4, r3 +/* 80170108 0016D068 38 61 00 0C */ addi r3, r1, 0xc +/* 8017010C 0016D06C 4B F3 FB 85 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80170110 0016D070 80 83 00 04 */ lwz r4, 4(r3) +/* 80170114 0016D074 28 04 00 00 */ cmplwi r4, 0 +/* 80170118 0016D078 41 82 00 60 */ beq lbl_80170178 +/* 8017011C 0016D07C C0 24 00 50 */ lfs f1, 0x50(r4) +/* 80170120 0016D080 38 60 00 00 */ li r3, 0 +/* 80170124 0016D084 C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 80170128 0016D088 C0 5E 03 CC */ lfs f2, 0x3cc(r30) +/* 8017012C 0016D08C EC A1 00 28 */ fsubs f5, f1, f0 +/* 80170130 0016D090 C0 84 00 40 */ lfs f4, 0x40(r4) +/* 80170134 0016D094 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 80170138 0016D098 EC 02 00 B2 */ fmuls f0, f2, f2 +/* 8017013C 0016D09C C0 64 00 60 */ lfs f3, 0x60(r4) +/* 80170140 0016D0A0 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 80170144 0016D0A4 EC 84 08 28 */ fsubs f4, f4, f1 +/* 80170148 0016D0A8 EC 25 01 72 */ fmuls f1, f5, f5 +/* 8017014C 0016D0AC EC 43 10 28 */ fsubs f2, f3, f2 +/* 80170150 0016D0B0 EC 24 09 3A */ fmadds f1, f4, f4, f1 +/* 80170154 0016D0B4 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 80170158 0016D0B8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017015C 0016D0BC 40 81 00 28 */ ble lbl_80170184 +/* 80170160 0016D0C0 C0 3E 03 D4 */ lfs f1, 0x3d4(r30) +/* 80170164 0016D0C4 C0 1E 03 D0 */ lfs f0, 0x3d0(r30) +/* 80170168 0016D0C8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017016C 0016D0CC 40 81 00 18 */ ble lbl_80170184 +/* 80170170 0016D0D0 38 60 00 01 */ li r3, 1 +/* 80170174 0016D0D4 48 00 00 10 */ b lbl_80170184 +lbl_80170178: +/* 80170178 0016D0D8 38 60 00 01 */ li r3, 1 +/* 8017017C 0016D0DC 48 00 00 08 */ b lbl_80170184 +lbl_80170180: +/* 80170180 0016D0E0 38 60 00 00 */ li r3, 0 +lbl_80170184: +/* 80170184 0016D0E4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80170188 0016D0E8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8017018C 0016D0EC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80170190 0016D0F0 7C 08 03 A6 */ mtlr r0 +/* 80170194 0016D0F4 38 21 00 20 */ addi r1, r1, 0x20 +/* 80170198 0016D0F8 4E 80 00 20 */ blr + +.global ShouldTurn__8CMetroidFR13CStateManagerf +ShouldTurn__8CMetroidFR13CStateManagerf: +/* 8017019C 0016D0FC 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 801701A0 0016D100 7C 08 02 A6 */ mflr r0 +/* 801701A4 0016D104 90 01 00 64 */ stw r0, 0x64(r1) +/* 801701A8 0016D108 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 801701AC 0016D10C 7C 7F 1B 78 */ mr r31, r3 +/* 801701B0 0016D110 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801701B4 0016D114 A0 63 07 B0 */ lhz r3, 0x7b0(r3) +/* 801701B8 0016D118 7C 03 00 40 */ cmplw r3, r0 +/* 801701BC 0016D11C 41 82 00 D4 */ beq lbl_80170290 +/* 801701C0 0016D120 A0 1F 07 B0 */ lhz r0, 0x7b0(r31) +/* 801701C4 0016D124 7C 83 23 78 */ mr r3, r4 +/* 801701C8 0016D128 38 81 00 08 */ addi r4, r1, 8 +/* 801701CC 0016D12C B0 01 00 08 */ sth r0, 8(r1) +/* 801701D0 0016D130 4B ED C3 D5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801701D4 0016D134 7C 64 1B 78 */ mr r4, r3 +/* 801701D8 0016D138 38 61 00 0C */ addi r3, r1, 0xc +/* 801701DC 0016D13C 4B F3 FA B5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801701E0 0016D140 80 83 00 04 */ lwz r4, 4(r3) +/* 801701E4 0016D144 28 04 00 00 */ cmplwi r4, 0 +/* 801701E8 0016D148 41 82 00 A8 */ beq lbl_80170290 +/* 801701EC 0016D14C C0 84 00 50 */ lfs f4, 0x50(r4) +/* 801701F0 0016D150 38 61 00 1C */ addi r3, r1, 0x1c +/* 801701F4 0016D154 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801701F8 0016D158 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 801701FC 0016D15C EC 44 08 28 */ fsubs f2, f4, f1 +/* 80170200 0016D160 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 80170204 0016D164 C0 A4 00 60 */ lfs f5, 0x60(r4) +/* 80170208 0016D168 C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 8017020C 0016D16C EC 20 08 28 */ fsubs f1, f0, f1 +/* 80170210 0016D170 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 80170214 0016D174 EC 65 18 28 */ fsubs f3, f5, f3 +/* 80170218 0016D178 D0 81 00 44 */ stfs f4, 0x44(r1) +/* 8017021C 0016D17C D0 A1 00 48 */ stfs f5, 0x48(r1) +/* 80170220 0016D180 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 80170224 0016D184 D0 41 00 50 */ stfs f2, 0x50(r1) +/* 80170228 0016D188 D0 61 00 54 */ stfs f3, 0x54(r1) +/* 8017022C 0016D18C 48 1A 3F D5 */ bl __ct__9CVector2fFff +/* 80170230 0016D190 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 80170234 0016D194 38 61 00 14 */ addi r3, r1, 0x14 +/* 80170238 0016D198 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 8017023C 0016D19C D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 80170240 0016D1A0 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 80170244 0016D1A4 C0 5F 00 48 */ lfs f2, 0x48(r31) +/* 80170248 0016D1A8 C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 8017024C 0016D1AC C0 1F 00 58 */ lfs f0, 0x58(r31) +/* 80170250 0016D1B0 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 80170254 0016D1B4 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 80170258 0016D1B8 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 8017025C 0016D1BC 48 1A 3F A5 */ bl __ct__9CVector2fFff +/* 80170260 0016D1C0 C0 21 00 14 */ lfs f1, 0x14(r1) +/* 80170264 0016D1C4 38 61 00 24 */ addi r3, r1, 0x24 +/* 80170268 0016D1C8 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 8017026C 0016D1CC 38 81 00 2C */ addi r4, r1, 0x2c +/* 80170270 0016D1D0 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 80170274 0016D1D4 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80170278 0016D1D8 48 1A 3D 4D */ bl GetAngleDiff__9CVector2fFRC9CVector2fRC9CVector2f +/* 8017027C 0016D1DC C0 02 A0 F8 */ lfs f0, lbl_805ABE18@sda21(r2) +/* 80170280 0016D1E0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80170284 0016D1E4 7C 00 00 26 */ mfcr r0 +/* 80170288 0016D1E8 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 8017028C 0016D1EC 48 00 00 08 */ b lbl_80170294 +lbl_80170290: +/* 80170290 0016D1F0 38 60 00 00 */ li r3, 0 +lbl_80170294: +/* 80170294 0016D1F4 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80170298 0016D1F8 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8017029C 0016D1FC 7C 08 03 A6 */ mtlr r0 +/* 801702A0 0016D200 38 21 00 60 */ addi r1, r1, 0x60 +/* 801702A4 0016D204 4E 80 00 20 */ blr + +.global AggressionCheck__8CMetroidFR13CStateManagerf +AggressionCheck__8CMetroidFR13CStateManagerf: +/* 801702A8 0016D208 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801702AC 0016D20C 7C 08 02 A6 */ mflr r0 +/* 801702B0 0016D210 90 01 00 34 */ stw r0, 0x34(r1) +/* 801702B4 0016D214 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801702B8 0016D218 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801702BC 0016D21C 7C 9E 23 78 */ mr r30, r4 +/* 801702C0 0016D220 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801702C4 0016D224 7C 7D 1B 78 */ mr r29, r3 +/* 801702C8 0016D228 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801702CC 0016D22C A0 63 07 B0 */ lhz r3, 0x7b0(r3) +/* 801702D0 0016D230 7C 03 00 40 */ cmplw r3, r0 +/* 801702D4 0016D234 41 82 00 E4 */ beq lbl_801703B8 +/* 801702D8 0016D238 A0 1D 07 B0 */ lhz r0, 0x7b0(r29) +/* 801702DC 0016D23C 7F C3 F3 78 */ mr r3, r30 +/* 801702E0 0016D240 38 81 00 08 */ addi r4, r1, 8 +/* 801702E4 0016D244 B0 01 00 08 */ sth r0, 8(r1) +/* 801702E8 0016D248 4B ED C2 BD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801702EC 0016D24C 7C 64 1B 78 */ mr r4, r3 +/* 801702F0 0016D250 38 61 00 10 */ addi r3, r1, 0x10 +/* 801702F4 0016D254 4B F3 F9 9D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801702F8 0016D258 83 E3 00 04 */ lwz r31, 4(r3) +/* 801702FC 0016D25C 38 61 00 0C */ addi r3, r1, 0xc +/* 80170300 0016D260 7F E4 FB 78 */ mr r4, r31 +/* 80170304 0016D264 4B F3 50 CD */ bl sub_800a53d0 +/* 80170308 0016D268 4B F3 50 9D */ bl "CastTo<12CSpacePirate>__10CPatternedFP7CEntity" +/* 8017030C 0016D26C 7C 64 1B 79 */ or. r4, r3, r3 +/* 80170310 0016D270 41 82 00 28 */ beq lbl_80170338 +/* 80170314 0016D274 7F A3 EB 78 */ mr r3, r29 +/* 80170318 0016D278 7F C5 F3 78 */ mr r5, r30 +/* 8017031C 0016D27C 4B FF DE 5D */ bl sub_8016e178 +/* 80170320 0016D280 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80170324 0016D284 40 82 00 14 */ bne lbl_80170338 +/* 80170328 0016D288 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017032C 0016D28C 38 60 00 00 */ li r3, 0 +/* 80170330 0016D290 B0 1D 07 B0 */ sth r0, 0x7b0(r29) +/* 80170334 0016D294 48 00 00 88 */ b lbl_801703BC +lbl_80170338: +/* 80170338 0016D298 28 1F 00 00 */ cmplwi r31, 0 +/* 8017033C 0016D29C 41 82 00 74 */ beq lbl_801703B0 +/* 80170340 0016D2A0 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 80170344 0016D2A4 C0 1D 00 50 */ lfs f0, 0x50(r29) +/* 80170348 0016D2A8 C0 5D 03 BC */ lfs f2, 0x3bc(r29) +/* 8017034C 0016D2AC EC A1 00 28 */ fsubs f5, f1, f0 +/* 80170350 0016D2B0 C0 9F 00 40 */ lfs f4, 0x40(r31) +/* 80170354 0016D2B4 C0 7D 00 40 */ lfs f3, 0x40(r29) +/* 80170358 0016D2B8 EC 02 00 B2 */ fmuls f0, f2, f2 +/* 8017035C 0016D2BC C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 80170360 0016D2C0 C0 3D 00 60 */ lfs f1, 0x60(r29) +/* 80170364 0016D2C4 EC 64 18 28 */ fsubs f3, f4, f3 +/* 80170368 0016D2C8 EC 42 08 28 */ fsubs f2, f2, f1 +/* 8017036C 0016D2CC EC 25 01 72 */ fmuls f1, f5, f5 +/* 80170370 0016D2D0 EC 42 00 B2 */ fmuls f2, f2, f2 +/* 80170374 0016D2D4 EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 80170378 0016D2D8 EC 22 08 2A */ fadds f1, f2, f1 +/* 8017037C 0016D2DC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80170380 0016D2E0 40 80 00 38 */ bge lbl_801703B8 +/* 80170384 0016D2E4 C0 3D 03 C0 */ lfs f1, 0x3c0(r29) +/* 80170388 0016D2E8 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8017038C 0016D2EC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80170390 0016D2F0 40 81 00 18 */ ble lbl_801703A8 +/* 80170394 0016D2F4 EC 01 00 72 */ fmuls f0, f1, f1 +/* 80170398 0016D2F8 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8017039C 0016D2FC 7C 00 00 26 */ mfcr r0 +/* 801703A0 0016D300 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801703A4 0016D304 48 00 00 18 */ b lbl_801703BC +lbl_801703A8: +/* 801703A8 0016D308 38 60 00 01 */ li r3, 1 +/* 801703AC 0016D30C 48 00 00 10 */ b lbl_801703BC +lbl_801703B0: +/* 801703B0 0016D310 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801703B4 0016D314 B0 1D 07 B0 */ sth r0, 0x7b0(r29) +lbl_801703B8: +/* 801703B8 0016D318 38 60 00 00 */ li r3, 0 +lbl_801703BC: +/* 801703BC 0016D31C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801703C0 0016D320 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801703C4 0016D324 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801703C8 0016D328 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801703CC 0016D32C 7C 08 03 A6 */ mtlr r0 +/* 801703D0 0016D330 38 21 00 30 */ addi r1, r1, 0x30 +/* 801703D4 0016D334 4E 80 00 20 */ blr + +.global SpotPlayer__8CMetroidFR13CStateManagerf +SpotPlayer__8CMetroidFR13CStateManagerf: +/* 801703D8 0016D338 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801703DC 0016D33C 7C 08 02 A6 */ mflr r0 +/* 801703E0 0016D340 90 01 00 54 */ stw r0, 0x54(r1) +/* 801703E4 0016D344 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 801703E8 0016D348 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 801703EC 0016D34C BF 61 00 2C */ stmw r27, 0x2c(r1) +/* 801703F0 0016D350 7C 7E 1B 78 */ mr r30, r3 +/* 801703F4 0016D354 7C 9F 23 78 */ mr r31, r4 +/* 801703F8 0016D358 4B FF 9D 89 */ bl sub_8016a180 +/* 801703FC 0016D35C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80170400 0016D360 40 82 01 28 */ bne lbl_80170528 +/* 80170404 0016D364 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 80170408 0016D368 80 1E 00 04 */ lwz r0, 4(r30) +/* 8017040C 0016D36C 80 64 00 04 */ lwz r3, 4(r4) +/* 80170410 0016D370 7C 03 00 00 */ cmpw r3, r0 +/* 80170414 0016D374 40 82 01 14 */ bne lbl_80170528 +/* 80170418 0016D378 A0 7E 07 B0 */ lhz r3, 0x7b0(r30) +/* 8017041C 0016D37C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80170420 0016D380 7C 03 00 40 */ cmplw r3, r0 +/* 80170424 0016D384 40 82 00 F0 */ bne lbl_80170514 +/* 80170428 0016D388 C0 1E 03 BC */ lfs f0, 0x3bc(r30) +/* 8017042C 0016D38C 7F E3 FB 78 */ mr r3, r31 +/* 80170430 0016D390 A3 A4 00 08 */ lhz r29, 8(r4) +/* 80170434 0016D394 38 81 00 10 */ addi r4, r1, 0x10 +/* 80170438 0016D398 A0 1E 06 98 */ lhz r0, 0x698(r30) +/* 8017043C 0016D39C EF E0 00 32 */ fmuls f31, f0, f0 +/* 80170440 0016D3A0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80170444 0016D3A4 4B ED C1 31 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80170448 0016D3A8 7C 64 1B 78 */ mr r4, r3 +/* 8017044C 0016D3AC 38 61 00 18 */ addi r3, r1, 0x18 +/* 80170450 0016D3B0 4B F3 71 25 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 80170454 0016D3B4 83 63 00 04 */ lwz r27, 4(r3) +/* 80170458 0016D3B8 28 1B 00 00 */ cmplwi r27, 0 +/* 8017045C 0016D3BC 41 82 00 B0 */ beq lbl_8017050C +/* 80170460 0016D3C0 83 9B 00 64 */ lwz r28, 0x64(r27) +/* 80170464 0016D3C4 48 00 00 90 */ b lbl_801704F4 +lbl_80170468: +/* 80170468 0016D3C8 A0 BC 00 00 */ lhz r5, 0(r28) +/* 8017046C 0016D3CC A0 1E 00 08 */ lhz r0, 8(r30) +/* 80170470 0016D3D0 7C 05 00 40 */ cmplw r5, r0 +/* 80170474 0016D3D4 41 82 00 7C */ beq lbl_801704F0 +/* 80170478 0016D3D8 B0 A1 00 08 */ sth r5, 8(r1) +/* 8017047C 0016D3DC 7F E3 FB 78 */ mr r3, r31 +/* 80170480 0016D3E0 38 81 00 0C */ addi r4, r1, 0xc +/* 80170484 0016D3E4 B0 A1 00 0C */ sth r5, 0xc(r1) +/* 80170488 0016D3E8 4B ED C1 1D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017048C 0016D3EC 7C 64 1B 78 */ mr r4, r3 +/* 80170490 0016D3F0 38 61 00 14 */ addi r3, r1, 0x14 +/* 80170494 0016D3F4 4B F3 50 41 */ bl sub_800a54d4 +/* 80170498 0016D3F8 4B F3 50 11 */ bl "CastTo<8CMetroid>__10CPatternedFP7CEntity" +/* 8017049C 0016D3FC 28 03 00 00 */ cmplwi r3, 0 +/* 801704A0 0016D400 41 82 00 50 */ beq lbl_801704F0 +/* 801704A4 0016D404 A0 03 07 B0 */ lhz r0, 0x7b0(r3) +/* 801704A8 0016D408 7C 00 E8 40 */ cmplw r0, r29 +/* 801704AC 0016D40C 40 82 00 44 */ bne lbl_801704F0 +/* 801704B0 0016D410 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801704B4 0016D414 C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 801704B8 0016D418 C0 63 00 40 */ lfs f3, 0x40(r3) +/* 801704BC 0016D41C EC 81 00 28 */ fsubs f4, f1, f0 +/* 801704C0 0016D420 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801704C4 0016D424 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 801704C8 0016D428 EC 63 00 28 */ fsubs f3, f3, f0 +/* 801704CC 0016D42C C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 801704D0 0016D430 EC 04 01 32 */ fmuls f0, f4, f4 +/* 801704D4 0016D434 EC 22 08 28 */ fsubs f1, f2, f1 +/* 801704D8 0016D438 EC 03 00 FA */ fmadds f0, f3, f3, f0 +/* 801704DC 0016D43C EC 01 00 7A */ fmadds f0, f1, f1, f0 +/* 801704E0 0016D440 FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 801704E4 0016D444 40 80 00 0C */ bge lbl_801704F0 +/* 801704E8 0016D448 38 60 00 01 */ li r3, 1 +/* 801704EC 0016D44C 48 00 00 40 */ b lbl_8017052C +lbl_801704F0: +/* 801704F0 0016D450 3B 9C 00 28 */ addi r28, r28, 0x28 +lbl_801704F4: +/* 801704F4 0016D454 80 1B 00 5C */ lwz r0, 0x5c(r27) +/* 801704F8 0016D458 80 7B 00 64 */ lwz r3, 0x64(r27) +/* 801704FC 0016D45C 1C 00 00 28 */ mulli r0, r0, 0x28 +/* 80170500 0016D460 7C 03 02 14 */ add r0, r3, r0 +/* 80170504 0016D464 7C 1C 00 40 */ cmplw r28, r0 +/* 80170508 0016D468 40 82 FF 60 */ bne lbl_80170468 +lbl_8017050C: +/* 8017050C 0016D46C 38 60 00 00 */ li r3, 0 +/* 80170510 0016D470 48 00 00 1C */ b lbl_8017052C +lbl_80170514: +/* 80170514 0016D474 A0 04 00 08 */ lhz r0, 8(r4) +/* 80170518 0016D478 7C 00 18 50 */ subf r0, r0, r3 +/* 8017051C 0016D47C 7C 00 00 34 */ cntlzw r0, r0 +/* 80170520 0016D480 54 03 D9 7E */ srwi r3, r0, 5 +/* 80170524 0016D484 48 00 00 08 */ b lbl_8017052C +lbl_80170528: +/* 80170528 0016D488 38 60 00 00 */ li r3, 0 +lbl_8017052C: +/* 8017052C 0016D48C E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 80170530 0016D490 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 80170534 0016D494 BB 61 00 2C */ lmw r27, 0x2c(r1) +/* 80170538 0016D498 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8017053C 0016D49C 7C 08 03 A6 */ mtlr r0 +/* 80170540 0016D4A0 38 21 00 50 */ addi r1, r1, 0x50 +/* 80170544 0016D4A4 4E 80 00 20 */ blr + +.global InDetectionRange__8CMetroidFR13CStateManagerf +InDetectionRange__8CMetroidFR13CStateManagerf: +/* 80170548 0016D4A8 94 21 F7 50 */ stwu r1, -0x8b0(r1) +/* 8017054C 0016D4AC 7C 08 02 A6 */ mflr r0 +/* 80170550 0016D4B0 90 01 08 B4 */ stw r0, 0x8b4(r1) +/* 80170554 0016D4B4 BF 61 08 9C */ stmw r27, 0x89c(r1) +/* 80170558 0016D4B8 7C 7E 1B 78 */ mr r30, r3 +/* 8017055C 0016D4BC 7C 9F 23 78 */ mr r31, r4 +/* 80170560 0016D4C0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80170564 0016D4C4 A0 C3 07 B0 */ lhz r6, 0x7b0(r3) +/* 80170568 0016D4C8 7C 06 00 40 */ cmplw r6, r0 +/* 8017056C 0016D4CC 40 82 02 28 */ bne lbl_80170794 +/* 80170570 0016D4D0 88 1E 09 BF */ lbz r0, 0x9bf(r30) +/* 80170574 0016D4D4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80170578 0016D4D8 40 82 00 10 */ bne lbl_80170588 +/* 8017057C 0016D4DC 48 08 5D F1 */ bl InDetectionRange__10CPatternedFR13CStateManagerf +/* 80170580 0016D4E0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80170584 0016D4E4 41 82 00 34 */ beq lbl_801705B8 +lbl_80170588: +/* 80170588 0016D4E8 7F C3 F3 78 */ mr r3, r30 +/* 8017058C 0016D4EC 7F E4 FB 78 */ mr r4, r31 +/* 80170590 0016D4F0 4B FF 9B F1 */ bl sub_8016a180 +/* 80170594 0016D4F4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80170598 0016D4F8 40 82 00 20 */ bne lbl_801705B8 +/* 8017059C 0016D4FC 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801705A0 0016D500 80 1E 00 04 */ lwz r0, 4(r30) +/* 801705A4 0016D504 80 63 00 04 */ lwz r3, 4(r3) +/* 801705A8 0016D508 7C 03 00 00 */ cmpw r3, r0 +/* 801705AC 0016D50C 40 82 00 0C */ bne lbl_801705B8 +/* 801705B0 0016D510 38 60 00 01 */ li r3, 1 +/* 801705B4 0016D514 48 00 02 B0 */ b lbl_80170864 +lbl_801705B8: +/* 801705B8 0016D518 C0 FE 03 BC */ lfs f7, 0x3bc(r30) +/* 801705BC 0016D51C 38 61 00 70 */ addi r3, r1, 0x70 +/* 801705C0 0016D520 C0 DE 00 60 */ lfs f6, 0x60(r30) +/* 801705C4 0016D524 38 81 00 30 */ addi r4, r1, 0x30 +/* 801705C8 0016D528 C0 BE 00 50 */ lfs f5, 0x50(r30) +/* 801705CC 0016D52C 38 A1 00 24 */ addi r5, r1, 0x24 +/* 801705D0 0016D530 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 801705D4 0016D534 EC 06 38 2A */ fadds f0, f6, f7 +/* 801705D8 0016D538 EC 65 38 2A */ fadds f3, f5, f7 +/* 801705DC 0016D53C EC 81 38 2A */ fadds f4, f1, f7 +/* 801705E0 0016D540 EC 41 38 28 */ fsubs f2, f1, f7 +/* 801705E4 0016D544 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801705E8 0016D548 EC 25 38 28 */ fsubs f1, f5, f7 +/* 801705EC 0016D54C EC 06 38 28 */ fsubs f0, f6, f7 +/* 801705F0 0016D550 D0 81 00 24 */ stfs f4, 0x24(r1) +/* 801705F4 0016D554 D0 61 00 28 */ stfs f3, 0x28(r1) +/* 801705F8 0016D558 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 801705FC 0016D55C D0 21 00 34 */ stfs f1, 0x34(r1) +/* 80170600 0016D560 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 80170604 0016D564 48 1C 7F 05 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 80170608 0016D568 80 AD 8D B0 */ lwz r5, lbl_805A7970@sda21(r13) +/* 8017060C 0016D56C 38 60 00 00 */ li r3, 0 +/* 80170610 0016D570 38 80 00 01 */ li r4, 1 +/* 80170614 0016D574 48 21 98 E1 */ bl __shl2i +/* 80170618 0016D578 38 00 00 00 */ li r0, 0 +/* 8017061C 0016D57C 39 00 00 01 */ li r8, 1 +/* 80170620 0016D580 90 81 00 5C */ stw r4, 0x5c(r1) +/* 80170624 0016D584 38 81 00 88 */ addi r4, r1, 0x88 +/* 80170628 0016D588 38 A1 00 70 */ addi r5, r1, 0x70 +/* 8017062C 0016D58C 38 C1 00 58 */ addi r6, r1, 0x58 +/* 80170630 0016D590 90 61 00 58 */ stw r3, 0x58(r1) +/* 80170634 0016D594 7F E3 FB 78 */ mr r3, r31 +/* 80170638 0016D598 38 E0 00 00 */ li r7, 0 +/* 8017063C 0016D59C 91 01 00 50 */ stw r8, 0x50(r1) +/* 80170640 0016D5A0 90 01 00 64 */ stw r0, 0x64(r1) +/* 80170644 0016D5A4 90 01 00 60 */ stw r0, 0x60(r1) +/* 80170648 0016D5A8 91 01 00 68 */ stw r8, 0x68(r1) +/* 8017064C 0016D5AC 90 01 00 88 */ stw r0, 0x88(r1) +/* 80170650 0016D5B0 4B ED C0 D1 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 80170654 0016D5B4 80 01 00 88 */ lwz r0, 0x88(r1) +/* 80170658 0016D5B8 2C 00 00 00 */ cmpwi r0, 0 +/* 8017065C 0016D5BC 41 82 00 E0 */ beq lbl_8017073C +/* 80170660 0016D5C0 3B A1 00 8C */ addi r29, r1, 0x8c +/* 80170664 0016D5C4 7F BC EB 78 */ mr r28, r29 +/* 80170668 0016D5C8 48 00 00 C0 */ b lbl_80170728 +lbl_8017066C: +/* 8017066C 0016D5CC A0 1C 00 00 */ lhz r0, 0(r28) +/* 80170670 0016D5D0 7F E3 FB 78 */ mr r3, r31 +/* 80170674 0016D5D4 38 81 00 14 */ addi r4, r1, 0x14 +/* 80170678 0016D5D8 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8017067C 0016D5DC 4B ED BE F9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80170680 0016D5E0 7C 64 1B 78 */ mr r4, r3 +/* 80170684 0016D5E4 38 61 00 18 */ addi r3, r1, 0x18 +/* 80170688 0016D5E8 4B F3 4D 49 */ bl sub_800a53d0 +/* 8017068C 0016D5EC 4B F3 4D 19 */ bl "CastTo<12CSpacePirate>__10CPatternedFP7CEntity" +/* 80170690 0016D5F0 7C 7B 1B 79 */ or. r27, r3, r3 +/* 80170694 0016D5F4 41 82 00 90 */ beq lbl_80170724 +/* 80170698 0016D5F8 7F C3 F3 78 */ mr r3, r30 +/* 8017069C 0016D5FC 7F 64 DB 78 */ mr r4, r27 +/* 801706A0 0016D600 7F E5 FB 78 */ mr r5, r31 +/* 801706A4 0016D604 4B FF DA D5 */ bl sub_8016e178 +/* 801706A8 0016D608 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801706AC 0016D60C 41 82 00 78 */ beq lbl_80170724 +/* 801706B0 0016D610 A0 1E 00 08 */ lhz r0, 8(r30) +/* 801706B4 0016D614 7F 63 DB 78 */ mr r3, r27 +/* 801706B8 0016D618 38 81 00 10 */ addi r4, r1, 0x10 +/* 801706BC 0016D61C B0 01 00 0C */ sth r0, 0xc(r1) +/* 801706C0 0016D620 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801706C4 0016D624 4B FB 91 7D */ bl SetAttackTarget__12CSpacePirateF9TUniqueId +/* 801706C8 0016D628 80 A1 00 88 */ lwz r5, 0x88(r1) +/* 801706CC 0016D62C 38 60 00 00 */ li r3, 0 +/* 801706D0 0016D630 2C 05 00 00 */ cmpwi r5, 0 +/* 801706D4 0016D634 40 81 00 40 */ ble lbl_80170714 +/* 801706D8 0016D638 2C 05 00 08 */ cmpwi r5, 8 +/* 801706DC 0016D63C 38 85 FF F8 */ addi r4, r5, -8 +/* 801706E0 0016D640 40 81 00 20 */ ble lbl_80170700 +/* 801706E4 0016D644 38 04 00 07 */ addi r0, r4, 7 +/* 801706E8 0016D648 54 00 E8 FE */ srwi r0, r0, 3 +/* 801706EC 0016D64C 7C 09 03 A6 */ mtctr r0 +/* 801706F0 0016D650 2C 04 00 00 */ cmpwi r4, 0 +/* 801706F4 0016D654 40 81 00 0C */ ble lbl_80170700 +lbl_801706F8: +/* 801706F8 0016D658 38 63 00 08 */ addi r3, r3, 8 +/* 801706FC 0016D65C 42 00 FF FC */ bdnz lbl_801706F8 +lbl_80170700: +/* 80170700 0016D660 7C 03 28 50 */ subf r0, r3, r5 +/* 80170704 0016D664 7C 09 03 A6 */ mtctr r0 +/* 80170708 0016D668 7C 03 28 00 */ cmpw r3, r5 +/* 8017070C 0016D66C 40 80 00 08 */ bge lbl_80170714 +lbl_80170710: +/* 80170710 0016D670 42 00 00 00 */ bdnz lbl_80170710 +lbl_80170714: +/* 80170714 0016D674 38 00 00 00 */ li r0, 0 +/* 80170718 0016D678 38 60 00 01 */ li r3, 1 +/* 8017071C 0016D67C 90 01 00 88 */ stw r0, 0x88(r1) +/* 80170720 0016D680 48 00 01 44 */ b lbl_80170864 +lbl_80170724: +/* 80170724 0016D684 3B 9C 00 02 */ addi r28, r28, 2 +lbl_80170728: +/* 80170728 0016D688 80 01 00 88 */ lwz r0, 0x88(r1) +/* 8017072C 0016D68C 54 00 08 3C */ slwi r0, r0, 1 +/* 80170730 0016D690 7C 1D 02 14 */ add r0, r29, r0 +/* 80170734 0016D694 7C 1C 00 40 */ cmplw r28, r0 +/* 80170738 0016D698 40 82 FF 34 */ bne lbl_8017066C +lbl_8017073C: +/* 8017073C 0016D69C 80 A1 00 88 */ lwz r5, 0x88(r1) +/* 80170740 0016D6A0 38 60 00 00 */ li r3, 0 +/* 80170744 0016D6A4 2C 05 00 00 */ cmpwi r5, 0 +/* 80170748 0016D6A8 40 81 00 40 */ ble lbl_80170788 +/* 8017074C 0016D6AC 2C 05 00 08 */ cmpwi r5, 8 +/* 80170750 0016D6B0 38 85 FF F8 */ addi r4, r5, -8 +/* 80170754 0016D6B4 40 81 00 20 */ ble lbl_80170774 +/* 80170758 0016D6B8 38 04 00 07 */ addi r0, r4, 7 +/* 8017075C 0016D6BC 54 00 E8 FE */ srwi r0, r0, 3 +/* 80170760 0016D6C0 7C 09 03 A6 */ mtctr r0 +/* 80170764 0016D6C4 2C 04 00 00 */ cmpwi r4, 0 +/* 80170768 0016D6C8 40 81 00 0C */ ble lbl_80170774 +lbl_8017076C: +/* 8017076C 0016D6CC 38 63 00 08 */ addi r3, r3, 8 +/* 80170770 0016D6D0 42 00 FF FC */ bdnz lbl_8017076C +lbl_80170774: +/* 80170774 0016D6D4 7C 03 28 50 */ subf r0, r3, r5 +/* 80170778 0016D6D8 7C 09 03 A6 */ mtctr r0 +/* 8017077C 0016D6DC 7C 03 28 00 */ cmpw r3, r5 +/* 80170780 0016D6E0 40 80 00 08 */ bge lbl_80170788 +lbl_80170784: +/* 80170784 0016D6E4 42 00 00 00 */ bdnz lbl_80170784 +lbl_80170788: +/* 80170788 0016D6E8 38 00 00 00 */ li r0, 0 +/* 8017078C 0016D6EC 90 01 00 88 */ stw r0, 0x88(r1) +/* 80170790 0016D6F0 48 00 00 D0 */ b lbl_80170860 +lbl_80170794: +/* 80170794 0016D6F4 80 BF 08 4C */ lwz r5, 0x84c(r31) +/* 80170798 0016D6F8 A0 05 00 08 */ lhz r0, 8(r5) +/* 8017079C 0016D6FC 7C 06 00 40 */ cmplw r6, r0 +/* 801707A0 0016D700 40 82 00 2C */ bne lbl_801707CC +/* 801707A4 0016D704 4B FF 99 DD */ bl sub_8016a180 +/* 801707A8 0016D708 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801707AC 0016D70C 40 82 00 18 */ bne lbl_801707C4 +/* 801707B0 0016D710 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 801707B4 0016D714 80 1E 00 04 */ lwz r0, 4(r30) +/* 801707B8 0016D718 80 63 00 04 */ lwz r3, 4(r3) +/* 801707BC 0016D71C 7C 03 00 00 */ cmpw r3, r0 +/* 801707C0 0016D720 41 82 00 0C */ beq lbl_801707CC +lbl_801707C4: +/* 801707C4 0016D724 38 60 00 00 */ li r3, 0 +/* 801707C8 0016D728 48 00 00 9C */ b lbl_80170864 +lbl_801707CC: +/* 801707CC 0016D72C A0 1E 07 B0 */ lhz r0, 0x7b0(r30) +/* 801707D0 0016D730 7F E3 FB 78 */ mr r3, r31 +/* 801707D4 0016D734 38 81 00 08 */ addi r4, r1, 8 +/* 801707D8 0016D738 B0 01 00 08 */ sth r0, 8(r1) +/* 801707DC 0016D73C 4B ED BD C9 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801707E0 0016D740 7C 64 1B 78 */ mr r4, r3 +/* 801707E4 0016D744 38 61 00 1C */ addi r3, r1, 0x1c +/* 801707E8 0016D748 4B F3 F4 A9 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801707EC 0016D74C 80 63 00 04 */ lwz r3, 4(r3) +/* 801707F0 0016D750 28 03 00 00 */ cmplwi r3, 0 +/* 801707F4 0016D754 41 82 00 6C */ beq lbl_80170860 +/* 801707F8 0016D758 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 801707FC 0016D75C C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 80170800 0016D760 C0 5E 03 BC */ lfs f2, 0x3bc(r30) +/* 80170804 0016D764 EC A1 00 28 */ fsubs f5, f1, f0 +/* 80170808 0016D768 C0 83 00 40 */ lfs f4, 0x40(r3) +/* 8017080C 0016D76C C0 7E 00 40 */ lfs f3, 0x40(r30) +/* 80170810 0016D770 EC 02 00 B2 */ fmuls f0, f2, f2 +/* 80170814 0016D774 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 80170818 0016D778 C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 8017081C 0016D77C EC 64 18 28 */ fsubs f3, f4, f3 +/* 80170820 0016D780 C0 9E 03 C0 */ lfs f4, 0x3c0(r30) +/* 80170824 0016D784 EC 42 08 28 */ fsubs f2, f2, f1 +/* 80170828 0016D788 EC 25 01 72 */ fmuls f1, f5, f5 +/* 8017082C 0016D78C EC 42 00 B2 */ fmuls f2, f2, f2 +/* 80170830 0016D790 EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 80170834 0016D794 EC 22 08 2A */ fadds f1, f2, f1 +/* 80170838 0016D798 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017083C 0016D79C 40 80 00 24 */ bge lbl_80170860 +/* 80170840 0016D7A0 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 80170844 0016D7A4 FC 04 00 40 */ fcmpo cr0, f4, f0 +/* 80170848 0016D7A8 40 81 00 18 */ ble lbl_80170860 +/* 8017084C 0016D7AC EC 04 01 32 */ fmuls f0, f4, f4 +/* 80170850 0016D7B0 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80170854 0016D7B4 7C 00 00 26 */ mfcr r0 +/* 80170858 0016D7B8 54 03 0F FE */ srwi r3, r0, 0x1f +/* 8017085C 0016D7BC 48 00 00 08 */ b lbl_80170864 +lbl_80170860: +/* 80170860 0016D7C0 38 60 00 00 */ li r3, 0 +lbl_80170864: +/* 80170864 0016D7C4 BB 61 08 9C */ lmw r27, 0x89c(r1) +/* 80170868 0016D7C8 80 01 08 B4 */ lwz r0, 0x8b4(r1) +/* 8017086C 0016D7CC 7C 08 03 A6 */ mtlr r0 +/* 80170870 0016D7D0 38 21 08 B0 */ addi r1, r1, 0x8b0 +/* 80170874 0016D7D4 4E 80 00 20 */ blr + +.global InRange__8CMetroidFR13CStateManagerf +InRange__8CMetroidFR13CStateManagerf: +/* 80170878 0016D7D8 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8017087C 0016D7DC 7C 08 02 A6 */ mflr r0 +/* 80170880 0016D7E0 90 01 00 44 */ stw r0, 0x44(r1) +/* 80170884 0016D7E4 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80170888 0016D7E8 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8017088C 0016D7EC 7C 9E 23 78 */ mr r30, r4 +/* 80170890 0016D7F0 93 A1 00 34 */ stw r29, 0x34(r1) +/* 80170894 0016D7F4 7C 7D 1B 78 */ mr r29, r3 +/* 80170898 0016D7F8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017089C 0016D7FC A0 63 07 B0 */ lhz r3, 0x7b0(r3) +/* 801708A0 0016D800 7C 03 00 40 */ cmplw r3, r0 +/* 801708A4 0016D804 41 82 00 CC */ beq lbl_80170970 +/* 801708A8 0016D808 A0 1D 07 B0 */ lhz r0, 0x7b0(r29) +/* 801708AC 0016D80C 7F C3 F3 78 */ mr r3, r30 +/* 801708B0 0016D810 38 81 00 08 */ addi r4, r1, 8 +/* 801708B4 0016D814 B0 01 00 08 */ sth r0, 8(r1) +/* 801708B8 0016D818 4B ED BC ED */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801708BC 0016D81C 7C 64 1B 78 */ mr r4, r3 +/* 801708C0 0016D820 38 61 00 10 */ addi r3, r1, 0x10 +/* 801708C4 0016D824 4B F3 F3 CD */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801708C8 0016D828 83 E3 00 04 */ lwz r31, 4(r3) +/* 801708CC 0016D82C 28 1F 00 00 */ cmplwi r31, 0 +/* 801708D0 0016D830 41 82 00 A0 */ beq lbl_80170970 +/* 801708D4 0016D834 7F E4 FB 78 */ mr r4, r31 +/* 801708D8 0016D838 38 61 00 0C */ addi r3, r1, 0xc +/* 801708DC 0016D83C 4B F3 4A F5 */ bl sub_800a53d0 +/* 801708E0 0016D840 4B F3 4A C5 */ bl "CastTo<12CSpacePirate>__10CPatternedFP7CEntity" +/* 801708E4 0016D844 7C 64 1B 79 */ or. r4, r3, r3 +/* 801708E8 0016D848 41 82 00 20 */ beq lbl_80170908 +/* 801708EC 0016D84C 7F A3 EB 78 */ mr r3, r29 +/* 801708F0 0016D850 7F C5 F3 78 */ mr r5, r30 +/* 801708F4 0016D854 4B FF D8 85 */ bl sub_8016e178 +/* 801708F8 0016D858 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801708FC 0016D85C 40 82 00 0C */ bne lbl_80170908 +/* 80170900 0016D860 38 60 00 00 */ li r3, 0 +/* 80170904 0016D864 48 00 00 70 */ b lbl_80170974 +lbl_80170908: +/* 80170908 0016D868 C0 FF 00 50 */ lfs f7, 0x50(r31) +/* 8017090C 0016D86C C0 1D 00 50 */ lfs f0, 0x50(r29) +/* 80170910 0016D870 C0 7F 00 40 */ lfs f3, 0x40(r31) +/* 80170914 0016D874 EC C7 00 28 */ fsubs f6, f7, f0 +/* 80170918 0016D878 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 8017091C 0016D87C C1 1F 00 60 */ lfs f8, 0x60(r31) +/* 80170920 0016D880 EC 83 00 28 */ fsubs f4, f3, f0 +/* 80170924 0016D884 C0 1D 00 60 */ lfs f0, 0x60(r29) +/* 80170928 0016D888 EC 26 01 B2 */ fmuls f1, f6, f6 +/* 8017092C 0016D88C EC A8 00 28 */ fsubs f5, f8, f0 +/* 80170930 0016D890 C0 1D 03 00 */ lfs f0, 0x300(r29) +/* 80170934 0016D894 EC 44 01 32 */ fmuls f2, f4, f4 +/* 80170938 0016D898 EC 00 00 32 */ fmuls f0, f0, f0 +/* 8017093C 0016D89C D0 61 00 18 */ stfs f3, 0x18(r1) +/* 80170940 0016D8A0 EC 65 01 72 */ fmuls f3, f5, f5 +/* 80170944 0016D8A4 EC 22 08 2A */ fadds f1, f2, f1 +/* 80170948 0016D8A8 D0 E1 00 1C */ stfs f7, 0x1c(r1) +/* 8017094C 0016D8AC D1 01 00 20 */ stfs f8, 0x20(r1) +/* 80170950 0016D8B0 EC 23 08 2A */ fadds f1, f3, f1 +/* 80170954 0016D8B4 D0 81 00 24 */ stfs f4, 0x24(r1) +/* 80170958 0016D8B8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017095C 0016D8BC D0 C1 00 28 */ stfs f6, 0x28(r1) +/* 80170960 0016D8C0 D0 A1 00 2C */ stfs f5, 0x2c(r1) +/* 80170964 0016D8C4 7C 00 00 26 */ mfcr r0 +/* 80170968 0016D8C8 54 03 0F FE */ srwi r3, r0, 0x1f +/* 8017096C 0016D8CC 48 00 00 08 */ b lbl_80170974 +lbl_80170970: +/* 80170970 0016D8D0 38 60 00 00 */ li r3, 0 +lbl_80170974: +/* 80170974 0016D8D4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80170978 0016D8D8 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8017097C 0016D8DC 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80170980 0016D8E0 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 80170984 0016D8E4 7C 08 03 A6 */ mtlr r0 +/* 80170988 0016D8E8 38 21 00 40 */ addi r1, r1, 0x40 +/* 8017098C 0016D8EC 4E 80 00 20 */ blr + +.global InPosition__8CMetroidFR13CStateManagerf +InPosition__8CMetroidFR13CStateManagerf: +/* 80170990 0016D8F0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80170994 0016D8F4 7C 08 02 A6 */ mflr r0 +/* 80170998 0016D8F8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8017099C 0016D8FC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801709A0 0016D900 7C 7F 1B 78 */ mr r31, r3 +/* 801709A4 0016D904 81 83 00 00 */ lwz r12, 0(r3) +/* 801709A8 0016D908 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801709AC 0016D90C 7D 89 03 A6 */ mtctr r12 +/* 801709B0 0016D910 4E 80 04 21 */ bctrl +/* 801709B4 0016D914 28 03 00 00 */ cmplwi r3, 0 +/* 801709B8 0016D918 41 82 00 38 */ beq lbl_801709F0 +/* 801709BC 0016D91C 7F E3 FB 78 */ mr r3, r31 +/* 801709C0 0016D920 81 9F 00 00 */ lwz r12, 0(r31) +/* 801709C4 0016D924 81 8C 02 AC */ lwz r12, 0x2ac(r12) +/* 801709C8 0016D928 7D 89 03 A6 */ mtctr r12 +/* 801709CC 0016D92C 4E 80 04 21 */ bctrl +/* 801709D0 0016D930 80 A3 00 C8 */ lwz r5, 0xc8(r3) +/* 801709D4 0016D934 80 63 00 04 */ lwz r3, 4(r3) +/* 801709D8 0016D938 7C A4 FE 70 */ srawi r4, r5, 0x1f +/* 801709DC 0016D93C 38 03 FF FF */ addi r0, r3, -1 +/* 801709E0 0016D940 54 03 0F FE */ srwi r3, r0, 0x1f +/* 801709E4 0016D944 7C 00 28 10 */ subfc r0, r0, r5 +/* 801709E8 0016D948 7C 64 19 14 */ adde r3, r4, r3 +/* 801709EC 0016D94C 48 00 00 44 */ b lbl_80170A30 +lbl_801709F0: +/* 801709F0 0016D950 C0 3F 07 A8 */ lfs f1, 0x7a8(r31) +/* 801709F4 0016D954 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 801709F8 0016D958 C0 7F 07 A4 */ lfs f3, 0x7a4(r31) +/* 801709FC 0016D95C EC 21 00 28 */ fsubs f1, f1, f0 +/* 80170A00 0016D960 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 80170A04 0016D964 C0 5F 07 AC */ lfs f2, 0x7ac(r31) +/* 80170A08 0016D968 EC 63 00 28 */ fsubs f3, f3, f0 +/* 80170A0C 0016D96C C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 80170A10 0016D970 EC 21 00 72 */ fmuls f1, f1, f1 +/* 80170A14 0016D974 EC 42 00 28 */ fsubs f2, f2, f0 +/* 80170A18 0016D978 C0 02 A0 DC */ lfs f0, lbl_805ABDFC@sda21(r2) +/* 80170A1C 0016D97C EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 80170A20 0016D980 EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 80170A24 0016D984 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80170A28 0016D988 7C 00 00 26 */ mfcr r0 +/* 80170A2C 0016D98C 54 03 0F FE */ srwi r3, r0, 0x1f +lbl_80170A30: +/* 80170A30 0016D990 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80170A34 0016D994 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80170A38 0016D998 7C 08 03 A6 */ mtlr r0 +/* 80170A3C 0016D99C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80170A40 0016D9A0 4E 80 00 20 */ blr + +.global InAttackPosition__8CMetroidFR13CStateManagerf +InAttackPosition__8CMetroidFR13CStateManagerf: +/* 80170A44 0016D9A4 94 21 FE B0 */ stwu r1, -0x150(r1) +/* 80170A48 0016D9A8 7C 08 02 A6 */ mflr r0 +/* 80170A4C 0016D9AC 90 01 01 54 */ stw r0, 0x154(r1) +/* 80170A50 0016D9B0 DB E1 01 40 */ stfd f31, 0x140(r1) +/* 80170A54 0016D9B4 F3 E1 01 48 */ psq_st f31, 328(r1), 0, qr0 +/* 80170A58 0016D9B8 DB C1 01 30 */ stfd f30, 0x130(r1) +/* 80170A5C 0016D9BC F3 C1 01 38 */ psq_st f30, 312(r1), 0, qr0 +/* 80170A60 0016D9C0 DB A1 01 20 */ stfd f29, 0x120(r1) +/* 80170A64 0016D9C4 F3 A1 01 28 */ psq_st f29, 296(r1), 0, qr0 +/* 80170A68 0016D9C8 DB 81 01 10 */ stfd f28, 0x110(r1) +/* 80170A6C 0016D9CC F3 81 01 18 */ psq_st f28, 280(r1), 0, qr0 +/* 80170A70 0016D9D0 DB 61 01 00 */ stfd f27, 0x100(r1) +/* 80170A74 0016D9D4 F3 61 01 08 */ psq_st f27, 264(r1), 0, qr0 +/* 80170A78 0016D9D8 DB 41 00 F0 */ stfd f26, 0xf0(r1) +/* 80170A7C 0016D9DC F3 41 00 F8 */ psq_st f26, 248(r1), 0, qr0 +/* 80170A80 0016D9E0 93 E1 00 EC */ stw r31, 0xec(r1) +/* 80170A84 0016D9E4 93 C1 00 E8 */ stw r30, 0xe8(r1) +/* 80170A88 0016D9E8 93 A1 00 E4 */ stw r29, 0xe4(r1) +/* 80170A8C 0016D9EC 93 81 00 E0 */ stw r28, 0xe0(r1) +/* 80170A90 0016D9F0 7C 7E 1B 78 */ mr r30, r3 +/* 80170A94 0016D9F4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80170A98 0016D9F8 A0 63 07 B0 */ lhz r3, 0x7b0(r3) +/* 80170A9C 0016D9FC 7C 9F 23 78 */ mr r31, r4 +/* 80170AA0 0016DA00 7C 03 00 40 */ cmplw r3, r0 +/* 80170AA4 0016DA04 41 82 02 DC */ beq lbl_80170D80 +/* 80170AA8 0016DA08 A0 1E 07 B0 */ lhz r0, 0x7b0(r30) +/* 80170AAC 0016DA0C 7F E3 FB 78 */ mr r3, r31 +/* 80170AB0 0016DA10 38 81 00 08 */ addi r4, r1, 8 +/* 80170AB4 0016DA14 B0 01 00 08 */ sth r0, 8(r1) +/* 80170AB8 0016DA18 4B ED BA ED */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80170ABC 0016DA1C 7C 7D 1B 79 */ or. r29, r3, r3 +/* 80170AC0 0016DA20 41 82 02 C0 */ beq lbl_80170D80 +/* 80170AC4 0016DA24 80 7D 00 04 */ lwz r3, 4(r29) +/* 80170AC8 0016DA28 80 1E 00 04 */ lwz r0, 4(r30) +/* 80170ACC 0016DA2C 7C 03 00 00 */ cmpw r3, r0 +/* 80170AD0 0016DA30 40 82 02 B0 */ bne lbl_80170D80 +/* 80170AD4 0016DA34 83 9F 08 4C */ lwz r28, 0x84c(r31) +/* 80170AD8 0016DA38 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 80170ADC 0016DA3C C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 80170AE0 0016DA40 C0 7E 00 50 */ lfs f3, 0x50(r30) +/* 80170AE4 0016DA44 C0 5D 00 50 */ lfs f2, 0x50(r29) +/* 80170AE8 0016DA48 EF A1 00 28 */ fsubs f29, f1, f0 +/* 80170AEC 0016DA4C C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 80170AF0 0016DA50 C0 1D 00 60 */ lfs f0, 0x60(r29) +/* 80170AF4 0016DA54 EF C3 10 28 */ fsubs f30, f3, f2 +/* 80170AF8 0016DA58 A0 7C 00 08 */ lhz r3, 8(r28) +/* 80170AFC 0016DA5C A0 1E 07 B0 */ lhz r0, 0x7b0(r30) +/* 80170B00 0016DA60 EF E1 00 28 */ fsubs f31, f1, f0 +/* 80170B04 0016DA64 C3 7D 00 48 */ lfs f27, 0x48(r29) +/* 80170B08 0016DA68 7C 03 00 40 */ cmplw r3, r0 +/* 80170B0C 0016DA6C C3 9D 00 38 */ lfs f28, 0x38(r29) +/* 80170B10 0016DA70 C3 42 A0 94 */ lfs f26, lbl_805ABDB4@sda21(r2) +/* 80170B14 0016DA74 40 82 00 3C */ bne lbl_80170B50 +/* 80170B18 0016DA78 7F C3 F3 78 */ mr r3, r30 +/* 80170B1C 0016DA7C 7F E4 FB 78 */ mr r4, r31 +/* 80170B20 0016DA80 4B FF 96 61 */ bl sub_8016a180 +/* 80170B24 0016DA84 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80170B28 0016DA88 41 82 00 0C */ beq lbl_80170B34 +/* 80170B2C 0016DA8C 38 60 00 00 */ li r3, 0 +/* 80170B30 0016DA90 48 00 02 54 */ b lbl_80170D84 +lbl_80170B34: +/* 80170B34 0016DA94 80 1C 02 F8 */ lwz r0, 0x2f8(r28) +/* 80170B38 0016DA98 2C 00 00 01 */ cmpwi r0, 1 +/* 80170B3C 0016DA9C 41 82 00 14 */ beq lbl_80170B50 +/* 80170B40 0016DAA0 88 1E 09 BF */ lbz r0, 0x9bf(r30) +/* 80170B44 0016DAA4 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 80170B48 0016DAA8 40 82 00 08 */ bne lbl_80170B50 +/* 80170B4C 0016DAAC C3 42 A0 FC */ lfs f26, lbl_805ABE1C@sda21(r2) +lbl_80170B50: +/* 80170B50 0016DAB0 FC 20 E0 90 */ fmr f1, f28 +/* 80170B54 0016DAB4 38 61 00 0C */ addi r3, r1, 0xc +/* 80170B58 0016DAB8 FC 40 D8 90 */ fmr f2, f27 +/* 80170B5C 0016DABC 48 1A 36 A5 */ bl __ct__9CVector2fFff +/* 80170B60 0016DAC0 FC 20 E8 90 */ fmr f1, f29 +/* 80170B64 0016DAC4 38 61 00 14 */ addi r3, r1, 0x14 +/* 80170B68 0016DAC8 FC 40 F0 90 */ fmr f2, f30 +/* 80170B6C 0016DACC 48 1A 36 95 */ bl __ct__9CVector2fFff +/* 80170B70 0016DAD0 38 61 00 14 */ addi r3, r1, 0x14 +/* 80170B74 0016DAD4 38 81 00 0C */ addi r4, r1, 0xc +/* 80170B78 0016DAD8 48 1A 34 4D */ bl GetAngleDiff__9CVector2fFRC9CVector2fRC9CVector2f +/* 80170B7C 0016DADC FC 01 D0 40 */ fcmpo cr0, f1, f26 +/* 80170B80 0016DAE0 40 80 02 00 */ bge lbl_80170D80 +/* 80170B84 0016DAE4 C0 7E 00 48 */ lfs f3, 0x48(r30) +/* 80170B88 0016DAE8 C0 5E 00 38 */ lfs f2, 0x38(r30) +/* 80170B8C 0016DAEC EC 3E 00 F2 */ fmuls f1, f30, f3 +/* 80170B90 0016DAF0 C0 9E 00 58 */ lfs f4, 0x58(r30) +/* 80170B94 0016DAF4 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 80170B98 0016DAF8 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 80170B9C 0016DAFC EC 3D 08 BA */ fmadds f1, f29, f2, f1 +/* 80170BA0 0016DB00 D0 61 00 50 */ stfs f3, 0x50(r1) +/* 80170BA4 0016DB04 EC 3F 09 3A */ fmadds f1, f31, f4, f1 +/* 80170BA8 0016DB08 D0 81 00 54 */ stfs f4, 0x54(r1) +/* 80170BAC 0016DB0C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80170BB0 0016DB10 40 80 01 D0 */ bge lbl_80170D80 +/* 80170BB4 0016DB14 C0 FE 00 50 */ lfs f7, 0x50(r30) +/* 80170BB8 0016DB18 C0 1E 07 A8 */ lfs f0, 0x7a8(r30) +/* 80170BBC 0016DB1C C1 1E 00 40 */ lfs f8, 0x40(r30) +/* 80170BC0 0016DB20 EC A0 38 28 */ fsubs f5, f0, f7 +/* 80170BC4 0016DB24 C0 1E 07 A4 */ lfs f0, 0x7a4(r30) +/* 80170BC8 0016DB28 C0 DE 00 60 */ lfs f6, 0x60(r30) +/* 80170BCC 0016DB2C EC 60 40 28 */ fsubs f3, f0, f8 +/* 80170BD0 0016DB30 C0 1E 07 AC */ lfs f0, 0x7ac(r30) +/* 80170BD4 0016DB34 EC 25 01 72 */ fmuls f1, f5, f5 +/* 80170BD8 0016DB38 EC 80 30 28 */ fsubs f4, f0, f6 +/* 80170BDC 0016DB3C C0 1E 03 00 */ lfs f0, 0x300(r30) +/* 80170BE0 0016DB40 EC 43 00 F2 */ fmuls f2, f3, f3 +/* 80170BE4 0016DB44 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 80170BE8 0016DB48 EC 00 00 32 */ fmuls f0, f0, f0 +/* 80170BEC 0016DB4C EC 64 01 32 */ fmuls f3, f4, f4 +/* 80170BF0 0016DB50 EC 22 08 2A */ fadds f1, f2, f1 +/* 80170BF4 0016DB54 D0 A1 00 44 */ stfs f5, 0x44(r1) +/* 80170BF8 0016DB58 D0 81 00 48 */ stfs f4, 0x48(r1) +/* 80170BFC 0016DB5C EC 23 08 2A */ fadds f1, f3, f1 +/* 80170C00 0016DB60 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80170C04 0016DB64 7C 00 00 26 */ mfcr r0 +/* 80170C08 0016DB68 54 1C 0F FF */ rlwinm. r28, r0, 1, 0x1f, 0x1f +/* 80170C0C 0016DB6C 41 82 01 6C */ beq lbl_80170D78 +/* 80170C10 0016DB70 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 80170C14 0016DB74 38 60 00 00 */ li r3, 0 +/* 80170C18 0016DB78 C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 80170C1C 0016DB7C C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 80170C20 0016DB80 FC 06 10 40 */ fcmpo cr0, f6, f2 +/* 80170C24 0016DB84 D1 01 00 34 */ stfs f8, 0x34(r1) +/* 80170C28 0016DB88 D0 E1 00 38 */ stfs f7, 0x38(r1) +/* 80170C2C 0016DB8C D0 C1 00 3C */ stfs f6, 0x3c(r1) +/* 80170C30 0016DB90 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80170C34 0016DB94 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 80170C38 0016DB98 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 80170C3C 0016DB9C 40 81 00 1C */ ble lbl_80170C58 +/* 80170C40 0016DBA0 C0 22 A0 88 */ lfs f1, lbl_805ABDA8@sda21(r2) +/* 80170C44 0016DBA4 C0 1E 07 AC */ lfs f0, 0x7ac(r30) +/* 80170C48 0016DBA8 EC 01 00 2A */ fadds f0, f1, f0 +/* 80170C4C 0016DBAC FC 06 00 40 */ fcmpo cr0, f6, f0 +/* 80170C50 0016DBB0 40 80 00 08 */ bge lbl_80170C58 +/* 80170C54 0016DBB4 38 60 00 01 */ li r3, 1 +lbl_80170C58: +/* 80170C58 0016DBB8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80170C5C 0016DBBC 7C 7C 1B 78 */ mr r28, r3 +/* 80170C60 0016DBC0 41 82 01 18 */ beq lbl_80170D78 +/* 80170C64 0016DBC4 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 80170C68 0016DBC8 7F C4 F3 78 */ mr r4, r30 +/* 80170C6C 0016DBCC C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 80170C70 0016DBD0 7F E5 FB 78 */ mr r5, r31 +/* 80170C74 0016DBD4 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 80170C78 0016DBD8 38 61 00 1C */ addi r3, r1, 0x1c +/* 80170C7C 0016DBDC D0 01 00 70 */ stfs f0, 0x70(r1) +/* 80170C80 0016DBE0 D0 21 00 74 */ stfs f1, 0x74(r1) +/* 80170C84 0016DBE4 D0 41 00 78 */ stfs f2, 0x78(r1) +/* 80170C88 0016DBE8 4B FF D3 35 */ bl sub_8016dfbc +/* 80170C8C 0016DBEC C0 21 00 20 */ lfs f1, 0x20(r1) +/* 80170C90 0016DBF0 38 61 00 64 */ addi r3, r1, 0x64 +/* 80170C94 0016DBF4 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 80170C98 0016DBF8 C0 61 00 24 */ lfs f3, 0x24(r1) +/* 80170C9C 0016DBFC C0 41 00 78 */ lfs f2, 0x78(r1) +/* 80170CA0 0016DC00 EC 81 00 28 */ fsubs f4, f1, f0 +/* 80170CA4 0016DC04 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 80170CA8 0016DC08 C0 01 00 70 */ lfs f0, 0x70(r1) +/* 80170CAC 0016DC0C EC 43 10 28 */ fsubs f2, f3, f2 +/* 80170CB0 0016DC10 D0 81 00 68 */ stfs f4, 0x68(r1) +/* 80170CB4 0016DC14 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80170CB8 0016DC18 D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 80170CBC 0016DC1C D0 01 00 64 */ stfs f0, 0x64(r1) +/* 80170CC0 0016DC20 48 1A 3A 39 */ bl CanBeNormalized__9CVector3fCFv +/* 80170CC4 0016DC24 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80170CC8 0016DC28 41 82 00 B0 */ beq lbl_80170D78 +/* 80170CCC 0016DC2C 80 AD 8D A8 */ lwz r5, lbl_805A7968@sda21(r13) +/* 80170CD0 0016DC30 38 60 00 00 */ li r3, 0 +/* 80170CD4 0016DC34 38 80 00 01 */ li r4, 1 +/* 80170CD8 0016DC38 48 21 92 1D */ bl __shl2i +/* 80170CDC 0016DC3C 80 AD 8D AC */ lwz r5, lbl_805A796C@sda21(r13) +/* 80170CE0 0016DC40 7C 9D 23 78 */ mr r29, r4 +/* 80170CE4 0016DC44 7C 7C 1B 78 */ mr r28, r3 +/* 80170CE8 0016DC48 38 60 00 00 */ li r3, 0 +/* 80170CEC 0016DC4C 38 80 00 01 */ li r4, 1 +/* 80170CF0 0016DC50 48 21 92 05 */ bl __shl2i +/* 80170CF4 0016DC54 7F 9C 1B 78 */ or r28, r28, r3 +/* 80170CF8 0016DC58 38 A0 00 01 */ li r5, 1 +/* 80170CFC 0016DC5C 38 00 00 00 */ li r0, 0 +/* 80170D00 0016DC60 7F BD 23 78 */ or r29, r29, r4 +/* 80170D04 0016DC64 90 A1 00 90 */ stw r5, 0x90(r1) +/* 80170D08 0016DC68 38 61 00 64 */ addi r3, r1, 0x64 +/* 80170D0C 0016DC6C 93 A1 00 9C */ stw r29, 0x9c(r1) +/* 80170D10 0016DC70 93 81 00 98 */ stw r28, 0x98(r1) +/* 80170D14 0016DC74 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 80170D18 0016DC78 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 80170D1C 0016DC7C 90 A1 00 A8 */ stw r5, 0xa8(r1) +/* 80170D20 0016DC80 48 1A 3B 99 */ bl Magnitude__9CVector3fCFv +/* 80170D24 0016DC84 C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) +/* 80170D28 0016DC88 7F E4 FB 78 */ mr r4, r31 +/* 80170D2C 0016DC8C C0 61 00 64 */ lfs f3, 0x64(r1) +/* 80170D30 0016DC90 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 80170D34 0016DC94 EC 80 08 24 */ fdivs f4, f0, f1 +/* 80170D38 0016DC98 C0 41 00 68 */ lfs f2, 0x68(r1) +/* 80170D3C 0016DC9C C0 01 00 6C */ lfs f0, 0x6c(r1) +/* 80170D40 0016DCA0 38 A1 00 70 */ addi r5, r1, 0x70 +/* 80170D44 0016DCA4 38 C1 00 58 */ addi r6, r1, 0x58 +/* 80170D48 0016DCA8 38 E1 00 98 */ addi r7, r1, 0x98 +/* 80170D4C 0016DCAC EC 64 00 F2 */ fmuls f3, f4, f3 +/* 80170D50 0016DCB0 EC 44 00 B2 */ fmuls f2, f4, f2 +/* 80170D54 0016DCB4 EC 04 00 32 */ fmuls f0, f4, f0 +/* 80170D58 0016DCB8 D0 61 00 58 */ stfs f3, 0x58(r1) +/* 80170D5C 0016DCBC D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 80170D60 0016DCC0 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 80170D64 0016DCC4 4B ED C2 35 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 80170D68 0016DCC8 88 01 00 D0 */ lbz r0, 0xd0(r1) +/* 80170D6C 0016DCCC 7C 00 00 34 */ cntlzw r0, r0 +/* 80170D70 0016DCD0 54 00 D9 7E */ srwi r0, r0, 5 +/* 80170D74 0016DCD4 7C 1C 03 78 */ mr r28, r0 +lbl_80170D78: +/* 80170D78 0016DCD8 7F 83 E3 78 */ mr r3, r28 +/* 80170D7C 0016DCDC 48 00 00 08 */ b lbl_80170D84 +lbl_80170D80: +/* 80170D80 0016DCE0 38 60 00 00 */ li r3, 0 +lbl_80170D84: +/* 80170D84 0016DCE4 E3 E1 01 48 */ psq_l f31, 328(r1), 0, qr0 +/* 80170D88 0016DCE8 CB E1 01 40 */ lfd f31, 0x140(r1) +/* 80170D8C 0016DCEC E3 C1 01 38 */ psq_l f30, 312(r1), 0, qr0 +/* 80170D90 0016DCF0 CB C1 01 30 */ lfd f30, 0x130(r1) +/* 80170D94 0016DCF4 E3 A1 01 28 */ psq_l f29, 296(r1), 0, qr0 +/* 80170D98 0016DCF8 CB A1 01 20 */ lfd f29, 0x120(r1) +/* 80170D9C 0016DCFC E3 81 01 18 */ psq_l f28, 280(r1), 0, qr0 +/* 80170DA0 0016DD00 CB 81 01 10 */ lfd f28, 0x110(r1) +/* 80170DA4 0016DD04 E3 61 01 08 */ psq_l f27, 264(r1), 0, qr0 +/* 80170DA8 0016DD08 CB 61 01 00 */ lfd f27, 0x100(r1) +/* 80170DAC 0016DD0C E3 41 00 F8 */ psq_l f26, 248(r1), 0, qr0 +/* 80170DB0 0016DD10 CB 41 00 F0 */ lfd f26, 0xf0(r1) +/* 80170DB4 0016DD14 83 E1 00 EC */ lwz r31, 0xec(r1) +/* 80170DB8 0016DD18 83 C1 00 E8 */ lwz r30, 0xe8(r1) +/* 80170DBC 0016DD1C 83 A1 00 E4 */ lwz r29, 0xe4(r1) +/* 80170DC0 0016DD20 80 01 01 54 */ lwz r0, 0x154(r1) +/* 80170DC4 0016DD24 83 81 00 E0 */ lwz r28, 0xe0(r1) +/* 80170DC8 0016DD28 7C 08 03 A6 */ mtlr r0 +/* 80170DCC 0016DD2C 38 21 01 50 */ addi r1, r1, 0x150 +/* 80170DD0 0016DD30 4E 80 00 20 */ blr + +.global ShouldAttack__8CMetroidFR13CStateManagerf +ShouldAttack__8CMetroidFR13CStateManagerf: +/* 80170DD4 0016DD34 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80170DD8 0016DD38 7C 08 02 A6 */ mflr r0 +/* 80170DDC 0016DD3C 90 01 00 34 */ stw r0, 0x34(r1) +/* 80170DE0 0016DD40 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80170DE4 0016DD44 7C 9F 23 78 */ mr r31, r4 +/* 80170DE8 0016DD48 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80170DEC 0016DD4C 7C 7E 1B 78 */ mr r30, r3 +/* 80170DF0 0016DD50 4B FF 91 D9 */ bl sub_80169fc8 +/* 80170DF4 0016DD54 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80170DF8 0016DD58 41 82 00 50 */ beq lbl_80170E48 +/* 80170DFC 0016DD5C A0 1E 06 98 */ lhz r0, 0x698(r30) +/* 80170E00 0016DD60 7F E3 FB 78 */ mr r3, r31 +/* 80170E04 0016DD64 38 81 00 10 */ addi r4, r1, 0x10 +/* 80170E08 0016DD68 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80170E0C 0016DD6C 4B ED B7 69 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80170E10 0016DD70 7C 64 1B 78 */ mr r4, r3 +/* 80170E14 0016DD74 38 61 00 14 */ addi r3, r1, 0x14 +/* 80170E18 0016DD78 4B F3 67 5D */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" +/* 80170E1C 0016DD7C 80 63 00 04 */ lwz r3, 4(r3) +/* 80170E20 0016DD80 28 03 00 00 */ cmplwi r3, 0 +/* 80170E24 0016DD84 41 82 00 1C */ beq lbl_80170E40 +/* 80170E28 0016DD88 A0 1E 00 08 */ lhz r0, 8(r30) +/* 80170E2C 0016DD8C 38 81 00 0C */ addi r4, r1, 0xc +/* 80170E30 0016DD90 B0 01 00 08 */ sth r0, 8(r1) +/* 80170E34 0016DD94 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80170E38 0016DD98 48 0C 7E 75 */ bl AddMeleeAttacker__10CTeamAiMgrF9TUniqueId +/* 80170E3C 0016DD9C 48 00 00 10 */ b lbl_80170E4C +lbl_80170E40: +/* 80170E40 0016DDA0 38 60 00 01 */ li r3, 1 +/* 80170E44 0016DDA4 48 00 00 08 */ b lbl_80170E4C +lbl_80170E48: +/* 80170E48 0016DDA8 38 60 00 00 */ li r3, 0 +lbl_80170E4C: +/* 80170E4C 0016DDAC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80170E50 0016DDB0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80170E54 0016DDB4 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80170E58 0016DDB8 7C 08 03 A6 */ mtlr r0 +/* 80170E5C 0016DDBC 38 21 00 30 */ addi r1, r1, 0x30 +/* 80170E60 0016DDC0 4E 80 00 20 */ blr + +.global ShotAt__8CMetroidFR13CStateManagerf +ShotAt__8CMetroidFR13CStateManagerf: +/* 80170E64 0016DDC4 88 03 09 BF */ lbz r0, 0x9bf(r3) +/* 80170E68 0016DDC8 54 03 DF FE */ rlwinm r3, r0, 0x1b, 0x1f, 0x1f +/* 80170E6C 0016DDCC 4E 80 00 20 */ blr + +.global Attacked__8CMetroidFR13CStateManagerf +Attacked__8CMetroidFR13CStateManagerf: +/* 80170E70 0016DDD0 C0 63 07 F8 */ lfs f3, 0x7f8(r3) +/* 80170E74 0016DDD4 C0 43 07 FC */ lfs f2, 0x7fc(r3) +/* 80170E78 0016DDD8 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 80170E7C 0016DDDC EC 23 10 28 */ fsubs f1, f3, f2 +/* 80170E80 0016DDE0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80170E84 0016DDE4 40 81 00 3C */ ble lbl_80170EC0 +/* 80170E88 0016DDE8 C0 03 06 4C */ lfs f0, 0x64c(r3) +/* 80170E8C 0016DDEC FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80170E90 0016DDF0 40 80 00 18 */ bge lbl_80170EA8 +/* 80170E94 0016DDF4 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 80170E98 0016DDF8 4C 41 13 82 */ cror 2, 1, 2 +/* 80170E9C 0016DDFC 7C 00 00 26 */ mfcr r0 +/* 80170EA0 0016DE00 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f +/* 80170EA4 0016DE04 4E 80 00 20 */ blr +lbl_80170EA8: +/* 80170EA8 0016DE08 C0 03 06 50 */ lfs f0, 0x650(r3) +/* 80170EAC 0016DE0C FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 80170EB0 0016DE10 4C 41 13 82 */ cror 2, 1, 2 +/* 80170EB4 0016DE14 40 82 00 0C */ bne lbl_80170EC0 +/* 80170EB8 0016DE18 38 60 00 01 */ li r3, 1 +/* 80170EBC 0016DE1C 4E 80 00 20 */ blr +lbl_80170EC0: +/* 80170EC0 0016DE20 38 60 00 00 */ li r3, 0 +/* 80170EC4 0016DE24 4E 80 00 20 */ blr + +.global PatternShagged__8CMetroidFR13CStateManagerf +PatternShagged__8CMetroidFR13CStateManagerf: +/* 80170EC8 0016DE28 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80170ECC 0016DE2C 7C 08 02 A6 */ mflr r0 +/* 80170ED0 0016DE30 90 01 00 24 */ stw r0, 0x24(r1) +/* 80170ED4 0016DE34 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80170ED8 0016DE38 7C 9F 23 78 */ mr r31, r4 +/* 80170EDC 0016DE3C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80170EE0 0016DE40 7C 7E 1B 78 */ mr r30, r3 +/* 80170EE4 0016DE44 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80170EE8 0016DE48 A0 63 07 B0 */ lhz r3, 0x7b0(r3) +/* 80170EEC 0016DE4C 7C 03 00 40 */ cmplw r3, r0 +/* 80170EF0 0016DE50 41 82 00 90 */ beq lbl_80170F80 +/* 80170EF4 0016DE54 A0 1E 07 B0 */ lhz r0, 0x7b0(r30) +/* 80170EF8 0016DE58 7F E3 FB 78 */ mr r3, r31 +/* 80170EFC 0016DE5C 38 81 00 08 */ addi r4, r1, 8 +/* 80170F00 0016DE60 B0 01 00 08 */ sth r0, 8(r1) +/* 80170F04 0016DE64 4B ED B6 A1 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80170F08 0016DE68 7C 64 1B 78 */ mr r4, r3 +/* 80170F0C 0016DE6C 38 61 00 0C */ addi r3, r1, 0xc +/* 80170F10 0016DE70 4B F3 44 C1 */ bl sub_800a53d0 +/* 80170F14 0016DE74 4B F3 44 91 */ bl "CastTo<12CSpacePirate>__10CPatternedFP7CEntity" +/* 80170F18 0016DE78 28 03 00 00 */ cmplwi r3, 0 +/* 80170F1C 0016DE7C 41 82 00 18 */ beq lbl_80170F34 +/* 80170F20 0016DE80 88 03 04 00 */ lbz r0, 0x400(r3) +/* 80170F24 0016DE84 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80170F28 0016DE88 40 82 00 0C */ bne lbl_80170F34 +/* 80170F2C 0016DE8C 38 60 00 01 */ li r3, 1 +/* 80170F30 0016DE90 48 00 00 54 */ b lbl_80170F84 +lbl_80170F34: +/* 80170F34 0016DE94 7F C3 F3 78 */ mr r3, r30 +/* 80170F38 0016DE98 7F E4 FB 78 */ mr r4, r31 +/* 80170F3C 0016DE9C 4B FF 90 8D */ bl sub_80169fc8 +/* 80170F40 0016DEA0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80170F44 0016DEA4 40 82 00 0C */ bne lbl_80170F50 +/* 80170F48 0016DEA8 38 60 00 01 */ li r3, 1 +/* 80170F4C 0016DEAC 48 00 00 38 */ b lbl_80170F84 +lbl_80170F50: +/* 80170F50 0016DEB0 80 1E 05 68 */ lwz r0, 0x568(r30) +/* 80170F54 0016DEB4 2C 00 00 02 */ cmpwi r0, 2 +/* 80170F58 0016DEB8 40 82 00 20 */ bne lbl_80170F78 +/* 80170F5C 0016DEBC C0 3E 08 00 */ lfs f1, 0x800(r30) +/* 80170F60 0016DEC0 C0 1E 08 04 */ lfs f0, 0x804(r30) +/* 80170F64 0016DEC4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80170F68 0016DEC8 4C 41 13 82 */ cror 2, 1, 2 +/* 80170F6C 0016DECC 7C 00 00 26 */ mfcr r0 +/* 80170F70 0016DED0 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f +/* 80170F74 0016DED4 48 00 00 10 */ b lbl_80170F84 +lbl_80170F78: +/* 80170F78 0016DED8 38 60 00 00 */ li r3, 0 +/* 80170F7C 0016DEDC 48 00 00 08 */ b lbl_80170F84 +lbl_80170F80: +/* 80170F80 0016DEE0 38 60 00 01 */ li r3, 1 +lbl_80170F84: +/* 80170F84 0016DEE4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80170F88 0016DEE8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80170F8C 0016DEEC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80170F90 0016DEF0 7C 08 03 A6 */ mtlr r0 +/* 80170F94 0016DEF4 38 21 00 20 */ addi r1, r1, 0x20 +/* 80170F98 0016DEF8 4E 80 00 20 */ blr + +.global LostInterest__8CMetroidFR13CStateManagerf +LostInterest__8CMetroidFR13CStateManagerf: +/* 80170F9C 0016DEFC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80170FA0 0016DF00 7C 08 02 A6 */ mflr r0 +/* 80170FA4 0016DF04 90 01 00 24 */ stw r0, 0x24(r1) +/* 80170FA8 0016DF08 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80170FAC 0016DF0C 7C 9F 23 78 */ mr r31, r4 +/* 80170FB0 0016DF10 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80170FB4 0016DF14 7C 7E 1B 78 */ mr r30, r3 +/* 80170FB8 0016DF18 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80170FBC 0016DF1C A0 63 07 B0 */ lhz r3, 0x7b0(r3) +/* 80170FC0 0016DF20 7C 03 00 40 */ cmplw r3, r0 +/* 80170FC4 0016DF24 41 82 00 B8 */ beq lbl_8017107C +/* 80170FC8 0016DF28 A0 1E 07 B0 */ lhz r0, 0x7b0(r30) +/* 80170FCC 0016DF2C 7F E3 FB 78 */ mr r3, r31 +/* 80170FD0 0016DF30 38 81 00 08 */ addi r4, r1, 8 +/* 80170FD4 0016DF34 B0 01 00 08 */ sth r0, 8(r1) +/* 80170FD8 0016DF38 4B ED B5 CD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80170FDC 0016DF3C 7C 64 1B 78 */ mr r4, r3 +/* 80170FE0 0016DF40 38 61 00 10 */ addi r3, r1, 0x10 +/* 80170FE4 0016DF44 4B F3 EC AD */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80170FE8 0016DF48 80 83 00 04 */ lwz r4, 4(r3) +/* 80170FEC 0016DF4C 28 04 00 00 */ cmplwi r4, 0 +/* 80170FF0 0016DF50 41 82 00 8C */ beq lbl_8017107C +/* 80170FF4 0016DF54 38 61 00 0C */ addi r3, r1, 0xc +/* 80170FF8 0016DF58 4B F3 43 D9 */ bl sub_800a53d0 +/* 80170FFC 0016DF5C 4B F3 43 A9 */ bl "CastTo<12CSpacePirate>__10CPatternedFP7CEntity" +/* 80171000 0016DF60 28 03 00 00 */ cmplwi r3, 0 +/* 80171004 0016DF64 41 82 00 2C */ beq lbl_80171030 +/* 80171008 0016DF68 A0 63 07 B4 */ lhz r3, 0x7b4(r3) +/* 8017100C 0016DF6C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80171010 0016DF70 7C 03 00 40 */ cmplw r3, r0 +/* 80171014 0016DF74 40 82 00 14 */ bne lbl_80171028 +/* 80171018 0016DF78 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8017101C 0016DF7C 88 03 03 00 */ lbz r0, 0x300(r3) +/* 80171020 0016DF80 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 80171024 0016DF84 41 82 00 50 */ beq lbl_80171074 +lbl_80171028: +/* 80171028 0016DF88 38 60 00 01 */ li r3, 1 +/* 8017102C 0016DF8C 48 00 00 54 */ b lbl_80171080 +lbl_80171030: +/* 80171030 0016DF90 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 80171034 0016DF94 A0 9E 07 B0 */ lhz r4, 0x7b0(r30) +/* 80171038 0016DF98 A0 03 00 08 */ lhz r0, 8(r3) +/* 8017103C 0016DF9C 7C 04 00 40 */ cmplw r4, r0 +/* 80171040 0016DFA0 40 82 00 34 */ bne lbl_80171074 +/* 80171044 0016DFA4 7F C3 F3 78 */ mr r3, r30 +/* 80171048 0016DFA8 7F E4 FB 78 */ mr r4, r31 +/* 8017104C 0016DFAC 4B FF 91 35 */ bl sub_8016a180 +/* 80171050 0016DFB0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80171054 0016DFB4 40 82 00 18 */ bne lbl_8017106C +/* 80171058 0016DFB8 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8017105C 0016DFBC 80 1E 00 04 */ lwz r0, 4(r30) +/* 80171060 0016DFC0 80 63 00 04 */ lwz r3, 4(r3) +/* 80171064 0016DFC4 7C 03 00 00 */ cmpw r3, r0 +/* 80171068 0016DFC8 41 82 00 0C */ beq lbl_80171074 +lbl_8017106C: +/* 8017106C 0016DFCC 38 60 00 01 */ li r3, 1 +/* 80171070 0016DFD0 48 00 00 10 */ b lbl_80171080 +lbl_80171074: +/* 80171074 0016DFD4 38 60 00 00 */ li r3, 0 +/* 80171078 0016DFD8 48 00 00 08 */ b lbl_80171080 +lbl_8017107C: +/* 8017107C 0016DFDC 38 60 00 01 */ li r3, 1 +lbl_80171080: +/* 80171080 0016DFE0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80171084 0016DFE4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80171088 0016DFE8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8017108C 0016DFEC 7C 08 03 A6 */ mtlr r0 +/* 80171090 0016DFF0 38 21 00 20 */ addi r1, r1, 0x20 +/* 80171094 0016DFF4 4E 80 00 20 */ blr + +.global AttackOver__8CMetroidFR13CStateManagerf +AttackOver__8CMetroidFR13CStateManagerf: +/* 80171098 0016DFF8 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 8017109C 0016DFFC 7C 08 02 A6 */ mflr r0 +/* 801710A0 0016E000 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 801710A4 0016E004 DB E1 00 D0 */ stfd f31, 0xd0(r1) +/* 801710A8 0016E008 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 +/* 801710AC 0016E00C 93 E1 00 CC */ stw r31, 0xcc(r1) +/* 801710B0 0016E010 93 C1 00 C8 */ stw r30, 0xc8(r1) +/* 801710B4 0016E014 7C 7E 1B 78 */ mr r30, r3 +/* 801710B8 0016E018 7C 9F 23 78 */ mr r31, r4 +/* 801710BC 0016E01C 80 03 05 68 */ lwz r0, 0x568(r3) +/* 801710C0 0016E020 2C 00 00 02 */ cmpwi r0, 2 +/* 801710C4 0016E024 40 82 01 64 */ bne lbl_80171228 +/* 801710C8 0016E028 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801710CC 0016E02C 88 03 03 00 */ lbz r0, 0x300(r3) +/* 801710D0 0016E030 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801710D4 0016E034 40 82 01 54 */ bne lbl_80171228 +/* 801710D8 0016E038 C3 FE 00 60 */ lfs f31, 0x60(r30) +/* 801710DC 0016E03C 7F C4 F3 78 */ mr r4, r30 +/* 801710E0 0016E040 7F E5 FB 78 */ mr r5, r31 +/* 801710E4 0016E044 38 61 00 20 */ addi r3, r1, 0x20 +/* 801710E8 0016E048 4B FF CE D5 */ bl sub_8016dfbc +/* 801710EC 0016E04C C0 01 00 28 */ lfs f0, 0x28(r1) +/* 801710F0 0016E050 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 801710F4 0016E054 EC 20 F8 28 */ fsubs f1, f0, f31 +/* 801710F8 0016E058 C0 02 A1 00 */ lfs f0, lbl_805ABE20@sda21(r2) +/* 801710FC 0016E05C C0 43 00 04 */ lfs f2, 4(r3) +/* 80171100 0016E060 C0 63 00 00 */ lfs f3, 0(r3) +/* 80171104 0016E064 FC 80 0A 10 */ fabs f4, f1 +/* 80171108 0016E068 C0 23 00 08 */ lfs f1, 8(r3) +/* 8017110C 0016E06C EF E0 00 B2 */ fmuls f31, f0, f2 +/* 80171110 0016E070 D0 61 00 14 */ stfs f3, 0x14(r1) +/* 80171114 0016E074 FC 00 20 18 */ frsp f0, f4 +/* 80171118 0016E078 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 8017111C 0016E07C D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 80171120 0016E080 FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 80171124 0016E084 40 80 01 04 */ bge lbl_80171228 +/* 80171128 0016E088 A0 1E 07 B0 */ lhz r0, 0x7b0(r30) +/* 8017112C 0016E08C 7F E3 FB 78 */ mr r3, r31 +/* 80171130 0016E090 38 81 00 08 */ addi r4, r1, 8 +/* 80171134 0016E094 B0 01 00 08 */ sth r0, 8(r1) +/* 80171138 0016E098 4B ED B4 6D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017113C 0016E09C 7C 64 1B 78 */ mr r4, r3 +/* 80171140 0016E0A0 38 61 00 0C */ addi r3, r1, 0xc +/* 80171144 0016E0A4 4B F3 B5 A1 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" +/* 80171148 0016E0A8 80 83 00 04 */ lwz r4, 4(r3) +/* 8017114C 0016E0AC 28 04 00 00 */ cmplwi r4, 0 +/* 80171150 0016E0B0 41 82 00 D8 */ beq lbl_80171228 +/* 80171154 0016E0B4 38 61 00 5C */ addi r3, r1, 0x5c +/* 80171158 0016E0B8 4B FA 97 D5 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 8017115C 0016E0BC C0 A1 00 5C */ lfs f5, 0x5c(r1) +/* 80171160 0016E0C0 38 9E 06 A0 */ addi r4, r30, 0x6a0 +/* 80171164 0016E0C4 C0 81 00 60 */ lfs f4, 0x60(r1) +/* 80171168 0016E0C8 38 61 00 44 */ addi r3, r1, 0x44 +/* 8017116C 0016E0CC C0 61 00 64 */ lfs f3, 0x64(r1) +/* 80171170 0016E0D0 38 BE 00 34 */ addi r5, r30, 0x34 +/* 80171174 0016E0D4 C0 41 00 68 */ lfs f2, 0x68(r1) +/* 80171178 0016E0D8 C0 21 00 6C */ lfs f1, 0x6c(r1) +/* 8017117C 0016E0DC C0 01 00 70 */ lfs f0, 0x70(r1) +/* 80171180 0016E0E0 D0 A1 00 A4 */ stfs f5, 0xa4(r1) +/* 80171184 0016E0E4 D0 81 00 A8 */ stfs f4, 0xa8(r1) +/* 80171188 0016E0E8 D0 61 00 AC */ stfs f3, 0xac(r1) +/* 8017118C 0016E0EC D0 41 00 B0 */ stfs f2, 0xb0(r1) +/* 80171190 0016E0F0 D0 21 00 B4 */ stfs f1, 0xb4(r1) +/* 80171194 0016E0F4 D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 80171198 0016E0F8 81 9E 06 A0 */ lwz r12, 0x6a0(r30) +/* 8017119C 0016E0FC 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 801711A0 0016E100 7D 89 03 A6 */ mtctr r12 +/* 801711A4 0016E104 4E 80 04 21 */ bctrl +/* 801711A8 0016E108 C0 01 00 44 */ lfs f0, 0x44(r1) +/* 801711AC 0016E10C 38 61 00 74 */ addi r3, r1, 0x74 +/* 801711B0 0016E110 C0 C1 00 48 */ lfs f6, 0x48(r1) +/* 801711B4 0016E114 38 81 00 38 */ addi r4, r1, 0x38 +/* 801711B8 0016E118 C0 A1 00 4C */ lfs f5, 0x4c(r1) +/* 801711BC 0016E11C EC 20 F8 28 */ fsubs f1, f0, f31 +/* 801711C0 0016E120 C0 81 00 50 */ lfs f4, 0x50(r1) +/* 801711C4 0016E124 ED 06 F8 28 */ fsubs f8, f6, f31 +/* 801711C8 0016E128 C0 61 00 54 */ lfs f3, 0x54(r1) +/* 801711CC 0016E12C EC E5 F8 28 */ fsubs f7, f5, f31 +/* 801711D0 0016E130 C0 41 00 58 */ lfs f2, 0x58(r1) +/* 801711D4 0016E134 ED 43 F8 2A */ fadds f10, f3, f31 +/* 801711D8 0016E138 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 801711DC 0016E13C ED 22 F8 2A */ fadds f9, f2, f31 +/* 801711E0 0016E140 38 A1 00 2C */ addi r5, r1, 0x2c +/* 801711E4 0016E144 EC 04 F8 2A */ fadds f0, f4, f31 +/* 801711E8 0016E148 D0 C1 00 90 */ stfs f6, 0x90(r1) +/* 801711EC 0016E14C D0 A1 00 94 */ stfs f5, 0x94(r1) +/* 801711F0 0016E150 D0 81 00 98 */ stfs f4, 0x98(r1) +/* 801711F4 0016E154 D0 61 00 9C */ stfs f3, 0x9c(r1) +/* 801711F8 0016E158 D0 41 00 A0 */ stfs f2, 0xa0(r1) +/* 801711FC 0016E15C D0 21 00 38 */ stfs f1, 0x38(r1) +/* 80171200 0016E160 D1 01 00 3C */ stfs f8, 0x3c(r1) +/* 80171204 0016E164 D0 E1 00 40 */ stfs f7, 0x40(r1) +/* 80171208 0016E168 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8017120C 0016E16C D1 41 00 30 */ stfs f10, 0x30(r1) +/* 80171210 0016E170 D1 21 00 34 */ stfs f9, 0x34(r1) +/* 80171214 0016E174 48 1C 72 F5 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 80171218 0016E178 38 61 00 74 */ addi r3, r1, 0x74 +/* 8017121C 0016E17C 38 81 00 A4 */ addi r4, r1, 0xa4 +/* 80171220 0016E180 48 1C 69 65 */ bl DoBoundsOverlap__6CAABoxCFRC6CAABox +/* 80171224 0016E184 48 00 00 08 */ b lbl_8017122C +lbl_80171228: +/* 80171228 0016E188 38 60 00 00 */ li r3, 0 +lbl_8017122C: +/* 8017122C 0016E18C E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 +/* 80171230 0016E190 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 80171234 0016E194 CB E1 00 D0 */ lfd f31, 0xd0(r1) +/* 80171238 0016E198 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 8017123C 0016E19C 83 C1 00 C8 */ lwz r30, 0xc8(r1) +/* 80171240 0016E1A0 7C 08 03 A6 */ mtlr r0 +/* 80171244 0016E1A4 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 80171248 0016E1A8 4E 80 00 20 */ blr + +.global AnimOver__8CMetroidFR13CStateManagerf +AnimOver__8CMetroidFR13CStateManagerf: +/* 8017124C 0016E1AC 80 03 05 68 */ lwz r0, 0x568(r3) +/* 80171250 0016E1B0 20 00 00 03 */ subfic r0, r0, 3 +/* 80171254 0016E1B4 7C 00 00 34 */ cntlzw r0, r0 +/* 80171258 0016E1B8 54 03 D9 7E */ srwi r3, r0, 5 +/* 8017125C 0016E1BC 4E 80 00 20 */ blr + +.global Death__8CMetroidFRC9CVector3fR13CStateManager +Death__8CMetroidFRC9CVector3fR13CStateManager: +/* 80171260 0016E1C0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80171264 0016E1C4 7C 08 02 A6 */ mflr r0 +/* 80171268 0016E1C8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8017126C 0016E1CC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80171270 0016E1D0 7C 9F 23 78 */ mr r31, r4 +/* 80171274 0016E1D4 93 C1 00 08 */ stw r30, 8(r1) +/* 80171278 0016E1D8 7C 7E 1B 78 */ mr r30, r3 +/* 8017127C 0016E1DC 4B F0 A1 29 */ bl Death__10CPatternedFR13CStateManagerRC9CVector3f18EScriptObjectState +/* 80171280 0016E1E0 88 1E 03 28 */ lbz r0, 0x328(r30) +/* 80171284 0016E1E4 38 60 00 00 */ li r3, 0 +/* 80171288 0016E1E8 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8017128C 0016E1EC 7F C3 F3 78 */ mr r3, r30 +/* 80171290 0016E1F0 98 1E 03 28 */ stb r0, 0x328(r30) +/* 80171294 0016E1F4 38 80 00 01 */ li r4, 1 +/* 80171298 0016E1F8 4B EE 21 55 */ bl SetMuted__6CActorFb +/* 8017129C 0016E1FC 7F C3 F3 78 */ mr r3, r30 +/* 801712A0 0016E200 7F E4 FB 78 */ mr r4, r31 +/* 801712A4 0016E204 4B FF BF 85 */ bl sub_8016d228 +/* 801712A8 0016E208 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801712AC 0016E20C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801712B0 0016E210 83 C1 00 08 */ lwz r30, 8(r1) +/* 801712B4 0016E214 7C 08 03 A6 */ mtlr r0 +/* 801712B8 0016E218 38 21 00 10 */ addi r1, r1, 0x10 +/* 801712BC 0016E21C 4E 80 00 20 */ blr + +.global KnockBack__8CMetroidFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef +KnockBack__8CMetroidFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef: +/* 801712C0 0016E220 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801712C4 0016E224 7C 08 02 A6 */ mflr r0 +/* 801712C8 0016E228 90 01 00 44 */ stw r0, 0x44(r1) +/* 801712CC 0016E22C DB E1 00 30 */ stfd f31, 0x30(r1) +/* 801712D0 0016E230 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 801712D4 0016E234 BF 01 00 10 */ stmw r24, 0x10(r1) +/* 801712D8 0016E238 88 03 04 00 */ lbz r0, 0x400(r3) +/* 801712DC 0016E23C FF E0 08 90 */ fmr f31, f1 +/* 801712E0 0016E240 7C 7C 1B 78 */ mr r28, r3 +/* 801712E4 0016E244 7C 9D 23 78 */ mr r29, r4 +/* 801712E8 0016E248 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801712EC 0016E24C 7C BE 2B 78 */ mr r30, r5 +/* 801712F0 0016E250 7C DF 33 78 */ mr r31, r6 +/* 801712F4 0016E254 7C F8 3B 78 */ mr r24, r7 +/* 801712F8 0016E258 7D 19 43 78 */ mr r25, r8 +/* 801712FC 0016E25C 41 82 01 4C */ beq lbl_80171448 +/* 80171300 0016E260 81 83 00 00 */ lwz r12, 0(r3) +/* 80171304 0016E264 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 80171308 0016E268 7D 89 03 A6 */ mtctr r12 +/* 8017130C 0016E26C 4E 80 04 21 */ bctrl +/* 80171310 0016E270 7C 60 1B 78 */ mr r0, r3 +/* 80171314 0016E274 80 7C 04 50 */ lwz r3, 0x450(r28) +/* 80171318 0016E278 7C 1B 03 78 */ mr r27, r0 +/* 8017131C 0016E27C 4B FC 8D B1 */ bl GetPercentageFrozen__15CBodyControllerCFv +/* 80171320 0016E280 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 80171324 0016E284 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80171328 0016E288 7C 60 00 26 */ mfcr r3 +/* 8017132C 0016E28C 80 1C 07 C8 */ lwz r0, 0x7c8(r28) +/* 80171330 0016E290 54 7A 17 FE */ rlwinm r26, r3, 2, 0x1f, 0x1f +/* 80171334 0016E294 2C 00 00 02 */ cmpwi r0, 2 +/* 80171338 0016E298 40 82 00 34 */ bne lbl_8017136C +/* 8017133C 0016E29C 7F 63 DB 78 */ mr r3, r27 +/* 80171340 0016E2A0 7F E4 FB 78 */ mr r4, r31 +/* 80171344 0016E2A4 38 A0 00 00 */ li r5, 0 +/* 80171348 0016E2A8 4B F9 12 3D */ bl WeaponHits__20CDamageVulnerabilityCFRC11CWeaponModei +/* 8017134C 0016E2AC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80171350 0016E2B0 41 82 00 F8 */ beq lbl_80171448 +/* 80171354 0016E2B4 C3 FC 06 40 */ lfs f31, 0x640(r28) +/* 80171358 0016E2B8 7F 83 E3 78 */ mr r3, r28 +/* 8017135C 0016E2BC 4B FF CB E5 */ bl sub_8016df40 +/* 80171360 0016E2C0 EC 1F 00 72 */ fmuls f0, f31, f1 +/* 80171364 0016E2C4 D0 1C 07 BC */ stfs f0, 0x7bc(r28) +/* 80171368 0016E2C8 48 00 00 E0 */ b lbl_80171448 +lbl_8017136C: +/* 8017136C 0016E2CC 7F 63 DB 78 */ mr r3, r27 +/* 80171370 0016E2D0 7F E4 FB 78 */ mr r4, r31 +/* 80171374 0016E2D4 38 A0 00 00 */ li r5, 0 +/* 80171378 0016E2D8 4B F9 13 91 */ bl WeaponHurts__20CDamageVulnerabilityCFRC11CWeaponMode +/* 8017137C 0016E2DC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80171380 0016E2E0 41 82 00 50 */ beq lbl_801713D0 +/* 80171384 0016E2E4 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 80171388 0016E2E8 48 1A 11 55 */ bl Float__9CRandom16Fv +/* 8017138C 0016E2EC C0 5C 03 08 */ lfs f2, 0x308(r28) +/* 80171390 0016E2F0 28 1A 00 00 */ cmplwi r26, 0 +/* 80171394 0016E2F4 C0 1C 03 04 */ lfs f0, 0x304(r28) +/* 80171398 0016E2F8 EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 8017139C 0016E2FC D0 1C 07 B4 */ stfs f0, 0x7b4(r28) +/* 801713A0 0016E300 41 82 00 0C */ beq lbl_801713AC +/* 801713A4 0016E304 80 7C 04 50 */ lwz r3, 0x450(r28) +/* 801713A8 0016E308 4B FC 8D AD */ bl UnFreeze__15CBodyControllerFv +lbl_801713AC: +/* 801713AC 0016E30C FC 20 F8 90 */ fmr f1, f31 +/* 801713B0 0016E310 7F 83 E3 78 */ mr r3, r28 +/* 801713B4 0016E314 7F A4 EB 78 */ mr r4, r29 +/* 801713B8 0016E318 7F C5 F3 78 */ mr r5, r30 +/* 801713BC 0016E31C 7F E6 FB 78 */ mr r6, r31 +/* 801713C0 0016E320 7F 07 C3 78 */ mr r7, r24 +/* 801713C4 0016E324 7F 28 CB 78 */ mr r8, r25 +/* 801713C8 0016E328 4B F0 93 B5 */ bl KnockBack__10CPatternedFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef +/* 801713CC 0016E32C 48 00 00 7C */ b lbl_80171448 +lbl_801713D0: +/* 801713D0 0016E330 28 1A 00 00 */ cmplwi r26, 0 +/* 801713D4 0016E334 40 82 00 74 */ bne lbl_80171448 +/* 801713D8 0016E338 7F 63 DB 78 */ mr r3, r27 +/* 801713DC 0016E33C 7F E4 FB 78 */ mr r4, r31 +/* 801713E0 0016E340 38 A0 00 00 */ li r5, 0 +/* 801713E4 0016E344 4B F9 11 A1 */ bl WeaponHits__20CDamageVulnerabilityCFRC11CWeaponModei +/* 801713E8 0016E348 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801713EC 0016E34C 41 82 00 5C */ beq lbl_80171448 +/* 801713F0 0016E350 88 7F 00 04 */ lbz r3, 4(r31) +/* 801713F4 0016E354 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 801713F8 0016E358 40 82 00 18 */ bne lbl_80171410 +/* 801713FC 0016E35C 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 80171400 0016E360 40 82 00 10 */ bne lbl_80171410 +/* 80171404 0016E364 80 1F 00 00 */ lwz r0, 0(r31) +/* 80171408 0016E368 2C 00 00 06 */ cmpwi r0, 6 +/* 8017140C 0016E36C 40 82 00 3C */ bne lbl_80171448 +lbl_80171410: +/* 80171410 0016E370 7F 83 E3 78 */ mr r3, r28 +/* 80171414 0016E374 4B FF A6 C9 */ bl sub_8016badc +/* 80171418 0016E378 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017141C 0016E37C 40 82 00 2C */ bne lbl_80171448 +/* 80171420 0016E380 FC 20 F8 90 */ fmr f1, f31 +/* 80171424 0016E384 7F 83 E3 78 */ mr r3, r28 +/* 80171428 0016E388 7F A4 EB 78 */ mr r4, r29 +/* 8017142C 0016E38C 7F C5 F3 78 */ mr r5, r30 +/* 80171430 0016E390 7F E6 FB 78 */ mr r6, r31 +/* 80171434 0016E394 7F 07 C3 78 */ mr r7, r24 +/* 80171438 0016E398 39 00 00 00 */ li r8, 0 +/* 8017143C 0016E39C 4B F0 93 41 */ bl KnockBack__10CPatternedFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef +/* 80171440 0016E3A0 C0 1C 08 04 */ lfs f0, 0x804(r28) +/* 80171444 0016E3A4 D0 1C 08 00 */ stfs f0, 0x800(r28) +lbl_80171448: +/* 80171448 0016E3A8 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 8017144C 0016E3AC CB E1 00 30 */ lfd f31, 0x30(r1) +/* 80171450 0016E3B0 BB 01 00 10 */ lmw r24, 0x10(r1) +/* 80171454 0016E3B4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80171458 0016E3B8 7C 08 03 A6 */ mtlr r0 +/* 8017145C 0016E3BC 38 21 00 40 */ addi r1, r1, 0x40 +/* 80171460 0016E3C0 4E 80 00 20 */ blr + +.global DoUserAnimEvent__8CMetroidFR13CStateManagerRC13CInt32POINode14EUserEventType +DoUserAnimEvent__8CMetroidFR13CStateManagerRC13CInt32POINode14EUserEventType: +/* 80171464 0016E3C4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80171468 0016E3C8 7C 08 02 A6 */ mflr r0 +/* 8017146C 0016E3CC 90 01 00 24 */ stw r0, 0x24(r1) +/* 80171470 0016E3D0 38 00 00 00 */ li r0, 0 +/* 80171474 0016E3D4 DB E1 00 18 */ stfd f31, 0x18(r1) +/* 80171478 0016E3D8 FF E0 08 90 */ fmr f31, f1 +/* 8017147C 0016E3DC 93 E1 00 14 */ stw r31, 0x14(r1) +/* 80171480 0016E3E0 7C DF 33 78 */ mr r31, r6 +/* 80171484 0016E3E4 2C 1F 00 07 */ cmpwi r31, 7 +/* 80171488 0016E3E8 93 C1 00 10 */ stw r30, 0x10(r1) +/* 8017148C 0016E3EC 7C BE 2B 78 */ mr r30, r5 +/* 80171490 0016E3F0 93 A1 00 0C */ stw r29, 0xc(r1) +/* 80171494 0016E3F4 7C 9D 23 78 */ mr r29, r4 +/* 80171498 0016E3F8 93 81 00 08 */ stw r28, 8(r1) +/* 8017149C 0016E3FC 7C 7C 1B 78 */ mr r28, r3 +/* 801714A0 0016E400 41 82 00 08 */ beq lbl_801714A8 +/* 801714A4 0016E404 48 00 00 14 */ b lbl_801714B8 +lbl_801714A8: +/* 801714A8 0016E408 7F A5 EB 78 */ mr r5, r29 +/* 801714AC 0016E40C 38 80 00 13 */ li r4, 0x13 +/* 801714B0 0016E410 4B EE 2E A1 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801714B4 0016E414 38 00 00 01 */ li r0, 1 +lbl_801714B8: +/* 801714B8 0016E418 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 801714BC 0016E41C 40 82 00 1C */ bne lbl_801714D8 +/* 801714C0 0016E420 FC 20 F8 90 */ fmr f1, f31 +/* 801714C4 0016E424 7F 83 E3 78 */ mr r3, r28 +/* 801714C8 0016E428 7F A4 EB 78 */ mr r4, r29 +/* 801714CC 0016E42C 7F C5 F3 78 */ mr r5, r30 +/* 801714D0 0016E430 7F E6 FB 78 */ mr r6, r31 +/* 801714D4 0016E434 4B F0 79 DD */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +lbl_801714D8: +/* 801714D8 0016E438 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801714DC 0016E43C CB E1 00 18 */ lfd f31, 0x18(r1) +/* 801714E0 0016E440 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 801714E4 0016E444 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 801714E8 0016E448 83 A1 00 0C */ lwz r29, 0xc(r1) +/* 801714EC 0016E44C 83 81 00 08 */ lwz r28, 8(r1) +/* 801714F0 0016E450 7C 08 03 A6 */ mtlr r0 +/* 801714F4 0016E454 38 21 00 20 */ addi r1, r1, 0x20 +/* 801714F8 0016E458 4E 80 00 20 */ blr + +.global GetCollisionResponseType__8CMetroidCFRC9CVector3fRC9CVector3fRC11CWeaponModei +GetCollisionResponseType__8CMetroidCFRC9CVector3fRC9CVector3fRC11CWeaponModei: +/* 801714FC 0016E45C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80171500 0016E460 7C 08 02 A6 */ mflr r0 +/* 80171504 0016E464 90 01 00 24 */ stw r0, 0x24(r1) +/* 80171508 0016E468 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8017150C 0016E46C 3B E0 00 21 */ li r31, 0x21 +/* 80171510 0016E470 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80171514 0016E474 7C 7E 1B 78 */ mr r30, r3 +/* 80171518 0016E478 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8017151C 0016E47C 7C DD 33 78 */ mr r29, r6 +/* 80171520 0016E480 80 63 04 50 */ lwz r3, 0x450(r3) +/* 80171524 0016E484 4B FC 8B A9 */ bl GetPercentageFrozen__15CBodyControllerCFv +/* 80171528 0016E488 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 8017152C 0016E48C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80171530 0016E490 7C 00 00 26 */ mfcr r0 +/* 80171534 0016E494 7F C3 F3 78 */ mr r3, r30 +/* 80171538 0016E498 81 9E 00 00 */ lwz r12, 0(r30) +/* 8017153C 0016E49C 54 1E 17 FE */ rlwinm r30, r0, 2, 0x1f, 0x1f +/* 80171540 0016E4A0 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 80171544 0016E4A4 7D 89 03 A6 */ mtctr r12 +/* 80171548 0016E4A8 4E 80 04 21 */ bctrl +/* 8017154C 0016E4AC 7F A4 EB 78 */ mr r4, r29 +/* 80171550 0016E4B0 38 A0 00 00 */ li r5, 0 +/* 80171554 0016E4B4 4B F9 11 B5 */ bl WeaponHurts__20CDamageVulnerabilityCFRC11CWeaponMode +/* 80171558 0016E4B8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017155C 0016E4BC 40 82 00 10 */ bne lbl_8017156C +/* 80171560 0016E4C0 28 1E 00 00 */ cmplwi r30, 0 +/* 80171564 0016E4C4 40 82 00 08 */ bne lbl_8017156C +/* 80171568 0016E4C8 3B E0 00 3A */ li r31, 0x3a +lbl_8017156C: +/* 8017156C 0016E4CC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80171570 0016E4D0 7F E3 FB 78 */ mr r3, r31 +/* 80171574 0016E4D4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80171578 0016E4D8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8017157C 0016E4DC 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80171580 0016E4E0 7C 08 03 A6 */ mtlr r0 +/* 80171584 0016E4E4 38 21 00 20 */ addi r1, r1, 0x20 +/* 80171588 0016E4E8 4E 80 00 20 */ blr + +.global GetDamageVulnerability__8CMetroidCFRC9CVector3fRC9CVector3fRC11CDamageInfo +GetDamageVulnerability__8CMetroidCFRC9CVector3fRC9CVector3fRC11CDamageInfo: +/* 8017158C 0016E4EC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80171590 0016E4F0 7C 08 02 A6 */ mflr r0 +/* 80171594 0016E4F4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80171598 0016E4F8 81 83 00 00 */ lwz r12, 0(r3) +/* 8017159C 0016E4FC 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 801715A0 0016E500 7D 89 03 A6 */ mtctr r12 +/* 801715A4 0016E504 4E 80 04 21 */ bctrl +/* 801715A8 0016E508 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801715AC 0016E50C 7C 08 03 A6 */ mtlr r0 +/* 801715B0 0016E510 38 21 00 10 */ addi r1, r1, 0x10 +/* 801715B4 0016E514 4E 80 00 20 */ blr + +.global GetDamageVulnerability__8CMetroidCFv +GetDamageVulnerability__8CMetroidCFv: +/* 801715B8 0016E518 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801715BC 0016E51C 7C 08 02 A6 */ mflr r0 +/* 801715C0 0016E520 90 01 00 14 */ stw r0, 0x14(r1) +/* 801715C4 0016E524 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801715C8 0016E528 7C 7F 1B 78 */ mr r31, r3 +/* 801715CC 0016E52C 4B FF CC 29 */ bl sub_8016e1f4 +/* 801715D0 0016E530 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801715D4 0016E534 41 82 00 24 */ beq lbl_801715F8 +/* 801715D8 0016E538 88 1F 09 C0 */ lbz r0, 0x9c0(r31) +/* 801715DC 0016E53C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801715E0 0016E540 41 82 00 0C */ beq lbl_801715EC +/* 801715E4 0016E544 38 7F 05 D4 */ addi r3, r31, 0x5d4 +/* 801715E8 0016E548 48 00 00 C0 */ b lbl_801716A8 +lbl_801715EC: +/* 801715EC 0016E54C 3C 60 80 57 */ lis r3, lbl_80571FA4@ha +/* 801715F0 0016E550 38 63 1F A4 */ addi r3, r3, lbl_80571FA4@l +/* 801715F4 0016E554 48 00 00 B4 */ b lbl_801716A8 +lbl_801715F8: +/* 801715F8 0016E558 88 1F 09 BF */ lbz r0, 0x9bf(r31) +/* 801715FC 0016E55C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80171600 0016E560 41 82 00 1C */ beq lbl_8017161C +/* 80171604 0016E564 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 80171608 0016E568 88 03 03 00 */ lbz r0, 0x300(r3) +/* 8017160C 0016E56C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 80171610 0016E570 40 82 00 0C */ bne lbl_8017161C +/* 80171614 0016E574 38 7F 05 D4 */ addi r3, r31, 0x5d4 +/* 80171618 0016E578 48 00 00 90 */ b lbl_801716A8 +lbl_8017161C: +/* 8017161C 0016E57C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 80171620 0016E580 4B FC 8A AD */ bl GetPercentageFrozen__15CBodyControllerCFv +/* 80171624 0016E584 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) +/* 80171628 0016E588 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017162C 0016E58C 40 81 00 0C */ ble lbl_80171638 +/* 80171630 0016E590 38 7F 05 6C */ addi r3, r31, 0x56c +/* 80171634 0016E594 48 00 00 74 */ b lbl_801716A8 +lbl_80171638: +/* 80171638 0016E598 80 1F 03 FC */ lwz r0, 0x3fc(r31) +/* 8017163C 0016E59C 2C 00 00 02 */ cmpwi r0, 2 +/* 80171640 0016E5A0 40 82 00 60 */ bne lbl_801716A0 +/* 80171644 0016E5A4 80 1F 07 CC */ lwz r0, 0x7cc(r31) +/* 80171648 0016E5A8 2C 00 00 03 */ cmpwi r0, 3 +/* 8017164C 0016E5AC 41 82 00 3C */ beq lbl_80171688 +/* 80171650 0016E5B0 40 80 00 14 */ bge lbl_80171664 +/* 80171654 0016E5B4 2C 00 00 01 */ cmpwi r0, 1 +/* 80171658 0016E5B8 41 82 00 18 */ beq lbl_80171670 +/* 8017165C 0016E5BC 40 80 00 20 */ bge lbl_8017167C +/* 80171660 0016E5C0 48 00 00 40 */ b lbl_801716A0 +lbl_80171664: +/* 80171664 0016E5C4 2C 00 00 05 */ cmpwi r0, 5 +/* 80171668 0016E5C8 40 80 00 38 */ bge lbl_801716A0 +/* 8017166C 0016E5CC 48 00 00 28 */ b lbl_80171694 +lbl_80171670: +/* 80171670 0016E5D0 3C 60 80 57 */ lis r3, lbl_80571C64@ha +/* 80171674 0016E5D4 38 63 1C 64 */ addi r3, r3, lbl_80571C64@l +/* 80171678 0016E5D8 48 00 00 30 */ b lbl_801716A8 +lbl_8017167C: +/* 8017167C 0016E5DC 3C 60 80 57 */ lis r3, lbl_80571E6C@ha +/* 80171680 0016E5E0 38 63 1E 6C */ addi r3, r3, lbl_80571E6C@l +/* 80171684 0016E5E4 48 00 00 24 */ b lbl_801716A8 +lbl_80171688: +/* 80171688 0016E5E8 3C 60 80 57 */ lis r3, lbl_80571ED4@ha +/* 8017168C 0016E5EC 38 63 1E D4 */ addi r3, r3, lbl_80571ED4@l +/* 80171690 0016E5F0 48 00 00 18 */ b lbl_801716A8 +lbl_80171694: +/* 80171694 0016E5F4 3C 60 80 57 */ lis r3, lbl_80571F3C@ha +/* 80171698 0016E5F8 38 63 1F 3C */ addi r3, r3, lbl_80571F3C@l +/* 8017169C 0016E5FC 48 00 00 0C */ b lbl_801716A8 +lbl_801716A0: +/* 801716A0 0016E600 7F E3 FB 78 */ mr r3, r31 +/* 801716A4 0016E604 4B F3 16 CD */ bl GetDamageVulnerability__3CAiCFv +lbl_801716A8: +/* 801716A8 0016E608 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801716AC 0016E60C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801716B0 0016E610 7C 08 03 A6 */ mtlr r0 +/* 801716B4 0016E614 38 21 00 10 */ addi r1, r1, 0x10 +/* 801716B8 0016E618 4E 80 00 20 */ blr + +.global GetCollisionPrimitive__8CMetroidCFv +GetCollisionPrimitive__8CMetroidCFv: +/* 801716BC 0016E61C 38 63 06 A0 */ addi r3, r3, 0x6a0 +/* 801716C0 0016E620 4E 80 00 20 */ blr + +.global sub_801716c4 +sub_801716c4: +/* 801716C4 0016E624 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801716C8 0016E628 7C 08 02 A6 */ mflr r0 +/* 801716CC 0016E62C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801716D0 0016E630 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 801716D4 0016E634 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 801716D8 0016E638 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801716DC 0016E63C 7C 7F 1B 78 */ mr r31, r3 +/* 801716E0 0016E640 4B FF C8 91 */ bl sub_8016df70 +/* 801716E4 0016E644 C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) +/* 801716E8 0016E648 38 81 00 0C */ addi r4, r1, 0xc +/* 801716EC 0016E64C 38 6D 8D 9C */ addi r3, r13, lbl_805A795C@sda21 +/* 801716F0 0016E650 38 AD 8D A0 */ addi r5, r13, lbl_805A7960@sda21 +/* 801716F4 0016E654 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801716F8 0016E658 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801716FC 0016E65C 4B E9 AB B9 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 80171700 0016E660 C0 63 00 00 */ lfs f3, 0(r3) +/* 80171704 0016E664 C0 22 A0 AC */ lfs f1, lbl_805ABDCC@sda21(r2) +/* 80171708 0016E668 C0 02 A0 A8 */ lfs f0, lbl_805ABDC8@sda21(r2) +/* 8017170C 0016E66C C0 42 A1 04 */ lfs f2, lbl_805ABE24@sda21(r2) +/* 80171710 0016E670 EC 01 00 FA */ fmadds f0, f1, f3, f0 +/* 80171714 0016E674 EF E2 00 32 */ fmuls f31, f2, f0 +/* 80171718 0016E678 F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 +/* 8017171C 0016E67C 38 81 00 09 */ addi r4, r1, 9 +/* 80171720 0016E680 38 6D 8D A4 */ addi r3, r13, lbl_805A7964@sda21 +/* 80171724 0016E684 38 AD 8D A5 */ addi r5, r13, lbl_805A7965@sda21 +/* 80171728 0016E688 88 01 00 08 */ lbz r0, 8(r1) +/* 8017172C 0016E68C 98 01 00 09 */ stb r0, 9(r1) +/* 80171730 0016E690 48 00 10 E1 */ bl sub_80172810 +/* 80171734 0016E694 88 83 00 00 */ lbz r4, 0(r3) +/* 80171738 0016E698 7F E3 FB 78 */ mr r3, r31 +/* 8017173C 0016E69C 4B EE 1C 35 */ bl SetVolume__6CActorFUc +/* 80171740 0016E6A0 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 80171744 0016E6A4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80171748 0016E6A8 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 8017174C 0016E6AC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80171750 0016E6B0 7C 08 03 A6 */ mtlr r0 +/* 80171754 0016E6B4 38 21 00 30 */ addi r1, r1, 0x30 +/* 80171758 0016E6B8 4E 80 00 20 */ blr + +.global sub_8017175c +sub_8017175c: +/* 8017175C 0016E6BC 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 80171760 0016E6C0 7C 08 02 A6 */ mflr r0 +/* 80171764 0016E6C4 80 82 A0 74 */ lwz r4, lbl_805ABD94@sda21(r2) +/* 80171768 0016E6C8 90 01 00 94 */ stw r0, 0x94(r1) +/* 8017176C 0016E6CC 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 80171770 0016E6D0 7C 7F 1B 78 */ mr r31, r3 +/* 80171774 0016E6D4 38 61 00 18 */ addi r3, r1, 0x18 +/* 80171778 0016E6D8 4B E9 35 41 */ bl string_l__4rstlFPCc +/* 8017177C 0016E6DC 7F E4 FB 78 */ mr r4, r31 +/* 80171780 0016E6E0 38 61 00 28 */ addi r3, r1, 0x28 +/* 80171784 0016E6E4 38 A1 00 18 */ addi r5, r1, 0x18 +/* 80171788 0016E6E8 4B EE 17 79 */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8017178C 0016E6EC 38 61 00 58 */ addi r3, r1, 0x58 +/* 80171790 0016E6F0 38 81 00 28 */ addi r4, r1, 0x28 +/* 80171794 0016E6F4 48 1A 13 E1 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80171798 0016E6F8 38 61 00 18 */ addi r3, r1, 0x18 +/* 8017179C 0016E6FC 48 1C C3 45 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801717A0 0016E700 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 801717A4 0016E704 C0 9F 06 BC */ lfs f4, 0x6bc(r31) +/* 801717A8 0016E708 C0 21 00 64 */ lfs f1, 0x64(r1) +/* 801717AC 0016E70C C0 03 00 00 */ lfs f0, 0(r3) +/* 801717B0 0016E710 C0 41 00 74 */ lfs f2, 0x74(r1) +/* 801717B4 0016E714 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801717B8 0016E718 C0 23 00 04 */ lfs f1, 4(r3) +/* 801717BC 0016E71C C0 61 00 84 */ lfs f3, 0x84(r1) +/* 801717C0 0016E720 EC 42 00 72 */ fmuls f2, f2, f1 +/* 801717C4 0016E724 C0 23 00 08 */ lfs f1, 8(r3) +/* 801717C8 0016E728 D0 01 00 08 */ stfs f0, 8(r1) +/* 801717CC 0016E72C EC 03 00 72 */ fmuls f0, f3, f1 +/* 801717D0 0016E730 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 801717D4 0016E734 80 01 00 08 */ lwz r0, 8(r1) +/* 801717D8 0016E738 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 801717DC 0016E73C 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801717E0 0016E740 90 1F 06 B0 */ stw r0, 0x6b0(r31) +/* 801717E4 0016E744 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801717E8 0016E748 90 7F 06 B4 */ stw r3, 0x6b4(r31) +/* 801717EC 0016E74C 90 1F 06 B8 */ stw r0, 0x6b8(r31) +/* 801717F0 0016E750 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 801717F4 0016E754 D0 9F 06 BC */ stfs f4, 0x6bc(r31) +/* 801717F8 0016E758 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 801717FC 0016E75C 80 01 00 94 */ lwz r0, 0x94(r1) +/* 80171800 0016E760 7C 08 03 A6 */ mtlr r0 +/* 80171804 0016E764 38 21 00 90 */ addi r1, r1, 0x90 +/* 80171808 0016E768 4E 80 00 20 */ blr + +.global GetTouchBounds__8CMetroidCFv +GetTouchBounds__8CMetroidCFv: +/* 8017180C 0016E76C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80171810 0016E770 7C 08 02 A6 */ mflr r0 +/* 80171814 0016E774 7C 85 23 78 */ mr r5, r4 +/* 80171818 0016E778 90 01 00 34 */ stw r0, 0x34(r1) +/* 8017181C 0016E77C 38 85 06 A0 */ addi r4, r5, 0x6a0 +/* 80171820 0016E780 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80171824 0016E784 7C 7F 1B 78 */ mr r31, r3 +/* 80171828 0016E788 38 61 00 08 */ addi r3, r1, 8 +/* 8017182C 0016E78C 81 85 06 A0 */ lwz r12, 0x6a0(r5) +/* 80171830 0016E790 38 A5 00 34 */ addi r5, r5, 0x34 +/* 80171834 0016E794 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80171838 0016E798 7D 89 03 A6 */ mtctr r12 +/* 8017183C 0016E79C 4E 80 04 21 */ bctrl +/* 80171840 0016E7A0 38 00 00 01 */ li r0, 1 +/* 80171844 0016E7A4 28 1F 00 00 */ cmplwi r31, 0 +/* 80171848 0016E7A8 98 1F 00 18 */ stb r0, 0x18(r31) +/* 8017184C 0016E7AC 41 82 00 34 */ beq lbl_80171880 +/* 80171850 0016E7B0 C0 01 00 08 */ lfs f0, 8(r1) +/* 80171854 0016E7B4 D0 1F 00 00 */ stfs f0, 0(r31) +/* 80171858 0016E7B8 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 8017185C 0016E7BC D0 1F 00 04 */ stfs f0, 4(r31) +/* 80171860 0016E7C0 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 80171864 0016E7C4 D0 1F 00 08 */ stfs f0, 8(r31) +/* 80171868 0016E7C8 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 8017186C 0016E7CC D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 80171870 0016E7D0 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 80171874 0016E7D4 D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 80171878 0016E7D8 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 8017187C 0016E7DC D0 1F 00 14 */ stfs f0, 0x14(r31) +lbl_80171880: +/* 80171880 0016E7E0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80171884 0016E7E4 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80171888 0016E7E8 7C 08 03 A6 */ mtlr r0 +/* 8017188C 0016E7EC 38 21 00 30 */ addi r1, r1, 0x30 +/* 80171890 0016E7F0 4E 80 00 20 */ blr + +.global Touch__8CMetroidFR6CActorR13CStateManager +Touch__8CMetroidFR6CActorR13CStateManager: +/* 80171894 0016E7F4 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 80171898 0016E7F8 7C 08 02 A6 */ mflr r0 +/* 8017189C 0016E7FC 90 01 00 84 */ stw r0, 0x84(r1) +/* 801718A0 0016E800 DB E1 00 70 */ stfd f31, 0x70(r1) +/* 801718A4 0016E804 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 801718A8 0016E808 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 801718AC 0016E80C 93 C1 00 68 */ stw r30, 0x68(r1) +/* 801718B0 0016E810 93 A1 00 64 */ stw r29, 0x64(r1) +/* 801718B4 0016E814 93 81 00 60 */ stw r28, 0x60(r1) +/* 801718B8 0016E818 88 03 04 00 */ lbz r0, 0x400(r3) +/* 801718BC 0016E81C 7C 7C 1B 78 */ mr r28, r3 +/* 801718C0 0016E820 7C 9D 23 78 */ mr r29, r4 +/* 801718C4 0016E824 7C BE 2B 78 */ mr r30, r5 +/* 801718C8 0016E828 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801718CC 0016E82C 41 82 01 88 */ beq lbl_80171A54 +/* 801718D0 0016E830 38 61 00 10 */ addi r3, r1, 0x10 +/* 801718D4 0016E834 4B F3 BE A5 */ bl "__ct__29TCastToPtr<15CGameProjectile>FR7CEntity" +/* 801718D8 0016E838 83 E3 00 04 */ lwz r31, 4(r3) +/* 801718DC 0016E83C 28 1F 00 00 */ cmplwi r31, 0 +/* 801718E0 0016E840 41 82 01 64 */ beq lbl_80171A44 +/* 801718E4 0016E844 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 801718E8 0016E848 A0 9F 00 EC */ lhz r4, 0xec(r31) +/* 801718EC 0016E84C A0 03 00 08 */ lhz r0, 8(r3) +/* 801718F0 0016E850 7C 04 00 40 */ cmplw r4, r0 +/* 801718F4 0016E854 40 82 01 40 */ bne lbl_80171A34 +/* 801718F8 0016E858 7F 83 E3 78 */ mr r3, r28 +/* 801718FC 0016E85C 81 9C 00 00 */ lwz r12, 0(r28) +/* 80171900 0016E860 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 80171904 0016E864 7D 89 03 A6 */ mtctr r12 +/* 80171908 0016E868 4E 80 04 21 */ bctrl +/* 8017190C 0016E86C 80 1C 03 FC */ lwz r0, 0x3fc(r28) +/* 80171910 0016E870 2C 00 00 02 */ cmpwi r0, 2 +/* 80171914 0016E874 41 82 01 20 */ beq lbl_80171A34 +/* 80171918 0016E878 80 1F 00 E8 */ lwz r0, 0xe8(r31) +/* 8017191C 0016E87C 54 00 07 38 */ rlwinm r0, r0, 0, 0x1c, 0x1c +/* 80171920 0016E880 2C 00 00 08 */ cmpwi r0, 8 +/* 80171924 0016E884 40 82 01 10 */ bne lbl_80171A34 +/* 80171928 0016E888 88 01 00 0C */ lbz r0, 0xc(r1) +/* 8017192C 0016E88C 38 A0 00 00 */ li r5, 0 +/* 80171930 0016E890 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 80171934 0016E894 38 C0 00 01 */ li r6, 1 +/* 80171938 0016E898 98 01 00 0C */ stb r0, 0xc(r1) +/* 8017193C 0016E89C 54 00 06 3E */ clrlwi r0, r0, 0x18 +/* 80171940 0016E8A0 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 80171944 0016E8A4 38 81 00 08 */ addi r4, r1, 8 +/* 80171948 0016E8A8 98 01 00 0C */ stb r0, 0xc(r1) +/* 8017194C 0016E8AC 54 00 06 3E */ clrlwi r0, r0, 0x18 +/* 80171950 0016E8B0 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a +/* 80171954 0016E8B4 38 A0 00 00 */ li r5, 0 +/* 80171958 0016E8B8 90 C1 00 08 */ stw r6, 8(r1) +/* 8017195C 0016E8BC 98 01 00 0C */ stb r0, 0xc(r1) +/* 80171960 0016E8C0 4B F9 0C 25 */ bl WeaponHits__20CDamageVulnerabilityCFRC11CWeaponModei +/* 80171964 0016E8C4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80171968 0016E8C8 41 82 00 CC */ beq lbl_80171A34 +/* 8017196C 0016E8CC 80 1F 00 E8 */ lwz r0, 0xe8(r31) +/* 80171970 0016E8D0 C3 E2 A0 98 */ lfs f31, lbl_805ABDB8@sda21(r2) +/* 80171974 0016E8D4 54 00 07 7A */ rlwinm r0, r0, 0, 0x1d, 0x1d +/* 80171978 0016E8D8 2C 00 00 04 */ cmpwi r0, 4 +/* 8017197C 0016E8DC 40 82 00 08 */ bne lbl_80171984 +/* 80171980 0016E8E0 C3 E2 A0 84 */ lfs f31, lbl_805ABDA4@sda21(r2) +lbl_80171984: +/* 80171984 0016E8E4 C0 BF 00 50 */ lfs f5, 0x50(r31) +/* 80171988 0016E8E8 38 61 00 30 */ addi r3, r1, 0x30 +/* 8017198C 0016E8EC C0 1C 00 50 */ lfs f0, 0x50(r28) +/* 80171990 0016E8F0 38 9C 00 34 */ addi r4, r28, 0x34 +/* 80171994 0016E8F4 C0 9F 00 60 */ lfs f4, 0x60(r31) +/* 80171998 0016E8F8 38 A1 00 24 */ addi r5, r1, 0x24 +/* 8017199C 0016E8FC C0 3C 00 60 */ lfs f1, 0x60(r28) +/* 801719A0 0016E900 EC 45 00 28 */ fsubs f2, f5, f0 +/* 801719A4 0016E904 C0 7F 00 40 */ lfs f3, 0x40(r31) +/* 801719A8 0016E908 C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 801719AC 0016E90C EC 24 08 28 */ fsubs f1, f4, f1 +/* 801719B0 0016E910 EC 03 00 28 */ fsubs f0, f3, f0 +/* 801719B4 0016E914 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 801719B8 0016E918 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 801719BC 0016E91C D0 01 00 48 */ stfs f0, 0x48(r1) +/* 801719C0 0016E920 C0 5F 02 9C */ lfs f2, 0x29c(r31) +/* 801719C4 0016E924 C0 3F 02 A0 */ lfs f1, 0x2a0(r31) +/* 801719C8 0016E928 C0 1F 02 98 */ lfs f0, 0x298(r31) +/* 801719CC 0016E92C EC 45 10 28 */ fsubs f2, f5, f2 +/* 801719D0 0016E930 EC 24 08 28 */ fsubs f1, f4, f1 +/* 801719D4 0016E934 EC 03 00 28 */ fsubs f0, f3, f0 +/* 801719D8 0016E938 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801719DC 0016E93C D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801719E0 0016E940 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801719E4 0016E944 48 1A 10 41 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f +/* 801719E8 0016E948 38 61 00 3C */ addi r3, r1, 0x3c +/* 801719EC 0016E94C 38 81 00 30 */ addi r4, r1, 0x30 +/* 801719F0 0016E950 48 1A 23 E1 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 801719F4 0016E954 C0 1C 04 FC */ lfs f0, 0x4fc(r28) +/* 801719F8 0016E958 7F 83 E3 78 */ mr r3, r28 +/* 801719FC 0016E95C 80 C1 00 3C */ lwz r6, 0x3c(r1) +/* 80171A00 0016E960 7F C4 F3 78 */ mr r4, r30 +/* 80171A04 0016E964 80 E1 00 40 */ lwz r7, 0x40(r1) +/* 80171A08 0016E968 EC 3F 00 32 */ fmuls f1, f31, f0 +/* 80171A0C 0016E96C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80171A10 0016E970 38 A1 00 48 */ addi r5, r1, 0x48 +/* 80171A14 0016E974 90 C1 00 18 */ stw r6, 0x18(r1) +/* 80171A18 0016E978 38 C1 00 18 */ addi r6, r1, 0x18 +/* 80171A1C 0016E97C 90 E1 00 1C */ stw r7, 0x1c(r1) +/* 80171A20 0016E980 90 01 00 20 */ stw r0, 0x20(r1) +/* 80171A24 0016E984 81 9C 00 00 */ lwz r12, 0(r28) +/* 80171A28 0016E988 81 8C 02 90 */ lwz r12, 0x290(r12) +/* 80171A2C 0016E98C 7D 89 03 A6 */ mtctr r12 +/* 80171A30 0016E990 4E 80 04 21 */ bctrl +lbl_80171A34: +/* 80171A34 0016E994 88 1C 09 BF */ lbz r0, 0x9bf(r28) +/* 80171A38 0016E998 38 60 00 01 */ li r3, 1 +/* 80171A3C 0016E99C 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 80171A40 0016E9A0 98 1C 09 BF */ stb r0, 0x9bf(r28) +lbl_80171A44: +/* 80171A44 0016E9A4 7F 83 E3 78 */ mr r3, r28 +/* 80171A48 0016E9A8 7F A4 EB 78 */ mr r4, r29 +/* 80171A4C 0016E9AC 7F C5 F3 78 */ mr r5, r30 +/* 80171A50 0016E9B0 4B F0 80 51 */ bl Touch__10CPatternedFR6CActorR13CStateManager +lbl_80171A54: +/* 80171A54 0016E9B4 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 80171A58 0016E9B8 80 01 00 84 */ lwz r0, 0x84(r1) +/* 80171A5C 0016E9BC CB E1 00 70 */ lfd f31, 0x70(r1) +/* 80171A60 0016E9C0 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 80171A64 0016E9C4 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 80171A68 0016E9C8 83 A1 00 64 */ lwz r29, 0x64(r1) +/* 80171A6C 0016E9CC 83 81 00 60 */ lwz r28, 0x60(r1) +/* 80171A70 0016E9D0 7C 08 03 A6 */ mtlr r0 +/* 80171A74 0016E9D4 38 21 00 80 */ addi r1, r1, 0x80 +/* 80171A78 0016E9D8 4E 80 00 20 */ blr + +.global Render__8CMetroidCFRC13CStateManager +Render__8CMetroidCFRC13CStateManager: +/* 80171A7C 0016E9DC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80171A80 0016E9E0 7C 08 02 A6 */ mflr r0 +/* 80171A84 0016E9E4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80171A88 0016E9E8 4B F0 65 A5 */ bl Render__10CPatternedCFRC13CStateManager +/* 80171A8C 0016E9EC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80171A90 0016E9F0 7C 08 03 A6 */ mtlr r0 +/* 80171A94 0016E9F4 38 21 00 10 */ addi r1, r1, 0x10 +/* 80171A98 0016E9F8 4E 80 00 20 */ blr + +.global AcceptScriptMsg__8CMetroidF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__8CMetroidF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 80171A9C 0016E9FC 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80171AA0 0016EA00 7C 08 02 A6 */ mflr r0 +/* 80171AA4 0016EA04 90 01 00 44 */ stw r0, 0x44(r1) +/* 80171AA8 0016EA08 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80171AAC 0016EA0C 7C 7F 1B 78 */ mr r31, r3 +/* 80171AB0 0016EA10 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80171AB4 0016EA14 7C BE 2B 78 */ mr r30, r5 +/* 80171AB8 0016EA18 93 A1 00 34 */ stw r29, 0x34(r1) +/* 80171ABC 0016EA1C 7C DD 33 78 */ mr r29, r6 +/* 80171AC0 0016EA20 93 81 00 30 */ stw r28, 0x30(r1) +/* 80171AC4 0016EA24 7C 9C 23 78 */ mr r28, r4 +/* 80171AC8 0016EA28 A0 05 00 00 */ lhz r0, 0(r5) +/* 80171ACC 0016EA2C 38 A1 00 10 */ addi r5, r1, 0x10 +/* 80171AD0 0016EA30 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80171AD4 0016EA34 4B F0 B0 A5 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 80171AD8 0016EA38 2C 1C 00 21 */ cmpwi r28, 0x21 +/* 80171ADC 0016EA3C 41 82 00 44 */ beq lbl_80171B20 +/* 80171AE0 0016EA40 40 80 00 1C */ bge lbl_80171AFC +/* 80171AE4 0016EA44 2C 1C 00 15 */ cmpwi r28, 0x15 +/* 80171AE8 0016EA48 41 82 00 D8 */ beq lbl_80171BC0 +/* 80171AEC 0016EA4C 40 80 01 3C */ bge lbl_80171C28 +/* 80171AF0 0016EA50 2C 1C 00 04 */ cmpwi r28, 4 +/* 80171AF4 0016EA54 41 82 00 44 */ beq lbl_80171B38 +/* 80171AF8 0016EA58 48 00 01 30 */ b lbl_80171C28 +lbl_80171AFC: +/* 80171AFC 0016EA5C 2C 1C 00 29 */ cmpwi r28, 0x29 +/* 80171B00 0016EA60 40 80 00 14 */ bge lbl_80171B14 +/* 80171B04 0016EA64 2C 1C 00 23 */ cmpwi r28, 0x23 +/* 80171B08 0016EA68 41 82 00 CC */ beq lbl_80171BD4 +/* 80171B0C 0016EA6C 40 80 01 1C */ bge lbl_80171C28 +/* 80171B10 0016EA70 48 00 00 28 */ b lbl_80171B38 +lbl_80171B14: +/* 80171B14 0016EA74 2C 1C 00 2B */ cmpwi r28, 0x2b +/* 80171B18 0016EA78 40 80 01 10 */ bge lbl_80171C28 +/* 80171B1C 0016EA7C 48 00 00 2C */ b lbl_80171B48 +lbl_80171B20: +/* 80171B20 0016EA80 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 80171B24 0016EA84 7F A4 EB 78 */ mr r4, r29 +/* 80171B28 0016EA88 4B FC 91 C9 */ bl Activate__15CBodyControllerFR13CStateManager +/* 80171B2C 0016EA8C 7F E3 FB 78 */ mr r3, r31 +/* 80171B30 0016EA90 4B FF FB 95 */ bl sub_801716c4 +/* 80171B34 0016EA94 48 00 00 F4 */ b lbl_80171C28 +lbl_80171B38: +/* 80171B38 0016EA98 7F E3 FB 78 */ mr r3, r31 +/* 80171B3C 0016EA9C 7F A4 EB 78 */ mr r4, r29 +/* 80171B40 0016EAA0 4B FF B6 E9 */ bl sub_8016d228 +/* 80171B44 0016EAA4 48 00 00 E4 */ b lbl_80171C28 +lbl_80171B48: +/* 80171B48 0016EAA8 A0 1E 00 00 */ lhz r0, 0(r30) +/* 80171B4C 0016EAAC 7F A3 EB 78 */ mr r3, r29 +/* 80171B50 0016EAB0 38 81 00 0C */ addi r4, r1, 0xc +/* 80171B54 0016EAB4 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80171B58 0016EAB8 4B ED AA 4D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80171B5C 0016EABC 7C 64 1B 78 */ mr r4, r3 +/* 80171B60 0016EAC0 38 61 00 1C */ addi r3, r1, 0x1c +/* 80171B64 0016EAC4 4B F3 BB A9 */ bl "__ct__29TCastToPtr<15CGameProjectile>FP7CEntity" +/* 80171B68 0016EAC8 83 C3 00 04 */ lwz r30, 4(r3) +/* 80171B6C 0016EACC 28 1E 00 00 */ cmplwi r30, 0 +/* 80171B70 0016EAD0 41 82 00 3C */ beq lbl_80171BAC +/* 80171B74 0016EAD4 7F E3 FB 78 */ mr r3, r31 +/* 80171B78 0016EAD8 81 9F 00 00 */ lwz r12, 0(r31) +/* 80171B7C 0016EADC 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 80171B80 0016EAE0 7D 89 03 A6 */ mtctr r12 +/* 80171B84 0016EAE4 4E 80 04 21 */ bctrl +/* 80171B88 0016EAE8 38 9E 01 2C */ addi r4, r30, 0x12c +/* 80171B8C 0016EAEC 38 A0 00 00 */ li r5, 0 +/* 80171B90 0016EAF0 4B F9 09 F5 */ bl WeaponHits__20CDamageVulnerabilityCFRC11CWeaponModei +/* 80171B94 0016EAF4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80171B98 0016EAF8 41 82 00 14 */ beq lbl_80171BAC +/* 80171B9C 0016EAFC C0 3E 01 34 */ lfs f1, 0x134(r30) +/* 80171BA0 0016EB00 7F E3 FB 78 */ mr r3, r31 +/* 80171BA4 0016EB04 7F A4 EB 78 */ mr r4, r29 +/* 80171BA8 0016EB08 4B FF C1 61 */ bl sub_8016dd08 +lbl_80171BAC: +/* 80171BAC 0016EB0C 88 1F 09 BF */ lbz r0, 0x9bf(r31) +/* 80171BB0 0016EB10 38 60 00 01 */ li r3, 1 +/* 80171BB4 0016EB14 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80171BB8 0016EB18 98 1F 09 BF */ stb r0, 0x9bf(r31) +/* 80171BBC 0016EB1C 48 00 00 6C */ b lbl_80171C28 +lbl_80171BC0: +/* 80171BC0 0016EB20 88 1F 09 BF */ lbz r0, 0x9bf(r31) +/* 80171BC4 0016EB24 38 60 00 01 */ li r3, 1 +/* 80171BC8 0016EB28 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80171BCC 0016EB2C 98 1F 09 BF */ stb r0, 0x9bf(r31) +/* 80171BD0 0016EB30 48 00 00 58 */ b lbl_80171C28 +lbl_80171BD4: +/* 80171BD4 0016EB34 A0 7F 06 98 */ lhz r3, 0x698(r31) +/* 80171BD8 0016EB38 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80171BDC 0016EB3C 7C 03 00 40 */ cmplw r3, r0 +/* 80171BE0 0016EB40 40 82 00 1C */ bne lbl_80171BFC +/* 80171BE4 0016EB44 7F E4 FB 78 */ mr r4, r31 +/* 80171BE8 0016EB48 7F A5 EB 78 */ mr r5, r29 +/* 80171BEC 0016EB4C 38 61 00 08 */ addi r3, r1, 8 +/* 80171BF0 0016EB50 48 0C 85 F9 */ bl GetTeamAiMgr__10CTeamAiMgrF3CAiRC13CStateManager +/* 80171BF4 0016EB54 A0 01 00 08 */ lhz r0, 8(r1) +/* 80171BF8 0016EB58 B0 1F 06 98 */ sth r0, 0x698(r31) +lbl_80171BFC: +/* 80171BFC 0016EB5C 80 BF 00 04 */ lwz r5, 4(r31) +/* 80171C00 0016EB60 80 9D 08 50 */ lwz r4, 0x850(r29) +/* 80171C04 0016EB64 54 A3 18 38 */ slwi r3, r5, 3 +/* 80171C08 0016EB68 90 A1 00 18 */ stw r5, 0x18(r1) +/* 80171C0C 0016EB6C 80 84 00 20 */ lwz r4, 0x20(r4) +/* 80171C10 0016EB70 38 03 00 04 */ addi r0, r3, 4 +/* 80171C14 0016EB74 90 A1 00 14 */ stw r5, 0x14(r1) +/* 80171C18 0016EB78 7C 64 00 2E */ lwzx r3, r4, r0 +/* 80171C1C 0016EB7C 80 63 01 2C */ lwz r3, 0x12c(r3) +/* 80171C20 0016EB80 80 03 10 BC */ lwz r0, 0x10bc(r3) +/* 80171C24 0016EB84 90 1F 06 C0 */ stw r0, 0x6c0(r31) +lbl_80171C28: +/* 80171C28 0016EB88 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80171C2C 0016EB8C 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80171C30 0016EB90 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80171C34 0016EB94 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 80171C38 0016EB98 83 81 00 30 */ lwz r28, 0x30(r1) +/* 80171C3C 0016EB9C 7C 08 03 A6 */ mtlr r0 +/* 80171C40 0016EBA0 38 21 00 40 */ addi r1, r1, 0x40 +/* 80171C44 0016EBA4 4E 80 00 20 */ blr + +.global Think__8CMetroidFfR13CStateManager +Think__8CMetroidFfR13CStateManager: +/* 80171C48 0016EBA8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80171C4C 0016EBAC 7C 08 02 A6 */ mflr r0 +/* 80171C50 0016EBB0 90 01 00 34 */ stw r0, 0x34(r1) +/* 80171C54 0016EBB4 DB E1 00 28 */ stfd f31, 0x28(r1) +/* 80171C58 0016EBB8 FF E0 08 90 */ fmr f31, f1 +/* 80171C5C 0016EBBC 93 E1 00 24 */ stw r31, 0x24(r1) +/* 80171C60 0016EBC0 7C 9F 23 78 */ mr r31, r4 +/* 80171C64 0016EBC4 93 C1 00 20 */ stw r30, 0x20(r1) +/* 80171C68 0016EBC8 7C 7E 1B 78 */ mr r30, r3 +/* 80171C6C 0016EBCC 88 03 00 30 */ lbz r0, 0x30(r3) +/* 80171C70 0016EBD0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80171C74 0016EBD4 41 82 00 90 */ beq lbl_80171D04 +/* 80171C78 0016EBD8 A0 DE 00 08 */ lhz r6, 8(r30) +/* 80171C7C 0016EBDC 7F E3 FB 78 */ mr r3, r31 +/* 80171C80 0016EBE0 38 81 00 10 */ addi r4, r1, 0x10 +/* 80171C84 0016EBE4 38 A1 00 0C */ addi r5, r1, 0xc +/* 80171C88 0016EBE8 B0 C1 00 0C */ sth r6, 0xc(r1) +/* 80171C8C 0016EBEC A0 1E 06 98 */ lhz r0, 0x698(r30) +/* 80171C90 0016EBF0 B0 C1 00 08 */ sth r6, 8(r1) +/* 80171C94 0016EBF4 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80171C98 0016EBF8 48 0C 84 E9 */ bl GetTeamAiRole__10CTeamAiMgrCFRC13CStateManager9TUniqueId9TUniqueId +/* 80171C9C 0016EBFC 28 03 00 00 */ cmplwi r3, 0 +/* 80171CA0 0016EC00 40 82 00 10 */ bne lbl_80171CB0 +/* 80171CA4 0016EC04 7F C3 F3 78 */ mr r3, r30 +/* 80171CA8 0016EC08 7F E4 FB 78 */ mr r4, r31 +/* 80171CAC 0016EC0C 4B FF B6 21 */ bl sub_8016d2cc +lbl_80171CB0: +/* 80171CB0 0016EC10 FC 20 F8 90 */ fmr f1, f31 +/* 80171CB4 0016EC14 7F C3 F3 78 */ mr r3, r30 +/* 80171CB8 0016EC18 7F E4 FB 78 */ mr r4, r31 +/* 80171CBC 0016EC1C 4B FF 84 19 */ bl sub_8016a0d4 +/* 80171CC0 0016EC20 FC 20 F8 90 */ fmr f1, f31 +/* 80171CC4 0016EC24 7F C3 F3 78 */ mr r3, r30 +/* 80171CC8 0016EC28 7F E4 FB 78 */ mr r4, r31 +/* 80171CCC 0016EC2C 4B FF A0 29 */ bl sub_8016bcf4 +/* 80171CD0 0016EC30 FC 20 F8 90 */ fmr f1, f31 +/* 80171CD4 0016EC34 7F C3 F3 78 */ mr r3, r30 +/* 80171CD8 0016EC38 7F E4 FB 78 */ mr r4, r31 +/* 80171CDC 0016EC3C 4B FF AB 4D */ bl sub_8016c828 +/* 80171CE0 0016EC40 7F C3 F3 78 */ mr r3, r30 +/* 80171CE4 0016EC44 4B FF FA 79 */ bl sub_8017175c +/* 80171CE8 0016EC48 7F C3 F3 78 */ mr r3, r30 +/* 80171CEC 0016EC4C 7F E4 FB 78 */ mr r4, r31 +/* 80171CF0 0016EC50 4B FF A7 75 */ bl sub_8016c464 +/* 80171CF4 0016EC54 FC 20 F8 90 */ fmr f1, f31 +/* 80171CF8 0016EC58 7F C3 F3 78 */ mr r3, r30 +/* 80171CFC 0016EC5C 7F E4 FB 78 */ mr r4, r31 +/* 80171D00 0016EC60 4B F0 7E 19 */ bl Think__10CPatternedFfR13CStateManager +lbl_80171D04: +/* 80171D04 0016EC64 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80171D08 0016EC68 CB E1 00 28 */ lfd f31, 0x28(r1) +/* 80171D0C 0016EC6C 83 E1 00 24 */ lwz r31, 0x24(r1) +/* 80171D10 0016EC70 83 C1 00 20 */ lwz r30, 0x20(r1) +/* 80171D14 0016EC74 7C 08 03 A6 */ mtlr r0 +/* 80171D18 0016EC78 38 21 00 30 */ addi r1, r1, 0x30 +/* 80171D1C 0016EC7C 4E 80 00 20 */ blr + +.global Accept__8CMetroidFR8IVisitor +Accept__8CMetroidFR8IVisitor: +/* 80171D20 0016EC80 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80171D24 0016EC84 7C 08 02 A6 */ mflr r0 +/* 80171D28 0016EC88 90 01 00 14 */ stw r0, 0x14(r1) +/* 80171D2C 0016EC8C 7C 60 1B 78 */ mr r0, r3 +/* 80171D30 0016EC90 7C 83 23 78 */ mr r3, r4 +/* 80171D34 0016EC94 81 84 00 00 */ lwz r12, 0(r4) +/* 80171D38 0016EC98 7C 04 03 78 */ mr r4, r0 +/* 80171D3C 0016EC9C 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 80171D40 0016ECA0 7D 89 03 A6 */ mtctr r12 +/* 80171D44 0016ECA4 4E 80 04 21 */ bctrl +/* 80171D48 0016ECA8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80171D4C 0016ECAC 7C 08 03 A6 */ mtlr r0 +/* 80171D50 0016ECB0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80171D54 0016ECB4 4E 80 00 20 */ blr + +.global __dt__8CMetroid +__dt__8CMetroid: +/* 80171D58 0016ECB8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80171D5C 0016ECBC 7C 08 02 A6 */ mflr r0 +/* 80171D60 0016ECC0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80171D64 0016ECC4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80171D68 0016ECC8 7C 9F 23 78 */ mr r31, r4 +/* 80171D6C 0016ECCC 93 C1 00 08 */ stw r30, 8(r1) +/* 80171D70 0016ECD0 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80171D74 0016ECD4 41 82 00 D8 */ beq lbl_80171E4C +/* 80171D78 0016ECD8 3C 60 80 3E */ lis r3, lbl_803E3AD8@ha +/* 80171D7C 0016ECDC 34 1E 09 54 */ addic. r0, r30, 0x954 +/* 80171D80 0016ECE0 38 03 3A D8 */ addi r0, r3, lbl_803E3AD8@l +/* 80171D84 0016ECE4 90 1E 00 00 */ stw r0, 0(r30) +/* 80171D88 0016ECE8 41 82 00 10 */ beq lbl_80171D98 +/* 80171D8C 0016ECEC 38 7E 09 54 */ addi r3, r30, 0x954 +/* 80171D90 0016ECF0 38 80 FF FF */ li r4, -1 +/* 80171D94 0016ECF4 4B F9 48 75 */ bl __dt__16CActorParametersFv +lbl_80171D98: +/* 80171D98 0016ECF8 34 1E 06 C0 */ addic. r0, r30, 0x6c0 +/* 80171D9C 0016ECFC 41 82 00 60 */ beq lbl_80171DFC +/* 80171DA0 0016ED00 34 1E 06 C4 */ addic. r0, r30, 0x6c4 +/* 80171DA4 0016ED04 41 82 00 58 */ beq lbl_80171DFC +/* 80171DA8 0016ED08 80 BE 06 C4 */ lwz r5, 0x6c4(r30) +/* 80171DAC 0016ED0C 38 60 00 00 */ li r3, 0 +/* 80171DB0 0016ED10 2C 05 00 00 */ cmpwi r5, 0 +/* 80171DB4 0016ED14 40 81 00 40 */ ble lbl_80171DF4 +/* 80171DB8 0016ED18 2C 05 00 08 */ cmpwi r5, 8 +/* 80171DBC 0016ED1C 38 85 FF F8 */ addi r4, r5, -8 +/* 80171DC0 0016ED20 40 81 00 20 */ ble lbl_80171DE0 +/* 80171DC4 0016ED24 38 04 00 07 */ addi r0, r4, 7 +/* 80171DC8 0016ED28 54 00 E8 FE */ srwi r0, r0, 3 +/* 80171DCC 0016ED2C 7C 09 03 A6 */ mtctr r0 +/* 80171DD0 0016ED30 2C 04 00 00 */ cmpwi r4, 0 +/* 80171DD4 0016ED34 40 81 00 0C */ ble lbl_80171DE0 +lbl_80171DD8: +/* 80171DD8 0016ED38 38 63 00 08 */ addi r3, r3, 8 +/* 80171DDC 0016ED3C 42 00 FF FC */ bdnz lbl_80171DD8 +lbl_80171DE0: +/* 80171DE0 0016ED40 7C 03 28 50 */ subf r0, r3, r5 +/* 80171DE4 0016ED44 7C 09 03 A6 */ mtctr r0 +/* 80171DE8 0016ED48 7C 03 28 00 */ cmpw r3, r5 +/* 80171DEC 0016ED4C 40 80 00 08 */ bge lbl_80171DF4 +lbl_80171DF0: +/* 80171DF0 0016ED50 42 00 00 00 */ bdnz lbl_80171DF0 +lbl_80171DF4: +/* 80171DF4 0016ED54 38 00 00 00 */ li r0, 0 +/* 80171DF8 0016ED58 90 1E 06 C4 */ stw r0, 0x6c4(r30) +lbl_80171DFC: +/* 80171DFC 0016ED5C 34 1E 06 A0 */ addic. r0, r30, 0x6a0 +/* 80171E00 0016ED60 41 82 00 24 */ beq lbl_80171E24 +/* 80171E04 0016ED64 3C 60 80 3F */ lis r3, lbl_803ECAF8@ha +/* 80171E08 0016ED68 34 1E 06 A0 */ addic. r0, r30, 0x6a0 +/* 80171E0C 0016ED6C 38 03 CA F8 */ addi r0, r3, lbl_803ECAF8@l +/* 80171E10 0016ED70 90 1E 06 A0 */ stw r0, 0x6a0(r30) +/* 80171E14 0016ED74 41 82 00 10 */ beq lbl_80171E24 +/* 80171E18 0016ED78 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 80171E1C 0016ED7C 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l +/* 80171E20 0016ED80 90 1E 06 A0 */ stw r0, 0x6a0(r30) +lbl_80171E24: +/* 80171E24 0016ED84 38 7E 05 6C */ addi r3, r30, 0x56c +/* 80171E28 0016ED88 38 80 FF FF */ li r4, -1 +/* 80171E2C 0016ED8C 4B F5 DE ED */ bl sub_800cfd18 +/* 80171E30 0016ED90 7F C3 F3 78 */ mr r3, r30 +/* 80171E34 0016ED94 38 80 00 00 */ li r4, 0 +/* 80171E38 0016ED98 4B F0 57 39 */ bl __dt__10CPatternedFv +/* 80171E3C 0016ED9C 7F E0 07 35 */ extsh. r0, r31 +/* 80171E40 0016EDA0 40 81 00 0C */ ble lbl_80171E4C +/* 80171E44 0016EDA4 7F C3 F3 78 */ mr r3, r30 +/* 80171E48 0016EDA8 48 1A 3A E9 */ bl Free__7CMemoryFPCv +lbl_80171E4C: +/* 80171E4C 0016EDAC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80171E50 0016EDB0 7F C3 F3 78 */ mr r3, r30 +/* 80171E54 0016EDB4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80171E58 0016EDB8 83 C1 00 08 */ lwz r30, 8(r1) +/* 80171E5C 0016EDBC 7C 08 03 A6 */ mtlr r0 +/* 80171E60 0016EDC0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80171E64 0016EDC4 4E 80 00 20 */ blr + +.global "__ct__8CMetroidF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersRC12CMetroidData" +"__ct__8CMetroidF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersRC12CMetroidData": +/* 80171E68 0016EDC8 94 21 FE E0 */ stwu r1, -0x120(r1) +/* 80171E6C 0016EDCC 7C 08 02 A6 */ mflr r0 +/* 80171E70 0016EDD0 90 01 01 24 */ stw r0, 0x124(r1) +/* 80171E74 0016EDD4 DB E1 01 10 */ stfd f31, 0x110(r1) +/* 80171E78 0016EDD8 F3 E1 01 18 */ psq_st f31, 280(r1), 0, qr0 +/* 80171E7C 0016EDDC DB C1 01 00 */ stfd f30, 0x100(r1) +/* 80171E80 0016EDE0 F3 C1 01 08 */ psq_st f30, 264(r1), 0, qr0 +/* 80171E84 0016EDE4 DB A1 00 F0 */ stfd f29, 0xf0(r1) +/* 80171E88 0016EDE8 F3 A1 00 F8 */ psq_st f29, 248(r1), 0, qr0 +/* 80171E8C 0016EDEC DB 81 00 E0 */ stfd f28, 0xe0(r1) +/* 80171E90 0016EDF0 F3 81 00 E8 */ psq_st f28, 232(r1), 0, qr0 +/* 80171E94 0016EDF4 BF 21 00 C4 */ stmw r25, 0xc4(r1) +/* 80171E98 0016EDF8 A0 04 00 00 */ lhz r0, 0(r4) +/* 80171E9C 0016EDFC 7D 5C 53 78 */ mr r28, r10 +/* 80171EA0 0016EE00 7C DB 33 78 */ mr r27, r6 +/* 80171EA4 0016EE04 7C EC 3B 78 */ mr r12, r7 +/* 80171EA8 0016EE08 B0 01 00 20 */ sth r0, 0x20(r1) +/* 80171EAC 0016EE0C 7D 04 43 78 */ mr r4, r8 +/* 80171EB0 0016EE10 7D 2A 4B 78 */ mr r10, r9 +/* 80171EB4 0016EE14 7C A6 2B 78 */ mr r6, r5 +/* 80171EB8 0016EE18 93 81 00 08 */ stw r28, 8(r1) +/* 80171EBC 0016EE1C 39 60 00 01 */ li r11, 1 +/* 80171EC0 0016EE20 7C 89 23 78 */ mr r9, r4 +/* 80171EC4 0016EE24 38 00 00 03 */ li r0, 3 +/* 80171EC8 0016EE28 91 61 00 0C */ stw r11, 0xc(r1) +/* 80171ECC 0016EE2C 7C 7A 1B 78 */ mr r26, r3 +/* 80171ED0 0016EE30 83 A1 01 28 */ lwz r29, 0x128(r1) +/* 80171ED4 0016EE34 7F 67 DB 78 */ mr r7, r27 +/* 80171ED8 0016EE38 91 61 00 10 */ stw r11, 0x10(r1) +/* 80171EDC 0016EE3C 7D 88 63 78 */ mr r8, r12 +/* 80171EE0 0016EE40 83 E1 01 2C */ lwz r31, 0x12c(r1) +/* 80171EE4 0016EE44 38 A1 00 20 */ addi r5, r1, 0x20 +/* 80171EE8 0016EE48 90 01 00 14 */ stw r0, 0x14(r1) +/* 80171EEC 0016EE4C 38 80 00 13 */ li r4, 0x13 +/* 80171EF0 0016EE50 83 C1 01 30 */ lwz r30, 0x130(r1) +/* 80171EF4 0016EE54 93 A1 00 18 */ stw r29, 0x18(r1) +/* 80171EF8 0016EE58 91 61 00 1C */ stw r11, 0x1c(r1) +/* 80171EFC 0016EE5C 4B F0 B5 55 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" +/* 80171F00 0016EE60 3C 60 80 3E */ lis r3, lbl_803E3AD8@ha +/* 80171F04 0016EE64 38 00 FF FF */ li r0, -1 +/* 80171F08 0016EE68 38 63 3A D8 */ addi r3, r3, lbl_803E3AD8@l +/* 80171F0C 0016EE6C 7F E4 FB 78 */ mr r4, r31 +/* 80171F10 0016EE70 90 7A 00 00 */ stw r3, 0(r26) +/* 80171F14 0016EE74 38 7A 05 6C */ addi r3, r26, 0x56c +/* 80171F18 0016EE78 90 1A 05 68 */ stw r0, 0x568(r26) +/* 80171F1C 0016EE7C 4B FF 99 15 */ bl sub_8016b830 +/* 80171F20 0016EE80 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80171F24 0016EE84 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80171F28 0016EE88 C0 02 A1 08 */ lfs f0, lbl_805ABE28@sda21(r2) +/* 80171F2C 0016EE8C 3B E3 66 A0 */ addi r31, r3, skZero3f@l +/* 80171F30 0016EE90 B0 1A 06 98 */ sth r0, 0x698(r26) +/* 80171F34 0016EE94 3B 3A 06 A0 */ addi r25, r26, 0x6a0 +/* 80171F38 0016EE98 38 9A 00 68 */ addi r4, r26, 0x68 +/* 80171F3C 0016EE9C 80 BA 00 64 */ lwz r5, 0x64(r26) +/* 80171F40 0016EEA0 7F 23 CB 78 */ mr r3, r25 +/* 80171F44 0016EEA4 C3 FF 00 00 */ lfs f31, 0(r31) +/* 80171F48 0016EEA8 C0 45 00 04 */ lfs f2, 4(r5) +/* 80171F4C 0016EEAC C0 65 00 00 */ lfs f3, 0(r5) +/* 80171F50 0016EEB0 C0 25 00 08 */ lfs f1, 8(r5) +/* 80171F54 0016EEB4 EF 80 00 B2 */ fmuls f28, f0, f2 +/* 80171F58 0016EEB8 D0 61 00 64 */ stfs f3, 0x64(r1) +/* 80171F5C 0016EEBC C3 DF 00 04 */ lfs f30, 4(r31) +/* 80171F60 0016EEC0 D0 41 00 68 */ stfs f2, 0x68(r1) +/* 80171F64 0016EEC4 C3 BF 00 08 */ lfs f29, 8(r31) +/* 80171F68 0016EEC8 D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 80171F6C 0016EECC 48 15 D9 49 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList +/* 80171F70 0016EED0 3C 60 80 3F */ lis r3, lbl_803ECAF8@ha +/* 80171F74 0016EED4 C0 22 A0 98 */ lfs f1, lbl_805ABDB8@sda21(r2) +/* 80171F78 0016EED8 38 03 CA F8 */ addi r0, r3, lbl_803ECAF8@l +/* 80171F7C 0016EEDC 38 7A 06 C0 */ addi r3, r26, 0x6c0 +/* 80171F80 0016EEE0 90 19 00 00 */ stw r0, 0(r25) +/* 80171F84 0016EEE4 FC 40 08 90 */ fmr f2, f1 +/* 80171F88 0016EEE8 38 80 00 00 */ li r4, 0 +/* 80171F8C 0016EEEC 38 A0 00 03 */ li r5, 3 +/* 80171F90 0016EEF0 D3 F9 00 10 */ stfs f31, 0x10(r25) +/* 80171F94 0016EEF4 D3 D9 00 14 */ stfs f30, 0x14(r25) +/* 80171F98 0016EEF8 D3 B9 00 18 */ stfs f29, 0x18(r25) +/* 80171F9C 0016EEFC D3 99 00 1C */ stfs f28, 0x1c(r25) +/* 80171FA0 0016EF00 80 DC 01 0C */ lwz r6, 0x10c(r28) +/* 80171FA4 0016EF04 48 05 6D F1 */ bl __ct__15CPathFindSearchFP7CPFAreaUiff +/* 80171FA8 0016EF08 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80171FAC 0016EF0C C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) +/* 80171FB0 0016EF10 39 03 66 A0 */ addi r8, r3, skZero3f@l +/* 80171FB4 0016EF14 38 7B FF FE */ addi r3, r27, -2 +/* 80171FB8 0016EF18 C0 08 00 00 */ lfs f0, 0(r8) +/* 80171FBC 0016EF1C 20 1B 00 02 */ subfic r0, r27, 2 +/* 80171FC0 0016EF20 7C 60 03 78 */ or r0, r3, r0 +/* 80171FC4 0016EF24 38 C0 00 00 */ li r6, 0 +/* 80171FC8 0016EF28 D0 1A 07 A4 */ stfs f0, 0x7a4(r26) +/* 80171FCC 0016EF2C 7C 05 FE 70 */ srawi r5, r0, 0x1f +/* 80171FD0 0016EF30 38 00 FF FF */ li r0, -1 +/* 80171FD4 0016EF34 7F 84 E3 78 */ mr r4, r28 +/* 80171FD8 0016EF38 C0 1F 00 04 */ lfs f0, 4(r31) +/* 80171FDC 0016EF3C 38 7A 08 1C */ addi r3, r26, 0x81c +/* 80171FE0 0016EF40 D0 1A 07 A8 */ stfs f0, 0x7a8(r26) +/* 80171FE4 0016EF44 C0 1F 00 08 */ lfs f0, 8(r31) +/* 80171FE8 0016EF48 D0 1A 07 AC */ stfs f0, 0x7ac(r26) +/* 80171FEC 0016EF4C A0 ED A3 8C */ lhz r7, lbl_805A8F4C@sda21(r13) +/* 80171FF0 0016EF50 B0 FA 07 B0 */ sth r7, 0x7b0(r26) +/* 80171FF4 0016EF54 D0 3A 07 B4 */ stfs f1, 0x7b4(r26) +/* 80171FF8 0016EF58 D0 3A 07 B8 */ stfs f1, 0x7b8(r26) +/* 80171FFC 0016EF5C D0 3A 07 BC */ stfs f1, 0x7bc(r26) +/* 80172000 0016EF60 D0 3A 07 C0 */ stfs f1, 0x7c0(r26) +/* 80172004 0016EF64 D0 3A 07 C4 */ stfs f1, 0x7c4(r26) +/* 80172008 0016EF68 90 DA 07 C8 */ stw r6, 0x7c8(r26) +/* 8017200C 0016EF6C 90 BA 07 CC */ stw r5, 0x7cc(r26) +/* 80172010 0016EF70 80 BA 00 64 */ lwz r5, 0x64(r26) +/* 80172014 0016EF74 C0 45 00 04 */ lfs f2, 4(r5) +/* 80172018 0016EF78 C0 65 00 08 */ lfs f3, 8(r5) +/* 8017201C 0016EF7C C0 05 00 00 */ lfs f0, 0(r5) +/* 80172020 0016EF80 D0 1A 07 D0 */ stfs f0, 0x7d0(r26) +/* 80172024 0016EF84 D0 5A 07 D4 */ stfs f2, 0x7d4(r26) +/* 80172028 0016EF88 D0 7A 07 D8 */ stfs f3, 0x7d8(r26) +/* 8017202C 0016EF8C 80 BA 00 64 */ lwz r5, 0x64(r26) +/* 80172030 0016EF90 C0 45 00 04 */ lfs f2, 4(r5) +/* 80172034 0016EF94 C0 65 00 08 */ lfs f3, 8(r5) +/* 80172038 0016EF98 C0 05 00 00 */ lfs f0, 0(r5) +/* 8017203C 0016EF9C D0 1A 07 DC */ stfs f0, 0x7dc(r26) +/* 80172040 0016EFA0 D0 5A 07 E0 */ stfs f2, 0x7e0(r26) +/* 80172044 0016EFA4 D0 7A 07 E4 */ stfs f3, 0x7e4(r26) +/* 80172048 0016EFA8 80 BA 00 64 */ lwz r5, 0x64(r26) +/* 8017204C 0016EFAC C0 45 00 04 */ lfs f2, 4(r5) +/* 80172050 0016EFB0 C0 65 00 08 */ lfs f3, 8(r5) +/* 80172054 0016EFB4 C0 05 00 00 */ lfs f0, 0(r5) +/* 80172058 0016EFB8 D0 1A 07 E8 */ stfs f0, 0x7e8(r26) +/* 8017205C 0016EFBC D0 5A 07 EC */ stfs f2, 0x7ec(r26) +/* 80172060 0016EFC0 D0 7A 07 F0 */ stfs f3, 0x7f0(r26) +/* 80172064 0016EFC4 D0 3A 07 F4 */ stfs f1, 0x7f4(r26) +/* 80172068 0016EFC8 D0 3A 07 F8 */ stfs f1, 0x7f8(r26) +/* 8017206C 0016EFCC D0 3A 07 FC */ stfs f1, 0x7fc(r26) +/* 80172070 0016EFD0 D0 3A 08 00 */ stfs f1, 0x800(r26) +/* 80172074 0016EFD4 D0 3A 08 04 */ stfs f1, 0x804(r26) +/* 80172078 0016EFD8 D0 3A 08 08 */ stfs f1, 0x808(r26) +/* 8017207C 0016EFDC C0 08 00 00 */ lfs f0, 0(r8) +/* 80172080 0016EFE0 D0 1A 08 0C */ stfs f0, 0x80c(r26) +/* 80172084 0016EFE4 C0 1F 00 04 */ lfs f0, 4(r31) +/* 80172088 0016EFE8 D0 1A 08 10 */ stfs f0, 0x810(r26) +/* 8017208C 0016EFEC C0 1F 00 08 */ lfs f0, 8(r31) +/* 80172090 0016EFF0 D0 1A 08 14 */ stfs f0, 0x814(r26) +/* 80172094 0016EFF4 90 1A 08 18 */ stw r0, 0x818(r26) +/* 80172098 0016EFF8 48 00 02 15 */ bl sub_801722ac +/* 8017209C 0016EFFC 7F A4 EB 78 */ mr r4, r29 +/* 801720A0 0016F000 38 7A 09 54 */ addi r3, r26, 0x954 +/* 801720A4 0016F004 4B F5 35 79 */ bl __ct__16CActorParametersFRC16CActorParameters +/* 801720A8 0016F008 A0 1E 00 00 */ lhz r0, 0(r30) +/* 801720AC 0016F00C 38 80 00 00 */ li r4, 0 +/* 801720B0 0016F010 38 61 00 24 */ addi r3, r1, 0x24 +/* 801720B4 0016F014 B0 1A 09 BC */ sth r0, 0x9bc(r26) +/* 801720B8 0016F018 98 9A 09 BE */ stb r4, 0x9be(r26) +/* 801720BC 0016F01C 88 1A 09 BF */ lbz r0, 0x9bf(r26) +/* 801720C0 0016F020 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801720C4 0016F024 98 1A 09 BF */ stb r0, 0x9bf(r26) +/* 801720C8 0016F028 88 1A 09 BF */ lbz r0, 0x9bf(r26) +/* 801720CC 0016F02C 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 801720D0 0016F030 98 1A 09 BF */ stb r0, 0x9bf(r26) +/* 801720D4 0016F034 88 1A 09 BF */ lbz r0, 0x9bf(r26) +/* 801720D8 0016F038 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 801720DC 0016F03C 98 1A 09 BF */ stb r0, 0x9bf(r26) +/* 801720E0 0016F040 88 1A 09 BF */ lbz r0, 0x9bf(r26) +/* 801720E4 0016F044 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 801720E8 0016F048 98 1A 09 BF */ stb r0, 0x9bf(r26) +/* 801720EC 0016F04C 88 1A 09 BF */ lbz r0, 0x9bf(r26) +/* 801720F0 0016F050 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c +/* 801720F4 0016F054 98 1A 09 BF */ stb r0, 0x9bf(r26) +/* 801720F8 0016F058 88 1A 09 BF */ lbz r0, 0x9bf(r26) +/* 801720FC 0016F05C 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d +/* 80172100 0016F060 98 1A 09 BF */ stb r0, 0x9bf(r26) +/* 80172104 0016F064 88 1A 09 BF */ lbz r0, 0x9bf(r26) +/* 80172108 0016F068 50 80 0F BC */ rlwimi r0, r4, 1, 0x1e, 0x1e +/* 8017210C 0016F06C 98 1A 09 BF */ stb r0, 0x9bf(r26) +/* 80172110 0016F070 88 1A 09 BF */ lbz r0, 0x9bf(r26) +/* 80172114 0016F074 50 80 07 FE */ rlwimi r0, r4, 0, 0x1f, 0x1f +/* 80172118 0016F078 98 1A 09 BF */ stb r0, 0x9bf(r26) +/* 8017211C 0016F07C 88 1A 09 C0 */ lbz r0, 0x9c0(r26) +/* 80172120 0016F080 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 80172124 0016F084 98 1A 09 C0 */ stb r0, 0x9c0(r26) +/* 80172128 0016F088 48 17 0F 55 */ bl NoParameter__12CPASAnimParmFv +/* 8017212C 0016F08C 38 61 00 2C */ addi r3, r1, 0x2c +/* 80172130 0016F090 48 17 0F 4D */ bl NoParameter__12CPASAnimParmFv +/* 80172134 0016F094 38 61 00 34 */ addi r3, r1, 0x34 +/* 80172138 0016F098 48 17 0F 45 */ bl NoParameter__12CPASAnimParmFv +/* 8017213C 0016F09C 38 61 00 3C */ addi r3, r1, 0x3c +/* 80172140 0016F0A0 48 17 0F 3D */ bl NoParameter__12CPASAnimParmFv +/* 80172144 0016F0A4 38 61 00 44 */ addi r3, r1, 0x44 +/* 80172148 0016F0A8 48 17 0F 35 */ bl NoParameter__12CPASAnimParmFv +/* 8017214C 0016F0AC 38 61 00 4C */ addi r3, r1, 0x4c +/* 80172150 0016F0B0 48 17 0F 2D */ bl NoParameter__12CPASAnimParmFv +/* 80172154 0016F0B4 38 61 00 54 */ addi r3, r1, 0x54 +/* 80172158 0016F0B8 38 80 00 03 */ li r4, 3 +/* 8017215C 0016F0BC 48 17 0E 29 */ bl FromEnum__12CPASAnimParmFi +/* 80172160 0016F0C0 38 61 00 5C */ addi r3, r1, 0x5c +/* 80172164 0016F0C4 38 80 00 02 */ li r4, 2 +/* 80172168 0016F0C8 48 17 0E 1D */ bl FromEnum__12CPASAnimParmFi +/* 8017216C 0016F0CC 38 61 00 2C */ addi r3, r1, 0x2c +/* 80172170 0016F0D0 38 01 00 24 */ addi r0, r1, 0x24 +/* 80172174 0016F0D4 90 61 00 08 */ stw r3, 8(r1) +/* 80172178 0016F0D8 38 61 00 70 */ addi r3, r1, 0x70 +/* 8017217C 0016F0DC 38 A1 00 5C */ addi r5, r1, 0x5c +/* 80172180 0016F0E0 38 C1 00 54 */ addi r6, r1, 0x54 +/* 80172184 0016F0E4 90 01 00 0C */ stw r0, 0xc(r1) +/* 80172188 0016F0E8 38 E1 00 4C */ addi r7, r1, 0x4c +/* 8017218C 0016F0EC 39 01 00 44 */ addi r8, r1, 0x44 +/* 80172190 0016F0F0 39 21 00 3C */ addi r9, r1, 0x3c +/* 80172194 0016F0F4 39 41 00 34 */ addi r10, r1, 0x34 +/* 80172198 0016F0F8 38 80 00 09 */ li r4, 9 +/* 8017219C 0016F0FC 4B F0 B1 29 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm +/* 801721A0 0016F100 7F 43 D3 78 */ mr r3, r26 +/* 801721A4 0016F104 38 81 00 70 */ addi r4, r1, 0x70 +/* 801721A8 0016F108 4B F0 A8 59 */ bl func_8007CA00 +/* 801721AC 0016F10C D0 3A 08 08 */ stfs f1, 0x808(r26) +/* 801721B0 0016F110 7F 43 D3 78 */ mr r3, r26 +/* 801721B4 0016F114 4B FF F5 A9 */ bl sub_8017175c +/* 801721B8 0016F118 C0 22 A1 08 */ lfs f1, lbl_805ABE28@sda21(r2) +/* 801721BC 0016F11C 7F 43 D3 78 */ mr r3, r26 +/* 801721C0 0016F120 4B FA 83 21 */ bl SetCoefficientOfRestitutionModifier__13CPhysicsActorFf +/* 801721C4 0016F124 88 1A 04 E2 */ lbz r0, 0x4e2(r26) +/* 801721C8 0016F128 38 60 00 00 */ li r3, 0 +/* 801721CC 0016F12C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801721D0 0016F130 98 1A 04 E2 */ stb r0, 0x4e2(r26) +/* 801721D4 0016F134 88 1A 04 E1 */ lbz r0, 0x4e1(r26) +/* 801721D8 0016F138 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801721DC 0016F13C 98 1A 04 E1 */ stb r0, 0x4e1(r26) +/* 801721E0 0016F140 88 1A 04 E1 */ lbz r0, 0x4e1(r26) +/* 801721E4 0016F144 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801721E8 0016F148 98 1A 04 E1 */ stb r0, 0x4e1(r26) +/* 801721EC 0016F14C 88 1A 04 E1 */ lbz r0, 0x4e1(r26) +/* 801721F0 0016F150 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801721F4 0016F154 98 1A 04 E1 */ stb r0, 0x4e1(r26) +/* 801721F8 0016F158 80 1A 03 FC */ lwz r0, 0x3fc(r26) +/* 801721FC 0016F15C 2C 00 00 02 */ cmpwi r0, 2 +/* 80172200 0016F160 40 82 00 10 */ bne lbl_80172210 +/* 80172204 0016F164 88 1A 04 E1 */ lbz r0, 0x4e1(r26) +/* 80172208 0016F168 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8017220C 0016F16C 98 1A 04 E1 */ stb r0, 0x4e1(r26) +lbl_80172210: +/* 80172210 0016F170 38 00 00 01 */ li r0, 1 +/* 80172214 0016F174 34 A1 00 74 */ addic. r5, r1, 0x74 +/* 80172218 0016F178 98 1A 09 14 */ stb r0, 0x914(r26) +/* 8017221C 0016F17C 41 82 00 58 */ beq lbl_80172274 +/* 80172220 0016F180 80 C5 00 00 */ lwz r6, 0(r5) +/* 80172224 0016F184 38 60 00 00 */ li r3, 0 +/* 80172228 0016F188 2C 06 00 00 */ cmpwi r6, 0 +/* 8017222C 0016F18C 40 81 00 40 */ ble lbl_8017226C +/* 80172230 0016F190 2C 06 00 08 */ cmpwi r6, 8 +/* 80172234 0016F194 38 86 FF F8 */ addi r4, r6, -8 +/* 80172238 0016F198 40 81 00 20 */ ble lbl_80172258 +/* 8017223C 0016F19C 38 04 00 07 */ addi r0, r4, 7 +/* 80172240 0016F1A0 54 00 E8 FE */ srwi r0, r0, 3 +/* 80172244 0016F1A4 7C 09 03 A6 */ mtctr r0 +/* 80172248 0016F1A8 2C 04 00 00 */ cmpwi r4, 0 +/* 8017224C 0016F1AC 40 81 00 0C */ ble lbl_80172258 +lbl_80172250: +/* 80172250 0016F1B0 38 63 00 08 */ addi r3, r3, 8 +/* 80172254 0016F1B4 42 00 FF FC */ bdnz lbl_80172250 +lbl_80172258: +/* 80172258 0016F1B8 7C 03 30 50 */ subf r0, r3, r6 +/* 8017225C 0016F1BC 7C 09 03 A6 */ mtctr r0 +/* 80172260 0016F1C0 7C 03 30 00 */ cmpw r3, r6 +/* 80172264 0016F1C4 40 80 00 08 */ bge lbl_8017226C +lbl_80172268: +/* 80172268 0016F1C8 42 00 00 00 */ bdnz lbl_80172268 +lbl_8017226C: +/* 8017226C 0016F1CC 38 00 00 00 */ li r0, 0 +/* 80172270 0016F1D0 90 05 00 00 */ stw r0, 0(r5) +lbl_80172274: +/* 80172274 0016F1D4 7F 43 D3 78 */ mr r3, r26 +/* 80172278 0016F1D8 E3 E1 01 18 */ psq_l f31, 280(r1), 0, qr0 +/* 8017227C 0016F1DC CB E1 01 10 */ lfd f31, 0x110(r1) +/* 80172280 0016F1E0 E3 C1 01 08 */ psq_l f30, 264(r1), 0, qr0 +/* 80172284 0016F1E4 CB C1 01 00 */ lfd f30, 0x100(r1) +/* 80172288 0016F1E8 E3 A1 00 F8 */ psq_l f29, 248(r1), 0, qr0 +/* 8017228C 0016F1EC CB A1 00 F0 */ lfd f29, 0xf0(r1) +/* 80172290 0016F1F0 E3 81 00 E8 */ psq_l f28, 232(r1), 0, qr0 +/* 80172294 0016F1F4 CB 81 00 E0 */ lfd f28, 0xe0(r1) +/* 80172298 0016F1F8 BB 21 00 C4 */ lmw r25, 0xc4(r1) +/* 8017229C 0016F1FC 80 01 01 24 */ lwz r0, 0x124(r1) +/* 801722A0 0016F200 7C 08 03 A6 */ mtlr r0 +/* 801722A4 0016F204 38 21 01 20 */ addi r1, r1, 0x120 +/* 801722A8 0016F208 4E 80 00 20 */ blr + +.global sub_801722ac +sub_801722ac: +/* 801722AC 0016F20C C0 04 00 00 */ lfs f0, 0(r4) +/* 801722B0 0016F210 D0 03 00 00 */ stfs f0, 0(r3) +/* 801722B4 0016F214 C0 04 00 04 */ lfs f0, 4(r4) +/* 801722B8 0016F218 D0 03 00 04 */ stfs f0, 4(r3) +/* 801722BC 0016F21C C0 04 00 08 */ lfs f0, 8(r4) +/* 801722C0 0016F220 D0 03 00 08 */ stfs f0, 8(r3) +/* 801722C4 0016F224 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 801722C8 0016F228 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 801722CC 0016F22C C0 04 00 10 */ lfs f0, 0x10(r4) +/* 801722D0 0016F230 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 801722D4 0016F234 C0 04 00 14 */ lfs f0, 0x14(r4) +/* 801722D8 0016F238 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 801722DC 0016F23C C0 04 00 18 */ lfs f0, 0x18(r4) +/* 801722E0 0016F240 D0 03 00 18 */ stfs f0, 0x18(r3) +/* 801722E4 0016F244 C0 04 00 1C */ lfs f0, 0x1c(r4) +/* 801722E8 0016F248 D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 801722EC 0016F24C C0 04 00 20 */ lfs f0, 0x20(r4) +/* 801722F0 0016F250 D0 03 00 20 */ stfs f0, 0x20(r3) +/* 801722F4 0016F254 C0 04 00 24 */ lfs f0, 0x24(r4) +/* 801722F8 0016F258 D0 03 00 24 */ stfs f0, 0x24(r3) +/* 801722FC 0016F25C C0 04 00 28 */ lfs f0, 0x28(r4) +/* 80172300 0016F260 D0 03 00 28 */ stfs f0, 0x28(r3) +/* 80172304 0016F264 C0 04 00 2C */ lfs f0, 0x2c(r4) +/* 80172308 0016F268 D0 03 00 2C */ stfs f0, 0x2c(r3) +/* 8017230C 0016F26C C0 04 00 30 */ lfs f0, 0x30(r4) +/* 80172310 0016F270 D0 03 00 30 */ stfs f0, 0x30(r3) +/* 80172314 0016F274 80 04 00 34 */ lwz r0, 0x34(r4) +/* 80172318 0016F278 90 03 00 34 */ stw r0, 0x34(r3) +/* 8017231C 0016F27C 88 04 00 38 */ lbz r0, 0x38(r4) +/* 80172320 0016F280 98 03 00 38 */ stb r0, 0x38(r3) +/* 80172324 0016F284 C0 04 00 3C */ lfs f0, 0x3c(r4) +/* 80172328 0016F288 D0 03 00 3C */ stfs f0, 0x3c(r3) +/* 8017232C 0016F28C C0 04 00 40 */ lfs f0, 0x40(r4) +/* 80172330 0016F290 D0 03 00 40 */ stfs f0, 0x40(r3) +/* 80172334 0016F294 C0 04 00 44 */ lfs f0, 0x44(r4) +/* 80172338 0016F298 D0 03 00 44 */ stfs f0, 0x44(r3) +/* 8017233C 0016F29C C0 04 00 48 */ lfs f0, 0x48(r4) +/* 80172340 0016F2A0 D0 03 00 48 */ stfs f0, 0x48(r3) +/* 80172344 0016F2A4 88 04 00 4C */ lbz r0, 0x4c(r4) +/* 80172348 0016F2A8 98 03 00 4C */ stb r0, 0x4c(r3) +/* 8017234C 0016F2AC C0 04 00 50 */ lfs f0, 0x50(r4) +/* 80172350 0016F2B0 D0 03 00 50 */ stfs f0, 0x50(r3) +/* 80172354 0016F2B4 C0 04 00 54 */ lfs f0, 0x54(r4) +/* 80172358 0016F2B8 D0 03 00 54 */ stfs f0, 0x54(r3) +/* 8017235C 0016F2BC C0 04 00 58 */ lfs f0, 0x58(r4) +/* 80172360 0016F2C0 D0 03 00 58 */ stfs f0, 0x58(r3) +/* 80172364 0016F2C4 80 A4 00 5C */ lwz r5, 0x5c(r4) +/* 80172368 0016F2C8 80 04 00 60 */ lwz r0, 0x60(r4) +/* 8017236C 0016F2CC 90 A3 00 5C */ stw r5, 0x5c(r3) +/* 80172370 0016F2D0 90 03 00 60 */ stw r0, 0x60(r3) +/* 80172374 0016F2D4 80 A4 00 64 */ lwz r5, 0x64(r4) +/* 80172378 0016F2D8 80 04 00 68 */ lwz r0, 0x68(r4) +/* 8017237C 0016F2DC 90 A3 00 64 */ stw r5, 0x64(r3) +/* 80172380 0016F2E0 90 03 00 68 */ stw r0, 0x68(r3) +/* 80172384 0016F2E4 80 A4 00 6C */ lwz r5, 0x6c(r4) +/* 80172388 0016F2E8 80 04 00 70 */ lwz r0, 0x70(r4) +/* 8017238C 0016F2EC 90 A3 00 6C */ stw r5, 0x6c(r3) +/* 80172390 0016F2F0 90 03 00 70 */ stw r0, 0x70(r3) +/* 80172394 0016F2F4 80 A4 00 74 */ lwz r5, 0x74(r4) +/* 80172398 0016F2F8 80 04 00 78 */ lwz r0, 0x78(r4) +/* 8017239C 0016F2FC 90 A3 00 74 */ stw r5, 0x74(r3) +/* 801723A0 0016F300 90 03 00 78 */ stw r0, 0x78(r3) +/* 801723A4 0016F304 80 A4 00 7C */ lwz r5, 0x7c(r4) +/* 801723A8 0016F308 80 04 00 80 */ lwz r0, 0x80(r4) +/* 801723AC 0016F30C 90 A3 00 7C */ stw r5, 0x7c(r3) +/* 801723B0 0016F310 90 03 00 80 */ stw r0, 0x80(r3) +/* 801723B4 0016F314 80 A4 00 84 */ lwz r5, 0x84(r4) +/* 801723B8 0016F318 80 04 00 88 */ lwz r0, 0x88(r4) +/* 801723BC 0016F31C 90 A3 00 84 */ stw r5, 0x84(r3) +/* 801723C0 0016F320 90 03 00 88 */ stw r0, 0x88(r3) +/* 801723C4 0016F324 80 A4 00 8C */ lwz r5, 0x8c(r4) +/* 801723C8 0016F328 80 04 00 90 */ lwz r0, 0x90(r4) +/* 801723CC 0016F32C 90 A3 00 8C */ stw r5, 0x8c(r3) +/* 801723D0 0016F330 90 03 00 90 */ stw r0, 0x90(r3) +/* 801723D4 0016F334 80 04 00 94 */ lwz r0, 0x94(r4) +/* 801723D8 0016F338 90 03 00 94 */ stw r0, 0x94(r3) +/* 801723DC 0016F33C 80 A4 00 98 */ lwz r5, 0x98(r4) +/* 801723E0 0016F340 80 04 00 9C */ lwz r0, 0x9c(r4) +/* 801723E4 0016F344 90 A3 00 98 */ stw r5, 0x98(r3) +/* 801723E8 0016F348 90 03 00 9C */ stw r0, 0x9c(r3) +/* 801723EC 0016F34C 80 A4 00 A0 */ lwz r5, 0xa0(r4) +/* 801723F0 0016F350 80 04 00 A4 */ lwz r0, 0xa4(r4) +/* 801723F4 0016F354 90 A3 00 A0 */ stw r5, 0xa0(r3) +/* 801723F8 0016F358 90 03 00 A4 */ stw r0, 0xa4(r3) +/* 801723FC 0016F35C 80 A4 00 A8 */ lwz r5, 0xa8(r4) +/* 80172400 0016F360 80 04 00 AC */ lwz r0, 0xac(r4) +/* 80172404 0016F364 90 A3 00 A8 */ stw r5, 0xa8(r3) +/* 80172408 0016F368 90 03 00 AC */ stw r0, 0xac(r3) +/* 8017240C 0016F36C 80 A4 00 B0 */ lwz r5, 0xb0(r4) +/* 80172410 0016F370 80 04 00 B4 */ lwz r0, 0xb4(r4) +/* 80172414 0016F374 90 A3 00 B0 */ stw r5, 0xb0(r3) +/* 80172418 0016F378 90 03 00 B4 */ stw r0, 0xb4(r3) +/* 8017241C 0016F37C 80 04 00 B8 */ lwz r0, 0xb8(r4) +/* 80172420 0016F380 90 03 00 B8 */ stw r0, 0xb8(r3) +/* 80172424 0016F384 80 04 00 BC */ lwz r0, 0xbc(r4) +/* 80172428 0016F388 90 03 00 BC */ stw r0, 0xbc(r3) +/* 8017242C 0016F38C 80 04 00 C0 */ lwz r0, 0xc0(r4) +/* 80172430 0016F390 90 03 00 C0 */ stw r0, 0xc0(r3) +/* 80172434 0016F394 C0 04 00 C4 */ lfs f0, 0xc4(r4) +/* 80172438 0016F398 D0 03 00 C4 */ stfs f0, 0xc4(r3) +/* 8017243C 0016F39C C0 04 00 C8 */ lfs f0, 0xc8(r4) +/* 80172440 0016F3A0 D0 03 00 C8 */ stfs f0, 0xc8(r3) +/* 80172444 0016F3A4 C0 04 00 CC */ lfs f0, 0xcc(r4) +/* 80172448 0016F3A8 D0 03 00 CC */ stfs f0, 0xcc(r3) +/* 8017244C 0016F3AC C0 04 00 D0 */ lfs f0, 0xd0(r4) +/* 80172450 0016F3B0 D0 03 00 D0 */ stfs f0, 0xd0(r3) +/* 80172454 0016F3B4 C0 04 00 D4 */ lfs f0, 0xd4(r4) +/* 80172458 0016F3B8 D0 03 00 D4 */ stfs f0, 0xd4(r3) +/* 8017245C 0016F3BC C0 04 00 D8 */ lfs f0, 0xd8(r4) +/* 80172460 0016F3C0 D0 03 00 D8 */ stfs f0, 0xd8(r3) +/* 80172464 0016F3C4 C0 04 00 DC */ lfs f0, 0xdc(r4) +/* 80172468 0016F3C8 D0 03 00 DC */ stfs f0, 0xdc(r3) +/* 8017246C 0016F3CC C0 04 00 E0 */ lfs f0, 0xe0(r4) +/* 80172470 0016F3D0 D0 03 00 E0 */ stfs f0, 0xe0(r3) +/* 80172474 0016F3D4 C0 04 00 E4 */ lfs f0, 0xe4(r4) +/* 80172478 0016F3D8 D0 03 00 E4 */ stfs f0, 0xe4(r3) +/* 8017247C 0016F3DC 80 04 00 E8 */ lwz r0, 0xe8(r4) +/* 80172480 0016F3E0 90 03 00 E8 */ stw r0, 0xe8(r3) +/* 80172484 0016F3E4 80 04 00 EC */ lwz r0, 0xec(r4) +/* 80172488 0016F3E8 90 03 00 EC */ stw r0, 0xec(r3) +/* 8017248C 0016F3EC 80 04 00 F0 */ lwz r0, 0xf0(r4) +/* 80172490 0016F3F0 90 03 00 F0 */ stw r0, 0xf0(r3) +/* 80172494 0016F3F4 80 04 00 F4 */ lwz r0, 0xf4(r4) +/* 80172498 0016F3F8 90 03 00 F4 */ stw r0, 0xf4(r3) +/* 8017249C 0016F3FC 88 04 00 F8 */ lbz r0, 0xf8(r4) +/* 801724A0 0016F400 98 03 00 F8 */ stb r0, 0xf8(r3) +/* 801724A4 0016F404 80 04 00 FC */ lwz r0, 0xfc(r4) +/* 801724A8 0016F408 90 03 00 FC */ stw r0, 0xfc(r3) +/* 801724AC 0016F40C C0 04 01 00 */ lfs f0, 0x100(r4) +/* 801724B0 0016F410 D0 03 01 00 */ stfs f0, 0x100(r3) +/* 801724B4 0016F414 C0 04 01 04 */ lfs f0, 0x104(r4) +/* 801724B8 0016F418 D0 03 01 04 */ stfs f0, 0x104(r3) +/* 801724BC 0016F41C C0 04 01 08 */ lfs f0, 0x108(r4) +/* 801724C0 0016F420 D0 03 01 08 */ stfs f0, 0x108(r3) +/* 801724C4 0016F424 80 04 01 0C */ lwz r0, 0x10c(r4) +/* 801724C8 0016F428 90 03 01 0C */ stw r0, 0x10c(r3) +/* 801724CC 0016F42C C0 04 01 10 */ lfs f0, 0x110(r4) +/* 801724D0 0016F430 D0 03 01 10 */ stfs f0, 0x110(r3) +/* 801724D4 0016F434 C0 04 01 14 */ lfs f0, 0x114(r4) +/* 801724D8 0016F438 D0 03 01 14 */ stfs f0, 0x114(r3) +/* 801724DC 0016F43C C0 04 01 18 */ lfs f0, 0x118(r4) +/* 801724E0 0016F440 D0 03 01 18 */ stfs f0, 0x118(r3) +/* 801724E4 0016F444 80 04 01 1C */ lwz r0, 0x11c(r4) +/* 801724E8 0016F448 90 03 01 1C */ stw r0, 0x11c(r3) +/* 801724EC 0016F44C 80 04 01 20 */ lwz r0, 0x120(r4) +/* 801724F0 0016F450 90 03 01 20 */ stw r0, 0x120(r3) +/* 801724F4 0016F454 C0 04 01 24 */ lfs f0, 0x124(r4) +/* 801724F8 0016F458 D0 03 01 24 */ stfs f0, 0x124(r3) +/* 801724FC 0016F45C C0 04 01 28 */ lfs f0, 0x128(r4) +/* 80172500 0016F460 D0 03 01 28 */ stfs f0, 0x128(r3) +/* 80172504 0016F464 C0 04 01 2C */ lfs f0, 0x12c(r4) +/* 80172508 0016F468 D0 03 01 2C */ stfs f0, 0x12c(r3) +/* 8017250C 0016F46C 80 04 01 30 */ lwz r0, 0x130(r4) +/* 80172510 0016F470 90 03 01 30 */ stw r0, 0x130(r3) +/* 80172514 0016F474 80 04 01 34 */ lwz r0, 0x134(r4) +/* 80172518 0016F478 90 03 01 34 */ stw r0, 0x134(r3) +/* 8017251C 0016F47C 4E 80 00 20 */ blr + +.global sub_80172520 +sub_80172520: +/* 80172520 0016F480 2C 04 00 03 */ cmpwi r4, 3 +/* 80172524 0016F484 41 82 00 34 */ beq lbl_80172558 +/* 80172528 0016F488 40 80 00 14 */ bge lbl_8017253C +/* 8017252C 0016F48C 2C 04 00 01 */ cmpwi r4, 1 +/* 80172530 0016F490 41 82 00 18 */ beq lbl_80172548 +/* 80172534 0016F494 40 80 00 1C */ bge lbl_80172550 +/* 80172538 0016F498 48 00 00 30 */ b lbl_80172568 +lbl_8017253C: +/* 8017253C 0016F49C 2C 04 00 05 */ cmpwi r4, 5 +/* 80172540 0016F4A0 40 80 00 28 */ bge lbl_80172568 +/* 80172544 0016F4A4 48 00 00 1C */ b lbl_80172560 +lbl_80172548: +/* 80172548 0016F4A8 38 63 00 E8 */ addi r3, r3, 0xe8 +/* 8017254C 0016F4AC 4E 80 00 20 */ blr +lbl_80172550: +/* 80172550 0016F4B0 38 63 00 F8 */ addi r3, r3, 0xf8 +/* 80172554 0016F4B4 4E 80 00 20 */ blr +lbl_80172558: +/* 80172558 0016F4B8 38 63 01 08 */ addi r3, r3, 0x108 +/* 8017255C 0016F4BC 4E 80 00 20 */ blr +lbl_80172560: +/* 80172560 0016F4C0 38 63 01 18 */ addi r3, r3, 0x118 +/* 80172564 0016F4C4 4E 80 00 20 */ blr +lbl_80172568: +/* 80172568 0016F4C8 38 63 00 E8 */ addi r3, r3, 0xe8 +/* 8017256C 0016F4CC 4E 80 00 20 */ blr + +.global sub_80172570 +sub_80172570: +/* 80172570 0016F4D0 88 03 00 F4 */ lbz r0, 0xf4(r3) +/* 80172574 0016F4D4 38 80 00 00 */ li r4, 0 +/* 80172578 0016F4D8 28 00 00 00 */ cmplwi r0, 0 +/* 8017257C 0016F4DC 41 82 00 08 */ beq lbl_80172584 +/* 80172580 0016F4E0 38 80 00 01 */ li r4, 1 +lbl_80172584: +/* 80172584 0016F4E4 88 03 01 04 */ lbz r0, 0x104(r3) +/* 80172588 0016F4E8 28 00 00 00 */ cmplwi r0, 0 +/* 8017258C 0016F4EC 41 82 00 08 */ beq lbl_80172594 +/* 80172590 0016F4F0 38 84 00 01 */ addi r4, r4, 1 +lbl_80172594: +/* 80172594 0016F4F4 88 03 01 14 */ lbz r0, 0x114(r3) +/* 80172598 0016F4F8 28 00 00 00 */ cmplwi r0, 0 +/* 8017259C 0016F4FC 41 82 00 08 */ beq lbl_801725A4 +/* 801725A0 0016F500 38 84 00 01 */ addi r4, r4, 1 +lbl_801725A4: +/* 801725A4 0016F504 88 03 01 24 */ lbz r0, 0x124(r3) +/* 801725A8 0016F508 28 00 00 00 */ cmplwi r0, 0 +/* 801725AC 0016F50C 41 82 00 08 */ beq lbl_801725B4 +/* 801725B0 0016F510 38 84 00 01 */ addi r4, r4, 1 +lbl_801725B4: +/* 801725B4 0016F514 7C 83 23 78 */ mr r3, r4 +/* 801725B8 0016F518 4E 80 00 20 */ blr + +.global __ct__12CMetroidDataFR12CInputStream +__ct__12CMetroidDataFR12CInputStream: +/* 801725BC 0016F51C 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 801725C0 0016F520 7C 08 02 A6 */ mflr r0 +/* 801725C4 0016F524 90 01 00 84 */ stw r0, 0x84(r1) +/* 801725C8 0016F528 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 801725CC 0016F52C 7C 9F 23 78 */ mr r31, r4 +/* 801725D0 0016F530 93 C1 00 78 */ stw r30, 0x78(r1) +/* 801725D4 0016F534 7C 7E 1B 78 */ mr r30, r3 +/* 801725D8 0016F538 4B F9 05 81 */ bl __ct__20CDamageVulnerabilityFR12CInputStream +/* 801725DC 0016F53C 7F E4 FB 78 */ mr r4, r31 +/* 801725E0 0016F540 38 7E 00 68 */ addi r3, r30, 0x68 +/* 801725E4 0016F544 4B F9 05 75 */ bl __ct__20CDamageVulnerabilityFR12CInputStream +/* 801725E8 0016F548 7F E3 FB 78 */ mr r3, r31 +/* 801725EC 0016F54C 48 1C C6 3D */ bl ReadFloat__12CInputStreamFv +/* 801725F0 0016F550 D0 3E 00 D0 */ stfs f1, 0xd0(r30) +/* 801725F4 0016F554 7F E3 FB 78 */ mr r3, r31 +/* 801725F8 0016F558 48 1C C6 31 */ bl ReadFloat__12CInputStreamFv +/* 801725FC 0016F55C D0 3E 00 D4 */ stfs f1, 0xd4(r30) +/* 80172600 0016F560 7F E3 FB 78 */ mr r3, r31 +/* 80172604 0016F564 48 1C C6 25 */ bl ReadFloat__12CInputStreamFv +/* 80172608 0016F568 D0 3E 00 D8 */ stfs f1, 0xd8(r30) +/* 8017260C 0016F56C 7F E3 FB 78 */ mr r3, r31 +/* 80172610 0016F570 48 1C C6 19 */ bl ReadFloat__12CInputStreamFv +/* 80172614 0016F574 D0 3E 00 DC */ stfs f1, 0xdc(r30) +/* 80172618 0016F578 7F E3 FB 78 */ mr r3, r31 +/* 8017261C 0016F57C 48 1C C6 0D */ bl ReadFloat__12CInputStreamFv +/* 80172620 0016F580 D0 3E 00 E0 */ stfs f1, 0xe0(r30) +/* 80172624 0016F584 7F E3 FB 78 */ mr r3, r31 +/* 80172628 0016F588 48 1C C6 01 */ bl ReadFloat__12CInputStreamFv +/* 8017262C 0016F58C D0 3E 00 E4 */ stfs f1, 0xe4(r30) +/* 80172630 0016F590 7F E4 FB 78 */ mr r4, r31 +/* 80172634 0016F594 38 61 00 6C */ addi r3, r1, 0x6c +/* 80172638 0016F598 4B F6 7D D5 */ bl LoadAnimationParameters__FR12CInputStream +/* 8017263C 0016F59C 38 00 00 01 */ li r0, 1 +/* 80172640 0016F5A0 34 61 00 5C */ addic. r3, r1, 0x5c +/* 80172644 0016F5A4 98 01 00 68 */ stb r0, 0x68(r1) +/* 80172648 0016F5A8 41 82 00 1C */ beq lbl_80172664 +/* 8017264C 0016F5AC 80 01 00 6C */ lwz r0, 0x6c(r1) +/* 80172650 0016F5B0 90 03 00 00 */ stw r0, 0(r3) +/* 80172654 0016F5B4 80 01 00 70 */ lwz r0, 0x70(r1) +/* 80172658 0016F5B8 90 03 00 04 */ stw r0, 4(r3) +/* 8017265C 0016F5BC 80 01 00 74 */ lwz r0, 0x74(r1) +/* 80172660 0016F5C0 90 03 00 08 */ stw r0, 8(r3) +lbl_80172664: +/* 80172664 0016F5C4 88 01 00 68 */ lbz r0, 0x68(r1) +/* 80172668 0016F5C8 28 00 00 00 */ cmplwi r0, 0 +/* 8017266C 0016F5CC 98 1E 00 F4 */ stb r0, 0xf4(r30) +/* 80172670 0016F5D0 41 82 00 24 */ beq lbl_80172694 +/* 80172674 0016F5D4 34 9E 00 E8 */ addic. r4, r30, 0xe8 +/* 80172678 0016F5D8 41 82 00 1C */ beq lbl_80172694 +/* 8017267C 0016F5DC 80 01 00 5C */ lwz r0, 0x5c(r1) +/* 80172680 0016F5E0 80 61 00 60 */ lwz r3, 0x60(r1) +/* 80172684 0016F5E4 90 04 00 00 */ stw r0, 0(r4) +/* 80172688 0016F5E8 80 01 00 64 */ lwz r0, 0x64(r1) +/* 8017268C 0016F5EC 90 64 00 04 */ stw r3, 4(r4) +/* 80172690 0016F5F0 90 04 00 08 */ stw r0, 8(r4) +lbl_80172694: +/* 80172694 0016F5F4 38 00 00 00 */ li r0, 0 +/* 80172698 0016F5F8 7F E4 FB 78 */ mr r4, r31 +/* 8017269C 0016F5FC 98 01 00 68 */ stb r0, 0x68(r1) +/* 801726A0 0016F600 38 61 00 50 */ addi r3, r1, 0x50 +/* 801726A4 0016F604 4B F6 7D 69 */ bl LoadAnimationParameters__FR12CInputStream +/* 801726A8 0016F608 38 00 00 01 */ li r0, 1 +/* 801726AC 0016F60C 34 61 00 40 */ addic. r3, r1, 0x40 +/* 801726B0 0016F610 98 01 00 4C */ stb r0, 0x4c(r1) +/* 801726B4 0016F614 41 82 00 1C */ beq lbl_801726D0 +/* 801726B8 0016F618 80 01 00 50 */ lwz r0, 0x50(r1) +/* 801726BC 0016F61C 90 03 00 00 */ stw r0, 0(r3) +/* 801726C0 0016F620 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801726C4 0016F624 90 03 00 04 */ stw r0, 4(r3) +/* 801726C8 0016F628 80 01 00 58 */ lwz r0, 0x58(r1) +/* 801726CC 0016F62C 90 03 00 08 */ stw r0, 8(r3) +lbl_801726D0: +/* 801726D0 0016F630 88 01 00 4C */ lbz r0, 0x4c(r1) +/* 801726D4 0016F634 28 00 00 00 */ cmplwi r0, 0 +/* 801726D8 0016F638 98 1E 01 04 */ stb r0, 0x104(r30) +/* 801726DC 0016F63C 41 82 00 24 */ beq lbl_80172700 +/* 801726E0 0016F640 34 9E 00 F8 */ addic. r4, r30, 0xf8 +/* 801726E4 0016F644 41 82 00 1C */ beq lbl_80172700 +/* 801726E8 0016F648 80 01 00 40 */ lwz r0, 0x40(r1) +/* 801726EC 0016F64C 80 61 00 44 */ lwz r3, 0x44(r1) +/* 801726F0 0016F650 90 04 00 00 */ stw r0, 0(r4) +/* 801726F4 0016F654 80 01 00 48 */ lwz r0, 0x48(r1) +/* 801726F8 0016F658 90 64 00 04 */ stw r3, 4(r4) +/* 801726FC 0016F65C 90 04 00 08 */ stw r0, 8(r4) +lbl_80172700: +/* 80172700 0016F660 38 00 00 00 */ li r0, 0 +/* 80172704 0016F664 7F E4 FB 78 */ mr r4, r31 +/* 80172708 0016F668 98 01 00 4C */ stb r0, 0x4c(r1) +/* 8017270C 0016F66C 38 61 00 34 */ addi r3, r1, 0x34 +/* 80172710 0016F670 4B F6 7C FD */ bl LoadAnimationParameters__FR12CInputStream +/* 80172714 0016F674 38 00 00 01 */ li r0, 1 +/* 80172718 0016F678 34 61 00 24 */ addic. r3, r1, 0x24 +/* 8017271C 0016F67C 98 01 00 30 */ stb r0, 0x30(r1) +/* 80172720 0016F680 41 82 00 1C */ beq lbl_8017273C +/* 80172724 0016F684 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80172728 0016F688 90 03 00 00 */ stw r0, 0(r3) +/* 8017272C 0016F68C 80 01 00 38 */ lwz r0, 0x38(r1) +/* 80172730 0016F690 90 03 00 04 */ stw r0, 4(r3) +/* 80172734 0016F694 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 80172738 0016F698 90 03 00 08 */ stw r0, 8(r3) +lbl_8017273C: +/* 8017273C 0016F69C 88 01 00 30 */ lbz r0, 0x30(r1) +/* 80172740 0016F6A0 28 00 00 00 */ cmplwi r0, 0 +/* 80172744 0016F6A4 98 1E 01 14 */ stb r0, 0x114(r30) +/* 80172748 0016F6A8 41 82 00 24 */ beq lbl_8017276C +/* 8017274C 0016F6AC 34 9E 01 08 */ addic. r4, r30, 0x108 +/* 80172750 0016F6B0 41 82 00 1C */ beq lbl_8017276C +/* 80172754 0016F6B4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80172758 0016F6B8 80 61 00 28 */ lwz r3, 0x28(r1) +/* 8017275C 0016F6BC 90 04 00 00 */ stw r0, 0(r4) +/* 80172760 0016F6C0 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 80172764 0016F6C4 90 64 00 04 */ stw r3, 4(r4) +/* 80172768 0016F6C8 90 04 00 08 */ stw r0, 8(r4) +lbl_8017276C: +/* 8017276C 0016F6CC 38 00 00 00 */ li r0, 0 +/* 80172770 0016F6D0 7F E4 FB 78 */ mr r4, r31 +/* 80172774 0016F6D4 98 01 00 30 */ stb r0, 0x30(r1) +/* 80172778 0016F6D8 38 61 00 18 */ addi r3, r1, 0x18 +/* 8017277C 0016F6DC 4B F6 7C 91 */ bl LoadAnimationParameters__FR12CInputStream +/* 80172780 0016F6E0 38 00 00 01 */ li r0, 1 +/* 80172784 0016F6E4 34 61 00 08 */ addic. r3, r1, 8 +/* 80172788 0016F6E8 98 01 00 14 */ stb r0, 0x14(r1) +/* 8017278C 0016F6EC 41 82 00 1C */ beq lbl_801727A8 +/* 80172790 0016F6F0 80 01 00 18 */ lwz r0, 0x18(r1) +/* 80172794 0016F6F4 90 03 00 00 */ stw r0, 0(r3) +/* 80172798 0016F6F8 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 8017279C 0016F6FC 90 03 00 04 */ stw r0, 4(r3) +/* 801727A0 0016F700 80 01 00 20 */ lwz r0, 0x20(r1) +/* 801727A4 0016F704 90 03 00 08 */ stw r0, 8(r3) +lbl_801727A8: +/* 801727A8 0016F708 88 01 00 14 */ lbz r0, 0x14(r1) +/* 801727AC 0016F70C 28 00 00 00 */ cmplwi r0, 0 +/* 801727B0 0016F710 98 1E 01 24 */ stb r0, 0x124(r30) +/* 801727B4 0016F714 41 82 00 24 */ beq lbl_801727D8 +/* 801727B8 0016F718 34 9E 01 18 */ addic. r4, r30, 0x118 +/* 801727BC 0016F71C 41 82 00 1C */ beq lbl_801727D8 +/* 801727C0 0016F720 80 01 00 08 */ lwz r0, 8(r1) +/* 801727C4 0016F724 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801727C8 0016F728 90 04 00 00 */ stw r0, 0(r4) +/* 801727CC 0016F72C 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801727D0 0016F730 90 64 00 04 */ stw r3, 4(r4) +/* 801727D4 0016F734 90 04 00 08 */ stw r0, 8(r4) +lbl_801727D8: +/* 801727D8 0016F738 38 00 00 00 */ li r0, 0 +/* 801727DC 0016F73C 7F E3 FB 78 */ mr r3, r31 +/* 801727E0 0016F740 98 01 00 14 */ stb r0, 0x14(r1) +/* 801727E4 0016F744 48 1C C4 F9 */ bl ReadBool__12CInputStreamFv +/* 801727E8 0016F748 88 1E 01 28 */ lbz r0, 0x128(r30) +/* 801727EC 0016F74C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801727F0 0016F750 7F C3 F3 78 */ mr r3, r30 +/* 801727F4 0016F754 98 1E 01 28 */ stb r0, 0x128(r30) +/* 801727F8 0016F758 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 801727FC 0016F75C 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 80172800 0016F760 80 01 00 84 */ lwz r0, 0x84(r1) +/* 80172804 0016F764 7C 08 03 A6 */ mtlr r0 +/* 80172808 0016F768 38 21 00 80 */ addi r1, r1, 0x80 +/* 8017280C 0016F76C 4E 80 00 20 */ blr + +.global sub_80172810 +sub_80172810: +/* 80172810 0016F770 88 03 00 00 */ lbz r0, 0(r3) +/* 80172814 0016F774 88 C4 00 00 */ lbz r6, 0(r4) +/* 80172818 0016F778 7C 00 30 40 */ cmplw r0, r6 +/* 8017281C 0016F77C 4D 81 00 20 */ bgtlr +/* 80172820 0016F780 88 05 00 00 */ lbz r0, 0(r5) +/* 80172824 0016F784 7C 00 30 40 */ cmplw r0, r6 +/* 80172828 0016F788 40 80 00 0C */ bge lbl_80172834 +/* 8017282C 0016F78C 7C A3 2B 78 */ mr r3, r5 +/* 80172830 0016F790 4E 80 00 20 */ blr +lbl_80172834: +/* 80172834 0016F794 7C 83 23 78 */ mr r3, r4 +/* 80172838 0016F798 4E 80 00 20 */ blr + +.global __sinit_CMetroid_cpp +__sinit_CMetroid_cpp: +/* 8017283C 0016F79C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80172840 0016F7A0 7C 08 02 A6 */ mflr r0 +/* 80172844 0016F7A4 3C 60 80 57 */ lis r3, lbl_80571C64@ha +/* 80172848 0016F7A8 39 60 00 02 */ li r11, 2 +/* 8017284C 0016F7AC 90 01 00 44 */ stw r0, 0x44(r1) +/* 80172850 0016F7B0 38 80 00 01 */ li r4, 1 +/* 80172854 0016F7B4 38 00 00 00 */ li r0, 0 +/* 80172858 0016F7B8 38 63 1C 64 */ addi r3, r3, lbl_80571C64@l +/* 8017285C 0016F7BC 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80172860 0016F7C0 38 A0 00 02 */ li r5, 2 +/* 80172864 0016F7C4 38 C0 00 02 */ li r6, 2 +/* 80172868 0016F7C8 38 E0 00 03 */ li r7, 3 +/* 8017286C 0016F7CC 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80172870 0016F7D0 39 00 00 02 */ li r8, 2 +/* 80172874 0016F7D4 39 20 00 01 */ li r9, 1 +/* 80172878 0016F7D8 39 40 00 02 */ li r10, 2 +/* 8017287C 0016F7DC 93 A1 00 34 */ stw r29, 0x34(r1) +/* 80172880 0016F7E0 91 61 00 08 */ stw r11, 8(r1) +/* 80172884 0016F7E4 90 81 00 0C */ stw r4, 0xc(r1) +/* 80172888 0016F7E8 38 80 00 02 */ li r4, 2 +/* 8017288C 0016F7EC 91 61 00 10 */ stw r11, 0x10(r1) +/* 80172890 0016F7F0 91 61 00 14 */ stw r11, 0x14(r1) +/* 80172894 0016F7F4 91 61 00 18 */ stw r11, 0x18(r1) +/* 80172898 0016F7F8 91 61 00 1C */ stw r11, 0x1c(r1) +/* 8017289C 0016F7FC 91 61 00 20 */ stw r11, 0x20(r1) +/* 801728A0 0016F800 91 61 00 24 */ stw r11, 0x24(r1) +/* 801728A4 0016F804 90 01 00 28 */ stw r0, 0x28(r1) +/* 801728A8 0016F808 4B F9 00 8D */ bl __ct__20CDamageVulnerabilityF14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability15EDeflectionType +/* 801728AC 0016F80C 39 60 00 02 */ li r11, 2 +/* 801728B0 0016F810 3C 60 80 57 */ lis r3, lbl_80571E6C@ha +/* 801728B4 0016F814 91 61 00 08 */ stw r11, 8(r1) +/* 801728B8 0016F818 38 80 00 01 */ li r4, 1 +/* 801728BC 0016F81C 38 00 00 00 */ li r0, 0 +/* 801728C0 0016F820 38 63 1E 6C */ addi r3, r3, lbl_80571E6C@l +/* 801728C4 0016F824 90 81 00 0C */ stw r4, 0xc(r1) +/* 801728C8 0016F828 38 80 00 02 */ li r4, 2 +/* 801728CC 0016F82C 38 A0 00 03 */ li r5, 3 +/* 801728D0 0016F830 38 C0 00 02 */ li r6, 2 +/* 801728D4 0016F834 91 61 00 10 */ stw r11, 0x10(r1) +/* 801728D8 0016F838 38 E0 00 02 */ li r7, 2 +/* 801728DC 0016F83C 39 00 00 02 */ li r8, 2 +/* 801728E0 0016F840 39 20 00 01 */ li r9, 1 +/* 801728E4 0016F844 91 61 00 14 */ stw r11, 0x14(r1) +/* 801728E8 0016F848 39 40 00 02 */ li r10, 2 +/* 801728EC 0016F84C 91 61 00 18 */ stw r11, 0x18(r1) +/* 801728F0 0016F850 91 61 00 1C */ stw r11, 0x1c(r1) +/* 801728F4 0016F854 91 61 00 20 */ stw r11, 0x20(r1) +/* 801728F8 0016F858 91 61 00 24 */ stw r11, 0x24(r1) +/* 801728FC 0016F85C 90 01 00 28 */ stw r0, 0x28(r1) +/* 80172900 0016F860 4B F9 00 35 */ bl __ct__20CDamageVulnerabilityF14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability15EDeflectionType +/* 80172904 0016F864 39 60 00 02 */ li r11, 2 +/* 80172908 0016F868 3C 60 80 57 */ lis r3, lbl_80571ED4@ha +/* 8017290C 0016F86C 91 61 00 08 */ stw r11, 8(r1) +/* 80172910 0016F870 38 80 00 01 */ li r4, 1 +/* 80172914 0016F874 38 00 00 00 */ li r0, 0 +/* 80172918 0016F878 38 63 1E D4 */ addi r3, r3, lbl_80571ED4@l +/* 8017291C 0016F87C 90 81 00 0C */ stw r4, 0xc(r1) +/* 80172920 0016F880 38 80 00 02 */ li r4, 2 +/* 80172924 0016F884 38 A0 00 02 */ li r5, 2 +/* 80172928 0016F888 38 C0 00 03 */ li r6, 3 +/* 8017292C 0016F88C 91 61 00 10 */ stw r11, 0x10(r1) +/* 80172930 0016F890 38 E0 00 02 */ li r7, 2 +/* 80172934 0016F894 39 00 00 02 */ li r8, 2 +/* 80172938 0016F898 39 20 00 01 */ li r9, 1 +/* 8017293C 0016F89C 91 61 00 14 */ stw r11, 0x14(r1) +/* 80172940 0016F8A0 39 40 00 02 */ li r10, 2 +/* 80172944 0016F8A4 91 61 00 18 */ stw r11, 0x18(r1) +/* 80172948 0016F8A8 91 61 00 1C */ stw r11, 0x1c(r1) +/* 8017294C 0016F8AC 91 61 00 20 */ stw r11, 0x20(r1) +/* 80172950 0016F8B0 91 61 00 24 */ stw r11, 0x24(r1) +/* 80172954 0016F8B4 90 01 00 28 */ stw r0, 0x28(r1) +/* 80172958 0016F8B8 4B F8 FF DD */ bl __ct__20CDamageVulnerabilityF14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability15EDeflectionType +/* 8017295C 0016F8BC 39 60 00 02 */ li r11, 2 +/* 80172960 0016F8C0 3C 60 80 57 */ lis r3, lbl_80571F3C@ha +/* 80172964 0016F8C4 91 61 00 08 */ stw r11, 8(r1) +/* 80172968 0016F8C8 38 80 00 01 */ li r4, 1 +/* 8017296C 0016F8CC 38 00 00 00 */ li r0, 0 +/* 80172970 0016F8D0 38 63 1F 3C */ addi r3, r3, lbl_80571F3C@l +/* 80172974 0016F8D4 90 81 00 0C */ stw r4, 0xc(r1) +/* 80172978 0016F8D8 38 80 00 03 */ li r4, 3 +/* 8017297C 0016F8DC 38 A0 00 02 */ li r5, 2 +/* 80172980 0016F8E0 38 C0 00 02 */ li r6, 2 +/* 80172984 0016F8E4 91 61 00 10 */ stw r11, 0x10(r1) +/* 80172988 0016F8E8 38 E0 00 02 */ li r7, 2 +/* 8017298C 0016F8EC 39 00 00 02 */ li r8, 2 +/* 80172990 0016F8F0 39 20 00 01 */ li r9, 1 +/* 80172994 0016F8F4 91 61 00 14 */ stw r11, 0x14(r1) +/* 80172998 0016F8F8 39 40 00 02 */ li r10, 2 +/* 8017299C 0016F8FC 91 61 00 18 */ stw r11, 0x18(r1) +/* 801729A0 0016F900 91 61 00 1C */ stw r11, 0x1c(r1) +/* 801729A4 0016F904 91 61 00 20 */ stw r11, 0x20(r1) +/* 801729A8 0016F908 91 61 00 24 */ stw r11, 0x24(r1) +/* 801729AC 0016F90C 90 01 00 28 */ stw r0, 0x28(r1) +/* 801729B0 0016F910 4B F8 FF 85 */ bl __ct__20CDamageVulnerabilityF14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability15EDeflectionType +/* 801729B4 0016F914 39 60 00 02 */ li r11, 2 +/* 801729B8 0016F918 3C 60 80 57 */ lis r3, lbl_80571FA4@ha +/* 801729BC 0016F91C 91 61 00 08 */ stw r11, 8(r1) +/* 801729C0 0016F920 38 00 00 00 */ li r0, 0 +/* 801729C4 0016F924 38 63 1F A4 */ addi r3, r3, lbl_80571FA4@l +/* 801729C8 0016F928 38 80 00 02 */ li r4, 2 +/* 801729CC 0016F92C 91 61 00 0C */ stw r11, 0xc(r1) +/* 801729D0 0016F930 38 A0 00 02 */ li r5, 2 +/* 801729D4 0016F934 38 C0 00 02 */ li r6, 2 +/* 801729D8 0016F938 38 E0 00 02 */ li r7, 2 +/* 801729DC 0016F93C 91 61 00 10 */ stw r11, 0x10(r1) +/* 801729E0 0016F940 39 00 00 02 */ li r8, 2 +/* 801729E4 0016F944 39 20 00 01 */ li r9, 1 +/* 801729E8 0016F948 39 40 00 02 */ li r10, 2 +/* 801729EC 0016F94C 91 61 00 14 */ stw r11, 0x14(r1) +/* 801729F0 0016F950 91 61 00 18 */ stw r11, 0x18(r1) +/* 801729F4 0016F954 91 61 00 1C */ stw r11, 0x1c(r1) +/* 801729F8 0016F958 91 61 00 20 */ stw r11, 0x20(r1) +/* 801729FC 0016F95C 91 61 00 24 */ stw r11, 0x24(r1) +/* 80172A00 0016F960 90 01 00 28 */ stw r0, 0x28(r1) +/* 80172A04 0016F964 4B F8 FF 31 */ bl __ct__20CDamageVulnerabilityF14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability15EDeflectionType +/* 80172A08 0016F968 3B A0 00 FE */ li r29, 0xfe +/* 80172A0C 0016F96C 39 40 00 D8 */ li r10, 0xd8 +/* 80172A10 0016F970 39 2D A4 2C */ addi r9, r13, lbl_805A8FEC@sda21 +/* 80172A14 0016F974 39 60 00 FF */ li r11, 0xff +/* 80172A18 0016F978 38 CD A4 30 */ addi r6, r13, lbl_805A8FF0@sda21 +/* 80172A1C 0016F97C 3B ED A4 28 */ addi r31, r13, lbl_805A8FE8@sda21 +/* 80172A20 0016F980 3B C0 00 00 */ li r30, 0 +/* 80172A24 0016F984 39 80 00 28 */ li r12, 0x28 +/* 80172A28 0016F988 39 00 00 C6 */ li r8, 0xc6 +/* 80172A2C 0016F98C 38 E0 00 0E */ li r7, 0xe +/* 80172A30 0016F990 38 A0 00 FD */ li r5, 0xfd +/* 80172A34 0016F994 38 6D A4 34 */ addi r3, r13, lbl_805A8FF4@sda21 +/* 80172A38 0016F998 38 80 00 EF */ li r4, 0xef +/* 80172A3C 0016F99C 38 00 00 56 */ li r0, 0x56 +/* 80172A40 0016F9A0 9B AD A4 28 */ stb r29, lbl_805A8FE8@sda21(r13) +/* 80172A44 0016F9A4 9B DF 00 01 */ stb r30, 1(r31) +/* 80172A48 0016F9A8 99 9F 00 02 */ stb r12, 2(r31) +/* 80172A4C 0016F9AC 99 7F 00 03 */ stb r11, 3(r31) +/* 80172A50 0016F9B0 99 4D A4 2C */ stb r10, lbl_805A8FEC@sda21(r13) +/* 80172A54 0016F9B4 99 49 00 01 */ stb r10, 1(r9) +/* 80172A58 0016F9B8 99 49 00 02 */ stb r10, 2(r9) +/* 80172A5C 0016F9BC 99 69 00 03 */ stb r11, 3(r9) +/* 80172A60 0016F9C0 99 0D A4 30 */ stb r8, lbl_805A8FF0@sda21(r13) +/* 80172A64 0016F9C4 98 E6 00 01 */ stb r7, 1(r6) +/* 80172A68 0016F9C8 99 66 00 02 */ stb r11, 2(r6) +/* 80172A6C 0016F9CC 99 66 00 03 */ stb r11, 3(r6) +/* 80172A70 0016F9D0 98 AD A4 34 */ stb r5, lbl_805A8FF4@sda21(r13) +/* 80172A74 0016F9D4 98 83 00 01 */ stb r4, 1(r3) +/* 80172A78 0016F9D8 98 03 00 02 */ stb r0, 2(r3) +/* 80172A7C 0016F9DC 99 63 00 03 */ stb r11, 3(r3) +/* 80172A80 0016F9E0 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80172A84 0016F9E4 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80172A88 0016F9E8 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 80172A8C 0016F9EC 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80172A90 0016F9F0 7C 08 03 A6 */ mtlr r0 +/* 80172A94 0016F9F4 38 21 00 40 */ addi r1, r1, 0x40 +/* 80172A98 0016F9F8 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CNewIntroBoss.s b/asm/Kyoto_CWD/Enemies/CNewIntroBoss.s new file mode 100644 index 00000000..7e3d6826 --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CNewIntroBoss.s @@ -0,0 +1,2516 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__13CNewIntroBossFv +__dt__13CNewIntroBossFv: +/* 80189D94 00186CF4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80189D98 00186CF8 7C 08 02 A6 */ mflr r0 +/* 80189D9C 00186CFC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80189DA0 00186D00 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80189DA4 00186D04 7C 9F 23 78 */ mr r31, r4 +/* 80189DA8 00186D08 93 C1 00 08 */ stw r30, 8(r1) +/* 80189DAC 00186D0C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80189DB0 00186D10 41 82 00 8C */ beq lbl_80189E3C +/* 80189DB4 00186D14 3C 60 80 3E */ lis r3, lbl_803E4018@ha +/* 80189DB8 00186D18 34 1E 05 EC */ addic. r0, r30, 0x5ec +/* 80189DBC 00186D1C 38 03 40 18 */ addi r0, r3, lbl_803E4018@l +/* 80189DC0 00186D20 90 1E 00 00 */ stw r0, 0(r30) +/* 80189DC4 00186D24 41 82 00 10 */ beq lbl_80189DD4 +/* 80189DC8 00186D28 80 7E 05 EC */ lwz r3, 0x5ec(r30) +/* 80189DCC 00186D2C 38 80 00 01 */ li r4, 1 +/* 80189DD0 00186D30 48 01 DB 0D */ bl sub_801a78dc +lbl_80189DD4: +/* 80189DD4 00186D34 34 1E 05 DC */ addic. r0, r30, 0x5dc +/* 80189DD8 00186D38 41 82 00 0C */ beq lbl_80189DE4 +/* 80189DDC 00186D3C 38 7E 05 DC */ addi r3, r30, 0x5dc +/* 80189DE0 00186D40 48 1B 3D 01 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80189DE4: +/* 80189DE4 00186D44 34 1E 05 AC */ addic. r0, r30, 0x5ac +/* 80189DE8 00186D48 41 82 00 20 */ beq lbl_80189E08 +/* 80189DEC 00186D4C 34 1E 05 AC */ addic. r0, r30, 0x5ac +/* 80189DF0 00186D50 41 82 00 18 */ beq lbl_80189E08 +/* 80189DF4 00186D54 34 1E 05 AC */ addic. r0, r30, 0x5ac +/* 80189DF8 00186D58 41 82 00 10 */ beq lbl_80189E08 +/* 80189DFC 00186D5C 38 7E 05 AC */ addi r3, r30, 0x5ac +/* 80189E00 00186D60 38 80 00 00 */ li r4, 0 +/* 80189E04 00186D64 48 1B 70 3D */ bl __dt__6CTokenFv +lbl_80189E08: +/* 80189E08 00186D68 34 1E 05 74 */ addic. r0, r30, 0x574 +/* 80189E0C 00186D6C 41 82 00 14 */ beq lbl_80189E20 +/* 80189E10 00186D70 34 1E 05 98 */ addic. r0, r30, 0x598 +/* 80189E14 00186D74 41 82 00 0C */ beq lbl_80189E20 +/* 80189E18 00186D78 38 00 00 00 */ li r0, 0 +/* 80189E1C 00186D7C 98 1E 05 A4 */ stb r0, 0x5a4(r30) +lbl_80189E20: +/* 80189E20 00186D80 7F C3 F3 78 */ mr r3, r30 +/* 80189E24 00186D84 38 80 00 00 */ li r4, 0 +/* 80189E28 00186D88 4B EE D7 49 */ bl __dt__10CPatternedFv +/* 80189E2C 00186D8C 7F E0 07 35 */ extsh. r0, r31 +/* 80189E30 00186D90 40 81 00 0C */ ble lbl_80189E3C +/* 80189E34 00186D94 7F C3 F3 78 */ mr r3, r30 +/* 80189E38 00186D98 48 18 BA F9 */ bl Free__7CMemoryFPCv +lbl_80189E3C: +/* 80189E3C 00186D9C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80189E40 00186DA0 7F C3 F3 78 */ mr r3, r30 +/* 80189E44 00186DA4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80189E48 00186DA8 83 C1 00 08 */ lwz r30, 8(r1) +/* 80189E4C 00186DAC 7C 08 03 A6 */ mtlr r0 +/* 80189E50 00186DB0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80189E54 00186DB4 4E 80 00 20 */ blr + +.global StopRumble__13CNewIntroBossFR13CStateManager +StopRumble__13CNewIntroBossFR13CStateManager: +/* 80189E58 00186DB8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80189E5C 00186DBC 7C 08 02 A6 */ mflr r0 +/* 80189E60 00186DC0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80189E64 00186DC4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80189E68 00186DC8 7C 7F 1B 78 */ mr r31, r3 +/* 80189E6C 00186DCC A8 03 06 74 */ lha r0, 0x674(r3) +/* 80189E70 00186DD0 2C 00 FF FF */ cmpwi r0, -1 +/* 80189E74 00186DD4 41 82 00 18 */ beq lbl_80189E8C +/* 80189E78 00186DD8 80 64 08 8C */ lwz r3, 0x88c(r4) +/* 80189E7C 00186DDC 7C 04 03 78 */ mr r4, r0 +/* 80189E80 00186DE0 48 0A 42 95 */ bl StopRumble__14CRumbleManagerFs +/* 80189E84 00186DE4 38 00 FF FF */ li r0, -1 +/* 80189E88 00186DE8 B0 1F 06 74 */ sth r0, 0x674(r31) +lbl_80189E8C: +/* 80189E8C 00186DEC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80189E90 00186DF0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80189E94 00186DF4 7C 08 03 A6 */ mtlr r0 +/* 80189E98 00186DF8 38 21 00 10 */ addi r1, r1, 0x10 +/* 80189E9C 00186DFC 4E 80 00 20 */ blr + +.global DeleteBeam__13CNewIntroBossFR13CStateManager +DeleteBeam__13CNewIntroBossFR13CStateManager: +/* 80189EA0 00186E00 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80189EA4 00186E04 7C 08 02 A6 */ mflr r0 +/* 80189EA8 00186E08 90 01 00 24 */ stw r0, 0x24(r1) +/* 80189EAC 00186E0C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80189EB0 00186E10 7C 9F 23 78 */ mr r31, r4 +/* 80189EB4 00186E14 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80189EB8 00186E18 7C 7E 1B 78 */ mr r30, r3 +/* 80189EBC 00186E1C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80189EC0 00186E20 A0 63 05 D4 */ lhz r3, 0x5d4(r3) +/* 80189EC4 00186E24 7C 03 00 40 */ cmplw r3, r0 +/* 80189EC8 00186E28 41 82 00 20 */ beq lbl_80189EE8 +/* 80189ECC 00186E2C A0 1E 05 D4 */ lhz r0, 0x5d4(r30) +/* 80189ED0 00186E30 7F E3 FB 78 */ mr r3, r31 +/* 80189ED4 00186E34 38 81 00 10 */ addi r4, r1, 0x10 +/* 80189ED8 00186E38 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80189EDC 00186E3C 4B EC 23 91 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 80189EE0 00186E40 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80189EE4 00186E44 B0 1E 05 D4 */ sth r0, 0x5d4(r30) +lbl_80189EE8: +/* 80189EE8 00186E48 A0 7E 05 D6 */ lhz r3, 0x5d6(r30) +/* 80189EEC 00186E4C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80189EF0 00186E50 7C 03 00 40 */ cmplw r3, r0 +/* 80189EF4 00186E54 41 82 00 20 */ beq lbl_80189F14 +/* 80189EF8 00186E58 A0 1E 05 D6 */ lhz r0, 0x5d6(r30) +/* 80189EFC 00186E5C 7F E3 FB 78 */ mr r3, r31 +/* 80189F00 00186E60 38 81 00 0C */ addi r4, r1, 0xc +/* 80189F04 00186E64 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80189F08 00186E68 4B EC 23 65 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 80189F0C 00186E6C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80189F10 00186E70 B0 1E 05 D6 */ sth r0, 0x5d6(r30) +lbl_80189F14: +/* 80189F14 00186E74 A0 7E 05 D8 */ lhz r3, 0x5d8(r30) +/* 80189F18 00186E78 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80189F1C 00186E7C 7C 03 00 40 */ cmplw r3, r0 +/* 80189F20 00186E80 41 82 00 20 */ beq lbl_80189F40 +/* 80189F24 00186E84 A0 1E 05 D8 */ lhz r0, 0x5d8(r30) +/* 80189F28 00186E88 7F E3 FB 78 */ mr r3, r31 +/* 80189F2C 00186E8C 38 81 00 08 */ addi r4, r1, 8 +/* 80189F30 00186E90 B0 01 00 08 */ sth r0, 8(r1) +/* 80189F34 00186E94 4B EC 23 39 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 80189F38 00186E98 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80189F3C 00186E9C B0 1E 05 D8 */ sth r0, 0x5d8(r30) +lbl_80189F40: +/* 80189F40 00186EA0 7F C3 F3 78 */ mr r3, r30 +/* 80189F44 00186EA4 7F E4 FB 78 */ mr r4, r31 +/* 80189F48 00186EA8 4B FF FF 11 */ bl StopRumble__13CNewIntroBossFR13CStateManager +/* 80189F4C 00186EAC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80189F50 00186EB0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80189F54 00186EB4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80189F58 00186EB8 7C 08 03 A6 */ mtlr r0 +/* 80189F5C 00186EBC 38 21 00 20 */ addi r1, r1, 0x20 +/* 80189F60 00186EC0 4E 80 00 20 */ blr + +.global Accept__13CNewIntroBossFR8IVisitor +Accept__13CNewIntroBossFR8IVisitor: +/* 80189F64 00186EC4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80189F68 00186EC8 7C 08 02 A6 */ mflr r0 +/* 80189F6C 00186ECC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80189F70 00186ED0 7C 60 1B 78 */ mr r0, r3 +/* 80189F74 00186ED4 7C 83 23 78 */ mr r3, r4 +/* 80189F78 00186ED8 81 84 00 00 */ lwz r12, 0(r4) +/* 80189F7C 00186EDC 7C 04 03 78 */ mr r4, r0 +/* 80189F80 00186EE0 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 80189F84 00186EE4 7D 89 03 A6 */ mtctr r12 +/* 80189F88 00186EE8 4E 80 04 21 */ bctrl +/* 80189F8C 00186EEC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80189F90 00186EF0 7C 08 03 A6 */ mtlr r0 +/* 80189F94 00186EF4 38 21 00 10 */ addi r1, r1, 0x10 +/* 80189F98 00186EF8 4E 80 00 20 */ blr + +.global GetRenderBounds__13CNewIntroBossCFRC12CTransform4f +GetRenderBounds__13CNewIntroBossCFRC12CTransform4f: +/* 80189F9C 00186EFC 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80189FA0 00186F00 7C 08 02 A6 */ mflr r0 +/* 80189FA4 00186F04 90 01 00 44 */ stw r0, 0x44(r1) +/* 80189FA8 00186F08 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80189FAC 00186F0C 7C 9F 23 78 */ mr r31, r4 +/* 80189FB0 00186F10 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80189FB4 00186F14 7C 7E 1B 78 */ mr r30, r3 +/* 80189FB8 00186F18 38 61 00 20 */ addi r3, r1, 0x20 +/* 80189FBC 00186F1C 80 84 00 64 */ lwz r4, 0x64(r4) +/* 80189FC0 00186F20 4B F8 B6 05 */ bl GetBounds__10CModelDataCFv +/* 80189FC4 00186F24 C0 62 A3 88 */ lfs f3, lbl_805AC0A8@sda21(r2) +/* 80189FC8 00186F28 7F C3 F3 78 */ mr r3, r30 +/* 80189FCC 00186F2C C0 22 A3 8C */ lfs f1, lbl_805AC0AC@sda21(r2) +/* 80189FD0 00186F30 38 81 00 08 */ addi r4, r1, 8 +/* 80189FD4 00186F34 C0 41 00 28 */ lfs f2, 0x28(r1) +/* 80189FD8 00186F38 38 BF 00 34 */ addi r5, r31, 0x34 +/* 80189FDC 00186F3C C0 01 00 34 */ lfs f0, 0x34(r1) +/* 80189FE0 00186F40 D0 61 00 08 */ stfs f3, 8(r1) +/* 80189FE4 00186F44 D0 61 00 0C */ stfs f3, 0xc(r1) +/* 80189FE8 00186F48 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 80189FEC 00186F4C D0 21 00 14 */ stfs f1, 0x14(r1) +/* 80189FF0 00186F50 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80189FF4 00186F54 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80189FF8 00186F58 48 1A D9 05 */ bl GetTransformedAABox__6CAABoxCFRC12CTransform4f +/* 80189FFC 00186F5C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8018A000 00186F60 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8018A004 00186F64 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8018A008 00186F68 7C 08 03 A6 */ mtlr r0 +/* 8018A00C 00186F6C 38 21 00 40 */ addi r1, r1, 0x40 +/* 8018A010 00186F70 4E 80 00 20 */ blr + +.global AddToRenderer__13CNewIntroBossCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__13CNewIntroBossCFRC14CFrustumPlanesRC13CStateManager: +/* 8018A014 00186F74 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018A018 00186F78 7C 08 02 A6 */ mflr r0 +/* 8018A01C 00186F7C 7C A4 2B 78 */ mr r4, r5 +/* 8018A020 00186F80 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018A024 00186F84 4B EC A9 A9 */ bl EnsureRendered__6CActorCFRC13CStateManager +/* 8018A028 00186F88 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018A02C 00186F8C 7C 08 03 A6 */ mtlr r0 +/* 8018A030 00186F90 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018A034 00186F94 4E 80 00 20 */ blr + +.global OnScanStateChange__13CNewIntroBossFQ26CActor10EScanStateR13CStateManager +OnScanStateChange__13CNewIntroBossFQ26CActor10EScanStateR13CStateManager: +/* 8018A038 00186F98 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8018A03C 00186F9C 7C 08 02 A6 */ mflr r0 +/* 8018A040 00186FA0 90 01 00 34 */ stw r0, 0x34(r1) +/* 8018A044 00186FA4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8018A048 00186FA8 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8018A04C 00186FAC 7C 9E 23 78 */ mr r30, r4 +/* 8018A050 00186FB0 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8018A054 00186FB4 7C BD 2B 78 */ mr r29, r5 +/* 8018A058 00186FB8 93 81 00 20 */ stw r28, 0x20(r1) +/* 8018A05C 00186FBC 7C 7C 1B 78 */ mr r28, r3 +/* 8018A060 00186FC0 4B EC 95 11 */ bl OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager +/* 8018A064 00186FC4 2C 1E 00 02 */ cmpwi r30, 2 +/* 8018A068 00186FC8 40 82 00 7C */ bne lbl_8018A0E4 +/* 8018A06C 00186FCC A0 1C 06 00 */ lhz r0, 0x600(r28) +/* 8018A070 00186FD0 7F A3 EB 78 */ mr r3, r29 +/* 8018A074 00186FD4 38 81 00 0C */ addi r4, r1, 0xc +/* 8018A078 00186FD8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8018A07C 00186FDC 4B EC 24 F9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8018A080 00186FE0 7C 64 1B 78 */ mr r4, r3 +/* 8018A084 00186FE4 38 61 00 18 */ addi r3, r1, 0x18 +/* 8018A088 00186FE8 4B F2 52 C5 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8018A08C 00186FEC 83 E3 00 04 */ lwz r31, 4(r3) +/* 8018A090 00186FF0 7F A3 EB 78 */ mr r3, r29 +/* 8018A094 00186FF4 A0 1C 06 02 */ lhz r0, 0x602(r28) +/* 8018A098 00186FF8 38 81 00 08 */ addi r4, r1, 8 +/* 8018A09C 00186FFC B0 01 00 08 */ sth r0, 8(r1) +/* 8018A0A0 00187000 4B EC 24 D5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8018A0A4 00187004 7C 64 1B 78 */ mr r4, r3 +/* 8018A0A8 00187008 38 61 00 10 */ addi r3, r1, 0x10 +/* 8018A0AC 0018700C 4B F2 52 A1 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8018A0B0 00187010 28 1F 00 00 */ cmplwi r31, 0 +/* 8018A0B4 00187014 83 C3 00 04 */ lwz r30, 4(r3) +/* 8018A0B8 00187018 41 82 00 14 */ beq lbl_8018A0CC +/* 8018A0BC 0018701C 7F E3 FB 78 */ mr r3, r31 +/* 8018A0C0 00187020 7F A5 EB 78 */ mr r5, r29 +/* 8018A0C4 00187024 38 80 00 29 */ li r4, 0x29 +/* 8018A0C8 00187028 4B EC A2 89 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_8018A0CC: +/* 8018A0CC 0018702C 28 1E 00 00 */ cmplwi r30, 0 +/* 8018A0D0 00187030 41 82 00 14 */ beq lbl_8018A0E4 +/* 8018A0D4 00187034 7F C3 F3 78 */ mr r3, r30 +/* 8018A0D8 00187038 7F A5 EB 78 */ mr r5, r29 +/* 8018A0DC 0018703C 38 80 00 29 */ li r4, 0x29 +/* 8018A0E0 00187040 4B EC 9E A1 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_8018A0E4: +/* 8018A0E4 00187044 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8018A0E8 00187048 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8018A0EC 0018704C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8018A0F0 00187050 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8018A0F4 00187054 83 81 00 20 */ lwz r28, 0x20(r1) +/* 8018A0F8 00187058 7C 08 03 A6 */ mtlr r0 +/* 8018A0FC 0018705C 38 21 00 30 */ addi r1, r1, 0x30 +/* 8018A100 00187060 4E 80 00 20 */ blr + +.global AcceptScriptMsg__13CNewIntroBossF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__13CNewIntroBossF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8018A104 00187064 94 21 FC 00 */ stwu r1, -0x400(r1) +/* 8018A108 00187068 7C 08 02 A6 */ mflr r0 +/* 8018A10C 0018706C 90 01 04 04 */ stw r0, 0x404(r1) +/* 8018A110 00187070 BE E1 03 DC */ stmw r23, 0x3dc(r1) +/* 8018A114 00187074 7C 9D 23 78 */ mr r29, r4 +/* 8018A118 00187078 2C 1D 00 22 */ cmpwi r29, 0x22 +/* 8018A11C 0018707C 7C 7F 1B 78 */ mr r31, r3 +/* 8018A120 00187080 7C BC 2B 78 */ mr r28, r5 +/* 8018A124 00187084 7C DE 33 78 */ mr r30, r6 +/* 8018A128 00187088 41 82 0A E4 */ beq lbl_8018AC0C +/* 8018A12C 0018708C 40 80 00 10 */ bge lbl_8018A13C +/* 8018A130 00187090 2C 1D 00 21 */ cmpwi r29, 0x21 +/* 8018A134 00187094 40 80 00 14 */ bge lbl_8018A148 +/* 8018A138 00187098 48 00 0B 28 */ b lbl_8018AC60 +lbl_8018A13C: +/* 8018A13C 0018709C 2C 1D 00 29 */ cmpwi r29, 0x29 +/* 8018A140 001870A0 41 82 0A E4 */ beq lbl_8018AC24 +/* 8018A144 001870A4 48 00 0B 1C */ b lbl_8018AC60 +lbl_8018A148: +/* 8018A148 001870A8 7F C5 F3 78 */ mr r5, r30 +/* 8018A14C 001870AC 38 80 00 13 */ li r4, 0x13 +/* 8018A150 001870B0 4B EC 9E 31 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 8018A154 001870B4 7F E3 FB 78 */ mr r3, r31 +/* 8018A158 001870B8 7F C5 F3 78 */ mr r5, r30 +/* 8018A15C 001870BC 38 80 00 28 */ li r4, 0x28 +/* 8018A160 001870C0 4B EC 9E 21 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 8018A164 001870C4 7F E3 FB 78 */ mr r3, r31 +/* 8018A168 001870C8 7F C5 F3 78 */ mr r5, r30 +/* 8018A16C 001870CC 38 80 00 29 */ li r4, 0x29 +/* 8018A170 001870D0 4B EC 9E 11 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 8018A174 001870D4 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8018A178 001870D8 7F C4 F3 78 */ mr r4, r30 +/* 8018A17C 001870DC 4B FB 0B 75 */ bl Activate__15CBodyControllerFR13CStateManager +/* 8018A180 001870E0 A0 7F 05 D4 */ lhz r3, 0x5d4(r31) +/* 8018A184 001870E4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8018A188 001870E8 7C 03 00 40 */ cmplw r3, r0 +/* 8018A18C 001870EC 40 82 05 4C */ bne lbl_8018A6D8 +/* 8018A190 001870F0 C0 22 A3 90 */ lfs f1, lbl_805AC0B0@sda21(r2) +/* 8018A194 001870F4 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 8018A198 001870F8 C0 42 A3 94 */ lfs f2, lbl_805AC0B4@sda21(r2) +/* 8018A19C 001870FC C0 62 A3 98 */ lfs f3, lbl_805AC0B8@sda21(r2) +/* 8018A1A0 00187100 C0 82 A3 9C */ lfs f4, lbl_805AC0BC@sda21(r2) +/* 8018A1A4 00187104 48 1D 92 49 */ bl __ct__6CColorFffff +/* 8018A1A8 00187108 48 1B FD E5 */ bl Yellow__6CColorFv +/* 8018A1AC 0018710C C0 82 A3 9C */ lfs f4, lbl_805AC0BC@sda21(r2) +/* 8018A1B0 00187110 38 00 00 03 */ li r0, 3 +/* 8018A1B4 00187114 81 1F 05 FC */ lwz r8, 0x5fc(r31) +/* 8018A1B8 00187118 38 80 00 32 */ li r4, 0x32 +/* 8018A1BC 0018711C 80 FF 05 F8 */ lwz r7, 0x5f8(r31) +/* 8018A1C0 00187120 80 DF 05 F4 */ lwz r6, 0x5f4(r31) +/* 8018A1C4 00187124 80 BF 05 F0 */ lwz r5, 0x5f0(r31) +/* 8018A1C8 00187128 C1 02 A3 A0 */ lfs f8, lbl_805AC0C0@sda21(r2) +/* 8018A1CC 0018712C C0 E2 A3 A4 */ lfs f7, lbl_805AC0C4@sda21(r2) +/* 8018A1D0 00187130 C0 C2 A3 A8 */ lfs f6, lbl_805AC0C8@sda21(r2) +/* 8018A1D4 00187134 C0 A2 A3 AC */ lfs f5, lbl_805AC0CC@sda21(r2) +/* 8018A1D8 00187138 C0 02 A3 B0 */ lfs f0, lbl_805AC0D0@sda21(r2) +/* 8018A1DC 0018713C 90 01 03 90 */ stw r0, 0x390(r1) +/* 8018A1E0 00187140 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 8018A1E4 00187144 90 A1 03 94 */ stw r5, 0x394(r1) +/* 8018A1E8 00187148 C0 22 A3 90 */ lfs f1, lbl_805AC0B0@sda21(r2) +/* 8018A1EC 0018714C 90 C1 03 98 */ stw r6, 0x398(r1) +/* 8018A1F0 00187150 C0 42 A3 94 */ lfs f2, lbl_805AC0B4@sda21(r2) +/* 8018A1F4 00187154 90 E1 03 9C */ stw r7, 0x39c(r1) +/* 8018A1F8 00187158 C0 62 A3 98 */ lfs f3, lbl_805AC0B8@sda21(r2) +/* 8018A1FC 0018715C 91 01 03 A0 */ stw r8, 0x3a0(r1) +/* 8018A200 00187160 90 81 03 A4 */ stw r4, 0x3a4(r1) +/* 8018A204 00187164 D0 81 03 A8 */ stfs f4, 0x3a8(r1) +/* 8018A208 00187168 D0 81 03 AC */ stfs f4, 0x3ac(r1) +/* 8018A20C 0018716C D1 01 03 B0 */ stfs f8, 0x3b0(r1) +/* 8018A210 00187170 D0 E1 03 B4 */ stfs f7, 0x3b4(r1) +/* 8018A214 00187174 D0 81 03 B8 */ stfs f4, 0x3b8(r1) +/* 8018A218 00187178 D0 C1 03 BC */ stfs f6, 0x3bc(r1) +/* 8018A21C 0018717C D0 A1 03 C0 */ stfs f5, 0x3c0(r1) +/* 8018A220 00187180 D0 01 03 C4 */ stfs f0, 0x3c4(r1) +/* 8018A224 00187184 80 83 00 00 */ lwz r4, 0(r3) +/* 8018A228 00187188 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 8018A22C 0018718C 90 81 03 C8 */ stw r4, 0x3c8(r1) +/* 8018A230 00187190 90 01 03 CC */ stw r0, 0x3cc(r1) +/* 8018A234 00187194 48 1D 91 B9 */ bl __ct__6CColorFffff +/* 8018A238 00187198 48 1B FD 55 */ bl Yellow__6CColorFv +/* 8018A23C 0018719C C0 82 A3 9C */ lfs f4, lbl_805AC0BC@sda21(r2) +/* 8018A240 001871A0 38 00 00 03 */ li r0, 3 +/* 8018A244 001871A4 81 1F 05 FC */ lwz r8, 0x5fc(r31) +/* 8018A248 001871A8 38 80 00 32 */ li r4, 0x32 +/* 8018A24C 001871AC 80 FF 05 F8 */ lwz r7, 0x5f8(r31) +/* 8018A250 001871B0 80 DF 05 F4 */ lwz r6, 0x5f4(r31) +/* 8018A254 001871B4 80 BF 05 F0 */ lwz r5, 0x5f0(r31) +/* 8018A258 001871B8 C1 02 A3 B4 */ lfs f8, lbl_805AC0D4@sda21(r2) +/* 8018A25C 001871BC C0 E2 A3 A4 */ lfs f7, lbl_805AC0C4@sda21(r2) +/* 8018A260 001871C0 C0 C2 A3 A8 */ lfs f6, lbl_805AC0C8@sda21(r2) +/* 8018A264 001871C4 C0 A2 A3 AC */ lfs f5, lbl_805AC0CC@sda21(r2) +/* 8018A268 001871C8 C0 02 A3 B0 */ lfs f0, lbl_805AC0D0@sda21(r2) +/* 8018A26C 001871CC 90 01 03 4C */ stw r0, 0x34c(r1) +/* 8018A270 001871D0 80 01 00 A0 */ lwz r0, 0xa0(r1) +/* 8018A274 001871D4 90 A1 03 50 */ stw r5, 0x350(r1) +/* 8018A278 001871D8 C0 22 A3 90 */ lfs f1, lbl_805AC0B0@sda21(r2) +/* 8018A27C 001871DC 90 C1 03 54 */ stw r6, 0x354(r1) +/* 8018A280 001871E0 C0 42 A3 94 */ lfs f2, lbl_805AC0B4@sda21(r2) +/* 8018A284 001871E4 90 E1 03 58 */ stw r7, 0x358(r1) +/* 8018A288 001871E8 C0 62 A3 98 */ lfs f3, lbl_805AC0B8@sda21(r2) +/* 8018A28C 001871EC 91 01 03 5C */ stw r8, 0x35c(r1) +/* 8018A290 001871F0 90 81 03 60 */ stw r4, 0x360(r1) +/* 8018A294 001871F4 D0 81 03 64 */ stfs f4, 0x364(r1) +/* 8018A298 001871F8 D0 81 03 68 */ stfs f4, 0x368(r1) +/* 8018A29C 001871FC D1 01 03 6C */ stfs f8, 0x36c(r1) +/* 8018A2A0 00187200 D0 E1 03 70 */ stfs f7, 0x370(r1) +/* 8018A2A4 00187204 D0 81 03 74 */ stfs f4, 0x374(r1) +/* 8018A2A8 00187208 D0 C1 03 78 */ stfs f6, 0x378(r1) +/* 8018A2AC 0018720C D0 A1 03 7C */ stfs f5, 0x37c(r1) +/* 8018A2B0 00187210 D0 01 03 80 */ stfs f0, 0x380(r1) +/* 8018A2B4 00187214 80 83 00 00 */ lwz r4, 0(r3) +/* 8018A2B8 00187218 38 61 00 9C */ addi r3, r1, 0x9c +/* 8018A2BC 0018721C 90 81 03 84 */ stw r4, 0x384(r1) +/* 8018A2C0 00187220 90 01 03 88 */ stw r0, 0x388(r1) +/* 8018A2C4 00187224 48 1D 91 29 */ bl __ct__6CColorFffff +/* 8018A2C8 00187228 48 1B FC C5 */ bl Yellow__6CColorFv +/* 8018A2CC 0018722C 81 3F 05 FC */ lwz r9, 0x5fc(r31) +/* 8018A2D0 00187230 38 00 00 03 */ li r0, 3 +/* 8018A2D4 00187234 81 1F 05 F8 */ lwz r8, 0x5f8(r31) +/* 8018A2D8 00187238 38 A0 00 32 */ li r5, 0x32 +/* 8018A2DC 0018723C 80 FF 05 F4 */ lwz r7, 0x5f4(r31) +/* 8018A2E0 00187240 7F C4 F3 78 */ mr r4, r30 +/* 8018A2E4 00187244 80 DF 05 F0 */ lwz r6, 0x5f0(r31) +/* 8018A2E8 00187248 C0 A2 A3 9C */ lfs f5, lbl_805AC0BC@sda21(r2) +/* 8018A2EC 0018724C C0 82 A3 B4 */ lfs f4, lbl_805AC0D4@sda21(r2) +/* 8018A2F0 00187250 C0 62 A3 A4 */ lfs f3, lbl_805AC0C4@sda21(r2) +/* 8018A2F4 00187254 C0 42 A3 A8 */ lfs f2, lbl_805AC0C8@sda21(r2) +/* 8018A2F8 00187258 C0 22 A3 AC */ lfs f1, lbl_805AC0CC@sda21(r2) +/* 8018A2FC 0018725C C0 02 A3 B0 */ lfs f0, lbl_805AC0D0@sda21(r2) +/* 8018A300 00187260 90 01 03 08 */ stw r0, 0x308(r1) +/* 8018A304 00187264 80 01 00 9C */ lwz r0, 0x9c(r1) +/* 8018A308 00187268 90 C1 03 0C */ stw r6, 0x30c(r1) +/* 8018A30C 0018726C 90 E1 03 10 */ stw r7, 0x310(r1) +/* 8018A310 00187270 91 01 03 14 */ stw r8, 0x314(r1) +/* 8018A314 00187274 91 21 03 18 */ stw r9, 0x318(r1) +/* 8018A318 00187278 90 A1 03 1C */ stw r5, 0x31c(r1) +/* 8018A31C 0018727C D0 A1 03 20 */ stfs f5, 0x320(r1) +/* 8018A320 00187280 D0 A1 03 24 */ stfs f5, 0x324(r1) +/* 8018A324 00187284 D0 81 03 28 */ stfs f4, 0x328(r1) +/* 8018A328 00187288 D0 61 03 2C */ stfs f3, 0x32c(r1) +/* 8018A32C 0018728C D0 A1 03 30 */ stfs f5, 0x330(r1) +/* 8018A330 00187290 D0 41 03 34 */ stfs f2, 0x334(r1) +/* 8018A334 00187294 D0 21 03 38 */ stfs f1, 0x338(r1) +/* 8018A338 00187298 D0 01 03 3C */ stfs f0, 0x33c(r1) +/* 8018A33C 0018729C 80 A3 00 00 */ lwz r5, 0(r3) +/* 8018A340 001872A0 38 61 00 78 */ addi r3, r1, 0x78 +/* 8018A344 001872A4 90 A1 03 40 */ stw r5, 0x340(r1) +/* 8018A348 001872A8 90 01 03 44 */ stw r0, 0x344(r1) +/* 8018A34C 001872AC 4B EC 2D 91 */ bl AllocateUniqueId__13CStateManagerFv +/* 8018A350 001872B0 A0 01 00 78 */ lhz r0, 0x78(r1) +/* 8018A354 001872B4 7F C4 F3 78 */ mr r4, r30 +/* 8018A358 001872B8 38 61 00 74 */ addi r3, r1, 0x74 +/* 8018A35C 001872BC B0 1F 05 D4 */ sth r0, 0x5d4(r31) +/* 8018A360 001872C0 4B EC 2D 7D */ bl AllocateUniqueId__13CStateManagerFv +/* 8018A364 001872C4 A0 01 00 74 */ lhz r0, 0x74(r1) +/* 8018A368 001872C8 7F C4 F3 78 */ mr r4, r30 +/* 8018A36C 001872CC 38 61 00 70 */ addi r3, r1, 0x70 +/* 8018A370 001872D0 B0 1F 05 D6 */ sth r0, 0x5d6(r31) +/* 8018A374 001872D4 4B EC 2D 69 */ bl AllocateUniqueId__13CStateManagerFv +/* 8018A378 001872D8 A0 01 00 70 */ lhz r0, 0x70(r1) +/* 8018A37C 001872DC 3C 60 80 3D */ lis r3, lbl_803D07E4@ha +/* 8018A380 001872E0 38 63 07 E4 */ addi r3, r3, lbl_803D07E4@l +/* 8018A384 001872E4 3A E0 00 00 */ li r23, 0 +/* 8018A388 001872E8 B0 1F 05 D8 */ sth r0, 0x5d8(r31) +/* 8018A38C 001872EC 38 83 00 E7 */ addi r4, r3, 0xe7 +/* 8018A390 001872F0 38 60 05 50 */ li r3, 0x550 +/* 8018A394 001872F4 38 A0 00 00 */ li r5, 0 +/* 8018A398 001872F8 48 18 B4 D5 */ bl __nw__FUlPCcPCc +/* 8018A39C 001872FC 7C 7B 1B 79 */ or. r27, r3, r3 +/* 8018A3A0 00187300 41 82 00 C4 */ beq lbl_8018A464 +/* 8018A3A4 00187304 38 00 FF FF */ li r0, -1 +/* 8018A3A8 00187308 38 60 00 08 */ li r3, 8 +/* 8018A3AC 0018730C 90 61 01 D0 */ stw r3, 0x1d0(r1) +/* 8018A3B0 00187310 3C 60 80 3D */ lis r3, lbl_803D07E4@ha +/* 8018A3B4 00187314 38 83 07 E4 */ addi r4, r3, lbl_803D07E4@l +/* 8018A3B8 00187318 38 61 01 4C */ addi r3, r1, 0x14c +/* 8018A3BC 0018731C 90 01 01 D4 */ stw r0, 0x1d4(r1) +/* 8018A3C0 00187320 38 84 00 EE */ addi r4, r4, 0xee +/* 8018A3C4 00187324 90 01 01 D8 */ stw r0, 0x1d8(r1) +/* 8018A3C8 00187328 90 01 01 DC */ stw r0, 0x1dc(r1) +/* 8018A3CC 0018732C 90 01 01 E0 */ stw r0, 0x1e0(r1) +/* 8018A3D0 00187330 90 01 01 E4 */ stw r0, 0x1e4(r1) +/* 8018A3D4 00187334 90 01 01 E8 */ stw r0, 0x1e8(r1) +/* 8018A3D8 00187338 90 01 01 EC */ stw r0, 0x1ec(r1) +/* 8018A3DC 0018733C 90 01 01 F0 */ stw r0, 0x1f0(r1) +/* 8018A3E0 00187340 A0 1F 00 08 */ lhz r0, 8(r31) +/* 8018A3E4 00187344 B0 01 00 6C */ sth r0, 0x6c(r1) +/* 8018A3E8 00187348 80 BF 00 04 */ lwz r5, 4(r31) +/* 8018A3EC 0018734C B0 01 00 68 */ sth r0, 0x68(r1) +/* 8018A3F0 00187350 90 A1 00 98 */ stw r5, 0x98(r1) +/* 8018A3F4 00187354 A0 1F 05 D4 */ lhz r0, 0x5d4(r31) +/* 8018A3F8 00187358 90 A1 00 94 */ stw r5, 0x94(r1) +/* 8018A3FC 0018735C B0 01 00 64 */ sth r0, 0x64(r1) +/* 8018A400 00187360 4B E7 A8 B9 */ bl string_l__4rstlFPCc +/* 8018A404 00187364 38 01 00 64 */ addi r0, r1, 0x64 +/* 8018A408 00187368 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 8018A40C 0018736C 90 01 00 08 */ stw r0, 8(r1) +/* 8018A410 00187370 38 01 00 98 */ addi r0, r1, 0x98 +/* 8018A414 00187374 39 03 66 70 */ addi r8, r3, skIdentity4f@l +/* 8018A418 00187378 38 61 00 6C */ addi r3, r1, 0x6c +/* 8018A41C 0018737C 90 01 00 0C */ stw r0, 0xc(r1) +/* 8018A420 00187380 38 A1 01 D0 */ addi r5, r1, 0x1d0 +/* 8018A424 00187384 38 C0 00 01 */ li r6, 1 +/* 8018A428 00187388 3C 00 00 02 */ lis r0, 2 +/* 8018A42C 0018738C 90 61 00 10 */ stw r3, 0x10(r1) +/* 8018A430 00187390 7F 63 DB 78 */ mr r3, r27 +/* 8018A434 00187394 38 9F 05 AC */ addi r4, r31, 0x5ac +/* 8018A438 00187398 38 E1 03 8C */ addi r7, r1, 0x38c +/* 8018A43C 0018739C 90 A1 00 14 */ stw r5, 0x14(r1) +/* 8018A440 001873A0 38 A1 01 4C */ addi r5, r1, 0x14c +/* 8018A444 001873A4 39 5F 05 B8 */ addi r10, r31, 0x5b8 +/* 8018A448 001873A8 3A E0 00 01 */ li r23, 1 +/* 8018A44C 001873AC 90 C1 00 18 */ stw r6, 0x18(r1) +/* 8018A450 001873B0 38 C0 00 09 */ li r6, 9 +/* 8018A454 001873B4 39 20 00 21 */ li r9, 0x21 +/* 8018A458 001873B8 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8018A45C 001873BC 4B FE E7 CD */ bl "__ct__17CPlasmaProjectileFRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC9CBeamInfoRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId9TUniqueIdbUi" +/* 8018A460 001873C0 7C 7B 1B 78 */ mr r27, r3 +lbl_8018A464: +/* 8018A464 001873C4 7E E0 07 75 */ extsb. r0, r23 +/* 8018A468 001873C8 7F 7A DB 78 */ mr r26, r27 +/* 8018A46C 001873CC 41 82 00 0C */ beq lbl_8018A478 +/* 8018A470 001873D0 38 61 01 4C */ addi r3, r1, 0x14c +/* 8018A474 001873D4 48 1B 36 6D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8018A478: +/* 8018A478 001873D8 3C 60 80 3D */ lis r3, lbl_803D07E4@ha +/* 8018A47C 001873DC 3A E0 00 00 */ li r23, 0 +/* 8018A480 001873E0 38 83 07 E4 */ addi r4, r3, lbl_803D07E4@l +/* 8018A484 001873E4 38 60 05 50 */ li r3, 0x550 +/* 8018A488 001873E8 38 84 00 E7 */ addi r4, r4, 0xe7 +/* 8018A48C 001873EC 38 A0 00 00 */ li r5, 0 +/* 8018A490 001873F0 48 18 B3 DD */ bl __nw__FUlPCcPCc +/* 8018A494 001873F4 7C 7B 1B 79 */ or. r27, r3, r3 +/* 8018A498 001873F8 41 82 00 C4 */ beq lbl_8018A55C +/* 8018A49C 001873FC 38 00 FF FF */ li r0, -1 +/* 8018A4A0 00187400 38 60 00 08 */ li r3, 8 +/* 8018A4A4 00187404 90 61 01 AC */ stw r3, 0x1ac(r1) +/* 8018A4A8 00187408 3C 60 80 3D */ lis r3, lbl_803D07E4@ha +/* 8018A4AC 0018740C 38 83 07 E4 */ addi r4, r3, lbl_803D07E4@l +/* 8018A4B0 00187410 38 61 01 3C */ addi r3, r1, 0x13c +/* 8018A4B4 00187414 90 01 01 B0 */ stw r0, 0x1b0(r1) +/* 8018A4B8 00187418 38 84 00 FD */ addi r4, r4, 0xfd +/* 8018A4BC 0018741C 90 01 01 B4 */ stw r0, 0x1b4(r1) +/* 8018A4C0 00187420 90 01 01 B8 */ stw r0, 0x1b8(r1) +/* 8018A4C4 00187424 90 01 01 BC */ stw r0, 0x1bc(r1) +/* 8018A4C8 00187428 90 01 01 C0 */ stw r0, 0x1c0(r1) +/* 8018A4CC 0018742C 90 01 01 C4 */ stw r0, 0x1c4(r1) +/* 8018A4D0 00187430 90 01 01 C8 */ stw r0, 0x1c8(r1) +/* 8018A4D4 00187434 90 01 01 CC */ stw r0, 0x1cc(r1) +/* 8018A4D8 00187438 A0 1F 00 08 */ lhz r0, 8(r31) +/* 8018A4DC 0018743C B0 01 00 60 */ sth r0, 0x60(r1) +/* 8018A4E0 00187440 80 BF 00 04 */ lwz r5, 4(r31) +/* 8018A4E4 00187444 B0 01 00 5C */ sth r0, 0x5c(r1) +/* 8018A4E8 00187448 90 A1 00 90 */ stw r5, 0x90(r1) +/* 8018A4EC 0018744C A0 1F 05 D6 */ lhz r0, 0x5d6(r31) +/* 8018A4F0 00187450 90 A1 00 8C */ stw r5, 0x8c(r1) +/* 8018A4F4 00187454 B0 01 00 58 */ sth r0, 0x58(r1) +/* 8018A4F8 00187458 4B E7 A7 C1 */ bl string_l__4rstlFPCc +/* 8018A4FC 0018745C 38 01 00 58 */ addi r0, r1, 0x58 +/* 8018A500 00187460 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 8018A504 00187464 90 01 00 08 */ stw r0, 8(r1) +/* 8018A508 00187468 38 01 00 90 */ addi r0, r1, 0x90 +/* 8018A50C 0018746C 39 03 66 70 */ addi r8, r3, skIdentity4f@l +/* 8018A510 00187470 38 61 00 60 */ addi r3, r1, 0x60 +/* 8018A514 00187474 90 01 00 0C */ stw r0, 0xc(r1) +/* 8018A518 00187478 38 A1 01 AC */ addi r5, r1, 0x1ac +/* 8018A51C 0018747C 38 C0 00 01 */ li r6, 1 +/* 8018A520 00187480 3C 00 00 02 */ lis r0, 2 +/* 8018A524 00187484 90 61 00 10 */ stw r3, 0x10(r1) +/* 8018A528 00187488 7F 63 DB 78 */ mr r3, r27 +/* 8018A52C 0018748C 38 9F 05 AC */ addi r4, r31, 0x5ac +/* 8018A530 00187490 38 E1 03 48 */ addi r7, r1, 0x348 +/* 8018A534 00187494 90 A1 00 14 */ stw r5, 0x14(r1) +/* 8018A538 00187498 38 A1 01 3C */ addi r5, r1, 0x13c +/* 8018A53C 0018749C 39 5F 05 B8 */ addi r10, r31, 0x5b8 +/* 8018A540 001874A0 3A E0 00 01 */ li r23, 1 +/* 8018A544 001874A4 90 C1 00 18 */ stw r6, 0x18(r1) +/* 8018A548 001874A8 38 C0 00 09 */ li r6, 9 +/* 8018A54C 001874AC 39 20 00 21 */ li r9, 0x21 +/* 8018A550 001874B0 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8018A554 001874B4 4B FE E6 D5 */ bl "__ct__17CPlasmaProjectileFRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC9CBeamInfoRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId9TUniqueIdbUi" +/* 8018A558 001874B8 7C 7B 1B 78 */ mr r27, r3 +lbl_8018A55C: +/* 8018A55C 001874BC 7E E0 07 75 */ extsb. r0, r23 +/* 8018A560 001874C0 7F 79 DB 78 */ mr r25, r27 +/* 8018A564 001874C4 41 82 00 0C */ beq lbl_8018A570 +/* 8018A568 001874C8 38 61 01 3C */ addi r3, r1, 0x13c +/* 8018A56C 001874CC 48 1B 35 75 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8018A570: +/* 8018A570 001874D0 80 1F 05 B8 */ lwz r0, 0x5b8(r31) +/* 8018A574 001874D4 3C 60 80 3D */ lis r3, lbl_803D07E4@ha +/* 8018A578 001874D8 38 63 07 E4 */ addi r3, r3, lbl_803D07E4@l +/* 8018A57C 001874DC C0 02 A3 B8 */ lfs f0, lbl_805AC0D8@sda21(r2) +/* 8018A580 001874E0 90 01 01 6C */ stw r0, 0x16c(r1) +/* 8018A584 001874E4 38 83 00 E7 */ addi r4, r3, 0xe7 +/* 8018A588 001874E8 3A E0 00 00 */ li r23, 0 +/* 8018A58C 001874EC 38 60 05 50 */ li r3, 0x550 +/* 8018A590 001874F0 88 1F 05 BC */ lbz r0, 0x5bc(r31) +/* 8018A594 001874F4 38 A0 00 00 */ li r5, 0 +/* 8018A598 001874F8 98 01 01 70 */ stb r0, 0x170(r1) +/* 8018A59C 001874FC C0 3F 05 C0 */ lfs f1, 0x5c0(r31) +/* 8018A5A0 00187500 D0 21 01 74 */ stfs f1, 0x174(r1) +/* 8018A5A4 00187504 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8018A5A8 00187508 C0 3F 05 C4 */ lfs f1, 0x5c4(r31) +/* 8018A5AC 0018750C D0 21 01 78 */ stfs f1, 0x178(r1) +/* 8018A5B0 00187510 C0 3F 05 C8 */ lfs f1, 0x5c8(r31) +/* 8018A5B4 00187514 D0 21 01 7C */ stfs f1, 0x17c(r1) +/* 8018A5B8 00187518 C0 3F 05 CC */ lfs f1, 0x5cc(r31) +/* 8018A5BC 0018751C D0 21 01 80 */ stfs f1, 0x180(r1) +/* 8018A5C0 00187520 88 1F 05 D0 */ lbz r0, 0x5d0(r31) +/* 8018A5C4 00187524 98 01 01 84 */ stb r0, 0x184(r1) +/* 8018A5C8 00187528 D0 01 01 74 */ stfs f0, 0x174(r1) +/* 8018A5CC 0018752C 48 18 B2 A1 */ bl __nw__FUlPCcPCc +/* 8018A5D0 00187530 7C 7B 1B 79 */ or. r27, r3, r3 +/* 8018A5D4 00187534 41 82 00 C4 */ beq lbl_8018A698 +/* 8018A5D8 00187538 38 00 FF FF */ li r0, -1 +/* 8018A5DC 0018753C 38 60 00 08 */ li r3, 8 +/* 8018A5E0 00187540 90 61 01 88 */ stw r3, 0x188(r1) +/* 8018A5E4 00187544 3C 60 80 3D */ lis r3, lbl_803D07E4@ha +/* 8018A5E8 00187548 38 83 07 E4 */ addi r4, r3, lbl_803D07E4@l +/* 8018A5EC 0018754C 38 61 01 2C */ addi r3, r1, 0x12c +/* 8018A5F0 00187550 90 01 01 8C */ stw r0, 0x18c(r1) +/* 8018A5F4 00187554 38 84 00 FD */ addi r4, r4, 0xfd +/* 8018A5F8 00187558 90 01 01 90 */ stw r0, 0x190(r1) +/* 8018A5FC 0018755C 90 01 01 94 */ stw r0, 0x194(r1) +/* 8018A600 00187560 90 01 01 98 */ stw r0, 0x198(r1) +/* 8018A604 00187564 90 01 01 9C */ stw r0, 0x19c(r1) +/* 8018A608 00187568 90 01 01 A0 */ stw r0, 0x1a0(r1) +/* 8018A60C 0018756C 90 01 01 A4 */ stw r0, 0x1a4(r1) +/* 8018A610 00187570 90 01 01 A8 */ stw r0, 0x1a8(r1) +/* 8018A614 00187574 A0 1F 00 08 */ lhz r0, 8(r31) +/* 8018A618 00187578 B0 01 00 54 */ sth r0, 0x54(r1) +/* 8018A61C 0018757C 80 BF 00 04 */ lwz r5, 4(r31) +/* 8018A620 00187580 B0 01 00 50 */ sth r0, 0x50(r1) +/* 8018A624 00187584 90 A1 00 88 */ stw r5, 0x88(r1) +/* 8018A628 00187588 A0 1F 05 D8 */ lhz r0, 0x5d8(r31) +/* 8018A62C 0018758C 90 A1 00 84 */ stw r5, 0x84(r1) +/* 8018A630 00187590 B0 01 00 4C */ sth r0, 0x4c(r1) +/* 8018A634 00187594 4B E7 A6 85 */ bl string_l__4rstlFPCc +/* 8018A638 00187598 38 01 00 4C */ addi r0, r1, 0x4c +/* 8018A63C 0018759C 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 8018A640 001875A0 90 01 00 08 */ stw r0, 8(r1) +/* 8018A644 001875A4 38 01 00 88 */ addi r0, r1, 0x88 +/* 8018A648 001875A8 39 03 66 70 */ addi r8, r3, skIdentity4f@l +/* 8018A64C 001875AC 38 61 00 54 */ addi r3, r1, 0x54 +/* 8018A650 001875B0 90 01 00 0C */ stw r0, 0xc(r1) +/* 8018A654 001875B4 38 A1 01 88 */ addi r5, r1, 0x188 +/* 8018A658 001875B8 38 C0 00 01 */ li r6, 1 +/* 8018A65C 001875BC 3C 00 00 02 */ lis r0, 2 +/* 8018A660 001875C0 90 61 00 10 */ stw r3, 0x10(r1) +/* 8018A664 001875C4 7F 63 DB 78 */ mr r3, r27 +/* 8018A668 001875C8 38 9F 05 AC */ addi r4, r31, 0x5ac +/* 8018A66C 001875CC 38 E1 03 04 */ addi r7, r1, 0x304 +/* 8018A670 001875D0 90 A1 00 14 */ stw r5, 0x14(r1) +/* 8018A674 001875D4 38 A1 01 2C */ addi r5, r1, 0x12c +/* 8018A678 001875D8 39 41 01 6C */ addi r10, r1, 0x16c +/* 8018A67C 001875DC 3A E0 00 01 */ li r23, 1 +/* 8018A680 001875E0 90 C1 00 18 */ stw r6, 0x18(r1) +/* 8018A684 001875E4 38 C0 00 09 */ li r6, 9 +/* 8018A688 001875E8 39 20 00 21 */ li r9, 0x21 +/* 8018A68C 001875EC 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8018A690 001875F0 4B FE E5 99 */ bl "__ct__17CPlasmaProjectileFRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC9CBeamInfoRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId9TUniqueIdbUi" +/* 8018A694 001875F4 7C 7B 1B 78 */ mr r27, r3 +lbl_8018A698: +/* 8018A698 001875F8 7E E0 07 75 */ extsb. r0, r23 +/* 8018A69C 001875FC 7F 77 DB 78 */ mr r23, r27 +/* 8018A6A0 00187600 41 82 00 0C */ beq lbl_8018A6AC +/* 8018A6A4 00187604 38 61 01 2C */ addi r3, r1, 0x12c +/* 8018A6A8 00187608 48 1B 34 39 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8018A6AC: +/* 8018A6AC 0018760C 7F C3 F3 78 */ mr r3, r30 +/* 8018A6B0 00187610 7F 44 D3 78 */ mr r4, r26 +/* 8018A6B4 00187614 4B EC 24 61 */ bl AddObject__13CStateManagerFR7CEntity +/* 8018A6B8 00187618 7F C3 F3 78 */ mr r3, r30 +/* 8018A6BC 0018761C 7F 24 CB 78 */ mr r4, r25 +/* 8018A6C0 00187620 4B EC 24 55 */ bl AddObject__13CStateManagerFR7CEntity +/* 8018A6C4 00187624 7F C3 F3 78 */ mr r3, r30 +/* 8018A6C8 00187628 7E E4 BB 78 */ mr r4, r23 +/* 8018A6CC 0018762C 4B EC 24 49 */ bl AddObject__13CStateManagerFR7CEntity +/* 8018A6D0 00187630 A0 1F 05 D4 */ lhz r0, 0x5d4(r31) +/* 8018A6D4 00187634 B0 1F 06 76 */ sth r0, 0x676(r31) +lbl_8018A6D8: +/* 8018A6D8 00187638 38 00 00 00 */ li r0, 0 +/* 8018A6DC 0018763C 38 61 01 5C */ addi r3, r1, 0x15c +/* 8018A6E0 00187640 90 01 01 60 */ stw r0, 0x160(r1) +/* 8018A6E4 00187644 38 80 00 0F */ li r4, 0xf +/* 8018A6E8 00187648 90 01 01 64 */ stw r0, 0x164(r1) +/* 8018A6EC 0018764C 90 01 01 68 */ stw r0, 0x168(r1) +/* 8018A6F0 00187650 4B FC C0 C9 */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" +/* 8018A6F4 00187654 80 9F 00 64 */ lwz r4, 0x64(r31) +/* 8018A6F8 00187658 3C 60 80 3D */ lis r3, lbl_803D07D4@ha +/* 8018A6FC 0018765C 3A E3 07 D4 */ addi r23, r3, lbl_803D07D4@l +/* 8018A700 00187660 3B 01 02 64 */ addi r24, r1, 0x264 +/* 8018A704 00187664 83 64 00 10 */ lwz r27, 0x10(r4) +/* 8018A708 00187668 3B 21 02 EC */ addi r25, r1, 0x2ec +/* 8018A70C 0018766C 3B 40 00 00 */ li r26, 0 +lbl_8018A710: +/* 8018A710 00187670 80 97 00 00 */ lwz r4, 0(r23) +/* 8018A714 00187674 38 61 01 1C */ addi r3, r1, 0x11c +/* 8018A718 00187678 4B E7 A5 A1 */ bl string_l__4rstlFPCc +/* 8018A71C 0018767C 80 97 00 00 */ lwz r4, 0(r23) +/* 8018A720 00187680 38 61 01 0C */ addi r3, r1, 0x10c +/* 8018A724 00187684 4B E7 A5 95 */ bl string_l__4rstlFPCc +/* 8018A728 00187688 7F 64 DB 78 */ mr r4, r27 +/* 8018A72C 0018768C 38 61 00 30 */ addi r3, r1, 0x30 +/* 8018A730 00187690 38 A1 01 1C */ addi r5, r1, 0x11c +/* 8018A734 00187694 4B EA 41 05 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8018A738 00187698 88 01 00 30 */ lbz r0, 0x30(r1) +/* 8018A73C 0018769C 38 61 02 38 */ addi r3, r1, 0x238 +/* 8018A740 001876A0 C0 37 00 04 */ lfs f1, 4(r23) +/* 8018A744 001876A4 38 81 00 34 */ addi r4, r1, 0x34 +/* 8018A748 001876A8 98 01 00 34 */ stb r0, 0x34(r1) +/* 8018A74C 001876AC 38 A1 01 0C */ addi r5, r1, 0x10c +/* 8018A750 001876B0 C0 42 A3 BC */ lfs f2, lbl_805AC0DC@sda21(r2) +/* 8018A754 001876B4 48 01 E0 B9 */ bl "SphereCollision__26CJointCollisionDescriptionF6CSegIdfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +/* 8018A758 001876B8 80 E1 02 38 */ lwz r7, 0x238(r1) +/* 8018A75C 001876BC 7F 23 CB 78 */ mr r3, r25 +/* 8018A760 001876C0 80 C1 02 3C */ lwz r6, 0x23c(r1) +/* 8018A764 001876C4 7F 04 C3 78 */ mr r4, r24 +/* 8018A768 001876C8 88 A1 02 40 */ lbz r5, 0x240(r1) +/* 8018A76C 001876CC 88 01 02 41 */ lbz r0, 0x241(r1) +/* 8018A770 001876D0 C0 E1 02 44 */ lfs f7, 0x244(r1) +/* 8018A774 001876D4 C0 C1 02 48 */ lfs f6, 0x248(r1) +/* 8018A778 001876D8 C0 A1 02 4C */ lfs f5, 0x24c(r1) +/* 8018A77C 001876DC C0 81 02 50 */ lfs f4, 0x250(r1) +/* 8018A780 001876E0 C0 61 02 54 */ lfs f3, 0x254(r1) +/* 8018A784 001876E4 C0 41 02 58 */ lfs f2, 0x258(r1) +/* 8018A788 001876E8 C0 21 02 5C */ lfs f1, 0x25c(r1) +/* 8018A78C 001876EC C0 01 02 60 */ lfs f0, 0x260(r1) +/* 8018A790 001876F0 90 E1 02 C0 */ stw r7, 0x2c0(r1) +/* 8018A794 001876F4 90 C1 02 C4 */ stw r6, 0x2c4(r1) +/* 8018A798 001876F8 98 A1 02 C8 */ stb r5, 0x2c8(r1) +/* 8018A79C 001876FC 98 01 02 C9 */ stb r0, 0x2c9(r1) +/* 8018A7A0 00187700 D0 E1 02 CC */ stfs f7, 0x2cc(r1) +/* 8018A7A4 00187704 D0 C1 02 D0 */ stfs f6, 0x2d0(r1) +/* 8018A7A8 00187708 D0 A1 02 D4 */ stfs f5, 0x2d4(r1) +/* 8018A7AC 0018770C D0 81 02 D8 */ stfs f4, 0x2d8(r1) +/* 8018A7B0 00187710 D0 61 02 DC */ stfs f3, 0x2dc(r1) +/* 8018A7B4 00187714 D0 41 02 E0 */ stfs f2, 0x2e0(r1) +/* 8018A7B8 00187718 D0 21 02 E4 */ stfs f1, 0x2e4(r1) +/* 8018A7BC 0018771C D0 01 02 E8 */ stfs f0, 0x2e8(r1) +/* 8018A7C0 00187720 48 1B 39 A1 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8018A7C4 00187724 A0 01 02 74 */ lhz r0, 0x274(r1) +/* 8018A7C8 00187728 28 18 00 00 */ cmplwi r24, 0 +/* 8018A7CC 0018772C C0 01 02 78 */ lfs f0, 0x278(r1) +/* 8018A7D0 00187730 B0 01 02 FC */ sth r0, 0x2fc(r1) +/* 8018A7D4 00187734 D0 01 03 00 */ stfs f0, 0x300(r1) +/* 8018A7D8 00187738 41 82 00 0C */ beq lbl_8018A7E4 +/* 8018A7DC 0018773C 7F 03 C3 78 */ mr r3, r24 +/* 8018A7E0 00187740 48 1B 33 01 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8018A7E4: +/* 8018A7E4 00187744 38 61 01 0C */ addi r3, r1, 0x10c +/* 8018A7E8 00187748 48 1B 32 F9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8018A7EC 0018774C 38 61 01 1C */ addi r3, r1, 0x11c +/* 8018A7F0 00187750 48 1B 32 F1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8018A7F4 00187754 38 61 01 5C */ addi r3, r1, 0x15c +/* 8018A7F8 00187758 38 81 02 C0 */ addi r4, r1, 0x2c0 +/* 8018A7FC 0018775C 4B FC BA 35 */ bl sub_80156230 +/* 8018A800 00187760 28 19 00 00 */ cmplwi r25, 0 +/* 8018A804 00187764 41 82 00 0C */ beq lbl_8018A810 +/* 8018A808 00187768 7F 23 CB 78 */ mr r3, r25 +/* 8018A80C 0018776C 48 1B 32 D5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8018A810: +/* 8018A810 00187770 3B 5A 00 01 */ addi r26, r26, 1 +/* 8018A814 00187774 3A F7 00 08 */ addi r23, r23, 8 +/* 8018A818 00187778 28 1A 00 02 */ cmplwi r26, 2 +/* 8018A81C 0018777C 41 80 FE F4 */ blt lbl_8018A710 +/* 8018A820 00187780 3C 60 80 3D */ lis r3, lbl_803D06D0@ha +/* 8018A824 00187784 3B 01 02 20 */ addi r24, r1, 0x220 +/* 8018A828 00187788 3A E3 06 D0 */ addi r23, r3, lbl_803D06D0@l +/* 8018A82C 0018778C 3B 21 02 A8 */ addi r25, r1, 0x2a8 +/* 8018A830 00187790 3B 40 00 00 */ li r26, 0 +lbl_8018A834: +/* 8018A834 00187794 80 97 00 00 */ lwz r4, 0(r23) +/* 8018A838 00187798 38 61 00 FC */ addi r3, r1, 0xfc +/* 8018A83C 0018779C 4B E7 A4 7D */ bl string_l__4rstlFPCc +/* 8018A840 001877A0 80 97 00 04 */ lwz r4, 4(r23) +/* 8018A844 001877A4 38 61 00 EC */ addi r3, r1, 0xec +/* 8018A848 001877A8 4B E7 A4 71 */ bl string_l__4rstlFPCc +/* 8018A84C 001877AC 80 97 00 00 */ lwz r4, 0(r23) +/* 8018A850 001877B0 38 61 00 D0 */ addi r3, r1, 0xd0 +/* 8018A854 001877B4 4B E7 A4 65 */ bl string_l__4rstlFPCc +/* 8018A858 001877B8 C0 57 00 10 */ lfs f2, 0x10(r23) +/* 8018A85C 001877BC 7F 64 DB 78 */ mr r4, r27 +/* 8018A860 001877C0 C0 37 00 0C */ lfs f1, 0xc(r23) +/* 8018A864 001877C4 38 61 00 20 */ addi r3, r1, 0x20 +/* 8018A868 001877C8 C0 17 00 08 */ lfs f0, 8(r23) +/* 8018A86C 001877CC 38 A1 00 EC */ addi r5, r1, 0xec +/* 8018A870 001877D0 D0 21 00 E4 */ stfs f1, 0xe4(r1) +/* 8018A874 001877D4 D0 01 00 E0 */ stfs f0, 0xe0(r1) +/* 8018A878 001877D8 D0 41 00 E8 */ stfs f2, 0xe8(r1) +/* 8018A87C 001877DC 4B EA 3F BD */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8018A880 001877E0 88 01 00 20 */ lbz r0, 0x20(r1) +/* 8018A884 001877E4 7F 64 DB 78 */ mr r4, r27 +/* 8018A888 001877E8 38 61 00 28 */ addi r3, r1, 0x28 +/* 8018A88C 001877EC 38 A1 00 FC */ addi r5, r1, 0xfc +/* 8018A890 001877F0 98 01 00 24 */ stb r0, 0x24(r1) +/* 8018A894 001877F4 4B EA 3F A5 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8018A898 001877F8 88 01 00 28 */ lbz r0, 0x28(r1) +/* 8018A89C 001877FC 38 61 01 F4 */ addi r3, r1, 0x1f4 +/* 8018A8A0 00187800 C0 22 A3 BC */ lfs f1, lbl_805AC0DC@sda21(r2) +/* 8018A8A4 00187804 38 81 00 2C */ addi r4, r1, 0x2c +/* 8018A8A8 00187808 98 01 00 2C */ stb r0, 0x2c(r1) +/* 8018A8AC 0018780C 38 A1 00 24 */ addi r5, r1, 0x24 +/* 8018A8B0 00187810 38 C1 00 E0 */ addi r6, r1, 0xe0 +/* 8018A8B4 00187814 39 01 00 D0 */ addi r8, r1, 0xd0 +/* 8018A8B8 00187818 38 E0 00 01 */ li r7, 1 +/* 8018A8BC 0018781C 48 01 DD 19 */ bl "OBBAutoSizeCollision__26CJointCollisionDescriptionF6CSegId6CSegIdRC9CVector3fQ226CJointCollisionDescription16EOrientationTypeRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +/* 8018A8C0 00187820 80 E1 01 F4 */ lwz r7, 0x1f4(r1) +/* 8018A8C4 00187824 7F 23 CB 78 */ mr r3, r25 +/* 8018A8C8 00187828 80 C1 01 F8 */ lwz r6, 0x1f8(r1) +/* 8018A8CC 0018782C 7F 04 C3 78 */ mr r4, r24 +/* 8018A8D0 00187830 88 A1 01 FC */ lbz r5, 0x1fc(r1) +/* 8018A8D4 00187834 88 01 01 FD */ lbz r0, 0x1fd(r1) +/* 8018A8D8 00187838 C0 E1 02 00 */ lfs f7, 0x200(r1) +/* 8018A8DC 0018783C C0 C1 02 04 */ lfs f6, 0x204(r1) +/* 8018A8E0 00187840 C0 A1 02 08 */ lfs f5, 0x208(r1) +/* 8018A8E4 00187844 C0 81 02 0C */ lfs f4, 0x20c(r1) +/* 8018A8E8 00187848 C0 61 02 10 */ lfs f3, 0x210(r1) +/* 8018A8EC 0018784C C0 41 02 14 */ lfs f2, 0x214(r1) +/* 8018A8F0 00187850 C0 21 02 18 */ lfs f1, 0x218(r1) +/* 8018A8F4 00187854 C0 01 02 1C */ lfs f0, 0x21c(r1) +/* 8018A8F8 00187858 90 E1 02 7C */ stw r7, 0x27c(r1) +/* 8018A8FC 0018785C 90 C1 02 80 */ stw r6, 0x280(r1) +/* 8018A900 00187860 98 A1 02 84 */ stb r5, 0x284(r1) +/* 8018A904 00187864 98 01 02 85 */ stb r0, 0x285(r1) +/* 8018A908 00187868 D0 E1 02 88 */ stfs f7, 0x288(r1) +/* 8018A90C 0018786C D0 C1 02 8C */ stfs f6, 0x28c(r1) +/* 8018A910 00187870 D0 A1 02 90 */ stfs f5, 0x290(r1) +/* 8018A914 00187874 D0 81 02 94 */ stfs f4, 0x294(r1) +/* 8018A918 00187878 D0 61 02 98 */ stfs f3, 0x298(r1) +/* 8018A91C 0018787C D0 41 02 9C */ stfs f2, 0x29c(r1) +/* 8018A920 00187880 D0 21 02 A0 */ stfs f1, 0x2a0(r1) +/* 8018A924 00187884 D0 01 02 A4 */ stfs f0, 0x2a4(r1) +/* 8018A928 00187888 48 1B 38 39 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8018A92C 0018788C A0 01 02 30 */ lhz r0, 0x230(r1) +/* 8018A930 00187890 28 18 00 00 */ cmplwi r24, 0 +/* 8018A934 00187894 C0 01 02 34 */ lfs f0, 0x234(r1) +/* 8018A938 00187898 B0 01 02 B8 */ sth r0, 0x2b8(r1) +/* 8018A93C 0018789C D0 01 02 BC */ stfs f0, 0x2bc(r1) +/* 8018A940 001878A0 41 82 00 0C */ beq lbl_8018A94C +/* 8018A944 001878A4 7F 03 C3 78 */ mr r3, r24 +/* 8018A948 001878A8 48 1B 31 99 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8018A94C: +/* 8018A94C 001878AC 38 61 00 D0 */ addi r3, r1, 0xd0 +/* 8018A950 001878B0 48 1B 31 91 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8018A954 001878B4 38 61 00 EC */ addi r3, r1, 0xec +/* 8018A958 001878B8 48 1B 31 89 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8018A95C 001878BC 38 61 00 FC */ addi r3, r1, 0xfc +/* 8018A960 001878C0 48 1B 31 81 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8018A964 001878C4 38 61 01 5C */ addi r3, r1, 0x15c +/* 8018A968 001878C8 38 81 02 7C */ addi r4, r1, 0x27c +/* 8018A96C 001878CC 4B FC B8 C5 */ bl sub_80156230 +/* 8018A970 001878D0 28 19 00 00 */ cmplwi r25, 0 +/* 8018A974 001878D4 41 82 00 0C */ beq lbl_8018A980 +/* 8018A978 001878D8 7F 23 CB 78 */ mr r3, r25 +/* 8018A97C 001878DC 48 1B 31 65 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8018A980: +/* 8018A980 001878E0 3B 5A 00 01 */ addi r26, r26, 1 +/* 8018A984 001878E4 3A F7 00 14 */ addi r23, r23, 0x14 +/* 8018A988 001878E8 28 1A 00 0D */ cmplwi r26, 0xd +/* 8018A98C 001878EC 41 80 FE A8 */ blt lbl_8018A834 +/* 8018A990 001878F0 3C 80 80 3D */ lis r4, lbl_803D07E4@ha +/* 8018A994 001878F4 38 60 00 18 */ li r3, 0x18 +/* 8018A998 001878F8 38 84 07 E4 */ addi r4, r4, lbl_803D07E4@l +/* 8018A99C 001878FC 38 A0 00 00 */ li r5, 0 +/* 8018A9A0 00187900 38 84 00 E7 */ addi r4, r4, 0xe7 +/* 8018A9A4 00187904 48 18 AE C9 */ bl __nw__FUlPCcPCc +/* 8018A9A8 00187908 7C 77 1B 79 */ or. r23, r3, r3 +/* 8018A9AC 0018790C 41 82 00 3C */ beq lbl_8018A9E8 +/* 8018A9B0 00187910 88 1F 00 30 */ lbz r0, 0x30(r31) +/* 8018A9B4 00187914 7F C4 F3 78 */ mr r4, r30 +/* 8018A9B8 00187918 81 3F 00 04 */ lwz r9, 4(r31) +/* 8018A9BC 0018791C 38 A1 00 48 */ addi r5, r1, 0x48 +/* 8018A9C0 00187920 54 08 CF FE */ rlwinm r8, r0, 0x19, 0x1f, 0x1f +/* 8018A9C4 00187924 38 C1 00 80 */ addi r6, r1, 0x80 +/* 8018A9C8 00187928 91 21 00 80 */ stw r9, 0x80(r1) +/* 8018A9CC 0018792C 38 E1 01 5C */ addi r7, r1, 0x15c +/* 8018A9D0 00187930 A0 1F 00 08 */ lhz r0, 8(r31) +/* 8018A9D4 00187934 91 21 00 7C */ stw r9, 0x7c(r1) +/* 8018A9D8 00187938 B0 01 00 44 */ sth r0, 0x44(r1) +/* 8018A9DC 0018793C B0 01 00 48 */ sth r0, 0x48(r1) +/* 8018A9E0 00187940 48 01 CF 51 */ bl "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b" +/* 8018A9E4 00187944 7C 77 1B 78 */ mr r23, r3 +lbl_8018A9E8: +/* 8018A9E8 00187948 80 7F 05 EC */ lwz r3, 0x5ec(r31) +/* 8018A9EC 0018794C 38 80 00 01 */ li r4, 1 +/* 8018A9F0 00187950 48 01 CE ED */ bl sub_801a78dc +/* 8018A9F4 00187954 92 FF 05 EC */ stw r23, 0x5ec(r31) +/* 8018A9F8 00187958 38 61 01 5C */ addi r3, r1, 0x15c +/* 8018A9FC 0018795C 38 80 FF FF */ li r4, -1 +/* 8018AA00 00187960 4B FC B9 2D */ bl sub_8015632c +/* 8018AA04 00187964 7F E3 FB 78 */ mr r3, r31 +/* 8018AA08 00187968 7F C4 F3 78 */ mr r4, r30 +/* 8018AA0C 0018796C 81 9F 00 00 */ lwz r12, 0(r31) +/* 8018AA10 00187970 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8018AA14 00187974 7D 89 03 A6 */ mtctr r12 +/* 8018AA18 00187978 4E 80 04 21 */ bctrl +/* 8018AA1C 0018797C C0 03 00 00 */ lfs f0, 0(r3) +/* 8018AA20 00187980 3C 60 80 3D */ lis r3, lbl_803D07D4@ha +/* 8018AA24 00187984 3B 63 07 D4 */ addi r27, r3, lbl_803D07D4@l +/* 8018AA28 00187988 3B 20 00 00 */ li r25, 0 +/* 8018AA2C 0018798C D0 1F 06 40 */ stfs f0, 0x640(r31) +/* 8018AA30 00187990 48 00 01 C8 */ b lbl_8018ABF8 +lbl_8018AA34: +/* 8018AA34 00187994 80 7F 05 EC */ lwz r3, 0x5ec(r31) +/* 8018AA38 00187998 7F 24 CB 78 */ mr r4, r25 +/* 8018AA3C 0018799C 48 01 C7 FD */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 8018AA40 001879A0 7C 77 1B 78 */ mr r23, r3 +/* 8018AA44 001879A4 7F C3 F3 78 */ mr r3, r30 +/* 8018AA48 001879A8 A0 17 00 3C */ lhz r0, 0x3c(r23) +/* 8018AA4C 001879AC 38 81 00 40 */ addi r4, r1, 0x40 +/* 8018AA50 001879B0 B0 01 00 3C */ sth r0, 0x3c(r1) +/* 8018AA54 001879B4 B0 01 00 40 */ sth r0, 0x40(r1) +/* 8018AA58 001879B8 4B EC 1B 1D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8018AA5C 001879BC 7C 64 1B 78 */ mr r4, r3 +/* 8018AA60 001879C0 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 8018AA64 001879C4 4B F2 48 E9 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8018AA68 001879C8 83 43 00 04 */ lwz r26, 4(r3) +/* 8018AA6C 001879CC 38 61 00 C0 */ addi r3, r1, 0xc0 +/* 8018AA70 001879D0 80 9B 00 00 */ lwz r4, 0(r27) +/* 8018AA74 001879D4 4B E7 A2 45 */ bl string_l__4rstlFPCc +/* 8018AA78 001879D8 38 77 00 2C */ addi r3, r23, 0x2c +/* 8018AA7C 001879DC 38 81 00 C0 */ addi r4, r1, 0xc0 +/* 8018AA80 001879E0 4B EC 7B 61 */ bl "find__Q24rstl418red_black_tree,Q24rstl17rmemory_allocator>,Q24rstl83pair,Q24rstl17rmemory_allocator>,s>,0,Q24rstl103select1st,Q24rstl17rmemory_allocator>,s>>,Q24rstl81less,Q24rstl17rmemory_allocator>>,Q24rstl17rmemory_allocator>CFRCQ24rstl66basic_string,Q24rstl17rmemory_allocat" +/* 8018AA84 001879E4 7C 78 1B 78 */ mr r24, r3 +/* 8018AA88 001879E8 38 61 00 C0 */ addi r3, r1, 0xc0 +/* 8018AA8C 001879EC 48 1B 30 55 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8018AA90 001879F0 57 00 06 3F */ clrlwi. r0, r24, 0x18 +/* 8018AA94 001879F4 41 82 00 8C */ beq lbl_8018AB20 +/* 8018AA98 001879F8 A0 17 00 3C */ lhz r0, 0x3c(r23) +/* 8018AA9C 001879FC 28 1A 00 00 */ cmplwi r26, 0 +/* 8018AAA0 00187A00 B0 1F 06 00 */ sth r0, 0x600(r31) +/* 8018AAA4 00187A04 41 82 01 50 */ beq lbl_8018ABF4 +/* 8018AAA8 00187A08 7F E3 FB 78 */ mr r3, r31 +/* 8018AAAC 00187A0C 7F C4 F3 78 */ mr r4, r30 +/* 8018AAB0 00187A10 81 9F 00 00 */ lwz r12, 0(r31) +/* 8018AAB4 00187A14 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8018AAB8 00187A18 7D 89 03 A6 */ mtctr r12 +/* 8018AABC 00187A1C 4E 80 04 21 */ bctrl +/* 8018AAC0 00187A20 7C 78 1B 78 */ mr r24, r3 +/* 8018AAC4 00187A24 7F 43 D3 78 */ mr r3, r26 +/* 8018AAC8 00187A28 81 9A 00 00 */ lwz r12, 0(r26) +/* 8018AACC 00187A2C 7F C4 F3 78 */ mr r4, r30 +/* 8018AAD0 00187A30 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8018AAD4 00187A34 7D 89 03 A6 */ mtctr r12 +/* 8018AAD8 00187A38 4E 80 04 21 */ bctrl +/* 8018AADC 00187A3C C0 18 00 00 */ lfs f0, 0(r24) +/* 8018AAE0 00187A40 D0 03 00 00 */ stfs f0, 0(r3) +/* 8018AAE4 00187A44 C0 18 00 04 */ lfs f0, 4(r24) +/* 8018AAE8 00187A48 D0 03 00 04 */ stfs f0, 4(r3) +/* 8018AAEC 00187A4C 7F E3 FB 78 */ mr r3, r31 +/* 8018AAF0 00187A50 81 9F 00 00 */ lwz r12, 0(r31) +/* 8018AAF4 00187A54 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 8018AAF8 00187A58 7D 89 03 A6 */ mtctr r12 +/* 8018AAFC 00187A5C 4E 80 04 21 */ bctrl +/* 8018AB00 00187A60 7C 64 1B 78 */ mr r4, r3 +/* 8018AB04 00187A64 7F 43 D3 78 */ mr r3, r26 +/* 8018AB08 00187A68 48 01 E0 91 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +/* 8018AB0C 00187A6C 7F 43 D3 78 */ mr r3, r26 +/* 8018AB10 00187A70 7F C5 F3 78 */ mr r5, r30 +/* 8018AB14 00187A74 38 80 00 29 */ li r4, 0x29 +/* 8018AB18 00187A78 4B EC 94 69 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 8018AB1C 00187A7C 48 00 00 D8 */ b lbl_8018ABF4 +lbl_8018AB20: +/* 8018AB20 00187A80 3C 80 80 3D */ lis r4, lbl_803D06D0@ha +/* 8018AB24 00187A84 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 8018AB28 00187A88 38 84 06 D0 */ addi r4, r4, lbl_803D06D0@l +/* 8018AB2C 00187A8C 80 84 00 00 */ lwz r4, 0(r4) +/* 8018AB30 00187A90 4B E7 A1 89 */ bl string_l__4rstlFPCc +/* 8018AB34 00187A94 38 77 00 2C */ addi r3, r23, 0x2c +/* 8018AB38 00187A98 38 81 00 B0 */ addi r4, r1, 0xb0 +/* 8018AB3C 00187A9C 4B EC 7A A5 */ bl "find__Q24rstl418red_black_tree,Q24rstl17rmemory_allocator>,Q24rstl83pair,Q24rstl17rmemory_allocator>,s>,0,Q24rstl103select1st,Q24rstl17rmemory_allocator>,s>>,Q24rstl81less,Q24rstl17rmemory_allocator>>,Q24rstl17rmemory_allocator>CFRCQ24rstl66basic_string,Q24rstl17rmemory_allocat" +/* 8018AB40 00187AA0 7C 78 1B 78 */ mr r24, r3 +/* 8018AB44 00187AA4 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 8018AB48 00187AA8 48 1B 2F 99 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8018AB4C 00187AAC 57 00 06 3F */ clrlwi. r0, r24, 0x18 +/* 8018AB50 00187AB0 41 82 00 8C */ beq lbl_8018ABDC +/* 8018AB54 00187AB4 A0 17 00 3C */ lhz r0, 0x3c(r23) +/* 8018AB58 00187AB8 28 1A 00 00 */ cmplwi r26, 0 +/* 8018AB5C 00187ABC B0 1F 06 02 */ sth r0, 0x602(r31) +/* 8018AB60 00187AC0 41 82 00 94 */ beq lbl_8018ABF4 +/* 8018AB64 00187AC4 7F E3 FB 78 */ mr r3, r31 +/* 8018AB68 00187AC8 7F C4 F3 78 */ mr r4, r30 +/* 8018AB6C 00187ACC 81 9F 00 00 */ lwz r12, 0(r31) +/* 8018AB70 00187AD0 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8018AB74 00187AD4 7D 89 03 A6 */ mtctr r12 +/* 8018AB78 00187AD8 4E 80 04 21 */ bctrl +/* 8018AB7C 00187ADC 7C 78 1B 78 */ mr r24, r3 +/* 8018AB80 00187AE0 7F 43 D3 78 */ mr r3, r26 +/* 8018AB84 00187AE4 81 9A 00 00 */ lwz r12, 0(r26) +/* 8018AB88 00187AE8 7F C4 F3 78 */ mr r4, r30 +/* 8018AB8C 00187AEC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8018AB90 00187AF0 7D 89 03 A6 */ mtctr r12 +/* 8018AB94 00187AF4 4E 80 04 21 */ bctrl +/* 8018AB98 00187AF8 C0 18 00 00 */ lfs f0, 0(r24) +/* 8018AB9C 00187AFC 3C 80 80 57 */ lis r4, lbl_8056D578@ha +/* 8018ABA0 00187B00 38 84 D5 78 */ addi r4, r4, lbl_8056D578@l +/* 8018ABA4 00187B04 D0 03 00 00 */ stfs f0, 0(r3) +/* 8018ABA8 00187B08 C0 18 00 04 */ lfs f0, 4(r24) +/* 8018ABAC 00187B0C D0 03 00 04 */ stfs f0, 4(r3) +/* 8018ABB0 00187B10 7F 43 D3 78 */ mr r3, r26 +/* 8018ABB4 00187B14 48 01 DF E5 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +/* 8018ABB8 00187B18 7F 43 D3 78 */ mr r3, r26 +/* 8018ABBC 00187B1C 7F C5 F3 78 */ mr r5, r30 +/* 8018ABC0 00187B20 38 80 00 29 */ li r4, 0x29 +/* 8018ABC4 00187B24 4B EC 97 8D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 8018ABC8 00187B28 7F E3 FB 78 */ mr r3, r31 +/* 8018ABCC 00187B2C 7F 44 D3 78 */ mr r4, r26 +/* 8018ABD0 00187B30 7F C5 F3 78 */ mr r5, r30 +/* 8018ABD4 00187B34 4B EC 88 45 */ bl MoveScannableObjectInfoToActor__6CActorFP6CActorR13CStateManager +/* 8018ABD8 00187B38 48 00 00 1C */ b lbl_8018ABF4 +lbl_8018ABDC: +/* 8018ABDC 00187B3C 28 1A 00 00 */ cmplwi r26, 0 +/* 8018ABE0 00187B40 41 82 00 14 */ beq lbl_8018ABF4 +/* 8018ABE4 00187B44 7F 43 D3 78 */ mr r3, r26 +/* 8018ABE8 00187B48 7F C5 F3 78 */ mr r5, r30 +/* 8018ABEC 00187B4C 38 80 00 29 */ li r4, 0x29 +/* 8018ABF0 00187B50 4B EC 93 91 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_8018ABF4: +/* 8018ABF4 00187B54 3B 39 00 01 */ addi r25, r25, 1 +lbl_8018ABF8: +/* 8018ABF8 00187B58 80 7F 05 EC */ lwz r3, 0x5ec(r31) +/* 8018ABFC 00187B5C 48 01 C6 4D */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 8018AC00 00187B60 7C 19 18 40 */ cmplw r25, r3 +/* 8018AC04 00187B64 41 80 FE 30 */ blt lbl_8018AA34 +/* 8018AC08 00187B68 48 00 00 58 */ b lbl_8018AC60 +lbl_8018AC0C: +/* 8018AC0C 00187B6C 7F C4 F3 78 */ mr r4, r30 +/* 8018AC10 00187B70 4B FF F2 91 */ bl DeleteBeam__13CNewIntroBossFR13CStateManager +/* 8018AC14 00187B74 80 7F 05 EC */ lwz r3, 0x5ec(r31) +/* 8018AC18 00187B78 7F C4 F3 78 */ mr r4, r30 +/* 8018AC1C 00187B7C 48 01 C7 A9 */ bl Destroy__22CCollisionActorManagerCFR13CStateManager +/* 8018AC20 00187B80 48 00 00 40 */ b lbl_8018AC60 +lbl_8018AC24: +/* 8018AC24 00187B84 A0 7C 00 00 */ lhz r3, 0(r28) +/* 8018AC28 00187B88 A0 1F 06 00 */ lhz r0, 0x600(r31) +/* 8018AC2C 00187B8C 7C 03 00 40 */ cmplw r3, r0 +/* 8018AC30 00187B90 41 82 00 10 */ beq lbl_8018AC40 +/* 8018AC34 00187B94 A0 1F 06 02 */ lhz r0, 0x602(r31) +/* 8018AC38 00187B98 7C 03 00 40 */ cmplw r3, r0 +/* 8018AC3C 00187B9C 40 82 00 24 */ bne lbl_8018AC60 +lbl_8018AC40: +/* 8018AC40 00187BA0 81 9F 00 00 */ lwz r12, 0(r31) +/* 8018AC44 00187BA4 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8018AC48 00187BA8 7F E3 FB 78 */ mr r3, r31 +/* 8018AC4C 00187BAC C0 22 A3 C0 */ lfs f1, lbl_805AC0E0@sda21(r2) +/* 8018AC50 00187BB0 81 8C 00 90 */ lwz r12, 0x90(r12) +/* 8018AC54 00187BB4 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 8018AC58 00187BB8 7D 89 03 A6 */ mtctr r12 +/* 8018AC5C 00187BBC 4E 80 04 21 */ bctrl +lbl_8018AC60: +/* 8018AC60 00187BC0 88 BF 00 30 */ lbz r5, 0x30(r31) +/* 8018AC64 00187BC4 7F E3 FB 78 */ mr r3, r31 +/* 8018AC68 00187BC8 A0 1C 00 00 */ lhz r0, 0(r28) +/* 8018AC6C 00187BCC 7F A4 EB 78 */ mr r4, r29 +/* 8018AC70 00187BD0 7F C6 F3 78 */ mr r6, r30 +/* 8018AC74 00187BD4 54 B7 CF FE */ rlwinm r23, r5, 0x19, 0x1f, 0x1f +/* 8018AC78 00187BD8 B0 01 00 38 */ sth r0, 0x38(r1) +/* 8018AC7C 00187BDC 38 A1 00 38 */ addi r5, r1, 0x38 +/* 8018AC80 00187BE0 4B EF 1E F9 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8018AC84 00187BE4 88 1F 00 30 */ lbz r0, 0x30(r31) +/* 8018AC88 00187BE8 54 05 CF FE */ rlwinm r5, r0, 0x19, 0x1f, 0x1f +/* 8018AC8C 00187BEC 7C 17 28 40 */ cmplw r23, r5 +/* 8018AC90 00187BF0 41 82 00 20 */ beq lbl_8018ACB0 +/* 8018AC94 00187BF4 80 7F 05 EC */ lwz r3, 0x5ec(r31) +/* 8018AC98 00187BF8 28 03 00 00 */ cmplwi r3, 0 +/* 8018AC9C 00187BFC 41 82 00 0C */ beq lbl_8018ACA8 +/* 8018ACA0 00187C00 7F C4 F3 78 */ mr r4, r30 +/* 8018ACA4 00187C04 48 01 C6 55 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +lbl_8018ACA8: +/* 8018ACA8 00187C08 C0 02 A3 AC */ lfs f0, lbl_805AC0CC@sda21(r2) +/* 8018ACAC 00187C0C D0 1F 06 3C */ stfs f0, 0x63c(r31) +lbl_8018ACB0: +/* 8018ACB0 00187C10 BA E1 03 DC */ lmw r23, 0x3dc(r1) +/* 8018ACB4 00187C14 80 01 04 04 */ lwz r0, 0x404(r1) +/* 8018ACB8 00187C18 7C 08 03 A6 */ mtlr r0 +/* 8018ACBC 00187C1C 38 21 04 00 */ addi r1, r1, 0x400 +/* 8018ACC0 00187C20 4E 80 00 20 */ blr + +.global Generate__13CNewIntroBossFR13CStateManager9EStateMsgf +Generate__13CNewIntroBossFR13CStateManager9EStateMsgf: +/* 8018ACC4 00187C24 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8018ACC8 00187C28 7C 08 02 A6 */ mflr r0 +/* 8018ACCC 00187C2C 2C 05 00 01 */ cmpwi r5, 1 +/* 8018ACD0 00187C30 90 01 00 34 */ stw r0, 0x34(r1) +/* 8018ACD4 00187C34 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8018ACD8 00187C38 7C 7F 1B 78 */ mr r31, r3 +/* 8018ACDC 00187C3C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8018ACE0 00187C40 7C 9E 23 78 */ mr r30, r4 +/* 8018ACE4 00187C44 41 82 00 40 */ beq lbl_8018AD24 +/* 8018ACE8 00187C48 40 80 01 78 */ bge lbl_8018AE60 +/* 8018ACEC 00187C4C 2C 05 00 00 */ cmpwi r5, 0 +/* 8018ACF0 00187C50 40 80 00 0C */ bge lbl_8018ACFC +/* 8018ACF4 00187C54 48 00 01 6C */ b lbl_8018AE60 +/* 8018ACF8 00187C58 48 00 01 68 */ b lbl_8018AE60 +lbl_8018ACFC: +/* 8018ACFC 00187C5C 38 00 00 00 */ li r0, 0 +/* 8018AD00 00187C60 90 1F 05 6C */ stw r0, 0x56c(r31) +/* 8018AD04 00187C64 48 00 14 B1 */ bl GetLocoForHealth__13CNewIntroBossCFRC13CStateManager +/* 8018AD08 00187C68 90 7F 05 68 */ stw r3, 0x568(r31) +/* 8018AD0C 00187C6C 7F E3 FB 78 */ mr r3, r31 +/* 8018AD10 00187C70 7F C5 F3 78 */ mr r5, r30 +/* 8018AD14 00187C74 38 80 00 03 */ li r4, 3 +/* 8018AD18 00187C78 38 C0 FF FF */ li r6, -1 +/* 8018AD1C 00187C7C 4B EC 63 A5 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 8018AD20 00187C80 48 00 01 40 */ b lbl_8018AE60 +lbl_8018AD24: +/* 8018AD24 00187C84 80 1F 05 6C */ lwz r0, 0x56c(r31) +/* 8018AD28 00187C88 2C 00 00 01 */ cmpwi r0, 1 +/* 8018AD2C 00187C8C 41 82 01 34 */ beq lbl_8018AE60 +/* 8018AD30 00187C90 40 80 00 10 */ bge lbl_8018AD40 +/* 8018AD34 00187C94 2C 00 00 00 */ cmpwi r0, 0 +/* 8018AD38 00187C98 40 80 00 14 */ bge lbl_8018AD4C +/* 8018AD3C 00187C9C 48 00 01 24 */ b lbl_8018AE60 +lbl_8018AD40: +/* 8018AD40 00187CA0 2C 00 00 03 */ cmpwi r0, 3 +/* 8018AD44 00187CA4 40 80 01 1C */ bge lbl_8018AE60 +/* 8018AD48 00187CA8 48 00 00 F0 */ b lbl_8018AE38 +lbl_8018AD4C: +/* 8018AD4C 00187CAC 80 BF 04 50 */ lwz r5, 0x450(r31) +/* 8018AD50 00187CB0 80 05 02 B8 */ lwz r0, 0x2b8(r5) +/* 8018AD54 00187CB4 2C 00 00 0C */ cmpwi r0, 0xc +/* 8018AD58 00187CB8 40 82 00 10 */ bne lbl_8018AD68 +/* 8018AD5C 00187CBC 38 00 00 02 */ li r0, 2 +/* 8018AD60 00187CC0 90 1F 05 6C */ stw r0, 0x56c(r31) +/* 8018AD64 00187CC4 48 00 00 FC */ b lbl_8018AE60 +lbl_8018AD68: +/* 8018AD68 00187CC8 48 00 13 F1 */ bl GetGenerateForHealth__13CNewIntroBossCFRC13CStateManager +/* 8018AD6C 00187CCC 3C E0 80 3E */ lis r7, lbl_803DAA68@ha +/* 8018AD70 00187CD0 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8018AD74 00187CD4 C4 44 66 A0 */ lfsu f2, skZero3f@l(r4) +/* 8018AD78 00187CD8 39 47 AA 68 */ addi r10, r7, lbl_803DAA68@l +/* 8018AD7C 00187CDC 3D 00 80 3E */ lis r8, lbl_803DA9F0@ha +/* 8018AD80 00187CE0 80 A1 00 24 */ lwz r5, 0x24(r1) +/* 8018AD84 00187CE4 38 C0 00 00 */ li r6, 0 +/* 8018AD88 00187CE8 C0 24 00 04 */ lfs f1, 4(r4) +/* 8018AD8C 00187CEC 50 C5 F8 00 */ rlwimi r5, r6, 0x1f, 0, 0 +/* 8018AD90 00187CF0 C0 04 00 08 */ lfs f0, 8(r4) +/* 8018AD94 00187CF4 80 9F 04 50 */ lwz r4, 0x450(r31) +/* 8018AD98 00187CF8 7C A0 2B 78 */ mr r0, r5 +/* 8018AD9C 00187CFC 39 20 00 0E */ li r9, 0xe +/* 8018ADA0 00187D00 38 E0 FF FF */ li r7, -1 +/* 8018ADA4 00187D04 3B E4 00 04 */ addi r31, r4, 4 +/* 8018ADA8 00187D08 90 61 00 10 */ stw r3, 0x10(r1) +/* 8018ADAC 00187D0C 39 08 A9 F0 */ addi r8, r8, lbl_803DA9F0@l +/* 8018ADB0 00187D10 50 C0 F0 42 */ rlwimi r0, r6, 0x1e, 1, 1 +/* 8018ADB4 00187D14 91 41 00 08 */ stw r10, 8(r1) +/* 8018ADB8 00187D18 38 80 00 0E */ li r4, 0xe +/* 8018ADBC 00187D1C 7F E3 FB 78 */ mr r3, r31 +/* 8018ADC0 00187D20 90 A1 00 24 */ stw r5, 0x24(r1) +/* 8018ADC4 00187D24 91 21 00 0C */ stw r9, 0xc(r1) +/* 8018ADC8 00187D28 91 01 00 08 */ stw r8, 8(r1) +/* 8018ADCC 00187D2C D0 41 00 14 */ stfs f2, 0x14(r1) +/* 8018ADD0 00187D30 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8018ADD4 00187D34 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8018ADD8 00187D38 90 E1 00 20 */ stw r7, 0x20(r1) +/* 8018ADDC 00187D3C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8018ADE0 00187D40 4B FA 66 59 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8018ADE4 00187D44 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8018ADE8 00187D48 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 8018ADEC 00187D4C 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l +/* 8018ADF0 00187D50 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8018ADF4 00187D54 90 1F 01 90 */ stw r0, 0x190(r31) +/* 8018ADF8 00187D58 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8018ADFC 00187D5C 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 8018AE00 00187D60 80 61 00 14 */ lwz r3, 0x14(r1) +/* 8018AE04 00187D64 90 BF 01 94 */ stw r5, 0x194(r31) +/* 8018AE08 00187D68 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 8018AE0C 00187D6C 90 7F 01 98 */ stw r3, 0x198(r31) +/* 8018AE10 00187D70 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 8018AE14 00187D74 90 BF 01 9C */ stw r5, 0x19c(r31) +/* 8018AE18 00187D78 80 A1 00 20 */ lwz r5, 0x20(r1) +/* 8018AE1C 00187D7C 90 7F 01 A0 */ stw r3, 0x1a0(r31) +/* 8018AE20 00187D80 80 61 00 24 */ lwz r3, 0x24(r1) +/* 8018AE24 00187D84 90 BF 01 A4 */ stw r5, 0x1a4(r31) +/* 8018AE28 00187D88 90 81 00 08 */ stw r4, 8(r1) +/* 8018AE2C 00187D8C 90 7F 01 A8 */ stw r3, 0x1a8(r31) +/* 8018AE30 00187D90 90 01 00 08 */ stw r0, 8(r1) +/* 8018AE34 00187D94 48 00 00 2C */ b lbl_8018AE60 +lbl_8018AE38: +/* 8018AE38 00187D98 80 9F 04 50 */ lwz r4, 0x450(r31) +/* 8018AE3C 00187D9C 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 8018AE40 00187DA0 2C 00 00 0C */ cmpwi r0, 0xc +/* 8018AE44 00187DA4 41 82 00 1C */ beq lbl_8018AE60 +/* 8018AE48 00187DA8 38 00 00 03 */ li r0, 3 +/* 8018AE4C 00187DAC 7F C5 F3 78 */ mr r5, r30 +/* 8018AE50 00187DB0 90 1F 05 6C */ stw r0, 0x56c(r31) +/* 8018AE54 00187DB4 38 80 00 04 */ li r4, 4 +/* 8018AE58 00187DB8 38 C0 FF FF */ li r6, -1 +/* 8018AE5C 00187DBC 4B EC 62 65 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_8018AE60: +/* 8018AE60 00187DC0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8018AE64 00187DC4 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8018AE68 00187DC8 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8018AE6C 00187DCC 7C 08 03 A6 */ mtlr r0 +/* 8018AE70 00187DD0 38 21 00 30 */ addi r1, r1, 0x30 +/* 8018AE74 00187DD4 4E 80 00 20 */ blr + +.global AIStage__13CNewIntroBossFR13CStateManagerf +AIStage__13CNewIntroBossFR13CStateManagerf: +/* 8018AE78 00187DD8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018AE7C 00187DDC 7C 08 02 A6 */ mflr r0 +/* 8018AE80 00187DE0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018AE84 00187DE4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8018AE88 00187DE8 7C 7F 1B 78 */ mr r31, r3 +/* 8018AE8C 00187DEC 48 00 13 29 */ bl GetLocoForHealth__13CNewIntroBossCFRC13CStateManager +/* 8018AE90 00187DF0 80 1F 05 68 */ lwz r0, 0x568(r31) +/* 8018AE94 00187DF4 7C 80 18 50 */ subf r4, r0, r3 +/* 8018AE98 00187DF8 7C 03 00 50 */ subf r0, r3, r0 +/* 8018AE9C 00187DFC 7C 80 03 78 */ or r0, r4, r0 +/* 8018AEA0 00187E00 54 03 0F FE */ srwi r3, r0, 0x1f +/* 8018AEA4 00187E04 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8018AEA8 00187E08 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018AEAC 00187E0C 7C 08 03 A6 */ mtlr r0 +/* 8018AEB0 00187E10 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018AEB4 00187E14 4E 80 00 20 */ blr + +.global AnimOver__13CNewIntroBossFR13CStateManagerf +AnimOver__13CNewIntroBossFR13CStateManagerf: +/* 8018AEB8 00187E18 80 03 05 6C */ lwz r0, 0x56c(r3) +/* 8018AEBC 00187E1C 20 00 00 03 */ subfic r0, r0, 3 +/* 8018AEC0 00187E20 7C 00 00 34 */ cntlzw r0, r0 +/* 8018AEC4 00187E24 54 03 D9 7E */ srwi r3, r0, 5 +/* 8018AEC8 00187E28 4E 80 00 20 */ blr + +.global InAttackPosition__13CNewIntroBossFR13CStateManagerf +InAttackPosition__13CNewIntroBossFR13CStateManagerf: +/* 8018AECC 00187E2C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018AED0 00187E30 7C 08 02 A6 */ mflr r0 +/* 8018AED4 00187E34 C0 02 A3 C4 */ lfs f0, lbl_805AC0E4@sda21(r2) +/* 8018AED8 00187E38 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018AEDC 00187E3C C0 23 03 38 */ lfs f1, 0x338(r3) +/* 8018AEE0 00187E40 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018AEE4 00187E44 40 81 00 44 */ ble lbl_8018AF28 +/* 8018AEE8 00187E48 88 03 06 78 */ lbz r0, 0x678(r3) +/* 8018AEEC 00187E4C 28 00 00 00 */ cmplwi r0, 0 +/* 8018AEF0 00187E50 41 82 00 38 */ beq lbl_8018AF28 +/* 8018AEF4 00187E54 80 A3 04 50 */ lwz r5, 0x450(r3) +/* 8018AEF8 00187E58 80 05 02 B8 */ lwz r0, 0x2b8(r5) +/* 8018AEFC 00187E5C 2C 00 00 08 */ cmpwi r0, 8 +/* 8018AF00 00187E60 41 82 00 28 */ beq lbl_8018AF28 +/* 8018AF04 00187E64 81 83 00 00 */ lwz r12, 0(r3) +/* 8018AF08 00187E68 C0 22 A3 C0 */ lfs f1, lbl_805AC0E0@sda21(r2) +/* 8018AF0C 00187E6C 81 8C 01 E8 */ lwz r12, 0x1e8(r12) +/* 8018AF10 00187E70 7D 89 03 A6 */ mtctr r12 +/* 8018AF14 00187E74 4E 80 04 21 */ bctrl +/* 8018AF18 00187E78 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8018AF1C 00187E7C 40 82 00 0C */ bne lbl_8018AF28 +/* 8018AF20 00187E80 38 60 00 01 */ li r3, 1 +/* 8018AF24 00187E84 48 00 00 08 */ b lbl_8018AF2C +lbl_8018AF28: +/* 8018AF28 00187E88 38 60 00 00 */ li r3, 0 +lbl_8018AF2C: +/* 8018AF2C 00187E8C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018AF30 00187E90 7C 08 03 A6 */ mtlr r0 +/* 8018AF34 00187E94 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018AF38 00187E98 4E 80 00 20 */ blr + +.global ShouldAttack__13CNewIntroBossFR13CStateManagerf +ShouldAttack__13CNewIntroBossFR13CStateManagerf: +/* 8018AF3C 00187E9C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018AF40 00187EA0 7C 08 02 A6 */ mflr r0 +/* 8018AF44 00187EA4 C0 22 A3 C0 */ lfs f1, lbl_805AC0E0@sda21(r2) +/* 8018AF48 00187EA8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018AF4C 00187EAC C0 03 06 3C */ lfs f0, 0x63c(r3) +/* 8018AF50 00187EB0 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8018AF54 00187EB4 4C 40 13 82 */ cror 2, 0, 2 +/* 8018AF58 00187EB8 40 82 00 34 */ bne lbl_8018AF8C +/* 8018AF5C 00187EBC 80 A3 04 50 */ lwz r5, 0x450(r3) +/* 8018AF60 00187EC0 80 05 02 B8 */ lwz r0, 0x2b8(r5) +/* 8018AF64 00187EC4 2C 00 00 08 */ cmpwi r0, 8 +/* 8018AF68 00187EC8 41 82 00 24 */ beq lbl_8018AF8C +/* 8018AF6C 00187ECC 81 83 00 00 */ lwz r12, 0(r3) +/* 8018AF70 00187ED0 81 8C 01 E8 */ lwz r12, 0x1e8(r12) +/* 8018AF74 00187ED4 7D 89 03 A6 */ mtctr r12 +/* 8018AF78 00187ED8 4E 80 04 21 */ bctrl +/* 8018AF7C 00187EDC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8018AF80 00187EE0 40 82 00 0C */ bne lbl_8018AF8C +/* 8018AF84 00187EE4 38 60 00 01 */ li r3, 1 +/* 8018AF88 00187EE8 48 00 00 08 */ b lbl_8018AF90 +lbl_8018AF8C: +/* 8018AF8C 00187EEC 38 60 00 00 */ li r3, 0 +lbl_8018AF90: +/* 8018AF90 00187EF0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018AF94 00187EF4 7C 08 03 A6 */ mtlr r0 +/* 8018AF98 00187EF8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018AF9C 00187EFC 4E 80 00 20 */ blr + +.global Attack__13CNewIntroBossFR13CStateManager9EStateMsgf +Attack__13CNewIntroBossFR13CStateManager9EStateMsgf: +/* 8018AFA0 00187F00 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8018AFA4 00187F04 7C 08 02 A6 */ mflr r0 +/* 8018AFA8 00187F08 2C 05 00 01 */ cmpwi r5, 1 +/* 8018AFAC 00187F0C 90 01 00 34 */ stw r0, 0x34(r1) +/* 8018AFB0 00187F10 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8018AFB4 00187F14 7C 7F 1B 78 */ mr r31, r3 +/* 8018AFB8 00187F18 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8018AFBC 00187F1C 7C 9E 23 78 */ mr r30, r4 +/* 8018AFC0 00187F20 41 82 00 2C */ beq lbl_8018AFEC +/* 8018AFC4 00187F24 40 80 00 10 */ bge lbl_8018AFD4 +/* 8018AFC8 00187F28 2C 05 00 00 */ cmpwi r5, 0 +/* 8018AFCC 00187F2C 40 80 00 14 */ bge lbl_8018AFE0 +/* 8018AFD0 00187F30 48 00 01 AC */ b lbl_8018B17C +lbl_8018AFD4: +/* 8018AFD4 00187F34 2C 05 00 03 */ cmpwi r5, 3 +/* 8018AFD8 00187F38 40 80 01 A4 */ bge lbl_8018B17C +/* 8018AFDC 00187F3C 48 00 01 64 */ b lbl_8018B140 +lbl_8018AFE0: +/* 8018AFE0 00187F40 38 00 00 00 */ li r0, 0 +/* 8018AFE4 00187F44 90 1F 05 6C */ stw r0, 0x56c(r31) +/* 8018AFE8 00187F48 48 00 01 94 */ b lbl_8018B17C +lbl_8018AFEC: +/* 8018AFEC 00187F4C 80 1F 05 6C */ lwz r0, 0x56c(r31) +/* 8018AFF0 00187F50 2C 00 00 01 */ cmpwi r0, 1 +/* 8018AFF4 00187F54 41 82 01 88 */ beq lbl_8018B17C +/* 8018AFF8 00187F58 40 80 00 10 */ bge lbl_8018B008 +/* 8018AFFC 00187F5C 2C 00 00 00 */ cmpwi r0, 0 +/* 8018B000 00187F60 40 80 00 14 */ bge lbl_8018B014 +/* 8018B004 00187F64 48 00 01 78 */ b lbl_8018B17C +lbl_8018B008: +/* 8018B008 00187F68 2C 00 00 03 */ cmpwi r0, 3 +/* 8018B00C 00187F6C 40 80 01 70 */ bge lbl_8018B17C +/* 8018B010 00187F70 48 00 00 C8 */ b lbl_8018B0D8 +lbl_8018B014: +/* 8018B014 00187F74 80 DF 04 50 */ lwz r6, 0x450(r31) +/* 8018B018 00187F78 80 06 02 B8 */ lwz r0, 0x2b8(r6) +/* 8018B01C 00187F7C 2C 00 00 12 */ cmpwi r0, 0x12 +/* 8018B020 00187F80 40 82 00 10 */ bne lbl_8018B030 +/* 8018B024 00187F84 38 00 00 02 */ li r0, 2 +/* 8018B028 00187F88 90 1F 05 6C */ stw r0, 0x56c(r31) +/* 8018B02C 00187F8C 48 00 01 50 */ b lbl_8018B17C +lbl_8018B030: +/* 8018B030 00187F90 81 1E 08 4C */ lwz r8, 0x84c(r30) +/* 8018B034 00187F94 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8018B038 00187F98 38 83 AA 68 */ addi r4, r3, lbl_803DAA68@l +/* 8018B03C 00187F9C 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha +/* 8018B040 00187FA0 C0 48 00 60 */ lfs f2, 0x60(r8) +/* 8018B044 00187FA4 38 E0 00 06 */ li r7, 6 +/* 8018B048 00187FA8 C0 28 00 50 */ lfs f1, 0x50(r8) +/* 8018B04C 00187FAC 38 A0 00 01 */ li r5, 1 +/* 8018B050 00187FB0 C0 08 00 40 */ lfs f0, 0x40(r8) +/* 8018B054 00187FB4 38 00 00 00 */ li r0, 0 +/* 8018B058 00187FB8 3B E6 00 04 */ addi r31, r6, 4 +/* 8018B05C 00187FBC 90 81 00 0C */ stw r4, 0xc(r1) +/* 8018B060 00187FC0 38 C3 A9 CC */ addi r6, r3, lbl_803DA9CC@l +/* 8018B064 00187FC4 38 80 00 06 */ li r4, 6 +/* 8018B068 00187FC8 90 E1 00 10 */ stw r7, 0x10(r1) +/* 8018B06C 00187FCC 7F E3 FB 78 */ mr r3, r31 +/* 8018B070 00187FD0 90 C1 00 0C */ stw r6, 0xc(r1) +/* 8018B074 00187FD4 90 A1 00 14 */ stw r5, 0x14(r1) +/* 8018B078 00187FD8 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 8018B07C 00187FDC D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 8018B080 00187FE0 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 8018B084 00187FE4 98 01 00 24 */ stb r0, 0x24(r1) +/* 8018B088 00187FE8 4B FA 63 B1 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8018B08C 00187FEC 80 01 00 10 */ lwz r0, 0x10(r1) +/* 8018B090 00187FF0 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha +/* 8018B094 00187FF4 38 83 A9 CC */ addi r4, r3, lbl_803DA9CC@l +/* 8018B098 00187FF8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8018B09C 00187FFC 90 1F 01 2C */ stw r0, 0x12c(r31) +/* 8018B0A0 00188000 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8018B0A4 00188004 80 61 00 14 */ lwz r3, 0x14(r1) +/* 8018B0A8 00188008 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 8018B0AC 0018800C 90 7F 01 30 */ stw r3, 0x130(r31) +/* 8018B0B0 00188010 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 8018B0B4 00188014 90 BF 01 34 */ stw r5, 0x134(r31) +/* 8018B0B8 00188018 80 A1 00 20 */ lwz r5, 0x20(r1) +/* 8018B0BC 0018801C 90 7F 01 38 */ stw r3, 0x138(r31) +/* 8018B0C0 00188020 88 61 00 24 */ lbz r3, 0x24(r1) +/* 8018B0C4 00188024 90 BF 01 3C */ stw r5, 0x13c(r31) +/* 8018B0C8 00188028 90 81 00 0C */ stw r4, 0xc(r1) +/* 8018B0CC 0018802C 98 7F 01 40 */ stb r3, 0x140(r31) +/* 8018B0D0 00188030 90 01 00 0C */ stw r0, 0xc(r1) +/* 8018B0D4 00188034 48 00 00 A8 */ b lbl_8018B17C +lbl_8018B0D8: +/* 8018B0D8 00188038 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8018B0DC 0018803C 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 8018B0E0 00188040 2C 00 00 12 */ cmpwi r0, 0x12 +/* 8018B0E4 00188044 41 82 00 14 */ beq lbl_8018B0F8 +/* 8018B0E8 00188048 38 00 00 03 */ li r0, 3 +/* 8018B0EC 0018804C C0 02 A3 C0 */ lfs f0, lbl_805AC0E0@sda21(r2) +/* 8018B0F0 00188050 90 1F 05 6C */ stw r0, 0x56c(r31) +/* 8018B0F4 00188054 D0 1F 06 38 */ stfs f0, 0x638(r31) +lbl_8018B0F8: +/* 8018B0F8 00188058 A0 1F 06 76 */ lhz r0, 0x676(r31) +/* 8018B0FC 0018805C 7F C3 F3 78 */ mr r3, r30 +/* 8018B100 00188060 38 81 00 08 */ addi r4, r1, 8 +/* 8018B104 00188064 B0 01 00 08 */ sth r0, 8(r1) +/* 8018B108 00188068 4B EC 14 9D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8018B10C 0018806C 28 03 00 00 */ cmplwi r3, 0 +/* 8018B110 00188070 41 82 00 6C */ beq lbl_8018B17C +/* 8018B114 00188074 88 03 00 30 */ lbz r0, 0x30(r3) +/* 8018B118 00188078 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8018B11C 0018807C 40 82 00 60 */ bne lbl_8018B17C +/* 8018B120 00188080 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 8018B124 00188084 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 8018B128 00188088 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 8018B12C 0018808C C0 03 00 40 */ lfs f0, 0x40(r3) +/* 8018B130 00188090 D0 1F 06 2C */ stfs f0, 0x62c(r31) +/* 8018B134 00188094 D0 3F 06 30 */ stfs f1, 0x630(r31) +/* 8018B138 00188098 D0 5F 06 34 */ stfs f2, 0x634(r31) +/* 8018B13C 0018809C 48 00 00 40 */ b lbl_8018B17C +lbl_8018B140: +/* 8018B140 001880A0 48 00 10 75 */ bl GetLocoForHealth__13CNewIntroBossCFRC13CStateManager +/* 8018B144 001880A4 2C 03 00 02 */ cmpwi r3, 2 +/* 8018B148 001880A8 41 82 00 18 */ beq lbl_8018B160 +/* 8018B14C 001880AC 7F E3 FB 78 */ mr r3, r31 +/* 8018B150 001880B0 7F C4 F3 78 */ mr r4, r30 +/* 8018B154 001880B4 48 00 10 61 */ bl GetLocoForHealth__13CNewIntroBossCFRC13CStateManager +/* 8018B158 001880B8 2C 03 00 03 */ cmpwi r3, 3 +/* 8018B15C 001880BC 40 82 00 18 */ bne lbl_8018B174 +lbl_8018B160: +/* 8018B160 001880C0 88 1F 06 78 */ lbz r0, 0x678(r31) +/* 8018B164 001880C4 7C 00 00 34 */ cntlzw r0, r0 +/* 8018B168 001880C8 54 00 D9 7E */ srwi r0, r0, 5 +/* 8018B16C 001880CC 98 1F 06 78 */ stb r0, 0x678(r31) +/* 8018B170 001880D0 48 00 00 0C */ b lbl_8018B17C +lbl_8018B174: +/* 8018B174 001880D4 38 00 00 00 */ li r0, 0 +/* 8018B178 001880D8 98 1F 06 78 */ stb r0, 0x678(r31) +lbl_8018B17C: +/* 8018B17C 001880DC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8018B180 001880E0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8018B184 001880E4 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8018B188 001880E8 7C 08 03 A6 */ mtlr r0 +/* 8018B18C 001880EC 38 21 00 30 */ addi r1, r1, 0x30 +/* 8018B190 001880F0 4E 80 00 20 */ blr + +.global Patrol__13CNewIntroBossFR13CStateManager9EStateMsgf +Patrol__13CNewIntroBossFR13CStateManager9EStateMsgf: +/* 8018B194 001880F4 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8018B198 001880F8 7C 08 02 A6 */ mflr r0 +/* 8018B19C 001880FC 90 01 00 74 */ stw r0, 0x74(r1) +/* 8018B1A0 00188100 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 8018B1A4 00188104 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 8018B1A8 00188108 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8018B1AC 0018810C 93 C1 00 58 */ stw r30, 0x58(r1) +/* 8018B1B0 00188110 2C 05 00 02 */ cmpwi r5, 2 +/* 8018B1B4 00188114 7C 7E 1B 78 */ mr r30, r3 +/* 8018B1B8 00188118 7C 9F 23 78 */ mr r31, r4 +/* 8018B1BC 0018811C 40 80 01 68 */ bge lbl_8018B324 +/* 8018B1C0 00188120 2C 05 00 00 */ cmpwi r5, 0 +/* 8018B1C4 00188124 40 80 00 08 */ bge lbl_8018B1CC +/* 8018B1C8 00188128 48 00 01 5C */ b lbl_8018B324 +lbl_8018B1CC: +/* 8018B1CC 0018812C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8018B1D0 00188130 80 9E 05 68 */ lwz r4, 0x568(r30) +/* 8018B1D4 00188134 4B FA F8 05 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8018B1D8 00188138 C0 3E 06 38 */ lfs f1, 0x638(r30) +/* 8018B1DC 0018813C C0 02 A3 C8 */ lfs f0, lbl_805AC0E8@sda21(r2) +/* 8018B1E0 00188140 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018B1E4 00188144 40 81 00 30 */ ble lbl_8018B214 +/* 8018B1E8 00188148 7F C4 F3 78 */ mr r4, r30 +/* 8018B1EC 0018814C 7F E5 FB 78 */ mr r5, r31 +/* 8018B1F0 00188150 38 61 00 20 */ addi r3, r1, 0x20 +/* 8018B1F4 00188154 48 00 0A E9 */ bl PlayerPos__13CNewIntroBossCFRC13CStateManager +/* 8018B1F8 00188158 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 8018B1FC 0018815C D0 1E 06 2C */ stfs f0, 0x62c(r30) +/* 8018B200 00188160 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 8018B204 00188164 D0 1E 06 30 */ stfs f0, 0x630(r30) +/* 8018B208 00188168 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 8018B20C 0018816C D0 1E 06 34 */ stfs f0, 0x634(r30) +/* 8018B210 00188170 48 00 00 60 */ b lbl_8018B270 +lbl_8018B214: +/* 8018B214 00188174 EF E1 00 24 */ fdivs f31, f1, f0 +/* 8018B218 00188178 7F C4 F3 78 */ mr r4, r30 +/* 8018B21C 0018817C 7F E5 FB 78 */ mr r5, r31 +/* 8018B220 00188180 38 61 00 14 */ addi r3, r1, 0x14 +/* 8018B224 00188184 48 00 0A B9 */ bl PlayerPos__13CNewIntroBossCFRC13CStateManager +/* 8018B228 00188188 C0 21 00 14 */ lfs f1, 0x14(r1) +/* 8018B22C 0018818C C0 9E 06 10 */ lfs f4, 0x610(r30) +/* 8018B230 00188190 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 8018B234 00188194 EC 61 20 28 */ fsubs f3, f1, f4 +/* 8018B238 00188198 C0 BE 06 14 */ lfs f5, 0x614(r30) +/* 8018B23C 0018819C C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 8018B240 001881A0 EC 40 28 28 */ fsubs f2, f0, f5 +/* 8018B244 001881A4 C0 DE 06 18 */ lfs f6, 0x618(r30) +/* 8018B248 001881A8 EC 1F 00 F2 */ fmuls f0, f31, f3 +/* 8018B24C 001881AC EC 61 30 28 */ fsubs f3, f1, f6 +/* 8018B250 001881B0 EC 3F 00 B2 */ fmuls f1, f31, f2 +/* 8018B254 001881B4 EC 44 00 2A */ fadds f2, f4, f0 +/* 8018B258 001881B8 EC 1F 00 F2 */ fmuls f0, f31, f3 +/* 8018B25C 001881BC EC 25 08 2A */ fadds f1, f5, f1 +/* 8018B260 001881C0 D0 5E 06 2C */ stfs f2, 0x62c(r30) +/* 8018B264 001881C4 EC 06 00 2A */ fadds f0, f6, f0 +/* 8018B268 001881C8 D0 3E 06 30 */ stfs f1, 0x630(r30) +/* 8018B26C 001881CC D0 1E 06 34 */ stfs f0, 0x634(r30) +lbl_8018B270: +/* 8018B270 001881D0 7F C3 F3 78 */ mr r3, r30 +/* 8018B274 001881D4 7F E4 FB 78 */ mr r4, r31 +/* 8018B278 001881D8 81 9E 00 00 */ lwz r12, 0(r30) +/* 8018B27C 001881DC C0 22 A3 C0 */ lfs f1, lbl_805AC0E0@sda21(r2) +/* 8018B280 001881E0 81 8C 01 E8 */ lwz r12, 0x1e8(r12) +/* 8018B284 001881E4 7D 89 03 A6 */ mtctr r12 +/* 8018B288 001881E8 4E 80 04 21 */ bctrl +/* 8018B28C 001881EC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8018B290 001881F0 41 82 00 94 */ beq lbl_8018B324 +/* 8018B294 001881F4 38 00 00 00 */ li r0, 0 +/* 8018B298 001881F8 38 61 00 08 */ addi r3, r1, 8 +/* 8018B29C 001881FC 90 1E 05 6C */ stw r0, 0x56c(r30) +/* 8018B2A0 00188200 38 81 00 2C */ addi r4, r1, 0x2c +/* 8018B2A4 00188204 C0 3E 06 08 */ lfs f1, 0x608(r30) +/* 8018B2A8 00188208 C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 8018B2AC 0018820C C0 7E 06 0C */ lfs f3, 0x60c(r30) +/* 8018B2B0 00188210 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 8018B2B4 00188214 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8018B2B8 00188218 C0 3E 06 04 */ lfs f1, 0x604(r30) +/* 8018B2BC 0018821C C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8018B2C0 00188220 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8018B2C4 00188224 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8018B2C8 00188228 D0 81 00 30 */ stfs f4, 0x30(r1) +/* 8018B2CC 0018822C D0 41 00 34 */ stfs f2, 0x34(r1) +/* 8018B2D0 00188230 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8018B2D4 00188234 48 18 95 7D */ bl AsNormalized__9CVector3fCFv +/* 8018B2D8 00188238 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8018B2DC 0018823C C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) +/* 8018B2E0 00188240 C0 61 00 08 */ lfs f3, 8(r1) +/* 8018B2E4 00188244 38 81 00 38 */ addi r4, r1, 0x38 +/* 8018B2E8 00188248 C0 41 00 0C */ lfs f2, 0xc(r1) +/* 8018B2EC 0018824C C0 A3 00 04 */ lfs f5, 4(r3) +/* 8018B2F0 00188250 C0 83 00 08 */ lfs f4, 8(r3) +/* 8018B2F4 00188254 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 8018B2F8 00188258 C0 02 A3 9C */ lfs f0, lbl_805AC0BC@sda21(r2) +/* 8018B2FC 0018825C D0 C1 00 38 */ stfs f6, 0x38(r1) +/* 8018B300 00188260 D0 A1 00 3C */ stfs f5, 0x3c(r1) +/* 8018B304 00188264 D0 81 00 40 */ stfs f4, 0x40(r1) +/* 8018B308 00188268 D0 61 00 44 */ stfs f3, 0x44(r1) +/* 8018B30C 0018826C D0 41 00 48 */ stfs f2, 0x48(r1) +/* 8018B310 00188270 D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 8018B314 00188274 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8018B318 00188278 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8018B31C 0018827C 38 63 00 04 */ addi r3, r3, 4 +/* 8018B320 00188280 4B FA 63 F9 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_8018B324: +/* 8018B324 00188284 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 8018B328 00188288 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8018B32C 0018828C CB E1 00 60 */ lfd f31, 0x60(r1) +/* 8018B330 00188290 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8018B334 00188294 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 8018B338 00188298 7C 08 03 A6 */ mtlr r0 +/* 8018B33C 0018829C 38 21 00 70 */ addi r1, r1, 0x70 +/* 8018B340 001882A0 4E 80 00 20 */ blr + +.global ShouldTurn__13CNewIntroBossFR13CStateManagerf +ShouldTurn__13CNewIntroBossFR13CStateManagerf: +/* 8018B344 001882A4 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 8018B348 001882A8 7C 08 02 A6 */ mflr r0 +/* 8018B34C 001882AC 90 01 00 94 */ stw r0, 0x94(r1) +/* 8018B350 001882B0 DB E1 00 80 */ stfd f31, 0x80(r1) +/* 8018B354 001882B4 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 +/* 8018B358 001882B8 DB C1 00 70 */ stfd f30, 0x70(r1) +/* 8018B35C 001882BC F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0 +/* 8018B360 001882C0 DB A1 00 60 */ stfd f29, 0x60(r1) +/* 8018B364 001882C4 F3 A1 00 68 */ psq_st f29, 104(r1), 0, qr0 +/* 8018B368 001882C8 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8018B36C 001882CC 80 C4 08 4C */ lwz r6, 0x84c(r4) +/* 8018B370 001882D0 7C 7F 1B 78 */ mr r31, r3 +/* 8018B374 001882D4 7C 85 23 78 */ mr r5, r4 +/* 8018B378 001882D8 C0 62 A3 9C */ lfs f3, lbl_805AC0BC@sda21(r2) +/* 8018B37C 001882DC C0 46 01 38 */ lfs f2, 0x138(r6) +/* 8018B380 001882E0 7F E4 FB 78 */ mr r4, r31 +/* 8018B384 001882E4 C0 26 01 3C */ lfs f1, 0x13c(r6) +/* 8018B388 001882E8 38 61 00 40 */ addi r3, r1, 0x40 +/* 8018B38C 001882EC C0 06 01 40 */ lfs f0, 0x140(r6) +/* 8018B390 001882F0 EF A3 00 B2 */ fmuls f29, f3, f2 +/* 8018B394 001882F4 EF C3 00 72 */ fmuls f30, f3, f1 +/* 8018B398 001882F8 EF E3 00 32 */ fmuls f31, f3, f0 +/* 8018B39C 001882FC 48 00 09 41 */ bl PlayerPos__13CNewIntroBossCFRC13CStateManager +/* 8018B3A0 00188300 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 8018B3A4 00188304 38 61 00 10 */ addi r3, r1, 0x10 +/* 8018B3A8 00188308 C0 41 00 44 */ lfs f2, 0x44(r1) +/* 8018B3AC 0018830C EC 00 E8 2A */ fadds f0, f0, f29 +/* 8018B3B0 00188310 C0 21 00 48 */ lfs f1, 0x48(r1) +/* 8018B3B4 00188314 EC 42 F0 2A */ fadds f2, f2, f30 +/* 8018B3B8 00188318 EC 21 F8 2A */ fadds f1, f1, f31 +/* 8018B3BC 0018831C D0 1F 06 04 */ stfs f0, 0x604(r31) +/* 8018B3C0 00188320 D0 5F 06 08 */ stfs f2, 0x608(r31) +/* 8018B3C4 00188324 D0 3F 06 0C */ stfs f1, 0x60c(r31) +/* 8018B3C8 00188328 C0 5F 06 08 */ lfs f2, 0x608(r31) +/* 8018B3CC 0018832C C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 8018B3D0 00188330 C0 3F 06 04 */ lfs f1, 0x604(r31) +/* 8018B3D4 00188334 EC 42 00 28 */ fsubs f2, f2, f0 +/* 8018B3D8 00188338 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8018B3DC 0018833C C0 7F 06 0C */ lfs f3, 0x60c(r31) +/* 8018B3E0 00188340 EC 21 00 28 */ fsubs f1, f1, f0 +/* 8018B3E4 00188344 C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 8018B3E8 00188348 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 8018B3EC 0018834C EC 03 00 28 */ fsubs f0, f3, f0 +/* 8018B3F0 00188350 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 8018B3F4 00188354 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 8018B3F8 00188358 48 18 8E 09 */ bl __ct__9CVector2fFff +/* 8018B3FC 0018835C C0 21 00 10 */ lfs f1, 0x10(r1) +/* 8018B400 00188360 38 61 00 08 */ addi r3, r1, 8 +/* 8018B404 00188364 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 8018B408 00188368 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 8018B40C 0018836C D0 01 00 24 */ stfs f0, 0x24(r1) +/* 8018B410 00188370 C0 5F 00 48 */ lfs f2, 0x48(r31) +/* 8018B414 00188374 C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 8018B418 00188378 C0 1F 00 58 */ lfs f0, 0x58(r31) +/* 8018B41C 0018837C D0 21 00 28 */ stfs f1, 0x28(r1) +/* 8018B420 00188380 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 8018B424 00188384 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 8018B428 00188388 48 18 8D D9 */ bl __ct__9CVector2fFff +/* 8018B42C 0018838C C0 21 00 08 */ lfs f1, 8(r1) +/* 8018B430 00188390 38 61 00 18 */ addi r3, r1, 0x18 +/* 8018B434 00188394 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 8018B438 00188398 38 81 00 20 */ addi r4, r1, 0x20 +/* 8018B43C 0018839C D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8018B440 001883A0 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8018B444 001883A4 48 18 8B 81 */ bl GetAngleDiff__9CVector2fFRC9CVector2fRC9CVector2f +/* 8018B448 001883A8 C0 42 A3 CC */ lfs f2, lbl_805AC0EC@sda21(r2) +/* 8018B44C 001883AC C0 1F 05 70 */ lfs f0, 0x570(r31) +/* 8018B450 001883B0 EC 02 00 32 */ fmuls f0, f2, f0 +/* 8018B454 001883B4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018B458 001883B8 7C 00 00 26 */ mfcr r0 +/* 8018B45C 001883BC 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 8018B460 001883C0 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 +/* 8018B464 001883C4 CB E1 00 80 */ lfd f31, 0x80(r1) +/* 8018B468 001883C8 E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0 +/* 8018B46C 001883CC CB C1 00 70 */ lfd f30, 0x70(r1) +/* 8018B470 001883D0 E3 A1 00 68 */ psq_l f29, 104(r1), 0, qr0 +/* 8018B474 001883D4 CB A1 00 60 */ lfd f29, 0x60(r1) +/* 8018B478 001883D8 80 01 00 94 */ lwz r0, 0x94(r1) +/* 8018B47C 001883DC 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8018B480 001883E0 7C 08 03 A6 */ mtlr r0 +/* 8018B484 001883E4 38 21 00 90 */ addi r1, r1, 0x90 +/* 8018B488 001883E8 4E 80 00 20 */ blr + +.global Think__13CNewIntroBossFfR13CStateManager +Think__13CNewIntroBossFfR13CStateManager: +/* 8018B48C 001883EC 94 21 FE 10 */ stwu r1, -0x1f0(r1) +/* 8018B490 001883F0 7C 08 02 A6 */ mflr r0 +/* 8018B494 001883F4 90 01 01 F4 */ stw r0, 0x1f4(r1) +/* 8018B498 001883F8 DB E1 01 E0 */ stfd f31, 0x1e0(r1) +/* 8018B49C 001883FC F3 E1 01 E8 */ psq_st f31, 488(r1), 0, qr0 +/* 8018B4A0 00188400 BF 41 01 C8 */ stmw r26, 0x1c8(r1) +/* 8018B4A4 00188404 FF E0 08 90 */ fmr f31, f1 +/* 8018B4A8 00188408 7C 7D 1B 78 */ mr r29, r3 +/* 8018B4AC 0018840C 7C 9E 23 78 */ mr r30, r4 +/* 8018B4B0 00188410 4B EE E6 69 */ bl Think__10CPatternedFfR13CStateManager +/* 8018B4B4 00188414 C0 3D 06 38 */ lfs f1, 0x638(r29) +/* 8018B4B8 00188418 C0 02 A3 C8 */ lfs f0, lbl_805AC0E8@sda21(r2) +/* 8018B4BC 0018841C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018B4C0 00188420 40 80 00 0C */ bge lbl_8018B4CC +/* 8018B4C4 00188424 EC 01 F8 2A */ fadds f0, f1, f31 +/* 8018B4C8 00188428 D0 1D 06 38 */ stfs f0, 0x638(r29) +lbl_8018B4CC: +/* 8018B4CC 0018842C 88 1D 04 00 */ lbz r0, 0x400(r29) +/* 8018B4D0 00188430 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8018B4D4 00188434 41 82 00 48 */ beq lbl_8018B51C +/* 8018B4D8 00188438 C0 3D 06 30 */ lfs f1, 0x630(r29) +/* 8018B4DC 0018843C 38 7D 05 74 */ addi r3, r29, 0x574 +/* 8018B4E0 00188440 C0 62 A3 C0 */ lfs f3, lbl_805AC0E0@sda21(r2) +/* 8018B4E4 00188444 38 81 00 84 */ addi r4, r1, 0x84 +/* 8018B4E8 00188448 C0 1D 06 2C */ lfs f0, 0x62c(r29) +/* 8018B4EC 0018844C C0 5D 06 34 */ lfs f2, 0x634(r29) +/* 8018B4F0 00188450 EC 81 18 2A */ fadds f4, f1, f3 +/* 8018B4F4 00188454 C0 22 A3 D0 */ lfs f1, lbl_805AC0F0@sda21(r2) +/* 8018B4F8 00188458 EC 00 18 2A */ fadds f0, f0, f3 +/* 8018B4FC 0018845C EC 22 08 2A */ fadds f1, f2, f1 +/* 8018B500 00188460 D0 81 00 88 */ stfs f4, 0x88(r1) +/* 8018B504 00188464 D0 01 00 84 */ stfs f0, 0x84(r1) +/* 8018B508 00188468 D0 21 00 8C */ stfs f1, 0x8c(r1) +/* 8018B50C 0018846C 4B FE 9C AD */ bl SetTargetPosition__13CBoneTrackingFRC9CVector3f +/* 8018B510 00188470 FC 20 F8 90 */ fmr f1, f31 +/* 8018B514 00188474 38 7D 05 74 */ addi r3, r29, 0x574 +/* 8018B518 00188478 4B FE A4 91 */ bl Update__13CBoneTrackingFf +lbl_8018B51C: +/* 8018B51C 0018847C C0 3D 06 3C */ lfs f1, 0x63c(r29) +/* 8018B520 00188480 C0 02 A3 C0 */ lfs f0, lbl_805AC0E0@sda21(r2) +/* 8018B524 00188484 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018B528 00188488 40 81 00 0C */ ble lbl_8018B534 +/* 8018B52C 0018848C EC 01 F8 28 */ fsubs f0, f1, f31 +/* 8018B530 00188490 D0 1D 06 3C */ stfs f0, 0x63c(r29) +lbl_8018B534: +/* 8018B534 00188494 80 7D 00 64 */ lwz r3, 0x64(r29) +/* 8018B538 00188498 80 63 00 10 */ lwz r3, 0x10(r3) +/* 8018B53C 0018849C 4B EA 14 C9 */ bl PreRender__9CAnimDataFv +/* 8018B540 001884A0 88 1D 04 00 */ lbz r0, 0x400(r29) +/* 8018B544 001884A4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8018B548 001884A8 41 82 00 40 */ beq lbl_8018B588 +/* 8018B54C 001884AC 80 BD 00 64 */ lwz r5, 0x64(r29) +/* 8018B550 001884B0 7F C4 F3 78 */ mr r4, r30 +/* 8018B554 001884B4 81 1D 04 50 */ lwz r8, 0x450(r29) +/* 8018B558 001884B8 38 7D 05 74 */ addi r3, r29, 0x574 +/* 8018B55C 001884BC C0 05 00 00 */ lfs f0, 0(r5) +/* 8018B560 001884C0 38 DD 00 34 */ addi r6, r29, 0x34 +/* 8018B564 001884C4 38 E1 00 78 */ addi r7, r1, 0x78 +/* 8018B568 001884C8 D0 01 00 78 */ stfs f0, 0x78(r1) +/* 8018B56C 001884CC C0 05 00 04 */ lfs f0, 4(r5) +/* 8018B570 001884D0 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 8018B574 001884D4 C0 05 00 08 */ lfs f0, 8(r5) +/* 8018B578 001884D8 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 8018B57C 001884DC 80 BD 00 64 */ lwz r5, 0x64(r29) +/* 8018B580 001884E0 80 A5 00 10 */ lwz r5, 0x10(r5) +/* 8018B584 001884E4 4B FE A3 8D */ bl PreRender__13CBoneTrackingFRC13CStateManagerR9CAnimDataRC12CTransform4fRC9CVector3fRC15CBodyController +lbl_8018B588: +/* 8018B588 001884E8 FC 20 F8 90 */ fmr f1, f31 +/* 8018B58C 001884EC 80 7D 05 EC */ lwz r3, 0x5ec(r29) +/* 8018B590 001884F0 7F C4 F3 78 */ mr r4, r30 +/* 8018B594 001884F4 38 A0 00 00 */ li r5, 0 +/* 8018B598 001884F8 48 01 BE B9 */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions +/* 8018B59C 001884FC A0 1D 06 76 */ lhz r0, 0x676(r29) +/* 8018B5A0 00188500 7F C3 F3 78 */ mr r3, r30 +/* 8018B5A4 00188504 38 81 00 10 */ addi r4, r1, 0x10 +/* 8018B5A8 00188508 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8018B5AC 0018850C 4B EC 0F C9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8018B5B0 00188510 7C 7F 1B 79 */ or. r31, r3, r3 +/* 8018B5B4 00188514 41 82 01 D0 */ beq lbl_8018B784 +/* 8018B5B8 00188518 88 1F 00 30 */ lbz r0, 0x30(r31) +/* 8018B5BC 0018851C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8018B5C0 00188520 41 82 01 C4 */ beq lbl_8018B784 +/* 8018B5C4 00188524 C0 1D 06 28 */ lfs f0, 0x628(r29) +/* 8018B5C8 00188528 7F A4 EB 78 */ mr r4, r29 +/* 8018B5CC 0018852C 38 61 01 30 */ addi r3, r1, 0x130 +/* 8018B5D0 00188530 38 BD 05 DC */ addi r5, r29, 0x5dc +/* 8018B5D4 00188534 EC 00 F8 2A */ fadds f0, f0, f31 +/* 8018B5D8 00188538 D0 1D 06 28 */ stfs f0, 0x628(r29) +/* 8018B5DC 0018853C 4B EE D3 9D */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8018B5E0 00188540 38 61 01 90 */ addi r3, r1, 0x190 +/* 8018B5E4 00188544 38 81 01 30 */ addi r4, r1, 0x130 +/* 8018B5E8 00188548 48 18 75 8D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8018B5EC 0018854C 88 1D 04 00 */ lbz r0, 0x400(r29) +/* 8018B5F0 00188550 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8018B5F4 00188554 41 82 01 70 */ beq lbl_8018B764 +/* 8018B5F8 00188558 C0 5D 06 28 */ lfs f2, 0x628(r29) +/* 8018B5FC 0018855C C0 22 A3 A0 */ lfs f1, lbl_805AC0C0@sda21(r2) +/* 8018B600 00188560 C0 0D 8E E4 */ lfs f0, lbl_805A7AA4@sda21(r13) +/* 8018B604 00188564 EC 22 08 24 */ fdivs f1, f2, f1 +/* 8018B608 00188568 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018B60C 0018856C D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8018B610 00188570 40 80 00 0C */ bge lbl_8018B61C +/* 8018B614 00188574 38 A1 00 18 */ addi r5, r1, 0x18 +/* 8018B618 00188578 48 00 00 08 */ b lbl_8018B620 +lbl_8018B61C: +/* 8018B61C 0018857C 38 AD 8E E4 */ addi r5, r13, lbl_805A7AA4@sda21 +lbl_8018B620: +/* 8018B620 00188580 C0 3D 06 1C */ lfs f1, 0x61c(r29) +/* 8018B624 00188584 38 61 00 44 */ addi r3, r1, 0x44 +/* 8018B628 00188588 C0 FD 06 10 */ lfs f7, 0x610(r29) +/* 8018B62C 0018858C 38 81 00 38 */ addi r4, r1, 0x38 +/* 8018B630 00188590 C0 1D 06 20 */ lfs f0, 0x620(r29) +/* 8018B634 00188594 C1 3D 06 14 */ lfs f9, 0x614(r29) +/* 8018B638 00188598 EC 81 38 28 */ fsubs f4, f1, f7 +/* 8018B63C 0018859C C0 45 00 00 */ lfs f2, 0(r5) +/* 8018B640 001885A0 EC 60 48 28 */ fsubs f3, f0, f9 +/* 8018B644 001885A4 C0 3D 06 24 */ lfs f1, 0x624(r29) +/* 8018B648 001885A8 C1 5D 06 18 */ lfs f10, 0x618(r29) +/* 8018B64C 001885AC EC 02 01 32 */ fmuls f0, f2, f4 +/* 8018B650 001885B0 C0 C2 A3 D4 */ lfs f6, lbl_805AC0F4@sda21(r2) +/* 8018B654 001885B4 EC A1 50 28 */ fsubs f5, f1, f10 +/* 8018B658 001885B8 EC 82 00 F2 */ fmuls f4, f2, f3 +/* 8018B65C 001885BC C1 01 01 BC */ lfs f8, 0x1bc(r1) +/* 8018B660 001885C0 EC 27 00 2A */ fadds f1, f7, f0 +/* 8018B664 001885C4 C0 61 01 9C */ lfs f3, 0x19c(r1) +/* 8018B668 001885C8 EC 02 01 72 */ fmuls f0, f2, f5 +/* 8018B66C 001885CC C0 41 01 94 */ lfs f2, 0x194(r1) +/* 8018B670 001885D0 EC A1 18 28 */ fsubs f5, f1, f3 +/* 8018B674 001885D4 C0 21 01 A4 */ lfs f1, 0x1a4(r1) +/* 8018B678 001885D8 EC 6A 00 2A */ fadds f3, f10, f0 +/* 8018B67C 001885DC C0 01 01 B4 */ lfs f0, 0x1b4(r1) +/* 8018B680 001885E0 EC 89 20 2A */ fadds f4, f9, f4 +/* 8018B684 001885E4 C0 E1 01 AC */ lfs f7, 0x1ac(r1) +/* 8018B688 001885E8 EC 63 40 28 */ fsubs f3, f3, f8 +/* 8018B68C 001885EC D0 C1 00 14 */ stfs f6, 0x14(r1) +/* 8018B690 001885F0 EC 84 38 28 */ fsubs f4, f4, f7 +/* 8018B694 001885F4 D0 A1 00 38 */ stfs f5, 0x38(r1) +/* 8018B698 001885F8 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 8018B69C 001885FC D0 61 00 40 */ stfs f3, 0x40(r1) +/* 8018B6A0 00188600 D0 41 00 50 */ stfs f2, 0x50(r1) +/* 8018B6A4 00188604 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 8018B6A8 00188608 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 8018B6AC 0018860C 48 18 87 25 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8018B6B0 00188610 7C 7C 1B 78 */ mr r28, r3 +/* 8018B6B4 00188614 38 61 00 5C */ addi r3, r1, 0x5c +/* 8018B6B8 00188618 38 81 00 50 */ addi r4, r1, 0x50 +/* 8018B6BC 0018861C 48 18 87 15 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8018B6C0 00188620 7C 64 1B 78 */ mr r4, r3 +/* 8018B6C4 00188624 7F 85 E3 78 */ mr r5, r28 +/* 8018B6C8 00188628 38 61 00 68 */ addi r3, r1, 0x68 +/* 8018B6CC 0018862C 38 C1 00 14 */ addi r6, r1, 0x14 +/* 8018B6D0 00188630 48 18 59 51 */ bl ClampedRotateTo__11CQuaternionFRC10UnitVectorRC10UnitVectorRC9CRelAngle +/* 8018B6D4 00188634 C0 61 00 68 */ lfs f3, 0x68(r1) +/* 8018B6D8 00188638 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 8018B6DC 0018863C C0 41 00 6C */ lfs f2, 0x6c(r1) +/* 8018B6E0 00188640 38 81 01 90 */ addi r4, r1, 0x190 +/* 8018B6E4 00188644 C0 21 00 70 */ lfs f1, 0x70(r1) +/* 8018B6E8 00188648 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 8018B6EC 0018864C D0 61 00 90 */ stfs f3, 0x90(r1) +/* 8018B6F0 00188650 D0 41 00 94 */ stfs f2, 0x94(r1) +/* 8018B6F4 00188654 D0 21 00 98 */ stfs f1, 0x98(r1) +/* 8018B6F8 00188658 D0 01 00 9C */ stfs f0, 0x9c(r1) +/* 8018B6FC 0018865C 48 18 75 45 */ bl GetRotation__12CTransform4fCFv +/* 8018B700 00188660 38 61 00 D0 */ addi r3, r1, 0xd0 +/* 8018B704 00188664 38 81 00 90 */ addi r4, r1, 0x90 +/* 8018B708 00188668 48 18 68 B1 */ bl BuildTransform4f__11CQuaternionCFv +/* 8018B70C 0018866C 38 61 01 00 */ addi r3, r1, 0x100 +/* 8018B710 00188670 38 81 00 D0 */ addi r4, r1, 0xd0 +/* 8018B714 00188674 38 A1 00 A0 */ addi r5, r1, 0xa0 +/* 8018B718 00188678 48 18 72 39 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8018B71C 0018867C 38 61 01 60 */ addi r3, r1, 0x160 +/* 8018B720 00188680 38 81 01 00 */ addi r4, r1, 0x100 +/* 8018B724 00188684 48 18 74 51 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8018B728 00188688 C0 61 01 BC */ lfs f3, 0x1bc(r1) +/* 8018B72C 0018868C 7F E3 FB 78 */ mr r3, r31 +/* 8018B730 00188690 C0 41 01 AC */ lfs f2, 0x1ac(r1) +/* 8018B734 00188694 FC 20 F8 90 */ fmr f1, f31 +/* 8018B738 00188698 C0 01 01 9C */ lfs f0, 0x19c(r1) +/* 8018B73C 0018869C 7F C5 F3 78 */ mr r5, r30 +/* 8018B740 001886A0 D0 41 01 7C */ stfs f2, 0x17c(r1) +/* 8018B744 001886A4 38 81 01 60 */ addi r4, r1, 0x160 +/* 8018B748 001886A8 D0 01 01 6C */ stfs f0, 0x16c(r1) +/* 8018B74C 001886AC D0 61 01 8C */ stfs f3, 0x18c(r1) +/* 8018B750 001886B0 81 9F 00 00 */ lwz r12, 0(r31) +/* 8018B754 001886B4 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 8018B758 001886B8 7D 89 03 A6 */ mtctr r12 +/* 8018B75C 001886BC 4E 80 04 21 */ bctrl +/* 8018B760 001886C0 48 00 00 24 */ b lbl_8018B784 +lbl_8018B764: +/* 8018B764 001886C4 7F E3 FB 78 */ mr r3, r31 +/* 8018B768 001886C8 FC 20 F8 90 */ fmr f1, f31 +/* 8018B76C 001886CC 81 9F 00 00 */ lwz r12, 0(r31) +/* 8018B770 001886D0 7F C5 F3 78 */ mr r5, r30 +/* 8018B774 001886D4 38 81 01 90 */ addi r4, r1, 0x190 +/* 8018B778 001886D8 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 8018B77C 001886DC 7D 89 03 A6 */ mtctr r12 +/* 8018B780 001886E0 4E 80 04 21 */ bctrl +lbl_8018B784: +/* 8018B784 001886E4 A0 1D 06 00 */ lhz r0, 0x600(r29) +/* 8018B788 001886E8 7F C3 F3 78 */ mr r3, r30 +/* 8018B78C 001886EC 38 81 00 0C */ addi r4, r1, 0xc +/* 8018B790 001886F0 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8018B794 001886F4 4B EC 0D E1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8018B798 001886F8 7C 64 1B 78 */ mr r4, r3 +/* 8018B79C 001886FC 38 61 00 24 */ addi r3, r1, 0x24 +/* 8018B7A0 00188700 4B F2 3B AD */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8018B7A4 00188704 83 63 00 04 */ lwz r27, 4(r3) +/* 8018B7A8 00188708 7F C3 F3 78 */ mr r3, r30 +/* 8018B7AC 0018870C A0 1D 06 02 */ lhz r0, 0x602(r29) +/* 8018B7B0 00188710 38 81 00 08 */ addi r4, r1, 8 +/* 8018B7B4 00188714 B0 01 00 08 */ sth r0, 8(r1) +/* 8018B7B8 00188718 4B EC 0D BD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8018B7BC 0018871C 7C 64 1B 78 */ mr r4, r3 +/* 8018B7C0 00188720 38 61 00 1C */ addi r3, r1, 0x1c +/* 8018B7C4 00188724 4B F2 3B 89 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 8018B7C8 00188728 28 1B 00 00 */ cmplwi r27, 0 +/* 8018B7CC 0018872C 83 43 00 04 */ lwz r26, 4(r3) +/* 8018B7D0 00188730 41 82 01 68 */ beq lbl_8018B938 +/* 8018B7D4 00188734 28 1A 00 00 */ cmplwi r26, 0 +/* 8018B7D8 00188738 41 82 01 60 */ beq lbl_8018B938 +/* 8018B7DC 0018873C 7F 43 D3 78 */ mr r3, r26 +/* 8018B7E0 00188740 7F C4 F3 78 */ mr r4, r30 +/* 8018B7E4 00188744 81 9A 00 00 */ lwz r12, 0(r26) +/* 8018B7E8 00188748 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8018B7EC 0018874C 7D 89 03 A6 */ mtctr r12 +/* 8018B7F0 00188750 4E 80 04 21 */ bctrl +/* 8018B7F4 00188754 C3 E3 00 00 */ lfs f31, 0(r3) +/* 8018B7F8 00188758 7F 63 DB 78 */ mr r3, r27 +/* 8018B7FC 0018875C 81 9B 00 00 */ lwz r12, 0(r27) +/* 8018B800 00188760 7F C4 F3 78 */ mr r4, r30 +/* 8018B804 00188764 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8018B808 00188768 7D 89 03 A6 */ mtctr r12 +/* 8018B80C 0018876C 4E 80 04 21 */ bctrl +/* 8018B810 00188770 C0 03 00 00 */ lfs f0, 0(r3) +/* 8018B814 00188774 FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 8018B818 00188778 40 80 00 90 */ bge lbl_8018B8A8 +/* 8018B81C 0018877C 7F 63 DB 78 */ mr r3, r27 +/* 8018B820 00188780 7F C4 F3 78 */ mr r4, r30 +/* 8018B824 00188784 81 9B 00 00 */ lwz r12, 0(r27) +/* 8018B828 00188788 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8018B82C 0018878C 7D 89 03 A6 */ mtctr r12 +/* 8018B830 00188790 4E 80 04 21 */ bctrl +/* 8018B834 00188794 7C 7C 1B 78 */ mr r28, r3 +/* 8018B838 00188798 7F A3 EB 78 */ mr r3, r29 +/* 8018B83C 0018879C 81 9D 00 00 */ lwz r12, 0(r29) +/* 8018B840 001887A0 7F C4 F3 78 */ mr r4, r30 +/* 8018B844 001887A4 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8018B848 001887A8 7D 89 03 A6 */ mtctr r12 +/* 8018B84C 001887AC 4E 80 04 21 */ bctrl +/* 8018B850 001887B0 C0 1C 00 00 */ lfs f0, 0(r28) +/* 8018B854 001887B4 7F C4 F3 78 */ mr r4, r30 +/* 8018B858 001887B8 D0 03 00 00 */ stfs f0, 0(r3) +/* 8018B85C 001887BC C0 1C 00 04 */ lfs f0, 4(r28) +/* 8018B860 001887C0 D0 03 00 04 */ stfs f0, 4(r3) +/* 8018B864 001887C4 7F 63 DB 78 */ mr r3, r27 +/* 8018B868 001887C8 81 9B 00 00 */ lwz r12, 0(r27) +/* 8018B86C 001887CC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8018B870 001887D0 7D 89 03 A6 */ mtctr r12 +/* 8018B874 001887D4 4E 80 04 21 */ bctrl +/* 8018B878 001887D8 7C 7C 1B 78 */ mr r28, r3 +/* 8018B87C 001887DC 7F 43 D3 78 */ mr r3, r26 +/* 8018B880 001887E0 81 9A 00 00 */ lwz r12, 0(r26) +/* 8018B884 001887E4 7F C4 F3 78 */ mr r4, r30 +/* 8018B888 001887E8 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8018B88C 001887EC 7D 89 03 A6 */ mtctr r12 +/* 8018B890 001887F0 4E 80 04 21 */ bctrl +/* 8018B894 001887F4 C0 1C 00 00 */ lfs f0, 0(r28) +/* 8018B898 001887F8 D0 03 00 00 */ stfs f0, 0(r3) +/* 8018B89C 001887FC C0 1C 00 04 */ lfs f0, 4(r28) +/* 8018B8A0 00188800 D0 03 00 04 */ stfs f0, 4(r3) +/* 8018B8A4 00188804 48 00 00 94 */ b lbl_8018B938 +lbl_8018B8A8: +/* 8018B8A8 00188808 28 1A 00 00 */ cmplwi r26, 0 +/* 8018B8AC 0018880C 41 82 00 8C */ beq lbl_8018B938 +/* 8018B8B0 00188810 7F 43 D3 78 */ mr r3, r26 +/* 8018B8B4 00188814 7F C4 F3 78 */ mr r4, r30 +/* 8018B8B8 00188818 81 9A 00 00 */ lwz r12, 0(r26) +/* 8018B8BC 0018881C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8018B8C0 00188820 7D 89 03 A6 */ mtctr r12 +/* 8018B8C4 00188824 4E 80 04 21 */ bctrl +/* 8018B8C8 00188828 7C 7C 1B 78 */ mr r28, r3 +/* 8018B8CC 0018882C 7F A3 EB 78 */ mr r3, r29 +/* 8018B8D0 00188830 81 9D 00 00 */ lwz r12, 0(r29) +/* 8018B8D4 00188834 7F C4 F3 78 */ mr r4, r30 +/* 8018B8D8 00188838 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8018B8DC 0018883C 7D 89 03 A6 */ mtctr r12 +/* 8018B8E0 00188840 4E 80 04 21 */ bctrl +/* 8018B8E4 00188844 C0 1C 00 00 */ lfs f0, 0(r28) +/* 8018B8E8 00188848 7F C4 F3 78 */ mr r4, r30 +/* 8018B8EC 0018884C D0 03 00 00 */ stfs f0, 0(r3) +/* 8018B8F0 00188850 C0 1C 00 04 */ lfs f0, 4(r28) +/* 8018B8F4 00188854 D0 03 00 04 */ stfs f0, 4(r3) +/* 8018B8F8 00188858 7F 43 D3 78 */ mr r3, r26 +/* 8018B8FC 0018885C 81 9A 00 00 */ lwz r12, 0(r26) +/* 8018B900 00188860 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8018B904 00188864 7D 89 03 A6 */ mtctr r12 +/* 8018B908 00188868 4E 80 04 21 */ bctrl +/* 8018B90C 0018886C 7C 7C 1B 78 */ mr r28, r3 +/* 8018B910 00188870 7F 63 DB 78 */ mr r3, r27 +/* 8018B914 00188874 81 9B 00 00 */ lwz r12, 0(r27) +/* 8018B918 00188878 7F C4 F3 78 */ mr r4, r30 +/* 8018B91C 0018887C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8018B920 00188880 7D 89 03 A6 */ mtctr r12 +/* 8018B924 00188884 4E 80 04 21 */ bctrl +/* 8018B928 00188888 C0 1C 00 00 */ lfs f0, 0(r28) +/* 8018B92C 0018888C D0 03 00 00 */ stfs f0, 0(r3) +/* 8018B930 00188890 C0 1C 00 04 */ lfs f0, 4(r28) +/* 8018B934 00188894 D0 03 00 04 */ stfs f0, 4(r3) +lbl_8018B938: +/* 8018B938 00188898 7F A3 EB 78 */ mr r3, r29 +/* 8018B93C 0018889C 7F C4 F3 78 */ mr r4, r30 +/* 8018B940 001888A0 81 9D 00 00 */ lwz r12, 0(r29) +/* 8018B944 001888A4 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8018B948 001888A8 7D 89 03 A6 */ mtctr r12 +/* 8018B94C 001888AC 4E 80 04 21 */ bctrl +/* 8018B950 001888B0 C0 23 00 00 */ lfs f1, 0(r3) +/* 8018B954 001888B4 C0 02 A3 C0 */ lfs f0, lbl_805AC0E0@sda21(r2) +/* 8018B958 001888B8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018B95C 001888BC 4C 40 13 82 */ cror 2, 0, 2 +/* 8018B960 001888C0 40 82 00 B8 */ bne lbl_8018BA18 +/* 8018B964 001888C4 88 1D 04 00 */ lbz r0, 0x400(r29) +/* 8018B968 001888C8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8018B96C 001888CC 41 82 00 AC */ beq lbl_8018BA18 +/* 8018B970 001888D0 28 1F 00 00 */ cmplwi r31, 0 +/* 8018B974 001888D4 41 82 00 20 */ beq lbl_8018B994 +/* 8018B978 001888D8 7F E3 FB 78 */ mr r3, r31 +/* 8018B97C 001888DC 7F C4 F3 78 */ mr r4, r30 +/* 8018B980 001888E0 81 9F 00 00 */ lwz r12, 0(r31) +/* 8018B984 001888E4 38 A0 00 01 */ li r5, 1 +/* 8018B988 001888E8 81 8C 00 74 */ lwz r12, 0x74(r12) +/* 8018B98C 001888EC 7D 89 03 A6 */ mtctr r12 +/* 8018B990 001888F0 4E 80 04 21 */ bctrl +lbl_8018B994: +/* 8018B994 001888F4 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8018B998 001888F8 C0 22 A3 9C */ lfs f1, lbl_805AC0BC@sda21(r2) +/* 8018B99C 001888FC 4B FA EE F1 */ bl SetPlaybackRate__15CBodyControllerFf +/* 8018B9A0 00188900 38 7D 00 34 */ addi r3, r29, 0x34 +/* 8018B9A4 00188904 38 9D 06 44 */ addi r4, r29, 0x644 +/* 8018B9A8 00188908 48 18 71 99 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8018B9AC 0018890C 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 8018B9B0 00188910 38 A0 00 01 */ li r5, 1 +/* 8018B9B4 00188914 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 8018B9B8 00188918 7F A3 EB 78 */ mr r3, r29 +/* 8018B9BC 0018891C 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 8018B9C0 00188920 7F C4 F3 78 */ mr r4, r30 +/* 8018B9C4 00188924 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 8018B9C8 00188928 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 8018B9CC 0018892C 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 8018B9D0 00188930 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 8018B9D4 00188934 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 8018B9D8 00188938 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 8018B9DC 0018893C 4B FF E4 7D */ bl StopRumble__13CNewIntroBossFR13CStateManager +/* 8018B9E0 00188940 C0 5D 00 58 */ lfs f2, 0x58(r29) +/* 8018B9E4 00188944 7F A3 EB 78 */ mr r3, r29 +/* 8018B9E8 00188948 C0 3D 00 48 */ lfs f1, 0x48(r29) +/* 8018B9EC 0018894C 7F C4 F3 78 */ mr r4, r30 +/* 8018B9F0 00188950 C0 1D 00 38 */ lfs f0, 0x38(r29) +/* 8018B9F4 00188954 38 A1 00 2C */ addi r5, r1, 0x2c +/* 8018B9F8 00188958 38 C0 00 14 */ li r6, 0x14 +/* 8018B9FC 0018895C D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8018BA00 00188960 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 8018BA04 00188964 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 8018BA08 00188968 81 9D 00 00 */ lwz r12, 0(r29) +/* 8018BA0C 0018896C 81 8C 00 84 */ lwz r12, 0x84(r12) +/* 8018BA10 00188970 7D 89 03 A6 */ mtctr r12 +/* 8018BA14 00188974 4E 80 04 21 */ bctrl +lbl_8018BA18: +/* 8018BA18 00188978 E3 E1 01 E8 */ psq_l f31, 488(r1), 0, qr0 +/* 8018BA1C 0018897C CB E1 01 E0 */ lfd f31, 0x1e0(r1) +/* 8018BA20 00188980 BB 41 01 C8 */ lmw r26, 0x1c8(r1) +/* 8018BA24 00188984 80 01 01 F4 */ lwz r0, 0x1f4(r1) +/* 8018BA28 00188988 7C 08 03 A6 */ mtlr r0 +/* 8018BA2C 0018898C 38 21 01 F0 */ addi r1, r1, 0x1f0 +/* 8018BA30 00188990 4E 80 00 20 */ blr + +.global GetTouchBounds__13CNewIntroBossCFv +GetTouchBounds__13CNewIntroBossCFv: +/* 8018BA34 00188994 38 00 00 00 */ li r0, 0 +/* 8018BA38 00188998 98 03 00 18 */ stb r0, 0x18(r3) +/* 8018BA3C 0018899C 4E 80 00 20 */ blr + +.global DoUserAnimEvent__13CNewIntroBossFR13CStateManagerRC13CInt32POINode14EUserEventType +DoUserAnimEvent__13CNewIntroBossFR13CStateManagerRC13CInt32POINode14EUserEventType: +/* 8018BA40 001889A0 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 8018BA44 001889A4 7C 08 02 A6 */ mflr r0 +/* 8018BA48 001889A8 90 01 01 14 */ stw r0, 0x114(r1) +/* 8018BA4C 001889AC DB E1 01 00 */ stfd f31, 0x100(r1) +/* 8018BA50 001889B0 F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 +/* 8018BA54 001889B4 93 E1 00 FC */ stw r31, 0xfc(r1) +/* 8018BA58 001889B8 93 C1 00 F8 */ stw r30, 0xf8(r1) +/* 8018BA5C 001889BC 93 A1 00 F4 */ stw r29, 0xf4(r1) +/* 8018BA60 001889C0 93 81 00 F0 */ stw r28, 0xf0(r1) +/* 8018BA64 001889C4 7C DF 33 78 */ mr r31, r6 +/* 8018BA68 001889C8 FF E0 08 90 */ fmr f31, f1 +/* 8018BA6C 001889CC 2C 1F 00 08 */ cmpwi r31, 8 +/* 8018BA70 001889D0 7C 7C 1B 78 */ mr r28, r3 +/* 8018BA74 001889D4 7C 9D 23 78 */ mr r29, r4 +/* 8018BA78 001889D8 7C BE 2B 78 */ mr r30, r5 +/* 8018BA7C 001889DC 38 00 00 00 */ li r0, 0 +/* 8018BA80 001889E0 41 82 00 20 */ beq lbl_8018BAA0 +/* 8018BA84 001889E4 40 80 00 10 */ bge lbl_8018BA94 +/* 8018BA88 001889E8 2C 1F 00 00 */ cmpwi r31, 0 +/* 8018BA8C 001889EC 41 82 02 08 */ beq lbl_8018BC94 +/* 8018BA90 001889F0 48 00 02 04 */ b lbl_8018BC94 +lbl_8018BA94: +/* 8018BA94 001889F4 2C 1F 00 0A */ cmpwi r31, 0xa +/* 8018BA98 001889F8 40 80 01 FC */ bge lbl_8018BC94 +/* 8018BA9C 001889FC 48 00 01 90 */ b lbl_8018BC2C +lbl_8018BAA0: +/* 8018BAA0 00188A00 38 7C 05 DC */ addi r3, r28, 0x5dc +/* 8018BAA4 00188A04 38 9E 00 3C */ addi r4, r30, 0x3c +/* 8018BAA8 00188A08 48 1B 22 B5 */ bl "assign__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8018BAAC 00188A0C 7F 84 E3 78 */ mr r4, r28 +/* 8018BAB0 00188A10 38 61 00 58 */ addi r3, r1, 0x58 +/* 8018BAB4 00188A14 38 BC 05 DC */ addi r5, r28, 0x5dc +/* 8018BAB8 00188A18 4B EE CE C1 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8018BABC 00188A1C 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 8018BAC0 00188A20 38 81 00 58 */ addi r4, r1, 0x58 +/* 8018BAC4 00188A24 48 18 70 B1 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8018BAC8 00188A28 7F 84 E3 78 */ mr r4, r28 +/* 8018BACC 00188A2C 7F A5 EB 78 */ mr r5, r29 +/* 8018BAD0 00188A30 38 61 00 1C */ addi r3, r1, 0x1c +/* 8018BAD4 00188A34 48 00 02 09 */ bl PlayerPos__13CNewIntroBossCFRC13CStateManager +/* 8018BAD8 00188A38 C0 81 00 1C */ lfs f4, 0x1c(r1) +/* 8018BADC 00188A3C 7F 83 E3 78 */ mr r3, r28 +/* 8018BAE0 00188A40 C0 41 00 20 */ lfs f2, 0x20(r1) +/* 8018BAE4 00188A44 7F A4 EB 78 */ mr r4, r29 +/* 8018BAE8 00188A48 C0 61 00 24 */ lfs f3, 0x24(r1) +/* 8018BAEC 00188A4C C0 02 A3 C0 */ lfs f0, lbl_805AC0E0@sda21(r2) +/* 8018BAF0 00188A50 D0 9C 06 04 */ stfs f4, 0x604(r28) +/* 8018BAF4 00188A54 D0 5C 06 08 */ stfs f2, 0x608(r28) +/* 8018BAF8 00188A58 D0 7C 06 0C */ stfs f3, 0x60c(r28) +/* 8018BAFC 00188A5C C0 3C 06 04 */ lfs f1, 0x604(r28) +/* 8018BB00 00188A60 D0 3C 06 10 */ stfs f1, 0x610(r28) +/* 8018BB04 00188A64 C0 3C 06 08 */ lfs f1, 0x608(r28) +/* 8018BB08 00188A68 D0 3C 06 14 */ stfs f1, 0x614(r28) +/* 8018BB0C 00188A6C C0 3C 06 0C */ lfs f1, 0x60c(r28) +/* 8018BB10 00188A70 D0 3C 06 18 */ stfs f1, 0x618(r28) +/* 8018BB14 00188A74 C0 3C 06 10 */ lfs f1, 0x610(r28) +/* 8018BB18 00188A78 D0 3C 06 2C */ stfs f1, 0x62c(r28) +/* 8018BB1C 00188A7C C0 3C 06 14 */ lfs f1, 0x614(r28) +/* 8018BB20 00188A80 D0 3C 06 30 */ stfs f1, 0x630(r28) +/* 8018BB24 00188A84 C0 3C 06 18 */ lfs f1, 0x618(r28) +/* 8018BB28 00188A88 D0 3C 06 34 */ stfs f1, 0x634(r28) +/* 8018BB2C 00188A8C D0 9C 06 1C */ stfs f4, 0x61c(r28) +/* 8018BB30 00188A90 D0 5C 06 20 */ stfs f2, 0x620(r28) +/* 8018BB34 00188A94 D0 7C 06 24 */ stfs f3, 0x624(r28) +/* 8018BB38 00188A98 D0 1C 06 28 */ stfs f0, 0x628(r28) +/* 8018BB3C 00188A9C 48 00 06 79 */ bl GetLocoForHealth__13CNewIntroBossCFRC13CStateManager +/* 8018BB40 00188AA0 2C 03 00 03 */ cmpwi r3, 3 +/* 8018BB44 00188AA4 40 82 00 10 */ bne lbl_8018BB54 +/* 8018BB48 00188AA8 A0 1C 05 D8 */ lhz r0, 0x5d8(r28) +/* 8018BB4C 00188AAC B0 1C 06 76 */ sth r0, 0x676(r28) +/* 8018BB50 00188AB0 48 00 00 2C */ b lbl_8018BB7C +lbl_8018BB54: +/* 8018BB54 00188AB4 7F 83 E3 78 */ mr r3, r28 +/* 8018BB58 00188AB8 7F A4 EB 78 */ mr r4, r29 +/* 8018BB5C 00188ABC 48 00 06 59 */ bl GetLocoForHealth__13CNewIntroBossCFRC13CStateManager +/* 8018BB60 00188AC0 2C 03 00 02 */ cmpwi r3, 2 +/* 8018BB64 00188AC4 40 82 00 10 */ bne lbl_8018BB74 +/* 8018BB68 00188AC8 A0 1C 05 D6 */ lhz r0, 0x5d6(r28) +/* 8018BB6C 00188ACC B0 1C 06 76 */ sth r0, 0x676(r28) +/* 8018BB70 00188AD0 48 00 00 0C */ b lbl_8018BB7C +lbl_8018BB74: +/* 8018BB74 00188AD4 A0 1C 05 D4 */ lhz r0, 0x5d4(r28) +/* 8018BB78 00188AD8 B0 1C 06 76 */ sth r0, 0x676(r28) +lbl_8018BB7C: +/* 8018BB7C 00188ADC C0 41 00 C4 */ lfs f2, 0xc4(r1) +/* 8018BB80 00188AE0 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 8018BB84 00188AE4 C0 21 00 D4 */ lfs f1, 0xd4(r1) +/* 8018BB88 00188AE8 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 8018BB8C 00188AEC C0 01 00 E4 */ lfs f0, 0xe4(r1) +/* 8018BB90 00188AF0 38 61 00 28 */ addi r3, r1, 0x28 +/* 8018BB94 00188AF4 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 8018BB98 00188AF8 38 81 00 10 */ addi r4, r1, 0x10 +/* 8018BB9C 00188AFC 38 BC 06 10 */ addi r5, r28, 0x610 +/* 8018BBA0 00188B00 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 8018BBA4 00188B04 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 8018BBA8 00188B08 48 18 7F 69 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 8018BBAC 00188B0C 38 61 00 88 */ addi r3, r1, 0x88 +/* 8018BBB0 00188B10 38 81 00 28 */ addi r4, r1, 0x28 +/* 8018BBB4 00188B14 48 18 6F C1 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8018BBB8 00188B18 A0 1C 06 76 */ lhz r0, 0x676(r28) +/* 8018BBBC 00188B1C 7F A3 EB 78 */ mr r3, r29 +/* 8018BBC0 00188B20 38 81 00 0C */ addi r4, r1, 0xc +/* 8018BBC4 00188B24 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8018BBC8 00188B28 4B EC 09 AD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8018BBCC 00188B2C 28 03 00 00 */ cmplwi r3, 0 +/* 8018BBD0 00188B30 41 82 00 54 */ beq lbl_8018BC24 +/* 8018BBD4 00188B34 88 03 00 30 */ lbz r0, 0x30(r3) +/* 8018BBD8 00188B38 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8018BBDC 00188B3C 40 82 00 48 */ bne lbl_8018BC24 +/* 8018BBE0 00188B40 81 83 00 00 */ lwz r12, 0(r3) +/* 8018BBE4 00188B44 7F A5 EB 78 */ mr r5, r29 +/* 8018BBE8 00188B48 38 81 00 88 */ addi r4, r1, 0x88 +/* 8018BBEC 00188B4C 38 C0 00 00 */ li r6, 0 +/* 8018BBF0 00188B50 81 8C 00 78 */ lwz r12, 0x78(r12) +/* 8018BBF4 00188B54 7D 89 03 A6 */ mtctr r12 +/* 8018BBF8 00188B58 4E 80 04 21 */ bctrl +/* 8018BBFC 00188B5C A8 1C 06 74 */ lha r0, 0x674(r28) +/* 8018BC00 00188B60 2C 00 FF FF */ cmpwi r0, -1 +/* 8018BC04 00188B64 40 82 00 20 */ bne lbl_8018BC24 +/* 8018BC08 00188B68 80 7D 08 8C */ lwz r3, 0x88c(r29) +/* 8018BC0C 00188B6C 7F A4 EB 78 */ mr r4, r29 +/* 8018BC10 00188B70 C0 22 A3 9C */ lfs f1, lbl_805AC0BC@sda21(r2) +/* 8018BC14 00188B74 38 A0 00 13 */ li r5, 0x13 +/* 8018BC18 00188B78 38 C0 00 02 */ li r6, 2 +/* 8018BC1C 00188B7C 48 0A 26 29 */ bl Rumble__14CRumbleManagerFR13CStateManager11ERumbleFxIdf15ERumblePriority +/* 8018BC20 00188B80 B0 7C 06 74 */ sth r3, 0x674(r28) +lbl_8018BC24: +/* 8018BC24 00188B84 38 00 00 01 */ li r0, 1 +/* 8018BC28 00188B88 48 00 00 6C */ b lbl_8018BC94 +lbl_8018BC2C: +/* 8018BC2C 00188B8C A0 1C 06 76 */ lhz r0, 0x676(r28) +/* 8018BC30 00188B90 7F A3 EB 78 */ mr r3, r29 +/* 8018BC34 00188B94 38 81 00 08 */ addi r4, r1, 8 +/* 8018BC38 00188B98 B0 01 00 08 */ sth r0, 8(r1) +/* 8018BC3C 00188B9C 4B EC 09 39 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8018BC40 00188BA0 28 03 00 00 */ cmplwi r3, 0 +/* 8018BC44 00188BA4 41 82 00 1C */ beq lbl_8018BC60 +/* 8018BC48 00188BA8 81 83 00 00 */ lwz r12, 0(r3) +/* 8018BC4C 00188BAC 7F A4 EB 78 */ mr r4, r29 +/* 8018BC50 00188BB0 38 A0 00 00 */ li r5, 0 +/* 8018BC54 00188BB4 81 8C 00 74 */ lwz r12, 0x74(r12) +/* 8018BC58 00188BB8 7D 89 03 A6 */ mtctr r12 +/* 8018BC5C 00188BBC 4E 80 04 21 */ bctrl +lbl_8018BC60: +/* 8018BC60 00188BC0 7F 83 E3 78 */ mr r3, r28 +/* 8018BC64 00188BC4 7F A4 EB 78 */ mr r4, r29 +/* 8018BC68 00188BC8 4B FF E1 F1 */ bl StopRumble__13CNewIntroBossFR13CStateManager +/* 8018BC6C 00188BCC 7F 83 E3 78 */ mr r3, r28 +/* 8018BC70 00188BD0 7F A4 EB 78 */ mr r4, r29 +/* 8018BC74 00188BD4 48 00 04 31 */ bl GetNextAttackTime__13CNewIntroBossCFR13CStateManager +/* 8018BC78 00188BD8 D0 3C 06 3C */ stfs f1, 0x63c(r28) +/* 8018BC7C 00188BDC 7F 83 E3 78 */ mr r3, r28 +/* 8018BC80 00188BE0 7F A5 EB 78 */ mr r5, r29 +/* 8018BC84 00188BE4 38 80 00 0A */ li r4, 0xa +/* 8018BC88 00188BE8 38 C0 FF FF */ li r6, -1 +/* 8018BC8C 00188BEC 4B EC 54 35 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 8018BC90 00188BF0 38 00 00 01 */ li r0, 1 +lbl_8018BC94: +/* 8018BC94 00188BF4 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8018BC98 00188BF8 40 82 00 1C */ bne lbl_8018BCB4 +/* 8018BC9C 00188BFC FC 20 F8 90 */ fmr f1, f31 +/* 8018BCA0 00188C00 7F 83 E3 78 */ mr r3, r28 +/* 8018BCA4 00188C04 7F A4 EB 78 */ mr r4, r29 +/* 8018BCA8 00188C08 7F C5 F3 78 */ mr r5, r30 +/* 8018BCAC 00188C0C 7F E6 FB 78 */ mr r6, r31 +/* 8018BCB0 00188C10 4B EE D2 01 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +lbl_8018BCB4: +/* 8018BCB4 00188C14 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 +/* 8018BCB8 00188C18 80 01 01 14 */ lwz r0, 0x114(r1) +/* 8018BCBC 00188C1C CB E1 01 00 */ lfd f31, 0x100(r1) +/* 8018BCC0 00188C20 83 E1 00 FC */ lwz r31, 0xfc(r1) +/* 8018BCC4 00188C24 83 C1 00 F8 */ lwz r30, 0xf8(r1) +/* 8018BCC8 00188C28 83 A1 00 F4 */ lwz r29, 0xf4(r1) +/* 8018BCCC 00188C2C 83 81 00 F0 */ lwz r28, 0xf0(r1) +/* 8018BCD0 00188C30 7C 08 03 A6 */ mtlr r0 +/* 8018BCD4 00188C34 38 21 01 10 */ addi r1, r1, 0x110 +/* 8018BCD8 00188C38 4E 80 00 20 */ blr + +.global PlayerPos__13CNewIntroBossCFRC13CStateManager +PlayerPos__13CNewIntroBossCFRC13CStateManager: +/* 8018BCDC 00188C3C 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 8018BCE0 00188C40 7C 08 02 A6 */ mflr r0 +/* 8018BCE4 00188C44 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 8018BCE8 00188C48 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 8018BCEC 00188C4C 7C BF 2B 78 */ mr r31, r5 +/* 8018BCF0 00188C50 93 C1 00 98 */ stw r30, 0x98(r1) +/* 8018BCF4 00188C54 7C 7E 1B 78 */ mr r30, r3 +/* 8018BCF8 00188C58 80 65 08 4C */ lwz r3, 0x84c(r5) +/* 8018BCFC 00188C5C 48 0F 90 E5 */ bl GetEyeHeight__7CPlayerCFv +/* 8018BD00 00188C60 C0 02 A3 8C */ lfs f0, lbl_805AC0AC@sda21(r2) +/* 8018BD04 00188C64 38 60 00 00 */ li r3, 0 +/* 8018BD08 00188C68 80 DF 08 4C */ lwz r6, 0x84c(r31) +/* 8018BD0C 00188C6C 38 80 00 01 */ li r4, 1 +/* 8018BD10 00188C70 EC 81 00 32 */ fmuls f4, f1, f0 +/* 8018BD14 00188C74 C0 42 A3 C0 */ lfs f2, lbl_805AC0E0@sda21(r2) +/* 8018BD18 00188C78 C0 26 00 60 */ lfs f1, 0x60(r6) +/* 8018BD1C 00188C7C C0 66 00 50 */ lfs f3, 0x50(r6) +/* 8018BD20 00188C80 C0 06 00 40 */ lfs f0, 0x40(r6) +/* 8018BD24 00188C84 EC 21 20 2A */ fadds f1, f1, f4 +/* 8018BD28 00188C88 EC 63 10 2A */ fadds f3, f3, f2 +/* 8018BD2C 00188C8C 80 AD 8E E0 */ lwz r5, lbl_805A7AA0@sda21(r13) +/* 8018BD30 00188C90 EC 00 10 2A */ fadds f0, f0, f2 +/* 8018BD34 00188C94 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 8018BD38 00188C98 D0 01 00 08 */ stfs f0, 8(r1) +/* 8018BD3C 00188C9C D0 61 00 0C */ stfs f3, 0xc(r1) +/* 8018BD40 00188CA0 48 1F E1 B5 */ bl __shl2i +/* 8018BD44 00188CA4 39 00 00 00 */ li r8, 0 +/* 8018BD48 00188CA8 38 00 00 01 */ li r0, 1 +/* 8018BD4C 00188CAC 3C A0 80 5A */ lis r5, lbl_805A6700@ha +/* 8018BD50 00188CB0 90 81 00 1C */ stw r4, 0x1c(r1) +/* 8018BD54 00188CB4 38 C5 67 00 */ addi r6, r5, lbl_805A6700@l +/* 8018BD58 00188CB8 C0 22 A3 D8 */ lfs f1, lbl_805AC0F8@sda21(r2) +/* 8018BD5C 00188CBC 90 61 00 18 */ stw r3, 0x18(r1) +/* 8018BD60 00188CC0 7F E4 FB 78 */ mr r4, r31 +/* 8018BD64 00188CC4 38 61 00 30 */ addi r3, r1, 0x30 +/* 8018BD68 00188CC8 38 A1 00 08 */ addi r5, r1, 8 +/* 8018BD6C 00188CCC 91 01 00 24 */ stw r8, 0x24(r1) +/* 8018BD70 00188CD0 38 E1 00 18 */ addi r7, r1, 0x18 +/* 8018BD74 00188CD4 91 01 00 20 */ stw r8, 0x20(r1) +/* 8018BD78 00188CD8 90 01 00 28 */ stw r0, 0x28(r1) +/* 8018BD7C 00188CDC 4B FF 8A 8D */ bl RayStaticIntersection__14CGameCollisionFRC13CStateManagerRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 8018BD80 00188CE0 88 81 00 50 */ lbz r4, 0x50(r1) +/* 8018BD84 00188CE4 C0 E1 00 30 */ lfs f7, 0x30(r1) +/* 8018BD88 00188CE8 C0 C1 00 34 */ lfs f6, 0x34(r1) +/* 8018BD8C 00188CEC 28 04 00 00 */ cmplwi r4, 0 +/* 8018BD90 00188CF0 C0 A1 00 38 */ lfs f5, 0x38(r1) +/* 8018BD94 00188CF4 C0 81 00 3C */ lfs f4, 0x3c(r1) +/* 8018BD98 00188CF8 C0 61 00 40 */ lfs f3, 0x40(r1) +/* 8018BD9C 00188CFC C0 41 00 44 */ lfs f2, 0x44(r1) +/* 8018BDA0 00188D00 C0 21 00 48 */ lfs f1, 0x48(r1) +/* 8018BDA4 00188D04 C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 8018BDA8 00188D08 80 01 00 58 */ lwz r0, 0x58(r1) +/* 8018BDAC 00188D0C 80 61 00 5C */ lwz r3, 0x5c(r1) +/* 8018BDB0 00188D10 D0 E1 00 60 */ stfs f7, 0x60(r1) +/* 8018BDB4 00188D14 D0 C1 00 64 */ stfs f6, 0x64(r1) +/* 8018BDB8 00188D18 D0 A1 00 68 */ stfs f5, 0x68(r1) +/* 8018BDBC 00188D1C D0 81 00 6C */ stfs f4, 0x6c(r1) +/* 8018BDC0 00188D20 D0 61 00 70 */ stfs f3, 0x70(r1) +/* 8018BDC4 00188D24 D0 41 00 74 */ stfs f2, 0x74(r1) +/* 8018BDC8 00188D28 D0 21 00 78 */ stfs f1, 0x78(r1) +/* 8018BDCC 00188D2C D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 8018BDD0 00188D30 98 81 00 80 */ stb r4, 0x80(r1) +/* 8018BDD4 00188D34 90 61 00 8C */ stw r3, 0x8c(r1) +/* 8018BDD8 00188D38 90 01 00 88 */ stw r0, 0x88(r1) +/* 8018BDDC 00188D3C 40 82 00 48 */ bne lbl_8018BE24 +/* 8018BDE0 00188D40 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8018BDE4 00188D44 48 0F 8F FD */ bl GetEyeHeight__7CPlayerCFv +/* 8018BDE8 00188D48 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8018BDEC 00188D4C C0 62 A3 C0 */ lfs f3, lbl_805AC0E0@sda21(r2) +/* 8018BDF0 00188D50 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 8018BDF4 00188D54 C0 C2 A3 8C */ lfs f6, lbl_805AC0AC@sda21(r2) +/* 8018BDF8 00188D58 C0 A2 A3 C8 */ lfs f5, lbl_805AC0E8@sda21(r2) +/* 8018BDFC 00188D5C EC 00 18 2A */ fadds f0, f0, f3 +/* 8018BE00 00188D60 C0 83 00 50 */ lfs f4, 0x50(r3) +/* 8018BE04 00188D64 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 8018BE08 00188D68 EC A1 29 BA */ fmadds f5, f1, f6, f5 +/* 8018BE0C 00188D6C EC 24 18 2A */ fadds f1, f4, f3 +/* 8018BE10 00188D70 D0 1E 00 00 */ stfs f0, 0(r30) +/* 8018BE14 00188D74 EC 02 28 2A */ fadds f0, f2, f5 +/* 8018BE18 00188D78 D0 3E 00 04 */ stfs f1, 4(r30) +/* 8018BE1C 00188D7C D0 1E 00 08 */ stfs f0, 8(r30) +/* 8018BE20 00188D80 48 00 00 40 */ b lbl_8018BE60 +lbl_8018BE24: +/* 8018BE24 00188D84 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8018BE28 00188D88 48 0F 8F B9 */ bl GetEyeHeight__7CPlayerCFv +/* 8018BE2C 00188D8C C0 42 A3 C0 */ lfs f2, lbl_805AC0E0@sda21(r2) +/* 8018BE30 00188D90 C0 01 00 64 */ lfs f0, 0x64(r1) +/* 8018BE34 00188D94 C0 61 00 68 */ lfs f3, 0x68(r1) +/* 8018BE38 00188D98 EC 00 10 2A */ fadds f0, f0, f2 +/* 8018BE3C 00188D9C C0 A2 A3 8C */ lfs f5, lbl_805AC0AC@sda21(r2) +/* 8018BE40 00188DA0 C0 82 A3 C8 */ lfs f4, lbl_805AC0E8@sda21(r2) +/* 8018BE44 00188DA4 EC 63 10 2A */ fadds f3, f3, f2 +/* 8018BE48 00188DA8 C0 41 00 6C */ lfs f2, 0x6c(r1) +/* 8018BE4C 00188DAC D0 1E 00 00 */ stfs f0, 0(r30) +/* 8018BE50 00188DB0 EC 21 21 7A */ fmadds f1, f1, f5, f4 +/* 8018BE54 00188DB4 D0 7E 00 04 */ stfs f3, 4(r30) +/* 8018BE58 00188DB8 EC 02 08 2A */ fadds f0, f2, f1 +/* 8018BE5C 00188DBC D0 1E 00 08 */ stfs f0, 8(r30) +lbl_8018BE60: +/* 8018BE60 00188DC0 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 8018BE64 00188DC4 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 8018BE68 00188DC8 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 8018BE6C 00188DCC 7C 08 03 A6 */ mtlr r0 +/* 8018BE70 00188DD0 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 8018BE74 00188DD4 4E 80 00 20 */ blr + +.global ProjectileInfo__13CNewIntroBossFv +ProjectileInfo__13CNewIntroBossFv: +/* 8018BE78 00188DD8 38 63 05 AC */ addi r3, r3, 0x5ac +/* 8018BE7C 00188DDC 4E 80 00 20 */ blr + +.global "__ct__13CNewIntroBossF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersfUiRC11CDamageInfoUiUiUiUi" +"__ct__13CNewIntroBossF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersfUiRC11CDamageInfoUiUiUiUi": +/* 8018BE80 00188DE0 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8018BE84 00188DE4 7C 08 02 A6 */ mflr r0 +/* 8018BE88 00188DE8 90 01 00 74 */ stw r0, 0x74(r1) +/* 8018BE8C 00188DEC DB E1 00 60 */ stfd f31, 0x60(r1) +/* 8018BE90 00188DF0 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 8018BE94 00188DF4 BF 01 00 40 */ stmw r24, 0x40(r1) +/* 8018BE98 00188DF8 A0 04 00 00 */ lhz r0, 0(r4) +/* 8018BE9C 00188DFC 7C C4 33 78 */ mr r4, r6 +/* 8018BEA0 00188E00 7C F9 3B 78 */ mr r25, r7 +/* 8018BEA4 00188E04 7D 07 43 78 */ mr r7, r8 +/* 8018BEA8 00188E08 B0 01 00 20 */ sth r0, 0x20(r1) +/* 8018BEAC 00188E0C 7C A6 2B 78 */ mr r6, r5 +/* 8018BEB0 00188E10 7C 88 23 78 */ mr r8, r4 +/* 8018BEB4 00188E14 39 60 00 01 */ li r11, 1 +/* 8018BEB8 00188E18 91 21 00 08 */ stw r9, 8(r1) +/* 8018BEBC 00188E1C 38 00 00 02 */ li r0, 2 +/* 8018BEC0 00188E20 FF E0 08 90 */ fmr f31, f1 +/* 8018BEC4 00188E24 83 41 00 78 */ lwz r26, 0x78(r1) +/* 8018BEC8 00188E28 91 61 00 0C */ stw r11, 0xc(r1) +/* 8018BECC 00188E2C 7C 78 1B 78 */ mr r24, r3 +/* 8018BED0 00188E30 83 61 00 7C */ lwz r27, 0x7c(r1) +/* 8018BED4 00188E34 7F 29 CB 78 */ mr r9, r25 +/* 8018BED8 00188E38 91 61 00 10 */ stw r11, 0x10(r1) +/* 8018BEDC 00188E3C 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8018BEE0 00188E40 83 81 00 80 */ lwz r28, 0x80(r1) +/* 8018BEE4 00188E44 38 80 00 17 */ li r4, 0x17 +/* 8018BEE8 00188E48 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018BEEC 00188E4C 83 A1 00 84 */ lwz r29, 0x84(r1) +/* 8018BEF0 00188E50 91 41 00 18 */ stw r10, 0x18(r1) +/* 8018BEF4 00188E54 7C EA 3B 78 */ mr r10, r7 +/* 8018BEF8 00188E58 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 8018BEFC 00188E5C 38 E0 00 00 */ li r7, 0 +/* 8018BF00 00188E60 91 61 00 1C */ stw r11, 0x1c(r1) +/* 8018BF04 00188E64 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 8018BF08 00188E68 4B EF 15 49 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" +/* 8018BF0C 00188E6C 3C 80 80 3E */ lis r4, lbl_803E4018@ha +/* 8018BF10 00188E70 3C 60 80 3D */ lis r3, lbl_803D07E4@ha +/* 8018BF14 00188E74 38 04 40 18 */ addi r0, r4, lbl_803E4018@l +/* 8018BF18 00188E78 38 A0 00 01 */ li r5, 1 +/* 8018BF1C 00188E7C 90 18 00 00 */ stw r0, 0(r24) +/* 8018BF20 00188E80 38 83 07 E4 */ addi r4, r3, lbl_803D07E4@l +/* 8018BF24 00188E84 38 00 00 00 */ li r0, 0 +/* 8018BF28 00188E88 38 61 00 24 */ addi r3, r1, 0x24 +/* 8018BF2C 00188E8C 90 B8 05 68 */ stw r5, 0x568(r24) +/* 8018BF30 00188E90 38 84 00 D9 */ addi r4, r4, 0xd9 +/* 8018BF34 00188E94 90 18 05 6C */ stw r0, 0x56c(r24) +/* 8018BF38 00188E98 D3 F8 05 70 */ stfs f31, 0x570(r24) +/* 8018BF3C 00188E9C 4B E7 8D 7D */ bl string_l__4rstlFPCc +/* 8018BF40 00188EA0 80 98 00 64 */ lwz r4, 0x64(r24) +/* 8018BF44 00188EA4 38 78 05 74 */ addi r3, r24, 0x574 +/* 8018BF48 00188EA8 C0 22 A3 DC */ lfs f1, lbl_805AC0FC@sda21(r2) +/* 8018BF4C 00188EAC 38 A1 00 24 */ addi r5, r1, 0x24 +/* 8018BF50 00188EB0 80 84 00 10 */ lwz r4, 0x10(r4) +/* 8018BF54 00188EB4 38 C0 00 00 */ li r6, 0 +/* 8018BF58 00188EB8 C0 42 A3 E0 */ lfs f2, lbl_805AC100@sda21(r2) +/* 8018BF5C 00188EBC 4B FE 9A 5D */ bl "__ct__13CBoneTrackingFRC9CAnimDataRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>ffb" +/* 8018BF60 00188EC0 38 61 00 24 */ addi r3, r1, 0x24 +/* 8018BF64 00188EC4 48 1B 1B 7D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8018BF68 00188EC8 7F 44 D3 78 */ mr r4, r26 +/* 8018BF6C 00188ECC 7F 65 DB 78 */ mr r5, r27 +/* 8018BF70 00188ED0 38 78 05 AC */ addi r3, r24, 0x5ac +/* 8018BF74 00188ED4 48 09 01 35 */ bl __ct__15CProjectileInfoFUiRC11CDamageInfo +/* 8018BF78 00188ED8 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 8018BF7C 00188EDC 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8018BF80 00188EE0 38 CD A9 18 */ addi r6, r13, "_EmptyString__Q24rstl66basic_string,Q24rstl17rmemory_allocator>"@sda21 +/* 8018BF84 00188EE4 38 00 00 00 */ li r0, 0 +/* 8018BF88 00188EE8 B0 98 05 D4 */ sth r4, 0x5d4(r24) +/* 8018BF8C 00188EEC 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 8018BF90 00188EF0 C0 62 A3 C0 */ lfs f3, lbl_805AC0E0@sda21(r2) +/* 8018BF94 00188EF4 7F 24 CB 78 */ mr r4, r25 +/* 8018BF98 00188EF8 A0 ED A3 8C */ lhz r7, lbl_805A8F4C@sda21(r13) +/* 8018BF9C 00188EFC 38 78 06 44 */ addi r3, r24, 0x644 +/* 8018BFA0 00188F00 C0 22 A3 C8 */ lfs f1, lbl_805AC0E8@sda21(r2) +/* 8018BFA4 00188F04 B0 F8 05 D6 */ sth r7, 0x5d6(r24) +/* 8018BFA8 00188F08 C0 02 A3 AC */ lfs f0, lbl_805AC0CC@sda21(r2) +/* 8018BFAC 00188F0C A0 ED A3 8C */ lhz r7, lbl_805A8F4C@sda21(r13) +/* 8018BFB0 00188F10 B0 F8 05 D8 */ sth r7, 0x5d8(r24) +/* 8018BFB4 00188F14 90 D8 05 DC */ stw r6, 0x5dc(r24) +/* 8018BFB8 00188F18 90 18 05 E0 */ stw r0, 0x5e0(r24) +/* 8018BFBC 00188F1C 90 18 05 E4 */ stw r0, 0x5e4(r24) +/* 8018BFC0 00188F20 90 18 05 EC */ stw r0, 0x5ec(r24) +/* 8018BFC4 00188F24 93 98 05 F0 */ stw r28, 0x5f0(r24) +/* 8018BFC8 00188F28 93 B8 05 F4 */ stw r29, 0x5f4(r24) +/* 8018BFCC 00188F2C 93 D8 05 F8 */ stw r30, 0x5f8(r24) +/* 8018BFD0 00188F30 93 F8 05 FC */ stw r31, 0x5fc(r24) +/* 8018BFD4 00188F34 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8018BFD8 00188F38 B0 18 06 00 */ sth r0, 0x600(r24) +/* 8018BFDC 00188F3C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8018BFE0 00188F40 B0 18 06 02 */ sth r0, 0x602(r24) +/* 8018BFE4 00188F44 C0 45 00 00 */ lfs f2, 0(r5) +/* 8018BFE8 00188F48 D0 58 06 04 */ stfs f2, 0x604(r24) +/* 8018BFEC 00188F4C C0 45 00 04 */ lfs f2, 4(r5) +/* 8018BFF0 00188F50 D0 58 06 08 */ stfs f2, 0x608(r24) +/* 8018BFF4 00188F54 C0 45 00 08 */ lfs f2, 8(r5) +/* 8018BFF8 00188F58 D0 58 06 0C */ stfs f2, 0x60c(r24) +/* 8018BFFC 00188F5C C0 45 00 00 */ lfs f2, 0(r5) +/* 8018C000 00188F60 D0 58 06 10 */ stfs f2, 0x610(r24) +/* 8018C004 00188F64 C0 45 00 04 */ lfs f2, 4(r5) +/* 8018C008 00188F68 D0 58 06 14 */ stfs f2, 0x614(r24) +/* 8018C00C 00188F6C C0 45 00 08 */ lfs f2, 8(r5) +/* 8018C010 00188F70 D0 58 06 18 */ stfs f2, 0x618(r24) +/* 8018C014 00188F74 C0 45 00 00 */ lfs f2, 0(r5) +/* 8018C018 00188F78 D0 58 06 1C */ stfs f2, 0x61c(r24) +/* 8018C01C 00188F7C C0 45 00 04 */ lfs f2, 4(r5) +/* 8018C020 00188F80 D0 58 06 20 */ stfs f2, 0x620(r24) +/* 8018C024 00188F84 C0 45 00 08 */ lfs f2, 8(r5) +/* 8018C028 00188F88 D0 58 06 24 */ stfs f2, 0x624(r24) +/* 8018C02C 00188F8C D0 78 06 28 */ stfs f3, 0x628(r24) +/* 8018C030 00188F90 C0 45 00 00 */ lfs f2, 0(r5) +/* 8018C034 00188F94 D0 58 06 2C */ stfs f2, 0x62c(r24) +/* 8018C038 00188F98 C0 45 00 04 */ lfs f2, 4(r5) +/* 8018C03C 00188F9C D0 58 06 30 */ stfs f2, 0x630(r24) +/* 8018C040 00188FA0 C0 45 00 08 */ lfs f2, 8(r5) +/* 8018C044 00188FA4 D0 58 06 34 */ stfs f2, 0x634(r24) +/* 8018C048 00188FA8 D0 38 06 38 */ stfs f1, 0x638(r24) +/* 8018C04C 00188FAC D0 18 06 3C */ stfs f0, 0x63c(r24) +/* 8018C050 00188FB0 D0 78 06 40 */ stfs f3, 0x640(r24) +/* 8018C054 00188FB4 48 18 6B 21 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8018C058 00188FB8 38 60 FF FF */ li r3, -1 +/* 8018C05C 00188FBC 38 00 00 00 */ li r0, 0 +/* 8018C060 00188FC0 B0 78 06 74 */ sth r3, 0x674(r24) +/* 8018C064 00188FC4 38 78 05 AC */ addi r3, r24, 0x5ac +/* 8018C068 00188FC8 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 8018C06C 00188FCC B0 98 06 76 */ sth r4, 0x676(r24) +/* 8018C070 00188FD0 98 18 06 78 */ stb r0, 0x678(r24) +/* 8018C074 00188FD4 48 1B 4D 11 */ bl Lock__6CTokenFv +/* 8018C078 00188FD8 38 78 05 74 */ addi r3, r24, 0x574 +/* 8018C07C 00188FDC 38 80 00 01 */ li r4, 1 +/* 8018C080 00188FE0 4B FE 91 A5 */ bl SetActive__13CBoneTrackingFb +/* 8018C084 00188FE4 7F 03 C3 78 */ mr r3, r24 +/* 8018C088 00188FE8 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 8018C08C 00188FEC CB E1 00 60 */ lfd f31, 0x60(r1) +/* 8018C090 00188FF0 BB 01 00 40 */ lmw r24, 0x40(r1) +/* 8018C094 00188FF4 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8018C098 00188FF8 7C 08 03 A6 */ mtlr r0 +/* 8018C09C 00188FFC 38 21 00 70 */ addi r1, r1, 0x70 +/* 8018C0A0 00189000 4E 80 00 20 */ blr + +.global GetNextAttackTime__13CNewIntroBossCFR13CStateManager +GetNextAttackTime__13CNewIntroBossCFR13CStateManager: +/* 8018C0A4 00189004 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8018C0A8 00189008 7C 08 02 A6 */ mflr r0 +/* 8018C0AC 0018900C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8018C0B0 00189010 DB E1 00 10 */ stfd f31, 0x10(r1) +/* 8018C0B4 00189014 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 +/* 8018C0B8 00189018 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8018C0BC 0018901C 93 C1 00 08 */ stw r30, 8(r1) +/* 8018C0C0 00189020 7C 9F 23 78 */ mr r31, r4 +/* 8018C0C4 00189024 7C 7E 1B 78 */ mr r30, r3 +/* 8018C0C8 00189028 80 64 09 00 */ lwz r3, 0x900(r4) +/* 8018C0CC 0018902C 48 18 64 11 */ bl Float__9CRandom16Fv +/* 8018C0D0 00189030 7F C3 F3 78 */ mr r3, r30 +/* 8018C0D4 00189034 C0 42 A3 B4 */ lfs f2, lbl_805AC0D4@sda21(r2) +/* 8018C0D8 00189038 81 9E 00 00 */ lwz r12, 0(r30) +/* 8018C0DC 0018903C 7F E4 FB 78 */ mr r4, r31 +/* 8018C0E0 00189040 C0 02 A3 E4 */ lfs f0, lbl_805AC104@sda21(r2) +/* 8018C0E4 00189044 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8018C0E8 00189048 EF E2 00 7A */ fmadds f31, f2, f1, f0 +/* 8018C0EC 0018904C 7D 89 03 A6 */ mtctr r12 +/* 8018C0F0 00189050 4E 80 04 21 */ bctrl +/* 8018C0F4 00189054 C0 02 A3 E8 */ lfs f0, lbl_805AC108@sda21(r2) +/* 8018C0F8 00189058 C0 3E 06 40 */ lfs f1, 0x640(r30) +/* 8018C0FC 0018905C C0 43 00 00 */ lfs f2, 0(r3) +/* 8018C100 00189060 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8018C104 00189064 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8018C108 00189068 40 81 00 0C */ ble lbl_8018C114 +/* 8018C10C 0018906C FC 20 F8 90 */ fmr f1, f31 +/* 8018C110 00189070 48 00 00 28 */ b lbl_8018C138 +lbl_8018C114: +/* 8018C114 00189074 C0 02 A3 F4 */ lfs f0, lbl_805AC114@sda21(r2) +/* 8018C118 00189078 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8018C11C 0018907C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8018C120 00189080 40 81 00 10 */ ble lbl_8018C130 +/* 8018C124 00189084 C0 02 A3 EC */ lfs f0, lbl_805AC10C@sda21(r2) +/* 8018C128 00189088 EC 20 FF FC */ fnmsubs f1, f0, f31, f31 +/* 8018C12C 0018908C 48 00 00 0C */ b lbl_8018C138 +lbl_8018C130: +/* 8018C130 00189090 C0 02 A3 F0 */ lfs f0, lbl_805AC110@sda21(r2) +/* 8018C134 00189094 EC 20 FF FC */ fnmsubs f1, f0, f31, f31 +lbl_8018C138: +/* 8018C138 00189098 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 +/* 8018C13C 0018909C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8018C140 001890A0 CB E1 00 10 */ lfd f31, 0x10(r1) +/* 8018C144 001890A4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8018C148 001890A8 83 C1 00 08 */ lwz r30, 8(r1) +/* 8018C14C 001890AC 7C 08 03 A6 */ mtlr r0 +/* 8018C150 001890B0 38 21 00 20 */ addi r1, r1, 0x20 +/* 8018C154 001890B4 4E 80 00 20 */ blr + +.global GetGenerateForHealth__13CNewIntroBossCFRC13CStateManager +GetGenerateForHealth__13CNewIntroBossCFRC13CStateManager: +/* 8018C158 001890B8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018C15C 001890BC 7C 08 02 A6 */ mflr r0 +/* 8018C160 001890C0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018C164 001890C4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8018C168 001890C8 7C 7F 1B 78 */ mr r31, r3 +/* 8018C16C 001890CC 81 83 00 00 */ lwz r12, 0(r3) +/* 8018C170 001890D0 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8018C174 001890D4 7D 89 03 A6 */ mtctr r12 +/* 8018C178 001890D8 4E 80 04 21 */ bctrl +/* 8018C17C 001890DC C0 22 A3 F4 */ lfs f1, lbl_805AC114@sda21(r2) +/* 8018C180 001890E0 C0 1F 06 40 */ lfs f0, 0x640(r31) +/* 8018C184 001890E4 C0 43 00 00 */ lfs f2, 0(r3) +/* 8018C188 001890E8 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8018C18C 001890EC FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8018C190 001890F0 40 81 00 0C */ ble lbl_8018C19C +/* 8018C194 001890F4 38 60 00 03 */ li r3, 3 +/* 8018C198 001890F8 48 00 00 08 */ b lbl_8018C1A0 +lbl_8018C19C: +/* 8018C19C 001890FC 38 60 00 04 */ li r3, 4 +lbl_8018C1A0: +/* 8018C1A0 00189100 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018C1A4 00189104 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8018C1A8 00189108 7C 08 03 A6 */ mtlr r0 +/* 8018C1AC 0018910C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018C1B0 00189110 4E 80 00 20 */ blr + +.global GetLocoForHealth__13CNewIntroBossCFRC13CStateManager +GetLocoForHealth__13CNewIntroBossCFRC13CStateManager: +/* 8018C1B4 00189114 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018C1B8 00189118 7C 08 02 A6 */ mflr r0 +/* 8018C1BC 0018911C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018C1C0 00189120 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8018C1C4 00189124 7C 7F 1B 78 */ mr r31, r3 +/* 8018C1C8 00189128 81 83 00 00 */ lwz r12, 0(r3) +/* 8018C1CC 0018912C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8018C1D0 00189130 7D 89 03 A6 */ mtctr r12 +/* 8018C1D4 00189134 4E 80 04 21 */ bctrl +/* 8018C1D8 00189138 C0 02 A3 E8 */ lfs f0, lbl_805AC108@sda21(r2) +/* 8018C1DC 0018913C C0 3F 06 40 */ lfs f1, 0x640(r31) +/* 8018C1E0 00189140 C0 43 00 00 */ lfs f2, 0(r3) +/* 8018C1E4 00189144 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8018C1E8 00189148 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8018C1EC 0018914C 40 81 00 0C */ ble lbl_8018C1F8 +/* 8018C1F0 00189150 38 60 00 01 */ li r3, 1 +/* 8018C1F4 00189154 48 00 00 20 */ b lbl_8018C214 +lbl_8018C1F8: +/* 8018C1F8 00189158 C0 02 A3 F4 */ lfs f0, lbl_805AC114@sda21(r2) +/* 8018C1FC 0018915C EC 00 00 72 */ fmuls f0, f0, f1 +/* 8018C200 00189160 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8018C204 00189164 40 81 00 0C */ ble lbl_8018C210 +/* 8018C208 00189168 38 60 00 02 */ li r3, 2 +/* 8018C20C 0018916C 48 00 00 08 */ b lbl_8018C214 +lbl_8018C210: +/* 8018C210 00189170 38 60 00 03 */ li r3, 3 +lbl_8018C214: +/* 8018C214 00189174 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018C218 00189178 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8018C21C 0018917C 7C 08 03 A6 */ mtlr r0 +/* 8018C220 00189180 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018C224 00189184 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CParasite.s b/asm/Kyoto_CWD/Enemies/CParasite.s new file mode 100644 index 00000000..a307996e --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CParasite.s @@ -0,0 +1,4757 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__9CParasiteFv +__dt__9CParasiteFv: +/* 80156980 001538E0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80156984 001538E4 7C 08 02 A6 */ mflr r0 +/* 80156988 001538E8 90 01 00 34 */ stw r0, 0x34(r1) +/* 8015698C 001538EC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80156990 001538F0 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80156994 001538F4 7C 9E 23 78 */ mr r30, r4 +/* 80156998 001538F8 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8015699C 001538FC 7C 7D 1B 79 */ or. r29, r3, r3 +/* 801569A0 00153900 41 82 00 B4 */ beq lbl_80156A54 +/* 801569A4 00153904 3C 60 80 3E */ lis r3, lbl_803E3004@ha +/* 801569A8 00153908 34 1D 06 24 */ addic. r0, r29, 0x624 +/* 801569AC 0015390C 38 03 30 04 */ addi r0, r3, lbl_803E3004@l +/* 801569B0 00153910 90 1D 00 00 */ stw r0, 0(r29) +/* 801569B4 00153914 41 82 00 28 */ beq lbl_801569DC +/* 801569B8 00153918 83 FD 06 24 */ lwz r31, 0x624(r29) +/* 801569BC 0015391C 28 1F 00 00 */ cmplwi r31, 0 +/* 801569C0 00153920 41 82 00 1C */ beq lbl_801569DC +/* 801569C4 00153924 41 82 00 10 */ beq lbl_801569D4 +/* 801569C8 00153928 7F E3 FB 78 */ mr r3, r31 +/* 801569CC 0015392C 38 80 00 00 */ li r4, 0 +/* 801569D0 00153930 48 1E A4 71 */ bl __dt__6CTokenFv +lbl_801569D4: +/* 801569D4 00153934 7F E3 FB 78 */ mr r3, r31 +/* 801569D8 00153938 48 1B EF 59 */ bl Free__7CMemoryFPCv +lbl_801569DC: +/* 801569DC 0015393C 34 1D 06 20 */ addic. r0, r29, 0x620 +/* 801569E0 00153940 41 82 00 10 */ beq lbl_801569F0 +/* 801569E4 00153944 80 7D 06 20 */ lwz r3, 0x620(r29) +/* 801569E8 00153948 38 80 00 01 */ li r4, 1 +/* 801569EC 0015394C 48 05 0E F1 */ bl sub_801a78dc +lbl_801569F0: +/* 801569F0 00153950 34 1D 05 D8 */ addic. r0, r29, 0x5d8 +/* 801569F4 00153954 41 82 00 44 */ beq lbl_80156A38 +/* 801569F8 00153958 80 1D 05 DC */ lwz r0, 0x5dc(r29) +/* 801569FC 0015395C 80 7D 05 E4 */ lwz r3, 0x5e4(r29) +/* 80156A00 00153960 54 00 20 36 */ slwi r0, r0, 4 +/* 80156A04 00153964 7C 03 02 14 */ add r0, r3, r0 +/* 80156A08 00153968 90 61 00 0C */ stw r3, 0xc(r1) +/* 80156A0C 0015396C 7C 64 1B 78 */ mr r4, r3 +/* 80156A10 00153970 90 01 00 14 */ stw r0, 0x14(r1) +/* 80156A14 00153974 90 01 00 10 */ stw r0, 0x10(r1) +/* 80156A18 00153978 90 61 00 08 */ stw r3, 8(r1) +/* 80156A1C 0015397C 48 00 00 08 */ b lbl_80156A24 +lbl_80156A20: +/* 80156A20 00153980 38 84 00 10 */ addi r4, r4, 0x10 +lbl_80156A24: +/* 80156A24 00153984 7C 04 00 40 */ cmplw r4, r0 +/* 80156A28 00153988 40 82 FF F8 */ bne lbl_80156A20 +/* 80156A2C 0015398C 28 03 00 00 */ cmplwi r3, 0 +/* 80156A30 00153990 41 82 00 08 */ beq lbl_80156A38 +/* 80156A34 00153994 48 1B EE FD */ bl Free__7CMemoryFPCv +lbl_80156A38: +/* 80156A38 00153998 7F A3 EB 78 */ mr r3, r29 +/* 80156A3C 0015399C 38 80 00 00 */ li r4, 0 +/* 80156A40 001539A0 48 00 00 35 */ bl __dt__11CWallWalkerFv +/* 80156A44 001539A4 7F C0 07 35 */ extsh. r0, r30 +/* 80156A48 001539A8 40 81 00 0C */ ble lbl_80156A54 +/* 80156A4C 001539AC 7F A3 EB 78 */ mr r3, r29 +/* 80156A50 001539B0 48 1B EE E1 */ bl Free__7CMemoryFPCv +lbl_80156A54: +/* 80156A54 001539B4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80156A58 001539B8 7F A3 EB 78 */ mr r3, r29 +/* 80156A5C 001539BC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80156A60 001539C0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80156A64 001539C4 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80156A68 001539C8 7C 08 03 A6 */ mtlr r0 +/* 80156A6C 001539CC 38 21 00 30 */ addi r1, r1, 0x30 +/* 80156A70 001539D0 4E 80 00 20 */ blr + +.global __dt__11CWallWalkerFv +__dt__11CWallWalkerFv: +/* 80156A74 001539D4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80156A78 001539D8 7C 08 02 A6 */ mflr r0 +/* 80156A7C 001539DC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80156A80 001539E0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80156A84 001539E4 7C 9F 23 78 */ mr r31, r4 +/* 80156A88 001539E8 93 C1 00 08 */ stw r30, 8(r1) +/* 80156A8C 001539EC 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80156A90 001539F0 41 82 00 54 */ beq lbl_80156AE4 +/* 80156A94 001539F4 3C 60 80 3F */ lis r3, lbl_803EA0F0@ha +/* 80156A98 001539F8 34 1E 05 90 */ addic. r0, r30, 0x590 +/* 80156A9C 001539FC 38 03 A0 F0 */ addi r0, r3, lbl_803EA0F0@l +/* 80156AA0 00153A00 90 1E 00 00 */ stw r0, 0(r30) +/* 80156AA4 00153A04 41 82 00 24 */ beq lbl_80156AC8 +/* 80156AA8 00153A08 3C 60 80 3F */ lis r3, lbl_803ECAF8@ha +/* 80156AAC 00153A0C 34 1E 05 90 */ addic. r0, r30, 0x590 +/* 80156AB0 00153A10 38 03 CA F8 */ addi r0, r3, lbl_803ECAF8@l +/* 80156AB4 00153A14 90 1E 05 90 */ stw r0, 0x590(r30) +/* 80156AB8 00153A18 41 82 00 10 */ beq lbl_80156AC8 +/* 80156ABC 00153A1C 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 80156AC0 00153A20 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l +/* 80156AC4 00153A24 90 1E 05 90 */ stw r0, 0x590(r30) +lbl_80156AC8: +/* 80156AC8 00153A28 7F C3 F3 78 */ mr r3, r30 +/* 80156ACC 00153A2C 38 80 00 00 */ li r4, 0 +/* 80156AD0 00153A30 4B F2 0A A1 */ bl __dt__10CPatternedFv +/* 80156AD4 00153A34 7F E0 07 35 */ extsh. r0, r31 +/* 80156AD8 00153A38 40 81 00 0C */ ble lbl_80156AE4 +/* 80156ADC 00153A3C 7F C3 F3 78 */ mr r3, r30 +/* 80156AE0 00153A40 48 1B EE 51 */ bl Free__7CMemoryFPCv +lbl_80156AE4: +/* 80156AE4 00153A44 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80156AE8 00153A48 7F C3 F3 78 */ mr r3, r30 +/* 80156AEC 00153A4C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80156AF0 00153A50 83 C1 00 08 */ lwz r30, 8(r1) +/* 80156AF4 00153A54 7C 08 03 A6 */ mtlr r0 +/* 80156AF8 00153A58 38 21 00 10 */ addi r1, r1, 0x10 +/* 80156AFC 00153A5C 4E 80 00 20 */ blr + +.global IsOnGround__9CParasiteCFv +IsOnGround__9CParasiteCFv: +/* 80156B00 00153A60 88 03 07 42 */ lbz r0, 0x742(r3) +/* 80156B04 00153A64 54 03 EF FE */ rlwinm r3, r0, 0x1d, 0x1f, 0x1f +/* 80156B08 00153A68 4E 80 00 20 */ blr + +.global MassiveFrozenDeath__9CParasiteFR13CStateManager +MassiveFrozenDeath__9CParasiteFR13CStateManager: +/* 80156B0C 00153A6C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80156B10 00153A70 7C 08 02 A6 */ mflr r0 +/* 80156B14 00153A74 90 01 00 14 */ stw r0, 0x14(r1) +/* 80156B18 00153A78 4B F2 40 1D */ bl MassiveFrozenDeath__10CPatternedFR13CStateManager +/* 80156B1C 00153A7C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80156B20 00153A80 7C 08 03 A6 */ mtlr r0 +/* 80156B24 00153A84 38 21 00 10 */ addi r1, r1, 0x10 +/* 80156B28 00153A88 4E 80 00 20 */ blr + +.global MassiveDeath__9CParasiteFR13CStateManager +MassiveDeath__9CParasiteFR13CStateManager: +/* 80156B2C 00153A8C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80156B30 00153A90 7C 08 02 A6 */ mflr r0 +/* 80156B34 00153A94 90 01 00 14 */ stw r0, 0x14(r1) +/* 80156B38 00153A98 4B F2 41 B1 */ bl MassiveDeath__10CPatternedFR13CStateManager +/* 80156B3C 00153A9C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80156B40 00153AA0 7C 08 03 A6 */ mtlr r0 +/* 80156B44 00153AA4 38 21 00 10 */ addi r1, r1, 0x10 +/* 80156B48 00153AA8 4E 80 00 20 */ blr + +.global UpdateCollisionActors__9CParasiteFR13CStateManager +UpdateCollisionActors__9CParasiteFR13CStateManager: +/* 80156B4C 00153AAC 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80156B50 00153AB0 7C 08 02 A6 */ mflr r0 +/* 80156B54 00153AB4 90 01 00 44 */ stw r0, 0x44(r1) +/* 80156B58 00153AB8 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 80156B5C 00153ABC F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 80156B60 00153AC0 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80156B64 00153AC4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80156B68 00153AC8 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80156B6C 00153ACC 7C 7D 1B 78 */ mr r29, r3 +/* 80156B70 00153AD0 7C 9E 23 78 */ mr r30, r4 +/* 80156B74 00153AD4 80 63 06 20 */ lwz r3, 0x620(r3) +/* 80156B78 00153AD8 38 A0 00 00 */ li r5, 0 +/* 80156B7C 00153ADC 48 05 08 D5 */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions +/* 80156B80 00153AE0 88 1D 07 43 */ lbz r0, 0x743(r29) +/* 80156B84 00153AE4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80156B88 00153AE8 40 82 00 D8 */ bne lbl_80156C60 +/* 80156B8C 00153AEC C3 E2 9E 50 */ lfs f31, lbl_805ABB70@sda21(r2) +/* 80156B90 00153AF0 3B E0 00 00 */ li r31, 0 +/* 80156B94 00153AF4 48 00 00 60 */ b lbl_80156BF4 +lbl_80156B98: +/* 80156B98 00153AF8 80 7D 06 20 */ lwz r3, 0x620(r29) +/* 80156B9C 00153AFC 7F E4 FB 78 */ mr r4, r31 +/* 80156BA0 00153B00 48 05 06 99 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 80156BA4 00153B04 A0 03 00 3C */ lhz r0, 0x3c(r3) +/* 80156BA8 00153B08 7F C3 F3 78 */ mr r3, r30 +/* 80156BAC 00153B0C 38 81 00 08 */ addi r4, r1, 8 +/* 80156BB0 00153B10 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80156BB4 00153B14 B0 01 00 08 */ sth r0, 8(r1) +/* 80156BB8 00153B18 4B EF 59 BD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80156BBC 00153B1C 7C 64 1B 78 */ mr r4, r3 +/* 80156BC0 00153B20 38 61 00 10 */ addi r3, r1, 0x10 +/* 80156BC4 00153B24 4B F5 87 89 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 80156BC8 00153B28 80 63 00 04 */ lwz r3, 4(r3) +/* 80156BCC 00153B2C 28 03 00 00 */ cmplwi r3, 0 +/* 80156BD0 00153B30 41 82 00 20 */ beq lbl_80156BF0 +/* 80156BD4 00153B34 81 83 00 00 */ lwz r12, 0(r3) +/* 80156BD8 00153B38 7F C4 F3 78 */ mr r4, r30 +/* 80156BDC 00153B3C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80156BE0 00153B40 7D 89 03 A6 */ mtctr r12 +/* 80156BE4 00153B44 4E 80 04 21 */ bctrl +/* 80156BE8 00153B48 C0 03 00 00 */ lfs f0, 0(r3) +/* 80156BEC 00153B4C EF FF 00 2A */ fadds f31, f31, f0 +lbl_80156BF0: +/* 80156BF0 00153B50 3B FF 00 01 */ addi r31, r31, 1 +lbl_80156BF4: +/* 80156BF4 00153B54 80 7D 06 20 */ lwz r3, 0x620(r29) +/* 80156BF8 00153B58 48 05 06 51 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 80156BFC 00153B5C 7C 1F 18 40 */ cmplw r31, r3 +/* 80156C00 00153B60 41 80 FF 98 */ blt lbl_80156B98 +/* 80156C04 00153B64 C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) +/* 80156C08 00153B68 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 80156C0C 00153B6C 4C 40 13 82 */ cror 2, 0, 2 +/* 80156C10 00153B70 40 82 00 50 */ bne lbl_80156C60 +/* 80156C14 00153B74 88 1D 07 43 */ lbz r0, 0x743(r29) +/* 80156C18 00153B78 38 60 00 01 */ li r3, 1 +/* 80156C1C 00153B7C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80156C20 00153B80 7F A3 EB 78 */ mr r3, r29 +/* 80156C24 00153B84 98 1D 07 43 */ stb r0, 0x743(r29) +/* 80156C28 00153B88 7F C5 F3 78 */ mr r5, r30 +/* 80156C2C 00153B8C 38 80 00 13 */ li r4, 0x13 +/* 80156C30 00153B90 4B EF D7 21 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 80156C34 00153B94 7F A3 EB 78 */ mr r3, r29 +/* 80156C38 00153B98 7F C5 F3 78 */ mr r5, r30 +/* 80156C3C 00153B9C 38 80 00 12 */ li r4, 0x12 +/* 80156C40 00153BA0 4B EF D3 41 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 80156C44 00153BA4 7F A3 EB 78 */ mr r3, r29 +/* 80156C48 00153BA8 7F C4 F3 78 */ mr r4, r30 +/* 80156C4C 00153BAC 48 00 00 F9 */ bl DestroyActorManager__9CParasiteFR13CStateManager +/* 80156C50 00153BB0 80 7D 00 64 */ lwz r3, 0x64(r29) +/* 80156C54 00153BB4 80 9D 06 24 */ lwz r4, 0x624(r29) +/* 80156C58 00153BB8 80 63 00 10 */ lwz r3, 0x10(r3) +/* 80156C5C 00153BBC 4B ED 74 41 */ bl "SubstituteModelData__9CAnimDataFRC29TCachedToken<13CSkinnedModel>" +lbl_80156C60: +/* 80156C60 00153BC0 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 80156C64 00153BC4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80156C68 00153BC8 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 80156C6C 00153BCC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80156C70 00153BD0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80156C74 00153BD4 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80156C78 00153BD8 7C 08 03 A6 */ mtlr r0 +/* 80156C7C 00153BDC 38 21 00 40 */ addi r1, r1, 0x40 +/* 80156C80 00153BE0 4E 80 00 20 */ blr + +.global SetupIceZoomerVulnerability__9CParasiteFR13CStateManagerRC20CDamageVulnerabilityRC11CHealthInfo +SetupIceZoomerVulnerability__9CParasiteFR13CStateManagerRC20CDamageVulnerabilityRC11CHealthInfo: +/* 80156C84 00153BE4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80156C88 00153BE8 7C 08 02 A6 */ mflr r0 +/* 80156C8C 00153BEC 90 01 00 34 */ stw r0, 0x34(r1) +/* 80156C90 00153BF0 BF 41 00 18 */ stmw r26, 0x18(r1) +/* 80156C94 00153BF4 7C 7A 1B 78 */ mr r26, r3 +/* 80156C98 00153BF8 7C 9B 23 78 */ mr r27, r4 +/* 80156C9C 00153BFC 7C BC 2B 78 */ mr r28, r5 +/* 80156CA0 00153C00 7C DD 33 78 */ mr r29, r6 +/* 80156CA4 00153C04 3B E0 00 00 */ li r31, 0 +/* 80156CA8 00153C08 48 00 00 78 */ b lbl_80156D20 +lbl_80156CAC: +/* 80156CAC 00153C0C 80 7A 06 20 */ lwz r3, 0x620(r26) +/* 80156CB0 00153C10 7F E4 FB 78 */ mr r4, r31 +/* 80156CB4 00153C14 48 05 05 85 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi +/* 80156CB8 00153C18 A0 03 00 3C */ lhz r0, 0x3c(r3) +/* 80156CBC 00153C1C 7F 63 DB 78 */ mr r3, r27 +/* 80156CC0 00153C20 38 81 00 08 */ addi r4, r1, 8 +/* 80156CC4 00153C24 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80156CC8 00153C28 B0 01 00 08 */ sth r0, 8(r1) +/* 80156CCC 00153C2C 4B EF 58 A9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80156CD0 00153C30 7C 64 1B 78 */ mr r4, r3 +/* 80156CD4 00153C34 38 61 00 10 */ addi r3, r1, 0x10 +/* 80156CD8 00153C38 4B F5 86 75 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 80156CDC 00153C3C 83 C3 00 04 */ lwz r30, 4(r3) +/* 80156CE0 00153C40 28 1E 00 00 */ cmplwi r30, 0 +/* 80156CE4 00153C44 41 82 00 38 */ beq lbl_80156D1C +/* 80156CE8 00153C48 7F C3 F3 78 */ mr r3, r30 +/* 80156CEC 00153C4C 7F 84 E3 78 */ mr r4, r28 +/* 80156CF0 00153C50 48 05 1E A9 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability +/* 80156CF4 00153C54 7F C3 F3 78 */ mr r3, r30 +/* 80156CF8 00153C58 7F 64 DB 78 */ mr r4, r27 +/* 80156CFC 00153C5C 81 9E 00 00 */ lwz r12, 0(r30) +/* 80156D00 00153C60 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80156D04 00153C64 7D 89 03 A6 */ mtctr r12 +/* 80156D08 00153C68 4E 80 04 21 */ bctrl +/* 80156D0C 00153C6C C0 1D 00 00 */ lfs f0, 0(r29) +/* 80156D10 00153C70 D0 03 00 00 */ stfs f0, 0(r3) +/* 80156D14 00153C74 C0 1D 00 04 */ lfs f0, 4(r29) +/* 80156D18 00153C78 D0 03 00 04 */ stfs f0, 4(r3) +lbl_80156D1C: +/* 80156D1C 00153C7C 3B FF 00 01 */ addi r31, r31, 1 +lbl_80156D20: +/* 80156D20 00153C80 80 7A 06 20 */ lwz r3, 0x620(r26) +/* 80156D24 00153C84 48 05 05 25 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv +/* 80156D28 00153C88 7C 1F 18 40 */ cmplw r31, r3 +/* 80156D2C 00153C8C 41 80 FF 80 */ blt lbl_80156CAC +/* 80156D30 00153C90 BB 41 00 18 */ lmw r26, 0x18(r1) +/* 80156D34 00153C94 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80156D38 00153C98 7C 08 03 A6 */ mtlr r0 +/* 80156D3C 00153C9C 38 21 00 30 */ addi r1, r1, 0x30 +/* 80156D40 00153CA0 4E 80 00 20 */ blr + +.global DestroyActorManager__9CParasiteFR13CStateManager +DestroyActorManager__9CParasiteFR13CStateManager: +/* 80156D44 00153CA4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80156D48 00153CA8 7C 08 02 A6 */ mflr r0 +/* 80156D4C 00153CAC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80156D50 00153CB0 80 63 06 20 */ lwz r3, 0x620(r3) +/* 80156D54 00153CB4 48 05 06 71 */ bl Destroy__22CCollisionActorManagerCFR13CStateManager +/* 80156D58 00153CB8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80156D5C 00153CBC 7C 08 03 A6 */ mtlr r0 +/* 80156D60 00153CC0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80156D64 00153CC4 4E 80 00 20 */ blr + +.global SetupIceZoomerCollision__9CParasiteFR13CStateManager +SetupIceZoomerCollision__9CParasiteFR13CStateManager: +/* 80156D68 00153CC8 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 80156D6C 00153CCC 7C 08 02 A6 */ mflr r0 +/* 80156D70 00153CD0 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 80156D74 00153CD4 38 00 00 00 */ li r0, 0 +/* 80156D78 00153CD8 BF 41 00 D8 */ stmw r26, 0xd8(r1) +/* 80156D7C 00153CDC 7C 7E 1B 78 */ mr r30, r3 +/* 80156D80 00153CE0 7C 9F 23 78 */ mr r31, r4 +/* 80156D84 00153CE4 38 61 00 40 */ addi r3, r1, 0x40 +/* 80156D88 00153CE8 38 80 00 02 */ li r4, 2 +/* 80156D8C 00153CEC 90 01 00 44 */ stw r0, 0x44(r1) +/* 80156D90 00153CF0 90 01 00 48 */ stw r0, 0x48(r1) +/* 80156D94 00153CF4 90 01 00 4C */ stw r0, 0x4c(r1) +/* 80156D98 00153CF8 4B FF FA 21 */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" +/* 80156D9C 00153CFC 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 80156DA0 00153D00 3B 82 9E 48 */ addi r28, r2, lbl_805ABB68@sda21 +/* 80156DA4 00153D04 80 82 9E 48 */ lwz r4, lbl_805ABB68@sda21(r2) +/* 80156DA8 00153D08 3B 61 00 7C */ addi r27, r1, 0x7c +/* 80156DAC 00153D0C 83 A3 00 10 */ lwz r29, 0x10(r3) +/* 80156DB0 00153D10 3B 41 00 C0 */ addi r26, r1, 0xc0 +/* 80156DB4 00153D14 38 61 00 30 */ addi r3, r1, 0x30 +/* 80156DB8 00153D18 4B EA DF 01 */ bl string_l__4rstlFPCc +/* 80156DBC 00153D1C 80 9C 00 00 */ lwz r4, 0(r28) +/* 80156DC0 00153D20 38 61 00 20 */ addi r3, r1, 0x20 +/* 80156DC4 00153D24 4B EA DE F5 */ bl string_l__4rstlFPCc +/* 80156DC8 00153D28 7F A4 EB 78 */ mr r4, r29 +/* 80156DCC 00153D2C 38 61 00 08 */ addi r3, r1, 8 +/* 80156DD0 00153D30 38 A1 00 30 */ addi r5, r1, 0x30 +/* 80156DD4 00153D34 4B ED 7A 65 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80156DD8 00153D38 88 01 00 08 */ lbz r0, 8(r1) +/* 80156DDC 00153D3C 38 61 00 50 */ addi r3, r1, 0x50 +/* 80156DE0 00153D40 C0 42 9E 54 */ lfs f2, lbl_805ABB74@sda21(r2) +/* 80156DE4 00153D44 38 81 00 0C */ addi r4, r1, 0xc +/* 80156DE8 00153D48 98 01 00 0C */ stb r0, 0xc(r1) +/* 80156DEC 00153D4C 38 A1 00 20 */ addi r5, r1, 0x20 +/* 80156DF0 00153D50 C0 3C 00 04 */ lfs f1, 4(r28) +/* 80156DF4 00153D54 48 05 1A 19 */ bl "SphereCollision__26CJointCollisionDescriptionF6CSegIdfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +/* 80156DF8 00153D58 80 E1 00 50 */ lwz r7, 0x50(r1) +/* 80156DFC 00153D5C 7F 43 D3 78 */ mr r3, r26 +/* 80156E00 00153D60 80 C1 00 54 */ lwz r6, 0x54(r1) +/* 80156E04 00153D64 7F 64 DB 78 */ mr r4, r27 +/* 80156E08 00153D68 88 A1 00 58 */ lbz r5, 0x58(r1) +/* 80156E0C 00153D6C 88 01 00 59 */ lbz r0, 0x59(r1) +/* 80156E10 00153D70 C0 E1 00 5C */ lfs f7, 0x5c(r1) +/* 80156E14 00153D74 C0 C1 00 60 */ lfs f6, 0x60(r1) +/* 80156E18 00153D78 C0 A1 00 64 */ lfs f5, 0x64(r1) +/* 80156E1C 00153D7C C0 81 00 68 */ lfs f4, 0x68(r1) +/* 80156E20 00153D80 C0 61 00 6C */ lfs f3, 0x6c(r1) +/* 80156E24 00153D84 C0 41 00 70 */ lfs f2, 0x70(r1) +/* 80156E28 00153D88 C0 21 00 74 */ lfs f1, 0x74(r1) +/* 80156E2C 00153D8C C0 01 00 78 */ lfs f0, 0x78(r1) +/* 80156E30 00153D90 90 E1 00 94 */ stw r7, 0x94(r1) +/* 80156E34 00153D94 90 C1 00 98 */ stw r6, 0x98(r1) +/* 80156E38 00153D98 98 A1 00 9C */ stb r5, 0x9c(r1) +/* 80156E3C 00153D9C 98 01 00 9D */ stb r0, 0x9d(r1) +/* 80156E40 00153DA0 D0 E1 00 A0 */ stfs f7, 0xa0(r1) +/* 80156E44 00153DA4 D0 C1 00 A4 */ stfs f6, 0xa4(r1) +/* 80156E48 00153DA8 D0 A1 00 A8 */ stfs f5, 0xa8(r1) +/* 80156E4C 00153DAC D0 81 00 AC */ stfs f4, 0xac(r1) +/* 80156E50 00153DB0 D0 61 00 B0 */ stfs f3, 0xb0(r1) +/* 80156E54 00153DB4 D0 41 00 B4 */ stfs f2, 0xb4(r1) +/* 80156E58 00153DB8 D0 21 00 B8 */ stfs f1, 0xb8(r1) +/* 80156E5C 00153DBC D0 01 00 BC */ stfs f0, 0xbc(r1) +/* 80156E60 00153DC0 48 1E 73 01 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80156E64 00153DC4 A0 01 00 8C */ lhz r0, 0x8c(r1) +/* 80156E68 00153DC8 28 1B 00 00 */ cmplwi r27, 0 +/* 80156E6C 00153DCC C0 01 00 90 */ lfs f0, 0x90(r1) +/* 80156E70 00153DD0 B0 01 00 D0 */ sth r0, 0xd0(r1) +/* 80156E74 00153DD4 D0 01 00 D4 */ stfs f0, 0xd4(r1) +/* 80156E78 00153DD8 41 82 00 0C */ beq lbl_80156E84 +/* 80156E7C 00153DDC 7F 63 DB 78 */ mr r3, r27 +/* 80156E80 00153DE0 48 1E 6C 61 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80156E84: +/* 80156E84 00153DE4 38 61 00 20 */ addi r3, r1, 0x20 +/* 80156E88 00153DE8 48 1E 6C 59 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80156E8C 00153DEC 38 61 00 30 */ addi r3, r1, 0x30 +/* 80156E90 00153DF0 48 1E 6C 51 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80156E94 00153DF4 38 61 00 40 */ addi r3, r1, 0x40 +/* 80156E98 00153DF8 38 81 00 94 */ addi r4, r1, 0x94 +/* 80156E9C 00153DFC 4B FF F3 95 */ bl sub_80156230 +/* 80156EA0 00153E00 28 1A 00 00 */ cmplwi r26, 0 +/* 80156EA4 00153E04 41 82 00 0C */ beq lbl_80156EB0 +/* 80156EA8 00153E08 7F 43 D3 78 */ mr r3, r26 +/* 80156EAC 00153E0C 48 1E 6C 35 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80156EB0: +/* 80156EB0 00153E10 7F C3 F3 78 */ mr r3, r30 +/* 80156EB4 00153E14 7F E5 FB 78 */ mr r5, r31 +/* 80156EB8 00153E18 38 80 00 13 */ li r4, 0x13 +/* 80156EBC 00153E1C 4B EF D0 C5 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 80156EC0 00153E20 7F C3 F3 78 */ mr r3, r30 +/* 80156EC4 00153E24 7F E5 FB 78 */ mr r5, r31 +/* 80156EC8 00153E28 38 80 00 12 */ li r4, 0x12 +/* 80156ECC 00153E2C 4B EF D4 85 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 80156ED0 00153E30 3C 80 80 3D */ lis r4, lbl_803D0330@ha +/* 80156ED4 00153E34 38 60 00 18 */ li r3, 0x18 +/* 80156ED8 00153E38 38 84 03 30 */ addi r4, r4, lbl_803D0330@l +/* 80156EDC 00153E3C 38 A0 00 00 */ li r5, 0 +/* 80156EE0 00153E40 38 84 00 09 */ addi r4, r4, 9 +/* 80156EE4 00153E44 48 1B E9 89 */ bl __nw__FUlPCcPCc +/* 80156EE8 00153E48 7C 7D 1B 79 */ or. r29, r3, r3 +/* 80156EEC 00153E4C 41 82 00 3C */ beq lbl_80156F28 +/* 80156EF0 00153E50 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 80156EF4 00153E54 7F E4 FB 78 */ mr r4, r31 +/* 80156EF8 00153E58 81 3E 00 04 */ lwz r9, 4(r30) +/* 80156EFC 00153E5C 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80156F00 00153E60 54 08 CF FE */ rlwinm r8, r0, 0x19, 0x1f, 0x1f +/* 80156F04 00153E64 38 C1 00 1C */ addi r6, r1, 0x1c +/* 80156F08 00153E68 91 21 00 1C */ stw r9, 0x1c(r1) +/* 80156F0C 00153E6C 38 E1 00 40 */ addi r7, r1, 0x40 +/* 80156F10 00153E70 A0 1E 00 08 */ lhz r0, 8(r30) +/* 80156F14 00153E74 91 21 00 18 */ stw r9, 0x18(r1) +/* 80156F18 00153E78 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80156F1C 00153E7C B0 01 00 14 */ sth r0, 0x14(r1) +/* 80156F20 00153E80 48 05 0A 11 */ bl "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b" +/* 80156F24 00153E84 7C 7D 1B 78 */ mr r29, r3 +lbl_80156F28: +/* 80156F28 00153E88 80 7E 06 20 */ lwz r3, 0x620(r30) +/* 80156F2C 00153E8C 38 80 00 01 */ li r4, 1 +/* 80156F30 00153E90 48 05 09 AD */ bl sub_801a78dc +/* 80156F34 00153E94 93 BE 06 20 */ stw r29, 0x620(r30) +/* 80156F38 00153E98 38 61 00 40 */ addi r3, r1, 0x40 +/* 80156F3C 00153E9C 38 80 FF FF */ li r4, -1 +/* 80156F40 00153EA0 4B FF F3 ED */ bl sub_8015632c +/* 80156F44 00153EA4 BB 41 00 D8 */ lmw r26, 0xd8(r1) +/* 80156F48 00153EA8 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 80156F4C 00153EAC 7C 08 03 A6 */ mtlr r0 +/* 80156F50 00153EB0 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 80156F54 00153EB4 4E 80 00 20 */ blr + +.global GetContactDamage__9CParasiteCFv +GetContactDamage__9CParasiteCFv: +/* 80156F58 00153EB8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80156F5C 00153EBC 7C 08 02 A6 */ mflr r0 +/* 80156F60 00153EC0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80156F64 00153EC4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80156F68 00153EC8 7C 7F 1B 78 */ mr r31, r3 +/* 80156F6C 00153ECC 80 04 05 D0 */ lwz r0, 0x5d0(r4) +/* 80156F70 00153ED0 2C 00 00 01 */ cmpwi r0, 1 +/* 80156F74 00153ED4 41 82 00 08 */ beq lbl_80156F7C +/* 80156F78 00153ED8 48 00 00 54 */ b lbl_80156FCC +lbl_80156F7C: +/* 80156F7C 00153EDC 88 04 07 43 */ lbz r0, 0x743(r4) +/* 80156F80 00153EE0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80156F84 00153EE4 41 82 00 40 */ beq lbl_80156FC4 +/* 80156F88 00153EE8 80 04 06 B4 */ lwz r0, 0x6b4(r4) +/* 80156F8C 00153EEC 90 1F 00 00 */ stw r0, 0(r31) +/* 80156F90 00153EF0 88 04 06 B8 */ lbz r0, 0x6b8(r4) +/* 80156F94 00153EF4 98 1F 00 04 */ stb r0, 4(r31) +/* 80156F98 00153EF8 C0 04 06 BC */ lfs f0, 0x6bc(r4) +/* 80156F9C 00153EFC D0 1F 00 08 */ stfs f0, 8(r31) +/* 80156FA0 00153F00 C0 04 06 C0 */ lfs f0, 0x6c0(r4) +/* 80156FA4 00153F04 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 80156FA8 00153F08 C0 04 06 C4 */ lfs f0, 0x6c4(r4) +/* 80156FAC 00153F0C D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 80156FB0 00153F10 C0 04 06 C8 */ lfs f0, 0x6c8(r4) +/* 80156FB4 00153F14 D0 1F 00 14 */ stfs f0, 0x14(r31) +/* 80156FB8 00153F18 88 04 06 CC */ lbz r0, 0x6cc(r4) +/* 80156FBC 00153F1C 98 1F 00 18 */ stb r0, 0x18(r31) +/* 80156FC0 00153F20 48 00 00 10 */ b lbl_80156FD0 +lbl_80156FC4: +/* 80156FC4 00153F24 4B F2 1A 01 */ bl GetContactDamage__10CPatternedCFv +/* 80156FC8 00153F28 48 00 00 08 */ b lbl_80156FD0 +lbl_80156FCC: +/* 80156FCC 00153F2C 4B F2 19 F9 */ bl GetContactDamage__10CPatternedCFv +lbl_80156FD0: +/* 80156FD0 00153F30 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80156FD4 00153F34 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80156FD8 00153F38 7C 08 03 A6 */ mtlr r0 +/* 80156FDC 00153F3C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80156FE0 00153F40 4E 80 00 20 */ blr + +.global GetDamageVulnerability__9CParasiteCFv +GetDamageVulnerability__9CParasiteCFv: +/* 80156FE4 00153F44 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80156FE8 00153F48 7C 08 02 A6 */ mflr r0 +/* 80156FEC 00153F4C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80156FF0 00153F50 80 03 05 D0 */ lwz r0, 0x5d0(r3) +/* 80156FF4 00153F54 2C 00 00 02 */ cmpwi r0, 2 +/* 80156FF8 00153F58 41 82 00 4C */ beq lbl_80157044 +/* 80156FFC 00153F5C 40 80 00 10 */ bge lbl_8015700C +/* 80157000 00153F60 2C 00 00 01 */ cmpwi r0, 1 +/* 80157004 00153F64 40 80 00 14 */ bge lbl_80157018 +/* 80157008 00153F68 48 00 00 3C */ b lbl_80157044 +lbl_8015700C: +/* 8015700C 00153F6C 2C 00 00 04 */ cmpwi r0, 4 +/* 80157010 00153F70 40 80 00 34 */ bge lbl_80157044 +/* 80157014 00153F74 48 00 00 18 */ b lbl_8015702C +lbl_80157018: +/* 80157018 00153F78 88 03 07 43 */ lbz r0, 0x743(r3) +/* 8015701C 00153F7C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80157020 00153F80 41 82 00 24 */ beq lbl_80157044 +/* 80157024 00153F84 38 63 06 4C */ addi r3, r3, 0x64c +/* 80157028 00153F88 48 00 00 20 */ b lbl_80157048 +lbl_8015702C: +/* 8015702C 00153F8C 88 03 07 43 */ lbz r0, 0x743(r3) +/* 80157030 00153F90 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80157034 00153F94 40 82 00 10 */ bne lbl_80157044 +/* 80157038 00153F98 3C 60 80 57 */ lis r3, lbl_8056D718@ha +/* 8015703C 00153F9C 38 63 D7 18 */ addi r3, r3, lbl_8056D718@l +/* 80157040 00153FA0 48 00 00 08 */ b lbl_80157048 +lbl_80157044: +/* 80157044 00153FA4 4B F4 BD 2D */ bl GetDamageVulnerability__3CAiCFv +lbl_80157048: +/* 80157048 00153FA8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8015704C 00153FAC 7C 08 03 A6 */ mtlr r0 +/* 80157050 00153FB0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80157054 00153FB4 4E 80 00 20 */ blr + +.global Render__9CParasiteCFRC13CStateManager +Render__9CParasiteCFRC13CStateManager: +/* 80157058 00153FB8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8015705C 00153FBC 7C 08 02 A6 */ mflr r0 +/* 80157060 00153FC0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80157064 00153FC4 48 11 16 69 */ bl Render__11CWallWalkerCFRC13CStateManager +/* 80157068 00153FC8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8015706C 00153FCC 7C 08 03 A6 */ mtlr r0 +/* 80157070 00153FD0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80157074 00153FD4 4E 80 00 20 */ blr + +.global DoFlockingBehavior__9CParasiteFR13CStateManager +DoFlockingBehavior__9CParasiteFR13CStateManager: +/* 80157078 00153FD8 94 21 ED 80 */ stwu r1, -0x1280(r1) +/* 8015707C 00153FDC 7C 08 02 A6 */ mflr r0 +/* 80157080 00153FE0 90 01 12 84 */ stw r0, 0x1284(r1) +/* 80157084 00153FE4 38 00 12 78 */ li r0, 0x1278 +/* 80157088 00153FE8 DB E1 12 70 */ stfd f31, 0x1270(r1) +/* 8015708C 00153FEC 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 +/* 80157090 00153FF0 BF 41 12 58 */ stmw r26, 0x1258(r1) +/* 80157094 00153FF4 7C 7A 1B 78 */ mr r26, r3 +/* 80157098 00153FF8 7C 9B 23 78 */ mr r27, r4 +/* 8015709C 00153FFC C0 43 00 5C */ lfs f2, 0x5c(r3) +/* 801570A0 00154000 38 00 00 00 */ li r0, 0 +/* 801570A4 00154004 C0 23 00 4C */ lfs f1, 0x4c(r3) +/* 801570A8 00154008 38 61 02 30 */ addi r3, r1, 0x230 +/* 801570AC 0015400C C0 1A 00 3C */ lfs f0, 0x3c(r26) +/* 801570B0 00154010 38 81 01 24 */ addi r4, r1, 0x124 +/* 801570B4 00154014 38 A1 01 18 */ addi r5, r1, 0x118 +/* 801570B8 00154018 D0 01 01 48 */ stfs f0, 0x148(r1) +/* 801570BC 0015401C D0 21 01 4C */ stfs f1, 0x14c(r1) +/* 801570C0 00154020 D0 41 01 50 */ stfs f2, 0x150(r1) +/* 801570C4 00154024 90 01 0A 4C */ stw r0, 0xa4c(r1) +/* 801570C8 00154028 C0 FA 06 E4 */ lfs f7, 0x6e4(r26) +/* 801570CC 0015402C C0 DA 00 60 */ lfs f6, 0x60(r26) +/* 801570D0 00154030 C0 BA 00 50 */ lfs f5, 0x50(r26) +/* 801570D4 00154034 C0 3A 00 40 */ lfs f1, 0x40(r26) +/* 801570D8 00154038 EC 06 38 2A */ fadds f0, f6, f7 +/* 801570DC 0015403C EC 65 38 2A */ fadds f3, f5, f7 +/* 801570E0 00154040 EC 81 38 2A */ fadds f4, f1, f7 +/* 801570E4 00154044 EC 41 38 28 */ fsubs f2, f1, f7 +/* 801570E8 00154048 D0 01 01 20 */ stfs f0, 0x120(r1) +/* 801570EC 0015404C EC 25 38 28 */ fsubs f1, f5, f7 +/* 801570F0 00154050 EC 06 38 28 */ fsubs f0, f6, f7 +/* 801570F4 00154054 D0 81 01 18 */ stfs f4, 0x118(r1) +/* 801570F8 00154058 D0 61 01 1C */ stfs f3, 0x11c(r1) +/* 801570FC 0015405C D0 41 01 24 */ stfs f2, 0x124(r1) +/* 80157100 00154060 D0 21 01 28 */ stfs f1, 0x128(r1) +/* 80157104 00154064 D0 01 01 2C */ stfs f0, 0x12c(r1) +/* 80157108 00154068 48 1E 14 01 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8015710C 0015406C 3C 60 2A AB */ lis r3, 0x2AAAAAAB@ha +/* 80157110 00154070 A8 9A 05 D4 */ lha r4, 0x5d4(r26) +/* 80157114 00154074 38 03 AA AB */ addi r0, r3, 0x2AAAAAAB@l +/* 80157118 00154078 7C 60 20 96 */ mulhw r3, r0, r4 +/* 8015711C 0015407C 54 60 0F FE */ srwi r0, r3, 0x1f +/* 80157120 00154080 7C 03 02 14 */ add r0, r3, r0 +/* 80157124 00154084 1C 00 00 06 */ mulli r0, r0, 6 +/* 80157128 00154088 7C 00 20 51 */ subf. r0, r0, r4 +/* 8015712C 0015408C 40 82 03 34 */ bne lbl_80157460 +/* 80157130 00154090 38 60 00 00 */ li r3, 0 +/* 80157134 00154094 3B C1 02 4C */ addi r30, r1, 0x24c +/* 80157138 00154098 2C 03 00 00 */ cmpwi r3, 0 +/* 8015713C 0015409C 90 61 02 48 */ stw r3, 0x248(r1) +/* 80157140 001540A0 7C 64 1B 78 */ mr r4, r3 +/* 80157144 001540A4 40 81 00 40 */ ble lbl_80157184 +/* 80157148 001540A8 2C 03 00 08 */ cmpwi r3, 8 +/* 8015714C 001540AC 38 A0 FF F8 */ li r5, -8 +/* 80157150 001540B0 40 81 00 20 */ ble lbl_80157170 +/* 80157154 001540B4 38 00 FF FF */ li r0, -1 +/* 80157158 001540B8 54 00 E8 FE */ srwi r0, r0, 3 +/* 8015715C 001540BC 7C 09 03 A6 */ mtctr r0 +/* 80157160 001540C0 2C 05 00 00 */ cmpwi r5, 0 +/* 80157164 001540C4 40 81 00 0C */ ble lbl_80157170 +lbl_80157168: +/* 80157168 001540C8 38 84 00 08 */ addi r4, r4, 8 +/* 8015716C 001540CC 42 00 FF FC */ bdnz lbl_80157168 +lbl_80157170: +/* 80157170 001540D0 7C 04 00 D0 */ neg r0, r4 +/* 80157174 001540D4 7C 09 03 A6 */ mtctr r0 +/* 80157178 001540D8 7C 04 18 00 */ cmpw r4, r3 +/* 8015717C 001540DC 40 80 00 08 */ bge lbl_80157184 +lbl_80157180: +/* 80157180 001540E0 42 00 00 00 */ bdnz lbl_80157180 +lbl_80157184: +/* 80157184 001540E4 88 0D A4 18 */ lbz r0, lbl_805A8FD8@sda21(r13) +/* 80157188 001540E8 38 60 00 00 */ li r3, 0 +/* 8015718C 001540EC 90 61 02 48 */ stw r3, 0x248(r1) +/* 80157190 001540F0 7C 00 07 75 */ extsb. r0, r0 +/* 80157194 001540F4 40 82 00 40 */ bne lbl_801571D4 +/* 80157198 001540F8 80 AD 8C A0 */ lwz r5, lbl_805A7860@sda21(r13) +/* 8015719C 001540FC 38 60 00 00 */ li r3, 0 +/* 801571A0 00154100 38 80 00 01 */ li r4, 1 +/* 801571A4 00154104 48 23 2D 51 */ bl __shl2i +/* 801571A8 00154108 3C A0 80 47 */ lis r5, lbl_8046C788@ha +/* 801571AC 0015410C 38 C0 00 01 */ li r6, 1 +/* 801571B0 00154110 38 A5 C7 88 */ addi r5, r5, lbl_8046C788@l +/* 801571B4 00154114 38 00 00 00 */ li r0, 0 +/* 801571B8 00154118 90 C1 02 28 */ stw r6, 0x228(r1) +/* 801571BC 0015411C 90 85 00 04 */ stw r4, 4(r5) +/* 801571C0 00154120 90 65 00 00 */ stw r3, 0(r5) +/* 801571C4 00154124 90 05 00 0C */ stw r0, 0xc(r5) +/* 801571C8 00154128 90 05 00 08 */ stw r0, 8(r5) +/* 801571CC 0015412C 90 C5 00 10 */ stw r6, 0x10(r5) +/* 801571D0 00154130 98 CD A4 18 */ stb r6, lbl_805A8FD8@sda21(r13) +lbl_801571D4: +/* 801571D4 00154134 C0 1A 06 E8 */ lfs f0, 0x6e8(r26) +/* 801571D8 00154138 3C 60 80 47 */ lis r3, lbl_8046C788@ha +/* 801571DC 0015413C 38 C3 C7 88 */ addi r6, r3, lbl_8046C788@l +/* 801571E0 00154140 C0 22 9E 58 */ lfs f1, lbl_805ABB78@sda21(r2) +/* 801571E4 00154144 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801571E8 00154148 7F 63 DB 78 */ mr r3, r27 +/* 801571EC 0015414C 38 81 02 48 */ addi r4, r1, 0x248 +/* 801571F0 00154150 38 A1 02 30 */ addi r5, r1, 0x230 +/* 801571F4 00154154 3B A0 00 00 */ li r29, 0 +/* 801571F8 00154158 38 E0 00 00 */ li r7, 0 +/* 801571FC 0015415C EF E1 00 2A */ fadds f31, f1, f0 +/* 80157200 00154160 4B EF 55 21 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 80157204 00154164 7F DC F3 78 */ mr r28, r30 +/* 80157208 00154168 3B E1 0A 50 */ addi r31, r1, 0xa50 +/* 8015720C 0015416C 48 00 00 D0 */ b lbl_801572DC +lbl_80157210: +/* 80157210 00154170 A0 1C 00 00 */ lhz r0, 0(r28) +/* 80157214 00154174 7F 63 DB 78 */ mr r3, r27 +/* 80157218 00154178 38 81 00 08 */ addi r4, r1, 8 +/* 8015721C 0015417C B0 01 00 08 */ sth r0, 8(r1) +/* 80157220 00154180 4B EF 53 55 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80157224 00154184 7C 64 1B 78 */ mr r4, r3 +/* 80157228 00154188 38 61 00 0C */ addi r3, r1, 0xc +/* 8015722C 0015418C 4B F4 E2 0D */ bl sub_800a5438 +/* 80157230 00154190 4B F4 E1 DD */ bl "CastTo<9CParasite>__10CPatternedFP7CEntity" +/* 80157234 00154194 28 03 00 00 */ cmplwi r3, 0 +/* 80157238 00154198 41 82 00 A0 */ beq lbl_801572D8 +/* 8015723C 0015419C A0 A3 00 08 */ lhz r5, 8(r3) +/* 80157240 001541A0 A0 1A 00 08 */ lhz r0, 8(r26) +/* 80157244 001541A4 7C 05 00 40 */ cmplw r5, r0 +/* 80157248 001541A8 41 82 00 90 */ beq lbl_801572D8 +/* 8015724C 001541AC 88 03 04 00 */ lbz r0, 0x400(r3) +/* 80157250 001541B0 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80157254 001541B4 41 82 00 84 */ beq lbl_801572D8 +/* 80157258 001541B8 80 01 0A 4C */ lwz r0, 0xa4c(r1) +/* 8015725C 001541BC 54 00 08 3C */ slwi r0, r0, 1 +/* 80157260 001541C0 7C 9F 02 15 */ add. r4, r31, r0 +/* 80157264 001541C4 41 82 00 08 */ beq lbl_8015726C +/* 80157268 001541C8 B0 A4 00 00 */ sth r5, 0(r4) +lbl_8015726C: +/* 8015726C 001541CC 80 81 0A 4C */ lwz r4, 0xa4c(r1) +/* 80157270 001541D0 38 04 00 01 */ addi r0, r4, 1 +/* 80157274 001541D4 90 01 0A 4C */ stw r0, 0xa4c(r1) +/* 80157278 001541D8 C0 C3 00 50 */ lfs f6, 0x50(r3) +/* 8015727C 001541DC C0 1A 00 50 */ lfs f0, 0x50(r26) +/* 80157280 001541E0 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 80157284 001541E4 EC A6 00 28 */ fsubs f5, f6, f0 +/* 80157288 001541E8 C0 1A 00 40 */ lfs f0, 0x40(r26) +/* 8015728C 001541EC C0 E3 00 60 */ lfs f7, 0x60(r3) +/* 80157290 001541F0 EC 61 00 28 */ fsubs f3, f1, f0 +/* 80157294 001541F4 C0 5A 00 60 */ lfs f2, 0x60(r26) +/* 80157298 001541F8 EC 05 01 72 */ fmuls f0, f5, f5 +/* 8015729C 001541FC EC 87 10 28 */ fsubs f4, f7, f2 +/* 801572A0 00154200 D0 21 01 00 */ stfs f1, 0x100(r1) +/* 801572A4 00154204 EC 23 00 F2 */ fmuls f1, f3, f3 +/* 801572A8 00154208 D0 C1 01 04 */ stfs f6, 0x104(r1) +/* 801572AC 0015420C EC 44 01 32 */ fmuls f2, f4, f4 +/* 801572B0 00154210 EC 01 00 2A */ fadds f0, f1, f0 +/* 801572B4 00154214 D0 E1 01 08 */ stfs f7, 0x108(r1) +/* 801572B8 00154218 D0 61 01 0C */ stfs f3, 0x10c(r1) +/* 801572BC 0015421C EC 02 00 2A */ fadds f0, f2, f0 +/* 801572C0 00154220 D0 A1 01 10 */ stfs f5, 0x110(r1) +/* 801572C4 00154224 FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 801572C8 00154228 D0 81 01 14 */ stfs f4, 0x114(r1) +/* 801572CC 0015422C 40 80 00 0C */ bge lbl_801572D8 +/* 801572D0 00154230 FF E0 00 90 */ fmr f31, f0 +/* 801572D4 00154234 7C 7D 1B 78 */ mr r29, r3 +lbl_801572D8: +/* 801572D8 00154238 3B 9C 00 02 */ addi r28, r28, 2 +lbl_801572DC: +/* 801572DC 0015423C 80 01 02 48 */ lwz r0, 0x248(r1) +/* 801572E0 00154240 54 00 08 3C */ slwi r0, r0, 1 +/* 801572E4 00154244 7C 1E 02 14 */ add r0, r30, r0 +/* 801572E8 00154248 7C 1C 00 40 */ cmplw r28, r0 +/* 801572EC 0015424C 40 82 FF 24 */ bne lbl_80157210 +/* 801572F0 00154250 28 1D 00 00 */ cmplwi r29, 0 +/* 801572F4 00154254 41 82 00 78 */ beq lbl_8015736C +/* 801572F8 00154258 C0 3A 06 EC */ lfs f1, 0x6ec(r26) +/* 801572FC 0015425C C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) +/* 80157300 00154260 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80157304 00154264 40 81 00 68 */ ble lbl_8015736C +/* 80157308 00154268 C0 3A 06 E8 */ lfs f1, 0x6e8(r26) +/* 8015730C 0015426C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80157310 00154270 40 81 00 5C */ ble lbl_8015736C +/* 80157314 00154274 C3 FA 06 04 */ lfs f31, 0x604(r26) +/* 80157318 00154278 7F 45 D3 78 */ mr r5, r26 +/* 8015731C 0015427C C0 7D 00 60 */ lfs f3, 0x60(r29) +/* 80157320 00154280 38 61 00 F4 */ addi r3, r1, 0xf4 +/* 80157324 00154284 C0 5D 00 50 */ lfs f2, 0x50(r29) +/* 80157328 00154288 38 9A 04 5C */ addi r4, r26, 0x45c +/* 8015732C 0015428C C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 80157330 00154290 38 C1 00 E8 */ addi r6, r1, 0xe8 +/* 80157334 00154294 D0 01 00 E8 */ stfs f0, 0xe8(r1) +/* 80157338 00154298 D0 41 00 EC */ stfs f2, 0xec(r1) +/* 8015733C 0015429C D0 61 00 F0 */ stfs f3, 0xf0(r1) +/* 80157340 001542A0 4B FE 75 B1 */ bl Separation__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff +/* 80157344 001542A4 C0 01 00 F4 */ lfs f0, 0xf4(r1) +/* 80157348 001542A8 C0 41 00 F8 */ lfs f2, 0xf8(r1) +/* 8015734C 001542AC EC 1F 00 32 */ fmuls f0, f31, f0 +/* 80157350 001542B0 C0 21 00 FC */ lfs f1, 0xfc(r1) +/* 80157354 001542B4 EC 5F 00 B2 */ fmuls f2, f31, f2 +/* 80157358 001542B8 EC 3F 00 72 */ fmuls f1, f31, f1 +/* 8015735C 001542BC D0 1A 06 28 */ stfs f0, 0x628(r26) +/* 80157360 001542C0 D0 5A 06 2C */ stfs f2, 0x62c(r26) +/* 80157364 001542C4 D0 3A 06 30 */ stfs f1, 0x630(r26) +/* 80157368 001542C8 48 00 00 20 */ b lbl_80157388 +lbl_8015736C: +/* 8015736C 001542CC 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80157370 001542D0 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 80157374 001542D4 D0 1A 06 28 */ stfs f0, 0x628(r26) +/* 80157378 001542D8 C0 03 00 04 */ lfs f0, 4(r3) +/* 8015737C 001542DC D0 1A 06 2C */ stfs f0, 0x62c(r26) +/* 80157380 001542E0 C0 03 00 08 */ lfs f0, 8(r3) +/* 80157384 001542E4 D0 1A 06 30 */ stfs f0, 0x630(r26) +lbl_80157388: +/* 80157388 001542E8 C3 FA 06 04 */ lfs f31, 0x604(r26) +/* 8015738C 001542EC 7F 45 D3 78 */ mr r5, r26 +/* 80157390 001542F0 C0 22 9E 5C */ lfs f1, lbl_805ABB7C@sda21(r2) +/* 80157394 001542F4 7F 67 DB 78 */ mr r7, r27 +/* 80157398 001542F8 38 61 00 DC */ addi r3, r1, 0xdc +/* 8015739C 001542FC 38 9A 04 5C */ addi r4, r26, 0x45c +/* 801573A0 00154300 38 C1 0A 4C */ addi r6, r1, 0xa4c +/* 801573A4 00154304 4B FE 72 7D */ bl "Cohesion__18CSteeringBehaviorsCFRC13CPhysicsActorRQ24rstl32reserved_vector<9TUniqueId,1024>fRC13CStateManager" +/* 801573A8 00154308 C0 01 00 DC */ lfs f0, 0xdc(r1) +/* 801573AC 0015430C 7F 45 D3 78 */ mr r5, r26 +/* 801573B0 00154310 C0 41 00 E0 */ lfs f2, 0xe0(r1) +/* 801573B4 00154314 7F 67 DB 78 */ mr r7, r27 +/* 801573B8 00154318 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801573BC 0015431C C0 21 00 E4 */ lfs f1, 0xe4(r1) +/* 801573C0 00154320 EC 5F 00 B2 */ fmuls f2, f31, f2 +/* 801573C4 00154324 38 61 00 D0 */ addi r3, r1, 0xd0 +/* 801573C8 00154328 EC 3F 00 72 */ fmuls f1, f31, f1 +/* 801573CC 0015432C 38 9A 04 5C */ addi r4, r26, 0x45c +/* 801573D0 00154330 D0 1A 06 34 */ stfs f0, 0x634(r26) +/* 801573D4 00154334 38 C1 0A 4C */ addi r6, r1, 0xa4c +/* 801573D8 00154338 D0 5A 06 38 */ stfs f2, 0x638(r26) +/* 801573DC 0015433C D0 3A 06 3C */ stfs f1, 0x63c(r26) +/* 801573E0 00154340 C3 FA 06 04 */ lfs f31, 0x604(r26) +/* 801573E4 00154344 4B FE 73 99 */ bl "Alignment__18CSteeringBehaviorsCFRC13CPhysicsActorRQ24rstl32reserved_vector<9TUniqueId,1024>RC13CStateManager" +/* 801573E8 00154348 C0 01 00 D0 */ lfs f0, 0xd0(r1) +/* 801573EC 0015434C 38 60 00 00 */ li r3, 0 +/* 801573F0 00154350 C0 41 00 D4 */ lfs f2, 0xd4(r1) +/* 801573F4 00154354 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801573F8 00154358 C0 21 00 D8 */ lfs f1, 0xd8(r1) +/* 801573FC 0015435C EC 5F 00 B2 */ fmuls f2, f31, f2 +/* 80157400 00154360 EC 3F 00 72 */ fmuls f1, f31, f1 +/* 80157404 00154364 D0 1A 06 40 */ stfs f0, 0x640(r26) +/* 80157408 00154368 D0 5A 06 44 */ stfs f2, 0x644(r26) +/* 8015740C 0015436C D0 3A 06 48 */ stfs f1, 0x648(r26) +/* 80157410 00154370 80 A1 02 48 */ lwz r5, 0x248(r1) +/* 80157414 00154374 2C 05 00 00 */ cmpwi r5, 0 +/* 80157418 00154378 40 81 00 40 */ ble lbl_80157458 +/* 8015741C 0015437C 2C 05 00 08 */ cmpwi r5, 8 +/* 80157420 00154380 38 85 FF F8 */ addi r4, r5, -8 +/* 80157424 00154384 40 81 00 20 */ ble lbl_80157444 +/* 80157428 00154388 38 04 00 07 */ addi r0, r4, 7 +/* 8015742C 0015438C 54 00 E8 FE */ srwi r0, r0, 3 +/* 80157430 00154390 7C 09 03 A6 */ mtctr r0 +/* 80157434 00154394 2C 04 00 00 */ cmpwi r4, 0 +/* 80157438 00154398 40 81 00 0C */ ble lbl_80157444 +lbl_8015743C: +/* 8015743C 0015439C 38 63 00 08 */ addi r3, r3, 8 +/* 80157440 001543A0 42 00 FF FC */ bdnz lbl_8015743C +lbl_80157444: +/* 80157444 001543A4 7C 03 28 50 */ subf r0, r3, r5 +/* 80157448 001543A8 7C 09 03 A6 */ mtctr r0 +/* 8015744C 001543AC 7C 03 28 00 */ cmpw r3, r5 +/* 80157450 001543B0 40 80 00 08 */ bge lbl_80157458 +lbl_80157454: +/* 80157454 001543B4 42 00 00 00 */ bdnz lbl_80157454 +lbl_80157458: +/* 80157458 001543B8 38 00 00 00 */ li r0, 0 +/* 8015745C 001543BC 90 01 02 48 */ stw r0, 0x248(r1) +lbl_80157460: +/* 80157460 001543C0 80 7B 08 4C */ lwz r3, 0x84c(r27) +/* 80157464 001543C4 C0 3A 07 00 */ lfs f1, 0x700(r26) +/* 80157468 001543C8 C1 23 00 50 */ lfs f9, 0x50(r3) +/* 8015746C 001543CC C0 5A 00 50 */ lfs f2, 0x50(r26) +/* 80157470 001543D0 EC 01 00 72 */ fmuls f0, f1, f1 +/* 80157474 001543D4 C0 C3 00 40 */ lfs f6, 0x40(r3) +/* 80157478 001543D8 ED 09 10 28 */ fsubs f8, f9, f2 +/* 8015747C 001543DC C0 5A 00 40 */ lfs f2, 0x40(r26) +/* 80157480 001543E0 C1 43 00 60 */ lfs f10, 0x60(r3) +/* 80157484 001543E4 EC A6 10 28 */ fsubs f5, f6, f2 +/* 80157488 001543E8 C0 7A 00 60 */ lfs f3, 0x60(r26) +/* 8015748C 001543EC EC 48 02 32 */ fmuls f2, f8, f8 +/* 80157490 001543F0 EC EA 18 28 */ fsubs f7, f10, f3 +/* 80157494 001543F4 D0 C1 00 B8 */ stfs f6, 0xb8(r1) +/* 80157498 001543F8 EC 65 01 72 */ fmuls f3, f5, f5 +/* 8015749C 001543FC D1 21 00 BC */ stfs f9, 0xbc(r1) +/* 801574A0 00154400 EC 87 01 F2 */ fmuls f4, f7, f7 +/* 801574A4 00154404 EC 43 10 2A */ fadds f2, f3, f2 +/* 801574A8 00154408 D1 41 00 C0 */ stfs f10, 0xc0(r1) +/* 801574AC 0015440C D0 A1 00 C4 */ stfs f5, 0xc4(r1) +/* 801574B0 00154410 EC 44 10 2A */ fadds f2, f4, f2 +/* 801574B4 00154414 D1 01 00 C8 */ stfs f8, 0xc8(r1) +/* 801574B8 00154418 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801574BC 0015441C D0 E1 00 CC */ stfs f7, 0xcc(r1) +/* 801574C0 00154420 40 80 00 90 */ bge lbl_80157550 +/* 801574C4 00154424 C3 FA 06 04 */ lfs f31, 0x604(r26) +/* 801574C8 00154428 7F 45 D3 78 */ mr r5, r26 +/* 801574CC 0015442C 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 801574D0 00154430 38 9A 04 5C */ addi r4, r26, 0x45c +/* 801574D4 00154434 D0 C1 00 94 */ stfs f6, 0x94(r1) +/* 801574D8 00154438 38 C1 00 94 */ addi r6, r1, 0x94 +/* 801574DC 0015443C D1 21 00 98 */ stfs f9, 0x98(r1) +/* 801574E0 00154440 D1 41 00 9C */ stfs f10, 0x9c(r1) +/* 801574E4 00154444 4B FE 74 0D */ bl Separation__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff +/* 801574E8 00154448 38 61 00 AC */ addi r3, r1, 0xac +/* 801574EC 0015444C 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 801574F0 00154450 38 A1 01 48 */ addi r5, r1, 0x148 +/* 801574F4 00154454 48 11 1C A9 */ bl ProjectVectorToPlane__11CWallWalkerFRC9CVector3fRC9CVector3f +/* 801574F8 00154458 C0 41 00 AC */ lfs f2, 0xac(r1) +/* 801574FC 0015445C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80157500 00154460 C0 21 00 B0 */ lfs f1, 0xb0(r1) +/* 80157504 00154464 38 81 01 FC */ addi r4, r1, 0x1fc +/* 80157508 00154468 C0 01 00 B4 */ lfs f0, 0xb4(r1) +/* 8015750C 0015446C EC BF 00 B2 */ fmuls f5, f31, f2 +/* 80157510 00154470 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 80157514 00154474 EC 9F 00 72 */ fmuls f4, f31, f1 +/* 80157518 00154478 C0 DA 07 04 */ lfs f6, 0x704(r26) +/* 8015751C 0015447C EC 7F 00 32 */ fmuls f3, f31, f0 +/* 80157520 00154480 C0 23 00 04 */ lfs f1, 4(r3) +/* 80157524 00154484 C0 03 00 08 */ lfs f0, 8(r3) +/* 80157528 00154488 D0 A1 01 FC */ stfs f5, 0x1fc(r1) +/* 8015752C 0015448C D0 81 02 00 */ stfs f4, 0x200(r1) +/* 80157530 00154490 D0 61 02 04 */ stfs f3, 0x204(r1) +/* 80157534 00154494 D0 41 02 08 */ stfs f2, 0x208(r1) +/* 80157538 00154498 D0 21 02 0C */ stfs f1, 0x20c(r1) +/* 8015753C 0015449C D0 01 02 10 */ stfs f0, 0x210(r1) +/* 80157540 001544A0 D0 C1 02 14 */ stfs f6, 0x214(r1) +/* 80157544 001544A4 80 7A 04 50 */ lwz r3, 0x450(r26) +/* 80157548 001544A8 38 63 00 04 */ addi r3, r3, 4 +/* 8015754C 001544AC 4B FD A1 CD */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_80157550: +/* 80157550 001544B0 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80157554 001544B4 C0 3A 06 28 */ lfs f1, 0x628(r26) +/* 80157558 001544B8 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 8015755C 001544BC 38 00 00 00 */ li r0, 0 +/* 80157560 001544C0 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 80157564 001544C4 40 82 00 28 */ bne lbl_8015758C +/* 80157568 001544C8 C0 3A 06 2C */ lfs f1, 0x62c(r26) +/* 8015756C 001544CC C0 03 00 04 */ lfs f0, 4(r3) +/* 80157570 001544D0 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 80157574 001544D4 40 82 00 18 */ bne lbl_8015758C +/* 80157578 001544D8 C0 3A 06 30 */ lfs f1, 0x630(r26) +/* 8015757C 001544DC C0 03 00 08 */ lfs f0, 8(r3) +/* 80157580 001544E0 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 80157584 001544E4 40 82 00 08 */ bne lbl_8015758C +/* 80157588 001544E8 38 00 00 01 */ li r0, 1 +lbl_8015758C: +/* 8015758C 001544EC 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 80157590 001544F0 40 82 00 60 */ bne lbl_801575F0 +/* 80157594 001544F4 C3 FA 06 EC */ lfs f31, 0x6ec(r26) +/* 80157598 001544F8 38 61 00 88 */ addi r3, r1, 0x88 +/* 8015759C 001544FC 38 9A 06 28 */ addi r4, r26, 0x628 +/* 801575A0 00154500 38 A1 01 48 */ addi r5, r1, 0x148 +/* 801575A4 00154504 48 11 1B F9 */ bl ProjectVectorToPlane__11CWallWalkerFRC9CVector3fRC9CVector3f +/* 801575A8 00154508 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801575AC 0015450C C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 801575B0 00154510 C0 A1 00 88 */ lfs f5, 0x88(r1) +/* 801575B4 00154514 38 81 01 E0 */ addi r4, r1, 0x1e0 +/* 801575B8 00154518 C0 81 00 8C */ lfs f4, 0x8c(r1) +/* 801575BC 0015451C C0 61 00 90 */ lfs f3, 0x90(r1) +/* 801575C0 00154520 C0 23 00 04 */ lfs f1, 4(r3) +/* 801575C4 00154524 C0 03 00 08 */ lfs f0, 8(r3) +/* 801575C8 00154528 D0 A1 01 E0 */ stfs f5, 0x1e0(r1) +/* 801575CC 0015452C D0 81 01 E4 */ stfs f4, 0x1e4(r1) +/* 801575D0 00154530 D0 61 01 E8 */ stfs f3, 0x1e8(r1) +/* 801575D4 00154534 D0 41 01 EC */ stfs f2, 0x1ec(r1) +/* 801575D8 00154538 D0 21 01 F0 */ stfs f1, 0x1f0(r1) +/* 801575DC 0015453C D0 01 01 F4 */ stfs f0, 0x1f4(r1) +/* 801575E0 00154540 D3 E1 01 F8 */ stfs f31, 0x1f8(r1) +/* 801575E4 00154544 80 7A 04 50 */ lwz r3, 0x450(r26) +/* 801575E8 00154548 38 63 00 04 */ addi r3, r3, 4 +/* 801575EC 0015454C 4B FD A1 2D */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_801575F0: +/* 801575F0 00154550 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801575F4 00154554 83 7A 05 E4 */ lwz r27, 0x5e4(r26) +/* 801575F8 00154558 3B E3 66 A0 */ addi r31, r3, skZero3f@l +/* 801575FC 0015455C 48 00 00 F4 */ b lbl_801576F0 +lbl_80157600: +/* 80157600 00154560 C0 5B 00 04 */ lfs f2, 4(r27) +/* 80157604 00154564 C0 1A 00 50 */ lfs f0, 0x50(r26) +/* 80157608 00154568 C0 3B 00 00 */ lfs f1, 0(r27) +/* 8015760C 0015456C EC C2 00 28 */ fsubs f6, f2, f0 +/* 80157610 00154570 C0 1A 00 40 */ lfs f0, 0x40(r26) +/* 80157614 00154574 C0 7B 00 08 */ lfs f3, 8(r27) +/* 80157618 00154578 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8015761C 0015457C C0 1A 00 60 */ lfs f0, 0x60(r26) +/* 80157620 00154580 EC 46 01 B2 */ fmuls f2, f6, f6 +/* 80157624 00154584 EC A3 00 28 */ fsubs f5, f3, f0 +/* 80157628 00154588 C0 3B 00 0C */ lfs f1, 0xc(r27) +/* 8015762C 0015458C EC 64 01 32 */ fmuls f3, f4, f4 +/* 80157630 00154590 EC 01 00 72 */ fmuls f0, f1, f1 +/* 80157634 00154594 D0 81 00 7C */ stfs f4, 0x7c(r1) +/* 80157638 00154598 EC 85 01 72 */ fmuls f4, f5, f5 +/* 8015763C 0015459C EC 43 10 2A */ fadds f2, f3, f2 +/* 80157640 001545A0 D0 C1 00 80 */ stfs f6, 0x80(r1) +/* 80157644 001545A4 D0 A1 00 84 */ stfs f5, 0x84(r1) +/* 80157648 001545A8 EC 44 10 2A */ fadds f2, f4, f2 +/* 8015764C 001545AC FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80157650 001545B0 40 80 00 9C */ bge lbl_801576EC +/* 80157654 001545B4 C3 FA 06 04 */ lfs f31, 0x604(r26) +/* 80157658 001545B8 7F 45 D3 78 */ mr r5, r26 +/* 8015765C 001545BC 7F 66 DB 78 */ mr r6, r27 +/* 80157660 001545C0 38 61 00 70 */ addi r3, r1, 0x70 +/* 80157664 001545C4 38 9A 04 5C */ addi r4, r26, 0x45c +/* 80157668 001545C8 4B FE 72 89 */ bl Separation__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff +/* 8015766C 001545CC C0 41 00 74 */ lfs f2, 0x74(r1) +/* 80157670 001545D0 38 61 00 64 */ addi r3, r1, 0x64 +/* 80157674 001545D4 C0 21 00 78 */ lfs f1, 0x78(r1) +/* 80157678 001545D8 38 81 01 3C */ addi r4, r1, 0x13c +/* 8015767C 001545DC C0 01 00 70 */ lfs f0, 0x70(r1) +/* 80157680 001545E0 EC 5F 00 B2 */ fmuls f2, f31, f2 +/* 80157684 001545E4 EC 3F 00 72 */ fmuls f1, f31, f1 +/* 80157688 001545E8 38 A1 01 48 */ addi r5, r1, 0x148 +/* 8015768C 001545EC EC 1F 00 32 */ fmuls f0, f31, f0 +/* 80157690 001545F0 D0 41 01 40 */ stfs f2, 0x140(r1) +/* 80157694 001545F4 D0 01 01 3C */ stfs f0, 0x13c(r1) +/* 80157698 001545F8 D0 21 01 44 */ stfs f1, 0x144(r1) +/* 8015769C 001545FC 48 11 1B 01 */ bl ProjectVectorToPlane__11CWallWalkerFRC9CVector3fRC9CVector3f +/* 801576A0 00154600 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801576A4 00154604 C0 C1 00 64 */ lfs f6, 0x64(r1) +/* 801576A8 00154608 C0 A1 00 68 */ lfs f5, 0x68(r1) +/* 801576AC 0015460C 38 81 01 C4 */ addi r4, r1, 0x1c4 +/* 801576B0 00154610 C0 81 00 6C */ lfs f4, 0x6c(r1) +/* 801576B4 00154614 C0 63 66 A0 */ lfs f3, skZero3f@l(r3) +/* 801576B8 00154618 C0 5F 00 04 */ lfs f2, 4(r31) +/* 801576BC 0015461C C0 3F 00 08 */ lfs f1, 8(r31) +/* 801576C0 00154620 C0 02 9E 60 */ lfs f0, lbl_805ABB80@sda21(r2) +/* 801576C4 00154624 D0 C1 01 C4 */ stfs f6, 0x1c4(r1) +/* 801576C8 00154628 D0 A1 01 C8 */ stfs f5, 0x1c8(r1) +/* 801576CC 0015462C D0 81 01 CC */ stfs f4, 0x1cc(r1) +/* 801576D0 00154630 D0 61 01 D0 */ stfs f3, 0x1d0(r1) +/* 801576D4 00154634 D0 41 01 D4 */ stfs f2, 0x1d4(r1) +/* 801576D8 00154638 D0 21 01 D8 */ stfs f1, 0x1d8(r1) +/* 801576DC 0015463C D0 01 01 DC */ stfs f0, 0x1dc(r1) +/* 801576E0 00154640 80 7A 04 50 */ lwz r3, 0x450(r26) +/* 801576E4 00154644 38 63 00 04 */ addi r3, r3, 4 +/* 801576E8 00154648 4B FD A0 31 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_801576EC: +/* 801576EC 0015464C 3B 7B 00 10 */ addi r27, r27, 0x10 +lbl_801576F0: +/* 801576F0 00154650 80 1A 05 DC */ lwz r0, 0x5dc(r26) +/* 801576F4 00154654 80 7A 05 E4 */ lwz r3, 0x5e4(r26) +/* 801576F8 00154658 54 00 20 36 */ slwi r0, r0, 4 +/* 801576FC 0015465C 7C 03 02 14 */ add r0, r3, r0 +/* 80157700 00154660 7C 1B 00 40 */ cmplw r27, r0 +/* 80157704 00154664 40 82 FE FC */ bne lbl_80157600 +/* 80157708 00154668 C0 3A 06 08 */ lfs f1, 0x608(r26) +/* 8015770C 0015466C C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) +/* 80157710 00154670 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80157714 00154674 4C 40 13 82 */ cror 2, 0, 2 +/* 80157718 00154678 40 82 01 D8 */ bne lbl_801578F0 +/* 8015771C 0015467C C3 FA 06 F4 */ lfs f31, 0x6f4(r26) +/* 80157720 00154680 38 61 00 58 */ addi r3, r1, 0x58 +/* 80157724 00154684 38 9A 06 34 */ addi r4, r26, 0x634 +/* 80157728 00154688 38 A1 01 48 */ addi r5, r1, 0x148 +/* 8015772C 0015468C 48 11 1A 71 */ bl ProjectVectorToPlane__11CWallWalkerFRC9CVector3fRC9CVector3f +/* 80157730 00154690 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80157734 00154694 C0 A1 00 58 */ lfs f5, 0x58(r1) +/* 80157738 00154698 C0 81 00 5C */ lfs f4, 0x5c(r1) +/* 8015773C 0015469C 38 81 01 A8 */ addi r4, r1, 0x1a8 +/* 80157740 001546A0 C0 61 00 60 */ lfs f3, 0x60(r1) +/* 80157744 001546A4 C0 43 66 A0 */ lfs f2, skZero3f@l(r3) +/* 80157748 001546A8 C0 3F 00 04 */ lfs f1, 4(r31) +/* 8015774C 001546AC C0 1F 00 08 */ lfs f0, 8(r31) +/* 80157750 001546B0 D0 A1 01 A8 */ stfs f5, 0x1a8(r1) +/* 80157754 001546B4 D0 81 01 AC */ stfs f4, 0x1ac(r1) +/* 80157758 001546B8 D0 61 01 B0 */ stfs f3, 0x1b0(r1) +/* 8015775C 001546BC D0 41 01 B4 */ stfs f2, 0x1b4(r1) +/* 80157760 001546C0 D0 21 01 B8 */ stfs f1, 0x1b8(r1) +/* 80157764 001546C4 D0 01 01 BC */ stfs f0, 0x1bc(r1) +/* 80157768 001546C8 D3 E1 01 C0 */ stfs f31, 0x1c0(r1) +/* 8015776C 001546CC 80 7A 04 50 */ lwz r3, 0x450(r26) +/* 80157770 001546D0 38 63 00 04 */ addi r3, r3, 4 +/* 80157774 001546D4 4B FD 9F A5 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 80157778 001546D8 C3 FA 06 F0 */ lfs f31, 0x6f0(r26) +/* 8015777C 001546DC 38 61 00 4C */ addi r3, r1, 0x4c +/* 80157780 001546E0 38 9A 06 40 */ addi r4, r26, 0x640 +/* 80157784 001546E4 38 A1 01 48 */ addi r5, r1, 0x148 +/* 80157788 001546E8 48 11 1A 15 */ bl ProjectVectorToPlane__11CWallWalkerFRC9CVector3fRC9CVector3f +/* 8015778C 001546EC 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80157790 001546F0 C0 A1 00 4C */ lfs f5, 0x4c(r1) +/* 80157794 001546F4 C0 81 00 50 */ lfs f4, 0x50(r1) +/* 80157798 001546F8 38 81 01 8C */ addi r4, r1, 0x18c +/* 8015779C 001546FC C0 61 00 54 */ lfs f3, 0x54(r1) +/* 801577A0 00154700 C0 43 66 A0 */ lfs f2, skZero3f@l(r3) +/* 801577A4 00154704 C0 3F 00 04 */ lfs f1, 4(r31) +/* 801577A8 00154708 C0 1F 00 08 */ lfs f0, 8(r31) +/* 801577AC 0015470C D0 A1 01 8C */ stfs f5, 0x18c(r1) +/* 801577B0 00154710 D0 81 01 90 */ stfs f4, 0x190(r1) +/* 801577B4 00154714 D0 61 01 94 */ stfs f3, 0x194(r1) +/* 801577B8 00154718 D0 41 01 98 */ stfs f2, 0x198(r1) +/* 801577BC 0015471C D0 21 01 9C */ stfs f1, 0x19c(r1) +/* 801577C0 00154720 D0 01 01 A0 */ stfs f0, 0x1a0(r1) +/* 801577C4 00154724 D3 E1 01 A4 */ stfs f31, 0x1a4(r1) +/* 801577C8 00154728 80 7A 04 50 */ lwz r3, 0x450(r26) +/* 801577CC 0015472C 38 63 00 04 */ addi r3, r3, 4 +/* 801577D0 00154730 4B FD 9F 49 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 801577D4 00154734 C3 FA 06 04 */ lfs f31, 0x604(r26) +/* 801577D8 00154738 7F 45 D3 78 */ mr r5, r26 +/* 801577DC 0015473C 38 61 00 34 */ addi r3, r1, 0x34 +/* 801577E0 00154740 38 9A 04 5C */ addi r4, r26, 0x45c +/* 801577E4 00154744 38 DA 02 E0 */ addi r6, r26, 0x2e0 +/* 801577E8 00154748 4B FE 74 39 */ bl Seek__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3f +/* 801577EC 0015474C 38 61 00 40 */ addi r3, r1, 0x40 +/* 801577F0 00154750 38 81 00 34 */ addi r4, r1, 0x34 +/* 801577F4 00154754 38 A1 01 48 */ addi r5, r1, 0x148 +/* 801577F8 00154758 48 11 19 A5 */ bl ProjectVectorToPlane__11CWallWalkerFRC9CVector3fRC9CVector3f +/* 801577FC 0015475C C0 41 00 40 */ lfs f2, 0x40(r1) +/* 80157800 00154760 38 61 00 28 */ addi r3, r1, 0x28 +/* 80157804 00154764 C0 21 00 44 */ lfs f1, 0x44(r1) +/* 80157808 00154768 38 81 01 30 */ addi r4, r1, 0x130 +/* 8015780C 0015476C C0 01 00 48 */ lfs f0, 0x48(r1) +/* 80157810 00154770 EC 5F 00 B2 */ fmuls f2, f31, f2 +/* 80157814 00154774 EC 3F 00 72 */ fmuls f1, f31, f1 +/* 80157818 00154778 38 A1 01 48 */ addi r5, r1, 0x148 +/* 8015781C 0015477C EC 1F 00 32 */ fmuls f0, f31, f0 +/* 80157820 00154780 D0 41 01 30 */ stfs f2, 0x130(r1) +/* 80157824 00154784 D0 21 01 34 */ stfs f1, 0x134(r1) +/* 80157828 00154788 D0 01 01 38 */ stfs f0, 0x138(r1) +/* 8015782C 0015478C C3 FA 06 F8 */ lfs f31, 0x6f8(r26) +/* 80157830 00154790 48 11 19 6D */ bl ProjectVectorToPlane__11CWallWalkerFRC9CVector3fRC9CVector3f +/* 80157834 00154794 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80157838 00154798 C0 A1 00 28 */ lfs f5, 0x28(r1) +/* 8015783C 0015479C C0 81 00 2C */ lfs f4, 0x2c(r1) +/* 80157840 001547A0 38 81 01 70 */ addi r4, r1, 0x170 +/* 80157844 001547A4 C0 61 00 30 */ lfs f3, 0x30(r1) +/* 80157848 001547A8 C0 43 66 A0 */ lfs f2, skZero3f@l(r3) +/* 8015784C 001547AC C0 3F 00 04 */ lfs f1, 4(r31) +/* 80157850 001547B0 C0 1F 00 08 */ lfs f0, 8(r31) +/* 80157854 001547B4 D0 A1 01 70 */ stfs f5, 0x170(r1) +/* 80157858 001547B8 D0 81 01 74 */ stfs f4, 0x174(r1) +/* 8015785C 001547BC D0 61 01 78 */ stfs f3, 0x178(r1) +/* 80157860 001547C0 D0 41 01 7C */ stfs f2, 0x17c(r1) +/* 80157864 001547C4 D0 21 01 80 */ stfs f1, 0x180(r1) +/* 80157868 001547C8 D0 01 01 84 */ stfs f0, 0x184(r1) +/* 8015786C 001547CC D3 E1 01 88 */ stfs f31, 0x188(r1) +/* 80157870 001547D0 80 7A 04 50 */ lwz r3, 0x450(r26) +/* 80157874 001547D4 38 63 00 04 */ addi r3, r3, 4 +/* 80157878 001547D8 4B FD 9E A1 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +/* 8015787C 001547DC C1 3A 00 58 */ lfs f9, 0x58(r26) +/* 80157880 001547E0 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80157884 001547E4 C0 1A 06 04 */ lfs f0, 0x604(r26) +/* 80157888 001547E8 38 81 01 54 */ addi r4, r1, 0x154 +/* 8015788C 001547EC C1 1A 00 48 */ lfs f8, 0x48(r26) +/* 80157890 001547F0 C0 9A 00 38 */ lfs f4, 0x38(r26) +/* 80157894 001547F4 EC A0 02 72 */ fmuls f5, f0, f9 +/* 80157898 001547F8 C0 FA 06 FC */ lfs f7, 0x6fc(r26) +/* 8015789C 001547FC EC C0 02 32 */ fmuls f6, f0, f8 +/* 801578A0 00154800 EC 60 01 32 */ fmuls f3, f0, f4 +/* 801578A4 00154804 C0 43 66 A0 */ lfs f2, skZero3f@l(r3) +/* 801578A8 00154808 C0 3F 00 04 */ lfs f1, 4(r31) +/* 801578AC 0015480C C0 1F 00 08 */ lfs f0, 8(r31) +/* 801578B0 00154810 D0 61 01 54 */ stfs f3, 0x154(r1) +/* 801578B4 00154814 D0 C1 01 58 */ stfs f6, 0x158(r1) +/* 801578B8 00154818 D0 A1 01 5C */ stfs f5, 0x15c(r1) +/* 801578BC 0015481C D0 41 01 60 */ stfs f2, 0x160(r1) +/* 801578C0 00154820 D0 21 01 64 */ stfs f1, 0x164(r1) +/* 801578C4 00154824 D0 01 01 68 */ stfs f0, 0x168(r1) +/* 801578C8 00154828 D0 E1 01 6C */ stfs f7, 0x16c(r1) +/* 801578CC 0015482C 80 7A 04 50 */ lwz r3, 0x450(r26) +/* 801578D0 00154830 D0 81 00 10 */ stfs f4, 0x10(r1) +/* 801578D4 00154834 38 63 00 04 */ addi r3, r3, 4 +/* 801578D8 00154838 D1 01 00 14 */ stfs f8, 0x14(r1) +/* 801578DC 0015483C D1 21 00 18 */ stfs f9, 0x18(r1) +/* 801578E0 00154840 D0 61 00 1C */ stfs f3, 0x1c(r1) +/* 801578E4 00154844 D0 C1 00 20 */ stfs f6, 0x20(r1) +/* 801578E8 00154848 D0 A1 00 24 */ stfs f5, 0x24(r1) +/* 801578EC 0015484C 4B FD 9E 2D */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd +lbl_801578F0: +/* 801578F0 00154850 80 A1 0A 4C */ lwz r5, 0xa4c(r1) +/* 801578F4 00154854 38 60 00 00 */ li r3, 0 +/* 801578F8 00154858 2C 05 00 00 */ cmpwi r5, 0 +/* 801578FC 0015485C 40 81 00 40 */ ble lbl_8015793C +/* 80157900 00154860 2C 05 00 08 */ cmpwi r5, 8 +/* 80157904 00154864 38 85 FF F8 */ addi r4, r5, -8 +/* 80157908 00154868 40 81 00 20 */ ble lbl_80157928 +/* 8015790C 0015486C 38 04 00 07 */ addi r0, r4, 7 +/* 80157910 00154870 54 00 E8 FE */ srwi r0, r0, 3 +/* 80157914 00154874 7C 09 03 A6 */ mtctr r0 +/* 80157918 00154878 2C 04 00 00 */ cmpwi r4, 0 +/* 8015791C 0015487C 40 81 00 0C */ ble lbl_80157928 +lbl_80157920: +/* 80157920 00154880 38 63 00 08 */ addi r3, r3, 8 +/* 80157924 00154884 42 00 FF FC */ bdnz lbl_80157920 +lbl_80157928: +/* 80157928 00154888 7C 03 28 50 */ subf r0, r3, r5 +/* 8015792C 0015488C 7C 09 03 A6 */ mtctr r0 +/* 80157930 00154890 7C 03 28 00 */ cmpw r3, r5 +/* 80157934 00154894 40 80 00 08 */ bge lbl_8015793C +lbl_80157938: +/* 80157938 00154898 42 00 00 00 */ bdnz lbl_80157938 +lbl_8015793C: +/* 8015793C 0015489C 38 00 00 00 */ li r0, 0 +/* 80157940 001548A0 90 01 0A 4C */ stw r0, 0xa4c(r1) +/* 80157944 001548A4 38 00 12 78 */ li r0, 0x1278 +/* 80157948 001548A8 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 +/* 8015794C 001548AC CB E1 12 70 */ lfd f31, 0x1270(r1) +/* 80157950 001548B0 BB 41 12 58 */ lmw r26, 0x1258(r1) +/* 80157954 001548B4 80 01 12 84 */ lwz r0, 0x1284(r1) +/* 80157958 001548B8 7C 08 03 A6 */ mtlr r0 +/* 8015795C 001548BC 38 21 12 80 */ addi r1, r1, 0x1280 +/* 80157960 001548C0 4E 80 00 20 */ blr + +.global UpdatePFDestination__9CParasiteFR13CStateManager +UpdatePFDestination__9CParasiteFR13CStateManager: +/* 80157964 001548C4 4E 80 00 20 */ blr + +.global Touch__9CParasiteFR6CActorR13CStateManager +Touch__9CParasiteFR6CActorR13CStateManager: +/* 80157968 001548C8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8015796C 001548CC 7C 08 02 A6 */ mflr r0 +/* 80157970 001548D0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80157974 001548D4 4B F2 21 2D */ bl Touch__10CPatternedFR6CActorR13CStateManager +/* 80157978 001548D8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8015797C 001548DC 7C 08 03 A6 */ mtlr r0 +/* 80157980 001548E0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80157984 001548E4 4E 80 00 20 */ blr + +.global GetUp__9CParasiteFR13CStateManager9EStateMsgf +GetUp__9CParasiteFR13CStateManager9EStateMsgf: +/* 80157988 001548E8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8015798C 001548EC 7C 08 02 A6 */ mflr r0 +/* 80157990 001548F0 2C 05 00 00 */ cmpwi r5, 0 +/* 80157994 001548F4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80157998 001548F8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8015799C 001548FC 7C 7F 1B 78 */ mr r31, r3 +/* 801579A0 00154900 40 82 00 5C */ bne lbl_801579FC +/* 801579A4 00154904 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801579A8 00154908 38 80 00 01 */ li r4, 1 +/* 801579AC 0015490C 4B FE 30 2D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801579B0 00154910 80 1F 05 D0 */ lwz r0, 0x5d0(r31) +/* 801579B4 00154914 2C 00 00 02 */ cmpwi r0, 2 +/* 801579B8 00154918 40 82 00 44 */ bne lbl_801579FC +/* 801579BC 0015491C C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801579C0 00154920 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801579C4 00154924 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801579C8 00154928 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 801579CC 0015492C C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801579D0 00154930 38 61 00 08 */ addi r3, r1, 8 +/* 801579D4 00154934 A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 801579D8 00154938 38 A1 00 0C */ addi r5, r1, 0xc +/* 801579DC 0015493C D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801579E0 00154940 38 E0 00 01 */ li r7, 1 +/* 801579E4 00154944 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 801579E8 00154948 39 00 00 00 */ li r8, 0 +/* 801579EC 0015494C D0 21 00 10 */ stfs f1, 0x10(r1) +/* 801579F0 00154950 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801579F4 00154954 A0 9F 07 3E */ lhz r4, 0x73e(r31) +/* 801579F8 00154958 48 19 28 B9 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +lbl_801579FC: +/* 801579FC 0015495C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80157A00 00154960 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80157A04 00154964 7C 08 03 A6 */ mtlr r0 +/* 80157A08 00154968 38 21 00 20 */ addi r1, r1, 0x20 +/* 80157A0C 0015496C 4E 80 00 20 */ blr + +.global Crouch__9CParasiteFR13CStateManager9EStateMsgf +Crouch__9CParasiteFR13CStateManager9EStateMsgf: +/* 80157A10 00154970 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80157A14 00154974 7C 08 02 A6 */ mflr r0 +/* 80157A18 00154978 2C 05 00 00 */ cmpwi r5, 0 +/* 80157A1C 0015497C 90 01 00 24 */ stw r0, 0x24(r1) +/* 80157A20 00154980 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80157A24 00154984 7C 7F 1B 78 */ mr r31, r3 +/* 80157A28 00154988 40 82 00 5C */ bne lbl_80157A84 +/* 80157A2C 0015498C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 80157A30 00154990 38 80 00 00 */ li r4, 0 +/* 80157A34 00154994 4B FE 2F A5 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 80157A38 00154998 80 1F 05 D0 */ lwz r0, 0x5d0(r31) +/* 80157A3C 0015499C 2C 00 00 02 */ cmpwi r0, 2 +/* 80157A40 001549A0 40 82 00 44 */ bne lbl_80157A84 +/* 80157A44 001549A4 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 80157A48 001549A8 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80157A4C 001549AC C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 80157A50 001549B0 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 80157A54 001549B4 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 80157A58 001549B8 38 61 00 08 */ addi r3, r1, 8 +/* 80157A5C 001549BC A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 80157A60 001549C0 38 A1 00 0C */ addi r5, r1, 0xc +/* 80157A64 001549C4 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 80157A68 001549C8 38 E0 00 01 */ li r7, 1 +/* 80157A6C 001549CC 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80157A70 001549D0 39 00 00 00 */ li r8, 0 +/* 80157A74 001549D4 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 80157A78 001549D8 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 80157A7C 001549DC A0 9F 07 40 */ lhz r4, 0x740(r31) +/* 80157A80 001549E0 48 19 28 31 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +lbl_80157A84: +/* 80157A84 001549E4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80157A88 001549E8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80157A8C 001549EC 7C 08 03 A6 */ mtlr r0 +/* 80157A90 001549F0 38 21 00 20 */ addi r1, r1, 0x20 +/* 80157A94 001549F4 4E 80 00 20 */ blr + +.global Halt__9CParasiteFR13CStateManager9EStateMsgf +Halt__9CParasiteFR13CStateManager9EStateMsgf: +/* 80157A98 001549F8 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80157A9C 001549FC 7C 08 02 A6 */ mflr r0 +/* 80157AA0 00154A00 2C 05 00 01 */ cmpwi r5, 1 +/* 80157AA4 00154A04 90 01 00 44 */ stw r0, 0x44(r1) +/* 80157AA8 00154A08 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80157AAC 00154A0C 7C 7F 1B 78 */ mr r31, r3 +/* 80157AB0 00154A10 41 82 00 98 */ beq lbl_80157B48 +/* 80157AB4 00154A14 40 80 00 10 */ bge lbl_80157AC4 +/* 80157AB8 00154A18 2C 05 00 00 */ cmpwi r5, 0 +/* 80157ABC 00154A1C 40 80 00 14 */ bge lbl_80157AD0 +/* 80157AC0 00154A20 48 00 01 24 */ b lbl_80157BE4 +lbl_80157AC4: +/* 80157AC4 00154A24 2C 05 00 03 */ cmpwi r5, 3 +/* 80157AC8 00154A28 40 80 01 1C */ bge lbl_80157BE4 +/* 80157ACC 00154A2C 48 00 00 C0 */ b lbl_80157B8C +lbl_80157AD0: +/* 80157AD0 00154A30 C0 1F 07 10 */ lfs f0, 0x710(r31) +/* 80157AD4 00154A34 38 60 00 01 */ li r3, 1 +/* 80157AD8 00154A38 D0 1F 03 40 */ stfs f0, 0x340(r31) +/* 80157ADC 00154A3C 90 7F 03 2C */ stw r3, 0x32c(r31) +/* 80157AE0 00154A40 88 1F 07 43 */ lbz r0, 0x743(r31) +/* 80157AE4 00154A44 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80157AE8 00154A48 98 1F 07 43 */ stb r0, 0x743(r31) +/* 80157AEC 00154A4C 88 1F 05 D6 */ lbz r0, 0x5d6(r31) +/* 80157AF0 00154A50 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80157AF4 00154A54 98 1F 05 D6 */ stb r0, 0x5d6(r31) +/* 80157AF8 00154A58 80 1F 05 D0 */ lwz r0, 0x5d0(r31) +/* 80157AFC 00154A5C 2C 00 00 02 */ cmpwi r0, 2 +/* 80157B00 00154A60 40 82 00 E4 */ bne lbl_80157BE4 +/* 80157B04 00154A64 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 80157B08 00154A68 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80157B0C 00154A6C C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 80157B10 00154A70 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 80157B14 00154A74 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 80157B18 00154A78 38 61 00 08 */ addi r3, r1, 8 +/* 80157B1C 00154A7C A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 80157B20 00154A80 38 A1 00 20 */ addi r5, r1, 0x20 +/* 80157B24 00154A84 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 80157B28 00154A88 38 E0 00 01 */ li r7, 1 +/* 80157B2C 00154A8C 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80157B30 00154A90 39 00 00 00 */ li r8, 0 +/* 80157B34 00154A94 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 80157B38 00154A98 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 80157B3C 00154A9C A0 9F 07 3C */ lhz r4, 0x73c(r31) +/* 80157B40 00154AA0 48 19 27 71 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 80157B44 00154AA4 48 00 00 A0 */ b lbl_80157BE4 +lbl_80157B48: +/* 80157B48 00154AA8 3C A0 80 3E */ lis r5, lbl_803E2FF8@ha +/* 80157B4C 00154AAC 38 C1 00 14 */ addi r6, r1, 0x14 +/* 80157B50 00154AB0 39 45 2F F8 */ addi r10, r5, lbl_803E2FF8@l +/* 80157B54 00154AB4 38 A0 00 0A */ li r5, 0xa +/* 80157B58 00154AB8 81 2A 00 00 */ lwz r9, 0(r10) +/* 80157B5C 00154ABC 38 E0 00 01 */ li r7, 1 +/* 80157B60 00154AC0 81 0A 00 04 */ lwz r8, 4(r10) +/* 80157B64 00154AC4 80 0A 00 08 */ lwz r0, 8(r10) +/* 80157B68 00154AC8 91 21 00 14 */ stw r9, 0x14(r1) +/* 80157B6C 00154ACC 91 01 00 18 */ stw r8, 0x18(r1) +/* 80157B70 00154AD0 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80157B74 00154AD4 4B F2 4C 41 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi +/* 80157B78 00154AD8 88 1F 04 00 */ lbz r0, 0x400(r31) +/* 80157B7C 00154ADC 38 60 00 00 */ li r3, 0 +/* 80157B80 00154AE0 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80157B84 00154AE4 98 1F 04 00 */ stb r0, 0x400(r31) +/* 80157B88 00154AE8 48 00 00 5C */ b lbl_80157BE4 +lbl_80157B8C: +/* 80157B8C 00154AEC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80157B90 00154AF0 38 00 00 0A */ li r0, 0xa +/* 80157B94 00154AF4 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 80157B98 00154AF8 90 01 00 10 */ stw r0, 0x10(r1) +/* 80157B9C 00154AFC 38 81 00 0C */ addi r4, r1, 0xc +/* 80157BA0 00154B00 90 61 00 0C */ stw r3, 0xc(r1) +/* 80157BA4 00154B04 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 80157BA8 00154B08 38 63 00 04 */ addi r3, r3, 4 +/* 80157BAC 00154B0C 4B FD 9C 0D */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd +/* 80157BB0 00154B10 34 01 00 0C */ addic. r0, r1, 0xc +/* 80157BB4 00154B14 41 82 00 10 */ beq lbl_80157BC4 +/* 80157BB8 00154B18 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80157BBC 00154B1C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80157BC0 00154B20 90 01 00 0C */ stw r0, 0xc(r1) +lbl_80157BC4: +/* 80157BC4 00154B24 38 60 00 00 */ li r3, 0 +/* 80157BC8 00154B28 90 7F 03 2C */ stw r3, 0x32c(r31) +/* 80157BCC 00154B2C 88 1F 07 43 */ lbz r0, 0x743(r31) +/* 80157BD0 00154B30 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80157BD4 00154B34 98 1F 07 43 */ stb r0, 0x743(r31) +/* 80157BD8 00154B38 88 1F 05 D6 */ lbz r0, 0x5d6(r31) +/* 80157BDC 00154B3C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80157BE0 00154B40 98 1F 05 D6 */ stb r0, 0x5d6(r31) +lbl_80157BE4: +/* 80157BE4 00154B44 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80157BE8 00154B48 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80157BEC 00154B4C 7C 08 03 A6 */ mtlr r0 +/* 80157BF0 00154B50 38 21 00 40 */ addi r1, r1, 0x40 +/* 80157BF4 00154B54 4E 80 00 20 */ blr + +.global TelegraphAttack__9CParasiteFR13CStateManager9EStateMsgf +TelegraphAttack__9CParasiteFR13CStateManager9EStateMsgf: +/* 80157BF8 00154B58 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80157BFC 00154B5C 7C 08 02 A6 */ mflr r0 +/* 80157C00 00154B60 2C 05 00 00 */ cmpwi r5, 0 +/* 80157C04 00154B64 90 01 00 44 */ stw r0, 0x44(r1) +/* 80157C08 00154B68 BF 61 00 2C */ stmw r27, 0x2c(r1) +/* 80157C0C 00154B6C 7C 7B 1B 78 */ mr r27, r3 +/* 80157C10 00154B70 7C 9C 23 78 */ mr r28, r4 +/* 80157C14 00154B74 41 82 00 0C */ beq lbl_80157C20 +/* 80157C18 00154B78 41 80 01 24 */ blt lbl_80157D3C +/* 80157C1C 00154B7C 48 00 01 20 */ b lbl_80157D3C +lbl_80157C20: +/* 80157C20 00154B80 3B DC 0F 54 */ addi r30, r28, 0xf54 +/* 80157C24 00154B84 83 BC 0F 58 */ lwz r29, 0xf58(r28) +/* 80157C28 00154B88 48 00 00 F8 */ b lbl_80157D20 +lbl_80157C2C: +/* 80157C2C 00154B8C A0 1D 00 08 */ lhz r0, 8(r29) +/* 80157C30 00154B90 7F 83 E3 78 */ mr r3, r28 +/* 80157C34 00154B94 38 81 00 08 */ addi r4, r1, 8 +/* 80157C38 00154B98 B0 01 00 08 */ sth r0, 8(r1) +/* 80157C3C 00154B9C 4B EF 49 39 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80157C40 00154BA0 7C 64 1B 78 */ mr r4, r3 +/* 80157C44 00154BA4 38 61 00 0C */ addi r3, r1, 0xc +/* 80157C48 00154BA8 4B F4 D7 F1 */ bl sub_800a5438 +/* 80157C4C 00154BAC 4B F4 D7 C1 */ bl "CastTo<9CParasite>__10CPatternedFP7CEntity" +/* 80157C50 00154BB0 7C 7F 1B 79 */ or. r31, r3, r3 +/* 80157C54 00154BB4 40 82 00 18 */ bne lbl_80157C6C +/* 80157C58 00154BB8 7F C3 F3 78 */ mr r3, r30 +/* 80157C5C 00154BBC 7F A4 EB 78 */ mr r4, r29 +/* 80157C60 00154BC0 4B FD 52 11 */ bl "erase__Q24rstl43list<9TUniqueId,Q24rstl17rmemory_allocator>FRCQ34rstl43list<9TUniqueId,Q24rstl17rmemory_allocator>8iterator" +/* 80157C64 00154BC4 7C 7D 1B 78 */ mr r29, r3 +/* 80157C68 00154BC8 48 00 00 B8 */ b lbl_80157D20 +lbl_80157C6C: +/* 80157C6C 00154BCC 7C 1F D8 40 */ cmplw r31, r27 +/* 80157C70 00154BD0 41 82 00 AC */ beq lbl_80157D1C +/* 80157C74 00154BD4 88 1F 04 00 */ lbz r0, 0x400(r31) +/* 80157C78 00154BD8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80157C7C 00154BDC 41 82 00 A0 */ beq lbl_80157D1C +/* 80157C80 00154BE0 C0 FF 00 50 */ lfs f7, 0x50(r31) +/* 80157C84 00154BE4 C0 1B 00 50 */ lfs f0, 0x50(r27) +/* 80157C88 00154BE8 C0 7F 00 40 */ lfs f3, 0x40(r31) +/* 80157C8C 00154BEC EC C7 00 28 */ fsubs f6, f7, f0 +/* 80157C90 00154BF0 C0 1B 00 40 */ lfs f0, 0x40(r27) +/* 80157C94 00154BF4 C1 1F 00 60 */ lfs f8, 0x60(r31) +/* 80157C98 00154BF8 EC 83 00 28 */ fsubs f4, f3, f0 +/* 80157C9C 00154BFC C0 1B 00 60 */ lfs f0, 0x60(r27) +/* 80157CA0 00154C00 EC 26 01 B2 */ fmuls f1, f6, f6 +/* 80157CA4 00154C04 EC A8 00 28 */ fsubs f5, f8, f0 +/* 80157CA8 00154C08 C0 1B 06 D0 */ lfs f0, 0x6d0(r27) +/* 80157CAC 00154C0C EC 44 01 32 */ fmuls f2, f4, f4 +/* 80157CB0 00154C10 EC 00 00 32 */ fmuls f0, f0, f0 +/* 80157CB4 00154C14 D0 61 00 10 */ stfs f3, 0x10(r1) +/* 80157CB8 00154C18 EC 65 01 72 */ fmuls f3, f5, f5 +/* 80157CBC 00154C1C EC 22 08 2A */ fadds f1, f2, f1 +/* 80157CC0 00154C20 D0 E1 00 14 */ stfs f7, 0x14(r1) +/* 80157CC4 00154C24 D1 01 00 18 */ stfs f8, 0x18(r1) +/* 80157CC8 00154C28 EC 23 08 2A */ fadds f1, f3, f1 +/* 80157CCC 00154C2C D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 80157CD0 00154C30 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80157CD4 00154C34 D0 C1 00 20 */ stfs f6, 0x20(r1) +/* 80157CD8 00154C38 D0 A1 00 24 */ stfs f5, 0x24(r1) +/* 80157CDC 00154C3C 40 80 00 40 */ bge lbl_80157D1C +/* 80157CE0 00154C40 88 1F 07 42 */ lbz r0, 0x742(r31) +/* 80157CE4 00154C44 38 60 00 01 */ li r3, 1 +/* 80157CE8 00154C48 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80157CEC 00154C4C 98 1F 07 42 */ stb r0, 0x742(r31) +/* 80157CF0 00154C50 80 7C 09 00 */ lwz r3, 0x900(r28) +/* 80157CF4 00154C54 48 1B A7 E9 */ bl Float__9CRandom16Fv +/* 80157CF8 00154C58 C0 02 9E 64 */ lfs f0, lbl_805ABB84@sda21(r2) +/* 80157CFC 00154C5C EC 00 00 7A */ fmadds f0, f0, f1, f0 +/* 80157D00 00154C60 D0 1F 06 08 */ stfs f0, 0x608(r31) +/* 80157D04 00154C64 C0 5B 00 60 */ lfs f2, 0x60(r27) +/* 80157D08 00154C68 C0 3B 00 50 */ lfs f1, 0x50(r27) +/* 80157D0C 00154C6C C0 1B 00 40 */ lfs f0, 0x40(r27) +/* 80157D10 00154C70 D0 1F 05 F8 */ stfs f0, 0x5f8(r31) +/* 80157D14 00154C74 D0 3F 05 FC */ stfs f1, 0x5fc(r31) +/* 80157D18 00154C78 D0 5F 06 00 */ stfs f2, 0x600(r31) +lbl_80157D1C: +/* 80157D1C 00154C7C 83 BD 00 04 */ lwz r29, 4(r29) +lbl_80157D20: +/* 80157D20 00154C80 80 1E 00 08 */ lwz r0, 8(r30) +/* 80157D24 00154C84 7C 1D 00 40 */ cmplw r29, r0 +/* 80157D28 00154C88 40 82 FF 04 */ bne lbl_80157C2C +/* 80157D2C 00154C8C 88 1B 04 00 */ lbz r0, 0x400(r27) +/* 80157D30 00154C90 38 60 00 00 */ li r3, 0 +/* 80157D34 00154C94 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80157D38 00154C98 98 1B 04 00 */ stb r0, 0x400(r27) +lbl_80157D3C: +/* 80157D3C 00154C9C BB 61 00 2C */ lmw r27, 0x2c(r1) +/* 80157D40 00154CA0 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80157D44 00154CA4 7C 08 03 A6 */ mtlr r0 +/* 80157D48 00154CA8 38 21 00 40 */ addi r1, r1, 0x40 +/* 80157D4C 00154CAC 4E 80 00 20 */ blr + +.global Death__9CParasiteFRC9CVector3fR13CStateManager +Death__9CParasiteFRC9CVector3fR13CStateManager: +/* 80157D50 00154CB0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80157D54 00154CB4 7C 08 02 A6 */ mflr r0 +/* 80157D58 00154CB8 90 01 00 24 */ stw r0, 0x24(r1) +/* 80157D5C 00154CBC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80157D60 00154CC0 7C DF 33 78 */ mr r31, r6 +/* 80157D64 00154CC4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80157D68 00154CC8 7C BE 2B 78 */ mr r30, r5 +/* 80157D6C 00154CCC 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80157D70 00154CD0 7C 9D 23 78 */ mr r29, r4 +/* 80157D74 00154CD4 93 81 00 10 */ stw r28, 0x10(r1) +/* 80157D78 00154CD8 7C 7C 1B 78 */ mr r28, r3 +/* 80157D7C 00154CDC 4B FC 35 FD */ bl Stop__13CPhysicsActorFv +/* 80157D80 00154CE0 7F 83 E3 78 */ mr r3, r28 +/* 80157D84 00154CE4 7F A4 EB 78 */ mr r4, r29 +/* 80157D88 00154CE8 81 9C 00 00 */ lwz r12, 0(r28) +/* 80157D8C 00154CEC 38 A0 00 00 */ li r5, 0 +/* 80157D90 00154CF0 C0 22 9E 50 */ lfs f1, lbl_805ABB70@sda21(r2) +/* 80157D94 00154CF4 81 8C 01 30 */ lwz r12, 0x130(r12) +/* 80157D98 00154CF8 7D 89 03 A6 */ mtctr r12 +/* 80157D9C 00154CFC 4E 80 04 21 */ bctrl +/* 80157DA0 00154D00 7F 83 E3 78 */ mr r3, r28 +/* 80157DA4 00154D04 81 9C 00 00 */ lwz r12, 0(r28) +/* 80157DA8 00154D08 81 8C 00 80 */ lwz r12, 0x80(r12) +/* 80157DAC 00154D0C 7D 89 03 A6 */ mtctr r12 +/* 80157DB0 00154D10 4E 80 04 21 */ bctrl +/* 80157DB4 00154D14 C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) +/* 80157DB8 00154D18 FC 20 08 50 */ fneg f1, f1 +/* 80157DBC 00154D1C 7F 83 E3 78 */ mr r3, r28 +/* 80157DC0 00154D20 7F A4 EB 78 */ mr r4, r29 +/* 80157DC4 00154D24 D0 1C 01 50 */ stfs f0, 0x150(r28) +/* 80157DC8 00154D28 7F C5 F3 78 */ mr r5, r30 +/* 80157DCC 00154D2C 7F E6 FB 78 */ mr r6, r31 +/* 80157DD0 00154D30 D0 1C 01 54 */ stfs f0, 0x154(r28) +/* 80157DD4 00154D34 D0 3C 01 58 */ stfs f1, 0x158(r28) +/* 80157DD8 00154D38 4B F2 35 CD */ bl Death__10CPatternedFR13CStateManagerRC9CVector3f18EScriptObjectState +/* 80157DDC 00154D3C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80157DE0 00154D40 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80157DE4 00154D44 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80157DE8 00154D48 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80157DEC 00154D4C 83 81 00 10 */ lwz r28, 0x10(r1) +/* 80157DF0 00154D50 7C 08 03 A6 */ mtlr r0 +/* 80157DF4 00154D54 38 21 00 20 */ addi r1, r1, 0x20 +/* 80157DF8 00154D58 4E 80 00 20 */ blr + +.global TargetPlayer__9CParasiteFR13CStateManager9EStateMsgf +TargetPlayer__9CParasiteFR13CStateManager9EStateMsgf: +/* 80157DFC 00154D5C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80157E00 00154D60 7C 08 02 A6 */ mflr r0 +/* 80157E04 00154D64 2C 05 00 01 */ cmpwi r5, 1 +/* 80157E08 00154D68 90 01 00 44 */ stw r0, 0x44(r1) +/* 80157E0C 00154D6C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80157E10 00154D70 41 82 00 4C */ beq lbl_80157E5C +/* 80157E14 00154D74 40 80 00 D0 */ bge lbl_80157EE4 +/* 80157E18 00154D78 2C 05 00 00 */ cmpwi r5, 0 +/* 80157E1C 00154D7C 40 80 00 0C */ bge lbl_80157E28 +/* 80157E20 00154D80 48 00 00 C4 */ b lbl_80157EE4 +/* 80157E24 00154D84 48 00 00 C0 */ b lbl_80157EE4 +lbl_80157E28: +/* 80157E28 00154D88 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 80157E2C 00154D8C C0 62 9E 50 */ lfs f3, lbl_805ABB70@sda21(r2) +/* 80157E30 00154D90 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 80157E34 00154D94 C0 84 00 50 */ lfs f4, 0x50(r4) +/* 80157E38 00154D98 EC 00 18 2A */ fadds f0, f0, f3 +/* 80157E3C 00154D9C C0 44 00 60 */ lfs f2, 0x60(r4) +/* 80157E40 00154DA0 C0 22 9E 68 */ lfs f1, lbl_805ABB88@sda21(r2) +/* 80157E44 00154DA4 EC 64 18 2A */ fadds f3, f4, f3 +/* 80157E48 00154DA8 D0 03 05 F8 */ stfs f0, 0x5f8(r3) +/* 80157E4C 00154DAC EC 02 08 2A */ fadds f0, f2, f1 +/* 80157E50 00154DB0 D0 63 05 FC */ stfs f3, 0x5fc(r3) +/* 80157E54 00154DB4 D0 03 06 00 */ stfs f0, 0x600(r3) +/* 80157E58 00154DB8 48 00 00 8C */ b lbl_80157EE4 +lbl_80157E5C: +/* 80157E5C 00154DBC C0 43 00 58 */ lfs f2, 0x58(r3) +/* 80157E60 00154DC0 38 81 00 20 */ addi r4, r1, 0x20 +/* 80157E64 00154DC4 C0 23 00 48 */ lfs f1, 0x48(r3) +/* 80157E68 00154DC8 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80157E6C 00154DCC C0 03 00 38 */ lfs f0, 0x38(r3) +/* 80157E70 00154DD0 D0 01 00 08 */ stfs f0, 8(r1) +/* 80157E74 00154DD4 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80157E78 00154DD8 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 80157E7C 00154DDC C0 43 00 5C */ lfs f2, 0x5c(r3) +/* 80157E80 00154DE0 C0 23 00 4C */ lfs f1, 0x4c(r3) +/* 80157E84 00154DE4 C0 03 00 3C */ lfs f0, 0x3c(r3) +/* 80157E88 00154DE8 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80157E8C 00154DEC D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80157E90 00154DF0 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 80157E94 00154DF4 C0 23 05 FC */ lfs f1, 0x5fc(r3) +/* 80157E98 00154DF8 C0 03 00 50 */ lfs f0, 0x50(r3) +/* 80157E9C 00154DFC C0 63 06 00 */ lfs f3, 0x600(r3) +/* 80157EA0 00154E00 C0 43 00 60 */ lfs f2, 0x60(r3) +/* 80157EA4 00154E04 EC 81 00 28 */ fsubs f4, f1, f0 +/* 80157EA8 00154E08 C0 23 05 F8 */ lfs f1, 0x5f8(r3) +/* 80157EAC 00154E0C C0 03 00 40 */ lfs f0, 0x40(r3) +/* 80157EB0 00154E10 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80157EB4 00154E14 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80157EB8 00154E18 D0 81 00 24 */ stfs f4, 0x24(r1) +/* 80157EBC 00154E1C D0 41 00 28 */ stfs f2, 0x28(r1) +/* 80157EC0 00154E20 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 80157EC4 00154E24 83 E3 04 50 */ lwz r31, 0x450(r3) +/* 80157EC8 00154E28 38 61 00 2C */ addi r3, r1, 0x2c +/* 80157ECC 00154E2C 48 11 12 D1 */ bl ProjectVectorToPlane__11CWallWalkerFRC9CVector3fRC9CVector3f +/* 80157ED0 00154E30 C0 22 9E 58 */ lfs f1, lbl_805ABB78@sda21(r2) +/* 80157ED4 00154E34 7F E3 FB 78 */ mr r3, r31 +/* 80157ED8 00154E38 38 81 00 2C */ addi r4, r1, 0x2c +/* 80157EDC 00154E3C 38 A1 00 08 */ addi r5, r1, 8 +/* 80157EE0 00154E40 4B FE 25 89 */ bl FaceDirection3D__15CBodyControllerFRC9CVector3ff +lbl_80157EE4: +/* 80157EE4 00154E44 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80157EE8 00154E48 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80157EEC 00154E4C 7C 08 03 A6 */ mtlr r0 +/* 80157EF0 00154E50 38 21 00 40 */ addi r1, r1, 0x40 +/* 80157EF4 00154E54 4E 80 00 20 */ blr + +.global Retreat__9CParasiteFR13CStateManager9EStateMsgf +Retreat__9CParasiteFR13CStateManager9EStateMsgf: +/* 80157EF8 00154E58 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80157EFC 00154E5C 7C 08 02 A6 */ mflr r0 +/* 80157F00 00154E60 2C 05 00 01 */ cmpwi r5, 1 +/* 80157F04 00154E64 90 01 00 64 */ stw r0, 0x64(r1) +/* 80157F08 00154E68 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 80157F0C 00154E6C 7C 7F 1B 78 */ mr r31, r3 +/* 80157F10 00154E70 93 C1 00 58 */ stw r30, 0x58(r1) +/* 80157F14 00154E74 7C 9E 23 78 */ mr r30, r4 +/* 80157F18 00154E78 41 82 02 30 */ beq lbl_80158148 +/* 80157F1C 00154E7C 40 80 00 10 */ bge lbl_80157F2C +/* 80157F20 00154E80 2C 05 00 00 */ cmpwi r5, 0 +/* 80157F24 00154E84 40 80 00 14 */ bge lbl_80157F38 +/* 80157F28 00154E88 48 00 02 3C */ b lbl_80158164 +lbl_80157F2C: +/* 80157F2C 00154E8C 2C 05 00 03 */ cmpwi r5, 3 +/* 80157F30 00154E90 40 80 02 34 */ bge lbl_80158164 +/* 80157F34 00154E94 48 00 02 20 */ b lbl_80158154 +lbl_80157F38: +/* 80157F38 00154E98 80 9E 08 4C */ lwz r4, 0x84c(r30) +/* 80157F3C 00154E9C 38 61 00 20 */ addi r3, r1, 0x20 +/* 80157F40 00154EA0 C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 80157F44 00154EA4 C0 24 00 60 */ lfs f1, 0x60(r4) +/* 80157F48 00154EA8 C0 84 00 50 */ lfs f4, 0x50(r4) +/* 80157F4C 00154EAC C0 7F 00 50 */ lfs f3, 0x50(r31) +/* 80157F50 00154EB0 EC A1 00 28 */ fsubs f5, f1, f0 +/* 80157F54 00154EB4 C0 44 00 40 */ lfs f2, 0x40(r4) +/* 80157F58 00154EB8 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 80157F5C 00154EBC EC 64 18 28 */ fsubs f3, f4, f3 +/* 80157F60 00154EC0 C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) +/* 80157F64 00154EC4 EC 22 08 28 */ fsubs f1, f2, f1 +/* 80157F68 00154EC8 D0 A1 00 28 */ stfs f5, 0x28(r1) +/* 80157F6C 00154ECC D0 61 00 24 */ stfs f3, 0x24(r1) +/* 80157F70 00154ED0 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 80157F74 00154ED4 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80157F78 00154ED8 48 1B C7 81 */ bl CanBeNormalized__9CVector3fCFv +/* 80157F7C 00154EDC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80157F80 00154EE0 41 82 00 2C */ beq lbl_80157FAC +/* 80157F84 00154EE4 38 61 00 14 */ addi r3, r1, 0x14 +/* 80157F88 00154EE8 38 81 00 20 */ addi r4, r1, 0x20 +/* 80157F8C 00154EEC 48 1B C8 C5 */ bl AsNormalized__9CVector3fCFv +/* 80157F90 00154EF0 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 80157F94 00154EF4 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 80157F98 00154EF8 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 80157F9C 00154EFC D0 41 00 20 */ stfs f2, 0x20(r1) +/* 80157FA0 00154F00 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 80157FA4 00154F04 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80157FA8 00154F08 48 00 00 20 */ b lbl_80157FC8 +lbl_80157FAC: +/* 80157FAC 00154F0C 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 80157FB0 00154F10 C0 43 00 58 */ lfs f2, 0x58(r3) +/* 80157FB4 00154F14 C0 23 00 48 */ lfs f1, 0x48(r3) +/* 80157FB8 00154F18 C0 03 00 38 */ lfs f0, 0x38(r3) +/* 80157FBC 00154F1C D0 01 00 20 */ stfs f0, 0x20(r1) +/* 80157FC0 00154F20 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 80157FC4 00154F24 D0 41 00 28 */ stfs f2, 0x28(r1) +lbl_80157FC8: +/* 80157FC8 00154F28 C0 A2 9E 6C */ lfs f5, lbl_805ABB8C@sda21(r2) +/* 80157FCC 00154F2C 7F E3 FB 78 */ mr r3, r31 +/* 80157FD0 00154F30 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 80157FD4 00154F34 38 81 00 08 */ addi r4, r1, 8 +/* 80157FD8 00154F38 C0 61 00 24 */ lfs f3, 0x24(r1) +/* 80157FDC 00154F3C EC 05 00 32 */ fmuls f0, f5, f0 +/* 80157FE0 00154F40 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 80157FE4 00154F44 C0 41 00 28 */ lfs f2, 0x28(r1) +/* 80157FE8 00154F48 EC 85 00 F2 */ fmuls f4, f5, f3 +/* 80157FEC 00154F4C C0 DF 00 50 */ lfs f6, 0x50(r31) +/* 80157FF0 00154F50 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80157FF4 00154F54 C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 80157FF8 00154F58 EC 25 00 B2 */ fmuls f1, f5, f2 +/* 80157FFC 00154F5C EC 46 20 28 */ fsubs f2, f6, f4 +/* 80158000 00154F60 D0 1F 05 F8 */ stfs f0, 0x5f8(r31) +/* 80158004 00154F64 EC 03 08 28 */ fsubs f0, f3, f1 +/* 80158008 00154F68 D0 5F 05 FC */ stfs f2, 0x5fc(r31) +/* 8015800C 00154F6C D0 1F 06 00 */ stfs f0, 0x600(r31) +/* 80158010 00154F70 80 BF 05 F8 */ lwz r5, 0x5f8(r31) +/* 80158014 00154F74 80 1F 05 FC */ lwz r0, 0x5fc(r31) +/* 80158018 00154F78 90 A1 00 08 */ stw r5, 8(r1) +/* 8015801C 00154F7C 90 01 00 0C */ stw r0, 0xc(r1) +/* 80158020 00154F80 80 1F 06 00 */ lwz r0, 0x600(r31) +/* 80158024 00154F84 90 01 00 10 */ stw r0, 0x10(r1) +/* 80158028 00154F88 48 00 05 21 */ bl FaceTarget__9CParasiteF9CVector3f +/* 8015802C 00154F8C 39 60 00 00 */ li r11, 0 +/* 80158030 00154F90 39 20 00 01 */ li r9, 1 +/* 80158034 00154F94 91 7F 05 E8 */ stw r11, 0x5e8(r31) +/* 80158038 00154F98 3C A0 80 3E */ lis r5, lbl_803DAA68@ha +/* 8015803C 00154F9C 88 61 00 50 */ lbz r3, 0x50(r1) +/* 80158040 00154FA0 51 63 3E 30 */ rlwimi r3, r11, 7, 0x18, 0x18 +/* 80158044 00154FA4 88 1F 07 42 */ lbz r0, 0x742(r31) +/* 80158048 00154FA8 51 60 26 F6 */ rlwimi r0, r11, 4, 0x1b, 0x1b +/* 8015804C 00154FAC 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80158050 00154FB0 39 05 AA 68 */ addi r8, r5, lbl_803DAA68@l +/* 80158054 00154FB4 98 1F 07 42 */ stb r0, 0x742(r31) +/* 80158058 00154FB8 3C C0 80 3E */ lis r6, lbl_803DA9FC@ha +/* 8015805C 00154FBC 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 80158060 00154FC0 38 E0 00 10 */ li r7, 0x10 +/* 80158064 00154FC4 89 5F 07 42 */ lbz r10, 0x742(r31) +/* 80158068 00154FC8 51 6A 1F 38 */ rlwimi r10, r11, 3, 0x1c, 0x1c +/* 8015806C 00154FCC 38 A4 66 A0 */ addi r5, r4, skZero3f@l +/* 80158070 00154FD0 91 01 00 2C */ stw r8, 0x2c(r1) +/* 80158074 00154FD4 38 C6 A9 FC */ addi r6, r6, lbl_803DA9FC@l +/* 80158078 00154FD8 51 60 36 72 */ rlwimi r0, r11, 6, 0x19, 0x19 +/* 8015807C 00154FDC 99 5F 07 42 */ stb r10, 0x742(r31) +/* 80158080 00154FE0 38 80 00 10 */ li r4, 0x10 +/* 80158084 00154FE4 89 1F 07 42 */ lbz r8, 0x742(r31) +/* 80158088 00154FE8 51 28 36 72 */ rlwimi r8, r9, 6, 0x19, 0x19 +/* 8015808C 00154FEC 98 61 00 50 */ stb r3, 0x50(r1) +/* 80158090 00154FF0 99 1F 07 42 */ stb r8, 0x742(r31) +/* 80158094 00154FF4 C0 BF 05 F8 */ lfs f5, 0x5f8(r31) +/* 80158098 00154FF8 C0 9F 05 FC */ lfs f4, 0x5fc(r31) +/* 8015809C 00154FFC C0 7F 06 00 */ lfs f3, 0x600(r31) +/* 801580A0 00155000 C0 45 00 00 */ lfs f2, 0(r5) +/* 801580A4 00155004 C0 25 00 04 */ lfs f1, 4(r5) +/* 801580A8 00155008 C0 05 00 08 */ lfs f0, 8(r5) +/* 801580AC 0015500C 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801580B0 00155010 90 E1 00 30 */ stw r7, 0x30(r1) +/* 801580B4 00155014 3B E3 00 04 */ addi r31, r3, 4 +/* 801580B8 00155018 90 C1 00 2C */ stw r6, 0x2c(r1) +/* 801580BC 0015501C 7F E3 FB 78 */ mr r3, r31 +/* 801580C0 00155020 91 21 00 34 */ stw r9, 0x34(r1) +/* 801580C4 00155024 D0 A1 00 38 */ stfs f5, 0x38(r1) +/* 801580C8 00155028 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 801580CC 0015502C D0 61 00 40 */ stfs f3, 0x40(r1) +/* 801580D0 00155030 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801580D4 00155034 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 801580D8 00155038 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 801580DC 0015503C 98 01 00 50 */ stb r0, 0x50(r1) +/* 801580E0 00155040 4B FD 93 59 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801580E4 00155044 80 01 00 30 */ lwz r0, 0x30(r1) +/* 801580E8 00155048 3C 60 80 3E */ lis r3, lbl_803DA9FC@ha +/* 801580EC 0015504C 38 83 A9 FC */ addi r4, r3, lbl_803DA9FC@l +/* 801580F0 00155050 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801580F4 00155054 90 1F 01 D4 */ stw r0, 0x1d4(r31) +/* 801580F8 00155058 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801580FC 0015505C 80 A1 00 34 */ lwz r5, 0x34(r1) +/* 80158100 00155060 80 61 00 38 */ lwz r3, 0x38(r1) +/* 80158104 00155064 90 BF 01 D8 */ stw r5, 0x1d8(r31) +/* 80158108 00155068 80 A1 00 3C */ lwz r5, 0x3c(r1) +/* 8015810C 0015506C 90 7F 01 DC */ stw r3, 0x1dc(r31) +/* 80158110 00155070 80 61 00 40 */ lwz r3, 0x40(r1) +/* 80158114 00155074 90 BF 01 E0 */ stw r5, 0x1e0(r31) +/* 80158118 00155078 80 A1 00 44 */ lwz r5, 0x44(r1) +/* 8015811C 0015507C 90 7F 01 E4 */ stw r3, 0x1e4(r31) +/* 80158120 00155080 80 61 00 48 */ lwz r3, 0x48(r1) +/* 80158124 00155084 90 BF 01 E8 */ stw r5, 0x1e8(r31) +/* 80158128 00155088 80 A1 00 4C */ lwz r5, 0x4c(r1) +/* 8015812C 0015508C 90 7F 01 EC */ stw r3, 0x1ec(r31) +/* 80158130 00155090 88 61 00 50 */ lbz r3, 0x50(r1) +/* 80158134 00155094 90 BF 01 F0 */ stw r5, 0x1f0(r31) +/* 80158138 00155098 90 81 00 2C */ stw r4, 0x2c(r1) +/* 8015813C 0015509C 98 7F 01 F4 */ stb r3, 0x1f4(r31) +/* 80158140 001550A0 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80158144 001550A4 48 00 00 20 */ b lbl_80158164 +lbl_80158148: +/* 80158148 001550A8 C0 02 9E 60 */ lfs f0, lbl_805ABB80@sda21(r2) +/* 8015814C 001550AC D0 1F 03 B4 */ stfs f0, 0x3b4(r31) +/* 80158150 001550B0 48 00 00 14 */ b lbl_80158164 +lbl_80158154: +/* 80158154 001550B4 88 1F 07 42 */ lbz r0, 0x742(r31) +/* 80158158 001550B8 38 60 00 01 */ li r3, 1 +/* 8015815C 001550BC 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 80158160 001550C0 98 1F 07 42 */ stb r0, 0x742(r31) +lbl_80158164: +/* 80158164 001550C4 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80158168 001550C8 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8015816C 001550CC 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 80158170 001550D0 7C 08 03 A6 */ mtlr r0 +/* 80158174 001550D4 38 21 00 60 */ addi r1, r1, 0x60 +/* 80158178 001550D8 4E 80 00 20 */ blr + +.global Attack__9CParasiteFR13CStateManager9EStateMsgf +Attack__9CParasiteFR13CStateManager9EStateMsgf: +/* 8015817C 001550DC 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 80158180 001550E0 7C 08 02 A6 */ mflr r0 +/* 80158184 001550E4 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 80158188 001550E8 DB E1 00 D0 */ stfd f31, 0xd0(r1) +/* 8015818C 001550EC F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 +/* 80158190 001550F0 DB C1 00 C0 */ stfd f30, 0xc0(r1) +/* 80158194 001550F4 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 +/* 80158198 001550F8 DB A1 00 B0 */ stfd f29, 0xb0(r1) +/* 8015819C 001550FC F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0 +/* 801581A0 00155100 DB 81 00 A0 */ stfd f28, 0xa0(r1) +/* 801581A4 00155104 F3 81 00 A8 */ psq_st f28, 168(r1), 0, qr0 +/* 801581A8 00155108 DB 61 00 90 */ stfd f27, 0x90(r1) +/* 801581AC 0015510C F3 61 00 98 */ psq_st f27, 152(r1), 0, qr0 +/* 801581B0 00155110 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 801581B4 00155114 93 C1 00 88 */ stw r30, 0x88(r1) +/* 801581B8 00155118 93 A1 00 84 */ stw r29, 0x84(r1) +/* 801581BC 0015511C 2C 05 00 01 */ cmpwi r5, 1 +/* 801581C0 00155120 7C 7F 1B 78 */ mr r31, r3 +/* 801581C4 00155124 7C 9D 23 78 */ mr r29, r4 +/* 801581C8 00155128 41 82 01 CC */ beq lbl_80158394 +/* 801581CC 0015512C 40 80 00 10 */ bge lbl_801581DC +/* 801581D0 00155130 2C 05 00 00 */ cmpwi r5, 0 +/* 801581D4 00155134 40 80 00 14 */ bge lbl_801581E8 +/* 801581D8 00155138 48 00 03 2C */ b lbl_80158504 +lbl_801581DC: +/* 801581DC 0015513C 2C 05 00 03 */ cmpwi r5, 3 +/* 801581E0 00155140 40 80 03 24 */ bge lbl_80158504 +/* 801581E4 00155144 48 00 03 04 */ b lbl_801584E8 +lbl_801581E8: +/* 801581E8 00155148 C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) +/* 801581EC 0015514C D0 1F 06 08 */ stfs f0, 0x608(r31) +/* 801581F0 00155150 80 7D 08 4C */ lwz r3, 0x84c(r29) +/* 801581F4 00155154 83 DD 09 00 */ lwz r30, 0x900(r29) +/* 801581F8 00155158 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 801581FC 0015515C 2C 00 00 01 */ cmpwi r0, 1 +/* 80158200 00155160 40 82 00 6C */ bne lbl_8015826C +/* 80158204 00155164 7F C3 F3 78 */ mr r3, r30 +/* 80158208 00155168 48 1B A2 D5 */ bl Float__9CRandom16Fv +/* 8015820C 0015516C C0 02 9E 64 */ lfs f0, lbl_805ABB84@sda21(r2) +/* 80158210 00155170 7F C3 F3 78 */ mr r3, r30 +/* 80158214 00155174 EF C1 00 28 */ fsubs f30, f1, f0 +/* 80158218 00155178 48 1B A2 C5 */ bl Float__9CRandom16Fv +/* 8015821C 0015517C C0 02 9E 64 */ lfs f0, lbl_805ABB84@sda21(r2) +/* 80158220 00155180 7F C3 F3 78 */ mr r3, r30 +/* 80158224 00155184 EF E1 00 28 */ fsubs f31, f1, f0 +/* 80158228 00155188 48 1B A2 B5 */ bl Float__9CRandom16Fv +/* 8015822C 0015518C C0 02 9E 64 */ lfs f0, lbl_805ABB84@sda21(r2) +/* 80158230 00155190 80 7D 08 4C */ lwz r3, 0x84c(r29) +/* 80158234 00155194 EC 61 00 28 */ fsubs f3, f1, f0 +/* 80158238 00155198 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 8015823C 0015519C EC 80 07 F2 */ fmuls f4, f0, f31 +/* 80158240 001551A0 C0 A3 00 50 */ lfs f5, 0x50(r3) +/* 80158244 001551A4 EC 40 07 B2 */ fmuls f2, f0, f30 +/* 80158248 001551A8 EC 00 00 F2 */ fmuls f0, f0, f3 +/* 8015824C 001551AC C0 63 00 60 */ lfs f3, 0x60(r3) +/* 80158250 001551B0 EC 85 20 2A */ fadds f4, f5, f4 +/* 80158254 001551B4 EC 01 00 2A */ fadds f0, f1, f0 +/* 80158258 001551B8 EC 23 10 2A */ fadds f1, f3, f2 +/* 8015825C 001551BC D0 1F 05 F8 */ stfs f0, 0x5f8(r31) +/* 80158260 001551C0 D0 9F 05 FC */ stfs f4, 0x5fc(r31) +/* 80158264 001551C4 D0 3F 06 00 */ stfs f1, 0x600(r31) +/* 80158268 001551C8 48 00 00 D8 */ b lbl_80158340 +lbl_8015826C: +/* 8015826C 001551CC C3 7F 00 60 */ lfs f27, 0x60(r31) +/* 80158270 001551D0 7F C3 F3 78 */ mr r3, r30 +/* 80158274 001551D4 C3 9F 00 50 */ lfs f28, 0x50(r31) +/* 80158278 001551D8 C3 BF 00 40 */ lfs f29, 0x40(r31) +/* 8015827C 001551DC 48 1B A2 61 */ bl Float__9CRandom16Fv +/* 80158280 001551E0 C0 02 9E 64 */ lfs f0, lbl_805ABB84@sda21(r2) +/* 80158284 001551E4 7F C3 F3 78 */ mr r3, r30 +/* 80158288 001551E8 EF E0 08 2A */ fadds f31, f0, f1 +/* 8015828C 001551EC 48 1B A2 51 */ bl Float__9CRandom16Fv +/* 80158290 001551F0 C0 02 9E 64 */ lfs f0, lbl_805ABB84@sda21(r2) +/* 80158294 001551F4 7F C3 F3 78 */ mr r3, r30 +/* 80158298 001551F8 EF C1 00 28 */ fsubs f30, f1, f0 +/* 8015829C 001551FC 48 1B A2 41 */ bl Float__9CRandom16Fv +/* 801582A0 00155200 C0 02 9E 64 */ lfs f0, lbl_805ABB84@sda21(r2) +/* 801582A4 00155204 38 61 00 44 */ addi r3, r1, 0x44 +/* 801582A8 00155208 80 BD 08 4C */ lwz r5, 0x84c(r29) +/* 801582AC 0015520C 38 81 00 38 */ addi r4, r1, 0x38 +/* 801582B0 00155210 EC 21 00 28 */ fsubs f1, f1, f0 +/* 801582B4 00155214 C0 C5 00 60 */ lfs f6, 0x60(r5) +/* 801582B8 00155218 C0 85 00 50 */ lfs f4, 0x50(r5) +/* 801582BC 0015521C C0 05 00 40 */ lfs f0, 0x40(r5) +/* 801582C0 00155220 EC 46 F8 2A */ fadds f2, f6, f31 +/* 801582C4 00155224 EC 64 F0 2A */ fadds f3, f4, f30 +/* 801582C8 00155228 D0 81 00 24 */ stfs f4, 0x24(r1) +/* 801582CC 0015522C EC 20 08 2A */ fadds f1, f0, f1 +/* 801582D0 00155230 EC 82 D8 28 */ fsubs f4, f2, f27 +/* 801582D4 00155234 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801582D8 00155238 EC A3 E0 28 */ fsubs f5, f3, f28 +/* 801582DC 0015523C EC 01 E8 28 */ fsubs f0, f1, f29 +/* 801582E0 00155240 D0 C1 00 28 */ stfs f6, 0x28(r1) +/* 801582E4 00155244 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801582E8 00155248 D0 61 00 30 */ stfs f3, 0x30(r1) +/* 801582EC 0015524C D0 41 00 34 */ stfs f2, 0x34(r1) +/* 801582F0 00155250 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801582F4 00155254 D0 A1 00 3C */ stfs f5, 0x3c(r1) +/* 801582F8 00155258 D0 81 00 40 */ stfs f4, 0x40(r1) +/* 801582FC 0015525C 48 1B C5 55 */ bl AsNormalized__9CVector3fCFv +/* 80158300 00155260 C0 A2 9E 70 */ lfs f5, lbl_805ABB90@sda21(r2) +/* 80158304 00155264 C0 01 00 44 */ lfs f0, 0x44(r1) +/* 80158308 00155268 C0 61 00 48 */ lfs f3, 0x48(r1) +/* 8015830C 0015526C EC 05 00 32 */ fmuls f0, f5, f0 +/* 80158310 00155270 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 80158314 00155274 C0 41 00 4C */ lfs f2, 0x4c(r1) +/* 80158318 00155278 EC 85 00 F2 */ fmuls f4, f5, f3 +/* 8015831C 0015527C C0 DF 00 50 */ lfs f6, 0x50(r31) +/* 80158320 00155280 EC 01 00 2A */ fadds f0, f1, f0 +/* 80158324 00155284 C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 80158328 00155288 EC 25 00 B2 */ fmuls f1, f5, f2 +/* 8015832C 0015528C EC 46 20 2A */ fadds f2, f6, f4 +/* 80158330 00155290 D0 1F 05 F8 */ stfs f0, 0x5f8(r31) +/* 80158334 00155294 EC 03 08 2A */ fadds f0, f3, f1 +/* 80158338 00155298 D0 5F 05 FC */ stfs f2, 0x5fc(r31) +/* 8015833C 0015529C D0 1F 06 00 */ stfs f0, 0x600(r31) +lbl_80158340: +/* 80158340 001552A0 80 BF 05 F8 */ lwz r5, 0x5f8(r31) +/* 80158344 001552A4 7F E3 FB 78 */ mr r3, r31 +/* 80158348 001552A8 80 1F 05 FC */ lwz r0, 0x5fc(r31) +/* 8015834C 001552AC 38 81 00 14 */ addi r4, r1, 0x14 +/* 80158350 001552B0 90 A1 00 14 */ stw r5, 0x14(r1) +/* 80158354 001552B4 90 01 00 18 */ stw r0, 0x18(r1) +/* 80158358 001552B8 80 1F 06 00 */ lwz r0, 0x600(r31) +/* 8015835C 001552BC 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80158360 001552C0 48 00 01 E9 */ bl FaceTarget__9CParasiteF9CVector3f +/* 80158364 001552C4 38 60 00 00 */ li r3, 0 +/* 80158368 001552C8 90 7F 05 E8 */ stw r3, 0x5e8(r31) +/* 8015836C 001552CC 88 1F 07 42 */ lbz r0, 0x742(r31) +/* 80158370 001552D0 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 80158374 001552D4 98 1F 07 42 */ stb r0, 0x742(r31) +/* 80158378 001552D8 88 1F 07 42 */ lbz r0, 0x742(r31) +/* 8015837C 001552DC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80158380 001552E0 98 1F 07 42 */ stb r0, 0x742(r31) +/* 80158384 001552E4 88 1F 07 42 */ lbz r0, 0x742(r31) +/* 80158388 001552E8 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 8015838C 001552EC 98 1F 07 42 */ stb r0, 0x742(r31) +/* 80158390 001552F0 48 00 01 74 */ b lbl_80158504 +lbl_80158394: +/* 80158394 001552F4 80 1F 05 E8 */ lwz r0, 0x5e8(r31) +/* 80158398 001552F8 2C 00 00 01 */ cmpwi r0, 1 +/* 8015839C 001552FC 41 82 01 68 */ beq lbl_80158504 +/* 801583A0 00155300 40 80 01 64 */ bge lbl_80158504 +/* 801583A4 00155304 2C 00 00 00 */ cmpwi r0, 0 +/* 801583A8 00155308 40 80 00 08 */ bge lbl_801583B0 +/* 801583AC 0015530C 48 00 01 58 */ b lbl_80158504 +lbl_801583B0: +/* 801583B0 00155310 80 9F 04 50 */ lwz r4, 0x450(r31) +/* 801583B4 00155314 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 801583B8 00155318 2C 00 00 0D */ cmpwi r0, 0xd +/* 801583BC 0015531C 40 82 00 10 */ bne lbl_801583CC +/* 801583C0 00155320 38 00 00 01 */ li r0, 1 +/* 801583C4 00155324 90 1F 05 E8 */ stw r0, 0x5e8(r31) +/* 801583C8 00155328 48 00 01 3C */ b lbl_80158504 +lbl_801583CC: +/* 801583CC 0015532C 88 1F 07 42 */ lbz r0, 0x742(r31) +/* 801583D0 00155330 38 80 00 01 */ li r4, 1 +/* 801583D4 00155334 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 801583D8 00155338 38 81 00 08 */ addi r4, r1, 8 +/* 801583DC 0015533C 98 1F 07 42 */ stb r0, 0x742(r31) +/* 801583E0 00155340 80 BF 05 F8 */ lwz r5, 0x5f8(r31) +/* 801583E4 00155344 80 1F 05 FC */ lwz r0, 0x5fc(r31) +/* 801583E8 00155348 90 A1 00 08 */ stw r5, 8(r1) +/* 801583EC 0015534C 90 01 00 0C */ stw r0, 0xc(r1) +/* 801583F0 00155350 80 1F 06 00 */ lwz r0, 0x600(r31) +/* 801583F4 00155354 90 01 00 10 */ stw r0, 0x10(r1) +/* 801583F8 00155358 48 00 01 51 */ bl FaceTarget__9CParasiteF9CVector3f +/* 801583FC 0015535C 3C C0 80 3E */ lis r6, lbl_803DAA68@ha +/* 80158400 00155360 38 A0 00 00 */ li r5, 0 +/* 80158404 00155364 39 06 AA 68 */ addi r8, r6, lbl_803DAA68@l +/* 80158408 00155368 88 61 00 74 */ lbz r3, 0x74(r1) +/* 8015840C 0015536C 50 A3 3E 30 */ rlwimi r3, r5, 7, 0x18, 0x18 +/* 80158410 00155370 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80158414 00155374 C4 44 66 A0 */ lfsu f2, skZero3f@l(r4) +/* 80158418 00155378 3C C0 80 3E */ lis r6, lbl_803DA9FC@ha +/* 8015841C 0015537C C0 BF 05 F8 */ lfs f5, 0x5f8(r31) +/* 80158420 00155380 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 80158424 00155384 C0 9F 05 FC */ lfs f4, 0x5fc(r31) +/* 80158428 00155388 38 E0 00 10 */ li r7, 0x10 +/* 8015842C 0015538C C0 7F 06 00 */ lfs f3, 0x600(r31) +/* 80158430 00155390 38 C6 A9 FC */ addi r6, r6, lbl_803DA9FC@l +/* 80158434 00155394 C0 24 00 04 */ lfs f1, 4(r4) +/* 80158438 00155398 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 8015843C 0015539C C0 04 00 08 */ lfs f0, 8(r4) +/* 80158440 001553A0 38 80 00 10 */ li r4, 0x10 +/* 80158444 001553A4 98 61 00 74 */ stb r3, 0x74(r1) +/* 80158448 001553A8 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8015844C 001553AC 91 01 00 50 */ stw r8, 0x50(r1) +/* 80158450 001553B0 3B C3 00 04 */ addi r30, r3, 4 +/* 80158454 001553B4 90 E1 00 54 */ stw r7, 0x54(r1) +/* 80158458 001553B8 7F C3 F3 78 */ mr r3, r30 +/* 8015845C 001553BC 90 C1 00 50 */ stw r6, 0x50(r1) +/* 80158460 001553C0 90 A1 00 58 */ stw r5, 0x58(r1) +/* 80158464 001553C4 D0 A1 00 5C */ stfs f5, 0x5c(r1) +/* 80158468 001553C8 D0 81 00 60 */ stfs f4, 0x60(r1) +/* 8015846C 001553CC D0 61 00 64 */ stfs f3, 0x64(r1) +/* 80158470 001553D0 D0 41 00 68 */ stfs f2, 0x68(r1) +/* 80158474 001553D4 D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 80158478 001553D8 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 8015847C 001553DC 98 01 00 74 */ stb r0, 0x74(r1) +/* 80158480 001553E0 4B FD 8F B9 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80158484 001553E4 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80158488 001553E8 3C 60 80 3E */ lis r3, lbl_803DA9FC@ha +/* 8015848C 001553EC 38 83 A9 FC */ addi r4, r3, lbl_803DA9FC@l +/* 80158490 001553F0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80158494 001553F4 90 1E 01 D4 */ stw r0, 0x1d4(r30) +/* 80158498 001553F8 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8015849C 001553FC 80 A1 00 58 */ lwz r5, 0x58(r1) +/* 801584A0 00155400 80 61 00 5C */ lwz r3, 0x5c(r1) +/* 801584A4 00155404 90 BE 01 D8 */ stw r5, 0x1d8(r30) +/* 801584A8 00155408 80 A1 00 60 */ lwz r5, 0x60(r1) +/* 801584AC 0015540C 90 7E 01 DC */ stw r3, 0x1dc(r30) +/* 801584B0 00155410 80 61 00 64 */ lwz r3, 0x64(r1) +/* 801584B4 00155414 90 BE 01 E0 */ stw r5, 0x1e0(r30) +/* 801584B8 00155418 80 A1 00 68 */ lwz r5, 0x68(r1) +/* 801584BC 0015541C 90 7E 01 E4 */ stw r3, 0x1e4(r30) +/* 801584C0 00155420 80 61 00 6C */ lwz r3, 0x6c(r1) +/* 801584C4 00155424 90 BE 01 E8 */ stw r5, 0x1e8(r30) +/* 801584C8 00155428 80 A1 00 70 */ lwz r5, 0x70(r1) +/* 801584CC 0015542C 90 7E 01 EC */ stw r3, 0x1ec(r30) +/* 801584D0 00155430 88 61 00 74 */ lbz r3, 0x74(r1) +/* 801584D4 00155434 90 BE 01 F0 */ stw r5, 0x1f0(r30) +/* 801584D8 00155438 90 81 00 50 */ stw r4, 0x50(r1) +/* 801584DC 0015543C 98 7E 01 F4 */ stb r3, 0x1f4(r30) +/* 801584E0 00155440 90 01 00 50 */ stw r0, 0x50(r1) +/* 801584E4 00155444 48 00 00 20 */ b lbl_80158504 +lbl_801584E8: +/* 801584E8 00155448 88 1F 07 42 */ lbz r0, 0x742(r31) +/* 801584EC 0015544C 38 60 00 01 */ li r3, 1 +/* 801584F0 00155450 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801584F4 00155454 98 1F 07 42 */ stb r0, 0x742(r31) +/* 801584F8 00155458 88 1F 07 42 */ lbz r0, 0x742(r31) +/* 801584FC 0015545C 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 80158500 00155460 98 1F 07 42 */ stb r0, 0x742(r31) +lbl_80158504: +/* 80158504 00155464 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 +/* 80158508 00155468 CB E1 00 D0 */ lfd f31, 0xd0(r1) +/* 8015850C 0015546C E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 +/* 80158510 00155470 CB C1 00 C0 */ lfd f30, 0xc0(r1) +/* 80158514 00155474 E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0 +/* 80158518 00155478 CB A1 00 B0 */ lfd f29, 0xb0(r1) +/* 8015851C 0015547C E3 81 00 A8 */ psq_l f28, 168(r1), 0, qr0 +/* 80158520 00155480 CB 81 00 A0 */ lfd f28, 0xa0(r1) +/* 80158524 00155484 E3 61 00 98 */ psq_l f27, 152(r1), 0, qr0 +/* 80158528 00155488 CB 61 00 90 */ lfd f27, 0x90(r1) +/* 8015852C 0015548C 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 80158530 00155490 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 80158534 00155494 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 80158538 00155498 83 A1 00 84 */ lwz r29, 0x84(r1) +/* 8015853C 0015549C 7C 08 03 A6 */ mtlr r0 +/* 80158540 001554A0 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 80158544 001554A4 4E 80 00 20 */ blr + +.global FaceTarget__9CParasiteF9CVector3f +FaceTarget__9CParasiteF9CVector3f: +/* 80158548 001554A8 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 8015854C 001554AC 7C 08 02 A6 */ mflr r0 +/* 80158550 001554B0 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 80158554 001554B4 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 80158558 001554B8 7C 7F 1B 78 */ mr r31, r3 +/* 8015855C 001554BC 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 80158560 001554C0 C0 24 00 08 */ lfs f1, 8(r4) +/* 80158564 001554C4 38 A3 66 70 */ addi r5, r3, skIdentity4f@l +/* 80158568 001554C8 C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 8015856C 001554CC 38 61 00 18 */ addi r3, r1, 0x18 +/* 80158570 001554D0 C0 64 00 04 */ lfs f3, 4(r4) +/* 80158574 001554D4 EC 81 00 28 */ fsubs f4, f1, f0 +/* 80158578 001554D8 C0 5F 00 50 */ lfs f2, 0x50(r31) +/* 8015857C 001554DC C0 24 00 00 */ lfs f1, 0(r4) +/* 80158580 001554E0 38 81 00 50 */ addi r4, r1, 0x50 +/* 80158584 001554E4 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 80158588 001554E8 EC C3 10 28 */ fsubs f6, f3, f2 +/* 8015858C 001554EC EC A1 00 28 */ fsubs f5, f1, f0 +/* 80158590 001554F0 C0 62 9E 74 */ lfs f3, lbl_805ABB94@sda21(r2) +/* 80158594 001554F4 C0 45 00 04 */ lfs f2, 4(r5) +/* 80158598 001554F8 C0 25 00 14 */ lfs f1, 0x14(r5) +/* 8015859C 001554FC C0 05 00 24 */ lfs f0, 0x24(r5) +/* 801585A0 00155500 D0 81 00 58 */ stfs f4, 0x58(r1) +/* 801585A4 00155504 C0 82 9E 50 */ lfs f4, lbl_805ABB70@sda21(r2) +/* 801585A8 00155508 D0 A1 00 50 */ stfs f5, 0x50(r1) +/* 801585AC 0015550C D0 C1 00 54 */ stfs f6, 0x54(r1) +/* 801585B0 00155510 D0 81 00 58 */ stfs f4, 0x58(r1) +/* 801585B4 00155514 D0 61 00 08 */ stfs f3, 8(r1) +/* 801585B8 00155518 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 801585BC 0015551C D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801585C0 00155520 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801585C4 00155524 48 1B B8 0D */ bl __ct__11CUnitVectorFRC9CVector3f +/* 801585C8 00155528 7C 65 1B 78 */ mr r5, r3 +/* 801585CC 0015552C 38 61 00 30 */ addi r3, r1, 0x30 +/* 801585D0 00155530 38 81 00 24 */ addi r4, r1, 0x24 +/* 801585D4 00155534 38 C1 00 08 */ addi r6, r1, 8 +/* 801585D8 00155538 48 1B 90 BD */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 801585DC 0015553C C0 61 00 30 */ lfs f3, 0x30(r1) +/* 801585E0 00155540 38 61 00 5C */ addi r3, r1, 0x5c +/* 801585E4 00155544 C0 41 00 34 */ lfs f2, 0x34(r1) +/* 801585E8 00155548 38 81 00 40 */ addi r4, r1, 0x40 +/* 801585EC 0015554C C0 21 00 38 */ lfs f1, 0x38(r1) +/* 801585F0 00155550 38 A1 00 0C */ addi r5, r1, 0xc +/* 801585F4 00155554 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 801585F8 00155558 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 801585FC 0015555C D0 41 00 44 */ stfs f2, 0x44(r1) +/* 80158600 00155560 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 80158604 00155564 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 80158608 00155568 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8015860C 0015556C C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 80158610 00155570 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 80158614 00155574 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 80158618 00155578 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 8015861C 0015557C D0 41 00 14 */ stfs f2, 0x14(r1) +/* 80158620 00155580 48 1B 98 9D */ bl BuildTransform4f__11CQuaternionCFRC9CVector3f +/* 80158624 00155584 38 7F 00 34 */ addi r3, r31, 0x34 +/* 80158628 00155588 38 81 00 5C */ addi r4, r1, 0x5c +/* 8015862C 0015558C 48 1B A5 15 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80158630 00155590 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 80158634 00155594 38 60 00 01 */ li r3, 1 +/* 80158638 00155598 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8015863C 0015559C 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 80158640 001555A0 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 80158644 001555A4 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 80158648 001555A8 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 8015864C 001555AC 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 80158650 001555B0 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 80158654 001555B4 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 80158658 001555B8 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 8015865C 001555BC 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 80158660 001555C0 7C 08 03 A6 */ mtlr r0 +/* 80158664 001555C4 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 80158668 001555C8 4E 80 00 20 */ blr + +.global Patrol__9CParasiteFR13CStateManager9EStateMsgf +Patrol__9CParasiteFR13CStateManager9EStateMsgf: +/* 8015866C 001555CC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80158670 001555D0 7C 08 02 A6 */ mflr r0 +/* 80158674 001555D4 2C 05 00 01 */ cmpwi r5, 1 +/* 80158678 001555D8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015867C 001555DC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80158680 001555E0 7C 7F 1B 78 */ mr r31, r3 +/* 80158684 001555E4 93 C1 00 08 */ stw r30, 8(r1) +/* 80158688 001555E8 7C 9E 23 78 */ mr r30, r4 +/* 8015868C 001555EC 41 82 00 9C */ beq lbl_80158728 +/* 80158690 001555F0 40 80 00 10 */ bge lbl_801586A0 +/* 80158694 001555F4 2C 05 00 00 */ cmpwi r5, 0 +/* 80158698 001555F8 40 80 00 14 */ bge lbl_801586AC +/* 8015869C 001555FC 48 00 01 34 */ b lbl_801587D0 +lbl_801586A0: +/* 801586A0 00155600 2C 05 00 03 */ cmpwi r5, 3 +/* 801586A4 00155604 40 80 01 2C */ bge lbl_801587D0 +/* 801586A8 00155608 48 00 01 08 */ b lbl_801587B0 +lbl_801586AC: +/* 801586AC 0015560C 88 1F 07 42 */ lbz r0, 0x742(r31) +/* 801586B0 00155610 38 60 00 01 */ li r3, 1 +/* 801586B4 00155614 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801586B8 00155618 98 1F 07 42 */ stb r0, 0x742(r31) +/* 801586BC 0015561C 88 1F 05 D6 */ lbz r0, 0x5d6(r31) +/* 801586C0 00155620 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801586C4 00155624 98 1F 05 D6 */ stb r0, 0x5d6(r31) +/* 801586C8 00155628 88 1F 05 D6 */ lbz r0, 0x5d6(r31) +/* 801586CC 0015562C 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801586D0 00155630 40 82 00 1C */ bne lbl_801586EC +/* 801586D4 00155634 80 1F 05 D0 */ lwz r0, 0x5d0(r31) +/* 801586D8 00155638 2C 00 00 00 */ cmpwi r0, 0 +/* 801586DC 0015563C 40 82 00 10 */ bne lbl_801586EC +/* 801586E0 00155640 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801586E4 00155644 38 80 00 02 */ li r4, 2 +/* 801586E8 00155648 4B FE 22 F1 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +lbl_801586EC: +/* 801586EC 0015564C 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801586F0 00155650 C4 04 66 A0 */ lfsu f0, skZero3f@l(r4) +/* 801586F4 00155654 38 60 00 00 */ li r3, 0 +/* 801586F8 00155658 D0 1F 01 50 */ stfs f0, 0x150(r31) +/* 801586FC 0015565C C0 04 00 04 */ lfs f0, 4(r4) +/* 80158700 00155660 D0 1F 01 54 */ stfs f0, 0x154(r31) +/* 80158704 00155664 C0 04 00 08 */ lfs f0, 8(r4) +/* 80158708 00155668 D0 1F 01 58 */ stfs f0, 0x158(r31) +/* 8015870C 0015566C 88 1F 05 D6 */ lbz r0, 0x5d6(r31) +/* 80158710 00155670 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80158714 00155674 98 1F 05 D6 */ stb r0, 0x5d6(r31) +/* 80158718 00155678 88 1F 00 F8 */ lbz r0, 0xf8(r31) +/* 8015871C 0015567C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80158720 00155680 98 1F 00 F8 */ stb r0, 0xf8(r31) +/* 80158724 00155684 48 00 00 AC */ b lbl_801587D0 +lbl_80158728: +/* 80158728 00155688 C0 1F 05 BC */ lfs f0, 0x5bc(r31) +/* 8015872C 0015568C C0 42 9E 50 */ lfs f2, lbl_805ABB70@sda21(r2) +/* 80158730 00155690 FC 00 10 40 */ fcmpo cr0, f0, f2 +/* 80158734 00155694 40 81 00 40 */ ble lbl_80158774 +/* 80158738 00155698 C0 1F 05 BC */ lfs f0, 0x5bc(r31) +/* 8015873C 0015569C EC 00 08 28 */ fsubs f0, f0, f1 +/* 80158740 001556A0 D0 1F 05 BC */ stfs f0, 0x5bc(r31) +/* 80158744 001556A4 C0 1F 05 BC */ lfs f0, 0x5bc(r31) +/* 80158748 001556A8 FC 00 10 40 */ fcmpo cr0, f0, f2 +/* 8015874C 001556AC 4C 40 13 82 */ cror 2, 0, 2 +/* 80158750 001556B0 40 82 00 24 */ bne lbl_80158774 +/* 80158754 001556B4 80 1F 05 D0 */ lwz r0, 0x5d0(r31) +/* 80158758 001556B8 2C 00 00 00 */ cmpwi r0, 0 +/* 8015875C 001556BC 40 82 00 10 */ bne lbl_8015876C +/* 80158760 001556C0 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 80158764 001556C4 38 80 00 02 */ li r4, 2 +/* 80158768 001556C8 4B FE 22 71 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +lbl_8015876C: +/* 8015876C 001556CC C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) +/* 80158770 001556D0 D0 1F 05 BC */ stfs f0, 0x5bc(r31) +lbl_80158774: +/* 80158774 001556D4 7F E3 FB 78 */ mr r3, r31 +/* 80158778 001556D8 7F C4 F3 78 */ mr r4, r30 +/* 8015877C 001556DC 48 10 FF 71 */ bl GotoNextWaypoint__11CWallWalkerFR13CStateManager +/* 80158780 001556E0 C0 3F 05 BC */ lfs f1, 0x5bc(r31) +/* 80158784 001556E4 C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) +/* 80158788 001556E8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8015878C 001556EC 4C 40 13 82 */ cror 2, 0, 2 +/* 80158790 001556F0 40 82 00 40 */ bne lbl_801587D0 +/* 80158794 001556F4 88 1F 05 D6 */ lbz r0, 0x5d6(r31) +/* 80158798 001556F8 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 8015879C 001556FC 40 82 00 34 */ bne lbl_801587D0 +/* 801587A0 00155700 7F E3 FB 78 */ mr r3, r31 +/* 801587A4 00155704 7F C4 F3 78 */ mr r4, r30 +/* 801587A8 00155708 4B FF E8 D1 */ bl DoFlockingBehavior__9CParasiteFR13CStateManager +/* 801587AC 0015570C 48 00 00 24 */ b lbl_801587D0 +lbl_801587B0: +/* 801587B0 00155710 88 1F 05 D6 */ lbz r0, 0x5d6(r31) +/* 801587B4 00155714 38 60 00 00 */ li r3, 0 +/* 801587B8 00155718 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801587BC 0015571C 38 60 00 01 */ li r3, 1 +/* 801587C0 00155720 98 1F 05 D6 */ stb r0, 0x5d6(r31) +/* 801587C4 00155724 88 1F 00 F8 */ lbz r0, 0xf8(r31) +/* 801587C8 00155728 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801587CC 0015572C 98 1F 00 F8 */ stb r0, 0xf8(r31) +lbl_801587D0: +/* 801587D0 00155730 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801587D4 00155734 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801587D8 00155738 83 C1 00 08 */ lwz r30, 8(r1) +/* 801587DC 0015573C 7C 08 03 A6 */ mtlr r0 +/* 801587E0 00155740 38 21 00 10 */ addi r1, r1, 0x10 +/* 801587E4 00155744 4E 80 00 20 */ blr + +.global TargetPatrol__9CParasiteFR13CStateManager9EStateMsgf +TargetPatrol__9CParasiteFR13CStateManager9EStateMsgf: +/* 801587E8 00155748 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801587EC 0015574C 7C 08 02 A6 */ mflr r0 +/* 801587F0 00155750 2C 05 00 00 */ cmpwi r5, 0 +/* 801587F4 00155754 7C 86 23 78 */ mr r6, r4 +/* 801587F8 00155758 90 01 00 24 */ stw r0, 0x24(r1) +/* 801587FC 0015575C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80158800 00155760 7C 7F 1B 78 */ mr r31, r3 +/* 80158804 00155764 41 82 00 0C */ beq lbl_80158810 +/* 80158808 00155768 41 80 00 4C */ blt lbl_80158854 +/* 8015880C 0015576C 48 00 00 48 */ b lbl_80158854 +lbl_80158810: +/* 80158810 00155770 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80158814 00155774 7F E4 FB 78 */ mr r4, r31 +/* 80158818 00155778 38 E3 66 A0 */ addi r7, r3, skZero3f@l +/* 8015881C 0015577C 38 A0 00 0D */ li r5, 0xd +/* 80158820 00155780 C0 07 00 00 */ lfs f0, 0(r7) +/* 80158824 00155784 38 61 00 08 */ addi r3, r1, 8 +/* 80158828 00155788 D0 1F 01 50 */ stfs f0, 0x150(r31) +/* 8015882C 0015578C C0 07 00 04 */ lfs f0, 4(r7) +/* 80158830 00155790 D0 1F 01 54 */ stfs f0, 0x154(r31) +/* 80158834 00155794 C0 07 00 08 */ lfs f0, 8(r7) +/* 80158838 00155798 D0 1F 01 58 */ stfs f0, 0x158(r31) +/* 8015883C 0015579C 48 00 06 C5 */ bl GetClosestWaypointForState__9CParasiteCF18EScriptObjectStateR13CStateManager +/* 80158840 001557A0 A0 61 00 08 */ lhz r3, 8(r1) +/* 80158844 001557A4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80158848 001557A8 7C 03 00 40 */ cmplw r3, r0 +/* 8015884C 001557AC 41 82 00 08 */ beq lbl_80158854 +/* 80158850 001557B0 B0 7F 02 DC */ sth r3, 0x2dc(r31) +lbl_80158854: +/* 80158854 001557B4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80158858 001557B8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8015885C 001557BC 7C 08 03 A6 */ mtlr r0 +/* 80158860 001557C0 38 21 00 20 */ addi r1, r1, 0x20 +/* 80158864 001557C4 4E 80 00 20 */ blr + +.global Jump__9CParasiteFR13CStateManager9EStateMsgf +Jump__9CParasiteFR13CStateManager9EStateMsgf: +/* 80158868 001557C8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8015886C 001557CC 7C 08 02 A6 */ mflr r0 +/* 80158870 001557D0 2C 05 00 01 */ cmpwi r5, 1 +/* 80158874 001557D4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80158878 001557D8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8015887C 001557DC 7C 7F 1B 78 */ mr r31, r3 +/* 80158880 001557E0 41 82 00 90 */ beq lbl_80158910 +/* 80158884 001557E4 40 80 00 10 */ bge lbl_80158894 +/* 80158888 001557E8 2C 05 00 00 */ cmpwi r5, 0 +/* 8015888C 001557EC 40 80 00 14 */ bge lbl_801588A0 +/* 80158890 001557F0 48 00 01 00 */ b lbl_80158990 +lbl_80158894: +/* 80158894 001557F4 2C 05 00 03 */ cmpwi r5, 3 +/* 80158898 001557F8 40 80 00 F8 */ bge lbl_80158990 +/* 8015889C 001557FC 48 00 00 9C */ b lbl_80158938 +lbl_801588A0: +/* 801588A0 00155800 7C 85 23 78 */ mr r5, r4 +/* 801588A4 00155804 38 80 00 25 */ li r4, 0x25 +/* 801588A8 00155808 4B EF BA A9 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801588AC 0015580C 7F E3 FB 78 */ mr r3, r31 +/* 801588B0 00155810 81 9F 00 00 */ lwz r12, 0(r31) +/* 801588B4 00155814 81 8C 00 80 */ lwz r12, 0x80(r12) +/* 801588B8 00155818 7D 89 03 A6 */ mtctr r12 +/* 801588BC 0015581C 4E 80 04 21 */ bctrl +/* 801588C0 00155820 C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) +/* 801588C4 00155824 FC 20 08 50 */ fneg f1, f1 +/* 801588C8 00155828 38 80 00 00 */ li r4, 0 +/* 801588CC 0015582C 38 60 00 01 */ li r3, 1 +/* 801588D0 00155830 D0 1F 01 50 */ stfs f0, 0x150(r31) +/* 801588D4 00155834 D0 1F 01 54 */ stfs f0, 0x154(r31) +/* 801588D8 00155838 D0 3F 01 58 */ stfs f1, 0x158(r31) +/* 801588DC 0015583C 88 1F 07 42 */ lbz r0, 0x742(r31) +/* 801588E0 00155840 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c +/* 801588E4 00155844 98 1F 07 42 */ stb r0, 0x742(r31) +/* 801588E8 00155848 88 1F 05 D6 */ lbz r0, 0x5d6(r31) +/* 801588EC 0015584C 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 801588F0 00155850 98 1F 05 D6 */ stb r0, 0x5d6(r31) +/* 801588F4 00155854 88 1F 07 42 */ lbz r0, 0x742(r31) +/* 801588F8 00155858 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 801588FC 0015585C 98 1F 07 42 */ stb r0, 0x742(r31) +/* 80158900 00155860 88 1F 07 43 */ lbz r0, 0x743(r31) +/* 80158904 00155864 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 80158908 00155868 98 1F 07 43 */ stb r0, 0x743(r31) +/* 8015890C 0015586C 48 00 00 84 */ b lbl_80158990 +lbl_80158910: +/* 80158910 00155870 81 83 00 00 */ lwz r12, 0(r3) +/* 80158914 00155874 81 8C 00 80 */ lwz r12, 0x80(r12) +/* 80158918 00155878 7D 89 03 A6 */ mtctr r12 +/* 8015891C 0015587C 4E 80 04 21 */ bctrl +/* 80158920 00155880 C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) +/* 80158924 00155884 FC 20 08 50 */ fneg f1, f1 +/* 80158928 00155888 D0 1F 01 50 */ stfs f0, 0x150(r31) +/* 8015892C 0015588C D0 1F 01 54 */ stfs f0, 0x154(r31) +/* 80158930 00155890 D0 3F 01 58 */ stfs f1, 0x158(r31) +/* 80158934 00155894 48 00 00 5C */ b lbl_80158990 +lbl_80158938: +/* 80158938 00155898 7C 85 23 78 */ mr r5, r4 +/* 8015893C 0015589C 38 80 00 25 */ li r4, 0x25 +/* 80158940 001558A0 4B EF B6 41 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 80158944 001558A4 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80158948 001558A8 38 80 00 01 */ li r4, 1 +/* 8015894C 001558AC 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 80158950 001558B0 38 60 00 00 */ li r3, 0 +/* 80158954 001558B4 C0 05 00 00 */ lfs f0, 0(r5) +/* 80158958 001558B8 D0 1F 01 50 */ stfs f0, 0x150(r31) +/* 8015895C 001558BC C0 05 00 04 */ lfs f0, 4(r5) +/* 80158960 001558C0 D0 1F 01 54 */ stfs f0, 0x154(r31) +/* 80158964 001558C4 C0 05 00 08 */ lfs f0, 8(r5) +/* 80158968 001558C8 D0 1F 01 58 */ stfs f0, 0x158(r31) +/* 8015896C 001558CC 88 1F 07 42 */ lbz r0, 0x742(r31) +/* 80158970 001558D0 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c +/* 80158974 001558D4 98 1F 07 42 */ stb r0, 0x742(r31) +/* 80158978 001558D8 88 1F 07 42 */ lbz r0, 0x742(r31) +/* 8015897C 001558DC 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 80158980 001558E0 98 1F 07 42 */ stb r0, 0x742(r31) +/* 80158984 001558E4 88 1F 07 43 */ lbz r0, 0x743(r31) +/* 80158988 001558E8 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8015898C 001558EC 98 1F 07 43 */ stb r0, 0x743(r31) +lbl_80158990: +/* 80158990 001558F0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80158994 001558F4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80158998 001558F8 7C 08 03 A6 */ mtlr r0 +/* 8015899C 001558FC 38 21 00 10 */ addi r1, r1, 0x10 +/* 801589A0 00155900 4E 80 00 20 */ blr + +.global PathFind__9CParasiteFR13CStateManager9EStateMsgf +PathFind__9CParasiteFR13CStateManager9EStateMsgf: +/* 801589A4 00155904 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801589A8 00155908 7C 08 02 A6 */ mflr r0 +/* 801589AC 0015590C 2C 05 00 01 */ cmpwi r5, 1 +/* 801589B0 00155910 90 01 00 14 */ stw r0, 0x14(r1) +/* 801589B4 00155914 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801589B8 00155918 7C 9F 23 78 */ mr r31, r4 +/* 801589BC 0015591C 93 C1 00 08 */ stw r30, 8(r1) +/* 801589C0 00155920 7C 7E 1B 78 */ mr r30, r3 +/* 801589C4 00155924 41 82 00 84 */ beq lbl_80158A48 +/* 801589C8 00155928 40 80 00 10 */ bge lbl_801589D8 +/* 801589CC 0015592C 2C 05 00 00 */ cmpwi r5, 0 +/* 801589D0 00155930 40 80 00 14 */ bge lbl_801589E4 +/* 801589D4 00155934 48 00 00 B4 */ b lbl_80158A88 +lbl_801589D8: +/* 801589D8 00155938 2C 05 00 03 */ cmpwi r5, 3 +/* 801589DC 0015593C 40 80 00 AC */ bge lbl_80158A88 +/* 801589E0 00155940 48 00 00 7C */ b lbl_80158A5C +lbl_801589E4: +/* 801589E4 00155944 88 1E 07 42 */ lbz r0, 0x742(r30) +/* 801589E8 00155948 38 60 00 01 */ li r3, 1 +/* 801589EC 0015594C 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801589F0 00155950 98 1E 07 42 */ stb r0, 0x742(r30) +/* 801589F4 00155954 88 1E 05 D6 */ lbz r0, 0x5d6(r30) +/* 801589F8 00155958 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801589FC 0015595C 98 1E 05 D6 */ stb r0, 0x5d6(r30) +/* 80158A00 00155960 80 1E 05 D0 */ lwz r0, 0x5d0(r30) +/* 80158A04 00155964 2C 00 00 00 */ cmpwi r0, 0 +/* 80158A08 00155968 40 82 00 10 */ bne lbl_80158A18 +/* 80158A0C 0015596C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80158A10 00155970 38 80 00 02 */ li r4, 2 +/* 80158A14 00155974 4B FE 1F C5 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +lbl_80158A18: +/* 80158A18 00155978 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80158A1C 0015597C C4 04 66 A0 */ lfsu f0, skZero3f@l(r4) +/* 80158A20 00155980 38 60 00 00 */ li r3, 0 +/* 80158A24 00155984 D0 1E 01 50 */ stfs f0, 0x150(r30) +/* 80158A28 00155988 C0 04 00 04 */ lfs f0, 4(r4) +/* 80158A2C 0015598C D0 1E 01 54 */ stfs f0, 0x154(r30) +/* 80158A30 00155990 C0 04 00 08 */ lfs f0, 8(r4) +/* 80158A34 00155994 D0 1E 01 58 */ stfs f0, 0x158(r30) +/* 80158A38 00155998 88 1E 00 F8 */ lbz r0, 0xf8(r30) +/* 80158A3C 0015599C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80158A40 001559A0 98 1E 00 F8 */ stb r0, 0xf8(r30) +/* 80158A44 001559A4 48 00 00 44 */ b lbl_80158A88 +lbl_80158A48: +/* 80158A48 001559A8 4B FF EF 1D */ bl UpdatePFDestination__9CParasiteFR13CStateManager +/* 80158A4C 001559AC 7F C3 F3 78 */ mr r3, r30 +/* 80158A50 001559B0 7F E4 FB 78 */ mr r4, r31 +/* 80158A54 001559B4 4B FF E6 25 */ bl DoFlockingBehavior__9CParasiteFR13CStateManager +/* 80158A58 001559B8 48 00 00 30 */ b lbl_80158A88 +lbl_80158A5C: +/* 80158A5C 001559BC 88 1E 00 F8 */ lbz r0, 0xf8(r30) +/* 80158A60 001559C0 38 60 00 01 */ li r3, 1 +/* 80158A64 001559C4 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80158A68 001559C8 38 60 00 00 */ li r3, 0 +/* 80158A6C 001559CC 98 1E 00 F8 */ stb r0, 0xf8(r30) +/* 80158A70 001559D0 88 1E 05 D6 */ lbz r0, 0x5d6(r30) +/* 80158A74 001559D4 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80158A78 001559D8 98 1E 05 D6 */ stb r0, 0x5d6(r30) +/* 80158A7C 001559DC 88 1E 07 42 */ lbz r0, 0x742(r30) +/* 80158A80 001559E0 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 80158A84 001559E4 98 1E 07 42 */ stb r0, 0x742(r30) +lbl_80158A88: +/* 80158A88 001559E8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80158A8C 001559EC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80158A90 001559F0 83 C1 00 08 */ lwz r30, 8(r1) +/* 80158A94 001559F4 7C 08 03 A6 */ mtlr r0 +/* 80158A98 001559F8 38 21 00 10 */ addi r1, r1, 0x10 +/* 80158A9C 001559FC 4E 80 00 20 */ blr + +.global Run__9CParasiteFR13CStateManager9EStateMsgf +Run__9CParasiteFR13CStateManager9EStateMsgf: +/* 80158AA0 00155A00 4E 80 00 20 */ blr + +.global Deactivate__9CParasiteFR13CStateManager9EStateMsgf +Deactivate__9CParasiteFR13CStateManager9EStateMsgf: +/* 80158AA4 00155A04 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80158AA8 00155A08 7C 08 02 A6 */ mflr r0 +/* 80158AAC 00155A0C 2C 05 00 01 */ cmpwi r5, 1 +/* 80158AB0 00155A10 90 01 00 44 */ stw r0, 0x44(r1) +/* 80158AB4 00155A14 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80158AB8 00155A18 7C 9F 23 78 */ mr r31, r4 +/* 80158ABC 00155A1C 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80158AC0 00155A20 7C 7E 1B 78 */ mr r30, r3 +/* 80158AC4 00155A24 41 82 00 4C */ beq lbl_80158B10 +/* 80158AC8 00155A28 40 80 01 40 */ bge lbl_80158C08 +/* 80158ACC 00155A2C 2C 05 00 00 */ cmpwi r5, 0 +/* 80158AD0 00155A30 40 80 00 0C */ bge lbl_80158ADC +/* 80158AD4 00155A34 48 00 01 34 */ b lbl_80158C08 +/* 80158AD8 00155A38 48 00 01 30 */ b lbl_80158C08 +lbl_80158ADC: +/* 80158ADC 00155A3C 38 00 00 00 */ li r0, 0 +/* 80158AE0 00155A40 7F E5 FB 78 */ mr r5, r31 +/* 80158AE4 00155A44 90 1E 05 E8 */ stw r0, 0x5e8(r30) +/* 80158AE8 00155A48 38 80 00 11 */ li r4, 0x11 +/* 80158AEC 00155A4C 38 C0 FF FF */ li r6, -1 +/* 80158AF0 00155A50 4B EF 85 D1 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 80158AF4 00155A54 A0 1E 00 08 */ lhz r0, 8(r30) +/* 80158AF8 00155A58 7F E3 FB 78 */ mr r3, r31 +/* 80158AFC 00155A5C 38 81 00 0C */ addi r4, r1, 0xc +/* 80158B00 00155A60 B0 01 00 08 */ sth r0, 8(r1) +/* 80158B04 00155A64 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80158B08 00155A68 4B EF 37 65 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 80158B0C 00155A6C 48 00 00 FC */ b lbl_80158C08 +lbl_80158B10: +/* 80158B10 00155A70 80 1E 05 E8 */ lwz r0, 0x5e8(r30) +/* 80158B14 00155A74 2C 00 00 00 */ cmpwi r0, 0 +/* 80158B18 00155A78 41 82 00 08 */ beq lbl_80158B20 +/* 80158B1C 00155A7C 48 00 00 EC */ b lbl_80158C08 +lbl_80158B20: +/* 80158B20 00155A80 81 5E 04 50 */ lwz r10, 0x450(r30) +/* 80158B24 00155A84 80 0A 02 B8 */ lwz r0, 0x2b8(r10) +/* 80158B28 00155A88 2C 00 00 0C */ cmpwi r0, 0xc +/* 80158B2C 00155A8C 40 82 00 10 */ bne lbl_80158B3C +/* 80158B30 00155A90 38 00 00 01 */ li r0, 1 +/* 80158B34 00155A94 90 1E 05 E8 */ stw r0, 0x5e8(r30) +/* 80158B38 00155A98 48 00 00 D0 */ b lbl_80158C08 +lbl_80158B3C: +/* 80158B3C 00155A9C 3C C0 80 3E */ lis r6, lbl_803DAA68@ha +/* 80158B40 00155AA0 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80158B44 00155AA4 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 80158B48 00155AA8 80 81 00 2C */ lwz r4, 0x2c(r1) +/* 80158B4C 00155AAC 38 60 00 00 */ li r3, 0 +/* 80158B50 00155AB0 39 26 AA 68 */ addi r9, r6, lbl_803DAA68@l +/* 80158B54 00155AB4 50 64 F8 00 */ rlwimi r4, r3, 0x1f, 0, 0 +/* 80158B58 00155AB8 C0 45 00 00 */ lfs f2, 0(r5) +/* 80158B5C 00155ABC C0 25 00 04 */ lfs f1, 4(r5) +/* 80158B60 00155AC0 3C E0 80 3E */ lis r7, lbl_803DA9F0@ha +/* 80158B64 00155AC4 C0 05 00 08 */ lfs f0, 8(r5) +/* 80158B68 00155AC8 7C 80 23 78 */ mr r0, r4 +/* 80158B6C 00155ACC 39 00 00 0E */ li r8, 0xe +/* 80158B70 00155AD0 38 C0 00 01 */ li r6, 1 +/* 80158B74 00155AD4 38 A0 FF FF */ li r5, -1 +/* 80158B78 00155AD8 3B EA 00 04 */ addi r31, r10, 4 +/* 80158B7C 00155ADC 91 21 00 10 */ stw r9, 0x10(r1) +/* 80158B80 00155AE0 38 E7 A9 F0 */ addi r7, r7, lbl_803DA9F0@l +/* 80158B84 00155AE4 50 60 F0 42 */ rlwimi r0, r3, 0x1e, 1, 1 +/* 80158B88 00155AE8 7F E3 FB 78 */ mr r3, r31 +/* 80158B8C 00155AEC 90 81 00 2C */ stw r4, 0x2c(r1) +/* 80158B90 00155AF0 38 80 00 0E */ li r4, 0xe +/* 80158B94 00155AF4 91 01 00 14 */ stw r8, 0x14(r1) +/* 80158B98 00155AF8 90 E1 00 10 */ stw r7, 0x10(r1) +/* 80158B9C 00155AFC 90 C1 00 18 */ stw r6, 0x18(r1) +/* 80158BA0 00155B00 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 80158BA4 00155B04 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 80158BA8 00155B08 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80158BAC 00155B0C 90 A1 00 28 */ stw r5, 0x28(r1) +/* 80158BB0 00155B10 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80158BB4 00155B14 4B FD 88 85 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80158BB8 00155B18 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80158BBC 00155B1C 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 80158BC0 00155B20 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l +/* 80158BC4 00155B24 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80158BC8 00155B28 90 1F 01 90 */ stw r0, 0x190(r31) +/* 80158BCC 00155B2C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80158BD0 00155B30 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 80158BD4 00155B34 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 80158BD8 00155B38 90 BF 01 94 */ stw r5, 0x194(r31) +/* 80158BDC 00155B3C 80 A1 00 20 */ lwz r5, 0x20(r1) +/* 80158BE0 00155B40 90 7F 01 98 */ stw r3, 0x198(r31) +/* 80158BE4 00155B44 80 61 00 24 */ lwz r3, 0x24(r1) +/* 80158BE8 00155B48 90 BF 01 9C */ stw r5, 0x19c(r31) +/* 80158BEC 00155B4C 80 A1 00 28 */ lwz r5, 0x28(r1) +/* 80158BF0 00155B50 90 7F 01 A0 */ stw r3, 0x1a0(r31) +/* 80158BF4 00155B54 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 80158BF8 00155B58 90 BF 01 A4 */ stw r5, 0x1a4(r31) +/* 80158BFC 00155B5C 90 81 00 10 */ stw r4, 0x10(r1) +/* 80158C00 00155B60 90 7F 01 A8 */ stw r3, 0x1a8(r31) +/* 80158C04 00155B64 90 01 00 10 */ stw r0, 0x10(r1) +lbl_80158C08: +/* 80158C08 00155B68 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80158C0C 00155B6C 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80158C10 00155B70 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80158C14 00155B74 7C 08 03 A6 */ mtlr r0 +/* 80158C18 00155B78 38 21 00 40 */ addi r1, r1, 0x40 +/* 80158C1C 00155B7C 4E 80 00 20 */ blr + +.global Generate__9CParasiteFR13CStateManager9EStateMsgf +Generate__9CParasiteFR13CStateManager9EStateMsgf: +/* 80158C20 00155B80 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80158C24 00155B84 7C 08 02 A6 */ mflr r0 +/* 80158C28 00155B88 2C 05 00 01 */ cmpwi r5, 1 +/* 80158C2C 00155B8C 90 01 00 34 */ stw r0, 0x34(r1) +/* 80158C30 00155B90 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80158C34 00155B94 41 82 00 24 */ beq lbl_80158C58 +/* 80158C38 00155B98 40 80 01 38 */ bge lbl_80158D70 +/* 80158C3C 00155B9C 2C 05 00 00 */ cmpwi r5, 0 +/* 80158C40 00155BA0 40 80 00 0C */ bge lbl_80158C4C +/* 80158C44 00155BA4 48 00 01 2C */ b lbl_80158D70 +/* 80158C48 00155BA8 48 00 01 28 */ b lbl_80158D70 +lbl_80158C4C: +/* 80158C4C 00155BAC 38 00 00 00 */ li r0, 0 +/* 80158C50 00155BB0 90 03 05 E8 */ stw r0, 0x5e8(r3) +/* 80158C54 00155BB4 48 00 01 1C */ b lbl_80158D70 +lbl_80158C58: +/* 80158C58 00155BB8 80 03 05 E8 */ lwz r0, 0x5e8(r3) +/* 80158C5C 00155BBC 2C 00 00 01 */ cmpwi r0, 1 +/* 80158C60 00155BC0 41 82 00 F8 */ beq lbl_80158D58 +/* 80158C64 00155BC4 40 80 01 0C */ bge lbl_80158D70 +/* 80158C68 00155BC8 2C 00 00 00 */ cmpwi r0, 0 +/* 80158C6C 00155BCC 40 80 00 08 */ bge lbl_80158C74 +/* 80158C70 00155BD0 48 00 01 00 */ b lbl_80158D70 +lbl_80158C74: +/* 80158C74 00155BD4 81 43 04 50 */ lwz r10, 0x450(r3) +/* 80158C78 00155BD8 80 0A 02 B8 */ lwz r0, 0x2b8(r10) +/* 80158C7C 00155BDC 2C 00 00 0C */ cmpwi r0, 0xc +/* 80158C80 00155BE0 40 82 00 10 */ bne lbl_80158C90 +/* 80158C84 00155BE4 38 00 00 01 */ li r0, 1 +/* 80158C88 00155BE8 90 03 05 E8 */ stw r0, 0x5e8(r3) +/* 80158C8C 00155BEC 48 00 00 E4 */ b lbl_80158D70 +lbl_80158C90: +/* 80158C90 00155BF0 3C A0 80 3E */ lis r5, lbl_803DAA68@ha +/* 80158C94 00155BF4 38 C0 00 00 */ li r6, 0 +/* 80158C98 00155BF8 39 25 AA 68 */ addi r9, r5, lbl_803DAA68@l +/* 80158C9C 00155BFC 80 61 00 24 */ lwz r3, 0x24(r1) +/* 80158CA0 00155C00 50 C3 F8 00 */ rlwimi r3, r6, 0x1f, 0, 0 +/* 80158CA4 00155C04 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80158CA8 00155C08 C4 44 66 A0 */ lfsu f2, skZero3f@l(r4) +/* 80158CAC 00155C0C 3C E0 80 3E */ lis r7, lbl_803DA9F0@ha +/* 80158CB0 00155C10 7C 60 1B 78 */ mr r0, r3 +/* 80158CB4 00155C14 39 00 00 0E */ li r8, 0xe +/* 80158CB8 00155C18 C0 24 00 04 */ lfs f1, 4(r4) +/* 80158CBC 00155C1C 38 A0 FF FF */ li r5, -1 +/* 80158CC0 00155C20 C0 04 00 08 */ lfs f0, 8(r4) +/* 80158CC4 00155C24 38 E7 A9 F0 */ addi r7, r7, lbl_803DA9F0@l +/* 80158CC8 00155C28 91 21 00 08 */ stw r9, 8(r1) +/* 80158CCC 00155C2C 50 C0 F0 42 */ rlwimi r0, r6, 0x1e, 1, 1 +/* 80158CD0 00155C30 3B EA 00 04 */ addi r31, r10, 4 +/* 80158CD4 00155C34 38 80 00 0E */ li r4, 0xe +/* 80158CD8 00155C38 90 61 00 24 */ stw r3, 0x24(r1) +/* 80158CDC 00155C3C 7F E3 FB 78 */ mr r3, r31 +/* 80158CE0 00155C40 91 01 00 0C */ stw r8, 0xc(r1) +/* 80158CE4 00155C44 90 E1 00 08 */ stw r7, 8(r1) +/* 80158CE8 00155C48 90 C1 00 10 */ stw r6, 0x10(r1) +/* 80158CEC 00155C4C D0 41 00 14 */ stfs f2, 0x14(r1) +/* 80158CF0 00155C50 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80158CF4 00155C54 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80158CF8 00155C58 90 A1 00 20 */ stw r5, 0x20(r1) +/* 80158CFC 00155C5C 90 01 00 24 */ stw r0, 0x24(r1) +/* 80158D00 00155C60 4B FD 87 39 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80158D04 00155C64 80 01 00 0C */ lwz r0, 0xc(r1) +/* 80158D08 00155C68 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha +/* 80158D0C 00155C6C 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l +/* 80158D10 00155C70 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80158D14 00155C74 90 1F 01 90 */ stw r0, 0x190(r31) +/* 80158D18 00155C78 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80158D1C 00155C7C 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 80158D20 00155C80 80 61 00 14 */ lwz r3, 0x14(r1) +/* 80158D24 00155C84 90 BF 01 94 */ stw r5, 0x194(r31) +/* 80158D28 00155C88 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 80158D2C 00155C8C 90 7F 01 98 */ stw r3, 0x198(r31) +/* 80158D30 00155C90 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 80158D34 00155C94 90 BF 01 9C */ stw r5, 0x19c(r31) +/* 80158D38 00155C98 80 A1 00 20 */ lwz r5, 0x20(r1) +/* 80158D3C 00155C9C 90 7F 01 A0 */ stw r3, 0x1a0(r31) +/* 80158D40 00155CA0 80 61 00 24 */ lwz r3, 0x24(r1) +/* 80158D44 00155CA4 90 BF 01 A4 */ stw r5, 0x1a4(r31) +/* 80158D48 00155CA8 90 81 00 08 */ stw r4, 8(r1) +/* 80158D4C 00155CAC 90 7F 01 A8 */ stw r3, 0x1a8(r31) +/* 80158D50 00155CB0 90 01 00 08 */ stw r0, 8(r1) +/* 80158D54 00155CB4 48 00 00 1C */ b lbl_80158D70 +lbl_80158D58: +/* 80158D58 00155CB8 80 83 04 50 */ lwz r4, 0x450(r3) +/* 80158D5C 00155CBC 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 80158D60 00155CC0 2C 00 00 0C */ cmpwi r0, 0xc +/* 80158D64 00155CC4 41 82 00 0C */ beq lbl_80158D70 +/* 80158D68 00155CC8 38 00 00 02 */ li r0, 2 +/* 80158D6C 00155CCC 90 03 05 E8 */ stw r0, 0x5e8(r3) +lbl_80158D70: +/* 80158D70 00155CD0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80158D74 00155CD4 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80158D78 00155CD8 7C 08 03 A6 */ mtlr r0 +/* 80158D7C 00155CDC 38 21 00 30 */ addi r1, r1, 0x30 +/* 80158D80 00155CE0 4E 80 00 20 */ blr + +.global ShouldAttack__9CParasiteFR13CStateManagerf +ShouldAttack__9CParasiteFR13CStateManagerf: +/* 80158D84 00155CE4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80158D88 00155CE8 7C 08 02 A6 */ mflr r0 +/* 80158D8C 00155CEC 90 01 00 34 */ stw r0, 0x34(r1) +/* 80158D90 00155CF0 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 80158D94 00155CF4 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 80158D98 00155CF8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80158D9C 00155CFC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80158DA0 00155D00 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80158DA4 00155D04 93 81 00 10 */ stw r28, 0x10(r1) +/* 80158DA8 00155D08 88 03 07 42 */ lbz r0, 0x742(r3) +/* 80158DAC 00155D0C FF E0 08 90 */ fmr f31, f1 +/* 80158DB0 00155D10 7C 7C 1B 78 */ mr r28, r3 +/* 80158DB4 00155D14 7C 9D 23 78 */ mr r29, r4 +/* 80158DB8 00155D18 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80158DBC 00155D1C 3B C0 00 00 */ li r30, 0 +/* 80158DC0 00155D20 41 82 00 18 */ beq lbl_80158DD8 +/* 80158DC4 00155D24 C0 3C 06 08 */ lfs f1, 0x608(r28) +/* 80158DC8 00155D28 C0 02 9E 78 */ lfs f0, lbl_805ABB98@sda21(r2) +/* 80158DCC 00155D2C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80158DD0 00155D30 40 81 00 08 */ ble lbl_80158DD8 +/* 80158DD4 00155D34 3B C0 00 01 */ li r30, 1 +lbl_80158DD8: +/* 80158DD8 00155D38 7F 83 E3 78 */ mr r3, r28 +/* 80158DDC 00155D3C FC 20 F8 90 */ fmr f1, f31 +/* 80158DE0 00155D40 81 9C 00 00 */ lwz r12, 0(r28) +/* 80158DE4 00155D44 7F A4 EB 78 */ mr r4, r29 +/* 80158DE8 00155D48 3B E0 00 00 */ li r31, 0 +/* 80158DEC 00155D4C 81 8C 01 9C */ lwz r12, 0x19c(r12) +/* 80158DF0 00155D50 7D 89 03 A6 */ mtctr r12 +/* 80158DF4 00155D54 4E 80 04 21 */ bctrl +/* 80158DF8 00155D58 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80158DFC 00155D5C 40 82 00 58 */ bne lbl_80158E54 +/* 80158E00 00155D60 7F 83 E3 78 */ mr r3, r28 +/* 80158E04 00155D64 FC 20 F8 90 */ fmr f1, f31 +/* 80158E08 00155D68 81 9C 00 00 */ lwz r12, 0(r28) +/* 80158E0C 00155D6C 7F A4 EB 78 */ mr r4, r29 +/* 80158E10 00155D70 81 8C 01 A4 */ lwz r12, 0x1a4(r12) +/* 80158E14 00155D74 7D 89 03 A6 */ mtctr r12 +/* 80158E18 00155D78 4E 80 04 21 */ bctrl +/* 80158E1C 00155D7C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80158E20 00155D80 41 82 00 34 */ beq lbl_80158E54 +/* 80158E24 00155D84 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 80158E28 00155D88 40 82 00 28 */ bne lbl_80158E50 +/* 80158E2C 00155D8C 7F 83 E3 78 */ mr r3, r28 +/* 80158E30 00155D90 7F A4 EB 78 */ mr r4, r29 +/* 80158E34 00155D94 81 9C 00 00 */ lwz r12, 0(r28) +/* 80158E38 00155D98 C0 22 9E 50 */ lfs f1, lbl_805ABB70@sda21(r2) +/* 80158E3C 00155D9C 81 8C 01 A8 */ lwz r12, 0x1a8(r12) +/* 80158E40 00155DA0 7D 89 03 A6 */ mtctr r12 +/* 80158E44 00155DA4 4E 80 04 21 */ bctrl +/* 80158E48 00155DA8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80158E4C 00155DAC 41 82 00 08 */ beq lbl_80158E54 +lbl_80158E50: +/* 80158E50 00155DB0 3B E0 00 01 */ li r31, 1 +lbl_80158E54: +/* 80158E54 00155DB4 7F E3 FB 78 */ mr r3, r31 +/* 80158E58 00155DB8 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 80158E5C 00155DBC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80158E60 00155DC0 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 80158E64 00155DC4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80158E68 00155DC8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80158E6C 00155DCC 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80158E70 00155DD0 83 81 00 10 */ lwz r28, 0x10(r1) +/* 80158E74 00155DD4 7C 08 03 A6 */ mtlr r0 +/* 80158E78 00155DD8 38 21 00 30 */ addi r1, r1, 0x30 +/* 80158E7C 00155DDC 4E 80 00 20 */ blr + +.global HitSomething__9CParasiteFR13CStateManagerf +HitSomething__9CParasiteFR13CStateManagerf: +/* 80158E80 00155DE0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80158E84 00155DE4 7C 08 02 A6 */ mflr r0 +/* 80158E88 00155DE8 90 01 00 14 */ stw r0, 0x14(r1) +/* 80158E8C 00155DEC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80158E90 00155DF0 A8 03 05 D4 */ lha r0, 0x5d4(r3) +/* 80158E94 00155DF4 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 80158E98 00155DF8 41 82 00 0C */ beq lbl_80158EA4 +/* 80158E9C 00155DFC 3B E0 00 01 */ li r31, 1 +/* 80158EA0 00155E00 48 00 00 28 */ b lbl_80158EC8 +lbl_80158EA4: +/* 80158EA4 00155E04 C0 23 05 B8 */ lfs f1, 0x5b8(r3) +/* 80158EA8 00155E08 3B E0 00 00 */ li r31, 0 +/* 80158EAC 00155E0C C0 02 9E 7C */ lfs f0, lbl_805ABB9C@sda21(r2) +/* 80158EB0 00155E10 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80158EB4 00155E14 40 80 00 14 */ bge lbl_80158EC8 +/* 80158EB8 00155E18 48 00 04 49 */ bl CloseToWall__9CParasiteFR13CStateManager +/* 80158EBC 00155E1C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80158EC0 00155E20 41 82 00 08 */ beq lbl_80158EC8 +/* 80158EC4 00155E24 3B E0 00 01 */ li r31, 1 +lbl_80158EC8: +/* 80158EC8 00155E28 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80158ECC 00155E2C 7F E3 FB 78 */ mr r3, r31 +/* 80158ED0 00155E30 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80158ED4 00155E34 7C 08 03 A6 */ mtlr r0 +/* 80158ED8 00155E38 38 21 00 10 */ addi r1, r1, 0x10 +/* 80158EDC 00155E3C 4E 80 00 20 */ blr + +.global Landed__9CParasiteFR13CStateManagerf +Landed__9CParasiteFR13CStateManagerf: +/* 80158EE0 00155E40 88 03 07 42 */ lbz r0, 0x742(r3) +/* 80158EE4 00155E44 54 03 E7 FE */ rlwinm r3, r0, 0x1c, 0x1f, 0x1f +/* 80158EE8 00155E48 4E 80 00 20 */ blr + +.global AnimOver__9CParasiteFR13CStateManagerf +AnimOver__9CParasiteFR13CStateManagerf: +/* 80158EEC 00155E4C 80 03 05 E8 */ lwz r0, 0x5e8(r3) +/* 80158EF0 00155E50 20 00 00 02 */ subfic r0, r0, 2 +/* 80158EF4 00155E54 7C 00 00 34 */ cntlzw r0, r0 +/* 80158EF8 00155E58 54 03 D9 7E */ srwi r3, r0, 5 +/* 80158EFC 00155E5C 4E 80 00 20 */ blr + +.global GetClosestWaypointForState__9CParasiteCF18EScriptObjectStateR13CStateManager +GetClosestWaypointForState__9CParasiteCF18EScriptObjectStateR13CStateManager: +/* 80158F00 00155E60 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80158F04 00155E64 7C 08 02 A6 */ mflr r0 +/* 80158F08 00155E68 90 01 00 54 */ stw r0, 0x54(r1) +/* 80158F0C 00155E6C DB E1 00 40 */ stfd f31, 0x40(r1) +/* 80158F10 00155E70 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 80158F14 00155E74 BF 41 00 28 */ stmw r26, 0x28(r1) +/* 80158F18 00155E78 7C 9B 23 78 */ mr r27, r4 +/* 80158F1C 00155E7C C3 E2 9E 80 */ lfs f31, lbl_805ABBA0@sda21(r2) +/* 80158F20 00155E80 A3 ED A3 8C */ lhz r31, lbl_805A8F4C@sda21(r13) +/* 80158F24 00155E84 7C 7A 1B 78 */ mr r26, r3 +/* 80158F28 00155E88 83 C4 00 2C */ lwz r30, 0x2c(r4) +/* 80158F2C 00155E8C 7C BC 2B 78 */ mr r28, r5 +/* 80158F30 00155E90 7C DD 33 78 */ mr r29, r6 +/* 80158F34 00155E94 48 00 00 74 */ b lbl_80158FA8 +lbl_80158F38: +/* 80158F38 00155E98 80 1E 00 00 */ lwz r0, 0(r30) +/* 80158F3C 00155E9C 7C 1C 00 00 */ cmpw r28, r0 +/* 80158F40 00155EA0 40 82 00 64 */ bne lbl_80158FA4 +/* 80158F44 00155EA4 80 1E 00 04 */ lwz r0, 4(r30) +/* 80158F48 00155EA8 2C 00 00 06 */ cmpwi r0, 6 +/* 80158F4C 00155EAC 40 82 00 58 */ bne lbl_80158FA4 +/* 80158F50 00155EB0 80 1E 00 08 */ lwz r0, 8(r30) +/* 80158F54 00155EB4 7F A4 EB 78 */ mr r4, r29 +/* 80158F58 00155EB8 38 61 00 10 */ addi r3, r1, 0x10 +/* 80158F5C 00155EBC 38 A1 00 18 */ addi r5, r1, 0x18 +/* 80158F60 00155EC0 90 01 00 18 */ stw r0, 0x18(r1) +/* 80158F64 00155EC4 4B EE EF B9 */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 80158F68 00155EC8 A0 01 00 10 */ lhz r0, 0x10(r1) +/* 80158F6C 00155ECC 7F 64 DB 78 */ mr r4, r27 +/* 80158F70 00155ED0 7F A5 EB 78 */ mr r5, r29 +/* 80158F74 00155ED4 38 61 00 0C */ addi r3, r1, 0xc +/* 80158F78 00155ED8 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80158F7C 00155EDC 38 C1 00 08 */ addi r6, r1, 8 +/* 80158F80 00155EE0 38 E1 00 1C */ addi r7, r1, 0x1c +/* 80158F84 00155EE4 B0 01 00 08 */ sth r0, 8(r1) +/* 80158F88 00155EE8 48 00 00 59 */ bl RecursiveFindClosestWayPoint__9CParasiteCFR13CStateManager9TUniqueIdRf +/* 80158F8C 00155EEC C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 80158F90 00155EF0 A0 01 00 0C */ lhz r0, 0xc(r1) +/* 80158F94 00155EF4 FC 00 F8 40 */ fcmpo cr0, f0, f31 +/* 80158F98 00155EF8 40 80 00 0C */ bge lbl_80158FA4 +/* 80158F9C 00155EFC FF E0 00 90 */ fmr f31, f0 +/* 80158FA0 00155F00 7C 1F 03 78 */ mr r31, r0 +lbl_80158FA4: +/* 80158FA4 00155F04 3B DE 00 0C */ addi r30, r30, 0xc +lbl_80158FA8: +/* 80158FA8 00155F08 80 1B 00 24 */ lwz r0, 0x24(r27) +/* 80158FAC 00155F0C 80 7B 00 2C */ lwz r3, 0x2c(r27) +/* 80158FB0 00155F10 1C 00 00 0C */ mulli r0, r0, 0xc +/* 80158FB4 00155F14 7C 03 02 14 */ add r0, r3, r0 +/* 80158FB8 00155F18 7C 1E 00 40 */ cmplw r30, r0 +/* 80158FBC 00155F1C 40 82 FF 7C */ bne lbl_80158F38 +/* 80158FC0 00155F20 B3 FA 00 00 */ sth r31, 0(r26) +/* 80158FC4 00155F24 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 80158FC8 00155F28 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 80158FCC 00155F2C BB 41 00 28 */ lmw r26, 0x28(r1) +/* 80158FD0 00155F30 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80158FD4 00155F34 7C 08 03 A6 */ mtlr r0 +/* 80158FD8 00155F38 38 21 00 50 */ addi r1, r1, 0x50 +/* 80158FDC 00155F3C 4E 80 00 20 */ blr + +.global RecursiveFindClosestWayPoint__9CParasiteCFR13CStateManager9TUniqueIdRf +RecursiveFindClosestWayPoint__9CParasiteCFR13CStateManager9TUniqueIdRf: +/* 80158FE0 00155F40 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 80158FE4 00155F44 7C 08 02 A6 */ mflr r0 +/* 80158FE8 00155F48 90 01 00 74 */ stw r0, 0x74(r1) +/* 80158FEC 00155F4C BF 21 00 54 */ stmw r25, 0x54(r1) +/* 80158FF0 00155F50 7C 9A 23 78 */ mr r26, r4 +/* 80158FF4 00155F54 7C BB 2B 78 */ mr r27, r5 +/* 80158FF8 00155F58 7C 79 1B 78 */ mr r25, r3 +/* 80158FFC 00155F5C 7C FC 3B 78 */ mr r28, r7 +/* 80159000 00155F60 38 81 00 18 */ addi r4, r1, 0x18 +/* 80159004 00155F64 7F 63 DB 78 */ mr r3, r27 +/* 80159008 00155F68 A0 06 00 00 */ lhz r0, 0(r6) +/* 8015900C 00155F6C A3 C6 00 00 */ lhz r30, 0(r6) +/* 80159010 00155F70 B0 01 00 18 */ sth r0, 0x18(r1) +/* 80159014 00155F74 4B EF 35 61 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80159018 00155F78 7C 64 1B 78 */ mr r4, r3 +/* 8015901C 00155F7C 38 61 00 30 */ addi r3, r1, 0x30 +/* 80159020 00155F80 4B F4 D5 2D */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 80159024 00155F84 83 E3 00 04 */ lwz r31, 4(r3) +/* 80159028 00155F88 28 1F 00 00 */ cmplwi r31, 0 +/* 8015902C 00155F8C 40 82 00 0C */ bne lbl_80159038 +/* 80159030 00155F90 B3 D9 00 00 */ sth r30, 0(r25) +/* 80159034 00155F94 48 00 01 64 */ b lbl_80159198 +lbl_80159038: +/* 80159038 00155F98 7F E3 FB 78 */ mr r3, r31 +/* 8015903C 00155F9C 38 80 00 00 */ li r4, 0 +/* 80159040 00155FA0 81 9F 00 00 */ lwz r12, 0(r31) +/* 80159044 00155FA4 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80159048 00155FA8 7D 89 03 A6 */ mtctr r12 +/* 8015904C 00155FAC 4E 80 04 21 */ bctrl +/* 80159050 00155FB0 C0 DF 00 50 */ lfs f6, 0x50(r31) +/* 80159054 00155FB4 C0 1A 00 50 */ lfs f0, 0x50(r26) +/* 80159058 00155FB8 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 8015905C 00155FBC EC A6 00 28 */ fsubs f5, f6, f0 +/* 80159060 00155FC0 C0 1A 00 40 */ lfs f0, 0x40(r26) +/* 80159064 00155FC4 C0 FF 00 60 */ lfs f7, 0x60(r31) +/* 80159068 00155FC8 EC 61 00 28 */ fsubs f3, f1, f0 +/* 8015906C 00155FCC C0 5A 00 60 */ lfs f2, 0x60(r26) +/* 80159070 00155FD0 EC 05 01 72 */ fmuls f0, f5, f5 +/* 80159074 00155FD4 EC 87 10 28 */ fsubs f4, f7, f2 +/* 80159078 00155FD8 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 8015907C 00155FDC EC 23 00 F2 */ fmuls f1, f3, f3 +/* 80159080 00155FE0 D0 C1 00 3C */ stfs f6, 0x3c(r1) +/* 80159084 00155FE4 EC 44 01 32 */ fmuls f2, f4, f4 +/* 80159088 00155FE8 EC 01 00 2A */ fadds f0, f1, f0 +/* 8015908C 00155FEC D0 E1 00 40 */ stfs f7, 0x40(r1) +/* 80159090 00155FF0 D0 61 00 44 */ stfs f3, 0x44(r1) +/* 80159094 00155FF4 EC 02 00 2A */ fadds f0, f2, f0 +/* 80159098 00155FF8 D0 A1 00 48 */ stfs f5, 0x48(r1) +/* 8015909C 00155FFC D0 1C 00 00 */ stfs f0, 0(r28) +/* 801590A0 00156000 D0 81 00 4C */ stfs f4, 0x4c(r1) +/* 801590A4 00156004 83 BF 00 2C */ lwz r29, 0x2c(r31) +/* 801590A8 00156008 48 00 00 BC */ b lbl_80159164 +lbl_801590AC: +/* 801590AC 0015600C 80 1D 00 00 */ lwz r0, 0(r29) +/* 801590B0 00156010 2C 00 00 01 */ cmpwi r0, 1 +/* 801590B4 00156014 40 82 00 AC */ bne lbl_80159160 +/* 801590B8 00156018 80 1D 00 04 */ lwz r0, 4(r29) +/* 801590BC 0015601C 2C 00 00 08 */ cmpwi r0, 8 +/* 801590C0 00156020 40 82 00 A0 */ bne lbl_80159160 +/* 801590C4 00156024 80 1D 00 08 */ lwz r0, 8(r29) +/* 801590C8 00156028 7F 64 DB 78 */ mr r4, r27 +/* 801590CC 0015602C 38 61 00 14 */ addi r3, r1, 0x14 +/* 801590D0 00156030 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801590D4 00156034 90 01 00 20 */ stw r0, 0x20(r1) +/* 801590D8 00156038 4B EE EE 45 */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 801590DC 0015603C A0 61 00 14 */ lhz r3, 0x14(r1) +/* 801590E0 00156040 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801590E4 00156044 B0 61 00 1C */ sth r3, 0x1c(r1) +/* 801590E8 00156048 7C 03 00 40 */ cmplw r3, r0 +/* 801590EC 0015604C 41 82 00 74 */ beq lbl_80159160 +/* 801590F0 00156050 B0 61 00 10 */ sth r3, 0x10(r1) +/* 801590F4 00156054 7F 63 DB 78 */ mr r3, r27 +/* 801590F8 00156058 38 81 00 10 */ addi r4, r1, 0x10 +/* 801590FC 0015605C 4B EF 34 A9 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80159100 00156060 7C 64 1B 78 */ mr r4, r3 +/* 80159104 00156064 38 61 00 28 */ addi r3, r1, 0x28 +/* 80159108 00156068 4B F4 D4 45 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" +/* 8015910C 0015606C 80 63 00 04 */ lwz r3, 4(r3) +/* 80159110 00156070 28 03 00 00 */ cmplwi r3, 0 +/* 80159114 00156074 41 82 00 4C */ beq lbl_80159160 +/* 80159118 00156078 88 03 00 30 */ lbz r0, 0x30(r3) +/* 8015911C 0015607C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80159120 00156080 41 82 00 40 */ beq lbl_80159160 +/* 80159124 00156084 A0 01 00 1C */ lhz r0, 0x1c(r1) +/* 80159128 00156088 7F 44 D3 78 */ mr r4, r26 +/* 8015912C 0015608C 7F 65 DB 78 */ mr r5, r27 +/* 80159130 00156090 38 61 00 0C */ addi r3, r1, 0xc +/* 80159134 00156094 B0 01 00 08 */ sth r0, 8(r1) +/* 80159138 00156098 38 C1 00 08 */ addi r6, r1, 8 +/* 8015913C 0015609C 38 E1 00 24 */ addi r7, r1, 0x24 +/* 80159140 001560A0 4B FF FE A1 */ bl RecursiveFindClosestWayPoint__9CParasiteCFR13CStateManager9TUniqueIdRf +/* 80159144 001560A4 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 80159148 001560A8 C0 1C 00 00 */ lfs f0, 0(r28) +/* 8015914C 001560AC A0 01 00 0C */ lhz r0, 0xc(r1) +/* 80159150 001560B0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80159154 001560B4 40 80 00 0C */ bge lbl_80159160 +/* 80159158 001560B8 D0 3C 00 00 */ stfs f1, 0(r28) +/* 8015915C 001560BC 7C 1E 03 78 */ mr r30, r0 +lbl_80159160: +/* 80159160 001560C0 3B BD 00 0C */ addi r29, r29, 0xc +lbl_80159164: +/* 80159164 001560C4 80 1F 00 24 */ lwz r0, 0x24(r31) +/* 80159168 001560C8 80 7F 00 2C */ lwz r3, 0x2c(r31) +/* 8015916C 001560CC 1C 00 00 0C */ mulli r0, r0, 0xc +/* 80159170 001560D0 7C 03 02 14 */ add r0, r3, r0 +/* 80159174 001560D4 7C 1D 00 40 */ cmplw r29, r0 +/* 80159178 001560D8 40 82 FF 34 */ bne lbl_801590AC +/* 8015917C 001560DC 7F E3 FB 78 */ mr r3, r31 +/* 80159180 001560E0 38 80 00 01 */ li r4, 1 +/* 80159184 001560E4 81 9F 00 00 */ lwz r12, 0(r31) +/* 80159188 001560E8 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 8015918C 001560EC 7D 89 03 A6 */ mtctr r12 +/* 80159190 001560F0 4E 80 04 21 */ bctrl +/* 80159194 001560F4 B3 D9 00 00 */ sth r30, 0(r25) +lbl_80159198: +/* 80159198 001560F8 BB 21 00 54 */ lmw r25, 0x54(r1) +/* 8015919C 001560FC 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801591A0 00156100 7C 08 03 A6 */ mtlr r0 +/* 801591A4 00156104 38 21 00 70 */ addi r1, r1, 0x70 +/* 801591A8 00156108 4E 80 00 20 */ blr + +.global CollidedWith__9CParasiteFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager +CollidedWith__9CParasiteFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager: +/* 801591AC 0015610C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801591B0 00156110 7C 08 02 A6 */ mflr r0 +/* 801591B4 00156114 90 01 00 34 */ stw r0, 0x34(r1) +/* 801591B8 00156118 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801591BC 0015611C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801591C0 00156120 7C BE 2B 78 */ mr r30, r5 +/* 801591C4 00156124 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801591C8 00156128 7C 7D 1B 78 */ mr r29, r3 +/* 801591CC 0015612C 93 81 00 20 */ stw r28, 0x20(r1) +/* 801591D0 00156130 88 0D A4 0A */ lbz r0, lbl_805A8FCA@sda21(r13) +/* 801591D4 00156134 7C 00 07 75 */ extsb. r0, r0 +/* 801591D8 00156138 40 82 00 44 */ bne lbl_8015921C +/* 801591DC 0015613C 80 AD 8C 98 */ lwz r5, lbl_805A7858@sda21(r13) +/* 801591E0 00156140 38 60 00 00 */ li r3, 0 +/* 801591E4 00156144 38 80 00 01 */ li r4, 1 +/* 801591E8 00156148 48 23 0D 0D */ bl __shl2i +/* 801591EC 0015614C 80 AD 8C 9C */ lwz r5, lbl_805A785C@sda21(r13) +/* 801591F0 00156150 7C 9C 23 78 */ mr r28, r4 +/* 801591F4 00156154 7C 7F 1B 78 */ mr r31, r3 +/* 801591F8 00156158 38 60 00 00 */ li r3, 0 +/* 801591FC 0015615C 38 80 00 01 */ li r4, 1 +/* 80159200 00156160 48 23 0C F5 */ bl __shl2i +/* 80159204 00156164 7F 9C 23 78 */ or r28, r28, r4 +/* 80159208 00156168 7F FF 1B 78 */ or r31, r31, r3 +/* 8015920C 0015616C 38 00 00 01 */ li r0, 1 +/* 80159210 00156170 93 8D A4 14 */ stw r28, lbl_805A8FD4@sda21(r13) +/* 80159214 00156174 93 ED A4 10 */ stw r31, lbl_805A8FD0@sda21(r13) +/* 80159218 00156178 98 0D A4 0A */ stb r0, lbl_805A8FCA@sda21(r13) +lbl_8015921C: +/* 8015921C 0015617C 88 1D 07 43 */ lbz r0, 0x743(r29) +/* 80159220 00156180 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 80159224 00156184 41 82 00 BC */ beq lbl_801592E0 +/* 80159228 00156188 3B FE 00 04 */ addi r31, r30, 4 +/* 8015922C 0015618C 48 00 00 9C */ b lbl_801592C8 +lbl_80159230: +/* 80159230 00156190 88 1D 05 D6 */ lbz r0, 0x5d6(r29) +/* 80159234 00156194 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80159238 00156198 40 82 00 8C */ bne lbl_801592C4 +/* 8015923C 0015619C 80 BF 00 38 */ lwz r5, 0x38(r31) +/* 80159240 001561A0 38 60 00 00 */ li r3, 0 +/* 80159244 001561A4 80 0D A4 10 */ lwz r0, lbl_805A8FD0@sda21(r13) +/* 80159248 001561A8 80 DF 00 3C */ lwz r6, 0x3c(r31) +/* 8015924C 001561AC 80 8D A4 14 */ lwz r4, lbl_805A8FD4@sda21(r13) +/* 80159250 001561B0 7C A0 00 38 */ and r0, r5, r0 +/* 80159254 001561B4 7C 00 1A 78 */ xor r0, r0, r3 +/* 80159258 001561B8 7C C4 20 38 */ and r4, r6, r4 +/* 8015925C 001561BC 7C 83 1A 78 */ xor r3, r4, r3 +/* 80159260 001561C0 7C 60 03 79 */ or. r0, r3, r0 +/* 80159264 001561C4 40 82 00 60 */ bne lbl_801592C4 +/* 80159268 001561C8 C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 8015926C 001561CC 7F A3 EB 78 */ mr r3, r29 +/* 80159270 001561D0 C0 5F 00 4C */ lfs f2, 0x4c(r31) +/* 80159274 001561D4 38 81 00 08 */ addi r4, r1, 8 +/* 80159278 001561D8 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 8015927C 001561DC D0 21 00 08 */ stfs f1, 8(r1) +/* 80159280 001561E0 C0 22 9E 84 */ lfs f1, lbl_805ABBA4@sda21(r2) +/* 80159284 001561E4 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 80159288 001561E8 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8015928C 001561EC 48 10 FC 31 */ bl OrientToSurfaceNormal__11CWallWalkerFRC9CVector3ff +/* 80159290 001561F0 7F A3 EB 78 */ mr r3, r29 +/* 80159294 001561F4 4B FC 20 E5 */ bl Stop__13CPhysicsActorFv +/* 80159298 001561F8 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8015929C 001561FC 7F A3 EB 78 */ mr r3, r29 +/* 801592A0 00156200 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 801592A4 00156204 4B FC 19 FD */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 801592A8 00156208 88 1D 07 42 */ lbz r0, 0x742(r29) +/* 801592AC 0015620C 38 60 00 01 */ li r3, 1 +/* 801592B0 00156210 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801592B4 00156214 98 1D 07 42 */ stb r0, 0x742(r29) +/* 801592B8 00156218 88 1D 07 42 */ lbz r0, 0x742(r29) +/* 801592BC 0015621C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801592C0 00156220 98 1D 07 42 */ stb r0, 0x742(r29) +lbl_801592C4: +/* 801592C4 00156224 3B FF 00 60 */ addi r31, r31, 0x60 +lbl_801592C8: +/* 801592C8 00156228 80 1E 00 00 */ lwz r0, 0(r30) +/* 801592CC 0015622C 1C 00 00 60 */ mulli r0, r0, 0x60 +/* 801592D0 00156230 7C 7E 02 14 */ add r3, r30, r0 +/* 801592D4 00156234 38 03 00 04 */ addi r0, r3, 4 +/* 801592D8 00156238 7C 1F 00 40 */ cmplw r31, r0 +/* 801592DC 0015623C 41 80 FF 54 */ blt lbl_80159230 +lbl_801592E0: +/* 801592E0 00156240 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801592E4 00156244 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801592E8 00156248 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801592EC 0015624C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801592F0 00156250 83 81 00 20 */ lwz r28, 0x20(r1) +/* 801592F4 00156254 7C 08 03 A6 */ mtlr r0 +/* 801592F8 00156258 38 21 00 30 */ addi r1, r1, 0x30 +/* 801592FC 0015625C 4E 80 00 20 */ blr + +.global CloseToWall__9CParasiteFR13CStateManager +CloseToWall__9CParasiteFR13CStateManager: +/* 80159300 00156260 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 80159304 00156264 7C 08 02 A6 */ mflr r0 +/* 80159308 00156268 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 8015930C 0015626C 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 80159310 00156270 7C 9F 23 78 */ mr r31, r4 +/* 80159314 00156274 93 C1 00 98 */ stw r30, 0x98(r1) +/* 80159318 00156278 7C 7E 1B 78 */ mr r30, r3 +/* 8015931C 0015627C 88 0D A4 09 */ lbz r0, lbl_805A8FC9@sda21(r13) +/* 80159320 00156280 7C 00 07 75 */ extsb. r0, r0 +/* 80159324 00156284 40 82 00 40 */ bne lbl_80159364 +/* 80159328 00156288 80 AD 8C 94 */ lwz r5, lbl_805A7854@sda21(r13) +/* 8015932C 0015628C 38 60 00 00 */ li r3, 0 +/* 80159330 00156290 38 80 00 01 */ li r4, 1 +/* 80159334 00156294 48 23 0B C1 */ bl __shl2i +/* 80159338 00156298 3C A0 80 47 */ lis r5, lbl_8046C770@ha +/* 8015933C 0015629C 38 C0 00 01 */ li r6, 1 +/* 80159340 001562A0 38 A5 C7 70 */ addi r5, r5, lbl_8046C770@l +/* 80159344 001562A4 38 00 00 00 */ li r0, 0 +/* 80159348 001562A8 90 C1 00 48 */ stw r6, 0x48(r1) +/* 8015934C 001562AC 90 85 00 04 */ stw r4, 4(r5) +/* 80159350 001562B0 90 65 00 00 */ stw r3, 0(r5) +/* 80159354 001562B4 90 05 00 0C */ stw r0, 0xc(r5) +/* 80159358 001562B8 90 05 00 08 */ stw r0, 8(r5) +/* 8015935C 001562BC 90 C5 00 10 */ stw r6, 0x10(r5) +/* 80159360 001562C0 98 CD A4 09 */ stb r6, lbl_805A8FC9@sda21(r13) +lbl_80159364: +/* 80159364 001562C4 7F C4 F3 78 */ mr r4, r30 +/* 80159368 001562C8 38 61 00 20 */ addi r3, r1, 0x20 +/* 8015936C 001562CC 4B FC 15 C1 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 80159370 001562D0 C0 5E 05 AC */ lfs f2, 0x5ac(r30) +/* 80159374 001562D4 38 61 00 50 */ addi r3, r1, 0x50 +/* 80159378 001562D8 C0 3E 05 B0 */ lfs f1, 0x5b0(r30) +/* 8015937C 001562DC 38 81 00 14 */ addi r4, r1, 0x14 +/* 80159380 001562E0 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 80159384 001562E4 38 A1 00 08 */ addi r5, r1, 8 +/* 80159388 001562E8 EC C2 08 2A */ fadds f6, f2, f1 +/* 8015938C 001562EC C0 81 00 34 */ lfs f4, 0x34(r1) +/* 80159390 001562F0 C0 61 00 2C */ lfs f3, 0x2c(r1) +/* 80159394 001562F4 C0 41 00 24 */ lfs f2, 0x24(r1) +/* 80159398 001562F8 C0 21 00 28 */ lfs f1, 0x28(r1) +/* 8015939C 001562FC EC A0 30 2A */ fadds f5, f0, f6 +/* 801593A0 00156300 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 801593A4 00156304 EC 84 30 2A */ fadds f4, f4, f6 +/* 801593A8 00156308 EC 63 30 2A */ fadds f3, f3, f6 +/* 801593AC 0015630C EC 42 30 28 */ fsubs f2, f2, f6 +/* 801593B0 00156310 D0 A1 00 0C */ stfs f5, 0xc(r1) +/* 801593B4 00156314 EC 21 30 28 */ fsubs f1, f1, f6 +/* 801593B8 00156318 EC 00 30 28 */ fsubs f0, f0, f6 +/* 801593BC 0015631C D0 61 00 08 */ stfs f3, 8(r1) +/* 801593C0 00156320 D0 81 00 10 */ stfs f4, 0x10(r1) +/* 801593C4 00156324 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801593C8 00156328 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801593CC 0015632C D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801593D0 00156330 48 1D F1 39 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 801593D4 00156334 38 61 00 68 */ addi r3, r1, 0x68 +/* 801593D8 00156338 38 9E 00 68 */ addi r4, r30, 0x68 +/* 801593DC 0015633C 48 17 64 D9 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList +/* 801593E0 00156340 C0 A1 00 50 */ lfs f5, 0x50(r1) +/* 801593E4 00156344 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha +/* 801593E8 00156348 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l +/* 801593EC 0015634C C0 81 00 54 */ lfs f4, 0x54(r1) +/* 801593F0 00156350 C0 61 00 58 */ lfs f3, 0x58(r1) +/* 801593F4 00156354 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 801593F8 00156358 C0 41 00 5C */ lfs f2, 0x5c(r1) +/* 801593FC 0015635C 3C 60 80 47 */ lis r3, lbl_8046C770@ha +/* 80159400 00156360 C0 21 00 60 */ lfs f1, 0x60(r1) +/* 80159404 00156364 38 A4 66 70 */ addi r5, r4, skIdentity4f@l +/* 80159408 00156368 C0 01 00 64 */ lfs f0, 0x64(r1) +/* 8015940C 0015636C 38 C3 C7 70 */ addi r6, r3, lbl_8046C770@l +/* 80159410 00156370 90 01 00 68 */ stw r0, 0x68(r1) +/* 80159414 00156374 7F E3 FB 78 */ mr r3, r31 +/* 80159418 00156378 38 81 00 68 */ addi r4, r1, 0x68 +/* 8015941C 0015637C D0 A1 00 78 */ stfs f5, 0x78(r1) +/* 80159420 00156380 D0 81 00 7C */ stfs f4, 0x7c(r1) +/* 80159424 00156384 D0 61 00 80 */ stfs f3, 0x80(r1) +/* 80159428 00156388 D0 41 00 84 */ stfs f2, 0x84(r1) +/* 8015942C 0015638C D0 21 00 88 */ stfs f1, 0x88(r1) +/* 80159430 00156390 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 80159434 00156394 48 02 9F 6D */ bl DetectStaticCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter +/* 80159438 00156398 3C A0 80 3F */ lis r5, lbl_803ECAD0@ha +/* 8015943C 0015639C 3C 80 80 3E */ lis r4, lbl_803D97E4@ha +/* 80159440 001563A0 38 05 CA D0 */ addi r0, r5, lbl_803ECAD0@l +/* 80159444 001563A4 90 01 00 68 */ stw r0, 0x68(r1) +/* 80159448 001563A8 38 04 97 E4 */ addi r0, r4, lbl_803D97E4@l +/* 8015944C 001563AC 90 01 00 68 */ stw r0, 0x68(r1) +/* 80159450 001563B0 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 80159454 001563B4 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 80159458 001563B8 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 8015945C 001563BC 7C 08 03 A6 */ mtlr r0 +/* 80159460 001563C0 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 80159464 001563C4 4E 80 00 20 */ blr + +.global ShotAt__9CParasiteFR13CStateManagerf +ShotAt__9CParasiteFR13CStateManagerf: +/* 80159468 001563C8 80 03 05 D0 */ lwz r0, 0x5d0(r3) +/* 8015946C 001563CC 2C 00 00 01 */ cmpwi r0, 1 +/* 80159470 001563D0 41 82 00 1C */ beq lbl_8015948C +/* 80159474 001563D4 88 03 04 00 */ lbz r0, 0x400(r3) +/* 80159478 001563D8 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f +/* 8015947C 001563DC 7C 03 00 D0 */ neg r0, r3 +/* 80159480 001563E0 7C 00 1B 78 */ or r0, r0, r3 +/* 80159484 001563E4 54 03 0F FE */ srwi r3, r0, 0x1f +/* 80159488 001563E8 4E 80 00 20 */ blr +lbl_8015948C: +/* 8015948C 001563EC 88 03 07 43 */ lbz r0, 0x743(r3) +/* 80159490 001563F0 54 03 DF FE */ rlwinm r3, r0, 0x1b, 0x1f, 0x1f +/* 80159494 001563F4 4E 80 00 20 */ blr + +.global AttackOver__9CParasiteFR13CStateManagerf +AttackOver__9CParasiteFR13CStateManagerf: +/* 80159498 001563F8 88 03 07 42 */ lbz r0, 0x742(r3) +/* 8015949C 001563FC 54 03 FF FE */ rlwinm r3, r0, 0x1f, 0x1f, 0x1f +/* 801594A0 00156400 4E 80 00 20 */ blr + +.global Stuck__9CParasiteFR13CStateManagerf +Stuck__9CParasiteFR13CStateManagerf: +/* 801594A4 00156404 C0 23 06 0C */ lfs f1, 0x60c(r3) +/* 801594A8 00156408 C0 03 06 E0 */ lfs f0, 0x6e0(r3) +/* 801594AC 0015640C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801594B0 00156410 7C 00 00 26 */ mfcr r0 +/* 801594B4 00156414 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 801594B8 00156418 4E 80 00 20 */ blr + +.global ThinkAboutMove__9CParasiteFf +ThinkAboutMove__9CParasiteFf: +/* 801594BC 0015641C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801594C0 00156420 7C 08 02 A6 */ mflr r0 +/* 801594C4 00156424 38 A0 00 00 */ li r5, 0 +/* 801594C8 00156428 90 01 00 14 */ stw r0, 0x14(r1) +/* 801594CC 0015642C 38 00 00 20 */ li r0, 0x20 +/* 801594D0 00156430 80 83 00 68 */ lwz r4, 0x68(r3) +/* 801594D4 00156434 80 C3 00 6C */ lwz r6, 0x6c(r3) +/* 801594D8 00156438 7C 80 00 38 */ and r0, r4, r0 +/* 801594DC 0015643C 7C C4 28 38 */ and r4, r6, r5 +/* 801594E0 00156440 7C 84 2A 78 */ xor r4, r4, r5 +/* 801594E4 00156444 7C 00 2A 78 */ xor r0, r0, r5 +/* 801594E8 00156448 7C 80 03 79 */ or. r0, r4, r0 +/* 801594EC 0015644C 40 82 00 08 */ bne lbl_801594F4 +/* 801594F0 00156450 4B F1 FE 75 */ bl ThinkAboutMove__10CPatternedFf +lbl_801594F4: +/* 801594F4 00156454 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801594F8 00156458 7C 08 03 A6 */ mtlr r0 +/* 801594FC 0015645C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80159500 00156460 4E 80 00 20 */ blr + +.global GetAimPosition__9CParasiteCFRC13CStateManagerf +GetAimPosition__9CParasiteCFRC13CStateManagerf: +/* 80159504 00156464 C0 44 00 60 */ lfs f2, 0x60(r4) +/* 80159508 00156468 C0 24 00 50 */ lfs f1, 0x50(r4) +/* 8015950C 0015646C C0 04 00 40 */ lfs f0, 0x40(r4) +/* 80159510 00156470 D0 03 00 00 */ stfs f0, 0(r3) +/* 80159514 00156474 D0 23 00 04 */ stfs f1, 4(r3) +/* 80159518 00156478 D0 43 00 08 */ stfs f2, 8(r3) +/* 8015951C 0015647C 4E 80 00 20 */ blr + +.global UpdateJumpVelocity__9CParasiteFv +UpdateJumpVelocity__9CParasiteFv: +/* 80159520 00156480 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 80159524 00156484 7C 08 02 A6 */ mflr r0 +/* 80159528 00156488 90 01 00 94 */ stw r0, 0x94(r1) +/* 8015952C 0015648C DB E1 00 80 */ stfd f31, 0x80(r1) +/* 80159530 00156490 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 +/* 80159534 00156494 DB C1 00 70 */ stfd f30, 0x70(r1) +/* 80159538 00156498 F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0 +/* 8015953C 0015649C DB A1 00 60 */ stfd f29, 0x60(r1) +/* 80159540 001564A0 F3 A1 00 68 */ psq_st f29, 104(r1), 0, qr0 +/* 80159544 001564A4 DB 81 00 50 */ stfd f28, 0x50(r1) +/* 80159548 001564A8 F3 81 00 58 */ psq_st f28, 88(r1), 0, qr0 +/* 8015954C 001564AC DB 61 00 40 */ stfd f27, 0x40(r1) +/* 80159550 001564B0 F3 61 00 48 */ psq_st f27, 72(r1), 0, qr0 +/* 80159554 001564B4 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80159558 001564B8 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8015955C 001564BC 81 83 00 00 */ lwz r12, 0(r3) +/* 80159560 001564C0 7C 7E 1B 78 */ mr r30, r3 +/* 80159564 001564C4 81 8C 00 80 */ lwz r12, 0x80(r12) +/* 80159568 001564C8 7D 89 03 A6 */ mtctr r12 +/* 8015956C 001564CC 4E 80 04 21 */ bctrl +/* 80159570 001564D0 C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) +/* 80159574 001564D4 FC 20 08 50 */ fneg f1, f1 +/* 80159578 001564D8 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8015957C 001564DC D0 1E 01 50 */ stfs f0, 0x150(r30) +/* 80159580 001564E0 D0 1E 01 54 */ stfs f0, 0x154(r30) +/* 80159584 001564E4 D0 3E 01 58 */ stfs f1, 0x158(r30) +/* 80159588 001564E8 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 8015958C 001564EC C0 23 00 04 */ lfs f1, 4(r3) +/* 80159590 001564F0 C0 03 00 08 */ lfs f0, 8(r3) +/* 80159594 001564F4 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 80159598 001564F8 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 8015959C 001564FC D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801595A0 00156500 88 1E 07 42 */ lbz r0, 0x742(r30) +/* 801595A4 00156504 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 801595A8 00156508 40 82 00 3C */ bne lbl_801595E4 +/* 801595AC 0015650C C0 8D A3 F4 */ lfs f4, lbl_805A8FB4@sda21(r13) +/* 801595B0 00156510 C0 1E 00 58 */ lfs f0, 0x58(r30) +/* 801595B4 00156514 C0 5E 00 38 */ lfs f2, 0x38(r30) +/* 801595B8 00156518 C0 3E 00 48 */ lfs f1, 0x48(r30) +/* 801595BC 0015651C EC 64 00 32 */ fmuls f3, f4, f0 +/* 801595C0 00156520 C0 02 9E 64 */ lfs f0, lbl_805ABB84@sda21(r2) +/* 801595C4 00156524 EC 44 00 B2 */ fmuls f2, f4, f2 +/* 801595C8 00156528 EC 24 00 72 */ fmuls f1, f4, f1 +/* 801595CC 0015652C EC 00 01 32 */ fmuls f0, f0, f4 +/* 801595D0 00156530 D0 61 00 30 */ stfs f3, 0x30(r1) +/* 801595D4 00156534 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 801595D8 00156538 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801595DC 0015653C D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801595E0 00156540 48 00 00 38 */ b lbl_80159618 +lbl_801595E4: +/* 801595E4 00156544 C0 8D A3 FC */ lfs f4, lbl_805A8FBC@sda21(r13) +/* 801595E8 00156548 C0 1E 00 58 */ lfs f0, 0x58(r30) +/* 801595EC 0015654C C0 5E 00 38 */ lfs f2, 0x38(r30) +/* 801595F0 00156550 C0 3E 00 48 */ lfs f1, 0x48(r30) +/* 801595F4 00156554 EC 64 00 32 */ fmuls f3, f4, f0 +/* 801595F8 00156558 C0 02 9E 64 */ lfs f0, lbl_805ABB84@sda21(r2) +/* 801595FC 0015655C EC 44 00 B2 */ fmuls f2, f4, f2 +/* 80159600 00156560 EC 24 00 72 */ fmuls f1, f4, f1 +/* 80159604 00156564 EC 00 01 32 */ fmuls f0, f0, f4 +/* 80159608 00156568 D0 61 00 30 */ stfs f3, 0x30(r1) +/* 8015960C 0015656C D0 41 00 28 */ stfs f2, 0x28(r1) +/* 80159610 00156570 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 80159614 00156574 D0 01 00 30 */ stfs f0, 0x30(r1) +lbl_80159618: +/* 80159618 00156578 C0 3E 01 58 */ lfs f1, 0x158(r30) +/* 8015961C 0015657C 38 61 00 1C */ addi r3, r1, 0x1c +/* 80159620 00156580 C0 1E 00 E8 */ lfs f0, 0xe8(r30) +/* 80159624 00156584 C0 BE 00 50 */ lfs f5, 0x50(r30) +/* 80159628 00156588 EF C1 00 24 */ fdivs f30, f1, f0 +/* 8015962C 0015658C C0 7E 00 40 */ lfs f3, 0x40(r30) +/* 80159630 00156590 C0 1E 05 FC */ lfs f0, 0x5fc(r30) +/* 80159634 00156594 C0 3E 05 F8 */ lfs f1, 0x5f8(r30) +/* 80159638 00156598 C0 DE 00 60 */ lfs f6, 0x60(r30) +/* 8015963C 0015659C C0 5E 06 00 */ lfs f2, 0x600(r30) +/* 80159640 001565A0 EC 80 28 28 */ fsubs f4, f0, f5 +/* 80159644 001565A4 C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) +/* 80159648 001565A8 EC 21 18 28 */ fsubs f1, f1, f3 +/* 8015964C 001565AC D0 61 00 10 */ stfs f3, 0x10(r1) +/* 80159650 001565B0 EF E2 30 28 */ fsubs f31, f2, f6 +/* 80159654 001565B4 D0 A1 00 14 */ stfs f5, 0x14(r1) +/* 80159658 001565B8 D0 C1 00 18 */ stfs f6, 0x18(r1) +/* 8015965C 001565BC D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 80159660 001565C0 D0 81 00 20 */ stfs f4, 0x20(r1) +/* 80159664 001565C4 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80159668 001565C8 48 1B B2 51 */ bl Magnitude__9CVector3fCFv +/* 8015966C 001565CC FF A0 08 90 */ fmr f29, f1 +/* 80159670 001565D0 C0 C2 9E 88 */ lfs f6, lbl_805ABBA8@sda21(r2) +/* 80159674 001565D4 FC 1D 30 40 */ fcmpo cr0, f29, f6 +/* 80159678 001565D8 40 81 00 E8 */ ble lbl_80159760 +/* 8015967C 001565DC C0 02 9E 60 */ lfs f0, lbl_805ABB80@sda21(r2) +/* 80159680 001565E0 C0 81 00 20 */ lfs f4, 0x20(r1) +/* 80159684 001565E4 EC E0 E8 24 */ fdivs f7, f0, f29 +/* 80159688 001565E8 C0 A1 00 1C */ lfs f5, 0x1c(r1) +/* 8015968C 001565EC C0 61 00 24 */ lfs f3, 0x24(r1) +/* 80159690 001565F0 C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 80159694 001565F4 C0 21 00 28 */ lfs f1, 0x28(r1) +/* 80159698 001565F8 C0 41 00 30 */ lfs f2, 0x30(r1) +/* 8015969C 001565FC EC 84 01 F2 */ fmuls f4, f4, f7 +/* 801596A0 00156600 EC A5 01 F2 */ fmuls f5, f5, f7 +/* 801596A4 00156604 EC 63 01 F2 */ fmuls f3, f3, f7 +/* 801596A8 00156608 EC 04 00 32 */ fmuls f0, f4, f0 +/* 801596AC 0015660C D0 81 00 20 */ stfs f4, 0x20(r1) +/* 801596B0 00156610 D0 A1 00 1C */ stfs f5, 0x1c(r1) +/* 801596B4 00156614 EC 05 00 7A */ fmadds f0, f5, f1, f0 +/* 801596B8 00156618 D0 61 00 24 */ stfs f3, 0x24(r1) +/* 801596BC 0015661C EF 83 00 BA */ fmadds f28, f3, f2, f0 +/* 801596C0 00156620 FC 1C 30 40 */ fcmpo cr0, f28, f6 +/* 801596C4 00156624 40 81 00 9C */ ble lbl_80159760 +/* 801596C8 00156628 C3 62 9E 50 */ lfs f27, lbl_805ABB70@sda21(r2) +/* 801596CC 0015662C FC 1F D8 40 */ fcmpo cr0, f31, f27 +/* 801596D0 00156630 7C 00 00 26 */ mfcr r0 +/* 801596D4 00156634 FC 20 F0 90 */ fmr f1, f30 +/* 801596D8 00156638 FC 60 F8 50 */ fneg f3, f31 +/* 801596DC 0015663C 54 1F 0F FE */ srwi r31, r0, 0x1f +/* 801596E0 00156640 38 61 00 0C */ addi r3, r1, 0xc +/* 801596E4 00156644 38 81 00 08 */ addi r4, r1, 8 +/* 801596E8 00156648 4B FE 4D 0D */ bl SolveQuadratic__18CSteeringBehaviorsFfffRfRf +/* 801596EC 0015664C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801596F0 00156650 41 82 00 18 */ beq lbl_80159708 +/* 801596F4 00156654 28 1F 00 00 */ cmplwi r31, 0 +/* 801596F8 00156658 41 82 00 0C */ beq lbl_80159704 +/* 801596FC 0015665C C3 61 00 08 */ lfs f27, 8(r1) +/* 80159700 00156660 48 00 00 08 */ b lbl_80159708 +lbl_80159704: +/* 80159704 00156664 C3 61 00 0C */ lfs f27, 0xc(r1) +lbl_80159708: +/* 80159708 00156668 28 1F 00 00 */ cmplwi r31, 0 +/* 8015970C 0015666C 40 82 00 0C */ bne lbl_80159718 +/* 80159710 00156670 EC 1D E0 24 */ fdivs f0, f29, f28 +/* 80159714 00156674 EF 7B 00 2A */ fadds f27, f27, f0 +lbl_80159718: +/* 80159718 00156678 C0 02 9E 8C */ lfs f0, lbl_805ABBAC@sda21(r2) +/* 8015971C 0015667C FC 1B 00 40 */ fcmpo cr0, f27, f0 +/* 80159720 00156680 40 80 00 40 */ bge lbl_80159760 +/* 80159724 00156684 EC BD D8 24 */ fdivs f5, f29, f27 +/* 80159728 00156688 C0 22 9E 64 */ lfs f1, lbl_805ABB84@sda21(r2) +/* 8015972C 0015668C C0 01 00 24 */ lfs f0, 0x24(r1) +/* 80159730 00156690 C0 61 00 1C */ lfs f3, 0x1c(r1) +/* 80159734 00156694 C0 41 00 20 */ lfs f2, 0x20(r1) +/* 80159738 00156698 EC 85 00 32 */ fmuls f4, f5, f0 +/* 8015973C 0015669C EC 1F D8 24 */ fdivs f0, f31, f27 +/* 80159740 001566A0 D0 81 00 30 */ stfs f4, 0x30(r1) +/* 80159744 001566A4 EC 21 07 B2 */ fmuls f1, f1, f30 +/* 80159748 001566A8 EC 65 00 F2 */ fmuls f3, f5, f3 +/* 8015974C 001566AC EC 45 00 B2 */ fmuls f2, f5, f2 +/* 80159750 001566B0 EC 01 06 FC */ fnmsubs f0, f1, f27, f0 +/* 80159754 001566B4 D0 61 00 28 */ stfs f3, 0x28(r1) +/* 80159758 001566B8 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 8015975C 001566BC D0 01 00 30 */ stfs f0, 0x30(r1) +lbl_80159760: +/* 80159760 001566C0 7F C3 F3 78 */ mr r3, r30 +/* 80159764 001566C4 38 81 00 28 */ addi r4, r1, 0x28 +/* 80159768 001566C8 4B FC 15 39 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 8015976C 001566CC E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 +/* 80159770 001566D0 CB E1 00 80 */ lfd f31, 0x80(r1) +/* 80159774 001566D4 E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0 +/* 80159778 001566D8 CB C1 00 70 */ lfd f30, 0x70(r1) +/* 8015977C 001566DC E3 A1 00 68 */ psq_l f29, 104(r1), 0, qr0 +/* 80159780 001566E0 CB A1 00 60 */ lfd f29, 0x60(r1) +/* 80159784 001566E4 E3 81 00 58 */ psq_l f28, 88(r1), 0, qr0 +/* 80159788 001566E8 CB 81 00 50 */ lfd f28, 0x50(r1) +/* 8015978C 001566EC E3 61 00 48 */ psq_l f27, 72(r1), 0, qr0 +/* 80159790 001566F0 CB 61 00 40 */ lfd f27, 0x40(r1) +/* 80159794 001566F4 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80159798 001566F8 80 01 00 94 */ lwz r0, 0x94(r1) +/* 8015979C 001566FC 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 801597A0 00156700 7C 08 03 A6 */ mtlr r0 +/* 801597A4 00156704 38 21 00 90 */ addi r1, r1, 0x90 +/* 801597A8 00156708 4E 80 00 20 */ blr + +.global UpdateWalkerAnimation__9CParasiteFR13CStateManagerf +UpdateWalkerAnimation__9CParasiteFR13CStateManagerf: +/* 801597AC 0015670C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801597B0 00156710 7C 08 02 A6 */ mflr r0 +/* 801597B4 00156714 38 C0 00 01 */ li r6, 1 +/* 801597B8 00156718 90 01 00 14 */ stw r0, 0x14(r1) +/* 801597BC 0015671C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801597C0 00156720 7C 7F 1B 78 */ mr r31, r3 +/* 801597C4 00156724 4B EF BA D9 */ bl UpdateAnimation__6CActorFfR13CStateManagerb +/* 801597C8 00156728 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801597CC 0015672C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801597D0 00156730 7C 08 03 A6 */ mtlr r0 +/* 801597D4 00156734 38 21 00 10 */ addi r1, r1, 0x10 +/* 801597D8 00156738 4E 80 00 20 */ blr + +.global Think__9CParasiteFfR13CStateManager +Think__9CParasiteFfR13CStateManager: +/* 801597DC 0015673C 94 21 FE 70 */ stwu r1, -0x190(r1) +/* 801597E0 00156740 7C 08 02 A6 */ mflr r0 +/* 801597E4 00156744 90 01 01 94 */ stw r0, 0x194(r1) +/* 801597E8 00156748 DB E1 01 80 */ stfd f31, 0x180(r1) +/* 801597EC 0015674C F3 E1 01 88 */ psq_st f31, 392(r1), 0, qr0 +/* 801597F0 00156750 DB C1 01 70 */ stfd f30, 0x170(r1) +/* 801597F4 00156754 F3 C1 01 78 */ psq_st f30, 376(r1), 0, qr0 +/* 801597F8 00156758 93 E1 01 6C */ stw r31, 0x16c(r1) +/* 801597FC 0015675C 93 C1 01 68 */ stw r30, 0x168(r1) +/* 80159800 00156760 93 A1 01 64 */ stw r29, 0x164(r1) +/* 80159804 00156764 88 03 00 30 */ lbz r0, 0x30(r3) +/* 80159808 00156768 FF E0 08 90 */ fmr f31, f1 +/* 8015980C 0015676C 7C 7D 1B 78 */ mr r29, r3 +/* 80159810 00156770 7C 9E 23 78 */ mr r30, r4 +/* 80159814 00156774 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80159818 00156778 41 82 05 48 */ beq lbl_80159D60 +/* 8015981C 0015677C A8 BD 05 D4 */ lha r5, 0x5d4(r29) +/* 80159820 00156780 38 05 00 01 */ addi r0, r5, 1 +/* 80159824 00156784 B0 1D 05 D4 */ sth r0, 0x5d4(r29) +/* 80159828 00156788 80 1D 05 D0 */ lwz r0, 0x5d0(r29) +/* 8015982C 0015678C 2C 00 00 03 */ cmpwi r0, 3 +/* 80159830 00156790 40 82 00 08 */ bne lbl_80159838 +/* 80159834 00156794 4B FF D3 19 */ bl UpdateCollisionActors__9CParasiteFR13CStateManager +lbl_80159838: +/* 80159838 00156798 88 1D 05 D6 */ lbz r0, 0x5d6(r29) +/* 8015983C 0015679C 38 C0 00 00 */ li r6, 0 +/* 80159840 001567A0 50 C0 2E B4 */ rlwimi r0, r6, 5, 0x1a, 0x1a +/* 80159844 001567A4 98 1D 05 D6 */ stb r0, 0x5d6(r29) +/* 80159848 001567A8 80 BD 00 04 */ lwz r5, 4(r29) +/* 8015984C 001567AC 80 9E 08 50 */ lwz r4, 0x850(r30) +/* 80159850 001567B0 54 A3 18 38 */ slwi r3, r5, 3 +/* 80159854 001567B4 90 A1 00 20 */ stw r5, 0x20(r1) +/* 80159858 001567B8 80 84 00 20 */ lwz r4, 0x20(r4) +/* 8015985C 001567BC 38 03 00 04 */ addi r0, r3, 4 +/* 80159860 001567C0 90 A1 00 24 */ stw r5, 0x24(r1) +/* 80159864 001567C4 7C 64 00 2E */ lwzx r3, r4, r0 +/* 80159868 001567C8 88 03 00 F0 */ lbz r0, 0xf0(r3) +/* 8015986C 001567CC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80159870 001567D0 41 82 00 0C */ beq lbl_8015987C +/* 80159874 001567D4 80 63 01 2C */ lwz r3, 0x12c(r3) +/* 80159878 001567D8 80 C3 10 DC */ lwz r6, 0x10dc(r3) +lbl_8015987C: +/* 8015987C 001567DC 2C 06 00 01 */ cmpwi r6, 1 +/* 80159880 001567E0 41 82 00 14 */ beq lbl_80159894 +/* 80159884 001567E4 88 1D 05 D6 */ lbz r0, 0x5d6(r29) +/* 80159888 001567E8 38 60 00 01 */ li r3, 1 +/* 8015988C 001567EC 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 80159890 001567F0 98 1D 05 D6 */ stb r0, 0x5d6(r29) +lbl_80159894: +/* 80159894 001567F4 88 1D 05 D6 */ lbz r0, 0x5d6(r29) +/* 80159898 001567F8 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8015989C 001567FC 40 82 00 D4 */ bne lbl_80159970 +/* 801598A0 00156800 80 9E 08 4C */ lwz r4, 0x84c(r30) +/* 801598A4 00156804 38 61 00 88 */ addi r3, r1, 0x88 +/* 801598A8 00156808 C0 A4 00 60 */ lfs f5, 0x60(r4) +/* 801598AC 0015680C C0 84 00 50 */ lfs f4, 0x50(r4) +/* 801598B0 00156810 C0 64 00 40 */ lfs f3, 0x40(r4) +/* 801598B4 00156814 D0 61 00 94 */ stfs f3, 0x94(r1) +/* 801598B8 00156818 D0 81 00 98 */ stfs f4, 0x98(r1) +/* 801598BC 0015681C D0 A1 00 9C */ stfs f5, 0x9c(r1) +/* 801598C0 00156820 C0 5D 00 50 */ lfs f2, 0x50(r29) +/* 801598C4 00156824 C0 3D 00 60 */ lfs f1, 0x60(r29) +/* 801598C8 00156828 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 801598CC 0015682C EC 44 10 28 */ fsubs f2, f4, f2 +/* 801598D0 00156830 EC 25 08 28 */ fsubs f1, f5, f1 +/* 801598D4 00156834 EC 03 00 28 */ fsubs f0, f3, f0 +/* 801598D8 00156838 D0 41 00 8C */ stfs f2, 0x8c(r1) +/* 801598DC 0015683C D0 01 00 88 */ stfs f0, 0x88(r1) +/* 801598E0 00156840 D0 21 00 90 */ stfs f1, 0x90(r1) +/* 801598E4 00156844 48 1B AF D5 */ bl Magnitude__9CVector3fCFv +/* 801598E8 00156848 FF C0 08 90 */ fmr f30, f1 +/* 801598EC 0015684C C0 1D 05 C4 */ lfs f0, 0x5c4(r29) +/* 801598F0 00156850 FC 1E 00 40 */ fcmpo cr0, f30, f0 +/* 801598F4 00156854 40 81 00 7C */ ble lbl_80159970 +/* 801598F8 00156858 C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 801598FC 0015685C 38 61 00 7C */ addi r3, r1, 0x7c +/* 80159900 00156860 C0 01 00 98 */ lfs f0, 0x98(r1) +/* 80159904 00156864 38 81 00 70 */ addi r4, r1, 0x70 +/* 80159908 00156868 C0 7D 00 60 */ lfs f3, 0x60(r29) +/* 8015990C 0015686C C0 41 00 9C */ lfs f2, 0x9c(r1) +/* 80159910 00156870 EC 81 00 28 */ fsubs f4, f1, f0 +/* 80159914 00156874 C0 3D 00 40 */ lfs f1, 0x40(r29) +/* 80159918 00156878 C0 01 00 94 */ lfs f0, 0x94(r1) +/* 8015991C 0015687C EC 43 10 28 */ fsubs f2, f3, f2 +/* 80159920 00156880 D0 81 00 74 */ stfs f4, 0x74(r1) +/* 80159924 00156884 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80159928 00156888 D0 41 00 78 */ stfs f2, 0x78(r1) +/* 8015992C 0015688C D0 01 00 70 */ stfs f0, 0x70(r1) +/* 80159930 00156890 48 1B AF 21 */ bl AsNormalized__9CVector3fCFv +/* 80159934 00156894 FC 20 F0 90 */ fmr f1, f30 +/* 80159938 00156898 3C 60 80 5A */ lis r3, lbl_8059FD18@ha +/* 8015993C 0015689C 38 E3 FD 18 */ addi r7, r3, lbl_8059FD18@l +/* 80159940 001568A0 7F C4 F3 78 */ mr r4, r30 +/* 80159944 001568A4 38 61 01 28 */ addi r3, r1, 0x128 +/* 80159948 001568A8 38 A1 00 94 */ addi r5, r1, 0x94 +/* 8015994C 001568AC 38 C1 00 7C */ addi r6, r1, 0x7c +/* 80159950 001568B0 4B EF 36 49 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 80159954 001568B4 88 01 01 48 */ lbz r0, 0x148(r1) +/* 80159958 001568B8 28 00 00 00 */ cmplwi r0, 0 +/* 8015995C 001568BC 41 82 00 14 */ beq lbl_80159970 +/* 80159960 001568C0 88 1D 05 D6 */ lbz r0, 0x5d6(r29) +/* 80159964 001568C4 38 60 00 01 */ li r3, 1 +/* 80159968 001568C8 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 8015996C 001568CC 98 1D 05 D6 */ stb r0, 0x5d6(r29) +lbl_80159970: +/* 80159970 001568D0 88 7D 05 D6 */ lbz r3, 0x5d6(r29) +/* 80159974 001568D4 54 60 DF FF */ rlwinm. r0, r3, 0x1b, 0x1f, 0x1f +/* 80159978 001568D8 41 82 00 18 */ beq lbl_80159990 +/* 8015997C 001568DC 88 1D 00 F8 */ lbz r0, 0xf8(r29) +/* 80159980 001568E0 38 60 00 00 */ li r3, 0 +/* 80159984 001568E4 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80159988 001568E8 98 1D 00 F8 */ stb r0, 0xf8(r29) +/* 8015998C 001568EC 48 00 03 D4 */ b lbl_80159D60 +lbl_80159990: +/* 80159990 001568F0 54 63 CF FE */ rlwinm r3, r3, 0x19, 0x1f, 0x1f +/* 80159994 001568F4 88 1D 00 F8 */ lbz r0, 0xf8(r29) +/* 80159998 001568F8 7C 63 00 34 */ cntlzw r3, r3 +/* 8015999C 001568FC 50 60 16 30 */ rlwimi r0, r3, 2, 0x18, 0x18 +/* 801599A0 00156900 98 1D 00 F8 */ stb r0, 0xf8(r29) +/* 801599A4 00156904 88 1D 05 D6 */ lbz r0, 0x5d6(r29) +/* 801599A8 00156908 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 801599AC 0015690C 40 82 00 DC */ bne lbl_80159A88 +/* 801599B0 00156910 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 801599B4 00156914 4B FE 07 19 */ bl GetPercentageFrozen__15CBodyControllerCFv +/* 801599B8 00156918 C0 42 9E 50 */ lfs f2, lbl_805ABB70@sda21(r2) +/* 801599BC 0015691C C0 02 9E 90 */ lfs f0, lbl_805ABBB0@sda21(r2) +/* 801599C0 00156920 EC 21 10 28 */ fsubs f1, f1, f2 +/* 801599C4 00156924 FC 20 0A 10 */ fabs f1, f1 +/* 801599C8 00156928 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801599CC 0015692C 40 80 00 BC */ bge lbl_80159A88 +/* 801599D0 00156930 88 0D A4 08 */ lbz r0, lbl_805A8FC8@sda21(r13) +/* 801599D4 00156934 7C 00 07 75 */ extsb. r0, r0 +/* 801599D8 00156938 40 82 00 20 */ bne lbl_801599F8 +/* 801599DC 0015693C C0 22 9E 94 */ lfs f1, lbl_805ABBB4@sda21(r2) +/* 801599E0 00156940 38 00 00 01 */ li r0, 1 +/* 801599E4 00156944 C0 1D 03 B4 */ lfs f0, 0x3b4(r29) +/* 801599E8 00156948 EC 21 07 F2 */ fmuls f1, f1, f31 +/* 801599EC 0015694C 98 0D A4 08 */ stb r0, lbl_805A8FC8@sda21(r13) +/* 801599F0 00156950 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801599F4 00156954 D0 0D A4 04 */ stfs f0, lbl_805A8FC4@sda21(r13) +lbl_801599F8: +/* 801599F8 00156958 C0 5D 00 50 */ lfs f2, 0x50(r29) +/* 801599FC 0015695C C0 3D 06 18 */ lfs f1, 0x618(r29) +/* 80159A00 00156960 C0 0D A4 04 */ lfs f0, lbl_805A8FC4@sda21(r13) +/* 80159A04 00156964 EC A2 08 28 */ fsubs f5, f2, f1 +/* 80159A08 00156968 C0 9D 00 40 */ lfs f4, 0x40(r29) +/* 80159A0C 0015696C C0 3D 06 14 */ lfs f1, 0x614(r29) +/* 80159A10 00156970 EC 00 07 F2 */ fmuls f0, f0, f31 +/* 80159A14 00156974 C0 7D 00 60 */ lfs f3, 0x60(r29) +/* 80159A18 00156978 C0 5D 06 1C */ lfs f2, 0x61c(r29) +/* 80159A1C 0015697C EC 84 08 28 */ fsubs f4, f4, f1 +/* 80159A20 00156980 EC 25 01 72 */ fmuls f1, f5, f5 +/* 80159A24 00156984 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80159A28 00156988 EC 24 09 3A */ fmadds f1, f4, f4, f1 +/* 80159A2C 0015698C EC 22 08 BA */ fmadds f1, f2, f2, f1 +/* 80159A30 00156990 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80159A34 00156994 40 80 00 14 */ bge lbl_80159A48 +/* 80159A38 00156998 C0 1D 06 0C */ lfs f0, 0x60c(r29) +/* 80159A3C 0015699C EC 00 F8 2A */ fadds f0, f0, f31 +/* 80159A40 001569A0 D0 1D 06 0C */ stfs f0, 0x60c(r29) +/* 80159A44 001569A4 48 00 00 0C */ b lbl_80159A50 +lbl_80159A48: +/* 80159A48 001569A8 C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) +/* 80159A4C 001569AC D0 1D 06 0C */ stfs f0, 0x60c(r29) +lbl_80159A50: +/* 80159A50 001569B0 C0 7D 00 60 */ lfs f3, 0x60(r29) +/* 80159A54 001569B4 C0 5D 00 50 */ lfs f2, 0x50(r29) +/* 80159A58 001569B8 C0 3D 00 40 */ lfs f1, 0x40(r29) +/* 80159A5C 001569BC C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) +/* 80159A60 001569C0 D0 3D 06 14 */ stfs f1, 0x614(r29) +/* 80159A64 001569C4 D0 5D 06 18 */ stfs f2, 0x618(r29) +/* 80159A68 001569C8 D0 7D 06 1C */ stfs f3, 0x61c(r29) +/* 80159A6C 001569CC C0 3D 06 08 */ lfs f1, 0x608(r29) +/* 80159A70 001569D0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80159A74 001569D4 40 81 00 10 */ ble lbl_80159A84 +/* 80159A78 001569D8 EC 01 F8 28 */ fsubs f0, f1, f31 +/* 80159A7C 001569DC D0 1D 06 08 */ stfs f0, 0x608(r29) +/* 80159A80 001569E0 48 00 00 08 */ b lbl_80159A88 +lbl_80159A84: +/* 80159A84 001569E4 D0 1D 06 08 */ stfs f0, 0x608(r29) +lbl_80159A88: +/* 80159A88 001569E8 88 1D 04 00 */ lbz r0, 0x400(r29) +/* 80159A8C 001569EC 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80159A90 001569F0 41 82 01 E8 */ beq lbl_80159C78 +/* 80159A94 001569F4 83 FE 08 4C */ lwz r31, 0x84c(r30) +/* 80159A98 001569F8 38 60 00 00 */ li r3, 0 +/* 80159A9C 001569FC 80 1F 02 F8 */ lwz r0, 0x2f8(r31) +/* 80159AA0 00156A00 2C 00 00 01 */ cmpwi r0, 1 +/* 80159AA4 00156A04 41 82 00 10 */ beq lbl_80159AB4 +/* 80159AA8 00156A08 88 1D 07 42 */ lbz r0, 0x742(r29) +/* 80159AAC 00156A0C 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 80159AB0 00156A10 40 82 00 08 */ bne lbl_80159AB8 +lbl_80159AB4: +/* 80159AB4 00156A14 38 60 00 01 */ li r3, 1 +lbl_80159AB8: +/* 80159AB8 00156A18 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80159ABC 00156A1C 41 82 00 0C */ beq lbl_80159AC8 +/* 80159AC0 00156A20 C0 DD 05 AC */ lfs f6, 0x5ac(r29) +/* 80159AC4 00156A24 48 00 00 08 */ b lbl_80159ACC +lbl_80159AC8: +/* 80159AC8 00156A28 C0 DD 07 08 */ lfs f6, 0x708(r29) +lbl_80159ACC: +/* 80159ACC 00156A2C C0 7D 00 50 */ lfs f3, 0x50(r29) +/* 80159AD0 00156A30 38 61 01 0C */ addi r3, r1, 0x10c +/* 80159AD4 00156A34 C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 80159AD8 00156A38 38 81 00 64 */ addi r4, r1, 0x64 +/* 80159ADC 00156A3C C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 80159AE0 00156A40 EC A3 30 2A */ fadds f5, f3, f6 +/* 80159AE4 00156A44 EC 82 30 2A */ fadds f4, f2, f6 +/* 80159AE8 00156A48 38 A1 00 58 */ addi r5, r1, 0x58 +/* 80159AEC 00156A4C EC 20 30 2A */ fadds f1, f0, f6 +/* 80159AF0 00156A50 EC 63 30 28 */ fsubs f3, f3, f6 +/* 80159AF4 00156A54 D0 A1 00 5C */ stfs f5, 0x5c(r1) +/* 80159AF8 00156A58 EC 42 30 28 */ fsubs f2, f2, f6 +/* 80159AFC 00156A5C EC 00 30 28 */ fsubs f0, f0, f6 +/* 80159B00 00156A60 D0 21 00 58 */ stfs f1, 0x58(r1) +/* 80159B04 00156A64 D0 81 00 60 */ stfs f4, 0x60(r1) +/* 80159B08 00156A68 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 80159B0C 00156A6C D0 61 00 68 */ stfs f3, 0x68(r1) +/* 80159B10 00156A70 D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 80159B14 00156A74 48 1D E9 F5 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 80159B18 00156A78 7F E4 FB 78 */ mr r4, r31 +/* 80159B1C 00156A7C 38 61 00 D4 */ addi r3, r1, 0xd4 +/* 80159B20 00156A80 81 9F 00 00 */ lwz r12, 0(r31) +/* 80159B24 00156A84 81 8C 00 40 */ lwz r12, 0x40(r12) +/* 80159B28 00156A88 7D 89 03 A6 */ mtctr r12 +/* 80159B2C 00156A8C 4E 80 04 21 */ bctrl +/* 80159B30 00156A90 88 01 00 EC */ lbz r0, 0xec(r1) +/* 80159B34 00156A94 28 00 00 00 */ cmplwi r0, 0 +/* 80159B38 00156A98 98 01 01 08 */ stb r0, 0x108(r1) +/* 80159B3C 00156A9C 41 82 00 3C */ beq lbl_80159B78 +/* 80159B40 00156AA0 34 61 00 F0 */ addic. r3, r1, 0xf0 +/* 80159B44 00156AA4 41 82 00 34 */ beq lbl_80159B78 +/* 80159B48 00156AA8 C0 01 00 D4 */ lfs f0, 0xd4(r1) +/* 80159B4C 00156AAC D0 03 00 00 */ stfs f0, 0(r3) +/* 80159B50 00156AB0 C0 01 00 D8 */ lfs f0, 0xd8(r1) +/* 80159B54 00156AB4 D0 03 00 04 */ stfs f0, 4(r3) +/* 80159B58 00156AB8 C0 01 00 DC */ lfs f0, 0xdc(r1) +/* 80159B5C 00156ABC D0 03 00 08 */ stfs f0, 8(r3) +/* 80159B60 00156AC0 C0 01 00 E0 */ lfs f0, 0xe0(r1) +/* 80159B64 00156AC4 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 80159B68 00156AC8 C0 01 00 E4 */ lfs f0, 0xe4(r1) +/* 80159B6C 00156ACC D0 03 00 10 */ stfs f0, 0x10(r3) +/* 80159B70 00156AD0 C0 01 00 E8 */ lfs f0, 0xe8(r1) +/* 80159B74 00156AD4 D0 03 00 14 */ stfs f0, 0x14(r3) +lbl_80159B78: +/* 80159B78 00156AD8 88 01 01 08 */ lbz r0, 0x108(r1) +/* 80159B7C 00156ADC 38 60 00 00 */ li r3, 0 +/* 80159B80 00156AE0 98 61 00 EC */ stb r3, 0xec(r1) +/* 80159B84 00156AE4 28 00 00 00 */ cmplwi r0, 0 +/* 80159B88 00156AE8 41 82 00 E8 */ beq lbl_80159C70 +/* 80159B8C 00156AEC 38 61 00 F0 */ addi r3, r1, 0xf0 +/* 80159B90 00156AF0 38 81 01 0C */ addi r4, r1, 0x10c +/* 80159B94 00156AF4 48 1D DF F1 */ bl DoBoundsOverlap__6CAABoxCFRC6CAABox +/* 80159B98 00156AF8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80159B9C 00156AFC 41 82 00 D4 */ beq lbl_80159C70 +/* 80159BA0 00156B00 88 9D 07 42 */ lbz r4, 0x742(r29) +/* 80159BA4 00156B04 54 80 FF FF */ rlwinm. r0, r4, 0x1f, 0x1f, 0x1f +/* 80159BA8 00156B08 40 82 00 20 */ bne lbl_80159BC8 +/* 80159BAC 00156B0C 38 00 00 01 */ li r0, 1 +/* 80159BB0 00156B10 38 60 00 00 */ li r3, 0 +/* 80159BB4 00156B14 50 04 0F BC */ rlwimi r4, r0, 1, 0x1e, 0x1e +/* 80159BB8 00156B18 98 9D 07 42 */ stb r4, 0x742(r29) +/* 80159BBC 00156B1C 88 1D 07 42 */ lbz r0, 0x742(r29) +/* 80159BC0 00156B20 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 80159BC4 00156B24 98 1D 07 42 */ stb r0, 0x742(r29) +lbl_80159BC8: +/* 80159BC8 00156B28 C0 3D 04 20 */ lfs f1, 0x420(r29) +/* 80159BCC 00156B2C C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) +/* 80159BD0 00156B30 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80159BD4 00156B34 4C 40 13 82 */ cror 2, 0, 2 +/* 80159BD8 00156B38 40 82 00 98 */ bne lbl_80159C70 +/* 80159BDC 00156B3C 80 AD 8C 90 */ lwz r5, lbl_805A7850@sda21(r13) +/* 80159BE0 00156B40 38 60 00 00 */ li r3, 0 +/* 80159BE4 00156B44 38 80 00 01 */ li r4, 1 +/* 80159BE8 00156B48 48 23 03 0D */ bl __shl2i +/* 80159BEC 00156B4C 38 A0 00 00 */ li r5, 0 +/* 80159BF0 00156B50 38 00 00 03 */ li r0, 3 +/* 80159BF4 00156B54 90 81 00 A4 */ stw r4, 0xa4(r1) +/* 80159BF8 00156B58 7F A4 EB 78 */ mr r4, r29 +/* 80159BFC 00156B5C 90 61 00 A0 */ stw r3, 0xa0(r1) +/* 80159C00 00156B60 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 80159C04 00156B64 90 A1 00 AC */ stw r5, 0xac(r1) +/* 80159C08 00156B68 90 A1 00 A8 */ stw r5, 0xa8(r1) +/* 80159C0C 00156B6C 90 01 00 B0 */ stw r0, 0xb0(r1) +/* 80159C10 00156B70 A0 1D 00 08 */ lhz r0, 8(r29) +/* 80159C14 00156B74 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80159C18 00156B78 A0 BF 00 08 */ lhz r5, 8(r31) +/* 80159C1C 00156B7C B0 01 00 08 */ sth r0, 8(r1) +/* 80159C20 00156B80 B0 A1 00 14 */ sth r5, 0x14(r1) +/* 80159C24 00156B84 A0 1D 00 08 */ lhz r0, 8(r29) +/* 80159C28 00156B88 B0 A1 00 10 */ sth r5, 0x10(r1) +/* 80159C2C 00156B8C B0 01 00 1C */ sth r0, 0x1c(r1) +/* 80159C30 00156B90 81 9D 00 00 */ lwz r12, 0(r29) +/* 80159C34 00156B94 B0 01 00 18 */ sth r0, 0x18(r1) +/* 80159C38 00156B98 81 8C 02 B0 */ lwz r12, 0x2b0(r12) +/* 80159C3C 00156B9C 7D 89 03 A6 */ mtctr r12 +/* 80159C40 00156BA0 4E 80 04 21 */ bctrl +/* 80159C44 00156BA4 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80159C48 00156BA8 7F C3 F3 78 */ mr r3, r30 +/* 80159C4C 00156BAC 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 80159C50 00156BB0 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80159C54 00156BB4 38 81 00 1C */ addi r4, r1, 0x1c +/* 80159C58 00156BB8 38 C1 00 0C */ addi r6, r1, 0xc +/* 80159C5C 00156BBC 38 E1 00 B8 */ addi r7, r1, 0xb8 +/* 80159C60 00156BC0 39 01 00 A0 */ addi r8, r1, 0xa0 +/* 80159C64 00156BC4 4B EF 04 3D */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 80159C68 00156BC8 C0 1D 04 24 */ lfs f0, 0x424(r29) +/* 80159C6C 00156BCC D0 1D 04 20 */ stfs f0, 0x420(r29) +lbl_80159C70: +/* 80159C70 00156BD0 38 00 00 00 */ li r0, 0 +/* 80159C74 00156BD4 98 01 01 08 */ stb r0, 0x108(r1) +lbl_80159C78: +/* 80159C78 00156BD8 FC 20 F8 90 */ fmr f1, f31 +/* 80159C7C 00156BDC 7F A3 EB 78 */ mr r3, r29 +/* 80159C80 00156BE0 7F C4 F3 78 */ mr r4, r30 +/* 80159C84 00156BE4 48 10 E8 E9 */ bl Think__11CWallWalkerFfR13CStateManager +/* 80159C88 00156BE8 88 1D 05 D6 */ lbz r0, 0x5d6(r29) +/* 80159C8C 00156BEC 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 80159C90 00156BF0 40 82 00 D0 */ bne lbl_80159D60 +/* 80159C94 00156BF4 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 80159C98 00156BF8 4B FE 04 35 */ bl GetPercentageFrozen__15CBodyControllerCFv +/* 80159C9C 00156BFC C0 42 9E 50 */ lfs f2, lbl_805ABB70@sda21(r2) +/* 80159CA0 00156C00 C0 02 9E 90 */ lfs f0, lbl_805ABBB0@sda21(r2) +/* 80159CA4 00156C04 EC 21 10 28 */ fsubs f1, f1, f2 +/* 80159CA8 00156C08 FC 20 0A 10 */ fabs f1, f1 +/* 80159CAC 00156C0C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80159CB0 00156C10 40 80 00 B0 */ bge lbl_80159D60 +/* 80159CB4 00156C14 C0 1D 06 04 */ lfs f0, 0x604(r29) +/* 80159CB8 00156C18 D0 1D 03 B4 */ stfs f0, 0x3b4(r29) +/* 80159CBC 00156C1C 88 1D 05 D6 */ lbz r0, 0x5d6(r29) +/* 80159CC0 00156C20 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80159CC4 00156C24 41 82 00 8C */ beq lbl_80159D50 +/* 80159CC8 00156C28 C0 7D 01 3C */ lfs f3, 0x13c(r29) +/* 80159CCC 00156C2C FC 40 F8 90 */ fmr f2, f31 +/* 80159CD0 00156C30 C0 1D 01 40 */ lfs f0, 0x140(r29) +/* 80159CD4 00156C34 7F A3 EB 78 */ mr r3, r29 +/* 80159CD8 00156C38 C0 3D 01 38 */ lfs f1, 0x138(r29) +/* 80159CDC 00156C3C EC DF 00 F2 */ fmuls f6, f31, f3 +/* 80159CE0 00156C40 EC BF 00 32 */ fmuls f5, f31, f0 +/* 80159CE4 00156C44 C0 02 9E 58 */ lfs f0, lbl_805ABB78@sda21(r2) +/* 80159CE8 00156C48 EC 3F 00 72 */ fmuls f1, f31, f1 +/* 80159CEC 00156C4C C1 9D 00 60 */ lfs f12, 0x60(r29) +/* 80159CF0 00156C50 7F C4 F3 78 */ mr r4, r30 +/* 80159CF4 00156C54 EC E0 01 72 */ fmuls f7, f0, f5 +/* 80159CF8 00156C58 ED 00 01 B2 */ fmuls f8, f0, f6 +/* 80159CFC 00156C5C C1 7D 00 50 */ lfs f11, 0x50(r29) +/* 80159D00 00156C60 EC 80 00 72 */ fmuls f4, f0, f1 +/* 80159D04 00156C64 C0 7D 00 40 */ lfs f3, 0x40(r29) +/* 80159D08 00156C68 ED 2C 38 2A */ fadds f9, f12, f7 +/* 80159D0C 00156C6C ED 4B 40 2A */ fadds f10, f11, f8 +/* 80159D10 00156C70 EC 03 20 2A */ fadds f0, f3, f4 +/* 80159D14 00156C74 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 80159D18 00156C78 38 A1 00 4C */ addi r5, r1, 0x4c +/* 80159D1C 00156C7C D1 41 00 50 */ stfs f10, 0x50(r1) +/* 80159D20 00156C80 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 80159D24 00156C84 D1 21 00 54 */ stfs f9, 0x54(r1) +/* 80159D28 00156C88 D0 C1 00 2C */ stfs f6, 0x2c(r1) +/* 80159D2C 00156C8C C0 3D 05 AC */ lfs f1, 0x5ac(r29) +/* 80159D30 00156C90 D0 A1 00 30 */ stfs f5, 0x30(r1) +/* 80159D34 00156C94 D0 81 00 34 */ stfs f4, 0x34(r1) +/* 80159D38 00156C98 D1 01 00 38 */ stfs f8, 0x38(r1) +/* 80159D3C 00156C9C D0 E1 00 3C */ stfs f7, 0x3c(r1) +/* 80159D40 00156CA0 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 80159D44 00156CA4 D1 61 00 44 */ stfs f11, 0x44(r1) +/* 80159D48 00156CA8 D1 81 00 48 */ stfs f12, 0x48(r1) +/* 80159D4C 00156CAC 48 10 EC FD */ bl AlignToFloor__11CWallWalkerFR13CStateManagerfRC9CVector3ff +lbl_80159D50: +/* 80159D50 00156CB0 88 1D 07 42 */ lbz r0, 0x742(r29) +/* 80159D54 00156CB4 38 60 00 00 */ li r3, 0 +/* 80159D58 00156CB8 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 80159D5C 00156CBC 98 1D 07 42 */ stb r0, 0x742(r29) +lbl_80159D60: +/* 80159D60 00156CC0 E3 E1 01 88 */ psq_l f31, 392(r1), 0, qr0 +/* 80159D64 00156CC4 CB E1 01 80 */ lfd f31, 0x180(r1) +/* 80159D68 00156CC8 E3 C1 01 78 */ psq_l f30, 376(r1), 0, qr0 +/* 80159D6C 00156CCC CB C1 01 70 */ lfd f30, 0x170(r1) +/* 80159D70 00156CD0 83 E1 01 6C */ lwz r31, 0x16c(r1) +/* 80159D74 00156CD4 83 C1 01 68 */ lwz r30, 0x168(r1) +/* 80159D78 00156CD8 80 01 01 94 */ lwz r0, 0x194(r1) +/* 80159D7C 00156CDC 83 A1 01 64 */ lwz r29, 0x164(r1) +/* 80159D80 00156CE0 7C 08 03 A6 */ mtlr r0 +/* 80159D84 00156CE4 38 21 01 90 */ addi r1, r1, 0x190 +/* 80159D88 00156CE8 4E 80 00 20 */ blr + +.global PreThink__9CParasiteFfR13CStateManager +PreThink__9CParasiteFfR13CStateManager: +/* 80159D8C 00156CEC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80159D90 00156CF0 7C 08 02 A6 */ mflr r0 +/* 80159D94 00156CF4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80159D98 00156CF8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80159D9C 00156CFC 7C 7F 1B 78 */ mr r31, r3 +/* 80159DA0 00156D00 48 10 EA 91 */ bl PreThink__11CWallWalkerFfR13CStateManager +/* 80159DA4 00156D04 88 1F 07 43 */ lbz r0, 0x743(r31) +/* 80159DA8 00156D08 38 60 00 00 */ li r3, 0 +/* 80159DAC 00156D0C 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 80159DB0 00156D10 98 1F 07 43 */ stb r0, 0x743(r31) +/* 80159DB4 00156D14 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80159DB8 00156D18 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80159DBC 00156D1C 7C 08 03 A6 */ mtlr r0 +/* 80159DC0 00156D20 38 21 00 10 */ addi r1, r1, 0x10 +/* 80159DC4 00156D24 4E 80 00 20 */ blr + +.global AddDoorRepulsors__9CParasiteFR13CStateManager +AddDoorRepulsors__9CParasiteFR13CStateManager: +/* 80159DC8 00156D28 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 80159DCC 00156D2C 7C 08 02 A6 */ mflr r0 +/* 80159DD0 00156D30 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 80159DD4 00156D34 DB E1 00 B0 */ stfd f31, 0xb0(r1) +/* 80159DD8 00156D38 F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 +/* 80159DDC 00156D3C DB C1 00 A0 */ stfd f30, 0xa0(r1) +/* 80159DE0 00156D40 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 +/* 80159DE4 00156D44 DB A1 00 90 */ stfd f29, 0x90(r1) +/* 80159DE8 00156D48 F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0 +/* 80159DEC 00156D4C 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 80159DF0 00156D50 93 C1 00 88 */ stw r30, 0x88(r1) +/* 80159DF4 00156D54 93 A1 00 84 */ stw r29, 0x84(r1) +/* 80159DF8 00156D58 93 81 00 80 */ stw r28, 0x80(r1) +/* 80159DFC 00156D5C 83 E4 08 20 */ lwz r31, 0x820(r4) +/* 80159E00 00156D60 7C 7D 1B 78 */ mr r29, r3 +/* 80159E04 00156D64 3B C0 00 00 */ li r30, 0 +/* 80159E08 00156D68 AB 9F 20 08 */ lha r28, 0x2008(r31) +/* 80159E0C 00156D6C 48 00 00 5C */ b lbl_80159E68 +lbl_80159E10: +/* 80159E10 00156D70 7F E3 FB 78 */ mr r3, r31 +/* 80159E14 00156D74 7F 84 E3 78 */ mr r4, r28 +/* 80159E18 00156D78 4B EB 5E FD */ bl __vc__11CObjectListFi +/* 80159E1C 00156D7C 7C 60 1B 78 */ mr r0, r3 +/* 80159E20 00156D80 38 61 00 10 */ addi r3, r1, 0x10 +/* 80159E24 00156D84 7C 04 03 78 */ mr r4, r0 +/* 80159E28 00156D88 4B F5 02 C9 */ bl "__ct__25TCastToPtr<11CScriptDoor>FP7CEntity" +/* 80159E2C 00156D8C 80 63 00 04 */ lwz r3, 4(r3) +/* 80159E30 00156D90 28 03 00 00 */ cmplwi r3, 0 +/* 80159E34 00156D94 41 82 00 18 */ beq lbl_80159E4C +/* 80159E38 00156D98 80 63 00 04 */ lwz r3, 4(r3) +/* 80159E3C 00156D9C 80 1D 00 04 */ lwz r0, 4(r29) +/* 80159E40 00156DA0 7C 03 00 00 */ cmpw r3, r0 +/* 80159E44 00156DA4 40 82 00 08 */ bne lbl_80159E4C +/* 80159E48 00156DA8 3B DE 00 01 */ addi r30, r30, 1 +lbl_80159E4C: +/* 80159E4C 00156DAC 2C 1C FF FF */ cmpwi r28, -1 +/* 80159E50 00156DB0 41 82 00 14 */ beq lbl_80159E64 +/* 80159E54 00156DB4 57 83 18 38 */ slwi r3, r28, 3 +/* 80159E58 00156DB8 38 03 00 08 */ addi r0, r3, 8 +/* 80159E5C 00156DBC 7F 9F 02 AE */ lhax r28, r31, r0 +/* 80159E60 00156DC0 48 00 00 08 */ b lbl_80159E68 +lbl_80159E64: +/* 80159E64 00156DC4 3B 80 FF FF */ li r28, -1 +lbl_80159E68: +/* 80159E68 00156DC8 2C 1C FF FF */ cmpwi r28, -1 +/* 80159E6C 00156DCC 40 82 FF A4 */ bne lbl_80159E10 +/* 80159E70 00156DD0 7F C4 F3 78 */ mr r4, r30 +/* 80159E74 00156DD4 38 7D 05 D8 */ addi r3, r29, 0x5d8 +/* 80159E78 00156DD8 48 00 0D D1 */ bl "reserve__Q24rstl57vectorFi" +/* 80159E7C 00156DDC AB DF 20 08 */ lha r30, 0x2008(r31) +/* 80159E80 00156DE0 48 00 01 9C */ b lbl_8015A01C +lbl_80159E84: +/* 80159E84 00156DE4 7F E3 FB 78 */ mr r3, r31 +/* 80159E88 00156DE8 7F C4 F3 78 */ mr r4, r30 +/* 80159E8C 00156DEC 4B EB 5E 89 */ bl __vc__11CObjectListFi +/* 80159E90 00156DF0 7C 60 1B 78 */ mr r0, r3 +/* 80159E94 00156DF4 38 61 00 08 */ addi r3, r1, 8 +/* 80159E98 00156DF8 7C 04 03 78 */ mr r4, r0 +/* 80159E9C 00156DFC 4B F5 02 55 */ bl "__ct__25TCastToPtr<11CScriptDoor>FP7CEntity" +/* 80159EA0 00156E00 80 83 00 04 */ lwz r4, 4(r3) +/* 80159EA4 00156E04 28 04 00 00 */ cmplwi r4, 0 +/* 80159EA8 00156E08 41 82 01 58 */ beq lbl_8015A000 +/* 80159EAC 00156E0C 80 64 00 04 */ lwz r3, 4(r4) +/* 80159EB0 00156E10 80 1D 00 04 */ lwz r0, 4(r29) +/* 80159EB4 00156E14 7C 03 00 00 */ cmpw r3, r0 +/* 80159EB8 00156E18 40 82 01 48 */ bne lbl_8015A000 +/* 80159EBC 00156E1C 81 84 00 00 */ lwz r12, 0(r4) +/* 80159EC0 00156E20 38 61 00 3C */ addi r3, r1, 0x3c +/* 80159EC4 00156E24 81 8C 00 40 */ lwz r12, 0x40(r12) +/* 80159EC8 00156E28 7D 89 03 A6 */ mtctr r12 +/* 80159ECC 00156E2C 4E 80 04 21 */ bctrl +/* 80159ED0 00156E30 88 01 00 54 */ lbz r0, 0x54(r1) +/* 80159ED4 00156E34 28 00 00 00 */ cmplwi r0, 0 +/* 80159ED8 00156E38 98 01 00 70 */ stb r0, 0x70(r1) +/* 80159EDC 00156E3C 41 82 00 3C */ beq lbl_80159F18 +/* 80159EE0 00156E40 34 61 00 58 */ addic. r3, r1, 0x58 +/* 80159EE4 00156E44 41 82 00 34 */ beq lbl_80159F18 +/* 80159EE8 00156E48 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 80159EEC 00156E4C D0 03 00 00 */ stfs f0, 0(r3) +/* 80159EF0 00156E50 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 80159EF4 00156E54 D0 03 00 04 */ stfs f0, 4(r3) +/* 80159EF8 00156E58 C0 01 00 44 */ lfs f0, 0x44(r1) +/* 80159EFC 00156E5C D0 03 00 08 */ stfs f0, 8(r3) +/* 80159F00 00156E60 C0 01 00 48 */ lfs f0, 0x48(r1) +/* 80159F04 00156E64 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 80159F08 00156E68 C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 80159F0C 00156E6C D0 03 00 10 */ stfs f0, 0x10(r3) +/* 80159F10 00156E70 C0 01 00 50 */ lfs f0, 0x50(r1) +/* 80159F14 00156E74 D0 03 00 14 */ stfs f0, 0x14(r3) +lbl_80159F18: +/* 80159F18 00156E78 88 01 00 70 */ lbz r0, 0x70(r1) +/* 80159F1C 00156E7C 38 60 00 00 */ li r3, 0 +/* 80159F20 00156E80 98 61 00 54 */ stb r3, 0x54(r1) +/* 80159F24 00156E84 28 00 00 00 */ cmplwi r0, 0 +/* 80159F28 00156E88 41 82 00 D0 */ beq lbl_80159FF8 +/* 80159F2C 00156E8C C0 21 00 5C */ lfs f1, 0x5c(r1) +/* 80159F30 00156E90 38 61 00 30 */ addi r3, r1, 0x30 +/* 80159F34 00156E94 C0 01 00 68 */ lfs f0, 0x68(r1) +/* 80159F38 00156E98 C0 61 00 60 */ lfs f3, 0x60(r1) +/* 80159F3C 00156E9C C0 41 00 6C */ lfs f2, 0x6c(r1) +/* 80159F40 00156EA0 EC 81 00 28 */ fsubs f4, f1, f0 +/* 80159F44 00156EA4 C0 21 00 58 */ lfs f1, 0x58(r1) +/* 80159F48 00156EA8 C0 01 00 64 */ lfs f0, 0x64(r1) +/* 80159F4C 00156EAC EC 43 10 28 */ fsubs f2, f3, f2 +/* 80159F50 00156EB0 D0 81 00 34 */ stfs f4, 0x34(r1) +/* 80159F54 00156EB4 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80159F58 00156EB8 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 80159F5C 00156EBC D0 01 00 30 */ stfs f0, 0x30(r1) +/* 80159F60 00156EC0 48 1B A9 59 */ bl Magnitude__9CVector3fCFv +/* 80159F64 00156EC4 FF E0 08 90 */ fmr f31, f1 +/* 80159F68 00156EC8 38 61 00 18 */ addi r3, r1, 0x18 +/* 80159F6C 00156ECC 38 81 00 58 */ addi r4, r1, 0x58 +/* 80159F70 00156ED0 48 1D D6 9D */ bl GetCenterPoint__6CAABoxCFv +/* 80159F74 00156ED4 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 80159F78 00156ED8 80 01 00 20 */ lwz r0, 0x20(r1) +/* 80159F7C 00156EDC C0 02 9E 98 */ lfs f0, lbl_805ABBB8@sda21(r2) +/* 80159F80 00156EE0 90 61 00 28 */ stw r3, 0x28(r1) +/* 80159F84 00156EE4 80 61 00 18 */ lwz r3, 0x18(r1) +/* 80159F88 00156EE8 EF A0 07 F2 */ fmuls f29, f0, f31 +/* 80159F8C 00156EEC 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80159F90 00156EF0 80 1D 05 DC */ lwz r0, 0x5dc(r29) +/* 80159F94 00156EF4 80 BD 05 E0 */ lwz r5, 0x5e0(r29) +/* 80159F98 00156EF8 90 61 00 24 */ stw r3, 0x24(r1) +/* 80159F9C 00156EFC 7C 00 28 00 */ cmpw r0, r5 +/* 80159FA0 00156F00 C3 E1 00 28 */ lfs f31, 0x28(r1) +/* 80159FA4 00156F04 C3 C1 00 2C */ lfs f30, 0x2c(r1) +/* 80159FA8 00156F08 41 80 00 1C */ blt lbl_80159FC4 +/* 80159FAC 00156F0C 2C 05 00 00 */ cmpwi r5, 0 +/* 80159FB0 00156F10 38 7D 05 D8 */ addi r3, r29, 0x5d8 +/* 80159FB4 00156F14 38 80 00 04 */ li r4, 4 +/* 80159FB8 00156F18 41 82 00 08 */ beq lbl_80159FC0 +/* 80159FBC 00156F1C 54 A4 08 3C */ slwi r4, r5, 1 +lbl_80159FC0: +/* 80159FC0 00156F20 48 00 0C 89 */ bl "reserve__Q24rstl57vectorFi" +lbl_80159FC4: +/* 80159FC4 00156F24 80 1D 05 DC */ lwz r0, 0x5dc(r29) +/* 80159FC8 00156F28 80 7D 05 E4 */ lwz r3, 0x5e4(r29) +/* 80159FCC 00156F2C 54 00 20 36 */ slwi r0, r0, 4 +/* 80159FD0 00156F30 7C 63 02 15 */ add. r3, r3, r0 +/* 80159FD4 00156F34 41 82 00 18 */ beq lbl_80159FEC +/* 80159FD8 00156F38 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 80159FDC 00156F3C D0 03 00 00 */ stfs f0, 0(r3) +/* 80159FE0 00156F40 D3 E3 00 04 */ stfs f31, 4(r3) +/* 80159FE4 00156F44 D3 C3 00 08 */ stfs f30, 8(r3) +/* 80159FE8 00156F48 D3 A3 00 0C */ stfs f29, 0xc(r3) +lbl_80159FEC: +/* 80159FEC 00156F4C 80 7D 05 DC */ lwz r3, 0x5dc(r29) +/* 80159FF0 00156F50 38 03 00 01 */ addi r0, r3, 1 +/* 80159FF4 00156F54 90 1D 05 DC */ stw r0, 0x5dc(r29) +lbl_80159FF8: +/* 80159FF8 00156F58 38 00 00 00 */ li r0, 0 +/* 80159FFC 00156F5C 98 01 00 70 */ stb r0, 0x70(r1) +lbl_8015A000: +/* 8015A000 00156F60 2C 1E FF FF */ cmpwi r30, -1 +/* 8015A004 00156F64 41 82 00 14 */ beq lbl_8015A018 +/* 8015A008 00156F68 57 C3 18 38 */ slwi r3, r30, 3 +/* 8015A00C 00156F6C 38 03 00 08 */ addi r0, r3, 8 +/* 8015A010 00156F70 7F DF 02 AE */ lhax r30, r31, r0 +/* 8015A014 00156F74 48 00 00 08 */ b lbl_8015A01C +lbl_8015A018: +/* 8015A018 00156F78 3B C0 FF FF */ li r30, -1 +lbl_8015A01C: +/* 8015A01C 00156F7C 2C 1E FF FF */ cmpwi r30, -1 +/* 8015A020 00156F80 40 82 FE 64 */ bne lbl_80159E84 +/* 8015A024 00156F84 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 +/* 8015A028 00156F88 CB E1 00 B0 */ lfd f31, 0xb0(r1) +/* 8015A02C 00156F8C E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 +/* 8015A030 00156F90 CB C1 00 A0 */ lfd f30, 0xa0(r1) +/* 8015A034 00156F94 E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0 +/* 8015A038 00156F98 CB A1 00 90 */ lfd f29, 0x90(r1) +/* 8015A03C 00156F9C 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 8015A040 00156FA0 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 8015A044 00156FA4 83 A1 00 84 */ lwz r29, 0x84(r1) +/* 8015A048 00156FA8 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 8015A04C 00156FAC 83 81 00 80 */ lwz r28, 0x80(r1) +/* 8015A050 00156FB0 7C 08 03 A6 */ mtlr r0 +/* 8015A054 00156FB4 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 8015A058 00156FB8 4E 80 00 20 */ blr + +.global AcceptScriptMsg__9CParasiteF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__9CParasiteF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8015A05C 00156FBC 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 8015A060 00156FC0 7C 08 02 A6 */ mflr r0 +/* 8015A064 00156FC4 90 01 01 04 */ stw r0, 0x104(r1) +/* 8015A068 00156FC8 DB E1 00 F0 */ stfd f31, 0xf0(r1) +/* 8015A06C 00156FCC F3 E1 00 F8 */ psq_st f31, 248(r1), 0, qr0 +/* 8015A070 00156FD0 BF 61 00 DC */ stmw r27, 0xdc(r1) +/* 8015A074 00156FD4 7C BB 2B 78 */ mr r27, r5 +/* 8015A078 00156FD8 7C 7E 1B 78 */ mr r30, r3 +/* 8015A07C 00156FDC A0 05 00 00 */ lhz r0, 0(r5) +/* 8015A080 00156FE0 7C 9C 23 78 */ mr r28, r4 +/* 8015A084 00156FE4 7C DF 33 78 */ mr r31, r6 +/* 8015A088 00156FE8 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8015A08C 00156FEC B0 01 00 10 */ sth r0, 0x10(r1) +/* 8015A090 00156FF0 4B F2 2A E9 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8015A094 00156FF4 2C 1C 00 28 */ cmpwi r28, 0x28 +/* 8015A098 00156FF8 41 82 01 A8 */ beq lbl_8015A240 +/* 8015A09C 00156FFC 40 80 00 28 */ bge lbl_8015A0C4 +/* 8015A0A0 00157000 2C 1C 00 21 */ cmpwi r28, 0x21 +/* 8015A0A4 00157004 41 82 00 38 */ beq lbl_8015A0DC +/* 8015A0A8 00157008 40 80 00 10 */ bge lbl_8015A0B8 +/* 8015A0AC 0015700C 2C 1C 00 01 */ cmpwi r28, 1 +/* 8015A0B0 00157010 41 82 01 B8 */ beq lbl_8015A268 +/* 8015A0B4 00157014 48 00 03 5C */ b lbl_8015A410 +lbl_8015A0B8: +/* 8015A0B8 00157018 2C 1C 00 23 */ cmpwi r28, 0x23 +/* 8015A0BC 0015701C 40 80 03 54 */ bge lbl_8015A410 +/* 8015A0C0 00157020 48 00 01 50 */ b lbl_8015A210 +lbl_8015A0C4: +/* 8015A0C4 00157024 2C 1C 00 30 */ cmpwi r28, 0x30 +/* 8015A0C8 00157028 41 82 03 30 */ beq lbl_8015A3F8 +/* 8015A0CC 0015702C 40 80 03 44 */ bge lbl_8015A410 +/* 8015A0D0 00157030 2C 1C 00 2A */ cmpwi r28, 0x2a +/* 8015A0D4 00157034 41 82 01 C0 */ beq lbl_8015A294 +/* 8015A0D8 00157038 48 00 03 38 */ b lbl_8015A410 +lbl_8015A0DC: +/* 8015A0DC 0015703C 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8015A0E0 00157040 7F E4 FB 78 */ mr r4, r31 +/* 8015A0E4 00157044 4B FE 0C 0D */ bl Activate__15CBodyControllerFR13CStateManager +/* 8015A0E8 00157048 83 BF 0F 5C */ lwz r29, 0xf5c(r31) +/* 8015A0EC 0015704C 3C 60 80 3D */ lis r3, lbl_803D0330@ha +/* 8015A0F0 00157050 38 63 03 30 */ addi r3, r3, lbl_803D0330@l +/* 8015A0F4 00157054 A3 7E 00 08 */ lhz r27, 8(r30) +/* 8015A0F8 00157058 83 9D 00 00 */ lwz r28, 0(r29) +/* 8015A0FC 0015705C 38 83 00 09 */ addi r4, r3, 9 +/* 8015A100 00157060 38 60 00 0A */ li r3, 0xa +/* 8015A104 00157064 38 A0 00 00 */ li r5, 0 +/* 8015A108 00157068 48 1B B7 11 */ bl __nwa__FUlPCcPCc +/* 8015A10C 0015706C 28 03 00 00 */ cmplwi r3, 0 +/* 8015A110 00157070 41 82 00 0C */ beq lbl_8015A11C +/* 8015A114 00157074 93 83 00 00 */ stw r28, 0(r3) +/* 8015A118 00157078 93 A3 00 04 */ stw r29, 4(r3) +lbl_8015A11C: +/* 8015A11C 0015707C 34 83 00 08 */ addic. r4, r3, 8 +/* 8015A120 00157080 41 82 00 08 */ beq lbl_8015A128 +/* 8015A124 00157084 B3 64 00 00 */ sth r27, 0(r4) +lbl_8015A128: +/* 8015A128 00157088 80 1F 0F 58 */ lwz r0, 0xf58(r31) +/* 8015A12C 0015708C 7C 1D 00 40 */ cmplw r29, r0 +/* 8015A130 00157090 40 82 00 08 */ bne lbl_8015A138 +/* 8015A134 00157094 90 7F 0F 58 */ stw r3, 0xf58(r31) +lbl_8015A138: +/* 8015A138 00157098 80 A3 00 00 */ lwz r5, 0(r3) +/* 8015A13C 0015709C 38 80 00 00 */ li r4, 0 +/* 8015A140 001570A0 90 65 00 04 */ stw r3, 4(r5) +/* 8015A144 001570A4 80 A3 00 04 */ lwz r5, 4(r3) +/* 8015A148 001570A8 90 65 00 00 */ stw r3, 0(r5) +/* 8015A14C 001570AC 7F C3 F3 78 */ mr r3, r30 +/* 8015A150 001570B0 80 BF 0F 68 */ lwz r5, 0xf68(r31) +/* 8015A154 001570B4 38 05 00 01 */ addi r0, r5, 1 +/* 8015A158 001570B8 90 1F 0F 68 */ stw r0, 0xf68(r31) +/* 8015A15C 001570BC 4B EF 8C 11 */ bl CreateShadow__6CActorFb +/* 8015A160 001570C0 C0 1E 03 B4 */ lfs f0, 0x3b4(r30) +/* 8015A164 001570C4 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 8015A168 001570C8 38 81 00 48 */ addi r4, r1, 0x48 +/* 8015A16C 001570CC 38 A1 00 54 */ addi r5, r1, 0x54 +/* 8015A170 001570D0 D0 1E 06 04 */ stfs f0, 0x604(r30) +/* 8015A174 001570D4 C0 3E 05 AC */ lfs f1, 0x5ac(r30) +/* 8015A178 001570D8 FC 00 08 50 */ fneg f0, f1 +/* 8015A17C 001570DC D0 21 00 54 */ stfs f1, 0x54(r1) +/* 8015A180 001570E0 D0 21 00 58 */ stfs f1, 0x58(r1) +/* 8015A184 001570E4 D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 8015A188 001570E8 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 8015A18C 001570EC D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 8015A190 001570F0 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8015A194 001570F4 48 1D E3 75 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8015A198 001570F8 7C 64 1B 78 */ mr r4, r3 +/* 8015A19C 001570FC 7F C3 F3 78 */ mr r3, r30 +/* 8015A1A0 00157100 4B FC 04 B9 */ bl SetBoundingBox__13CPhysicsActorFRC6CAABox +/* 8015A1A4 00157104 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8015A1A8 00157108 7F C3 F3 78 */ mr r3, r30 +/* 8015A1AC 0015710C 7F E4 FB 78 */ mr r4, r31 +/* 8015A1B0 00157110 B0 0D A4 00 */ sth r0, lbl_805A8FC0@sda21(r13) +/* 8015A1B4 00157114 4B FF FC 15 */ bl AddDoorRepulsors__9CParasiteFR13CStateManager +/* 8015A1B8 00157118 80 1E 05 D0 */ lwz r0, 0x5d0(r30) +/* 8015A1BC 0015711C 2C 00 00 03 */ cmpwi r0, 3 +/* 8015A1C0 00157120 40 82 02 50 */ bne lbl_8015A410 +/* 8015A1C4 00157124 7F C3 F3 78 */ mr r3, r30 +/* 8015A1C8 00157128 7F E4 FB 78 */ mr r4, r31 +/* 8015A1CC 0015712C 4B FF CB 9D */ bl SetupIceZoomerCollision__9CParasiteFR13CStateManager +/* 8015A1D0 00157130 7F C3 F3 78 */ mr r3, r30 +/* 8015A1D4 00157134 7F E4 FB 78 */ mr r4, r31 +/* 8015A1D8 00157138 81 9E 00 00 */ lwz r12, 0(r30) +/* 8015A1DC 0015713C 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8015A1E0 00157140 7D 89 03 A6 */ mtctr r12 +/* 8015A1E4 00157144 4E 80 04 21 */ bctrl +/* 8015A1E8 00157148 C0 23 00 04 */ lfs f1, 4(r3) +/* 8015A1EC 0015714C 7F C3 F3 78 */ mr r3, r30 +/* 8015A1F0 00157150 C0 1E 07 14 */ lfs f0, 0x714(r30) +/* 8015A1F4 00157154 7F E4 FB 78 */ mr r4, r31 +/* 8015A1F8 00157158 38 BE 06 4C */ addi r5, r30, 0x64c +/* 8015A1FC 0015715C 38 C1 00 28 */ addi r6, r1, 0x28 +/* 8015A200 00157160 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 8015A204 00157164 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 8015A208 00157168 4B FF CA 7D */ bl SetupIceZoomerVulnerability__9CParasiteFR13CStateManagerRC20CDamageVulnerabilityRC11CHealthInfo +/* 8015A20C 0015716C 48 00 02 04 */ b lbl_8015A410 +lbl_8015A210: +/* 8015A210 00157170 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8015A214 00157174 38 7F 0F 54 */ addi r3, r31, 0xf54 +/* 8015A218 00157178 38 81 00 0C */ addi r4, r1, 0xc +/* 8015A21C 0015717C B0 01 00 0C */ sth r0, 0xc(r1) +/* 8015A220 00157180 4B FC BB 69 */ bl "remove__Q24rstl43list<9TUniqueId,Q24rstl17rmemory_allocator>FRC9TUniqueId" +/* 8015A224 00157184 80 1E 05 D0 */ lwz r0, 0x5d0(r30) +/* 8015A228 00157188 2C 00 00 03 */ cmpwi r0, 3 +/* 8015A22C 0015718C 40 82 01 E4 */ bne lbl_8015A410 +/* 8015A230 00157190 7F C3 F3 78 */ mr r3, r30 +/* 8015A234 00157194 7F E4 FB 78 */ mr r4, r31 +/* 8015A238 00157198 4B FF CB 0D */ bl DestroyActorManager__9CParasiteFR13CStateManager +/* 8015A23C 0015719C 48 00 01 D4 */ b lbl_8015A410 +lbl_8015A240: +/* 8015A240 001571A0 88 1E 07 42 */ lbz r0, 0x742(r30) +/* 8015A244 001571A4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8015A248 001571A8 41 82 01 C8 */ beq lbl_8015A410 +/* 8015A24C 001571AC 7F C3 F3 78 */ mr r3, r30 +/* 8015A250 001571B0 4B FF F2 D1 */ bl UpdateJumpVelocity__9CParasiteFv +/* 8015A254 001571B4 88 1E 07 42 */ lbz r0, 0x742(r30) +/* 8015A258 001571B8 38 60 00 00 */ li r3, 0 +/* 8015A25C 001571BC 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8015A260 001571C0 98 1E 07 42 */ stb r0, 0x742(r30) +/* 8015A264 001571C4 48 00 01 AC */ b lbl_8015A410 +lbl_8015A268: +/* 8015A268 001571C8 88 1E 05 D6 */ lbz r0, 0x5d6(r30) +/* 8015A26C 001571CC 38 60 00 00 */ li r3, 0 +/* 8015A270 001571D0 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8015A274 001571D4 98 1E 05 D6 */ stb r0, 0x5d6(r30) +/* 8015A278 001571D8 80 1E 05 D0 */ lwz r0, 0x5d0(r30) +/* 8015A27C 001571DC 2C 00 00 00 */ cmpwi r0, 0 +/* 8015A280 001571E0 40 82 01 90 */ bne lbl_8015A410 +/* 8015A284 001571E4 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8015A288 001571E8 38 80 00 02 */ li r4, 2 +/* 8015A28C 001571EC 4B FE 07 4D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8015A290 001571F0 48 00 01 80 */ b lbl_8015A410 +lbl_8015A294: +/* 8015A294 001571F4 80 1E 05 D0 */ lwz r0, 0x5d0(r30) +/* 8015A298 001571F8 2C 00 00 01 */ cmpwi r0, 1 +/* 8015A29C 001571FC 40 82 01 74 */ bne lbl_8015A410 +/* 8015A2A0 00157200 A0 1B 00 00 */ lhz r0, 0(r27) +/* 8015A2A4 00157204 7F E3 FB 78 */ mr r3, r31 +/* 8015A2A8 00157208 38 81 00 08 */ addi r4, r1, 8 +/* 8015A2AC 0015720C B0 01 00 08 */ sth r0, 8(r1) +/* 8015A2B0 00157210 4B EF 22 F5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8015A2B4 00157214 7C 64 1B 78 */ mr r4, r3 +/* 8015A2B8 00157218 38 61 00 20 */ addi r3, r1, 0x20 +/* 8015A2BC 0015721C 4B F5 59 D5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8015A2C0 00157220 80 A3 00 04 */ lwz r5, 4(r3) +/* 8015A2C4 00157224 28 05 00 00 */ cmplwi r5, 0 +/* 8015A2C8 00157228 41 82 01 48 */ beq lbl_8015A410 +/* 8015A2CC 0015722C C0 E5 00 50 */ lfs f7, 0x50(r5) +/* 8015A2D0 00157230 7F C4 F3 78 */ mr r4, r30 +/* 8015A2D4 00157234 C0 1E 00 50 */ lfs f0, 0x50(r30) +/* 8015A2D8 00157238 38 61 00 98 */ addi r3, r1, 0x98 +/* 8015A2DC 0015723C C0 85 00 40 */ lfs f4, 0x40(r5) +/* 8015A2E0 00157240 EC C7 00 28 */ fsubs f6, f7, f0 +/* 8015A2E4 00157244 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8015A2E8 00157248 C1 05 00 60 */ lfs f8, 0x60(r5) +/* 8015A2EC 0015724C EC 64 00 28 */ fsubs f3, f4, f0 +/* 8015A2F0 00157250 C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 8015A2F4 00157254 EC 06 01 B2 */ fmuls f0, f6, f6 +/* 8015A2F8 00157258 EC A8 08 28 */ fsubs f5, f8, f1 +/* 8015A2FC 0015725C 81 9E 00 00 */ lwz r12, 0(r30) +/* 8015A300 00157260 EC 23 00 F2 */ fmuls f1, f3, f3 +/* 8015A304 00157264 81 8C 00 40 */ lwz r12, 0x40(r12) +/* 8015A308 00157268 EC 45 01 72 */ fmuls f2, f5, f5 +/* 8015A30C 0015726C D0 81 00 30 */ stfs f4, 0x30(r1) +/* 8015A310 00157270 EC 01 00 2A */ fadds f0, f1, f0 +/* 8015A314 00157274 D0 E1 00 34 */ stfs f7, 0x34(r1) +/* 8015A318 00157278 EF E2 00 2A */ fadds f31, f2, f0 +/* 8015A31C 0015727C D1 01 00 38 */ stfs f8, 0x38(r1) +/* 8015A320 00157280 D0 61 00 3C */ stfs f3, 0x3c(r1) +/* 8015A324 00157284 D0 C1 00 40 */ stfs f6, 0x40(r1) +/* 8015A328 00157288 D0 A1 00 44 */ stfs f5, 0x44(r1) +/* 8015A32C 0015728C 7D 89 03 A6 */ mtctr r12 +/* 8015A330 00157290 4E 80 04 21 */ bctrl +/* 8015A334 00157294 7F C4 F3 78 */ mr r4, r30 +/* 8015A338 00157298 38 61 00 7C */ addi r3, r1, 0x7c +/* 8015A33C 0015729C 81 9E 00 00 */ lwz r12, 0(r30) +/* 8015A340 001572A0 81 8C 00 40 */ lwz r12, 0x40(r12) +/* 8015A344 001572A4 7D 89 03 A6 */ mtctr r12 +/* 8015A348 001572A8 4E 80 04 21 */ bctrl +/* 8015A34C 001572AC 7F C4 F3 78 */ mr r4, r30 +/* 8015A350 001572B0 38 61 00 60 */ addi r3, r1, 0x60 +/* 8015A354 001572B4 81 9E 00 00 */ lwz r12, 0(r30) +/* 8015A358 001572B8 81 8C 00 40 */ lwz r12, 0x40(r12) +/* 8015A35C 001572BC 7D 89 03 A6 */ mtctr r12 +/* 8015A360 001572C0 4E 80 04 21 */ bctrl +/* 8015A364 001572C4 C0 61 00 70 */ lfs f3, 0x70(r1) +/* 8015A368 001572C8 C0 41 00 64 */ lfs f2, 0x64(r1) +/* 8015A36C 001572CC C0 21 00 90 */ lfs f1, 0x90(r1) +/* 8015A370 001572D0 C0 01 00 84 */ lfs f0, 0x84(r1) +/* 8015A374 001572D4 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8015A378 001572D8 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8015A37C 001572DC D0 41 00 14 */ stfs f2, 0x14(r1) +/* 8015A380 001572E0 FC 00 10 40 */ fcmpo cr0, f0, f2 +/* 8015A384 001572E4 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 8015A388 001572E8 40 80 00 0C */ bge lbl_8015A394 +/* 8015A38C 001572EC 38 61 00 14 */ addi r3, r1, 0x14 +/* 8015A390 001572F0 48 00 00 08 */ b lbl_8015A398 +lbl_8015A394: +/* 8015A394 001572F4 38 61 00 18 */ addi r3, r1, 0x18 +lbl_8015A398: +/* 8015A398 001572F8 C0 21 00 A4 */ lfs f1, 0xa4(r1) +/* 8015A39C 001572FC C0 01 00 98 */ lfs f0, 0x98(r1) +/* 8015A3A0 00157300 EC 21 00 28 */ fsubs f1, f1, f0 +/* 8015A3A4 00157304 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 8015A3A8 00157308 C0 03 00 00 */ lfs f0, 0(r3) +/* 8015A3AC 0015730C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8015A3B0 00157310 40 80 00 08 */ bge lbl_8015A3B8 +/* 8015A3B4 00157314 48 00 00 08 */ b lbl_8015A3BC +lbl_8015A3B8: +/* 8015A3B8 00157318 38 61 00 1C */ addi r3, r1, 0x1c +lbl_8015A3BC: +/* 8015A3BC 0015731C C0 23 00 00 */ lfs f1, 0(r3) +/* 8015A3C0 00157320 38 00 00 00 */ li r0, 0 +/* 8015A3C4 00157324 C0 02 9E 60 */ lfs f0, lbl_805ABB80@sda21(r2) +/* 8015A3C8 00157328 98 01 00 78 */ stb r0, 0x78(r1) +/* 8015A3CC 0015732C EC 01 00 7A */ fmadds f0, f1, f1, f0 +/* 8015A3D0 00157330 98 01 00 94 */ stb r0, 0x94(r1) +/* 8015A3D4 00157334 EC 00 00 32 */ fmuls f0, f0, f0 +/* 8015A3D8 00157338 98 01 00 B0 */ stb r0, 0xb0(r1) +/* 8015A3DC 0015733C FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 8015A3E0 00157340 40 80 00 30 */ bge lbl_8015A410 +/* 8015A3E4 00157344 88 1E 07 43 */ lbz r0, 0x743(r30) +/* 8015A3E8 00157348 38 60 00 01 */ li r3, 1 +/* 8015A3EC 0015734C 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 8015A3F0 00157350 98 1E 07 43 */ stb r0, 0x743(r30) +/* 8015A3F4 00157354 48 00 00 1C */ b lbl_8015A410 +lbl_8015A3F8: +/* 8015A3F8 00157358 80 7E 06 20 */ lwz r3, 0x620(r30) +/* 8015A3FC 0015735C 28 03 00 00 */ cmplwi r3, 0 +/* 8015A400 00157360 41 82 00 10 */ beq lbl_8015A410 +/* 8015A404 00157364 7F E4 FB 78 */ mr r4, r31 +/* 8015A408 00157368 38 A0 00 00 */ li r5, 0 +/* 8015A40C 0015736C 48 04 CA B5 */ bl SetMovable__22CCollisionActorManagerFb +lbl_8015A410: +/* 8015A410 00157370 E3 E1 00 F8 */ psq_l f31, 248(r1), 0, qr0 +/* 8015A414 00157374 CB E1 00 F0 */ lfd f31, 0xf0(r1) +/* 8015A418 00157378 BB 61 00 DC */ lmw r27, 0xdc(r1) +/* 8015A41C 0015737C 80 01 01 04 */ lwz r0, 0x104(r1) +/* 8015A420 00157380 7C 08 03 A6 */ mtlr r0 +/* 8015A424 00157384 38 21 01 00 */ addi r1, r1, 0x100 +/* 8015A428 00157388 4E 80 00 20 */ blr + +.global Accept__9CParasiteFR8IVisitor +Accept__9CParasiteFR8IVisitor: +/* 8015A42C 0015738C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8015A430 00157390 7C 08 02 A6 */ mflr r0 +/* 8015A434 00157394 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015A438 00157398 7C 60 1B 78 */ mr r0, r3 +/* 8015A43C 0015739C 7C 83 23 78 */ mr r3, r4 +/* 8015A440 001573A0 81 84 00 00 */ lwz r12, 0(r4) +/* 8015A444 001573A4 7C 04 03 78 */ mr r4, r0 +/* 8015A448 001573A8 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8015A44C 001573AC 7D 89 03 A6 */ mtctr r12 +/* 8015A450 001573B0 4E 80 04 21 */ bctrl +/* 8015A454 001573B4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8015A458 001573B8 7C 08 03 A6 */ mtlr r0 +/* 8015A45C 001573BC 38 21 00 10 */ addi r1, r1, 0x10 +/* 8015A460 001573C0 4E 80 00 20 */ blr + +.global "__ct__9CParasiteF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfo9EBodyTypefffffffffffffffffbUiRC10Something1RC10Something2UsUsUsUiUifRC16CActorParameters" +"__ct__9CParasiteF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfo9EBodyTypefffffffffffffffffbUiRC10Something1RC10Something2UsUsUsUiUifRC16CActorParameters": +/* 8015A464 001573C4 94 21 FE 70 */ stwu r1, -0x190(r1) +/* 8015A468 001573C8 7C 08 02 A6 */ mflr r0 +/* 8015A46C 001573CC 90 01 01 94 */ stw r0, 0x194(r1) +/* 8015A470 001573D0 DB E1 01 80 */ stfd f31, 0x180(r1) +/* 8015A474 001573D4 F3 E1 01 88 */ psq_st f31, 392(r1), 0, qr0 +/* 8015A478 001573D8 DB C1 01 70 */ stfd f30, 0x170(r1) +/* 8015A47C 001573DC F3 C1 01 78 */ psq_st f30, 376(r1), 0, qr0 +/* 8015A480 001573E0 DB A1 01 60 */ stfd f29, 0x160(r1) +/* 8015A484 001573E4 F3 A1 01 68 */ psq_st f29, 360(r1), 0, qr0 +/* 8015A488 001573E8 DB 81 01 50 */ stfd f28, 0x150(r1) +/* 8015A48C 001573EC F3 81 01 58 */ psq_st f28, 344(r1), 0, qr0 +/* 8015A490 001573F0 DB 61 01 40 */ stfd f27, 0x140(r1) +/* 8015A494 001573F4 F3 61 01 48 */ psq_st f27, 328(r1), 0, qr0 +/* 8015A498 001573F8 DB 41 01 30 */ stfd f26, 0x130(r1) +/* 8015A49C 001573FC F3 41 01 38 */ psq_st f26, 312(r1), 0, qr0 +/* 8015A4A0 00157400 DB 21 01 20 */ stfd f25, 0x120(r1) +/* 8015A4A4 00157404 F3 21 01 28 */ psq_st f25, 296(r1), 0, qr0 +/* 8015A4A8 00157408 DB 01 01 10 */ stfd f24, 0x110(r1) +/* 8015A4AC 0015740C F3 01 01 18 */ psq_st f24, 280(r1), 0, qr0 +/* 8015A4B0 00157410 DA E1 01 00 */ stfd f23, 0x100(r1) +/* 8015A4B4 00157414 F2 E1 01 08 */ psq_st f23, 264(r1), 0, qr0 +/* 8015A4B8 00157418 DA C1 00 F0 */ stfd f22, 0xf0(r1) +/* 8015A4BC 0015741C F2 C1 00 F8 */ psq_st f22, 248(r1), 0, qr0 +/* 8015A4C0 00157420 DA A1 00 E0 */ stfd f21, 0xe0(r1) +/* 8015A4C4 00157424 F2 A1 00 E8 */ psq_st f21, 232(r1), 0, qr0 +/* 8015A4C8 00157428 DA 81 00 D0 */ stfd f20, 0xd0(r1) +/* 8015A4CC 0015742C F2 81 00 D8 */ psq_st f20, 216(r1), 0, qr0 +/* 8015A4D0 00157430 DA 61 00 C0 */ stfd f19, 0xc0(r1) +/* 8015A4D4 00157434 F2 61 00 C8 */ psq_st f19, 200(r1), 0, qr0 +/* 8015A4D8 00157438 DA 41 00 B0 */ stfd f18, 0xb0(r1) +/* 8015A4DC 0015743C F2 41 00 B8 */ psq_st f18, 184(r1), 0, qr0 +/* 8015A4E0 00157440 DA 21 00 A0 */ stfd f17, 0xa0(r1) +/* 8015A4E4 00157444 F2 21 00 A8 */ psq_st f17, 168(r1), 0, qr0 +/* 8015A4E8 00157448 BE E1 00 7C */ stmw r23, 0x7c(r1) +/* 8015A4EC 0015744C A0 04 00 00 */ lhz r0, 0(r4) +/* 8015A4F0 00157450 7D 57 53 78 */ mr r23, r10 +/* 8015A4F4 00157454 7C D8 33 78 */ mr r24, r6 +/* 8015A4F8 00157458 FD 20 10 90 */ fmr f9, f2 +/* 8015A4FC 0015745C B0 01 00 28 */ sth r0, 0x28(r1) +/* 8015A500 00157460 FE 40 18 90 */ fmr f18, f3 +/* 8015A504 00157464 FE 20 08 90 */ fmr f17, f1 +/* 8015A508 00157468 7C EC 3B 78 */ mr r12, r7 +/* 8015A50C 0015746C 92 E1 00 08 */ stw r23, 8(r1) +/* 8015A510 00157470 38 80 00 01 */ li r4, 1 +/* 8015A514 00157474 7D 0B 43 78 */ mr r11, r8 +/* 8015A518 00157478 90 81 00 0C */ stw r4, 0xc(r1) +/* 8015A51C 0015747C 38 00 00 00 */ li r0, 0 +/* 8015A520 00157480 7F 07 C3 78 */ mr r7, r24 +/* 8015A524 00157484 80 C1 01 98 */ lwz r6, 0x198(r1) +/* 8015A528 00157488 7D 2A 4B 78 */ mr r10, r9 +/* 8015A52C 0015748C 90 01 00 10 */ stw r0, 0x10(r1) +/* 8015A530 00157490 FE 60 28 90 */ fmr f19, f5 +/* 8015A534 00157494 80 81 01 EC */ lwz r4, 0x1ec(r1) +/* 8015A538 00157498 FE 80 30 90 */ fmr f20, f6 +/* 8015A53C 0015749C 90 C1 00 14 */ stw r6, 0x14(r1) +/* 8015A540 001574A0 FE A0 40 90 */ fmr f21, f8 +/* 8015A544 001574A4 80 C1 01 C8 */ lwz r6, 0x1c8(r1) +/* 8015A548 001574A8 90 81 00 18 */ stw r4, 0x18(r1) +/* 8015A54C 001574AC FC 20 38 90 */ fmr f1, f7 +/* 8015A550 001574B0 C0 01 01 BC */ lfs f0, 0x1bc(r1) +/* 8015A554 001574B4 FC 40 20 90 */ fmr f2, f4 +/* 8015A558 001574B8 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8015A55C 001574BC FC 60 48 90 */ fmr f3, f9 +/* 8015A560 001574C0 88 81 01 C7 */ lbz r4, 0x1c7(r1) +/* 8015A564 001574C4 90 C1 00 20 */ stw r6, 0x20(r1) +/* 8015A568 001574C8 FC 80 00 90 */ fmr f4, f0 +/* 8015A56C 001574CC C2 C1 01 9C */ lfs f22, 0x19c(r1) +/* 8015A570 001574D0 7C A6 2B 78 */ mr r6, r5 +/* 8015A574 001574D4 90 81 00 24 */ stw r4, 0x24(r1) +/* 8015A578 001574D8 7C 7F 1B 78 */ mr r31, r3 +/* 8015A57C 001574DC C2 E1 01 A0 */ lfs f23, 0x1a0(r1) +/* 8015A580 001574E0 C3 01 01 A4 */ lfs f24, 0x1a4(r1) +/* 8015A584 001574E4 7D 88 63 78 */ mr r8, r12 +/* 8015A588 001574E8 C3 21 01 A8 */ lfs f25, 0x1a8(r1) +/* 8015A58C 001574EC 7D 69 5B 78 */ mr r9, r11 +/* 8015A590 001574F0 C3 41 01 AC */ lfs f26, 0x1ac(r1) +/* 8015A594 001574F4 38 A1 00 28 */ addi r5, r1, 0x28 +/* 8015A598 001574F8 C3 61 01 B0 */ lfs f27, 0x1b0(r1) +/* 8015A59C 001574FC 38 80 00 18 */ li r4, 0x18 +/* 8015A5A0 00157500 C3 81 01 B4 */ lfs f28, 0x1b4(r1) +/* 8015A5A4 00157504 C3 A1 01 B8 */ lfs f29, 0x1b8(r1) +/* 8015A5A8 00157508 C3 C1 01 C0 */ lfs f30, 0x1c0(r1) +/* 8015A5AC 0015750C 83 01 01 CC */ lwz r24, 0x1cc(r1) +/* 8015A5B0 00157510 83 21 01 D0 */ lwz r25, 0x1d0(r1) +/* 8015A5B4 00157514 A3 41 01 D6 */ lhz r26, 0x1d6(r1) +/* 8015A5B8 00157518 A3 C1 01 DA */ lhz r30, 0x1da(r1) +/* 8015A5BC 0015751C A3 A1 01 DE */ lhz r29, 0x1de(r1) +/* 8015A5C0 00157520 83 61 01 E0 */ lwz r27, 0x1e0(r1) +/* 8015A5C4 00157524 83 81 01 E4 */ lwz r28, 0x1e4(r1) +/* 8015A5C8 00157528 C3 E1 01 E8 */ lfs f31, 0x1e8(r1) +/* 8015A5CC 0015752C 48 10 EC 95 */ bl "__ct__11CWallWalkerFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUiUi" +/* 8015A5D0 00157530 3C 80 80 3E */ lis r4, lbl_803E3004@ha +/* 8015A5D4 00157534 C0 42 9E 50 */ lfs f2, lbl_805ABB70@sda21(r2) +/* 8015A5D8 00157538 38 04 30 04 */ addi r0, r4, lbl_803E3004@l +/* 8015A5DC 0015753C C0 02 9E 60 */ lfs f0, lbl_805ABB80@sda21(r2) +/* 8015A5E0 00157540 90 1F 00 00 */ stw r0, 0(r31) +/* 8015A5E4 00157544 38 80 00 00 */ li r4, 0 +/* 8015A5E8 00157548 38 00 FF FF */ li r0, -1 +/* 8015A5EC 0015754C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8015A5F0 00157550 90 9F 05 DC */ stw r4, 0x5dc(r31) +/* 8015A5F4 00157554 90 9F 05 E0 */ stw r4, 0x5e0(r31) +/* 8015A5F8 00157558 90 9F 05 E4 */ stw r4, 0x5e4(r31) +/* 8015A5FC 0015755C 90 1F 05 E8 */ stw r0, 0x5e8(r31) +/* 8015A600 00157560 D0 5F 05 EC */ stfs f2, 0x5ec(r31) +/* 8015A604 00157564 D0 5F 05 F0 */ stfs f2, 0x5f0(r31) +/* 8015A608 00157568 D0 5F 05 F4 */ stfs f2, 0x5f4(r31) +/* 8015A60C 0015756C D0 5F 05 F8 */ stfs f2, 0x5f8(r31) +/* 8015A610 00157570 D0 5F 05 FC */ stfs f2, 0x5fc(r31) +/* 8015A614 00157574 D0 5F 06 00 */ stfs f2, 0x600(r31) +/* 8015A618 00157578 D0 1F 06 04 */ stfs f0, 0x604(r31) +/* 8015A61C 0015757C D0 5F 06 08 */ stfs f2, 0x608(r31) +/* 8015A620 00157580 D0 5F 06 0C */ stfs f2, 0x60c(r31) +/* 8015A624 00157584 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) +/* 8015A628 00157588 D0 1F 06 14 */ stfs f0, 0x614(r31) +/* 8015A62C 0015758C C0 03 00 04 */ lfs f0, 4(r3) +/* 8015A630 00157590 D0 1F 06 18 */ stfs f0, 0x618(r31) +/* 8015A634 00157594 C0 03 00 08 */ lfs f0, 8(r3) +/* 8015A638 00157598 D0 1F 06 1C */ stfs f0, 0x61c(r31) +/* 8015A63C 0015759C 90 9F 06 20 */ stw r4, 0x620(r31) +/* 8015A640 001575A0 90 9F 06 24 */ stw r4, 0x624(r31) +/* 8015A644 001575A4 D0 5F 06 28 */ stfs f2, 0x628(r31) +/* 8015A648 001575A8 D0 5F 06 2C */ stfs f2, 0x62c(r31) +/* 8015A64C 001575AC D0 5F 06 30 */ stfs f2, 0x630(r31) +/* 8015A650 001575B0 D0 5F 06 34 */ stfs f2, 0x634(r31) +/* 8015A654 001575B4 D0 5F 06 38 */ stfs f2, 0x638(r31) +/* 8015A658 001575B8 D0 5F 06 3C */ stfs f2, 0x63c(r31) +/* 8015A65C 001575BC D0 5F 06 40 */ stfs f2, 0x640(r31) +/* 8015A660 001575C0 D0 5F 06 44 */ stfs f2, 0x644(r31) +/* 8015A664 001575C4 D0 5F 06 48 */ stfs f2, 0x648(r31) +/* 8015A668 001575C8 80 78 00 00 */ lwz r3, 0(r24) +/* 8015A66C 001575CC 80 18 00 04 */ lwz r0, 4(r24) +/* 8015A670 001575D0 90 7F 06 4C */ stw r3, 0x64c(r31) +/* 8015A674 001575D4 90 1F 06 50 */ stw r0, 0x650(r31) +/* 8015A678 001575D8 80 78 00 08 */ lwz r3, 8(r24) +/* 8015A67C 001575DC 80 18 00 0C */ lwz r0, 0xc(r24) +/* 8015A680 001575E0 90 7F 06 54 */ stw r3, 0x654(r31) +/* 8015A684 001575E4 90 1F 06 58 */ stw r0, 0x658(r31) +/* 8015A688 001575E8 80 78 00 10 */ lwz r3, 0x10(r24) +/* 8015A68C 001575EC 80 18 00 14 */ lwz r0, 0x14(r24) +/* 8015A690 001575F0 90 7F 06 5C */ stw r3, 0x65c(r31) +/* 8015A694 001575F4 90 1F 06 60 */ stw r0, 0x660(r31) +/* 8015A698 001575F8 80 78 00 18 */ lwz r3, 0x18(r24) +/* 8015A69C 001575FC 80 18 00 1C */ lwz r0, 0x1c(r24) +/* 8015A6A0 00157600 90 7F 06 64 */ stw r3, 0x664(r31) +/* 8015A6A4 00157604 90 1F 06 68 */ stw r0, 0x668(r31) +/* 8015A6A8 00157608 80 78 00 20 */ lwz r3, 0x20(r24) +/* 8015A6AC 0015760C 80 18 00 24 */ lwz r0, 0x24(r24) +/* 8015A6B0 00157610 90 7F 06 6C */ stw r3, 0x66c(r31) +/* 8015A6B4 00157614 90 1F 06 70 */ stw r0, 0x670(r31) +/* 8015A6B8 00157618 80 78 00 28 */ lwz r3, 0x28(r24) +/* 8015A6BC 0015761C 80 18 00 2C */ lwz r0, 0x2c(r24) +/* 8015A6C0 00157620 90 7F 06 74 */ stw r3, 0x674(r31) +/* 8015A6C4 00157624 90 1F 06 78 */ stw r0, 0x678(r31) +/* 8015A6C8 00157628 80 78 00 30 */ lwz r3, 0x30(r24) +/* 8015A6CC 0015762C 80 18 00 34 */ lwz r0, 0x34(r24) +/* 8015A6D0 00157630 90 7F 06 7C */ stw r3, 0x67c(r31) +/* 8015A6D4 00157634 90 1F 06 80 */ stw r0, 0x680(r31) +/* 8015A6D8 00157638 80 18 00 38 */ lwz r0, 0x38(r24) +/* 8015A6DC 0015763C 90 1F 06 84 */ stw r0, 0x684(r31) +/* 8015A6E0 00157640 80 78 00 3C */ lwz r3, 0x3c(r24) +/* 8015A6E4 00157644 80 18 00 40 */ lwz r0, 0x40(r24) +/* 8015A6E8 00157648 90 7F 06 88 */ stw r3, 0x688(r31) +/* 8015A6EC 0015764C 90 1F 06 8C */ stw r0, 0x68c(r31) +/* 8015A6F0 00157650 80 78 00 44 */ lwz r3, 0x44(r24) +/* 8015A6F4 00157654 80 18 00 48 */ lwz r0, 0x48(r24) +/* 8015A6F8 00157658 90 7F 06 90 */ stw r3, 0x690(r31) +/* 8015A6FC 0015765C 90 1F 06 94 */ stw r0, 0x694(r31) +/* 8015A700 00157660 80 98 00 4C */ lwz r4, 0x4c(r24) +/* 8015A704 00157664 7F 43 D3 78 */ mr r3, r26 +/* 8015A708 00157668 80 18 00 50 */ lwz r0, 0x50(r24) +/* 8015A70C 0015766C C0 02 9E 64 */ lfs f0, lbl_805ABB84@sda21(r2) +/* 8015A710 00157670 90 9F 06 98 */ stw r4, 0x698(r31) +/* 8015A714 00157674 90 1F 06 9C */ stw r0, 0x69c(r31) +/* 8015A718 00157678 80 98 00 54 */ lwz r4, 0x54(r24) +/* 8015A71C 0015767C 80 18 00 58 */ lwz r0, 0x58(r24) +/* 8015A720 00157680 90 9F 06 A0 */ stw r4, 0x6a0(r31) +/* 8015A724 00157684 90 1F 06 A4 */ stw r0, 0x6a4(r31) +/* 8015A728 00157688 80 18 00 5C */ lwz r0, 0x5c(r24) +/* 8015A72C 0015768C 90 1F 06 A8 */ stw r0, 0x6a8(r31) +/* 8015A730 00157690 80 18 00 60 */ lwz r0, 0x60(r24) +/* 8015A734 00157694 90 1F 06 AC */ stw r0, 0x6ac(r31) +/* 8015A738 00157698 80 18 00 64 */ lwz r0, 0x64(r24) +/* 8015A73C 0015769C 90 1F 06 B0 */ stw r0, 0x6b0(r31) +/* 8015A740 001576A0 80 19 00 00 */ lwz r0, 0(r25) +/* 8015A744 001576A4 90 1F 06 B4 */ stw r0, 0x6b4(r31) +/* 8015A748 001576A8 88 19 00 04 */ lbz r0, 4(r25) +/* 8015A74C 001576AC 98 1F 06 B8 */ stb r0, 0x6b8(r31) +/* 8015A750 001576B0 C0 39 00 08 */ lfs f1, 8(r25) +/* 8015A754 001576B4 D0 3F 06 BC */ stfs f1, 0x6bc(r31) +/* 8015A758 001576B8 C0 39 00 0C */ lfs f1, 0xc(r25) +/* 8015A75C 001576BC D0 3F 06 C0 */ stfs f1, 0x6c0(r31) +/* 8015A760 001576C0 C0 39 00 10 */ lfs f1, 0x10(r25) +/* 8015A764 001576C4 D0 3F 06 C4 */ stfs f1, 0x6c4(r31) +/* 8015A768 001576C8 C0 39 00 14 */ lfs f1, 0x14(r25) +/* 8015A76C 001576CC D0 3F 06 C8 */ stfs f1, 0x6c8(r31) +/* 8015A770 001576D0 88 19 00 18 */ lbz r0, 0x18(r25) +/* 8015A774 001576D4 98 1F 06 CC */ stb r0, 0x6cc(r31) +/* 8015A778 001576D8 D2 3F 06 D0 */ stfs f17, 0x6d0(r31) +/* 8015A77C 001576DC D2 5F 06 D4 */ stfs f18, 0x6d4(r31) +/* 8015A780 001576E0 D2 7F 06 DC */ stfs f19, 0x6dc(r31) +/* 8015A784 001576E4 D2 9F 06 E0 */ stfs f20, 0x6e0(r31) +/* 8015A788 001576E8 D2 BF 06 E4 */ stfs f21, 0x6e4(r31) +/* 8015A78C 001576EC D2 DF 06 E8 */ stfs f22, 0x6e8(r31) +/* 8015A790 001576F0 D2 FF 06 EC */ stfs f23, 0x6ec(r31) +/* 8015A794 001576F4 D3 1F 06 F0 */ stfs f24, 0x6f0(r31) +/* 8015A798 001576F8 D3 3F 06 F4 */ stfs f25, 0x6f4(r31) +/* 8015A79C 001576FC D3 5F 06 F8 */ stfs f26, 0x6f8(r31) +/* 8015A7A0 00157700 D3 7F 06 FC */ stfs f27, 0x6fc(r31) +/* 8015A7A4 00157704 D3 9F 07 00 */ stfs f28, 0x700(r31) +/* 8015A7A8 00157708 D3 BF 07 04 */ stfs f29, 0x704(r31) +/* 8015A7AC 0015770C C0 37 00 C8 */ lfs f1, 0xc8(r23) +/* 8015A7B0 00157710 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8015A7B4 00157714 D0 1F 07 08 */ stfs f0, 0x708(r31) +/* 8015A7B8 00157718 D3 DF 07 10 */ stfs f30, 0x710(r31) +/* 8015A7BC 0015771C D3 FF 07 14 */ stfs f31, 0x714(r31) +/* 8015A7C0 00157720 D0 5F 07 18 */ stfs f2, 0x718(r31) +/* 8015A7C4 00157724 D0 5F 07 1C */ stfs f2, 0x71c(r31) +/* 8015A7C8 00157728 D0 5F 07 20 */ stfs f2, 0x720(r31) +/* 8015A7CC 0015772C D0 5F 07 24 */ stfs f2, 0x724(r31) +/* 8015A7D0 00157730 D0 5F 07 28 */ stfs f2, 0x728(r31) +/* 8015A7D4 00157734 D0 5F 07 2C */ stfs f2, 0x72c(r31) +/* 8015A7D8 00157738 D0 5F 07 30 */ stfs f2, 0x730(r31) +/* 8015A7DC 0015773C D0 5F 07 34 */ stfs f2, 0x734(r31) +/* 8015A7E0 00157740 D0 5F 07 38 */ stfs f2, 0x738(r31) +/* 8015A7E4 00157744 48 18 E1 CD */ bl TranslateSFXID__11CSfxManagerFUs +/* 8015A7E8 00157748 B0 7F 07 3C */ sth r3, 0x73c(r31) +/* 8015A7EC 0015774C 7F C3 F3 78 */ mr r3, r30 +/* 8015A7F0 00157750 48 18 E1 C1 */ bl TranslateSFXID__11CSfxManagerFUs +/* 8015A7F4 00157754 B0 7F 07 3E */ sth r3, 0x73e(r31) +/* 8015A7F8 00157758 7F A3 EB 78 */ mr r3, r29 +/* 8015A7FC 0015775C 48 18 E1 B5 */ bl TranslateSFXID__11CSfxManagerFUs +/* 8015A800 00157760 B0 7F 07 40 */ sth r3, 0x740(r31) +/* 8015A804 00157764 38 C0 00 00 */ li r6, 0 +/* 8015A808 00157768 38 A0 00 01 */ li r5, 1 +/* 8015A80C 0015776C 7F E3 FB 78 */ mr r3, r31 +/* 8015A810 00157770 88 1F 07 42 */ lbz r0, 0x742(r31) +/* 8015A814 00157774 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18 +/* 8015A818 00157778 38 80 00 00 */ li r4, 0 +/* 8015A81C 0015777C 98 1F 07 42 */ stb r0, 0x742(r31) +/* 8015A820 00157780 88 1F 07 42 */ lbz r0, 0x742(r31) +/* 8015A824 00157784 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 +/* 8015A828 00157788 98 1F 07 42 */ stb r0, 0x742(r31) +/* 8015A82C 0015778C 88 1F 07 42 */ lbz r0, 0x742(r31) +/* 8015A830 00157790 50 C0 2E B4 */ rlwimi r0, r6, 5, 0x1a, 0x1a +/* 8015A834 00157794 98 1F 07 42 */ stb r0, 0x742(r31) +/* 8015A838 00157798 88 1F 07 42 */ lbz r0, 0x742(r31) +/* 8015A83C 0015779C 50 C0 26 F6 */ rlwimi r0, r6, 4, 0x1b, 0x1b +/* 8015A840 001577A0 98 1F 07 42 */ stb r0, 0x742(r31) +/* 8015A844 001577A4 88 1F 07 42 */ lbz r0, 0x742(r31) +/* 8015A848 001577A8 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 8015A84C 001577AC 98 1F 07 42 */ stb r0, 0x742(r31) +/* 8015A850 001577B0 88 1F 07 42 */ lbz r0, 0x742(r31) +/* 8015A854 001577B4 50 C0 17 7A */ rlwimi r0, r6, 2, 0x1d, 0x1d +/* 8015A858 001577B8 98 1F 07 42 */ stb r0, 0x742(r31) +/* 8015A85C 001577BC 88 1F 07 42 */ lbz r0, 0x742(r31) +/* 8015A860 001577C0 50 A0 0F BC */ rlwimi r0, r5, 1, 0x1e, 0x1e +/* 8015A864 001577C4 98 1F 07 42 */ stb r0, 0x742(r31) +/* 8015A868 001577C8 88 1F 07 42 */ lbz r0, 0x742(r31) +/* 8015A86C 001577CC 50 C0 07 FE */ rlwimi r0, r6, 0, 0x1f, 0x1f +/* 8015A870 001577D0 98 1F 07 42 */ stb r0, 0x742(r31) +/* 8015A874 001577D4 88 1F 07 43 */ lbz r0, 0x743(r31) +/* 8015A878 001577D8 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18 +/* 8015A87C 001577DC 98 1F 07 43 */ stb r0, 0x743(r31) +/* 8015A880 001577E0 88 1F 07 43 */ lbz r0, 0x743(r31) +/* 8015A884 001577E4 50 C0 2E B4 */ rlwimi r0, r6, 5, 0x1a, 0x1a +/* 8015A888 001577E8 98 1F 07 43 */ stb r0, 0x743(r31) +/* 8015A88C 001577EC 88 1F 07 43 */ lbz r0, 0x743(r31) +/* 8015A890 001577F0 50 C0 26 F6 */ rlwimi r0, r6, 4, 0x1b, 0x1b +/* 8015A894 001577F4 98 1F 07 43 */ stb r0, 0x743(r31) +/* 8015A898 001577F8 4B EF 9B 21 */ bl SetCallTouch__6CActorFb +/* 8015A89C 001577FC 80 1F 05 D0 */ lwz r0, 0x5d0(r31) +/* 8015A8A0 00157800 2C 00 00 02 */ cmpwi r0, 2 +/* 8015A8A4 00157804 41 82 00 20 */ beq lbl_8015A8C4 +/* 8015A8A8 00157808 40 80 00 10 */ bge lbl_8015A8B8 +/* 8015A8AC 0015780C 2C 00 00 01 */ cmpwi r0, 1 +/* 8015A8B0 00157810 40 80 00 24 */ bge lbl_8015A8D4 +/* 8015A8B4 00157814 48 00 02 28 */ b lbl_8015AADC +lbl_8015A8B8: +/* 8015A8B8 00157818 2C 00 00 04 */ cmpwi r0, 4 +/* 8015A8BC 0015781C 40 80 02 20 */ bge lbl_8015AADC +/* 8015A8C0 00157820 48 00 00 24 */ b lbl_8015A8E4 +lbl_8015A8C4: +/* 8015A8C4 00157824 88 1F 04 E1 */ lbz r0, 0x4e1(r31) +/* 8015A8C8 00157828 38 60 00 00 */ li r3, 0 +/* 8015A8CC 0015782C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8015A8D0 00157830 98 1F 04 E1 */ stb r0, 0x4e1(r31) +lbl_8015A8D4: +/* 8015A8D4 00157834 38 7F 04 60 */ addi r3, r31, 0x460 +/* 8015A8D8 00157838 38 80 00 00 */ li r4, 0 +/* 8015A8DC 0015783C 48 0D 94 89 */ bl SetAutoResetImpulse__20CKnockBackControllerFb +/* 8015A8E0 00157840 48 00 01 FC */ b lbl_8015AADC +lbl_8015A8E4: +/* 8015A8E4 00157844 3C 60 80 3D */ lis r3, lbl_803D0330@ha +/* 8015A8E8 00157848 3A E0 00 00 */ li r23, 0 +/* 8015A8EC 0015784C 38 63 03 30 */ addi r3, r3, lbl_803D0330@l +/* 8015A8F0 00157850 3B 00 00 00 */ li r24, 0 +/* 8015A8F4 00157854 38 83 00 09 */ addi r4, r3, 9 +/* 8015A8F8 00157858 3B 20 00 00 */ li r25, 0 +/* 8015A8FC 0015785C 3B 40 00 00 */ li r26, 0 +/* 8015A900 00157860 38 60 00 0C */ li r3, 0xc +/* 8015A904 00157864 38 A0 00 00 */ li r5, 0 +/* 8015A908 00157868 48 1B AF 65 */ bl __nw__FUlPCcPCc +/* 8015A90C 0015786C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8015A910 00157870 41 82 01 54 */ beq lbl_8015AA64 +/* 8015A914 00157874 3C 80 80 3D */ lis r4, lbl_803D0330@ha +/* 8015A918 00157878 38 60 00 3C */ li r3, 0x3c +/* 8015A91C 0015787C 38 84 03 30 */ addi r4, r4, lbl_803D0330@l +/* 8015A920 00157880 38 A0 00 00 */ li r5, 0 +/* 8015A924 00157884 38 84 00 09 */ addi r4, r4, 9 +/* 8015A928 00157888 48 1B AF 45 */ bl __nw__FUlPCcPCc +/* 8015A92C 0015788C 7C 7D 1B 79 */ or. r29, r3, r3 +/* 8015A930 00157890 41 82 00 D4 */ beq lbl_8015AA04 +/* 8015A934 00157894 3C 60 43 4D */ lis r3, 0x434D444C@ha +/* 8015A938 00157898 93 61 00 40 */ stw r27, 0x40(r1) +/* 8015A93C 0015789C 38 03 44 4C */ addi r0, r3, 0x434D444C@l +/* 8015A940 001578A0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8015A944 001578A4 90 01 00 3C */ stw r0, 0x3c(r1) +/* 8015A948 001578A8 38 61 00 34 */ addi r3, r1, 0x34 +/* 8015A94C 001578AC 38 A1 00 3C */ addi r5, r1, 0x3c +/* 8015A950 001578B0 81 84 00 00 */ lwz r12, 0(r4) +/* 8015A954 001578B4 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8015A958 001578B8 7D 89 03 A6 */ mtctr r12 +/* 8015A95C 001578BC 4E 80 04 21 */ bctrl +/* 8015A960 001578C0 3A E1 00 54 */ addi r23, r1, 0x54 +/* 8015A964 001578C4 38 81 00 34 */ addi r4, r1, 0x34 +/* 8015A968 001578C8 7E E3 BB 78 */ mr r3, r23 +/* 8015A96C 001578CC 3B 20 00 01 */ li r25, 1 +/* 8015A970 001578D0 48 1E 65 39 */ bl __ct__6CTokenFRC6CToken +/* 8015A974 001578D4 7E E3 BB 78 */ mr r3, r23 +/* 8015A978 001578D8 48 1E 64 95 */ bl GetObj__6CTokenFv +/* 8015A97C 001578DC 80 A3 00 04 */ lwz r5, 4(r3) +/* 8015A980 001578E0 3C 60 43 53 */ lis r3, 0x43534B52@ha +/* 8015A984 001578E4 38 03 4B 52 */ addi r0, r3, 0x43534B52@l +/* 8015A988 001578E8 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8015A98C 001578EC 90 A1 00 5C */ stw r5, 0x5c(r1) +/* 8015A990 001578F0 38 61 00 44 */ addi r3, r1, 0x44 +/* 8015A994 001578F4 38 A1 00 4C */ addi r5, r1, 0x4c +/* 8015A998 001578F8 3B 40 00 01 */ li r26, 1 +/* 8015A99C 001578FC 90 01 00 4C */ stw r0, 0x4c(r1) +/* 8015A9A0 00157900 93 81 00 50 */ stw r28, 0x50(r1) +/* 8015A9A4 00157904 81 84 00 00 */ lwz r12, 0(r4) +/* 8015A9A8 00157908 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8015A9AC 0015790C 7D 89 03 A6 */ mtctr r12 +/* 8015A9B0 00157910 4E 80 04 21 */ bctrl +/* 8015A9B4 00157914 3B 01 00 60 */ addi r24, r1, 0x60 +/* 8015A9B8 00157918 38 81 00 44 */ addi r4, r1, 0x44 +/* 8015A9BC 0015791C 7F 03 C3 78 */ mr r3, r24 +/* 8015A9C0 00157920 3A E0 00 01 */ li r23, 1 +/* 8015A9C4 00157924 48 1E 64 E5 */ bl __ct__6CTokenFRC6CToken +/* 8015A9C8 00157928 7F 03 C3 78 */ mr r3, r24 +/* 8015A9CC 0015792C 48 1E 64 41 */ bl GetObj__6CTokenFv +/* 8015A9D0 00157930 80 03 00 04 */ lwz r0, 4(r3) +/* 8015A9D4 00157934 7F 05 C3 78 */ mr r5, r24 +/* 8015A9D8 00157938 7F A3 EB 78 */ mr r3, r29 +/* 8015A9DC 0015793C 38 81 00 54 */ addi r4, r1, 0x54 +/* 8015A9E0 00157940 90 01 00 68 */ stw r0, 0x68(r1) +/* 8015A9E4 00157944 3B 00 00 01 */ li r24, 1 +/* 8015A9E8 00157948 38 E0 00 01 */ li r7, 1 +/* 8015A9EC 0015794C 80 DF 00 64 */ lwz r6, 0x64(r31) +/* 8015A9F0 00157950 80 C6 00 10 */ lwz r6, 0x10(r6) +/* 8015A9F4 00157954 80 C6 00 E0 */ lwz r6, 0xe0(r6) +/* 8015A9F8 00157958 38 C6 00 1C */ addi r6, r6, 0x1c +/* 8015A9FC 0015795C 48 1F 8A 3D */ bl "__ct__13CSkinnedModelFRC21TLockedToken<6CModel>RC26TLockedToken<10CSkinRules>RC31TLockedToken<15CCharLayoutInfo>Q213CSkinnedModel14EDataOwnership" +/* 8015AA00 00157960 7C 7D 1B 78 */ mr r29, r3 +lbl_8015AA04: +/* 8015AA04 00157964 7F DB F3 78 */ mr r27, r30 +/* 8015AA08 00157968 7F A4 EB 78 */ mr r4, r29 +/* 8015AA0C 0015796C 38 61 00 2C */ addi r3, r1, 0x2c +/* 8015AA10 00157970 48 00 01 A9 */ bl sub_8015abb8 +/* 8015AA14 00157974 38 00 00 00 */ li r0, 0 +/* 8015AA18 00157978 80 81 00 30 */ lwz r4, 0x30(r1) +/* 8015AA1C 0015797C 98 01 00 2C */ stb r0, 0x2c(r1) +/* 8015AA20 00157980 7F C3 F3 78 */ mr r3, r30 +/* 8015AA24 00157984 48 1E 64 E1 */ bl __ct__6CTokenFP4IObj +/* 8015AA28 00157988 88 01 00 2C */ lbz r0, 0x2c(r1) +/* 8015AA2C 0015798C 28 00 00 00 */ cmplwi r0, 0 +/* 8015AA30 00157990 41 82 00 24 */ beq lbl_8015AA54 +/* 8015AA34 00157994 80 61 00 30 */ lwz r3, 0x30(r1) +/* 8015AA38 00157998 28 03 00 00 */ cmplwi r3, 0 +/* 8015AA3C 0015799C 41 82 00 18 */ beq lbl_8015AA54 +/* 8015AA40 001579A0 81 83 00 00 */ lwz r12, 0(r3) +/* 8015AA44 001579A4 38 80 00 01 */ li r4, 1 +/* 8015AA48 001579A8 81 8C 00 08 */ lwz r12, 8(r12) +/* 8015AA4C 001579AC 7D 89 03 A6 */ mtctr r12 +/* 8015AA50 001579B0 4E 80 04 21 */ bctrl +lbl_8015AA54: +/* 8015AA54 001579B4 93 BB 00 08 */ stw r29, 8(r27) +/* 8015AA58 001579B8 7F 63 DB 78 */ mr r3, r27 +/* 8015AA5C 001579BC 48 1E 63 29 */ bl Lock__6CTokenFv +/* 8015AA60 001579C0 7F 7E DB 78 */ mr r30, r27 +lbl_8015AA64: +/* 8015AA64 001579C4 83 7F 06 24 */ lwz r27, 0x624(r31) +/* 8015AA68 001579C8 28 1B 00 00 */ cmplwi r27, 0 +/* 8015AA6C 001579CC 41 82 00 1C */ beq lbl_8015AA88 +/* 8015AA70 001579D0 41 82 00 10 */ beq lbl_8015AA80 +/* 8015AA74 001579D4 7F 63 DB 78 */ mr r3, r27 +/* 8015AA78 001579D8 38 80 00 00 */ li r4, 0 +/* 8015AA7C 001579DC 48 1E 63 C5 */ bl __dt__6CTokenFv +lbl_8015AA80: +/* 8015AA80 001579E0 7F 63 DB 78 */ mr r3, r27 +/* 8015AA84 001579E4 48 1B AE AD */ bl Free__7CMemoryFPCv +lbl_8015AA88: +/* 8015AA88 001579E8 7F 40 07 75 */ extsb. r0, r26 +/* 8015AA8C 001579EC 93 DF 06 24 */ stw r30, 0x624(r31) +/* 8015AA90 001579F0 41 82 00 10 */ beq lbl_8015AAA0 +/* 8015AA94 001579F4 38 61 00 54 */ addi r3, r1, 0x54 +/* 8015AA98 001579F8 38 80 00 00 */ li r4, 0 +/* 8015AA9C 001579FC 48 1E 63 A5 */ bl __dt__6CTokenFv +lbl_8015AAA0: +/* 8015AAA0 00157A00 7F 20 07 75 */ extsb. r0, r25 +/* 8015AAA4 00157A04 41 82 00 10 */ beq lbl_8015AAB4 +/* 8015AAA8 00157A08 38 61 00 34 */ addi r3, r1, 0x34 +/* 8015AAAC 00157A0C 38 80 FF FF */ li r4, -1 +/* 8015AAB0 00157A10 48 1E 63 91 */ bl __dt__6CTokenFv +lbl_8015AAB4: +/* 8015AAB4 00157A14 7F 00 07 75 */ extsb. r0, r24 +/* 8015AAB8 00157A18 41 82 00 10 */ beq lbl_8015AAC8 +/* 8015AABC 00157A1C 38 61 00 60 */ addi r3, r1, 0x60 +/* 8015AAC0 00157A20 38 80 00 00 */ li r4, 0 +/* 8015AAC4 00157A24 48 1E 63 7D */ bl __dt__6CTokenFv +lbl_8015AAC8: +/* 8015AAC8 00157A28 7E E0 07 75 */ extsb. r0, r23 +/* 8015AACC 00157A2C 41 82 00 10 */ beq lbl_8015AADC +/* 8015AAD0 00157A30 38 61 00 44 */ addi r3, r1, 0x44 +/* 8015AAD4 00157A34 38 80 FF FF */ li r4, -1 +/* 8015AAD8 00157A38 48 1E 63 69 */ bl __dt__6CTokenFv +lbl_8015AADC: +/* 8015AADC 00157A3C 80 1F 05 D0 */ lwz r0, 0x5d0(r31) +/* 8015AAE0 00157A40 2C 00 00 01 */ cmpwi r0, 1 +/* 8015AAE4 00157A44 40 82 00 44 */ bne lbl_8015AB28 +/* 8015AAE8 00157A48 88 1F 04 E1 */ lbz r0, 0x4e1(r31) +/* 8015AAEC 00157A4C 38 60 00 00 */ li r3, 0 +/* 8015AAF0 00157A50 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 8015AAF4 00157A54 98 1F 04 E1 */ stb r0, 0x4e1(r31) +/* 8015AAF8 00157A58 88 1F 04 E1 */ lbz r0, 0x4e1(r31) +/* 8015AAFC 00157A5C 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8015AB00 00157A60 98 1F 04 E1 */ stb r0, 0x4e1(r31) +/* 8015AB04 00157A64 88 1F 04 E1 */ lbz r0, 0x4e1(r31) +/* 8015AB08 00157A68 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 8015AB0C 00157A6C 98 1F 04 E1 */ stb r0, 0x4e1(r31) +/* 8015AB10 00157A70 88 1F 04 E1 */ lbz r0, 0x4e1(r31) +/* 8015AB14 00157A74 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 8015AB18 00157A78 98 1F 04 E1 */ stb r0, 0x4e1(r31) +/* 8015AB1C 00157A7C 88 1F 04 E2 */ lbz r0, 0x4e2(r31) +/* 8015AB20 00157A80 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8015AB24 00157A84 98 1F 04 E2 */ stb r0, 0x4e2(r31) +lbl_8015AB28: +/* 8015AB28 00157A88 7F E3 FB 78 */ mr r3, r31 +/* 8015AB2C 00157A8C E3 E1 01 88 */ psq_l f31, 392(r1), 0, qr0 +/* 8015AB30 00157A90 CB E1 01 80 */ lfd f31, 0x180(r1) +/* 8015AB34 00157A94 E3 C1 01 78 */ psq_l f30, 376(r1), 0, qr0 +/* 8015AB38 00157A98 CB C1 01 70 */ lfd f30, 0x170(r1) +/* 8015AB3C 00157A9C E3 A1 01 68 */ psq_l f29, 360(r1), 0, qr0 +/* 8015AB40 00157AA0 CB A1 01 60 */ lfd f29, 0x160(r1) +/* 8015AB44 00157AA4 E3 81 01 58 */ psq_l f28, 344(r1), 0, qr0 +/* 8015AB48 00157AA8 CB 81 01 50 */ lfd f28, 0x150(r1) +/* 8015AB4C 00157AAC E3 61 01 48 */ psq_l f27, 328(r1), 0, qr0 +/* 8015AB50 00157AB0 CB 61 01 40 */ lfd f27, 0x140(r1) +/* 8015AB54 00157AB4 E3 41 01 38 */ psq_l f26, 312(r1), 0, qr0 +/* 8015AB58 00157AB8 CB 41 01 30 */ lfd f26, 0x130(r1) +/* 8015AB5C 00157ABC E3 21 01 28 */ psq_l f25, 296(r1), 0, qr0 +/* 8015AB60 00157AC0 CB 21 01 20 */ lfd f25, 0x120(r1) +/* 8015AB64 00157AC4 E3 01 01 18 */ psq_l f24, 280(r1), 0, qr0 +/* 8015AB68 00157AC8 CB 01 01 10 */ lfd f24, 0x110(r1) +/* 8015AB6C 00157ACC E2 E1 01 08 */ psq_l f23, 264(r1), 0, qr0 +/* 8015AB70 00157AD0 CA E1 01 00 */ lfd f23, 0x100(r1) +/* 8015AB74 00157AD4 E2 C1 00 F8 */ psq_l f22, 248(r1), 0, qr0 +/* 8015AB78 00157AD8 CA C1 00 F0 */ lfd f22, 0xf0(r1) +/* 8015AB7C 00157ADC E2 A1 00 E8 */ psq_l f21, 232(r1), 0, qr0 +/* 8015AB80 00157AE0 CA A1 00 E0 */ lfd f21, 0xe0(r1) +/* 8015AB84 00157AE4 E2 81 00 D8 */ psq_l f20, 216(r1), 0, qr0 +/* 8015AB88 00157AE8 CA 81 00 D0 */ lfd f20, 0xd0(r1) +/* 8015AB8C 00157AEC E2 61 00 C8 */ psq_l f19, 200(r1), 0, qr0 +/* 8015AB90 00157AF0 CA 61 00 C0 */ lfd f19, 0xc0(r1) +/* 8015AB94 00157AF4 E2 41 00 B8 */ psq_l f18, 184(r1), 0, qr0 +/* 8015AB98 00157AF8 CA 41 00 B0 */ lfd f18, 0xb0(r1) +/* 8015AB9C 00157AFC E2 21 00 A8 */ psq_l f17, 168(r1), 0, qr0 +/* 8015ABA0 00157B00 CA 21 00 A0 */ lfd f17, 0xa0(r1) +/* 8015ABA4 00157B04 BA E1 00 7C */ lmw r23, 0x7c(r1) +/* 8015ABA8 00157B08 80 01 01 94 */ lwz r0, 0x194(r1) +/* 8015ABAC 00157B0C 7C 08 03 A6 */ mtlr r0 +/* 8015ABB0 00157B10 38 21 01 90 */ addi r1, r1, 0x190 +/* 8015ABB4 00157B14 4E 80 00 20 */ blr + +.global sub_8015abb8 +sub_8015abb8: +/* 8015ABB8 00157B18 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8015ABBC 00157B1C 7C 08 02 A6 */ mflr r0 +/* 8015ABC0 00157B20 3C A0 80 3D */ lis r5, lbl_803D0330@ha +/* 8015ABC4 00157B24 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015ABC8 00157B28 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8015ABCC 00157B2C 7C 9F 23 78 */ mr r31, r4 +/* 8015ABD0 00157B30 93 C1 00 08 */ stw r30, 8(r1) +/* 8015ABD4 00157B34 7C 7E 1B 78 */ mr r30, r3 +/* 8015ABD8 00157B38 38 65 03 30 */ addi r3, r5, lbl_803D0330@l +/* 8015ABDC 00157B3C 38 A0 00 00 */ li r5, 0 +/* 8015ABE0 00157B40 38 83 00 09 */ addi r4, r3, 9 +/* 8015ABE4 00157B44 38 60 00 08 */ li r3, 8 +/* 8015ABE8 00157B48 48 1B AC 85 */ bl __nw__FUlPCcPCc +/* 8015ABEC 00157B4C 28 03 00 00 */ cmplwi r3, 0 +/* 8015ABF0 00157B50 41 82 00 2C */ beq lbl_8015AC1C +/* 8015ABF4 00157B54 3C 80 80 3E */ lis r4, lbl_803D8D6C@ha +/* 8015ABF8 00157B58 3C A0 80 3E */ lis r5, lbl_803D8D78@ha +/* 8015ABFC 00157B5C 38 04 8D 6C */ addi r0, r4, lbl_803D8D6C@l +/* 8015AC00 00157B60 3C 80 80 3E */ lis r4, lbl_803D9BC8@ha +/* 8015AC04 00157B64 90 03 00 00 */ stw r0, 0(r3) +/* 8015AC08 00157B68 38 A5 8D 78 */ addi r5, r5, lbl_803D8D78@l +/* 8015AC0C 00157B6C 38 04 9B C8 */ addi r0, r4, lbl_803D9BC8@l +/* 8015AC10 00157B70 90 A3 00 00 */ stw r5, 0(r3) +/* 8015AC14 00157B74 93 E3 00 04 */ stw r31, 4(r3) +/* 8015AC18 00157B78 90 03 00 00 */ stw r0, 0(r3) +lbl_8015AC1C: +/* 8015AC1C 00157B7C 7C 03 00 D0 */ neg r0, r3 +/* 8015AC20 00157B80 7C 00 1B 78 */ or r0, r0, r3 +/* 8015AC24 00157B84 54 00 0F FE */ srwi r0, r0, 0x1f +/* 8015AC28 00157B88 98 1E 00 00 */ stb r0, 0(r30) +/* 8015AC2C 00157B8C 90 7E 00 04 */ stw r3, 4(r30) +/* 8015AC30 00157B90 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8015AC34 00157B94 83 C1 00 08 */ lwz r30, 8(r1) +/* 8015AC38 00157B98 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8015AC3C 00157B9C 7C 08 03 A6 */ mtlr r0 +/* 8015AC40 00157BA0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8015AC44 00157BA4 4E 80 00 20 */ blr + +.global "reserve__Q24rstl57vectorFi" +"reserve__Q24rstl57vectorFi": +/* 8015AC48 00157BA8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8015AC4C 00157BAC 7C 08 02 A6 */ mflr r0 +/* 8015AC50 00157BB0 90 01 00 34 */ stw r0, 0x34(r1) +/* 8015AC54 00157BB4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8015AC58 00157BB8 7C 9F 23 78 */ mr r31, r4 +/* 8015AC5C 00157BBC 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8015AC60 00157BC0 7C 7E 1B 78 */ mr r30, r3 +/* 8015AC64 00157BC4 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8015AC68 00157BC8 80 03 00 08 */ lwz r0, 8(r3) +/* 8015AC6C 00157BCC 7C 1F 00 00 */ cmpw r31, r0 +/* 8015AC70 00157BD0 40 81 00 C4 */ ble lbl_8015AD34 +/* 8015AC74 00157BD4 57 E3 20 37 */ rlwinm. r3, r31, 4, 0, 0x1b +/* 8015AC78 00157BD8 40 82 00 0C */ bne lbl_8015AC84 +/* 8015AC7C 00157BDC 3B A0 00 00 */ li r29, 0 +/* 8015AC80 00157BE0 48 00 00 1C */ b lbl_8015AC9C +lbl_8015AC84: +/* 8015AC84 00157BE4 3C 80 80 3D */ lis r4, lbl_803D0330@ha +/* 8015AC88 00157BE8 38 A0 00 00 */ li r5, 0 +/* 8015AC8C 00157BEC 38 84 03 30 */ addi r4, r4, lbl_803D0330@l +/* 8015AC90 00157BF0 38 84 00 09 */ addi r4, r4, 9 +/* 8015AC94 00157BF4 48 1B AB 85 */ bl __nwa__FUlPCcPCc +/* 8015AC98 00157BF8 7C 7D 1B 78 */ mr r29, r3 +lbl_8015AC9C: +/* 8015AC9C 00157BFC 80 1E 00 04 */ lwz r0, 4(r30) +/* 8015ACA0 00157C00 7F A3 EB 78 */ mr r3, r29 +/* 8015ACA4 00157C04 80 9E 00 0C */ lwz r4, 0xc(r30) +/* 8015ACA8 00157C08 54 00 20 36 */ slwi r0, r0, 4 +/* 8015ACAC 00157C0C 7C 04 02 14 */ add r0, r4, r0 +/* 8015ACB0 00157C10 90 81 00 10 */ stw r4, 0x10(r1) +/* 8015ACB4 00157C14 90 01 00 08 */ stw r0, 8(r1) +/* 8015ACB8 00157C18 90 01 00 0C */ stw r0, 0xc(r1) +/* 8015ACBC 00157C1C 90 81 00 14 */ stw r4, 0x14(r1) +/* 8015ACC0 00157C20 48 00 00 34 */ b lbl_8015ACF4 +lbl_8015ACC4: +/* 8015ACC4 00157C24 28 03 00 00 */ cmplwi r3, 0 +/* 8015ACC8 00157C28 41 82 00 24 */ beq lbl_8015ACEC +/* 8015ACCC 00157C2C C0 04 00 00 */ lfs f0, 0(r4) +/* 8015ACD0 00157C30 D0 03 00 00 */ stfs f0, 0(r3) +/* 8015ACD4 00157C34 C0 04 00 04 */ lfs f0, 4(r4) +/* 8015ACD8 00157C38 D0 03 00 04 */ stfs f0, 4(r3) +/* 8015ACDC 00157C3C C0 04 00 08 */ lfs f0, 8(r4) +/* 8015ACE0 00157C40 D0 03 00 08 */ stfs f0, 8(r3) +/* 8015ACE4 00157C44 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 8015ACE8 00157C48 D0 03 00 0C */ stfs f0, 0xc(r3) +lbl_8015ACEC: +/* 8015ACEC 00157C4C 38 63 00 10 */ addi r3, r3, 0x10 +/* 8015ACF0 00157C50 38 84 00 10 */ addi r4, r4, 0x10 +lbl_8015ACF4: +/* 8015ACF4 00157C54 7C 04 00 40 */ cmplw r4, r0 +/* 8015ACF8 00157C58 40 82 FF CC */ bne lbl_8015ACC4 +/* 8015ACFC 00157C5C 80 1E 00 04 */ lwz r0, 4(r30) +/* 8015AD00 00157C60 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 8015AD04 00157C64 54 00 20 36 */ slwi r0, r0, 4 +/* 8015AD08 00157C68 7C 64 1B 78 */ mr r4, r3 +/* 8015AD0C 00157C6C 7C 03 02 14 */ add r0, r3, r0 +/* 8015AD10 00157C70 48 00 00 08 */ b lbl_8015AD18 +lbl_8015AD14: +/* 8015AD14 00157C74 38 84 00 10 */ addi r4, r4, 0x10 +lbl_8015AD18: +/* 8015AD18 00157C78 7C 04 00 40 */ cmplw r4, r0 +/* 8015AD1C 00157C7C 40 82 FF F8 */ bne lbl_8015AD14 +/* 8015AD20 00157C80 28 03 00 00 */ cmplwi r3, 0 +/* 8015AD24 00157C84 41 82 00 08 */ beq lbl_8015AD2C +/* 8015AD28 00157C88 48 1B AC 09 */ bl Free__7CMemoryFPCv +lbl_8015AD2C: +/* 8015AD2C 00157C8C 93 BE 00 0C */ stw r29, 0xc(r30) +/* 8015AD30 00157C90 93 FE 00 08 */ stw r31, 8(r30) +lbl_8015AD34: +/* 8015AD34 00157C94 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8015AD38 00157C98 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8015AD3C 00157C9C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8015AD40 00157CA0 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8015AD44 00157CA4 7C 08 03 A6 */ mtlr r0 +/* 8015AD48 00157CA8 38 21 00 30 */ addi r1, r1, 0x30 +/* 8015AD4C 00157CAC 4E 80 00 20 */ blr + +.global __sinit_CParasite_cpp +__sinit_CParasite_cpp: +/* 8015AD50 00157CB0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8015AD54 00157CB4 7C 08 02 A6 */ mflr r0 +/* 8015AD58 00157CB8 C0 22 9E 9C */ lfs f1, lbl_805ABBBC@sda21(r2) +/* 8015AD5C 00157CBC C0 02 96 A0 */ lfs f0, lbl_805AB3C0@sda21(r2) +/* 8015AD60 00157CC0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015AD64 00157CC4 EC 21 00 24 */ fdivs f1, f1, f0 +/* 8015AD68 00157CC8 48 1B A7 99 */ bl SqrtF__5CMathFf +/* 8015AD6C 00157CCC C0 02 9E 58 */ lfs f0, lbl_805ABB78@sda21(r2) +/* 8015AD70 00157CD0 C0 42 9E 70 */ lfs f2, lbl_805ABB90@sda21(r2) +/* 8015AD74 00157CD4 EC 60 00 72 */ fmuls f3, f0, f1 +/* 8015AD78 00157CD8 C0 22 9E 9C */ lfs f1, lbl_805ABBBC@sda21(r2) +/* 8015AD7C 00157CDC C0 02 96 A0 */ lfs f0, lbl_805AB3C0@sda21(r2) +/* 8015AD80 00157CE0 EC 42 18 24 */ fdivs f2, f2, f3 +/* 8015AD84 00157CE4 D0 6D A3 F0 */ stfs f3, lbl_805A8FB0@sda21(r13) +/* 8015AD88 00157CE8 EC 21 00 24 */ fdivs f1, f1, f0 +/* 8015AD8C 00157CEC D0 4D A3 F4 */ stfs f2, lbl_805A8FB4@sda21(r13) +/* 8015AD90 00157CF0 48 1B A7 71 */ bl SqrtF__5CMathFf +/* 8015AD94 00157CF4 C0 42 9E 58 */ lfs f2, lbl_805ABB78@sda21(r2) +/* 8015AD98 00157CF8 38 00 00 00 */ li r0, 0 +/* 8015AD9C 00157CFC C0 02 9E 6C */ lfs f0, lbl_805ABB8C@sda21(r2) +/* 8015ADA0 00157D00 EC 22 00 72 */ fmuls f1, f2, f1 +/* 8015ADA4 00157D04 B0 0D A4 00 */ sth r0, lbl_805A8FC0@sda21(r13) +/* 8015ADA8 00157D08 EC 00 08 24 */ fdivs f0, f0, f1 +/* 8015ADAC 00157D0C D0 2D A3 F8 */ stfs f1, lbl_805A8FB8@sda21(r13) +/* 8015ADB0 00157D10 D0 0D A3 FC */ stfs f0, lbl_805A8FBC@sda21(r13) +/* 8015ADB4 00157D14 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8015ADB8 00157D18 7C 08 03 A6 */ mtlr r0 +/* 8015ADBC 00157D1C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8015ADC0 00157D20 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CPuddleToadGamma.s b/asm/Kyoto_CWD/Enemies/CPuddleToadGamma.s new file mode 100644 index 00000000..7a647bcf --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CPuddleToadGamma.s @@ -0,0 +1,1943 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__16CPuddleToadGammaFv +__dt__16CPuddleToadGammaFv: +/* 8014B420 00148380 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8014B424 00148384 7C 08 02 A6 */ mflr r0 +/* 8014B428 00148388 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014B42C 0014838C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8014B430 00148390 7C 9F 23 78 */ mr r31, r4 +/* 8014B434 00148394 93 C1 00 08 */ stw r30, 8(r1) +/* 8014B438 00148398 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8014B43C 0014839C 41 82 00 54 */ beq lbl_8014B490 +/* 8014B440 001483A0 3C 60 80 3E */ lis r3, lbl_803E24E0@ha +/* 8014B444 001483A4 34 1E 05 E4 */ addic. r0, r30, 0x5e4 +/* 8014B448 001483A8 38 03 24 E0 */ addi r0, r3, lbl_803E24E0@l +/* 8014B44C 001483AC 90 1E 00 00 */ stw r0, 0(r30) +/* 8014B450 001483B0 41 82 00 24 */ beq lbl_8014B474 +/* 8014B454 001483B4 80 7E 05 E4 */ lwz r3, 0x5e4(r30) +/* 8014B458 001483B8 28 03 00 00 */ cmplwi r3, 0 +/* 8014B45C 001483BC 41 82 00 18 */ beq lbl_8014B474 +/* 8014B460 001483C0 81 83 00 00 */ lwz r12, 0(r3) +/* 8014B464 001483C4 38 80 00 01 */ li r4, 1 +/* 8014B468 001483C8 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 8014B46C 001483CC 7D 89 03 A6 */ mtctr r12 +/* 8014B470 001483D0 4E 80 04 21 */ bctrl +lbl_8014B474: +/* 8014B474 001483D4 7F C3 F3 78 */ mr r3, r30 +/* 8014B478 001483D8 38 80 00 00 */ li r4, 0 +/* 8014B47C 001483DC 4B F2 C0 F5 */ bl __dt__10CPatternedFv +/* 8014B480 001483E0 7F E0 07 35 */ extsh. r0, r31 +/* 8014B484 001483E4 40 81 00 0C */ ble lbl_8014B490 +/* 8014B488 001483E8 7F C3 F3 78 */ mr r3, r30 +/* 8014B48C 001483EC 48 1C A4 A5 */ bl Free__7CMemoryFPCv +lbl_8014B490: +/* 8014B490 001483F0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014B494 001483F4 7F C3 F3 78 */ mr r3, r30 +/* 8014B498 001483F8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8014B49C 001483FC 83 C1 00 08 */ lwz r30, 8(r1) +/* 8014B4A0 00148400 7C 08 03 A6 */ mtlr r0 +/* 8014B4A4 00148404 38 21 00 10 */ addi r1, r1, 0x10 +/* 8014B4A8 00148408 4E 80 00 20 */ blr + +.global GetPrimitiveTransform__16CPuddleToadGammaCFv +GetPrimitiveTransform__16CPuddleToadGammaCFv: +/* 8014B4AC 0014840C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8014B4B0 00148410 7C 08 02 A6 */ mflr r0 +/* 8014B4B4 00148414 90 01 00 54 */ stw r0, 0x54(r1) +/* 8014B4B8 00148418 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 8014B4BC 0014841C 7C 9F 23 78 */ mr r31, r4 +/* 8014B4C0 00148420 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8014B4C4 00148424 93 C1 00 48 */ stw r30, 0x48(r1) +/* 8014B4C8 00148428 7C 7E 1B 78 */ mr r30, r3 +/* 8014B4CC 0014842C 38 61 00 14 */ addi r3, r1, 0x14 +/* 8014B4D0 00148430 48 1C 76 A5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8014B4D4 00148434 7F E4 FB 78 */ mr r4, r31 +/* 8014B4D8 00148438 38 61 00 08 */ addi r3, r1, 8 +/* 8014B4DC 0014843C 4B FC F1 51 */ bl GetPrimitiveOffset__13CPhysicsActorCFv +/* 8014B4E0 00148440 C0 21 00 20 */ lfs f1, 0x20(r1) +/* 8014B4E4 00148444 7F C3 F3 78 */ mr r3, r30 +/* 8014B4E8 00148448 C0 01 00 08 */ lfs f0, 8(r1) +/* 8014B4EC 0014844C 38 81 00 14 */ addi r4, r1, 0x14 +/* 8014B4F0 00148450 C0 61 00 30 */ lfs f3, 0x30(r1) +/* 8014B4F4 00148454 C0 41 00 0C */ lfs f2, 0xc(r1) +/* 8014B4F8 00148458 EC 81 00 2A */ fadds f4, f1, f0 +/* 8014B4FC 0014845C C0 21 00 40 */ lfs f1, 0x40(r1) +/* 8014B500 00148460 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 8014B504 00148464 EC 43 10 2A */ fadds f2, f3, f2 +/* 8014B508 00148468 D0 81 00 20 */ stfs f4, 0x20(r1) +/* 8014B50C 0014846C EC 01 00 2A */ fadds f0, f1, f0 +/* 8014B510 00148470 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 8014B514 00148474 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 8014B518 00148478 48 1C 76 5D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8014B51C 0014847C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8014B520 00148480 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 8014B524 00148484 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 8014B528 00148488 7C 08 03 A6 */ mtlr r0 +/* 8014B52C 0014848C 38 21 00 50 */ addi r1, r1, 0x50 +/* 8014B530 00148490 4E 80 00 20 */ blr + +.global GetCollisionPrimitive__16CPuddleToadGammaCFv +GetCollisionPrimitive__16CPuddleToadGammaCFv: +/* 8014B534 00148494 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8014B538 00148498 7C 08 02 A6 */ mflr r0 +/* 8014B53C 0014849C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014B540 001484A0 80 03 05 E4 */ lwz r0, 0x5e4(r3) +/* 8014B544 001484A4 28 00 00 00 */ cmplwi r0, 0 +/* 8014B548 001484A8 40 82 00 0C */ bne lbl_8014B554 +/* 8014B54C 001484AC 4B FC F5 09 */ bl GetCollisionPrimitive__13CPhysicsActorCFv +/* 8014B550 001484B0 48 00 00 08 */ b lbl_8014B558 +lbl_8014B554: +/* 8014B554 001484B4 7C 03 03 78 */ mr r3, r0 +lbl_8014B558: +/* 8014B558 001484B8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014B55C 001484BC 7C 08 03 A6 */ mtlr r0 +/* 8014B560 001484C0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8014B564 001484C4 4E 80 00 20 */ blr + +.global GetTouchBounds__16CPuddleToadGammaCFv +GetTouchBounds__16CPuddleToadGammaCFv: +/* 8014B568 001484C8 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8014B56C 001484CC 7C 08 02 A6 */ mflr r0 +/* 8014B570 001484D0 7C 85 23 78 */ mr r5, r4 +/* 8014B574 001484D4 90 01 00 44 */ stw r0, 0x44(r1) +/* 8014B578 001484D8 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8014B57C 001484DC 7C 7F 1B 78 */ mr r31, r3 +/* 8014B580 001484E0 88 04 00 30 */ lbz r0, 0x30(r4) +/* 8014B584 001484E4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8014B588 001484E8 41 82 00 BC */ beq lbl_8014B644 +/* 8014B58C 001484EC 80 05 05 E4 */ lwz r0, 0x5e4(r5) +/* 8014B590 001484F0 28 00 00 00 */ cmplwi r0, 0 +/* 8014B594 001484F4 41 82 00 64 */ beq lbl_8014B5F8 +/* 8014B598 001484F8 7C 04 03 78 */ mr r4, r0 +/* 8014B59C 001484FC 38 61 00 20 */ addi r3, r1, 0x20 +/* 8014B5A0 00148500 81 84 00 00 */ lwz r12, 0(r4) +/* 8014B5A4 00148504 38 A5 00 34 */ addi r5, r5, 0x34 +/* 8014B5A8 00148508 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 8014B5AC 0014850C 7D 89 03 A6 */ mtctr r12 +/* 8014B5B0 00148510 4E 80 04 21 */ bctrl +/* 8014B5B4 00148514 38 00 00 01 */ li r0, 1 +/* 8014B5B8 00148518 28 1F 00 00 */ cmplwi r31, 0 +/* 8014B5BC 0014851C 98 1F 00 18 */ stb r0, 0x18(r31) +/* 8014B5C0 00148520 41 82 00 8C */ beq lbl_8014B64C +/* 8014B5C4 00148524 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 8014B5C8 00148528 D0 1F 00 00 */ stfs f0, 0(r31) +/* 8014B5CC 0014852C C0 01 00 24 */ lfs f0, 0x24(r1) +/* 8014B5D0 00148530 D0 1F 00 04 */ stfs f0, 4(r31) +/* 8014B5D4 00148534 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 8014B5D8 00148538 D0 1F 00 08 */ stfs f0, 8(r31) +/* 8014B5DC 0014853C C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 8014B5E0 00148540 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 8014B5E4 00148544 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 8014B5E8 00148548 D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 8014B5EC 0014854C C0 01 00 34 */ lfs f0, 0x34(r1) +/* 8014B5F0 00148550 D0 1F 00 14 */ stfs f0, 0x14(r31) +/* 8014B5F4 00148554 48 00 00 58 */ b lbl_8014B64C +lbl_8014B5F8: +/* 8014B5F8 00148558 38 61 00 08 */ addi r3, r1, 8 +/* 8014B5FC 0014855C 4B FC F3 31 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 8014B600 00148560 38 00 00 01 */ li r0, 1 +/* 8014B604 00148564 28 1F 00 00 */ cmplwi r31, 0 +/* 8014B608 00148568 98 1F 00 18 */ stb r0, 0x18(r31) +/* 8014B60C 0014856C 41 82 00 40 */ beq lbl_8014B64C +/* 8014B610 00148570 C0 01 00 08 */ lfs f0, 8(r1) +/* 8014B614 00148574 D0 1F 00 00 */ stfs f0, 0(r31) +/* 8014B618 00148578 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 8014B61C 0014857C D0 1F 00 04 */ stfs f0, 4(r31) +/* 8014B620 00148580 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 8014B624 00148584 D0 1F 00 08 */ stfs f0, 8(r31) +/* 8014B628 00148588 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 8014B62C 0014858C D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 8014B630 00148590 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 8014B634 00148594 D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 8014B638 00148598 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 8014B63C 0014859C D0 1F 00 14 */ stfs f0, 0x14(r31) +/* 8014B640 001485A0 48 00 00 0C */ b lbl_8014B64C +lbl_8014B644: +/* 8014B644 001485A4 38 00 00 00 */ li r0, 0 +/* 8014B648 001485A8 98 1F 00 18 */ stb r0, 0x18(r31) +lbl_8014B64C: +/* 8014B64C 001485AC 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8014B650 001485B0 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8014B654 001485B4 7C 08 03 A6 */ mtlr r0 +/* 8014B658 001485B8 38 21 00 40 */ addi r1, r1, 0x40 +/* 8014B65C 001485BC 4E 80 00 20 */ blr + +.global Attack__16CPuddleToadGammaFR13CStateManager9EStateMsgf +Attack__16CPuddleToadGammaFR13CStateManager9EStateMsgf: +/* 8014B660 001485C0 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 8014B664 001485C4 7C 08 02 A6 */ mflr r0 +/* 8014B668 001485C8 2C 05 00 01 */ cmpwi r5, 1 +/* 8014B66C 001485CC 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 8014B670 001485D0 93 E1 00 AC */ stw r31, 0xac(r1) +/* 8014B674 001485D4 93 C1 00 A8 */ stw r30, 0xa8(r1) +/* 8014B678 001485D8 7C 9E 23 78 */ mr r30, r4 +/* 8014B67C 001485DC 93 A1 00 A4 */ stw r29, 0xa4(r1) +/* 8014B680 001485E0 7C 7D 1B 78 */ mr r29, r3 +/* 8014B684 001485E4 41 82 01 10 */ beq lbl_8014B794 +/* 8014B688 001485E8 40 80 00 10 */ bge lbl_8014B698 +/* 8014B68C 001485EC 2C 05 00 00 */ cmpwi r5, 0 +/* 8014B690 001485F0 40 80 00 14 */ bge lbl_8014B6A4 +/* 8014B694 001485F4 48 00 01 F8 */ b lbl_8014B88C +lbl_8014B698: +/* 8014B698 001485F8 2C 05 00 03 */ cmpwi r5, 3 +/* 8014B69C 001485FC 40 80 01 F0 */ bge lbl_8014B88C +/* 8014B6A0 00148600 48 00 01 B8 */ b lbl_8014B858 +lbl_8014B6A4: +/* 8014B6A4 00148604 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 8014B6A8 00148608 4B FC FC D1 */ bl Stop__13CPhysicsActorFv +/* 8014B6AC 0014860C 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8014B6B0 00148610 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 8014B6B4 00148614 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 8014B6B8 00148618 4B FC F5 E9 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 8014B6BC 0014861C 3C A0 80 3E */ lis r5, lbl_803DAA68@ha +/* 8014B6C0 00148620 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8014B6C4 00148624 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 8014B6C8 00148628 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8014B6CC 0014862C 39 05 AA 68 */ addi r8, r5, lbl_803DAA68@l +/* 8014B6D0 00148630 C0 44 00 00 */ lfs f2, 0(r4) +/* 8014B6D4 00148634 C0 24 00 04 */ lfs f1, 4(r4) +/* 8014B6D8 00148638 3C C0 80 3E */ lis r6, lbl_803DA9D8@ha +/* 8014B6DC 0014863C C0 04 00 08 */ lfs f0, 8(r4) +/* 8014B6E0 00148640 38 E0 00 05 */ li r7, 5 +/* 8014B6E4 00148644 38 A0 00 01 */ li r5, 1 +/* 8014B6E8 00148648 38 00 00 00 */ li r0, 0 +/* 8014B6EC 0014864C 3B E3 00 04 */ addi r31, r3, 4 +/* 8014B6F0 00148650 91 01 00 24 */ stw r8, 0x24(r1) +/* 8014B6F4 00148654 38 C6 A9 D8 */ addi r6, r6, lbl_803DA9D8@l +/* 8014B6F8 00148658 38 80 00 05 */ li r4, 5 +/* 8014B6FC 0014865C 90 E1 00 28 */ stw r7, 0x28(r1) +/* 8014B700 00148660 7F E3 FB 78 */ mr r3, r31 +/* 8014B704 00148664 90 C1 00 24 */ stw r6, 0x24(r1) +/* 8014B708 00148668 90 A1 00 2C */ stw r5, 0x2c(r1) +/* 8014B70C 0014866C D0 41 00 30 */ stfs f2, 0x30(r1) +/* 8014B710 00148670 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 8014B714 00148674 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 8014B718 00148678 98 01 00 3C */ stb r0, 0x3c(r1) +/* 8014B71C 0014867C 4B FE 5D 1D */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8014B720 00148680 80 01 00 28 */ lwz r0, 0x28(r1) +/* 8014B724 00148684 3C 60 80 3E */ lis r3, lbl_803DA9D8@ha +/* 8014B728 00148688 38 E3 A9 D8 */ addi r7, r3, lbl_803DA9D8@l +/* 8014B72C 0014868C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8014B730 00148690 90 1F 01 10 */ stw r0, 0x110(r31) +/* 8014B734 00148694 38 A0 00 00 */ li r5, 0 +/* 8014B738 00148698 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 8014B73C 0014869C 38 C3 AA 68 */ addi r6, r3, lbl_803DAA68@l +/* 8014B740 001486A0 80 61 00 30 */ lwz r3, 0x30(r1) +/* 8014B744 001486A4 38 80 00 01 */ li r4, 1 +/* 8014B748 001486A8 90 1F 01 14 */ stw r0, 0x114(r31) +/* 8014B74C 001486AC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8014B750 001486B0 90 7F 01 18 */ stw r3, 0x118(r31) +/* 8014B754 001486B4 80 61 00 38 */ lwz r3, 0x38(r1) +/* 8014B758 001486B8 90 1F 01 1C */ stw r0, 0x11c(r31) +/* 8014B75C 001486BC 88 01 00 3C */ lbz r0, 0x3c(r1) +/* 8014B760 001486C0 90 7F 01 20 */ stw r3, 0x120(r31) +/* 8014B764 001486C4 98 1F 01 24 */ stb r0, 0x124(r31) +/* 8014B768 001486C8 88 1D 05 E8 */ lbz r0, 0x5e8(r29) +/* 8014B76C 001486CC 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a +/* 8014B770 001486D0 90 E1 00 24 */ stw r7, 0x24(r1) +/* 8014B774 001486D4 98 1D 05 E8 */ stb r0, 0x5e8(r29) +/* 8014B778 001486D8 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 8014B77C 001486DC 90 C1 00 24 */ stw r6, 0x24(r1) +/* 8014B780 001486E0 98 A3 05 90 */ stb r5, 0x590(r3) +/* 8014B784 001486E4 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 8014B788 001486E8 80 63 07 68 */ lwz r3, 0x768(r3) +/* 8014B78C 001486EC 4B FA 38 05 */ bl SetBombJumpState__10CMorphBallFQ210CMorphBall14EBombJumpState +/* 8014B790 001486F0 48 00 00 FC */ b lbl_8014B88C +lbl_8014B794: +/* 8014B794 001486F4 88 1D 05 E8 */ lbz r0, 0x5e8(r29) +/* 8014B798 001486F8 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8014B79C 001486FC 40 82 00 8C */ bne lbl_8014B828 +/* 8014B7A0 00148700 80 8D 8C 00 */ lwz r4, lbl_805A77C0@sda21(r13) +/* 8014B7A4 00148704 38 61 00 14 */ addi r3, r1, 0x14 +/* 8014B7A8 00148708 4B EB 95 11 */ bl string_l__4rstlFPCc +/* 8014B7AC 0014870C 7F A4 EB 78 */ mr r4, r29 +/* 8014B7B0 00148710 38 61 00 40 */ addi r3, r1, 0x40 +/* 8014B7B4 00148714 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8014B7B8 00148718 4B F2 D1 C1 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8014B7BC 0014871C 38 61 00 70 */ addi r3, r1, 0x70 +/* 8014B7C0 00148720 38 81 00 40 */ addi r4, r1, 0x40 +/* 8014B7C4 00148724 48 1C 73 B1 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8014B7C8 00148728 38 61 00 14 */ addi r3, r1, 0x14 +/* 8014B7CC 0014872C 48 1F 23 15 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8014B7D0 00148730 3C 80 80 57 */ lis r4, lbl_805719DC@ha +/* 8014B7D4 00148734 38 61 00 08 */ addi r3, r1, 8 +/* 8014B7D8 00148738 38 A4 19 DC */ addi r5, r4, lbl_805719DC@l +/* 8014B7DC 0014873C 38 9D 00 34 */ addi r4, r29, 0x34 +/* 8014B7E0 00148740 48 1C 72 A1 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 8014B7E4 00148744 C0 21 00 7C */ lfs f1, 0x7c(r1) +/* 8014B7E8 00148748 7F A3 EB 78 */ mr r3, r29 +/* 8014B7EC 0014874C C0 01 00 08 */ lfs f0, 8(r1) +/* 8014B7F0 00148750 7F C4 F3 78 */ mr r4, r30 +/* 8014B7F4 00148754 C0 81 00 8C */ lfs f4, 0x8c(r1) +/* 8014B7F8 00148758 38 BD 05 CC */ addi r5, r29, 0x5cc +/* 8014B7FC 0014875C C0 61 00 0C */ lfs f3, 0xc(r1) +/* 8014B800 00148760 EC 01 00 2A */ fadds f0, f1, f0 +/* 8014B804 00148764 C0 41 00 9C */ lfs f2, 0x9c(r1) +/* 8014B808 00148768 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 8014B80C 0014876C EC 64 18 2A */ fadds f3, f4, f3 +/* 8014B810 00148770 D0 1D 05 CC */ stfs f0, 0x5cc(r29) +/* 8014B814 00148774 EC 02 08 2A */ fadds f0, f2, f1 +/* 8014B818 00148778 D0 7D 05 D0 */ stfs f3, 0x5d0(r29) +/* 8014B81C 0014877C D0 1D 05 D4 */ stfs f0, 0x5d4(r29) +/* 8014B820 00148780 48 00 06 F1 */ bl sub_8014bf10 +/* 8014B824 00148784 48 00 00 68 */ b lbl_8014B88C +lbl_8014B828: +/* 8014B828 00148788 81 83 00 00 */ lwz r12, 0(r3) +/* 8014B82C 0014878C C0 22 9C F0 */ lfs f1, lbl_805ABA10@sda21(r2) +/* 8014B830 00148790 81 8C 02 74 */ lwz r12, 0x274(r12) +/* 8014B834 00148794 7D 89 03 A6 */ mtctr r12 +/* 8014B838 00148798 4E 80 04 21 */ bctrl +/* 8014B83C 0014879C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8014B840 001487A0 41 82 00 4C */ beq lbl_8014B88C +/* 8014B844 001487A4 7F A3 EB 78 */ mr r3, r29 +/* 8014B848 001487A8 7F C4 F3 78 */ mr r4, r30 +/* 8014B84C 001487AC 38 A0 00 01 */ li r5, 1 +/* 8014B850 001487B0 48 00 0B 1D */ bl SetSolid__16CPuddleToadGammaFR13CStateManagerb +/* 8014B854 001487B4 48 00 00 38 */ b lbl_8014B88C +lbl_8014B858: +/* 8014B858 001487B8 38 A0 00 01 */ li r5, 1 +/* 8014B85C 001487BC 48 00 0B 11 */ bl SetSolid__16CPuddleToadGammaFR13CStateManagerb +/* 8014B860 001487C0 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 8014B864 001487C4 38 00 00 01 */ li r0, 1 +/* 8014B868 001487C8 38 80 00 00 */ li r4, 0 +/* 8014B86C 001487CC 98 03 05 90 */ stb r0, 0x590(r3) +/* 8014B870 001487D0 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 8014B874 001487D4 80 63 07 68 */ lwz r3, 0x768(r3) +/* 8014B878 001487D8 4B FA 37 19 */ bl SetBombJumpState__10CMorphBallFQ210CMorphBall14EBombJumpState +/* 8014B87C 001487DC 88 1D 05 E8 */ lbz r0, 0x5e8(r29) +/* 8014B880 001487E0 38 60 00 00 */ li r3, 0 +/* 8014B884 001487E4 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8014B888 001487E8 98 1D 05 E8 */ stb r0, 0x5e8(r29) +lbl_8014B88C: +/* 8014B88C 001487EC 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 8014B890 001487F0 83 E1 00 AC */ lwz r31, 0xac(r1) +/* 8014B894 001487F4 83 C1 00 A8 */ lwz r30, 0xa8(r1) +/* 8014B898 001487F8 83 A1 00 A4 */ lwz r29, 0xa4(r1) +/* 8014B89C 001487FC 7C 08 03 A6 */ mtlr r0 +/* 8014B8A0 00148800 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 8014B8A4 00148804 4E 80 00 20 */ blr + +.global Crouch__16CPuddleToadGammaFR13CStateManager9EStateMsgf +Crouch__16CPuddleToadGammaFR13CStateManager9EStateMsgf: +/* 8014B8A8 00148808 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 8014B8AC 0014880C 7C 08 02 A6 */ mflr r0 +/* 8014B8B0 00148810 2C 05 00 01 */ cmpwi r5, 1 +/* 8014B8B4 00148814 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 8014B8B8 00148818 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 8014B8BC 0014881C 7C 9F 23 78 */ mr r31, r4 +/* 8014B8C0 00148820 93 C1 00 98 */ stw r30, 0x98(r1) +/* 8014B8C4 00148824 7C 7E 1B 78 */ mr r30, r3 +/* 8014B8C8 00148828 41 82 00 E0 */ beq lbl_8014B9A8 +/* 8014B8CC 0014882C 40 80 00 10 */ bge lbl_8014B8DC +/* 8014B8D0 00148830 2C 05 00 00 */ cmpwi r5, 0 +/* 8014B8D4 00148834 40 80 00 14 */ bge lbl_8014B8E8 +/* 8014B8D8 00148838 48 00 01 CC */ b lbl_8014BAA4 +lbl_8014B8DC: +/* 8014B8DC 0014883C 2C 05 00 03 */ cmpwi r5, 3 +/* 8014B8E0 00148840 40 80 01 C4 */ bge lbl_8014BAA4 +/* 8014B8E4 00148844 48 00 01 8C */ b lbl_8014BA70 +lbl_8014B8E8: +/* 8014B8E8 00148848 38 00 00 00 */ li r0, 0 +/* 8014B8EC 0014884C C0 02 9C F0 */ lfs f0, lbl_805ABA10@sda21(r2) +/* 8014B8F0 00148850 90 1E 05 68 */ stw r0, 0x568(r30) +/* 8014B8F4 00148854 38 60 00 01 */ li r3, 1 +/* 8014B8F8 00148858 D0 1E 05 6C */ stfs f0, 0x56c(r30) +/* 8014B8FC 0014885C 88 1E 05 E8 */ lbz r0, 0x5e8(r30) +/* 8014B900 00148860 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8014B904 00148864 98 1E 05 E8 */ stb r0, 0x5e8(r30) +/* 8014B908 00148868 88 1E 05 E8 */ lbz r0, 0x5e8(r30) +/* 8014B90C 0014886C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8014B910 00148870 98 1E 05 E8 */ stb r0, 0x5e8(r30) +/* 8014B914 00148874 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8014B918 00148878 4B FC FA 61 */ bl Stop__13CPhysicsActorFv +/* 8014B91C 0014887C 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8014B920 00148880 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8014B924 00148884 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 8014B928 00148888 4B FC F3 79 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 8014B92C 0014888C 7F C3 F3 78 */ mr r3, r30 +/* 8014B930 00148890 7F E5 FB 78 */ mr r5, r31 +/* 8014B934 00148894 38 80 00 06 */ li r4, 6 +/* 8014B938 00148898 38 C0 FF FF */ li r6, -1 +/* 8014B93C 0014889C 4B F0 57 85 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 8014B940 001488A0 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8014B944 001488A4 38 81 00 0C */ addi r4, r1, 0xc +/* 8014B948 001488A8 38 A0 00 00 */ li r5, 0 +/* 8014B94C 001488AC B0 01 00 0C */ sth r0, 0xc(r1) +/* 8014B950 001488B0 B0 01 00 08 */ sth r0, 8(r1) +/* 8014B954 001488B4 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8014B958 001488B8 4B EC 90 79 */ bl AttachActorToPlayer__7CPlayerF9TUniqueId +/* 8014B95C 001488BC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8014B960 001488C0 40 82 00 0C */ bne lbl_8014B96C +/* 8014B964 001488C4 C0 02 9C F4 */ lfs f0, lbl_805ABA14@sda21(r2) +/* 8014B968 001488C8 D0 1E 05 6C */ stfs f0, 0x56c(r30) +lbl_8014B96C: +/* 8014B96C 001488CC 7F C3 F3 78 */ mr r3, r30 +/* 8014B970 001488D0 7F E4 FB 78 */ mr r4, r31 +/* 8014B974 001488D4 38 A0 00 00 */ li r5, 0 +/* 8014B978 001488D8 48 00 09 F5 */ bl SetSolid__16CPuddleToadGammaFR13CStateManagerb +/* 8014B97C 001488DC 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8014B980 001488E0 38 00 00 00 */ li r0, 0 +/* 8014B984 001488E4 98 03 05 90 */ stb r0, 0x590(r3) +/* 8014B988 001488E8 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8014B98C 001488EC 80 63 07 68 */ lwz r3, 0x768(r3) +/* 8014B990 001488F0 4B FA 5F 65 */ bl DisableHalfPipeStatus__10CMorphBallFv +/* 8014B994 001488F4 7F C3 F3 78 */ mr r3, r30 +/* 8014B998 001488F8 7F E4 FB 78 */ mr r4, r31 +/* 8014B99C 001488FC 38 A0 00 00 */ li r5, 0 +/* 8014B9A0 00148900 48 00 09 CD */ bl SetSolid__16CPuddleToadGammaFR13CStateManagerb +/* 8014B9A4 00148904 48 00 01 00 */ b lbl_8014BAA4 +lbl_8014B9A8: +/* 8014B9A8 00148908 80 8D 8C 00 */ lwz r4, lbl_805A77C0@sda21(r13) +/* 8014B9AC 0014890C 38 61 00 1C */ addi r3, r1, 0x1c +/* 8014B9B0 00148910 4B EB 93 09 */ bl string_l__4rstlFPCc +/* 8014B9B4 00148914 7F C4 F3 78 */ mr r4, r30 +/* 8014B9B8 00148918 38 61 00 2C */ addi r3, r1, 0x2c +/* 8014B9BC 0014891C 38 A1 00 1C */ addi r5, r1, 0x1c +/* 8014B9C0 00148920 4B F2 CF B9 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8014B9C4 00148924 38 61 00 5C */ addi r3, r1, 0x5c +/* 8014B9C8 00148928 38 81 00 2C */ addi r4, r1, 0x2c +/* 8014B9CC 0014892C 48 1C 71 A9 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8014B9D0 00148930 38 61 00 1C */ addi r3, r1, 0x1c +/* 8014B9D4 00148934 48 1F 21 0D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8014B9D8 00148938 3C 80 80 57 */ lis r4, lbl_805719DC@ha +/* 8014B9DC 0014893C 38 61 00 10 */ addi r3, r1, 0x10 +/* 8014B9E0 00148940 38 A4 19 DC */ addi r5, r4, lbl_805719DC@l +/* 8014B9E4 00148944 38 9E 00 34 */ addi r4, r30, 0x34 +/* 8014B9E8 00148948 48 1C 70 99 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 8014B9EC 0014894C C0 21 00 68 */ lfs f1, 0x68(r1) +/* 8014B9F0 00148950 7F C3 F3 78 */ mr r3, r30 +/* 8014B9F4 00148954 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 8014B9F8 00148958 7F E4 FB 78 */ mr r4, r31 +/* 8014B9FC 0014895C C0 81 00 78 */ lfs f4, 0x78(r1) +/* 8014BA00 00148960 38 BE 05 CC */ addi r5, r30, 0x5cc +/* 8014BA04 00148964 C0 61 00 14 */ lfs f3, 0x14(r1) +/* 8014BA08 00148968 EC 01 00 2A */ fadds f0, f1, f0 +/* 8014BA0C 0014896C C0 41 00 88 */ lfs f2, 0x88(r1) +/* 8014BA10 00148970 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 8014BA14 00148974 EC 64 18 2A */ fadds f3, f4, f3 +/* 8014BA18 00148978 D0 1E 05 CC */ stfs f0, 0x5cc(r30) +/* 8014BA1C 0014897C EC 02 08 2A */ fadds f0, f2, f1 +/* 8014BA20 00148980 D0 7E 05 D0 */ stfs f3, 0x5d0(r30) +/* 8014BA24 00148984 D0 1E 05 D4 */ stfs f0, 0x5d4(r30) +/* 8014BA28 00148988 48 00 04 E9 */ bl sub_8014bf10 +/* 8014BA2C 0014898C 80 1E 05 68 */ lwz r0, 0x568(r30) +/* 8014BA30 00148990 2C 00 00 01 */ cmpwi r0, 1 +/* 8014BA34 00148994 41 82 00 70 */ beq lbl_8014BAA4 +/* 8014BA38 00148998 40 80 00 6C */ bge lbl_8014BAA4 +/* 8014BA3C 0014899C 2C 00 00 00 */ cmpwi r0, 0 +/* 8014BA40 001489A0 40 80 00 08 */ bge lbl_8014BA48 +/* 8014BA44 001489A4 48 00 00 60 */ b lbl_8014BAA4 +lbl_8014BA48: +/* 8014BA48 001489A8 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8014BA4C 001489AC 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 8014BA50 001489B0 2C 00 00 05 */ cmpwi r0, 5 +/* 8014BA54 001489B4 40 82 00 10 */ bne lbl_8014BA64 +/* 8014BA58 001489B8 38 00 00 01 */ li r0, 1 +/* 8014BA5C 001489BC 90 1E 05 68 */ stw r0, 0x568(r30) +/* 8014BA60 001489C0 48 00 00 44 */ b lbl_8014BAA4 +lbl_8014BA64: +/* 8014BA64 001489C4 38 80 00 03 */ li r4, 3 +/* 8014BA68 001489C8 4B FE EF 71 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8014BA6C 001489CC 48 00 00 38 */ b lbl_8014BAA4 +lbl_8014BA70: +/* 8014BA70 001489D0 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8014BA74 001489D4 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8014BA78 001489D8 A0 83 02 6C */ lhz r4, 0x26c(r3) +/* 8014BA7C 001489DC 7C 04 00 40 */ cmplw r4, r0 +/* 8014BA80 001489E0 40 82 00 08 */ bne lbl_8014BA88 +/* 8014BA84 001489E4 4B EC 8F 21 */ bl DetachActorFromPlayer__7CPlayerFv +lbl_8014BA88: +/* 8014BA88 001489E8 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 8014BA8C 001489EC 38 00 00 01 */ li r0, 1 +/* 8014BA90 001489F0 38 60 00 00 */ li r3, 0 +/* 8014BA94 001489F4 98 04 05 90 */ stb r0, 0x590(r4) +/* 8014BA98 001489F8 88 1E 05 E8 */ lbz r0, 0x5e8(r30) +/* 8014BA9C 001489FC 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8014BAA0 00148A00 98 1E 05 E8 */ stb r0, 0x5e8(r30) +lbl_8014BAA4: +/* 8014BAA4 00148A04 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 8014BAA8 00148A08 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 8014BAAC 00148A0C 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 8014BAB0 00148A10 7C 08 03 A6 */ mtlr r0 +/* 8014BAB4 00148A14 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 8014BAB8 00148A18 4E 80 00 20 */ blr + +.global LostInterest__16CPuddleToadGammaFR13CStateManagerf +LostInterest__16CPuddleToadGammaFR13CStateManagerf: +/* 8014BABC 00148A1C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8014BAC0 00148A20 7C 08 02 A6 */ mflr r0 +/* 8014BAC4 00148A24 90 01 00 54 */ stw r0, 0x54(r1) +/* 8014BAC8 00148A28 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 8014BACC 00148A2C 7C 9F 23 78 */ mr r31, r4 +/* 8014BAD0 00148A30 7C 64 1B 78 */ mr r4, r3 +/* 8014BAD4 00148A34 38 61 00 20 */ addi r3, r1, 0x20 +/* 8014BAD8 00148A38 81 84 00 00 */ lwz r12, 0(r4) +/* 8014BADC 00148A3C 81 8C 00 40 */ lwz r12, 0x40(r12) +/* 8014BAE0 00148A40 7D 89 03 A6 */ mtctr r12 +/* 8014BAE4 00148A44 4E 80 04 21 */ bctrl +/* 8014BAE8 00148A48 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 8014BAEC 00148A4C 38 61 00 08 */ addi r3, r1, 8 +/* 8014BAF0 00148A50 4B FC EE 3D */ bl GetBoundingBox__13CPhysicsActorCFv +/* 8014BAF4 00148A54 38 61 00 20 */ addi r3, r1, 0x20 +/* 8014BAF8 00148A58 38 81 00 08 */ addi r4, r1, 8 +/* 8014BAFC 00148A5C 48 1E C0 89 */ bl DoBoundsOverlap__6CAABoxCFRC6CAABox +/* 8014BB00 00148A60 38 00 00 00 */ li r0, 0 +/* 8014BB04 00148A64 54 63 06 3E */ clrlwi r3, r3, 0x18 +/* 8014BB08 00148A68 98 01 00 38 */ stb r0, 0x38(r1) +/* 8014BB0C 00148A6C 7C 63 00 34 */ cntlzw r3, r3 +/* 8014BB10 00148A70 54 63 D9 7E */ srwi r3, r3, 5 +/* 8014BB14 00148A74 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8014BB18 00148A78 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 8014BB1C 00148A7C 7C 08 03 A6 */ mtlr r0 +/* 8014BB20 00148A80 38 21 00 50 */ addi r1, r1, 0x50 +/* 8014BB24 00148A84 4E 80 00 20 */ blr + +.global Suck__16CPuddleToadGammaFR13CStateManager9EStateMsgf +Suck__16CPuddleToadGammaFR13CStateManager9EStateMsgf: +/* 8014BB28 00148A88 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8014BB2C 00148A8C 7C 08 02 A6 */ mflr r0 +/* 8014BB30 00148A90 2C 05 00 01 */ cmpwi r5, 1 +/* 8014BB34 00148A94 90 01 00 34 */ stw r0, 0x34(r1) +/* 8014BB38 00148A98 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8014BB3C 00148A9C 7C 9F 23 78 */ mr r31, r4 +/* 8014BB40 00148AA0 41 82 00 4C */ beq lbl_8014BB8C +/* 8014BB44 00148AA4 40 80 00 10 */ bge lbl_8014BB54 +/* 8014BB48 00148AA8 2C 05 00 00 */ cmpwi r5, 0 +/* 8014BB4C 00148AAC 40 80 00 14 */ bge lbl_8014BB60 +/* 8014BB50 00148AB0 48 00 01 10 */ b lbl_8014BC60 +lbl_8014BB54: +/* 8014BB54 00148AB4 2C 05 00 03 */ cmpwi r5, 3 +/* 8014BB58 00148AB8 40 80 01 08 */ bge lbl_8014BC60 +/* 8014BB5C 00148ABC 48 00 00 D4 */ b lbl_8014BC30 +lbl_8014BB60: +/* 8014BB60 00148AC0 38 00 00 00 */ li r0, 0 +/* 8014BB64 00148AC4 38 A0 00 00 */ li r5, 0 +/* 8014BB68 00148AC8 90 03 05 68 */ stw r0, 0x568(r3) +/* 8014BB6C 00148ACC 48 00 08 01 */ bl SetSolid__16CPuddleToadGammaFR13CStateManagerb +/* 8014BB70 00148AD0 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8014BB74 00148AD4 38 00 00 00 */ li r0, 0 +/* 8014BB78 00148AD8 98 03 05 90 */ stb r0, 0x590(r3) +/* 8014BB7C 00148ADC 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8014BB80 00148AE0 80 63 07 68 */ lwz r3, 0x768(r3) +/* 8014BB84 00148AE4 4B FA 5D 71 */ bl DisableHalfPipeStatus__10CMorphBallFv +/* 8014BB88 00148AE8 48 00 00 D8 */ b lbl_8014BC60 +lbl_8014BB8C: +/* 8014BB8C 00148AEC 80 03 05 68 */ lwz r0, 0x568(r3) +/* 8014BB90 00148AF0 2C 00 00 01 */ cmpwi r0, 1 +/* 8014BB94 00148AF4 41 82 00 94 */ beq lbl_8014BC28 +/* 8014BB98 00148AF8 40 80 00 C8 */ bge lbl_8014BC60 +/* 8014BB9C 00148AFC 2C 00 00 00 */ cmpwi r0, 0 +/* 8014BBA0 00148B00 40 80 00 08 */ bge lbl_8014BBA8 +/* 8014BBA4 00148B04 48 00 00 BC */ b lbl_8014BC60 +lbl_8014BBA8: +/* 8014BBA8 00148B08 80 C3 04 50 */ lwz r6, 0x450(r3) +/* 8014BBAC 00148B0C 80 06 02 B8 */ lwz r0, 0x2b8(r6) +/* 8014BBB0 00148B10 2C 00 00 0A */ cmpwi r0, 0xa +/* 8014BBB4 00148B14 40 82 00 10 */ bne lbl_8014BBC4 +/* 8014BBB8 00148B18 38 00 00 01 */ li r0, 1 +/* 8014BBBC 00148B1C 90 03 05 68 */ stw r0, 0x568(r3) +/* 8014BBC0 00148B20 48 00 00 A0 */ b lbl_8014BC60 +lbl_8014BBC4: +/* 8014BBC4 00148B24 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 8014BBC8 00148B28 3C 60 80 3E */ lis r3, lbl_803DAA2C@ha +/* 8014BBCC 00148B2C 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l +/* 8014BBD0 00148B30 38 80 00 08 */ li r4, 8 +/* 8014BBD4 00148B34 90 01 00 10 */ stw r0, 0x10(r1) +/* 8014BBD8 00148B38 38 A3 AA 2C */ addi r5, r3, lbl_803DAA2C@l +/* 8014BBDC 00148B3C 38 00 00 00 */ li r0, 0 +/* 8014BBE0 00148B40 3B E6 00 04 */ addi r31, r6, 4 +/* 8014BBE4 00148B44 90 81 00 14 */ stw r4, 0x14(r1) +/* 8014BBE8 00148B48 7F E3 FB 78 */ mr r3, r31 +/* 8014BBEC 00148B4C 38 80 00 08 */ li r4, 8 +/* 8014BBF0 00148B50 90 A1 00 10 */ stw r5, 0x10(r1) +/* 8014BBF4 00148B54 90 01 00 18 */ stw r0, 0x18(r1) +/* 8014BBF8 00148B58 4B FE 58 41 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8014BBFC 00148B5C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014BC00 00148B60 3C 60 80 3E */ lis r3, lbl_803DAA2C@ha +/* 8014BC04 00148B64 38 83 AA 2C */ addi r4, r3, lbl_803DAA2C@l +/* 8014BC08 00148B68 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8014BC0C 00148B6C 90 1F 01 58 */ stw r0, 0x158(r31) +/* 8014BC10 00148B70 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8014BC14 00148B74 80 61 00 18 */ lwz r3, 0x18(r1) +/* 8014BC18 00148B78 90 81 00 10 */ stw r4, 0x10(r1) +/* 8014BC1C 00148B7C 90 7F 01 5C */ stw r3, 0x15c(r31) +/* 8014BC20 00148B80 90 01 00 10 */ stw r0, 0x10(r1) +/* 8014BC24 00148B84 48 00 00 3C */ b lbl_8014BC60 +lbl_8014BC28: +/* 8014BC28 00148B88 48 00 0B 51 */ bl sub_8014c778 +/* 8014BC2C 00148B8C 48 00 00 34 */ b lbl_8014BC60 +lbl_8014BC30: +/* 8014BC30 00148B90 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 8014BC34 00148B94 38 00 00 0A */ li r0, 0xa +/* 8014BC38 00148B98 38 A4 AA 68 */ addi r5, r4, lbl_803DAA68@l +/* 8014BC3C 00148B9C 90 01 00 0C */ stw r0, 0xc(r1) +/* 8014BC40 00148BA0 38 81 00 08 */ addi r4, r1, 8 +/* 8014BC44 00148BA4 90 A1 00 08 */ stw r5, 8(r1) +/* 8014BC48 00148BA8 80 63 04 50 */ lwz r3, 0x450(r3) +/* 8014BC4C 00148BAC 38 63 00 04 */ addi r3, r3, 4 +/* 8014BC50 00148BB0 4B FE 5B 69 */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd +/* 8014BC54 00148BB4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8014BC58 00148BB8 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8014BC5C 00148BBC 90 01 00 08 */ stw r0, 8(r1) +lbl_8014BC60: +/* 8014BC60 00148BC0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8014BC64 00148BC4 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8014BC68 00148BC8 7C 08 03 A6 */ mtlr r0 +/* 8014BC6C 00148BCC 38 21 00 30 */ addi r1, r1, 0x30 +/* 8014BC70 00148BD0 4E 80 00 20 */ blr + +.global Active__16CPuddleToadGammaFR13CStateManager9EStateMsgf +Active__16CPuddleToadGammaFR13CStateManager9EStateMsgf: +/* 8014BC74 00148BD4 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 8014BC78 00148BD8 7C 08 02 A6 */ mflr r0 +/* 8014BC7C 00148BDC 2C 05 00 01 */ cmpwi r5, 1 +/* 8014BC80 00148BE0 90 01 00 94 */ stw r0, 0x94(r1) +/* 8014BC84 00148BE4 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 8014BC88 00148BE8 7C 9F 23 78 */ mr r31, r4 +/* 8014BC8C 00148BEC 93 C1 00 88 */ stw r30, 0x88(r1) +/* 8014BC90 00148BF0 7C 7E 1B 78 */ mr r30, r3 +/* 8014BC94 00148BF4 41 82 00 E8 */ beq lbl_8014BD7C +/* 8014BC98 00148BF8 40 80 00 10 */ bge lbl_8014BCA8 +/* 8014BC9C 00148BFC 2C 05 00 00 */ cmpwi r5, 0 +/* 8014BCA0 00148C00 40 80 00 14 */ bge lbl_8014BCB4 +/* 8014BCA4 00148C04 48 00 00 D8 */ b lbl_8014BD7C +lbl_8014BCA8: +/* 8014BCA8 00148C08 2C 05 00 03 */ cmpwi r5, 3 +/* 8014BCAC 00148C0C 40 80 00 D0 */ bge lbl_8014BD7C +/* 8014BCB0 00148C10 48 00 00 BC */ b lbl_8014BD6C +lbl_8014BCB4: +/* 8014BCB4 00148C14 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8014BCB8 00148C18 38 80 00 02 */ li r4, 2 +/* 8014BCBC 00148C1C 4B FE ED 1D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8014BCC0 00148C20 80 8D 8C 00 */ lwz r4, lbl_805A77C0@sda21(r13) +/* 8014BCC4 00148C24 38 61 00 14 */ addi r3, r1, 0x14 +/* 8014BCC8 00148C28 4B EB 8F F1 */ bl string_l__4rstlFPCc +/* 8014BCCC 00148C2C 7F C4 F3 78 */ mr r4, r30 +/* 8014BCD0 00148C30 38 61 00 24 */ addi r3, r1, 0x24 +/* 8014BCD4 00148C34 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8014BCD8 00148C38 4B F2 CC A1 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8014BCDC 00148C3C 38 61 00 54 */ addi r3, r1, 0x54 +/* 8014BCE0 00148C40 38 81 00 24 */ addi r4, r1, 0x24 +/* 8014BCE4 00148C44 48 1C 6E 91 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8014BCE8 00148C48 38 61 00 14 */ addi r3, r1, 0x14 +/* 8014BCEC 00148C4C 48 1F 1D F5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8014BCF0 00148C50 3C 80 80 57 */ lis r4, lbl_805719DC@ha +/* 8014BCF4 00148C54 38 61 00 08 */ addi r3, r1, 8 +/* 8014BCF8 00148C58 38 A4 19 DC */ addi r5, r4, lbl_805719DC@l +/* 8014BCFC 00148C5C 38 9E 00 34 */ addi r4, r30, 0x34 +/* 8014BD00 00148C60 48 1C 6D 81 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 8014BD04 00148C64 C0 21 00 60 */ lfs f1, 0x60(r1) +/* 8014BD08 00148C68 38 C0 00 01 */ li r6, 1 +/* 8014BD0C 00148C6C C0 01 00 08 */ lfs f0, 8(r1) +/* 8014BD10 00148C70 7F C3 F3 78 */ mr r3, r30 +/* 8014BD14 00148C74 C0 A1 00 70 */ lfs f5, 0x70(r1) +/* 8014BD18 00148C78 7F E4 FB 78 */ mr r4, r31 +/* 8014BD1C 00148C7C C0 81 00 0C */ lfs f4, 0xc(r1) +/* 8014BD20 00148C80 EC 21 00 2A */ fadds f1, f1, f0 +/* 8014BD24 00148C84 C0 61 00 80 */ lfs f3, 0x80(r1) +/* 8014BD28 00148C88 38 A0 00 01 */ li r5, 1 +/* 8014BD2C 00148C8C C0 41 00 10 */ lfs f2, 0x10(r1) +/* 8014BD30 00148C90 EC 85 20 2A */ fadds f4, f5, f4 +/* 8014BD34 00148C94 C0 02 9C F0 */ lfs f0, lbl_805ABA10@sda21(r2) +/* 8014BD38 00148C98 D0 3E 05 CC */ stfs f1, 0x5cc(r30) +/* 8014BD3C 00148C9C EC 23 10 2A */ fadds f1, f3, f2 +/* 8014BD40 00148CA0 D0 9E 05 D0 */ stfs f4, 0x5d0(r30) +/* 8014BD44 00148CA4 D0 3E 05 D4 */ stfs f1, 0x5d4(r30) +/* 8014BD48 00148CA8 D0 1E 05 6C */ stfs f0, 0x56c(r30) +/* 8014BD4C 00148CAC 88 1E 05 E8 */ lbz r0, 0x5e8(r30) +/* 8014BD50 00148CB0 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 +/* 8014BD54 00148CB4 98 1E 05 E8 */ stb r0, 0x5e8(r30) +/* 8014BD58 00148CB8 48 00 06 15 */ bl SetSolid__16CPuddleToadGammaFR13CStateManagerb +/* 8014BD5C 00148CBC 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8014BD60 00148CC0 38 00 00 01 */ li r0, 1 +/* 8014BD64 00148CC4 98 03 05 90 */ stb r0, 0x590(r3) +/* 8014BD68 00148CC8 48 00 00 14 */ b lbl_8014BD7C +lbl_8014BD6C: +/* 8014BD6C 00148CCC 88 1E 05 E8 */ lbz r0, 0x5e8(r30) +/* 8014BD70 00148CD0 38 60 00 00 */ li r3, 0 +/* 8014BD74 00148CD4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8014BD78 00148CD8 98 1E 05 E8 */ stb r0, 0x5e8(r30) +lbl_8014BD7C: +/* 8014BD7C 00148CDC 80 01 00 94 */ lwz r0, 0x94(r1) +/* 8014BD80 00148CE0 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 8014BD84 00148CE4 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 8014BD88 00148CE8 7C 08 03 A6 */ mtlr r0 +/* 8014BD8C 00148CEC 38 21 00 90 */ addi r1, r1, 0x90 +/* 8014BD90 00148CF0 4E 80 00 20 */ blr + +.global InActive__16CPuddleToadGammaFR13CStateManager9EStateMsgf +InActive__16CPuddleToadGammaFR13CStateManager9EStateMsgf: +/* 8014BD94 00148CF4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8014BD98 00148CF8 7C 08 02 A6 */ mflr r0 +/* 8014BD9C 00148CFC 2C 05 00 00 */ cmpwi r5, 0 +/* 8014BDA0 00148D00 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014BDA4 00148D04 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8014BDA8 00148D08 7C 9F 23 78 */ mr r31, r4 +/* 8014BDAC 00148D0C 93 C1 00 08 */ stw r30, 8(r1) +/* 8014BDB0 00148D10 7C 7E 1B 78 */ mr r30, r3 +/* 8014BDB4 00148D14 41 82 00 0C */ beq lbl_8014BDC0 +/* 8014BDB8 00148D18 41 80 00 38 */ blt lbl_8014BDF0 +/* 8014BDBC 00148D1C 48 00 00 34 */ b lbl_8014BDF0 +lbl_8014BDC0: +/* 8014BDC0 00148D20 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8014BDC4 00148D24 38 80 00 01 */ li r4, 1 +/* 8014BDC8 00148D28 4B FE EC 11 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 8014BDCC 00148D2C 7F C3 F3 78 */ mr r3, r30 +/* 8014BDD0 00148D30 7F E4 FB 78 */ mr r4, r31 +/* 8014BDD4 00148D34 38 A0 00 01 */ li r5, 1 +/* 8014BDD8 00148D38 48 00 05 95 */ bl SetSolid__16CPuddleToadGammaFR13CStateManagerb +/* 8014BDDC 00148D3C 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8014BDE0 00148D40 38 00 00 01 */ li r0, 1 +/* 8014BDE4 00148D44 C0 02 9C F8 */ lfs f0, lbl_805ABA18@sda21(r2) +/* 8014BDE8 00148D48 98 03 05 90 */ stb r0, 0x590(r3) +/* 8014BDEC 00148D4C D0 1E 03 40 */ stfs f0, 0x340(r30) +lbl_8014BDF0: +/* 8014BDF0 00148D50 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014BDF4 00148D54 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8014BDF8 00148D58 83 C1 00 08 */ lwz r30, 8(r1) +/* 8014BDFC 00148D5C 7C 08 03 A6 */ mtlr r0 +/* 8014BE00 00148D60 38 21 00 10 */ addi r1, r1, 0x10 +/* 8014BE04 00148D64 4E 80 00 20 */ blr + +.global SpotPlayer__16CPuddleToadGammaFR13CStateManagerf +SpotPlayer__16CPuddleToadGammaFR13CStateManagerf: +/* 8014BE08 00148D68 C0 23 05 6C */ lfs f1, 0x56c(r3) +/* 8014BE0C 00148D6C C0 03 05 C8 */ lfs f0, 0x5c8(r3) +/* 8014BE10 00148D70 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8014BE14 00148D74 4C 41 13 82 */ cror 2, 1, 2 +/* 8014BE18 00148D78 7C 00 00 26 */ mfcr r0 +/* 8014BE1C 00148D7C 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f +/* 8014BE20 00148D80 4E 80 00 20 */ blr + +.global ShouldAttack__16CPuddleToadGammaFR13CStateManagerf +ShouldAttack__16CPuddleToadGammaFR13CStateManagerf: +/* 8014BE24 00148D84 C0 23 05 6C */ lfs f1, 0x56c(r3) +/* 8014BE28 00148D88 C0 03 05 C4 */ lfs f0, 0x5c4(r3) +/* 8014BE2C 00148D8C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8014BE30 00148D90 4C 41 13 82 */ cror 2, 1, 2 +/* 8014BE34 00148D94 7C 00 00 26 */ mfcr r0 +/* 8014BE38 00148D98 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f +/* 8014BE3C 00148D9C 4E 80 00 20 */ blr + +.global Inside__16CPuddleToadGammaFR13CStateManagerf +Inside__16CPuddleToadGammaFR13CStateManagerf: +/* 8014BE40 00148DA0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8014BE44 00148DA4 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 8014BE48 00148DA8 80 04 02 F8 */ lwz r0, 0x2f8(r4) +/* 8014BE4C 00148DAC 2C 00 00 01 */ cmpwi r0, 1 +/* 8014BE50 00148DB0 40 82 00 7C */ bne lbl_8014BECC +/* 8014BE54 00148DB4 C0 24 00 50 */ lfs f1, 0x50(r4) +/* 8014BE58 00148DB8 C0 03 05 D0 */ lfs f0, 0x5d0(r3) +/* 8014BE5C 00148DBC C0 C3 00 48 */ lfs f6, 0x48(r3) +/* 8014BE60 00148DC0 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8014BE64 00148DC4 C0 24 00 40 */ lfs f1, 0x40(r4) +/* 8014BE68 00148DC8 C0 03 05 CC */ lfs f0, 0x5cc(r3) +/* 8014BE6C 00148DCC C0 43 00 38 */ lfs f2, 0x38(r3) +/* 8014BE70 00148DD0 EC A1 00 28 */ fsubs f5, f1, f0 +/* 8014BE74 00148DD4 C0 64 00 60 */ lfs f3, 0x60(r4) +/* 8014BE78 00148DD8 EC 04 01 B2 */ fmuls f0, f4, f6 +/* 8014BE7C 00148DDC C0 23 05 D4 */ lfs f1, 0x5d4(r3) +/* 8014BE80 00148DE0 C0 E3 00 58 */ lfs f7, 0x58(r3) +/* 8014BE84 00148DE4 EC 63 08 28 */ fsubs f3, f3, f1 +/* 8014BE88 00148DE8 EC 25 00 BA */ fmadds f1, f5, f2, f0 +/* 8014BE8C 00148DEC C0 02 9C F0 */ lfs f0, lbl_805ABA10@sda21(r2) +/* 8014BE90 00148DF0 D0 41 00 08 */ stfs f2, 8(r1) +/* 8014BE94 00148DF4 EC 23 09 FA */ fmadds f1, f3, f7, f1 +/* 8014BE98 00148DF8 D0 C1 00 0C */ stfs f6, 0xc(r1) +/* 8014BE9C 00148DFC D0 E1 00 10 */ stfs f7, 0x10(r1) +/* 8014BEA0 00148E00 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8014BEA4 00148E04 4C 40 13 82 */ cror 2, 0, 2 +/* 8014BEA8 00148E08 40 82 00 24 */ bne lbl_8014BECC +/* 8014BEAC 00148E0C EC 24 01 32 */ fmuls f1, f4, f4 +/* 8014BEB0 00148E10 C0 02 9C F8 */ lfs f0, lbl_805ABA18@sda21(r2) +/* 8014BEB4 00148E14 EC 25 09 7A */ fmadds f1, f5, f5, f1 +/* 8014BEB8 00148E18 EC 23 08 FA */ fmadds f1, f3, f3, f1 +/* 8014BEBC 00148E1C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8014BEC0 00148E20 40 80 00 0C */ bge lbl_8014BECC +/* 8014BEC4 00148E24 38 60 00 01 */ li r3, 1 +/* 8014BEC8 00148E28 48 00 00 08 */ b lbl_8014BED0 +lbl_8014BECC: +/* 8014BECC 00148E2C 38 60 00 00 */ li r3, 0 +lbl_8014BED0: +/* 8014BED0 00148E30 38 21 00 20 */ addi r1, r1, 0x20 +/* 8014BED4 00148E34 4E 80 00 20 */ blr + +.global InAttackPosition__16CPuddleToadGammaFR13CStateManagerf +InAttackPosition__16CPuddleToadGammaFR13CStateManagerf: +/* 8014BED8 00148E38 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8014BEDC 00148E3C 7C 08 02 A6 */ mflr r0 +/* 8014BEE0 00148E40 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014BEE4 00148E44 80 A4 08 4C */ lwz r5, 0x84c(r4) +/* 8014BEE8 00148E48 80 05 02 F8 */ lwz r0, 0x2f8(r5) +/* 8014BEEC 00148E4C 2C 00 00 01 */ cmpwi r0, 1 +/* 8014BEF0 00148E50 40 82 00 0C */ bne lbl_8014BEFC +/* 8014BEF4 00148E54 48 00 09 B1 */ bl sub_8014c8a4 +/* 8014BEF8 00148E58 48 00 00 08 */ b lbl_8014BF00 +lbl_8014BEFC: +/* 8014BEFC 00148E5C 38 60 00 00 */ li r3, 0 +lbl_8014BF00: +/* 8014BF00 00148E60 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014BF04 00148E64 7C 08 03 A6 */ mtlr r0 +/* 8014BF08 00148E68 38 21 00 10 */ addi r1, r1, 0x10 +/* 8014BF0C 00148E6C 4E 80 00 20 */ blr + +.global sub_8014bf10 +sub_8014bf10: +/* 8014BF10 00148E70 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 8014BF14 00148E74 7C 08 02 A6 */ mflr r0 +/* 8014BF18 00148E78 90 01 01 14 */ stw r0, 0x114(r1) +/* 8014BF1C 00148E7C DB E1 01 00 */ stfd f31, 0x100(r1) +/* 8014BF20 00148E80 F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 +/* 8014BF24 00148E84 BF 41 00 E8 */ stmw r26, 0xe8(r1) +/* 8014BF28 00148E88 7C 9C 23 78 */ mr r28, r4 +/* 8014BF2C 00148E8C 7C 7B 1B 78 */ mr r27, r3 +/* 8014BF30 00148E90 83 E4 08 4C */ lwz r31, 0x84c(r4) +/* 8014BF34 00148E94 7C BD 2B 78 */ mr r29, r5 +/* 8014BF38 00148E98 C3 E3 05 00 */ lfs f31, 0x500(r3) +/* 8014BF3C 00148E9C 7F E3 FB 78 */ mr r3, r31 +/* 8014BF40 00148EA0 4B FC F4 39 */ bl Stop__13CPhysicsActorFv +/* 8014BF44 00148EA4 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8014BF48 00148EA8 7F E3 FB 78 */ mr r3, r31 +/* 8014BF4C 00148EAC 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 8014BF50 00148EB0 4B FC ED 51 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 8014BF54 00148EB4 80 7F 00 68 */ lwz r3, 0x68(r31) +/* 8014BF58 00148EB8 38 00 00 20 */ li r0, 0x20 +/* 8014BF5C 00148EBC 80 9F 00 6C */ lwz r4, 0x6c(r31) +/* 8014BF60 00148EC0 3B C0 00 00 */ li r30, 0 +/* 8014BF64 00148EC4 7C 60 00 38 */ and r0, r3, r0 +/* 8014BF68 00148EC8 7C 83 F0 38 */ and r3, r4, r30 +/* 8014BF6C 00148ECC 7C 63 F2 78 */ xor r3, r3, r30 +/* 8014BF70 00148ED0 7C 00 F2 78 */ xor r0, r0, r30 +/* 8014BF74 00148ED4 7C 60 03 79 */ or. r0, r3, r0 +/* 8014BF78 00148ED8 41 82 00 08 */ beq lbl_8014BF80 +/* 8014BF7C 00148EDC 3B C0 00 01 */ li r30, 1 +lbl_8014BF80: +/* 8014BF80 00148EE0 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 8014BF84 00148EE4 41 82 00 14 */ beq lbl_8014BF98 +/* 8014BF88 00148EE8 7F E3 FB 78 */ mr r3, r31 +/* 8014BF8C 00148EEC 7F 85 E3 78 */ mr r5, r28 +/* 8014BF90 00148EF0 38 80 00 25 */ li r4, 0x25 +/* 8014BF94 00148EF4 4B F0 7F ED */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_8014BF98: +/* 8014BF98 00148EF8 7F E3 FB 78 */ mr r3, r31 +/* 8014BF9C 00148EFC 7F 85 E3 78 */ mr r5, r28 +/* 8014BFA0 00148F00 38 80 00 20 */ li r4, 0x20 +/* 8014BFA4 00148F04 4B F0 7F DD */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 8014BFA8 00148F08 80 1B 00 68 */ lwz r0, 0x68(r27) +/* 8014BFAC 00148F0C 3B 40 00 00 */ li r26, 0 +/* 8014BFB0 00148F10 80 9B 00 6C */ lwz r4, 0x6c(r27) +/* 8014BFB4 00148F14 3C 60 00 08 */ lis r3, 8 +/* 8014BFB8 00148F18 7C 00 D0 38 */ and r0, r0, r26 +/* 8014BFBC 00148F1C 7C 83 18 38 */ and r3, r4, r3 +/* 8014BFC0 00148F20 7C 63 D2 78 */ xor r3, r3, r26 +/* 8014BFC4 00148F24 7C 00 D2 78 */ xor r0, r0, r26 +/* 8014BFC8 00148F28 7C 60 03 79 */ or. r0, r3, r0 +/* 8014BFCC 00148F2C 41 82 00 08 */ beq lbl_8014BFD4 +/* 8014BFD0 00148F30 3B 40 00 01 */ li r26, 1 +lbl_8014BFD4: +/* 8014BFD4 00148F34 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 8014BFD8 00148F38 41 82 00 14 */ beq lbl_8014BFEC +/* 8014BFDC 00148F3C 7F 63 DB 78 */ mr r3, r27 +/* 8014BFE0 00148F40 7F 85 E3 78 */ mr r5, r28 +/* 8014BFE4 00148F44 38 80 00 13 */ li r4, 0x13 +/* 8014BFE8 00148F48 4B F0 7F 99 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_8014BFEC: +/* 8014BFEC 00148F4C 7F E4 FB 78 */ mr r4, r31 +/* 8014BFF0 00148F50 38 61 00 08 */ addi r3, r1, 8 +/* 8014BFF4 00148F54 4B FC FF F9 */ bl GetPhysicsState__13CPhysicsActorCFv +/* 8014BFF8 00148F58 38 61 00 78 */ addi r3, r1, 0x78 +/* 8014BFFC 00148F5C 38 81 00 08 */ addi r4, r1, 8 +/* 8014C000 00148F60 4B F6 74 C1 */ bl __ct__13CPhysicsStateFRC13CPhysicsState +/* 8014C004 00148F64 7F E3 FB 78 */ mr r3, r31 +/* 8014C008 00148F68 4B FC F3 71 */ bl Stop__13CPhysicsActorFv +/* 8014C00C 00148F6C FC 20 F8 90 */ fmr f1, f31 +/* 8014C010 00148F70 7F E3 FB 78 */ mr r3, r31 +/* 8014C014 00148F74 7F A4 EB 78 */ mr r4, r29 +/* 8014C018 00148F78 4B FC F0 F1 */ bl MoveToWR__13CPhysicsActorFRC9CVector3ff +/* 8014C01C 00148F7C FC 20 F8 90 */ fmr f1, f31 +/* 8014C020 00148F80 7F 83 E3 78 */ mr r3, r28 +/* 8014C024 00148F84 7F E4 FB 78 */ mr r4, r31 +/* 8014C028 00148F88 38 A0 00 00 */ li r5, 0 +/* 8014C02C 00148F8C 48 03 5D 0D */ bl "Move__14CGameCollisionFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 8014C030 00148F90 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8014C034 00148F94 7F E3 FB 78 */ mr r3, r31 +/* 8014C038 00148F98 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 8014C03C 00148F9C 38 81 00 78 */ addi r4, r1, 0x78 +/* 8014C040 00148FA0 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8014C044 00148FA4 D0 01 00 78 */ stfs f0, 0x78(r1) +/* 8014C048 00148FA8 D0 21 00 7C */ stfs f1, 0x7c(r1) +/* 8014C04C 00148FAC D0 41 00 80 */ stfs f2, 0x80(r1) +/* 8014C050 00148FB0 4B FC FD D5 */ bl SetPhysicsState__13CPhysicsActorFRC13CPhysicsState +/* 8014C054 00148FB4 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 8014C058 00148FB8 41 82 00 14 */ beq lbl_8014C06C +/* 8014C05C 00148FBC 7F E3 FB 78 */ mr r3, r31 +/* 8014C060 00148FC0 7F 85 E3 78 */ mr r5, r28 +/* 8014C064 00148FC4 38 80 00 25 */ li r4, 0x25 +/* 8014C068 00148FC8 4B F0 82 E9 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_8014C06C: +/* 8014C06C 00148FCC 7F E3 FB 78 */ mr r3, r31 +/* 8014C070 00148FD0 7F 85 E3 78 */ mr r5, r28 +/* 8014C074 00148FD4 38 80 00 20 */ li r4, 0x20 +/* 8014C078 00148FD8 4B F0 82 D9 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 8014C07C 00148FDC 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 8014C080 00148FE0 41 82 00 14 */ beq lbl_8014C094 +/* 8014C084 00148FE4 7F 63 DB 78 */ mr r3, r27 +/* 8014C088 00148FE8 7F 85 E3 78 */ mr r5, r28 +/* 8014C08C 00148FEC 38 80 00 13 */ li r4, 0x13 +/* 8014C090 00148FF0 4B F0 82 C1 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_8014C094: +/* 8014C094 00148FF4 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 +/* 8014C098 00148FF8 CB E1 01 00 */ lfd f31, 0x100(r1) +/* 8014C09C 00148FFC BB 41 00 E8 */ lmw r26, 0xe8(r1) +/* 8014C0A0 00149000 80 01 01 14 */ lwz r0, 0x114(r1) +/* 8014C0A4 00149004 7C 08 03 A6 */ mtlr r0 +/* 8014C0A8 00149008 38 21 01 10 */ addi r1, r1, 0x110 +/* 8014C0AC 0014900C 4E 80 00 20 */ blr + +.global AcceptScriptMsg__16CPuddleToadGammaF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__16CPuddleToadGammaF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8014C0B0 00149010 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 8014C0B4 00149014 7C 08 02 A6 */ mflr r0 +/* 8014C0B8 00149018 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 8014C0BC 0014901C 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 8014C0C0 00149020 7C DF 33 78 */ mr r31, r6 +/* 8014C0C4 00149024 93 C1 00 98 */ stw r30, 0x98(r1) +/* 8014C0C8 00149028 7C 9E 23 78 */ mr r30, r4 +/* 8014C0CC 0014902C 93 A1 00 94 */ stw r29, 0x94(r1) +/* 8014C0D0 00149030 7C 7D 1B 78 */ mr r29, r3 +/* 8014C0D4 00149034 A0 05 00 00 */ lhz r0, 0(r5) +/* 8014C0D8 00149038 38 A1 00 08 */ addi r5, r1, 8 +/* 8014C0DC 0014903C B0 01 00 08 */ sth r0, 8(r1) +/* 8014C0E0 00149040 4B F3 0A 99 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8014C0E4 00149044 2C 1E 00 21 */ cmpwi r30, 0x21 +/* 8014C0E8 00149048 41 82 00 14 */ beq lbl_8014C0FC +/* 8014C0EC 0014904C 40 80 00 DC */ bge lbl_8014C1C8 +/* 8014C0F0 00149050 2C 1E 00 01 */ cmpwi r30, 1 +/* 8014C0F4 00149054 41 82 00 D4 */ beq lbl_8014C1C8 +/* 8014C0F8 00149058 48 00 00 D0 */ b lbl_8014C1C8 +lbl_8014C0FC: +/* 8014C0FC 0014905C 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8014C100 00149060 7F E4 FB 78 */ mr r4, r31 +/* 8014C104 00149064 4B FE EB ED */ bl Activate__15CBodyControllerFR13CStateManager +/* 8014C108 00149068 80 8D 8C 00 */ lwz r4, lbl_805A77C0@sda21(r13) +/* 8014C10C 0014906C 38 61 00 18 */ addi r3, r1, 0x18 +/* 8014C110 00149070 4B EB 8B A9 */ bl string_l__4rstlFPCc +/* 8014C114 00149074 7F A4 EB 78 */ mr r4, r29 +/* 8014C118 00149078 38 61 00 28 */ addi r3, r1, 0x28 +/* 8014C11C 0014907C 38 A1 00 18 */ addi r5, r1, 0x18 +/* 8014C120 00149080 4B F2 C8 59 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8014C124 00149084 38 61 00 58 */ addi r3, r1, 0x58 +/* 8014C128 00149088 38 81 00 28 */ addi r4, r1, 0x28 +/* 8014C12C 0014908C 48 1C 6A 49 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8014C130 00149090 38 61 00 18 */ addi r3, r1, 0x18 +/* 8014C134 00149094 48 1F 19 AD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8014C138 00149098 3C 80 80 57 */ lis r4, lbl_805719DC@ha +/* 8014C13C 0014909C 38 61 00 0C */ addi r3, r1, 0xc +/* 8014C140 001490A0 38 A4 19 DC */ addi r5, r4, lbl_805719DC@l +/* 8014C144 001490A4 38 9D 00 34 */ addi r4, r29, 0x34 +/* 8014C148 001490A8 48 1C 69 39 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 8014C14C 001490AC C0 21 00 64 */ lfs f1, 0x64(r1) +/* 8014C150 001490B0 7F A3 EB 78 */ mr r3, r29 +/* 8014C154 001490B4 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 8014C158 001490B8 7F E6 FB 78 */ mr r6, r31 +/* 8014C15C 001490BC C0 81 00 74 */ lfs f4, 0x74(r1) +/* 8014C160 001490C0 38 80 00 28 */ li r4, 0x28 +/* 8014C164 001490C4 C0 61 00 10 */ lfs f3, 0x10(r1) +/* 8014C168 001490C8 EC 01 00 2A */ fadds f0, f1, f0 +/* 8014C16C 001490CC C0 41 00 84 */ lfs f2, 0x84(r1) +/* 8014C170 001490D0 38 A0 00 29 */ li r5, 0x29 +/* 8014C174 001490D4 C0 21 00 14 */ lfs f1, 0x14(r1) +/* 8014C178 001490D8 EC 64 18 2A */ fadds f3, f4, f3 +/* 8014C17C 001490DC D0 1D 05 CC */ stfs f0, 0x5cc(r29) +/* 8014C180 001490E0 EC 02 08 2A */ fadds f0, f2, f1 +/* 8014C184 001490E4 D0 7D 05 D0 */ stfs f3, 0x5d0(r29) +/* 8014C188 001490E8 D0 1D 05 D4 */ stfs f0, 0x5d4(r29) +/* 8014C18C 001490EC C0 1D 05 CC */ lfs f0, 0x5cc(r29) +/* 8014C190 001490F0 D0 1D 05 D8 */ stfs f0, 0x5d8(r29) +/* 8014C194 001490F4 C0 1D 05 D0 */ lfs f0, 0x5d0(r29) +/* 8014C198 001490F8 D0 1D 05 DC */ stfs f0, 0x5dc(r29) +/* 8014C19C 001490FC C0 1D 05 D4 */ lfs f0, 0x5d4(r29) +/* 8014C1A0 00149100 D0 1D 05 E0 */ stfs f0, 0x5e0(r29) +/* 8014C1A4 00149104 4B F0 7D 31 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +/* 8014C1A8 00149108 7F A3 EB 78 */ mr r3, r29 +/* 8014C1AC 0014910C 7F E5 FB 78 */ mr r5, r31 +/* 8014C1B0 00149110 38 80 00 2B */ li r4, 0x2b +/* 8014C1B4 00149114 4B F0 81 9D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 8014C1B8 00149118 7F A3 EB 78 */ mr r3, r29 +/* 8014C1BC 0014911C 7F E5 FB 78 */ mr r5, r31 +/* 8014C1C0 00149120 38 80 00 37 */ li r4, 0x37 +/* 8014C1C4 00149124 4B F0 81 8D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_8014C1C8: +/* 8014C1C8 00149128 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 8014C1CC 0014912C 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 8014C1D0 00149130 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 8014C1D4 00149134 83 A1 00 94 */ lwz r29, 0x94(r1) +/* 8014C1D8 00149138 7C 08 03 A6 */ mtlr r0 +/* 8014C1DC 0014913C 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 8014C1E0 00149140 4E 80 00 20 */ blr + +.global Accept__16CPuddleToadGammaFR8IVisitor +Accept__16CPuddleToadGammaFR8IVisitor: +/* 8014C1E4 00149144 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8014C1E8 00149148 7C 08 02 A6 */ mflr r0 +/* 8014C1EC 0014914C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014C1F0 00149150 7C 60 1B 78 */ mr r0, r3 +/* 8014C1F4 00149154 7C 83 23 78 */ mr r3, r4 +/* 8014C1F8 00149158 81 84 00 00 */ lwz r12, 0(r4) +/* 8014C1FC 0014915C 7C 04 03 78 */ mr r4, r0 +/* 8014C200 00149160 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8014C204 00149164 7D 89 03 A6 */ mtctr r12 +/* 8014C208 00149168 4E 80 04 21 */ bctrl +/* 8014C20C 0014916C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014C210 00149170 7C 08 03 A6 */ mtlr r0 +/* 8014C214 00149174 38 21 00 10 */ addi r1, r1, 0x10 +/* 8014C218 00149178 4E 80 00 20 */ blr + +.global CenterPlayer__16CPuddleToadGammaFR13CStateManagerRC9CVector3f +CenterPlayer__16CPuddleToadGammaFR13CStateManagerRC9CVector3f: +/* 8014C21C 0014917C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8014C220 00149180 7C 08 02 A6 */ mflr r0 +/* 8014C224 00149184 90 01 00 54 */ stw r0, 0x54(r1) +/* 8014C228 00149188 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 8014C22C 0014918C F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 8014C230 00149190 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8014C234 00149194 83 E4 08 4C */ lwz r31, 0x84c(r4) +/* 8014C238 00149198 FF E0 08 90 */ fmr f31, f1 +/* 8014C23C 0014919C C0 25 00 04 */ lfs f1, 4(r5) +/* 8014C240 001491A0 38 61 00 14 */ addi r3, r1, 0x14 +/* 8014C244 001491A4 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 8014C248 001491A8 38 81 00 08 */ addi r4, r1, 8 +/* 8014C24C 001491AC C0 65 00 08 */ lfs f3, 8(r5) +/* 8014C250 001491B0 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8014C254 001491B4 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8014C258 001491B8 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8014C25C 001491BC C0 25 00 00 */ lfs f1, 0(r5) +/* 8014C260 001491C0 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8014C264 001491C4 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 8014C268 001491C8 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8014C26C 001491CC D0 41 00 10 */ stfs f2, 0x10(r1) +/* 8014C270 001491D0 D0 01 00 08 */ stfs f0, 8(r1) +/* 8014C274 001491D4 48 1C 85 DD */ bl AsNormalized__9CVector3fCFv +/* 8014C278 001491D8 C0 02 9C F8 */ lfs f0, lbl_805ABA18@sda21(r2) +/* 8014C27C 001491DC 7F E3 FB 78 */ mr r3, r31 +/* 8014C280 001491E0 C0 82 9C FC */ lfs f4, lbl_805ABA1C@sda21(r2) +/* 8014C284 001491E4 38 81 00 20 */ addi r4, r1, 0x20 +/* 8014C288 001491E8 EC 60 07 F2 */ fmuls f3, f0, f31 +/* 8014C28C 001491EC C0 41 00 14 */ lfs f2, 0x14(r1) +/* 8014C290 001491F0 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 8014C294 001491F4 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 8014C298 001491F8 EC 64 18 24 */ fdivs f3, f4, f3 +/* 8014C29C 001491FC EC 43 00 B2 */ fmuls f2, f3, f2 +/* 8014C2A0 00149200 EC 23 00 72 */ fmuls f1, f3, f1 +/* 8014C2A4 00149204 EC 03 00 32 */ fmuls f0, f3, f0 +/* 8014C2A8 00149208 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 8014C2AC 0014920C D0 21 00 24 */ stfs f1, 0x24(r1) +/* 8014C2B0 00149210 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 8014C2B4 00149214 4B FC E9 ED */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 8014C2B8 00149218 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 8014C2BC 0014921C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8014C2C0 00149220 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 8014C2C4 00149224 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8014C2C8 00149228 7C 08 03 A6 */ mtlr r0 +/* 8014C2CC 0014922C 38 21 00 50 */ addi r1, r1, 0x50 +/* 8014C2D0 00149230 4E 80 00 20 */ blr + +.global DoUserAnimEvent__16CPuddleToadGammaFR13CStateManagerRC13CInt32POINode14EUserEventType +DoUserAnimEvent__16CPuddleToadGammaFR13CStateManagerRC13CInt32POINode14EUserEventType: +/* 8014C2D4 00149234 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8014C2D8 00149238 7C 08 02 A6 */ mflr r0 +/* 8014C2DC 0014923C 90 01 00 34 */ stw r0, 0x34(r1) +/* 8014C2E0 00149240 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 8014C2E4 00149244 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 8014C2E8 00149248 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8014C2EC 0014924C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8014C2F0 00149250 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8014C2F4 00149254 93 81 00 10 */ stw r28, 0x10(r1) +/* 8014C2F8 00149258 7C DF 33 79 */ or. r31, r6, r6 +/* 8014C2FC 0014925C FF E0 08 90 */ fmr f31, f1 +/* 8014C300 00149260 7C 7C 1B 78 */ mr r28, r3 +/* 8014C304 00149264 7C 9D 23 78 */ mr r29, r4 +/* 8014C308 00149268 7C BE 2B 78 */ mr r30, r5 +/* 8014C30C 0014926C 38 00 00 00 */ li r0, 0 +/* 8014C310 00149270 41 82 00 08 */ beq lbl_8014C318 +/* 8014C314 00149274 48 00 00 10 */ b lbl_8014C324 +lbl_8014C318: +/* 8014C318 00149278 C0 3C 05 C0 */ lfs f1, 0x5c0(r28) +/* 8014C31C 0014927C 48 00 00 C9 */ bl ShootPlayer__16CPuddleToadGammaFR13CStateManagerf +/* 8014C320 00149280 38 00 00 01 */ li r0, 1 +lbl_8014C324: +/* 8014C324 00149284 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8014C328 00149288 40 82 00 1C */ bne lbl_8014C344 +/* 8014C32C 0014928C FC 20 F8 90 */ fmr f1, f31 +/* 8014C330 00149290 7F 83 E3 78 */ mr r3, r28 +/* 8014C334 00149294 7F A4 EB 78 */ mr r4, r29 +/* 8014C338 00149298 7F C5 F3 78 */ mr r5, r30 +/* 8014C33C 0014929C 7F E6 FB 78 */ mr r6, r31 +/* 8014C340 001492A0 4B F2 CB 71 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +lbl_8014C344: +/* 8014C344 001492A4 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 8014C348 001492A8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8014C34C 001492AC CB E1 00 20 */ lfd f31, 0x20(r1) +/* 8014C350 001492B0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8014C354 001492B4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8014C358 001492B8 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8014C35C 001492BC 83 81 00 10 */ lwz r28, 0x10(r1) +/* 8014C360 001492C0 7C 08 03 A6 */ mtlr r0 +/* 8014C364 001492C4 38 21 00 30 */ addi r1, r1, 0x30 +/* 8014C368 001492C8 4E 80 00 20 */ blr + +.global SetSolid__16CPuddleToadGammaFR13CStateManagerb +SetSolid__16CPuddleToadGammaFR13CStateManagerb: +/* 8014C36C 001492CC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8014C370 001492D0 7C 08 02 A6 */ mflr r0 +/* 8014C374 001492D4 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014C378 001492D8 54 A0 06 3F */ clrlwi. r0, r5, 0x18 +/* 8014C37C 001492DC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8014C380 001492E0 7C 9F 23 78 */ mr r31, r4 +/* 8014C384 001492E4 93 C1 00 08 */ stw r30, 8(r1) +/* 8014C388 001492E8 7C 7E 1B 78 */ mr r30, r3 +/* 8014C38C 001492EC 41 82 00 24 */ beq lbl_8014C3B0 +/* 8014C390 001492F0 7F E5 FB 78 */ mr r5, r31 +/* 8014C394 001492F4 38 80 00 13 */ li r4, 0x13 +/* 8014C398 001492F8 4B F0 7F B9 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 8014C39C 001492FC 7F C3 F3 78 */ mr r3, r30 +/* 8014C3A0 00149300 7F E5 FB 78 */ mr r5, r31 +/* 8014C3A4 00149304 38 80 00 32 */ li r4, 0x32 +/* 8014C3A8 00149308 4B F0 7B D9 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 8014C3AC 0014930C 48 00 00 20 */ b lbl_8014C3CC +lbl_8014C3B0: +/* 8014C3B0 00149310 7F E5 FB 78 */ mr r5, r31 +/* 8014C3B4 00149314 38 80 00 13 */ li r4, 0x13 +/* 8014C3B8 00149318 4B F0 7B C9 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 8014C3BC 0014931C 7F C3 F3 78 */ mr r3, r30 +/* 8014C3C0 00149320 7F E5 FB 78 */ mr r5, r31 +/* 8014C3C4 00149324 38 80 00 32 */ li r4, 0x32 +/* 8014C3C8 00149328 4B F0 7F 89 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_8014C3CC: +/* 8014C3CC 0014932C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014C3D0 00149330 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8014C3D4 00149334 83 C1 00 08 */ lwz r30, 8(r1) +/* 8014C3D8 00149338 7C 08 03 A6 */ mtlr r0 +/* 8014C3DC 0014933C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8014C3E0 00149340 4E 80 00 20 */ blr + +.global ShootPlayer__16CPuddleToadGammaFR13CStateManagerf +ShootPlayer__16CPuddleToadGammaFR13CStateManagerf: +/* 8014C3E4 00149344 94 21 F7 00 */ stwu r1, -0x900(r1) +/* 8014C3E8 00149348 7C 08 02 A6 */ mflr r0 +/* 8014C3EC 0014934C 90 01 09 04 */ stw r0, 0x904(r1) +/* 8014C3F0 00149350 DB E1 08 F0 */ stfd f31, 0x8f0(r1) +/* 8014C3F4 00149354 F3 E1 08 F8 */ psq_st f31, -1800(r1), 0, qr0 +/* 8014C3F8 00149358 DB C1 08 E0 */ stfd f30, 0x8e0(r1) +/* 8014C3FC 0014935C F3 C1 08 E8 */ psq_st f30, -1816(r1), 0, qr0 +/* 8014C400 00149360 DB A1 08 D0 */ stfd f29, 0x8d0(r1) +/* 8014C404 00149364 F3 A1 08 D8 */ psq_st f29, -1832(r1), 0, qr0 +/* 8014C408 00149368 DB 81 08 C0 */ stfd f28, 0x8c0(r1) +/* 8014C40C 0014936C F3 81 08 C8 */ psq_st f28, -1848(r1), 0, qr0 +/* 8014C410 00149370 93 E1 08 BC */ stw r31, 0x8bc(r1) +/* 8014C414 00149374 93 C1 08 B8 */ stw r30, 0x8b8(r1) +/* 8014C418 00149378 93 A1 08 B4 */ stw r29, 0x8b4(r1) +/* 8014C41C 0014937C 93 81 08 B0 */ stw r28, 0x8b0(r1) +/* 8014C420 00149380 7C 9E 23 78 */ mr r30, r4 +/* 8014C424 00149384 FF 80 08 90 */ fmr f28, f1 +/* 8014C428 00149388 7C 7D 1B 78 */ mr r29, r3 +/* 8014C42C 0014938C 83 E4 08 4C */ lwz r31, 0x84c(r4) +/* 8014C430 00149390 38 61 00 44 */ addi r3, r1, 0x44 +/* 8014C434 00149394 38 9D 05 B4 */ addi r4, r29, 0x5b4 +/* 8014C438 00149398 48 1C 84 19 */ bl AsNormalized__9CVector3fCFv +/* 8014C43C 0014939C 38 61 00 50 */ addi r3, r1, 0x50 +/* 8014C440 001493A0 38 9D 00 34 */ addi r4, r29, 0x34 +/* 8014C444 001493A4 38 A1 00 44 */ addi r5, r1, 0x44 +/* 8014C448 001493A8 48 1C 66 39 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 8014C44C 001493AC C3 E1 00 50 */ lfs f31, 0x50(r1) +/* 8014C450 001493B0 38 60 00 01 */ li r3, 1 +/* 8014C454 001493B4 C3 C1 00 54 */ lfs f30, 0x54(r1) +/* 8014C458 001493B8 C3 A1 00 58 */ lfs f29, 0x58(r1) +/* 8014C45C 001493BC 98 7F 05 90 */ stb r3, 0x590(r31) +/* 8014C460 001493C0 80 1F 02 F8 */ lwz r0, 0x2f8(r31) +/* 8014C464 001493C4 2C 00 00 01 */ cmpwi r0, 1 +/* 8014C468 001493C8 40 82 02 3C */ bne lbl_8014C6A4 +/* 8014C46C 001493CC 88 1D 05 E8 */ lbz r0, 0x5e8(r29) +/* 8014C470 001493D0 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 8014C474 001493D4 7F E3 FB 78 */ mr r3, r31 +/* 8014C478 001493D8 98 1D 05 E8 */ stb r0, 0x5e8(r29) +/* 8014C47C 001493DC 4B FC EE FD */ bl Stop__13CPhysicsActorFv +/* 8014C480 001493E0 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8014C484 001493E4 7F E3 FB 78 */ mr r3, r31 +/* 8014C488 001493E8 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 8014C48C 001493EC 4B FC E8 15 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 8014C490 001493F0 C0 1F 00 E8 */ lfs f0, 0xe8(r31) +/* 8014C494 001493F4 EC 60 07 F2 */ fmuls f3, f0, f31 +/* 8014C498 001493F8 EC 40 07 B2 */ fmuls f2, f0, f30 +/* 8014C49C 001493FC EC 20 07 72 */ fmuls f1, f0, f29 +/* 8014C4A0 00149400 EC 1C 00 F2 */ fmuls f0, f28, f3 +/* 8014C4A4 00149404 D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 8014C4A8 00149408 EC 9C 00 B2 */ fmuls f4, f28, f2 +/* 8014C4AC 0014940C EC 7C 00 72 */ fmuls f3, f28, f1 +/* 8014C4B0 00149410 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 8014C4B4 00149414 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 8014C4B8 00149418 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 8014C4BC 0014941C D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 8014C4C0 00149420 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 8014C4C4 00149424 4B EC F0 71 */ bl Identity__10CAxisAngleFv +/* 8014C4C8 00149428 7C 65 1B 78 */ mr r5, r3 +/* 8014C4CC 0014942C 7F E3 FB 78 */ mr r3, r31 +/* 8014C4D0 00149430 38 81 00 38 */ addi r4, r1, 0x38 +/* 8014C4D4 00149434 4B FC FE C5 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +/* 8014C4D8 00149438 7F E3 FB 78 */ mr r3, r31 +/* 8014C4DC 0014943C 7F C5 F3 78 */ mr r5, r30 +/* 8014C4E0 00149440 38 80 00 02 */ li r4, 2 +/* 8014C4E4 00149444 48 13 9F 09 */ bl SetMoveState__7CPlayerFQ27NPlayer20EPlayerMovementStateR13CStateManager +/* 8014C4E8 00149448 80 AD 8B F8 */ lwz r5, lbl_805A77B8@sda21(r13) +/* 8014C4EC 0014944C 38 60 00 00 */ li r3, 0 +/* 8014C4F0 00149450 38 80 00 01 */ li r4, 1 +/* 8014C4F4 00149454 48 23 DA 01 */ bl __shl2i +/* 8014C4F8 00149458 39 40 00 00 */ li r10, 0 +/* 8014C4FC 0014945C 38 00 00 03 */ li r0, 3 +/* 8014C500 00149460 90 81 00 94 */ stw r4, 0x94(r1) +/* 8014C504 00149464 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8014C508 00149468 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 8014C50C 0014946C 38 A1 00 18 */ addi r5, r1, 0x18 +/* 8014C510 00149470 90 61 00 90 */ stw r3, 0x90(r1) +/* 8014C514 00149474 38 81 00 20 */ addi r4, r1, 0x20 +/* 8014C518 00149478 7F C3 F3 78 */ mr r3, r30 +/* 8014C51C 0014947C 38 C1 00 10 */ addi r6, r1, 0x10 +/* 8014C520 00149480 91 41 00 9C */ stw r10, 0x9c(r1) +/* 8014C524 00149484 38 FD 05 70 */ addi r7, r29, 0x570 +/* 8014C528 00149488 39 01 00 90 */ addi r8, r1, 0x90 +/* 8014C52C 0014948C 91 41 00 98 */ stw r10, 0x98(r1) +/* 8014C530 00149490 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 8014C534 00149494 A0 1D 00 08 */ lhz r0, 8(r29) +/* 8014C538 00149498 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8014C53C 0014949C 81 5E 08 4C */ lwz r10, 0x84c(r30) +/* 8014C540 001494A0 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8014C544 001494A4 A1 4A 00 08 */ lhz r10, 8(r10) +/* 8014C548 001494A8 B1 41 00 18 */ sth r10, 0x18(r1) +/* 8014C54C 001494AC A0 1D 00 08 */ lhz r0, 8(r29) +/* 8014C550 001494B0 B1 41 00 14 */ sth r10, 0x14(r1) +/* 8014C554 001494B4 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8014C558 001494B8 B0 01 00 20 */ sth r0, 0x20(r1) +/* 8014C55C 001494BC 4B EF DB 45 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 8014C560 001494C0 80 7F 07 68 */ lwz r3, 0x768(r31) +/* 8014C564 001494C4 4B FA 2A 4D */ bl SetAsProjectile__10CMorphBallFv +/* 8014C568 001494C8 38 00 00 00 */ li r0, 0 +/* 8014C56C 001494CC 80 AD 8C 14 */ lwz r5, lbl_805A77D4@sda21(r13) +/* 8014C570 001494D0 90 01 00 A8 */ stw r0, 0xa8(r1) +/* 8014C574 001494D4 38 60 00 00 */ li r3, 0 +/* 8014C578 001494D8 38 80 00 01 */ li r4, 1 +/* 8014C57C 001494DC 48 23 D9 79 */ bl __shl2i +/* 8014C580 001494E0 38 A0 00 00 */ li r5, 0 +/* 8014C584 001494E4 38 00 00 01 */ li r0, 1 +/* 8014C588 001494E8 90 81 00 64 */ stw r4, 0x64(r1) +/* 8014C58C 001494EC 7F A4 EB 78 */ mr r4, r29 +/* 8014C590 001494F0 90 61 00 60 */ stw r3, 0x60(r1) +/* 8014C594 001494F4 38 61 00 78 */ addi r3, r1, 0x78 +/* 8014C598 001494F8 90 A1 00 6C */ stw r5, 0x6c(r1) +/* 8014C59C 001494FC 90 A1 00 68 */ stw r5, 0x68(r1) +/* 8014C5A0 00149500 90 01 00 70 */ stw r0, 0x70(r1) +/* 8014C5A4 00149504 4B FC E3 89 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 8014C5A8 00149508 7F C3 F3 78 */ mr r3, r30 +/* 8014C5AC 0014950C 7F A7 EB 78 */ mr r7, r29 +/* 8014C5B0 00149510 38 81 00 A8 */ addi r4, r1, 0xa8 +/* 8014C5B4 00149514 38 A1 00 78 */ addi r5, r1, 0x78 +/* 8014C5B8 00149518 38 C1 00 60 */ addi r6, r1, 0x60 +/* 8014C5BC 0014951C 4B F0 01 65 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 8014C5C0 00149520 3B A1 00 AC */ addi r29, r1, 0xac +/* 8014C5C4 00149524 7F BF EB 78 */ mr r31, r29 +/* 8014C5C8 00149528 48 00 00 78 */ b lbl_8014C640 +lbl_8014C5CC: +/* 8014C5CC 0014952C A0 1F 00 00 */ lhz r0, 0(r31) +/* 8014C5D0 00149530 7F C3 F3 78 */ mr r3, r30 +/* 8014C5D4 00149534 38 81 00 08 */ addi r4, r1, 8 +/* 8014C5D8 00149538 B0 01 00 08 */ sth r0, 8(r1) +/* 8014C5DC 0014953C 4B EF FF 99 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8014C5E0 00149540 7C 64 1B 78 */ mr r4, r3 +/* 8014C5E4 00149544 38 61 00 24 */ addi r3, r1, 0x24 +/* 8014C5E8 00149548 4B F6 34 55 */ bl "__ct__18TCastToPtr<5CBomb>FP7CEntity" +/* 8014C5EC 0014954C 83 83 00 04 */ lwz r28, 4(r3) +/* 8014C5F0 00149550 28 1C 00 00 */ cmplwi r28, 0 +/* 8014C5F4 00149554 41 82 00 48 */ beq lbl_8014C63C +/* 8014C5F8 00149558 80 7E 09 00 */ lwz r3, 0x900(r30) +/* 8014C5FC 0014955C 48 1C 5E E1 */ bl Float__9CRandom16Fv +/* 8014C600 00149560 C0 62 9D 04 */ lfs f3, lbl_805ABA24@sda21(r2) +/* 8014C604 00149564 C0 02 9D 00 */ lfs f0, lbl_805ABA20@sda21(r2) +/* 8014C608 00149568 C0 42 96 A0 */ lfs f2, lbl_805AB3C0@sda21(r2) +/* 8014C60C 0014956C EC 23 00 7A */ fmadds f1, f3, f1, f0 +/* 8014C610 00149570 C0 02 9C F0 */ lfs f0, lbl_805ABA10@sda21(r2) +/* 8014C614 00149574 FC 80 10 50 */ fneg f4, f2 +/* 8014C618 00149578 EC 61 07 F2 */ fmuls f3, f1, f31 +/* 8014C61C 0014957C EC 41 07 B2 */ fmuls f2, f1, f30 +/* 8014C620 00149580 EC 21 07 72 */ fmuls f1, f1, f29 +/* 8014C624 00149584 D0 7C 01 58 */ stfs f3, 0x158(r28) +/* 8014C628 00149588 D0 5C 01 5C */ stfs f2, 0x15c(r28) +/* 8014C62C 0014958C D0 3C 01 60 */ stfs f1, 0x160(r28) +/* 8014C630 00149590 D0 1C 01 64 */ stfs f0, 0x164(r28) +/* 8014C634 00149594 D0 1C 01 68 */ stfs f0, 0x168(r28) +/* 8014C638 00149598 D0 9C 01 6C */ stfs f4, 0x16c(r28) +lbl_8014C63C: +/* 8014C63C 0014959C 3B FF 00 02 */ addi r31, r31, 2 +lbl_8014C640: +/* 8014C640 001495A0 80 A1 00 A8 */ lwz r5, 0xa8(r1) +/* 8014C644 001495A4 54 A0 08 3C */ slwi r0, r5, 1 +/* 8014C648 001495A8 7C 1D 02 14 */ add r0, r29, r0 +/* 8014C64C 001495AC 7C 1F 00 40 */ cmplw r31, r0 +/* 8014C650 001495B0 40 82 FF 7C */ bne lbl_8014C5CC +/* 8014C654 001495B4 2C 05 00 00 */ cmpwi r5, 0 +/* 8014C658 001495B8 38 60 00 00 */ li r3, 0 +/* 8014C65C 001495BC 40 81 00 40 */ ble lbl_8014C69C +/* 8014C660 001495C0 2C 05 00 08 */ cmpwi r5, 8 +/* 8014C664 001495C4 38 85 FF F8 */ addi r4, r5, -8 +/* 8014C668 001495C8 40 81 00 20 */ ble lbl_8014C688 +/* 8014C66C 001495CC 38 04 00 07 */ addi r0, r4, 7 +/* 8014C670 001495D0 54 00 E8 FE */ srwi r0, r0, 3 +/* 8014C674 001495D4 7C 09 03 A6 */ mtctr r0 +/* 8014C678 001495D8 2C 04 00 00 */ cmpwi r4, 0 +/* 8014C67C 001495DC 40 81 00 0C */ ble lbl_8014C688 +lbl_8014C680: +/* 8014C680 001495E0 38 63 00 08 */ addi r3, r3, 8 +/* 8014C684 001495E4 42 00 FF FC */ bdnz lbl_8014C680 +lbl_8014C688: +/* 8014C688 001495E8 7C 03 28 50 */ subf r0, r3, r5 +/* 8014C68C 001495EC 7C 09 03 A6 */ mtctr r0 +/* 8014C690 001495F0 7C 03 28 00 */ cmpw r3, r5 +/* 8014C694 001495F4 40 80 00 08 */ bge lbl_8014C69C +lbl_8014C698: +/* 8014C698 001495F8 42 00 00 00 */ bdnz lbl_8014C698 +lbl_8014C69C: +/* 8014C69C 001495FC 38 00 00 00 */ li r0, 0 +/* 8014C6A0 00149600 90 01 00 A8 */ stw r0, 0xa8(r1) +lbl_8014C6A4: +/* 8014C6A4 00149604 E3 E1 08 F8 */ psq_l f31, -1800(r1), 0, qr0 +/* 8014C6A8 00149608 CB E1 08 F0 */ lfd f31, 0x8f0(r1) +/* 8014C6AC 0014960C E3 C1 08 E8 */ psq_l f30, -1816(r1), 0, qr0 +/* 8014C6B0 00149610 CB C1 08 E0 */ lfd f30, 0x8e0(r1) +/* 8014C6B4 00149614 E3 A1 08 D8 */ psq_l f29, -1832(r1), 0, qr0 +/* 8014C6B8 00149618 CB A1 08 D0 */ lfd f29, 0x8d0(r1) +/* 8014C6BC 0014961C E3 81 08 C8 */ psq_l f28, -1848(r1), 0, qr0 +/* 8014C6C0 00149620 CB 81 08 C0 */ lfd f28, 0x8c0(r1) +/* 8014C6C4 00149624 83 E1 08 BC */ lwz r31, 0x8bc(r1) +/* 8014C6C8 00149628 83 C1 08 B8 */ lwz r30, 0x8b8(r1) +/* 8014C6CC 0014962C 83 A1 08 B4 */ lwz r29, 0x8b4(r1) +/* 8014C6D0 00149630 80 01 09 04 */ lwz r0, 0x904(r1) +/* 8014C6D4 00149634 83 81 08 B0 */ lwz r28, 0x8b0(r1) +/* 8014C6D8 00149638 7C 08 03 A6 */ mtlr r0 +/* 8014C6DC 0014963C 38 21 09 00 */ addi r1, r1, 0x900 +/* 8014C6E0 00149640 4E 80 00 20 */ blr + +.global GetDamageVulnerability__16CPuddleToadGammaCFRC9CVector3fRC9CVector3fRC11CDamageInfo +GetDamageVulnerability__16CPuddleToadGammaCFRC9CVector3fRC9CVector3fRC11CDamageInfo: +/* 8014C6E4 00149644 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8014C6E8 00149648 7C 08 02 A6 */ mflr r0 +/* 8014C6EC 0014964C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8014C6F0 00149650 88 03 05 E8 */ lbz r0, 0x5e8(r3) +/* 8014C6F4 00149654 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8014C6F8 00149658 41 82 00 5C */ beq lbl_8014C754 +/* 8014C6FC 0014965C C0 43 05 DC */ lfs f2, 0x5dc(r3) +/* 8014C700 00149660 C0 04 00 04 */ lfs f0, 4(r4) +/* 8014C704 00149664 C0 23 05 D8 */ lfs f1, 0x5d8(r3) +/* 8014C708 00149668 EC A2 00 28 */ fsubs f5, f2, f0 +/* 8014C70C 0014966C C0 04 00 00 */ lfs f0, 0(r4) +/* 8014C710 00149670 C0 43 05 E0 */ lfs f2, 0x5e0(r3) +/* 8014C714 00149674 EC 61 00 28 */ fsubs f3, f1, f0 +/* 8014C718 00149678 C0 04 00 08 */ lfs f0, 8(r4) +/* 8014C71C 0014967C EC 25 01 72 */ fmuls f1, f5, f5 +/* 8014C720 00149680 EC 82 00 28 */ fsubs f4, f2, f0 +/* 8014C724 00149684 C0 02 9D 08 */ lfs f0, lbl_805ABA28@sda21(r2) +/* 8014C728 00149688 EC 43 00 F2 */ fmuls f2, f3, f3 +/* 8014C72C 0014968C D0 61 00 08 */ stfs f3, 8(r1) +/* 8014C730 00149690 EC 64 01 32 */ fmuls f3, f4, f4 +/* 8014C734 00149694 EC 22 08 2A */ fadds f1, f2, f1 +/* 8014C738 00149698 D0 A1 00 0C */ stfs f5, 0xc(r1) +/* 8014C73C 0014969C D0 81 00 10 */ stfs f4, 0x10(r1) +/* 8014C740 001496A0 EC 23 08 2A */ fadds f1, f3, f1 +/* 8014C744 001496A4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8014C748 001496A8 40 80 00 0C */ bge lbl_8014C754 +/* 8014C74C 001496AC 4B F5 66 25 */ bl GetDamageVulnerability__3CAiCFv +/* 8014C750 001496B0 48 00 00 0C */ b lbl_8014C75C +lbl_8014C754: +/* 8014C754 001496B4 3C 60 80 57 */ lis r3, lbl_8056D718@ha +/* 8014C758 001496B8 38 63 D7 18 */ addi r3, r3, lbl_8056D718@l +lbl_8014C75C: +/* 8014C75C 001496BC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8014C760 001496C0 7C 08 03 A6 */ mtlr r0 +/* 8014C764 001496C4 38 21 00 20 */ addi r1, r1, 0x20 +/* 8014C768 001496C8 4E 80 00 20 */ blr + +.global GetDamageVulnerability__16CPuddleToadGammaCFv +GetDamageVulnerability__16CPuddleToadGammaCFv: +/* 8014C76C 001496CC 3C 60 80 57 */ lis r3, lbl_8056D718@ha +/* 8014C770 001496D0 38 63 D7 18 */ addi r3, r3, lbl_8056D718@l +/* 8014C774 001496D4 4E 80 00 20 */ blr + +.global sub_8014c778 +sub_8014c778: +/* 8014C778 001496D8 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8014C77C 001496DC 7C 08 02 A6 */ mflr r0 +/* 8014C780 001496E0 90 01 00 44 */ stw r0, 0x44(r1) +/* 8014C784 001496E4 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 8014C788 001496E8 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 8014C78C 001496EC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8014C790 001496F0 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8014C794 001496F4 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8014C798 001496F8 7C 9E 23 78 */ mr r30, r4 +/* 8014C79C 001496FC 7C 7D 1B 78 */ mr r29, r3 +/* 8014C7A0 00149700 83 E4 08 4C */ lwz r31, 0x84c(r4) +/* 8014C7A4 00149704 FF E0 08 90 */ fmr f31, f1 +/* 8014C7A8 00149708 C0 03 05 D0 */ lfs f0, 0x5d0(r3) +/* 8014C7AC 0014970C C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 8014C7B0 00149710 C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 8014C7B4 00149714 C0 43 05 D4 */ lfs f2, 0x5d4(r3) +/* 8014C7B8 00149718 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8014C7BC 0014971C C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 8014C7C0 00149720 C0 03 05 CC */ lfs f0, 0x5cc(r3) +/* 8014C7C4 00149724 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8014C7C8 00149728 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8014C7CC 0014972C D0 81 00 18 */ stfs f4, 0x18(r1) +/* 8014C7D0 00149730 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 8014C7D4 00149734 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8014C7D8 00149738 80 1F 02 F8 */ lwz r0, 0x2f8(r31) +/* 8014C7DC 0014973C 2C 00 00 01 */ cmpwi r0, 1 +/* 8014C7E0 00149740 40 82 00 A0 */ bne lbl_8014C880 +/* 8014C7E4 00149744 38 61 00 14 */ addi r3, r1, 0x14 +/* 8014C7E8 00149748 48 1C 80 D1 */ bl Magnitude__9CVector3fCFv +/* 8014C7EC 0014974C C0 02 9D 0C */ lfs f0, lbl_805ABA2C@sda21(r2) +/* 8014C7F0 00149750 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8014C7F4 00149754 40 80 00 24 */ bge lbl_8014C818 +/* 8014C7F8 00149758 7F E3 FB 78 */ mr r3, r31 +/* 8014C7FC 0014975C 4B FC EB 7D */ bl Stop__13CPhysicsActorFv +/* 8014C800 00149760 FC 20 F8 90 */ fmr f1, f31 +/* 8014C804 00149764 7F A3 EB 78 */ mr r3, r29 +/* 8014C808 00149768 7F C4 F3 78 */ mr r4, r30 +/* 8014C80C 0014976C 38 BD 05 CC */ addi r5, r29, 0x5cc +/* 8014C810 00149770 4B FF FA 0D */ bl CenterPlayer__16CPuddleToadGammaFR13CStateManagerRC9CVector3f +/* 8014C814 00149774 48 00 00 6C */ b lbl_8014C880 +lbl_8014C818: +/* 8014C818 00149778 EC 01 00 72 */ fmuls f0, f1, f1 +/* 8014C81C 0014977C C0 7D 05 B0 */ lfs f3, 0x5b0(r29) +/* 8014C820 00149780 C0 41 00 18 */ lfs f2, 0x18(r1) +/* 8014C824 00149784 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 8014C828 00149788 EC 63 00 24 */ fdivs f3, f3, f0 +/* 8014C82C 0014978C C0 01 00 14 */ lfs f0, 0x14(r1) +/* 8014C830 00149790 C0 9D 05 A8 */ lfs f4, 0x5a8(r29) +/* 8014C834 00149794 C0 BF 00 E8 */ lfs f5, 0xe8(r31) +/* 8014C838 00149798 FC 40 10 50 */ fneg f2, f2 +/* 8014C83C 0014979C FC 20 08 50 */ fneg f1, f1 +/* 8014C840 001497A0 FC 00 00 50 */ fneg f0, f0 +/* 8014C844 001497A4 EC 64 00 F2 */ fmuls f3, f4, f3 +/* 8014C848 001497A8 EC 45 00 B2 */ fmuls f2, f5, f2 +/* 8014C84C 001497AC EC 25 00 72 */ fmuls f1, f5, f1 +/* 8014C850 001497B0 EC 05 00 32 */ fmuls f0, f5, f0 +/* 8014C854 001497B4 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 8014C858 001497B8 EC 23 00 72 */ fmuls f1, f3, f1 +/* 8014C85C 001497BC EC 03 00 32 */ fmuls f0, f3, f0 +/* 8014C860 001497C0 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 8014C864 001497C4 D0 01 00 08 */ stfs f0, 8(r1) +/* 8014C868 001497C8 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 8014C86C 001497CC 4B EC EC C9 */ bl Identity__10CAxisAngleFv +/* 8014C870 001497D0 7C 65 1B 78 */ mr r5, r3 +/* 8014C874 001497D4 7F E3 FB 78 */ mr r3, r31 +/* 8014C878 001497D8 38 81 00 08 */ addi r4, r1, 8 +/* 8014C87C 001497DC 4B FC FA 49 */ bl ApplyForceWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +lbl_8014C880: +/* 8014C880 001497E0 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 8014C884 001497E4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8014C888 001497E8 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 8014C88C 001497EC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8014C890 001497F0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8014C894 001497F4 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8014C898 001497F8 7C 08 03 A6 */ mtlr r0 +/* 8014C89C 001497FC 38 21 00 40 */ addi r1, r1, 0x40 +/* 8014C8A0 00149800 4E 80 00 20 */ blr + +.global sub_8014c8a4 +sub_8014c8a4: +/* 8014C8A4 00149804 94 21 FE 60 */ stwu r1, -0x1a0(r1) +/* 8014C8A8 00149808 7C 08 02 A6 */ mflr r0 +/* 8014C8AC 0014980C 90 01 01 A4 */ stw r0, 0x1a4(r1) +/* 8014C8B0 00149810 DB E1 01 90 */ stfd f31, 0x190(r1) +/* 8014C8B4 00149814 F3 E1 01 98 */ psq_st f31, 408(r1), 0, qr0 +/* 8014C8B8 00149818 DB C1 01 80 */ stfd f30, 0x180(r1) +/* 8014C8BC 0014981C F3 C1 01 88 */ psq_st f30, 392(r1), 0, qr0 +/* 8014C8C0 00149820 DB A1 01 70 */ stfd f29, 0x170(r1) +/* 8014C8C4 00149824 F3 A1 01 78 */ psq_st f29, 376(r1), 0, qr0 +/* 8014C8C8 00149828 DB 81 01 60 */ stfd f28, 0x160(r1) +/* 8014C8CC 0014982C F3 81 01 68 */ psq_st f28, 360(r1), 0, qr0 +/* 8014C8D0 00149830 DB 61 01 50 */ stfd f27, 0x150(r1) +/* 8014C8D4 00149834 F3 61 01 58 */ psq_st f27, 344(r1), 0, qr0 +/* 8014C8D8 00149838 DB 41 01 40 */ stfd f26, 0x140(r1) +/* 8014C8DC 0014983C F3 41 01 48 */ psq_st f26, 328(r1), 0, qr0 +/* 8014C8E0 00149840 BF 61 01 2C */ stmw r27, 0x12c(r1) +/* 8014C8E4 00149844 7C 9F 23 78 */ mr r31, r4 +/* 8014C8E8 00149848 7C 7E 1B 78 */ mr r30, r3 +/* 8014C8EC 0014984C 83 A4 08 4C */ lwz r29, 0x84c(r4) +/* 8014C8F0 00149850 38 61 00 50 */ addi r3, r1, 0x50 +/* 8014C8F4 00149854 80 8D 8B FC */ lwz r4, lbl_805A77BC@sda21(r13) +/* 8014C8F8 00149858 4B EB 83 C1 */ bl string_l__4rstlFPCc +/* 8014C8FC 0014985C 7F C4 F3 78 */ mr r4, r30 +/* 8014C900 00149860 38 61 00 C0 */ addi r3, r1, 0xc0 +/* 8014C904 00149864 38 A1 00 50 */ addi r5, r1, 0x50 +/* 8014C908 00149868 4B F2 C0 71 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8014C90C 0014986C 38 61 00 F0 */ addi r3, r1, 0xf0 +/* 8014C910 00149870 38 81 00 C0 */ addi r4, r1, 0xc0 +/* 8014C914 00149874 48 1C 62 61 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8014C918 00149878 38 61 00 50 */ addi r3, r1, 0x50 +/* 8014C91C 0014987C 48 1F 11 C5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8014C920 00149880 80 7D 07 68 */ lwz r3, 0x768(r29) +/* 8014C924 00149884 4B FA C4 E1 */ bl GetBallRadius__10CMorphBallCFv +/* 8014C928 00149888 C0 1D 00 60 */ lfs f0, 0x60(r29) +/* 8014C92C 0014988C 38 61 00 44 */ addi r3, r1, 0x44 +/* 8014C930 00149890 C0 7D 00 40 */ lfs f3, 0x40(r29) +/* 8014C934 00149894 38 9E 00 34 */ addi r4, r30, 0x34 +/* 8014C938 00149898 C0 42 9C F0 */ lfs f2, lbl_805ABA10@sda21(r2) +/* 8014C93C 0014989C EF E0 08 2A */ fadds f31, f0, f1 +/* 8014C940 001498A0 C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 8014C944 001498A4 38 A1 00 38 */ addi r5, r1, 0x38 +/* 8014C948 001498A8 C0 02 9C FC */ lfs f0, lbl_805ABA1C@sda21(r2) +/* 8014C94C 001498AC EF 43 10 2A */ fadds f26, f3, f2 +/* 8014C950 001498B0 EF 61 10 2A */ fadds f27, f1, f2 +/* 8014C954 001498B4 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 8014C958 001498B8 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 8014C95C 001498BC D0 41 00 40 */ stfs f2, 0x40(r1) +/* 8014C960 001498C0 48 1C 61 21 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 8014C964 001498C4 C3 81 00 44 */ lfs f28, 0x44(r1) +/* 8014C968 001498C8 38 61 00 2C */ addi r3, r1, 0x2c +/* 8014C96C 001498CC C0 02 9C FC */ lfs f0, lbl_805ABA1C@sda21(r2) +/* 8014C970 001498D0 38 81 00 6C */ addi r4, r1, 0x6c +/* 8014C974 001498D4 C3 C1 00 48 */ lfs f30, 0x48(r1) +/* 8014C978 001498D8 C3 A1 00 4C */ lfs f29, 0x4c(r1) +/* 8014C97C 001498DC EC 60 07 32 */ fmuls f3, f0, f28 +/* 8014C980 001498E0 C1 01 00 FC */ lfs f8, 0xfc(r1) +/* 8014C984 001498E4 EC 40 07 B2 */ fmuls f2, f0, f30 +/* 8014C988 001498E8 C0 E1 01 0C */ lfs f7, 0x10c(r1) +/* 8014C98C 001498EC EC 20 07 72 */ fmuls f1, f0, f29 +/* 8014C990 001498F0 C0 C1 01 1C */ lfs f6, 0x11c(r1) +/* 8014C994 001498F4 C0 02 9D 08 */ lfs f0, lbl_805ABA28@sda21(r2) +/* 8014C998 001498F8 EC 68 18 28 */ fsubs f3, f8, f3 +/* 8014C99C 001498FC EC 47 10 28 */ fsubs f2, f7, f2 +/* 8014C9A0 00149900 EC 26 08 28 */ fsubs f1, f6, f1 +/* 8014C9A4 00149904 EC BA 18 28 */ fsubs f5, f26, f3 +/* 8014C9A8 00149908 EC 9B 10 28 */ fsubs f4, f27, f2 +/* 8014C9AC 0014990C EC 7F 08 28 */ fsubs f3, f31, f1 +/* 8014C9B0 00149910 EC 40 07 B2 */ fmuls f2, f0, f30 +/* 8014C9B4 00149914 D0 A1 00 6C */ stfs f5, 0x6c(r1) +/* 8014C9B8 00149918 EC 20 07 72 */ fmuls f1, f0, f29 +/* 8014C9BC 0014991C EC 00 07 32 */ fmuls f0, f0, f28 +/* 8014C9C0 00149920 D0 81 00 70 */ stfs f4, 0x70(r1) +/* 8014C9C4 00149924 EC 87 10 28 */ fsubs f4, f7, f2 +/* 8014C9C8 00149928 D0 61 00 74 */ stfs f3, 0x74(r1) +/* 8014C9CC 0014992C EC 46 08 28 */ fsubs f2, f6, f1 +/* 8014C9D0 00149930 EC 08 00 28 */ fsubs f0, f8, f0 +/* 8014C9D4 00149934 C0 BD 00 50 */ lfs f5, 0x50(r29) +/* 8014C9D8 00149938 C0 7D 00 60 */ lfs f3, 0x60(r29) +/* 8014C9DC 0014993C C0 3D 00 40 */ lfs f1, 0x40(r29) +/* 8014C9E0 00149940 EC 85 20 28 */ fsubs f4, f5, f4 +/* 8014C9E4 00149944 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8014C9E8 00149948 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8014C9EC 0014994C D0 81 00 64 */ stfs f4, 0x64(r1) +/* 8014C9F0 00149950 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 8014C9F4 00149954 D0 41 00 68 */ stfs f2, 0x68(r1) +/* 8014C9F8 00149958 48 1C 7E 59 */ bl AsNormalized__9CVector3fCFv +/* 8014C9FC 0014995C C0 01 00 30 */ lfs f0, 0x30(r1) +/* 8014CA00 00149960 38 61 00 20 */ addi r3, r1, 0x20 +/* 8014CA04 00149964 C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 8014CA08 00149968 38 81 00 60 */ addi r4, r1, 0x60 +/* 8014CA0C 0014996C EC 00 07 B2 */ fmuls f0, f0, f30 +/* 8014CA10 00149970 C0 41 00 34 */ lfs f2, 0x34(r1) +/* 8014CA14 00149974 EC 01 07 3A */ fmadds f0, f1, f28, f0 +/* 8014CA18 00149978 EF E2 07 7A */ fmadds f31, f2, f29, f0 +/* 8014CA1C 0014997C 48 1C 7E 35 */ bl AsNormalized__9CVector3fCFv +/* 8014CA20 00149980 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 8014CA24 00149984 38 61 00 6C */ addi r3, r1, 0x6c +/* 8014CA28 00149988 C0 21 00 20 */ lfs f1, 0x20(r1) +/* 8014CA2C 0014998C EC 00 07 B2 */ fmuls f0, f0, f30 +/* 8014CA30 00149990 C0 41 00 28 */ lfs f2, 0x28(r1) +/* 8014CA34 00149994 EC 01 07 3A */ fmadds f0, f1, f28, f0 +/* 8014CA38 00149998 EF 42 07 7A */ fmadds f26, f2, f29, f0 +/* 8014CA3C 0014999C 48 1C 7E 7D */ bl Magnitude__9CVector3fCFv +/* 8014CA40 001499A0 88 0D A3 E0 */ lbz r0, lbl_805A8FA0@sda21(r13) +/* 8014CA44 001499A4 FF 80 08 90 */ fmr f28, f1 +/* 8014CA48 001499A8 7C 00 07 75 */ extsb. r0, r0 +/* 8014CA4C 001499AC 40 82 00 88 */ bne lbl_8014CAD4 +/* 8014CA50 001499B0 80 AD 8C 08 */ lwz r5, lbl_805A77C8@sda21(r13) +/* 8014CA54 001499B4 38 60 00 00 */ li r3, 0 +/* 8014CA58 001499B8 38 80 00 01 */ li r4, 1 +/* 8014CA5C 001499BC 48 23 D4 99 */ bl __shl2i +/* 8014CA60 001499C0 80 AD 8C 0C */ lwz r5, lbl_805A77CC@sda21(r13) +/* 8014CA64 001499C4 7C 9B 23 78 */ mr r27, r4 +/* 8014CA68 001499C8 7C 7C 1B 78 */ mr r28, r3 +/* 8014CA6C 001499CC 38 60 00 00 */ li r3, 0 +/* 8014CA70 001499D0 38 80 00 01 */ li r4, 1 +/* 8014CA74 001499D4 48 23 D4 81 */ bl __shl2i +/* 8014CA78 001499D8 80 AD 8C 10 */ lwz r5, lbl_805A77D0@sda21(r13) +/* 8014CA7C 001499DC 7F 7B 23 78 */ or r27, r27, r4 +/* 8014CA80 001499E0 7F 9C 1B 78 */ or r28, r28, r3 +/* 8014CA84 001499E4 38 60 00 00 */ li r3, 0 +/* 8014CA88 001499E8 38 80 00 01 */ li r4, 1 +/* 8014CA8C 001499EC 48 23 D4 69 */ bl __shl2i +/* 8014CA90 001499F0 80 AD 8C 04 */ lwz r5, lbl_805A77C4@sda21(r13) +/* 8014CA94 001499F4 7F 7B 23 78 */ or r27, r27, r4 +/* 8014CA98 001499F8 7F 9C 1B 78 */ or r28, r28, r3 +/* 8014CA9C 001499FC 38 60 00 00 */ li r3, 0 +/* 8014CAA0 00149A00 38 80 00 01 */ li r4, 1 +/* 8014CAA4 00149A04 48 23 D4 51 */ bl __shl2i +/* 8014CAA8 00149A08 3C A0 80 47 */ lis r5, lbl_8046C758@ha +/* 8014CAAC 00149A0C 38 C0 00 03 */ li r6, 3 +/* 8014CAB0 00149A10 38 A5 C7 58 */ addi r5, r5, lbl_8046C758@l +/* 8014CAB4 00149A14 38 00 00 01 */ li r0, 1 +/* 8014CAB8 00149A18 90 C1 00 88 */ stw r6, 0x88(r1) +/* 8014CABC 00149A1C 90 85 00 04 */ stw r4, 4(r5) +/* 8014CAC0 00149A20 90 65 00 00 */ stw r3, 0(r5) +/* 8014CAC4 00149A24 93 65 00 0C */ stw r27, 0xc(r5) +/* 8014CAC8 00149A28 93 85 00 08 */ stw r28, 8(r5) +/* 8014CACC 00149A2C 90 C5 00 10 */ stw r6, 0x10(r5) +/* 8014CAD0 00149A30 98 0D A3 E0 */ stb r0, lbl_805A8FA0@sda21(r13) +lbl_8014CAD4: +/* 8014CAD4 00149A34 C0 02 9C F8 */ lfs f0, lbl_805ABA18@sda21(r2) +/* 8014CAD8 00149A38 FC 1C 00 40 */ fcmpo cr0, f28, f0 +/* 8014CADC 00149A3C 40 81 00 84 */ ble lbl_8014CB60 +/* 8014CAE0 00149A40 C0 02 9C FC */ lfs f0, lbl_805ABA1C@sda21(r2) +/* 8014CAE4 00149A44 C0 21 00 6C */ lfs f1, 0x6c(r1) +/* 8014CAE8 00149A48 EC C0 E0 24 */ fdivs f6, f0, f28 +/* 8014CAEC 00149A4C C0 01 00 70 */ lfs f0, 0x70(r1) +/* 8014CAF0 00149A50 C0 61 00 74 */ lfs f3, 0x74(r1) +/* 8014CAF4 00149A54 80 7D 07 68 */ lwz r3, 0x768(r29) +/* 8014CAF8 00149A58 C0 41 00 FC */ lfs f2, 0xfc(r1) +/* 8014CAFC 00149A5C D0 41 00 14 */ stfs f2, 0x14(r1) +/* 8014CB00 00149A60 EC A6 00 72 */ fmuls f5, f6, f1 +/* 8014CB04 00149A64 C0 21 01 0C */ lfs f1, 0x10c(r1) +/* 8014CB08 00149A68 EC 86 00 32 */ fmuls f4, f6, f0 +/* 8014CB0C 00149A6C C0 01 01 1C */ lfs f0, 0x11c(r1) +/* 8014CB10 00149A70 EC 66 00 F2 */ fmuls f3, f6, f3 +/* 8014CB14 00149A74 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8014CB18 00149A78 D0 A1 00 08 */ stfs f5, 8(r1) +/* 8014CB1C 00149A7C D0 81 00 0C */ stfs f4, 0xc(r1) +/* 8014CB20 00149A80 D0 61 00 10 */ stfs f3, 0x10(r1) +/* 8014CB24 00149A84 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8014CB28 00149A88 4B FA C2 DD */ bl GetBallRadius__10CMorphBallCFv +/* 8014CB2C 00149A8C EC 3C 08 28 */ fsubs f1, f28, f1 +/* 8014CB30 00149A90 3C 60 80 47 */ lis r3, lbl_8046C758@ha +/* 8014CB34 00149A94 38 E3 C7 58 */ addi r7, r3, lbl_8046C758@l +/* 8014CB38 00149A98 7F E4 FB 78 */ mr r4, r31 +/* 8014CB3C 00149A9C 38 61 00 90 */ addi r3, r1, 0x90 +/* 8014CB40 00149AA0 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8014CB44 00149AA4 38 C1 00 08 */ addi r6, r1, 8 +/* 8014CB48 00149AA8 4B F0 04 51 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 8014CB4C 00149AAC 88 01 00 B0 */ lbz r0, 0xb0(r1) +/* 8014CB50 00149AB0 28 00 00 00 */ cmplwi r0, 0 +/* 8014CB54 00149AB4 41 82 00 0C */ beq lbl_8014CB60 +/* 8014CB58 00149AB8 38 60 00 00 */ li r3, 0 +/* 8014CB5C 00149ABC 48 00 00 38 */ b lbl_8014CB94 +lbl_8014CB60: +/* 8014CB60 00149AC0 C0 1E 05 B0 */ lfs f0, 0x5b0(r30) +/* 8014CB64 00149AC4 FC 1C 00 40 */ fcmpo cr0, f28, f0 +/* 8014CB68 00149AC8 40 80 00 28 */ bge lbl_8014CB90 +/* 8014CB6C 00149ACC C0 02 9C F0 */ lfs f0, lbl_805ABA10@sda21(r2) +/* 8014CB70 00149AD0 38 60 00 00 */ li r3, 0 +/* 8014CB74 00149AD4 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 8014CB78 00149AD8 40 81 00 1C */ ble lbl_8014CB94 +/* 8014CB7C 00149ADC C0 1E 05 AC */ lfs f0, 0x5ac(r30) +/* 8014CB80 00149AE0 FC 1A 00 40 */ fcmpo cr0, f26, f0 +/* 8014CB84 00149AE4 40 81 00 10 */ ble lbl_8014CB94 +/* 8014CB88 00149AE8 38 60 00 01 */ li r3, 1 +/* 8014CB8C 00149AEC 48 00 00 08 */ b lbl_8014CB94 +lbl_8014CB90: +/* 8014CB90 00149AF0 38 60 00 00 */ li r3, 0 +lbl_8014CB94: +/* 8014CB94 00149AF4 E3 E1 01 98 */ psq_l f31, 408(r1), 0, qr0 +/* 8014CB98 00149AF8 CB E1 01 90 */ lfd f31, 0x190(r1) +/* 8014CB9C 00149AFC E3 C1 01 88 */ psq_l f30, 392(r1), 0, qr0 +/* 8014CBA0 00149B00 CB C1 01 80 */ lfd f30, 0x180(r1) +/* 8014CBA4 00149B04 E3 A1 01 78 */ psq_l f29, 376(r1), 0, qr0 +/* 8014CBA8 00149B08 CB A1 01 70 */ lfd f29, 0x170(r1) +/* 8014CBAC 00149B0C E3 81 01 68 */ psq_l f28, 360(r1), 0, qr0 +/* 8014CBB0 00149B10 CB 81 01 60 */ lfd f28, 0x160(r1) +/* 8014CBB4 00149B14 E3 61 01 58 */ psq_l f27, 344(r1), 0, qr0 +/* 8014CBB8 00149B18 CB 61 01 50 */ lfd f27, 0x150(r1) +/* 8014CBBC 00149B1C E3 41 01 48 */ psq_l f26, 328(r1), 0, qr0 +/* 8014CBC0 00149B20 CB 41 01 40 */ lfd f26, 0x140(r1) +/* 8014CBC4 00149B24 BB 61 01 2C */ lmw r27, 0x12c(r1) +/* 8014CBC8 00149B28 80 01 01 A4 */ lwz r0, 0x1a4(r1) +/* 8014CBCC 00149B2C 7C 08 03 A6 */ mtlr r0 +/* 8014CBD0 00149B30 38 21 01 A0 */ addi r1, r1, 0x1a0 +/* 8014CBD4 00149B34 4E 80 00 20 */ blr + +.global Think__16CPuddleToadGammaFfR13CStateManager +Think__16CPuddleToadGammaFfR13CStateManager: +/* 8014CBD8 00149B38 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8014CBDC 00149B3C 7C 08 02 A6 */ mflr r0 +/* 8014CBE0 00149B40 90 01 00 24 */ stw r0, 0x24(r1) +/* 8014CBE4 00149B44 DB E1 00 10 */ stfd f31, 0x10(r1) +/* 8014CBE8 00149B48 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 +/* 8014CBEC 00149B4C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8014CBF0 00149B50 7C 7F 1B 78 */ mr r31, r3 +/* 8014CBF4 00149B54 FF E0 08 90 */ fmr f31, f1 +/* 8014CBF8 00149B58 4B F2 CF 21 */ bl Think__10CPatternedFfR13CStateManager +/* 8014CBFC 00149B5C 88 1F 05 E8 */ lbz r0, 0x5e8(r31) +/* 8014CC00 00149B60 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8014CC04 00149B64 41 82 00 10 */ beq lbl_8014CC14 +/* 8014CC08 00149B68 C0 1F 05 6C */ lfs f0, 0x56c(r31) +/* 8014CC0C 00149B6C EC 00 F8 2A */ fadds f0, f0, f31 +/* 8014CC10 00149B70 D0 1F 05 6C */ stfs f0, 0x56c(r31) +lbl_8014CC14: +/* 8014CC14 00149B74 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 +/* 8014CC18 00149B78 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8014CC1C 00149B7C CB E1 00 10 */ lfd f31, 0x10(r1) +/* 8014CC20 00149B80 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8014CC24 00149B84 7C 08 03 A6 */ mtlr r0 +/* 8014CC28 00149B88 38 21 00 20 */ addi r1, r1, 0x20 +/* 8014CC2C 00149B8C 4E 80 00 20 */ blr + +.global "__ct__16CPuddleToadGammaF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersfff9CVector3ffffRC11CDamageInfoRC11CDamageInfo" +"__ct__16CPuddleToadGammaF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersfff9CVector3ffffRC11CDamageInfoRC11CDamageInfo": +/* 8014CC30 00149B90 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 8014CC34 00149B94 7C 08 02 A6 */ mflr r0 +/* 8014CC38 00149B98 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 8014CC3C 00149B9C DB E1 00 C0 */ stfd f31, 0xc0(r1) +/* 8014CC40 00149BA0 F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 +/* 8014CC44 00149BA4 DB C1 00 B0 */ stfd f30, 0xb0(r1) +/* 8014CC48 00149BA8 F3 C1 00 B8 */ psq_st f30, 184(r1), 0, qr0 +/* 8014CC4C 00149BAC DB A1 00 A0 */ stfd f29, 0xa0(r1) +/* 8014CC50 00149BB0 F3 A1 00 A8 */ psq_st f29, 168(r1), 0, qr0 +/* 8014CC54 00149BB4 DB 81 00 90 */ stfd f28, 0x90(r1) +/* 8014CC58 00149BB8 F3 81 00 98 */ psq_st f28, 152(r1), 0, qr0 +/* 8014CC5C 00149BBC DB 61 00 80 */ stfd f27, 0x80(r1) +/* 8014CC60 00149BC0 F3 61 00 88 */ psq_st f27, 136(r1), 0, qr0 +/* 8014CC64 00149BC4 DB 41 00 70 */ stfd f26, 0x70(r1) +/* 8014CC68 00149BC8 F3 41 00 78 */ psq_st f26, 120(r1), 0, qr0 +/* 8014CC6C 00149BCC BF 21 00 54 */ stmw r25, 0x54(r1) +/* 8014CC70 00149BD0 A0 04 00 00 */ lhz r0, 0(r4) +/* 8014CC74 00149BD4 7C D9 33 78 */ mr r25, r6 +/* 8014CC78 00149BD8 7C FA 3B 78 */ mr r26, r7 +/* 8014CC7C 00149BDC 7D 0C 43 78 */ mr r12, r8 +/* 8014CC80 00149BE0 B0 01 00 20 */ sth r0, 0x20(r1) +/* 8014CC84 00149BE4 7D 2B 4B 78 */ mr r11, r9 +/* 8014CC88 00149BE8 38 C0 00 01 */ li r6, 1 +/* 8014CC8C 00149BEC 38 80 00 00 */ li r4, 0 +/* 8014CC90 00149BF0 91 41 00 08 */ stw r10, 8(r1) +/* 8014CC94 00149BF4 38 00 00 02 */ li r0, 2 +/* 8014CC98 00149BF8 80 E1 00 D8 */ lwz r7, 0xd8(r1) +/* 8014CC9C 00149BFC FF 40 08 90 */ fmr f26, f1 +/* 8014CCA0 00149C00 90 C1 00 0C */ stw r6, 0xc(r1) +/* 8014CCA4 00149C04 7C A6 2B 78 */ mr r6, r5 +/* 8014CCA8 00149C08 FF 60 10 90 */ fmr f27, f2 +/* 8014CCAC 00149C0C 83 C1 00 DC */ lwz r30, 0xdc(r1) +/* 8014CCB0 00149C10 90 81 00 10 */ stw r4, 0x10(r1) +/* 8014CCB4 00149C14 FF 80 18 90 */ fmr f28, f3 +/* 8014CCB8 00149C18 83 61 00 E0 */ lwz r27, 0xe0(r1) +/* 8014CCBC 00149C1C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014CCC0 00149C20 FF A0 20 90 */ fmr f29, f4 +/* 8014CCC4 00149C24 83 81 00 E4 */ lwz r28, 0xe4(r1) +/* 8014CCC8 00149C28 90 E1 00 18 */ stw r7, 0x18(r1) +/* 8014CCCC 00149C2C FF C0 28 90 */ fmr f30, f5 +/* 8014CCD0 00149C30 83 E1 00 E8 */ lwz r31, 0xe8(r1) +/* 8014CCD4 00149C34 FF E0 30 90 */ fmr f31, f6 +/* 8014CCD8 00149C38 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8014CCDC 00149C3C 7C 7D 1B 78 */ mr r29, r3 +/* 8014CCE0 00149C40 7F 27 CB 78 */ mr r7, r25 +/* 8014CCE4 00149C44 7F 48 D3 78 */ mr r8, r26 +/* 8014CCE8 00149C48 7D 89 63 78 */ mr r9, r12 +/* 8014CCEC 00149C4C 7D 6A 5B 78 */ mr r10, r11 +/* 8014CCF0 00149C50 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8014CCF4 00149C54 38 80 00 1C */ li r4, 0x1c +/* 8014CCF8 00149C58 4B F3 07 59 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" +/* 8014CCFC 00149C5C 3C 60 80 3E */ lis r3, lbl_803E24E0@ha +/* 8014CD00 00149C60 C0 02 9D 14 */ lfs f0, lbl_805ABA34@sda21(r2) +/* 8014CD04 00149C64 38 63 24 E0 */ addi r3, r3, lbl_803E24E0@l +/* 8014CD08 00149C68 38 00 00 00 */ li r0, 0 +/* 8014CD0C 00149C6C 90 7D 00 00 */ stw r3, 0(r29) +/* 8014CD10 00149C70 EC 1B 00 32 */ fmuls f0, f27, f0 +/* 8014CD14 00149C74 C0 22 9D 10 */ lfs f1, lbl_805ABA30@sda21(r2) +/* 8014CD18 00149C78 90 1D 05 68 */ stw r0, 0x568(r29) +/* 8014CD1C 00149C7C C0 42 9C F0 */ lfs f2, lbl_805ABA10@sda21(r2) +/* 8014CD20 00149C80 EC 21 00 32 */ fmuls f1, f1, f0 +/* 8014CD24 00149C84 D0 5D 05 6C */ stfs f2, 0x56c(r29) +/* 8014CD28 00149C88 80 1B 00 00 */ lwz r0, 0(r27) +/* 8014CD2C 00149C8C 90 1D 05 70 */ stw r0, 0x570(r29) +/* 8014CD30 00149C90 88 1B 00 04 */ lbz r0, 4(r27) +/* 8014CD34 00149C94 98 1D 05 74 */ stb r0, 0x574(r29) +/* 8014CD38 00149C98 C0 1B 00 08 */ lfs f0, 8(r27) +/* 8014CD3C 00149C9C D0 1D 05 78 */ stfs f0, 0x578(r29) +/* 8014CD40 00149CA0 C0 1B 00 0C */ lfs f0, 0xc(r27) +/* 8014CD44 00149CA4 D0 1D 05 7C */ stfs f0, 0x57c(r29) +/* 8014CD48 00149CA8 C0 1B 00 10 */ lfs f0, 0x10(r27) +/* 8014CD4C 00149CAC D0 1D 05 80 */ stfs f0, 0x580(r29) +/* 8014CD50 00149CB0 C0 1B 00 14 */ lfs f0, 0x14(r27) +/* 8014CD54 00149CB4 D0 1D 05 84 */ stfs f0, 0x584(r29) +/* 8014CD58 00149CB8 88 1B 00 18 */ lbz r0, 0x18(r27) +/* 8014CD5C 00149CBC 98 1D 05 88 */ stb r0, 0x588(r29) +/* 8014CD60 00149CC0 80 1C 00 00 */ lwz r0, 0(r28) +/* 8014CD64 00149CC4 90 1D 05 8C */ stw r0, 0x58c(r29) +/* 8014CD68 00149CC8 88 1C 00 04 */ lbz r0, 4(r28) +/* 8014CD6C 00149CCC 98 1D 05 90 */ stb r0, 0x590(r29) +/* 8014CD70 00149CD0 C0 1C 00 08 */ lfs f0, 8(r28) +/* 8014CD74 00149CD4 D0 1D 05 94 */ stfs f0, 0x594(r29) +/* 8014CD78 00149CD8 C0 1C 00 0C */ lfs f0, 0xc(r28) +/* 8014CD7C 00149CDC D0 1D 05 98 */ stfs f0, 0x598(r29) +/* 8014CD80 00149CE0 C0 1C 00 10 */ lfs f0, 0x10(r28) +/* 8014CD84 00149CE4 D0 1D 05 9C */ stfs f0, 0x59c(r29) +/* 8014CD88 00149CE8 C0 1C 00 14 */ lfs f0, 0x14(r28) +/* 8014CD8C 00149CEC D0 1D 05 A0 */ stfs f0, 0x5a0(r29) +/* 8014CD90 00149CF0 88 1C 00 18 */ lbz r0, 0x18(r28) +/* 8014CD94 00149CF4 98 1D 05 A4 */ stb r0, 0x5a4(r29) +/* 8014CD98 00149CF8 D3 5D 05 A8 */ stfs f26, 0x5a8(r29) +/* 8014CD9C 00149CFC 48 24 76 55 */ bl cos +/* 8014CDA0 00149D00 FC 00 08 18 */ frsp f0, f1 +/* 8014CDA4 00149D04 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8014CDA8 00149D08 3C 1F 00 01 */ addis r0, r31, 1 +/* 8014CDAC 00149D0C 38 80 00 00 */ li r4, 0 +/* 8014CDB0 00149D10 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 8014CDB4 00149D14 38 60 00 01 */ li r3, 1 +/* 8014CDB8 00149D18 D0 1D 05 AC */ stfs f0, 0x5ac(r29) +/* 8014CDBC 00149D1C 28 00 FF FF */ cmplwi r0, 0xffff +/* 8014CDC0 00149D20 D3 9D 05 B0 */ stfs f28, 0x5b0(r29) +/* 8014CDC4 00149D24 C0 1E 00 00 */ lfs f0, 0(r30) +/* 8014CDC8 00149D28 D0 1D 05 B4 */ stfs f0, 0x5b4(r29) +/* 8014CDCC 00149D2C C0 1E 00 04 */ lfs f0, 4(r30) +/* 8014CDD0 00149D30 D0 1D 05 B8 */ stfs f0, 0x5b8(r29) +/* 8014CDD4 00149D34 C0 1E 00 08 */ lfs f0, 8(r30) +/* 8014CDD8 00149D38 D0 1D 05 BC */ stfs f0, 0x5bc(r29) +/* 8014CDDC 00149D3C D3 BD 05 C0 */ stfs f29, 0x5c0(r29) +/* 8014CDE0 00149D40 D3 DD 05 C4 */ stfs f30, 0x5c4(r29) +/* 8014CDE4 00149D44 D3 FD 05 C8 */ stfs f31, 0x5c8(r29) +/* 8014CDE8 00149D48 C0 05 00 00 */ lfs f0, 0(r5) +/* 8014CDEC 00149D4C D0 1D 05 CC */ stfs f0, 0x5cc(r29) +/* 8014CDF0 00149D50 C0 05 00 04 */ lfs f0, 4(r5) +/* 8014CDF4 00149D54 D0 1D 05 D0 */ stfs f0, 0x5d0(r29) +/* 8014CDF8 00149D58 C0 05 00 08 */ lfs f0, 8(r5) +/* 8014CDFC 00149D5C D0 1D 05 D4 */ stfs f0, 0x5d4(r29) +/* 8014CE00 00149D60 C0 05 00 00 */ lfs f0, 0(r5) +/* 8014CE04 00149D64 D0 1D 05 D8 */ stfs f0, 0x5d8(r29) +/* 8014CE08 00149D68 C0 05 00 04 */ lfs f0, 4(r5) +/* 8014CE0C 00149D6C D0 1D 05 DC */ stfs f0, 0x5dc(r29) +/* 8014CE10 00149D70 C0 05 00 08 */ lfs f0, 8(r5) +/* 8014CE14 00149D74 D0 1D 05 E0 */ stfs f0, 0x5e0(r29) +/* 8014CE18 00149D78 90 9D 05 E4 */ stw r4, 0x5e4(r29) +/* 8014CE1C 00149D7C 88 1D 05 E8 */ lbz r0, 0x5e8(r29) +/* 8014CE20 00149D80 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 8014CE24 00149D84 98 1D 05 E8 */ stb r0, 0x5e8(r29) +/* 8014CE28 00149D88 88 1D 05 E8 */ lbz r0, 0x5e8(r29) +/* 8014CE2C 00149D8C 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 8014CE30 00149D90 98 1D 05 E8 */ stb r0, 0x5e8(r29) +/* 8014CE34 00149D94 88 1D 05 E8 */ lbz r0, 0x5e8(r29) +/* 8014CE38 00149D98 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 8014CE3C 00149D9C 98 1D 05 E8 */ stb r0, 0x5e8(r29) +/* 8014CE40 00149DA0 88 1D 04 01 */ lbz r0, 0x401(r29) +/* 8014CE44 00149DA4 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 8014CE48 00149DA8 98 1D 04 01 */ stb r0, 0x401(r29) +/* 8014CE4C 00149DAC 88 1D 04 E1 */ lbz r0, 0x4e1(r29) +/* 8014CE50 00149DB0 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 8014CE54 00149DB4 98 1D 04 E1 */ stb r0, 0x4e1(r29) +/* 8014CE58 00149DB8 88 1D 04 E1 */ lbz r0, 0x4e1(r29) +/* 8014CE5C 00149DBC 50 80 0F BC */ rlwimi r0, r4, 1, 0x1e, 0x1e +/* 8014CE60 00149DC0 98 1D 04 E1 */ stb r0, 0x4e1(r29) +/* 8014CE64 00149DC4 88 1D 04 E1 */ lbz r0, 0x4e1(r29) +/* 8014CE68 00149DC8 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 8014CE6C 00149DCC 98 1D 04 E1 */ stb r0, 0x4e1(r29) +/* 8014CE70 00149DD0 88 1D 04 E1 */ lbz r0, 0x4e1(r29) +/* 8014CE74 00149DD4 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 8014CE78 00149DD8 98 1D 04 E1 */ stb r0, 0x4e1(r29) +/* 8014CE7C 00149DDC 88 1D 04 E1 */ lbz r0, 0x4e1(r29) +/* 8014CE80 00149DE0 50 80 07 FE */ rlwimi r0, r4, 0, 0x1f, 0x1f +/* 8014CE84 00149DE4 98 1D 04 E1 */ stb r0, 0x4e1(r29) +/* 8014CE88 00149DE8 88 1D 00 F8 */ lbz r0, 0xf8(r29) +/* 8014CE8C 00149DEC 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 8014CE90 00149DF0 98 1D 00 F8 */ stb r0, 0xf8(r29) +/* 8014CE94 00149DF4 41 82 01 00 */ beq lbl_8014CF94 +/* 8014CE98 00149DF8 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 8014CE9C 00149DFC 7F E4 FB 78 */ mr r4, r31 +/* 8014CEA0 00149E00 38 63 00 04 */ addi r3, r3, 4 +/* 8014CEA4 00149E04 48 1E EE 29 */ bl GetResourceTypeById__10CResLoaderCFUi +/* 8014CEA8 00149E08 28 03 00 00 */ cmplwi r3, 0 +/* 8014CEAC 00149E0C 41 82 00 E8 */ beq lbl_8014CF94 +/* 8014CEB0 00149E10 3C 60 44 43 */ lis r3, 0x44434C4E@ha +/* 8014CEB4 00149E14 93 E1 00 30 */ stw r31, 0x30(r1) +/* 8014CEB8 00149E18 38 03 4C 4E */ addi r0, r3, 0x44434C4E@l +/* 8014CEBC 00149E1C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8014CEC0 00149E20 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8014CEC4 00149E24 38 61 00 24 */ addi r3, r1, 0x24 +/* 8014CEC8 00149E28 38 A1 00 2C */ addi r5, r1, 0x2c +/* 8014CECC 00149E2C 81 84 00 00 */ lwz r12, 0(r4) +/* 8014CED0 00149E30 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8014CED4 00149E34 7D 89 03 A6 */ mtctr r12 +/* 8014CED8 00149E38 4E 80 04 21 */ bctrl +/* 8014CEDC 00149E3C 3B 21 00 34 */ addi r25, r1, 0x34 +/* 8014CEE0 00149E40 38 81 00 24 */ addi r4, r1, 0x24 +/* 8014CEE4 00149E44 7F 23 CB 78 */ mr r3, r25 +/* 8014CEE8 00149E48 48 1F 3F C1 */ bl __ct__6CTokenFRC6CToken +/* 8014CEEC 00149E4C 7F 23 CB 78 */ mr r3, r25 +/* 8014CEF0 00149E50 48 1F 3F 1D */ bl GetObj__6CTokenFv +/* 8014CEF4 00149E54 80 03 00 04 */ lwz r0, 4(r3) +/* 8014CEF8 00149E58 3B 21 00 40 */ addi r25, r1, 0x40 +/* 8014CEFC 00149E5C 7F 23 CB 78 */ mr r3, r25 +/* 8014CF00 00149E60 38 81 00 34 */ addi r4, r1, 0x34 +/* 8014CF04 00149E64 90 01 00 3C */ stw r0, 0x3c(r1) +/* 8014CF08 00149E68 48 1F 3F A1 */ bl __ct__6CTokenFRC6CToken +/* 8014CF0C 00149E6C 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 8014CF10 00149E70 7F 23 CB 78 */ mr r3, r25 +/* 8014CF14 00149E74 90 01 00 48 */ stw r0, 0x48(r1) +/* 8014CF18 00149E78 48 1F 3E 6D */ bl Lock__6CTokenFv +/* 8014CF1C 00149E7C 38 61 00 34 */ addi r3, r1, 0x34 +/* 8014CF20 00149E80 38 80 00 00 */ li r4, 0 +/* 8014CF24 00149E84 48 1F 3F 1D */ bl __dt__6CTokenFv +/* 8014CF28 00149E88 38 61 00 24 */ addi r3, r1, 0x24 +/* 8014CF2C 00149E8C 38 80 FF FF */ li r4, -1 +/* 8014CF30 00149E90 48 1F 3F 11 */ bl __dt__6CTokenFv +/* 8014CF34 00149E94 3C 80 80 3D */ lis r4, lbl_803D0170@ha +/* 8014CF38 00149E98 38 60 00 18 */ li r3, 0x18 +/* 8014CF3C 00149E9C 38 84 01 70 */ addi r4, r4, lbl_803D0170@l +/* 8014CF40 00149EA0 38 A0 00 00 */ li r5, 0 +/* 8014CF44 00149EA4 38 84 00 22 */ addi r4, r4, 0x22 +/* 8014CF48 00149EA8 48 1C 89 25 */ bl __nw__FUlPCcPCc +/* 8014CF4C 00149EAC 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8014CF50 00149EB0 41 82 00 14 */ beq lbl_8014CF64 +/* 8014CF54 00149EB4 80 81 00 48 */ lwz r4, 0x48(r1) +/* 8014CF58 00149EB8 38 BD 00 68 */ addi r5, r29, 0x68 +/* 8014CF5C 00149EBC 48 16 0A 09 */ bl "__ct__23CCollidableOBBTreeGroupFRCQ24rstl42vector<6CAABox,Q24rstl17rmemory_allocator>R14CCMaterialList" +/* 8014CF60 00149EC0 7C 7E 1B 78 */ mr r30, r3 +lbl_8014CF64: +/* 8014CF64 00149EC4 80 7D 05 E4 */ lwz r3, 0x5e4(r29) +/* 8014CF68 00149EC8 28 03 00 00 */ cmplwi r3, 0 +/* 8014CF6C 00149ECC 41 82 00 18 */ beq lbl_8014CF84 +/* 8014CF70 00149ED0 81 83 00 00 */ lwz r12, 0(r3) +/* 8014CF74 00149ED4 38 80 00 01 */ li r4, 1 +/* 8014CF78 00149ED8 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 8014CF7C 00149EDC 7D 89 03 A6 */ mtctr r12 +/* 8014CF80 00149EE0 4E 80 04 21 */ bctrl +lbl_8014CF84: +/* 8014CF84 00149EE4 93 DD 05 E4 */ stw r30, 0x5e4(r29) +/* 8014CF88 00149EE8 38 61 00 40 */ addi r3, r1, 0x40 +/* 8014CF8C 00149EEC 38 80 00 00 */ li r4, 0 +/* 8014CF90 00149EF0 48 1F 3E B1 */ bl __dt__6CTokenFv +lbl_8014CF94: +/* 8014CF94 00149EF4 7F A3 EB 78 */ mr r3, r29 +/* 8014CF98 00149EF8 E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 +/* 8014CF9C 00149EFC CB E1 00 C0 */ lfd f31, 0xc0(r1) +/* 8014CFA0 00149F00 E3 C1 00 B8 */ psq_l f30, 184(r1), 0, qr0 +/* 8014CFA4 00149F04 CB C1 00 B0 */ lfd f30, 0xb0(r1) +/* 8014CFA8 00149F08 E3 A1 00 A8 */ psq_l f29, 168(r1), 0, qr0 +/* 8014CFAC 00149F0C CB A1 00 A0 */ lfd f29, 0xa0(r1) +/* 8014CFB0 00149F10 E3 81 00 98 */ psq_l f28, 152(r1), 0, qr0 +/* 8014CFB4 00149F14 CB 81 00 90 */ lfd f28, 0x90(r1) +/* 8014CFB8 00149F18 E3 61 00 88 */ psq_l f27, 136(r1), 0, qr0 +/* 8014CFBC 00149F1C CB 61 00 80 */ lfd f27, 0x80(r1) +/* 8014CFC0 00149F20 E3 41 00 78 */ psq_l f26, 120(r1), 0, qr0 +/* 8014CFC4 00149F24 CB 41 00 70 */ lfd f26, 0x70(r1) +/* 8014CFC8 00149F28 BB 21 00 54 */ lmw r25, 0x54(r1) +/* 8014CFCC 00149F2C 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 8014CFD0 00149F30 7C 08 03 A6 */ mtlr r0 +/* 8014CFD4 00149F34 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 8014CFD8 00149F38 4E 80 00 20 */ blr + +.global __sinit_CPuddleToadGamma_cpp +__sinit_CPuddleToadGamma_cpp: +/* 8014CFDC 00149F3C C0 42 9C F0 */ lfs f2, lbl_805ABA10@sda21(r2) +/* 8014CFE0 00149F40 3C 60 80 57 */ lis r3, lbl_805719DC@ha +/* 8014CFE4 00149F44 C0 22 9D 18 */ lfs f1, lbl_805ABA38@sda21(r2) +/* 8014CFE8 00149F48 D4 43 19 DC */ stfsu f2, lbl_805719DC@l(r3) +/* 8014CFEC 00149F4C C0 02 9D 1C */ lfs f0, lbl_805ABA3C@sda21(r2) +/* 8014CFF0 00149F50 D0 23 00 04 */ stfs f1, 4(r3) +/* 8014CFF4 00149F54 D0 03 00 08 */ stfs f0, 8(r3) +/* 8014CFF8 00149F58 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CRipper.s b/asm/Kyoto_CWD/Enemies/CRipper.s new file mode 100644 index 00000000..07b540b4 --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CRipper.s @@ -0,0 +1,784 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global RemovePlatform__7CRipperFR13CStateManager +RemovePlatform__7CRipperFR13CStateManager: +/* 8015BDCC 00158D2C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8015BDD0 00158D30 7C 08 02 A6 */ mflr r0 +/* 8015BDD4 00158D34 90 01 00 24 */ stw r0, 0x24(r1) +/* 8015BDD8 00158D38 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8015BDDC 00158D3C 7C 7F 1B 78 */ mr r31, r3 +/* 8015BDE0 00158D40 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8015BDE4 00158D44 A0 63 05 9A */ lhz r3, 0x59a(r3) +/* 8015BDE8 00158D48 7C 03 00 40 */ cmplw r3, r0 +/* 8015BDEC 00158D4C 41 82 00 20 */ beq lbl_8015BE0C +/* 8015BDF0 00158D50 A0 1F 05 9A */ lhz r0, 0x59a(r31) +/* 8015BDF4 00158D54 7C 83 23 78 */ mr r3, r4 +/* 8015BDF8 00158D58 38 81 00 08 */ addi r4, r1, 8 +/* 8015BDFC 00158D5C B0 01 00 08 */ sth r0, 8(r1) +/* 8015BE00 00158D60 4B EF 04 6D */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 8015BE04 00158D64 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8015BE08 00158D68 B0 1F 05 9A */ sth r0, 0x59a(r31) +lbl_8015BE0C: +/* 8015BE0C 00158D6C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8015BE10 00158D70 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8015BE14 00158D74 7C 08 03 A6 */ mtlr r0 +/* 8015BE18 00158D78 38 21 00 20 */ addi r1, r1, 0x20 +/* 8015BE1C 00158D7C 4E 80 00 20 */ blr + +.global AddPlatform__7CRipperFR13CStateManager +AddPlatform__7CRipperFR13CStateManager: +/* 8015BE20 00158D80 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 8015BE24 00158D84 7C 08 02 A6 */ mflr r0 +/* 8015BE28 00158D88 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 8015BE2C 00158D8C BF 41 00 D8 */ stmw r26, 0xd8(r1) +/* 8015BE30 00158D90 7C 7D 1B 78 */ mr r29, r3 +/* 8015BE34 00158D94 7C 9E 23 78 */ mr r30, r4 +/* 8015BE38 00158D98 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8015BE3C 00158D9C A0 63 05 9A */ lhz r3, 0x59a(r3) +/* 8015BE40 00158DA0 7C 03 00 40 */ cmplw r3, r0 +/* 8015BE44 00158DA4 40 82 01 DC */ bne lbl_8015C020 +/* 8015BE48 00158DA8 38 61 00 1C */ addi r3, r1, 0x1c +/* 8015BE4C 00158DAC 4B EF 12 91 */ bl AllocateUniqueId__13CStateManagerFv +/* 8015BE50 00158DB0 A0 01 00 1C */ lhz r0, 0x1c(r1) +/* 8015BE54 00158DB4 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 8015BE58 00158DB8 38 9D 00 34 */ addi r4, r29, 0x34 +/* 8015BE5C 00158DBC B0 1D 05 9A */ sth r0, 0x59a(r29) +/* 8015BE60 00158DC0 83 9D 00 64 */ lwz r28, 0x64(r29) +/* 8015BE64 00158DC4 48 1B 6D DD */ bl GetRotation__12CTransform4fCFv +/* 8015BE68 00158DC8 7F 84 E3 78 */ mr r4, r28 +/* 8015BE6C 00158DCC 38 61 00 74 */ addi r3, r1, 0x74 +/* 8015BE70 00158DD0 38 A1 00 A4 */ addi r5, r1, 0xa4 +/* 8015BE74 00158DD4 4B FB 99 41 */ bl GetBounds__10CModelDataCFRC12CTransform4f +/* 8015BE78 00158DD8 C0 A1 00 74 */ lfs f5, 0x74(r1) +/* 8015BE7C 00158DDC 3C 60 80 3D */ lis r3, lbl_803D0358@ha +/* 8015BE80 00158DE0 C0 81 00 78 */ lfs f4, 0x78(r1) +/* 8015BE84 00158DE4 38 83 03 58 */ addi r4, r3, lbl_803D0358@l +/* 8015BE88 00158DE8 C0 61 00 7C */ lfs f3, 0x7c(r1) +/* 8015BE8C 00158DEC 3B 80 00 00 */ li r28, 0 +/* 8015BE90 00158DF0 C0 41 00 80 */ lfs f2, 0x80(r1) +/* 8015BE94 00158DF4 3B 40 00 00 */ li r26, 0 +/* 8015BE98 00158DF8 C0 21 00 84 */ lfs f1, 0x84(r1) +/* 8015BE9C 00158DFC 3B 60 00 00 */ li r27, 0 +/* 8015BEA0 00158E00 C0 01 00 88 */ lfs f0, 0x88(r1) +/* 8015BEA4 00158E04 38 60 03 60 */ li r3, 0x360 +/* 8015BEA8 00158E08 D0 A1 00 8C */ stfs f5, 0x8c(r1) +/* 8015BEAC 00158E0C 38 A0 00 00 */ li r5, 0 +/* 8015BEB0 00158E10 D0 81 00 90 */ stfs f4, 0x90(r1) +/* 8015BEB4 00158E14 D0 61 00 94 */ stfs f3, 0x94(r1) +/* 8015BEB8 00158E18 D0 41 00 98 */ stfs f2, 0x98(r1) +/* 8015BEBC 00158E1C D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 8015BEC0 00158E20 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 8015BEC4 00158E24 48 1B 99 A9 */ bl __nw__FUlPCcPCc +/* 8015BEC8 00158E28 7C 7F 1B 79 */ or. r31, r3, r3 +/* 8015BECC 00158E2C 41 82 00 A4 */ beq lbl_8015BF70 +/* 8015BED0 00158E30 38 00 00 00 */ li r0, 0 +/* 8015BED4 00158E34 3C 60 80 57 */ lis r3, lbl_8056D410@ha +/* 8015BED8 00158E38 98 01 00 58 */ stb r0, 0x58(r1) +/* 8015BEDC 00158E3C 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l +/* 8015BEE0 00158E40 80 0D A3 88 */ lwz r0, lbl_805A8F48@sda21(r13) +/* 8015BEE4 00158E44 38 61 00 5C */ addi r3, r1, 0x5c +/* 8015BEE8 00158E48 88 FD 00 30 */ lbz r7, 0x30(r29) +/* 8015BEEC 00158E4C 38 81 00 34 */ addi r4, r1, 0x34 +/* 8015BEF0 00158E50 38 C1 00 38 */ addi r6, r1, 0x38 +/* 8015BEF4 00158E54 3B 80 00 01 */ li r28, 1 +/* 8015BEF8 00158E58 90 01 00 38 */ stw r0, 0x38(r1) +/* 8015BEFC 00158E5C 54 FB CF FE */ rlwinm r27, r7, 0x19, 0x1f, 0x1f +/* 8015BF00 00158E60 80 1D 00 04 */ lwz r0, 4(r29) +/* 8015BF04 00158E64 90 01 00 30 */ stw r0, 0x30(r1) +/* 8015BF08 00158E68 90 01 00 34 */ stw r0, 0x34(r1) +/* 8015BF0C 00158E6C 4B EF 55 79 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 8015BF10 00158E70 3C 80 80 3D */ lis r4, lbl_803D0358@ha +/* 8015BF14 00158E74 38 61 00 3C */ addi r3, r1, 0x3c +/* 8015BF18 00158E78 38 84 03 58 */ addi r4, r4, lbl_803D0358@l +/* 8015BF1C 00158E7C 3B 40 00 01 */ li r26, 1 +/* 8015BF20 00158E80 38 84 00 07 */ addi r4, r4, 7 +/* 8015BF24 00158E84 4B EA 8D 95 */ bl string_l__4rstlFPCc +/* 8015BF28 00158E88 A1 1D 00 08 */ lhz r8, 8(r29) +/* 8015BF2C 00158E8C 38 01 00 4C */ addi r0, r1, 0x4c +/* 8015BF30 00158E90 7F E3 FB 78 */ mr r3, r31 +/* 8015BF34 00158E94 7F 6A DB 78 */ mr r10, r27 +/* 8015BF38 00158E98 B1 01 00 18 */ sth r8, 0x18(r1) +/* 8015BF3C 00158E9C 38 81 00 10 */ addi r4, r1, 0x10 +/* 8015BF40 00158EA0 38 A1 00 18 */ addi r5, r1, 0x18 +/* 8015BF44 00158EA4 38 C1 00 3C */ addi r6, r1, 0x3c +/* 8015BF48 00158EA8 A1 7D 05 9A */ lhz r11, 0x59a(r29) +/* 8015BF4C 00158EAC 38 E1 00 5C */ addi r7, r1, 0x5c +/* 8015BF50 00158EB0 B1 01 00 14 */ sth r8, 0x14(r1) +/* 8015BF54 00158EB4 39 1D 00 34 */ addi r8, r29, 0x34 +/* 8015BF58 00158EB8 39 21 00 8C */ addi r9, r1, 0x8c +/* 8015BF5C 00158EBC 3B 60 00 01 */ li r27, 1 +/* 8015BF60 00158EC0 B1 61 00 10 */ sth r11, 0x10(r1) +/* 8015BF64 00158EC4 90 01 00 08 */ stw r0, 8(r1) +/* 8015BF68 00158EC8 48 0D 6C 31 */ bl "__ct__25CRipperControlledPlatformF9TUniqueId9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC6CAABoxbRCQ24rstl58optional_object<39TLockedToken<23CCollidableOBBTreeGroup>>" +/* 8015BF6C 00158ECC 7C 7F 1B 78 */ mr r31, r3 +lbl_8015BF70: +/* 8015BF70 00158ED0 7F 60 07 75 */ extsb. r0, r27 +/* 8015BF74 00158ED4 41 82 00 0C */ beq lbl_8015BF80 +/* 8015BF78 00158ED8 38 61 00 3C */ addi r3, r1, 0x3c +/* 8015BF7C 00158EDC 48 1E 1B 65 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8015BF80: +/* 8015BF80 00158EE0 7F 40 07 75 */ extsb. r0, r26 +/* 8015BF84 00158EE4 41 82 00 44 */ beq lbl_8015BFC8 +/* 8015BF88 00158EE8 80 01 00 64 */ lwz r0, 0x64(r1) +/* 8015BF8C 00158EEC 80 61 00 6C */ lwz r3, 0x6c(r1) +/* 8015BF90 00158EF0 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8015BF94 00158EF4 90 61 00 24 */ stw r3, 0x24(r1) +/* 8015BF98 00158EF8 7C 64 1B 78 */ mr r4, r3 +/* 8015BF9C 00158EFC 7C 03 02 14 */ add r0, r3, r0 +/* 8015BFA0 00158F00 90 61 00 20 */ stw r3, 0x20(r1) +/* 8015BFA4 00158F04 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8015BFA8 00158F08 90 01 00 28 */ stw r0, 0x28(r1) +/* 8015BFAC 00158F0C 48 00 00 08 */ b lbl_8015BFB4 +lbl_8015BFB0: +/* 8015BFB0 00158F10 38 84 00 0C */ addi r4, r4, 0xc +lbl_8015BFB4: +/* 8015BFB4 00158F14 7C 04 00 40 */ cmplw r4, r0 +/* 8015BFB8 00158F18 40 82 FF F8 */ bne lbl_8015BFB0 +/* 8015BFBC 00158F1C 28 03 00 00 */ cmplwi r3, 0 +/* 8015BFC0 00158F20 41 82 00 08 */ beq lbl_8015BFC8 +/* 8015BFC4 00158F24 48 1B 99 6D */ bl Free__7CMemoryFPCv +lbl_8015BFC8: +/* 8015BFC8 00158F28 7F 80 07 75 */ extsb. r0, r28 +/* 8015BFCC 00158F2C 41 82 00 30 */ beq lbl_8015BFFC +/* 8015BFD0 00158F30 88 01 00 58 */ lbz r0, 0x58(r1) +/* 8015BFD4 00158F34 28 00 00 00 */ cmplwi r0, 0 +/* 8015BFD8 00158F38 41 82 00 1C */ beq lbl_8015BFF4 +/* 8015BFDC 00158F3C 34 61 00 4C */ addic. r3, r1, 0x4c +/* 8015BFE0 00158F40 41 82 00 14 */ beq lbl_8015BFF4 +/* 8015BFE4 00158F44 28 03 00 00 */ cmplwi r3, 0 +/* 8015BFE8 00158F48 41 82 00 0C */ beq lbl_8015BFF4 +/* 8015BFEC 00158F4C 38 80 00 00 */ li r4, 0 +/* 8015BFF0 00158F50 48 1E 4E 51 */ bl __dt__6CTokenFv +lbl_8015BFF4: +/* 8015BFF4 00158F54 38 00 00 00 */ li r0, 0 +/* 8015BFF8 00158F58 98 01 00 58 */ stb r0, 0x58(r1) +lbl_8015BFFC: +/* 8015BFFC 00158F5C 28 1F 00 00 */ cmplwi r31, 0 +/* 8015C000 00158F60 41 82 00 20 */ beq lbl_8015C020 +/* 8015C004 00158F64 7F C3 F3 78 */ mr r3, r30 +/* 8015C008 00158F68 7F E4 FB 78 */ mr r4, r31 +/* 8015C00C 00158F6C 4B EF 0C E9 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 8015C010 00158F70 7F E3 FB 78 */ mr r3, r31 +/* 8015C014 00158F74 7F C5 F3 78 */ mr r5, r30 +/* 8015C018 00158F78 38 80 00 12 */ li r4, 0x12 +/* 8015C01C 00158F7C 4B EF 83 35 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_8015C020: +/* 8015C020 00158F80 BB 41 00 D8 */ lmw r26, 0xd8(r1) +/* 8015C024 00158F84 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 8015C028 00158F88 7C 08 03 A6 */ mtlr r0 +/* 8015C02C 00158F8C 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 8015C030 00158F90 4E 80 00 20 */ blr + +.global sub_8015c034 +sub_8015c034: +/* 8015C034 00158F94 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8015C038 00158F98 7C 08 02 A6 */ mflr r0 +/* 8015C03C 00158F9C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8015C040 00158FA0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8015C044 00158FA4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8015C048 00158FA8 7C 7E 1B 78 */ mr r30, r3 +/* 8015C04C 00158FAC 80 03 03 FC */ lwz r0, 0x3fc(r3) +/* 8015C050 00158FB0 2C 00 00 01 */ cmpwi r0, 1 +/* 8015C054 00158FB4 40 82 00 74 */ bne lbl_8015C0C8 +/* 8015C058 00158FB8 A0 7E 05 98 */ lhz r3, 0x598(r30) +/* 8015C05C 00158FBC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8015C060 00158FC0 7C 03 00 40 */ cmplw r3, r0 +/* 8015C064 00158FC4 41 82 00 64 */ beq lbl_8015C0C8 +/* 8015C068 00158FC8 A0 1E 05 98 */ lhz r0, 0x598(r30) +/* 8015C06C 00158FCC 7C 83 23 78 */ mr r3, r4 +/* 8015C070 00158FD0 38 81 00 08 */ addi r4, r1, 8 +/* 8015C074 00158FD4 B0 01 00 08 */ sth r0, 8(r1) +/* 8015C078 00158FD8 4B EF 04 FD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8015C07C 00158FDC 7C 64 1B 78 */ mr r4, r3 +/* 8015C080 00158FE0 38 61 00 0C */ addi r3, r1, 0xc +/* 8015C084 00158FE4 4B F4 DA 45 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" +/* 8015C088 00158FE8 83 E3 00 04 */ lwz r31, 4(r3) +/* 8015C08C 00158FEC 28 1F 00 00 */ cmplwi r31, 0 +/* 8015C090 00158FF0 41 82 00 38 */ beq lbl_8015C0C8 +/* 8015C094 00158FF4 38 7F 00 34 */ addi r3, r31, 0x34 +/* 8015C098 00158FF8 38 9E 00 34 */ addi r4, r30, 0x34 +/* 8015C09C 00158FFC 48 1B 6A A5 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8015C0A0 00159000 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8015C0A4 00159004 38 60 00 01 */ li r3, 1 +/* 8015C0A8 00159008 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8015C0AC 0015900C 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 8015C0B0 00159010 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8015C0B4 00159014 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 8015C0B8 00159018 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 8015C0BC 0015901C 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8015C0C0 00159020 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 8015C0C4 00159024 98 1F 00 E4 */ stb r0, 0xe4(r31) +lbl_8015C0C8: +/* 8015C0C8 00159028 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8015C0CC 0015902C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8015C0D0 00159030 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8015C0D4 00159034 7C 08 03 A6 */ mtlr r0 +/* 8015C0D8 00159038 38 21 00 20 */ addi r1, r1, 0x20 +/* 8015C0DC 0015903C 4E 80 00 20 */ blr + +.global sub_8015c0e0 +sub_8015c0e0: +/* 8015C0E0 00159040 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8015C0E4 00159044 7C 08 02 A6 */ mflr r0 +/* 8015C0E8 00159048 90 01 00 24 */ stw r0, 0x24(r1) +/* 8015C0EC 0015904C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8015C0F0 00159050 7C 7F 1B 78 */ mr r31, r3 +/* 8015C0F4 00159054 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8015C0F8 00159058 A0 63 05 98 */ lhz r3, 0x598(r3) +/* 8015C0FC 0015905C 7C 03 00 40 */ cmplw r3, r0 +/* 8015C100 00159060 41 82 00 20 */ beq lbl_8015C120 +/* 8015C104 00159064 A0 1F 05 98 */ lhz r0, 0x598(r31) +/* 8015C108 00159068 7C 83 23 78 */ mr r3, r4 +/* 8015C10C 0015906C 38 81 00 08 */ addi r4, r1, 8 +/* 8015C110 00159070 B0 01 00 08 */ sth r0, 8(r1) +/* 8015C114 00159074 4B EF 01 59 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 8015C118 00159078 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8015C11C 0015907C B0 1F 05 98 */ sth r0, 0x598(r31) +lbl_8015C120: +/* 8015C120 00159080 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8015C124 00159084 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8015C128 00159088 7C 08 03 A6 */ mtlr r0 +/* 8015C12C 0015908C 38 21 00 20 */ addi r1, r1, 0x20 +/* 8015C130 00159090 4E 80 00 20 */ blr + +.global AddGrapplePoint__7CRipperFR13CStateManager +AddGrapplePoint__7CRipperFR13CStateManager: +/* 8015C134 00159094 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8015C138 00159098 7C 08 02 A6 */ mflr r0 +/* 8015C13C 0015909C 90 01 00 74 */ stw r0, 0x74(r1) +/* 8015C140 001590A0 BF 61 00 5C */ stmw r27, 0x5c(r1) +/* 8015C144 001590A4 7C 7D 1B 78 */ mr r29, r3 +/* 8015C148 001590A8 7C 9E 23 78 */ mr r30, r4 +/* 8015C14C 001590AC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8015C150 001590B0 A0 63 05 98 */ lhz r3, 0x598(r3) +/* 8015C154 001590B4 7C 03 00 40 */ cmplw r3, r0 +/* 8015C158 001590B8 40 82 01 10 */ bne lbl_8015C268 +/* 8015C15C 001590BC 38 61 00 0C */ addi r3, r1, 0xc +/* 8015C160 001590C0 4B EF 0F 7D */ bl AllocateUniqueId__13CStateManagerFv +/* 8015C164 001590C4 A0 01 00 0C */ lhz r0, 0xc(r1) +/* 8015C168 001590C8 3C 60 80 3D */ lis r3, lbl_803D0358@ha +/* 8015C16C 001590CC 38 83 03 58 */ addi r4, r3, lbl_803D0358@l +/* 8015C170 001590D0 3B 80 00 00 */ li r28, 0 +/* 8015C174 001590D4 B0 1D 05 98 */ sth r0, 0x598(r29) +/* 8015C178 001590D8 3B 60 00 00 */ li r27, 0 +/* 8015C17C 001590DC 38 60 01 30 */ li r3, 0x130 +/* 8015C180 001590E0 38 A0 00 00 */ li r5, 0 +/* 8015C184 001590E4 48 1B 96 E9 */ bl __nw__FUlPCcPCc +/* 8015C188 001590E8 7C 7F 1B 79 */ or. r31, r3, r3 +/* 8015C18C 001590EC 41 82 00 78 */ beq lbl_8015C204 +/* 8015C190 001590F0 80 0D A3 88 */ lwz r0, lbl_805A8F48@sda21(r13) +/* 8015C194 001590F4 3C 60 80 57 */ lis r3, lbl_8056D410@ha +/* 8015C198 001590F8 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l +/* 8015C19C 001590FC 38 81 00 24 */ addi r4, r1, 0x24 +/* 8015C1A0 00159100 90 01 00 28 */ stw r0, 0x28(r1) +/* 8015C1A4 00159104 38 61 00 3C */ addi r3, r1, 0x3c +/* 8015C1A8 00159108 38 C1 00 28 */ addi r6, r1, 0x28 +/* 8015C1AC 0015910C 80 1D 00 04 */ lwz r0, 4(r29) +/* 8015C1B0 00159110 90 01 00 20 */ stw r0, 0x20(r1) +/* 8015C1B4 00159114 90 01 00 24 */ stw r0, 0x24(r1) +/* 8015C1B8 00159118 4B EF 52 CD */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 8015C1BC 0015911C 3C 80 80 3D */ lis r4, lbl_803D0358@ha +/* 8015C1C0 00159120 38 61 00 2C */ addi r3, r1, 0x2c +/* 8015C1C4 00159124 38 84 03 58 */ addi r4, r4, lbl_803D0358@l +/* 8015C1C8 00159128 3B 80 00 01 */ li r28, 1 +/* 8015C1CC 0015912C 38 84 00 22 */ addi r4, r4, 0x22 +/* 8015C1D0 00159130 4B EA 8A E9 */ bl string_l__4rstlFPCc +/* 8015C1D4 00159134 A0 1D 05 98 */ lhz r0, 0x598(r29) +/* 8015C1D8 00159138 7F E3 FB 78 */ mr r3, r31 +/* 8015C1DC 0015913C 38 81 00 08 */ addi r4, r1, 8 +/* 8015C1E0 00159140 38 A1 00 2C */ addi r5, r1, 0x2c +/* 8015C1E4 00159144 B0 01 00 08 */ sth r0, 8(r1) +/* 8015C1E8 00159148 38 C1 00 3C */ addi r6, r1, 0x3c +/* 8015C1EC 0015914C 38 FD 00 34 */ addi r7, r29, 0x34 +/* 8015C1F0 00159150 39 3D 05 68 */ addi r9, r29, 0x568 +/* 8015C1F4 00159154 3B 60 00 01 */ li r27, 1 +/* 8015C1F8 00159158 39 00 00 01 */ li r8, 1 +/* 8015C1FC 0015915C 4B FD 37 25 */ bl "__ct__19CScriptGrapplePointF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fbRC18CGrappleParameters" +/* 8015C200 00159160 7C 7F 1B 78 */ mr r31, r3 +lbl_8015C204: +/* 8015C204 00159164 7F C3 F3 78 */ mr r3, r30 +/* 8015C208 00159168 7F E4 FB 78 */ mr r4, r31 +/* 8015C20C 0015916C 4B EF 0A E9 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 8015C210 00159170 7F 60 07 75 */ extsb. r0, r27 +/* 8015C214 00159174 41 82 00 0C */ beq lbl_8015C220 +/* 8015C218 00159178 38 61 00 2C */ addi r3, r1, 0x2c +/* 8015C21C 0015917C 48 1E 18 C5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8015C220: +/* 8015C220 00159180 7F 80 07 75 */ extsb. r0, r28 +/* 8015C224 00159184 41 82 00 44 */ beq lbl_8015C268 +/* 8015C228 00159188 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8015C22C 0015918C 80 61 00 4C */ lwz r3, 0x4c(r1) +/* 8015C230 00159190 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8015C234 00159194 90 61 00 14 */ stw r3, 0x14(r1) +/* 8015C238 00159198 7C 64 1B 78 */ mr r4, r3 +/* 8015C23C 0015919C 7C 03 02 14 */ add r0, r3, r0 +/* 8015C240 001591A0 90 61 00 10 */ stw r3, 0x10(r1) +/* 8015C244 001591A4 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8015C248 001591A8 90 01 00 18 */ stw r0, 0x18(r1) +/* 8015C24C 001591AC 48 00 00 08 */ b lbl_8015C254 +lbl_8015C250: +/* 8015C250 001591B0 38 84 00 0C */ addi r4, r4, 0xc +lbl_8015C254: +/* 8015C254 001591B4 7C 04 00 40 */ cmplw r4, r0 +/* 8015C258 001591B8 40 82 FF F8 */ bne lbl_8015C250 +/* 8015C25C 001591BC 28 03 00 00 */ cmplwi r3, 0 +/* 8015C260 001591C0 41 82 00 08 */ beq lbl_8015C268 +/* 8015C264 001591C4 48 1B 96 CD */ bl Free__7CMemoryFPCv +lbl_8015C268: +/* 8015C268 001591C8 BB 61 00 5C */ lmw r27, 0x5c(r1) +/* 8015C26C 001591CC 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8015C270 001591D0 7C 08 03 A6 */ mtlr r0 +/* 8015C274 001591D4 38 21 00 70 */ addi r1, r1, 0x70 +/* 8015C278 001591D8 4E 80 00 20 */ blr + +.global Patrol__7CRipperFR13CStateManager9EStateMsgf +Patrol__7CRipperFR13CStateManager9EStateMsgf: +/* 8015C27C 001591DC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8015C280 001591E0 7C 08 02 A6 */ mflr r0 +/* 8015C284 001591E4 90 01 00 34 */ stw r0, 0x34(r1) +/* 8015C288 001591E8 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 8015C28C 001591EC F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 8015C290 001591F0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8015C294 001591F4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8015C298 001591F8 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8015C29C 001591FC 7C 7D 1B 78 */ mr r29, r3 +/* 8015C2A0 00159200 FF E0 08 90 */ fmr f31, f1 +/* 8015C2A4 00159204 80 63 04 50 */ lwz r3, 0x450(r3) +/* 8015C2A8 00159208 38 00 00 01 */ li r0, 1 +/* 8015C2AC 0015920C C0 22 9E DC */ lfs f1, lbl_805ABBFC@sda21(r2) +/* 8015C2B0 00159210 7C 9E 23 78 */ mr r30, r4 +/* 8015C2B4 00159214 90 03 00 34 */ stw r0, 0x34(r3) +/* 8015C2B8 00159218 FC 40 08 90 */ fmr f2, f1 +/* 8015C2BC 0015921C 7C BF 2B 78 */ mr r31, r5 +/* 8015C2C0 00159220 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8015C2C4 00159224 38 63 00 04 */ addi r3, r3, 4 +/* 8015C2C8 00159228 4B FD 55 21 */ bl SetSteeringSpeedRange__16CBodyStateCmdMgrFff +/* 8015C2CC 0015922C FC 20 F8 90 */ fmr f1, f31 +/* 8015C2D0 00159230 7F A3 EB 78 */ mr r3, r29 +/* 8015C2D4 00159234 7F C4 F3 78 */ mr r4, r30 +/* 8015C2D8 00159238 7F E5 FB 78 */ mr r5, r31 +/* 8015C2DC 0015923C 48 09 AB 99 */ bl Patrol__10CPatternedFR13CStateManager9EStateMsgf +/* 8015C2E0 00159240 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 8015C2E4 00159244 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8015C2E8 00159248 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 8015C2EC 0015924C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8015C2F0 00159250 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8015C2F4 00159254 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8015C2F8 00159258 7C 08 03 A6 */ mtlr r0 +/* 8015C2FC 0015925C 38 21 00 30 */ addi r1, r1, 0x30 +/* 8015C300 00159260 4E 80 00 20 */ blr + +.global PathOver__7CRipperFR13CStateManagerf +PathOver__7CRipperFR13CStateManagerf: +/* 8015C304 00159264 38 60 00 00 */ li r3, 0 +/* 8015C308 00159268 4E 80 00 20 */ blr + +.global KnockBack__7CRipperFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef +KnockBack__7CRipperFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef: +/* 8015C30C 0015926C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8015C310 00159270 7C 08 02 A6 */ mflr r0 +/* 8015C314 00159274 90 01 00 34 */ stw r0, 0x34(r1) +/* 8015C318 00159278 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8015C31C 0015927C 7C 9F 23 78 */ mr r31, r4 +/* 8015C320 00159280 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8015C324 00159284 7C 7E 1B 78 */ mr r30, r3 +/* 8015C328 00159288 4B F1 E4 55 */ bl KnockBack__10CPatternedFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef +/* 8015C32C 0015928C C0 5F 00 08 */ lfs f2, 8(r31) +/* 8015C330 00159290 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8015C334 00159294 C0 3F 00 04 */ lfs f1, 4(r31) +/* 8015C338 00159298 38 A3 AA 68 */ addi r5, r3, lbl_803DAA68@l +/* 8015C33C 0015929C C0 1F 00 00 */ lfs f0, 0(r31) +/* 8015C340 001592A0 FC 40 10 50 */ fneg f2, f2 +/* 8015C344 001592A4 FC 20 08 50 */ fneg f1, f1 +/* 8015C348 001592A8 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8015C34C 001592AC FC 00 00 50 */ fneg f0, f0 +/* 8015C350 001592B0 3C 80 80 3E */ lis r4, lbl_803DAA44@ha +/* 8015C354 001592B4 38 C0 00 04 */ li r6, 4 +/* 8015C358 001592B8 38 00 00 01 */ li r0, 1 +/* 8015C35C 001592BC 3B E3 00 04 */ addi r31, r3, 4 +/* 8015C360 001592C0 90 A1 00 08 */ stw r5, 8(r1) +/* 8015C364 001592C4 38 A4 AA 44 */ addi r5, r4, lbl_803DAA44@l +/* 8015C368 001592C8 38 80 00 04 */ li r4, 4 +/* 8015C36C 001592CC 90 C1 00 0C */ stw r6, 0xc(r1) +/* 8015C370 001592D0 7F E3 FB 78 */ mr r3, r31 +/* 8015C374 001592D4 90 A1 00 08 */ stw r5, 8(r1) +/* 8015C378 001592D8 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8015C37C 001592DC D0 21 00 14 */ stfs f1, 0x14(r1) +/* 8015C380 001592E0 D0 41 00 18 */ stfs f2, 0x18(r1) +/* 8015C384 001592E4 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8015C388 001592E8 4B FD 50 B1 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8015C38C 001592EC 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8015C390 001592F0 3C 60 80 3E */ lis r3, lbl_803DAA44@ha +/* 8015C394 001592F4 38 83 AA 44 */ addi r4, r3, lbl_803DAA44@l +/* 8015C398 001592F8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8015C39C 001592FC 90 1F 00 F8 */ stw r0, 0xf8(r31) +/* 8015C3A0 00159300 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 8015C3A4 00159304 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 8015C3A8 00159308 80 61 00 14 */ lwz r3, 0x14(r1) +/* 8015C3AC 0015930C 90 BF 00 FC */ stw r5, 0xfc(r31) +/* 8015C3B0 00159310 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 8015C3B4 00159314 90 7F 01 00 */ stw r3, 0x100(r31) +/* 8015C3B8 00159318 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 8015C3BC 0015931C 90 BF 01 04 */ stw r5, 0x104(r31) +/* 8015C3C0 00159320 90 81 00 08 */ stw r4, 8(r1) +/* 8015C3C4 00159324 90 7F 01 08 */ stw r3, 0x108(r31) +/* 8015C3C8 00159328 90 01 00 08 */ stw r0, 8(r1) +/* 8015C3CC 0015932C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8015C3D0 00159330 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8015C3D4 00159334 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8015C3D8 00159338 7C 08 03 A6 */ mtlr r0 +/* 8015C3DC 0015933C 38 21 00 30 */ addi r1, r1, 0x30 +/* 8015C3E0 00159340 4E 80 00 20 */ blr + +.global GetCollisionResponseType__7CRipperFRC9CVector3fRC9CVector3fRC11CWeaponModei +GetCollisionResponseType__7CRipperFRC9CVector3fRC9CVector3fRC11CWeaponModei: +/* 8015C3E4 00159344 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8015C3E8 00159348 7C 08 02 A6 */ mflr r0 +/* 8015C3EC 0015934C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015C3F0 00159350 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8015C3F4 00159354 3B E0 00 20 */ li r31, 0x20 +/* 8015C3F8 00159358 93 C1 00 08 */ stw r30, 8(r1) +/* 8015C3FC 0015935C 7C DE 33 78 */ mr r30, r6 +/* 8015C400 00159360 81 83 00 00 */ lwz r12, 0(r3) +/* 8015C404 00159364 81 8C 00 38 */ lwz r12, 0x38(r12) +/* 8015C408 00159368 7D 89 03 A6 */ mtctr r12 +/* 8015C40C 0015936C 4E 80 04 21 */ bctrl +/* 8015C410 00159370 7F C4 F3 78 */ mr r4, r30 +/* 8015C414 00159374 38 A0 00 00 */ li r5, 0 +/* 8015C418 00159378 4B FA 61 6D */ bl WeaponHits__20CDamageVulnerabilityCFRC11CWeaponModei +/* 8015C41C 0015937C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8015C420 00159380 40 82 00 08 */ bne lbl_8015C428 +/* 8015C424 00159384 3B E0 00 52 */ li r31, 0x52 +lbl_8015C428: +/* 8015C428 00159388 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8015C42C 0015938C 7F E3 FB 78 */ mr r3, r31 +/* 8015C430 00159390 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8015C434 00159394 83 C1 00 08 */ lwz r30, 8(r1) +/* 8015C438 00159398 7C 08 03 A6 */ mtlr r0 +/* 8015C43C 0015939C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8015C440 001593A0 4E 80 00 20 */ blr + +.global AcceptScriptMsg__7CRipperF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__7CRipperF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8015C444 001593A4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8015C448 001593A8 7C 08 02 A6 */ mflr r0 +/* 8015C44C 001593AC 90 01 00 24 */ stw r0, 0x24(r1) +/* 8015C450 001593B0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8015C454 001593B4 7C DF 33 78 */ mr r31, r6 +/* 8015C458 001593B8 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8015C45C 001593BC 7C 9E 23 78 */ mr r30, r4 +/* 8015C460 001593C0 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8015C464 001593C4 7C 7D 1B 78 */ mr r29, r3 +/* 8015C468 001593C8 A0 05 00 00 */ lhz r0, 0(r5) +/* 8015C46C 001593CC 38 A1 00 08 */ addi r5, r1, 8 +/* 8015C470 001593D0 B0 01 00 08 */ sth r0, 8(r1) +/* 8015C474 001593D4 4B F2 07 05 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8015C478 001593D8 2C 1E 00 04 */ cmpwi r30, 4 +/* 8015C47C 001593DC 41 82 00 C8 */ beq lbl_8015C544 +/* 8015C480 001593E0 40 80 00 10 */ bge lbl_8015C490 +/* 8015C484 001593E4 2C 1E 00 01 */ cmpwi r30, 1 +/* 8015C488 001593E8 41 82 00 A0 */ beq lbl_8015C528 +/* 8015C48C 001593EC 48 00 00 D0 */ b lbl_8015C55C +lbl_8015C490: +/* 8015C490 001593F0 2C 1E 00 22 */ cmpwi r30, 0x22 +/* 8015C494 001593F4 41 82 00 78 */ beq lbl_8015C50C +/* 8015C498 001593F8 40 80 00 C4 */ bge lbl_8015C55C +/* 8015C49C 001593FC 2C 1E 00 21 */ cmpwi r30, 0x21 +/* 8015C4A0 00159400 40 80 00 08 */ bge lbl_8015C4A8 +/* 8015C4A4 00159404 48 00 00 B8 */ b lbl_8015C55C +lbl_8015C4A8: +/* 8015C4A8 00159408 80 7D 04 50 */ lwz r3, 0x450(r29) +/* 8015C4AC 0015940C 7F E4 FB 78 */ mr r4, r31 +/* 8015C4B0 00159410 4B FD E8 41 */ bl Activate__15CBodyControllerFR13CStateManager +/* 8015C4B4 00159414 7F A3 EB 78 */ mr r3, r29 +/* 8015C4B8 00159418 7F E5 FB 78 */ mr r5, r31 +/* 8015C4BC 0015941C 38 80 00 2B */ li r4, 0x2b +/* 8015C4C0 00159420 4B EF 7E 91 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 8015C4C4 00159424 7F A3 EB 78 */ mr r3, r29 +/* 8015C4C8 00159428 7F E5 FB 78 */ mr r5, r31 +/* 8015C4CC 0015942C 38 80 00 13 */ li r4, 0x13 +/* 8015C4D0 00159430 4B EF 7A B1 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 8015C4D4 00159434 80 1D 03 FC */ lwz r0, 0x3fc(r29) +/* 8015C4D8 00159438 2C 00 00 01 */ cmpwi r0, 1 +/* 8015C4DC 0015943C 40 82 00 20 */ bne lbl_8015C4FC +/* 8015C4E0 00159440 7F A3 EB 78 */ mr r3, r29 +/* 8015C4E4 00159444 7F E4 FB 78 */ mr r4, r31 +/* 8015C4E8 00159448 4B FF FC 4D */ bl AddGrapplePoint__7CRipperFR13CStateManager +/* 8015C4EC 0015944C 7F A3 EB 78 */ mr r3, r29 +/* 8015C4F0 00159450 7F E5 FB 78 */ mr r5, r31 +/* 8015C4F4 00159454 38 80 00 29 */ li r4, 0x29 +/* 8015C4F8 00159458 4B EF 7A 89 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_8015C4FC: +/* 8015C4FC 0015945C 7F A3 EB 78 */ mr r3, r29 +/* 8015C500 00159460 7F E4 FB 78 */ mr r4, r31 +/* 8015C504 00159464 4B FF F9 1D */ bl AddPlatform__7CRipperFR13CStateManager +/* 8015C508 00159468 48 00 00 54 */ b lbl_8015C55C +lbl_8015C50C: +/* 8015C50C 0015946C 7F A3 EB 78 */ mr r3, r29 +/* 8015C510 00159470 7F E4 FB 78 */ mr r4, r31 +/* 8015C514 00159474 4B FF FB CD */ bl sub_8015c0e0 +/* 8015C518 00159478 7F A3 EB 78 */ mr r3, r29 +/* 8015C51C 0015947C 7F E4 FB 78 */ mr r4, r31 +/* 8015C520 00159480 4B FF F8 AD */ bl RemovePlatform__7CRipperFR13CStateManager +/* 8015C524 00159484 48 00 00 38 */ b lbl_8015C55C +lbl_8015C528: +/* 8015C528 00159488 7F A3 EB 78 */ mr r3, r29 +/* 8015C52C 0015948C 7F E4 FB 78 */ mr r4, r31 +/* 8015C530 00159490 4B FF FC 05 */ bl AddGrapplePoint__7CRipperFR13CStateManager +/* 8015C534 00159494 7F A3 EB 78 */ mr r3, r29 +/* 8015C538 00159498 7F E4 FB 78 */ mr r4, r31 +/* 8015C53C 0015949C 4B FF F8 E5 */ bl AddPlatform__7CRipperFR13CStateManager +/* 8015C540 001594A0 48 00 00 1C */ b lbl_8015C55C +lbl_8015C544: +/* 8015C544 001594A4 7F A3 EB 78 */ mr r3, r29 +/* 8015C548 001594A8 7F E4 FB 78 */ mr r4, r31 +/* 8015C54C 001594AC 4B FF FB 95 */ bl sub_8015c0e0 +/* 8015C550 001594B0 7F A3 EB 78 */ mr r3, r29 +/* 8015C554 001594B4 7F E4 FB 78 */ mr r4, r31 +/* 8015C558 001594B8 4B FF F8 75 */ bl RemovePlatform__7CRipperFR13CStateManager +lbl_8015C55C: +/* 8015C55C 001594BC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8015C560 001594C0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8015C564 001594C4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8015C568 001594C8 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8015C56C 001594CC 7C 08 03 A6 */ mtlr r0 +/* 8015C570 001594D0 38 21 00 20 */ addi r1, r1, 0x20 +/* 8015C574 001594D4 4E 80 00 20 */ blr + +.global Think__7CRipperFfR13CStateManager +Think__7CRipperFfR13CStateManager: +/* 8015C578 001594D8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8015C57C 001594DC 7C 08 02 A6 */ mflr r0 +/* 8015C580 001594E0 90 01 00 24 */ stw r0, 0x24(r1) +/* 8015C584 001594E4 DB E1 00 18 */ stfd f31, 0x18(r1) +/* 8015C588 001594E8 FF E0 08 90 */ fmr f31, f1 +/* 8015C58C 001594EC 93 E1 00 14 */ stw r31, 0x14(r1) +/* 8015C590 001594F0 7C 7F 1B 78 */ mr r31, r3 +/* 8015C594 001594F4 93 C1 00 10 */ stw r30, 0x10(r1) +/* 8015C598 001594F8 7C 9E 23 78 */ mr r30, r4 +/* 8015C59C 001594FC 88 03 00 30 */ lbz r0, 0x30(r3) +/* 8015C5A0 00159500 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8015C5A4 00159504 41 82 00 D8 */ beq lbl_8015C67C +/* 8015C5A8 00159508 4B FF FA 8D */ bl sub_8015c034 +/* 8015C5AC 0015950C 80 9E 08 4C */ lwz r4, 0x84c(r30) +/* 8015C5B0 00159510 A0 BF 05 98 */ lhz r5, 0x598(r31) +/* 8015C5B4 00159514 80 64 04 90 */ lwz r3, 0x490(r4) +/* 8015C5B8 00159518 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8015C5BC 0015951C 80 63 07 40 */ lwz r3, 0x740(r3) +/* 8015C5C0 00159520 7C 05 00 40 */ cmplw r5, r0 +/* 8015C5C4 00159524 80 63 03 34 */ lwz r3, 0x334(r3) +/* 8015C5C8 00159528 41 82 00 1C */ beq lbl_8015C5E4 +/* 8015C5CC 0015952C A0 04 03 10 */ lhz r0, 0x310(r4) +/* 8015C5D0 00159530 7C 00 28 40 */ cmplw r0, r5 +/* 8015C5D4 00159534 40 82 00 10 */ bne lbl_8015C5E4 +/* 8015C5D8 00159538 80 04 03 B8 */ lwz r0, 0x3b8(r4) +/* 8015C5DC 0015953C 2C 00 00 00 */ cmpwi r0, 0 +/* 8015C5E0 00159540 40 82 00 40 */ bne lbl_8015C620 +lbl_8015C5E4: +/* 8015C5E4 00159544 FC 20 F8 90 */ fmr f1, f31 +/* 8015C5E8 00159548 7F E3 FB 78 */ mr r3, r31 +/* 8015C5EC 0015954C 7F C4 F3 78 */ mr r4, r30 +/* 8015C5F0 00159550 4B F1 D5 29 */ bl Think__10CPatternedFfR13CStateManager +/* 8015C5F4 00159554 88 1F 05 9C */ lbz r0, 0x59c(r31) +/* 8015C5F8 00159558 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8015C5FC 0015955C 41 82 00 80 */ beq lbl_8015C67C +/* 8015C600 00159560 7F E3 FB 78 */ mr r3, r31 +/* 8015C604 00159564 38 80 00 00 */ li r4, 0 +/* 8015C608 00159568 4B EF 6D E5 */ bl SetMuted__6CActorFb +/* 8015C60C 0015956C 88 1F 05 9C */ lbz r0, 0x59c(r31) +/* 8015C610 00159570 38 60 00 00 */ li r3, 0 +/* 8015C614 00159574 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8015C618 00159578 98 1F 05 9C */ stb r0, 0x59c(r31) +/* 8015C61C 0015957C 48 00 00 60 */ b lbl_8015C67C +lbl_8015C620: +/* 8015C620 00159580 2C 00 00 01 */ cmpwi r0, 1 +/* 8015C624 00159584 40 82 00 28 */ bne lbl_8015C64C +/* 8015C628 00159588 28 03 00 02 */ cmplwi r3, 2 +/* 8015C62C 0015958C 40 81 00 0C */ ble lbl_8015C638 +/* 8015C630 00159590 2C 03 00 03 */ cmpwi r3, 3 +/* 8015C634 00159594 40 82 00 18 */ bne lbl_8015C64C +lbl_8015C638: +/* 8015C638 00159598 FC 20 F8 90 */ fmr f1, f31 +/* 8015C63C 0015959C 7F E3 FB 78 */ mr r3, r31 +/* 8015C640 001595A0 7F C4 F3 78 */ mr r4, r30 +/* 8015C644 001595A4 4B F1 D4 D5 */ bl Think__10CPatternedFfR13CStateManager +/* 8015C648 001595A8 48 00 00 34 */ b lbl_8015C67C +lbl_8015C64C: +/* 8015C64C 001595AC 7F E3 FB 78 */ mr r3, r31 +/* 8015C650 001595B0 4B FB ED 29 */ bl Stop__13CPhysicsActorFv +/* 8015C654 001595B4 88 1F 05 9C */ lbz r0, 0x59c(r31) +/* 8015C658 001595B8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8015C65C 001595BC 40 82 00 20 */ bne lbl_8015C67C +/* 8015C660 001595C0 7F E3 FB 78 */ mr r3, r31 +/* 8015C664 001595C4 38 80 00 01 */ li r4, 1 +/* 8015C668 001595C8 4B EF 6D 85 */ bl SetMuted__6CActorFb +/* 8015C66C 001595CC 88 1F 05 9C */ lbz r0, 0x59c(r31) +/* 8015C670 001595D0 38 60 00 01 */ li r3, 1 +/* 8015C674 001595D4 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8015C678 001595D8 98 1F 05 9C */ stb r0, 0x59c(r31) +lbl_8015C67C: +/* 8015C67C 001595DC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8015C680 001595E0 CB E1 00 18 */ lfd f31, 0x18(r1) +/* 8015C684 001595E4 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 8015C688 001595E8 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 8015C68C 001595EC 7C 08 03 A6 */ mtlr r0 +/* 8015C690 001595F0 38 21 00 20 */ addi r1, r1, 0x20 +/* 8015C694 001595F4 4E 80 00 20 */ blr + +.global Accept__7CRipperFR8IVisitor +Accept__7CRipperFR8IVisitor: +/* 8015C698 001595F8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8015C69C 001595FC 7C 08 02 A6 */ mflr r0 +/* 8015C6A0 00159600 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015C6A4 00159604 7C 60 1B 78 */ mr r0, r3 +/* 8015C6A8 00159608 7C 83 23 78 */ mr r3, r4 +/* 8015C6AC 0015960C 81 84 00 00 */ lwz r12, 0(r4) +/* 8015C6B0 00159610 7C 04 03 78 */ mr r4, r0 +/* 8015C6B4 00159614 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8015C6B8 00159618 7D 89 03 A6 */ mtctr r12 +/* 8015C6BC 0015961C 4E 80 04 21 */ bctrl +/* 8015C6C0 00159620 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8015C6C4 00159624 7C 08 03 A6 */ mtlr r0 +/* 8015C6C8 00159628 38 21 00 10 */ addi r1, r1, 0x10 +/* 8015C6CC 0015962C 4E 80 00 20 */ blr + +.global __dt__7CRipperFv +__dt__7CRipperFv: +/* 8015C6D0 00159630 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8015C6D4 00159634 7C 08 02 A6 */ mflr r0 +/* 8015C6D8 00159638 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015C6DC 0015963C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8015C6E0 00159640 7C 9F 23 78 */ mr r31, r4 +/* 8015C6E4 00159644 93 C1 00 08 */ stw r30, 8(r1) +/* 8015C6E8 00159648 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8015C6EC 0015964C 41 82 00 28 */ beq lbl_8015C714 +/* 8015C6F0 00159650 3C A0 80 3E */ lis r5, lbl_803E3348@ha +/* 8015C6F4 00159654 38 80 00 00 */ li r4, 0 +/* 8015C6F8 00159658 38 05 33 48 */ addi r0, r5, lbl_803E3348@l +/* 8015C6FC 0015965C 90 1E 00 00 */ stw r0, 0(r30) +/* 8015C700 00159660 4B F1 AE 71 */ bl __dt__10CPatternedFv +/* 8015C704 00159664 7F E0 07 35 */ extsh. r0, r31 +/* 8015C708 00159668 40 81 00 0C */ ble lbl_8015C714 +/* 8015C70C 0015966C 7F C3 F3 78 */ mr r3, r30 +/* 8015C710 00159670 48 1B 92 21 */ bl Free__7CMemoryFPCv +lbl_8015C714: +/* 8015C714 00159674 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8015C718 00159678 7F C3 F3 78 */ mr r3, r30 +/* 8015C71C 0015967C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8015C720 00159680 83 C1 00 08 */ lwz r30, 8(r1) +/* 8015C724 00159684 7C 08 03 A6 */ mtlr r0 +/* 8015C728 00159688 38 21 00 10 */ addi r1, r1, 0x10 +/* 8015C72C 0015968C 4E 80 00 20 */ blr + +.global "__ct__7CRipperF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersRC18CGrappleParameters" +"__ct__7CRipperF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersRC18CGrappleParameters": +/* 8015C730 00159690 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 8015C734 00159694 7C 08 02 A6 */ mflr r0 +/* 8015C738 00159698 39 60 00 01 */ li r11, 1 +/* 8015C73C 0015969C 90 01 00 64 */ stw r0, 0x64(r1) +/* 8015C740 001596A0 81 81 00 68 */ lwz r12, 0x68(r1) +/* 8015C744 001596A4 BF 61 00 4C */ stmw r27, 0x4c(r1) +/* 8015C748 001596A8 7C DB 33 78 */ mr r27, r6 +/* 8015C74C 001596AC 7C FC 3B 78 */ mr r28, r7 +/* 8015C750 001596B0 7D 1E 43 78 */ mr r30, r8 +/* 8015C754 001596B4 7C A6 2B 78 */ mr r6, r5 +/* 8015C758 001596B8 83 A1 00 6C */ lwz r29, 0x6c(r1) +/* 8015C75C 001596BC 7C 7F 1B 78 */ mr r31, r3 +/* 8015C760 001596C0 7F 67 DB 78 */ mr r7, r27 +/* 8015C764 001596C4 7F 88 E3 78 */ mr r8, r28 +/* 8015C768 001596C8 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8015C76C 001596CC A0 04 00 00 */ lhz r0, 0(r4) +/* 8015C770 001596D0 7D 24 4B 78 */ mr r4, r9 +/* 8015C774 001596D4 7F C9 F3 78 */ mr r9, r30 +/* 8015C778 001596D8 B0 01 00 20 */ sth r0, 0x20(r1) +/* 8015C77C 001596DC 38 00 00 03 */ li r0, 3 +/* 8015C780 001596E0 91 41 00 08 */ stw r10, 8(r1) +/* 8015C784 001596E4 7C 8A 23 78 */ mr r10, r4 +/* 8015C788 001596E8 38 80 00 1F */ li r4, 0x1f +/* 8015C78C 001596EC 91 61 00 0C */ stw r11, 0xc(r1) +/* 8015C790 001596F0 91 61 00 10 */ stw r11, 0x10(r1) +/* 8015C794 001596F4 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015C798 001596F8 91 81 00 18 */ stw r12, 0x18(r1) +/* 8015C79C 001596FC 91 61 00 1C */ stw r11, 0x1c(r1) +/* 8015C7A0 00159700 4B F2 0C B1 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" +/* 8015C7A4 00159704 3C 60 80 3E */ lis r3, lbl_803E3348@ha +/* 8015C7A8 00159708 38 A0 00 00 */ li r5, 0 +/* 8015C7AC 0015970C 38 03 33 48 */ addi r0, r3, lbl_803E3348@l +/* 8015C7B0 00159710 38 80 00 01 */ li r4, 1 +/* 8015C7B4 00159714 90 1F 00 00 */ stw r0, 0(r31) +/* 8015C7B8 00159718 38 60 00 00 */ li r3, 0 +/* 8015C7BC 0015971C C0 1D 00 00 */ lfs f0, 0(r29) +/* 8015C7C0 00159720 D0 1F 05 68 */ stfs f0, 0x568(r31) +/* 8015C7C4 00159724 C0 1D 00 04 */ lfs f0, 4(r29) +/* 8015C7C8 00159728 D0 1F 05 6C */ stfs f0, 0x56c(r31) +/* 8015C7CC 0015972C C0 1D 00 08 */ lfs f0, 8(r29) +/* 8015C7D0 00159730 D0 1F 05 70 */ stfs f0, 0x570(r31) +/* 8015C7D4 00159734 C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 8015C7D8 00159738 D0 1F 05 74 */ stfs f0, 0x574(r31) +/* 8015C7DC 0015973C C0 1D 00 10 */ lfs f0, 0x10(r29) +/* 8015C7E0 00159740 D0 1F 05 78 */ stfs f0, 0x578(r31) +/* 8015C7E4 00159744 C0 1D 00 14 */ lfs f0, 0x14(r29) +/* 8015C7E8 00159748 D0 1F 05 7C */ stfs f0, 0x57c(r31) +/* 8015C7EC 0015974C C0 1D 00 18 */ lfs f0, 0x18(r29) +/* 8015C7F0 00159750 D0 1F 05 80 */ stfs f0, 0x580(r31) +/* 8015C7F4 00159754 C0 1D 00 1C */ lfs f0, 0x1c(r29) +/* 8015C7F8 00159758 D0 1F 05 84 */ stfs f0, 0x584(r31) +/* 8015C7FC 0015975C C0 1D 00 20 */ lfs f0, 0x20(r29) +/* 8015C800 00159760 D0 1F 05 88 */ stfs f0, 0x588(r31) +/* 8015C804 00159764 C0 1D 00 24 */ lfs f0, 0x24(r29) +/* 8015C808 00159768 D0 1F 05 8C */ stfs f0, 0x58c(r31) +/* 8015C80C 0015976C C0 1D 00 28 */ lfs f0, 0x28(r29) +/* 8015C810 00159770 D0 1F 05 90 */ stfs f0, 0x590(r31) +/* 8015C814 00159774 88 1D 00 2C */ lbz r0, 0x2c(r29) +/* 8015C818 00159778 98 1F 05 94 */ stb r0, 0x594(r31) +/* 8015C81C 0015977C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8015C820 00159780 B0 1F 05 98 */ sth r0, 0x598(r31) +/* 8015C824 00159784 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8015C828 00159788 B0 1F 05 9A */ sth r0, 0x59a(r31) +/* 8015C82C 0015978C 88 1F 05 9C */ lbz r0, 0x59c(r31) +/* 8015C830 00159790 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 8015C834 00159794 98 1F 05 9C */ stb r0, 0x59c(r31) +/* 8015C838 00159798 80 AD 8C BC */ lwz r5, lbl_805A787C@sda21(r13) +/* 8015C83C 0015979C 48 22 D6 B9 */ bl __shl2i +/* 8015C840 001597A0 80 AD 8C C0 */ lwz r5, lbl_805A7880@sda21(r13) +/* 8015C844 001597A4 7C 9D 23 78 */ mr r29, r4 +/* 8015C848 001597A8 7C 7E 1B 78 */ mr r30, r3 +/* 8015C84C 001597AC 38 60 00 00 */ li r3, 0 +/* 8015C850 001597B0 38 80 00 01 */ li r4, 1 +/* 8015C854 001597B4 48 22 D6 A1 */ bl __shl2i +/* 8015C858 001597B8 80 AD 8C C4 */ lwz r5, lbl_805A7884@sda21(r13) +/* 8015C85C 001597BC 7F BD 23 78 */ or r29, r29, r4 +/* 8015C860 001597C0 7F DE 1B 78 */ or r30, r30, r3 +/* 8015C864 001597C4 38 60 00 00 */ li r3, 0 +/* 8015C868 001597C8 38 80 00 01 */ li r4, 1 +/* 8015C86C 001597CC 48 22 D6 89 */ bl __shl2i +/* 8015C870 001597D0 80 AD 8C B8 */ lwz r5, lbl_805A7878@sda21(r13) +/* 8015C874 001597D4 7F BD 23 78 */ or r29, r29, r4 +/* 8015C878 001597D8 7F DE 1B 78 */ or r30, r30, r3 +/* 8015C87C 001597DC 38 60 00 00 */ li r3, 0 +/* 8015C880 001597E0 38 80 00 01 */ li r4, 1 +/* 8015C884 001597E4 48 22 D6 71 */ bl __shl2i +/* 8015C888 001597E8 38 00 00 03 */ li r0, 3 +/* 8015C88C 001597EC 90 81 00 2C */ stw r4, 0x2c(r1) +/* 8015C890 001597F0 38 81 00 28 */ addi r4, r1, 0x28 +/* 8015C894 001597F4 90 61 00 28 */ stw r3, 0x28(r1) +/* 8015C898 001597F8 7F E3 FB 78 */ mr r3, r31 +/* 8015C89C 001597FC 93 A1 00 34 */ stw r29, 0x34(r1) +/* 8015C8A0 00159800 93 C1 00 30 */ stw r30, 0x30(r1) +/* 8015C8A4 00159804 90 01 00 38 */ stw r0, 0x38(r1) +/* 8015C8A8 00159808 4B EF 6F F9 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +/* 8015C8AC 0015980C 38 7F 04 60 */ addi r3, r31, 0x460 +/* 8015C8B0 00159810 38 80 00 00 */ li r4, 0 +/* 8015C8B4 00159814 48 0D 74 B1 */ bl SetAutoResetImpulse__20CKnockBackControllerFb +/* 8015C8B8 00159818 38 7F 04 60 */ addi r3, r31, 0x460 +/* 8015C8BC 0015981C 38 80 00 01 */ li r4, 1 +/* 8015C8C0 00159820 38 A0 00 02 */ li r5, 2 +/* 8015C8C4 00159824 48 0D 74 D1 */ bl SetAnimationStateRange__20CKnockBackControllerF24EKnockBackAnimationState24EKnockBackAnimationState +/* 8015C8C8 00159828 7F E3 FB 78 */ mr r3, r31 +/* 8015C8CC 0015982C BB 61 00 4C */ lmw r27, 0x4c(r1) +/* 8015C8D0 00159830 80 01 00 64 */ lwz r0, 0x64(r1) +/* 8015C8D4 00159834 7C 08 03 A6 */ mtlr r0 +/* 8015C8D8 00159838 38 21 00 60 */ addi r1, r1, 0x60 +/* 8015C8DC 0015983C 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Enemies/CSpankWeed.s b/asm/Kyoto_CWD/Enemies/CSpankWeed.s new file mode 100644 index 00000000..15dc2fe0 --- /dev/null +++ b/asm/Kyoto_CWD/Enemies/CSpankWeed.s @@ -0,0 +1,2072 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__10CSpankWeedFv +__dt__10CSpankWeedFv: +/* 80154C08 00151B68 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80154C0C 00151B6C 7C 08 02 A6 */ mflr r0 +/* 80154C10 00151B70 90 01 00 14 */ stw r0, 0x14(r1) +/* 80154C14 00151B74 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80154C18 00151B78 7C 9F 23 78 */ mr r31, r4 +/* 80154C1C 00151B7C 93 C1 00 08 */ stw r30, 8(r1) +/* 80154C20 00151B80 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80154C24 00151B84 41 82 00 40 */ beq lbl_80154C64 +/* 80154C28 00151B88 3C 60 80 3E */ lis r3, lbl_803E2D28@ha +/* 80154C2C 00151B8C 34 1E 05 94 */ addic. r0, r30, 0x594 +/* 80154C30 00151B90 38 03 2D 28 */ addi r0, r3, lbl_803E2D28@l +/* 80154C34 00151B94 90 1E 00 00 */ stw r0, 0(r30) +/* 80154C38 00151B98 41 82 00 10 */ beq lbl_80154C48 +/* 80154C3C 00151B9C 80 7E 05 94 */ lwz r3, 0x594(r30) +/* 80154C40 00151BA0 38 80 00 01 */ li r4, 1 +/* 80154C44 00151BA4 48 05 2C 99 */ bl sub_801a78dc +lbl_80154C48: +/* 80154C48 00151BA8 7F C3 F3 78 */ mr r3, r30 +/* 80154C4C 00151BAC 38 80 00 00 */ li r4, 0 +/* 80154C50 00151BB0 4B F2 29 21 */ bl __dt__10CPatternedFv +/* 80154C54 00151BB4 7F E0 07 35 */ extsh. r0, r31 +/* 80154C58 00151BB8 40 81 00 0C */ ble lbl_80154C64 +/* 80154C5C 00151BBC 7F C3 F3 78 */ mr r3, r30 +/* 80154C60 00151BC0 48 1C 0C D1 */ bl Free__7CMemoryFPCv +lbl_80154C64: +/* 80154C64 00151BC4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80154C68 00151BC8 7F C3 F3 78 */ mr r3, r30 +/* 80154C6C 00151BCC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80154C70 00151BD0 83 C1 00 08 */ lwz r30, 8(r1) +/* 80154C74 00151BD4 7C 08 03 A6 */ mtlr r0 +/* 80154C78 00151BD8 38 21 00 10 */ addi r1, r1, 0x10 +/* 80154C7C 00151BDC 4E 80 00 20 */ blr + +.global Render__10CSpankWeedCFRC13CStateManager +Render__10CSpankWeedCFRC13CStateManager: +/* 80154C80 00151BE0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80154C84 00151BE4 7C 08 02 A6 */ mflr r0 +/* 80154C88 00151BE8 90 01 00 14 */ stw r0, 0x14(r1) +/* 80154C8C 00151BEC 4B F2 33 A1 */ bl Render__10CPatternedCFRC13CStateManager +/* 80154C90 00151BF0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80154C94 00151BF4 7C 08 03 A6 */ mtlr r0 +/* 80154C98 00151BF8 38 21 00 10 */ addi r1, r1, 0x10 +/* 80154C9C 00151BFC 4E 80 00 20 */ blr + +.global Attacked__10CSpankWeedFR13CStateManagerf +Attacked__10CSpankWeedFR13CStateManagerf: +/* 80154CA0 00151C00 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80154CA4 00151C04 7C 08 02 A6 */ mflr r0 +/* 80154CA8 00151C08 90 01 00 14 */ stw r0, 0x14(r1) +/* 80154CAC 00151C0C 48 0A 0F 35 */ bl Attacked__10CPatternedFR13CStateManagerf +/* 80154CB0 00151C10 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80154CB4 00151C14 7C 08 03 A6 */ mtlr r0 +/* 80154CB8 00151C18 38 21 00 10 */ addi r1, r1, 0x10 +/* 80154CBC 00151C1C 4E 80 00 20 */ blr + +.global sub_80154cc0 +sub_80154cc0: +/* 80154CC0 00151C20 80 03 05 BC */ lwz r0, 0x5bc(r3) +/* 80154CC4 00151C24 20 00 00 03 */ subfic r0, r0, 3 +/* 80154CC8 00151C28 7C 00 00 34 */ cntlzw r0, r0 +/* 80154CCC 00151C2C 54 03 D9 7E */ srwi r3, r0, 5 +/* 80154CD0 00151C30 4E 80 00 20 */ blr + +.global sub_80154cd4 +sub_80154cd4: +/* 80154CD4 00151C34 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80154CD8 00151C38 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 80154CDC 00151C3C C0 03 05 AC */ lfs f0, 0x5ac(r3) +/* 80154CE0 00151C40 C0 C4 00 50 */ lfs f6, 0x50(r4) +/* 80154CE4 00151C44 C0 44 00 40 */ lfs f2, 0x40(r4) +/* 80154CE8 00151C48 EC A6 00 28 */ fsubs f5, f6, f0 +/* 80154CEC 00151C4C C0 03 05 A8 */ lfs f0, 0x5a8(r3) +/* 80154CF0 00151C50 C0 E4 00 60 */ lfs f7, 0x60(r4) +/* 80154CF4 00151C54 EC 62 00 28 */ fsubs f3, f2, f0 +/* 80154CF8 00151C58 C0 23 05 B0 */ lfs f1, 0x5b0(r3) +/* 80154CFC 00151C5C EC 05 01 72 */ fmuls f0, f5, f5 +/* 80154D00 00151C60 EC 87 08 28 */ fsubs f4, f7, f1 +/* 80154D04 00151C64 D0 41 00 08 */ stfs f2, 8(r1) +/* 80154D08 00151C68 EC 23 00 F2 */ fmuls f1, f3, f3 +/* 80154D0C 00151C6C D0 C1 00 0C */ stfs f6, 0xc(r1) +/* 80154D10 00151C70 EC 44 01 32 */ fmuls f2, f4, f4 +/* 80154D14 00151C74 EC 01 00 2A */ fadds f0, f1, f0 +/* 80154D18 00151C78 D0 E1 00 10 */ stfs f7, 0x10(r1) +/* 80154D1C 00151C7C D0 61 00 14 */ stfs f3, 0x14(r1) +/* 80154D20 00151C80 EC 22 00 2A */ fadds f1, f2, f0 +/* 80154D24 00151C84 D0 A1 00 18 */ stfs f5, 0x18(r1) +/* 80154D28 00151C88 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 80154D2C 00151C8C 38 21 00 20 */ addi r1, r1, 0x20 +/* 80154D30 00151C90 4E 80 00 20 */ blr + +.global GetOrbitPosition__10CSpankWeedCFRC13CStateManager +GetOrbitPosition__10CSpankWeedCFRC13CStateManager: +/* 80154D34 00151C94 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80154D38 00151C98 7C 08 02 A6 */ mflr r0 +/* 80154D3C 00151C9C 90 01 00 24 */ stw r0, 0x24(r1) +/* 80154D40 00151CA0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80154D44 00151CA4 7C 9F 23 78 */ mr r31, r4 +/* 80154D48 00151CA8 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80154D4C 00151CAC 7C 7E 1B 78 */ mr r30, r3 +/* 80154D50 00151CB0 38 61 00 0C */ addi r3, r1, 0xc +/* 80154D54 00151CB4 4B F2 38 59 */ bl GetOrbitPosition__10CPatternedCFRC13CStateManager +/* 80154D58 00151CB8 C0 3F 03 38 */ lfs f1, 0x338(r31) +/* 80154D5C 00151CBC C0 02 9E 28 */ lfs f0, lbl_805ABB48@sda21(r2) +/* 80154D60 00151CC0 D0 21 00 08 */ stfs f1, 8(r1) +/* 80154D64 00151CC4 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80154D68 00151CC8 C0 E1 00 0C */ lfs f7, 0xc(r1) +/* 80154D6C 00151CCC C1 01 00 10 */ lfs f8, 0x10(r1) +/* 80154D70 00151CD0 C1 21 00 14 */ lfs f9, 0x14(r1) +/* 80154D74 00151CD4 40 80 00 0C */ bge lbl_80154D80 +/* 80154D78 00151CD8 38 62 9E 28 */ addi r3, r2, lbl_805ABB48@sda21 +/* 80154D7C 00151CDC 48 00 00 08 */ b lbl_80154D84 +lbl_80154D80: +/* 80154D80 00151CE0 38 61 00 08 */ addi r3, r1, 8 +lbl_80154D84: +/* 80154D84 00151CE4 80 9F 05 B4 */ lwz r4, 0x5b4(r31) +/* 80154D88 00151CE8 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 80154D8C 00151CEC C0 1F 05 9C */ lfs f0, 0x59c(r31) +/* 80154D90 00151CF0 2C 04 00 03 */ cmpwi r4, 3 +/* 80154D94 00151CF4 C0 7F 00 50 */ lfs f3, 0x50(r31) +/* 80154D98 00151CF8 C0 5F 05 A0 */ lfs f2, 0x5a0(r31) +/* 80154D9C 00151CFC EC C1 00 2A */ fadds f6, f1, f0 +/* 80154DA0 00151D00 C0 3F 00 60 */ lfs f1, 0x60(r31) +/* 80154DA4 00151D04 C0 1F 05 A4 */ lfs f0, 0x5a4(r31) +/* 80154DA8 00151D08 EC A3 10 2A */ fadds f5, f3, f2 +/* 80154DAC 00151D0C C1 43 00 00 */ lfs f10, 0(r3) +/* 80154DB0 00151D10 EC 81 00 2A */ fadds f4, f1, f0 +/* 80154DB4 00151D14 40 82 00 40 */ bne lbl_80154DF4 +/* 80154DB8 00151D18 80 1F 05 B8 */ lwz r0, 0x5b8(r31) +/* 80154DBC 00151D1C 2C 00 00 02 */ cmpwi r0, 2 +/* 80154DC0 00151D20 40 82 00 34 */ bne lbl_80154DF4 +/* 80154DC4 00151D24 C0 02 9E 2C */ lfs f0, lbl_805ABB4C@sda21(r2) +/* 80154DC8 00151D28 EC 46 02 B2 */ fmuls f2, f6, f10 +/* 80154DCC 00151D2C EC 25 02 B2 */ fmuls f1, f5, f10 +/* 80154DD0 00151D30 EC 60 50 28 */ fsubs f3, f0, f10 +/* 80154DD4 00151D34 EC 04 02 B2 */ fmuls f0, f4, f10 +/* 80154DD8 00151D38 EC 47 10 FA */ fmadds f2, f7, f3, f2 +/* 80154DDC 00151D3C EC 28 08 FA */ fmadds f1, f8, f3, f1 +/* 80154DE0 00151D40 EC 09 00 FA */ fmadds f0, f9, f3, f0 +/* 80154DE4 00151D44 D0 5E 00 00 */ stfs f2, 0(r30) +/* 80154DE8 00151D48 D0 3E 00 04 */ stfs f1, 4(r30) +/* 80154DEC 00151D4C D0 1E 00 08 */ stfs f0, 8(r30) +/* 80154DF0 00151D50 48 00 00 54 */ b lbl_80154E44 +lbl_80154DF4: +/* 80154DF4 00151D54 2C 04 00 02 */ cmpwi r4, 2 +/* 80154DF8 00151D58 40 82 00 40 */ bne lbl_80154E38 +/* 80154DFC 00151D5C 80 1F 05 B8 */ lwz r0, 0x5b8(r31) +/* 80154E00 00151D60 2C 00 00 03 */ cmpwi r0, 3 +/* 80154E04 00151D64 40 82 00 34 */ bne lbl_80154E38 +/* 80154E08 00151D68 C0 02 9E 2C */ lfs f0, lbl_805ABB4C@sda21(r2) +/* 80154E0C 00151D6C EC 47 02 B2 */ fmuls f2, f7, f10 +/* 80154E10 00151D70 EC 28 02 B2 */ fmuls f1, f8, f10 +/* 80154E14 00151D74 EC 60 50 28 */ fsubs f3, f0, f10 +/* 80154E18 00151D78 EC 09 02 B2 */ fmuls f0, f9, f10 +/* 80154E1C 00151D7C EC 46 10 FA */ fmadds f2, f6, f3, f2 +/* 80154E20 00151D80 EC 25 08 FA */ fmadds f1, f5, f3, f1 +/* 80154E24 00151D84 EC 04 00 FA */ fmadds f0, f4, f3, f0 +/* 80154E28 00151D88 D0 5E 00 00 */ stfs f2, 0(r30) +/* 80154E2C 00151D8C D0 3E 00 04 */ stfs f1, 4(r30) +/* 80154E30 00151D90 D0 1E 00 08 */ stfs f0, 8(r30) +/* 80154E34 00151D94 48 00 00 10 */ b lbl_80154E44 +lbl_80154E38: +/* 80154E38 00151D98 D0 FE 00 00 */ stfs f7, 0(r30) +/* 80154E3C 00151D9C D1 1E 00 04 */ stfs f8, 4(r30) +/* 80154E40 00151DA0 D1 3E 00 08 */ stfs f9, 8(r30) +lbl_80154E44: +/* 80154E44 00151DA4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80154E48 00151DA8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80154E4C 00151DAC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80154E50 00151DB0 7C 08 03 A6 */ mtlr r0 +/* 80154E54 00151DB4 38 21 00 20 */ addi r1, r1, 0x20 +/* 80154E58 00151DB8 4E 80 00 20 */ blr + +.global GetAimPosition__10CSpankWeedCFRC13CStateManagerf +GetAimPosition__10CSpankWeedCFRC13CStateManagerf: +/* 80154E5C 00151DBC 94 21 FE C0 */ stwu r1, -0x140(r1) +/* 80154E60 00151DC0 7C 08 02 A6 */ mflr r0 +/* 80154E64 00151DC4 90 01 01 44 */ stw r0, 0x144(r1) +/* 80154E68 00151DC8 DB E1 01 30 */ stfd f31, 0x130(r1) +/* 80154E6C 00151DCC F3 E1 01 38 */ psq_st f31, 312(r1), 0, qr0 +/* 80154E70 00151DD0 DB C1 01 20 */ stfd f30, 0x120(r1) +/* 80154E74 00151DD4 F3 C1 01 28 */ psq_st f30, 296(r1), 0, qr0 +/* 80154E78 00151DD8 DB A1 01 10 */ stfd f29, 0x110(r1) +/* 80154E7C 00151DDC F3 A1 01 18 */ psq_st f29, 280(r1), 0, qr0 +/* 80154E80 00151DE0 93 E1 01 0C */ stw r31, 0x10c(r1) +/* 80154E84 00151DE4 93 C1 01 08 */ stw r30, 0x108(r1) +/* 80154E88 00151DE8 93 A1 01 04 */ stw r29, 0x104(r1) +/* 80154E8C 00151DEC C0 02 9E 30 */ lfs f0, lbl_805ABB50@sda21(r2) +/* 80154E90 00151DF0 3C A0 80 5A */ lis r5, skZero3f@ha +/* 80154E94 00151DF4 C7 E5 66 A0 */ lfsu f31, skZero3f@l(r5) +/* 80154E98 00151DF8 7C 7D 1B 78 */ mr r29, r3 +/* 80154E9C 00151DFC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80154EA0 00151E00 7C 9E 23 78 */ mr r30, r4 +/* 80154EA4 00151E04 C3 C5 00 04 */ lfs f30, 4(r5) +/* 80154EA8 00151E08 C3 A5 00 08 */ lfs f29, 8(r5) +/* 80154EAC 00151E0C 40 81 00 18 */ ble lbl_80154EC4 +/* 80154EB0 00151E10 38 61 00 90 */ addi r3, r1, 0x90 +/* 80154EB4 00151E14 4B FC 6D FD */ bl PredictMotion__13CPhysicsActorCFf +/* 80154EB8 00151E18 C3 E1 00 90 */ lfs f31, 0x90(r1) +/* 80154EBC 00151E1C C3 C1 00 94 */ lfs f30, 0x94(r1) +/* 80154EC0 00151E20 C3 A1 00 98 */ lfs f29, 0x98(r1) +lbl_80154EC4: +/* 80154EC4 00151E24 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 80154EC8 00151E28 3C 60 80 3D */ lis r3, lbl_803D0230@ha +/* 80154ECC 00151E2C 38 83 02 30 */ addi r4, r3, lbl_803D0230@l +/* 80154ED0 00151E30 38 61 00 2C */ addi r3, r1, 0x2c +/* 80154ED4 00151E34 83 E5 00 10 */ lwz r31, 0x10(r5) +/* 80154ED8 00151E38 38 84 00 59 */ addi r4, r4, 0x59 +/* 80154EDC 00151E3C 4B EA FD DD */ bl string_l__4rstlFPCc +/* 80154EE0 00151E40 7F E4 FB 78 */ mr r4, r31 +/* 80154EE4 00151E44 38 61 00 0C */ addi r3, r1, 0xc +/* 80154EE8 00151E48 38 A1 00 2C */ addi r5, r1, 0x2c +/* 80154EEC 00151E4C 4B ED 99 4D */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80154EF0 00151E50 88 01 00 0C */ lbz r0, 0xc(r1) +/* 80154EF4 00151E54 38 61 00 2C */ addi r3, r1, 0x2c +/* 80154EF8 00151E58 98 01 00 10 */ stb r0, 0x10(r1) +/* 80154EFC 00151E5C 48 1E 8B E5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80154F00 00151E60 88 01 00 10 */ lbz r0, 0x10(r1) +/* 80154F04 00151E64 28 00 00 FF */ cmplwi r0, 0xff +/* 80154F08 00151E68 41 82 00 88 */ beq lbl_80154F90 +/* 80154F0C 00151E6C 98 01 00 08 */ stb r0, 8(r1) +/* 80154F10 00151E70 7F E4 FB 78 */ mr r4, r31 +/* 80154F14 00151E74 38 61 00 60 */ addi r3, r1, 0x60 +/* 80154F18 00151E78 38 A1 00 08 */ addi r5, r1, 8 +/* 80154F1C 00151E7C 38 C0 00 00 */ li r6, 0 +/* 80154F20 00151E80 4B ED 73 55 */ bl GetLocatorTransform__9CAnimDataCF6CSegIdPC13CCharAnimTime +/* 80154F24 00151E84 38 61 00 C4 */ addi r3, r1, 0xc4 +/* 80154F28 00151E88 38 81 00 60 */ addi r4, r1, 0x60 +/* 80154F2C 00151E8C 48 1B DC 49 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80154F30 00151E90 80 DE 00 64 */ lwz r6, 0x64(r30) +/* 80154F34 00151E94 38 61 00 20 */ addi r3, r1, 0x20 +/* 80154F38 00151E98 C0 01 00 F0 */ lfs f0, 0xf0(r1) +/* 80154F3C 00151E9C 38 9E 00 34 */ addi r4, r30, 0x34 +/* 80154F40 00151EA0 C0 26 00 08 */ lfs f1, 8(r6) +/* 80154F44 00151EA4 38 A1 00 3C */ addi r5, r1, 0x3c +/* 80154F48 00151EA8 C0 66 00 04 */ lfs f3, 4(r6) +/* 80154F4C 00151EAC C0 41 00 E0 */ lfs f2, 0xe0(r1) +/* 80154F50 00151EB0 EC 81 00 32 */ fmuls f4, f1, f0 +/* 80154F54 00151EB4 C0 26 00 00 */ lfs f1, 0(r6) +/* 80154F58 00151EB8 C0 01 00 D0 */ lfs f0, 0xd0(r1) +/* 80154F5C 00151EBC EC 43 00 B2 */ fmuls f2, f3, f2 +/* 80154F60 00151EC0 D0 81 00 44 */ stfs f4, 0x44(r1) +/* 80154F64 00151EC4 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80154F68 00151EC8 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 80154F6C 00151ECC D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 80154F70 00151ED0 48 1B DB 79 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 80154F74 00151ED4 C0 41 00 20 */ lfs f2, 0x20(r1) +/* 80154F78 00151ED8 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 80154F7C 00151EDC C0 01 00 28 */ lfs f0, 0x28(r1) +/* 80154F80 00151EE0 EF FF 10 2A */ fadds f31, f31, f2 +/* 80154F84 00151EE4 EF DE 08 2A */ fadds f30, f30, f1 +/* 80154F88 00151EE8 EF BD 00 2A */ fadds f29, f29, f0 +/* 80154F8C 00151EEC 48 00 00 34 */ b lbl_80154FC0 +lbl_80154F90: +/* 80154F90 00151EF0 7F C4 F3 78 */ mr r4, r30 +/* 80154F94 00151EF4 38 61 00 48 */ addi r3, r1, 0x48 +/* 80154F98 00151EF8 4B FC 59 95 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 80154F9C 00151EFC 38 61 00 14 */ addi r3, r1, 0x14 +/* 80154FA0 00151F00 38 81 00 48 */ addi r4, r1, 0x48 +/* 80154FA4 00151F04 48 1E 26 69 */ bl GetCenterPoint__6CAABoxCFv +/* 80154FA8 00151F08 C0 41 00 14 */ lfs f2, 0x14(r1) +/* 80154FAC 00151F0C C0 21 00 18 */ lfs f1, 0x18(r1) +/* 80154FB0 00151F10 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 80154FB4 00151F14 EF FF 10 2A */ fadds f31, f31, f2 +/* 80154FB8 00151F18 EF DE 08 2A */ fadds f30, f30, f1 +/* 80154FBC 00151F1C EF BD 00 2A */ fadds f29, f29, f0 +lbl_80154FC0: +/* 80154FC0 00151F20 D3 FD 00 00 */ stfs f31, 0(r29) +/* 80154FC4 00151F24 D3 DD 00 04 */ stfs f30, 4(r29) +/* 80154FC8 00151F28 D3 BD 00 08 */ stfs f29, 8(r29) +/* 80154FCC 00151F2C E3 E1 01 38 */ psq_l f31, 312(r1), 0, qr0 +/* 80154FD0 00151F30 CB E1 01 30 */ lfd f31, 0x130(r1) +/* 80154FD4 00151F34 E3 C1 01 28 */ psq_l f30, 296(r1), 0, qr0 +/* 80154FD8 00151F38 CB C1 01 20 */ lfd f30, 0x120(r1) +/* 80154FDC 00151F3C E3 A1 01 18 */ psq_l f29, 280(r1), 0, qr0 +/* 80154FE0 00151F40 CB A1 01 10 */ lfd f29, 0x110(r1) +/* 80154FE4 00151F44 83 E1 01 0C */ lwz r31, 0x10c(r1) +/* 80154FE8 00151F48 83 C1 01 08 */ lwz r30, 0x108(r1) +/* 80154FEC 00151F4C 80 01 01 44 */ lwz r0, 0x144(r1) +/* 80154FF0 00151F50 83 A1 01 04 */ lwz r29, 0x104(r1) +/* 80154FF4 00151F54 7C 08 03 A6 */ mtlr r0 +/* 80154FF8 00151F58 38 21 01 40 */ addi r1, r1, 0x140 +/* 80154FFC 00151F5C 4E 80 00 20 */ blr + +.global Flinch__10CSpankWeedFR13CStateManager9EStateMsgf +Flinch__10CSpankWeedFR13CStateManager9EStateMsgf: +/* 80155000 00151F60 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80155004 00151F64 7C 08 02 A6 */ mflr r0 +/* 80155008 00151F68 2C 05 00 01 */ cmpwi r5, 1 +/* 8015500C 00151F6C 90 01 00 34 */ stw r0, 0x34(r1) +/* 80155010 00151F70 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80155014 00151F74 41 82 00 44 */ beq lbl_80155058 +/* 80155018 00151F78 40 80 00 10 */ bge lbl_80155028 +/* 8015501C 00151F7C 2C 05 00 00 */ cmpwi r5, 0 +/* 80155020 00151F80 40 80 00 14 */ bge lbl_80155034 +/* 80155024 00151F84 48 00 01 34 */ b lbl_80155158 +lbl_80155028: +/* 80155028 00151F88 2C 05 00 03 */ cmpwi r5, 3 +/* 8015502C 00151F8C 40 80 01 2C */ bge lbl_80155158 +/* 80155030 00151F90 48 00 01 20 */ b lbl_80155150 +lbl_80155034: +/* 80155034 00151F94 38 A0 00 00 */ li r5, 0 +/* 80155038 00151F98 38 00 00 04 */ li r0, 4 +/* 8015503C 00151F9C 90 A3 05 BC */ stw r5, 0x5bc(r3) +/* 80155040 00151FA0 7C 86 23 78 */ mr r6, r4 +/* 80155044 00151FA4 38 80 00 29 */ li r4, 0x29 +/* 80155048 00151FA8 38 A0 00 28 */ li r5, 0x28 +/* 8015504C 00151FAC 90 03 05 B4 */ stw r0, 0x5b4(r3) +/* 80155050 00151FB0 4B EF EE 85 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +/* 80155054 00151FB4 48 00 01 04 */ b lbl_80155158 +lbl_80155058: +/* 80155058 00151FB8 80 03 05 BC */ lwz r0, 0x5bc(r3) +/* 8015505C 00151FBC 2C 00 00 01 */ cmpwi r0, 1 +/* 80155060 00151FC0 41 82 00 F8 */ beq lbl_80155158 +/* 80155064 00151FC4 40 80 00 10 */ bge lbl_80155074 +/* 80155068 00151FC8 2C 00 00 00 */ cmpwi r0, 0 +/* 8015506C 00151FCC 40 80 00 14 */ bge lbl_80155080 +/* 80155070 00151FD0 48 00 00 E8 */ b lbl_80155158 +lbl_80155074: +/* 80155074 00151FD4 2C 00 00 03 */ cmpwi r0, 3 +/* 80155078 00151FD8 40 80 00 E0 */ bge lbl_80155158 +/* 8015507C 00151FDC 48 00 00 B8 */ b lbl_80155134 +lbl_80155080: +/* 80155080 00151FE0 80 E3 04 50 */ lwz r7, 0x450(r3) +/* 80155084 00151FE4 80 07 02 B8 */ lwz r0, 0x2b8(r7) +/* 80155088 00151FE8 2C 00 00 06 */ cmpwi r0, 6 +/* 8015508C 00151FEC 40 82 00 10 */ bne lbl_8015509C +/* 80155090 00151FF0 38 00 00 02 */ li r0, 2 +/* 80155094 00151FF4 90 03 05 BC */ stw r0, 0x5bc(r3) +/* 80155098 00151FF8 48 00 00 C0 */ b lbl_80155158 +lbl_8015509C: +/* 8015509C 00151FFC 3C A0 80 3E */ lis r5, lbl_803DAA68@ha +/* 801550A0 00152000 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801550A4 00152004 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 801550A8 00152008 38 A5 AA 68 */ addi r5, r5, lbl_803DAA68@l +/* 801550AC 0015200C 3C 80 80 3E */ lis r4, lbl_803DAA44@ha +/* 801550B0 00152010 90 A1 00 08 */ stw r5, 8(r1) +/* 801550B4 00152014 38 A4 AA 44 */ addi r5, r4, lbl_803DAA44@l +/* 801550B8 00152018 C0 23 00 04 */ lfs f1, 4(r3) +/* 801550BC 0015201C C0 03 00 08 */ lfs f0, 8(r3) +/* 801550C0 00152020 38 C0 00 04 */ li r6, 4 +/* 801550C4 00152024 38 00 00 00 */ li r0, 0 +/* 801550C8 00152028 3B E7 00 04 */ addi r31, r7, 4 +/* 801550CC 0015202C 90 C1 00 0C */ stw r6, 0xc(r1) +/* 801550D0 00152030 38 80 00 04 */ li r4, 4 +/* 801550D4 00152034 7F E3 FB 78 */ mr r3, r31 +/* 801550D8 00152038 90 A1 00 08 */ stw r5, 8(r1) +/* 801550DC 0015203C D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801550E0 00152040 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 801550E4 00152044 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 801550E8 00152048 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801550EC 0015204C 4B FD C3 4D */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801550F0 00152050 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801550F4 00152054 3C 60 80 3E */ lis r3, lbl_803DAA44@ha +/* 801550F8 00152058 38 83 AA 44 */ addi r4, r3, lbl_803DAA44@l +/* 801550FC 0015205C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80155100 00152060 90 1F 00 F8 */ stw r0, 0xf8(r31) +/* 80155104 00152064 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80155108 00152068 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 8015510C 0015206C 80 61 00 14 */ lwz r3, 0x14(r1) +/* 80155110 00152070 90 BF 00 FC */ stw r5, 0xfc(r31) +/* 80155114 00152074 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 80155118 00152078 90 7F 01 00 */ stw r3, 0x100(r31) +/* 8015511C 0015207C 80 61 00 1C */ lwz r3, 0x1c(r1) +/* 80155120 00152080 90 BF 01 04 */ stw r5, 0x104(r31) +/* 80155124 00152084 90 81 00 08 */ stw r4, 8(r1) +/* 80155128 00152088 90 7F 01 08 */ stw r3, 0x108(r31) +/* 8015512C 0015208C 90 01 00 08 */ stw r0, 8(r1) +/* 80155130 00152090 48 00 00 28 */ b lbl_80155158 +lbl_80155134: +/* 80155134 00152094 80 83 04 50 */ lwz r4, 0x450(r3) +/* 80155138 00152098 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 8015513C 0015209C 2C 00 00 06 */ cmpwi r0, 6 +/* 80155140 001520A0 41 82 00 18 */ beq lbl_80155158 +/* 80155144 001520A4 38 00 00 03 */ li r0, 3 +/* 80155148 001520A8 90 03 05 BC */ stw r0, 0x5bc(r3) +/* 8015514C 001520AC 48 00 00 0C */ b lbl_80155158 +lbl_80155150: +/* 80155150 001520B0 38 00 00 04 */ li r0, 4 +/* 80155154 001520B4 90 03 05 B8 */ stw r0, 0x5b8(r3) +lbl_80155158: +/* 80155158 001520B8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8015515C 001520BC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80155160 001520C0 7C 08 03 A6 */ mtlr r0 +/* 80155164 001520C4 38 21 00 30 */ addi r1, r1, 0x30 +/* 80155168 001520C8 4E 80 00 20 */ blr + +.global Delay__10CSpankWeedFR13CStateManagerf +Delay__10CSpankWeedFR13CStateManagerf: +/* 8015516C 001520CC 88 03 04 00 */ lbz r0, 0x400(r3) +/* 80155170 001520D0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80155174 001520D4 41 82 00 34 */ beq lbl_801551A8 +/* 80155178 001520D8 C0 23 03 38 */ lfs f1, 0x338(r3) +/* 8015517C 001520DC C0 03 05 78 */ lfs f0, 0x578(r3) +/* 80155180 001520E0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80155184 001520E4 40 81 00 1C */ ble lbl_801551A0 +/* 80155188 001520E8 88 03 04 00 */ lbz r0, 0x400(r3) +/* 8015518C 001520EC 38 80 00 00 */ li r4, 0 +/* 80155190 001520F0 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 80155194 001520F4 98 03 04 00 */ stb r0, 0x400(r3) +/* 80155198 001520F8 38 60 00 01 */ li r3, 1 +/* 8015519C 001520FC 4E 80 00 20 */ blr +lbl_801551A0: +/* 801551A0 00152100 38 60 00 00 */ li r3, 0 +/* 801551A4 00152104 4E 80 00 20 */ blr +lbl_801551A8: +/* 801551A8 00152108 38 60 00 01 */ li r3, 1 +/* 801551AC 0015210C 4E 80 00 20 */ blr + +.global InRange__10CSpankWeedFR13CStateManagerf +InRange__10CSpankWeedFR13CStateManagerf: +/* 801551B0 00152110 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801551B4 00152114 7C 08 02 A6 */ mflr r0 +/* 801551B8 00152118 90 01 00 24 */ stw r0, 0x24(r1) +/* 801551BC 0015211C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801551C0 00152120 7C 9F 23 78 */ mr r31, r4 +/* 801551C4 00152124 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801551C8 00152128 7C 7E 1B 78 */ mr r30, r3 +/* 801551CC 0015212C 4B FF FB 09 */ bl sub_80154cd4 +/* 801551D0 00152130 C0 7E 05 6C */ lfs f3, 0x56c(r30) +/* 801551D4 00152134 C0 02 9E 30 */ lfs f0, lbl_805ABB50@sda21(r2) +/* 801551D8 00152138 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 801551DC 0015213C 40 81 00 54 */ ble lbl_80155230 +/* 801551E0 00152140 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 801551E4 00152144 38 60 00 00 */ li r3, 0 +/* 801551E8 00152148 C0 BE 00 60 */ lfs f5, 0x60(r30) +/* 801551EC 0015214C C0 04 00 60 */ lfs f0, 0x60(r4) +/* 801551F0 00152150 C0 9E 00 50 */ lfs f4, 0x50(r30) +/* 801551F4 00152154 EC 00 28 28 */ fsubs f0, f0, f5 +/* 801551F8 00152158 C0 5E 00 40 */ lfs f2, 0x40(r30) +/* 801551FC 0015215C D0 81 00 0C */ stfs f4, 0xc(r1) +/* 80155200 00152160 FC 00 02 10 */ fabs f0, f0 +/* 80155204 00152164 D0 41 00 08 */ stfs f2, 8(r1) +/* 80155208 00152168 D0 A1 00 10 */ stfs f5, 0x10(r1) +/* 8015520C 0015216C FC 00 00 18 */ frsp f0, f0 +/* 80155210 00152170 FC 00 18 40 */ fcmpo cr0, f0, f3 +/* 80155214 00152174 40 80 00 30 */ bge lbl_80155244 +/* 80155218 00152178 C0 1E 05 74 */ lfs f0, 0x574(r30) +/* 8015521C 0015217C EC 00 00 32 */ fmuls f0, f0, f0 +/* 80155220 00152180 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80155224 00152184 40 80 00 20 */ bge lbl_80155244 +/* 80155228 00152188 38 60 00 01 */ li r3, 1 +/* 8015522C 0015218C 48 00 00 18 */ b lbl_80155244 +lbl_80155230: +/* 80155230 00152190 C0 1E 05 74 */ lfs f0, 0x574(r30) +/* 80155234 00152194 EC 00 00 32 */ fmuls f0, f0, f0 +/* 80155238 00152198 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8015523C 0015219C 7C 00 00 26 */ mfcr r0 +/* 80155240 001521A0 54 03 0F FE */ srwi r3, r0, 0x1f +lbl_80155244: +/* 80155244 001521A4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80155248 001521A8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8015524C 001521AC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80155250 001521B0 7C 08 03 A6 */ mtlr r0 +/* 80155254 001521B4 38 21 00 20 */ addi r1, r1, 0x20 +/* 80155258 001521B8 4E 80 00 20 */ blr + +.global HearPlayer__10CSpankWeedFR13CStateManagerf +HearPlayer__10CSpankWeedFR13CStateManagerf: +/* 8015525C 001521BC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80155260 001521C0 7C 08 02 A6 */ mflr r0 +/* 80155264 001521C4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80155268 001521C8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8015526C 001521CC 7C 9F 23 78 */ mr r31, r4 +/* 80155270 001521D0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80155274 001521D4 7C 7E 1B 78 */ mr r30, r3 +/* 80155278 001521D8 4B FF FA 5D */ bl sub_80154cd4 +/* 8015527C 001521DC C0 7E 05 6C */ lfs f3, 0x56c(r30) +/* 80155280 001521E0 C0 02 9E 30 */ lfs f0, lbl_805ABB50@sda21(r2) +/* 80155284 001521E4 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 80155288 001521E8 40 81 00 54 */ ble lbl_801552DC +/* 8015528C 001521EC 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 80155290 001521F0 38 60 00 00 */ li r3, 0 +/* 80155294 001521F4 C0 BE 00 60 */ lfs f5, 0x60(r30) +/* 80155298 001521F8 C0 04 00 60 */ lfs f0, 0x60(r4) +/* 8015529C 001521FC C0 9E 00 50 */ lfs f4, 0x50(r30) +/* 801552A0 00152200 EC 00 28 28 */ fsubs f0, f0, f5 +/* 801552A4 00152204 C0 5E 00 40 */ lfs f2, 0x40(r30) +/* 801552A8 00152208 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 801552AC 0015220C FC 00 02 10 */ fabs f0, f0 +/* 801552B0 00152210 D0 41 00 08 */ stfs f2, 8(r1) +/* 801552B4 00152214 D0 A1 00 10 */ stfs f5, 0x10(r1) +/* 801552B8 00152218 FC 00 00 18 */ frsp f0, f0 +/* 801552BC 0015221C FC 00 18 40 */ fcmpo cr0, f0, f3 +/* 801552C0 00152220 40 80 00 30 */ bge lbl_801552F0 +/* 801552C4 00152224 C0 1E 05 70 */ lfs f0, 0x570(r30) +/* 801552C8 00152228 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801552CC 0015222C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801552D0 00152230 40 80 00 20 */ bge lbl_801552F0 +/* 801552D4 00152234 38 60 00 01 */ li r3, 1 +/* 801552D8 00152238 48 00 00 18 */ b lbl_801552F0 +lbl_801552DC: +/* 801552DC 0015223C C0 1E 05 70 */ lfs f0, 0x570(r30) +/* 801552E0 00152240 EC 00 00 32 */ fmuls f0, f0, f0 +/* 801552E4 00152244 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801552E8 00152248 7C 00 00 26 */ mfcr r0 +/* 801552EC 0015224C 54 03 0F FE */ srwi r3, r0, 0x1f +lbl_801552F0: +/* 801552F0 00152250 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801552F4 00152254 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801552F8 00152258 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801552FC 0015225C 7C 08 03 A6 */ mtlr r0 +/* 80155300 00152260 38 21 00 20 */ addi r1, r1, 0x20 +/* 80155304 00152264 4E 80 00 20 */ blr + +.global InDetectionRage__10CSpankWeedFR13CStateManagerf +InDetectionRage__10CSpankWeedFR13CStateManagerf: +/* 80155308 00152268 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8015530C 0015226C 7C 08 02 A6 */ mflr r0 +/* 80155310 00152270 90 01 00 24 */ stw r0, 0x24(r1) +/* 80155314 00152274 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80155318 00152278 7C 9F 23 78 */ mr r31, r4 +/* 8015531C 0015227C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80155320 00152280 7C 7E 1B 78 */ mr r30, r3 +/* 80155324 00152284 4B FF F9 B1 */ bl sub_80154cd4 +/* 80155328 00152288 C0 7E 05 6C */ lfs f3, 0x56c(r30) +/* 8015532C 0015228C C0 02 9E 30 */ lfs f0, lbl_805ABB50@sda21(r2) +/* 80155330 00152290 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 80155334 00152294 40 81 00 54 */ ble lbl_80155388 +/* 80155338 00152298 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 8015533C 0015229C 38 60 00 00 */ li r3, 0 +/* 80155340 001522A0 C0 BE 00 60 */ lfs f5, 0x60(r30) +/* 80155344 001522A4 C0 04 00 60 */ lfs f0, 0x60(r4) +/* 80155348 001522A8 C0 9E 00 50 */ lfs f4, 0x50(r30) +/* 8015534C 001522AC EC 00 28 28 */ fsubs f0, f0, f5 +/* 80155350 001522B0 C0 5E 00 40 */ lfs f2, 0x40(r30) +/* 80155354 001522B4 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 80155358 001522B8 FC 00 02 10 */ fabs f0, f0 +/* 8015535C 001522BC D0 41 00 08 */ stfs f2, 8(r1) +/* 80155360 001522C0 D0 A1 00 10 */ stfs f5, 0x10(r1) +/* 80155364 001522C4 FC 00 00 18 */ frsp f0, f0 +/* 80155368 001522C8 FC 00 18 40 */ fcmpo cr0, f0, f3 +/* 8015536C 001522CC 40 80 00 30 */ bge lbl_8015539C +/* 80155370 001522D0 C0 1E 05 68 */ lfs f0, 0x568(r30) +/* 80155374 001522D4 EC 00 00 32 */ fmuls f0, f0, f0 +/* 80155378 001522D8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8015537C 001522DC 40 80 00 20 */ bge lbl_8015539C +/* 80155380 001522E0 38 60 00 01 */ li r3, 1 +/* 80155384 001522E4 48 00 00 18 */ b lbl_8015539C +lbl_80155388: +/* 80155388 001522E8 C0 1E 05 68 */ lfs f0, 0x568(r30) +/* 8015538C 001522EC EC 00 00 32 */ fmuls f0, f0, f0 +/* 80155390 001522F0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80155394 001522F4 7C 00 00 26 */ mfcr r0 +/* 80155398 001522F8 54 03 0F FE */ srwi r3, r0, 0x1f +lbl_8015539C: +/* 8015539C 001522FC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801553A0 00152300 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801553A4 00152304 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 801553A8 00152308 7C 08 03 A6 */ mtlr r0 +/* 801553AC 0015230C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801553B0 00152310 4E 80 00 20 */ blr + +.global Attack__10CSpankWeedFR13CStateManager9EStateMsgf +Attack__10CSpankWeedFR13CStateManager9EStateMsgf: +/* 801553B4 00152314 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801553B8 00152318 7C 08 02 A6 */ mflr r0 +/* 801553BC 0015231C 2C 05 00 01 */ cmpwi r5, 1 +/* 801553C0 00152320 90 01 00 54 */ stw r0, 0x54(r1) +/* 801553C4 00152324 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801553C8 00152328 7C 7F 1B 78 */ mr r31, r3 +/* 801553CC 0015232C 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801553D0 00152330 41 82 00 D0 */ beq lbl_801554A0 +/* 801553D4 00152334 40 80 00 10 */ bge lbl_801553E4 +/* 801553D8 00152338 2C 05 00 00 */ cmpwi r5, 0 +/* 801553DC 0015233C 40 80 00 14 */ bge lbl_801553F0 +/* 801553E0 00152340 48 00 01 7C */ b lbl_8015555C +lbl_801553E4: +/* 801553E4 00152344 2C 05 00 03 */ cmpwi r5, 3 +/* 801553E8 00152348 40 80 01 74 */ bge lbl_8015555C +/* 801553EC 0015234C 48 00 01 68 */ b lbl_80155554 +lbl_801553F0: +/* 801553F0 00152350 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 801553F4 00152354 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801553F8 00152358 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 801553FC 0015235C 38 E4 AA 68 */ addi r7, r4, lbl_803DAA68@l +/* 80155400 00152360 3C 80 80 3E */ lis r4, lbl_803DA9D8@ha +/* 80155404 00152364 90 E1 00 24 */ stw r7, 0x24(r1) +/* 80155408 00152368 38 00 00 00 */ li r0, 0 +/* 8015540C 0015236C C0 23 00 04 */ lfs f1, 4(r3) +/* 80155410 00152370 C0 03 00 08 */ lfs f0, 8(r3) +/* 80155414 00152374 38 A4 A9 D8 */ addi r5, r4, lbl_803DA9D8@l +/* 80155418 00152378 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 8015541C 0015237C 38 C0 00 05 */ li r6, 5 +/* 80155420 00152380 90 C1 00 28 */ stw r6, 0x28(r1) +/* 80155424 00152384 38 80 00 05 */ li r4, 5 +/* 80155428 00152388 3B C3 00 04 */ addi r30, r3, 4 +/* 8015542C 0015238C 90 A1 00 24 */ stw r5, 0x24(r1) +/* 80155430 00152390 7F C3 F3 78 */ mr r3, r30 +/* 80155434 00152394 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80155438 00152398 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 8015543C 0015239C D0 21 00 34 */ stfs f1, 0x34(r1) +/* 80155440 001523A0 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 80155444 001523A4 98 01 00 3C */ stb r0, 0x3c(r1) +/* 80155448 001523A8 4B FD BF F1 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 8015544C 001523AC 80 01 00 28 */ lwz r0, 0x28(r1) +/* 80155450 001523B0 3C 60 80 3E */ lis r3, lbl_803DA9D8@ha +/* 80155454 001523B4 38 83 A9 D8 */ addi r4, r3, lbl_803DA9D8@l +/* 80155458 001523B8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8015545C 001523BC 90 1E 01 10 */ stw r0, 0x110(r30) +/* 80155460 001523C0 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l +/* 80155464 001523C4 80 A1 00 2C */ lwz r5, 0x2c(r1) +/* 80155468 001523C8 38 00 00 03 */ li r0, 3 +/* 8015546C 001523CC 80 C1 00 30 */ lwz r6, 0x30(r1) +/* 80155470 001523D0 90 BE 01 14 */ stw r5, 0x114(r30) +/* 80155474 001523D4 80 A1 00 34 */ lwz r5, 0x34(r1) +/* 80155478 001523D8 90 DE 01 18 */ stw r6, 0x118(r30) +/* 8015547C 001523DC 80 C1 00 38 */ lwz r6, 0x38(r1) +/* 80155480 001523E0 90 BE 01 1C */ stw r5, 0x11c(r30) +/* 80155484 001523E4 88 A1 00 3C */ lbz r5, 0x3c(r1) +/* 80155488 001523E8 90 DE 01 20 */ stw r6, 0x120(r30) +/* 8015548C 001523EC 98 BE 01 24 */ stb r5, 0x124(r30) +/* 80155490 001523F0 90 81 00 24 */ stw r4, 0x24(r1) +/* 80155494 001523F4 90 61 00 24 */ stw r3, 0x24(r1) +/* 80155498 001523F8 90 1F 05 B4 */ stw r0, 0x5b4(r31) +/* 8015549C 001523FC 48 00 00 C0 */ b lbl_8015555C +lbl_801554A0: +/* 801554A0 00152400 80 DF 04 50 */ lwz r6, 0x450(r31) +/* 801554A4 00152404 80 06 02 B8 */ lwz r0, 0x2b8(r6) +/* 801554A8 00152408 2C 00 00 07 */ cmpwi r0, 7 +/* 801554AC 0015240C 41 82 00 B0 */ beq lbl_8015555C +/* 801554B0 00152410 3C 80 80 3E */ lis r4, lbl_803DAA68@ha +/* 801554B4 00152414 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801554B8 00152418 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) +/* 801554BC 0015241C 38 A4 AA 68 */ addi r5, r4, lbl_803DAA68@l +/* 801554C0 00152420 3C 80 80 3E */ lis r4, lbl_803DA9D8@ha +/* 801554C4 00152424 90 A1 00 08 */ stw r5, 8(r1) +/* 801554C8 00152428 38 00 00 00 */ li r0, 0 +/* 801554CC 0015242C C0 23 00 04 */ lfs f1, 4(r3) +/* 801554D0 00152430 C0 03 00 08 */ lfs f0, 8(r3) +/* 801554D4 00152434 38 A4 A9 D8 */ addi r5, r4, lbl_803DA9D8@l +/* 801554D8 00152438 38 60 00 05 */ li r3, 5 +/* 801554DC 0015243C 3B C6 00 04 */ addi r30, r6, 4 +/* 801554E0 00152440 90 61 00 0C */ stw r3, 0xc(r1) +/* 801554E4 00152444 38 80 00 05 */ li r4, 5 +/* 801554E8 00152448 7F C3 F3 78 */ mr r3, r30 +/* 801554EC 0015244C 90 A1 00 08 */ stw r5, 8(r1) +/* 801554F0 00152450 90 01 00 10 */ stw r0, 0x10(r1) +/* 801554F4 00152454 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 801554F8 00152458 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 801554FC 0015245C D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80155500 00152460 98 01 00 20 */ stb r0, 0x20(r1) +/* 80155504 00152464 4B FD BF 35 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80155508 00152468 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8015550C 0015246C 3C 60 80 3E */ lis r3, lbl_803DA9D8@ha +/* 80155510 00152470 38 83 A9 D8 */ addi r4, r3, lbl_803DA9D8@l +/* 80155514 00152474 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80155518 00152478 90 1E 01 10 */ stw r0, 0x110(r30) +/* 8015551C 0015247C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80155520 00152480 80 61 00 10 */ lwz r3, 0x10(r1) +/* 80155524 00152484 80 A1 00 14 */ lwz r5, 0x14(r1) +/* 80155528 00152488 90 7E 01 14 */ stw r3, 0x114(r30) +/* 8015552C 0015248C 80 61 00 18 */ lwz r3, 0x18(r1) +/* 80155530 00152490 90 BE 01 18 */ stw r5, 0x118(r30) +/* 80155534 00152494 80 A1 00 1C */ lwz r5, 0x1c(r1) +/* 80155538 00152498 90 7E 01 1C */ stw r3, 0x11c(r30) +/* 8015553C 0015249C 88 61 00 20 */ lbz r3, 0x20(r1) +/* 80155540 001524A0 90 BE 01 20 */ stw r5, 0x120(r30) +/* 80155544 001524A4 90 81 00 08 */ stw r4, 8(r1) +/* 80155548 001524A8 98 7E 01 24 */ stb r3, 0x124(r30) +/* 8015554C 001524AC 90 01 00 08 */ stw r0, 8(r1) +/* 80155550 001524B0 48 00 00 0C */ b lbl_8015555C +lbl_80155554: +/* 80155554 001524B4 38 00 00 03 */ li r0, 3 +/* 80155558 001524B8 90 1F 05 B8 */ stw r0, 0x5b8(r31) +lbl_8015555C: +/* 8015555C 001524BC 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80155560 001524C0 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 80155564 001524C4 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 80155568 001524C8 7C 08 03 A6 */ mtlr r0 +/* 8015556C 001524CC 38 21 00 50 */ addi r1, r1, 0x50 +/* 80155570 001524D0 4E 80 00 20 */ blr + +.global TargetPatrol__10CSpankWeedFR13CStateManager9EStateMsgf +TargetPatrol__10CSpankWeedFR13CStateManager9EStateMsgf: +/* 80155574 001524D4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80155578 001524D8 7C 08 02 A6 */ mflr r0 +/* 8015557C 001524DC 2C 05 00 01 */ cmpwi r5, 1 +/* 80155580 001524E0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80155584 001524E4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80155588 001524E8 7C 9F 23 78 */ mr r31, r4 +/* 8015558C 001524EC 93 C1 00 08 */ stw r30, 8(r1) +/* 80155590 001524F0 7C 7E 1B 78 */ mr r30, r3 +/* 80155594 001524F4 41 82 00 50 */ beq lbl_801555E4 +/* 80155598 001524F8 40 80 00 10 */ bge lbl_801555A8 +/* 8015559C 001524FC 2C 05 00 00 */ cmpwi r5, 0 +/* 801555A0 00152500 40 80 00 14 */ bge lbl_801555B4 +/* 801555A4 00152504 48 00 00 40 */ b lbl_801555E4 +lbl_801555A8: +/* 801555A8 00152508 2C 05 00 03 */ cmpwi r5, 3 +/* 801555AC 0015250C 40 80 00 38 */ bge lbl_801555E4 +/* 801555B0 00152510 48 00 00 2C */ b lbl_801555DC +lbl_801555B4: +/* 801555B4 00152514 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 801555B8 00152518 38 80 00 03 */ li r4, 3 +/* 801555BC 0015251C 4B FE 54 1D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 801555C0 00152520 7F C3 F3 78 */ mr r3, r30 +/* 801555C4 00152524 7F E5 FB 78 */ mr r5, r31 +/* 801555C8 00152528 38 80 00 13 */ li r4, 0x13 +/* 801555CC 0015252C 4B EF E9 B5 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 801555D0 00152530 38 00 00 02 */ li r0, 2 +/* 801555D4 00152534 90 1E 05 B4 */ stw r0, 0x5b4(r30) +/* 801555D8 00152538 48 00 00 0C */ b lbl_801555E4 +lbl_801555DC: +/* 801555DC 0015253C 38 00 00 02 */ li r0, 2 +/* 801555E0 00152540 90 1E 05 B8 */ stw r0, 0x5b8(r30) +lbl_801555E4: +/* 801555E4 00152544 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801555E8 00152548 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801555EC 0015254C 83 C1 00 08 */ lwz r30, 8(r1) +/* 801555F0 00152550 7C 08 03 A6 */ mtlr r0 +/* 801555F4 00152554 38 21 00 10 */ addi r1, r1, 0x10 +/* 801555F8 00152558 4E 80 00 20 */ blr + +.global Lurk__10CSpankWeedFR13CStateManager9EStateMsgf +Lurk__10CSpankWeedFR13CStateManager9EStateMsgf: +/* 801555FC 0015255C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80155600 00152560 7C 08 02 A6 */ mflr r0 +/* 80155604 00152564 2C 05 00 01 */ cmpwi r5, 1 +/* 80155608 00152568 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015560C 0015256C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80155610 00152570 7C 9F 23 78 */ mr r31, r4 +/* 80155614 00152574 93 C1 00 08 */ stw r30, 8(r1) +/* 80155618 00152578 7C 7E 1B 78 */ mr r30, r3 +/* 8015561C 0015257C 41 82 00 60 */ beq lbl_8015567C +/* 80155620 00152580 40 80 00 10 */ bge lbl_80155630 +/* 80155624 00152584 2C 05 00 00 */ cmpwi r5, 0 +/* 80155628 00152588 40 80 00 14 */ bge lbl_8015563C +/* 8015562C 0015258C 48 00 00 50 */ b lbl_8015567C +lbl_80155630: +/* 80155630 00152590 2C 05 00 03 */ cmpwi r5, 3 +/* 80155634 00152594 40 80 00 48 */ bge lbl_8015567C +/* 80155638 00152598 48 00 00 3C */ b lbl_80155674 +lbl_8015563C: +/* 8015563C 0015259C 88 1E 04 E1 */ lbz r0, 0x4e1(r30) +/* 80155640 001525A0 38 60 00 01 */ li r3, 1 +/* 80155644 001525A4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80155648 001525A8 38 80 00 02 */ li r4, 2 +/* 8015564C 001525AC 98 1E 04 E1 */ stb r0, 0x4e1(r30) +/* 80155650 001525B0 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 80155654 001525B4 4B FE 53 85 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 80155658 001525B8 7F C3 F3 78 */ mr r3, r30 +/* 8015565C 001525BC 7F E5 FB 78 */ mr r5, r31 +/* 80155660 001525C0 38 80 00 13 */ li r4, 0x13 +/* 80155664 001525C4 4B EF E9 1D */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 80155668 001525C8 38 00 00 01 */ li r0, 1 +/* 8015566C 001525CC 90 1E 05 B4 */ stw r0, 0x5b4(r30) +/* 80155670 001525D0 48 00 00 0C */ b lbl_8015567C +lbl_80155674: +/* 80155674 001525D4 38 00 00 01 */ li r0, 1 +/* 80155678 001525D8 90 1E 05 B8 */ stw r0, 0x5b8(r30) +lbl_8015567C: +/* 8015567C 001525DC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80155680 001525E0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80155684 001525E4 83 C1 00 08 */ lwz r30, 8(r1) +/* 80155688 001525E8 7C 08 03 A6 */ mtlr r0 +/* 8015568C 001525EC 38 21 00 10 */ addi r1, r1, 0x10 +/* 80155690 001525F0 4E 80 00 20 */ blr + +.global FadeOut__10CSpankWeedFR13CStateManager9EStateMsgf +FadeOut__10CSpankWeedFR13CStateManager9EStateMsgf: +/* 80155694 001525F4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80155698 001525F8 7C 08 02 A6 */ mflr r0 +/* 8015569C 001525FC 2C 05 00 01 */ cmpwi r5, 1 +/* 801556A0 00152600 90 01 00 24 */ stw r0, 0x24(r1) +/* 801556A4 00152604 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801556A8 00152608 41 82 00 38 */ beq lbl_801556E0 +/* 801556AC 0015260C 40 80 00 10 */ bge lbl_801556BC +/* 801556B0 00152610 2C 05 00 00 */ cmpwi r5, 0 +/* 801556B4 00152614 40 80 00 14 */ bge lbl_801556C8 +/* 801556B8 00152618 48 00 01 00 */ b lbl_801557B8 +lbl_801556BC: +/* 801556BC 0015261C 2C 05 00 03 */ cmpwi r5, 3 +/* 801556C0 00152620 40 80 00 F8 */ bge lbl_801557B8 +/* 801556C4 00152624 48 00 00 EC */ b lbl_801557B0 +lbl_801556C8: +/* 801556C8 00152628 38 80 00 00 */ li r4, 0 +/* 801556CC 0015262C 38 00 00 06 */ li r0, 6 +/* 801556D0 00152630 90 83 05 BC */ stw r4, 0x5bc(r3) +/* 801556D4 00152634 98 83 05 7C */ stb r4, 0x57c(r3) +/* 801556D8 00152638 90 03 05 B4 */ stw r0, 0x5b4(r3) +/* 801556DC 0015263C 48 00 00 DC */ b lbl_801557B8 +lbl_801556E0: +/* 801556E0 00152640 80 03 05 BC */ lwz r0, 0x5bc(r3) +/* 801556E4 00152644 2C 00 00 01 */ cmpwi r0, 1 +/* 801556E8 00152648 41 82 00 D0 */ beq lbl_801557B8 +/* 801556EC 0015264C 40 80 00 10 */ bge lbl_801556FC +/* 801556F0 00152650 2C 00 00 00 */ cmpwi r0, 0 +/* 801556F4 00152654 40 80 00 14 */ bge lbl_80155708 +/* 801556F8 00152658 48 00 00 C0 */ b lbl_801557B8 +lbl_801556FC: +/* 801556FC 0015265C 2C 00 00 03 */ cmpwi r0, 3 +/* 80155700 00152660 40 80 00 B8 */ bge lbl_801557B8 +/* 80155704 00152664 48 00 00 90 */ b lbl_80155794 +lbl_80155708: +/* 80155708 00152668 80 83 04 50 */ lwz r4, 0x450(r3) +/* 8015570C 0015266C 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 80155710 00152670 2C 00 00 03 */ cmpwi r0, 3 +/* 80155714 00152674 40 82 00 10 */ bne lbl_80155724 +/* 80155718 00152678 38 00 00 02 */ li r0, 2 +/* 8015571C 0015267C 90 03 05 BC */ stw r0, 0x5bc(r3) +/* 80155720 00152680 48 00 00 98 */ b lbl_801557B8 +lbl_80155724: +/* 80155724 00152684 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80155728 00152688 38 C0 00 01 */ li r6, 1 +/* 8015572C 0015268C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80155730 00152690 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 80155734 00152694 90 01 00 08 */ stw r0, 8(r1) +/* 80155738 00152698 38 A3 A9 E4 */ addi r5, r3, lbl_803DA9E4@l +/* 8015573C 0015269C 38 00 00 00 */ li r0, 0 +/* 80155740 001526A0 3B E4 00 04 */ addi r31, r4, 4 +/* 80155744 001526A4 90 C1 00 0C */ stw r6, 0xc(r1) +/* 80155748 001526A8 7F E3 FB 78 */ mr r3, r31 +/* 8015574C 001526AC 38 80 00 01 */ li r4, 1 +/* 80155750 001526B0 90 A1 00 08 */ stw r5, 8(r1) +/* 80155754 001526B4 90 C1 00 10 */ stw r6, 0x10(r1) +/* 80155758 001526B8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015575C 001526BC 4B FD BC DD */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 80155760 001526C0 80 01 00 0C */ lwz r0, 0xc(r1) +/* 80155764 001526C4 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 80155768 001526C8 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l +/* 8015576C 001526CC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 80155770 001526D0 90 1F 00 C8 */ stw r0, 0xc8(r31) +/* 80155774 001526D4 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 80155778 001526D8 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 8015577C 001526DC 90 81 00 08 */ stw r4, 8(r1) +/* 80155780 001526E0 80 61 00 14 */ lwz r3, 0x14(r1) +/* 80155784 001526E4 90 BF 00 CC */ stw r5, 0xcc(r31) +/* 80155788 001526E8 90 7F 00 D0 */ stw r3, 0xd0(r31) +/* 8015578C 001526EC 90 01 00 08 */ stw r0, 8(r1) +/* 80155790 001526F0 48 00 00 28 */ b lbl_801557B8 +lbl_80155794: +/* 80155794 001526F4 80 83 04 50 */ lwz r4, 0x450(r3) +/* 80155798 001526F8 80 04 02 B8 */ lwz r0, 0x2b8(r4) +/* 8015579C 001526FC 2C 00 00 03 */ cmpwi r0, 3 +/* 801557A0 00152700 41 82 00 18 */ beq lbl_801557B8 +/* 801557A4 00152704 38 00 00 03 */ li r0, 3 +/* 801557A8 00152708 90 03 05 BC */ stw r0, 0x5bc(r3) +/* 801557AC 0015270C 48 00 00 0C */ b lbl_801557B8 +lbl_801557B0: +/* 801557B0 00152710 38 00 00 06 */ li r0, 6 +/* 801557B4 00152714 90 03 05 B8 */ stw r0, 0x5b8(r3) +lbl_801557B8: +/* 801557B8 00152718 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801557BC 0015271C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 801557C0 00152720 7C 08 03 A6 */ mtlr r0 +/* 801557C4 00152724 38 21 00 20 */ addi r1, r1, 0x20 +/* 801557C8 00152728 4E 80 00 20 */ blr + +.global FadeIn__10CSpankWeedFR13CStateManager9EStateMsgf +FadeIn__10CSpankWeedFR13CStateManager9EStateMsgf: +/* 801557CC 0015272C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801557D0 00152730 7C 08 02 A6 */ mflr r0 +/* 801557D4 00152734 2C 05 00 01 */ cmpwi r5, 1 +/* 801557D8 00152738 90 01 00 24 */ stw r0, 0x24(r1) +/* 801557DC 0015273C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801557E0 00152740 7C 7F 1B 78 */ mr r31, r3 +/* 801557E4 00152744 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801557E8 00152748 41 82 00 3C */ beq lbl_80155824 +/* 801557EC 0015274C 40 80 00 10 */ bge lbl_801557FC +/* 801557F0 00152750 2C 05 00 00 */ cmpwi r5, 0 +/* 801557F4 00152754 40 80 00 14 */ bge lbl_80155808 +/* 801557F8 00152758 48 00 01 04 */ b lbl_801558FC +lbl_801557FC: +/* 801557FC 0015275C 2C 05 00 03 */ cmpwi r5, 3 +/* 80155800 00152760 40 80 00 FC */ bge lbl_801558FC +/* 80155804 00152764 48 00 00 F0 */ b lbl_801558F4 +lbl_80155808: +/* 80155808 00152768 38 00 00 00 */ li r0, 0 +/* 8015580C 0015276C 38 60 00 01 */ li r3, 1 +/* 80155810 00152770 90 1F 05 BC */ stw r0, 0x5bc(r31) +/* 80155814 00152774 38 00 00 05 */ li r0, 5 +/* 80155818 00152778 98 7F 05 7C */ stb r3, 0x57c(r31) +/* 8015581C 0015277C 90 1F 05 B4 */ stw r0, 0x5b4(r31) +/* 80155820 00152780 48 00 00 DC */ b lbl_801558FC +lbl_80155824: +/* 80155824 00152784 80 1F 05 BC */ lwz r0, 0x5bc(r31) +/* 80155828 00152788 2C 00 00 01 */ cmpwi r0, 1 +/* 8015582C 0015278C 41 82 00 D0 */ beq lbl_801558FC +/* 80155830 00152790 40 80 00 10 */ bge lbl_80155840 +/* 80155834 00152794 2C 00 00 00 */ cmpwi r0, 0 +/* 80155838 00152798 40 80 00 14 */ bge lbl_8015584C +/* 8015583C 0015279C 48 00 00 C0 */ b lbl_801558FC +lbl_80155840: +/* 80155840 001527A0 2C 00 00 03 */ cmpwi r0, 3 +/* 80155844 001527A4 40 80 00 B8 */ bge lbl_801558FC +/* 80155848 001527A8 48 00 00 90 */ b lbl_801558D8 +lbl_8015584C: +/* 8015584C 001527AC 80 DF 04 50 */ lwz r6, 0x450(r31) +/* 80155850 001527B0 80 06 02 B8 */ lwz r0, 0x2b8(r6) +/* 80155854 001527B4 2C 00 00 03 */ cmpwi r0, 3 +/* 80155858 001527B8 40 82 00 10 */ bne lbl_80155868 +/* 8015585C 001527BC 38 00 00 02 */ li r0, 2 +/* 80155860 001527C0 90 1F 05 BC */ stw r0, 0x5bc(r31) +/* 80155864 001527C4 48 00 00 98 */ b lbl_801558FC +lbl_80155868: +/* 80155868 001527C8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 8015586C 001527CC 38 00 00 00 */ li r0, 0 +/* 80155870 001527D0 38 83 AA 68 */ addi r4, r3, lbl_803DAA68@l +/* 80155874 001527D4 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 80155878 001527D8 90 81 00 08 */ stw r4, 8(r1) +/* 8015587C 001527DC 38 A3 A9 E4 */ addi r5, r3, lbl_803DA9E4@l +/* 80155880 001527E0 38 60 00 01 */ li r3, 1 +/* 80155884 001527E4 3B C6 00 04 */ addi r30, r6, 4 +/* 80155888 001527E8 90 61 00 0C */ stw r3, 0xc(r1) +/* 8015588C 001527EC 7F C3 F3 78 */ mr r3, r30 +/* 80155890 001527F0 38 80 00 01 */ li r4, 1 +/* 80155894 001527F4 90 A1 00 08 */ stw r5, 8(r1) +/* 80155898 001527F8 90 01 00 10 */ stw r0, 0x10(r1) +/* 8015589C 001527FC 90 01 00 14 */ stw r0, 0x14(r1) +/* 801558A0 00152800 4B FD BB 99 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd +/* 801558A4 00152804 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801558A8 00152808 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha +/* 801558AC 0015280C 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l +/* 801558B0 00152810 3C 60 80 3E */ lis r3, lbl_803DAA68@ha +/* 801558B4 00152814 90 1E 00 C8 */ stw r0, 0xc8(r30) +/* 801558B8 00152818 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l +/* 801558BC 0015281C 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 801558C0 00152820 90 81 00 08 */ stw r4, 8(r1) +/* 801558C4 00152824 80 61 00 14 */ lwz r3, 0x14(r1) +/* 801558C8 00152828 90 BE 00 CC */ stw r5, 0xcc(r30) +/* 801558CC 0015282C 90 7E 00 D0 */ stw r3, 0xd0(r30) +/* 801558D0 00152830 90 01 00 08 */ stw r0, 8(r1) +/* 801558D4 00152834 48 00 00 28 */ b lbl_801558FC +lbl_801558D8: +/* 801558D8 00152838 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 801558DC 0015283C 80 03 02 B8 */ lwz r0, 0x2b8(r3) +/* 801558E0 00152840 2C 00 00 03 */ cmpwi r0, 3 +/* 801558E4 00152844 41 82 00 18 */ beq lbl_801558FC +/* 801558E8 00152848 38 00 00 03 */ li r0, 3 +/* 801558EC 0015284C 90 1F 05 BC */ stw r0, 0x5bc(r31) +/* 801558F0 00152850 48 00 00 0C */ b lbl_801558FC +lbl_801558F4: +/* 801558F4 00152854 38 00 00 05 */ li r0, 5 +/* 801558F8 00152858 90 1F 05 B8 */ stw r0, 0x5b8(r31) +lbl_801558FC: +/* 801558FC 0015285C 88 1F 00 E7 */ lbz r0, 0xe7(r31) +/* 80155900 00152860 38 60 00 01 */ li r3, 1 +/* 80155904 00152864 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 80155908 00152868 98 1F 00 E7 */ stb r0, 0xe7(r31) +/* 8015590C 0015286C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80155910 00152870 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80155914 00152874 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80155918 00152878 7C 08 03 A6 */ mtlr r0 +/* 8015591C 0015287C 38 21 00 20 */ addi r1, r1, 0x20 +/* 80155920 00152880 4E 80 00 20 */ blr + +.global Patrol__10CSpankWeedFR13CStateManager9EStateMsgf +Patrol__10CSpankWeedFR13CStateManager9EStateMsgf: +/* 80155924 00152884 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80155928 00152888 7C 08 02 A6 */ mflr r0 +/* 8015592C 0015288C 2C 05 00 01 */ cmpwi r5, 1 +/* 80155930 00152890 90 01 00 14 */ stw r0, 0x14(r1) +/* 80155934 00152894 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80155938 00152898 7C 9F 23 78 */ mr r31, r4 +/* 8015593C 0015289C 93 C1 00 08 */ stw r30, 8(r1) +/* 80155940 001528A0 7C 7E 1B 78 */ mr r30, r3 +/* 80155944 001528A4 41 82 00 D4 */ beq lbl_80155A18 +/* 80155948 001528A8 40 80 00 10 */ bge lbl_80155958 +/* 8015594C 001528AC 2C 05 00 00 */ cmpwi r5, 0 +/* 80155950 001528B0 40 80 00 14 */ bge lbl_80155964 +/* 80155954 001528B4 48 00 00 C4 */ b lbl_80155A18 +lbl_80155958: +/* 80155958 001528B8 2C 05 00 03 */ cmpwi r5, 3 +/* 8015595C 001528BC 40 80 00 BC */ bge lbl_80155A18 +/* 80155960 001528C0 48 00 00 6C */ b lbl_801559CC +lbl_80155964: +/* 80155964 001528C4 88 1E 04 E1 */ lbz r0, 0x4e1(r30) +/* 80155968 001528C8 38 60 00 00 */ li r3, 0 +/* 8015596C 001528CC 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80155970 001528D0 38 80 00 01 */ li r4, 1 +/* 80155974 001528D4 98 1E 04 E1 */ stb r0, 0x4e1(r30) +/* 80155978 001528D8 80 7E 04 50 */ lwz r3, 0x450(r30) +/* 8015597C 001528DC 4B FE 50 5D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType +/* 80155980 001528E0 7F C3 F3 78 */ mr r3, r30 +/* 80155984 001528E4 7F E6 FB 78 */ mr r6, r31 +/* 80155988 001528E8 38 80 00 13 */ li r4, 0x13 +/* 8015598C 001528EC 38 A0 00 27 */ li r5, 0x27 +/* 80155990 001528F0 4B EF E5 45 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +/* 80155994 001528F4 7F C3 F3 78 */ mr r3, r30 +/* 80155998 001528F8 7F E6 FB 78 */ mr r6, r31 +/* 8015599C 001528FC 38 80 00 29 */ li r4, 0x29 +/* 801559A0 00152900 38 A0 00 28 */ li r5, 0x28 +/* 801559A4 00152904 4B EF E5 31 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +/* 801559A8 00152908 80 7E 05 94 */ lwz r3, 0x594(r30) +/* 801559AC 0015290C 7F E4 FB 78 */ mr r4, r31 +/* 801559B0 00152910 38 A0 00 00 */ li r5, 0 +/* 801559B4 00152914 48 05 19 45 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +/* 801559B8 00152918 38 60 00 01 */ li r3, 1 +/* 801559BC 0015291C 38 00 00 00 */ li r0, 0 +/* 801559C0 00152920 98 7E 05 98 */ stb r3, 0x598(r30) +/* 801559C4 00152924 90 1E 05 B4 */ stw r0, 0x5b4(r30) +/* 801559C8 00152928 48 00 00 50 */ b lbl_80155A18 +lbl_801559CC: +/* 801559CC 0015292C 7F E7 FB 78 */ mr r7, r31 +/* 801559D0 00152930 38 80 00 29 */ li r4, 0x29 +/* 801559D4 00152934 38 A0 00 28 */ li r5, 0x28 +/* 801559D8 00152938 38 C0 00 27 */ li r6, 0x27 +/* 801559DC 0015293C 4B EF E8 09 */ bl AddMaterial__6CActorF14EMaterialTypes14EMaterialTypes14EMaterialTypesR13CStateManager +/* 801559E0 00152940 7F C3 F3 78 */ mr r3, r30 +/* 801559E4 00152944 38 9E 05 84 */ addi r4, r30, 0x584 +/* 801559E8 00152948 4B EF D4 A5 */ bl SetTranslation__6CActorFRC9CVector3f +/* 801559EC 0015294C 80 7E 05 94 */ lwz r3, 0x594(r30) +/* 801559F0 00152950 7F E4 FB 78 */ mr r4, r31 +/* 801559F4 00152954 38 A0 00 01 */ li r5, 1 +/* 801559F8 00152958 48 05 19 01 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +/* 801559FC 0015295C 38 80 00 00 */ li r4, 0 +/* 80155A00 00152960 38 60 00 01 */ li r3, 1 +/* 80155A04 00152964 98 9E 05 98 */ stb r4, 0x598(r30) +/* 80155A08 00152968 88 1E 04 E1 */ lbz r0, 0x4e1(r30) +/* 80155A0C 0015296C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80155A10 00152970 98 1E 04 E1 */ stb r0, 0x4e1(r30) +/* 80155A14 00152974 90 9E 05 B8 */ stw r4, 0x5b8(r30) +lbl_80155A18: +/* 80155A18 00152978 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80155A1C 0015297C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80155A20 00152980 83 C1 00 08 */ lwz r30, 8(r1) +/* 80155A24 00152984 7C 08 03 A6 */ mtlr r0 +/* 80155A28 00152988 38 21 00 10 */ addi r1, r1, 0x10 +/* 80155A2C 0015298C 4E 80 00 20 */ blr + +.global KnockBack__10CSpankWeedFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef +KnockBack__10CSpankWeedFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef: +/* 80155A30 00152990 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80155A34 00152994 7C 08 02 A6 */ mflr r0 +/* 80155A38 00152998 90 01 00 14 */ stw r0, 0x14(r1) +/* 80155A3C 0015299C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80155A40 001529A0 7C 7F 1B 78 */ mr r31, r3 +/* 80155A44 001529A4 88 03 05 7C */ lbz r0, 0x57c(r3) +/* 80155A48 001529A8 28 00 00 00 */ cmplwi r0, 0 +/* 80155A4C 001529AC 41 82 00 10 */ beq lbl_80155A5C +/* 80155A50 001529B0 4B F2 4D 2D */ bl KnockBack__10CPatternedFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef +/* 80155A54 001529B4 38 00 00 00 */ li r0, 0 +/* 80155A58 001529B8 98 1F 05 7C */ stb r0, 0x57c(r31) +lbl_80155A5C: +/* 80155A5C 001529BC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80155A60 001529C0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80155A64 001529C4 7C 08 03 A6 */ mtlr r0 +/* 80155A68 001529C8 38 21 00 10 */ addi r1, r1, 0x10 +/* 80155A6C 001529CC 4E 80 00 20 */ blr + +.global Think__10CSpankWeedFfR13CStateManager +Think__10CSpankWeedFfR13CStateManager: +/* 80155A70 001529D0 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 80155A74 001529D4 7C 08 02 A6 */ mflr r0 +/* 80155A78 001529D8 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 80155A7C 001529DC DB E1 00 D0 */ stfd f31, 0xd0(r1) +/* 80155A80 001529E0 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 +/* 80155A84 001529E4 DB C1 00 C0 */ stfd f30, 0xc0(r1) +/* 80155A88 001529E8 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 +/* 80155A8C 001529EC DB A1 00 B0 */ stfd f29, 0xb0(r1) +/* 80155A90 001529F0 F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0 +/* 80155A94 001529F4 DB 81 00 A0 */ stfd f28, 0xa0(r1) +/* 80155A98 001529F8 F3 81 00 A8 */ psq_st f28, 168(r1), 0, qr0 +/* 80155A9C 001529FC DB 61 00 90 */ stfd f27, 0x90(r1) +/* 80155AA0 00152A00 F3 61 00 98 */ psq_st f27, 152(r1), 0, qr0 +/* 80155AA4 00152A04 DB 41 00 80 */ stfd f26, 0x80(r1) +/* 80155AA8 00152A08 F3 41 00 88 */ psq_st f26, 136(r1), 0, qr0 +/* 80155AAC 00152A0C DB 21 00 70 */ stfd f25, 0x70(r1) +/* 80155AB0 00152A10 F3 21 00 78 */ psq_st f25, 120(r1), 0, qr0 +/* 80155AB4 00152A14 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 80155AB8 00152A18 93 C1 00 68 */ stw r30, 0x68(r1) +/* 80155ABC 00152A1C 88 03 00 30 */ lbz r0, 0x30(r3) +/* 80155AC0 00152A20 FF 20 08 90 */ fmr f25, f1 +/* 80155AC4 00152A24 7C 7E 1B 78 */ mr r30, r3 +/* 80155AC8 00152A28 7C 9F 23 78 */ mr r31, r4 +/* 80155ACC 00152A2C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80155AD0 00152A30 41 82 00 F0 */ beq lbl_80155BC0 +/* 80155AD4 00152A34 81 83 00 00 */ lwz r12, 0(r3) +/* 80155AD8 00152A38 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80155ADC 00152A3C 7D 89 03 A6 */ mtctr r12 +/* 80155AE0 00152A40 4E 80 04 21 */ bctrl +/* 80155AE4 00152A44 C0 02 9E 34 */ lfs f0, lbl_805ABB54@sda21(r2) +/* 80155AE8 00152A48 D0 03 00 00 */ stfs f0, 0(r3) +/* 80155AEC 00152A4C 88 1E 05 98 */ lbz r0, 0x598(r30) +/* 80155AF0 00152A50 28 00 00 00 */ cmplwi r0, 0 +/* 80155AF4 00152A54 40 82 00 BC */ bne lbl_80155BB0 +/* 80155AF8 00152A58 80 BE 00 64 */ lwz r5, 0x64(r30) +/* 80155AFC 00152A5C 3C 60 80 3D */ lis r3, lbl_803D0230@ha +/* 80155B00 00152A60 38 83 02 30 */ addi r4, r3, lbl_803D0230@l +/* 80155B04 00152A64 38 61 00 14 */ addi r3, r1, 0x14 +/* 80155B08 00152A68 C3 85 00 00 */ lfs f28, 0(r5) +/* 80155B0C 00152A6C 38 84 00 6C */ addi r4, r4, 0x6c +/* 80155B10 00152A70 C3 65 00 04 */ lfs f27, 4(r5) +/* 80155B14 00152A74 C3 45 00 08 */ lfs f26, 8(r5) +/* 80155B18 00152A78 4B EA F1 A1 */ bl string_l__4rstlFPCc +/* 80155B1C 00152A7C 7F C4 F3 78 */ mr r4, r30 +/* 80155B20 00152A80 38 61 00 30 */ addi r3, r1, 0x30 +/* 80155B24 00152A84 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80155B28 00152A88 4B EF D3 D9 */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80155B2C 00152A8C C3 A1 00 5C */ lfs f29, 0x5c(r1) +/* 80155B30 00152A90 38 61 00 14 */ addi r3, r1, 0x14 +/* 80155B34 00152A94 C3 C1 00 4C */ lfs f30, 0x4c(r1) +/* 80155B38 00152A98 C3 E1 00 3C */ lfs f31, 0x3c(r1) +/* 80155B3C 00152A9C 48 1E 7F A5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80155B40 00152AA0 EC 5C 07 F2 */ fmuls f2, f28, f31 +/* 80155B44 00152AA4 38 61 00 08 */ addi r3, r1, 8 +/* 80155B48 00152AA8 EC 3B 07 B2 */ fmuls f1, f27, f30 +/* 80155B4C 00152AAC 38 9E 00 34 */ addi r4, r30, 0x34 +/* 80155B50 00152AB0 EC 1A 07 72 */ fmuls f0, f26, f29 +/* 80155B54 00152AB4 38 A1 00 24 */ addi r5, r1, 0x24 +/* 80155B58 00152AB8 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 80155B5C 00152ABC D0 21 00 28 */ stfs f1, 0x28(r1) +/* 80155B60 00152AC0 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 80155B64 00152AC4 48 1B CF 1D */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 80155B68 00152AC8 C0 41 00 08 */ lfs f2, 8(r1) +/* 80155B6C 00152ACC 7F C3 F3 78 */ mr r3, r30 +/* 80155B70 00152AD0 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 80155B74 00152AD4 38 81 00 24 */ addi r4, r1, 0x24 +/* 80155B78 00152AD8 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 80155B7C 00152ADC D0 41 00 24 */ stfs f2, 0x24(r1) +/* 80155B80 00152AE0 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 80155B84 00152AE4 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 80155B88 00152AE8 4B FC 4E B1 */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f +/* 80155B8C 00152AEC FC 20 C8 90 */ fmr f1, f25 +/* 80155B90 00152AF0 80 7E 05 94 */ lwz r3, 0x594(r30) +/* 80155B94 00152AF4 7F E4 FB 78 */ mr r4, r31 +/* 80155B98 00152AF8 38 A0 00 00 */ li r5, 0 +/* 80155B9C 00152AFC 48 05 18 B5 */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions +/* 80155BA0 00152B00 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 80155BA4 00152B04 38 60 00 01 */ li r3, 1 +/* 80155BA8 00152B08 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 80155BAC 00152B0C 98 1E 00 E4 */ stb r0, 0xe4(r30) +lbl_80155BB0: +/* 80155BB0 00152B10 FC 20 C8 90 */ fmr f1, f25 +/* 80155BB4 00152B14 7F C3 F3 78 */ mr r3, r30 +/* 80155BB8 00152B18 7F E4 FB 78 */ mr r4, r31 +/* 80155BBC 00152B1C 4B F2 3F 5D */ bl Think__10CPatternedFfR13CStateManager +lbl_80155BC0: +/* 80155BC0 00152B20 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 +/* 80155BC4 00152B24 CB E1 00 D0 */ lfd f31, 0xd0(r1) +/* 80155BC8 00152B28 E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 +/* 80155BCC 00152B2C CB C1 00 C0 */ lfd f30, 0xc0(r1) +/* 80155BD0 00152B30 E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0 +/* 80155BD4 00152B34 CB A1 00 B0 */ lfd f29, 0xb0(r1) +/* 80155BD8 00152B38 E3 81 00 A8 */ psq_l f28, 168(r1), 0, qr0 +/* 80155BDC 00152B3C CB 81 00 A0 */ lfd f28, 0xa0(r1) +/* 80155BE0 00152B40 E3 61 00 98 */ psq_l f27, 152(r1), 0, qr0 +/* 80155BE4 00152B44 CB 61 00 90 */ lfd f27, 0x90(r1) +/* 80155BE8 00152B48 E3 41 00 88 */ psq_l f26, 136(r1), 0, qr0 +/* 80155BEC 00152B4C CB 41 00 80 */ lfd f26, 0x80(r1) +/* 80155BF0 00152B50 E3 21 00 78 */ psq_l f25, 120(r1), 0, qr0 +/* 80155BF4 00152B54 CB 21 00 70 */ lfd f25, 0x70(r1) +/* 80155BF8 00152B58 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 80155BFC 00152B5C 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 80155C00 00152B60 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 80155C04 00152B64 7C 08 03 A6 */ mtlr r0 +/* 80155C08 00152B68 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 80155C0C 00152B6C 4E 80 00 20 */ blr + +.global AcceptScriptMsg__10CSpankWeedF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__10CSpankWeedF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 80155C10 00152B70 94 21 FD A0 */ stwu r1, -0x260(r1) +/* 80155C14 00152B74 7C 08 02 A6 */ mflr r0 +/* 80155C18 00152B78 90 01 02 64 */ stw r0, 0x264(r1) +/* 80155C1C 00152B7C DB E1 02 50 */ stfd f31, 0x250(r1) +/* 80155C20 00152B80 F3 E1 02 58 */ psq_st f31, 600(r1), 0, qr0 +/* 80155C24 00152B84 DB C1 02 40 */ stfd f30, 0x240(r1) +/* 80155C28 00152B88 F3 C1 02 48 */ psq_st f30, 584(r1), 0, qr0 +/* 80155C2C 00152B8C DB A1 02 30 */ stfd f29, 0x230(r1) +/* 80155C30 00152B90 F3 A1 02 38 */ psq_st f29, 568(r1), 0, qr0 +/* 80155C34 00152B94 BE E1 02 0C */ stmw r23, 0x20c(r1) +/* 80155C38 00152B98 7C 7F 1B 78 */ mr r31, r3 +/* 80155C3C 00152B9C 7C 9C 23 78 */ mr r28, r4 +/* 80155C40 00152BA0 88 03 00 30 */ lbz r0, 0x30(r3) +/* 80155C44 00152BA4 2C 1C 00 1E */ cmpwi r28, 0x1e +/* 80155C48 00152BA8 7C BD 2B 78 */ mr r29, r5 +/* 80155C4C 00152BAC 7C DE 33 78 */ mr r30, r6 +/* 80155C50 00152BB0 54 1B CF FE */ rlwinm r27, r0, 0x19, 0x1f, 0x1f +/* 80155C54 00152BB4 41 82 03 A8 */ beq lbl_80155FFC +/* 80155C58 00152BB8 40 80 00 1C */ bge lbl_80155C74 +/* 80155C5C 00152BBC 2C 1C 00 05 */ cmpwi r28, 5 +/* 80155C60 00152BC0 41 82 05 0C */ beq lbl_8015616C +/* 80155C64 00152BC4 40 80 05 60 */ bge lbl_801561C4 +/* 80155C68 00152BC8 2C 1C 00 01 */ cmpwi r28, 1 +/* 80155C6C 00152BCC 41 82 04 E0 */ beq lbl_8015614C +/* 80155C70 00152BD0 48 00 05 54 */ b lbl_801561C4 +lbl_80155C74: +/* 80155C74 00152BD4 2C 1C 00 22 */ cmpwi r28, 0x22 +/* 80155C78 00152BD8 41 82 04 B0 */ beq lbl_80156128 +/* 80155C7C 00152BDC 40 80 00 10 */ bge lbl_80155C8C +/* 80155C80 00152BE0 2C 1C 00 21 */ cmpwi r28, 0x21 +/* 80155C84 00152BE4 40 80 00 14 */ bge lbl_80155C98 +/* 80155C88 00152BE8 48 00 05 3C */ b lbl_801561C4 +lbl_80155C8C: +/* 80155C8C 00152BEC 2C 1C 00 30 */ cmpwi r28, 0x30 +/* 80155C90 00152BF0 41 82 05 1C */ beq lbl_801561AC +/* 80155C94 00152BF4 48 00 05 30 */ b lbl_801561C4 +lbl_80155C98: +/* 80155C98 00152BF8 80 7F 04 50 */ lwz r3, 0x450(r31) +/* 80155C9C 00152BFC 88 03 03 00 */ lbz r0, 0x300(r3) +/* 80155CA0 00152C00 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80155CA4 00152C04 40 82 00 7C */ bne lbl_80155D20 +/* 80155CA8 00152C08 7F C4 F3 78 */ mr r4, r30 +/* 80155CAC 00152C0C 4B FE 50 45 */ bl Activate__15CBodyControllerFR13CStateManager +/* 80155CB0 00152C10 7F E4 FB 78 */ mr r4, r31 +/* 80155CB4 00152C14 38 61 01 14 */ addi r3, r1, 0x114 +/* 80155CB8 00152C18 4B FC 4C 75 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 80155CBC 00152C1C C0 61 01 20 */ lfs f3, 0x120(r1) +/* 80155CC0 00152C20 7F E3 FB 78 */ mr r3, r31 +/* 80155CC4 00152C24 C0 41 01 14 */ lfs f2, 0x114(r1) +/* 80155CC8 00152C28 38 81 00 FC */ addi r4, r1, 0xfc +/* 80155CCC 00152C2C C0 21 01 28 */ lfs f1, 0x128(r1) +/* 80155CD0 00152C30 C0 01 01 1C */ lfs f0, 0x11c(r1) +/* 80155CD4 00152C34 EC 63 10 28 */ fsubs f3, f3, f2 +/* 80155CD8 00152C38 C0 82 9E 38 */ lfs f4, lbl_805ABB58@sda21(r2) +/* 80155CDC 00152C3C EC 41 00 28 */ fsubs f2, f1, f0 +/* 80155CE0 00152C40 C0 21 01 24 */ lfs f1, 0x124(r1) +/* 80155CE4 00152C44 EC 64 00 F2 */ fmuls f3, f4, f3 +/* 80155CE8 00152C48 C0 01 01 18 */ lfs f0, 0x118(r1) +/* 80155CEC 00152C4C EC A4 00 B2 */ fmuls f5, f4, f2 +/* 80155CF0 00152C50 EC 41 00 28 */ fsubs f2, f1, f0 +/* 80155CF4 00152C54 D0 61 01 08 */ stfs f3, 0x108(r1) +/* 80155CF8 00152C58 FC 20 18 50 */ fneg f1, f3 +/* 80155CFC 00152C5C FC 00 28 50 */ fneg f0, f5 +/* 80155D00 00152C60 D0 A1 01 10 */ stfs f5, 0x110(r1) +/* 80155D04 00152C64 EC 44 00 B2 */ fmuls f2, f4, f2 +/* 80155D08 00152C68 D0 21 00 FC */ stfs f1, 0xfc(r1) +/* 80155D0C 00152C6C FC 20 10 50 */ fneg f1, f2 +/* 80155D10 00152C70 D0 01 01 04 */ stfs f0, 0x104(r1) +/* 80155D14 00152C74 D0 41 01 0C */ stfs f2, 0x10c(r1) +/* 80155D18 00152C78 D0 21 01 00 */ stfs f1, 0x100(r1) +/* 80155D1C 00152C7C 4B FC 49 3D */ bl SetBoundingBox__13CPhysicsActorFRC6CAABox +lbl_80155D20: +/* 80155D20 00152C80 38 00 00 00 */ li r0, 0 +/* 80155D24 00152C84 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 80155D28 00152C88 90 01 00 BC */ stw r0, 0xbc(r1) +/* 80155D2C 00152C8C 38 80 00 0C */ li r4, 0xc +/* 80155D30 00152C90 90 01 00 C0 */ stw r0, 0xc0(r1) +/* 80155D34 00152C94 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 80155D38 00152C98 48 00 0A 81 */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" +/* 80155D3C 00152C9C 3C 60 80 3D */ lis r3, lbl_803D01F8@ha +/* 80155D40 00152CA0 3B 21 01 AC */ addi r25, r1, 0x1ac +/* 80155D44 00152CA4 3B 43 01 F8 */ addi r26, r3, lbl_803D01F8@l +/* 80155D48 00152CA8 3B 01 01 F0 */ addi r24, r1, 0x1f0 +/* 80155D4C 00152CAC 3A E0 00 00 */ li r23, 0 +lbl_80155D50: +/* 80155D50 00152CB0 80 9A 00 00 */ lwz r4, 0(r26) +/* 80155D54 00152CB4 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 80155D58 00152CB8 4B EA EF 61 */ bl string_l__4rstlFPCc +/* 80155D5C 00152CBC 80 9F 00 64 */ lwz r4, 0x64(r31) +/* 80155D60 00152CC0 38 61 00 10 */ addi r3, r1, 0x10 +/* 80155D64 00152CC4 38 A1 00 A8 */ addi r5, r1, 0xa8 +/* 80155D68 00152CC8 80 84 00 10 */ lwz r4, 0x10(r4) +/* 80155D6C 00152CCC 4B ED 8A CD */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80155D70 00152CD0 88 01 00 10 */ lbz r0, 0x10(r1) +/* 80155D74 00152CD4 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 80155D78 00152CD8 98 01 00 14 */ stb r0, 0x14(r1) +/* 80155D7C 00152CDC 48 1E 7D 65 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80155D80 00152CE0 88 01 00 14 */ lbz r0, 0x14(r1) +/* 80155D84 00152CE4 28 00 00 FF */ cmplwi r0, 0xff +/* 80155D88 00152CE8 41 82 00 E0 */ beq lbl_80155E68 +/* 80155D8C 00152CEC 80 9A 00 00 */ lwz r4, 0(r26) +/* 80155D90 00152CF0 38 61 00 98 */ addi r3, r1, 0x98 +/* 80155D94 00152CF4 4B EA EF 25 */ bl string_l__4rstlFPCc +/* 80155D98 00152CF8 88 01 00 14 */ lbz r0, 0x14(r1) +/* 80155D9C 00152CFC 38 61 01 80 */ addi r3, r1, 0x180 +/* 80155DA0 00152D00 C0 3A 00 04 */ lfs f1, 4(r26) +/* 80155DA4 00152D04 38 81 00 0C */ addi r4, r1, 0xc +/* 80155DA8 00152D08 98 01 00 0C */ stb r0, 0xc(r1) +/* 80155DAC 00152D0C 38 A1 00 98 */ addi r5, r1, 0x98 +/* 80155DB0 00152D10 C0 42 9E 3C */ lfs f2, lbl_805ABB5C@sda21(r2) +/* 80155DB4 00152D14 48 05 2A 59 */ bl "SphereCollision__26CJointCollisionDescriptionF6CSegIdfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" +/* 80155DB8 00152D18 80 E1 01 80 */ lwz r7, 0x180(r1) +/* 80155DBC 00152D1C 7F 03 C3 78 */ mr r3, r24 +/* 80155DC0 00152D20 80 C1 01 84 */ lwz r6, 0x184(r1) +/* 80155DC4 00152D24 7F 24 CB 78 */ mr r4, r25 +/* 80155DC8 00152D28 88 A1 01 88 */ lbz r5, 0x188(r1) +/* 80155DCC 00152D2C 88 01 01 89 */ lbz r0, 0x189(r1) +/* 80155DD0 00152D30 C0 E1 01 8C */ lfs f7, 0x18c(r1) +/* 80155DD4 00152D34 C0 C1 01 90 */ lfs f6, 0x190(r1) +/* 80155DD8 00152D38 C0 A1 01 94 */ lfs f5, 0x194(r1) +/* 80155DDC 00152D3C C0 81 01 98 */ lfs f4, 0x198(r1) +/* 80155DE0 00152D40 C0 61 01 9C */ lfs f3, 0x19c(r1) +/* 80155DE4 00152D44 C0 41 01 A0 */ lfs f2, 0x1a0(r1) +/* 80155DE8 00152D48 C0 21 01 A4 */ lfs f1, 0x1a4(r1) +/* 80155DEC 00152D4C C0 01 01 A8 */ lfs f0, 0x1a8(r1) +/* 80155DF0 00152D50 90 E1 01 C4 */ stw r7, 0x1c4(r1) +/* 80155DF4 00152D54 90 C1 01 C8 */ stw r6, 0x1c8(r1) +/* 80155DF8 00152D58 98 A1 01 CC */ stb r5, 0x1cc(r1) +/* 80155DFC 00152D5C 98 01 01 CD */ stb r0, 0x1cd(r1) +/* 80155E00 00152D60 D0 E1 01 D0 */ stfs f7, 0x1d0(r1) +/* 80155E04 00152D64 D0 C1 01 D4 */ stfs f6, 0x1d4(r1) +/* 80155E08 00152D68 D0 A1 01 D8 */ stfs f5, 0x1d8(r1) +/* 80155E0C 00152D6C D0 81 01 DC */ stfs f4, 0x1dc(r1) +/* 80155E10 00152D70 D0 61 01 E0 */ stfs f3, 0x1e0(r1) +/* 80155E14 00152D74 D0 41 01 E4 */ stfs f2, 0x1e4(r1) +/* 80155E18 00152D78 D0 21 01 E8 */ stfs f1, 0x1e8(r1) +/* 80155E1C 00152D7C D0 01 01 EC */ stfs f0, 0x1ec(r1) +/* 80155E20 00152D80 48 1E 83 41 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80155E24 00152D84 A0 01 01 BC */ lhz r0, 0x1bc(r1) +/* 80155E28 00152D88 28 19 00 00 */ cmplwi r25, 0 +/* 80155E2C 00152D8C C0 01 01 C0 */ lfs f0, 0x1c0(r1) +/* 80155E30 00152D90 B0 01 02 00 */ sth r0, 0x200(r1) +/* 80155E34 00152D94 D0 01 02 04 */ stfs f0, 0x204(r1) +/* 80155E38 00152D98 41 82 00 0C */ beq lbl_80155E44 +/* 80155E3C 00152D9C 7F 23 CB 78 */ mr r3, r25 +/* 80155E40 00152DA0 48 1E 7C A1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80155E44: +/* 80155E44 00152DA4 38 61 00 98 */ addi r3, r1, 0x98 +/* 80155E48 00152DA8 48 1E 7C 99 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80155E4C 00152DAC 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 80155E50 00152DB0 38 81 01 C4 */ addi r4, r1, 0x1c4 +/* 80155E54 00152DB4 48 00 03 DD */ bl sub_80156230 +/* 80155E58 00152DB8 28 18 00 00 */ cmplwi r24, 0 +/* 80155E5C 00152DBC 41 82 00 0C */ beq lbl_80155E68 +/* 80155E60 00152DC0 7F 03 C3 78 */ mr r3, r24 +/* 80155E64 00152DC4 48 1E 7C 7D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80155E68: +/* 80155E68 00152DC8 3A F7 00 01 */ addi r23, r23, 1 +/* 80155E6C 00152DCC 3B 5A 00 08 */ addi r26, r26, 8 +/* 80155E70 00152DD0 28 17 00 07 */ cmplwi r23, 7 +/* 80155E74 00152DD4 41 80 FE DC */ blt lbl_80155D50 +/* 80155E78 00152DD8 3C 80 80 3D */ lis r4, lbl_803D0230@ha +/* 80155E7C 00152DDC 38 60 00 18 */ li r3, 0x18 +/* 80155E80 00152DE0 38 84 02 30 */ addi r4, r4, lbl_803D0230@l +/* 80155E84 00152DE4 38 A0 00 00 */ li r5, 0 +/* 80155E88 00152DE8 38 84 00 70 */ addi r4, r4, 0x70 +/* 80155E8C 00152DEC 48 1B F9 E1 */ bl __nw__FUlPCcPCc +/* 80155E90 00152DF0 7C 77 1B 79 */ or. r23, r3, r3 +/* 80155E94 00152DF4 41 82 00 3C */ beq lbl_80155ED0 +/* 80155E98 00152DF8 88 1F 00 30 */ lbz r0, 0x30(r31) +/* 80155E9C 00152DFC 7F C4 F3 78 */ mr r4, r30 +/* 80155EA0 00152E00 81 3F 00 04 */ lwz r9, 4(r31) +/* 80155EA4 00152E04 38 A1 00 48 */ addi r5, r1, 0x48 +/* 80155EA8 00152E08 54 08 CF FE */ rlwinm r8, r0, 0x19, 0x1f, 0x1f +/* 80155EAC 00152E0C 38 C1 00 54 */ addi r6, r1, 0x54 +/* 80155EB0 00152E10 91 21 00 54 */ stw r9, 0x54(r1) +/* 80155EB4 00152E14 38 E1 00 B8 */ addi r7, r1, 0xb8 +/* 80155EB8 00152E18 A0 1F 00 08 */ lhz r0, 8(r31) +/* 80155EBC 00152E1C 91 21 00 50 */ stw r9, 0x50(r1) +/* 80155EC0 00152E20 B0 01 00 44 */ sth r0, 0x44(r1) +/* 80155EC4 00152E24 B0 01 00 48 */ sth r0, 0x48(r1) +/* 80155EC8 00152E28 48 05 1A 69 */ bl "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b" +/* 80155ECC 00152E2C 7C 77 1B 78 */ mr r23, r3 +lbl_80155ED0: +/* 80155ED0 00152E30 80 7F 05 94 */ lwz r3, 0x594(r31) +/* 80155ED4 00152E34 38 80 00 01 */ li r4, 1 +/* 80155ED8 00152E38 48 05 1A 05 */ bl sub_801a78dc +/* 80155EDC 00152E3C 92 FF 05 94 */ stw r23, 0x594(r31) +/* 80155EE0 00152E40 38 00 00 00 */ li r0, 0 +/* 80155EE4 00152E44 38 60 00 00 */ li r3, 0 +/* 80155EE8 00152E48 38 80 00 01 */ li r4, 1 +/* 80155EEC 00152E4C 80 AD 8C 84 */ lwz r5, lbl_805A7844@sda21(r13) +/* 80155EF0 00152E50 90 01 00 6C */ stw r0, 0x6c(r1) +/* 80155EF4 00152E54 90 01 00 68 */ stw r0, 0x68(r1) +/* 80155EF8 00152E58 48 23 3F FD */ bl __shl2i +/* 80155EFC 00152E5C 80 01 00 68 */ lwz r0, 0x68(r1) +/* 80155F00 00152E60 80 C1 00 6C */ lwz r6, 0x6c(r1) +/* 80155F04 00152E64 7C 00 1B 78 */ or r0, r0, r3 +/* 80155F08 00152E68 80 AD 8C 88 */ lwz r5, lbl_805A7848@sda21(r13) +/* 80155F0C 00152E6C 7C C4 23 78 */ or r4, r6, r4 +/* 80155F10 00152E70 90 01 00 68 */ stw r0, 0x68(r1) +/* 80155F14 00152E74 38 60 00 00 */ li r3, 0 +/* 80155F18 00152E78 90 81 00 6C */ stw r4, 0x6c(r1) +/* 80155F1C 00152E7C 38 80 00 01 */ li r4, 1 +/* 80155F20 00152E80 48 23 3F D5 */ bl __shl2i +/* 80155F24 00152E84 80 01 00 68 */ lwz r0, 0x68(r1) +/* 80155F28 00152E88 38 A1 00 68 */ addi r5, r1, 0x68 +/* 80155F2C 00152E8C 80 C1 00 6C */ lwz r6, 0x6c(r1) +/* 80155F30 00152E90 7C 00 1B 78 */ or r0, r0, r3 +/* 80155F34 00152E94 7C C3 23 78 */ or r3, r6, r4 +/* 80155F38 00152E98 90 01 00 68 */ stw r0, 0x68(r1) +/* 80155F3C 00152E9C 7F C4 F3 78 */ mr r4, r30 +/* 80155F40 00152EA0 90 61 00 6C */ stw r3, 0x6c(r1) +/* 80155F44 00152EA4 80 7F 05 94 */ lwz r3, 0x594(r31) +/* 80155F48 00152EA8 48 05 13 09 */ bl AddMaterial__22CCollisionActorManagerFR13CStateManagerRC13CMaterialList +/* 80155F4C 00152EAC 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 80155F50 00152EB0 38 80 FF FF */ li r4, -1 +/* 80155F54 00152EB4 48 00 03 D9 */ bl sub_8015632c +/* 80155F58 00152EB8 80 9F 00 90 */ lwz r4, 0x90(r31) +/* 80155F5C 00152EBC 28 04 00 00 */ cmplwi r4, 0 +/* 80155F60 00152EC0 41 82 00 14 */ beq lbl_80155F74 +/* 80155F64 00152EC4 88 04 02 98 */ lbz r0, 0x298(r4) +/* 80155F68 00152EC8 38 60 00 01 */ li r3, 1 +/* 80155F6C 00152ECC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80155F70 00152ED0 98 04 02 98 */ stb r0, 0x298(r4) +lbl_80155F74: +/* 80155F74 00152ED4 3C 80 80 3D */ lis r4, lbl_803D0230@ha +/* 80155F78 00152ED8 38 61 00 70 */ addi r3, r1, 0x70 +/* 80155F7C 00152EDC 38 84 02 30 */ addi r4, r4, lbl_803D0230@l +/* 80155F80 00152EE0 38 C1 00 08 */ addi r6, r1, 8 +/* 80155F84 00152EE4 38 84 00 4D */ addi r4, r4, 0x4d +/* 80155F88 00152EE8 38 A0 FF FF */ li r5, -1 +/* 80155F8C 00152EEC 48 1E 82 09 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 80155F90 00152EF0 7F E4 FB 78 */ mr r4, r31 +/* 80155F94 00152EF4 38 61 01 2C */ addi r3, r1, 0x12c +/* 80155F98 00152EF8 38 A1 00 70 */ addi r5, r1, 0x70 +/* 80155F9C 00152EFC 4B EF CF 35 */ bl "GetScaledLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80155FA0 00152F00 C0 41 01 58 */ lfs f2, 0x158(r1) +/* 80155FA4 00152F04 38 61 01 5C */ addi r3, r1, 0x15c +/* 80155FA8 00152F08 C0 21 01 48 */ lfs f1, 0x148(r1) +/* 80155FAC 00152F0C 38 9F 00 34 */ addi r4, r31, 0x34 +/* 80155FB0 00152F10 C0 01 01 38 */ lfs f0, 0x138(r1) +/* 80155FB4 00152F14 D0 21 00 84 */ stfs f1, 0x84(r1) +/* 80155FB8 00152F18 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 80155FBC 00152F1C D0 41 00 88 */ stfs f2, 0x88(r1) +/* 80155FC0 00152F20 48 1B D1 35 */ bl BuildMatrix3f__12CTransform4fCFv +/* 80155FC4 00152F24 38 61 00 8C */ addi r3, r1, 0x8c +/* 80155FC8 00152F28 38 81 01 5C */ addi r4, r1, 0x15c +/* 80155FCC 00152F2C 38 A1 00 80 */ addi r5, r1, 0x80 +/* 80155FD0 00152F30 48 1B A2 C5 */ bl __ml__9CMatrix3fCFRC9CVector3f +/* 80155FD4 00152F34 C3 E1 00 8C */ lfs f31, 0x8c(r1) +/* 80155FD8 00152F38 38 61 00 70 */ addi r3, r1, 0x70 +/* 80155FDC 00152F3C C3 C1 00 90 */ lfs f30, 0x90(r1) +/* 80155FE0 00152F40 C3 A1 00 94 */ lfs f29, 0x94(r1) +/* 80155FE4 00152F44 48 1E 7A FD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80155FE8 00152F48 80 7F 00 90 */ lwz r3, 0x90(r31) +/* 80155FEC 00152F4C D3 E3 02 AC */ stfs f31, 0x2ac(r3) +/* 80155FF0 00152F50 D3 C3 02 B0 */ stfs f30, 0x2b0(r3) +/* 80155FF4 00152F54 D3 A3 02 B4 */ stfs f29, 0x2b4(r3) +/* 80155FF8 00152F58 48 00 01 CC */ b lbl_801561C4 +lbl_80155FFC: +/* 80155FFC 00152F5C A0 1D 00 00 */ lhz r0, 0(r29) +/* 80156000 00152F60 7F C3 F3 78 */ mr r3, r30 +/* 80156004 00152F64 38 81 00 40 */ addi r4, r1, 0x40 +/* 80156008 00152F68 B0 01 00 40 */ sth r0, 0x40(r1) +/* 8015600C 00152F6C 4B EF 65 69 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80156010 00152F70 7C 60 1B 78 */ mr r0, r3 +/* 80156014 00152F74 38 61 00 60 */ addi r3, r1, 0x60 +/* 80156018 00152F78 7C 04 03 78 */ mr r4, r0 +/* 8015601C 00152F7C 4B F5 93 31 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" +/* 80156020 00152F80 80 83 00 04 */ lwz r4, 4(r3) +/* 80156024 00152F84 28 04 00 00 */ cmplwi r4, 0 +/* 80156028 00152F88 41 82 01 9C */ beq lbl_801561C4 +/* 8015602C 00152F8C 38 61 00 3C */ addi r3, r1, 0x3c +/* 80156030 00152F90 48 05 2B 5D */ bl GetLastTouchedObject__15CCollisionActorCFv +/* 80156034 00152F94 A0 01 00 3C */ lhz r0, 0x3c(r1) +/* 80156038 00152F98 7F C3 F3 78 */ mr r3, r30 +/* 8015603C 00152F9C 38 81 00 38 */ addi r4, r1, 0x38 +/* 80156040 00152FA0 B0 01 00 4C */ sth r0, 0x4c(r1) +/* 80156044 00152FA4 B0 01 00 38 */ sth r0, 0x38(r1) +/* 80156048 00152FA8 4B EF 65 2D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8015604C 00152FAC 7C 60 1B 78 */ mr r0, r3 +/* 80156050 00152FB0 38 61 00 58 */ addi r3, r1, 0x58 +/* 80156054 00152FB4 7C 04 03 78 */ mr r4, r0 +/* 80156058 00152FB8 4B F5 63 3D */ bl "__ct__20TCastToPtr<7CPlayer>FP7CEntity" +/* 8015605C 00152FBC 82 E3 00 04 */ lwz r23, 4(r3) +/* 80156060 00152FC0 28 17 00 00 */ cmplwi r23, 0 +/* 80156064 00152FC4 41 82 01 60 */ beq lbl_801561C4 +/* 80156068 00152FC8 C0 3F 04 20 */ lfs f1, 0x420(r31) +/* 8015606C 00152FCC C0 02 9E 30 */ lfs f0, lbl_805ABB50@sda21(r2) +/* 80156070 00152FD0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80156074 00152FD4 4C 40 13 82 */ cror 2, 0, 2 +/* 80156078 00152FD8 40 82 01 4C */ bne lbl_801561C4 +/* 8015607C 00152FDC 80 1F 05 B4 */ lwz r0, 0x5b4(r31) +/* 80156080 00152FE0 2C 00 00 04 */ cmpwi r0, 4 +/* 80156084 00152FE4 41 82 01 40 */ beq lbl_801561C4 +/* 80156088 00152FE8 2C 00 00 06 */ cmpwi r0, 6 +/* 8015608C 00152FEC 41 82 01 38 */ beq lbl_801561C4 +/* 80156090 00152FF0 80 AD 8C 78 */ lwz r5, lbl_805A7838@sda21(r13) +/* 80156094 00152FF4 38 60 00 00 */ li r3, 0 +/* 80156098 00152FF8 38 80 00 01 */ li r4, 1 +/* 8015609C 00152FFC 48 23 3E 59 */ bl __shl2i +/* 801560A0 00153000 38 A0 00 00 */ li r5, 0 +/* 801560A4 00153004 38 00 00 03 */ li r0, 3 +/* 801560A8 00153008 90 81 00 CC */ stw r4, 0xcc(r1) +/* 801560AC 0015300C 7F E4 FB 78 */ mr r4, r31 +/* 801560B0 00153010 90 61 00 C8 */ stw r3, 0xc8(r1) +/* 801560B4 00153014 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 801560B8 00153018 90 A1 00 D4 */ stw r5, 0xd4(r1) +/* 801560BC 0015301C 90 A1 00 D0 */ stw r5, 0xd0(r1) +/* 801560C0 00153020 90 01 00 D8 */ stw r0, 0xd8(r1) +/* 801560C4 00153024 A0 1F 00 08 */ lhz r0, 8(r31) +/* 801560C8 00153028 B0 01 00 24 */ sth r0, 0x24(r1) +/* 801560CC 0015302C A0 B7 00 08 */ lhz r5, 8(r23) +/* 801560D0 00153030 B0 01 00 20 */ sth r0, 0x20(r1) +/* 801560D4 00153034 B0 A1 00 2C */ sth r5, 0x2c(r1) +/* 801560D8 00153038 A0 1F 00 08 */ lhz r0, 8(r31) +/* 801560DC 0015303C B0 A1 00 28 */ sth r5, 0x28(r1) +/* 801560E0 00153040 B0 01 00 34 */ sth r0, 0x34(r1) +/* 801560E4 00153044 81 9F 00 00 */ lwz r12, 0(r31) +/* 801560E8 00153048 B0 01 00 30 */ sth r0, 0x30(r1) +/* 801560EC 0015304C 81 8C 02 B0 */ lwz r12, 0x2b0(r12) +/* 801560F0 00153050 7D 89 03 A6 */ mtctr r12 +/* 801560F4 00153054 4E 80 04 21 */ bctrl +/* 801560F8 00153058 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801560FC 0015305C 7F C3 F3 78 */ mr r3, r30 +/* 80156100 00153060 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 80156104 00153064 38 A1 00 2C */ addi r5, r1, 0x2c +/* 80156108 00153068 38 81 00 34 */ addi r4, r1, 0x34 +/* 8015610C 0015306C 38 C1 00 24 */ addi r6, r1, 0x24 +/* 80156110 00153070 38 E1 00 E0 */ addi r7, r1, 0xe0 +/* 80156114 00153074 39 01 00 C8 */ addi r8, r1, 0xc8 +/* 80156118 00153078 4B EF 3F 89 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 8015611C 0015307C C0 1F 04 24 */ lfs f0, 0x424(r31) +/* 80156120 00153080 D0 1F 04 20 */ stfs f0, 0x420(r31) +/* 80156124 00153084 48 00 00 A0 */ b lbl_801561C4 +lbl_80156128: +/* 80156128 00153088 A0 1F 05 90 */ lhz r0, 0x590(r31) +/* 8015612C 0015308C 7F C3 F3 78 */ mr r3, r30 +/* 80156130 00153090 38 81 00 1C */ addi r4, r1, 0x1c +/* 80156134 00153094 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 80156138 00153098 4B EF 61 35 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 8015613C 0015309C 80 7F 05 94 */ lwz r3, 0x594(r31) +/* 80156140 001530A0 7F C4 F3 78 */ mr r4, r30 +/* 80156144 001530A4 48 05 12 81 */ bl Destroy__22CCollisionActorManagerCFR13CStateManager +/* 80156148 001530A8 48 00 00 7C */ b lbl_801561C4 +lbl_8015614C: +/* 8015614C 001530AC 80 9F 00 90 */ lwz r4, 0x90(r31) +/* 80156150 001530B0 28 04 00 00 */ cmplwi r4, 0 +/* 80156154 001530B4 41 82 00 70 */ beq lbl_801561C4 +/* 80156158 001530B8 88 04 02 98 */ lbz r0, 0x298(r4) +/* 8015615C 001530BC 38 60 00 01 */ li r3, 1 +/* 80156160 001530C0 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80156164 001530C4 98 04 02 98 */ stb r0, 0x298(r4) +/* 80156168 001530C8 48 00 00 5C */ b lbl_801561C4 +lbl_8015616C: +/* 8015616C 001530CC 80 1F 05 B4 */ lwz r0, 0x5b4(r31) +/* 80156170 001530D0 2C 00 00 00 */ cmpwi r0, 0 +/* 80156174 001530D4 41 82 00 50 */ beq lbl_801561C4 +/* 80156178 001530D8 2C 00 00 05 */ cmpwi r0, 5 +/* 8015617C 001530DC 41 82 00 48 */ beq lbl_801561C4 +/* 80156180 001530E0 2C 00 00 06 */ cmpwi r0, 6 +/* 80156184 001530E4 41 82 00 40 */ beq lbl_801561C4 +/* 80156188 001530E8 2C 00 00 04 */ cmpwi r0, 4 +/* 8015618C 001530EC 41 82 00 38 */ beq lbl_801561C4 +/* 80156190 001530F0 88 1F 04 00 */ lbz r0, 0x400(r31) +/* 80156194 001530F4 38 60 00 01 */ li r3, 1 +/* 80156198 001530F8 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8015619C 001530FC 98 1F 04 00 */ stb r0, 0x400(r31) +/* 801561A0 00153100 C0 1F 04 24 */ lfs f0, 0x424(r31) +/* 801561A4 00153104 D0 1F 04 28 */ stfs f0, 0x428(r31) +/* 801561A8 00153108 48 00 00 1C */ b lbl_801561C4 +lbl_801561AC: +/* 801561AC 0015310C 80 7F 05 94 */ lwz r3, 0x594(r31) +/* 801561B0 00153110 28 03 00 00 */ cmplwi r3, 0 +/* 801561B4 00153114 41 82 00 10 */ beq lbl_801561C4 +/* 801561B8 00153118 7F C4 F3 78 */ mr r4, r30 +/* 801561BC 0015311C 38 A0 00 00 */ li r5, 0 +/* 801561C0 00153120 48 05 0D 01 */ bl SetMovable__22CCollisionActorManagerFb +lbl_801561C4: +/* 801561C4 00153124 A0 1D 00 00 */ lhz r0, 0(r29) +/* 801561C8 00153128 7F E3 FB 78 */ mr r3, r31 +/* 801561CC 0015312C 7F 84 E3 78 */ mr r4, r28 +/* 801561D0 00153130 7F C6 F3 78 */ mr r6, r30 +/* 801561D4 00153134 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801561D8 00153138 38 A1 00 18 */ addi r5, r1, 0x18 +/* 801561DC 0015313C 4B F2 69 9D */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801561E0 00153140 88 1F 00 30 */ lbz r0, 0x30(r31) +/* 801561E4 00153144 54 05 CF FE */ rlwinm r5, r0, 0x19, 0x1f, 0x1f +/* 801561E8 00153148 7C 1B 28 40 */ cmplw r27, r5 +/* 801561EC 0015314C 41 82 00 18 */ beq lbl_80156204 +/* 801561F0 00153150 80 7F 05 94 */ lwz r3, 0x594(r31) +/* 801561F4 00153154 28 03 00 00 */ cmplwi r3, 0 +/* 801561F8 00153158 41 82 00 0C */ beq lbl_80156204 +/* 801561FC 0015315C 7F C4 F3 78 */ mr r4, r30 +/* 80156200 00153160 48 05 10 F9 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb +lbl_80156204: +/* 80156204 00153164 E3 E1 02 58 */ psq_l f31, 600(r1), 0, qr0 +/* 80156208 00153168 CB E1 02 50 */ lfd f31, 0x250(r1) +/* 8015620C 0015316C E3 C1 02 48 */ psq_l f30, 584(r1), 0, qr0 +/* 80156210 00153170 CB C1 02 40 */ lfd f30, 0x240(r1) +/* 80156214 00153174 E3 A1 02 38 */ psq_l f29, 568(r1), 0, qr0 +/* 80156218 00153178 CB A1 02 30 */ lfd f29, 0x230(r1) +/* 8015621C 0015317C BA E1 02 0C */ lmw r23, 0x20c(r1) +/* 80156220 00153180 80 01 02 64 */ lwz r0, 0x264(r1) +/* 80156224 00153184 7C 08 03 A6 */ mtlr r0 +/* 80156228 00153188 38 21 02 60 */ addi r1, r1, 0x260 +/* 8015622C 0015318C 4E 80 00 20 */ blr + +.global sub_80156230 +sub_80156230: +/* 80156230 00153190 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80156234 00153194 7C 08 02 A6 */ mflr r0 +/* 80156238 00153198 90 01 00 24 */ stw r0, 0x24(r1) +/* 8015623C 0015319C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80156240 001531A0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80156244 001531A4 7C 9E 23 78 */ mr r30, r4 +/* 80156248 001531A8 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8015624C 001531AC 7C 7D 1B 78 */ mr r29, r3 +/* 80156250 001531B0 80 03 00 04 */ lwz r0, 4(r3) +/* 80156254 001531B4 80 A3 00 08 */ lwz r5, 8(r3) +/* 80156258 001531B8 7C 00 28 00 */ cmpw r0, r5 +/* 8015625C 001531BC 41 80 00 18 */ blt lbl_80156274 +/* 80156260 001531C0 2C 05 00 00 */ cmpwi r5, 0 +/* 80156264 001531C4 38 80 00 04 */ li r4, 4 +/* 80156268 001531C8 41 82 00 08 */ beq lbl_80156270 +/* 8015626C 001531CC 54 A4 08 3C */ slwi r4, r5, 1 +lbl_80156270: +/* 80156270 001531D0 48 00 05 49 */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" +lbl_80156274: +/* 80156274 001531D4 80 1D 00 04 */ lwz r0, 4(r29) +/* 80156278 001531D8 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 8015627C 001531DC 1C 00 00 44 */ mulli r0, r0, 0x44 +/* 80156280 001531E0 7F E3 02 15 */ add. r31, r3, r0 +/* 80156284 001531E4 41 82 00 80 */ beq lbl_80156304 +/* 80156288 001531E8 80 1E 00 00 */ lwz r0, 0(r30) +/* 8015628C 001531EC 38 7F 00 2C */ addi r3, r31, 0x2c +/* 80156290 001531F0 38 9E 00 2C */ addi r4, r30, 0x2c +/* 80156294 001531F4 90 1F 00 00 */ stw r0, 0(r31) +/* 80156298 001531F8 80 1E 00 04 */ lwz r0, 4(r30) +/* 8015629C 001531FC 90 1F 00 04 */ stw r0, 4(r31) +/* 801562A0 00153200 88 1E 00 08 */ lbz r0, 8(r30) +/* 801562A4 00153204 98 1F 00 08 */ stb r0, 8(r31) +/* 801562A8 00153208 88 1E 00 09 */ lbz r0, 9(r30) +/* 801562AC 0015320C 98 1F 00 09 */ stb r0, 9(r31) +/* 801562B0 00153210 C0 1E 00 0C */ lfs f0, 0xc(r30) +/* 801562B4 00153214 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 801562B8 00153218 C0 1E 00 10 */ lfs f0, 0x10(r30) +/* 801562BC 0015321C D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 801562C0 00153220 C0 1E 00 14 */ lfs f0, 0x14(r30) +/* 801562C4 00153224 D0 1F 00 14 */ stfs f0, 0x14(r31) +/* 801562C8 00153228 C0 1E 00 18 */ lfs f0, 0x18(r30) +/* 801562CC 0015322C D0 1F 00 18 */ stfs f0, 0x18(r31) +/* 801562D0 00153230 C0 1E 00 1C */ lfs f0, 0x1c(r30) +/* 801562D4 00153234 D0 1F 00 1C */ stfs f0, 0x1c(r31) +/* 801562D8 00153238 C0 1E 00 20 */ lfs f0, 0x20(r30) +/* 801562DC 0015323C D0 1F 00 20 */ stfs f0, 0x20(r31) +/* 801562E0 00153240 C0 1E 00 24 */ lfs f0, 0x24(r30) +/* 801562E4 00153244 D0 1F 00 24 */ stfs f0, 0x24(r31) +/* 801562E8 00153248 C0 1E 00 28 */ lfs f0, 0x28(r30) +/* 801562EC 0015324C D0 1F 00 28 */ stfs f0, 0x28(r31) +/* 801562F0 00153250 48 1E 7E 71 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801562F4 00153254 A0 1E 00 3C */ lhz r0, 0x3c(r30) +/* 801562F8 00153258 B0 1F 00 3C */ sth r0, 0x3c(r31) +/* 801562FC 0015325C C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 80156300 00153260 D0 1F 00 40 */ stfs f0, 0x40(r31) +lbl_80156304: +/* 80156304 00153264 80 7D 00 04 */ lwz r3, 4(r29) +/* 80156308 00153268 38 03 00 01 */ addi r0, r3, 1 +/* 8015630C 0015326C 90 1D 00 04 */ stw r0, 4(r29) +/* 80156310 00153270 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80156314 00153274 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80156318 00153278 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8015631C 0015327C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80156320 00153280 7C 08 03 A6 */ mtlr r0 +/* 80156324 00153284 38 21 00 20 */ addi r1, r1, 0x20 +/* 80156328 00153288 4E 80 00 20 */ blr + +.global sub_8015632c +sub_8015632c: +/* 8015632C 0015328C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80156330 00153290 7C 08 02 A6 */ mflr r0 +/* 80156334 00153294 90 01 00 34 */ stw r0, 0x34(r1) +/* 80156338 00153298 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8015633C 0015329C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80156340 001532A0 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80156344 001532A4 7C 9D 23 78 */ mr r29, r4 +/* 80156348 001532A8 93 81 00 20 */ stw r28, 0x20(r1) +/* 8015634C 001532AC 7C 7C 1B 79 */ or. r28, r3, r3 +/* 80156350 001532B0 41 82 00 6C */ beq lbl_801563BC +/* 80156354 001532B4 80 1C 00 04 */ lwz r0, 4(r28) +/* 80156358 001532B8 83 DC 00 0C */ lwz r30, 0xc(r28) +/* 8015635C 001532BC 1C 00 00 44 */ mulli r0, r0, 0x44 +/* 80156360 001532C0 93 C1 00 10 */ stw r30, 0x10(r1) +/* 80156364 001532C4 7F FE 02 14 */ add r31, r30, r0 +/* 80156368 001532C8 93 C1 00 14 */ stw r30, 0x14(r1) +/* 8015636C 001532CC 93 E1 00 08 */ stw r31, 8(r1) +/* 80156370 001532D0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80156374 001532D4 48 00 00 20 */ b lbl_80156394 +lbl_80156378: +/* 80156378 001532D8 28 1E 00 00 */ cmplwi r30, 0 +/* 8015637C 001532DC 41 82 00 14 */ beq lbl_80156390 +/* 80156380 001532E0 34 1E 00 2C */ addic. r0, r30, 0x2c +/* 80156384 001532E4 41 82 00 0C */ beq lbl_80156390 +/* 80156388 001532E8 38 7E 00 2C */ addi r3, r30, 0x2c +/* 8015638C 001532EC 48 1E 77 55 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80156390: +/* 80156390 001532F0 3B DE 00 44 */ addi r30, r30, 0x44 +lbl_80156394: +/* 80156394 001532F4 7C 1E F8 40 */ cmplw r30, r31 +/* 80156398 001532F8 40 82 FF E0 */ bne lbl_80156378 +/* 8015639C 001532FC 80 7C 00 0C */ lwz r3, 0xc(r28) +/* 801563A0 00153300 28 03 00 00 */ cmplwi r3, 0 +/* 801563A4 00153304 41 82 00 08 */ beq lbl_801563AC +/* 801563A8 00153308 48 1B F5 89 */ bl Free__7CMemoryFPCv +lbl_801563AC: +/* 801563AC 0015330C 7F A0 07 35 */ extsh. r0, r29 +/* 801563B0 00153310 40 81 00 0C */ ble lbl_801563BC +/* 801563B4 00153314 7F 83 E3 78 */ mr r3, r28 +/* 801563B8 00153318 48 1B F5 79 */ bl Free__7CMemoryFPCv +lbl_801563BC: +/* 801563BC 0015331C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801563C0 00153320 7F 83 E3 78 */ mr r3, r28 +/* 801563C4 00153324 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801563C8 00153328 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801563CC 0015332C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801563D0 00153330 83 81 00 20 */ lwz r28, 0x20(r1) +/* 801563D4 00153334 7C 08 03 A6 */ mtlr r0 +/* 801563D8 00153338 38 21 00 30 */ addi r1, r1, 0x30 +/* 801563DC 0015333C 4E 80 00 20 */ blr + +.global Accept__10CSpankWeedFR8IVisitor +Accept__10CSpankWeedFR8IVisitor: +/* 801563E0 00153340 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801563E4 00153344 7C 08 02 A6 */ mflr r0 +/* 801563E8 00153348 90 01 00 14 */ stw r0, 0x14(r1) +/* 801563EC 0015334C 7C 60 1B 78 */ mr r0, r3 +/* 801563F0 00153350 7C 83 23 78 */ mr r3, r4 +/* 801563F4 00153354 81 84 00 00 */ lwz r12, 0(r4) +/* 801563F8 00153358 7C 04 03 78 */ mr r4, r0 +/* 801563FC 0015335C 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 80156400 00153360 7D 89 03 A6 */ mtctr r12 +/* 80156404 00153364 4E 80 04 21 */ bctrl +/* 80156408 00153368 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8015640C 0015336C 7C 08 03 A6 */ mtlr r0 +/* 80156410 00153370 38 21 00 10 */ addi r1, r1, 0x10 +/* 80156414 00153374 4E 80 00 20 */ blr + +.global "__ct__10CSpankWeedF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC16CActorParametersRC14CPatternedInfoffff" +"__ct__10CSpankWeedF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC16CActorParametersRC14CPatternedInfoffff": +/* 80156418 00153378 94 21 FA 10 */ stwu r1, -0x5f0(r1) +/* 8015641C 0015337C 7C 08 02 A6 */ mflr r0 +/* 80156420 00153380 90 01 05 F4 */ stw r0, 0x5f4(r1) +/* 80156424 00153384 DB E1 05 E0 */ stfd f31, 0x5e0(r1) +/* 80156428 00153388 F3 E1 05 E8 */ psq_st f31, 1512(r1), 0, qr0 +/* 8015642C 0015338C DB C1 05 D0 */ stfd f30, 0x5d0(r1) +/* 80156430 00153390 F3 C1 05 D8 */ psq_st f30, 1496(r1), 0, qr0 +/* 80156434 00153394 DB A1 05 C0 */ stfd f29, 0x5c0(r1) +/* 80156438 00153398 F3 A1 05 C8 */ psq_st f29, 1480(r1), 0, qr0 +/* 8015643C 0015339C DB 81 05 B0 */ stfd f28, 0x5b0(r1) +/* 80156440 001533A0 F3 81 05 B8 */ psq_st f28, 1464(r1), 0, qr0 +/* 80156444 001533A4 BF 61 05 9C */ stmw r27, 0x59c(r1) +/* 80156448 001533A8 A0 04 00 00 */ lhz r0, 0(r4) +/* 8015644C 001533AC 7D 5B 53 78 */ mr r27, r10 +/* 80156450 001533B0 7C C4 33 78 */ mr r4, r6 +/* 80156454 001533B4 7C FC 3B 78 */ mr r28, r7 +/* 80156458 001533B8 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 8015645C 001533BC 7D 0A 43 78 */ mr r10, r8 +/* 80156460 001533C0 7C A6 2B 78 */ mr r6, r5 +/* 80156464 001533C4 7C 88 23 78 */ mr r8, r4 +/* 80156468 001533C8 93 61 00 08 */ stw r27, 8(r1) +/* 8015646C 001533CC 39 60 00 01 */ li r11, 1 +/* 80156470 001533D0 38 00 00 02 */ li r0, 2 +/* 80156474 001533D4 FF 80 08 90 */ fmr f28, f1 +/* 80156478 001533D8 91 61 00 0C */ stw r11, 0xc(r1) +/* 8015647C 001533DC FF A0 10 90 */ fmr f29, f2 +/* 80156480 001533E0 FF C0 18 90 */ fmr f30, f3 +/* 80156484 001533E4 7C 7F 1B 78 */ mr r31, r3 +/* 80156488 001533E8 91 61 00 10 */ stw r11, 0x10(r1) +/* 8015648C 001533EC FF E0 20 90 */ fmr f31, f4 +/* 80156490 001533F0 38 A1 00 2C */ addi r5, r1, 0x2c +/* 80156494 001533F4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80156498 001533F8 38 80 00 23 */ li r4, 0x23 +/* 8015649C 001533FC 38 E0 00 00 */ li r7, 0 +/* 801564A0 00153400 91 21 00 18 */ stw r9, 0x18(r1) +/* 801564A4 00153404 7F 89 E3 78 */ mr r9, r28 +/* 801564A8 00153408 91 61 00 1C */ stw r11, 0x1c(r1) +/* 801564AC 0015340C 4B F2 6F A5 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" +/* 801564B0 00153410 3C 80 80 3E */ lis r4, lbl_803E2D28@ha +/* 801564B4 00153414 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801564B8 00153418 38 04 2D 28 */ addi r0, r4, lbl_803E2D28@l +/* 801564BC 0015341C 39 00 00 00 */ li r8, 0 +/* 801564C0 00153420 90 1F 00 00 */ stw r0, 0(r31) +/* 801564C4 00153424 38 C0 00 01 */ li r6, 1 +/* 801564C8 00153428 C0 02 9E 30 */ lfs f0, lbl_805ABB50@sda21(r2) +/* 801564CC 0015342C 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 801564D0 00153430 D3 9F 05 68 */ stfs f28, 0x568(r31) +/* 801564D4 00153434 38 00 FF FF */ li r0, -1 +/* 801564D8 00153438 7F E3 FB 78 */ mr r3, r31 +/* 801564DC 0015343C 38 80 00 00 */ li r4, 0 +/* 801564E0 00153440 C0 3B 00 10 */ lfs f1, 0x10(r27) +/* 801564E4 00153444 D0 3F 05 6C */ stfs f1, 0x56c(r31) +/* 801564E8 00153448 D3 BF 05 70 */ stfs f29, 0x570(r31) +/* 801564EC 0015344C D3 DF 05 74 */ stfs f30, 0x574(r31) +/* 801564F0 00153450 D3 FF 05 78 */ stfs f31, 0x578(r31) +/* 801564F4 00153454 99 1F 05 7C */ stb r8, 0x57c(r31) +/* 801564F8 00153458 D0 1F 05 80 */ stfs f0, 0x580(r31) +/* 801564FC 0015345C C0 5C 00 2C */ lfs f2, 0x2c(r28) +/* 80156500 00153460 C0 3C 00 1C */ lfs f1, 0x1c(r28) +/* 80156504 00153464 C0 1C 00 0C */ lfs f0, 0xc(r28) +/* 80156508 00153468 D0 1F 05 84 */ stfs f0, 0x584(r31) +/* 8015650C 0015346C D0 3F 05 88 */ stfs f1, 0x588(r31) +/* 80156510 00153470 D0 5F 05 8C */ stfs f2, 0x58c(r31) +/* 80156514 00153474 A0 ED A3 8C */ lhz r7, lbl_805A8F4C@sda21(r13) +/* 80156518 00153478 B0 FF 05 90 */ sth r7, 0x590(r31) +/* 8015651C 0015347C 91 1F 05 94 */ stw r8, 0x594(r31) +/* 80156520 00153480 98 DF 05 98 */ stb r6, 0x598(r31) +/* 80156524 00153484 C0 05 00 00 */ lfs f0, 0(r5) +/* 80156528 00153488 D0 1F 05 9C */ stfs f0, 0x59c(r31) +/* 8015652C 0015348C C0 05 00 04 */ lfs f0, 4(r5) +/* 80156530 00153490 D0 1F 05 A0 */ stfs f0, 0x5a0(r31) +/* 80156534 00153494 C0 05 00 08 */ lfs f0, 8(r5) +/* 80156538 00153498 D0 1F 05 A4 */ stfs f0, 0x5a4(r31) +/* 8015653C 0015349C C0 05 00 00 */ lfs f0, 0(r5) +/* 80156540 001534A0 D0 1F 05 A8 */ stfs f0, 0x5a8(r31) +/* 80156544 001534A4 C0 05 00 04 */ lfs f0, 4(r5) +/* 80156548 001534A8 D0 1F 05 AC */ stfs f0, 0x5ac(r31) +/* 8015654C 001534AC C0 05 00 08 */ lfs f0, 8(r5) +/* 80156550 001534B0 D0 1F 05 B0 */ stfs f0, 0x5b0(r31) +/* 80156554 001534B4 90 1F 05 B4 */ stw r0, 0x5b4(r31) +/* 80156558 001534B8 90 1F 05 B8 */ stw r0, 0x5b8(r31) +/* 8015655C 001534BC 90 1F 05 BC */ stw r0, 0x5bc(r31) +/* 80156560 001534C0 4B EF DE 59 */ bl SetCallTouch__6CActorFb +/* 80156564 001534C4 7F E3 FB 78 */ mr r3, r31 +/* 80156568 001534C8 38 80 00 00 */ li r4, 0 +/* 8015656C 001534CC 4B EF C8 01 */ bl CreateShadow__6CActorFb +/* 80156570 001534D0 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 80156574 001534D4 C0 23 00 04 */ lfs f1, 4(r3) +/* 80156578 001534D8 C0 03 00 00 */ lfs f0, 0(r3) +/* 8015657C 001534DC C0 43 00 08 */ lfs f2, 8(r3) +/* 80156580 001534E0 FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 80156584 001534E4 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 80156588 001534E8 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 8015658C 001534EC D0 41 00 54 */ stfs f2, 0x54(r1) +/* 80156590 001534F0 40 82 00 0C */ bne lbl_8015659C +/* 80156594 001534F4 FC 00 10 00 */ fcmpu cr0, f0, f2 +/* 80156598 001534F8 41 82 00 58 */ beq lbl_801565F0 +lbl_8015659C: +/* 8015659C 001534FC 38 61 00 4C */ addi r3, r1, 0x4c +/* 801565A0 00153500 48 1B E3 19 */ bl Magnitude__9CVector3fCFv +/* 801565A4 00153504 FF E0 08 90 */ fmr f31, f1 +/* 801565A8 00153508 C0 22 9E 40 */ lfs f1, lbl_805ABB60@sda21(r2) +/* 801565AC 0015350C 48 1B EF 55 */ bl SqrtF__5CMathFf +/* 801565B0 00153510 EC 9F 08 24 */ fdivs f4, f31, f1 +/* 801565B4 00153514 80 BF 00 64 */ lwz r5, 0x64(r31) +/* 801565B8 00153518 3C 80 80 3D */ lis r4, lbl_803D0230@ha +/* 801565BC 0015351C 38 61 01 90 */ addi r3, r1, 0x190 +/* 801565C0 00153520 38 84 02 30 */ addi r4, r4, lbl_803D0230@l +/* 801565C4 00153524 38 84 00 77 */ addi r4, r4, 0x77 +/* 801565C8 00153528 D0 85 00 00 */ stfs f4, 0(r5) +/* 801565CC 0015352C FC A0 20 90 */ fmr f5, f4 +/* 801565D0 00153530 FC C0 20 90 */ fmr f6, f4 +/* 801565D4 00153534 D0 85 00 04 */ stfs f4, 4(r5) +/* 801565D8 00153538 D0 85 00 08 */ stfs f4, 8(r5) +/* 801565DC 0015353C C0 21 00 4C */ lfs f1, 0x4c(r1) +/* 801565E0 00153540 C0 41 00 50 */ lfs f2, 0x50(r1) +/* 801565E4 00153544 C0 61 00 54 */ lfs f3, 0x54(r1) +/* 801565E8 00153548 4C C6 32 42 */ crset 6 +/* 801565EC 0015354C 48 23 76 F1 */ bl sprintf +lbl_801565F0: +/* 801565F0 00153550 7F E3 FB 78 */ mr r3, r31 +/* 801565F4 00153554 4B EF D2 C9 */ bl GetMaterialFilter__6CActorCFv +/* 801565F8 00153558 80 AD 8C 7C */ lwz r5, lbl_805A783C@sda21(r13) +/* 801565FC 0015355C 38 80 00 01 */ li r4, 1 +/* 80156600 00153560 83 C3 00 08 */ lwz r30, 8(r3) +/* 80156604 00153564 83 A3 00 0C */ lwz r29, 0xc(r3) +/* 80156608 00153568 38 60 00 00 */ li r3, 0 +/* 8015660C 0015356C 48 23 38 E9 */ bl __shl2i +/* 80156610 00153570 80 AD 8C 80 */ lwz r5, lbl_805A7840@sda21(r13) +/* 80156614 00153574 7C 9B 23 78 */ mr r27, r4 +/* 80156618 00153578 7C 7C 1B 78 */ mr r28, r3 +/* 8015661C 0015357C 38 60 00 00 */ li r3, 0 +/* 80156620 00153580 38 80 00 01 */ li r4, 1 +/* 80156624 00153584 48 23 38 D1 */ bl __shl2i +/* 80156628 00153588 7F 9C 1B 78 */ or r28, r28, r3 +/* 8015662C 0015358C 7F 7B 23 78 */ or r27, r27, r4 +/* 80156630 00153590 7F E3 FB 78 */ mr r3, r31 +/* 80156634 00153594 7F BD DB 78 */ or r29, r29, r27 +/* 80156638 00153598 7F DE E3 78 */ or r30, r30, r28 +/* 8015663C 0015359C 4B EF D2 81 */ bl GetMaterialFilter__6CActorCFv +/* 80156640 001535A0 80 A3 00 00 */ lwz r5, 0(r3) +/* 80156644 001535A4 38 00 00 03 */ li r0, 3 +/* 80156648 001535A8 80 C3 00 04 */ lwz r6, 4(r3) +/* 8015664C 001535AC 7F E3 FB 78 */ mr r3, r31 +/* 80156650 001535B0 38 81 00 58 */ addi r4, r1, 0x58 +/* 80156654 001535B4 90 C1 00 5C */ stw r6, 0x5c(r1) +/* 80156658 001535B8 90 A1 00 58 */ stw r5, 0x58(r1) +/* 8015665C 001535BC 93 A1 00 64 */ stw r29, 0x64(r1) +/* 80156660 001535C0 93 C1 00 60 */ stw r30, 0x60(r1) +/* 80156664 001535C4 90 01 00 68 */ stw r0, 0x68(r1) +/* 80156668 001535C8 4B EF D2 39 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter +/* 8015666C 001535CC 3C 80 80 3D */ lis r4, lbl_803D0230@ha +/* 80156670 001535D0 38 61 00 3C */ addi r3, r1, 0x3c +/* 80156674 001535D4 38 84 02 30 */ addi r4, r4, lbl_803D0230@l +/* 80156678 001535D8 38 84 00 59 */ addi r4, r4, 0x59 +/* 8015667C 001535DC 4B EA E6 3D */ bl string_l__4rstlFPCc +/* 80156680 001535E0 80 9F 00 64 */ lwz r4, 0x64(r31) +/* 80156684 001535E4 38 61 00 24 */ addi r3, r1, 0x24 +/* 80156688 001535E8 38 A1 00 3C */ addi r5, r1, 0x3c +/* 8015668C 001535EC 80 84 00 10 */ lwz r4, 0x10(r4) +/* 80156690 001535F0 4B ED 81 A9 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80156694 001535F4 88 01 00 24 */ lbz r0, 0x24(r1) +/* 80156698 001535F8 38 61 00 3C */ addi r3, r1, 0x3c +/* 8015669C 001535FC 98 01 00 28 */ stb r0, 0x28(r1) +/* 801566A0 00153600 48 1E 74 41 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801566A4 00153604 88 01 00 28 */ lbz r0, 0x28(r1) +/* 801566A8 00153608 28 00 00 FF */ cmplwi r0, 0xff +/* 801566AC 0015360C 41 82 00 C8 */ beq lbl_80156774 +/* 801566B0 00153610 98 01 00 20 */ stb r0, 0x20(r1) +/* 801566B4 00153614 38 61 01 00 */ addi r3, r1, 0x100 +/* 801566B8 00153618 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801566BC 0015361C 38 C0 00 00 */ li r6, 0 +/* 801566C0 00153620 80 9F 00 64 */ lwz r4, 0x64(r31) +/* 801566C4 00153624 80 84 00 10 */ lwz r4, 0x10(r4) +/* 801566C8 00153628 4B ED 5B AD */ bl GetLocatorTransform__9CAnimDataCF6CSegIdPC13CCharAnimTime +/* 801566CC 0015362C 38 61 01 60 */ addi r3, r1, 0x160 +/* 801566D0 00153630 38 81 01 00 */ addi r4, r1, 0x100 +/* 801566D4 00153634 48 1B C4 A1 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801566D8 00153638 80 BF 00 64 */ lwz r5, 0x64(r31) +/* 801566DC 0015363C 38 61 00 70 */ addi r3, r1, 0x70 +/* 801566E0 00153640 38 81 00 30 */ addi r4, r1, 0x30 +/* 801566E4 00153644 C0 05 00 00 */ lfs f0, 0(r5) +/* 801566E8 00153648 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 801566EC 0015364C C0 05 00 04 */ lfs f0, 4(r5) +/* 801566F0 00153650 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801566F4 00153654 C0 05 00 08 */ lfs f0, 8(r5) +/* 801566F8 00153658 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801566FC 0015365C 48 1B CA C9 */ bl Scale__12CTransform4fFRC9CVector3f +/* 80156700 00153660 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 80156704 00153664 38 81 00 70 */ addi r4, r1, 0x70 +/* 80156708 00153668 38 A1 01 60 */ addi r5, r1, 0x160 +/* 8015670C 0015366C 48 1B C2 45 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80156710 00153670 38 61 00 D0 */ addi r3, r1, 0xd0 +/* 80156714 00153674 38 9F 00 34 */ addi r4, r31, 0x34 +/* 80156718 00153678 38 A1 00 A0 */ addi r5, r1, 0xa0 +/* 8015671C 0015367C 48 1B C2 35 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80156720 00153680 38 61 01 30 */ addi r3, r1, 0x130 +/* 80156724 00153684 38 81 00 D0 */ addi r4, r1, 0xd0 +/* 80156728 00153688 48 1B C4 4D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8015672C 0015368C C0 41 01 5C */ lfs f2, 0x15c(r1) +/* 80156730 00153690 C0 21 01 4C */ lfs f1, 0x14c(r1) +/* 80156734 00153694 C0 01 01 3C */ lfs f0, 0x13c(r1) +/* 80156738 00153698 D0 1F 05 A8 */ stfs f0, 0x5a8(r31) +/* 8015673C 0015369C D0 3F 05 AC */ stfs f1, 0x5ac(r31) +/* 80156740 001536A0 D0 5F 05 B0 */ stfs f2, 0x5b0(r31) +/* 80156744 001536A4 C0 21 01 3C */ lfs f1, 0x13c(r1) +/* 80156748 001536A8 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8015674C 001536AC C0 61 01 4C */ lfs f3, 0x14c(r1) +/* 80156750 001536B0 C0 5F 00 50 */ lfs f2, 0x50(r31) +/* 80156754 001536B4 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80156758 001536B8 C0 9F 00 60 */ lfs f4, 0x60(r31) +/* 8015675C 001536BC C0 21 01 5C */ lfs f1, 0x15c(r1) +/* 80156760 001536C0 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80156764 001536C4 D0 1F 05 9C */ stfs f0, 0x59c(r31) +/* 80156768 001536C8 EC 01 20 28 */ fsubs f0, f1, f4 +/* 8015676C 001536CC D0 5F 05 A0 */ stfs f2, 0x5a0(r31) +/* 80156770 001536D0 D0 1F 05 A4 */ stfs f0, 0x5a4(r31) +lbl_80156774: +/* 80156774 001536D4 38 7F 04 60 */ addi r3, r31, 0x460 +/* 80156778 001536D8 38 80 00 00 */ li r4, 0 +/* 8015677C 001536DC 48 0D D5 E9 */ bl SetAutoResetImpulse__20CKnockBackControllerFb +/* 80156780 001536E0 7F E3 FB 78 */ mr r3, r31 +/* 80156784 001536E4 E3 E1 05 E8 */ psq_l f31, 1512(r1), 0, qr0 +/* 80156788 001536E8 CB E1 05 E0 */ lfd f31, 0x5e0(r1) +/* 8015678C 001536EC E3 C1 05 D8 */ psq_l f30, 1496(r1), 0, qr0 +/* 80156790 001536F0 CB C1 05 D0 */ lfd f30, 0x5d0(r1) +/* 80156794 001536F4 E3 A1 05 C8 */ psq_l f29, 1480(r1), 0, qr0 +/* 80156798 001536F8 CB A1 05 C0 */ lfd f29, 0x5c0(r1) +/* 8015679C 001536FC E3 81 05 B8 */ psq_l f28, 1464(r1), 0, qr0 +/* 801567A0 00153700 CB 81 05 B0 */ lfd f28, 0x5b0(r1) +/* 801567A4 00153704 BB 61 05 9C */ lmw r27, 0x59c(r1) +/* 801567A8 00153708 80 01 05 F4 */ lwz r0, 0x5f4(r1) +/* 801567AC 0015370C 7C 08 03 A6 */ mtlr r0 +/* 801567B0 00153710 38 21 05 F0 */ addi r1, r1, 0x5f0 +/* 801567B4 00153714 4E 80 00 20 */ blr + +.global "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" +"reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi": +/* 801567B8 00153718 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801567BC 0015371C 7C 08 02 A6 */ mflr r0 +/* 801567C0 00153720 90 01 00 34 */ stw r0, 0x34(r1) +/* 801567C4 00153724 BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 801567C8 00153728 7C 9F 23 78 */ mr r31, r4 +/* 801567CC 0015372C 7C 7E 1B 78 */ mr r30, r3 +/* 801567D0 00153730 80 03 00 08 */ lwz r0, 8(r3) +/* 801567D4 00153734 7C 1F 00 00 */ cmpw r31, r0 +/* 801567D8 00153738 40 81 00 B4 */ ble lbl_8015688C +/* 801567DC 0015373C 1C 7F 00 44 */ mulli r3, r31, 0x44 +/* 801567E0 00153740 2C 03 00 00 */ cmpwi r3, 0 +/* 801567E4 00153744 40 82 00 0C */ bne lbl_801567F0 +/* 801567E8 00153748 3B A0 00 00 */ li r29, 0 +/* 801567EC 0015374C 48 00 00 1C */ b lbl_80156808 +lbl_801567F0: +/* 801567F0 00153750 3C 80 80 3D */ lis r4, lbl_803D0230@ha +/* 801567F4 00153754 38 A0 00 00 */ li r5, 0 +/* 801567F8 00153758 38 84 02 30 */ addi r4, r4, lbl_803D0230@l +/* 801567FC 0015375C 38 84 00 70 */ addi r4, r4, 0x70 +/* 80156800 00153760 48 1B F0 19 */ bl __nwa__FUlPCcPCc +/* 80156804 00153764 7C 7D 1B 78 */ mr r29, r3 +lbl_80156808: +/* 80156808 00153768 80 1E 00 04 */ lwz r0, 4(r30) +/* 8015680C 0015376C 7F A5 EB 78 */ mr r5, r29 +/* 80156810 00153770 80 DE 00 0C */ lwz r6, 0xc(r30) +/* 80156814 00153774 38 61 00 14 */ addi r3, r1, 0x14 +/* 80156818 00153778 1C 00 00 44 */ mulli r0, r0, 0x44 +/* 8015681C 0015377C 38 81 00 0C */ addi r4, r1, 0xc +/* 80156820 00153780 7C C6 02 14 */ add r6, r6, r0 +/* 80156824 00153784 90 C1 00 0C */ stw r6, 0xc(r1) +/* 80156828 00153788 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 8015682C 0015378C 90 C1 00 08 */ stw r6, 8(r1) +/* 80156830 00153790 90 01 00 10 */ stw r0, 0x10(r1) +/* 80156834 00153794 90 01 00 14 */ stw r0, 0x14(r1) +/* 80156838 00153798 48 00 00 69 */ bl sub_801568a0 +/* 8015683C 0015379C 80 1E 00 04 */ lwz r0, 4(r30) +/* 80156840 001537A0 83 7E 00 0C */ lwz r27, 0xc(r30) +/* 80156844 001537A4 1C 00 00 44 */ mulli r0, r0, 0x44 +/* 80156848 001537A8 7F 9B 02 14 */ add r28, r27, r0 +/* 8015684C 001537AC 48 00 00 20 */ b lbl_8015686C +lbl_80156850: +/* 80156850 001537B0 28 1B 00 00 */ cmplwi r27, 0 +/* 80156854 001537B4 41 82 00 14 */ beq lbl_80156868 +/* 80156858 001537B8 34 1B 00 2C */ addic. r0, r27, 0x2c +/* 8015685C 001537BC 41 82 00 0C */ beq lbl_80156868 +/* 80156860 001537C0 38 7B 00 2C */ addi r3, r27, 0x2c +/* 80156864 001537C4 48 1E 72 7D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80156868: +/* 80156868 001537C8 3B 7B 00 44 */ addi r27, r27, 0x44 +lbl_8015686C: +/* 8015686C 001537CC 7C 1B E0 40 */ cmplw r27, r28 +/* 80156870 001537D0 40 82 FF E0 */ bne lbl_80156850 +/* 80156874 001537D4 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 80156878 001537D8 28 03 00 00 */ cmplwi r3, 0 +/* 8015687C 001537DC 41 82 00 08 */ beq lbl_80156884 +/* 80156880 001537E0 48 1B F0 B1 */ bl Free__7CMemoryFPCv +lbl_80156884: +/* 80156884 001537E4 93 BE 00 0C */ stw r29, 0xc(r30) +/* 80156888 001537E8 93 FE 00 08 */ stw r31, 8(r30) +lbl_8015688C: +/* 8015688C 001537EC BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 80156890 001537F0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80156894 001537F4 7C 08 03 A6 */ mtlr r0 +/* 80156898 001537F8 38 21 00 30 */ addi r1, r1, 0x30 +/* 8015689C 001537FC 4E 80 00 20 */ blr + +.global sub_801568a0 +sub_801568a0: +/* 801568A0 00153800 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801568A4 00153804 7C 08 02 A6 */ mflr r0 +/* 801568A8 00153808 90 01 00 24 */ stw r0, 0x24(r1) +/* 801568AC 0015380C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801568B0 00153810 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801568B4 00153814 7C BE 2B 78 */ mr r30, r5 +/* 801568B8 00153818 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801568BC 0015381C 7C 9D 23 78 */ mr r29, r4 +/* 801568C0 00153820 83 E3 00 00 */ lwz r31, 0(r3) +/* 801568C4 00153824 48 00 00 90 */ b lbl_80156954 +lbl_801568C8: +/* 801568C8 00153828 28 1E 00 00 */ cmplwi r30, 0 +/* 801568CC 0015382C 41 82 00 80 */ beq lbl_8015694C +/* 801568D0 00153830 80 1F 00 00 */ lwz r0, 0(r31) +/* 801568D4 00153834 38 7E 00 2C */ addi r3, r30, 0x2c +/* 801568D8 00153838 38 9F 00 2C */ addi r4, r31, 0x2c +/* 801568DC 0015383C 90 1E 00 00 */ stw r0, 0(r30) +/* 801568E0 00153840 80 1F 00 04 */ lwz r0, 4(r31) +/* 801568E4 00153844 90 1E 00 04 */ stw r0, 4(r30) +/* 801568E8 00153848 88 1F 00 08 */ lbz r0, 8(r31) +/* 801568EC 0015384C 98 1E 00 08 */ stb r0, 8(r30) +/* 801568F0 00153850 88 1F 00 09 */ lbz r0, 9(r31) +/* 801568F4 00153854 98 1E 00 09 */ stb r0, 9(r30) +/* 801568F8 00153858 C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 801568FC 0015385C D0 1E 00 0C */ stfs f0, 0xc(r30) +/* 80156900 00153860 C0 1F 00 10 */ lfs f0, 0x10(r31) +/* 80156904 00153864 D0 1E 00 10 */ stfs f0, 0x10(r30) +/* 80156908 00153868 C0 1F 00 14 */ lfs f0, 0x14(r31) +/* 8015690C 0015386C D0 1E 00 14 */ stfs f0, 0x14(r30) +/* 80156910 00153870 C0 1F 00 18 */ lfs f0, 0x18(r31) +/* 80156914 00153874 D0 1E 00 18 */ stfs f0, 0x18(r30) +/* 80156918 00153878 C0 1F 00 1C */ lfs f0, 0x1c(r31) +/* 8015691C 0015387C D0 1E 00 1C */ stfs f0, 0x1c(r30) +/* 80156920 00153880 C0 1F 00 20 */ lfs f0, 0x20(r31) +/* 80156924 00153884 D0 1E 00 20 */ stfs f0, 0x20(r30) +/* 80156928 00153888 C0 1F 00 24 */ lfs f0, 0x24(r31) +/* 8015692C 0015388C D0 1E 00 24 */ stfs f0, 0x24(r30) +/* 80156930 00153890 C0 1F 00 28 */ lfs f0, 0x28(r31) +/* 80156934 00153894 D0 1E 00 28 */ stfs f0, 0x28(r30) +/* 80156938 00153898 48 1E 78 29 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8015693C 0015389C A0 1F 00 3C */ lhz r0, 0x3c(r31) +/* 80156940 001538A0 B0 1E 00 3C */ sth r0, 0x3c(r30) +/* 80156944 001538A4 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 80156948 001538A8 D0 1E 00 40 */ stfs f0, 0x40(r30) +lbl_8015694C: +/* 8015694C 001538AC 3B DE 00 44 */ addi r30, r30, 0x44 +/* 80156950 001538B0 3B FF 00 44 */ addi r31, r31, 0x44 +lbl_80156954: +/* 80156954 001538B4 80 1D 00 00 */ lwz r0, 0(r29) +/* 80156958 001538B8 7C 1F 00 40 */ cmplw r31, r0 +/* 8015695C 001538BC 40 82 FF 6C */ bne lbl_801568C8 +/* 80156960 001538C0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80156964 001538C4 7F C3 F3 78 */ mr r3, r30 +/* 80156968 001538C8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8015696C 001538CC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80156970 001538D0 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80156974 001538D4 7C 08 03 A6 */ mtlr r0 +/* 80156978 001538D8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8015697C 001538DC 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Factories/CScannableObjectInfo.s b/asm/Kyoto_CWD/Factories/CScannableObjectInfo.s new file mode 100644 index 00000000..e88519c7 --- /dev/null +++ b/asm/Kyoto_CWD/Factories/CScannableObjectInfo.s @@ -0,0 +1,487 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global FScannableObjectInfoFactory__FRC10SObjectTagR12CInputStreamRC15CVParamTransfer +FScannableObjectInfoFactory__FRC10SObjectTagR12CInputStreamRC15CVParamTransfer: +/* 8016991C 0016687C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80169920 00166880 7C 08 02 A6 */ mflr r0 +/* 80169924 00166884 3C C0 80 3D */ lis r6, lbl_803D0490@ha +/* 80169928 00166888 90 01 00 34 */ stw r0, 0x34(r1) +/* 8016992C 0016688C 38 C6 04 90 */ addi r6, r6, lbl_803D0490@l +/* 80169930 00166890 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80169934 00166894 7C BF 2B 78 */ mr r31, r5 +/* 80169938 00166898 38 A0 00 00 */ li r5, 0 +/* 8016993C 0016689C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80169940 001668A0 7C 9E 23 78 */ mr r30, r4 +/* 80169944 001668A4 38 86 00 3C */ addi r4, r6, 0x3c +/* 80169948 001668A8 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8016994C 001668AC 7C 7D 1B 78 */ mr r29, r3 +/* 80169950 001668B0 38 60 00 88 */ li r3, 0x88 +/* 80169954 001668B4 48 1A BF 19 */ bl __nw__FUlPCcPCc +/* 80169958 001668B8 7C 64 1B 79 */ or. r4, r3, r3 +/* 8016995C 001668BC 41 82 00 14 */ beq lbl_80169970 +/* 80169960 001668C0 80 BE 00 04 */ lwz r5, 4(r30) +/* 80169964 001668C4 7F E4 FB 78 */ mr r4, r31 +/* 80169968 001668C8 48 00 04 71 */ bl __ct__20CScannableObjectInfoFR12CInputStreamUi +/* 8016996C 001668CC 7C 64 1B 78 */ mr r4, r3 +lbl_80169970: +/* 80169970 001668D0 7C 04 00 D0 */ neg r0, r4 +/* 80169974 001668D4 90 81 00 0C */ stw r4, 0xc(r1) +/* 80169978 001668D8 7C 00 23 78 */ or r0, r0, r4 +/* 8016997C 001668DC 38 61 00 10 */ addi r3, r1, 0x10 +/* 80169980 001668E0 54 00 0F FE */ srwi r0, r0, 0x1f +/* 80169984 001668E4 38 81 00 08 */ addi r4, r1, 8 +/* 80169988 001668E8 98 01 00 08 */ stb r0, 8(r1) +/* 8016998C 001668EC 48 00 01 D1 */ bl "GetIObjObjectFor__30TToken<20CScannableObjectInfo>FRCQ24rstl32auto_ptr<20CScannableObjectInfo>" +/* 80169990 001668F0 80 61 00 14 */ lwz r3, 0x14(r1) +/* 80169994 001668F4 38 00 00 00 */ li r0, 0 +/* 80169998 001668F8 98 01 00 10 */ stb r0, 0x10(r1) +/* 8016999C 001668FC 7C 03 00 D0 */ neg r0, r3 +/* 801699A0 00166900 7C 00 1B 78 */ or r0, r0, r3 +/* 801699A4 00166904 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801699A8 00166908 98 1D 00 00 */ stb r0, 0(r29) +/* 801699AC 0016690C 90 7D 00 04 */ stw r3, 4(r29) +/* 801699B0 00166910 88 01 00 10 */ lbz r0, 0x10(r1) +/* 801699B4 00166914 28 00 00 00 */ cmplwi r0, 0 +/* 801699B8 00166918 41 82 00 24 */ beq lbl_801699DC +/* 801699BC 0016691C 80 61 00 14 */ lwz r3, 0x14(r1) +/* 801699C0 00166920 28 03 00 00 */ cmplwi r3, 0 +/* 801699C4 00166924 41 82 00 18 */ beq lbl_801699DC +/* 801699C8 00166928 81 83 00 00 */ lwz r12, 0(r3) +/* 801699CC 0016692C 38 80 00 01 */ li r4, 1 +/* 801699D0 00166930 81 8C 00 08 */ lwz r12, 8(r12) +/* 801699D4 00166934 7D 89 03 A6 */ mtctr r12 +/* 801699D8 00166938 4E 80 04 21 */ bctrl +lbl_801699DC: +/* 801699DC 0016693C 88 01 00 08 */ lbz r0, 8(r1) +/* 801699E0 00166940 28 00 00 00 */ cmplwi r0, 0 +/* 801699E4 00166944 41 82 00 70 */ beq lbl_80169A54 +/* 801699E8 00166948 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801699EC 0016694C 28 03 00 00 */ cmplwi r3, 0 +/* 801699F0 00166950 41 82 00 64 */ beq lbl_80169A54 +/* 801699F4 00166954 34 03 00 14 */ addic. r0, r3, 0x14 +/* 801699F8 00166958 41 82 00 58 */ beq lbl_80169A50 +/* 801699FC 0016695C 80 C3 00 14 */ lwz r6, 0x14(r3) +/* 80169A00 00166960 38 80 00 00 */ li r4, 0 +/* 80169A04 00166964 2C 06 00 00 */ cmpwi r6, 0 +/* 80169A08 00166968 40 81 00 40 */ ble lbl_80169A48 +/* 80169A0C 0016696C 2C 06 00 08 */ cmpwi r6, 8 +/* 80169A10 00166970 38 A6 FF F8 */ addi r5, r6, -8 +/* 80169A14 00166974 40 81 00 20 */ ble lbl_80169A34 +/* 80169A18 00166978 38 05 00 07 */ addi r0, r5, 7 +/* 80169A1C 0016697C 54 00 E8 FE */ srwi r0, r0, 3 +/* 80169A20 00166980 7C 09 03 A6 */ mtctr r0 +/* 80169A24 00166984 2C 05 00 00 */ cmpwi r5, 0 +/* 80169A28 00166988 40 81 00 0C */ ble lbl_80169A34 +lbl_80169A2C: +/* 80169A2C 0016698C 38 84 00 08 */ addi r4, r4, 8 +/* 80169A30 00166990 42 00 FF FC */ bdnz lbl_80169A2C +lbl_80169A34: +/* 80169A34 00166994 7C 04 30 50 */ subf r0, r4, r6 +/* 80169A38 00166998 7C 09 03 A6 */ mtctr r0 +/* 80169A3C 0016699C 7C 04 30 00 */ cmpw r4, r6 +/* 80169A40 001669A0 40 80 00 08 */ bge lbl_80169A48 +lbl_80169A44: +/* 80169A44 001669A4 42 00 00 00 */ bdnz lbl_80169A44 +lbl_80169A48: +/* 80169A48 001669A8 38 00 00 00 */ li r0, 0 +/* 80169A4C 001669AC 90 03 00 14 */ stw r0, 0x14(r3) +lbl_80169A50: +/* 80169A50 001669B0 48 1A BE E1 */ bl Free__7CMemoryFPCv +lbl_80169A54: +/* 80169A54 001669B4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80169A58 001669B8 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80169A5C 001669BC 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80169A60 001669C0 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80169A64 001669C4 7C 08 03 A6 */ mtlr r0 +/* 80169A68 001669C8 38 21 00 30 */ addi r1, r1, 0x30 +/* 80169A6C 001669CC 4E 80 00 20 */ blr + +.global sub_80169a70 +sub_80169a70: +/* 80169A70 001669D0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80169A74 001669D4 7C 08 02 A6 */ mflr r0 +/* 80169A78 001669D8 90 01 00 14 */ stw r0, 0x14(r1) +/* 80169A7C 001669DC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80169A80 001669E0 7C 9F 23 78 */ mr r31, r4 +/* 80169A84 001669E4 93 C1 00 08 */ stw r30, 8(r1) +/* 80169A88 001669E8 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80169A8C 001669EC 41 82 00 B4 */ beq lbl_80169B40 +/* 80169A90 001669F0 3C 60 80 3E */ lis r3, lbl_803E3AC8@ha +/* 80169A94 001669F4 38 03 3A C8 */ addi r0, r3, lbl_803E3AC8@l +/* 80169A98 001669F8 90 1E 00 00 */ stw r0, 0(r30) +/* 80169A9C 001669FC 80 7E 00 04 */ lwz r3, 4(r30) +/* 80169AA0 00166A00 28 03 00 00 */ cmplwi r3, 0 +/* 80169AA4 00166A04 41 82 00 68 */ beq lbl_80169B0C +/* 80169AA8 00166A08 41 82 00 64 */ beq lbl_80169B0C +/* 80169AAC 00166A0C 34 03 00 14 */ addic. r0, r3, 0x14 +/* 80169AB0 00166A10 41 82 00 58 */ beq lbl_80169B08 +/* 80169AB4 00166A14 80 C3 00 14 */ lwz r6, 0x14(r3) +/* 80169AB8 00166A18 38 80 00 00 */ li r4, 0 +/* 80169ABC 00166A1C 2C 06 00 00 */ cmpwi r6, 0 +/* 80169AC0 00166A20 40 81 00 40 */ ble lbl_80169B00 +/* 80169AC4 00166A24 2C 06 00 08 */ cmpwi r6, 8 +/* 80169AC8 00166A28 38 A6 FF F8 */ addi r5, r6, -8 +/* 80169ACC 00166A2C 40 81 00 20 */ ble lbl_80169AEC +/* 80169AD0 00166A30 38 05 00 07 */ addi r0, r5, 7 +/* 80169AD4 00166A34 54 00 E8 FE */ srwi r0, r0, 3 +/* 80169AD8 00166A38 7C 09 03 A6 */ mtctr r0 +/* 80169ADC 00166A3C 2C 05 00 00 */ cmpwi r5, 0 +/* 80169AE0 00166A40 40 81 00 0C */ ble lbl_80169AEC +lbl_80169AE4: +/* 80169AE4 00166A44 38 84 00 08 */ addi r4, r4, 8 +/* 80169AE8 00166A48 42 00 FF FC */ bdnz lbl_80169AE4 +lbl_80169AEC: +/* 80169AEC 00166A4C 7C 04 30 50 */ subf r0, r4, r6 +/* 80169AF0 00166A50 7C 09 03 A6 */ mtctr r0 +/* 80169AF4 00166A54 7C 04 30 00 */ cmpw r4, r6 +/* 80169AF8 00166A58 40 80 00 08 */ bge lbl_80169B00 +lbl_80169AFC: +/* 80169AFC 00166A5C 42 00 00 00 */ bdnz lbl_80169AFC +lbl_80169B00: +/* 80169B00 00166A60 38 00 00 00 */ li r0, 0 +/* 80169B04 00166A64 90 03 00 14 */ stw r0, 0x14(r3) +lbl_80169B08: +/* 80169B08 00166A68 48 1A BE 29 */ bl Free__7CMemoryFPCv +lbl_80169B0C: +/* 80169B0C 00166A6C 28 1E 00 00 */ cmplwi r30, 0 +/* 80169B10 00166A70 41 82 00 20 */ beq lbl_80169B30 +/* 80169B14 00166A74 3C 60 80 3E */ lis r3, lbl_803D8D78@ha +/* 80169B18 00166A78 38 03 8D 78 */ addi r0, r3, lbl_803D8D78@l +/* 80169B1C 00166A7C 90 1E 00 00 */ stw r0, 0(r30) +/* 80169B20 00166A80 41 82 00 10 */ beq lbl_80169B30 +/* 80169B24 00166A84 3C 60 80 3E */ lis r3, lbl_803D8D6C@ha +/* 80169B28 00166A88 38 03 8D 6C */ addi r0, r3, lbl_803D8D6C@l +/* 80169B2C 00166A8C 90 1E 00 00 */ stw r0, 0(r30) +lbl_80169B30: +/* 80169B30 00166A90 7F E0 07 35 */ extsh. r0, r31 +/* 80169B34 00166A94 40 81 00 0C */ ble lbl_80169B40 +/* 80169B38 00166A98 7F C3 F3 78 */ mr r3, r30 +/* 80169B3C 00166A9C 48 1A BD F5 */ bl Free__7CMemoryFPCv +lbl_80169B40: +/* 80169B40 00166AA0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80169B44 00166AA4 7F C3 F3 78 */ mr r3, r30 +/* 80169B48 00166AA8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80169B4C 00166AAC 83 C1 00 08 */ lwz r30, 8(r1) +/* 80169B50 00166AB0 7C 08 03 A6 */ mtlr r0 +/* 80169B54 00166AB4 38 21 00 10 */ addi r1, r1, 0x10 +/* 80169B58 00166AB8 4E 80 00 20 */ blr + +.global "GetIObjObjectFor__30TToken<20CScannableObjectInfo>FRCQ24rstl32auto_ptr<20CScannableObjectInfo>" +"GetIObjObjectFor__30TToken<20CScannableObjectInfo>FRCQ24rstl32auto_ptr<20CScannableObjectInfo>": +/* 80169B5C 00166ABC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80169B60 00166AC0 7C 08 02 A6 */ mflr r0 +/* 80169B64 00166AC4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80169B68 00166AC8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80169B6C 00166ACC 7C 7F 1B 78 */ mr r31, r3 +/* 80169B70 00166AD0 48 00 00 19 */ bl sub_80169b88 +/* 80169B74 00166AD4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80169B78 00166AD8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80169B7C 00166ADC 7C 08 03 A6 */ mtlr r0 +/* 80169B80 00166AE0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80169B84 00166AE4 4E 80 00 20 */ blr + +.global sub_80169b88 +sub_80169b88: +/* 80169B88 00166AE8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80169B8C 00166AEC 7C 08 02 A6 */ mflr r0 +/* 80169B90 00166AF0 3C A0 80 3D */ lis r5, lbl_803D0490@ha +/* 80169B94 00166AF4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80169B98 00166AF8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80169B9C 00166AFC 7C 9F 23 78 */ mr r31, r4 +/* 80169BA0 00166B00 93 C1 00 08 */ stw r30, 8(r1) +/* 80169BA4 00166B04 7C 7E 1B 78 */ mr r30, r3 +/* 80169BA8 00166B08 38 65 04 90 */ addi r3, r5, lbl_803D0490@l +/* 80169BAC 00166B0C 38 A0 00 00 */ li r5, 0 +/* 80169BB0 00166B10 38 83 00 3C */ addi r4, r3, 0x3c +/* 80169BB4 00166B14 38 60 00 08 */ li r3, 8 +/* 80169BB8 00166B18 48 1A BC B5 */ bl __nw__FUlPCcPCc +/* 80169BBC 00166B1C 28 03 00 00 */ cmplwi r3, 0 +/* 80169BC0 00166B20 41 82 00 38 */ beq lbl_80169BF8 +/* 80169BC4 00166B24 3C 80 80 3E */ lis r4, lbl_803D8D6C@ha +/* 80169BC8 00166B28 3C A0 80 3E */ lis r5, lbl_803D8D78@ha +/* 80169BCC 00166B2C 38 04 8D 6C */ addi r0, r4, lbl_803D8D6C@l +/* 80169BD0 00166B30 3C 80 80 3E */ lis r4, lbl_803E3AC8@ha +/* 80169BD4 00166B34 90 03 00 00 */ stw r0, 0(r3) +/* 80169BD8 00166B38 38 C5 8D 78 */ addi r6, r5, lbl_803D8D78@l +/* 80169BDC 00166B3C 38 A0 00 00 */ li r5, 0 +/* 80169BE0 00166B40 38 04 3A C8 */ addi r0, r4, lbl_803E3AC8@l +/* 80169BE4 00166B44 90 C3 00 00 */ stw r6, 0(r3) +/* 80169BE8 00166B48 98 BF 00 00 */ stb r5, 0(r31) +/* 80169BEC 00166B4C 80 9F 00 04 */ lwz r4, 4(r31) +/* 80169BF0 00166B50 90 83 00 04 */ stw r4, 4(r3) +/* 80169BF4 00166B54 90 03 00 00 */ stw r0, 0(r3) +lbl_80169BF8: +/* 80169BF8 00166B58 7C 03 00 D0 */ neg r0, r3 +/* 80169BFC 00166B5C 7C 00 1B 78 */ or r0, r0, r3 +/* 80169C00 00166B60 54 00 0F FE */ srwi r0, r0, 0x1f +/* 80169C04 00166B64 98 1E 00 00 */ stb r0, 0(r30) +/* 80169C08 00166B68 90 7E 00 04 */ stw r3, 4(r30) +/* 80169C0C 00166B6C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80169C10 00166B70 83 C1 00 08 */ lwz r30, 8(r1) +/* 80169C14 00166B74 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80169C18 00166B78 7C 08 03 A6 */ mtlr r0 +/* 80169C1C 00166B7C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80169C20 00166B80 4E 80 00 20 */ blr + +.global LoadVersion4or5__20CScannableObjectInfoFR12CInputStreamUi +LoadVersion4or5__20CScannableObjectInfoFR12CInputStreamUi: +/* 80169C24 00166B84 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80169C28 00166B88 7C 08 02 A6 */ mflr r0 +/* 80169C2C 00166B8C 90 01 00 64 */ stw r0, 0x64(r1) +/* 80169C30 00166B90 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 80169C34 00166B94 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 80169C38 00166B98 BF 41 00 38 */ stmw r26, 0x38(r1) +/* 80169C3C 00166B9C 7C 9C 23 78 */ mr r28, r4 +/* 80169C40 00166BA0 7C 7B 1B 78 */ mr r27, r3 +/* 80169C44 00166BA4 7C BD 2B 78 */ mr r29, r5 +/* 80169C48 00166BA8 7F 83 E3 78 */ mr r3, r28 +/* 80169C4C 00166BAC 48 1D 50 39 */ bl ReadLong__12CInputStreamFv +/* 80169C50 00166BB0 7F 83 E3 78 */ mr r3, r28 +/* 80169C54 00166BB4 48 1D 50 31 */ bl ReadLong__12CInputStreamFv +/* 80169C58 00166BB8 7F 83 E3 78 */ mr r3, r28 +/* 80169C5C 00166BBC 48 1D 50 29 */ bl ReadLong__12CInputStreamFv +/* 80169C60 00166BC0 28 1D 00 04 */ cmplwi r29, 4 +/* 80169C64 00166BC4 90 7B 00 04 */ stw r3, 4(r27) +/* 80169C68 00166BC8 40 80 00 14 */ bge lbl_80169C7C +/* 80169C6C 00166BCC 7F 83 E3 78 */ mr r3, r28 +/* 80169C70 00166BD0 48 1D 4F B9 */ bl ReadFloat__12CInputStreamFv +/* 80169C74 00166BD4 D0 3B 00 08 */ stfs f1, 8(r27) +/* 80169C78 00166BD8 48 00 00 20 */ b lbl_80169C98 +lbl_80169C7C: +/* 80169C7C 00166BDC 7F 83 E3 78 */ mr r3, r28 +/* 80169C80 00166BE0 48 1D 50 05 */ bl ReadLong__12CInputStreamFv +/* 80169C84 00166BE4 80 8D A1 38 */ lwz r4, gpTweakGui@sda21(r13) +/* 80169C88 00166BE8 54 60 10 3A */ slwi r0, r3, 2 +/* 80169C8C 00166BEC 7C 64 02 14 */ add r3, r4, r0 +/* 80169C90 00166BF0 C0 03 02 C8 */ lfs f0, 0x2c8(r3) +/* 80169C94 00166BF4 D0 1B 00 08 */ stfs f0, 8(r27) +lbl_80169C98: +/* 80169C98 00166BF8 7F 83 E3 78 */ mr r3, r28 +/* 80169C9C 00166BFC 48 1D 4F E9 */ bl ReadLong__12CInputStreamFv +/* 80169CA0 00166C00 28 1D 00 04 */ cmplwi r29, 4 +/* 80169CA4 00166C04 90 7B 00 0C */ stw r3, 0xc(r27) +/* 80169CA8 00166C08 40 81 00 10 */ ble lbl_80169CB8 +/* 80169CAC 00166C0C 7F 83 E3 78 */ mr r3, r28 +/* 80169CB0 00166C10 48 1D 50 2D */ bl ReadBool__12CInputStreamFv +/* 80169CB4 00166C14 98 7B 00 10 */ stb r3, 0x10(r27) +lbl_80169CB8: +/* 80169CB8 00166C18 3B C0 00 00 */ li r30, 0 +/* 80169CBC 00166C1C 3B FB 00 18 */ addi r31, r27, 0x18 +lbl_80169CC0: +/* 80169CC0 00166C20 7F 83 E3 78 */ mr r3, r28 +/* 80169CC4 00166C24 48 1D 4F C1 */ bl ReadLong__12CInputStreamFv +/* 80169CC8 00166C28 7C 7A 1B 78 */ mr r26, r3 +/* 80169CCC 00166C2C 7F 83 E3 78 */ mr r3, r28 +/* 80169CD0 00166C30 48 1D 4F 59 */ bl ReadFloat__12CInputStreamFv +/* 80169CD4 00166C34 FF E0 08 90 */ fmr f31, f1 +/* 80169CD8 00166C38 7F 83 E3 78 */ mr r3, r28 +/* 80169CDC 00166C3C 48 1D 4F A9 */ bl ReadLong__12CInputStreamFv +/* 80169CE0 00166C40 28 1D 00 01 */ cmplwi r29, 1 +/* 80169CE4 00166C44 90 61 00 20 */ stw r3, 0x20(r1) +/* 80169CE8 00166C48 40 82 00 18 */ bne lbl_80169D00 +/* 80169CEC 00166C4C 38 61 00 08 */ addi r3, r1, 8 +/* 80169CF0 00166C50 38 80 00 00 */ li r4, 0 +/* 80169CF4 00166C54 38 A0 00 00 */ li r5, 0 +/* 80169CF8 00166C58 48 1A A6 55 */ bl __ct__9CVector2iFii +/* 80169CFC 00166C5C 48 00 00 20 */ b lbl_80169D1C +lbl_80169D00: +/* 80169D00 00166C60 7F 83 E3 78 */ mr r3, r28 +/* 80169D04 00166C64 48 1D 4F 81 */ bl ReadLong__12CInputStreamFv +/* 80169D08 00166C68 90 61 00 10 */ stw r3, 0x10(r1) +/* 80169D0C 00166C6C 7F 83 E3 78 */ mr r3, r28 +/* 80169D10 00166C70 48 1D 4F 75 */ bl ReadLong__12CInputStreamFv +/* 80169D14 00166C74 90 61 00 14 */ stw r3, 0x14(r1) +/* 80169D18 00166C78 38 61 00 10 */ addi r3, r1, 0x10 +lbl_80169D1C: +/* 80169D1C 00166C7C 80 83 00 00 */ lwz r4, 0(r3) +/* 80169D20 00166C80 28 1D 00 01 */ cmplwi r29, 1 +/* 80169D24 00166C84 80 03 00 04 */ lwz r0, 4(r3) +/* 80169D28 00166C88 90 81 00 24 */ stw r4, 0x24(r1) +/* 80169D2C 00166C8C 90 01 00 28 */ stw r0, 0x28(r1) +/* 80169D30 00166C90 40 82 00 0C */ bne lbl_80169D3C +/* 80169D34 00166C94 C0 22 A0 68 */ lfs f1, lbl_805ABD88@sda21(r2) +/* 80169D38 00166C98 48 00 00 0C */ b lbl_80169D44 +lbl_80169D3C: +/* 80169D3C 00166C9C 7F 83 E3 78 */ mr r3, r28 +/* 80169D40 00166CA0 48 1D 4E E9 */ bl ReadFloat__12CInputStreamFv +lbl_80169D44: +/* 80169D44 00166CA4 28 1D 00 03 */ cmplwi r29, 3 +/* 80169D48 00166CA8 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 80169D4C 00166CAC 40 80 00 0C */ bge lbl_80169D58 +/* 80169D50 00166CB0 C0 22 A0 68 */ lfs f1, lbl_805ABD88@sda21(r2) +/* 80169D54 00166CB4 48 00 00 0C */ b lbl_80169D60 +lbl_80169D58: +/* 80169D58 00166CB8 7F 83 E3 78 */ mr r3, r28 +/* 80169D5C 00166CBC 48 1D 4E CD */ bl ReadFloat__12CInputStreamFv +lbl_80169D60: +/* 80169D60 00166CC0 80 1B 00 14 */ lwz r0, 0x14(r27) +/* 80169D64 00166CC4 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 80169D68 00166CC8 1C 00 00 1C */ mulli r0, r0, 0x1c +/* 80169D6C 00166CCC 7C 9F 02 15 */ add. r4, r31, r0 +/* 80169D70 00166CD0 41 82 00 34 */ beq lbl_80169DA4 +/* 80169D74 00166CD4 93 44 00 00 */ stw r26, 0(r4) +/* 80169D78 00166CD8 FC 00 08 18 */ frsp f0, f1 +/* 80169D7C 00166CDC 80 01 00 20 */ lwz r0, 0x20(r1) +/* 80169D80 00166CE0 D3 E4 00 04 */ stfs f31, 4(r4) +/* 80169D84 00166CE4 80 61 00 24 */ lwz r3, 0x24(r1) +/* 80169D88 00166CE8 90 04 00 08 */ stw r0, 8(r4) +/* 80169D8C 00166CEC 80 01 00 28 */ lwz r0, 0x28(r1) +/* 80169D90 00166CF0 90 64 00 0C */ stw r3, 0xc(r4) +/* 80169D94 00166CF4 C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 80169D98 00166CF8 90 04 00 10 */ stw r0, 0x10(r4) +/* 80169D9C 00166CFC D0 24 00 14 */ stfs f1, 0x14(r4) +/* 80169DA0 00166D00 D0 04 00 18 */ stfs f0, 0x18(r4) +lbl_80169DA4: +/* 80169DA4 00166D04 80 7B 00 14 */ lwz r3, 0x14(r27) +/* 80169DA8 00166D08 3B DE 00 01 */ addi r30, r30, 1 +/* 80169DAC 00166D0C 2C 1E 00 04 */ cmpwi r30, 4 +/* 80169DB0 00166D10 38 03 00 01 */ addi r0, r3, 1 +/* 80169DB4 00166D14 90 1B 00 14 */ stw r0, 0x14(r27) +/* 80169DB8 00166D18 41 80 FF 08 */ blt lbl_80169CC0 +/* 80169DBC 00166D1C E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 80169DC0 00166D20 CB E1 00 50 */ lfd f31, 0x50(r1) +/* 80169DC4 00166D24 BB 41 00 38 */ lmw r26, 0x38(r1) +/* 80169DC8 00166D28 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80169DCC 00166D2C 7C 08 03 A6 */ mtlr r0 +/* 80169DD0 00166D30 38 21 00 60 */ addi r1, r1, 0x60 +/* 80169DD4 00166D34 4E 80 00 20 */ blr + +.global __ct__20CScannableObjectInfoFR12CInputStreamUi +__ct__20CScannableObjectInfoFR12CInputStreamUi: +/* 80169DD8 00166D38 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80169DDC 00166D3C 7C 08 02 A6 */ mflr r0 +/* 80169DE0 00166D40 C0 02 A0 68 */ lfs f0, lbl_805ABD88@sda21(r2) +/* 80169DE4 00166D44 90 01 00 14 */ stw r0, 0x14(r1) +/* 80169DE8 00166D48 38 00 00 00 */ li r0, 0 +/* 80169DEC 00166D4C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80169DF0 00166D50 7C 7F 1B 78 */ mr r31, r3 +/* 80169DF4 00166D54 93 C1 00 08 */ stw r30, 8(r1) +/* 80169DF8 00166D58 7C 9E 23 78 */ mr r30, r4 +/* 80169DFC 00166D5C 90 A3 00 00 */ stw r5, 0(r3) +/* 80169E00 00166D60 38 60 FF FF */ li r3, -1 +/* 80169E04 00166D64 90 7F 00 04 */ stw r3, 4(r31) +/* 80169E08 00166D68 7F C3 F3 78 */ mr r3, r30 +/* 80169E0C 00166D6C D0 1F 00 08 */ stfs f0, 8(r31) +/* 80169E10 00166D70 90 1F 00 0C */ stw r0, 0xc(r31) +/* 80169E14 00166D74 98 1F 00 10 */ stb r0, 0x10(r31) +/* 80169E18 00166D78 90 1F 00 14 */ stw r0, 0x14(r31) +/* 80169E1C 00166D7C 48 1D 4E 69 */ bl ReadLong__12CInputStreamFv +/* 80169E20 00166D80 7C 65 1B 78 */ mr r5, r3 +/* 80169E24 00166D84 7F E3 FB 78 */ mr r3, r31 +/* 80169E28 00166D88 7F C4 F3 78 */ mr r4, r30 +/* 80169E2C 00166D8C 4B FF FD F9 */ bl LoadVersion4or5__20CScannableObjectInfoFR12CInputStreamUi +/* 80169E30 00166D90 38 BF 00 14 */ addi r5, r31, 0x14 +/* 80169E34 00166D94 38 C0 00 00 */ li r6, 0 +/* 80169E38 00166D98 38 80 00 00 */ li r4, 0 +/* 80169E3C 00166D9C 48 00 00 20 */ b lbl_80169E5C +lbl_80169E40: +/* 80169E40 00166DA0 7C 65 22 14 */ add r3, r5, r4 +/* 80169E44 00166DA4 C0 1F 00 08 */ lfs f0, 8(r31) +/* 80169E48 00166DA8 C0 23 00 08 */ lfs f1, 8(r3) +/* 80169E4C 00166DAC 38 84 00 1C */ addi r4, r4, 0x1c +/* 80169E50 00166DB0 38 C6 00 01 */ addi r6, r6, 1 +/* 80169E54 00166DB4 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80169E58 00166DB8 D0 03 00 08 */ stfs f0, 8(r3) +lbl_80169E5C: +/* 80169E5C 00166DBC 80 05 00 00 */ lwz r0, 0(r5) +/* 80169E60 00166DC0 7C 06 00 00 */ cmpw r6, r0 +/* 80169E64 00166DC4 41 80 FF DC */ blt lbl_80169E40 +/* 80169E68 00166DC8 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 80169E6C 00166DCC 38 DF 00 14 */ addi r6, r31, 0x14 +/* 80169E70 00166DD0 39 00 00 00 */ li r8, 0 +/* 80169E74 00166DD4 38 A0 00 00 */ li r5, 0 +/* 80169E78 00166DD8 C0 23 02 44 */ lfs f1, 0x244(r3) +/* 80169E7C 00166DDC 48 00 00 5C */ b lbl_80169ED8 +lbl_80169E80: +/* 80169E80 00166DE0 7C 66 2A 14 */ add r3, r6, r5 +/* 80169E84 00166DE4 80 03 00 0C */ lwz r0, 0xc(r3) +/* 80169E88 00166DE8 2C 00 FF FF */ cmpwi r0, -1 +/* 80169E8C 00166DEC 41 82 00 44 */ beq lbl_80169ED0 +/* 80169E90 00166DF0 C0 1F 00 08 */ lfs f0, 8(r31) +/* 80169E94 00166DF4 1C 88 00 1C */ mulli r4, r8, 0x1c +/* 80169E98 00166DF8 7D 09 43 78 */ mr r9, r8 +/* 80169E9C 00166DFC EC 00 08 2A */ fadds f0, f0, f1 +/* 80169EA0 00166E00 38 FF 00 14 */ addi r7, r31, 0x14 +/* 80169EA4 00166E04 D0 1F 00 08 */ stfs f0, 8(r31) +/* 80169EA8 00166E08 48 00 00 1C */ b lbl_80169EC4 +lbl_80169EAC: +/* 80169EAC 00166E0C 7C 67 22 14 */ add r3, r7, r4 +/* 80169EB0 00166E10 38 84 00 1C */ addi r4, r4, 0x1c +/* 80169EB4 00166E14 C0 03 00 08 */ lfs f0, 8(r3) +/* 80169EB8 00166E18 39 29 00 01 */ addi r9, r9, 1 +/* 80169EBC 00166E1C EC 00 08 2A */ fadds f0, f0, f1 +/* 80169EC0 00166E20 D0 03 00 08 */ stfs f0, 8(r3) +lbl_80169EC4: +/* 80169EC4 00166E24 80 07 00 00 */ lwz r0, 0(r7) +/* 80169EC8 00166E28 7C 09 00 00 */ cmpw r9, r0 +/* 80169ECC 00166E2C 41 80 FF E0 */ blt lbl_80169EAC +lbl_80169ED0: +/* 80169ED0 00166E30 38 A5 00 1C */ addi r5, r5, 0x1c +/* 80169ED4 00166E34 39 08 00 01 */ addi r8, r8, 1 +lbl_80169ED8: +/* 80169ED8 00166E38 80 06 00 00 */ lwz r0, 0(r6) +/* 80169EDC 00166E3C 7C 08 00 00 */ cmpw r8, r0 +/* 80169EE0 00166E40 41 80 FF A0 */ blt lbl_80169E80 +/* 80169EE4 00166E44 39 1F 00 14 */ addi r8, r31, 0x14 +/* 80169EE8 00166E48 39 40 00 00 */ li r10, 0 +/* 80169EEC 00166E4C 38 E0 00 00 */ li r7, 0 +/* 80169EF0 00166E50 38 80 FF FF */ li r4, -1 +/* 80169EF4 00166E54 48 00 00 50 */ b lbl_80169F44 +lbl_80169EF8: +/* 80169EF8 00166E58 39 6A 00 01 */ addi r11, r10, 1 +/* 80169EFC 00166E5C 7C 68 3A 14 */ add r3, r8, r7 +/* 80169F00 00166E60 1C CB 00 1C */ mulli r6, r11, 0x1c +/* 80169F04 00166E64 48 00 00 2C */ b lbl_80169F30 +lbl_80169F08: +/* 80169F08 00166E68 7C A8 32 14 */ add r5, r8, r6 +/* 80169F0C 00166E6C 81 23 00 0C */ lwz r9, 0xc(r3) +/* 80169F10 00166E70 80 05 00 0C */ lwz r0, 0xc(r5) +/* 80169F14 00166E74 7C 09 00 00 */ cmpw r9, r0 +/* 80169F18 00166E78 40 82 00 10 */ bne lbl_80169F28 +/* 80169F1C 00166E7C 2C 09 FF FF */ cmpwi r9, -1 +/* 80169F20 00166E80 41 82 00 08 */ beq lbl_80169F28 +/* 80169F24 00166E84 90 85 00 0C */ stw r4, 0xc(r5) +lbl_80169F28: +/* 80169F28 00166E88 38 C6 00 1C */ addi r6, r6, 0x1c +/* 80169F2C 00166E8C 39 6B 00 01 */ addi r11, r11, 1 +lbl_80169F30: +/* 80169F30 00166E90 80 08 00 00 */ lwz r0, 0(r8) +/* 80169F34 00166E94 7C 0B 00 00 */ cmpw r11, r0 +/* 80169F38 00166E98 41 80 FF D0 */ blt lbl_80169F08 +/* 80169F3C 00166E9C 38 E7 00 1C */ addi r7, r7, 0x1c +/* 80169F40 00166EA0 39 4A 00 01 */ addi r10, r10, 1 +lbl_80169F44: +/* 80169F44 00166EA4 80 68 00 00 */ lwz r3, 0(r8) +/* 80169F48 00166EA8 38 03 FF FF */ addi r0, r3, -1 +/* 80169F4C 00166EAC 7C 0A 00 00 */ cmpw r10, r0 +/* 80169F50 00166EB0 41 80 FF A8 */ blt lbl_80169EF8 +/* 80169F54 00166EB4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80169F58 00166EB8 7F E3 FB 78 */ mr r3, r31 +/* 80169F5C 00166EBC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80169F60 00166EC0 83 C1 00 08 */ lwz r30, 8(r1) +/* 80169F64 00166EC4 7C 08 03 A6 */ mtlr r0 +/* 80169F68 00166EC8 38 21 00 10 */ addi r1, r1, 0x10 +/* 80169F6C 00166ECC 4E 80 00 20 */ blr + +.global GetImagePaneName__16CPauseScreenBaseFUi +GetImagePaneName__16CPauseScreenBaseFUi: +/* 80169F70 00166ED0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80169F74 00166ED4 7C 08 02 A6 */ mflr r0 +/* 80169F78 00166ED8 3C 80 80 3D */ lis r4, lbl_803D0440@ha +/* 80169F7C 00166EDC 3C C0 80 3D */ lis r6, lbl_803D0490@ha +/* 80169F80 00166EE0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80169F84 00166EE4 54 60 10 3A */ slwi r0, r3, 2 +/* 80169F88 00166EE8 3C A0 80 3D */ lis r5, lbl_803D0430@ha +/* 80169F8C 00166EEC 38 64 04 40 */ addi r3, r4, lbl_803D0440@l +/* 80169F90 00166EF0 38 85 04 30 */ addi r4, r5, lbl_803D0430@l +/* 80169F94 00166EF4 38 C6 04 90 */ addi r6, r6, lbl_803D0490@l +/* 80169F98 00166EF8 7C A3 00 2E */ lwzx r5, r3, r0 +/* 80169F9C 00166EFC 38 66 00 43 */ addi r3, r6, 0x43 +/* 80169FA0 00166F00 4C C6 31 82 */ crclr 6 +/* 80169FA4 00166F04 48 16 C2 0D */ bl Stringize__7CBasicsFPCce +/* 80169FA8 00166F08 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80169FAC 00166F0C 7C 08 03 A6 */ mtlr r0 +/* 80169FB0 00166F10 38 21 00 10 */ addi r1, r1, 0x10 +/* 80169FB4 00166F14 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Player/CFaceplateDecoration.s b/asm/Kyoto_CWD/Player/CFaceplateDecoration.s new file mode 100644 index 00000000..2f8f67d9 --- /dev/null +++ b/asm/Kyoto_CWD/Player/CFaceplateDecoration.s @@ -0,0 +1,152 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global Draw__20CFaceplateDecorationCFRC13CStateManager +Draw__20CFaceplateDecorationCFRC13CStateManager: +/* 80175AC0 00172A20 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80175AC4 00172A24 7C 08 02 A6 */ mflr r0 +/* 80175AC8 00172A28 90 01 00 54 */ stw r0, 0x54(r1) +/* 80175ACC 00172A2C DB E1 00 40 */ stfd f31, 0x40(r1) +/* 80175AD0 00172A30 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 80175AD4 00172A34 DB C1 00 30 */ stfd f30, 0x30(r1) +/* 80175AD8 00172A38 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 80175ADC 00172A3C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80175AE0 00172A40 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80175AE4 00172A44 88 03 00 0C */ lbz r0, 0xc(r3) +/* 80175AE8 00172A48 7C 9E 23 78 */ mr r30, r4 +/* 80175AEC 00172A4C 28 00 00 00 */ cmplwi r0, 0 +/* 80175AF0 00172A50 41 82 00 98 */ beq lbl_80175B88 +/* 80175AF4 00172A54 80 83 00 04 */ lwz r4, 4(r3) +/* 80175AF8 00172A58 80 04 00 10 */ lwz r0, 0x10(r4) +/* 80175AFC 00172A5C 28 00 00 00 */ cmplwi r0, 0 +/* 80175B00 00172A60 41 82 00 88 */ beq lbl_80175B88 +/* 80175B04 00172A64 3B E1 00 10 */ addi r31, r1, 0x10 +/* 80175B08 00172A68 38 83 00 04 */ addi r4, r3, 4 +/* 80175B0C 00172A6C 7F E3 FB 78 */ mr r3, r31 +/* 80175B10 00172A70 48 1C B3 99 */ bl __ct__6CTokenFRC6CToken +/* 80175B14 00172A74 7F E3 FB 78 */ mr r3, r31 +/* 80175B18 00172A78 48 1C B2 F5 */ bl GetObj__6CTokenFv +/* 80175B1C 00172A7C 83 E3 00 04 */ lwz r31, 4(r3) +/* 80175B20 00172A80 38 61 00 10 */ addi r3, r1, 0x10 +/* 80175B24 00172A84 38 80 00 00 */ li r4, 0 +/* 80175B28 00172A88 93 E1 00 18 */ stw r31, 0x18(r1) +/* 80175B2C 00172A8C 48 1C B3 15 */ bl __dt__6CTokenFv +/* 80175B30 00172A90 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 80175B34 00172A94 C0 22 A1 90 */ lfs f1, lbl_805ABEB0@sda21(r2) +/* 80175B38 00172A98 C3 C3 07 C0 */ lfs f30, 0x7c0(r3) +/* 80175B3C 00172A9C C0 02 A1 94 */ lfs f0, lbl_805ABEB4@sda21(r2) +/* 80175B40 00172AA0 EC 3E 08 28 */ fsubs f1, f30, f1 +/* 80175B44 00172AA4 FC 20 0A 10 */ fabs f1, f1 +/* 80175B48 00172AA8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80175B4C 00172AAC 41 80 00 3C */ blt lbl_80175B88 +/* 80175B50 00172AB0 48 1D 44 5D */ bl White__6CColorFv +/* 80175B54 00172AB4 C0 02 A1 98 */ lfs f0, lbl_805ABEB8@sda21(r2) +/* 80175B58 00172AB8 EF E0 07 B2 */ fmuls f31, f0, f30 +/* 80175B5C 00172ABC F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 +/* 80175B60 00172AC0 7F E6 FB 78 */ mr r6, r31 +/* 80175B64 00172AC4 80 E3 00 00 */ lwz r7, 0(r3) +/* 80175B68 00172AC8 38 A1 00 0C */ addi r5, r1, 0xc +/* 80175B6C 00172ACC 88 01 00 08 */ lbz r0, 8(r1) +/* 80175B70 00172AD0 38 60 00 05 */ li r3, 5 +/* 80175B74 00172AD4 50 E0 00 2E */ rlwimi r0, r7, 0, 0, 0x17 +/* 80175B78 00172AD8 C0 22 A1 9C */ lfs f1, lbl_805ABEBC@sda21(r2) +/* 80175B7C 00172ADC 90 01 00 0C */ stw r0, 0xc(r1) +/* 80175B80 00172AE0 38 80 00 03 */ li r4, 3 +/* 80175B84 00172AE4 4B F7 65 C5 */ bl DrawFilter__17CCameraFilterPassFQ217CCameraFilterPass11EFilterTypeQ217CCameraFilterPass12EFilterShapeRC6CColorPC8CTexturef +lbl_80175B88: +/* 80175B88 00172AE8 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 80175B8C 00172AEC CB E1 00 40 */ lfd f31, 0x40(r1) +/* 80175B90 00172AF0 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 80175B94 00172AF4 CB C1 00 30 */ lfd f30, 0x30(r1) +/* 80175B98 00172AF8 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80175B9C 00172AFC 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80175BA0 00172B00 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80175BA4 00172B04 7C 08 03 A6 */ mtlr r0 +/* 80175BA8 00172B08 38 21 00 50 */ addi r1, r1, 0x50 +/* 80175BAC 00172B0C 4E 80 00 20 */ blr + +.global Update__20CFaceplateDecorationFfRC13CStateManager +Update__20CFaceplateDecorationFfRC13CStateManager: +/* 80175BB0 00172B10 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80175BB4 00172B14 7C 08 02 A6 */ mflr r0 +/* 80175BB8 00172B18 90 01 00 34 */ stw r0, 0x34(r1) +/* 80175BBC 00172B1C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80175BC0 00172B20 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80175BC4 00172B24 7C 7E 1B 78 */ mr r30, r3 +/* 80175BC8 00172B28 80 84 08 4C */ lwz r4, 0x84c(r4) +/* 80175BCC 00172B2C 83 E4 07 AC */ lwz r31, 0x7ac(r4) +/* 80175BD0 00172B30 3C 1F 00 01 */ addis r0, r31, 1 +/* 80175BD4 00172B34 28 00 FF FF */ cmplwi r0, 0xffff +/* 80175BD8 00172B38 40 82 00 1C */ bne lbl_80175BF4 +/* 80175BDC 00172B3C 88 1E 00 0C */ lbz r0, 0xc(r30) +/* 80175BE0 00172B40 28 00 00 00 */ cmplwi r0, 0 +/* 80175BE4 00172B44 41 82 00 10 */ beq lbl_80175BF4 +/* 80175BE8 00172B48 38 7E 00 04 */ addi r3, r30, 4 +/* 80175BEC 00172B4C 48 1C B1 55 */ bl Unlock__6CTokenFv +/* 80175BF0 00172B50 93 FE 00 00 */ stw r31, 0(r30) +lbl_80175BF4: +/* 80175BF4 00172B54 80 1E 00 00 */ lwz r0, 0(r30) +/* 80175BF8 00172B58 7C 1F 00 40 */ cmplw r31, r0 +/* 80175BFC 00172B5C 41 82 00 B0 */ beq lbl_80175CAC +/* 80175C00 00172B60 3C 1F 00 01 */ addis r0, r31, 1 +/* 80175C04 00172B64 28 00 FF FF */ cmplwi r0, 0xffff +/* 80175C08 00172B68 41 82 00 A4 */ beq lbl_80175CAC +/* 80175C0C 00172B6C 93 FE 00 00 */ stw r31, 0(r30) +/* 80175C10 00172B70 3C 60 54 58 */ lis r3, 0x54585452@ha +/* 80175C14 00172B74 38 03 54 52 */ addi r0, r3, 0x54585452@l +/* 80175C18 00172B78 38 61 00 10 */ addi r3, r1, 0x10 +/* 80175C1C 00172B7C 80 DE 00 00 */ lwz r6, 0(r30) +/* 80175C20 00172B80 38 A1 00 18 */ addi r5, r1, 0x18 +/* 80175C24 00172B84 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80175C28 00172B88 90 01 00 18 */ stw r0, 0x18(r1) +/* 80175C2C 00172B8C 90 C1 00 1C */ stw r6, 0x1c(r1) +/* 80175C30 00172B90 81 84 00 00 */ lwz r12, 0(r4) +/* 80175C34 00172B94 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80175C38 00172B98 7D 89 03 A6 */ mtctr r12 +/* 80175C3C 00172B9C 4E 80 04 21 */ bctrl +/* 80175C40 00172BA0 38 61 00 08 */ addi r3, r1, 8 +/* 80175C44 00172BA4 38 81 00 10 */ addi r4, r1, 0x10 +/* 80175C48 00172BA8 48 1C B2 61 */ bl __ct__6CTokenFRC6CToken +/* 80175C4C 00172BAC 88 1E 00 0C */ lbz r0, 0xc(r30) +/* 80175C50 00172BB0 28 00 00 00 */ cmplwi r0, 0 +/* 80175C54 00172BB4 40 82 00 20 */ bne lbl_80175C74 +/* 80175C58 00172BB8 34 7E 00 04 */ addic. r3, r30, 4 +/* 80175C5C 00172BBC 41 82 00 0C */ beq lbl_80175C68 +/* 80175C60 00172BC0 38 81 00 08 */ addi r4, r1, 8 +/* 80175C64 00172BC4 48 1C B2 45 */ bl __ct__6CTokenFRC6CToken +lbl_80175C68: +/* 80175C68 00172BC8 38 00 00 01 */ li r0, 1 +/* 80175C6C 00172BCC 98 1E 00 0C */ stb r0, 0xc(r30) +/* 80175C70 00172BD0 48 00 00 10 */ b lbl_80175C80 +lbl_80175C74: +/* 80175C74 00172BD4 38 7E 00 04 */ addi r3, r30, 4 +/* 80175C78 00172BD8 38 81 00 08 */ addi r4, r1, 8 +/* 80175C7C 00172BDC 48 1C B0 49 */ bl __as__6CTokenFRC6CToken +lbl_80175C80: +/* 80175C80 00172BE0 38 61 00 08 */ addi r3, r1, 8 +/* 80175C84 00172BE4 38 80 00 00 */ li r4, 0 +/* 80175C88 00172BE8 48 1C B1 B9 */ bl __dt__6CTokenFv +/* 80175C8C 00172BEC 38 61 00 10 */ addi r3, r1, 0x10 +/* 80175C90 00172BF0 38 80 FF FF */ li r4, -1 +/* 80175C94 00172BF4 48 1C B1 AD */ bl __dt__6CTokenFv +/* 80175C98 00172BF8 88 1E 00 0C */ lbz r0, 0xc(r30) +/* 80175C9C 00172BFC 28 00 00 00 */ cmplwi r0, 0 +/* 80175CA0 00172C00 41 82 00 0C */ beq lbl_80175CAC +/* 80175CA4 00172C04 38 7E 00 04 */ addi r3, r30, 4 +/* 80175CA8 00172C08 48 1C B0 DD */ bl Lock__6CTokenFv +lbl_80175CAC: +/* 80175CAC 00172C0C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80175CB0 00172C10 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80175CB4 00172C14 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80175CB8 00172C18 7C 08 03 A6 */ mtlr r0 +/* 80175CBC 00172C1C 38 21 00 30 */ addi r1, r1, 0x30 +/* 80175CC0 00172C20 4E 80 00 20 */ blr + +.global __ct__20CFaceplateDecorationFR13CStateManager +__ct__20CFaceplateDecorationFR13CStateManager: +/* 80175CC4 00172C24 38 00 FF FF */ li r0, -1 +/* 80175CC8 00172C28 90 03 00 00 */ stw r0, 0(r3) +/* 80175CCC 00172C2C 38 00 00 00 */ li r0, 0 +/* 80175CD0 00172C30 98 03 00 0C */ stb r0, 0xc(r3) +/* 80175CD4 00172C34 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Player/CFidget.s b/asm/Kyoto_CWD/Player/CFidget.s new file mode 100644 index 00000000..349bb598 --- /dev/null +++ b/asm/Kyoto_CWD/Player/CFidget.s @@ -0,0 +1,342 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global Update__7CFidgetFibbfR13CStateManager +Update__7CFidgetFibbfR13CStateManager: +/* 80154768 001516C8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8015476C 001516CC 7C 08 02 A6 */ mflr r0 +/* 80154770 001516D0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80154774 001516D4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80154778 001516D8 7C FF 3B 78 */ mr r31, r7 +/* 8015477C 001516DC 93 C1 00 08 */ stw r30, 8(r1) +/* 80154780 001516E0 7C 7E 1B 78 */ mr r30, r3 +/* 80154784 001516E4 80 03 00 00 */ lwz r0, 0(r3) +/* 80154788 001516E8 2C 00 00 00 */ cmpwi r0, 0 +/* 8015478C 001516EC 41 82 00 78 */ beq lbl_80154804 +/* 80154790 001516F0 2C 00 00 02 */ cmpwi r0, 2 +/* 80154794 001516F4 41 82 00 38 */ beq lbl_801547CC +/* 80154798 001516F8 40 80 00 10 */ bge lbl_801547A8 +/* 8015479C 001516FC 2C 00 00 01 */ cmpwi r0, 1 +/* 801547A0 00151700 40 80 00 14 */ bge lbl_801547B4 +/* 801547A4 00151704 48 00 00 58 */ b lbl_801547FC +lbl_801547A8: +/* 801547A8 00151708 2C 00 00 04 */ cmpwi r0, 4 +/* 801547AC 0015170C 40 80 00 50 */ bge lbl_801547FC +/* 801547B0 00151710 48 00 00 34 */ b lbl_801547E4 +lbl_801547B4: +/* 801547B4 00151714 88 1E 00 34 */ lbz r0, 0x34(r30) +/* 801547B8 00151718 38 60 00 04 */ li r3, 4 +/* 801547BC 0015171C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801547C0 00151720 41 82 03 80 */ beq lbl_80154B40 +/* 801547C4 00151724 38 60 00 07 */ li r3, 7 +/* 801547C8 00151728 48 00 03 78 */ b lbl_80154B40 +lbl_801547CC: +/* 801547CC 0015172C 88 1E 00 34 */ lbz r0, 0x34(r30) +/* 801547D0 00151730 38 60 00 05 */ li r3, 5 +/* 801547D4 00151734 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801547D8 00151738 41 82 03 68 */ beq lbl_80154B40 +/* 801547DC 0015173C 38 60 00 07 */ li r3, 7 +/* 801547E0 00151740 48 00 03 60 */ b lbl_80154B40 +lbl_801547E4: +/* 801547E4 00151744 88 1E 00 34 */ lbz r0, 0x34(r30) +/* 801547E8 00151748 38 60 00 06 */ li r3, 6 +/* 801547EC 0015174C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801547F0 00151750 41 82 03 50 */ beq lbl_80154B40 +/* 801547F4 00151754 38 60 00 07 */ li r3, 7 +/* 801547F8 00151758 48 00 03 48 */ b lbl_80154B40 +lbl_801547FC: +/* 801547FC 0015175C 38 00 00 00 */ li r0, 0 +/* 80154800 00151760 90 1E 00 00 */ stw r0, 0(r30) +lbl_80154804: +/* 80154804 00151764 2C 04 00 00 */ cmpwi r4, 0 +/* 80154808 00151768 41 82 00 14 */ beq lbl_8015481C +/* 8015480C 0015176C C0 02 9E 00 */ lfs f0, lbl_805ABB20@sda21(r2) +/* 80154810 00151770 D0 1E 00 14 */ stfs f0, 0x14(r30) +/* 80154814 00151774 D0 1E 00 2C */ stfs f0, 0x2c(r30) +/* 80154818 00151778 48 00 00 3C */ b lbl_80154854 +lbl_8015481C: +/* 8015481C 0015177C C0 5E 00 14 */ lfs f2, 0x14(r30) +/* 80154820 00151780 C0 02 9E 04 */ lfs f0, lbl_805ABB24@sda21(r2) +/* 80154824 00151784 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80154828 00151788 40 80 00 0C */ bge lbl_80154834 +/* 8015482C 0015178C EC 02 08 2A */ fadds f0, f2, f1 +/* 80154830 00151790 D0 1E 00 14 */ stfs f0, 0x14(r30) +lbl_80154834: +/* 80154834 00151794 C0 42 9E 08 */ lfs f2, lbl_805ABB28@sda21(r2) +/* 80154838 00151798 C0 1E 00 30 */ lfs f0, 0x30(r30) +/* 8015483C 0015179C C0 7E 00 2C */ lfs f3, 0x2c(r30) +/* 80154840 001517A0 EC 02 00 2A */ fadds f0, f2, f0 +/* 80154844 001517A4 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 80154848 001517A8 40 80 00 0C */ bge lbl_80154854 +/* 8015484C 001517AC EC 03 08 2A */ fadds f0, f3, f1 +/* 80154850 001517B0 D0 1E 00 2C */ stfs f0, 0x2c(r30) +lbl_80154854: +/* 80154854 001517B4 54 C0 06 3F */ clrlwi. r0, r6, 0x18 +/* 80154858 001517B8 41 82 00 10 */ beq lbl_80154868 +/* 8015485C 001517BC C0 02 9E 00 */ lfs f0, lbl_805ABB20@sda21(r2) +/* 80154860 001517C0 D0 1E 00 18 */ stfs f0, 0x18(r30) +/* 80154864 001517C4 48 00 00 1C */ b lbl_80154880 +lbl_80154868: +/* 80154868 001517C8 C0 5E 00 18 */ lfs f2, 0x18(r30) +/* 8015486C 001517CC C0 02 9E 0C */ lfs f0, lbl_805ABB2C@sda21(r2) +/* 80154870 001517D0 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80154874 001517D4 40 80 00 0C */ bge lbl_80154880 +/* 80154878 001517D8 EC 02 08 2A */ fadds f0, f2, f1 +/* 8015487C 001517DC D0 1E 00 18 */ stfs f0, 0x18(r30) +lbl_80154880: +/* 80154880 001517E0 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 80154884 001517E4 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 80154888 001517E8 2C 00 00 00 */ cmpwi r0, 0 +/* 8015488C 001517EC 40 82 00 20 */ bne lbl_801548AC +/* 80154890 001517F0 C0 5E 00 1C */ lfs f2, 0x1c(r30) +/* 80154894 001517F4 C0 02 9E 10 */ lfs f0, lbl_805ABB30@sda21(r2) +/* 80154898 001517F8 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8015489C 001517FC 40 80 00 18 */ bge lbl_801548B4 +/* 801548A0 00151800 EC 02 08 2A */ fadds f0, f2, f1 +/* 801548A4 00151804 D0 1E 00 1C */ stfs f0, 0x1c(r30) +/* 801548A8 00151808 48 00 00 0C */ b lbl_801548B4 +lbl_801548AC: +/* 801548AC 0015180C C0 02 9E 00 */ lfs f0, lbl_805ABB20@sda21(r2) +/* 801548B0 00151810 D0 1E 00 1C */ stfs f0, 0x1c(r30) +lbl_801548B4: +/* 801548B4 00151814 54 A0 06 3F */ clrlwi. r0, r5, 0x18 +/* 801548B8 00151818 41 82 00 10 */ beq lbl_801548C8 +/* 801548BC 0015181C C0 02 9E 00 */ lfs f0, lbl_805ABB20@sda21(r2) +/* 801548C0 00151820 D0 1E 00 20 */ stfs f0, 0x20(r30) +/* 801548C4 00151824 48 00 00 1C */ b lbl_801548E0 +lbl_801548C8: +/* 801548C8 00151828 C0 5E 00 20 */ lfs f2, 0x20(r30) +/* 801548CC 0015182C C0 02 9E 10 */ lfs f0, lbl_805ABB30@sda21(r2) +/* 801548D0 00151830 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801548D4 00151834 40 80 00 0C */ bge lbl_801548E0 +/* 801548D8 00151838 EC 02 08 2A */ fadds f0, f2, f1 +/* 801548DC 0015183C D0 1E 00 20 */ stfs f0, 0x20(r30) +lbl_801548E0: +/* 801548E0 00151840 80 1E 00 00 */ lwz r0, 0(r30) +/* 801548E4 00151844 38 60 00 00 */ li r3, 0 +/* 801548E8 00151848 2C 00 00 00 */ cmpwi r0, 0 +/* 801548EC 0015184C 40 82 00 6C */ bne lbl_80154958 +/* 801548F0 00151850 80 1E 00 10 */ lwz r0, 0x10(r30) +/* 801548F4 00151854 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801548F8 00151858 41 82 00 2C */ beq lbl_80154924 +/* 801548FC 0015185C C0 1E 00 24 */ lfs f0, 0x24(r30) +/* 80154900 00151860 EC 00 08 2A */ fadds f0, f0, f1 +/* 80154904 00151864 D0 1E 00 24 */ stfs f0, 0x24(r30) +/* 80154908 00151868 C0 5E 00 24 */ lfs f2, 0x24(r30) +/* 8015490C 0015186C C0 0D 8C 70 */ lfs f0, lbl_805A7830@sda21(r13) +/* 80154910 00151870 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80154914 00151874 40 81 00 10 */ ble lbl_80154924 +/* 80154918 00151878 C0 02 9E 00 */ lfs f0, lbl_805ABB20@sda21(r2) +/* 8015491C 0015187C 60 63 00 01 */ ori r3, r3, 1 +/* 80154920 00151880 D0 1E 00 24 */ stfs f0, 0x24(r30) +lbl_80154924: +/* 80154924 00151884 80 1E 00 10 */ lwz r0, 0x10(r30) +/* 80154928 00151888 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e +/* 8015492C 0015188C 41 82 00 2C */ beq lbl_80154958 +/* 80154930 00151890 C0 1E 00 28 */ lfs f0, 0x28(r30) +/* 80154934 00151894 EC 00 08 2A */ fadds f0, f0, f1 +/* 80154938 00151898 D0 1E 00 28 */ stfs f0, 0x28(r30) +/* 8015493C 0015189C C0 3E 00 28 */ lfs f1, 0x28(r30) +/* 80154940 001518A0 C0 0D 8C 74 */ lfs f0, lbl_805A7834@sda21(r13) +/* 80154944 001518A4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80154948 001518A8 40 81 00 10 */ ble lbl_80154958 +/* 8015494C 001518AC C0 02 9E 00 */ lfs f0, lbl_805ABB20@sda21(r2) +/* 80154950 001518B0 60 63 00 02 */ ori r3, r3, 2 +/* 80154954 001518B4 D0 1E 00 28 */ stfs f0, 0x28(r30) +lbl_80154958: +/* 80154958 001518B8 C0 3E 00 2C */ lfs f1, 0x2c(r30) +/* 8015495C 001518BC C0 1E 00 30 */ lfs f0, 0x30(r30) +/* 80154960 001518C0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80154964 001518C4 40 81 00 10 */ ble lbl_80154974 +/* 80154968 001518C8 38 00 00 03 */ li r0, 3 +/* 8015496C 001518CC 90 1E 00 00 */ stw r0, 0(r30) +/* 80154970 001518D0 48 00 00 DC */ b lbl_80154A4C +lbl_80154974: +/* 80154974 001518D4 C0 3E 00 18 */ lfs f1, 0x18(r30) +/* 80154978 001518D8 C0 02 9E 14 */ lfs f0, lbl_805ABB34@sda21(r2) +/* 8015497C 001518DC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80154980 001518E0 40 81 00 4C */ ble lbl_801549CC +/* 80154984 001518E4 C0 1E 00 1C */ lfs f0, 0x1c(r30) +/* 80154988 001518E8 C0 22 9E 18 */ lfs f1, lbl_805ABB38@sda21(r2) +/* 8015498C 001518EC FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80154990 001518F0 40 81 00 3C */ ble lbl_801549CC +/* 80154994 001518F4 C0 1E 00 20 */ lfs f0, 0x20(r30) +/* 80154998 001518F8 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8015499C 001518FC 40 81 00 30 */ ble lbl_801549CC +/* 801549A0 00151900 54 60 07 FF */ clrlwi. r0, r3, 0x1f +/* 801549A4 00151904 41 82 00 14 */ beq lbl_801549B8 +/* 801549A8 00151908 80 1E 00 08 */ lwz r0, 8(r30) +/* 801549AC 0015190C 60 00 00 01 */ ori r0, r0, 1 +/* 801549B0 00151910 90 1E 00 08 */ stw r0, 8(r30) +/* 801549B4 00151914 48 00 00 18 */ b lbl_801549CC +lbl_801549B8: +/* 801549B8 00151918 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e +/* 801549BC 0015191C 41 82 00 10 */ beq lbl_801549CC +/* 801549C0 00151920 80 1E 00 08 */ lwz r0, 8(r30) +/* 801549C4 00151924 60 00 00 02 */ ori r0, r0, 2 +/* 801549C8 00151928 90 1E 00 08 */ stw r0, 8(r30) +lbl_801549CC: +/* 801549CC 0015192C 80 7E 00 08 */ lwz r3, 8(r30) +/* 801549D0 00151930 54 60 07 BE */ clrlwi r0, r3, 0x1e +/* 801549D4 00151934 2C 00 00 03 */ cmpwi r0, 3 +/* 801549D8 00151938 40 82 00 44 */ bne lbl_80154A1C +/* 801549DC 0015193C 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 801549E0 00151940 48 1B DB 41 */ bl Next__9CRandom16Fv +/* 801549E4 00151944 3C 80 51 EC */ lis r4, 0x51EB851F@ha +/* 801549E8 00151948 38 A0 00 01 */ li r5, 1 +/* 801549EC 0015194C 38 04 85 1F */ addi r0, r4, 0x51EB851F@l +/* 801549F0 00151950 7C 00 18 96 */ mulhw r0, r0, r3 +/* 801549F4 00151954 7C 00 2E 70 */ srawi r0, r0, 5 +/* 801549F8 00151958 54 04 0F FE */ srwi r4, r0, 0x1f +/* 801549FC 0015195C 7C 00 22 14 */ add r0, r0, r4 +/* 80154A00 00151960 1C 00 00 64 */ mulli r0, r0, 0x64 +/* 80154A04 00151964 7C 00 18 50 */ subf r0, r0, r3 +/* 80154A08 00151968 2C 00 00 32 */ cmpwi r0, 0x32 +/* 80154A0C 0015196C 40 81 00 08 */ ble lbl_80154A14 +/* 80154A10 00151970 38 A0 00 02 */ li r5, 2 +lbl_80154A14: +/* 80154A14 00151974 90 BE 00 00 */ stw r5, 0(r30) +/* 80154A18 00151978 48 00 00 34 */ b lbl_80154A4C +lbl_80154A1C: +/* 80154A1C 0015197C 54 60 07 FF */ clrlwi. r0, r3, 0x1f +/* 80154A20 00151980 41 82 00 10 */ beq lbl_80154A30 +/* 80154A24 00151984 38 00 00 01 */ li r0, 1 +/* 80154A28 00151988 90 1E 00 00 */ stw r0, 0(r30) +/* 80154A2C 0015198C 48 00 00 20 */ b lbl_80154A4C +lbl_80154A30: +/* 80154A30 00151990 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e +/* 80154A34 00151994 41 82 00 10 */ beq lbl_80154A44 +/* 80154A38 00151998 38 00 00 02 */ li r0, 2 +/* 80154A3C 0015199C 90 1E 00 00 */ stw r0, 0(r30) +/* 80154A40 001519A0 48 00 00 0C */ b lbl_80154A4C +lbl_80154A44: +/* 80154A44 001519A4 38 00 00 00 */ li r0, 0 +/* 80154A48 001519A8 90 1E 00 00 */ stw r0, 0(r30) +lbl_80154A4C: +/* 80154A4C 001519AC 80 1E 00 00 */ lwz r0, 0(r30) +/* 80154A50 001519B0 2C 00 00 02 */ cmpwi r0, 2 +/* 80154A54 001519B4 41 82 00 78 */ beq lbl_80154ACC +/* 80154A58 001519B8 40 80 00 10 */ bge lbl_80154A68 +/* 80154A5C 001519BC 2C 00 00 01 */ cmpwi r0, 1 +/* 80154A60 001519C0 40 80 00 14 */ bge lbl_80154A74 +/* 80154A64 001519C4 48 00 00 D8 */ b lbl_80154B3C +lbl_80154A68: +/* 80154A68 001519C8 2C 00 00 04 */ cmpwi r0, 4 +/* 80154A6C 001519CC 40 80 00 D0 */ bge lbl_80154B3C +/* 80154A70 001519D0 48 00 00 B0 */ b lbl_80154B20 +lbl_80154A74: +/* 80154A74 001519D4 88 7E 00 34 */ lbz r3, 0x34(r30) +/* 80154A78 001519D8 38 00 00 01 */ li r0, 1 +/* 80154A7C 001519DC 50 03 3E 30 */ rlwimi r3, r0, 7, 0x18, 0x18 +/* 80154A80 001519E0 38 00 00 02 */ li r0, 2 +/* 80154A84 001519E4 98 7E 00 34 */ stb r3, 0x34(r30) +/* 80154A88 001519E8 C0 22 9E 18 */ lfs f1, lbl_805ABB38@sda21(r2) +/* 80154A8C 001519EC 90 1E 00 10 */ stw r0, 0x10(r30) +/* 80154A90 001519F0 C0 42 9E 1C */ lfs f2, lbl_805ABB3C@sda21(r2) +/* 80154A94 001519F4 80 1E 00 08 */ lwz r0, 8(r30) +/* 80154A98 001519F8 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e +/* 80154A9C 001519FC 90 1E 00 08 */ stw r0, 8(r30) +/* 80154AA0 00151A00 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 80154AA4 00151A04 48 1B DA A1 */ bl Range__9CRandom16Fff +/* 80154AA8 00151A08 D0 2D 8C 70 */ stfs f1, lbl_805A7830@sda21(r13) +/* 80154AAC 00151A0C 38 00 00 00 */ li r0, 0 +/* 80154AB0 00151A10 38 80 00 00 */ li r4, 0 +/* 80154AB4 00151A14 38 A0 00 04 */ li r5, 4 +/* 80154AB8 00151A18 90 1E 00 04 */ stw r0, 4(r30) +/* 80154ABC 00151A1C 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 80154AC0 00151A20 48 1B DA D5 */ bl Range__9CRandom16Fii +/* 80154AC4 00151A24 90 7E 00 0C */ stw r3, 0xc(r30) +/* 80154AC8 00151A28 48 00 00 74 */ b lbl_80154B3C +lbl_80154ACC: +/* 80154ACC 00151A2C 88 1E 00 34 */ lbz r0, 0x34(r30) +/* 80154AD0 00151A30 38 60 00 01 */ li r3, 1 +/* 80154AD4 00151A34 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80154AD8 00151A38 C0 22 9E 18 */ lfs f1, lbl_805ABB38@sda21(r2) +/* 80154ADC 00151A3C 98 1E 00 34 */ stb r0, 0x34(r30) +/* 80154AE0 00151A40 C0 42 9E 20 */ lfs f2, lbl_805ABB40@sda21(r2) +/* 80154AE4 00151A44 90 7E 00 10 */ stw r3, 0x10(r30) +/* 80154AE8 00151A48 80 1E 00 08 */ lwz r0, 8(r30) +/* 80154AEC 00151A4C 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d +/* 80154AF0 00151A50 90 1E 00 08 */ stw r0, 8(r30) +/* 80154AF4 00151A54 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 80154AF8 00151A58 48 1B DA 4D */ bl Range__9CRandom16Fff +/* 80154AFC 00151A5C D0 2D 8C 74 */ stfs f1, lbl_805A7834@sda21(r13) +/* 80154B00 00151A60 38 00 00 01 */ li r0, 1 +/* 80154B04 00151A64 38 80 00 00 */ li r4, 0 +/* 80154B08 00151A68 38 A0 00 05 */ li r5, 5 +/* 80154B0C 00151A6C 90 1E 00 04 */ stw r0, 4(r30) +/* 80154B10 00151A70 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 80154B14 00151A74 48 1B DA 81 */ bl Range__9CRandom16Fii +/* 80154B18 00151A78 90 7E 00 0C */ stw r3, 0xc(r30) +/* 80154B1C 00151A7C 48 00 00 20 */ b lbl_80154B3C +lbl_80154B20: +/* 80154B20 00151A80 38 80 00 00 */ li r4, 0 +/* 80154B24 00151A84 38 60 00 01 */ li r3, 1 +/* 80154B28 00151A88 90 9E 00 04 */ stw r4, 4(r30) +/* 80154B2C 00151A8C 88 1E 00 34 */ lbz r0, 0x34(r30) +/* 80154B30 00151A90 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80154B34 00151A94 98 1E 00 34 */ stb r0, 0x34(r30) +/* 80154B38 00151A98 90 9E 00 0C */ stw r4, 0xc(r30) +lbl_80154B3C: +/* 80154B3C 00151A9C 80 7E 00 00 */ lwz r3, 0(r30) +lbl_80154B40: +/* 80154B40 00151AA0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80154B44 00151AA4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80154B48 00151AA8 83 C1 00 08 */ lwz r30, 8(r1) +/* 80154B4C 00151AAC 7C 08 03 A6 */ mtlr r0 +/* 80154B50 00151AB0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80154B54 00151AB4 4E 80 00 20 */ blr + +.global ResetMinor__7CFidgetFv +ResetMinor__7CFidgetFv: +/* 80154B58 00151AB8 38 00 00 00 */ li r0, 0 +/* 80154B5C 00151ABC 90 03 00 00 */ stw r0, 0(r3) +/* 80154B60 00151AC0 4E 80 00 20 */ blr + +.global ResetAll__7CFidgetFv +ResetAll__7CFidgetFv: +/* 80154B64 00151AC4 38 A0 00 00 */ li r5, 0 +/* 80154B68 00151AC8 38 80 FF FF */ li r4, -1 +/* 80154B6C 00151ACC 90 A3 00 00 */ stw r5, 0(r3) +/* 80154B70 00151AD0 38 00 00 03 */ li r0, 3 +/* 80154B74 00151AD4 C0 02 9E 00 */ lfs f0, lbl_805ABB20@sda21(r2) +/* 80154B78 00151AD8 90 83 00 04 */ stw r4, 4(r3) +/* 80154B7C 00151ADC D0 03 00 18 */ stfs f0, 0x18(r3) +/* 80154B80 00151AE0 D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 80154B84 00151AE4 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 80154B88 00151AE8 D0 03 00 24 */ stfs f0, 0x24(r3) +/* 80154B8C 00151AEC D0 03 00 28 */ stfs f0, 0x28(r3) +/* 80154B90 00151AF0 D0 03 00 2C */ stfs f0, 0x2c(r3) +/* 80154B94 00151AF4 90 A3 00 08 */ stw r5, 8(r3) +/* 80154B98 00151AF8 90 83 00 0C */ stw r4, 0xc(r3) +/* 80154B9C 00151AFC 90 03 00 10 */ stw r0, 0x10(r3) +/* 80154BA0 00151B00 88 03 00 34 */ lbz r0, 0x34(r3) +/* 80154BA4 00151B04 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 80154BA8 00151B08 98 03 00 34 */ stb r0, 0x34(r3) +/* 80154BAC 00151B0C 4E 80 00 20 */ blr + +.global __ct__7CFidgetFv +__ct__7CFidgetFv: +/* 80154BB0 00151B10 38 A0 00 00 */ li r5, 0 +/* 80154BB4 00151B14 38 80 FF FF */ li r4, -1 +/* 80154BB8 00151B18 90 A3 00 00 */ stw r5, 0(r3) +/* 80154BBC 00151B1C 38 00 00 03 */ li r0, 3 +/* 80154BC0 00151B20 C0 22 9E 00 */ lfs f1, lbl_805ABB20@sda21(r2) +/* 80154BC4 00151B24 90 83 00 04 */ stw r4, 4(r3) +/* 80154BC8 00151B28 C0 02 9E 24 */ lfs f0, lbl_805ABB44@sda21(r2) +/* 80154BCC 00151B2C 90 A3 00 08 */ stw r5, 8(r3) +/* 80154BD0 00151B30 90 83 00 0C */ stw r4, 0xc(r3) +/* 80154BD4 00151B34 90 03 00 10 */ stw r0, 0x10(r3) +/* 80154BD8 00151B38 D0 23 00 14 */ stfs f1, 0x14(r3) +/* 80154BDC 00151B3C D0 23 00 18 */ stfs f1, 0x18(r3) +/* 80154BE0 00151B40 D0 23 00 1C */ stfs f1, 0x1c(r3) +/* 80154BE4 00151B44 D0 23 00 20 */ stfs f1, 0x20(r3) +/* 80154BE8 00151B48 D0 23 00 24 */ stfs f1, 0x24(r3) +/* 80154BEC 00151B4C D0 23 00 28 */ stfs f1, 0x28(r3) +/* 80154BF0 00151B50 D0 23 00 2C */ stfs f1, 0x2c(r3) +/* 80154BF4 00151B54 D0 03 00 30 */ stfs f0, 0x30(r3) +/* 80154BF8 00151B58 88 03 00 34 */ lbz r0, 0x34(r3) +/* 80154BFC 00151B5C 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 80154C00 00151B60 98 03 00 34 */ stb r0, 0x34(r3) +/* 80154C04 00151B64 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Player/CPlayerOrbit.s b/asm/Kyoto_CWD/Player/CPlayerOrbit.s new file mode 100644 index 00000000..2daa080d --- /dev/null +++ b/asm/Kyoto_CWD/Player/CPlayerOrbit.s @@ -0,0 +1,7212 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global UpdateGrappleArmTransform__7CPlayerFRC9CVector3fR13CStateManagerf +UpdateGrappleArmTransform__7CPlayerFRC9CVector3fR13CStateManagerf: +/* 8017938C 001762EC 94 21 FE 60 */ stwu r1, -0x1a0(r1) +/* 80179390 001762F0 7C 08 02 A6 */ mflr r0 +/* 80179394 001762F4 90 01 01 A4 */ stw r0, 0x1a4(r1) +/* 80179398 001762F8 DB E1 01 90 */ stfd f31, 0x190(r1) +/* 8017939C 001762FC F3 E1 01 98 */ psq_st f31, 408(r1), 0, qr0 +/* 801793A0 00176300 DB C1 01 80 */ stfd f30, 0x180(r1) +/* 801793A4 00176304 F3 C1 01 88 */ psq_st f30, 392(r1), 0, qr0 +/* 801793A8 00176308 DB A1 01 70 */ stfd f29, 0x170(r1) +/* 801793AC 0017630C F3 A1 01 78 */ psq_st f29, 376(r1), 0, qr0 +/* 801793B0 00176310 93 E1 01 6C */ stw r31, 0x16c(r1) +/* 801793B4 00176314 93 C1 01 68 */ stw r30, 0x168(r1) +/* 801793B8 00176318 93 A1 01 64 */ stw r29, 0x164(r1) +/* 801793BC 0017631C 7C 7F 1B 78 */ mr r31, r3 +/* 801793C0 00176320 7C 9D 23 78 */ mr r29, r4 +/* 801793C4 00176324 7C BE 2B 78 */ mr r30, r5 +/* 801793C8 00176328 38 61 01 2C */ addi r3, r1, 0x12c +/* 801793CC 0017632C 38 9F 00 34 */ addi r4, r31, 0x34 +/* 801793D0 00176330 48 19 97 A5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801793D4 00176334 C3 FF 00 60 */ lfs f31, 0x60(r31) +/* 801793D8 00176338 7F A5 EB 78 */ mr r5, r29 +/* 801793DC 0017633C C3 DF 00 50 */ lfs f30, 0x50(r31) +/* 801793E0 00176340 38 61 00 5C */ addi r3, r1, 0x5c +/* 801793E4 00176344 C3 BF 00 40 */ lfs f29, 0x40(r31) +/* 801793E8 00176348 38 9F 00 34 */ addi r4, r31, 0x34 +/* 801793EC 0017634C 48 19 96 95 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 801793F0 00176350 C0 41 00 5C */ lfs f2, 0x5c(r1) +/* 801793F4 00176354 C0 21 00 60 */ lfs f1, 0x60(r1) +/* 801793F8 00176358 C0 01 00 64 */ lfs f0, 0x64(r1) +/* 801793FC 0017635C EF A2 E8 2A */ fadds f29, f2, f29 +/* 80179400 00176360 EF C1 F0 2A */ fadds f30, f1, f30 +/* 80179404 00176364 EF E0 F8 2A */ fadds f31, f0, f31 +/* 80179408 00176368 D3 A1 01 38 */ stfs f29, 0x138(r1) +/* 8017940C 0017636C D3 C1 01 48 */ stfs f30, 0x148(r1) +/* 80179410 00176370 D3 E1 01 58 */ stfs f31, 0x158(r1) +/* 80179414 00176374 80 1F 02 F8 */ lwz r0, 0x2f8(r31) +/* 80179418 00176378 2C 00 00 00 */ cmpwi r0, 0 +/* 8017941C 0017637C 41 82 00 1C */ beq lbl_80179438 +/* 80179420 00176380 80 7F 04 90 */ lwz r3, 0x490(r31) +/* 80179424 00176384 38 81 01 2C */ addi r4, r1, 0x12c +/* 80179428 00176388 80 63 07 40 */ lwz r3, 0x740(r3) +/* 8017942C 0017638C 38 63 02 20 */ addi r3, r3, 0x220 +/* 80179430 00176390 48 19 97 11 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80179434 00176394 48 00 02 44 */ b lbl_80179678 +lbl_80179438: +/* 80179438 00176398 80 7F 04 90 */ lwz r3, 0x490(r31) +/* 8017943C 0017639C 80 83 07 40 */ lwz r4, 0x740(r3) +/* 80179440 001763A0 88 04 03 B2 */ lbz r0, 0x3b2(r4) +/* 80179444 001763A4 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 80179448 001763A8 40 82 02 30 */ bne lbl_80179678 +/* 8017944C 001763AC C0 5F 00 58 */ lfs f2, 0x58(r31) +/* 80179450 001763B0 38 61 00 FC */ addi r3, r1, 0xfc +/* 80179454 001763B4 C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 80179458 001763B8 38 84 02 20 */ addi r4, r4, 0x220 +/* 8017945C 001763BC C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 80179460 001763C0 D0 01 00 90 */ stfs f0, 0x90(r1) +/* 80179464 001763C4 D0 21 00 94 */ stfs f1, 0x94(r1) +/* 80179468 001763C8 D0 41 00 98 */ stfs f2, 0x98(r1) +/* 8017946C 001763CC 48 19 97 09 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80179470 001763D0 C0 41 01 20 */ lfs f2, 0x120(r1) +/* 80179474 001763D4 38 61 00 90 */ addi r3, r1, 0x90 +/* 80179478 001763D8 C0 21 01 00 */ lfs f1, 0x100(r1) +/* 8017947C 001763DC C0 01 01 10 */ lfs f0, 0x110(r1) +/* 80179480 001763E0 D0 21 00 84 */ stfs f1, 0x84(r1) +/* 80179484 001763E4 D0 01 00 88 */ stfs f0, 0x88(r1) +/* 80179488 001763E8 D0 41 00 8C */ stfs f2, 0x8c(r1) +/* 8017948C 001763EC 48 19 B2 6D */ bl CanBeNormalized__9CVector3fCFv +/* 80179490 001763F0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80179494 001763F4 41 82 01 E4 */ beq lbl_80179678 +/* 80179498 001763F8 38 61 00 90 */ addi r3, r1, 0x90 +/* 8017949C 001763FC 48 19 B4 5D */ bl Normalize__9CVector3fFv +/* 801794A0 00176400 80 1F 03 B8 */ lwz r0, 0x3b8(r31) +/* 801794A4 00176404 2C 00 00 00 */ cmpwi r0, 0 +/* 801794A8 00176408 41 82 01 88 */ beq lbl_80179630 +/* 801794AC 0017640C A0 1F 03 10 */ lhz r0, 0x310(r31) +/* 801794B0 00176410 7F C3 F3 78 */ mr r3, r30 +/* 801794B4 00176414 38 81 00 0C */ addi r4, r1, 0xc +/* 801794B8 00176418 B0 01 00 08 */ sth r0, 8(r1) +/* 801794BC 0017641C B0 01 00 0C */ sth r0, 0xc(r1) +/* 801794C0 00176420 4B ED 30 E5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801794C4 00176424 7C 64 1B 78 */ mr r4, r3 +/* 801794C8 00176428 38 61 00 14 */ addi r3, r1, 0x14 +/* 801794CC 0017642C 4B F3 67 C5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801794D0 00176430 80 83 00 04 */ lwz r4, 4(r3) +/* 801794D4 00176434 28 04 00 00 */ cmplwi r4, 0 +/* 801794D8 00176438 41 82 01 58 */ beq lbl_80179630 +/* 801794DC 0017643C C0 04 00 60 */ lfs f0, 0x60(r4) +/* 801794E0 00176440 38 61 00 84 */ addi r3, r1, 0x84 +/* 801794E4 00176444 C0 44 00 50 */ lfs f2, 0x50(r4) +/* 801794E8 00176448 C0 24 00 40 */ lfs f1, 0x40(r4) +/* 801794EC 0017644C EC 60 F8 28 */ fsubs f3, f0, f31 +/* 801794F0 00176450 EC 42 F0 28 */ fsubs f2, f2, f30 +/* 801794F4 00176454 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 801794F8 00176458 EC 21 E8 28 */ fsubs f1, f1, f29 +/* 801794FC 0017645C D0 61 00 80 */ stfs f3, 0x80(r1) +/* 80179500 00176460 D0 21 00 84 */ stfs f1, 0x84(r1) +/* 80179504 00176464 D0 41 00 88 */ stfs f2, 0x88(r1) +/* 80179508 00176468 D0 61 00 8C */ stfs f3, 0x8c(r1) +/* 8017950C 0017646C D0 21 00 78 */ stfs f1, 0x78(r1) +/* 80179510 00176470 D0 41 00 7C */ stfs f2, 0x7c(r1) +/* 80179514 00176474 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 80179518 00176478 48 19 B1 E1 */ bl CanBeNormalized__9CVector3fCFv +/* 8017951C 0017647C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80179520 00176480 41 82 00 0C */ beq lbl_8017952C +/* 80179524 00176484 38 61 00 84 */ addi r3, r1, 0x84 +/* 80179528 00176488 48 19 B3 D1 */ bl Normalize__9CVector3fFv +lbl_8017952C: +/* 8017952C 0017648C 38 61 00 78 */ addi r3, r1, 0x78 +/* 80179530 00176490 48 19 B1 C9 */ bl CanBeNormalized__9CVector3fCFv +/* 80179534 00176494 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80179538 00176498 41 82 00 F8 */ beq lbl_80179630 +/* 8017953C 0017649C 80 1F 03 B8 */ lwz r0, 0x3b8(r31) +/* 80179540 001764A0 2C 00 00 01 */ cmpwi r0, 1 +/* 80179544 001764A4 41 82 00 EC */ beq lbl_80179630 +/* 80179548 001764A8 C0 02 A2 34 */ lfs f0, lbl_805ABF54@sda21(r2) +/* 8017954C 001764AC 38 61 00 28 */ addi r3, r1, 0x28 +/* 80179550 001764B0 38 81 00 90 */ addi r4, r1, 0x90 +/* 80179554 001764B4 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 80179558 001764B8 48 19 A8 79 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8017955C 001764BC 7C 7E 1B 78 */ mr r30, r3 +/* 80179560 001764C0 38 61 00 34 */ addi r3, r1, 0x34 +/* 80179564 001764C4 38 81 00 78 */ addi r4, r1, 0x78 +/* 80179568 001764C8 48 19 B2 E9 */ bl AsNormalized__9CVector3fCFv +/* 8017956C 001764CC 38 61 00 40 */ addi r3, r1, 0x40 +/* 80179570 001764D0 38 81 00 34 */ addi r4, r1, 0x34 +/* 80179574 001764D4 48 19 A8 5D */ bl __ct__11CUnitVectorFRC9CVector3f +/* 80179578 001764D8 7C 64 1B 78 */ mr r4, r3 +/* 8017957C 001764DC 7F C5 F3 78 */ mr r5, r30 +/* 80179580 001764E0 38 61 00 4C */ addi r3, r1, 0x4c +/* 80179584 001764E4 38 C1 00 10 */ addi r6, r1, 0x10 +/* 80179588 001764E8 48 19 81 0D */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 8017958C 001764EC C0 61 00 4C */ lfs f3, 0x4c(r1) +/* 80179590 001764F0 38 61 00 1C */ addi r3, r1, 0x1c +/* 80179594 001764F4 C0 41 00 50 */ lfs f2, 0x50(r1) +/* 80179598 001764F8 38 81 00 68 */ addi r4, r1, 0x68 +/* 8017959C 001764FC C0 21 00 54 */ lfs f1, 0x54(r1) +/* 801795A0 00176500 38 A1 00 84 */ addi r5, r1, 0x84 +/* 801795A4 00176504 C0 01 00 58 */ lfs f0, 0x58(r1) +/* 801795A8 00176508 D0 61 00 68 */ stfs f3, 0x68(r1) +/* 801795AC 0017650C D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 801795B0 00176510 D0 21 00 70 */ stfs f1, 0x70(r1) +/* 801795B4 00176514 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 801795B8 00176518 48 19 7C AD */ bl Transform__11CQuaternionCFRC9CVector3f +/* 801795BC 0017651C C0 41 00 1C */ lfs f2, 0x1c(r1) +/* 801795C0 00176520 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 801795C4 00176524 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 801795C8 00176528 D0 41 00 84 */ stfs f2, 0x84(r1) +/* 801795CC 0017652C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 801795D0 00176530 D0 01 00 88 */ stfs f0, 0x88(r1) +/* 801795D4 00176534 C0 02 A2 38 */ lfs f0, lbl_805ABF58@sda21(r2) +/* 801795D8 00176538 D0 21 00 8C */ stfs f1, 0x8c(r1) +/* 801795DC 0017653C C0 23 02 A8 */ lfs f1, 0x2a8(r3) +/* 801795E0 00176540 C0 5F 03 BC */ lfs f2, 0x3bc(r31) +/* 801795E4 00176544 EC 00 00 72 */ fmuls f0, f0, f1 +/* 801795E8 00176548 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801795EC 0017654C 4C 41 13 82 */ cror 2, 1, 2 +/* 801795F0 00176550 40 82 00 40 */ bne lbl_80179630 +/* 801795F4 00176554 C0 02 A2 3C */ lfs f0, lbl_805ABF5C@sda21(r2) +/* 801795F8 00176558 EC 00 00 72 */ fmuls f0, f0, f1 +/* 801795FC 0017655C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80179600 00176560 40 80 00 30 */ bge lbl_80179630 +/* 80179604 00176564 80 9F 04 90 */ lwz r4, 0x490(r31) +/* 80179608 00176568 38 61 00 CC */ addi r3, r1, 0xcc +/* 8017960C 0017656C 80 84 07 40 */ lwz r4, 0x740(r4) +/* 80179610 00176570 38 84 02 20 */ addi r4, r4, 0x220 +/* 80179614 00176574 48 19 95 61 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80179618 00176578 C0 41 00 F0 */ lfs f2, 0xf0(r1) +/* 8017961C 0017657C C0 21 00 D0 */ lfs f1, 0xd0(r1) +/* 80179620 00176580 C0 01 00 E0 */ lfs f0, 0xe0(r1) +/* 80179624 00176584 D0 21 00 84 */ stfs f1, 0x84(r1) +/* 80179628 00176588 D0 01 00 88 */ stfs f0, 0x88(r1) +/* 8017962C 0017658C D0 41 00 8C */ stfs f2, 0x8c(r1) +lbl_80179630: +/* 80179630 00176590 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80179634 00176594 3C A0 80 5A */ lis r5, lbl_805A66F4@ha +/* 80179638 00176598 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 8017963C 0017659C 38 C5 66 F4 */ addi r6, r5, lbl_805A66F4@l +/* 80179640 001765A0 38 61 00 9C */ addi r3, r1, 0x9c +/* 80179644 001765A4 38 A1 00 84 */ addi r5, r1, 0x84 +/* 80179648 001765A8 48 19 A4 C9 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 8017964C 001765AC 38 61 01 2C */ addi r3, r1, 0x12c +/* 80179650 001765B0 38 81 00 9C */ addi r4, r1, 0x9c +/* 80179654 001765B4 48 19 94 ED */ bl __as__12CTransform4fFRC12CTransform4f +/* 80179658 001765B8 D3 A1 01 38 */ stfs f29, 0x138(r1) +/* 8017965C 001765BC 38 81 01 2C */ addi r4, r1, 0x12c +/* 80179660 001765C0 D3 C1 01 48 */ stfs f30, 0x148(r1) +/* 80179664 001765C4 D3 E1 01 58 */ stfs f31, 0x158(r1) +/* 80179668 001765C8 80 7F 04 90 */ lwz r3, 0x490(r31) +/* 8017966C 001765CC 80 63 07 40 */ lwz r3, 0x740(r3) +/* 80179670 001765D0 38 63 02 20 */ addi r3, r3, 0x220 +/* 80179674 001765D4 48 19 94 CD */ bl __as__12CTransform4fFRC12CTransform4f +lbl_80179678: +/* 80179678 001765D8 E3 E1 01 98 */ psq_l f31, 408(r1), 0, qr0 +/* 8017967C 001765DC CB E1 01 90 */ lfd f31, 0x190(r1) +/* 80179680 001765E0 E3 C1 01 88 */ psq_l f30, 392(r1), 0, qr0 +/* 80179684 001765E4 CB C1 01 80 */ lfd f30, 0x180(r1) +/* 80179688 001765E8 E3 A1 01 78 */ psq_l f29, 376(r1), 0, qr0 +/* 8017968C 001765EC CB A1 01 70 */ lfd f29, 0x170(r1) +/* 80179690 001765F0 83 E1 01 6C */ lwz r31, 0x16c(r1) +/* 80179694 001765F4 83 C1 01 68 */ lwz r30, 0x168(r1) +/* 80179698 001765F8 80 01 01 A4 */ lwz r0, 0x1a4(r1) +/* 8017969C 001765FC 83 A1 01 64 */ lwz r29, 0x164(r1) +/* 801796A0 00176600 7C 08 03 A6 */ mtlr r0 +/* 801796A4 00176604 38 21 01 A0 */ addi r1, r1, 0x1a0 +/* 801796A8 00176608 4E 80 00 20 */ blr + +.global ApplyGrappleForces__7CPlayerFRC11CFinalInputR13CStateManagerf +ApplyGrappleForces__7CPlayerFRC11CFinalInputR13CStateManagerf: +/* 801796AC 0017660C 94 21 FC 30 */ stwu r1, -0x3d0(r1) +/* 801796B0 00176610 7C 08 02 A6 */ mflr r0 +/* 801796B4 00176614 90 01 03 D4 */ stw r0, 0x3d4(r1) +/* 801796B8 00176618 DB E1 03 C0 */ stfd f31, 0x3c0(r1) +/* 801796BC 0017661C F3 E1 03 C8 */ psq_st f31, 968(r1), 0, qr0 +/* 801796C0 00176620 DB C1 03 B0 */ stfd f30, 0x3b0(r1) +/* 801796C4 00176624 F3 C1 03 B8 */ psq_st f30, 952(r1), 0, qr0 +/* 801796C8 00176628 DB A1 03 A0 */ stfd f29, 0x3a0(r1) +/* 801796CC 0017662C F3 A1 03 A8 */ psq_st f29, 936(r1), 0, qr0 +/* 801796D0 00176630 DB 81 03 90 */ stfd f28, 0x390(r1) +/* 801796D4 00176634 F3 81 03 98 */ psq_st f28, 920(r1), 0, qr0 +/* 801796D8 00176638 DB 61 03 80 */ stfd f27, 0x380(r1) +/* 801796DC 0017663C F3 61 03 88 */ psq_st f27, 904(r1), 0, qr0 +/* 801796E0 00176640 DB 41 03 70 */ stfd f26, 0x370(r1) +/* 801796E4 00176644 F3 41 03 78 */ psq_st f26, 888(r1), 0, qr0 +/* 801796E8 00176648 DB 21 03 60 */ stfd f25, 0x360(r1) +/* 801796EC 0017664C F3 21 03 68 */ psq_st f25, 872(r1), 0, qr0 +/* 801796F0 00176650 DB 01 03 50 */ stfd f24, 0x350(r1) +/* 801796F4 00176654 F3 01 03 58 */ psq_st f24, 856(r1), 0, qr0 +/* 801796F8 00176658 DA E1 03 40 */ stfd f23, 0x340(r1) +/* 801796FC 0017665C F2 E1 03 48 */ psq_st f23, 840(r1), 0, qr0 +/* 80179700 00176660 DA C1 03 30 */ stfd f22, 0x330(r1) +/* 80179704 00176664 F2 C1 03 38 */ psq_st f22, 824(r1), 0, qr0 +/* 80179708 00176668 DA A1 03 20 */ stfd f21, 0x320(r1) +/* 8017970C 0017666C F2 A1 03 28 */ psq_st f21, 808(r1), 0, qr0 +/* 80179710 00176670 DA 81 03 10 */ stfd f20, 0x310(r1) +/* 80179714 00176674 F2 81 03 18 */ psq_st f20, 792(r1), 0, qr0 +/* 80179718 00176678 DA 61 03 00 */ stfd f19, 0x300(r1) +/* 8017971C 0017667C F2 61 03 08 */ psq_st f19, 776(r1), 0, qr0 +/* 80179720 00176680 DA 41 02 F0 */ stfd f18, 0x2f0(r1) +/* 80179724 00176684 F2 41 02 F8 */ psq_st f18, 760(r1), 0, qr0 +/* 80179728 00176688 BF 61 02 DC */ stmw r27, 0x2dc(r1) +/* 8017972C 0017668C 7C 7D 1B 78 */ mr r29, r3 +/* 80179730 00176690 7C BE 2B 78 */ mr r30, r5 +/* 80179734 00176694 A0 03 03 10 */ lhz r0, 0x310(r3) +/* 80179738 00176698 7C 9B 23 78 */ mr r27, r4 +/* 8017973C 0017669C C3 63 00 60 */ lfs f27, 0x60(r3) +/* 80179740 001766A0 FF E0 08 90 */ fmr f31, f1 +/* 80179744 001766A4 C3 83 00 50 */ lfs f28, 0x50(r3) +/* 80179748 001766A8 7F C3 F3 78 */ mr r3, r30 +/* 8017974C 001766AC C3 BD 00 40 */ lfs f29, 0x40(r29) +/* 80179750 001766B0 38 81 00 0C */ addi r4, r1, 0xc +/* 80179754 001766B4 B0 01 00 08 */ sth r0, 8(r1) +/* 80179758 001766B8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8017975C 001766BC 4B ED 2E 49 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80179760 001766C0 7C 64 1B 78 */ mr r4, r3 +/* 80179764 001766C4 38 61 00 1C */ addi r3, r1, 0x1c +/* 80179768 001766C8 4B F3 03 61 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" +/* 8017976C 001766CC 83 E3 00 04 */ lwz r31, 4(r3) +/* 80179770 001766D0 28 1F 00 00 */ cmplwi r31, 0 +/* 80179774 001766D4 41 82 0B 38 */ beq lbl_8017A2AC +/* 80179778 001766D8 80 1D 03 B8 */ lwz r0, 0x3b8(r29) +/* 8017977C 001766DC C3 DF 00 60 */ lfs f30, 0x60(r31) +/* 80179780 001766E0 2C 00 00 03 */ cmpwi r0, 3 +/* 80179784 001766E4 C3 3F 00 50 */ lfs f25, 0x50(r31) +/* 80179788 001766E8 C3 5F 00 40 */ lfs f26, 0x40(r31) +/* 8017978C 001766EC 41 82 03 B4 */ beq lbl_80179B40 +/* 80179790 001766F0 40 80 00 10 */ bge lbl_801797A0 +/* 80179794 001766F4 2C 00 00 02 */ cmpwi r0, 2 +/* 80179798 001766F8 40 80 00 14 */ bge lbl_801797AC +/* 8017979C 001766FC 48 00 0B 10 */ b lbl_8017A2AC +lbl_801797A0: +/* 801797A0 00176700 2C 00 00 05 */ cmpwi r0, 5 +/* 801797A4 00176704 40 80 0B 08 */ bge lbl_8017A2AC +/* 801797A8 00176708 48 00 0A D0 */ b lbl_8017A278 +lbl_801797AC: +/* 801797AC 0017670C 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) +/* 801797B0 00176710 38 61 02 00 */ addi r3, r1, 0x200 +/* 801797B4 00176714 C0 82 A2 30 */ lfs f4, lbl_805ABF50@sda21(r2) +/* 801797B8 00176718 C0 04 02 A4 */ lfs f0, 0x2a4(r4) +/* 801797BC 0017671C C0 5D 00 50 */ lfs f2, 0x50(r29) +/* 801797C0 00176720 EE 9A 20 2A */ fadds f20, f26, f4 +/* 801797C4 00176724 C0 3D 00 60 */ lfs f1, 0x60(r29) +/* 801797C8 00176728 FC 60 00 50 */ fneg f3, f0 +/* 801797CC 0017672C C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 801797D0 00176730 EC 59 10 28 */ fsubs f2, f25, f2 +/* 801797D4 00176734 EC 3E 08 28 */ fsubs f1, f30, f1 +/* 801797D8 00176738 EC 1A 00 28 */ fsubs f0, f26, f0 +/* 801797DC 0017673C EE 79 20 2A */ fadds f19, f25, f4 +/* 801797E0 00176740 D0 41 02 04 */ stfs f2, 0x204(r1) +/* 801797E4 00176744 EE 5E 18 2A */ fadds f18, f30, f3 +/* 801797E8 00176748 D0 01 02 00 */ stfs f0, 0x200(r1) +/* 801797EC 0017674C D0 21 02 08 */ stfs f1, 0x208(r1) +/* 801797F0 00176750 48 19 AF 09 */ bl CanBeNormalized__9CVector3fCFv +/* 801797F4 00176754 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801797F8 00176758 41 82 0A B4 */ beq lbl_8017A2AC +/* 801797FC 0017675C EC 54 E8 28 */ fsubs f2, f20, f29 +/* 80179800 00176760 38 61 01 F4 */ addi r3, r1, 0x1f4 +/* 80179804 00176764 EC 33 E0 28 */ fsubs f1, f19, f28 +/* 80179808 00176768 EC 12 D8 28 */ fsubs f0, f18, f27 +/* 8017980C 0017676C D0 41 01 F4 */ stfs f2, 0x1f4(r1) +/* 80179810 00176770 D0 21 01 F8 */ stfs f1, 0x1f8(r1) +/* 80179814 00176774 D0 01 01 FC */ stfs f0, 0x1fc(r1) +/* 80179818 00176778 48 19 AE E1 */ bl CanBeNormalized__9CVector3fCFv +/* 8017981C 0017677C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80179820 00176780 41 82 02 F8 */ beq lbl_80179B18 +/* 80179824 00176784 38 61 01 F4 */ addi r3, r1, 0x1f4 +/* 80179828 00176788 48 19 B0 91 */ bl Magnitude__9CVector3fCFv +/* 8017982C 0017678C FE 40 08 90 */ fmr f18, f1 +/* 80179830 00176790 38 61 01 F4 */ addi r3, r1, 0x1f4 +/* 80179834 00176794 48 19 B0 C5 */ bl Normalize__9CVector3fFv +/* 80179838 00176798 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017983C 0017679C C8 02 A2 40 */ lfd f0, lbl_805ABF60@sda21(r2) +/* 80179840 001767A0 C0 23 02 B8 */ lfs f1, 0x2b8(r3) +/* 80179844 001767A4 EC 92 08 24 */ fdivs f4, f18, f1 +/* 80179848 001767A8 FC 20 22 10 */ fabs f1, f4 +/* 8017984C 001767AC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80179850 001767B0 40 81 00 14 */ ble lbl_80179864 +/* 80179854 001767B4 C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) +/* 80179858 001767B8 C0 22 A2 4C */ lfs f1, lbl_805ABF6C@sda21(r2) +/* 8017985C 001767BC FC 04 00 6E */ fsel f0, f4, f1, f0 +/* 80179860 001767C0 EC 81 00 32 */ fmuls f4, f1, f0 +lbl_80179864: +/* 80179864 001767C4 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) +/* 80179868 001767C8 7F A3 EB 78 */ mr r3, r29 +/* 8017986C 001767CC C0 41 01 F8 */ lfs f2, 0x1f8(r1) +/* 80179870 001767D0 38 81 01 E8 */ addi r4, r1, 0x1e8 +/* 80179874 001767D4 C0 A5 02 AC */ lfs f5, 0x2ac(r5) +/* 80179878 001767D8 C0 05 02 BC */ lfs f0, 0x2bc(r5) +/* 8017987C 001767DC C0 21 01 FC */ lfs f1, 0x1fc(r1) +/* 80179880 001767E0 EC 60 28 28 */ fsubs f3, f0, f5 +/* 80179884 001767E4 C0 01 01 F4 */ lfs f0, 0x1f4(r1) +/* 80179888 001767E8 EC 64 28 FA */ fmadds f3, f4, f3, f5 +/* 8017988C 001767EC EC 43 00 B2 */ fmuls f2, f3, f2 +/* 80179890 001767F0 EC 23 00 72 */ fmuls f1, f3, f1 +/* 80179894 001767F4 EC 03 00 32 */ fmuls f0, f3, f0 +/* 80179898 001767F8 D0 41 01 EC */ stfs f2, 0x1ec(r1) +/* 8017989C 001767FC D0 01 01 E8 */ stfs f0, 0x1e8(r1) +/* 801798A0 00176800 D0 21 01 F0 */ stfs f1, 0x1f0(r1) +/* 801798A4 00176804 4B FA 13 FD */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 801798A8 00176808 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 801798AC 0017680C C0 03 02 B4 */ lfs f0, 0x2b4(r3) +/* 801798B0 00176810 FC 12 00 40 */ fcmpo cr0, f18, f0 +/* 801798B4 00176814 40 80 00 3C */ bge lbl_801798F0 +/* 801798B8 00176818 38 00 00 03 */ li r0, 3 +/* 801798BC 0017681C C0 42 A2 38 */ lfs f2, lbl_805ABF58@sda21(r2) +/* 801798C0 00176820 90 1D 03 B8 */ stw r0, 0x3b8(r29) +/* 801798C4 00176824 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 801798C8 00176828 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 801798CC 0017682C C0 23 02 A8 */ lfs f1, 0x2a8(r3) +/* 801798D0 00176830 EC 22 00 72 */ fmuls f1, f2, f1 +/* 801798D4 00176834 D0 3D 03 BC */ stfs f1, 0x3bc(r29) +/* 801798D8 00176838 D0 1D 03 D8 */ stfs f0, 0x3d8(r29) +/* 801798DC 0017683C 88 7F 01 2C */ lbz r3, 0x12c(r31) +/* 801798E0 00176840 88 1D 09 C6 */ lbz r0, 0x9c6(r29) +/* 801798E4 00176844 50 60 E7 38 */ rlwimi r0, r3, 0x1c, 0x1c, 0x1c +/* 801798E8 00176848 98 1D 09 C6 */ stb r0, 0x9c6(r29) +/* 801798EC 0017684C 48 00 09 C0 */ b lbl_8017A2AC +lbl_801798F0: +/* 801798F0 00176850 FC 20 F8 90 */ fmr f1, f31 +/* 801798F4 00176854 7F A4 EB 78 */ mr r4, r29 +/* 801798F8 00176858 38 61 02 70 */ addi r3, r1, 0x270 +/* 801798FC 0017685C 4B FA 23 B5 */ bl PredictMotion__13CPhysicsActorCFf +/* 80179900 00176860 C0 5D 00 58 */ lfs f2, 0x58(r29) +/* 80179904 00176864 38 61 01 DC */ addi r3, r1, 0x1dc +/* 80179908 00176868 C0 3D 00 48 */ lfs f1, 0x48(r29) +/* 8017990C 0017686C C0 1D 00 38 */ lfs f0, 0x38(r29) +/* 80179910 00176870 C0 A1 02 74 */ lfs f5, 0x274(r1) +/* 80179914 00176874 D0 01 01 DC */ stfs f0, 0x1dc(r1) +/* 80179918 00176878 C0 C1 02 78 */ lfs f6, 0x278(r1) +/* 8017991C 0017687C D0 21 01 E0 */ stfs f1, 0x1e0(r1) +/* 80179920 00176880 C0 21 02 70 */ lfs f1, 0x270(r1) +/* 80179924 00176884 D0 41 01 E4 */ stfs f2, 0x1e4(r1) +/* 80179928 00176888 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017992C 0017688C C0 9D 00 50 */ lfs f4, 0x50(r29) +/* 80179930 00176890 C0 7D 00 60 */ lfs f3, 0x60(r29) +/* 80179934 00176894 C0 5D 00 40 */ lfs f2, 0x40(r29) +/* 80179938 00176898 EC 84 28 2A */ fadds f4, f4, f5 +/* 8017993C 0017689C EC 63 30 2A */ fadds f3, f3, f6 +/* 80179940 001768A0 EC 22 08 2A */ fadds f1, f2, f1 +/* 80179944 001768A4 D0 01 01 E4 */ stfs f0, 0x1e4(r1) +/* 80179948 001768A8 EC 99 20 28 */ fsubs f4, f25, f4 +/* 8017994C 001768AC EC 5E 18 28 */ fsubs f2, f30, f3 +/* 80179950 001768B0 EC 1A 08 28 */ fsubs f0, f26, f1 +/* 80179954 001768B4 D0 81 01 D4 */ stfs f4, 0x1d4(r1) +/* 80179958 001768B8 D0 01 01 D0 */ stfs f0, 0x1d0(r1) +/* 8017995C 001768BC D0 41 01 D8 */ stfs f2, 0x1d8(r1) +/* 80179960 001768C0 48 19 AD 99 */ bl CanBeNormalized__9CVector3fCFv +/* 80179964 001768C4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80179968 001768C8 41 82 00 0C */ beq lbl_80179974 +/* 8017996C 001768CC 38 61 01 DC */ addi r3, r1, 0x1dc +/* 80179970 001768D0 48 19 AF 89 */ bl Normalize__9CVector3fFv +lbl_80179974: +/* 80179974 001768D4 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 80179978 001768D8 38 61 01 D0 */ addi r3, r1, 0x1d0 +/* 8017997C 001768DC D0 01 01 D8 */ stfs f0, 0x1d8(r1) +/* 80179980 001768E0 48 19 AD 79 */ bl CanBeNormalized__9CVector3fCFv +/* 80179984 001768E4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80179988 001768E8 41 82 09 24 */ beq lbl_8017A2AC +/* 8017998C 001768EC 38 61 01 D0 */ addi r3, r1, 0x1d0 +/* 80179990 001768F0 48 19 AF 69 */ bl Normalize__9CVector3fFv +/* 80179994 001768F4 C0 21 01 E0 */ lfs f1, 0x1e0(r1) +/* 80179998 001768F8 C0 01 01 D4 */ lfs f0, 0x1d4(r1) +/* 8017999C 001768FC C0 41 01 DC */ lfs f2, 0x1dc(r1) +/* 801799A0 00176900 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801799A4 00176904 C0 21 01 D0 */ lfs f1, 0x1d0(r1) +/* 801799A8 00176908 C0 81 01 E4 */ lfs f4, 0x1e4(r1) +/* 801799AC 0017690C C0 61 01 D8 */ lfs f3, 0x1d8(r1) +/* 801799B0 00176910 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 801799B4 00176914 C8 02 A2 40 */ lfd f0, lbl_805ABF60@sda21(r2) +/* 801799B8 00176918 EC 24 08 FA */ fmadds f1, f4, f3, f1 +/* 801799BC 0017691C FC 40 0A 10 */ fabs f2, f1 +/* 801799C0 00176920 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801799C4 00176924 40 81 00 14 */ ble lbl_801799D8 +/* 801799C8 00176928 C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) +/* 801799CC 0017692C C0 42 A2 4C */ lfs f2, lbl_805ABF6C@sda21(r2) +/* 801799D0 00176930 FC 01 00 AE */ fsel f0, f1, f2, f0 +/* 801799D4 00176934 EC 22 00 32 */ fmuls f1, f2, f0 +lbl_801799D8: +/* 801799D8 00176938 48 21 B2 55 */ bl acos +/* 801799DC 0017693C C8 42 A2 50 */ lfd f2, lbl_805ABF70@sda21(r2) +/* 801799E0 00176940 FC 01 10 40 */ fcmpo cr0, f1, f2 +/* 801799E4 00176944 40 81 01 04 */ ble lbl_80179AE8 +/* 801799E8 00176948 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 801799EC 0017694C C0 03 02 C0 */ lfs f0, 0x2c0(r3) +/* 801799F0 00176950 EE 9F 00 32 */ fmuls f20, f31, f0 +/* 801799F4 00176954 FC 01 A0 40 */ fcmpo cr0, f1, f20 +/* 801799F8 00176958 4C 41 13 82 */ cror 2, 1, 2 +/* 801799FC 0017695C 40 82 00 B4 */ bne lbl_80179AB0 +/* 80179A00 00176960 C0 01 01 DC */ lfs f0, 0x1dc(r1) +/* 80179A04 00176964 38 61 01 C4 */ addi r3, r1, 0x1c4 +/* 80179A08 00176968 C0 21 01 E0 */ lfs f1, 0x1e0(r1) +/* 80179A0C 0017696C FC 40 00 50 */ fneg f2, f0 +/* 80179A10 00176970 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 80179A14 00176974 D0 21 01 C4 */ stfs f1, 0x1c4(r1) +/* 80179A18 00176978 D0 41 01 C8 */ stfs f2, 0x1c8(r1) +/* 80179A1C 0017697C D0 01 01 CC */ stfs f0, 0x1cc(r1) +/* 80179A20 00176980 48 19 AC D9 */ bl CanBeNormalized__9CVector3fCFv +/* 80179A24 00176984 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80179A28 00176988 41 82 00 0C */ beq lbl_80179A34 +/* 80179A2C 0017698C 38 61 01 C4 */ addi r3, r1, 0x1c4 +/* 80179A30 00176990 48 19 AE C9 */ bl Normalize__9CVector3fFv +lbl_80179A34: +/* 80179A34 00176994 C0 21 01 D4 */ lfs f1, 0x1d4(r1) +/* 80179A38 00176998 C0 01 01 C8 */ lfs f0, 0x1c8(r1) +/* 80179A3C 0017699C C0 41 01 D0 */ lfs f2, 0x1d0(r1) +/* 80179A40 001769A0 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80179A44 001769A4 C0 21 01 C4 */ lfs f1, 0x1c4(r1) +/* 80179A48 001769A8 C0 81 01 D8 */ lfs f4, 0x1d8(r1) +/* 80179A4C 001769AC C0 61 01 CC */ lfs f3, 0x1cc(r1) +/* 80179A50 001769B0 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 80179A54 001769B4 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 80179A58 001769B8 EC 24 08 FA */ fmadds f1, f4, f3, f1 +/* 80179A5C 001769BC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80179A60 001769C0 4C 41 13 82 */ cror 2, 1, 2 +/* 80179A64 001769C4 40 82 00 08 */ bne lbl_80179A6C +/* 80179A68 001769C8 FE 80 A0 50 */ fneg f20, f20 +lbl_80179A6C: +/* 80179A6C 001769CC C0 22 A2 30 */ lfs f1, lbl_805ABF50@sda21(r2) +/* 80179A70 001769D0 38 61 01 38 */ addi r3, r1, 0x138 +/* 80179A74 001769D4 C0 02 A2 4C */ lfs f0, lbl_805ABF6C@sda21(r2) +/* 80179A78 001769D8 D2 81 00 18 */ stfs f20, 0x18(r1) +/* 80179A7C 001769DC D0 21 01 38 */ stfs f1, 0x138(r1) +/* 80179A80 001769E0 D0 21 01 3C */ stfs f1, 0x13c(r1) +/* 80179A84 001769E4 D0 01 01 40 */ stfs f0, 0x140(r1) +/* 80179A88 001769E8 48 19 AE 71 */ bl Normalize__9CVector3fFv +/* 80179A8C 001769EC 38 61 01 44 */ addi r3, r1, 0x144 +/* 80179A90 001769F0 38 81 01 38 */ addi r4, r1, 0x138 +/* 80179A94 001769F4 38 A1 00 18 */ addi r5, r1, 0x18 +/* 80179A98 001769F8 48 19 78 5D */ bl AxisAngle__11CQuaternionFRC13CUnitVector3fRC9CRelAngle +/* 80179A9C 001769FC FC 20 F8 90 */ fmr f1, f31 +/* 80179AA0 00176A00 7F A3 EB 78 */ mr r3, r29 +/* 80179AA4 00176A04 38 81 01 44 */ addi r4, r1, 0x144 +/* 80179AA8 00176A08 4B FA 13 6D */ bl RotateToOR__13CPhysicsActorFRC11CQuaternionf +/* 80179AAC 00176A0C 48 00 08 00 */ b lbl_8017A2AC +lbl_80179AB0: +/* 80179AB0 00176A10 C8 02 A2 58 */ lfd f0, lbl_805ABF78@sda21(r2) +/* 80179AB4 00176A14 FC 01 00 28 */ fsub f0, f1, f0 +/* 80179AB8 00176A18 FC 00 02 10 */ fabs f0, f0 +/* 80179ABC 00176A1C FC 00 10 40 */ fcmpo cr0, f0, f2 +/* 80179AC0 00176A20 40 81 07 EC */ ble lbl_8017A2AC +/* 80179AC4 00176A24 38 61 01 28 */ addi r3, r1, 0x128 +/* 80179AC8 00176A28 38 81 01 DC */ addi r4, r1, 0x1dc +/* 80179ACC 00176A2C 38 A1 01 D0 */ addi r5, r1, 0x1d0 +/* 80179AD0 00176A30 48 19 7F E9 */ bl ShortestRotationArc__11CQuaternionFRC9CVector3fRC9CVector3f +/* 80179AD4 00176A34 FC 20 F8 90 */ fmr f1, f31 +/* 80179AD8 00176A38 7F A3 EB 78 */ mr r3, r29 +/* 80179ADC 00176A3C 38 81 01 28 */ addi r4, r1, 0x128 +/* 80179AE0 00176A40 4B FA 13 35 */ bl RotateToOR__13CPhysicsActorFRC11CQuaternionf +/* 80179AE4 00176A44 48 00 07 C8 */ b lbl_8017A2AC +lbl_80179AE8: +/* 80179AE8 00176A48 4B EA 1A 4D */ bl Identity__10CAxisAngleFv +/* 80179AEC 00176A4C 7C 64 1B 78 */ mr r4, r3 +/* 80179AF0 00176A50 7F A3 EB 78 */ mr r3, r29 +/* 80179AF4 00176A54 4B FA 11 09 */ bl SetAngularVelocityWR__13CPhysicsActorFRC10CAxisAngle +/* 80179AF8 00176A58 4B EA 1A 3D */ bl Identity__10CAxisAngleFv +/* 80179AFC 00176A5C 80 83 00 00 */ lwz r4, 0(r3) +/* 80179B00 00176A60 80 03 00 04 */ lwz r0, 4(r3) +/* 80179B04 00176A64 90 9D 01 74 */ stw r4, 0x174(r29) +/* 80179B08 00176A68 90 1D 01 78 */ stw r0, 0x178(r29) +/* 80179B0C 00176A6C 80 03 00 08 */ lwz r0, 8(r3) +/* 80179B10 00176A70 90 1D 01 7C */ stw r0, 0x17c(r29) +/* 80179B14 00176A74 48 00 07 98 */ b lbl_8017A2AC +lbl_80179B18: +/* 80179B18 00176A78 38 00 00 03 */ li r0, 3 +/* 80179B1C 00176A7C C0 42 A2 38 */ lfs f2, lbl_805ABF58@sda21(r2) +/* 80179B20 00176A80 90 1D 03 B8 */ stw r0, 0x3b8(r29) +/* 80179B24 00176A84 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 80179B28 00176A88 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 80179B2C 00176A8C C0 23 02 A8 */ lfs f1, 0x2a8(r3) +/* 80179B30 00176A90 EC 22 00 72 */ fmuls f1, f2, f1 +/* 80179B34 00176A94 D0 3D 03 BC */ stfs f1, 0x3bc(r29) +/* 80179B38 00176A98 D0 1D 03 D8 */ stfs f0, 0x3d8(r29) +/* 80179B3C 00176A9C 48 00 07 70 */ b lbl_8017A2AC +lbl_80179B40: +/* 80179B40 00176AA0 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 80179B44 00176AA4 C0 02 A2 60 */ lfs f0, lbl_805ABF80@sda21(r2) +/* 80179B48 00176AA8 C0 23 02 C4 */ lfs f1, 0x2c4(r3) +/* 80179B4C 00176AAC 88 03 02 D5 */ lbz r0, 0x2d5(r3) +/* 80179B50 00176AB0 EE 60 00 72 */ fmuls f19, f0, f1 +/* 80179B54 00176AB4 28 00 00 00 */ cmplwi r0, 0 +/* 80179B58 00176AB8 41 82 00 0C */ beq lbl_80179B64 +/* 80179B5C 00176ABC C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) +/* 80179B60 00176AC0 EE 73 00 32 */ fmuls f19, f19, f0 +lbl_80179B64: +/* 80179B64 00176AC4 EE BD D0 28 */ fsubs f21, f29, f26 +/* 80179B68 00176AC8 38 61 01 B8 */ addi r3, r1, 0x1b8 +/* 80179B6C 00176ACC EE 9C C8 28 */ fsubs f20, f28, f25 +/* 80179B70 00176AD0 EE 5B F0 28 */ fsubs f18, f27, f30 +/* 80179B74 00176AD4 D2 A1 01 B8 */ stfs f21, 0x1b8(r1) +/* 80179B78 00176AD8 D2 81 01 BC */ stfs f20, 0x1bc(r1) +/* 80179B7C 00176ADC D2 41 01 C0 */ stfs f18, 0x1c0(r1) +/* 80179B80 00176AE0 48 19 AD 39 */ bl Magnitude__9CVector3fCFv +/* 80179B84 00176AE4 EC 32 08 24 */ fdivs f1, f18, f1 +/* 80179B88 00176AE8 C8 02 A2 40 */ lfd f0, lbl_805ABF60@sda21(r2) +/* 80179B8C 00176AEC FC 20 0A 10 */ fabs f1, f1 +/* 80179B90 00176AF0 FF C0 08 18 */ frsp f30, f1 +/* 80179B94 00176AF4 FC 20 F2 10 */ fabs f1, f30 +/* 80179B98 00176AF8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80179B9C 00176AFC 40 81 00 14 */ ble lbl_80179BB0 +/* 80179BA0 00176B00 C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) +/* 80179BA4 00176B04 C0 22 A2 4C */ lfs f1, lbl_805ABF6C@sda21(r2) +/* 80179BA8 00176B08 FC 1E 00 6E */ fsel f0, f30, f1, f0 +/* 80179BAC 00176B0C EF C1 00 32 */ fmuls f30, f1, f0 +lbl_80179BB0: +/* 80179BB0 00176B10 88 1F 01 2C */ lbz r0, 0x12c(r31) +/* 80179BB4 00176B14 3B 80 00 00 */ li r28, 0 +/* 80179BB8 00176B18 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80179BBC 00176B1C 40 82 00 64 */ bne lbl_80179C20 +/* 80179BC0 00176B20 7F 64 DB 78 */ mr r4, r27 +/* 80179BC4 00176B24 38 60 00 02 */ li r3, 2 +/* 80179BC8 00176B28 4B E9 2D 51 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80179BCC 00176B2C C0 02 A2 64 */ lfs f0, lbl_805ABF84@sda21(r2) +/* 80179BD0 00176B30 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80179BD4 00176B34 40 81 00 1C */ ble lbl_80179BF0 +/* 80179BD8 00176B38 7F 64 DB 78 */ mr r4, r27 +/* 80179BDC 00176B3C 3B 80 00 01 */ li r28, 1 +/* 80179BE0 00176B40 38 60 00 02 */ li r3, 2 +/* 80179BE4 00176B44 4B E9 2D 35 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80179BE8 00176B48 FC 00 08 50 */ fneg f0, f1 +/* 80179BEC 00176B4C EE 73 00 32 */ fmuls f19, f19, f0 +lbl_80179BF0: +/* 80179BF0 00176B50 7F 64 DB 78 */ mr r4, r27 +/* 80179BF4 00176B54 38 60 00 03 */ li r3, 3 +/* 80179BF8 00176B58 4B E9 2D 21 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80179BFC 00176B5C C0 02 A2 64 */ lfs f0, lbl_805ABF84@sda21(r2) +/* 80179C00 00176B60 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80179C04 00176B64 40 81 00 2C */ ble lbl_80179C30 +/* 80179C08 00176B68 7F 64 DB 78 */ mr r4, r27 +/* 80179C0C 00176B6C 3B 80 00 01 */ li r28, 1 +/* 80179C10 00176B70 38 60 00 03 */ li r3, 3 +/* 80179C14 00176B74 4B E9 2D 05 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80179C18 00176B78 EE 73 00 72 */ fmuls f19, f19, f1 +/* 80179C1C 00176B7C 48 00 00 14 */ b lbl_80179C30 +lbl_80179C20: +/* 80179C20 00176B80 88 1D 09 C6 */ lbz r0, 0x9c6(r29) +/* 80179C24 00176B84 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 80179C28 00176B88 41 82 00 08 */ beq lbl_80179C30 +/* 80179C2C 00176B8C 3B 80 00 01 */ li r28, 1 +lbl_80179C30: +/* 80179C30 00176B90 C0 1D 03 BC */ lfs f0, 0x3bc(r29) +/* 80179C34 00176B94 EC 00 F8 2A */ fadds f0, f0, f31 +/* 80179C38 00176B98 D0 1D 03 BC */ stfs f0, 0x3bc(r29) +/* 80179C3C 00176B9C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 80179C40 00176BA0 C0 1D 03 BC */ lfs f0, 0x3bc(r29) +/* 80179C44 00176BA4 C0 23 02 A8 */ lfs f1, 0x2a8(r3) +/* 80179C48 00176BA8 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80179C4C 00176BAC 40 81 00 0C */ ble lbl_80179C58 +/* 80179C50 00176BB0 EC 00 08 28 */ fsubs f0, f0, f1 +/* 80179C54 00176BB4 D0 1D 03 BC */ stfs f0, 0x3bc(r29) +lbl_80179C58: +/* 80179C58 00176BB8 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 80179C5C 00176BBC C0 02 A2 68 */ lfs f0, lbl_805ABF88@sda21(r2) +/* 80179C60 00176BC0 C0 23 02 A8 */ lfs f1, 0x2a8(r3) +/* 80179C64 00176BC4 C0 5D 03 BC */ lfs f2, 0x3bc(r29) +/* 80179C68 00176BC8 EC 00 00 72 */ fmuls f0, f0, f1 +/* 80179C6C 00176BCC C3 1D 03 C0 */ lfs f24, 0x3c0(r29) +/* 80179C70 00176BD0 C2 FD 03 C4 */ lfs f23, 0x3c4(r29) +/* 80179C74 00176BD4 C2 DD 03 C8 */ lfs f22, 0x3c8(r29) +/* 80179C78 00176BD8 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80179C7C 00176BDC 40 80 00 14 */ bge lbl_80179C90 +/* 80179C80 00176BE0 C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) +/* 80179C84 00176BE4 EF 18 00 32 */ fmuls f24, f24, f0 +/* 80179C88 00176BE8 EE F7 00 32 */ fmuls f23, f23, f0 +/* 80179C8C 00176BEC EE D6 00 32 */ fmuls f22, f22, f0 +lbl_80179C90: +/* 80179C90 00176BF0 EC 22 08 24 */ fdivs f1, f2, f1 +/* 80179C94 00176BF4 C0 42 A2 34 */ lfs f2, lbl_805ABF54@sda21(r2) +/* 80179C98 00176BF8 C0 02 A2 6C */ lfs f0, lbl_805ABF8C@sda21(r2) +/* 80179C9C 00176BFC EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 80179CA0 00176C00 48 21 A7 51 */ bl cos +/* 80179CA4 00176C04 FC 40 08 18 */ frsp f2, f1 +/* 80179CA8 00176C08 C8 02 A2 40 */ lfd f0, lbl_805ABF60@sda21(r2) +/* 80179CAC 00176C0C FC 20 12 10 */ fabs f1, f2 +/* 80179CB0 00176C10 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80179CB4 00176C14 40 81 00 14 */ ble lbl_80179CC8 +/* 80179CB8 00176C18 C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) +/* 80179CBC 00176C1C C0 22 A2 4C */ lfs f1, lbl_805ABF6C@sda21(r2) +/* 80179CC0 00176C20 FC 02 00 6E */ fsel f0, f2, f1, f0 +/* 80179CC4 00176C24 EC 41 00 32 */ fmuls f2, f1, f0 +lbl_80179CC8: +/* 80179CC8 00176C28 FC 20 12 10 */ fabs f1, f2 +/* 80179CCC 00176C2C 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) +/* 80179CD0 00176C30 38 61 01 1C */ addi r3, r1, 0x11c +/* 80179CD4 00176C34 38 81 01 B8 */ addi r4, r1, 0x1b8 +/* 80179CD8 00176C38 C0 05 02 AC */ lfs f0, 0x2ac(r5) +/* 80179CDC 00176C3C FC 20 08 18 */ frsp f1, f1 +/* 80179CE0 00176C40 EE 41 00 32 */ fmuls f18, f1, f0 +/* 80179CE4 00176C44 48 19 AB 6D */ bl AsNormalized__9CVector3fCFv +/* 80179CE8 00176C48 C0 81 01 20 */ lfs f4, 0x120(r1) +/* 80179CEC 00176C4C 38 61 01 B8 */ addi r3, r1, 0x1b8 +/* 80179CF0 00176C50 C0 A1 01 24 */ lfs f5, 0x124(r1) +/* 80179CF4 00176C54 C0 61 01 1C */ lfs f3, 0x11c(r1) +/* 80179CF8 00176C58 EC 58 01 32 */ fmuls f2, f24, f4 +/* 80179CFC 00176C5C EC 37 01 72 */ fmuls f1, f23, f5 +/* 80179D00 00176C60 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) +/* 80179D04 00176C64 EC 16 00 F2 */ fmuls f0, f22, f3 +/* 80179D08 00176C68 EC 63 15 F8 */ fmsubs f3, f3, f23, f2 +/* 80179D0C 00176C6C EC 44 0D B8 */ fmsubs f2, f4, f22, f1 +/* 80179D10 00176C70 EC 25 06 38 */ fmsubs f1, f5, f24, f0 +/* 80179D14 00176C74 EC 12 00 F2 */ fmuls f0, f18, f3 +/* 80179D18 00176C78 EC 52 00 B2 */ fmuls f2, f18, f2 +/* 80179D1C 00176C7C EC 32 00 72 */ fmuls f1, f18, f1 +/* 80179D20 00176C80 D0 01 01 B4 */ stfs f0, 0x1b4(r1) +/* 80179D24 00176C84 D0 41 01 AC */ stfs f2, 0x1ac(r1) +/* 80179D28 00176C88 D0 21 01 B0 */ stfs f1, 0x1b0(r1) +/* 80179D2C 00176C8C C2 44 02 A4 */ lfs f18, 0x2a4(r4) +/* 80179D30 00176C90 48 19 AB 89 */ bl Magnitude__9CVector3fCFv +/* 80179D34 00176C94 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 80179D38 00176C98 EC 41 90 28 */ fsubs f2, f1, f18 +/* 80179D3C 00176C9C C8 02 A2 40 */ lfd f0, lbl_805ABF60@sda21(r2) +/* 80179D40 00176CA0 C0 23 02 A4 */ lfs f1, 0x2a4(r3) +/* 80179D44 00176CA4 EC 62 08 24 */ fdivs f3, f2, f1 +/* 80179D48 00176CA8 FC 20 1A 10 */ fabs f1, f3 +/* 80179D4C 00176CAC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80179D50 00176CB0 40 81 00 14 */ ble lbl_80179D64 +/* 80179D54 00176CB4 C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) +/* 80179D58 00176CB8 C0 22 A2 4C */ lfs f1, lbl_805ABF6C@sda21(r2) +/* 80179D5C 00176CBC FC 03 00 6E */ fsel f0, f3, f1, f0 +/* 80179D60 00176CC0 EC 61 00 32 */ fmuls f3, f1, f0 +lbl_80179D64: +/* 80179D64 00176CC4 C0 41 01 BC */ lfs f2, 0x1bc(r1) +/* 80179D68 00176CC8 7F A3 EB 78 */ mr r3, r29 +/* 80179D6C 00176CCC C0 21 01 C0 */ lfs f1, 0x1c0(r1) +/* 80179D70 00176CD0 38 81 01 AC */ addi r4, r1, 0x1ac +/* 80179D74 00176CD4 C0 01 01 B8 */ lfs f0, 0x1b8(r1) +/* 80179D78 00176CD8 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 80179D7C 00176CDC C0 C2 A2 70 */ lfs f6, lbl_805ABF90@sda21(r2) +/* 80179D80 00176CE0 EC 23 00 72 */ fmuls f1, f3, f1 +/* 80179D84 00176CE4 EC 03 00 32 */ fmuls f0, f3, f0 +/* 80179D88 00176CE8 C0 61 01 AC */ lfs f3, 0x1ac(r1) +/* 80179D8C 00176CEC EC A6 00 B2 */ fmuls f5, f6, f2 +/* 80179D90 00176CF0 EC 86 00 72 */ fmuls f4, f6, f1 +/* 80179D94 00176CF4 C0 21 01 B0 */ lfs f1, 0x1b0(r1) +/* 80179D98 00176CF8 EC 46 00 32 */ fmuls f2, f6, f0 +/* 80179D9C 00176CFC EC BE 01 72 */ fmuls f5, f30, f5 +/* 80179DA0 00176D00 C0 01 01 B4 */ lfs f0, 0x1b4(r1) +/* 80179DA4 00176D04 EC 9E 01 32 */ fmuls f4, f30, f4 +/* 80179DA8 00176D08 EC 5E 00 B2 */ fmuls f2, f30, f2 +/* 80179DAC 00176D0C EC 21 28 2A */ fadds f1, f1, f5 +/* 80179DB0 00176D10 EC 00 20 2A */ fadds f0, f0, f4 +/* 80179DB4 00176D14 EC 43 10 2A */ fadds f2, f3, f2 +/* 80179DB8 00176D18 D0 21 01 B0 */ stfs f1, 0x1b0(r1) +/* 80179DBC 00176D1C D0 41 01 AC */ stfs f2, 0x1ac(r1) +/* 80179DC0 00176D20 D0 01 01 B4 */ stfs f0, 0x1b4(r1) +/* 80179DC4 00176D24 C0 1D 01 38 */ lfs f0, 0x138(r29) +/* 80179DC8 00176D28 D0 01 01 A0 */ stfs f0, 0x1a0(r1) +/* 80179DCC 00176D2C C0 1D 01 3C */ lfs f0, 0x13c(r29) +/* 80179DD0 00176D30 D0 01 01 A4 */ stfs f0, 0x1a4(r1) +/* 80179DD4 00176D34 C0 1D 01 40 */ lfs f0, 0x140(r29) +/* 80179DD8 00176D38 D0 01 01 A8 */ stfs f0, 0x1a8(r1) +/* 80179DDC 00176D3C 4B FA 0E C5 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 80179DE0 00176D40 38 61 02 A4 */ addi r3, r1, 0x2a4 +/* 80179DE4 00176D44 38 9D 00 34 */ addi r4, r29, 0x34 +/* 80179DE8 00176D48 48 19 8D 8D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80179DEC 00176D4C FC 20 F8 90 */ fmr f1, f31 +/* 80179DF0 00176D50 7F A4 EB 78 */ mr r4, r29 +/* 80179DF4 00176D54 38 61 02 3C */ addi r3, r1, 0x23c +/* 80179DF8 00176D58 4B FA 1E B9 */ bl PredictMotion__13CPhysicsActorCFf +/* 80179DFC 00176D5C C0 3D 00 40 */ lfs f1, 0x40(r29) +/* 80179E00 00176D60 7F A3 EB 78 */ mr r3, r29 +/* 80179E04 00176D64 C0 01 02 3C */ lfs f0, 0x23c(r1) +/* 80179E08 00176D68 7F C5 F3 78 */ mr r5, r30 +/* 80179E0C 00176D6C C0 7D 00 50 */ lfs f3, 0x50(r29) +/* 80179E10 00176D70 38 81 01 10 */ addi r4, r1, 0x110 +/* 80179E14 00176D74 C0 41 02 40 */ lfs f2, 0x240(r1) +/* 80179E18 00176D78 EC 81 00 2A */ fadds f4, f1, f0 +/* 80179E1C 00176D7C C0 3D 00 60 */ lfs f1, 0x60(r29) +/* 80179E20 00176D80 C0 01 02 44 */ lfs f0, 0x244(r1) +/* 80179E24 00176D84 EC 43 10 2A */ fadds f2, f3, f2 +/* 80179E28 00176D88 D0 81 01 04 */ stfs f4, 0x104(r1) +/* 80179E2C 00176D8C EC 01 00 2A */ fadds f0, f1, f0 +/* 80179E30 00176D90 D0 41 01 08 */ stfs f2, 0x108(r1) +/* 80179E34 00176D94 80 E1 01 04 */ lwz r7, 0x104(r1) +/* 80179E38 00176D98 D0 01 01 0C */ stfs f0, 0x10c(r1) +/* 80179E3C 00176D9C 80 C1 01 08 */ lwz r6, 0x108(r1) +/* 80179E40 00176DA0 80 01 01 0C */ lwz r0, 0x10c(r1) +/* 80179E44 00176DA4 90 E1 01 10 */ stw r7, 0x110(r1) +/* 80179E48 00176DA8 90 C1 01 14 */ stw r6, 0x114(r1) +/* 80179E4C 00176DAC 90 01 01 18 */ stw r0, 0x118(r1) +/* 80179E50 00176DB0 48 00 05 29 */ bl ValidateFPPosition__7CPlayerF9CVector3fR13CStateManager +/* 80179E54 00176DB4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80179E58 00176DB8 41 82 04 0C */ beq lbl_8017A264 +/* 80179E5C 00176DBC 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 80179E60 00176DC0 41 82 04 4C */ beq lbl_8017A2AC +/* 80179E64 00176DC4 EC 13 07 F2 */ fmuls f0, f19, f31 +/* 80179E68 00176DC8 38 61 00 F4 */ addi r3, r1, 0xf4 +/* 80179E6C 00176DCC 38 81 00 14 */ addi r4, r1, 0x14 +/* 80179E70 00176DD0 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80179E74 00176DD4 48 19 72 85 */ bl ZRotation__11CQuaternionFRC9CRelAngle +/* 80179E78 00176DD8 C0 61 00 F4 */ lfs f3, 0xf4(r1) +/* 80179E7C 00176DDC C0 41 00 F8 */ lfs f2, 0xf8(r1) +/* 80179E80 00176DE0 C0 21 00 FC */ lfs f1, 0xfc(r1) +/* 80179E84 00176DE4 C0 01 01 00 */ lfs f0, 0x100(r1) +/* 80179E88 00176DE8 D0 61 01 90 */ stfs f3, 0x190(r1) +/* 80179E8C 00176DEC D0 41 01 94 */ stfs f2, 0x194(r1) +/* 80179E90 00176DF0 D0 21 01 98 */ stfs f1, 0x198(r1) +/* 80179E94 00176DF4 D0 01 01 9C */ stfs f0, 0x19c(r1) +/* 80179E98 00176DF8 88 1F 01 2C */ lbz r0, 0x12c(r31) +/* 80179E9C 00176DFC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80179EA0 00176E00 41 82 01 84 */ beq lbl_8017A024 +/* 80179EA4 00176E04 88 1D 09 C6 */ lbz r0, 0x9c6(r29) +/* 80179EA8 00176E08 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 80179EAC 00176E0C 41 82 01 78 */ beq lbl_8017A024 +/* 80179EB0 00176E10 C0 5D 00 58 */ lfs f2, 0x58(r29) +/* 80179EB4 00176E14 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 80179EB8 00176E18 C0 3D 00 48 */ lfs f1, 0x48(r29) +/* 80179EBC 00176E1C 38 81 00 DC */ addi r4, r1, 0xdc +/* 80179EC0 00176E20 C0 1D 00 38 */ lfs f0, 0x38(r29) +/* 80179EC4 00176E24 D0 01 01 84 */ stfs f0, 0x184(r1) +/* 80179EC8 00176E28 D0 21 01 88 */ stfs f1, 0x188(r1) +/* 80179ECC 00176E2C D0 41 01 8C */ stfs f2, 0x18c(r1) +/* 80179ED0 00176E30 C0 5F 00 58 */ lfs f2, 0x58(r31) +/* 80179ED4 00176E34 C0 3F 00 48 */ lfs f1, 0x48(r31) +/* 80179ED8 00176E38 C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 80179EDC 00176E3C D0 01 00 DC */ stfs f0, 0xdc(r1) +/* 80179EE0 00176E40 D0 21 00 E0 */ stfs f1, 0xe0(r1) +/* 80179EE4 00176E44 D0 41 00 E4 */ stfs f2, 0xe4(r1) +/* 80179EE8 00176E48 48 19 A9 69 */ bl AsNormalized__9CVector3fCFv +/* 80179EEC 00176E4C C0 41 00 E8 */ lfs f2, 0xe8(r1) +/* 80179EF0 00176E50 38 61 00 D0 */ addi r3, r1, 0xd0 +/* 80179EF4 00176E54 C0 21 00 EC */ lfs f1, 0xec(r1) +/* 80179EF8 00176E58 38 81 01 84 */ addi r4, r1, 0x184 +/* 80179EFC 00176E5C C0 01 00 F0 */ lfs f0, 0xf0(r1) +/* 80179F00 00176E60 D0 41 01 78 */ stfs f2, 0x178(r1) +/* 80179F04 00176E64 D0 21 01 7C */ stfs f1, 0x17c(r1) +/* 80179F08 00176E68 D0 01 01 80 */ stfs f0, 0x180(r1) +/* 80179F0C 00176E6C 48 19 A9 45 */ bl AsNormalized__9CVector3fCFv +/* 80179F10 00176E70 C0 21 00 D4 */ lfs f1, 0xd4(r1) +/* 80179F14 00176E74 C0 01 01 7C */ lfs f0, 0x17c(r1) +/* 80179F18 00176E78 C0 41 00 D0 */ lfs f2, 0xd0(r1) +/* 80179F1C 00176E7C EC 01 00 32 */ fmuls f0, f1, f0 +/* 80179F20 00176E80 C0 21 01 78 */ lfs f1, 0x178(r1) +/* 80179F24 00176E84 C0 81 00 D8 */ lfs f4, 0xd8(r1) +/* 80179F28 00176E88 C0 61 01 80 */ lfs f3, 0x180(r1) +/* 80179F2C 00176E8C EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 80179F30 00176E90 C8 02 A2 40 */ lfd f0, lbl_805ABF60@sda21(r2) +/* 80179F34 00176E94 EC 84 08 FA */ fmadds f4, f4, f3, f1 +/* 80179F38 00176E98 FC 20 22 10 */ fabs f1, f4 +/* 80179F3C 00176E9C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80179F40 00176EA0 40 81 00 14 */ ble lbl_80179F54 +/* 80179F44 00176EA4 C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) +/* 80179F48 00176EA8 C0 22 A2 4C */ lfs f1, lbl_805ABF6C@sda21(r2) +/* 80179F4C 00176EAC FC 04 00 6E */ fsel f0, f4, f1, f0 +/* 80179F50 00176EB0 EC 81 00 32 */ fmuls f4, f1, f0 +lbl_80179F54: +/* 80179F54 00176EB4 FC 00 22 10 */ fabs f0, f4 +/* 80179F58 00176EB8 C0 42 A2 4C */ lfs f2, lbl_805ABF6C@sda21(r2) +/* 80179F5C 00176EBC FC 20 20 90 */ fmr f1, f4 +/* 80179F60 00176EC0 FC 00 00 18 */ frsp f0, f0 +/* 80179F64 00176EC4 FC 02 00 00 */ fcmpu cr0, f2, f0 +/* 80179F68 00176EC8 40 82 00 14 */ bne lbl_80179F7C +/* 80179F6C 00176ECC 88 1D 09 C6 */ lbz r0, 0x9c6(r29) +/* 80179F70 00176ED0 38 60 00 00 */ li r3, 0 +/* 80179F74 00176ED4 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 80179F78 00176ED8 98 1D 09 C6 */ stb r0, 0x9c6(r29) +lbl_80179F7C: +/* 80179F7C 00176EDC C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 80179F80 00176EE0 FC 04 00 40 */ fcmpo cr0, f4, f0 +/* 80179F84 00176EE4 40 80 00 2C */ bge lbl_80179FB0 +/* 80179F88 00176EE8 C0 61 01 80 */ lfs f3, 0x180(r1) +/* 80179F8C 00176EEC FC 20 20 50 */ fneg f1, f4 +/* 80179F90 00176EF0 C0 41 01 7C */ lfs f2, 0x17c(r1) +/* 80179F94 00176EF4 C0 01 01 78 */ lfs f0, 0x178(r1) +/* 80179F98 00176EF8 FC 60 18 50 */ fneg f3, f3 +/* 80179F9C 00176EFC FC 40 10 50 */ fneg f2, f2 +/* 80179FA0 00176F00 FC 00 00 50 */ fneg f0, f0 +/* 80179FA4 00176F04 D0 61 01 80 */ stfs f3, 0x180(r1) +/* 80179FA8 00176F08 D0 01 01 78 */ stfs f0, 0x178(r1) +/* 80179FAC 00176F0C D0 41 01 7C */ stfs f2, 0x17c(r1) +lbl_80179FB0: +/* 80179FB0 00176F10 48 21 AC 7D */ bl acos +/* 80179FB4 00176F14 FC 00 08 18 */ frsp f0, f1 +/* 80179FB8 00176F18 C0 22 A2 30 */ lfs f1, lbl_805ABF50@sda21(r2) +/* 80179FBC 00176F1C 38 61 00 9C */ addi r3, r1, 0x9c +/* 80179FC0 00176F20 38 81 01 78 */ addi r4, r1, 0x178 +/* 80179FC4 00176F24 D0 21 01 8C */ stfs f1, 0x18c(r1) +/* 80179FC8 00176F28 EC 00 07 F2 */ fmuls f0, f0, f31 +/* 80179FCC 00176F2C D0 01 00 10 */ stfs f0, 0x10(r1) +/* 80179FD0 00176F30 48 19 9E 01 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 80179FD4 00176F34 7C 7F 1B 78 */ mr r31, r3 +/* 80179FD8 00176F38 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 80179FDC 00176F3C 38 81 01 84 */ addi r4, r1, 0x184 +/* 80179FE0 00176F40 48 19 A8 71 */ bl AsNormalized__9CVector3fCFv +/* 80179FE4 00176F44 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 80179FE8 00176F48 38 81 00 A8 */ addi r4, r1, 0xa8 +/* 80179FEC 00176F4C 48 19 9D E5 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 80179FF0 00176F50 7C 64 1B 78 */ mr r4, r3 +/* 80179FF4 00176F54 7F E5 FB 78 */ mr r5, r31 +/* 80179FF8 00176F58 38 61 00 C0 */ addi r3, r1, 0xc0 +/* 80179FFC 00176F5C 38 C1 00 10 */ addi r6, r1, 0x10 +/* 8017A000 00176F60 48 19 76 95 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 8017A004 00176F64 C0 01 00 C0 */ lfs f0, 0xc0(r1) +/* 8017A008 00176F68 80 81 00 C4 */ lwz r4, 0xc4(r1) +/* 8017A00C 00176F6C 80 61 00 C8 */ lwz r3, 0xc8(r1) +/* 8017A010 00176F70 80 01 00 CC */ lwz r0, 0xcc(r1) +/* 8017A014 00176F74 D0 01 01 90 */ stfs f0, 0x190(r1) +/* 8017A018 00176F78 90 81 01 94 */ stw r4, 0x194(r1) +/* 8017A01C 00176F7C 90 61 01 98 */ stw r3, 0x198(r1) +/* 8017A020 00176F80 90 01 01 9C */ stw r0, 0x19c(r1) +lbl_8017A024: +/* 8017A024 00176F84 C0 21 01 B8 */ lfs f1, 0x1b8(r1) +/* 8017A028 00176F88 C0 01 01 BC */ lfs f0, 0x1bc(r1) +/* 8017A02C 00176F8C EC 41 00 72 */ fmuls f2, f1, f1 +/* 8017A030 00176F90 C0 61 01 C0 */ lfs f3, 0x1c0(r1) +/* 8017A034 00176F94 EC 20 00 32 */ fmuls f1, f0, f0 +/* 8017A038 00176F98 C0 02 A2 74 */ lfs f0, lbl_805ABF94@sda21(r2) +/* 8017A03C 00176F9C EC 63 00 F2 */ fmuls f3, f3, f3 +/* 8017A040 00176FA0 EC 22 08 2A */ fadds f1, f2, f1 +/* 8017A044 00176FA4 EC 23 08 2A */ fadds f1, f3, f1 +/* 8017A048 00176FA8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017A04C 00176FAC 40 81 00 A8 */ ble lbl_8017A0F4 +/* 8017A050 00176FB0 EC 1B D8 28 */ fsubs f0, f27, f27 +/* 8017A054 00176FB4 D2 A1 01 6C */ stfs f21, 0x16c(r1) +/* 8017A058 00176FB8 38 61 00 90 */ addi r3, r1, 0x90 +/* 8017A05C 00176FBC 38 81 01 90 */ addi r4, r1, 0x190 +/* 8017A060 00176FC0 D2 81 01 70 */ stfs f20, 0x170(r1) +/* 8017A064 00176FC4 38 A1 01 6C */ addi r5, r1, 0x16c +/* 8017A068 00176FC8 D0 01 01 74 */ stfs f0, 0x174(r1) +/* 8017A06C 00176FCC 48 19 71 F9 */ bl Transform__11CQuaternionCFRC9CVector3f +/* 8017A070 00176FD0 C0 41 00 98 */ lfs f2, 0x98(r1) +/* 8017A074 00176FD4 38 61 01 60 */ addi r3, r1, 0x160 +/* 8017A078 00176FD8 C0 21 00 90 */ lfs f1, 0x90(r1) +/* 8017A07C 00176FDC C0 01 00 94 */ lfs f0, 0x94(r1) +/* 8017A080 00176FE0 EC 5B 10 2A */ fadds f2, f27, f2 +/* 8017A084 00176FE4 EC 3A 08 2A */ fadds f1, f26, f1 +/* 8017A088 00176FE8 EC 19 00 2A */ fadds f0, f25, f0 +/* 8017A08C 00176FEC EC 42 D8 28 */ fsubs f2, f2, f27 +/* 8017A090 00176FF0 EC 21 E8 28 */ fsubs f1, f1, f29 +/* 8017A094 00176FF4 EC 00 E0 28 */ fsubs f0, f0, f28 +/* 8017A098 00176FF8 D0 41 01 68 */ stfs f2, 0x168(r1) +/* 8017A09C 00176FFC D0 21 01 60 */ stfs f1, 0x160(r1) +/* 8017A0A0 00177000 D0 01 01 64 */ stfs f0, 0x164(r1) +/* 8017A0A4 00177004 48 19 A6 55 */ bl CanBeNormalized__9CVector3fCFv +/* 8017A0A8 00177008 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017A0AC 0017700C 41 82 00 48 */ beq lbl_8017A0F4 +/* 8017A0B0 00177010 C0 02 A2 4C */ lfs f0, lbl_805ABF6C@sda21(r2) +/* 8017A0B4 00177014 C0 A1 01 60 */ lfs f5, 0x160(r1) +/* 8017A0B8 00177018 EC C0 F8 24 */ fdivs f6, f0, f31 +/* 8017A0BC 0017701C C0 81 01 64 */ lfs f4, 0x164(r1) +/* 8017A0C0 00177020 C0 61 01 68 */ lfs f3, 0x168(r1) +/* 8017A0C4 00177024 C0 41 01 AC */ lfs f2, 0x1ac(r1) +/* 8017A0C8 00177028 C0 21 01 B0 */ lfs f1, 0x1b0(r1) +/* 8017A0CC 0017702C C0 01 01 B4 */ lfs f0, 0x1b4(r1) +/* 8017A0D0 00177030 EC A6 01 72 */ fmuls f5, f6, f5 +/* 8017A0D4 00177034 EC 86 01 32 */ fmuls f4, f6, f4 +/* 8017A0D8 00177038 EC 66 00 F2 */ fmuls f3, f6, f3 +/* 8017A0DC 0017703C EC 42 28 2A */ fadds f2, f2, f5 +/* 8017A0E0 00177040 EC 21 20 2A */ fadds f1, f1, f4 +/* 8017A0E4 00177044 EC 00 18 2A */ fadds f0, f0, f3 +/* 8017A0E8 00177048 D0 41 01 AC */ stfs f2, 0x1ac(r1) +/* 8017A0EC 0017704C D0 21 01 B0 */ stfs f1, 0x1b0(r1) +/* 8017A0F0 00177050 D0 01 01 B4 */ stfs f0, 0x1b4(r1) +lbl_8017A0F4: +/* 8017A0F4 00177054 C2 5D 03 C0 */ lfs f18, 0x3c0(r29) +/* 8017A0F8 00177058 38 61 00 84 */ addi r3, r1, 0x84 +/* 8017A0FC 0017705C C2 7D 03 C4 */ lfs f19, 0x3c4(r29) +/* 8017A100 00177060 38 81 01 90 */ addi r4, r1, 0x190 +/* 8017A104 00177064 C2 9D 03 C8 */ lfs f20, 0x3c8(r29) +/* 8017A108 00177068 38 BD 03 C0 */ addi r5, r29, 0x3c0 +/* 8017A10C 0017706C 48 19 71 59 */ bl Transform__11CQuaternionCFRC9CVector3f +/* 8017A110 00177070 C0 01 00 84 */ lfs f0, 0x84(r1) +/* 8017A114 00177074 38 7D 03 C0 */ addi r3, r29, 0x3c0 +/* 8017A118 00177078 D0 1D 03 C0 */ stfs f0, 0x3c0(r29) +/* 8017A11C 0017707C C0 01 00 88 */ lfs f0, 0x88(r1) +/* 8017A120 00177080 D0 1D 03 C4 */ stfs f0, 0x3c4(r29) +/* 8017A124 00177084 C0 01 00 8C */ lfs f0, 0x8c(r1) +/* 8017A128 00177088 D0 1D 03 C8 */ stfs f0, 0x3c8(r29) +/* 8017A12C 0017708C 48 19 A7 CD */ bl Normalize__9CVector3fFv +/* 8017A130 00177090 C0 1D 03 C4 */ lfs f0, 0x3c4(r29) +/* 8017A134 00177094 38 61 02 0C */ addi r3, r1, 0x20c +/* 8017A138 00177098 C0 7D 03 C0 */ lfs f3, 0x3c0(r29) +/* 8017A13C 0017709C 38 9D 03 C0 */ addi r4, r29, 0x3c0 +/* 8017A140 001770A0 FC 20 00 50 */ fneg f1, f0 +/* 8017A144 001770A4 C0 42 A2 30 */ lfs f2, lbl_805ABF50@sda21(r2) +/* 8017A148 001770A8 D0 61 01 58 */ stfs f3, 0x158(r1) +/* 8017A14C 001770AC 38 A1 01 54 */ addi r5, r1, 0x154 +/* 8017A150 001770B0 C0 02 A2 4C */ lfs f0, lbl_805ABF6C@sda21(r2) +/* 8017A154 001770B4 38 C1 00 78 */ addi r6, r1, 0x78 +/* 8017A158 001770B8 D0 21 01 54 */ stfs f1, 0x154(r1) +/* 8017A15C 001770BC 38 E1 00 6C */ addi r7, r1, 0x6c +/* 8017A160 001770C0 D0 41 01 5C */ stfs f2, 0x15c(r1) +/* 8017A164 001770C4 C0 9D 00 60 */ lfs f4, 0x60(r29) +/* 8017A168 001770C8 C0 7D 00 50 */ lfs f3, 0x50(r29) +/* 8017A16C 001770CC C0 3D 00 40 */ lfs f1, 0x40(r29) +/* 8017A170 001770D0 D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 8017A174 001770D4 D0 61 00 70 */ stfs f3, 0x70(r1) +/* 8017A178 001770D8 D0 81 00 74 */ stfs f4, 0x74(r1) +/* 8017A17C 001770DC D0 41 00 78 */ stfs f2, 0x78(r1) +/* 8017A180 001770E0 D0 41 00 7C */ stfs f2, 0x7c(r1) +/* 8017A184 001770E4 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 8017A188 001770E8 48 19 8C D5 */ bl __ct__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3fRC9CVector3f_0 +/* 8017A18C 001770EC 38 7D 00 34 */ addi r3, r29, 0x34 +/* 8017A190 001770F0 38 81 02 0C */ addi r4, r1, 0x20c +/* 8017A194 001770F4 48 19 89 AD */ bl __as__12CTransform4fFRC12CTransform4f +/* 8017A198 001770F8 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 8017A19C 001770FC 38 A0 00 01 */ li r5, 1 +/* 8017A1A0 00177100 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 8017A1A4 00177104 7F A3 EB 78 */ mr r3, r29 +/* 8017A1A8 00177108 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 8017A1AC 0017710C 38 81 01 AC */ addi r4, r1, 0x1ac +/* 8017A1B0 00177110 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 8017A1B4 00177114 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 8017A1B8 00177118 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 8017A1BC 0017711C 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 8017A1C0 00177120 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 8017A1C4 00177124 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 8017A1C8 00177128 4B FA 0A D9 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 8017A1CC 0017712C C0 5D 00 40 */ lfs f2, 0x40(r29) +/* 8017A1D0 00177130 7F A3 EB 78 */ mr r3, r29 +/* 8017A1D4 00177134 C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 8017A1D8 00177138 7F C5 F3 78 */ mr r5, r30 +/* 8017A1DC 0017713C C0 1D 00 60 */ lfs f0, 0x60(r29) +/* 8017A1E0 00177140 38 81 00 60 */ addi r4, r1, 0x60 +/* 8017A1E4 00177144 D0 41 00 54 */ stfs f2, 0x54(r1) +/* 8017A1E8 00177148 D0 21 00 58 */ stfs f1, 0x58(r1) +/* 8017A1EC 0017714C 80 E1 00 54 */ lwz r7, 0x54(r1) +/* 8017A1F0 00177150 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 8017A1F4 00177154 80 C1 00 58 */ lwz r6, 0x58(r1) +/* 8017A1F8 00177158 80 01 00 5C */ lwz r0, 0x5c(r1) +/* 8017A1FC 0017715C 90 E1 00 60 */ stw r7, 0x60(r1) +/* 8017A200 00177160 90 C1 00 64 */ stw r6, 0x64(r1) +/* 8017A204 00177164 90 01 00 68 */ stw r0, 0x68(r1) +/* 8017A208 00177168 48 00 01 71 */ bl ValidateFPPosition__7CPlayerF9CVector3fR13CStateManager +/* 8017A20C 0017716C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017A210 00177170 40 82 00 9C */ bne lbl_8017A2AC +/* 8017A214 00177174 D2 5D 03 C0 */ stfs f18, 0x3c0(r29) +/* 8017A218 00177178 38 7D 00 34 */ addi r3, r29, 0x34 +/* 8017A21C 0017717C 38 81 02 A4 */ addi r4, r1, 0x2a4 +/* 8017A220 00177180 D2 7D 03 C4 */ stfs f19, 0x3c4(r29) +/* 8017A224 00177184 D2 9D 03 C8 */ stfs f20, 0x3c8(r29) +/* 8017A228 00177188 48 19 89 19 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8017A22C 0017718C 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 8017A230 00177190 38 A0 00 01 */ li r5, 1 +/* 8017A234 00177194 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 8017A238 00177198 7F A3 EB 78 */ mr r3, r29 +/* 8017A23C 0017719C 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 8017A240 001771A0 38 81 01 A0 */ addi r4, r1, 0x1a0 +/* 8017A244 001771A4 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 8017A248 001771A8 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 8017A24C 001771AC 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 8017A250 001771B0 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 8017A254 001771B4 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 8017A258 001771B8 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 8017A25C 001771BC 4B FA 0A 45 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 8017A260 001771C0 48 00 00 4C */ b lbl_8017A2AC +lbl_8017A264: +/* 8017A264 001771C4 7F A3 EB 78 */ mr r3, r29 +/* 8017A268 001771C8 7F C5 F3 78 */ mr r5, r30 +/* 8017A26C 001771CC 38 80 00 06 */ li r4, 6 +/* 8017A270 001771D0 48 00 0E 55 */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager +/* 8017A274 001771D4 48 00 00 38 */ b lbl_8017A2AC +lbl_8017A278: +/* 8017A278 001771D8 C2 5D 00 E8 */ lfs f18, 0xe8(r29) +/* 8017A27C 001771DC 7F A3 EB 78 */ mr r3, r29 +/* 8017A280 001771E0 48 10 E0 DD */ bl GetGravity__7CPlayerCFv +/* 8017A284 001771E4 EC 21 04 B2 */ fmuls f1, f1, f18 +/* 8017A288 001771E8 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017A28C 001771EC D0 01 00 48 */ stfs f0, 0x48(r1) +/* 8017A290 001771F0 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 8017A294 001771F4 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 8017A298 001771F8 4B EA 12 9D */ bl Identity__10CAxisAngleFv +/* 8017A29C 001771FC 7C 65 1B 78 */ mr r5, r3 +/* 8017A2A0 00177200 7F A3 EB 78 */ mr r3, r29 +/* 8017A2A4 00177204 38 81 00 48 */ addi r4, r1, 0x48 +/* 8017A2A8 00177208 4B FA 1E 9D */ bl ApplyForceOR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +lbl_8017A2AC: +/* 8017A2AC 0017720C 7F A4 EB 78 */ mr r4, r29 +/* 8017A2B0 00177210 38 61 00 24 */ addi r3, r1, 0x24 +/* 8017A2B4 00177214 4B FA 08 F1 */ bl GetAngularVelocityOR__13CPhysicsActorCFv +/* 8017A2B8 00177218 38 61 00 24 */ addi r3, r1, 0x24 +/* 8017A2BC 0017721C 4B EA 12 75 */ bl GetVector__10CAxisAngleCFv +/* 8017A2C0 00177220 C0 43 00 08 */ lfs f2, 8(r3) +/* 8017A2C4 00177224 38 61 00 3C */ addi r3, r1, 0x3c +/* 8017A2C8 00177228 C0 02 A2 78 */ lfs f0, lbl_805ABF98@sda21(r2) +/* 8017A2CC 0017722C 38 81 00 30 */ addi r4, r1, 0x30 +/* 8017A2D0 00177230 C0 22 A2 30 */ lfs f1, lbl_805ABF50@sda21(r2) +/* 8017A2D4 00177234 EC 00 00 B2 */ fmuls f0, f0, f2 +/* 8017A2D8 00177238 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 8017A2DC 0017723C D0 21 00 34 */ stfs f1, 0x34(r1) +/* 8017A2E0 00177240 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 8017A2E4 00177244 4B EA 12 A1 */ bl __ct__10CAxisAngleFRC9CVector3f +/* 8017A2E8 00177248 7F A3 EB 78 */ mr r3, r29 +/* 8017A2EC 0017724C 38 81 00 3C */ addi r4, r1, 0x3c +/* 8017A2F0 00177250 4B FA 07 ED */ bl SetAngularVelocityOR__13CPhysicsActorFRC10CAxisAngle +/* 8017A2F4 00177254 E3 E1 03 C8 */ psq_l f31, 968(r1), 0, qr0 +/* 8017A2F8 00177258 CB E1 03 C0 */ lfd f31, 0x3c0(r1) +/* 8017A2FC 0017725C E3 C1 03 B8 */ psq_l f30, 952(r1), 0, qr0 +/* 8017A300 00177260 CB C1 03 B0 */ lfd f30, 0x3b0(r1) +/* 8017A304 00177264 E3 A1 03 A8 */ psq_l f29, 936(r1), 0, qr0 +/* 8017A308 00177268 CB A1 03 A0 */ lfd f29, 0x3a0(r1) +/* 8017A30C 0017726C E3 81 03 98 */ psq_l f28, 920(r1), 0, qr0 +/* 8017A310 00177270 CB 81 03 90 */ lfd f28, 0x390(r1) +/* 8017A314 00177274 E3 61 03 88 */ psq_l f27, 904(r1), 0, qr0 +/* 8017A318 00177278 CB 61 03 80 */ lfd f27, 0x380(r1) +/* 8017A31C 0017727C E3 41 03 78 */ psq_l f26, 888(r1), 0, qr0 +/* 8017A320 00177280 CB 41 03 70 */ lfd f26, 0x370(r1) +/* 8017A324 00177284 E3 21 03 68 */ psq_l f25, 872(r1), 0, qr0 +/* 8017A328 00177288 CB 21 03 60 */ lfd f25, 0x360(r1) +/* 8017A32C 0017728C E3 01 03 58 */ psq_l f24, 856(r1), 0, qr0 +/* 8017A330 00177290 CB 01 03 50 */ lfd f24, 0x350(r1) +/* 8017A334 00177294 E2 E1 03 48 */ psq_l f23, 840(r1), 0, qr0 +/* 8017A338 00177298 CA E1 03 40 */ lfd f23, 0x340(r1) +/* 8017A33C 0017729C E2 C1 03 38 */ psq_l f22, 824(r1), 0, qr0 +/* 8017A340 001772A0 CA C1 03 30 */ lfd f22, 0x330(r1) +/* 8017A344 001772A4 E2 A1 03 28 */ psq_l f21, 808(r1), 0, qr0 +/* 8017A348 001772A8 CA A1 03 20 */ lfd f21, 0x320(r1) +/* 8017A34C 001772AC E2 81 03 18 */ psq_l f20, 792(r1), 0, qr0 +/* 8017A350 001772B0 CA 81 03 10 */ lfd f20, 0x310(r1) +/* 8017A354 001772B4 E2 61 03 08 */ psq_l f19, 776(r1), 0, qr0 +/* 8017A358 001772B8 CA 61 03 00 */ lfd f19, 0x300(r1) +/* 8017A35C 001772BC E2 41 02 F8 */ psq_l f18, 760(r1), 0, qr0 +/* 8017A360 001772C0 CA 41 02 F0 */ lfd f18, 0x2f0(r1) +/* 8017A364 001772C4 BB 61 02 DC */ lmw r27, 0x2dc(r1) +/* 8017A368 001772C8 80 01 03 D4 */ lwz r0, 0x3d4(r1) +/* 8017A36C 001772CC 7C 08 03 A6 */ mtlr r0 +/* 8017A370 001772D0 38 21 03 D0 */ addi r1, r1, 0x3d0 +/* 8017A374 001772D4 4E 80 00 20 */ blr + +.global ValidateFPPosition__7CPlayerF9CVector3fR13CStateManager +ValidateFPPosition__7CPlayerF9CVector3fR13CStateManager: +/* 8017A378 001772D8 94 21 F7 00 */ stwu r1, -0x900(r1) +/* 8017A37C 001772DC 7C 08 02 A6 */ mflr r0 +/* 8017A380 001772E0 90 01 09 04 */ stw r0, 0x904(r1) +/* 8017A384 001772E4 38 00 00 00 */ li r0, 0 +/* 8017A388 001772E8 93 E1 08 FC */ stw r31, 0x8fc(r1) +/* 8017A38C 001772EC 7C BF 2B 78 */ mr r31, r5 +/* 8017A390 001772F0 93 C1 08 F8 */ stw r30, 0x8f8(r1) +/* 8017A394 001772F4 7C 9E 23 78 */ mr r30, r4 +/* 8017A398 001772F8 38 80 00 01 */ li r4, 1 +/* 8017A39C 001772FC 93 A1 08 F4 */ stw r29, 0x8f4(r1) +/* 8017A3A0 00177300 7C 7D 1B 78 */ mr r29, r3 +/* 8017A3A4 00177304 38 60 00 00 */ li r3, 0 +/* 8017A3A8 00177308 80 CD 8E 7C */ lwz r6, lbl_805A7A3C@sda21(r13) +/* 8017A3AC 0017730C 90 01 00 E0 */ stw r0, 0xe0(r1) +/* 8017A3B0 00177310 7C C5 33 78 */ mr r5, r6 +/* 8017A3B4 00177314 48 20 FB 41 */ bl __shl2i +/* 8017A3B8 00177318 38 C0 00 01 */ li r6, 1 +/* 8017A3BC 0017731C 38 00 00 00 */ li r0, 0 +/* 8017A3C0 00177320 90 81 00 A4 */ stw r4, 0xa4(r1) +/* 8017A3C4 00177324 38 81 00 4C */ addi r4, r1, 0x4c +/* 8017A3C8 00177328 C0 C2 A2 4C */ lfs f6, lbl_805ABF6C@sda21(r2) +/* 8017A3CC 0017732C 38 A1 00 34 */ addi r5, r1, 0x34 +/* 8017A3D0 00177330 90 61 00 A0 */ stw r3, 0xa0(r1) +/* 8017A3D4 00177334 38 61 00 70 */ addi r3, r1, 0x70 +/* 8017A3D8 00177338 C0 9E 00 04 */ lfs f4, 4(r30) +/* 8017A3DC 0017733C 90 01 00 AC */ stw r0, 0xac(r1) +/* 8017A3E0 00177340 C0 7E 00 08 */ lfs f3, 8(r30) +/* 8017A3E4 00177344 90 01 00 A8 */ stw r0, 0xa8(r1) +/* 8017A3E8 00177348 C0 5E 00 00 */ lfs f2, 0(r30) +/* 8017A3EC 0017734C 90 C1 00 B0 */ stw r6, 0xb0(r1) +/* 8017A3F0 00177350 C0 1D 02 E8 */ lfs f0, 0x2e8(r29) +/* 8017A3F4 00177354 C0 3D 02 EC */ lfs f1, 0x2ec(r29) +/* 8017A3F8 00177358 EC E0 30 2A */ fadds f7, f0, f6 +/* 8017A3FC 0017735C C0 1D 02 E4 */ lfs f0, 0x2e4(r29) +/* 8017A400 00177360 ED 21 30 2A */ fadds f9, f1, f6 +/* 8017A404 00177364 90 C1 00 98 */ stw r6, 0x98(r1) +/* 8017A408 00177368 EC A0 30 2A */ fadds f5, f0, f6 +/* 8017A40C 0017736C ED 07 20 2A */ fadds f8, f7, f4 +/* 8017A410 00177370 EC 29 18 2A */ fadds f1, f9, f3 +/* 8017A414 00177374 D0 E1 00 2C */ stfs f7, 0x2c(r1) +/* 8017A418 00177378 EC 05 10 2A */ fadds f0, f5, f2 +/* 8017A41C 0017737C D1 01 00 38 */ stfs f8, 0x38(r1) +/* 8017A420 00177380 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 8017A424 00177384 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 8017A428 00177388 C0 1D 02 DC */ lfs f0, 0x2dc(r29) +/* 8017A42C 0017738C C0 3D 02 E0 */ lfs f1, 0x2e0(r29) +/* 8017A430 00177390 ED 00 30 28 */ fsubs f8, f0, f6 +/* 8017A434 00177394 C0 1D 02 D8 */ lfs f0, 0x2d8(r29) +/* 8017A438 00177398 EC E1 30 28 */ fsubs f7, f1, f6 +/* 8017A43C 0017739C D0 A1 00 28 */ stfs f5, 0x28(r1) +/* 8017A440 001773A0 EC 20 30 28 */ fsubs f1, f0, f6 +/* 8017A444 001773A4 EC 88 20 2A */ fadds f4, f8, f4 +/* 8017A448 001773A8 EC 67 18 2A */ fadds f3, f7, f3 +/* 8017A44C 001773AC D1 21 00 30 */ stfs f9, 0x30(r1) +/* 8017A450 001773B0 EC 01 10 2A */ fadds f0, f1, f2 +/* 8017A454 001773B4 D0 21 00 40 */ stfs f1, 0x40(r1) +/* 8017A458 001773B8 D1 01 00 44 */ stfs f8, 0x44(r1) +/* 8017A45C 001773BC D0 E1 00 48 */ stfs f7, 0x48(r1) +/* 8017A460 001773C0 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 8017A464 001773C4 D0 81 00 50 */ stfs f4, 0x50(r1) +/* 8017A468 001773C8 D0 61 00 54 */ stfs f3, 0x54(r1) +/* 8017A46C 001773CC 48 1B E0 9D */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8017A470 001773D0 7C 66 1B 78 */ mr r6, r3 +/* 8017A474 001773D4 7F E3 FB 78 */ mr r3, r31 +/* 8017A478 001773D8 7F A5 EB 78 */ mr r5, r29 +/* 8017A47C 001773DC 38 81 00 E0 */ addi r4, r1, 0xe0 +/* 8017A480 001773E0 4B ED 22 7D */ bl "BuildColliderList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CActorRC6CAABox" +/* 8017A484 001773E4 7F A3 EB 78 */ mr r3, r29 +/* 8017A488 001773E8 4B FA 05 39 */ bl GetBaseBoundingBox__13CPhysicsActorCFv +/* 8017A48C 001773EC 38 00 00 00 */ li r0, 0 +/* 8017A490 001773F0 C0 BE 00 04 */ lfs f5, 4(r30) +/* 8017A494 001773F4 90 01 00 0C */ stw r0, 0xc(r1) +/* 8017A498 001773F8 38 81 00 1C */ addi r4, r1, 0x1c +/* 8017A49C 001773FC C0 9E 00 08 */ lfs f4, 8(r30) +/* 8017A4A0 00177400 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8017A4A4 00177404 90 01 00 08 */ stw r0, 8(r1) +/* 8017A4A8 00177408 C0 7E 00 00 */ lfs f3, 0(r30) +/* 8017A4AC 0017740C C0 43 00 10 */ lfs f2, 0x10(r3) +/* 8017A4B0 00177410 C0 23 00 14 */ lfs f1, 0x14(r3) +/* 8017A4B4 00177414 C0 03 00 0C */ lfs f0, 0xc(r3) +/* 8017A4B8 00177418 EC 42 28 2A */ fadds f2, f2, f5 +/* 8017A4BC 0017741C EC 21 20 2A */ fadds f1, f1, f4 +/* 8017A4C0 00177420 EC 00 18 2A */ fadds f0, f0, f3 +/* 8017A4C4 00177424 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 8017A4C8 00177428 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8017A4CC 0017742C D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8017A4D0 00177430 C0 43 00 04 */ lfs f2, 4(r3) +/* 8017A4D4 00177434 C0 23 00 08 */ lfs f1, 8(r3) +/* 8017A4D8 00177438 C0 03 00 00 */ lfs f0, 0(r3) +/* 8017A4DC 0017743C EC 42 28 2A */ fadds f2, f2, f5 +/* 8017A4E0 00177440 EC 21 20 2A */ fadds f1, f1, f4 +/* 8017A4E4 00177444 38 61 00 58 */ addi r3, r1, 0x58 +/* 8017A4E8 00177448 EC 00 18 2A */ fadds f0, f0, f3 +/* 8017A4EC 0017744C D0 41 00 20 */ stfs f2, 0x20(r1) +/* 8017A4F0 00177450 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8017A4F4 00177454 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 8017A4F8 00177458 48 1B E0 11 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8017A4FC 0017745C 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 8017A500 00177460 38 81 00 08 */ addi r4, r1, 8 +/* 8017A504 00177464 48 15 53 B1 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList +/* 8017A508 00177468 C0 A1 00 58 */ lfs f5, 0x58(r1) +/* 8017A50C 0017746C 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha +/* 8017A510 00177470 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l +/* 8017A514 00177474 C0 81 00 5C */ lfs f4, 0x5c(r1) +/* 8017A518 00177478 C0 61 00 60 */ lfs f3, 0x60(r1) +/* 8017A51C 0017747C 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 8017A520 00177480 C0 41 00 64 */ lfs f2, 0x64(r1) +/* 8017A524 00177484 38 A3 66 70 */ addi r5, r3, skIdentity4f@l +/* 8017A528 00177488 C0 21 00 68 */ lfs f1, 0x68(r1) +/* 8017A52C 0017748C 7F E3 FB 78 */ mr r3, r31 +/* 8017A530 00177490 C0 01 00 6C */ lfs f0, 0x6c(r1) +/* 8017A534 00177494 38 81 00 B8 */ addi r4, r1, 0xb8 +/* 8017A538 00177498 90 01 00 B8 */ stw r0, 0xb8(r1) +/* 8017A53C 0017749C 38 C1 00 A0 */ addi r6, r1, 0xa0 +/* 8017A540 001774A0 38 E1 00 E0 */ addi r7, r1, 0xe0 +/* 8017A544 001774A4 D0 A1 00 C8 */ stfs f5, 0xc8(r1) +/* 8017A548 001774A8 D0 81 00 CC */ stfs f4, 0xcc(r1) +/* 8017A54C 001774AC D0 61 00 D0 */ stfs f3, 0xd0(r1) +/* 8017A550 001774B0 D0 41 00 D4 */ stfs f2, 0xd4(r1) +/* 8017A554 001774B4 D0 21 00 D8 */ stfs f1, 0xd8(r1) +/* 8017A558 001774B8 D0 01 00 DC */ stfs f0, 0xdc(r1) +/* 8017A55C 001774BC 48 00 A0 B9 */ bl "DetectCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 8017A560 001774C0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017A564 001774C4 40 82 00 78 */ bne lbl_8017A5DC +/* 8017A568 001774C8 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha +/* 8017A56C 001774CC 80 A1 00 E0 */ lwz r5, 0xe0(r1) +/* 8017A570 001774D0 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l +/* 8017A574 001774D4 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 8017A578 001774D8 90 01 00 B8 */ stw r0, 0xb8(r1) +/* 8017A57C 001774DC 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l +/* 8017A580 001774E0 2C 05 00 00 */ cmpwi r5, 0 +/* 8017A584 001774E4 38 60 00 00 */ li r3, 0 +/* 8017A588 001774E8 90 01 00 B8 */ stw r0, 0xb8(r1) +/* 8017A58C 001774EC 40 81 00 40 */ ble lbl_8017A5CC +/* 8017A590 001774F0 2C 05 00 08 */ cmpwi r5, 8 +/* 8017A594 001774F4 38 85 FF F8 */ addi r4, r5, -8 +/* 8017A598 001774F8 40 81 00 20 */ ble lbl_8017A5B8 +/* 8017A59C 001774FC 38 04 00 07 */ addi r0, r4, 7 +/* 8017A5A0 00177500 54 00 E8 FE */ srwi r0, r0, 3 +/* 8017A5A4 00177504 7C 09 03 A6 */ mtctr r0 +/* 8017A5A8 00177508 2C 04 00 00 */ cmpwi r4, 0 +/* 8017A5AC 0017750C 40 81 00 0C */ ble lbl_8017A5B8 +lbl_8017A5B0: +/* 8017A5B0 00177510 38 63 00 08 */ addi r3, r3, 8 +/* 8017A5B4 00177514 42 00 FF FC */ bdnz lbl_8017A5B0 +lbl_8017A5B8: +/* 8017A5B8 00177518 7C 03 28 50 */ subf r0, r3, r5 +/* 8017A5BC 0017751C 7C 09 03 A6 */ mtctr r0 +/* 8017A5C0 00177520 7C 03 28 00 */ cmpw r3, r5 +/* 8017A5C4 00177524 40 80 00 08 */ bge lbl_8017A5CC +lbl_8017A5C8: +/* 8017A5C8 00177528 42 00 00 00 */ bdnz lbl_8017A5C8 +lbl_8017A5CC: +/* 8017A5CC 0017752C 38 00 00 00 */ li r0, 0 +/* 8017A5D0 00177530 38 60 00 01 */ li r3, 1 +/* 8017A5D4 00177534 90 01 00 E0 */ stw r0, 0xe0(r1) +/* 8017A5D8 00177538 48 00 00 74 */ b lbl_8017A64C +lbl_8017A5DC: +/* 8017A5DC 0017753C 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha +/* 8017A5E0 00177540 80 A1 00 E0 */ lwz r5, 0xe0(r1) +/* 8017A5E4 00177544 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l +/* 8017A5E8 00177548 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 8017A5EC 0017754C 90 01 00 B8 */ stw r0, 0xb8(r1) +/* 8017A5F0 00177550 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l +/* 8017A5F4 00177554 2C 05 00 00 */ cmpwi r5, 0 +/* 8017A5F8 00177558 38 60 00 00 */ li r3, 0 +/* 8017A5FC 0017755C 90 01 00 B8 */ stw r0, 0xb8(r1) +/* 8017A600 00177560 40 81 00 40 */ ble lbl_8017A640 +/* 8017A604 00177564 2C 05 00 08 */ cmpwi r5, 8 +/* 8017A608 00177568 38 85 FF F8 */ addi r4, r5, -8 +/* 8017A60C 0017756C 40 81 00 20 */ ble lbl_8017A62C +/* 8017A610 00177570 38 04 00 07 */ addi r0, r4, 7 +/* 8017A614 00177574 54 00 E8 FE */ srwi r0, r0, 3 +/* 8017A618 00177578 7C 09 03 A6 */ mtctr r0 +/* 8017A61C 0017757C 2C 04 00 00 */ cmpwi r4, 0 +/* 8017A620 00177580 40 81 00 0C */ ble lbl_8017A62C +lbl_8017A624: +/* 8017A624 00177584 38 63 00 08 */ addi r3, r3, 8 +/* 8017A628 00177588 42 00 FF FC */ bdnz lbl_8017A624 +lbl_8017A62C: +/* 8017A62C 0017758C 7C 03 28 50 */ subf r0, r3, r5 +/* 8017A630 00177590 7C 09 03 A6 */ mtctr r0 +/* 8017A634 00177594 7C 03 28 00 */ cmpw r3, r5 +/* 8017A638 00177598 40 80 00 08 */ bge lbl_8017A640 +lbl_8017A63C: +/* 8017A63C 0017759C 42 00 00 00 */ bdnz lbl_8017A63C +lbl_8017A640: +/* 8017A640 001775A0 38 00 00 00 */ li r0, 0 +/* 8017A644 001775A4 38 60 00 00 */ li r3, 0 +/* 8017A648 001775A8 90 01 00 E0 */ stw r0, 0xe0(r1) +lbl_8017A64C: +/* 8017A64C 001775AC 80 01 09 04 */ lwz r0, 0x904(r1) +/* 8017A650 001775B0 83 E1 08 FC */ lwz r31, 0x8fc(r1) +/* 8017A654 001775B4 83 C1 08 F8 */ lwz r30, 0x8f8(r1) +/* 8017A658 001775B8 83 A1 08 F4 */ lwz r29, 0x8f4(r1) +/* 8017A65C 001775BC 7C 08 03 A6 */ mtlr r0 +/* 8017A660 001775C0 38 21 09 00 */ addi r1, r1, 0x900 +/* 8017A664 001775C4 4E 80 00 20 */ blr + +.global UpdateGrappleState__7CPlayerFRC11CFinalInputR13CStateManager +UpdateGrappleState__7CPlayerFRC11CFinalInputR13CStateManager: +/* 8017A668 001775C8 94 21 FE E0 */ stwu r1, -0x120(r1) +/* 8017A66C 001775CC 7C 08 02 A6 */ mflr r0 +/* 8017A670 001775D0 90 01 01 24 */ stw r0, 0x124(r1) +/* 8017A674 001775D4 DB E1 01 10 */ stfd f31, 0x110(r1) +/* 8017A678 001775D8 F3 E1 01 18 */ psq_st f31, 280(r1), 0, qr0 +/* 8017A67C 001775DC 93 E1 01 0C */ stw r31, 0x10c(r1) +/* 8017A680 001775E0 93 C1 01 08 */ stw r30, 0x108(r1) +/* 8017A684 001775E4 93 A1 01 04 */ stw r29, 0x104(r1) +/* 8017A688 001775E8 93 81 01 00 */ stw r28, 0x100(r1) +/* 8017A68C 001775EC 7C BE 2B 78 */ mr r30, r5 +/* 8017A690 001775F0 7C 9D 23 78 */ mr r29, r4 +/* 8017A694 001775F4 80 A5 08 B8 */ lwz r5, 0x8b8(r5) +/* 8017A698 001775F8 7C 7C 1B 78 */ mr r28, r3 +/* 8017A69C 001775FC 38 80 00 0C */ li r4, 0xc +/* 8017A6A0 00177600 80 65 00 00 */ lwz r3, 0(r5) +/* 8017A6A4 00177604 4B F1 74 1D */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 8017A6A8 00177608 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017A6AC 0017760C 41 82 07 18 */ beq lbl_8017ADC4 +/* 8017A6B0 00177610 80 1C 02 F8 */ lwz r0, 0x2f8(r28) +/* 8017A6B4 00177614 2C 00 00 01 */ cmpwi r0, 1 +/* 8017A6B8 00177618 41 82 07 0C */ beq lbl_8017ADC4 +/* 8017A6BC 0017761C 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 8017A6C0 00177620 80 63 00 00 */ lwz r3, 0(r3) +/* 8017A6C4 00177624 80 03 00 14 */ lwz r0, 0x14(r3) +/* 8017A6C8 00177628 2C 00 00 02 */ cmpwi r0, 2 +/* 8017A6CC 0017762C 41 82 06 F8 */ beq lbl_8017ADC4 +/* 8017A6D0 00177630 80 03 00 18 */ lwz r0, 0x18(r3) +/* 8017A6D4 00177634 2C 00 00 02 */ cmpwi r0, 2 +/* 8017A6D8 00177638 40 82 00 08 */ bne lbl_8017A6E0 +/* 8017A6DC 0017763C 48 00 06 E8 */ b lbl_8017ADC4 +lbl_8017A6E0: +/* 8017A6E0 00177640 A0 BC 03 10 */ lhz r5, 0x310(r28) +/* 8017A6E4 00177644 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017A6E8 00177648 7C 05 00 40 */ cmplw r5, r0 +/* 8017A6EC 0017764C 40 82 00 20 */ bne lbl_8017A70C +/* 8017A6F0 00177650 38 00 00 00 */ li r0, 0 +/* 8017A6F4 00177654 7F 83 E3 78 */ mr r3, r28 +/* 8017A6F8 00177658 90 1C 03 B8 */ stw r0, 0x3b8(r28) +/* 8017A6FC 0017765C 7F C5 F3 78 */ mr r5, r30 +/* 8017A700 00177660 38 80 00 25 */ li r4, 0x25 +/* 8017A704 00177664 4B ED 9C 4D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 8017A708 00177668 48 00 06 BC */ b lbl_8017ADC4 +lbl_8017A70C: +/* 8017A70C 0017766C B0 A1 00 14 */ sth r5, 0x14(r1) +/* 8017A710 00177670 7F C3 F3 78 */ mr r3, r30 +/* 8017A714 00177674 38 81 00 18 */ addi r4, r1, 0x18 +/* 8017A718 00177678 B0 A1 00 18 */ sth r5, 0x18(r1) +/* 8017A71C 0017767C 4B ED 1E 89 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017A720 00177680 7C 64 1B 78 */ mr r4, r3 +/* 8017A724 00177684 38 61 00 24 */ addi r3, r1, 0x24 +/* 8017A728 00177688 4B F2 F3 A1 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" +/* 8017A72C 0017768C 83 E3 00 04 */ lwz r31, 4(r3) +/* 8017A730 00177690 28 1F 00 00 */ cmplwi r31, 0 +/* 8017A734 00177694 41 82 03 D0 */ beq lbl_8017AB04 +/* 8017A738 00177698 7F 84 E3 78 */ mr r4, r28 +/* 8017A73C 0017769C 38 61 00 50 */ addi r3, r1, 0x50 +/* 8017A740 001776A0 48 10 A6 3D */ bl GetEyePosition__7CPlayerCFv +/* 8017A744 001776A4 C0 C1 00 50 */ lfs f6, 0x50(r1) +/* 8017A748 001776A8 38 61 00 80 */ addi r3, r1, 0x80 +/* 8017A74C 001776AC C0 A1 00 54 */ lfs f5, 0x54(r1) +/* 8017A750 001776B0 C0 81 00 58 */ lfs f4, 0x58(r1) +/* 8017A754 001776B4 D0 C1 00 8C */ stfs f6, 0x8c(r1) +/* 8017A758 001776B8 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017A75C 001776BC D0 A1 00 90 */ stfs f5, 0x90(r1) +/* 8017A760 001776C0 D0 81 00 94 */ stfs f4, 0x94(r1) +/* 8017A764 001776C4 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8017A768 001776C8 C0 7F 00 50 */ lfs f3, 0x50(r31) +/* 8017A76C 001776CC C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 8017A770 001776D0 EC 42 20 28 */ fsubs f2, f2, f4 +/* 8017A774 001776D4 EC 63 28 28 */ fsubs f3, f3, f5 +/* 8017A778 001776D8 EC 21 30 28 */ fsubs f1, f1, f6 +/* 8017A77C 001776DC D0 41 00 7C */ stfs f2, 0x7c(r1) +/* 8017A780 001776E0 D0 21 00 80 */ stfs f1, 0x80(r1) +/* 8017A784 001776E4 D0 61 00 84 */ stfs f3, 0x84(r1) +/* 8017A788 001776E8 D0 41 00 88 */ stfs f2, 0x88(r1) +/* 8017A78C 001776EC D0 21 00 74 */ stfs f1, 0x74(r1) +/* 8017A790 001776F0 D0 61 00 78 */ stfs f3, 0x78(r1) +/* 8017A794 001776F4 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 8017A798 001776F8 48 19 9F 61 */ bl CanBeNormalized__9CVector3fCFv +/* 8017A79C 001776FC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017A7A0 00177700 41 82 03 64 */ beq lbl_8017AB04 +/* 8017A7A4 00177704 38 61 00 74 */ addi r3, r1, 0x74 +/* 8017A7A8 00177708 48 19 9F 51 */ bl CanBeNormalized__9CVector3fCFv +/* 8017A7AC 0017770C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017A7B0 00177710 41 82 03 54 */ beq lbl_8017AB04 +/* 8017A7B4 00177714 38 61 00 74 */ addi r3, r1, 0x74 +/* 8017A7B8 00177718 48 19 A1 01 */ bl Magnitude__9CVector3fCFv +/* 8017A7BC 0017771C C0 02 A2 7C */ lfs f0, lbl_805ABF9C@sda21(r2) +/* 8017A7C0 00177720 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017A7C4 00177724 40 81 03 40 */ ble lbl_8017AB04 +/* 8017A7C8 00177728 80 1C 03 04 */ lwz r0, 0x304(r28) +/* 8017A7CC 0017772C 2C 00 00 05 */ cmpwi r0, 5 +/* 8017A7D0 00177730 41 82 00 14 */ beq lbl_8017A7E4 +/* 8017A7D4 00177734 40 80 03 30 */ bge lbl_8017AB04 +/* 8017A7D8 00177738 2C 00 00 01 */ cmpwi r0, 1 +/* 8017A7DC 0017773C 41 82 01 60 */ beq lbl_8017A93C +/* 8017A7E0 00177740 48 00 03 24 */ b lbl_8017AB04 +lbl_8017A7E4: +/* 8017A7E4 00177744 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017A7E8 00177748 80 03 02 D0 */ lwz r0, 0x2d0(r3) +/* 8017A7EC 0017774C 2C 00 00 02 */ cmpwi r0, 2 +/* 8017A7F0 00177750 41 82 03 14 */ beq lbl_8017AB04 +/* 8017A7F4 00177754 40 80 03 10 */ bge lbl_8017AB04 +/* 8017A7F8 00177758 2C 00 00 00 */ cmpwi r0, 0 +/* 8017A7FC 0017775C 40 80 00 08 */ bge lbl_8017A804 +/* 8017A800 00177760 48 00 03 04 */ b lbl_8017AB04 +lbl_8017A804: +/* 8017A804 00177764 7F A4 EB 78 */ mr r4, r29 +/* 8017A808 00177768 38 60 00 0B */ li r3, 0xb +/* 8017A80C 0017776C 4B E9 1F C5 */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8017A810 00177770 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017A814 00177774 41 82 02 F0 */ beq lbl_8017AB04 +/* 8017A818 00177778 A0 1C 03 3C */ lhz r0, 0x33c(r28) +/* 8017A81C 0017777C 7F C3 F3 78 */ mr r3, r30 +/* 8017A820 00177780 38 81 00 10 */ addi r4, r1, 0x10 +/* 8017A824 00177784 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8017A828 00177788 4B ED 1D 7D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017A82C 0017778C 7C 64 1B 78 */ mr r4, r3 +/* 8017A830 00177790 38 61 00 1C */ addi r3, r1, 0x1c +/* 8017A834 00177794 4B F2 F2 95 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" +/* 8017A838 00177798 80 83 00 04 */ lwz r4, 4(r3) +/* 8017A83C 0017779C 28 04 00 00 */ cmplwi r4, 0 +/* 8017A840 001777A0 41 82 00 B8 */ beq lbl_8017A8F8 +/* 8017A844 001777A4 C0 24 00 60 */ lfs f1, 0x60(r4) +/* 8017A848 001777A8 38 61 00 80 */ addi r3, r1, 0x80 +/* 8017A84C 001777AC C0 01 00 94 */ lfs f0, 0x94(r1) +/* 8017A850 001777B0 C0 64 00 50 */ lfs f3, 0x50(r4) +/* 8017A854 001777B4 C0 41 00 90 */ lfs f2, 0x90(r1) +/* 8017A858 001777B8 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8017A85C 001777BC C0 24 00 40 */ lfs f1, 0x40(r4) +/* 8017A860 001777C0 C0 01 00 8C */ lfs f0, 0x8c(r1) +/* 8017A864 001777C4 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8017A868 001777C8 D0 81 00 88 */ stfs f4, 0x88(r1) +/* 8017A86C 001777CC EC 21 00 28 */ fsubs f1, f1, f0 +/* 8017A870 001777D0 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017A874 001777D4 D0 41 00 84 */ stfs f2, 0x84(r1) +/* 8017A878 001777D8 D0 21 00 80 */ stfs f1, 0x80(r1) +/* 8017A87C 001777DC D0 01 00 88 */ stfs f0, 0x88(r1) +/* 8017A880 001777E0 48 19 9E 79 */ bl CanBeNormalized__9CVector3fCFv +/* 8017A884 001777E4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017A888 001777E8 41 82 02 7C */ beq lbl_8017AB04 +/* 8017A88C 001777EC 80 7C 04 90 */ lwz r3, 0x490(r28) +/* 8017A890 001777F0 80 63 07 40 */ lwz r3, 0x740(r3) +/* 8017A894 001777F4 4B FA 38 45 */ bl GrappleBeamDisconnected__11CGrappleArmFv +/* 8017A898 001777F8 C0 01 00 84 */ lfs f0, 0x84(r1) +/* 8017A89C 001777FC 38 7C 03 C0 */ addi r3, r28, 0x3c0 +/* 8017A8A0 00177800 D0 1C 03 C0 */ stfs f0, 0x3c0(r28) +/* 8017A8A4 00177804 C0 01 00 80 */ lfs f0, 0x80(r1) +/* 8017A8A8 00177808 FC 00 00 50 */ fneg f0, f0 +/* 8017A8AC 0017780C D0 1C 03 C4 */ stfs f0, 0x3c4(r28) +/* 8017A8B0 00177810 48 19 A0 49 */ bl Normalize__9CVector3fFv +/* 8017A8B4 00177814 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017A8B8 00177818 7F 83 E3 78 */ mr r3, r28 +/* 8017A8BC 0017781C 7F C5 F3 78 */ mr r5, r30 +/* 8017A8C0 00177820 38 81 00 0C */ addi r4, r1, 0xc +/* 8017A8C4 00177824 D0 1C 03 BC */ stfs f0, 0x3bc(r28) +/* 8017A8C8 00177828 A0 1C 03 3C */ lhz r0, 0x33c(r28) +/* 8017A8CC 0017782C B0 01 00 0C */ sth r0, 0xc(r1) +/* 8017A8D0 00177830 48 00 0D 1D */ bl SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager +/* 8017A8D4 00177834 38 00 00 02 */ li r0, 2 +/* 8017A8D8 00177838 90 1C 03 B8 */ stw r0, 0x3b8(r28) +/* 8017A8DC 0017783C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017A8E0 00177840 B0 1C 03 3C */ sth r0, 0x33c(r28) +/* 8017A8E4 00177844 80 7C 04 90 */ lwz r3, 0x490(r28) +/* 8017A8E8 00177848 B0 01 00 08 */ sth r0, 8(r1) +/* 8017A8EC 0017784C 80 63 07 40 */ lwz r3, 0x740(r3) +/* 8017A8F0 00177850 4B FA 38 35 */ bl GrappleBeamConnected__11CGrappleArmFv +/* 8017A8F4 00177854 48 00 02 10 */ b lbl_8017AB04 +lbl_8017A8F8: +/* 8017A8F8 00177858 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017A8FC 0017785C 80 03 02 D0 */ lwz r0, 0x2d0(r3) +/* 8017A900 00177860 2C 00 00 00 */ cmpwi r0, 0 +/* 8017A904 00177864 40 82 00 24 */ bne lbl_8017A928 +/* 8017A908 00177868 C0 3C 03 D8 */ lfs f1, 0x3d8(r28) +/* 8017A90C 0017786C C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017A910 00177870 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017A914 00177874 4C 40 13 82 */ cror 2, 0, 2 +/* 8017A918 00177878 40 82 00 10 */ bne lbl_8017A928 +/* 8017A91C 0017787C 7F 83 E3 78 */ mr r3, r28 +/* 8017A920 00177880 7F C4 F3 78 */ mr r4, r30 +/* 8017A924 00177884 48 00 04 C9 */ bl ApplyGrappleJump__7CPlayerFR13CStateManager +lbl_8017A928: +/* 8017A928 00177888 7F 83 E3 78 */ mr r3, r28 +/* 8017A92C 0017788C 7F C5 F3 78 */ mr r5, r30 +/* 8017A930 00177890 38 80 00 00 */ li r4, 0 +/* 8017A934 00177894 48 00 07 91 */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager +/* 8017A938 00177898 48 00 01 CC */ b lbl_8017AB04 +lbl_8017A93C: +/* 8017A93C 0017789C 38 61 00 80 */ addi r3, r1, 0x80 +/* 8017A940 001778A0 48 19 9D B9 */ bl CanBeNormalized__9CVector3fCFv +/* 8017A944 001778A4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017A948 001778A8 41 82 01 BC */ beq lbl_8017AB04 +/* 8017A94C 001778AC 38 61 00 80 */ addi r3, r1, 0x80 +/* 8017A950 001778B0 48 19 9F 69 */ bl Magnitude__9CVector3fCFv +/* 8017A954 001778B4 FF E0 08 90 */ fmr f31, f1 +/* 8017A958 001778B8 38 61 00 44 */ addi r3, r1, 0x44 +/* 8017A95C 001778BC 38 81 00 80 */ addi r4, r1, 0x80 +/* 8017A960 001778C0 48 19 9E F1 */ bl AsNormalized__9CVector3fCFv +/* 8017A964 001778C4 FC 20 F8 90 */ fmr f1, f31 +/* 8017A968 001778C8 3C 60 80 47 */ lis r3, lbl_8046C8C0@ha +/* 8017A96C 001778CC 38 E3 C8 C0 */ addi r7, r3, lbl_8046C8C0@l +/* 8017A970 001778D0 7F C4 F3 78 */ mr r4, r30 +/* 8017A974 001778D4 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 8017A978 001778D8 38 A1 00 8C */ addi r5, r1, 0x8c +/* 8017A97C 001778DC 38 C1 00 44 */ addi r6, r1, 0x44 +/* 8017A980 001778E0 4B ED 26 19 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 8017A984 001778E4 88 01 00 E8 */ lbz r0, 0xe8(r1) +/* 8017A988 001778E8 28 00 00 00 */ cmplwi r0, 0 +/* 8017A98C 001778EC 40 82 01 78 */ bne lbl_8017AB04 +/* 8017A990 001778F0 7F 83 E3 78 */ mr r3, r28 +/* 8017A994 001778F4 7F C4 F3 78 */ mr r4, r30 +/* 8017A998 001778F8 4B E9 F7 D5 */ bl HolsterGun__7CPlayerFR13CStateManager +/* 8017A99C 001778FC 80 1C 03 B8 */ lwz r0, 0x3b8(r28) +/* 8017A9A0 00177900 2C 00 00 02 */ cmpwi r0, 2 +/* 8017A9A4 00177904 41 82 01 60 */ beq lbl_8017AB04 +/* 8017A9A8 00177908 40 80 00 14 */ bge lbl_8017A9BC +/* 8017A9AC 0017790C 2C 00 00 00 */ cmpwi r0, 0 +/* 8017A9B0 00177910 41 82 01 3C */ beq lbl_8017AAEC +/* 8017A9B4 00177914 40 80 00 10 */ bge lbl_8017A9C4 +/* 8017A9B8 00177918 48 00 01 4C */ b lbl_8017AB04 +lbl_8017A9BC: +/* 8017A9BC 0017791C 2C 00 00 04 */ cmpwi r0, 4 +/* 8017A9C0 00177920 40 80 01 44 */ bge lbl_8017AB04 +lbl_8017A9C4: +/* 8017A9C4 00177924 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017A9C8 00177928 80 03 02 D0 */ lwz r0, 0x2d0(r3) +/* 8017A9CC 0017792C 2C 00 00 01 */ cmpwi r0, 1 +/* 8017A9D0 00177930 41 82 00 80 */ beq lbl_8017AA50 +/* 8017A9D4 00177934 40 80 00 10 */ bge lbl_8017A9E4 +/* 8017A9D8 00177938 2C 00 00 00 */ cmpwi r0, 0 +/* 8017A9DC 0017793C 40 80 00 14 */ bge lbl_8017A9F0 +/* 8017A9E0 00177940 48 00 01 24 */ b lbl_8017AB04 +lbl_8017A9E4: +/* 8017A9E4 00177944 2C 00 00 03 */ cmpwi r0, 3 +/* 8017A9E8 00177948 40 80 01 1C */ bge lbl_8017AB04 +/* 8017A9EC 0017794C 48 00 00 BC */ b lbl_8017AAA8 +lbl_8017A9F0: +/* 8017A9F0 00177950 80 7C 04 90 */ lwz r3, 0x490(r28) +/* 8017A9F4 00177954 80 63 07 40 */ lwz r3, 0x740(r3) +/* 8017A9F8 00177958 80 03 03 34 */ lwz r0, 0x334(r3) +/* 8017A9FC 0017795C 2C 00 00 06 */ cmpwi r0, 6 +/* 8017AA00 00177960 41 82 00 3C */ beq lbl_8017AA3C +/* 8017AA04 00177964 40 80 01 00 */ bge lbl_8017AB04 +/* 8017AA08 00177968 2C 00 00 01 */ cmpwi r0, 1 +/* 8017AA0C 0017796C 41 82 00 08 */ beq lbl_8017AA14 +/* 8017AA10 00177970 48 00 00 F4 */ b lbl_8017AB04 +lbl_8017AA14: +/* 8017AA14 00177974 7F A4 EB 78 */ mr r4, r29 +/* 8017AA18 00177978 38 60 00 0B */ li r3, 0xb +/* 8017AA1C 0017797C 4B E9 1E 59 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8017AA20 00177980 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017AA24 00177984 41 82 00 E0 */ beq lbl_8017AB04 +/* 8017AA28 00177988 80 7C 04 90 */ lwz r3, 0x490(r28) +/* 8017AA2C 0017798C 38 80 00 02 */ li r4, 2 +/* 8017AA30 00177990 80 63 07 40 */ lwz r3, 0x740(r3) +/* 8017AA34 00177994 4B FA 3B 2D */ bl SetAnimState__11CGrappleArmFQ211CGrappleArm9EArmState +/* 8017AA38 00177998 48 00 00 CC */ b lbl_8017AB04 +lbl_8017AA3C: +/* 8017AA3C 0017799C 7F 83 E3 78 */ mr r3, r28 +/* 8017AA40 001779A0 7F C5 F3 78 */ mr r5, r30 +/* 8017AA44 001779A4 38 81 00 80 */ addi r4, r1, 0x80 +/* 8017AA48 001779A8 48 00 05 D9 */ bl BeginGrapple__7CPlayerFR9CVector3fR13CStateManager +/* 8017AA4C 001779AC 48 00 00 B8 */ b lbl_8017AB04 +lbl_8017AA50: +/* 8017AA50 001779B0 7F A4 EB 78 */ mr r4, r29 +/* 8017AA54 001779B4 38 60 00 0B */ li r3, 0xb +/* 8017AA58 001779B8 4B E9 1E 1D */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8017AA5C 001779BC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017AA60 001779C0 41 82 00 A4 */ beq lbl_8017AB04 +/* 8017AA64 001779C4 80 7C 04 90 */ lwz r3, 0x490(r28) +/* 8017AA68 001779C8 80 63 07 40 */ lwz r3, 0x740(r3) +/* 8017AA6C 001779CC 80 03 03 34 */ lwz r0, 0x334(r3) +/* 8017AA70 001779D0 2C 00 00 06 */ cmpwi r0, 6 +/* 8017AA74 001779D4 41 82 00 20 */ beq lbl_8017AA94 +/* 8017AA78 001779D8 40 80 00 8C */ bge lbl_8017AB04 +/* 8017AA7C 001779DC 2C 00 00 01 */ cmpwi r0, 1 +/* 8017AA80 001779E0 41 82 00 08 */ beq lbl_8017AA88 +/* 8017AA84 001779E4 48 00 00 80 */ b lbl_8017AB04 +lbl_8017AA88: +/* 8017AA88 001779E8 38 80 00 02 */ li r4, 2 +/* 8017AA8C 001779EC 4B FA 3A D5 */ bl SetAnimState__11CGrappleArmFQ211CGrappleArm9EArmState +/* 8017AA90 001779F0 48 00 00 74 */ b lbl_8017AB04 +lbl_8017AA94: +/* 8017AA94 001779F4 7F 83 E3 78 */ mr r3, r28 +/* 8017AA98 001779F8 7F C5 F3 78 */ mr r5, r30 +/* 8017AA9C 001779FC 38 81 00 80 */ addi r4, r1, 0x80 +/* 8017AAA0 00177A00 48 00 05 81 */ bl BeginGrapple__7CPlayerFR9CVector3fR13CStateManager +/* 8017AAA4 00177A04 48 00 00 60 */ b lbl_8017AB04 +lbl_8017AAA8: +/* 8017AAA8 00177A08 80 7C 04 90 */ lwz r3, 0x490(r28) +/* 8017AAAC 00177A0C 80 63 07 40 */ lwz r3, 0x740(r3) +/* 8017AAB0 00177A10 80 03 03 34 */ lwz r0, 0x334(r3) +/* 8017AAB4 00177A14 2C 00 00 06 */ cmpwi r0, 6 +/* 8017AAB8 00177A18 41 82 00 20 */ beq lbl_8017AAD8 +/* 8017AABC 00177A1C 40 80 00 48 */ bge lbl_8017AB04 +/* 8017AAC0 00177A20 2C 00 00 01 */ cmpwi r0, 1 +/* 8017AAC4 00177A24 41 82 00 08 */ beq lbl_8017AACC +/* 8017AAC8 00177A28 48 00 00 3C */ b lbl_8017AB04 +lbl_8017AACC: +/* 8017AACC 00177A2C 38 80 00 02 */ li r4, 2 +/* 8017AAD0 00177A30 4B FA 3A 91 */ bl SetAnimState__11CGrappleArmFQ211CGrappleArm9EArmState +/* 8017AAD4 00177A34 48 00 00 30 */ b lbl_8017AB04 +lbl_8017AAD8: +/* 8017AAD8 00177A38 7F 83 E3 78 */ mr r3, r28 +/* 8017AADC 00177A3C 7F C5 F3 78 */ mr r5, r30 +/* 8017AAE0 00177A40 38 81 00 80 */ addi r4, r1, 0x80 +/* 8017AAE4 00177A44 48 00 05 3D */ bl BeginGrapple__7CPlayerFR9CVector3fR13CStateManager +/* 8017AAE8 00177A48 48 00 00 1C */ b lbl_8017AB04 +lbl_8017AAEC: +/* 8017AAEC 00177A4C 38 00 00 01 */ li r0, 1 +/* 8017AAF0 00177A50 38 80 00 01 */ li r4, 1 +/* 8017AAF4 00177A54 90 1C 03 B8 */ stw r0, 0x3b8(r28) +/* 8017AAF8 00177A58 80 7C 04 90 */ lwz r3, 0x490(r28) +/* 8017AAFC 00177A5C 80 63 07 40 */ lwz r3, 0x740(r3) +/* 8017AB00 00177A60 4B FA 3D 01 */ bl Activate__11CGrappleArmFb +lbl_8017AB04: +/* 8017AB04 00177A64 80 1C 03 04 */ lwz r0, 0x304(r28) +/* 8017AB08 00177A68 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017AB0C 00177A6C 2C 00 00 05 */ cmpwi r0, 5 +/* 8017AB10 00177A70 80 83 02 D0 */ lwz r4, 0x2d0(r3) +/* 8017AB14 00177A74 41 82 00 14 */ beq lbl_8017AB28 +/* 8017AB18 00177A78 40 80 02 AC */ bge lbl_8017ADC4 +/* 8017AB1C 00177A7C 2C 00 00 01 */ cmpwi r0, 1 +/* 8017AB20 00177A80 41 82 02 64 */ beq lbl_8017AD84 +/* 8017AB24 00177A84 48 00 02 A0 */ b lbl_8017ADC4 +lbl_8017AB28: +/* 8017AB28 00177A88 28 1F 00 00 */ cmplwi r31, 0 +/* 8017AB2C 00177A8C 40 82 00 18 */ bne lbl_8017AB44 +/* 8017AB30 00177A90 7F 83 E3 78 */ mr r3, r28 +/* 8017AB34 00177A94 7F C5 F3 78 */ mr r5, r30 +/* 8017AB38 00177A98 38 80 00 03 */ li r4, 3 +/* 8017AB3C 00177A9C 48 00 05 89 */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager +/* 8017AB40 00177AA0 48 00 02 84 */ b lbl_8017ADC4 +lbl_8017AB44: +/* 8017AB44 00177AA4 2C 04 00 01 */ cmpwi r4, 1 +/* 8017AB48 00177AA8 41 82 00 90 */ beq lbl_8017ABD8 +/* 8017AB4C 00177AAC 40 80 00 10 */ bge lbl_8017AB5C +/* 8017AB50 00177AB0 2C 04 00 00 */ cmpwi r4, 0 +/* 8017AB54 00177AB4 40 80 00 10 */ bge lbl_8017AB64 +/* 8017AB58 00177AB8 48 00 01 7C */ b lbl_8017ACD4 +lbl_8017AB5C: +/* 8017AB5C 00177ABC 2C 04 00 03 */ cmpwi r4, 3 +/* 8017AB60 00177AC0 40 80 01 74 */ bge lbl_8017ACD4 +lbl_8017AB64: +/* 8017AB64 00177AC4 80 1C 03 B8 */ lwz r0, 0x3b8(r28) +/* 8017AB68 00177AC8 2C 00 00 04 */ cmpwi r0, 4 +/* 8017AB6C 00177ACC 41 82 00 08 */ beq lbl_8017AB74 +/* 8017AB70 00177AD0 48 00 01 64 */ b lbl_8017ACD4 +lbl_8017AB74: +/* 8017AB74 00177AD4 C0 5C 03 D8 */ lfs f2, 0x3d8(r28) +/* 8017AB78 00177AD8 C0 3D 00 00 */ lfs f1, 0(r29) +/* 8017AB7C 00177ADC C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017AB80 00177AE0 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8017AB84 00177AE4 D0 3C 03 D8 */ stfs f1, 0x3d8(r28) +/* 8017AB88 00177AE8 C0 3C 03 D8 */ lfs f1, 0x3d8(r28) +/* 8017AB8C 00177AEC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017AB90 00177AF0 4C 40 13 82 */ cror 2, 0, 2 +/* 8017AB94 00177AF4 40 82 01 40 */ bne lbl_8017ACD4 +/* 8017AB98 00177AF8 7F 83 E3 78 */ mr r3, r28 +/* 8017AB9C 00177AFC 7F C5 F3 78 */ mr r5, r30 +/* 8017ABA0 00177B00 38 80 00 00 */ li r4, 0 +/* 8017ABA4 00177B04 48 00 05 21 */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager +/* 8017ABA8 00177B08 7F 83 E3 78 */ mr r3, r28 +/* 8017ABAC 00177B0C 7F C5 F3 78 */ mr r5, r30 +/* 8017ABB0 00177B10 38 80 00 02 */ li r4, 2 +/* 8017ABB4 00177B14 48 10 B8 39 */ bl SetMoveState__7CPlayerFQ27NPlayer20EPlayerMovementStateR13CStateManager +/* 8017ABB8 00177B18 C0 3D 00 00 */ lfs f1, 0(r29) +/* 8017ABBC 00177B1C 7F 83 E3 78 */ mr r3, r28 +/* 8017ABC0 00177B20 7F A4 EB 78 */ mr r4, r29 +/* 8017ABC4 00177B24 7F C5 F3 78 */ mr r5, r30 +/* 8017ABC8 00177B28 48 10 C3 AD */ bl ComputeMovement__7CPlayerFRC11CFinalInputR13CStateManagerf +/* 8017ABCC 00177B2C 7F 83 E3 78 */ mr r3, r28 +/* 8017ABD0 00177B30 48 00 07 11 */ bl PreventFallingCameraPitch__7CPlayerFv +/* 8017ABD4 00177B34 48 00 01 00 */ b lbl_8017ACD4 +lbl_8017ABD8: +/* 8017ABD8 00177B38 80 1C 03 B8 */ lwz r0, 0x3b8(r28) +/* 8017ABDC 00177B3C 2C 00 00 03 */ cmpwi r0, 3 +/* 8017ABE0 00177B40 41 82 00 20 */ beq lbl_8017AC00 +/* 8017ABE4 00177B44 40 80 00 10 */ bge lbl_8017ABF4 +/* 8017ABE8 00177B48 2C 00 00 01 */ cmpwi r0, 1 +/* 8017ABEC 00177B4C 40 80 00 C4 */ bge lbl_8017ACB0 +/* 8017ABF0 00177B50 48 00 00 E4 */ b lbl_8017ACD4 +lbl_8017ABF4: +/* 8017ABF4 00177B54 2C 00 00 05 */ cmpwi r0, 5 +/* 8017ABF8 00177B58 40 80 00 DC */ bge lbl_8017ACD4 +/* 8017ABFC 00177B5C 48 00 00 50 */ b lbl_8017AC4C +lbl_8017AC00: +/* 8017AC00 00177B60 7F A4 EB 78 */ mr r4, r29 +/* 8017AC04 00177B64 38 60 00 0B */ li r3, 0xb +/* 8017AC08 00177B68 4B E9 1C 6D */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8017AC0C 00177B6C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017AC10 00177B70 40 82 00 C4 */ bne lbl_8017ACD4 +/* 8017AC14 00177B74 C0 3C 03 D8 */ lfs f1, 0x3d8(r28) +/* 8017AC18 00177B78 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017AC1C 00177B7C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017AC20 00177B80 4C 40 13 82 */ cror 2, 0, 2 +/* 8017AC24 00177B84 40 82 00 B0 */ bne lbl_8017ACD4 +/* 8017AC28 00177B88 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) +/* 8017AC2C 00177B8C 38 00 00 04 */ li r0, 4 +/* 8017AC30 00177B90 7F 83 E3 78 */ mr r3, r28 +/* 8017AC34 00177B94 7F C4 F3 78 */ mr r4, r30 +/* 8017AC38 00177B98 C0 05 02 CC */ lfs f0, 0x2cc(r5) +/* 8017AC3C 00177B9C D0 1C 03 D8 */ stfs f0, 0x3d8(r28) +/* 8017AC40 00177BA0 90 1C 03 B8 */ stw r0, 0x3b8(r28) +/* 8017AC44 00177BA4 48 00 01 A9 */ bl ApplyGrappleJump__7CPlayerFR13CStateManager +/* 8017AC48 00177BA8 48 00 00 8C */ b lbl_8017ACD4 +lbl_8017AC4C: +/* 8017AC4C 00177BAC C0 5C 03 D8 */ lfs f2, 0x3d8(r28) +/* 8017AC50 00177BB0 C0 3D 00 00 */ lfs f1, 0(r29) +/* 8017AC54 00177BB4 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017AC58 00177BB8 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8017AC5C 00177BBC D0 3C 03 D8 */ stfs f1, 0x3d8(r28) +/* 8017AC60 00177BC0 C0 3C 03 D8 */ lfs f1, 0x3d8(r28) +/* 8017AC64 00177BC4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017AC68 00177BC8 4C 40 13 82 */ cror 2, 0, 2 +/* 8017AC6C 00177BCC 40 82 00 68 */ bne lbl_8017ACD4 +/* 8017AC70 00177BD0 7F 83 E3 78 */ mr r3, r28 +/* 8017AC74 00177BD4 7F C5 F3 78 */ mr r5, r30 +/* 8017AC78 00177BD8 38 80 00 02 */ li r4, 2 +/* 8017AC7C 00177BDC 48 10 B7 71 */ bl SetMoveState__7CPlayerFQ27NPlayer20EPlayerMovementStateR13CStateManager +/* 8017AC80 00177BE0 C0 3D 00 00 */ lfs f1, 0(r29) +/* 8017AC84 00177BE4 7F 83 E3 78 */ mr r3, r28 +/* 8017AC88 00177BE8 7F A4 EB 78 */ mr r4, r29 +/* 8017AC8C 00177BEC 7F C5 F3 78 */ mr r5, r30 +/* 8017AC90 00177BF0 48 10 C2 E5 */ bl ComputeMovement__7CPlayerFRC11CFinalInputR13CStateManagerf +/* 8017AC94 00177BF4 7F 83 E3 78 */ mr r3, r28 +/* 8017AC98 00177BF8 7F C5 F3 78 */ mr r5, r30 +/* 8017AC9C 00177BFC 38 80 00 00 */ li r4, 0 +/* 8017ACA0 00177C00 48 00 04 25 */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager +/* 8017ACA4 00177C04 7F 83 E3 78 */ mr r3, r28 +/* 8017ACA8 00177C08 48 00 06 39 */ bl PreventFallingCameraPitch__7CPlayerFv +/* 8017ACAC 00177C0C 48 00 00 28 */ b lbl_8017ACD4 +lbl_8017ACB0: +/* 8017ACB0 00177C10 7F A4 EB 78 */ mr r4, r29 +/* 8017ACB4 00177C14 38 60 00 0B */ li r3, 0xb +/* 8017ACB8 00177C18 4B E9 1B BD */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8017ACBC 00177C1C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017ACC0 00177C20 40 82 00 14 */ bne lbl_8017ACD4 +/* 8017ACC4 00177C24 7F 83 E3 78 */ mr r3, r28 +/* 8017ACC8 00177C28 7F C5 F3 78 */ mr r5, r30 +/* 8017ACCC 00177C2C 38 80 00 00 */ li r4, 0 +/* 8017ACD0 00177C30 48 00 03 F5 */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager +lbl_8017ACD4: +/* 8017ACD4 00177C34 7F 84 E3 78 */ mr r4, r28 +/* 8017ACD8 00177C38 38 61 00 38 */ addi r3, r1, 0x38 +/* 8017ACDC 00177C3C 48 10 A0 A1 */ bl GetEyePosition__7CPlayerCFv +/* 8017ACE0 00177C40 C0 A1 00 38 */ lfs f5, 0x38(r1) +/* 8017ACE4 00177C44 38 61 00 5C */ addi r3, r1, 0x5c +/* 8017ACE8 00177C48 C0 81 00 3C */ lfs f4, 0x3c(r1) +/* 8017ACEC 00177C4C C0 61 00 40 */ lfs f3, 0x40(r1) +/* 8017ACF0 00177C50 D0 A1 00 68 */ stfs f5, 0x68(r1) +/* 8017ACF4 00177C54 D0 81 00 6C */ stfs f4, 0x6c(r1) +/* 8017ACF8 00177C58 D0 61 00 70 */ stfs f3, 0x70(r1) +/* 8017ACFC 00177C5C C0 5F 00 50 */ lfs f2, 0x50(r31) +/* 8017AD00 00177C60 C0 3F 00 60 */ lfs f1, 0x60(r31) +/* 8017AD04 00177C64 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8017AD08 00177C68 EC 42 20 28 */ fsubs f2, f2, f4 +/* 8017AD0C 00177C6C EC 21 18 28 */ fsubs f1, f1, f3 +/* 8017AD10 00177C70 EC 00 28 28 */ fsubs f0, f0, f5 +/* 8017AD14 00177C74 D0 41 00 60 */ stfs f2, 0x60(r1) +/* 8017AD18 00177C78 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 8017AD1C 00177C7C D0 21 00 64 */ stfs f1, 0x64(r1) +/* 8017AD20 00177C80 48 19 99 D9 */ bl CanBeNormalized__9CVector3fCFv +/* 8017AD24 00177C84 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017AD28 00177C88 41 82 00 9C */ beq lbl_8017ADC4 +/* 8017AD2C 00177C8C 38 61 00 5C */ addi r3, r1, 0x5c +/* 8017AD30 00177C90 48 19 9B 89 */ bl Magnitude__9CVector3fCFv +/* 8017AD34 00177C94 FF E0 08 90 */ fmr f31, f1 +/* 8017AD38 00177C98 38 61 00 2C */ addi r3, r1, 0x2c +/* 8017AD3C 00177C9C 38 81 00 5C */ addi r4, r1, 0x5c +/* 8017AD40 00177CA0 48 19 9B 11 */ bl AsNormalized__9CVector3fCFv +/* 8017AD44 00177CA4 FC 20 F8 90 */ fmr f1, f31 +/* 8017AD48 00177CA8 3C 60 80 47 */ lis r3, lbl_8046C8C0@ha +/* 8017AD4C 00177CAC 38 E3 C8 C0 */ addi r7, r3, lbl_8046C8C0@l +/* 8017AD50 00177CB0 7F C4 F3 78 */ mr r4, r30 +/* 8017AD54 00177CB4 38 61 00 98 */ addi r3, r1, 0x98 +/* 8017AD58 00177CB8 38 A1 00 68 */ addi r5, r1, 0x68 +/* 8017AD5C 00177CBC 38 C1 00 2C */ addi r6, r1, 0x2c +/* 8017AD60 00177CC0 4B ED 22 39 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 8017AD64 00177CC4 88 01 00 B8 */ lbz r0, 0xb8(r1) +/* 8017AD68 00177CC8 28 00 00 00 */ cmplwi r0, 0 +/* 8017AD6C 00177CCC 41 82 00 58 */ beq lbl_8017ADC4 +/* 8017AD70 00177CD0 7F 83 E3 78 */ mr r3, r28 +/* 8017AD74 00177CD4 7F C5 F3 78 */ mr r5, r30 +/* 8017AD78 00177CD8 38 80 00 0C */ li r4, 0xc +/* 8017AD7C 00177CDC 48 00 03 49 */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager +/* 8017AD80 00177CE0 48 00 00 44 */ b lbl_8017ADC4 +lbl_8017AD84: +/* 8017AD84 00177CE4 80 7C 04 90 */ lwz r3, 0x490(r28) +/* 8017AD88 00177CE8 80 63 07 40 */ lwz r3, 0x740(r3) +/* 8017AD8C 00177CEC 88 03 03 B2 */ lbz r0, 0x3b2(r3) +/* 8017AD90 00177CF0 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8017AD94 00177CF4 41 82 00 30 */ beq lbl_8017ADC4 +/* 8017AD98 00177CF8 2C 04 00 01 */ cmpwi r4, 1 +/* 8017AD9C 00177CFC 40 82 00 28 */ bne lbl_8017ADC4 +/* 8017ADA0 00177D00 7F A4 EB 78 */ mr r4, r29 +/* 8017ADA4 00177D04 38 60 00 0B */ li r3, 0xb +/* 8017ADA8 00177D08 4B E9 1A CD */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8017ADAC 00177D0C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017ADB0 00177D10 40 82 00 14 */ bne lbl_8017ADC4 +/* 8017ADB4 00177D14 7F 83 E3 78 */ mr r3, r28 +/* 8017ADB8 00177D18 7F C5 F3 78 */ mr r5, r30 +/* 8017ADBC 00177D1C 38 80 00 00 */ li r4, 0 +/* 8017ADC0 00177D20 48 00 03 05 */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager +lbl_8017ADC4: +/* 8017ADC4 00177D24 E3 E1 01 18 */ psq_l f31, 280(r1), 0, qr0 +/* 8017ADC8 00177D28 80 01 01 24 */ lwz r0, 0x124(r1) +/* 8017ADCC 00177D2C CB E1 01 10 */ lfd f31, 0x110(r1) +/* 8017ADD0 00177D30 83 E1 01 0C */ lwz r31, 0x10c(r1) +/* 8017ADD4 00177D34 83 C1 01 08 */ lwz r30, 0x108(r1) +/* 8017ADD8 00177D38 83 A1 01 04 */ lwz r29, 0x104(r1) +/* 8017ADDC 00177D3C 83 81 01 00 */ lwz r28, 0x100(r1) +/* 8017ADE0 00177D40 7C 08 03 A6 */ mtlr r0 +/* 8017ADE4 00177D44 38 21 01 20 */ addi r1, r1, 0x120 +/* 8017ADE8 00177D48 4E 80 00 20 */ blr + +.global ApplyGrappleJump__7CPlayerFR13CStateManager +ApplyGrappleJump__7CPlayerFR13CStateManager: +/* 8017ADEC 00177D4C 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 8017ADF0 00177D50 7C 08 02 A6 */ mflr r0 +/* 8017ADF4 00177D54 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 8017ADF8 00177D58 DB E1 00 A0 */ stfd f31, 0xa0(r1) +/* 8017ADFC 00177D5C F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 +/* 8017AE00 00177D60 DB C1 00 90 */ stfd f30, 0x90(r1) +/* 8017AE04 00177D64 F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0 +/* 8017AE08 00177D68 DB A1 00 80 */ stfd f29, 0x80(r1) +/* 8017AE0C 00177D6C F3 A1 00 88 */ psq_st f29, 136(r1), 0, qr0 +/* 8017AE10 00177D70 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 8017AE14 00177D74 A0 03 03 10 */ lhz r0, 0x310(r3) +/* 8017AE18 00177D78 7C 7F 1B 78 */ mr r31, r3 +/* 8017AE1C 00177D7C 7C 83 23 78 */ mr r3, r4 +/* 8017AE20 00177D80 38 81 00 0C */ addi r4, r1, 0xc +/* 8017AE24 00177D84 B0 01 00 08 */ sth r0, 8(r1) +/* 8017AE28 00177D88 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8017AE2C 00177D8C 4B ED 17 79 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017AE30 00177D90 7C 64 1B 78 */ mr r4, r3 +/* 8017AE34 00177D94 38 61 00 10 */ addi r3, r1, 0x10 +/* 8017AE38 00177D98 4B F2 EC 91 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" +/* 8017AE3C 00177D9C 80 A3 00 04 */ lwz r5, 4(r3) +/* 8017AE40 00177DA0 28 05 00 00 */ cmplwi r5, 0 +/* 8017AE44 00177DA4 41 82 01 B0 */ beq lbl_8017AFF4 +/* 8017AE48 00177DA8 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017AE4C 00177DAC C0 22 A2 68 */ lfs f1, lbl_805ABF88@sda21(r2) +/* 8017AE50 00177DB0 C0 03 02 A8 */ lfs f0, 0x2a8(r3) +/* 8017AE54 00177DB4 C0 5F 03 BC */ lfs f2, 0x3bc(r31) +/* 8017AE58 00177DB8 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8017AE5C 00177DBC C3 FF 03 C0 */ lfs f31, 0x3c0(r31) +/* 8017AE60 00177DC0 C3 DF 03 C4 */ lfs f30, 0x3c4(r31) +/* 8017AE64 00177DC4 C3 BF 03 C8 */ lfs f29, 0x3c8(r31) +/* 8017AE68 00177DC8 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8017AE6C 00177DCC 40 80 00 14 */ bge lbl_8017AE80 +/* 8017AE70 00177DD0 C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) +/* 8017AE74 00177DD4 EF FF 00 32 */ fmuls f31, f31, f0 +/* 8017AE78 00177DD8 EF DE 00 32 */ fmuls f30, f30, f0 +/* 8017AE7C 00177DDC EF BD 00 32 */ fmuls f29, f29, f0 +lbl_8017AE80: +/* 8017AE80 00177DE0 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 8017AE84 00177DE4 38 61 00 30 */ addi r3, r1, 0x30 +/* 8017AE88 00177DE8 C0 05 00 50 */ lfs f0, 0x50(r5) +/* 8017AE8C 00177DEC 38 81 00 60 */ addi r4, r1, 0x60 +/* 8017AE90 00177DF0 C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 8017AE94 00177DF4 C0 45 00 60 */ lfs f2, 0x60(r5) +/* 8017AE98 00177DF8 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8017AE9C 00177DFC C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 8017AEA0 00177E00 C0 05 00 40 */ lfs f0, 0x40(r5) +/* 8017AEA4 00177E04 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8017AEA8 00177E08 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8017AEAC 00177E0C D0 81 00 64 */ stfs f4, 0x64(r1) +/* 8017AEB0 00177E10 D0 41 00 68 */ stfs f2, 0x68(r1) +/* 8017AEB4 00177E14 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 8017AEB8 00177E18 48 19 99 99 */ bl AsNormalized__9CVector3fCFv +/* 8017AEBC 00177E1C C0 C1 00 34 */ lfs f6, 0x34(r1) +/* 8017AEC0 00177E20 38 61 00 48 */ addi r3, r1, 0x48 +/* 8017AEC4 00177E24 C0 E1 00 38 */ lfs f7, 0x38(r1) +/* 8017AEC8 00177E28 C0 A1 00 30 */ lfs f5, 0x30(r1) +/* 8017AECC 00177E2C EC 9F 01 B2 */ fmuls f4, f31, f6 +/* 8017AED0 00177E30 EC 7E 01 F2 */ fmuls f3, f30, f7 +/* 8017AED4 00177E34 C0 01 00 68 */ lfs f0, 0x68(r1) +/* 8017AED8 00177E38 EC 3D 01 72 */ fmuls f1, f29, f5 +/* 8017AEDC 00177E3C C0 41 00 60 */ lfs f2, 0x60(r1) +/* 8017AEE0 00177E40 EC A5 27 B8 */ fmsubs f5, f5, f30, f4 +/* 8017AEE4 00177E44 EC 86 1F 78 */ fmsubs f4, f6, f29, f3 +/* 8017AEE8 00177E48 EC 67 0F F8 */ fmsubs f3, f7, f31, f1 +/* 8017AEEC 00177E4C C0 21 00 64 */ lfs f1, 0x64(r1) +/* 8017AEF0 00177E50 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8017AEF4 00177E54 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017AEF8 00177E58 D0 81 00 54 */ stfs f4, 0x54(r1) +/* 8017AEFC 00177E5C C3 A2 A2 4C */ lfs f29, lbl_805ABF6C@sda21(r2) +/* 8017AF00 00177E60 D0 61 00 58 */ stfs f3, 0x58(r1) +/* 8017AF04 00177E64 D0 A1 00 5C */ stfs f5, 0x5c(r1) +/* 8017AF08 00177E68 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 8017AF0C 00177E6C D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 8017AF10 00177E70 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8017AF14 00177E74 48 19 97 E5 */ bl CanBeNormalized__9CVector3fCFv +/* 8017AF18 00177E78 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017AF1C 00177E7C 41 82 00 7C */ beq lbl_8017AF98 +/* 8017AF20 00177E80 38 61 00 54 */ addi r3, r1, 0x54 +/* 8017AF24 00177E84 48 19 97 D5 */ bl CanBeNormalized__9CVector3fCFv +/* 8017AF28 00177E88 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017AF2C 00177E8C 41 82 00 6C */ beq lbl_8017AF98 +/* 8017AF30 00177E90 38 61 00 18 */ addi r3, r1, 0x18 +/* 8017AF34 00177E94 38 81 00 48 */ addi r4, r1, 0x48 +/* 8017AF38 00177E98 48 19 99 19 */ bl AsNormalized__9CVector3fCFv +/* 8017AF3C 00177E9C 38 61 00 24 */ addi r3, r1, 0x24 +/* 8017AF40 00177EA0 38 81 00 54 */ addi r4, r1, 0x54 +/* 8017AF44 00177EA4 48 19 99 0D */ bl AsNormalized__9CVector3fCFv +/* 8017AF48 00177EA8 C0 21 00 28 */ lfs f1, 0x28(r1) +/* 8017AF4C 00177EAC C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 8017AF50 00177EB0 C0 41 00 24 */ lfs f2, 0x24(r1) +/* 8017AF54 00177EB4 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8017AF58 00177EB8 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 8017AF5C 00177EBC C0 81 00 2C */ lfs f4, 0x2c(r1) +/* 8017AF60 00177EC0 C0 61 00 20 */ lfs f3, 0x20(r1) +/* 8017AF64 00177EC4 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 8017AF68 00177EC8 C8 02 A2 40 */ lfd f0, lbl_805ABF60@sda21(r2) +/* 8017AF6C 00177ECC EC 24 08 FA */ fmadds f1, f4, f3, f1 +/* 8017AF70 00177ED0 FC 20 0A 10 */ fabs f1, f1 +/* 8017AF74 00177ED4 FC 40 08 18 */ frsp f2, f1 +/* 8017AF78 00177ED8 FC 20 12 10 */ fabs f1, f2 +/* 8017AF7C 00177EDC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017AF80 00177EE0 40 81 00 14 */ ble lbl_8017AF94 +/* 8017AF84 00177EE4 C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) +/* 8017AF88 00177EE8 C0 22 A2 4C */ lfs f1, lbl_805ABF6C@sda21(r2) +/* 8017AF8C 00177EEC FC 02 00 6E */ fsel f0, f2, f1, f0 +/* 8017AF90 00177EF0 EC 41 00 32 */ fmuls f2, f1, f0 +lbl_8017AF94: +/* 8017AF94 00177EF4 FF A0 10 90 */ fmr f29, f2 +lbl_8017AF98: +/* 8017AF98 00177EF8 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017AF9C 00177EFC C0 41 00 58 */ lfs f2, 0x58(r1) +/* 8017AFA0 00177F00 C0 83 02 C8 */ lfs f4, 0x2c8(r3) +/* 8017AFA4 00177F04 C0 21 00 5C */ lfs f1, 0x5c(r1) +/* 8017AFA8 00177F08 C0 01 00 54 */ lfs f0, 0x54(r1) +/* 8017AFAC 00177F0C EC 44 00 B2 */ fmuls f2, f4, f2 +/* 8017AFB0 00177F10 C0 62 A2 80 */ lfs f3, lbl_805ABFA0@sda21(r2) +/* 8017AFB4 00177F14 EC 24 00 72 */ fmuls f1, f4, f1 +/* 8017AFB8 00177F18 EC 04 00 32 */ fmuls f0, f4, f0 +/* 8017AFBC 00177F1C EC 43 00 B2 */ fmuls f2, f3, f2 +/* 8017AFC0 00177F20 EC 23 00 72 */ fmuls f1, f3, f1 +/* 8017AFC4 00177F24 EC 03 00 32 */ fmuls f0, f3, f0 +/* 8017AFC8 00177F28 EC 5D 00 B2 */ fmuls f2, f29, f2 +/* 8017AFCC 00177F2C EC 3D 00 72 */ fmuls f1, f29, f1 +/* 8017AFD0 00177F30 EC 1D 00 32 */ fmuls f0, f29, f0 +/* 8017AFD4 00177F34 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 8017AFD8 00177F38 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 8017AFDC 00177F3C D0 21 00 44 */ stfs f1, 0x44(r1) +/* 8017AFE0 00177F40 4B EA 05 55 */ bl Identity__10CAxisAngleFv +/* 8017AFE4 00177F44 7C 65 1B 78 */ mr r5, r3 +/* 8017AFE8 00177F48 7F E3 FB 78 */ mr r3, r31 +/* 8017AFEC 00177F4C 38 81 00 3C */ addi r4, r1, 0x3c +/* 8017AFF0 00177F50 4B FA 12 D5 */ bl ApplyForceWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +lbl_8017AFF4: +/* 8017AFF4 00177F54 E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 +/* 8017AFF8 00177F58 CB E1 00 A0 */ lfd f31, 0xa0(r1) +/* 8017AFFC 00177F5C E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0 +/* 8017B000 00177F60 CB C1 00 90 */ lfd f30, 0x90(r1) +/* 8017B004 00177F64 E3 A1 00 88 */ psq_l f29, 136(r1), 0, qr0 +/* 8017B008 00177F68 CB A1 00 80 */ lfd f29, 0x80(r1) +/* 8017B00C 00177F6C 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 8017B010 00177F70 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 8017B014 00177F74 7C 08 03 A6 */ mtlr r0 +/* 8017B018 00177F78 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 8017B01C 00177F7C 4E 80 00 20 */ blr + +.global BeginGrapple__7CPlayerFR9CVector3fR13CStateManager +BeginGrapple__7CPlayerFR9CVector3fR13CStateManager: +/* 8017B020 00177F80 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8017B024 00177F84 7C 08 02 A6 */ mflr r0 +/* 8017B028 00177F88 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017B02C 00177F8C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8017B030 00177F90 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8017B034 00177F94 7C BF 2B 78 */ mr r31, r5 +/* 8017B038 00177F98 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8017B03C 00177F9C 7C 9E 23 78 */ mr r30, r4 +/* 8017B040 00177FA0 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8017B044 00177FA4 7C 7D 1B 78 */ mr r29, r3 +/* 8017B048 00177FA8 7F C3 F3 78 */ mr r3, r30 +/* 8017B04C 00177FAC D0 04 00 08 */ stfs f0, 8(r4) +/* 8017B050 00177FB0 48 19 96 A9 */ bl CanBeNormalized__9CVector3fCFv +/* 8017B054 00177FB4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017B058 00177FB8 41 82 00 50 */ beq lbl_8017B0A8 +/* 8017B05C 00177FBC C0 1E 00 04 */ lfs f0, 4(r30) +/* 8017B060 00177FC0 38 7D 03 C0 */ addi r3, r29, 0x3c0 +/* 8017B064 00177FC4 D0 1D 03 C0 */ stfs f0, 0x3c0(r29) +/* 8017B068 00177FC8 C0 1E 00 00 */ lfs f0, 0(r30) +/* 8017B06C 00177FCC FC 00 00 50 */ fneg f0, f0 +/* 8017B070 00177FD0 D0 1D 03 C4 */ stfs f0, 0x3c4(r29) +/* 8017B074 00177FD4 48 19 98 85 */ bl Normalize__9CVector3fFv +/* 8017B078 00177FD8 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017B07C 00177FDC 7F A3 EB 78 */ mr r3, r29 +/* 8017B080 00177FE0 7F E5 FB 78 */ mr r5, r31 +/* 8017B084 00177FE4 38 80 00 05 */ li r4, 5 +/* 8017B088 00177FE8 D0 1D 03 BC */ stfs f0, 0x3bc(r29) +/* 8017B08C 00177FEC 48 00 04 09 */ bl SetOrbitState__7CPlayerFQ27CPlayer17EPlayerOrbitStateR13CStateManager +/* 8017B090 00177FF0 38 00 00 02 */ li r0, 2 +/* 8017B094 00177FF4 7F A3 EB 78 */ mr r3, r29 +/* 8017B098 00177FF8 90 1D 03 B8 */ stw r0, 0x3b8(r29) +/* 8017B09C 00177FFC 7F E5 FB 78 */ mr r5, r31 +/* 8017B0A0 00178000 38 80 00 25 */ li r4, 0x25 +/* 8017B0A4 00178004 4B ED 8E DD */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_8017B0A8: +/* 8017B0A8 00178008 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8017B0AC 0017800C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8017B0B0 00178010 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8017B0B4 00178014 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8017B0B8 00178018 7C 08 03 A6 */ mtlr r0 +/* 8017B0BC 0017801C 38 21 00 20 */ addi r1, r1, 0x20 +/* 8017B0C0 00178020 4E 80 00 20 */ blr + +.global BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager +BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager: +/* 8017B0C4 00178024 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8017B0C8 00178028 7C 08 02 A6 */ mflr r0 +/* 8017B0CC 0017802C C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017B0D0 00178030 90 01 00 24 */ stw r0, 0x24(r1) +/* 8017B0D4 00178034 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8017B0D8 00178038 7C BF 2B 78 */ mr r31, r5 +/* 8017B0DC 0017803C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8017B0E0 00178040 7C 9E 23 78 */ mr r30, r4 +/* 8017B0E4 00178044 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8017B0E8 00178048 7C 7D 1B 78 */ mr r29, r3 +/* 8017B0EC 0017804C D0 03 02 94 */ stfs f0, 0x294(r3) +/* 8017B0F0 00178050 D0 03 02 9C */ stfs f0, 0x29c(r3) +/* 8017B0F4 00178054 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) +/* 8017B0F8 00178058 80 04 02 D0 */ lwz r0, 0x2d0(r4) +/* 8017B0FC 0017805C 2C 00 00 02 */ cmpwi r0, 2 +/* 8017B100 00178060 40 82 00 20 */ bne lbl_8017B120 +/* 8017B104 00178064 80 1D 03 B8 */ lwz r0, 0x3b8(r29) +/* 8017B108 00178068 2C 00 00 03 */ cmpwi r0, 3 +/* 8017B10C 0017806C 40 82 00 14 */ bne lbl_8017B120 +/* 8017B110 00178070 7F E4 FB 78 */ mr r4, r31 +/* 8017B114 00178074 4B FF FC D9 */ bl ApplyGrappleJump__7CPlayerFR13CStateManager +/* 8017B118 00178078 7F A3 EB 78 */ mr r3, r29 +/* 8017B11C 0017807C 48 00 01 C5 */ bl PreventFallingCameraPitch__7CPlayerFv +lbl_8017B120: +/* 8017B120 00178080 7F A3 EB 78 */ mr r3, r29 +/* 8017B124 00178084 7F C4 F3 78 */ mr r4, r30 +/* 8017B128 00178088 7F E5 FB 78 */ mr r5, r31 +/* 8017B12C 0017808C 48 00 00 71 */ bl SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager +/* 8017B130 00178090 38 00 00 00 */ li r0, 0 +/* 8017B134 00178094 7F A3 EB 78 */ mr r3, r29 +/* 8017B138 00178098 90 1D 03 B8 */ stw r0, 0x3b8(r29) +/* 8017B13C 0017809C 7F E5 FB 78 */ mr r5, r31 +/* 8017B140 001780A0 38 80 00 25 */ li r4, 0x25 +/* 8017B144 001780A4 4B ED 92 0D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 8017B148 001780A8 80 7D 04 90 */ lwz r3, 0x490(r29) +/* 8017B14C 001780AC 38 80 00 08 */ li r4, 8 +/* 8017B150 001780B0 80 63 07 40 */ lwz r3, 0x740(r3) +/* 8017B154 001780B4 4B FA 34 0D */ bl SetAnimState__11CGrappleArmFQ211CGrappleArm9EArmState +/* 8017B158 001780B8 7F A3 EB 78 */ mr r3, r29 +/* 8017B15C 001780BC 48 00 01 4D */ bl InGrappleJumpCooldown__7CPlayerCFv +/* 8017B160 001780C0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017B164 001780C4 40 82 00 1C */ bne lbl_8017B180 +/* 8017B168 001780C8 80 1D 03 B8 */ lwz r0, 0x3b8(r29) +/* 8017B16C 001780CC 2C 00 00 04 */ cmpwi r0, 4 +/* 8017B170 001780D0 41 82 00 10 */ beq lbl_8017B180 +/* 8017B174 001780D4 7F A3 EB 78 */ mr r3, r29 +/* 8017B178 001780D8 7F E4 FB 78 */ mr r4, r31 +/* 8017B17C 001780DC 4B E9 EF 31 */ bl DrawGun__7CPlayerFR13CStateManager +lbl_8017B180: +/* 8017B180 001780E0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8017B184 001780E4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8017B188 001780E8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8017B18C 001780EC 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8017B190 001780F0 7C 08 03 A6 */ mtlr r0 +/* 8017B194 001780F4 38 21 00 20 */ addi r1, r1, 0x20 +/* 8017B198 001780F8 4E 80 00 20 */ blr + +.global SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager +SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager: +/* 8017B19C 001780FC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8017B1A0 00178100 7C 08 02 A6 */ mflr r0 +/* 8017B1A4 00178104 2C 04 00 08 */ cmpwi r4, 8 +/* 8017B1A8 00178108 90 01 00 14 */ stw r0, 0x14(r1) +/* 8017B1AC 0017810C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8017B1B0 00178110 7C 7F 1B 78 */ mr r31, r3 +/* 8017B1B4 00178114 90 83 03 0C */ stw r4, 0x30c(r3) +/* 8017B1B8 00178118 41 82 00 14 */ beq lbl_8017B1CC +/* 8017B1BC 0017811C 40 80 00 78 */ bge lbl_8017B234 +/* 8017B1C0 00178120 2C 04 00 07 */ cmpwi r4, 7 +/* 8017B1C4 00178124 40 80 00 14 */ bge lbl_8017B1D8 +/* 8017B1C8 00178128 48 00 00 6C */ b lbl_8017B234 +lbl_8017B1CC: +/* 8017B1CC 0017812C 7C A4 2B 78 */ mr r4, r5 +/* 8017B1D0 00178130 48 00 37 15 */ bl ActivateOrbitSource__7CPlayerFR13CStateManager +/* 8017B1D4 00178134 48 00 00 6C */ b lbl_8017B240 +lbl_8017B1D8: +/* 8017B1D8 00178138 38 80 00 02 */ li r4, 2 +/* 8017B1DC 0017813C 48 00 02 B9 */ bl SetOrbitState__7CPlayerFQ27CPlayer17EPlayerOrbitStateR13CStateManager +/* 8017B1E0 00178140 80 1F 03 08 */ lwz r0, 0x308(r31) +/* 8017B1E4 00178144 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017B1E8 00178148 54 00 10 3A */ slwi r0, r0, 2 +/* 8017B1EC 0017814C C0 1F 00 38 */ lfs f0, 0x38(r31) +/* 8017B1F0 00178150 7C 63 02 14 */ add r3, r3, r0 +/* 8017B1F4 00178154 C0 7F 00 48 */ lfs f3, 0x48(r31) +/* 8017B1F8 00178158 C0 C3 01 64 */ lfs f6, 0x164(r3) +/* 8017B1FC 0017815C C0 5F 00 58 */ lfs f2, 0x58(r31) +/* 8017B200 00178160 EC 06 00 32 */ fmuls f0, f6, f0 +/* 8017B204 00178164 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 8017B208 00178168 EC 86 00 F2 */ fmuls f4, f6, f3 +/* 8017B20C 0017816C C0 BF 00 50 */ lfs f5, 0x50(r31) +/* 8017B210 00178170 EC 46 00 B2 */ fmuls f2, f6, f2 +/* 8017B214 00178174 C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 8017B218 00178178 EC 01 00 2A */ fadds f0, f1, f0 +/* 8017B21C 0017817C EC 85 20 2A */ fadds f4, f5, f4 +/* 8017B220 00178180 EC 23 10 2A */ fadds f1, f3, f2 +/* 8017B224 00178184 D0 1F 03 14 */ stfs f0, 0x314(r31) +/* 8017B228 00178188 D0 9F 03 18 */ stfs f4, 0x318(r31) +/* 8017B22C 0017818C D0 3F 03 1C */ stfs f1, 0x31c(r31) +/* 8017B230 00178190 48 00 00 10 */ b lbl_8017B240 +lbl_8017B234: +/* 8017B234 00178194 7F E3 FB 78 */ mr r3, r31 +/* 8017B238 00178198 38 80 00 00 */ li r4, 0 +/* 8017B23C 0017819C 48 00 02 59 */ bl SetOrbitState__7CPlayerFQ27CPlayer17EPlayerOrbitStateR13CStateManager +lbl_8017B240: +/* 8017B240 001781A0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8017B244 001781A4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8017B248 001781A8 7C 08 03 A6 */ mtlr r0 +/* 8017B24C 001781AC 38 21 00 10 */ addi r1, r1, 0x10 +/* 8017B250 001781B0 4E 80 00 20 */ blr + +.global SetOrbitRequestForTarget__7CPlayerF9TUniqueId19EPlayerOrbitRequestR13CStateManager +SetOrbitRequestForTarget__7CPlayerF9TUniqueId19EPlayerOrbitRequestR13CStateManager: +/* 8017B254 001781B4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8017B258 001781B8 7C 08 02 A6 */ mflr r0 +/* 8017B25C 001781BC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8017B260 001781C0 80 03 03 04 */ lwz r0, 0x304(r3) +/* 8017B264 001781C4 2C 00 00 01 */ cmpwi r0, 1 +/* 8017B268 001781C8 41 82 00 14 */ beq lbl_8017B27C +/* 8017B26C 001781CC 2C 00 00 05 */ cmpwi r0, 5 +/* 8017B270 001781D0 41 82 00 0C */ beq lbl_8017B27C +/* 8017B274 001781D4 2C 00 00 04 */ cmpwi r0, 4 +/* 8017B278 001781D8 40 82 00 20 */ bne lbl_8017B298 +lbl_8017B27C: +/* 8017B27C 001781DC A0 84 00 00 */ lhz r4, 0(r4) +/* 8017B280 001781E0 A0 03 03 10 */ lhz r0, 0x310(r3) +/* 8017B284 001781E4 7C 04 00 40 */ cmplw r4, r0 +/* 8017B288 001781E8 40 82 00 10 */ bne lbl_8017B298 +/* 8017B28C 001781EC 7C A4 2B 78 */ mr r4, r5 +/* 8017B290 001781F0 7C C5 33 78 */ mr r5, r6 +/* 8017B294 001781F4 4B FF FF 09 */ bl SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager +lbl_8017B298: +/* 8017B298 001781F8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8017B29C 001781FC 7C 08 03 A6 */ mtlr r0 +/* 8017B2A0 00178200 38 21 00 10 */ addi r1, r1, 0x10 +/* 8017B2A4 00178204 4E 80 00 20 */ blr + +.global InGrappleJumpCooldown__7CPlayerCFv +InGrappleJumpCooldown__7CPlayerCFv: +/* 8017B2A8 00178208 80 03 02 58 */ lwz r0, 0x258(r3) +/* 8017B2AC 0017820C 2C 00 00 00 */ cmpwi r0, 0 +/* 8017B2B0 00178210 41 82 00 28 */ beq lbl_8017B2D8 +/* 8017B2B4 00178214 C0 03 03 D8 */ lfs f0, 0x3d8(r3) +/* 8017B2B8 00178218 C0 22 A2 30 */ lfs f1, lbl_805ABF50@sda21(r2) +/* 8017B2BC 0017821C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8017B2C0 00178220 41 81 00 10 */ bgt lbl_8017B2D0 +/* 8017B2C4 00178224 C0 03 02 94 */ lfs f0, 0x294(r3) +/* 8017B2C8 00178228 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 8017B2CC 0017822C 40 82 00 0C */ bne lbl_8017B2D8 +lbl_8017B2D0: +/* 8017B2D0 00178230 38 60 00 01 */ li r3, 1 +/* 8017B2D4 00178234 4E 80 00 20 */ blr +lbl_8017B2D8: +/* 8017B2D8 00178238 38 60 00 00 */ li r3, 0 +/* 8017B2DC 0017823C 4E 80 00 20 */ blr + +.global PreventFallingCameraPitch__7CPlayerFv +PreventFallingCameraPitch__7CPlayerFv: +/* 8017B2E0 00178240 C0 22 A2 30 */ lfs f1, lbl_805ABF50@sda21(r2) +/* 8017B2E4 00178244 38 00 00 01 */ li r0, 1 +/* 8017B2E8 00178248 C0 02 A2 84 */ lfs f0, lbl_805ABFA4@sda21(r2) +/* 8017B2EC 0017824C D0 23 02 94 */ stfs f1, 0x294(r3) +/* 8017B2F0 00178250 D0 03 02 9C */ stfs f0, 0x29c(r3) +/* 8017B2F4 00178254 98 03 02 A4 */ stb r0, 0x2a4(r3) +/* 8017B2F8 00178258 4E 80 00 20 */ blr + +.global OrbitCarcass__7CPlayerFR13CStateManager +OrbitCarcass__7CPlayerFR13CStateManager: +/* 8017B2FC 0017825C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8017B300 00178260 7C 08 02 A6 */ mflr r0 +/* 8017B304 00178264 90 01 00 14 */ stw r0, 0x14(r1) +/* 8017B308 00178268 80 03 03 04 */ lwz r0, 0x304(r3) +/* 8017B30C 0017826C 2C 00 00 01 */ cmpwi r0, 1 +/* 8017B310 00178270 40 82 00 18 */ bne lbl_8017B328 +/* 8017B314 00178274 38 00 00 02 */ li r0, 2 +/* 8017B318 00178278 7C 85 23 78 */ mr r5, r4 +/* 8017B31C 0017827C 90 03 03 08 */ stw r0, 0x308(r3) +/* 8017B320 00178280 38 80 00 03 */ li r4, 3 +/* 8017B324 00178284 48 00 01 71 */ bl SetOrbitState__7CPlayerFQ27CPlayer17EPlayerOrbitStateR13CStateManager +lbl_8017B328: +/* 8017B328 00178288 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8017B32C 0017828C 7C 08 03 A6 */ mtlr r0 +/* 8017B330 00178290 38 21 00 10 */ addi r1, r1, 0x10 +/* 8017B334 00178294 4E 80 00 20 */ blr + +.global OrbitPoint__7CPlayerFQ27CPlayer16EPlayerOrbitTypeR13CStateManager +OrbitPoint__7CPlayerFQ27CPlayer16EPlayerOrbitTypeR13CStateManager: +/* 8017B338 00178298 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8017B33C 0017829C 7C 08 02 A6 */ mflr r0 +/* 8017B340 001782A0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8017B344 001782A4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8017B348 001782A8 7C BF 2B 78 */ mr r31, r5 +/* 8017B34C 001782AC 93 C1 00 08 */ stw r30, 8(r1) +/* 8017B350 001782B0 7C 7E 1B 78 */ mr r30, r3 +/* 8017B354 001782B4 90 83 03 08 */ stw r4, 0x308(r3) +/* 8017B358 001782B8 38 80 00 02 */ li r4, 2 +/* 8017B35C 001782BC 48 00 01 39 */ bl SetOrbitState__7CPlayerFQ27CPlayer17EPlayerOrbitStateR13CStateManager +/* 8017B360 001782C0 80 1E 03 08 */ lwz r0, 0x308(r30) +/* 8017B364 001782C4 7F C3 F3 78 */ mr r3, r30 +/* 8017B368 001782C8 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) +/* 8017B36C 001782CC 7F E4 FB 78 */ mr r4, r31 +/* 8017B370 001782D0 54 00 10 3A */ slwi r0, r0, 2 +/* 8017B374 001782D4 7C A5 02 14 */ add r5, r5, r0 +/* 8017B378 001782D8 C0 25 01 64 */ lfs f1, 0x164(r5) +/* 8017B37C 001782DC 48 00 05 9D */ bl SetOrbitPosition__7CPlayerFfR13CStateManager +/* 8017B380 001782E0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8017B384 001782E4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8017B388 001782E8 83 C1 00 08 */ lwz r30, 8(r1) +/* 8017B38C 001782EC 7C 08 03 A6 */ mtlr r0 +/* 8017B390 001782F0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8017B394 001782F4 4E 80 00 20 */ blr + +.global CalculateOrbitZBasedDistance__7CPlayerF16EPlayerOrbitType +CalculateOrbitZBasedDistance__7CPlayerF16EPlayerOrbitType: +/* 8017B398 001782F8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8017B39C 001782FC 7C 08 02 A6 */ mflr r0 +/* 8017B3A0 00178300 90 01 00 34 */ stw r0, 0x34(r1) +/* 8017B3A4 00178304 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 8017B3A8 00178308 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 8017B3AC 0017830C C0 83 00 60 */ lfs f4, 0x60(r3) +/* 8017B3B0 00178310 54 80 10 3A */ slwi r0, r4, 2 +/* 8017B3B4 00178314 C0 03 03 1C */ lfs f0, 0x31c(r3) +/* 8017B3B8 00178318 38 81 00 08 */ addi r4, r1, 8 +/* 8017B3BC 0017831C 80 CD A1 18 */ lwz r6, gpTweakPlayer@sda21(r13) +/* 8017B3C0 00178320 38 A2 A2 88 */ addi r5, r2, lbl_805ABFA8@sda21 +/* 8017B3C4 00178324 EC 20 20 28 */ fsubs f1, f0, f4 +/* 8017B3C8 00178328 C0 63 00 50 */ lfs f3, 0x50(r3) +/* 8017B3CC 0017832C C0 43 00 40 */ lfs f2, 0x40(r3) +/* 8017B3D0 00178330 7C C6 02 14 */ add r6, r6, r0 +/* 8017B3D4 00178334 C0 02 A2 8C */ lfs f0, lbl_805ABFAC@sda21(r2) +/* 8017B3D8 00178338 38 6D 8E 78 */ addi r3, r13, lbl_805A7A38@sda21 +/* 8017B3DC 0017833C FC 20 0A 10 */ fabs f1, f1 +/* 8017B3E0 00178340 C3 E6 01 58 */ lfs f31, 0x158(r6) +/* 8017B3E4 00178344 D0 41 00 0C */ stfs f2, 0xc(r1) +/* 8017B3E8 00178348 FC 20 08 18 */ frsp f1, f1 +/* 8017B3EC 0017834C D0 61 00 10 */ stfs f3, 0x10(r1) +/* 8017B3F0 00178350 D0 81 00 14 */ stfs f4, 0x14(r1) +/* 8017B3F4 00178354 EC 01 00 24 */ fdivs f0, f1, f0 +/* 8017B3F8 00178358 D0 01 00 08 */ stfs f0, 8(r1) +/* 8017B3FC 0017835C 4B E9 0E B9 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8017B400 00178360 C0 03 00 00 */ lfs f0, 0(r3) +/* 8017B404 00178364 EF FF 00 32 */ fmuls f31, f31, f0 +/* 8017B408 00178368 FC 20 F8 90 */ fmr f1, f31 +/* 8017B40C 0017836C E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 8017B410 00178370 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8017B414 00178374 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 8017B418 00178378 7C 08 03 A6 */ mtlr r0 +/* 8017B41C 0017837C 38 21 00 30 */ addi r1, r1, 0x30 +/* 8017B420 00178380 4E 80 00 20 */ blr + +.global GetHUDOrbitTargetPosition__7CPlayerCFv +GetHUDOrbitTargetPosition__7CPlayerCFv: +/* 8017B424 00178384 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8017B428 00178388 7C 08 02 A6 */ mflr r0 +/* 8017B42C 0017838C 90 01 00 44 */ stw r0, 0x44(r1) +/* 8017B430 00178390 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8017B434 00178394 7C 9F 23 78 */ mr r31, r4 +/* 8017B438 00178398 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8017B43C 0017839C 7C 7E 1B 78 */ mr r30, r3 +/* 8017B440 001783A0 38 61 00 08 */ addi r3, r1, 8 +/* 8017B444 001783A4 80 84 07 6C */ lwz r4, 0x76c(r4) +/* 8017B448 001783A8 4B F6 E9 5D */ bl GetCameraBobTransformation__16CPlayerCameraBobCFv +/* 8017B44C 001783AC C0 3F 03 14 */ lfs f1, 0x314(r31) +/* 8017B450 001783B0 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 8017B454 001783B4 C0 9F 03 18 */ lfs f4, 0x318(r31) +/* 8017B458 001783B8 C0 61 00 24 */ lfs f3, 0x24(r1) +/* 8017B45C 001783BC EC 01 00 2A */ fadds f0, f1, f0 +/* 8017B460 001783C0 C0 5F 03 1C */ lfs f2, 0x31c(r31) +/* 8017B464 001783C4 C0 21 00 34 */ lfs f1, 0x34(r1) +/* 8017B468 001783C8 EC 64 18 2A */ fadds f3, f4, f3 +/* 8017B46C 001783CC D0 1E 00 00 */ stfs f0, 0(r30) +/* 8017B470 001783D0 EC 02 08 2A */ fadds f0, f2, f1 +/* 8017B474 001783D4 D0 7E 00 04 */ stfs f3, 4(r30) +/* 8017B478 001783D8 D0 1E 00 08 */ stfs f0, 8(r30) +/* 8017B47C 001783DC 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8017B480 001783E0 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8017B484 001783E4 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8017B488 001783E8 7C 08 03 A6 */ mtlr r0 +/* 8017B48C 001783EC 38 21 00 40 */ addi r1, r1, 0x40 +/* 8017B490 001783F0 4E 80 00 20 */ blr + +.global SetOrbitState__7CPlayerFQ27CPlayer17EPlayerOrbitStateR13CStateManager +SetOrbitState__7CPlayerFQ27CPlayer17EPlayerOrbitStateR13CStateManager: +/* 8017B494 001783F4 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8017B498 001783F8 7C 08 02 A6 */ mflr r0 +/* 8017B49C 001783FC 90 01 00 44 */ stw r0, 0x44(r1) +/* 8017B4A0 00178400 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8017B4A4 00178404 7C BF 2B 78 */ mr r31, r5 +/* 8017B4A8 00178408 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8017B4AC 0017840C 7C 7E 1B 78 */ mr r30, r3 +/* 8017B4B0 00178410 90 83 03 04 */ stw r4, 0x304(r3) +/* 8017B4B4 00178414 80 03 03 04 */ lwz r0, 0x304(r3) +/* 8017B4B8 00178418 80 85 08 70 */ lwz r4, 0x870(r5) +/* 8017B4BC 0017841C 2C 00 00 02 */ cmpwi r0, 2 +/* 8017B4C0 00178420 80 84 00 7C */ lwz r4, 0x7c(r4) +/* 8017B4C4 00178424 41 82 00 F4 */ beq lbl_8017B5B8 +/* 8017B4C8 00178428 40 80 00 14 */ bge lbl_8017B4DC +/* 8017B4CC 0017842C 2C 00 00 00 */ cmpwi r0, 0 +/* 8017B4D0 00178430 41 82 00 B4 */ beq lbl_8017B584 +/* 8017B4D4 00178434 40 80 00 14 */ bge lbl_8017B4E8 +/* 8017B4D8 00178438 48 00 00 FC */ b lbl_8017B5D4 +lbl_8017B4DC: +/* 8017B4DC 0017843C 2C 00 00 04 */ cmpwi r0, 4 +/* 8017B4E0 00178440 40 80 00 F4 */ bge lbl_8017B5D4 +/* 8017B4E4 00178444 48 00 00 10 */ b lbl_8017B4F4 +lbl_8017B4E8: +/* 8017B4E8 00178448 38 00 00 00 */ li r0, 0 +/* 8017B4EC 0017844C 98 04 01 8C */ stb r0, 0x18c(r4) +/* 8017B4F0 00178450 48 00 00 E4 */ b lbl_8017B5D4 +lbl_8017B4F4: +/* 8017B4F4 00178454 38 00 00 01 */ li r0, 1 +/* 8017B4F8 00178458 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017B4FC 0017845C 98 04 01 8C */ stb r0, 0x18c(r4) +/* 8017B500 00178460 38 61 00 20 */ addi r3, r1, 0x20 +/* 8017B504 00178464 C0 5E 03 1C */ lfs f2, 0x31c(r30) +/* 8017B508 00178468 C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 8017B50C 0017846C C0 9E 03 18 */ lfs f4, 0x318(r30) +/* 8017B510 00178470 C0 7E 00 50 */ lfs f3, 0x50(r30) +/* 8017B514 00178474 EC A2 08 28 */ fsubs f5, f2, f1 +/* 8017B518 00178478 C0 5E 03 14 */ lfs f2, 0x314(r30) +/* 8017B51C 0017847C C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 8017B520 00178480 EC 64 18 28 */ fsubs f3, f4, f3 +/* 8017B524 00178484 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8017B528 00178488 D0 A1 00 28 */ stfs f5, 0x28(r1) +/* 8017B52C 0017848C D0 61 00 24 */ stfs f3, 0x24(r1) +/* 8017B530 00178490 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 8017B534 00178494 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 8017B538 00178498 48 19 91 C1 */ bl CanBeNormalized__9CVector3fCFv +/* 8017B53C 0017849C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017B540 001784A0 41 82 00 14 */ beq lbl_8017B554 +/* 8017B544 001784A4 38 61 00 20 */ addi r3, r1, 0x20 +/* 8017B548 001784A8 48 19 93 71 */ bl Magnitude__9CVector3fCFv +/* 8017B54C 001784AC D0 3E 03 40 */ stfs f1, 0x340(r30) +/* 8017B550 001784B0 48 00 00 0C */ b lbl_8017B55C +lbl_8017B554: +/* 8017B554 001784B4 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017B558 001784B8 D0 1E 03 40 */ stfs f0, 0x340(r30) +lbl_8017B55C: +/* 8017B55C 001784BC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017B560 001784C0 7F C3 F3 78 */ mr r3, r30 +/* 8017B564 001784C4 7F E5 FB 78 */ mr r5, r31 +/* 8017B568 001784C8 38 81 00 1C */ addi r4, r1, 0x1c +/* 8017B56C 001784CC B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8017B570 001784D0 48 00 00 7D */ bl SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager +/* 8017B574 001784D4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017B578 001784D8 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8017B57C 001784DC B0 1E 03 3C */ sth r0, 0x33c(r30) +/* 8017B580 001784E0 48 00 00 54 */ b lbl_8017B5D4 +lbl_8017B584: +/* 8017B584 001784E4 80 CD A1 18 */ lwz r6, gpTweakPlayer@sda21(r13) +/* 8017B588 001784E8 38 81 00 14 */ addi r4, r1, 0x14 +/* 8017B58C 001784EC C0 02 A2 90 */ lfs f0, lbl_805ABFB0@sda21(r2) +/* 8017B590 001784F0 C0 26 01 80 */ lfs f1, 0x180(r6) +/* 8017B594 001784F4 D0 3E 03 2C */ stfs f1, 0x32c(r30) +/* 8017B598 001784F8 D0 1E 03 2C */ stfs f0, 0x32c(r30) +/* 8017B59C 001784FC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017B5A0 00178500 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8017B5A4 00178504 48 00 00 49 */ bl SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager +/* 8017B5A8 00178508 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017B5AC 0017850C B0 01 00 10 */ sth r0, 0x10(r1) +/* 8017B5B0 00178510 B0 1E 03 3C */ sth r0, 0x33c(r30) +/* 8017B5B4 00178514 48 00 00 20 */ b lbl_8017B5D4 +lbl_8017B5B8: +/* 8017B5B8 00178518 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017B5BC 0017851C 38 81 00 0C */ addi r4, r1, 0xc +/* 8017B5C0 00178520 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8017B5C4 00178524 48 00 00 29 */ bl SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager +/* 8017B5C8 00178528 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017B5CC 0017852C B0 01 00 08 */ sth r0, 8(r1) +/* 8017B5D0 00178530 B0 1E 03 3C */ sth r0, 0x33c(r30) +lbl_8017B5D4: +/* 8017B5D4 00178534 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8017B5D8 00178538 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8017B5DC 0017853C 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8017B5E0 00178540 7C 08 03 A6 */ mtlr r0 +/* 8017B5E4 00178544 38 21 00 40 */ addi r1, r1, 0x40 +/* 8017B5E8 00178548 4E 80 00 20 */ blr + +.global SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager +SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager: +/* 8017B5EC 0017854C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8017B5F0 00178550 7C 08 02 A6 */ mflr r0 +/* 8017B5F4 00178554 90 01 00 54 */ stw r0, 0x54(r1) +/* 8017B5F8 00178558 BF 41 00 38 */ stmw r26, 0x38(r1) +/* 8017B5FC 0017855C 7C 9E 23 78 */ mr r30, r4 +/* 8017B600 00178560 7C 7D 1B 78 */ mr r29, r3 +/* 8017B604 00178564 7C BF 2B 78 */ mr r31, r5 +/* 8017B608 00178568 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017B60C 0017856C A0 84 00 00 */ lhz r4, 0(r4) +/* 8017B610 00178570 7C 04 00 40 */ cmplw r4, r0 +/* 8017B614 00178574 41 82 00 CC */ beq lbl_8017B6E0 +/* 8017B618 00178578 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8017B61C 0017857C 7F E3 FB 78 */ mr r3, r31 +/* 8017B620 00178580 38 81 00 14 */ addi r4, r1, 0x14 +/* 8017B624 00178584 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8017B628 00178588 4B ED 0F 7D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017B62C 0017858C 7C 64 1B 78 */ mr r4, r3 +/* 8017B630 00178590 38 61 00 2C */ addi r3, r1, 0x2c +/* 8017B634 00178594 4B F3 14 29 */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" +/* 8017B638 00178598 83 63 00 04 */ lwz r27, 4(r3) +/* 8017B63C 0017859C 7F E3 FB 78 */ mr r3, r31 +/* 8017B640 001785A0 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8017B644 001785A4 38 81 00 10 */ addi r4, r1, 0x10 +/* 8017B648 001785A8 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8017B64C 001785AC 4B ED 0F 59 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017B650 001785B0 7C 64 1B 78 */ mr r4, r3 +/* 8017B654 001785B4 38 61 00 24 */ addi r3, r1, 0x24 +/* 8017B658 001785B8 4B F2 A5 B9 */ bl "__ct__31TCastToPtr<17CWallCrawlerSwarm>FP7CEntity" +/* 8017B65C 001785BC 83 43 00 04 */ lwz r26, 4(r3) +/* 8017B660 001785C0 7F E3 FB 78 */ mr r3, r31 +/* 8017B664 001785C4 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8017B668 001785C8 38 81 00 0C */ addi r4, r1, 0xc +/* 8017B66C 001785CC B0 01 00 0C */ sth r0, 0xc(r1) +/* 8017B670 001785D0 4B ED 0F 35 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017B674 001785D4 7C 64 1B 78 */ mr r4, r3 +/* 8017B678 001785D8 38 61 00 18 */ addi r3, r1, 0x18 +/* 8017B67C 001785DC 4B F2 9D 21 */ bl sub_800a539c +/* 8017B680 001785E0 4B F2 9C F1 */ bl "CastTo<22CThardusRockProjectile>__10CPatternedFP7CEntity" +/* 8017B684 001785E4 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8017B688 001785E8 7C 7C 1B 78 */ mr r28, r3 +/* 8017B68C 001785EC 7F E3 FB 78 */ mr r3, r31 +/* 8017B690 001785F0 38 81 00 08 */ addi r4, r1, 8 +/* 8017B694 001785F4 B0 01 00 08 */ sth r0, 8(r1) +/* 8017B698 001785F8 4B ED 0F 0D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017B69C 001785FC 7C 64 1B 78 */ mr r4, r3 +/* 8017B6A0 00178600 38 61 00 1C */ addi r3, r1, 0x1c +/* 8017B6A4 00178604 4B F2 E1 11 */ bl "__ct__30TCastToPtr<16CScriptGunTurret>FP7CEntity" +/* 8017B6A8 00178608 28 1B 00 00 */ cmplwi r27, 0 +/* 8017B6AC 0017860C 80 03 00 04 */ lwz r0, 4(r3) +/* 8017B6B0 00178610 40 82 00 1C */ bne lbl_8017B6CC +/* 8017B6B4 00178614 28 1A 00 00 */ cmplwi r26, 0 +/* 8017B6B8 00178618 40 82 00 14 */ bne lbl_8017B6CC +/* 8017B6BC 0017861C 28 1C 00 00 */ cmplwi r28, 0 +/* 8017B6C0 00178620 40 82 00 0C */ bne lbl_8017B6CC +/* 8017B6C4 00178624 28 00 00 00 */ cmplwi r0, 0 +/* 8017B6C8 00178628 41 82 00 10 */ beq lbl_8017B6D8 +lbl_8017B6CC: +/* 8017B6CC 0017862C 38 00 00 01 */ li r0, 1 +/* 8017B6D0 00178630 98 1D 03 94 */ stb r0, 0x394(r29) +/* 8017B6D4 00178634 48 00 00 0C */ b lbl_8017B6E0 +lbl_8017B6D8: +/* 8017B6D8 00178638 38 00 00 00 */ li r0, 0 +/* 8017B6DC 0017863C 98 1D 03 94 */ stb r0, 0x394(r29) +lbl_8017B6E0: +/* 8017B6E0 00178640 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8017B6E4 00178644 B0 1D 03 10 */ sth r0, 0x310(r29) +/* 8017B6E8 00178648 A0 7D 03 10 */ lhz r3, 0x310(r29) +/* 8017B6EC 0017864C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017B6F0 00178650 7C 03 00 40 */ cmplw r3, r0 +/* 8017B6F4 00178654 40 82 00 0C */ bne lbl_8017B700 +/* 8017B6F8 00178658 38 00 00 00 */ li r0, 0 +/* 8017B6FC 0017865C 98 1D 03 74 */ stb r0, 0x374(r29) +lbl_8017B700: +/* 8017B700 00178660 BB 41 00 38 */ lmw r26, 0x38(r1) +/* 8017B704 00178664 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8017B708 00178668 7C 08 03 A6 */ mtlr r0 +/* 8017B70C 0017866C 38 21 00 50 */ addi r1, r1, 0x50 +/* 8017B710 00178670 4E 80 00 20 */ blr + +.global UpdateOrbitPosition__7CPlayerFfR13CStateManager +UpdateOrbitPosition__7CPlayerFfR13CStateManager: +/* 8017B714 00178674 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8017B718 00178678 7C 08 02 A6 */ mflr r0 +/* 8017B71C 0017867C 90 01 00 34 */ stw r0, 0x34(r1) +/* 8017B720 00178680 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8017B724 00178684 7C 9F 23 78 */ mr r31, r4 +/* 8017B728 00178688 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8017B72C 0017868C 7C 7E 1B 78 */ mr r30, r3 +/* 8017B730 00178690 80 03 03 04 */ lwz r0, 0x304(r3) +/* 8017B734 00178694 2C 00 00 01 */ cmpwi r0, 1 +/* 8017B738 00178698 41 82 00 24 */ beq lbl_8017B75C +/* 8017B73C 0017869C 40 80 00 08 */ bge lbl_8017B744 +/* 8017B740 001786A0 48 00 00 8C */ b lbl_8017B7CC +lbl_8017B744: +/* 8017B744 001786A4 2C 00 00 06 */ cmpwi r0, 6 +/* 8017B748 001786A8 40 80 00 84 */ bge lbl_8017B7CC +/* 8017B74C 001786AC 2C 00 00 04 */ cmpwi r0, 4 +/* 8017B750 001786B0 40 80 00 0C */ bge lbl_8017B75C +/* 8017B754 001786B4 48 00 01 C5 */ bl SetOrbitPosition__7CPlayerFfR13CStateManager +/* 8017B758 001786B8 48 00 00 74 */ b lbl_8017B7CC +lbl_8017B75C: +/* 8017B75C 001786BC A0 1E 03 10 */ lhz r0, 0x310(r30) +/* 8017B760 001786C0 7F E3 FB 78 */ mr r3, r31 +/* 8017B764 001786C4 38 81 00 0C */ addi r4, r1, 0xc +/* 8017B768 001786C8 B0 01 00 08 */ sth r0, 8(r1) +/* 8017B76C 001786CC B0 01 00 0C */ sth r0, 0xc(r1) +/* 8017B770 001786D0 4B ED 0E 35 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017B774 001786D4 7C 64 1B 78 */ mr r4, r3 +/* 8017B778 001786D8 38 61 00 10 */ addi r3, r1, 0x10 +/* 8017B77C 001786DC 4B F3 45 15 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8017B780 001786E0 80 83 00 04 */ lwz r4, 4(r3) +/* 8017B784 001786E4 28 04 00 00 */ cmplwi r4, 0 +/* 8017B788 001786E8 41 82 00 44 */ beq lbl_8017B7CC +/* 8017B78C 001786EC A0 7E 03 10 */ lhz r3, 0x310(r30) +/* 8017B790 001786F0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017B794 001786F4 7C 03 00 40 */ cmplw r3, r0 +/* 8017B798 001786F8 41 82 00 34 */ beq lbl_8017B7CC +/* 8017B79C 001786FC 81 84 00 00 */ lwz r12, 0(r4) +/* 8017B7A0 00178700 7F E5 FB 78 */ mr r5, r31 +/* 8017B7A4 00178704 38 61 00 18 */ addi r3, r1, 0x18 +/* 8017B7A8 00178708 81 8C 00 48 */ lwz r12, 0x48(r12) +/* 8017B7AC 0017870C 7D 89 03 A6 */ mtctr r12 +/* 8017B7B0 00178710 4E 80 04 21 */ bctrl +/* 8017B7B4 00178714 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 8017B7B8 00178718 D0 1E 03 14 */ stfs f0, 0x314(r30) +/* 8017B7BC 0017871C C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 8017B7C0 00178720 D0 1E 03 18 */ stfs f0, 0x318(r30) +/* 8017B7C4 00178724 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 8017B7C8 00178728 D0 1E 03 1C */ stfs f0, 0x31c(r30) +lbl_8017B7CC: +/* 8017B7CC 0017872C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8017B7D0 00178730 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8017B7D4 00178734 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8017B7D8 00178738 7C 08 03 A6 */ mtlr r0 +/* 8017B7DC 0017873C 38 21 00 30 */ addi r1, r1, 0x30 +/* 8017B7E0 00178740 4E 80 00 20 */ blr + +.global UpdateOrbitZPosition__7CPlayerFv +UpdateOrbitZPosition__7CPlayerFv: +/* 8017B7E4 00178744 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8017B7E8 00178748 7C 08 02 A6 */ mflr r0 +/* 8017B7EC 0017874C 90 01 00 34 */ stw r0, 0x34(r1) +/* 8017B7F0 00178750 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 8017B7F4 00178754 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 8017B7F8 00178758 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8017B7FC 0017875C 7C 7F 1B 78 */ mr r31, r3 +/* 8017B800 00178760 80 03 03 04 */ lwz r0, 0x304(r3) +/* 8017B804 00178764 2C 00 00 02 */ cmpwi r0, 2 +/* 8017B808 00178768 41 82 00 08 */ beq lbl_8017B810 +/* 8017B80C 0017876C 48 00 00 4C */ b lbl_8017B858 +lbl_8017B810: +/* 8017B810 00178770 C0 1F 03 28 */ lfs f0, 0x328(r31) +/* 8017B814 00178774 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) +/* 8017B818 00178778 FC 20 02 10 */ fabs f1, f0 +/* 8017B81C 0017877C C0 04 01 EC */ lfs f0, 0x1ec(r4) +/* 8017B820 00178780 FC 20 08 18 */ frsp f1, f1 +/* 8017B824 00178784 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017B828 00178788 40 80 00 30 */ bge lbl_8017B858 +/* 8017B82C 0017878C C3 FF 00 60 */ lfs f31, 0x60(r31) +/* 8017B830 00178790 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 8017B834 00178794 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8017B838 00178798 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 8017B83C 0017879C D0 01 00 08 */ stfs f0, 8(r1) +/* 8017B840 001787A0 D3 E1 00 10 */ stfs f31, 0x10(r1) +/* 8017B844 001787A4 48 10 95 9D */ bl GetEyeHeight__7CPlayerCFv +/* 8017B848 001787A8 EC 3F 08 2A */ fadds f1, f31, f1 +/* 8017B84C 001787AC C0 1F 03 28 */ lfs f0, 0x328(r31) +/* 8017B850 001787B0 EC 00 08 2A */ fadds f0, f0, f1 +/* 8017B854 001787B4 D0 1F 03 1C */ stfs f0, 0x31c(r31) +lbl_8017B858: +/* 8017B858 001787B8 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 8017B85C 001787BC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8017B860 001787C0 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 8017B864 001787C4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8017B868 001787C8 7C 08 03 A6 */ mtlr r0 +/* 8017B86C 001787CC 38 21 00 30 */ addi r1, r1, 0x30 +/* 8017B870 001787D0 4E 80 00 20 */ blr + +.global UpdateOrbitFixedPosition__7CPlayerFv +UpdateOrbitFixedPosition__7CPlayerFv: +/* 8017B874 001787D4 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 8017B878 001787D8 7C 08 02 A6 */ mflr r0 +/* 8017B87C 001787DC 90 01 00 64 */ stw r0, 0x64(r1) +/* 8017B880 001787E0 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 8017B884 001787E4 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 8017B888 001787E8 DB C1 00 40 */ stfd f30, 0x40(r1) +/* 8017B88C 001787EC F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 +/* 8017B890 001787F0 DB A1 00 30 */ stfd f29, 0x30(r1) +/* 8017B894 001787F4 F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0 +/* 8017B898 001787F8 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8017B89C 001787FC 7C 7F 1B 78 */ mr r31, r3 +/* 8017B8A0 00178800 38 61 00 14 */ addi r3, r1, 0x14 +/* 8017B8A4 00178804 7F E4 FB 78 */ mr r4, r31 +/* 8017B8A8 00178808 48 10 94 D5 */ bl GetEyePosition__7CPlayerCFv +/* 8017B8AC 0017880C C3 E1 00 14 */ lfs f31, 0x14(r1) +/* 8017B8B0 00178810 38 61 00 08 */ addi r3, r1, 8 +/* 8017B8B4 00178814 C3 C1 00 18 */ lfs f30, 0x18(r1) +/* 8017B8B8 00178818 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8017B8BC 0017881C C3 A1 00 1C */ lfs f29, 0x1c(r1) +/* 8017B8C0 00178820 38 BF 03 20 */ addi r5, r31, 0x320 +/* 8017B8C4 00178824 48 19 71 BD */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 8017B8C8 00178828 C0 01 00 08 */ lfs f0, 8(r1) +/* 8017B8CC 0017882C C0 41 00 0C */ lfs f2, 0xc(r1) +/* 8017B8D0 00178830 EC 1F 00 2A */ fadds f0, f31, f0 +/* 8017B8D4 00178834 C0 21 00 10 */ lfs f1, 0x10(r1) +/* 8017B8D8 00178838 EC 5E 10 2A */ fadds f2, f30, f2 +/* 8017B8DC 0017883C EC 3D 08 2A */ fadds f1, f29, f1 +/* 8017B8E0 00178840 D0 1F 03 14 */ stfs f0, 0x314(r31) +/* 8017B8E4 00178844 D0 5F 03 18 */ stfs f2, 0x318(r31) +/* 8017B8E8 00178848 D0 3F 03 1C */ stfs f1, 0x31c(r31) +/* 8017B8EC 0017884C E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 8017B8F0 00178850 CB E1 00 50 */ lfd f31, 0x50(r1) +/* 8017B8F4 00178854 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 +/* 8017B8F8 00178858 CB C1 00 40 */ lfd f30, 0x40(r1) +/* 8017B8FC 0017885C E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0 +/* 8017B900 00178860 CB A1 00 30 */ lfd f29, 0x30(r1) +/* 8017B904 00178864 80 01 00 64 */ lwz r0, 0x64(r1) +/* 8017B908 00178868 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8017B90C 0017886C 7C 08 03 A6 */ mtlr r0 +/* 8017B910 00178870 38 21 00 60 */ addi r1, r1, 0x60 +/* 8017B914 00178874 4E 80 00 20 */ blr + +.global SetOrbitPosition__7CPlayerFfR13CStateManager +SetOrbitPosition__7CPlayerFfR13CStateManager: +/* 8017B918 00178878 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 8017B91C 0017887C 7C 08 02 A6 */ mflr r0 +/* 8017B920 00178880 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 8017B924 00178884 DB E1 00 B0 */ stfd f31, 0xb0(r1) +/* 8017B928 00178888 F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 +/* 8017B92C 0017888C DB C1 00 A0 */ stfd f30, 0xa0(r1) +/* 8017B930 00178890 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 +/* 8017B934 00178894 DB A1 00 90 */ stfd f29, 0x90(r1) +/* 8017B938 00178898 F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0 +/* 8017B93C 0017889C DB 81 00 80 */ stfd f28, 0x80(r1) +/* 8017B940 001788A0 F3 81 00 88 */ psq_st f28, 136(r1), 0, qr0 +/* 8017B944 001788A4 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 8017B948 001788A8 7C 7F 1B 78 */ mr r31, r3 +/* 8017B94C 001788AC FF E0 08 90 */ fmr f31, f1 +/* 8017B950 001788B0 4B E9 D7 7D */ bl GetFirstPersonCameraTransform__7CPlayerCFR13CStateManager +/* 8017B954 001788B4 7C 64 1B 78 */ mr r4, r3 +/* 8017B958 001788B8 38 61 00 44 */ addi r3, r1, 0x44 +/* 8017B95C 001788BC 48 19 72 19 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8017B960 001788C0 80 1F 03 04 */ lwz r0, 0x304(r31) +/* 8017B964 001788C4 2C 00 00 02 */ cmpwi r0, 2 +/* 8017B968 001788C8 40 82 00 1C */ bne lbl_8017B984 +/* 8017B96C 001788CC 80 1F 03 0C */ lwz r0, 0x30c(r31) +/* 8017B970 001788D0 2C 00 00 07 */ cmpwi r0, 7 +/* 8017B974 001788D4 40 82 00 10 */ bne lbl_8017B984 +/* 8017B978 001788D8 38 61 00 44 */ addi r3, r1, 0x44 +/* 8017B97C 001788DC 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8017B980 001788E0 48 19 71 C1 */ bl __as__12CTransform4fFRC12CTransform4f +lbl_8017B984: +/* 8017B984 001788E4 C3 C1 00 68 */ lfs f30, 0x68(r1) +/* 8017B988 001788E8 38 61 00 20 */ addi r3, r1, 0x20 +/* 8017B98C 001788EC C3 A1 00 58 */ lfs f29, 0x58(r1) +/* 8017B990 001788F0 38 81 00 38 */ addi r4, r1, 0x38 +/* 8017B994 001788F4 C3 81 00 48 */ lfs f28, 0x48(r1) +/* 8017B998 001788F8 D3 C1 00 40 */ stfs f30, 0x40(r1) +/* 8017B99C 001788FC C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017B9A0 00178900 D3 81 00 38 */ stfs f28, 0x38(r1) +/* 8017B9A4 00178904 D3 A1 00 3C */ stfs f29, 0x3c(r1) +/* 8017B9A8 00178908 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 8017B9AC 0017890C 48 19 8E A5 */ bl AsNormalized__9CVector3fCFv +/* 8017B9B0 00178910 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 8017B9B4 00178914 C0 41 00 20 */ lfs f2, 0x20(r1) +/* 8017B9B8 00178918 EC 20 07 72 */ fmuls f1, f0, f29 +/* 8017B9BC 0017891C C0 61 00 28 */ lfs f3, 0x28(r1) +/* 8017B9C0 00178920 C8 02 A2 40 */ lfd f0, lbl_805ABF60@sda21(r2) +/* 8017B9C4 00178924 EC 22 0F 3A */ fmadds f1, f2, f28, f1 +/* 8017B9C8 00178928 EC 43 0F BA */ fmadds f2, f3, f30, f1 +/* 8017B9CC 0017892C FC 20 12 10 */ fabs f1, f2 +/* 8017B9D0 00178930 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017B9D4 00178934 40 81 00 14 */ ble lbl_8017B9E8 +/* 8017B9D8 00178938 C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) +/* 8017B9DC 0017893C C0 22 A2 4C */ lfs f1, lbl_805ABF6C@sda21(r2) +/* 8017B9E0 00178940 FC 02 00 6E */ fsel f0, f2, f1, f0 +/* 8017B9E4 00178944 EC 41 00 32 */ fmuls f2, f1, f0 +lbl_8017B9E8: +/* 8017B9E8 00178948 EC 1F 10 24 */ fdivs f0, f31, f2 +/* 8017B9EC 0017894C C0 22 A2 30 */ lfs f1, lbl_805ABF50@sda21(r2) +/* 8017B9F0 00178950 38 61 00 14 */ addi r3, r1, 0x14 +/* 8017B9F4 00178954 38 81 00 44 */ addi r4, r1, 0x44 +/* 8017B9F8 00178958 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 8017B9FC 0017895C 38 A1 00 2C */ addi r5, r1, 0x2c +/* 8017BA00 00178960 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 8017BA04 00178964 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 8017BA08 00178968 48 19 70 79 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 8017BA0C 0017896C C0 21 00 50 */ lfs f1, 0x50(r1) +/* 8017BA10 00178970 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 8017BA14 00178974 C0 81 00 60 */ lfs f4, 0x60(r1) +/* 8017BA18 00178978 C0 61 00 18 */ lfs f3, 0x18(r1) +/* 8017BA1C 0017897C EC 21 00 2A */ fadds f1, f1, f0 +/* 8017BA20 00178980 C0 A1 00 70 */ lfs f5, 0x70(r1) +/* 8017BA24 00178984 C0 41 00 1C */ lfs f2, 0x1c(r1) +/* 8017BA28 00178988 EC 64 18 2A */ fadds f3, f4, f3 +/* 8017BA2C 0017898C C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017BA30 00178990 D0 3F 03 14 */ stfs f1, 0x314(r31) +/* 8017BA34 00178994 EC 25 10 2A */ fadds f1, f5, f2 +/* 8017BA38 00178998 D0 7F 03 18 */ stfs f3, 0x318(r31) +/* 8017BA3C 0017899C D0 3F 03 1C */ stfs f1, 0x31c(r31) +/* 8017BA40 001789A0 C0 81 00 50 */ lfs f4, 0x50(r1) +/* 8017BA44 001789A4 C0 61 00 60 */ lfs f3, 0x60(r1) +/* 8017BA48 001789A8 C0 41 00 70 */ lfs f2, 0x70(r1) +/* 8017BA4C 001789AC C0 3F 03 1C */ lfs f1, 0x31c(r31) +/* 8017BA50 001789B0 D0 81 00 08 */ stfs f4, 8(r1) +/* 8017BA54 001789B4 EC 21 10 28 */ fsubs f1, f1, f2 +/* 8017BA58 001789B8 D0 1F 03 20 */ stfs f0, 0x320(r31) +/* 8017BA5C 001789BC D3 FF 03 24 */ stfs f31, 0x324(r31) +/* 8017BA60 001789C0 D0 61 00 0C */ stfs f3, 0xc(r1) +/* 8017BA64 001789C4 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 8017BA68 001789C8 D0 3F 03 28 */ stfs f1, 0x328(r31) +/* 8017BA6C 001789CC E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 +/* 8017BA70 001789D0 CB E1 00 B0 */ lfd f31, 0xb0(r1) +/* 8017BA74 001789D4 E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 +/* 8017BA78 001789D8 CB C1 00 A0 */ lfd f30, 0xa0(r1) +/* 8017BA7C 001789DC E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0 +/* 8017BA80 001789E0 CB A1 00 90 */ lfd f29, 0x90(r1) +/* 8017BA84 001789E4 E3 81 00 88 */ psq_l f28, 136(r1), 0, qr0 +/* 8017BA88 001789E8 CB 81 00 80 */ lfd f28, 0x80(r1) +/* 8017BA8C 001789EC 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 8017BA90 001789F0 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 8017BA94 001789F4 7C 08 03 A6 */ mtlr r0 +/* 8017BA98 001789F8 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 8017BA9C 001789FC 4E 80 00 20 */ blr + +.global UpdateAimTarget__7CPlayerFR13CStateManager +UpdateAimTarget__7CPlayerFR13CStateManager: +/* 8017BAA0 00178A00 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 8017BAA4 00178A04 7C 08 02 A6 */ mflr r0 +/* 8017BAA8 00178A08 90 01 00 84 */ stw r0, 0x84(r1) +/* 8017BAAC 00178A0C 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 8017BAB0 00178A10 93 C1 00 78 */ stw r30, 0x78(r1) +/* 8017BAB4 00178A14 93 A1 00 74 */ stw r29, 0x74(r1) +/* 8017BAB8 00178A18 7C 9D 23 78 */ mr r29, r4 +/* 8017BABC 00178A1C 7F A5 EB 78 */ mr r5, r29 +/* 8017BAC0 00178A20 38 81 00 5C */ addi r4, r1, 0x5c +/* 8017BAC4 00178A24 93 81 00 70 */ stw r28, 0x70(r1) +/* 8017BAC8 00178A28 7C 7C 1B 78 */ mr r28, r3 +/* 8017BACC 00178A2C A0 03 03 F4 */ lhz r0, 0x3f4(r3) +/* 8017BAD0 00178A30 B0 01 00 58 */ sth r0, 0x58(r1) +/* 8017BAD4 00178A34 B0 01 00 5C */ sth r0, 0x5c(r1) +/* 8017BAD8 00178A38 48 00 02 A9 */ bl ValidateAimTargetId__7CPlayerF9TUniqueIdR13CStateManager +/* 8017BADC 00178A3C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017BAE0 00178A40 40 82 00 18 */ bne lbl_8017BAF8 +/* 8017BAE4 00178A44 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017BAE8 00178A48 7F 83 E3 78 */ mr r3, r28 +/* 8017BAEC 00178A4C 38 81 00 54 */ addi r4, r1, 0x54 +/* 8017BAF0 00178A50 B0 01 00 54 */ sth r0, 0x54(r1) +/* 8017BAF4 00178A54 4B E9 E2 B1 */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId +lbl_8017BAF8: +/* 8017BAF8 00178A58 7F 83 E3 78 */ mr r3, r28 +/* 8017BAFC 00178A5C 4B E9 7D 4D */ bl GetCombatMode__7CPlayerCFv +/* 8017BB00 00178A60 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017BB04 00178A64 40 82 00 24 */ bne lbl_8017BB28 +/* 8017BB08 00178A68 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017BB0C 00178A6C 7F 83 E3 78 */ mr r3, r28 +/* 8017BB10 00178A70 38 81 00 50 */ addi r4, r1, 0x50 +/* 8017BB14 00178A74 B0 01 00 50 */ sth r0, 0x50(r1) +/* 8017BB18 00178A78 4B E9 E2 8D */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId +/* 8017BB1C 00178A7C C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017BB20 00178A80 D0 1C 04 8C */ stfs f0, 0x48c(r28) +/* 8017BB24 00178A84 48 00 02 10 */ b lbl_8017BD34 +lbl_8017BB28: +/* 8017BB28 00178A88 88 02 80 E0 */ lbz r0, lbl_805A9E00@sda21(r2) +/* 8017BB2C 00178A8C 28 00 00 00 */ cmplwi r0, 0 +/* 8017BB30 00178A90 40 82 00 80 */ bne lbl_8017BBB0 +/* 8017BB34 00178A94 88 02 80 E1 */ lbz r0, lbl_805A9E01@sda21(r2) +/* 8017BB38 00178A98 28 00 00 00 */ cmplwi r0, 0 +/* 8017BB3C 00178A9C 41 82 00 74 */ beq lbl_8017BBB0 +/* 8017BB40 00178AA0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017BB44 00178AA4 7F 83 E3 78 */ mr r3, r28 +/* 8017BB48 00178AA8 38 81 00 4C */ addi r4, r1, 0x4c +/* 8017BB4C 00178AAC B0 01 00 4C */ sth r0, 0x4c(r1) +/* 8017BB50 00178AB0 4B E9 E2 55 */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId +/* 8017BB54 00178AB4 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017BB58 00178AB8 D0 1C 04 8C */ stfs f0, 0x48c(r28) +/* 8017BB5C 00178ABC 80 1C 03 04 */ lwz r0, 0x304(r28) +/* 8017BB60 00178AC0 2C 00 00 01 */ cmpwi r0, 1 +/* 8017BB64 00178AC4 41 82 00 0C */ beq lbl_8017BB70 +/* 8017BB68 00178AC8 2C 00 00 04 */ cmpwi r0, 4 +/* 8017BB6C 00178ACC 40 82 01 C8 */ bne lbl_8017BD34 +lbl_8017BB70: +/* 8017BB70 00178AD0 A0 1C 03 10 */ lhz r0, 0x310(r28) +/* 8017BB74 00178AD4 7F 83 E3 78 */ mr r3, r28 +/* 8017BB78 00178AD8 7F A5 EB 78 */ mr r5, r29 +/* 8017BB7C 00178ADC 38 81 00 48 */ addi r4, r1, 0x48 +/* 8017BB80 00178AE0 B0 01 00 44 */ sth r0, 0x44(r1) +/* 8017BB84 00178AE4 B0 01 00 48 */ sth r0, 0x48(r1) +/* 8017BB88 00178AE8 48 00 34 F5 */ bl ValidateOrbitTargetId__7CPlayerCF9TUniqueIdR13CStateManager +/* 8017BB8C 00178AEC 2C 03 00 00 */ cmpwi r3, 0 +/* 8017BB90 00178AF0 40 82 01 A4 */ bne lbl_8017BD34 +/* 8017BB94 00178AF4 A0 1C 03 10 */ lhz r0, 0x310(r28) +/* 8017BB98 00178AF8 7F 83 E3 78 */ mr r3, r28 +/* 8017BB9C 00178AFC 38 81 00 40 */ addi r4, r1, 0x40 +/* 8017BBA0 00178B00 B0 01 00 3C */ sth r0, 0x3c(r1) +/* 8017BBA4 00178B04 B0 01 00 40 */ sth r0, 0x40(r1) +/* 8017BBA8 00178B08 4B E9 E1 FD */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId +/* 8017BBAC 00178B0C 48 00 01 88 */ b lbl_8017BD34 +lbl_8017BBB0: +/* 8017BBB0 00178B10 A0 1C 03 F4 */ lhz r0, 0x3f4(r28) +/* 8017BBB4 00178B14 7F A3 EB 78 */ mr r3, r29 +/* 8017BBB8 00178B18 38 81 00 38 */ addi r4, r1, 0x38 +/* 8017BBBC 00178B1C 3B E0 00 00 */ li r31, 0 +/* 8017BBC0 00178B20 B0 01 00 34 */ sth r0, 0x34(r1) +/* 8017BBC4 00178B24 B0 01 00 38 */ sth r0, 0x38(r1) +/* 8017BBC8 00178B28 4B ED 09 DD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017BBCC 00178B2C 7C 64 1B 78 */ mr r4, r3 +/* 8017BBD0 00178B30 38 61 00 60 */ addi r3, r1, 0x60 +/* 8017BBD4 00178B34 4B F3 40 BD */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8017BBD8 00178B38 80 83 00 04 */ lwz r4, 4(r3) +/* 8017BBDC 00178B3C 28 04 00 00 */ cmplwi r4, 0 +/* 8017BBE0 00178B40 7C 9E 23 78 */ mr r30, r4 +/* 8017BBE4 00178B44 41 82 00 30 */ beq lbl_8017BC14 +/* 8017BBE8 00178B48 80 64 00 68 */ lwz r3, 0x68(r4) +/* 8017BBEC 00178B4C 38 00 01 00 */ li r0, 0x100 +/* 8017BBF0 00178B50 80 A4 00 6C */ lwz r5, 0x6c(r4) +/* 8017BBF4 00178B54 38 80 00 00 */ li r4, 0 +/* 8017BBF8 00178B58 7C 60 00 38 */ and r0, r3, r0 +/* 8017BBFC 00178B5C 7C A3 20 38 */ and r3, r5, r4 +/* 8017BC00 00178B60 7C 63 22 78 */ xor r3, r3, r4 +/* 8017BC04 00178B64 7C 00 22 78 */ xor r0, r0, r4 +/* 8017BC08 00178B68 7C 60 03 79 */ or. r0, r3, r0 +/* 8017BC0C 00178B6C 40 82 00 08 */ bne lbl_8017BC14 +/* 8017BC10 00178B70 3B C0 00 00 */ li r30, 0 +lbl_8017BC14: +/* 8017BC14 00178B74 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017BC18 00178B78 88 03 02 29 */ lbz r0, 0x229(r3) +/* 8017BC1C 00178B7C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8017BC20 00178B80 41 82 00 70 */ beq lbl_8017BC90 +/* 8017BC24 00178B84 80 1C 03 04 */ lwz r0, 0x304(r28) +/* 8017BC28 00178B88 2C 00 00 04 */ cmpwi r0, 4 +/* 8017BC2C 00178B8C 41 82 00 14 */ beq lbl_8017BC40 +/* 8017BC30 00178B90 40 80 00 58 */ bge lbl_8017BC88 +/* 8017BC34 00178B94 2C 00 00 01 */ cmpwi r0, 1 +/* 8017BC38 00178B98 41 82 00 08 */ beq lbl_8017BC40 +/* 8017BC3C 00178B9C 48 00 00 4C */ b lbl_8017BC88 +lbl_8017BC40: +/* 8017BC40 00178BA0 A0 1C 03 10 */ lhz r0, 0x310(r28) +/* 8017BC44 00178BA4 7F 83 E3 78 */ mr r3, r28 +/* 8017BC48 00178BA8 7F A5 EB 78 */ mr r5, r29 +/* 8017BC4C 00178BAC 38 81 00 30 */ addi r4, r1, 0x30 +/* 8017BC50 00178BB0 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 8017BC54 00178BB4 B0 01 00 30 */ sth r0, 0x30(r1) +/* 8017BC58 00178BB8 48 00 34 25 */ bl ValidateOrbitTargetId__7CPlayerCF9TUniqueIdR13CStateManager +/* 8017BC5C 00178BBC 2C 03 00 00 */ cmpwi r3, 0 +/* 8017BC60 00178BC0 40 82 00 20 */ bne lbl_8017BC80 +/* 8017BC64 00178BC4 A0 1C 03 10 */ lhz r0, 0x310(r28) +/* 8017BC68 00178BC8 7F 83 E3 78 */ mr r3, r28 +/* 8017BC6C 00178BCC 38 81 00 28 */ addi r4, r1, 0x28 +/* 8017BC70 00178BD0 B0 01 00 24 */ sth r0, 0x24(r1) +/* 8017BC74 00178BD4 B0 01 00 28 */ sth r0, 0x28(r1) +/* 8017BC78 00178BD8 4B E9 E1 2D */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId +/* 8017BC7C 00178BDC 48 00 00 24 */ b lbl_8017BCA0 +lbl_8017BC80: +/* 8017BC80 00178BE0 3B E0 00 01 */ li r31, 1 +/* 8017BC84 00178BE4 48 00 00 1C */ b lbl_8017BCA0 +lbl_8017BC88: +/* 8017BC88 00178BE8 3B E0 00 01 */ li r31, 1 +/* 8017BC8C 00178BEC 48 00 00 14 */ b lbl_8017BCA0 +lbl_8017BC90: +/* 8017BC90 00178BF0 80 1C 03 04 */ lwz r0, 0x304(r28) +/* 8017BC94 00178BF4 2C 00 00 00 */ cmpwi r0, 0 +/* 8017BC98 00178BF8 40 82 00 08 */ bne lbl_8017BCA0 +/* 8017BC9C 00178BFC 3B E0 00 01 */ li r31, 1 +lbl_8017BCA0: +/* 8017BCA0 00178C00 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 8017BCA4 00178C04 41 82 00 90 */ beq lbl_8017BD34 +/* 8017BCA8 00178C08 A0 1C 03 F4 */ lhz r0, 0x3f4(r28) +/* 8017BCAC 00178C0C 7F 83 E3 78 */ mr r3, r28 +/* 8017BCB0 00178C10 7F A5 EB 78 */ mr r5, r29 +/* 8017BCB4 00178C14 38 81 00 20 */ addi r4, r1, 0x20 +/* 8017BCB8 00178C18 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8017BCBC 00178C1C B0 01 00 20 */ sth r0, 0x20(r1) +/* 8017BCC0 00178C20 48 00 00 C1 */ bl ValidateAimTargetId__7CPlayerF9TUniqueIdR13CStateManager +/* 8017BCC4 00178C24 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017BCC8 00178C28 40 82 00 6C */ bne lbl_8017BD34 +/* 8017BCCC 00178C2C 28 1E 00 00 */ cmplwi r30, 0 +/* 8017BCD0 00178C30 41 82 00 40 */ beq lbl_8017BD10 +/* 8017BCD4 00178C34 A0 1C 03 F4 */ lhz r0, 0x3f4(r28) +/* 8017BCD8 00178C38 7F 83 E3 78 */ mr r3, r28 +/* 8017BCDC 00178C3C 7F A5 EB 78 */ mr r5, r29 +/* 8017BCE0 00178C40 38 81 00 18 */ addi r4, r1, 0x18 +/* 8017BCE4 00178C44 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8017BCE8 00178C48 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8017BCEC 00178C4C 48 00 05 75 */ bl ValidateObjectForMode__7CPlayerCF9TUniqueIdR13CStateManager +/* 8017BCF0 00178C50 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017BCF4 00178C54 41 82 00 1C */ beq lbl_8017BD10 +/* 8017BCF8 00178C58 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017BCFC 00178C5C 7F 83 E3 78 */ mr r3, r28 +/* 8017BD00 00178C60 38 81 00 10 */ addi r4, r1, 0x10 +/* 8017BD04 00178C64 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8017BD08 00178C68 4B E9 E0 9D */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId +/* 8017BD0C 00178C6C 48 00 00 28 */ b lbl_8017BD34 +lbl_8017BD10: +/* 8017BD10 00178C70 7F 84 E3 78 */ mr r4, r28 +/* 8017BD14 00178C74 7F A5 EB 78 */ mr r5, r29 +/* 8017BD18 00178C78 38 61 00 08 */ addi r3, r1, 8 +/* 8017BD1C 00178C7C 48 00 08 29 */ bl FindAimTargetId__7CPlayerFR13CStateManager +/* 8017BD20 00178C80 A0 01 00 08 */ lhz r0, 8(r1) +/* 8017BD24 00178C84 7F 83 E3 78 */ mr r3, r28 +/* 8017BD28 00178C88 38 81 00 0C */ addi r4, r1, 0xc +/* 8017BD2C 00178C8C B0 01 00 0C */ sth r0, 0xc(r1) +/* 8017BD30 00178C90 4B E9 E0 75 */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId +lbl_8017BD34: +/* 8017BD34 00178C94 80 01 00 84 */ lwz r0, 0x84(r1) +/* 8017BD38 00178C98 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 8017BD3C 00178C9C 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 8017BD40 00178CA0 83 A1 00 74 */ lwz r29, 0x74(r1) +/* 8017BD44 00178CA4 83 81 00 70 */ lwz r28, 0x70(r1) +/* 8017BD48 00178CA8 7C 08 03 A6 */ mtlr r0 +/* 8017BD4C 00178CAC 38 21 00 80 */ addi r1, r1, 0x80 +/* 8017BD50 00178CB0 4E 80 00 20 */ blr + +.global UpdateAimTargetTimer__7CPlayerFf +UpdateAimTargetTimer__7CPlayerFf: +/* 8017BD54 00178CB4 A0 83 03 F4 */ lhz r4, 0x3f4(r3) +/* 8017BD58 00178CB8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017BD5C 00178CBC 7C 04 00 40 */ cmplw r4, r0 +/* 8017BD60 00178CC0 4D 82 00 20 */ beqlr +/* 8017BD64 00178CC4 C0 43 04 8C */ lfs f2, 0x48c(r3) +/* 8017BD68 00178CC8 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017BD6C 00178CCC FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8017BD70 00178CD0 4C 81 00 20 */ blelr +/* 8017BD74 00178CD4 EC 02 08 28 */ fsubs f0, f2, f1 +/* 8017BD78 00178CD8 D0 03 04 8C */ stfs f0, 0x48c(r3) +/* 8017BD7C 00178CDC 4E 80 00 20 */ blr + +.global ValidateAimTargetId__7CPlayerF9TUniqueIdR13CStateManager +ValidateAimTargetId__7CPlayerF9TUniqueIdR13CStateManager: +/* 8017BD80 00178CE0 94 21 F7 00 */ stwu r1, -0x900(r1) +/* 8017BD84 00178CE4 7C 08 02 A6 */ mflr r0 +/* 8017BD88 00178CE8 90 01 09 04 */ stw r0, 0x904(r1) +/* 8017BD8C 00178CEC DB E1 08 F0 */ stfd f31, 0x8f0(r1) +/* 8017BD90 00178CF0 F3 E1 08 F8 */ psq_st f31, -1800(r1), 0, qr0 +/* 8017BD94 00178CF4 93 E1 08 EC */ stw r31, 0x8ec(r1) +/* 8017BD98 00178CF8 93 C1 08 E8 */ stw r30, 0x8e8(r1) +/* 8017BD9C 00178CFC 93 A1 08 E4 */ stw r29, 0x8e4(r1) +/* 8017BDA0 00178D00 93 81 08 E0 */ stw r28, 0x8e0(r1) +/* 8017BDA4 00178D04 7C 9D 23 78 */ mr r29, r4 +/* 8017BDA8 00178D08 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017BDAC 00178D0C A0 84 00 00 */ lhz r4, 0(r4) +/* 8017BDB0 00178D10 7C 7C 1B 78 */ mr r28, r3 +/* 8017BDB4 00178D14 7C BE 2B 78 */ mr r30, r5 +/* 8017BDB8 00178D18 7C 04 00 40 */ cmplw r4, r0 +/* 8017BDBC 00178D1C 40 82 00 68 */ bne lbl_8017BE24 +/* 8017BDC0 00178D20 80 BC 04 04 */ lwz r5, 0x404(r28) +/* 8017BDC4 00178D24 38 60 00 00 */ li r3, 0 +/* 8017BDC8 00178D28 2C 05 00 00 */ cmpwi r5, 0 +/* 8017BDCC 00178D2C 40 81 00 40 */ ble lbl_8017BE0C +/* 8017BDD0 00178D30 2C 05 00 08 */ cmpwi r5, 8 +/* 8017BDD4 00178D34 38 85 FF F8 */ addi r4, r5, -8 +/* 8017BDD8 00178D38 40 81 00 20 */ ble lbl_8017BDF8 +/* 8017BDDC 00178D3C 38 04 00 07 */ addi r0, r4, 7 +/* 8017BDE0 00178D40 54 00 E8 FE */ srwi r0, r0, 3 +/* 8017BDE4 00178D44 7C 09 03 A6 */ mtctr r0 +/* 8017BDE8 00178D48 2C 04 00 00 */ cmpwi r4, 0 +/* 8017BDEC 00178D4C 40 81 00 0C */ ble lbl_8017BDF8 +lbl_8017BDF0: +/* 8017BDF0 00178D50 38 63 00 08 */ addi r3, r3, 8 +/* 8017BDF4 00178D54 42 00 FF FC */ bdnz lbl_8017BDF0 +lbl_8017BDF8: +/* 8017BDF8 00178D58 7C 03 28 50 */ subf r0, r3, r5 +/* 8017BDFC 00178D5C 7C 09 03 A6 */ mtctr r0 +/* 8017BE00 00178D60 7C 03 28 00 */ cmpw r3, r5 +/* 8017BE04 00178D64 40 80 00 08 */ bge lbl_8017BE0C +lbl_8017BE08: +/* 8017BE08 00178D68 42 00 00 00 */ bdnz lbl_8017BE08 +lbl_8017BE0C: +/* 8017BE0C 00178D6C 38 00 00 00 */ li r0, 0 +/* 8017BE10 00178D70 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017BE14 00178D74 90 1C 04 04 */ stw r0, 0x404(r28) +/* 8017BE18 00178D78 38 60 00 00 */ li r3, 0 +/* 8017BE1C 00178D7C D0 1C 04 8C */ stfs f0, 0x48c(r28) +/* 8017BE20 00178D80 48 00 04 18 */ b lbl_8017C238 +lbl_8017BE24: +/* 8017BE24 00178D84 B0 81 00 1C */ sth r4, 0x1c(r1) +/* 8017BE28 00178D88 7F C3 F3 78 */ mr r3, r30 +/* 8017BE2C 00178D8C 38 81 00 1C */ addi r4, r1, 0x1c +/* 8017BE30 00178D90 4B ED 07 75 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017BE34 00178D94 7C 64 1B 78 */ mr r4, r3 +/* 8017BE38 00178D98 38 61 00 24 */ addi r3, r1, 0x24 +/* 8017BE3C 00178D9C 4B F3 3E 55 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8017BE40 00178DA0 83 E3 00 04 */ lwz r31, 4(r3) +/* 8017BE44 00178DA4 28 1F 00 00 */ cmplwi r31, 0 +/* 8017BE48 00178DA8 41 82 00 44 */ beq lbl_8017BE8C +/* 8017BE4C 00178DAC 80 7F 00 68 */ lwz r3, 0x68(r31) +/* 8017BE50 00178DB0 38 00 01 00 */ li r0, 0x100 +/* 8017BE54 00178DB4 80 9F 00 6C */ lwz r4, 0x6c(r31) +/* 8017BE58 00178DB8 38 A0 00 00 */ li r5, 0 +/* 8017BE5C 00178DBC 7C 66 00 38 */ and r6, r3, r0 +/* 8017BE60 00178DC0 7C 84 28 38 */ and r4, r4, r5 +/* 8017BE64 00178DC4 7C 83 2A 78 */ xor r3, r4, r5 +/* 8017BE68 00178DC8 7C C0 2A 78 */ xor r0, r6, r5 +/* 8017BE6C 00178DCC 7C 60 03 79 */ or. r0, r3, r0 +/* 8017BE70 00178DD0 41 82 00 08 */ beq lbl_8017BE78 +/* 8017BE74 00178DD4 38 A0 00 01 */ li r5, 1 +lbl_8017BE78: +/* 8017BE78 00178DD8 54 A0 06 3F */ clrlwi. r0, r5, 0x18 +/* 8017BE7C 00178DDC 41 82 00 10 */ beq lbl_8017BE8C +/* 8017BE80 00178DE0 88 1F 00 E7 */ lbz r0, 0xe7(r31) +/* 8017BE84 00178DE4 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 8017BE88 00178DE8 40 82 00 0C */ bne lbl_8017BE94 +lbl_8017BE8C: +/* 8017BE8C 00178DEC 38 60 00 00 */ li r3, 0 +/* 8017BE90 00178DF0 48 00 03 A8 */ b lbl_8017C238 +lbl_8017BE94: +/* 8017BE94 00178DF4 80 1C 03 04 */ lwz r0, 0x304(r28) +/* 8017BE98 00178DF8 2C 00 00 01 */ cmpwi r0, 1 +/* 8017BE9C 00178DFC 41 82 00 0C */ beq lbl_8017BEA8 +/* 8017BEA0 00178E00 2C 00 00 04 */ cmpwi r0, 4 +/* 8017BEA4 00178E04 40 82 00 54 */ bne lbl_8017BEF8 +lbl_8017BEA8: +/* 8017BEA8 00178E08 A0 1C 03 10 */ lhz r0, 0x310(r28) +/* 8017BEAC 00178E0C 7F 83 E3 78 */ mr r3, r28 +/* 8017BEB0 00178E10 7F C5 F3 78 */ mr r5, r30 +/* 8017BEB4 00178E14 38 81 00 18 */ addi r4, r1, 0x18 +/* 8017BEB8 00178E18 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8017BEBC 00178E1C B0 01 00 18 */ sth r0, 0x18(r1) +/* 8017BEC0 00178E20 48 00 31 BD */ bl ValidateOrbitTargetId__7CPlayerCF9TUniqueIdR13CStateManager +/* 8017BEC4 00178E24 2C 03 00 00 */ cmpwi r3, 0 +/* 8017BEC8 00178E28 41 82 00 28 */ beq lbl_8017BEF0 +/* 8017BECC 00178E2C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017BED0 00178E30 7F 83 E3 78 */ mr r3, r28 +/* 8017BED4 00178E34 38 81 00 10 */ addi r4, r1, 0x10 +/* 8017BED8 00178E38 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8017BEDC 00178E3C 4B E9 DE C9 */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId +/* 8017BEE0 00178E40 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017BEE4 00178E44 38 60 00 00 */ li r3, 0 +/* 8017BEE8 00178E48 D0 1C 04 8C */ stfs f0, 0x48c(r28) +/* 8017BEEC 00178E4C 48 00 03 4C */ b lbl_8017C238 +lbl_8017BEF0: +/* 8017BEF0 00178E50 38 60 00 01 */ li r3, 1 +/* 8017BEF4 00178E54 48 00 03 44 */ b lbl_8017C238 +lbl_8017BEF8: +/* 8017BEF8 00178E58 38 00 00 00 */ li r0, 0 +/* 8017BEFC 00178E5C 7C 83 02 78 */ xor r3, r4, r0 +/* 8017BF00 00178E60 7C C0 02 78 */ xor r0, r6, r0 +/* 8017BF04 00178E64 7C 60 03 79 */ or. r0, r3, r0 +/* 8017BF08 00178E68 41 82 03 10 */ beq lbl_8017C218 +/* 8017BF0C 00178E6C A0 7D 00 00 */ lhz r3, 0(r29) +/* 8017BF10 00178E70 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017BF14 00178E74 7C 03 00 40 */ cmplw r3, r0 +/* 8017BF18 00178E78 41 82 03 00 */ beq lbl_8017C218 +/* 8017BF1C 00178E7C B0 61 00 0C */ sth r3, 0xc(r1) +/* 8017BF20 00178E80 7F 83 E3 78 */ mr r3, r28 +/* 8017BF24 00178E84 7F C5 F3 78 */ mr r5, r30 +/* 8017BF28 00178E88 38 81 00 0C */ addi r4, r1, 0xc +/* 8017BF2C 00178E8C 48 00 03 35 */ bl ValidateObjectForMode__7CPlayerCF9TUniqueIdR13CStateManager +/* 8017BF30 00178E90 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017BF34 00178E94 41 82 02 E4 */ beq lbl_8017C218 +/* 8017BF38 00178E98 7F E4 FB 78 */ mr r4, r31 +/* 8017BF3C 00178E9C 7F C5 F3 78 */ mr r5, r30 +/* 8017BF40 00178EA0 81 9F 00 00 */ lwz r12, 0(r31) +/* 8017BF44 00178EA4 38 61 00 44 */ addi r3, r1, 0x44 +/* 8017BF48 00178EA8 C0 22 A2 30 */ lfs f1, lbl_805ABF50@sda21(r2) +/* 8017BF4C 00178EAC 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8017BF50 00178EB0 7D 89 03 A6 */ mtctr r12 +/* 8017BF54 00178EB4 4E 80 04 21 */ bctrl +/* 8017BF58 00178EB8 C0 41 00 44 */ lfs f2, 0x44(r1) +/* 8017BF5C 00178EBC 7F 84 E3 78 */ mr r4, r28 +/* 8017BF60 00178EC0 C0 21 00 48 */ lfs f1, 0x48(r1) +/* 8017BF64 00178EC4 38 61 00 38 */ addi r3, r1, 0x38 +/* 8017BF68 00178EC8 C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 8017BF6C 00178ECC D0 41 00 74 */ stfs f2, 0x74(r1) +/* 8017BF70 00178ED0 D0 21 00 78 */ stfs f1, 0x78(r1) +/* 8017BF74 00178ED4 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 8017BF78 00178ED8 48 10 8E 05 */ bl GetEyePosition__7CPlayerCFv +/* 8017BF7C 00178EDC C0 A1 00 38 */ lfs f5, 0x38(r1) +/* 8017BF80 00178EE0 38 61 00 2C */ addi r3, r1, 0x2c +/* 8017BF84 00178EE4 C0 81 00 3C */ lfs f4, 0x3c(r1) +/* 8017BF88 00178EE8 38 A1 00 74 */ addi r5, r1, 0x74 +/* 8017BF8C 00178EEC C0 61 00 40 */ lfs f3, 0x40(r1) +/* 8017BF90 00178EF0 C0 41 00 78 */ lfs f2, 0x78(r1) +/* 8017BF94 00178EF4 C0 21 00 7C */ lfs f1, 0x7c(r1) +/* 8017BF98 00178EF8 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 8017BF9C 00178EFC EC 42 20 28 */ fsubs f2, f2, f4 +/* 8017BFA0 00178F00 EC 21 18 28 */ fsubs f1, f1, f3 +/* 8017BFA4 00178F04 D0 A1 00 68 */ stfs f5, 0x68(r1) +/* 8017BFA8 00178F08 EC 00 28 28 */ fsubs f0, f0, f5 +/* 8017BFAC 00178F0C D0 81 00 6C */ stfs f4, 0x6c(r1) +/* 8017BFB0 00178F10 D0 61 00 70 */ stfs f3, 0x70(r1) +/* 8017BFB4 00178F14 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 8017BFB8 00178F18 D0 41 00 60 */ stfs f2, 0x60(r1) +/* 8017BFBC 00178F1C D0 21 00 64 */ stfs f1, 0x64(r1) +/* 8017BFC0 00178F20 80 9E 08 70 */ lwz r4, 0x870(r30) +/* 8017BFC4 00178F24 80 84 00 7C */ lwz r4, 0x7c(r4) +/* 8017BFC8 00178F28 4B EE 18 C9 */ bl ConvertToScreenSpace__11CGameCameraCFRC9CVector3f +/* 8017BFCC 00178F2C 3C 60 80 3F */ lis r3, lbl_803ED910@ha +/* 8017BFD0 00178F30 3C A0 43 30 */ lis r5, 0x4330 +/* 8017BFD4 00178F34 38 83 D9 10 */ addi r4, r3, lbl_803ED910@l +/* 8017BFD8 00178F38 C1 01 00 2C */ lfs f8, 0x2c(r1) +/* 8017BFDC 00178F3C 80 04 00 08 */ lwz r0, 8(r4) +/* 8017BFE0 00178F40 7F 83 E3 78 */ mr r3, r28 +/* 8017BFE4 00178F44 80 E4 00 0C */ lwz r7, 0xc(r4) +/* 8017BFE8 00178F48 38 81 00 50 */ addi r4, r1, 0x50 +/* 8017BFEC 00178F4C 6C 06 80 00 */ xoris r6, r0, 0x8000 +/* 8017BFF0 00178F50 C0 E1 00 30 */ lfs f7, 0x30(r1) +/* 8017BFF4 00178F54 6C E0 80 00 */ xoris r0, r7, 0x8000 +/* 8017BFF8 00178F58 90 C1 08 C4 */ stw r6, 0x8c4(r1) +/* 8017BFFC 00178F5C C0 C1 00 34 */ lfs f6, 0x34(r1) +/* 8017C000 00178F60 90 A1 08 C0 */ stw r5, 0x8c0(r1) +/* 8017C004 00178F64 C8 A2 A2 98 */ lfd f5, lbl_805ABFB8@sda21(r2) +/* 8017C008 00178F68 C8 01 08 C0 */ lfd f0, 0x8c0(r1) +/* 8017C00C 00178F6C 90 01 08 D4 */ stw r0, 0x8d4(r1) +/* 8017C010 00178F70 EC 20 28 28 */ fsubs f1, f0, f5 +/* 8017C014 00178F74 C0 62 A2 68 */ lfs f3, lbl_805ABF88@sda21(r2) +/* 8017C018 00178F78 90 A1 08 D0 */ stw r5, 0x8d0(r1) +/* 8017C01C 00178F7C C8 01 08 D0 */ lfd f0, 0x8d0(r1) +/* 8017C020 00178F80 EC 28 00 72 */ fmuls f1, f8, f1 +/* 8017C024 00178F84 90 C1 08 BC */ stw r6, 0x8bc(r1) +/* 8017C028 00178F88 EC 00 28 28 */ fsubs f0, f0, f5 +/* 8017C02C 00178F8C 90 A1 08 B8 */ stw r5, 0x8b8(r1) +/* 8017C030 00178F90 EC 41 00 F2 */ fmuls f2, f1, f3 +/* 8017C034 00178F94 EC 07 00 32 */ fmuls f0, f7, f0 +/* 8017C038 00178F98 C8 21 08 B8 */ lfd f1, 0x8b8(r1) +/* 8017C03C 00178F9C 90 01 08 CC */ stw r0, 0x8cc(r1) +/* 8017C040 00178FA0 EC 81 28 28 */ fsubs f4, f1, f5 +/* 8017C044 00178FA4 90 A1 08 C8 */ stw r5, 0x8c8(r1) +/* 8017C048 00178FA8 EC 00 00 F2 */ fmuls f0, f0, f3 +/* 8017C04C 00178FAC C8 21 08 C8 */ lfd f1, 0x8c8(r1) +/* 8017C050 00178FB0 EC 44 10 FA */ fmadds f2, f4, f3, f2 +/* 8017C054 00178FB4 D1 01 00 50 */ stfs f8, 0x50(r1) +/* 8017C058 00178FB8 EC 21 28 28 */ fsubs f1, f1, f5 +/* 8017C05C 00178FBC D0 E1 00 54 */ stfs f7, 0x54(r1) +/* 8017C060 00178FC0 EC 01 00 FA */ fmadds f0, f1, f3, f0 +/* 8017C064 00178FC4 D0 C1 00 58 */ stfs f6, 0x58(r1) +/* 8017C068 00178FC8 D0 41 00 50 */ stfs f2, 0x50(r1) +/* 8017C06C 00178FCC D0 01 00 54 */ stfs f0, 0x54(r1) +/* 8017C070 00178FD0 80 BC 03 30 */ lwz r5, 0x330(r28) +/* 8017C074 00178FD4 80 DC 03 34 */ lwz r6, 0x334(r28) +/* 8017C078 00178FD8 48 00 1C 55 */ bl WithinOrbitScreenBox__7CPlayerCFRC9CVector3fQ27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneType +/* 8017C07C 00178FDC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017C080 00178FE0 40 82 00 2C */ bne lbl_8017C0AC +/* 8017C084 00178FE4 80 1C 03 30 */ lwz r0, 0x330(r28) +/* 8017C088 00178FE8 2C 00 00 00 */ cmpwi r0, 0 +/* 8017C08C 00178FEC 41 82 01 74 */ beq lbl_8017C200 +/* 8017C090 00178FF0 80 DC 03 34 */ lwz r6, 0x334(r28) +/* 8017C094 00178FF4 7F 83 E3 78 */ mr r3, r28 +/* 8017C098 00178FF8 38 81 00 50 */ addi r4, r1, 0x50 +/* 8017C09C 00178FFC 38 A0 00 00 */ li r5, 0 +/* 8017C0A0 00179000 48 00 1C 2D */ bl WithinOrbitScreenBox__7CPlayerCFRC9CVector3fQ27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneType +/* 8017C0A4 00179004 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017C0A8 00179008 41 82 01 58 */ beq lbl_8017C200 +lbl_8017C0AC: +/* 8017C0AC 0017900C 38 61 00 5C */ addi r3, r1, 0x5c +/* 8017C0B0 00179010 48 19 88 09 */ bl Magnitude__9CVector3fCFv +/* 8017C0B4 00179014 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017C0B8 00179018 FF E0 08 90 */ fmr f31, f1 +/* 8017C0BC 0017901C C0 03 02 34 */ lfs f0, 0x234(r3) +/* 8017C0C0 00179020 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 8017C0C4 00179024 4C 40 13 82 */ cror 2, 0, 2 +/* 8017C0C8 00179028 40 82 01 38 */ bne lbl_8017C200 +/* 8017C0CC 0017902C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017C0D0 00179030 38 60 00 00 */ li r3, 0 +/* 8017C0D4 00179034 90 61 00 B0 */ stw r3, 0xb0(r1) +/* 8017C0D8 00179038 38 61 00 5C */ addi r3, r1, 0x5c +/* 8017C0DC 0017903C B0 01 00 20 */ sth r0, 0x20(r1) +/* 8017C0E0 00179040 48 19 88 19 */ bl Normalize__9CVector3fFv +/* 8017C0E4 00179044 FC 20 F8 90 */ fmr f1, f31 +/* 8017C0E8 00179048 3C 80 80 47 */ lis r4, lbl_8046C8D8@ha +/* 8017C0EC 0017904C 7C 66 1B 78 */ mr r6, r3 +/* 8017C0F0 00179050 7F C3 F3 78 */ mr r3, r30 +/* 8017C0F4 00179054 38 E4 C8 D8 */ addi r7, r4, lbl_8046C8D8@l +/* 8017C0F8 00179058 38 81 00 B0 */ addi r4, r1, 0xb0 +/* 8017C0FC 0017905C 38 A1 00 68 */ addi r5, r1, 0x68 +/* 8017C100 00179060 39 00 00 00 */ li r8, 0 +/* 8017C104 00179064 4B ED 05 D5 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" +/* 8017C108 00179068 38 61 00 5C */ addi r3, r1, 0x5c +/* 8017C10C 0017906C 48 19 87 ED */ bl Normalize__9CVector3fFv +/* 8017C110 00179070 FC 20 F8 90 */ fmr f1, f31 +/* 8017C114 00179074 3C A0 80 47 */ lis r5, lbl_8046C8C0@ha +/* 8017C118 00179078 7C 67 1B 78 */ mr r7, r3 +/* 8017C11C 0017907C 7F C4 F3 78 */ mr r4, r30 +/* 8017C120 00179080 39 05 C8 C0 */ addi r8, r5, lbl_8046C8C0@l +/* 8017C124 00179084 38 61 00 80 */ addi r3, r1, 0x80 +/* 8017C128 00179088 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8017C12C 0017908C 38 C1 00 68 */ addi r6, r1, 0x68 +/* 8017C130 00179090 39 21 00 B0 */ addi r9, r1, 0xb0 +/* 8017C134 00179094 4B ED 0E 91 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 8017C138 00179098 88 01 00 A0 */ lbz r0, 0xa0(r1) +/* 8017C13C 0017909C 28 00 00 00 */ cmplwi r0, 0 +/* 8017C140 001790A0 40 82 00 6C */ bne lbl_8017C1AC +/* 8017C144 001790A4 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017C148 001790A8 38 80 00 00 */ li r4, 0 +/* 8017C14C 001790AC C0 03 02 60 */ lfs f0, 0x260(r3) +/* 8017C150 001790B0 D0 1C 04 8C */ stfs f0, 0x48c(r28) +/* 8017C154 001790B4 80 A1 00 B0 */ lwz r5, 0xb0(r1) +/* 8017C158 001790B8 2C 05 00 00 */ cmpwi r5, 0 +/* 8017C15C 001790BC 40 81 00 40 */ ble lbl_8017C19C +/* 8017C160 001790C0 2C 05 00 08 */ cmpwi r5, 8 +/* 8017C164 001790C4 38 65 FF F8 */ addi r3, r5, -8 +/* 8017C168 001790C8 40 81 00 20 */ ble lbl_8017C188 +/* 8017C16C 001790CC 38 03 00 07 */ addi r0, r3, 7 +/* 8017C170 001790D0 54 00 E8 FE */ srwi r0, r0, 3 +/* 8017C174 001790D4 7C 09 03 A6 */ mtctr r0 +/* 8017C178 001790D8 2C 03 00 00 */ cmpwi r3, 0 +/* 8017C17C 001790DC 40 81 00 0C */ ble lbl_8017C188 +lbl_8017C180: +/* 8017C180 001790E0 38 84 00 08 */ addi r4, r4, 8 +/* 8017C184 001790E4 42 00 FF FC */ bdnz lbl_8017C180 +lbl_8017C188: +/* 8017C188 001790E8 7C 04 28 50 */ subf r0, r4, r5 +/* 8017C18C 001790EC 7C 09 03 A6 */ mtctr r0 +/* 8017C190 001790F0 7C 04 28 00 */ cmpw r4, r5 +/* 8017C194 001790F4 40 80 00 08 */ bge lbl_8017C19C +lbl_8017C198: +/* 8017C198 001790F8 42 00 00 00 */ bdnz lbl_8017C198 +lbl_8017C19C: +/* 8017C19C 001790FC 38 00 00 00 */ li r0, 0 +/* 8017C1A0 00179100 38 60 00 01 */ li r3, 1 +/* 8017C1A4 00179104 90 01 00 B0 */ stw r0, 0xb0(r1) +/* 8017C1A8 00179108 48 00 00 90 */ b lbl_8017C238 +lbl_8017C1AC: +/* 8017C1AC 0017910C 80 A1 00 B0 */ lwz r5, 0xb0(r1) +/* 8017C1B0 00179110 38 60 00 00 */ li r3, 0 +/* 8017C1B4 00179114 2C 05 00 00 */ cmpwi r5, 0 +/* 8017C1B8 00179118 40 81 00 40 */ ble lbl_8017C1F8 +/* 8017C1BC 0017911C 2C 05 00 08 */ cmpwi r5, 8 +/* 8017C1C0 00179120 38 85 FF F8 */ addi r4, r5, -8 +/* 8017C1C4 00179124 40 81 00 20 */ ble lbl_8017C1E4 +/* 8017C1C8 00179128 38 04 00 07 */ addi r0, r4, 7 +/* 8017C1CC 0017912C 54 00 E8 FE */ srwi r0, r0, 3 +/* 8017C1D0 00179130 7C 09 03 A6 */ mtctr r0 +/* 8017C1D4 00179134 2C 04 00 00 */ cmpwi r4, 0 +/* 8017C1D8 00179138 40 81 00 0C */ ble lbl_8017C1E4 +lbl_8017C1DC: +/* 8017C1DC 0017913C 38 63 00 08 */ addi r3, r3, 8 +/* 8017C1E0 00179140 42 00 FF FC */ bdnz lbl_8017C1DC +lbl_8017C1E4: +/* 8017C1E4 00179144 7C 03 28 50 */ subf r0, r3, r5 +/* 8017C1E8 00179148 7C 09 03 A6 */ mtctr r0 +/* 8017C1EC 0017914C 7C 03 28 00 */ cmpw r3, r5 +/* 8017C1F0 00179150 40 80 00 08 */ bge lbl_8017C1F8 +lbl_8017C1F4: +/* 8017C1F4 00179154 42 00 00 00 */ bdnz lbl_8017C1F4 +lbl_8017C1F8: +/* 8017C1F8 00179158 38 00 00 00 */ li r0, 0 +/* 8017C1FC 0017915C 90 01 00 B0 */ stw r0, 0xb0(r1) +lbl_8017C200: +/* 8017C200 00179160 C0 3C 04 8C */ lfs f1, 0x48c(r28) +/* 8017C204 00179164 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017C208 00179168 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017C20C 0017916C 40 81 00 0C */ ble lbl_8017C218 +/* 8017C210 00179170 38 60 00 01 */ li r3, 1 +/* 8017C214 00179174 48 00 00 24 */ b lbl_8017C238 +lbl_8017C218: +/* 8017C218 00179178 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017C21C 0017917C 7F 83 E3 78 */ mr r3, r28 +/* 8017C220 00179180 38 81 00 08 */ addi r4, r1, 8 +/* 8017C224 00179184 B0 01 00 08 */ sth r0, 8(r1) +/* 8017C228 00179188 4B E9 DB 7D */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId +/* 8017C22C 0017918C C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017C230 00179190 38 60 00 00 */ li r3, 0 +/* 8017C234 00179194 D0 1C 04 8C */ stfs f0, 0x48c(r28) +lbl_8017C238: +/* 8017C238 00179198 E3 E1 08 F8 */ psq_l f31, -1800(r1), 0, qr0 +/* 8017C23C 0017919C 80 01 09 04 */ lwz r0, 0x904(r1) +/* 8017C240 001791A0 CB E1 08 F0 */ lfd f31, 0x8f0(r1) +/* 8017C244 001791A4 83 E1 08 EC */ lwz r31, 0x8ec(r1) +/* 8017C248 001791A8 83 C1 08 E8 */ lwz r30, 0x8e8(r1) +/* 8017C24C 001791AC 83 A1 08 E4 */ lwz r29, 0x8e4(r1) +/* 8017C250 001791B0 83 81 08 E0 */ lwz r28, 0x8e0(r1) +/* 8017C254 001791B4 7C 08 03 A6 */ mtlr r0 +/* 8017C258 001791B8 38 21 09 00 */ addi r1, r1, 0x900 +/* 8017C25C 001791BC 4E 80 00 20 */ blr + +.global ValidateObjectForMode__7CPlayerCF9TUniqueIdR13CStateManager +ValidateObjectForMode__7CPlayerCF9TUniqueIdR13CStateManager: +/* 8017C260 001791C0 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8017C264 001791C4 7C 08 02 A6 */ mflr r0 +/* 8017C268 001791C8 90 01 00 74 */ stw r0, 0x74(r1) +/* 8017C26C 001791CC DB E1 00 60 */ stfd f31, 0x60(r1) +/* 8017C270 001791D0 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 8017C274 001791D4 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8017C278 001791D8 93 C1 00 58 */ stw r30, 0x58(r1) +/* 8017C27C 001791DC 93 A1 00 54 */ stw r29, 0x54(r1) +/* 8017C280 001791E0 93 81 00 50 */ stw r28, 0x50(r1) +/* 8017C284 001791E4 7C 9D 23 78 */ mr r29, r4 +/* 8017C288 001791E8 7C BE 2B 78 */ mr r30, r5 +/* 8017C28C 001791EC A0 04 00 00 */ lhz r0, 0(r4) +/* 8017C290 001791F0 7C 7C 1B 78 */ mr r28, r3 +/* 8017C294 001791F4 7F C3 F3 78 */ mr r3, r30 +/* 8017C298 001791F8 38 81 00 14 */ addi r4, r1, 0x14 +/* 8017C29C 001791FC B0 01 00 14 */ sth r0, 0x14(r1) +/* 8017C2A0 00179200 4B ED 03 05 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017C2A4 00179204 7C 64 1B 78 */ mr r4, r3 +/* 8017C2A8 00179208 38 61 00 30 */ addi r3, r1, 0x30 +/* 8017C2AC 0017920C 4B F3 39 E5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8017C2B0 00179210 83 E3 00 04 */ lwz r31, 4(r3) +/* 8017C2B4 00179214 28 1F 00 00 */ cmplwi r31, 0 +/* 8017C2B8 00179218 41 82 00 14 */ beq lbl_8017C2CC +/* 8017C2BC 0017921C A0 7D 00 00 */ lhz r3, 0(r29) +/* 8017C2C0 00179220 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017C2C4 00179224 7C 03 00 40 */ cmplw r3, r0 +/* 8017C2C8 00179228 40 82 00 0C */ bne lbl_8017C2D4 +lbl_8017C2CC: +/* 8017C2CC 0017922C 38 60 00 00 */ li r3, 0 +/* 8017C2D0 00179230 48 00 02 4C */ b lbl_8017C51C +lbl_8017C2D4: +/* 8017C2D4 00179234 B0 61 00 10 */ sth r3, 0x10(r1) +/* 8017C2D8 00179238 7F C3 F3 78 */ mr r3, r30 +/* 8017C2DC 0017923C 38 81 00 10 */ addi r4, r1, 0x10 +/* 8017C2E0 00179240 4B ED 02 C5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017C2E4 00179244 7C 64 1B 78 */ mr r4, r3 +/* 8017C2E8 00179248 38 61 00 28 */ addi r3, r1, 0x28 +/* 8017C2EC 0017924C 4B F2 DE 05 */ bl "__ct__25TCastToPtr<11CScriptDoor>FP7CEntity" +/* 8017C2F0 00179250 80 03 00 04 */ lwz r0, 4(r3) +/* 8017C2F4 00179254 28 00 00 00 */ cmplwi r0, 0 +/* 8017C2F8 00179258 41 82 00 0C */ beq lbl_8017C304 +/* 8017C2FC 0017925C 38 60 00 01 */ li r3, 1 +/* 8017C300 00179260 48 00 02 1C */ b lbl_8017C51C +lbl_8017C304: +/* 8017C304 00179264 7F 83 E3 78 */ mr r3, r28 +/* 8017C308 00179268 4B E9 75 41 */ bl GetCombatMode__7CPlayerCFv +/* 8017C30C 0017926C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017C310 00179270 41 82 01 3C */ beq lbl_8017C44C +/* 8017C314 00179274 7F E3 FB 78 */ mr r3, r31 +/* 8017C318 00179278 7F C4 F3 78 */ mr r4, r30 +/* 8017C31C 0017927C 81 9F 00 00 */ lwz r12, 0(r31) +/* 8017C320 00179280 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8017C324 00179284 7D 89 03 A6 */ mtctr r12 +/* 8017C328 00179288 4E 80 04 21 */ bctrl +/* 8017C32C 0017928C 28 03 00 00 */ cmplwi r3, 0 +/* 8017C330 00179290 41 82 00 34 */ beq lbl_8017C364 +/* 8017C334 00179294 7F E3 FB 78 */ mr r3, r31 +/* 8017C338 00179298 7F C4 F3 78 */ mr r4, r30 +/* 8017C33C 0017929C 81 9F 00 00 */ lwz r12, 0(r31) +/* 8017C340 001792A0 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8017C344 001792A4 7D 89 03 A6 */ mtctr r12 +/* 8017C348 001792A8 4E 80 04 21 */ bctrl +/* 8017C34C 001792AC C0 23 00 00 */ lfs f1, 0(r3) +/* 8017C350 001792B0 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017C354 001792B4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017C358 001792B8 40 81 00 F4 */ ble lbl_8017C44C +/* 8017C35C 001792BC 38 60 00 01 */ li r3, 1 +/* 8017C360 001792C0 48 00 01 BC */ b lbl_8017C51C +lbl_8017C364: +/* 8017C364 001792C4 80 BF 00 68 */ lwz r5, 0x68(r31) +/* 8017C368 001792C8 38 00 00 08 */ li r0, 8 +/* 8017C36C 001792CC 80 DF 00 6C */ lwz r6, 0x6c(r31) +/* 8017C370 001792D0 38 80 00 00 */ li r4, 0 +/* 8017C374 001792D4 7C A0 00 38 */ and r0, r5, r0 +/* 8017C378 001792D8 7C C3 20 38 */ and r3, r6, r4 +/* 8017C37C 001792DC 7C 63 22 78 */ xor r3, r3, r4 +/* 8017C380 001792E0 7C 00 22 78 */ xor r0, r0, r4 +/* 8017C384 001792E4 7C 60 03 79 */ or. r0, r3, r0 +/* 8017C388 001792E8 41 82 00 08 */ beq lbl_8017C390 +/* 8017C38C 001792EC 38 80 00 01 */ li r4, 1 +lbl_8017C390: +/* 8017C390 001792F0 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 8017C394 001792F4 40 82 00 24 */ bne lbl_8017C3B8 +/* 8017C398 001792F8 38 80 00 00 */ li r4, 0 +/* 8017C39C 001792FC 38 00 00 80 */ li r0, 0x80 +/* 8017C3A0 00179300 7C C3 20 38 */ and r3, r6, r4 +/* 8017C3A4 00179304 7C A0 00 38 */ and r0, r5, r0 +/* 8017C3A8 00179308 7C 63 22 78 */ xor r3, r3, r4 +/* 8017C3AC 0017930C 7C 00 22 78 */ xor r0, r0, r4 +/* 8017C3B0 00179310 7C 60 03 79 */ or. r0, r3, r0 +/* 8017C3B4 00179314 41 82 00 0C */ beq lbl_8017C3C0 +lbl_8017C3B8: +/* 8017C3B8 00179318 38 60 00 01 */ li r3, 1 +/* 8017C3BC 0017931C 48 00 01 60 */ b lbl_8017C51C +lbl_8017C3C0: +/* 8017C3C0 00179320 A0 1D 00 00 */ lhz r0, 0(r29) +/* 8017C3C4 00179324 7F C3 F3 78 */ mr r3, r30 +/* 8017C3C8 00179328 38 81 00 0C */ addi r4, r1, 0xc +/* 8017C3CC 0017932C B0 01 00 0C */ sth r0, 0xc(r1) +/* 8017C3D0 00179330 4B ED 01 D5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017C3D4 00179334 7C 64 1B 78 */ mr r4, r3 +/* 8017C3D8 00179338 38 61 00 20 */ addi r3, r1, 0x20 +/* 8017C3DC 0017933C 4B F2 D6 ED */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" +/* 8017C3E0 00179340 80 83 00 04 */ lwz r4, 4(r3) +/* 8017C3E4 00179344 28 04 00 00 */ cmplwi r4, 0 +/* 8017C3E8 00179348 41 82 00 64 */ beq lbl_8017C44C +/* 8017C3EC 0017934C C0 24 00 50 */ lfs f1, 0x50(r4) +/* 8017C3F0 00179350 38 61 00 44 */ addi r3, r1, 0x44 +/* 8017C3F4 00179354 C0 1C 00 50 */ lfs f0, 0x50(r28) +/* 8017C3F8 00179358 C0 64 00 60 */ lfs f3, 0x60(r4) +/* 8017C3FC 0017935C C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 8017C400 00179360 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8017C404 00179364 C0 24 00 40 */ lfs f1, 0x40(r4) +/* 8017C408 00179368 C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 8017C40C 0017936C EC 43 10 28 */ fsubs f2, f3, f2 +/* 8017C410 00179370 D0 81 00 48 */ stfs f4, 0x48(r1) +/* 8017C414 00179374 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8017C418 00179378 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 8017C41C 0017937C D0 01 00 44 */ stfs f0, 0x44(r1) +/* 8017C420 00179380 48 19 82 D9 */ bl CanBeNormalized__9CVector3fCFv +/* 8017C424 00179384 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017C428 00179388 41 82 00 24 */ beq lbl_8017C44C +/* 8017C42C 0017938C 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) +/* 8017C430 00179390 38 61 00 44 */ addi r3, r1, 0x44 +/* 8017C434 00179394 C3 E4 02 A0 */ lfs f31, 0x2a0(r4) +/* 8017C438 00179398 48 19 84 81 */ bl Magnitude__9CVector3fCFv +/* 8017C43C 0017939C FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 8017C440 001793A0 40 80 00 0C */ bge lbl_8017C44C +/* 8017C444 001793A4 38 60 00 01 */ li r3, 1 +/* 8017C448 001793A8 48 00 00 D4 */ b lbl_8017C51C +lbl_8017C44C: +/* 8017C44C 001793AC 7F 83 E3 78 */ mr r3, r28 +/* 8017C450 001793B0 4B E9 73 C1 */ bl GetExplorationMode__7CPlayerCFv +/* 8017C454 001793B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017C458 001793B8 41 82 00 C0 */ beq lbl_8017C518 +/* 8017C45C 001793BC 7F E3 FB 78 */ mr r3, r31 +/* 8017C460 001793C0 7F C4 F3 78 */ mr r4, r30 +/* 8017C464 001793C4 81 9F 00 00 */ lwz r12, 0(r31) +/* 8017C468 001793C8 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8017C46C 001793CC 7D 89 03 A6 */ mtctr r12 +/* 8017C470 001793D0 4E 80 04 21 */ bctrl +/* 8017C474 001793D4 28 03 00 00 */ cmplwi r3, 0 +/* 8017C478 001793D8 40 82 00 98 */ bne lbl_8017C510 +/* 8017C47C 001793DC A0 1D 00 00 */ lhz r0, 0(r29) +/* 8017C480 001793E0 7F C3 F3 78 */ mr r3, r30 +/* 8017C484 001793E4 38 81 00 08 */ addi r4, r1, 8 +/* 8017C488 001793E8 B0 01 00 08 */ sth r0, 8(r1) +/* 8017C48C 001793EC 4B ED 01 19 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017C490 001793F0 7C 64 1B 78 */ mr r4, r3 +/* 8017C494 001793F4 38 61 00 18 */ addi r3, r1, 0x18 +/* 8017C498 001793F8 4B F2 D6 31 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" +/* 8017C49C 001793FC 80 83 00 04 */ lwz r4, 4(r3) +/* 8017C4A0 00179400 28 04 00 00 */ cmplwi r4, 0 +/* 8017C4A4 00179404 41 82 00 64 */ beq lbl_8017C508 +/* 8017C4A8 00179408 C0 24 00 50 */ lfs f1, 0x50(r4) +/* 8017C4AC 0017940C 38 61 00 38 */ addi r3, r1, 0x38 +/* 8017C4B0 00179410 C0 1C 00 50 */ lfs f0, 0x50(r28) +/* 8017C4B4 00179414 C0 64 00 60 */ lfs f3, 0x60(r4) +/* 8017C4B8 00179418 C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 8017C4BC 0017941C EC 81 00 28 */ fsubs f4, f1, f0 +/* 8017C4C0 00179420 C0 24 00 40 */ lfs f1, 0x40(r4) +/* 8017C4C4 00179424 C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 8017C4C8 00179428 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8017C4CC 0017942C D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 8017C4D0 00179430 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8017C4D4 00179434 D0 41 00 40 */ stfs f2, 0x40(r1) +/* 8017C4D8 00179438 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 8017C4DC 0017943C 48 19 82 1D */ bl CanBeNormalized__9CVector3fCFv +/* 8017C4E0 00179440 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017C4E4 00179444 41 82 00 34 */ beq lbl_8017C518 +/* 8017C4E8 00179448 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) +/* 8017C4EC 0017944C 38 61 00 38 */ addi r3, r1, 0x38 +/* 8017C4F0 00179450 C3 E4 02 A0 */ lfs f31, 0x2a0(r4) +/* 8017C4F4 00179454 48 19 83 C5 */ bl Magnitude__9CVector3fCFv +/* 8017C4F8 00179458 FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 8017C4FC 0017945C 40 80 00 1C */ bge lbl_8017C518 +/* 8017C500 00179460 38 60 00 01 */ li r3, 1 +/* 8017C504 00179464 48 00 00 18 */ b lbl_8017C51C +lbl_8017C508: +/* 8017C508 00179468 38 60 00 01 */ li r3, 1 +/* 8017C50C 0017946C 48 00 00 10 */ b lbl_8017C51C +lbl_8017C510: +/* 8017C510 00179470 38 60 00 01 */ li r3, 1 +/* 8017C514 00179474 48 00 00 08 */ b lbl_8017C51C +lbl_8017C518: +/* 8017C518 00179478 38 60 00 00 */ li r3, 0 +lbl_8017C51C: +/* 8017C51C 0017947C E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 8017C520 00179480 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8017C524 00179484 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 8017C528 00179488 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8017C52C 0017948C 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 8017C530 00179490 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 8017C534 00179494 83 81 00 50 */ lwz r28, 0x50(r1) +/* 8017C538 00179498 7C 08 03 A6 */ mtlr r0 +/* 8017C53C 0017949C 38 21 00 70 */ addi r1, r1, 0x70 +/* 8017C540 001794A0 4E 80 00 20 */ blr + +.global FindAimTargetId__7CPlayerFR13CStateManager +FindAimTargetId__7CPlayerFR13CStateManager: +/* 8017C544 001794A4 94 21 F7 80 */ stwu r1, -0x880(r1) +/* 8017C548 001794A8 7C 08 02 A6 */ mflr r0 +/* 8017C54C 001794AC 90 01 08 84 */ stw r0, 0x884(r1) +/* 8017C550 001794B0 93 E1 08 7C */ stw r31, 0x87c(r1) +/* 8017C554 001794B4 7C BF 2B 78 */ mr r31, r5 +/* 8017C558 001794B8 93 C1 08 78 */ stw r30, 0x878(r1) +/* 8017C55C 001794BC 7C 9E 23 78 */ mr r30, r4 +/* 8017C560 001794C0 7F E4 FB 78 */ mr r4, r31 +/* 8017C564 001794C4 93 A1 08 74 */ stw r29, 0x874(r1) +/* 8017C568 001794C8 7C 7D 1B 78 */ mr r29, r3 +/* 8017C56C 001794CC 7F C3 F3 78 */ mr r3, r30 +/* 8017C570 001794D0 4B E9 CB 5D */ bl GetFirstPersonCameraTransform__7CPlayerCFR13CStateManager +/* 8017C574 001794D4 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) +/* 8017C578 001794D8 88 1E 09 C6 */ lbz r0, 0x9c6(r30) +/* 8017C57C 001794DC C0 24 02 34 */ lfs f1, 0x234(r4) +/* 8017C580 001794E0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8017C584 001794E4 FC 60 08 90 */ fmr f3, f1 +/* 8017C588 001794E8 41 82 00 0C */ beq lbl_8017C594 +/* 8017C58C 001794EC C0 02 A2 A0 */ lfs f0, lbl_805ABFC0@sda21(r2) +/* 8017C590 001794F0 EC 61 00 32 */ fmuls f3, f1, f0 +lbl_8017C594: +/* 8017C594 001794F4 C0 24 02 58 */ lfs f1, 0x258(r4) +/* 8017C598 001794F8 7C 65 1B 78 */ mr r5, r3 +/* 8017C59C 001794FC C0 44 02 5C */ lfs f2, 0x25c(r4) +/* 8017C5A0 00179500 38 61 00 20 */ addi r3, r1, 0x20 +/* 8017C5A4 00179504 38 80 00 01 */ li r4, 1 +/* 8017C5A8 00179508 48 00 33 C9 */ bl BuildNearListBox__FbRC12CTransform4ffff +/* 8017C5AC 0017950C C0 A1 00 20 */ lfs f5, 0x20(r1) +/* 8017C5B0 00179510 38 60 00 00 */ li r3, 0 +/* 8017C5B4 00179514 C0 81 00 24 */ lfs f4, 0x24(r1) +/* 8017C5B8 00179518 38 80 00 01 */ li r4, 1 +/* 8017C5BC 0017951C C0 61 00 28 */ lfs f3, 0x28(r1) +/* 8017C5C0 00179520 C0 41 00 2C */ lfs f2, 0x2c(r1) +/* 8017C5C4 00179524 C0 21 00 30 */ lfs f1, 0x30(r1) +/* 8017C5C8 00179528 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 8017C5CC 0017952C 80 AD 8E 74 */ lwz r5, lbl_805A7A34@sda21(r13) +/* 8017C5D0 00179530 D0 A1 00 50 */ stfs f5, 0x50(r1) +/* 8017C5D4 00179534 D0 81 00 54 */ stfs f4, 0x54(r1) +/* 8017C5D8 00179538 D0 61 00 58 */ stfs f3, 0x58(r1) +/* 8017C5DC 0017953C D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 8017C5E0 00179540 D0 21 00 60 */ stfs f1, 0x60(r1) +/* 8017C5E4 00179544 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 8017C5E8 00179548 48 20 D9 0D */ bl __shl2i +/* 8017C5EC 0017954C 38 00 00 00 */ li r0, 0 +/* 8017C5F0 00179550 39 00 00 01 */ li r8, 1 +/* 8017C5F4 00179554 90 81 00 3C */ stw r4, 0x3c(r1) +/* 8017C5F8 00179558 7F C7 F3 78 */ mr r7, r30 +/* 8017C5FC 0017955C 38 81 00 68 */ addi r4, r1, 0x68 +/* 8017C600 00179560 38 A1 00 50 */ addi r5, r1, 0x50 +/* 8017C604 00179564 90 61 00 38 */ stw r3, 0x38(r1) +/* 8017C608 00179568 7F E3 FB 78 */ mr r3, r31 +/* 8017C60C 0017956C 38 C1 00 38 */ addi r6, r1, 0x38 +/* 8017C610 00179570 91 01 00 18 */ stw r8, 0x18(r1) +/* 8017C614 00179574 90 01 00 44 */ stw r0, 0x44(r1) +/* 8017C618 00179578 90 01 00 40 */ stw r0, 0x40(r1) +/* 8017C61C 0017957C 91 01 00 48 */ stw r8, 0x48(r1) +/* 8017C620 00179580 90 01 00 68 */ stw r0, 0x68(r1) +/* 8017C624 00179584 4B ED 00 FD */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 8017C628 00179588 7F A3 EB 78 */ mr r3, r29 +/* 8017C62C 0017958C 7F C4 F3 78 */ mr r4, r30 +/* 8017C630 00179590 7F E8 FB 78 */ mr r8, r31 +/* 8017C634 00179594 38 A1 00 68 */ addi r5, r1, 0x68 +/* 8017C638 00179598 38 C0 00 00 */ li r6, 0 +/* 8017C63C 0017959C 38 E0 00 01 */ li r7, 1 +/* 8017C640 001795A0 48 00 00 75 */ bl "CheckEnemiesAgainstOrbitZone__7CPlayerCFRCQ24rstl32reserved_vector<9TUniqueId,1024>Q27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneTypeR13CStateManager" +/* 8017C644 001795A4 80 A1 00 68 */ lwz r5, 0x68(r1) +/* 8017C648 001795A8 38 60 00 00 */ li r3, 0 +/* 8017C64C 001795AC 2C 05 00 00 */ cmpwi r5, 0 +/* 8017C650 001795B0 40 81 00 40 */ ble lbl_8017C690 +/* 8017C654 001795B4 2C 05 00 08 */ cmpwi r5, 8 +/* 8017C658 001795B8 38 85 FF F8 */ addi r4, r5, -8 +/* 8017C65C 001795BC 40 81 00 20 */ ble lbl_8017C67C +/* 8017C660 001795C0 38 04 00 07 */ addi r0, r4, 7 +/* 8017C664 001795C4 54 00 E8 FE */ srwi r0, r0, 3 +/* 8017C668 001795C8 7C 09 03 A6 */ mtctr r0 +/* 8017C66C 001795CC 2C 04 00 00 */ cmpwi r4, 0 +/* 8017C670 001795D0 40 81 00 0C */ ble lbl_8017C67C +lbl_8017C674: +/* 8017C674 001795D4 38 63 00 08 */ addi r3, r3, 8 +/* 8017C678 001795D8 42 00 FF FC */ bdnz lbl_8017C674 +lbl_8017C67C: +/* 8017C67C 001795DC 7C 03 28 50 */ subf r0, r3, r5 +/* 8017C680 001795E0 7C 09 03 A6 */ mtctr r0 +/* 8017C684 001795E4 7C 03 28 00 */ cmpw r3, r5 +/* 8017C688 001795E8 40 80 00 08 */ bge lbl_8017C690 +lbl_8017C68C: +/* 8017C68C 001795EC 42 00 00 00 */ bdnz lbl_8017C68C +lbl_8017C690: +/* 8017C690 001795F0 38 00 00 00 */ li r0, 0 +/* 8017C694 001795F4 90 01 00 68 */ stw r0, 0x68(r1) +/* 8017C698 001795F8 80 01 08 84 */ lwz r0, 0x884(r1) +/* 8017C69C 001795FC 83 E1 08 7C */ lwz r31, 0x87c(r1) +/* 8017C6A0 00179600 83 C1 08 78 */ lwz r30, 0x878(r1) +/* 8017C6A4 00179604 83 A1 08 74 */ lwz r29, 0x874(r1) +/* 8017C6A8 00179608 7C 08 03 A6 */ mtlr r0 +/* 8017C6AC 0017960C 38 21 08 80 */ addi r1, r1, 0x880 +/* 8017C6B0 00179610 4E 80 00 20 */ blr + +.global "CheckEnemiesAgainstOrbitZone__7CPlayerCFRCQ24rstl32reserved_vector<9TUniqueId,1024>Q27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneTypeR13CStateManager" +"CheckEnemiesAgainstOrbitZone__7CPlayerCFRCQ24rstl32reserved_vector<9TUniqueId,1024>Q27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneTypeR13CStateManager": +/* 8017C6B4 00179614 94 21 EE 50 */ stwu r1, -0x11b0(r1) +/* 8017C6B8 00179618 7C 08 02 A6 */ mflr r0 +/* 8017C6BC 0017961C 90 01 11 B4 */ stw r0, 0x11b4(r1) +/* 8017C6C0 00179620 38 00 11 A8 */ li r0, 0x11a8 +/* 8017C6C4 00179624 DB E1 11 A0 */ stfd f31, 0x11a0(r1) +/* 8017C6C8 00179628 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 +/* 8017C6CC 0017962C 38 00 11 98 */ li r0, 0x1198 +/* 8017C6D0 00179630 DB C1 11 90 */ stfd f30, 0x1190(r1) +/* 8017C6D4 00179634 13 C1 00 0E */ psq_stx f30, r1, r0, 0, qr0 +/* 8017C6D8 00179638 38 00 11 88 */ li r0, 0x1188 +/* 8017C6DC 0017963C DB A1 11 80 */ stfd f29, 0x1180(r1) +/* 8017C6E0 00179640 13 A1 00 0E */ psq_stx f29, r1, r0, 0, qr0 +/* 8017C6E4 00179644 38 00 11 78 */ li r0, 0x1178 +/* 8017C6E8 00179648 DB 81 11 70 */ stfd f28, 0x1170(r1) +/* 8017C6EC 0017964C 13 81 00 0E */ psq_stx f28, r1, r0, 0, qr0 +/* 8017C6F0 00179650 38 00 11 68 */ li r0, 0x1168 +/* 8017C6F4 00179654 DB 61 11 60 */ stfd f27, 0x1160(r1) +/* 8017C6F8 00179658 13 61 00 0E */ psq_stx f27, r1, r0, 0, qr0 +/* 8017C6FC 0017965C 38 00 11 58 */ li r0, 0x1158 +/* 8017C700 00179660 DB 41 11 50 */ stfd f26, 0x1150(r1) +/* 8017C704 00179664 13 41 00 0E */ psq_stx f26, r1, r0, 0, qr0 +/* 8017C708 00179668 BE A1 11 24 */ stmw r21, 0x1124(r1) +/* 8017C70C 0017966C 7C 75 1B 78 */ mr r21, r3 +/* 8017C710 00179670 7C 9B 23 78 */ mr r27, r4 +/* 8017C714 00179674 7C BC 2B 78 */ mr r28, r5 +/* 8017C718 00179678 7C DD 33 78 */ mr r29, r6 +/* 8017C71C 0017967C 7C FE 3B 78 */ mr r30, r7 +/* 8017C720 00179680 7D 1F 43 78 */ mr r31, r8 +/* 8017C724 00179684 38 61 00 34 */ addi r3, r1, 0x34 +/* 8017C728 00179688 48 10 86 55 */ bl GetEyePosition__7CPlayerCFv +/* 8017C72C 0017968C C0 61 00 34 */ lfs f3, 0x34(r1) +/* 8017C730 00179690 38 61 00 64 */ addi r3, r1, 0x64 +/* 8017C734 00179694 C0 41 00 38 */ lfs f2, 0x38(r1) +/* 8017C738 00179698 C0 21 00 3C */ lfs f1, 0x3c(r1) +/* 8017C73C 0017969C C0 BB 00 58 */ lfs f5, 0x58(r27) +/* 8017C740 001796A0 C0 9B 00 48 */ lfs f4, 0x48(r27) +/* 8017C744 001796A4 C0 1B 00 38 */ lfs f0, 0x38(r27) +/* 8017C748 001796A8 D0 61 00 70 */ stfs f3, 0x70(r1) +/* 8017C74C 001796AC D0 41 00 74 */ stfs f2, 0x74(r1) +/* 8017C750 001796B0 D0 21 00 78 */ stfs f1, 0x78(r1) +/* 8017C754 001796B4 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 8017C758 001796B8 D0 81 00 68 */ stfs f4, 0x68(r1) +/* 8017C75C 001796BC D0 A1 00 6C */ stfs f5, 0x6c(r1) +/* 8017C760 001796C0 48 19 81 99 */ bl Normalize__9CVector3fFv +/* 8017C764 001796C4 3C 60 80 3F */ lis r3, lbl_803ED910@ha +/* 8017C768 001796C8 3C E0 43 30 */ lis r7, 0x4330 +/* 8017C76C 001796CC 3B 43 D9 10 */ addi r26, r3, lbl_803ED910@l +/* 8017C770 001796D0 C3 E2 A2 80 */ lfs f31, lbl_805ABFA0@sda21(r2) +/* 8017C774 001796D4 80 BA 00 08 */ lwz r5, 8(r26) +/* 8017C778 001796D8 57 A3 10 3A */ slwi r3, r29, 2 +/* 8017C77C 001796DC 80 CD A1 18 */ lwz r6, gpTweakPlayer@sda21(r13) +/* 8017C780 001796E0 FF C0 F8 90 */ fmr f30, f31 +/* 8017C784 001796E4 80 9A 00 0C */ lwz r4, 0xc(r26) +/* 8017C788 001796E8 54 A0 0F FE */ srwi r0, r5, 0x1f +/* 8017C78C 001796EC 7C C6 1A 14 */ add r6, r6, r3 +/* 8017C790 001796F0 80 7F 08 70 */ lwz r3, 0x870(r31) +/* 8017C794 001796F4 7C A0 2A 14 */ add r5, r0, r5 +/* 8017C798 001796F8 54 80 0F FE */ srwi r0, r4, 0x1f +/* 8017C79C 001796FC 81 06 01 C8 */ lwz r8, 0x1c8(r6) +/* 8017C7A0 00179700 7C A9 0E 70 */ srawi r9, r5, 1 +/* 8017C7A4 00179704 80 A6 01 D0 */ lwz r5, 0x1d0(r6) +/* 8017C7A8 00179708 6D 26 80 00 */ xoris r6, r9, 0x8000 +/* 8017C7AC 0017970C 7C 00 22 14 */ add r0, r0, r4 +/* 8017C7B0 00179710 7C 00 0E 70 */ srawi r0, r0, 1 +/* 8017C7B4 00179714 6D 08 80 00 */ xoris r8, r8, 0x8000 +/* 8017C7B8 00179718 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 8017C7BC 0017971C 6C A4 80 00 */ xoris r4, r5, 0x8000 +/* 8017C7C0 00179720 91 01 10 EC */ stw r8, 0x10ec(r1) +/* 8017C7C4 00179724 3B 1C 00 04 */ addi r24, r28, 4 +/* 8017C7C8 00179728 C8 62 A2 98 */ lfd f3, lbl_805ABFB8@sda21(r2) +/* 8017C7CC 0017972C 90 E1 10 E8 */ stw r7, 0x10e8(r1) +/* 8017C7D0 00179730 A3 2D A3 8C */ lhz r25, lbl_805A8F4C@sda21(r13) +/* 8017C7D4 00179734 C8 01 10 E8 */ lfd f0, 0x10e8(r1) +/* 8017C7D8 00179738 90 C1 10 F4 */ stw r6, 0x10f4(r1) +/* 8017C7DC 0017973C EC 40 18 28 */ fsubs f2, f0, f3 +/* 8017C7E0 00179740 82 C3 00 7C */ lwz r22, 0x7c(r3) +/* 8017C7E4 00179744 90 E1 10 F0 */ stw r7, 0x10f0(r1) +/* 8017C7E8 00179748 C8 01 10 F0 */ lfd f0, 0x10f0(r1) +/* 8017C7EC 0017974C 90 81 11 04 */ stw r4, 0x1104(r1) +/* 8017C7F0 00179750 EC 20 18 28 */ fsubs f1, f0, f3 +/* 8017C7F4 00179754 90 E1 11 00 */ stw r7, 0x1100(r1) +/* 8017C7F8 00179758 C8 01 11 00 */ lfd f0, 0x1100(r1) +/* 8017C7FC 0017975C EF A2 08 28 */ fsubs f29, f2, f1 +/* 8017C800 00179760 90 01 11 0C */ stw r0, 0x110c(r1) +/* 8017C804 00179764 EC 20 18 28 */ fsubs f1, f0, f3 +/* 8017C808 00179768 90 E1 11 08 */ stw r7, 0x1108(r1) +/* 8017C80C 0017976C C8 01 11 08 */ lfd f0, 0x1108(r1) +/* 8017C810 00179770 90 C1 10 FC */ stw r6, 0x10fc(r1) +/* 8017C814 00179774 EC 00 18 28 */ fsubs f0, f0, f3 +/* 8017C818 00179778 90 E1 10 F8 */ stw r7, 0x10f8(r1) +/* 8017C81C 0017977C C8 41 10 F8 */ lfd f2, 0x10f8(r1) +/* 8017C820 00179780 EF 81 00 28 */ fsubs f28, f1, f0 +/* 8017C824 00179784 90 01 11 14 */ stw r0, 0x1114(r1) +/* 8017C828 00179788 EC 22 18 28 */ fsubs f1, f2, f3 +/* 8017C82C 0017978C 90 E1 11 10 */ stw r7, 0x1110(r1) +/* 8017C830 00179790 C8 01 11 10 */ lfd f0, 0x1110(r1) +/* 8017C834 00179794 EF BD 08 24 */ fdivs f29, f29, f1 +/* 8017C838 00179798 EC 00 18 28 */ fsubs f0, f0, f3 +/* 8017C83C 0017979C EF 9C 00 24 */ fdivs f28, f28, f0 +/* 8017C840 001797A0 48 00 03 B8 */ b lbl_8017CBF8 +lbl_8017C844: +/* 8017C844 001797A4 A0 18 00 00 */ lhz r0, 0(r24) +/* 8017C848 001797A8 7F E3 FB 78 */ mr r3, r31 +/* 8017C84C 001797AC 38 81 00 10 */ addi r4, r1, 0x10 +/* 8017C850 001797B0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8017C854 001797B4 4B EC FD 51 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017C858 001797B8 7C 77 1B 79 */ or. r23, r3, r3 +/* 8017C85C 001797BC 41 82 03 98 */ beq lbl_8017CBF4 +/* 8017C860 001797C0 A0 D7 00 08 */ lhz r6, 8(r23) +/* 8017C864 001797C4 A0 1B 00 08 */ lhz r0, 8(r27) +/* 8017C868 001797C8 7C 06 00 40 */ cmplw r6, r0 +/* 8017C86C 001797CC 41 82 03 88 */ beq lbl_8017CBF4 +/* 8017C870 001797D0 B0 C1 00 08 */ sth r6, 8(r1) +/* 8017C874 001797D4 7F 63 DB 78 */ mr r3, r27 +/* 8017C878 001797D8 7F E5 FB 78 */ mr r5, r31 +/* 8017C87C 001797DC 38 81 00 0C */ addi r4, r1, 0xc +/* 8017C880 001797E0 B0 C1 00 0C */ sth r6, 0xc(r1) +/* 8017C884 001797E4 4B FF F9 DD */ bl ValidateObjectForMode__7CPlayerCF9TUniqueIdR13CStateManager +/* 8017C888 001797E8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017C88C 001797EC 41 82 03 68 */ beq lbl_8017CBF4 +/* 8017C890 001797F0 7E E4 BB 78 */ mr r4, r23 +/* 8017C894 001797F4 7F E5 FB 78 */ mr r5, r31 +/* 8017C898 001797F8 81 97 00 00 */ lwz r12, 0(r23) +/* 8017C89C 001797FC 38 61 00 28 */ addi r3, r1, 0x28 +/* 8017C8A0 00179800 C0 22 A2 30 */ lfs f1, lbl_805ABF50@sda21(r2) +/* 8017C8A4 00179804 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 8017C8A8 00179808 7D 89 03 A6 */ mtctr r12 +/* 8017C8AC 0017980C 4E 80 04 21 */ bctrl +/* 8017C8B0 00179810 C0 41 00 28 */ lfs f2, 0x28(r1) +/* 8017C8B4 00179814 7E C4 B3 78 */ mr r4, r22 +/* 8017C8B8 00179818 C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 8017C8BC 0017981C 38 61 00 1C */ addi r3, r1, 0x1c +/* 8017C8C0 00179820 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 8017C8C4 00179824 38 A1 00 58 */ addi r5, r1, 0x58 +/* 8017C8C8 00179828 D0 41 00 58 */ stfs f2, 0x58(r1) +/* 8017C8CC 0017982C D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 8017C8D0 00179830 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 8017C8D4 00179834 4B EE 0F BD */ bl ConvertToScreenSpace__11CGameCameraCFRC9CVector3f +/* 8017C8D8 00179838 80 1A 00 08 */ lwz r0, 8(r26) +/* 8017C8DC 0017983C 3C E0 43 30 */ lis r7, 0x4330 +/* 8017C8E0 00179840 80 9A 00 0C */ lwz r4, 0xc(r26) +/* 8017C8E4 00179844 7F 63 DB 78 */ mr r3, r27 +/* 8017C8E8 00179848 6C 08 80 00 */ xoris r8, r0, 0x8000 +/* 8017C8EC 0017984C C1 01 00 1C */ lfs f8, 0x1c(r1) +/* 8017C8F0 00179850 6C 80 80 00 */ xoris r0, r4, 0x8000 +/* 8017C8F4 00179854 91 01 11 0C */ stw r8, 0x110c(r1) +/* 8017C8F8 00179858 C0 E1 00 20 */ lfs f7, 0x20(r1) +/* 8017C8FC 0017985C 7F A5 EB 78 */ mr r5, r29 +/* 8017C900 00179860 90 E1 11 08 */ stw r7, 0x1108(r1) +/* 8017C904 00179864 7F C6 F3 78 */ mr r6, r30 +/* 8017C908 00179868 C8 A2 A2 98 */ lfd f5, lbl_805ABFB8@sda21(r2) +/* 8017C90C 0017986C 38 81 00 4C */ addi r4, r1, 0x4c +/* 8017C910 00179870 C8 01 11 08 */ lfd f0, 0x1108(r1) +/* 8017C914 00179874 90 01 10 FC */ stw r0, 0x10fc(r1) +/* 8017C918 00179878 EC 20 28 28 */ fsubs f1, f0, f5 +/* 8017C91C 0017987C C0 C1 00 24 */ lfs f6, 0x24(r1) +/* 8017C920 00179880 90 E1 10 F8 */ stw r7, 0x10f8(r1) +/* 8017C924 00179884 C0 62 A2 68 */ lfs f3, lbl_805ABF88@sda21(r2) +/* 8017C928 00179888 C8 01 10 F8 */ lfd f0, 0x10f8(r1) +/* 8017C92C 0017988C EC 28 00 72 */ fmuls f1, f8, f1 +/* 8017C930 00179890 91 01 11 14 */ stw r8, 0x1114(r1) +/* 8017C934 00179894 EC 00 28 28 */ fsubs f0, f0, f5 +/* 8017C938 00179898 90 E1 11 10 */ stw r7, 0x1110(r1) +/* 8017C93C 0017989C EC 41 00 F2 */ fmuls f2, f1, f3 +/* 8017C940 001798A0 EC 07 00 32 */ fmuls f0, f7, f0 +/* 8017C944 001798A4 C8 21 11 10 */ lfd f1, 0x1110(r1) +/* 8017C948 001798A8 90 01 11 04 */ stw r0, 0x1104(r1) +/* 8017C94C 001798AC EC 81 28 28 */ fsubs f4, f1, f5 +/* 8017C950 001798B0 90 E1 11 00 */ stw r7, 0x1100(r1) +/* 8017C954 001798B4 EC 00 00 F2 */ fmuls f0, f0, f3 +/* 8017C958 001798B8 C8 21 11 00 */ lfd f1, 0x1100(r1) +/* 8017C95C 001798BC EC 44 10 FA */ fmadds f2, f4, f3, f2 +/* 8017C960 001798C0 D1 01 00 4C */ stfs f8, 0x4c(r1) +/* 8017C964 001798C4 EC 21 28 28 */ fsubs f1, f1, f5 +/* 8017C968 001798C8 D0 E1 00 50 */ stfs f7, 0x50(r1) +/* 8017C96C 001798CC EC 01 00 FA */ fmadds f0, f1, f3, f0 +/* 8017C970 001798D0 D0 C1 00 54 */ stfs f6, 0x54(r1) +/* 8017C974 001798D4 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 8017C978 001798D8 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8017C97C 001798DC 48 00 13 51 */ bl WithinOrbitScreenBox__7CPlayerCFRC9CVector3fQ27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneType +/* 8017C980 001798E0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017C984 001798E4 41 82 02 70 */ beq lbl_8017CBF4 +/* 8017C988 001798E8 C0 21 00 5C */ lfs f1, 0x5c(r1) +/* 8017C98C 001798EC 38 61 00 40 */ addi r3, r1, 0x40 +/* 8017C990 001798F0 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 8017C994 001798F4 C0 61 00 60 */ lfs f3, 0x60(r1) +/* 8017C998 001798F8 C0 41 00 78 */ lfs f2, 0x78(r1) +/* 8017C99C 001798FC EC 81 00 28 */ fsubs f4, f1, f0 +/* 8017C9A0 00179900 C0 21 00 58 */ lfs f1, 0x58(r1) +/* 8017C9A4 00179904 C0 01 00 70 */ lfs f0, 0x70(r1) +/* 8017C9A8 00179908 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8017C9AC 0017990C D0 81 00 44 */ stfs f4, 0x44(r1) +/* 8017C9B0 00179910 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8017C9B4 00179914 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 8017C9B8 00179918 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 8017C9BC 0017991C 48 19 7E FD */ bl Magnitude__9CVector3fCFv +/* 8017C9C0 00179920 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017C9C4 00179924 FF 60 08 90 */ fmr f27, f1 +/* 8017C9C8 00179928 C0 03 02 34 */ lfs f0, 0x234(r3) +/* 8017C9CC 0017992C FC 1B 00 40 */ fcmpo cr0, f27, f0 +/* 8017C9D0 00179930 4C 40 13 82 */ cror 2, 0, 2 +/* 8017C9D4 00179934 40 82 02 20 */ bne lbl_8017CBF4 +/* 8017C9D8 00179938 EC 1F D8 28 */ fsubs f0, f31, f27 +/* 8017C9DC 0017993C C0 23 02 4C */ lfs f1, 0x24c(r3) +/* 8017C9E0 00179940 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8017C9E4 00179944 40 81 00 FC */ ble lbl_8017CAE0 +/* 8017C9E8 00179948 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017C9EC 0017994C 38 60 00 00 */ li r3, 0 +/* 8017C9F0 00179950 90 61 08 E4 */ stw r3, 0x8e4(r1) +/* 8017C9F4 00179954 38 61 00 40 */ addi r3, r1, 0x40 +/* 8017C9F8 00179958 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8017C9FC 0017995C 48 19 7E FD */ bl Normalize__9CVector3fFv +/* 8017CA00 00179960 FC 20 D8 90 */ fmr f1, f27 +/* 8017CA04 00179964 3C 80 80 47 */ lis r4, lbl_8046C8D8@ha +/* 8017CA08 00179968 7C 66 1B 78 */ mr r6, r3 +/* 8017CA0C 0017996C 7F E3 FB 78 */ mr r3, r31 +/* 8017CA10 00179970 38 E4 C8 D8 */ addi r7, r4, lbl_8046C8D8@l +/* 8017CA14 00179974 7E E8 BB 78 */ mr r8, r23 +/* 8017CA18 00179978 38 81 08 E4 */ addi r4, r1, 0x8e4 +/* 8017CA1C 0017997C 38 A1 00 70 */ addi r5, r1, 0x70 +/* 8017CA20 00179980 4B EC FC B9 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" +/* 8017CA24 00179984 38 61 00 40 */ addi r3, r1, 0x40 +/* 8017CA28 00179988 48 19 7E D1 */ bl Normalize__9CVector3fFv +/* 8017CA2C 0017998C FC 20 D8 90 */ fmr f1, f27 +/* 8017CA30 00179990 3C A0 80 47 */ lis r5, lbl_8046C8C0@ha +/* 8017CA34 00179994 7C 67 1B 78 */ mr r7, r3 +/* 8017CA38 00179998 7F E4 FB 78 */ mr r4, r31 +/* 8017CA3C 0017999C 39 05 C8 C0 */ addi r8, r5, lbl_8046C8C0@l +/* 8017CA40 001799A0 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 8017CA44 001799A4 38 A1 00 18 */ addi r5, r1, 0x18 +/* 8017CA48 001799A8 38 C1 00 70 */ addi r6, r1, 0x70 +/* 8017CA4C 001799AC 39 21 08 E4 */ addi r9, r1, 0x8e4 +/* 8017CA50 001799B0 4B ED 05 75 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 8017CA54 001799B4 88 01 00 D0 */ lbz r0, 0xd0(r1) +/* 8017CA58 001799B8 28 00 00 00 */ cmplwi r0, 0 +/* 8017CA5C 001799BC 40 82 00 28 */ bne lbl_8017CA84 +/* 8017CA60 001799C0 C0 21 00 4C */ lfs f1, 0x4c(r1) +/* 8017CA64 001799C4 FF E0 D8 90 */ fmr f31, f27 +/* 8017CA68 001799C8 C0 01 00 50 */ lfs f0, 0x50(r1) +/* 8017CA6C 001799CC EC 21 E8 28 */ fsubs f1, f1, f29 +/* 8017CA70 001799D0 A3 37 00 08 */ lhz r25, 8(r23) +/* 8017CA74 001799D4 EC 00 E0 28 */ fsubs f0, f0, f28 +/* 8017CA78 001799D8 EC 21 00 72 */ fmuls f1, f1, f1 +/* 8017CA7C 001799DC EC 00 00 32 */ fmuls f0, f0, f0 +/* 8017CA80 001799E0 EF C1 00 2A */ fadds f30, f1, f0 +lbl_8017CA84: +/* 8017CA84 001799E4 80 A1 08 E4 */ lwz r5, 0x8e4(r1) +/* 8017CA88 001799E8 38 60 00 00 */ li r3, 0 +/* 8017CA8C 001799EC 2C 05 00 00 */ cmpwi r5, 0 +/* 8017CA90 001799F0 40 81 00 44 */ ble lbl_8017CAD4 +/* 8017CA94 001799F4 2C 05 00 08 */ cmpwi r5, 8 +/* 8017CA98 001799F8 38 85 FF F8 */ addi r4, r5, -8 +/* 8017CA9C 001799FC 40 81 00 20 */ ble lbl_8017CABC +/* 8017CAA0 00179A00 38 04 00 07 */ addi r0, r4, 7 +/* 8017CAA4 00179A04 54 00 E8 FE */ srwi r0, r0, 3 +/* 8017CAA8 00179A08 7C 09 03 A6 */ mtctr r0 +/* 8017CAAC 00179A0C 2C 04 00 00 */ cmpwi r4, 0 +/* 8017CAB0 00179A10 40 81 00 0C */ ble lbl_8017CABC +lbl_8017CAB4: +/* 8017CAB4 00179A14 38 63 00 08 */ addi r3, r3, 8 +/* 8017CAB8 00179A18 42 00 FF FC */ bdnz lbl_8017CAB4 +lbl_8017CABC: +/* 8017CABC 00179A1C 7C 03 28 50 */ subf r0, r3, r5 +/* 8017CAC0 00179A20 7C 09 03 A6 */ mtctr r0 +/* 8017CAC4 00179A24 7C 03 28 00 */ cmpw r3, r5 +/* 8017CAC8 00179A28 40 80 00 0C */ bge lbl_8017CAD4 +lbl_8017CACC: +/* 8017CACC 00179A2C 38 63 00 01 */ addi r3, r3, 1 +/* 8017CAD0 00179A30 42 00 FF FC */ bdnz lbl_8017CACC +lbl_8017CAD4: +/* 8017CAD4 00179A34 38 00 00 00 */ li r0, 0 +/* 8017CAD8 00179A38 90 01 08 E4 */ stw r0, 0x8e4(r1) +/* 8017CADC 00179A3C 48 00 01 18 */ b lbl_8017CBF4 +lbl_8017CAE0: +/* 8017CAE0 00179A40 EC 1B F8 28 */ fsubs f0, f27, f31 +/* 8017CAE4 00179A44 FC 00 02 10 */ fabs f0, f0 +/* 8017CAE8 00179A48 FC 00 00 18 */ frsp f0, f0 +/* 8017CAEC 00179A4C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8017CAF0 00179A50 40 80 01 04 */ bge lbl_8017CBF4 +/* 8017CAF4 00179A54 C0 21 00 4C */ lfs f1, 0x4c(r1) +/* 8017CAF8 00179A58 C0 01 00 50 */ lfs f0, 0x50(r1) +/* 8017CAFC 00179A5C EC 21 E8 28 */ fsubs f1, f1, f29 +/* 8017CB00 00179A60 EC 00 E0 28 */ fsubs f0, f0, f28 +/* 8017CB04 00179A64 EC 21 00 72 */ fmuls f1, f1, f1 +/* 8017CB08 00179A68 EC 00 00 32 */ fmuls f0, f0, f0 +/* 8017CB0C 00179A6C EF 41 00 2A */ fadds f26, f1, f0 +/* 8017CB10 00179A70 FC 1A F0 40 */ fcmpo cr0, f26, f30 +/* 8017CB14 00179A74 40 80 00 E0 */ bge lbl_8017CBF4 +/* 8017CB18 00179A78 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017CB1C 00179A7C 38 60 00 00 */ li r3, 0 +/* 8017CB20 00179A80 90 61 00 E0 */ stw r3, 0xe0(r1) +/* 8017CB24 00179A84 38 61 00 40 */ addi r3, r1, 0x40 +/* 8017CB28 00179A88 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8017CB2C 00179A8C 48 19 7D CD */ bl Normalize__9CVector3fFv +/* 8017CB30 00179A90 FC 20 D8 90 */ fmr f1, f27 +/* 8017CB34 00179A94 3C 80 80 47 */ lis r4, lbl_8046C8D8@ha +/* 8017CB38 00179A98 7C 66 1B 78 */ mr r6, r3 +/* 8017CB3C 00179A9C 7F E3 FB 78 */ mr r3, r31 +/* 8017CB40 00179AA0 38 E4 C8 D8 */ addi r7, r4, lbl_8046C8D8@l +/* 8017CB44 00179AA4 7E E8 BB 78 */ mr r8, r23 +/* 8017CB48 00179AA8 38 81 00 E0 */ addi r4, r1, 0xe0 +/* 8017CB4C 00179AAC 38 A1 00 70 */ addi r5, r1, 0x70 +/* 8017CB50 00179AB0 4B EC FB 89 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" +/* 8017CB54 00179AB4 38 61 00 40 */ addi r3, r1, 0x40 +/* 8017CB58 00179AB8 48 19 7D A1 */ bl Normalize__9CVector3fFv +/* 8017CB5C 00179ABC FC 20 D8 90 */ fmr f1, f27 +/* 8017CB60 00179AC0 3C A0 80 47 */ lis r5, lbl_8046C8C0@ha +/* 8017CB64 00179AC4 7C 67 1B 78 */ mr r7, r3 +/* 8017CB68 00179AC8 7F E4 FB 78 */ mr r4, r31 +/* 8017CB6C 00179ACC 39 05 C8 C0 */ addi r8, r5, lbl_8046C8C0@l +/* 8017CB70 00179AD0 38 61 00 80 */ addi r3, r1, 0x80 +/* 8017CB74 00179AD4 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8017CB78 00179AD8 38 C1 00 70 */ addi r6, r1, 0x70 +/* 8017CB7C 00179ADC 39 21 00 E0 */ addi r9, r1, 0xe0 +/* 8017CB80 00179AE0 4B ED 04 45 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 8017CB84 00179AE4 88 01 00 A0 */ lbz r0, 0xa0(r1) +/* 8017CB88 00179AE8 28 00 00 00 */ cmplwi r0, 0 +/* 8017CB8C 00179AEC 40 82 00 10 */ bne lbl_8017CB9C +/* 8017CB90 00179AF0 FF C0 D0 90 */ fmr f30, f26 +/* 8017CB94 00179AF4 A3 37 00 08 */ lhz r25, 8(r23) +/* 8017CB98 00179AF8 FF E0 D8 90 */ fmr f31, f27 +lbl_8017CB9C: +/* 8017CB9C 00179AFC 80 A1 00 E0 */ lwz r5, 0xe0(r1) +/* 8017CBA0 00179B00 38 60 00 00 */ li r3, 0 +/* 8017CBA4 00179B04 2C 05 00 00 */ cmpwi r5, 0 +/* 8017CBA8 00179B08 40 81 00 44 */ ble lbl_8017CBEC +/* 8017CBAC 00179B0C 2C 05 00 08 */ cmpwi r5, 8 +/* 8017CBB0 00179B10 38 85 FF F8 */ addi r4, r5, -8 +/* 8017CBB4 00179B14 40 81 00 20 */ ble lbl_8017CBD4 +/* 8017CBB8 00179B18 38 04 00 07 */ addi r0, r4, 7 +/* 8017CBBC 00179B1C 54 00 E8 FE */ srwi r0, r0, 3 +/* 8017CBC0 00179B20 7C 09 03 A6 */ mtctr r0 +/* 8017CBC4 00179B24 2C 04 00 00 */ cmpwi r4, 0 +/* 8017CBC8 00179B28 40 81 00 0C */ ble lbl_8017CBD4 +lbl_8017CBCC: +/* 8017CBCC 00179B2C 38 63 00 08 */ addi r3, r3, 8 +/* 8017CBD0 00179B30 42 00 FF FC */ bdnz lbl_8017CBCC +lbl_8017CBD4: +/* 8017CBD4 00179B34 7C 03 28 50 */ subf r0, r3, r5 +/* 8017CBD8 00179B38 7C 09 03 A6 */ mtctr r0 +/* 8017CBDC 00179B3C 7C 03 28 00 */ cmpw r3, r5 +/* 8017CBE0 00179B40 40 80 00 0C */ bge lbl_8017CBEC +lbl_8017CBE4: +/* 8017CBE4 00179B44 38 63 00 01 */ addi r3, r3, 1 +/* 8017CBE8 00179B48 42 00 FF FC */ bdnz lbl_8017CBE4 +lbl_8017CBEC: +/* 8017CBEC 00179B4C 38 00 00 00 */ li r0, 0 +/* 8017CBF0 00179B50 90 01 00 E0 */ stw r0, 0xe0(r1) +lbl_8017CBF4: +/* 8017CBF4 00179B54 3B 18 00 02 */ addi r24, r24, 2 +lbl_8017CBF8: +/* 8017CBF8 00179B58 80 1C 00 00 */ lwz r0, 0(r28) +/* 8017CBFC 00179B5C 54 00 08 3C */ slwi r0, r0, 1 +/* 8017CC00 00179B60 7C 7C 02 14 */ add r3, r28, r0 +/* 8017CC04 00179B64 38 03 00 04 */ addi r0, r3, 4 +/* 8017CC08 00179B68 7C 18 00 40 */ cmplw r24, r0 +/* 8017CC0C 00179B6C 40 82 FC 38 */ bne lbl_8017C844 +/* 8017CC10 00179B70 B3 35 00 00 */ sth r25, 0(r21) +/* 8017CC14 00179B74 38 00 11 A8 */ li r0, 0x11a8 +/* 8017CC18 00179B78 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 +/* 8017CC1C 00179B7C CB E1 11 A0 */ lfd f31, 0x11a0(r1) +/* 8017CC20 00179B80 38 00 11 98 */ li r0, 0x1198 +/* 8017CC24 00179B84 13 C1 00 0C */ psq_lx f30, r1, r0, 0, qr0 +/* 8017CC28 00179B88 CB C1 11 90 */ lfd f30, 0x1190(r1) +/* 8017CC2C 00179B8C 38 00 11 88 */ li r0, 0x1188 +/* 8017CC30 00179B90 13 A1 00 0C */ psq_lx f29, r1, r0, 0, qr0 +/* 8017CC34 00179B94 CB A1 11 80 */ lfd f29, 0x1180(r1) +/* 8017CC38 00179B98 38 00 11 78 */ li r0, 0x1178 +/* 8017CC3C 00179B9C 13 81 00 0C */ psq_lx f28, r1, r0, 0, qr0 +/* 8017CC40 00179BA0 CB 81 11 70 */ lfd f28, 0x1170(r1) +/* 8017CC44 00179BA4 38 00 11 68 */ li r0, 0x1168 +/* 8017CC48 00179BA8 13 61 00 0C */ psq_lx f27, r1, r0, 0, qr0 +/* 8017CC4C 00179BAC CB 61 11 60 */ lfd f27, 0x1160(r1) +/* 8017CC50 00179BB0 38 00 11 58 */ li r0, 0x1158 +/* 8017CC54 00179BB4 13 41 00 0C */ psq_lx f26, r1, r0, 0, qr0 +/* 8017CC58 00179BB8 CB 41 11 50 */ lfd f26, 0x1150(r1) +/* 8017CC5C 00179BBC BA A1 11 24 */ lmw r21, 0x1124(r1) +/* 8017CC60 00179BC0 80 01 11 B4 */ lwz r0, 0x11b4(r1) +/* 8017CC64 00179BC4 7C 08 03 A6 */ mtlr r0 +/* 8017CC68 00179BC8 38 21 11 B0 */ addi r1, r1, 0x11b0 +/* 8017CC6C 00179BCC 4E 80 00 20 */ blr + +.global FindOrbitTargetId__7CPlayerFR13CStateManager +FindOrbitTargetId__7CPlayerFR13CStateManager: +/* 8017CC70 00179BD0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8017CC74 00179BD4 7C 08 02 A6 */ mflr r0 +/* 8017CC78 00179BD8 7C A7 2B 78 */ mr r7, r5 +/* 8017CC7C 00179BDC 38 A4 03 54 */ addi r5, r4, 0x354 +/* 8017CC80 00179BE0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8017CC84 00179BE4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8017CC88 00179BE8 7C 7F 1B 78 */ mr r31, r3 +/* 8017CC8C 00179BEC 80 C4 03 30 */ lwz r6, 0x330(r4) +/* 8017CC90 00179BF0 48 00 03 25 */ bl "FindBestOrbitableObject__7CPlayerCFRCQ24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Q27CPlayer15EPlayerZoneInfoR13CStateManager" +/* 8017CC94 00179BF4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8017CC98 00179BF8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8017CC9C 00179BFC 7C 08 03 A6 */ mtlr r0 +/* 8017CCA0 00179C00 38 21 00 10 */ addi r1, r1, 0x10 +/* 8017CCA4 00179C04 4E 80 00 20 */ blr + +.global UpdateOrbitableObjects__7CPlayerFR13CStateManager +UpdateOrbitableObjects__7CPlayerFR13CStateManager: +/* 8017CCA8 00179C08 94 21 F7 30 */ stwu r1, -0x8d0(r1) +/* 8017CCAC 00179C0C 7C 08 02 A6 */ mflr r0 +/* 8017CCB0 00179C10 90 01 08 D4 */ stw r0, 0x8d4(r1) +/* 8017CCB4 00179C14 93 E1 08 CC */ stw r31, 0x8cc(r1) +/* 8017CCB8 00179C18 7C 9F 23 78 */ mr r31, r4 +/* 8017CCBC 00179C1C 93 C1 08 C8 */ stw r30, 0x8c8(r1) +/* 8017CCC0 00179C20 7C 7E 1B 78 */ mr r30, r3 +/* 8017CCC4 00179C24 93 A1 08 C4 */ stw r29, 0x8c4(r1) +/* 8017CCC8 00179C28 80 03 03 58 */ lwz r0, 0x358(r3) +/* 8017CCCC 00179C2C 80 63 03 60 */ lwz r3, 0x360(r3) +/* 8017CCD0 00179C30 54 00 08 3C */ slwi r0, r0, 1 +/* 8017CCD4 00179C34 7C 03 02 14 */ add r0, r3, r0 +/* 8017CCD8 00179C38 90 61 00 2C */ stw r3, 0x2c(r1) +/* 8017CCDC 00179C3C 90 01 00 34 */ stw r0, 0x34(r1) +/* 8017CCE0 00179C40 90 01 00 30 */ stw r0, 0x30(r1) +/* 8017CCE4 00179C44 90 61 00 28 */ stw r3, 0x28(r1) +/* 8017CCE8 00179C48 48 00 00 08 */ b lbl_8017CCF0 +lbl_8017CCEC: +/* 8017CCEC 00179C4C 38 63 00 02 */ addi r3, r3, 2 +lbl_8017CCF0: +/* 8017CCF0 00179C50 7C 03 00 40 */ cmplw r3, r0 +/* 8017CCF4 00179C54 40 82 FF F8 */ bne lbl_8017CCEC +/* 8017CCF8 00179C58 38 00 00 00 */ li r0, 0 +/* 8017CCFC 00179C5C 90 1E 03 58 */ stw r0, 0x358(r30) +/* 8017CD00 00179C60 80 1E 03 48 */ lwz r0, 0x348(r30) +/* 8017CD04 00179C64 80 7E 03 50 */ lwz r3, 0x350(r30) +/* 8017CD08 00179C68 54 00 08 3C */ slwi r0, r0, 1 +/* 8017CD0C 00179C6C 7C 03 02 14 */ add r0, r3, r0 +/* 8017CD10 00179C70 90 61 00 1C */ stw r3, 0x1c(r1) +/* 8017CD14 00179C74 90 01 00 24 */ stw r0, 0x24(r1) +/* 8017CD18 00179C78 90 01 00 20 */ stw r0, 0x20(r1) +/* 8017CD1C 00179C7C 90 61 00 18 */ stw r3, 0x18(r1) +/* 8017CD20 00179C80 48 00 00 08 */ b lbl_8017CD28 +lbl_8017CD24: +/* 8017CD24 00179C84 38 63 00 02 */ addi r3, r3, 2 +lbl_8017CD28: +/* 8017CD28 00179C88 7C 03 00 40 */ cmplw r3, r0 +/* 8017CD2C 00179C8C 40 82 FF F8 */ bne lbl_8017CD24 +/* 8017CD30 00179C90 38 00 00 00 */ li r0, 0 +/* 8017CD34 00179C94 90 1E 03 48 */ stw r0, 0x348(r30) +/* 8017CD38 00179C98 80 1E 03 68 */ lwz r0, 0x368(r30) +/* 8017CD3C 00179C9C 80 7E 03 70 */ lwz r3, 0x370(r30) +/* 8017CD40 00179CA0 54 00 08 3C */ slwi r0, r0, 1 +/* 8017CD44 00179CA4 7C 03 02 14 */ add r0, r3, r0 +/* 8017CD48 00179CA8 90 61 00 0C */ stw r3, 0xc(r1) +/* 8017CD4C 00179CAC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8017CD50 00179CB0 90 01 00 10 */ stw r0, 0x10(r1) +/* 8017CD54 00179CB4 90 61 00 08 */ stw r3, 8(r1) +/* 8017CD58 00179CB8 48 00 00 08 */ b lbl_8017CD60 +lbl_8017CD5C: +/* 8017CD5C 00179CBC 38 63 00 02 */ addi r3, r3, 2 +lbl_8017CD60: +/* 8017CD60 00179CC0 7C 03 00 40 */ cmplw r3, r0 +/* 8017CD64 00179CC4 40 82 FF F8 */ bne lbl_8017CD5C +/* 8017CD68 00179CC8 38 00 00 00 */ li r0, 0 +/* 8017CD6C 00179CCC 7F C3 F3 78 */ mr r3, r30 +/* 8017CD70 00179CD0 90 1E 03 68 */ stw r0, 0x368(r30) +/* 8017CD74 00179CD4 7F E4 FB 78 */ mr r4, r31 +/* 8017CD78 00179CD8 48 00 11 5D */ bl CheckOrbitDisableSourceList__7CPlayerFRC13CStateManager +/* 8017CD7C 00179CDC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017CD80 00179CE0 40 82 02 18 */ bne lbl_8017CF98 +/* 8017CD84 00179CE4 7F C3 F3 78 */ mr r3, r30 +/* 8017CD88 00179CE8 7F E4 FB 78 */ mr r4, r31 +/* 8017CD8C 00179CEC 4B E9 C3 41 */ bl GetFirstPersonCameraTransform__7CPlayerCFR13CStateManager +/* 8017CD90 00179CF0 7C 60 1B 78 */ mr r0, r3 +/* 8017CD94 00179CF4 7F C3 F3 78 */ mr r3, r30 +/* 8017CD98 00179CF8 7C 1D 03 78 */ mr r29, r0 +/* 8017CD9C 00179CFC 7F E4 FB 78 */ mr r4, r31 +/* 8017CDA0 00179D00 48 00 22 B9 */ bl GetOrbitMaxTargetDistance__7CPlayerCFRC13CStateManager +/* 8017CDA4 00179D04 88 1E 09 C6 */ lbz r0, 0x9c6(r30) +/* 8017CDA8 00179D08 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8017CDAC 00179D0C 41 82 00 0C */ beq lbl_8017CDB8 +/* 8017CDB0 00179D10 C0 02 A2 A0 */ lfs f0, lbl_805ABFC0@sda21(r2) +/* 8017CDB4 00179D14 EC 21 00 32 */ fmuls f1, f1, f0 +lbl_8017CDB8: +/* 8017CDB8 00179D18 80 CD A1 18 */ lwz r6, gpTweakPlayer@sda21(r13) +/* 8017CDBC 00179D1C FC 60 08 90 */ fmr f3, f1 +/* 8017CDC0 00179D20 7F A5 EB 78 */ mr r5, r29 +/* 8017CDC4 00179D24 38 61 00 68 */ addi r3, r1, 0x68 +/* 8017CDC8 00179D28 C0 46 01 DC */ lfs f2, 0x1dc(r6) +/* 8017CDCC 00179D2C 38 80 00 01 */ li r4, 1 +/* 8017CDD0 00179D30 C0 26 01 D8 */ lfs f1, 0x1d8(r6) +/* 8017CDD4 00179D34 48 00 2B 9D */ bl BuildNearListBox__FbRC12CTransform4ffff +/* 8017CDD8 00179D38 C0 A1 00 68 */ lfs f5, 0x68(r1) +/* 8017CDDC 00179D3C 3C 60 80 47 */ lis r3, lbl_8046C8F0@ha +/* 8017CDE0 00179D40 C0 81 00 6C */ lfs f4, 0x6c(r1) +/* 8017CDE4 00179D44 39 63 C8 F0 */ addi r11, r3, lbl_8046C8F0@l +/* 8017CDE8 00179D48 C0 61 00 70 */ lfs f3, 0x70(r1) +/* 8017CDEC 00179D4C 38 60 00 00 */ li r3, 0 +/* 8017CDF0 00179D50 C0 41 00 74 */ lfs f2, 0x74(r1) +/* 8017CDF4 00179D54 38 80 00 01 */ li r4, 1 +/* 8017CDF8 00179D58 C0 21 00 78 */ lfs f1, 0x78(r1) +/* 8017CDFC 00179D5C C0 01 00 7C */ lfs f0, 0x7c(r1) +/* 8017CE00 00179D60 D0 A1 00 98 */ stfs f5, 0x98(r1) +/* 8017CE04 00179D64 80 AD 8E 6C */ lwz r5, lbl_805A7A2C@sda21(r13) +/* 8017CE08 00179D68 D0 81 00 9C */ stfs f4, 0x9c(r1) +/* 8017CE0C 00179D6C 81 41 00 98 */ lwz r10, 0x98(r1) +/* 8017CE10 00179D70 D0 61 00 A0 */ stfs f3, 0xa0(r1) +/* 8017CE14 00179D74 81 21 00 9C */ lwz r9, 0x9c(r1) +/* 8017CE18 00179D78 D0 41 00 A4 */ stfs f2, 0xa4(r1) +/* 8017CE1C 00179D7C 81 01 00 A0 */ lwz r8, 0xa0(r1) +/* 8017CE20 00179D80 D0 21 00 A8 */ stfs f1, 0xa8(r1) +/* 8017CE24 00179D84 80 E1 00 A4 */ lwz r7, 0xa4(r1) +/* 8017CE28 00179D88 D0 01 00 AC */ stfs f0, 0xac(r1) +/* 8017CE2C 00179D8C 80 C1 00 A8 */ lwz r6, 0xa8(r1) +/* 8017CE30 00179D90 80 01 00 AC */ lwz r0, 0xac(r1) +/* 8017CE34 00179D94 91 4B 00 00 */ stw r10, 0(r11) +/* 8017CE38 00179D98 91 2B 00 04 */ stw r9, 4(r11) +/* 8017CE3C 00179D9C 91 0B 00 08 */ stw r8, 8(r11) +/* 8017CE40 00179DA0 90 EB 00 0C */ stw r7, 0xc(r11) +/* 8017CE44 00179DA4 90 CB 00 10 */ stw r6, 0x10(r11) +/* 8017CE48 00179DA8 90 0B 00 14 */ stw r0, 0x14(r11) +/* 8017CE4C 00179DAC 48 20 D0 A9 */ bl __shl2i +/* 8017CE50 00179DB0 38 A0 00 01 */ li r5, 1 +/* 8017CE54 00179DB4 38 00 00 00 */ li r0, 0 +/* 8017CE58 00179DB8 90 81 00 84 */ stw r4, 0x84(r1) +/* 8017CE5C 00179DBC 90 61 00 80 */ stw r3, 0x80(r1) +/* 8017CE60 00179DC0 90 01 00 8C */ stw r0, 0x8c(r1) +/* 8017CE64 00179DC4 90 01 00 88 */ stw r0, 0x88(r1) +/* 8017CE68 00179DC8 90 A1 00 90 */ stw r5, 0x90(r1) +/* 8017CE6C 00179DCC 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 8017CE70 00179DD0 90 A1 00 60 */ stw r5, 0x60(r1) +/* 8017CE74 00179DD4 80 63 00 00 */ lwz r3, 0(r3) +/* 8017CE78 00179DD8 80 03 00 14 */ lwz r0, 0x14(r3) +/* 8017CE7C 00179DDC 2C 00 00 02 */ cmpwi r0, 2 +/* 8017CE80 00179DE0 40 82 00 44 */ bne lbl_8017CEC4 +/* 8017CE84 00179DE4 80 AD 8E 70 */ lwz r5, lbl_805A7A30@sda21(r13) +/* 8017CE88 00179DE8 38 60 00 00 */ li r3, 0 +/* 8017CE8C 00179DEC 38 80 00 01 */ li r4, 1 +/* 8017CE90 00179DF0 48 20 D0 65 */ bl __shl2i +/* 8017CE94 00179DF4 38 A0 00 00 */ li r5, 0 +/* 8017CE98 00179DF8 38 00 00 01 */ li r0, 1 +/* 8017CE9C 00179DFC 90 81 00 3C */ stw r4, 0x3c(r1) +/* 8017CEA0 00179E00 90 61 00 38 */ stw r3, 0x38(r1) +/* 8017CEA4 00179E04 C8 21 00 38 */ lfd f1, 0x38(r1) +/* 8017CEA8 00179E08 90 A1 00 44 */ stw r5, 0x44(r1) +/* 8017CEAC 00179E0C 90 A1 00 40 */ stw r5, 0x40(r1) +/* 8017CEB0 00179E10 C8 01 00 40 */ lfd f0, 0x40(r1) +/* 8017CEB4 00179E14 90 01 00 48 */ stw r0, 0x48(r1) +/* 8017CEB8 00179E18 D8 21 00 80 */ stfd f1, 0x80(r1) +/* 8017CEBC 00179E1C D8 01 00 88 */ stfd f0, 0x88(r1) +/* 8017CEC0 00179E20 90 01 00 90 */ stw r0, 0x90(r1) +lbl_8017CEC4: +/* 8017CEC4 00179E24 38 00 00 00 */ li r0, 0 +/* 8017CEC8 00179E28 7F E3 FB 78 */ mr r3, r31 +/* 8017CECC 00179E2C 90 01 00 B0 */ stw r0, 0xb0(r1) +/* 8017CED0 00179E30 38 81 00 B0 */ addi r4, r1, 0xb0 +/* 8017CED4 00179E34 38 A1 00 98 */ addi r5, r1, 0x98 +/* 8017CED8 00179E38 38 C1 00 80 */ addi r6, r1, 0x80 +/* 8017CEDC 00179E3C 38 E0 00 00 */ li r7, 0 +/* 8017CEE0 00179E40 4B EC F8 41 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 8017CEE4 00179E44 80 DE 03 30 */ lwz r6, 0x330(r30) +/* 8017CEE8 00179E48 7F C3 F3 78 */ mr r3, r30 +/* 8017CEEC 00179E4C 7F E8 FB 78 */ mr r8, r31 +/* 8017CEF0 00179E50 38 81 00 B0 */ addi r4, r1, 0xb0 +/* 8017CEF4 00179E54 38 BE 03 44 */ addi r5, r30, 0x344 +/* 8017CEF8 00179E58 38 E0 FF FF */ li r7, -1 +/* 8017CEFC 00179E5C 39 20 00 01 */ li r9, 1 +/* 8017CF00 00179E60 48 00 0A A5 */ bl "FindOrbitableObjects__7CPlayerCFRCQ24rstl32reserved_vector<9TUniqueId,1024>RQ24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Q27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneTypeR13CStateManagerb" +/* 8017CF04 00179E64 80 DE 03 30 */ lwz r6, 0x330(r30) +/* 8017CF08 00179E68 7F C3 F3 78 */ mr r3, r30 +/* 8017CF0C 00179E6C 80 FE 03 34 */ lwz r7, 0x334(r30) +/* 8017CF10 00179E70 7F E8 FB 78 */ mr r8, r31 +/* 8017CF14 00179E74 38 81 00 B0 */ addi r4, r1, 0xb0 +/* 8017CF18 00179E78 38 BE 03 54 */ addi r5, r30, 0x354 +/* 8017CF1C 00179E7C 39 20 00 01 */ li r9, 1 +/* 8017CF20 00179E80 48 00 0A 85 */ bl "FindOrbitableObjects__7CPlayerCFRCQ24rstl32reserved_vector<9TUniqueId,1024>RQ24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Q27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneTypeR13CStateManagerb" +/* 8017CF24 00179E84 80 DE 03 30 */ lwz r6, 0x330(r30) +/* 8017CF28 00179E88 7F C3 F3 78 */ mr r3, r30 +/* 8017CF2C 00179E8C 80 FE 03 34 */ lwz r7, 0x334(r30) +/* 8017CF30 00179E90 7F E8 FB 78 */ mr r8, r31 +/* 8017CF34 00179E94 38 81 00 B0 */ addi r4, r1, 0xb0 +/* 8017CF38 00179E98 38 BE 03 64 */ addi r5, r30, 0x364 +/* 8017CF3C 00179E9C 39 20 00 00 */ li r9, 0 +/* 8017CF40 00179EA0 48 00 0A 65 */ bl "FindOrbitableObjects__7CPlayerCFRCQ24rstl32reserved_vector<9TUniqueId,1024>RQ24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Q27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneTypeR13CStateManagerb" +/* 8017CF44 00179EA4 80 A1 00 B0 */ lwz r5, 0xb0(r1) +/* 8017CF48 00179EA8 38 60 00 00 */ li r3, 0 +/* 8017CF4C 00179EAC 2C 05 00 00 */ cmpwi r5, 0 +/* 8017CF50 00179EB0 40 81 00 40 */ ble lbl_8017CF90 +/* 8017CF54 00179EB4 2C 05 00 08 */ cmpwi r5, 8 +/* 8017CF58 00179EB8 38 85 FF F8 */ addi r4, r5, -8 +/* 8017CF5C 00179EBC 40 81 00 20 */ ble lbl_8017CF7C +/* 8017CF60 00179EC0 38 04 00 07 */ addi r0, r4, 7 +/* 8017CF64 00179EC4 54 00 E8 FE */ srwi r0, r0, 3 +/* 8017CF68 00179EC8 7C 09 03 A6 */ mtctr r0 +/* 8017CF6C 00179ECC 2C 04 00 00 */ cmpwi r4, 0 +/* 8017CF70 00179ED0 40 81 00 0C */ ble lbl_8017CF7C +lbl_8017CF74: +/* 8017CF74 00179ED4 38 63 00 08 */ addi r3, r3, 8 +/* 8017CF78 00179ED8 42 00 FF FC */ bdnz lbl_8017CF74 +lbl_8017CF7C: +/* 8017CF7C 00179EDC 7C 03 28 50 */ subf r0, r3, r5 +/* 8017CF80 00179EE0 7C 09 03 A6 */ mtctr r0 +/* 8017CF84 00179EE4 7C 03 28 00 */ cmpw r3, r5 +/* 8017CF88 00179EE8 40 80 00 08 */ bge lbl_8017CF90 +lbl_8017CF8C: +/* 8017CF8C 00179EEC 42 00 00 00 */ bdnz lbl_8017CF8C +lbl_8017CF90: +/* 8017CF90 00179EF0 38 00 00 00 */ li r0, 0 +/* 8017CF94 00179EF4 90 01 00 B0 */ stw r0, 0xb0(r1) +lbl_8017CF98: +/* 8017CF98 00179EF8 80 01 08 D4 */ lwz r0, 0x8d4(r1) +/* 8017CF9C 00179EFC 83 E1 08 CC */ lwz r31, 0x8cc(r1) +/* 8017CFA0 00179F00 83 C1 08 C8 */ lwz r30, 0x8c8(r1) +/* 8017CFA4 00179F04 83 A1 08 C4 */ lwz r29, 0x8c4(r1) +/* 8017CFA8 00179F08 7C 08 03 A6 */ mtlr r0 +/* 8017CFAC 00179F0C 38 21 08 D0 */ addi r1, r1, 0x8d0 +/* 8017CFB0 00179F10 4E 80 00 20 */ blr + +.global "FindBestOrbitableObject__7CPlayerCFRCQ24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Q27CPlayer15EPlayerZoneInfoR13CStateManager" +"FindBestOrbitableObject__7CPlayerCFRCQ24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Q27CPlayer15EPlayerZoneInfoR13CStateManager": +/* 8017CFB4 00179F14 94 21 E5 90 */ stwu r1, -0x1a70(r1) +/* 8017CFB8 00179F18 7C 08 02 A6 */ mflr r0 +/* 8017CFBC 00179F1C 90 01 1A 74 */ stw r0, 0x1a74(r1) +/* 8017CFC0 00179F20 38 00 1A 68 */ li r0, 0x1a68 +/* 8017CFC4 00179F24 DB E1 1A 60 */ stfd f31, 0x1a60(r1) +/* 8017CFC8 00179F28 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 +/* 8017CFCC 00179F2C 38 00 1A 58 */ li r0, 0x1a58 +/* 8017CFD0 00179F30 DB C1 1A 50 */ stfd f30, 0x1a50(r1) +/* 8017CFD4 00179F34 13 C1 00 0E */ psq_stx f30, r1, r0, 0, qr0 +/* 8017CFD8 00179F38 38 00 1A 48 */ li r0, 0x1a48 +/* 8017CFDC 00179F3C DB A1 1A 40 */ stfd f29, 0x1a40(r1) +/* 8017CFE0 00179F40 13 A1 00 0E */ psq_stx f29, r1, r0, 0, qr0 +/* 8017CFE4 00179F44 38 00 1A 38 */ li r0, 0x1a38 +/* 8017CFE8 00179F48 DB 81 1A 30 */ stfd f28, 0x1a30(r1) +/* 8017CFEC 00179F4C 13 81 00 0E */ psq_stx f28, r1, r0, 0, qr0 +/* 8017CFF0 00179F50 38 00 1A 28 */ li r0, 0x1a28 +/* 8017CFF4 00179F54 DB 61 1A 20 */ stfd f27, 0x1a20(r1) +/* 8017CFF8 00179F58 13 61 00 0E */ psq_stx f27, r1, r0, 0, qr0 +/* 8017CFFC 00179F5C 38 00 1A 18 */ li r0, 0x1a18 +/* 8017D000 00179F60 DB 41 1A 10 */ stfd f26, 0x1a10(r1) +/* 8017D004 00179F64 13 41 00 0E */ psq_stx f26, r1, r0, 0, qr0 +/* 8017D008 00179F68 38 00 1A 08 */ li r0, 0x1a08 +/* 8017D00C 00179F6C DB 21 1A 00 */ stfd f25, 0x1a00(r1) +/* 8017D010 00179F70 13 21 00 0E */ psq_stx f25, r1, r0, 0, qr0 +/* 8017D014 00179F74 38 00 19 F8 */ li r0, 0x19f8 +/* 8017D018 00179F78 DB 01 19 F0 */ stfd f24, 0x19f0(r1) +/* 8017D01C 00179F7C 13 01 00 0E */ psq_stx f24, r1, r0, 0, qr0 +/* 8017D020 00179F80 38 00 19 E8 */ li r0, 0x19e8 +/* 8017D024 00179F84 DA E1 19 E0 */ stfd f23, 0x19e0(r1) +/* 8017D028 00179F88 12 E1 00 0E */ psq_stx f23, r1, r0, 0, qr0 +/* 8017D02C 00179F8C 38 00 19 D8 */ li r0, 0x19d8 +/* 8017D030 00179F90 DA C1 19 D0 */ stfd f22, 0x19d0(r1) +/* 8017D034 00179F94 12 C1 00 0E */ psq_stx f22, r1, r0, 0, qr0 +/* 8017D038 00179F98 BE A1 19 A4 */ stmw r21, 0x19a4(r1) +/* 8017D03C 00179F9C 7C 76 1B 78 */ mr r22, r3 +/* 8017D040 00179FA0 7C 9C 23 78 */ mr r28, r4 +/* 8017D044 00179FA4 7C B9 2B 78 */ mr r25, r5 +/* 8017D048 00179FA8 7C D5 33 78 */ mr r21, r6 +/* 8017D04C 00179FAC 7C FD 3B 78 */ mr r29, r7 +/* 8017D050 00179FB0 38 61 00 7C */ addi r3, r1, 0x7c +/* 8017D054 00179FB4 48 10 7D 29 */ bl GetEyePosition__7CPlayerCFv +/* 8017D058 00179FB8 C0 61 00 7C */ lfs f3, 0x7c(r1) +/* 8017D05C 00179FBC 38 61 00 AC */ addi r3, r1, 0xac +/* 8017D060 00179FC0 C0 41 00 80 */ lfs f2, 0x80(r1) +/* 8017D064 00179FC4 C0 21 00 84 */ lfs f1, 0x84(r1) +/* 8017D068 00179FC8 C0 BC 00 58 */ lfs f5, 0x58(r28) +/* 8017D06C 00179FCC C0 9C 00 48 */ lfs f4, 0x48(r28) +/* 8017D070 00179FD0 C0 1C 00 38 */ lfs f0, 0x38(r28) +/* 8017D074 00179FD4 D0 61 00 B8 */ stfs f3, 0xb8(r1) +/* 8017D078 00179FD8 D0 41 00 BC */ stfs f2, 0xbc(r1) +/* 8017D07C 00179FDC D0 21 00 C0 */ stfs f1, 0xc0(r1) +/* 8017D080 00179FE0 D0 01 00 AC */ stfs f0, 0xac(r1) +/* 8017D084 00179FE4 D0 81 00 B0 */ stfs f4, 0xb0(r1) +/* 8017D088 00179FE8 D0 A1 00 B4 */ stfs f5, 0xb4(r1) +/* 8017D08C 00179FEC 48 19 78 6D */ bl Normalize__9CVector3fFv +/* 8017D090 00179FF0 3C 60 80 3F */ lis r3, lbl_803ED910@ha +/* 8017D094 00179FF4 3C E0 43 30 */ lis r7, 0x4330 +/* 8017D098 00179FF8 38 63 D9 10 */ addi r3, r3, lbl_803ED910@l +/* 8017D09C 00179FFC C3 A2 A2 80 */ lfs f29, lbl_805ABFA0@sda21(r2) +/* 8017D0A0 0017A000 80 A3 00 08 */ lwz r5, 8(r3) +/* 8017D0A4 0017A004 56 A6 10 3A */ slwi r6, r21, 2 +/* 8017D0A8 0017A008 81 0D A1 18 */ lwz r8, gpTweakPlayer@sda21(r13) +/* 8017D0AC 0017A00C FF 80 E8 90 */ fmr f28, f29 +/* 8017D0B0 0017A010 80 83 00 0C */ lwz r4, 0xc(r3) +/* 8017D0B4 0017A014 54 A0 0F FE */ srwi r0, r5, 0x1f +/* 8017D0B8 0017A018 7C C8 32 14 */ add r6, r8, r6 +/* 8017D0BC 0017A01C 80 7D 08 70 */ lwz r3, 0x870(r29) +/* 8017D0C0 0017A020 7C A0 2A 14 */ add r5, r0, r5 +/* 8017D0C4 0017A024 54 80 0F FE */ srwi r0, r4, 0x1f +/* 8017D0C8 0017A028 81 06 01 C8 */ lwz r8, 0x1c8(r6) +/* 8017D0CC 0017A02C 7C A9 0E 70 */ srawi r9, r5, 1 +/* 8017D0D0 0017A030 80 A6 01 D0 */ lwz r5, 0x1d0(r6) +/* 8017D0D4 0017A034 6D 26 80 00 */ xoris r6, r9, 0x8000 +/* 8017D0D8 0017A038 7C 00 22 14 */ add r0, r0, r4 +/* 8017D0DC 0017A03C 7C 00 0E 70 */ srawi r0, r0, 1 +/* 8017D0E0 0017A040 6D 08 80 00 */ xoris r8, r8, 0x8000 +/* 8017D0E4 0017A044 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 8017D0E8 0017A048 6C A4 80 00 */ xoris r4, r5, 0x8000 +/* 8017D0EC 0017A04C 91 01 19 6C */ stw r8, 0x196c(r1) +/* 8017D0F0 0017A050 3B E1 09 60 */ addi r31, r1, 0x960 +/* 8017D0F4 0017A054 C8 62 A2 98 */ lfd f3, lbl_805ABFB8@sda21(r2) +/* 8017D0F8 0017A058 3B C1 01 5C */ addi r30, r1, 0x15c +/* 8017D0FC 0017A05C 90 E1 19 68 */ stw r7, 0x1968(r1) +/* 8017D100 0017A060 A3 0D A3 8C */ lhz r24, lbl_805A8F4C@sda21(r13) +/* 8017D104 0017A064 C8 01 19 68 */ lfd f0, 0x1968(r1) +/* 8017D108 0017A068 90 C1 19 74 */ stw r6, 0x1974(r1) +/* 8017D10C 0017A06C EC 40 18 28 */ fsubs f2, f0, f3 +/* 8017D110 0017A070 82 E3 00 7C */ lwz r23, 0x7c(r3) +/* 8017D114 0017A074 90 E1 19 70 */ stw r7, 0x1970(r1) +/* 8017D118 0017A078 83 59 00 0C */ lwz r26, 0xc(r25) +/* 8017D11C 0017A07C C8 01 19 70 */ lfd f0, 0x1970(r1) +/* 8017D120 0017A080 90 81 19 84 */ stw r4, 0x1984(r1) +/* 8017D124 0017A084 EC 20 18 28 */ fsubs f1, f0, f3 +/* 8017D128 0017A088 90 E1 19 80 */ stw r7, 0x1980(r1) +/* 8017D12C 0017A08C C8 01 19 80 */ lfd f0, 0x1980(r1) +/* 8017D130 0017A090 EF 62 08 28 */ fsubs f27, f2, f1 +/* 8017D134 0017A094 90 01 19 8C */ stw r0, 0x198c(r1) +/* 8017D138 0017A098 EC 20 18 28 */ fsubs f1, f0, f3 +/* 8017D13C 0017A09C 90 E1 19 88 */ stw r7, 0x1988(r1) +/* 8017D140 0017A0A0 C8 01 19 88 */ lfd f0, 0x1988(r1) +/* 8017D144 0017A0A4 90 C1 19 7C */ stw r6, 0x197c(r1) +/* 8017D148 0017A0A8 EC 00 18 28 */ fsubs f0, f0, f3 +/* 8017D14C 0017A0AC 90 E1 19 78 */ stw r7, 0x1978(r1) +/* 8017D150 0017A0B0 C8 41 19 78 */ lfd f2, 0x1978(r1) +/* 8017D154 0017A0B4 EF 41 00 28 */ fsubs f26, f1, f0 +/* 8017D158 0017A0B8 90 01 19 94 */ stw r0, 0x1994(r1) +/* 8017D15C 0017A0BC EC 22 18 28 */ fsubs f1, f2, f3 +/* 8017D160 0017A0C0 90 E1 19 90 */ stw r7, 0x1990(r1) +/* 8017D164 0017A0C4 C8 01 19 90 */ lfd f0, 0x1990(r1) +/* 8017D168 0017A0C8 EF 7B 08 24 */ fdivs f27, f27, f1 +/* 8017D16C 0017A0CC EC 00 18 28 */ fsubs f0, f0, f3 +/* 8017D170 0017A0D0 EF 5A 00 24 */ fdivs f26, f26, f0 +/* 8017D174 0017A0D4 48 00 07 88 */ b lbl_8017D8FC +lbl_8017D178: +/* 8017D178 0017A0D8 A0 1A 00 00 */ lhz r0, 0(r26) +/* 8017D17C 0017A0DC 7F A3 EB 78 */ mr r3, r29 +/* 8017D180 0017A0E0 38 81 00 10 */ addi r4, r1, 0x10 +/* 8017D184 0017A0E4 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8017D188 0017A0E8 4B EC F4 1D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017D18C 0017A0EC 7C 64 1B 78 */ mr r4, r3 +/* 8017D190 0017A0F0 38 61 00 38 */ addi r3, r1, 0x38 +/* 8017D194 0017A0F4 4B F3 2A FD */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8017D198 0017A0F8 83 63 00 04 */ lwz r27, 4(r3) +/* 8017D19C 0017A0FC 28 1B 00 00 */ cmplwi r27, 0 +/* 8017D1A0 0017A100 41 82 07 58 */ beq lbl_8017D8F8 +/* 8017D1A4 0017A104 7F 64 DB 78 */ mr r4, r27 +/* 8017D1A8 0017A108 7F A5 EB 78 */ mr r5, r29 +/* 8017D1AC 0017A10C 81 9B 00 00 */ lwz r12, 0(r27) +/* 8017D1B0 0017A110 38 61 00 70 */ addi r3, r1, 0x70 +/* 8017D1B4 0017A114 81 8C 00 48 */ lwz r12, 0x48(r12) +/* 8017D1B8 0017A118 7D 89 03 A6 */ mtctr r12 +/* 8017D1BC 0017A11C 4E 80 04 21 */ bctrl +/* 8017D1C0 0017A120 C0 A1 00 70 */ lfs f5, 0x70(r1) +/* 8017D1C4 0017A124 38 61 00 94 */ addi r3, r1, 0x94 +/* 8017D1C8 0017A128 C0 81 00 74 */ lfs f4, 0x74(r1) +/* 8017D1CC 0017A12C C0 61 00 78 */ lfs f3, 0x78(r1) +/* 8017D1D0 0017A130 C0 41 00 BC */ lfs f2, 0xbc(r1) +/* 8017D1D4 0017A134 C0 21 00 C0 */ lfs f1, 0xc0(r1) +/* 8017D1D8 0017A138 C0 01 00 B8 */ lfs f0, 0xb8(r1) +/* 8017D1DC 0017A13C EC 44 10 28 */ fsubs f2, f4, f2 +/* 8017D1E0 0017A140 EC 23 08 28 */ fsubs f1, f3, f1 +/* 8017D1E4 0017A144 D0 A1 00 A0 */ stfs f5, 0xa0(r1) +/* 8017D1E8 0017A148 EC 05 00 28 */ fsubs f0, f5, f0 +/* 8017D1EC 0017A14C D0 81 00 A4 */ stfs f4, 0xa4(r1) +/* 8017D1F0 0017A150 D0 61 00 A8 */ stfs f3, 0xa8(r1) +/* 8017D1F4 0017A154 D0 01 00 94 */ stfs f0, 0x94(r1) +/* 8017D1F8 0017A158 D0 41 00 98 */ stfs f2, 0x98(r1) +/* 8017D1FC 0017A15C D0 21 00 9C */ stfs f1, 0x9c(r1) +/* 8017D200 0017A160 48 19 76 B9 */ bl Magnitude__9CVector3fCFv +/* 8017D204 0017A164 FF 20 08 90 */ fmr f25, f1 +/* 8017D208 0017A168 7E E4 BB 78 */ mr r4, r23 +/* 8017D20C 0017A16C 38 61 00 64 */ addi r3, r1, 0x64 +/* 8017D210 0017A170 38 A1 00 A0 */ addi r5, r1, 0xa0 +/* 8017D214 0017A174 4B EE 06 7D */ bl ConvertToScreenSpace__11CGameCameraCFRC9CVector3f +/* 8017D218 0017A178 C0 21 00 6C */ lfs f1, 0x6c(r1) +/* 8017D21C 0017A17C C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017D220 0017A180 C3 E1 00 64 */ lfs f31, 0x64(r1) +/* 8017D224 0017A184 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017D228 0017A188 C3 C1 00 68 */ lfs f30, 0x68(r1) +/* 8017D22C 0017A18C 4C 41 13 82 */ cror 2, 1, 2 +/* 8017D230 0017A190 40 82 06 C8 */ bne lbl_8017D8F8 +/* 8017D234 0017A194 A0 7A 00 00 */ lhz r3, 0(r26) +/* 8017D238 0017A198 A0 1C 03 10 */ lhz r0, 0x310(r28) +/* 8017D23C 0017A19C 7C 03 00 40 */ cmplw r3, r0 +/* 8017D240 0017A1A0 41 82 06 B8 */ beq lbl_8017D8F8 +/* 8017D244 0017A1A4 7F 64 DB 78 */ mr r4, r27 +/* 8017D248 0017A1A8 38 61 00 30 */ addi r3, r1, 0x30 +/* 8017D24C 0017A1AC 4B F2 C8 7D */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" +/* 8017D250 0017A1B0 82 A3 00 04 */ lwz r21, 4(r3) +/* 8017D254 0017A1B4 28 15 00 00 */ cmplwi r21, 0 +/* 8017D258 0017A1B8 41 82 02 50 */ beq lbl_8017D4A8 +/* 8017D25C 0017A1BC A0 75 00 08 */ lhz r3, 8(r21) +/* 8017D260 0017A1C0 A0 1C 03 10 */ lhz r0, 0x310(r28) +/* 8017D264 0017A1C4 7C 03 00 40 */ cmplw r3, r0 +/* 8017D268 0017A1C8 41 82 02 40 */ beq lbl_8017D4A8 +/* 8017D26C 0017A1CC 80 7D 08 B8 */ lwz r3, 0x8b8(r29) +/* 8017D270 0017A1D0 38 80 00 0C */ li r4, 0xc +/* 8017D274 0017A1D4 80 63 00 00 */ lwz r3, 0(r3) +/* 8017D278 0017A1D8 4B F1 48 49 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 8017D27C 0017A1DC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017D280 0017A1E0 41 82 06 78 */ beq lbl_8017D8F8 +/* 8017D284 0017A1E4 FC 19 E8 40 */ fcmpo cr0, f25, f29 +/* 8017D288 0017A1E8 40 80 06 70 */ bge lbl_8017D8F8 +/* 8017D28C 0017A1EC 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017D290 0017A1F0 C0 03 02 A0 */ lfs f0, 0x2a0(r3) +/* 8017D294 0017A1F4 FC 19 00 40 */ fcmpo cr0, f25, f0 +/* 8017D298 0017A1F8 40 80 06 60 */ bge lbl_8017D8F8 +/* 8017D29C 0017A1FC A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 8017D2A0 0017A200 38 00 00 00 */ li r0, 0 +/* 8017D2A4 0017A204 90 01 11 60 */ stw r0, 0x1160(r1) +/* 8017D2A8 0017A208 38 61 00 94 */ addi r3, r1, 0x94 +/* 8017D2AC 0017A20C B0 81 00 1C */ sth r4, 0x1c(r1) +/* 8017D2B0 0017A210 48 19 76 49 */ bl Normalize__9CVector3fFv +/* 8017D2B4 0017A214 FC 20 C8 90 */ fmr f1, f25 +/* 8017D2B8 0017A218 3C 80 80 47 */ lis r4, lbl_8046C8D8@ha +/* 8017D2BC 0017A21C 7C 66 1B 78 */ mr r6, r3 +/* 8017D2C0 0017A220 7F A3 EB 78 */ mr r3, r29 +/* 8017D2C4 0017A224 38 E4 C8 D8 */ addi r7, r4, lbl_8046C8D8@l +/* 8017D2C8 0017A228 7F 68 DB 78 */ mr r8, r27 +/* 8017D2CC 0017A22C 38 81 11 60 */ addi r4, r1, 0x1160 +/* 8017D2D0 0017A230 38 A1 00 B8 */ addi r5, r1, 0xb8 +/* 8017D2D4 0017A234 4B EC F4 05 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" +/* 8017D2D8 0017A238 38 61 00 94 */ addi r3, r1, 0x94 +/* 8017D2DC 0017A23C 48 19 76 1D */ bl Normalize__9CVector3fFv +/* 8017D2E0 0017A240 FC 20 C8 90 */ fmr f1, f25 +/* 8017D2E4 0017A244 3C A0 80 47 */ lis r5, lbl_8046C8C0@ha +/* 8017D2E8 0017A248 7C 67 1B 78 */ mr r7, r3 +/* 8017D2EC 0017A24C 7F A4 EB 78 */ mr r4, r29 +/* 8017D2F0 0017A250 39 05 C8 C0 */ addi r8, r5, lbl_8046C8C0@l +/* 8017D2F4 0017A254 38 61 01 28 */ addi r3, r1, 0x128 +/* 8017D2F8 0017A258 38 A1 00 1C */ addi r5, r1, 0x1c +/* 8017D2FC 0017A25C 38 C1 00 B8 */ addi r6, r1, 0xb8 +/* 8017D300 0017A260 39 21 11 60 */ addi r9, r1, 0x1160 +/* 8017D304 0017A264 4B EC FC C1 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 8017D308 0017A268 88 01 01 48 */ lbz r0, 0x148(r1) +/* 8017D30C 0017A26C 28 00 00 00 */ cmplwi r0, 0 +/* 8017D310 0017A270 40 82 01 3C */ bne lbl_8017D44C +/* 8017D314 0017A274 88 15 01 2C */ lbz r0, 0x12c(r21) +/* 8017D318 0017A278 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8017D31C 0017A27C 41 82 01 14 */ beq lbl_8017D430 +/* 8017D320 0017A280 C0 3C 00 50 */ lfs f1, 0x50(r28) +/* 8017D324 0017A284 38 61 00 88 */ addi r3, r1, 0x88 +/* 8017D328 0017A288 C0 15 00 50 */ lfs f0, 0x50(r21) +/* 8017D32C 0017A28C C0 7C 00 60 */ lfs f3, 0x60(r28) +/* 8017D330 0017A290 C0 55 00 60 */ lfs f2, 0x60(r21) +/* 8017D334 0017A294 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8017D338 0017A298 C0 15 00 40 */ lfs f0, 0x40(r21) +/* 8017D33C 0017A29C C0 3C 00 40 */ lfs f1, 0x40(r28) +/* 8017D340 0017A2A0 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8017D344 0017A2A4 D0 81 00 8C */ stfs f4, 0x8c(r1) +/* 8017D348 0017A2A8 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8017D34C 0017A2AC D0 41 00 90 */ stfs f2, 0x90(r1) +/* 8017D350 0017A2B0 D0 01 00 88 */ stfs f0, 0x88(r1) +/* 8017D354 0017A2B4 48 19 73 A5 */ bl CanBeNormalized__9CVector3fCFv +/* 8017D358 0017A2B8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017D35C 0017A2BC 41 82 00 D4 */ beq lbl_8017D430 +/* 8017D360 0017A2C0 C0 55 00 58 */ lfs f2, 0x58(r21) +/* 8017D364 0017A2C4 38 61 00 58 */ addi r3, r1, 0x58 +/* 8017D368 0017A2C8 C0 35 00 48 */ lfs f1, 0x48(r21) +/* 8017D36C 0017A2CC 38 81 00 4C */ addi r4, r1, 0x4c +/* 8017D370 0017A2D0 C0 15 00 38 */ lfs f0, 0x38(r21) +/* 8017D374 0017A2D4 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 8017D378 0017A2D8 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 8017D37C 0017A2DC D0 41 00 54 */ stfs f2, 0x54(r1) +/* 8017D380 0017A2E0 48 19 74 D1 */ bl AsNormalized__9CVector3fCFv +/* 8017D384 0017A2E4 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017D388 0017A2E8 38 61 00 40 */ addi r3, r1, 0x40 +/* 8017D38C 0017A2EC C3 01 00 58 */ lfs f24, 0x58(r1) +/* 8017D390 0017A2F0 38 81 00 88 */ addi r4, r1, 0x88 +/* 8017D394 0017A2F4 D0 01 00 90 */ stfs f0, 0x90(r1) +/* 8017D398 0017A2F8 C2 E1 00 5C */ lfs f23, 0x5c(r1) +/* 8017D39C 0017A2FC C2 C1 00 60 */ lfs f22, 0x60(r1) +/* 8017D3A0 0017A300 48 19 74 B1 */ bl AsNormalized__9CVector3fCFv +/* 8017D3A4 0017A304 C0 01 00 44 */ lfs f0, 0x44(r1) +/* 8017D3A8 0017A308 C0 41 00 40 */ lfs f2, 0x40(r1) +/* 8017D3AC 0017A30C EC 37 00 32 */ fmuls f1, f23, f0 +/* 8017D3B0 0017A310 C0 61 00 48 */ lfs f3, 0x48(r1) +/* 8017D3B4 0017A314 C0 02 A2 A4 */ lfs f0, lbl_805ABFC4@sda21(r2) +/* 8017D3B8 0017A318 EC 38 08 BA */ fmadds f1, f24, f2, f1 +/* 8017D3BC 0017A31C EC 36 08 FA */ fmadds f1, f22, f3, f1 +/* 8017D3C0 0017A320 FC 20 0A 10 */ fabs f1, f1 +/* 8017D3C4 0017A324 FC 20 08 18 */ frsp f1, f1 +/* 8017D3C8 0017A328 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017D3CC 0017A32C 4C 40 13 82 */ cror 2, 0, 2 +/* 8017D3D0 0017A330 40 82 00 60 */ bne lbl_8017D430 +/* 8017D3D4 0017A334 80 A1 11 60 */ lwz r5, 0x1160(r1) +/* 8017D3D8 0017A338 38 60 00 00 */ li r3, 0 +/* 8017D3DC 0017A33C 2C 05 00 00 */ cmpwi r5, 0 +/* 8017D3E0 0017A340 40 81 00 44 */ ble lbl_8017D424 +/* 8017D3E4 0017A344 2C 05 00 08 */ cmpwi r5, 8 +/* 8017D3E8 0017A348 38 85 FF F8 */ addi r4, r5, -8 +/* 8017D3EC 0017A34C 40 81 00 20 */ ble lbl_8017D40C +/* 8017D3F0 0017A350 38 04 00 07 */ addi r0, r4, 7 +/* 8017D3F4 0017A354 54 00 E8 FE */ srwi r0, r0, 3 +/* 8017D3F8 0017A358 7C 09 03 A6 */ mtctr r0 +/* 8017D3FC 0017A35C 2C 04 00 00 */ cmpwi r4, 0 +/* 8017D400 0017A360 40 81 00 0C */ ble lbl_8017D40C +lbl_8017D404: +/* 8017D404 0017A364 38 63 00 08 */ addi r3, r3, 8 +/* 8017D408 0017A368 42 00 FF FC */ bdnz lbl_8017D404 +lbl_8017D40C: +/* 8017D40C 0017A36C 7C 03 28 50 */ subf r0, r3, r5 +/* 8017D410 0017A370 7C 09 03 A6 */ mtctr r0 +/* 8017D414 0017A374 7C 03 28 00 */ cmpw r3, r5 +/* 8017D418 0017A378 40 80 00 0C */ bge lbl_8017D424 +lbl_8017D41C: +/* 8017D41C 0017A37C 38 63 00 01 */ addi r3, r3, 1 +/* 8017D420 0017A380 42 00 FF FC */ bdnz lbl_8017D41C +lbl_8017D424: +/* 8017D424 0017A384 38 00 00 00 */ li r0, 0 +/* 8017D428 0017A388 90 01 11 60 */ stw r0, 0x1160(r1) +/* 8017D42C 0017A38C 48 00 04 CC */ b lbl_8017D8F8 +lbl_8017D430: +/* 8017D430 0017A390 EC 3F D8 28 */ fsubs f1, f31, f27 +/* 8017D434 0017A394 A3 1B 00 08 */ lhz r24, 8(r27) +/* 8017D438 0017A398 EC 1E D0 28 */ fsubs f0, f30, f26 +/* 8017D43C 0017A39C FF A0 C8 90 */ fmr f29, f25 +/* 8017D440 0017A3A0 EC 21 00 72 */ fmuls f1, f1, f1 +/* 8017D444 0017A3A4 EC 00 00 32 */ fmuls f0, f0, f0 +/* 8017D448 0017A3A8 EF 81 00 2A */ fadds f28, f1, f0 +lbl_8017D44C: +/* 8017D44C 0017A3AC 80 A1 11 60 */ lwz r5, 0x1160(r1) +/* 8017D450 0017A3B0 38 60 00 00 */ li r3, 0 +/* 8017D454 0017A3B4 2C 05 00 00 */ cmpwi r5, 0 +/* 8017D458 0017A3B8 40 81 00 44 */ ble lbl_8017D49C +/* 8017D45C 0017A3BC 2C 05 00 08 */ cmpwi r5, 8 +/* 8017D460 0017A3C0 38 85 FF F8 */ addi r4, r5, -8 +/* 8017D464 0017A3C4 40 81 00 20 */ ble lbl_8017D484 +/* 8017D468 0017A3C8 38 04 00 07 */ addi r0, r4, 7 +/* 8017D46C 0017A3CC 54 00 E8 FE */ srwi r0, r0, 3 +/* 8017D470 0017A3D0 7C 09 03 A6 */ mtctr r0 +/* 8017D474 0017A3D4 2C 04 00 00 */ cmpwi r4, 0 +/* 8017D478 0017A3D8 40 81 00 0C */ ble lbl_8017D484 +lbl_8017D47C: +/* 8017D47C 0017A3DC 38 63 00 08 */ addi r3, r3, 8 +/* 8017D480 0017A3E0 42 00 FF FC */ bdnz lbl_8017D47C +lbl_8017D484: +/* 8017D484 0017A3E4 7C 03 28 50 */ subf r0, r3, r5 +/* 8017D488 0017A3E8 7C 09 03 A6 */ mtctr r0 +/* 8017D48C 0017A3EC 7C 03 28 00 */ cmpw r3, r5 +/* 8017D490 0017A3F0 40 80 00 0C */ bge lbl_8017D49C +lbl_8017D494: +/* 8017D494 0017A3F4 38 63 00 01 */ addi r3, r3, 1 +/* 8017D498 0017A3F8 42 00 FF FC */ bdnz lbl_8017D494 +lbl_8017D49C: +/* 8017D49C 0017A3FC 38 00 00 00 */ li r0, 0 +/* 8017D4A0 0017A400 90 01 11 60 */ stw r0, 0x1160(r1) +/* 8017D4A4 0017A404 48 00 04 54 */ b lbl_8017D8F8 +lbl_8017D4A8: +/* 8017D4A8 0017A408 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017D4AC 0017A40C EC 3D C8 28 */ fsubs f1, f29, f25 +/* 8017D4B0 0017A410 C0 03 01 A4 */ lfs f0, 0x1a4(r3) +/* 8017D4B4 0017A414 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017D4B8 0017A418 40 81 02 10 */ ble lbl_8017D6C8 +/* 8017D4BC 0017A41C 80 7D 08 B8 */ lwz r3, 0x8b8(r29) +/* 8017D4C0 0017A420 80 63 00 00 */ lwz r3, 0(r3) +/* 8017D4C4 0017A424 80 03 00 14 */ lwz r0, 0x14(r3) +/* 8017D4C8 0017A428 2C 00 00 02 */ cmpwi r0, 2 +/* 8017D4CC 0017A42C 41 82 01 FC */ beq lbl_8017D6C8 +/* 8017D4D0 0017A430 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017D4D4 0017A434 38 60 00 00 */ li r3, 0 +/* 8017D4D8 0017A438 90 61 09 5C */ stw r3, 0x95c(r1) +/* 8017D4DC 0017A43C 38 61 00 94 */ addi r3, r1, 0x94 +/* 8017D4E0 0017A440 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8017D4E4 0017A444 48 19 74 15 */ bl Normalize__9CVector3fFv +/* 8017D4E8 0017A448 FC 20 C8 90 */ fmr f1, f25 +/* 8017D4EC 0017A44C 3C 80 80 47 */ lis r4, lbl_8046C8D8@ha +/* 8017D4F0 0017A450 7C 66 1B 78 */ mr r6, r3 +/* 8017D4F4 0017A454 7F A3 EB 78 */ mr r3, r29 +/* 8017D4F8 0017A458 38 E4 C8 D8 */ addi r7, r4, lbl_8046C8D8@l +/* 8017D4FC 0017A45C 7F 68 DB 78 */ mr r8, r27 +/* 8017D500 0017A460 38 81 09 5C */ addi r4, r1, 0x95c +/* 8017D504 0017A464 38 A1 00 B8 */ addi r5, r1, 0xb8 +/* 8017D508 0017A468 4B EC F1 D1 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" +/* 8017D50C 0017A46C 7F F5 FB 78 */ mr r21, r31 +/* 8017D510 0017A470 48 00 00 F0 */ b lbl_8017D600 +lbl_8017D514: +/* 8017D514 0017A474 A0 15 00 00 */ lhz r0, 0(r21) +/* 8017D518 0017A478 7F A3 EB 78 */ mr r3, r29 +/* 8017D51C 0017A47C 38 81 00 0C */ addi r4, r1, 0xc +/* 8017D520 0017A480 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8017D524 0017A484 4B EC F0 81 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017D528 0017A488 28 03 00 00 */ cmplwi r3, 0 +/* 8017D52C 0017A48C 41 82 00 D0 */ beq lbl_8017D5FC +/* 8017D530 0017A490 80 A3 00 04 */ lwz r5, 4(r3) +/* 8017D534 0017A494 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) +/* 8017D538 0017A498 90 A1 00 2C */ stw r5, 0x2c(r1) +/* 8017D53C 0017A49C 7C 05 00 00 */ cmpw r5, r0 +/* 8017D540 0017A4A0 41 82 00 50 */ beq lbl_8017D590 +/* 8017D544 0017A4A4 41 82 00 B8 */ beq lbl_8017D5FC +/* 8017D548 0017A4A8 80 1D 08 CC */ lwz r0, 0x8cc(r29) +/* 8017D54C 0017A4AC 7C 05 00 00 */ cmpw r5, r0 +/* 8017D550 0017A4B0 41 82 00 AC */ beq lbl_8017D5FC +/* 8017D554 0017A4B4 80 9D 08 50 */ lwz r4, 0x850(r29) +/* 8017D558 0017A4B8 54 A3 18 38 */ slwi r3, r5, 3 +/* 8017D55C 0017A4BC 38 03 00 04 */ addi r0, r3, 4 +/* 8017D560 0017A4C0 90 A1 00 24 */ stw r5, 0x24(r1) +/* 8017D564 0017A4C4 80 64 00 20 */ lwz r3, 0x20(r4) +/* 8017D568 0017A4C8 7C 63 00 2E */ lwzx r3, r3, r0 +/* 8017D56C 0017A4CC 88 03 00 F0 */ lbz r0, 0xf0(r3) +/* 8017D570 0017A4D0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8017D574 0017A4D4 41 82 00 10 */ beq lbl_8017D584 +/* 8017D578 0017A4D8 80 63 01 2C */ lwz r3, 0x12c(r3) +/* 8017D57C 0017A4DC 80 03 10 DC */ lwz r0, 0x10dc(r3) +/* 8017D580 0017A4E0 48 00 00 08 */ b lbl_8017D588 +lbl_8017D584: +/* 8017D584 0017A4E4 38 00 00 00 */ li r0, 0 +lbl_8017D588: +/* 8017D588 0017A4E8 2C 00 00 00 */ cmpwi r0, 0 +/* 8017D58C 0017A4EC 40 82 00 70 */ bne lbl_8017D5FC +lbl_8017D590: +/* 8017D590 0017A4F0 7C 15 F8 40 */ cmplw r21, r31 +/* 8017D594 0017A4F4 41 80 00 54 */ blt lbl_8017D5E8 +/* 8017D598 0017A4F8 80 01 09 5C */ lwz r0, 0x95c(r1) +/* 8017D59C 0017A4FC 54 00 08 3C */ slwi r0, r0, 1 +/* 8017D5A0 0017A500 7C 1F 02 14 */ add r0, r31, r0 +/* 8017D5A4 0017A504 7C 15 00 40 */ cmplw r21, r0 +/* 8017D5A8 0017A508 40 80 00 40 */ bge lbl_8017D5E8 +/* 8017D5AC 0017A50C 7E A5 AB 78 */ mr r5, r21 +/* 8017D5B0 0017A510 48 00 00 10 */ b lbl_8017D5C0 +lbl_8017D5B4: +/* 8017D5B4 0017A514 A0 05 00 02 */ lhz r0, 2(r5) +/* 8017D5B8 0017A518 B0 05 00 00 */ sth r0, 0(r5) +/* 8017D5BC 0017A51C 38 A5 00 02 */ addi r5, r5, 2 +lbl_8017D5C0: +/* 8017D5C0 0017A520 80 81 09 5C */ lwz r4, 0x95c(r1) +/* 8017D5C4 0017A524 54 83 08 3C */ slwi r3, r4, 1 +/* 8017D5C8 0017A528 38 03 FF FE */ addi r0, r3, -2 +/* 8017D5CC 0017A52C 7C 1F 02 14 */ add r0, r31, r0 +/* 8017D5D0 0017A530 7C 05 00 40 */ cmplw r5, r0 +/* 8017D5D4 0017A534 41 80 FF E0 */ blt lbl_8017D5B4 +/* 8017D5D8 0017A538 38 04 FF FF */ addi r0, r4, -1 +/* 8017D5DC 0017A53C 7E A3 AB 78 */ mr r3, r21 +/* 8017D5E0 0017A540 90 01 09 5C */ stw r0, 0x95c(r1) +/* 8017D5E4 0017A544 48 00 00 10 */ b lbl_8017D5F4 +lbl_8017D5E8: +/* 8017D5E8 0017A548 80 01 09 5C */ lwz r0, 0x95c(r1) +/* 8017D5EC 0017A54C 54 00 08 3C */ slwi r0, r0, 1 +/* 8017D5F0 0017A550 7C 7F 02 14 */ add r3, r31, r0 +lbl_8017D5F4: +/* 8017D5F4 0017A554 7C 75 1B 78 */ mr r21, r3 +/* 8017D5F8 0017A558 48 00 00 08 */ b lbl_8017D600 +lbl_8017D5FC: +/* 8017D5FC 0017A55C 3A B5 00 02 */ addi r21, r21, 2 +lbl_8017D600: +/* 8017D600 0017A560 80 01 09 5C */ lwz r0, 0x95c(r1) +/* 8017D604 0017A564 54 00 08 3C */ slwi r0, r0, 1 +/* 8017D608 0017A568 7C 1F 02 14 */ add r0, r31, r0 +/* 8017D60C 0017A56C 7C 15 00 40 */ cmplw r21, r0 +/* 8017D610 0017A570 40 82 FF 04 */ bne lbl_8017D514 +/* 8017D614 0017A574 38 61 00 94 */ addi r3, r1, 0x94 +/* 8017D618 0017A578 48 19 72 E1 */ bl Normalize__9CVector3fFv +/* 8017D61C 0017A57C FC 20 C8 90 */ fmr f1, f25 +/* 8017D620 0017A580 3C A0 80 47 */ lis r5, lbl_8046C8C0@ha +/* 8017D624 0017A584 7C 67 1B 78 */ mr r7, r3 +/* 8017D628 0017A588 7F A4 EB 78 */ mr r4, r29 +/* 8017D62C 0017A58C 39 05 C8 C0 */ addi r8, r5, lbl_8046C8C0@l +/* 8017D630 0017A590 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 8017D634 0017A594 38 A1 00 18 */ addi r5, r1, 0x18 +/* 8017D638 0017A598 38 C1 00 B8 */ addi r6, r1, 0xb8 +/* 8017D63C 0017A59C 39 21 09 5C */ addi r9, r1, 0x95c +/* 8017D640 0017A5A0 4B EC F9 85 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 8017D644 0017A5A4 88 01 01 18 */ lbz r0, 0x118(r1) +/* 8017D648 0017A5A8 28 00 00 00 */ cmplwi r0, 0 +/* 8017D64C 0017A5AC 40 82 00 20 */ bne lbl_8017D66C +/* 8017D650 0017A5B0 EC 3F D8 28 */ fsubs f1, f31, f27 +/* 8017D654 0017A5B4 A3 1B 00 08 */ lhz r24, 8(r27) +/* 8017D658 0017A5B8 EC 1E D0 28 */ fsubs f0, f30, f26 +/* 8017D65C 0017A5BC FF A0 C8 90 */ fmr f29, f25 +/* 8017D660 0017A5C0 EC 21 00 72 */ fmuls f1, f1, f1 +/* 8017D664 0017A5C4 EC 00 00 32 */ fmuls f0, f0, f0 +/* 8017D668 0017A5C8 EF 81 00 2A */ fadds f28, f1, f0 +lbl_8017D66C: +/* 8017D66C 0017A5CC 80 A1 09 5C */ lwz r5, 0x95c(r1) +/* 8017D670 0017A5D0 38 60 00 00 */ li r3, 0 +/* 8017D674 0017A5D4 2C 05 00 00 */ cmpwi r5, 0 +/* 8017D678 0017A5D8 40 81 00 44 */ ble lbl_8017D6BC +/* 8017D67C 0017A5DC 2C 05 00 08 */ cmpwi r5, 8 +/* 8017D680 0017A5E0 38 85 FF F8 */ addi r4, r5, -8 +/* 8017D684 0017A5E4 40 81 00 20 */ ble lbl_8017D6A4 +/* 8017D688 0017A5E8 38 04 00 07 */ addi r0, r4, 7 +/* 8017D68C 0017A5EC 54 00 E8 FE */ srwi r0, r0, 3 +/* 8017D690 0017A5F0 7C 09 03 A6 */ mtctr r0 +/* 8017D694 0017A5F4 2C 04 00 00 */ cmpwi r4, 0 +/* 8017D698 0017A5F8 40 81 00 0C */ ble lbl_8017D6A4 +lbl_8017D69C: +/* 8017D69C 0017A5FC 38 63 00 08 */ addi r3, r3, 8 +/* 8017D6A0 0017A600 42 00 FF FC */ bdnz lbl_8017D69C +lbl_8017D6A4: +/* 8017D6A4 0017A604 7C 03 28 50 */ subf r0, r3, r5 +/* 8017D6A8 0017A608 7C 09 03 A6 */ mtctr r0 +/* 8017D6AC 0017A60C 7C 03 28 00 */ cmpw r3, r5 +/* 8017D6B0 0017A610 40 80 00 0C */ bge lbl_8017D6BC +lbl_8017D6B4: +/* 8017D6B4 0017A614 38 63 00 01 */ addi r3, r3, 1 +/* 8017D6B8 0017A618 42 00 FF FC */ bdnz lbl_8017D6B4 +lbl_8017D6BC: +/* 8017D6BC 0017A61C 38 00 00 00 */ li r0, 0 +/* 8017D6C0 0017A620 90 01 09 5C */ stw r0, 0x95c(r1) +/* 8017D6C4 0017A624 48 00 02 34 */ b lbl_8017D8F8 +lbl_8017D6C8: +/* 8017D6C8 0017A628 EC 39 E8 28 */ fsubs f1, f25, f29 +/* 8017D6CC 0017A62C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017D6D0 0017A630 C0 03 01 A4 */ lfs f0, 0x1a4(r3) +/* 8017D6D4 0017A634 FC 20 0A 10 */ fabs f1, f1 +/* 8017D6D8 0017A638 FC 20 08 18 */ frsp f1, f1 +/* 8017D6DC 0017A63C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017D6E0 0017A640 41 80 00 18 */ blt lbl_8017D6F8 +/* 8017D6E4 0017A644 80 7D 08 B8 */ lwz r3, 0x8b8(r29) +/* 8017D6E8 0017A648 80 63 00 00 */ lwz r3, 0(r3) +/* 8017D6EC 0017A64C 80 03 00 14 */ lwz r0, 0x14(r3) +/* 8017D6F0 0017A650 2C 00 00 02 */ cmpwi r0, 2 +/* 8017D6F4 0017A654 40 82 02 04 */ bne lbl_8017D8F8 +lbl_8017D6F8: +/* 8017D6F8 0017A658 EC 3F D8 28 */ fsubs f1, f31, f27 +/* 8017D6FC 0017A65C EC 1E D0 28 */ fsubs f0, f30, f26 +/* 8017D700 0017A660 EC 21 00 72 */ fmuls f1, f1, f1 +/* 8017D704 0017A664 EC 00 00 32 */ fmuls f0, f0, f0 +/* 8017D708 0017A668 EE C1 00 2A */ fadds f22, f1, f0 +/* 8017D70C 0017A66C FC 16 E0 40 */ fcmpo cr0, f22, f28 +/* 8017D710 0017A670 40 80 01 E8 */ bge lbl_8017D8F8 +/* 8017D714 0017A674 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 8017D718 0017A678 38 00 00 00 */ li r0, 0 +/* 8017D71C 0017A67C 90 01 01 58 */ stw r0, 0x158(r1) +/* 8017D720 0017A680 38 61 00 94 */ addi r3, r1, 0x94 +/* 8017D724 0017A684 B0 81 00 14 */ sth r4, 0x14(r1) +/* 8017D728 0017A688 48 19 71 D1 */ bl Normalize__9CVector3fFv +/* 8017D72C 0017A68C FC 20 C8 90 */ fmr f1, f25 +/* 8017D730 0017A690 3C 80 80 47 */ lis r4, lbl_8046C8D8@ha +/* 8017D734 0017A694 7C 66 1B 78 */ mr r6, r3 +/* 8017D738 0017A698 7F A3 EB 78 */ mr r3, r29 +/* 8017D73C 0017A69C 38 E4 C8 D8 */ addi r7, r4, lbl_8046C8D8@l +/* 8017D740 0017A6A0 7F 68 DB 78 */ mr r8, r27 +/* 8017D744 0017A6A4 38 81 01 58 */ addi r4, r1, 0x158 +/* 8017D748 0017A6A8 38 A1 00 B8 */ addi r5, r1, 0xb8 +/* 8017D74C 0017A6AC 4B EC EF 8D */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" +/* 8017D750 0017A6B0 7F D5 F3 78 */ mr r21, r30 +/* 8017D754 0017A6B4 48 00 00 F0 */ b lbl_8017D844 +lbl_8017D758: +/* 8017D758 0017A6B8 A0 15 00 00 */ lhz r0, 0(r21) +/* 8017D75C 0017A6BC 7F A3 EB 78 */ mr r3, r29 +/* 8017D760 0017A6C0 38 81 00 08 */ addi r4, r1, 8 +/* 8017D764 0017A6C4 B0 01 00 08 */ sth r0, 8(r1) +/* 8017D768 0017A6C8 4B EC EE 3D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017D76C 0017A6CC 28 03 00 00 */ cmplwi r3, 0 +/* 8017D770 0017A6D0 41 82 00 D0 */ beq lbl_8017D840 +/* 8017D774 0017A6D4 80 A3 00 04 */ lwz r5, 4(r3) +/* 8017D778 0017A6D8 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) +/* 8017D77C 0017A6DC 90 A1 00 28 */ stw r5, 0x28(r1) +/* 8017D780 0017A6E0 7C 05 00 00 */ cmpw r5, r0 +/* 8017D784 0017A6E4 41 82 00 50 */ beq lbl_8017D7D4 +/* 8017D788 0017A6E8 41 82 00 B8 */ beq lbl_8017D840 +/* 8017D78C 0017A6EC 80 1D 08 CC */ lwz r0, 0x8cc(r29) +/* 8017D790 0017A6F0 7C 05 00 00 */ cmpw r5, r0 +/* 8017D794 0017A6F4 41 82 00 AC */ beq lbl_8017D840 +/* 8017D798 0017A6F8 80 9D 08 50 */ lwz r4, 0x850(r29) +/* 8017D79C 0017A6FC 54 A3 18 38 */ slwi r3, r5, 3 +/* 8017D7A0 0017A700 38 03 00 04 */ addi r0, r3, 4 +/* 8017D7A4 0017A704 90 A1 00 20 */ stw r5, 0x20(r1) +/* 8017D7A8 0017A708 80 64 00 20 */ lwz r3, 0x20(r4) +/* 8017D7AC 0017A70C 7C 63 00 2E */ lwzx r3, r3, r0 +/* 8017D7B0 0017A710 88 03 00 F0 */ lbz r0, 0xf0(r3) +/* 8017D7B4 0017A714 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8017D7B8 0017A718 41 82 00 10 */ beq lbl_8017D7C8 +/* 8017D7BC 0017A71C 80 63 01 2C */ lwz r3, 0x12c(r3) +/* 8017D7C0 0017A720 80 03 10 DC */ lwz r0, 0x10dc(r3) +/* 8017D7C4 0017A724 48 00 00 08 */ b lbl_8017D7CC +lbl_8017D7C8: +/* 8017D7C8 0017A728 38 00 00 00 */ li r0, 0 +lbl_8017D7CC: +/* 8017D7CC 0017A72C 2C 00 00 00 */ cmpwi r0, 0 +/* 8017D7D0 0017A730 40 82 00 70 */ bne lbl_8017D840 +lbl_8017D7D4: +/* 8017D7D4 0017A734 7C 15 F0 40 */ cmplw r21, r30 +/* 8017D7D8 0017A738 41 80 00 54 */ blt lbl_8017D82C +/* 8017D7DC 0017A73C 80 01 01 58 */ lwz r0, 0x158(r1) +/* 8017D7E0 0017A740 54 00 08 3C */ slwi r0, r0, 1 +/* 8017D7E4 0017A744 7C 1E 02 14 */ add r0, r30, r0 +/* 8017D7E8 0017A748 7C 15 00 40 */ cmplw r21, r0 +/* 8017D7EC 0017A74C 40 80 00 40 */ bge lbl_8017D82C +/* 8017D7F0 0017A750 7E A5 AB 78 */ mr r5, r21 +/* 8017D7F4 0017A754 48 00 00 10 */ b lbl_8017D804 +lbl_8017D7F8: +/* 8017D7F8 0017A758 A0 05 00 02 */ lhz r0, 2(r5) +/* 8017D7FC 0017A75C B0 05 00 00 */ sth r0, 0(r5) +/* 8017D800 0017A760 38 A5 00 02 */ addi r5, r5, 2 +lbl_8017D804: +/* 8017D804 0017A764 80 81 01 58 */ lwz r4, 0x158(r1) +/* 8017D808 0017A768 54 83 08 3C */ slwi r3, r4, 1 +/* 8017D80C 0017A76C 38 03 FF FE */ addi r0, r3, -2 +/* 8017D810 0017A770 7C 1E 02 14 */ add r0, r30, r0 +/* 8017D814 0017A774 7C 05 00 40 */ cmplw r5, r0 +/* 8017D818 0017A778 41 80 FF E0 */ blt lbl_8017D7F8 +/* 8017D81C 0017A77C 38 04 FF FF */ addi r0, r4, -1 +/* 8017D820 0017A780 7E A3 AB 78 */ mr r3, r21 +/* 8017D824 0017A784 90 01 01 58 */ stw r0, 0x158(r1) +/* 8017D828 0017A788 48 00 00 10 */ b lbl_8017D838 +lbl_8017D82C: +/* 8017D82C 0017A78C 80 01 01 58 */ lwz r0, 0x158(r1) +/* 8017D830 0017A790 54 00 08 3C */ slwi r0, r0, 1 +/* 8017D834 0017A794 7C 7E 02 14 */ add r3, r30, r0 +lbl_8017D838: +/* 8017D838 0017A798 7C 75 1B 78 */ mr r21, r3 +/* 8017D83C 0017A79C 48 00 00 08 */ b lbl_8017D844 +lbl_8017D840: +/* 8017D840 0017A7A0 3A B5 00 02 */ addi r21, r21, 2 +lbl_8017D844: +/* 8017D844 0017A7A4 80 01 01 58 */ lwz r0, 0x158(r1) +/* 8017D848 0017A7A8 54 00 08 3C */ slwi r0, r0, 1 +/* 8017D84C 0017A7AC 7C 1E 02 14 */ add r0, r30, r0 +/* 8017D850 0017A7B0 7C 15 00 40 */ cmplw r21, r0 +/* 8017D854 0017A7B4 40 82 FF 04 */ bne lbl_8017D758 +/* 8017D858 0017A7B8 38 61 00 94 */ addi r3, r1, 0x94 +/* 8017D85C 0017A7BC 48 19 70 9D */ bl Normalize__9CVector3fFv +/* 8017D860 0017A7C0 FC 20 C8 90 */ fmr f1, f25 +/* 8017D864 0017A7C4 3C A0 80 47 */ lis r5, lbl_8046C8C0@ha +/* 8017D868 0017A7C8 7C 67 1B 78 */ mr r7, r3 +/* 8017D86C 0017A7CC 7F A4 EB 78 */ mr r4, r29 +/* 8017D870 0017A7D0 39 05 C8 C0 */ addi r8, r5, lbl_8046C8C0@l +/* 8017D874 0017A7D4 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 8017D878 0017A7D8 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8017D87C 0017A7DC 38 C1 00 B8 */ addi r6, r1, 0xb8 +/* 8017D880 0017A7E0 39 21 01 58 */ addi r9, r1, 0x158 +/* 8017D884 0017A7E4 4B EC F7 41 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 8017D888 0017A7E8 88 01 00 E8 */ lbz r0, 0xe8(r1) +/* 8017D88C 0017A7EC 28 00 00 00 */ cmplwi r0, 0 +/* 8017D890 0017A7F0 40 82 00 10 */ bne lbl_8017D8A0 +/* 8017D894 0017A7F4 FF 80 B0 90 */ fmr f28, f22 +/* 8017D898 0017A7F8 A3 1B 00 08 */ lhz r24, 8(r27) +/* 8017D89C 0017A7FC FF A0 C8 90 */ fmr f29, f25 +lbl_8017D8A0: +/* 8017D8A0 0017A800 80 A1 01 58 */ lwz r5, 0x158(r1) +/* 8017D8A4 0017A804 38 60 00 00 */ li r3, 0 +/* 8017D8A8 0017A808 2C 05 00 00 */ cmpwi r5, 0 +/* 8017D8AC 0017A80C 40 81 00 44 */ ble lbl_8017D8F0 +/* 8017D8B0 0017A810 2C 05 00 08 */ cmpwi r5, 8 +/* 8017D8B4 0017A814 38 85 FF F8 */ addi r4, r5, -8 +/* 8017D8B8 0017A818 40 81 00 20 */ ble lbl_8017D8D8 +/* 8017D8BC 0017A81C 38 04 00 07 */ addi r0, r4, 7 +/* 8017D8C0 0017A820 54 00 E8 FE */ srwi r0, r0, 3 +/* 8017D8C4 0017A824 7C 09 03 A6 */ mtctr r0 +/* 8017D8C8 0017A828 2C 04 00 00 */ cmpwi r4, 0 +/* 8017D8CC 0017A82C 40 81 00 0C */ ble lbl_8017D8D8 +lbl_8017D8D0: +/* 8017D8D0 0017A830 38 63 00 08 */ addi r3, r3, 8 +/* 8017D8D4 0017A834 42 00 FF FC */ bdnz lbl_8017D8D0 +lbl_8017D8D8: +/* 8017D8D8 0017A838 7C 03 28 50 */ subf r0, r3, r5 +/* 8017D8DC 0017A83C 7C 09 03 A6 */ mtctr r0 +/* 8017D8E0 0017A840 7C 03 28 00 */ cmpw r3, r5 +/* 8017D8E4 0017A844 40 80 00 0C */ bge lbl_8017D8F0 +lbl_8017D8E8: +/* 8017D8E8 0017A848 38 63 00 01 */ addi r3, r3, 1 +/* 8017D8EC 0017A84C 42 00 FF FC */ bdnz lbl_8017D8E8 +lbl_8017D8F0: +/* 8017D8F0 0017A850 38 00 00 00 */ li r0, 0 +/* 8017D8F4 0017A854 90 01 01 58 */ stw r0, 0x158(r1) +lbl_8017D8F8: +/* 8017D8F8 0017A858 3B 5A 00 02 */ addi r26, r26, 2 +lbl_8017D8FC: +/* 8017D8FC 0017A85C 80 19 00 04 */ lwz r0, 4(r25) +/* 8017D900 0017A860 80 79 00 0C */ lwz r3, 0xc(r25) +/* 8017D904 0017A864 54 00 08 3C */ slwi r0, r0, 1 +/* 8017D908 0017A868 7C 03 02 14 */ add r0, r3, r0 +/* 8017D90C 0017A86C 7C 1A 00 40 */ cmplw r26, r0 +/* 8017D910 0017A870 40 82 F8 68 */ bne lbl_8017D178 +/* 8017D914 0017A874 B3 16 00 00 */ sth r24, 0(r22) +/* 8017D918 0017A878 38 00 1A 68 */ li r0, 0x1a68 +/* 8017D91C 0017A87C 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 +/* 8017D920 0017A880 CB E1 1A 60 */ lfd f31, 0x1a60(r1) +/* 8017D924 0017A884 38 00 1A 58 */ li r0, 0x1a58 +/* 8017D928 0017A888 13 C1 00 0C */ psq_lx f30, r1, r0, 0, qr0 +/* 8017D92C 0017A88C CB C1 1A 50 */ lfd f30, 0x1a50(r1) +/* 8017D930 0017A890 38 00 1A 48 */ li r0, 0x1a48 +/* 8017D934 0017A894 13 A1 00 0C */ psq_lx f29, r1, r0, 0, qr0 +/* 8017D938 0017A898 CB A1 1A 40 */ lfd f29, 0x1a40(r1) +/* 8017D93C 0017A89C 38 00 1A 38 */ li r0, 0x1a38 +/* 8017D940 0017A8A0 13 81 00 0C */ psq_lx f28, r1, r0, 0, qr0 +/* 8017D944 0017A8A4 CB 81 1A 30 */ lfd f28, 0x1a30(r1) +/* 8017D948 0017A8A8 38 00 1A 28 */ li r0, 0x1a28 +/* 8017D94C 0017A8AC 13 61 00 0C */ psq_lx f27, r1, r0, 0, qr0 +/* 8017D950 0017A8B0 CB 61 1A 20 */ lfd f27, 0x1a20(r1) +/* 8017D954 0017A8B4 38 00 1A 18 */ li r0, 0x1a18 +/* 8017D958 0017A8B8 13 41 00 0C */ psq_lx f26, r1, r0, 0, qr0 +/* 8017D95C 0017A8BC CB 41 1A 10 */ lfd f26, 0x1a10(r1) +/* 8017D960 0017A8C0 38 00 1A 08 */ li r0, 0x1a08 +/* 8017D964 0017A8C4 13 21 00 0C */ psq_lx f25, r1, r0, 0, qr0 +/* 8017D968 0017A8C8 CB 21 1A 00 */ lfd f25, 0x1a00(r1) +/* 8017D96C 0017A8CC 38 00 19 F8 */ li r0, 0x19f8 +/* 8017D970 0017A8D0 13 01 00 0C */ psq_lx f24, r1, r0, 0, qr0 +/* 8017D974 0017A8D4 CB 01 19 F0 */ lfd f24, 0x19f0(r1) +/* 8017D978 0017A8D8 38 00 19 E8 */ li r0, 0x19e8 +/* 8017D97C 0017A8DC 12 E1 00 0C */ psq_lx f23, r1, r0, 0, qr0 +/* 8017D980 0017A8E0 CA E1 19 E0 */ lfd f23, 0x19e0(r1) +/* 8017D984 0017A8E4 38 00 19 D8 */ li r0, 0x19d8 +/* 8017D988 0017A8E8 12 C1 00 0C */ psq_lx f22, r1, r0, 0, qr0 +/* 8017D98C 0017A8EC CA C1 19 D0 */ lfd f22, 0x19d0(r1) +/* 8017D990 0017A8F0 BA A1 19 A4 */ lmw r21, 0x19a4(r1) +/* 8017D994 0017A8F4 80 01 1A 74 */ lwz r0, 0x1a74(r1) +/* 8017D998 0017A8F8 7C 08 03 A6 */ mtlr r0 +/* 8017D99C 0017A8FC 38 21 1A 70 */ addi r1, r1, 0x1a70 +/* 8017D9A0 0017A900 4E 80 00 20 */ blr + +.global "FindOrbitableObjects__7CPlayerCFRCQ24rstl32reserved_vector<9TUniqueId,1024>RQ24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Q27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneTypeR13CStateManagerb" +"FindOrbitableObjects__7CPlayerCFRCQ24rstl32reserved_vector<9TUniqueId,1024>RQ24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Q27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneTypeR13CStateManagerb": +/* 8017D9A4 0017A904 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 8017D9A8 0017A908 7C 08 02 A6 */ mflr r0 +/* 8017D9AC 0017A90C 90 01 01 04 */ stw r0, 0x104(r1) +/* 8017D9B0 0017A910 DB E1 00 F0 */ stfd f31, 0xf0(r1) +/* 8017D9B4 0017A914 F3 E1 00 F8 */ psq_st f31, 248(r1), 0, qr0 +/* 8017D9B8 0017A918 DB C1 00 E0 */ stfd f30, 0xe0(r1) +/* 8017D9BC 0017A91C F3 C1 00 E8 */ psq_st f30, 232(r1), 0, qr0 +/* 8017D9C0 0017A920 DB A1 00 D0 */ stfd f29, 0xd0(r1) +/* 8017D9C4 0017A924 F3 A1 00 D8 */ psq_st f29, 216(r1), 0, qr0 +/* 8017D9C8 0017A928 DB 81 00 C0 */ stfd f28, 0xc0(r1) +/* 8017D9CC 0017A92C F3 81 00 C8 */ psq_st f28, 200(r1), 0, qr0 +/* 8017D9D0 0017A930 BE 81 00 90 */ stmw r20, 0x90(r1) +/* 8017D9D4 0017A934 7C 74 1B 78 */ mr r20, r3 +/* 8017D9D8 0017A938 7C 95 23 78 */ mr r21, r4 +/* 8017D9DC 0017A93C 7C B6 2B 78 */ mr r22, r5 +/* 8017D9E0 0017A940 7C D7 33 78 */ mr r23, r6 +/* 8017D9E4 0017A944 7C F8 3B 78 */ mr r24, r7 +/* 8017D9E8 0017A948 7D 19 43 78 */ mr r25, r8 +/* 8017D9EC 0017A94C 7D 3A 4B 78 */ mr r26, r9 +/* 8017D9F0 0017A950 7E 84 A3 78 */ mr r4, r20 +/* 8017D9F4 0017A954 38 61 00 34 */ addi r3, r1, 0x34 +/* 8017D9F8 0017A958 48 10 73 85 */ bl GetEyePosition__7CPlayerCFv +/* 8017D9FC 0017A95C C0 54 00 58 */ lfs f2, 0x58(r20) +/* 8017DA00 0017A960 38 61 00 64 */ addi r3, r1, 0x64 +/* 8017DA04 0017A964 C0 34 00 48 */ lfs f1, 0x48(r20) +/* 8017DA08 0017A968 C0 14 00 38 */ lfs f0, 0x38(r20) +/* 8017DA0C 0017A96C D0 21 00 68 */ stfs f1, 0x68(r1) +/* 8017DA10 0017A970 C3 E1 00 34 */ lfs f31, 0x34(r1) +/* 8017DA14 0017A974 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 8017DA18 0017A978 C3 C1 00 38 */ lfs f30, 0x38(r1) +/* 8017DA1C 0017A97C D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 8017DA20 0017A980 C3 A1 00 3C */ lfs f29, 0x3c(r1) +/* 8017DA24 0017A984 48 19 6E D5 */ bl Normalize__9CVector3fFv +/* 8017DA28 0017A988 80 99 08 70 */ lwz r4, 0x870(r25) +/* 8017DA2C 0017A98C 3C 60 80 3F */ lis r3, lbl_803ED910@ha +/* 8017DA30 0017A990 3B B5 00 04 */ addi r29, r21, 4 +/* 8017DA34 0017A994 83 C4 00 7C */ lwz r30, 0x7c(r4) +/* 8017DA38 0017A998 3B E3 D9 10 */ addi r31, r3, lbl_803ED910@l +/* 8017DA3C 0017A99C 48 00 02 44 */ b lbl_8017DC80 +lbl_8017DA40: +/* 8017DA40 0017A9A0 A0 1D 00 00 */ lhz r0, 0(r29) +/* 8017DA44 0017A9A4 7F 23 CB 78 */ mr r3, r25 +/* 8017DA48 0017A9A8 38 81 00 10 */ addi r4, r1, 0x10 +/* 8017DA4C 0017A9AC B0 01 00 10 */ sth r0, 0x10(r1) +/* 8017DA50 0017A9B0 4B EC EB 55 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017DA54 0017A9B4 7C 64 1B 78 */ mr r4, r3 +/* 8017DA58 0017A9B8 38 61 00 14 */ addi r3, r1, 0x14 +/* 8017DA5C 0017A9BC 4B F3 22 35 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8017DA60 0017A9C0 83 83 00 04 */ lwz r28, 4(r3) +/* 8017DA64 0017A9C4 28 1C 00 00 */ cmplwi r28, 0 +/* 8017DA68 0017A9C8 41 82 02 14 */ beq lbl_8017DC7C +/* 8017DA6C 0017A9CC A0 DC 00 08 */ lhz r6, 8(r28) +/* 8017DA70 0017A9D0 A0 14 00 08 */ lhz r0, 8(r20) +/* 8017DA74 0017A9D4 7C 06 00 40 */ cmplw r6, r0 +/* 8017DA78 0017A9D8 41 82 02 04 */ beq lbl_8017DC7C +/* 8017DA7C 0017A9DC B0 C1 00 08 */ sth r6, 8(r1) +/* 8017DA80 0017A9E0 7E 83 A3 78 */ mr r3, r20 +/* 8017DA84 0017A9E4 7F 25 CB 78 */ mr r5, r25 +/* 8017DA88 0017A9E8 38 81 00 0C */ addi r4, r1, 0xc +/* 8017DA8C 0017A9EC B0 C1 00 0C */ sth r6, 0xc(r1) +/* 8017DA90 0017A9F0 48 00 15 ED */ bl ValidateOrbitTargetId__7CPlayerCF9TUniqueIdR13CStateManager +/* 8017DA94 0017A9F4 2C 03 00 00 */ cmpwi r3, 0 +/* 8017DA98 0017A9F8 40 82 01 E4 */ bne lbl_8017DC7C +/* 8017DA9C 0017A9FC 7F 84 E3 78 */ mr r4, r28 +/* 8017DAA0 0017AA00 7F 25 CB 78 */ mr r5, r25 +/* 8017DAA4 0017AA04 81 9C 00 00 */ lwz r12, 0(r28) +/* 8017DAA8 0017AA08 38 61 00 28 */ addi r3, r1, 0x28 +/* 8017DAAC 0017AA0C 81 8C 00 48 */ lwz r12, 0x48(r12) +/* 8017DAB0 0017AA10 7D 89 03 A6 */ mtctr r12 +/* 8017DAB4 0017AA14 4E 80 04 21 */ bctrl +/* 8017DAB8 0017AA18 C0 41 00 28 */ lfs f2, 0x28(r1) +/* 8017DABC 0017AA1C 7F C4 F3 78 */ mr r4, r30 +/* 8017DAC0 0017AA20 C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 8017DAC4 0017AA24 38 61 00 1C */ addi r3, r1, 0x1c +/* 8017DAC8 0017AA28 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 8017DACC 0017AA2C 38 A1 00 58 */ addi r5, r1, 0x58 +/* 8017DAD0 0017AA30 D0 41 00 58 */ stfs f2, 0x58(r1) +/* 8017DAD4 0017AA34 D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 8017DAD8 0017AA38 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 8017DADC 0017AA3C 4B ED FD B5 */ bl ConvertToScreenSpace__11CGameCameraCFRC9CVector3f +/* 8017DAE0 0017AA40 80 7F 00 08 */ lwz r3, 8(r31) +/* 8017DAE4 0017AA44 3C 80 43 30 */ lis r4, 0x4330 +/* 8017DAE8 0017AA48 C1 01 00 1C */ lfs f8, 0x1c(r1) +/* 8017DAEC 0017AA4C 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 8017DAF0 0017AA50 6C 65 80 00 */ xoris r5, r3, 0x8000 +/* 8017DAF4 0017AA54 80 DF 00 0C */ lwz r6, 0xc(r31) +/* 8017DAF8 0017AA58 90 A1 00 7C */ stw r5, 0x7c(r1) +/* 8017DAFC 0017AA5C 3B 60 00 00 */ li r27, 0 +/* 8017DB00 0017AA60 6C C3 80 00 */ xoris r3, r6, 0x8000 +/* 8017DB04 0017AA64 C0 E1 00 20 */ lfs f7, 0x20(r1) +/* 8017DB08 0017AA68 90 81 00 78 */ stw r4, 0x78(r1) +/* 8017DB0C 0017AA6C C8 A2 A2 98 */ lfd f5, lbl_805ABFB8@sda21(r2) +/* 8017DB10 0017AA70 C8 01 00 78 */ lfd f0, 0x78(r1) +/* 8017DB14 0017AA74 90 61 00 8C */ stw r3, 0x8c(r1) +/* 8017DB18 0017AA78 EC 20 28 28 */ fsubs f1, f0, f5 +/* 8017DB1C 0017AA7C C0 C1 00 24 */ lfs f6, 0x24(r1) +/* 8017DB20 0017AA80 90 81 00 88 */ stw r4, 0x88(r1) +/* 8017DB24 0017AA84 C0 62 A2 68 */ lfs f3, lbl_805ABF88@sda21(r2) +/* 8017DB28 0017AA88 C8 01 00 88 */ lfd f0, 0x88(r1) +/* 8017DB2C 0017AA8C EC 28 00 72 */ fmuls f1, f8, f1 +/* 8017DB30 0017AA90 90 A1 00 74 */ stw r5, 0x74(r1) +/* 8017DB34 0017AA94 EC 00 28 28 */ fsubs f0, f0, f5 +/* 8017DB38 0017AA98 90 81 00 70 */ stw r4, 0x70(r1) +/* 8017DB3C 0017AA9C EC 41 00 F2 */ fmuls f2, f1, f3 +/* 8017DB40 0017AAA0 C8 21 00 70 */ lfd f1, 0x70(r1) +/* 8017DB44 0017AAA4 EC 07 00 32 */ fmuls f0, f7, f0 +/* 8017DB48 0017AAA8 90 61 00 84 */ stw r3, 0x84(r1) +/* 8017DB4C 0017AAAC EC 81 28 28 */ fsubs f4, f1, f5 +/* 8017DB50 0017AAB0 90 81 00 80 */ stw r4, 0x80(r1) +/* 8017DB54 0017AAB4 EC 00 00 F2 */ fmuls f0, f0, f3 +/* 8017DB58 0017AAB8 C8 21 00 80 */ lfd f1, 0x80(r1) +/* 8017DB5C 0017AABC EC 44 10 FA */ fmadds f2, f4, f3, f2 +/* 8017DB60 0017AAC0 D1 01 00 4C */ stfs f8, 0x4c(r1) +/* 8017DB64 0017AAC4 EC 21 28 28 */ fsubs f1, f1, f5 +/* 8017DB68 0017AAC8 D0 E1 00 50 */ stfs f7, 0x50(r1) +/* 8017DB6C 0017AACC EC 01 00 FA */ fmadds f0, f1, f3, f0 +/* 8017DB70 0017AAD0 D0 C1 00 54 */ stfs f6, 0x54(r1) +/* 8017DB74 0017AAD4 D0 41 00 4C */ stfs f2, 0x4c(r1) +/* 8017DB78 0017AAD8 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8017DB7C 0017AADC 41 82 00 28 */ beq lbl_8017DBA4 +/* 8017DB80 0017AAE0 7E 83 A3 78 */ mr r3, r20 +/* 8017DB84 0017AAE4 7E E5 BB 78 */ mr r5, r23 +/* 8017DB88 0017AAE8 7F 06 C3 78 */ mr r6, r24 +/* 8017DB8C 0017AAEC 38 81 00 4C */ addi r4, r1, 0x4c +/* 8017DB90 0017AAF0 48 00 01 3D */ bl WithinOrbitScreenBox__7CPlayerCFRC9CVector3fQ27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneType +/* 8017DB94 0017AAF4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017DB98 0017AAF8 41 82 00 0C */ beq lbl_8017DBA4 +/* 8017DB9C 0017AAFC 3B 60 00 01 */ li r27, 1 +/* 8017DBA0 0017AB00 48 00 00 2C */ b lbl_8017DBCC +lbl_8017DBA4: +/* 8017DBA4 0017AB04 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 8017DBA8 0017AB08 40 82 00 24 */ bne lbl_8017DBCC +/* 8017DBAC 0017AB0C 7E 83 A3 78 */ mr r3, r20 +/* 8017DBB0 0017AB10 7E E5 BB 78 */ mr r5, r23 +/* 8017DBB4 0017AB14 7F 06 C3 78 */ mr r6, r24 +/* 8017DBB8 0017AB18 38 81 00 4C */ addi r4, r1, 0x4c +/* 8017DBBC 0017AB1C 48 00 01 11 */ bl WithinOrbitScreenBox__7CPlayerCFRC9CVector3fQ27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneType +/* 8017DBC0 0017AB20 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017DBC4 0017AB24 40 82 00 08 */ bne lbl_8017DBCC +/* 8017DBC8 0017AB28 3B 60 00 01 */ li r27, 1 +lbl_8017DBCC: +/* 8017DBCC 0017AB2C 57 60 06 3F */ clrlwi. r0, r27, 0x18 +/* 8017DBD0 0017AB30 41 82 00 AC */ beq lbl_8017DC7C +/* 8017DBD4 0017AB34 C0 41 00 5C */ lfs f2, 0x5c(r1) +/* 8017DBD8 0017AB38 38 61 00 40 */ addi r3, r1, 0x40 +/* 8017DBDC 0017AB3C C0 21 00 60 */ lfs f1, 0x60(r1) +/* 8017DBE0 0017AB40 C0 01 00 58 */ lfs f0, 0x58(r1) +/* 8017DBE4 0017AB44 EC 42 F0 28 */ fsubs f2, f2, f30 +/* 8017DBE8 0017AB48 EC 21 E8 28 */ fsubs f1, f1, f29 +/* 8017DBEC 0017AB4C EC 00 F8 28 */ fsubs f0, f0, f31 +/* 8017DBF0 0017AB50 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 8017DBF4 0017AB54 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 8017DBF8 0017AB58 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 8017DBFC 0017AB5C 48 19 6C BD */ bl Magnitude__9CVector3fCFv +/* 8017DC00 0017AB60 88 1C 00 E7 */ lbz r0, 0xe7(r28) +/* 8017DC04 0017AB64 FF 80 08 90 */ fmr f28, f1 +/* 8017DC08 0017AB68 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 8017DC0C 0017AB6C 41 82 00 1C */ beq lbl_8017DC28 +/* 8017DC10 0017AB70 7E 83 A3 78 */ mr r3, r20 +/* 8017DC14 0017AB74 7F 24 CB 78 */ mr r4, r25 +/* 8017DC18 0017AB78 48 00 14 41 */ bl GetOrbitMaxTargetDistance__7CPlayerCFRC13CStateManager +/* 8017DC1C 0017AB7C FC 1C 08 40 */ fcmpo cr0, f28, f1 +/* 8017DC20 0017AB80 4C 40 13 82 */ cror 2, 0, 2 +/* 8017DC24 0017AB84 40 82 00 58 */ bne lbl_8017DC7C +lbl_8017DC28: +/* 8017DC28 0017AB88 80 76 00 04 */ lwz r3, 4(r22) +/* 8017DC2C 0017AB8C 80 16 00 08 */ lwz r0, 8(r22) +/* 8017DC30 0017AB90 7C 03 00 00 */ cmpw r3, r0 +/* 8017DC34 0017AB94 41 82 00 48 */ beq lbl_8017DC7C +/* 8017DC38 0017AB98 A3 7C 00 08 */ lhz r27, 8(r28) +/* 8017DC3C 0017AB9C 41 80 00 1C */ blt lbl_8017DC58 +/* 8017DC40 0017ABA0 2C 00 00 00 */ cmpwi r0, 0 +/* 8017DC44 0017ABA4 7E C3 B3 78 */ mr r3, r22 +/* 8017DC48 0017ABA8 38 80 00 04 */ li r4, 4 +/* 8017DC4C 0017ABAC 41 82 00 08 */ beq lbl_8017DC54 +/* 8017DC50 0017ABB0 54 04 08 3C */ slwi r4, r0, 1 +lbl_8017DC54: +/* 8017DC54 0017ABB4 4B E8 E7 B5 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +lbl_8017DC58: +/* 8017DC58 0017ABB8 80 16 00 04 */ lwz r0, 4(r22) +/* 8017DC5C 0017ABBC 80 76 00 0C */ lwz r3, 0xc(r22) +/* 8017DC60 0017ABC0 54 00 08 3C */ slwi r0, r0, 1 +/* 8017DC64 0017ABC4 7C 63 02 15 */ add. r3, r3, r0 +/* 8017DC68 0017ABC8 41 82 00 08 */ beq lbl_8017DC70 +/* 8017DC6C 0017ABCC B3 63 00 00 */ sth r27, 0(r3) +lbl_8017DC70: +/* 8017DC70 0017ABD0 80 76 00 04 */ lwz r3, 4(r22) +/* 8017DC74 0017ABD4 38 03 00 01 */ addi r0, r3, 1 +/* 8017DC78 0017ABD8 90 16 00 04 */ stw r0, 4(r22) +lbl_8017DC7C: +/* 8017DC7C 0017ABDC 3B BD 00 02 */ addi r29, r29, 2 +lbl_8017DC80: +/* 8017DC80 0017ABE0 80 15 00 00 */ lwz r0, 0(r21) +/* 8017DC84 0017ABE4 54 00 08 3C */ slwi r0, r0, 1 +/* 8017DC88 0017ABE8 7C 75 02 14 */ add r3, r21, r0 +/* 8017DC8C 0017ABEC 38 03 00 04 */ addi r0, r3, 4 +/* 8017DC90 0017ABF0 7C 1D 00 40 */ cmplw r29, r0 +/* 8017DC94 0017ABF4 40 82 FD AC */ bne lbl_8017DA40 +/* 8017DC98 0017ABF8 E3 E1 00 F8 */ psq_l f31, 248(r1), 0, qr0 +/* 8017DC9C 0017ABFC CB E1 00 F0 */ lfd f31, 0xf0(r1) +/* 8017DCA0 0017AC00 E3 C1 00 E8 */ psq_l f30, 232(r1), 0, qr0 +/* 8017DCA4 0017AC04 CB C1 00 E0 */ lfd f30, 0xe0(r1) +/* 8017DCA8 0017AC08 E3 A1 00 D8 */ psq_l f29, 216(r1), 0, qr0 +/* 8017DCAC 0017AC0C CB A1 00 D0 */ lfd f29, 0xd0(r1) +/* 8017DCB0 0017AC10 E3 81 00 C8 */ psq_l f28, 200(r1), 0, qr0 +/* 8017DCB4 0017AC14 CB 81 00 C0 */ lfd f28, 0xc0(r1) +/* 8017DCB8 0017AC18 BA 81 00 90 */ lmw r20, 0x90(r1) +/* 8017DCBC 0017AC1C 80 01 01 04 */ lwz r0, 0x104(r1) +/* 8017DCC0 0017AC20 7C 08 03 A6 */ mtlr r0 +/* 8017DCC4 0017AC24 38 21 01 00 */ addi r1, r1, 0x100 +/* 8017DCC8 0017AC28 4E 80 00 20 */ blr + +.global WithinOrbitScreenBox__7CPlayerCFRC9CVector3fQ27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneType +WithinOrbitScreenBox__7CPlayerCFRC9CVector3fQ27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneType: +/* 8017DCCC 0017AC2C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8017DCD0 0017AC30 7C 08 02 A6 */ mflr r0 +/* 8017DCD4 0017AC34 C0 62 A2 4C */ lfs f3, lbl_805ABF6C@sda21(r2) +/* 8017DCD8 0017AC38 90 01 00 24 */ stw r0, 0x24(r1) +/* 8017DCDC 0017AC3C C0 84 00 08 */ lfs f4, 8(r4) +/* 8017DCE0 0017AC40 FC 04 18 40 */ fcmpo cr0, f4, f3 +/* 8017DCE4 0017AC44 4C 41 13 82 */ cror 2, 1, 2 +/* 8017DCE8 0017AC48 40 82 00 0C */ bne lbl_8017DCF4 +/* 8017DCEC 0017AC4C 38 60 00 00 */ li r3, 0 +/* 8017DCF0 0017AC50 48 00 00 EC */ b lbl_8017DDDC +lbl_8017DCF4: +/* 8017DCF4 0017AC54 2C 06 00 01 */ cmpwi r6, 1 +/* 8017DCF8 0017AC58 41 82 00 D0 */ beq lbl_8017DDC8 +/* 8017DCFC 0017AC5C 40 80 00 D4 */ bge lbl_8017DDD0 +/* 8017DD00 0017AC60 2C 06 00 00 */ cmpwi r6, 0 +/* 8017DD04 0017AC64 40 80 00 08 */ bge lbl_8017DD0C +/* 8017DD08 0017AC68 48 00 00 C8 */ b lbl_8017DDD0 +lbl_8017DD0C: +/* 8017DD0C 0017AC6C 80 0D A1 18 */ lwz r0, gpTweakPlayer@sda21(r13) +/* 8017DD10 0017AC70 3C C0 43 30 */ lis r6, 0x4330 +/* 8017DD14 0017AC74 54 A3 10 3A */ slwi r3, r5, 2 +/* 8017DD18 0017AC78 90 C1 00 08 */ stw r6, 8(r1) +/* 8017DD1C 0017AC7C 7C A0 1A 14 */ add r5, r0, r3 +/* 8017DD20 0017AC80 C8 42 A2 98 */ lfd f2, lbl_805ABFB8@sda21(r2) +/* 8017DD24 0017AC84 80 05 01 B8 */ lwz r0, 0x1b8(r5) +/* 8017DD28 0017AC88 80 65 01 A8 */ lwz r3, 0x1a8(r5) +/* 8017DD2C 0017AC8C 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 8017DD30 0017AC90 C0 24 00 00 */ lfs f1, 0(r4) +/* 8017DD34 0017AC94 90 01 00 0C */ stw r0, 0xc(r1) +/* 8017DD38 0017AC98 6C 60 80 00 */ xoris r0, r3, 0x8000 +/* 8017DD3C 0017AC9C C8 01 00 08 */ lfd f0, 8(r1) +/* 8017DD40 0017ACA0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8017DD44 0017ACA4 EC 00 10 28 */ fsubs f0, f0, f2 +/* 8017DD48 0017ACA8 90 C1 00 10 */ stw r6, 0x10(r1) +/* 8017DD4C 0017ACAC EC 21 00 28 */ fsubs f1, f1, f0 +/* 8017DD50 0017ACB0 C8 01 00 10 */ lfd f0, 0x10(r1) +/* 8017DD54 0017ACB4 EC 00 10 28 */ fsubs f0, f0, f2 +/* 8017DD58 0017ACB8 FC 20 0A 10 */ fabs f1, f1 +/* 8017DD5C 0017ACBC FC 20 08 18 */ frsp f1, f1 +/* 8017DD60 0017ACC0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017DD64 0017ACC4 4C 40 13 82 */ cror 2, 0, 2 +/* 8017DD68 0017ACC8 40 82 00 70 */ bne lbl_8017DDD8 +/* 8017DD6C 0017ACCC 80 65 01 C0 */ lwz r3, 0x1c0(r5) +/* 8017DD70 0017ACD0 80 05 01 B0 */ lwz r0, 0x1b0(r5) +/* 8017DD74 0017ACD4 6C 63 80 00 */ xoris r3, r3, 0x8000 +/* 8017DD78 0017ACD8 90 C1 00 10 */ stw r6, 0x10(r1) +/* 8017DD7C 0017ACDC 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 8017DD80 0017ACE0 C0 24 00 04 */ lfs f1, 4(r4) +/* 8017DD84 0017ACE4 90 61 00 14 */ stw r3, 0x14(r1) +/* 8017DD88 0017ACE8 C8 01 00 10 */ lfd f0, 0x10(r1) +/* 8017DD8C 0017ACEC 90 01 00 0C */ stw r0, 0xc(r1) +/* 8017DD90 0017ACF0 EC 00 10 28 */ fsubs f0, f0, f2 +/* 8017DD94 0017ACF4 90 C1 00 08 */ stw r6, 8(r1) +/* 8017DD98 0017ACF8 EC 21 00 28 */ fsubs f1, f1, f0 +/* 8017DD9C 0017ACFC C8 01 00 08 */ lfd f0, 8(r1) +/* 8017DDA0 0017AD00 EC 00 10 28 */ fsubs f0, f0, f2 +/* 8017DDA4 0017AD04 FC 20 0A 10 */ fabs f1, f1 +/* 8017DDA8 0017AD08 FC 20 08 18 */ frsp f1, f1 +/* 8017DDAC 0017AD0C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017DDB0 0017AD10 4C 40 13 82 */ cror 2, 0, 2 +/* 8017DDB4 0017AD14 40 82 00 24 */ bne lbl_8017DDD8 +/* 8017DDB8 0017AD18 FC 04 18 40 */ fcmpo cr0, f4, f3 +/* 8017DDBC 0017AD1C 40 80 00 1C */ bge lbl_8017DDD8 +/* 8017DDC0 0017AD20 38 60 00 01 */ li r3, 1 +/* 8017DDC4 0017AD24 48 00 00 18 */ b lbl_8017DDDC +lbl_8017DDC8: +/* 8017DDC8 0017AD28 48 00 00 25 */ bl WithinOrbitScreenEllipse__7CPlayerCFRC9CVector3fQ27CPlayer15EPlayerZoneInfo +/* 8017DDCC 0017AD2C 48 00 00 10 */ b lbl_8017DDDC +lbl_8017DDD0: +/* 8017DDD0 0017AD30 38 60 00 01 */ li r3, 1 +/* 8017DDD4 0017AD34 48 00 00 08 */ b lbl_8017DDDC +lbl_8017DDD8: +/* 8017DDD8 0017AD38 38 60 00 00 */ li r3, 0 +lbl_8017DDDC: +/* 8017DDDC 0017AD3C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8017DDE0 0017AD40 7C 08 03 A6 */ mtlr r0 +/* 8017DDE4 0017AD44 38 21 00 20 */ addi r1, r1, 0x20 +/* 8017DDE8 0017AD48 4E 80 00 20 */ blr + +.global WithinOrbitScreenEllipse__7CPlayerCFRC9CVector3fQ27CPlayer15EPlayerZoneInfo +WithinOrbitScreenEllipse__7CPlayerCFRC9CVector3fQ27CPlayer15EPlayerZoneInfo: +/* 8017DDEC 0017AD4C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8017DDF0 0017AD50 C0 A2 A2 4C */ lfs f5, lbl_805ABF6C@sda21(r2) +/* 8017DDF4 0017AD54 C0 04 00 08 */ lfs f0, 8(r4) +/* 8017DDF8 0017AD58 FC 00 28 40 */ fcmpo cr0, f0, f5 +/* 8017DDFC 0017AD5C 4C 41 13 82 */ cror 2, 1, 2 +/* 8017DE00 0017AD60 40 82 00 0C */ bne lbl_8017DE0C +/* 8017DE04 0017AD64 38 60 00 00 */ li r3, 0 +/* 8017DE08 0017AD68 48 00 00 C4 */ b lbl_8017DECC +lbl_8017DE0C: +/* 8017DE0C 0017AD6C 80 0D A1 18 */ lwz r0, gpTweakPlayer@sda21(r13) +/* 8017DE10 0017AD70 3C C0 43 30 */ lis r6, 0x4330 +/* 8017DE14 0017AD74 54 A3 10 3A */ slwi r3, r5, 2 +/* 8017DE18 0017AD78 90 C1 00 10 */ stw r6, 0x10(r1) +/* 8017DE1C 0017AD7C 7C 60 1A 14 */ add r3, r0, r3 +/* 8017DE20 0017AD80 C8 62 A2 98 */ lfd f3, lbl_805ABFB8@sda21(r2) +/* 8017DE24 0017AD84 80 03 01 C0 */ lwz r0, 0x1c0(r3) +/* 8017DE28 0017AD88 80 A3 01 B8 */ lwz r5, 0x1b8(r3) +/* 8017DE2C 0017AD8C 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 8017DE30 0017AD90 80 E3 01 B0 */ lwz r7, 0x1b0(r3) +/* 8017DE34 0017AD94 90 01 00 14 */ stw r0, 0x14(r1) +/* 8017DE38 0017AD98 6C A5 80 00 */ xoris r5, r5, 0x8000 +/* 8017DE3C 0017AD9C 7C 07 39 D6 */ mullw r0, r7, r7 +/* 8017DE40 0017ADA0 80 63 01 A8 */ lwz r3, 0x1a8(r3) +/* 8017DE44 0017ADA4 C8 01 00 10 */ lfd f0, 0x10(r1) +/* 8017DE48 0017ADA8 C0 24 00 04 */ lfs f1, 4(r4) +/* 8017DE4C 0017ADAC EC 00 18 28 */ fsubs f0, f0, f3 +/* 8017DE50 0017ADB0 90 C1 00 20 */ stw r6, 0x20(r1) +/* 8017DE54 0017ADB4 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8017DE58 0017ADB8 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 8017DE5C 0017ADBC 90 01 00 24 */ stw r0, 0x24(r1) +/* 8017DE60 0017ADC0 7C 63 19 D6 */ mullw r3, r3, r3 +/* 8017DE64 0017ADC4 C0 84 00 00 */ lfs f4, 0(r4) +/* 8017DE68 0017ADC8 FC 20 02 10 */ fabs f1, f0 +/* 8017DE6C 0017ADCC C8 01 00 20 */ lfd f0, 0x20(r1) +/* 8017DE70 0017ADD0 90 A1 00 0C */ stw r5, 0xc(r1) +/* 8017DE74 0017ADD4 FC 20 08 18 */ frsp f1, f1 +/* 8017DE78 0017ADD8 90 C1 00 08 */ stw r6, 8(r1) +/* 8017DE7C 0017ADDC 6C 60 80 00 */ xoris r0, r3, 0x8000 +/* 8017DE80 0017ADE0 EC 00 18 28 */ fsubs f0, f0, f3 +/* 8017DE84 0017ADE4 EC 21 00 72 */ fmuls f1, f1, f1 +/* 8017DE88 0017ADE8 C8 41 00 08 */ lfd f2, 8(r1) +/* 8017DE8C 0017ADEC 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8017DE90 0017ADF0 EC 42 18 28 */ fsubs f2, f2, f3 +/* 8017DE94 0017ADF4 EC 01 00 24 */ fdivs f0, f1, f0 +/* 8017DE98 0017ADF8 90 C1 00 18 */ stw r6, 0x18(r1) +/* 8017DE9C 0017ADFC C8 21 00 18 */ lfd f1, 0x18(r1) +/* 8017DEA0 0017AE00 EC 44 10 28 */ fsubs f2, f4, f2 +/* 8017DEA4 0017AE04 EC 21 18 28 */ fsubs f1, f1, f3 +/* 8017DEA8 0017AE08 EC 05 00 28 */ fsubs f0, f5, f0 +/* 8017DEAC 0017AE0C FC 40 12 10 */ fabs f2, f2 +/* 8017DEB0 0017AE10 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8017DEB4 0017AE14 FC 20 10 18 */ frsp f1, f2 +/* 8017DEB8 0017AE18 EC 21 00 72 */ fmuls f1, f1, f1 +/* 8017DEBC 0017AE1C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017DEC0 0017AE20 4C 40 13 82 */ cror 2, 0, 2 +/* 8017DEC4 0017AE24 7C 00 00 26 */ mfcr r0 +/* 8017DEC8 0017AE28 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f +lbl_8017DECC: +/* 8017DECC 0017AE2C 38 21 00 30 */ addi r1, r1, 0x30 +/* 8017DED0 0017AE30 4E 80 00 20 */ blr + +.global CheckOrbitDisableSourceList__7CPlayerFRC13CStateManager +CheckOrbitDisableSourceList__7CPlayerFRC13CStateManager: +/* 8017DED4 0017AE34 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8017DED8 0017AE38 7C 08 02 A6 */ mflr r0 +/* 8017DEDC 0017AE3C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8017DEE0 0017AE40 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8017DEE4 0017AE44 7C 9F 23 78 */ mr r31, r4 +/* 8017DEE8 0017AE48 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8017DEEC 0017AE4C 7C 7E 1B 78 */ mr r30, r3 +/* 8017DEF0 0017AE50 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8017DEF4 0017AE54 3B BE 09 E8 */ addi r29, r30, 0x9e8 +/* 8017DEF8 0017AE58 93 81 00 10 */ stw r28, 0x10(r1) +/* 8017DEFC 0017AE5C 7F BC EB 78 */ mr r28, r29 +/* 8017DF00 0017AE60 48 00 00 7C */ b lbl_8017DF7C +lbl_8017DF04: +/* 8017DF04 0017AE64 A0 1C 00 00 */ lhz r0, 0(r28) +/* 8017DF08 0017AE68 7F E3 FB 78 */ mr r3, r31 +/* 8017DF0C 0017AE6C 38 81 00 08 */ addi r4, r1, 8 +/* 8017DF10 0017AE70 B0 01 00 08 */ sth r0, 8(r1) +/* 8017DF14 0017AE74 4B EC E6 91 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017DF18 0017AE78 28 03 00 00 */ cmplwi r3, 0 +/* 8017DF1C 0017AE7C 40 82 00 5C */ bne lbl_8017DF78 +/* 8017DF20 0017AE80 7C 1C E8 40 */ cmplw r28, r29 +/* 8017DF24 0017AE84 41 80 00 4C */ blt lbl_8017DF70 +/* 8017DF28 0017AE88 80 1E 09 E4 */ lwz r0, 0x9e4(r30) +/* 8017DF2C 0017AE8C 54 00 08 3C */ slwi r0, r0, 1 +/* 8017DF30 0017AE90 7C 1D 02 14 */ add r0, r29, r0 +/* 8017DF34 0017AE94 7C 1C 00 40 */ cmplw r28, r0 +/* 8017DF38 0017AE98 40 80 00 38 */ bge lbl_8017DF70 +/* 8017DF3C 0017AE9C 7F 85 E3 78 */ mr r5, r28 +/* 8017DF40 0017AEA0 48 00 00 10 */ b lbl_8017DF50 +lbl_8017DF44: +/* 8017DF44 0017AEA4 A0 05 00 02 */ lhz r0, 2(r5) +/* 8017DF48 0017AEA8 B0 05 00 00 */ sth r0, 0(r5) +/* 8017DF4C 0017AEAC 38 A5 00 02 */ addi r5, r5, 2 +lbl_8017DF50: +/* 8017DF50 0017AEB0 80 9E 09 E4 */ lwz r4, 0x9e4(r30) +/* 8017DF54 0017AEB4 54 83 08 3C */ slwi r3, r4, 1 +/* 8017DF58 0017AEB8 38 03 FF FE */ addi r0, r3, -2 +/* 8017DF5C 0017AEBC 7C 1D 02 14 */ add r0, r29, r0 +/* 8017DF60 0017AEC0 7C 05 00 40 */ cmplw r5, r0 +/* 8017DF64 0017AEC4 41 80 FF E0 */ blt lbl_8017DF44 +/* 8017DF68 0017AEC8 38 04 FF FF */ addi r0, r4, -1 +/* 8017DF6C 0017AECC 90 1E 09 E4 */ stw r0, 0x9e4(r30) +lbl_8017DF70: +/* 8017DF70 0017AED0 7F BC EB 78 */ mr r28, r29 +/* 8017DF74 0017AED4 48 00 00 08 */ b lbl_8017DF7C +lbl_8017DF78: +/* 8017DF78 0017AED8 3B 9C 00 02 */ addi r28, r28, 2 +lbl_8017DF7C: +/* 8017DF7C 0017AEDC 80 7E 09 E4 */ lwz r3, 0x9e4(r30) +/* 8017DF80 0017AEE0 54 60 08 3C */ slwi r0, r3, 1 +/* 8017DF84 0017AEE4 7C 1D 02 14 */ add r0, r29, r0 +/* 8017DF88 0017AEE8 7C 1C 00 40 */ cmplw r28, r0 +/* 8017DF8C 0017AEEC 40 82 FF 78 */ bne lbl_8017DF04 +/* 8017DF90 0017AEF0 7C 03 00 D0 */ neg r0, r3 +/* 8017DF94 0017AEF4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8017DF98 0017AEF8 7C 00 1B 78 */ or r0, r0, r3 +/* 8017DF9C 0017AEFC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8017DFA0 0017AF00 54 03 0F FE */ srwi r3, r0, 0x1f +/* 8017DFA4 0017AF04 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8017DFA8 0017AF08 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8017DFAC 0017AF0C 83 81 00 10 */ lwz r28, 0x10(r1) +/* 8017DFB0 0017AF10 7C 08 03 A6 */ mtlr r0 +/* 8017DFB4 0017AF14 38 21 00 20 */ addi r1, r1, 0x20 +/* 8017DFB8 0017AF18 4E 80 00 20 */ blr + +.global CheckOrbitDisableSourceList__7CPlayerCFv +CheckOrbitDisableSourceList__7CPlayerCFv: +/* 8017DFBC 0017AF1C 80 63 09 E4 */ lwz r3, 0x9e4(r3) +/* 8017DFC0 0017AF20 7C 03 00 D0 */ neg r0, r3 +/* 8017DFC4 0017AF24 7C 00 1B 78 */ or r0, r0, r3 +/* 8017DFC8 0017AF28 54 03 0F FE */ srwi r3, r0, 0x1f +/* 8017DFCC 0017AF2C 4E 80 00 20 */ blr + +.global RemoveOrbitDisableSource__7CPlayerF9TUniqueId +RemoveOrbitDisableSource__7CPlayerF9TUniqueId: +/* 8017DFD0 0017AF30 80 03 09 E4 */ lwz r0, 0x9e4(r3) +/* 8017DFD4 0017AF34 38 E3 09 E8 */ addi r7, r3, 0x9e8 +/* 8017DFD8 0017AF38 7C E8 3B 78 */ mr r8, r7 +/* 8017DFDC 0017AF3C 54 00 08 3C */ slwi r0, r0, 1 +/* 8017DFE0 0017AF40 7C C7 02 14 */ add r6, r7, r0 +/* 8017DFE4 0017AF44 48 00 00 60 */ b lbl_8017E044 +lbl_8017DFE8: +/* 8017DFE8 0017AF48 A0 A8 00 00 */ lhz r5, 0(r8) +/* 8017DFEC 0017AF4C A0 04 00 00 */ lhz r0, 0(r4) +/* 8017DFF0 0017AF50 7C 05 00 40 */ cmplw r5, r0 +/* 8017DFF4 0017AF54 40 82 00 4C */ bne lbl_8017E040 +/* 8017DFF8 0017AF58 7C 08 38 40 */ cmplw r8, r7 +/* 8017DFFC 0017AF5C 4D 80 00 20 */ bltlr +/* 8017E000 0017AF60 7C 08 30 40 */ cmplw r8, r6 +/* 8017E004 0017AF64 4C 80 00 20 */ bgelr +/* 8017E008 0017AF68 7D 06 43 78 */ mr r6, r8 +/* 8017E00C 0017AF6C 48 00 00 10 */ b lbl_8017E01C +lbl_8017E010: +/* 8017E010 0017AF70 A0 06 00 02 */ lhz r0, 2(r6) +/* 8017E014 0017AF74 B0 06 00 00 */ sth r0, 0(r6) +/* 8017E018 0017AF78 38 C6 00 02 */ addi r6, r6, 2 +lbl_8017E01C: +/* 8017E01C 0017AF7C 80 A3 09 E4 */ lwz r5, 0x9e4(r3) +/* 8017E020 0017AF80 54 A4 08 3C */ slwi r4, r5, 1 +/* 8017E024 0017AF84 38 04 FF FE */ addi r0, r4, -2 +/* 8017E028 0017AF88 7C 07 02 14 */ add r0, r7, r0 +/* 8017E02C 0017AF8C 7C 06 00 40 */ cmplw r6, r0 +/* 8017E030 0017AF90 41 80 FF E0 */ blt lbl_8017E010 +/* 8017E034 0017AF94 38 05 FF FF */ addi r0, r5, -1 +/* 8017E038 0017AF98 90 03 09 E4 */ stw r0, 0x9e4(r3) +/* 8017E03C 0017AF9C 4E 80 00 20 */ blr +lbl_8017E040: +/* 8017E040 0017AFA0 39 08 00 02 */ addi r8, r8, 2 +lbl_8017E044: +/* 8017E044 0017AFA4 7C 08 30 40 */ cmplw r8, r6 +/* 8017E048 0017AFA8 40 82 FF A0 */ bne lbl_8017DFE8 + +.global sub_8017e04c +sub_8017e04c: +/* 8017E04C 0017AFAC 4E 80 00 20 */ blr + +.global AddOrbitDisableSource__7CPlayerFR13CStateManager9TUniqueId +AddOrbitDisableSource__7CPlayerFR13CStateManager9TUniqueId: +/* 8017E050 0017AFB0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8017E054 0017AFB4 7C 08 02 A6 */ mflr r0 +/* 8017E058 0017AFB8 90 01 00 34 */ stw r0, 0x34(r1) +/* 8017E05C 0017AFBC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8017E060 0017AFC0 7C 9F 23 78 */ mr r31, r4 +/* 8017E064 0017AFC4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8017E068 0017AFC8 7C 7E 1B 78 */ mr r30, r3 +/* 8017E06C 0017AFCC 80 03 09 E4 */ lwz r0, 0x9e4(r3) +/* 8017E070 0017AFD0 2C 00 00 05 */ cmpwi r0, 5 +/* 8017E074 0017AFD4 40 80 00 AC */ bge lbl_8017E120 +/* 8017E078 0017AFD8 38 7E 09 E8 */ addi r3, r30, 0x9e8 +/* 8017E07C 0017AFDC 54 00 08 3C */ slwi r0, r0, 1 +/* 8017E080 0017AFE0 7C 66 1B 78 */ mr r6, r3 +/* 8017E084 0017AFE4 7C 83 02 14 */ add r4, r3, r0 +/* 8017E088 0017AFE8 48 00 00 18 */ b lbl_8017E0A0 +lbl_8017E08C: +/* 8017E08C 0017AFEC A0 66 00 00 */ lhz r3, 0(r6) +/* 8017E090 0017AFF0 A0 05 00 00 */ lhz r0, 0(r5) +/* 8017E094 0017AFF4 7C 03 00 40 */ cmplw r3, r0 +/* 8017E098 0017AFF8 41 82 00 88 */ beq lbl_8017E120 +/* 8017E09C 0017AFFC 38 C6 00 02 */ addi r6, r6, 2 +lbl_8017E0A0: +/* 8017E0A0 0017B000 7C 06 20 40 */ cmplw r6, r4 +/* 8017E0A4 0017B004 40 82 FF E8 */ bne lbl_8017E08C +/* 8017E0A8 0017B008 28 04 00 00 */ cmplwi r4, 0 +/* 8017E0AC 0017B00C 41 82 00 0C */ beq lbl_8017E0B8 +/* 8017E0B0 0017B010 A0 05 00 00 */ lhz r0, 0(r5) +/* 8017E0B4 0017B014 B0 04 00 00 */ sth r0, 0(r4) +lbl_8017E0B8: +/* 8017E0B8 0017B018 80 BE 09 E4 */ lwz r5, 0x9e4(r30) +/* 8017E0BC 0017B01C 7F C3 F3 78 */ mr r3, r30 +/* 8017E0C0 0017B020 38 81 00 10 */ addi r4, r1, 0x10 +/* 8017E0C4 0017B024 38 05 00 01 */ addi r0, r5, 1 +/* 8017E0C8 0017B028 90 1E 09 E4 */ stw r0, 0x9e4(r30) +/* 8017E0CC 0017B02C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017E0D0 0017B030 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8017E0D4 0017B034 4B E9 BC D1 */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId +/* 8017E0D8 0017B038 A0 1E 03 10 */ lhz r0, 0x310(r30) +/* 8017E0DC 0017B03C 7F E3 FB 78 */ mr r3, r31 +/* 8017E0E0 0017B040 38 81 00 0C */ addi r4, r1, 0xc +/* 8017E0E4 0017B044 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8017E0E8 0017B048 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8017E0EC 0017B04C 4B EC E4 B9 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017E0F0 0017B050 7C 64 1B 78 */ mr r4, r3 +/* 8017E0F4 0017B054 38 61 00 18 */ addi r3, r1, 0x18 +/* 8017E0F8 0017B058 4B F2 B9 D1 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" +/* 8017E0FC 0017B05C 80 03 00 04 */ lwz r0, 4(r3) +/* 8017E100 0017B060 28 00 00 00 */ cmplwi r0, 0 +/* 8017E104 0017B064 40 82 00 1C */ bne lbl_8017E120 +/* 8017E108 0017B068 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017E10C 0017B06C 7F C3 F3 78 */ mr r3, r30 +/* 8017E110 0017B070 7F E5 FB 78 */ mr r5, r31 +/* 8017E114 0017B074 38 81 00 08 */ addi r4, r1, 8 +/* 8017E118 0017B078 B0 01 00 08 */ sth r0, 8(r1) +/* 8017E11C 0017B07C 4B FF D4 D1 */ bl SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager +lbl_8017E120: +/* 8017E120 0017B080 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8017E124 0017B084 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8017E128 0017B088 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8017E12C 0017B08C 7C 08 03 A6 */ mtlr r0 +/* 8017E130 0017B090 38 21 00 30 */ addi r1, r1, 0x30 +/* 8017E134 0017B094 4E 80 00 20 */ blr + +.global UpdateOrbitPreventionTimer__7CPlayerFf +UpdateOrbitPreventionTimer__7CPlayerFf: +/* 8017E138 0017B098 C0 43 03 78 */ lfs f2, 0x378(r3) +/* 8017E13C 0017B09C C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017E140 0017B0A0 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8017E144 0017B0A4 4C 81 00 20 */ blelr +/* 8017E148 0017B0A8 EC 02 08 28 */ fsubs f0, f2, f1 +/* 8017E14C 0017B0AC D0 03 03 78 */ stfs f0, 0x378(r3) +/* 8017E150 0017B0B0 4E 80 00 20 */ blr + +.global UpdateOrbitModeTimer__7CPlayerFf +UpdateOrbitModeTimer__7CPlayerFf: +/* 8017E154 0017B0B4 80 03 03 04 */ lwz r0, 0x304(r3) +/* 8017E158 0017B0B8 2C 00 00 00 */ cmpwi r0, 0 +/* 8017E15C 0017B0BC 40 82 00 20 */ bne lbl_8017E17C +/* 8017E160 0017B0C0 C0 43 03 2C */ lfs f2, 0x32c(r3) +/* 8017E164 0017B0C4 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017E168 0017B0C8 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8017E16C 0017B0CC 40 81 00 10 */ ble lbl_8017E17C +/* 8017E170 0017B0D0 EC 02 08 28 */ fsubs f0, f2, f1 +/* 8017E174 0017B0D4 D0 03 03 2C */ stfs f0, 0x32c(r3) +/* 8017E178 0017B0D8 4E 80 00 20 */ blr +lbl_8017E17C: +/* 8017E17C 0017B0DC C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017E180 0017B0E0 D0 03 03 2C */ stfs f0, 0x32c(r3) +/* 8017E184 0017B0E4 4E 80 00 20 */ blr + +.global UpdateOrbitZone__7CPlayerFR13CStateManager +UpdateOrbitZone__7CPlayerFR13CStateManager: +/* 8017E188 0017B0E8 80 84 08 B8 */ lwz r4, 0x8b8(r4) +/* 8017E18C 0017B0EC 80 84 00 00 */ lwz r4, 0(r4) +/* 8017E190 0017B0F0 80 04 00 14 */ lwz r0, 0x14(r4) +/* 8017E194 0017B0F4 2C 00 00 02 */ cmpwi r0, 2 +/* 8017E198 0017B0F8 41 82 00 1C */ beq lbl_8017E1B4 +/* 8017E19C 0017B0FC 38 80 00 01 */ li r4, 1 +/* 8017E1A0 0017B100 38 00 00 00 */ li r0, 0 +/* 8017E1A4 0017B104 90 83 03 34 */ stw r4, 0x334(r3) +/* 8017E1A8 0017B108 90 83 03 38 */ stw r4, 0x338(r3) +/* 8017E1AC 0017B10C 90 03 03 30 */ stw r0, 0x330(r3) +/* 8017E1B0 0017B110 4E 80 00 20 */ blr +lbl_8017E1B4: +/* 8017E1B4 0017B114 38 00 00 00 */ li r0, 0 +/* 8017E1B8 0017B118 38 80 00 02 */ li r4, 2 +/* 8017E1BC 0017B11C 90 03 03 34 */ stw r0, 0x334(r3) +/* 8017E1C0 0017B120 38 00 00 01 */ li r0, 1 +/* 8017E1C4 0017B124 90 83 03 38 */ stw r4, 0x338(r3) +/* 8017E1C8 0017B128 90 03 03 30 */ stw r0, 0x330(r3) +/* 8017E1CC 0017B12C 4E 80 00 20 */ blr + +.global UpdateOrbitInput__7CPlayerFRC11CFinalInputR13CStateManager +UpdateOrbitInput__7CPlayerFRC11CFinalInputR13CStateManager: +/* 8017E1D0 0017B130 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 8017E1D4 0017B134 7C 08 02 A6 */ mflr r0 +/* 8017E1D8 0017B138 90 01 00 94 */ stw r0, 0x94(r1) +/* 8017E1DC 0017B13C 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 8017E1E0 0017B140 7C BF 2B 78 */ mr r31, r5 +/* 8017E1E4 0017B144 93 C1 00 88 */ stw r30, 0x88(r1) +/* 8017E1E8 0017B148 7C 9E 23 78 */ mr r30, r4 +/* 8017E1EC 0017B14C 93 A1 00 84 */ stw r29, 0x84(r1) +/* 8017E1F0 0017B150 7C 7D 1B 78 */ mr r29, r3 +/* 8017E1F4 0017B154 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 8017E1F8 0017B158 2C 00 00 00 */ cmpwi r0, 0 +/* 8017E1FC 0017B15C 40 82 06 CC */ bne lbl_8017E8C8 +/* 8017E200 0017B160 C0 3D 03 78 */ lfs f1, 0x378(r29) +/* 8017E204 0017B164 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017E208 0017B168 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017E20C 0017B16C 41 81 06 BC */ bgt lbl_8017E8C8 +/* 8017E210 0017B170 7F E4 FB 78 */ mr r4, r31 +/* 8017E214 0017B174 4B FF EA 95 */ bl UpdateOrbitableObjects__7CPlayerFR13CStateManager +/* 8017E218 0017B178 80 1D 03 04 */ lwz r0, 0x304(r29) +/* 8017E21C 0017B17C 2C 00 00 00 */ cmpwi r0, 0 +/* 8017E220 0017B180 40 82 00 20 */ bne lbl_8017E240 +/* 8017E224 0017B184 7F A4 EB 78 */ mr r4, r29 +/* 8017E228 0017B188 7F E5 FB 78 */ mr r5, r31 +/* 8017E22C 0017B18C 38 61 00 68 */ addi r3, r1, 0x68 +/* 8017E230 0017B190 4B FF EA 41 */ bl FindOrbitTargetId__7CPlayerFR13CStateManager +/* 8017E234 0017B194 A0 01 00 68 */ lhz r0, 0x68(r1) +/* 8017E238 0017B198 B0 01 00 6C */ sth r0, 0x6c(r1) +/* 8017E23C 0017B19C B0 1D 03 3C */ sth r0, 0x33c(r29) +lbl_8017E240: +/* 8017E240 0017B1A0 7F C4 F3 78 */ mr r4, r30 +/* 8017E244 0017B1A4 38 60 00 18 */ li r3, 0x18 +/* 8017E248 0017B1A8 4B E8 E6 2D */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8017E24C 0017B1AC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017E250 0017B1B0 40 82 00 2C */ bne lbl_8017E27C +/* 8017E254 0017B1B4 7F C4 F3 78 */ mr r4, r30 +/* 8017E258 0017B1B8 38 60 00 19 */ li r3, 0x19 +/* 8017E25C 0017B1BC 4B E8 E6 19 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8017E260 0017B1C0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017E264 0017B1C4 40 82 00 18 */ bne lbl_8017E27C +/* 8017E268 0017B1C8 7F C4 F3 78 */ mr r4, r30 +/* 8017E26C 0017B1CC 38 60 00 1A */ li r3, 0x1a +/* 8017E270 0017B1D0 4B E8 E6 05 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8017E274 0017B1D4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017E278 0017B1D8 41 82 05 28 */ beq lbl_8017E7A0 +lbl_8017E27C: +/* 8017E27C 0017B1DC 80 1D 03 04 */ lwz r0, 0x304(r29) +/* 8017E280 0017B1E0 2C 00 00 03 */ cmpwi r0, 3 +/* 8017E284 0017B1E4 41 82 03 E4 */ beq lbl_8017E668 +/* 8017E288 0017B1E8 40 80 00 1C */ bge lbl_8017E2A4 +/* 8017E28C 0017B1EC 2C 00 00 01 */ cmpwi r0, 1 +/* 8017E290 0017B1F0 41 82 01 40 */ beq lbl_8017E3D0 +/* 8017E294 0017B1F4 40 80 02 48 */ bge lbl_8017E4DC +/* 8017E298 0017B1F8 2C 00 00 00 */ cmpwi r0, 0 +/* 8017E29C 0017B1FC 40 80 00 18 */ bge lbl_8017E2B4 +/* 8017E2A0 0017B200 48 00 04 C0 */ b lbl_8017E760 +lbl_8017E2A4: +/* 8017E2A4 0017B204 2C 00 00 05 */ cmpwi r0, 5 +/* 8017E2A8 0017B208 41 82 01 04 */ beq lbl_8017E3AC +/* 8017E2AC 0017B20C 40 80 04 B4 */ bge lbl_8017E760 +/* 8017E2B0 0017B210 48 00 04 80 */ b lbl_8017E730 +lbl_8017E2B4: +/* 8017E2B4 0017B214 7F C4 F3 78 */ mr r4, r30 +/* 8017E2B8 0017B218 38 60 00 1A */ li r3, 0x1a +/* 8017E2BC 0017B21C 4B E8 E5 15 */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8017E2C0 0017B220 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017E2C4 0017B224 41 82 00 9C */ beq lbl_8017E360 +/* 8017E2C8 0017B228 A0 1D 03 3C */ lhz r0, 0x33c(r29) +/* 8017E2CC 0017B22C 7F A3 EB 78 */ mr r3, r29 +/* 8017E2D0 0017B230 7F E5 FB 78 */ mr r5, r31 +/* 8017E2D4 0017B234 38 81 00 64 */ addi r4, r1, 0x64 +/* 8017E2D8 0017B238 B0 01 00 60 */ sth r0, 0x60(r1) +/* 8017E2DC 0017B23C B0 01 00 64 */ sth r0, 0x64(r1) +/* 8017E2E0 0017B240 4B FF D3 0D */ bl SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager +/* 8017E2E4 0017B244 A0 DD 03 10 */ lhz r6, 0x310(r29) +/* 8017E2E8 0017B248 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017E2EC 0017B24C 7C 06 00 40 */ cmplw r6, r0 +/* 8017E2F0 0017B250 41 82 04 70 */ beq lbl_8017E760 +/* 8017E2F4 0017B254 B0 C1 00 58 */ sth r6, 0x58(r1) +/* 8017E2F8 0017B258 7F A3 EB 78 */ mr r3, r29 +/* 8017E2FC 0017B25C 7F E5 FB 78 */ mr r5, r31 +/* 8017E300 0017B260 38 81 00 5C */ addi r4, r1, 0x5c +/* 8017E304 0017B264 B0 C1 00 5C */ sth r6, 0x5c(r1) +/* 8017E308 0017B268 4B FF DA 79 */ bl ValidateAimTargetId__7CPlayerF9TUniqueIdR13CStateManager +/* 8017E30C 0017B26C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017E310 0017B270 41 82 00 1C */ beq lbl_8017E32C +/* 8017E314 0017B274 A0 1D 03 10 */ lhz r0, 0x310(r29) +/* 8017E318 0017B278 7F A3 EB 78 */ mr r3, r29 +/* 8017E31C 0017B27C 38 81 00 54 */ addi r4, r1, 0x54 +/* 8017E320 0017B280 B0 01 00 50 */ sth r0, 0x50(r1) +/* 8017E324 0017B284 B0 01 00 54 */ sth r0, 0x54(r1) +/* 8017E328 0017B288 4B E9 BA 7D */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId +lbl_8017E32C: +/* 8017E32C 0017B28C 7F A3 EB 78 */ mr r3, r29 +/* 8017E330 0017B290 7F E5 FB 78 */ mr r5, r31 +/* 8017E334 0017B294 38 80 00 01 */ li r4, 1 +/* 8017E338 0017B298 4B FF D1 5D */ bl SetOrbitState__7CPlayerFQ27CPlayer17EPlayerOrbitStateR13CStateManager +/* 8017E33C 0017B29C 80 1D 03 08 */ lwz r0, 0x308(r29) +/* 8017E340 0017B2A0 7F A3 EB 78 */ mr r3, r29 +/* 8017E344 0017B2A4 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) +/* 8017E348 0017B2A8 7F E4 FB 78 */ mr r4, r31 +/* 8017E34C 0017B2AC 54 00 10 3A */ slwi r0, r0, 2 +/* 8017E350 0017B2B0 7C A5 02 14 */ add r5, r5, r0 +/* 8017E354 0017B2B4 C0 25 01 64 */ lfs f1, 0x164(r5) +/* 8017E358 0017B2B8 4B FF D3 BD */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager +/* 8017E35C 0017B2BC 48 00 04 04 */ b lbl_8017E760 +lbl_8017E360: +/* 8017E360 0017B2C0 7F C4 F3 78 */ mr r4, r30 +/* 8017E364 0017B2C4 38 60 00 19 */ li r3, 0x19 +/* 8017E368 0017B2C8 4B E8 E4 69 */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8017E36C 0017B2CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017E370 0017B2D0 41 82 00 14 */ beq lbl_8017E384 +/* 8017E374 0017B2D4 7F A3 EB 78 */ mr r3, r29 +/* 8017E378 0017B2D8 7F E5 FB 78 */ mr r5, r31 +/* 8017E37C 0017B2DC 38 80 00 01 */ li r4, 1 +/* 8017E380 0017B2E0 4B FF CF B9 */ bl OrbitPoint__7CPlayerFQ27CPlayer16EPlayerOrbitTypeR13CStateManager +lbl_8017E384: +/* 8017E384 0017B2E4 7F C4 F3 78 */ mr r4, r30 +/* 8017E388 0017B2E8 38 60 00 18 */ li r3, 0x18 +/* 8017E38C 0017B2EC 4B E8 E4 45 */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8017E390 0017B2F0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017E394 0017B2F4 41 82 03 CC */ beq lbl_8017E760 +/* 8017E398 0017B2F8 7F A3 EB 78 */ mr r3, r29 +/* 8017E39C 0017B2FC 7F E5 FB 78 */ mr r5, r31 +/* 8017E3A0 0017B300 38 80 00 00 */ li r4, 0 +/* 8017E3A4 0017B304 4B FF CF 95 */ bl OrbitPoint__7CPlayerFQ27CPlayer16EPlayerOrbitTypeR13CStateManager +/* 8017E3A8 0017B308 48 00 03 B8 */ b lbl_8017E760 +lbl_8017E3AC: +/* 8017E3AC 0017B30C A0 7D 03 10 */ lhz r3, 0x310(r29) +/* 8017E3B0 0017B310 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017E3B4 0017B314 7C 03 00 40 */ cmplw r3, r0 +/* 8017E3B8 0017B318 40 82 03 A8 */ bne lbl_8017E760 +/* 8017E3BC 0017B31C 7F A3 EB 78 */ mr r3, r29 +/* 8017E3C0 0017B320 7F E5 FB 78 */ mr r5, r31 +/* 8017E3C4 0017B324 38 80 00 00 */ li r4, 0 +/* 8017E3C8 0017B328 4B FF CC FD */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager +/* 8017E3CC 0017B32C 48 00 03 94 */ b lbl_8017E760 +lbl_8017E3D0: +/* 8017E3D0 0017B330 A0 1D 03 10 */ lhz r0, 0x310(r29) +/* 8017E3D4 0017B334 7F E3 FB 78 */ mr r3, r31 +/* 8017E3D8 0017B338 38 81 00 4C */ addi r4, r1, 0x4c +/* 8017E3DC 0017B33C B0 01 00 48 */ sth r0, 0x48(r1) +/* 8017E3E0 0017B340 B0 01 00 4C */ sth r0, 0x4c(r1) +/* 8017E3E4 0017B344 4B EC E1 C1 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017E3E8 0017B348 7C 64 1B 78 */ mr r4, r3 +/* 8017E3EC 0017B34C 38 61 00 78 */ addi r3, r1, 0x78 +/* 8017E3F0 0017B350 4B F2 B6 D9 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" +/* 8017E3F4 0017B354 80 03 00 04 */ lwz r0, 4(r3) +/* 8017E3F8 0017B358 28 00 00 00 */ cmplwi r0, 0 +/* 8017E3FC 0017B35C 41 82 00 50 */ beq lbl_8017E44C +/* 8017E400 0017B360 7F A3 EB 78 */ mr r3, r29 +/* 8017E404 0017B364 7F E4 FB 78 */ mr r4, r31 +/* 8017E408 0017B368 48 00 0F 1D */ bl ValidateCurrentOrbitTargetId__7CPlayerFR13CStateManager +/* 8017E40C 0017B36C 2C 03 00 00 */ cmpwi r3, 0 +/* 8017E410 0017B370 40 82 00 28 */ bne lbl_8017E438 +/* 8017E414 0017B374 80 1D 03 08 */ lwz r0, 0x308(r29) +/* 8017E418 0017B378 7F A3 EB 78 */ mr r3, r29 +/* 8017E41C 0017B37C 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) +/* 8017E420 0017B380 7F E4 FB 78 */ mr r4, r31 +/* 8017E424 0017B384 54 00 10 3A */ slwi r0, r0, 2 +/* 8017E428 0017B388 7C A5 02 14 */ add r5, r5, r0 +/* 8017E42C 0017B38C C0 25 01 64 */ lfs f1, 0x164(r5) +/* 8017E430 0017B390 4B FF D2 E5 */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager +/* 8017E434 0017B394 48 00 00 94 */ b lbl_8017E4C8 +lbl_8017E438: +/* 8017E438 0017B398 7F A3 EB 78 */ mr r3, r29 +/* 8017E43C 0017B39C 7F E5 FB 78 */ mr r5, r31 +/* 8017E440 0017B3A0 38 80 00 06 */ li r4, 6 +/* 8017E444 0017B3A4 4B FF CC 81 */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager +/* 8017E448 0017B3A8 48 00 00 80 */ b lbl_8017E4C8 +lbl_8017E44C: +/* 8017E44C 0017B3AC 7F A3 EB 78 */ mr r3, r29 +/* 8017E450 0017B3B0 7F E4 FB 78 */ mr r4, r31 +/* 8017E454 0017B3B4 48 00 0E D1 */ bl ValidateCurrentOrbitTargetId__7CPlayerFR13CStateManager +/* 8017E458 0017B3B8 2C 03 00 00 */ cmpwi r3, 0 +/* 8017E45C 0017B3BC 40 82 00 28 */ bne lbl_8017E484 +/* 8017E460 0017B3C0 80 1D 03 08 */ lwz r0, 0x308(r29) +/* 8017E464 0017B3C4 7F A3 EB 78 */ mr r3, r29 +/* 8017E468 0017B3C8 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) +/* 8017E46C 0017B3CC 7F E4 FB 78 */ mr r4, r31 +/* 8017E470 0017B3D0 54 00 10 3A */ slwi r0, r0, 2 +/* 8017E474 0017B3D4 7C A5 02 14 */ add r5, r5, r0 +/* 8017E478 0017B3D8 C0 25 01 64 */ lfs f1, 0x164(r5) +/* 8017E47C 0017B3DC 4B FF D2 99 */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager +/* 8017E480 0017B3E0 48 00 00 48 */ b lbl_8017E4C8 +lbl_8017E484: +/* 8017E484 0017B3E4 2C 03 00 05 */ cmpwi r3, 5 +/* 8017E488 0017B3E8 40 82 00 18 */ bne lbl_8017E4A0 +/* 8017E48C 0017B3EC 7F A3 EB 78 */ mr r3, r29 +/* 8017E490 0017B3F0 7F E5 FB 78 */ mr r5, r31 +/* 8017E494 0017B3F4 38 80 00 01 */ li r4, 1 +/* 8017E498 0017B3F8 4B FF CE A1 */ bl OrbitPoint__7CPlayerFQ27CPlayer16EPlayerOrbitTypeR13CStateManager +/* 8017E49C 0017B3FC 48 00 00 2C */ b lbl_8017E4C8 +lbl_8017E4A0: +/* 8017E4A0 0017B400 2C 03 00 04 */ cmpwi r3, 4 +/* 8017E4A4 0017B404 40 82 00 18 */ bne lbl_8017E4BC +/* 8017E4A8 0017B408 7F A3 EB 78 */ mr r3, r29 +/* 8017E4AC 0017B40C 7F E5 FB 78 */ mr r5, r31 +/* 8017E4B0 0017B410 38 80 00 07 */ li r4, 7 +/* 8017E4B4 0017B414 4B FF CC E9 */ bl SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager +/* 8017E4B8 0017B418 48 00 00 10 */ b lbl_8017E4C8 +lbl_8017E4BC: +/* 8017E4BC 0017B41C 7F A3 EB 78 */ mr r3, r29 +/* 8017E4C0 0017B420 7F E4 FB 78 */ mr r4, r31 +/* 8017E4C4 0017B424 48 00 04 21 */ bl ActivateOrbitSource__7CPlayerFR13CStateManager +lbl_8017E4C8: +/* 8017E4C8 0017B428 7F A3 EB 78 */ mr r3, r29 +/* 8017E4CC 0017B42C 7F C4 F3 78 */ mr r4, r30 +/* 8017E4D0 0017B430 7F E5 FB 78 */ mr r5, r31 +/* 8017E4D4 0017B434 48 00 04 85 */ bl UpdateOrbitSelection__7CPlayerFRC11CFinalInputR13CStateManager +/* 8017E4D8 0017B438 48 00 02 88 */ b lbl_8017E760 +lbl_8017E4DC: +/* 8017E4DC 0017B43C 7F C4 F3 78 */ mr r4, r30 +/* 8017E4E0 0017B440 38 60 00 1A */ li r3, 0x1a +/* 8017E4E4 0017B444 4B E8 E2 ED */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8017E4E8 0017B448 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017E4EC 0017B44C 41 82 00 A8 */ beq lbl_8017E594 +/* 8017E4F0 0017B450 7F A4 EB 78 */ mr r4, r29 +/* 8017E4F4 0017B454 7F E5 FB 78 */ mr r5, r31 +/* 8017E4F8 0017B458 38 61 00 40 */ addi r3, r1, 0x40 +/* 8017E4FC 0017B45C 4B FF E7 75 */ bl FindOrbitTargetId__7CPlayerFR13CStateManager +/* 8017E500 0017B460 A0 01 00 40 */ lhz r0, 0x40(r1) +/* 8017E504 0017B464 7F A3 EB 78 */ mr r3, r29 +/* 8017E508 0017B468 7F E5 FB 78 */ mr r5, r31 +/* 8017E50C 0017B46C 38 81 00 44 */ addi r4, r1, 0x44 +/* 8017E510 0017B470 B0 01 00 44 */ sth r0, 0x44(r1) +/* 8017E514 0017B474 4B FF D0 D9 */ bl SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager +/* 8017E518 0017B478 A0 DD 03 10 */ lhz r6, 0x310(r29) +/* 8017E51C 0017B47C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017E520 0017B480 7C 06 00 40 */ cmplw r6, r0 +/* 8017E524 0017B484 41 82 01 20 */ beq lbl_8017E644 +/* 8017E528 0017B488 B0 C1 00 38 */ sth r6, 0x38(r1) +/* 8017E52C 0017B48C 7F A3 EB 78 */ mr r3, r29 +/* 8017E530 0017B490 7F E5 FB 78 */ mr r5, r31 +/* 8017E534 0017B494 38 81 00 3C */ addi r4, r1, 0x3c +/* 8017E538 0017B498 B0 C1 00 3C */ sth r6, 0x3c(r1) +/* 8017E53C 0017B49C 4B FF D8 45 */ bl ValidateAimTargetId__7CPlayerF9TUniqueIdR13CStateManager +/* 8017E540 0017B4A0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017E544 0017B4A4 41 82 00 1C */ beq lbl_8017E560 +/* 8017E548 0017B4A8 A0 1D 03 10 */ lhz r0, 0x310(r29) +/* 8017E54C 0017B4AC 7F A3 EB 78 */ mr r3, r29 +/* 8017E550 0017B4B0 38 81 00 34 */ addi r4, r1, 0x34 +/* 8017E554 0017B4B4 B0 01 00 30 */ sth r0, 0x30(r1) +/* 8017E558 0017B4B8 B0 01 00 34 */ sth r0, 0x34(r1) +/* 8017E55C 0017B4BC 4B E9 B8 49 */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId +lbl_8017E560: +/* 8017E560 0017B4C0 7F A3 EB 78 */ mr r3, r29 +/* 8017E564 0017B4C4 7F E5 FB 78 */ mr r5, r31 +/* 8017E568 0017B4C8 38 80 00 01 */ li r4, 1 +/* 8017E56C 0017B4CC 4B FF CF 29 */ bl SetOrbitState__7CPlayerFQ27CPlayer17EPlayerOrbitStateR13CStateManager +/* 8017E570 0017B4D0 80 1D 03 08 */ lwz r0, 0x308(r29) +/* 8017E574 0017B4D4 7F A3 EB 78 */ mr r3, r29 +/* 8017E578 0017B4D8 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) +/* 8017E57C 0017B4DC 7F E4 FB 78 */ mr r4, r31 +/* 8017E580 0017B4E0 54 00 10 3A */ slwi r0, r0, 2 +/* 8017E584 0017B4E4 7C A5 02 14 */ add r5, r5, r0 +/* 8017E588 0017B4E8 C0 25 01 64 */ lfs f1, 0x164(r5) +/* 8017E58C 0017B4EC 4B FF D1 89 */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager +/* 8017E590 0017B4F0 48 00 00 B4 */ b lbl_8017E644 +lbl_8017E594: +/* 8017E594 0017B4F4 80 1D 03 08 */ lwz r0, 0x308(r29) +/* 8017E598 0017B4F8 2C 00 00 01 */ cmpwi r0, 1 +/* 8017E59C 0017B4FC 41 82 00 18 */ beq lbl_8017E5B4 +/* 8017E5A0 0017B500 40 80 00 A4 */ bge lbl_8017E644 +/* 8017E5A4 0017B504 2C 00 00 00 */ cmpwi r0, 0 +/* 8017E5A8 0017B508 40 80 00 4C */ bge lbl_8017E5F4 +/* 8017E5AC 0017B50C 48 00 00 98 */ b lbl_8017E644 +/* 8017E5B0 0017B510 48 00 00 94 */ b lbl_8017E644 +lbl_8017E5B4: +/* 8017E5B4 0017B514 7F C4 F3 78 */ mr r4, r30 +/* 8017E5B8 0017B518 38 60 00 18 */ li r3, 0x18 +/* 8017E5BC 0017B51C 4B E8 E2 B9 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8017E5C0 0017B520 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017E5C4 0017B524 41 82 00 80 */ beq lbl_8017E644 +/* 8017E5C8 0017B528 38 00 00 00 */ li r0, 0 +/* 8017E5CC 0017B52C 7F A3 EB 78 */ mr r3, r29 +/* 8017E5D0 0017B530 90 1D 03 08 */ stw r0, 0x308(r29) +/* 8017E5D4 0017B534 7F E4 FB 78 */ mr r4, r31 +/* 8017E5D8 0017B538 80 1D 03 08 */ lwz r0, 0x308(r29) +/* 8017E5DC 0017B53C 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) +/* 8017E5E0 0017B540 54 00 10 3A */ slwi r0, r0, 2 +/* 8017E5E4 0017B544 7C A5 02 14 */ add r5, r5, r0 +/* 8017E5E8 0017B548 C0 25 01 64 */ lfs f1, 0x164(r5) +/* 8017E5EC 0017B54C 4B FF D3 2D */ bl SetOrbitPosition__7CPlayerFfR13CStateManager +/* 8017E5F0 0017B550 48 00 00 54 */ b lbl_8017E644 +lbl_8017E5F4: +/* 8017E5F4 0017B554 7F C4 F3 78 */ mr r4, r30 +/* 8017E5F8 0017B558 38 60 00 19 */ li r3, 0x19 +/* 8017E5FC 0017B55C 4B E8 E2 79 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8017E600 0017B560 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017E604 0017B564 41 82 00 40 */ beq lbl_8017E644 +/* 8017E608 0017B568 7F C4 F3 78 */ mr r4, r30 +/* 8017E60C 0017B56C 38 60 00 18 */ li r3, 0x18 +/* 8017E610 0017B570 4B E8 E2 65 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8017E614 0017B574 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017E618 0017B578 40 82 00 2C */ bne lbl_8017E644 +/* 8017E61C 0017B57C 38 00 00 01 */ li r0, 1 +/* 8017E620 0017B580 7F A3 EB 78 */ mr r3, r29 +/* 8017E624 0017B584 90 1D 03 08 */ stw r0, 0x308(r29) +/* 8017E628 0017B588 7F E4 FB 78 */ mr r4, r31 +/* 8017E62C 0017B58C 80 1D 03 08 */ lwz r0, 0x308(r29) +/* 8017E630 0017B590 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) +/* 8017E634 0017B594 54 00 10 3A */ slwi r0, r0, 2 +/* 8017E638 0017B598 7C A5 02 14 */ add r5, r5, r0 +/* 8017E63C 0017B59C C0 25 01 64 */ lfs f1, 0x164(r5) +/* 8017E640 0017B5A0 4B FF D2 D9 */ bl SetOrbitPosition__7CPlayerFfR13CStateManager +lbl_8017E644: +/* 8017E644 0017B5A4 80 1D 03 08 */ lwz r0, 0x308(r29) +/* 8017E648 0017B5A8 7F A3 EB 78 */ mr r3, r29 +/* 8017E64C 0017B5AC 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) +/* 8017E650 0017B5B0 7F E4 FB 78 */ mr r4, r31 +/* 8017E654 0017B5B4 54 00 10 3A */ slwi r0, r0, 2 +/* 8017E658 0017B5B8 7C A5 02 14 */ add r5, r5, r0 +/* 8017E65C 0017B5BC C0 25 01 64 */ lfs f1, 0x164(r5) +/* 8017E660 0017B5C0 4B FF D0 B5 */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager +/* 8017E664 0017B5C4 48 00 00 FC */ b lbl_8017E760 +lbl_8017E668: +/* 8017E668 0017B5C8 7F C4 F3 78 */ mr r4, r30 +/* 8017E66C 0017B5CC 38 60 00 1A */ li r3, 0x1a +/* 8017E670 0017B5D0 4B E8 E1 61 */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8017E674 0017B5D4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017E678 0017B5D8 41 82 00 A4 */ beq lbl_8017E71C +/* 8017E67C 0017B5DC 7F A4 EB 78 */ mr r4, r29 +/* 8017E680 0017B5E0 7F E5 FB 78 */ mr r5, r31 +/* 8017E684 0017B5E4 38 61 00 28 */ addi r3, r1, 0x28 +/* 8017E688 0017B5E8 4B FF E5 E9 */ bl FindOrbitTargetId__7CPlayerFR13CStateManager +/* 8017E68C 0017B5EC A0 01 00 28 */ lhz r0, 0x28(r1) +/* 8017E690 0017B5F0 7F A3 EB 78 */ mr r3, r29 +/* 8017E694 0017B5F4 7F E5 FB 78 */ mr r5, r31 +/* 8017E698 0017B5F8 38 81 00 2C */ addi r4, r1, 0x2c +/* 8017E69C 0017B5FC B0 01 00 2C */ sth r0, 0x2c(r1) +/* 8017E6A0 0017B600 4B FF CF 4D */ bl SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager +/* 8017E6A4 0017B604 A0 DD 03 10 */ lhz r6, 0x310(r29) +/* 8017E6A8 0017B608 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017E6AC 0017B60C 7C 06 00 40 */ cmplw r6, r0 +/* 8017E6B0 0017B610 41 82 00 6C */ beq lbl_8017E71C +/* 8017E6B4 0017B614 B0 C1 00 20 */ sth r6, 0x20(r1) +/* 8017E6B8 0017B618 7F A3 EB 78 */ mr r3, r29 +/* 8017E6BC 0017B61C 7F E5 FB 78 */ mr r5, r31 +/* 8017E6C0 0017B620 38 81 00 24 */ addi r4, r1, 0x24 +/* 8017E6C4 0017B624 B0 C1 00 24 */ sth r6, 0x24(r1) +/* 8017E6C8 0017B628 4B FF D6 B9 */ bl ValidateAimTargetId__7CPlayerF9TUniqueIdR13CStateManager +/* 8017E6CC 0017B62C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017E6D0 0017B630 41 82 00 1C */ beq lbl_8017E6EC +/* 8017E6D4 0017B634 A0 1D 03 10 */ lhz r0, 0x310(r29) +/* 8017E6D8 0017B638 7F A3 EB 78 */ mr r3, r29 +/* 8017E6DC 0017B63C 38 81 00 1C */ addi r4, r1, 0x1c +/* 8017E6E0 0017B640 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8017E6E4 0017B644 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8017E6E8 0017B648 4B E9 B6 BD */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId +lbl_8017E6EC: +/* 8017E6EC 0017B64C 7F A3 EB 78 */ mr r3, r29 +/* 8017E6F0 0017B650 7F E5 FB 78 */ mr r5, r31 +/* 8017E6F4 0017B654 38 80 00 01 */ li r4, 1 +/* 8017E6F8 0017B658 4B FF CD 9D */ bl SetOrbitState__7CPlayerFQ27CPlayer17EPlayerOrbitStateR13CStateManager +/* 8017E6FC 0017B65C 80 1D 03 08 */ lwz r0, 0x308(r29) +/* 8017E700 0017B660 7F A3 EB 78 */ mr r3, r29 +/* 8017E704 0017B664 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) +/* 8017E708 0017B668 7F E4 FB 78 */ mr r4, r31 +/* 8017E70C 0017B66C 54 00 10 3A */ slwi r0, r0, 2 +/* 8017E710 0017B670 7C A5 02 14 */ add r5, r5, r0 +/* 8017E714 0017B674 C0 25 01 64 */ lfs f1, 0x164(r5) +/* 8017E718 0017B678 4B FF CF FD */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager +lbl_8017E71C: +/* 8017E71C 0017B67C 7F A3 EB 78 */ mr r3, r29 +/* 8017E720 0017B680 7F C4 F3 78 */ mr r4, r30 +/* 8017E724 0017B684 7F E5 FB 78 */ mr r5, r31 +/* 8017E728 0017B688 48 00 02 31 */ bl UpdateOrbitSelection__7CPlayerFRC11CFinalInputR13CStateManager +/* 8017E72C 0017B68C 48 00 00 34 */ b lbl_8017E760 +lbl_8017E730: +/* 8017E730 0017B690 80 1D 03 08 */ lwz r0, 0x308(r29) +/* 8017E734 0017B694 7F A3 EB 78 */ mr r3, r29 +/* 8017E738 0017B698 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) +/* 8017E73C 0017B69C 7F E4 FB 78 */ mr r4, r31 +/* 8017E740 0017B6A0 54 00 10 3A */ slwi r0, r0, 2 +/* 8017E744 0017B6A4 7C A5 02 14 */ add r5, r5, r0 +/* 8017E748 0017B6A8 C0 25 01 64 */ lfs f1, 0x164(r5) +/* 8017E74C 0017B6AC 4B FF CF C9 */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager +/* 8017E750 0017B6B0 7F A3 EB 78 */ mr r3, r29 +/* 8017E754 0017B6B4 7F C4 F3 78 */ mr r4, r30 +/* 8017E758 0017B6B8 7F E5 FB 78 */ mr r5, r31 +/* 8017E75C 0017B6BC 48 00 01 FD */ bl UpdateOrbitSelection__7CPlayerFRC11CFinalInputR13CStateManager +lbl_8017E760: +/* 8017E760 0017B6C0 80 1D 03 04 */ lwz r0, 0x304(r29) +/* 8017E764 0017B6C4 2C 00 00 05 */ cmpwi r0, 5 +/* 8017E768 0017B6C8 40 82 01 60 */ bne lbl_8017E8C8 +/* 8017E76C 0017B6CC 7F A4 EB 78 */ mr r4, r29 +/* 8017E770 0017B6D0 7F E5 FB 78 */ mr r5, r31 +/* 8017E774 0017B6D4 38 61 00 14 */ addi r3, r1, 0x14 +/* 8017E778 0017B6D8 4B FF E4 F9 */ bl FindOrbitTargetId__7CPlayerFR13CStateManager +/* 8017E77C 0017B6DC A0 01 00 14 */ lhz r0, 0x14(r1) +/* 8017E780 0017B6E0 B0 1D 03 3C */ sth r0, 0x33c(r29) +/* 8017E784 0017B6E4 A0 7D 03 3C */ lhz r3, 0x33c(r29) +/* 8017E788 0017B6E8 A0 1D 03 10 */ lhz r0, 0x310(r29) +/* 8017E78C 0017B6EC 7C 03 00 40 */ cmplw r3, r0 +/* 8017E790 0017B6F0 40 82 01 38 */ bne lbl_8017E8C8 +/* 8017E794 0017B6F4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017E798 0017B6F8 B0 1D 03 3C */ sth r0, 0x33c(r29) +/* 8017E79C 0017B6FC 48 00 01 2C */ b lbl_8017E8C8 +lbl_8017E7A0: +/* 8017E7A0 0017B700 80 1D 03 04 */ lwz r0, 0x304(r29) +/* 8017E7A4 0017B704 2C 00 00 04 */ cmpwi r0, 4 +/* 8017E7A8 0017B708 41 82 00 DC */ beq lbl_8017E884 +/* 8017E7AC 0017B70C 40 80 00 1C */ bge lbl_8017E7C8 +/* 8017E7B0 0017B710 2C 00 00 01 */ cmpwi r0, 1 +/* 8017E7B4 0017B714 41 82 00 20 */ beq lbl_8017E7D4 +/* 8017E7B8 0017B718 40 80 01 00 */ bge lbl_8017E8B8 +/* 8017E7BC 0017B71C 2C 00 00 00 */ cmpwi r0, 0 +/* 8017E7C0 0017B720 40 80 01 08 */ bge lbl_8017E8C8 +/* 8017E7C4 0017B724 48 00 00 F4 */ b lbl_8017E8B8 +lbl_8017E7C8: +/* 8017E7C8 0017B728 2C 00 00 06 */ cmpwi r0, 6 +/* 8017E7CC 0017B72C 40 80 00 EC */ bge lbl_8017E8B8 +/* 8017E7D0 0017B730 48 00 00 5C */ b lbl_8017E82C +lbl_8017E7D4: +/* 8017E7D4 0017B734 A0 1D 03 10 */ lhz r0, 0x310(r29) +/* 8017E7D8 0017B738 7F E3 FB 78 */ mr r3, r31 +/* 8017E7DC 0017B73C 38 81 00 10 */ addi r4, r1, 0x10 +/* 8017E7E0 0017B740 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8017E7E4 0017B744 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8017E7E8 0017B748 4B EC DD BD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017E7EC 0017B74C 7C 64 1B 78 */ mr r4, r3 +/* 8017E7F0 0017B750 38 61 00 70 */ addi r3, r1, 0x70 +/* 8017E7F4 0017B754 4B F2 B2 D5 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" +/* 8017E7F8 0017B758 80 03 00 04 */ lwz r0, 4(r3) +/* 8017E7FC 0017B75C 28 00 00 00 */ cmplwi r0, 0 +/* 8017E800 0017B760 41 82 00 18 */ beq lbl_8017E818 +/* 8017E804 0017B764 7F A3 EB 78 */ mr r3, r29 +/* 8017E808 0017B768 7F E5 FB 78 */ mr r5, r31 +/* 8017E80C 0017B76C 38 80 00 03 */ li r4, 3 +/* 8017E810 0017B770 4B FF C8 B5 */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager +/* 8017E814 0017B774 48 00 00 B4 */ b lbl_8017E8C8 +lbl_8017E818: +/* 8017E818 0017B778 7F A3 EB 78 */ mr r3, r29 +/* 8017E81C 0017B77C 7F E5 FB 78 */ mr r5, r31 +/* 8017E820 0017B780 38 80 00 00 */ li r4, 0 +/* 8017E824 0017B784 4B FF C9 79 */ bl SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager +/* 8017E828 0017B788 48 00 00 A0 */ b lbl_8017E8C8 +lbl_8017E82C: +/* 8017E82C 0017B78C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017E830 0017B790 88 03 02 D4 */ lbz r0, 0x2d4(r3) +/* 8017E834 0017B794 28 00 00 00 */ cmplwi r0, 0 +/* 8017E838 0017B798 40 82 00 38 */ bne lbl_8017E870 +/* 8017E83C 0017B79C 7F A4 EB 78 */ mr r4, r29 +/* 8017E840 0017B7A0 7F E5 FB 78 */ mr r5, r31 +/* 8017E844 0017B7A4 38 61 00 08 */ addi r3, r1, 8 +/* 8017E848 0017B7A8 4B FF E4 29 */ bl FindOrbitTargetId__7CPlayerFR13CStateManager +/* 8017E84C 0017B7AC A0 01 00 08 */ lhz r0, 8(r1) +/* 8017E850 0017B7B0 B0 1D 03 3C */ sth r0, 0x33c(r29) +/* 8017E854 0017B7B4 A0 7D 03 3C */ lhz r3, 0x33c(r29) +/* 8017E858 0017B7B8 A0 1D 03 10 */ lhz r0, 0x310(r29) +/* 8017E85C 0017B7BC 7C 03 00 40 */ cmplw r3, r0 +/* 8017E860 0017B7C0 40 82 00 68 */ bne lbl_8017E8C8 +/* 8017E864 0017B7C4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017E868 0017B7C8 B0 1D 03 3C */ sth r0, 0x33c(r29) +/* 8017E86C 0017B7CC 48 00 00 5C */ b lbl_8017E8C8 +lbl_8017E870: +/* 8017E870 0017B7D0 7F A3 EB 78 */ mr r3, r29 +/* 8017E874 0017B7D4 7F E5 FB 78 */ mr r5, r31 +/* 8017E878 0017B7D8 38 80 00 00 */ li r4, 0 +/* 8017E87C 0017B7DC 4B FF C8 49 */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager +/* 8017E880 0017B7E0 48 00 00 48 */ b lbl_8017E8C8 +lbl_8017E884: +/* 8017E884 0017B7E4 80 1D 03 08 */ lwz r0, 0x308(r29) +/* 8017E888 0017B7E8 7F A3 EB 78 */ mr r3, r29 +/* 8017E88C 0017B7EC 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) +/* 8017E890 0017B7F0 7F E4 FB 78 */ mr r4, r31 +/* 8017E894 0017B7F4 54 00 10 3A */ slwi r0, r0, 2 +/* 8017E898 0017B7F8 7C A5 02 14 */ add r5, r5, r0 +/* 8017E89C 0017B7FC C0 25 01 64 */ lfs f1, 0x164(r5) +/* 8017E8A0 0017B800 4B FF CE 75 */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager +/* 8017E8A4 0017B804 7F A3 EB 78 */ mr r3, r29 +/* 8017E8A8 0017B808 7F C4 F3 78 */ mr r4, r30 +/* 8017E8AC 0017B80C 7F E5 FB 78 */ mr r5, r31 +/* 8017E8B0 0017B810 48 00 00 A9 */ bl UpdateOrbitSelection__7CPlayerFRC11CFinalInputR13CStateManager +/* 8017E8B4 0017B814 48 00 00 14 */ b lbl_8017E8C8 +lbl_8017E8B8: +/* 8017E8B8 0017B818 7F A3 EB 78 */ mr r3, r29 +/* 8017E8BC 0017B81C 7F E5 FB 78 */ mr r5, r31 +/* 8017E8C0 0017B820 38 80 00 00 */ li r4, 0 +/* 8017E8C4 0017B824 4B FF C8 D9 */ bl SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager +lbl_8017E8C8: +/* 8017E8C8 0017B828 80 01 00 94 */ lwz r0, 0x94(r1) +/* 8017E8CC 0017B82C 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 8017E8D0 0017B830 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 8017E8D4 0017B834 83 A1 00 84 */ lwz r29, 0x84(r1) +/* 8017E8D8 0017B838 7C 08 03 A6 */ mtlr r0 +/* 8017E8DC 0017B83C 38 21 00 90 */ addi r1, r1, 0x90 +/* 8017E8E0 0017B840 4E 80 00 20 */ blr + +.global ActivateOrbitSource__7CPlayerFR13CStateManager +ActivateOrbitSource__7CPlayerFR13CStateManager: +/* 8017E8E4 0017B844 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8017E8E8 0017B848 7C 08 02 A6 */ mflr r0 +/* 8017E8EC 0017B84C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8017E8F0 0017B850 80 03 03 90 */ lwz r0, 0x390(r3) +/* 8017E8F4 0017B854 2C 00 00 01 */ cmpwi r0, 1 +/* 8017E8F8 0017B858 41 82 00 20 */ beq lbl_8017E918 +/* 8017E8FC 0017B85C 40 80 00 08 */ bge lbl_8017E904 +/* 8017E900 0017B860 48 00 00 10 */ b lbl_8017E910 +lbl_8017E904: +/* 8017E904 0017B864 2C 00 00 03 */ cmpwi r0, 3 +/* 8017E908 0017B868 40 80 00 08 */ bge lbl_8017E910 +/* 8017E90C 0017B86C 48 00 00 1C */ b lbl_8017E928 +lbl_8017E910: +/* 8017E910 0017B870 4B FF C9 ED */ bl OrbitCarcass__7CPlayerFR13CStateManager +/* 8017E914 0017B874 48 00 00 34 */ b lbl_8017E948 +lbl_8017E918: +/* 8017E918 0017B878 7C 85 23 78 */ mr r5, r4 +/* 8017E91C 0017B87C 38 80 00 06 */ li r4, 6 +/* 8017E920 0017B880 4B FF C8 7D */ bl SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager +/* 8017E924 0017B884 48 00 00 24 */ b lbl_8017E948 +lbl_8017E928: +/* 8017E928 0017B888 88 03 03 94 */ lbz r0, 0x394(r3) +/* 8017E92C 0017B88C 28 00 00 00 */ cmplwi r0, 0 +/* 8017E930 0017B890 41 82 00 14 */ beq lbl_8017E944 +/* 8017E934 0017B894 7C 85 23 78 */ mr r5, r4 +/* 8017E938 0017B898 38 80 00 01 */ li r4, 1 +/* 8017E93C 0017B89C 4B FF C9 FD */ bl OrbitPoint__7CPlayerFQ27CPlayer16EPlayerOrbitTypeR13CStateManager +/* 8017E940 0017B8A0 48 00 00 08 */ b lbl_8017E948 +lbl_8017E944: +/* 8017E944 0017B8A4 4B FF C9 B9 */ bl OrbitCarcass__7CPlayerFR13CStateManager +lbl_8017E948: +/* 8017E948 0017B8A8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8017E94C 0017B8AC 7C 08 03 A6 */ mtlr r0 +/* 8017E950 0017B8B0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8017E954 0017B8B4 4E 80 00 20 */ blr + +.global UpdateOrbitSelection__7CPlayerFRC11CFinalInputR13CStateManager +UpdateOrbitSelection__7CPlayerFRC11CFinalInputR13CStateManager: +/* 8017E958 0017B8B8 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8017E95C 0017B8BC 7C 08 02 A6 */ mflr r0 +/* 8017E960 0017B8C0 90 01 00 54 */ stw r0, 0x54(r1) +/* 8017E964 0017B8C4 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 8017E968 0017B8C8 7C BF 2B 78 */ mr r31, r5 +/* 8017E96C 0017B8CC 93 C1 00 48 */ stw r30, 0x48(r1) +/* 8017E970 0017B8D0 7C 7E 1B 78 */ mr r30, r3 +/* 8017E974 0017B8D4 38 61 00 24 */ addi r3, r1, 0x24 +/* 8017E978 0017B8D8 93 A1 00 44 */ stw r29, 0x44(r1) +/* 8017E97C 0017B8DC 93 81 00 40 */ stw r28, 0x40(r1) +/* 8017E980 0017B8E0 7C 9C 23 78 */ mr r28, r4 +/* 8017E984 0017B8E4 7F C4 F3 78 */ mr r4, r30 +/* 8017E988 0017B8E8 4B FF E2 E9 */ bl FindOrbitTargetId__7CPlayerFR13CStateManager +/* 8017E98C 0017B8EC A0 01 00 24 */ lhz r0, 0x24(r1) +/* 8017E990 0017B8F0 7F E3 FB 78 */ mr r3, r31 +/* 8017E994 0017B8F4 38 81 00 20 */ addi r4, r1, 0x20 +/* 8017E998 0017B8F8 B0 1E 03 3C */ sth r0, 0x33c(r30) +/* 8017E99C 0017B8FC A0 1E 03 10 */ lhz r0, 0x310(r30) +/* 8017E9A0 0017B900 B0 01 00 20 */ sth r0, 0x20(r1) +/* 8017E9A4 0017B904 4B EC DC 01 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017E9A8 0017B908 7C 64 1B 78 */ mr r4, r3 +/* 8017E9AC 0017B90C 38 61 00 30 */ addi r3, r1, 0x30 +/* 8017E9B0 0017B910 4B F2 B1 19 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" +/* 8017E9B4 0017B914 83 A3 00 04 */ lwz r29, 4(r3) +/* 8017E9B8 0017B918 7F E3 FB 78 */ mr r3, r31 +/* 8017E9BC 0017B91C A0 1E 03 3C */ lhz r0, 0x33c(r30) +/* 8017E9C0 0017B920 38 81 00 1C */ addi r4, r1, 0x1c +/* 8017E9C4 0017B924 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8017E9C8 0017B928 4B EC DB DD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017E9CC 0017B92C 7C 64 1B 78 */ mr r4, r3 +/* 8017E9D0 0017B930 38 61 00 28 */ addi r3, r1, 0x28 +/* 8017E9D4 0017B934 4B F2 B0 F5 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" +/* 8017E9D8 0017B938 28 1D 00 00 */ cmplwi r29, 0 +/* 8017E9DC 0017B93C 80 63 00 04 */ lwz r3, 4(r3) +/* 8017E9E0 0017B940 40 82 00 18 */ bne lbl_8017E9F8 +/* 8017E9E4 0017B944 80 1E 03 04 */ lwz r0, 0x304(r30) +/* 8017E9E8 0017B948 2C 00 00 05 */ cmpwi r0, 5 +/* 8017E9EC 0017B94C 40 82 00 18 */ bne lbl_8017EA04 +/* 8017E9F0 0017B950 28 03 00 00 */ cmplwi r3, 0 +/* 8017E9F4 0017B954 40 82 00 10 */ bne lbl_8017EA04 +lbl_8017E9F8: +/* 8017E9F8 0017B958 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017E9FC 0017B95C B0 1E 03 3C */ sth r0, 0x33c(r30) +/* 8017EA00 0017B960 48 00 00 AC */ b lbl_8017EAAC +lbl_8017EA04: +/* 8017EA04 0017B964 7F 84 E3 78 */ mr r4, r28 +/* 8017EA08 0017B968 38 60 00 1A */ li r3, 0x1a +/* 8017EA0C 0017B96C 4B E8 DD C5 */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8017EA10 0017B970 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017EA14 0017B974 41 82 00 98 */ beq lbl_8017EAAC +/* 8017EA18 0017B978 A0 7E 03 3C */ lhz r3, 0x33c(r30) +/* 8017EA1C 0017B97C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017EA20 0017B980 7C 03 00 40 */ cmplw r3, r0 +/* 8017EA24 0017B984 41 82 00 88 */ beq lbl_8017EAAC +/* 8017EA28 0017B988 A0 1E 03 3C */ lhz r0, 0x33c(r30) +/* 8017EA2C 0017B98C 7F C3 F3 78 */ mr r3, r30 +/* 8017EA30 0017B990 7F E5 FB 78 */ mr r5, r31 +/* 8017EA34 0017B994 38 81 00 18 */ addi r4, r1, 0x18 +/* 8017EA38 0017B998 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8017EA3C 0017B99C 4B FF CB B1 */ bl SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager +/* 8017EA40 0017B9A0 A0 1E 03 10 */ lhz r0, 0x310(r30) +/* 8017EA44 0017B9A4 7F C3 F3 78 */ mr r3, r30 +/* 8017EA48 0017B9A8 7F E5 FB 78 */ mr r5, r31 +/* 8017EA4C 0017B9AC 38 81 00 14 */ addi r4, r1, 0x14 +/* 8017EA50 0017B9B0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8017EA54 0017B9B4 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8017EA58 0017B9B8 4B FF D3 29 */ bl ValidateAimTargetId__7CPlayerF9TUniqueIdR13CStateManager +/* 8017EA5C 0017B9BC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017EA60 0017B9C0 41 82 00 1C */ beq lbl_8017EA7C +/* 8017EA64 0017B9C4 A0 1E 03 10 */ lhz r0, 0x310(r30) +/* 8017EA68 0017B9C8 7F C3 F3 78 */ mr r3, r30 +/* 8017EA6C 0017B9CC 38 81 00 0C */ addi r4, r1, 0xc +/* 8017EA70 0017B9D0 B0 01 00 08 */ sth r0, 8(r1) +/* 8017EA74 0017B9D4 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8017EA78 0017B9D8 4B E9 B3 2D */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId +lbl_8017EA7C: +/* 8017EA7C 0017B9DC 7F C3 F3 78 */ mr r3, r30 +/* 8017EA80 0017B9E0 7F E5 FB 78 */ mr r5, r31 +/* 8017EA84 0017B9E4 38 80 00 01 */ li r4, 1 +/* 8017EA88 0017B9E8 4B FF CA 0D */ bl SetOrbitState__7CPlayerFQ27CPlayer17EPlayerOrbitStateR13CStateManager +/* 8017EA8C 0017B9EC 80 1E 03 08 */ lwz r0, 0x308(r30) +/* 8017EA90 0017B9F0 7F C3 F3 78 */ mr r3, r30 +/* 8017EA94 0017B9F4 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) +/* 8017EA98 0017B9F8 7F E4 FB 78 */ mr r4, r31 +/* 8017EA9C 0017B9FC 54 00 10 3A */ slwi r0, r0, 2 +/* 8017EAA0 0017BA00 7C A5 02 14 */ add r5, r5, r0 +/* 8017EAA4 0017BA04 C0 25 01 64 */ lfs f1, 0x164(r5) +/* 8017EAA8 0017BA08 4B FF CC 6D */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager +lbl_8017EAAC: +/* 8017EAAC 0017BA0C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8017EAB0 0017BA10 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 8017EAB4 0017BA14 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 8017EAB8 0017BA18 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 8017EABC 0017BA1C 83 81 00 40 */ lwz r28, 0x40(r1) +/* 8017EAC0 0017BA20 7C 08 03 A6 */ mtlr r0 +/* 8017EAC4 0017BA24 38 21 00 50 */ addi r1, r1, 0x50 +/* 8017EAC8 0017BA28 4E 80 00 20 */ blr + +.global UpdateOrbitOrientation__7CPlayerFR13CStateManager +UpdateOrbitOrientation__7CPlayerFR13CStateManager: +/* 8017EACC 0017BA2C 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 8017EAD0 0017BA30 7C 08 02 A6 */ mflr r0 +/* 8017EAD4 0017BA34 90 01 00 84 */ stw r0, 0x84(r1) +/* 8017EAD8 0017BA38 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 8017EADC 0017BA3C 7C 7F 1B 78 */ mr r31, r3 +/* 8017EAE0 0017BA40 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 8017EAE4 0017BA44 2C 00 00 00 */ cmpwi r0, 0 +/* 8017EAE8 0017BA48 40 82 01 2C */ bne lbl_8017EC14 +/* 8017EAEC 0017BA4C 80 1F 03 04 */ lwz r0, 0x304(r31) +/* 8017EAF0 0017BA50 2C 00 00 02 */ cmpwi r0, 2 +/* 8017EAF4 0017BA54 41 82 00 2C */ beq lbl_8017EB20 +/* 8017EAF8 0017BA58 40 80 00 14 */ bge lbl_8017EB0C +/* 8017EAFC 0017BA5C 2C 00 00 00 */ cmpwi r0, 0 +/* 8017EB00 0017BA60 41 82 01 14 */ beq lbl_8017EC14 +/* 8017EB04 0017BA64 40 80 00 28 */ bge lbl_8017EB2C +/* 8017EB08 0017BA68 48 00 01 0C */ b lbl_8017EC14 +lbl_8017EB0C: +/* 8017EB0C 0017BA6C 2C 00 00 05 */ cmpwi r0, 5 +/* 8017EB10 0017BA70 41 82 01 04 */ beq lbl_8017EC14 +/* 8017EB14 0017BA74 40 80 01 00 */ bge lbl_8017EC14 +/* 8017EB18 0017BA78 48 00 00 14 */ b lbl_8017EB2C +/* 8017EB1C 0017BA7C 48 00 00 F8 */ b lbl_8017EC14 +lbl_8017EB20: +/* 8017EB20 0017BA80 88 1F 03 DC */ lbz r0, 0x3dc(r31) +/* 8017EB24 0017BA84 28 00 00 00 */ cmplwi r0, 0 +/* 8017EB28 0017BA88 40 82 00 EC */ bne lbl_8017EC14 +lbl_8017EB2C: +/* 8017EB2C 0017BA8C C0 3F 03 18 */ lfs f1, 0x318(r31) +/* 8017EB30 0017BA90 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 8017EB34 0017BA94 C0 7F 03 1C */ lfs f3, 0x31c(r31) +/* 8017EB38 0017BA98 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8017EB3C 0017BA9C EC 81 00 28 */ fsubs f4, f1, f0 +/* 8017EB40 0017BAA0 C0 3F 03 14 */ lfs f1, 0x314(r31) +/* 8017EB44 0017BAA4 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8017EB48 0017BAA8 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8017EB4C 0017BAAC EC 01 00 28 */ fsubs f0, f1, f0 +/* 8017EB50 0017BAB0 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 8017EB54 0017BAB4 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 8017EB58 0017BAB8 D0 01 00 08 */ stfs f0, 8(r1) +/* 8017EB5C 0017BABC 88 1F 03 74 */ lbz r0, 0x374(r31) +/* 8017EB60 0017BAC0 28 00 00 00 */ cmplwi r0, 0 +/* 8017EB64 0017BAC4 40 82 00 24 */ bne lbl_8017EB88 +/* 8017EB68 0017BAC8 80 64 08 70 */ lwz r3, 0x870(r4) +/* 8017EB6C 0017BACC 80 63 00 7C */ lwz r3, 0x7c(r3) +/* 8017EB70 0017BAD0 C0 43 00 58 */ lfs f2, 0x58(r3) +/* 8017EB74 0017BAD4 C0 23 00 48 */ lfs f1, 0x48(r3) +/* 8017EB78 0017BAD8 C0 03 00 38 */ lfs f0, 0x38(r3) +/* 8017EB7C 0017BADC D0 01 00 08 */ stfs f0, 8(r1) +/* 8017EB80 0017BAE0 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 8017EB84 0017BAE4 D0 41 00 10 */ stfs f2, 0x10(r1) +lbl_8017EB88: +/* 8017EB88 0017BAE8 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017EB8C 0017BAEC 38 61 00 08 */ addi r3, r1, 8 +/* 8017EB90 0017BAF0 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8017EB94 0017BAF4 48 19 5B 65 */ bl CanBeNormalized__9CVector3fCFv +/* 8017EB98 0017BAF8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017EB9C 0017BAFC 41 82 00 78 */ beq lbl_8017EC14 +/* 8017EBA0 0017BB00 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8017EBA4 0017BB04 3C A0 80 5A */ lis r5, lbl_805A66F4@ha +/* 8017EBA8 0017BB08 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 8017EBAC 0017BB0C 38 C5 66 F4 */ addi r6, r5, lbl_805A66F4@l +/* 8017EBB0 0017BB10 38 61 00 14 */ addi r3, r1, 0x14 +/* 8017EBB4 0017BB14 38 A1 00 08 */ addi r5, r1, 8 +/* 8017EBB8 0017BB18 48 19 4F 59 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 8017EBBC 0017BB1C 38 61 00 44 */ addi r3, r1, 0x44 +/* 8017EBC0 0017BB20 38 81 00 14 */ addi r4, r1, 0x14 +/* 8017EBC4 0017BB24 48 19 3F B1 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8017EBC8 0017BB28 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8017EBCC 0017BB2C 38 7F 00 34 */ addi r3, r31, 0x34 +/* 8017EBD0 0017BB30 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 8017EBD4 0017BB34 38 81 00 44 */ addi r4, r1, 0x44 +/* 8017EBD8 0017BB38 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8017EBDC 0017BB3C D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8017EBE0 0017BB40 D0 21 00 60 */ stfs f1, 0x60(r1) +/* 8017EBE4 0017BB44 D0 41 00 70 */ stfs f2, 0x70(r1) +/* 8017EBE8 0017BB48 48 19 3F 59 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8017EBEC 0017BB4C 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8017EBF0 0017BB50 38 60 00 01 */ li r3, 1 +/* 8017EBF4 0017BB54 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8017EBF8 0017BB58 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 8017EBFC 0017BB5C 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8017EC00 0017BB60 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 8017EC04 0017BB64 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 8017EC08 0017BB68 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8017EC0C 0017BB6C 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 8017EC10 0017BB70 98 1F 00 E4 */ stb r0, 0xe4(r31) +lbl_8017EC14: +/* 8017EC14 0017BB74 80 01 00 84 */ lwz r0, 0x84(r1) +/* 8017EC18 0017BB78 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 8017EC1C 0017BB7C 7C 08 03 A6 */ mtlr r0 +/* 8017EC20 0017BB80 38 21 00 80 */ addi r1, r1, 0x80 +/* 8017EC24 0017BB84 4E 80 00 20 */ blr + +.global UpdateOrbitTarget__7CPlayerFR13CStateManager +UpdateOrbitTarget__7CPlayerFR13CStateManager: +/* 8017EC28 0017BB88 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8017EC2C 0017BB8C 7C 08 02 A6 */ mflr r0 +/* 8017EC30 0017BB90 90 01 00 74 */ stw r0, 0x74(r1) +/* 8017EC34 0017BB94 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 8017EC38 0017BB98 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 8017EC3C 0017BB9C 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8017EC40 0017BBA0 93 C1 00 58 */ stw r30, 0x58(r1) +/* 8017EC44 0017BBA4 7C 7E 1B 78 */ mr r30, r3 +/* 8017EC48 0017BBA8 7C 9F 23 78 */ mr r31, r4 +/* 8017EC4C 0017BBAC A0 03 03 10 */ lhz r0, 0x310(r3) +/* 8017EC50 0017BBB0 7F E5 FB 78 */ mr r5, r31 +/* 8017EC54 0017BBB4 38 81 00 28 */ addi r4, r1, 0x28 +/* 8017EC58 0017BBB8 B0 01 00 24 */ sth r0, 0x24(r1) +/* 8017EC5C 0017BBBC B0 01 00 28 */ sth r0, 0x28(r1) +/* 8017EC60 0017BBC0 48 00 0C B1 */ bl ValidateOrbitTargetIdAndPointer__7CPlayerCF9TUniqueIdR13CStateManager +/* 8017EC64 0017BBC4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017EC68 0017BBC8 40 82 00 1C */ bne lbl_8017EC84 +/* 8017EC6C 0017BBCC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017EC70 0017BBD0 7F C3 F3 78 */ mr r3, r30 +/* 8017EC74 0017BBD4 7F E5 FB 78 */ mr r5, r31 +/* 8017EC78 0017BBD8 38 81 00 20 */ addi r4, r1, 0x20 +/* 8017EC7C 0017BBDC B0 01 00 20 */ sth r0, 0x20(r1) +/* 8017EC80 0017BBE0 4B FF C9 6D */ bl SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager +lbl_8017EC84: +/* 8017EC84 0017BBE4 A0 1E 03 3C */ lhz r0, 0x33c(r30) +/* 8017EC88 0017BBE8 7F C3 F3 78 */ mr r3, r30 +/* 8017EC8C 0017BBEC 7F E5 FB 78 */ mr r5, r31 +/* 8017EC90 0017BBF0 38 81 00 1C */ addi r4, r1, 0x1c +/* 8017EC94 0017BBF4 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8017EC98 0017BBF8 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8017EC9C 0017BBFC 48 00 0C 75 */ bl ValidateOrbitTargetIdAndPointer__7CPlayerCF9TUniqueIdR13CStateManager +/* 8017ECA0 0017BC00 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017ECA4 0017BC04 40 82 00 10 */ bne lbl_8017ECB4 +/* 8017ECA8 0017BC08 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017ECAC 0017BC0C B0 01 00 14 */ sth r0, 0x14(r1) +/* 8017ECB0 0017BC10 B0 1E 03 3C */ sth r0, 0x33c(r30) +lbl_8017ECB4: +/* 8017ECB4 0017BC14 C0 3E 03 1C */ lfs f1, 0x31c(r30) +/* 8017ECB8 0017BC18 38 61 00 44 */ addi r3, r1, 0x44 +/* 8017ECBC 0017BC1C C0 1E 00 60 */ lfs f0, 0x60(r30) +/* 8017ECC0 0017BC20 C0 9E 03 18 */ lfs f4, 0x318(r30) +/* 8017ECC4 0017BC24 C0 7E 00 50 */ lfs f3, 0x50(r30) +/* 8017ECC8 0017BC28 EC A1 00 28 */ fsubs f5, f1, f0 +/* 8017ECCC 0017BC2C C0 5E 03 14 */ lfs f2, 0x314(r30) +/* 8017ECD0 0017BC30 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 8017ECD4 0017BC34 EC 64 18 28 */ fsubs f3, f4, f3 +/* 8017ECD8 0017BC38 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017ECDC 0017BC3C EC 22 08 28 */ fsubs f1, f2, f1 +/* 8017ECE0 0017BC40 D0 A1 00 4C */ stfs f5, 0x4c(r1) +/* 8017ECE4 0017BC44 D0 61 00 48 */ stfs f3, 0x48(r1) +/* 8017ECE8 0017BC48 D0 21 00 44 */ stfs f1, 0x44(r1) +/* 8017ECEC 0017BC4C D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 8017ECF0 0017BC50 48 19 5B C9 */ bl Magnitude__9CVector3fCFv +/* 8017ECF4 0017BC54 80 1E 03 04 */ lwz r0, 0x304(r30) +/* 8017ECF8 0017BC58 FF E0 08 90 */ fmr f31, f1 +/* 8017ECFC 0017BC5C 2C 00 00 02 */ cmpwi r0, 2 +/* 8017ED00 0017BC60 41 82 00 D0 */ beq lbl_8017EDD0 +/* 8017ED04 0017BC64 40 80 00 14 */ bge lbl_8017ED18 +/* 8017ED08 0017BC68 2C 00 00 00 */ cmpwi r0, 0 +/* 8017ED0C 0017BC6C 41 82 02 E8 */ beq lbl_8017EFF4 +/* 8017ED10 0017BC70 40 80 00 1C */ bge lbl_8017ED2C +/* 8017ED14 0017BC74 48 00 02 F8 */ b lbl_8017F00C +lbl_8017ED18: +/* 8017ED18 0017BC78 2C 00 00 06 */ cmpwi r0, 6 +/* 8017ED1C 0017BC7C 40 80 02 F0 */ bge lbl_8017F00C +/* 8017ED20 0017BC80 2C 00 00 04 */ cmpwi r0, 4 +/* 8017ED24 0017BC84 40 80 02 E8 */ bge lbl_8017F00C +/* 8017ED28 0017BC88 48 00 02 30 */ b lbl_8017EF58 +lbl_8017ED2C: +/* 8017ED2C 0017BC8C A0 1E 03 10 */ lhz r0, 0x310(r30) +/* 8017ED30 0017BC90 7F E3 FB 78 */ mr r3, r31 +/* 8017ED34 0017BC94 38 81 00 10 */ addi r4, r1, 0x10 +/* 8017ED38 0017BC98 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8017ED3C 0017BC9C B0 01 00 10 */ sth r0, 0x10(r1) +/* 8017ED40 0017BCA0 4B EC D8 65 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017ED44 0017BCA4 28 03 00 00 */ cmplwi r3, 0 +/* 8017ED48 0017BCA8 41 82 00 64 */ beq lbl_8017EDAC +/* 8017ED4C 0017BCAC 88 03 00 E7 */ lbz r0, 0xe7(r3) +/* 8017ED50 0017BCB0 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 8017ED54 0017BCB4 41 82 00 58 */ beq lbl_8017EDAC +/* 8017ED58 0017BCB8 7F C3 F3 78 */ mr r3, r30 +/* 8017ED5C 0017BCBC 7F E4 FB 78 */ mr r4, r31 +/* 8017ED60 0017BCC0 48 00 02 D5 */ bl GetOrbitMaxLockDistance__7CPlayerCFRC13CStateManager +/* 8017ED64 0017BCC4 FC 1F 08 40 */ fcmpo cr0, f31, f1 +/* 8017ED68 0017BCC8 4C 41 13 82 */ cror 2, 1, 2 +/* 8017ED6C 0017BCCC 41 82 00 10 */ beq lbl_8017ED7C +/* 8017ED70 0017BCD0 C0 02 A2 68 */ lfs f0, lbl_805ABF88@sda21(r2) +/* 8017ED74 0017BCD4 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 8017ED78 0017BCD8 40 80 00 34 */ bge lbl_8017EDAC +lbl_8017ED7C: +/* 8017ED7C 0017BCDC C0 02 A2 68 */ lfs f0, lbl_805ABF88@sda21(r2) +/* 8017ED80 0017BCE0 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 8017ED84 0017BCE4 40 80 00 18 */ bge lbl_8017ED9C +/* 8017ED88 0017BCE8 7F C3 F3 78 */ mr r3, r30 +/* 8017ED8C 0017BCEC 7F E5 FB 78 */ mr r5, r31 +/* 8017ED90 0017BCF0 38 80 00 07 */ li r4, 7 +/* 8017ED94 0017BCF4 4B FF C4 09 */ bl SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager +/* 8017ED98 0017BCF8 48 00 02 74 */ b lbl_8017F00C +lbl_8017ED9C: +/* 8017ED9C 0017BCFC 7F C3 F3 78 */ mr r3, r30 +/* 8017EDA0 0017BD00 7F E4 FB 78 */ mr r4, r31 +/* 8017EDA4 0017BD04 4B FF FB 41 */ bl ActivateOrbitSource__7CPlayerFR13CStateManager +/* 8017EDA8 0017BD08 48 00 02 64 */ b lbl_8017F00C +lbl_8017EDAC: +/* 8017EDAC 0017BD0C 80 1E 03 08 */ lwz r0, 0x308(r30) +/* 8017EDB0 0017BD10 7F C3 F3 78 */ mr r3, r30 +/* 8017EDB4 0017BD14 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) +/* 8017EDB8 0017BD18 7F E4 FB 78 */ mr r4, r31 +/* 8017EDBC 0017BD1C 54 00 10 3A */ slwi r0, r0, 2 +/* 8017EDC0 0017BD20 7C A5 02 14 */ add r5, r5, r0 +/* 8017EDC4 0017BD24 C0 25 01 64 */ lfs f1, 0x164(r5) +/* 8017EDC8 0017BD28 4B FF C9 4D */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager +/* 8017EDCC 0017BD2C 48 00 02 40 */ b lbl_8017F00C +lbl_8017EDD0: +/* 8017EDD0 0017BD30 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017EDD4 0017BD34 88 03 02 29 */ lbz r0, 0x229(r3) +/* 8017EDD8 0017BD38 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 8017EDDC 0017BD3C 41 82 00 28 */ beq lbl_8017EE04 +/* 8017EDE0 0017BD40 C0 3E 03 28 */ lfs f1, 0x328(r30) +/* 8017EDE4 0017BD44 C0 03 01 E8 */ lfs f0, 0x1e8(r3) +/* 8017EDE8 0017BD48 FC 20 0A 10 */ fabs f1, f1 +/* 8017EDEC 0017BD4C FC 20 08 18 */ frsp f1, f1 +/* 8017EDF0 0017BD50 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017EDF4 0017BD54 40 81 00 10 */ ble lbl_8017EE04 +/* 8017EDF8 0017BD58 7F C3 F3 78 */ mr r3, r30 +/* 8017EDFC 0017BD5C 4B FF CA 79 */ bl UpdateOrbitFixedPosition__7CPlayerFv +/* 8017EE00 0017BD60 48 00 02 14 */ b lbl_8017F014 +lbl_8017EE04: +/* 8017EE04 0017BD64 80 9E 03 08 */ lwz r4, 0x308(r30) +/* 8017EE08 0017BD68 7F C3 F3 78 */ mr r3, r30 +/* 8017EE0C 0017BD6C 4B FF C5 8D */ bl CalculateOrbitZBasedDistance__7CPlayerF16EPlayerOrbitType +/* 8017EE10 0017BD70 FC 1F 08 40 */ fcmpo cr0, f31, f1 +/* 8017EE14 0017BD74 40 80 00 1C */ bge lbl_8017EE30 +/* 8017EE18 0017BD78 80 9E 03 08 */ lwz r4, 0x308(r30) +/* 8017EE1C 0017BD7C 7F C3 F3 78 */ mr r3, r30 +/* 8017EE20 0017BD80 4B FF C5 79 */ bl CalculateOrbitZBasedDistance__7CPlayerF16EPlayerOrbitType +/* 8017EE24 0017BD84 7F C3 F3 78 */ mr r3, r30 +/* 8017EE28 0017BD88 7F E4 FB 78 */ mr r4, r31 +/* 8017EE2C 0017BD8C 4B FF C8 E9 */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager +lbl_8017EE30: +/* 8017EE30 0017BD90 80 1E 03 08 */ lwz r0, 0x308(r30) +/* 8017EE34 0017BD94 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017EE38 0017BD98 54 00 10 3A */ slwi r0, r0, 2 +/* 8017EE3C 0017BD9C 7C 63 02 14 */ add r3, r3, r0 +/* 8017EE40 0017BDA0 C0 23 01 70 */ lfs f1, 0x170(r3) +/* 8017EE44 0017BDA4 FC 1F 08 40 */ fcmpo cr0, f31, f1 +/* 8017EE48 0017BDA8 40 81 00 10 */ ble lbl_8017EE58 +/* 8017EE4C 0017BDAC 7F C3 F3 78 */ mr r3, r30 +/* 8017EE50 0017BDB0 7F E4 FB 78 */ mr r4, r31 +/* 8017EE54 0017BDB4 4B FF C8 C1 */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager +lbl_8017EE58: +/* 8017EE58 0017BDB8 88 1E 03 DD */ lbz r0, 0x3dd(r30) +/* 8017EE5C 0017BDBC 28 00 00 00 */ cmplwi r0, 0 +/* 8017EE60 0017BDC0 41 82 00 24 */ beq lbl_8017EE84 +/* 8017EE64 0017BDC4 80 1E 03 08 */ lwz r0, 0x308(r30) +/* 8017EE68 0017BDC8 7F C3 F3 78 */ mr r3, r30 +/* 8017EE6C 0017BDCC 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) +/* 8017EE70 0017BDD0 7F E4 FB 78 */ mr r4, r31 +/* 8017EE74 0017BDD4 54 00 10 3A */ slwi r0, r0, 2 +/* 8017EE78 0017BDD8 7C A5 02 14 */ add r5, r5, r0 +/* 8017EE7C 0017BDDC C0 25 01 64 */ lfs f1, 0x164(r5) +/* 8017EE80 0017BDE0 4B FF CA 99 */ bl SetOrbitPosition__7CPlayerFfR13CStateManager +lbl_8017EE84: +/* 8017EE84 0017BDE4 7F C4 F3 78 */ mr r4, r30 +/* 8017EE88 0017BDE8 38 61 00 2C */ addi r3, r1, 0x2c +/* 8017EE8C 0017BDEC 48 10 5E F1 */ bl GetEyePosition__7CPlayerCFv +/* 8017EE90 0017BDF0 C0 3E 03 1C */ lfs f1, 0x31c(r30) +/* 8017EE94 0017BDF4 38 61 00 38 */ addi r3, r1, 0x38 +/* 8017EE98 0017BDF8 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 8017EE9C 0017BDFC C0 7E 03 18 */ lfs f3, 0x318(r30) +/* 8017EEA0 0017BE00 C0 41 00 30 */ lfs f2, 0x30(r1) +/* 8017EEA4 0017BE04 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8017EEA8 0017BE08 C0 3E 03 14 */ lfs f1, 0x314(r30) +/* 8017EEAC 0017BE0C C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 8017EEB0 0017BE10 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8017EEB4 0017BE14 FF E0 22 10 */ fabs f31, f4 +/* 8017EEB8 0017BE18 D0 81 00 40 */ stfs f4, 0x40(r1) +/* 8017EEBC 0017BE1C EC 01 00 28 */ fsubs f0, f1, f0 +/* 8017EEC0 0017BE20 D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 8017EEC4 0017BE24 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 8017EEC8 0017BE28 48 19 59 F1 */ bl Magnitude__9CVector3fCFv +/* 8017EECC 0017BE2C FC 40 F8 18 */ frsp f2, f31 +/* 8017EED0 0017BE30 C8 02 A2 40 */ lfd f0, lbl_805ABF60@sda21(r2) +/* 8017EED4 0017BE34 EC 22 08 24 */ fdivs f1, f2, f1 +/* 8017EED8 0017BE38 FC 40 0A 10 */ fabs f2, f1 +/* 8017EEDC 0017BE3C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8017EEE0 0017BE40 40 81 00 14 */ ble lbl_8017EEF4 +/* 8017EEE4 0017BE44 C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) +/* 8017EEE8 0017BE48 C0 42 A2 4C */ lfs f2, lbl_805ABF6C@sda21(r2) +/* 8017EEEC 0017BE4C FC 01 00 AE */ fsel f0, f1, f2, f0 +/* 8017EEF0 0017BE50 EC 22 00 32 */ fmuls f1, f2, f0 +lbl_8017EEF4: +/* 8017EEF4 0017BE54 48 21 5D 59 */ bl asin +/* 8017EEF8 0017BE58 C0 41 00 40 */ lfs f2, 0x40(r1) +/* 8017EEFC 0017BE5C FC 20 08 18 */ frsp f1, f1 +/* 8017EF00 0017BE60 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017EF04 0017BE64 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8017EF08 0017BE68 4C 41 13 82 */ cror 2, 1, 2 +/* 8017EF0C 0017BE6C 40 82 00 18 */ bne lbl_8017EF24 +/* 8017EF10 0017BE70 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017EF14 0017BE74 C0 03 01 88 */ lfs f0, 0x188(r3) +/* 8017EF18 0017BE78 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017EF1C 0017BE7C 4C 41 13 82 */ cror 2, 1, 2 +/* 8017EF20 0017BE80 41 82 00 24 */ beq lbl_8017EF44 +lbl_8017EF24: +/* 8017EF24 0017BE84 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017EF28 0017BE88 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8017EF2C 0017BE8C 40 80 00 E0 */ bge lbl_8017F00C +/* 8017EF30 0017BE90 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017EF34 0017BE94 C0 03 01 8C */ lfs f0, 0x18c(r3) +/* 8017EF38 0017BE98 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017EF3C 0017BE9C 4C 41 13 82 */ cror 2, 1, 2 +/* 8017EF40 0017BEA0 40 82 00 CC */ bne lbl_8017F00C +lbl_8017EF44: +/* 8017EF44 0017BEA4 7F C3 F3 78 */ mr r3, r30 +/* 8017EF48 0017BEA8 7F E5 FB 78 */ mr r5, r31 +/* 8017EF4C 0017BEAC 38 80 00 07 */ li r4, 7 +/* 8017EF50 0017BEB0 4B FF C2 4D */ bl SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager +/* 8017EF54 0017BEB4 48 00 00 B8 */ b lbl_8017F00C +lbl_8017EF58: +/* 8017EF58 0017BEB8 88 1E 03 DD */ lbz r0, 0x3dd(r30) +/* 8017EF5C 0017BEBC 28 00 00 00 */ cmplwi r0, 0 +/* 8017EF60 0017BEC0 41 82 00 14 */ beq lbl_8017EF74 +/* 8017EF64 0017BEC4 C0 3E 03 40 */ lfs f1, 0x340(r30) +/* 8017EF68 0017BEC8 7F C3 F3 78 */ mr r3, r30 +/* 8017EF6C 0017BECC 7F E4 FB 78 */ mr r4, r31 +/* 8017EF70 0017BED0 4B FF C9 A9 */ bl SetOrbitPosition__7CPlayerFfR13CStateManager +lbl_8017EF74: +/* 8017EF74 0017BED4 80 9E 03 08 */ lwz r4, 0x308(r30) +/* 8017EF78 0017BED8 7F C3 F3 78 */ mr r3, r30 +/* 8017EF7C 0017BEDC 4B FF C4 1D */ bl CalculateOrbitZBasedDistance__7CPlayerF16EPlayerOrbitType +/* 8017EF80 0017BEE0 FC 1F 08 40 */ fcmpo cr0, f31, f1 +/* 8017EF84 0017BEE4 40 80 00 2C */ bge lbl_8017EFB0 +/* 8017EF88 0017BEE8 80 9E 03 08 */ lwz r4, 0x308(r30) +/* 8017EF8C 0017BEEC 7F C3 F3 78 */ mr r3, r30 +/* 8017EF90 0017BEF0 4B FF C4 09 */ bl CalculateOrbitZBasedDistance__7CPlayerF16EPlayerOrbitType +/* 8017EF94 0017BEF4 7F C3 F3 78 */ mr r3, r30 +/* 8017EF98 0017BEF8 7F E4 FB 78 */ mr r4, r31 +/* 8017EF9C 0017BEFC 4B FF C7 79 */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager +/* 8017EFA0 0017BF00 80 9E 03 08 */ lwz r4, 0x308(r30) +/* 8017EFA4 0017BF04 7F C3 F3 78 */ mr r3, r30 +/* 8017EFA8 0017BF08 4B FF C3 F1 */ bl CalculateOrbitZBasedDistance__7CPlayerF16EPlayerOrbitType +/* 8017EFAC 0017BF0C D0 3E 03 40 */ stfs f1, 0x340(r30) +lbl_8017EFB0: +/* 8017EFB0 0017BF10 80 1E 03 08 */ lwz r0, 0x308(r30) +/* 8017EFB4 0017BF14 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017EFB8 0017BF18 54 00 10 3A */ slwi r0, r0, 2 +/* 8017EFBC 0017BF1C 7C 63 02 14 */ add r3, r3, r0 +/* 8017EFC0 0017BF20 C0 23 01 70 */ lfs f1, 0x170(r3) +/* 8017EFC4 0017BF24 FC 1F 08 40 */ fcmpo cr0, f31, f1 +/* 8017EFC8 0017BF28 40 81 00 44 */ ble lbl_8017F00C +/* 8017EFCC 0017BF2C 7F C3 F3 78 */ mr r3, r30 +/* 8017EFD0 0017BF30 7F E4 FB 78 */ mr r4, r31 +/* 8017EFD4 0017BF34 4B FF C7 41 */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager +/* 8017EFD8 0017BF38 80 1E 03 08 */ lwz r0, 0x308(r30) +/* 8017EFDC 0017BF3C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017EFE0 0017BF40 54 00 10 3A */ slwi r0, r0, 2 +/* 8017EFE4 0017BF44 7C 63 02 14 */ add r3, r3, r0 +/* 8017EFE8 0017BF48 C0 03 01 70 */ lfs f0, 0x170(r3) +/* 8017EFEC 0017BF4C D0 1E 03 40 */ stfs f0, 0x340(r30) +/* 8017EFF0 0017BF50 48 00 00 1C */ b lbl_8017F00C +lbl_8017EFF4: +/* 8017EFF4 0017BF54 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017EFF8 0017BF58 7F C3 F3 78 */ mr r3, r30 +/* 8017EFFC 0017BF5C 7F E5 FB 78 */ mr r5, r31 +/* 8017F000 0017BF60 38 81 00 08 */ addi r4, r1, 8 +/* 8017F004 0017BF64 B0 01 00 08 */ sth r0, 8(r1) +/* 8017F008 0017BF68 4B FF C5 E5 */ bl SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager +lbl_8017F00C: +/* 8017F00C 0017BF6C 7F C3 F3 78 */ mr r3, r30 +/* 8017F010 0017BF70 4B FF C7 D5 */ bl UpdateOrbitZPosition__7CPlayerFv +lbl_8017F014: +/* 8017F014 0017BF74 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 8017F018 0017BF78 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8017F01C 0017BF7C CB E1 00 60 */ lfd f31, 0x60(r1) +/* 8017F020 0017BF80 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8017F024 0017BF84 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 8017F028 0017BF88 7C 08 03 A6 */ mtlr r0 +/* 8017F02C 0017BF8C 38 21 00 70 */ addi r1, r1, 0x70 +/* 8017F030 0017BF90 4E 80 00 20 */ blr + +.global GetOrbitMaxLockDistance__7CPlayerCFRC13CStateManager +GetOrbitMaxLockDistance__7CPlayerCFRC13CStateManager: +/* 8017F034 0017BF94 80 64 08 B8 */ lwz r3, 0x8b8(r4) +/* 8017F038 0017BF98 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) +/* 8017F03C 0017BF9C 80 63 00 00 */ lwz r3, 0(r3) +/* 8017F040 0017BFA0 C0 24 01 A0 */ lfs f1, 0x1a0(r4) +/* 8017F044 0017BFA4 80 03 00 14 */ lwz r0, 0x14(r3) +/* 8017F048 0017BFA8 2C 00 00 02 */ cmpwi r0, 2 +/* 8017F04C 0017BFAC 4C 82 00 20 */ bnelr +/* 8017F050 0017BFB0 C0 24 02 24 */ lfs f1, 0x224(r4) +/* 8017F054 0017BFB4 4E 80 00 20 */ blr + +.global GetOrbitMaxTargetDistance__7CPlayerCFRC13CStateManager +GetOrbitMaxTargetDistance__7CPlayerCFRC13CStateManager: +/* 8017F058 0017BFB8 80 64 08 B8 */ lwz r3, 0x8b8(r4) +/* 8017F05C 0017BFBC 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) +/* 8017F060 0017BFC0 80 63 00 00 */ lwz r3, 0(r3) +/* 8017F064 0017BFC4 C0 24 01 9C */ lfs f1, 0x19c(r4) +/* 8017F068 0017BFC8 80 03 00 14 */ lwz r0, 0x14(r3) +/* 8017F06C 0017BFCC 2C 00 00 02 */ cmpwi r0, 2 +/* 8017F070 0017BFD0 4C 82 00 20 */ bnelr +/* 8017F074 0017BFD4 C0 24 02 20 */ lfs f1, 0x220(r4) +/* 8017F078 0017BFD8 4E 80 00 20 */ blr + +.global ValidateOrbitTargetId__7CPlayerCF9TUniqueIdR13CStateManager +ValidateOrbitTargetId__7CPlayerCF9TUniqueIdR13CStateManager: +/* 8017F07C 0017BFDC 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 8017F080 0017BFE0 7C 08 02 A6 */ mflr r0 +/* 8017F084 0017BFE4 90 01 00 94 */ stw r0, 0x94(r1) +/* 8017F088 0017BFE8 DB E1 00 80 */ stfd f31, 0x80(r1) +/* 8017F08C 0017BFEC F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 +/* 8017F090 0017BFF0 DB C1 00 70 */ stfd f30, 0x70(r1) +/* 8017F094 0017BFF4 F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0 +/* 8017F098 0017BFF8 DB A1 00 60 */ stfd f29, 0x60(r1) +/* 8017F09C 0017BFFC F3 A1 00 68 */ psq_st f29, 104(r1), 0, qr0 +/* 8017F0A0 0017C000 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8017F0A4 0017C004 93 C1 00 58 */ stw r30, 0x58(r1) +/* 8017F0A8 0017C008 93 A1 00 54 */ stw r29, 0x54(r1) +/* 8017F0AC 0017C00C A0 84 00 00 */ lhz r4, 0(r4) +/* 8017F0B0 0017C010 7C 7E 1B 78 */ mr r30, r3 +/* 8017F0B4 0017C014 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017F0B8 0017C018 7C BD 2B 78 */ mr r29, r5 +/* 8017F0BC 0017C01C 7C 04 00 40 */ cmplw r4, r0 +/* 8017F0C0 0017C020 40 82 00 0C */ bne lbl_8017F0CC +/* 8017F0C4 0017C024 38 60 00 01 */ li r3, 1 +/* 8017F0C8 0017C028 48 00 02 28 */ b lbl_8017F2F0 +lbl_8017F0CC: +/* 8017F0CC 0017C02C B0 81 00 08 */ sth r4, 8(r1) +/* 8017F0D0 0017C030 7F A3 EB 78 */ mr r3, r29 +/* 8017F0D4 0017C034 38 81 00 08 */ addi r4, r1, 8 +/* 8017F0D8 0017C038 4B EC D4 CD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017F0DC 0017C03C 7C 64 1B 78 */ mr r4, r3 +/* 8017F0E0 0017C040 38 61 00 0C */ addi r3, r1, 0xc +/* 8017F0E4 0017C044 4B F3 0B AD */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8017F0E8 0017C048 83 E3 00 04 */ lwz r31, 4(r3) +/* 8017F0EC 0017C04C 28 1F 00 00 */ cmplwi r31, 0 +/* 8017F0F0 0017C050 41 82 00 1C */ beq lbl_8017F10C +/* 8017F0F4 0017C054 88 1F 00 E7 */ lbz r0, 0xe7(r31) +/* 8017F0F8 0017C058 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 8017F0FC 0017C05C 41 82 00 10 */ beq lbl_8017F10C +/* 8017F100 0017C060 88 1F 00 30 */ lbz r0, 0x30(r31) +/* 8017F104 0017C064 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8017F108 0017C068 40 82 00 0C */ bne lbl_8017F114 +lbl_8017F10C: +/* 8017F10C 0017C06C 38 60 00 01 */ li r3, 1 +/* 8017F110 0017C070 48 00 01 E0 */ b lbl_8017F2F0 +lbl_8017F114: +/* 8017F114 0017C074 C0 3E 07 40 */ lfs f1, 0x740(r30) +/* 8017F118 0017C078 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017F11C 0017C07C FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 8017F120 0017C080 41 82 00 0C */ beq lbl_8017F12C +/* 8017F124 0017C084 38 60 00 02 */ li r3, 2 +/* 8017F128 0017C088 48 00 01 C8 */ b lbl_8017F2F0 +lbl_8017F12C: +/* 8017F12C 0017C08C 7F E4 FB 78 */ mr r4, r31 +/* 8017F130 0017C090 7F A5 EB 78 */ mr r5, r29 +/* 8017F134 0017C094 81 9F 00 00 */ lwz r12, 0(r31) +/* 8017F138 0017C098 38 61 00 20 */ addi r3, r1, 0x20 +/* 8017F13C 0017C09C 81 8C 00 48 */ lwz r12, 0x48(r12) +/* 8017F140 0017C0A0 7D 89 03 A6 */ mtctr r12 +/* 8017F144 0017C0A4 4E 80 04 21 */ bctrl +/* 8017F148 0017C0A8 C3 E1 00 20 */ lfs f31, 0x20(r1) +/* 8017F14C 0017C0AC 7F C4 F3 78 */ mr r4, r30 +/* 8017F150 0017C0B0 C3 C1 00 24 */ lfs f30, 0x24(r1) +/* 8017F154 0017C0B4 38 61 00 14 */ addi r3, r1, 0x14 +/* 8017F158 0017C0B8 C3 A1 00 28 */ lfs f29, 0x28(r1) +/* 8017F15C 0017C0BC 48 10 5C 21 */ bl GetEyePosition__7CPlayerCFv +/* 8017F160 0017C0C0 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 8017F164 0017C0C4 38 61 00 2C */ addi r3, r1, 0x2c +/* 8017F168 0017C0C8 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 8017F16C 0017C0CC EC 7D 08 28 */ fsubs f3, f29, f1 +/* 8017F170 0017C0D0 C0 21 00 18 */ lfs f1, 0x18(r1) +/* 8017F174 0017C0D4 EC 5F 00 28 */ fsubs f2, f31, f0 +/* 8017F178 0017C0D8 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017F17C 0017C0DC EC 3E 08 28 */ fsubs f1, f30, f1 +/* 8017F180 0017C0E0 D0 61 00 34 */ stfs f3, 0x34(r1) +/* 8017F184 0017C0E4 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 8017F188 0017C0E8 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 8017F18C 0017C0EC D0 61 00 40 */ stfs f3, 0x40(r1) +/* 8017F190 0017C0F0 D0 41 00 2C */ stfs f2, 0x2c(r1) +/* 8017F194 0017C0F4 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 8017F198 0017C0F8 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 8017F19C 0017C0FC 48 19 55 5D */ bl CanBeNormalized__9CVector3fCFv +/* 8017F1A0 0017C100 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017F1A4 0017C104 41 82 00 A8 */ beq lbl_8017F24C +/* 8017F1A8 0017C108 38 61 00 2C */ addi r3, r1, 0x2c +/* 8017F1AC 0017C10C 48 19 57 0D */ bl Magnitude__9CVector3fCFv +/* 8017F1B0 0017C110 C0 02 A2 4C */ lfs f0, lbl_805ABF6C@sda21(r2) +/* 8017F1B4 0017C114 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017F1B8 0017C118 40 81 00 94 */ ble lbl_8017F24C +/* 8017F1BC 0017C11C C0 01 00 40 */ lfs f0, 0x40(r1) +/* 8017F1C0 0017C120 38 61 00 38 */ addi r3, r1, 0x38 +/* 8017F1C4 0017C124 FF E0 02 10 */ fabs f31, f0 +/* 8017F1C8 0017C128 48 19 56 F1 */ bl Magnitude__9CVector3fCFv +/* 8017F1CC 0017C12C FC 40 F8 18 */ frsp f2, f31 +/* 8017F1D0 0017C130 C8 02 A2 40 */ lfd f0, lbl_805ABF60@sda21(r2) +/* 8017F1D4 0017C134 EC 22 08 24 */ fdivs f1, f2, f1 +/* 8017F1D8 0017C138 FC 40 0A 10 */ fabs f2, f1 +/* 8017F1DC 0017C13C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8017F1E0 0017C140 40 81 00 14 */ ble lbl_8017F1F4 +/* 8017F1E4 0017C144 C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) +/* 8017F1E8 0017C148 C0 42 A2 4C */ lfs f2, lbl_805ABF6C@sda21(r2) +/* 8017F1EC 0017C14C FC 01 00 AE */ fsel f0, f1, f2, f0 +/* 8017F1F0 0017C150 EC 22 00 32 */ fmuls f1, f2, f0 +lbl_8017F1F4: +/* 8017F1F4 0017C154 48 21 5A 59 */ bl asin +/* 8017F1F8 0017C158 C0 41 00 40 */ lfs f2, 0x40(r1) +/* 8017F1FC 0017C15C FC 20 08 18 */ frsp f1, f1 +/* 8017F200 0017C160 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017F204 0017C164 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8017F208 0017C168 4C 41 13 82 */ cror 2, 1, 2 +/* 8017F20C 0017C16C 40 82 00 18 */ bne lbl_8017F224 +/* 8017F210 0017C170 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017F214 0017C174 C0 03 01 88 */ lfs f0, 0x188(r3) +/* 8017F218 0017C178 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017F21C 0017C17C 4C 41 13 82 */ cror 2, 1, 2 +/* 8017F220 0017C180 41 82 00 24 */ beq lbl_8017F244 +lbl_8017F224: +/* 8017F224 0017C184 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017F228 0017C188 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8017F22C 0017C18C 40 80 00 28 */ bge lbl_8017F254 +/* 8017F230 0017C190 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017F234 0017C194 C0 03 01 8C */ lfs f0, 0x18c(r3) +/* 8017F238 0017C198 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017F23C 0017C19C 4C 41 13 82 */ cror 2, 1, 2 +/* 8017F240 0017C1A0 40 82 00 14 */ bne lbl_8017F254 +lbl_8017F244: +/* 8017F244 0017C1A4 38 60 00 04 */ li r3, 4 +/* 8017F248 0017C1A8 48 00 00 A8 */ b lbl_8017F2F0 +lbl_8017F24C: +/* 8017F24C 0017C1AC 38 60 00 04 */ li r3, 4 +/* 8017F250 0017C1B0 48 00 00 A0 */ b lbl_8017F2F0 +lbl_8017F254: +/* 8017F254 0017C1B4 80 7D 08 B8 */ lwz r3, 0x8b8(r29) +/* 8017F258 0017C1B8 A0 1F 00 E6 */ lhz r0, 0xe6(r31) +/* 8017F25C 0017C1BC 80 83 00 00 */ lwz r4, 0(r3) +/* 8017F260 0017C1C0 54 03 DF 3E */ rlwinm r3, r0, 0x1b, 0x1c, 0x1f +/* 8017F264 0017C1C4 80 04 00 14 */ lwz r0, 0x14(r4) +/* 8017F268 0017C1C8 2C 00 00 00 */ cmpwi r0, 0 +/* 8017F26C 0017C1CC 40 82 00 14 */ bne lbl_8017F280 +/* 8017F270 0017C1D0 54 60 07 FF */ clrlwi. r0, r3, 0x1f +/* 8017F274 0017C1D4 40 82 00 0C */ bne lbl_8017F280 +/* 8017F278 0017C1D8 38 60 00 02 */ li r3, 2 +/* 8017F27C 0017C1DC 48 00 00 74 */ b lbl_8017F2F0 +lbl_8017F280: +/* 8017F280 0017C1E0 80 84 00 14 */ lwz r4, 0x14(r4) +/* 8017F284 0017C1E4 2C 04 00 02 */ cmpwi r4, 2 +/* 8017F288 0017C1E8 40 82 00 14 */ bne lbl_8017F29C +/* 8017F28C 0017C1EC 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e +/* 8017F290 0017C1F0 40 82 00 0C */ bne lbl_8017F29C +/* 8017F294 0017C1F4 38 60 00 02 */ li r3, 2 +/* 8017F298 0017C1F8 48 00 00 58 */ b lbl_8017F2F0 +lbl_8017F29C: +/* 8017F29C 0017C1FC 2C 04 00 03 */ cmpwi r4, 3 +/* 8017F2A0 0017C200 40 82 00 14 */ bne lbl_8017F2B4 +/* 8017F2A4 0017C204 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d +/* 8017F2A8 0017C208 40 82 00 0C */ bne lbl_8017F2B4 +/* 8017F2AC 0017C20C 38 60 00 02 */ li r3, 2 +/* 8017F2B0 0017C210 48 00 00 40 */ b lbl_8017F2F0 +lbl_8017F2B4: +/* 8017F2B4 0017C214 2C 04 00 01 */ cmpwi r4, 1 +/* 8017F2B8 0017C218 40 82 00 14 */ bne lbl_8017F2CC +/* 8017F2BC 0017C21C 54 60 07 39 */ rlwinm. r0, r3, 0, 0x1c, 0x1c +/* 8017F2C0 0017C220 40 82 00 0C */ bne lbl_8017F2CC +/* 8017F2C4 0017C224 38 60 00 02 */ li r3, 2 +/* 8017F2C8 0017C228 48 00 00 28 */ b lbl_8017F2F0 +lbl_8017F2CC: +/* 8017F2CC 0017C22C 2C 04 00 02 */ cmpwi r4, 2 +/* 8017F2D0 0017C230 40 82 00 1C */ bne lbl_8017F2EC +/* 8017F2D4 0017C234 80 7F 00 04 */ lwz r3, 4(r31) +/* 8017F2D8 0017C238 80 1E 00 04 */ lwz r0, 4(r30) +/* 8017F2DC 0017C23C 7C 03 00 00 */ cmpw r3, r0 +/* 8017F2E0 0017C240 41 82 00 0C */ beq lbl_8017F2EC +/* 8017F2E4 0017C244 38 60 00 06 */ li r3, 6 +/* 8017F2E8 0017C248 48 00 00 08 */ b lbl_8017F2F0 +lbl_8017F2EC: +/* 8017F2EC 0017C24C 38 60 00 00 */ li r3, 0 +lbl_8017F2F0: +/* 8017F2F0 0017C250 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 +/* 8017F2F4 0017C254 CB E1 00 80 */ lfd f31, 0x80(r1) +/* 8017F2F8 0017C258 E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0 +/* 8017F2FC 0017C25C CB C1 00 70 */ lfd f30, 0x70(r1) +/* 8017F300 0017C260 E3 A1 00 68 */ psq_l f29, 104(r1), 0, qr0 +/* 8017F304 0017C264 CB A1 00 60 */ lfd f29, 0x60(r1) +/* 8017F308 0017C268 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8017F30C 0017C26C 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 8017F310 0017C270 80 01 00 94 */ lwz r0, 0x94(r1) +/* 8017F314 0017C274 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 8017F318 0017C278 7C 08 03 A6 */ mtlr r0 +/* 8017F31C 0017C27C 38 21 00 90 */ addi r1, r1, 0x90 +/* 8017F320 0017C280 4E 80 00 20 */ blr + +.global ValidateCurrentOrbitTargetId__7CPlayerFR13CStateManager +ValidateCurrentOrbitTargetId__7CPlayerFR13CStateManager: +/* 8017F324 0017C284 94 21 F6 B0 */ stwu r1, -0x950(r1) +/* 8017F328 0017C288 7C 08 02 A6 */ mflr r0 +/* 8017F32C 0017C28C 90 01 09 54 */ stw r0, 0x954(r1) +/* 8017F330 0017C290 DB E1 09 40 */ stfd f31, 0x940(r1) +/* 8017F334 0017C294 F3 E1 09 48 */ psq_st f31, -1720(r1), 0, qr0 +/* 8017F338 0017C298 DB C1 09 30 */ stfd f30, 0x930(r1) +/* 8017F33C 0017C29C F3 C1 09 38 */ psq_st f30, -1736(r1), 0, qr0 +/* 8017F340 0017C2A0 DB A1 09 20 */ stfd f29, 0x920(r1) +/* 8017F344 0017C2A4 F3 A1 09 28 */ psq_st f29, -1752(r1), 0, qr0 +/* 8017F348 0017C2A8 BF 41 09 08 */ stmw r26, 0x908(r1) +/* 8017F34C 0017C2AC 7C 7A 1B 78 */ mr r26, r3 +/* 8017F350 0017C2B0 7C 9B 23 78 */ mr r27, r4 +/* 8017F354 0017C2B4 A0 03 03 10 */ lhz r0, 0x310(r3) +/* 8017F358 0017C2B8 7F 63 DB 78 */ mr r3, r27 +/* 8017F35C 0017C2BC 38 81 00 24 */ addi r4, r1, 0x24 +/* 8017F360 0017C2C0 B0 01 00 20 */ sth r0, 0x20(r1) +/* 8017F364 0017C2C4 B0 01 00 24 */ sth r0, 0x24(r1) +/* 8017F368 0017C2C8 4B EC D2 3D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017F36C 0017C2CC 7C 64 1B 78 */ mr r4, r3 +/* 8017F370 0017C2D0 38 61 00 44 */ addi r3, r1, 0x44 +/* 8017F374 0017C2D4 4B F3 09 1D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8017F378 0017C2D8 83 C3 00 04 */ lwz r30, 4(r3) +/* 8017F37C 0017C2DC 28 1E 00 00 */ cmplwi r30, 0 +/* 8017F380 0017C2E0 41 82 00 1C */ beq lbl_8017F39C +/* 8017F384 0017C2E4 88 1E 00 E7 */ lbz r0, 0xe7(r30) +/* 8017F388 0017C2E8 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 8017F38C 0017C2EC 41 82 00 10 */ beq lbl_8017F39C +/* 8017F390 0017C2F0 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 8017F394 0017C2F4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8017F398 0017C2F8 40 82 00 0C */ bne lbl_8017F3A4 +lbl_8017F39C: +/* 8017F39C 0017C2FC 38 60 00 01 */ li r3, 1 +/* 8017F3A0 0017C300 48 00 05 44 */ b lbl_8017F8E4 +lbl_8017F3A4: +/* 8017F3A4 0017C304 80 BE 00 68 */ lwz r5, 0x68(r30) +/* 8017F3A8 0017C308 38 00 02 00 */ li r0, 0x200 +/* 8017F3AC 0017C30C 80 DE 00 6C */ lwz r6, 0x6c(r30) +/* 8017F3B0 0017C310 38 80 00 00 */ li r4, 0 +/* 8017F3B4 0017C314 7C A0 00 38 */ and r0, r5, r0 +/* 8017F3B8 0017C318 7C C3 20 38 */ and r3, r6, r4 +/* 8017F3BC 0017C31C 7C 63 22 78 */ xor r3, r3, r4 +/* 8017F3C0 0017C320 7C 00 22 78 */ xor r0, r0, r4 +/* 8017F3C4 0017C324 7C 60 03 79 */ or. r0, r3, r0 +/* 8017F3C8 0017C328 41 82 00 08 */ beq lbl_8017F3D0 +/* 8017F3CC 0017C32C 38 80 00 01 */ li r4, 1 +lbl_8017F3D0: +/* 8017F3D0 0017C330 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 8017F3D4 0017C334 40 82 00 48 */ bne lbl_8017F41C +/* 8017F3D8 0017C338 38 80 00 00 */ li r4, 0 +/* 8017F3DC 0017C33C 38 00 00 80 */ li r0, 0x80 +/* 8017F3E0 0017C340 7C C3 20 38 */ and r3, r6, r4 +/* 8017F3E4 0017C344 7C A0 00 38 */ and r0, r5, r0 +/* 8017F3E8 0017C348 7C 63 22 78 */ xor r3, r3, r4 +/* 8017F3EC 0017C34C 7C 00 22 78 */ xor r0, r0, r4 +/* 8017F3F0 0017C350 7C 60 03 79 */ or. r0, r3, r0 +/* 8017F3F4 0017C354 40 82 00 0C */ bne lbl_8017F400 +/* 8017F3F8 0017C358 38 60 00 03 */ li r3, 3 +/* 8017F3FC 0017C35C 48 00 04 E8 */ b lbl_8017F8E4 +lbl_8017F400: +/* 8017F400 0017C360 80 7B 08 B8 */ lwz r3, 0x8b8(r27) +/* 8017F404 0017C364 80 63 00 00 */ lwz r3, 0(r3) +/* 8017F408 0017C368 80 03 00 14 */ lwz r0, 0x14(r3) +/* 8017F40C 0017C36C 2C 00 00 02 */ cmpwi r0, 2 +/* 8017F410 0017C370 41 82 00 0C */ beq lbl_8017F41C +/* 8017F414 0017C374 38 60 00 03 */ li r3, 3 +/* 8017F418 0017C378 48 00 04 CC */ b lbl_8017F8E4 +lbl_8017F41C: +/* 8017F41C 0017C37C A0 1A 03 10 */ lhz r0, 0x310(r26) +/* 8017F420 0017C380 7F 43 D3 78 */ mr r3, r26 +/* 8017F424 0017C384 7F 65 DB 78 */ mr r5, r27 +/* 8017F428 0017C388 38 81 00 1C */ addi r4, r1, 0x1c +/* 8017F42C 0017C38C B0 01 00 18 */ sth r0, 0x18(r1) +/* 8017F430 0017C390 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8017F434 0017C394 4B FF FC 49 */ bl ValidateOrbitTargetId__7CPlayerCF9TUniqueIdR13CStateManager +/* 8017F438 0017C398 2C 03 00 00 */ cmpwi r3, 0 +/* 8017F43C 0017C39C 41 82 00 08 */ beq lbl_8017F444 +/* 8017F440 0017C3A0 48 00 04 A4 */ b lbl_8017F8E4 +lbl_8017F444: +/* 8017F444 0017C3A4 80 7B 08 B8 */ lwz r3, 0x8b8(r27) +/* 8017F448 0017C3A8 80 63 00 00 */ lwz r3, 0(r3) +/* 8017F44C 0017C3AC 80 03 00 14 */ lwz r0, 0x14(r3) +/* 8017F450 0017C3B0 2C 00 00 02 */ cmpwi r0, 2 +/* 8017F454 0017C3B4 40 82 00 1C */ bne lbl_8017F470 +/* 8017F458 0017C3B8 80 7E 00 04 */ lwz r3, 4(r30) +/* 8017F45C 0017C3BC 80 1A 00 04 */ lwz r0, 4(r26) +/* 8017F460 0017C3C0 7C 03 00 00 */ cmpw r3, r0 +/* 8017F464 0017C3C4 41 82 00 0C */ beq lbl_8017F470 +/* 8017F468 0017C3C8 38 60 00 06 */ li r3, 6 +/* 8017F46C 0017C3CC 48 00 04 78 */ b lbl_8017F8E4 +lbl_8017F470: +/* 8017F470 0017C3D0 A0 1A 03 10 */ lhz r0, 0x310(r26) +/* 8017F474 0017C3D4 7F 63 DB 78 */ mr r3, r27 +/* 8017F478 0017C3D8 38 81 00 14 */ addi r4, r1, 0x14 +/* 8017F47C 0017C3DC B0 01 00 10 */ sth r0, 0x10(r1) +/* 8017F480 0017C3E0 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8017F484 0017C3E4 4B EC D1 21 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017F488 0017C3E8 7C 64 1B 78 */ mr r4, r3 +/* 8017F48C 0017C3EC 38 61 00 3C */ addi r3, r1, 0x3c +/* 8017F490 0017C3F0 4B F2 A6 39 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" +/* 8017F494 0017C3F4 80 9B 08 B8 */ lwz r4, 0x8b8(r27) +/* 8017F498 0017C3F8 83 A3 00 04 */ lwz r29, 4(r3) +/* 8017F49C 0017C3FC 80 64 00 00 */ lwz r3, 0(r4) +/* 8017F4A0 0017C400 80 03 00 14 */ lwz r0, 0x14(r3) +/* 8017F4A4 0017C404 2C 00 00 02 */ cmpwi r0, 2 +/* 8017F4A8 0017C408 40 82 00 14 */ bne lbl_8017F4BC +/* 8017F4AC 0017C40C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017F4B0 0017C410 88 03 02 1C */ lbz r0, 0x21c(r3) +/* 8017F4B4 0017C414 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8017F4B8 0017C418 40 82 00 1C */ bne lbl_8017F4D4 +lbl_8017F4BC: +/* 8017F4BC 0017C41C 28 1D 00 00 */ cmplwi r29, 0 +/* 8017F4C0 0017C420 40 82 00 14 */ bne lbl_8017F4D4 +/* 8017F4C4 0017C424 80 7E 00 04 */ lwz r3, 4(r30) +/* 8017F4C8 0017C428 80 1A 00 04 */ lwz r0, 4(r26) +/* 8017F4CC 0017C42C 7C 03 00 00 */ cmpw r3, r0 +/* 8017F4D0 0017C430 41 82 02 FC */ beq lbl_8017F7CC +lbl_8017F4D4: +/* 8017F4D4 0017C434 7F 44 D3 78 */ mr r4, r26 +/* 8017F4D8 0017C438 38 61 00 94 */ addi r3, r1, 0x94 +/* 8017F4DC 0017C43C 48 10 58 A1 */ bl GetEyePosition__7CPlayerCFv +/* 8017F4E0 0017C440 C0 41 00 94 */ lfs f2, 0x94(r1) +/* 8017F4E4 0017C444 38 C0 00 00 */ li r6, 0 +/* 8017F4E8 0017C448 C0 21 00 98 */ lfs f1, 0x98(r1) +/* 8017F4EC 0017C44C 7F C4 F3 78 */ mr r4, r30 +/* 8017F4F0 0017C450 C0 01 00 9C */ lfs f0, 0x9c(r1) +/* 8017F4F4 0017C454 7F 65 DB 78 */ mr r5, r27 +/* 8017F4F8 0017C458 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017F4FC 0017C45C 38 61 00 88 */ addi r3, r1, 0x88 +/* 8017F500 0017C460 D0 41 00 B8 */ stfs f2, 0xb8(r1) +/* 8017F504 0017C464 D0 21 00 BC */ stfs f1, 0xbc(r1) +/* 8017F508 0017C468 D0 01 00 C0 */ stfs f0, 0xc0(r1) +/* 8017F50C 0017C46C 90 C1 00 F8 */ stw r6, 0xf8(r1) +/* 8017F510 0017C470 B0 01 00 28 */ sth r0, 0x28(r1) +/* 8017F514 0017C474 81 9E 00 00 */ lwz r12, 0(r30) +/* 8017F518 0017C478 81 8C 00 48 */ lwz r12, 0x48(r12) +/* 8017F51C 0017C47C 7D 89 03 A6 */ mtctr r12 +/* 8017F520 0017C480 4E 80 04 21 */ bctrl +/* 8017F524 0017C484 C0 21 00 8C */ lfs f1, 0x8c(r1) +/* 8017F528 0017C488 38 61 00 AC */ addi r3, r1, 0xac +/* 8017F52C 0017C48C C0 01 00 BC */ lfs f0, 0xbc(r1) +/* 8017F530 0017C490 C0 61 00 90 */ lfs f3, 0x90(r1) +/* 8017F534 0017C494 C0 41 00 C0 */ lfs f2, 0xc0(r1) +/* 8017F538 0017C498 EC 81 00 28 */ fsubs f4, f1, f0 +/* 8017F53C 0017C49C C0 21 00 88 */ lfs f1, 0x88(r1) +/* 8017F540 0017C4A0 C0 01 00 B8 */ lfs f0, 0xb8(r1) +/* 8017F544 0017C4A4 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8017F548 0017C4A8 D0 81 00 B0 */ stfs f4, 0xb0(r1) +/* 8017F54C 0017C4AC EC 01 00 28 */ fsubs f0, f1, f0 +/* 8017F550 0017C4B0 D0 41 00 B4 */ stfs f2, 0xb4(r1) +/* 8017F554 0017C4B4 D0 01 00 AC */ stfs f0, 0xac(r1) +/* 8017F558 0017C4B8 48 19 51 A1 */ bl CanBeNormalized__9CVector3fCFv +/* 8017F55C 0017C4BC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017F560 0017C4C0 41 82 02 18 */ beq lbl_8017F778 +/* 8017F564 0017C4C4 38 61 00 AC */ addi r3, r1, 0xac +/* 8017F568 0017C4C8 48 19 53 51 */ bl Magnitude__9CVector3fCFv +/* 8017F56C 0017C4CC FF E0 08 90 */ fmr f31, f1 +/* 8017F570 0017C4D0 38 61 00 7C */ addi r3, r1, 0x7c +/* 8017F574 0017C4D4 38 81 00 AC */ addi r4, r1, 0xac +/* 8017F578 0017C4D8 48 19 52 D9 */ bl AsNormalized__9CVector3fCFv +/* 8017F57C 0017C4DC FC 20 F8 90 */ fmr f1, f31 +/* 8017F580 0017C4E0 3C 60 80 47 */ lis r3, lbl_8046C8D8@ha +/* 8017F584 0017C4E4 38 E3 C8 D8 */ addi r7, r3, lbl_8046C8D8@l +/* 8017F588 0017C4E8 7F C8 F3 78 */ mr r8, r30 +/* 8017F58C 0017C4EC 7F 63 DB 78 */ mr r3, r27 +/* 8017F590 0017C4F0 38 81 00 F8 */ addi r4, r1, 0xf8 +/* 8017F594 0017C4F4 38 A1 00 B8 */ addi r5, r1, 0xb8 +/* 8017F598 0017C4F8 38 C1 00 7C */ addi r6, r1, 0x7c +/* 8017F59C 0017C4FC 4B EC D1 3D */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" +/* 8017F5A0 0017C500 3B E1 00 FC */ addi r31, r1, 0xfc +/* 8017F5A4 0017C504 7F FC FB 78 */ mr r28, r31 +/* 8017F5A8 0017C508 48 00 00 E0 */ b lbl_8017F688 +lbl_8017F5AC: +/* 8017F5AC 0017C50C A0 1C 00 00 */ lhz r0, 0(r28) +/* 8017F5B0 0017C510 7F 63 DB 78 */ mr r3, r27 +/* 8017F5B4 0017C514 38 81 00 0C */ addi r4, r1, 0xc +/* 8017F5B8 0017C518 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8017F5BC 0017C51C 4B EC CF E9 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017F5C0 0017C520 28 03 00 00 */ cmplwi r3, 0 +/* 8017F5C4 0017C524 41 82 00 C0 */ beq lbl_8017F684 +/* 8017F5C8 0017C528 80 A3 00 04 */ lwz r5, 4(r3) +/* 8017F5CC 0017C52C 80 1B 08 CC */ lwz r0, 0x8cc(r27) +/* 8017F5D0 0017C530 7C 05 00 00 */ cmpw r5, r0 +/* 8017F5D4 0017C534 41 82 00 B0 */ beq lbl_8017F684 +/* 8017F5D8 0017C538 80 9B 08 50 */ lwz r4, 0x850(r27) +/* 8017F5DC 0017C53C 54 A3 18 38 */ slwi r3, r5, 3 +/* 8017F5E0 0017C540 38 03 00 04 */ addi r0, r3, 4 +/* 8017F5E4 0017C544 90 A1 00 2C */ stw r5, 0x2c(r1) +/* 8017F5E8 0017C548 80 64 00 20 */ lwz r3, 0x20(r4) +/* 8017F5EC 0017C54C 90 A1 00 30 */ stw r5, 0x30(r1) +/* 8017F5F0 0017C550 7C 63 00 2E */ lwzx r3, r3, r0 +/* 8017F5F4 0017C554 88 03 00 F0 */ lbz r0, 0xf0(r3) +/* 8017F5F8 0017C558 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8017F5FC 0017C55C 41 82 00 10 */ beq lbl_8017F60C +/* 8017F600 0017C560 80 63 01 2C */ lwz r3, 0x12c(r3) +/* 8017F604 0017C564 80 03 10 DC */ lwz r0, 0x10dc(r3) +/* 8017F608 0017C568 48 00 00 08 */ b lbl_8017F610 +lbl_8017F60C: +/* 8017F60C 0017C56C 38 00 00 00 */ li r0, 0 +lbl_8017F610: +/* 8017F610 0017C570 2C 00 00 00 */ cmpwi r0, 0 +/* 8017F614 0017C574 40 82 00 70 */ bne lbl_8017F684 +/* 8017F618 0017C578 7C 1C F8 40 */ cmplw r28, r31 +/* 8017F61C 0017C57C 41 80 00 54 */ blt lbl_8017F670 +/* 8017F620 0017C580 80 01 00 F8 */ lwz r0, 0xf8(r1) +/* 8017F624 0017C584 54 00 08 3C */ slwi r0, r0, 1 +/* 8017F628 0017C588 7C 1F 02 14 */ add r0, r31, r0 +/* 8017F62C 0017C58C 7C 1C 00 40 */ cmplw r28, r0 +/* 8017F630 0017C590 40 80 00 40 */ bge lbl_8017F670 +/* 8017F634 0017C594 7F 85 E3 78 */ mr r5, r28 +/* 8017F638 0017C598 48 00 00 10 */ b lbl_8017F648 +lbl_8017F63C: +/* 8017F63C 0017C59C A0 05 00 02 */ lhz r0, 2(r5) +/* 8017F640 0017C5A0 B0 05 00 00 */ sth r0, 0(r5) +/* 8017F644 0017C5A4 38 A5 00 02 */ addi r5, r5, 2 +lbl_8017F648: +/* 8017F648 0017C5A8 80 81 00 F8 */ lwz r4, 0xf8(r1) +/* 8017F64C 0017C5AC 54 83 08 3C */ slwi r3, r4, 1 +/* 8017F650 0017C5B0 38 03 FF FE */ addi r0, r3, -2 +/* 8017F654 0017C5B4 7C 1F 02 14 */ add r0, r31, r0 +/* 8017F658 0017C5B8 7C 05 00 40 */ cmplw r5, r0 +/* 8017F65C 0017C5BC 41 80 FF E0 */ blt lbl_8017F63C +/* 8017F660 0017C5C0 38 04 FF FF */ addi r0, r4, -1 +/* 8017F664 0017C5C4 7F 83 E3 78 */ mr r3, r28 +/* 8017F668 0017C5C8 90 01 00 F8 */ stw r0, 0xf8(r1) +/* 8017F66C 0017C5CC 48 00 00 10 */ b lbl_8017F67C +lbl_8017F670: +/* 8017F670 0017C5D0 80 01 00 F8 */ lwz r0, 0xf8(r1) +/* 8017F674 0017C5D4 54 00 08 3C */ slwi r0, r0, 1 +/* 8017F678 0017C5D8 7C 7F 02 14 */ add r3, r31, r0 +lbl_8017F67C: +/* 8017F67C 0017C5DC 7C 7C 1B 78 */ mr r28, r3 +/* 8017F680 0017C5E0 48 00 00 08 */ b lbl_8017F688 +lbl_8017F684: +/* 8017F684 0017C5E4 3B 9C 00 02 */ addi r28, r28, 2 +lbl_8017F688: +/* 8017F688 0017C5E8 80 01 00 F8 */ lwz r0, 0xf8(r1) +/* 8017F68C 0017C5EC 54 00 08 3C */ slwi r0, r0, 1 +/* 8017F690 0017C5F0 7C 1F 02 14 */ add r0, r31, r0 +/* 8017F694 0017C5F4 7C 1C 00 40 */ cmplw r28, r0 +/* 8017F698 0017C5F8 40 82 FF 14 */ bne lbl_8017F5AC +/* 8017F69C 0017C5FC 38 61 00 AC */ addi r3, r1, 0xac +/* 8017F6A0 0017C600 48 19 52 19 */ bl Magnitude__9CVector3fCFv +/* 8017F6A4 0017C604 FF E0 08 90 */ fmr f31, f1 +/* 8017F6A8 0017C608 38 61 00 70 */ addi r3, r1, 0x70 +/* 8017F6AC 0017C60C 38 81 00 AC */ addi r4, r1, 0xac +/* 8017F6B0 0017C610 48 19 51 A1 */ bl AsNormalized__9CVector3fCFv +/* 8017F6B4 0017C614 FC 20 F8 90 */ fmr f1, f31 +/* 8017F6B8 0017C618 3C 60 80 47 */ lis r3, lbl_8046C8C0@ha +/* 8017F6BC 0017C61C 39 03 C8 C0 */ addi r8, r3, lbl_8046C8C0@l +/* 8017F6C0 0017C620 7F 64 DB 78 */ mr r4, r27 +/* 8017F6C4 0017C624 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 8017F6C8 0017C628 38 A1 00 28 */ addi r5, r1, 0x28 +/* 8017F6CC 0017C62C 38 C1 00 B8 */ addi r6, r1, 0xb8 +/* 8017F6D0 0017C630 38 E1 00 70 */ addi r7, r1, 0x70 +/* 8017F6D4 0017C634 39 21 00 F8 */ addi r9, r1, 0xf8 +/* 8017F6D8 0017C638 4B EC D8 ED */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 8017F6DC 0017C63C 88 01 00 E8 */ lbz r0, 0xe8(r1) +/* 8017F6E0 0017C640 28 00 00 00 */ cmplwi r0, 0 +/* 8017F6E4 0017C644 41 82 00 94 */ beq lbl_8017F778 +/* 8017F6E8 0017C648 A0 01 00 28 */ lhz r0, 0x28(r1) +/* 8017F6EC 0017C64C 7F 63 DB 78 */ mr r3, r27 +/* 8017F6F0 0017C650 38 81 00 08 */ addi r4, r1, 8 +/* 8017F6F4 0017C654 B0 01 00 08 */ sth r0, 8(r1) +/* 8017F6F8 0017C658 4B EC CE AD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017F6FC 0017C65C 7C 64 1B 78 */ mr r4, r3 +/* 8017F700 0017C660 38 61 00 34 */ addi r3, r1, 0x34 +/* 8017F704 0017C664 4B F2 A9 ED */ bl "__ct__25TCastToPtr<11CScriptDoor>FP7CEntity" +/* 8017F708 0017C668 80 03 00 04 */ lwz r0, 4(r3) +/* 8017F70C 0017C66C 28 00 00 00 */ cmplwi r0, 0 +/* 8017F710 0017C670 40 82 00 0C */ bne lbl_8017F71C +/* 8017F714 0017C674 28 1D 00 00 */ cmplwi r29, 0 +/* 8017F718 0017C678 41 82 00 60 */ beq lbl_8017F778 +lbl_8017F71C: +/* 8017F71C 0017C67C 80 A1 00 F8 */ lwz r5, 0xf8(r1) +/* 8017F720 0017C680 38 60 00 00 */ li r3, 0 +/* 8017F724 0017C684 2C 05 00 00 */ cmpwi r5, 0 +/* 8017F728 0017C688 40 81 00 40 */ ble lbl_8017F768 +/* 8017F72C 0017C68C 2C 05 00 08 */ cmpwi r5, 8 +/* 8017F730 0017C690 38 85 FF F8 */ addi r4, r5, -8 +/* 8017F734 0017C694 40 81 00 20 */ ble lbl_8017F754 +/* 8017F738 0017C698 38 04 00 07 */ addi r0, r4, 7 +/* 8017F73C 0017C69C 54 00 E8 FE */ srwi r0, r0, 3 +/* 8017F740 0017C6A0 7C 09 03 A6 */ mtctr r0 +/* 8017F744 0017C6A4 2C 04 00 00 */ cmpwi r4, 0 +/* 8017F748 0017C6A8 40 81 00 0C */ ble lbl_8017F754 +lbl_8017F74C: +/* 8017F74C 0017C6AC 38 63 00 08 */ addi r3, r3, 8 +/* 8017F750 0017C6B0 42 00 FF FC */ bdnz lbl_8017F74C +lbl_8017F754: +/* 8017F754 0017C6B4 7C 03 28 50 */ subf r0, r3, r5 +/* 8017F758 0017C6B8 7C 09 03 A6 */ mtctr r0 +/* 8017F75C 0017C6BC 7C 03 28 00 */ cmpw r3, r5 +/* 8017F760 0017C6C0 40 80 00 08 */ bge lbl_8017F768 +lbl_8017F764: +/* 8017F764 0017C6C4 42 00 00 00 */ bdnz lbl_8017F764 +lbl_8017F768: +/* 8017F768 0017C6C8 38 00 00 00 */ li r0, 0 +/* 8017F76C 0017C6CC 38 60 00 06 */ li r3, 6 +/* 8017F770 0017C6D0 90 01 00 F8 */ stw r0, 0xf8(r1) +/* 8017F774 0017C6D4 48 00 01 70 */ b lbl_8017F8E4 +lbl_8017F778: +/* 8017F778 0017C6D8 80 A1 00 F8 */ lwz r5, 0xf8(r1) +/* 8017F77C 0017C6DC 38 60 00 00 */ li r3, 0 +/* 8017F780 0017C6E0 2C 05 00 00 */ cmpwi r5, 0 +/* 8017F784 0017C6E4 40 81 00 40 */ ble lbl_8017F7C4 +/* 8017F788 0017C6E8 2C 05 00 08 */ cmpwi r5, 8 +/* 8017F78C 0017C6EC 38 85 FF F8 */ addi r4, r5, -8 +/* 8017F790 0017C6F0 40 81 00 20 */ ble lbl_8017F7B0 +/* 8017F794 0017C6F4 38 04 00 07 */ addi r0, r4, 7 +/* 8017F798 0017C6F8 54 00 E8 FE */ srwi r0, r0, 3 +/* 8017F79C 0017C6FC 7C 09 03 A6 */ mtctr r0 +/* 8017F7A0 0017C700 2C 04 00 00 */ cmpwi r4, 0 +/* 8017F7A4 0017C704 40 81 00 0C */ ble lbl_8017F7B0 +lbl_8017F7A8: +/* 8017F7A8 0017C708 38 63 00 08 */ addi r3, r3, 8 +/* 8017F7AC 0017C70C 42 00 FF FC */ bdnz lbl_8017F7A8 +lbl_8017F7B0: +/* 8017F7B0 0017C710 7C 03 28 50 */ subf r0, r3, r5 +/* 8017F7B4 0017C714 7C 09 03 A6 */ mtctr r0 +/* 8017F7B8 0017C718 7C 03 28 00 */ cmpw r3, r5 +/* 8017F7BC 0017C71C 40 80 00 08 */ bge lbl_8017F7C4 +lbl_8017F7C0: +/* 8017F7C0 0017C720 42 00 00 00 */ bdnz lbl_8017F7C0 +lbl_8017F7C4: +/* 8017F7C4 0017C724 38 00 00 00 */ li r0, 0 +/* 8017F7C8 0017C728 90 01 00 F8 */ stw r0, 0xf8(r1) +lbl_8017F7CC: +/* 8017F7CC 0017C72C 7F C4 F3 78 */ mr r4, r30 +/* 8017F7D0 0017C730 7F 65 DB 78 */ mr r5, r27 +/* 8017F7D4 0017C734 81 9E 00 00 */ lwz r12, 0(r30) +/* 8017F7D8 0017C738 38 61 00 64 */ addi r3, r1, 0x64 +/* 8017F7DC 0017C73C 81 8C 00 48 */ lwz r12, 0x48(r12) +/* 8017F7E0 0017C740 7D 89 03 A6 */ mtctr r12 +/* 8017F7E4 0017C744 4E 80 04 21 */ bctrl +/* 8017F7E8 0017C748 C3 A1 00 64 */ lfs f29, 0x64(r1) +/* 8017F7EC 0017C74C 7F 44 D3 78 */ mr r4, r26 +/* 8017F7F0 0017C750 C3 C1 00 68 */ lfs f30, 0x68(r1) +/* 8017F7F4 0017C754 38 61 00 58 */ addi r3, r1, 0x58 +/* 8017F7F8 0017C758 C3 E1 00 6C */ lfs f31, 0x6c(r1) +/* 8017F7FC 0017C75C 48 10 55 81 */ bl GetEyePosition__7CPlayerCFv +/* 8017F800 0017C760 C0 01 00 60 */ lfs f0, 0x60(r1) +/* 8017F804 0017C764 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 8017F808 0017C768 C0 61 00 58 */ lfs f3, 0x58(r1) +/* 8017F80C 0017C76C EC 3F 00 28 */ fsubs f1, f31, f0 +/* 8017F810 0017C770 C0 41 00 5C */ lfs f2, 0x5c(r1) +/* 8017F814 0017C774 EC 7D 18 28 */ fsubs f3, f29, f3 +/* 8017F818 0017C778 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017F81C 0017C77C EC 5E 10 28 */ fsubs f2, f30, f2 +/* 8017F820 0017C780 D0 21 00 A8 */ stfs f1, 0xa8(r1) +/* 8017F824 0017C784 D0 61 00 A0 */ stfs f3, 0xa0(r1) +/* 8017F828 0017C788 D0 41 00 A4 */ stfs f2, 0xa4(r1) +/* 8017F82C 0017C78C D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 8017F830 0017C790 48 19 4E C9 */ bl CanBeNormalized__9CVector3fCFv +/* 8017F834 0017C794 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017F838 0017C798 41 82 00 A0 */ beq lbl_8017F8D8 +/* 8017F83C 0017C79C C3 BA 00 58 */ lfs f29, 0x58(r26) +/* 8017F840 0017C7A0 38 61 00 4C */ addi r3, r1, 0x4c +/* 8017F844 0017C7A4 C3 DA 00 48 */ lfs f30, 0x48(r26) +/* 8017F848 0017C7A8 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 8017F84C 0017C7AC C3 FA 00 38 */ lfs f31, 0x38(r26) +/* 8017F850 0017C7B0 48 19 50 01 */ bl AsNormalized__9CVector3fCFv +/* 8017F854 0017C7B4 C0 01 00 50 */ lfs f0, 0x50(r1) +/* 8017F858 0017C7B8 C0 41 00 4C */ lfs f2, 0x4c(r1) +/* 8017F85C 0017C7BC EC 20 07 B2 */ fmuls f1, f0, f30 +/* 8017F860 0017C7C0 C0 61 00 54 */ lfs f3, 0x54(r1) +/* 8017F864 0017C7C4 C8 02 A2 40 */ lfd f0, lbl_805ABF60@sda21(r2) +/* 8017F868 0017C7C8 EC 22 0F FA */ fmadds f1, f2, f31, f1 +/* 8017F86C 0017C7CC EC 23 0F 7A */ fmadds f1, f3, f29, f1 +/* 8017F870 0017C7D0 FC 40 0A 10 */ fabs f2, f1 +/* 8017F874 0017C7D4 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8017F878 0017C7D8 40 81 00 14 */ ble lbl_8017F88C +/* 8017F87C 0017C7DC C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) +/* 8017F880 0017C7E0 C0 42 A2 4C */ lfs f2, lbl_805ABF6C@sda21(r2) +/* 8017F884 0017C7E4 FC 01 00 AE */ fsel f0, f1, f2, f0 +/* 8017F888 0017C7E8 EC 22 00 32 */ fmuls f1, f2, f0 +lbl_8017F88C: +/* 8017F88C 0017C7EC 48 21 53 A1 */ bl acos +/* 8017F890 0017C7F0 88 1A 03 74 */ lbz r0, 0x374(r26) +/* 8017F894 0017C7F4 FC 20 08 18 */ frsp f1, f1 +/* 8017F898 0017C7F8 28 00 00 00 */ cmplwi r0, 0 +/* 8017F89C 0017C7FC 41 82 00 20 */ beq lbl_8017F8BC +/* 8017F8A0 0017C800 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8017F8A4 0017C804 C0 03 01 90 */ lfs f0, 0x190(r3) +/* 8017F8A8 0017C808 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017F8AC 0017C80C 4C 41 13 82 */ cror 2, 1, 2 +/* 8017F8B0 0017C810 40 82 00 30 */ bne lbl_8017F8E0 +/* 8017F8B4 0017C814 38 60 00 05 */ li r3, 5 +/* 8017F8B8 0017C818 48 00 00 2C */ b lbl_8017F8E4 +lbl_8017F8BC: +/* 8017F8BC 0017C81C C0 02 A2 60 */ lfs f0, lbl_805ABF80@sda21(r2) +/* 8017F8C0 0017C820 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017F8C4 0017C824 4C 40 13 82 */ cror 2, 0, 2 +/* 8017F8C8 0017C828 40 82 00 18 */ bne lbl_8017F8E0 +/* 8017F8CC 0017C82C 38 00 00 01 */ li r0, 1 +/* 8017F8D0 0017C830 98 1A 03 74 */ stb r0, 0x374(r26) +/* 8017F8D4 0017C834 48 00 00 0C */ b lbl_8017F8E0 +lbl_8017F8D8: +/* 8017F8D8 0017C838 38 60 00 05 */ li r3, 5 +/* 8017F8DC 0017C83C 48 00 00 08 */ b lbl_8017F8E4 +lbl_8017F8E0: +/* 8017F8E0 0017C840 38 60 00 00 */ li r3, 0 +lbl_8017F8E4: +/* 8017F8E4 0017C844 E3 E1 09 48 */ psq_l f31, -1720(r1), 0, qr0 +/* 8017F8E8 0017C848 CB E1 09 40 */ lfd f31, 0x940(r1) +/* 8017F8EC 0017C84C E3 C1 09 38 */ psq_l f30, -1736(r1), 0, qr0 +/* 8017F8F0 0017C850 CB C1 09 30 */ lfd f30, 0x930(r1) +/* 8017F8F4 0017C854 E3 A1 09 28 */ psq_l f29, -1752(r1), 0, qr0 +/* 8017F8F8 0017C858 CB A1 09 20 */ lfd f29, 0x920(r1) +/* 8017F8FC 0017C85C BB 41 09 08 */ lmw r26, 0x908(r1) +/* 8017F900 0017C860 80 01 09 54 */ lwz r0, 0x954(r1) +/* 8017F904 0017C864 7C 08 03 A6 */ mtlr r0 +/* 8017F908 0017C868 38 21 09 50 */ addi r1, r1, 0x950 +/* 8017F90C 0017C86C 4E 80 00 20 */ blr + +.global ValidateOrbitTargetIdAndPointer__7CPlayerCF9TUniqueIdR13CStateManager +ValidateOrbitTargetIdAndPointer__7CPlayerCF9TUniqueIdR13CStateManager: +/* 8017F910 0017C870 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8017F914 0017C874 7C 08 02 A6 */ mflr r0 +/* 8017F918 0017C878 90 01 00 24 */ stw r0, 0x24(r1) +/* 8017F91C 0017C87C A0 64 00 00 */ lhz r3, 0(r4) +/* 8017F920 0017C880 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017F924 0017C884 7C 03 00 40 */ cmplw r3, r0 +/* 8017F928 0017C888 40 82 00 0C */ bne lbl_8017F934 +/* 8017F92C 0017C88C 38 60 00 00 */ li r3, 0 +/* 8017F930 0017C890 48 00 00 30 */ b lbl_8017F960 +lbl_8017F934: +/* 8017F934 0017C894 B0 61 00 08 */ sth r3, 8(r1) +/* 8017F938 0017C898 7C A3 2B 78 */ mr r3, r5 +/* 8017F93C 0017C89C 38 81 00 08 */ addi r4, r1, 8 +/* 8017F940 0017C8A0 4B EC CC 65 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8017F944 0017C8A4 7C 64 1B 78 */ mr r4, r3 +/* 8017F948 0017C8A8 38 61 00 0C */ addi r3, r1, 0xc +/* 8017F94C 0017C8AC 4B F3 03 45 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8017F950 0017C8B0 80 63 00 04 */ lwz r3, 4(r3) +/* 8017F954 0017C8B4 7C 03 00 D0 */ neg r0, r3 +/* 8017F958 0017C8B8 7C 00 1B 78 */ or r0, r0, r3 +/* 8017F95C 0017C8BC 54 03 0F FE */ srwi r3, r0, 0x1f +lbl_8017F960: +/* 8017F960 0017C8C0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8017F964 0017C8C4 7C 08 03 A6 */ mtlr r0 +/* 8017F968 0017C8C8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8017F96C 0017C8CC 4E 80 00 20 */ blr + +.global BuildNearListBox__FbRC12CTransform4ffff +BuildNearListBox__FbRC12CTransform4ffff: +/* 8017F970 0017C8D0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8017F974 0017C8D4 7C 08 02 A6 */ mflr r0 +/* 8017F978 0017C8D8 FC 00 08 50 */ fneg f0, f1 +/* 8017F97C 0017C8DC 90 01 00 34 */ stw r0, 0x34(r1) +/* 8017F980 0017C8E0 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 8017F984 0017C8E4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8017F988 0017C8E8 7C 7F 1B 78 */ mr r31, r3 +/* 8017F98C 0017C8EC D0 01 00 08 */ stfs f0, 8(r1) +/* 8017F990 0017C8F0 41 82 00 0C */ beq lbl_8017F99C +/* 8017F994 0017C8F4 C0 82 A2 30 */ lfs f4, lbl_805ABF50@sda21(r2) +/* 8017F998 0017C8F8 48 00 00 08 */ b lbl_8017F9A0 +lbl_8017F99C: +/* 8017F99C 0017C8FC FC 80 18 50 */ fneg f4, f3 +lbl_8017F9A0: +/* 8017F9A0 0017C900 FC 00 10 50 */ fneg f0, f2 +/* 8017F9A4 0017C904 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 8017F9A8 0017C908 7F E3 FB 78 */ mr r3, r31 +/* 8017F9AC 0017C90C 38 81 00 08 */ addi r4, r1, 8 +/* 8017F9B0 0017C910 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 8017F9B4 0017C914 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8017F9B8 0017C918 D0 61 00 18 */ stfs f3, 0x18(r1) +/* 8017F9BC 0017C91C D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 8017F9C0 0017C920 48 1B 7F 3D */ bl GetTransformedAABox__6CAABoxCFRC12CTransform4f +/* 8017F9C4 0017C924 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8017F9C8 0017C928 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8017F9CC 0017C92C 7C 08 03 A6 */ mtlr r0 +/* 8017F9D0 0017C930 38 21 00 30 */ addi r1, r1, 0x30 +/* 8017F9D4 0017C934 4E 80 00 20 */ blr + +.global __sinit_CPlayerOrbit_cpp +__sinit_CPlayerOrbit_cpp: +/* 8017F9D8 0017C938 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 8017F9DC 0017C93C 7C 08 02 A6 */ mflr r0 +/* 8017F9E0 0017C940 3C 60 80 47 */ lis r3, lbl_8046C8C0@ha +/* 8017F9E4 0017C944 38 80 00 01 */ li r4, 1 +/* 8017F9E8 0017C948 90 01 00 64 */ stw r0, 0x64(r1) +/* 8017F9EC 0017C94C 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8017F9F0 0017C950 3B E3 C8 C0 */ addi r31, r3, lbl_8046C8C0@l +/* 8017F9F4 0017C954 38 60 00 00 */ li r3, 0 +/* 8017F9F8 0017C958 93 C1 00 58 */ stw r30, 0x58(r1) +/* 8017F9FC 0017C95C 93 A1 00 54 */ stw r29, 0x54(r1) +/* 8017FA00 0017C960 80 AD 8E 48 */ lwz r5, lbl_805A7A08@sda21(r13) +/* 8017FA04 0017C964 48 20 A4 F1 */ bl __shl2i +/* 8017FA08 0017C968 90 8D A4 44 */ stw r4, lbl_805A9004@sda21(r13) +/* 8017FA0C 0017C96C 38 80 00 01 */ li r4, 1 +/* 8017FA10 0017C970 80 AD 8E 4C */ lwz r5, lbl_805A7A0C@sda21(r13) +/* 8017FA14 0017C974 90 6D A4 40 */ stw r3, lbl_805A9000@sda21(r13) +/* 8017FA18 0017C978 38 60 00 00 */ li r3, 0 +/* 8017FA1C 0017C97C 48 20 A4 D9 */ bl __shl2i +/* 8017FA20 0017C980 80 AD 8E 50 */ lwz r5, lbl_805A7A10@sda21(r13) +/* 8017FA24 0017C984 7C 9D 23 78 */ mr r29, r4 +/* 8017FA28 0017C988 7C 7E 1B 78 */ mr r30, r3 +/* 8017FA2C 0017C98C 38 60 00 00 */ li r3, 0 +/* 8017FA30 0017C990 38 80 00 01 */ li r4, 1 +/* 8017FA34 0017C994 48 20 A4 C1 */ bl __shl2i +/* 8017FA38 0017C998 80 AD 8E 54 */ lwz r5, lbl_805A7A14@sda21(r13) +/* 8017FA3C 0017C99C 7F BD 23 78 */ or r29, r29, r4 +/* 8017FA40 0017C9A0 7F DE 1B 78 */ or r30, r30, r3 +/* 8017FA44 0017C9A4 38 60 00 00 */ li r3, 0 +/* 8017FA48 0017C9A8 38 80 00 01 */ li r4, 1 +/* 8017FA4C 0017C9AC 48 20 A4 A9 */ bl __shl2i +/* 8017FA50 0017C9B0 80 0D A4 40 */ lwz r0, lbl_805A9000@sda21(r13) +/* 8017FA54 0017C9B4 7F BD 23 78 */ or r29, r29, r4 +/* 8017FA58 0017C9B8 7F DE 1B 78 */ or r30, r30, r3 +/* 8017FA5C 0017C9BC 38 DF 00 00 */ addi r6, r31, 0 +/* 8017FA60 0017C9C0 39 00 00 03 */ li r8, 3 +/* 8017FA64 0017C9C4 80 ED A4 44 */ lwz r7, lbl_805A9004@sda21(r13) +/* 8017FA68 0017C9C8 80 AD 8E 58 */ lwz r5, lbl_805A7A18@sda21(r13) +/* 8017FA6C 0017C9CC 38 60 00 00 */ li r3, 0 +/* 8017FA70 0017C9D0 93 AD A4 4C */ stw r29, lbl_805A900C@sda21(r13) +/* 8017FA74 0017C9D4 38 80 00 01 */ li r4, 1 +/* 8017FA78 0017C9D8 93 CD A4 48 */ stw r30, lbl_805A9008@sda21(r13) +/* 8017FA7C 0017C9DC 91 01 00 48 */ stw r8, 0x48(r1) +/* 8017FA80 0017C9E0 90 FF 00 04 */ stw r7, 4(r31) +/* 8017FA84 0017C9E4 90 1F 00 00 */ stw r0, 0(r31) +/* 8017FA88 0017C9E8 93 A6 00 0C */ stw r29, 0xc(r6) +/* 8017FA8C 0017C9EC 93 C6 00 08 */ stw r30, 8(r6) +/* 8017FA90 0017C9F0 91 06 00 10 */ stw r8, 0x10(r6) +/* 8017FA94 0017C9F4 48 20 A4 61 */ bl __shl2i +/* 8017FA98 0017C9F8 80 AD 8E 5C */ lwz r5, lbl_805A7A1C@sda21(r13) +/* 8017FA9C 0017C9FC 7C 9E 23 78 */ mr r30, r4 +/* 8017FAA0 0017CA00 7C 7D 1B 78 */ mr r29, r3 +/* 8017FAA4 0017CA04 38 60 00 00 */ li r3, 0 +/* 8017FAA8 0017CA08 38 80 00 01 */ li r4, 1 +/* 8017FAAC 0017CA0C 48 20 A4 49 */ bl __shl2i +/* 8017FAB0 0017CA10 7F DE 23 78 */ or r30, r30, r4 +/* 8017FAB4 0017CA14 7F BD 1B 78 */ or r29, r29, r3 +/* 8017FAB8 0017CA18 80 AD 8E 60 */ lwz r5, lbl_805A7A20@sda21(r13) +/* 8017FABC 0017CA1C 38 60 00 00 */ li r3, 0 +/* 8017FAC0 0017CA20 93 CD A4 54 */ stw r30, lbl_805A9014@sda21(r13) +/* 8017FAC4 0017CA24 38 80 00 01 */ li r4, 1 +/* 8017FAC8 0017CA28 93 AD A4 50 */ stw r29, lbl_805A9010@sda21(r13) +/* 8017FACC 0017CA2C 48 20 A4 29 */ bl __shl2i +/* 8017FAD0 0017CA30 80 AD 8E 64 */ lwz r5, lbl_805A7A24@sda21(r13) +/* 8017FAD4 0017CA34 7C 9E 23 78 */ mr r30, r4 +/* 8017FAD8 0017CA38 7C 7D 1B 78 */ mr r29, r3 +/* 8017FADC 0017CA3C 38 60 00 00 */ li r3, 0 +/* 8017FAE0 0017CA40 38 80 00 01 */ li r4, 1 +/* 8017FAE4 0017CA44 48 20 A4 11 */ bl __shl2i +/* 8017FAE8 0017CA48 80 AD 8E 68 */ lwz r5, lbl_805A7A28@sda21(r13) +/* 8017FAEC 0017CA4C 7F DE 23 78 */ or r30, r30, r4 +/* 8017FAF0 0017CA50 7F BD 1B 78 */ or r29, r29, r3 +/* 8017FAF4 0017CA54 38 60 00 00 */ li r3, 0 +/* 8017FAF8 0017CA58 38 80 00 01 */ li r4, 1 +/* 8017FAFC 0017CA5C 48 20 A3 F9 */ bl __shl2i +/* 8017FB00 0017CA60 C0 22 A2 4C */ lfs f1, lbl_805ABF6C@sda21(r2) +/* 8017FB04 0017CA64 7F DE 23 78 */ or r30, r30, r4 +/* 8017FB08 0017CA68 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) +/* 8017FB0C 0017CA6C 7F BD 1B 78 */ or r29, r29, r3 +/* 8017FB10 0017CA70 38 DF 00 18 */ addi r6, r31, 0x18 +/* 8017FB14 0017CA74 39 00 00 03 */ li r8, 3 +/* 8017FB18 0017CA78 80 0D A4 50 */ lwz r0, lbl_805A9010@sda21(r13) +/* 8017FB1C 0017CA7C 38 7F 00 30 */ addi r3, r31, 0x30 +/* 8017FB20 0017CA80 80 ED A4 54 */ lwz r7, lbl_805A9014@sda21(r13) +/* 8017FB24 0017CA84 38 81 00 14 */ addi r4, r1, 0x14 +/* 8017FB28 0017CA88 93 CD A4 5C */ stw r30, lbl_805A901C@sda21(r13) +/* 8017FB2C 0017CA8C 38 A1 00 08 */ addi r5, r1, 8 +/* 8017FB30 0017CA90 93 AD A4 58 */ stw r29, lbl_805A9018@sda21(r13) +/* 8017FB34 0017CA94 91 01 00 30 */ stw r8, 0x30(r1) +/* 8017FB38 0017CA98 90 FF 00 1C */ stw r7, 0x1c(r31) +/* 8017FB3C 0017CA9C 90 1F 00 18 */ stw r0, 0x18(r31) +/* 8017FB40 0017CAA0 93 C6 00 0C */ stw r30, 0xc(r6) +/* 8017FB44 0017CAA4 93 A6 00 08 */ stw r29, 8(r6) +/* 8017FB48 0017CAA8 91 06 00 10 */ stw r8, 0x10(r6) +/* 8017FB4C 0017CAAC D0 21 00 08 */ stfs f1, 8(r1) +/* 8017FB50 0017CAB0 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 8017FB54 0017CAB4 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 8017FB58 0017CAB8 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8017FB5C 0017CABC D0 01 00 18 */ stfs f0, 0x18(r1) +/* 8017FB60 0017CAC0 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8017FB64 0017CAC4 48 1B 89 A5 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8017FB68 0017CAC8 80 01 00 64 */ lwz r0, 0x64(r1) +/* 8017FB6C 0017CACC 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8017FB70 0017CAD0 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 8017FB74 0017CAD4 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 8017FB78 0017CAD8 7C 08 03 A6 */ mtlr r0 +/* 8017FB7C 0017CADC 38 21 00 60 */ addi r1, r1, 0x60 +/* 8017FB80 0017CAE0 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Player/CSamusFaceReflection.s b/asm/Kyoto_CWD/Player/CSamusFaceReflection.s new file mode 100644 index 00000000..0a2939a8 --- /dev/null +++ b/asm/Kyoto_CWD/Player/CSamusFaceReflection.s @@ -0,0 +1,708 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global Draw__20CSamusFaceReflectionCFRC13CStateManager +Draw__20CSamusFaceReflectionCFRC13CStateManager: +/* 8015ADC4 00157D24 94 21 FD D0 */ stwu r1, -0x230(r1) +/* 8015ADC8 00157D28 7C 08 02 A6 */ mflr r0 +/* 8015ADCC 00157D2C 90 01 02 34 */ stw r0, 0x234(r1) +/* 8015ADD0 00157D30 DB E1 02 20 */ stfd f31, 0x220(r1) +/* 8015ADD4 00157D34 F3 E1 02 28 */ psq_st f31, 552(r1), 0, qr0 +/* 8015ADD8 00157D38 DB C1 02 10 */ stfd f30, 0x210(r1) +/* 8015ADDC 00157D3C F3 C1 02 18 */ psq_st f30, 536(r1), 0, qr0 +/* 8015ADE0 00157D40 DB A1 02 00 */ stfd f29, 0x200(r1) +/* 8015ADE4 00157D44 F3 A1 02 08 */ psq_st f29, 520(r1), 0, qr0 +/* 8015ADE8 00157D48 DB 81 01 F0 */ stfd f28, 0x1f0(r1) +/* 8015ADEC 00157D4C F3 81 01 F8 */ psq_st f28, 504(r1), 0, qr0 +/* 8015ADF0 00157D50 DB 61 01 E0 */ stfd f27, 0x1e0(r1) +/* 8015ADF4 00157D54 F3 61 01 E8 */ psq_st f27, 488(r1), 0, qr0 +/* 8015ADF8 00157D58 DB 41 01 D0 */ stfd f26, 0x1d0(r1) +/* 8015ADFC 00157D5C F3 41 01 D8 */ psq_st f26, 472(r1), 0, qr0 +/* 8015AE00 00157D60 DB 21 01 C0 */ stfd f25, 0x1c0(r1) +/* 8015AE04 00157D64 F3 21 01 C8 */ psq_st f25, 456(r1), 0, qr0 +/* 8015AE08 00157D68 DB 01 01 B0 */ stfd f24, 0x1b0(r1) +/* 8015AE0C 00157D6C F3 01 01 B8 */ psq_st f24, 440(r1), 0, qr0 +/* 8015AE10 00157D70 DA E1 01 A0 */ stfd f23, 0x1a0(r1) +/* 8015AE14 00157D74 F2 E1 01 A8 */ psq_st f23, 424(r1), 0, qr0 +/* 8015AE18 00157D78 DA C1 01 90 */ stfd f22, 0x190(r1) +/* 8015AE1C 00157D7C F2 C1 01 98 */ psq_st f22, 408(r1), 0, qr0 +/* 8015AE20 00157D80 DA A1 01 80 */ stfd f21, 0x180(r1) +/* 8015AE24 00157D84 F2 A1 01 88 */ psq_st f21, 392(r1), 0, qr0 +/* 8015AE28 00157D88 DA 81 01 70 */ stfd f20, 0x170(r1) +/* 8015AE2C 00157D8C F2 81 01 78 */ psq_st f20, 376(r1), 0, qr0 +/* 8015AE30 00157D90 DA 61 01 60 */ stfd f19, 0x160(r1) +/* 8015AE34 00157D94 F2 61 01 68 */ psq_st f19, 360(r1), 0, qr0 +/* 8015AE38 00157D98 93 E1 01 5C */ stw r31, 0x15c(r1) +/* 8015AE3C 00157D9C 93 C1 01 58 */ stw r30, 0x158(r1) +/* 8015AE40 00157DA0 93 A1 01 54 */ stw r29, 0x154(r1) +/* 8015AE44 00157DA4 7C 7D 1B 78 */ mr r29, r3 +/* 8015AE48 00157DA8 7C 9E 23 78 */ mr r30, r4 +/* 8015AE4C 00157DAC 88 03 00 70 */ lbz r0, 0x70(r3) +/* 8015AE50 00157DB0 28 00 00 00 */ cmplwi r0, 0 +/* 8015AE54 00157DB4 40 82 03 00 */ bne lbl_8015B154 +/* 8015AE58 00157DB8 80 7E 08 70 */ lwz r3, 0x870(r30) +/* 8015AE5C 00157DBC 4B EB 0C BD */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager +/* 8015AE60 00157DC0 7C 64 1B 78 */ mr r4, r3 +/* 8015AE64 00157DC4 38 61 00 08 */ addi r3, r1, 8 +/* 8015AE68 00157DC8 4B F5 36 0D */ bl "__ct__32TCastToPtr<18CFirstPersonCamera>FR7CEntity" +/* 8015AE6C 00157DCC 83 E3 00 04 */ lwz r31, 4(r3) +/* 8015AE70 00157DD0 28 1F 00 00 */ cmplwi r31, 0 +/* 8015AE74 00157DD4 41 82 02 E0 */ beq lbl_8015B154 +/* 8015AE78 00157DD8 C2 FF 00 60 */ lfs f23, 0x60(r31) +/* 8015AE7C 00157DDC 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8015AE80 00157DE0 C3 1F 00 50 */ lfs f24, 0x50(r31) +/* 8015AE84 00157DE4 38 61 00 78 */ addi r3, r1, 0x78 +/* 8015AE88 00157DE8 C3 3F 00 40 */ lfs f25, 0x40(r31) +/* 8015AE8C 00157DEC C3 BF 00 58 */ lfs f29, 0x58(r31) +/* 8015AE90 00157DF0 C2 7F 00 48 */ lfs f19, 0x48(r31) +/* 8015AE94 00157DF4 C2 9F 00 38 */ lfs f20, 0x38(r31) +/* 8015AE98 00157DF8 C3 5F 00 5C */ lfs f26, 0x5c(r31) +/* 8015AE9C 00157DFC C3 7F 00 4C */ lfs f27, 0x4c(r31) +/* 8015AEA0 00157E00 C3 9F 00 3C */ lfs f28, 0x3c(r31) +/* 8015AEA4 00157E04 48 1B 72 85 */ bl FromMatrix__11CQuaternionFRC12CTransform4f +/* 8015AEA8 00157E08 C0 61 00 78 */ lfs f3, 0x78(r1) +/* 8015AEAC 00157E0C C0 41 00 7C */ lfs f2, 0x7c(r1) +/* 8015AEB0 00157E10 C0 21 00 80 */ lfs f1, 0x80(r1) +/* 8015AEB4 00157E14 C0 01 00 84 */ lfs f0, 0x84(r1) +/* 8015AEB8 00157E18 D0 61 00 88 */ stfs f3, 0x88(r1) +/* 8015AEBC 00157E1C 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 8015AEC0 00157E20 D0 41 00 8C */ stfs f2, 0x8c(r1) +/* 8015AEC4 00157E24 D0 21 00 90 */ stfs f1, 0x90(r1) +/* 8015AEC8 00157E28 D0 01 00 94 */ stfs f0, 0x94(r1) +/* 8015AECC 00157E2C C0 23 01 44 */ lfs f1, 0x144(r3) +/* 8015AED0 00157E30 4B F1 94 81 */ bl FaceReflectionDistanceDebugValueToActualValue__9CTweakGuiFf +/* 8015AED4 00157E34 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 8015AED8 00157E38 FE A0 08 90 */ fmr f21, f1 +/* 8015AEDC 00157E3C C0 23 01 48 */ lfs f1, 0x148(r3) +/* 8015AEE0 00157E40 4B F1 94 61 */ bl FaceReflectionHeightDebugValueToActualValue__9CTweakGuiFf +/* 8015AEE4 00157E44 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 8015AEE8 00157E48 FE C0 08 90 */ fmr f22, f1 +/* 8015AEEC 00157E4C C0 23 01 4C */ lfs f1, 0x14c(r3) +/* 8015AEF0 00157E50 4B F1 94 41 */ bl FaceReflectionAspectDebugValueToActualValue__9CTweakGuiFf +/* 8015AEF4 00157E54 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 8015AEF8 00157E58 FF C0 08 90 */ fmr f30, f1 +/* 8015AEFC 00157E5C C0 23 01 3C */ lfs f1, 0x13c(r3) +/* 8015AF00 00157E60 4B F1 94 21 */ bl FaceReflectionOrthoWidthDebugValueToActualValue__9CTweakGuiFf +/* 8015AF04 00157E64 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 8015AF08 00157E68 FF E0 08 90 */ fmr f31, f1 +/* 8015AF0C 00157E6C C0 23 01 40 */ lfs f1, 0x140(r3) +/* 8015AF10 00157E70 4B F1 94 01 */ bl FaceReflectionOrthoHeightDebugValueToActualValue__9CTweakGuiFf +/* 8015AF14 00157E74 EC 15 04 F2 */ fmuls f0, f21, f19 +/* 8015AF18 00157E78 38 61 00 68 */ addi r3, r1, 0x68 +/* 8015AF1C 00157E7C EC 75 07 72 */ fmuls f3, f21, f29 +/* 8015AF20 00157E80 38 81 00 88 */ addi r4, r1, 0x88 +/* 8015AF24 00157E84 EC 55 05 32 */ fmuls f2, f21, f20 +/* 8015AF28 00157E88 38 BD 00 50 */ addi r5, r29, 0x50 +/* 8015AF2C 00157E8C EC B6 07 32 */ fmuls f5, f22, f28 +/* 8015AF30 00157E90 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 8015AF34 00157E94 EC F8 00 2A */ fadds f7, f24, f0 +/* 8015AF38 00157E98 EC 96 06 F2 */ fmuls f4, f22, f27 +/* 8015AF3C 00157E9C D0 41 00 44 */ stfs f2, 0x44(r1) +/* 8015AF40 00157EA0 EC 59 10 2A */ fadds f2, f25, f2 +/* 8015AF44 00157EA4 EC 16 06 B2 */ fmuls f0, f22, f26 +/* 8015AF48 00157EA8 D0 A1 00 38 */ stfs f5, 0x38(r1) +/* 8015AF4C 00157EAC EC D7 18 2A */ fadds f6, f23, f3 +/* 8015AF50 00157EB0 ED 07 20 2A */ fadds f8, f7, f4 +/* 8015AF54 00157EB4 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 8015AF58 00157EB8 FE 60 08 90 */ fmr f19, f1 +/* 8015AF5C 00157EBC EC 86 00 2A */ fadds f4, f6, f0 +/* 8015AF60 00157EC0 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 8015AF64 00157EC4 EC 02 28 2A */ fadds f0, f2, f5 +/* 8015AF68 00157EC8 D0 61 00 4C */ stfs f3, 0x4c(r1) +/* 8015AF6C 00157ECC D0 41 00 50 */ stfs f2, 0x50(r1) +/* 8015AF70 00157ED0 D0 E1 00 54 */ stfs f7, 0x54(r1) +/* 8015AF74 00157ED4 D0 C1 00 58 */ stfs f6, 0x58(r1) +/* 8015AF78 00157ED8 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 8015AF7C 00157EDC D1 01 00 60 */ stfs f8, 0x60(r1) +/* 8015AF80 00157EE0 D0 81 00 64 */ stfs f4, 0x64(r1) +/* 8015AF84 00157EE4 48 1B 62 1D */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 8015AF88 00157EE8 38 61 00 98 */ addi r3, r1, 0x98 +/* 8015AF8C 00157EEC 38 81 00 68 */ addi r4, r1, 0x68 +/* 8015AF90 00157EF0 48 1B 70 FD */ bl BuildTransform__11CQuaternionCFv +/* 8015AF94 00157EF4 38 61 00 BC */ addi r3, r1, 0xbc +/* 8015AF98 00157EF8 38 81 00 98 */ addi r4, r1, 0x98 +/* 8015AF9C 00157EFC 38 A1 00 5C */ addi r5, r1, 0x5c +/* 8015AFA0 00157F00 48 1B 82 D9 */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f +/* 8015AFA4 00157F04 3C A0 80 47 */ lis r5, lbl_8046C7A0@ha +/* 8015AFA8 00157F08 7C 64 1B 78 */ mr r4, r3 +/* 8015AFAC 00157F0C 38 A5 C7 A0 */ addi r5, r5, lbl_8046C7A0@l +/* 8015AFB0 00157F10 38 61 00 EC */ addi r3, r1, 0xec +/* 8015AFB4 00157F14 48 1B 79 9D */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8015AFB8 00157F18 38 61 01 1C */ addi r3, r1, 0x11c +/* 8015AFBC 00157F1C 38 81 00 EC */ addi r4, r1, 0xec +/* 8015AFC0 00157F20 48 1B 7B B5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8015AFC4 00157F24 38 7F 00 34 */ addi r3, r31, 0x34 +/* 8015AFC8 00157F28 48 1B 17 85 */ bl SetViewPointMatrix__9CGraphicsFRC12CTransform4f +/* 8015AFCC 00157F2C FC 00 F8 50 */ fneg f0, f31 +/* 8015AFD0 00157F30 C0 A2 9E A4 */ lfs f5, lbl_805ABBC4@sda21(r2) +/* 8015AFD4 00157F34 FC 60 98 90 */ fmr f3, f19 +/* 8015AFD8 00157F38 C0 C2 9E A8 */ lfs f6, lbl_805ABBC8@sda21(r2) +/* 8015AFDC 00157F3C EC 5E 07 F2 */ fmuls f2, f30, f31 +/* 8015AFE0 00157F40 EC 3E 00 32 */ fmuls f1, f30, f0 +/* 8015AFE4 00157F44 FC 80 98 50 */ fneg f4, f19 +/* 8015AFE8 00157F48 48 1B 15 6D */ bl SetOrtho__9CGraphicsFffffff +/* 8015AFEC 00157F4C 80 1D 00 6C */ lwz r0, 0x6c(r29) +/* 8015AFF0 00157F50 2C 00 00 01 */ cmpwi r0, 1 +/* 8015AFF4 00157F54 40 82 00 0C */ bne lbl_8015B000 +/* 8015AFF8 00157F58 3B E0 00 00 */ li r31, 0 +/* 8015AFFC 00157F5C 48 00 00 08 */ b lbl_8015B004 +lbl_8015B000: +/* 8015B000 00157F60 83 FD 00 4C */ lwz r31, 0x4c(r29) +lbl_8015B004: +/* 8015B004 00157F64 2C 00 00 03 */ cmpwi r0, 3 +/* 8015B008 00157F68 40 82 00 4C */ bne lbl_8015B054 +/* 8015B00C 00157F6C C0 22 9E AC */ lfs f1, lbl_805ABBCC@sda21(r2) +/* 8015B010 00157F70 38 80 00 00 */ li r4, 0 +/* 8015B014 00157F74 38 00 00 03 */ li r0, 3 +/* 8015B018 00157F78 98 81 00 30 */ stb r4, 0x30(r1) +/* 8015B01C 00157F7C FC 40 08 90 */ fmr f2, f1 +/* 8015B020 00157F80 38 61 00 34 */ addi r3, r1, 0x34 +/* 8015B024 00157F84 FC 60 08 90 */ fmr f3, f1 +/* 8015B028 00157F88 98 81 00 31 */ stb r4, 0x31(r1) +/* 8015B02C 00157F8C FC 80 08 90 */ fmr f4, f1 +/* 8015B030 00157F90 B0 01 00 32 */ sth r0, 0x32(r1) +/* 8015B034 00157F94 48 20 83 B9 */ bl __ct__6CColorFffff +/* 8015B038 00157F98 7F A3 EB 78 */ mr r3, r29 +/* 8015B03C 00157F9C 7F C4 F3 78 */ mr r4, r30 +/* 8015B040 00157FA0 7F E6 FB 78 */ mr r6, r31 +/* 8015B044 00157FA4 38 A1 01 1C */ addi r5, r1, 0x11c +/* 8015B048 00157FA8 38 E1 00 30 */ addi r7, r1, 0x30 +/* 8015B04C 00157FAC 4B FB 9D 71 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags +/* 8015B050 00157FB0 48 00 01 04 */ b lbl_8015B154 +lbl_8015B054: +/* 8015B054 00157FB4 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 8015B058 00157FB8 7F C4 F3 78 */ mr r4, r30 +/* 8015B05C 00157FBC 80 63 00 00 */ lwz r3, 0(r3) +/* 8015B060 00157FC0 4B F3 64 F9 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager +/* 8015B064 00157FC4 2C 03 00 00 */ cmpwi r3, 0 +/* 8015B068 00157FC8 40 82 00 18 */ bne lbl_8015B080 +/* 8015B06C 00157FCC 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 8015B070 00157FD0 80 63 00 00 */ lwz r3, 0(r3) +/* 8015B074 00157FD4 4B F3 67 F1 */ bl GetVisorTransitionFactor__12CPlayerStateCFv +/* 8015B078 00157FD8 FE E0 08 90 */ fmr f23, f1 +/* 8015B07C 00157FDC 48 00 00 08 */ b lbl_8015B084 +lbl_8015B080: +/* 8015B080 00157FE0 C2 E2 9E B0 */ lfs f23, lbl_805ABBD0@sda21(r2) +lbl_8015B084: +/* 8015B084 00157FE4 C0 02 9E B0 */ lfs f0, lbl_805ABBD0@sda21(r2) +/* 8015B088 00157FE8 FC 17 00 40 */ fcmpo cr0, f23, f0 +/* 8015B08C 00157FEC 40 81 00 C8 */ ble lbl_8015B154 +/* 8015B090 00157FF0 48 1E EF 25 */ bl Black__6CColorFv +/* 8015B094 00157FF4 39 20 00 03 */ li r9, 3 +/* 8015B098 00157FF8 81 03 00 00 */ lwz r8, 0(r3) +/* 8015B09C 00157FFC 55 20 00 3A */ rlwinm r0, r9, 0, 0, 0x1d +/* 8015B0A0 00158000 39 60 00 07 */ li r11, 7 +/* 8015B0A4 00158004 39 40 00 00 */ li r10, 0 +/* 8015B0A8 00158008 99 61 00 20 */ stb r11, 0x20(r1) +/* 8015B0AC 0015800C 60 00 00 03 */ ori r0, r0, 3 +/* 8015B0B0 00158010 7F A3 EB 78 */ mr r3, r29 +/* 8015B0B4 00158014 99 41 00 21 */ stb r10, 0x21(r1) +/* 8015B0B8 00158018 7F C4 F3 78 */ mr r4, r30 +/* 8015B0BC 0015801C 38 A1 01 1C */ addi r5, r1, 0x11c +/* 8015B0C0 00158020 38 E1 00 28 */ addi r7, r1, 0x28 +/* 8015B0C4 00158024 B1 21 00 22 */ sth r9, 0x22(r1) +/* 8015B0C8 00158028 38 C0 00 00 */ li r6, 0 +/* 8015B0CC 0015802C 91 01 00 24 */ stw r8, 0x24(r1) +/* 8015B0D0 00158030 99 61 00 28 */ stb r11, 0x28(r1) +/* 8015B0D4 00158034 99 41 00 29 */ stb r10, 0x29(r1) +/* 8015B0D8 00158038 B0 01 00 2A */ sth r0, 0x2a(r1) +/* 8015B0DC 0015803C 91 01 00 2C */ stw r8, 0x2c(r1) +/* 8015B0E0 00158040 4B FB 9C DD */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags +/* 8015B0E4 00158044 C0 22 9E AC */ lfs f1, lbl_805ABBCC@sda21(r2) +/* 8015B0E8 00158048 38 A0 00 07 */ li r5, 7 +/* 8015B0EC 0015804C 38 80 00 00 */ li r4, 0 +/* 8015B0F0 00158050 38 00 00 03 */ li r0, 3 +/* 8015B0F4 00158054 FC 40 08 90 */ fmr f2, f1 +/* 8015B0F8 00158058 98 A1 00 10 */ stb r5, 0x10(r1) +/* 8015B0FC 0015805C FC 60 08 90 */ fmr f3, f1 +/* 8015B100 00158060 38 61 00 14 */ addi r3, r1, 0x14 +/* 8015B104 00158064 FC 80 B8 90 */ fmr f4, f23 +/* 8015B108 00158068 98 81 00 11 */ stb r4, 0x11(r1) +/* 8015B10C 0015806C B0 01 00 12 */ sth r0, 0x12(r1) +/* 8015B110 00158070 48 20 82 DD */ bl __ct__6CColorFffff +/* 8015B114 00158074 A0 01 00 12 */ lhz r0, 0x12(r1) +/* 8015B118 00158078 7F A3 EB 78 */ mr r3, r29 +/* 8015B11C 0015807C 88 A1 00 10 */ lbz r5, 0x10(r1) +/* 8015B120 00158080 7F C4 F3 78 */ mr r4, r30 +/* 8015B124 00158084 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d +/* 8015B128 00158088 88 E1 00 11 */ lbz r7, 0x11(r1) +/* 8015B12C 0015808C 60 08 00 01 */ ori r8, r0, 1 +/* 8015B130 00158090 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8015B134 00158094 98 A1 00 18 */ stb r5, 0x18(r1) +/* 8015B138 00158098 7F E6 FB 78 */ mr r6, r31 +/* 8015B13C 0015809C 38 A1 01 1C */ addi r5, r1, 0x11c +/* 8015B140 001580A0 98 E1 00 19 */ stb r7, 0x19(r1) +/* 8015B144 001580A4 38 E1 00 18 */ addi r7, r1, 0x18 +/* 8015B148 001580A8 B1 01 00 1A */ sth r8, 0x1a(r1) +/* 8015B14C 001580AC 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8015B150 001580B0 4B FB 9C 6D */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags +lbl_8015B154: +/* 8015B154 001580B4 E3 E1 02 28 */ psq_l f31, 552(r1), 0, qr0 +/* 8015B158 001580B8 CB E1 02 20 */ lfd f31, 0x220(r1) +/* 8015B15C 001580BC E3 C1 02 18 */ psq_l f30, 536(r1), 0, qr0 +/* 8015B160 001580C0 CB C1 02 10 */ lfd f30, 0x210(r1) +/* 8015B164 001580C4 E3 A1 02 08 */ psq_l f29, 520(r1), 0, qr0 +/* 8015B168 001580C8 CB A1 02 00 */ lfd f29, 0x200(r1) +/* 8015B16C 001580CC E3 81 01 F8 */ psq_l f28, 504(r1), 0, qr0 +/* 8015B170 001580D0 CB 81 01 F0 */ lfd f28, 0x1f0(r1) +/* 8015B174 001580D4 E3 61 01 E8 */ psq_l f27, 488(r1), 0, qr0 +/* 8015B178 001580D8 CB 61 01 E0 */ lfd f27, 0x1e0(r1) +/* 8015B17C 001580DC E3 41 01 D8 */ psq_l f26, 472(r1), 0, qr0 +/* 8015B180 001580E0 CB 41 01 D0 */ lfd f26, 0x1d0(r1) +/* 8015B184 001580E4 E3 21 01 C8 */ psq_l f25, 456(r1), 0, qr0 +/* 8015B188 001580E8 CB 21 01 C0 */ lfd f25, 0x1c0(r1) +/* 8015B18C 001580EC E3 01 01 B8 */ psq_l f24, 440(r1), 0, qr0 +/* 8015B190 001580F0 CB 01 01 B0 */ lfd f24, 0x1b0(r1) +/* 8015B194 001580F4 E2 E1 01 A8 */ psq_l f23, 424(r1), 0, qr0 +/* 8015B198 001580F8 CA E1 01 A0 */ lfd f23, 0x1a0(r1) +/* 8015B19C 001580FC E2 C1 01 98 */ psq_l f22, 408(r1), 0, qr0 +/* 8015B1A0 00158100 CA C1 01 90 */ lfd f22, 0x190(r1) +/* 8015B1A4 00158104 E2 A1 01 88 */ psq_l f21, 392(r1), 0, qr0 +/* 8015B1A8 00158108 CA A1 01 80 */ lfd f21, 0x180(r1) +/* 8015B1AC 0015810C E2 81 01 78 */ psq_l f20, 376(r1), 0, qr0 +/* 8015B1B0 00158110 CA 81 01 70 */ lfd f20, 0x170(r1) +/* 8015B1B4 00158114 E2 61 01 68 */ psq_l f19, 360(r1), 0, qr0 +/* 8015B1B8 00158118 CA 61 01 60 */ lfd f19, 0x160(r1) +/* 8015B1BC 0015811C 83 E1 01 5C */ lwz r31, 0x15c(r1) +/* 8015B1C0 00158120 83 C1 01 58 */ lwz r30, 0x158(r1) +/* 8015B1C4 00158124 80 01 02 34 */ lwz r0, 0x234(r1) +/* 8015B1C8 00158128 83 A1 01 54 */ lwz r29, 0x154(r1) +/* 8015B1CC 0015812C 7C 08 03 A6 */ mtlr r0 +/* 8015B1D0 00158130 38 21 02 30 */ addi r1, r1, 0x230 +/* 8015B1D4 00158134 4E 80 00 20 */ blr + +.global PreDraw__20CSamusFaceReflectionFRC13CStateManager +PreDraw__20CSamusFaceReflectionFRC13CStateManager: +/* 8015B1D8 00158138 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8015B1DC 0015813C 7C 08 02 A6 */ mflr r0 +/* 8015B1E0 00158140 90 01 00 24 */ stw r0, 0x24(r1) +/* 8015B1E4 00158144 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8015B1E8 00158148 7C 9F 23 78 */ mr r31, r4 +/* 8015B1EC 0015814C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8015B1F0 00158150 7C 7E 1B 78 */ mr r30, r3 +/* 8015B1F4 00158154 80 03 00 6C */ lwz r0, 0x6c(r3) +/* 8015B1F8 00158158 2C 00 00 02 */ cmpwi r0, 2 +/* 8015B1FC 0015815C 41 82 00 4C */ beq lbl_8015B248 +/* 8015B200 00158160 80 7E 00 4C */ lwz r3, 0x4c(r30) +/* 8015B204 00158164 4B FA 9E AD */ bl GetActiveLightCount__12CActorLightsCFv +/* 8015B208 00158168 28 03 00 01 */ cmplwi r3, 1 +/* 8015B20C 0015816C 40 80 00 18 */ bge lbl_8015B224 +/* 8015B210 00158170 80 1E 00 6C */ lwz r0, 0x6c(r30) +/* 8015B214 00158174 2C 00 00 00 */ cmpwi r0, 0 +/* 8015B218 00158178 41 82 00 30 */ beq lbl_8015B248 +/* 8015B21C 0015817C 2C 00 00 03 */ cmpwi r0, 3 +/* 8015B220 00158180 41 82 00 28 */ beq lbl_8015B248 +lbl_8015B224: +/* 8015B224 00158184 80 7F 08 70 */ lwz r3, 0x870(r31) +/* 8015B228 00158188 7F E4 FB 78 */ mr r4, r31 +/* 8015B22C 0015818C 4B EB 08 ED */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager +/* 8015B230 00158190 7C 64 1B 78 */ mr r4, r3 +/* 8015B234 00158194 38 61 00 08 */ addi r3, r1, 8 +/* 8015B238 00158198 4B F5 32 3D */ bl "__ct__32TCastToPtr<18CFirstPersonCamera>FR7CEntity" +/* 8015B23C 0015819C 80 03 00 04 */ lwz r0, 4(r3) +/* 8015B240 001581A0 28 00 00 00 */ cmplwi r0, 0 +/* 8015B244 001581A4 40 82 00 10 */ bne lbl_8015B254 +lbl_8015B248: +/* 8015B248 001581A8 38 00 00 01 */ li r0, 1 +/* 8015B24C 001581AC 98 1E 00 70 */ stb r0, 0x70(r30) +/* 8015B250 001581B0 48 00 00 14 */ b lbl_8015B264 +lbl_8015B254: +/* 8015B254 001581B4 38 00 00 00 */ li r0, 0 +/* 8015B258 001581B8 98 1E 00 70 */ stb r0, 0x70(r30) +/* 8015B25C 001581BC 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 8015B260 001581C0 4B ED 17 A5 */ bl PreRender__9CAnimDataFv +lbl_8015B264: +/* 8015B264 001581C4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8015B268 001581C8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8015B26C 001581CC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8015B270 001581D0 7C 08 03 A6 */ mtlr r0 +/* 8015B274 001581D4 38 21 00 20 */ addi r1, r1, 0x20 +/* 8015B278 001581D8 4E 80 00 20 */ blr + +.global Update__20CSamusFaceReflectionFfRC13CStateManagerR9CRandom16 +Update__20CSamusFaceReflectionFfRC13CStateManagerR9CRandom16: +/* 8015B27C 001581DC 94 21 FD F0 */ stwu r1, -0x210(r1) +/* 8015B280 001581E0 7C 08 02 A6 */ mflr r0 +/* 8015B284 001581E4 90 01 02 14 */ stw r0, 0x214(r1) +/* 8015B288 001581E8 DB E1 02 00 */ stfd f31, 0x200(r1) +/* 8015B28C 001581EC F3 E1 02 08 */ psq_st f31, 520(r1), 0, qr0 +/* 8015B290 001581F0 DB C1 01 F0 */ stfd f30, 0x1f0(r1) +/* 8015B294 001581F4 F3 C1 01 F8 */ psq_st f30, 504(r1), 0, qr0 +/* 8015B298 001581F8 DB A1 01 E0 */ stfd f29, 0x1e0(r1) +/* 8015B29C 001581FC F3 A1 01 E8 */ psq_st f29, 488(r1), 0, qr0 +/* 8015B2A0 00158200 DB 81 01 D0 */ stfd f28, 0x1d0(r1) +/* 8015B2A4 00158204 F3 81 01 D8 */ psq_st f28, 472(r1), 0, qr0 +/* 8015B2A8 00158208 93 E1 01 CC */ stw r31, 0x1cc(r1) +/* 8015B2AC 0015820C 93 C1 01 C8 */ stw r30, 0x1c8(r1) +/* 8015B2B0 00158210 93 A1 01 C4 */ stw r29, 0x1c4(r1) +/* 8015B2B4 00158214 93 81 01 C0 */ stw r28, 0x1c0(r1) +/* 8015B2B8 00158218 FF E0 08 90 */ fmr f31, f1 +/* 8015B2BC 0015821C 7C 9C 23 78 */ mr r28, r4 +/* 8015B2C0 00158220 7C 7F 1B 78 */ mr r31, r3 +/* 8015B2C4 00158224 80 64 08 70 */ lwz r3, 0x870(r4) +/* 8015B2C8 00158228 7C BE 2B 78 */ mr r30, r5 +/* 8015B2CC 0015822C 4B EB 08 4D */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager +/* 8015B2D0 00158230 7C 64 1B 78 */ mr r4, r3 +/* 8015B2D4 00158234 38 61 00 1C */ addi r3, r1, 0x1c +/* 8015B2D8 00158238 4B F5 31 9D */ bl "__ct__32TCastToPtr<18CFirstPersonCamera>FR7CEntity" +/* 8015B2DC 0015823C 83 A3 00 04 */ lwz r29, 4(r3) +/* 8015B2E0 00158240 28 1D 00 00 */ cmplwi r29, 0 +/* 8015B2E4 00158244 41 82 03 2C */ beq lbl_8015B610 +/* 8015B2E8 00158248 FC 20 F8 90 */ fmr f1, f31 +/* 8015B2EC 0015824C C3 DD 00 60 */ lfs f30, 0x60(r29) +/* 8015B2F0 00158250 C3 BD 00 50 */ lfs f29, 0x50(r29) +/* 8015B2F4 00158254 7F E4 FB 78 */ mr r4, r31 +/* 8015B2F8 00158258 C3 9D 00 40 */ lfs f28, 0x40(r29) +/* 8015B2FC 0015825C 7F C5 F3 78 */ mr r5, r30 +/* 8015B300 00158260 38 61 00 F0 */ addi r3, r1, 0xf0 +/* 8015B304 00158264 38 C0 00 01 */ li r6, 1 +/* 8015B308 00158268 4B FB A7 B1 */ bl AdvanceAnimationIgnoreParticles__10CModelDataFfR9CRandom16b +/* 8015B30C 0015826C 83 DF 00 4C */ lwz r30, 0x4c(r31) +/* 8015B310 00158270 38 60 00 00 */ li r3, 0 +/* 8015B314 00158274 88 1E 02 98 */ lbz r0, 0x298(r30) +/* 8015B318 00158278 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8015B31C 0015827C 98 1E 02 98 */ stb r0, 0x298(r30) +/* 8015B320 00158280 80 7C 08 4C */ lwz r3, 0x84c(r28) +/* 8015B324 00158284 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) +/* 8015B328 00158288 80 63 00 04 */ lwz r3, 4(r3) +/* 8015B32C 0015828C 7C 03 00 00 */ cmpw r3, r0 +/* 8015B330 00158290 90 61 00 18 */ stw r3, 0x18(r1) +/* 8015B334 00158294 41 82 02 DC */ beq lbl_8015B610 +/* 8015B338 00158298 C0 A2 9E B4 */ lfs f5, lbl_805ABBD4@sda21(r2) +/* 8015B33C 0015829C 38 61 01 0C */ addi r3, r1, 0x10c +/* 8015B340 001582A0 38 81 00 B8 */ addi r4, r1, 0xb8 +/* 8015B344 001582A4 38 A1 00 AC */ addi r5, r1, 0xac +/* 8015B348 001582A8 EC 1C 28 2A */ fadds f0, f28, f5 +/* 8015B34C 001582AC EC 9D 28 2A */ fadds f4, f29, f5 +/* 8015B350 001582B0 EC 7E 28 2A */ fadds f3, f30, f5 +/* 8015B354 001582B4 EC 5C 28 28 */ fsubs f2, f28, f5 +/* 8015B358 001582B8 D0 01 00 AC */ stfs f0, 0xac(r1) +/* 8015B35C 001582BC EC 3D 28 28 */ fsubs f1, f29, f5 +/* 8015B360 001582C0 EC 1E 28 28 */ fsubs f0, f30, f5 +/* 8015B364 001582C4 D0 81 00 B0 */ stfs f4, 0xb0(r1) +/* 8015B368 001582C8 D0 61 00 B4 */ stfs f3, 0xb4(r1) +/* 8015B36C 001582CC D0 41 00 B8 */ stfs f2, 0xb8(r1) +/* 8015B370 001582D0 D0 21 00 BC */ stfs f1, 0xbc(r1) +/* 8015B374 001582D4 D0 01 00 C0 */ stfs f0, 0xc0(r1) +/* 8015B378 001582D8 48 1D D1 91 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8015B37C 001582DC 80 01 00 18 */ lwz r0, 0x18(r1) +/* 8015B380 001582E0 7F C3 F3 78 */ mr r3, r30 +/* 8015B384 001582E4 80 DC 08 50 */ lwz r6, 0x850(r28) +/* 8015B388 001582E8 7F 84 E3 78 */ mr r4, r28 +/* 8015B38C 001582EC 54 05 18 38 */ slwi r5, r0, 3 +/* 8015B390 001582F0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015B394 001582F4 80 E6 00 20 */ lwz r7, 0x20(r6) +/* 8015B398 001582F8 38 05 00 04 */ addi r0, r5, 4 +/* 8015B39C 001582FC 38 C1 01 0C */ addi r6, r1, 0x10c +/* 8015B3A0 00158300 7C A7 00 2E */ lwzx r5, r7, r0 +/* 8015B3A4 00158304 4B FA 7F 19 */ bl BuildFaceLightList__12CActorLightsFRC13CStateManagerRC9CGameAreaRC6CAABox +/* 8015B3A8 00158308 38 61 01 6C */ addi r3, r1, 0x16c +/* 8015B3AC 0015830C 38 9D 00 34 */ addi r4, r29, 0x34 +/* 8015B3B0 00158310 48 1B 7D 45 */ bl BuildMatrix3f__12CTransform4fCFv +/* 8015B3B4 00158314 38 61 01 90 */ addi r3, r1, 0x190 +/* 8015B3B8 00158318 38 81 01 6C */ addi r4, r1, 0x16c +/* 8015B3BC 0015831C 48 1B 4C 69 */ bl __ct__9CMatrix3fFRC9CMatrix3f +/* 8015B3C0 00158320 C0 41 01 AC */ lfs f2, 0x1ac(r1) +/* 8015B3C4 00158324 38 61 00 E4 */ addi r3, r1, 0xe4 +/* 8015B3C8 00158328 C0 21 01 A0 */ lfs f1, 0x1a0(r1) +/* 8015B3CC 0015832C 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 8015B3D0 00158330 C0 01 01 94 */ lfs f0, 0x194(r1) +/* 8015B3D4 00158334 D0 21 00 A4 */ stfs f1, 0xa4(r1) +/* 8015B3D8 00158338 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 8015B3DC 0015833C D0 41 00 A8 */ stfs f2, 0xa8(r1) +/* 8015B3E0 00158340 48 1B 89 F1 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8015B3E4 00158344 3C 60 80 5A */ lis r3, lbl_805A6724@ha +/* 8015B3E8 00158348 C0 C2 9E B8 */ lfs f6, lbl_805ABBD8@sda21(r2) +/* 8015B3EC 0015834C 3B C3 67 24 */ addi r30, r3, lbl_805A6724@l +/* 8015B3F0 00158350 C0 41 00 E4 */ lfs f2, 0xe4(r1) +/* 8015B3F4 00158354 C0 BE 00 00 */ lfs f5, 0(r30) +/* 8015B3F8 00158358 38 61 00 90 */ addi r3, r1, 0x90 +/* 8015B3FC 0015835C C0 9E 00 04 */ lfs f4, 4(r30) +/* 8015B400 00158360 38 81 00 84 */ addi r4, r1, 0x84 +/* 8015B404 00158364 C0 7E 00 08 */ lfs f3, 8(r30) +/* 8015B408 00158368 38 A1 00 78 */ addi r5, r1, 0x78 +/* 8015B40C 0015836C C0 21 00 E8 */ lfs f1, 0xe8(r1) +/* 8015B410 00158370 38 C1 00 10 */ addi r6, r1, 0x10 +/* 8015B414 00158374 C0 01 00 EC */ lfs f0, 0xec(r1) +/* 8015B418 00158378 D0 C1 00 10 */ stfs f6, 0x10(r1) +/* 8015B41C 0015837C D0 A1 00 78 */ stfs f5, 0x78(r1) +/* 8015B420 00158380 D0 81 00 7C */ stfs f4, 0x7c(r1) +/* 8015B424 00158384 D0 61 00 80 */ stfs f3, 0x80(r1) +/* 8015B428 00158388 D0 41 00 84 */ stfs f2, 0x84(r1) +/* 8015B42C 0015838C D0 21 00 88 */ stfs f1, 0x88(r1) +/* 8015B430 00158390 D0 01 00 8C */ stfs f0, 0x8c(r1) +/* 8015B434 00158394 48 1B 62 61 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 8015B438 00158398 3C 60 80 5A */ lis r3, lbl_805A6724@ha +/* 8015B43C 0015839C C0 E1 00 90 */ lfs f7, 0x90(r1) +/* 8015B440 001583A0 38 C3 67 24 */ addi r6, r3, lbl_805A6724@l +/* 8015B444 001583A4 C0 C1 00 94 */ lfs f6, 0x94(r1) +/* 8015B448 001583A8 C0 A1 00 98 */ lfs f5, 0x98(r1) +/* 8015B44C 001583AC 38 61 00 44 */ addi r3, r1, 0x44 +/* 8015B450 001583B0 C0 81 00 9C */ lfs f4, 0x9c(r1) +/* 8015B454 001583B4 38 81 00 D4 */ addi r4, r1, 0xd4 +/* 8015B458 001583B8 C0 62 9E B8 */ lfs f3, lbl_805ABBD8@sda21(r2) +/* 8015B45C 001583BC 38 BF 00 60 */ addi r5, r31, 0x60 +/* 8015B460 001583C0 C0 46 00 00 */ lfs f2, 0(r6) +/* 8015B464 001583C4 C0 3E 00 04 */ lfs f1, 4(r30) +/* 8015B468 001583C8 C0 1E 00 08 */ lfs f0, 8(r30) +/* 8015B46C 001583CC D0 E1 00 D4 */ stfs f7, 0xd4(r1) +/* 8015B470 001583D0 D0 C1 00 D8 */ stfs f6, 0xd8(r1) +/* 8015B474 001583D4 D0 A1 00 DC */ stfs f5, 0xdc(r1) +/* 8015B478 001583D8 D0 81 00 E0 */ stfs f4, 0xe0(r1) +/* 8015B47C 001583DC D0 61 00 0C */ stfs f3, 0xc(r1) +/* 8015B480 001583E0 D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 8015B484 001583E4 D0 21 00 60 */ stfs f1, 0x60(r1) +/* 8015B488 001583E8 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 8015B48C 001583EC 48 1B 5D D9 */ bl Transform__11CQuaternionCFRC9CVector3f +/* 8015B490 001583F0 38 61 00 50 */ addi r3, r1, 0x50 +/* 8015B494 001583F4 38 81 00 44 */ addi r4, r1, 0x44 +/* 8015B498 001583F8 48 1B 89 39 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8015B49C 001583FC 7C 65 1B 78 */ mr r5, r3 +/* 8015B4A0 00158400 38 61 00 68 */ addi r3, r1, 0x68 +/* 8015B4A4 00158404 38 81 00 5C */ addi r4, r1, 0x5c +/* 8015B4A8 00158408 38 C1 00 0C */ addi r6, r1, 0xc +/* 8015B4AC 0015840C 48 1B 61 E9 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 8015B4B0 00158410 C0 61 00 68 */ lfs f3, 0x68(r1) +/* 8015B4B4 00158414 38 81 00 C4 */ addi r4, r1, 0xc4 +/* 8015B4B8 00158418 C0 41 00 6C */ lfs f2, 0x6c(r1) +/* 8015B4BC 0015841C 7C 85 23 78 */ mr r5, r4 +/* 8015B4C0 00158420 C0 21 00 70 */ lfs f1, 0x70(r1) +/* 8015B4C4 00158424 38 61 00 24 */ addi r3, r1, 0x24 +/* 8015B4C8 00158428 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 8015B4CC 0015842C D0 61 00 C4 */ stfs f3, 0xc4(r1) +/* 8015B4D0 00158430 D0 41 00 C8 */ stfs f2, 0xc8(r1) +/* 8015B4D4 00158434 D0 21 00 CC */ stfs f1, 0xcc(r1) +/* 8015B4D8 00158438 D0 01 00 D0 */ stfs f0, 0xd0(r1) +/* 8015B4DC 0015843C 48 1B 5C C5 */ bl __ml__11CQuaternionCFRC11CQuaternion +/* 8015B4E0 00158440 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 8015B4E4 00158444 38 61 01 48 */ addi r3, r1, 0x148 +/* 8015B4E8 00158448 80 C1 00 28 */ lwz r6, 0x28(r1) +/* 8015B4EC 0015844C 38 81 00 C4 */ addi r4, r1, 0xc4 +/* 8015B4F0 00158450 80 A1 00 2C */ lwz r5, 0x2c(r1) +/* 8015B4F4 00158454 80 01 00 30 */ lwz r0, 0x30(r1) +/* 8015B4F8 00158458 D0 01 00 C4 */ stfs f0, 0xc4(r1) +/* 8015B4FC 0015845C 90 C1 00 C8 */ stw r6, 0xc8(r1) +/* 8015B500 00158460 90 A1 00 CC */ stw r5, 0xcc(r1) +/* 8015B504 00158464 90 01 00 D0 */ stw r0, 0xd0(r1) +/* 8015B508 00158468 48 1B 6B 85 */ bl BuildTransform__11CQuaternionCFv +/* 8015B50C 0015846C C3 81 01 64 */ lfs f28, 0x164(r1) +/* 8015B510 00158470 38 61 01 24 */ addi r3, r1, 0x124 +/* 8015B514 00158474 C3 A1 01 58 */ lfs f29, 0x158(r1) +/* 8015B518 00158478 38 9F 00 50 */ addi r4, r31, 0x50 +/* 8015B51C 0015847C C3 C1 01 4C */ lfs f30, 0x14c(r1) +/* 8015B520 00158480 48 1B 6B 6D */ bl BuildTransform__11CQuaternionCFv +/* 8015B524 00158484 C0 01 01 34 */ lfs f0, 0x134(r1) +/* 8015B528 00158488 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8015B52C 0015848C EC 00 07 72 */ fmuls f0, f0, f29 +/* 8015B530 00158490 C0 21 01 28 */ lfs f1, 0x128(r1) +/* 8015B534 00158494 C0 63 01 38 */ lfs f3, 0x138(r3) +/* 8015B538 00158498 C0 41 01 40 */ lfs f2, 0x140(r1) +/* 8015B53C 0015849C EC 21 07 BA */ fmadds f1, f1, f30, f0 +/* 8015B540 001584A0 C0 82 9E BC */ lfs f4, lbl_805ABBDC@sda21(r2) +/* 8015B544 001584A4 EC 7F 00 F2 */ fmuls f3, f31, f3 +/* 8015B548 001584A8 C8 02 9E C0 */ lfd f0, lbl_805ABBE0@sda21(r2) +/* 8015B54C 001584AC EC 22 0F 3A */ fmadds f1, f2, f28, f1 +/* 8015B550 001584B0 EF C4 00 F2 */ fmuls f30, f4, f3 +/* 8015B554 001584B4 FC 40 0A 10 */ fabs f2, f1 +/* 8015B558 001584B8 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8015B55C 001584BC 40 81 00 14 */ ble lbl_8015B570 +/* 8015B560 001584C0 C0 02 9E C8 */ lfs f0, lbl_805ABBE8@sda21(r2) +/* 8015B564 001584C4 C0 42 9E AC */ lfs f2, lbl_805ABBCC@sda21(r2) +/* 8015B568 001584C8 FC 01 00 AE */ fsel f0, f1, f2, f0 +/* 8015B56C 001584CC EC 22 00 32 */ fmuls f1, f2, f0 +lbl_8015B570: +/* 8015B570 001584D0 48 23 96 BD */ bl acos +/* 8015B574 001584D4 FC 40 08 18 */ frsp f2, f1 +/* 8015B578 001584D8 C0 22 9E CC */ lfs f1, lbl_805ABBEC@sda21(r2) +/* 8015B57C 001584DC C0 02 9E B0 */ lfs f0, lbl_805ABBD0@sda21(r2) +/* 8015B580 001584E0 EC 21 07 F2 */ fmuls f1, f1, f31 +/* 8015B584 001584E4 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8015B588 001584E8 40 81 00 08 */ ble lbl_8015B590 +/* 8015B58C 001584EC EC 1E 10 24 */ fdivs f0, f30, f2 +lbl_8015B590: +/* 8015B590 001584F0 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8015B594 001584F4 38 81 00 08 */ addi r4, r1, 8 +/* 8015B598 001584F8 38 6D 8C A8 */ addi r3, r13, lbl_805A7868@sda21 +/* 8015B59C 001584FC 38 AD 8C AC */ addi r5, r13, lbl_805A786C@sda21 +/* 8015B5A0 00158500 D0 01 00 08 */ stfs f0, 8(r1) +/* 8015B5A4 00158504 4B EB 0D 11 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8015B5A8 00158508 C0 23 00 00 */ lfs f1, 0(r3) +/* 8015B5AC 0015850C 38 61 00 34 */ addi r3, r1, 0x34 +/* 8015B5B0 00158510 38 9F 00 50 */ addi r4, r31, 0x50 +/* 8015B5B4 00158514 38 A1 00 C4 */ addi r5, r1, 0xc4 +/* 8015B5B8 00158518 48 1B 60 01 */ bl SlerpLocal__11CQuaternionFRC11CQuaternionRC11CQuaternionf +/* 8015B5BC 0015851C C0 01 00 34 */ lfs f0, 0x34(r1) +/* 8015B5C0 00158520 80 81 00 38 */ lwz r4, 0x38(r1) +/* 8015B5C4 00158524 80 61 00 3C */ lwz r3, 0x3c(r1) +/* 8015B5C8 00158528 80 01 00 40 */ lwz r0, 0x40(r1) +/* 8015B5CC 0015852C D0 01 00 C4 */ stfs f0, 0xc4(r1) +/* 8015B5D0 00158530 90 81 00 C8 */ stw r4, 0xc8(r1) +/* 8015B5D4 00158534 90 61 00 CC */ stw r3, 0xcc(r1) +/* 8015B5D8 00158538 90 01 00 D0 */ stw r0, 0xd0(r1) +/* 8015B5DC 0015853C D0 1F 00 50 */ stfs f0, 0x50(r31) +/* 8015B5E0 00158540 80 61 00 C8 */ lwz r3, 0xc8(r1) +/* 8015B5E4 00158544 80 01 00 CC */ lwz r0, 0xcc(r1) +/* 8015B5E8 00158548 90 7F 00 54 */ stw r3, 0x54(r31) +/* 8015B5EC 0015854C 90 1F 00 58 */ stw r0, 0x58(r31) +/* 8015B5F0 00158550 80 01 00 D0 */ lwz r0, 0xd0(r1) +/* 8015B5F4 00158554 90 1F 00 5C */ stw r0, 0x5c(r31) +/* 8015B5F8 00158558 C0 01 00 E4 */ lfs f0, 0xe4(r1) +/* 8015B5FC 0015855C D0 1F 00 60 */ stfs f0, 0x60(r31) +/* 8015B600 00158560 C0 01 00 E8 */ lfs f0, 0xe8(r1) +/* 8015B604 00158564 D0 1F 00 64 */ stfs f0, 0x64(r31) +/* 8015B608 00158568 C0 01 00 EC */ lfs f0, 0xec(r1) +/* 8015B60C 0015856C D0 1F 00 68 */ stfs f0, 0x68(r31) +lbl_8015B610: +/* 8015B610 00158570 E3 E1 02 08 */ psq_l f31, 520(r1), 0, qr0 +/* 8015B614 00158574 CB E1 02 00 */ lfd f31, 0x200(r1) +/* 8015B618 00158578 E3 C1 01 F8 */ psq_l f30, 504(r1), 0, qr0 +/* 8015B61C 0015857C CB C1 01 F0 */ lfd f30, 0x1f0(r1) +/* 8015B620 00158580 E3 A1 01 E8 */ psq_l f29, 488(r1), 0, qr0 +/* 8015B624 00158584 CB A1 01 E0 */ lfd f29, 0x1e0(r1) +/* 8015B628 00158588 E3 81 01 D8 */ psq_l f28, 472(r1), 0, qr0 +/* 8015B62C 0015858C CB 81 01 D0 */ lfd f28, 0x1d0(r1) +/* 8015B630 00158590 83 E1 01 CC */ lwz r31, 0x1cc(r1) +/* 8015B634 00158594 83 C1 01 C8 */ lwz r30, 0x1c8(r1) +/* 8015B638 00158598 83 A1 01 C4 */ lwz r29, 0x1c4(r1) +/* 8015B63C 0015859C 80 01 02 14 */ lwz r0, 0x214(r1) +/* 8015B640 001585A0 83 81 01 C0 */ lwz r28, 0x1c0(r1) +/* 8015B644 001585A4 7C 08 03 A6 */ mtlr r0 +/* 8015B648 001585A8 38 21 02 10 */ addi r1, r1, 0x210 +/* 8015B64C 001585AC 4E 80 00 20 */ blr + +.global __ct__20CSamusFaceReflectionFRC13CStateManager +__ct__20CSamusFaceReflectionFRC13CStateManager: +/* 8015B650 001585B0 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 8015B654 001585B4 7C 08 02 A6 */ mflr r0 +/* 8015B658 001585B8 80 82 9E A0 */ lwz r4, lbl_805ABBC0@sda21(r2) +/* 8015B65C 001585BC 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 8015B660 001585C0 93 E1 00 AC */ stw r31, 0xac(r1) +/* 8015B664 001585C4 7C 7F 1B 78 */ mr r31, r3 +/* 8015B668 001585C8 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 8015B66C 001585CC 81 83 00 00 */ lwz r12, 0(r3) +/* 8015B670 001585D0 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 8015B674 001585D4 7D 89 03 A6 */ mtctr r12 +/* 8015B678 001585D8 4E 80 04 21 */ bctrl +/* 8015B67C 001585DC 80 83 00 04 */ lwz r4, 4(r3) +/* 8015B680 001585E0 38 A0 00 01 */ li r5, 1 +/* 8015B684 001585E4 C0 02 9E AC */ lfs f0, lbl_805ABBCC@sda21(r2) +/* 8015B688 001585E8 38 00 00 00 */ li r0, 0 +/* 8015B68C 001585EC 80 C2 83 F0 */ lwz r6, lbl_805AA110@sda21(r2) +/* 8015B690 001585F0 38 61 00 58 */ addi r3, r1, 0x58 +/* 8015B694 001585F4 90 81 00 14 */ stw r4, 0x14(r1) +/* 8015B698 001585F8 38 81 00 14 */ addi r4, r1, 0x14 +/* 8015B69C 001585FC 90 C1 00 18 */ stw r6, 0x18(r1) +/* 8015B6A0 00158600 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8015B6A4 00158604 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 8015B6A8 00158608 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 8015B6AC 0015860C 98 A1 00 28 */ stb r5, 0x28(r1) +/* 8015B6B0 00158610 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8015B6B4 00158614 4B FB B4 A1 */ bl __ct__10CModelDataFRC8CAnimRes +/* 8015B6B8 00158618 7F E3 FB 78 */ mr r3, r31 +/* 8015B6BC 0015861C 38 81 00 58 */ addi r4, r1, 0x58 +/* 8015B6C0 00158620 4B EB D6 CD */ bl __ct__10CModelDataFRC10CModelData +/* 8015B6C4 00158624 38 61 00 58 */ addi r3, r1, 0x58 +/* 8015B6C8 00158628 38 80 FF FF */ li r4, -1 +/* 8015B6CC 0015862C 4B FB B3 81 */ bl __dt__10CModelDataFv +/* 8015B6D0 00158630 3C 80 80 3D */ lis r4, lbl_803D0340@ha +/* 8015B6D4 00158634 38 60 02 E0 */ li r3, 0x2e0 +/* 8015B6D8 00158638 38 84 03 40 */ addi r4, r4, lbl_803D0340@l +/* 8015B6DC 0015863C 38 A0 00 00 */ li r5, 0 +/* 8015B6E0 00158640 38 84 00 0E */ addi r4, r4, 0xe +/* 8015B6E4 00158644 48 1B A1 89 */ bl __nw__FUlPCcPCc +/* 8015B6E8 00158648 7C 60 1B 79 */ or. r0, r3, r3 +/* 8015B6EC 0015864C 41 82 00 4C */ beq lbl_8015B738 +/* 8015B6F0 00158650 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8015B6F4 00158654 C0 22 94 04 */ lfs f1, lbl_805AB124@sda21(r2) +/* 8015B6F8 00158658 38 E4 66 A0 */ addi r7, r4, skZero3f@l +/* 8015B6FC 0015865C 38 A1 00 08 */ addi r5, r1, 8 +/* 8015B700 00158660 81 07 00 00 */ lwz r8, 0(r7) +/* 8015B704 00158664 38 80 00 08 */ li r4, 8 +/* 8015B708 00158668 81 67 00 04 */ lwz r11, 4(r7) +/* 8015B70C 0015866C 38 C0 00 04 */ li r6, 4 +/* 8015B710 00158670 80 07 00 08 */ lwz r0, 8(r7) +/* 8015B714 00158674 38 E0 00 04 */ li r7, 4 +/* 8015B718 00158678 91 01 00 08 */ stw r8, 8(r1) +/* 8015B71C 0015867C 39 00 00 00 */ li r8, 0 +/* 8015B720 00158680 39 20 00 00 */ li r9, 0 +/* 8015B724 00158684 39 40 00 00 */ li r10, 0 +/* 8015B728 00158688 91 61 00 0C */ stw r11, 0xc(r1) +/* 8015B72C 0015868C 90 01 00 10 */ stw r0, 0x10(r1) +/* 8015B730 00158690 4B FA 9A 9D */ bl __ct__12CActorLightsFUi9CVector3fiif +/* 8015B734 00158694 7C 60 1B 78 */ mr r0, r3 +lbl_8015B738: +/* 8015B738 00158698 3C 60 80 5A */ lis r3, lbl_805A6660@ha +/* 8015B73C 0015869C 90 1F 00 4C */ stw r0, 0x4c(r31) +/* 8015B740 001586A0 39 03 66 60 */ addi r8, r3, lbl_805A6660@l +/* 8015B744 001586A4 3C 60 80 5A */ lis r3, lbl_805A6724@ha +/* 8015B748 001586A8 C0 08 00 00 */ lfs f0, 0(r8) +/* 8015B74C 001586AC 38 E3 67 24 */ addi r7, r3, lbl_805A6724@l +/* 8015B750 001586B0 38 C0 00 00 */ li r6, 0 +/* 8015B754 001586B4 38 60 00 01 */ li r3, 1 +/* 8015B758 001586B8 D0 1F 00 50 */ stfs f0, 0x50(r31) +/* 8015B75C 001586BC 38 00 FF FF */ li r0, -1 +/* 8015B760 001586C0 C0 02 9E AC */ lfs f0, lbl_805ABBCC@sda21(r2) +/* 8015B764 001586C4 38 81 00 30 */ addi r4, r1, 0x30 +/* 8015B768 001586C8 C0 28 00 04 */ lfs f1, 4(r8) +/* 8015B76C 001586CC 38 A0 00 00 */ li r5, 0 +/* 8015B770 001586D0 D0 3F 00 54 */ stfs f1, 0x54(r31) +/* 8015B774 001586D4 C0 28 00 08 */ lfs f1, 8(r8) +/* 8015B778 001586D8 D0 3F 00 58 */ stfs f1, 0x58(r31) +/* 8015B77C 001586DC C0 28 00 0C */ lfs f1, 0xc(r8) +/* 8015B780 001586E0 D0 3F 00 5C */ stfs f1, 0x5c(r31) +/* 8015B784 001586E4 C0 27 00 00 */ lfs f1, 0(r7) +/* 8015B788 001586E8 D0 3F 00 60 */ stfs f1, 0x60(r31) +/* 8015B78C 001586EC C0 27 00 04 */ lfs f1, 4(r7) +/* 8015B790 001586F0 D0 3F 00 64 */ stfs f1, 0x64(r31) +/* 8015B794 001586F4 C0 27 00 08 */ lfs f1, 8(r7) +/* 8015B798 001586F8 D0 3F 00 68 */ stfs f1, 0x68(r31) +/* 8015B79C 001586FC 90 DF 00 6C */ stw r6, 0x6c(r31) +/* 8015B7A0 00158700 98 7F 00 70 */ stb r3, 0x70(r31) +/* 8015B7A4 00158704 90 C1 00 30 */ stw r6, 0x30(r1) +/* 8015B7A8 00158708 90 01 00 34 */ stw r0, 0x34(r1) +/* 8015B7AC 0015870C D0 01 00 38 */ stfs f0, 0x38(r1) +/* 8015B7B0 00158710 98 61 00 3C */ stb r3, 0x3c(r1) +/* 8015B7B4 00158714 90 C1 00 40 */ stw r6, 0x40(r1) +/* 8015B7B8 00158718 90 C1 00 44 */ stw r6, 0x44(r1) +/* 8015B7BC 0015871C 98 C1 00 48 */ stb r6, 0x48(r1) +/* 8015B7C0 00158720 90 C1 00 4C */ stw r6, 0x4c(r1) +/* 8015B7C4 00158724 90 C1 00 50 */ stw r6, 0x50(r1) +/* 8015B7C8 00158728 90 C1 00 54 */ stw r6, 0x54(r1) +/* 8015B7CC 0015872C 80 7F 00 10 */ lwz r3, 0x10(r31) +/* 8015B7D0 00158730 4B ED 15 AD */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb +/* 8015B7D4 00158734 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 8015B7D8 00158738 7F E3 FB 78 */ mr r3, r31 +/* 8015B7DC 0015873C 83 E1 00 AC */ lwz r31, 0xac(r1) +/* 8015B7E0 00158740 7C 08 03 A6 */ mtlr r0 +/* 8015B7E4 00158744 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 8015B7E8 00158748 4E 80 00 20 */ blr + +.global __sinit_CSamusFaceReflection_cpp +__sinit_CSamusFaceReflection_cpp: +/* 8015B7EC 0015874C 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 8015B7F0 00158750 7C 08 02 A6 */ mflr r0 +/* 8015B7F4 00158754 C0 22 9E B0 */ lfs f1, lbl_805ABBD0@sda21(r2) +/* 8015B7F8 00158758 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 8015B7FC 0015875C 38 61 00 14 */ addi r3, r1, 0x14 +/* 8015B800 00158760 C0 02 9E BC */ lfs f0, lbl_805ABBDC@sda21(r2) +/* 8015B804 00158764 38 81 00 08 */ addi r4, r1, 8 +/* 8015B808 00158768 D0 21 00 08 */ stfs f1, 8(r1) +/* 8015B80C 0015876C D0 01 00 0C */ stfs f0, 0xc(r1) +/* 8015B810 00158770 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 8015B814 00158774 48 1B 79 2D */ bl Translate__12CTransform4fFRC9CVector3f +/* 8015B818 00158778 C0 22 9E D0 */ lfs f1, lbl_805ABBF0@sda21(r2) +/* 8015B81C 0015877C 38 61 00 44 */ addi r3, r1, 0x44 +/* 8015B820 00158780 48 1B 7A 21 */ bl Scale__12CTransform4fFf +/* 8015B824 00158784 38 61 00 74 */ addi r3, r1, 0x74 +/* 8015B828 00158788 38 81 00 44 */ addi r4, r1, 0x44 +/* 8015B82C 0015878C 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8015B830 00158790 48 1B 71 21 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8015B834 00158794 3C 60 80 47 */ lis r3, lbl_8046C7A0@ha +/* 8015B838 00158798 38 81 00 74 */ addi r4, r1, 0x74 +/* 8015B83C 0015879C 38 63 C7 A0 */ addi r3, r3, lbl_8046C7A0@l +/* 8015B840 001587A0 48 1B 73 35 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8015B844 001587A4 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 8015B848 001587A8 7C 08 03 A6 */ mtlr r0 +/* 8015B84C 001587AC 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 8015B850 001587B0 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Player/CScanDisplay.s b/asm/Kyoto_CWD/Player/CScanDisplay.s new file mode 100644 index 00000000..db424cea --- /dev/null +++ b/asm/Kyoto_CWD/Player/CScanDisplay.s @@ -0,0 +1,2331 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global GetDownloadFraction__12CScanDisplayFif +GetDownloadFraction__12CScanDisplayFif: +/* 80172A9C 0016F9FC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80172AA0 0016FA00 7C 08 02 A6 */ mflr r0 +/* 80172AA4 0016FA04 90 01 00 34 */ stw r0, 0x34(r1) +/* 80172AA8 0016FA08 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 80172AAC 0016FA0C F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 80172AB0 0016FA10 DB C1 00 10 */ stfd f30, 0x10(r1) +/* 80172AB4 0016FA14 F3 C1 00 18 */ psq_st f30, 24(r1), 0, qr0 +/* 80172AB8 0016FA18 88 03 00 9C */ lbz r0, 0x9c(r3) +/* 80172ABC 0016FA1C FF C0 08 90 */ fmr f30, f1 +/* 80172AC0 0016FA20 28 00 00 00 */ cmplwi r0, 0 +/* 80172AC4 0016FA24 40 82 00 0C */ bne lbl_80172AD0 +/* 80172AC8 0016FA28 C0 22 A1 10 */ lfs f1, lbl_805ABE30@sda21(r2) +/* 80172ACC 0016FA2C 48 00 00 48 */ b lbl_80172B14 +lbl_80172AD0: +/* 80172AD0 0016FA30 1C 04 00 1C */ mulli r0, r4, 0x1c +/* 80172AD4 0016FA34 7C A3 02 14 */ add r5, r3, r0 +/* 80172AD8 0016FA38 C3 E5 00 30 */ lfs f31, 0x30(r5) +/* 80172ADC 0016FA3C 48 00 00 59 */ bl GetDownloadStartTime__12CScanDisplayFi +/* 80172AE0 0016FA40 FC 01 F8 00 */ fcmpu cr0, f1, f31 +/* 80172AE4 0016FA44 40 82 00 0C */ bne lbl_80172AF0 +/* 80172AE8 0016FA48 C0 22 A1 14 */ lfs f1, lbl_805ABE34@sda21(r2) +/* 80172AEC 0016FA4C 48 00 00 28 */ b lbl_80172B14 +lbl_80172AF0: +/* 80172AF0 0016FA50 EC 5E 08 28 */ fsubs f2, f30, f1 +/* 80172AF4 0016FA54 38 81 00 08 */ addi r4, r1, 8 +/* 80172AF8 0016FA58 EC 1F 08 28 */ fsubs f0, f31, f1 +/* 80172AFC 0016FA5C 38 6D 8E 38 */ addi r3, r13, lbl_805A79F8@sda21 +/* 80172B00 0016FA60 38 AD 8E 3C */ addi r5, r13, lbl_805A79FC@sda21 +/* 80172B04 0016FA64 EC 02 00 24 */ fdivs f0, f2, f0 +/* 80172B08 0016FA68 D0 01 00 08 */ stfs f0, 8(r1) +/* 80172B0C 0016FA6C 4B E9 97 A9 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 80172B10 0016FA70 C0 23 00 00 */ lfs f1, 0(r3) +lbl_80172B14: +/* 80172B14 0016FA74 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 80172B18 0016FA78 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 80172B1C 0016FA7C E3 C1 00 18 */ psq_l f30, 24(r1), 0, qr0 +/* 80172B20 0016FA80 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80172B24 0016FA84 CB C1 00 10 */ lfd f30, 0x10(r1) +/* 80172B28 0016FA88 7C 08 03 A6 */ mtlr r0 +/* 80172B2C 0016FA8C 38 21 00 30 */ addi r1, r1, 0x30 +/* 80172B30 0016FA90 4E 80 00 20 */ blr + +.global GetDownloadStartTime__12CScanDisplayFi +GetDownloadStartTime__12CScanDisplayFi: +/* 80172B34 0016FA94 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80172B38 0016FA98 88 03 00 9C */ lbz r0, 0x9c(r3) +/* 80172B3C 0016FA9C 28 00 00 00 */ cmplwi r0, 0 +/* 80172B40 0016FAA0 40 82 00 0C */ bne lbl_80172B4C +/* 80172B44 0016FAA4 C0 22 A1 10 */ lfs f1, lbl_805ABE30@sda21(r2) +/* 80172B48 0016FAA8 48 00 00 F0 */ b lbl_80172C38 +lbl_80172B4C: +/* 80172B4C 0016FAAC 1C 84 00 1C */ mulli r4, r4, 0x1c +/* 80172B50 0016FAB0 38 A3 00 2C */ addi r5, r3, 0x2c +/* 80172B54 0016FAB4 C0 23 00 30 */ lfs f1, 0x30(r3) +/* 80172B58 0016FAB8 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) +/* 80172B5C 0016FABC 38 04 00 04 */ addi r0, r4, 4 +/* 80172B60 0016FAC0 D0 21 00 08 */ stfs f1, 8(r1) +/* 80172B64 0016FAC4 7C 45 04 2E */ lfsx f2, r5, r0 +/* 80172B68 0016FAC8 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 80172B6C 0016FACC FC 01 10 40 */ fcmpo cr0, f1, f2 +/* 80172B70 0016FAD0 40 80 00 24 */ bge lbl_80172B94 +/* 80172B74 0016FAD4 FC 00 00 18 */ frsp f0, f0 +/* 80172B78 0016FAD8 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80172B7C 0016FADC 40 80 00 0C */ bge lbl_80172B88 +/* 80172B80 0016FAE0 38 61 00 08 */ addi r3, r1, 8 +/* 80172B84 0016FAE4 48 00 00 08 */ b lbl_80172B8C +lbl_80172B88: +/* 80172B88 0016FAE8 38 61 00 0C */ addi r3, r1, 0xc +lbl_80172B8C: +/* 80172B8C 0016FAEC C0 03 00 00 */ lfs f0, 0(r3) +/* 80172B90 0016FAF0 D0 01 00 0C */ stfs f0, 0xc(r1) +lbl_80172B94: +/* 80172B94 0016FAF4 C0 25 00 20 */ lfs f1, 0x20(r5) +/* 80172B98 0016FAF8 FC 01 10 40 */ fcmpo cr0, f1, f2 +/* 80172B9C 0016FAFC D0 21 00 08 */ stfs f1, 8(r1) +/* 80172BA0 0016FB00 40 80 00 24 */ bge lbl_80172BC4 +/* 80172BA4 0016FB04 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 80172BA8 0016FB08 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80172BAC 0016FB0C 40 80 00 0C */ bge lbl_80172BB8 +/* 80172BB0 0016FB10 38 61 00 08 */ addi r3, r1, 8 +/* 80172BB4 0016FB14 48 00 00 08 */ b lbl_80172BBC +lbl_80172BB8: +/* 80172BB8 0016FB18 38 61 00 0C */ addi r3, r1, 0xc +lbl_80172BBC: +/* 80172BBC 0016FB1C C0 03 00 00 */ lfs f0, 0(r3) +/* 80172BC0 0016FB20 D0 01 00 0C */ stfs f0, 0xc(r1) +lbl_80172BC4: +/* 80172BC4 0016FB24 C0 25 00 3C */ lfs f1, 0x3c(r5) +/* 80172BC8 0016FB28 FC 01 10 40 */ fcmpo cr0, f1, f2 +/* 80172BCC 0016FB2C D0 21 00 08 */ stfs f1, 8(r1) +/* 80172BD0 0016FB30 40 80 00 24 */ bge lbl_80172BF4 +/* 80172BD4 0016FB34 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 80172BD8 0016FB38 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80172BDC 0016FB3C 40 80 00 0C */ bge lbl_80172BE8 +/* 80172BE0 0016FB40 38 61 00 08 */ addi r3, r1, 8 +/* 80172BE4 0016FB44 48 00 00 08 */ b lbl_80172BEC +lbl_80172BE8: +/* 80172BE8 0016FB48 38 61 00 0C */ addi r3, r1, 0xc +lbl_80172BEC: +/* 80172BEC 0016FB4C C0 03 00 00 */ lfs f0, 0(r3) +/* 80172BF0 0016FB50 D0 01 00 0C */ stfs f0, 0xc(r1) +lbl_80172BF4: +/* 80172BF4 0016FB54 C0 25 00 58 */ lfs f1, 0x58(r5) +/* 80172BF8 0016FB58 FC 01 10 40 */ fcmpo cr0, f1, f2 +/* 80172BFC 0016FB5C D0 21 00 08 */ stfs f1, 8(r1) +/* 80172C00 0016FB60 40 80 00 24 */ bge lbl_80172C24 +/* 80172C04 0016FB64 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 80172C08 0016FB68 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80172C0C 0016FB6C 40 80 00 0C */ bge lbl_80172C18 +/* 80172C10 0016FB70 38 61 00 08 */ addi r3, r1, 8 +/* 80172C14 0016FB74 48 00 00 08 */ b lbl_80172C1C +lbl_80172C18: +/* 80172C18 0016FB78 38 61 00 0C */ addi r3, r1, 0xc +lbl_80172C1C: +/* 80172C1C 0016FB7C C0 03 00 00 */ lfs f0, 0(r3) +/* 80172C20 0016FB80 D0 01 00 0C */ stfs f0, 0xc(r1) +lbl_80172C24: +/* 80172C24 0016FB84 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 80172C28 0016FB88 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 80172C2C 0016FB8C C0 03 02 44 */ lfs f0, 0x244(r3) +/* 80172C30 0016FB90 EC 21 00 2A */ fadds f1, f1, f0 +/* 80172C34 0016FB94 D0 21 00 0C */ stfs f1, 0xc(r1) +lbl_80172C38: +/* 80172C38 0016FB98 38 21 00 10 */ addi r1, r1, 0x10 +/* 80172C3C 0016FB9C 4E 80 00 20 */ blr + +.global Draw__12CScanDisplayCFv +Draw__12CScanDisplayCFv: +/* 80172C40 0016FBA0 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80172C44 0016FBA4 7C 08 02 A6 */ mflr r0 +/* 80172C48 0016FBA8 90 01 00 44 */ stw r0, 0x44(r1) +/* 80172C4C 0016FBAC DB E1 00 30 */ stfd f31, 0x30(r1) +/* 80172C50 0016FBB0 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 80172C54 0016FBB4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80172C58 0016FBB8 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80172C5C 0016FBBC 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80172C60 0016FBC0 7C 7D 1B 78 */ mr r29, r3 +/* 80172C64 0016FBC4 83 C3 00 08 */ lwz r30, 8(r3) +/* 80172C68 0016FBC8 28 1E 00 00 */ cmplwi r30, 0 +/* 80172C6C 0016FBCC 41 82 00 B4 */ beq lbl_80172D20 +/* 80172C70 0016FBD0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80172C74 0016FBD4 38 80 00 00 */ li r4, 0 +/* 80172C78 0016FBD8 38 A0 00 00 */ li r5, 0 +/* 80172C7C 0016FBDC 81 83 00 00 */ lwz r12, 0(r3) +/* 80172C80 0016FBE0 81 8C 00 60 */ lwz r12, 0x60(r12) +/* 80172C84 0016FBE4 7D 89 03 A6 */ mtctr r12 +/* 80172C88 0016FBE8 4E 80 04 21 */ bctrl +/* 80172C8C 0016FBEC 80 8D A0 68 */ lwz r4, gpRender@sda21(r13) +/* 80172C90 0016FBF0 38 61 00 0C */ addi r3, r1, 0xc +/* 80172C94 0016FBF4 C0 22 A1 18 */ lfs f1, lbl_805ABE38@sda21(r2) +/* 80172C98 0016FBF8 38 A0 00 01 */ li r5, 1 +/* 80172C9C 0016FBFC 81 84 00 00 */ lwz r12, 0(r4) +/* 80172CA0 0016FC00 C0 42 A1 1C */ lfs f2, lbl_805ABE3C@sda21(r2) +/* 80172CA4 0016FC04 81 8C 00 54 */ lwz r12, 0x54(r12) +/* 80172CA8 0016FC08 7D 89 03 A6 */ mtctr r12 +/* 80172CAC 0016FC0C 4E 80 04 21 */ bctrl +/* 80172CB0 0016FC10 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80172CB4 0016FC14 81 83 00 00 */ lwz r12, 0(r3) +/* 80172CB8 0016FC18 81 8C 00 64 */ lwz r12, 0x64(r12) +/* 80172CBC 0016FC1C 7D 89 03 A6 */ mtctr r12 +/* 80172CC0 0016FC20 4E 80 04 21 */ bctrl +/* 80172CC4 0016FC24 3C 80 80 5A */ lis r4, lbl_805A5EBC@ha +/* 80172CC8 0016FC28 38 60 00 00 */ li r3, 0 +/* 80172CCC 0016FC2C 38 84 5E BC */ addi r4, r4, lbl_805A5EBC@l +/* 80172CD0 0016FC30 48 19 75 E9 */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass +/* 80172CD4 0016FC34 7F C3 F3 78 */ mr r3, r30 +/* 80172CD8 0016FC38 38 80 00 00 */ li r4, 0 +/* 80172CDC 0016FC3C 38 A0 00 01 */ li r5, 1 +/* 80172CE0 0016FC40 48 19 CA 5D */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +/* 80172CE4 0016FC44 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 80172CE8 0016FC48 3B DD 00 C0 */ addi r30, r29, 0xc0 +/* 80172CEC 0016FC4C 83 ED A1 3C */ lwz r31, gpTweakGuiColors@sda21(r13) +/* 80172CF0 0016FC50 3B A0 00 00 */ li r29, 0 +/* 80172CF4 0016FC54 C3 E3 02 2C */ lfs f31, 0x22c(r3) +lbl_80172CF8: +/* 80172CF8 0016FC58 80 1F 01 38 */ lwz r0, 0x138(r31) +/* 80172CFC 0016FC5C FC 20 F8 90 */ fmr f1, f31 +/* 80172D00 0016FC60 7F C3 F3 78 */ mr r3, r30 +/* 80172D04 0016FC64 38 81 00 08 */ addi r4, r1, 8 +/* 80172D08 0016FC68 90 01 00 08 */ stw r0, 8(r1) +/* 80172D0C 0016FC6C 48 00 1B E1 */ bl Draw__Q212CScanDisplay8CDataDotCF6CColorf +/* 80172D10 0016FC70 3B BD 00 01 */ addi r29, r29, 1 +/* 80172D14 0016FC74 3B DE 00 2C */ addi r30, r30, 0x2c +/* 80172D18 0016FC78 2C 1D 00 04 */ cmpwi r29, 4 +/* 80172D1C 0016FC7C 41 80 FF DC */ blt lbl_80172CF8 +lbl_80172D20: +/* 80172D20 0016FC80 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 80172D24 0016FC84 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80172D28 0016FC88 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 80172D2C 0016FC8C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80172D30 0016FC90 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80172D34 0016FC94 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80172D38 0016FC98 7C 08 03 A6 */ mtlr r0 +/* 80172D3C 0016FC9C 38 21 00 40 */ addi r1, r1, 0x40 +/* 80172D40 0016FCA0 4E 80 00 20 */ blr + +.global ProcessInput__12CScanDisplayFRC11CFinalInput +ProcessInput__12CScanDisplayFRC11CFinalInput: +/* 80172D44 0016FCA4 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 80172D48 0016FCA8 7C 08 02 A6 */ mflr r0 +/* 80172D4C 0016FCAC 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 80172D50 0016FCB0 DB E1 00 90 */ stfd f31, 0x90(r1) +/* 80172D54 0016FCB4 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 +/* 80172D58 0016FCB8 DB C1 00 80 */ stfd f30, 0x80(r1) +/* 80172D5C 0016FCBC F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 +/* 80172D60 0016FCC0 DB A1 00 70 */ stfd f29, 0x70(r1) +/* 80172D64 0016FCC4 F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0 +/* 80172D68 0016FCC8 DB 81 00 60 */ stfd f28, 0x60(r1) +/* 80172D6C 0016FCCC F3 81 00 68 */ psq_st f28, 104(r1), 0, qr0 +/* 80172D70 0016FCD0 DB 61 00 50 */ stfd f27, 0x50(r1) +/* 80172D74 0016FCD4 F3 61 00 58 */ psq_st f27, 88(r1), 0, qr0 +/* 80172D78 0016FCD8 DB 41 00 40 */ stfd f26, 0x40(r1) +/* 80172D7C 0016FCDC F3 41 00 48 */ psq_st f26, 72(r1), 0, qr0 +/* 80172D80 0016FCE0 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80172D84 0016FCE4 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80172D88 0016FCE8 93 A1 00 34 */ stw r29, 0x34(r1) +/* 80172D8C 0016FCEC 93 81 00 30 */ stw r28, 0x30(r1) +/* 80172D90 0016FCF0 7C 7F 1B 78 */ mr r31, r3 +/* 80172D94 0016FCF4 7C 9D 23 78 */ mr r29, r4 +/* 80172D98 0016FCF8 80 63 00 0C */ lwz r3, 0xc(r3) +/* 80172D9C 0016FCFC 38 00 00 00 */ li r0, 0 +/* 80172DA0 0016FD00 2C 03 00 00 */ cmpwi r3, 0 +/* 80172DA4 0016FD04 41 82 00 0C */ beq lbl_80172DB0 +/* 80172DA8 0016FD08 2C 03 00 04 */ cmpwi r3, 4 +/* 80172DAC 0016FD0C 40 82 00 08 */ bne lbl_80172DB4 +lbl_80172DB0: +/* 80172DB0 0016FD10 38 00 00 01 */ li r0, 1 +lbl_80172DB4: +/* 80172DB4 0016FD14 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 80172DB8 0016FD18 40 82 03 4C */ bne lbl_80173104 +/* 80172DBC 0016FD1C 80 1F 00 0C */ lwz r0, 0xc(r31) +/* 80172DC0 0016FD20 2C 00 00 02 */ cmpwi r0, 2 +/* 80172DC4 0016FD24 40 82 00 84 */ bne lbl_80172E48 +/* 80172DC8 0016FD28 C0 22 A1 10 */ lfs f1, lbl_805ABE30@sda21(r2) +/* 80172DCC 0016FD2C C0 1F 01 A4 */ lfs f0, 0x1a4(r31) +/* 80172DD0 0016FD30 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 80172DD4 0016FD34 40 82 00 74 */ bne lbl_80172E48 +/* 80172DD8 0016FD38 88 1D 00 2D */ lbz r0, 0x2d(r29) +/* 80172DDC 0016FD3C 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 80172DE0 0016FD40 41 82 01 A0 */ beq lbl_80172F80 +/* 80172DE4 0016FD44 80 7F 00 A8 */ lwz r3, 0xa8(r31) +/* 80172DE8 0016FD48 3B C3 00 D4 */ addi r30, r3, 0xd4 +/* 80172DEC 0016FD4C C3 83 01 10 */ lfs f28, 0x110(r3) +/* 80172DF0 0016FD50 7F C3 F3 78 */ mr r3, r30 +/* 80172DF4 0016FD54 48 15 52 B5 */ bl GetTotalAnimationTime__15CGuiTextSupportCFv +/* 80172DF8 0016FD58 FC 1C 08 40 */ fcmpo cr0, f28, f1 +/* 80172DFC 0016FD5C 40 80 00 14 */ bge lbl_80172E10 +/* 80172E00 0016FD60 7F C3 F3 78 */ mr r3, r30 +/* 80172E04 0016FD64 48 15 52 A5 */ bl GetTotalAnimationTime__15CGuiTextSupportCFv +/* 80172E08 0016FD68 D0 3E 00 3C */ stfs f1, 0x3c(r30) +/* 80172E0C 0016FD6C 48 00 01 74 */ b lbl_80172F80 +lbl_80172E10: +/* 80172E10 0016FD70 38 00 00 03 */ li r0, 3 +/* 80172E14 0016FD74 C0 02 A1 14 */ lfs f0, lbl_805ABE34@sda21(r2) +/* 80172E18 0016FD78 90 1F 00 0C */ stw r0, 0xc(r31) +/* 80172E1C 0016FD7C 38 61 00 2C */ addi r3, r1, 0x2c +/* 80172E20 0016FD80 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80172E24 0016FD84 38 80 05 9F */ li r4, 0x59f +/* 80172E28 0016FD88 D0 1F 01 A4 */ stfs f0, 0x1a4(r31) +/* 80172E2C 0016FD8C 38 A0 00 7F */ li r5, 0x7f +/* 80172E30 0016FD90 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80172E34 0016FD94 38 C0 00 40 */ li r6, 0x40 +/* 80172E38 0016FD98 38 E0 00 00 */ li r7, 0 +/* 80172E3C 0016FD9C 39 20 00 00 */ li r9, 0 +/* 80172E40 0016FDA0 48 17 6F 35 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80172E44 0016FDA4 48 00 01 3C */ b lbl_80172F80 +lbl_80172E48: +/* 80172E48 0016FDA8 2C 00 00 03 */ cmpwi r0, 3 +/* 80172E4C 0016FDAC 40 82 01 34 */ bne lbl_80172F80 +/* 80172E50 0016FDB0 80 7F 00 AC */ lwz r3, 0xac(r31) +/* 80172E54 0016FDB4 83 9F 01 AC */ lwz r28, 0x1ac(r31) +/* 80172E58 0016FDB8 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80172E5C 0016FDBC 48 15 4F FD */ bl GetTotalPageCount__15CGuiTextSupportFv +/* 80172E60 0016FDC0 88 1D 00 2D */ lbz r0, 0x2d(r29) +/* 80172E64 0016FDC4 7C 7E 1B 78 */ mr r30, r3 +/* 80172E68 0016FDC8 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 80172E6C 0016FDCC 41 82 00 74 */ beq lbl_80172EE0 +/* 80172E70 0016FDD0 2C 1E FF FF */ cmpwi r30, -1 +/* 80172E74 0016FDD4 41 82 00 6C */ beq lbl_80172EE0 +/* 80172E78 0016FDD8 2C 1C 00 00 */ cmpwi r28, 0 +/* 80172E7C 0016FDDC 40 82 00 10 */ bne lbl_80172E8C +/* 80172E80 0016FDE0 80 7F 00 A8 */ lwz r3, 0xa8(r31) +/* 80172E84 0016FDE4 3B A3 00 D4 */ addi r29, r3, 0xd4 +/* 80172E88 0016FDE8 48 00 00 0C */ b lbl_80172E94 +lbl_80172E8C: +/* 80172E8C 0016FDEC 80 7F 00 AC */ lwz r3, 0xac(r31) +/* 80172E90 0016FDF0 3B A3 00 D4 */ addi r29, r3, 0xd4 +lbl_80172E94: +/* 80172E94 0016FDF4 C3 9D 00 3C */ lfs f28, 0x3c(r29) +/* 80172E98 0016FDF8 7F A3 EB 78 */ mr r3, r29 +/* 80172E9C 0016FDFC 48 15 52 0D */ bl GetTotalAnimationTime__15CGuiTextSupportCFv +/* 80172EA0 0016FE00 FC 1C 08 40 */ fcmpo cr0, f28, f1 +/* 80172EA4 0016FE04 40 80 00 14 */ bge lbl_80172EB8 +/* 80172EA8 0016FE08 7F A3 EB 78 */ mr r3, r29 +/* 80172EAC 0016FE0C 48 15 51 FD */ bl GetTotalAnimationTime__15CGuiTextSupportCFv +/* 80172EB0 0016FE10 D0 3D 00 3C */ stfs f1, 0x3c(r29) +/* 80172EB4 0016FE14 48 00 00 2C */ b lbl_80172EE0 +lbl_80172EB8: +/* 80172EB8 0016FE18 93 C1 00 24 */ stw r30, 0x24(r1) +/* 80172EBC 0016FE1C 38 61 00 28 */ addi r3, r1, 0x28 +/* 80172EC0 0016FE20 80 9F 01 AC */ lwz r4, 0x1ac(r31) +/* 80172EC4 0016FE24 38 04 00 01 */ addi r0, r4, 1 +/* 80172EC8 0016FE28 7C 1E 00 00 */ cmpw r30, r0 +/* 80172ECC 0016FE2C 90 01 00 28 */ stw r0, 0x28(r1) +/* 80172ED0 0016FE30 40 80 00 08 */ bge lbl_80172ED8 +/* 80172ED4 0016FE34 38 61 00 24 */ addi r3, r1, 0x24 +lbl_80172ED8: +/* 80172ED8 0016FE38 80 03 00 00 */ lwz r0, 0(r3) +/* 80172EDC 0016FE3C 90 1F 01 AC */ stw r0, 0x1ac(r31) +lbl_80172EE0: +/* 80172EE0 0016FE40 80 1F 01 AC */ lwz r0, 0x1ac(r31) +/* 80172EE4 0016FE44 7C 00 E0 00 */ cmpw r0, r28 +/* 80172EE8 0016FE48 41 82 00 98 */ beq lbl_80172F80 +/* 80172EEC 0016FE4C A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80172EF0 0016FE50 38 61 00 20 */ addi r3, r1, 0x20 +/* 80172EF4 0016FE54 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80172EF8 0016FE58 38 80 05 9F */ li r4, 0x59f +/* 80172EFC 0016FE5C 38 A0 00 7F */ li r5, 0x7f +/* 80172F00 0016FE60 38 C0 00 40 */ li r6, 0x40 +/* 80172F04 0016FE64 38 E0 00 00 */ li r7, 0 +/* 80172F08 0016FE68 39 20 00 00 */ li r9, 0 +/* 80172F0C 0016FE6C 48 17 6E 69 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80172F10 0016FE70 80 1F 01 AC */ lwz r0, 0x1ac(r31) +/* 80172F14 0016FE74 2C 00 00 00 */ cmpwi r0, 0 +/* 80172F18 0016FE78 40 82 00 20 */ bne lbl_80172F38 +/* 80172F1C 0016FE7C 80 7F 00 A8 */ lwz r3, 0xa8(r31) +/* 80172F20 0016FE80 38 80 00 01 */ li r4, 1 +/* 80172F24 0016FE84 48 15 77 09 */ bl SetIsVisible__10CGuiWidgetFb +/* 80172F28 0016FE88 80 7F 00 AC */ lwz r3, 0xac(r31) +/* 80172F2C 0016FE8C 38 80 00 00 */ li r4, 0 +/* 80172F30 0016FE90 48 15 76 FD */ bl SetIsVisible__10CGuiWidgetFb +/* 80172F34 0016FE94 48 00 00 4C */ b lbl_80172F80 +lbl_80172F38: +/* 80172F38 0016FE98 2C 1C 00 00 */ cmpwi r28, 0 +/* 80172F3C 0016FE9C 40 82 00 1C */ bne lbl_80172F58 +/* 80172F40 0016FEA0 80 7F 00 A8 */ lwz r3, 0xa8(r31) +/* 80172F44 0016FEA4 38 80 00 00 */ li r4, 0 +/* 80172F48 0016FEA8 48 15 76 E5 */ bl SetIsVisible__10CGuiWidgetFb +/* 80172F4C 0016FEAC 80 7F 00 AC */ lwz r3, 0xac(r31) +/* 80172F50 0016FEB0 38 80 00 01 */ li r4, 1 +/* 80172F54 0016FEB4 48 15 76 D9 */ bl SetIsVisible__10CGuiWidgetFb +lbl_80172F58: +/* 80172F58 0016FEB8 80 7F 00 AC */ lwz r3, 0xac(r31) +/* 80172F5C 0016FEBC 80 9F 01 AC */ lwz r4, 0x1ac(r31) +/* 80172F60 0016FEC0 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80172F64 0016FEC4 38 84 FF FF */ addi r4, r4, -1 +/* 80172F68 0016FEC8 48 15 4E A1 */ bl SetPage__15CGuiTextSupportFi +/* 80172F6C 0016FECC 88 1F 01 B4 */ lbz r0, 0x1b4(r31) +/* 80172F70 0016FED0 80 7F 00 AC */ lwz r3, 0xac(r31) +/* 80172F74 0016FED4 7C 00 00 34 */ cntlzw r0, r0 +/* 80172F78 0016FED8 54 04 D9 7E */ srwi r4, r0, 5 +/* 80172F7C 0016FEDC 48 00 1B 45 */ bl SetScanMessageTypeEffect__12CScanDisplayFP12CGuiTextPaneb +lbl_80172F80: +/* 80172F80 0016FEE0 C3 62 A1 10 */ lfs f27, lbl_805ABE30@sda21(r2) +/* 80172F84 0016FEE4 80 1F 00 0C */ lwz r0, 0xc(r31) +/* 80172F88 0016FEE8 FF 40 D8 90 */ fmr f26, f27 +/* 80172F8C 0016FEEC FF 80 D8 90 */ fmr f28, f27 +/* 80172F90 0016FEF0 2C 00 00 02 */ cmpwi r0, 2 +/* 80172F94 0016FEF4 40 82 00 4C */ bne lbl_80172FE0 +/* 80172F98 0016FEF8 C0 42 A1 20 */ lfs f2, lbl_805ABE40@sda21(r2) +/* 80172F9C 0016FEFC C0 3F 01 A4 */ lfs f1, 0x1a4(r31) +/* 80172FA0 0016FF00 C0 0D 8E 34 */ lfs f0, lbl_805A79F4@sda21(r13) +/* 80172FA4 0016FF04 EC 22 00 72 */ fmuls f1, f2, f1 +/* 80172FA8 0016FF08 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80172FAC 0016FF0C D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 80172FB0 0016FF10 40 80 00 0C */ bge lbl_80172FBC +/* 80172FB4 0016FF14 38 61 00 1C */ addi r3, r1, 0x1c +/* 80172FB8 0016FF18 48 00 00 08 */ b lbl_80172FC0 +lbl_80172FBC: +/* 80172FBC 0016FF1C 38 6D 8E 34 */ addi r3, r13, lbl_805A79F4@sda21 +lbl_80172FC0: +/* 80172FC0 0016FF20 C0 1F 01 B0 */ lfs f0, 0x1b0(r31) +/* 80172FC4 0016FF24 C3 63 00 00 */ lfs f27, 0(r3) +/* 80172FC8 0016FF28 FC 40 02 10 */ fabs f2, f0 +/* 80172FCC 0016FF2C C0 02 A1 14 */ lfs f0, lbl_805ABE34@sda21(r2) +/* 80172FD0 0016FF30 EC 20 D8 28 */ fsubs f1, f0, f27 +/* 80172FD4 0016FF34 FC 00 10 18 */ frsp f0, f2 +/* 80172FD8 0016FF38 EF 41 00 32 */ fmuls f26, f1, f0 +/* 80172FDC 0016FF3C 48 00 00 38 */ b lbl_80173014 +lbl_80172FE0: +/* 80172FE0 0016FF40 2C 00 00 03 */ cmpwi r0, 3 +/* 80172FE4 0016FF44 40 82 00 30 */ bne lbl_80173014 +/* 80172FE8 0016FF48 80 7F 00 AC */ lwz r3, 0xac(r31) +/* 80172FEC 0016FF4C 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80172FF0 0016FF50 48 15 4E 69 */ bl GetTotalPageCount__15CGuiTextSupportFv +/* 80172FF4 0016FF54 80 1F 01 AC */ lwz r0, 0x1ac(r31) +/* 80172FF8 0016FF58 7C 00 18 00 */ cmpw r0, r3 +/* 80172FFC 0016FF5C 40 80 00 14 */ bge lbl_80173010 +/* 80173000 0016FF60 C0 1F 01 B0 */ lfs f0, 0x1b0(r31) +/* 80173004 0016FF64 FC 00 02 10 */ fabs f0, f0 +/* 80173008 0016FF68 FF 40 00 18 */ frsp f26, f0 +/* 8017300C 0016FF6C 48 00 00 08 */ b lbl_80173014 +lbl_80173010: +/* 80173010 0016FF70 C3 82 A1 14 */ lfs f28, lbl_805ABE34@sda21(r2) +lbl_80173014: +/* 80173014 0016FF74 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) +/* 80173018 0016FF78 80 7F 00 B0 */ lwz r3, 0xb0(r31) +/* 8017301C 0016FF7C FC 1B 00 40 */ fcmpo cr0, f27, f0 +/* 80173020 0016FF80 7C 00 00 26 */ mfcr r0 +/* 80173024 0016FF84 38 A0 00 01 */ li r5, 1 +/* 80173028 0016FF88 54 04 17 FE */ rlwinm r4, r0, 2, 0x1f, 0x1f +/* 8017302C 0016FF8C 48 15 76 BD */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80173030 0016FF90 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) +/* 80173034 0016FF94 80 7F 00 B4 */ lwz r3, 0xb4(r31) +/* 80173038 0016FF98 FC 1A 00 40 */ fcmpo cr0, f26, f0 +/* 8017303C 0016FF9C 7C 00 00 26 */ mfcr r0 +/* 80173040 0016FFA0 38 A0 00 01 */ li r5, 1 +/* 80173044 0016FFA4 54 04 17 FE */ rlwinm r4, r0, 2, 0x1f, 0x1f +/* 80173048 0016FFA8 48 15 76 A1 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 8017304C 0016FFAC C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) +/* 80173050 0016FFB0 80 7F 00 B8 */ lwz r3, 0xb8(r31) +/* 80173054 0016FFB4 FC 1C 00 40 */ fcmpo cr0, f28, f0 +/* 80173058 0016FFB8 7C 00 00 26 */ mfcr r0 +/* 8017305C 0016FFBC 38 A0 00 01 */ li r5, 1 +/* 80173060 0016FFC0 54 04 17 FE */ rlwinm r4, r0, 2, 0x1f, 0x1f +/* 80173064 0016FFC4 48 15 76 85 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80173068 0016FFC8 48 1D 6F 45 */ bl White__6CColorFv +/* 8017306C 0016FFCC C0 02 A1 24 */ lfs f0, lbl_805ABE44@sda21(r2) +/* 80173070 0016FFD0 EF E0 06 F2 */ fmuls f31, f0, f27 +/* 80173074 0016FFD4 F3 E1 A0 0A */ psq_st f31, 10(r1), 1, qr2 +/* 80173078 0016FFD8 38 81 00 18 */ addi r4, r1, 0x18 +/* 8017307C 0016FFDC 80 63 00 00 */ lwz r3, 0(r3) +/* 80173080 0016FFE0 88 01 00 0A */ lbz r0, 0xa(r1) +/* 80173084 0016FFE4 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 80173088 0016FFE8 90 01 00 18 */ stw r0, 0x18(r1) +/* 8017308C 0016FFEC 80 7F 00 B0 */ lwz r3, 0xb0(r31) +/* 80173090 0016FFF0 48 15 77 DD */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80173094 0016FFF4 48 1D 6F 19 */ bl White__6CColorFv +/* 80173098 0016FFF8 C0 02 A1 24 */ lfs f0, lbl_805ABE44@sda21(r2) +/* 8017309C 0016FFFC EF C0 06 B2 */ fmuls f30, f0, f26 +/* 801730A0 00170000 F3 C1 A0 09 */ psq_st f30, 9(r1), 1, qr2 +/* 801730A4 00170004 38 81 00 14 */ addi r4, r1, 0x14 +/* 801730A8 00170008 80 63 00 00 */ lwz r3, 0(r3) +/* 801730AC 0017000C 88 01 00 09 */ lbz r0, 9(r1) +/* 801730B0 00170010 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 801730B4 00170014 90 01 00 14 */ stw r0, 0x14(r1) +/* 801730B8 00170018 80 7F 00 B4 */ lwz r3, 0xb4(r31) +/* 801730BC 0017001C 48 15 77 B1 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 801730C0 00170020 C0 02 A1 24 */ lfs f0, lbl_805ABE44@sda21(r2) +/* 801730C4 00170024 38 00 00 FF */ li r0, 0xff +/* 801730C8 00170028 38 80 00 89 */ li r4, 0x89 +/* 801730CC 0017002C 38 60 00 D6 */ li r3, 0xd6 +/* 801730D0 00170030 EF A0 07 32 */ fmuls f29, f0, f28 +/* 801730D4 00170034 98 81 00 0C */ stb r4, 0xc(r1) +/* 801730D8 00170038 98 61 00 0D */ stb r3, 0xd(r1) +/* 801730DC 0017003C 98 01 00 0E */ stb r0, 0xe(r1) +/* 801730E0 00170040 98 01 00 0F */ stb r0, 0xf(r1) +/* 801730E4 00170044 F3 A1 A0 08 */ psq_st f29, 8(r1), 1, qr2 +/* 801730E8 00170048 38 81 00 10 */ addi r4, r1, 0x10 +/* 801730EC 0017004C 80 61 00 0C */ lwz r3, 0xc(r1) +/* 801730F0 00170050 88 01 00 08 */ lbz r0, 8(r1) +/* 801730F4 00170054 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 801730F8 00170058 90 01 00 10 */ stw r0, 0x10(r1) +/* 801730FC 0017005C 80 7F 00 B8 */ lwz r3, 0xb8(r31) +/* 80173100 00170060 48 15 77 6D */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_80173104: +/* 80173104 00170064 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 +/* 80173108 00170068 CB E1 00 90 */ lfd f31, 0x90(r1) +/* 8017310C 0017006C E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 +/* 80173110 00170070 CB C1 00 80 */ lfd f30, 0x80(r1) +/* 80173114 00170074 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0 +/* 80173118 00170078 CB A1 00 70 */ lfd f29, 0x70(r1) +/* 8017311C 0017007C E3 81 00 68 */ psq_l f28, 104(r1), 0, qr0 +/* 80173120 00170080 CB 81 00 60 */ lfd f28, 0x60(r1) +/* 80173124 00170084 E3 61 00 58 */ psq_l f27, 88(r1), 0, qr0 +/* 80173128 00170088 CB 61 00 50 */ lfd f27, 0x50(r1) +/* 8017312C 0017008C E3 41 00 48 */ psq_l f26, 72(r1), 0, qr0 +/* 80173130 00170090 CB 41 00 40 */ lfd f26, 0x40(r1) +/* 80173134 00170094 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80173138 00170098 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8017313C 0017009C 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 80173140 001700A0 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 80173144 001700A4 83 81 00 30 */ lwz r28, 0x30(r1) +/* 80173148 001700A8 7C 08 03 A6 */ mtlr r0 +/* 8017314C 001700AC 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 80173150 001700B0 4E 80 00 20 */ blr + +.global Update__12CScanDisplayFff +Update__12CScanDisplayFff: +/* 80173154 001700B4 94 21 FD F0 */ stwu r1, -0x210(r1) +/* 80173158 001700B8 7C 08 02 A6 */ mflr r0 +/* 8017315C 001700BC 90 01 02 14 */ stw r0, 0x214(r1) +/* 80173160 001700C0 DB E1 02 00 */ stfd f31, 0x200(r1) +/* 80173164 001700C4 F3 E1 02 08 */ psq_st f31, 520(r1), 0, qr0 +/* 80173168 001700C8 DB C1 01 F0 */ stfd f30, 0x1f0(r1) +/* 8017316C 001700CC F3 C1 01 F8 */ psq_st f30, 504(r1), 0, qr0 +/* 80173170 001700D0 DB A1 01 E0 */ stfd f29, 0x1e0(r1) +/* 80173174 001700D4 F3 A1 01 E8 */ psq_st f29, 488(r1), 0, qr0 +/* 80173178 001700D8 DB 81 01 D0 */ stfd f28, 0x1d0(r1) +/* 8017317C 001700DC F3 81 01 D8 */ psq_st f28, 472(r1), 0, qr0 +/* 80173180 001700E0 DB 61 01 C0 */ stfd f27, 0x1c0(r1) +/* 80173184 001700E4 F3 61 01 C8 */ psq_st f27, 456(r1), 0, qr0 +/* 80173188 001700E8 DB 41 01 B0 */ stfd f26, 0x1b0(r1) +/* 8017318C 001700EC F3 41 01 B8 */ psq_st f26, 440(r1), 0, qr0 +/* 80173190 001700F0 BE E1 01 8C */ stmw r23, 0x18c(r1) +/* 80173194 001700F4 7C 7F 1B 78 */ mr r31, r3 +/* 80173198 001700F8 FF 60 08 90 */ fmr f27, f1 +/* 8017319C 001700FC 80 03 00 0C */ lwz r0, 0xc(r3) +/* 801731A0 00170100 FF 80 10 90 */ fmr f28, f2 +/* 801731A4 00170104 2C 00 00 00 */ cmpwi r0, 0 +/* 801731A8 00170108 40 82 00 14 */ bne lbl_801731BC +/* 801731AC 0017010C 38 00 00 00 */ li r0, 0 +/* 801731B0 00170110 90 1F 00 08 */ stw r0, 8(r31) +/* 801731B4 00170114 48 1C DB 8D */ bl Unlock__6CTokenFv +/* 801731B8 00170118 48 00 0B 9C */ b lbl_80173D54 +lbl_801731BC: +/* 801731BC 0017011C 48 1C DB C9 */ bl Lock__6CTokenFv +/* 801731C0 00170120 80 1F 00 08 */ lwz r0, 8(r31) +/* 801731C4 00170124 28 00 00 00 */ cmplwi r0, 0 +/* 801731C8 00170128 40 82 00 30 */ bne lbl_801731F8 +/* 801731CC 0017012C 88 1F 00 04 */ lbz r0, 4(r31) +/* 801731D0 00170130 28 00 00 00 */ cmplwi r0, 0 +/* 801731D4 00170134 41 82 00 24 */ beq lbl_801731F8 +/* 801731D8 00170138 80 7F 00 00 */ lwz r3, 0(r31) +/* 801731DC 0017013C 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801731E0 00170140 28 00 00 00 */ cmplwi r0, 0 +/* 801731E4 00170144 41 82 00 14 */ beq lbl_801731F8 +/* 801731E8 00170148 7F E3 FB 78 */ mr r3, r31 +/* 801731EC 0017014C 48 1C DC 21 */ bl GetObj__6CTokenFv +/* 801731F0 00170150 80 03 00 04 */ lwz r0, 4(r3) +/* 801731F4 00170154 90 1F 00 08 */ stw r0, 8(r31) +lbl_801731F8: +/* 801731F8 00170158 80 1F 00 0C */ lwz r0, 0xc(r31) +/* 801731FC 0017015C 3B C0 00 00 */ li r30, 0 +/* 80173200 00170160 2C 00 00 04 */ cmpwi r0, 4 +/* 80173204 00170164 40 82 00 4C */ bne lbl_80173250 +/* 80173208 00170168 C0 42 A1 20 */ lfs f2, lbl_805ABE40@sda21(r2) +/* 8017320C 0017016C C0 3F 01 A8 */ lfs f1, 0x1a8(r31) +/* 80173210 00170170 C0 0D 8E 24 */ lfs f0, lbl_805A79E4@sda21(r13) +/* 80173214 00170174 EC 22 0E FC */ fnmsubs f1, f2, f27, f1 +/* 80173218 00170178 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8017321C 0017017C D0 21 00 34 */ stfs f1, 0x34(r1) +/* 80173220 00170180 40 80 00 0C */ bge lbl_8017322C +/* 80173224 00170184 38 61 00 34 */ addi r3, r1, 0x34 +/* 80173228 00170188 48 00 00 08 */ b lbl_80173230 +lbl_8017322C: +/* 8017322C 0017018C 38 6D 8E 24 */ addi r3, r13, lbl_805A79E4@sda21 +lbl_80173230: +/* 80173230 00170190 C0 23 00 00 */ lfs f1, 0(r3) +/* 80173234 00170194 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) +/* 80173238 00170198 D0 3F 01 A8 */ stfs f1, 0x1a8(r31) +/* 8017323C 0017019C C0 3F 01 A8 */ lfs f1, 0x1a8(r31) +/* 80173240 001701A0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80173244 001701A4 40 81 03 54 */ ble lbl_80173598 +/* 80173248 001701A8 3B C0 00 01 */ li r30, 1 +/* 8017324C 001701AC 48 00 03 4C */ b lbl_80173598 +lbl_80173250: +/* 80173250 001701B0 C0 02 A1 20 */ lfs f0, lbl_805ABE40@sda21(r2) +/* 80173254 001701B4 3B C0 00 01 */ li r30, 1 +/* 80173258 001701B8 C0 3F 01 A8 */ lfs f1, 0x1a8(r31) +/* 8017325C 001701BC EF A0 06 F2 */ fmuls f29, f0, f27 +/* 80173260 001701C0 C0 0D 8E 28 */ lfs f0, lbl_805A79E8@sda21(r13) +/* 80173264 001701C4 EC 21 E8 2A */ fadds f1, f1, f29 +/* 80173268 001701C8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8017326C 001701CC D0 21 00 30 */ stfs f1, 0x30(r1) +/* 80173270 001701D0 40 80 00 0C */ bge lbl_8017327C +/* 80173274 001701D4 38 61 00 30 */ addi r3, r1, 0x30 +/* 80173278 001701D8 48 00 00 08 */ b lbl_80173280 +lbl_8017327C: +/* 8017327C 001701DC 38 6D 8E 28 */ addi r3, r13, lbl_805A79E8@sda21 +lbl_80173280: +/* 80173280 001701E0 C0 03 00 00 */ lfs f0, 0(r3) +/* 80173284 001701E4 D0 1F 01 A8 */ stfs f0, 0x1a8(r31) +/* 80173288 001701E8 80 1F 00 0C */ lwz r0, 0xc(r31) +/* 8017328C 001701EC 2C 00 00 02 */ cmpwi r0, 2 +/* 80173290 001701F0 40 82 00 80 */ bne lbl_80173310 +/* 80173294 001701F4 80 7F 00 AC */ lwz r3, 0xac(r31) +/* 80173298 001701F8 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8017329C 001701FC 48 15 69 C9 */ bl GetIsTextSupportFinishedLoading__15CGuiTextSupportCFv +/* 801732A0 00170200 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801732A4 00170204 41 82 00 30 */ beq lbl_801732D4 +/* 801732A8 00170208 C0 3F 01 A4 */ lfs f1, 0x1a4(r31) +/* 801732AC 0017020C C0 0D 8E 2C */ lfs f0, lbl_805A79EC@sda21(r13) +/* 801732B0 00170210 EC 21 D8 28 */ fsubs f1, f1, f27 +/* 801732B4 00170214 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801732B8 00170218 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801732BC 0017021C 40 80 00 0C */ bge lbl_801732C8 +/* 801732C0 00170220 38 61 00 2C */ addi r3, r1, 0x2c +/* 801732C4 00170224 48 00 00 08 */ b lbl_801732CC +lbl_801732C8: +/* 801732C8 00170228 38 6D 8E 2C */ addi r3, r13, lbl_805A79EC@sda21 +lbl_801732CC: +/* 801732CC 0017022C C0 03 00 00 */ lfs f0, 0(r3) +/* 801732D0 00170230 D0 1F 01 A4 */ stfs f0, 0x1a4(r31) +lbl_801732D4: +/* 801732D4 00170234 C0 3F 01 A4 */ lfs f1, 0x1a4(r31) +/* 801732D8 00170238 C0 02 A1 28 */ lfs f0, lbl_805ABE48@sda21(r2) +/* 801732DC 0017023C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801732E0 00170240 40 80 02 B8 */ bge lbl_80173598 +/* 801732E4 00170244 C0 3F 01 B0 */ lfs f1, 0x1b0(r31) +/* 801732E8 00170248 C0 02 A1 14 */ lfs f0, lbl_805ABE34@sda21(r2) +/* 801732EC 0017024C EC 21 E8 2A */ fadds f1, f1, f29 +/* 801732F0 00170250 D0 3F 01 B0 */ stfs f1, 0x1b0(r31) +/* 801732F4 00170254 C0 3F 01 B0 */ lfs f1, 0x1b0(r31) +/* 801732F8 00170258 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801732FC 0017025C 40 81 02 9C */ ble lbl_80173598 +/* 80173300 00170260 C0 02 A1 20 */ lfs f0, lbl_805ABE40@sda21(r2) +/* 80173304 00170264 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80173308 00170268 D0 1F 01 B0 */ stfs f0, 0x1b0(r31) +/* 8017330C 0017026C 48 00 02 8C */ b lbl_80173598 +lbl_80173310: +/* 80173310 00170270 2C 00 00 03 */ cmpwi r0, 3 +/* 80173314 00170274 40 82 00 90 */ bne lbl_801733A4 +/* 80173318 00170278 C0 3F 01 B0 */ lfs f1, 0x1b0(r31) +/* 8017331C 0017027C C0 02 A1 14 */ lfs f0, lbl_805ABE34@sda21(r2) +/* 80173320 00170280 EC 21 E8 2A */ fadds f1, f1, f29 +/* 80173324 00170284 D0 3F 01 B0 */ stfs f1, 0x1b0(r31) +/* 80173328 00170288 C0 3F 01 B0 */ lfs f1, 0x1b0(r31) +/* 8017332C 0017028C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80173330 00170290 40 81 00 10 */ ble lbl_80173340 +/* 80173334 00170294 C0 02 A1 20 */ lfs f0, lbl_805ABE40@sda21(r2) +/* 80173338 00170298 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8017333C 0017029C D0 1F 01 B0 */ stfs f0, 0x1b0(r31) +lbl_80173340: +/* 80173340 001702A0 C0 22 A1 14 */ lfs f1, lbl_805ABE34@sda21(r2) +/* 80173344 001702A4 C0 1F 01 A4 */ lfs f0, 0x1a4(r31) +/* 80173348 001702A8 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 8017334C 001702AC 40 82 02 4C */ bne lbl_80173598 +/* 80173350 001702B0 80 7F 01 9C */ lwz r3, 0x19c(r31) +/* 80173354 001702B4 38 80 00 00 */ li r4, 0 +/* 80173358 001702B8 48 1E 33 A5 */ bl GetString__12CStringTableCFi +/* 8017335C 001702BC 7C 64 1B 78 */ mr r4, r3 +/* 80173360 001702C0 38 61 00 98 */ addi r3, r1, 0x98 +/* 80173364 001702C4 38 C1 00 14 */ addi r6, r1, 0x14 +/* 80173368 001702C8 38 A0 FF FF */ li r5, -1 +/* 8017336C 001702CC 48 1C A4 51 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" +/* 80173370 001702D0 80 7F 00 A8 */ lwz r3, 0xa8(r31) +/* 80173374 001702D4 38 81 00 98 */ addi r4, r1, 0x98 +/* 80173378 001702D8 38 A0 00 00 */ li r5, 0 +/* 8017337C 001702DC 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80173380 001702E0 48 15 65 05 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80173384 001702E4 38 61 00 98 */ addi r3, r1, 0x98 +/* 80173388 001702E8 48 1C 9D AD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8017338C 001702EC 88 1F 01 B4 */ lbz r0, 0x1b4(r31) +/* 80173390 001702F0 80 7F 00 A8 */ lwz r3, 0xa8(r31) +/* 80173394 001702F4 7C 00 00 34 */ cntlzw r0, r0 +/* 80173398 001702F8 54 04 D9 7E */ srwi r4, r0, 5 +/* 8017339C 001702FC 48 00 17 25 */ bl SetScanMessageTypeEffect__12CScanDisplayFP12CGuiTextPaneb +/* 801733A0 00170300 48 00 01 F8 */ b lbl_80173598 +lbl_801733A4: +/* 801733A4 00170304 2C 00 00 01 */ cmpwi r0, 1 +/* 801733A8 00170308 40 82 01 F0 */ bne lbl_80173598 +/* 801733AC 0017030C C0 1F 00 1C */ lfs f0, 0x1c(r31) +/* 801733B0 00170310 FC 1C 00 40 */ fcmpo cr0, f28, f0 +/* 801733B4 00170314 4C 41 13 82 */ cror 2, 1, 2 +/* 801733B8 00170318 40 82 01 E0 */ bne lbl_80173598 +/* 801733BC 0017031C 88 1F 01 A0 */ lbz r0, 0x1a0(r31) +/* 801733C0 00170320 28 00 00 00 */ cmplwi r0, 0 +/* 801733C4 00170324 41 82 01 D4 */ beq lbl_80173598 +/* 801733C8 00170328 3A FF 01 94 */ addi r23, r31, 0x194 +/* 801733CC 0017032C 80 1F 01 9C */ lwz r0, 0x19c(r31) +/* 801733D0 00170330 28 00 00 00 */ cmplwi r0, 0 +/* 801733D4 00170334 41 82 00 0C */ beq lbl_801733E0 +/* 801733D8 00170338 38 60 00 01 */ li r3, 1 +/* 801733DC 0017033C 48 00 00 3C */ b lbl_80173418 +lbl_801733E0: +/* 801733E0 00170340 88 17 00 04 */ lbz r0, 4(r23) +/* 801733E4 00170344 28 00 00 00 */ cmplwi r0, 0 +/* 801733E8 00170348 41 82 00 2C */ beq lbl_80173414 +/* 801733EC 0017034C 80 77 00 00 */ lwz r3, 0(r23) +/* 801733F0 00170350 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801733F4 00170354 28 00 00 00 */ cmplwi r0, 0 +/* 801733F8 00170358 41 82 00 1C */ beq lbl_80173414 +/* 801733FC 0017035C 7E E3 BB 78 */ mr r3, r23 +/* 80173400 00170360 48 1C DA 0D */ bl GetObj__6CTokenFv +/* 80173404 00170364 80 03 00 04 */ lwz r0, 4(r3) +/* 80173408 00170368 38 60 00 01 */ li r3, 1 +/* 8017340C 0017036C 90 17 00 08 */ stw r0, 8(r23) +/* 80173410 00170370 48 00 00 08 */ b lbl_80173418 +lbl_80173414: +/* 80173414 00170374 38 60 00 00 */ li r3, 0 +lbl_80173418: +/* 80173418 00170378 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8017341C 0017037C 41 82 01 7C */ beq lbl_80173598 +/* 80173420 00170380 88 1F 01 B4 */ lbz r0, 0x1b4(r31) +/* 80173424 00170384 28 00 00 00 */ cmplwi r0, 0 +/* 80173428 00170388 40 82 00 10 */ bne lbl_80173438 +/* 8017342C 0017038C 80 1F 00 20 */ lwz r0, 0x20(r31) +/* 80173430 00170390 2C 00 00 00 */ cmpwi r0, 0 +/* 80173434 00170394 40 82 00 40 */ bne lbl_80173474 +lbl_80173438: +/* 80173438 00170398 38 00 00 03 */ li r0, 3 +/* 8017343C 0017039C C0 02 A1 14 */ lfs f0, lbl_805ABE34@sda21(r2) +/* 80173440 001703A0 90 1F 00 0C */ stw r0, 0xc(r31) +/* 80173444 001703A4 38 61 00 28 */ addi r3, r1, 0x28 +/* 80173448 001703A8 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8017344C 001703AC 38 80 05 89 */ li r4, 0x589 +/* 80173450 001703B0 D0 1F 01 A4 */ stfs f0, 0x1a4(r31) +/* 80173454 001703B4 38 A0 00 7F */ li r5, 0x7f +/* 80173458 001703B8 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8017345C 001703BC 38 C0 00 40 */ li r6, 0x40 +/* 80173460 001703C0 D0 1F 01 B0 */ stfs f0, 0x1b0(r31) +/* 80173464 001703C4 38 E0 00 00 */ li r7, 0 +/* 80173468 001703C8 39 20 00 00 */ li r9, 0 +/* 8017346C 001703CC 48 17 69 09 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80173470 001703D0 48 00 00 C0 */ b lbl_80173530 +lbl_80173474: +/* 80173474 001703D4 38 00 00 02 */ li r0, 2 +/* 80173478 001703D8 C0 02 A1 14 */ lfs f0, lbl_805ABE34@sda21(r2) +/* 8017347C 001703DC 90 1F 00 0C */ stw r0, 0xc(r31) +/* 80173480 001703E0 38 80 00 1D */ li r4, 0x1d +/* 80173484 001703E4 D0 1F 01 A4 */ stfs f0, 0x1a4(r31) +/* 80173488 001703E8 D0 1F 01 B0 */ stfs f0, 0x1b0(r31) +/* 8017348C 001703EC 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 80173490 001703F0 48 1E 32 6D */ bl GetString__12CStringTableCFi +/* 80173494 001703F4 7C 64 1B 78 */ mr r4, r3 +/* 80173498 001703F8 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 8017349C 001703FC 38 C1 00 10 */ addi r6, r1, 0x10 +/* 801734A0 00170400 38 A0 FF FF */ li r5, -1 +/* 801734A4 00170404 48 1C A3 19 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" +/* 801734A8 00170408 80 9F 00 20 */ lwz r4, 0x20(r31) +/* 801734AC 0017040C 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 801734B0 00170410 38 84 00 1E */ addi r4, r4, 0x1e +/* 801734B4 00170414 48 1E 32 49 */ bl GetString__12CStringTableCFi +/* 801734B8 00170418 7C 64 1B 78 */ mr r4, r3 +/* 801734BC 0017041C 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 801734C0 00170420 38 A0 FF FF */ li r5, -1 +/* 801734C4 00170424 48 1C A0 21 */ bl sub_8033d4e4 +/* 801734C8 00170428 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 801734CC 0017042C 38 80 00 1E */ li r4, 0x1e +/* 801734D0 00170430 48 1E 32 2D */ bl GetString__12CStringTableCFi +/* 801734D4 00170434 7C 64 1B 78 */ mr r4, r3 +/* 801734D8 00170438 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 801734DC 0017043C 38 A0 FF FF */ li r5, -1 +/* 801734E0 00170440 48 1C A0 05 */ bl sub_8033d4e4 +/* 801734E4 00170444 80 7F 00 A8 */ lwz r3, 0xa8(r31) +/* 801734E8 00170448 38 81 00 B4 */ addi r4, r1, 0xb4 +/* 801734EC 0017044C 38 A0 00 00 */ li r5, 0 +/* 801734F0 00170450 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 801734F4 00170454 48 15 63 91 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801734F8 00170458 80 7F 00 A8 */ lwz r3, 0xa8(r31) +/* 801734FC 0017045C 38 80 00 01 */ li r4, 1 +/* 80173500 00170460 48 00 15 C1 */ bl SetScanMessageTypeEffect__12CScanDisplayFP12CGuiTextPaneb +/* 80173504 00170464 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80173508 00170468 38 61 00 24 */ addi r3, r1, 0x24 +/* 8017350C 0017046C 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80173510 00170470 38 80 05 91 */ li r4, 0x591 +/* 80173514 00170474 38 A0 00 7F */ li r5, 0x7f +/* 80173518 00170478 38 C0 00 40 */ li r6, 0x40 +/* 8017351C 0017047C 38 E0 00 00 */ li r7, 0 +/* 80173520 00170480 39 20 00 00 */ li r9, 0 +/* 80173524 00170484 48 17 68 51 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80173528 00170488 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 8017352C 0017048C 48 1C 9C 09 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80173530: +/* 80173530 00170490 80 7F 01 9C */ lwz r3, 0x19c(r31) +/* 80173534 00170494 80 03 00 00 */ lwz r0, 0(r3) +/* 80173538 00170498 2C 00 00 02 */ cmpwi r0, 2 +/* 8017353C 0017049C 40 81 00 50 */ ble lbl_8017358C +/* 80173540 001704A0 38 80 00 02 */ li r4, 2 +/* 80173544 001704A4 48 1E 31 B9 */ bl GetString__12CStringTableCFi +/* 80173548 001704A8 7C 64 1B 78 */ mr r4, r3 +/* 8017354C 001704AC 38 61 00 88 */ addi r3, r1, 0x88 +/* 80173550 001704B0 38 C1 00 0C */ addi r6, r1, 0xc +/* 80173554 001704B4 38 A0 FF FF */ li r5, -1 +/* 80173558 001704B8 48 1C A2 65 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" +/* 8017355C 001704BC 80 7F 00 AC */ lwz r3, 0xac(r31) +/* 80173560 001704C0 38 81 00 88 */ addi r4, r1, 0x88 +/* 80173564 001704C4 38 A0 00 01 */ li r5, 1 +/* 80173568 001704C8 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8017356C 001704CC 48 15 63 19 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80173570 001704D0 38 61 00 88 */ addi r3, r1, 0x88 +/* 80173574 001704D4 48 1C 9B C1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80173578 001704D8 88 1F 01 B4 */ lbz r0, 0x1b4(r31) +/* 8017357C 001704DC 80 7F 00 AC */ lwz r3, 0xac(r31) +/* 80173580 001704E0 7C 00 00 34 */ cntlzw r0, r0 +/* 80173584 001704E4 54 04 D9 7E */ srwi r4, r0, 5 +/* 80173588 001704E8 48 00 15 39 */ bl SetScanMessageTypeEffect__12CScanDisplayFP12CGuiTextPaneb +lbl_8017358C: +/* 8017358C 001704EC 80 7F 00 AC */ lwz r3, 0xac(r31) +/* 80173590 001704F0 38 80 00 00 */ li r4, 0 +/* 80173594 001704F4 48 15 70 99 */ bl SetIsVisible__10CGuiWidgetFb +lbl_80173598: +/* 80173598 001704F8 3B 5F 01 74 */ addi r26, r31, 0x174 +/* 8017359C 001704FC 3B 7F 00 C0 */ addi r27, r31, 0xc0 +/* 801735A0 00170500 3B 20 00 00 */ li r25, 0 +/* 801735A4 00170504 7F 5D D3 78 */ mr r29, r26 +/* 801735A8 00170508 7F 7C DB 78 */ mr r28, r27 +lbl_801735AC: +/* 801735AC 0017050C 83 1D 00 04 */ lwz r24, 4(r29) +/* 801735B0 00170510 28 18 00 00 */ cmplwi r24, 0 +/* 801735B4 00170514 41 82 01 C8 */ beq lbl_8017377C +/* 801735B8 00170518 80 1F 00 0C */ lwz r0, 0xc(r31) +/* 801735BC 0017051C 2C 00 00 01 */ cmpwi r0, 1 +/* 801735C0 00170520 40 82 00 18 */ bne lbl_801735D8 +/* 801735C4 00170524 FC 20 E0 90 */ fmr f1, f28 +/* 801735C8 00170528 7F E3 FB 78 */ mr r3, r31 +/* 801735CC 0017052C 7F 24 CB 78 */ mr r4, r25 +/* 801735D0 00170530 4B FF F4 CD */ bl GetDownloadFraction__12CScanDisplayFif +/* 801735D4 00170534 48 00 00 08 */ b lbl_801735DC +lbl_801735D8: +/* 801735D8 00170538 C0 22 A1 14 */ lfs f1, lbl_805ABE34@sda21(r2) +lbl_801735DC: +/* 801735DC 0017053C C0 5D 00 00 */ lfs f2, 0(r29) +/* 801735E0 00170540 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) +/* 801735E4 00170544 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801735E8 00170548 40 81 00 70 */ ble lbl_80173658 +/* 801735EC 0017054C 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 801735F0 00170550 EC 42 D8 28 */ fsubs f2, f2, f27 +/* 801735F4 00170554 C0 0D 8E 30 */ lfs f0, lbl_805A79F0@sda21(r13) +/* 801735F8 00170558 C0 63 02 4C */ lfs f3, 0x24c(r3) +/* 801735FC 0017055C C0 83 02 50 */ lfs f4, 0x250(r3) +/* 80173600 00170560 FC 00 10 40 */ fcmpo cr0, f0, f2 +/* 80173604 00170564 C0 A3 02 48 */ lfs f5, 0x248(r3) +/* 80173608 00170568 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 8017360C 0017056C 40 80 00 0C */ bge lbl_80173618 +/* 80173610 00170570 38 61 00 20 */ addi r3, r1, 0x20 +/* 80173614 00170574 48 00 00 08 */ b lbl_8017361C +lbl_80173618: +/* 80173618 00170578 38 6D 8E 30 */ addi r3, r13, lbl_805A79F0@sda21 +lbl_8017361C: +/* 8017361C 0017057C C0 03 00 00 */ lfs f0, 0(r3) +/* 80173620 00170580 D0 1D 00 00 */ stfs f0, 0(r29) +/* 80173624 00170584 C0 1D 00 00 */ lfs f0, 0(r29) +/* 80173628 00170588 FC 00 20 40 */ fcmpo cr0, f0, f4 +/* 8017362C 0017058C 40 81 00 18 */ ble lbl_80173644 +/* 80173630 00170590 EC 00 20 28 */ fsubs f0, f0, f4 +/* 80173634 00170594 C0 42 A1 14 */ lfs f2, lbl_805ABE34@sda21(r2) +/* 80173638 00170598 EC 00 18 24 */ fdivs f0, f0, f3 +/* 8017363C 0017059C EC 02 00 28 */ fsubs f0, f2, f0 +/* 80173640 001705A0 48 00 00 08 */ b lbl_80173648 +lbl_80173644: +/* 80173644 001705A4 EC 00 20 24 */ fdivs f0, f0, f4 +lbl_80173648: +/* 80173648 001705A8 EC 00 01 72 */ fmuls f0, f0, f5 +/* 8017364C 001705AC C0 5F 01 A8 */ lfs f2, 0x1a8(r31) +/* 80173650 001705B0 EC 02 00 32 */ fmuls f0, f2, f0 +/* 80173654 001705B4 D0 18 01 50 */ stfs f0, 0x150(r24) +lbl_80173658: +/* 80173658 001705B8 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) +/* 8017365C 001705BC 3C 00 43 30 */ lis r0, 0x4330 +/* 80173660 001705C0 C0 1F 01 A8 */ lfs f0, 0x1a8(r31) +/* 80173664 001705C4 88 64 01 77 */ lbz r3, 0x177(r4) +/* 80173668 001705C8 EF 41 00 32 */ fmuls f26, f1, f0 +/* 8017366C 001705CC 90 01 01 78 */ stw r0, 0x178(r1) +/* 80173670 001705D0 C8 22 A1 30 */ lfd f1, lbl_805ABE50@sda21(r2) +/* 80173674 001705D4 90 61 01 7C */ stw r3, 0x17c(r1) +/* 80173678 001705D8 C8 01 01 78 */ lfd f0, 0x178(r1) +/* 8017367C 001705DC EC 00 08 28 */ fsubs f0, f0, f1 +/* 80173680 001705E0 EF FA 00 32 */ fmuls f31, f26, f0 +/* 80173684 001705E4 F3 E1 A0 09 */ psq_st f31, 9(r1), 1, qr2 +/* 80173688 001705E8 7F 03 C3 78 */ mr r3, r24 +/* 8017368C 001705EC 80 A4 01 74 */ lwz r5, 0x174(r4) +/* 80173690 001705F0 38 81 00 1C */ addi r4, r1, 0x1c +/* 80173694 001705F4 88 01 00 09 */ lbz r0, 9(r1) +/* 80173698 001705F8 50 A0 00 2E */ rlwimi r0, r5, 0, 0, 0x17 +/* 8017369C 001705FC 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801736A0 00170600 48 15 71 CD */ bl SetColor__10CGuiWidgetFRC6CColor +/* 801736A4 00170604 C0 02 A1 14 */ lfs f0, lbl_805ABE34@sda21(r2) +/* 801736A8 00170608 7F E3 FB 78 */ mr r3, r31 +/* 801736AC 0017060C 7F 24 CB 78 */ mr r4, r25 +/* 801736B0 00170610 EC 00 D0 28 */ fsubs f0, f0, f26 +/* 801736B4 00170614 D0 18 01 4C */ stfs f0, 0x14c(r24) +/* 801736B8 00170618 4B FF F4 7D */ bl GetDownloadStartTime__12CScanDisplayFi +/* 801736BC 0017061C 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 801736C0 00170620 C0 03 02 44 */ lfs f0, 0x244(r3) +/* 801736C4 00170624 EC 01 00 28 */ fsubs f0, f1, f0 +/* 801736C8 00170628 FC 00 E0 40 */ fcmpo cr0, f0, f28 +/* 801736CC 0017062C 40 80 00 B0 */ bge lbl_8017377C +/* 801736D0 00170630 80 1C 00 00 */ lwz r0, 0(r28) +/* 801736D4 00170634 2C 00 00 03 */ cmpwi r0, 3 +/* 801736D8 00170638 41 82 00 3C */ beq lbl_80173714 +/* 801736DC 0017063C 40 80 00 A0 */ bge lbl_8017377C +/* 801736E0 00170640 2C 00 00 00 */ cmpwi r0, 0 +/* 801736E4 00170644 41 82 00 98 */ beq lbl_8017377C +/* 801736E8 00170648 40 80 00 0C */ bge lbl_801736F4 +/* 801736EC 0017064C 48 00 00 90 */ b lbl_8017377C +/* 801736F0 00170650 48 00 00 8C */ b lbl_8017377C +lbl_801736F4: +/* 801736F4 00170654 38 00 00 03 */ li r0, 3 +/* 801736F8 00170658 7F 83 E3 78 */ mr r3, r28 +/* 801736FC 0017065C 90 1C 00 00 */ stw r0, 0(r28) +/* 80173700 00170660 38 8D A8 98 */ addi r4, r13, lbl_805A9458@sda21 +/* 80173704 00170664 80 AD A1 38 */ lwz r5, gpTweakGui@sda21(r13) +/* 80173708 00170668 C0 25 02 44 */ lfs f1, 0x244(r5) +/* 8017370C 0017066C 48 00 11 B5 */ bl StartTransitionTo__Q212CScanDisplay8CDataDotFRC9CVector2ff +/* 80173710 00170670 48 00 00 6C */ b lbl_8017377C +lbl_80173714: +/* 80173714 00170674 C0 5C 00 1C */ lfs f2, 0x1c(r28) +/* 80173718 00170678 C0 22 A1 10 */ lfs f1, lbl_805ABE30@sda21(r2) +/* 8017371C 0017067C FC 02 08 40 */ fcmpo cr0, f2, f1 +/* 80173720 00170680 40 81 00 0C */ ble lbl_8017372C +/* 80173724 00170684 C0 1C 00 20 */ lfs f0, 0x20(r28) +/* 80173728 00170688 EC 20 10 24 */ fdivs f1, f0, f2 +lbl_8017372C: +/* 8017372C 0017068C C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) +/* 80173730 00170690 FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 80173734 00170694 40 82 00 48 */ bne lbl_8017377C +/* 80173738 00170698 38 00 00 04 */ li r0, 4 +/* 8017373C 0017069C A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80173740 001706A0 90 1C 00 00 */ stw r0, 0(r28) +/* 80173744 001706A4 38 61 00 18 */ addi r3, r1, 0x18 +/* 80173748 001706A8 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8017374C 001706AC 38 80 05 86 */ li r4, 0x586 +/* 80173750 001706B0 D0 1C 00 28 */ stfs f0, 0x28(r28) +/* 80173754 001706B4 38 A0 00 7F */ li r5, 0x7f +/* 80173758 001706B8 38 C0 00 40 */ li r6, 0x40 +/* 8017375C 001706BC 38 E0 00 00 */ li r7, 0 +/* 80173760 001706C0 39 20 00 00 */ li r9, 0 +/* 80173764 001706C4 48 17 66 11 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80173768 001706C8 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 8017376C 001706CC C0 23 02 50 */ lfs f1, 0x250(r3) +/* 80173770 001706D0 C0 03 02 4C */ lfs f0, 0x24c(r3) +/* 80173774 001706D4 EC 01 00 2A */ fadds f0, f1, f0 +/* 80173778 001706D8 D0 1D 00 00 */ stfs f0, 0(r29) +lbl_8017377C: +/* 8017377C 001706DC 3B 39 00 01 */ addi r25, r25, 1 +/* 80173780 001706E0 3B 9C 00 2C */ addi r28, r28, 0x2c +/* 80173784 001706E4 2C 19 00 04 */ cmpwi r25, 4 +/* 80173788 001706E8 3B BD 00 08 */ addi r29, r29, 8 +/* 8017378C 001706EC 41 80 FE 20 */ blt lbl_801735AC +/* 80173790 001706F0 3C 60 80 3F */ lis r3, lbl_803ED910@ha +/* 80173794 001706F4 7F 5C D3 78 */ mr r28, r26 +/* 80173798 001706F8 3B 00 00 00 */ li r24, 0 +/* 8017379C 001706FC 3B A3 D9 10 */ addi r29, r3, lbl_803ED910@l +lbl_801737A0: +/* 801737A0 00170700 80 1B 00 00 */ lwz r0, 0(r27) +/* 801737A4 00170704 2C 00 00 03 */ cmpwi r0, 3 +/* 801737A8 00170708 40 80 00 14 */ bge lbl_801737BC +/* 801737AC 0017070C 2C 00 00 00 */ cmpwi r0, 0 +/* 801737B0 00170710 41 82 02 0C */ beq lbl_801739BC +/* 801737B4 00170714 40 80 00 14 */ bge lbl_801737C8 +/* 801737B8 00170718 48 00 01 F8 */ b lbl_801739B0 +lbl_801737BC: +/* 801737BC 0017071C 2C 00 00 05 */ cmpwi r0, 5 +/* 801737C0 00170720 40 80 01 F0 */ bge lbl_801739B0 +/* 801737C4 00170724 48 00 01 54 */ b lbl_80173918 +lbl_801737C8: +/* 801737C8 00170728 C0 5B 00 1C */ lfs f2, 0x1c(r27) +/* 801737CC 0017072C C0 22 A1 10 */ lfs f1, lbl_805ABE30@sda21(r2) +/* 801737D0 00170730 FC 02 08 40 */ fcmpo cr0, f2, f1 +/* 801737D4 00170734 40 81 00 0C */ ble lbl_801737E0 +/* 801737D8 00170738 C0 1B 00 20 */ lfs f0, 0x20(r27) +/* 801737DC 0017073C EC 20 10 24 */ fdivs f1, f0, f2 +lbl_801737E0: +/* 801737E0 00170740 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) +/* 801737E4 00170744 FC 00 08 00 */ fcmpu cr0, f0, f1 +/* 801737E8 00170748 40 82 01 C8 */ bne lbl_801739B0 +/* 801737EC 0017074C 20 00 00 02 */ subfic r0, r0, 2 +/* 801737F0 00170750 80 8D A1 38 */ lwz r4, gpTweakGui@sda21(r13) +/* 801737F4 00170754 7C 03 00 34 */ cntlzw r3, r0 +/* 801737F8 00170758 54 60 DE 3F */ rlwinm. r0, r3, 0x1b, 0x18, 0x1f +/* 801737FC 0017075C C3 84 02 30 */ lfs f28, 0x230(r4) +/* 80173800 00170760 54 79 D9 7E */ srwi r25, r3, 5 +/* 80173804 00170764 41 82 00 0C */ beq lbl_80173810 +/* 80173808 00170768 C3 E4 02 3C */ lfs f31, 0x23c(r4) +/* 8017380C 0017076C 48 00 00 08 */ b lbl_80173814 +lbl_80173810: +/* 80173810 00170770 C3 E4 02 34 */ lfs f31, 0x234(r4) +lbl_80173814: +/* 80173814 00170774 57 20 06 3F */ clrlwi. r0, r25, 0x18 +/* 80173818 00170778 41 82 00 0C */ beq lbl_80173824 +/* 8017381C 0017077C C3 A4 02 40 */ lfs f29, 0x240(r4) +/* 80173820 00170780 48 00 00 08 */ b lbl_80173828 +lbl_80173824: +/* 80173824 00170784 C3 A4 02 38 */ lfs f29, 0x238(r4) +lbl_80173828: +/* 80173828 00170788 57 20 06 3F */ clrlwi. r0, r25, 0x18 +/* 8017382C 0017078C 41 82 00 0C */ beq lbl_80173838 +/* 80173830 00170790 C3 5B 00 0C */ lfs f26, 0xc(r27) +/* 80173834 00170794 48 00 00 38 */ b lbl_8017386C +lbl_80173838: +/* 80173838 00170798 48 21 C6 45 */ bl rand +/* 8017383C 0017079C 6C 63 80 00 */ xoris r3, r3, 0x8000 +/* 80173840 001707A0 3C 00 43 30 */ lis r0, 0x4330 +/* 80173844 001707A4 90 61 01 7C */ stw r3, 0x17c(r1) +/* 80173848 001707A8 C0 02 A1 28 */ lfs f0, lbl_805ABE48@sda21(r2) +/* 8017384C 001707AC 90 01 01 78 */ stw r0, 0x178(r1) +/* 80173850 001707B0 C8 62 A1 38 */ lfd f3, lbl_805ABE58@sda21(r2) +/* 80173854 001707B4 EC 00 07 32 */ fmuls f0, f0, f28 +/* 80173858 001707B8 C8 41 01 78 */ lfd f2, 0x178(r1) +/* 8017385C 001707BC C0 22 A1 2C */ lfs f1, lbl_805ABE4C@sda21(r2) +/* 80173860 001707C0 EC 42 18 28 */ fsubs f2, f2, f3 +/* 80173864 001707C4 EC 22 08 24 */ fdivs f1, f2, f1 +/* 80173868 001707C8 EF 5C 00 78 */ fmsubs f26, f28, f1, f0 +lbl_8017386C: +/* 8017386C 001707CC 57 20 06 3F */ clrlwi. r0, r25, 0x18 +/* 80173870 001707D0 41 82 00 0C */ beq lbl_8017387C +/* 80173874 001707D4 C3 9B 00 10 */ lfs f28, 0x10(r27) +/* 80173878 001707D8 48 00 00 38 */ b lbl_801738B0 +lbl_8017387C: +/* 8017387C 001707DC 48 21 C6 01 */ bl rand +/* 80173880 001707E0 6C 63 80 00 */ xoris r3, r3, 0x8000 +/* 80173884 001707E4 3C 00 43 30 */ lis r0, 0x4330 +/* 80173888 001707E8 90 61 01 7C */ stw r3, 0x17c(r1) +/* 8017388C 001707EC C0 02 A1 28 */ lfs f0, lbl_805ABE48@sda21(r2) +/* 80173890 001707F0 90 01 01 78 */ stw r0, 0x178(r1) +/* 80173894 001707F4 C8 62 A1 38 */ lfd f3, lbl_805ABE58@sda21(r2) +/* 80173898 001707F8 EC 00 07 32 */ fmuls f0, f0, f28 +/* 8017389C 001707FC C8 41 01 78 */ lfd f2, 0x178(r1) +/* 801738A0 00170800 C0 22 A1 2C */ lfs f1, lbl_805ABE4C@sda21(r2) +/* 801738A4 00170804 EC 42 18 28 */ fsubs f2, f2, f3 +/* 801738A8 00170808 EC 22 08 24 */ fdivs f1, f2, f1 +/* 801738AC 0017080C EF 9C 00 78 */ fmsubs f28, f28, f1, f0 +lbl_801738B0: +/* 801738B0 00170810 48 21 C5 CD */ bl rand +/* 801738B4 00170814 FC 20 D0 90 */ fmr f1, f26 +/* 801738B8 00170818 7C 77 1B 78 */ mr r23, r3 +/* 801738BC 0017081C FC 40 E0 90 */ fmr f2, f28 +/* 801738C0 00170820 38 61 00 3C */ addi r3, r1, 0x3c +/* 801738C4 00170824 48 1A 09 3D */ bl __ct__9CVector2fFff +/* 801738C8 00170828 6E E4 80 00 */ xoris r4, r23, 0x8000 +/* 801738CC 0017082C 3C 00 43 30 */ lis r0, 0x4330 +/* 801738D0 00170830 90 81 01 7C */ stw r4, 0x17c(r1) +/* 801738D4 00170834 7C 64 1B 78 */ mr r4, r3 +/* 801738D8 00170838 C8 42 A1 38 */ lfd f2, lbl_805ABE58@sda21(r2) +/* 801738DC 0017083C EC 7D F8 28 */ fsubs f3, f29, f31 +/* 801738E0 00170840 90 01 01 78 */ stw r0, 0x178(r1) +/* 801738E4 00170844 7F 63 DB 78 */ mr r3, r27 +/* 801738E8 00170848 C0 02 A1 2C */ lfs f0, lbl_805ABE4C@sda21(r2) +/* 801738EC 0017084C C8 21 01 78 */ lfd f1, 0x178(r1) +/* 801738F0 00170850 EC 21 10 28 */ fsubs f1, f1, f2 +/* 801738F4 00170854 EC 01 00 24 */ fdivs f0, f1, f0 +/* 801738F8 00170858 EC 23 F8 3A */ fmadds f1, f3, f0, f31 +/* 801738FC 0017085C 48 00 0F C5 */ bl StartTransitionTo__Q212CScanDisplay8CDataDotFRC9CVector2ff +/* 80173900 00170860 57 20 06 3F */ clrlwi. r0, r25, 0x18 +/* 80173904 00170864 38 60 00 02 */ li r3, 2 +/* 80173908 00170868 41 82 00 08 */ beq lbl_80173910 +/* 8017390C 0017086C 38 60 00 01 */ li r3, 1 +lbl_80173910: +/* 80173910 00170870 90 7B 00 00 */ stw r3, 0(r27) +/* 80173914 00170874 48 00 00 9C */ b lbl_801739B0 +lbl_80173918: +/* 80173918 00170878 80 DC 00 04 */ lwz r6, 4(r28) +/* 8017391C 0017087C 38 61 00 7C */ addi r3, r1, 0x7c +/* 80173920 00170880 80 9F 00 A0 */ lwz r4, 0xa0(r31) +/* 80173924 00170884 38 A1 00 A8 */ addi r5, r1, 0xa8 +/* 80173928 00170888 C0 46 00 60 */ lfs f2, 0x60(r6) +/* 8017392C 0017088C 80 84 00 14 */ lwz r4, 0x14(r4) +/* 80173930 00170890 C0 26 00 50 */ lfs f1, 0x50(r6) +/* 80173934 00170894 C0 06 00 40 */ lfs f0, 0x40(r6) +/* 80173938 00170898 D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 8017393C 0017089C D0 21 00 AC */ stfs f1, 0xac(r1) +/* 80173940 001708A0 D0 41 00 B0 */ stfs f2, 0xb0(r1) +/* 80173944 001708A4 48 14 DB 75 */ bl ConvertToScreenSpace__10CGuiCameraCFRC9CVector3f +/* 80173948 001708A8 80 BD 00 08 */ lwz r5, 8(r29) +/* 8017394C 001708AC 3C 80 43 30 */ lis r4, 0x4330 +/* 80173950 001708B0 80 1D 00 0C */ lwz r0, 0xc(r29) +/* 80173954 001708B4 38 61 00 44 */ addi r3, r1, 0x44 +/* 80173958 001708B8 6C A5 80 00 */ xoris r5, r5, 0x8000 +/* 8017395C 001708BC 90 81 01 78 */ stw r4, 0x178(r1) +/* 80173960 001708C0 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 80173964 001708C4 C8 62 A1 38 */ lfd f3, lbl_805ABE58@sda21(r2) +/* 80173968 001708C8 90 A1 01 7C */ stw r5, 0x17c(r1) +/* 8017396C 001708CC C0 81 00 7C */ lfs f4, 0x7c(r1) +/* 80173970 001708D0 C8 01 01 78 */ lfd f0, 0x178(r1) +/* 80173974 001708D4 90 01 01 84 */ stw r0, 0x184(r1) +/* 80173978 001708D8 EC 20 18 28 */ fsubs f1, f0, f3 +/* 8017397C 001708DC C0 41 00 80 */ lfs f2, 0x80(r1) +/* 80173980 001708E0 90 81 01 80 */ stw r4, 0x180(r1) +/* 80173984 001708E4 C0 A2 A1 28 */ lfs f5, lbl_805ABE48@sda21(r2) +/* 80173988 001708E8 C8 01 01 80 */ lfd f0, 0x180(r1) +/* 8017398C 001708EC EC 24 00 72 */ fmuls f1, f4, f1 +/* 80173990 001708F0 EC 00 18 28 */ fsubs f0, f0, f3 +/* 80173994 001708F4 EC 25 00 72 */ fmuls f1, f5, f1 +/* 80173998 001708F8 EC 02 00 32 */ fmuls f0, f2, f0 +/* 8017399C 001708FC EC 45 00 32 */ fmuls f2, f5, f0 +/* 801739A0 00170900 48 1A 08 61 */ bl __ct__9CVector2fFff +/* 801739A4 00170904 7F 63 DB 78 */ mr r3, r27 +/* 801739A8 00170908 38 81 00 44 */ addi r4, r1, 0x44 +/* 801739AC 0017090C 48 00 0D A1 */ bl SetDestPosition__Q212CScanDisplay8CDataDotFRC9CVector2f +lbl_801739B0: +/* 801739B0 00170910 FC 20 D8 90 */ fmr f1, f27 +/* 801739B4 00170914 7F 63 DB 78 */ mr r3, r27 +/* 801739B8 00170918 48 00 0D CD */ bl Update__Q212CScanDisplay8CDataDotFf +lbl_801739BC: +/* 801739BC 0017091C 3B 18 00 01 */ addi r24, r24, 1 +/* 801739C0 00170920 3B 9C 00 08 */ addi r28, r28, 8 +/* 801739C4 00170924 2C 18 00 04 */ cmpwi r24, 4 +/* 801739C8 00170928 3B 7B 00 2C */ addi r27, r27, 0x2c +/* 801739CC 0017092C 41 80 FD D4 */ blt lbl_801737A0 +/* 801739D0 00170930 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 801739D4 00170934 40 82 03 50 */ bne lbl_80173D24 +/* 801739D8 00170938 38 A0 00 00 */ li r5, 0 +/* 801739DC 0017093C 38 7F 00 14 */ addi r3, r31, 0x14 +/* 801739E0 00170940 90 BF 00 0C */ stw r5, 0xc(r31) +/* 801739E4 00170944 38 81 00 E8 */ addi r4, r1, 0xe8 +/* 801739E8 00170948 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801739EC 0017094C B0 1F 00 10 */ sth r0, 0x10(r31) +/* 801739F0 00170950 98 A1 01 70 */ stb r5, 0x170(r1) +/* 801739F4 00170954 48 00 03 A5 */ bl sub_80173d98 +/* 801739F8 00170958 88 01 01 70 */ lbz r0, 0x170(r1) +/* 801739FC 0017095C 28 00 00 00 */ cmplwi r0, 0 +/* 80173A00 00170960 41 82 00 68 */ beq lbl_80173A68 +/* 80173A04 00170964 34 61 00 E8 */ addic. r3, r1, 0xe8 +/* 80173A08 00170968 41 82 00 60 */ beq lbl_80173A68 +/* 80173A0C 0017096C 34 03 00 14 */ addic. r0, r3, 0x14 +/* 80173A10 00170970 41 82 00 58 */ beq lbl_80173A68 +/* 80173A14 00170974 80 C3 00 14 */ lwz r6, 0x14(r3) +/* 80173A18 00170978 38 80 00 00 */ li r4, 0 +/* 80173A1C 0017097C 2C 06 00 00 */ cmpwi r6, 0 +/* 80173A20 00170980 40 81 00 40 */ ble lbl_80173A60 +/* 80173A24 00170984 2C 06 00 08 */ cmpwi r6, 8 +/* 80173A28 00170988 38 A6 FF F8 */ addi r5, r6, -8 +/* 80173A2C 0017098C 40 81 00 20 */ ble lbl_80173A4C +/* 80173A30 00170990 38 05 00 07 */ addi r0, r5, 7 +/* 80173A34 00170994 54 00 E8 FE */ srwi r0, r0, 3 +/* 80173A38 00170998 7C 09 03 A6 */ mtctr r0 +/* 80173A3C 0017099C 2C 05 00 00 */ cmpwi r5, 0 +/* 80173A40 001709A0 40 81 00 0C */ ble lbl_80173A4C +lbl_80173A44: +/* 80173A44 001709A4 38 84 00 08 */ addi r4, r4, 8 +/* 80173A48 001709A8 42 00 FF FC */ bdnz lbl_80173A44 +lbl_80173A4C: +/* 80173A4C 001709AC 7C 04 30 50 */ subf r0, r4, r6 +/* 80173A50 001709B0 7C 09 03 A6 */ mtctr r0 +/* 80173A54 001709B4 7C 04 30 00 */ cmpw r4, r6 +/* 80173A58 001709B8 40 80 00 08 */ bge lbl_80173A60 +lbl_80173A5C: +/* 80173A5C 001709BC 42 00 00 00 */ bdnz lbl_80173A5C +lbl_80173A60: +/* 80173A60 001709C0 38 00 00 00 */ li r0, 0 +/* 80173A64 001709C4 90 03 00 14 */ stw r0, 0x14(r3) +lbl_80173A68: +/* 80173A68 001709C8 38 00 00 00 */ li r0, 0 +/* 80173A6C 001709CC 38 61 00 6C */ addi r3, r1, 0x6c +/* 80173A70 001709D0 98 01 01 70 */ stb r0, 0x170(r1) +/* 80173A74 001709D4 38 8D 8E 40 */ addi r4, r13, lbl_805A7A00@sda21 +/* 80173A78 001709D8 4B EA 1F 79 */ bl wstring_l__4rstlFPCw +/* 80173A7C 001709DC 80 7F 00 A8 */ lwz r3, 0xa8(r31) +/* 80173A80 001709E0 38 81 00 6C */ addi r4, r1, 0x6c +/* 80173A84 001709E4 38 A0 00 00 */ li r5, 0 +/* 80173A88 001709E8 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80173A8C 001709EC 48 15 5D F9 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80173A90 001709F0 38 61 00 6C */ addi r3, r1, 0x6c +/* 80173A94 001709F4 48 1C 96 A1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80173A98 001709F8 38 61 00 5C */ addi r3, r1, 0x5c +/* 80173A9C 001709FC 38 8D 8E 40 */ addi r4, r13, lbl_805A7A00@sda21 +/* 80173AA0 00170A00 4B EA 1F 51 */ bl wstring_l__4rstlFPCw +/* 80173AA4 00170A04 80 7F 00 AC */ lwz r3, 0xac(r31) +/* 80173AA8 00170A08 38 81 00 5C */ addi r4, r1, 0x5c +/* 80173AAC 00170A0C 38 A0 00 00 */ li r5, 0 +/* 80173AB0 00170A10 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80173AB4 00170A14 48 15 5D D1 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80173AB8 00170A18 38 61 00 5C */ addi r3, r1, 0x5c +/* 80173ABC 00170A1C 48 1C 96 79 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80173AC0 00170A20 80 7F 00 A4 */ lwz r3, 0xa4(r31) +/* 80173AC4 00170A24 38 80 00 00 */ li r4, 0 +/* 80173AC8 00170A28 38 A0 00 01 */ li r5, 1 +/* 80173ACC 00170A2C 48 15 6C 1D */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80173AD0 00170A30 80 7F 00 B0 */ lwz r3, 0xb0(r31) +/* 80173AD4 00170A34 38 80 00 00 */ li r4, 0 +/* 80173AD8 00170A38 38 A0 00 01 */ li r5, 1 +/* 80173ADC 00170A3C 48 15 6C 0D */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80173AE0 00170A40 80 7F 00 B4 */ lwz r3, 0xb4(r31) +/* 80173AE4 00170A44 38 80 00 00 */ li r4, 0 +/* 80173AE8 00170A48 38 A0 00 01 */ li r5, 1 +/* 80173AEC 00170A4C 48 15 6B FD */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80173AF0 00170A50 80 7F 00 B8 */ lwz r3, 0xb8(r31) +/* 80173AF4 00170A54 38 80 00 00 */ li r4, 0 +/* 80173AF8 00170A58 38 A0 00 01 */ li r5, 1 +/* 80173AFC 00170A5C 48 15 6B ED */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80173B00 00170A60 38 60 00 00 */ li r3, 0 +/* 80173B04 00170A64 34 C1 00 C8 */ addic. r6, r1, 0xc8 +/* 80173B08 00170A68 90 7F 00 A8 */ stw r3, 0xa8(r31) +/* 80173B0C 00170A6C 38 00 00 04 */ li r0, 4 +/* 80173B10 00170A70 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) +/* 80173B14 00170A74 90 7F 00 AC */ stw r3, 0xac(r31) +/* 80173B18 00170A78 90 7F 00 A4 */ stw r3, 0xa4(r31) +/* 80173B1C 00170A7C 90 7F 00 B0 */ stw r3, 0xb0(r31) +/* 80173B20 00170A80 90 7F 00 B4 */ stw r3, 0xb4(r31) +/* 80173B24 00170A84 90 7F 00 B8 */ stw r3, 0xb8(r31) +/* 80173B28 00170A88 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 80173B2C 00170A8C 41 82 00 0C */ beq lbl_80173B38 +/* 80173B30 00170A90 D0 01 00 C8 */ stfs f0, 0xc8(r1) +/* 80173B34 00170A94 90 61 00 CC */ stw r3, 0xcc(r1) +lbl_80173B38: +/* 80173B38 00170A98 34 86 00 08 */ addic. r4, r6, 8 +/* 80173B3C 00170A9C 41 82 00 0C */ beq lbl_80173B48 +/* 80173B40 00170AA0 D0 04 00 00 */ stfs f0, 0(r4) +/* 80173B44 00170AA4 90 64 00 04 */ stw r3, 4(r4) +lbl_80173B48: +/* 80173B48 00170AA8 34 84 00 08 */ addic. r4, r4, 8 +/* 80173B4C 00170AAC 41 82 00 0C */ beq lbl_80173B58 +/* 80173B50 00170AB0 D0 04 00 00 */ stfs f0, 0(r4) +/* 80173B54 00170AB4 90 64 00 04 */ stw r3, 4(r4) +lbl_80173B58: +/* 80173B58 00170AB8 34 84 00 08 */ addic. r4, r4, 8 +/* 80173B5C 00170ABC 41 82 00 0C */ beq lbl_80173B68 +/* 80173B60 00170AC0 D0 04 00 00 */ stfs f0, 0(r4) +/* 80173B64 00170AC4 90 64 00 04 */ stw r3, 4(r4) +lbl_80173B68: +/* 80173B68 00170AC8 38 7F 01 70 */ addi r3, r31, 0x170 +/* 80173B6C 00170ACC 38 01 00 C4 */ addi r0, r1, 0xc4 +/* 80173B70 00170AD0 7C 03 00 40 */ cmplw r3, r0 +/* 80173B74 00170AD4 41 82 00 98 */ beq lbl_80173C0C +/* 80173B78 00170AD8 80 BF 01 70 */ lwz r5, 0x170(r31) +/* 80173B7C 00170ADC 38 60 00 00 */ li r3, 0 +/* 80173B80 00170AE0 2C 05 00 00 */ cmpwi r5, 0 +/* 80173B84 00170AE4 40 81 00 40 */ ble lbl_80173BC4 +/* 80173B88 00170AE8 2C 05 00 08 */ cmpwi r5, 8 +/* 80173B8C 00170AEC 38 85 FF F8 */ addi r4, r5, -8 +/* 80173B90 00170AF0 40 81 00 20 */ ble lbl_80173BB0 +/* 80173B94 00170AF4 38 04 00 07 */ addi r0, r4, 7 +/* 80173B98 00170AF8 54 00 E8 FE */ srwi r0, r0, 3 +/* 80173B9C 00170AFC 7C 09 03 A6 */ mtctr r0 +/* 80173BA0 00170B00 2C 04 00 00 */ cmpwi r4, 0 +/* 80173BA4 00170B04 40 81 00 0C */ ble lbl_80173BB0 +lbl_80173BA8: +/* 80173BA8 00170B08 38 63 00 08 */ addi r3, r3, 8 +/* 80173BAC 00170B0C 42 00 FF FC */ bdnz lbl_80173BA8 +lbl_80173BB0: +/* 80173BB0 00170B10 7C 03 28 50 */ subf r0, r3, r5 +/* 80173BB4 00170B14 7C 09 03 A6 */ mtctr r0 +/* 80173BB8 00170B18 7C 03 28 00 */ cmpw r3, r5 +/* 80173BBC 00170B1C 40 80 00 08 */ bge lbl_80173BC4 +lbl_80173BC0: +/* 80173BC0 00170B20 42 00 00 00 */ bdnz lbl_80173BC0 +lbl_80173BC4: +/* 80173BC4 00170B24 38 00 00 00 */ li r0, 0 +/* 80173BC8 00170B28 90 1F 01 70 */ stw r0, 0x170(r31) +/* 80173BCC 00170B2C 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 80173BD0 00170B30 54 00 18 38 */ slwi r0, r0, 3 +/* 80173BD4 00170B34 7C 66 02 14 */ add r3, r6, r0 +/* 80173BD8 00170B38 48 00 00 24 */ b lbl_80173BFC +lbl_80173BDC: +/* 80173BDC 00170B3C 28 1A 00 00 */ cmplwi r26, 0 +/* 80173BE0 00170B40 41 82 00 14 */ beq lbl_80173BF4 +/* 80173BE4 00170B44 C0 06 00 00 */ lfs f0, 0(r6) +/* 80173BE8 00170B48 D0 1A 00 00 */ stfs f0, 0(r26) +/* 80173BEC 00170B4C 80 06 00 04 */ lwz r0, 4(r6) +/* 80173BF0 00170B50 90 1A 00 04 */ stw r0, 4(r26) +lbl_80173BF4: +/* 80173BF4 00170B54 3B 5A 00 08 */ addi r26, r26, 8 +/* 80173BF8 00170B58 38 C6 00 08 */ addi r6, r6, 8 +lbl_80173BFC: +/* 80173BFC 00170B5C 7C 06 18 40 */ cmplw r6, r3 +/* 80173C00 00170B60 40 82 FF DC */ bne lbl_80173BDC +/* 80173C04 00170B64 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 80173C08 00170B68 90 1F 01 70 */ stw r0, 0x170(r31) +lbl_80173C0C: +/* 80173C0C 00170B6C 80 A1 00 C4 */ lwz r5, 0xc4(r1) +/* 80173C10 00170B70 38 60 00 00 */ li r3, 0 +/* 80173C14 00170B74 2C 05 00 00 */ cmpwi r5, 0 +/* 80173C18 00170B78 40 81 00 40 */ ble lbl_80173C58 +/* 80173C1C 00170B7C 2C 05 00 08 */ cmpwi r5, 8 +/* 80173C20 00170B80 38 85 FF F8 */ addi r4, r5, -8 +/* 80173C24 00170B84 40 81 00 20 */ ble lbl_80173C44 +/* 80173C28 00170B88 38 04 00 07 */ addi r0, r4, 7 +/* 80173C2C 00170B8C 54 00 E8 FE */ srwi r0, r0, 3 +/* 80173C30 00170B90 7C 09 03 A6 */ mtctr r0 +/* 80173C34 00170B94 2C 04 00 00 */ cmpwi r4, 0 +/* 80173C38 00170B98 40 81 00 0C */ ble lbl_80173C44 +lbl_80173C3C: +/* 80173C3C 00170B9C 38 63 00 08 */ addi r3, r3, 8 +/* 80173C40 00170BA0 42 00 FF FC */ bdnz lbl_80173C3C +lbl_80173C44: +/* 80173C44 00170BA4 7C 03 28 50 */ subf r0, r3, r5 +/* 80173C48 00170BA8 7C 09 03 A6 */ mtctr r0 +/* 80173C4C 00170BAC 7C 03 28 00 */ cmpw r3, r5 +/* 80173C50 00170BB0 40 80 00 08 */ bge lbl_80173C58 +lbl_80173C54: +/* 80173C54 00170BB4 42 00 00 00 */ bdnz lbl_80173C54 +lbl_80173C58: +/* 80173C58 00170BB8 3B 1F 01 94 */ addi r24, r31, 0x194 +/* 80173C5C 00170BBC 38 81 00 4C */ addi r4, r1, 0x4c +/* 80173C60 00170BC0 38 00 00 00 */ li r0, 0 +/* 80173C64 00170BC4 7C 18 20 40 */ cmplw r24, r4 +/* 80173C68 00170BC8 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 80173C6C 00170BCC 98 01 00 58 */ stb r0, 0x58(r1) +/* 80173C70 00170BD0 41 82 00 7C */ beq lbl_80173CEC +/* 80173C74 00170BD4 28 00 00 00 */ cmplwi r0, 0 +/* 80173C78 00170BD8 41 82 00 48 */ beq lbl_80173CC0 +/* 80173C7C 00170BDC 88 1F 01 A0 */ lbz r0, 0x1a0(r31) +/* 80173C80 00170BE0 28 00 00 00 */ cmplwi r0, 0 +/* 80173C84 00170BE4 40 82 00 28 */ bne lbl_80173CAC +/* 80173C88 00170BE8 36 FF 01 94 */ addic. r23, r31, 0x194 +/* 80173C8C 00170BEC 41 82 00 14 */ beq lbl_80173CA0 +/* 80173C90 00170BF0 7E E3 BB 78 */ mr r3, r23 +/* 80173C94 00170BF4 48 1C D2 15 */ bl __ct__6CTokenFRC6CToken +/* 80173C98 00170BF8 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80173C9C 00170BFC 90 17 00 08 */ stw r0, 8(r23) +lbl_80173CA0: +/* 80173CA0 00170C00 38 00 00 01 */ li r0, 1 +/* 80173CA4 00170C04 98 1F 01 A0 */ stb r0, 0x1a0(r31) +/* 80173CA8 00170C08 48 00 00 44 */ b lbl_80173CEC +lbl_80173CAC: +/* 80173CAC 00170C0C 7F 03 C3 78 */ mr r3, r24 +/* 80173CB0 00170C10 48 1C D0 15 */ bl __as__6CTokenFRC6CToken +/* 80173CB4 00170C14 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80173CB8 00170C18 90 18 00 08 */ stw r0, 8(r24) +/* 80173CBC 00170C1C 48 00 00 30 */ b lbl_80173CEC +lbl_80173CC0: +/* 80173CC0 00170C20 88 1F 01 A0 */ lbz r0, 0x1a0(r31) +/* 80173CC4 00170C24 28 00 00 00 */ cmplwi r0, 0 +/* 80173CC8 00170C28 41 82 00 1C */ beq lbl_80173CE4 +/* 80173CCC 00170C2C 34 7F 01 94 */ addic. r3, r31, 0x194 +/* 80173CD0 00170C30 41 82 00 14 */ beq lbl_80173CE4 +/* 80173CD4 00170C34 28 03 00 00 */ cmplwi r3, 0 +/* 80173CD8 00170C38 41 82 00 0C */ beq lbl_80173CE4 +/* 80173CDC 00170C3C 38 80 00 00 */ li r4, 0 +/* 80173CE0 00170C40 48 1C D1 61 */ bl __dt__6CTokenFv +lbl_80173CE4: +/* 80173CE4 00170C44 38 00 00 00 */ li r0, 0 +/* 80173CE8 00170C48 98 1F 01 A0 */ stb r0, 0x1a0(r31) +lbl_80173CEC: +/* 80173CEC 00170C4C 88 01 00 58 */ lbz r0, 0x58(r1) +/* 80173CF0 00170C50 28 00 00 00 */ cmplwi r0, 0 +/* 80173CF4 00170C54 41 82 00 1C */ beq lbl_80173D10 +/* 80173CF8 00170C58 34 61 00 4C */ addic. r3, r1, 0x4c +/* 80173CFC 00170C5C 41 82 00 14 */ beq lbl_80173D10 +/* 80173D00 00170C60 28 03 00 00 */ cmplwi r3, 0 +/* 80173D04 00170C64 41 82 00 0C */ beq lbl_80173D10 +/* 80173D08 00170C68 38 80 00 00 */ li r4, 0 +/* 80173D0C 00170C6C 48 1C D1 35 */ bl __dt__6CTokenFv +lbl_80173D10: +/* 80173D10 00170C70 38 00 00 00 */ li r0, 0 +/* 80173D14 00170C74 98 01 00 58 */ stb r0, 0x58(r1) +/* 80173D18 00170C78 90 1F 01 AC */ stw r0, 0x1ac(r31) +/* 80173D1C 00170C7C 98 1F 01 B4 */ stb r0, 0x1b4(r31) +/* 80173D20 00170C80 48 00 00 34 */ b lbl_80173D54 +lbl_80173D24: +/* 80173D24 00170C84 C3 7F 01 A8 */ lfs f27, 0x1a8(r31) +/* 80173D28 00170C88 48 1D 62 85 */ bl White__6CColorFv +/* 80173D2C 00170C8C C0 02 A1 24 */ lfs f0, lbl_805ABE44@sda21(r2) +/* 80173D30 00170C90 EF C0 06 F2 */ fmuls f30, f0, f27 +/* 80173D34 00170C94 F3 C1 A0 08 */ psq_st f30, 8(r1), 1, qr2 +/* 80173D38 00170C98 38 81 00 38 */ addi r4, r1, 0x38 +/* 80173D3C 00170C9C 80 63 00 00 */ lwz r3, 0(r3) +/* 80173D40 00170CA0 88 01 00 08 */ lbz r0, 8(r1) +/* 80173D44 00170CA4 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 80173D48 00170CA8 90 01 00 38 */ stw r0, 0x38(r1) +/* 80173D4C 00170CAC 80 7F 00 A4 */ lwz r3, 0xa4(r31) +/* 80173D50 00170CB0 48 15 6B 1D */ bl SetColor__10CGuiWidgetFRC6CColor +lbl_80173D54: +/* 80173D54 00170CB4 E3 E1 02 08 */ psq_l f31, 520(r1), 0, qr0 +/* 80173D58 00170CB8 CB E1 02 00 */ lfd f31, 0x200(r1) +/* 80173D5C 00170CBC E3 C1 01 F8 */ psq_l f30, 504(r1), 0, qr0 +/* 80173D60 00170CC0 CB C1 01 F0 */ lfd f30, 0x1f0(r1) +/* 80173D64 00170CC4 E3 A1 01 E8 */ psq_l f29, 488(r1), 0, qr0 +/* 80173D68 00170CC8 CB A1 01 E0 */ lfd f29, 0x1e0(r1) +/* 80173D6C 00170CCC E3 81 01 D8 */ psq_l f28, 472(r1), 0, qr0 +/* 80173D70 00170CD0 CB 81 01 D0 */ lfd f28, 0x1d0(r1) +/* 80173D74 00170CD4 E3 61 01 C8 */ psq_l f27, 456(r1), 0, qr0 +/* 80173D78 00170CD8 CB 61 01 C0 */ lfd f27, 0x1c0(r1) +/* 80173D7C 00170CDC E3 41 01 B8 */ psq_l f26, 440(r1), 0, qr0 +/* 80173D80 00170CE0 CB 41 01 B0 */ lfd f26, 0x1b0(r1) +/* 80173D84 00170CE4 BA E1 01 8C */ lmw r23, 0x18c(r1) +/* 80173D88 00170CE8 80 01 02 14 */ lwz r0, 0x214(r1) +/* 80173D8C 00170CEC 7C 08 03 A6 */ mtlr r0 +/* 80173D90 00170CF0 38 21 02 10 */ addi r1, r1, 0x210 +/* 80173D94 00170CF4 4E 80 00 20 */ blr + +.global sub_80173d98 +sub_80173d98: +/* 80173D98 00170CF8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80173D9C 00170CFC 7C 08 02 A6 */ mflr r0 +/* 80173DA0 00170D00 90 01 00 14 */ stw r0, 0x14(r1) +/* 80173DA4 00170D04 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80173DA8 00170D08 7C 7F 1B 78 */ mr r31, r3 +/* 80173DAC 00170D0C 7C 1F 20 40 */ cmplw r31, r4 +/* 80173DB0 00170D10 40 82 00 08 */ bne lbl_80173DB8 +/* 80173DB4 00170D14 48 00 00 94 */ b lbl_80173E48 +lbl_80173DB8: +/* 80173DB8 00170D18 88 04 00 88 */ lbz r0, 0x88(r4) +/* 80173DBC 00170D1C 28 00 00 00 */ cmplwi r0, 0 +/* 80173DC0 00170D20 41 82 00 0C */ beq lbl_80173DCC +/* 80173DC4 00170D24 48 00 00 99 */ bl sub_80173e5c +/* 80173DC8 00170D28 48 00 00 7C */ b lbl_80173E44 +lbl_80173DCC: +/* 80173DCC 00170D2C 88 1F 00 88 */ lbz r0, 0x88(r31) +/* 80173DD0 00170D30 28 00 00 00 */ cmplwi r0, 0 +/* 80173DD4 00170D34 41 82 00 68 */ beq lbl_80173E3C +/* 80173DD8 00170D38 28 1F 00 00 */ cmplwi r31, 0 +/* 80173DDC 00170D3C 41 82 00 60 */ beq lbl_80173E3C +/* 80173DE0 00170D40 34 1F 00 14 */ addic. r0, r31, 0x14 +/* 80173DE4 00170D44 41 82 00 58 */ beq lbl_80173E3C +/* 80173DE8 00170D48 80 BF 00 14 */ lwz r5, 0x14(r31) +/* 80173DEC 00170D4C 38 60 00 00 */ li r3, 0 +/* 80173DF0 00170D50 2C 05 00 00 */ cmpwi r5, 0 +/* 80173DF4 00170D54 40 81 00 40 */ ble lbl_80173E34 +/* 80173DF8 00170D58 2C 05 00 08 */ cmpwi r5, 8 +/* 80173DFC 00170D5C 38 85 FF F8 */ addi r4, r5, -8 +/* 80173E00 00170D60 40 81 00 20 */ ble lbl_80173E20 +/* 80173E04 00170D64 38 04 00 07 */ addi r0, r4, 7 +/* 80173E08 00170D68 54 00 E8 FE */ srwi r0, r0, 3 +/* 80173E0C 00170D6C 7C 09 03 A6 */ mtctr r0 +/* 80173E10 00170D70 2C 04 00 00 */ cmpwi r4, 0 +/* 80173E14 00170D74 40 81 00 0C */ ble lbl_80173E20 +lbl_80173E18: +/* 80173E18 00170D78 38 63 00 08 */ addi r3, r3, 8 +/* 80173E1C 00170D7C 42 00 FF FC */ bdnz lbl_80173E18 +lbl_80173E20: +/* 80173E20 00170D80 7C 03 28 50 */ subf r0, r3, r5 +/* 80173E24 00170D84 7C 09 03 A6 */ mtctr r0 +/* 80173E28 00170D88 7C 03 28 00 */ cmpw r3, r5 +/* 80173E2C 00170D8C 40 80 00 08 */ bge lbl_80173E34 +lbl_80173E30: +/* 80173E30 00170D90 42 00 00 00 */ bdnz lbl_80173E30 +lbl_80173E34: +/* 80173E34 00170D94 38 00 00 00 */ li r0, 0 +/* 80173E38 00170D98 90 1F 00 14 */ stw r0, 0x14(r31) +lbl_80173E3C: +/* 80173E3C 00170D9C 38 00 00 00 */ li r0, 0 +/* 80173E40 00170DA0 98 1F 00 88 */ stb r0, 0x88(r31) +lbl_80173E44: +/* 80173E44 00170DA4 7F E3 FB 78 */ mr r3, r31 +lbl_80173E48: +/* 80173E48 00170DA8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80173E4C 00170DAC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80173E50 00170DB0 7C 08 03 A6 */ mtlr r0 +/* 80173E54 00170DB4 38 21 00 10 */ addi r1, r1, 0x10 +/* 80173E58 00170DB8 4E 80 00 20 */ blr + +.global sub_80173e5c +sub_80173e5c: +/* 80173E5C 00170DBC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80173E60 00170DC0 7C 08 02 A6 */ mflr r0 +/* 80173E64 00170DC4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80173E68 00170DC8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80173E6C 00170DCC 7C 7F 1B 78 */ mr r31, r3 +/* 80173E70 00170DD0 88 03 00 88 */ lbz r0, 0x88(r3) +/* 80173E74 00170DD4 28 00 00 00 */ cmplwi r0, 0 +/* 80173E78 00170DD8 40 82 00 14 */ bne lbl_80173E8C +/* 80173E7C 00170DDC 48 00 01 61 */ bl sub_80173fdc +/* 80173E80 00170DE0 38 00 00 01 */ li r0, 1 +/* 80173E84 00170DE4 98 1F 00 88 */ stb r0, 0x88(r31) +/* 80173E88 00170DE8 48 00 00 08 */ b lbl_80173E90 +lbl_80173E8C: +/* 80173E8C 00170DEC 48 00 00 19 */ bl sub_80173ea4 +lbl_80173E90: +/* 80173E90 00170DF0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80173E94 00170DF4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80173E98 00170DF8 7C 08 03 A6 */ mtlr r0 +/* 80173E9C 00170DFC 38 21 00 10 */ addi r1, r1, 0x10 +/* 80173EA0 00170E00 4E 80 00 20 */ blr + +.global sub_80173ea4 +sub_80173ea4: +/* 80173EA4 00170E04 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80173EA8 00170E08 7C 08 02 A6 */ mflr r0 +/* 80173EAC 00170E0C 7C 85 23 78 */ mr r5, r4 +/* 80173EB0 00170E10 90 01 00 14 */ stw r0, 0x14(r1) +/* 80173EB4 00170E14 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80173EB8 00170E18 7C 7F 1B 78 */ mr r31, r3 +/* 80173EBC 00170E1C 38 7F 00 14 */ addi r3, r31, 0x14 +/* 80173EC0 00170E20 80 04 00 00 */ lwz r0, 0(r4) +/* 80173EC4 00170E24 38 85 00 14 */ addi r4, r5, 0x14 +/* 80173EC8 00170E28 90 1F 00 00 */ stw r0, 0(r31) +/* 80173ECC 00170E2C 80 05 00 04 */ lwz r0, 4(r5) +/* 80173ED0 00170E30 90 1F 00 04 */ stw r0, 4(r31) +/* 80173ED4 00170E34 C0 05 00 08 */ lfs f0, 8(r5) +/* 80173ED8 00170E38 D0 1F 00 08 */ stfs f0, 8(r31) +/* 80173EDC 00170E3C 80 05 00 0C */ lwz r0, 0xc(r5) +/* 80173EE0 00170E40 90 1F 00 0C */ stw r0, 0xc(r31) +/* 80173EE4 00170E44 88 05 00 10 */ lbz r0, 0x10(r5) +/* 80173EE8 00170E48 98 1F 00 10 */ stb r0, 0x10(r31) +/* 80173EEC 00170E4C 48 00 00 1D */ bl sub_80173f08 +/* 80173EF0 00170E50 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80173EF4 00170E54 7F E3 FB 78 */ mr r3, r31 +/* 80173EF8 00170E58 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80173EFC 00170E5C 7C 08 03 A6 */ mtlr r0 +/* 80173F00 00170E60 38 21 00 10 */ addi r1, r1, 0x10 +/* 80173F04 00170E64 4E 80 00 20 */ blr + +.global sub_80173f08 +sub_80173f08: +/* 80173F08 00170E68 7C 03 20 40 */ cmplw r3, r4 +/* 80173F0C 00170E6C 4D 82 00 20 */ beqlr +/* 80173F10 00170E70 80 E3 00 00 */ lwz r7, 0(r3) +/* 80173F14 00170E74 38 A0 00 00 */ li r5, 0 +/* 80173F18 00170E78 2C 07 00 00 */ cmpwi r7, 0 +/* 80173F1C 00170E7C 40 81 00 40 */ ble lbl_80173F5C +/* 80173F20 00170E80 2C 07 00 08 */ cmpwi r7, 8 +/* 80173F24 00170E84 38 C7 FF F8 */ addi r6, r7, -8 +/* 80173F28 00170E88 40 81 00 20 */ ble lbl_80173F48 +/* 80173F2C 00170E8C 38 06 00 07 */ addi r0, r6, 7 +/* 80173F30 00170E90 54 00 E8 FE */ srwi r0, r0, 3 +/* 80173F34 00170E94 7C 09 03 A6 */ mtctr r0 +/* 80173F38 00170E98 2C 06 00 00 */ cmpwi r6, 0 +/* 80173F3C 00170E9C 40 81 00 0C */ ble lbl_80173F48 +lbl_80173F40: +/* 80173F40 00170EA0 38 A5 00 08 */ addi r5, r5, 8 +/* 80173F44 00170EA4 42 00 FF FC */ bdnz lbl_80173F40 +lbl_80173F48: +/* 80173F48 00170EA8 7C 05 38 50 */ subf r0, r5, r7 +/* 80173F4C 00170EAC 7C 09 03 A6 */ mtctr r0 +/* 80173F50 00170EB0 7C 05 38 00 */ cmpw r5, r7 +/* 80173F54 00170EB4 40 80 00 08 */ bge lbl_80173F5C +lbl_80173F58: +/* 80173F58 00170EB8 42 00 00 00 */ bdnz lbl_80173F58 +lbl_80173F5C: +/* 80173F5C 00170EBC 38 00 00 00 */ li r0, 0 +/* 80173F60 00170EC0 38 C3 00 04 */ addi r6, r3, 4 +/* 80173F64 00170EC4 90 03 00 00 */ stw r0, 0(r3) +/* 80173F68 00170EC8 38 A4 00 04 */ addi r5, r4, 4 +/* 80173F6C 00170ECC 80 04 00 00 */ lwz r0, 0(r4) +/* 80173F70 00170ED0 1C 00 00 1C */ mulli r0, r0, 0x1c +/* 80173F74 00170ED4 7C E4 02 14 */ add r7, r4, r0 +/* 80173F78 00170ED8 38 E7 00 04 */ addi r7, r7, 4 +/* 80173F7C 00170EDC 48 00 00 4C */ b lbl_80173FC8 +lbl_80173F80: +/* 80173F80 00170EE0 28 06 00 00 */ cmplwi r6, 0 +/* 80173F84 00170EE4 41 82 00 3C */ beq lbl_80173FC0 +/* 80173F88 00170EE8 80 05 00 00 */ lwz r0, 0(r5) +/* 80173F8C 00170EEC 90 06 00 00 */ stw r0, 0(r6) +/* 80173F90 00170EF0 C0 05 00 04 */ lfs f0, 4(r5) +/* 80173F94 00170EF4 D0 06 00 04 */ stfs f0, 4(r6) +/* 80173F98 00170EF8 80 05 00 08 */ lwz r0, 8(r5) +/* 80173F9C 00170EFC 90 06 00 08 */ stw r0, 8(r6) +/* 80173FA0 00170F00 80 05 00 0C */ lwz r0, 0xc(r5) +/* 80173FA4 00170F04 90 06 00 0C */ stw r0, 0xc(r6) +/* 80173FA8 00170F08 80 05 00 10 */ lwz r0, 0x10(r5) +/* 80173FAC 00170F0C 90 06 00 10 */ stw r0, 0x10(r6) +/* 80173FB0 00170F10 C0 05 00 14 */ lfs f0, 0x14(r5) +/* 80173FB4 00170F14 D0 06 00 14 */ stfs f0, 0x14(r6) +/* 80173FB8 00170F18 C0 05 00 18 */ lfs f0, 0x18(r5) +/* 80173FBC 00170F1C D0 06 00 18 */ stfs f0, 0x18(r6) +lbl_80173FC0: +/* 80173FC0 00170F20 38 C6 00 1C */ addi r6, r6, 0x1c +/* 80173FC4 00170F24 38 A5 00 1C */ addi r5, r5, 0x1c +lbl_80173FC8: +/* 80173FC8 00170F28 7C 05 38 40 */ cmplw r5, r7 +/* 80173FCC 00170F2C 40 82 FF B4 */ bne lbl_80173F80 +/* 80173FD0 00170F30 80 04 00 00 */ lwz r0, 0(r4) +/* 80173FD4 00170F34 90 03 00 00 */ stw r0, 0(r3) +/* 80173FD8 00170F38 4E 80 00 20 */ blr + +.global sub_80173fdc +sub_80173fdc: +/* 80173FDC 00170F3C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80173FE0 00170F40 7C 08 02 A6 */ mflr r0 +/* 80173FE4 00170F44 28 03 00 00 */ cmplwi r3, 0 +/* 80173FE8 00170F48 90 01 00 14 */ stw r0, 0x14(r1) +/* 80173FEC 00170F4C 41 82 00 08 */ beq lbl_80173FF4 +/* 80173FF0 00170F50 48 00 00 15 */ bl sub_80174004 +lbl_80173FF4: +/* 80173FF4 00170F54 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80173FF8 00170F58 7C 08 03 A6 */ mtlr r0 +/* 80173FFC 00170F5C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80174000 00170F60 4E 80 00 20 */ blr + +.global sub_80174004 +sub_80174004: +/* 80174004 00170F64 80 04 00 00 */ lwz r0, 0(r4) +/* 80174008 00170F68 38 C4 00 18 */ addi r6, r4, 0x18 +/* 8017400C 00170F6C 38 A3 00 18 */ addi r5, r3, 0x18 +/* 80174010 00170F70 90 03 00 00 */ stw r0, 0(r3) +/* 80174014 00170F74 80 04 00 04 */ lwz r0, 4(r4) +/* 80174018 00170F78 90 03 00 04 */ stw r0, 4(r3) +/* 8017401C 00170F7C C0 04 00 08 */ lfs f0, 8(r4) +/* 80174020 00170F80 D0 03 00 08 */ stfs f0, 8(r3) +/* 80174024 00170F84 80 04 00 0C */ lwz r0, 0xc(r4) +/* 80174028 00170F88 90 03 00 0C */ stw r0, 0xc(r3) +/* 8017402C 00170F8C 88 04 00 10 */ lbz r0, 0x10(r4) +/* 80174030 00170F90 98 03 00 10 */ stb r0, 0x10(r3) +/* 80174034 00170F94 80 04 00 14 */ lwz r0, 0x14(r4) +/* 80174038 00170F98 90 03 00 14 */ stw r0, 0x14(r3) +/* 8017403C 00170F9C 80 03 00 14 */ lwz r0, 0x14(r3) +/* 80174040 00170FA0 7C 09 03 A6 */ mtctr r0 +/* 80174044 00170FA4 2C 00 00 00 */ cmpwi r0, 0 +/* 80174048 00170FA8 4C 81 00 20 */ blelr +lbl_8017404C: +/* 8017404C 00170FAC 28 05 00 00 */ cmplwi r5, 0 +/* 80174050 00170FB0 41 82 00 3C */ beq lbl_8017408C +/* 80174054 00170FB4 80 06 00 00 */ lwz r0, 0(r6) +/* 80174058 00170FB8 90 05 00 00 */ stw r0, 0(r5) +/* 8017405C 00170FBC C0 06 00 04 */ lfs f0, 4(r6) +/* 80174060 00170FC0 D0 05 00 04 */ stfs f0, 4(r5) +/* 80174064 00170FC4 80 06 00 08 */ lwz r0, 8(r6) +/* 80174068 00170FC8 90 05 00 08 */ stw r0, 8(r5) +/* 8017406C 00170FCC 80 06 00 0C */ lwz r0, 0xc(r6) +/* 80174070 00170FD0 90 05 00 0C */ stw r0, 0xc(r5) +/* 80174074 00170FD4 80 06 00 10 */ lwz r0, 0x10(r6) +/* 80174078 00170FD8 90 05 00 10 */ stw r0, 0x10(r5) +/* 8017407C 00170FDC C0 06 00 14 */ lfs f0, 0x14(r6) +/* 80174080 00170FE0 D0 05 00 14 */ stfs f0, 0x14(r5) +/* 80174084 00170FE4 C0 06 00 18 */ lfs f0, 0x18(r6) +/* 80174088 00170FE8 D0 05 00 18 */ stfs f0, 0x18(r5) +lbl_8017408C: +/* 8017408C 00170FEC 38 A5 00 1C */ addi r5, r5, 0x1c +/* 80174090 00170FF0 38 C6 00 1C */ addi r6, r6, 0x1c +/* 80174094 00170FF4 42 00 FF B8 */ bdnz lbl_8017404C + +.global sub_80174098 +sub_80174098: +/* 80174098 00170FF8 4E 80 00 20 */ blr + +.global StopScan__12CScanDisplayFv +StopScan__12CScanDisplayFv: +/* 8017409C 00170FFC 80 03 00 0C */ lwz r0, 0xc(r3) +/* 801740A0 00171000 2C 00 00 04 */ cmpwi r0, 4 +/* 801740A4 00171004 4D 82 00 20 */ beqlr +/* 801740A8 00171008 4C 80 00 20 */ bgelr +/* 801740AC 0017100C 2C 00 00 00 */ cmpwi r0, 0 +/* 801740B0 00171010 4D 82 00 20 */ beqlr +/* 801740B4 00171014 40 80 00 0C */ bge lbl_801740C0 + +.global sub_801740b8 +sub_801740b8: +/* 801740B8 00171018 4E 80 00 20 */ blr + +.global sub_801740bc +sub_801740bc: +/* 801740BC 0017101C 4E 80 00 20 */ blr +lbl_801740C0: +/* 801740C0 00171020 38 00 00 04 */ li r0, 4 +/* 801740C4 00171024 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) +/* 801740C8 00171028 90 03 00 0C */ stw r0, 0xc(r3) +/* 801740CC 0017102C D0 03 00 E8 */ stfs f0, 0xe8(r3) +/* 801740D0 00171030 D0 03 01 14 */ stfs f0, 0x114(r3) +/* 801740D4 00171034 D0 03 01 40 */ stfs f0, 0x140(r3) +/* 801740D8 00171038 D0 03 01 6C */ stfs f0, 0x16c(r3) +/* 801740DC 0017103C 4E 80 00 20 */ blr + +.global StartScan__12CScanDisplayF9TUniqueIdRC20CScannableObjectInfoP12CGuiTextPaneP10CGuiWidgetf +StartScan__12CScanDisplayF9TUniqueIdRC20CScannableObjectInfoP12CGuiTextPaneP10CGuiWidgetf: +/* 801740E0 00171040 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 801740E4 00171044 7C 08 02 A6 */ mflr r0 +/* 801740E8 00171048 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 801740EC 0017104C DB E1 00 A0 */ stfd f31, 0xa0(r1) +/* 801740F0 00171050 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 +/* 801740F4 00171054 DB C1 00 90 */ stfd f30, 0x90(r1) +/* 801740F8 00171058 F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0 +/* 801740FC 0017105C DB A1 00 80 */ stfd f29, 0x80(r1) +/* 80174100 00171060 F3 A1 00 88 */ psq_st f29, 136(r1), 0, qr0 +/* 80174104 00171064 BF 21 00 64 */ stmw r25, 0x64(r1) +/* 80174108 00171068 FF A0 08 90 */ fmr f29, f1 +/* 8017410C 0017106C C0 05 00 08 */ lfs f0, 8(r5) +/* 80174110 00171070 7C 7E 1B 78 */ mr r30, r3 +/* 80174114 00171074 7C D9 33 78 */ mr r25, r6 +/* 80174118 00171078 7C FF 3B 78 */ mr r31, r7 +/* 8017411C 0017107C 7D 1D 43 78 */ mr r29, r8 +/* 80174120 00171080 FC 1D 00 40 */ fcmpo cr0, f29, f0 +/* 80174124 00171084 7D 3C 4B 78 */ mr r28, r9 +/* 80174128 00171088 7D 5B 53 78 */ mr r27, r10 +/* 8017412C 0017108C 83 41 00 B8 */ lwz r26, 0xb8(r1) +/* 80174130 00171090 4C 41 13 82 */ cror 2, 1, 2 +/* 80174134 00171094 7C 00 00 26 */ mfcr r0 +/* 80174138 00171098 38 7E 00 14 */ addi r3, r30, 0x14 +/* 8017413C 0017109C 54 00 1F FE */ rlwinm r0, r0, 3, 0x1f, 0x1f +/* 80174140 001710A0 98 1E 01 B4 */ stb r0, 0x1b4(r30) +/* 80174144 001710A4 A0 04 00 00 */ lhz r0, 0(r4) +/* 80174148 001710A8 7C A4 2B 78 */ mr r4, r5 +/* 8017414C 001710AC B0 1E 00 10 */ sth r0, 0x10(r30) +/* 80174150 001710B0 48 00 03 C5 */ bl sub_80174514 +/* 80174154 001710B4 38 60 00 01 */ li r3, 1 +/* 80174158 001710B8 38 00 00 00 */ li r0, 0 +/* 8017415C 001710BC 90 7E 00 0C */ stw r3, 0xc(r30) +/* 80174160 001710C0 38 80 00 01 */ li r4, 1 +/* 80174164 001710C4 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) +/* 80174168 001710C8 38 A0 00 01 */ li r5, 1 +/* 8017416C 001710CC 90 1E 01 AC */ stw r0, 0x1ac(r30) +/* 80174170 001710D0 D0 1E 01 A4 */ stfs f0, 0x1a4(r30) +/* 80174174 001710D4 93 3E 00 A8 */ stw r25, 0xa8(r30) +/* 80174178 001710D8 93 FE 00 AC */ stw r31, 0xac(r30) +/* 8017417C 001710DC 93 BE 00 A4 */ stw r29, 0xa4(r30) +/* 80174180 001710E0 93 9E 00 B0 */ stw r28, 0xb0(r30) +/* 80174184 001710E4 93 7E 00 B4 */ stw r27, 0xb4(r30) +/* 80174188 001710E8 93 5E 00 B8 */ stw r26, 0xb8(r30) +/* 8017418C 001710EC 80 7E 00 A4 */ lwz r3, 0xa4(r30) +/* 80174190 001710F0 48 15 65 59 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80174194 001710F4 48 1D 5E 19 */ bl White__6CColorFv +/* 80174198 001710F8 C3 E2 A1 10 */ lfs f31, lbl_805ABE30@sda21(r2) +/* 8017419C 001710FC F3 E1 A0 09 */ psq_st f31, 9(r1), 1, qr2 +/* 801741A0 00171100 38 81 00 14 */ addi r4, r1, 0x14 +/* 801741A4 00171104 80 63 00 00 */ lwz r3, 0(r3) +/* 801741A8 00171108 88 01 00 09 */ lbz r0, 9(r1) +/* 801741AC 0017110C 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 +/* 801741B0 00171110 90 01 00 14 */ stw r0, 0x14(r1) +/* 801741B4 00171114 80 7E 00 A4 */ lwz r3, 0xa4(r30) +/* 801741B8 00171118 48 15 66 B5 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 801741BC 0017111C 3B 80 00 00 */ li r28, 0 +/* 801741C0 00171120 3B FE 01 74 */ addi r31, r30, 0x174 +lbl_801741C4: +/* 801741C4 00171124 7F 83 E3 78 */ mr r3, r28 +/* 801741C8 00171128 4B FF 5D A9 */ bl GetImagePaneName__16CPauseScreenBaseFUi +/* 801741CC 0017112C 7C 64 1B 78 */ mr r4, r3 +/* 801741D0 00171130 38 61 00 3C */ addi r3, r1, 0x3c +/* 801741D4 00171134 38 C1 00 0C */ addi r6, r1, 0xc +/* 801741D8 00171138 38 A0 FF FF */ li r5, -1 +/* 801741DC 0017113C 48 1C 9F B9 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" +/* 801741E0 00171140 80 7E 00 A0 */ lwz r3, 0xa0(r30) +/* 801741E4 00171144 38 81 00 3C */ addi r4, r1, 0x3c +/* 801741E8 00171148 48 14 DF ED */ bl "FindWidget__9CGuiFrameCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 801741EC 0017114C C3 C2 A1 10 */ lfs f30, lbl_805ABE30@sda21(r2) +/* 801741F0 00171150 7C 7D 1B 78 */ mr r29, r3 +/* 801741F4 00171154 80 AD A1 3C */ lwz r5, gpTweakGuiColors@sda21(r13) +/* 801741F8 00171158 F3 C1 A0 08 */ psq_st f30, 8(r1), 1, qr2 +/* 801741FC 0017115C 38 81 00 10 */ addi r4, r1, 0x10 +/* 80174200 00171160 80 A5 01 74 */ lwz r5, 0x174(r5) +/* 80174204 00171164 88 01 00 08 */ lbz r0, 8(r1) +/* 80174208 00171168 50 A0 00 2E */ rlwimi r0, r5, 0, 0, 0x17 +/* 8017420C 0017116C 90 01 00 10 */ stw r0, 0x10(r1) +/* 80174210 00171170 48 15 66 5D */ bl SetColor__10CGuiWidgetFRC6CColor +/* 80174214 00171174 80 AD A0 64 */ lwz r5, gpSimplePool@sda21(r13) +/* 80174218 00171178 7F A3 EB 78 */ mr r3, r29 +/* 8017421C 0017117C 38 80 FF FF */ li r4, -1 +/* 80174220 00171180 48 15 7C AD */ bl SetTextureID0__13CAuiImagePaneFUib +/* 80174224 00171184 C0 22 A1 10 */ lfs f1, lbl_805ABE30@sda21(r2) +/* 80174228 00171188 7F A3 EB 78 */ mr r3, r29 +/* 8017422C 0017118C 38 8D A8 98 */ addi r4, r13, lbl_805A9458@sda21 +/* 80174230 00171190 FC 40 08 90 */ fmr f2, f1 +/* 80174234 00171194 48 15 8C 75 */ bl SetAnimationParms__13CAuiImagePaneFRC9CVector2fff +/* 80174238 00171198 80 1E 00 34 */ lwz r0, 0x34(r30) +/* 8017423C 0017119C 7C 1C 00 00 */ cmpw r28, r0 +/* 80174240 001711A0 40 82 00 0C */ bne lbl_8017424C +/* 80174244 001711A4 38 00 00 00 */ li r0, 0 +/* 80174248 001711A8 48 00 00 44 */ b lbl_8017428C +lbl_8017424C: +/* 8017424C 001711AC 80 1E 00 50 */ lwz r0, 0x50(r30) +/* 80174250 001711B0 7C 1C 00 00 */ cmpw r28, r0 +/* 80174254 001711B4 40 82 00 0C */ bne lbl_80174260 +/* 80174258 001711B8 38 00 00 01 */ li r0, 1 +/* 8017425C 001711BC 48 00 00 30 */ b lbl_8017428C +lbl_80174260: +/* 80174260 001711C0 80 1E 00 6C */ lwz r0, 0x6c(r30) +/* 80174264 001711C4 7C 1C 00 00 */ cmpw r28, r0 +/* 80174268 001711C8 40 82 00 0C */ bne lbl_80174274 +/* 8017426C 001711CC 38 00 00 02 */ li r0, 2 +/* 80174270 001711D0 48 00 00 1C */ b lbl_8017428C +lbl_80174274: +/* 80174274 001711D4 80 1E 00 88 */ lwz r0, 0x88(r30) +/* 80174278 001711D8 7C 1C 00 00 */ cmpw r28, r0 +/* 8017427C 001711DC 40 82 00 0C */ bne lbl_80174288 +/* 80174280 001711E0 38 00 00 03 */ li r0, 3 +/* 80174284 001711E4 48 00 00 08 */ b lbl_8017428C +lbl_80174288: +/* 80174288 001711E8 38 00 FF FF */ li r0, -1 +lbl_8017428C: +/* 8017428C 001711EC 2C 00 00 00 */ cmpwi r0, 0 +/* 80174290 001711F0 41 80 00 10 */ blt lbl_801742A0 +/* 80174294 001711F4 54 03 18 38 */ slwi r3, r0, 3 +/* 80174298 001711F8 38 03 00 04 */ addi r0, r3, 4 +/* 8017429C 001711FC 7F BF 01 2E */ stwx r29, r31, r0 +lbl_801742A0: +/* 801742A0 00171200 38 61 00 3C */ addi r3, r1, 0x3c +/* 801742A4 00171204 48 1C 98 3D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 801742A8 00171208 3B 9C 00 01 */ addi r28, r28, 1 +/* 801742AC 0017120C 2C 1C 00 14 */ cmpwi r28, 0x14 +/* 801742B0 00171210 41 80 FF 14 */ blt lbl_801741C4 +/* 801742B4 00171214 3B 60 00 00 */ li r27, 0 +/* 801742B8 00171218 3B 80 00 00 */ li r28, 0 +/* 801742BC 0017121C 48 00 00 C8 */ b lbl_80174384 +lbl_801742C0: +/* 801742C0 00171220 83 5F 00 04 */ lwz r26, 4(r31) +/* 801742C4 00171224 28 1A 00 00 */ cmplwi r26, 0 +/* 801742C8 00171228 41 82 00 B0 */ beq lbl_80174378 +/* 801742CC 0017122C 7F BE E2 14 */ add r29, r30, r28 +/* 801742D0 00171230 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) +/* 801742D4 00171234 C3 DD 00 40 */ lfs f30, 0x40(r29) +/* 801742D8 00171238 FC 1E 00 40 */ fcmpo cr0, f30, f0 +/* 801742DC 0017123C 40 81 00 58 */ ble lbl_80174334 +/* 801742E0 00171240 80 BD 00 38 */ lwz r5, 0x38(r29) +/* 801742E4 00171244 3C 80 43 30 */ lis r4, 0x4330 +/* 801742E8 00171248 80 1D 00 3C */ lwz r0, 0x3c(r29) +/* 801742EC 0017124C 38 61 00 28 */ addi r3, r1, 0x28 +/* 801742F0 00171250 6C A5 80 00 */ xoris r5, r5, 0x8000 +/* 801742F4 00171254 90 81 00 50 */ stw r4, 0x50(r1) +/* 801742F8 00171258 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 801742FC 0017125C C8 42 A1 38 */ lfd f2, lbl_805ABE58@sda21(r2) +/* 80174300 00171260 90 A1 00 54 */ stw r5, 0x54(r1) +/* 80174304 00171264 C8 01 00 50 */ lfd f0, 0x50(r1) +/* 80174308 00171268 90 01 00 5C */ stw r0, 0x5c(r1) +/* 8017430C 0017126C EC 20 10 28 */ fsubs f1, f0, f2 +/* 80174310 00171270 90 81 00 58 */ stw r4, 0x58(r1) +/* 80174314 00171274 C8 01 00 58 */ lfd f0, 0x58(r1) +/* 80174318 00171278 EC 40 10 28 */ fsubs f2, f0, f2 +/* 8017431C 0017127C 48 19 FE E5 */ bl __ct__9CVector2fFff +/* 80174320 00171280 FC 20 F0 90 */ fmr f1, f30 +/* 80174324 00171284 7C 64 1B 78 */ mr r4, r3 +/* 80174328 00171288 C0 5D 00 44 */ lfs f2, 0x44(r29) +/* 8017432C 0017128C 7F 43 D3 78 */ mr r3, r26 +/* 80174330 00171290 48 15 8B 79 */ bl SetAnimationParms__13CAuiImagePaneFRC9CVector2fff +lbl_80174334: +/* 80174334 00171294 80 9D 00 2C */ lwz r4, 0x2c(r29) +/* 80174338 00171298 7F 43 D3 78 */ mr r3, r26 +/* 8017433C 0017129C 80 AD A0 64 */ lwz r5, gpSimplePool@sda21(r13) +/* 80174340 001712A0 48 15 7B 8D */ bl SetTextureID0__13CAuiImagePaneFUib +/* 80174344 001712A4 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) +/* 80174348 001712A8 7F C3 F3 78 */ mr r3, r30 +/* 8017434C 001712AC 7F 64 DB 78 */ mr r4, r27 +/* 80174350 001712B0 D0 1A 01 50 */ stfs f0, 0x150(r26) +/* 80174354 001712B4 4B FF E7 E1 */ bl GetDownloadStartTime__12CScanDisplayFi +/* 80174358 001712B8 FC 1D 08 40 */ fcmpo cr0, f29, f1 +/* 8017435C 001712BC 4C 41 13 82 */ cror 2, 1, 2 +/* 80174360 001712C0 40 82 00 10 */ bne lbl_80174370 +/* 80174364 001712C4 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) +/* 80174368 001712C8 D0 1F 00 00 */ stfs f0, 0(r31) +/* 8017436C 001712CC 48 00 00 0C */ b lbl_80174378 +lbl_80174370: +/* 80174370 001712D0 C0 02 A1 40 */ lfs f0, lbl_805ABE60@sda21(r2) +/* 80174374 001712D4 D0 1F 00 00 */ stfs f0, 0(r31) +lbl_80174378: +/* 80174378 001712D8 3B FF 00 08 */ addi r31, r31, 8 +/* 8017437C 001712DC 3B 9C 00 1C */ addi r28, r28, 0x1c +/* 80174380 001712E0 3B 7B 00 01 */ addi r27, r27, 1 +lbl_80174384: +/* 80174384 001712E4 80 1E 01 70 */ lwz r0, 0x170(r30) +/* 80174388 001712E8 7C 1B 00 00 */ cmpw r27, r0 +/* 8017438C 001712EC 41 80 FF 34 */ blt lbl_801742C0 +/* 80174390 001712F0 80 9E 00 18 */ lwz r4, 0x18(r30) +/* 80174394 001712F4 3C 04 00 01 */ addis r0, r4, 1 +/* 80174398 001712F8 28 00 FF FF */ cmplwi r0, 0xffff +/* 8017439C 001712FC 41 82 00 B0 */ beq lbl_8017444C +/* 801743A0 00171300 3C 60 53 54 */ lis r3, 0x53545247@ha +/* 801743A4 00171304 90 81 00 24 */ stw r4, 0x24(r1) +/* 801743A8 00171308 38 03 52 47 */ addi r0, r3, 0x53545247@l +/* 801743AC 0017130C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 801743B0 00171310 90 01 00 20 */ stw r0, 0x20(r1) +/* 801743B4 00171314 38 61 00 18 */ addi r3, r1, 0x18 +/* 801743B8 00171318 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801743BC 0017131C 81 84 00 00 */ lwz r12, 0(r4) +/* 801743C0 00171320 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801743C4 00171324 7D 89 03 A6 */ mtctr r12 +/* 801743C8 00171328 4E 80 04 21 */ bctrl +/* 801743CC 0017132C 38 61 00 30 */ addi r3, r1, 0x30 +/* 801743D0 00171330 38 81 00 18 */ addi r4, r1, 0x18 +/* 801743D4 00171334 48 1C CA D5 */ bl __ct__6CTokenFRC6CToken +/* 801743D8 00171338 38 00 00 00 */ li r0, 0 +/* 801743DC 0017133C 90 01 00 38 */ stw r0, 0x38(r1) +/* 801743E0 00171340 88 1E 01 A0 */ lbz r0, 0x1a0(r30) +/* 801743E4 00171344 28 00 00 00 */ cmplwi r0, 0 +/* 801743E8 00171348 40 82 00 2C */ bne lbl_80174414 +/* 801743EC 0017134C 37 FE 01 94 */ addic. r31, r30, 0x194 +/* 801743F0 00171350 41 82 00 18 */ beq lbl_80174408 +/* 801743F4 00171354 7F E3 FB 78 */ mr r3, r31 +/* 801743F8 00171358 38 81 00 30 */ addi r4, r1, 0x30 +/* 801743FC 0017135C 48 1C CA AD */ bl __ct__6CTokenFRC6CToken +/* 80174400 00171360 80 01 00 38 */ lwz r0, 0x38(r1) +/* 80174404 00171364 90 1F 00 08 */ stw r0, 8(r31) +lbl_80174408: +/* 80174408 00171368 38 00 00 01 */ li r0, 1 +/* 8017440C 0017136C 98 1E 01 A0 */ stb r0, 0x1a0(r30) +/* 80174410 00171370 48 00 00 1C */ b lbl_8017442C +lbl_80174414: +/* 80174414 00171374 3B BE 01 94 */ addi r29, r30, 0x194 +/* 80174418 00171378 38 81 00 30 */ addi r4, r1, 0x30 +/* 8017441C 0017137C 7F A3 EB 78 */ mr r3, r29 +/* 80174420 00171380 48 1C C8 A5 */ bl __as__6CTokenFRC6CToken +/* 80174424 00171384 80 01 00 38 */ lwz r0, 0x38(r1) +/* 80174428 00171388 90 1D 00 08 */ stw r0, 8(r29) +lbl_8017442C: +/* 8017442C 0017138C 38 61 00 30 */ addi r3, r1, 0x30 +/* 80174430 00171390 38 80 00 00 */ li r4, 0 +/* 80174434 00171394 48 1C CA 0D */ bl __dt__6CTokenFv +/* 80174438 00171398 38 61 00 18 */ addi r3, r1, 0x18 +/* 8017443C 0017139C 38 80 FF FF */ li r4, -1 +/* 80174440 001713A0 48 1C CA 01 */ bl __dt__6CTokenFv +/* 80174444 001713A4 38 7E 01 94 */ addi r3, r30, 0x194 +/* 80174448 001713A8 48 1C C9 3D */ bl Lock__6CTokenFv +lbl_8017444C: +/* 8017444C 001713AC 3B 9E 00 C0 */ addi r28, r30, 0xc0 +/* 80174450 001713B0 3B 40 00 00 */ li r26, 0 +/* 80174454 001713B4 3B A0 00 00 */ li r29, 0 +lbl_80174458: +/* 80174458 001713B8 7C 7E EA 14 */ add r3, r30, r29 +/* 8017445C 001713BC 80 03 00 34 */ lwz r0, 0x34(r3) +/* 80174460 001713C0 2C 00 FF FF */ cmpwi r0, -1 +/* 80174464 001713C4 41 82 00 68 */ beq lbl_801744CC +/* 80174468 001713C8 7F C3 F3 78 */ mr r3, r30 +/* 8017446C 001713CC 7F 44 D3 78 */ mr r4, r26 +/* 80174470 001713D0 4B FF E6 C5 */ bl GetDownloadStartTime__12CScanDisplayFi +/* 80174474 001713D4 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 80174478 001713D8 C0 03 02 44 */ lfs f0, 0x244(r3) +/* 8017447C 001713DC EC 01 00 28 */ fsubs f0, f1, f0 +/* 80174480 001713E0 FC 00 E8 40 */ fcmpo cr0, f0, f29 +/* 80174484 001713E4 40 80 00 18 */ bge lbl_8017449C +/* 80174488 001713E8 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) +/* 8017448C 001713EC 38 00 00 04 */ li r0, 4 +/* 80174490 001713F0 D0 1C 00 24 */ stfs f0, 0x24(r28) +/* 80174494 001713F4 90 1C 00 00 */ stw r0, 0(r28) +/* 80174498 001713F8 48 00 00 3C */ b lbl_801744D4 +lbl_8017449C: +/* 8017449C 001713FC C0 02 A1 14 */ lfs f0, lbl_805ABE34@sda21(r2) +/* 801744A0 00171400 38 00 00 01 */ li r0, 1 +/* 801744A4 00171404 C0 22 A1 44 */ lfs f1, lbl_805ABE64@sda21(r2) +/* 801744A8 00171408 7F 83 E3 78 */ mr r3, r28 +/* 801744AC 0017140C D0 1C 00 28 */ stfs f0, 0x28(r28) +/* 801744B0 00171410 38 8D A8 98 */ addi r4, r13, lbl_805A9458@sda21 +/* 801744B4 00171414 90 1C 00 00 */ stw r0, 0(r28) +/* 801744B8 00171418 48 00 04 09 */ bl StartTransitionTo__Q212CScanDisplay8CDataDotFRC9CVector2ff +/* 801744BC 0017141C C0 22 A1 44 */ lfs f1, lbl_805ABE64@sda21(r2) +/* 801744C0 00171420 7F 83 E3 78 */ mr r3, r28 +/* 801744C4 00171424 48 00 02 C1 */ bl Update__Q212CScanDisplay8CDataDotFf +/* 801744C8 00171428 48 00 00 0C */ b lbl_801744D4 +lbl_801744CC: +/* 801744CC 0017142C 38 00 00 00 */ li r0, 0 +/* 801744D0 00171430 90 1C 00 00 */ stw r0, 0(r28) +lbl_801744D4: +/* 801744D4 00171434 3B 5A 00 01 */ addi r26, r26, 1 +/* 801744D8 00171438 3B BD 00 1C */ addi r29, r29, 0x1c +/* 801744DC 0017143C 2C 1A 00 04 */ cmpwi r26, 4 +/* 801744E0 00171440 3B 9C 00 2C */ addi r28, r28, 0x2c +/* 801744E4 00171444 41 80 FF 74 */ blt lbl_80174458 +/* 801744E8 00171448 E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 +/* 801744EC 0017144C CB E1 00 A0 */ lfd f31, 0xa0(r1) +/* 801744F0 00171450 E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0 +/* 801744F4 00171454 CB C1 00 90 */ lfd f30, 0x90(r1) +/* 801744F8 00171458 E3 A1 00 88 */ psq_l f29, 136(r1), 0, qr0 +/* 801744FC 0017145C CB A1 00 80 */ lfd f29, 0x80(r1) +/* 80174500 00171460 BB 21 00 64 */ lmw r25, 0x64(r1) +/* 80174504 00171464 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 80174508 00171468 7C 08 03 A6 */ mtlr r0 +/* 8017450C 0017146C 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 80174510 00171470 4E 80 00 20 */ blr + +.global sub_80174514 +sub_80174514: +/* 80174514 00171474 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80174518 00171478 7C 08 02 A6 */ mflr r0 +/* 8017451C 0017147C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80174520 00171480 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80174524 00171484 7C 7F 1B 78 */ mr r31, r3 +/* 80174528 00171488 4B FF F9 35 */ bl sub_80173e5c +/* 8017452C 0017148C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80174530 00171490 7F E3 FB 78 */ mr r3, r31 +/* 80174534 00171494 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80174538 00171498 7C 08 03 A6 */ mtlr r0 +/* 8017453C 0017149C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80174540 001714A0 4E 80 00 20 */ blr + +.global __ct__12CScanDisplayFv +__ct__12CScanDisplayFv: +/* 80174544 001714A4 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80174548 001714A8 7C 08 02 A6 */ mflr r0 +/* 8017454C 001714AC 3C A0 80 3D */ lis r5, lbl_803D0620@ha +/* 80174550 001714B0 90 01 00 54 */ stw r0, 0x54(r1) +/* 80174554 001714B4 38 A5 06 20 */ addi r5, r5, lbl_803D0620@l +/* 80174558 001714B8 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 8017455C 001714BC 7C 9F 23 78 */ mr r31, r4 +/* 80174560 001714C0 93 C1 00 48 */ stw r30, 0x48(r1) +/* 80174564 001714C4 7C 7E 1B 78 */ mr r30, r3 +/* 80174568 001714C8 38 61 00 08 */ addi r3, r1, 8 +/* 8017456C 001714CC 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80174570 001714D0 81 84 00 00 */ lwz r12, 0(r4) +/* 80174574 001714D4 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 80174578 001714D8 7D 89 03 A6 */ mtctr r12 +/* 8017457C 001714DC 4E 80 04 21 */ bctrl +/* 80174580 001714E0 7F C3 F3 78 */ mr r3, r30 +/* 80174584 001714E4 38 81 00 08 */ addi r4, r1, 8 +/* 80174588 001714E8 48 1C C9 21 */ bl __ct__6CTokenFRC6CToken +/* 8017458C 001714EC 38 00 00 00 */ li r0, 0 +/* 80174590 001714F0 38 61 00 08 */ addi r3, r1, 8 +/* 80174594 001714F4 90 1E 00 08 */ stw r0, 8(r30) +/* 80174598 001714F8 38 80 FF FF */ li r4, -1 +/* 8017459C 001714FC 48 1C C8 A5 */ bl __dt__6CTokenFv +/* 801745A0 00171500 38 80 00 00 */ li r4, 0 +/* 801745A4 00171504 38 61 00 10 */ addi r3, r1, 0x10 +/* 801745A8 00171508 90 9E 00 0C */ stw r4, 0xc(r30) +/* 801745AC 0017150C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801745B0 00171510 B0 1E 00 10 */ sth r0, 0x10(r30) +/* 801745B4 00171514 98 9E 00 9C */ stb r4, 0x9c(r30) +/* 801745B8 00171518 93 FE 00 A0 */ stw r31, 0xa0(r30) +/* 801745BC 0017151C 90 9E 00 A4 */ stw r4, 0xa4(r30) +/* 801745C0 00171520 90 9E 00 A8 */ stw r4, 0xa8(r30) +/* 801745C4 00171524 90 9E 00 AC */ stw r4, 0xac(r30) +/* 801745C8 00171528 90 9E 00 B0 */ stw r4, 0xb0(r30) +/* 801745CC 0017152C 90 9E 00 B4 */ stw r4, 0xb4(r30) +/* 801745D0 00171530 90 9E 00 B8 */ stw r4, 0xb8(r30) +/* 801745D4 00171534 48 00 04 99 */ bl __ct__Q212CScanDisplay8CDataDotFv +/* 801745D8 00171538 38 60 00 04 */ li r3, 4 +/* 801745DC 0017153C 38 00 00 02 */ li r0, 2 +/* 801745E0 00171540 90 7E 00 BC */ stw r3, 0xbc(r30) +/* 801745E4 00171544 38 9E 00 C0 */ addi r4, r30, 0xc0 +/* 801745E8 00171548 38 60 00 00 */ li r3, 0 +/* 801745EC 0017154C 7C 09 03 A6 */ mtctr r0 +lbl_801745F0: +/* 801745F0 00171550 28 04 00 00 */ cmplwi r4, 0 +/* 801745F4 00171554 41 82 00 5C */ beq lbl_80174650 +/* 801745F8 00171558 80 01 00 10 */ lwz r0, 0x10(r1) +/* 801745FC 0017155C 90 04 00 00 */ stw r0, 0(r4) +/* 80174600 00171560 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 80174604 00171564 D0 04 00 04 */ stfs f0, 4(r4) +/* 80174608 00171568 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 8017460C 0017156C D0 04 00 08 */ stfs f0, 8(r4) +/* 80174610 00171570 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 80174614 00171574 D0 04 00 0C */ stfs f0, 0xc(r4) +/* 80174618 00171578 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 8017461C 0017157C D0 04 00 10 */ stfs f0, 0x10(r4) +/* 80174620 00171580 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 80174624 00171584 D0 04 00 14 */ stfs f0, 0x14(r4) +/* 80174628 00171588 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 8017462C 0017158C D0 04 00 18 */ stfs f0, 0x18(r4) +/* 80174630 00171590 C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 80174634 00171594 D0 04 00 1C */ stfs f0, 0x1c(r4) +/* 80174638 00171598 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 8017463C 0017159C D0 04 00 20 */ stfs f0, 0x20(r4) +/* 80174640 001715A0 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 80174644 001715A4 D0 04 00 24 */ stfs f0, 0x24(r4) +/* 80174648 001715A8 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 8017464C 001715AC D0 04 00 28 */ stfs f0, 0x28(r4) +lbl_80174650: +/* 80174650 001715B0 34 84 00 2C */ addic. r4, r4, 0x2c +/* 80174654 001715B4 41 82 00 5C */ beq lbl_801746B0 +/* 80174658 001715B8 80 01 00 10 */ lwz r0, 0x10(r1) +/* 8017465C 001715BC 90 04 00 00 */ stw r0, 0(r4) +/* 80174660 001715C0 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 80174664 001715C4 D0 04 00 04 */ stfs f0, 4(r4) +/* 80174668 001715C8 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 8017466C 001715CC D0 04 00 08 */ stfs f0, 8(r4) +/* 80174670 001715D0 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 80174674 001715D4 D0 04 00 0C */ stfs f0, 0xc(r4) +/* 80174678 001715D8 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 8017467C 001715DC D0 04 00 10 */ stfs f0, 0x10(r4) +/* 80174680 001715E0 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 80174684 001715E4 D0 04 00 14 */ stfs f0, 0x14(r4) +/* 80174688 001715E8 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 8017468C 001715EC D0 04 00 18 */ stfs f0, 0x18(r4) +/* 80174690 001715F0 C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 80174694 001715F4 D0 04 00 1C */ stfs f0, 0x1c(r4) +/* 80174698 001715F8 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 8017469C 001715FC D0 04 00 20 */ stfs f0, 0x20(r4) +/* 801746A0 00171600 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 801746A4 00171604 D0 04 00 24 */ stfs f0, 0x24(r4) +/* 801746A8 00171608 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 801746AC 0017160C D0 04 00 28 */ stfs f0, 0x28(r4) +lbl_801746B0: +/* 801746B0 00171610 38 63 00 01 */ addi r3, r3, 1 +/* 801746B4 00171614 38 84 00 2C */ addi r4, r4, 0x2c +/* 801746B8 00171618 42 00 FF 38 */ bdnz lbl_801745F0 +/* 801746BC 0017161C 38 00 00 04 */ li r0, 4 +/* 801746C0 00171620 34 7E 01 74 */ addic. r3, r30, 0x174 +/* 801746C4 00171624 90 1E 01 70 */ stw r0, 0x170(r30) +/* 801746C8 00171628 38 00 00 00 */ li r0, 0 +/* 801746CC 0017162C C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) +/* 801746D0 00171630 41 82 00 0C */ beq lbl_801746DC +/* 801746D4 00171634 D0 03 00 00 */ stfs f0, 0(r3) +/* 801746D8 00171638 90 03 00 04 */ stw r0, 4(r3) +lbl_801746DC: +/* 801746DC 0017163C 34 63 00 08 */ addic. r3, r3, 8 +/* 801746E0 00171640 41 82 00 0C */ beq lbl_801746EC +/* 801746E4 00171644 D0 03 00 00 */ stfs f0, 0(r3) +/* 801746E8 00171648 90 03 00 04 */ stw r0, 4(r3) +lbl_801746EC: +/* 801746EC 0017164C 34 63 00 08 */ addic. r3, r3, 8 +/* 801746F0 00171650 41 82 00 0C */ beq lbl_801746FC +/* 801746F4 00171654 D0 03 00 00 */ stfs f0, 0(r3) +/* 801746F8 00171658 90 03 00 04 */ stw r0, 4(r3) +lbl_801746FC: +/* 801746FC 0017165C 34 63 00 08 */ addic. r3, r3, 8 +/* 80174700 00171660 41 82 00 0C */ beq lbl_8017470C +/* 80174704 00171664 D0 03 00 00 */ stfs f0, 0(r3) +/* 80174708 00171668 90 03 00 04 */ stw r0, 4(r3) +lbl_8017470C: +/* 8017470C 0017166C 38 00 00 00 */ li r0, 0 +/* 80174710 00171670 C0 22 A1 10 */ lfs f1, lbl_805ABE30@sda21(r2) +/* 80174714 00171674 98 1E 01 A0 */ stb r0, 0x1a0(r30) +/* 80174718 00171678 7F C3 F3 78 */ mr r3, r30 +/* 8017471C 0017167C C0 02 A1 14 */ lfs f0, lbl_805ABE34@sda21(r2) +/* 80174720 00171680 D0 3E 01 A4 */ stfs f1, 0x1a4(r30) +/* 80174724 00171684 D0 3E 01 A8 */ stfs f1, 0x1a8(r30) +/* 80174728 00171688 90 1E 01 AC */ stw r0, 0x1ac(r30) +/* 8017472C 0017168C D0 1E 01 B0 */ stfs f0, 0x1b0(r30) +/* 80174730 00171690 98 1E 01 B4 */ stb r0, 0x1b4(r30) +/* 80174734 00171694 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 80174738 00171698 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 8017473C 0017169C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80174740 001716A0 7C 08 03 A6 */ mtlr r0 +/* 80174744 001716A4 38 21 00 50 */ addi r1, r1, 0x50 +/* 80174748 001716A8 4E 80 00 20 */ blr + +.global SetDestPosition__Q212CScanDisplay8CDataDotFRC9CVector2f +SetDestPosition__Q212CScanDisplay8CDataDotFRC9CVector2f: +/* 8017474C 001716AC C0 23 00 20 */ lfs f1, 0x20(r3) +/* 80174750 001716B0 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) +/* 80174754 001716B4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80174758 001716B8 40 81 00 18 */ ble lbl_80174770 +/* 8017475C 001716BC C0 04 00 00 */ lfs f0, 0(r4) +/* 80174760 001716C0 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 80174764 001716C4 C0 04 00 04 */ lfs f0, 4(r4) +/* 80174768 001716C8 D0 03 00 18 */ stfs f0, 0x18(r3) +/* 8017476C 001716CC 4E 80 00 20 */ blr +lbl_80174770: +/* 80174770 001716D0 C0 04 00 00 */ lfs f0, 0(r4) +/* 80174774 001716D4 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 80174778 001716D8 C0 04 00 04 */ lfs f0, 4(r4) +/* 8017477C 001716DC D0 03 00 10 */ stfs f0, 0x10(r3) +/* 80174780 001716E0 4E 80 00 20 */ blr + +.global Update__Q212CScanDisplay8CDataDotFf +Update__Q212CScanDisplay8CDataDotFf: +/* 80174784 001716E4 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80174788 001716E8 7C 08 02 A6 */ mflr r0 +/* 8017478C 001716EC 90 01 00 44 */ stw r0, 0x44(r1) +/* 80174790 001716F0 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 80174794 001716F4 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 80174798 001716F8 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8017479C 001716FC 7C 7F 1B 78 */ mr r31, r3 +/* 801747A0 00171700 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) +/* 801747A4 00171704 C0 43 00 20 */ lfs f2, 0x20(r3) +/* 801747A8 00171708 FF E0 08 90 */ fmr f31, f1 +/* 801747AC 0017170C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 801747B0 00171710 40 81 00 84 */ ble lbl_80174834 +/* 801747B4 00171714 EC 22 F8 28 */ fsubs f1, f2, f31 +/* 801747B8 00171718 C0 0D 8E 20 */ lfs f0, lbl_805A79E0@sda21(r13) +/* 801747BC 0017171C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 801747C0 00171720 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 801747C4 00171724 40 80 00 0C */ bge lbl_801747D0 +/* 801747C8 00171728 38 61 00 10 */ addi r3, r1, 0x10 +/* 801747CC 0017172C 48 00 00 08 */ b lbl_801747D4 +lbl_801747D0: +/* 801747D0 00171730 38 6D 8E 20 */ addi r3, r13, lbl_805A79E0@sda21 +lbl_801747D4: +/* 801747D4 00171734 C0 03 00 00 */ lfs f0, 0(r3) +/* 801747D8 00171738 C0 A2 A1 10 */ lfs f5, lbl_805ABE30@sda21(r2) +/* 801747DC 0017173C D0 1F 00 20 */ stfs f0, 0x20(r31) +/* 801747E0 00171740 C0 3F 00 1C */ lfs f1, 0x1c(r31) +/* 801747E4 00171744 FC 01 28 40 */ fcmpo cr0, f1, f5 +/* 801747E8 00171748 40 81 00 0C */ ble lbl_801747F4 +/* 801747EC 0017174C C0 1F 00 20 */ lfs f0, 0x20(r31) +/* 801747F0 00171750 EC A0 08 24 */ fdivs f5, f0, f1 +lbl_801747F4: +/* 801747F4 00171754 C0 42 A1 14 */ lfs f2, lbl_805ABE34@sda21(r2) +/* 801747F8 00171758 38 61 00 14 */ addi r3, r1, 0x14 +/* 801747FC 0017175C C0 3F 00 04 */ lfs f1, 4(r31) +/* 80174800 00171760 C0 1F 00 08 */ lfs f0, 8(r31) +/* 80174804 00171764 EC 82 28 28 */ fsubs f4, f2, f5 +/* 80174808 00171768 EC 21 01 72 */ fmuls f1, f1, f5 +/* 8017480C 0017176C C0 7F 00 14 */ lfs f3, 0x14(r31) +/* 80174810 00171770 EC 00 01 72 */ fmuls f0, f0, f5 +/* 80174814 00171774 C0 5F 00 18 */ lfs f2, 0x18(r31) +/* 80174818 00171778 EC 23 09 3A */ fmadds f1, f3, f4, f1 +/* 8017481C 0017177C EC 42 01 3A */ fmadds f2, f2, f4, f0 +/* 80174820 00171780 48 19 F9 E1 */ bl __ct__9CVector2fFff +/* 80174824 00171784 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 80174828 00171788 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 8017482C 0017178C C0 01 00 18 */ lfs f0, 0x18(r1) +/* 80174830 00171790 D0 1F 00 10 */ stfs f0, 0x10(r31) +lbl_80174834: +/* 80174834 00171794 C0 3F 00 24 */ lfs f1, 0x24(r31) +/* 80174838 00171798 C0 1F 00 28 */ lfs f0, 0x28(r31) +/* 8017483C 0017179C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80174840 001717A0 40 80 00 34 */ bge lbl_80174874 +/* 80174844 001717A4 C0 02 A1 20 */ lfs f0, lbl_805ABE40@sda21(r2) +/* 80174848 001717A8 EC 20 0F FA */ fmadds f1, f0, f31, f1 +/* 8017484C 001717AC D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80174850 001717B0 C0 1F 00 28 */ lfs f0, 0x28(r31) +/* 80174854 001717B4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80174858 001717B8 40 80 00 0C */ bge lbl_80174864 +/* 8017485C 001717BC 38 61 00 0C */ addi r3, r1, 0xc +/* 80174860 001717C0 48 00 00 08 */ b lbl_80174868 +lbl_80174864: +/* 80174864 001717C4 38 7F 00 28 */ addi r3, r31, 0x28 +lbl_80174868: +/* 80174868 001717C8 C0 03 00 00 */ lfs f0, 0(r3) +/* 8017486C 001717CC D0 1F 00 24 */ stfs f0, 0x24(r31) +/* 80174870 001717D0 48 00 00 34 */ b lbl_801748A4 +lbl_80174874: +/* 80174874 001717D4 40 81 00 30 */ ble lbl_801748A4 +/* 80174878 001717D8 C0 02 A1 20 */ lfs f0, lbl_805ABE40@sda21(r2) +/* 8017487C 001717DC EC 20 0F FC */ fnmsubs f1, f0, f31, f1 +/* 80174880 001717E0 D0 21 00 08 */ stfs f1, 8(r1) +/* 80174884 001717E4 C0 1F 00 28 */ lfs f0, 0x28(r31) +/* 80174888 001717E8 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8017488C 001717EC 40 80 00 0C */ bge lbl_80174898 +/* 80174890 001717F0 38 61 00 08 */ addi r3, r1, 8 +/* 80174894 001717F4 48 00 00 08 */ b lbl_8017489C +lbl_80174898: +/* 80174898 001717F8 38 7F 00 28 */ addi r3, r31, 0x28 +lbl_8017489C: +/* 8017489C 001717FC C0 03 00 00 */ lfs f0, 0(r3) +/* 801748A0 00171800 D0 1F 00 24 */ stfs f0, 0x24(r31) +lbl_801748A4: +/* 801748A4 00171804 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 801748A8 00171808 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801748AC 0017180C CB E1 00 30 */ lfd f31, 0x30(r1) +/* 801748B0 00171810 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801748B4 00171814 7C 08 03 A6 */ mtlr r0 +/* 801748B8 00171818 38 21 00 40 */ addi r1, r1, 0x40 +/* 801748BC 0017181C 4E 80 00 20 */ blr + +.global StartTransitionTo__Q212CScanDisplay8CDataDotFRC9CVector2ff +StartTransitionTo__Q212CScanDisplay8CDataDotFRC9CVector2ff: +/* 801748C0 00171820 D0 23 00 20 */ stfs f1, 0x20(r3) +/* 801748C4 00171824 D0 23 00 1C */ stfs f1, 0x1c(r3) +/* 801748C8 00171828 C0 03 00 0C */ lfs f0, 0xc(r3) +/* 801748CC 0017182C D0 03 00 04 */ stfs f0, 4(r3) +/* 801748D0 00171830 C0 03 00 10 */ lfs f0, 0x10(r3) +/* 801748D4 00171834 D0 03 00 08 */ stfs f0, 8(r3) +/* 801748D8 00171838 C0 04 00 00 */ lfs f0, 0(r4) +/* 801748DC 0017183C D0 03 00 14 */ stfs f0, 0x14(r3) +/* 801748E0 00171840 C0 04 00 04 */ lfs f0, 4(r4) +/* 801748E4 00171844 D0 03 00 18 */ stfs f0, 0x18(r3) +/* 801748E8 00171848 4E 80 00 20 */ blr + +.global Draw__Q212CScanDisplay8CDataDotCF6CColorf +Draw__Q212CScanDisplay8CDataDotCF6CColorf: +/* 801748EC 0017184C 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 801748F0 00171850 7C 08 02 A6 */ mflr r0 +/* 801748F4 00171854 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 801748F8 00171858 DB E1 00 90 */ stfd f31, 0x90(r1) +/* 801748FC 0017185C F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 +/* 80174900 00171860 DB C1 00 80 */ stfd f30, 0x80(r1) +/* 80174904 00171864 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 +/* 80174908 00171868 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 8017490C 0017186C 93 C1 00 78 */ stw r30, 0x78(r1) +/* 80174910 00171870 7C 7E 1B 78 */ mr r30, r3 +/* 80174914 00171874 C0 42 A1 10 */ lfs f2, lbl_805ABE30@sda21(r2) +/* 80174918 00171878 C0 03 00 24 */ lfs f0, 0x24(r3) +/* 8017491C 0017187C FF C0 08 90 */ fmr f30, f1 +/* 80174920 00171880 7C 9F 23 78 */ mr r31, r4 +/* 80174924 00171884 FC 02 00 00 */ fcmpu cr0, f2, f0 +/* 80174928 00171888 41 82 01 1C */ beq lbl_80174A44 +/* 8017492C 0017188C 80 1E 00 00 */ lwz r0, 0(r30) +/* 80174930 00171890 2C 00 00 00 */ cmpwi r0, 0 +/* 80174934 00171894 40 82 00 08 */ bne lbl_8017493C +/* 80174938 00171898 48 00 01 0C */ b lbl_80174A44 +lbl_8017493C: +/* 8017493C 0017189C C0 3E 00 0C */ lfs f1, 0xc(r30) +/* 80174940 001718A0 38 61 00 40 */ addi r3, r1, 0x40 +/* 80174944 001718A4 C0 7E 00 10 */ lfs f3, 0x10(r30) +/* 80174948 001718A8 48 19 E8 41 */ bl Translate__12CTransform4fFfff +/* 8017494C 001718AC 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80174950 001718B0 38 81 00 40 */ addi r4, r1, 0x40 +/* 80174954 001718B4 81 83 00 00 */ lwz r12, 0(r3) +/* 80174958 001718B8 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 8017495C 001718BC 7D 89 03 A6 */ mtctr r12 +/* 80174960 001718C0 4E 80 04 21 */ bctrl +/* 80174964 001718C4 38 60 00 98 */ li r3, 0x98 +/* 80174968 001718C8 48 19 6D 01 */ bl StreamBegin__9CGraphicsF13ERglPrimitive +/* 8017496C 001718CC 88 7F 00 03 */ lbz r3, 3(r31) +/* 80174970 001718D0 3C 00 43 30 */ lis r0, 0x4330 +/* 80174974 001718D4 90 01 00 70 */ stw r0, 0x70(r1) +/* 80174978 001718D8 C8 22 A1 30 */ lfd f1, lbl_805ABE50@sda21(r2) +/* 8017497C 001718DC 90 61 00 74 */ stw r3, 0x74(r1) +/* 80174980 001718E0 C0 5E 00 24 */ lfs f2, 0x24(r30) +/* 80174984 001718E4 C8 01 00 70 */ lfd f0, 0x70(r1) +/* 80174988 001718E8 EC 00 08 28 */ fsubs f0, f0, f1 +/* 8017498C 001718EC EF E2 00 32 */ fmuls f31, f2, f0 +/* 80174990 001718F0 F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 +/* 80174994 001718F4 38 61 00 0C */ addi r3, r1, 0xc +/* 80174998 001718F8 80 9F 00 00 */ lwz r4, 0(r31) +/* 8017499C 001718FC 88 01 00 08 */ lbz r0, 8(r1) +/* 801749A0 00171900 50 80 00 2E */ rlwimi r0, r4, 0, 0, 0x17 +/* 801749A4 00171904 90 01 00 0C */ stw r0, 0xc(r1) +/* 801749A8 00171908 48 19 6B A1 */ bl StreamColor__9CGraphicsFRC6CColor +/* 801749AC 0017190C C0 22 A1 10 */ lfs f1, lbl_805ABE30@sda21(r2) +/* 801749B0 00171910 C0 42 A1 14 */ lfs f2, lbl_805ABE34@sda21(r2) +/* 801749B4 00171914 48 19 6A B1 */ bl StreamTexcoord__9CGraphicsFff +/* 801749B8 00171918 FF E0 F0 50 */ fneg f31, f30 +/* 801749BC 0017191C C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) +/* 801749C0 00171920 D3 C1 00 3C */ stfs f30, 0x3c(r1) +/* 801749C4 00171924 38 61 00 34 */ addi r3, r1, 0x34 +/* 801749C8 00171928 D3 E1 00 34 */ stfs f31, 0x34(r1) +/* 801749CC 0017192C D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801749D0 00171930 48 19 6B F1 */ bl StreamVertex__9CGraphicsFRC9CVector3f +/* 801749D4 00171934 C0 22 A1 10 */ lfs f1, lbl_805ABE30@sda21(r2) +/* 801749D8 00171938 FC 40 08 90 */ fmr f2, f1 +/* 801749DC 0017193C 48 19 6A 89 */ bl StreamTexcoord__9CGraphicsFff +/* 801749E0 00171940 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) +/* 801749E4 00171944 38 61 00 28 */ addi r3, r1, 0x28 +/* 801749E8 00171948 D3 E1 00 28 */ stfs f31, 0x28(r1) +/* 801749EC 0017194C D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 801749F0 00171950 D3 E1 00 30 */ stfs f31, 0x30(r1) +/* 801749F4 00171954 48 19 6B CD */ bl StreamVertex__9CGraphicsFRC9CVector3f +/* 801749F8 00171958 C0 22 A1 14 */ lfs f1, lbl_805ABE34@sda21(r2) +/* 801749FC 0017195C FC 40 08 90 */ fmr f2, f1 +/* 80174A00 00171960 48 19 6A 65 */ bl StreamTexcoord__9CGraphicsFff +/* 80174A04 00171964 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) +/* 80174A08 00171968 38 61 00 1C */ addi r3, r1, 0x1c +/* 80174A0C 0017196C D3 C1 00 1C */ stfs f30, 0x1c(r1) +/* 80174A10 00171970 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 80174A14 00171974 D3 C1 00 24 */ stfs f30, 0x24(r1) +/* 80174A18 00171978 48 19 6B A9 */ bl StreamVertex__9CGraphicsFRC9CVector3f +/* 80174A1C 0017197C C0 22 A1 14 */ lfs f1, lbl_805ABE34@sda21(r2) +/* 80174A20 00171980 C0 42 A1 10 */ lfs f2, lbl_805ABE30@sda21(r2) +/* 80174A24 00171984 48 19 6A 41 */ bl StreamTexcoord__9CGraphicsFff +/* 80174A28 00171988 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) +/* 80174A2C 0017198C 38 61 00 10 */ addi r3, r1, 0x10 +/* 80174A30 00171990 D3 C1 00 10 */ stfs f30, 0x10(r1) +/* 80174A34 00171994 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80174A38 00171998 D3 E1 00 18 */ stfs f31, 0x18(r1) +/* 80174A3C 0017199C 48 19 6B 85 */ bl StreamVertex__9CGraphicsFRC9CVector3f +/* 80174A40 001719A0 48 19 69 D1 */ bl StreamEnd__9CGraphicsFv +lbl_80174A44: +/* 80174A44 001719A4 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 +/* 80174A48 001719A8 CB E1 00 90 */ lfd f31, 0x90(r1) +/* 80174A4C 001719AC E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 +/* 80174A50 001719B0 CB C1 00 80 */ lfd f30, 0x80(r1) +/* 80174A54 001719B4 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 80174A58 001719B8 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 80174A5C 001719BC 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 80174A60 001719C0 7C 08 03 A6 */ mtlr r0 +/* 80174A64 001719C4 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 80174A68 001719C8 4E 80 00 20 */ blr + +.global __ct__Q212CScanDisplay8CDataDotFv +__ct__Q212CScanDisplay8CDataDotFv: +/* 80174A6C 001719CC 38 00 00 00 */ li r0, 0 +/* 80174A70 001719D0 38 8D A8 98 */ addi r4, r13, lbl_805A9458@sda21 +/* 80174A74 001719D4 90 03 00 00 */ stw r0, 0(r3) +/* 80174A78 001719D8 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) +/* 80174A7C 001719DC C0 2D A8 98 */ lfs f1, lbl_805A9458@sda21(r13) +/* 80174A80 001719E0 D0 23 00 04 */ stfs f1, 4(r3) +/* 80174A84 001719E4 C0 24 00 04 */ lfs f1, 4(r4) +/* 80174A88 001719E8 D0 23 00 08 */ stfs f1, 8(r3) +/* 80174A8C 001719EC C0 23 00 04 */ lfs f1, 4(r3) +/* 80174A90 001719F0 D0 23 00 0C */ stfs f1, 0xc(r3) +/* 80174A94 001719F4 C0 23 00 08 */ lfs f1, 8(r3) +/* 80174A98 001719F8 D0 23 00 10 */ stfs f1, 0x10(r3) +/* 80174A9C 001719FC C0 23 00 04 */ lfs f1, 4(r3) +/* 80174AA0 00171A00 D0 23 00 14 */ stfs f1, 0x14(r3) +/* 80174AA4 00171A04 C0 23 00 08 */ lfs f1, 8(r3) +/* 80174AA8 00171A08 D0 23 00 18 */ stfs f1, 0x18(r3) +/* 80174AAC 00171A0C D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 80174AB0 00171A10 D0 03 00 20 */ stfs f0, 0x20(r3) +/* 80174AB4 00171A14 D0 03 00 24 */ stfs f0, 0x24(r3) +/* 80174AB8 00171A18 D0 03 00 28 */ stfs f0, 0x28(r3) +/* 80174ABC 00171A1C 4E 80 00 20 */ blr + +.global SetScanMessageTypeEffect__12CScanDisplayFP12CGuiTextPaneb +SetScanMessageTypeEffect__12CScanDisplayFP12CGuiTextPaneb: +/* 80174AC0 00171A20 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80174AC4 00171A24 7C 08 02 A6 */ mflr r0 +/* 80174AC8 00171A28 90 01 00 14 */ stw r0, 0x14(r1) +/* 80174ACC 00171A2C 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 80174AD0 00171A30 41 82 00 1C */ beq lbl_80174AEC +/* 80174AD4 00171A34 C0 22 A1 48 */ lfs f1, lbl_805ABE68@sda21(r2) +/* 80174AD8 00171A38 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80174ADC 00171A3C C0 42 A1 4C */ lfs f2, lbl_805ABE6C@sda21(r2) +/* 80174AE0 00171A40 38 80 00 01 */ li r4, 1 +/* 80174AE4 00171A44 48 15 36 35 */ bl SetTypeWriteEffectOptions__15CGuiTextSupportFbff +/* 80174AE8 00171A48 48 00 00 18 */ b lbl_80174B00 +lbl_80174AEC: +/* 80174AEC 00171A4C C0 22 A1 10 */ lfs f1, lbl_805ABE30@sda21(r2) +/* 80174AF0 00171A50 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80174AF4 00171A54 38 80 00 00 */ li r4, 0 +/* 80174AF8 00171A58 FC 40 08 90 */ fmr f2, f1 +/* 80174AFC 00171A5C 48 15 36 1D */ bl SetTypeWriteEffectOptions__15CGuiTextSupportFbff +lbl_80174B00: +/* 80174B00 00171A60 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80174B04 00171A64 7C 08 03 A6 */ mtlr r0 +/* 80174B08 00171A68 38 21 00 10 */ addi r1, r1, 0x10 +/* 80174B0C 00171A6C 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptActorRotate.s b/asm/Kyoto_CWD/ScriptObjects/CScriptActorRotate.s new file mode 100644 index 00000000..e1be9d4d --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptActorRotate.s @@ -0,0 +1,946 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__18CScriptActorRotateFv +__dt__18CScriptActorRotateFv: +/* 80153A2C 0015098C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80153A30 00150990 7C 08 02 A6 */ mflr r0 +/* 80153A34 00150994 90 01 00 24 */ stw r0, 0x24(r1) +/* 80153A38 00150998 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80153A3C 0015099C 7C 9F 23 78 */ mr r31, r4 +/* 80153A40 001509A0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80153A44 001509A4 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80153A48 001509A8 41 82 00 74 */ beq lbl_80153ABC +/* 80153A4C 001509AC 3C 60 80 3E */ lis r3, lbl_803E2D08@ha +/* 80153A50 001509B0 34 1E 00 48 */ addic. r0, r30, 0x48 +/* 80153A54 001509B4 38 03 2D 08 */ addi r0, r3, lbl_803E2D08@l +/* 80153A58 001509B8 90 1E 00 00 */ stw r0, 0(r30) +/* 80153A5C 001509BC 41 82 00 44 */ beq lbl_80153AA0 +/* 80153A60 001509C0 80 1E 00 4C */ lwz r0, 0x4c(r30) +/* 80153A64 001509C4 80 7E 00 54 */ lwz r3, 0x54(r30) +/* 80153A68 001509C8 1C 00 00 34 */ mulli r0, r0, 0x34 +/* 80153A6C 001509CC 90 61 00 0C */ stw r3, 0xc(r1) +/* 80153A70 001509D0 7C 64 1B 78 */ mr r4, r3 +/* 80153A74 001509D4 7C 03 02 14 */ add r0, r3, r0 +/* 80153A78 001509D8 90 61 00 08 */ stw r3, 8(r1) +/* 80153A7C 001509DC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80153A80 001509E0 90 01 00 10 */ stw r0, 0x10(r1) +/* 80153A84 001509E4 48 00 00 08 */ b lbl_80153A8C +lbl_80153A88: +/* 80153A88 001509E8 38 84 00 34 */ addi r4, r4, 0x34 +lbl_80153A8C: +/* 80153A8C 001509EC 7C 04 00 40 */ cmplw r4, r0 +/* 80153A90 001509F0 40 82 FF F8 */ bne lbl_80153A88 +/* 80153A94 001509F4 28 03 00 00 */ cmplwi r3, 0 +/* 80153A98 001509F8 41 82 00 08 */ beq lbl_80153AA0 +/* 80153A9C 001509FC 48 1C 1E 95 */ bl Free__7CMemoryFPCv +lbl_80153AA0: +/* 80153AA0 00150A00 7F C3 F3 78 */ mr r3, r30 +/* 80153AA4 00150A04 38 80 00 00 */ li r4, 0 +/* 80153AA8 00150A08 4B EF D7 CD */ bl __dt__7CEntityFv +/* 80153AAC 00150A0C 7F E0 07 35 */ extsh. r0, r31 +/* 80153AB0 00150A10 40 81 00 0C */ ble lbl_80153ABC +/* 80153AB4 00150A14 7F C3 F3 78 */ mr r3, r30 +/* 80153AB8 00150A18 48 1C 1E 79 */ bl Free__7CMemoryFPCv +lbl_80153ABC: +/* 80153ABC 00150A1C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80153AC0 00150A20 7F C3 F3 78 */ mr r3, r30 +/* 80153AC4 00150A24 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80153AC8 00150A28 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80153ACC 00150A2C 7C 08 03 A6 */ mtlr r0 +/* 80153AD0 00150A30 38 21 00 20 */ addi r1, r1, 0x20 +/* 80153AD4 00150A34 4E 80 00 20 */ blr + +.global Accept__18CScriptActorRotateFR8IVisitor +Accept__18CScriptActorRotateFR8IVisitor: +/* 80153AD8 00150A38 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80153ADC 00150A3C 7C 08 02 A6 */ mflr r0 +/* 80153AE0 00150A40 90 01 00 14 */ stw r0, 0x14(r1) +/* 80153AE4 00150A44 7C 60 1B 78 */ mr r0, r3 +/* 80153AE8 00150A48 7C 83 23 78 */ mr r3, r4 +/* 80153AEC 00150A4C 81 84 00 00 */ lwz r12, 0(r4) +/* 80153AF0 00150A50 7C 04 03 78 */ mr r4, r0 +/* 80153AF4 00150A54 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 80153AF8 00150A58 7D 89 03 A6 */ mtctr r12 +/* 80153AFC 00150A5C 4E 80 04 21 */ bctrl +/* 80153B00 00150A60 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80153B04 00150A64 7C 08 03 A6 */ mtlr r0 +/* 80153B08 00150A68 38 21 00 10 */ addi r1, r1, 0x10 +/* 80153B0C 00150A6C 4E 80 00 20 */ blr + +.global AcceptScriptMsg__18CScriptActorRotateF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__18CScriptActorRotateF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 80153B10 00150A70 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80153B14 00150A74 7C 08 02 A6 */ mflr r0 +/* 80153B18 00150A78 90 01 00 34 */ stw r0, 0x34(r1) +/* 80153B1C 00150A7C BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 80153B20 00150A80 7C 9C 23 78 */ mr r28, r4 +/* 80153B24 00150A84 2C 1C 00 13 */ cmpwi r28, 0x13 +/* 80153B28 00150A88 7C 7B 1B 78 */ mr r27, r3 +/* 80153B2C 00150A8C 7C BD 2B 78 */ mr r29, r5 +/* 80153B30 00150A90 7C DE 33 78 */ mr r30, r6 +/* 80153B34 00150A94 3B E0 00 00 */ li r31, 0 +/* 80153B38 00150A98 41 82 00 4C */ beq lbl_80153B84 +/* 80153B3C 00150A9C 40 80 00 1C */ bge lbl_80153B58 +/* 80153B40 00150AA0 2C 1C 00 08 */ cmpwi r28, 8 +/* 80153B44 00150AA4 41 82 00 40 */ beq lbl_80153B84 +/* 80153B48 00150AA8 40 80 00 60 */ bge lbl_80153BA8 +/* 80153B4C 00150AAC 2C 1C 00 01 */ cmpwi r28, 1 +/* 80153B50 00150AB0 41 82 00 14 */ beq lbl_80153B64 +/* 80153B54 00150AB4 48 00 00 54 */ b lbl_80153BA8 +lbl_80153B58: +/* 80153B58 00150AB8 2C 1C 00 21 */ cmpwi r28, 0x21 +/* 80153B5C 00150ABC 41 82 00 1C */ beq lbl_80153B78 +/* 80153B60 00150AC0 48 00 00 48 */ b lbl_80153BA8 +lbl_80153B64: +/* 80153B64 00150AC4 A0 1D 00 00 */ lhz r0, 0(r29) +/* 80153B68 00150AC8 38 A1 00 0C */ addi r5, r1, 0xc +/* 80153B6C 00150ACC B0 01 00 0C */ sth r0, 0xc(r1) +/* 80153B70 00150AD0 4B EF D5 ED */ bl AcceptScriptMsg__7CEntityF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 80153B74 00150AD4 3B E0 00 01 */ li r31, 1 +lbl_80153B78: +/* 80153B78 00150AD8 88 1B 00 58 */ lbz r0, 0x58(r27) +/* 80153B7C 00150ADC 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 80153B80 00150AE0 41 82 00 28 */ beq lbl_80153BA8 +lbl_80153B84: +/* 80153B84 00150AE4 88 1B 00 30 */ lbz r0, 0x30(r27) +/* 80153B88 00150AE8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80153B8C 00150AEC 41 82 00 1C */ beq lbl_80153BA8 +/* 80153B90 00150AF0 20 1C 00 08 */ subfic r0, r28, 8 +/* 80153B94 00150AF4 7F 63 DB 78 */ mr r3, r27 +/* 80153B98 00150AF8 7C 00 00 34 */ cntlzw r0, r0 +/* 80153B9C 00150AFC 7F C5 F3 78 */ mr r5, r30 +/* 80153BA0 00150B00 54 04 D9 7E */ srwi r4, r0, 5 +/* 80153BA4 00150B04 48 00 00 3D */ bl UpdateActors__18CScriptActorRotateFbR13CStateManager +lbl_80153BA8: +/* 80153BA8 00150B08 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80153BAC 00150B0C 40 82 00 20 */ bne lbl_80153BCC +/* 80153BB0 00150B10 A0 1D 00 00 */ lhz r0, 0(r29) +/* 80153BB4 00150B14 7F 63 DB 78 */ mr r3, r27 +/* 80153BB8 00150B18 7F 84 E3 78 */ mr r4, r28 +/* 80153BBC 00150B1C 7F C6 F3 78 */ mr r6, r30 +/* 80153BC0 00150B20 B0 01 00 08 */ sth r0, 8(r1) +/* 80153BC4 00150B24 38 A1 00 08 */ addi r5, r1, 8 +/* 80153BC8 00150B28 4B EF D5 95 */ bl AcceptScriptMsg__7CEntityF20EScriptObjectMessage9TUniqueIdR13CStateManager +lbl_80153BCC: +/* 80153BCC 00150B2C BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 80153BD0 00150B30 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80153BD4 00150B34 7C 08 03 A6 */ mtlr r0 +/* 80153BD8 00150B38 38 21 00 30 */ addi r1, r1, 0x30 +/* 80153BDC 00150B3C 4E 80 00 20 */ blr + +.global UpdateActors__18CScriptActorRotateFbR13CStateManager +UpdateActors__18CScriptActorRotateFbR13CStateManager: +/* 80153BE0 00150B40 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 80153BE4 00150B44 7C 08 02 A6 */ mflr r0 +/* 80153BE8 00150B48 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 80153BEC 00150B4C BE C1 00 C8 */ stmw r22, 0xc8(r1) +/* 80153BF0 00150B50 7C 77 1B 78 */ mr r23, r3 +/* 80153BF4 00150B54 7C 98 23 78 */ mr r24, r4 +/* 80153BF8 00150B58 7C B9 2B 78 */ mr r25, r5 +/* 80153BFC 00150B5C 88 03 00 58 */ lbz r0, 0x58(r3) +/* 80153C00 00150B60 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80153C04 00150B64 40 82 02 4C */ bne lbl_80153E50 +/* 80153C08 00150B68 80 17 00 4C */ lwz r0, 0x4c(r23) +/* 80153C0C 00150B6C 80 77 00 54 */ lwz r3, 0x54(r23) +/* 80153C10 00150B70 1C 00 00 34 */ mulli r0, r0, 0x34 +/* 80153C14 00150B74 90 61 00 10 */ stw r3, 0x10(r1) +/* 80153C18 00150B78 7C 03 02 14 */ add r0, r3, r0 +/* 80153C1C 00150B7C 90 61 00 0C */ stw r3, 0xc(r1) +/* 80153C20 00150B80 90 01 00 18 */ stw r0, 0x18(r1) +/* 80153C24 00150B84 90 01 00 14 */ stw r0, 0x14(r1) +/* 80153C28 00150B88 48 00 00 08 */ b lbl_80153C30 +lbl_80153C2C: +/* 80153C2C 00150B8C 38 63 00 34 */ addi r3, r3, 0x34 +lbl_80153C30: +/* 80153C30 00150B90 7C 03 00 40 */ cmplw r3, r0 +/* 80153C34 00150B94 40 82 FF F8 */ bne lbl_80153C2C +/* 80153C38 00150B98 38 00 00 00 */ li r0, 0 +/* 80153C3C 00150B9C 3B 41 00 8C */ addi r26, r1, 0x8c +/* 80153C40 00150BA0 90 17 00 4C */ stw r0, 0x4c(r23) +/* 80153C44 00150BA4 83 F7 00 2C */ lwz r31, 0x2c(r23) +/* 80153C48 00150BA8 48 00 01 A4 */ b lbl_80153DEC +lbl_80153C4C: +/* 80153C4C 00150BAC 80 1F 00 00 */ lwz r0, 0(r31) +/* 80153C50 00150BB0 2C 00 00 12 */ cmpwi r0, 0x12 +/* 80153C54 00150BB4 40 82 01 94 */ bne lbl_80153DE8 +/* 80153C58 00150BB8 80 1F 00 04 */ lwz r0, 4(r31) +/* 80153C5C 00150BBC 2C 00 00 14 */ cmpwi r0, 0x14 +/* 80153C60 00150BC0 40 82 01 88 */ bne lbl_80153DE8 +/* 80153C64 00150BC4 80 1F 00 08 */ lwz r0, 8(r31) +/* 80153C68 00150BC8 7F 24 CB 78 */ mr r4, r25 +/* 80153C6C 00150BCC 38 61 00 38 */ addi r3, r1, 0x38 +/* 80153C70 00150BD0 38 A1 00 1C */ addi r5, r1, 0x1c +/* 80153C74 00150BD4 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80153C78 00150BD8 4B EF 43 51 */ bl GetIdListForScript__13CStateManagerCF9TEditorId +/* 80153C7C 00150BDC 80 C1 00 38 */ lwz r6, 0x38(r1) +/* 80153C80 00150BE0 38 00 00 00 */ li r0, 0 +/* 80153C84 00150BE4 80 81 00 40 */ lwz r4, 0x40(r1) +/* 80153C88 00150BE8 80 A1 00 3C */ lwz r5, 0x3c(r1) +/* 80153C8C 00150BEC 80 61 00 44 */ lwz r3, 0x44(r1) +/* 80153C90 00150BF0 7C 06 20 40 */ cmplw r6, r4 +/* 80153C94 00150BF4 90 C1 00 48 */ stw r6, 0x48(r1) +/* 80153C98 00150BF8 90 A1 00 4C */ stw r5, 0x4c(r1) +/* 80153C9C 00150BFC 90 81 00 50 */ stw r4, 0x50(r1) +/* 80153CA0 00150C00 90 61 00 54 */ stw r3, 0x54(r1) +/* 80153CA4 00150C04 40 82 00 10 */ bne lbl_80153CB4 +/* 80153CA8 00150C08 7C 05 18 40 */ cmplw r5, r3 +/* 80153CAC 00150C0C 40 82 00 08 */ bne lbl_80153CB4 +/* 80153CB0 00150C10 38 00 00 01 */ li r0, 1 +lbl_80153CB4: +/* 80153CB4 00150C14 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 80153CB8 00150C18 40 82 01 30 */ bne lbl_80153DE8 +/* 80153CBC 00150C1C 80 E1 00 50 */ lwz r7, 0x50(r1) +/* 80153CC0 00150C20 38 61 00 30 */ addi r3, r1, 0x30 +/* 80153CC4 00150C24 80 C1 00 54 */ lwz r6, 0x54(r1) +/* 80153CC8 00150C28 38 81 00 28 */ addi r4, r1, 0x28 +/* 80153CCC 00150C2C 80 A1 00 48 */ lwz r5, 0x48(r1) +/* 80153CD0 00150C30 80 01 00 4C */ lwz r0, 0x4c(r1) +/* 80153CD4 00150C34 90 E1 00 28 */ stw r7, 0x28(r1) +/* 80153CD8 00150C38 90 C1 00 2C */ stw r6, 0x2c(r1) +/* 80153CDC 00150C3C 90 A1 00 30 */ stw r5, 0x30(r1) +/* 80153CE0 00150C40 90 01 00 34 */ stw r0, 0x34(r1) +/* 80153CE4 00150C44 83 77 00 4C */ lwz r27, 0x4c(r23) +/* 80153CE8 00150C48 48 00 08 B9 */ bl "distance,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>14const_iterator>__4rstlFQ34rstl195red_black_tree<13TGameScriptId,Q24rstl32pair<13TGameScriptId,9TUniqueId>,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>14const_iteratorQ34rstl195red_black_tree<13TGameScriptId,Q24rstl32" +/* 80153CEC 00150C4C 7C 60 1B 78 */ mr r0, r3 +/* 80153CF0 00150C50 38 77 00 48 */ addi r3, r23, 0x48 +/* 80153CF4 00150C54 7C 9B 02 14 */ add r4, r27, r0 +/* 80153CF8 00150C58 48 00 09 85 */ bl "reserve__Q24rstl75vector,Q24rstl17rmemory_allocator>Fi" +/* 80153CFC 00150C5C 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 80153D00 00150C60 83 A1 00 4C */ lwz r29, 0x4c(r1) +/* 80153D04 00150C64 83 81 00 50 */ lwz r28, 0x50(r1) +/* 80153D08 00150C68 83 61 00 54 */ lwz r27, 0x54(r1) +/* 80153D0C 00150C6C 48 00 00 BC */ b lbl_80153DC8 +lbl_80153D10: +/* 80153D10 00150C70 A0 1E 00 14 */ lhz r0, 0x14(r30) +/* 80153D14 00150C74 7F 23 CB 78 */ mr r3, r25 +/* 80153D18 00150C78 38 81 00 08 */ addi r4, r1, 8 +/* 80153D1C 00150C7C B0 01 00 08 */ sth r0, 8(r1) +/* 80153D20 00150C80 4B EF 88 55 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80153D24 00150C84 7C 64 1B 78 */ mr r4, r3 +/* 80153D28 00150C88 38 61 00 20 */ addi r3, r1, 0x20 +/* 80153D2C 00150C8C 4B F5 BF 65 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80153D30 00150C90 82 C3 00 04 */ lwz r22, 4(r3) +/* 80153D34 00150C94 28 16 00 00 */ cmplwi r22, 0 +/* 80153D38 00150C98 41 82 00 80 */ beq lbl_80153DB8 +/* 80153D3C 00150C9C 38 61 00 58 */ addi r3, r1, 0x58 +/* 80153D40 00150CA0 38 96 00 34 */ addi r4, r22, 0x34 +/* 80153D44 00150CA4 48 1B EE FD */ bl GetRotation__12CTransform4fCFv +/* 80153D48 00150CA8 A0 16 00 08 */ lhz r0, 8(r22) +/* 80153D4C 00150CAC 7F 43 D3 78 */ mr r3, r26 +/* 80153D50 00150CB0 38 81 00 58 */ addi r4, r1, 0x58 +/* 80153D54 00150CB4 B0 01 00 88 */ sth r0, 0x88(r1) +/* 80153D58 00150CB8 48 1B EE 1D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80153D5C 00150CBC 80 17 00 4C */ lwz r0, 0x4c(r23) +/* 80153D60 00150CC0 80 B7 00 50 */ lwz r5, 0x50(r23) +/* 80153D64 00150CC4 7C 00 28 00 */ cmpw r0, r5 +/* 80153D68 00150CC8 41 80 00 1C */ blt lbl_80153D84 +/* 80153D6C 00150CCC 2C 05 00 00 */ cmpwi r5, 0 +/* 80153D70 00150CD0 38 77 00 48 */ addi r3, r23, 0x48 +/* 80153D74 00150CD4 38 80 00 04 */ li r4, 4 +/* 80153D78 00150CD8 41 82 00 08 */ beq lbl_80153D80 +/* 80153D7C 00150CDC 54 A4 08 3C */ slwi r4, r5, 1 +lbl_80153D80: +/* 80153D80 00150CE0 48 00 08 FD */ bl "reserve__Q24rstl75vector,Q24rstl17rmemory_allocator>Fi" +lbl_80153D84: +/* 80153D84 00150CE4 80 17 00 4C */ lwz r0, 0x4c(r23) +/* 80153D88 00150CE8 80 77 00 54 */ lwz r3, 0x54(r23) +/* 80153D8C 00150CEC 1C 00 00 34 */ mulli r0, r0, 0x34 +/* 80153D90 00150CF0 7C A3 02 15 */ add. r5, r3, r0 +/* 80153D94 00150CF4 41 82 00 18 */ beq lbl_80153DAC +/* 80153D98 00150CF8 A0 01 00 88 */ lhz r0, 0x88(r1) +/* 80153D9C 00150CFC 7F 44 D3 78 */ mr r4, r26 +/* 80153DA0 00150D00 38 65 00 04 */ addi r3, r5, 4 +/* 80153DA4 00150D04 B0 05 00 00 */ sth r0, 0(r5) +/* 80153DA8 00150D08 48 1B ED CD */ bl __ct__12CTransform4fFRC12CTransform4f +lbl_80153DAC: +/* 80153DAC 00150D0C 80 77 00 4C */ lwz r3, 0x4c(r23) +/* 80153DB0 00150D10 38 03 00 01 */ addi r0, r3, 1 +/* 80153DB4 00150D14 90 17 00 4C */ stw r0, 0x4c(r23) +lbl_80153DB8: +/* 80153DB8 00150D18 7F A3 EB 78 */ mr r3, r29 +/* 80153DBC 00150D1C 7F C4 F3 78 */ mr r4, r30 +/* 80153DC0 00150D20 48 1E 88 21 */ bl rbtree_traverse_forward__4rstlFPCvPv +/* 80153DC4 00150D24 7C 7E 1B 78 */ mr r30, r3 +lbl_80153DC8: +/* 80153DC8 00150D28 7C 1E E0 40 */ cmplw r30, r28 +/* 80153DCC 00150D2C 38 00 00 00 */ li r0, 0 +/* 80153DD0 00150D30 40 82 00 0C */ bne lbl_80153DDC +/* 80153DD4 00150D34 7C 1D D8 40 */ cmplw r29, r27 +/* 80153DD8 00150D38 41 82 00 08 */ beq lbl_80153DE0 +lbl_80153DDC: +/* 80153DDC 00150D3C 38 00 00 01 */ li r0, 1 +lbl_80153DE0: +/* 80153DE0 00150D40 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 80153DE4 00150D44 40 82 FF 2C */ bne lbl_80153D10 +lbl_80153DE8: +/* 80153DE8 00150D48 3B FF 00 0C */ addi r31, r31, 0xc +lbl_80153DEC: +/* 80153DEC 00150D4C 80 17 00 24 */ lwz r0, 0x24(r23) +/* 80153DF0 00150D50 80 77 00 2C */ lwz r3, 0x2c(r23) +/* 80153DF4 00150D54 1C 00 00 0C */ mulli r0, r0, 0xc +/* 80153DF8 00150D58 7C 03 02 14 */ add r0, r3, r0 +/* 80153DFC 00150D5C 7C 1F 00 40 */ cmplw r31, r0 +/* 80153E00 00150D60 40 82 FE 4C */ bne lbl_80153C4C +/* 80153E04 00150D64 7E E3 BB 78 */ mr r3, r23 +/* 80153E08 00150D68 7F 25 CB 78 */ mr r5, r25 +/* 80153E0C 00150D6C 38 80 00 12 */ li r4, 0x12 +/* 80153E10 00150D70 38 C0 FF FF */ li r6, -1 +/* 80153E14 00150D74 4B EF D2 AD */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 80153E18 00150D78 80 17 00 4C */ lwz r0, 0x4c(r23) +/* 80153E1C 00150D7C 2C 00 00 00 */ cmpwi r0, 0 +/* 80153E20 00150D80 41 82 00 30 */ beq lbl_80153E50 +/* 80153E24 00150D84 88 77 00 58 */ lbz r3, 0x58(r23) +/* 80153E28 00150D88 38 80 00 01 */ li r4, 1 +/* 80153E2C 00150D8C 50 83 3E 30 */ rlwimi r3, r4, 7, 0x18, 0x18 +/* 80153E30 00150D90 57 00 06 3F */ clrlwi. r0, r24, 0x18 +/* 80153E34 00150D94 98 77 00 58 */ stb r3, 0x58(r23) +/* 80153E38 00150D98 41 82 00 10 */ beq lbl_80153E48 +/* 80153E3C 00150D9C C0 17 00 40 */ lfs f0, 0x40(r23) +/* 80153E40 00150DA0 D0 17 00 44 */ stfs f0, 0x44(r23) +/* 80153E44 00150DA4 48 00 00 0C */ b lbl_80153E50 +lbl_80153E48: +/* 80153E48 00150DA8 C0 02 9D F8 */ lfs f0, lbl_805ABB18@sda21(r2) +/* 80153E4C 00150DAC D0 17 00 44 */ stfs f0, 0x44(r23) +lbl_80153E50: +/* 80153E50 00150DB0 BA C1 00 C8 */ lmw r22, 0xc8(r1) +/* 80153E54 00150DB4 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 80153E58 00150DB8 7C 08 03 A6 */ mtlr r0 +/* 80153E5C 00150DBC 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 80153E60 00150DC0 4E 80 00 20 */ blr + +.global Think__18CScriptActorRotateFfR13CStateManager +Think__18CScriptActorRotateFfR13CStateManager: +/* 80153E64 00150DC4 94 21 FE 30 */ stwu r1, -0x1d0(r1) +/* 80153E68 00150DC8 7C 08 02 A6 */ mflr r0 +/* 80153E6C 00150DCC 90 01 01 D4 */ stw r0, 0x1d4(r1) +/* 80153E70 00150DD0 DB E1 01 C0 */ stfd f31, 0x1c0(r1) +/* 80153E74 00150DD4 F3 E1 01 C8 */ psq_st f31, 456(r1), 0, qr0 +/* 80153E78 00150DD8 93 E1 01 BC */ stw r31, 0x1bc(r1) +/* 80153E7C 00150DDC 93 C1 01 B8 */ stw r30, 0x1b8(r1) +/* 80153E80 00150DE0 93 A1 01 B4 */ stw r29, 0x1b4(r1) +/* 80153E84 00150DE4 93 81 01 B0 */ stw r28, 0x1b0(r1) +/* 80153E88 00150DE8 88 03 00 58 */ lbz r0, 0x58(r3) +/* 80153E8C 00150DEC 7C 7E 1B 78 */ mr r30, r3 +/* 80153E90 00150DF0 7C 9F 23 78 */ mr r31, r4 +/* 80153E94 00150DF4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80153E98 00150DF8 41 82 02 24 */ beq lbl_801540BC +/* 80153E9C 00150DFC 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 80153EA0 00150E00 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80153EA4 00150E04 40 82 00 08 */ bne lbl_80153EAC +/* 80153EA8 00150E08 48 00 02 14 */ b lbl_801540BC +lbl_80153EAC: +/* 80153EAC 00150E0C C0 1E 00 44 */ lfs f0, 0x44(r30) +/* 80153EB0 00150E10 EC 00 08 2A */ fadds f0, f0, f1 +/* 80153EB4 00150E14 D0 1E 00 44 */ stfs f0, 0x44(r30) +/* 80153EB8 00150E18 C0 3E 00 44 */ lfs f1, 0x44(r30) +/* 80153EBC 00150E1C C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 80153EC0 00150E20 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80153EC4 00150E24 4C 41 13 82 */ cror 2, 1, 2 +/* 80153EC8 00150E28 40 82 00 1C */ bne lbl_80153EE4 +/* 80153ECC 00150E2C 88 1E 00 58 */ lbz r0, 0x58(r30) +/* 80153ED0 00150E30 38 60 00 00 */ li r3, 0 +/* 80153ED4 00150E34 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80153ED8 00150E38 98 1E 00 58 */ stb r0, 0x58(r30) +/* 80153EDC 00150E3C C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 80153EE0 00150E40 D0 1E 00 44 */ stfs f0, 0x44(r30) +lbl_80153EE4: +/* 80153EE4 00150E44 C0 3E 00 44 */ lfs f1, 0x44(r30) +/* 80153EE8 00150E48 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 80153EEC 00150E4C 83 BE 00 54 */ lwz r29, 0x54(r30) +/* 80153EF0 00150E50 EF E1 00 24 */ fdivs f31, f1, f0 +/* 80153EF4 00150E54 48 00 01 74 */ b lbl_80154068 +lbl_80153EF8: +/* 80153EF8 00150E58 A0 1D 00 00 */ lhz r0, 0(r29) +/* 80153EFC 00150E5C 7F E3 FB 78 */ mr r3, r31 +/* 80153F00 00150E60 38 81 00 0C */ addi r4, r1, 0xc +/* 80153F04 00150E64 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80153F08 00150E68 4B EF 86 6D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80153F0C 00150E6C 7C 64 1B 78 */ mr r4, r3 +/* 80153F10 00150E70 38 61 00 24 */ addi r3, r1, 0x24 +/* 80153F14 00150E74 4B F5 BD 7D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80153F18 00150E78 83 83 00 04 */ lwz r28, 4(r3) +/* 80153F1C 00150E7C 28 1C 00 00 */ cmplwi r28, 0 +/* 80153F20 00150E80 41 82 01 44 */ beq lbl_80154064 +/* 80153F24 00150E84 C0 1E 00 3C */ lfs f0, 0x3c(r30) +/* 80153F28 00150E88 38 61 00 5C */ addi r3, r1, 0x5c +/* 80153F2C 00150E8C C0 22 9D FC */ lfs f1, lbl_805ABB1C@sda21(r2) +/* 80153F30 00150E90 38 81 00 10 */ addi r4, r1, 0x10 +/* 80153F34 00150E94 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 80153F38 00150E98 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80153F3C 00150E9C D0 01 00 10 */ stfs f0, 0x10(r1) +/* 80153F40 00150EA0 C0 1E 00 38 */ lfs f0, 0x38(r30) +/* 80153F44 00150EA4 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 80153F48 00150EA8 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80153F4C 00150EAC D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80153F50 00150EB0 C0 1E 00 34 */ lfs f0, 0x34(r30) +/* 80153F54 00150EB4 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 80153F58 00150EB8 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80153F5C 00150EBC D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80153F60 00150EC0 48 1B F8 B1 */ bl RotateZ__12CTransform4fFRC9CRelAngle +/* 80153F64 00150EC4 38 61 00 8C */ addi r3, r1, 0x8c +/* 80153F68 00150EC8 38 81 00 14 */ addi r4, r1, 0x14 +/* 80153F6C 00150ECC 48 1B F9 3D */ bl RotateY__12CTransform4fFRC9CRelAngle +/* 80153F70 00150ED0 38 61 00 BC */ addi r3, r1, 0xbc +/* 80153F74 00150ED4 38 81 00 18 */ addi r4, r1, 0x18 +/* 80153F78 00150ED8 48 1B F9 C9 */ bl RotateX__12CTransform4fFRC9CRelAngle +/* 80153F7C 00150EDC 38 61 00 EC */ addi r3, r1, 0xec +/* 80153F80 00150EE0 38 81 00 BC */ addi r4, r1, 0xbc +/* 80153F84 00150EE4 38 A1 00 8C */ addi r5, r1, 0x8c +/* 80153F88 00150EE8 48 1B E9 C9 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80153F8C 00150EEC 38 61 01 1C */ addi r3, r1, 0x11c +/* 80153F90 00150EF0 38 81 00 EC */ addi r4, r1, 0xec +/* 80153F94 00150EF4 38 A1 00 5C */ addi r5, r1, 0x5c +/* 80153F98 00150EF8 48 1B E9 B9 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80153F9C 00150EFC 38 61 01 7C */ addi r3, r1, 0x17c +/* 80153FA0 00150F00 38 81 01 1C */ addi r4, r1, 0x11c +/* 80153FA4 00150F04 48 1B EB D1 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80153FA8 00150F08 38 61 00 2C */ addi r3, r1, 0x2c +/* 80153FAC 00150F0C 38 9D 00 04 */ addi r4, r29, 4 +/* 80153FB0 00150F10 38 A1 01 7C */ addi r5, r1, 0x17c +/* 80153FB4 00150F14 48 1B E9 9D */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80153FB8 00150F18 38 61 01 4C */ addi r3, r1, 0x14c +/* 80153FBC 00150F1C 38 81 00 2C */ addi r4, r1, 0x2c +/* 80153FC0 00150F20 48 1B EB B5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80153FC4 00150F24 C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 80153FC8 00150F28 38 7C 00 34 */ addi r3, r28, 0x34 +/* 80153FCC 00150F2C C0 01 01 78 */ lfs f0, 0x178(r1) +/* 80153FD0 00150F30 38 81 01 4C */ addi r4, r1, 0x14c +/* 80153FD4 00150F34 C0 9C 00 50 */ lfs f4, 0x50(r28) +/* 80153FD8 00150F38 C0 21 01 68 */ lfs f1, 0x168(r1) +/* 80153FDC 00150F3C EC 00 10 2A */ fadds f0, f0, f2 +/* 80153FE0 00150F40 C0 5C 00 40 */ lfs f2, 0x40(r28) +/* 80153FE4 00150F44 C0 61 01 58 */ lfs f3, 0x158(r1) +/* 80153FE8 00150F48 EC 21 20 2A */ fadds f1, f1, f4 +/* 80153FEC 00150F4C D0 01 01 78 */ stfs f0, 0x178(r1) +/* 80153FF0 00150F50 EC 03 10 2A */ fadds f0, f3, f2 +/* 80153FF4 00150F54 D0 21 01 68 */ stfs f1, 0x168(r1) +/* 80153FF8 00150F58 D0 01 01 58 */ stfs f0, 0x158(r1) +/* 80153FFC 00150F5C 48 1B EB 45 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80154000 00150F60 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 80154004 00150F64 38 A0 00 01 */ li r5, 1 +/* 80154008 00150F68 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 8015400C 00150F6C 7F E3 FB 78 */ mr r3, r31 +/* 80154010 00150F70 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 80154014 00150F74 38 81 00 08 */ addi r4, r1, 8 +/* 80154018 00150F78 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 8015401C 00150F7C 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 80154020 00150F80 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 80154024 00150F84 88 1C 00 E4 */ lbz r0, 0xe4(r28) +/* 80154028 00150F88 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 8015402C 00150F8C 98 1C 00 E4 */ stb r0, 0xe4(r28) +/* 80154030 00150F90 A0 1D 00 00 */ lhz r0, 0(r29) +/* 80154034 00150F94 B0 01 00 08 */ sth r0, 8(r1) +/* 80154038 00150F98 4B EF 85 3D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8015403C 00150F9C 7C 64 1B 78 */ mr r4, r3 +/* 80154040 00150FA0 38 61 00 1C */ addi r3, r1, 0x1c +/* 80154044 00150FA4 4B F5 4D D1 */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" +/* 80154048 00150FA8 80 83 00 04 */ lwz r4, 4(r3) +/* 8015404C 00150FAC 28 04 00 00 */ cmplwi r4, 0 +/* 80154050 00150FB0 41 82 00 14 */ beq lbl_80154064 +/* 80154054 00150FB4 7F C3 F3 78 */ mr r3, r30 +/* 80154058 00150FB8 7F E6 FB 78 */ mr r6, r31 +/* 8015405C 00150FBC 38 A1 01 7C */ addi r5, r1, 0x17c +/* 80154060 00150FC0 48 00 01 D1 */ bl sub_80154230 +lbl_80154064: +/* 80154064 00150FC4 3B BD 00 34 */ addi r29, r29, 0x34 +lbl_80154068: +/* 80154068 00150FC8 80 1E 00 4C */ lwz r0, 0x4c(r30) +/* 8015406C 00150FCC 80 7E 00 54 */ lwz r3, 0x54(r30) +/* 80154070 00150FD0 1C 00 00 34 */ mulli r0, r0, 0x34 +/* 80154074 00150FD4 7C 03 02 14 */ add r0, r3, r0 +/* 80154078 00150FD8 7C 1D 00 40 */ cmplw r29, r0 +/* 8015407C 00150FDC 40 82 FE 7C */ bne lbl_80153EF8 +/* 80154080 00150FE0 88 7E 00 58 */ lbz r3, 0x58(r30) +/* 80154084 00150FE4 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 80154088 00150FE8 40 82 00 34 */ bne lbl_801540BC +/* 8015408C 00150FEC 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 80154090 00150FF0 41 82 00 10 */ beq lbl_801540A0 +/* 80154094 00150FF4 7F C3 F3 78 */ mr r3, r30 +/* 80154098 00150FF8 7F E4 FB 78 */ mr r4, r31 +/* 8015409C 00150FFC 48 00 00 49 */ bl RebuildSpiderBallWaypoints__18CScriptActorRotateFR13CStateManager +lbl_801540A0: +/* 801540A0 00151000 88 1E 00 58 */ lbz r0, 0x58(r30) +/* 801540A4 00151004 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 801540A8 00151008 41 82 00 14 */ beq lbl_801540BC +/* 801540AC 0015100C 7F C3 F3 78 */ mr r3, r30 +/* 801540B0 00151010 7F E5 FB 78 */ mr r5, r31 +/* 801540B4 00151014 38 80 00 00 */ li r4, 0 +/* 801540B8 00151018 4B FF FB 29 */ bl UpdateActors__18CScriptActorRotateFbR13CStateManager +lbl_801540BC: +/* 801540BC 0015101C E3 E1 01 C8 */ psq_l f31, 456(r1), 0, qr0 +/* 801540C0 00151020 80 01 01 D4 */ lwz r0, 0x1d4(r1) +/* 801540C4 00151024 CB E1 01 C0 */ lfd f31, 0x1c0(r1) +/* 801540C8 00151028 83 E1 01 BC */ lwz r31, 0x1bc(r1) +/* 801540CC 0015102C 83 C1 01 B8 */ lwz r30, 0x1b8(r1) +/* 801540D0 00151030 83 A1 01 B4 */ lwz r29, 0x1b4(r1) +/* 801540D4 00151034 83 81 01 B0 */ lwz r28, 0x1b0(r1) +/* 801540D8 00151038 7C 08 03 A6 */ mtlr r0 +/* 801540DC 0015103C 38 21 01 D0 */ addi r1, r1, 0x1d0 +/* 801540E0 00151040 4E 80 00 20 */ blr + +.global RebuildSpiderBallWaypoints__18CScriptActorRotateFR13CStateManager +RebuildSpiderBallWaypoints__18CScriptActorRotateFR13CStateManager: +/* 801540E4 00151044 94 21 F7 D0 */ stwu r1, -0x830(r1) +/* 801540E8 00151048 7C 08 02 A6 */ mflr r0 +/* 801540EC 0015104C 90 01 08 34 */ stw r0, 0x834(r1) +/* 801540F0 00151050 38 00 00 00 */ li r0, 0 +/* 801540F4 00151054 BF 41 08 18 */ stmw r26, 0x818(r1) +/* 801540F8 00151058 7C 9E 23 78 */ mr r30, r4 +/* 801540FC 0015105C 7C 7D 1B 78 */ mr r29, r3 +/* 80154100 00151060 3B E1 00 18 */ addi r31, r1, 0x18 +/* 80154104 00151064 3B 80 00 00 */ li r28, 0 +/* 80154108 00151068 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015410C 0015106C 83 64 08 10 */ lwz r27, 0x810(r4) +lbl_80154110: +/* 80154110 00151070 7F 63 DB 78 */ mr r3, r27 +/* 80154114 00151074 7F 84 E3 78 */ mr r4, r28 +/* 80154118 00151078 4B EB BB FD */ bl __vc__11CObjectListFi +/* 8015411C 0015107C 7C 64 1B 78 */ mr r4, r3 +/* 80154120 00151080 38 61 00 0C */ addi r3, r1, 0xc +/* 80154124 00151084 4B F5 3A 79 */ bl "__ct__39TCastToPtr<25CScriptSpiderBallWaypoint>FP7CEntity" +/* 80154128 00151088 80 63 00 04 */ lwz r3, 4(r3) +/* 8015412C 0015108C 28 03 00 00 */ cmplwi r3, 0 +/* 80154130 00151090 41 82 00 2C */ beq lbl_8015415C +/* 80154134 00151094 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80154138 00151098 A0 A3 00 08 */ lhz r5, 8(r3) +/* 8015413C 0015109C 54 00 08 3C */ slwi r0, r0, 1 +/* 80154140 001510A0 7C 9F 02 15 */ add. r4, r31, r0 +/* 80154144 001510A4 41 82 00 08 */ beq lbl_8015414C +/* 80154148 001510A8 B0 A4 00 00 */ sth r5, 0(r4) +lbl_8015414C: +/* 8015414C 001510AC 80 81 00 14 */ lwz r4, 0x14(r1) +/* 80154150 001510B0 38 04 00 01 */ addi r0, r4, 1 +/* 80154154 001510B4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80154158 001510B8 4B FC 47 E1 */ bl ClearWaypoints__25CScriptSpiderBallWaypointFv +lbl_8015415C: +/* 8015415C 001510BC 3B 9C 00 01 */ addi r28, r28, 1 +/* 80154160 001510C0 2C 1C 04 00 */ cmpwi r28, 0x400 +/* 80154164 001510C4 40 82 FF AC */ bne lbl_80154110 +/* 80154168 001510C8 7F FA FB 78 */ mr r26, r31 +/* 8015416C 001510CC 3B 80 00 01 */ li r28, 1 +/* 80154170 001510D0 48 00 00 38 */ b lbl_801541A8 +lbl_80154174: +/* 80154174 001510D4 A0 1A 00 00 */ lhz r0, 0(r26) +/* 80154178 001510D8 7F C3 F3 78 */ mr r3, r30 +/* 8015417C 001510DC 38 81 00 08 */ addi r4, r1, 8 +/* 80154180 001510E0 B0 01 00 08 */ sth r0, 8(r1) +/* 80154184 001510E4 4B EF 83 F1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80154188 001510E8 7C 7B 1B 79 */ or. r27, r3, r3 +/* 8015418C 001510EC 41 82 00 18 */ beq lbl_801541A4 +/* 80154190 001510F0 7F C4 F3 78 */ mr r4, r30 +/* 80154194 001510F4 4B FC 46 21 */ bl BuildWaypointListAndBounds__25CScriptSpiderBallWaypointFR13CStateManager +/* 80154198 001510F8 88 1B 00 E4 */ lbz r0, 0xe4(r27) +/* 8015419C 001510FC 53 80 26 F6 */ rlwimi r0, r28, 4, 0x1b, 0x1b +/* 801541A0 00151100 98 1B 00 E4 */ stb r0, 0xe4(r27) +lbl_801541A4: +/* 801541A4 00151104 3B 5A 00 02 */ addi r26, r26, 2 +lbl_801541A8: +/* 801541A8 00151108 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801541AC 0015110C 54 00 08 3C */ slwi r0, r0, 1 +/* 801541B0 00151110 7C 1F 02 14 */ add r0, r31, r0 +/* 801541B4 00151114 7C 1A 00 40 */ cmplw r26, r0 +/* 801541B8 00151118 40 82 FF BC */ bne lbl_80154174 +/* 801541BC 0015111C 38 60 00 00 */ li r3, 0 +/* 801541C0 00151120 88 1D 00 58 */ lbz r0, 0x58(r29) +/* 801541C4 00151124 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801541C8 00151128 98 1D 00 58 */ stb r0, 0x58(r29) +/* 801541CC 0015112C 80 A1 00 14 */ lwz r5, 0x14(r1) +/* 801541D0 00151130 2C 05 00 00 */ cmpwi r5, 0 +/* 801541D4 00151134 40 81 00 40 */ ble lbl_80154214 +/* 801541D8 00151138 2C 05 00 08 */ cmpwi r5, 8 +/* 801541DC 0015113C 38 85 FF F8 */ addi r4, r5, -8 +/* 801541E0 00151140 40 81 00 20 */ ble lbl_80154200 +/* 801541E4 00151144 38 04 00 07 */ addi r0, r4, 7 +/* 801541E8 00151148 54 00 E8 FE */ srwi r0, r0, 3 +/* 801541EC 0015114C 7C 09 03 A6 */ mtctr r0 +/* 801541F0 00151150 2C 04 00 00 */ cmpwi r4, 0 +/* 801541F4 00151154 40 81 00 0C */ ble lbl_80154200 +lbl_801541F8: +/* 801541F8 00151158 38 63 00 08 */ addi r3, r3, 8 +/* 801541FC 0015115C 42 00 FF FC */ bdnz lbl_801541F8 +lbl_80154200: +/* 80154200 00151160 7C 03 28 50 */ subf r0, r3, r5 +/* 80154204 00151164 7C 09 03 A6 */ mtctr r0 +/* 80154208 00151168 7C 03 28 00 */ cmpw r3, r5 +/* 8015420C 0015116C 40 80 00 08 */ bge lbl_80154214 +lbl_80154210: +/* 80154210 00151170 42 00 00 00 */ bdnz lbl_80154210 +lbl_80154214: +/* 80154214 00151174 38 00 00 00 */ li r0, 0 +/* 80154218 00151178 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015421C 0015117C BB 41 08 18 */ lmw r26, 0x818(r1) +/* 80154220 00151180 80 01 08 34 */ lwz r0, 0x834(r1) +/* 80154224 00151184 7C 08 03 A6 */ mtlr r0 +/* 80154228 00151188 38 21 08 30 */ addi r1, r1, 0x830 +/* 8015422C 0015118C 4E 80 00 20 */ blr + +.global sub_80154230 +sub_80154230: +/* 80154230 00151190 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80154234 00151194 7C 08 02 A6 */ mflr r0 +/* 80154238 00151198 90 01 00 24 */ stw r0, 0x24(r1) +/* 8015423C 0015119C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80154240 001511A0 7C DF 33 78 */ mr r31, r6 +/* 80154244 001511A4 7F E7 FB 78 */ mr r7, r31 +/* 80154248 001511A8 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8015424C 001511AC 7C BE 2B 78 */ mr r30, r5 +/* 80154250 001511B0 7F C6 F3 78 */ mr r6, r30 +/* 80154254 001511B4 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80154258 001511B8 7C 9D 23 78 */ mr r29, r4 +/* 8015425C 001511BC 7F A5 EB 78 */ mr r5, r29 +/* 80154260 001511C0 93 81 00 10 */ stw r28, 0x10(r1) +/* 80154264 001511C4 7C 7C 1B 78 */ mr r28, r3 +/* 80154268 001511C8 38 9D 03 28 */ addi r4, r29, 0x328 +/* 8015426C 001511CC 48 00 00 3D */ bl sub_801542a8 +/* 80154270 001511D0 7F 83 E3 78 */ mr r3, r28 +/* 80154274 001511D4 7F A5 EB 78 */ mr r5, r29 +/* 80154278 001511D8 7F C6 F3 78 */ mr r6, r30 +/* 8015427C 001511DC 7F E7 FB 78 */ mr r7, r31 +/* 80154280 001511E0 38 9D 03 38 */ addi r4, r29, 0x338 +/* 80154284 001511E4 48 00 00 25 */ bl sub_801542a8 +/* 80154288 001511E8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8015428C 001511EC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80154290 001511F0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80154294 001511F4 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80154298 001511F8 83 81 00 10 */ lwz r28, 0x10(r1) +/* 8015429C 001511FC 7C 08 03 A6 */ mtlr r0 +/* 801542A0 00151200 38 21 00 20 */ addi r1, r1, 0x20 +/* 801542A4 00151204 4E 80 00 20 */ blr + +.global sub_801542a8 +sub_801542a8: +/* 801542A8 00151208 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 801542AC 0015120C 7C 08 02 A6 */ mflr r0 +/* 801542B0 00151210 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 801542B4 00151214 BF 01 00 A0 */ stmw r24, 0xa0(r1) +/* 801542B8 00151218 7C 99 23 78 */ mr r25, r4 +/* 801542BC 0015121C 7C 78 1B 78 */ mr r24, r3 +/* 801542C0 00151220 7C BA 2B 78 */ mr r26, r5 +/* 801542C4 00151224 7C DB 33 78 */ mr r27, r6 +/* 801542C8 00151228 7C FC 3B 78 */ mr r28, r7 +/* 801542CC 0015122C 83 E4 00 0C */ lwz r31, 0xc(r4) +/* 801542D0 00151230 48 00 01 B0 */ b lbl_80154480 +lbl_801542D4: +/* 801542D4 00151234 A0 1F 00 00 */ lhz r0, 0(r31) +/* 801542D8 00151238 7F 83 E3 78 */ mr r3, r28 +/* 801542DC 0015123C 38 81 00 0C */ addi r4, r1, 0xc +/* 801542E0 00151240 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801542E4 00151244 4B EF 82 91 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801542E8 00151248 7C 64 1B 78 */ mr r4, r3 +/* 801542EC 0015124C 38 61 00 20 */ addi r3, r1, 0x20 +/* 801542F0 00151250 4B F5 B9 A1 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801542F4 00151254 83 A3 00 04 */ lwz r29, 4(r3) +/* 801542F8 00151258 28 1D 00 00 */ cmplwi r29, 0 +/* 801542FC 0015125C 41 82 01 80 */ beq lbl_8015447C +/* 80154300 00151260 3B DF 00 08 */ addi r30, r31, 8 +/* 80154304 00151264 38 7D 00 34 */ addi r3, r29, 0x34 +/* 80154308 00151268 7F C4 F3 78 */ mr r4, r30 +/* 8015430C 0015126C 48 1B E8 35 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80154310 00151270 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 80154314 00151274 38 C0 00 01 */ li r6, 1 +/* 80154318 00151278 50 C0 26 F6 */ rlwimi r0, r6, 4, 0x1b, 0x1b +/* 8015431C 0015127C 7F 64 DB 78 */ mr r4, r27 +/* 80154320 00151280 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 80154324 00151284 38 61 00 40 */ addi r3, r1, 0x40 +/* 80154328 00151288 38 BD 00 34 */ addi r5, r29, 0x34 +/* 8015432C 0015128C 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 80154330 00151290 50 C0 1F 38 */ rlwimi r0, r6, 3, 0x1c, 0x1c +/* 80154334 00151294 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 80154338 00151298 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 8015433C 0015129C 50 C0 17 7A */ rlwimi r0, r6, 2, 0x1d, 0x1d +/* 80154340 001512A0 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 80154344 001512A4 48 1B E6 0D */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80154348 001512A8 38 7D 00 34 */ addi r3, r29, 0x34 +/* 8015434C 001512AC 38 81 00 40 */ addi r4, r1, 0x40 +/* 80154350 001512B0 48 1B E7 F1 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80154354 001512B4 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 80154358 001512B8 38 A0 00 01 */ li r5, 1 +/* 8015435C 001512BC 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 80154360 001512C0 7F A3 EB 78 */ mr r3, r29 +/* 80154364 001512C4 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 80154368 001512C8 38 81 00 34 */ addi r4, r1, 0x34 +/* 8015436C 001512CC 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 80154370 001512D0 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 80154374 001512D4 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 80154378 001512D8 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 8015437C 001512DC 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 80154380 001512E0 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 80154384 001512E4 C0 BA 00 60 */ lfs f5, 0x60(r26) +/* 80154388 001512E8 C0 1D 00 60 */ lfs f0, 0x60(r29) +/* 8015438C 001512EC C0 9A 00 50 */ lfs f4, 0x50(r26) +/* 80154390 001512F0 C0 5D 00 50 */ lfs f2, 0x50(r29) +/* 80154394 001512F4 EC 25 00 2A */ fadds f1, f5, f0 +/* 80154398 001512F8 C0 1A 00 40 */ lfs f0, 0x40(r26) +/* 8015439C 001512FC C0 7D 00 40 */ lfs f3, 0x40(r29) +/* 801543A0 00151300 EC 44 10 2A */ fadds f2, f4, f2 +/* 801543A4 00151304 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 801543A8 00151308 EC 00 18 2A */ fadds f0, f0, f3 +/* 801543AC 0015130C D0 81 00 2C */ stfs f4, 0x2c(r1) +/* 801543B0 00151310 D0 A1 00 30 */ stfs f5, 0x30(r1) +/* 801543B4 00151314 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801543B8 00151318 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 801543BC 0015131C D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 801543C0 00151320 4B EF EA CD */ bl SetTranslation__6CActorFRC9CVector3f +/* 801543C4 00151324 88 18 00 58 */ lbz r0, 0x58(r24) +/* 801543C8 00151328 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801543CC 0015132C 40 82 00 74 */ bne lbl_80154440 +/* 801543D0 00151330 38 61 00 70 */ addi r3, r1, 0x70 +/* 801543D4 00151334 38 9D 00 34 */ addi r4, r29, 0x34 +/* 801543D8 00151338 48 1B E7 9D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 801543DC 0015133C C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 801543E0 00151340 7F C3 F3 78 */ mr r3, r30 +/* 801543E4 00151344 C0 1A 00 50 */ lfs f0, 0x50(r26) +/* 801543E8 00151348 38 81 00 70 */ addi r4, r1, 0x70 +/* 801543EC 0015134C C0 7D 00 60 */ lfs f3, 0x60(r29) +/* 801543F0 00151350 C0 5A 00 60 */ lfs f2, 0x60(r26) +/* 801543F4 00151354 EC 81 00 28 */ fsubs f4, f1, f0 +/* 801543F8 00151358 C0 3D 00 40 */ lfs f1, 0x40(r29) +/* 801543FC 0015135C C0 1A 00 40 */ lfs f0, 0x40(r26) +/* 80154400 00151360 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80154404 00151364 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80154408 00151368 D0 81 00 8C */ stfs f4, 0x8c(r1) +/* 8015440C 0015136C D0 41 00 9C */ stfs f2, 0x9c(r1) +/* 80154410 00151370 D0 01 00 7C */ stfs f0, 0x7c(r1) +/* 80154414 00151374 48 1B E7 2D */ bl __as__12CTransform4fFRC12CTransform4f +/* 80154418 00151378 7F A4 EB 78 */ mr r4, r29 +/* 8015441C 0015137C 38 61 00 10 */ addi r3, r1, 0x10 +/* 80154420 00151380 4B F5 37 7D */ bl "__ct__39TCastToPtr<25CScriptSpiderBallWaypoint>FP7CEntity" +/* 80154424 00151384 80 03 00 04 */ lwz r0, 4(r3) +/* 80154428 00151388 28 00 00 00 */ cmplwi r0, 0 +/* 8015442C 0015138C 41 82 00 14 */ beq lbl_80154440 +/* 80154430 00151390 88 18 00 58 */ lbz r0, 0x58(r24) +/* 80154434 00151394 38 60 00 01 */ li r3, 1 +/* 80154438 00151398 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8015443C 0015139C 98 18 00 58 */ stb r0, 0x58(r24) +lbl_80154440: +/* 80154440 001513A0 A0 1F 00 00 */ lhz r0, 0(r31) +/* 80154444 001513A4 7F 83 E3 78 */ mr r3, r28 +/* 80154448 001513A8 38 81 00 08 */ addi r4, r1, 8 +/* 8015444C 001513AC B0 01 00 08 */ sth r0, 8(r1) +/* 80154450 001513B0 4B EF 81 25 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80154454 001513B4 7C 64 1B 78 */ mr r4, r3 +/* 80154458 001513B8 38 61 00 18 */ addi r3, r1, 0x18 +/* 8015445C 001513BC 4B F5 49 B9 */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" +/* 80154460 001513C0 80 83 00 04 */ lwz r4, 4(r3) +/* 80154464 001513C4 28 04 00 00 */ cmplwi r4, 0 +/* 80154468 001513C8 41 82 00 14 */ beq lbl_8015447C +/* 8015446C 001513CC 7F 03 C3 78 */ mr r3, r24 +/* 80154470 001513D0 7F 65 DB 78 */ mr r5, r27 +/* 80154474 001513D4 7F 86 E3 78 */ mr r6, r28 +/* 80154478 001513D8 4B FF FD B9 */ bl sub_80154230 +lbl_8015447C: +/* 8015447C 001513DC 3B FF 00 38 */ addi r31, r31, 0x38 +lbl_80154480: +/* 80154480 001513E0 80 19 00 04 */ lwz r0, 4(r25) +/* 80154484 001513E4 80 79 00 0C */ lwz r3, 0xc(r25) +/* 80154488 001513E8 1C 00 00 38 */ mulli r0, r0, 0x38 +/* 8015448C 001513EC 7C 03 02 14 */ add r0, r3, r0 +/* 80154490 001513F0 7C 1F 00 40 */ cmplw r31, r0 +/* 80154494 001513F4 40 82 FE 40 */ bne lbl_801542D4 +/* 80154498 001513F8 BB 01 00 A0 */ lmw r24, 0xa0(r1) +/* 8015449C 001513FC 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 801544A0 00151400 7C 08 03 A6 */ mtlr r0 +/* 801544A4 00151404 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 801544A8 00151408 4E 80 00 20 */ blr + +.global "__ct__18CScriptActorRotateF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3ffbbb" +"__ct__18CScriptActorRotateF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3ffbbb": +/* 801544AC 0015140C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801544B0 00151410 7C 08 02 A6 */ mflr r0 +/* 801544B4 00151414 90 01 00 34 */ stw r0, 0x34(r1) +/* 801544B8 00151418 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 801544BC 0015141C F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 801544C0 00151420 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801544C4 00151424 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801544C8 00151428 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801544CC 0015142C 93 81 00 10 */ stw r28, 0x10(r1) +/* 801544D0 00151430 A0 04 00 00 */ lhz r0, 0(r4) +/* 801544D4 00151434 7C A4 2B 78 */ mr r4, r5 +/* 801544D8 00151438 FF E0 08 90 */ fmr f31, f1 +/* 801544DC 0015143C 7C FD 3B 78 */ mr r29, r7 +/* 801544E0 00151440 B0 01 00 08 */ sth r0, 8(r1) +/* 801544E4 00151444 7C C5 33 78 */ mr r5, r6 +/* 801544E8 00151448 7C 87 23 78 */ mr r7, r4 +/* 801544EC 0015144C 7C 7C 1B 78 */ mr r28, r3 +/* 801544F0 00151450 7D 1E 43 78 */ mr r30, r8 +/* 801544F4 00151454 7D 3F 4B 78 */ mr r31, r9 +/* 801544F8 00151458 7D 46 53 78 */ mr r6, r10 +/* 801544FC 0015145C 38 81 00 08 */ addi r4, r1, 8 +/* 80154500 00151460 4B EF CE 25 */ bl "__ct__7CEntityF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80154504 00151464 3C 60 80 3E */ lis r3, lbl_803E2D08@ha +/* 80154508 00151468 C0 02 9D F8 */ lfs f0, lbl_805ABB18@sda21(r2) +/* 8015450C 0015146C 38 03 2D 08 */ addi r0, r3, lbl_803E2D08@l +/* 80154510 00151470 38 C0 00 00 */ li r6, 0 +/* 80154514 00151474 90 1C 00 00 */ stw r0, 0(r28) +/* 80154518 00151478 7F 83 E3 78 */ mr r3, r28 +/* 8015451C 0015147C C0 3D 00 00 */ lfs f1, 0(r29) +/* 80154520 00151480 D0 3C 00 34 */ stfs f1, 0x34(r28) +/* 80154524 00151484 C0 3D 00 04 */ lfs f1, 4(r29) +/* 80154528 00151488 D0 3C 00 38 */ stfs f1, 0x38(r28) +/* 8015452C 0015148C C0 3D 00 08 */ lfs f1, 8(r29) +/* 80154530 00151490 D0 3C 00 3C */ stfs f1, 0x3c(r28) +/* 80154534 00151494 D3 FC 00 40 */ stfs f31, 0x40(r28) +/* 80154538 00151498 D0 1C 00 44 */ stfs f0, 0x44(r28) +/* 8015453C 0015149C 90 DC 00 4C */ stw r6, 0x4c(r28) +/* 80154540 001514A0 90 DC 00 50 */ stw r6, 0x50(r28) +/* 80154544 001514A4 90 DC 00 54 */ stw r6, 0x54(r28) +/* 80154548 001514A8 88 1C 00 58 */ lbz r0, 0x58(r28) +/* 8015454C 001514AC 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18 +/* 80154550 001514B0 98 1C 00 58 */ stb r0, 0x58(r28) +/* 80154554 001514B4 88 1C 00 58 */ lbz r0, 0x58(r28) +/* 80154558 001514B8 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 +/* 8015455C 001514BC 98 1C 00 58 */ stb r0, 0x58(r28) +/* 80154560 001514C0 88 1C 00 58 */ lbz r0, 0x58(r28) +/* 80154564 001514C4 53 C0 2E B4 */ rlwimi r0, r30, 5, 0x1a, 0x1a +/* 80154568 001514C8 98 1C 00 58 */ stb r0, 0x58(r28) +/* 8015456C 001514CC 88 1C 00 58 */ lbz r0, 0x58(r28) +/* 80154570 001514D0 53 E0 26 F6 */ rlwimi r0, r31, 4, 0x1b, 0x1b +/* 80154574 001514D4 98 1C 00 58 */ stb r0, 0x58(r28) +/* 80154578 001514D8 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 8015457C 001514DC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80154580 001514E0 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 80154584 001514E4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80154588 001514E8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8015458C 001514EC 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80154590 001514F0 83 81 00 10 */ lwz r28, 0x10(r1) +/* 80154594 001514F4 7C 08 03 A6 */ mtlr r0 +/* 80154598 001514F8 38 21 00 30 */ addi r1, r1, 0x30 +/* 8015459C 001514FC 4E 80 00 20 */ blr + +.global "distance,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>14const_iterator>__4rstlFQ34rstl195red_black_tree<13TGameScriptId,Q24rstl32pair<13TGameScriptId,9TUniqueId>,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>14const_iteratorQ34rstl195red_black_tree<13TGameScriptId,Q24rstl32" +"distance,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>14const_iterator>__4rstlFQ34rstl195red_black_tree<13TGameScriptId,Q24rstl32pair<13TGameScriptId,9TUniqueId>,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>14const_iteratorQ34rstl195red_black_tree<13TGameScriptId,Q24rstl32": +/* 801545A0 00151500 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801545A4 00151504 7C 08 02 A6 */ mflr r0 +/* 801545A8 00151508 90 01 00 24 */ stw r0, 0x24(r1) +/* 801545AC 0015150C 38 A1 00 0C */ addi r5, r1, 0xc +/* 801545B0 00151510 89 21 00 08 */ lbz r9, 8(r1) +/* 801545B4 00151514 81 04 00 00 */ lwz r8, 0(r4) +/* 801545B8 00151518 80 E4 00 04 */ lwz r7, 4(r4) +/* 801545BC 0015151C 38 81 00 10 */ addi r4, r1, 0x10 +/* 801545C0 00151520 80 C3 00 00 */ lwz r6, 0(r3) +/* 801545C4 00151524 80 03 00 04 */ lwz r0, 4(r3) +/* 801545C8 00151528 38 61 00 18 */ addi r3, r1, 0x18 +/* 801545CC 0015152C 99 21 00 0C */ stb r9, 0xc(r1) +/* 801545D0 00151530 91 01 00 10 */ stw r8, 0x10(r1) +/* 801545D4 00151534 90 E1 00 14 */ stw r7, 0x14(r1) +/* 801545D8 00151538 90 C1 00 18 */ stw r6, 0x18(r1) +/* 801545DC 0015153C 90 01 00 1C */ stw r0, 0x1c(r1) +/* 801545E0 00151540 48 00 00 15 */ bl "__distance,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>14const_iterator>__4rstlFQ34rstl195red_black_tree<13TGameScriptId,Q24rstl32pair<13TGameScriptId,9TUniqueId>,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>14const_iteratorQ34rstl195red_black_tree<13TGameScriptId,Q24rstl" +/* 801545E4 00151544 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801545E8 00151548 7C 08 03 A6 */ mtlr r0 +/* 801545EC 0015154C 38 21 00 20 */ addi r1, r1, 0x20 +/* 801545F0 00151550 4E 80 00 20 */ blr + +.global "__distance,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>14const_iterator>__4rstlFQ34rstl195red_black_tree<13TGameScriptId,Q24rstl32pair<13TGameScriptId,9TUniqueId>,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>14const_iteratorQ34rstl195red_black_tree<13TGameScriptId,Q24rstl" +"__distance,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>14const_iterator>__4rstlFQ34rstl195red_black_tree<13TGameScriptId,Q24rstl32pair<13TGameScriptId,9TUniqueId>,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>14const_iteratorQ34rstl195red_black_tree<13TGameScriptId,Q24rstl": +/* 801545F4 00151554 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801545F8 00151558 7C 08 02 A6 */ mflr r0 +/* 801545FC 0015155C 90 01 00 24 */ stw r0, 0x24(r1) +/* 80154600 00151560 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80154604 00151564 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80154608 00151568 3B C0 00 00 */ li r30, 0 +/* 8015460C 0015156C 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80154610 00151570 7C 9D 23 78 */ mr r29, r4 +/* 80154614 00151574 80 A3 00 00 */ lwz r5, 0(r3) +/* 80154618 00151578 83 E3 00 04 */ lwz r31, 4(r3) +/* 8015461C 0015157C 48 00 00 18 */ b lbl_80154634 +lbl_80154620: +/* 80154620 00151580 7F E3 FB 78 */ mr r3, r31 +/* 80154624 00151584 7C A4 2B 78 */ mr r4, r5 +/* 80154628 00151588 3B DE 00 01 */ addi r30, r30, 1 +/* 8015462C 0015158C 48 1E 7F B5 */ bl rbtree_traverse_forward__4rstlFPCvPv +/* 80154630 00151590 7C 65 1B 78 */ mr r5, r3 +lbl_80154634: +/* 80154634 00151594 80 1D 00 00 */ lwz r0, 0(r29) +/* 80154638 00151598 38 60 00 00 */ li r3, 0 +/* 8015463C 0015159C 7C 05 00 40 */ cmplw r5, r0 +/* 80154640 001515A0 40 82 00 10 */ bne lbl_80154650 +/* 80154644 001515A4 80 1D 00 04 */ lwz r0, 4(r29) +/* 80154648 001515A8 7C 1F 00 40 */ cmplw r31, r0 +/* 8015464C 001515AC 41 82 00 08 */ beq lbl_80154654 +lbl_80154650: +/* 80154650 001515B0 38 60 00 01 */ li r3, 1 +lbl_80154654: +/* 80154654 001515B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80154658 001515B8 40 82 FF C8 */ bne lbl_80154620 +/* 8015465C 001515BC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80154660 001515C0 7F C3 F3 78 */ mr r3, r30 +/* 80154664 001515C4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80154668 001515C8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8015466C 001515CC 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80154670 001515D0 7C 08 03 A6 */ mtlr r0 +/* 80154674 001515D4 38 21 00 20 */ addi r1, r1, 0x20 +/* 80154678 001515D8 4E 80 00 20 */ blr + +.global "reserve__Q24rstl75vector,Q24rstl17rmemory_allocator>Fi" +"reserve__Q24rstl75vector,Q24rstl17rmemory_allocator>Fi": +/* 8015467C 001515DC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80154680 001515E0 7C 08 02 A6 */ mflr r0 +/* 80154684 001515E4 90 01 00 34 */ stw r0, 0x34(r1) +/* 80154688 001515E8 BF 41 00 18 */ stmw r26, 0x18(r1) +/* 8015468C 001515EC 7C 9F 23 78 */ mr r31, r4 +/* 80154690 001515F0 7C 7E 1B 78 */ mr r30, r3 +/* 80154694 001515F4 80 03 00 08 */ lwz r0, 8(r3) +/* 80154698 001515F8 7C 1F 00 00 */ cmpw r31, r0 +/* 8015469C 001515FC 40 81 00 B8 */ ble lbl_80154754 +/* 801546A0 00151600 1C 7F 00 34 */ mulli r3, r31, 0x34 +/* 801546A4 00151604 2C 03 00 00 */ cmpwi r3, 0 +/* 801546A8 00151608 40 82 00 0C */ bne lbl_801546B4 +/* 801546AC 0015160C 3B 80 00 00 */ li r28, 0 +/* 801546B0 00151610 48 00 00 18 */ b lbl_801546C8 +lbl_801546B4: +/* 801546B4 00151614 3C 80 80 3D */ lis r4, lbl_803D01F0@ha +/* 801546B8 00151618 38 A0 00 00 */ li r5, 0 +/* 801546BC 0015161C 38 84 01 F0 */ addi r4, r4, lbl_803D01F0@l +/* 801546C0 00151620 48 1C 11 59 */ bl __nwa__FUlPCcPCc +/* 801546C4 00151624 7C 7C 1B 78 */ mr r28, r3 +lbl_801546C8: +/* 801546C8 00151628 80 1E 00 04 */ lwz r0, 4(r30) +/* 801546CC 0015162C 7F 9B E3 78 */ mr r27, r28 +/* 801546D0 00151630 83 5E 00 0C */ lwz r26, 0xc(r30) +/* 801546D4 00151634 1C 00 00 34 */ mulli r0, r0, 0x34 +/* 801546D8 00151638 93 41 00 10 */ stw r26, 0x10(r1) +/* 801546DC 0015163C 7F BA 02 14 */ add r29, r26, r0 +/* 801546E0 00151640 93 41 00 14 */ stw r26, 0x14(r1) +/* 801546E4 00151644 93 A1 00 08 */ stw r29, 8(r1) +/* 801546E8 00151648 93 A1 00 0C */ stw r29, 0xc(r1) +/* 801546EC 0015164C 48 00 00 28 */ b lbl_80154714 +lbl_801546F0: +/* 801546F0 00151650 28 1B 00 00 */ cmplwi r27, 0 +/* 801546F4 00151654 41 82 00 18 */ beq lbl_8015470C +/* 801546F8 00151658 A0 1A 00 00 */ lhz r0, 0(r26) +/* 801546FC 0015165C 38 7B 00 04 */ addi r3, r27, 4 +/* 80154700 00151660 38 9A 00 04 */ addi r4, r26, 4 +/* 80154704 00151664 B0 1B 00 00 */ sth r0, 0(r27) +/* 80154708 00151668 48 1B E4 6D */ bl __ct__12CTransform4fFRC12CTransform4f +lbl_8015470C: +/* 8015470C 0015166C 3B 7B 00 34 */ addi r27, r27, 0x34 +/* 80154710 00151670 3B 5A 00 34 */ addi r26, r26, 0x34 +lbl_80154714: +/* 80154714 00151674 7C 1A E8 40 */ cmplw r26, r29 +/* 80154718 00151678 40 82 FF D8 */ bne lbl_801546F0 +/* 8015471C 0015167C 80 1E 00 04 */ lwz r0, 4(r30) +/* 80154720 00151680 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 80154724 00151684 1C 00 00 34 */ mulli r0, r0, 0x34 +/* 80154728 00151688 7C 64 1B 78 */ mr r4, r3 +/* 8015472C 0015168C 7C 03 02 14 */ add r0, r3, r0 +/* 80154730 00151690 48 00 00 08 */ b lbl_80154738 +lbl_80154734: +/* 80154734 00151694 38 84 00 34 */ addi r4, r4, 0x34 +lbl_80154738: +/* 80154738 00151698 7C 04 00 40 */ cmplw r4, r0 +/* 8015473C 0015169C 40 82 FF F8 */ bne lbl_80154734 +/* 80154740 001516A0 28 03 00 00 */ cmplwi r3, 0 +/* 80154744 001516A4 41 82 00 08 */ beq lbl_8015474C +/* 80154748 001516A8 48 1C 11 E9 */ bl Free__7CMemoryFPCv +lbl_8015474C: +/* 8015474C 001516AC 93 9E 00 0C */ stw r28, 0xc(r30) +/* 80154750 001516B0 93 FE 00 08 */ stw r31, 8(r30) +lbl_80154754: +/* 80154754 001516B4 BB 41 00 18 */ lmw r26, 0x18(r1) +/* 80154758 001516B8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8015475C 001516BC 7C 08 03 A6 */ mtlr r0 +/* 80154760 001516C0 38 21 00 30 */ addi r1, r1, 0x30 +/* 80154764 001516C4 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptBallTrigger.s b/asm/Kyoto_CWD/ScriptObjects/CScriptBallTrigger.s new file mode 100644 index 00000000..f8f37a84 --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptBallTrigger.s @@ -0,0 +1,443 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global AcceptScriptMsg__18CScriptBallTriggerF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__18CScriptBallTriggerF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801764DC 0017343C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 801764E0 00173440 7C 08 02 A6 */ mflr r0 +/* 801764E4 00173444 90 01 00 24 */ stw r0, 0x24(r1) +/* 801764E8 00173448 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801764EC 0017344C 7C DF 33 78 */ mr r31, r6 +/* 801764F0 00173450 93 C1 00 18 */ stw r30, 0x18(r1) +/* 801764F4 00173454 7C BE 2B 78 */ mr r30, r5 +/* 801764F8 00173458 93 A1 00 14 */ stw r29, 0x14(r1) +/* 801764FC 0017345C 7C 9D 23 78 */ mr r29, r4 +/* 80176500 00173460 2C 1D 00 04 */ cmpwi r29, 4 +/* 80176504 00173464 93 81 00 10 */ stw r28, 0x10(r1) +/* 80176508 00173468 7C 7C 1B 78 */ mr r28, r3 +/* 8017650C 0017346C 40 82 00 30 */ bne lbl_8017653C +/* 80176510 00173470 88 1C 00 30 */ lbz r0, 0x30(r28) +/* 80176514 00173474 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80176518 00173478 41 82 00 24 */ beq lbl_8017653C +/* 8017651C 0017347C 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 80176520 00173480 38 80 00 00 */ li r4, 0 +/* 80176524 00173484 80 63 07 68 */ lwz r3, 0x768(r3) +/* 80176528 00173488 4B F7 8A 79 */ bl SetBallBoostState__10CMorphBallFQ210CMorphBall15EBallBoostState +/* 8017652C 0017348C 88 1C 01 68 */ lbz r0, 0x168(r28) +/* 80176530 00173490 38 60 00 00 */ li r3, 0 +/* 80176534 00173494 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80176538 00173498 98 1C 01 68 */ stb r0, 0x168(r28) +lbl_8017653C: +/* 8017653C 0017349C A0 1E 00 00 */ lhz r0, 0(r30) +/* 80176540 001734A0 7F 83 E3 78 */ mr r3, r28 +/* 80176544 001734A4 7F A4 EB 78 */ mr r4, r29 +/* 80176548 001734A8 7F E6 FB 78 */ mr r6, r31 +/* 8017654C 001734AC B0 01 00 08 */ sth r0, 8(r1) +/* 80176550 001734B0 38 A1 00 08 */ addi r5, r1, 8 +/* 80176554 001734B4 4B EF FF A5 */ bl AcceptScriptMsg__14CScriptTriggerF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 80176558 001734B8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8017655C 001734BC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80176560 001734C0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80176564 001734C4 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80176568 001734C8 83 81 00 10 */ lwz r28, 0x10(r1) +/* 8017656C 001734CC 7C 08 03 A6 */ mtlr r0 +/* 80176570 001734D0 38 21 00 20 */ addi r1, r1, 0x20 +/* 80176574 001734D4 4E 80 00 20 */ blr + +.global Accept__18CScriptBallTriggerFR8IVisitor +Accept__18CScriptBallTriggerFR8IVisitor: +/* 80176578 001734D8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8017657C 001734DC 7C 08 02 A6 */ mflr r0 +/* 80176580 001734E0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80176584 001734E4 7C 60 1B 78 */ mr r0, r3 +/* 80176588 001734E8 7C 83 23 78 */ mr r3, r4 +/* 8017658C 001734EC 81 84 00 00 */ lwz r12, 0(r4) +/* 80176590 001734F0 7C 04 03 78 */ mr r4, r0 +/* 80176594 001734F4 81 8C 00 CC */ lwz r12, 0xcc(r12) +/* 80176598 001734F8 7D 89 03 A6 */ mtctr r12 +/* 8017659C 001734FC 4E 80 04 21 */ bctrl +/* 801765A0 00173500 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801765A4 00173504 7C 08 03 A6 */ mtlr r0 +/* 801765A8 00173508 38 21 00 10 */ addi r1, r1, 0x10 +/* 801765AC 0017350C 4E 80 00 20 */ blr + +.global Think__18CScriptBallTriggerFfR13CStateManager +Think__18CScriptBallTriggerFfR13CStateManager: +/* 801765B0 00173510 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 801765B4 00173514 7C 08 02 A6 */ mflr r0 +/* 801765B8 00173518 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 801765BC 0017351C DB E1 00 B0 */ stfd f31, 0xb0(r1) +/* 801765C0 00173520 F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 +/* 801765C4 00173524 DB C1 00 A0 */ stfd f30, 0xa0(r1) +/* 801765C8 00173528 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 +/* 801765CC 0017352C DB A1 00 90 */ stfd f29, 0x90(r1) +/* 801765D0 00173530 F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0 +/* 801765D4 00173534 DB 81 00 80 */ stfd f28, 0x80(r1) +/* 801765D8 00173538 F3 81 00 88 */ psq_st f28, 136(r1), 0, qr0 +/* 801765DC 0017353C DB 61 00 70 */ stfd f27, 0x70(r1) +/* 801765E0 00173540 F3 61 00 78 */ psq_st f27, 120(r1), 0, qr0 +/* 801765E4 00173544 DB 41 00 60 */ stfd f26, 0x60(r1) +/* 801765E8 00173548 F3 41 00 68 */ psq_st f26, 104(r1), 0, qr0 +/* 801765EC 0017354C 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 801765F0 00173550 93 C1 00 58 */ stw r30, 0x58(r1) +/* 801765F4 00173554 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801765F8 00173558 FF 40 08 90 */ fmr f26, f1 +/* 801765FC 0017355C 7C 7E 1B 78 */ mr r30, r3 +/* 80176600 00173560 7C 9F 23 78 */ mr r31, r4 +/* 80176604 00173564 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80176608 00173568 41 82 01 E8 */ beq lbl_801767F0 +/* 8017660C 0017356C 4B EF FE C1 */ bl Think__14CScriptTriggerFfR13CStateManager +/* 80176610 00173570 83 FF 08 4C */ lwz r31, 0x84c(r31) +/* 80176614 00173574 80 7F 07 68 */ lwz r3, 0x768(r31) +/* 80176618 00173578 4B F8 27 ED */ bl GetBallRadius__10CMorphBallCFv +/* 8017661C 0017357C FF C0 08 90 */ fmr f30, f1 +/* 80176620 00173580 C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 80176624 00173584 80 1F 02 F8 */ lwz r0, 0x2f8(r31) +/* 80176628 00173588 C0 7F 00 40 */ lfs f3, 0x40(r31) +/* 8017662C 0017358C C0 42 A1 B0 */ lfs f2, lbl_805ABED0@sda21(r2) +/* 80176630 00173590 2C 00 00 01 */ cmpwi r0, 1 +/* 80176634 00173594 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 80176638 00173598 EC 80 F0 2A */ fadds f4, f0, f30 +/* 8017663C 0017359C EC A3 10 2A */ fadds f5, f3, f2 +/* 80176640 001735A0 EC 61 10 2A */ fadds f3, f1, f2 +/* 80176644 001735A4 40 82 01 9C */ bne lbl_801767E0 +/* 80176648 001735A8 C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 8017664C 001735AC 38 61 00 40 */ addi r3, r1, 0x40 +/* 80176650 001735B0 C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 80176654 001735B4 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 80176658 001735B8 EC 42 18 28 */ fsubs f2, f2, f3 +/* 8017665C 001735BC EC 21 20 28 */ fsubs f1, f1, f4 +/* 80176660 001735C0 EC 00 28 28 */ fsubs f0, f0, f5 +/* 80176664 001735C4 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 80176668 001735C8 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 8017666C 001735CC D0 21 00 48 */ stfs f1, 0x48(r1) +/* 80176670 001735D0 48 19 E2 49 */ bl Magnitude__9CVector3fCFv +/* 80176674 001735D4 88 7E 01 68 */ lbz r3, 0x168(r30) +/* 80176678 001735D8 FF E0 08 90 */ fmr f31, f1 +/* 8017667C 001735DC 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 80176680 001735E0 40 82 01 04 */ bne lbl_80176784 +/* 80176684 001735E4 FC 1F F0 40 */ fcmpo cr0, f31, f30 +/* 80176688 001735E8 40 80 00 14 */ bge lbl_8017669C +/* 8017668C 001735EC 38 00 00 01 */ li r0, 1 +/* 80176690 001735F0 50 03 3E 30 */ rlwimi r3, r0, 7, 0x18, 0x18 +/* 80176694 001735F4 98 7E 01 68 */ stb r3, 0x168(r30) +/* 80176698 001735F8 48 00 00 EC */ b lbl_80176784 +lbl_8017669C: +/* 8017669C 001735FC 38 61 00 28 */ addi r3, r1, 0x28 +/* 801766A0 00173600 38 81 00 40 */ addi r4, r1, 0x40 +/* 801766A4 00173604 48 19 E1 AD */ bl AsNormalized__9CVector3fCFv +/* 801766A8 00173608 C0 22 A1 B4 */ lfs f1, lbl_805ABED4@sda21(r2) +/* 801766AC 0017360C C0 1E 01 54 */ lfs f0, 0x154(r30) +/* 801766B0 00173610 C3 A1 00 28 */ lfs f29, 0x28(r1) +/* 801766B4 00173614 EC 21 00 32 */ fmuls f1, f1, f0 +/* 801766B8 00173618 C3 81 00 2C */ lfs f28, 0x2c(r1) +/* 801766BC 0017361C C3 61 00 30 */ lfs f27, 0x30(r1) +/* 801766C0 00173620 48 21 DD 31 */ bl cos +/* 801766C4 00173624 FC 40 E0 50 */ fneg f2, f28 +/* 801766C8 00173628 C0 1E 01 60 */ lfs f0, 0x160(r30) +/* 801766CC 0017362C FC 80 E8 50 */ fneg f4, f29 +/* 801766D0 00173630 C0 7E 01 5C */ lfs f3, 0x15c(r30) +/* 801766D4 00173634 FC C0 D8 50 */ fneg f6, f27 +/* 801766D8 00173638 C0 BE 01 64 */ lfs f5, 0x164(r30) +/* 801766DC 0017363C EC 02 00 32 */ fmuls f0, f2, f0 +/* 801766E0 00173640 FC 20 08 18 */ frsp f1, f1 +/* 801766E4 00173644 EC 04 00 FA */ fmadds f0, f4, f3, f0 +/* 801766E8 00173648 EC 06 01 7A */ fmadds f0, f6, f5, f0 +/* 801766EC 0017364C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801766F0 00173650 40 80 00 94 */ bge lbl_80176784 +/* 801766F4 00173654 C0 7E 01 58 */ lfs f3, 0x158(r30) +/* 801766F8 00173658 FC 1F 18 40 */ fcmpo cr0, f31, f3 +/* 801766FC 0017365C 40 80 00 88 */ bge lbl_80176784 +/* 80176700 00173660 EC 3F 07 F2 */ fmuls f1, f31, f31 +/* 80176704 00173664 C0 02 A1 B8 */ lfs f0, lbl_805ABED8@sda21(r2) +/* 80176708 00173668 C0 5E 01 50 */ lfs f2, 0x150(r30) +/* 8017670C 0017366C EC 00 D0 24 */ fdivs f0, f0, f26 +/* 80176710 00173670 EC 23 08 24 */ fdivs f1, f3, f1 +/* 80176714 00173674 EC 22 00 72 */ fmuls f1, f2, f1 +/* 80176718 00173678 EC 00 07 F2 */ fmuls f0, f0, f31 +/* 8017671C 0017367C D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80176720 00173680 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80176724 00173684 D0 01 00 08 */ stfs f0, 8(r1) +/* 80176728 00173688 40 80 00 0C */ bge lbl_80176734 +/* 8017672C 0017368C 38 61 00 08 */ addi r3, r1, 8 +/* 80176730 00173690 48 00 00 08 */ b lbl_80176738 +lbl_80176734: +/* 80176734 00173694 38 61 00 0C */ addi r3, r1, 0xc +lbl_80176738: +/* 80176738 00173698 C0 1F 00 E8 */ lfs f0, 0xe8(r31) +/* 8017673C 0017369C C0 A3 00 00 */ lfs f5, 0(r3) +/* 80176740 001736A0 EC 60 07 72 */ fmuls f3, f0, f29 +/* 80176744 001736A4 EC 40 07 32 */ fmuls f2, f0, f28 +/* 80176748 001736A8 EC 20 06 F2 */ fmuls f1, f0, f27 +/* 8017674C 001736AC EC 05 00 F2 */ fmuls f0, f5, f3 +/* 80176750 001736B0 D0 61 00 10 */ stfs f3, 0x10(r1) +/* 80176754 001736B4 EC 85 00 B2 */ fmuls f4, f5, f2 +/* 80176758 001736B8 EC 65 00 72 */ fmuls f3, f5, f1 +/* 8017675C 001736BC D0 41 00 14 */ stfs f2, 0x14(r1) +/* 80176760 001736C0 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80176764 001736C4 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80176768 001736C8 D0 81 00 20 */ stfs f4, 0x20(r1) +/* 8017676C 001736CC D0 61 00 24 */ stfs f3, 0x24(r1) +/* 80176770 001736D0 4B EA 4D C5 */ bl Identity__10CAxisAngleFv +/* 80176774 001736D4 7C 65 1B 78 */ mr r5, r3 +/* 80176778 001736D8 7F E3 FB 78 */ mr r3, r31 +/* 8017677C 001736DC 38 81 00 1C */ addi r4, r1, 0x1c +/* 80176780 001736E0 4B FA 5B 45 */ bl ApplyForceWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle +lbl_80176784: +/* 80176784 001736E4 88 1E 01 48 */ lbz r0, 0x148(r30) +/* 80176788 001736E8 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 8017678C 001736EC 41 82 00 64 */ beq lbl_801767F0 +/* 80176790 001736F0 C0 1E 00 60 */ lfs f0, 0x60(r30) +/* 80176794 001736F4 C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 80176798 001736F8 C0 22 A1 B0 */ lfs f1, lbl_805ABED0@sda21(r2) +/* 8017679C 001736FC EC 60 F0 28 */ fsubs f3, f0, f30 +/* 801767A0 00173700 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801767A4 00173704 EC 42 08 28 */ fsubs f2, f2, f1 +/* 801767A8 00173708 EC 00 08 28 */ fsubs f0, f0, f1 +/* 801767AC 0017370C D0 61 00 3C */ stfs f3, 0x3c(r1) +/* 801767B0 00173710 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 801767B4 00173714 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 801767B8 00173718 88 1E 01 68 */ lbz r0, 0x168(r30) +/* 801767BC 0017371C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 801767C0 00173720 41 82 00 0C */ beq lbl_801767CC +/* 801767C4 00173724 7F E3 FB 78 */ mr r3, r31 +/* 801767C8 00173728 4B FA 4B B1 */ bl Stop__13CPhysicsActorFv +lbl_801767CC: +/* 801767CC 0017372C FC 20 D0 90 */ fmr f1, f26 +/* 801767D0 00173730 7F E3 FB 78 */ mr r3, r31 +/* 801767D4 00173734 38 81 00 34 */ addi r4, r1, 0x34 +/* 801767D8 00173738 4B FA 49 31 */ bl MoveToWR__13CPhysicsActorFRC9CVector3ff +/* 801767DC 0017373C 48 00 00 14 */ b lbl_801767F0 +lbl_801767E0: +/* 801767E0 00173740 88 1E 01 68 */ lbz r0, 0x168(r30) +/* 801767E4 00173744 38 60 00 00 */ li r3, 0 +/* 801767E8 00173748 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 801767EC 0017374C 98 1E 01 68 */ stb r0, 0x168(r30) +lbl_801767F0: +/* 801767F0 00173750 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 +/* 801767F4 00173754 CB E1 00 B0 */ lfd f31, 0xb0(r1) +/* 801767F8 00173758 E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 +/* 801767FC 0017375C CB C1 00 A0 */ lfd f30, 0xa0(r1) +/* 80176800 00173760 E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0 +/* 80176804 00173764 CB A1 00 90 */ lfd f29, 0x90(r1) +/* 80176808 00173768 E3 81 00 88 */ psq_l f28, 136(r1), 0, qr0 +/* 8017680C 0017376C CB 81 00 80 */ lfd f28, 0x80(r1) +/* 80176810 00173770 E3 61 00 78 */ psq_l f27, 120(r1), 0, qr0 +/* 80176814 00173774 CB 61 00 70 */ lfd f27, 0x70(r1) +/* 80176818 00173778 E3 41 00 68 */ psq_l f26, 104(r1), 0, qr0 +/* 8017681C 0017377C CB 41 00 60 */ lfd f26, 0x60(r1) +/* 80176820 00173780 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 80176824 00173784 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 80176828 00173788 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 8017682C 0017378C 7C 08 03 A6 */ mtlr r0 +/* 80176830 00173790 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 80176834 00173794 4E 80 00 20 */ blr + +.global InhabitantExited__18CScriptBallTriggerFR6CActorR13CStateManager +InhabitantExited__18CScriptBallTriggerFR6CActorR13CStateManager: +/* 80176838 00173798 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8017683C 0017379C 7C 08 02 A6 */ mflr r0 +/* 80176840 001737A0 90 01 00 24 */ stw r0, 0x24(r1) +/* 80176844 001737A4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80176848 001737A8 7C 7F 1B 78 */ mr r31, r3 +/* 8017684C 001737AC 38 61 00 08 */ addi r3, r1, 8 +/* 80176850 001737B0 4B F3 5B B1 */ bl "__ct__20TCastToPtr<7CPlayer>FR7CEntity" +/* 80176854 001737B4 80 63 00 04 */ lwz r3, 4(r3) +/* 80176858 001737B8 28 03 00 00 */ cmplwi r3, 0 +/* 8017685C 001737BC 41 82 00 20 */ beq lbl_8017687C +/* 80176860 001737C0 80 63 07 68 */ lwz r3, 0x768(r3) +/* 80176864 001737C4 38 80 00 00 */ li r4, 0 +/* 80176868 001737C8 4B F7 87 39 */ bl SetBallBoostState__10CMorphBallFQ210CMorphBall15EBallBoostState +/* 8017686C 001737CC 88 1F 01 68 */ lbz r0, 0x168(r31) +/* 80176870 001737D0 38 60 00 00 */ li r3, 0 +/* 80176874 001737D4 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80176878 001737D8 98 1F 01 68 */ stb r0, 0x168(r31) +lbl_8017687C: +/* 8017687C 001737DC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80176880 001737E0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80176884 001737E4 7C 08 03 A6 */ mtlr r0 +/* 80176888 001737E8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8017688C 001737EC 4E 80 00 20 */ blr + +.global InhabitantAdded__18CScriptBallTriggerFR6CActorR13CStateManager +InhabitantAdded__18CScriptBallTriggerFR6CActorR13CStateManager: +/* 80176890 001737F0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80176894 001737F4 7C 08 02 A6 */ mflr r0 +/* 80176898 001737F8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8017689C 001737FC 38 61 00 08 */ addi r3, r1, 8 +/* 801768A0 00173800 4B F3 5B 61 */ bl "__ct__20TCastToPtr<7CPlayer>FR7CEntity" +/* 801768A4 00173804 80 63 00 04 */ lwz r3, 4(r3) +/* 801768A8 00173808 28 03 00 00 */ cmplwi r3, 0 +/* 801768AC 0017380C 41 82 00 10 */ beq lbl_801768BC +/* 801768B0 00173810 80 63 07 68 */ lwz r3, 0x768(r3) +/* 801768B4 00173814 38 80 00 01 */ li r4, 1 +/* 801768B8 00173818 4B F7 86 E9 */ bl SetBallBoostState__10CMorphBallFQ210CMorphBall15EBallBoostState +lbl_801768BC: +/* 801768BC 0017381C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801768C0 00173820 7C 08 03 A6 */ mtlr r0 +/* 801768C4 00173824 38 21 00 10 */ addi r1, r1, 0x10 +/* 801768C8 00173828 4E 80 00 20 */ blr + +.global __dt__18CScriptBallTriggerFv +__dt__18CScriptBallTriggerFv: +/* 801768CC 0017382C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801768D0 00173830 7C 08 02 A6 */ mflr r0 +/* 801768D4 00173834 90 01 00 14 */ stw r0, 0x14(r1) +/* 801768D8 00173838 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801768DC 0017383C 7C 9F 23 78 */ mr r31, r4 +/* 801768E0 00173840 93 C1 00 08 */ stw r30, 8(r1) +/* 801768E4 00173844 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801768E8 00173848 41 82 00 28 */ beq lbl_80176910 +/* 801768EC 0017384C 3C A0 80 3E */ lis r5, lbl_803E3E80@ha +/* 801768F0 00173850 38 80 00 00 */ li r4, 0 +/* 801768F4 00173854 38 05 3E 80 */ addi r0, r5, lbl_803E3E80@l +/* 801768F8 00173858 90 1E 00 00 */ stw r0, 0(r30) +/* 801768FC 0017385C 4B F0 03 85 */ bl __dt__14CScriptTriggerFv +/* 80176900 00173860 7F E0 07 35 */ extsh. r0, r31 +/* 80176904 00173864 40 81 00 0C */ ble lbl_80176910 +/* 80176908 00173868 7F C3 F3 78 */ mr r3, r30 +/* 8017690C 0017386C 48 19 F0 25 */ bl Free__7CMemoryFPCv +lbl_80176910: +/* 80176910 00173870 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80176914 00173874 7F C3 F3 78 */ mr r3, r30 +/* 80176918 00173878 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8017691C 0017387C 83 C1 00 08 */ lwz r30, 8(r1) +/* 80176920 00173880 7C 08 03 A6 */ mtlr r0 +/* 80176924 00173884 38 21 00 10 */ addi r1, r1, 0x10 +/* 80176928 00173888 4E 80 00 20 */ blr + +.global "__ct__18CScriptBallTriggerF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fRC9CVector3fbfff9CVector3f" +"__ct__18CScriptBallTriggerF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fRC9CVector3fbfff9CVector3f": +/* 8017692C 0017388C 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 80176930 00173890 7C 08 02 A6 */ mflr r0 +/* 80176934 00173894 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 80176938 00173898 DB E1 00 B0 */ stfd f31, 0xb0(r1) +/* 8017693C 0017389C F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 +/* 80176940 001738A0 DB C1 00 A0 */ stfd f30, 0xa0(r1) +/* 80176944 001738A4 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 +/* 80176948 001738A8 DB A1 00 90 */ stfd f29, 0x90(r1) +/* 8017694C 001738AC F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0 +/* 80176950 001738B0 BF 21 00 74 */ stmw r25, 0x74(r1) +/* 80176954 001738B4 39 80 00 00 */ li r12, 0 +/* 80176958 001738B8 88 01 00 20 */ lbz r0, 0x20(r1) +/* 8017695C 001738BC 51 80 3E 30 */ rlwimi r0, r12, 7, 0x18, 0x18 +/* 80176960 001738C0 C0 02 A1 B0 */ lfs f0, lbl_805ABED0@sda21(r2) +/* 80176964 001738C4 98 01 00 20 */ stb r0, 0x20(r1) +/* 80176968 001738C8 54 0B 06 3E */ clrlwi r11, r0, 0x18 +/* 8017696C 001738CC 51 8B 36 72 */ rlwimi r11, r12, 6, 0x19, 0x19 +/* 80176970 001738D0 A0 04 00 00 */ lhz r0, 0(r4) +/* 80176974 001738D4 89 01 00 48 */ lbz r8, 0x48(r1) +/* 80176978 001738D8 55 64 06 3E */ clrlwi r4, r11, 0x18 +/* 8017697C 001738DC 51 84 2E B4 */ rlwimi r4, r12, 5, 0x1a, 0x1a +/* 80176980 001738E0 99 61 00 20 */ stb r11, 0x20(r1) +/* 80176984 001738E4 51 88 3E 30 */ rlwimi r8, r12, 7, 0x18, 0x18 +/* 80176988 001738E8 FF A0 08 90 */ fmr f29, f1 +/* 8017698C 001738EC 7C 7D 1B 78 */ mr r29, r3 +/* 80176990 001738F0 FF C0 10 90 */ fmr f30, f2 +/* 80176994 001738F4 FF E0 18 90 */ fmr f31, f3 +/* 80176998 001738F8 91 81 00 1C */ stw r12, 0x1c(r1) +/* 8017699C 001738FC 8B E1 00 CB */ lbz r31, 0xcb(r1) +/* 801769A0 00173900 98 81 00 20 */ stb r4, 0x20(r1) +/* 801769A4 00173904 7C B9 2B 78 */ mr r25, r5 +/* 801769A8 00173908 7C DA 33 78 */ mr r26, r6 +/* 801769AC 0017390C 91 81 00 30 */ stw r12, 0x30(r1) +/* 801769B0 00173910 7C FB 3B 78 */ mr r27, r7 +/* 801769B4 00173914 7D 3C 4B 78 */ mr r28, r9 +/* 801769B8 00173918 7D 5E 53 78 */ mr r30, r10 +/* 801769BC 0017391C 98 81 00 34 */ stb r4, 0x34(r1) +/* 801769C0 00173920 38 61 00 4C */ addi r3, r1, 0x4c +/* 801769C4 00173924 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 801769C8 00173928 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 801769CC 0017392C D0 01 00 40 */ stfs f0, 0x40(r1) +/* 801769D0 00173930 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 801769D4 00173934 99 01 00 48 */ stb r8, 0x48(r1) +/* 801769D8 00173938 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801769DC 0017393C 48 00 00 FD */ bl calculate_ball_aabox__Fv +/* 801769E0 00173940 38 00 10 00 */ li r0, 0x1000 +/* 801769E4 00173944 3C 60 80 5A */ lis r3, skZero3f@ha +/* 801769E8 00173948 90 01 00 08 */ stw r0, 8(r1) +/* 801769EC 0017394C 39 43 66 A0 */ addi r10, r3, skZero3f@l +/* 801769F0 00173950 38 00 00 00 */ li r0, 0 +/* 801769F4 00173954 7F A3 EB 78 */ mr r3, r29 +/* 801769F8 00173958 93 81 00 0C */ stw r28, 0xc(r1) +/* 801769FC 0017395C 7F 25 CB 78 */ mr r5, r25 +/* 80176A00 00173960 7F 46 D3 78 */ mr r6, r26 +/* 80176A04 00173964 7F 67 DB 78 */ mr r7, r27 +/* 80176A08 00173968 90 01 00 10 */ stw r0, 0x10(r1) +/* 80176A0C 0017396C 38 81 00 18 */ addi r4, r1, 0x18 +/* 80176A10 00173970 39 01 00 4C */ addi r8, r1, 0x4c +/* 80176A14 00173974 39 21 00 30 */ addi r9, r1, 0x30 +/* 80176A18 00173978 90 01 00 14 */ stw r0, 0x14(r1) +/* 80176A1C 0017397C 4B F0 03 3D */ bl "__ct__14CScriptTriggerF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fRC6CAABoxRC11CDamageInfoRC9CVector3fUibbb" +/* 80176A20 00173980 3C 80 80 3E */ lis r4, lbl_803E3E80@ha +/* 80176A24 00173984 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80176A28 00173988 38 04 3E 80 */ addi r0, r4, lbl_803E3E80@l +/* 80176A2C 0017398C 38 80 00 00 */ li r4, 0 +/* 80176A30 00173990 90 1D 00 00 */ stw r0, 0(r29) +/* 80176A34 00173994 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 80176A38 00173998 7F C3 F3 78 */ mr r3, r30 +/* 80176A3C 0017399C D3 BD 01 50 */ stfs f29, 0x150(r29) +/* 80176A40 001739A0 D3 DD 01 54 */ stfs f30, 0x154(r29) +/* 80176A44 001739A4 D3 FD 01 58 */ stfs f31, 0x158(r29) +/* 80176A48 001739A8 C0 05 00 00 */ lfs f0, 0(r5) +/* 80176A4C 001739AC D0 1D 01 5C */ stfs f0, 0x15c(r29) +/* 80176A50 001739B0 C0 05 00 04 */ lfs f0, 4(r5) +/* 80176A54 001739B4 D0 1D 01 60 */ stfs f0, 0x160(r29) +/* 80176A58 001739B8 C0 05 00 08 */ lfs f0, 8(r5) +/* 80176A5C 001739BC D0 1D 01 64 */ stfs f0, 0x164(r29) +/* 80176A60 001739C0 88 1D 01 68 */ lbz r0, 0x168(r29) +/* 80176A64 001739C4 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 80176A68 001739C8 98 1D 01 68 */ stb r0, 0x168(r29) +/* 80176A6C 001739CC 88 1D 01 68 */ lbz r0, 0x168(r29) +/* 80176A70 001739D0 53 E0 36 72 */ rlwimi r0, r31, 6, 0x19, 0x19 +/* 80176A74 001739D4 98 1D 01 68 */ stb r0, 0x168(r29) +/* 80176A78 001739D8 48 19 DC 81 */ bl CanBeNormalized__9CVector3fCFv +/* 80176A7C 001739DC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80176A80 001739E0 41 82 00 28 */ beq lbl_80176AA8 +/* 80176A84 001739E4 7F C4 F3 78 */ mr r4, r30 +/* 80176A88 001739E8 38 61 00 24 */ addi r3, r1, 0x24 +/* 80176A8C 001739EC 48 19 DD C5 */ bl AsNormalized__9CVector3fCFv +/* 80176A90 001739F0 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 80176A94 001739F4 D0 1D 01 5C */ stfs f0, 0x15c(r29) +/* 80176A98 001739F8 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 80176A9C 001739FC D0 1D 01 60 */ stfs f0, 0x160(r29) +/* 80176AA0 00173A00 C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 80176AA4 00173A04 D0 1D 01 64 */ stfs f0, 0x164(r29) +lbl_80176AA8: +/* 80176AA8 00173A08 7F A3 EB 78 */ mr r3, r29 +/* 80176AAC 00173A0C E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 +/* 80176AB0 00173A10 CB E1 00 B0 */ lfd f31, 0xb0(r1) +/* 80176AB4 00173A14 E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 +/* 80176AB8 00173A18 CB C1 00 A0 */ lfd f30, 0xa0(r1) +/* 80176ABC 00173A1C E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0 +/* 80176AC0 00173A20 CB A1 00 90 */ lfd f29, 0x90(r1) +/* 80176AC4 00173A24 BB 21 00 74 */ lmw r25, 0x74(r1) +/* 80176AC8 00173A28 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 80176ACC 00173A2C 7C 08 03 A6 */ mtlr r0 +/* 80176AD0 00173A30 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 80176AD4 00173A34 4E 80 00 20 */ blr + +.global calculate_ball_aabox__Fv +calculate_ball_aabox__Fv: +/* 80176AD8 00173A38 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80176ADC 00173A3C 7C 08 02 A6 */ mflr r0 +/* 80176AE0 00173A40 C0 22 A1 BC */ lfs f1, lbl_805ABEDC@sda21(r2) +/* 80176AE4 00173A44 90 01 00 24 */ stw r0, 0x24(r1) +/* 80176AE8 00173A48 38 81 00 14 */ addi r4, r1, 0x14 +/* 80176AEC 00173A4C 38 A1 00 08 */ addi r5, r1, 8 +/* 80176AF0 00173A50 80 CD A1 18 */ lwz r6, gpTweakPlayer@sda21(r13) +/* 80176AF4 00173A54 C0 06 02 7C */ lfs f0, 0x27c(r6) +/* 80176AF8 00173A58 EC 21 00 32 */ fmuls f1, f1, f0 +/* 80176AFC 00173A5C FC 00 08 50 */ fneg f0, f1 +/* 80176B00 00173A60 D0 21 00 08 */ stfs f1, 8(r1) +/* 80176B04 00173A64 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80176B08 00173A68 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 80176B0C 00173A6C D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80176B10 00173A70 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80176B14 00173A74 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80176B18 00173A78 48 1C 19 F1 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 80176B1C 00173A7C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80176B20 00173A80 7C 08 03 A6 */ mtlr r0 +/* 80176B24 00173A84 38 21 00 20 */ addi r1, r1, 0x20 +/* 80176B28 00173A88 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptDistanceFog.s b/asm/Kyoto_CWD/ScriptObjects/CScriptDistanceFog.s new file mode 100644 index 00000000..733fe84d --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptDistanceFog.s @@ -0,0 +1,266 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global AcceptScriptMsg__18CScriptDistanceFogF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__18CScriptDistanceFogF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8014CFFC 00149F5C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8014D000 00149F60 7C 08 02 A6 */ mflr r0 +/* 8014D004 00149F64 90 01 00 44 */ stw r0, 0x44(r1) +/* 8014D008 00149F68 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8014D00C 00149F6C 7C DF 33 78 */ mr r31, r6 +/* 8014D010 00149F70 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8014D014 00149F74 7C 7E 1B 78 */ mr r30, r3 +/* 8014D018 00149F78 93 A1 00 34 */ stw r29, 0x34(r1) +/* 8014D01C 00149F7C 7C 9D 23 78 */ mr r29, r4 +/* 8014D020 00149F80 A0 05 00 00 */ lhz r0, 0(r5) +/* 8014D024 00149F84 38 A1 00 08 */ addi r5, r1, 8 +/* 8014D028 00149F88 B0 01 00 08 */ sth r0, 8(r1) +/* 8014D02C 00149F8C 4B F0 41 31 */ bl AcceptScriptMsg__7CEntityF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8014D030 00149F90 80 DE 00 04 */ lwz r6, 4(r30) +/* 8014D034 00149F94 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) +/* 8014D038 00149F98 7C 06 00 00 */ cmpw r6, r0 +/* 8014D03C 00149F9C 41 82 01 68 */ beq lbl_8014D1A4 +/* 8014D040 00149FA0 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 8014D044 00149FA4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8014D048 00149FA8 41 82 01 5C */ beq lbl_8014D1A4 +/* 8014D04C 00149FAC 2C 1D 00 23 */ cmpwi r29, 0x23 +/* 8014D050 00149FB0 41 82 00 14 */ beq lbl_8014D064 +/* 8014D054 00149FB4 40 80 01 50 */ bge lbl_8014D1A4 +/* 8014D058 00149FB8 2C 1D 00 13 */ cmpwi r29, 0x13 +/* 8014D05C 00149FBC 41 82 00 5C */ beq lbl_8014D0B8 +/* 8014D060 00149FC0 48 00 01 44 */ b lbl_8014D1A4 +lbl_8014D064: +/* 8014D064 00149FC4 88 1E 00 60 */ lbz r0, 0x60(r30) +/* 8014D068 00149FC8 28 00 00 00 */ cmplwi r0, 0 +/* 8014D06C 00149FCC 41 82 01 38 */ beq lbl_8014D1A4 +/* 8014D070 00149FD0 80 BF 08 50 */ lwz r5, 0x850(r31) +/* 8014D074 00149FD4 54 C3 18 38 */ slwi r3, r6, 3 +/* 8014D078 00149FD8 80 9E 00 34 */ lwz r4, 0x34(r30) +/* 8014D07C 00149FDC 38 03 00 04 */ addi r0, r3, 4 +/* 8014D080 00149FE0 80 65 00 20 */ lwz r3, 0x20(r5) +/* 8014D084 00149FE4 2C 04 00 00 */ cmpwi r4, 0 +/* 8014D088 00149FE8 90 C1 00 28 */ stw r6, 0x28(r1) +/* 8014D08C 00149FEC 7C 63 00 2E */ lwzx r3, r3, r0 +/* 8014D090 00149FF0 90 C1 00 18 */ stw r6, 0x18(r1) +/* 8014D094 00149FF4 80 63 01 2C */ lwz r3, 0x12c(r3) +/* 8014D098 00149FF8 80 63 10 C4 */ lwz r3, 0x10c4(r3) +/* 8014D09C 00149FFC 40 82 00 0C */ bne lbl_8014D0A8 +/* 8014D0A0 0014A000 4B F1 20 F9 */ bl DisableFog__Q29CGameArea8CAreaFogFv +/* 8014D0A4 0014A004 48 00 01 00 */ b lbl_8014D1A4 +lbl_8014D0A8: +/* 8014D0A8 0014A008 38 BE 00 38 */ addi r5, r30, 0x38 +/* 8014D0AC 0014A00C 38 DE 00 3C */ addi r6, r30, 0x3c +/* 8014D0B0 0014A010 4B F1 20 71 */ bl SetFogExplicit__Q29CGameArea8CAreaFogF11ERglFogModeRC6CColorRC9CVector2f +/* 8014D0B4 0014A014 48 00 00 F0 */ b lbl_8014D1A4 +lbl_8014D0B8: +/* 8014D0B8 0014A018 88 1E 00 61 */ lbz r0, 0x61(r30) +/* 8014D0BC 0014A01C 28 00 00 00 */ cmplwi r0, 0 +/* 8014D0C0 0014A020 41 82 00 5C */ beq lbl_8014D11C +/* 8014D0C4 0014A024 80 BF 08 50 */ lwz r5, 0x850(r31) +/* 8014D0C8 0014A028 54 C3 18 38 */ slwi r3, r6, 3 +/* 8014D0CC 0014A02C 80 9E 00 34 */ lwz r4, 0x34(r30) +/* 8014D0D0 0014A030 38 03 00 04 */ addi r0, r3, 4 +/* 8014D0D4 0014A034 80 65 00 20 */ lwz r3, 0x20(r5) +/* 8014D0D8 0014A038 2C 04 00 00 */ cmpwi r4, 0 +/* 8014D0DC 0014A03C 90 C1 00 24 */ stw r6, 0x24(r1) +/* 8014D0E0 0014A040 7C 63 00 2E */ lwzx r3, r3, r0 +/* 8014D0E4 0014A044 90 C1 00 14 */ stw r6, 0x14(r1) +/* 8014D0E8 0014A048 80 63 01 2C */ lwz r3, 0x12c(r3) +/* 8014D0EC 0014A04C 80 63 10 C4 */ lwz r3, 0x10c4(r3) +/* 8014D0F0 0014A050 41 82 00 1C */ beq lbl_8014D10C +/* 8014D0F4 0014A054 C0 3E 00 44 */ lfs f1, 0x44(r30) +/* 8014D0F8 0014A058 38 BE 00 38 */ addi r5, r30, 0x38 +/* 8014D0FC 0014A05C 38 DE 00 3C */ addi r6, r30, 0x3c +/* 8014D100 0014A060 38 FE 00 48 */ addi r7, r30, 0x48 +/* 8014D104 0014A064 4B F1 1E F5 */ bl FadeFog__Q29CGameArea8CAreaFogF11ERglFogModeRC6CColorRC9CVector2ffRC9CVector2f +/* 8014D108 0014A068 48 00 00 14 */ b lbl_8014D11C +lbl_8014D10C: +/* 8014D10C 0014A06C C0 3E 00 48 */ lfs f1, 0x48(r30) +/* 8014D110 0014A070 38 9E 00 38 */ addi r4, r30, 0x38 +/* 8014D114 0014A074 C0 5E 00 44 */ lfs f2, 0x44(r30) +/* 8014D118 0014A078 4B F1 1E 2D */ bl RollFogOut__Q29CGameArea8CAreaFogFffRC6CColor +lbl_8014D11C: +/* 8014D11C 0014A07C C0 3E 00 54 */ lfs f1, 0x54(r30) +/* 8014D120 0014A080 C0 42 9D 20 */ lfs f2, lbl_805ABA40@sda21(r2) +/* 8014D124 0014A084 C0 02 9D 24 */ lfs f0, lbl_805ABA44@sda21(r2) +/* 8014D128 0014A088 EC 41 10 28 */ fsubs f2, f1, f2 +/* 8014D12C 0014A08C FC 40 12 10 */ fabs f2, f2 +/* 8014D130 0014A090 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8014D134 0014A094 41 80 00 2C */ blt lbl_8014D160 +/* 8014D138 0014A098 80 BE 00 04 */ lwz r5, 4(r30) +/* 8014D13C 0014A09C 80 9F 08 50 */ lwz r4, 0x850(r31) +/* 8014D140 0014A0A0 54 A3 18 38 */ slwi r3, r5, 3 +/* 8014D144 0014A0A4 90 A1 00 20 */ stw r5, 0x20(r1) +/* 8014D148 0014A0A8 80 84 00 20 */ lwz r4, 0x20(r4) +/* 8014D14C 0014A0AC 38 03 00 04 */ addi r0, r3, 4 +/* 8014D150 0014A0B0 90 A1 00 10 */ stw r5, 0x10(r1) +/* 8014D154 0014A0B4 7C 64 00 2E */ lwzx r3, r4, r0 +/* 8014D158 0014A0B8 C0 5E 00 50 */ lfs f2, 0x50(r30) +/* 8014D15C 0014A0BC 4B F1 10 A1 */ bl sub_8005e1fc +lbl_8014D160: +/* 8014D160 0014A0C0 C0 3E 00 5C */ lfs f1, 0x5c(r30) +/* 8014D164 0014A0C4 C0 42 9D 20 */ lfs f2, lbl_805ABA40@sda21(r2) +/* 8014D168 0014A0C8 C0 02 9D 24 */ lfs f0, lbl_805ABA44@sda21(r2) +/* 8014D16C 0014A0CC EC 41 10 28 */ fsubs f2, f1, f2 +/* 8014D170 0014A0D0 FC 40 12 10 */ fabs f2, f2 +/* 8014D174 0014A0D4 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8014D178 0014A0D8 41 80 00 2C */ blt lbl_8014D1A4 +/* 8014D17C 0014A0DC 80 BE 00 04 */ lwz r5, 4(r30) +/* 8014D180 0014A0E0 80 9F 08 50 */ lwz r4, 0x850(r31) +/* 8014D184 0014A0E4 54 A3 18 38 */ slwi r3, r5, 3 +/* 8014D188 0014A0E8 90 A1 00 1C */ stw r5, 0x1c(r1) +/* 8014D18C 0014A0EC 80 84 00 20 */ lwz r4, 0x20(r4) +/* 8014D190 0014A0F0 38 03 00 04 */ addi r0, r3, 4 +/* 8014D194 0014A0F4 90 A1 00 0C */ stw r5, 0xc(r1) +/* 8014D198 0014A0F8 7C 64 00 2E */ lwzx r3, r4, r0 +/* 8014D19C 0014A0FC C0 5E 00 58 */ lfs f2, 0x58(r30) +/* 8014D1A0 0014A100 4B F1 10 49 */ bl sub_8005e1e8 +lbl_8014D1A4: +/* 8014D1A4 0014A104 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8014D1A8 0014A108 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8014D1AC 0014A10C 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8014D1B0 0014A110 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 8014D1B4 0014A114 7C 08 03 A6 */ mtlr r0 +/* 8014D1B8 0014A118 38 21 00 40 */ addi r1, r1, 0x40 +/* 8014D1BC 0014A11C 4E 80 00 20 */ blr + +.global Accept__18CScriptDistanceFogFR8IVisitor +Accept__18CScriptDistanceFogFR8IVisitor: +/* 8014D1C0 0014A120 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8014D1C4 0014A124 7C 08 02 A6 */ mflr r0 +/* 8014D1C8 0014A128 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014D1CC 0014A12C 7C 60 1B 78 */ mr r0, r3 +/* 8014D1D0 0014A130 7C 83 23 78 */ mr r3, r4 +/* 8014D1D4 0014A134 81 84 00 00 */ lwz r12, 0(r4) +/* 8014D1D8 0014A138 7C 04 03 78 */ mr r4, r0 +/* 8014D1DC 0014A13C 81 8C 00 7C */ lwz r12, 0x7c(r12) +/* 8014D1E0 0014A140 7D 89 03 A6 */ mtctr r12 +/* 8014D1E4 0014A144 4E 80 04 21 */ bctrl +/* 8014D1E8 0014A148 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014D1EC 0014A14C 7C 08 03 A6 */ mtlr r0 +/* 8014D1F0 0014A150 38 21 00 10 */ addi r1, r1, 0x10 +/* 8014D1F4 0014A154 4E 80 00 20 */ blr + +.global __dt__18CScriptDistanceFogFv +__dt__18CScriptDistanceFogFv: +/* 8014D1F8 0014A158 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8014D1FC 0014A15C 7C 08 02 A6 */ mflr r0 +/* 8014D200 0014A160 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014D204 0014A164 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8014D208 0014A168 7C 9F 23 78 */ mr r31, r4 +/* 8014D20C 0014A16C 93 C1 00 08 */ stw r30, 8(r1) +/* 8014D210 0014A170 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8014D214 0014A174 41 82 00 28 */ beq lbl_8014D23C +/* 8014D218 0014A178 3C A0 80 3E */ lis r5, lbl_803E27B0@ha +/* 8014D21C 0014A17C 38 80 00 00 */ li r4, 0 +/* 8014D220 0014A180 38 05 27 B0 */ addi r0, r5, lbl_803E27B0@l +/* 8014D224 0014A184 90 1E 00 00 */ stw r0, 0(r30) +/* 8014D228 0014A188 4B F0 40 4D */ bl __dt__7CEntityFv +/* 8014D22C 0014A18C 7F E0 07 35 */ extsh. r0, r31 +/* 8014D230 0014A190 40 81 00 0C */ ble lbl_8014D23C +/* 8014D234 0014A194 7F C3 F3 78 */ mr r3, r30 +/* 8014D238 0014A198 48 1C 86 F9 */ bl Free__7CMemoryFPCv +lbl_8014D23C: +/* 8014D23C 0014A19C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014D240 0014A1A0 7F C3 F3 78 */ mr r3, r30 +/* 8014D244 0014A1A4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8014D248 0014A1A8 83 C1 00 08 */ lwz r30, 8(r1) +/* 8014D24C 0014A1AC 7C 08 03 A6 */ mtlr r0 +/* 8014D250 0014A1B0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8014D254 0014A1B4 4E 80 00 20 */ blr + +.global "__ct__18CScriptDistanceFogF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC11ERglFogModeRC6CColorRC9CVector2ff9CVector2fbbffff" +"__ct__18CScriptDistanceFogF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC11ERglFogModeRC6CColorRC9CVector2ff9CVector2fbbffff": +/* 8014D258 0014A1B8 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 8014D25C 0014A1BC 7C 08 02 A6 */ mflr r0 +/* 8014D260 0014A1C0 90 01 00 94 */ stw r0, 0x94(r1) +/* 8014D264 0014A1C4 DB E1 00 80 */ stfd f31, 0x80(r1) +/* 8014D268 0014A1C8 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 +/* 8014D26C 0014A1CC DB C1 00 70 */ stfd f30, 0x70(r1) +/* 8014D270 0014A1D0 F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0 +/* 8014D274 0014A1D4 DB A1 00 60 */ stfd f29, 0x60(r1) +/* 8014D278 0014A1D8 F3 A1 00 68 */ psq_st f29, 104(r1), 0, qr0 +/* 8014D27C 0014A1DC DB 81 00 50 */ stfd f28, 0x50(r1) +/* 8014D280 0014A1E0 F3 81 00 58 */ psq_st f28, 88(r1), 0, qr0 +/* 8014D284 0014A1E4 DB 61 00 40 */ stfd f27, 0x40(r1) +/* 8014D288 0014A1E8 F3 61 00 48 */ psq_st f27, 72(r1), 0, qr0 +/* 8014D28C 0014A1EC BF 21 00 24 */ stmw r25, 0x24(r1) +/* 8014D290 0014A1F0 A0 04 00 00 */ lhz r0, 0(r4) +/* 8014D294 0014A1F4 7C AB 2B 78 */ mr r11, r5 +/* 8014D298 0014A1F8 FF 60 08 90 */ fmr f27, f1 +/* 8014D29C 0014A1FC 88 81 00 9F */ lbz r4, 0x9f(r1) +/* 8014D2A0 0014A200 FF 80 10 90 */ fmr f28, f2 +/* 8014D2A4 0014A204 B0 01 00 08 */ sth r0, 8(r1) +/* 8014D2A8 0014A208 7C FA 3B 78 */ mr r26, r7 +/* 8014D2AC 0014A20C 7C C5 33 78 */ mr r5, r6 +/* 8014D2B0 0014A210 7C 86 23 78 */ mr r6, r4 +/* 8014D2B4 0014A214 FF A0 18 90 */ fmr f29, f3 +/* 8014D2B8 0014A218 FF C0 20 90 */ fmr f30, f4 +/* 8014D2BC 0014A21C 8B C1 00 9B */ lbz r30, 0x9b(r1) +/* 8014D2C0 0014A220 FF E0 28 90 */ fmr f31, f5 +/* 8014D2C4 0014A224 7C 79 1B 78 */ mr r25, r3 +/* 8014D2C8 0014A228 7D 1B 43 78 */ mr r27, r8 +/* 8014D2CC 0014A22C 7D 3C 4B 78 */ mr r28, r9 +/* 8014D2D0 0014A230 7D 5D 53 78 */ mr r29, r10 +/* 8014D2D4 0014A234 7D 67 5B 78 */ mr r7, r11 +/* 8014D2D8 0014A238 38 81 00 08 */ addi r4, r1, 8 +/* 8014D2DC 0014A23C 4B F0 40 49 */ bl "__ct__7CEntityF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8014D2E0 0014A240 3C 60 80 3E */ lis r3, lbl_803E27B0@ha +/* 8014D2E4 0014A244 C0 22 9D 20 */ lfs f1, lbl_805ABA40@sda21(r2) +/* 8014D2E8 0014A248 38 03 27 B0 */ addi r0, r3, lbl_803E27B0@l +/* 8014D2EC 0014A24C 38 61 00 0C */ addi r3, r1, 0xc +/* 8014D2F0 0014A250 90 19 00 00 */ stw r0, 0(r25) +/* 8014D2F4 0014A254 FC 40 08 90 */ fmr f2, f1 +/* 8014D2F8 0014A258 3B E0 00 01 */ li r31, 1 +/* 8014D2FC 0014A25C 93 59 00 34 */ stw r26, 0x34(r25) +/* 8014D300 0014A260 80 1B 00 00 */ lwz r0, 0(r27) +/* 8014D304 0014A264 90 19 00 38 */ stw r0, 0x38(r25) +/* 8014D308 0014A268 C0 1C 00 00 */ lfs f0, 0(r28) +/* 8014D30C 0014A26C D0 19 00 3C */ stfs f0, 0x3c(r25) +/* 8014D310 0014A270 C0 1C 00 04 */ lfs f0, 4(r28) +/* 8014D314 0014A274 D0 19 00 40 */ stfs f0, 0x40(r25) +/* 8014D318 0014A278 D3 79 00 44 */ stfs f27, 0x44(r25) +/* 8014D31C 0014A27C C0 1D 00 00 */ lfs f0, 0(r29) +/* 8014D320 0014A280 D0 19 00 48 */ stfs f0, 0x48(r25) +/* 8014D324 0014A284 C0 1D 00 04 */ lfs f0, 4(r29) +/* 8014D328 0014A288 D0 19 00 4C */ stfs f0, 0x4c(r25) +/* 8014D32C 0014A28C D3 99 00 50 */ stfs f28, 0x50(r25) +/* 8014D330 0014A290 D3 B9 00 54 */ stfs f29, 0x54(r25) +/* 8014D334 0014A294 D3 D9 00 58 */ stfs f30, 0x58(r25) +/* 8014D338 0014A298 D3 F9 00 5C */ stfs f31, 0x5c(r25) +/* 8014D33C 0014A29C 9B D9 00 60 */ stb r30, 0x60(r25) +/* 8014D340 0014A2A0 48 1C 6E C1 */ bl __ct__9CVector2fFff +/* 8014D344 0014A2A4 C0 22 9D 28 */ lfs f1, lbl_805ABA48@sda21(r2) +/* 8014D348 0014A2A8 7C 64 1B 78 */ mr r4, r3 +/* 8014D34C 0014A2AC 7F A3 EB 78 */ mr r3, r29 +/* 8014D350 0014A2B0 48 1C 2B D5 */ bl sub_8030ff24 +/* 8014D354 0014A2B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8014D358 0014A2B8 41 82 00 28 */ beq lbl_8014D380 +/* 8014D35C 0014A2BC C0 22 9D 20 */ lfs f1, lbl_805ABA40@sda21(r2) +/* 8014D360 0014A2C0 C8 02 9D 30 */ lfd f0, lbl_805ABA50@sda21(r2) +/* 8014D364 0014A2C4 EC 3B 08 28 */ fsubs f1, f27, f1 +/* 8014D368 0014A2C8 FC 20 0A 10 */ fabs f1, f1 +/* 8014D36C 0014A2CC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8014D370 0014A2D0 7C 00 00 26 */ mfcr r0 +/* 8014D374 0014A2D4 54 00 0F FF */ rlwinm. r0, r0, 1, 0x1f, 0x1f +/* 8014D378 0014A2D8 41 82 00 08 */ beq lbl_8014D380 +/* 8014D37C 0014A2DC 3B E0 00 00 */ li r31, 0 +lbl_8014D380: +/* 8014D380 0014A2E0 9B F9 00 61 */ stb r31, 0x61(r25) +/* 8014D384 0014A2E4 7F 23 CB 78 */ mr r3, r25 +/* 8014D388 0014A2E8 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 +/* 8014D38C 0014A2EC CB E1 00 80 */ lfd f31, 0x80(r1) +/* 8014D390 0014A2F0 E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0 +/* 8014D394 0014A2F4 CB C1 00 70 */ lfd f30, 0x70(r1) +/* 8014D398 0014A2F8 E3 A1 00 68 */ psq_l f29, 104(r1), 0, qr0 +/* 8014D39C 0014A2FC CB A1 00 60 */ lfd f29, 0x60(r1) +/* 8014D3A0 0014A300 E3 81 00 58 */ psq_l f28, 88(r1), 0, qr0 +/* 8014D3A4 0014A304 CB 81 00 50 */ lfd f28, 0x50(r1) +/* 8014D3A8 0014A308 E3 61 00 48 */ psq_l f27, 72(r1), 0, qr0 +/* 8014D3AC 0014A30C CB 61 00 40 */ lfd f27, 0x40(r1) +/* 8014D3B0 0014A310 BB 21 00 24 */ lmw r25, 0x24(r1) +/* 8014D3B4 0014A314 80 01 00 94 */ lwz r0, 0x94(r1) +/* 8014D3B8 0014A318 7C 08 03 A6 */ mtlr r0 +/* 8014D3BC 0014A31C 38 21 00 90 */ addi r1, r1, 0x90 +/* 8014D3C0 0014A320 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptDockAreaChange.s b/asm/Kyoto_CWD/ScriptObjects/CScriptDockAreaChange.s new file mode 100644 index 00000000..92681ede --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptDockAreaChange.s @@ -0,0 +1,173 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__21CScriptDockAreaChangeFv +__dt__21CScriptDockAreaChangeFv: +/* 8014EF54 0014BEB4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8014EF58 0014BEB8 7C 08 02 A6 */ mflr r0 +/* 8014EF5C 0014BEBC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014EF60 0014BEC0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8014EF64 0014BEC4 7C 9F 23 78 */ mr r31, r4 +/* 8014EF68 0014BEC8 93 C1 00 08 */ stw r30, 8(r1) +/* 8014EF6C 0014BECC 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8014EF70 0014BED0 41 82 00 28 */ beq lbl_8014EF98 +/* 8014EF74 0014BED4 3C A0 80 3E */ lis r5, lbl_803E2B48@ha +/* 8014EF78 0014BED8 38 80 00 00 */ li r4, 0 +/* 8014EF7C 0014BEDC 38 05 2B 48 */ addi r0, r5, lbl_803E2B48@l +/* 8014EF80 0014BEE0 90 1E 00 00 */ stw r0, 0(r30) +/* 8014EF84 0014BEE4 4B F0 22 F1 */ bl __dt__7CEntityFv +/* 8014EF88 0014BEE8 7F E0 07 35 */ extsh. r0, r31 +/* 8014EF8C 0014BEEC 40 81 00 0C */ ble lbl_8014EF98 +/* 8014EF90 0014BEF0 7F C3 F3 78 */ mr r3, r30 +/* 8014EF94 0014BEF4 48 1C 69 9D */ bl Free__7CMemoryFPCv +lbl_8014EF98: +/* 8014EF98 0014BEF8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014EF9C 0014BEFC 7F C3 F3 78 */ mr r3, r30 +/* 8014EFA0 0014BF00 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8014EFA4 0014BF04 83 C1 00 08 */ lwz r30, 8(r1) +/* 8014EFA8 0014BF08 7C 08 03 A6 */ mtlr r0 +/* 8014EFAC 0014BF0C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8014EFB0 0014BF10 4E 80 00 20 */ blr + +.global Accept__21CScriptDockAreaChangeFR8IVisitor +Accept__21CScriptDockAreaChangeFR8IVisitor: +/* 8014EFB4 0014BF14 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8014EFB8 0014BF18 7C 08 02 A6 */ mflr r0 +/* 8014EFBC 0014BF1C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014EFC0 0014BF20 7C 60 1B 78 */ mr r0, r3 +/* 8014EFC4 0014BF24 7C 83 23 78 */ mr r3, r4 +/* 8014EFC8 0014BF28 81 84 00 00 */ lwz r12, 0(r4) +/* 8014EFCC 0014BF2C 7C 04 03 78 */ mr r4, r0 +/* 8014EFD0 0014BF30 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 8014EFD4 0014BF34 7D 89 03 A6 */ mtctr r12 +/* 8014EFD8 0014BF38 4E 80 04 21 */ bctrl +/* 8014EFDC 0014BF3C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014EFE0 0014BF40 7C 08 03 A6 */ mtlr r0 +/* 8014EFE4 0014BF44 38 21 00 10 */ addi r1, r1, 0x10 +/* 8014EFE8 0014BF48 4E 80 00 20 */ blr + +.global AcceptScriptMsg__21CScriptDockAreaChangeF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__21CScriptDockAreaChangeF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8014EFEC 0014BF4C 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 8014EFF0 0014BF50 7C 08 02 A6 */ mflr r0 +/* 8014EFF4 0014BF54 90 01 00 64 */ stw r0, 0x64(r1) +/* 8014EFF8 0014BF58 BE E1 00 3C */ stmw r23, 0x3c(r1) +/* 8014EFFC 0014BF5C 7C 9C 23 78 */ mr r28, r4 +/* 8014F000 0014BF60 2C 1C 00 13 */ cmpwi r28, 0x13 +/* 8014F004 0014BF64 7C 7B 1B 78 */ mr r27, r3 +/* 8014F008 0014BF68 7C BD 2B 78 */ mr r29, r5 +/* 8014F00C 0014BF6C 7C DE 33 78 */ mr r30, r6 +/* 8014F010 0014BF70 41 82 00 08 */ beq lbl_8014F018 +/* 8014F014 0014BF74 48 00 00 F4 */ b lbl_8014F108 +lbl_8014F018: +/* 8014F018 0014BF78 88 1B 00 30 */ lbz r0, 0x30(r27) +/* 8014F01C 0014BF7C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8014F020 0014BF80 41 82 00 E8 */ beq lbl_8014F108 +/* 8014F024 0014BF84 83 FB 00 2C */ lwz r31, 0x2c(r27) +/* 8014F028 0014BF88 48 00 00 B4 */ b lbl_8014F0DC +lbl_8014F02C: +/* 8014F02C 0014BF8C 80 1F 00 00 */ lwz r0, 0(r31) +/* 8014F030 0014BF90 2C 00 00 12 */ cmpwi r0, 0x12 +/* 8014F034 0014BF94 40 82 00 A4 */ bne lbl_8014F0D8 +/* 8014F038 0014BF98 80 1F 00 04 */ lwz r0, 4(r31) +/* 8014F03C 0014BF9C 2C 00 00 00 */ cmpwi r0, 0 +/* 8014F040 0014BFA0 41 82 00 98 */ beq lbl_8014F0D8 +/* 8014F044 0014BFA4 80 1F 00 08 */ lwz r0, 8(r31) +/* 8014F048 0014BFA8 7F C4 F3 78 */ mr r4, r30 +/* 8014F04C 0014BFAC 38 61 00 1C */ addi r3, r1, 0x1c +/* 8014F050 0014BFB0 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8014F054 0014BFB4 90 01 00 10 */ stw r0, 0x10(r1) +/* 8014F058 0014BFB8 4B EF 8F 71 */ bl GetIdListForScript__13CStateManagerCF9TEditorId +/* 8014F05C 0014BFBC 83 41 00 20 */ lwz r26, 0x20(r1) +/* 8014F060 0014BFC0 83 21 00 24 */ lwz r25, 0x24(r1) +/* 8014F064 0014BFC4 83 01 00 28 */ lwz r24, 0x28(r1) +/* 8014F068 0014BFC8 82 E1 00 1C */ lwz r23, 0x1c(r1) +/* 8014F06C 0014BFCC 48 00 00 4C */ b lbl_8014F0B8 +lbl_8014F070: +/* 8014F070 0014BFD0 A0 17 00 14 */ lhz r0, 0x14(r23) +/* 8014F074 0014BFD4 7F C3 F3 78 */ mr r3, r30 +/* 8014F078 0014BFD8 38 81 00 0C */ addi r4, r1, 0xc +/* 8014F07C 0014BFDC B0 01 00 0C */ sth r0, 0xc(r1) +/* 8014F080 0014BFE0 4B EF D4 F5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8014F084 0014BFE4 7C 64 1B 78 */ mr r4, r3 +/* 8014F088 0014BFE8 38 61 00 14 */ addi r3, r1, 0x14 +/* 8014F08C 0014BFEC 4B F5 B3 79 */ bl "__ct__25TCastToPtr<11CScriptDock>FP7CEntity" +/* 8014F090 0014BFF0 80 63 00 04 */ lwz r3, 4(r3) +/* 8014F094 0014BFF4 28 03 00 00 */ cmplwi r3, 0 +/* 8014F098 0014BFF8 41 82 00 10 */ beq lbl_8014F0A8 +/* 8014F09C 0014BFFC 80 BB 00 34 */ lwz r5, 0x34(r27) +/* 8014F0A0 0014C000 7F C4 F3 78 */ mr r4, r30 +/* 8014F0A4 0014C004 4B F7 47 F5 */ bl SetDockReference__11CScriptDockFi +lbl_8014F0A8: +/* 8014F0A8 0014C008 7F 43 D3 78 */ mr r3, r26 +/* 8014F0AC 0014C00C 7E E4 BB 78 */ mr r4, r23 +/* 8014F0B0 0014C010 48 1E D5 31 */ bl rbtree_traverse_forward__4rstlFPCvPv +/* 8014F0B4 0014C014 7C 77 1B 78 */ mr r23, r3 +lbl_8014F0B8: +/* 8014F0B8 0014C018 7C 17 C8 40 */ cmplw r23, r25 +/* 8014F0BC 0014C01C 38 00 00 00 */ li r0, 0 +/* 8014F0C0 0014C020 40 82 00 0C */ bne lbl_8014F0CC +/* 8014F0C4 0014C024 7C 1A C0 40 */ cmplw r26, r24 +/* 8014F0C8 0014C028 41 82 00 08 */ beq lbl_8014F0D0 +lbl_8014F0CC: +/* 8014F0CC 0014C02C 38 00 00 01 */ li r0, 1 +lbl_8014F0D0: +/* 8014F0D0 0014C030 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8014F0D4 0014C034 40 82 FF 9C */ bne lbl_8014F070 +lbl_8014F0D8: +/* 8014F0D8 0014C038 3B FF 00 0C */ addi r31, r31, 0xc +lbl_8014F0DC: +/* 8014F0DC 0014C03C 80 1B 00 24 */ lwz r0, 0x24(r27) +/* 8014F0E0 0014C040 80 7B 00 2C */ lwz r3, 0x2c(r27) +/* 8014F0E4 0014C044 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8014F0E8 0014C048 7C 03 02 14 */ add r0, r3, r0 +/* 8014F0EC 0014C04C 7C 1F 00 40 */ cmplw r31, r0 +/* 8014F0F0 0014C050 40 82 FF 3C */ bne lbl_8014F02C +/* 8014F0F4 0014C054 7F 63 DB 78 */ mr r3, r27 +/* 8014F0F8 0014C058 7F C5 F3 78 */ mr r5, r30 +/* 8014F0FC 0014C05C 38 80 00 12 */ li r4, 0x12 +/* 8014F100 0014C060 38 C0 FF FF */ li r6, -1 +/* 8014F104 0014C064 4B F0 1F BD */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_8014F108: +/* 8014F108 0014C068 A0 1D 00 00 */ lhz r0, 0(r29) +/* 8014F10C 0014C06C 7F 63 DB 78 */ mr r3, r27 +/* 8014F110 0014C070 7F 84 E3 78 */ mr r4, r28 +/* 8014F114 0014C074 7F C6 F3 78 */ mr r6, r30 +/* 8014F118 0014C078 B0 01 00 08 */ sth r0, 8(r1) +/* 8014F11C 0014C07C 38 A1 00 08 */ addi r5, r1, 8 +/* 8014F120 0014C080 4B F0 20 3D */ bl AcceptScriptMsg__7CEntityF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8014F124 0014C084 BA E1 00 3C */ lmw r23, 0x3c(r1) +/* 8014F128 0014C088 80 01 00 64 */ lwz r0, 0x64(r1) +/* 8014F12C 0014C08C 7C 08 03 A6 */ mtlr r0 +/* 8014F130 0014C090 38 21 00 60 */ addi r1, r1, 0x60 +/* 8014F134 0014C094 4E 80 00 20 */ blr + +.global "__ct__21CScriptDockAreaChangeF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoib" +"__ct__21CScriptDockAreaChangeF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoib": +/* 8014F138 0014C098 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8014F13C 0014C09C 7C 08 02 A6 */ mflr r0 +/* 8014F140 0014C0A0 90 01 00 24 */ stw r0, 0x24(r1) +/* 8014F144 0014C0A4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8014F148 0014C0A8 7C FF 3B 78 */ mr r31, r7 +/* 8014F14C 0014C0AC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8014F150 0014C0B0 7C 7E 1B 78 */ mr r30, r3 +/* 8014F154 0014C0B4 A0 04 00 00 */ lhz r0, 0(r4) +/* 8014F158 0014C0B8 7C A4 2B 78 */ mr r4, r5 +/* 8014F15C 0014C0BC 7C C5 33 78 */ mr r5, r6 +/* 8014F160 0014C0C0 7D 06 43 78 */ mr r6, r8 +/* 8014F164 0014C0C4 B0 01 00 08 */ sth r0, 8(r1) +/* 8014F168 0014C0C8 7C 87 23 78 */ mr r7, r4 +/* 8014F16C 0014C0CC 38 81 00 08 */ addi r4, r1, 8 +/* 8014F170 0014C0D0 4B F0 21 B5 */ bl "__ct__7CEntityF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8014F174 0014C0D4 3C 80 80 3E */ lis r4, lbl_803E2B48@ha +/* 8014F178 0014C0D8 7F C3 F3 78 */ mr r3, r30 +/* 8014F17C 0014C0DC 38 04 2B 48 */ addi r0, r4, lbl_803E2B48@l +/* 8014F180 0014C0E0 90 1E 00 00 */ stw r0, 0(r30) +/* 8014F184 0014C0E4 93 FE 00 34 */ stw r31, 0x34(r30) +/* 8014F188 0014C0E8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8014F18C 0014C0EC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8014F190 0014C0F0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8014F194 0014C0F4 7C 08 03 A6 */ mtlr r0 +/* 8014F198 0014C0F8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8014F19C 0014C0FC 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptEMPulse.s b/asm/Kyoto_CWD/ScriptObjects/CScriptEMPulse.s new file mode 100644 index 00000000..779707c5 --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptEMPulse.s @@ -0,0 +1,539 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__14CScriptEMPulseFv +__dt__14CScriptEMPulseFv: +/* 8018EBB4 0018BB14 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018EBB8 0018BB18 7C 08 02 A6 */ mflr r0 +/* 8018EBBC 0018BB1C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018EBC0 0018BB20 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8018EBC4 0018BB24 7C 9F 23 78 */ mr r31, r4 +/* 8018EBC8 0018BB28 93 C1 00 08 */ stw r30, 8(r1) +/* 8018EBCC 0018BB2C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8018EBD0 0018BB30 41 82 00 70 */ beq lbl_8018EC40 +/* 8018EBD4 0018BB34 3C 60 80 3E */ lis r3, lbl_803E4400@ha +/* 8018EBD8 0018BB38 34 1E 01 14 */ addic. r0, r30, 0x114 +/* 8018EBDC 0018BB3C 38 03 44 00 */ addi r0, r3, lbl_803E4400@l +/* 8018EBE0 0018BB40 90 1E 00 00 */ stw r0, 0(r30) +/* 8018EBE4 0018BB44 41 82 00 24 */ beq lbl_8018EC08 +/* 8018EBE8 0018BB48 80 7E 01 14 */ lwz r3, 0x114(r30) +/* 8018EBEC 0018BB4C 28 03 00 00 */ cmplwi r3, 0 +/* 8018EBF0 0018BB50 41 82 00 18 */ beq lbl_8018EC08 +/* 8018EBF4 0018BB54 81 83 00 00 */ lwz r12, 0(r3) +/* 8018EBF8 0018BB58 38 80 00 01 */ li r4, 1 +/* 8018EBFC 0018BB5C 81 8C 00 08 */ lwz r12, 8(r12) +/* 8018EC00 0018BB60 7D 89 03 A6 */ mtctr r12 +/* 8018EC04 0018BB64 4E 80 04 21 */ bctrl +lbl_8018EC08: +/* 8018EC08 0018BB68 34 1E 01 08 */ addic. r0, r30, 0x108 +/* 8018EC0C 0018BB6C 41 82 00 18 */ beq lbl_8018EC24 +/* 8018EC10 0018BB70 34 1E 01 08 */ addic. r0, r30, 0x108 +/* 8018EC14 0018BB74 41 82 00 10 */ beq lbl_8018EC24 +/* 8018EC18 0018BB78 38 7E 01 08 */ addi r3, r30, 0x108 +/* 8018EC1C 0018BB7C 38 80 00 00 */ li r4, 0 +/* 8018EC20 0018BB80 48 1B 22 21 */ bl __dt__6CTokenFv +lbl_8018EC24: +/* 8018EC24 0018BB84 7F C3 F3 78 */ mr r3, r30 +/* 8018EC28 0018BB88 38 80 00 00 */ li r4, 0 +/* 8018EC2C 0018BB8C 4B EC 6A C5 */ bl __dt__6CActorFv +/* 8018EC30 0018BB90 7F E0 07 35 */ extsh. r0, r31 +/* 8018EC34 0018BB94 40 81 00 0C */ ble lbl_8018EC40 +/* 8018EC38 0018BB98 7F C3 F3 78 */ mr r3, r30 +/* 8018EC3C 0018BB9C 48 18 6C F5 */ bl Free__7CMemoryFPCv +lbl_8018EC40: +/* 8018EC40 0018BBA0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018EC44 0018BBA4 7F C3 F3 78 */ mr r3, r30 +/* 8018EC48 0018BBA8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8018EC4C 0018BBAC 83 C1 00 08 */ lwz r30, 8(r1) +/* 8018EC50 0018BBB0 7C 08 03 A6 */ mtlr r0 +/* 8018EC54 0018BBB4 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018EC58 0018BBB8 4E 80 00 20 */ blr + +.global AddToRenderer__14CScriptEMPulseCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__14CScriptEMPulseCFRC14CFrustumPlanesRC13CStateManager: +/* 8018EC5C 0018BBBC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018EC60 0018BBC0 7C 08 02 A6 */ mflr r0 +/* 8018EC64 0018BBC4 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018EC68 0018BBC8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8018EC6C 0018BBCC 7C 7F 1B 78 */ mr r31, r3 +/* 8018EC70 0018BBD0 4B EC 5E C9 */ bl AddToRenderer__6CActorCFRC14CFrustumPlanesRC13CStateManager +/* 8018EC74 0018BBD4 88 1F 00 30 */ lbz r0, 0x30(r31) +/* 8018EC78 0018BBD8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8018EC7C 0018BBDC 41 82 00 1C */ beq lbl_8018EC98 +/* 8018EC80 0018BBE0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 8018EC84 0018BBE4 80 9F 01 14 */ lwz r4, 0x114(r31) +/* 8018EC88 0018BBE8 81 83 00 00 */ lwz r12, 0(r3) +/* 8018EC8C 0018BBEC 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8018EC90 0018BBF0 7D 89 03 A6 */ mtctr r12 +/* 8018EC94 0018BBF4 4E 80 04 21 */ bctrl +lbl_8018EC98: +/* 8018EC98 0018BBF8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018EC9C 0018BBFC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8018ECA0 0018BC00 7C 08 03 A6 */ mtlr r0 +/* 8018ECA4 0018BC04 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018ECA8 0018BC08 4E 80 00 20 */ blr + +.global Touch__14CScriptEMPulseFR6CActorR13CStateManager +Touch__14CScriptEMPulseFR6CActorR13CStateManager: +/* 8018ECAC 0018BC0C 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8018ECB0 0018BC10 7C 08 02 A6 */ mflr r0 +/* 8018ECB4 0018BC14 90 01 00 74 */ stw r0, 0x74(r1) +/* 8018ECB8 0018BC18 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 8018ECBC 0018BC1C F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 8018ECC0 0018BC20 DB C1 00 50 */ stfd f30, 0x50(r1) +/* 8018ECC4 0018BC24 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 +/* 8018ECC8 0018BC28 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 8018ECCC 0018BC2C 93 C1 00 48 */ stw r30, 0x48(r1) +/* 8018ECD0 0018BC30 93 A1 00 44 */ stw r29, 0x44(r1) +/* 8018ECD4 0018BC34 88 03 00 30 */ lbz r0, 0x30(r3) +/* 8018ECD8 0018BC38 7C 7D 1B 78 */ mr r29, r3 +/* 8018ECDC 0018BC3C 7C BE 2B 78 */ mr r30, r5 +/* 8018ECE0 0018BC40 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8018ECE4 0018BC44 41 82 01 00 */ beq lbl_8018EDE4 +/* 8018ECE8 0018BC48 38 61 00 18 */ addi r3, r1, 0x18 +/* 8018ECEC 0018BC4C 4B F1 D7 15 */ bl "__ct__20TCastToPtr<7CPlayer>FR7CEntity" +/* 8018ECF0 0018BC50 83 E3 00 04 */ lwz r31, 4(r3) +/* 8018ECF4 0018BC54 28 1F 00 00 */ cmplwi r31, 0 +/* 8018ECF8 0018BC58 41 82 00 EC */ beq lbl_8018EDE4 +/* 8018ECFC 0018BC5C C0 BD 00 60 */ lfs f5, 0x60(r29) +/* 8018ED00 0018BC60 38 61 00 2C */ addi r3, r1, 0x2c +/* 8018ED04 0018BC64 C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 8018ED08 0018BC68 C0 9D 00 50 */ lfs f4, 0x50(r29) +/* 8018ED0C 0018BC6C C0 5F 00 50 */ lfs f2, 0x50(r31) +/* 8018ED10 0018BC70 EC 25 00 28 */ fsubs f1, f5, f0 +/* 8018ED14 0018BC74 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 8018ED18 0018BC78 C0 7F 00 40 */ lfs f3, 0x40(r31) +/* 8018ED1C 0018BC7C EC 44 10 28 */ fsubs f2, f4, f2 +/* 8018ED20 0018BC80 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 8018ED24 0018BC84 EC 00 18 28 */ fsubs f0, f0, f3 +/* 8018ED28 0018BC88 D0 81 00 24 */ stfs f4, 0x24(r1) +/* 8018ED2C 0018BC8C D0 A1 00 28 */ stfs f5, 0x28(r1) +/* 8018ED30 0018BC90 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8018ED34 0018BC94 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 8018ED38 0018BC98 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 8018ED3C 0018BC9C 48 18 5B 7D */ bl Magnitude__9CVector3fCFv +/* 8018ED40 0018BCA0 C0 1D 00 EC */ lfs f0, 0xec(r29) +/* 8018ED44 0018BCA4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018ED48 0018BCA8 40 80 00 9C */ bge lbl_8018EDE4 +/* 8018ED4C 0018BCAC EC 01 00 24 */ fdivs f0, f1, f0 +/* 8018ED50 0018BCB0 C0 62 A4 90 */ lfs f3, lbl_805AC1B0@sda21(r2) +/* 8018ED54 0018BCB4 C0 9D 00 F8 */ lfs f4, 0xf8(r29) +/* 8018ED58 0018BCB8 C0 5D 00 FC */ lfs f2, 0xfc(r29) +/* 8018ED5C 0018BCBC C0 BD 01 00 */ lfs f5, 0x100(r29) +/* 8018ED60 0018BCC0 C0 3D 01 04 */ lfs f1, 0x104(r29) +/* 8018ED64 0018BCC4 EC 63 00 28 */ fsubs f3, f3, f0 +/* 8018ED68 0018BCC8 C0 1F 07 40 */ lfs f0, 0x740(r31) +/* 8018ED6C 0018BCCC EC 42 20 28 */ fsubs f2, f2, f4 +/* 8018ED70 0018BCD0 EC 21 28 28 */ fsubs f1, f1, f5 +/* 8018ED74 0018BCD4 EF E3 20 BA */ fmadds f31, f3, f2, f4 +/* 8018ED78 0018BCD8 EF C3 28 7A */ fmadds f30, f3, f1, f5 +/* 8018ED7C 0018BCDC FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 8018ED80 0018BCE0 40 81 00 3C */ ble lbl_8018EDBC +/* 8018ED84 0018BCE4 FC 20 F8 90 */ fmr f1, f31 +/* 8018ED88 0018BCE8 C0 42 80 F8 */ lfs f2, lbl_805A9E18@sda21(r2) +/* 8018ED8C 0018BCEC C0 62 80 FC */ lfs f3, lbl_805A9E1C@sda21(r2) +/* 8018ED90 0018BCF0 7F E3 FB 78 */ mr r3, r31 +/* 8018ED94 0018BCF4 4B E8 42 D9 */ bl SetHudDisable__7CPlayerFfff +/* 8018ED98 0018BCF8 80 BE 08 4C */ lwz r5, 0x84c(r30) +/* 8018ED9C 0018BCFC 7F E3 FB 78 */ mr r3, r31 +/* 8018EDA0 0018BD00 7F C6 F3 78 */ mr r6, r30 +/* 8018EDA4 0018BD04 38 81 00 14 */ addi r4, r1, 0x14 +/* 8018EDA8 0018BD08 A0 05 03 10 */ lhz r0, 0x310(r5) +/* 8018EDAC 0018BD0C 38 A0 00 08 */ li r5, 8 +/* 8018EDB0 0018BD10 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8018EDB4 0018BD14 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8018EDB8 0018BD18 4B FE C4 9D */ bl SetOrbitRequestForTarget__7CPlayerF9TUniqueId19EPlayerOrbitRequestR13CStateManager +lbl_8018EDBC: +/* 8018EDBC 0018BD1C A0 1D 00 08 */ lhz r0, 8(r29) +/* 8018EDC0 0018BD20 FC 20 F0 90 */ fmr f1, f30 +/* 8018EDC4 0018BD24 FC 40 F8 90 */ fmr f2, f31 +/* 8018EDC8 0018BD28 38 81 00 0C */ addi r4, r1, 0xc +/* 8018EDCC 0018BD2C B0 01 00 0C */ sth r0, 0xc(r1) +/* 8018EDD0 0018BD30 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 8018EDD4 0018BD34 B0 01 00 08 */ sth r0, 8(r1) +/* 8018EDD8 0018BD38 80 63 00 00 */ lwz r3, 0(r3) +/* 8018EDDC 0018BD3C 38 63 01 88 */ addi r3, r3, 0x188 +/* 8018EDE0 0018BD40 48 03 1D 59 */ bl AddSource__19CStaticInterferenceF9TUniqueId +lbl_8018EDE4: +/* 8018EDE4 0018BD44 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 8018EDE8 0018BD48 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 8018EDEC 0018BD4C E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 +/* 8018EDF0 0018BD50 CB C1 00 50 */ lfd f30, 0x50(r1) +/* 8018EDF4 0018BD54 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 8018EDF8 0018BD58 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 8018EDFC 0018BD5C 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8018EE00 0018BD60 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 8018EE04 0018BD64 7C 08 03 A6 */ mtlr r0 +/* 8018EE08 0018BD68 38 21 00 70 */ addi r1, r1, 0x70 +/* 8018EE0C 0018BD6C 4E 80 00 20 */ blr + +.global CalculateRenderBounds__14CScriptEMPulseFv +CalculateRenderBounds__14CScriptEMPulseFv: +/* 8018EE10 0018BD70 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8018EE14 0018BD74 7C 08 02 A6 */ mflr r0 +/* 8018EE18 0018BD78 90 01 00 34 */ stw r0, 0x34(r1) +/* 8018EE1C 0018BD7C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8018EE20 0018BD80 7C 7F 1B 78 */ mr r31, r3 +/* 8018EE24 0018BD84 38 61 00 08 */ addi r3, r1, 8 +/* 8018EE28 0018BD88 7F E4 FB 78 */ mr r4, r31 +/* 8018EE2C 0018BD8C 48 00 00 B9 */ bl CalculateBoundingBox__14CScriptEMPulseCFv +/* 8018EE30 0018BD90 80 61 00 08 */ lwz r3, 8(r1) +/* 8018EE34 0018BD94 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8018EE38 0018BD98 90 7F 00 9C */ stw r3, 0x9c(r31) +/* 8018EE3C 0018BD9C 90 1F 00 A0 */ stw r0, 0xa0(r31) +/* 8018EE40 0018BDA0 80 01 00 10 */ lwz r0, 0x10(r1) +/* 8018EE44 0018BDA4 90 1F 00 A4 */ stw r0, 0xa4(r31) +/* 8018EE48 0018BDA8 80 61 00 14 */ lwz r3, 0x14(r1) +/* 8018EE4C 0018BDAC 80 01 00 18 */ lwz r0, 0x18(r1) +/* 8018EE50 0018BDB0 90 7F 00 A8 */ stw r3, 0xa8(r31) +/* 8018EE54 0018BDB4 90 1F 00 AC */ stw r0, 0xac(r31) +/* 8018EE58 0018BDB8 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 8018EE5C 0018BDBC 90 1F 00 B0 */ stw r0, 0xb0(r31) +/* 8018EE60 0018BDC0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8018EE64 0018BDC4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8018EE68 0018BDC8 7C 08 03 A6 */ mtlr r0 +/* 8018EE6C 0018BDCC 38 21 00 30 */ addi r1, r1, 0x30 +/* 8018EE70 0018BDD0 4E 80 00 20 */ blr + +.global GetTouchBounds__14CScriptEMPulseCFv +GetTouchBounds__14CScriptEMPulseCFv: +/* 8018EE74 0018BDD4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8018EE78 0018BDD8 7C 08 02 A6 */ mflr r0 +/* 8018EE7C 0018BDDC 90 01 00 34 */ stw r0, 0x34(r1) +/* 8018EE80 0018BDE0 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8018EE84 0018BDE4 7C 7F 1B 78 */ mr r31, r3 +/* 8018EE88 0018BDE8 38 61 00 08 */ addi r3, r1, 8 +/* 8018EE8C 0018BDEC 48 00 00 59 */ bl CalculateBoundingBox__14CScriptEMPulseCFv +/* 8018EE90 0018BDF0 38 00 00 01 */ li r0, 1 +/* 8018EE94 0018BDF4 28 1F 00 00 */ cmplwi r31, 0 +/* 8018EE98 0018BDF8 98 1F 00 18 */ stb r0, 0x18(r31) +/* 8018EE9C 0018BDFC 41 82 00 34 */ beq lbl_8018EED0 +/* 8018EEA0 0018BE00 C0 01 00 08 */ lfs f0, 8(r1) +/* 8018EEA4 0018BE04 D0 1F 00 00 */ stfs f0, 0(r31) +/* 8018EEA8 0018BE08 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 8018EEAC 0018BE0C D0 1F 00 04 */ stfs f0, 4(r31) +/* 8018EEB0 0018BE10 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 8018EEB4 0018BE14 D0 1F 00 08 */ stfs f0, 8(r31) +/* 8018EEB8 0018BE18 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 8018EEBC 0018BE1C D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 8018EEC0 0018BE20 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 8018EEC4 0018BE24 D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 8018EEC8 0018BE28 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 8018EECC 0018BE2C D0 1F 00 14 */ stfs f0, 0x14(r31) +lbl_8018EED0: +/* 8018EED0 0018BE30 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8018EED4 0018BE34 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8018EED8 0018BE38 7C 08 03 A6 */ mtlr r0 +/* 8018EEDC 0018BE3C 38 21 00 30 */ addi r1, r1, 0x30 +/* 8018EEE0 0018BE40 4E 80 00 20 */ blr + +.global CalculateBoundingBox__14CScriptEMPulseCFv +CalculateBoundingBox__14CScriptEMPulseCFv: +/* 8018EEE4 0018BE44 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8018EEE8 0018BE48 7C 08 02 A6 */ mflr r0 +/* 8018EEEC 0018BE4C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8018EEF0 0018BE50 38 A1 00 08 */ addi r5, r1, 8 +/* 8018EEF4 0018BE54 C0 E4 00 F0 */ lfs f7, 0xf0(r4) +/* 8018EEF8 0018BE58 C0 C4 00 60 */ lfs f6, 0x60(r4) +/* 8018EEFC 0018BE5C C0 24 00 40 */ lfs f1, 0x40(r4) +/* 8018EF00 0018BE60 C0 A4 00 50 */ lfs f5, 0x50(r4) +/* 8018EF04 0018BE64 EC 06 38 2A */ fadds f0, f6, f7 +/* 8018EF08 0018BE68 EC 81 38 2A */ fadds f4, f1, f7 +/* 8018EF0C 0018BE6C 38 81 00 14 */ addi r4, r1, 0x14 +/* 8018EF10 0018BE70 EC 41 38 28 */ fsubs f2, f1, f7 +/* 8018EF14 0018BE74 EC 65 38 2A */ fadds f3, f5, f7 +/* 8018EF18 0018BE78 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8018EF1C 0018BE7C EC 25 38 28 */ fsubs f1, f5, f7 +/* 8018EF20 0018BE80 EC 06 38 28 */ fsubs f0, f6, f7 +/* 8018EF24 0018BE84 D0 81 00 08 */ stfs f4, 8(r1) +/* 8018EF28 0018BE88 D0 61 00 0C */ stfs f3, 0xc(r1) +/* 8018EF2C 0018BE8C D0 41 00 14 */ stfs f2, 0x14(r1) +/* 8018EF30 0018BE90 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8018EF34 0018BE94 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8018EF38 0018BE98 48 1A 95 D1 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8018EF3C 0018BE9C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8018EF40 0018BEA0 7C 08 03 A6 */ mtlr r0 +/* 8018EF44 0018BEA4 38 21 00 20 */ addi r1, r1, 0x20 +/* 8018EF48 0018BEA8 4E 80 00 20 */ blr + +.global Think__14CScriptEMPulseFfR13CStateManager +Think__14CScriptEMPulseFfR13CStateManager: +/* 8018EF4C 0018BEAC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8018EF50 0018BEB0 7C 08 02 A6 */ mflr r0 +/* 8018EF54 0018BEB4 90 01 00 34 */ stw r0, 0x34(r1) +/* 8018EF58 0018BEB8 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 8018EF5C 0018BEBC F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 8018EF60 0018BEC0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8018EF64 0018BEC4 88 03 00 30 */ lbz r0, 0x30(r3) +/* 8018EF68 0018BEC8 FF E0 08 90 */ fmr f31, f1 +/* 8018EF6C 0018BECC 7C 7F 1B 78 */ mr r31, r3 +/* 8018EF70 0018BED0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8018EF74 0018BED4 41 82 00 68 */ beq lbl_8018EFDC +/* 8018EF78 0018BED8 C0 5F 00 EC */ lfs f2, 0xec(r31) +/* 8018EF7C 0018BEDC C0 1F 00 F4 */ lfs f0, 0xf4(r31) +/* 8018EF80 0018BEE0 C0 3F 00 E8 */ lfs f1, 0xe8(r31) +/* 8018EF84 0018BEE4 EC 42 00 28 */ fsubs f2, f2, f0 +/* 8018EF88 0018BEE8 C0 1F 00 F0 */ lfs f0, 0xf0(r31) +/* 8018EF8C 0018BEEC EC 22 08 24 */ fdivs f1, f2, f1 +/* 8018EF90 0018BEF0 EC 01 07 FA */ fmadds f0, f1, f31, f0 +/* 8018EF94 0018BEF4 D0 1F 00 F0 */ stfs f0, 0xf0(r31) +/* 8018EF98 0018BEF8 C0 3F 00 F0 */ lfs f1, 0xf0(r31) +/* 8018EF9C 0018BEFC C0 1F 00 EC */ lfs f0, 0xec(r31) +/* 8018EFA0 0018BF00 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018EFA4 0018BF04 4C 41 13 82 */ cror 2, 1, 2 +/* 8018EFA8 0018BF08 40 82 00 1C */ bne lbl_8018EFC4 +/* 8018EFAC 0018BF0C A0 1F 00 08 */ lhz r0, 8(r31) +/* 8018EFB0 0018BF10 7C 83 23 78 */ mr r3, r4 +/* 8018EFB4 0018BF14 38 81 00 0C */ addi r4, r1, 0xc +/* 8018EFB8 0018BF18 B0 01 00 08 */ sth r0, 8(r1) +/* 8018EFBC 0018BF1C B0 01 00 0C */ sth r0, 0xc(r1) +/* 8018EFC0 0018BF20 4B EB D2 AD */ bl FreeScriptObject__13CStateManagerF9TUniqueId +lbl_8018EFC4: +/* 8018EFC4 0018BF24 80 7F 01 14 */ lwz r3, 0x114(r31) +/* 8018EFC8 0018BF28 FC 20 F8 90 */ fmr f1, f31 +/* 8018EFCC 0018BF2C 81 83 00 00 */ lwz r12, 0(r3) +/* 8018EFD0 0018BF30 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8018EFD4 0018BF34 7D 89 03 A6 */ mtctr r12 +/* 8018EFD8 0018BF38 4E 80 04 21 */ bctrl +lbl_8018EFDC: +/* 8018EFDC 0018BF3C E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 8018EFE0 0018BF40 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8018EFE4 0018BF44 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 8018EFE8 0018BF48 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8018EFEC 0018BF4C 7C 08 03 A6 */ mtlr r0 +/* 8018EFF0 0018BF50 38 21 00 30 */ addi r1, r1, 0x30 +/* 8018EFF4 0018BF54 4E 80 00 20 */ blr + +.global Accept__14CScriptEMPulseFR8IVisitor +Accept__14CScriptEMPulseFR8IVisitor: +/* 8018EFF8 0018BF58 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018EFFC 0018BF5C 7C 08 02 A6 */ mflr r0 +/* 8018F000 0018BF60 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018F004 0018BF64 7C 60 1B 78 */ mr r0, r3 +/* 8018F008 0018BF68 7C 83 23 78 */ mr r3, r4 +/* 8018F00C 0018BF6C 81 84 00 00 */ lwz r12, 0(r4) +/* 8018F010 0018BF70 7C 04 03 78 */ mr r4, r0 +/* 8018F014 0018BF74 81 8C 00 08 */ lwz r12, 8(r12) +/* 8018F018 0018BF78 7D 89 03 A6 */ mtctr r12 +/* 8018F01C 0018BF7C 4E 80 04 21 */ bctrl +/* 8018F020 0018BF80 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018F024 0018BF84 7C 08 03 A6 */ mtlr r0 +/* 8018F028 0018BF88 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018F02C 0018BF8C 4E 80 00 20 */ blr + +.global AcceptScriptMsg__14CScriptEMPulseF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__14CScriptEMPulseF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8018F030 0018BF90 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8018F034 0018BF94 7C 08 02 A6 */ mflr r0 +/* 8018F038 0018BF98 90 01 00 74 */ stw r0, 0x74(r1) +/* 8018F03C 0018BF9C 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 8018F040 0018BFA0 7C 9F 23 78 */ mr r31, r4 +/* 8018F044 0018BFA4 93 C1 00 68 */ stw r30, 0x68(r1) +/* 8018F048 0018BFA8 7C DE 33 78 */ mr r30, r6 +/* 8018F04C 0018BFAC 93 A1 00 64 */ stw r29, 0x64(r1) +/* 8018F050 0018BFB0 7C 7D 1B 78 */ mr r29, r3 +/* 8018F054 0018BFB4 93 81 00 60 */ stw r28, 0x60(r1) +/* 8018F058 0018BFB8 A0 05 00 00 */ lhz r0, 0(r5) +/* 8018F05C 0018BFBC 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8018F060 0018BFC0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8018F064 0018BFC4 4B EC 45 B1 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8018F068 0018BFC8 2C 1F 00 01 */ cmpwi r31, 1 +/* 8018F06C 0018BFCC 41 82 00 08 */ beq lbl_8018F074 +/* 8018F070 0018BFD0 48 00 01 1C */ b lbl_8018F18C +lbl_8018F074: +/* 8018F074 0018BFD4 3C 60 80 3D */ lis r3, lbl_803D0940@ha +/* 8018F078 0018BFD8 3B 80 00 00 */ li r28, 0 +/* 8018F07C 0018BFDC 38 83 09 40 */ addi r4, r3, lbl_803D0940@l +/* 8018F080 0018BFE0 38 A0 00 00 */ li r5, 0 +/* 8018F084 0018BFE4 38 60 03 40 */ li r3, 0x340 +/* 8018F088 0018BFE8 48 18 67 E5 */ bl __nw__FUlPCcPCc +/* 8018F08C 0018BFEC 7C 7F 1B 79 */ or. r31, r3, r3 +/* 8018F090 0018BFF0 41 82 00 2C */ beq lbl_8018F0BC +/* 8018F094 0018BFF4 38 61 00 14 */ addi r3, r1, 0x14 +/* 8018F098 0018BFF8 38 9D 01 08 */ addi r4, r29, 0x108 +/* 8018F09C 0018BFFC 48 1B 1E 0D */ bl __ct__6CTokenFRC6CToken +/* 8018F0A0 0018C000 7F E3 FB 78 */ mr r3, r31 +/* 8018F0A4 0018C004 38 81 00 14 */ addi r4, r1, 0x14 +/* 8018F0A8 0018C008 3B 80 00 01 */ li r28, 1 +/* 8018F0AC 0018C00C 38 A0 00 00 */ li r5, 0 +/* 8018F0B0 0018C010 38 C0 00 01 */ li r6, 1 +/* 8018F0B4 0018C014 48 19 03 2D */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 8018F0B8 0018C018 7C 7F 1B 78 */ mr r31, r3 +lbl_8018F0BC: +/* 8018F0BC 0018C01C 80 7D 01 14 */ lwz r3, 0x114(r29) +/* 8018F0C0 0018C020 28 03 00 00 */ cmplwi r3, 0 +/* 8018F0C4 0018C024 41 82 00 18 */ beq lbl_8018F0DC +/* 8018F0C8 0018C028 81 83 00 00 */ lwz r12, 0(r3) +/* 8018F0CC 0018C02C 38 80 00 01 */ li r4, 1 +/* 8018F0D0 0018C030 81 8C 00 08 */ lwz r12, 8(r12) +/* 8018F0D4 0018C034 7D 89 03 A6 */ mtctr r12 +/* 8018F0D8 0018C038 4E 80 04 21 */ bctrl +lbl_8018F0DC: +/* 8018F0DC 0018C03C 7F 80 07 75 */ extsb. r0, r28 +/* 8018F0E0 0018C040 93 FD 01 14 */ stw r31, 0x114(r29) +/* 8018F0E4 0018C044 41 82 00 10 */ beq lbl_8018F0F4 +/* 8018F0E8 0018C048 38 61 00 14 */ addi r3, r1, 0x14 +/* 8018F0EC 0018C04C 38 80 00 00 */ li r4, 0 +/* 8018F0F0 0018C050 48 1B 1D 51 */ bl __dt__6CTokenFv +lbl_8018F0F4: +/* 8018F0F4 0018C054 83 FD 01 14 */ lwz r31, 0x114(r29) +/* 8018F0F8 0018C058 38 61 00 28 */ addi r3, r1, 0x28 +/* 8018F0FC 0018C05C 38 9D 00 34 */ addi r4, r29, 0x34 +/* 8018F100 0018C060 48 18 3B 41 */ bl GetRotation__12CTransform4fCFv +/* 8018F104 0018C064 7F E3 FB 78 */ mr r3, r31 +/* 8018F108 0018C068 38 81 00 28 */ addi r4, r1, 0x28 +/* 8018F10C 0018C06C 81 9F 00 00 */ lwz r12, 0(r31) +/* 8018F110 0018C070 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 8018F114 0018C074 7D 89 03 A6 */ mtctr r12 +/* 8018F118 0018C078 4E 80 04 21 */ bctrl +/* 8018F11C 0018C07C C0 5D 00 60 */ lfs f2, 0x60(r29) +/* 8018F120 0018C080 38 81 00 1C */ addi r4, r1, 0x1c +/* 8018F124 0018C084 C0 3D 00 50 */ lfs f1, 0x50(r29) +/* 8018F128 0018C088 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 8018F12C 0018C08C D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8018F130 0018C090 D0 21 00 20 */ stfs f1, 0x20(r1) +/* 8018F134 0018C094 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 8018F138 0018C098 80 7D 01 14 */ lwz r3, 0x114(r29) +/* 8018F13C 0018C09C 81 83 00 00 */ lwz r12, 0(r3) +/* 8018F140 0018C0A0 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 8018F144 0018C0A4 7D 89 03 A6 */ mtctr r12 +/* 8018F148 0018C0A8 4E 80 04 21 */ bctrl +/* 8018F14C 0018C0AC 80 7D 01 14 */ lwz r3, 0x114(r29) +/* 8018F150 0018C0B0 38 80 00 01 */ li r4, 1 +/* 8018F154 0018C0B4 81 83 00 00 */ lwz r12, 0(r3) +/* 8018F158 0018C0B8 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8018F15C 0018C0BC 7D 89 03 A6 */ mtctr r12 +/* 8018F160 0018C0C0 4E 80 04 21 */ bctrl +/* 8018F164 0018C0C4 A0 1D 00 08 */ lhz r0, 8(r29) +/* 8018F168 0018C0C8 38 81 00 0C */ addi r4, r1, 0xc +/* 8018F16C 0018C0CC B0 01 00 0C */ sth r0, 0xc(r1) +/* 8018F170 0018C0D0 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 8018F174 0018C0D4 B0 01 00 08 */ sth r0, 8(r1) +/* 8018F178 0018C0D8 80 63 00 00 */ lwz r3, 0(r3) +/* 8018F17C 0018C0DC C0 3D 01 00 */ lfs f1, 0x100(r29) +/* 8018F180 0018C0E0 C0 5D 00 F8 */ lfs f2, 0xf8(r29) +/* 8018F184 0018C0E4 38 63 01 88 */ addi r3, r3, 0x188 +/* 8018F188 0018C0E8 48 03 19 B1 */ bl AddSource__19CStaticInterferenceF9TUniqueId +lbl_8018F18C: +/* 8018F18C 0018C0EC 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8018F190 0018C0F0 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 8018F194 0018C0F4 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 8018F198 0018C0F8 83 A1 00 64 */ lwz r29, 0x64(r1) +/* 8018F19C 0018C0FC 83 81 00 60 */ lwz r28, 0x60(r1) +/* 8018F1A0 0018C100 7C 08 03 A6 */ mtlr r0 +/* 8018F1A4 0018C104 38 21 00 70 */ addi r1, r1, 0x70 +/* 8018F1A8 0018C108 4E 80 00 20 */ blr + +.global "__ct__14CScriptEMPulseF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fbfffffUi" +"__ct__14CScriptEMPulseF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fbfffffUi": +/* 8018F1AC 0018C10C 94 21 FE 50 */ stwu r1, -0x1b0(r1) +/* 8018F1B0 0018C110 7C 08 02 A6 */ mflr r0 +/* 8018F1B4 0018C114 90 01 01 B4 */ stw r0, 0x1b4(r1) +/* 8018F1B8 0018C118 39 61 01 B0 */ addi r11, r1, 0x1b0 +/* 8018F1BC 0018C11C 48 1F A8 21 */ bl sub_803899dc +/* 8018F1C0 0018C120 BF 21 01 5C */ stmw r25, 0x15c(r1) +/* 8018F1C4 0018C124 FF 20 08 90 */ fmr f25, f1 +/* 8018F1C8 0018C128 7C 7F 1B 78 */ mr r31, r3 +/* 8018F1CC 0018C12C FF 40 10 90 */ fmr f26, f2 +/* 8018F1D0 0018C130 7C 99 23 78 */ mr r25, r4 +/* 8018F1D4 0018C134 FF 60 18 90 */ fmr f27, f3 +/* 8018F1D8 0018C138 7C BA 2B 78 */ mr r26, r5 +/* 8018F1DC 0018C13C FF 80 20 90 */ fmr f28, f4 +/* 8018F1E0 0018C140 7C DB 33 78 */ mr r27, r6 +/* 8018F1E4 0018C144 FF A0 28 90 */ fmr f29, f5 +/* 8018F1E8 0018C148 7C FC 3B 78 */ mr r28, r7 +/* 8018F1EC 0018C14C FF C0 30 90 */ fmr f30, f6 +/* 8018F1F0 0018C150 7D 1D 43 78 */ mr r29, r8 +/* 8018F1F4 0018C154 FF E0 38 90 */ fmr f31, f7 +/* 8018F1F8 0018C158 7D 3E 4B 78 */ mr r30, r9 +/* 8018F1FC 0018C15C 38 61 01 00 */ addi r3, r1, 0x100 +/* 8018F200 0018C160 4B EA B5 A5 */ bl CModelDataNull__10CModelDataFv +/* 8018F204 0018C164 38 61 00 98 */ addi r3, r1, 0x98 +/* 8018F208 0018C168 4B E8 BC 31 */ bl None__16CActorParametersFv +/* 8018F20C 0018C16C 38 61 00 30 */ addi r3, r1, 0x30 +/* 8018F210 0018C170 38 81 00 98 */ addi r4, r1, 0x98 +/* 8018F214 0018C174 38 A0 00 01 */ li r5, 1 +/* 8018F218 0018C178 4B F7 75 F5 */ bl sub_8010680c +/* 8018F21C 0018C17C A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 8018F220 0018C180 38 00 00 00 */ li r0, 0 +/* 8018F224 0018C184 80 AD 8E F0 */ lwz r5, lbl_805A7AB0@sda21(r13) +/* 8018F228 0018C188 38 60 00 00 */ li r3, 0 +/* 8018F22C 0018C18C B0 81 00 10 */ sth r4, 0x10(r1) +/* 8018F230 0018C190 38 80 00 01 */ li r4, 1 +/* 8018F234 0018C194 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8018F238 0018C198 90 01 00 28 */ stw r0, 0x28(r1) +/* 8018F23C 0018C19C 48 1F AC B9 */ bl __shl2i +/* 8018F240 0018C1A0 80 A1 00 28 */ lwz r5, 0x28(r1) +/* 8018F244 0018C1A4 39 61 00 30 */ addi r11, r1, 0x30 +/* 8018F248 0018C1A8 80 C1 00 2C */ lwz r6, 0x2c(r1) +/* 8018F24C 0018C1AC 38 01 00 10 */ addi r0, r1, 0x10 +/* 8018F250 0018C1B0 7C A3 1B 78 */ or r3, r5, r3 +/* 8018F254 0018C1B4 A1 39 00 00 */ lhz r9, 0(r25) +/* 8018F258 0018C1B8 7C C4 23 78 */ or r4, r6, r4 +/* 8018F25C 0018C1BC 90 61 00 28 */ stw r3, 0x28(r1) +/* 8018F260 0018C1C0 7F E3 FB 78 */ mr r3, r31 +/* 8018F264 0018C1C4 7F A5 EB 78 */ mr r5, r29 +/* 8018F268 0018C1C8 90 81 00 2C */ stw r4, 0x2c(r1) +/* 8018F26C 0018C1CC 7F 46 D3 78 */ mr r6, r26 +/* 8018F270 0018C1D0 7F 67 DB 78 */ mr r7, r27 +/* 8018F274 0018C1D4 7F 88 E3 78 */ mr r8, r28 +/* 8018F278 0018C1D8 B1 21 00 14 */ sth r9, 0x14(r1) +/* 8018F27C 0018C1DC 38 81 00 14 */ addi r4, r1, 0x14 +/* 8018F280 0018C1E0 39 21 01 00 */ addi r9, r1, 0x100 +/* 8018F284 0018C1E4 39 41 00 28 */ addi r10, r1, 0x28 +/* 8018F288 0018C1E8 91 61 00 08 */ stw r11, 8(r1) +/* 8018F28C 0018C1EC 90 01 00 0C */ stw r0, 0xc(r1) +/* 8018F290 0018C1F0 4B EC 65 91 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" +/* 8018F294 0018C1F4 38 61 00 30 */ addi r3, r1, 0x30 +/* 8018F298 0018C1F8 38 80 FF FF */ li r4, -1 +/* 8018F29C 0018C1FC 4B F7 73 6D */ bl __dt__16CActorParametersFv +/* 8018F2A0 0018C200 38 61 00 98 */ addi r3, r1, 0x98 +/* 8018F2A4 0018C204 38 80 FF FF */ li r4, -1 +/* 8018F2A8 0018C208 4B F7 73 61 */ bl __dt__16CActorParametersFv +/* 8018F2AC 0018C20C 38 61 01 00 */ addi r3, r1, 0x100 +/* 8018F2B0 0018C210 38 80 FF FF */ li r4, -1 +/* 8018F2B4 0018C214 4B F8 77 99 */ bl __dt__10CModelDataFv +/* 8018F2B8 0018C218 3C 60 80 3E */ lis r3, lbl_803E4400@ha +/* 8018F2BC 0018C21C 3C 80 50 41 */ lis r4, 0x50415254@ha +/* 8018F2C0 0018C220 38 03 44 00 */ addi r0, r3, lbl_803E4400@l +/* 8018F2C4 0018C224 38 61 00 18 */ addi r3, r1, 0x18 +/* 8018F2C8 0018C228 90 1F 00 00 */ stw r0, 0(r31) +/* 8018F2CC 0018C22C 38 04 52 54 */ addi r0, r4, 0x50415254@l +/* 8018F2D0 0018C230 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8018F2D4 0018C234 D3 7F 00 E8 */ stfs f27, 0xe8(r31) +/* 8018F2D8 0018C238 D3 5F 00 EC */ stfs f26, 0xec(r31) +/* 8018F2DC 0018C23C D3 3F 00 F0 */ stfs f25, 0xf0(r31) +/* 8018F2E0 0018C240 D3 3F 00 F4 */ stfs f25, 0xf4(r31) +/* 8018F2E4 0018C244 D3 9F 00 F8 */ stfs f28, 0xf8(r31) +/* 8018F2E8 0018C248 D3 BF 00 FC */ stfs f29, 0xfc(r31) +/* 8018F2EC 0018C24C D3 DF 01 00 */ stfs f30, 0x100(r31) +/* 8018F2F0 0018C250 D3 FF 01 04 */ stfs f31, 0x104(r31) +/* 8018F2F4 0018C254 90 01 00 20 */ stw r0, 0x20(r1) +/* 8018F2F8 0018C258 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8018F2FC 0018C25C 93 C1 00 24 */ stw r30, 0x24(r1) +/* 8018F300 0018C260 81 84 00 00 */ lwz r12, 0(r4) +/* 8018F304 0018C264 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8018F308 0018C268 7D 89 03 A6 */ mtctr r12 +/* 8018F30C 0018C26C 4E 80 04 21 */ bctrl +/* 8018F310 0018C270 3B 3F 01 08 */ addi r25, r31, 0x108 +/* 8018F314 0018C274 38 81 00 18 */ addi r4, r1, 0x18 +/* 8018F318 0018C278 7F 23 CB 78 */ mr r3, r25 +/* 8018F31C 0018C27C 48 1B 1B 8D */ bl __ct__6CTokenFRC6CToken +/* 8018F320 0018C280 7F 23 CB 78 */ mr r3, r25 +/* 8018F324 0018C284 48 1B 1A E9 */ bl GetObj__6CTokenFv +/* 8018F328 0018C288 80 03 00 04 */ lwz r0, 4(r3) +/* 8018F32C 0018C28C 38 61 00 18 */ addi r3, r1, 0x18 +/* 8018F330 0018C290 38 80 FF FF */ li r4, -1 +/* 8018F334 0018C294 90 19 00 08 */ stw r0, 8(r25) +/* 8018F338 0018C298 48 1B 1B 09 */ bl __dt__6CTokenFv +/* 8018F33C 0018C29C 38 00 00 00 */ li r0, 0 +/* 8018F340 0018C2A0 7F E3 FB 78 */ mr r3, r31 +/* 8018F344 0018C2A4 90 1F 01 14 */ stw r0, 0x114(r31) +/* 8018F348 0018C2A8 39 61 01 B0 */ addi r11, r1, 0x1b0 +/* 8018F34C 0018C2AC 48 1F A6 DD */ bl sub_80389a28 +/* 8018F350 0018C2B0 BB 21 01 5C */ lmw r25, 0x15c(r1) +/* 8018F354 0018C2B4 80 01 01 B4 */ lwz r0, 0x1b4(r1) +/* 8018F358 0018C2B8 7C 08 03 A6 */ mtlr r0 +/* 8018F35C 0018C2BC 38 21 01 B0 */ addi r1, r1, 0x1b0 +/* 8018F360 0018C2C0 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptPickupGenerator.s b/asm/Kyoto_CWD/ScriptObjects/CScriptPickupGenerator.s new file mode 100644 index 00000000..86c69bcd --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptPickupGenerator.s @@ -0,0 +1,881 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global Accept__22CScriptPickupGeneratorFR8IVisitor +Accept__22CScriptPickupGeneratorFR8IVisitor: +/* 8015DE88 0015ADE8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8015DE8C 0015ADEC 7C 08 02 A6 */ mflr r0 +/* 8015DE90 0015ADF0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015DE94 0015ADF4 7C 60 1B 78 */ mr r0, r3 +/* 8015DE98 0015ADF8 7C 83 23 78 */ mr r3, r4 +/* 8015DE9C 0015ADFC 81 84 00 00 */ lwz r12, 0(r4) +/* 8015DEA0 0015AE00 7C 04 03 78 */ mr r4, r0 +/* 8015DEA4 0015AE04 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 8015DEA8 0015AE08 7D 89 03 A6 */ mtctr r12 +/* 8015DEAC 0015AE0C 4E 80 04 21 */ bctrl +/* 8015DEB0 0015AE10 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8015DEB4 0015AE14 7C 08 03 A6 */ mtlr r0 +/* 8015DEB8 0015AE18 38 21 00 10 */ addi r1, r1, 0x10 +/* 8015DEBC 0015AE1C 4E 80 00 20 */ blr + +.global AcceptScriptMsg__22CScriptPickupGeneratorF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__22CScriptPickupGeneratorF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8015DEC0 0015AE20 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 8015DEC4 0015AE24 7C 08 02 A6 */ mflr r0 +/* 8015DEC8 0015AE28 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 8015DECC 0015AE2C BF 61 00 BC */ stmw r27, 0xbc(r1) +/* 8015DED0 0015AE30 7C 9D 23 78 */ mr r29, r4 +/* 8015DED4 0015AE34 2C 1D 00 0D */ cmpwi r29, 0xd +/* 8015DED8 0015AE38 7C 7C 1B 78 */ mr r28, r3 +/* 8015DEDC 0015AE3C 7C BE 2B 78 */ mr r30, r5 +/* 8015DEE0 0015AE40 7C DF 33 78 */ mr r31, r6 +/* 8015DEE4 0015AE44 41 82 00 08 */ beq lbl_8015DEEC +/* 8015DEE8 0015AE48 48 00 03 08 */ b lbl_8015E1F0 +lbl_8015DEEC: +/* 8015DEEC 0015AE4C 88 1C 00 30 */ lbz r0, 0x30(r28) +/* 8015DEF0 0015AE50 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8015DEF4 0015AE54 41 82 02 FC */ beq lbl_8015E1F0 +/* 8015DEF8 0015AE58 C0 22 9F 28 */ lfs f1, lbl_805ABC48@sda21(r2) +/* 8015DEFC 0015AE5C C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 8015DF00 0015AE60 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 8015DF04 0015AE64 41 82 02 EC */ beq lbl_8015E1F0 +/* 8015DF08 0015AE68 C0 5C 00 44 */ lfs f2, 0x44(r28) +/* 8015DF0C 0015AE6C C0 22 9F 2C */ lfs f1, lbl_805ABC4C@sda21(r2) +/* 8015DF10 0015AE70 C0 02 9F 30 */ lfs f0, lbl_805ABC50@sda21(r2) +/* 8015DF14 0015AE74 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8015DF18 0015AE78 D0 3C 00 44 */ stfs f1, 0x44(r28) +/* 8015DF1C 0015AE7C C0 3C 00 44 */ lfs f1, 0x44(r28) +/* 8015DF20 0015AE80 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8015DF24 0015AE84 40 80 00 0C */ bge lbl_8015DF30 +/* 8015DF28 0015AE88 48 00 02 F9 */ bl ResetDelayTimer__22CScriptPickupGeneratorFv +/* 8015DF2C 0015AE8C 48 00 02 C4 */ b lbl_8015E1F0 +lbl_8015DF30: +/* 8015DF30 0015AE90 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8015DF34 0015AE94 38 E0 00 00 */ li r7, 0 +/* 8015DF38 0015AE98 90 E1 00 94 */ stw r7, 0x94(r1) +/* 8015DF3C 0015AE9C 7F E4 FB 78 */ mr r4, r31 +/* 8015DF40 0015AEA0 38 A1 00 10 */ addi r5, r1, 0x10 +/* 8015DF44 0015AEA4 38 C1 00 90 */ addi r6, r1, 0x90 +/* 8015DF48 0015AEA8 90 E1 00 98 */ stw r7, 0x98(r1) +/* 8015DF4C 0015AEAC 90 E1 00 9C */ stw r7, 0x9c(r1) +/* 8015DF50 0015AEB0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8015DF54 0015AEB4 48 00 07 F5 */ bl "GetGeneratorIds__22CScriptPickupGeneratorFR13CStateManager9TUniqueIdRQ24rstl18vector<9TUniqueId>" +/* 8015DF58 0015AEB8 38 00 00 00 */ li r0, 0 +/* 8015DF5C 0015AEBC 7F 83 E3 78 */ mr r3, r28 +/* 8015DF60 0015AEC0 90 01 00 84 */ stw r0, 0x84(r1) +/* 8015DF64 0015AEC4 7F E4 FB 78 */ mr r4, r31 +/* 8015DF68 0015AEC8 38 A1 00 80 */ addi r5, r1, 0x80 +/* 8015DF6C 0015AECC 90 01 00 88 */ stw r0, 0x88(r1) +/* 8015DF70 0015AED0 90 01 00 8C */ stw r0, 0x8c(r1) +/* 8015DF74 0015AED4 48 00 04 E9 */ bl "GetPickupTemplates__22CScriptPickupGeneratorFR13CStateManagerRQ24rstl35vector>" +/* 8015DF78 0015AED8 80 01 00 84 */ lwz r0, 0x84(r1) +/* 8015DF7C 0015AEDC 2C 00 00 00 */ cmpwi r0, 0 +/* 8015DF80 0015AEE0 40 82 00 84 */ bne lbl_8015E004 +/* 8015DF84 0015AEE4 80 61 00 8C */ lwz r3, 0x8c(r1) +/* 8015DF88 0015AEE8 54 00 18 38 */ slwi r0, r0, 3 +/* 8015DF8C 0015AEEC 7C 03 02 14 */ add r0, r3, r0 +/* 8015DF90 0015AEF0 90 61 00 68 */ stw r3, 0x68(r1) +/* 8015DF94 0015AEF4 7C 64 1B 78 */ mr r4, r3 +/* 8015DF98 0015AEF8 90 01 00 70 */ stw r0, 0x70(r1) +/* 8015DF9C 0015AEFC 90 01 00 6C */ stw r0, 0x6c(r1) +/* 8015DFA0 0015AF00 90 61 00 64 */ stw r3, 0x64(r1) +/* 8015DFA4 0015AF04 48 00 00 08 */ b lbl_8015DFAC +lbl_8015DFA8: +/* 8015DFA8 0015AF08 38 84 00 08 */ addi r4, r4, 8 +lbl_8015DFAC: +/* 8015DFAC 0015AF0C 7C 04 00 40 */ cmplw r4, r0 +/* 8015DFB0 0015AF10 40 82 FF F8 */ bne lbl_8015DFA8 +/* 8015DFB4 0015AF14 28 03 00 00 */ cmplwi r3, 0 +/* 8015DFB8 0015AF18 41 82 00 08 */ beq lbl_8015DFC0 +/* 8015DFBC 0015AF1C 48 1B 79 75 */ bl Free__7CMemoryFPCv +lbl_8015DFC0: +/* 8015DFC0 0015AF20 80 01 00 94 */ lwz r0, 0x94(r1) +/* 8015DFC4 0015AF24 80 61 00 9C */ lwz r3, 0x9c(r1) +/* 8015DFC8 0015AF28 54 00 08 3C */ slwi r0, r0, 1 +/* 8015DFCC 0015AF2C 7C 03 02 14 */ add r0, r3, r0 +/* 8015DFD0 0015AF30 90 61 00 58 */ stw r3, 0x58(r1) +/* 8015DFD4 0015AF34 7C 64 1B 78 */ mr r4, r3 +/* 8015DFD8 0015AF38 90 01 00 60 */ stw r0, 0x60(r1) +/* 8015DFDC 0015AF3C 90 01 00 5C */ stw r0, 0x5c(r1) +/* 8015DFE0 0015AF40 90 61 00 54 */ stw r3, 0x54(r1) +/* 8015DFE4 0015AF44 48 00 00 08 */ b lbl_8015DFEC +lbl_8015DFE8: +/* 8015DFE8 0015AF48 38 84 00 02 */ addi r4, r4, 2 +lbl_8015DFEC: +/* 8015DFEC 0015AF4C 7C 04 00 40 */ cmplw r4, r0 +/* 8015DFF0 0015AF50 40 82 FF F8 */ bne lbl_8015DFE8 +/* 8015DFF4 0015AF54 28 03 00 00 */ cmplwi r3, 0 +/* 8015DFF8 0015AF58 41 82 01 F8 */ beq lbl_8015E1F0 +/* 8015DFFC 0015AF5C 48 1B 79 35 */ bl Free__7CMemoryFPCv +/* 8015E000 0015AF60 48 00 01 F0 */ b lbl_8015E1F0 +lbl_8015E004: +/* 8015E004 0015AF64 FC 40 08 90 */ fmr f2, f1 +/* 8015E008 0015AF68 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 8015E00C 0015AF6C C0 22 9F 34 */ lfs f1, lbl_805ABC54@sda21(r2) +/* 8015E010 0015AF70 3B 60 00 00 */ li r27, 0 +/* 8015E014 0015AF74 48 1B 45 31 */ bl Range__9CRandom16Fff +/* 8015E018 0015AF78 80 81 00 8C */ lwz r4, 0x8c(r1) +/* 8015E01C 0015AF7C 80 01 00 84 */ lwz r0, 0x84(r1) +/* 8015E020 0015AF80 7C 83 23 78 */ mr r3, r4 +/* 8015E024 0015AF84 C0 42 9F 34 */ lfs f2, lbl_805ABC54@sda21(r2) +/* 8015E028 0015AF88 7C 09 03 A6 */ mtctr r0 +/* 8015E02C 0015AF8C 2C 00 00 00 */ cmpwi r0, 0 +/* 8015E030 0015AF90 40 81 00 34 */ ble lbl_8015E064 +lbl_8015E034: +/* 8015E034 0015AF94 FC 01 10 40 */ fcmpo cr0, f1, f2 +/* 8015E038 0015AF98 C0 63 00 00 */ lfs f3, 0(r3) +/* 8015E03C 0015AF9C 4C 41 13 82 */ cror 2, 1, 2 +/* 8015E040 0015AFA0 40 82 00 14 */ bne lbl_8015E054 +/* 8015E044 0015AFA4 EC 02 18 2A */ fadds f0, f2, f3 +/* 8015E048 0015AFA8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8015E04C 0015AFAC 4C 40 13 82 */ cror 2, 0, 2 +/* 8015E050 0015AFB0 41 82 00 14 */ beq lbl_8015E064 +lbl_8015E054: +/* 8015E054 0015AFB4 EC 42 18 2A */ fadds f2, f2, f3 +/* 8015E058 0015AFB8 38 63 00 08 */ addi r3, r3, 8 +/* 8015E05C 0015AFBC 3B 7B 00 01 */ addi r27, r27, 1 +/* 8015E060 0015AFC0 42 00 FF D4 */ bdnz lbl_8015E034 +lbl_8015E064: +/* 8015E064 0015AFC4 7C 1B 00 00 */ cmpw r27, r0 +/* 8015E068 0015AFC8 40 82 00 84 */ bne lbl_8015E0EC +/* 8015E06C 0015AFCC 54 00 18 38 */ slwi r0, r0, 3 +/* 8015E070 0015AFD0 90 81 00 48 */ stw r4, 0x48(r1) +/* 8015E074 0015AFD4 7C 04 02 14 */ add r0, r4, r0 +/* 8015E078 0015AFD8 7C 83 23 78 */ mr r3, r4 +/* 8015E07C 0015AFDC 90 01 00 50 */ stw r0, 0x50(r1) +/* 8015E080 0015AFE0 90 01 00 4C */ stw r0, 0x4c(r1) +/* 8015E084 0015AFE4 90 81 00 44 */ stw r4, 0x44(r1) +/* 8015E088 0015AFE8 48 00 00 08 */ b lbl_8015E090 +lbl_8015E08C: +/* 8015E08C 0015AFEC 38 63 00 08 */ addi r3, r3, 8 +lbl_8015E090: +/* 8015E090 0015AFF0 7C 03 00 40 */ cmplw r3, r0 +/* 8015E094 0015AFF4 40 82 FF F8 */ bne lbl_8015E08C +/* 8015E098 0015AFF8 28 04 00 00 */ cmplwi r4, 0 +/* 8015E09C 0015AFFC 41 82 00 0C */ beq lbl_8015E0A8 +/* 8015E0A0 0015B000 7C 83 23 78 */ mr r3, r4 +/* 8015E0A4 0015B004 48 1B 78 8D */ bl Free__7CMemoryFPCv +lbl_8015E0A8: +/* 8015E0A8 0015B008 80 01 00 94 */ lwz r0, 0x94(r1) +/* 8015E0AC 0015B00C 80 61 00 9C */ lwz r3, 0x9c(r1) +/* 8015E0B0 0015B010 54 00 08 3C */ slwi r0, r0, 1 +/* 8015E0B4 0015B014 7C 03 02 14 */ add r0, r3, r0 +/* 8015E0B8 0015B018 90 61 00 38 */ stw r3, 0x38(r1) +/* 8015E0BC 0015B01C 7C 64 1B 78 */ mr r4, r3 +/* 8015E0C0 0015B020 90 01 00 40 */ stw r0, 0x40(r1) +/* 8015E0C4 0015B024 90 01 00 3C */ stw r0, 0x3c(r1) +/* 8015E0C8 0015B028 90 61 00 34 */ stw r3, 0x34(r1) +/* 8015E0CC 0015B02C 48 00 00 08 */ b lbl_8015E0D4 +lbl_8015E0D0: +/* 8015E0D0 0015B030 38 84 00 02 */ addi r4, r4, 2 +lbl_8015E0D4: +/* 8015E0D4 0015B034 7C 04 00 40 */ cmplw r4, r0 +/* 8015E0D8 0015B038 40 82 FF F8 */ bne lbl_8015E0D0 +/* 8015E0DC 0015B03C 28 03 00 00 */ cmplwi r3, 0 +/* 8015E0E0 0015B040 41 82 01 10 */ beq lbl_8015E1F0 +/* 8015E0E4 0015B044 48 1B 78 4D */ bl Free__7CMemoryFPCv +/* 8015E0E8 0015B048 48 00 01 08 */ b lbl_8015E1F0 +lbl_8015E0EC: +/* 8015E0EC 0015B04C 57 60 18 38 */ slwi r0, r27, 3 +/* 8015E0F0 0015B050 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 8015E0F4 0015B054 7C 84 02 14 */ add r4, r4, r0 +/* 8015E0F8 0015B058 C0 04 00 00 */ lfs f0, 0(r4) +/* 8015E0FC 0015B05C 80 04 00 04 */ lwz r0, 4(r4) +/* 8015E100 0015B060 D0 01 00 78 */ stfs f0, 0x78(r1) +/* 8015E104 0015B064 90 01 00 7C */ stw r0, 0x7c(r1) +/* 8015E108 0015B068 48 1B 43 D5 */ bl Float__9CRandom16Fv +/* 8015E10C 0015B06C 80 81 00 94 */ lwz r4, 0x94(r1) +/* 8015E110 0015B070 3C 00 43 30 */ lis r0, 0x4330 +/* 8015E114 0015B074 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 8015E118 0015B078 7F 83 E3 78 */ mr r3, r28 +/* 8015E11C 0015B07C 6C 80 80 00 */ xoris r0, r4, 0x8000 +/* 8015E120 0015B080 C8 62 9F 40 */ lfd f3, lbl_805ABC60@sda21(r2) +/* 8015E124 0015B084 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 8015E128 0015B088 7F E4 FB 78 */ mr r4, r31 +/* 8015E12C 0015B08C C0 02 9F 38 */ lfs f0, lbl_805ABC58@sda21(r2) +/* 8015E130 0015B090 38 A1 00 74 */ addi r5, r1, 0x74 +/* 8015E134 0015B094 C8 41 00 A0 */ lfd f2, 0xa0(r1) +/* 8015E138 0015B098 38 C1 00 0C */ addi r6, r1, 0xc +/* 8015E13C 0015B09C 81 01 00 9C */ lwz r8, 0x9c(r1) +/* 8015E140 0015B0A0 EC 42 18 28 */ fsubs f2, f2, f3 +/* 8015E144 0015B0A4 80 01 00 7C */ lwz r0, 0x7c(r1) +/* 8015E148 0015B0A8 EC 21 00 B2 */ fmuls f1, f1, f2 +/* 8015E14C 0015B0AC EC 00 00 72 */ fmuls f0, f0, f1 +/* 8015E150 0015B0B0 FC 00 00 1E */ fctiwz f0, f0 +/* 8015E154 0015B0B4 D8 01 00 A8 */ stfd f0, 0xa8(r1) +/* 8015E158 0015B0B8 80 E1 00 AC */ lwz r7, 0xac(r1) +/* 8015E15C 0015B0BC 54 E7 08 3C */ slwi r7, r7, 1 +/* 8015E160 0015B0C0 7C E8 3A 2E */ lhzx r7, r8, r7 +/* 8015E164 0015B0C4 B0 E1 00 0C */ sth r7, 0xc(r1) +/* 8015E168 0015B0C8 90 01 00 74 */ stw r0, 0x74(r1) +/* 8015E16C 0015B0CC 48 00 00 E9 */ bl GeneratePickup__22CScriptPickupGeneratorFR13CStateManager9TUniqueId9TEditorId +/* 8015E170 0015B0D0 80 01 00 84 */ lwz r0, 0x84(r1) +/* 8015E174 0015B0D4 80 61 00 8C */ lwz r3, 0x8c(r1) +/* 8015E178 0015B0D8 54 00 18 38 */ slwi r0, r0, 3 +/* 8015E17C 0015B0DC 7C 03 02 14 */ add r0, r3, r0 +/* 8015E180 0015B0E0 90 61 00 28 */ stw r3, 0x28(r1) +/* 8015E184 0015B0E4 7C 64 1B 78 */ mr r4, r3 +/* 8015E188 0015B0E8 90 01 00 30 */ stw r0, 0x30(r1) +/* 8015E18C 0015B0EC 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8015E190 0015B0F0 90 61 00 24 */ stw r3, 0x24(r1) +/* 8015E194 0015B0F4 48 00 00 08 */ b lbl_8015E19C +lbl_8015E198: +/* 8015E198 0015B0F8 38 84 00 08 */ addi r4, r4, 8 +lbl_8015E19C: +/* 8015E19C 0015B0FC 7C 04 00 40 */ cmplw r4, r0 +/* 8015E1A0 0015B100 40 82 FF F8 */ bne lbl_8015E198 +/* 8015E1A4 0015B104 28 03 00 00 */ cmplwi r3, 0 +/* 8015E1A8 0015B108 41 82 00 08 */ beq lbl_8015E1B0 +/* 8015E1AC 0015B10C 48 1B 77 85 */ bl Free__7CMemoryFPCv +lbl_8015E1B0: +/* 8015E1B0 0015B110 80 01 00 94 */ lwz r0, 0x94(r1) +/* 8015E1B4 0015B114 80 61 00 9C */ lwz r3, 0x9c(r1) +/* 8015E1B8 0015B118 54 00 08 3C */ slwi r0, r0, 1 +/* 8015E1BC 0015B11C 7C 03 02 14 */ add r0, r3, r0 +/* 8015E1C0 0015B120 90 61 00 18 */ stw r3, 0x18(r1) +/* 8015E1C4 0015B124 7C 64 1B 78 */ mr r4, r3 +/* 8015E1C8 0015B128 90 01 00 20 */ stw r0, 0x20(r1) +/* 8015E1CC 0015B12C 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8015E1D0 0015B130 90 61 00 14 */ stw r3, 0x14(r1) +/* 8015E1D4 0015B134 48 00 00 08 */ b lbl_8015E1DC +lbl_8015E1D8: +/* 8015E1D8 0015B138 38 84 00 02 */ addi r4, r4, 2 +lbl_8015E1DC: +/* 8015E1DC 0015B13C 7C 04 00 40 */ cmplw r4, r0 +/* 8015E1E0 0015B140 40 82 FF F8 */ bne lbl_8015E1D8 +/* 8015E1E4 0015B144 28 03 00 00 */ cmplwi r3, 0 +/* 8015E1E8 0015B148 41 82 00 08 */ beq lbl_8015E1F0 +/* 8015E1EC 0015B14C 48 1B 77 45 */ bl Free__7CMemoryFPCv +lbl_8015E1F0: +/* 8015E1F0 0015B150 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8015E1F4 0015B154 7F 83 E3 78 */ mr r3, r28 +/* 8015E1F8 0015B158 7F A4 EB 78 */ mr r4, r29 +/* 8015E1FC 0015B15C 7F E6 FB 78 */ mr r6, r31 +/* 8015E200 0015B160 B0 01 00 08 */ sth r0, 8(r1) +/* 8015E204 0015B164 38 A1 00 08 */ addi r5, r1, 8 +/* 8015E208 0015B168 4B EF 2F 55 */ bl AcceptScriptMsg__7CEntityF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8015E20C 0015B16C BB 61 00 BC */ lmw r27, 0xbc(r1) +/* 8015E210 0015B170 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 8015E214 0015B174 7C 08 03 A6 */ mtlr r0 +/* 8015E218 0015B178 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 8015E21C 0015B17C 4E 80 00 20 */ blr + +.global ResetDelayTimer__22CScriptPickupGeneratorFv +ResetDelayTimer__22CScriptPickupGeneratorFv: +/* 8015E220 0015B180 C0 43 00 40 */ lfs f2, 0x40(r3) +/* 8015E224 0015B184 C0 02 9F 34 */ lfs f0, lbl_805ABC54@sda21(r2) +/* 8015E228 0015B188 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8015E22C 0015B18C 40 81 00 1C */ ble lbl_8015E248 +/* 8015E230 0015B190 C0 02 9F 28 */ lfs f0, lbl_805ABC48@sda21(r2) +/* 8015E234 0015B194 C0 23 00 44 */ lfs f1, 0x44(r3) +/* 8015E238 0015B198 EC 00 10 24 */ fdivs f0, f0, f2 +/* 8015E23C 0015B19C EC 01 00 2A */ fadds f0, f1, f0 +/* 8015E240 0015B1A0 D0 03 00 44 */ stfs f0, 0x44(r3) +/* 8015E244 0015B1A4 4E 80 00 20 */ blr +lbl_8015E248: +/* 8015E248 0015B1A8 C0 02 9F 48 */ lfs f0, lbl_805ABC68@sda21(r2) +/* 8015E24C 0015B1AC D0 03 00 44 */ stfs f0, 0x44(r3) +/* 8015E250 0015B1B0 4E 80 00 20 */ blr + +.global GeneratePickup__22CScriptPickupGeneratorFR13CStateManager9TUniqueId9TEditorId +GeneratePickup__22CScriptPickupGeneratorFR13CStateManager9TUniqueId9TEditorId: +/* 8015E254 0015B1B4 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 8015E258 0015B1B8 7C 08 02 A6 */ mflr r0 +/* 8015E25C 0015B1BC 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 8015E260 0015B1C0 BF 21 00 84 */ stmw r25, 0x84(r1) +/* 8015E264 0015B1C4 7C 7E 1B 78 */ mr r30, r3 +/* 8015E268 0015B1C8 7C BA 2B 78 */ mr r26, r5 +/* 8015E26C 0015B1CC 7C 9F 23 78 */ mr r31, r4 +/* 8015E270 0015B1D0 7C D9 33 78 */ mr r25, r6 +/* 8015E274 0015B1D4 38 61 00 1C */ addi r3, r1, 0x1c +/* 8015E278 0015B1D8 80 05 00 00 */ lwz r0, 0(r5) +/* 8015E27C 0015B1DC 38 A1 00 28 */ addi r5, r1, 0x28 +/* 8015E280 0015B1E0 90 01 00 28 */ stw r0, 0x28(r1) +/* 8015E284 0015B1E4 4B EE 9C 99 */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 8015E288 0015B1E8 A0 01 00 1C */ lhz r0, 0x1c(r1) +/* 8015E28C 0015B1EC 7F E3 FB 78 */ mr r3, r31 +/* 8015E290 0015B1F0 38 81 00 18 */ addi r4, r1, 0x18 +/* 8015E294 0015B1F4 B0 01 00 24 */ sth r0, 0x24(r1) +/* 8015E298 0015B1F8 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8015E29C 0015B1FC 4B EE E2 D9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8015E2A0 0015B200 A0 19 00 00 */ lhz r0, 0(r25) +/* 8015E2A4 0015B204 7C 7D 1B 78 */ mr r29, r3 +/* 8015E2A8 0015B208 7F E3 FB 78 */ mr r3, r31 +/* 8015E2AC 0015B20C 38 81 00 14 */ addi r4, r1, 0x14 +/* 8015E2B0 0015B210 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8015E2B4 0015B214 4B EE E2 C1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8015E2B8 0015B218 28 1D 00 00 */ cmplwi r29, 0 +/* 8015E2BC 0015B21C 7C 7C 1B 78 */ mr r28, r3 +/* 8015E2C0 0015B220 41 82 01 88 */ beq lbl_8015E448 +/* 8015E2C4 0015B224 28 1C 00 00 */ cmplwi r28, 0 +/* 8015E2C8 0015B228 41 82 01 80 */ beq lbl_8015E448 +/* 8015E2CC 0015B22C 88 DF 0F 94 */ lbz r6, 0xf94(r31) +/* 8015E2D0 0015B230 38 60 00 01 */ li r3, 1 +/* 8015E2D4 0015B234 88 1F 0F 94 */ lbz r0, 0xf94(r31) +/* 8015E2D8 0015B238 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 8015E2DC 0015B23C 7F E4 FB 78 */ mr r4, r31 +/* 8015E2E0 0015B240 7F 45 D3 78 */ mr r5, r26 +/* 8015E2E4 0015B244 98 1F 0F 94 */ stb r0, 0xf94(r31) +/* 8015E2E8 0015B248 54 DD DF FE */ rlwinm r29, r6, 0x1b, 0x1f, 0x1f +/* 8015E2EC 0015B24C 38 61 00 4C */ addi r3, r1, 0x4c +/* 8015E2F0 0015B250 4B EE 9F F9 */ bl GenerateObject__13CStateManagerF9TEditorId +/* 8015E2F4 0015B254 A0 81 00 50 */ lhz r4, 0x50(r1) +/* 8015E2F8 0015B258 88 1F 0F 94 */ lbz r0, 0xf94(r31) +/* 8015E2FC 0015B25C 53 A0 2E B4 */ rlwimi r0, r29, 5, 0x1a, 0x1a +/* 8015E300 0015B260 54 83 04 3E */ clrlwi r3, r4, 0x10 +/* 8015E304 0015B264 B0 81 00 20 */ sth r4, 0x20(r1) +/* 8015E308 0015B268 98 1F 0F 94 */ stb r0, 0xf94(r31) +/* 8015E30C 0015B26C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8015E310 0015B270 7C 03 00 40 */ cmplw r3, r0 +/* 8015E314 0015B274 41 82 01 34 */ beq lbl_8015E448 +/* 8015E318 0015B278 B0 81 00 10 */ sth r4, 0x10(r1) +/* 8015E31C 0015B27C 7F E3 FB 78 */ mr r3, r31 +/* 8015E320 0015B280 38 81 00 10 */ addi r4, r1, 0x10 +/* 8015E324 0015B284 4B EE E2 51 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8015E328 0015B288 7C 60 1B 78 */ mr r0, r3 +/* 8015E32C 0015B28C 38 61 00 44 */ addi r3, r1, 0x44 +/* 8015E330 0015B290 7C 1B 03 78 */ mr r27, r0 +/* 8015E334 0015B294 7F 64 DB 78 */ mr r4, r27 +/* 8015E338 0015B298 4B F5 19 59 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8015E33C 0015B29C 83 43 00 04 */ lwz r26, 4(r3) +/* 8015E340 0015B2A0 7F 64 DB 78 */ mr r4, r27 +/* 8015E344 0015B2A4 38 61 00 3C */ addi r3, r1, 0x3c +/* 8015E348 0015B2A8 4B F4 AE 45 */ bl "__ct__27TCastToPtr<13CScriptPickup>FP7CEntity" +/* 8015E34C 0015B2AC 83 A3 00 04 */ lwz r29, 4(r3) +/* 8015E350 0015B2B0 7F 84 E3 78 */ mr r4, r28 +/* 8015E354 0015B2B4 38 61 00 34 */ addi r3, r1, 0x34 +/* 8015E358 0015B2B8 4B F5 19 39 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8015E35C 0015B2BC 83 23 00 04 */ lwz r25, 4(r3) +/* 8015E360 0015B2C0 7F 84 E3 78 */ mr r4, r28 +/* 8015E364 0015B2C4 38 61 00 2C */ addi r3, r1, 0x2c +/* 8015E368 0015B2C8 4B F4 78 A9 */ bl "__ct__31TCastToPtr<17CWallCrawlerSwarm>FP7CEntity" +/* 8015E36C 0015B2CC 28 1A 00 00 */ cmplwi r26, 0 +/* 8015E370 0015B2D0 80 A3 00 04 */ lwz r5, 4(r3) +/* 8015E374 0015B2D4 41 82 00 58 */ beq lbl_8015E3CC +/* 8015E378 0015B2D8 28 05 00 00 */ cmplwi r5, 0 +/* 8015E37C 0015B2DC 41 82 00 50 */ beq lbl_8015E3CC +/* 8015E380 0015B2E0 C0 A5 01 30 */ lfs f5, 0x130(r5) +/* 8015E384 0015B2E4 7F 43 D3 78 */ mr r3, r26 +/* 8015E388 0015B2E8 C0 85 01 34 */ lfs f4, 0x134(r5) +/* 8015E38C 0015B2EC 38 81 00 6C */ addi r4, r1, 0x6c +/* 8015E390 0015B2F0 C0 65 01 38 */ lfs f3, 0x138(r5) +/* 8015E394 0015B2F4 C0 5E 00 38 */ lfs f2, 0x38(r30) +/* 8015E398 0015B2F8 C0 3E 00 3C */ lfs f1, 0x3c(r30) +/* 8015E39C 0015B2FC C0 1E 00 34 */ lfs f0, 0x34(r30) +/* 8015E3A0 0015B300 EC 44 10 2A */ fadds f2, f4, f2 +/* 8015E3A4 0015B304 EC 23 08 2A */ fadds f1, f3, f1 +/* 8015E3A8 0015B308 D0 A1 00 60 */ stfs f5, 0x60(r1) +/* 8015E3AC 0015B30C EC 05 00 2A */ fadds f0, f5, f0 +/* 8015E3B0 0015B310 D0 81 00 64 */ stfs f4, 0x64(r1) +/* 8015E3B4 0015B314 D0 61 00 68 */ stfs f3, 0x68(r1) +/* 8015E3B8 0015B318 D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 8015E3BC 0015B31C D0 41 00 70 */ stfs f2, 0x70(r1) +/* 8015E3C0 0015B320 D0 21 00 74 */ stfs f1, 0x74(r1) +/* 8015E3C4 0015B324 4B EF 4A C9 */ bl SetTranslation__6CActorFRC9CVector3f +/* 8015E3C8 0015B328 48 00 00 50 */ b lbl_8015E418 +lbl_8015E3CC: +/* 8015E3CC 0015B32C 28 1A 00 00 */ cmplwi r26, 0 +/* 8015E3D0 0015B330 41 82 00 48 */ beq lbl_8015E418 +/* 8015E3D4 0015B334 28 19 00 00 */ cmplwi r25, 0 +/* 8015E3D8 0015B338 41 82 00 40 */ beq lbl_8015E418 +/* 8015E3DC 0015B33C C0 39 00 50 */ lfs f1, 0x50(r25) +/* 8015E3E0 0015B340 7F 43 D3 78 */ mr r3, r26 +/* 8015E3E4 0015B344 C0 1E 00 38 */ lfs f0, 0x38(r30) +/* 8015E3E8 0015B348 38 81 00 54 */ addi r4, r1, 0x54 +/* 8015E3EC 0015B34C C0 79 00 60 */ lfs f3, 0x60(r25) +/* 8015E3F0 0015B350 C0 5E 00 3C */ lfs f2, 0x3c(r30) +/* 8015E3F4 0015B354 EC 81 00 2A */ fadds f4, f1, f0 +/* 8015E3F8 0015B358 C0 39 00 40 */ lfs f1, 0x40(r25) +/* 8015E3FC 0015B35C C0 1E 00 34 */ lfs f0, 0x34(r30) +/* 8015E400 0015B360 EC 43 10 2A */ fadds f2, f3, f2 +/* 8015E404 0015B364 D0 81 00 58 */ stfs f4, 0x58(r1) +/* 8015E408 0015B368 EC 01 00 2A */ fadds f0, f1, f0 +/* 8015E40C 0015B36C D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 8015E410 0015B370 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 8015E414 0015B374 4B EF 4A 79 */ bl SetTranslation__6CActorFRC9CVector3f +lbl_8015E418: +/* 8015E418 0015B378 28 1D 00 00 */ cmplwi r29, 0 +/* 8015E41C 0015B37C 41 82 00 0C */ beq lbl_8015E428 +/* 8015E420 0015B380 7F A3 EB 78 */ mr r3, r29 +/* 8015E424 0015B384 4B F6 41 CD */ bl SetSpawned__13CScriptPickupFv +lbl_8015E428: +/* 8015E428 0015B388 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8015E42C 0015B38C 7F E3 FB 78 */ mr r3, r31 +/* 8015E430 0015B390 7F 64 DB 78 */ mr r4, r27 +/* 8015E434 0015B394 38 A1 00 0C */ addi r5, r1, 0xc +/* 8015E438 0015B398 B0 01 00 08 */ sth r0, 8(r1) +/* 8015E43C 0015B39C 38 C0 00 01 */ li r6, 1 +/* 8015E440 0015B3A0 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8015E444 0015B3A4 4B EE 5A 8D */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage +lbl_8015E448: +/* 8015E448 0015B3A8 BB 21 00 84 */ lmw r25, 0x84(r1) +/* 8015E44C 0015B3AC 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 8015E450 0015B3B0 7C 08 03 A6 */ mtlr r0 +/* 8015E454 0015B3B4 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 8015E458 0015B3B8 4E 80 00 20 */ blr + +.global "GetPickupTemplates__22CScriptPickupGeneratorFR13CStateManagerRQ24rstl35vector>" +"GetPickupTemplates__22CScriptPickupGeneratorFR13CStateManagerRQ24rstl35vector>": +/* 8015E45C 0015B3BC 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 8015E460 0015B3C0 7C 08 02 A6 */ mflr r0 +/* 8015E464 0015B3C4 90 01 00 84 */ stw r0, 0x84(r1) +/* 8015E468 0015B3C8 DB E1 00 70 */ stfd f31, 0x70(r1) +/* 8015E46C 0015B3CC F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 8015E470 0015B3D0 DB C1 00 60 */ stfd f30, 0x60(r1) +/* 8015E474 0015B3D4 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 +/* 8015E478 0015B3D8 DB A1 00 50 */ stfd f29, 0x50(r1) +/* 8015E47C 0015B3DC F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 +/* 8015E480 0015B3E0 DB 81 00 40 */ stfd f28, 0x40(r1) +/* 8015E484 0015B3E4 F3 81 00 48 */ psq_st f28, 72(r1), 0, qr0 +/* 8015E488 0015B3E8 BF 01 00 20 */ stmw r24, 0x20(r1) +/* 8015E48C 0015B3EC 7C 9C 23 78 */ mr r28, r4 +/* 8015E490 0015B3F0 7C 7B 1B 78 */ mr r27, r3 +/* 8015E494 0015B3F4 80 84 08 B8 */ lwz r4, 0x8b8(r4) +/* 8015E498 0015B3F8 7C BD 2B 78 */ mr r29, r5 +/* 8015E49C 0015B3FC C3 A2 9F 34 */ lfs f29, lbl_805ABC54@sda21(r2) +/* 8015E4A0 0015B400 7F A3 EB 78 */ mr r3, r29 +/* 8015E4A4 0015B404 83 E4 00 00 */ lwz r31, 0(r4) +/* 8015E4A8 0015B408 80 9B 00 24 */ lwz r4, 0x24(r27) +/* 8015E4AC 0015B40C 48 00 05 31 */ bl sub_8015e9dc +/* 8015E4B0 0015B410 83 DB 00 2C */ lwz r30, 0x2c(r27) +/* 8015E4B4 0015B414 48 00 02 44 */ b lbl_8015E6F8 +lbl_8015E4B8: +/* 8015E4B8 0015B418 80 1E 00 00 */ lwz r0, 0(r30) +/* 8015E4BC 0015B41C 2C 00 00 09 */ cmpwi r0, 9 +/* 8015E4C0 0015B420 40 82 02 34 */ bne lbl_8015E6F4 +/* 8015E4C4 0015B424 80 1E 00 04 */ lwz r0, 4(r30) +/* 8015E4C8 0015B428 2C 00 00 01 */ cmpwi r0, 1 +/* 8015E4CC 0015B42C 40 82 02 28 */ bne lbl_8015E6F4 +/* 8015E4D0 0015B430 80 1E 00 08 */ lwz r0, 8(r30) +/* 8015E4D4 0015B434 7F 84 E3 78 */ mr r4, r28 +/* 8015E4D8 0015B438 38 61 00 0C */ addi r3, r1, 0xc +/* 8015E4DC 0015B43C 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8015E4E0 0015B440 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015E4E4 0015B444 4B EE 9A 39 */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 8015E4E8 0015B448 A0 61 00 0C */ lhz r3, 0xc(r1) +/* 8015E4EC 0015B44C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8015E4F0 0015B450 B0 61 00 10 */ sth r3, 0x10(r1) +/* 8015E4F4 0015B454 7C 03 00 40 */ cmplw r3, r0 +/* 8015E4F8 0015B458 41 82 01 FC */ beq lbl_8015E6F4 +/* 8015E4FC 0015B45C B0 61 00 08 */ sth r3, 8(r1) +/* 8015E500 0015B460 7F 83 E3 78 */ mr r3, r28 +/* 8015E504 0015B464 38 81 00 08 */ addi r4, r1, 8 +/* 8015E508 0015B468 4B EE E0 9D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8015E50C 0015B46C 7C 64 1B 78 */ mr r4, r3 +/* 8015E510 0015B470 38 61 00 18 */ addi r3, r1, 0x18 +/* 8015E514 0015B474 4B F4 AC 79 */ bl "__ct__27TCastToPtr<13CScriptPickup>FP7CEntity" +/* 8015E518 0015B478 83 23 00 04 */ lwz r25, 4(r3) +/* 8015E51C 0015B47C 28 19 00 00 */ cmplwi r25, 0 +/* 8015E520 0015B480 41 82 01 D4 */ beq lbl_8015E6F4 +/* 8015E524 0015B484 7F 23 CB 78 */ mr r3, r25 +/* 8015E528 0015B488 4B F6 40 E5 */ bl GetItem__13CScriptPickupCFv +/* 8015E52C 0015B48C 7C 7A 1B 78 */ mr r26, r3 +/* 8015E530 0015B490 7F 23 CB 78 */ mr r3, r25 +/* 8015E534 0015B494 4B F6 40 D1 */ bl GetPossibility__13CScriptPickupCFv +/* 8015E538 0015B498 FF E0 08 90 */ fmr f31, f1 +/* 8015E53C 0015B49C 2C 1A 00 07 */ cmpwi r26, 7 +/* 8015E540 0015B4A0 C3 82 9F 2C */ lfs f28, lbl_805ABC4C@sda21(r2) +/* 8015E544 0015B4A4 3B 20 00 00 */ li r25, 0 +/* 8015E548 0015B4A8 3B 00 00 00 */ li r24, 0 +/* 8015E54C 0015B4AC 41 82 00 68 */ beq lbl_8015E5B4 +/* 8015E550 0015B4B0 40 80 00 10 */ bge lbl_8015E560 +/* 8015E554 0015B4B4 2C 1A 00 04 */ cmpwi r26, 4 +/* 8015E558 0015B4B8 41 82 00 14 */ beq lbl_8015E56C +/* 8015E55C 0015B4BC 48 00 01 00 */ b lbl_8015E65C +lbl_8015E560: +/* 8015E560 0015B4C0 2C 1A 00 1A */ cmpwi r26, 0x1a +/* 8015E564 0015B4C4 41 82 00 CC */ beq lbl_8015E630 +/* 8015E568 0015B4C8 48 00 00 F4 */ b lbl_8015E65C +lbl_8015E56C: +/* 8015E56C 0015B4CC 7F E3 FB 78 */ mr r3, r31 +/* 8015E570 0015B4D0 38 80 00 04 */ li r4, 4 +/* 8015E574 0015B4D4 4B F3 35 4D */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 8015E578 0015B4D8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8015E57C 0015B4DC 41 82 00 E4 */ beq lbl_8015E660 +/* 8015E580 0015B4E0 7F E3 FB 78 */ mr r3, r31 +/* 8015E584 0015B4E4 38 80 00 04 */ li r4, 4 +/* 8015E588 0015B4E8 4B F3 35 6D */ bl GetItemCapacity__12CPlayerStateCFQ212CPlayerState9EItemType +/* 8015E58C 0015B4EC 7C 7A 1B 78 */ mr r26, r3 +/* 8015E590 0015B4F0 7F E3 FB 78 */ mr r3, r31 +/* 8015E594 0015B4F4 38 80 00 04 */ li r4, 4 +/* 8015E598 0015B4F8 4B F3 35 85 */ bl GetItemAmount__12CPlayerStateCFQ212CPlayerState9EItemType +/* 8015E59C 0015B4FC 7C 03 D0 00 */ cmpw r3, r26 +/* 8015E5A0 0015B500 40 80 00 0C */ bge lbl_8015E5AC +/* 8015E5A4 0015B504 3B 20 00 01 */ li r25, 1 +/* 8015E5A8 0015B508 48 00 00 B8 */ b lbl_8015E660 +lbl_8015E5AC: +/* 8015E5AC 0015B50C 3B 00 00 01 */ li r24, 1 +/* 8015E5B0 0015B510 48 00 00 B0 */ b lbl_8015E660 +lbl_8015E5B4: +/* 8015E5B4 0015B514 7F E3 FB 78 */ mr r3, r31 +/* 8015E5B8 0015B518 38 80 00 07 */ li r4, 7 +/* 8015E5BC 0015B51C 4B F3 35 05 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 8015E5C0 0015B520 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8015E5C4 0015B524 41 82 00 9C */ beq lbl_8015E660 +/* 8015E5C8 0015B528 7F E3 FB 78 */ mr r3, r31 +/* 8015E5CC 0015B52C 38 80 00 07 */ li r4, 7 +/* 8015E5D0 0015B530 4B F3 35 25 */ bl GetItemCapacity__12CPlayerStateCFQ212CPlayerState9EItemType +/* 8015E5D4 0015B534 7C 7A 1B 78 */ mr r26, r3 +/* 8015E5D8 0015B538 7F E3 FB 78 */ mr r3, r31 +/* 8015E5DC 0015B53C 38 80 00 07 */ li r4, 7 +/* 8015E5E0 0015B540 4B F3 35 3D */ bl GetItemAmount__12CPlayerStateCFQ212CPlayerState9EItemType +/* 8015E5E4 0015B544 7C 03 D0 00 */ cmpw r3, r26 +/* 8015E5E8 0015B548 40 80 00 40 */ bge lbl_8015E628 +/* 8015E5EC 0015B54C 7F E3 FB 78 */ mr r3, r31 +/* 8015E5F0 0015B550 3B 20 00 01 */ li r25, 1 +/* 8015E5F4 0015B554 38 80 00 07 */ li r4, 7 +/* 8015E5F8 0015B558 4B F3 35 25 */ bl GetItemAmount__12CPlayerStateCFQ212CPlayerState9EItemType +/* 8015E5FC 0015B55C 2C 03 00 02 */ cmpwi r3, 2 +/* 8015E600 0015B560 40 80 00 60 */ bge lbl_8015E660 +/* 8015E604 0015B564 C0 02 9F 4C */ lfs f0, lbl_805ABC6C@sda21(r2) +/* 8015E608 0015B568 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 8015E60C 0015B56C 4C 41 13 82 */ cror 2, 1, 2 +/* 8015E610 0015B570 40 82 00 50 */ bne lbl_8015E660 +/* 8015E614 0015B574 C0 02 9F 50 */ lfs f0, lbl_805ABC70@sda21(r2) +/* 8015E618 0015B578 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 8015E61C 0015B57C 40 80 00 44 */ bge lbl_8015E660 +/* 8015E620 0015B580 C3 82 9F 54 */ lfs f28, lbl_805ABC74@sda21(r2) +/* 8015E624 0015B584 48 00 00 3C */ b lbl_8015E660 +lbl_8015E628: +/* 8015E628 0015B588 3B 00 00 01 */ li r24, 1 +/* 8015E62C 0015B58C 48 00 00 34 */ b lbl_8015E660 +lbl_8015E630: +/* 8015E630 0015B590 34 7F 00 0C */ addic. r3, r31, 0xc +/* 8015E634 0015B594 41 82 00 20 */ beq lbl_8015E654 +/* 8015E638 0015B598 C3 C3 00 00 */ lfs f30, 0(r3) +/* 8015E63C 0015B59C 7F E3 FB 78 */ mr r3, r31 +/* 8015E640 0015B5A0 4B F3 36 F1 */ bl CalculateHealth__12CPlayerStateFUi +/* 8015E644 0015B5A4 FC 1E 08 40 */ fcmpo cr0, f30, f1 +/* 8015E648 0015B5A8 40 80 00 0C */ bge lbl_8015E654 +/* 8015E64C 0015B5AC 3B 20 00 01 */ li r25, 1 +/* 8015E650 0015B5B0 48 00 00 10 */ b lbl_8015E660 +lbl_8015E654: +/* 8015E654 0015B5B4 3B 00 00 01 */ li r24, 1 +/* 8015E658 0015B5B8 48 00 00 08 */ b lbl_8015E660 +lbl_8015E65C: +/* 8015E65C 0015B5BC 3B 20 00 01 */ li r25, 1 +lbl_8015E660: +/* 8015E660 0015B5C0 80 7C 09 00 */ lwz r3, 0x900(r28) +/* 8015E664 0015B5C4 48 1B 3E 79 */ bl Float__9CRandom16Fv +/* 8015E668 0015B5C8 C0 02 9F 58 */ lfs f0, lbl_805ABC78@sda21(r2) +/* 8015E66C 0015B5CC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8015E670 0015B5D0 7C 60 00 26 */ mfcr r3 +/* 8015E674 0015B5D4 57 20 06 3F */ clrlwi. r0, r25, 0x18 +/* 8015E678 0015B5D8 54 63 0F FE */ srwi r3, r3, 0x1f +/* 8015E67C 0015B5DC 40 82 00 14 */ bne lbl_8015E690 +/* 8015E680 0015B5E0 57 00 06 3F */ clrlwi. r0, r24, 0x18 +/* 8015E684 0015B5E4 41 82 00 70 */ beq lbl_8015E6F4 +/* 8015E688 0015B5E8 28 03 00 00 */ cmplwi r3, 0 +/* 8015E68C 0015B5EC 41 82 00 68 */ beq lbl_8015E6F4 +lbl_8015E690: +/* 8015E690 0015B5F0 C0 02 9F 34 */ lfs f0, lbl_805ABC54@sda21(r2) +/* 8015E694 0015B5F4 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 8015E698 0015B5F8 40 81 00 5C */ ble lbl_8015E6F4 +/* 8015E69C 0015B5FC 80 1D 00 04 */ lwz r0, 4(r29) +/* 8015E6A0 0015B600 EF BF EF 3A */ fmadds f29, f31, f28, f29 +/* 8015E6A4 0015B604 80 BD 00 08 */ lwz r5, 8(r29) +/* 8015E6A8 0015B608 83 5E 00 08 */ lwz r26, 8(r30) +/* 8015E6AC 0015B60C 7C 00 28 00 */ cmpw r0, r5 +/* 8015E6B0 0015B610 41 80 00 1C */ blt lbl_8015E6CC +/* 8015E6B4 0015B614 2C 05 00 00 */ cmpwi r5, 0 +/* 8015E6B8 0015B618 7F A3 EB 78 */ mr r3, r29 +/* 8015E6BC 0015B61C 38 80 00 04 */ li r4, 4 +/* 8015E6C0 0015B620 41 82 00 08 */ beq lbl_8015E6C8 +/* 8015E6C4 0015B624 54 A4 08 3C */ slwi r4, r5, 1 +lbl_8015E6C8: +/* 8015E6C8 0015B628 48 00 03 15 */ bl sub_8015e9dc +lbl_8015E6CC: +/* 8015E6CC 0015B62C 80 1D 00 04 */ lwz r0, 4(r29) +/* 8015E6D0 0015B630 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 8015E6D4 0015B634 54 00 18 38 */ slwi r0, r0, 3 +/* 8015E6D8 0015B638 7C 63 02 15 */ add. r3, r3, r0 +/* 8015E6DC 0015B63C 41 82 00 0C */ beq lbl_8015E6E8 +/* 8015E6E0 0015B640 D3 E3 00 00 */ stfs f31, 0(r3) +/* 8015E6E4 0015B644 93 43 00 04 */ stw r26, 4(r3) +lbl_8015E6E8: +/* 8015E6E8 0015B648 80 7D 00 04 */ lwz r3, 4(r29) +/* 8015E6EC 0015B64C 38 03 00 01 */ addi r0, r3, 1 +/* 8015E6F0 0015B650 90 1D 00 04 */ stw r0, 4(r29) +lbl_8015E6F4: +/* 8015E6F4 0015B654 3B DE 00 0C */ addi r30, r30, 0xc +lbl_8015E6F8: +/* 8015E6F8 0015B658 80 1B 00 24 */ lwz r0, 0x24(r27) +/* 8015E6FC 0015B65C 80 7B 00 2C */ lwz r3, 0x2c(r27) +/* 8015E700 0015B660 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8015E704 0015B664 7C 03 02 14 */ add r0, r3, r0 +/* 8015E708 0015B668 7C 1E 00 40 */ cmplw r30, r0 +/* 8015E70C 0015B66C 40 82 FD AC */ bne lbl_8015E4B8 +/* 8015E710 0015B670 FC 20 E8 90 */ fmr f1, f29 +/* 8015E714 0015B674 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 8015E718 0015B678 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 8015E71C 0015B67C E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 +/* 8015E720 0015B680 CB C1 00 60 */ lfd f30, 0x60(r1) +/* 8015E724 0015B684 E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0 +/* 8015E728 0015B688 CB A1 00 50 */ lfd f29, 0x50(r1) +/* 8015E72C 0015B68C E3 81 00 48 */ psq_l f28, 72(r1), 0, qr0 +/* 8015E730 0015B690 CB 81 00 40 */ lfd f28, 0x40(r1) +/* 8015E734 0015B694 BB 01 00 20 */ lmw r24, 0x20(r1) +/* 8015E738 0015B698 80 01 00 84 */ lwz r0, 0x84(r1) +/* 8015E73C 0015B69C 7C 08 03 A6 */ mtlr r0 +/* 8015E740 0015B6A0 38 21 00 80 */ addi r1, r1, 0x80 +/* 8015E744 0015B6A4 4E 80 00 20 */ blr + +.global "GetGeneratorIds__22CScriptPickupGeneratorFR13CStateManager9TUniqueIdRQ24rstl18vector<9TUniqueId>" +"GetGeneratorIds__22CScriptPickupGeneratorFR13CStateManager9TUniqueIdRQ24rstl18vector<9TUniqueId>": +/* 8015E748 0015B6A8 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8015E74C 0015B6AC 7C 08 02 A6 */ mflr r0 +/* 8015E750 0015B6B0 90 01 00 44 */ stw r0, 0x44(r1) +/* 8015E754 0015B6B4 BF 61 00 2C */ stmw r27, 0x2c(r1) +/* 8015E758 0015B6B8 7C 7B 1B 78 */ mr r27, r3 +/* 8015E75C 0015B6BC 7C 9C 23 78 */ mr r28, r4 +/* 8015E760 0015B6C0 7C BD 2B 78 */ mr r29, r5 +/* 8015E764 0015B6C4 7C DE 33 78 */ mr r30, r6 +/* 8015E768 0015B6C8 80 63 00 24 */ lwz r3, 0x24(r3) +/* 8015E76C 0015B6CC 80 0D 8C E0 */ lwz r0, lbl_805A78A0@sda21(r13) +/* 8015E770 0015B6D0 90 61 00 18 */ stw r3, 0x18(r1) +/* 8015E774 0015B6D4 7C 00 18 00 */ cmpw r0, r3 +/* 8015E778 0015B6D8 38 6D 8C E0 */ addi r3, r13, lbl_805A78A0@sda21 +/* 8015E77C 0015B6DC 40 80 00 08 */ bge lbl_8015E784 +/* 8015E780 0015B6E0 38 61 00 18 */ addi r3, r1, 0x18 +lbl_8015E784: +/* 8015E784 0015B6E4 80 83 00 00 */ lwz r4, 0(r3) +/* 8015E788 0015B6E8 7F C3 F3 78 */ mr r3, r30 +/* 8015E78C 0015B6EC 4B EA DC 7D */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +/* 8015E790 0015B6F0 83 FB 00 2C */ lwz r31, 0x2c(r27) +/* 8015E794 0015B6F4 48 00 00 C0 */ b lbl_8015E854 +lbl_8015E798: +/* 8015E798 0015B6F8 80 1F 00 00 */ lwz r0, 0(r31) +/* 8015E79C 0015B6FC 2C 00 00 09 */ cmpwi r0, 9 +/* 8015E7A0 0015B700 40 82 00 B0 */ bne lbl_8015E850 +/* 8015E7A4 0015B704 80 1F 00 04 */ lwz r0, 4(r31) +/* 8015E7A8 0015B708 2C 00 00 06 */ cmpwi r0, 6 +/* 8015E7AC 0015B70C 40 82 00 A4 */ bne lbl_8015E850 +/* 8015E7B0 0015B710 80 1F 00 08 */ lwz r0, 8(r31) +/* 8015E7B4 0015B714 7F 84 E3 78 */ mr r4, r28 +/* 8015E7B8 0015B718 38 61 00 0C */ addi r3, r1, 0xc +/* 8015E7BC 0015B71C 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8015E7C0 0015B720 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015E7C4 0015B724 4B EE 97 59 */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 8015E7C8 0015B728 A0 61 00 0C */ lhz r3, 0xc(r1) +/* 8015E7CC 0015B72C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8015E7D0 0015B730 B0 61 00 10 */ sth r3, 0x10(r1) +/* 8015E7D4 0015B734 7C 03 00 40 */ cmplw r3, r0 +/* 8015E7D8 0015B738 41 82 00 78 */ beq lbl_8015E850 +/* 8015E7DC 0015B73C B0 61 00 08 */ sth r3, 8(r1) +/* 8015E7E0 0015B740 7F 83 E3 78 */ mr r3, r28 +/* 8015E7E4 0015B744 38 81 00 08 */ addi r4, r1, 8 +/* 8015E7E8 0015B748 4B EE DD BD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8015E7EC 0015B74C 28 03 00 00 */ cmplwi r3, 0 +/* 8015E7F0 0015B750 41 82 00 60 */ beq lbl_8015E850 +/* 8015E7F4 0015B754 88 03 00 30 */ lbz r0, 0x30(r3) +/* 8015E7F8 0015B758 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8015E7FC 0015B75C 41 82 00 54 */ beq lbl_8015E850 +/* 8015E800 0015B760 80 1E 00 04 */ lwz r0, 4(r30) +/* 8015E804 0015B764 80 BE 00 08 */ lwz r5, 8(r30) +/* 8015E808 0015B768 7C 00 28 00 */ cmpw r0, r5 +/* 8015E80C 0015B76C 41 80 00 1C */ blt lbl_8015E828 +/* 8015E810 0015B770 2C 05 00 00 */ cmpwi r5, 0 +/* 8015E814 0015B774 7F C3 F3 78 */ mr r3, r30 +/* 8015E818 0015B778 38 80 00 04 */ li r4, 4 +/* 8015E81C 0015B77C 41 82 00 08 */ beq lbl_8015E824 +/* 8015E820 0015B780 54 A4 08 3C */ slwi r4, r5, 1 +lbl_8015E824: +/* 8015E824 0015B784 4B EA DB E5 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +lbl_8015E828: +/* 8015E828 0015B788 80 1E 00 04 */ lwz r0, 4(r30) +/* 8015E82C 0015B78C 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 8015E830 0015B790 54 00 08 3C */ slwi r0, r0, 1 +/* 8015E834 0015B794 7C 63 02 15 */ add. r3, r3, r0 +/* 8015E838 0015B798 41 82 00 0C */ beq lbl_8015E844 +/* 8015E83C 0015B79C A0 01 00 10 */ lhz r0, 0x10(r1) +/* 8015E840 0015B7A0 B0 03 00 00 */ sth r0, 0(r3) +lbl_8015E844: +/* 8015E844 0015B7A4 80 7E 00 04 */ lwz r3, 4(r30) +/* 8015E848 0015B7A8 38 03 00 01 */ addi r0, r3, 1 +/* 8015E84C 0015B7AC 90 1E 00 04 */ stw r0, 4(r30) +lbl_8015E850: +/* 8015E850 0015B7B0 3B FF 00 0C */ addi r31, r31, 0xc +lbl_8015E854: +/* 8015E854 0015B7B4 80 1B 00 24 */ lwz r0, 0x24(r27) +/* 8015E858 0015B7B8 80 7B 00 2C */ lwz r3, 0x2c(r27) +/* 8015E85C 0015B7BC 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8015E860 0015B7C0 7C 03 02 14 */ add r0, r3, r0 +/* 8015E864 0015B7C4 7C 1F 00 40 */ cmplw r31, r0 +/* 8015E868 0015B7C8 40 82 FF 30 */ bne lbl_8015E798 +/* 8015E86C 0015B7CC 80 1E 00 04 */ lwz r0, 4(r30) +/* 8015E870 0015B7D0 2C 00 00 00 */ cmpwi r0, 0 +/* 8015E874 0015B7D4 40 82 00 50 */ bne lbl_8015E8C4 +/* 8015E878 0015B7D8 80 BE 00 08 */ lwz r5, 8(r30) +/* 8015E87C 0015B7DC 7C 00 28 00 */ cmpw r0, r5 +/* 8015E880 0015B7E0 41 80 00 1C */ blt lbl_8015E89C +/* 8015E884 0015B7E4 2C 05 00 00 */ cmpwi r5, 0 +/* 8015E888 0015B7E8 7F C3 F3 78 */ mr r3, r30 +/* 8015E88C 0015B7EC 38 80 00 04 */ li r4, 4 +/* 8015E890 0015B7F0 41 82 00 08 */ beq lbl_8015E898 +/* 8015E894 0015B7F4 54 A4 08 3C */ slwi r4, r5, 1 +lbl_8015E898: +/* 8015E898 0015B7F8 4B EA DB 71 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +lbl_8015E89C: +/* 8015E89C 0015B7FC 80 1E 00 04 */ lwz r0, 4(r30) +/* 8015E8A0 0015B800 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 8015E8A4 0015B804 54 00 08 3C */ slwi r0, r0, 1 +/* 8015E8A8 0015B808 7C 63 02 15 */ add. r3, r3, r0 +/* 8015E8AC 0015B80C 41 82 00 0C */ beq lbl_8015E8B8 +/* 8015E8B0 0015B810 A0 1D 00 00 */ lhz r0, 0(r29) +/* 8015E8B4 0015B814 B0 03 00 00 */ sth r0, 0(r3) +lbl_8015E8B8: +/* 8015E8B8 0015B818 80 7E 00 04 */ lwz r3, 4(r30) +/* 8015E8BC 0015B81C 38 03 00 01 */ addi r0, r3, 1 +/* 8015E8C0 0015B820 90 1E 00 04 */ stw r0, 4(r30) +lbl_8015E8C4: +/* 8015E8C4 0015B824 BB 61 00 2C */ lmw r27, 0x2c(r1) +/* 8015E8C8 0015B828 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8015E8CC 0015B82C 7C 08 03 A6 */ mtlr r0 +/* 8015E8D0 0015B830 38 21 00 40 */ addi r1, r1, 0x40 +/* 8015E8D4 0015B834 4E 80 00 20 */ blr + +.global __dt__22CScriptPickupGeneratorFv +__dt__22CScriptPickupGeneratorFv: +/* 8015E8D8 0015B838 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8015E8DC 0015B83C 7C 08 02 A6 */ mflr r0 +/* 8015E8E0 0015B840 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015E8E4 0015B844 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8015E8E8 0015B848 7C 9F 23 78 */ mr r31, r4 +/* 8015E8EC 0015B84C 93 C1 00 08 */ stw r30, 8(r1) +/* 8015E8F0 0015B850 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8015E8F4 0015B854 41 82 00 28 */ beq lbl_8015E91C +/* 8015E8F8 0015B858 3C A0 80 3E */ lis r5, lbl_803E3618@ha +/* 8015E8FC 0015B85C 38 80 00 00 */ li r4, 0 +/* 8015E900 0015B860 38 05 36 18 */ addi r0, r5, lbl_803E3618@l +/* 8015E904 0015B864 90 1E 00 00 */ stw r0, 0(r30) +/* 8015E908 0015B868 4B EF 29 6D */ bl __dt__7CEntityFv +/* 8015E90C 0015B86C 7F E0 07 35 */ extsh. r0, r31 +/* 8015E910 0015B870 40 81 00 0C */ ble lbl_8015E91C +/* 8015E914 0015B874 7F C3 F3 78 */ mr r3, r30 +/* 8015E918 0015B878 48 1B 70 19 */ bl Free__7CMemoryFPCv +lbl_8015E91C: +/* 8015E91C 0015B87C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8015E920 0015B880 7F C3 F3 78 */ mr r3, r30 +/* 8015E924 0015B884 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8015E928 0015B888 83 C1 00 08 */ lwz r30, 8(r1) +/* 8015E92C 0015B88C 7C 08 03 A6 */ mtlr r0 +/* 8015E930 0015B890 38 21 00 10 */ addi r1, r1, 0x10 +/* 8015E934 0015B894 4E 80 00 20 */ blr + +.global "__ct__22CScriptPickupGeneratorF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3ffb" +"__ct__22CScriptPickupGeneratorF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3ffb": +/* 8015E938 0015B898 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8015E93C 0015B89C 7C 08 02 A6 */ mflr r0 +/* 8015E940 0015B8A0 90 01 00 34 */ stw r0, 0x34(r1) +/* 8015E944 0015B8A4 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 8015E948 0015B8A8 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 8015E94C 0015B8AC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8015E950 0015B8B0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8015E954 0015B8B4 A0 04 00 00 */ lhz r0, 0(r4) +/* 8015E958 0015B8B8 7C A4 2B 78 */ mr r4, r5 +/* 8015E95C 0015B8BC FF E0 08 90 */ fmr f31, f1 +/* 8015E960 0015B8C0 7C FF 3B 78 */ mr r31, r7 +/* 8015E964 0015B8C4 B0 01 00 08 */ sth r0, 8(r1) +/* 8015E968 0015B8C8 7C C5 33 78 */ mr r5, r6 +/* 8015E96C 0015B8CC 7C 87 23 78 */ mr r7, r4 +/* 8015E970 0015B8D0 7C 7E 1B 78 */ mr r30, r3 +/* 8015E974 0015B8D4 7D 06 43 78 */ mr r6, r8 +/* 8015E978 0015B8D8 38 81 00 08 */ addi r4, r1, 8 +/* 8015E97C 0015B8DC 4B EF 29 A9 */ bl "__ct__7CEntityF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8015E980 0015B8E0 3C 60 80 3E */ lis r3, lbl_803E3618@ha +/* 8015E984 0015B8E4 C0 02 9F 34 */ lfs f0, lbl_805ABC54@sda21(r2) +/* 8015E988 0015B8E8 38 03 36 18 */ addi r0, r3, lbl_803E3618@l +/* 8015E98C 0015B8EC 7F C3 F3 78 */ mr r3, r30 +/* 8015E990 0015B8F0 90 1E 00 00 */ stw r0, 0(r30) +/* 8015E994 0015B8F4 C0 3F 00 00 */ lfs f1, 0(r31) +/* 8015E998 0015B8F8 D0 3E 00 34 */ stfs f1, 0x34(r30) +/* 8015E99C 0015B8FC C0 3F 00 04 */ lfs f1, 4(r31) +/* 8015E9A0 0015B900 D0 3E 00 38 */ stfs f1, 0x38(r30) +/* 8015E9A4 0015B904 C0 3F 00 08 */ lfs f1, 8(r31) +/* 8015E9A8 0015B908 D0 3E 00 3C */ stfs f1, 0x3c(r30) +/* 8015E9AC 0015B90C D3 FE 00 40 */ stfs f31, 0x40(r30) +/* 8015E9B0 0015B910 D0 1E 00 44 */ stfs f0, 0x44(r30) +/* 8015E9B4 0015B914 4B FF F8 6D */ bl ResetDelayTimer__22CScriptPickupGeneratorFv +/* 8015E9B8 0015B918 7F C3 F3 78 */ mr r3, r30 +/* 8015E9BC 0015B91C E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 8015E9C0 0015B920 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8015E9C4 0015B924 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 8015E9C8 0015B928 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8015E9CC 0015B92C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8015E9D0 0015B930 7C 08 03 A6 */ mtlr r0 +/* 8015E9D4 0015B934 38 21 00 30 */ addi r1, r1, 0x30 +/* 8015E9D8 0015B938 4E 80 00 20 */ blr + +.global sub_8015e9dc +sub_8015e9dc: +/* 8015E9DC 0015B93C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8015E9E0 0015B940 7C 08 02 A6 */ mflr r0 +/* 8015E9E4 0015B944 90 01 00 34 */ stw r0, 0x34(r1) +/* 8015E9E8 0015B948 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8015E9EC 0015B94C 7C 9F 23 78 */ mr r31, r4 +/* 8015E9F0 0015B950 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8015E9F4 0015B954 7C 7E 1B 78 */ mr r30, r3 +/* 8015E9F8 0015B958 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8015E9FC 0015B95C 80 03 00 08 */ lwz r0, 8(r3) +/* 8015EA00 0015B960 7C 1F 00 00 */ cmpw r31, r0 +/* 8015EA04 0015B964 40 81 00 B0 */ ble lbl_8015EAB4 +/* 8015EA08 0015B968 57 E3 18 39 */ rlwinm. r3, r31, 3, 0, 0x1c +/* 8015EA0C 0015B96C 40 82 00 0C */ bne lbl_8015EA18 +/* 8015EA10 0015B970 3B A0 00 00 */ li r29, 0 +/* 8015EA14 0015B974 48 00 00 18 */ b lbl_8015EA2C +lbl_8015EA18: +/* 8015EA18 0015B978 3C 80 80 3D */ lis r4, lbl_803D0390@ha +/* 8015EA1C 0015B97C 38 A0 00 00 */ li r5, 0 +/* 8015EA20 0015B980 38 84 03 90 */ addi r4, r4, lbl_803D0390@l +/* 8015EA24 0015B984 48 1B 6D F5 */ bl __nwa__FUlPCcPCc +/* 8015EA28 0015B988 7C 7D 1B 78 */ mr r29, r3 +lbl_8015EA2C: +/* 8015EA2C 0015B98C 80 1E 00 04 */ lwz r0, 4(r30) +/* 8015EA30 0015B990 7F A4 EB 78 */ mr r4, r29 +/* 8015EA34 0015B994 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 8015EA38 0015B998 54 00 18 38 */ slwi r0, r0, 3 +/* 8015EA3C 0015B99C 7C 65 02 14 */ add r3, r5, r0 +/* 8015EA40 0015B9A0 90 A1 00 10 */ stw r5, 0x10(r1) +/* 8015EA44 0015B9A4 90 61 00 08 */ stw r3, 8(r1) +/* 8015EA48 0015B9A8 90 61 00 0C */ stw r3, 0xc(r1) +/* 8015EA4C 0015B9AC 90 A1 00 14 */ stw r5, 0x14(r1) +/* 8015EA50 0015B9B0 48 00 00 24 */ b lbl_8015EA74 +lbl_8015EA54: +/* 8015EA54 0015B9B4 28 04 00 00 */ cmplwi r4, 0 +/* 8015EA58 0015B9B8 41 82 00 14 */ beq lbl_8015EA6C +/* 8015EA5C 0015B9BC C0 05 00 00 */ lfs f0, 0(r5) +/* 8015EA60 0015B9C0 D0 04 00 00 */ stfs f0, 0(r4) +/* 8015EA64 0015B9C4 80 05 00 04 */ lwz r0, 4(r5) +/* 8015EA68 0015B9C8 90 04 00 04 */ stw r0, 4(r4) +lbl_8015EA6C: +/* 8015EA6C 0015B9CC 38 84 00 08 */ addi r4, r4, 8 +/* 8015EA70 0015B9D0 38 A5 00 08 */ addi r5, r5, 8 +lbl_8015EA74: +/* 8015EA74 0015B9D4 7C 05 18 40 */ cmplw r5, r3 +/* 8015EA78 0015B9D8 40 82 FF DC */ bne lbl_8015EA54 +/* 8015EA7C 0015B9DC 80 1E 00 04 */ lwz r0, 4(r30) +/* 8015EA80 0015B9E0 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 8015EA84 0015B9E4 54 00 18 38 */ slwi r0, r0, 3 +/* 8015EA88 0015B9E8 7C 64 1B 78 */ mr r4, r3 +/* 8015EA8C 0015B9EC 7C 03 02 14 */ add r0, r3, r0 +/* 8015EA90 0015B9F0 48 00 00 08 */ b lbl_8015EA98 +lbl_8015EA94: +/* 8015EA94 0015B9F4 38 84 00 08 */ addi r4, r4, 8 +lbl_8015EA98: +/* 8015EA98 0015B9F8 7C 04 00 40 */ cmplw r4, r0 +/* 8015EA9C 0015B9FC 40 82 FF F8 */ bne lbl_8015EA94 +/* 8015EAA0 0015BA00 28 03 00 00 */ cmplwi r3, 0 +/* 8015EAA4 0015BA04 41 82 00 08 */ beq lbl_8015EAAC +/* 8015EAA8 0015BA08 48 1B 6E 89 */ bl Free__7CMemoryFPCv +lbl_8015EAAC: +/* 8015EAAC 0015BA0C 93 BE 00 0C */ stw r29, 0xc(r30) +/* 8015EAB0 0015BA10 93 FE 00 08 */ stw r31, 8(r30) +lbl_8015EAB4: +/* 8015EAB4 0015BA14 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8015EAB8 0015BA18 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8015EABC 0015BA1C 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8015EAC0 0015BA20 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8015EAC4 0015BA24 7C 08 03 A6 */ mtlr r0 +/* 8015EAC8 0015BA28 38 21 00 30 */ addi r1, r1, 0x30 +/* 8015EACC 0015BA2C 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptPlayerHint.s b/asm/Kyoto_CWD/ScriptObjects/CScriptPlayerHint.s new file mode 100644 index 00000000..c89f9f08 --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptPlayerHint.s @@ -0,0 +1,406 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__17CScriptPlayerHintFv +__dt__17CScriptPlayerHintFv: +/* 8015B854 001587B4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8015B858 001587B8 7C 08 02 A6 */ mflr r0 +/* 8015B85C 001587BC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015B860 001587C0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8015B864 001587C4 7C 9F 23 78 */ mr r31, r4 +/* 8015B868 001587C8 93 C1 00 08 */ stw r30, 8(r1) +/* 8015B86C 001587CC 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8015B870 001587D0 41 82 00 88 */ beq lbl_8015B8F8 +/* 8015B874 001587D4 3C 60 80 3E */ lis r3, lbl_803E32D8@ha +/* 8015B878 001587D8 34 1E 00 E8 */ addic. r0, r30, 0xe8 +/* 8015B87C 001587DC 38 03 32 D8 */ addi r0, r3, lbl_803E32D8@l +/* 8015B880 001587E0 90 1E 00 00 */ stw r0, 0(r30) +/* 8015B884 001587E4 41 82 00 58 */ beq lbl_8015B8DC +/* 8015B888 001587E8 80 BE 00 E8 */ lwz r5, 0xe8(r30) +/* 8015B88C 001587EC 38 60 00 00 */ li r3, 0 +/* 8015B890 001587F0 2C 05 00 00 */ cmpwi r5, 0 +/* 8015B894 001587F4 40 81 00 40 */ ble lbl_8015B8D4 +/* 8015B898 001587F8 2C 05 00 08 */ cmpwi r5, 8 +/* 8015B89C 001587FC 38 85 FF F8 */ addi r4, r5, -8 +/* 8015B8A0 00158800 40 81 00 20 */ ble lbl_8015B8C0 +/* 8015B8A4 00158804 38 04 00 07 */ addi r0, r4, 7 +/* 8015B8A8 00158808 54 00 E8 FE */ srwi r0, r0, 3 +/* 8015B8AC 0015880C 7C 09 03 A6 */ mtctr r0 +/* 8015B8B0 00158810 2C 04 00 00 */ cmpwi r4, 0 +/* 8015B8B4 00158814 40 81 00 0C */ ble lbl_8015B8C0 +lbl_8015B8B8: +/* 8015B8B8 00158818 38 63 00 08 */ addi r3, r3, 8 +/* 8015B8BC 0015881C 42 00 FF FC */ bdnz lbl_8015B8B8 +lbl_8015B8C0: +/* 8015B8C0 00158820 7C 03 28 50 */ subf r0, r3, r5 +/* 8015B8C4 00158824 7C 09 03 A6 */ mtctr r0 +/* 8015B8C8 00158828 7C 03 28 00 */ cmpw r3, r5 +/* 8015B8CC 0015882C 40 80 00 08 */ bge lbl_8015B8D4 +lbl_8015B8D0: +/* 8015B8D0 00158830 42 00 00 00 */ bdnz lbl_8015B8D0 +lbl_8015B8D4: +/* 8015B8D4 00158834 38 00 00 00 */ li r0, 0 +/* 8015B8D8 00158838 90 1E 00 E8 */ stw r0, 0xe8(r30) +lbl_8015B8DC: +/* 8015B8DC 0015883C 7F C3 F3 78 */ mr r3, r30 +/* 8015B8E0 00158840 38 80 00 00 */ li r4, 0 +/* 8015B8E4 00158844 4B EF 9E 0D */ bl __dt__6CActorFv +/* 8015B8E8 00158848 7F E0 07 35 */ extsh. r0, r31 +/* 8015B8EC 0015884C 40 81 00 0C */ ble lbl_8015B8F8 +/* 8015B8F0 00158850 7F C3 F3 78 */ mr r3, r30 +/* 8015B8F4 00158854 48 1B A0 3D */ bl Free__7CMemoryFPCv +lbl_8015B8F8: +/* 8015B8F8 00158858 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8015B8FC 0015885C 7F C3 F3 78 */ mr r3, r30 +/* 8015B900 00158860 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8015B904 00158864 83 C1 00 08 */ lwz r30, 8(r1) +/* 8015B908 00158868 7C 08 03 A6 */ mtlr r0 +/* 8015B90C 0015886C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8015B910 00158870 4E 80 00 20 */ blr + +.global Accept__17CScriptPlayerHintFR8IVisitor +Accept__17CScriptPlayerHintFR8IVisitor: +/* 8015B914 00158874 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8015B918 00158878 7C 08 02 A6 */ mflr r0 +/* 8015B91C 0015887C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015B920 00158880 7C 60 1B 78 */ mr r0, r3 +/* 8015B924 00158884 7C 83 23 78 */ mr r3, r4 +/* 8015B928 00158888 81 84 00 00 */ lwz r12, 0(r4) +/* 8015B92C 0015888C 7C 04 03 78 */ mr r4, r0 +/* 8015B930 00158890 81 8C 00 A0 */ lwz r12, 0xa0(r12) +/* 8015B934 00158894 7D 89 03 A6 */ mtctr r12 +/* 8015B938 00158898 4E 80 04 21 */ bctrl +/* 8015B93C 0015889C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8015B940 001588A0 7C 08 03 A6 */ mtlr r0 +/* 8015B944 001588A4 38 21 00 10 */ addi r1, r1, 0x10 +/* 8015B948 001588A8 4E 80 00 20 */ blr + +.global AcceptScriptMsg__17CScriptPlayerHintF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__17CScriptPlayerHintF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8015B94C 001588AC 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 8015B950 001588B0 7C 08 02 A6 */ mflr r0 +/* 8015B954 001588B4 90 01 00 64 */ stw r0, 0x64(r1) +/* 8015B958 001588B8 BF 61 00 4C */ stmw r27, 0x4c(r1) +/* 8015B95C 001588BC 7C 9D 23 78 */ mr r29, r4 +/* 8015B960 001588C0 2C 1D 00 07 */ cmpwi r29, 7 +/* 8015B964 001588C4 7C 7C 1B 78 */ mr r28, r3 +/* 8015B968 001588C8 7C BE 2B 78 */ mr r30, r5 +/* 8015B96C 001588CC 7C DF 33 78 */ mr r31, r6 +/* 8015B970 001588D0 41 82 00 60 */ beq lbl_8015B9D0 +/* 8015B974 001588D4 40 80 00 10 */ bge lbl_8015B984 +/* 8015B978 001588D8 2C 1D 00 04 */ cmpwi r29, 4 +/* 8015B97C 001588DC 41 82 00 14 */ beq lbl_8015B990 +/* 8015B980 001588E0 48 00 00 EC */ b lbl_8015BA6C +lbl_8015B984: +/* 8015B984 001588E4 2C 1D 00 22 */ cmpwi r29, 0x22 +/* 8015B988 001588E8 41 82 00 08 */ beq lbl_8015B990 +/* 8015B98C 001588EC 48 00 00 E0 */ b lbl_8015BA6C +lbl_8015B990: +/* 8015B990 001588F0 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8015B994 001588F4 7F 83 E3 78 */ mr r3, r28 +/* 8015B998 001588F8 7F E5 FB 78 */ mr r5, r31 +/* 8015B99C 001588FC 38 81 00 34 */ addi r4, r1, 0x34 +/* 8015B9A0 00158900 B0 01 00 34 */ sth r0, 0x34(r1) +/* 8015B9A4 00158904 48 00 01 99 */ bl RemoveFromObjectList__17CScriptPlayerHintF9TUniqueIdR13CStateManager +/* 8015B9A8 00158908 A0 1C 00 08 */ lhz r0, 8(r28) +/* 8015B9AC 0015890C 7F E5 FB 78 */ mr r5, r31 +/* 8015B9B0 00158910 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8015B9B4 00158914 38 81 00 30 */ addi r4, r1, 0x30 +/* 8015B9B8 00158918 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 8015B9BC 0015891C B0 01 00 30 */ sth r0, 0x30(r1) +/* 8015B9C0 00158920 48 12 89 B5 */ bl AddToPlayerHintRemoveList__7CPlayerF9TUniqueIdR13CStateManager +/* 8015B9C4 00158924 38 00 00 01 */ li r0, 1 +/* 8015B9C8 00158928 98 1C 00 FC */ stb r0, 0xfc(r28) +/* 8015B9CC 0015892C 48 00 00 A0 */ b lbl_8015BA6C +lbl_8015B9D0: +/* 8015B9D0 00158930 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8015B9D4 00158934 B0 1C 01 08 */ sth r0, 0x108(r28) +/* 8015B9D8 00158938 80 1C 01 04 */ lwz r0, 0x104(r28) +/* 8015B9DC 0015893C 54 00 04 63 */ rlwinm. r0, r0, 0, 0x11, 0x11 +/* 8015B9E0 00158940 41 82 00 8C */ beq lbl_8015BA6C +/* 8015B9E4 00158944 83 7C 00 2C */ lwz r27, 0x2c(r28) +/* 8015B9E8 00158948 48 00 00 6C */ b lbl_8015BA54 +lbl_8015B9EC: +/* 8015B9EC 0015894C 80 1B 00 00 */ lwz r0, 0(r27) +/* 8015B9F0 00158950 2C 00 00 12 */ cmpwi r0, 0x12 +/* 8015B9F4 00158954 40 82 00 5C */ bne lbl_8015BA50 +/* 8015B9F8 00158958 80 1B 00 08 */ lwz r0, 8(r27) +/* 8015B9FC 0015895C 7F E4 FB 78 */ mr r4, r31 +/* 8015BA00 00158960 38 61 00 28 */ addi r3, r1, 0x28 +/* 8015BA04 00158964 38 A1 00 38 */ addi r5, r1, 0x38 +/* 8015BA08 00158968 90 01 00 38 */ stw r0, 0x38(r1) +/* 8015BA0C 0015896C 4B EE C5 11 */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 8015BA10 00158970 A0 01 00 28 */ lhz r0, 0x28(r1) +/* 8015BA14 00158974 7F E3 FB 78 */ mr r3, r31 +/* 8015BA18 00158978 38 81 00 24 */ addi r4, r1, 0x24 +/* 8015BA1C 0015897C B0 1C 01 08 */ sth r0, 0x108(r28) +/* 8015BA20 00158980 A0 1C 01 08 */ lhz r0, 0x108(r28) +/* 8015BA24 00158984 B0 01 00 24 */ sth r0, 0x24(r1) +/* 8015BA28 00158988 4B EF 0B 7D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8015BA2C 0015898C 7C 64 1B 78 */ mr r4, r3 +/* 8015BA30 00158990 38 61 00 3C */ addi r3, r1, 0x3c +/* 8015BA34 00158994 4B F5 16 B5 */ bl "__ct__32TCastToPtr<18CMetroidPrimeRelay>FP7CEntity" +/* 8015BA38 00158998 80 63 00 04 */ lwz r3, 4(r3) +/* 8015BA3C 0015899C 28 03 00 00 */ cmplwi r3, 0 +/* 8015BA40 001589A0 41 82 00 10 */ beq lbl_8015BA50 +/* 8015BA44 001589A4 A0 03 00 34 */ lhz r0, 0x34(r3) +/* 8015BA48 001589A8 B0 1C 01 08 */ sth r0, 0x108(r28) +/* 8015BA4C 001589AC 48 00 00 20 */ b lbl_8015BA6C +lbl_8015BA50: +/* 8015BA50 001589B0 3B 7B 00 0C */ addi r27, r27, 0xc +lbl_8015BA54: +/* 8015BA54 001589B4 80 1C 00 24 */ lwz r0, 0x24(r28) +/* 8015BA58 001589B8 80 7C 00 2C */ lwz r3, 0x2c(r28) +/* 8015BA5C 001589BC 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8015BA60 001589C0 7C 03 02 14 */ add r0, r3, r0 +/* 8015BA64 001589C4 7C 1B 00 40 */ cmplw r27, r0 +/* 8015BA68 001589C8 40 82 FF 84 */ bne lbl_8015B9EC +lbl_8015BA6C: +/* 8015BA6C 001589CC 88 1C 00 30 */ lbz r0, 0x30(r28) +/* 8015BA70 001589D0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8015BA74 001589D4 41 82 00 98 */ beq lbl_8015BB0C +/* 8015BA78 001589D8 2C 1D 00 06 */ cmpwi r29, 6 +/* 8015BA7C 001589DC 83 7F 08 4C */ lwz r27, 0x84c(r31) +/* 8015BA80 001589E0 41 82 00 8C */ beq lbl_8015BB0C +/* 8015BA84 001589E4 40 80 00 10 */ bge lbl_8015BA94 +/* 8015BA88 001589E8 2C 1D 00 05 */ cmpwi r29, 5 +/* 8015BA8C 001589EC 40 80 00 4C */ bge lbl_8015BAD8 +/* 8015BA90 001589F0 48 00 00 7C */ b lbl_8015BB0C +lbl_8015BA94: +/* 8015BA94 001589F4 2C 1D 00 08 */ cmpwi r29, 8 +/* 8015BA98 001589F8 40 80 00 74 */ bge lbl_8015BB0C +/* 8015BA9C 001589FC A0 1E 00 00 */ lhz r0, 0(r30) +/* 8015BAA0 00158A00 7F 83 E3 78 */ mr r3, r28 +/* 8015BAA4 00158A04 38 81 00 20 */ addi r4, r1, 0x20 +/* 8015BAA8 00158A08 B0 01 00 20 */ sth r0, 0x20(r1) +/* 8015BAAC 00158A0C 48 00 01 61 */ bl AddToObjectList__17CScriptPlayerHintF9TUniqueIdR13CStateManager +/* 8015BAB0 00158A10 A0 1C 00 08 */ lhz r0, 8(r28) +/* 8015BAB4 00158A14 7F 63 DB 78 */ mr r3, r27 +/* 8015BAB8 00158A18 7F E5 FB 78 */ mr r5, r31 +/* 8015BABC 00158A1C 38 81 00 1C */ addi r4, r1, 0x1c +/* 8015BAC0 00158A20 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8015BAC4 00158A24 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8015BAC8 00158A28 48 12 8A 3D */ bl AddToPlayerHintAddList__7CPlayerF9TUniqueIdR13CStateManager +/* 8015BACC 00158A2C 38 00 00 00 */ li r0, 0 +/* 8015BAD0 00158A30 98 1C 00 FC */ stb r0, 0xfc(r28) +/* 8015BAD4 00158A34 48 00 00 38 */ b lbl_8015BB0C +lbl_8015BAD8: +/* 8015BAD8 00158A38 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8015BADC 00158A3C 7F 83 E3 78 */ mr r3, r28 +/* 8015BAE0 00158A40 7F E5 FB 78 */ mr r5, r31 +/* 8015BAE4 00158A44 38 81 00 14 */ addi r4, r1, 0x14 +/* 8015BAE8 00158A48 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8015BAEC 00158A4C 48 00 00 51 */ bl RemoveFromObjectList__17CScriptPlayerHintF9TUniqueIdR13CStateManager +/* 8015BAF0 00158A50 A0 1C 00 08 */ lhz r0, 8(r28) +/* 8015BAF4 00158A54 7F 63 DB 78 */ mr r3, r27 +/* 8015BAF8 00158A58 7F E5 FB 78 */ mr r5, r31 +/* 8015BAFC 00158A5C 38 81 00 10 */ addi r4, r1, 0x10 +/* 8015BB00 00158A60 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8015BB04 00158A64 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8015BB08 00158A68 48 12 88 6D */ bl AddToPlayerHintRemoveList__7CPlayerF9TUniqueIdR13CStateManager +lbl_8015BB0C: +/* 8015BB0C 00158A6C A0 1E 00 00 */ lhz r0, 0(r30) +/* 8015BB10 00158A70 7F 83 E3 78 */ mr r3, r28 +/* 8015BB14 00158A74 7F A4 EB 78 */ mr r4, r29 +/* 8015BB18 00158A78 7F E6 FB 78 */ mr r6, r31 +/* 8015BB1C 00158A7C B0 01 00 08 */ sth r0, 8(r1) +/* 8015BB20 00158A80 38 A1 00 08 */ addi r5, r1, 8 +/* 8015BB24 00158A84 4B EF 7A F1 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8015BB28 00158A88 BB 61 00 4C */ lmw r27, 0x4c(r1) +/* 8015BB2C 00158A8C 80 01 00 64 */ lwz r0, 0x64(r1) +/* 8015BB30 00158A90 7C 08 03 A6 */ mtlr r0 +/* 8015BB34 00158A94 38 21 00 60 */ addi r1, r1, 0x60 +/* 8015BB38 00158A98 4E 80 00 20 */ blr + +.global RemoveFromObjectList__17CScriptPlayerHintF9TUniqueIdR13CStateManager +RemoveFromObjectList__17CScriptPlayerHintF9TUniqueIdR13CStateManager: +/* 8015BB3C 00158A9C 80 03 00 E8 */ lwz r0, 0xe8(r3) +/* 8015BB40 00158AA0 2C 00 00 00 */ cmpwi r0, 0 +/* 8015BB44 00158AA4 4D 82 00 20 */ beqlr +/* 8015BB48 00158AA8 38 E3 00 EC */ addi r7, r3, 0xec +/* 8015BB4C 00158AAC 54 00 08 3C */ slwi r0, r0, 1 +/* 8015BB50 00158AB0 7C E6 3B 78 */ mr r6, r7 +/* 8015BB54 00158AB4 7D 07 02 14 */ add r8, r7, r0 +/* 8015BB58 00158AB8 48 00 00 08 */ b lbl_8015BB60 +lbl_8015BB5C: +/* 8015BB5C 00158ABC 38 C6 00 02 */ addi r6, r6, 2 +lbl_8015BB60: +/* 8015BB60 00158AC0 7C 06 40 40 */ cmplw r6, r8 +/* 8015BB64 00158AC4 41 82 00 14 */ beq lbl_8015BB78 +/* 8015BB68 00158AC8 A0 A6 00 00 */ lhz r5, 0(r6) +/* 8015BB6C 00158ACC A0 04 00 00 */ lhz r0, 0(r4) +/* 8015BB70 00158AD0 7C 05 00 40 */ cmplw r5, r0 +/* 8015BB74 00158AD4 40 82 FF E8 */ bne lbl_8015BB5C +lbl_8015BB78: +/* 8015BB78 00158AD8 7C 06 40 40 */ cmplw r6, r8 +/* 8015BB7C 00158ADC 40 82 00 4C */ bne lbl_8015BBC8 +/* 8015BB80 00158AE0 7C 07 38 40 */ cmplw r7, r7 +/* 8015BB84 00158AE4 4D 80 00 20 */ bltlr +/* 8015BB88 00158AE8 7C 07 40 40 */ cmplw r7, r8 +/* 8015BB8C 00158AEC 4C 80 00 20 */ bgelr +/* 8015BB90 00158AF0 7C E6 3B 78 */ mr r6, r7 +/* 8015BB94 00158AF4 48 00 00 10 */ b lbl_8015BBA4 +lbl_8015BB98: +/* 8015BB98 00158AF8 A0 06 00 02 */ lhz r0, 2(r6) +/* 8015BB9C 00158AFC B0 06 00 00 */ sth r0, 0(r6) +/* 8015BBA0 00158B00 38 C6 00 02 */ addi r6, r6, 2 +lbl_8015BBA4: +/* 8015BBA4 00158B04 80 A3 00 E8 */ lwz r5, 0xe8(r3) +/* 8015BBA8 00158B08 54 A4 08 3C */ slwi r4, r5, 1 +/* 8015BBAC 00158B0C 38 04 FF FE */ addi r0, r4, -2 +/* 8015BBB0 00158B10 7C 07 02 14 */ add r0, r7, r0 +/* 8015BBB4 00158B14 7C 06 00 40 */ cmplw r6, r0 +/* 8015BBB8 00158B18 41 80 FF E0 */ blt lbl_8015BB98 +/* 8015BBBC 00158B1C 38 05 FF FF */ addi r0, r5, -1 +/* 8015BBC0 00158B20 90 03 00 E8 */ stw r0, 0xe8(r3) +/* 8015BBC4 00158B24 4E 80 00 20 */ blr +lbl_8015BBC8: +/* 8015BBC8 00158B28 7C 06 38 40 */ cmplw r6, r7 +/* 8015BBCC 00158B2C 4D 80 00 20 */ bltlr +/* 8015BBD0 00158B30 7C 06 40 40 */ cmplw r6, r8 +/* 8015BBD4 00158B34 4C 80 00 20 */ bgelr +/* 8015BBD8 00158B38 48 00 00 10 */ b lbl_8015BBE8 +lbl_8015BBDC: +/* 8015BBDC 00158B3C A0 06 00 02 */ lhz r0, 2(r6) +/* 8015BBE0 00158B40 B0 06 00 00 */ sth r0, 0(r6) +/* 8015BBE4 00158B44 38 C6 00 02 */ addi r6, r6, 2 +lbl_8015BBE8: +/* 8015BBE8 00158B48 80 A3 00 E8 */ lwz r5, 0xe8(r3) +/* 8015BBEC 00158B4C 54 A4 08 3C */ slwi r4, r5, 1 +/* 8015BBF0 00158B50 38 04 FF FE */ addi r0, r4, -2 +/* 8015BBF4 00158B54 7C 07 02 14 */ add r0, r7, r0 +/* 8015BBF8 00158B58 7C 06 00 40 */ cmplw r6, r0 +/* 8015BBFC 00158B5C 41 80 FF E0 */ blt lbl_8015BBDC +/* 8015BC00 00158B60 38 05 FF FF */ addi r0, r5, -1 +/* 8015BC04 00158B64 90 03 00 E8 */ stw r0, 0xe8(r3) +/* 8015BC08 00158B68 4E 80 00 20 */ blr + +.global AddToObjectList__17CScriptPlayerHintF9TUniqueIdR13CStateManager +AddToObjectList__17CScriptPlayerHintF9TUniqueIdR13CStateManager: +/* 8015BC0C 00158B6C 80 03 00 E8 */ lwz r0, 0xe8(r3) +/* 8015BC10 00158B70 38 C3 00 EC */ addi r6, r3, 0xec +/* 8015BC14 00158B74 54 00 08 3C */ slwi r0, r0, 1 +/* 8015BC18 00158B78 7C E6 02 14 */ add r7, r6, r0 +/* 8015BC1C 00158B7C 48 00 00 08 */ b lbl_8015BC24 +lbl_8015BC20: +/* 8015BC20 00158B80 38 C6 00 02 */ addi r6, r6, 2 +lbl_8015BC24: +/* 8015BC24 00158B84 7C 06 38 40 */ cmplw r6, r7 +/* 8015BC28 00158B88 41 82 00 14 */ beq lbl_8015BC3C +/* 8015BC2C 00158B8C A0 A6 00 00 */ lhz r5, 0(r6) +/* 8015BC30 00158B90 A0 04 00 00 */ lhz r0, 0(r4) +/* 8015BC34 00158B94 7C 05 00 40 */ cmplw r5, r0 +/* 8015BC38 00158B98 40 82 FF E8 */ bne lbl_8015BC20 +lbl_8015BC3C: +/* 8015BC3C 00158B9C 7C 06 38 40 */ cmplw r6, r7 +/* 8015BC40 00158BA0 4C 82 00 20 */ bnelr +/* 8015BC44 00158BA4 28 07 00 00 */ cmplwi r7, 0 +/* 8015BC48 00158BA8 41 82 00 0C */ beq lbl_8015BC54 +/* 8015BC4C 00158BAC A0 04 00 00 */ lhz r0, 0(r4) +/* 8015BC50 00158BB0 B0 07 00 00 */ sth r0, 0(r7) +lbl_8015BC54: +/* 8015BC54 00158BB4 80 83 00 E8 */ lwz r4, 0xe8(r3) +/* 8015BC58 00158BB8 38 04 00 01 */ addi r0, r4, 1 +/* 8015BC5C 00158BBC 90 03 00 E8 */ stw r0, 0xe8(r3) +/* 8015BC60 00158BC0 4E 80 00 20 */ blr + +.global ClearObjectList__17CScriptPlayerHintFv +ClearObjectList__17CScriptPlayerHintFv: +/* 8015BC64 00158BC4 80 C3 00 E8 */ lwz r6, 0xe8(r3) +/* 8015BC68 00158BC8 38 80 00 00 */ li r4, 0 +/* 8015BC6C 00158BCC 2C 06 00 00 */ cmpwi r6, 0 +/* 8015BC70 00158BD0 40 81 00 40 */ ble lbl_8015BCB0 +/* 8015BC74 00158BD4 2C 06 00 08 */ cmpwi r6, 8 +/* 8015BC78 00158BD8 38 A6 FF F8 */ addi r5, r6, -8 +/* 8015BC7C 00158BDC 40 81 00 20 */ ble lbl_8015BC9C +/* 8015BC80 00158BE0 38 05 00 07 */ addi r0, r5, 7 +/* 8015BC84 00158BE4 54 00 E8 FE */ srwi r0, r0, 3 +/* 8015BC88 00158BE8 7C 09 03 A6 */ mtctr r0 +/* 8015BC8C 00158BEC 2C 05 00 00 */ cmpwi r5, 0 +/* 8015BC90 00158BF0 40 81 00 0C */ ble lbl_8015BC9C +lbl_8015BC94: +/* 8015BC94 00158BF4 38 84 00 08 */ addi r4, r4, 8 +/* 8015BC98 00158BF8 42 00 FF FC */ bdnz lbl_8015BC94 +lbl_8015BC9C: +/* 8015BC9C 00158BFC 7C 04 30 50 */ subf r0, r4, r6 +/* 8015BCA0 00158C00 7C 09 03 A6 */ mtctr r0 +/* 8015BCA4 00158C04 7C 04 30 00 */ cmpw r4, r6 +/* 8015BCA8 00158C08 40 80 00 08 */ bge lbl_8015BCB0 +lbl_8015BCAC: +/* 8015BCAC 00158C0C 42 00 00 00 */ bdnz lbl_8015BCAC +lbl_8015BCB0: +/* 8015BCB0 00158C10 38 00 00 00 */ li r0, 0 +/* 8015BCB4 00158C14 90 03 00 E8 */ stw r0, 0xe8(r3) +/* 8015BCB8 00158C18 4E 80 00 20 */ blr + +.global "__ct__17CScriptPlayerHintF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fbii" +"__ct__17CScriptPlayerHintF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fbii": +/* 8015BCBC 00158C1C 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 8015BCC0 00158C20 7C 08 02 A6 */ mflr r0 +/* 8015BCC4 00158C24 90 01 01 04 */ stw r0, 0x104(r1) +/* 8015BCC8 00158C28 BF 01 00 E0 */ stmw r24, 0xe0(r1) +/* 8015BCCC 00158C2C 7C 7F 1B 78 */ mr r31, r3 +/* 8015BCD0 00158C30 7C 98 23 78 */ mr r24, r4 +/* 8015BCD4 00158C34 7C B9 2B 78 */ mr r25, r5 +/* 8015BCD8 00158C38 7C DA 33 78 */ mr r26, r6 +/* 8015BCDC 00158C3C 7C FB 3B 78 */ mr r27, r7 +/* 8015BCE0 00158C40 7D 1C 43 78 */ mr r28, r8 +/* 8015BCE4 00158C44 7D 3D 4B 78 */ mr r29, r9 +/* 8015BCE8 00158C48 7D 5E 53 78 */ mr r30, r10 +/* 8015BCEC 00158C4C 38 61 00 88 */ addi r3, r1, 0x88 +/* 8015BCF0 00158C50 4B ED EA B5 */ bl CModelDataNull__10CModelDataFv +/* 8015BCF4 00158C54 38 61 00 20 */ addi r3, r1, 0x20 +/* 8015BCF8 00158C58 4B EB F1 41 */ bl None__16CActorParametersFv +/* 8015BCFC 00158C5C A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 8015BD00 00158C60 38 00 00 00 */ li r0, 0 +/* 8015BD04 00158C64 80 AD 8C B0 */ lwz r5, lbl_805A7870@sda21(r13) +/* 8015BD08 00158C68 38 60 00 00 */ li r3, 0 +/* 8015BD0C 00158C6C B0 81 00 10 */ sth r4, 0x10(r1) +/* 8015BD10 00158C70 38 80 00 01 */ li r4, 1 +/* 8015BD14 00158C74 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8015BD18 00158C78 90 01 00 18 */ stw r0, 0x18(r1) +/* 8015BD1C 00158C7C 48 22 E1 D9 */ bl __shl2i +/* 8015BD20 00158C80 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 8015BD24 00158C84 39 61 00 20 */ addi r11, r1, 0x20 +/* 8015BD28 00158C88 80 C1 00 1C */ lwz r6, 0x1c(r1) +/* 8015BD2C 00158C8C 38 01 00 10 */ addi r0, r1, 0x10 +/* 8015BD30 00158C90 7C A3 1B 78 */ or r3, r5, r3 +/* 8015BD34 00158C94 A1 38 00 00 */ lhz r9, 0(r24) +/* 8015BD38 00158C98 7C C4 23 78 */ or r4, r6, r4 +/* 8015BD3C 00158C9C 90 61 00 18 */ stw r3, 0x18(r1) +/* 8015BD40 00158CA0 7F E3 FB 78 */ mr r3, r31 +/* 8015BD44 00158CA4 7F 85 E3 78 */ mr r5, r28 +/* 8015BD48 00158CA8 90 81 00 1C */ stw r4, 0x1c(r1) +/* 8015BD4C 00158CAC 7F 26 CB 78 */ mr r6, r25 +/* 8015BD50 00158CB0 7F 47 D3 78 */ mr r7, r26 +/* 8015BD54 00158CB4 7F 68 DB 78 */ mr r8, r27 +/* 8015BD58 00158CB8 B1 21 00 14 */ sth r9, 0x14(r1) +/* 8015BD5C 00158CBC 38 81 00 14 */ addi r4, r1, 0x14 +/* 8015BD60 00158CC0 39 21 00 88 */ addi r9, r1, 0x88 +/* 8015BD64 00158CC4 39 41 00 18 */ addi r10, r1, 0x18 +/* 8015BD68 00158CC8 91 61 00 08 */ stw r11, 8(r1) +/* 8015BD6C 00158CCC 90 01 00 0C */ stw r0, 0xc(r1) +/* 8015BD70 00158CD0 4B EF 9A B1 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" +/* 8015BD74 00158CD4 38 61 00 20 */ addi r3, r1, 0x20 +/* 8015BD78 00158CD8 38 80 FF FF */ li r4, -1 +/* 8015BD7C 00158CDC 4B FA A8 8D */ bl __dt__16CActorParametersFv +/* 8015BD80 00158CE0 38 61 00 88 */ addi r3, r1, 0x88 +/* 8015BD84 00158CE4 38 80 FF FF */ li r4, -1 +/* 8015BD88 00158CE8 4B FB AC C5 */ bl __dt__10CModelDataFv +/* 8015BD8C 00158CEC 3C 60 80 3E */ lis r3, lbl_803E32D8@ha +/* 8015BD90 00158CF0 38 00 00 00 */ li r0, 0 +/* 8015BD94 00158CF4 38 83 32 D8 */ addi r4, r3, lbl_803E32D8@l +/* 8015BD98 00158CF8 7F E3 FB 78 */ mr r3, r31 +/* 8015BD9C 00158CFC 90 9F 00 00 */ stw r4, 0(r31) +/* 8015BDA0 00158D00 90 1F 00 E8 */ stw r0, 0xe8(r31) +/* 8015BDA4 00158D04 98 1F 00 FC */ stb r0, 0xfc(r31) +/* 8015BDA8 00158D08 93 BF 01 00 */ stw r29, 0x100(r31) +/* 8015BDAC 00158D0C 93 DF 01 04 */ stw r30, 0x104(r31) +/* 8015BDB0 00158D10 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8015BDB4 00158D14 B0 1F 01 08 */ sth r0, 0x108(r31) +/* 8015BDB8 00158D18 BB 01 00 E0 */ lmw r24, 0xe0(r1) +/* 8015BDBC 00158D1C 80 01 01 04 */ lwz r0, 0x104(r1) +/* 8015BDC0 00158D20 7C 08 03 A6 */ mtlr r0 +/* 8015BDC4 00158D24 38 21 01 00 */ addi r1, r1, 0x100 +/* 8015BDC8 00158D28 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptPointOfInterest.s b/asm/Kyoto_CWD/ScriptObjects/CScriptPointOfInterest.s new file mode 100644 index 00000000..b4277078 --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptPointOfInterest.s @@ -0,0 +1,258 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global CalculateRenderBounds__22CScriptPointOfInterestFv +CalculateRenderBounds__22CScriptPointOfInterestFv: +/* 8015EAD0 0015BA30 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8015EAD4 0015BA34 7C 08 02 A6 */ mflr r0 +/* 8015EAD8 0015BA38 C0 02 9F 60 */ lfs f0, lbl_805ABC80@sda21(r2) +/* 8015EADC 0015BA3C 90 01 00 44 */ stw r0, 0x44(r1) +/* 8015EAE0 0015BA40 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8015EAE4 0015BA44 7C 7F 1B 78 */ mr r31, r3 +/* 8015EAE8 0015BA48 C0 E3 00 E8 */ lfs f7, 0xe8(r3) +/* 8015EAEC 0015BA4C FC 00 38 00 */ fcmpu cr0, f0, f7 +/* 8015EAF0 0015BA50 40 82 00 0C */ bne lbl_8015EAFC +/* 8015EAF4 0015BA54 4B EF 65 E1 */ bl CalculateRenderBounds__6CActorFv +/* 8015EAF8 0015BA58 48 00 00 80 */ b lbl_8015EB78 +lbl_8015EAFC: +/* 8015EAFC 0015BA5C C0 DF 00 60 */ lfs f6, 0x60(r31) +/* 8015EB00 0015BA60 38 61 00 20 */ addi r3, r1, 0x20 +/* 8015EB04 0015BA64 C0 BF 00 50 */ lfs f5, 0x50(r31) +/* 8015EB08 0015BA68 38 81 00 14 */ addi r4, r1, 0x14 +/* 8015EB0C 0015BA6C C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 8015EB10 0015BA70 EC 06 38 2A */ fadds f0, f6, f7 +/* 8015EB14 0015BA74 EC 65 38 2A */ fadds f3, f5, f7 +/* 8015EB18 0015BA78 38 A1 00 08 */ addi r5, r1, 8 +/* 8015EB1C 0015BA7C EC 81 38 2A */ fadds f4, f1, f7 +/* 8015EB20 0015BA80 EC 41 38 28 */ fsubs f2, f1, f7 +/* 8015EB24 0015BA84 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8015EB28 0015BA88 EC 25 38 28 */ fsubs f1, f5, f7 +/* 8015EB2C 0015BA8C EC 06 38 28 */ fsubs f0, f6, f7 +/* 8015EB30 0015BA90 D0 81 00 08 */ stfs f4, 8(r1) +/* 8015EB34 0015BA94 D0 61 00 0C */ stfs f3, 0xc(r1) +/* 8015EB38 0015BA98 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 8015EB3C 0015BA9C D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8015EB40 0015BAA0 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8015EB44 0015BAA4 48 1D 99 C5 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8015EB48 0015BAA8 80 61 00 20 */ lwz r3, 0x20(r1) +/* 8015EB4C 0015BAAC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8015EB50 0015BAB0 90 7F 00 9C */ stw r3, 0x9c(r31) +/* 8015EB54 0015BAB4 90 1F 00 A0 */ stw r0, 0xa0(r31) +/* 8015EB58 0015BAB8 80 01 00 28 */ lwz r0, 0x28(r1) +/* 8015EB5C 0015BABC 90 1F 00 A4 */ stw r0, 0xa4(r31) +/* 8015EB60 0015BAC0 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 8015EB64 0015BAC4 80 01 00 30 */ lwz r0, 0x30(r1) +/* 8015EB68 0015BAC8 90 7F 00 A8 */ stw r3, 0xa8(r31) +/* 8015EB6C 0015BACC 90 1F 00 AC */ stw r0, 0xac(r31) +/* 8015EB70 0015BAD0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8015EB74 0015BAD4 90 1F 00 B0 */ stw r0, 0xb0(r31) +lbl_8015EB78: +/* 8015EB78 0015BAD8 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8015EB7C 0015BADC 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8015EB80 0015BAE0 7C 08 03 A6 */ mtlr r0 +/* 8015EB84 0015BAE4 38 21 00 40 */ addi r1, r1, 0x40 +/* 8015EB88 0015BAE8 4E 80 00 20 */ blr + +.global Think__22CScriptPointOfInterestFfR13CStateManager +Think__22CScriptPointOfInterestFfR13CStateManager: +/* 8015EB8C 0015BAEC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8015EB90 0015BAF0 7C 08 02 A6 */ mflr r0 +/* 8015EB94 0015BAF4 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015EB98 0015BAF8 80 A4 08 B8 */ lwz r5, 0x8b8(r4) +/* 8015EB9C 0015BAFC 88 03 00 E7 */ lbz r0, 0xe7(r3) +/* 8015EBA0 0015BB00 80 A5 00 00 */ lwz r5, 0(r5) +/* 8015EBA4 0015BB04 80 A5 00 14 */ lwz r5, 0x14(r5) +/* 8015EBA8 0015BB08 20 A5 00 02 */ subfic r5, r5, 2 +/* 8015EBAC 0015BB0C 7C A5 00 34 */ cntlzw r5, r5 +/* 8015EBB0 0015BB10 50 A0 DF FE */ rlwimi r0, r5, 0x1b, 0x1f, 0x1f +/* 8015EBB4 0015BB14 98 03 00 E7 */ stb r0, 0xe7(r3) +/* 8015EBB8 0015BB18 4B EF 25 01 */ bl Think__7CEntityFfR13CStateManager +/* 8015EBBC 0015BB1C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8015EBC0 0015BB20 7C 08 03 A6 */ mtlr r0 +/* 8015EBC4 0015BB24 38 21 00 10 */ addi r1, r1, 0x10 +/* 8015EBC8 0015BB28 4E 80 00 20 */ blr + +.global Accept__22CScriptPointOfInterestFR8IVisitor +Accept__22CScriptPointOfInterestFR8IVisitor: +/* 8015EBCC 0015BB2C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8015EBD0 0015BB30 7C 08 02 A6 */ mflr r0 +/* 8015EBD4 0015BB34 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015EBD8 0015BB38 7C 60 1B 78 */ mr r0, r3 +/* 8015EBDC 0015BB3C 7C 83 23 78 */ mr r3, r4 +/* 8015EBE0 0015BB40 81 84 00 00 */ lwz r12, 0(r4) +/* 8015EBE4 0015BB44 7C 04 03 78 */ mr r4, r0 +/* 8015EBE8 0015BB48 81 8C 00 A4 */ lwz r12, 0xa4(r12) +/* 8015EBEC 0015BB4C 7D 89 03 A6 */ mtctr r12 +/* 8015EBF0 0015BB50 4E 80 04 21 */ bctrl +/* 8015EBF4 0015BB54 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8015EBF8 0015BB58 7C 08 03 A6 */ mtlr r0 +/* 8015EBFC 0015BB5C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8015EC00 0015BB60 4E 80 00 20 */ blr + +.global AddToRenderer__22CScriptPointOfInterestCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__22CScriptPointOfInterestCFRC14CFrustumPlanesRC13CStateManager: +/* 8015EC04 0015BB64 4E 80 00 20 */ blr + +.global Render__22CScriptPointOfInterestCFRC13CStateManager +Render__22CScriptPointOfInterestCFRC13CStateManager: +/* 8015EC08 0015BB68 4E 80 00 20 */ blr + +.global GetTouchBounds__22CScriptPointOfInterestCFv +GetTouchBounds__22CScriptPointOfInterestCFv: +/* 8015EC0C 0015BB6C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8015EC10 0015BB70 7C 08 02 A6 */ mflr r0 +/* 8015EC14 0015BB74 90 01 00 44 */ stw r0, 0x44(r1) +/* 8015EC18 0015BB78 38 A1 00 08 */ addi r5, r1, 8 +/* 8015EC1C 0015BB7C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8015EC20 0015BB80 7C 7F 1B 78 */ mr r31, r3 +/* 8015EC24 0015BB84 38 61 00 20 */ addi r3, r1, 0x20 +/* 8015EC28 0015BB88 C0 44 00 60 */ lfs f2, 0x60(r4) +/* 8015EC2C 0015BB8C C0 24 00 50 */ lfs f1, 0x50(r4) +/* 8015EC30 0015BB90 C0 04 00 40 */ lfs f0, 0x40(r4) +/* 8015EC34 0015BB94 38 81 00 14 */ addi r4, r1, 0x14 +/* 8015EC38 0015BB98 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 8015EC3C 0015BB9C D0 01 00 08 */ stfs f0, 8(r1) +/* 8015EC40 0015BBA0 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 8015EC44 0015BBA4 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8015EC48 0015BBA8 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8015EC4C 0015BBAC D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 8015EC50 0015BBB0 48 1D 98 B9 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8015EC54 0015BBB4 38 00 00 01 */ li r0, 1 +/* 8015EC58 0015BBB8 28 1F 00 00 */ cmplwi r31, 0 +/* 8015EC5C 0015BBBC 98 1F 00 18 */ stb r0, 0x18(r31) +/* 8015EC60 0015BBC0 41 82 00 34 */ beq lbl_8015EC94 +/* 8015EC64 0015BBC4 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 8015EC68 0015BBC8 D0 1F 00 00 */ stfs f0, 0(r31) +/* 8015EC6C 0015BBCC C0 01 00 24 */ lfs f0, 0x24(r1) +/* 8015EC70 0015BBD0 D0 1F 00 04 */ stfs f0, 4(r31) +/* 8015EC74 0015BBD4 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 8015EC78 0015BBD8 D0 1F 00 08 */ stfs f0, 8(r31) +/* 8015EC7C 0015BBDC C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 8015EC80 0015BBE0 D0 1F 00 0C */ stfs f0, 0xc(r31) +/* 8015EC84 0015BBE4 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 8015EC88 0015BBE8 D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 8015EC8C 0015BBEC C0 01 00 34 */ lfs f0, 0x34(r1) +/* 8015EC90 0015BBF0 D0 1F 00 14 */ stfs f0, 0x14(r31) +lbl_8015EC94: +/* 8015EC94 0015BBF4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8015EC98 0015BBF8 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8015EC9C 0015BBFC 7C 08 03 A6 */ mtlr r0 +/* 8015ECA0 0015BC00 38 21 00 40 */ addi r1, r1, 0x40 +/* 8015ECA4 0015BC04 4E 80 00 20 */ blr + +.global AcceptScriptMsg__22CScriptPointOfInterestF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__22CScriptPointOfInterestF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8015ECA8 0015BC08 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8015ECAC 0015BC0C 7C 08 02 A6 */ mflr r0 +/* 8015ECB0 0015BC10 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015ECB4 0015BC14 A0 05 00 00 */ lhz r0, 0(r5) +/* 8015ECB8 0015BC18 38 A1 00 08 */ addi r5, r1, 8 +/* 8015ECBC 0015BC1C B0 01 00 08 */ sth r0, 8(r1) +/* 8015ECC0 0015BC20 4B EF 49 55 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8015ECC4 0015BC24 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8015ECC8 0015BC28 7C 08 03 A6 */ mtlr r0 +/* 8015ECCC 0015BC2C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8015ECD0 0015BC30 4E 80 00 20 */ blr + +.global __dt__22CScriptPointOfInterestFv +__dt__22CScriptPointOfInterestFv: +/* 8015ECD4 0015BC34 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8015ECD8 0015BC38 7C 08 02 A6 */ mflr r0 +/* 8015ECDC 0015BC3C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015ECE0 0015BC40 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8015ECE4 0015BC44 7C 9F 23 78 */ mr r31, r4 +/* 8015ECE8 0015BC48 93 C1 00 08 */ stw r30, 8(r1) +/* 8015ECEC 0015BC4C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8015ECF0 0015BC50 41 82 00 28 */ beq lbl_8015ED18 +/* 8015ECF4 0015BC54 3C A0 80 3E */ lis r5, lbl_803E3638@ha +/* 8015ECF8 0015BC58 38 80 00 00 */ li r4, 0 +/* 8015ECFC 0015BC5C 38 05 36 38 */ addi r0, r5, lbl_803E3638@l +/* 8015ED00 0015BC60 90 1E 00 00 */ stw r0, 0(r30) +/* 8015ED04 0015BC64 4B EF 69 ED */ bl __dt__6CActorFv +/* 8015ED08 0015BC68 7F E0 07 35 */ extsh. r0, r31 +/* 8015ED0C 0015BC6C 40 81 00 0C */ ble lbl_8015ED18 +/* 8015ED10 0015BC70 7F C3 F3 78 */ mr r3, r30 +/* 8015ED14 0015BC74 48 1B 6C 1D */ bl Free__7CMemoryFPCv +lbl_8015ED18: +/* 8015ED18 0015BC78 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8015ED1C 0015BC7C 7F C3 F3 78 */ mr r3, r30 +/* 8015ED20 0015BC80 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8015ED24 0015BC84 83 C1 00 08 */ lwz r30, 8(r1) +/* 8015ED28 0015BC88 7C 08 03 A6 */ mtlr r0 +/* 8015ED2C 0015BC8C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8015ED30 0015BC90 4E 80 00 20 */ blr + +.global "__ct__22CScriptPointOfInterestF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fbRC20CScannableParameters" +"__ct__22CScriptPointOfInterestF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fbRC20CScannableParameters": +/* 8015ED34 0015BC94 94 21 FE 90 */ stwu r1, -0x170(r1) +/* 8015ED38 0015BC98 7C 08 02 A6 */ mflr r0 +/* 8015ED3C 0015BC9C 90 01 01 74 */ stw r0, 0x174(r1) +/* 8015ED40 0015BCA0 DB E1 01 68 */ stfd f31, 0x168(r1) +/* 8015ED44 0015BCA4 FF E0 08 90 */ fmr f31, f1 +/* 8015ED48 0015BCA8 BF 21 01 4C */ stmw r25, 0x14c(r1) +/* 8015ED4C 0015BCAC 7C 7F 1B 78 */ mr r31, r3 +/* 8015ED50 0015BCB0 7C 99 23 78 */ mr r25, r4 +/* 8015ED54 0015BCB4 7C BA 2B 78 */ mr r26, r5 +/* 8015ED58 0015BCB8 7C DB 33 78 */ mr r27, r6 +/* 8015ED5C 0015BCBC 7C FC 3B 78 */ mr r28, r7 +/* 8015ED60 0015BCC0 7D 1D 43 78 */ mr r29, r8 +/* 8015ED64 0015BCC4 7D 3E 4B 78 */ mr r30, r9 +/* 8015ED68 0015BCC8 38 61 00 F0 */ addi r3, r1, 0xf0 +/* 8015ED6C 0015BCCC 4B ED BA 39 */ bl CModelDataNull__10CModelDataFv +/* 8015ED70 0015BCD0 38 61 00 88 */ addi r3, r1, 0x88 +/* 8015ED74 0015BCD4 4B EB C0 C5 */ bl None__16CActorParametersFv +/* 8015ED78 0015BCD8 7F C5 F3 78 */ mr r5, r30 +/* 8015ED7C 0015BCDC 38 61 00 20 */ addi r3, r1, 0x20 +/* 8015ED80 0015BCE0 38 81 00 88 */ addi r4, r1, 0x88 +/* 8015ED84 0015BCE4 4B FA 7A E9 */ bl Scannable__16CActorParametersCFRC20CScannableParameters +/* 8015ED88 0015BCE8 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 8015ED8C 0015BCEC 38 00 00 00 */ li r0, 0 +/* 8015ED90 0015BCF0 80 AD 8C E8 */ lwz r5, lbl_805A78A8@sda21(r13) +/* 8015ED94 0015BCF4 38 60 00 00 */ li r3, 0 +/* 8015ED98 0015BCF8 B0 81 00 10 */ sth r4, 0x10(r1) +/* 8015ED9C 0015BCFC 38 80 00 01 */ li r4, 1 +/* 8015EDA0 0015BD00 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8015EDA4 0015BD04 90 01 00 18 */ stw r0, 0x18(r1) +/* 8015EDA8 0015BD08 48 22 B1 4D */ bl __shl2i +/* 8015EDAC 0015BD0C 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 8015EDB0 0015BD10 39 61 00 20 */ addi r11, r1, 0x20 +/* 8015EDB4 0015BD14 80 C1 00 1C */ lwz r6, 0x1c(r1) +/* 8015EDB8 0015BD18 38 01 00 10 */ addi r0, r1, 0x10 +/* 8015EDBC 0015BD1C 7C A3 1B 78 */ or r3, r5, r3 +/* 8015EDC0 0015BD20 A1 39 00 00 */ lhz r9, 0(r25) +/* 8015EDC4 0015BD24 7C C4 23 78 */ or r4, r6, r4 +/* 8015EDC8 0015BD28 90 61 00 18 */ stw r3, 0x18(r1) +/* 8015EDCC 0015BD2C 7F E3 FB 78 */ mr r3, r31 +/* 8015EDD0 0015BD30 7F A5 EB 78 */ mr r5, r29 +/* 8015EDD4 0015BD34 90 81 00 1C */ stw r4, 0x1c(r1) +/* 8015EDD8 0015BD38 7F 46 D3 78 */ mr r6, r26 +/* 8015EDDC 0015BD3C 7F 67 DB 78 */ mr r7, r27 +/* 8015EDE0 0015BD40 7F 88 E3 78 */ mr r8, r28 +/* 8015EDE4 0015BD44 B1 21 00 14 */ sth r9, 0x14(r1) +/* 8015EDE8 0015BD48 38 81 00 14 */ addi r4, r1, 0x14 +/* 8015EDEC 0015BD4C 39 21 00 F0 */ addi r9, r1, 0xf0 +/* 8015EDF0 0015BD50 39 41 00 18 */ addi r10, r1, 0x18 +/* 8015EDF4 0015BD54 91 61 00 08 */ stw r11, 8(r1) +/* 8015EDF8 0015BD58 90 01 00 0C */ stw r0, 0xc(r1) +/* 8015EDFC 0015BD5C 4B EF 6A 25 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" +/* 8015EE00 0015BD60 38 61 00 20 */ addi r3, r1, 0x20 +/* 8015EE04 0015BD64 38 80 FF FF */ li r4, -1 +/* 8015EE08 0015BD68 4B FA 78 01 */ bl __dt__16CActorParametersFv +/* 8015EE0C 0015BD6C 38 61 00 88 */ addi r3, r1, 0x88 +/* 8015EE10 0015BD70 38 80 FF FF */ li r4, -1 +/* 8015EE14 0015BD74 4B FA 77 F5 */ bl __dt__16CActorParametersFv +/* 8015EE18 0015BD78 38 61 00 F0 */ addi r3, r1, 0xf0 +/* 8015EE1C 0015BD7C 38 80 FF FF */ li r4, -1 +/* 8015EE20 0015BD80 4B FB 7C 2D */ bl __dt__10CModelDataFv +/* 8015EE24 0015BD84 3C 80 80 3E */ lis r4, lbl_803E3638@ha +/* 8015EE28 0015BD88 7F E3 FB 78 */ mr r3, r31 +/* 8015EE2C 0015BD8C 38 04 36 38 */ addi r0, r4, lbl_803E3638@l +/* 8015EE30 0015BD90 90 1F 00 00 */ stw r0, 0(r31) +/* 8015EE34 0015BD94 D3 FF 00 E8 */ stfs f31, 0xe8(r31) +/* 8015EE38 0015BD98 CB E1 01 68 */ lfd f31, 0x168(r1) +/* 8015EE3C 0015BD9C BB 21 01 4C */ lmw r25, 0x14c(r1) +/* 8015EE40 0015BDA0 80 01 01 74 */ lwz r0, 0x174(r1) +/* 8015EE44 0015BDA4 7C 08 03 A6 */ mtlr r0 +/* 8015EE48 0015BDA8 38 21 01 70 */ addi r1, r1, 0x170 +/* 8015EE4C 0015BDAC 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptRipple.s b/asm/Kyoto_CWD/ScriptObjects/CScriptRipple.s new file mode 100644 index 00000000..64a3f774 --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptRipple.s @@ -0,0 +1,194 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global Accept__13CScriptRippleFR8IVisitor +Accept__13CScriptRippleFR8IVisitor: +/* 80174F14 00171E74 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80174F18 00171E78 7C 08 02 A6 */ mflr r0 +/* 80174F1C 00171E7C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80174F20 00171E80 7C 60 1B 78 */ mr r0, r3 +/* 80174F24 00171E84 7C 83 23 78 */ mr r3, r4 +/* 80174F28 00171E88 81 84 00 00 */ lwz r12, 0(r4) +/* 80174F2C 00171E8C 7C 04 03 78 */ mr r4, r0 +/* 80174F30 00171E90 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 80174F34 00171E94 7D 89 03 A6 */ mtctr r12 +/* 80174F38 00171E98 4E 80 04 21 */ bctrl +/* 80174F3C 00171E9C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80174F40 00171EA0 7C 08 03 A6 */ mtlr r0 +/* 80174F44 00171EA4 38 21 00 10 */ addi r1, r1, 0x10 +/* 80174F48 00171EA8 4E 80 00 20 */ blr + +.global Think__13CScriptRippleFfR13CStateManager +Think__13CScriptRippleFfR13CStateManager: +/* 80174F4C 00171EAC 4E 80 00 20 */ blr + +.global AcceptScriptMsg__13CScriptRippleF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__13CScriptRippleF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 80174F50 00171EB0 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80174F54 00171EB4 7C 08 02 A6 */ mflr r0 +/* 80174F58 00171EB8 2C 04 00 14 */ cmpwi r4, 0x14 +/* 80174F5C 00171EBC 90 01 00 54 */ stw r0, 0x54(r1) +/* 80174F60 00171EC0 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80174F64 00171EC4 7C DF 33 78 */ mr r31, r6 +/* 80174F68 00171EC8 93 C1 00 48 */ stw r30, 0x48(r1) +/* 80174F6C 00171ECC 7C 7E 1B 78 */ mr r30, r3 +/* 80174F70 00171ED0 93 A1 00 44 */ stw r29, 0x44(r1) +/* 80174F74 00171ED4 41 82 00 08 */ beq lbl_80174F7C +/* 80174F78 00171ED8 48 00 00 F4 */ b lbl_8017506C +lbl_80174F7C: +/* 80174F7C 00171EDC 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 80174F80 00171EE0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80174F84 00171EE4 41 82 00 F8 */ beq lbl_8017507C +/* 80174F88 00171EE8 83 BE 00 2C */ lwz r29, 0x2c(r30) +/* 80174F8C 00171EEC 48 00 00 C4 */ b lbl_80175050 +lbl_80174F90: +/* 80174F90 00171EF0 80 1D 00 00 */ lwz r0, 0(r29) +/* 80174F94 00171EF4 2C 00 00 00 */ cmpwi r0, 0 +/* 80174F98 00171EF8 40 82 00 B4 */ bne lbl_8017504C +/* 80174F9C 00171EFC 80 1D 00 04 */ lwz r0, 4(r29) +/* 80174FA0 00171F00 2C 00 00 08 */ cmpwi r0, 8 +/* 80174FA4 00171F04 40 82 00 A8 */ bne lbl_8017504C +/* 80174FA8 00171F08 80 1D 00 08 */ lwz r0, 8(r29) +/* 80174FAC 00171F0C 7F E4 FB 78 */ mr r4, r31 +/* 80174FB0 00171F10 38 61 00 24 */ addi r3, r1, 0x24 +/* 80174FB4 00171F14 38 A1 00 18 */ addi r5, r1, 0x18 +/* 80174FB8 00171F18 90 01 00 18 */ stw r0, 0x18(r1) +/* 80174FBC 00171F1C 4B ED 30 0D */ bl GetIdListForScript__13CStateManagerCF9TEditorId +/* 80174FC0 00171F20 80 A1 00 24 */ lwz r5, 0x24(r1) +/* 80174FC4 00171F24 38 60 00 00 */ li r3, 0 +/* 80174FC8 00171F28 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 80174FCC 00171F2C 80 81 00 28 */ lwz r4, 0x28(r1) +/* 80174FD0 00171F30 7C 05 00 40 */ cmplw r5, r0 +/* 80174FD4 00171F34 80 01 00 30 */ lwz r0, 0x30(r1) +/* 80174FD8 00171F38 40 82 00 0C */ bne lbl_80174FE4 +/* 80174FDC 00171F3C 7C 04 00 40 */ cmplw r4, r0 +/* 80174FE0 00171F40 41 82 00 08 */ beq lbl_80174FE8 +lbl_80174FE4: +/* 80174FE4 00171F44 38 60 00 01 */ li r3, 1 +lbl_80174FE8: +/* 80174FE8 00171F48 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80174FEC 00171F4C 41 82 00 60 */ beq lbl_8017504C +/* 80174FF0 00171F50 A0 05 00 14 */ lhz r0, 0x14(r5) +/* 80174FF4 00171F54 7F E3 FB 78 */ mr r3, r31 +/* 80174FF8 00171F58 38 81 00 14 */ addi r4, r1, 0x14 +/* 80174FFC 00171F5C B0 01 00 14 */ sth r0, 0x14(r1) +/* 80175000 00171F60 4B ED 75 75 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80175004 00171F64 7C 64 1B 78 */ mr r4, r3 +/* 80175008 00171F68 38 61 00 1C */ addi r3, r1, 0x1c +/* 8017500C 00171F6C 4B F3 18 55 */ bl "__ct__26TCastToPtr<12CScriptWater>FP7CEntity" +/* 80175010 00171F70 80 C3 00 04 */ lwz r6, 4(r3) +/* 80175014 00171F74 28 06 00 00 */ cmplwi r6, 0 +/* 80175018 00171F78 41 82 00 34 */ beq lbl_8017504C +/* 8017501C 00171F7C A0 1E 00 08 */ lhz r0, 8(r30) +/* 80175020 00171F80 7F E7 FB 78 */ mr r7, r31 +/* 80175024 00171F84 38 81 00 10 */ addi r4, r1, 0x10 +/* 80175028 00171F88 38 BE 00 38 */ addi r5, r30, 0x38 +/* 8017502C 00171F8C B0 01 00 10 */ sth r0, 0x10(r1) +/* 80175030 00171F90 80 66 01 B4 */ lwz r3, 0x1b4(r6) +/* 80175034 00171F94 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80175038 00171F98 81 83 00 00 */ lwz r12, 0(r3) +/* 8017503C 00171F9C C0 3E 00 34 */ lfs f1, 0x34(r30) +/* 80175040 00171FA0 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80175044 00171FA4 7D 89 03 A6 */ mtctr r12 +/* 80175048 00171FA8 4E 80 04 21 */ bctrl +lbl_8017504C: +/* 8017504C 00171FAC 3B BD 00 0C */ addi r29, r29, 0xc +lbl_80175050: +/* 80175050 00171FB0 80 1E 00 24 */ lwz r0, 0x24(r30) +/* 80175054 00171FB4 80 7E 00 2C */ lwz r3, 0x2c(r30) +/* 80175058 00171FB8 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8017505C 00171FBC 7C 03 02 14 */ add r0, r3, r0 +/* 80175060 00171FC0 7C 1D 00 40 */ cmplw r29, r0 +/* 80175064 00171FC4 40 82 FF 2C */ bne lbl_80174F90 +/* 80175068 00171FC8 48 00 00 14 */ b lbl_8017507C +lbl_8017506C: +/* 8017506C 00171FCC A0 05 00 00 */ lhz r0, 0(r5) +/* 80175070 00171FD0 38 A1 00 08 */ addi r5, r1, 8 +/* 80175074 00171FD4 B0 01 00 08 */ sth r0, 8(r1) +/* 80175078 00171FD8 4B ED C0 E5 */ bl AcceptScriptMsg__7CEntityF20EScriptObjectMessage9TUniqueIdR13CStateManager +lbl_8017507C: +/* 8017507C 00171FDC 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80175080 00171FE0 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 80175084 00171FE4 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 80175088 00171FE8 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 8017508C 00171FEC 7C 08 03 A6 */ mtlr r0 +/* 80175090 00171FF0 38 21 00 50 */ addi r1, r1, 0x50 +/* 80175094 00171FF4 4E 80 00 20 */ blr + +.global __dt__13CScriptRippleFv +__dt__13CScriptRippleFv: +/* 80175098 00171FF8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8017509C 00171FFC 7C 08 02 A6 */ mflr r0 +/* 801750A0 00172000 90 01 00 14 */ stw r0, 0x14(r1) +/* 801750A4 00172004 93 E1 00 0C */ stw r31, 0xc(r1) +/* 801750A8 00172008 7C 9F 23 78 */ mr r31, r4 +/* 801750AC 0017200C 93 C1 00 08 */ stw r30, 8(r1) +/* 801750B0 00172010 7C 7E 1B 79 */ or. r30, r3, r3 +/* 801750B4 00172014 41 82 00 28 */ beq lbl_801750DC +/* 801750B8 00172018 3C A0 80 3E */ lis r5, lbl_803E3E28@ha +/* 801750BC 0017201C 38 80 00 00 */ li r4, 0 +/* 801750C0 00172020 38 05 3E 28 */ addi r0, r5, lbl_803E3E28@l +/* 801750C4 00172024 90 1E 00 00 */ stw r0, 0(r30) +/* 801750C8 00172028 4B ED C1 AD */ bl __dt__7CEntityFv +/* 801750CC 0017202C 7F E0 07 35 */ extsh. r0, r31 +/* 801750D0 00172030 40 81 00 0C */ ble lbl_801750DC +/* 801750D4 00172034 7F C3 F3 78 */ mr r3, r30 +/* 801750D8 00172038 48 1A 08 59 */ bl Free__7CMemoryFPCv +lbl_801750DC: +/* 801750DC 0017203C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 801750E0 00172040 7F C3 F3 78 */ mr r3, r30 +/* 801750E4 00172044 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 801750E8 00172048 83 C1 00 08 */ lwz r30, 8(r1) +/* 801750EC 0017204C 7C 08 03 A6 */ mtlr r0 +/* 801750F0 00172050 38 21 00 10 */ addi r1, r1, 0x10 +/* 801750F4 00172054 4E 80 00 20 */ blr + +.global "__ct__13CScriptRippleF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fbffff" +"__ct__13CScriptRippleF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fbffff": +/* 801750F8 00172058 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801750FC 0017205C 7C 08 02 A6 */ mflr r0 +/* 80175100 00172060 90 01 00 34 */ stw r0, 0x34(r1) +/* 80175104 00172064 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 80175108 00172068 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 8017510C 0017206C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80175110 00172070 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80175114 00172074 A0 04 00 00 */ lhz r0, 0(r4) +/* 80175118 00172078 7C A4 2B 78 */ mr r4, r5 +/* 8017511C 0017207C FF E0 08 90 */ fmr f31, f1 +/* 80175120 00172080 7C FF 3B 78 */ mr r31, r7 +/* 80175124 00172084 B0 01 00 08 */ sth r0, 8(r1) +/* 80175128 00172088 7C C5 33 78 */ mr r5, r6 +/* 8017512C 0017208C 7C 87 23 78 */ mr r7, r4 +/* 80175130 00172090 7C 7E 1B 78 */ mr r30, r3 +/* 80175134 00172094 7D 06 43 78 */ mr r6, r8 +/* 80175138 00172098 38 81 00 08 */ addi r4, r1, 8 +/* 8017513C 0017209C 4B ED C1 E9 */ bl "__ct__7CEntityF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80175140 001720A0 C0 02 A1 70 */ lfs f0, lbl_805ABE90@sda21(r2) +/* 80175144 001720A4 3C 60 80 3E */ lis r3, lbl_803E3E28@ha +/* 80175148 001720A8 38 03 3E 28 */ addi r0, r3, lbl_803E3E28@l +/* 8017514C 001720AC FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 80175150 001720B0 90 1E 00 00 */ stw r0, 0(r30) +/* 80175154 001720B4 4C 41 13 82 */ cror 2, 1, 2 +/* 80175158 001720B8 40 82 00 0C */ bne lbl_80175164 +/* 8017515C 001720BC FC 00 F8 90 */ fmr f0, f31 +/* 80175160 001720C0 48 00 00 08 */ b lbl_80175168 +lbl_80175164: +/* 80175164 001720C4 C0 02 96 D0 */ lfs f0, lbl_805AB3F0@sda21(r2) +lbl_80175168: +/* 80175168 001720C8 D0 1E 00 34 */ stfs f0, 0x34(r30) +/* 8017516C 001720CC 7F C3 F3 78 */ mr r3, r30 +/* 80175170 001720D0 C0 1F 00 00 */ lfs f0, 0(r31) +/* 80175174 001720D4 D0 1E 00 38 */ stfs f0, 0x38(r30) +/* 80175178 001720D8 C0 1F 00 04 */ lfs f0, 4(r31) +/* 8017517C 001720DC D0 1E 00 3C */ stfs f0, 0x3c(r30) +/* 80175180 001720E0 C0 1F 00 08 */ lfs f0, 8(r31) +/* 80175184 001720E4 D0 1E 00 40 */ stfs f0, 0x40(r30) +/* 80175188 001720E8 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 8017518C 001720EC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80175190 001720F0 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 80175194 001720F4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80175198 001720F8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8017519C 001720FC 7C 08 03 A6 */ mtlr r0 +/* 801751A0 00172100 38 21 00 30 */ addi r1, r1, 0x30 +/* 801751A4 00172104 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptSpecialFunction.s b/asm/Kyoto_CWD/ScriptObjects/CScriptSpecialFunction.s new file mode 100644 index 00000000..eefcce3d --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptSpecialFunction.s @@ -0,0 +1,5067 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__22CScriptSpecialFunctionFv +__dt__22CScriptSpecialFunctionFv: +/* 8014F1A0 0014C100 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8014F1A4 0014C104 7C 08 02 A6 */ mflr r0 +/* 8014F1A8 0014C108 90 01 00 34 */ stw r0, 0x34(r1) +/* 8014F1AC 0014C10C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8014F1B0 0014C110 7C 9F 23 78 */ mr r31, r4 +/* 8014F1B4 0014C114 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8014F1B8 0014C118 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8014F1BC 0014C11C 41 82 01 0C */ beq lbl_8014F2C8 +/* 8014F1C0 0014C120 3C 60 80 3E */ lis r3, lbl_803E2B68@ha +/* 8014F1C4 0014C124 34 1E 01 E8 */ addic. r0, r30, 0x1e8 +/* 8014F1C8 0014C128 38 03 2B 68 */ addi r0, r3, lbl_803E2B68@l +/* 8014F1CC 0014C12C 90 1E 00 00 */ stw r0, 0(r30) +/* 8014F1D0 0014C130 41 82 00 24 */ beq lbl_8014F1F4 +/* 8014F1D4 0014C134 88 1E 01 F0 */ lbz r0, 0x1f0(r30) +/* 8014F1D8 0014C138 28 00 00 00 */ cmplwi r0, 0 +/* 8014F1DC 0014C13C 41 82 00 10 */ beq lbl_8014F1EC +/* 8014F1E0 0014C140 38 7E 01 E8 */ addi r3, r30, 0x1e8 +/* 8014F1E4 0014C144 38 80 FF FF */ li r4, -1 +/* 8014F1E8 0014C148 48 1F 1C 59 */ bl __dt__6CTokenFv +lbl_8014F1EC: +/* 8014F1EC 0014C14C 38 00 00 00 */ li r0, 0 +/* 8014F1F0 0014C150 98 1E 01 F0 */ stb r0, 0x1f0(r30) +lbl_8014F1F4: +/* 8014F1F4 0014C154 34 1E 01 C8 */ addic. r0, r30, 0x1c8 +/* 8014F1F8 0014C158 41 82 00 0C */ beq lbl_8014F204 +/* 8014F1FC 0014C15C 38 00 00 00 */ li r0, 0 +/* 8014F200 0014C160 98 1E 01 E0 */ stb r0, 0x1e0(r30) +lbl_8014F204: +/* 8014F204 0014C164 34 1E 01 98 */ addic. r0, r30, 0x198 +/* 8014F208 0014C168 41 82 00 44 */ beq lbl_8014F24C +/* 8014F20C 0014C16C 80 1E 01 9C */ lwz r0, 0x19c(r30) +/* 8014F210 0014C170 80 7E 01 A4 */ lwz r3, 0x1a4(r30) +/* 8014F214 0014C174 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 8014F218 0014C178 90 61 00 1C */ stw r3, 0x1c(r1) +/* 8014F21C 0014C17C 7C 64 1B 78 */ mr r4, r3 +/* 8014F220 0014C180 7C 03 02 14 */ add r0, r3, r0 +/* 8014F224 0014C184 90 61 00 18 */ stw r3, 0x18(r1) +/* 8014F228 0014C188 90 01 00 24 */ stw r0, 0x24(r1) +/* 8014F22C 0014C18C 90 01 00 20 */ stw r0, 0x20(r1) +/* 8014F230 0014C190 48 00 00 08 */ b lbl_8014F238 +lbl_8014F234: +/* 8014F234 0014C194 38 84 00 18 */ addi r4, r4, 0x18 +lbl_8014F238: +/* 8014F238 0014C198 7C 04 00 40 */ cmplw r4, r0 +/* 8014F23C 0014C19C 40 82 FF F8 */ bne lbl_8014F234 +/* 8014F240 0014C1A0 28 03 00 00 */ cmplwi r3, 0 +/* 8014F244 0014C1A4 41 82 00 08 */ beq lbl_8014F24C +/* 8014F248 0014C1A8 48 1C 66 E9 */ bl Free__7CMemoryFPCv +lbl_8014F24C: +/* 8014F24C 0014C1AC 34 1E 01 84 */ addic. r0, r30, 0x184 +/* 8014F250 0014C1B0 41 82 00 4C */ beq lbl_8014F29C +/* 8014F254 0014C1B4 34 1E 01 84 */ addic. r0, r30, 0x184 +/* 8014F258 0014C1B8 41 82 00 44 */ beq lbl_8014F29C +/* 8014F25C 0014C1BC 80 1E 01 88 */ lwz r0, 0x188(r30) +/* 8014F260 0014C1C0 80 7E 01 90 */ lwz r3, 0x190(r30) +/* 8014F264 0014C1C4 54 00 10 3A */ slwi r0, r0, 2 +/* 8014F268 0014C1C8 7C 03 02 14 */ add r0, r3, r0 +/* 8014F26C 0014C1CC 90 61 00 0C */ stw r3, 0xc(r1) +/* 8014F270 0014C1D0 7C 64 1B 78 */ mr r4, r3 +/* 8014F274 0014C1D4 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014F278 0014C1D8 90 01 00 10 */ stw r0, 0x10(r1) +/* 8014F27C 0014C1DC 90 61 00 08 */ stw r3, 8(r1) +/* 8014F280 0014C1E0 48 00 00 08 */ b lbl_8014F288 +lbl_8014F284: +/* 8014F284 0014C1E4 38 84 00 04 */ addi r4, r4, 4 +lbl_8014F288: +/* 8014F288 0014C1E8 7C 04 00 40 */ cmplw r4, r0 +/* 8014F28C 0014C1EC 40 82 FF F8 */ bne lbl_8014F284 +/* 8014F290 0014C1F0 28 03 00 00 */ cmplwi r3, 0 +/* 8014F294 0014C1F4 41 82 00 08 */ beq lbl_8014F29C +/* 8014F298 0014C1F8 48 1C 66 99 */ bl Free__7CMemoryFPCv +lbl_8014F29C: +/* 8014F29C 0014C1FC 34 1E 00 EC */ addic. r0, r30, 0xec +/* 8014F2A0 0014C200 41 82 00 0C */ beq lbl_8014F2AC +/* 8014F2A4 0014C204 38 7E 00 EC */ addi r3, r30, 0xec +/* 8014F2A8 0014C208 48 1E E8 39 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8014F2AC: +/* 8014F2AC 0014C20C 7F C3 F3 78 */ mr r3, r30 +/* 8014F2B0 0014C210 38 80 00 00 */ li r4, 0 +/* 8014F2B4 0014C214 4B F0 64 3D */ bl __dt__6CActorFv +/* 8014F2B8 0014C218 7F E0 07 35 */ extsh. r0, r31 +/* 8014F2BC 0014C21C 40 81 00 0C */ ble lbl_8014F2C8 +/* 8014F2C0 0014C220 7F C3 F3 78 */ mr r3, r30 +/* 8014F2C4 0014C224 48 1C 66 6D */ bl Free__7CMemoryFPCv +lbl_8014F2C8: +/* 8014F2C8 0014C228 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8014F2CC 0014C22C 7F C3 F3 78 */ mr r3, r30 +/* 8014F2D0 0014C230 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8014F2D4 0014C234 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8014F2D8 0014C238 7C 08 03 A6 */ mtlr r0 +/* 8014F2DC 0014C23C 38 21 00 30 */ addi r1, r1, 0x30 +/* 8014F2E0 0014C240 4E 80 00 20 */ blr + +.global GetTouchBounds__22CScriptSpecialFunctionCFv +GetTouchBounds__22CScriptSpecialFunctionCFv: +/* 8014F2E4 0014C244 88 04 01 E0 */ lbz r0, 0x1e0(r4) +/* 8014F2E8 0014C248 98 03 00 18 */ stb r0, 0x18(r3) +/* 8014F2EC 0014C24C 88 04 01 E0 */ lbz r0, 0x1e0(r4) +/* 8014F2F0 0014C250 28 00 00 00 */ cmplwi r0, 0 +/* 8014F2F4 0014C254 4D 82 00 20 */ beqlr +/* 8014F2F8 0014C258 28 03 00 00 */ cmplwi r3, 0 +/* 8014F2FC 0014C25C 4D 82 00 20 */ beqlr +/* 8014F300 0014C260 C0 04 01 C8 */ lfs f0, 0x1c8(r4) +/* 8014F304 0014C264 D0 03 00 00 */ stfs f0, 0(r3) +/* 8014F308 0014C268 C0 04 01 CC */ lfs f0, 0x1cc(r4) +/* 8014F30C 0014C26C D0 03 00 04 */ stfs f0, 4(r3) +/* 8014F310 0014C270 C0 04 01 D0 */ lfs f0, 0x1d0(r4) +/* 8014F314 0014C274 D0 03 00 08 */ stfs f0, 8(r3) +/* 8014F318 0014C278 C0 04 01 D4 */ lfs f0, 0x1d4(r4) +/* 8014F31C 0014C27C D0 03 00 0C */ stfs f0, 0xc(r3) +/* 8014F320 0014C280 C0 04 01 D8 */ lfs f0, 0x1d8(r4) +/* 8014F324 0014C284 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 8014F328 0014C288 C0 04 01 DC */ lfs f0, 0x1dc(r4) +/* 8014F32C 0014C28C D0 03 00 14 */ stfs f0, 0x14(r3) +/* 8014F330 0014C290 4E 80 00 20 */ blr + +.global GetSpecialEnding__22CScriptSpecialFunctionCFv +GetSpecialEnding__22CScriptSpecialFunctionCFv: +/* 8014F334 0014C294 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8014F338 0014C298 7C 08 02 A6 */ mflr r0 +/* 8014F33C 0014C29C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014F340 0014C2A0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8014F344 0014C2A4 93 C1 00 08 */ stw r30, 8(r1) +/* 8014F348 0014C2A8 80 64 08 B8 */ lwz r3, 0x8b8(r4) +/* 8014F34C 0014C2AC 83 C3 00 00 */ lwz r30, 0(r3) +/* 8014F350 0014C2B0 7F C3 F3 78 */ mr r3, r30 +/* 8014F354 0014C2B4 4B F4 21 59 */ bl GetTotalPickupCount__12CPlayerStateFv +/* 8014F358 0014C2B8 7C 7F 1B 78 */ mr r31, r3 +/* 8014F35C 0014C2BC 7F C3 F3 78 */ mr r3, r30 +/* 8014F360 0014C2C0 4B F4 1E D5 */ bl CalculateItemCollectionRate__12CPlayerStateFv +/* 8014F364 0014C2C4 1C 03 00 64 */ mulli r0, r3, 0x64 +/* 8014F368 0014C2C8 7C 00 FB D6 */ divw r0, r0, r31 +/* 8014F36C 0014C2CC 2C 00 00 4B */ cmpwi r0, 0x4b +/* 8014F370 0014C2D0 40 80 00 0C */ bge lbl_8014F37C +/* 8014F374 0014C2D4 38 60 00 00 */ li r3, 0 +/* 8014F378 0014C2D8 48 00 00 14 */ b lbl_8014F38C +lbl_8014F37C: +/* 8014F37C 0014C2DC 2C 00 00 64 */ cmpwi r0, 0x64 +/* 8014F380 0014C2E0 38 60 00 02 */ li r3, 2 +/* 8014F384 0014C2E4 40 80 00 08 */ bge lbl_8014F38C +/* 8014F388 0014C2E8 38 60 00 01 */ li r3, 1 +lbl_8014F38C: +/* 8014F38C 0014C2EC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014F390 0014C2F0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8014F394 0014C2F4 83 C1 00 08 */ lwz r30, 8(r1) +/* 8014F398 0014C2F8 7C 08 03 A6 */ mtlr r0 +/* 8014F39C 0014C2FC 38 21 00 10 */ addi r1, r1, 0x10 +/* 8014F3A0 0014C300 4E 80 00 20 */ blr + +.global sub_8014f3a4 +sub_8014f3a4: +/* 8014F3A4 0014C304 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8014F3A8 0014C308 7C 08 02 A6 */ mflr r0 +/* 8014F3AC 0014C30C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8014F3B0 0014C310 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8014F3B4 0014C314 7C 9F 23 78 */ mr r31, r4 +/* 8014F3B8 0014C318 80 04 00 00 */ lwz r0, 0(r4) +/* 8014F3BC 0014C31C 28 00 00 00 */ cmplwi r0, 0 +/* 8014F3C0 0014C320 41 82 00 1C */ beq lbl_8014F3DC +/* 8014F3C4 0014C324 80 1F 00 00 */ lwz r0, 0(r31) +/* 8014F3C8 0014C328 38 61 00 08 */ addi r3, r1, 8 +/* 8014F3CC 0014C32C 90 01 00 08 */ stw r0, 8(r1) +/* 8014F3D0 0014C330 48 19 AA B5 */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle +/* 8014F3D4 0014C334 38 00 00 00 */ li r0, 0 +/* 8014F3D8 0014C338 90 1F 00 00 */ stw r0, 0(r31) +lbl_8014F3DC: +/* 8014F3DC 0014C33C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8014F3E0 0014C340 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8014F3E4 0014C344 7C 08 03 A6 */ mtlr r0 +/* 8014F3E8 0014C348 38 21 00 20 */ addi r1, r1, 0x20 +/* 8014F3EC 0014C34C 4E 80 00 20 */ blr + +.global sub_8014f3f0 +sub_8014f3f0: +/* 8014F3F0 0014C350 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8014F3F4 0014C354 7C 08 02 A6 */ mflr r0 +/* 8014F3F8 0014C358 90 01 00 44 */ stw r0, 0x44(r1) +/* 8014F3FC 0014C35C DB E1 00 30 */ stfd f31, 0x30(r1) +/* 8014F400 0014C360 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 8014F404 0014C364 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8014F408 0014C368 80 04 00 00 */ lwz r0, 0(r4) +/* 8014F40C 0014C36C FF E0 08 90 */ fmr f31, f1 +/* 8014F410 0014C370 7C 9F 23 78 */ mr r31, r4 +/* 8014F414 0014C374 28 00 00 00 */ cmplwi r0, 0 +/* 8014F418 0014C378 40 82 00 40 */ bne lbl_8014F458 +/* 8014F41C 0014C37C 80 82 C6 00 */ lwz r4, lbl_805AE320@sda21(r2) +/* 8014F420 0014C380 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8014F424 0014C384 38 03 66 A0 */ addi r0, r3, skZero3f@l +/* 8014F428 0014C388 A9 42 C5 FA */ lha r10, lbl_805AE31A@sda21(r2) +/* 8014F42C 0014C38C 90 81 00 08 */ stw r4, 8(r1) +/* 8014F430 0014C390 7C A4 2B 78 */ mr r4, r5 +/* 8014F434 0014C394 7C C5 33 78 */ mr r5, r6 +/* 8014F438 0014C398 7C 06 03 78 */ mr r6, r0 +/* 8014F43C 0014C39C 38 61 00 18 */ addi r3, r1, 0x18 +/* 8014F440 0014C3A0 39 00 00 01 */ li r8, 1 +/* 8014F444 0014C3A4 39 20 00 01 */ li r9, 1 +/* 8014F448 0014C3A8 48 19 AD 71 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fUcbbsi +/* 8014F44C 0014C3AC 80 01 00 18 */ lwz r0, 0x18(r1) +/* 8014F450 0014C3B0 90 1F 00 00 */ stw r0, 0(r31) +/* 8014F454 0014C3B4 48 00 00 4C */ b lbl_8014F4A0 +lbl_8014F458: +/* 8014F458 0014C3B8 80 1F 00 00 */ lwz r0, 0(r31) +/* 8014F45C 0014C3BC 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8014F460 0014C3C0 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 8014F464 0014C3C4 7C C4 33 78 */ mr r4, r6 +/* 8014F468 0014C3C8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014F46C 0014C3CC 7C E6 3B 78 */ mr r6, r7 +/* 8014F470 0014C3D0 38 61 00 14 */ addi r3, r1, 0x14 +/* 8014F474 0014C3D4 48 19 AA 3D */ bl UpdateEmitter__11CSfxManagerF10CSfxHandleRC9CVector3fRC9CVector3fUc +/* 8014F478 0014C3D8 C0 02 9D 98 */ lfs f0, lbl_805ABAB8@sda21(r2) +/* 8014F47C 0014C3DC 38 61 00 10 */ addi r3, r1, 0x10 +/* 8014F480 0014C3E0 80 1F 00 00 */ lwz r0, 0(r31) +/* 8014F484 0014C3E4 EC 00 07 FA */ fmadds f0, f0, f31, f0 +/* 8014F488 0014C3E8 90 01 00 10 */ stw r0, 0x10(r1) +/* 8014F48C 0014C3EC FC 00 00 1E */ fctiwz f0, f0 +/* 8014F490 0014C3F0 D8 01 00 20 */ stfd f0, 0x20(r1) +/* 8014F494 0014C3F4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8014F498 0014C3F8 7C 04 07 34 */ extsh r4, r0 +/* 8014F49C 0014C3FC 48 19 9A 11 */ bl PitchBend__11CSfxManagerF10CSfxHandlei +lbl_8014F4A0: +/* 8014F4A0 0014C400 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 8014F4A4 0014C404 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8014F4A8 0014C408 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 8014F4AC 0014C40C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8014F4B0 0014C410 7C 08 03 A6 */ mtlr r0 +/* 8014F4B4 0014C414 38 21 00 40 */ addi r1, r1, 0x40 +/* 8014F4B8 0014C418 4E 80 00 20 */ blr + +.global ThinkPlayerInArea__22CScriptSpecialFunctionFfR13CStateManager +ThinkPlayerInArea__22CScriptSpecialFunctionFfR13CStateManager: +/* 8014F4BC 0014C41C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8014F4C0 0014C420 7C 08 02 A6 */ mflr r0 +/* 8014F4C4 0014C424 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014F4C8 0014C428 80 A4 08 4C */ lwz r5, 0x84c(r4) +/* 8014F4CC 0014C42C 80 03 00 04 */ lwz r0, 4(r3) +/* 8014F4D0 0014C430 80 A5 00 04 */ lwz r5, 4(r5) +/* 8014F4D4 0014C434 7C 05 00 00 */ cmpw r5, r0 +/* 8014F4D8 0014C438 40 82 00 30 */ bne lbl_8014F508 +/* 8014F4DC 0014C43C 88 C3 01 E5 */ lbz r6, 0x1e5(r3) +/* 8014F4E0 0014C440 54 C0 D7 FF */ rlwinm. r0, r6, 0x1a, 0x1f, 0x1f +/* 8014F4E4 0014C444 40 82 00 4C */ bne lbl_8014F530 +/* 8014F4E8 0014C448 38 00 00 01 */ li r0, 1 +/* 8014F4EC 0014C44C 7C 85 23 78 */ mr r5, r4 +/* 8014F4F0 0014C450 50 06 36 72 */ rlwimi r6, r0, 6, 0x19, 0x19 +/* 8014F4F4 0014C454 38 80 00 03 */ li r4, 3 +/* 8014F4F8 0014C458 98 C3 01 E5 */ stb r6, 0x1e5(r3) +/* 8014F4FC 0014C45C 38 C0 FF FF */ li r6, -1 +/* 8014F500 0014C460 4B F0 1B C1 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 8014F504 0014C464 48 00 00 2C */ b lbl_8014F530 +lbl_8014F508: +/* 8014F508 0014C468 88 C3 01 E5 */ lbz r6, 0x1e5(r3) +/* 8014F50C 0014C46C 54 C0 D7 FF */ rlwinm. r0, r6, 0x1a, 0x1f, 0x1f +/* 8014F510 0014C470 41 82 00 20 */ beq lbl_8014F530 +/* 8014F514 0014C474 38 00 00 00 */ li r0, 0 +/* 8014F518 0014C478 7C 85 23 78 */ mr r5, r4 +/* 8014F51C 0014C47C 50 06 36 72 */ rlwimi r6, r0, 6, 0x19, 0x19 +/* 8014F520 0014C480 38 80 00 04 */ li r4, 4 +/* 8014F524 0014C484 98 C3 01 E5 */ stb r6, 0x1e5(r3) +/* 8014F528 0014C488 38 C0 FF FF */ li r6, -1 +/* 8014F52C 0014C48C 4B F0 1B 95 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_8014F530: +/* 8014F530 0014C490 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014F534 0014C494 7C 08 03 A6 */ mtlr r0 +/* 8014F538 0014C498 38 21 00 10 */ addi r1, r1, 0x10 +/* 8014F53C 0014C49C 4E 80 00 20 */ blr + +.global sub_8014f540 +sub_8014f540: +/* 8014F540 0014C4A0 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 8014F544 0014C4A4 7C 08 02 A6 */ mflr r0 +/* 8014F548 0014C4A8 90 01 00 84 */ stw r0, 0x84(r1) +/* 8014F54C 0014C4AC DB E1 00 70 */ stfd f31, 0x70(r1) +/* 8014F550 0014C4B0 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 8014F554 0014C4B4 DB C1 00 60 */ stfd f30, 0x60(r1) +/* 8014F558 0014C4B8 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 +/* 8014F55C 0014C4BC DB A1 00 50 */ stfd f29, 0x50(r1) +/* 8014F560 0014C4C0 F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 +/* 8014F564 0014C4C4 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 8014F568 0014C4C8 93 C1 00 48 */ stw r30, 0x48(r1) +/* 8014F56C 0014C4CC 93 A1 00 44 */ stw r29, 0x44(r1) +/* 8014F570 0014C4D0 93 81 00 40 */ stw r28, 0x40(r1) +/* 8014F574 0014C4D4 7C 7D 1B 78 */ mr r29, r3 +/* 8014F578 0014C4D8 7C 9E 23 78 */ mr r30, r4 +/* 8014F57C 0014C4DC C0 43 00 FC */ lfs f2, 0xfc(r3) +/* 8014F580 0014C4E0 C0 03 01 00 */ lfs f0, 0x100(r3) +/* 8014F584 0014C4E4 EF A1 00 B2 */ fmuls f29, f1, f2 +/* 8014F588 0014C4E8 83 E3 00 2C */ lwz r31, 0x2c(r3) +/* 8014F58C 0014C4EC D0 01 00 30 */ stfs f0, 0x30(r1) +/* 8014F590 0014C4F0 48 00 01 58 */ b lbl_8014F6E8 +lbl_8014F594: +/* 8014F594 0014C4F4 80 1F 00 00 */ lwz r0, 0(r31) +/* 8014F598 0014C4F8 2C 00 00 12 */ cmpwi r0, 0x12 +/* 8014F59C 0014C4FC 40 82 01 48 */ bne lbl_8014F6E4 +/* 8014F5A0 0014C500 80 1F 00 04 */ lwz r0, 4(r31) +/* 8014F5A4 0014C504 2C 00 00 01 */ cmpwi r0, 1 +/* 8014F5A8 0014C508 40 82 01 3C */ bne lbl_8014F6E4 +/* 8014F5AC 0014C50C 80 1F 00 08 */ lwz r0, 8(r31) +/* 8014F5B0 0014C510 7F C4 F3 78 */ mr r4, r30 +/* 8014F5B4 0014C514 38 61 00 0C */ addi r3, r1, 0xc +/* 8014F5B8 0014C518 38 A1 00 2C */ addi r5, r1, 0x2c +/* 8014F5BC 0014C51C 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8014F5C0 0014C520 4B EF 89 5D */ bl GetIdForScript__13CStateManagerCF9TEditorId +/* 8014F5C4 0014C524 A0 01 00 0C */ lhz r0, 0xc(r1) +/* 8014F5C8 0014C528 7F C3 F3 78 */ mr r3, r30 +/* 8014F5CC 0014C52C 38 81 00 08 */ addi r4, r1, 8 +/* 8014F5D0 0014C530 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8014F5D4 0014C534 B0 01 00 08 */ sth r0, 8(r1) +/* 8014F5D8 0014C538 4B EF CF 9D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8014F5DC 0014C53C 7C 64 1B 78 */ mr r4, r3 +/* 8014F5E0 0014C540 38 61 00 34 */ addi r3, r1, 0x34 +/* 8014F5E4 0014C544 4B F6 06 AD */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8014F5E8 0014C548 83 83 00 04 */ lwz r28, 4(r3) +/* 8014F5EC 0014C54C 28 1C 00 00 */ cmplwi r28, 0 +/* 8014F5F0 0014C550 41 82 00 F4 */ beq lbl_8014F6E4 +/* 8014F5F4 0014C554 80 9C 00 64 */ lwz r4, 0x64(r28) +/* 8014F5F8 0014C558 38 60 00 00 */ li r3, 0 +/* 8014F5FC 0014C55C 28 04 00 00 */ cmplwi r4, 0 +/* 8014F600 0014C560 41 82 00 20 */ beq lbl_8014F620 +/* 8014F604 0014C564 80 04 00 10 */ lwz r0, 0x10(r4) +/* 8014F608 0014C568 28 00 00 00 */ cmplwi r0, 0 +/* 8014F60C 0014C56C 40 82 00 10 */ bne lbl_8014F61C +/* 8014F610 0014C570 88 04 00 28 */ lbz r0, 0x28(r4) +/* 8014F614 0014C574 28 00 00 00 */ cmplwi r0, 0 +/* 8014F618 0014C578 41 82 00 08 */ beq lbl_8014F620 +lbl_8014F61C: +/* 8014F61C 0014C57C 38 60 00 01 */ li r3, 1 +lbl_8014F620: +/* 8014F620 0014C580 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8014F624 0014C584 41 82 00 C0 */ beq lbl_8014F6E4 +/* 8014F628 0014C588 C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) +/* 8014F62C 0014C58C C0 24 00 00 */ lfs f1, 0(r4) +/* 8014F630 0014C590 FC 1D 00 40 */ fcmpo cr0, f29, f0 +/* 8014F634 0014C594 C3 E4 00 04 */ lfs f31, 4(r4) +/* 8014F638 0014C598 C3 C4 00 08 */ lfs f30, 8(r4) +/* 8014F63C 0014C59C 40 81 00 50 */ ble lbl_8014F68C +/* 8014F640 0014C5A0 EC 1D 08 2A */ fadds f0, f29, f1 +/* 8014F644 0014C5A4 38 61 00 28 */ addi r3, r1, 0x28 +/* 8014F648 0014C5A8 38 81 00 30 */ addi r4, r1, 0x30 +/* 8014F64C 0014C5AC D0 01 00 28 */ stfs f0, 0x28(r1) +/* 8014F650 0014C5B0 4B F2 E7 91 */ bl "Min__5CMathFRCfRCf" +/* 8014F654 0014C5B4 EC 1D F8 2A */ fadds f0, f29, f31 +/* 8014F658 0014C5B8 C3 E3 00 00 */ lfs f31, 0(r3) +/* 8014F65C 0014C5BC 38 61 00 24 */ addi r3, r1, 0x24 +/* 8014F660 0014C5C0 38 81 00 30 */ addi r4, r1, 0x30 +/* 8014F664 0014C5C4 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 8014F668 0014C5C8 4B F2 E7 79 */ bl "Min__5CMathFRCfRCf" +/* 8014F66C 0014C5CC EC 1D F0 2A */ fadds f0, f29, f30 +/* 8014F670 0014C5D0 C3 C3 00 00 */ lfs f30, 0(r3) +/* 8014F674 0014C5D4 38 61 00 20 */ addi r3, r1, 0x20 +/* 8014F678 0014C5D8 38 81 00 30 */ addi r4, r1, 0x30 +/* 8014F67C 0014C5DC D0 01 00 20 */ stfs f0, 0x20(r1) +/* 8014F680 0014C5E0 4B F2 E7 61 */ bl "Min__5CMathFRCfRCf" +/* 8014F684 0014C5E4 C0 03 00 00 */ lfs f0, 0(r3) +/* 8014F688 0014C5E8 48 00 00 4C */ b lbl_8014F6D4 +lbl_8014F68C: +/* 8014F68C 0014C5EC EC 1D 08 2A */ fadds f0, f29, f1 +/* 8014F690 0014C5F0 38 61 00 1C */ addi r3, r1, 0x1c +/* 8014F694 0014C5F4 38 81 00 30 */ addi r4, r1, 0x30 +/* 8014F698 0014C5F8 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8014F69C 0014C5FC 4B F0 00 95 */ bl "Max__5CMathFRCfRCf" +/* 8014F6A0 0014C600 EC 1D F8 2A */ fadds f0, f29, f31 +/* 8014F6A4 0014C604 C3 E3 00 00 */ lfs f31, 0(r3) +/* 8014F6A8 0014C608 38 61 00 18 */ addi r3, r1, 0x18 +/* 8014F6AC 0014C60C 38 81 00 30 */ addi r4, r1, 0x30 +/* 8014F6B0 0014C610 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 8014F6B4 0014C614 4B F0 00 7D */ bl "Max__5CMathFRCfRCf" +/* 8014F6B8 0014C618 EC 1D F0 2A */ fadds f0, f29, f30 +/* 8014F6BC 0014C61C C3 C3 00 00 */ lfs f30, 0(r3) +/* 8014F6C0 0014C620 38 61 00 14 */ addi r3, r1, 0x14 +/* 8014F6C4 0014C624 38 81 00 30 */ addi r4, r1, 0x30 +/* 8014F6C8 0014C628 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8014F6CC 0014C62C 4B F0 00 65 */ bl "Max__5CMathFRCfRCf" +/* 8014F6D0 0014C630 C0 03 00 00 */ lfs f0, 0(r3) +lbl_8014F6D4: +/* 8014F6D4 0014C634 80 7C 00 64 */ lwz r3, 0x64(r28) +/* 8014F6D8 0014C638 D3 E3 00 00 */ stfs f31, 0(r3) +/* 8014F6DC 0014C63C D3 C3 00 04 */ stfs f30, 4(r3) +/* 8014F6E0 0014C640 D0 03 00 08 */ stfs f0, 8(r3) +lbl_8014F6E4: +/* 8014F6E4 0014C644 3B FF 00 0C */ addi r31, r31, 0xc +lbl_8014F6E8: +/* 8014F6E8 0014C648 80 1D 00 24 */ lwz r0, 0x24(r29) +/* 8014F6EC 0014C64C 80 7D 00 2C */ lwz r3, 0x2c(r29) +/* 8014F6F0 0014C650 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8014F6F4 0014C654 7C 03 02 14 */ add r0, r3, r0 +/* 8014F6F8 0014C658 7C 1F 00 40 */ cmplw r31, r0 +/* 8014F6FC 0014C65C 40 82 FE 98 */ bne lbl_8014F594 +/* 8014F700 0014C660 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 8014F704 0014C664 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 8014F708 0014C668 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 +/* 8014F70C 0014C66C CB C1 00 60 */ lfd f30, 0x60(r1) +/* 8014F710 0014C670 E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0 +/* 8014F714 0014C674 CB A1 00 50 */ lfd f29, 0x50(r1) +/* 8014F718 0014C678 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 8014F71C 0014C67C 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 8014F720 0014C680 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 8014F724 0014C684 80 01 00 84 */ lwz r0, 0x84(r1) +/* 8014F728 0014C688 83 81 00 40 */ lwz r28, 0x40(r1) +/* 8014F72C 0014C68C 7C 08 03 A6 */ mtlr r0 +/* 8014F730 0014C690 38 21 00 80 */ addi r1, r1, 0x80 +/* 8014F734 0014C694 4E 80 00 20 */ blr + +.global ThinkAreaDamage__22CScriptSpecialFunctionFfR13CStateManager +ThinkAreaDamage__22CScriptSpecialFunctionFfR13CStateManager: +/* 8014F738 0014C698 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 8014F73C 0014C69C 7C 08 02 A6 */ mflr r0 +/* 8014F740 0014C6A0 90 01 00 84 */ stw r0, 0x84(r1) +/* 8014F744 0014C6A4 DB E1 00 70 */ stfd f31, 0x70(r1) +/* 8014F748 0014C6A8 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 8014F74C 0014C6AC 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 8014F750 0014C6B0 93 C1 00 68 */ stw r30, 0x68(r1) +/* 8014F754 0014C6B4 93 A1 00 64 */ stw r29, 0x64(r1) +/* 8014F758 0014C6B8 7C 7D 1B 78 */ mr r29, r3 +/* 8014F75C 0014C6BC 80 64 08 B8 */ lwz r3, 0x8b8(r4) +/* 8014F760 0014C6C0 83 E4 08 4C */ lwz r31, 0x84c(r4) +/* 8014F764 0014C6C4 7C 9E 23 78 */ mr r30, r4 +/* 8014F768 0014C6C8 80 83 00 00 */ lwz r4, 0(r3) +/* 8014F76C 0014C6CC FF E0 08 90 */ fmr f31, f1 +/* 8014F770 0014C6D0 88 7D 01 E4 */ lbz r3, 0x1e4(r29) +/* 8014F774 0014C6D4 80 E4 00 20 */ lwz r7, 0x20(r4) +/* 8014F778 0014C6D8 54 60 07 FF */ clrlwi. r0, r3, 0x1f +/* 8014F77C 0014C6DC 80 DF 00 04 */ lwz r6, 4(r31) +/* 8014F780 0014C6E0 80 BD 00 04 */ lwz r5, 4(r29) +/* 8014F784 0014C6E4 7C 87 00 D0 */ neg r4, r7 +/* 8014F788 0014C6E8 7C 84 38 78 */ andc r4, r4, r7 +/* 8014F78C 0014C6EC 7C 06 28 50 */ subf r0, r6, r5 +/* 8014F790 0014C6F0 7C 00 00 34 */ cntlzw r0, r0 +/* 8014F794 0014C6F4 54 84 0F FE */ srwi r4, r4, 0x1f +/* 8014F798 0014C6F8 54 00 D9 7E */ srwi r0, r0, 5 +/* 8014F79C 0014C6FC 41 82 00 54 */ beq lbl_8014F7F0 +/* 8014F7A0 0014C700 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8014F7A4 0014C704 41 82 00 0C */ beq lbl_8014F7B0 +/* 8014F7A8 0014C708 28 04 00 00 */ cmplwi r4, 0 +/* 8014F7AC 0014C70C 41 82 00 90 */ beq lbl_8014F83C +lbl_8014F7B0: +/* 8014F7B0 0014C710 88 1D 01 E4 */ lbz r0, 0x1e4(r29) +/* 8014F7B4 0014C714 38 60 00 00 */ li r3, 0 +/* 8014F7B8 0014C718 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f +/* 8014F7BC 0014C71C 98 1D 01 E4 */ stb r0, 0x1e4(r29) +/* 8014F7C0 0014C720 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 8014F7C4 0014C724 4B EC 21 81 */ bl DecrementPhazon__7CPlayerFv +/* 8014F7C8 0014C728 7F A3 EB 78 */ mr r3, r29 +/* 8014F7CC 0014C72C 7F C5 F3 78 */ mr r5, r30 +/* 8014F7D0 0014C730 38 80 00 04 */ li r4, 4 +/* 8014F7D4 0014C734 38 C0 FF FF */ li r6, -1 +/* 8014F7D8 0014C738 4B F0 18 E9 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 8014F7DC 0014C73C 88 1E 0F 94 */ lbz r0, 0xf94(r30) +/* 8014F7E0 0014C740 38 60 00 00 */ li r3, 0 +/* 8014F7E4 0014C744 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 8014F7E8 0014C748 98 1E 0F 94 */ stb r0, 0xf94(r30) +/* 8014F7EC 0014C74C 48 00 01 28 */ b lbl_8014F914 +lbl_8014F7F0: +/* 8014F7F0 0014C750 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8014F7F4 0014C754 41 82 01 20 */ beq lbl_8014F914 +/* 8014F7F8 0014C758 28 04 00 00 */ cmplwi r4, 0 +/* 8014F7FC 0014C75C 41 82 00 08 */ beq lbl_8014F804 +/* 8014F800 0014C760 48 00 01 14 */ b lbl_8014F914 +lbl_8014F804: +/* 8014F804 0014C764 38 00 00 01 */ li r0, 1 +/* 8014F808 0014C768 50 03 07 FE */ rlwimi r3, r0, 0, 0x1f, 0x1f +/* 8014F80C 0014C76C 98 7D 01 E4 */ stb r3, 0x1e4(r29) +/* 8014F810 0014C770 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 8014F814 0014C774 4B EC 21 49 */ bl IncrementPhazon__7CPlayerFv +/* 8014F818 0014C778 7F A3 EB 78 */ mr r3, r29 +/* 8014F81C 0014C77C 7F C5 F3 78 */ mr r5, r30 +/* 8014F820 0014C780 38 80 00 03 */ li r4, 3 +/* 8014F824 0014C784 38 C0 FF FF */ li r6, -1 +/* 8014F828 0014C788 4B F0 18 99 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 8014F82C 0014C78C 88 1E 0F 94 */ lbz r0, 0xf94(r30) +/* 8014F830 0014C790 38 60 00 01 */ li r3, 1 +/* 8014F834 0014C794 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 8014F838 0014C798 98 1E 0F 94 */ stb r0, 0xf94(r30) +lbl_8014F83C: +/* 8014F83C 0014C79C 88 01 00 24 */ lbz r0, 0x24(r1) +/* 8014F840 0014C7A0 38 60 00 00 */ li r3, 0 +/* 8014F844 0014C7A4 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8014F848 0014C7A8 C0 1D 00 FC */ lfs f0, 0xfc(r29) +/* 8014F84C 0014C7AC 98 01 00 24 */ stb r0, 0x24(r1) +/* 8014F850 0014C7B0 38 E0 00 0C */ li r7, 0xc +/* 8014F854 0014C7B4 EC 20 07 F2 */ fmuls f1, f0, f31 +/* 8014F858 0014C7B8 54 00 06 3E */ clrlwi r0, r0, 0x18 +/* 8014F85C 0014C7BC 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8014F860 0014C7C0 C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) +/* 8014F864 0014C7C4 54 06 06 3E */ clrlwi r6, r0, 0x18 +/* 8014F868 0014C7C8 98 01 00 24 */ stb r0, 0x24(r1) +/* 8014F86C 0014C7CC 50 66 2E B4 */ rlwimi r6, r3, 5, 0x1a, 0x1a +/* 8014F870 0014C7D0 88 01 00 58 */ lbz r0, 0x58(r1) +/* 8014F874 0014C7D4 38 60 00 01 */ li r3, 1 +/* 8014F878 0014C7D8 80 AD 8C 48 */ lwz r5, lbl_805A7808@sda21(r13) +/* 8014F87C 0014C7DC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8014F880 0014C7E0 90 E1 00 20 */ stw r7, 0x20(r1) +/* 8014F884 0014C7E4 38 60 00 00 */ li r3, 0 +/* 8014F888 0014C7E8 38 80 00 01 */ li r4, 1 +/* 8014F88C 0014C7EC 98 C1 00 24 */ stb r6, 0x24(r1) +/* 8014F890 0014C7F0 90 E1 00 40 */ stw r7, 0x40(r1) +/* 8014F894 0014C7F4 98 C1 00 44 */ stb r6, 0x44(r1) +/* 8014F898 0014C7F8 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 8014F89C 0014C7FC D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 8014F8A0 0014C800 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8014F8A4 0014C804 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 8014F8A8 0014C808 98 01 00 58 */ stb r0, 0x58(r1) +/* 8014F8AC 0014C80C 48 23 A6 49 */ bl __shl2i +/* 8014F8B0 0014C810 39 40 00 00 */ li r10, 0 +/* 8014F8B4 0014C814 38 00 00 03 */ li r0, 3 +/* 8014F8B8 0014C818 90 81 00 2C */ stw r4, 0x2c(r1) +/* 8014F8BC 0014C81C 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8014F8C0 0014C820 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 8014F8C4 0014C824 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8014F8C8 0014C828 90 61 00 28 */ stw r3, 0x28(r1) +/* 8014F8CC 0014C82C 38 81 00 1C */ addi r4, r1, 0x1c +/* 8014F8D0 0014C830 7F C3 F3 78 */ mr r3, r30 +/* 8014F8D4 0014C834 38 C1 00 0C */ addi r6, r1, 0xc +/* 8014F8D8 0014C838 91 41 00 34 */ stw r10, 0x34(r1) +/* 8014F8DC 0014C83C 38 E1 00 40 */ addi r7, r1, 0x40 +/* 8014F8E0 0014C840 39 01 00 28 */ addi r8, r1, 0x28 +/* 8014F8E4 0014C844 91 41 00 30 */ stw r10, 0x30(r1) +/* 8014F8E8 0014C848 90 01 00 38 */ stw r0, 0x38(r1) +/* 8014F8EC 0014C84C A0 1D 00 08 */ lhz r0, 8(r29) +/* 8014F8F0 0014C850 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8014F8F4 0014C854 A1 5F 00 08 */ lhz r10, 8(r31) +/* 8014F8F8 0014C858 B0 01 00 08 */ sth r0, 8(r1) +/* 8014F8FC 0014C85C B1 41 00 14 */ sth r10, 0x14(r1) +/* 8014F900 0014C860 A0 1D 00 08 */ lhz r0, 8(r29) +/* 8014F904 0014C864 B1 41 00 10 */ sth r10, 0x10(r1) +/* 8014F908 0014C868 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8014F90C 0014C86C B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8014F910 0014C870 4B EF A7 91 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +lbl_8014F914: +/* 8014F914 0014C874 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 8014F918 0014C878 80 01 00 84 */ lwz r0, 0x84(r1) +/* 8014F91C 0014C87C CB E1 00 70 */ lfd f31, 0x70(r1) +/* 8014F920 0014C880 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 8014F924 0014C884 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 8014F928 0014C888 83 A1 00 64 */ lwz r29, 0x64(r1) +/* 8014F92C 0014C88C 7C 08 03 A6 */ mtlr r0 +/* 8014F930 0014C890 38 21 00 80 */ addi r1, r1, 0x80 +/* 8014F934 0014C894 4E 80 00 20 */ blr + +.global ThinkRainSimulator__22CScriptSpecialFunctionFfR13CStateManager +ThinkRainSimulator__22CScriptSpecialFunctionFfR13CStateManager: +/* 8014F938 0014C898 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8014F93C 0014C89C 7C 08 02 A6 */ mflr r0 +/* 8014F940 0014C8A0 3C A0 91 A3 */ lis r5, 0x91A2B3C5@ha +/* 8014F944 0014C8A4 C8 62 9D A8 */ lfd f3, lbl_805ABAC8@sda21(r2) +/* 8014F948 0014C8A8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014F94C 0014C8AC 3C 00 43 30 */ lis r0, 0x4330 +/* 8014F950 0014C8B0 38 A5 B3 C5 */ addi r5, r5, 0x91A2B3C5@l +/* 8014F954 0014C8B4 C0 22 9D A0 */ lfs f1, lbl_805ABAC0@sda21(r2) +/* 8014F958 0014C8B8 80 C4 08 D4 */ lwz r6, 0x8d4(r4) +/* 8014F95C 0014C8BC 90 01 00 08 */ stw r0, 8(r1) +/* 8014F960 0014C8C0 7C A5 30 16 */ mulhwu r5, r5, r6 +/* 8014F964 0014C8C4 C0 02 9D A4 */ lfs f0, lbl_805ABAC4@sda21(r2) +/* 8014F968 0014C8C8 54 A5 AA FE */ srwi r5, r5, 0xb +/* 8014F96C 0014C8CC 1C 05 0E 10 */ mulli r0, r5, 0xe10 +/* 8014F970 0014C8D0 7C 00 30 50 */ subf r0, r0, r6 +/* 8014F974 0014C8D4 90 01 00 0C */ stw r0, 0xc(r1) +/* 8014F978 0014C8D8 C8 41 00 08 */ lfd f2, 8(r1) +/* 8014F97C 0014C8DC EC 42 18 28 */ fsubs f2, f2, f3 +/* 8014F980 0014C8E0 EC 22 08 24 */ fdivs f1, f2, f1 +/* 8014F984 0014C8E4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8014F988 0014C8E8 40 80 00 18 */ bge lbl_8014F9A0 +/* 8014F98C 0014C8EC 7C 85 23 78 */ mr r5, r4 +/* 8014F990 0014C8F0 38 80 00 07 */ li r4, 7 +/* 8014F994 0014C8F4 38 C0 FF FF */ li r6, -1 +/* 8014F998 0014C8F8 4B F0 17 29 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 8014F99C 0014C8FC 48 00 00 14 */ b lbl_8014F9B0 +lbl_8014F9A0: +/* 8014F9A0 0014C900 7C 85 23 78 */ mr r5, r4 +/* 8014F9A4 0014C904 38 80 00 09 */ li r4, 9 +/* 8014F9A8 0014C908 38 C0 FF FF */ li r6, -1 +/* 8014F9AC 0014C90C 4B F0 17 15 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_8014F9B0: +/* 8014F9B0 0014C910 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014F9B4 0014C914 7C 08 03 A6 */ mtlr r0 +/* 8014F9B8 0014C918 38 21 00 10 */ addi r1, r1, 0x10 +/* 8014F9BC 0014C91C 4E 80 00 20 */ blr + +.global ThinkChaffTarget__22CScriptSpecialFunctionFfR13CStateManager +ThinkChaffTarget__22CScriptSpecialFunctionFfR13CStateManager: +/* 8014F9C0 0014C920 94 21 F7 50 */ stwu r1, -0x8b0(r1) +/* 8014F9C4 0014C924 7C 08 02 A6 */ mflr r0 +/* 8014F9C8 0014C928 90 01 08 B4 */ stw r0, 0x8b4(r1) +/* 8014F9CC 0014C92C DB E1 08 A0 */ stfd f31, 0x8a0(r1) +/* 8014F9D0 0014C930 F3 E1 08 A8 */ psq_st f31, -1880(r1), 0, qr0 +/* 8014F9D4 0014C934 BF 61 08 8C */ stmw r27, 0x88c(r1) +/* 8014F9D8 0014C938 38 00 00 00 */ li r0, 0 +/* 8014F9DC 0014C93C 7C 7E 1B 78 */ mr r30, r3 +/* 8014F9E0 0014C940 90 01 00 80 */ stw r0, 0x80(r1) +/* 8014F9E4 0014C944 7C 9F 23 78 */ mr r31, r4 +/* 8014F9E8 0014C948 C0 62 9D B0 */ lfs f3, lbl_805ABAD0@sda21(r2) +/* 8014F9EC 0014C94C FF E0 08 90 */ fmr f31, f1 +/* 8014F9F0 0014C950 C0 83 00 50 */ lfs f4, 0x50(r3) +/* 8014F9F4 0014C954 38 61 00 68 */ addi r3, r1, 0x68 +/* 8014F9F8 0014C958 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 8014F9FC 0014C95C 38 81 00 40 */ addi r4, r1, 0x40 +/* 8014FA00 0014C960 C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8014FA04 0014C964 EC C4 18 2A */ fadds f6, f4, f3 +/* 8014FA08 0014C968 38 A1 00 34 */ addi r5, r1, 0x34 +/* 8014FA0C 0014C96C EC A2 18 2A */ fadds f5, f2, f3 +/* 8014FA10 0014C970 EC 20 18 2A */ fadds f1, f0, f3 +/* 8014FA14 0014C974 EC 84 18 28 */ fsubs f4, f4, f3 +/* 8014FA18 0014C978 D0 C1 00 38 */ stfs f6, 0x38(r1) +/* 8014FA1C 0014C97C EC 42 18 28 */ fsubs f2, f2, f3 +/* 8014FA20 0014C980 EC 00 18 28 */ fsubs f0, f0, f3 +/* 8014FA24 0014C984 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 8014FA28 0014C988 D0 A1 00 3C */ stfs f5, 0x3c(r1) +/* 8014FA2C 0014C98C D0 01 00 40 */ stfs f0, 0x40(r1) +/* 8014FA30 0014C990 D0 81 00 44 */ stfs f4, 0x44(r1) +/* 8014FA34 0014C994 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 8014FA38 0014C998 48 1E 8A D1 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8014FA3C 0014C99C 80 AD 8C 68 */ lwz r5, lbl_805A7828@sda21(r13) +/* 8014FA40 0014C9A0 38 60 00 00 */ li r3, 0 +/* 8014FA44 0014C9A4 38 80 00 01 */ li r4, 1 +/* 8014FA48 0014C9A8 48 23 A4 AD */ bl __shl2i +/* 8014FA4C 0014C9AC 39 00 00 00 */ li r8, 0 +/* 8014FA50 0014C9B0 38 00 00 01 */ li r0, 1 +/* 8014FA54 0014C9B4 90 81 00 54 */ stw r4, 0x54(r1) +/* 8014FA58 0014C9B8 38 81 00 80 */ addi r4, r1, 0x80 +/* 8014FA5C 0014C9BC 38 A1 00 68 */ addi r5, r1, 0x68 +/* 8014FA60 0014C9C0 38 C1 00 50 */ addi r6, r1, 0x50 +/* 8014FA64 0014C9C4 90 61 00 50 */ stw r3, 0x50(r1) +/* 8014FA68 0014C9C8 7F E3 FB 78 */ mr r3, r31 +/* 8014FA6C 0014C9CC 38 E0 00 00 */ li r7, 0 +/* 8014FA70 0014C9D0 91 01 00 5C */ stw r8, 0x5c(r1) +/* 8014FA74 0014C9D4 91 01 00 58 */ stw r8, 0x58(r1) +/* 8014FA78 0014C9D8 90 01 00 60 */ stw r0, 0x60(r1) +/* 8014FA7C 0014C9DC 4B EF CC A5 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 8014FA80 0014C9E0 3B A1 00 84 */ addi r29, r1, 0x84 +/* 8014FA84 0014C9E4 3B 9F 0C BC */ addi r28, r31, 0xcbc +/* 8014FA88 0014C9E8 3B 60 00 00 */ li r27, 0 +/* 8014FA8C 0014C9EC 48 00 00 C4 */ b lbl_8014FB50 +lbl_8014FA90: +/* 8014FA90 0014C9F0 A0 1D 00 00 */ lhz r0, 0(r29) +/* 8014FA94 0014C9F4 7F E3 FB 78 */ mr r3, r31 +/* 8014FA98 0014C9F8 38 81 00 20 */ addi r4, r1, 0x20 +/* 8014FA9C 0014C9FC B0 01 00 20 */ sth r0, 0x20(r1) +/* 8014FAA0 0014CA00 4B EF CA D5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8014FAA4 0014CA04 7C 64 1B 78 */ mr r4, r3 +/* 8014FAA8 0014CA08 38 61 00 2C */ addi r3, r1, 0x2c +/* 8014FAAC 0014CA0C 4B F5 F2 1D */ bl "__ct__31TCastToPtr<17CEnergyProjectile>FP7CEntity" +/* 8014FAB0 0014CA10 80 83 00 04 */ lwz r4, 4(r3) +/* 8014FAB4 0014CA14 28 04 00 00 */ cmplwi r4, 0 +/* 8014FAB8 0014CA18 41 82 00 90 */ beq lbl_8014FB48 +/* 8014FABC 0014CA1C A0 64 02 C0 */ lhz r3, 0x2c0(r4) +/* 8014FAC0 0014CA20 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8014FAC4 0014CA24 7C 03 00 40 */ cmplw r3, r0 +/* 8014FAC8 0014CA28 40 82 00 80 */ bne lbl_8014FB48 +/* 8014FACC 0014CA2C 88 04 03 D0 */ lbz r0, 0x3d0(r4) +/* 8014FAD0 0014CA30 38 60 00 01 */ li r3, 1 +/* 8014FAD4 0014CA34 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 8014FAD8 0014CA38 98 04 03 D0 */ stb r0, 0x3d0(r4) +/* 8014FADC 0014CA3C 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8014FAE0 0014CA40 80 1E 00 04 */ lwz r0, 4(r30) +/* 8014FAE4 0014CA44 80 83 00 04 */ lwz r4, 4(r3) +/* 8014FAE8 0014CA48 7C 04 00 00 */ cmpw r4, r0 +/* 8014FAEC 0014CA4C 40 82 00 5C */ bne lbl_8014FB48 +/* 8014FAF0 0014CA50 C0 3E 01 00 */ lfs f1, 0x100(r30) +/* 8014FAF4 0014CA54 C0 42 80 F8 */ lfs f2, lbl_805A9E18@sda21(r2) +/* 8014FAF8 0014CA58 C0 62 80 FC */ lfs f3, lbl_805A9E1C@sda21(r2) +/* 8014FAFC 0014CA5C 4B EC 35 71 */ bl SetHudDisable__7CPlayerFfff +/* 8014FB00 0014CA60 C0 22 9D B4 */ lfs f1, lbl_805ABAD4@sda21(r2) +/* 8014FB04 0014CA64 38 61 00 28 */ addi r3, r1, 0x28 +/* 8014FB08 0014CA68 C0 1E 00 FC */ lfs f0, 0xfc(r30) +/* 8014FB0C 0014CA6C FC 40 08 90 */ fmr f2, f1 +/* 8014FB10 0014CA70 FC 60 08 90 */ fmr f3, f1 +/* 8014FB14 0014CA74 D0 1E 01 94 */ stfs f0, 0x194(r30) +/* 8014FB18 0014CA78 FC 80 08 90 */ fmr f4, f1 +/* 8014FB1C 0014CA7C 48 21 38 D1 */ bl __ct__6CColorFffff +/* 8014FB20 0014CA80 C0 22 9D 9C */ lfs f1, lbl_805ABABC@sda21(r2) +/* 8014FB24 0014CA84 7C 66 1B 78 */ mr r6, r3 +/* 8014FB28 0014CA88 7F 83 E3 78 */ mr r3, r28 +/* 8014FB2C 0014CA8C 38 80 00 05 */ li r4, 5 +/* 8014FB30 0014CA90 38 A0 00 00 */ li r5, 0 +/* 8014FB34 0014CA94 38 E0 FF FF */ li r7, -1 +/* 8014FB38 0014CA98 4B F9 D8 69 */ bl SetFilter__17CCameraFilterPassFQ217CCameraFilterPass11EFilterTypeQ217CCameraFilterPass12EFilterShapefRC6CColorUi +/* 8014FB3C 0014CA9C C0 22 9D B8 */ lfs f1, lbl_805ABAD8@sda21(r2) +/* 8014FB40 0014CAA0 7F 83 E3 78 */ mr r3, r28 +/* 8014FB44 0014CAA4 4B F9 D8 25 */ bl DisableFilter__17CCameraFilterPassFf +lbl_8014FB48: +/* 8014FB48 0014CAA8 3B BD 00 02 */ addi r29, r29, 2 +/* 8014FB4C 0014CAAC 3B 7B 00 01 */ addi r27, r27, 1 +lbl_8014FB50: +/* 8014FB50 0014CAB0 80 01 00 80 */ lwz r0, 0x80(r1) +/* 8014FB54 0014CAB4 7C 1B 00 00 */ cmpw r27, r0 +/* 8014FB58 0014CAB8 41 80 FF 38 */ blt lbl_8014FA90 +/* 8014FB5C 0014CABC C0 1E 01 94 */ lfs f0, 0x194(r30) +/* 8014FB60 0014CAC0 38 81 00 24 */ addi r4, r1, 0x24 +/* 8014FB64 0014CAC4 3B 60 00 00 */ li r27, 0 +/* 8014FB68 0014CAC8 38 6D 8C 6C */ addi r3, r13, lbl_805A782C@sda21 +/* 8014FB6C 0014CACC EC 00 F8 28 */ fsubs f0, f0, f31 +/* 8014FB70 0014CAD0 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 8014FB74 0014CAD4 4B EF FB BD */ bl "Max__5CMathFRCfRCf" +/* 8014FB78 0014CAD8 C0 23 00 00 */ lfs f1, 0(r3) +/* 8014FB7C 0014CADC C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) +/* 8014FB80 0014CAE0 D0 3E 01 94 */ stfs f1, 0x194(r30) +/* 8014FB84 0014CAE4 C0 BE 01 94 */ lfs f5, 0x194(r30) +/* 8014FB88 0014CAE8 FC 05 00 00 */ fcmpu cr0, f5, f0 +/* 8014FB8C 0014CAEC 41 82 00 6C */ beq lbl_8014FBF8 +/* 8014FB90 0014CAF0 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8014FB94 0014CAF4 80 1E 00 04 */ lwz r0, 4(r30) +/* 8014FB98 0014CAF8 80 63 00 04 */ lwz r3, 4(r3) +/* 8014FB9C 0014CAFC 7C 03 00 00 */ cmpw r3, r0 +/* 8014FBA0 0014CB00 40 82 00 58 */ bne lbl_8014FBF8 +/* 8014FBA4 0014CB04 C0 62 9D A4 */ lfs f3, lbl_805ABAC4@sda21(r2) +/* 8014FBA8 0014CB08 3B 60 00 01 */ li r27, 1 +/* 8014FBAC 0014CB0C C0 02 9D B4 */ lfs f0, lbl_805ABAD4@sda21(r2) +/* 8014FBB0 0014CB10 EC 43 01 72 */ fmuls f2, f3, f5 +/* 8014FBB4 0014CB14 C0 3E 00 FC */ lfs f1, 0xfc(r30) +/* 8014FBB8 0014CB18 C0 9E 01 04 */ lfs f4, 0x104(r30) +/* 8014FBBC 0014CB1C FC 05 00 40 */ fcmpo cr0, f5, f0 +/* 8014FBC0 0014CB20 EC 02 08 24 */ fdivs f0, f2, f1 +/* 8014FBC4 0014CB24 EC 03 00 2A */ fadds f0, f3, f0 +/* 8014FBC8 0014CB28 EC 24 00 32 */ fmuls f1, f4, f0 +/* 8014FBCC 0014CB2C 40 80 00 08 */ bge lbl_8014FBD4 +/* 8014FBD0 0014CB30 EC 21 01 72 */ fmuls f1, f1, f5 +lbl_8014FBD4: +/* 8014FBD4 0014CB34 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8014FBD8 0014CB38 38 81 00 1C */ addi r4, r1, 0x1c +/* 8014FBDC 0014CB3C C0 42 9D A4 */ lfs f2, lbl_805ABAC4@sda21(r2) +/* 8014FBE0 0014CB40 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8014FBE4 0014CB44 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 8014FBE8 0014CB48 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8014FBEC 0014CB4C 80 63 00 00 */ lwz r3, 0(r3) +/* 8014FBF0 0014CB50 38 63 01 88 */ addi r3, r3, 0x188 +/* 8014FBF4 0014CB54 48 07 0F 45 */ bl AddSource__19CStaticInterferenceF9TUniqueId +lbl_8014FBF8: +/* 8014FBF8 0014CB58 57 60 06 3F */ clrlwi. r0, r27, 0x18 +/* 8014FBFC 0014CB5C 41 82 00 38 */ beq lbl_8014FC34 +/* 8014FC00 0014CB60 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 8014FC04 0014CB64 80 63 00 00 */ lwz r3, 0(r3) +/* 8014FC08 0014CB68 80 03 00 14 */ lwz r0, 0x14(r3) +/* 8014FC0C 0014CB6C 2C 00 00 03 */ cmpwi r0, 3 +/* 8014FC10 0014CB70 41 82 00 24 */ beq lbl_8014FC34 +/* 8014FC14 0014CB74 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8014FC18 0014CB78 7F E4 FB 78 */ mr r4, r31 +/* 8014FC1C 0014CB7C 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8014FC20 0014CB80 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8014FC24 0014CB84 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8014FC28 0014CB88 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8014FC2C 0014CB8C 48 02 E4 25 */ bl AddOrbitDisableSource__7CPlayerFR13CStateManager9TUniqueId +/* 8014FC30 0014CB90 48 00 00 1C */ b lbl_8014FC4C +lbl_8014FC34: +/* 8014FC34 0014CB94 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8014FC38 0014CB98 38 81 00 0C */ addi r4, r1, 0xc +/* 8014FC3C 0014CB9C B0 01 00 0C */ sth r0, 0xc(r1) +/* 8014FC40 0014CBA0 B0 01 00 08 */ sth r0, 8(r1) +/* 8014FC44 0014CBA4 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8014FC48 0014CBA8 48 02 E3 89 */ bl RemoveOrbitDisableSource__7CPlayerF9TUniqueId +lbl_8014FC4C: +/* 8014FC4C 0014CBAC 80 A1 00 80 */ lwz r5, 0x80(r1) +/* 8014FC50 0014CBB0 38 60 00 00 */ li r3, 0 +/* 8014FC54 0014CBB4 2C 05 00 00 */ cmpwi r5, 0 +/* 8014FC58 0014CBB8 40 81 00 40 */ ble lbl_8014FC98 +/* 8014FC5C 0014CBBC 2C 05 00 08 */ cmpwi r5, 8 +/* 8014FC60 0014CBC0 38 85 FF F8 */ addi r4, r5, -8 +/* 8014FC64 0014CBC4 40 81 00 20 */ ble lbl_8014FC84 +/* 8014FC68 0014CBC8 38 04 00 07 */ addi r0, r4, 7 +/* 8014FC6C 0014CBCC 54 00 E8 FE */ srwi r0, r0, 3 +/* 8014FC70 0014CBD0 7C 09 03 A6 */ mtctr r0 +/* 8014FC74 0014CBD4 2C 04 00 00 */ cmpwi r4, 0 +/* 8014FC78 0014CBD8 40 81 00 0C */ ble lbl_8014FC84 +lbl_8014FC7C: +/* 8014FC7C 0014CBDC 38 63 00 08 */ addi r3, r3, 8 +/* 8014FC80 0014CBE0 42 00 FF FC */ bdnz lbl_8014FC7C +lbl_8014FC84: +/* 8014FC84 0014CBE4 7C 03 28 50 */ subf r0, r3, r5 +/* 8014FC88 0014CBE8 7C 09 03 A6 */ mtctr r0 +/* 8014FC8C 0014CBEC 7C 03 28 00 */ cmpw r3, r5 +/* 8014FC90 0014CBF0 40 80 00 08 */ bge lbl_8014FC98 +lbl_8014FC94: +/* 8014FC94 0014CBF4 42 00 00 00 */ bdnz lbl_8014FC94 +lbl_8014FC98: +/* 8014FC98 0014CBF8 38 00 00 00 */ li r0, 0 +/* 8014FC9C 0014CBFC 90 01 00 80 */ stw r0, 0x80(r1) +/* 8014FCA0 0014CC00 E3 E1 08 A8 */ psq_l f31, -1880(r1), 0, qr0 +/* 8014FCA4 0014CC04 CB E1 08 A0 */ lfd f31, 0x8a0(r1) +/* 8014FCA8 0014CC08 BB 61 08 8C */ lmw r27, 0x88c(r1) +/* 8014FCAC 0014CC0C 80 01 08 B4 */ lwz r0, 0x8b4(r1) +/* 8014FCB0 0014CC10 7C 08 03 A6 */ mtlr r0 +/* 8014FCB4 0014CC14 38 21 08 B0 */ addi r1, r1, 0x8b0 +/* 8014FCB8 0014CC18 4E 80 00 20 */ blr + +.global Render__22CScriptSpecialFunctionCFRC13CStateManager +Render__22CScriptSpecialFunctionCFRC13CStateManager: +/* 8014FCBC 0014CC1C 94 21 FE A0 */ stwu r1, -0x160(r1) +/* 8014FCC0 0014CC20 7C 08 02 A6 */ mflr r0 +/* 8014FCC4 0014CC24 90 01 01 64 */ stw r0, 0x164(r1) +/* 8014FCC8 0014CC28 93 E1 01 5C */ stw r31, 0x15c(r1) +/* 8014FCCC 0014CC2C 7C 9F 23 78 */ mr r31, r4 +/* 8014FCD0 0014CC30 93 C1 01 58 */ stw r30, 0x158(r1) +/* 8014FCD4 0014CC34 7C 7E 1B 78 */ mr r30, r3 +/* 8014FCD8 0014CC38 80 03 00 E8 */ lwz r0, 0xe8(r3) +/* 8014FCDC 0014CC3C 2C 00 00 2F */ cmpwi r0, 0x2f +/* 8014FCE0 0014CC40 40 82 01 98 */ bne lbl_8014FE78 +/* 8014FCE4 0014CC44 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 8014FCE8 0014CC48 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8014FCEC 0014CC4C 41 82 01 90 */ beq lbl_8014FE7C +/* 8014FCF0 0014CC50 48 1B A1 F1 */ bl GetSecondsMod900__9CGraphicsFv +/* 8014FCF4 0014CC54 C0 1E 01 00 */ lfs f0, 0x100(r30) +/* 8014FCF8 0014CC58 EC 20 00 72 */ fmuls f1, f0, f1 +/* 8014FCFC 0014CC5C 48 1C 50 F5 */ bl FastSinR__5CMathFf +/* 8014FD00 0014CC60 C0 1E 00 FC */ lfs f0, 0xfc(r30) +/* 8014FD04 0014CC64 7F E3 FB 78 */ mr r3, r31 +/* 8014FD08 0014CC68 EC 20 00 72 */ fmuls f1, f0, f1 +/* 8014FD0C 0014CC6C 4B EF 40 D5 */ bl IntegrateVisorFog__13CStateManagerFf +/* 8014FD10 0014CC70 C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) +/* 8014FD14 0014CC74 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8014FD18 0014CC78 40 81 01 64 */ ble lbl_8014FE7C +/* 8014FD1C 0014CC7C C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 8014FD20 0014CC80 38 61 00 74 */ addi r3, r1, 0x74 +/* 8014FD24 0014CC84 C0 1E 01 14 */ lfs f0, 0x114(r30) +/* 8014FD28 0014CC88 38 81 00 50 */ addi r4, r1, 0x50 +/* 8014FD2C 0014CC8C C0 FE 00 50 */ lfs f7, 0x50(r30) +/* 8014FD30 0014CC90 38 A1 00 44 */ addi r5, r1, 0x44 +/* 8014FD34 0014CC94 EC C3 00 2A */ fadds f6, f3, f0 +/* 8014FD38 0014CC98 C0 5E 01 10 */ lfs f2, 0x110(r30) +/* 8014FD3C 0014CC9C C1 1E 00 40 */ lfs f8, 0x40(r30) +/* 8014FD40 0014CCA0 EC 83 00 28 */ fsubs f4, f3, f0 +/* 8014FD44 0014CCA4 C0 1E 01 0C */ lfs f0, 0x10c(r30) +/* 8014FD48 0014CCA8 EC A7 10 28 */ fsubs f5, f7, f2 +/* 8014FD4C 0014CCAC EC 68 00 28 */ fsubs f3, f8, f0 +/* 8014FD50 0014CCB0 D0 C1 00 4C */ stfs f6, 0x4c(r1) +/* 8014FD54 0014CCB4 EC E7 10 2A */ fadds f7, f7, f2 +/* 8014FD58 0014CCB8 EC 48 00 2A */ fadds f2, f8, f0 +/* 8014FD5C 0014CCBC D0 A1 00 54 */ stfs f5, 0x54(r1) +/* 8014FD60 0014CCC0 EC 06 08 2A */ fadds f0, f6, f1 +/* 8014FD64 0014CCC4 D0 61 00 50 */ stfs f3, 0x50(r1) +/* 8014FD68 0014CCC8 D0 81 00 58 */ stfs f4, 0x58(r1) +/* 8014FD6C 0014CCCC D0 41 00 44 */ stfs f2, 0x44(r1) +/* 8014FD70 0014CCD0 D0 E1 00 48 */ stfs f7, 0x48(r1) +/* 8014FD74 0014CCD4 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 8014FD78 0014CCD8 48 1E 87 91 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8014FD7C 0014CCDC C0 61 00 88 */ lfs f3, 0x88(r1) +/* 8014FD80 0014CCE0 38 61 00 8C */ addi r3, r1, 0x8c +/* 8014FD84 0014CCE4 C0 21 00 7C */ lfs f1, 0x7c(r1) +/* 8014FD88 0014CCE8 38 81 00 2C */ addi r4, r1, 0x2c +/* 8014FD8C 0014CCEC C0 41 00 80 */ lfs f2, 0x80(r1) +/* 8014FD90 0014CCF0 C0 01 00 74 */ lfs f0, 0x74(r1) +/* 8014FD94 0014CCF4 EC 83 08 28 */ fsubs f4, f3, f1 +/* 8014FD98 0014CCF8 C0 22 9D A4 */ lfs f1, lbl_805ABAC4@sda21(r2) +/* 8014FD9C 0014CCFC EC 62 00 28 */ fsubs f3, f2, f0 +/* 8014FDA0 0014CD00 C0 41 00 84 */ lfs f2, 0x84(r1) +/* 8014FDA4 0014CD04 C0 01 00 78 */ lfs f0, 0x78(r1) +/* 8014FDA8 0014CD08 EC A1 01 32 */ fmuls f5, f1, f4 +/* 8014FDAC 0014CD0C D0 81 00 28 */ stfs f4, 0x28(r1) +/* 8014FDB0 0014CD10 EC 42 00 28 */ fsubs f2, f2, f0 +/* 8014FDB4 0014CD14 EC 01 00 F2 */ fmuls f0, f1, f3 +/* 8014FDB8 0014CD18 D0 61 00 20 */ stfs f3, 0x20(r1) +/* 8014FDBC 0014CD1C EC 21 00 B2 */ fmuls f1, f1, f2 +/* 8014FDC0 0014CD20 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 8014FDC4 0014CD24 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8014FDC8 0014CD28 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 8014FDCC 0014CD2C D0 A1 00 34 */ stfs f5, 0x34(r1) +/* 8014FDD0 0014CD30 48 1C 33 F5 */ bl Scale__12CTransform4fFRC9CVector3f +/* 8014FDD4 0014CD34 38 61 00 38 */ addi r3, r1, 0x38 +/* 8014FDD8 0014CD38 38 81 00 74 */ addi r4, r1, 0x74 +/* 8014FDDC 0014CD3C 48 1E 78 31 */ bl GetCenterPoint__6CAABoxCFv +/* 8014FDE0 0014CD40 38 61 00 BC */ addi r3, r1, 0xbc +/* 8014FDE4 0014CD44 38 81 00 38 */ addi r4, r1, 0x38 +/* 8014FDE8 0014CD48 48 1C 33 59 */ bl Translate__12CTransform4fFRC9CVector3f +/* 8014FDEC 0014CD4C 38 61 00 EC */ addi r3, r1, 0xec +/* 8014FDF0 0014CD50 38 81 00 BC */ addi r4, r1, 0xbc +/* 8014FDF4 0014CD54 38 A1 00 8C */ addi r5, r1, 0x8c +/* 8014FDF8 0014CD58 48 1C 2B 59 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8014FDFC 0014CD5C 38 61 01 1C */ addi r3, r1, 0x11c +/* 8014FE00 0014CD60 38 81 00 EC */ addi r4, r1, 0xec +/* 8014FE04 0014CD64 48 1C 2D 71 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8014FE08 0014CD68 C0 22 9D B4 */ lfs f1, lbl_805ABAD4@sda21(r2) +/* 8014FE0C 0014CD6C 38 61 00 5C */ addi r3, r1, 0x5c +/* 8014FE10 0014CD70 C0 02 9D BC */ lfs f0, lbl_805ABADC@sda21(r2) +/* 8014FE14 0014CD74 38 81 00 14 */ addi r4, r1, 0x14 +/* 8014FE18 0014CD78 D0 21 00 08 */ stfs f1, 8(r1) +/* 8014FE1C 0014CD7C 38 A1 00 08 */ addi r5, r1, 8 +/* 8014FE20 0014CD80 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 8014FE24 0014CD84 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 8014FE28 0014CD88 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8014FE2C 0014CD8C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 8014FE30 0014CD90 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8014FE34 0014CD94 48 1E 86 D5 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8014FE38 0014CD98 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 8014FE3C 0014CD9C 38 81 01 1C */ addi r4, r1, 0x11c +/* 8014FE40 0014CDA0 81 83 00 00 */ lwz r12, 0(r3) +/* 8014FE44 0014CDA4 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 8014FE48 0014CDA8 7D 89 03 A6 */ mtctr r12 +/* 8014FE4C 0014CDAC 4E 80 04 21 */ bctrl +/* 8014FE50 0014CDB0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 8014FE54 0014CDB4 38 9E 01 18 */ addi r4, r30, 0x118 +/* 8014FE58 0014CDB8 38 A1 00 5C */ addi r5, r1, 0x5c +/* 8014FE5C 0014CDBC 38 C0 00 00 */ li r6, 0 +/* 8014FE60 0014CDC0 81 83 00 00 */ lwz r12, 0(r3) +/* 8014FE64 0014CDC4 38 E0 00 00 */ li r7, 0 +/* 8014FE68 0014CDC8 81 8C 00 E4 */ lwz r12, 0xe4(r12) +/* 8014FE6C 0014CDCC 7D 89 03 A6 */ mtctr r12 +/* 8014FE70 0014CDD0 4E 80 04 21 */ bctrl +/* 8014FE74 0014CDD4 48 00 00 08 */ b lbl_8014FE7C +lbl_8014FE78: +/* 8014FE78 0014CDD8 4B F0 49 2D */ bl Render__6CActorCFRC13CStateManager +lbl_8014FE7C: +/* 8014FE7C 0014CDDC 80 01 01 64 */ lwz r0, 0x164(r1) +/* 8014FE80 0014CDE0 83 E1 01 5C */ lwz r31, 0x15c(r1) +/* 8014FE84 0014CDE4 83 C1 01 58 */ lwz r30, 0x158(r1) +/* 8014FE88 0014CDE8 7C 08 03 A6 */ mtlr r0 +/* 8014FE8C 0014CDEC 38 21 01 60 */ addi r1, r1, 0x160 +/* 8014FE90 0014CDF0 4E 80 00 20 */ blr + +.global ThinkObjectFollowObject__22CScriptSpecialFunctionFfR13CStateManager +ThinkObjectFollowObject__22CScriptSpecialFunctionFfR13CStateManager: +/* 8014FE94 0014CDF4 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 8014FE98 0014CDF8 7C 08 02 A6 */ mflr r0 +/* 8014FE9C 0014CDFC 90 01 00 64 */ stw r0, 0x64(r1) +/* 8014FEA0 0014CE00 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8014FEA4 0014CE04 93 C1 00 58 */ stw r30, 0x58(r1) +/* 8014FEA8 0014CE08 7C 9E 23 78 */ mr r30, r4 +/* 8014FEAC 0014CE0C 93 A1 00 54 */ stw r29, 0x54(r1) +/* 8014FEB0 0014CE10 7C 7D 1B 78 */ mr r29, r3 +/* 8014FEB4 0014CE14 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8014FEB8 0014CE18 83 E3 00 2C */ lwz r31, 0x2c(r3) +/* 8014FEBC 0014CE1C B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8014FEC0 0014CE20 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8014FEC4 0014CE24 48 00 00 D4 */ b lbl_8014FF98 +lbl_8014FEC8: +/* 8014FEC8 0014CE28 80 1F 00 00 */ lwz r0, 0(r31) +/* 8014FECC 0014CE2C 2C 00 00 12 */ cmpwi r0, 0x12 +/* 8014FED0 0014CE30 40 82 00 C4 */ bne lbl_8014FF94 +/* 8014FED4 0014CE34 80 1F 00 04 */ lwz r0, 4(r31) +/* 8014FED8 0014CE38 2C 00 00 01 */ cmpwi r0, 1 +/* 8014FEDC 0014CE3C 41 82 00 0C */ beq lbl_8014FEE8 +/* 8014FEE0 0014CE40 2C 00 00 04 */ cmpwi r0, 4 +/* 8014FEE4 0014CE44 40 82 00 B0 */ bne lbl_8014FF94 +lbl_8014FEE8: +/* 8014FEE8 0014CE48 80 1F 00 08 */ lwz r0, 8(r31) +/* 8014FEEC 0014CE4C 7F C4 F3 78 */ mr r4, r30 +/* 8014FEF0 0014CE50 38 61 00 3C */ addi r3, r1, 0x3c +/* 8014FEF4 0014CE54 38 A1 00 20 */ addi r5, r1, 0x20 +/* 8014FEF8 0014CE58 90 01 00 20 */ stw r0, 0x20(r1) +/* 8014FEFC 0014CE5C 4B EF 80 CD */ bl GetIdListForScript__13CStateManagerCF9TEditorId +/* 8014FF00 0014CE60 80 A1 00 3C */ lwz r5, 0x3c(r1) +/* 8014FF04 0014CE64 38 60 00 00 */ li r3, 0 +/* 8014FF08 0014CE68 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8014FF0C 0014CE6C 80 81 00 40 */ lwz r4, 0x40(r1) +/* 8014FF10 0014CE70 7C 05 00 40 */ cmplw r5, r0 +/* 8014FF14 0014CE74 80 01 00 48 */ lwz r0, 0x48(r1) +/* 8014FF18 0014CE78 40 82 00 10 */ bne lbl_8014FF28 +/* 8014FF1C 0014CE7C 7C 04 00 40 */ cmplw r4, r0 +/* 8014FF20 0014CE80 40 82 00 08 */ bne lbl_8014FF28 +/* 8014FF24 0014CE84 38 60 00 01 */ li r3, 1 +lbl_8014FF28: +/* 8014FF28 0014CE88 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8014FF2C 0014CE8C 40 82 00 68 */ bne lbl_8014FF94 +/* 8014FF30 0014CE90 A0 05 00 14 */ lhz r0, 0x14(r5) +/* 8014FF34 0014CE94 7F C3 F3 78 */ mr r3, r30 +/* 8014FF38 0014CE98 38 81 00 10 */ addi r4, r1, 0x10 +/* 8014FF3C 0014CE9C B0 01 00 14 */ sth r0, 0x14(r1) +/* 8014FF40 0014CEA0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8014FF44 0014CEA4 4B EF C6 61 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8014FF48 0014CEA8 7C 64 1B 78 */ mr r4, r3 +/* 8014FF4C 0014CEAC 38 61 00 2C */ addi r3, r1, 0x2c +/* 8014FF50 0014CEB0 4B F5 FD 41 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8014FF54 0014CEB4 80 63 00 04 */ lwz r3, 4(r3) +/* 8014FF58 0014CEB8 28 03 00 00 */ cmplwi r3, 0 +/* 8014FF5C 0014CEBC 41 82 00 38 */ beq lbl_8014FF94 +/* 8014FF60 0014CEC0 80 1F 00 04 */ lwz r0, 4(r31) +/* 8014FF64 0014CEC4 2C 00 00 01 */ cmpwi r0, 1 +/* 8014FF68 0014CEC8 40 82 00 1C */ bne lbl_8014FF84 +/* 8014FF6C 0014CECC 88 03 00 30 */ lbz r0, 0x30(r3) +/* 8014FF70 0014CED0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8014FF74 0014CED4 41 82 00 C8 */ beq lbl_8015003C +/* 8014FF78 0014CED8 A0 01 00 14 */ lhz r0, 0x14(r1) +/* 8014FF7C 0014CEDC B0 01 00 18 */ sth r0, 0x18(r1) +/* 8014FF80 0014CEE0 48 00 00 14 */ b lbl_8014FF94 +lbl_8014FF84: +/* 8014FF84 0014CEE4 2C 00 00 04 */ cmpwi r0, 4 +/* 8014FF88 0014CEE8 40 82 00 0C */ bne lbl_8014FF94 +/* 8014FF8C 0014CEEC A0 01 00 14 */ lhz r0, 0x14(r1) +/* 8014FF90 0014CEF0 B0 01 00 1C */ sth r0, 0x1c(r1) +lbl_8014FF94: +/* 8014FF94 0014CEF4 3B FF 00 0C */ addi r31, r31, 0xc +lbl_8014FF98: +/* 8014FF98 0014CEF8 80 1D 00 24 */ lwz r0, 0x24(r29) +/* 8014FF9C 0014CEFC 80 7D 00 2C */ lwz r3, 0x2c(r29) +/* 8014FFA0 0014CF00 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8014FFA4 0014CF04 7C 03 02 14 */ add r0, r3, r0 +/* 8014FFA8 0014CF08 7C 1F 00 40 */ cmplw r31, r0 +/* 8014FFAC 0014CF0C 40 82 FF 1C */ bne lbl_8014FEC8 +/* 8014FFB0 0014CF10 A0 01 00 18 */ lhz r0, 0x18(r1) +/* 8014FFB4 0014CF14 7F C3 F3 78 */ mr r3, r30 +/* 8014FFB8 0014CF18 38 81 00 0C */ addi r4, r1, 0xc +/* 8014FFBC 0014CF1C B0 01 00 0C */ sth r0, 0xc(r1) +/* 8014FFC0 0014CF20 4B EF C5 E5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8014FFC4 0014CF24 7C 64 1B 78 */ mr r4, r3 +/* 8014FFC8 0014CF28 38 61 00 24 */ addi r3, r1, 0x24 +/* 8014FFCC 0014CF2C 4B F5 FC C5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8014FFD0 0014CF30 83 A3 00 04 */ lwz r29, 4(r3) +/* 8014FFD4 0014CF34 7F C3 F3 78 */ mr r3, r30 +/* 8014FFD8 0014CF38 A0 01 00 1C */ lhz r0, 0x1c(r1) +/* 8014FFDC 0014CF3C 38 81 00 08 */ addi r4, r1, 8 +/* 8014FFE0 0014CF40 B0 01 00 08 */ sth r0, 8(r1) +/* 8014FFE4 0014CF44 4B EF C5 91 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8014FFE8 0014CF48 7C 64 1B 78 */ mr r4, r3 +/* 8014FFEC 0014CF4C 38 61 00 34 */ addi r3, r1, 0x34 +/* 8014FFF0 0014CF50 4B F5 FC A1 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8014FFF4 0014CF54 83 C3 00 04 */ lwz r30, 4(r3) +/* 8014FFF8 0014CF58 28 1E 00 00 */ cmplwi r30, 0 +/* 8014FFFC 0014CF5C 41 82 00 40 */ beq lbl_8015003C +/* 80150000 0014CF60 28 1D 00 00 */ cmplwi r29, 0 +/* 80150004 0014CF64 41 82 00 38 */ beq lbl_8015003C +/* 80150008 0014CF68 38 7E 00 34 */ addi r3, r30, 0x34 +/* 8015000C 0014CF6C 38 9D 00 34 */ addi r4, r29, 0x34 +/* 80150010 0014CF70 48 1C 2B 31 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80150014 0014CF74 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 80150018 0014CF78 38 60 00 01 */ li r3, 1 +/* 8015001C 0014CF7C 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 80150020 0014CF80 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 80150024 0014CF84 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 80150028 0014CF88 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 8015002C 0014CF8C 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 80150030 0014CF90 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 80150034 0014CF94 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 80150038 0014CF98 98 1E 00 E4 */ stb r0, 0xe4(r30) +lbl_8015003C: +/* 8015003C 0014CF9C 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80150040 0014CFA0 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 80150044 0014CFA4 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 80150048 0014CFA8 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 8015004C 0014CFAC 7C 08 03 A6 */ mtlr r0 +/* 80150050 0014CFB0 38 21 00 60 */ addi r1, r1, 0x60 +/* 80150054 0014CFB4 4E 80 00 20 */ blr + +.global ThinkObjectFollowLocator__22CScriptSpecialFunctionFfR13CStateManager +ThinkObjectFollowLocator__22CScriptSpecialFunctionFfR13CStateManager: +/* 80150058 0014CFB8 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 8015005C 0014CFBC 7C 08 02 A6 */ mflr r0 +/* 80150060 0014CFC0 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 80150064 0014CFC4 93 E1 00 EC */ stw r31, 0xec(r1) +/* 80150068 0014CFC8 93 C1 00 E8 */ stw r30, 0xe8(r1) +/* 8015006C 0014CFCC 7C 9E 23 78 */ mr r30, r4 +/* 80150070 0014CFD0 93 A1 00 E4 */ stw r29, 0xe4(r1) +/* 80150074 0014CFD4 7C 7D 1B 78 */ mr r29, r3 +/* 80150078 0014CFD8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8015007C 0014CFDC 83 E3 00 2C */ lwz r31, 0x2c(r3) +/* 80150080 0014CFE0 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 80150084 0014CFE4 B0 01 00 18 */ sth r0, 0x18(r1) +/* 80150088 0014CFE8 48 00 00 FC */ b lbl_80150184 +lbl_8015008C: +/* 8015008C 0014CFEC 80 1F 00 00 */ lwz r0, 0(r31) +/* 80150090 0014CFF0 2C 00 00 12 */ cmpwi r0, 0x12 +/* 80150094 0014CFF4 40 82 00 EC */ bne lbl_80150180 +/* 80150098 0014CFF8 80 1F 00 04 */ lwz r0, 4(r31) +/* 8015009C 0014CFFC 2C 00 00 01 */ cmpwi r0, 1 +/* 801500A0 0014D000 41 82 00 0C */ beq lbl_801500AC +/* 801500A4 0014D004 2C 00 00 04 */ cmpwi r0, 4 +/* 801500A8 0014D008 40 82 00 D8 */ bne lbl_80150180 +lbl_801500AC: +/* 801500AC 0014D00C 80 1F 00 08 */ lwz r0, 8(r31) +/* 801500B0 0014D010 7F C4 F3 78 */ mr r4, r30 +/* 801500B4 0014D014 38 61 00 3C */ addi r3, r1, 0x3c +/* 801500B8 0014D018 38 A1 00 20 */ addi r5, r1, 0x20 +/* 801500BC 0014D01C 90 01 00 20 */ stw r0, 0x20(r1) +/* 801500C0 0014D020 4B EF 7F 09 */ bl GetIdListForScript__13CStateManagerCF9TEditorId +/* 801500C4 0014D024 80 A1 00 3C */ lwz r5, 0x3c(r1) +/* 801500C8 0014D028 38 60 00 00 */ li r3, 0 +/* 801500CC 0014D02C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801500D0 0014D030 80 81 00 40 */ lwz r4, 0x40(r1) +/* 801500D4 0014D034 7C 05 00 40 */ cmplw r5, r0 +/* 801500D8 0014D038 80 01 00 48 */ lwz r0, 0x48(r1) +/* 801500DC 0014D03C 40 82 00 10 */ bne lbl_801500EC +/* 801500E0 0014D040 7C 04 00 40 */ cmplw r4, r0 +/* 801500E4 0014D044 40 82 00 08 */ bne lbl_801500EC +/* 801500E8 0014D048 38 60 00 01 */ li r3, 1 +lbl_801500EC: +/* 801500EC 0014D04C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801500F0 0014D050 40 82 00 90 */ bne lbl_80150180 +/* 801500F4 0014D054 A0 05 00 14 */ lhz r0, 0x14(r5) +/* 801500F8 0014D058 7F C3 F3 78 */ mr r3, r30 +/* 801500FC 0014D05C 38 81 00 10 */ addi r4, r1, 0x10 +/* 80150100 0014D060 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80150104 0014D064 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80150108 0014D068 4B EF C4 9D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8015010C 0014D06C 7C 64 1B 78 */ mr r4, r3 +/* 80150110 0014D070 38 61 00 2C */ addi r3, r1, 0x2c +/* 80150114 0014D074 4B F5 FB 7D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80150118 0014D078 80 C3 00 04 */ lwz r6, 4(r3) +/* 8015011C 0014D07C 28 06 00 00 */ cmplwi r6, 0 +/* 80150120 0014D080 41 82 00 60 */ beq lbl_80150180 +/* 80150124 0014D084 80 BF 00 04 */ lwz r5, 4(r31) +/* 80150128 0014D088 2C 05 00 01 */ cmpwi r5, 1 +/* 8015012C 0014D08C 40 82 00 44 */ bne lbl_80150170 +/* 80150130 0014D090 80 86 00 64 */ lwz r4, 0x64(r6) +/* 80150134 0014D094 38 60 00 00 */ li r3, 0 +/* 80150138 0014D098 28 04 00 00 */ cmplwi r4, 0 +/* 8015013C 0014D09C 41 82 00 14 */ beq lbl_80150150 +/* 80150140 0014D0A0 80 04 00 10 */ lwz r0, 0x10(r4) +/* 80150144 0014D0A4 28 00 00 00 */ cmplwi r0, 0 +/* 80150148 0014D0A8 41 82 00 08 */ beq lbl_80150150 +/* 8015014C 0014D0AC 38 60 00 01 */ li r3, 1 +lbl_80150150: +/* 80150150 0014D0B0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80150154 0014D0B4 41 82 00 1C */ beq lbl_80150170 +/* 80150158 0014D0B8 88 06 00 30 */ lbz r0, 0x30(r6) +/* 8015015C 0014D0BC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80150160 0014D0C0 41 82 01 10 */ beq lbl_80150270 +/* 80150164 0014D0C4 A0 01 00 14 */ lhz r0, 0x14(r1) +/* 80150168 0014D0C8 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8015016C 0014D0CC 48 00 00 14 */ b lbl_80150180 +lbl_80150170: +/* 80150170 0014D0D0 2C 05 00 04 */ cmpwi r5, 4 +/* 80150174 0014D0D4 40 82 00 0C */ bne lbl_80150180 +/* 80150178 0014D0D8 A0 01 00 14 */ lhz r0, 0x14(r1) +/* 8015017C 0014D0DC B0 01 00 1C */ sth r0, 0x1c(r1) +lbl_80150180: +/* 80150180 0014D0E0 3B FF 00 0C */ addi r31, r31, 0xc +lbl_80150184: +/* 80150184 0014D0E4 80 1D 00 24 */ lwz r0, 0x24(r29) +/* 80150188 0014D0E8 80 7D 00 2C */ lwz r3, 0x2c(r29) +/* 8015018C 0014D0EC 1C 00 00 0C */ mulli r0, r0, 0xc +/* 80150190 0014D0F0 7C 03 02 14 */ add r0, r3, r0 +/* 80150194 0014D0F4 7C 1F 00 40 */ cmplw r31, r0 +/* 80150198 0014D0F8 40 82 FE F4 */ bne lbl_8015008C +/* 8015019C 0014D0FC A0 01 00 1C */ lhz r0, 0x1c(r1) +/* 801501A0 0014D100 A0 6D A3 8C */ lhz r3, lbl_805A8F4C@sda21(r13) +/* 801501A4 0014D104 7C 00 18 40 */ cmplw r0, r3 +/* 801501A8 0014D108 41 82 00 C8 */ beq lbl_80150270 +/* 801501AC 0014D10C A0 01 00 18 */ lhz r0, 0x18(r1) +/* 801501B0 0014D110 7C 00 18 40 */ cmplw r0, r3 +/* 801501B4 0014D114 41 82 00 BC */ beq lbl_80150270 +/* 801501B8 0014D118 A0 01 00 18 */ lhz r0, 0x18(r1) +/* 801501BC 0014D11C 7F C3 F3 78 */ mr r3, r30 +/* 801501C0 0014D120 38 81 00 0C */ addi r4, r1, 0xc +/* 801501C4 0014D124 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801501C8 0014D128 4B EF C3 DD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801501CC 0014D12C 7C 64 1B 78 */ mr r4, r3 +/* 801501D0 0014D130 38 61 00 24 */ addi r3, r1, 0x24 +/* 801501D4 0014D134 4B F5 FA BD */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801501D8 0014D138 83 E3 00 04 */ lwz r31, 4(r3) +/* 801501DC 0014D13C 7F C3 F3 78 */ mr r3, r30 +/* 801501E0 0014D140 A0 01 00 1C */ lhz r0, 0x1c(r1) +/* 801501E4 0014D144 38 81 00 08 */ addi r4, r1, 8 +/* 801501E8 0014D148 B0 01 00 08 */ sth r0, 8(r1) +/* 801501EC 0014D14C 4B EF C3 89 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801501F0 0014D150 7C 64 1B 78 */ mr r4, r3 +/* 801501F4 0014D154 38 61 00 34 */ addi r3, r1, 0x34 +/* 801501F8 0014D158 4B F5 FA 99 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801501FC 0014D15C 28 1F 00 00 */ cmplwi r31, 0 +/* 80150200 0014D160 83 C3 00 04 */ lwz r30, 4(r3) +/* 80150204 0014D164 41 82 00 6C */ beq lbl_80150270 +/* 80150208 0014D168 28 1E 00 00 */ cmplwi r30, 0 +/* 8015020C 0014D16C 41 82 00 64 */ beq lbl_80150270 +/* 80150210 0014D170 7F E4 FB 78 */ mr r4, r31 +/* 80150214 0014D174 38 61 00 4C */ addi r3, r1, 0x4c +/* 80150218 0014D178 38 BD 00 EC */ addi r5, r29, 0xec +/* 8015021C 0014D17C 4B F0 2C B5 */ bl "GetScaledLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80150220 0014D180 38 61 00 7C */ addi r3, r1, 0x7c +/* 80150224 0014D184 38 9F 00 34 */ addi r4, r31, 0x34 +/* 80150228 0014D188 38 A1 00 4C */ addi r5, r1, 0x4c +/* 8015022C 0014D18C 48 1C 27 25 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80150230 0014D190 38 61 00 AC */ addi r3, r1, 0xac +/* 80150234 0014D194 38 81 00 7C */ addi r4, r1, 0x7c +/* 80150238 0014D198 48 1C 29 3D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8015023C 0014D19C 38 7E 00 34 */ addi r3, r30, 0x34 +/* 80150240 0014D1A0 38 81 00 AC */ addi r4, r1, 0xac +/* 80150244 0014D1A4 48 1C 28 FD */ bl __as__12CTransform4fFRC12CTransform4f +/* 80150248 0014D1A8 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 8015024C 0014D1AC 38 60 00 01 */ li r3, 1 +/* 80150250 0014D1B0 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 80150254 0014D1B4 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 80150258 0014D1B8 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 8015025C 0014D1BC 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 80150260 0014D1C0 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 80150264 0014D1C4 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 80150268 0014D1C8 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 8015026C 0014D1CC 98 1E 00 E4 */ stb r0, 0xe4(r30) +lbl_80150270: +/* 80150270 0014D1D0 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 80150274 0014D1D4 83 E1 00 EC */ lwz r31, 0xec(r1) +/* 80150278 0014D1D8 83 C1 00 E8 */ lwz r30, 0xe8(r1) +/* 8015027C 0014D1DC 83 A1 00 E4 */ lwz r29, 0xe4(r1) +/* 80150280 0014D1E0 7C 08 03 A6 */ mtlr r0 +/* 80150284 0014D1E4 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 80150288 0014D1E8 4E 80 00 20 */ blr + +.global ThinkSpinnerController__22CScriptSpecialFunctionFfR13CStateManagerQ222CScriptSpecialFunction22ESpinnerControllerMode +ThinkSpinnerController__22CScriptSpecialFunctionFfR13CStateManagerQ222CScriptSpecialFunction22ESpinnerControllerMode: +/* 8015028C 0014D1EC 94 21 FE 20 */ stwu r1, -0x1e0(r1) +/* 80150290 0014D1F0 7C 08 02 A6 */ mflr r0 +/* 80150294 0014D1F4 90 01 01 E4 */ stw r0, 0x1e4(r1) +/* 80150298 0014D1F8 DB E1 01 D0 */ stfd f31, 0x1d0(r1) +/* 8015029C 0014D1FC F3 E1 01 D8 */ psq_st f31, 472(r1), 0, qr0 +/* 801502A0 0014D200 DB C1 01 C0 */ stfd f30, 0x1c0(r1) +/* 801502A4 0014D204 F3 C1 01 C8 */ psq_st f30, 456(r1), 0, qr0 +/* 801502A8 0014D208 DB A1 01 B0 */ stfd f29, 0x1b0(r1) +/* 801502AC 0014D20C F3 A1 01 B8 */ psq_st f29, 440(r1), 0, qr0 +/* 801502B0 0014D210 DB 81 01 A0 */ stfd f28, 0x1a0(r1) +/* 801502B4 0014D214 F3 81 01 A8 */ psq_st f28, 424(r1), 0, qr0 +/* 801502B8 0014D218 DB 61 01 90 */ stfd f27, 0x190(r1) +/* 801502BC 0014D21C F3 61 01 98 */ psq_st f27, 408(r1), 0, qr0 +/* 801502C0 0014D220 DB 41 01 80 */ stfd f26, 0x180(r1) +/* 801502C4 0014D224 F3 41 01 88 */ psq_st f26, 392(r1), 0, qr0 +/* 801502C8 0014D228 BE E1 01 5C */ stmw r23, 0x15c(r1) +/* 801502CC 0014D22C 3C C0 80 3D */ lis r6, lbl_803D01D0@ha +/* 801502D0 0014D230 FF 60 08 90 */ fmr f27, f1 +/* 801502D4 0014D234 38 06 01 D0 */ addi r0, r6, lbl_803D01D0@l +/* 801502D8 0014D238 7C 78 1B 78 */ mr r24, r3 +/* 801502DC 0014D23C 7C 99 23 78 */ mr r25, r4 +/* 801502E0 0014D240 7C BA 2B 78 */ mr r26, r5 +/* 801502E4 0014D244 7C 04 03 78 */ mr r4, r0 +/* 801502E8 0014D248 38 61 00 98 */ addi r3, r1, 0x98 +/* 801502EC 0014D24C 4B EB 49 CD */ bl string_l__4rstlFPCc +/* 801502F0 0014D250 38 78 00 EC */ addi r3, r24, 0xec +/* 801502F4 0014D254 38 81 00 98 */ addi r4, r1, 0x98 +/* 801502F8 0014D258 38 A0 00 00 */ li r5, 0 +/* 801502FC 0014D25C 48 00 0A 9D */ bl sub_80150d98 +/* 80150300 0014D260 20 83 FF FF */ subfic r4, r3, -1 +/* 80150304 0014D264 38 03 00 01 */ addi r0, r3, 1 +/* 80150308 0014D268 7C 80 03 78 */ or r0, r4, r0 +/* 8015030C 0014D26C 38 61 00 98 */ addi r3, r1, 0x98 +/* 80150310 0014D270 54 1C 0F FE */ srwi r28, r0, 0x1f +/* 80150314 0014D274 48 1E D7 CD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80150318 0014D278 3C 80 80 3D */ lis r4, lbl_803D01D0@ha +/* 8015031C 0014D27C 38 61 00 88 */ addi r3, r1, 0x88 +/* 80150320 0014D280 38 84 01 D0 */ addi r4, r4, lbl_803D01D0@l +/* 80150324 0014D284 38 84 00 0A */ addi r4, r4, 0xa +/* 80150328 0014D288 4B EB 49 91 */ bl string_l__4rstlFPCc +/* 8015032C 0014D28C 38 78 00 EC */ addi r3, r24, 0xec +/* 80150330 0014D290 38 81 00 88 */ addi r4, r1, 0x88 +/* 80150334 0014D294 38 A0 00 00 */ li r5, 0 +/* 80150338 0014D298 48 00 0A 61 */ bl sub_80150d98 +/* 8015033C 0014D29C 20 83 FF FF */ subfic r4, r3, -1 +/* 80150340 0014D2A0 38 03 00 01 */ addi r0, r3, 1 +/* 80150344 0014D2A4 7C 80 03 78 */ or r0, r4, r0 +/* 80150348 0014D2A8 38 61 00 88 */ addi r3, r1, 0x88 +/* 8015034C 0014D2AC 54 1B 0F FE */ srwi r27, r0, 0x1f +/* 80150350 0014D2B0 48 1E D7 91 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80150354 0014D2B4 C0 22 9D B8 */ lfs f1, lbl_805ABAD8@sda21(r2) +/* 80150358 0014D2B8 3B A1 00 DC */ addi r29, r1, 0xdc +/* 8015035C 0014D2BC C0 02 9D C0 */ lfs f0, lbl_805ABAE0@sda21(r2) +/* 80150360 0014D2C0 EF E1 06 F2 */ fmuls f31, f1, f27 +/* 80150364 0014D2C4 83 D8 00 2C */ lwz r30, 0x2c(r24) +/* 80150368 0014D2C8 EF C0 06 F2 */ fmuls f30, f0, f27 +/* 8015036C 0014D2CC 48 00 06 5C */ b lbl_801509C8 +lbl_80150370: +/* 80150370 0014D2D0 80 1E 00 00 */ lwz r0, 0(r30) +/* 80150374 0014D2D4 2C 00 00 12 */ cmpwi r0, 0x12 +/* 80150378 0014D2D8 40 82 06 4C */ bne lbl_801509C4 +/* 8015037C 0014D2DC 80 1E 00 04 */ lwz r0, 4(r30) +/* 80150380 0014D2E0 2C 00 00 01 */ cmpwi r0, 1 +/* 80150384 0014D2E4 40 82 06 40 */ bne lbl_801509C4 +/* 80150388 0014D2E8 80 1E 00 08 */ lwz r0, 8(r30) +/* 8015038C 0014D2EC 7F 24 CB 78 */ mr r4, r25 +/* 80150390 0014D2F0 38 61 00 78 */ addi r3, r1, 0x78 +/* 80150394 0014D2F4 38 A1 00 18 */ addi r5, r1, 0x18 +/* 80150398 0014D2F8 90 01 00 18 */ stw r0, 0x18(r1) +/* 8015039C 0014D2FC 4B EF 7C 2D */ bl GetIdListForScript__13CStateManagerCF9TEditorId +/* 801503A0 0014D300 80 A1 00 78 */ lwz r5, 0x78(r1) +/* 801503A4 0014D304 38 60 00 00 */ li r3, 0 +/* 801503A8 0014D308 80 01 00 80 */ lwz r0, 0x80(r1) +/* 801503AC 0014D30C 80 81 00 7C */ lwz r4, 0x7c(r1) +/* 801503B0 0014D310 7C 05 00 40 */ cmplw r5, r0 +/* 801503B4 0014D314 80 01 00 84 */ lwz r0, 0x84(r1) +/* 801503B8 0014D318 40 82 00 10 */ bne lbl_801503C8 +/* 801503BC 0014D31C 7C 04 00 40 */ cmplw r4, r0 +/* 801503C0 0014D320 40 82 00 08 */ bne lbl_801503C8 +/* 801503C4 0014D324 38 60 00 01 */ li r3, 1 +lbl_801503C8: +/* 801503C8 0014D328 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801503CC 0014D32C 40 82 05 F8 */ bne lbl_801509C4 +/* 801503D0 0014D330 A0 05 00 14 */ lhz r0, 0x14(r5) +/* 801503D4 0014D334 7F 23 CB 78 */ mr r3, r25 +/* 801503D8 0014D338 38 81 00 08 */ addi r4, r1, 8 +/* 801503DC 0014D33C B0 01 00 08 */ sth r0, 8(r1) +/* 801503E0 0014D340 4B EF C1 95 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801503E4 0014D344 7C 64 1B 78 */ mr r4, r3 +/* 801503E8 0014D348 38 61 00 2C */ addi r3, r1, 0x2c +/* 801503EC 0014D34C 4B F5 8A 29 */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" +/* 801503F0 0014D350 83 E3 00 04 */ lwz r31, 4(r3) +/* 801503F4 0014D354 28 1F 00 00 */ cmplwi r31, 0 +/* 801503F8 0014D358 41 82 05 CC */ beq lbl_801509C4 +/* 801503FC 0014D35C 80 9F 00 64 */ lwz r4, 0x64(r31) +/* 80150400 0014D360 38 60 00 00 */ li r3, 0 +/* 80150404 0014D364 28 04 00 00 */ cmplwi r4, 0 +/* 80150408 0014D368 41 82 00 14 */ beq lbl_8015041C +/* 8015040C 0014D36C 80 04 00 10 */ lwz r0, 0x10(r4) +/* 80150410 0014D370 28 00 00 00 */ cmplwi r0, 0 +/* 80150414 0014D374 41 82 00 08 */ beq lbl_8015041C +/* 80150418 0014D378 38 60 00 01 */ li r3, 1 +lbl_8015041C: +/* 8015041C 0014D37C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80150420 0014D380 41 82 05 A4 */ beq lbl_801509C4 +/* 80150424 0014D384 88 1F 03 56 */ lbz r0, 0x356(r31) +/* 80150428 0014D388 38 60 00 01 */ li r3, 1 +/* 8015042C 0014D38C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80150430 0014D390 98 1F 03 56 */ stb r0, 0x356(r31) +/* 80150434 0014D394 88 18 01 E4 */ lbz r0, 0x1e4(r24) +/* 80150438 0014D398 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8015043C 0014D39C 40 82 00 20 */ bne lbl_8015045C +/* 80150440 0014D3A0 38 78 01 3C */ addi r3, r24, 0x13c +/* 80150444 0014D3A4 38 9F 00 34 */ addi r4, r31, 0x34 +/* 80150448 0014D3A8 48 1C 26 F9 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8015044C 0014D3AC 88 18 01 E4 */ lbz r0, 0x1e4(r24) +/* 80150450 0014D3B0 38 60 00 01 */ li r3, 1 +/* 80150454 0014D3B4 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80150458 0014D3B8 98 18 01 E4 */ stb r0, 0x1e4(r24) +lbl_8015045C: +/* 8015045C 0014D3BC C0 18 01 00 */ lfs f0, 0x100(r24) +/* 80150460 0014D3C0 2C 1A 00 00 */ cmpwi r26, 0 +/* 80150464 0014D3C4 C3 98 01 38 */ lfs f28, 0x138(r24) +/* 80150468 0014D3C8 EF BF 00 32 */ fmuls f29, f31, f0 +/* 8015046C 0014D3CC 40 82 00 EC */ bne lbl_80150558 +/* 80150470 0014D3D0 88 18 01 E4 */ lbz r0, 0x1e4(r24) +/* 80150474 0014D3D4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80150478 0014D3D8 41 82 00 CC */ beq lbl_80150544 +/* 8015047C 0014D3DC 80 99 08 4C */ lwz r4, 0x84c(r25) +/* 80150480 0014D3E0 38 61 00 6C */ addi r3, r1, 0x6c +/* 80150484 0014D3E4 80 04 02 F8 */ lwz r0, 0x2f8(r4) +/* 80150488 0014D3E8 20 00 00 01 */ subfic r0, r0, 1 +/* 8015048C 0014D3EC 7C 00 00 34 */ cntlzw r0, r0 +/* 80150490 0014D3F0 54 17 D9 7E */ srwi r23, r0, 5 +/* 80150494 0014D3F4 4B FC A7 11 */ bl GetAngularVelocityOR__13CPhysicsActorCFv +/* 80150498 0014D3F8 38 61 00 6C */ addi r3, r1, 0x6c +/* 8015049C 0014D3FC 4B EC B0 95 */ bl GetVector__10CAxisAngleCFv +/* 801504A0 0014D400 C0 03 00 00 */ lfs f0, 0(r3) +/* 801504A4 0014D404 D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 801504A8 0014D408 C0 03 00 04 */ lfs f0, 4(r3) +/* 801504AC 0014D40C D0 01 00 AC */ stfs f0, 0xac(r1) +/* 801504B0 0014D410 C0 03 00 08 */ lfs f0, 8(r3) +/* 801504B4 0014D414 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 801504B8 0014D418 D0 01 00 B0 */ stfs f0, 0xb0(r1) +/* 801504BC 0014D41C 48 1C 42 3D */ bl CanBeNormalized__9CVector3fCFv +/* 801504C0 0014D420 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801504C4 0014D424 41 82 00 10 */ beq lbl_801504D4 +/* 801504C8 0014D428 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 801504CC 0014D42C 48 1C 43 ED */ bl Magnitude__9CVector3fCFv +/* 801504D0 0014D430 48 00 00 08 */ b lbl_801504D8 +lbl_801504D4: +/* 801504D4 0014D434 C0 22 9D 9C */ lfs f1, lbl_805ABABC@sda21(r2) +lbl_801504D8: +/* 801504D8 0014D438 56 E0 06 3F */ clrlwi. r0, r23, 0x18 +/* 801504DC 0014D43C 41 82 00 10 */ beq lbl_801504EC +/* 801504E0 0014D440 C0 02 9D C4 */ lfs f0, lbl_805ABAE4@sda21(r2) +/* 801504E4 0014D444 EF 40 00 72 */ fmuls f26, f0, f1 +/* 801504E8 0014D448 48 00 00 08 */ b lbl_801504F0 +lbl_801504EC: +/* 801504EC 0014D44C C3 42 9D 9C */ lfs f26, lbl_805ABABC@sda21(r2) +lbl_801504F0: +/* 801504F0 0014D450 C0 18 01 80 */ lfs f0, 0x180(r24) +/* 801504F4 0014D454 FC 1A 00 40 */ fcmpo cr0, f26, f0 +/* 801504F8 0014D458 40 81 00 18 */ ble lbl_80150510 +/* 801504FC 0014D45C 7F 03 C3 78 */ mr r3, r24 +/* 80150500 0014D460 7F 25 CB 78 */ mr r5, r25 +/* 80150504 0014D464 38 80 00 12 */ li r4, 0x12 +/* 80150508 0014D468 38 C0 FF FF */ li r6, -1 +/* 8015050C 0014D46C 4B F0 0B B5 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_80150510: +/* 80150510 0014D470 C0 02 9D C8 */ lfs f0, lbl_805ABAE8@sda21(r2) +/* 80150514 0014D474 28 1B 00 00 */ cmplwi r27, 0 +/* 80150518 0014D478 D3 58 01 80 */ stfs f26, 0x180(r24) +/* 8015051C 0014D47C EC 40 06 B2 */ fmuls f2, f0, f26 +/* 80150520 0014D480 C0 38 00 FC */ lfs f1, 0xfc(r24) +/* 80150524 0014D484 C0 18 01 38 */ lfs f0, 0x138(r24) +/* 80150528 0014D488 EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 8015052C 0014D48C D0 18 01 38 */ stfs f0, 0x138(r24) +/* 80150530 0014D490 40 82 00 90 */ bne lbl_801505C0 +/* 80150534 0014D494 C0 18 01 38 */ lfs f0, 0x138(r24) +/* 80150538 0014D498 EC 00 E8 28 */ fsubs f0, f0, f29 +/* 8015053C 0014D49C D0 18 01 38 */ stfs f0, 0x138(r24) +/* 80150540 0014D4A0 48 00 00 80 */ b lbl_801505C0 +lbl_80150544: +/* 80150544 0014D4A4 28 1B 00 00 */ cmplwi r27, 0 +/* 80150548 0014D4A8 40 82 00 78 */ bne lbl_801505C0 +/* 8015054C 0014D4AC EC 1C F0 28 */ fsubs f0, f28, f30 +/* 80150550 0014D4B0 D0 18 01 38 */ stfs f0, 0x138(r24) +/* 80150554 0014D4B4 48 00 00 6C */ b lbl_801505C0 +lbl_80150558: +/* 80150558 0014D4B8 2C 1A 00 01 */ cmpwi r26, 1 +/* 8015055C 0014D4BC 40 82 00 64 */ bne lbl_801505C0 +/* 80150560 0014D4C0 C0 42 9D C8 */ lfs f2, lbl_805ABAE8@sda21(r2) +/* 80150564 0014D4C4 28 1B 00 00 */ cmplwi r27, 0 +/* 80150568 0014D4C8 C0 38 01 6C */ lfs f1, 0x16c(r24) +/* 8015056C 0014D4CC C0 18 00 FC */ lfs f0, 0xfc(r24) +/* 80150570 0014D4D0 EC 22 00 72 */ fmuls f1, f2, f1 +/* 80150574 0014D4D4 EC 01 E0 3A */ fmadds f0, f1, f0, f28 +/* 80150578 0014D4D8 D0 18 01 38 */ stfs f0, 0x138(r24) +/* 8015057C 0014D4DC 40 82 00 44 */ bne lbl_801505C0 +/* 80150580 0014D4E0 C0 18 01 38 */ lfs f0, 0x138(r24) +/* 80150584 0014D4E4 EC 00 E8 28 */ fsubs f0, f0, f29 +/* 80150588 0014D4E8 D0 18 01 38 */ stfs f0, 0x138(r24) +/* 8015058C 0014D4EC C0 38 01 6C */ lfs f1, 0x16c(r24) +/* 80150590 0014D4F0 FC 00 0A 10 */ fabs f0, f1 +/* 80150594 0014D4F4 FC 00 00 18 */ frsp f0, f0 +/* 80150598 0014D4F8 FC 00 D8 40 */ fcmpo cr0, f0, f27 +/* 8015059C 0014D4FC 40 80 00 10 */ bge lbl_801505AC +/* 801505A0 0014D500 C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) +/* 801505A4 0014D504 D0 18 01 6C */ stfs f0, 0x16c(r24) +/* 801505A8 0014D508 48 00 00 18 */ b lbl_801505C0 +lbl_801505AC: +/* 801505AC 0014D50C C0 42 9D BC */ lfs f2, lbl_805ABADC@sda21(r2) +/* 801505B0 0014D510 C0 02 9D B4 */ lfs f0, lbl_805ABAD4@sda21(r2) +/* 801505B4 0014D514 FC 01 10 2E */ fsel f0, f1, f0, f2 +/* 801505B8 0014D518 EC 1B 08 3C */ fnmsubs f0, f27, f0, f1 +/* 801505BC 0014D51C D0 18 01 6C */ stfs f0, 0x16c(r24) +lbl_801505C0: +/* 801505C0 0014D520 28 1C 00 00 */ cmplwi r28, 0 +/* 801505C4 0014D524 41 82 00 38 */ beq lbl_801505FC +/* 801505C8 0014D528 C0 38 01 38 */ lfs f1, 0x138(r24) +/* 801505CC 0014D52C C8 42 9D D0 */ lfd f2, lbl_805ABAF0@sda21(r2) +/* 801505D0 0014D530 48 24 46 DD */ bl fmod +/* 801505D4 0014D534 FC 20 08 18 */ frsp f1, f1 +/* 801505D8 0014D538 C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) +/* 801505DC 0014D53C D0 38 01 38 */ stfs f1, 0x138(r24) +/* 801505E0 0014D540 C0 38 01 38 */ lfs f1, 0x138(r24) +/* 801505E4 0014D544 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801505E8 0014D548 40 80 00 50 */ bge lbl_80150638 +/* 801505EC 0014D54C C0 02 9D B4 */ lfs f0, lbl_805ABAD4@sda21(r2) +/* 801505F0 0014D550 EC 01 00 2A */ fadds f0, f1, f0 +/* 801505F4 0014D554 D0 18 01 38 */ stfs f0, 0x138(r24) +/* 801505F8 0014D558 48 00 00 40 */ b lbl_80150638 +lbl_801505FC: +/* 801505FC 0014D55C C0 2D 8C 5C */ lfs f1, lbl_805A781C@sda21(r13) +/* 80150600 0014D560 C0 18 01 38 */ lfs f0, 0x138(r24) +/* 80150604 0014D564 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80150608 0014D568 40 80 00 0C */ bge lbl_80150614 +/* 8015060C 0014D56C 38 78 01 38 */ addi r3, r24, 0x138 +/* 80150610 0014D570 48 00 00 08 */ b lbl_80150618 +lbl_80150614: +/* 80150614 0014D574 38 6D 8C 5C */ addi r3, r13, lbl_805A781C@sda21 +lbl_80150618: +/* 80150618 0014D578 C0 23 00 00 */ lfs f1, 0(r3) +/* 8015061C 0014D57C C0 0D 8C 60 */ lfs f0, lbl_805A7820@sda21(r13) +/* 80150620 0014D580 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80150624 0014D584 40 80 00 08 */ bge lbl_8015062C +/* 80150628 0014D588 48 00 00 08 */ b lbl_80150630 +lbl_8015062C: +/* 8015062C 0014D58C 38 6D 8C 60 */ addi r3, r13, lbl_805A7820@sda21 +lbl_80150630: +/* 80150630 0014D590 C0 03 00 00 */ lfs f0, 0(r3) +/* 80150634 0014D594 D0 18 01 38 */ stfs f0, 0x138(r24) +lbl_80150638: +/* 80150638 0014D598 C0 58 01 38 */ lfs f2, 0x138(r24) +/* 8015063C 0014D59C 3A E0 00 01 */ li r23, 1 +/* 80150640 0014D5A0 C0 22 9D B4 */ lfs f1, lbl_805ABAD4@sda21(r2) +/* 80150644 0014D5A4 C0 02 9D D8 */ lfs f0, lbl_805ABAF8@sda21(r2) +/* 80150648 0014D5A8 EF 82 E0 28 */ fsubs f28, f2, f28 +/* 8015064C 0014D5AC EC 22 08 28 */ fsubs f1, f2, f1 +/* 80150650 0014D5B0 FC 20 0A 10 */ fabs f1, f1 +/* 80150654 0014D5B4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80150658 0014D5B8 40 80 00 88 */ bge lbl_801506E0 +/* 8015065C 0014D5BC 88 18 01 E4 */ lbz r0, 0x1e4(r24) +/* 80150660 0014D5C0 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 80150664 0014D5C4 40 82 00 60 */ bne lbl_801506C4 +/* 80150668 0014D5C8 A0 98 01 74 */ lhz r4, 0x174(r24) +/* 8015066C 0014D5CC A0 02 C5 FC */ lhz r0, lbl_805AE31C@sda21(r2) +/* 80150670 0014D5D0 7C 04 00 40 */ cmplw r4, r0 +/* 80150674 0014D5D4 41 82 00 40 */ beq lbl_801506B4 +/* 80150678 0014D5D8 C0 58 00 60 */ lfs f2, 0x60(r24) +/* 8015067C 0014D5DC 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80150680 0014D5E0 C0 38 00 50 */ lfs f1, 0x50(r24) +/* 80150684 0014D5E4 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 80150688 0014D5E8 C0 18 00 40 */ lfs f0, 0x40(r24) +/* 8015068C 0014D5EC 38 61 00 14 */ addi r3, r1, 0x14 +/* 80150690 0014D5F0 A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 80150694 0014D5F4 38 A1 00 60 */ addi r5, r1, 0x60 +/* 80150698 0014D5F8 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 8015069C 0014D5FC 38 E0 00 01 */ li r7, 1 +/* 801506A0 0014D600 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 801506A4 0014D604 39 00 00 00 */ li r8, 0 +/* 801506A8 0014D608 D0 21 00 64 */ stfs f1, 0x64(r1) +/* 801506AC 0014D60C D0 41 00 68 */ stfs f2, 0x68(r1) +/* 801506B0 0014D610 48 19 9C 01 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +lbl_801506B4: +/* 801506B4 0014D614 88 18 01 E4 */ lbz r0, 0x1e4(r24) +/* 801506B8 0014D618 38 60 00 01 */ li r3, 1 +/* 801506BC 0014D61C 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801506C0 0014D620 98 18 01 E4 */ stb r0, 0x1e4(r24) +lbl_801506C4: +/* 801506C4 0014D624 7F 03 C3 78 */ mr r3, r24 +/* 801506C8 0014D628 7F 25 CB 78 */ mr r5, r25 +/* 801506CC 0014D62C 38 80 00 07 */ li r4, 7 +/* 801506D0 0014D630 38 C0 FF FF */ li r6, -1 +/* 801506D4 0014D634 4B F0 09 ED */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 801506D8 0014D638 3A E0 00 00 */ li r23, 0 +/* 801506DC 0014D63C 48 00 00 14 */ b lbl_801506F0 +lbl_801506E0: +/* 801506E0 0014D640 88 18 01 E4 */ lbz r0, 0x1e4(r24) +/* 801506E4 0014D644 38 60 00 00 */ li r3, 0 +/* 801506E8 0014D648 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801506EC 0014D64C 98 18 01 E4 */ stb r0, 0x1e4(r24) +lbl_801506F0: +/* 801506F0 0014D650 C0 58 01 38 */ lfs f2, 0x138(r24) +/* 801506F4 0014D654 C0 22 9D 9C */ lfs f1, lbl_805ABABC@sda21(r2) +/* 801506F8 0014D658 C0 02 9D D8 */ lfs f0, lbl_805ABAF8@sda21(r2) +/* 801506FC 0014D65C EC 22 08 28 */ fsubs f1, f2, f1 +/* 80150700 0014D660 FC 20 0A 10 */ fabs f1, f1 +/* 80150704 0014D664 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80150708 0014D668 40 80 00 88 */ bge lbl_80150790 +/* 8015070C 0014D66C 88 18 01 E4 */ lbz r0, 0x1e4(r24) +/* 80150710 0014D670 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 80150714 0014D674 40 82 00 60 */ bne lbl_80150774 +/* 80150718 0014D678 A0 98 01 72 */ lhz r4, 0x172(r24) +/* 8015071C 0014D67C A0 02 C5 FC */ lhz r0, lbl_805AE31C@sda21(r2) +/* 80150720 0014D680 7C 04 00 40 */ cmplw r4, r0 +/* 80150724 0014D684 41 82 00 40 */ beq lbl_80150764 +/* 80150728 0014D688 C0 58 00 60 */ lfs f2, 0x60(r24) +/* 8015072C 0014D68C 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80150730 0014D690 C0 38 00 50 */ lfs f1, 0x50(r24) +/* 80150734 0014D694 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 80150738 0014D698 C0 18 00 40 */ lfs f0, 0x40(r24) +/* 8015073C 0014D69C 38 61 00 10 */ addi r3, r1, 0x10 +/* 80150740 0014D6A0 A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 80150744 0014D6A4 38 A1 00 54 */ addi r5, r1, 0x54 +/* 80150748 0014D6A8 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 8015074C 0014D6AC 38 E0 00 01 */ li r7, 1 +/* 80150750 0014D6B0 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80150754 0014D6B4 39 00 00 00 */ li r8, 0 +/* 80150758 0014D6B8 D0 21 00 58 */ stfs f1, 0x58(r1) +/* 8015075C 0014D6BC D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 80150760 0014D6C0 48 19 9B 51 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +lbl_80150764: +/* 80150764 0014D6C4 88 18 01 E4 */ lbz r0, 0x1e4(r24) +/* 80150768 0014D6C8 38 60 00 01 */ li r3, 1 +/* 8015076C 0014D6CC 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 80150770 0014D6D0 98 18 01 E4 */ stb r0, 0x1e4(r24) +lbl_80150774: +/* 80150774 0014D6D4 7F 03 C3 78 */ mr r3, r24 +/* 80150778 0014D6D8 7F 25 CB 78 */ mr r5, r25 +/* 8015077C 0014D6DC 38 80 00 09 */ li r4, 9 +/* 80150780 0014D6E0 38 C0 FF FF */ li r6, -1 +/* 80150784 0014D6E4 4B F0 09 3D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 80150788 0014D6E8 3A E0 00 00 */ li r23, 0 +/* 8015078C 0014D6EC 48 00 00 14 */ b lbl_801507A0 +lbl_80150790: +/* 80150790 0014D6F0 88 18 01 E4 */ lbz r0, 0x1e4(r24) +/* 80150794 0014D6F4 38 60 00 00 */ li r3, 0 +/* 80150798 0014D6F8 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 8015079C 0014D6FC 98 18 01 E4 */ stb r0, 0x1e4(r24) +lbl_801507A0: +/* 801507A0 0014D700 38 61 00 24 */ addi r3, r1, 0x24 +/* 801507A4 0014D704 38 98 01 84 */ addi r4, r24, 0x184 +/* 801507A8 0014D708 48 00 05 91 */ bl sub_80150d38 +/* 801507AC 0014D70C 88 01 00 28 */ lbz r0, 0x28(r1) +/* 801507B0 0014D710 28 00 00 00 */ cmplwi r0, 0 +/* 801507B4 0014D714 98 01 00 38 */ stb r0, 0x38(r1) +/* 801507B8 0014D718 41 82 00 14 */ beq lbl_801507CC +/* 801507BC 0014D71C 34 61 00 34 */ addic. r3, r1, 0x34 +/* 801507C0 0014D720 41 82 00 0C */ beq lbl_801507CC +/* 801507C4 0014D724 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 801507C8 0014D728 D0 03 00 00 */ stfs f0, 0(r3) +lbl_801507CC: +/* 801507CC 0014D72C 38 00 00 00 */ li r0, 0 +/* 801507D0 0014D730 56 E4 06 3F */ clrlwi. r4, r23, 0x18 +/* 801507D4 0014D734 98 01 00 28 */ stb r0, 0x28(r1) +/* 801507D8 0014D738 41 82 00 FC */ beq lbl_801508D4 +/* 801507DC 0014D73C A0 78 01 70 */ lhz r3, 0x170(r24) +/* 801507E0 0014D740 A0 02 C5 FC */ lhz r0, lbl_805AE31C@sda21(r2) +/* 801507E4 0014D744 7C 03 00 40 */ cmplw r3, r0 +/* 801507E8 0014D748 41 82 00 F8 */ beq lbl_801508E0 +/* 801507EC 0014D74C C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) +/* 801507F0 0014D750 FC 1C 00 40 */ fcmpo cr0, f28, f0 +/* 801507F4 0014D754 4C 41 13 82 */ cror 2, 1, 2 +/* 801507F8 0014D758 7C 00 00 26 */ mfcr r0 +/* 801507FC 0014D75C 28 04 00 00 */ cmplwi r4, 0 +/* 80150800 0014D760 54 17 1F FE */ rlwinm r23, r0, 3, 0x1f, 0x1f +/* 80150804 0014D764 41 82 00 44 */ beq lbl_80150848 +/* 80150808 0014D768 28 17 00 00 */ cmplwi r23, 0 +/* 8015080C 0014D76C 38 00 00 7F */ li r0, 0x7f +/* 80150810 0014D770 41 82 00 08 */ beq lbl_80150818 +/* 80150814 0014D774 38 00 00 64 */ li r0, 0x64 +lbl_80150818: +/* 80150818 0014D778 54 03 06 3E */ clrlwi r3, r0, 0x18 +/* 8015081C 0014D77C 3C 00 43 30 */ lis r0, 0x4330 +/* 80150820 0014D780 90 61 01 54 */ stw r3, 0x154(r1) +/* 80150824 0014D784 38 78 01 84 */ addi r3, r24, 0x184 +/* 80150828 0014D788 C8 22 9D A8 */ lfd f1, lbl_805ABAC8@sda21(r2) +/* 8015082C 0014D78C 38 81 00 0C */ addi r4, r1, 0xc +/* 80150830 0014D790 90 01 01 50 */ stw r0, 0x150(r1) +/* 80150834 0014D794 C8 01 01 50 */ lfd f0, 0x150(r1) +/* 80150838 0014D798 EC 00 08 28 */ fsubs f0, f0, f1 +/* 8015083C 0014D79C D0 01 00 0C */ stfs f0, 0xc(r1) +/* 80150840 0014D7A0 48 00 01 E5 */ bl sub_80150a24 +/* 80150844 0014D7A4 48 00 00 10 */ b lbl_80150854 +lbl_80150848: +/* 80150848 0014D7A8 38 78 01 84 */ addi r3, r24, 0x184 +/* 8015084C 0014D7AC 38 8D 8C 64 */ addi r4, r13, lbl_805A7824@sda21 +/* 80150850 0014D7B0 48 00 01 D5 */ bl sub_80150a24 +lbl_80150854: +/* 80150854 0014D7B4 38 61 00 1C */ addi r3, r1, 0x1c +/* 80150858 0014D7B8 38 98 01 84 */ addi r4, r24, 0x184 +/* 8015085C 0014D7BC 48 00 04 DD */ bl sub_80150d38 +/* 80150860 0014D7C0 28 17 00 00 */ cmplwi r23, 0 +/* 80150864 0014D7C4 41 82 00 0C */ beq lbl_80150870 +/* 80150868 0014D7C8 C0 38 01 08 */ lfs f1, 0x108(r24) +/* 8015086C 0014D7CC 48 00 00 08 */ b lbl_80150874 +lbl_80150870: +/* 80150870 0014D7D0 C0 22 9D B4 */ lfs f1, lbl_805ABAD4@sda21(r2) +lbl_80150874: +/* 80150874 0014D7D4 C0 18 00 50 */ lfs f0, 0x50(r24) +/* 80150878 0014D7D8 7F 03 C3 78 */ mr r3, r24 +/* 8015087C 0014D7DC C0 78 00 60 */ lfs f3, 0x60(r24) +/* 80150880 0014D7E0 38 98 01 78 */ addi r4, r24, 0x178 +/* 80150884 0014D7E4 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 80150888 0014D7E8 38 C1 00 48 */ addi r6, r1, 0x48 +/* 8015088C 0014D7EC C0 58 00 40 */ lfs f2, 0x40(r24) +/* 80150890 0014D7F0 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 80150894 0014D7F4 D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 80150898 0014D7F8 FC 00 00 1E */ fctiwz f0, f0 +/* 8015089C 0014D7FC 80 A1 00 40 */ lwz r5, 0x40(r1) +/* 801508A0 0014D800 D0 61 00 44 */ stfs f3, 0x44(r1) +/* 801508A4 0014D804 80 E1 00 3C */ lwz r7, 0x3c(r1) +/* 801508A8 0014D808 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801508AC 0014D80C D8 01 01 50 */ stfd f0, 0x150(r1) +/* 801508B0 0014D810 90 E1 00 48 */ stw r7, 0x48(r1) +/* 801508B4 0014D814 80 E1 01 54 */ lwz r7, 0x154(r1) +/* 801508B8 0014D818 90 A1 00 4C */ stw r5, 0x4c(r1) +/* 801508BC 0014D81C 90 01 00 50 */ stw r0, 0x50(r1) +/* 801508C0 0014D820 A0 B8 01 70 */ lhz r5, 0x170(r24) +/* 801508C4 0014D824 4B FF EB 2D */ bl sub_8014f3f0 +/* 801508C8 0014D828 38 00 00 00 */ li r0, 0 +/* 801508CC 0014D82C 98 01 00 20 */ stb r0, 0x20(r1) +/* 801508D0 0014D830 48 00 00 10 */ b lbl_801508E0 +lbl_801508D4: +/* 801508D4 0014D834 7F 03 C3 78 */ mr r3, r24 +/* 801508D8 0014D838 38 98 01 78 */ addi r4, r24, 0x178 +/* 801508DC 0014D83C 4B FF EA C9 */ bl sub_8014f3a4 +lbl_801508E0: +/* 801508E0 0014D840 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 801508E4 0014D844 80 63 00 10 */ lwz r3, 0x10(r3) +/* 801508E8 0014D848 A8 83 02 08 */ lha r4, 0x208(r3) +/* 801508EC 0014D84C 4B ED BB DD */ bl GetAnimationDuration__9CAnimDataCFi +/* 801508F0 0014D850 C0 18 01 38 */ lfs f0, 0x138(r24) +/* 801508F4 0014D854 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 801508F8 0014D858 EF 40 00 72 */ fmuls f26, f0, f1 +/* 801508FC 0014D85C C0 22 9D 9C */ lfs f1, lbl_805ABABC@sda21(r2) +/* 80150900 0014D860 80 63 00 10 */ lwz r3, 0x10(r3) +/* 80150904 0014D864 4B ED 9C 05 */ bl sub_8002a508 +/* 80150908 0014D868 80 7F 00 64 */ lwz r3, 0x64(r31) +/* 8015090C 0014D86C C0 22 9D B4 */ lfs f1, lbl_805ABAD4@sda21(r2) +/* 80150910 0014D870 80 63 00 10 */ lwz r3, 0x10(r3) +/* 80150914 0014D874 4B ED AB 55 */ bl SetPlaybackRate__9CAnimDataFf +/* 80150918 0014D878 FC 20 D0 90 */ fmr f1, f26 +/* 8015091C 0014D87C 7F E4 FB 78 */ mr r4, r31 +/* 80150920 0014D880 7F 25 CB 78 */ mr r5, r25 +/* 80150924 0014D884 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 80150928 0014D888 38 C0 00 01 */ li r6, 1 +/* 8015092C 0014D88C 4B F0 49 71 */ bl UpdateAnimation__6CActorFfR13CStateManagerb +/* 80150930 0014D890 C0 C1 00 B4 */ lfs f6, 0xb4(r1) +/* 80150934 0014D894 7F A4 EB 78 */ mr r4, r29 +/* 80150938 0014D898 C0 A1 00 B8 */ lfs f5, 0xb8(r1) +/* 8015093C 0014D89C 38 61 00 EC */ addi r3, r1, 0xec +/* 80150940 0014D8A0 C0 81 00 BC */ lfs f4, 0xbc(r1) +/* 80150944 0014D8A4 38 A1 00 D0 */ addi r5, r1, 0xd0 +/* 80150948 0014D8A8 C0 61 00 C0 */ lfs f3, 0xc0(r1) +/* 8015094C 0014D8AC C0 41 00 C4 */ lfs f2, 0xc4(r1) +/* 80150950 0014D8B0 C0 21 00 C8 */ lfs f1, 0xc8(r1) +/* 80150954 0014D8B4 C0 01 00 CC */ lfs f0, 0xcc(r1) +/* 80150958 0014D8B8 D0 C1 00 D0 */ stfs f6, 0xd0(r1) +/* 8015095C 0014D8BC D0 A1 00 D4 */ stfs f5, 0xd4(r1) +/* 80150960 0014D8C0 D0 81 00 D8 */ stfs f4, 0xd8(r1) +/* 80150964 0014D8C4 D0 61 00 DC */ stfs f3, 0xdc(r1) +/* 80150968 0014D8C8 D0 41 00 E0 */ stfs f2, 0xe0(r1) +/* 8015096C 0014D8CC D0 21 00 E4 */ stfs f1, 0xe4(r1) +/* 80150970 0014D8D0 D0 01 00 E8 */ stfs f0, 0xe8(r1) +/* 80150974 0014D8D4 48 1C 15 49 */ bl BuildTransform4f__11CQuaternionCFRC9CVector3f +/* 80150978 0014D8D8 38 61 01 1C */ addi r3, r1, 0x11c +/* 8015097C 0014D8DC 38 98 01 3C */ addi r4, r24, 0x13c +/* 80150980 0014D8E0 38 A1 00 EC */ addi r5, r1, 0xec +/* 80150984 0014D8E4 48 1C 1F CD */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80150988 0014D8E8 38 7F 00 34 */ addi r3, r31, 0x34 +/* 8015098C 0014D8EC 38 81 01 1C */ addi r4, r1, 0x11c +/* 80150990 0014D8F0 48 1C 21 B1 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80150994 0014D8F4 88 7F 00 E4 */ lbz r3, 0xe4(r31) +/* 80150998 0014D8F8 38 80 00 01 */ li r4, 1 +/* 8015099C 0014D8FC 50 83 26 F6 */ rlwimi r3, r4, 4, 0x1b, 0x1b +/* 801509A0 0014D900 38 00 00 00 */ li r0, 0 +/* 801509A4 0014D904 98 7F 00 E4 */ stb r3, 0xe4(r31) +/* 801509A8 0014D908 88 7F 00 E4 */ lbz r3, 0xe4(r31) +/* 801509AC 0014D90C 50 83 1F 38 */ rlwimi r3, r4, 3, 0x1c, 0x1c +/* 801509B0 0014D910 98 01 00 38 */ stb r0, 0x38(r1) +/* 801509B4 0014D914 98 7F 00 E4 */ stb r3, 0xe4(r31) +/* 801509B8 0014D918 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801509BC 0014D91C 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d +/* 801509C0 0014D920 98 1F 00 E4 */ stb r0, 0xe4(r31) +lbl_801509C4: +/* 801509C4 0014D924 3B DE 00 0C */ addi r30, r30, 0xc +lbl_801509C8: +/* 801509C8 0014D928 80 18 00 24 */ lwz r0, 0x24(r24) +/* 801509CC 0014D92C 80 78 00 2C */ lwz r3, 0x2c(r24) +/* 801509D0 0014D930 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801509D4 0014D934 7C 03 02 14 */ add r0, r3, r0 +/* 801509D8 0014D938 7C 1E 00 40 */ cmplw r30, r0 +/* 801509DC 0014D93C 40 82 F9 94 */ bne lbl_80150370 +/* 801509E0 0014D940 E3 E1 01 D8 */ psq_l f31, 472(r1), 0, qr0 +/* 801509E4 0014D944 CB E1 01 D0 */ lfd f31, 0x1d0(r1) +/* 801509E8 0014D948 E3 C1 01 C8 */ psq_l f30, 456(r1), 0, qr0 +/* 801509EC 0014D94C CB C1 01 C0 */ lfd f30, 0x1c0(r1) +/* 801509F0 0014D950 E3 A1 01 B8 */ psq_l f29, 440(r1), 0, qr0 +/* 801509F4 0014D954 CB A1 01 B0 */ lfd f29, 0x1b0(r1) +/* 801509F8 0014D958 E3 81 01 A8 */ psq_l f28, 424(r1), 0, qr0 +/* 801509FC 0014D95C CB 81 01 A0 */ lfd f28, 0x1a0(r1) +/* 80150A00 0014D960 E3 61 01 98 */ psq_l f27, 408(r1), 0, qr0 +/* 80150A04 0014D964 CB 61 01 90 */ lfd f27, 0x190(r1) +/* 80150A08 0014D968 E3 41 01 88 */ psq_l f26, 392(r1), 0, qr0 +/* 80150A0C 0014D96C CB 41 01 80 */ lfd f26, 0x180(r1) +/* 80150A10 0014D970 BA E1 01 5C */ lmw r23, 0x15c(r1) +/* 80150A14 0014D974 80 01 01 E4 */ lwz r0, 0x1e4(r1) +/* 80150A18 0014D978 7C 08 03 A6 */ mtlr r0 +/* 80150A1C 0014D97C 38 21 01 E0 */ addi r1, r1, 0x1e0 +/* 80150A20 0014D980 4E 80 00 20 */ blr + +.global sub_80150a24 +sub_80150a24: +/* 80150A24 0014D984 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80150A28 0014D988 7C 08 02 A6 */ mflr r0 +/* 80150A2C 0014D98C 7C 86 23 78 */ mr r6, r4 +/* 80150A30 0014D990 90 01 00 24 */ stw r0, 0x24(r1) +/* 80150A34 0014D994 80 83 00 04 */ lwz r4, 4(r3) +/* 80150A38 0014D998 80 03 00 08 */ lwz r0, 8(r3) +/* 80150A3C 0014D99C 7C 04 00 00 */ cmpw r4, r0 +/* 80150A40 0014D9A0 40 82 00 10 */ bne lbl_80150A50 +/* 80150A44 0014D9A4 80 83 00 04 */ lwz r4, 4(r3) +/* 80150A48 0014D9A8 38 04 FF FF */ addi r0, r4, -1 +/* 80150A4C 0014D9AC 90 03 00 04 */ stw r0, 4(r3) +lbl_80150A50: +/* 80150A50 0014D9B0 80 03 00 0C */ lwz r0, 0xc(r3) +/* 80150A54 0014D9B4 7C 64 1B 78 */ mr r4, r3 +/* 80150A58 0014D9B8 38 61 00 10 */ addi r3, r1, 0x10 +/* 80150A5C 0014D9BC 38 A1 00 0C */ addi r5, r1, 0xc +/* 80150A60 0014D9C0 90 01 00 08 */ stw r0, 8(r1) +/* 80150A64 0014D9C4 90 01 00 0C */ stw r0, 0xc(r1) +/* 80150A68 0014D9C8 48 00 00 15 */ bl sub_80150a7c +/* 80150A6C 0014D9CC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80150A70 0014D9D0 7C 08 03 A6 */ mtlr r0 +/* 80150A74 0014D9D4 38 21 00 20 */ addi r1, r1, 0x20 +/* 80150A78 0014D9D8 4E 80 00 20 */ blr + +.global sub_80150a7c +sub_80150a7c: +/* 80150A7C 0014D9DC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80150A80 0014D9E0 7C 08 02 A6 */ mflr r0 +/* 80150A84 0014D9E4 90 01 00 34 */ stw r0, 0x34(r1) +/* 80150A88 0014D9E8 38 00 00 00 */ li r0, 0 +/* 80150A8C 0014D9EC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80150A90 0014D9F0 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80150A94 0014D9F4 7C 9E 23 78 */ mr r30, r4 +/* 80150A98 0014D9F8 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80150A9C 0014D9FC 7C 7D 1B 78 */ mr r29, r3 +/* 80150AA0 0014DA00 7F C3 F3 78 */ mr r3, r30 +/* 80150AA4 0014DA04 80 84 00 0C */ lwz r4, 0xc(r4) +/* 80150AA8 0014DA08 80 E5 00 00 */ lwz r7, 0(r5) +/* 80150AAC 0014DA0C 38 A0 00 01 */ li r5, 1 +/* 80150AB0 0014DA10 90 C1 00 14 */ stw r6, 0x14(r1) +/* 80150AB4 0014DA14 7C 84 38 50 */ subf r4, r4, r7 +/* 80150AB8 0014DA18 90 C1 00 0C */ stw r6, 0xc(r1) +/* 80150ABC 0014DA1C 7C 84 16 70 */ srawi r4, r4, 2 +/* 80150AC0 0014DA20 7F E4 01 94 */ addze r31, r4 +/* 80150AC4 0014DA24 38 C1 00 0C */ addi r6, r1, 0xc +/* 80150AC8 0014DA28 90 01 00 18 */ stw r0, 0x18(r1) +/* 80150ACC 0014DA2C 38 81 00 08 */ addi r4, r1, 8 +/* 80150AD0 0014DA30 90 01 00 10 */ stw r0, 0x10(r1) +/* 80150AD4 0014DA34 90 E1 00 08 */ stw r7, 8(r1) +/* 80150AD8 0014DA38 48 00 00 31 */ bl sub_80150b08 +/* 80150ADC 0014DA3C 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 80150AE0 0014DA40 57 E0 10 3A */ slwi r0, r31, 2 +/* 80150AE4 0014DA44 7C 63 02 14 */ add r3, r3, r0 +/* 80150AE8 0014DA48 90 7D 00 00 */ stw r3, 0(r29) +/* 80150AEC 0014DA4C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80150AF0 0014DA50 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80150AF4 0014DA54 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80150AF8 0014DA58 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80150AFC 0014DA5C 7C 08 03 A6 */ mtlr r0 +/* 80150B00 0014DA60 38 21 00 30 */ addi r1, r1, 0x30 +/* 80150B04 0014DA64 4E 80 00 20 */ blr + +.global sub_80150b08 +sub_80150b08: +/* 80150B08 0014DA68 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80150B0C 0014DA6C 7C 08 02 A6 */ mflr r0 +/* 80150B10 0014DA70 90 01 00 34 */ stw r0, 0x34(r1) +/* 80150B14 0014DA74 BF 21 00 14 */ stmw r25, 0x14(r1) +/* 80150B18 0014DA78 7C 7B 1B 78 */ mr r27, r3 +/* 80150B1C 0014DA7C 7C 99 23 78 */ mr r25, r4 +/* 80150B20 0014DA80 7C BC 2B 78 */ mr r28, r5 +/* 80150B24 0014DA84 80 63 00 04 */ lwz r3, 4(r3) +/* 80150B28 0014DA88 80 9B 00 08 */ lwz r4, 8(r27) +/* 80150B2C 0014DA8C 7C A3 E2 14 */ add r5, r3, r28 +/* 80150B30 0014DA90 80 FB 00 0C */ lwz r7, 0xc(r27) +/* 80150B34 0014DA94 7C 05 20 00 */ cmpw r5, r4 +/* 80150B38 0014DA98 83 E6 00 00 */ lwz r31, 0(r6) +/* 80150B3C 0014DA9C 7C FE 3B 78 */ mr r30, r7 +/* 80150B40 0014DAA0 41 81 00 9C */ bgt lbl_80150BDC +/* 80150B44 0014DAA4 80 19 00 00 */ lwz r0, 0(r25) +/* 80150B48 0014DAA8 57 84 10 3A */ slwi r4, r28, 2 +/* 80150B4C 0014DAAC 7C 07 00 50 */ subf r0, r7, r0 +/* 80150B50 0014DAB0 7C 00 16 70 */ srawi r0, r0, 2 +/* 80150B54 0014DAB4 7C A0 01 94 */ addze r5, r0 +/* 80150B58 0014DAB8 7C 65 18 50 */ subf r3, r5, r3 +/* 80150B5C 0014DABC 35 03 FF FF */ addic. r8, r3, -1 +/* 80150B60 0014DAC0 54 A0 10 3A */ slwi r0, r5, 2 +/* 80150B64 0014DAC4 7C C7 02 14 */ add r6, r7, r0 +/* 80150B68 0014DAC8 55 03 10 3A */ slwi r3, r8, 2 +/* 80150B6C 0014DACC 38 08 00 01 */ addi r0, r8, 1 +/* 80150B70 0014DAD0 7C 84 1A 14 */ add r4, r4, r3 +/* 80150B74 0014DAD4 7C 86 22 14 */ add r4, r6, r4 +/* 80150B78 0014DAD8 7C 09 03 A6 */ mtctr r0 +/* 80150B7C 0014DADC 41 80 00 2C */ blt lbl_80150BA8 +lbl_80150B80: +/* 80150B80 0014DAE0 28 04 00 00 */ cmplwi r4, 0 +/* 80150B84 0014DAE4 7C 05 42 14 */ add r0, r5, r8 +/* 80150B88 0014DAE8 80 7B 00 0C */ lwz r3, 0xc(r27) +/* 80150B8C 0014DAEC 54 00 10 3A */ slwi r0, r0, 2 +/* 80150B90 0014DAF0 41 82 00 0C */ beq lbl_80150B9C +/* 80150B94 0014DAF4 7C 03 04 2E */ lfsx f0, r3, r0 +/* 80150B98 0014DAF8 D0 04 00 00 */ stfs f0, 0(r4) +lbl_80150B9C: +/* 80150B9C 0014DAFC 38 84 FF FC */ addi r4, r4, -4 +/* 80150BA0 0014DB00 39 08 FF FF */ addi r8, r8, -1 +/* 80150BA4 0014DB04 42 00 FF DC */ bdnz lbl_80150B80 +lbl_80150BA8: +/* 80150BA8 0014DB08 7F 89 03 A6 */ mtctr r28 +/* 80150BAC 0014DB0C 2C 1C 00 00 */ cmpwi r28, 0 +/* 80150BB0 0014DB10 40 81 00 1C */ ble lbl_80150BCC +lbl_80150BB4: +/* 80150BB4 0014DB14 28 06 00 00 */ cmplwi r6, 0 +/* 80150BB8 0014DB18 41 82 00 0C */ beq lbl_80150BC4 +/* 80150BBC 0014DB1C C0 1F 00 00 */ lfs f0, 0(r31) +/* 80150BC0 0014DB20 D0 06 00 00 */ stfs f0, 0(r6) +lbl_80150BC4: +/* 80150BC4 0014DB24 38 C6 00 04 */ addi r6, r6, 4 +/* 80150BC8 0014DB28 42 00 FF EC */ bdnz lbl_80150BB4 +lbl_80150BCC: +/* 80150BCC 0014DB2C 80 1B 00 04 */ lwz r0, 4(r27) +/* 80150BD0 0014DB30 7C 00 E2 14 */ add r0, r0, r28 +/* 80150BD4 0014DB34 90 1B 00 04 */ stw r0, 4(r27) +/* 80150BD8 0014DB38 48 00 01 4C */ b lbl_80150D24 +lbl_80150BDC: +/* 80150BDC 0014DB3C 2C 04 00 00 */ cmpwi r4, 0 +/* 80150BE0 0014DB40 38 00 00 04 */ li r0, 4 +/* 80150BE4 0014DB44 41 82 00 08 */ beq lbl_80150BEC +/* 80150BE8 0014DB48 54 80 08 3C */ slwi r0, r4, 1 +lbl_80150BEC: +/* 80150BEC 0014DB4C 7C 1D 03 78 */ mr r29, r0 +/* 80150BF0 0014DB50 48 00 00 08 */ b lbl_80150BF8 +lbl_80150BF4: +/* 80150BF4 0014DB54 57 BD 08 3C */ slwi r29, r29, 1 +lbl_80150BF8: +/* 80150BF8 0014DB58 7C 1D 28 00 */ cmpw r29, r5 +/* 80150BFC 0014DB5C 41 80 FF F8 */ blt lbl_80150BF4 +/* 80150C00 0014DB60 57 A3 10 3B */ rlwinm. r3, r29, 2, 0, 0x1d +/* 80150C04 0014DB64 40 82 00 0C */ bne lbl_80150C10 +/* 80150C08 0014DB68 3B 40 00 00 */ li r26, 0 +/* 80150C0C 0014DB6C 48 00 00 1C */ b lbl_80150C28 +lbl_80150C10: +/* 80150C10 0014DB70 3C 80 80 3D */ lis r4, lbl_803D01D0@ha +/* 80150C14 0014DB74 38 A0 00 00 */ li r5, 0 +/* 80150C18 0014DB78 38 84 01 D0 */ addi r4, r4, lbl_803D01D0@l +/* 80150C1C 0014DB7C 38 84 00 15 */ addi r4, r4, 0x15 +/* 80150C20 0014DB80 48 1C 4B F9 */ bl __nwa__FUlPCcPCc +/* 80150C24 0014DB84 7C 7A 1B 78 */ mr r26, r3 +lbl_80150C28: +/* 80150C28 0014DB88 80 7B 00 0C */ lwz r3, 0xc(r27) +/* 80150C2C 0014DB8C 7F 46 D3 78 */ mr r6, r26 +/* 80150C30 0014DB90 80 19 00 00 */ lwz r0, 0(r25) +/* 80150C34 0014DB94 38 E0 00 00 */ li r7, 0 +/* 80150C38 0014DB98 38 A0 00 00 */ li r5, 0 +/* 80150C3C 0014DB9C 7C 03 00 50 */ subf r0, r3, r0 +/* 80150C40 0014DBA0 7C 00 16 70 */ srawi r0, r0, 2 +/* 80150C44 0014DBA4 7C 80 01 95 */ addze. r4, r0 +/* 80150C48 0014DBA8 7C 89 03 A6 */ mtctr r4 +/* 80150C4C 0014DBAC 40 81 00 28 */ ble lbl_80150C74 +lbl_80150C50: +/* 80150C50 0014DBB0 28 06 00 00 */ cmplwi r6, 0 +/* 80150C54 0014DBB4 80 7B 00 0C */ lwz r3, 0xc(r27) +/* 80150C58 0014DBB8 41 82 00 0C */ beq lbl_80150C64 +/* 80150C5C 0014DBBC 7C 03 2C 2E */ lfsx f0, r3, r5 +/* 80150C60 0014DBC0 D0 06 00 00 */ stfs f0, 0(r6) +lbl_80150C64: +/* 80150C64 0014DBC4 38 C6 00 04 */ addi r6, r6, 4 +/* 80150C68 0014DBC8 38 E7 00 01 */ addi r7, r7, 1 +/* 80150C6C 0014DBCC 38 A5 00 04 */ addi r5, r5, 4 +/* 80150C70 0014DBD0 42 00 FF E0 */ bdnz lbl_80150C50 +lbl_80150C74: +/* 80150C74 0014DBD4 54 E0 10 3A */ slwi r0, r7, 2 +/* 80150C78 0014DBD8 7C 7A 02 14 */ add r3, r26, r0 +/* 80150C7C 0014DBDC 7F 89 03 A6 */ mtctr r28 +/* 80150C80 0014DBE0 2C 1C 00 00 */ cmpwi r28, 0 +/* 80150C84 0014DBE4 40 81 00 20 */ ble lbl_80150CA4 +lbl_80150C88: +/* 80150C88 0014DBE8 28 03 00 00 */ cmplwi r3, 0 +/* 80150C8C 0014DBEC 41 82 00 0C */ beq lbl_80150C98 +/* 80150C90 0014DBF0 C0 1F 00 00 */ lfs f0, 0(r31) +/* 80150C94 0014DBF4 D0 03 00 00 */ stfs f0, 0(r3) +lbl_80150C98: +/* 80150C98 0014DBF8 38 63 00 04 */ addi r3, r3, 4 +/* 80150C9C 0014DBFC 38 E7 00 01 */ addi r7, r7, 1 +/* 80150CA0 0014DC00 42 00 FF E8 */ bdnz lbl_80150C88 +lbl_80150CA4: +/* 80150CA4 0014DC04 54 E0 10 3A */ slwi r0, r7, 2 +/* 80150CA8 0014DC08 7C 86 23 78 */ mr r6, r4 +/* 80150CAC 0014DC0C 54 84 10 3A */ slwi r4, r4, 2 +/* 80150CB0 0014DC10 7C BA 02 14 */ add r5, r26, r0 +/* 80150CB4 0014DC14 48 00 00 24 */ b lbl_80150CD8 +lbl_80150CB8: +/* 80150CB8 0014DC18 28 05 00 00 */ cmplwi r5, 0 +/* 80150CBC 0014DC1C 80 7B 00 0C */ lwz r3, 0xc(r27) +/* 80150CC0 0014DC20 41 82 00 0C */ beq lbl_80150CCC +/* 80150CC4 0014DC24 7C 03 24 2E */ lfsx f0, r3, r4 +/* 80150CC8 0014DC28 D0 05 00 00 */ stfs f0, 0(r5) +lbl_80150CCC: +/* 80150CCC 0014DC2C 38 A5 00 04 */ addi r5, r5, 4 +/* 80150CD0 0014DC30 38 84 00 04 */ addi r4, r4, 4 +/* 80150CD4 0014DC34 38 C6 00 01 */ addi r6, r6, 1 +lbl_80150CD8: +/* 80150CD8 0014DC38 80 1B 00 04 */ lwz r0, 4(r27) +/* 80150CDC 0014DC3C 7C 06 00 00 */ cmpw r6, r0 +/* 80150CE0 0014DC40 41 80 FF D8 */ blt lbl_80150CB8 +/* 80150CE4 0014DC44 54 00 10 3A */ slwi r0, r0, 2 +/* 80150CE8 0014DC48 7F C3 F3 78 */ mr r3, r30 +/* 80150CEC 0014DC4C 7C 1E 02 14 */ add r0, r30, r0 +/* 80150CF0 0014DC50 48 00 00 08 */ b lbl_80150CF8 +lbl_80150CF4: +/* 80150CF4 0014DC54 38 63 00 04 */ addi r3, r3, 4 +lbl_80150CF8: +/* 80150CF8 0014DC58 7C 03 00 40 */ cmplw r3, r0 +/* 80150CFC 0014DC5C 40 82 FF F8 */ bne lbl_80150CF4 +/* 80150D00 0014DC60 80 7B 00 0C */ lwz r3, 0xc(r27) +/* 80150D04 0014DC64 28 03 00 00 */ cmplwi r3, 0 +/* 80150D08 0014DC68 41 82 00 08 */ beq lbl_80150D10 +/* 80150D0C 0014DC6C 48 1C 4C 25 */ bl Free__7CMemoryFPCv +lbl_80150D10: +/* 80150D10 0014DC70 93 5B 00 0C */ stw r26, 0xc(r27) +/* 80150D14 0014DC74 93 BB 00 08 */ stw r29, 8(r27) +/* 80150D18 0014DC78 80 1B 00 04 */ lwz r0, 4(r27) +/* 80150D1C 0014DC7C 7C 00 E2 14 */ add r0, r0, r28 +/* 80150D20 0014DC80 90 1B 00 04 */ stw r0, 4(r27) +lbl_80150D24: +/* 80150D24 0014DC84 BB 21 00 14 */ lmw r25, 0x14(r1) +/* 80150D28 0014DC88 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80150D2C 0014DC8C 7C 08 03 A6 */ mtlr r0 +/* 80150D30 0014DC90 38 21 00 30 */ addi r1, r1, 0x30 +/* 80150D34 0014DC94 4E 80 00 20 */ blr + +.global sub_80150d38 +sub_80150d38: +/* 80150D38 0014DC98 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80150D3C 0014DC9C 7C 08 02 A6 */ mflr r0 +/* 80150D40 0014DCA0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80150D44 0014DCA4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80150D48 0014DCA8 7C 7F 1B 78 */ mr r31, r3 +/* 80150D4C 0014DCAC 80 04 00 04 */ lwz r0, 4(r4) +/* 80150D50 0014DCB0 2C 00 00 00 */ cmpwi r0, 0 +/* 80150D54 0014DCB4 40 82 00 10 */ bne lbl_80150D64 +/* 80150D58 0014DCB8 38 00 00 00 */ li r0, 0 +/* 80150D5C 0014DCBC 98 1F 00 04 */ stb r0, 4(r31) +/* 80150D60 0014DCC0 48 00 00 24 */ b lbl_80150D84 +lbl_80150D64: +/* 80150D64 0014DCC4 80 64 00 0C */ lwz r3, 0xc(r4) +/* 80150D68 0014DCC8 7C 04 03 78 */ mr r4, r0 +/* 80150D6C 0014DCCC 4B EB 7B 29 */ bl "GetAverageValue__FPCfi" +/* 80150D70 0014DCD0 38 00 00 01 */ li r0, 1 +/* 80150D74 0014DCD4 28 1F 00 00 */ cmplwi r31, 0 +/* 80150D78 0014DCD8 98 1F 00 04 */ stb r0, 4(r31) +/* 80150D7C 0014DCDC 41 82 00 08 */ beq lbl_80150D84 +/* 80150D80 0014DCE0 D0 3F 00 00 */ stfs f1, 0(r31) +lbl_80150D84: +/* 80150D84 0014DCE4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80150D88 0014DCE8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80150D8C 0014DCEC 7C 08 03 A6 */ mtlr r0 +/* 80150D90 0014DCF0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80150D94 0014DCF4 4E 80 00 20 */ blr + +.global sub_80150d98 +sub_80150d98: +/* 80150D98 0014DCF8 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80150D9C 0014DCFC 7C 08 02 A6 */ mflr r0 +/* 80150DA0 0014DD00 2C 05 FF FF */ cmpwi r5, -1 +/* 80150DA4 0014DD04 90 01 00 64 */ stw r0, 0x64(r1) +/* 80150DA8 0014DD08 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 80150DAC 0014DD0C 41 82 00 10 */ beq lbl_80150DBC +/* 80150DB0 0014DD10 80 03 00 08 */ lwz r0, 8(r3) +/* 80150DB4 0014DD14 7C 05 00 00 */ cmpw r5, r0 +/* 80150DB8 0014DD18 41 80 00 0C */ blt lbl_80150DC4 +lbl_80150DBC: +/* 80150DBC 0014DD1C 83 E3 00 08 */ lwz r31, 8(r3) +/* 80150DC0 0014DD20 48 00 00 08 */ b lbl_80150DC8 +lbl_80150DC4: +/* 80150DC4 0014DD24 7C BF 2B 78 */ mr r31, r5 +lbl_80150DC8: +/* 80150DC8 0014DD28 38 E0 00 00 */ li r7, 0 +/* 80150DCC 0014DD2C 81 04 00 08 */ lwz r8, 8(r4) +/* 80150DD0 0014DD30 80 03 00 08 */ lwz r0, 8(r3) +/* 80150DD4 0014DD34 38 A1 00 28 */ addi r5, r1, 0x28 +/* 80150DD8 0014DD38 90 E1 00 0C */ stw r7, 0xc(r1) +/* 80150DDC 0014DD3C 38 C1 00 18 */ addi r6, r1, 0x18 +/* 80150DE0 0014DD40 90 81 00 10 */ stw r4, 0x10(r1) +/* 80150DE4 0014DD44 91 01 00 14 */ stw r8, 0x14(r1) +/* 80150DE8 0014DD48 90 81 00 18 */ stw r4, 0x18(r1) +/* 80150DEC 0014DD4C 91 01 00 1C */ stw r8, 0x1c(r1) +/* 80150DF0 0014DD50 90 81 00 20 */ stw r4, 0x20(r1) +/* 80150DF4 0014DD54 90 81 00 28 */ stw r4, 0x28(r1) +/* 80150DF8 0014DD58 38 81 00 38 */ addi r4, r1, 0x38 +/* 80150DFC 0014DD5C 90 E1 00 24 */ stw r7, 0x24(r1) +/* 80150E00 0014DD60 90 E1 00 2C */ stw r7, 0x2c(r1) +/* 80150E04 0014DD64 90 61 00 30 */ stw r3, 0x30(r1) +/* 80150E08 0014DD68 90 01 00 34 */ stw r0, 0x34(r1) +/* 80150E0C 0014DD6C 90 61 00 38 */ stw r3, 0x38(r1) +/* 80150E10 0014DD70 90 01 00 3C */ stw r0, 0x3c(r1) +/* 80150E14 0014DD74 90 61 00 40 */ stw r3, 0x40(r1) +/* 80150E18 0014DD78 90 E1 00 44 */ stw r7, 0x44(r1) +/* 80150E1C 0014DD7C 90 61 00 08 */ stw r3, 8(r1) +/* 80150E20 0014DD80 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80150E24 0014DD84 90 61 00 48 */ stw r3, 0x48(r1) +/* 80150E28 0014DD88 90 61 00 50 */ stw r3, 0x50(r1) +/* 80150E2C 0014DD8C 38 61 00 50 */ addi r3, r1, 0x50 +/* 80150E30 0014DD90 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80150E34 0014DD94 93 E1 00 54 */ stw r31, 0x54(r1) +/* 80150E38 0014DD98 48 00 00 2D */ bl sub_80150e64 +/* 80150E3C 0014DD9C 2C 03 FF FF */ cmpwi r3, -1 +/* 80150E40 0014DDA0 7C 03 FA 14 */ add r0, r3, r31 +/* 80150E44 0014DDA4 40 82 00 08 */ bne lbl_80150E4C +/* 80150E48 0014DDA8 7C 60 1B 78 */ mr r0, r3 +lbl_80150E4C: +/* 80150E4C 0014DDAC 7C 03 03 78 */ mr r3, r0 +/* 80150E50 0014DDB0 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80150E54 0014DDB4 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 80150E58 0014DDB8 7C 08 03 A6 */ mtlr r0 +/* 80150E5C 0014DDBC 38 21 00 60 */ addi r1, r1, 0x60 +/* 80150E60 0014DDC0 4E 80 00 20 */ blr + +.global sub_80150e64 +sub_80150e64: +/* 80150E64 0014DDC4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80150E68 0014DDC8 39 00 00 00 */ li r8, 0 +/* 80150E6C 0014DDCC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80150E70 0014DDD0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80150E74 0014DDD4 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80150E78 0014DDD8 81 65 00 00 */ lwz r11, 0(r5) +/* 80150E7C 0014DDDC 81 86 00 00 */ lwz r12, 0(r6) +/* 80150E80 0014DDE0 7C 0B 60 40 */ cmplw r11, r12 +/* 80150E84 0014DDE4 40 82 00 18 */ bne lbl_80150E9C +/* 80150E88 0014DDE8 80 E5 00 04 */ lwz r7, 4(r5) +/* 80150E8C 0014DDEC 80 06 00 04 */ lwz r0, 4(r6) +/* 80150E90 0014DDF0 7C 07 00 00 */ cmpw r7, r0 +/* 80150E94 0014DDF4 40 82 00 08 */ bne lbl_80150E9C +/* 80150E98 0014DDF8 39 00 00 01 */ li r8, 1 +lbl_80150E9C: +/* 80150E9C 0014DDFC 55 00 06 3F */ clrlwi. r0, r8, 0x18 +/* 80150EA0 0014DE00 41 82 00 0C */ beq lbl_80150EAC +/* 80150EA4 0014DE04 38 60 00 00 */ li r3, 0 +/* 80150EA8 0014DE08 48 00 00 B4 */ b lbl_80150F5C +lbl_80150EAC: +/* 80150EAC 0014DE0C 83 E3 00 04 */ lwz r31, 4(r3) +/* 80150EB0 0014DE10 3B A0 00 00 */ li r29, 0 +/* 80150EB4 0014DE14 83 C5 00 04 */ lwz r30, 4(r5) +/* 80150EB8 0014DE18 80 E3 00 00 */ lwz r7, 0(r3) +/* 80150EBC 0014DE1C 7F E8 FB 78 */ mr r8, r31 +/* 80150EC0 0014DE20 81 44 00 00 */ lwz r10, 0(r4) +/* 80150EC4 0014DE24 7F C9 F3 78 */ mr r9, r30 +/* 80150EC8 0014DE28 48 00 00 6C */ b lbl_80150F34 +lbl_80150ECC: +/* 80150ECC 0014DE2C 80 A7 00 00 */ lwz r5, 0(r7) +/* 80150ED0 0014DE30 80 6B 00 00 */ lwz r3, 0(r11) +/* 80150ED4 0014DE34 7C A5 40 AE */ lbzx r5, r5, r8 +/* 80150ED8 0014DE38 7C 03 48 AE */ lbzx r0, r3, r9 +/* 80150EDC 0014DE3C 7C A3 07 74 */ extsb r3, r5 +/* 80150EE0 0014DE40 7C 00 07 74 */ extsb r0, r0 +/* 80150EE4 0014DE44 7C 03 00 00 */ cmpw r3, r0 +/* 80150EE8 0014DE48 40 82 00 40 */ bne lbl_80150F28 +/* 80150EEC 0014DE4C 7C 0B 60 40 */ cmplw r11, r12 +/* 80150EF0 0014DE50 38 60 00 00 */ li r3, 0 +/* 80150EF4 0014DE54 39 29 00 01 */ addi r9, r9, 1 +/* 80150EF8 0014DE58 3B BD 00 01 */ addi r29, r29, 1 +/* 80150EFC 0014DE5C 40 82 00 14 */ bne lbl_80150F10 +/* 80150F00 0014DE60 80 06 00 04 */ lwz r0, 4(r6) +/* 80150F04 0014DE64 7C 09 00 00 */ cmpw r9, r0 +/* 80150F08 0014DE68 40 82 00 08 */ bne lbl_80150F10 +/* 80150F0C 0014DE6C 38 60 00 01 */ li r3, 1 +lbl_80150F10: +/* 80150F10 0014DE70 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80150F14 0014DE74 41 82 00 1C */ beq lbl_80150F30 +/* 80150F18 0014DE78 7C 1F 40 50 */ subf r0, r31, r8 +/* 80150F1C 0014DE7C 7C 7D 00 50 */ subf r3, r29, r0 +/* 80150F20 0014DE80 38 63 00 01 */ addi r3, r3, 1 +/* 80150F24 0014DE84 48 00 00 38 */ b lbl_80150F5C +lbl_80150F28: +/* 80150F28 0014DE88 7F C9 F3 78 */ mr r9, r30 +/* 80150F2C 0014DE8C 3B A0 00 00 */ li r29, 0 +lbl_80150F30: +/* 80150F30 0014DE90 39 08 00 01 */ addi r8, r8, 1 +lbl_80150F34: +/* 80150F34 0014DE94 7C 07 50 40 */ cmplw r7, r10 +/* 80150F38 0014DE98 38 60 00 00 */ li r3, 0 +/* 80150F3C 0014DE9C 40 82 00 10 */ bne lbl_80150F4C +/* 80150F40 0014DEA0 80 04 00 04 */ lwz r0, 4(r4) +/* 80150F44 0014DEA4 7C 08 00 00 */ cmpw r8, r0 +/* 80150F48 0014DEA8 41 82 00 08 */ beq lbl_80150F50 +lbl_80150F4C: +/* 80150F4C 0014DEAC 38 60 00 01 */ li r3, 1 +lbl_80150F50: +/* 80150F50 0014DEB0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80150F54 0014DEB4 40 82 FF 78 */ bne lbl_80150ECC +/* 80150F58 0014DEB8 38 60 FF FF */ li r3, -1 +lbl_80150F5C: +/* 80150F5C 0014DEBC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80150F60 0014DEC0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80150F64 0014DEC4 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80150F68 0014DEC8 38 21 00 20 */ addi r1, r1, 0x20 +/* 80150F6C 0014DECC 4E 80 00 20 */ blr + +.global ThinkPlayerFollowLocator__22CScriptSpecialFunctionFfR13CStateManager +ThinkPlayerFollowLocator__22CScriptSpecialFunctionFfR13CStateManager: +/* 80150F70 0014DED0 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 80150F74 0014DED4 7C 08 02 A6 */ mflr r0 +/* 80150F78 0014DED8 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 80150F7C 0014DEDC 93 E1 00 CC */ stw r31, 0xcc(r1) +/* 80150F80 0014DEE0 93 C1 00 C8 */ stw r30, 0xc8(r1) +/* 80150F84 0014DEE4 7C 9E 23 78 */ mr r30, r4 +/* 80150F88 0014DEE8 93 A1 00 C4 */ stw r29, 0xc4(r1) +/* 80150F8C 0014DEEC 7C 7D 1B 78 */ mr r29, r3 +/* 80150F90 0014DEF0 93 81 00 C0 */ stw r28, 0xc0(r1) +/* 80150F94 0014DEF4 83 E3 00 2C */ lwz r31, 0x2c(r3) +/* 80150F98 0014DEF8 48 00 01 4C */ b lbl_801510E4 +lbl_80150F9C: +/* 80150F9C 0014DEFC 80 1F 00 00 */ lwz r0, 0(r31) +/* 80150FA0 0014DF00 2C 00 00 12 */ cmpwi r0, 0x12 +/* 80150FA4 0014DF04 40 82 01 3C */ bne lbl_801510E0 +/* 80150FA8 0014DF08 80 1F 00 04 */ lwz r0, 4(r31) +/* 80150FAC 0014DF0C 2C 00 00 01 */ cmpwi r0, 1 +/* 80150FB0 0014DF10 40 82 01 30 */ bne lbl_801510E0 +/* 80150FB4 0014DF14 80 1F 00 08 */ lwz r0, 8(r31) +/* 80150FB8 0014DF18 7F C4 F3 78 */ mr r4, r30 +/* 80150FBC 0014DF1C 38 61 00 18 */ addi r3, r1, 0x18 +/* 80150FC0 0014DF20 38 A1 00 0C */ addi r5, r1, 0xc +/* 80150FC4 0014DF24 90 01 00 0C */ stw r0, 0xc(r1) +/* 80150FC8 0014DF28 4B EF 70 01 */ bl GetIdListForScript__13CStateManagerCF9TEditorId +/* 80150FCC 0014DF2C 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 80150FD0 0014DF30 38 60 00 00 */ li r3, 0 +/* 80150FD4 0014DF34 80 01 00 20 */ lwz r0, 0x20(r1) +/* 80150FD8 0014DF38 80 81 00 1C */ lwz r4, 0x1c(r1) +/* 80150FDC 0014DF3C 7C 05 00 40 */ cmplw r5, r0 +/* 80150FE0 0014DF40 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80150FE4 0014DF44 40 82 00 10 */ bne lbl_80150FF4 +/* 80150FE8 0014DF48 7C 04 00 40 */ cmplw r4, r0 +/* 80150FEC 0014DF4C 40 82 00 08 */ bne lbl_80150FF4 +/* 80150FF0 0014DF50 38 60 00 01 */ li r3, 1 +lbl_80150FF4: +/* 80150FF4 0014DF54 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80150FF8 0014DF58 40 82 00 E8 */ bne lbl_801510E0 +/* 80150FFC 0014DF5C A0 05 00 14 */ lhz r0, 0x14(r5) +/* 80151000 0014DF60 7F C3 F3 78 */ mr r3, r30 +/* 80151004 0014DF64 38 81 00 08 */ addi r4, r1, 8 +/* 80151008 0014DF68 B0 01 00 08 */ sth r0, 8(r1) +/* 8015100C 0014DF6C 4B EF B5 99 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80151010 0014DF70 7C 64 1B 78 */ mr r4, r3 +/* 80151014 0014DF74 38 61 00 10 */ addi r3, r1, 0x10 +/* 80151018 0014DF78 4B F5 EC 79 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8015101C 0014DF7C 83 83 00 04 */ lwz r28, 4(r3) +/* 80151020 0014DF80 28 1C 00 00 */ cmplwi r28, 0 +/* 80151024 0014DF84 41 82 00 BC */ beq lbl_801510E0 +/* 80151028 0014DF88 80 9C 00 64 */ lwz r4, 0x64(r28) +/* 8015102C 0014DF8C 38 60 00 00 */ li r3, 0 +/* 80151030 0014DF90 28 04 00 00 */ cmplwi r4, 0 +/* 80151034 0014DF94 41 82 00 14 */ beq lbl_80151048 +/* 80151038 0014DF98 80 04 00 10 */ lwz r0, 0x10(r4) +/* 8015103C 0014DF9C 28 00 00 00 */ cmplwi r0, 0 +/* 80151040 0014DFA0 41 82 00 08 */ beq lbl_80151048 +/* 80151044 0014DFA4 38 60 00 01 */ li r3, 1 +lbl_80151048: +/* 80151048 0014DFA8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8015104C 0014DFAC 41 82 00 94 */ beq lbl_801510E0 +/* 80151050 0014DFB0 7F 84 E3 78 */ mr r4, r28 +/* 80151054 0014DFB4 38 61 00 28 */ addi r3, r1, 0x28 +/* 80151058 0014DFB8 38 BD 00 EC */ addi r5, r29, 0xec +/* 8015105C 0014DFBC 4B F0 1E A5 */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80151060 0014DFC0 38 61 00 58 */ addi r3, r1, 0x58 +/* 80151064 0014DFC4 38 9C 00 34 */ addi r4, r28, 0x34 +/* 80151068 0014DFC8 38 A1 00 28 */ addi r5, r1, 0x28 +/* 8015106C 0014DFCC 48 1C 18 E5 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80151070 0014DFD0 38 61 00 88 */ addi r3, r1, 0x88 +/* 80151074 0014DFD4 38 81 00 58 */ addi r4, r1, 0x58 +/* 80151078 0014DFD8 48 1C 1A FD */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8015107C 0014DFDC 83 BE 08 4C */ lwz r29, 0x84c(r30) +/* 80151080 0014DFE0 38 81 00 88 */ addi r4, r1, 0x88 +/* 80151084 0014DFE4 38 7D 00 34 */ addi r3, r29, 0x34 +/* 80151088 0014DFE8 48 1C 1A B9 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8015108C 0014DFEC 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 80151090 0014DFF0 38 A0 00 01 */ li r5, 1 +/* 80151094 0014DFF4 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 80151098 0014DFF8 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8015109C 0014DFFC 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 801510A0 0014E000 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 801510A4 0014E004 7F A3 EB 78 */ mr r3, r29 +/* 801510A8 0014E008 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 801510AC 0014E00C 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 801510B0 0014E010 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 801510B4 0014E014 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 801510B8 0014E018 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 801510BC 0014E01C 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 801510C0 0014E020 4B FC 9B E1 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 801510C4 0014E024 4B EC A4 71 */ bl Identity__10CAxisAngleFv +/* 801510C8 0014E028 7C 64 1B 78 */ mr r4, r3 +/* 801510CC 0014E02C 7F A3 EB 78 */ mr r3, r29 +/* 801510D0 0014E030 4B FC 9B 2D */ bl SetAngularVelocityWR__13CPhysicsActorFRC10CAxisAngle +/* 801510D4 0014E034 7F A3 EB 78 */ mr r3, r29 +/* 801510D8 0014E038 4B FC A1 DD */ bl ClearForcesAndTorques__13CPhysicsActorFv +/* 801510DC 0014E03C 48 00 00 20 */ b lbl_801510FC +lbl_801510E0: +/* 801510E0 0014E040 3B FF 00 0C */ addi r31, r31, 0xc +lbl_801510E4: +/* 801510E4 0014E044 80 1D 00 24 */ lwz r0, 0x24(r29) +/* 801510E8 0014E048 80 7D 00 2C */ lwz r3, 0x2c(r29) +/* 801510EC 0014E04C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 801510F0 0014E050 7C 03 02 14 */ add r0, r3, r0 +/* 801510F4 0014E054 7C 1F 00 40 */ cmplw r31, r0 +/* 801510F8 0014E058 40 82 FE A4 */ bne lbl_80150F9C +lbl_801510FC: +/* 801510FC 0014E05C 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 80151100 0014E060 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 80151104 0014E064 83 C1 00 C8 */ lwz r30, 0xc8(r1) +/* 80151108 0014E068 83 A1 00 C4 */ lwz r29, 0xc4(r1) +/* 8015110C 0014E06C 83 81 00 C0 */ lwz r28, 0xc0(r1) +/* 80151110 0014E070 7C 08 03 A6 */ mtlr r0 +/* 80151114 0014E074 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 80151118 0014E078 4E 80 00 20 */ blr + +.global ThinkIntroBossRingController__22CScriptSpecialFunctionFfR13CStateManager +ThinkIntroBossRingController__22CScriptSpecialFunctionFfR13CStateManager: +/* 8015111C 0014E07C 94 21 FE 80 */ stwu r1, -0x180(r1) +/* 80151120 0014E080 7C 08 02 A6 */ mflr r0 +/* 80151124 0014E084 90 01 01 84 */ stw r0, 0x184(r1) +/* 80151128 0014E088 DB E1 01 70 */ stfd f31, 0x170(r1) +/* 8015112C 0014E08C F3 E1 01 78 */ psq_st f31, 376(r1), 0, qr0 +/* 80151130 0014E090 BF 41 01 58 */ stmw r26, 0x158(r1) +/* 80151134 0014E094 7C 7B 1B 78 */ mr r27, r3 +/* 80151138 0014E098 FF E0 08 90 */ fmr f31, f1 +/* 8015113C 0014E09C 80 03 01 A8 */ lwz r0, 0x1a8(r3) +/* 80151140 0014E0A0 7C 9C 23 78 */ mr r28, r4 +/* 80151144 0014E0A4 2C 00 00 03 */ cmpwi r0, 3 +/* 80151148 0014E0A8 41 82 00 BC */ beq lbl_80151204 +/* 8015114C 0014E0AC 3B C0 00 00 */ li r30, 0 +/* 80151150 0014E0B0 3B A0 00 00 */ li r29, 0 +/* 80151154 0014E0B4 48 00 00 A4 */ b lbl_801511F8 +lbl_80151158: +/* 80151158 0014E0B8 80 BB 01 A4 */ lwz r5, 0x1a4(r27) +/* 8015115C 0014E0BC 7F 83 E3 78 */ mr r3, r28 +/* 80151160 0014E0C0 38 81 00 14 */ addi r4, r1, 0x14 +/* 80151164 0014E0C4 7C 05 EA 2E */ lhzx r0, r5, r29 +/* 80151168 0014E0C8 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8015116C 0014E0CC 4B EF B4 09 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80151170 0014E0D0 7C 64 1B 78 */ mr r4, r3 +/* 80151174 0014E0D4 38 61 00 38 */ addi r3, r1, 0x38 +/* 80151178 0014E0D8 4B F5 EB 19 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8015117C 0014E0DC 83 E3 00 04 */ lwz r31, 4(r3) +/* 80151180 0014E0E0 28 1F 00 00 */ cmplwi r31, 0 +/* 80151184 0014E0E4 41 82 00 6C */ beq lbl_801511F0 +/* 80151188 0014E0E8 38 61 01 1C */ addi r3, r1, 0x11c +/* 8015118C 0014E0EC 38 9F 00 34 */ addi r4, r31, 0x34 +/* 80151190 0014E0F0 48 1C 19 E5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80151194 0014E0F4 80 9B 01 A4 */ lwz r4, 0x1a4(r27) +/* 80151198 0014E0F8 38 1D 00 04 */ addi r0, r29, 4 +/* 8015119C 0014E0FC C0 22 9D DC */ lfs f1, lbl_805ABAFC@sda21(r2) +/* 801511A0 0014E100 38 61 01 1C */ addi r3, r1, 0x11c +/* 801511A4 0014E104 7C 04 04 2E */ lfsx f0, r4, r0 +/* 801511A8 0014E108 38 81 00 20 */ addi r4, r1, 0x20 +/* 801511AC 0014E10C EC 1F 00 32 */ fmuls f0, f31, f0 +/* 801511B0 0014E110 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801511B4 0014E114 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801511B8 0014E118 48 1C 23 05 */ bl RotateLocalZ__12CTransform4fFRC9CRelAngle +/* 801511BC 0014E11C 38 7F 00 34 */ addi r3, r31, 0x34 +/* 801511C0 0014E120 38 81 01 1C */ addi r4, r1, 0x11c +/* 801511C4 0014E124 48 1C 19 7D */ bl __as__12CTransform4fFRC12CTransform4f +/* 801511C8 0014E128 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801511CC 0014E12C 38 60 00 01 */ li r3, 1 +/* 801511D0 0014E130 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801511D4 0014E134 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 801511D8 0014E138 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801511DC 0014E13C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801511E0 0014E140 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 801511E4 0014E144 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 801511E8 0014E148 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801511EC 0014E14C 98 1F 00 E4 */ stb r0, 0xe4(r31) +lbl_801511F0: +/* 801511F0 0014E150 3B BD 00 18 */ addi r29, r29, 0x18 +/* 801511F4 0014E154 3B DE 00 01 */ addi r30, r30, 1 +lbl_801511F8: +/* 801511F8 0014E158 80 1B 01 9C */ lwz r0, 0x19c(r27) +/* 801511FC 0014E15C 7C 1E 00 00 */ cmpw r30, r0 +/* 80151200 0014E160 41 80 FF 58 */ blt lbl_80151158 +lbl_80151204: +/* 80151204 0014E164 80 1B 01 A8 */ lwz r0, 0x1a8(r27) +/* 80151208 0014E168 2C 00 00 02 */ cmpwi r0, 2 +/* 8015120C 0014E16C 41 82 04 84 */ beq lbl_80151690 +/* 80151210 0014E170 40 80 00 14 */ bge lbl_80151224 +/* 80151214 0014E174 2C 00 00 00 */ cmpwi r0, 0 +/* 80151218 0014E178 41 82 04 78 */ beq lbl_80151690 +/* 8015121C 0014E17C 40 80 01 CC */ bge lbl_801513E8 +/* 80151220 0014E180 48 00 04 70 */ b lbl_80151690 +lbl_80151224: +/* 80151224 0014E184 2C 00 00 04 */ cmpwi r0, 4 +/* 80151228 0014E188 40 80 04 68 */ bge lbl_80151690 +/* 8015122C 0014E18C C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) +/* 80151230 0014E190 3B C0 00 00 */ li r30, 0 +/* 80151234 0014E194 3B A0 00 00 */ li r29, 0 +/* 80151238 0014E198 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 8015123C 0014E19C 48 00 01 0C */ b lbl_80151348 +lbl_80151240: +/* 80151240 0014E1A0 80 BB 01 A4 */ lwz r5, 0x1a4(r27) +/* 80151244 0014E1A4 7F 83 E3 78 */ mr r3, r28 +/* 80151248 0014E1A8 38 81 00 10 */ addi r4, r1, 0x10 +/* 8015124C 0014E1AC 7C 05 EA 2E */ lhzx r0, r5, r29 +/* 80151250 0014E1B0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80151254 0014E1B4 4B EF B3 21 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80151258 0014E1B8 7C 64 1B 78 */ mr r4, r3 +/* 8015125C 0014E1BC 38 61 00 30 */ addi r3, r1, 0x30 +/* 80151260 0014E1C0 4B F5 EA 31 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80151264 0014E1C4 83 E3 00 04 */ lwz r31, 4(r3) +/* 80151268 0014E1C8 28 1F 00 00 */ cmplwi r31, 0 +/* 8015126C 0014E1CC 41 82 00 D4 */ beq lbl_80151340 +/* 80151270 0014E1D0 C1 5F 00 58 */ lfs f10, 0x58(r31) +/* 80151274 0014E1D4 7F E3 FB 78 */ mr r3, r31 +/* 80151278 0014E1D8 C1 1F 00 48 */ lfs f8, 0x48(r31) +/* 8015127C 0014E1DC 38 81 00 A4 */ addi r4, r1, 0xa4 +/* 80151280 0014E1E0 C0 02 9D E0 */ lfs f0, lbl_805ABB00@sda21(r2) +/* 80151284 0014E1E4 C0 5F 00 38 */ lfs f2, 0x38(r31) +/* 80151288 0014E1E8 EC A0 02 32 */ fmuls f5, f0, f8 +/* 8015128C 0014E1EC C1 9F 00 60 */ lfs f12, 0x60(r31) +/* 80151290 0014E1F0 EC 80 02 B2 */ fmuls f4, f0, f10 +/* 80151294 0014E1F4 C1 7F 00 50 */ lfs f11, 0x50(r31) +/* 80151298 0014E1F8 EC 60 00 B2 */ fmuls f3, f0, f2 +/* 8015129C 0014E1FC C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 801512A0 0014E200 EC FF 01 72 */ fmuls f7, f31, f5 +/* 801512A4 0014E204 D0 41 00 74 */ stfs f2, 0x74(r1) +/* 801512A8 0014E208 EC DF 01 32 */ fmuls f6, f31, f4 +/* 801512AC 0014E20C EC 5F 00 F2 */ fmuls f2, f31, f3 +/* 801512B0 0014E210 D1 01 00 78 */ stfs f8, 0x78(r1) +/* 801512B4 0014E214 ED 2B 38 2A */ fadds f9, f11, f7 +/* 801512B8 0014E218 ED 0C 30 2A */ fadds f8, f12, f6 +/* 801512BC 0014E21C D1 41 00 7C */ stfs f10, 0x7c(r1) +/* 801512C0 0014E220 EC 01 10 2A */ fadds f0, f1, f2 +/* 801512C4 0014E224 D0 61 00 80 */ stfs f3, 0x80(r1) +/* 801512C8 0014E228 D0 A1 00 84 */ stfs f5, 0x84(r1) +/* 801512CC 0014E22C D0 81 00 88 */ stfs f4, 0x88(r1) +/* 801512D0 0014E230 D0 41 00 8C */ stfs f2, 0x8c(r1) +/* 801512D4 0014E234 D0 E1 00 90 */ stfs f7, 0x90(r1) +/* 801512D8 0014E238 D0 C1 00 94 */ stfs f6, 0x94(r1) +/* 801512DC 0014E23C D0 21 00 98 */ stfs f1, 0x98(r1) +/* 801512E0 0014E240 D1 61 00 9C */ stfs f11, 0x9c(r1) +/* 801512E4 0014E244 D1 81 00 A0 */ stfs f12, 0xa0(r1) +/* 801512E8 0014E248 D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 801512EC 0014E24C D1 21 00 A8 */ stfs f9, 0xa8(r1) +/* 801512F0 0014E250 D1 01 00 AC */ stfs f8, 0xac(r1) +/* 801512F4 0014E254 4B F0 1B 99 */ bl SetTranslation__6CActorFRC9CVector3f +/* 801512F8 0014E258 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801512FC 0014E25C 38 61 00 68 */ addi r3, r1, 0x68 +/* 80151300 0014E260 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 80151304 0014E264 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 80151308 0014E268 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 8015130C 0014E26C D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 80151310 0014E270 D0 41 00 70 */ stfs f2, 0x70(r1) +/* 80151314 0014E274 48 1C 35 A5 */ bl Magnitude__9CVector3fCFv +/* 80151318 0014E278 FC 40 08 18 */ frsp f2, f1 +/* 8015131C 0014E27C C0 01 00 24 */ lfs f0, 0x24(r1) +/* 80151320 0014E280 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 80151324 0014E284 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80151328 0014E288 40 80 00 0C */ bge lbl_80151334 +/* 8015132C 0014E28C 38 61 00 1C */ addi r3, r1, 0x1c +/* 80151330 0014E290 48 00 00 08 */ b lbl_80151338 +lbl_80151334: +/* 80151334 0014E294 38 61 00 24 */ addi r3, r1, 0x24 +lbl_80151338: +/* 80151338 0014E298 C0 03 00 00 */ lfs f0, 0(r3) +/* 8015133C 0014E29C D0 01 00 24 */ stfs f0, 0x24(r1) +lbl_80151340: +/* 80151340 0014E2A0 3B BD 00 18 */ addi r29, r29, 0x18 +/* 80151344 0014E2A4 3B DE 00 01 */ addi r30, r30, 1 +lbl_80151348: +/* 80151348 0014E2A8 80 1B 01 9C */ lwz r0, 0x19c(r27) +/* 8015134C 0014E2AC 7C 1E 00 00 */ cmpw r30, r0 +/* 80151350 0014E2B0 41 80 FE F0 */ blt lbl_80151240 +/* 80151354 0014E2B4 7F 63 DB 78 */ mr r3, r27 +/* 80151358 0014E2B8 81 9B 00 00 */ lwz r12, 0(r27) +/* 8015135C 0014E2BC 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 80151360 0014E2C0 7D 89 03 A6 */ mtctr r12 +/* 80151364 0014E2C4 4E 80 04 21 */ bctrl +/* 80151368 0014E2C8 C0 21 00 24 */ lfs f1, 0x24(r1) +/* 8015136C 0014E2CC C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) +/* 80151370 0014E2D0 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 80151374 0014E2D4 41 82 03 1C */ beq lbl_80151690 +/* 80151378 0014E2D8 3B C0 00 00 */ li r30, 0 +/* 8015137C 0014E2DC 3B A0 00 00 */ li r29, 0 +/* 80151380 0014E2E0 48 00 00 40 */ b lbl_801513C0 +lbl_80151384: +/* 80151384 0014E2E4 80 BB 01 A4 */ lwz r5, 0x1a4(r27) +/* 80151388 0014E2E8 7F 83 E3 78 */ mr r3, r28 +/* 8015138C 0014E2EC 38 81 00 0C */ addi r4, r1, 0xc +/* 80151390 0014E2F0 7C 05 EA 2E */ lhzx r0, r5, r29 +/* 80151394 0014E2F4 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80151398 0014E2F8 4B EF B1 DD */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8015139C 0014E2FC 28 03 00 00 */ cmplwi r3, 0 +/* 801513A0 0014E300 41 82 00 18 */ beq lbl_801513B8 +/* 801513A4 0014E304 81 83 00 00 */ lwz r12, 0(r3) +/* 801513A8 0014E308 38 80 00 00 */ li r4, 0 +/* 801513AC 0014E30C 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801513B0 0014E310 7D 89 03 A6 */ mtctr r12 +/* 801513B4 0014E314 4E 80 04 21 */ bctrl +lbl_801513B8: +/* 801513B8 0014E318 3B BD 00 18 */ addi r29, r29, 0x18 +/* 801513BC 0014E31C 3B DE 00 01 */ addi r30, r30, 1 +lbl_801513C0: +/* 801513C0 0014E320 80 1B 01 9C */ lwz r0, 0x19c(r27) +/* 801513C4 0014E324 7C 1E 00 00 */ cmpw r30, r0 +/* 801513C8 0014E328 41 80 FF BC */ blt lbl_80151384 +/* 801513CC 0014E32C 7F 63 DB 78 */ mr r3, r27 +/* 801513D0 0014E330 38 80 00 00 */ li r4, 0 +/* 801513D4 0014E334 81 9B 00 00 */ lwz r12, 0(r27) +/* 801513D8 0014E338 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 801513DC 0014E33C 7D 89 03 A6 */ mtctr r12 +/* 801513E0 0014E340 4E 80 04 21 */ bctrl +/* 801513E4 0014E344 48 00 02 AC */ b lbl_80151690 +lbl_801513E8: +/* 801513E8 0014E348 88 1B 01 B8 */ lbz r0, 0x1b8(r27) +/* 801513EC 0014E34C C0 62 9D DC */ lfs f3, lbl_805ABAFC@sda21(r2) +/* 801513F0 0014E350 28 00 00 00 */ cmplwi r0, 0 +/* 801513F4 0014E354 C0 3B 00 FC */ lfs f1, 0xfc(r27) +/* 801513F8 0014E358 41 82 00 0C */ beq lbl_80151404 +/* 801513FC 0014E35C C0 02 9D B4 */ lfs f0, lbl_805ABAD4@sda21(r2) +/* 80151400 0014E360 48 00 00 08 */ b lbl_80151408 +lbl_80151404: +/* 80151404 0014E364 C0 02 9D BC */ lfs f0, lbl_805ABADC@sda21(r2) +lbl_80151408: +/* 80151408 0014E368 EC 41 00 32 */ fmuls f2, f1, f0 +/* 8015140C 0014E36C C0 22 9D 9C */ lfs f1, lbl_805ABABC@sda21(r2) +/* 80151410 0014E370 C0 02 9D B4 */ lfs f0, lbl_805ABAD4@sda21(r2) +/* 80151414 0014E374 38 61 00 40 */ addi r3, r1, 0x40 +/* 80151418 0014E378 D0 21 00 40 */ stfs f1, 0x40(r1) +/* 8015141C 0014E37C EC 5F 00 B2 */ fmuls f2, f31, f2 +/* 80151420 0014E380 D0 21 00 44 */ stfs f1, 0x44(r1) +/* 80151424 0014E384 EC 23 00 B2 */ fmuls f1, f3, f2 +/* 80151428 0014E388 D0 01 00 48 */ stfs f0, 0x48(r1) +/* 8015142C 0014E38C D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80151430 0014E390 48 1C 34 C9 */ bl Normalize__9CVector3fFv +/* 80151434 0014E394 38 61 00 4C */ addi r3, r1, 0x4c +/* 80151438 0014E398 38 81 00 40 */ addi r4, r1, 0x40 +/* 8015143C 0014E39C 38 A1 00 18 */ addi r5, r1, 0x18 +/* 80151440 0014E3A0 48 1B FE B5 */ bl AxisAngle__11CQuaternionFRC13CUnitVector3fRC9CRelAngle +/* 80151444 0014E3A4 38 61 00 5C */ addi r3, r1, 0x5c +/* 80151448 0014E3A8 38 81 00 4C */ addi r4, r1, 0x4c +/* 8015144C 0014E3AC 38 BB 01 AC */ addi r5, r27, 0x1ac +/* 80151450 0014E3B0 48 1B FE 15 */ bl Transform__11CQuaternionCFRC9CVector3f +/* 80151454 0014E3B4 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 80151458 0014E3B8 3B C0 00 01 */ li r30, 1 +/* 8015145C 0014E3BC 3B A0 00 00 */ li r29, 0 +/* 80151460 0014E3C0 3B E0 00 00 */ li r31, 0 +/* 80151464 0014E3C4 D0 1B 01 AC */ stfs f0, 0x1ac(r27) +/* 80151468 0014E3C8 C0 01 00 60 */ lfs f0, 0x60(r1) +/* 8015146C 0014E3CC D0 1B 01 B0 */ stfs f0, 0x1b0(r27) +/* 80151470 0014E3D0 C0 01 00 64 */ lfs f0, 0x64(r1) +/* 80151474 0014E3D4 D0 1B 01 B4 */ stfs f0, 0x1b4(r27) +/* 80151478 0014E3D8 48 00 01 B8 */ b lbl_80151630 +lbl_8015147C: +/* 8015147C 0014E3DC 80 1B 01 A4 */ lwz r0, 0x1a4(r27) +/* 80151480 0014E3E0 7C 60 FA 14 */ add r3, r0, r31 +/* 80151484 0014E3E4 88 03 00 08 */ lbz r0, 8(r3) +/* 80151488 0014E3E8 28 00 00 00 */ cmplwi r0, 0 +/* 8015148C 0014E3EC 40 82 01 9C */ bne lbl_80151628 +/* 80151490 0014E3F0 A0 03 00 00 */ lhz r0, 0(r3) +/* 80151494 0014E3F4 7F 83 E3 78 */ mr r3, r28 +/* 80151498 0014E3F8 38 81 00 08 */ addi r4, r1, 8 +/* 8015149C 0014E3FC B0 01 00 08 */ sth r0, 8(r1) +/* 801514A0 0014E400 4B EF B0 D5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801514A4 0014E404 7C 64 1B 78 */ mr r4, r3 +/* 801514A8 0014E408 38 61 00 28 */ addi r3, r1, 0x28 +/* 801514AC 0014E40C 4B F5 E7 E5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801514B0 0014E410 83 43 00 04 */ lwz r26, 4(r3) +/* 801514B4 0014E414 28 1A 00 00 */ cmplwi r26, 0 +/* 801514B8 0014E418 41 82 01 70 */ beq lbl_80151628 +/* 801514BC 0014E41C C0 7A 00 58 */ lfs f3, 0x58(r26) +/* 801514C0 0014E420 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 801514C4 0014E424 C0 5A 00 48 */ lfs f2, 0x48(r26) +/* 801514C8 0014E428 C0 3A 00 38 */ lfs f1, 0x38(r26) +/* 801514CC 0014E42C C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) +/* 801514D0 0014E430 D0 61 00 B8 */ stfs f3, 0xb8(r1) +/* 801514D4 0014E434 D0 21 00 B0 */ stfs f1, 0xb0(r1) +/* 801514D8 0014E438 D0 41 00 B4 */ stfs f2, 0xb4(r1) +/* 801514DC 0014E43C D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 801514E0 0014E440 48 1C 34 19 */ bl Normalize__9CVector3fFv +/* 801514E4 0014E444 C0 21 00 B4 */ lfs f1, 0xb4(r1) +/* 801514E8 0014E448 C0 1B 01 B0 */ lfs f0, 0x1b0(r27) +/* 801514EC 0014E44C C0 41 00 B0 */ lfs f2, 0xb0(r1) +/* 801514F0 0014E450 EC 01 00 32 */ fmuls f0, f1, f0 +/* 801514F4 0014E454 C0 3B 01 AC */ lfs f1, 0x1ac(r27) +/* 801514F8 0014E458 C0 81 00 B8 */ lfs f4, 0xb8(r1) +/* 801514FC 0014E45C C0 7B 01 B4 */ lfs f3, 0x1b4(r27) +/* 80151500 0014E460 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 80151504 0014E464 C8 02 9D D0 */ lfd f0, lbl_805ABAF0@sda21(r2) +/* 80151508 0014E468 EC 24 08 FA */ fmadds f1, f4, f3, f1 +/* 8015150C 0014E46C FC 40 0A 10 */ fabs f2, f1 +/* 80151510 0014E470 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80151514 0014E474 40 81 00 14 */ ble lbl_80151528 +/* 80151518 0014E478 C0 02 9D BC */ lfs f0, lbl_805ABADC@sda21(r2) +/* 8015151C 0014E47C C0 42 9D B4 */ lfs f2, lbl_805ABAD4@sda21(r2) +/* 80151520 0014E480 FC 01 00 AE */ fsel f0, f1, f2, f0 +/* 80151524 0014E484 EC 22 00 32 */ fmuls f1, f2, f0 +lbl_80151528: +/* 80151528 0014E488 80 7B 01 A4 */ lwz r3, 0x1a4(r27) +/* 8015152C 0014E48C 38 1F 00 04 */ addi r0, r31, 4 +/* 80151530 0014E490 7C 03 04 2E */ lfsx f0, r3, r0 +/* 80151534 0014E494 FF E0 02 10 */ fabs f31, f0 +/* 80151538 0014E498 48 1C 3E 59 */ bl ArcCosineR__5CMathFf +/* 8015153C 0014E49C FC 40 F8 18 */ frsp f2, f31 +/* 80151540 0014E4A0 C0 7B 00 FC */ lfs f3, 0xfc(r27) +/* 80151544 0014E4A4 C0 02 9D EC */ lfs f0, lbl_805ABB0C@sda21(r2) +/* 80151548 0014E4A8 C0 82 9D E8 */ lfs f4, lbl_805ABB08@sda21(r2) +/* 8015154C 0014E4AC EC 43 10 2A */ fadds f2, f3, f2 +/* 80151550 0014E4B0 C0 62 9D E4 */ lfs f3, lbl_805ABB04@sda21(r2) +/* 80151554 0014E4B4 EC 02 00 24 */ fdivs f0, f2, f0 +/* 80151558 0014E4B8 EC 04 00 32 */ fmuls f0, f4, f0 +/* 8015155C 0014E4BC EC 03 00 32 */ fmuls f0, f3, f0 +/* 80151560 0014E4C0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80151564 0014E4C4 4C 40 13 82 */ cror 2, 0, 2 +/* 80151568 0014E4C8 40 82 00 B8 */ bne lbl_80151620 +/* 8015156C 0014E4CC 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80151570 0014E4D0 3C A0 80 5A */ lis r5, lbl_805A66F4@ha +/* 80151574 0014E4D4 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 80151578 0014E4D8 38 C5 66 F4 */ addi r6, r5, lbl_805A66F4@l +/* 8015157C 0014E4DC 38 61 00 BC */ addi r3, r1, 0xbc +/* 80151580 0014E4E0 38 BB 01 AC */ addi r5, r27, 0x1ac +/* 80151584 0014E4E4 48 1C 25 8D */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 80151588 0014E4E8 38 61 00 EC */ addi r3, r1, 0xec +/* 8015158C 0014E4EC 38 81 00 BC */ addi r4, r1, 0xbc +/* 80151590 0014E4F0 48 1C 15 E5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80151594 0014E4F4 C0 5A 00 60 */ lfs f2, 0x60(r26) +/* 80151598 0014E4F8 38 7A 00 34 */ addi r3, r26, 0x34 +/* 8015159C 0014E4FC C0 3A 00 50 */ lfs f1, 0x50(r26) +/* 801515A0 0014E500 38 81 00 EC */ addi r4, r1, 0xec +/* 801515A4 0014E504 C0 1A 00 40 */ lfs f0, 0x40(r26) +/* 801515A8 0014E508 D0 01 00 F8 */ stfs f0, 0xf8(r1) +/* 801515AC 0014E50C D0 21 01 08 */ stfs f1, 0x108(r1) +/* 801515B0 0014E510 D0 41 01 18 */ stfs f2, 0x118(r1) +/* 801515B4 0014E514 48 1C 15 8D */ bl __as__12CTransform4fFRC12CTransform4f +/* 801515B8 0014E518 88 1A 00 E4 */ lbz r0, 0xe4(r26) +/* 801515BC 0014E51C 38 60 00 01 */ li r3, 1 +/* 801515C0 0014E520 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 801515C4 0014E524 98 1A 00 E4 */ stb r0, 0xe4(r26) +/* 801515C8 0014E528 88 1A 00 E4 */ lbz r0, 0xe4(r26) +/* 801515CC 0014E52C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 801515D0 0014E530 98 1A 00 E4 */ stb r0, 0xe4(r26) +/* 801515D4 0014E534 88 1A 00 E4 */ lbz r0, 0xe4(r26) +/* 801515D8 0014E538 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 801515DC 0014E53C 98 1A 00 E4 */ stb r0, 0xe4(r26) +/* 801515E0 0014E540 88 1B 01 B8 */ lbz r0, 0x1b8(r27) +/* 801515E4 0014E544 C0 3B 00 FC */ lfs f1, 0xfc(r27) +/* 801515E8 0014E548 28 00 00 00 */ cmplwi r0, 0 +/* 801515EC 0014E54C 41 82 00 0C */ beq lbl_801515F8 +/* 801515F0 0014E550 C0 02 9D B4 */ lfs f0, lbl_805ABAD4@sda21(r2) +/* 801515F4 0014E554 48 00 00 08 */ b lbl_801515FC +lbl_801515F8: +/* 801515F8 0014E558 C0 02 9D BC */ lfs f0, lbl_805ABADC@sda21(r2) +lbl_801515FC: +/* 801515FC 0014E55C EC 01 00 32 */ fmuls f0, f1, f0 +/* 80151600 0014E560 80 BB 01 A4 */ lwz r5, 0x1a4(r27) +/* 80151604 0014E564 38 7F 00 04 */ addi r3, r31, 4 +/* 80151608 0014E568 38 1F 00 08 */ addi r0, r31, 8 +/* 8015160C 0014E56C 38 80 00 01 */ li r4, 1 +/* 80151610 0014E570 7C 05 1D 2E */ stfsx f0, r5, r3 +/* 80151614 0014E574 80 7B 01 A4 */ lwz r3, 0x1a4(r27) +/* 80151618 0014E578 7C 83 01 AE */ stbx r4, r3, r0 +/* 8015161C 0014E57C 48 00 00 0C */ b lbl_80151628 +lbl_80151620: +/* 80151620 0014E580 3B C0 00 00 */ li r30, 0 +/* 80151624 0014E584 48 00 00 18 */ b lbl_8015163C +lbl_80151628: +/* 80151628 0014E588 3B FF 00 18 */ addi r31, r31, 0x18 +/* 8015162C 0014E58C 3B BD 00 01 */ addi r29, r29, 1 +lbl_80151630: +/* 80151630 0014E590 80 1B 01 9C */ lwz r0, 0x19c(r27) +/* 80151634 0014E594 7C 1D 00 00 */ cmpw r29, r0 +/* 80151638 0014E598 41 80 FE 44 */ blt lbl_8015147C +lbl_8015163C: +/* 8015163C 0014E59C 57 C0 06 3F */ clrlwi. r0, r30, 0x18 +/* 80151640 0014E5A0 41 82 00 50 */ beq lbl_80151690 +/* 80151644 0014E5A4 7F 63 DB 78 */ mr r3, r27 +/* 80151648 0014E5A8 7F 85 E3 78 */ mr r5, r28 +/* 8015164C 0014E5AC 38 80 00 07 */ li r4, 7 +/* 80151650 0014E5B0 38 C0 FF FF */ li r6, -1 +/* 80151654 0014E5B4 4B EF FA 6D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 80151658 0014E5B8 38 00 00 02 */ li r0, 2 +/* 8015165C 0014E5BC 38 A0 00 00 */ li r5, 0 +/* 80151660 0014E5C0 90 1B 01 A8 */ stw r0, 0x1a8(r27) +/* 80151664 0014E5C4 7C A4 2B 78 */ mr r4, r5 +/* 80151668 0014E5C8 38 C0 00 00 */ li r6, 0 +/* 8015166C 0014E5CC 48 00 00 18 */ b lbl_80151684 +lbl_80151670: +/* 80151670 0014E5D0 80 7B 01 A4 */ lwz r3, 0x1a4(r27) +/* 80151674 0014E5D4 38 05 00 08 */ addi r0, r5, 8 +/* 80151678 0014E5D8 38 A5 00 18 */ addi r5, r5, 0x18 +/* 8015167C 0014E5DC 38 C6 00 01 */ addi r6, r6, 1 +/* 80151680 0014E5E0 7C 83 01 AE */ stbx r4, r3, r0 +lbl_80151684: +/* 80151684 0014E5E4 80 1B 01 9C */ lwz r0, 0x19c(r27) +/* 80151688 0014E5E8 7C 06 00 00 */ cmpw r6, r0 +/* 8015168C 0014E5EC 41 80 FF E4 */ blt lbl_80151670 +lbl_80151690: +/* 80151690 0014E5F0 E3 E1 01 78 */ psq_l f31, 376(r1), 0, qr0 +/* 80151694 0014E5F4 CB E1 01 70 */ lfd f31, 0x170(r1) +/* 80151698 0014E5F8 BB 41 01 58 */ lmw r26, 0x158(r1) +/* 8015169C 0014E5FC 80 01 01 84 */ lwz r0, 0x184(r1) +/* 801516A0 0014E600 7C 08 03 A6 */ mtlr r0 +/* 801516A4 0014E604 38 21 01 80 */ addi r1, r1, 0x180 +/* 801516A8 0014E608 4E 80 00 20 */ blr + +.global ThinkSaveStation__22CScriptSpecialFunctionFfR13CStateManager +ThinkSaveStation__22CScriptSpecialFunctionFfR13CStateManager: +/* 801516AC 0014E60C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801516B0 0014E610 7C 08 02 A6 */ mflr r0 +/* 801516B4 0014E614 90 01 00 14 */ stw r0, 0x14(r1) +/* 801516B8 0014E618 88 A3 01 E5 */ lbz r5, 0x1e5(r3) +/* 801516BC 0014E61C 54 A0 CF FF */ rlwinm. r0, r5, 0x19, 0x1f, 0x1f +/* 801516C0 0014E620 41 82 00 4C */ beq lbl_8015170C +/* 801516C4 0014E624 80 04 0F 90 */ lwz r0, 0xf90(r4) +/* 801516C8 0014E628 2C 00 00 04 */ cmpwi r0, 4 +/* 801516CC 0014E62C 41 82 00 40 */ beq lbl_8015170C +/* 801516D0 0014E630 38 00 00 00 */ li r0, 0 +/* 801516D4 0014E634 50 05 3E 30 */ rlwimi r5, r0, 7, 0x18, 0x18 +/* 801516D8 0014E638 98 A3 01 E5 */ stb r5, 0x1e5(r3) +/* 801516DC 0014E63C 88 04 0F 94 */ lbz r0, 0xf94(r4) +/* 801516E0 0014E640 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 801516E4 0014E644 41 82 00 18 */ beq lbl_801516FC +/* 801516E8 0014E648 7C 85 23 78 */ mr r5, r4 +/* 801516EC 0014E64C 38 80 00 07 */ li r4, 7 +/* 801516F0 0014E650 38 C0 FF FF */ li r6, -1 +/* 801516F4 0014E654 4B EF F9 CD */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 801516F8 0014E658 48 00 00 14 */ b lbl_8015170C +lbl_801516FC: +/* 801516FC 0014E65C 7C 85 23 78 */ mr r5, r4 +/* 80151700 0014E660 38 80 00 09 */ li r4, 9 +/* 80151704 0014E664 38 C0 FF FF */ li r6, -1 +/* 80151708 0014E668 4B EF F9 B9 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_8015170C: +/* 8015170C 0014E66C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80151710 0014E670 7C 08 03 A6 */ mtlr r0 +/* 80151714 0014E674 38 21 00 10 */ addi r1, r1, 0x10 +/* 80151718 0014E678 4E 80 00 20 */ blr + +.global RingScramble__22CScriptSpecialFunctionFR13CStateManager +RingScramble__22CScriptSpecialFunctionFR13CStateManager: +/* 8015171C 0014E67C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80151720 0014E680 7C 08 02 A6 */ mflr r0 +/* 80151724 0014E684 90 01 00 34 */ stw r0, 0x34(r1) +/* 80151728 0014E688 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 8015172C 0014E68C F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 80151730 0014E690 BF 41 00 08 */ stmw r26, 8(r1) +/* 80151734 0014E694 7C 9B 23 78 */ mr r27, r4 +/* 80151738 0014E698 7C 7A 1B 78 */ mr r26, r3 +/* 8015173C 0014E69C 7F 65 DB 78 */ mr r5, r27 +/* 80151740 0014E6A0 38 80 00 09 */ li r4, 9 +/* 80151744 0014E6A4 38 C0 FF FF */ li r6, -1 +/* 80151748 0014E6A8 4B EF F9 79 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 8015174C 0014E6AC 38 00 00 00 */ li r0, 0 +/* 80151750 0014E6B0 90 1A 01 A8 */ stw r0, 0x1a8(r26) +/* 80151754 0014E6B4 88 1A 01 B8 */ lbz r0, 0x1b8(r26) +/* 80151758 0014E6B8 7C 00 00 34 */ cntlzw r0, r0 +/* 8015175C 0014E6BC 54 00 D9 7E */ srwi r0, r0, 5 +/* 80151760 0014E6C0 98 1A 01 B8 */ stb r0, 0x1b8(r26) +/* 80151764 0014E6C4 88 1A 01 B8 */ lbz r0, 0x1b8(r26) +/* 80151768 0014E6C8 28 00 00 00 */ cmplwi r0, 0 +/* 8015176C 0014E6CC 41 82 00 0C */ beq lbl_80151778 +/* 80151770 0014E6D0 C3 E2 9D B4 */ lfs f31, lbl_805ABAD4@sda21(r2) +/* 80151774 0014E6D4 48 00 00 08 */ b lbl_8015177C +lbl_80151778: +/* 80151778 0014E6D8 C3 E2 9D BC */ lfs f31, lbl_805ABADC@sda21(r2) +lbl_8015177C: +/* 8015177C 0014E6DC 3B A0 00 00 */ li r29, 0 +/* 80151780 0014E6E0 3B 80 00 00 */ li r28, 0 +/* 80151784 0014E6E4 7F BF EB 78 */ mr r31, r29 +/* 80151788 0014E6E8 48 00 00 3C */ b lbl_801517C4 +lbl_8015178C: +/* 8015178C 0014E6EC 80 1A 01 A4 */ lwz r0, 0x1a4(r26) +/* 80151790 0014E6F0 80 7B 09 00 */ lwz r3, 0x900(r27) +/* 80151794 0014E6F4 C0 3A 01 00 */ lfs f1, 0x100(r26) +/* 80151798 0014E6F8 7F C0 EA 14 */ add r30, r0, r29 +/* 8015179C 0014E6FC C0 5A 01 04 */ lfs f2, 0x104(r26) +/* 801517A0 0014E700 48 1C 0D A5 */ bl Range__9CRandom16Fff +/* 801517A4 0014E704 EC 1F 00 72 */ fmuls f0, f31, f1 +/* 801517A8 0014E708 38 1D 00 08 */ addi r0, r29, 8 +/* 801517AC 0014E70C FF E0 F8 50 */ fneg f31, f31 +/* 801517B0 0014E710 3B 9C 00 01 */ addi r28, r28, 1 +/* 801517B4 0014E714 3B BD 00 18 */ addi r29, r29, 0x18 +/* 801517B8 0014E718 D0 1E 00 04 */ stfs f0, 4(r30) +/* 801517BC 0014E71C 80 7A 01 A4 */ lwz r3, 0x1a4(r26) +/* 801517C0 0014E720 7F E3 01 AE */ stbx r31, r3, r0 +lbl_801517C4: +/* 801517C4 0014E724 80 1A 01 9C */ lwz r0, 0x19c(r26) +/* 801517C8 0014E728 7C 1C 00 00 */ cmpw r28, r0 +/* 801517CC 0014E72C 41 80 FF C0 */ blt lbl_8015178C +/* 801517D0 0014E730 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 801517D4 0014E734 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 801517D8 0014E738 BB 41 00 08 */ lmw r26, 8(r1) +/* 801517DC 0014E73C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801517E0 0014E740 7C 08 03 A6 */ mtlr r0 +/* 801517E4 0014E744 38 21 00 30 */ addi r1, r1, 0x30 +/* 801517E8 0014E748 4E 80 00 20 */ blr + +.global Accept__22CScriptSpecialFunctionFR8IVisitor +Accept__22CScriptSpecialFunctionFR8IVisitor: +/* 801517EC 0014E74C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801517F0 0014E750 7C 08 02 A6 */ mflr r0 +/* 801517F4 0014E754 90 01 00 14 */ stw r0, 0x14(r1) +/* 801517F8 0014E758 7C 60 1B 78 */ mr r0, r3 +/* 801517FC 0014E75C 7C 83 23 78 */ mr r3, r4 +/* 80151800 0014E760 81 84 00 00 */ lwz r12, 0(r4) +/* 80151804 0014E764 7C 04 03 78 */ mr r4, r0 +/* 80151808 0014E768 81 8C 00 B4 */ lwz r12, 0xb4(r12) +/* 8015180C 0014E76C 7D 89 03 A6 */ mtctr r12 +/* 80151810 0014E770 4E 80 04 21 */ bctrl +/* 80151814 0014E774 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80151818 0014E778 7C 08 03 A6 */ mtlr r0 +/* 8015181C 0014E77C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80151820 0014E780 4E 80 00 20 */ blr + +.global SkipCinematic__22CScriptSpecialFunctionFR13CStateManager +SkipCinematic__22CScriptSpecialFunctionFR13CStateManager: +/* 80151824 0014E784 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80151828 0014E788 7C 08 02 A6 */ mflr r0 +/* 8015182C 0014E78C 38 C0 FF FF */ li r6, -1 +/* 80151830 0014E790 90 01 00 24 */ stw r0, 0x24(r1) +/* 80151834 0014E794 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80151838 0014E798 7C 9F 23 78 */ mr r31, r4 +/* 8015183C 0014E79C 38 80 00 09 */ li r4, 9 +/* 80151840 0014E7A0 7F E5 FB 78 */ mr r5, r31 +/* 80151844 0014E7A4 4B EF F8 7D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 80151848 0014E7A8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8015184C 0014E7AC B0 01 00 08 */ sth r0, 8(r1) +/* 80151850 0014E7B0 B0 1F 0F 38 */ sth r0, 0xf38(r31) +/* 80151854 0014E7B4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80151858 0014E7B8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8015185C 0014E7BC 7C 08 03 A6 */ mtlr r0 +/* 80151860 0014E7C0 38 21 00 20 */ addi r1, r1, 0x20 +/* 80151864 0014E7C4 4E 80 00 20 */ blr + +.global ShouldSkipCinematic__22CScriptSpecialFunctionFR13CStateManager +ShouldSkipCinematic__22CScriptSpecialFunctionFR13CStateManager: +/* 80151868 0014E7C8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8015186C 0014E7CC 7C 08 02 A6 */ mflr r0 +/* 80151870 0014E7D0 90 01 00 24 */ stw r0, 0x24(r1) +/* 80151874 0014E7D4 80 A4 08 50 */ lwz r5, 0x850(r4) +/* 80151878 0014E7D8 38 81 00 10 */ addi r4, r1, 0x10 +/* 8015187C 0014E7DC 80 03 00 0C */ lwz r0, 0xc(r3) +/* 80151880 0014E7E0 80 A5 00 08 */ lwz r5, 8(r5) +/* 80151884 0014E7E4 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 80151888 0014E7E8 90 A1 00 08 */ stw r5, 8(r1) +/* 8015188C 0014E7EC 38 63 00 A8 */ addi r3, r3, 0xa8 +/* 80151890 0014E7F0 90 01 00 0C */ stw r0, 0xc(r1) +/* 80151894 0014E7F4 90 A1 00 10 */ stw r5, 0x10(r1) +/* 80151898 0014E7F8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8015189C 0014E7FC 48 08 3C 8D */ bl "GetCinematicState__14CSystemOptionsFRCQ24rstl19pair" +/* 801518A0 0014E800 80 01 00 24 */ lwz r0, 0x24(r1) +/* 801518A4 0014E804 7C 08 03 A6 */ mtlr r0 +/* 801518A8 0014E808 38 21 00 20 */ addi r1, r1, 0x20 +/* 801518AC 0014E80C 4E 80 00 20 */ blr + +.global AcceptScriptMsg__22CScriptSpecialFunctionF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__22CScriptSpecialFunctionF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 801518B0 0014E810 94 21 FE 40 */ stwu r1, -0x1c0(r1) +/* 801518B4 0014E814 7C 08 02 A6 */ mflr r0 +/* 801518B8 0014E818 90 01 01 C4 */ stw r0, 0x1c4(r1) +/* 801518BC 0014E81C DB E1 01 B0 */ stfd f31, 0x1b0(r1) +/* 801518C0 0014E820 F3 E1 01 B8 */ psq_st f31, 440(r1), 0, qr0 +/* 801518C4 0014E824 DB C1 01 A0 */ stfd f30, 0x1a0(r1) +/* 801518C8 0014E828 F3 C1 01 A8 */ psq_st f30, 424(r1), 0, qr0 +/* 801518CC 0014E82C DB A1 01 90 */ stfd f29, 0x190(r1) +/* 801518D0 0014E830 F3 A1 01 98 */ psq_st f29, 408(r1), 0, qr0 +/* 801518D4 0014E834 BF 41 01 78 */ stmw r26, 0x178(r1) +/* 801518D8 0014E838 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801518DC 0014E83C 7C 7F 1B 78 */ mr r31, r3 +/* 801518E0 0014E840 7C 9C 23 78 */ mr r28, r4 +/* 801518E4 0014E844 7C BB 2B 78 */ mr r27, r5 +/* 801518E8 0014E848 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801518EC 0014E84C 7C DE 33 78 */ mr r30, r6 +/* 801518F0 0014E850 41 82 00 E4 */ beq lbl_801519D4 +/* 801518F4 0014E854 2C 1C 00 04 */ cmpwi r28, 4 +/* 801518F8 0014E858 40 82 00 DC */ bne lbl_801519D4 +/* 801518FC 0014E85C 80 1F 00 E8 */ lwz r0, 0xe8(r31) +/* 80151900 0014E860 2C 00 00 18 */ cmpwi r0, 0x18 +/* 80151904 0014E864 40 82 00 D0 */ bne lbl_801519D4 +/* 80151908 0014E868 38 61 00 C4 */ addi r3, r1, 0xc4 +/* 8015190C 0014E86C 38 80 00 00 */ li r4, 0 +/* 80151910 0014E870 38 A0 00 00 */ li r5, 0 +/* 80151914 0014E874 48 1C 2A 39 */ bl __ct__9CVector2iFii +/* 80151918 0014E878 7C 7D 1B 78 */ mr r29, r3 +/* 8015191C 0014E87C 38 61 00 CC */ addi r3, r1, 0xcc +/* 80151920 0014E880 38 80 00 00 */ li r4, 0 +/* 80151924 0014E884 38 A0 00 00 */ li r5, 0 +/* 80151928 0014E888 48 1C 2A 25 */ bl __ct__9CVector2iFii +/* 8015192C 0014E88C 7C 65 1B 78 */ mr r5, r3 +/* 80151930 0014E890 7F C3 F3 78 */ mr r3, r30 +/* 80151934 0014E894 7F A6 EB 78 */ mr r6, r29 +/* 80151938 0014E898 38 80 FF FF */ li r4, -1 +/* 8015193C 0014E89C 4B EF 26 CD */ bl sub_80044008 +/* 80151940 0014E8A0 38 7F 01 E8 */ addi r3, r31, 0x1e8 +/* 80151944 0014E8A4 38 81 00 FC */ addi r4, r1, 0xfc +/* 80151948 0014E8A8 38 00 00 00 */ li r0, 0 +/* 8015194C 0014E8AC 7C 03 20 40 */ cmplw r3, r4 +/* 80151950 0014E8B0 98 01 01 04 */ stb r0, 0x104(r1) +/* 80151954 0014E8B4 41 82 00 54 */ beq lbl_801519A8 +/* 80151958 0014E8B8 28 00 00 00 */ cmplwi r0, 0 +/* 8015195C 0014E8BC 41 82 00 30 */ beq lbl_8015198C +/* 80151960 0014E8C0 88 1F 01 F0 */ lbz r0, 0x1f0(r31) +/* 80151964 0014E8C4 28 00 00 00 */ cmplwi r0, 0 +/* 80151968 0014E8C8 40 82 00 1C */ bne lbl_80151984 +/* 8015196C 0014E8CC 34 7F 01 E8 */ addic. r3, r31, 0x1e8 +/* 80151970 0014E8D0 41 82 00 08 */ beq lbl_80151978 +/* 80151974 0014E8D4 48 1E F5 35 */ bl __ct__6CTokenFRC6CToken +lbl_80151978: +/* 80151978 0014E8D8 38 00 00 01 */ li r0, 1 +/* 8015197C 0014E8DC 98 1F 01 F0 */ stb r0, 0x1f0(r31) +/* 80151980 0014E8E0 48 00 00 28 */ b lbl_801519A8 +lbl_80151984: +/* 80151984 0014E8E4 48 1E F3 41 */ bl __as__6CTokenFRC6CToken +/* 80151988 0014E8E8 48 00 00 20 */ b lbl_801519A8 +lbl_8015198C: +/* 8015198C 0014E8EC 88 1F 01 F0 */ lbz r0, 0x1f0(r31) +/* 80151990 0014E8F0 28 00 00 00 */ cmplwi r0, 0 +/* 80151994 0014E8F4 41 82 00 0C */ beq lbl_801519A0 +/* 80151998 0014E8F8 38 80 FF FF */ li r4, -1 +/* 8015199C 0014E8FC 48 1E F4 A5 */ bl __dt__6CTokenFv +lbl_801519A0: +/* 801519A0 0014E900 38 00 00 00 */ li r0, 0 +/* 801519A4 0014E904 98 1F 01 F0 */ stb r0, 0x1f0(r31) +lbl_801519A8: +/* 801519A8 0014E908 88 01 01 04 */ lbz r0, 0x104(r1) +/* 801519AC 0014E90C 28 00 00 00 */ cmplwi r0, 0 +/* 801519B0 0014E910 41 82 00 10 */ beq lbl_801519C0 +/* 801519B4 0014E914 38 61 00 FC */ addi r3, r1, 0xfc +/* 801519B8 0014E918 38 80 FF FF */ li r4, -1 +/* 801519BC 0014E91C 48 1E F4 85 */ bl __dt__6CTokenFv +lbl_801519C0: +/* 801519C0 0014E920 38 60 00 00 */ li r3, 0 +/* 801519C4 0014E924 98 61 01 04 */ stb r3, 0x104(r1) +/* 801519C8 0014E928 88 1F 01 E5 */ lbz r0, 0x1e5(r31) +/* 801519CC 0014E92C 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 801519D0 0014E930 98 1F 01 E5 */ stb r0, 0x1e5(r31) +lbl_801519D4: +/* 801519D4 0014E934 A0 1B 00 00 */ lhz r0, 0(r27) +/* 801519D8 0014E938 7F E3 FB 78 */ mr r3, r31 +/* 801519DC 0014E93C 7F 84 E3 78 */ mr r4, r28 +/* 801519E0 0014E940 7F C6 F3 78 */ mr r6, r30 +/* 801519E4 0014E944 B0 01 00 34 */ sth r0, 0x34(r1) +/* 801519E8 0014E948 38 A1 00 34 */ addi r5, r1, 0x34 +/* 801519EC 0014E94C 4B F0 1C 29 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 801519F0 0014E950 80 1F 00 E8 */ lwz r0, 0xe8(r31) +/* 801519F4 0014E954 2C 00 00 04 */ cmpwi r0, 4 +/* 801519F8 0014E958 40 82 00 1C */ bne lbl_80151A14 +/* 801519FC 0014E95C 2C 1C 00 23 */ cmpwi r28, 0x23 +/* 80151A00 0014E960 40 82 00 14 */ bne lbl_80151A14 +/* 80151A04 0014E964 7F E3 FB 78 */ mr r3, r31 +/* 80151A08 0014E968 7F C5 F3 78 */ mr r5, r30 +/* 80151A0C 0014E96C 38 80 00 28 */ li r4, 0x28 +/* 80151A10 0014E970 4B F0 29 41 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_80151A14: +/* 80151A14 0014E974 88 1F 00 30 */ lbz r0, 0x30(r31) +/* 80151A18 0014E978 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80151A1C 0014E97C 41 82 0E 84 */ beq lbl_801528A0 +/* 80151A20 0014E980 80 1F 00 E8 */ lwz r0, 0xe8(r31) +/* 80151A24 0014E984 28 00 00 32 */ cmplwi r0, 0x32 +/* 80151A28 0014E988 41 81 0E 78 */ bgt lbl_801528A0 +/* 80151A2C 0014E98C 3C 60 80 3E */ lis r3, lbl_803E2BD4@ha +/* 80151A30 0014E990 54 00 10 3A */ slwi r0, r0, 2 +/* 80151A34 0014E994 38 63 2B D4 */ addi r3, r3, lbl_803E2BD4@l +/* 80151A38 0014E998 7C 03 00 2E */ lwzx r0, r3, r0 +/* 80151A3C 0014E99C 7C 09 03 A6 */ mtctr r0 +/* 80151A40 0014E9A0 4E 80 04 20 */ bctr +/* 80151A44 0014E9A4 2C 1C 00 13 */ cmpwi r28, 0x13 +/* 80151A48 0014E9A8 40 82 0E 58 */ bne lbl_801528A0 +/* 80151A4C 0014E9AC 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 80151A50 0014E9B0 C0 3F 00 FC */ lfs f1, 0xfc(r31) +/* 80151A54 0014E9B4 C0 42 9D 9C */ lfs f2, lbl_805ABABC@sda21(r2) +/* 80151A58 0014E9B8 C0 62 9D A4 */ lfs f3, lbl_805ABAC4@sda21(r2) +/* 80151A5C 0014E9BC 4B EC 16 11 */ bl SetHudDisable__7CPlayerFfff +/* 80151A60 0014E9C0 48 00 0E 40 */ b lbl_801528A0 +/* 80151A64 0014E9C4 2C 1C 00 13 */ cmpwi r28, 0x13 +/* 80151A68 0014E9C8 40 82 0E 38 */ bne lbl_801528A0 +/* 80151A6C 0014E9CC C0 3F 00 FC */ lfs f1, 0xfc(r31) +/* 80151A70 0014E9D0 C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) +/* 80151A74 0014E9D4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80151A78 0014E9D8 4C 41 13 82 */ cror 2, 1, 2 +/* 80151A7C 0014E9DC 40 82 0E 24 */ bne lbl_801528A0 +/* 80151A80 0014E9E0 7F C3 F3 78 */ mr r3, r30 +/* 80151A84 0014E9E4 4B EF 35 F9 */ bl ResetEscapeSequenceTimer__13CStateManagerFf +/* 80151A88 0014E9E8 48 00 0E 18 */ b lbl_801528A0 +/* 80151A8C 0014E9EC 2C 1C 00 0F */ cmpwi r28, 0xf +/* 80151A90 0014E9F0 41 82 00 48 */ beq lbl_80151AD8 +/* 80151A94 0014E9F4 40 80 00 10 */ bge lbl_80151AA4 +/* 80151A98 0014E9F8 2C 1C 00 04 */ cmpwi r28, 4 +/* 80151A9C 0014E9FC 41 82 00 50 */ beq lbl_80151AEC +/* 80151AA0 0014EA00 48 00 0E 00 */ b lbl_801528A0 +lbl_80151AA4: +/* 80151AA4 0014EA04 2C 1C 00 14 */ cmpwi r28, 0x14 +/* 80151AA8 0014EA08 41 82 00 08 */ beq lbl_80151AB0 +/* 80151AAC 0014EA0C 48 00 0D F4 */ b lbl_801528A0 +lbl_80151AB0: +/* 80151AB0 0014EA10 88 1F 01 E4 */ lbz r0, 0x1e4(r31) +/* 80151AB4 0014EA14 38 60 00 01 */ li r3, 1 +/* 80151AB8 0014EA18 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80151ABC 0014EA1C 98 1F 01 E4 */ stb r0, 0x1e4(r31) +/* 80151AC0 0014EA20 83 7E 08 4C */ lwz r27, 0x84c(r30) +/* 80151AC4 0014EA24 4B EC 9A 71 */ bl Identity__10CAxisAngleFv +/* 80151AC8 0014EA28 7C 64 1B 78 */ mr r4, r3 +/* 80151ACC 0014EA2C 7F 63 DB 78 */ mr r3, r27 +/* 80151AD0 0014EA30 4B FC 91 2D */ bl SetAngularVelocityWR__13CPhysicsActorFRC10CAxisAngle +/* 80151AD4 0014EA34 48 00 0D CC */ b lbl_801528A0 +lbl_80151AD8: +/* 80151AD8 0014EA38 88 1F 01 E4 */ lbz r0, 0x1e4(r31) +/* 80151ADC 0014EA3C 38 60 00 00 */ li r3, 0 +/* 80151AE0 0014EA40 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80151AE4 0014EA44 98 1F 01 E4 */ stb r0, 0x1e4(r31) +/* 80151AE8 0014EA48 48 00 0D B8 */ b lbl_801528A0 +lbl_80151AEC: +/* 80151AEC 0014EA4C 7F E3 FB 78 */ mr r3, r31 +/* 80151AF0 0014EA50 38 9F 01 78 */ addi r4, r31, 0x178 +/* 80151AF4 0014EA54 4B FF D8 B1 */ bl sub_8014f3a4 +/* 80151AF8 0014EA58 48 00 0D A8 */ b lbl_801528A0 +/* 80151AFC 0014EA5C 2C 1C 00 07 */ cmpwi r28, 7 +/* 80151B00 0014EA60 40 82 00 64 */ bne lbl_80151B64 +/* 80151B04 0014EA64 C0 42 9D B4 */ lfs f2, lbl_805ABAD4@sda21(r2) +/* 80151B08 0014EA68 C0 3F 01 6C */ lfs f1, 0x16c(r31) +/* 80151B0C 0014EA6C C0 0D 8C 54 */ lfs f0, lbl_805A7814@sda21(r13) +/* 80151B10 0014EA70 EC 22 08 2A */ fadds f1, f2, f1 +/* 80151B14 0014EA74 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80151B18 0014EA78 D0 21 00 64 */ stfs f1, 0x64(r1) +/* 80151B1C 0014EA7C 40 80 00 0C */ bge lbl_80151B28 +/* 80151B20 0014EA80 38 6D 8C 54 */ addi r3, r13, lbl_805A7814@sda21 +/* 80151B24 0014EA84 48 00 00 08 */ b lbl_80151B2C +lbl_80151B28: +/* 80151B28 0014EA88 38 61 00 64 */ addi r3, r1, 0x64 +lbl_80151B2C: +/* 80151B2C 0014EA8C C0 2D 8C 58 */ lfs f1, lbl_805A7818@sda21(r13) +/* 80151B30 0014EA90 C0 03 00 00 */ lfs f0, 0(r3) +/* 80151B34 0014EA94 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80151B38 0014EA98 40 80 00 08 */ bge lbl_80151B40 +/* 80151B3C 0014EA9C 48 00 00 08 */ b lbl_80151B44 +lbl_80151B40: +/* 80151B40 0014EAA0 38 6D 8C 58 */ addi r3, r13, lbl_805A7818@sda21 +lbl_80151B44: +/* 80151B44 0014EAA4 C0 03 00 00 */ lfs f0, 0(r3) +/* 80151B48 0014EAA8 7F E3 FB 78 */ mr r3, r31 +/* 80151B4C 0014EAAC 7F C5 F3 78 */ mr r5, r30 +/* 80151B50 0014EAB0 38 80 00 12 */ li r4, 0x12 +/* 80151B54 0014EAB4 D0 1F 01 6C */ stfs f0, 0x16c(r31) +/* 80151B58 0014EAB8 38 C0 FF FF */ li r6, -1 +/* 80151B5C 0014EABC 4B EF F5 65 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 80151B60 0014EAC0 48 00 0D 40 */ b lbl_801528A0 +lbl_80151B64: +/* 80151B64 0014EAC4 2C 1C 00 0C */ cmpwi r28, 0xc +/* 80151B68 0014EAC8 40 82 00 24 */ bne lbl_80151B8C +/* 80151B6C 0014EACC C0 1F 01 04 */ lfs f0, 0x104(r31) +/* 80151B70 0014EAD0 7F E3 FB 78 */ mr r3, r31 +/* 80151B74 0014EAD4 7F C5 F3 78 */ mr r5, r30 +/* 80151B78 0014EAD8 38 80 00 12 */ li r4, 0x12 +/* 80151B7C 0014EADC D0 1F 01 6C */ stfs f0, 0x16c(r31) +/* 80151B80 0014EAE0 38 C0 FF FF */ li r6, -1 +/* 80151B84 0014EAE4 4B EF F5 3D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 80151B88 0014EAE8 48 00 0D 18 */ b lbl_801528A0 +lbl_80151B8C: +/* 80151B8C 0014EAEC 2C 1C 00 0D */ cmpwi r28, 0xd +/* 80151B90 0014EAF0 40 82 0D 10 */ bne lbl_801528A0 +/* 80151B94 0014EAF4 C0 22 9D F0 */ lfs f1, lbl_805ABB10@sda21(r2) +/* 80151B98 0014EAF8 C0 1F 01 04 */ lfs f0, 0x104(r31) +/* 80151B9C 0014EAFC EC 01 00 32 */ fmuls f0, f1, f0 +/* 80151BA0 0014EB00 D0 1F 01 6C */ stfs f0, 0x16c(r31) +/* 80151BA4 0014EB04 48 00 0C FC */ b lbl_801528A0 +/* 80151BA8 0014EB08 2C 1C 00 13 */ cmpwi r28, 0x13 +/* 80151BAC 0014EB0C 40 82 0C F4 */ bne lbl_801528A0 +/* 80151BB0 0014EB10 80 7E 08 C0 */ lwz r3, 0x8c0(r30) +/* 80151BB4 0014EB14 38 00 00 01 */ li r0, 1 +/* 80151BB8 0014EB18 80 63 00 00 */ lwz r3, 0(r3) +/* 80151BBC 0014EB1C 98 03 00 38 */ stb r0, 0x38(r3) +/* 80151BC0 0014EB20 80 7E 08 50 */ lwz r3, 0x850(r30) +/* 80151BC4 0014EB24 4B F0 5A D9 */ bl GetMapWorld__6CWorldCFv +/* 80151BC8 0014EB28 80 9E 08 C0 */ lwz r4, 0x8c0(r30) +/* 80151BCC 0014EB2C 80 BE 08 50 */ lwz r5, 0x850(r30) +/* 80151BD0 0014EB30 80 84 00 00 */ lwz r4, 0(r4) +/* 80151BD4 0014EB34 4B F4 DC 89 */ bl RecalculateWorldSphere__9CMapWorldCFRC13CMapWorldInfoRC6IWorld +/* 80151BD8 0014EB38 7F C3 F3 78 */ mr r3, r30 +/* 80151BDC 0014EB3C 38 80 00 01 */ li r4, 1 +/* 80151BE0 0014EB40 4B EF 2C 81 */ bl DeferStateTransition__13CStateManagerF23EStateManagerTransition +/* 80151BE4 0014EB44 48 00 0C BC */ b lbl_801528A0 +/* 80151BE8 0014EB48 2C 1C 00 13 */ cmpwi r28, 0x13 +/* 80151BEC 0014EB4C 40 82 0C B4 */ bne lbl_801528A0 +/* 80151BF0 0014EB50 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 80151BF4 0014EB54 38 80 00 04 */ li r4, 4 +/* 80151BF8 0014EB58 83 63 00 00 */ lwz r27, 0(r3) +/* 80151BFC 0014EB5C 7F 63 DB 78 */ mr r3, r27 +/* 80151C00 0014EB60 4B F3 FE F5 */ bl GetItemCapacity__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80151C04 0014EB64 7C 65 1B 78 */ mr r5, r3 +/* 80151C08 0014EB68 7F 63 DB 78 */ mr r3, r27 +/* 80151C0C 0014EB6C 38 80 00 04 */ li r4, 4 +/* 80151C10 0014EB70 4B F4 00 F1 */ bl ResetAndIncrPickUp__12CPlayerStateFQ212CPlayerState9EItemTypei +/* 80151C14 0014EB74 48 00 0C 8C */ b lbl_801528A0 +/* 80151C18 0014EB78 2C 1C 00 13 */ cmpwi r28, 0x13 +/* 80151C1C 0014EB7C 40 82 0C 84 */ bne lbl_801528A0 +/* 80151C20 0014EB80 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 80151C24 0014EB84 38 80 00 07 */ li r4, 7 +/* 80151C28 0014EB88 83 63 00 00 */ lwz r27, 0(r3) +/* 80151C2C 0014EB8C 7F 63 DB 78 */ mr r3, r27 +/* 80151C30 0014EB90 4B F3 FE C5 */ bl GetItemCapacity__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80151C34 0014EB94 7C 65 1B 78 */ mr r5, r3 +/* 80151C38 0014EB98 7F 63 DB 78 */ mr r3, r27 +/* 80151C3C 0014EB9C 38 80 00 07 */ li r4, 7 +/* 80151C40 0014EBA0 4B F4 00 C1 */ bl ResetAndIncrPickUp__12CPlayerStateFQ212CPlayerState9EItemTypei +/* 80151C44 0014EBA4 48 00 0C 5C */ b lbl_801528A0 +/* 80151C48 0014EBA8 2C 1C 00 13 */ cmpwi r28, 0x13 +/* 80151C4C 0014EBAC 40 82 0C 54 */ bne lbl_801528A0 +/* 80151C50 0014EBB0 80 ED A0 80 */ lwz r7, gpGameState@sda21(r13) +/* 80151C54 0014EBB4 38 00 00 00 */ li r0, 0 +/* 80151C58 0014EBB8 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 80151C5C 0014EBBC 38 80 00 18 */ li r4, 0x18 +/* 80151C60 0014EBC0 80 C7 02 10 */ lwz r6, 0x210(r7) +/* 80151C64 0014EBC4 38 A0 00 01 */ li r5, 1 +/* 80151C68 0014EBC8 80 E7 02 14 */ lwz r7, 0x214(r7) +/* 80151C6C 0014EBCC 7C DB 02 78 */ xor r27, r6, r0 +/* 80151C70 0014EBD0 80 63 00 00 */ lwz r3, 0(r3) +/* 80151C74 0014EBD4 7C E0 02 78 */ xor r0, r7, r0 +/* 80151C78 0014EBD8 7C 1B DB 78 */ or r27, r0, r27 +/* 80151C7C 0014EBDC 7F 7B 00 34 */ cntlzw r27, r27 +/* 80151C80 0014EBE0 57 7B D9 7E */ srwi r27, r27, 5 +/* 80151C84 0014EBE4 4B F3 FF 6D */ bl IncrPickUp__12CPlayerStateFQ212CPlayerState9EItemTypei +/* 80151C88 0014EBE8 57 60 06 3F */ clrlwi. r0, r27, 0x18 +/* 80151C8C 0014EBEC 41 82 00 1C */ beq lbl_80151CA8 +/* 80151C90 0014EBF0 7F E3 FB 78 */ mr r3, r31 +/* 80151C94 0014EBF4 7F C5 F3 78 */ mr r5, r30 +/* 80151C98 0014EBF8 38 80 00 02 */ li r4, 2 +/* 80151C9C 0014EBFC 38 C0 FF FF */ li r6, -1 +/* 80151CA0 0014EC00 4B EF F4 21 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 80151CA4 0014EC04 48 00 0B FC */ b lbl_801528A0 +lbl_80151CA8: +/* 80151CA8 0014EC08 40 82 0B F8 */ bne lbl_801528A0 +/* 80151CAC 0014EC0C 7F C3 F3 78 */ mr r3, r30 +/* 80151CB0 0014EC10 38 80 00 04 */ li r4, 4 +/* 80151CB4 0014EC14 4B EF 2B AD */ bl DeferStateTransition__13CStateManagerF23EStateManagerTransition +/* 80151CB8 0014EC18 88 1F 01 E5 */ lbz r0, 0x1e5(r31) +/* 80151CBC 0014EC1C 38 60 00 01 */ li r3, 1 +/* 80151CC0 0014EC20 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80151CC4 0014EC24 98 1F 01 E5 */ stb r0, 0x1e5(r31) +/* 80151CC8 0014EC28 48 00 0B D8 */ b lbl_801528A0 +/* 80151CCC 0014EC2C 80 1F 01 A8 */ lwz r0, 0x1a8(r31) +/* 80151CD0 0014EC30 2C 00 00 03 */ cmpwi r0, 3 +/* 80151CD4 0014EC34 41 82 0B CC */ beq lbl_801528A0 +/* 80151CD8 0014EC38 2C 1C 00 14 */ cmpwi r28, 0x14 +/* 80151CDC 0014EC3C 41 82 02 30 */ beq lbl_80151F0C +/* 80151CE0 0014EC40 40 80 00 1C */ bge lbl_80151CFC +/* 80151CE4 0014EC44 2C 1C 00 0D */ cmpwi r28, 0xd +/* 80151CE8 0014EC48 41 82 02 FC */ beq lbl_80151FE4 +/* 80151CEC 0014EC4C 41 80 0B B4 */ blt lbl_801528A0 +/* 80151CF0 0014EC50 2C 1C 00 13 */ cmpwi r28, 0x13 +/* 80151CF4 0014EC54 40 80 02 E0 */ bge lbl_80151FD4 +/* 80151CF8 0014EC58 48 00 0B A8 */ b lbl_801528A0 +lbl_80151CFC: +/* 80151CFC 0014EC5C 2C 1C 00 23 */ cmpwi r28, 0x23 +/* 80151D00 0014EC60 41 82 00 08 */ beq lbl_80151D08 +/* 80151D04 0014EC64 48 00 0B 9C */ b lbl_801528A0 +lbl_80151D08: +/* 80151D08 0014EC68 38 7F 01 98 */ addi r3, r31, 0x198 +/* 80151D0C 0014EC6C 38 80 00 03 */ li r4, 3 +/* 80151D10 0014EC70 48 00 16 CD */ bl "reserve__Q24rstl78vectorFi" +/* 80151D14 0014EC74 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80151D18 0014EC78 83 9F 00 2C */ lwz r28, 0x2c(r31) +/* 80151D1C 0014EC7C 3B A3 66 A0 */ addi r29, r3, skZero3f@l +/* 80151D20 0014EC80 48 00 01 38 */ b lbl_80151E58 +lbl_80151D24: +/* 80151D24 0014EC84 80 1C 00 00 */ lwz r0, 0(r28) +/* 80151D28 0014EC88 2C 00 00 12 */ cmpwi r0, 0x12 +/* 80151D2C 0014EC8C 40 82 01 28 */ bne lbl_80151E54 +/* 80151D30 0014EC90 80 1C 00 04 */ lwz r0, 4(r28) +/* 80151D34 0014EC94 2C 00 00 01 */ cmpwi r0, 1 +/* 80151D38 0014EC98 40 82 01 1C */ bne lbl_80151E54 +/* 80151D3C 0014EC9C 80 1C 00 08 */ lwz r0, 8(r28) +/* 80151D40 0014ECA0 7F C4 F3 78 */ mr r4, r30 +/* 80151D44 0014ECA4 38 61 00 EC */ addi r3, r1, 0xec +/* 80151D48 0014ECA8 38 A1 00 60 */ addi r5, r1, 0x60 +/* 80151D4C 0014ECAC 90 01 00 60 */ stw r0, 0x60(r1) +/* 80151D50 0014ECB0 4B EF 62 79 */ bl GetIdListForScript__13CStateManagerCF9TEditorId +/* 80151D54 0014ECB4 83 41 00 EC */ lwz r26, 0xec(r1) +/* 80151D58 0014ECB8 38 60 00 00 */ li r3, 0 +/* 80151D5C 0014ECBC 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 80151D60 0014ECC0 80 81 00 F0 */ lwz r4, 0xf0(r1) +/* 80151D64 0014ECC4 7C 1A 00 40 */ cmplw r26, r0 +/* 80151D68 0014ECC8 80 01 00 F8 */ lwz r0, 0xf8(r1) +/* 80151D6C 0014ECCC 40 82 00 10 */ bne lbl_80151D7C +/* 80151D70 0014ECD0 7C 04 00 40 */ cmplw r4, r0 +/* 80151D74 0014ECD4 40 82 00 08 */ bne lbl_80151D7C +/* 80151D78 0014ECD8 38 60 00 01 */ li r3, 1 +lbl_80151D7C: +/* 80151D7C 0014ECDC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80151D80 0014ECE0 40 82 00 D4 */ bne lbl_80151E54 +/* 80151D84 0014ECE4 A0 1A 00 14 */ lhz r0, 0x14(r26) +/* 80151D88 0014ECE8 7F C3 F3 78 */ mr r3, r30 +/* 80151D8C 0014ECEC 38 81 00 30 */ addi r4, r1, 0x30 +/* 80151D90 0014ECF0 B0 01 00 30 */ sth r0, 0x30(r1) +/* 80151D94 0014ECF4 4B EF A7 E1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80151D98 0014ECF8 7C 64 1B 78 */ mr r4, r3 +/* 80151D9C 0014ECFC 38 61 00 BC */ addi r3, r1, 0xbc +/* 80151DA0 0014ED00 4B F5 DE F1 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80151DA4 0014ED04 83 63 00 04 */ lwz r27, 4(r3) +/* 80151DA8 0014ED08 28 1B 00 00 */ cmplwi r27, 0 +/* 80151DAC 0014ED0C 41 82 00 A8 */ beq lbl_80151E54 +/* 80151DB0 0014ED10 80 9F 01 9C */ lwz r4, 0x19c(r31) +/* 80151DB4 0014ED14 38 7F 01 98 */ addi r3, r31, 0x198 +/* 80151DB8 0014ED18 38 84 00 01 */ addi r4, r4, 1 +/* 80151DBC 0014ED1C 48 00 16 21 */ bl "reserve__Q24rstl78vectorFi" +/* 80151DC0 0014ED20 80 1F 01 9C */ lwz r0, 0x19c(r31) +/* 80151DC4 0014ED24 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80151DC8 0014ED28 80 BF 01 A0 */ lwz r5, 0x1a0(r31) +/* 80151DCC 0014ED2C A0 9A 00 14 */ lhz r4, 0x14(r26) +/* 80151DD0 0014ED30 7C 00 28 00 */ cmpw r0, r5 +/* 80151DD4 0014ED34 C3 E3 66 A0 */ lfs f31, skZero3f@l(r3) +/* 80151DD8 0014ED38 B0 81 00 2C */ sth r4, 0x2c(r1) +/* 80151DDC 0014ED3C C3 DD 00 04 */ lfs f30, 4(r29) +/* 80151DE0 0014ED40 C3 BD 00 08 */ lfs f29, 8(r29) +/* 80151DE4 0014ED44 41 80 00 1C */ blt lbl_80151E00 +/* 80151DE8 0014ED48 2C 05 00 00 */ cmpwi r5, 0 +/* 80151DEC 0014ED4C 38 7F 01 98 */ addi r3, r31, 0x198 +/* 80151DF0 0014ED50 38 80 00 04 */ li r4, 4 +/* 80151DF4 0014ED54 41 82 00 08 */ beq lbl_80151DFC +/* 80151DF8 0014ED58 54 A4 08 3C */ slwi r4, r5, 1 +lbl_80151DFC: +/* 80151DFC 0014ED5C 48 00 15 E1 */ bl "reserve__Q24rstl78vectorFi" +lbl_80151E00: +/* 80151E00 0014ED60 80 1F 01 9C */ lwz r0, 0x19c(r31) +/* 80151E04 0014ED64 80 7F 01 A4 */ lwz r3, 0x1a4(r31) +/* 80151E08 0014ED68 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 80151E0C 0014ED6C 7C 83 02 15 */ add. r4, r3, r0 +/* 80151E10 0014ED70 41 82 00 28 */ beq lbl_80151E38 +/* 80151E14 0014ED74 A0 61 00 2C */ lhz r3, 0x2c(r1) +/* 80151E18 0014ED78 38 00 00 00 */ li r0, 0 +/* 80151E1C 0014ED7C C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) +/* 80151E20 0014ED80 B0 64 00 00 */ sth r3, 0(r4) +/* 80151E24 0014ED84 D0 04 00 04 */ stfs f0, 4(r4) +/* 80151E28 0014ED88 98 04 00 08 */ stb r0, 8(r4) +/* 80151E2C 0014ED8C D3 E4 00 0C */ stfs f31, 0xc(r4) +/* 80151E30 0014ED90 D3 C4 00 10 */ stfs f30, 0x10(r4) +/* 80151E34 0014ED94 D3 A4 00 14 */ stfs f29, 0x14(r4) +lbl_80151E38: +/* 80151E38 0014ED98 80 DF 01 9C */ lwz r6, 0x19c(r31) +/* 80151E3C 0014ED9C 7F 63 DB 78 */ mr r3, r27 +/* 80151E40 0014EDA0 7F C5 F3 78 */ mr r5, r30 +/* 80151E44 0014EDA4 38 80 00 2A */ li r4, 0x2a +/* 80151E48 0014EDA8 38 06 00 01 */ addi r0, r6, 1 +/* 80151E4C 0014EDAC 90 1F 01 9C */ stw r0, 0x19c(r31) +/* 80151E50 0014EDB0 4B F0 21 31 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +lbl_80151E54: +/* 80151E54 0014EDB4 3B 9C 00 0C */ addi r28, r28, 0xc +lbl_80151E58: +/* 80151E58 0014EDB8 80 1F 00 24 */ lwz r0, 0x24(r31) +/* 80151E5C 0014EDBC 80 7F 00 2C */ lwz r3, 0x2c(r31) +/* 80151E60 0014EDC0 1C 00 00 0C */ mulli r0, r0, 0xc +/* 80151E64 0014EDC4 7C 03 02 14 */ add r0, r3, r0 +/* 80151E68 0014EDC8 7C 1C 00 40 */ cmplw r28, r0 +/* 80151E6C 0014EDCC 40 82 FE B8 */ bne lbl_80151D24 +/* 80151E70 0014EDD0 93 C1 00 4C */ stw r30, 0x4c(r1) +/* 80151E74 0014EDD4 38 61 00 5C */ addi r3, r1, 0x5c +/* 80151E78 0014EDD8 38 81 00 54 */ addi r4, r1, 0x54 +/* 80151E7C 0014EDDC 38 A1 00 4C */ addi r5, r1, 0x4c +/* 80151E80 0014EDE0 80 1F 01 9C */ lwz r0, 0x19c(r31) +/* 80151E84 0014EDE4 80 DF 01 A4 */ lwz r6, 0x1a4(r31) +/* 80151E88 0014EDE8 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 80151E8C 0014EDEC 93 C1 00 48 */ stw r30, 0x48(r1) +/* 80151E90 0014EDF0 7C C6 02 14 */ add r6, r6, r0 +/* 80151E94 0014EDF4 90 C1 00 54 */ stw r6, 0x54(r1) +/* 80151E98 0014EDF8 80 1F 01 A4 */ lwz r0, 0x1a4(r31) +/* 80151E9C 0014EDFC 90 C1 00 50 */ stw r6, 0x50(r1) +/* 80151EA0 0014EE00 90 01 00 58 */ stw r0, 0x58(r1) +/* 80151EA4 0014EE04 90 01 00 5C */ stw r0, 0x5c(r1) +/* 80151EA8 0014EE08 48 00 11 B5 */ bl "sort,Q24rstl17rmemory_allocator>,Q236@unnamed@CScriptSpecialFunction_cpp@11CRingSorter>__4rstlFQ24rstl176pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl176pointer_iteratorFP7CEntity" +/* 80151F58 0014EEB8 80 83 00 04 */ lwz r4, 4(r3) +/* 80151F5C 0014EEBC 28 04 00 00 */ cmplwi r4, 0 +/* 80151F60 0014EEC0 41 82 00 2C */ beq lbl_80151F8C +/* 80151F64 0014EEC4 80 1F 01 A4 */ lwz r0, 0x1a4(r31) +/* 80151F68 0014EEC8 38 7C 00 0C */ addi r3, r28, 0xc +/* 80151F6C 0014EECC C0 44 00 58 */ lfs f2, 0x58(r4) +/* 80151F70 0014EED0 C0 24 00 48 */ lfs f1, 0x48(r4) +/* 80151F74 0014EED4 7C 60 1A 14 */ add r3, r0, r3 +/* 80151F78 0014EED8 C0 04 00 38 */ lfs f0, 0x38(r4) +/* 80151F7C 0014EEDC D0 03 00 00 */ stfs f0, 0(r3) +/* 80151F80 0014EEE0 D0 23 00 04 */ stfs f1, 4(r3) +/* 80151F84 0014EEE4 D0 43 00 08 */ stfs f2, 8(r3) +/* 80151F88 0014EEE8 48 00 00 2C */ b lbl_80151FB4 +lbl_80151F8C: +/* 80151F8C 0014EEEC 3C 60 80 5A */ lis r3, lbl_805A6724@ha +/* 80151F90 0014EEF0 80 1F 01 A4 */ lwz r0, 0x1a4(r31) +/* 80151F94 0014EEF4 38 9C 00 0C */ addi r4, r28, 0xc +/* 80151F98 0014EEF8 C0 03 67 24 */ lfs f0, lbl_805A6724@l(r3) +/* 80151F9C 0014EEFC 7C 80 22 14 */ add r4, r0, r4 +/* 80151FA0 0014EF00 D0 04 00 00 */ stfs f0, 0(r4) +/* 80151FA4 0014EF04 C0 1B 00 04 */ lfs f0, 4(r27) +/* 80151FA8 0014EF08 D0 04 00 04 */ stfs f0, 4(r4) +/* 80151FAC 0014EF0C C0 1B 00 08 */ lfs f0, 8(r27) +/* 80151FB0 0014EF10 D0 04 00 08 */ stfs f0, 8(r4) +lbl_80151FB4: +/* 80151FB4 0014EF14 3B 9C 00 18 */ addi r28, r28, 0x18 +/* 80151FB8 0014EF18 3B 5A 00 01 */ addi r26, r26, 1 +lbl_80151FBC: +/* 80151FBC 0014EF1C 80 1F 01 9C */ lwz r0, 0x19c(r31) +/* 80151FC0 0014EF20 7C 1A 00 00 */ cmpw r26, r0 +/* 80151FC4 0014EF24 41 80 FF 70 */ blt lbl_80151F34 +/* 80151FC8 0014EF28 38 00 00 03 */ li r0, 3 +/* 80151FCC 0014EF2C 90 1F 01 A8 */ stw r0, 0x1a8(r31) +/* 80151FD0 0014EF30 48 00 08 D0 */ b lbl_801528A0 +lbl_80151FD4: +/* 80151FD4 0014EF34 7F E3 FB 78 */ mr r3, r31 +/* 80151FD8 0014EF38 7F C4 F3 78 */ mr r4, r30 +/* 80151FDC 0014EF3C 4B FF F7 41 */ bl RingScramble__22CScriptSpecialFunctionFR13CStateManager +/* 80151FE0 0014EF40 48 00 08 C0 */ b lbl_801528A0 +lbl_80151FE4: +/* 80151FE4 0014EF44 38 00 00 01 */ li r0, 1 +/* 80151FE8 0014EF48 C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) +/* 80151FEC 0014EF4C 90 1F 01 A8 */ stw r0, 0x1a8(r31) +/* 80151FF0 0014EF50 38 7F 01 AC */ addi r3, r31, 0x1ac +/* 80151FF4 0014EF54 80 9E 08 4C */ lwz r4, 0x84c(r30) +/* 80151FF8 0014EF58 C0 5F 00 40 */ lfs f2, 0x40(r31) +/* 80151FFC 0014EF5C C0 24 00 40 */ lfs f1, 0x40(r4) +/* 80152000 0014EF60 C0 BF 00 50 */ lfs f5, 0x50(r31) +/* 80152004 0014EF64 C0 84 00 50 */ lfs f4, 0x50(r4) +/* 80152008 0014EF68 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8015200C 0014EF6C C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 80152010 0014EF70 C0 44 00 60 */ lfs f2, 0x60(r4) +/* 80152014 0014EF74 EC 85 20 28 */ fsubs f4, f5, f4 +/* 80152018 0014EF78 D0 3F 01 AC */ stfs f1, 0x1ac(r31) +/* 8015201C 0014EF7C EC 23 10 28 */ fsubs f1, f3, f2 +/* 80152020 0014EF80 D0 9F 01 B0 */ stfs f4, 0x1b0(r31) +/* 80152024 0014EF84 D0 3F 01 B4 */ stfs f1, 0x1b4(r31) +/* 80152028 0014EF88 D0 1F 01 B4 */ stfs f0, 0x1b4(r31) +/* 8015202C 0014EF8C 48 1C 28 CD */ bl Normalize__9CVector3fFv +/* 80152030 0014EF90 48 00 08 70 */ b lbl_801528A0 +/* 80152034 0014EF94 2C 1C 00 13 */ cmpwi r28, 0x13 +/* 80152038 0014EF98 40 82 08 68 */ bne lbl_801528A0 +/* 8015203C 0014EF9C 80 1F 01 1C */ lwz r0, 0x11c(r31) +/* 80152040 0014EFA0 38 60 00 00 */ li r3, 0 +/* 80152044 0014EFA4 80 AD 8C 4C */ lwz r5, lbl_805A780C@sda21(r13) +/* 80152048 0014EFA8 38 80 00 01 */ li r4, 1 +/* 8015204C 0014EFAC 90 01 01 30 */ stw r0, 0x130(r1) +/* 80152050 0014EFB0 88 1F 01 20 */ lbz r0, 0x120(r31) +/* 80152054 0014EFB4 98 01 01 34 */ stb r0, 0x134(r1) +/* 80152058 0014EFB8 C0 1F 01 24 */ lfs f0, 0x124(r31) +/* 8015205C 0014EFBC D0 01 01 38 */ stfs f0, 0x138(r1) +/* 80152060 0014EFC0 C0 1F 01 28 */ lfs f0, 0x128(r31) +/* 80152064 0014EFC4 D0 01 01 3C */ stfs f0, 0x13c(r1) +/* 80152068 0014EFC8 C0 1F 01 2C */ lfs f0, 0x12c(r31) +/* 8015206C 0014EFCC D0 01 01 40 */ stfs f0, 0x140(r1) +/* 80152070 0014EFD0 C0 1F 01 30 */ lfs f0, 0x130(r31) +/* 80152074 0014EFD4 D0 01 01 44 */ stfs f0, 0x144(r1) +/* 80152078 0014EFD8 88 1F 01 34 */ lbz r0, 0x134(r31) +/* 8015207C 0014EFDC 98 01 01 48 */ stb r0, 0x148(r1) +/* 80152080 0014EFE0 C0 1F 00 FC */ lfs f0, 0xfc(r31) +/* 80152084 0014EFE4 D0 01 01 40 */ stfs f0, 0x140(r1) +/* 80152088 0014EFE8 48 23 7E 6D */ bl __shl2i +/* 8015208C 0014EFEC 39 20 00 00 */ li r9, 0 +/* 80152090 0014EFF0 38 00 00 03 */ li r0, 3 +/* 80152094 0014EFF4 90 81 01 1C */ stw r4, 0x11c(r1) +/* 80152098 0014EFF8 7F E5 FB 78 */ mr r5, r31 +/* 8015209C 0014EFFC 38 81 00 24 */ addi r4, r1, 0x24 +/* 801520A0 0014F000 38 C1 00 E0 */ addi r6, r1, 0xe0 +/* 801520A4 0014F004 90 61 01 18 */ stw r3, 0x118(r1) +/* 801520A8 0014F008 7F C3 F3 78 */ mr r3, r30 +/* 801520AC 0014F00C 38 E1 01 30 */ addi r7, r1, 0x130 +/* 801520B0 0014F010 39 01 01 18 */ addi r8, r1, 0x118 +/* 801520B4 0014F014 91 21 01 24 */ stw r9, 0x124(r1) +/* 801520B8 0014F018 91 21 01 20 */ stw r9, 0x120(r1) +/* 801520BC 0014F01C 90 01 01 28 */ stw r0, 0x128(r1) +/* 801520C0 0014F020 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801520C4 0014F024 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801520C8 0014F028 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801520CC 0014F02C D0 01 00 E0 */ stfs f0, 0xe0(r1) +/* 801520D0 0014F030 D0 21 00 E4 */ stfs f1, 0xe4(r1) +/* 801520D4 0014F034 D0 41 00 E8 */ stfs f2, 0xe8(r1) +/* 801520D8 0014F038 A0 1F 00 08 */ lhz r0, 8(r31) +/* 801520DC 0014F03C B0 01 00 20 */ sth r0, 0x20(r1) +/* 801520E0 0014F040 B0 01 00 24 */ sth r0, 0x24(r1) +/* 801520E4 0014F044 4B EF 6B C9 */ bl ApplyDamageToWorld__13CStateManagerF9TUniqueIdRC6CActorRC9CVector3fRC11CDamageInfoRC15CMaterialFilter +/* 801520E8 0014F048 48 00 07 B8 */ b lbl_801528A0 +/* 801520EC 0014F04C 2C 1C 00 07 */ cmpwi r28, 7 +/* 801520F0 0014F050 40 82 00 34 */ bne lbl_80152124 +/* 801520F4 0014F054 C0 1F 01 00 */ lfs f0, 0x100(r31) +/* 801520F8 0014F058 7F C3 F3 78 */ mr r3, r30 +/* 801520FC 0014F05C A0 1B 00 00 */ lhz r0, 0(r27) +/* 80152100 0014F060 38 81 00 1C */ addi r4, r1, 0x1c +/* 80152104 0014F064 FC 00 00 1E */ fctiwz f0, f0 +/* 80152108 0014F068 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8015210C 0014F06C D8 01 01 50 */ stfd f0, 0x150(r1) +/* 80152110 0014F070 C0 3F 00 FC */ lfs f1, 0xfc(r31) +/* 80152114 0014F074 80 A1 01 54 */ lwz r5, 0x154(r1) +/* 80152118 0014F078 38 A5 00 56 */ addi r5, r5, 0x56 +/* 8015211C 0014F07C 4B EF 1E 29 */ bl SetBossParams__13CStateManagerF9TUniqueIdfUi +/* 80152120 0014F080 48 00 07 80 */ b lbl_801528A0 +lbl_80152124: +/* 80152124 0014F084 2C 1C 00 05 */ cmpwi r28, 5 +/* 80152128 0014F088 40 82 07 78 */ bne lbl_801528A0 +/* 8015212C 0014F08C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80152130 0014F090 7F C3 F3 78 */ mr r3, r30 +/* 80152134 0014F094 C0 22 9D 9C */ lfs f1, lbl_805ABABC@sda21(r2) +/* 80152138 0014F098 38 81 00 18 */ addi r4, r1, 0x18 +/* 8015213C 0014F09C B0 01 00 18 */ sth r0, 0x18(r1) +/* 80152140 0014F0A0 38 A0 00 00 */ li r5, 0 +/* 80152144 0014F0A4 4B EF 1E 01 */ bl SetBossParams__13CStateManagerF9TUniqueIdfUi +/* 80152148 0014F0A8 48 00 07 58 */ b lbl_801528A0 +/* 8015214C 0014F0AC 2C 1C 00 13 */ cmpwi r28, 0x13 +/* 80152150 0014F0B0 40 82 07 50 */ bne lbl_801528A0 +/* 80152154 0014F0B4 7F E3 FB 78 */ mr r3, r31 +/* 80152158 0014F0B8 7F C4 F3 78 */ mr r4, r30 +/* 8015215C 0014F0BC 4B FF D1 D9 */ bl GetSpecialEnding__22CScriptSpecialFunctionCFv +/* 80152160 0014F0C0 2C 03 00 01 */ cmpwi r3, 1 +/* 80152164 0014F0C4 41 82 00 30 */ beq lbl_80152194 +/* 80152168 0014F0C8 40 80 00 10 */ bge lbl_80152178 +/* 8015216C 0014F0CC 2C 03 00 00 */ cmpwi r3, 0 +/* 80152170 0014F0D0 40 80 00 14 */ bge lbl_80152184 +/* 80152174 0014F0D4 48 00 00 3C */ b lbl_801521B0 +lbl_80152178: +/* 80152178 0014F0D8 2C 03 00 03 */ cmpwi r3, 3 +/* 8015217C 0014F0DC 40 80 00 34 */ bge lbl_801521B0 +/* 80152180 0014F0E0 48 00 00 24 */ b lbl_801521A4 +lbl_80152184: +/* 80152184 0014F0E4 80 6D A0 78 */ lwz r3, gpMain@sda21(r13) +/* 80152188 0014F0E8 38 00 00 01 */ li r0, 1 +/* 8015218C 0014F0EC 90 03 01 2C */ stw r0, 0x12c(r3) +/* 80152190 0014F0F0 48 00 00 20 */ b lbl_801521B0 +lbl_80152194: +/* 80152194 0014F0F4 80 6D A0 78 */ lwz r3, gpMain@sda21(r13) +/* 80152198 0014F0F8 38 00 00 02 */ li r0, 2 +/* 8015219C 0014F0FC 90 03 01 2C */ stw r0, 0x12c(r3) +/* 801521A0 0014F100 48 00 00 10 */ b lbl_801521B0 +lbl_801521A4: +/* 801521A4 0014F104 80 6D A0 78 */ lwz r3, gpMain@sda21(r13) +/* 801521A8 0014F108 38 00 00 03 */ li r0, 3 +/* 801521AC 0014F10C 90 03 01 2C */ stw r0, 0x12c(r3) +lbl_801521B0: +/* 801521B0 0014F110 88 1E 0F 94 */ lbz r0, 0xf94(r30) +/* 801521B4 0014F114 38 60 00 01 */ li r3, 1 +/* 801521B8 0014F118 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 801521BC 0014F11C 98 1E 0F 94 */ stb r0, 0xf94(r30) +/* 801521C0 0014F120 48 00 06 E0 */ b lbl_801528A0 +/* 801521C4 0014F124 2C 1C 00 07 */ cmpwi r28, 7 +/* 801521C8 0014F128 40 82 00 2C */ bne lbl_801521F4 +/* 801521CC 0014F12C 7F E3 FB 78 */ mr r3, r31 +/* 801521D0 0014F130 7F C4 F3 78 */ mr r4, r30 +/* 801521D4 0014F134 4B FF F6 95 */ bl ShouldSkipCinematic__22CScriptSpecialFunctionFR13CStateManager +/* 801521D8 0014F138 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 801521DC 0014F13C 41 82 06 C4 */ beq lbl_801528A0 +/* 801521E0 0014F140 A0 1F 00 08 */ lhz r0, 8(r31) +/* 801521E4 0014F144 B0 01 00 10 */ sth r0, 0x10(r1) +/* 801521E8 0014F148 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801521EC 0014F14C B0 1E 0F 38 */ sth r0, 0xf38(r30) +/* 801521F0 0014F150 48 00 06 B0 */ b lbl_801528A0 +lbl_801521F4: +/* 801521F4 0014F154 2C 1C 00 05 */ cmpwi r28, 5 +/* 801521F8 0014F158 40 82 06 A8 */ bne lbl_801528A0 +/* 801521FC 0014F15C A0 ED A3 8C */ lhz r7, lbl_805A8F4C@sda21(r13) +/* 80152200 0014F160 38 81 00 AC */ addi r4, r1, 0xac +/* 80152204 0014F164 38 A0 00 01 */ li r5, 1 +/* 80152208 0014F168 B0 FE 0F 38 */ sth r7, 0xf38(r30) +/* 8015220C 0014F16C 80 7E 08 50 */ lwz r3, 0x850(r30) +/* 80152210 0014F170 80 1F 00 0C */ lwz r0, 0xc(r31) +/* 80152214 0014F174 80 C3 00 08 */ lwz r6, 8(r3) +/* 80152218 0014F178 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 8015221C 0014F17C B0 E1 00 0C */ sth r7, 0xc(r1) +/* 80152220 0014F180 38 63 00 A8 */ addi r3, r3, 0xa8 +/* 80152224 0014F184 90 C1 00 A4 */ stw r6, 0xa4(r1) +/* 80152228 0014F188 90 01 00 A8 */ stw r0, 0xa8(r1) +/* 8015222C 0014F18C 90 C1 00 AC */ stw r6, 0xac(r1) +/* 80152230 0014F190 90 01 00 B0 */ stw r0, 0xb0(r1) +/* 80152234 0014F194 48 08 30 DD */ bl SetCinematicState__14CSystemOptionsFUi9TEditorIdb +/* 80152238 0014F198 48 00 06 68 */ b lbl_801528A0 +/* 8015223C 0014F19C 2C 1C 00 06 */ cmpwi r28, 6 +/* 80152240 0014F1A0 41 82 00 E4 */ beq lbl_80152324 +/* 80152244 0014F1A4 40 80 00 10 */ bge lbl_80152254 +/* 80152248 0014F1A8 2C 1C 00 05 */ cmpwi r28, 5 +/* 8015224C 0014F1AC 40 80 00 10 */ bge lbl_8015225C +/* 80152250 0014F1B0 48 00 00 D4 */ b lbl_80152324 +lbl_80152254: +/* 80152254 0014F1B4 2C 1C 00 08 */ cmpwi r28, 8 +/* 80152258 0014F1B8 40 80 00 CC */ bge lbl_80152324 +lbl_8015225C: +/* 8015225C 0014F1BC 80 BF 01 BC */ lwz r5, 0x1bc(r31) +/* 80152260 0014F1C0 3C 05 00 01 */ addis r0, r5, 1 +/* 80152264 0014F1C4 28 00 FF FF */ cmplwi r0, 0xffff +/* 80152268 0014F1C8 41 82 00 BC */ beq lbl_80152324 +/* 8015226C 0014F1CC 80 7F 01 C0 */ lwz r3, 0x1c0(r31) +/* 80152270 0014F1D0 3C 03 00 01 */ addis r0, r3, 1 +/* 80152274 0014F1D4 28 00 FF FF */ cmplwi r0, 0xffff +/* 80152278 0014F1D8 41 82 00 AC */ beq lbl_80152324 +/* 8015227C 0014F1DC 20 1C 00 07 */ subfic r0, r28, 7 +/* 80152280 0014F1E0 80 9E 08 50 */ lwz r4, 0x850(r30) +/* 80152284 0014F1E4 7C 00 00 34 */ cntlzw r0, r0 +/* 80152288 0014F1E8 38 61 00 44 */ addi r3, r1, 0x44 +/* 8015228C 0014F1EC 54 1A D9 7E */ srwi r26, r0, 5 +/* 80152290 0014F1F0 4B F0 3D D1 */ bl sub_80056060 +/* 80152294 0014F1F4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80152298 0014F1F8 3B A0 00 00 */ li r29, 0 +/* 8015229C 0014F1FC 2C 00 FF FF */ cmpwi r0, -1 +/* 801522A0 0014F200 90 01 00 68 */ stw r0, 0x68(r1) +/* 801522A4 0014F204 41 82 00 10 */ beq lbl_801522B4 +/* 801522A8 0014F208 80 7E 08 C8 */ lwz r3, 0x8c8(r30) +/* 801522AC 0014F20C 83 A3 00 00 */ lwz r29, 0(r3) +/* 801522B0 0014F210 48 00 00 40 */ b lbl_801522F0 +lbl_801522B4: +/* 801522B4 0014F214 80 8D A0 84 */ lwz r4, gpMemoryCard@sda21(r13) +/* 801522B8 0014F218 38 61 00 9C */ addi r3, r1, 0x9c +/* 801522BC 0014F21C 80 BF 01 BC */ lwz r5, 0x1bc(r31) +/* 801522C0 0014F220 48 0F 6B 1D */ bl sub_80248ddc +/* 801522C4 0014F224 80 81 00 9C */ lwz r4, 0x9c(r1) +/* 801522C8 0014F228 83 61 00 A0 */ lwz r27, 0xa0(r1) +/* 801522CC 0014F22C 3C 04 00 01 */ addis r0, r4, 1 +/* 801522D0 0014F230 28 00 FF FF */ cmplwi r0, 0xffff +/* 801522D4 0014F234 41 82 00 1C */ beq lbl_801522F0 +/* 801522D8 0014F238 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 801522DC 0014F23C 48 08 16 FD */ bl StateForWorld__10CGameStateFUi +/* 801522E0 0014F240 48 08 2A 55 */ bl GetLayerState__11CWorldStateFv +/* 801522E4 0014F244 80 63 00 00 */ lwz r3, 0(r3) +/* 801522E8 0014F248 93 61 00 68 */ stw r27, 0x68(r1) +/* 801522EC 0014F24C 83 A3 00 00 */ lwz r29, 0(r3) +lbl_801522F0: +/* 801522F0 0014F250 80 01 00 68 */ lwz r0, 0x68(r1) +/* 801522F4 0014F254 2C 00 FF FF */ cmpwi r0, -1 +/* 801522F8 0014F258 41 82 00 2C */ beq lbl_80152324 +/* 801522FC 0014F25C 80 FF 01 C0 */ lwz r7, 0x1c0(r31) +/* 80152300 0014F260 7F A3 EB 78 */ mr r3, r29 +/* 80152304 0014F264 80 01 00 68 */ lwz r0, 0x68(r1) +/* 80152308 0014F268 7F 46 D3 78 */ mr r6, r26 +/* 8015230C 0014F26C 90 E1 00 38 */ stw r7, 0x38(r1) +/* 80152310 0014F270 38 81 00 40 */ addi r4, r1, 0x40 +/* 80152314 0014F274 38 A1 00 3C */ addi r5, r1, 0x3c +/* 80152318 0014F278 90 E1 00 3C */ stw r7, 0x3c(r1) +/* 8015231C 0014F27C 90 01 00 40 */ stw r0, 0x40(r1) +/* 80152320 0014F280 48 0E 1F A1 */ bl SetLayerActive__16CWorldLayerStateFiib +lbl_80152324: +/* 80152324 0014F284 2C 1C 00 13 */ cmpwi r28, 0x13 +/* 80152328 0014F288 40 82 05 78 */ bne lbl_801528A0 +/* 8015232C 0014F28C C0 1F 01 00 */ lfs f0, 0x100(r31) +/* 80152330 0014F290 80 7E 08 80 */ lwz r3, 0x880(r30) +/* 80152334 0014F294 FC 00 00 1E */ fctiwz f0, f0 +/* 80152338 0014F298 C0 3F 00 FC */ lfs f1, 0xfc(r31) +/* 8015233C 0014F29C D8 01 01 50 */ stfd f0, 0x150(r1) +/* 80152340 0014F2A0 80 81 01 54 */ lwz r4, 0x154(r1) +/* 80152344 0014F2A4 48 0B DC 19 */ bl sub_8020ff5c +/* 80152348 0014F2A8 48 00 05 58 */ b lbl_801528A0 +/* 8015234C 0014F2AC 2C 1C 00 13 */ cmpwi r28, 0x13 +/* 80152350 0014F2B0 40 82 05 50 */ bne lbl_801528A0 +/* 80152354 0014F2B4 C0 1F 01 00 */ lfs f0, 0x100(r31) +/* 80152358 0014F2B8 FC 00 00 1E */ fctiwz f0, f0 +/* 8015235C 0014F2BC D8 01 01 50 */ stfd f0, 0x150(r1) +/* 80152360 0014F2C0 80 01 01 54 */ lwz r0, 0x154(r1) +/* 80152364 0014F2C4 2C 00 00 00 */ cmpwi r0, 0 +/* 80152368 0014F2C8 41 80 05 38 */ blt lbl_801528A0 +/* 8015236C 0014F2CC 2C 00 00 06 */ cmpwi r0, 6 +/* 80152370 0014F2D0 40 80 05 30 */ bge lbl_801528A0 +/* 80152374 0014F2D4 3C 60 80 3D */ lis r3, lbl_803D01B8@ha +/* 80152378 0014F2D8 54 00 10 3A */ slwi r0, r0, 2 +/* 8015237C 0014F2DC 38 63 01 B8 */ addi r3, r3, lbl_803D01B8@l +/* 80152380 0014F2E0 C0 3F 01 04 */ lfs f1, 0x104(r31) +/* 80152384 0014F2E4 7F 43 00 2E */ lwzx r26, r3, r0 +/* 80152388 0014F2E8 48 23 75 CD */ bl __cvt_fp2unsigned +/* 8015238C 0014F2EC 54 60 07 FF */ clrlwi. r0, r3, 0x1f +/* 80152390 0014F2F0 41 82 00 20 */ beq lbl_801523B0 +/* 80152394 0014F2F4 80 7E 08 8C */ lwz r3, 0x88c(r30) +/* 80152398 0014F2F8 7F C4 F3 78 */ mr r4, r30 +/* 8015239C 0014F2FC C0 22 9D B4 */ lfs f1, lbl_805ABAD4@sda21(r2) +/* 801523A0 0014F300 7F 45 D3 78 */ mr r5, r26 +/* 801523A4 0014F304 38 C0 00 01 */ li r6, 1 +/* 801523A8 0014F308 48 0D BE 9D */ bl Rumble__14CRumbleManagerFR13CStateManager11ERumbleFxIdf15ERumblePriority +/* 801523AC 0014F30C 48 00 04 F4 */ b lbl_801528A0 +lbl_801523B0: +/* 801523B0 0014F310 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 801523B4 0014F314 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e +/* 801523B8 0014F318 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 801523BC 0014F31C C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 801523C0 0014F320 D0 01 01 08 */ stfs f0, 0x108(r1) +/* 801523C4 0014F324 D0 21 01 0C */ stfs f1, 0x10c(r1) +/* 801523C8 0014F328 D0 41 01 10 */ stfs f2, 0x110(r1) +/* 801523CC 0014F32C 41 82 00 48 */ beq lbl_80152414 +/* 801523D0 0014F330 A0 1B 00 00 */ lhz r0, 0(r27) +/* 801523D4 0014F334 7F C3 F3 78 */ mr r3, r30 +/* 801523D8 0014F338 38 81 00 08 */ addi r4, r1, 8 +/* 801523DC 0014F33C B0 01 00 08 */ sth r0, 8(r1) +/* 801523E0 0014F340 4B EF A1 C5 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 801523E4 0014F344 7C 64 1B 78 */ mr r4, r3 +/* 801523E8 0014F348 38 61 00 6C */ addi r3, r1, 0x6c +/* 801523EC 0014F34C 4B F5 D8 A5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801523F0 0014F350 80 63 00 04 */ lwz r3, 4(r3) +/* 801523F4 0014F354 28 03 00 00 */ cmplwi r3, 0 +/* 801523F8 0014F358 41 82 00 1C */ beq lbl_80152414 +/* 801523FC 0014F35C C0 43 00 60 */ lfs f2, 0x60(r3) +/* 80152400 0014F360 C0 23 00 50 */ lfs f1, 0x50(r3) +/* 80152404 0014F364 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 80152408 0014F368 D0 01 01 08 */ stfs f0, 0x108(r1) +/* 8015240C 0014F36C D0 21 01 0C */ stfs f1, 0x10c(r1) +/* 80152410 0014F370 D0 41 01 10 */ stfs f2, 0x110(r1) +lbl_80152414: +/* 80152414 0014F374 80 7E 08 8C */ lwz r3, 0x88c(r30) +/* 80152418 0014F378 7F C4 F3 78 */ mr r4, r30 +/* 8015241C 0014F37C C0 3F 00 FC */ lfs f1, 0xfc(r31) +/* 80152420 0014F380 7F 46 D3 78 */ mr r6, r26 +/* 80152424 0014F384 38 A1 01 08 */ addi r5, r1, 0x108 +/* 80152428 0014F388 38 E0 00 01 */ li r7, 1 +/* 8015242C 0014F38C 48 0D BD 1D */ bl Rumble__14CRumbleManagerFR13CStateManagerRC9CVector3f11ERumbleFxIdf15ERumblePriority +/* 80152430 0014F390 48 00 04 70 */ b lbl_801528A0 +/* 80152434 0014F394 2C 1C 00 13 */ cmpwi r28, 0x13 +/* 80152438 0014F398 40 82 04 68 */ bne lbl_801528A0 +/* 8015243C 0014F39C 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 80152440 0014F3A0 80 9F 01 C4 */ lwz r4, 0x1c4(r31) +/* 80152444 0014F3A4 80 63 00 00 */ lwz r3, 0(r3) +/* 80152448 0014F3A8 4B F3 F6 79 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 8015244C 0014F3AC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80152450 0014F3B0 41 82 04 50 */ beq lbl_801528A0 +/* 80152454 0014F3B4 7F E3 FB 78 */ mr r3, r31 +/* 80152458 0014F3B8 7F C5 F3 78 */ mr r5, r30 +/* 8015245C 0014F3BC 38 80 00 09 */ li r4, 9 +/* 80152460 0014F3C0 38 C0 FF FF */ li r6, -1 +/* 80152464 0014F3C4 4B EF EC 5D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 80152468 0014F3C8 48 00 04 38 */ b lbl_801528A0 +/* 8015246C 0014F3CC 2C 1C 00 13 */ cmpwi r28, 0x13 +/* 80152470 0014F3D0 40 82 04 30 */ bne lbl_801528A0 +/* 80152474 0014F3D4 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 80152478 0014F3D8 80 63 00 00 */ lwz r3, 0(r3) +/* 8015247C 0014F3DC 4B F3 F0 49 */ bl GetIsFusionEnabled__12CPlayerStateFv +/* 80152480 0014F3E0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80152484 0014F3E4 41 82 04 1C */ beq lbl_801528A0 +/* 80152488 0014F3E8 7F E3 FB 78 */ mr r3, r31 +/* 8015248C 0014F3EC 7F C5 F3 78 */ mr r5, r30 +/* 80152490 0014F3F0 38 80 00 09 */ li r4, 9 +/* 80152494 0014F3F4 38 C0 FF FF */ li r6, -1 +/* 80152498 0014F3F8 4B EF EC 29 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 8015249C 0014F3FC 48 00 04 04 */ b lbl_801528A0 +/* 801524A0 0014F400 2C 1C 00 22 */ cmpwi r28, 0x22 +/* 801524A4 0014F404 41 82 00 0C */ beq lbl_801524B0 +/* 801524A8 0014F408 2C 1C 00 04 */ cmpwi r28, 4 +/* 801524AC 0014F40C 40 82 03 F4 */ bne lbl_801528A0 +lbl_801524B0: +/* 801524B0 0014F410 88 7F 01 E4 */ lbz r3, 0x1e4(r31) +/* 801524B4 0014F414 54 60 07 FF */ clrlwi. r0, r3, 0x1f +/* 801524B8 0014F418 41 82 03 E8 */ beq lbl_801528A0 +/* 801524BC 0014F41C 38 00 00 00 */ li r0, 0 +/* 801524C0 0014F420 50 03 07 FE */ rlwimi r3, r0, 0, 0x1f, 0x1f +/* 801524C4 0014F424 98 7F 01 E4 */ stb r3, 0x1e4(r31) +/* 801524C8 0014F428 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 801524CC 0014F42C 4B EB F4 79 */ bl DecrementPhazon__7CPlayerFv +/* 801524D0 0014F430 88 1E 0F 94 */ lbz r0, 0xf94(r30) +/* 801524D4 0014F434 38 60 00 00 */ li r3, 0 +/* 801524D8 0014F438 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801524DC 0014F43C 98 1E 0F 94 */ stb r0, 0xf94(r30) +/* 801524E0 0014F440 48 00 03 C0 */ b lbl_801528A0 +/* 801524E4 0014F444 2C 1C 00 13 */ cmpwi r28, 0x13 +/* 801524E8 0014F448 40 82 03 B8 */ bne lbl_801528A0 +/* 801524EC 0014F44C C0 3F 00 FC */ lfs f1, 0xfc(r31) +/* 801524F0 0014F450 C0 02 9D B4 */ lfs f0, lbl_805ABAD4@sda21(r2) +/* 801524F4 0014F454 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801524F8 0014F458 4C 41 13 82 */ cror 2, 1, 2 +/* 801524FC 0014F45C 40 82 00 1C */ bne lbl_80152518 +/* 80152500 0014F460 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 80152504 0014F464 7F C5 F3 78 */ mr r5, r30 +/* 80152508 0014F468 38 80 00 01 */ li r4, 1 +/* 8015250C 0014F46C 80 63 04 90 */ lwz r3, 0x490(r3) +/* 80152510 0014F470 4B EE D7 35 */ bl DropBomb__10CPlayerGunFQ210CPlayerGun8EBWeaponR13CStateManager +/* 80152514 0014F474 48 00 03 8C */ b lbl_801528A0 +lbl_80152518: +/* 80152518 0014F478 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 8015251C 0014F47C 7F C5 F3 78 */ mr r5, r30 +/* 80152520 0014F480 38 80 00 00 */ li r4, 0 +/* 80152524 0014F484 80 63 04 90 */ lwz r3, 0x490(r3) +/* 80152528 0014F488 4B EE D7 1D */ bl DropBomb__10CPlayerGunFQ210CPlayerGun8EBWeaponR13CStateManager +/* 8015252C 0014F48C 48 00 03 74 */ b lbl_801528A0 +/* 80152530 0014F490 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 80152534 0014F494 2C 1C 00 13 */ cmpwi r28, 0x13 +/* 80152538 0014F498 38 63 01 F8 */ addi r3, r3, 0x1f8 +/* 8015253C 0014F49C 40 82 00 10 */ bne lbl_8015254C +/* 80152540 0014F4A0 38 9F 00 EC */ addi r4, r31, 0xec +/* 80152544 0014F4A4 48 11 52 69 */ bl ActivateContinueDelayHintTimer__12CHintOptionsFPCc +/* 80152548 0014F4A8 48 00 03 58 */ b lbl_801528A0 +lbl_8015254C: +/* 8015254C 0014F4AC 2C 1C 00 07 */ cmpwi r28, 7 +/* 80152550 0014F4B0 40 82 00 10 */ bne lbl_80152560 +/* 80152554 0014F4B4 38 9F 00 EC */ addi r4, r31, 0xec +/* 80152558 0014F4B8 48 11 53 59 */ bl ActivateImmediateHintTimer__12CHintOptionsFPCc +/* 8015255C 0014F4BC 48 00 03 44 */ b lbl_801528A0 +lbl_80152560: +/* 80152560 0014F4C0 2C 1C 00 05 */ cmpwi r28, 5 +/* 80152564 0014F4C4 40 82 03 3C */ bne lbl_801528A0 +/* 80152568 0014F4C8 38 9F 00 EC */ addi r4, r31, 0xec +/* 8015256C 0014F4CC 48 11 52 BD */ bl DelayHint__12CHintOptionsFPCc +/* 80152570 0014F4D0 48 00 03 30 */ b lbl_801528A0 +/* 80152574 0014F4D4 2C 1C 00 07 */ cmpwi r28, 7 +/* 80152578 0014F4D8 40 82 01 18 */ bne lbl_80152690 +/* 8015257C 0014F4DC 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 80152580 0014F4E0 80 9F 00 EC */ lwz r4, 0xec(r31) +/* 80152584 0014F4E4 81 83 00 00 */ lwz r12, 0(r3) +/* 80152588 0014F4E8 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 8015258C 0014F4EC 7D 89 03 A6 */ mtctr r12 +/* 80152590 0014F4F0 4E 80 04 21 */ bctrl +/* 80152594 0014F4F4 7C 7C 1B 79 */ or. r28, r3, r3 +/* 80152598 0014F4F8 41 82 00 0C */ beq lbl_801525A4 +/* 8015259C 0014F4FC 83 BC 00 04 */ lwz r29, 4(r28) +/* 801525A0 0014F500 48 00 00 08 */ b lbl_801525A8 +lbl_801525A4: +/* 801525A4 0014F504 3B A0 FF FF */ li r29, -1 +lbl_801525A8: +/* 801525A8 0014F508 C0 3F 01 04 */ lfs f1, 0x104(r31) +/* 801525AC 0014F50C 38 61 00 8C */ addi r3, r1, 0x8c +/* 801525B0 0014F510 C0 1F 01 08 */ lfs f0, 0x108(r31) +/* 801525B4 0014F514 FC 20 08 1E */ fctiwz f1, f1 +/* 801525B8 0014F518 FC 00 00 1E */ fctiwz f0, f0 +/* 801525BC 0014F51C D8 21 01 50 */ stfd f1, 0x150(r1) +/* 801525C0 0014F520 D8 01 01 58 */ stfd f0, 0x158(r1) +/* 801525C4 0014F524 80 81 01 54 */ lwz r4, 0x154(r1) +/* 801525C8 0014F528 80 A1 01 5C */ lwz r5, 0x15c(r1) +/* 801525CC 0014F52C 48 1C 1D 81 */ bl __ct__9CVector2iFii +/* 801525D0 0014F530 C0 3F 00 FC */ lfs f1, 0xfc(r31) +/* 801525D4 0014F534 7C 7B 1B 78 */ mr r27, r3 +/* 801525D8 0014F538 C0 1F 01 00 */ lfs f0, 0x100(r31) +/* 801525DC 0014F53C 38 61 00 94 */ addi r3, r1, 0x94 +/* 801525E0 0014F540 FC 20 08 1E */ fctiwz f1, f1 +/* 801525E4 0014F544 FC 00 00 1E */ fctiwz f0, f0 +/* 801525E8 0014F548 D8 21 01 60 */ stfd f1, 0x160(r1) +/* 801525EC 0014F54C D8 01 01 68 */ stfd f0, 0x168(r1) +/* 801525F0 0014F550 80 81 01 64 */ lwz r4, 0x164(r1) +/* 801525F4 0014F554 80 A1 01 6C */ lwz r5, 0x16c(r1) +/* 801525F8 0014F558 48 1C 1D 55 */ bl __ct__9CVector2iFii +/* 801525FC 0014F55C 7C 65 1B 78 */ mr r5, r3 +/* 80152600 0014F560 7F C3 F3 78 */ mr r3, r30 +/* 80152604 0014F564 7F A4 EB 78 */ mr r4, r29 +/* 80152608 0014F568 7F 66 DB 78 */ mr r6, r27 +/* 8015260C 0014F56C 4B EF 19 FD */ bl sub_80044008 +/* 80152610 0014F570 28 1C 00 00 */ cmplwi r28, 0 +/* 80152614 0014F574 41 82 02 8C */ beq lbl_801528A0 +/* 80152618 0014F578 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8015261C 0014F57C 38 61 00 84 */ addi r3, r1, 0x84 +/* 80152620 0014F580 80 BF 00 EC */ lwz r5, 0xec(r31) +/* 80152624 0014F584 81 84 00 00 */ lwz r12, 0(r4) +/* 80152628 0014F588 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8015262C 0014F58C 7D 89 03 A6 */ mtctr r12 +/* 80152630 0014F590 4E 80 04 21 */ bctrl +/* 80152634 0014F594 88 1F 01 F0 */ lbz r0, 0x1f0(r31) +/* 80152638 0014F598 28 00 00 00 */ cmplwi r0, 0 +/* 8015263C 0014F59C 40 82 00 20 */ bne lbl_8015265C +/* 80152640 0014F5A0 34 7F 01 E8 */ addic. r3, r31, 0x1e8 +/* 80152644 0014F5A4 41 82 00 0C */ beq lbl_80152650 +/* 80152648 0014F5A8 38 81 00 84 */ addi r4, r1, 0x84 +/* 8015264C 0014F5AC 48 1E E8 5D */ bl __ct__6CTokenFRC6CToken +lbl_80152650: +/* 80152650 0014F5B0 38 00 00 01 */ li r0, 1 +/* 80152654 0014F5B4 98 1F 01 F0 */ stb r0, 0x1f0(r31) +/* 80152658 0014F5B8 48 00 00 10 */ b lbl_80152668 +lbl_8015265C: +/* 8015265C 0014F5BC 38 7F 01 E8 */ addi r3, r31, 0x1e8 +/* 80152660 0014F5C0 38 81 00 84 */ addi r4, r1, 0x84 +/* 80152664 0014F5C4 48 1E E6 61 */ bl __as__6CTokenFRC6CToken +lbl_80152668: +/* 80152668 0014F5C8 38 61 00 84 */ addi r3, r1, 0x84 +/* 8015266C 0014F5CC 38 80 FF FF */ li r4, -1 +/* 80152670 0014F5D0 48 1E E7 D1 */ bl __dt__6CTokenFv +/* 80152674 0014F5D4 38 7F 01 E8 */ addi r3, r31, 0x1e8 +/* 80152678 0014F5D8 48 1E E7 0D */ bl Lock__6CTokenFv +/* 8015267C 0014F5DC 88 1F 01 E5 */ lbz r0, 0x1e5(r31) +/* 80152680 0014F5E0 38 60 00 01 */ li r3, 1 +/* 80152684 0014F5E4 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 80152688 0014F5E8 98 1F 01 E5 */ stb r0, 0x1e5(r31) +/* 8015268C 0014F5EC 48 00 02 14 */ b lbl_801528A0 +lbl_80152690: +/* 80152690 0014F5F0 2C 1C 00 05 */ cmpwi r28, 5 +/* 80152694 0014F5F4 40 82 02 0C */ bne lbl_801528A0 +/* 80152698 0014F5F8 C0 3F 01 04 */ lfs f1, 0x104(r31) +/* 8015269C 0014F5FC 38 61 00 74 */ addi r3, r1, 0x74 +/* 801526A0 0014F600 C0 1F 01 08 */ lfs f0, 0x108(r31) +/* 801526A4 0014F604 FC 20 08 1E */ fctiwz f1, f1 +/* 801526A8 0014F608 FC 00 00 1E */ fctiwz f0, f0 +/* 801526AC 0014F60C D8 21 01 68 */ stfd f1, 0x168(r1) +/* 801526B0 0014F610 D8 01 01 60 */ stfd f0, 0x160(r1) +/* 801526B4 0014F614 80 81 01 6C */ lwz r4, 0x16c(r1) +/* 801526B8 0014F618 80 A1 01 64 */ lwz r5, 0x164(r1) +/* 801526BC 0014F61C 48 1C 1C 91 */ bl __ct__9CVector2iFii +/* 801526C0 0014F620 C0 3F 00 FC */ lfs f1, 0xfc(r31) +/* 801526C4 0014F624 7C 7B 1B 78 */ mr r27, r3 +/* 801526C8 0014F628 C0 1F 01 00 */ lfs f0, 0x100(r31) +/* 801526CC 0014F62C 38 61 00 7C */ addi r3, r1, 0x7c +/* 801526D0 0014F630 FC 20 08 1E */ fctiwz f1, f1 +/* 801526D4 0014F634 FC 00 00 1E */ fctiwz f0, f0 +/* 801526D8 0014F638 D8 21 01 58 */ stfd f1, 0x158(r1) +/* 801526DC 0014F63C D8 01 01 50 */ stfd f0, 0x150(r1) +/* 801526E0 0014F640 80 81 01 5C */ lwz r4, 0x15c(r1) +/* 801526E4 0014F644 80 A1 01 54 */ lwz r5, 0x154(r1) +/* 801526E8 0014F648 48 1C 1C 65 */ bl __ct__9CVector2iFii +/* 801526EC 0014F64C 7C 65 1B 78 */ mr r5, r3 +/* 801526F0 0014F650 7F C3 F3 78 */ mr r3, r30 +/* 801526F4 0014F654 7F 66 DB 78 */ mr r6, r27 +/* 801526F8 0014F658 38 80 FF FF */ li r4, -1 +/* 801526FC 0014F65C 4B EF 19 0D */ bl sub_80044008 +/* 80152700 0014F660 38 7F 01 E8 */ addi r3, r31, 0x1e8 +/* 80152704 0014F664 38 81 00 D4 */ addi r4, r1, 0xd4 +/* 80152708 0014F668 38 00 00 00 */ li r0, 0 +/* 8015270C 0014F66C 7C 03 20 40 */ cmplw r3, r4 +/* 80152710 0014F670 98 01 00 DC */ stb r0, 0xdc(r1) +/* 80152714 0014F674 41 82 00 54 */ beq lbl_80152768 +/* 80152718 0014F678 28 00 00 00 */ cmplwi r0, 0 +/* 8015271C 0014F67C 41 82 00 30 */ beq lbl_8015274C +/* 80152720 0014F680 88 1F 01 F0 */ lbz r0, 0x1f0(r31) +/* 80152724 0014F684 28 00 00 00 */ cmplwi r0, 0 +/* 80152728 0014F688 40 82 00 1C */ bne lbl_80152744 +/* 8015272C 0014F68C 34 7F 01 E8 */ addic. r3, r31, 0x1e8 +/* 80152730 0014F690 41 82 00 08 */ beq lbl_80152738 +/* 80152734 0014F694 48 1E E7 75 */ bl __ct__6CTokenFRC6CToken +lbl_80152738: +/* 80152738 0014F698 38 00 00 01 */ li r0, 1 +/* 8015273C 0014F69C 98 1F 01 F0 */ stb r0, 0x1f0(r31) +/* 80152740 0014F6A0 48 00 00 28 */ b lbl_80152768 +lbl_80152744: +/* 80152744 0014F6A4 48 1E E5 81 */ bl __as__6CTokenFRC6CToken +/* 80152748 0014F6A8 48 00 00 20 */ b lbl_80152768 +lbl_8015274C: +/* 8015274C 0014F6AC 88 1F 01 F0 */ lbz r0, 0x1f0(r31) +/* 80152750 0014F6B0 28 00 00 00 */ cmplwi r0, 0 +/* 80152754 0014F6B4 41 82 00 0C */ beq lbl_80152760 +/* 80152758 0014F6B8 38 80 FF FF */ li r4, -1 +/* 8015275C 0014F6BC 48 1E E6 E5 */ bl __dt__6CTokenFv +lbl_80152760: +/* 80152760 0014F6C0 38 00 00 00 */ li r0, 0 +/* 80152764 0014F6C4 98 1F 01 F0 */ stb r0, 0x1f0(r31) +lbl_80152768: +/* 80152768 0014F6C8 88 01 00 DC */ lbz r0, 0xdc(r1) +/* 8015276C 0014F6CC 28 00 00 00 */ cmplwi r0, 0 +/* 80152770 0014F6D0 41 82 00 10 */ beq lbl_80152780 +/* 80152774 0014F6D4 38 61 00 D4 */ addi r3, r1, 0xd4 +/* 80152778 0014F6D8 38 80 FF FF */ li r4, -1 +/* 8015277C 0014F6DC 48 1E E6 C5 */ bl __dt__6CTokenFv +lbl_80152780: +/* 80152780 0014F6E0 38 60 00 00 */ li r3, 0 +/* 80152784 0014F6E4 98 61 00 DC */ stb r3, 0xdc(r1) +/* 80152788 0014F6E8 88 1F 01 E5 */ lbz r0, 0x1e5(r31) +/* 8015278C 0014F6EC 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 80152790 0014F6F0 98 1F 01 E5 */ stb r0, 0x1e5(r31) +/* 80152794 0014F6F4 48 00 01 0C */ b lbl_801528A0 +/* 80152798 0014F6F8 2C 1C 00 13 */ cmpwi r28, 0x13 +/* 8015279C 0014F6FC 41 82 00 0C */ beq lbl_801527A8 +/* 801527A0 0014F700 2C 1C 00 0D */ cmpwi r28, 0xd +/* 801527A4 0014F704 40 82 00 FC */ bne lbl_801528A0 +lbl_801527A8: +/* 801527A8 0014F708 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 801527AC 0014F70C 80 1F 00 04 */ lwz r0, 4(r31) +/* 801527B0 0014F710 80 63 00 04 */ lwz r3, 4(r3) +/* 801527B4 0014F714 7C 03 00 00 */ cmpw r3, r0 +/* 801527B8 0014F718 40 82 00 E8 */ bne lbl_801528A0 +/* 801527BC 0014F71C 7F E3 FB 78 */ mr r3, r31 +/* 801527C0 0014F720 7F C5 F3 78 */ mr r5, r30 +/* 801527C4 0014F724 38 80 00 09 */ li r4, 9 +/* 801527C8 0014F728 38 C0 FF FF */ li r6, -1 +/* 801527CC 0014F72C 4B EF E8 F5 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 801527D0 0014F730 48 00 00 D0 */ b lbl_801528A0 +/* 801527D4 0014F734 2C 1C 00 07 */ cmpwi r28, 7 +/* 801527D8 0014F738 40 82 00 1C */ bne lbl_801527F4 +/* 801527DC 0014F73C 7F E3 FB 78 */ mr r3, r31 +/* 801527E0 0014F740 7F C6 F3 78 */ mr r6, r30 +/* 801527E4 0014F744 38 80 00 28 */ li r4, 0x28 +/* 801527E8 0014F748 38 A0 00 33 */ li r5, 0x33 +/* 801527EC 0014F74C 4B F0 1A C9 */ bl AddMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +/* 801527F0 0014F750 48 00 00 B0 */ b lbl_801528A0 +lbl_801527F4: +/* 801527F4 0014F754 2C 1C 00 05 */ cmpwi r28, 5 +/* 801527F8 0014F758 40 82 00 A8 */ bne lbl_801528A0 +/* 801527FC 0014F75C 7F E3 FB 78 */ mr r3, r31 +/* 80152800 0014F760 7F C6 F3 78 */ mr r6, r30 +/* 80152804 0014F764 38 80 00 28 */ li r4, 0x28 +/* 80152808 0014F768 38 A0 00 33 */ li r5, 0x33 +/* 8015280C 0014F76C 4B F0 16 C9 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager +/* 80152810 0014F770 48 00 00 90 */ b lbl_801528A0 +/* 80152814 0014F774 2C 1C 00 07 */ cmpwi r28, 7 +/* 80152818 0014F778 C0 5F 01 00 */ lfs f2, 0x100(r31) +/* 8015281C 0014F77C 40 82 00 14 */ bne lbl_80152830 +/* 80152820 0014F780 80 7E 08 70 */ lwz r3, 0x870(r30) +/* 80152824 0014F784 C0 3F 00 FC */ lfs f1, 0xfc(r31) +/* 80152828 0014F788 4B EB 8D A5 */ bl sub_8000b5cc +/* 8015282C 0014F78C 48 00 00 74 */ b lbl_801528A0 +lbl_80152830: +/* 80152830 0014F790 2C 1C 00 05 */ cmpwi r28, 5 +/* 80152834 0014F794 40 82 00 6C */ bne lbl_801528A0 +/* 80152838 0014F798 80 7E 08 70 */ lwz r3, 0x870(r30) +/* 8015283C 0014F79C C0 22 9D B4 */ lfs f1, lbl_805ABAD4@sda21(r2) +/* 80152840 0014F7A0 4B EB 8D 8D */ bl sub_8000b5cc +/* 80152844 0014F7A4 48 00 00 5C */ b lbl_801528A0 +/* 80152848 0014F7A8 2C 1C 00 13 */ cmpwi r28, 0x13 +/* 8015284C 0014F7AC 40 82 00 54 */ bne lbl_801528A0 +/* 80152850 0014F7B0 7F C3 F3 78 */ mr r3, r30 +/* 80152854 0014F7B4 38 80 00 03 */ li r4, 3 +/* 80152858 0014F7B8 4B EF 20 09 */ bl DeferStateTransition__13CStateManagerF23EStateManagerTransition +/* 8015285C 0014F7BC 48 00 00 44 */ b lbl_801528A0 +/* 80152860 0014F7C0 2C 1C 00 13 */ cmpwi r28, 0x13 +/* 80152864 0014F7C4 40 82 00 3C */ bne lbl_801528A0 +/* 80152868 0014F7C8 7F E3 FB 78 */ mr r3, r31 +/* 8015286C 0014F7CC 7F C4 F3 78 */ mr r4, r30 +/* 80152870 0014F7D0 4B FF CA C5 */ bl GetSpecialEnding__22CScriptSpecialFunctionCFv +/* 80152874 0014F7D4 C0 1F 00 FC */ lfs f0, 0xfc(r31) +/* 80152878 0014F7D8 FC 00 00 1E */ fctiwz f0, f0 +/* 8015287C 0014F7DC D8 01 01 68 */ stfd f0, 0x168(r1) +/* 80152880 0014F7E0 80 01 01 6C */ lwz r0, 0x16c(r1) +/* 80152884 0014F7E4 7C 03 00 00 */ cmpw r3, r0 +/* 80152888 0014F7E8 40 82 00 18 */ bne lbl_801528A0 +/* 8015288C 0014F7EC 7F E3 FB 78 */ mr r3, r31 +/* 80152890 0014F7F0 7F C5 F3 78 */ mr r5, r30 +/* 80152894 0014F7F4 38 80 00 09 */ li r4, 9 +/* 80152898 0014F7F8 38 C0 FF FF */ li r6, -1 +/* 8015289C 0014F7FC 4B EF E8 25 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_801528A0: +/* 801528A0 0014F800 E3 E1 01 B8 */ psq_l f31, 440(r1), 0, qr0 +/* 801528A4 0014F804 CB E1 01 B0 */ lfd f31, 0x1b0(r1) +/* 801528A8 0014F808 E3 C1 01 A8 */ psq_l f30, 424(r1), 0, qr0 +/* 801528AC 0014F80C CB C1 01 A0 */ lfd f30, 0x1a0(r1) +/* 801528B0 0014F810 E3 A1 01 98 */ psq_l f29, 408(r1), 0, qr0 +/* 801528B4 0014F814 CB A1 01 90 */ lfd f29, 0x190(r1) +/* 801528B8 0014F818 BB 41 01 78 */ lmw r26, 0x178(r1) +/* 801528BC 0014F81C 80 01 01 C4 */ lwz r0, 0x1c4(r1) +/* 801528C0 0014F820 7C 08 03 A6 */ mtlr r0 +/* 801528C4 0014F824 38 21 01 C0 */ addi r1, r1, 0x1c0 +/* 801528C8 0014F828 4E 80 00 20 */ blr + +.global PreRender__22CScriptSpecialFunctionFR13CStateManagerRC14CFrustumPlanes +PreRender__22CScriptSpecialFunctionFR13CStateManagerRC14CFrustumPlanes: +/* 801528CC 0014F82C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 801528D0 0014F830 7C 08 02 A6 */ mflr r0 +/* 801528D4 0014F834 90 01 00 54 */ stw r0, 0x54(r1) +/* 801528D8 0014F838 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 801528DC 0014F83C 7C BF 2B 78 */ mr r31, r5 +/* 801528E0 0014F840 93 C1 00 48 */ stw r30, 0x48(r1) +/* 801528E4 0014F844 7C 7E 1B 78 */ mr r30, r3 +/* 801528E8 0014F848 80 63 00 E8 */ lwz r3, 0xe8(r3) +/* 801528EC 0014F84C 2C 03 00 2F */ cmpwi r3, 0x2f +/* 801528F0 0014F850 41 82 00 14 */ beq lbl_80152904 +/* 801528F4 0014F854 40 80 01 00 */ bge lbl_801529F4 +/* 801528F8 0014F858 2C 03 00 09 */ cmpwi r3, 9 +/* 801528FC 0014F85C 41 82 00 08 */ beq lbl_80152904 +/* 80152900 0014F860 48 00 00 F4 */ b lbl_801529F4 +lbl_80152904: +/* 80152904 0014F864 88 1E 00 30 */ lbz r0, 0x30(r30) +/* 80152908 0014F868 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8015290C 0014F86C 41 82 00 E8 */ beq lbl_801529F4 +/* 80152910 0014F870 2C 03 00 2F */ cmpwi r3, 0x2f +/* 80152914 0014F874 40 82 00 78 */ bne lbl_8015298C +/* 80152918 0014F878 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 8015291C 0014F87C 38 61 00 2C */ addi r3, r1, 0x2c +/* 80152920 0014F880 C0 1E 01 14 */ lfs f0, 0x114(r30) +/* 80152924 0014F884 38 81 00 14 */ addi r4, r1, 0x14 +/* 80152928 0014F888 C0 7E 00 50 */ lfs f3, 0x50(r30) +/* 8015292C 0014F88C 38 A1 00 20 */ addi r5, r1, 0x20 +/* 80152930 0014F890 C0 3E 01 10 */ lfs f1, 0x110(r30) +/* 80152934 0014F894 EC 82 00 2A */ fadds f4, f2, f0 +/* 80152938 0014F898 C0 DE 00 40 */ lfs f6, 0x40(r30) +/* 8015293C 0014F89C EC 42 00 28 */ fsubs f2, f2, f0 +/* 80152940 0014F8A0 C0 1E 01 0C */ lfs f0, 0x10c(r30) +/* 80152944 0014F8A4 EC A3 08 2A */ fadds f5, f3, f1 +/* 80152948 0014F8A8 EC 63 08 28 */ fsubs f3, f3, f1 +/* 8015294C 0014F8AC EC 26 00 2A */ fadds f1, f6, f0 +/* 80152950 0014F8B0 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 80152954 0014F8B4 EC 06 00 28 */ fsubs f0, f6, f0 +/* 80152958 0014F8B8 D0 A1 00 24 */ stfs f5, 0x24(r1) +/* 8015295C 0014F8BC D0 21 00 20 */ stfs f1, 0x20(r1) +/* 80152960 0014F8C0 C0 3E 00 FC */ lfs f1, 0xfc(r30) +/* 80152964 0014F8C4 EC 24 08 2A */ fadds f1, f4, f1 +/* 80152968 0014F8C8 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8015296C 0014F8CC D0 61 00 18 */ stfs f3, 0x18(r1) +/* 80152970 0014F8D0 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 80152974 0014F8D4 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 80152978 0014F8D8 48 1E 5B 91 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8015297C 0014F8DC 7F E3 FB 78 */ mr r3, r31 +/* 80152980 0014F8E0 38 81 00 2C */ addi r4, r1, 0x2c +/* 80152984 0014F8E4 48 1F 28 4D */ bl BoxInFrustumPlanes__14CFrustumPlanesCFRC6CAABox +/* 80152988 0014F8E8 48 00 00 28 */ b lbl_801529B0 +lbl_8015298C: +/* 8015298C 0014F8EC C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 80152990 0014F8F0 7F E3 FB 78 */ mr r3, r31 +/* 80152994 0014F8F4 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 80152998 0014F8F8 38 81 00 08 */ addi r4, r1, 8 +/* 8015299C 0014F8FC C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 801529A0 0014F900 D0 01 00 08 */ stfs f0, 8(r1) +/* 801529A4 0014F904 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 801529A8 0014F908 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 801529AC 0014F90C 48 1F 26 21 */ bl PointInFrustumPlanes__14CFrustumPlanesCFRC9CVector3f +lbl_801529B0: +/* 801529B0 0014F910 88 BE 01 E4 */ lbz r5, 0x1e4(r30) +/* 801529B4 0014F914 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 801529B8 0014F918 54 A4 FF FE */ rlwinm r4, r5, 0x1f, 0x1f, 0x1f +/* 801529BC 0014F91C 7C 04 00 40 */ cmplw r4, r0 +/* 801529C0 0014F920 41 82 00 34 */ beq lbl_801529F4 +/* 801529C4 0014F924 28 00 00 00 */ cmplwi r0, 0 +/* 801529C8 0014F928 41 82 00 14 */ beq lbl_801529DC +/* 801529CC 0014F92C 38 00 00 01 */ li r0, 1 +/* 801529D0 0014F930 50 05 1F 38 */ rlwimi r5, r0, 3, 0x1c, 0x1c +/* 801529D4 0014F934 98 BE 01 E4 */ stb r5, 0x1e4(r30) +/* 801529D8 0014F938 48 00 00 10 */ b lbl_801529E8 +lbl_801529DC: +/* 801529DC 0014F93C 38 00 00 01 */ li r0, 1 +/* 801529E0 0014F940 50 05 17 7A */ rlwimi r5, r0, 2, 0x1d, 0x1d +/* 801529E4 0014F944 98 BE 01 E4 */ stb r5, 0x1e4(r30) +lbl_801529E8: +/* 801529E8 0014F948 88 1E 01 E4 */ lbz r0, 0x1e4(r30) +/* 801529EC 0014F94C 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 801529F0 0014F950 98 1E 01 E4 */ stb r0, 0x1e4(r30) +lbl_801529F4: +/* 801529F4 0014F954 80 01 00 54 */ lwz r0, 0x54(r1) +/* 801529F8 0014F958 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 801529FC 0014F95C 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 80152A00 0014F960 7C 08 03 A6 */ mtlr r0 +/* 80152A04 0014F964 38 21 00 50 */ addi r1, r1, 0x50 +/* 80152A08 0014F968 4E 80 00 20 */ blr + +.global AddToRenderer__22CScriptSpecialFunctionCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__22CScriptSpecialFunctionCFRC14CFrustumPlanesRC13CStateManager: +/* 80152A0C 0014F96C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80152A10 0014F970 7C 08 02 A6 */ mflr r0 +/* 80152A14 0014F974 90 01 00 14 */ stw r0, 0x14(r1) +/* 80152A18 0014F978 88 03 00 30 */ lbz r0, 0x30(r3) +/* 80152A1C 0014F97C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80152A20 0014F980 41 82 00 24 */ beq lbl_80152A44 +/* 80152A24 0014F984 80 03 00 E8 */ lwz r0, 0xe8(r3) +/* 80152A28 0014F988 2C 00 00 2F */ cmpwi r0, 0x2f +/* 80152A2C 0014F98C 40 82 00 18 */ bne lbl_80152A44 +/* 80152A30 0014F990 88 03 01 E4 */ lbz r0, 0x1e4(r3) +/* 80152A34 0014F994 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 80152A38 0014F998 41 82 00 0C */ beq lbl_80152A44 +/* 80152A3C 0014F99C 7C A4 2B 78 */ mr r4, r5 +/* 80152A40 0014F9A0 4B F0 1F 8D */ bl EnsureRendered__6CActorCFRC13CStateManager +lbl_80152A44: +/* 80152A44 0014F9A4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80152A48 0014F9A8 7C 08 03 A6 */ mtlr r0 +/* 80152A4C 0014F9AC 38 21 00 10 */ addi r1, r1, 0x10 +/* 80152A50 0014F9B0 4E 80 00 20 */ blr + +.global Think__22CScriptSpecialFunctionFfR13CStateManager +Think__22CScriptSpecialFunctionFfR13CStateManager: +/* 80152A54 0014F9B4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80152A58 0014F9B8 7C 08 02 A6 */ mflr r0 +/* 80152A5C 0014F9BC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80152A60 0014F9C0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80152A64 0014F9C4 7C 9F 23 78 */ mr r31, r4 +/* 80152A68 0014F9C8 93 C1 00 08 */ stw r30, 8(r1) +/* 80152A6C 0014F9CC 7C 7E 1B 78 */ mr r30, r3 +/* 80152A70 0014F9D0 88 03 00 30 */ lbz r0, 0x30(r3) +/* 80152A74 0014F9D4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80152A78 0014F9D8 41 82 01 30 */ beq lbl_80152BA8 +/* 80152A7C 0014F9DC 80 1E 00 E8 */ lwz r0, 0xe8(r30) +/* 80152A80 0014F9E0 28 00 00 19 */ cmplwi r0, 0x19 +/* 80152A84 0014F9E4 41 81 01 24 */ bgt lbl_80152BA8 +/* 80152A88 0014F9E8 3C A0 80 3E */ lis r5, lbl_803E2CA0@ha +/* 80152A8C 0014F9EC 54 00 10 3A */ slwi r0, r0, 2 +/* 80152A90 0014F9F0 38 A5 2C A0 */ addi r5, r5, lbl_803E2CA0@l +/* 80152A94 0014F9F4 7C 05 00 2E */ lwzx r0, r5, r0 +/* 80152A98 0014F9F8 7C 09 03 A6 */ mtctr r0 +/* 80152A9C 0014F9FC 4E 80 04 20 */ bctr +/* 80152AA0 0014FA00 4B FF E4 D1 */ bl ThinkPlayerFollowLocator__22CScriptSpecialFunctionFfR13CStateManager +/* 80152AA4 0014FA04 48 00 01 04 */ b lbl_80152BA8 +/* 80152AA8 0014FA08 38 A0 00 00 */ li r5, 0 +/* 80152AAC 0014FA0C 4B FF D7 E1 */ bl ThinkSpinnerController__22CScriptSpecialFunctionFfR13CStateManagerQ222CScriptSpecialFunction22ESpinnerControllerMode +/* 80152AB0 0014FA10 48 00 00 F8 */ b lbl_80152BA8 +/* 80152AB4 0014FA14 38 A0 00 01 */ li r5, 1 +/* 80152AB8 0014FA18 4B FF D7 D5 */ bl ThinkSpinnerController__22CScriptSpecialFunctionFfR13CStateManagerQ222CScriptSpecialFunction22ESpinnerControllerMode +/* 80152ABC 0014FA1C 48 00 00 EC */ b lbl_80152BA8 +/* 80152AC0 0014FA20 4B FF D5 99 */ bl ThinkObjectFollowLocator__22CScriptSpecialFunctionFfR13CStateManager +/* 80152AC4 0014FA24 48 00 00 E4 */ b lbl_80152BA8 +/* 80152AC8 0014FA28 4B FF D3 CD */ bl ThinkObjectFollowObject__22CScriptSpecialFunctionFfR13CStateManager +/* 80152ACC 0014FA2C 48 00 00 DC */ b lbl_80152BA8 +/* 80152AD0 0014FA30 4B FF CE F1 */ bl ThinkChaffTarget__22CScriptSpecialFunctionFfR13CStateManager +/* 80152AD4 0014FA34 48 00 00 D4 */ b lbl_80152BA8 +/* 80152AD8 0014FA38 88 9E 01 E4 */ lbz r4, 0x1e4(r30) +/* 80152ADC 0014FA3C 54 80 EF FF */ rlwinm. r0, r4, 0x1d, 0x1f, 0x1f +/* 80152AE0 0014FA40 41 82 00 20 */ beq lbl_80152B00 +/* 80152AE4 0014FA44 38 00 00 00 */ li r0, 0 +/* 80152AE8 0014FA48 7F E5 FB 78 */ mr r5, r31 +/* 80152AEC 0014FA4C 50 04 1F 38 */ rlwimi r4, r0, 3, 0x1c, 0x1c +/* 80152AF0 0014FA50 38 C0 FF FF */ li r6, -1 +/* 80152AF4 0014FA54 98 9E 01 E4 */ stb r4, 0x1e4(r30) +/* 80152AF8 0014FA58 38 80 00 03 */ li r4, 3 +/* 80152AFC 0014FA5C 4B EF E5 C5 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_80152B00: +/* 80152B00 0014FA60 88 9E 01 E4 */ lbz r4, 0x1e4(r30) +/* 80152B04 0014FA64 54 80 F7 FF */ rlwinm. r0, r4, 0x1e, 0x1f, 0x1f +/* 80152B08 0014FA68 41 82 00 A0 */ beq lbl_80152BA8 +/* 80152B0C 0014FA6C 38 00 00 00 */ li r0, 0 +/* 80152B10 0014FA70 7F C3 F3 78 */ mr r3, r30 +/* 80152B14 0014FA74 50 04 17 7A */ rlwimi r4, r0, 2, 0x1d, 0x1d +/* 80152B18 0014FA78 7F E5 FB 78 */ mr r5, r31 +/* 80152B1C 0014FA7C 98 9E 01 E4 */ stb r4, 0x1e4(r30) +/* 80152B20 0014FA80 38 80 00 04 */ li r4, 4 +/* 80152B24 0014FA84 38 C0 FF FF */ li r6, -1 +/* 80152B28 0014FA88 4B EF E5 99 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 80152B2C 0014FA8C 48 00 00 7C */ b lbl_80152BA8 +/* 80152B30 0014FA90 4B FF EB 7D */ bl ThinkSaveStation__22CScriptSpecialFunctionFfR13CStateManager +/* 80152B34 0014FA94 48 00 00 74 */ b lbl_80152BA8 +/* 80152B38 0014FA98 4B FF E5 E5 */ bl ThinkIntroBossRingController__22CScriptSpecialFunctionFfR13CStateManager +/* 80152B3C 0014FA9C 48 00 00 6C */ b lbl_80152BA8 +/* 80152B40 0014FAA0 4B FF CD F9 */ bl ThinkRainSimulator__22CScriptSpecialFunctionFfR13CStateManager +/* 80152B44 0014FAA4 48 00 00 64 */ b lbl_80152BA8 +/* 80152B48 0014FAA8 4B FF CB F1 */ bl ThinkAreaDamage__22CScriptSpecialFunctionFfR13CStateManager +/* 80152B4C 0014FAAC 48 00 00 5C */ b lbl_80152BA8 +/* 80152B50 0014FAB0 4B FF C9 F1 */ bl sub_8014f540 +/* 80152B54 0014FAB4 48 00 00 54 */ b lbl_80152BA8 +/* 80152B58 0014FAB8 4B FF C9 65 */ bl ThinkPlayerInArea__22CScriptSpecialFunctionFfR13CStateManager +/* 80152B5C 0014FABC 48 00 00 4C */ b lbl_80152BA8 +/* 80152B60 0014FAC0 88 1E 01 F0 */ lbz r0, 0x1f0(r30) +/* 80152B64 0014FAC4 28 00 00 00 */ cmplwi r0, 0 +/* 80152B68 0014FAC8 41 82 00 40 */ beq lbl_80152BA8 +/* 80152B6C 0014FACC 80 9E 01 E8 */ lwz r4, 0x1e8(r30) +/* 80152B70 0014FAD0 80 04 00 10 */ lwz r0, 0x10(r4) +/* 80152B74 0014FAD4 28 00 00 00 */ cmplwi r0, 0 +/* 80152B78 0014FAD8 41 82 00 30 */ beq lbl_80152BA8 +/* 80152B7C 0014FADC 88 1E 01 E5 */ lbz r0, 0x1e5(r30) +/* 80152B80 0014FAE0 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 80152B84 0014FAE4 41 82 00 24 */ beq lbl_80152BA8 +/* 80152B88 0014FAE8 7F E5 FB 78 */ mr r5, r31 +/* 80152B8C 0014FAEC 38 80 00 07 */ li r4, 7 +/* 80152B90 0014FAF0 38 C0 FF FF */ li r6, -1 +/* 80152B94 0014FAF4 4B EF E5 2D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +/* 80152B98 0014FAF8 88 1E 01 E5 */ lbz r0, 0x1e5(r30) +/* 80152B9C 0014FAFC 38 60 00 00 */ li r3, 0 +/* 80152BA0 0014FB00 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 80152BA4 0014FB04 98 1E 01 E5 */ stb r0, 0x1e5(r30) +lbl_80152BA8: +/* 80152BA8 0014FB08 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80152BAC 0014FB0C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80152BB0 0014FB10 83 C1 00 08 */ lwz r30, 8(r1) +/* 80152BB4 0014FB14 7C 08 03 A6 */ mtlr r0 +/* 80152BB8 0014FB18 38 21 00 10 */ addi r1, r1, 0x10 +/* 80152BBC 0014FB1C 4E 80 00 20 */ blr + +.global "__ct__22CScriptSpecialFunctionF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fQ222CScriptSpecialFunction16ESpecialFunctionRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>ffffRC9CVector3fRC6CColorbRC11CDamageInfoUiUiUiUsUsUs" +"__ct__22CScriptSpecialFunctionF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fQ222CScriptSpecialFunction16ESpecialFunctionRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>ffffRC9CVector3fRC6CColorbRC11CDamageInfoUiUiUiUsUsUs": +/* 80152BC0 0014FB20 94 21 FE 70 */ stwu r1, -0x190(r1) +/* 80152BC4 0014FB24 7C 08 02 A6 */ mflr r0 +/* 80152BC8 0014FB28 90 01 01 94 */ stw r0, 0x194(r1) +/* 80152BCC 0014FB2C DB E1 01 80 */ stfd f31, 0x180(r1) +/* 80152BD0 0014FB30 F3 E1 01 88 */ psq_st f31, 392(r1), 0, qr0 +/* 80152BD4 0014FB34 DB C1 01 70 */ stfd f30, 0x170(r1) +/* 80152BD8 0014FB38 F3 C1 01 78 */ psq_st f30, 376(r1), 0, qr0 +/* 80152BDC 0014FB3C DB A1 01 60 */ stfd f29, 0x160(r1) +/* 80152BE0 0014FB40 F3 A1 01 68 */ psq_st f29, 360(r1), 0, qr0 +/* 80152BE4 0014FB44 DB 81 01 50 */ stfd f28, 0x150(r1) +/* 80152BE8 0014FB48 F3 81 01 58 */ psq_st f28, 344(r1), 0, qr0 +/* 80152BEC 0014FB4C BD E1 01 0C */ stmw r15, 0x10c(r1) +/* 80152BF0 0014FB50 FF 80 08 90 */ fmr f28, f1 +/* 80152BF4 0014FB54 7C 7A 1B 78 */ mr r26, r3 +/* 80152BF8 0014FB58 FF A0 10 90 */ fmr f29, f2 +/* 80152BFC 0014FB5C 82 21 01 98 */ lwz r17, 0x198(r1) +/* 80152C00 0014FB60 FF C0 18 90 */ fmr f30, f3 +/* 80152C04 0014FB64 8A 41 01 9F */ lbz r18, 0x19f(r1) +/* 80152C08 0014FB68 FF E0 20 90 */ fmr f31, f4 +/* 80152C0C 0014FB6C 82 61 01 A0 */ lwz r19, 0x1a0(r1) +/* 80152C10 0014FB70 82 81 01 A4 */ lwz r20, 0x1a4(r1) +/* 80152C14 0014FB74 7C 9B 23 78 */ mr r27, r4 +/* 80152C18 0014FB78 82 A1 01 A8 */ lwz r21, 0x1a8(r1) +/* 80152C1C 0014FB7C 7C BC 2B 78 */ mr r28, r5 +/* 80152C20 0014FB80 82 C1 01 AC */ lwz r22, 0x1ac(r1) +/* 80152C24 0014FB84 7C DD 33 78 */ mr r29, r6 +/* 80152C28 0014FB88 A2 E1 01 B2 */ lhz r23, 0x1b2(r1) +/* 80152C2C 0014FB8C 7C FE 3B 78 */ mr r30, r7 +/* 80152C30 0014FB90 A3 01 01 B6 */ lhz r24, 0x1b6(r1) +/* 80152C34 0014FB94 7D 1F 43 78 */ mr r31, r8 +/* 80152C38 0014FB98 A3 21 01 BA */ lhz r25, 0x1ba(r1) +/* 80152C3C 0014FB9C 7D 2F 4B 78 */ mr r15, r9 +/* 80152C40 0014FBA0 7D 50 53 78 */ mr r16, r10 +/* 80152C44 0014FBA4 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 80152C48 0014FBA8 4B EE 7B 5D */ bl CModelDataNull__10CModelDataFv +/* 80152C4C 0014FBAC 38 61 00 50 */ addi r3, r1, 0x50 +/* 80152C50 0014FBB0 4B EC 81 E9 */ bl None__16CActorParametersFv +/* 80152C54 0014FBB4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80152C58 0014FBB8 38 80 00 00 */ li r4, 0 +/* 80152C5C 0014FBBC A1 9B 00 00 */ lhz r12, 0(r27) +/* 80152C60 0014FBC0 39 61 00 50 */ addi r11, r1, 0x50 +/* 80152C64 0014FBC4 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80152C68 0014FBC8 38 01 00 10 */ addi r0, r1, 0x10 +/* 80152C6C 0014FBCC 7F 43 D3 78 */ mr r3, r26 +/* 80152C70 0014FBD0 7E 45 93 78 */ mr r5, r18 +/* 80152C74 0014FBD4 90 81 00 1C */ stw r4, 0x1c(r1) +/* 80152C78 0014FBD8 7F 86 E3 78 */ mr r6, r28 +/* 80152C7C 0014FBDC 7F A7 EB 78 */ mr r7, r29 +/* 80152C80 0014FBE0 7F C8 F3 78 */ mr r8, r30 +/* 80152C84 0014FBE4 90 81 00 18 */ stw r4, 0x18(r1) +/* 80152C88 0014FBE8 38 81 00 14 */ addi r4, r1, 0x14 +/* 80152C8C 0014FBEC 39 21 00 B8 */ addi r9, r1, 0xb8 +/* 80152C90 0014FBF0 39 41 00 18 */ addi r10, r1, 0x18 +/* 80152C94 0014FBF4 B1 81 00 14 */ sth r12, 0x14(r1) +/* 80152C98 0014FBF8 91 61 00 08 */ stw r11, 8(r1) +/* 80152C9C 0014FBFC 90 01 00 0C */ stw r0, 0xc(r1) +/* 80152CA0 0014FC00 4B F0 2B 81 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" +/* 80152CA4 0014FC04 38 61 00 50 */ addi r3, r1, 0x50 +/* 80152CA8 0014FC08 38 80 FF FF */ li r4, -1 +/* 80152CAC 0014FC0C 4B FB 39 5D */ bl __dt__16CActorParametersFv +/* 80152CB0 0014FC10 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 80152CB4 0014FC14 38 80 FF FF */ li r4, -1 +/* 80152CB8 0014FC18 4B FC 3D 95 */ bl __dt__10CModelDataFv +/* 80152CBC 0014FC1C 3C 60 80 3E */ lis r3, lbl_803E2B68@ha +/* 80152CC0 0014FC20 7D E4 7B 78 */ mr r4, r15 +/* 80152CC4 0014FC24 38 03 2B 68 */ addi r0, r3, lbl_803E2B68@l +/* 80152CC8 0014FC28 38 7A 00 EC */ addi r3, r26, 0xec +/* 80152CCC 0014FC2C 90 1A 00 00 */ stw r0, 0(r26) +/* 80152CD0 0014FC30 93 FA 00 E8 */ stw r31, 0xe8(r26) +/* 80152CD4 0014FC34 48 1E B4 8D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80152CD8 0014FC38 D3 9A 00 FC */ stfs f28, 0xfc(r26) +/* 80152CDC 0014FC3C 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 80152CE0 0014FC40 38 83 66 70 */ addi r4, r3, skIdentity4f@l +/* 80152CE4 0014FC44 C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) +/* 80152CE8 0014FC48 D3 BA 01 00 */ stfs f29, 0x100(r26) +/* 80152CEC 0014FC4C 38 7A 01 3C */ addi r3, r26, 0x13c +/* 80152CF0 0014FC50 D3 DA 01 04 */ stfs f30, 0x104(r26) +/* 80152CF4 0014FC54 D3 FA 01 08 */ stfs f31, 0x108(r26) +/* 80152CF8 0014FC58 C0 30 00 00 */ lfs f1, 0(r16) +/* 80152CFC 0014FC5C D0 3A 01 0C */ stfs f1, 0x10c(r26) +/* 80152D00 0014FC60 C0 30 00 04 */ lfs f1, 4(r16) +/* 80152D04 0014FC64 D0 3A 01 10 */ stfs f1, 0x110(r26) +/* 80152D08 0014FC68 C0 30 00 08 */ lfs f1, 8(r16) +/* 80152D0C 0014FC6C D0 3A 01 14 */ stfs f1, 0x114(r26) +/* 80152D10 0014FC70 80 11 00 00 */ lwz r0, 0(r17) +/* 80152D14 0014FC74 90 1A 01 18 */ stw r0, 0x118(r26) +/* 80152D18 0014FC78 80 13 00 00 */ lwz r0, 0(r19) +/* 80152D1C 0014FC7C 90 1A 01 1C */ stw r0, 0x11c(r26) +/* 80152D20 0014FC80 88 13 00 04 */ lbz r0, 4(r19) +/* 80152D24 0014FC84 98 1A 01 20 */ stb r0, 0x120(r26) +/* 80152D28 0014FC88 C0 33 00 08 */ lfs f1, 8(r19) +/* 80152D2C 0014FC8C D0 3A 01 24 */ stfs f1, 0x124(r26) +/* 80152D30 0014FC90 C0 33 00 0C */ lfs f1, 0xc(r19) +/* 80152D34 0014FC94 D0 3A 01 28 */ stfs f1, 0x128(r26) +/* 80152D38 0014FC98 C0 33 00 10 */ lfs f1, 0x10(r19) +/* 80152D3C 0014FC9C D0 3A 01 2C */ stfs f1, 0x12c(r26) +/* 80152D40 0014FCA0 C0 33 00 14 */ lfs f1, 0x14(r19) +/* 80152D44 0014FCA4 D0 3A 01 30 */ stfs f1, 0x130(r26) +/* 80152D48 0014FCA8 88 13 00 18 */ lbz r0, 0x18(r19) +/* 80152D4C 0014FCAC 98 1A 01 34 */ stb r0, 0x134(r26) +/* 80152D50 0014FCB0 D0 1A 01 38 */ stfs f0, 0x138(r26) +/* 80152D54 0014FCB4 48 1B FE 21 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80152D58 0014FCB8 C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) +/* 80152D5C 0014FCBC 7E E3 BB 78 */ mr r3, r23 +/* 80152D60 0014FCC0 D0 1A 01 6C */ stfs f0, 0x16c(r26) +/* 80152D64 0014FCC4 48 19 5C 4D */ bl TranslateSFXID__11CSfxManagerFUs +/* 80152D68 0014FCC8 B0 7A 01 70 */ sth r3, 0x170(r26) +/* 80152D6C 0014FCCC 7F 03 C3 78 */ mr r3, r24 +/* 80152D70 0014FCD0 48 19 5C 41 */ bl TranslateSFXID__11CSfxManagerFUs +/* 80152D74 0014FCD4 B0 7A 01 72 */ sth r3, 0x172(r26) +/* 80152D78 0014FCD8 7F 23 CB 78 */ mr r3, r25 +/* 80152D7C 0014FCDC 48 19 5C 35 */ bl TranslateSFXID__11CSfxManagerFUs +/* 80152D80 0014FCE0 B0 7A 01 74 */ sth r3, 0x174(r26) +/* 80152D84 0014FCE4 38 00 00 00 */ li r0, 0 +/* 80152D88 0014FCE8 C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) +/* 80152D8C 0014FCEC 38 7A 01 84 */ addi r3, r26, 0x184 +/* 80152D90 0014FCF0 90 1A 01 78 */ stw r0, 0x178(r26) +/* 80152D94 0014FCF4 38 80 00 06 */ li r4, 6 +/* 80152D98 0014FCF8 38 AD 8C 50 */ addi r5, r13, lbl_805A7810@sda21 +/* 80152D9C 0014FCFC D0 1A 01 80 */ stfs f0, 0x180(r26) +/* 80152DA0 0014FD00 48 00 01 B5 */ bl "__ct__Q24rstl36vectorFRCQ24rstl17rmemory_allocator" +/* 80152DA4 0014FD04 C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) +/* 80152DA8 0014FD08 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80152DAC 0014FD0C 38 A0 00 00 */ li r5, 0 +/* 80152DB0 0014FD10 38 00 00 02 */ li r0, 2 +/* 80152DB4 0014FD14 D0 1A 01 94 */ stfs f0, 0x194(r26) +/* 80152DB8 0014FD18 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 80152DBC 0014FD1C 38 60 00 01 */ li r3, 1 +/* 80152DC0 0014FD20 90 BA 01 9C */ stw r5, 0x19c(r26) +/* 80152DC4 0014FD24 90 BA 01 A0 */ stw r5, 0x1a0(r26) +/* 80152DC8 0014FD28 90 BA 01 A4 */ stw r5, 0x1a4(r26) +/* 80152DCC 0014FD2C 90 1A 01 A8 */ stw r0, 0x1a8(r26) +/* 80152DD0 0014FD30 C0 04 00 00 */ lfs f0, 0(r4) +/* 80152DD4 0014FD34 D0 1A 01 AC */ stfs f0, 0x1ac(r26) +/* 80152DD8 0014FD38 C0 04 00 04 */ lfs f0, 4(r4) +/* 80152DDC 0014FD3C D0 1A 01 B0 */ stfs f0, 0x1b0(r26) +/* 80152DE0 0014FD40 C0 04 00 08 */ lfs f0, 8(r4) +/* 80152DE4 0014FD44 D0 1A 01 B4 */ stfs f0, 0x1b4(r26) +/* 80152DE8 0014FD48 98 7A 01 B8 */ stb r3, 0x1b8(r26) +/* 80152DEC 0014FD4C 92 9A 01 BC */ stw r20, 0x1bc(r26) +/* 80152DF0 0014FD50 92 BA 01 C0 */ stw r21, 0x1c0(r26) +/* 80152DF4 0014FD54 92 DA 01 C4 */ stw r22, 0x1c4(r26) +/* 80152DF8 0014FD58 98 BA 01 E0 */ stb r5, 0x1e0(r26) +/* 80152DFC 0014FD5C 88 1A 01 E4 */ lbz r0, 0x1e4(r26) +/* 80152E00 0014FD60 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 80152E04 0014FD64 98 1A 01 E4 */ stb r0, 0x1e4(r26) +/* 80152E08 0014FD68 88 1A 01 E4 */ lbz r0, 0x1e4(r26) +/* 80152E0C 0014FD6C 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 80152E10 0014FD70 98 1A 01 E4 */ stb r0, 0x1e4(r26) +/* 80152E14 0014FD74 88 1A 01 E4 */ lbz r0, 0x1e4(r26) +/* 80152E18 0014FD78 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 80152E1C 0014FD7C 98 1A 01 E4 */ stb r0, 0x1e4(r26) +/* 80152E20 0014FD80 88 1A 01 E4 */ lbz r0, 0x1e4(r26) +/* 80152E24 0014FD84 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 80152E28 0014FD88 98 1A 01 E4 */ stb r0, 0x1e4(r26) +/* 80152E2C 0014FD8C 88 1A 01 E4 */ lbz r0, 0x1e4(r26) +/* 80152E30 0014FD90 50 A0 07 FE */ rlwimi r0, r5, 0, 0x1f, 0x1f +/* 80152E34 0014FD94 98 1A 01 E4 */ stb r0, 0x1e4(r26) +/* 80152E38 0014FD98 88 1A 01 E5 */ lbz r0, 0x1e5(r26) +/* 80152E3C 0014FD9C 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 80152E40 0014FDA0 98 1A 01 E5 */ stb r0, 0x1e5(r26) +/* 80152E44 0014FDA4 88 1A 01 E5 */ lbz r0, 0x1e5(r26) +/* 80152E48 0014FDA8 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 80152E4C 0014FDAC 98 1A 01 E5 */ stb r0, 0x1e5(r26) +/* 80152E50 0014FDB0 88 1A 01 E5 */ lbz r0, 0x1e5(r26) +/* 80152E54 0014FDB4 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a +/* 80152E58 0014FDB8 98 1A 01 E5 */ stb r0, 0x1e5(r26) +/* 80152E5C 0014FDBC 98 BA 01 F0 */ stb r5, 0x1f0(r26) +/* 80152E60 0014FDC0 80 1A 00 E8 */ lwz r0, 0xe8(r26) +/* 80152E64 0014FDC4 2C 00 00 1A */ cmpwi r0, 0x1a +/* 80152E68 0014FDC8 40 82 00 B4 */ bne lbl_80152F1C +/* 80152E6C 0014FDCC C0 22 9D B4 */ lfs f1, lbl_805ABAD4@sda21(r2) +/* 80152E70 0014FDD0 38 61 00 38 */ addi r3, r1, 0x38 +/* 80152E74 0014FDD4 C0 02 9D BC */ lfs f0, lbl_805ABADC@sda21(r2) +/* 80152E78 0014FDD8 38 81 00 2C */ addi r4, r1, 0x2c +/* 80152E7C 0014FDDC D0 21 00 20 */ stfs f1, 0x20(r1) +/* 80152E80 0014FDE0 38 A1 00 20 */ addi r5, r1, 0x20 +/* 80152E84 0014FDE4 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 80152E88 0014FDE8 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 80152E8C 0014FDEC D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 80152E90 0014FDF0 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 80152E94 0014FDF4 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 80152E98 0014FDF8 48 1E 56 71 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 80152E9C 0014FDFC 88 1A 01 E0 */ lbz r0, 0x1e0(r26) +/* 80152EA0 0014FE00 28 00 00 00 */ cmplwi r0, 0 +/* 80152EA4 0014FE04 40 82 00 48 */ bne lbl_80152EEC +/* 80152EA8 0014FE08 34 7A 01 C8 */ addic. r3, r26, 0x1c8 +/* 80152EAC 0014FE0C 41 82 00 34 */ beq lbl_80152EE0 +/* 80152EB0 0014FE10 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 80152EB4 0014FE14 D0 03 00 00 */ stfs f0, 0(r3) +/* 80152EB8 0014FE18 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 80152EBC 0014FE1C D0 03 00 04 */ stfs f0, 4(r3) +/* 80152EC0 0014FE20 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 80152EC4 0014FE24 D0 03 00 08 */ stfs f0, 8(r3) +/* 80152EC8 0014FE28 C0 01 00 44 */ lfs f0, 0x44(r1) +/* 80152ECC 0014FE2C D0 03 00 0C */ stfs f0, 0xc(r3) +/* 80152ED0 0014FE30 C0 01 00 48 */ lfs f0, 0x48(r1) +/* 80152ED4 0014FE34 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 80152ED8 0014FE38 C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 80152EDC 0014FE3C D0 03 00 14 */ stfs f0, 0x14(r3) +lbl_80152EE0: +/* 80152EE0 0014FE40 38 00 00 01 */ li r0, 1 +/* 80152EE4 0014FE44 98 1A 01 E0 */ stb r0, 0x1e0(r26) +/* 80152EE8 0014FE48 48 00 00 34 */ b lbl_80152F1C +lbl_80152EEC: +/* 80152EEC 0014FE4C 80 61 00 38 */ lwz r3, 0x38(r1) +/* 80152EF0 0014FE50 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 80152EF4 0014FE54 90 7A 01 C8 */ stw r3, 0x1c8(r26) +/* 80152EF8 0014FE58 90 1A 01 CC */ stw r0, 0x1cc(r26) +/* 80152EFC 0014FE5C 80 01 00 40 */ lwz r0, 0x40(r1) +/* 80152F00 0014FE60 90 1A 01 D0 */ stw r0, 0x1d0(r26) +/* 80152F04 0014FE64 80 61 00 44 */ lwz r3, 0x44(r1) +/* 80152F08 0014FE68 80 01 00 48 */ lwz r0, 0x48(r1) +/* 80152F0C 0014FE6C 90 7A 01 D4 */ stw r3, 0x1d4(r26) +/* 80152F10 0014FE70 90 1A 01 D8 */ stw r0, 0x1d8(r26) +/* 80152F14 0014FE74 80 01 00 4C */ lwz r0, 0x4c(r1) +/* 80152F18 0014FE78 90 1A 01 DC */ stw r0, 0x1dc(r26) +lbl_80152F1C: +/* 80152F1C 0014FE7C 7F 43 D3 78 */ mr r3, r26 +/* 80152F20 0014FE80 E3 E1 01 88 */ psq_l f31, 392(r1), 0, qr0 +/* 80152F24 0014FE84 CB E1 01 80 */ lfd f31, 0x180(r1) +/* 80152F28 0014FE88 E3 C1 01 78 */ psq_l f30, 376(r1), 0, qr0 +/* 80152F2C 0014FE8C CB C1 01 70 */ lfd f30, 0x170(r1) +/* 80152F30 0014FE90 E3 A1 01 68 */ psq_l f29, 360(r1), 0, qr0 +/* 80152F34 0014FE94 CB A1 01 60 */ lfd f29, 0x160(r1) +/* 80152F38 0014FE98 E3 81 01 58 */ psq_l f28, 344(r1), 0, qr0 +/* 80152F3C 0014FE9C CB 81 01 50 */ lfd f28, 0x150(r1) +/* 80152F40 0014FEA0 B9 E1 01 0C */ lmw r15, 0x10c(r1) +/* 80152F44 0014FEA4 80 01 01 94 */ lwz r0, 0x194(r1) +/* 80152F48 0014FEA8 7C 08 03 A6 */ mtlr r0 +/* 80152F4C 0014FEAC 38 21 01 90 */ addi r1, r1, 0x190 +/* 80152F50 0014FEB0 4E 80 00 20 */ blr + +.global "__ct__Q24rstl36vectorFRCQ24rstl17rmemory_allocator" +"__ct__Q24rstl36vectorFRCQ24rstl17rmemory_allocator": +/* 80152F54 0014FEB4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80152F58 0014FEB8 7C 08 02 A6 */ mflr r0 +/* 80152F5C 0014FEBC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80152F60 0014FEC0 38 00 00 00 */ li r0, 0 +/* 80152F64 0014FEC4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80152F68 0014FEC8 7C 7F 1B 78 */ mr r31, r3 +/* 80152F6C 0014FECC 90 03 00 04 */ stw r0, 4(r3) +/* 80152F70 0014FED0 90 03 00 08 */ stw r0, 8(r3) +/* 80152F74 0014FED4 90 03 00 0C */ stw r0, 0xc(r3) +/* 80152F78 0014FED8 48 00 00 1D */ bl sub_80152f94 +/* 80152F7C 0014FEDC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80152F80 0014FEE0 7F E3 FB 78 */ mr r3, r31 +/* 80152F84 0014FEE4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80152F88 0014FEE8 7C 08 03 A6 */ mtlr r0 +/* 80152F8C 0014FEEC 38 21 00 10 */ addi r1, r1, 0x10 +/* 80152F90 0014FEF0 4E 80 00 20 */ blr + +.global sub_80152f94 +sub_80152f94: +/* 80152F94 0014FEF4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80152F98 0014FEF8 7C 08 02 A6 */ mflr r0 +/* 80152F9C 0014FEFC 90 01 00 34 */ stw r0, 0x34(r1) +/* 80152FA0 0014FF00 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80152FA4 0014FF04 7C BF 2B 78 */ mr r31, r5 +/* 80152FA8 0014FF08 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80152FAC 0014FF0C 7C 9E 23 78 */ mr r30, r4 +/* 80152FB0 0014FF10 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80152FB4 0014FF14 7C 7D 1B 78 */ mr r29, r3 +/* 80152FB8 0014FF18 80 03 00 04 */ lwz r0, 4(r3) +/* 80152FBC 0014FF1C 7C 00 F0 00 */ cmpw r0, r30 +/* 80152FC0 0014FF20 41 82 00 80 */ beq lbl_80153040 +/* 80152FC4 0014FF24 7C 1E 00 00 */ cmpw r30, r0 +/* 80152FC8 0014FF28 40 81 00 40 */ ble lbl_80153008 +/* 80152FCC 0014FF2C 4B F0 AE 2D */ bl "reserve__Q24rstl36vectorFi" +/* 80152FD0 0014FF30 80 9D 00 04 */ lwz r4, 4(r29) +/* 80152FD4 0014FF34 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 80152FD8 0014FF38 54 80 10 3A */ slwi r0, r4, 2 +/* 80152FDC 0014FF3C 7C 84 F0 51 */ subf. r4, r4, r30 +/* 80152FE0 0014FF40 7C 63 02 14 */ add r3, r3, r0 +/* 80152FE4 0014FF44 7C 89 03 A6 */ mtctr r4 +/* 80152FE8 0014FF48 40 81 00 54 */ ble lbl_8015303C +lbl_80152FEC: +/* 80152FEC 0014FF4C 28 03 00 00 */ cmplwi r3, 0 +/* 80152FF0 0014FF50 41 82 00 0C */ beq lbl_80152FFC +/* 80152FF4 0014FF54 C0 1F 00 00 */ lfs f0, 0(r31) +/* 80152FF8 0014FF58 D0 03 00 00 */ stfs f0, 0(r3) +lbl_80152FFC: +/* 80152FFC 0014FF5C 38 63 00 04 */ addi r3, r3, 4 +/* 80153000 0014FF60 42 00 FF EC */ bdnz lbl_80152FEC +/* 80153004 0014FF64 48 00 00 38 */ b lbl_8015303C +lbl_80153008: +/* 80153008 0014FF68 80 9D 00 0C */ lwz r4, 0xc(r29) +/* 8015300C 0014FF6C 54 03 10 3A */ slwi r3, r0, 2 +/* 80153010 0014FF70 57 C0 10 3A */ slwi r0, r30, 2 +/* 80153014 0014FF74 7C A4 02 14 */ add r5, r4, r0 +/* 80153018 0014FF78 7C 04 1A 14 */ add r0, r4, r3 +/* 8015301C 0014FF7C 90 A1 00 10 */ stw r5, 0x10(r1) +/* 80153020 0014FF80 90 01 00 08 */ stw r0, 8(r1) +/* 80153024 0014FF84 90 01 00 0C */ stw r0, 0xc(r1) +/* 80153028 0014FF88 90 A1 00 14 */ stw r5, 0x14(r1) +/* 8015302C 0014FF8C 48 00 00 08 */ b lbl_80153034 +lbl_80153030: +/* 80153030 0014FF90 38 A5 00 04 */ addi r5, r5, 4 +lbl_80153034: +/* 80153034 0014FF94 7C 05 00 40 */ cmplw r5, r0 +/* 80153038 0014FF98 40 82 FF F8 */ bne lbl_80153030 +lbl_8015303C: +/* 8015303C 0014FF9C 93 DD 00 04 */ stw r30, 4(r29) +lbl_80153040: +/* 80153040 0014FFA0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80153044 0014FFA4 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80153048 0014FFA8 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8015304C 0014FFAC 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80153050 0014FFB0 7C 08 03 A6 */ mtlr r0 +/* 80153054 0014FFB4 38 21 00 30 */ addi r1, r1, 0x30 +/* 80153058 0014FFB8 4E 80 00 20 */ blr + +.global "sort,Q24rstl17rmemory_allocator>,Q236@unnamed@CScriptSpecialFunction_cpp@11CRingSorter>__4rstlFQ24rstl176pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl176pointer_iterator,Q24rstl17rmemory_allocator>,Q236@unnamed@CScriptSpecialFunction_cpp@11CRingSorter>__4rstlFQ24rstl176pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl176pointer_iteratorFP7CEntity" +/* 80153188 001500E8 83 63 00 04 */ lwz r27, 4(r3) +/* 8015318C 001500EC 38 81 00 14 */ addi r4, r1, 0x14 +/* 80153190 001500F0 80 7E 00 00 */ lwz r3, 0(r30) +/* 80153194 001500F4 B3 E1 00 14 */ sth r31, 0x14(r1) +/* 80153198 001500F8 4B EF 94 0D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8015319C 001500FC 7C 64 1B 78 */ mr r4, r3 +/* 801531A0 00150100 38 61 00 60 */ addi r3, r1, 0x60 +/* 801531A4 00150104 4B F5 CA ED */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 801531A8 00150108 28 1B 00 00 */ cmplwi r27, 0 +/* 801531AC 0015010C 80 63 00 04 */ lwz r3, 4(r3) +/* 801531B0 00150110 41 82 00 4C */ beq lbl_801531FC +/* 801531B4 00150114 28 03 00 00 */ cmplwi r3, 0 +/* 801531B8 00150118 41 82 00 44 */ beq lbl_801531FC +/* 801531BC 0015011C C0 A3 00 60 */ lfs f5, 0x60(r3) +/* 801531C0 00150120 C0 7B 00 60 */ lfs f3, 0x60(r27) +/* 801531C4 00150124 C0 83 00 50 */ lfs f4, 0x50(r3) +/* 801531C8 00150128 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 801531CC 0015012C FC 03 28 40 */ fcmpo cr0, f3, f5 +/* 801531D0 00150130 C0 5B 00 50 */ lfs f2, 0x50(r27) +/* 801531D4 00150134 C0 1B 00 40 */ lfs f0, 0x40(r27) +/* 801531D8 00150138 D0 21 00 94 */ stfs f1, 0x94(r1) +/* 801531DC 0015013C D0 81 00 98 */ stfs f4, 0x98(r1) +/* 801531E0 00150140 D0 A1 00 9C */ stfs f5, 0x9c(r1) +/* 801531E4 00150144 D0 01 00 88 */ stfs f0, 0x88(r1) +/* 801531E8 00150148 D0 41 00 8C */ stfs f2, 0x8c(r1) +/* 801531EC 0015014C D0 61 00 90 */ stfs f3, 0x90(r1) +/* 801531F0 00150150 7C 00 00 26 */ mfcr r0 +/* 801531F4 00150154 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801531F8 00150158 48 00 00 08 */ b lbl_80153200 +lbl_801531FC: +/* 801531FC 0015015C 38 00 00 00 */ li r0, 0 +lbl_80153200: +/* 80153200 00150160 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 80153204 00150164 40 82 FF 54 */ bne lbl_80153158 +/* 80153208 00150168 A3 61 00 B8 */ lhz r27, 0xb8(r1) +/* 8015320C 0015016C 48 00 00 10 */ b lbl_8015321C +lbl_80153210: +/* 80153210 00150170 80 61 00 4C */ lwz r3, 0x4c(r1) +/* 80153214 00150174 38 03 FF E8 */ addi r0, r3, -24 +/* 80153218 00150178 90 01 00 4C */ stw r0, 0x4c(r1) +lbl_8015321C: +/* 8015321C 0015017C B3 61 00 08 */ sth r27, 8(r1) +/* 80153220 00150180 38 81 00 08 */ addi r4, r1, 8 +/* 80153224 00150184 80 7E 00 00 */ lwz r3, 0(r30) +/* 80153228 00150188 4B EF 93 7D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8015322C 0015018C 7C 64 1B 78 */ mr r4, r3 +/* 80153230 00150190 38 61 00 58 */ addi r3, r1, 0x58 +/* 80153234 00150194 4B F5 CA 5D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80153238 00150198 80 A1 00 4C */ lwz r5, 0x4c(r1) +/* 8015323C 0015019C 38 81 00 0C */ addi r4, r1, 0xc +/* 80153240 001501A0 83 43 00 04 */ lwz r26, 4(r3) +/* 80153244 001501A4 A0 05 00 00 */ lhz r0, 0(r5) +/* 80153248 001501A8 80 7E 00 00 */ lwz r3, 0(r30) +/* 8015324C 001501AC B0 01 00 0C */ sth r0, 0xc(r1) +/* 80153250 001501B0 4B EF 93 55 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80153254 001501B4 7C 64 1B 78 */ mr r4, r3 +/* 80153258 001501B8 38 61 00 50 */ addi r3, r1, 0x50 +/* 8015325C 001501BC 4B F5 CA 35 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80153260 001501C0 28 1A 00 00 */ cmplwi r26, 0 +/* 80153264 001501C4 80 63 00 04 */ lwz r3, 4(r3) +/* 80153268 001501C8 41 82 00 4C */ beq lbl_801532B4 +/* 8015326C 001501CC 28 03 00 00 */ cmplwi r3, 0 +/* 80153270 001501D0 41 82 00 44 */ beq lbl_801532B4 +/* 80153274 001501D4 C0 A3 00 60 */ lfs f5, 0x60(r3) +/* 80153278 001501D8 C0 7A 00 60 */ lfs f3, 0x60(r26) +/* 8015327C 001501DC C0 83 00 50 */ lfs f4, 0x50(r3) +/* 80153280 001501E0 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 80153284 001501E4 FC 03 28 40 */ fcmpo cr0, f3, f5 +/* 80153288 001501E8 C0 5A 00 50 */ lfs f2, 0x50(r26) +/* 8015328C 001501EC C0 1A 00 40 */ lfs f0, 0x40(r26) +/* 80153290 001501F0 D0 21 00 7C */ stfs f1, 0x7c(r1) +/* 80153294 001501F4 D0 81 00 80 */ stfs f4, 0x80(r1) +/* 80153298 001501F8 D0 A1 00 84 */ stfs f5, 0x84(r1) +/* 8015329C 001501FC D0 01 00 70 */ stfs f0, 0x70(r1) +/* 801532A0 00150200 D0 41 00 74 */ stfs f2, 0x74(r1) +/* 801532A4 00150204 D0 61 00 78 */ stfs f3, 0x78(r1) +/* 801532A8 00150208 7C 00 00 26 */ mfcr r0 +/* 801532AC 0015020C 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801532B0 00150210 48 00 00 08 */ b lbl_801532B8 +lbl_801532B4: +/* 801532B4 00150214 38 00 00 00 */ li r0, 0 +lbl_801532B8: +/* 801532B8 00150218 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 801532BC 0015021C 40 82 FF 54 */ bne lbl_80153210 +/* 801532C0 00150220 80 61 00 48 */ lwz r3, 0x48(r1) +/* 801532C4 00150224 80 01 00 4C */ lwz r0, 0x4c(r1) +/* 801532C8 00150228 7C 03 00 40 */ cmplw r3, r0 +/* 801532CC 0015022C 40 80 00 AC */ bge lbl_80153378 +/* 801532D0 00150230 81 61 00 48 */ lwz r11, 0x48(r1) +/* 801532D4 00150234 81 81 00 4C */ lwz r12, 0x4c(r1) +/* 801532D8 00150238 A1 4B 00 00 */ lhz r10, 0(r11) +/* 801532DC 0015023C 38 6B 00 18 */ addi r3, r11, 0x18 +/* 801532E0 00150240 C0 6B 00 04 */ lfs f3, 4(r11) +/* 801532E4 00150244 38 0C FF E8 */ addi r0, r12, -24 +/* 801532E8 00150248 89 2B 00 08 */ lbz r9, 8(r11) +/* 801532EC 0015024C C0 0B 00 0C */ lfs f0, 0xc(r11) +/* 801532F0 00150250 C0 4B 00 10 */ lfs f2, 0x10(r11) +/* 801532F4 00150254 C0 2B 00 14 */ lfs f1, 0x14(r11) +/* 801532F8 00150258 A0 8C 00 00 */ lhz r4, 0(r12) +/* 801532FC 0015025C D0 01 00 AC */ stfs f0, 0xac(r1) +/* 80153300 00150260 B0 8B 00 00 */ sth r4, 0(r11) +/* 80153304 00150264 80 C1 00 AC */ lwz r6, 0xac(r1) +/* 80153308 00150268 C0 0C 00 04 */ lfs f0, 4(r12) +/* 8015330C 0015026C D0 41 00 B0 */ stfs f2, 0xb0(r1) +/* 80153310 00150270 D0 0B 00 04 */ stfs f0, 4(r11) +/* 80153314 00150274 80 A1 00 B0 */ lwz r5, 0xb0(r1) +/* 80153318 00150278 88 8C 00 08 */ lbz r4, 8(r12) +/* 8015331C 0015027C D0 21 00 B4 */ stfs f1, 0xb4(r1) +/* 80153320 00150280 98 8B 00 08 */ stb r4, 8(r11) +/* 80153324 00150284 80 81 00 B4 */ lwz r4, 0xb4(r1) +/* 80153328 00150288 81 0C 00 0C */ lwz r8, 0xc(r12) +/* 8015332C 0015028C 80 EC 00 10 */ lwz r7, 0x10(r12) +/* 80153330 00150290 91 81 00 30 */ stw r12, 0x30(r1) +/* 80153334 00150294 91 0B 00 0C */ stw r8, 0xc(r11) +/* 80153338 00150298 90 EB 00 10 */ stw r7, 0x10(r11) +/* 8015333C 0015029C 80 EC 00 14 */ lwz r7, 0x14(r12) +/* 80153340 001502A0 91 61 00 34 */ stw r11, 0x34(r1) +/* 80153344 001502A4 90 EB 00 14 */ stw r7, 0x14(r11) +/* 80153348 001502A8 B1 4C 00 00 */ sth r10, 0(r12) +/* 8015334C 001502AC D0 6C 00 04 */ stfs f3, 4(r12) +/* 80153350 001502B0 99 2C 00 08 */ stb r9, 8(r12) +/* 80153354 001502B4 90 CC 00 0C */ stw r6, 0xc(r12) +/* 80153358 001502B8 90 AC 00 10 */ stw r5, 0x10(r12) +/* 8015335C 001502BC B1 41 00 A0 */ sth r10, 0xa0(r1) +/* 80153360 001502C0 D0 61 00 A4 */ stfs f3, 0xa4(r1) +/* 80153364 001502C4 99 21 00 A8 */ stb r9, 0xa8(r1) +/* 80153368 001502C8 90 8C 00 14 */ stw r4, 0x14(r12) +/* 8015336C 001502CC 90 61 00 48 */ stw r3, 0x48(r1) +/* 80153370 001502D0 90 01 00 4C */ stw r0, 0x4c(r1) +/* 80153374 001502D4 4B FF FD F0 */ b lbl_80153164 +lbl_80153378: +/* 80153378 001502D8 80 FE 00 00 */ lwz r7, 0(r30) +/* 8015337C 001502DC 38 61 00 2C */ addi r3, r1, 0x2c +/* 80153380 001502E0 80 C1 00 48 */ lwz r6, 0x48(r1) +/* 80153384 001502E4 38 81 00 28 */ addi r4, r1, 0x28 +/* 80153388 001502E8 80 1C 00 00 */ lwz r0, 0(r28) +/* 8015338C 001502EC 38 A1 00 24 */ addi r5, r1, 0x24 +/* 80153390 001502F0 90 E1 00 24 */ stw r7, 0x24(r1) +/* 80153394 001502F4 90 C1 00 28 */ stw r6, 0x28(r1) +/* 80153398 001502F8 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8015339C 001502FC 4B FF FC C1 */ bl "sort,Q24rstl17rmemory_allocator>,Q236@unnamed@CScriptSpecialFunction_cpp@11CRingSorter>__4rstlFQ24rstl176pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl176pointer_iterator,Q24rstl17rmemory_allocator>,Q236@unnamed@CScriptSpecialFunction_cpp@11CRingSorter>__4rstlFQ24rstl176pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl176pointer_iteratorFi" +"reserve__Q24rstl78vectorFi": +/* 801533DC 0015033C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801533E0 00150340 7C 08 02 A6 */ mflr r0 +/* 801533E4 00150344 90 01 00 34 */ stw r0, 0x34(r1) +/* 801533E8 00150348 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801533EC 0015034C 7C 9F 23 78 */ mr r31, r4 +/* 801533F0 00150350 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801533F4 00150354 7C 7E 1B 78 */ mr r30, r3 +/* 801533F8 00150358 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801533FC 0015035C 80 03 00 08 */ lwz r0, 8(r3) +/* 80153400 00150360 7C 1F 00 00 */ cmpw r31, r0 +/* 80153404 00150364 40 81 00 D8 */ ble lbl_801534DC +/* 80153408 00150368 1C 7F 00 18 */ mulli r3, r31, 0x18 +/* 8015340C 0015036C 2C 03 00 00 */ cmpwi r3, 0 +/* 80153410 00150370 40 82 00 0C */ bne lbl_8015341C +/* 80153414 00150374 3B A0 00 00 */ li r29, 0 +/* 80153418 00150378 48 00 00 1C */ b lbl_80153434 +lbl_8015341C: +/* 8015341C 0015037C 3C 80 80 3D */ lis r4, lbl_803D01D0@ha +/* 80153420 00150380 38 A0 00 00 */ li r5, 0 +/* 80153424 00150384 38 84 01 D0 */ addi r4, r4, lbl_803D01D0@l +/* 80153428 00150388 38 84 00 15 */ addi r4, r4, 0x15 +/* 8015342C 0015038C 48 1C 23 ED */ bl __nwa__FUlPCcPCc +/* 80153430 00150390 7C 7D 1B 78 */ mr r29, r3 +lbl_80153434: +/* 80153434 00150394 80 1E 00 04 */ lwz r0, 4(r30) +/* 80153438 00150398 7F A4 EB 78 */ mr r4, r29 +/* 8015343C 0015039C 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 80153440 001503A0 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 80153444 001503A4 90 A1 00 10 */ stw r5, 0x10(r1) +/* 80153448 001503A8 7C 65 02 14 */ add r3, r5, r0 +/* 8015344C 001503AC 90 A1 00 14 */ stw r5, 0x14(r1) +/* 80153450 001503B0 90 61 00 08 */ stw r3, 8(r1) +/* 80153454 001503B4 90 61 00 0C */ stw r3, 0xc(r1) +/* 80153458 001503B8 48 00 00 44 */ b lbl_8015349C +lbl_8015345C: +/* 8015345C 001503BC 28 04 00 00 */ cmplwi r4, 0 +/* 80153460 001503C0 41 82 00 34 */ beq lbl_80153494 +/* 80153464 001503C4 A0 05 00 00 */ lhz r0, 0(r5) +/* 80153468 001503C8 B0 04 00 00 */ sth r0, 0(r4) +/* 8015346C 001503CC C0 05 00 04 */ lfs f0, 4(r5) +/* 80153470 001503D0 D0 04 00 04 */ stfs f0, 4(r4) +/* 80153474 001503D4 88 05 00 08 */ lbz r0, 8(r5) +/* 80153478 001503D8 98 04 00 08 */ stb r0, 8(r4) +/* 8015347C 001503DC C0 05 00 0C */ lfs f0, 0xc(r5) +/* 80153480 001503E0 D0 04 00 0C */ stfs f0, 0xc(r4) +/* 80153484 001503E4 C0 05 00 10 */ lfs f0, 0x10(r5) +/* 80153488 001503E8 D0 04 00 10 */ stfs f0, 0x10(r4) +/* 8015348C 001503EC C0 05 00 14 */ lfs f0, 0x14(r5) +/* 80153490 001503F0 D0 04 00 14 */ stfs f0, 0x14(r4) +lbl_80153494: +/* 80153494 001503F4 38 84 00 18 */ addi r4, r4, 0x18 +/* 80153498 001503F8 38 A5 00 18 */ addi r5, r5, 0x18 +lbl_8015349C: +/* 8015349C 001503FC 7C 05 18 40 */ cmplw r5, r3 +/* 801534A0 00150400 40 82 FF BC */ bne lbl_8015345C +/* 801534A4 00150404 80 1E 00 04 */ lwz r0, 4(r30) +/* 801534A8 00150408 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 801534AC 0015040C 1C 00 00 18 */ mulli r0, r0, 0x18 +/* 801534B0 00150410 7C 64 1B 78 */ mr r4, r3 +/* 801534B4 00150414 7C 03 02 14 */ add r0, r3, r0 +/* 801534B8 00150418 48 00 00 08 */ b lbl_801534C0 +lbl_801534BC: +/* 801534BC 0015041C 38 84 00 18 */ addi r4, r4, 0x18 +lbl_801534C0: +/* 801534C0 00150420 7C 04 00 40 */ cmplw r4, r0 +/* 801534C4 00150424 40 82 FF F8 */ bne lbl_801534BC +/* 801534C8 00150428 28 03 00 00 */ cmplwi r3, 0 +/* 801534CC 0015042C 41 82 00 08 */ beq lbl_801534D4 +/* 801534D0 00150430 48 1C 24 61 */ bl Free__7CMemoryFPCv +lbl_801534D4: +/* 801534D4 00150434 93 BE 00 0C */ stw r29, 0xc(r30) +/* 801534D8 00150438 93 FE 00 08 */ stw r31, 8(r30) +lbl_801534DC: +/* 801534DC 0015043C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 801534E0 00150440 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 801534E4 00150444 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 801534E8 00150448 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 801534EC 0015044C 7C 08 03 A6 */ mtlr r0 +/* 801534F0 00150450 38 21 00 30 */ addi r1, r1, 0x30 +/* 801534F4 00150454 4E 80 00 20 */ blr + +.global sub_801534f8 +sub_801534f8: +/* 801534F8 00150458 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 801534FC 0015045C 7C 08 02 A6 */ mflr r0 +/* 80153500 00150460 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 80153504 00150464 BF 61 00 CC */ stmw r27, 0xcc(r1) +/* 80153508 00150468 7C 7C 1B 78 */ mr r28, r3 +/* 8015350C 0015046C 7C 9D 23 78 */ mr r29, r4 +/* 80153510 00150470 7C DF 33 78 */ mr r31, r6 +/* 80153514 00150474 7C BE 2B 78 */ mr r30, r5 +/* 80153518 00150478 A0 04 00 00 */ lhz r0, 0(r4) +/* 8015351C 0015047C 38 81 00 18 */ addi r4, r1, 0x18 +/* 80153520 00150480 80 66 00 00 */ lwz r3, 0(r6) +/* 80153524 00150484 B0 01 00 18 */ sth r0, 0x18(r1) +/* 80153528 00150488 4B EF 90 7D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8015352C 0015048C 7C 64 1B 78 */ mr r4, r3 +/* 80153530 00150490 38 61 00 48 */ addi r3, r1, 0x48 +/* 80153534 00150494 4B F5 C7 5D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80153538 00150498 83 63 00 04 */ lwz r27, 4(r3) +/* 8015353C 0015049C 38 81 00 1C */ addi r4, r1, 0x1c +/* 80153540 001504A0 A0 1C 00 00 */ lhz r0, 0(r28) +/* 80153544 001504A4 80 7F 00 00 */ lwz r3, 0(r31) +/* 80153548 001504A8 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8015354C 001504AC 4B EF 90 59 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80153550 001504B0 7C 64 1B 78 */ mr r4, r3 +/* 80153554 001504B4 38 61 00 40 */ addi r3, r1, 0x40 +/* 80153558 001504B8 4B F5 C7 39 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8015355C 001504BC 28 1B 00 00 */ cmplwi r27, 0 +/* 80153560 001504C0 80 63 00 04 */ lwz r3, 4(r3) +/* 80153564 001504C4 41 82 00 4C */ beq lbl_801535B0 +/* 80153568 001504C8 28 03 00 00 */ cmplwi r3, 0 +/* 8015356C 001504CC 41 82 00 44 */ beq lbl_801535B0 +/* 80153570 001504D0 C0 A3 00 60 */ lfs f5, 0x60(r3) +/* 80153574 001504D4 C0 7B 00 60 */ lfs f3, 0x60(r27) +/* 80153578 001504D8 C0 83 00 50 */ lfs f4, 0x50(r3) +/* 8015357C 001504DC C0 23 00 40 */ lfs f1, 0x40(r3) +/* 80153580 001504E0 FC 03 28 40 */ fcmpo cr0, f3, f5 +/* 80153584 001504E4 C0 5B 00 50 */ lfs f2, 0x50(r27) +/* 80153588 001504E8 C0 1B 00 40 */ lfs f0, 0x40(r27) +/* 8015358C 001504EC D0 21 00 8C */ stfs f1, 0x8c(r1) +/* 80153590 001504F0 D0 81 00 90 */ stfs f4, 0x90(r1) +/* 80153594 001504F4 D0 A1 00 94 */ stfs f5, 0x94(r1) +/* 80153598 001504F8 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 8015359C 001504FC D0 41 00 84 */ stfs f2, 0x84(r1) +/* 801535A0 00150500 D0 61 00 88 */ stfs f3, 0x88(r1) +/* 801535A4 00150504 7C 00 00 26 */ mfcr r0 +/* 801535A8 00150508 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801535AC 0015050C 48 00 00 08 */ b lbl_801535B4 +lbl_801535B0: +/* 801535B0 00150510 38 00 00 00 */ li r0, 0 +lbl_801535B4: +/* 801535B4 00150514 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 801535B8 00150518 41 82 00 88 */ beq lbl_80153640 +/* 801535BC 0015051C A1 1C 00 00 */ lhz r8, 0(r28) +/* 801535C0 00150520 C0 7C 00 04 */ lfs f3, 4(r28) +/* 801535C4 00150524 88 FC 00 08 */ lbz r7, 8(r28) +/* 801535C8 00150528 C0 1C 00 0C */ lfs f0, 0xc(r28) +/* 801535CC 0015052C C0 5C 00 10 */ lfs f2, 0x10(r28) +/* 801535D0 00150530 C0 3C 00 14 */ lfs f1, 0x14(r28) +/* 801535D4 00150534 A0 1D 00 00 */ lhz r0, 0(r29) +/* 801535D8 00150538 D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 801535DC 0015053C B0 1C 00 00 */ sth r0, 0(r28) +/* 801535E0 00150540 80 81 00 A4 */ lwz r4, 0xa4(r1) +/* 801535E4 00150544 C0 1D 00 04 */ lfs f0, 4(r29) +/* 801535E8 00150548 D0 41 00 A8 */ stfs f2, 0xa8(r1) +/* 801535EC 0015054C D0 1C 00 04 */ stfs f0, 4(r28) +/* 801535F0 00150550 80 61 00 A8 */ lwz r3, 0xa8(r1) +/* 801535F4 00150554 88 1D 00 08 */ lbz r0, 8(r29) +/* 801535F8 00150558 D0 21 00 AC */ stfs f1, 0xac(r1) +/* 801535FC 0015055C 98 1C 00 08 */ stb r0, 8(r28) +/* 80153600 00150560 80 01 00 AC */ lwz r0, 0xac(r1) +/* 80153604 00150564 80 DD 00 0C */ lwz r6, 0xc(r29) +/* 80153608 00150568 80 BD 00 10 */ lwz r5, 0x10(r29) +/* 8015360C 0015056C B1 01 00 98 */ sth r8, 0x98(r1) +/* 80153610 00150570 90 DC 00 0C */ stw r6, 0xc(r28) +/* 80153614 00150574 90 BC 00 10 */ stw r5, 0x10(r28) +/* 80153618 00150578 80 BD 00 14 */ lwz r5, 0x14(r29) +/* 8015361C 0015057C D0 61 00 9C */ stfs f3, 0x9c(r1) +/* 80153620 00150580 90 BC 00 14 */ stw r5, 0x14(r28) +/* 80153624 00150584 B1 1D 00 00 */ sth r8, 0(r29) +/* 80153628 00150588 D0 7D 00 04 */ stfs f3, 4(r29) +/* 8015362C 0015058C 98 FD 00 08 */ stb r7, 8(r29) +/* 80153630 00150590 90 9D 00 0C */ stw r4, 0xc(r29) +/* 80153634 00150594 90 7D 00 10 */ stw r3, 0x10(r29) +/* 80153638 00150598 98 E1 00 A0 */ stb r7, 0xa0(r1) +/* 8015363C 0015059C 90 1D 00 14 */ stw r0, 0x14(r29) +lbl_80153640: +/* 80153640 001505A0 A0 1E 00 00 */ lhz r0, 0(r30) +/* 80153644 001505A4 38 81 00 10 */ addi r4, r1, 0x10 +/* 80153648 001505A8 80 7F 00 00 */ lwz r3, 0(r31) +/* 8015364C 001505AC B0 01 00 10 */ sth r0, 0x10(r1) +/* 80153650 001505B0 4B EF 8F 55 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80153654 001505B4 7C 64 1B 78 */ mr r4, r3 +/* 80153658 001505B8 38 61 00 38 */ addi r3, r1, 0x38 +/* 8015365C 001505BC 4B F5 C6 35 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80153660 001505C0 83 63 00 04 */ lwz r27, 4(r3) +/* 80153664 001505C4 38 81 00 14 */ addi r4, r1, 0x14 +/* 80153668 001505C8 A0 1D 00 00 */ lhz r0, 0(r29) +/* 8015366C 001505CC 80 7F 00 00 */ lwz r3, 0(r31) +/* 80153670 001505D0 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80153674 001505D4 4B EF 8F 31 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80153678 001505D8 7C 64 1B 78 */ mr r4, r3 +/* 8015367C 001505DC 38 61 00 30 */ addi r3, r1, 0x30 +/* 80153680 001505E0 4B F5 C6 11 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80153684 001505E4 28 1B 00 00 */ cmplwi r27, 0 +/* 80153688 001505E8 80 63 00 04 */ lwz r3, 4(r3) +/* 8015368C 001505EC 41 82 00 4C */ beq lbl_801536D8 +/* 80153690 001505F0 28 03 00 00 */ cmplwi r3, 0 +/* 80153694 001505F4 41 82 00 44 */ beq lbl_801536D8 +/* 80153698 001505F8 C0 A3 00 60 */ lfs f5, 0x60(r3) +/* 8015369C 001505FC C0 7B 00 60 */ lfs f3, 0x60(r27) +/* 801536A0 00150600 C0 83 00 50 */ lfs f4, 0x50(r3) +/* 801536A4 00150604 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 801536A8 00150608 FC 03 28 40 */ fcmpo cr0, f3, f5 +/* 801536AC 0015060C C0 5B 00 50 */ lfs f2, 0x50(r27) +/* 801536B0 00150610 C0 1B 00 40 */ lfs f0, 0x40(r27) +/* 801536B4 00150614 D0 21 00 74 */ stfs f1, 0x74(r1) +/* 801536B8 00150618 D0 81 00 78 */ stfs f4, 0x78(r1) +/* 801536BC 0015061C D0 A1 00 7C */ stfs f5, 0x7c(r1) +/* 801536C0 00150620 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 801536C4 00150624 D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 801536C8 00150628 D0 61 00 70 */ stfs f3, 0x70(r1) +/* 801536CC 0015062C 7C 00 00 26 */ mfcr r0 +/* 801536D0 00150630 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801536D4 00150634 48 00 00 08 */ b lbl_801536DC +lbl_801536D8: +/* 801536D8 00150638 38 00 00 00 */ li r0, 0 +lbl_801536DC: +/* 801536DC 0015063C 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 801536E0 00150640 41 82 01 98 */ beq lbl_80153878 +/* 801536E4 00150644 A0 BE 00 00 */ lhz r5, 0(r30) +/* 801536E8 00150648 38 81 00 08 */ addi r4, r1, 8 +/* 801536EC 0015064C C0 9E 00 04 */ lfs f4, 4(r30) +/* 801536F0 00150650 88 7E 00 08 */ lbz r3, 8(r30) +/* 801536F4 00150654 C0 7E 00 0C */ lfs f3, 0xc(r30) +/* 801536F8 00150658 C0 5E 00 10 */ lfs f2, 0x10(r30) +/* 801536FC 0015065C C0 3E 00 14 */ lfs f1, 0x14(r30) +/* 80153700 00150660 A0 1D 00 00 */ lhz r0, 0(r29) +/* 80153704 00150664 B0 A1 00 B0 */ sth r5, 0xb0(r1) +/* 80153708 00150668 B0 1E 00 00 */ sth r0, 0(r30) +/* 8015370C 0015066C C0 1D 00 04 */ lfs f0, 4(r29) +/* 80153710 00150670 D0 81 00 B4 */ stfs f4, 0xb4(r1) +/* 80153714 00150674 D0 1E 00 04 */ stfs f0, 4(r30) +/* 80153718 00150678 88 1D 00 08 */ lbz r0, 8(r29) +/* 8015371C 0015067C 98 61 00 B8 */ stb r3, 0xb8(r1) +/* 80153720 00150680 98 1E 00 08 */ stb r0, 8(r30) +/* 80153724 00150684 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 80153728 00150688 80 1D 00 10 */ lwz r0, 0x10(r29) +/* 8015372C 0015068C D0 61 00 BC */ stfs f3, 0xbc(r1) +/* 80153730 00150690 90 7E 00 0C */ stw r3, 0xc(r30) +/* 80153734 00150694 90 1E 00 10 */ stw r0, 0x10(r30) +/* 80153738 00150698 80 1D 00 14 */ lwz r0, 0x14(r29) +/* 8015373C 0015069C D0 41 00 C0 */ stfs f2, 0xc0(r1) +/* 80153740 001506A0 90 1E 00 14 */ stw r0, 0x14(r30) +/* 80153744 001506A4 D0 21 00 C4 */ stfs f1, 0xc4(r1) +/* 80153748 001506A8 80 7F 00 00 */ lwz r3, 0(r31) +/* 8015374C 001506AC B0 A1 00 08 */ sth r5, 8(r1) +/* 80153750 001506B0 4B EF 8E 55 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80153754 001506B4 7C 64 1B 78 */ mr r4, r3 +/* 80153758 001506B8 38 61 00 28 */ addi r3, r1, 0x28 +/* 8015375C 001506BC 4B F5 C5 35 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80153760 001506C0 83 63 00 04 */ lwz r27, 4(r3) +/* 80153764 001506C4 38 81 00 0C */ addi r4, r1, 0xc +/* 80153768 001506C8 A0 1C 00 00 */ lhz r0, 0(r28) +/* 8015376C 001506CC 80 7F 00 00 */ lwz r3, 0(r31) +/* 80153770 001506D0 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80153774 001506D4 4B EF 8E 31 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80153778 001506D8 7C 64 1B 78 */ mr r4, r3 +/* 8015377C 001506DC 38 61 00 20 */ addi r3, r1, 0x20 +/* 80153780 001506E0 4B F5 C5 11 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80153784 001506E4 28 1B 00 00 */ cmplwi r27, 0 +/* 80153788 001506E8 80 63 00 04 */ lwz r3, 4(r3) +/* 8015378C 001506EC 41 82 00 4C */ beq lbl_801537D8 +/* 80153790 001506F0 28 03 00 00 */ cmplwi r3, 0 +/* 80153794 001506F4 41 82 00 44 */ beq lbl_801537D8 +/* 80153798 001506F8 C0 A3 00 60 */ lfs f5, 0x60(r3) +/* 8015379C 001506FC C0 7B 00 60 */ lfs f3, 0x60(r27) +/* 801537A0 00150700 C0 83 00 50 */ lfs f4, 0x50(r3) +/* 801537A4 00150704 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 801537A8 00150708 FC 03 28 40 */ fcmpo cr0, f3, f5 +/* 801537AC 0015070C C0 5B 00 50 */ lfs f2, 0x50(r27) +/* 801537B0 00150710 C0 1B 00 40 */ lfs f0, 0x40(r27) +/* 801537B4 00150714 D0 21 00 5C */ stfs f1, 0x5c(r1) +/* 801537B8 00150718 D0 81 00 60 */ stfs f4, 0x60(r1) +/* 801537BC 0015071C D0 A1 00 64 */ stfs f5, 0x64(r1) +/* 801537C0 00150720 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 801537C4 00150724 D0 41 00 54 */ stfs f2, 0x54(r1) +/* 801537C8 00150728 D0 61 00 58 */ stfs f3, 0x58(r1) +/* 801537CC 0015072C 7C 00 00 26 */ mfcr r0 +/* 801537D0 00150730 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801537D4 00150734 48 00 00 08 */ b lbl_801537DC +lbl_801537D8: +/* 801537D8 00150738 38 00 00 00 */ li r0, 0 +lbl_801537DC: +/* 801537DC 0015073C 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 801537E0 00150740 41 82 00 68 */ beq lbl_80153848 +/* 801537E4 00150744 A0 1C 00 00 */ lhz r0, 0(r28) +/* 801537E8 00150748 A0 C1 00 B0 */ lhz r6, 0xb0(r1) +/* 801537EC 0015074C B0 1D 00 00 */ sth r0, 0(r29) +/* 801537F0 00150750 C0 01 00 B4 */ lfs f0, 0xb4(r1) +/* 801537F4 00150754 C0 3C 00 04 */ lfs f1, 4(r28) +/* 801537F8 00150758 88 A1 00 B8 */ lbz r5, 0xb8(r1) +/* 801537FC 0015075C D0 3D 00 04 */ stfs f1, 4(r29) +/* 80153800 00150760 80 81 00 BC */ lwz r4, 0xbc(r1) +/* 80153804 00150764 88 1C 00 08 */ lbz r0, 8(r28) +/* 80153808 00150768 80 61 00 C0 */ lwz r3, 0xc0(r1) +/* 8015380C 0015076C 98 1D 00 08 */ stb r0, 8(r29) +/* 80153810 00150770 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 80153814 00150774 81 1C 00 0C */ lwz r8, 0xc(r28) +/* 80153818 00150778 80 FC 00 10 */ lwz r7, 0x10(r28) +/* 8015381C 0015077C 91 1D 00 0C */ stw r8, 0xc(r29) +/* 80153820 00150780 90 FD 00 10 */ stw r7, 0x10(r29) +/* 80153824 00150784 80 FC 00 14 */ lwz r7, 0x14(r28) +/* 80153828 00150788 90 FD 00 14 */ stw r7, 0x14(r29) +/* 8015382C 0015078C B0 DC 00 00 */ sth r6, 0(r28) +/* 80153830 00150790 D0 1C 00 04 */ stfs f0, 4(r28) +/* 80153834 00150794 98 BC 00 08 */ stb r5, 8(r28) +/* 80153838 00150798 90 9C 00 0C */ stw r4, 0xc(r28) +/* 8015383C 0015079C 90 7C 00 10 */ stw r3, 0x10(r28) +/* 80153840 001507A0 90 1C 00 14 */ stw r0, 0x14(r28) +/* 80153844 001507A4 48 00 00 34 */ b lbl_80153878 +lbl_80153848: +/* 80153848 001507A8 A0 01 00 B0 */ lhz r0, 0xb0(r1) +/* 8015384C 001507AC C0 01 00 B4 */ lfs f0, 0xb4(r1) +/* 80153850 001507B0 B0 1D 00 00 */ sth r0, 0(r29) +/* 80153854 001507B4 88 61 00 B8 */ lbz r3, 0xb8(r1) +/* 80153858 001507B8 D0 1D 00 04 */ stfs f0, 4(r29) +/* 8015385C 001507BC 80 01 00 BC */ lwz r0, 0xbc(r1) +/* 80153860 001507C0 98 7D 00 08 */ stb r3, 8(r29) +/* 80153864 001507C4 80 61 00 C0 */ lwz r3, 0xc0(r1) +/* 80153868 001507C8 90 1D 00 0C */ stw r0, 0xc(r29) +/* 8015386C 001507CC 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 80153870 001507D0 90 7D 00 10 */ stw r3, 0x10(r29) +/* 80153874 001507D4 90 1D 00 14 */ stw r0, 0x14(r29) +lbl_80153878: +/* 80153878 001507D8 BB 61 00 CC */ lmw r27, 0xcc(r1) +/* 8015387C 001507DC 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 80153880 001507E0 7C 08 03 A6 */ mtlr r0 +/* 80153884 001507E4 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 80153888 001507E8 4E 80 00 20 */ blr + +.global sub_8015388c +sub_8015388c: +/* 8015388C 001507EC 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 80153890 001507F0 7C 08 02 A6 */ mflr r0 +/* 80153894 001507F4 90 01 00 74 */ stw r0, 0x74(r1) +/* 80153898 001507F8 BF 01 00 50 */ stmw r24, 0x50(r1) +/* 8015389C 001507FC 7C 7A 1B 78 */ mr r26, r3 +/* 801538A0 00150800 7C 9B 23 78 */ mr r27, r4 +/* 801538A4 00150804 7C BC 2B 78 */ mr r28, r5 +/* 801538A8 00150808 83 E3 00 00 */ lwz r31, 0(r3) +/* 801538AC 0015080C 3B FF 00 18 */ addi r31, r31, 0x18 +/* 801538B0 00150810 48 00 01 5C */ b lbl_80153A0C +lbl_801538B4: +/* 801538B4 00150814 A0 7F 00 00 */ lhz r3, 0(r31) +/* 801538B8 00150818 7F FD FB 78 */ mr r29, r31 +/* 801538BC 0015081C C0 7F 00 04 */ lfs f3, 4(r31) +/* 801538C0 00150820 3B DF FF E8 */ addi r30, r31, -24 +/* 801538C4 00150824 88 1F 00 08 */ lbz r0, 8(r31) +/* 801538C8 00150828 54 79 04 3E */ clrlwi r25, r3, 0x10 +/* 801538CC 0015082C C0 5F 00 0C */ lfs f2, 0xc(r31) +/* 801538D0 00150830 C0 3F 00 10 */ lfs f1, 0x10(r31) +/* 801538D4 00150834 C0 1F 00 14 */ lfs f0, 0x14(r31) +/* 801538D8 00150838 B0 61 00 38 */ sth r3, 0x38(r1) +/* 801538DC 0015083C D0 61 00 3C */ stfs f3, 0x3c(r1) +/* 801538E0 00150840 98 01 00 40 */ stb r0, 0x40(r1) +/* 801538E4 00150844 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 801538E8 00150848 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 801538EC 0015084C D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 801538F0 00150850 48 00 00 3C */ b lbl_8015392C +lbl_801538F4: +/* 801538F4 00150854 A0 1E 00 00 */ lhz r0, 0(r30) +/* 801538F8 00150858 B0 1D 00 00 */ sth r0, 0(r29) +/* 801538FC 0015085C C0 1E 00 04 */ lfs f0, 4(r30) +/* 80153900 00150860 D0 1D 00 04 */ stfs f0, 4(r29) +/* 80153904 00150864 88 1E 00 08 */ lbz r0, 8(r30) +/* 80153908 00150868 98 1D 00 08 */ stb r0, 8(r29) +/* 8015390C 0015086C 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 80153910 00150870 80 1E 00 10 */ lwz r0, 0x10(r30) +/* 80153914 00150874 90 7D 00 0C */ stw r3, 0xc(r29) +/* 80153918 00150878 90 1D 00 10 */ stw r0, 0x10(r29) +/* 8015391C 0015087C 80 1E 00 14 */ lwz r0, 0x14(r30) +/* 80153920 00150880 3B DE FF E8 */ addi r30, r30, -24 +/* 80153924 00150884 90 1D 00 14 */ stw r0, 0x14(r29) +/* 80153928 00150888 3B BD FF E8 */ addi r29, r29, -24 +lbl_8015392C: +/* 8015392C 0015088C 80 1A 00 00 */ lwz r0, 0(r26) +/* 80153930 00150890 7C 00 E8 40 */ cmplw r0, r29 +/* 80153934 00150894 40 80 00 A4 */ bge lbl_801539D8 +/* 80153938 00150898 B3 21 00 08 */ sth r25, 8(r1) +/* 8015393C 0015089C 38 81 00 08 */ addi r4, r1, 8 +/* 80153940 001508A0 80 7C 00 00 */ lwz r3, 0(r28) +/* 80153944 001508A4 4B EF 8C 61 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80153948 001508A8 7C 64 1B 78 */ mr r4, r3 +/* 8015394C 001508AC 38 61 00 18 */ addi r3, r1, 0x18 +/* 80153950 001508B0 4B F5 C3 41 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80153954 001508B4 83 03 00 04 */ lwz r24, 4(r3) +/* 80153958 001508B8 38 81 00 0C */ addi r4, r1, 0xc +/* 8015395C 001508BC A0 1E 00 00 */ lhz r0, 0(r30) +/* 80153960 001508C0 80 7C 00 00 */ lwz r3, 0(r28) +/* 80153964 001508C4 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80153968 001508C8 4B EF 8C 3D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8015396C 001508CC 7C 64 1B 78 */ mr r4, r3 +/* 80153970 001508D0 38 61 00 10 */ addi r3, r1, 0x10 +/* 80153974 001508D4 4B F5 C3 1D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80153978 001508D8 28 18 00 00 */ cmplwi r24, 0 +/* 8015397C 001508DC 80 63 00 04 */ lwz r3, 4(r3) +/* 80153980 001508E0 41 82 00 4C */ beq lbl_801539CC +/* 80153984 001508E4 28 03 00 00 */ cmplwi r3, 0 +/* 80153988 001508E8 41 82 00 44 */ beq lbl_801539CC +/* 8015398C 001508EC C0 A3 00 60 */ lfs f5, 0x60(r3) +/* 80153990 001508F0 C0 78 00 60 */ lfs f3, 0x60(r24) +/* 80153994 001508F4 C0 83 00 50 */ lfs f4, 0x50(r3) +/* 80153998 001508F8 C0 23 00 40 */ lfs f1, 0x40(r3) +/* 8015399C 001508FC FC 03 28 40 */ fcmpo cr0, f3, f5 +/* 801539A0 00150900 C0 58 00 50 */ lfs f2, 0x50(r24) +/* 801539A4 00150904 C0 18 00 40 */ lfs f0, 0x40(r24) +/* 801539A8 00150908 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801539AC 0015090C D0 81 00 30 */ stfs f4, 0x30(r1) +/* 801539B0 00150910 D0 A1 00 34 */ stfs f5, 0x34(r1) +/* 801539B4 00150914 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801539B8 00150918 D0 41 00 24 */ stfs f2, 0x24(r1) +/* 801539BC 0015091C D0 61 00 28 */ stfs f3, 0x28(r1) +/* 801539C0 00150920 7C 00 00 26 */ mfcr r0 +/* 801539C4 00150924 54 00 0F FE */ srwi r0, r0, 0x1f +/* 801539C8 00150928 48 00 00 08 */ b lbl_801539D0 +lbl_801539CC: +/* 801539CC 0015092C 38 00 00 00 */ li r0, 0 +lbl_801539D0: +/* 801539D0 00150930 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 801539D4 00150934 40 82 FF 20 */ bne lbl_801538F4 +lbl_801539D8: +/* 801539D8 00150938 A0 01 00 38 */ lhz r0, 0x38(r1) +/* 801539DC 0015093C 3B FF 00 18 */ addi r31, r31, 0x18 +/* 801539E0 00150940 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 801539E4 00150944 B0 1D 00 00 */ sth r0, 0(r29) +/* 801539E8 00150948 88 61 00 40 */ lbz r3, 0x40(r1) +/* 801539EC 0015094C D0 1D 00 04 */ stfs f0, 4(r29) +/* 801539F0 00150950 80 01 00 44 */ lwz r0, 0x44(r1) +/* 801539F4 00150954 98 7D 00 08 */ stb r3, 8(r29) +/* 801539F8 00150958 80 61 00 48 */ lwz r3, 0x48(r1) +/* 801539FC 0015095C 90 1D 00 0C */ stw r0, 0xc(r29) +/* 80153A00 00150960 80 01 00 4C */ lwz r0, 0x4c(r1) +/* 80153A04 00150964 90 7D 00 10 */ stw r3, 0x10(r29) +/* 80153A08 00150968 90 1D 00 14 */ stw r0, 0x14(r29) +lbl_80153A0C: +/* 80153A0C 0015096C 80 1B 00 00 */ lwz r0, 0(r27) +/* 80153A10 00150970 7C 1F 00 40 */ cmplw r31, r0 +/* 80153A14 00150974 41 80 FE A0 */ blt lbl_801538B4 +/* 80153A18 00150978 BB 01 00 50 */ lmw r24, 0x50(r1) +/* 80153A1C 0015097C 80 01 00 74 */ lwz r0, 0x74(r1) +/* 80153A20 00150980 7C 08 03 A6 */ mtlr r0 +/* 80153A24 00150984 38 21 00 70 */ addi r1, r1, 0x70 +/* 80153A28 00150988 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptSteam.s b/asm/Kyoto_CWD/ScriptObjects/CScriptSteam.s new file mode 100644 index 00000000..7c460afa --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptSteam.s @@ -0,0 +1,290 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global Accept__12CScriptSteamFR8IVisitor +Accept__12CScriptSteamFR8IVisitor: +/* 80174B10 00171A70 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80174B14 00171A74 7C 08 02 A6 */ mflr r0 +/* 80174B18 00171A78 90 01 00 14 */ stw r0, 0x14(r1) +/* 80174B1C 00171A7C 7C 60 1B 78 */ mr r0, r3 +/* 80174B20 00171A80 7C 83 23 78 */ mr r3, r4 +/* 80174B24 00171A84 81 84 00 00 */ lwz r12, 0(r4) +/* 80174B28 00171A88 7C 04 03 78 */ mr r4, r0 +/* 80174B2C 00171A8C 81 8C 00 CC */ lwz r12, 0xcc(r12) +/* 80174B30 00171A90 7D 89 03 A6 */ mtctr r12 +/* 80174B34 00171A94 4E 80 04 21 */ bctrl +/* 80174B38 00171A98 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80174B3C 00171A9C 7C 08 03 A6 */ mtlr r0 +/* 80174B40 00171AA0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80174B44 00171AA4 4E 80 00 20 */ blr + +.global Think__12CScriptSteamFfR13CStateManager +Think__12CScriptSteamFfR13CStateManager: +/* 80174B48 00171AA8 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80174B4C 00171AAC 7C 08 02 A6 */ mflr r0 +/* 80174B50 00171AB0 90 01 00 44 */ stw r0, 0x44(r1) +/* 80174B54 00171AB4 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 80174B58 00171AB8 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 80174B5C 00171ABC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80174B60 00171AC0 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80174B64 00171AC4 88 03 00 30 */ lbz r0, 0x30(r3) +/* 80174B68 00171AC8 7C 7E 1B 78 */ mr r30, r3 +/* 80174B6C 00171ACC 7C 9F 23 78 */ mr r31, r4 +/* 80174B70 00171AD0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80174B74 00171AD4 41 82 01 04 */ beq lbl_80174C78 +/* 80174B78 00171AD8 4B F0 19 55 */ bl Think__14CScriptTriggerFfR13CStateManager +/* 80174B7C 00171ADC 88 1E 01 48 */ lbz r0, 0x148(r30) +/* 80174B80 00171AE0 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 80174B84 00171AE4 41 82 00 D0 */ beq lbl_80174C54 +/* 80174B88 00171AE8 80 7F 08 70 */ lwz r3, 0x870(r31) +/* 80174B8C 00171AEC 80 03 00 74 */ lwz r0, 0x74(r3) +/* 80174B90 00171AF0 2C 00 00 00 */ cmpwi r0, 0 +/* 80174B94 00171AF4 40 82 00 C0 */ bne lbl_80174C54 +/* 80174B98 00171AF8 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 80174B9C 00171AFC 38 61 00 14 */ addi r3, r1, 0x14 +/* 80174BA0 00171B00 48 11 01 DD */ bl GetEyePosition__7CPlayerCFv +/* 80174BA4 00171B04 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 80174BA8 00171B08 38 61 00 08 */ addi r3, r1, 8 +/* 80174BAC 00171B0C C0 01 00 18 */ lfs f0, 0x18(r1) +/* 80174BB0 00171B10 C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 80174BB4 00171B14 C0 41 00 1C */ lfs f2, 0x1c(r1) +/* 80174BB8 00171B18 EC 81 00 28 */ fsubs f4, f1, f0 +/* 80174BBC 00171B1C C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 80174BC0 00171B20 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 80174BC4 00171B24 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80174BC8 00171B28 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 80174BCC 00171B2C EC 01 00 28 */ fsubs f0, f1, f0 +/* 80174BD0 00171B30 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 80174BD4 00171B34 D0 01 00 08 */ stfs f0, 8(r1) +/* 80174BD8 00171B38 48 19 FC E1 */ bl Magnitude__9CVector3fCFv +/* 80174BDC 00171B3C C0 1E 01 64 */ lfs f0, 0x164(r30) +/* 80174BE0 00171B40 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80174BE4 00171B44 4C 41 13 82 */ cror 2, 1, 2 +/* 80174BE8 00171B48 40 82 00 0C */ bne lbl_80174BF4 +/* 80174BEC 00171B4C C3 E2 A1 50 */ lfs f31, lbl_805ABE70@sda21(r2) +/* 80174BF0 00171B50 48 00 00 20 */ b lbl_80174C10 +lbl_80174BF4: +/* 80174BF4 00171B54 C0 42 A1 54 */ lfs f2, lbl_805ABE74@sda21(r2) +/* 80174BF8 00171B58 C0 1E 01 68 */ lfs f0, 0x168(r30) +/* 80174BFC 00171B5C EC 22 00 72 */ fmuls f1, f2, f1 +/* 80174C00 00171B60 C3 FE 01 58 */ lfs f31, 0x158(r30) +/* 80174C04 00171B64 EC 21 00 32 */ fmuls f1, f1, f0 +/* 80174C08 00171B68 48 1A 01 3D */ bl FastCosR__5CMathFf +/* 80174C0C 00171B6C EF E1 07 F2 */ fmuls f31, f1, f31 +lbl_80174C10: +/* 80174C10 00171B70 88 1E 01 50 */ lbz r0, 0x150(r30) +/* 80174C14 00171B74 FC 20 F8 90 */ fmr f1, f31 +/* 80174C18 00171B78 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 80174C1C 00171B7C 7C 00 00 34 */ cntlzw r0, r0 +/* 80174C20 00171B80 C0 5E 01 5C */ lfs f2, 0x15c(r30) +/* 80174C24 00171B84 C0 7E 01 60 */ lfs f3, 0x160(r30) +/* 80174C28 00171B88 54 05 D9 7E */ srwi r5, r0, 5 +/* 80174C2C 00171B8C 80 9E 01 54 */ lwz r4, 0x154(r30) +/* 80174C30 00171B90 4B EA 2E 85 */ bl SetVisorSteam__7CPlayerFfffUib +/* 80174C34 00171B94 88 1E 01 50 */ lbz r0, 0x150(r30) +/* 80174C38 00171B98 28 00 00 00 */ cmplwi r0, 0 +/* 80174C3C 00171B9C 41 82 00 3C */ beq lbl_80174C78 +/* 80174C40 00171BA0 C0 02 A1 58 */ lfs f0, lbl_805ABE78@sda21(r2) +/* 80174C44 00171BA4 80 7F 08 80 */ lwz r3, 0x880(r31) +/* 80174C48 00171BA8 EC 00 07 F2 */ fmuls f0, f0, f31 +/* 80174C4C 00171BAC D0 03 0B 54 */ stfs f0, 0xb54(r3) +/* 80174C50 00171BB0 48 00 00 28 */ b lbl_80174C78 +lbl_80174C54: +/* 80174C54 00171BB4 88 1E 01 50 */ lbz r0, 0x150(r30) +/* 80174C58 00171BB8 38 80 FF FF */ li r4, -1 +/* 80174C5C 00171BBC 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 80174C60 00171BC0 7C 00 00 34 */ cntlzw r0, r0 +/* 80174C64 00171BC4 C0 22 A1 50 */ lfs f1, lbl_805ABE70@sda21(r2) +/* 80174C68 00171BC8 C0 5E 01 5C */ lfs f2, 0x15c(r30) +/* 80174C6C 00171BCC 54 05 D9 7E */ srwi r5, r0, 5 +/* 80174C70 00171BD0 C0 7E 01 60 */ lfs f3, 0x160(r30) +/* 80174C74 00171BD4 4B EA 2E 41 */ bl SetVisorSteam__7CPlayerFfffUib +lbl_80174C78: +/* 80174C78 00171BD8 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 80174C7C 00171BDC 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80174C80 00171BE0 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 80174C84 00171BE4 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80174C88 00171BE8 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80174C8C 00171BEC 7C 08 03 A6 */ mtlr r0 +/* 80174C90 00171BF0 38 21 00 40 */ addi r1, r1, 0x40 +/* 80174C94 00171BF4 4E 80 00 20 */ blr + +.global AcceptScriptMsg__12CScriptSteamF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__12CScriptSteamF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 80174C98 00171BF8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80174C9C 00171BFC 7C 08 02 A6 */ mflr r0 +/* 80174CA0 00171C00 90 01 00 24 */ stw r0, 0x24(r1) +/* 80174CA4 00171C04 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80174CA8 00171C08 7C DF 33 78 */ mr r31, r6 +/* 80174CAC 00171C0C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80174CB0 00171C10 7C BE 2B 78 */ mr r30, r5 +/* 80174CB4 00171C14 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80174CB8 00171C18 7C 9D 23 78 */ mr r29, r4 +/* 80174CBC 00171C1C 2C 1D 00 04 */ cmpwi r29, 4 +/* 80174CC0 00171C20 93 81 00 10 */ stw r28, 0x10(r1) +/* 80174CC4 00171C24 7C 7C 1B 78 */ mr r28, r3 +/* 80174CC8 00171C28 41 82 00 08 */ beq lbl_80174CD0 +/* 80174CCC 00171C2C 48 00 00 28 */ b lbl_80174CF4 +lbl_80174CD0: +/* 80174CD0 00171C30 88 1C 01 50 */ lbz r0, 0x150(r28) +/* 80174CD4 00171C34 38 80 FF FF */ li r4, -1 +/* 80174CD8 00171C38 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 80174CDC 00171C3C 7C 00 00 34 */ cntlzw r0, r0 +/* 80174CE0 00171C40 C0 22 A1 50 */ lfs f1, lbl_805ABE70@sda21(r2) +/* 80174CE4 00171C44 C0 5C 01 5C */ lfs f2, 0x15c(r28) +/* 80174CE8 00171C48 54 05 D9 7E */ srwi r5, r0, 5 +/* 80174CEC 00171C4C C0 7C 01 60 */ lfs f3, 0x160(r28) +/* 80174CF0 00171C50 4B EA 2D C5 */ bl SetVisorSteam__7CPlayerFfffUib +lbl_80174CF4: +/* 80174CF4 00171C54 A0 1E 00 00 */ lhz r0, 0(r30) +/* 80174CF8 00171C58 7F 83 E3 78 */ mr r3, r28 +/* 80174CFC 00171C5C 7F A4 EB 78 */ mr r4, r29 +/* 80174D00 00171C60 7F E6 FB 78 */ mr r6, r31 +/* 80174D04 00171C64 B0 01 00 08 */ sth r0, 8(r1) +/* 80174D08 00171C68 38 A1 00 08 */ addi r5, r1, 8 +/* 80174D0C 00171C6C 4B F0 17 ED */ bl AcceptScriptMsg__14CScriptTriggerF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 80174D10 00171C70 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80174D14 00171C74 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80174D18 00171C78 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80174D1C 00171C7C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80174D20 00171C80 83 81 00 10 */ lwz r28, 0x10(r1) +/* 80174D24 00171C84 7C 08 03 A6 */ mtlr r0 +/* 80174D28 00171C88 38 21 00 20 */ addi r1, r1, 0x20 +/* 80174D2C 00171C8C 4E 80 00 20 */ blr + +.global __dt__12CScriptSteamFv +__dt__12CScriptSteamFv: +/* 80174D30 00171C90 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80174D34 00171C94 7C 08 02 A6 */ mflr r0 +/* 80174D38 00171C98 90 01 00 14 */ stw r0, 0x14(r1) +/* 80174D3C 00171C9C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80174D40 00171CA0 7C 9F 23 78 */ mr r31, r4 +/* 80174D44 00171CA4 93 C1 00 08 */ stw r30, 8(r1) +/* 80174D48 00171CA8 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80174D4C 00171CAC 41 82 00 28 */ beq lbl_80174D74 +/* 80174D50 00171CB0 3C A0 80 3E */ lis r5, lbl_803E3DA8@ha +/* 80174D54 00171CB4 38 80 00 00 */ li r4, 0 +/* 80174D58 00171CB8 38 05 3D A8 */ addi r0, r5, lbl_803E3DA8@l +/* 80174D5C 00171CBC 90 1E 00 00 */ stw r0, 0(r30) +/* 80174D60 00171CC0 4B F0 1F 21 */ bl __dt__14CScriptTriggerFv +/* 80174D64 00171CC4 7F E0 07 35 */ extsh. r0, r31 +/* 80174D68 00171CC8 40 81 00 0C */ ble lbl_80174D74 +/* 80174D6C 00171CCC 7F C3 F3 78 */ mr r3, r30 +/* 80174D70 00171CD0 48 1A 0B C1 */ bl Free__7CMemoryFPCv +lbl_80174D74: +/* 80174D74 00171CD4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80174D78 00171CD8 7F C3 F3 78 */ mr r3, r30 +/* 80174D7C 00171CDC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80174D80 00171CE0 83 C1 00 08 */ lwz r30, 8(r1) +/* 80174D84 00171CE4 7C 08 03 A6 */ mtlr r0 +/* 80174D88 00171CE8 38 21 00 10 */ addi r1, r1, 0x10 +/* 80174D8C 00171CEC 4E 80 00 20 */ blr + +.global "__ct__12CScriptSteamF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fRC6CAABoxRC11CDamageInfoRC9CVector3fUibUiffff" +"__ct__12CScriptSteamF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fRC6CAABoxRC11CDamageInfoRC9CVector3fUibUiffff": +/* 80174D90 00171CF0 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 80174D94 00171CF4 7C 08 02 A6 */ mflr r0 +/* 80174D98 00171CF8 90 01 00 74 */ stw r0, 0x74(r1) +/* 80174D9C 00171CFC DB E1 00 60 */ stfd f31, 0x60(r1) +/* 80174DA0 00171D00 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 80174DA4 00171D04 DB C1 00 50 */ stfd f30, 0x50(r1) +/* 80174DA8 00171D08 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 +/* 80174DAC 00171D0C DB A1 00 40 */ stfd f29, 0x40(r1) +/* 80174DB0 00171D10 F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 +/* 80174DB4 00171D14 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80174DB8 00171D18 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80174DBC 00171D1C 93 A1 00 34 */ stw r29, 0x34(r1) +/* 80174DC0 00171D20 93 81 00 30 */ stw r28, 0x30(r1) +/* 80174DC4 00171D24 A0 84 00 00 */ lhz r4, 0(r4) +/* 80174DC8 00171D28 38 00 00 00 */ li r0, 0 +/* 80174DCC 00171D2C D0 81 00 18 */ stfs f4, 0x18(r1) +/* 80174DD0 00171D30 FF A0 08 90 */ fmr f29, f1 +/* 80174DD4 00171D34 81 61 00 78 */ lwz r11, 0x78(r1) +/* 80174DD8 00171D38 FF C0 10 90 */ fmr f30, f2 +/* 80174DDC 00171D3C B0 81 00 1C */ sth r4, 0x1c(r1) +/* 80174DE0 00171D40 FF E0 18 90 */ fmr f31, f3 +/* 80174DE4 00171D44 88 81 00 7F */ lbz r4, 0x7f(r1) +/* 80174DE8 00171D48 91 61 00 08 */ stw r11, 8(r1) +/* 80174DEC 00171D4C 7C 7C 1B 78 */ mr r28, r3 +/* 80174DF0 00171D50 83 C1 00 80 */ lwz r30, 0x80(r1) +/* 80174DF4 00171D54 7D 1D 43 78 */ mr r29, r8 +/* 80174DF8 00171D58 90 81 00 0C */ stw r4, 0xc(r1) +/* 80174DFC 00171D5C 38 81 00 1C */ addi r4, r1, 0x1c +/* 80174E00 00171D60 8B E1 00 87 */ lbz r31, 0x87(r1) +/* 80174E04 00171D64 90 01 00 10 */ stw r0, 0x10(r1) +/* 80174E08 00171D68 90 01 00 14 */ stw r0, 0x14(r1) +/* 80174E0C 00171D6C 4B F0 1F 4D */ bl "__ct__14CScriptTriggerF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fRC6CAABoxRC11CDamageInfoRC9CVector3fUibbb" +/* 80174E10 00171D70 EC 5E E8 24 */ fdivs f2, f30, f29 +/* 80174E14 00171D74 3C 60 80 3E */ lis r3, lbl_803E3DA8@ha +/* 80174E18 00171D78 38 03 3D A8 */ addi r0, r3, lbl_803E3DA8@l +/* 80174E1C 00171D7C C0 02 A1 50 */ lfs f0, lbl_805ABE70@sda21(r2) +/* 80174E20 00171D80 90 1C 00 00 */ stw r0, 0(r28) +/* 80174E24 00171D84 9B FC 01 50 */ stb r31, 0x150(r28) +/* 80174E28 00171D88 93 DC 01 54 */ stw r30, 0x154(r28) +/* 80174E2C 00171D8C EC 3F E8 24 */ fdivs f1, f31, f29 +/* 80174E30 00171D90 D3 BC 01 58 */ stfs f29, 0x158(r28) +/* 80174E34 00171D94 D0 5C 01 5C */ stfs f2, 0x15c(r28) +/* 80174E38 00171D98 D0 3C 01 60 */ stfs f1, 0x160(r28) +/* 80174E3C 00171D9C D0 1C 01 64 */ stfs f0, 0x164(r28) +/* 80174E40 00171DA0 D0 1C 01 68 */ stfs f0, 0x168(r28) +/* 80174E44 00171DA4 C0 1D 00 14 */ lfs f0, 0x14(r29) +/* 80174E48 00171DA8 C0 3D 00 10 */ lfs f1, 0x10(r29) +/* 80174E4C 00171DAC D0 01 00 20 */ stfs f0, 0x20(r1) +/* 80174E50 00171DB0 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80174E54 00171DB4 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 80174E58 00171DB8 40 80 00 0C */ bge lbl_80174E64 +/* 80174E5C 00171DBC 38 61 00 20 */ addi r3, r1, 0x20 +/* 80174E60 00171DC0 48 00 00 08 */ b lbl_80174E68 +lbl_80174E64: +/* 80174E64 00171DC4 38 61 00 24 */ addi r3, r1, 0x24 +lbl_80174E68: +/* 80174E68 00171DC8 C0 3D 00 0C */ lfs f1, 0xc(r29) +/* 80174E6C 00171DCC D0 21 00 28 */ stfs f1, 0x28(r1) +/* 80174E70 00171DD0 C0 03 00 00 */ lfs f0, 0(r3) +/* 80174E74 00171DD4 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80174E78 00171DD8 40 80 00 08 */ bge lbl_80174E80 +/* 80174E7C 00171DDC 48 00 00 08 */ b lbl_80174E84 +lbl_80174E80: +/* 80174E80 00171DE0 38 61 00 28 */ addi r3, r1, 0x28 +lbl_80174E84: +/* 80174E84 00171DE4 C0 41 00 18 */ lfs f2, 0x18(r1) +/* 80174E88 00171DE8 C0 02 A1 50 */ lfs f0, lbl_805ABE70@sda21(r2) +/* 80174E8C 00171DEC C0 63 00 00 */ lfs f3, 0(r3) +/* 80174E90 00171DF0 EC 22 00 28 */ fsubs f1, f2, f0 +/* 80174E94 00171DF4 C8 02 A1 60 */ lfd f0, lbl_805ABE80@sda21(r2) +/* 80174E98 00171DF8 D0 61 00 2C */ stfs f3, 0x2c(r1) +/* 80174E9C 00171DFC FC 20 0A 10 */ fabs f1, f1 +/* 80174EA0 00171E00 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80174EA4 00171E04 40 80 00 08 */ bge lbl_80174EAC +/* 80174EA8 00171E08 48 00 00 1C */ b lbl_80174EC4 +lbl_80174EAC: +/* 80174EAC 00171E0C FC 03 10 40 */ fcmpo cr0, f3, f2 +/* 80174EB0 00171E10 40 80 00 0C */ bge lbl_80174EBC +/* 80174EB4 00171E14 38 61 00 2C */ addi r3, r1, 0x2c +/* 80174EB8 00171E18 48 00 00 08 */ b lbl_80174EC0 +lbl_80174EBC: +/* 80174EBC 00171E1C 38 61 00 18 */ addi r3, r1, 0x18 +lbl_80174EC0: +/* 80174EC0 00171E20 C0 63 00 00 */ lfs f3, 0(r3) +lbl_80174EC4: +/* 80174EC4 00171E24 D0 7C 01 64 */ stfs f3, 0x164(r28) +/* 80174EC8 00171E28 7F 83 E3 78 */ mr r3, r28 +/* 80174ECC 00171E2C C0 22 A1 68 */ lfs f1, lbl_805ABE88@sda21(r2) +/* 80174ED0 00171E30 C0 1C 01 64 */ lfs f0, 0x164(r28) +/* 80174ED4 00171E34 EC 01 00 24 */ fdivs f0, f1, f0 +/* 80174ED8 00171E38 D0 1C 01 68 */ stfs f0, 0x168(r28) +/* 80174EDC 00171E3C E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 80174EE0 00171E40 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 80174EE4 00171E44 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 +/* 80174EE8 00171E48 CB C1 00 50 */ lfd f30, 0x50(r1) +/* 80174EEC 00171E4C E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 +/* 80174EF0 00171E50 CB A1 00 40 */ lfd f29, 0x40(r1) +/* 80174EF4 00171E54 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80174EF8 00171E58 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80174EFC 00171E5C 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 80174F00 00171E60 80 01 00 74 */ lwz r0, 0x74(r1) +/* 80174F04 00171E64 83 81 00 30 */ lwz r28, 0x30(r1) +/* 80174F08 00171E68 7C 08 03 A6 */ mtlr r0 +/* 80174F0C 00171E6C 38 21 00 70 */ addi r1, r1, 0x70 +/* 80174F10 00171E70 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/ScriptObjects/CScriptTargetingPoint.s b/asm/Kyoto_CWD/ScriptObjects/CScriptTargetingPoint.s new file mode 100644 index 00000000..3cb55b53 --- /dev/null +++ b/asm/Kyoto_CWD/ScriptObjects/CScriptTargetingPoint.s @@ -0,0 +1,180 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__21CScriptTargetingPointFv +__dt__21CScriptTargetingPointFv: +/* 8018D264 0018A1C4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018D268 0018A1C8 7C 08 02 A6 */ mflr r0 +/* 8018D26C 0018A1CC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018D270 0018A1D0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8018D274 0018A1D4 7C 9F 23 78 */ mr r31, r4 +/* 8018D278 0018A1D8 93 C1 00 08 */ stw r30, 8(r1) +/* 8018D27C 0018A1DC 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8018D280 0018A1E0 41 82 00 28 */ beq lbl_8018D2A8 +/* 8018D284 0018A1E4 3C A0 80 3E */ lis r5, lbl_803E4330@ha +/* 8018D288 0018A1E8 38 80 00 00 */ li r4, 0 +/* 8018D28C 0018A1EC 38 05 43 30 */ addi r0, r5, lbl_803E4330@l +/* 8018D290 0018A1F0 90 1E 00 00 */ stw r0, 0(r30) +/* 8018D294 0018A1F4 4B EC 84 5D */ bl __dt__6CActorFv +/* 8018D298 0018A1F8 7F E0 07 35 */ extsh. r0, r31 +/* 8018D29C 0018A1FC 40 81 00 0C */ ble lbl_8018D2A8 +/* 8018D2A0 0018A200 7F C3 F3 78 */ mr r3, r30 +/* 8018D2A4 0018A204 48 18 86 8D */ bl Free__7CMemoryFPCv +lbl_8018D2A8: +/* 8018D2A8 0018A208 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018D2AC 0018A20C 7F C3 F3 78 */ mr r3, r30 +/* 8018D2B0 0018A210 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8018D2B4 0018A214 83 C1 00 08 */ lwz r30, 8(r1) +/* 8018D2B8 0018A218 7C 08 03 A6 */ mtlr r0 +/* 8018D2BC 0018A21C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018D2C0 0018A220 4E 80 00 20 */ blr + +.global Render__21CScriptTargetingPointCFRC13CStateManager +Render__21CScriptTargetingPointCFRC13CStateManager: +/* 8018D2C4 0018A224 4E 80 00 20 */ blr + +.global AddToRenderer__21CScriptTargetingPointCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__21CScriptTargetingPointCFRC14CFrustumPlanesRC13CStateManager: +/* 8018D2C8 0018A228 4E 80 00 20 */ blr + +.global Think__21CScriptTargetingPointFfR13CStateManager +Think__21CScriptTargetingPointFfR13CStateManager: +/* 8018D2CC 0018A22C C0 43 00 EC */ lfs f2, 0xec(r3) +/* 8018D2D0 0018A230 C0 02 A4 60 */ lfs f0, lbl_805AC180@sda21(r2) +/* 8018D2D4 0018A234 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8018D2D8 0018A238 4C 81 00 20 */ blelr +/* 8018D2DC 0018A23C EC 02 08 28 */ fsubs f0, f2, f1 +/* 8018D2E0 0018A240 D0 03 00 EC */ stfs f0, 0xec(r3) +/* 8018D2E4 0018A244 4E 80 00 20 */ blr + +.global GetLocked__21CScriptTargetingPointCFv +GetLocked__21CScriptTargetingPointCFv: +/* 8018D2E8 0018A248 80 63 00 24 */ lwz r3, 0x24(r3) +/* 8018D2EC 0018A24C 7C 03 00 D0 */ neg r0, r3 +/* 8018D2F0 0018A250 7C 00 18 78 */ andc r0, r0, r3 +/* 8018D2F4 0018A254 54 03 0F FE */ srwi r3, r0, 0x1f +/* 8018D2F8 0018A258 4E 80 00 20 */ blr + +.global AcceptScriptMsg__21CScriptTargetingPointF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__21CScriptTargetingPointF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8018D2FC 0018A25C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8018D300 0018A260 7C 08 02 A6 */ mflr r0 +/* 8018D304 0018A264 90 01 00 24 */ stw r0, 0x24(r1) +/* 8018D308 0018A268 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8018D30C 0018A26C 7C DF 33 78 */ mr r31, r6 +/* 8018D310 0018A270 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8018D314 0018A274 7C 9E 23 78 */ mr r30, r4 +/* 8018D318 0018A278 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8018D31C 0018A27C 7C 7D 1B 78 */ mr r29, r3 +/* 8018D320 0018A280 A0 05 00 00 */ lhz r0, 0(r5) +/* 8018D324 0018A284 38 A1 00 08 */ addi r5, r1, 8 +/* 8018D328 0018A288 B0 01 00 08 */ sth r0, 8(r1) +/* 8018D32C 0018A28C 4B EC 62 E9 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8018D330 0018A290 2C 1E 00 04 */ cmpwi r30, 4 +/* 8018D334 0018A294 41 82 00 14 */ beq lbl_8018D348 +/* 8018D338 0018A298 40 80 00 24 */ bge lbl_8018D35C +/* 8018D33C 0018A29C 2C 1E 00 01 */ cmpwi r30, 1 +/* 8018D340 0018A2A0 41 82 00 08 */ beq lbl_8018D348 +/* 8018D344 0018A2A4 48 00 00 18 */ b lbl_8018D35C +lbl_8018D348: +/* 8018D348 0018A2A8 7F A3 EB 78 */ mr r3, r29 +/* 8018D34C 0018A2AC 7F E5 FB 78 */ mr r5, r31 +/* 8018D350 0018A2B0 38 80 00 0A */ li r4, 0xa +/* 8018D354 0018A2B4 38 C0 FF FF */ li r6, -1 +/* 8018D358 0018A2B8 4B EC 3D 69 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage +lbl_8018D35C: +/* 8018D35C 0018A2BC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8018D360 0018A2C0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8018D364 0018A2C4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8018D368 0018A2C8 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8018D36C 0018A2CC 7C 08 03 A6 */ mtlr r0 +/* 8018D370 0018A2D0 38 21 00 20 */ addi r1, r1, 0x20 +/* 8018D374 0018A2D4 4E 80 00 20 */ blr + +.global Accept__21CScriptTargetingPointFR8IVisitor +Accept__21CScriptTargetingPointFR8IVisitor: +/* 8018D378 0018A2D8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018D37C 0018A2DC 7C 08 02 A6 */ mflr r0 +/* 8018D380 0018A2E0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018D384 0018A2E4 7C 60 1B 78 */ mr r0, r3 +/* 8018D388 0018A2E8 7C 83 23 78 */ mr r3, r4 +/* 8018D38C 0018A2EC 81 84 00 00 */ lwz r12, 0(r4) +/* 8018D390 0018A2F0 7C 04 03 78 */ mr r4, r0 +/* 8018D394 0018A2F4 81 8C 00 C0 */ lwz r12, 0xc0(r12) +/* 8018D398 0018A2F8 7D 89 03 A6 */ mtctr r12 +/* 8018D39C 0018A2FC 4E 80 04 21 */ bctrl +/* 8018D3A0 0018A300 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018D3A4 0018A304 7C 08 03 A6 */ mtlr r0 +/* 8018D3A8 0018A308 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018D3AC 0018A30C 4E 80 00 20 */ blr + +.global "__ct__21CScriptTargetingPointF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fb" +"__ct__21CScriptTargetingPointF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fb": +/* 8018D3B0 0018A310 94 21 FF 10 */ stwu r1, -0xf0(r1) +/* 8018D3B4 0018A314 7C 08 02 A6 */ mflr r0 +/* 8018D3B8 0018A318 90 01 00 F4 */ stw r0, 0xf4(r1) +/* 8018D3BC 0018A31C BF 41 00 D8 */ stmw r26, 0xd8(r1) +/* 8018D3C0 0018A320 7C 7F 1B 78 */ mr r31, r3 +/* 8018D3C4 0018A324 7C 9A 23 78 */ mr r26, r4 +/* 8018D3C8 0018A328 7C BB 2B 78 */ mr r27, r5 +/* 8018D3CC 0018A32C 7C DC 33 78 */ mr r28, r6 +/* 8018D3D0 0018A330 7C FD 3B 78 */ mr r29, r7 +/* 8018D3D4 0018A334 7D 1E 43 78 */ mr r30, r8 +/* 8018D3D8 0018A338 38 61 00 88 */ addi r3, r1, 0x88 +/* 8018D3DC 0018A33C 4B EA D3 C9 */ bl CModelDataNull__10CModelDataFv +/* 8018D3E0 0018A340 38 61 00 20 */ addi r3, r1, 0x20 +/* 8018D3E4 0018A344 4B E8 DA 55 */ bl None__16CActorParametersFv +/* 8018D3E8 0018A348 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) +/* 8018D3EC 0018A34C 38 00 00 00 */ li r0, 0 +/* 8018D3F0 0018A350 80 AD 8E E8 */ lwz r5, lbl_805A7AA8@sda21(r13) +/* 8018D3F4 0018A354 38 60 00 00 */ li r3, 0 +/* 8018D3F8 0018A358 B0 81 00 10 */ sth r4, 0x10(r1) +/* 8018D3FC 0018A35C 38 80 00 01 */ li r4, 1 +/* 8018D400 0018A360 90 01 00 1C */ stw r0, 0x1c(r1) +/* 8018D404 0018A364 90 01 00 18 */ stw r0, 0x18(r1) +/* 8018D408 0018A368 48 1F CA ED */ bl __shl2i +/* 8018D40C 0018A36C 80 A1 00 18 */ lwz r5, 0x18(r1) +/* 8018D410 0018A370 39 61 00 20 */ addi r11, r1, 0x20 +/* 8018D414 0018A374 80 C1 00 1C */ lwz r6, 0x1c(r1) +/* 8018D418 0018A378 38 01 00 10 */ addi r0, r1, 0x10 +/* 8018D41C 0018A37C 7C A3 1B 78 */ or r3, r5, r3 +/* 8018D420 0018A380 A1 3A 00 00 */ lhz r9, 0(r26) +/* 8018D424 0018A384 7C C4 23 78 */ or r4, r6, r4 +/* 8018D428 0018A388 90 61 00 18 */ stw r3, 0x18(r1) +/* 8018D42C 0018A38C 7F E3 FB 78 */ mr r3, r31 +/* 8018D430 0018A390 7F C5 F3 78 */ mr r5, r30 +/* 8018D434 0018A394 90 81 00 1C */ stw r4, 0x1c(r1) +/* 8018D438 0018A398 7F 66 DB 78 */ mr r6, r27 +/* 8018D43C 0018A39C 7F 87 E3 78 */ mr r7, r28 +/* 8018D440 0018A3A0 7F A8 EB 78 */ mr r8, r29 +/* 8018D444 0018A3A4 B1 21 00 14 */ sth r9, 0x14(r1) +/* 8018D448 0018A3A8 38 81 00 14 */ addi r4, r1, 0x14 +/* 8018D44C 0018A3AC 39 21 00 88 */ addi r9, r1, 0x88 +/* 8018D450 0018A3B0 39 41 00 18 */ addi r10, r1, 0x18 +/* 8018D454 0018A3B4 91 61 00 08 */ stw r11, 8(r1) +/* 8018D458 0018A3B8 90 01 00 0C */ stw r0, 0xc(r1) +/* 8018D45C 0018A3BC 4B EC 83 C5 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" +/* 8018D460 0018A3C0 38 61 00 20 */ addi r3, r1, 0x20 +/* 8018D464 0018A3C4 38 80 FF FF */ li r4, -1 +/* 8018D468 0018A3C8 4B F7 91 A1 */ bl __dt__16CActorParametersFv +/* 8018D46C 0018A3CC 38 61 00 88 */ addi r3, r1, 0x88 +/* 8018D470 0018A3D0 38 80 FF FF */ li r4, -1 +/* 8018D474 0018A3D4 4B F8 95 D9 */ bl __dt__10CModelDataFv +/* 8018D478 0018A3D8 3C 60 80 3E */ lis r3, lbl_803E4330@ha +/* 8018D47C 0018A3DC 38 80 00 00 */ li r4, 0 +/* 8018D480 0018A3E0 38 03 43 30 */ addi r0, r3, lbl_803E4330@l +/* 8018D484 0018A3E4 C0 02 A4 60 */ lfs f0, lbl_805AC180@sda21(r2) +/* 8018D488 0018A3E8 90 1F 00 00 */ stw r0, 0(r31) +/* 8018D48C 0018A3EC 7F E3 FB 78 */ mr r3, r31 +/* 8018D490 0018A3F0 88 1F 00 E8 */ lbz r0, 0xe8(r31) +/* 8018D494 0018A3F4 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 8018D498 0018A3F8 98 1F 00 E8 */ stb r0, 0xe8(r31) +/* 8018D49C 0018A3FC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8018D4A0 0018A400 B0 1F 00 EA */ sth r0, 0xea(r31) +/* 8018D4A4 0018A404 D0 1F 00 EC */ stfs f0, 0xec(r31) +/* 8018D4A8 0018A408 BB 41 00 D8 */ lmw r26, 0xd8(r1) +/* 8018D4AC 0018A40C 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 8018D4B0 0018A410 7C 08 03 A6 */ mtlr r0 +/* 8018D4B4 0018A414 38 21 00 F0 */ addi r1, r1, 0xf0 +/* 8018D4B8 0018A418 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Weapons/CPhazonBeam.s b/asm/Kyoto_CWD/Weapons/CPhazonBeam.s new file mode 100644 index 00000000..383e1e23 --- /dev/null +++ b/asm/Kyoto_CWD/Weapons/CPhazonBeam.s @@ -0,0 +1,1146 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global AcceptScriptMsg__11CPhazonBeamF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__11CPhazonBeamF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8018C228 00189188 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018C22C 0018918C 7C 08 02 A6 */ mflr r0 +/* 8018C230 00189190 2C 04 00 22 */ cmpwi r4, 0x22 +/* 8018C234 00189194 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018C238 00189198 41 82 00 08 */ beq lbl_8018C240 +/* 8018C23C 0018919C 48 00 00 40 */ b lbl_8018C27C +lbl_8018C240: +/* 8018C240 001891A0 80 66 08 4C */ lwz r3, 0x84c(r6) +/* 8018C244 001891A4 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) +/* 8018C248 001891A8 80 A3 00 04 */ lwz r5, 4(r3) +/* 8018C24C 001891AC 7C 05 00 00 */ cmpw r5, r0 +/* 8018C250 001891B0 90 A1 00 0C */ stw r5, 0xc(r1) +/* 8018C254 001891B4 41 82 00 28 */ beq lbl_8018C27C +/* 8018C258 001891B8 80 86 08 50 */ lwz r4, 0x850(r6) +/* 8018C25C 001891BC 54 A3 18 38 */ slwi r3, r5, 3 +/* 8018C260 001891C0 38 03 00 04 */ addi r0, r3, 4 +/* 8018C264 001891C4 90 A1 00 08 */ stw r5, 8(r1) +/* 8018C268 001891C8 80 64 00 20 */ lwz r3, 0x20(r4) +/* 8018C26C 001891CC C0 22 A4 08 */ lfs f1, lbl_805AC128@sda21(r2) +/* 8018C270 001891D0 7C 63 00 2E */ lwzx r3, r3, r0 +/* 8018C274 001891D4 C0 42 A4 0C */ lfs f2, lbl_805AC12C@sda21(r2) +/* 8018C278 001891D8 4B ED 1F 5D */ bl SetWeaponWorldLighting__9CGameAreaFff +lbl_8018C27C: +/* 8018C27C 001891DC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018C280 001891E0 7C 08 03 A6 */ mtlr r0 +/* 8018C284 001891E4 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018C288 001891E8 4E 80 00 20 */ blr + +.global CreateBeam__11CPhazonBeamFR13CStateManager +CreateBeam__11CPhazonBeamFR13CStateManager: +/* 8018C28C 001891EC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8018C290 001891F0 7C 08 02 A6 */ mflr r0 +/* 8018C294 001891F4 3C 80 80 3D */ lis r4, lbl_803D08F8@ha +/* 8018C298 001891F8 38 A0 00 00 */ li r5, 0 +/* 8018C29C 001891FC 90 01 00 24 */ stw r0, 0x24(r1) +/* 8018C2A0 00189200 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8018C2A4 00189204 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8018C2A8 00189208 7C 7E 1B 78 */ mr r30, r3 +/* 8018C2AC 0018920C 38 64 08 F8 */ addi r3, r4, lbl_803D08F8@l +/* 8018C2B0 00189210 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8018C2B4 00189214 38 83 00 2F */ addi r4, r3, 0x2f +/* 8018C2B8 00189218 3B A0 00 00 */ li r29, 0 +/* 8018C2BC 0018921C 38 60 03 40 */ li r3, 0x340 +/* 8018C2C0 00189220 48 18 95 AD */ bl __nw__FUlPCcPCc +/* 8018C2C4 00189224 7C 7F 1B 79 */ or. r31, r3, r3 +/* 8018C2C8 00189228 41 82 00 2C */ beq lbl_8018C2F4 +/* 8018C2CC 0018922C 38 61 00 08 */ addi r3, r1, 8 +/* 8018C2D0 00189230 38 9E 02 28 */ addi r4, r30, 0x228 +/* 8018C2D4 00189234 48 1B 4B D5 */ bl __ct__6CTokenFRC6CToken +/* 8018C2D8 00189238 7F E3 FB 78 */ mr r3, r31 +/* 8018C2DC 0018923C 38 81 00 08 */ addi r4, r1, 8 +/* 8018C2E0 00189240 3B A0 00 01 */ li r29, 1 +/* 8018C2E4 00189244 38 A0 00 00 */ li r5, 0 +/* 8018C2E8 00189248 38 C0 00 01 */ li r6, 1 +/* 8018C2EC 0018924C 48 19 30 F5 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 8018C2F0 00189250 7C 7F 1B 78 */ mr r31, r3 +lbl_8018C2F4: +/* 8018C2F4 00189254 80 7E 02 34 */ lwz r3, 0x234(r30) +/* 8018C2F8 00189258 28 03 00 00 */ cmplwi r3, 0 +/* 8018C2FC 0018925C 41 82 00 18 */ beq lbl_8018C314 +/* 8018C300 00189260 81 83 00 00 */ lwz r12, 0(r3) +/* 8018C304 00189264 38 80 00 01 */ li r4, 1 +/* 8018C308 00189268 81 8C 00 08 */ lwz r12, 8(r12) +/* 8018C30C 0018926C 7D 89 03 A6 */ mtctr r12 +/* 8018C310 00189270 4E 80 04 21 */ bctrl +lbl_8018C314: +/* 8018C314 00189274 7F A0 07 75 */ extsb. r0, r29 +/* 8018C318 00189278 93 FE 02 34 */ stw r31, 0x234(r30) +/* 8018C31C 0018927C 41 82 00 10 */ beq lbl_8018C32C +/* 8018C320 00189280 38 61 00 08 */ addi r3, r1, 8 +/* 8018C324 00189284 38 80 00 00 */ li r4, 0 +/* 8018C328 00189288 48 1B 4B 19 */ bl __dt__6CTokenFv +lbl_8018C32C: +/* 8018C32C 0018928C 80 7E 02 34 */ lwz r3, 0x234(r30) +/* 8018C330 00189290 28 03 00 00 */ cmplwi r3, 0 +/* 8018C334 00189294 41 82 00 30 */ beq lbl_8018C364 +/* 8018C338 00189298 81 83 00 00 */ lwz r12, 0(r3) +/* 8018C33C 0018929C 38 9E 00 04 */ addi r4, r30, 4 +/* 8018C340 001892A0 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 8018C344 001892A4 7D 89 03 A6 */ mtctr r12 +/* 8018C348 001892A8 4E 80 04 21 */ bctrl +/* 8018C34C 001892AC 80 7E 02 34 */ lwz r3, 0x234(r30) +/* 8018C350 001892B0 38 80 00 00 */ li r4, 0 +/* 8018C354 001892B4 81 83 00 00 */ lwz r12, 0(r3) +/* 8018C358 001892B8 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8018C35C 001892BC 7D 89 03 A6 */ mtctr r12 +/* 8018C360 001892C0 4E 80 04 21 */ bctrl +lbl_8018C364: +/* 8018C364 001892C4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8018C368 001892C8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8018C36C 001892CC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8018C370 001892D0 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8018C374 001892D4 7C 08 03 A6 */ mtlr r0 +/* 8018C378 001892D8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8018C37C 001892DC 4E 80 00 20 */ blr + +.global IsLoaded__11CPhazonBeamCFv +IsLoaded__11CPhazonBeamCFv: +/* 8018C380 001892E0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018C384 001892E4 7C 08 02 A6 */ mflr r0 +/* 8018C388 001892E8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018C38C 001892EC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8018C390 001892F0 3B E0 00 00 */ li r31, 0 +/* 8018C394 001892F4 93 C1 00 08 */ stw r30, 8(r1) +/* 8018C398 001892F8 7C 7E 1B 78 */ mr r30, r3 +/* 8018C39C 001892FC 48 02 F0 09 */ bl IsLoaded__10CGunWeaponCFv +/* 8018C3A0 00189300 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8018C3A4 00189304 41 82 00 14 */ beq lbl_8018C3B8 +/* 8018C3A8 00189308 88 1E 02 74 */ lbz r0, 0x274(r30) +/* 8018C3AC 0018930C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8018C3B0 00189310 41 82 00 08 */ beq lbl_8018C3B8 +/* 8018C3B4 00189314 3B E0 00 01 */ li r31, 1 +lbl_8018C3B8: +/* 8018C3B8 00189318 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018C3BC 0018931C 7F E3 FB 78 */ mr r3, r31 +/* 8018C3C0 00189320 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8018C3C4 00189324 83 C1 00 08 */ lwz r30, 8(r1) +/* 8018C3C8 00189328 7C 08 03 A6 */ mtlr r0 +/* 8018C3CC 0018932C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018C3D0 00189330 4E 80 00 20 */ blr + +.global Unload__11CPhazonBeamFR13CStateManager +Unload__11CPhazonBeamFR13CStateManager: +/* 8018C3D4 00189334 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018C3D8 00189338 7C 08 02 A6 */ mflr r0 +/* 8018C3DC 0018933C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018C3E0 00189340 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8018C3E4 00189344 7C 7F 1B 78 */ mr r31, r3 +/* 8018C3E8 00189348 48 02 EF C9 */ bl Unload__10CGunWeaponFR13CStateManager +/* 8018C3EC 0018934C 38 00 00 00 */ li r0, 0 +/* 8018C3F0 00189350 38 7F 02 28 */ addi r3, r31, 0x228 +/* 8018C3F4 00189354 90 1F 02 30 */ stw r0, 0x230(r31) +/* 8018C3F8 00189358 48 1B 49 49 */ bl Unlock__6CTokenFv +/* 8018C3FC 0018935C 38 7F 02 1C */ addi r3, r31, 0x21c +/* 8018C400 00189360 48 1B 49 41 */ bl Unlock__6CTokenFv +/* 8018C404 00189364 7F E3 FB 78 */ mr r3, r31 +/* 8018C408 00189368 48 00 0A C5 */ bl ReInitVariables__11CPhazonBeamFv +/* 8018C40C 0018936C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018C410 00189370 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8018C414 00189374 7C 08 03 A6 */ mtlr r0 +/* 8018C418 00189378 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018C41C 0018937C 4E 80 00 20 */ blr + +.global Load__11CPhazonBeamFb +Load__11CPhazonBeamFb: +/* 8018C420 00189380 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8018C424 00189384 7C 08 02 A6 */ mflr r0 +/* 8018C428 00189388 90 01 00 24 */ stw r0, 0x24(r1) +/* 8018C42C 0018938C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8018C430 00189390 7C 9F 23 78 */ mr r31, r4 +/* 8018C434 00189394 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8018C438 00189398 7C 7E 1B 78 */ mr r30, r3 +/* 8018C43C 0018939C 48 02 F0 99 */ bl Load__10CGunWeaponFR13CStateManagerb +/* 8018C440 001893A0 38 7E 02 28 */ addi r3, r30, 0x228 +/* 8018C444 001893A4 48 1B 49 41 */ bl Lock__6CTokenFv +/* 8018C448 001893A8 80 7F 09 00 */ lwz r3, 0x900(r31) +/* 8018C44C 001893AC 48 18 60 D5 */ bl Next__9CRandom16Fv +/* 8018C450 001893B0 88 1E 02 74 */ lbz r0, 0x274(r30) +/* 8018C454 001893B4 50 60 1E F6 */ rlwimi r0, r3, 3, 0x1b, 0x1b +/* 8018C458 001893B8 38 61 00 10 */ addi r3, r1, 0x10 +/* 8018C45C 001893BC 98 1E 02 74 */ stb r0, 0x274(r30) +/* 8018C460 001893C0 88 1E 02 74 */ lbz r0, 0x274(r30) +/* 8018C464 001893C4 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8018C468 001893C8 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 8018C46C 001893CC 41 82 00 0C */ beq lbl_8018C478 +/* 8018C470 001893D0 80 A2 A4 00 */ lwz r5, lbl_805AC120@sda21(r2) +/* 8018C474 001893D4 48 00 00 08 */ b lbl_8018C47C +lbl_8018C478: +/* 8018C478 001893D8 80 A2 A3 FC */ lwz r5, lbl_805AC11C@sda21(r2) +lbl_8018C47C: +/* 8018C47C 001893DC 81 84 00 00 */ lwz r12, 0(r4) +/* 8018C480 001893E0 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8018C484 001893E4 7D 89 03 A6 */ mtctr r12 +/* 8018C488 001893E8 4E 80 04 21 */ bctrl +/* 8018C48C 001893EC 38 61 00 08 */ addi r3, r1, 8 +/* 8018C490 001893F0 38 81 00 10 */ addi r4, r1, 0x10 +/* 8018C494 001893F4 48 1B 4A 15 */ bl __ct__6CTokenFRC6CToken +/* 8018C498 001893F8 38 7E 02 1C */ addi r3, r30, 0x21c +/* 8018C49C 001893FC 38 81 00 08 */ addi r4, r1, 8 +/* 8018C4A0 00189400 48 1B 48 25 */ bl __as__6CTokenFRC6CToken +/* 8018C4A4 00189404 38 61 00 08 */ addi r3, r1, 8 +/* 8018C4A8 00189408 38 80 00 00 */ li r4, 0 +/* 8018C4AC 0018940C 48 1B 49 95 */ bl __dt__6CTokenFv +/* 8018C4B0 00189410 38 61 00 10 */ addi r3, r1, 0x10 +/* 8018C4B4 00189414 38 80 FF FF */ li r4, -1 +/* 8018C4B8 00189418 48 1B 49 89 */ bl __dt__6CTokenFv +/* 8018C4BC 0018941C 38 7E 02 1C */ addi r3, r30, 0x21c +/* 8018C4C0 00189420 48 1B 48 C5 */ bl Lock__6CTokenFv +/* 8018C4C4 00189424 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8018C4C8 00189428 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8018C4CC 0018942C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8018C4D0 00189430 7C 08 03 A6 */ mtlr r0 +/* 8018C4D4 00189434 38 21 00 20 */ addi r1, r1, 0x20 +/* 8018C4D8 00189438 4E 80 00 20 */ blr + +.global StopBeam__11CPhazonBeamFR13CStateManagerb +StopBeam__11CPhazonBeamFR13CStateManagerb: +/* 8018C4DC 0018943C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018C4E0 00189440 7C 08 02 A6 */ mflr r0 +/* 8018C4E4 00189444 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018C4E8 00189448 80 63 02 34 */ lwz r3, 0x234(r3) +/* 8018C4EC 0018944C 28 03 00 00 */ cmplwi r3, 0 +/* 8018C4F0 00189450 41 82 00 18 */ beq lbl_8018C508 +/* 8018C4F4 00189454 81 83 00 00 */ lwz r12, 0(r3) +/* 8018C4F8 00189458 38 80 00 00 */ li r4, 0 +/* 8018C4FC 0018945C 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8018C500 00189460 7D 89 03 A6 */ mtctr r12 +/* 8018C504 00189464 4E 80 04 21 */ bctrl +lbl_8018C508: +/* 8018C508 00189468 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018C50C 0018946C 7C 08 03 A6 */ mtlr r0 +/* 8018C510 00189470 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018C514 00189474 4E 80 00 20 */ blr + +.global UpdateBeam__11CPhazonBeamFfRC12CTransform4fRC9CVector3fR13CStateManager +UpdateBeam__11CPhazonBeamFfRC12CTransform4fRC9CVector3fR13CStateManager: +/* 8018C518 00189478 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8018C51C 0018947C 7C 08 02 A6 */ mflr r0 +/* 8018C520 00189480 90 01 00 24 */ stw r0, 0x24(r1) +/* 8018C524 00189484 DB E1 00 18 */ stfd f31, 0x18(r1) +/* 8018C528 00189488 FF E0 08 90 */ fmr f31, f1 +/* 8018C52C 0018948C 93 E1 00 14 */ stw r31, 0x14(r1) +/* 8018C530 00189490 93 C1 00 10 */ stw r30, 0x10(r1) +/* 8018C534 00189494 7C DE 33 78 */ mr r30, r6 +/* 8018C538 00189498 93 A1 00 0C */ stw r29, 0xc(r1) +/* 8018C53C 0018949C 7C BD 2B 78 */ mr r29, r5 +/* 8018C540 001894A0 93 81 00 08 */ stw r28, 8(r1) +/* 8018C544 001894A4 7C 7C 1B 78 */ mr r28, r3 +/* 8018C548 001894A8 83 E3 02 34 */ lwz r31, 0x234(r3) +/* 8018C54C 001894AC 28 1F 00 00 */ cmplwi r31, 0 +/* 8018C550 001894B0 41 82 00 24 */ beq lbl_8018C574 +/* 8018C554 001894B4 7F C4 F3 78 */ mr r4, r30 +/* 8018C558 001894B8 48 00 09 5D */ bl IsFiring__11CPhazonBeamCFRC13CStateManager +/* 8018C55C 001894BC 81 9F 00 00 */ lwz r12, 0(r31) +/* 8018C560 001894C0 7C 64 1B 78 */ mr r4, r3 +/* 8018C564 001894C4 7F E3 FB 78 */ mr r3, r31 +/* 8018C568 001894C8 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8018C56C 001894CC 7D 89 03 A6 */ mtctr r12 +/* 8018C570 001894D0 4E 80 04 21 */ bctrl +lbl_8018C574: +/* 8018C574 001894D4 7F 83 E3 78 */ mr r3, r28 +/* 8018C578 001894D8 7F C4 F3 78 */ mr r4, r30 +/* 8018C57C 001894DC 48 00 09 39 */ bl IsFiring__11CPhazonBeamCFRC13CStateManager +/* 8018C580 001894E0 FC 20 F8 90 */ fmr f1, f31 +/* 8018C584 001894E4 7C 66 1B 78 */ mr r6, r3 +/* 8018C588 001894E8 7F 83 E3 78 */ mr r3, r28 +/* 8018C58C 001894EC 7F A5 EB 78 */ mr r5, r29 +/* 8018C590 001894F0 38 9C 00 04 */ addi r4, r28, 4 +/* 8018C594 001894F4 48 02 FC 61 */ bl UpdateMuzzleFx__10CGunWeaponFfRC9CVector3fRC9CVector3fb +/* 8018C598 001894F8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8018C59C 001894FC CB E1 00 18 */ lfd f31, 0x18(r1) +/* 8018C5A0 00189500 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 8018C5A4 00189504 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 8018C5A8 00189508 83 A1 00 0C */ lwz r29, 0xc(r1) +/* 8018C5AC 0018950C 83 81 00 08 */ lwz r28, 8(r1) +/* 8018C5B0 00189510 7C 08 03 A6 */ mtlr r0 +/* 8018C5B4 00189514 38 21 00 20 */ addi r1, r1, 0x20 +/* 8018C5B8 00189518 4E 80 00 20 */ blr + +.global Update__11CPhazonBeamFfR13CStateManager +Update__11CPhazonBeamFfR13CStateManager: +/* 8018C5BC 0018951C 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 8018C5C0 00189520 7C 08 02 A6 */ mflr r0 +/* 8018C5C4 00189524 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 8018C5C8 00189528 DB E1 00 B0 */ stfd f31, 0xb0(r1) +/* 8018C5CC 0018952C F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 +/* 8018C5D0 00189530 93 E1 00 AC */ stw r31, 0xac(r1) +/* 8018C5D4 00189534 93 C1 00 A8 */ stw r30, 0xa8(r1) +/* 8018C5D8 00189538 FF E0 08 90 */ fmr f31, f1 +/* 8018C5DC 0018953C 7C 7E 1B 78 */ mr r30, r3 +/* 8018C5E0 00189540 7C 9F 23 78 */ mr r31, r4 +/* 8018C5E4 00189544 48 02 FE 95 */ bl Update__10CGunWeaponFfR13CStateManager +/* 8018C5E8 00189548 C0 1E 02 78 */ lfs f0, 0x278(r30) +/* 8018C5EC 0018954C EC 00 F8 2A */ fadds f0, f0, f31 +/* 8018C5F0 00189550 D0 1E 02 78 */ stfs f0, 0x278(r30) +/* 8018C5F4 00189554 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8018C5F8 00189558 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) +/* 8018C5FC 0018955C 80 A3 00 04 */ lwz r5, 4(r3) +/* 8018C600 00189560 7C 05 00 00 */ cmpw r5, r0 +/* 8018C604 00189564 90 A1 00 0C */ stw r5, 0xc(r1) +/* 8018C608 00189568 41 82 00 48 */ beq lbl_8018C650 +/* 8018C60C 0018956C 80 9F 08 50 */ lwz r4, 0x850(r31) +/* 8018C610 00189570 54 A3 18 38 */ slwi r3, r5, 3 +/* 8018C614 00189574 C0 3E 02 78 */ lfs f1, 0x278(r30) +/* 8018C618 00189578 38 03 00 04 */ addi r0, r3, 4 +/* 8018C61C 0018957C C0 02 A4 10 */ lfs f0, lbl_805AC130@sda21(r2) +/* 8018C620 00189580 80 64 00 20 */ lwz r3, 0x20(r4) +/* 8018C624 00189584 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018C628 00189588 90 A1 00 08 */ stw r5, 8(r1) +/* 8018C62C 0018958C 7C 63 00 2E */ lwzx r3, r3, r0 +/* 8018C630 00189590 40 81 00 14 */ ble lbl_8018C644 +/* 8018C634 00189594 C0 22 A4 08 */ lfs f1, lbl_805AC128@sda21(r2) +/* 8018C638 00189598 C0 42 A4 0C */ lfs f2, lbl_805AC12C@sda21(r2) +/* 8018C63C 0018959C 4B ED 1B 99 */ bl SetWeaponWorldLighting__9CGameAreaFff +/* 8018C640 001895A0 48 00 00 10 */ b lbl_8018C650 +lbl_8018C644: +/* 8018C644 001895A4 C0 22 A4 08 */ lfs f1, lbl_805AC128@sda21(r2) +/* 8018C648 001895A8 C0 42 A4 14 */ lfs f2, lbl_805AC134@sda21(r2) +/* 8018C64C 001895AC 4B ED 1B 89 */ bl SetWeaponWorldLighting__9CGameAreaFff +lbl_8018C650: +/* 8018C650 001895B0 7F C3 F3 78 */ mr r3, r30 +/* 8018C654 001895B4 81 9E 00 00 */ lwz r12, 0(r30) +/* 8018C658 001895B8 81 8C 00 40 */ lwz r12, 0x40(r12) +/* 8018C65C 001895BC 7D 89 03 A6 */ mtctr r12 +/* 8018C660 001895C0 4E 80 04 21 */ bctrl +/* 8018C664 001895C4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8018C668 001895C8 40 82 01 44 */ bne lbl_8018C7AC +/* 8018C66C 001895CC 7F C3 F3 78 */ mr r3, r30 +/* 8018C670 001895D0 48 02 ED 35 */ bl IsLoaded__10CGunWeaponCFv +/* 8018C674 001895D4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8018C678 001895D8 41 82 01 FC */ beq lbl_8018C874 +/* 8018C67C 001895DC 88 1E 02 74 */ lbz r0, 0x274(r30) +/* 8018C680 001895E0 54 00 CF FE */ rlwinm r0, r0, 0x19, 0x1f, 0x1f +/* 8018C684 001895E4 28 00 00 01 */ cmplwi r0, 1 +/* 8018C688 001895E8 41 82 01 EC */ beq lbl_8018C874 +/* 8018C68C 001895EC 80 1E 02 30 */ lwz r0, 0x230(r30) +/* 8018C690 001895F0 28 00 00 00 */ cmplwi r0, 0 +/* 8018C694 001895F4 41 82 00 0C */ beq lbl_8018C6A0 +/* 8018C698 001895F8 38 60 00 01 */ li r3, 1 +/* 8018C69C 001895FC 48 00 00 3C */ b lbl_8018C6D8 +lbl_8018C6A0: +/* 8018C6A0 00189600 88 1E 02 2C */ lbz r0, 0x22c(r30) +/* 8018C6A4 00189604 28 00 00 00 */ cmplwi r0, 0 +/* 8018C6A8 00189608 41 82 00 2C */ beq lbl_8018C6D4 +/* 8018C6AC 0018960C 80 7E 02 28 */ lwz r3, 0x228(r30) +/* 8018C6B0 00189610 80 03 00 10 */ lwz r0, 0x10(r3) +/* 8018C6B4 00189614 28 00 00 00 */ cmplwi r0, 0 +/* 8018C6B8 00189618 41 82 00 1C */ beq lbl_8018C6D4 +/* 8018C6BC 0018961C 38 7E 02 28 */ addi r3, r30, 0x228 +/* 8018C6C0 00189620 48 1B 47 4D */ bl GetObj__6CTokenFv +/* 8018C6C4 00189624 80 03 00 04 */ lwz r0, 4(r3) +/* 8018C6C8 00189628 38 60 00 01 */ li r3, 1 +/* 8018C6CC 0018962C 90 1E 02 30 */ stw r0, 0x230(r30) +/* 8018C6D0 00189630 48 00 00 08 */ b lbl_8018C6D8 +lbl_8018C6D4: +/* 8018C6D4 00189634 38 60 00 00 */ li r3, 0 +lbl_8018C6D8: +/* 8018C6D8 00189638 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8018C6DC 0018963C 41 82 00 18 */ beq lbl_8018C6F4 +/* 8018C6E0 00189640 80 7E 02 1C */ lwz r3, 0x21c(r30) +/* 8018C6E4 00189644 80 63 00 10 */ lwz r3, 0x10(r3) +/* 8018C6E8 00189648 7C 03 00 D0 */ neg r0, r3 +/* 8018C6EC 0018964C 7C 00 1B 78 */ or r0, r0, r3 +/* 8018C6F0 00189650 54 03 0F FE */ srwi r3, r0, 0x1f +lbl_8018C6F4: +/* 8018C6F4 00189654 88 1E 02 74 */ lbz r0, 0x274(r30) +/* 8018C6F8 00189658 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8018C6FC 0018965C 98 1E 02 74 */ stb r0, 0x274(r30) +/* 8018C700 00189660 88 1E 02 74 */ lbz r0, 0x274(r30) +/* 8018C704 00189664 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8018C708 00189668 41 82 01 6C */ beq lbl_8018C874 +/* 8018C70C 0018966C 7F C3 F3 78 */ mr r3, r30 +/* 8018C710 00189670 7F E4 FB 78 */ mr r4, r31 +/* 8018C714 00189674 4B FF FB 79 */ bl CreateBeam__11CPhazonBeamFR13CStateManager +/* 8018C718 00189678 3C 80 80 3D */ lis r4, lbl_803D08F8@ha +/* 8018C71C 0018967C 38 60 00 4C */ li r3, 0x4c +/* 8018C720 00189680 38 84 08 F8 */ addi r4, r4, lbl_803D08F8@l +/* 8018C724 00189684 38 A0 00 00 */ li r5, 0 +/* 8018C728 00189688 38 84 00 2F */ addi r4, r4, 0x2f +/* 8018C72C 0018968C 48 18 91 41 */ bl __nw__FUlPCcPCc +/* 8018C730 00189690 7C 7F 1B 79 */ or. r31, r3, r3 +/* 8018C734 00189694 41 82 00 4C */ beq lbl_8018C780 +/* 8018C738 00189698 88 1E 02 74 */ lbz r0, 0x274(r30) +/* 8018C73C 0018969C 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 8018C740 001896A0 41 82 00 0C */ beq lbl_8018C74C +/* 8018C744 001896A4 80 62 A4 00 */ lwz r3, lbl_805AC120@sda21(r2) +/* 8018C748 001896A8 48 00 00 08 */ b lbl_8018C750 +lbl_8018C74C: +/* 8018C74C 001896AC 80 62 A3 FC */ lwz r3, lbl_805AC11C@sda21(r2) +lbl_8018C750: +/* 8018C750 001896B0 48 0F EC F9 */ bl get_asset_id_from_name__12NWeaponTypesFPCc +/* 8018C754 001896B4 90 61 00 2C */ stw r3, 0x2c(r1) +/* 8018C758 001896B8 7F E3 FB 78 */ mr r3, r31 +/* 8018C75C 001896BC 38 81 00 2C */ addi r4, r1, 0x2c +/* 8018C760 001896C0 C0 1E 00 04 */ lfs f0, 4(r30) +/* 8018C764 001896C4 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 8018C768 001896C8 C0 1E 00 08 */ lfs f0, 8(r30) +/* 8018C76C 001896CC D0 01 00 34 */ stfs f0, 0x34(r1) +/* 8018C770 001896D0 C0 1E 00 0C */ lfs f0, 0xc(r30) +/* 8018C774 001896D4 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 8018C778 001896D8 4B F8 A5 E5 */ bl __ct__10CModelDataFRC10CStaticRes +/* 8018C77C 001896DC 7C 7F 1B 78 */ mr r31, r3 +lbl_8018C780: +/* 8018C780 001896E0 80 7E 02 24 */ lwz r3, 0x224(r30) +/* 8018C784 001896E4 38 80 00 01 */ li r4, 1 +/* 8018C788 001896E8 4B F8 A2 C5 */ bl __dt__10CModelDataFv +/* 8018C78C 001896EC 93 FE 02 24 */ stw r31, 0x224(r30) +/* 8018C790 001896F0 38 7E 02 1C */ addi r3, r30, 0x21c +/* 8018C794 001896F4 48 1B 45 AD */ bl Unlock__6CTokenFv +/* 8018C798 001896F8 88 1E 02 74 */ lbz r0, 0x274(r30) +/* 8018C79C 001896FC 38 60 00 01 */ li r3, 1 +/* 8018C7A0 00189700 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8018C7A4 00189704 98 1E 02 74 */ stb r0, 0x274(r30) +/* 8018C7A8 00189708 48 00 00 CC */ b lbl_8018C874 +lbl_8018C7AC: +/* 8018C7AC 0018970C 88 7E 02 74 */ lbz r3, 0x274(r30) +/* 8018C7B0 00189710 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 8018C7B4 00189714 41 82 00 6C */ beq lbl_8018C820 +/* 8018C7B8 00189718 C0 02 A4 18 */ lfs f0, lbl_805AC138@sda21(r2) +/* 8018C7BC 0018971C C0 3E 02 68 */ lfs f1, 0x268(r30) +/* 8018C7C0 00189720 EC 40 07 F2 */ fmuls f2, f0, f31 +/* 8018C7C4 00189724 C0 02 A4 0C */ lfs f0, lbl_805AC12C@sda21(r2) +/* 8018C7C8 00189728 EC 21 10 2A */ fadds f1, f1, f2 +/* 8018C7CC 0018972C D0 3E 02 68 */ stfs f1, 0x268(r30) +/* 8018C7D0 00189730 C0 3E 02 68 */ lfs f1, 0x268(r30) +/* 8018C7D4 00189734 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018C7D8 00189738 40 81 00 08 */ ble lbl_8018C7E0 +/* 8018C7DC 0018973C D0 1E 02 68 */ stfs f0, 0x268(r30) +lbl_8018C7E0: +/* 8018C7E0 00189740 C0 3E 02 68 */ lfs f1, 0x268(r30) +/* 8018C7E4 00189744 C0 02 A4 1C */ lfs f0, lbl_805AC13C@sda21(r2) +/* 8018C7E8 00189748 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018C7EC 0018974C 40 81 00 88 */ ble lbl_8018C874 +/* 8018C7F0 00189750 C0 3E 02 6C */ lfs f1, 0x26c(r30) +/* 8018C7F4 00189754 C0 02 A4 20 */ lfs f0, lbl_805AC140@sda21(r2) +/* 8018C7F8 00189758 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018C7FC 0018975C 40 80 00 10 */ bge lbl_8018C80C +/* 8018C800 00189760 EC 01 10 2A */ fadds f0, f1, f2 +/* 8018C804 00189764 D0 1E 02 6C */ stfs f0, 0x26c(r30) +/* 8018C808 00189768 48 00 00 6C */ b lbl_8018C874 +lbl_8018C80C: +/* 8018C80C 0018976C 88 1E 02 74 */ lbz r0, 0x274(r30) +/* 8018C810 00189770 38 60 00 00 */ li r3, 0 +/* 8018C814 00189774 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8018C818 00189778 98 1E 02 74 */ stb r0, 0x274(r30) +/* 8018C81C 0018977C 48 00 00 58 */ b lbl_8018C874 +lbl_8018C820: +/* 8018C820 00189780 54 60 DF FF */ rlwinm. r0, r3, 0x1b, 0x1f, 0x1f +/* 8018C824 00189784 41 82 00 50 */ beq lbl_8018C874 +/* 8018C828 00189788 80 82 A4 04 */ lwz r4, lbl_805AC124@sda21(r2) +/* 8018C82C 0018978C 38 61 00 1C */ addi r3, r1, 0x1c +/* 8018C830 00189790 4B E7 84 89 */ bl string_l__4rstlFPCc +/* 8018C834 00189794 38 61 00 3C */ addi r3, r1, 0x3c +/* 8018C838 00189798 38 9E 00 10 */ addi r4, r30, 0x10 +/* 8018C83C 0018979C 38 A1 00 1C */ addi r5, r1, 0x1c +/* 8018C840 001897A0 4B F8 92 2D */ bl "GetLocatorTransform__10CModelDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8018C844 001897A4 38 61 00 6C */ addi r3, r1, 0x6c +/* 8018C848 001897A8 38 81 00 3C */ addi r4, r1, 0x3c +/* 8018C84C 001897AC 48 18 63 29 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8018C850 001897B0 38 61 00 1C */ addi r3, r1, 0x1c +/* 8018C854 001897B4 48 1B 12 8D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8018C858 001897B8 C0 41 00 78 */ lfs f2, 0x78(r1) +/* 8018C85C 001897BC C0 21 00 88 */ lfs f1, 0x88(r1) +/* 8018C860 001897C0 C0 01 00 98 */ lfs f0, 0x98(r1) +/* 8018C864 001897C4 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 8018C868 001897C8 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 8018C86C 001897CC D0 01 00 18 */ stfs f0, 0x18(r1) +/* 8018C870 001897D0 D0 3E 02 70 */ stfs f1, 0x270(r30) +lbl_8018C874: +/* 8018C874 001897D4 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 +/* 8018C878 001897D8 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 8018C87C 001897DC CB E1 00 B0 */ lfd f31, 0xb0(r1) +/* 8018C880 001897E0 83 E1 00 AC */ lwz r31, 0xac(r1) +/* 8018C884 001897E4 83 C1 00 A8 */ lwz r30, 0xa8(r1) +/* 8018C888 001897E8 7C 08 03 A6 */ mtlr r0 +/* 8018C88C 001897EC 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 8018C890 001897F0 4E 80 00 20 */ blr + +.global Fire__11CPhazonBeamFbfQ212CPlayerState12EChargeStageRC12CTransform4fR13CStateManager9TUniqueId +Fire__11CPhazonBeamFbfQ212CPlayerState12EChargeStageRC12CTransform4fR13CStateManager9TUniqueId: +/* 8018C894 001897F4 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8018C898 001897F8 7C 08 02 A6 */ mflr r0 +/* 8018C89C 001897FC 90 01 00 74 */ stw r0, 0x74(r1) +/* 8018C8A0 00189800 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 8018C8A4 00189804 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 8018C8A8 00189808 DB C1 00 50 */ stfd f30, 0x50(r1) +/* 8018C8AC 0018980C F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 +/* 8018C8B0 00189810 DB A1 00 40 */ stfd f29, 0x40(r1) +/* 8018C8B4 00189814 F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 +/* 8018C8B8 00189818 BE E1 00 1C */ stmw r23, 0x1c(r1) +/* 8018C8BC 0018981C 7C B9 2B 79 */ or. r25, r5, r5 +/* 8018C8C0 00189820 FF A0 08 90 */ fmr f29, f1 +/* 8018C8C4 00189824 FF C0 10 90 */ fmr f30, f2 +/* 8018C8C8 00189828 7C 77 1B 78 */ mr r23, r3 +/* 8018C8CC 0018982C FF E0 18 90 */ fmr f31, f3 +/* 8018C8D0 00189830 7C 98 23 78 */ mr r24, r4 +/* 8018C8D4 00189834 7C DA 33 78 */ mr r26, r6 +/* 8018C8D8 00189838 7C FB 3B 78 */ mr r27, r7 +/* 8018C8DC 0018983C 7D 1C 43 78 */ mr r28, r8 +/* 8018C8E0 00189840 40 82 00 9C */ bne lbl_8018C97C +/* 8018C8E4 00189844 38 80 00 00 */ li r4, 0 +/* 8018C8E8 00189848 38 A0 00 00 */ li r5, 0 +/* 8018C8EC 0018984C 48 02 F6 9D */ bl ActivateCharge__10CGunWeaponFbb +/* 8018C8F0 00189850 C0 37 02 78 */ lfs f1, 0x278(r23) +/* 8018C8F4 00189854 C0 02 A4 24 */ lfs f0, lbl_805AC144@sda21(r2) +/* 8018C8F8 00189858 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018C8FC 0018985C 40 81 00 0C */ ble lbl_8018C908 +/* 8018C900 00189860 3B E0 00 05 */ li r31, 5 +/* 8018C904 00189864 48 00 00 08 */ b lbl_8018C90C +lbl_8018C908: +/* 8018C908 00189868 3B E0 00 02 */ li r31, 2 +lbl_8018C90C: +/* 8018C90C 0018986C 3B A0 00 00 */ li r29, 0 +/* 8018C910 00189870 3B C0 00 00 */ li r30, 0 +/* 8018C914 00189874 48 00 00 50 */ b lbl_8018C964 +lbl_8018C918: +/* 8018C918 00189878 80 1B 08 D8 */ lwz r0, 0x8d8(r27) +/* 8018C91C 0018987C 7C 7E 02 14 */ add r3, r30, r0 +/* 8018C920 00189880 48 12 27 E9 */ bl SetGlobalSeed__17CProjectileWeaponFUs +/* 8018C924 00189884 A0 1C 00 00 */ lhz r0, 0(r28) +/* 8018C928 00189888 FC 20 E8 90 */ fmr f1, f29 +/* 8018C92C 0018988C FC 40 F0 90 */ fmr f2, f30 +/* 8018C930 00189890 7E E3 BB 78 */ mr r3, r23 +/* 8018C934 00189894 FC 60 F8 90 */ fmr f3, f31 +/* 8018C938 00189898 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8018C93C 0018989C 7F 04 C3 78 */ mr r4, r24 +/* 8018C940 001898A0 7F 25 CB 78 */ mr r5, r25 +/* 8018C944 001898A4 7F 46 D3 78 */ mr r6, r26 +/* 8018C948 001898A8 7F 67 DB 78 */ mr r7, r27 +/* 8018C94C 001898AC 39 01 00 0C */ addi r8, r1, 0xc +/* 8018C950 001898B0 48 02 EF 39 */ bl Fire__10CGunWeaponFbfQ212CPlayerState12EChargeStageRC12CTransform4fR13CStateManager9TUniqueId +/* 8018C954 001898B4 80 7B 08 D8 */ lwz r3, 0x8d8(r27) +/* 8018C958 001898B8 48 12 27 B1 */ bl SetGlobalSeed__17CProjectileWeaponFUs +/* 8018C95C 001898BC 3B DE 03 E8 */ addi r30, r30, 0x3e8 +/* 8018C960 001898C0 3B BD 00 01 */ addi r29, r29, 1 +lbl_8018C964: +/* 8018C964 001898C4 7C 1D F8 00 */ cmpw r29, r31 +/* 8018C968 001898C8 41 80 FF B0 */ blt lbl_8018C918 +/* 8018C96C 001898CC C0 02 A4 28 */ lfs f0, lbl_805AC148@sda21(r2) +/* 8018C970 001898D0 38 00 00 01 */ li r0, 1 +/* 8018C974 001898D4 D0 17 02 78 */ stfs f0, 0x278(r23) +/* 8018C978 001898D8 48 00 00 18 */ b lbl_8018C990 +lbl_8018C97C: +/* 8018C97C 001898DC A0 1C 00 00 */ lhz r0, 0(r28) +/* 8018C980 001898E0 39 01 00 08 */ addi r8, r1, 8 +/* 8018C984 001898E4 B0 01 00 08 */ sth r0, 8(r1) +/* 8018C988 001898E8 48 02 EF 01 */ bl Fire__10CGunWeaponFbfQ212CPlayerState12EChargeStageRC12CTransform4fR13CStateManager9TUniqueId +/* 8018C98C 001898EC 38 00 00 01 */ li r0, 1 +lbl_8018C990: +/* 8018C990 001898F0 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8018C994 001898F4 41 82 00 24 */ beq lbl_8018C9B8 +/* 8018C998 001898F8 57 20 08 3C */ slwi r0, r25, 1 +/* 8018C99C 001898FC 38 62 A3 F8 */ addi r3, r2, lbl_805AC118@sda21 +/* 8018C9A0 00189900 7C 83 02 2E */ lhzx r4, r3, r0 +/* 8018C9A4 00189904 7F 05 C3 78 */ mr r5, r24 +/* 8018C9A8 00189908 38 61 00 10 */ addi r3, r1, 0x10 +/* 8018C9AC 0018990C 38 C0 00 00 */ li r6, 0 +/* 8018C9B0 00189910 38 E0 00 4A */ li r7, 0x4a +/* 8018C9B4 00189914 48 0F E1 45 */ bl play_sfx__12NWeaponTypesFUsbbs +lbl_8018C9B8: +/* 8018C9B8 00189918 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 8018C9BC 0018991C CB E1 00 60 */ lfd f31, 0x60(r1) +/* 8018C9C0 00189920 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 +/* 8018C9C4 00189924 CB C1 00 50 */ lfd f30, 0x50(r1) +/* 8018C9C8 00189928 E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 +/* 8018C9CC 0018992C CB A1 00 40 */ lfd f29, 0x40(r1) +/* 8018C9D0 00189930 BA E1 00 1C */ lmw r23, 0x1c(r1) +/* 8018C9D4 00189934 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8018C9D8 00189938 7C 08 03 A6 */ mtlr r0 +/* 8018C9DC 0018993C 38 21 00 70 */ addi r1, r1, 0x70 +/* 8018C9E0 00189940 4E 80 00 20 */ blr + +.global Draw__11CPhazonBeamCFbRC13CStateManagerRC12CTransform4fRC11CModelFlagsPC12CActorLights +Draw__11CPhazonBeamCFbRC13CStateManagerRC12CTransform4fRC11CModelFlagsPC12CActorLights: +/* 8018C9E4 00189944 94 21 FD F0 */ stwu r1, -0x210(r1) +/* 8018C9E8 00189948 7C 08 02 A6 */ mflr r0 +/* 8018C9EC 0018994C 90 01 02 14 */ stw r0, 0x214(r1) +/* 8018C9F0 00189950 BF 01 01 F0 */ stmw r24, 0x1f0(r1) +/* 8018C9F4 00189954 7C 98 23 78 */ mr r24, r4 +/* 8018C9F8 00189958 7C BD 2B 78 */ mr r29, r5 +/* 8018C9FC 0018995C 7C 7C 1B 78 */ mr r28, r3 +/* 8018CA00 00189960 7C D9 33 78 */ mr r25, r6 +/* 8018CA04 00189964 7C FE 3B 78 */ mr r30, r7 +/* 8018CA08 00189968 7D 1F 43 78 */ mr r31, r8 +/* 8018CA0C 0018996C 80 85 08 B8 */ lwz r4, 0x8b8(r5) +/* 8018CA10 00189970 80 64 00 00 */ lwz r3, 0(r4) +/* 8018CA14 00189974 7F A4 EB 78 */ mr r4, r29 +/* 8018CA18 00189978 4B F0 4B 41 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager +/* 8018CA1C 0018997C 2C 03 00 00 */ cmpwi r3, 0 +/* 8018CA20 00189980 3B 60 00 00 */ li r27, 0 +/* 8018CA24 00189984 41 82 00 0C */ beq lbl_8018CA30 +/* 8018CA28 00189988 2C 03 00 02 */ cmpwi r3, 2 +/* 8018CA2C 0018998C 40 82 00 08 */ bne lbl_8018CA34 +lbl_8018CA30: +/* 8018CA30 00189990 3B 60 00 01 */ li r27, 1 +lbl_8018CA34: +/* 8018CA34 00189994 57 60 06 3F */ clrlwi. r0, r27, 0x18 +/* 8018CA38 00189998 83 4D A0 68 */ lwz r26, gpRender@sda21(r13) +/* 8018CA3C 0018999C 41 82 00 2C */ beq lbl_8018CA68 +/* 8018CA40 001899A0 80 CD A8 28 */ lwz r6, lbl_805A93E8@sda21(r13) +/* 8018CA44 001899A4 7F 43 D3 78 */ mr r3, r26 +/* 8018CA48 001899A8 38 80 00 01 */ li r4, 1 +/* 8018CA4C 001899AC 38 A0 00 01 */ li r5, 1 +/* 8018CA50 001899B0 38 E0 00 04 */ li r7, 4 +/* 8018CA54 001899B4 39 00 00 00 */ li r8, 0 +/* 8018CA58 001899B8 48 12 A8 F5 */ bl CopyTex__13CCubeRendererFibPv8GXTexFmtb +/* 8018CA5C 001899BC 38 60 00 01 */ li r3, 1 +/* 8018CA60 001899C0 38 80 00 FF */ li r4, 0xff +/* 8018CA64 001899C4 48 1E F6 7D */ bl GXSetDstAlpha +lbl_8018CA68: +/* 8018CA68 001899C8 7F 83 E3 78 */ mr r3, r28 +/* 8018CA6C 001899CC 7F 04 C3 78 */ mr r4, r24 +/* 8018CA70 001899D0 7F A5 EB 78 */ mr r5, r29 +/* 8018CA74 001899D4 7F 26 CB 78 */ mr r6, r25 +/* 8018CA78 001899D8 7F C7 F3 78 */ mr r7, r30 +/* 8018CA7C 001899DC 7F E8 FB 78 */ mr r8, r31 +/* 8018CA80 001899E0 48 02 F2 89 */ bl Draw__10CGunWeaponCFbRC13CStateManagerRC12CTransform4fRC11CModelFlagsPC12CActorLights +/* 8018CA84 001899E4 57 60 06 3F */ clrlwi. r0, r27, 0x18 +/* 8018CA88 001899E8 41 82 00 88 */ beq lbl_8018CB10 +/* 8018CA8C 001899EC 38 00 00 00 */ li r0, 0 +/* 8018CA90 001899F0 98 01 00 30 */ stb r0, 0x30(r1) +/* 8018CA94 001899F4 48 1B D5 19 */ bl White__6CColorFv +/* 8018CA98 001899F8 C0 7C 02 70 */ lfs f3, 0x270(r28) +/* 8018CA9C 001899FC 7C 7B 1B 78 */ mr r27, r3 +/* 8018CAA0 00189A00 C0 22 A4 2C */ lfs f1, lbl_805AC14C@sda21(r2) +/* 8018CAA4 00189A04 38 61 00 08 */ addi r3, r1, 8 +/* 8018CAA8 00189A08 C0 42 A4 30 */ lfs f2, lbl_805AC150@sda21(r2) +/* 8018CAAC 00189A0C C0 02 A4 20 */ lfs f0, lbl_805AC140@sda21(r2) +/* 8018CAB0 00189A10 EC 21 00 F2 */ fmuls f1, f1, f3 +/* 8018CAB4 00189A14 EC 42 00 F2 */ fmuls f2, f2, f3 +/* 8018CAB8 00189A18 EC 80 00 F2 */ fmuls f4, f0, f3 +/* 8018CABC 00189A1C 48 1D 69 31 */ bl __ct__6CColorFffff +/* 8018CAC0 00189A20 C0 42 A4 28 */ lfs f2, lbl_805AC148@sda21(r2) +/* 8018CAC4 00189A24 7C 64 1B 78 */ mr r4, r3 +/* 8018CAC8 00189A28 C0 22 A4 0C */ lfs f1, lbl_805AC12C@sda21(r2) +/* 8018CACC 00189A2C 7F 43 D3 78 */ mr r3, r26 +/* 8018CAD0 00189A30 FC 60 10 90 */ fmr f3, f2 +/* 8018CAD4 00189A34 7F 66 DB 78 */ mr r6, r27 +/* 8018CAD8 00189A38 FC 80 10 90 */ fmr f4, f2 +/* 8018CADC 00189A3C 38 A1 00 24 */ addi r5, r1, 0x24 +/* 8018CAE0 00189A40 48 12 95 41 */ bl "DrawPhazonSuitIndirectEffect__13CCubeRendererFRC6CColorRC23TLockedToken<8CTexture>RC6CColorffff" +/* 8018CAE4 00189A44 88 01 00 30 */ lbz r0, 0x30(r1) +/* 8018CAE8 00189A48 28 00 00 00 */ cmplwi r0, 0 +/* 8018CAEC 00189A4C 41 82 00 1C */ beq lbl_8018CB08 +/* 8018CAF0 00189A50 34 61 00 24 */ addic. r3, r1, 0x24 +/* 8018CAF4 00189A54 41 82 00 14 */ beq lbl_8018CB08 +/* 8018CAF8 00189A58 28 03 00 00 */ cmplwi r3, 0 +/* 8018CAFC 00189A5C 41 82 00 0C */ beq lbl_8018CB08 +/* 8018CB00 00189A60 38 80 00 00 */ li r4, 0 +/* 8018CB04 00189A64 48 1B 43 3D */ bl __dt__6CTokenFv +lbl_8018CB08: +/* 8018CB08 00189A68 38 00 00 00 */ li r0, 0 +/* 8018CB0C 00189A6C 98 01 00 30 */ stb r0, 0x30(r1) +lbl_8018CB10: +/* 8018CB10 00189A70 80 1C 02 24 */ lwz r0, 0x224(r28) +/* 8018CB14 00189A74 28 00 00 00 */ cmplwi r0, 0 +/* 8018CB18 00189A78 41 82 01 84 */ beq lbl_8018CC9C +/* 8018CB1C 00189A7C 80 82 A9 CC */ lwz r4, lbl_805AC6EC@sda21(r2) +/* 8018CB20 00189A80 38 61 00 14 */ addi r3, r1, 0x14 +/* 8018CB24 00189A84 4B E7 81 95 */ bl string_l__4rstlFPCc +/* 8018CB28 00189A88 38 61 01 54 */ addi r3, r1, 0x154 +/* 8018CB2C 00189A8C 38 9C 00 10 */ addi r4, r28, 0x10 +/* 8018CB30 00189A90 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8018CB34 00189A94 4B F8 8E 6D */ bl "GetScaledLocatorTransform__10CModelDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8018CB38 00189A98 7F 24 CB 78 */ mr r4, r25 +/* 8018CB3C 00189A9C 38 61 01 84 */ addi r3, r1, 0x184 +/* 8018CB40 00189AA0 38 A1 01 54 */ addi r5, r1, 0x154 +/* 8018CB44 00189AA4 48 18 5E 0D */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8018CB48 00189AA8 38 61 01 B4 */ addi r3, r1, 0x1b4 +/* 8018CB4C 00189AAC 38 81 01 84 */ addi r4, r1, 0x184 +/* 8018CB50 00189AB0 48 18 60 25 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8018CB54 00189AB4 38 61 00 14 */ addi r3, r1, 0x14 +/* 8018CB58 00189AB8 48 1B 0F 89 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8018CB5C 00189ABC 88 1C 02 74 */ lbz r0, 0x274(r28) +/* 8018CB60 00189AC0 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8018CB64 00189AC4 41 82 00 98 */ beq lbl_8018CBFC +/* 8018CB68 00189AC8 C0 22 A4 0C */ lfs f1, lbl_805AC12C@sda21(r2) +/* 8018CB6C 00189ACC 38 61 00 F4 */ addi r3, r1, 0xf4 +/* 8018CB70 00189AD0 C0 1C 02 68 */ lfs f0, 0x268(r28) +/* 8018CB74 00189AD4 EC 21 00 28 */ fsubs f1, f1, f0 +/* 8018CB78 00189AD8 FC 40 08 90 */ fmr f2, f1 +/* 8018CB7C 00189ADC FC 60 08 90 */ fmr f3, f1 +/* 8018CB80 00189AE0 48 18 66 89 */ bl Scale__12CTransform4fFfff +/* 8018CB84 00189AE4 38 61 01 24 */ addi r3, r1, 0x124 +/* 8018CB88 00189AE8 38 81 01 B4 */ addi r4, r1, 0x1b4 +/* 8018CB8C 00189AEC 38 A1 00 F4 */ addi r5, r1, 0xf4 +/* 8018CB90 00189AF0 48 18 5D C1 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8018CB94 00189AF4 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 8018CB98 00189AF8 38 81 01 24 */ addi r4, r1, 0x124 +/* 8018CB9C 00189AFC 81 83 00 00 */ lwz r12, 0(r3) +/* 8018CBA0 00189B00 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 8018CBA4 00189B04 7D 89 03 A6 */ mtctr r12 +/* 8018CBA8 00189B08 4E 80 04 21 */ bctrl +/* 8018CBAC 00189B0C 38 7C 02 38 */ addi r3, r28, 0x238 +/* 8018CBB0 00189B10 48 02 D0 9D */ bl DrawClipCube__FRC6CAABox +/* 8018CBB4 00189B14 C0 22 A4 28 */ lfs f1, lbl_805AC148@sda21(r2) +/* 8018CBB8 00189B18 38 61 00 94 */ addi r3, r1, 0x94 +/* 8018CBBC 00189B1C C0 1C 02 6C */ lfs f0, 0x26c(r28) +/* 8018CBC0 00189B20 FC 60 08 90 */ fmr f3, f1 +/* 8018CBC4 00189B24 FC 40 00 50 */ fneg f2, f0 +/* 8018CBC8 00189B28 48 18 65 C1 */ bl Translate__12CTransform4fFfff +/* 8018CBCC 00189B2C 38 61 00 C4 */ addi r3, r1, 0xc4 +/* 8018CBD0 00189B30 38 81 01 B4 */ addi r4, r1, 0x1b4 +/* 8018CBD4 00189B34 38 A1 00 94 */ addi r5, r1, 0x94 +/* 8018CBD8 00189B38 48 18 5D 79 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8018CBDC 00189B3C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 8018CBE0 00189B40 38 81 00 C4 */ addi r4, r1, 0xc4 +/* 8018CBE4 00189B44 81 83 00 00 */ lwz r12, 0(r3) +/* 8018CBE8 00189B48 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 8018CBEC 00189B4C 7D 89 03 A6 */ mtctr r12 +/* 8018CBF0 00189B50 4E 80 04 21 */ bctrl +/* 8018CBF4 00189B54 38 7C 02 50 */ addi r3, r28, 0x250 +/* 8018CBF8 00189B58 48 02 D0 55 */ bl DrawClipCube__FRC6CAABox +lbl_8018CBFC: +/* 8018CBFC 00189B5C 88 1C 02 74 */ lbz r0, 0x274(r28) +/* 8018CC00 00189B60 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8018CC04 00189B64 41 82 00 80 */ beq lbl_8018CC84 +/* 8018CC08 00189B68 C0 22 A4 0C */ lfs f1, lbl_805AC12C@sda21(r2) +/* 8018CC0C 00189B6C 38 60 00 05 */ li r3, 5 +/* 8018CC10 00189B70 C0 42 A4 20 */ lfs f2, lbl_805AC140@sda21(r2) +/* 8018CC14 00189B74 38 80 00 00 */ li r4, 0 +/* 8018CC18 00189B78 C0 1C 02 70 */ lfs f0, 0x270(r28) +/* 8018CC1C 00189B7C 38 00 00 03 */ li r0, 3 +/* 8018CC20 00189B80 98 61 00 0C */ stb r3, 0xc(r1) +/* 8018CC24 00189B84 FC 60 08 90 */ fmr f3, f1 +/* 8018CC28 00189B88 EC 82 00 32 */ fmuls f4, f2, f0 +/* 8018CC2C 00189B8C 38 61 00 10 */ addi r3, r1, 0x10 +/* 8018CC30 00189B90 FC 40 08 90 */ fmr f2, f1 +/* 8018CC34 00189B94 98 81 00 0D */ stb r4, 0xd(r1) +/* 8018CC38 00189B98 B0 01 00 0E */ sth r0, 0xe(r1) +/* 8018CC3C 00189B9C 48 1D 67 B1 */ bl __ct__6CColorFffff +/* 8018CC40 00189BA0 C0 3C 02 70 */ lfs f1, 0x270(r28) +/* 8018CC44 00189BA4 38 61 00 34 */ addi r3, r1, 0x34 +/* 8018CC48 00189BA8 83 7C 02 24 */ lwz r27, 0x224(r28) +/* 8018CC4C 00189BAC FC 40 08 90 */ fmr f2, f1 +/* 8018CC50 00189BB0 FC 60 08 90 */ fmr f3, f1 +/* 8018CC54 00189BB4 48 18 65 B5 */ bl Scale__12CTransform4fFfff +/* 8018CC58 00189BB8 38 61 00 64 */ addi r3, r1, 0x64 +/* 8018CC5C 00189BBC 38 81 01 B4 */ addi r4, r1, 0x1b4 +/* 8018CC60 00189BC0 38 A1 00 34 */ addi r5, r1, 0x34 +/* 8018CC64 00189BC4 48 18 5C ED */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8018CC68 00189BC8 7F 63 DB 78 */ mr r3, r27 +/* 8018CC6C 00189BCC 7F A4 EB 78 */ mr r4, r29 +/* 8018CC70 00189BD0 7F E6 FB 78 */ mr r6, r31 +/* 8018CC74 00189BD4 38 A1 00 64 */ addi r5, r1, 0x64 +/* 8018CC78 00189BD8 38 E1 00 0C */ addi r7, r1, 0xc +/* 8018CC7C 00189BDC 4B F8 81 41 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags +/* 8018CC80 00189BE0 48 00 00 1C */ b lbl_8018CC9C +lbl_8018CC84: +/* 8018CC84 00189BE4 80 7C 02 24 */ lwz r3, 0x224(r28) +/* 8018CC88 00189BE8 7F A4 EB 78 */ mr r4, r29 +/* 8018CC8C 00189BEC 7F E6 FB 78 */ mr r6, r31 +/* 8018CC90 00189BF0 7F C7 F3 78 */ mr r7, r30 +/* 8018CC94 00189BF4 38 A1 01 B4 */ addi r5, r1, 0x1b4 +/* 8018CC98 00189BF8 4B F8 81 25 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags +lbl_8018CC9C: +/* 8018CC9C 00189BFC BB 01 01 F0 */ lmw r24, 0x1f0(r1) +/* 8018CCA0 00189C00 80 01 02 14 */ lwz r0, 0x214(r1) +/* 8018CCA4 00189C04 7C 08 03 A6 */ mtlr r0 +/* 8018CCA8 00189C08 38 21 02 10 */ addi r1, r1, 0x210 +/* 8018CCAC 00189C0C 4E 80 00 20 */ blr + +.global DrawMuzzleFx__11CPhazonBeamCFRC13CStateManager +DrawMuzzleFx__11CPhazonBeamCFRC13CStateManager: +/* 8018CCB0 00189C10 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018CCB4 00189C14 7C 08 02 A6 */ mflr r0 +/* 8018CCB8 00189C18 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018CCBC 00189C1C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8018CCC0 00189C20 7C 9F 23 78 */ mr r31, r4 +/* 8018CCC4 00189C24 93 C1 00 08 */ stw r30, 8(r1) +/* 8018CCC8 00189C28 7C 7E 1B 78 */ mr r30, r3 +/* 8018CCCC 00189C2C 48 00 01 E9 */ bl IsFiring__11CPhazonBeamCFRC13CStateManager +/* 8018CCD0 00189C30 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8018CCD4 00189C34 41 82 00 10 */ beq lbl_8018CCE4 +/* 8018CCD8 00189C38 7F C3 F3 78 */ mr r3, r30 +/* 8018CCDC 00189C3C 7F E4 FB 78 */ mr r4, r31 +/* 8018CCE0 00189C40 48 02 F4 41 */ bl DrawMuzzleFx__10CGunWeaponCFRC13CStateManager +lbl_8018CCE4: +/* 8018CCE4 00189C44 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018CCE8 00189C48 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8018CCEC 00189C4C 83 C1 00 08 */ lwz r30, 8(r1) +/* 8018CCF0 00189C50 7C 08 03 A6 */ mtlr r0 +/* 8018CCF4 00189C54 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018CCF8 00189C58 4E 80 00 20 */ blr + +.global UpdateGunFx__11CPhazonBeamFbfRC13CStateManagerRC12CTransform4f +UpdateGunFx__11CPhazonBeamFbfRC13CStateManagerRC12CTransform4f: +/* 8018CCFC 00189C5C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8018CD00 00189C60 7C 08 02 A6 */ mflr r0 +/* 8018CD04 00189C64 90 01 00 24 */ stw r0, 0x24(r1) +/* 8018CD08 00189C68 DB E1 00 18 */ stfd f31, 0x18(r1) +/* 8018CD0C 00189C6C FF E0 08 90 */ fmr f31, f1 +/* 8018CD10 00189C70 93 E1 00 14 */ stw r31, 0x14(r1) +/* 8018CD14 00189C74 7C DF 33 78 */ mr r31, r6 +/* 8018CD18 00189C78 93 C1 00 10 */ stw r30, 0x10(r1) +/* 8018CD1C 00189C7C 7C BE 2B 78 */ mr r30, r5 +/* 8018CD20 00189C80 93 A1 00 0C */ stw r29, 0xc(r1) +/* 8018CD24 00189C84 7C 9D 23 78 */ mr r29, r4 +/* 8018CD28 00189C88 93 81 00 08 */ stw r28, 8(r1) +/* 8018CD2C 00189C8C 7C 7C 1B 78 */ mr r28, r3 +/* 8018CD30 00189C90 80 63 02 34 */ lwz r3, 0x234(r3) +/* 8018CD34 00189C94 28 03 00 00 */ cmplwi r3, 0 +/* 8018CD38 00189C98 41 82 00 24 */ beq lbl_8018CD5C +/* 8018CD3C 00189C9C 7F E4 FB 78 */ mr r4, r31 +/* 8018CD40 00189CA0 48 19 1E 45 */ bl SetGlobalOrientAndTrans__11CElementGenFRC12CTransform4f +/* 8018CD44 00189CA4 80 7C 02 34 */ lwz r3, 0x234(r28) +/* 8018CD48 00189CA8 FC 20 F8 90 */ fmr f1, f31 +/* 8018CD4C 00189CAC 81 83 00 00 */ lwz r12, 0(r3) +/* 8018CD50 00189CB0 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8018CD54 00189CB4 7D 89 03 A6 */ mtctr r12 +/* 8018CD58 00189CB8 4E 80 04 21 */ bctrl +lbl_8018CD5C: +/* 8018CD5C 00189CBC FC 20 F8 90 */ fmr f1, f31 +/* 8018CD60 00189CC0 7F 83 E3 78 */ mr r3, r28 +/* 8018CD64 00189CC4 7F A4 EB 78 */ mr r4, r29 +/* 8018CD68 00189CC8 7F C5 F3 78 */ mr r5, r30 +/* 8018CD6C 00189CCC 7F E6 FB 78 */ mr r6, r31 +/* 8018CD70 00189CD0 48 02 F5 6D */ bl UpdateGunFx__10CGunWeaponFbfRC13CStateManagerRC12CTransform4f +/* 8018CD74 00189CD4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8018CD78 00189CD8 CB E1 00 18 */ lfd f31, 0x18(r1) +/* 8018CD7C 00189CDC 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 8018CD80 00189CE0 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 8018CD84 00189CE4 83 A1 00 0C */ lwz r29, 0xc(r1) +/* 8018CD88 00189CE8 83 81 00 08 */ lwz r28, 8(r1) +/* 8018CD8C 00189CEC 7C 08 03 A6 */ mtlr r0 +/* 8018CD90 00189CF0 38 21 00 20 */ addi r1, r1, 0x20 +/* 8018CD94 00189CF4 4E 80 00 20 */ blr + +.global PostRenderGunFx__11CPhazonBeamFRC13CStateManagerRC12CTransform4f +PostRenderGunFx__11CPhazonBeamFRC13CStateManagerRC12CTransform4f: +/* 8018CD98 00189CF8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8018CD9C 00189CFC 7C 08 02 A6 */ mflr r0 +/* 8018CDA0 00189D00 90 01 00 24 */ stw r0, 0x24(r1) +/* 8018CDA4 00189D04 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8018CDA8 00189D08 7C BF 2B 78 */ mr r31, r5 +/* 8018CDAC 00189D0C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8018CDB0 00189D10 7C 9E 23 78 */ mr r30, r4 +/* 8018CDB4 00189D14 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8018CDB8 00189D18 7C 7D 1B 78 */ mr r29, r3 +/* 8018CDBC 00189D1C 80 63 02 34 */ lwz r3, 0x234(r3) +/* 8018CDC0 00189D20 28 03 00 00 */ cmplwi r3, 0 +/* 8018CDC4 00189D24 41 82 00 14 */ beq lbl_8018CDD8 +/* 8018CDC8 00189D28 81 83 00 00 */ lwz r12, 0(r3) +/* 8018CDCC 00189D2C 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8018CDD0 00189D30 7D 89 03 A6 */ mtctr r12 +/* 8018CDD4 00189D34 4E 80 04 21 */ bctrl +lbl_8018CDD8: +/* 8018CDD8 00189D38 7F A3 EB 78 */ mr r3, r29 +/* 8018CDDC 00189D3C 7F C4 F3 78 */ mr r4, r30 +/* 8018CDE0 00189D40 7F E5 FB 78 */ mr r5, r31 +/* 8018CDE4 00189D44 48 02 F6 41 */ bl PostRenderGunFx__10CGunWeaponFRC13CStateManagerRC12CTransform4f +/* 8018CDE8 00189D48 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8018CDEC 00189D4C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8018CDF0 00189D50 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8018CDF4 00189D54 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8018CDF8 00189D58 7C 08 03 A6 */ mtlr r0 +/* 8018CDFC 00189D5C 38 21 00 20 */ addi r1, r1, 0x20 +/* 8018CE00 00189D60 4E 80 00 20 */ blr + +.global PreRenderGunFx__11CPhazonBeamFRC13CStateManagerRC12CTransform4f +PreRenderGunFx__11CPhazonBeamFRC13CStateManagerRC12CTransform4f: +/* 8018CE04 00189D64 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 8018CE08 00189D68 7C 08 02 A6 */ mflr r0 +/* 8018CE0C 00189D6C 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 8018CE10 00189D70 93 E1 00 AC */ stw r31, 0xac(r1) +/* 8018CE14 00189D74 7C BF 2B 78 */ mr r31, r5 +/* 8018CE18 00189D78 93 C1 00 A8 */ stw r30, 0xa8(r1) +/* 8018CE1C 00189D7C 7C 9E 23 78 */ mr r30, r4 +/* 8018CE20 00189D80 93 A1 00 A4 */ stw r29, 0xa4(r1) +/* 8018CE24 00189D84 7C 7D 1B 78 */ mr r29, r3 +/* 8018CE28 00189D88 48 00 00 8D */ bl IsFiring__11CPhazonBeamCFRC13CStateManager +/* 8018CE2C 00189D8C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8018CE30 00189D90 41 82 00 68 */ beq lbl_8018CE98 +/* 8018CE34 00189D94 3C 80 80 5A */ lis r4, lbl_805A61D4@ha +/* 8018CE38 00189D98 38 61 00 68 */ addi r3, r1, 0x68 +/* 8018CE3C 00189D9C 38 84 61 D4 */ addi r4, r4, lbl_805A61D4@l +/* 8018CE40 00189DA0 48 18 5D 35 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8018CE44 00189DA4 7F E4 FB 78 */ mr r4, r31 +/* 8018CE48 00189DA8 38 61 00 08 */ addi r3, r1, 8 +/* 8018CE4C 00189DAC 48 18 58 95 */ bl GetInverse__12CTransform4fCFv +/* 8018CE50 00189DB0 38 61 00 38 */ addi r3, r1, 0x38 +/* 8018CE54 00189DB4 38 81 00 08 */ addi r4, r1, 8 +/* 8018CE58 00189DB8 38 A1 00 68 */ addi r5, r1, 0x68 +/* 8018CE5C 00189DBC 48 18 5A F5 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8018CE60 00189DC0 38 61 00 38 */ addi r3, r1, 0x38 +/* 8018CE64 00189DC4 48 17 F8 E9 */ bl SetViewPointMatrix__9CGraphicsFRC12CTransform4f +/* 8018CE68 00189DC8 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 8018CE6C 00189DCC 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 8018CE70 00189DD0 38 84 66 70 */ addi r4, r4, skIdentity4f@l +/* 8018CE74 00189DD4 81 83 00 00 */ lwz r12, 0(r3) +/* 8018CE78 00189DD8 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 8018CE7C 00189DDC 7D 89 03 A6 */ mtctr r12 +/* 8018CE80 00189DE0 4E 80 04 21 */ bctrl +/* 8018CE84 00189DE4 7F A3 EB 78 */ mr r3, r29 +/* 8018CE88 00189DE8 7F C4 F3 78 */ mr r4, r30 +/* 8018CE8C 00189DEC 48 02 F2 95 */ bl DrawMuzzleFx__10CGunWeaponCFRC13CStateManager +/* 8018CE90 00189DF0 38 61 00 68 */ addi r3, r1, 0x68 +/* 8018CE94 00189DF4 48 17 F8 B9 */ bl SetViewPointMatrix__9CGraphicsFRC12CTransform4f +lbl_8018CE98: +/* 8018CE98 00189DF8 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 8018CE9C 00189DFC 83 E1 00 AC */ lwz r31, 0xac(r1) +/* 8018CEA0 00189E00 83 C1 00 A8 */ lwz r30, 0xa8(r1) +/* 8018CEA4 00189E04 83 A1 00 A4 */ lwz r29, 0xa4(r1) +/* 8018CEA8 00189E08 7C 08 03 A6 */ mtlr r0 +/* 8018CEAC 00189E0C 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 8018CEB0 00189E10 4E 80 00 20 */ blr + +.global IsFiring__11CPhazonBeamCFRC13CStateManager +IsFiring__11CPhazonBeamCFRC13CStateManager: +/* 8018CEB4 00189E14 C0 23 02 78 */ lfs f1, 0x278(r3) +/* 8018CEB8 00189E18 C0 02 A4 10 */ lfs f0, lbl_805AC130@sda21(r2) +/* 8018CEBC 00189E1C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8018CEC0 00189E20 7C 00 00 26 */ mfcr r0 +/* 8018CEC4 00189E24 54 03 0F FE */ srwi r3, r0, 0x1f +/* 8018CEC8 00189E28 4E 80 00 20 */ blr + +.global ReInitVariables__11CPhazonBeamFv +ReInitVariables__11CPhazonBeamFv: +/* 8018CECC 00189E2C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018CED0 00189E30 7C 08 02 A6 */ mflr r0 +/* 8018CED4 00189E34 C0 22 A4 28 */ lfs f1, lbl_805AC148@sda21(r2) +/* 8018CED8 00189E38 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018CEDC 00189E3C C0 02 A4 0C */ lfs f0, lbl_805AC12C@sda21(r2) +/* 8018CEE0 00189E40 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8018CEE4 00189E44 7C 7F 1B 78 */ mr r31, r3 +/* 8018CEE8 00189E48 D0 23 02 68 */ stfs f1, 0x268(r3) +/* 8018CEEC 00189E4C D0 23 02 6C */ stfs f1, 0x26c(r3) +/* 8018CEF0 00189E50 D0 03 02 70 */ stfs f0, 0x270(r3) +/* 8018CEF4 00189E54 80 63 02 34 */ lwz r3, 0x234(r3) +/* 8018CEF8 00189E58 28 03 00 00 */ cmplwi r3, 0 +/* 8018CEFC 00189E5C 41 82 00 18 */ beq lbl_8018CF14 +/* 8018CF00 00189E60 81 83 00 00 */ lwz r12, 0(r3) +/* 8018CF04 00189E64 38 80 00 01 */ li r4, 1 +/* 8018CF08 00189E68 81 8C 00 08 */ lwz r12, 8(r12) +/* 8018CF0C 00189E6C 7D 89 03 A6 */ mtctr r12 +/* 8018CF10 00189E70 4E 80 04 21 */ bctrl +lbl_8018CF14: +/* 8018CF14 00189E74 38 00 00 00 */ li r0, 0 +/* 8018CF18 00189E78 38 80 00 01 */ li r4, 1 +/* 8018CF1C 00189E7C 90 1F 02 34 */ stw r0, 0x234(r31) +/* 8018CF20 00189E80 80 7F 02 24 */ lwz r3, 0x224(r31) +/* 8018CF24 00189E84 4B F8 9B 29 */ bl __dt__10CModelDataFv +/* 8018CF28 00189E88 38 80 00 00 */ li r4, 0 +/* 8018CF2C 00189E8C 38 60 00 01 */ li r3, 1 +/* 8018CF30 00189E90 90 9F 02 24 */ stw r4, 0x224(r31) +/* 8018CF34 00189E94 88 1F 02 74 */ lbz r0, 0x274(r31) +/* 8018CF38 00189E98 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 8018CF3C 00189E9C 98 1F 02 74 */ stb r0, 0x274(r31) +/* 8018CF40 00189EA0 88 1F 02 74 */ lbz r0, 0x274(r31) +/* 8018CF44 00189EA4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8018CF48 00189EA8 98 1F 02 74 */ stb r0, 0x274(r31) +/* 8018CF4C 00189EAC 88 1F 02 74 */ lbz r0, 0x274(r31) +/* 8018CF50 00189EB0 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 8018CF54 00189EB4 98 1F 02 74 */ stb r0, 0x274(r31) +/* 8018CF58 00189EB8 90 9F 01 CC */ stw r4, 0x1cc(r31) +/* 8018CF5C 00189EBC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8018CF60 00189EC0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018CF64 00189EC4 7C 08 03 A6 */ mtlr r0 +/* 8018CF68 00189EC8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018CF6C 00189ECC 4E 80 00 20 */ blr + +.global __dt__11CPhazonBeamFv +__dt__11CPhazonBeamFv: +/* 8018CF70 00189ED0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8018CF74 00189ED4 7C 08 02 A6 */ mflr r0 +/* 8018CF78 00189ED8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8018CF7C 00189EDC 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8018CF80 00189EE0 7C 9F 23 78 */ mr r31, r4 +/* 8018CF84 00189EE4 93 C1 00 08 */ stw r30, 8(r1) +/* 8018CF88 00189EE8 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8018CF8C 00189EEC 41 82 00 98 */ beq lbl_8018D024 +/* 8018CF90 00189EF0 3C 60 80 3E */ lis r3, lbl_803E42E8@ha +/* 8018CF94 00189EF4 34 1E 02 34 */ addic. r0, r30, 0x234 +/* 8018CF98 00189EF8 38 03 42 E8 */ addi r0, r3, lbl_803E42E8@l +/* 8018CF9C 00189EFC 90 1E 00 00 */ stw r0, 0(r30) +/* 8018CFA0 00189F00 41 82 00 24 */ beq lbl_8018CFC4 +/* 8018CFA4 00189F04 80 7E 02 34 */ lwz r3, 0x234(r30) +/* 8018CFA8 00189F08 28 03 00 00 */ cmplwi r3, 0 +/* 8018CFAC 00189F0C 41 82 00 18 */ beq lbl_8018CFC4 +/* 8018CFB0 00189F10 81 83 00 00 */ lwz r12, 0(r3) +/* 8018CFB4 00189F14 38 80 00 01 */ li r4, 1 +/* 8018CFB8 00189F18 81 8C 00 08 */ lwz r12, 8(r12) +/* 8018CFBC 00189F1C 7D 89 03 A6 */ mtctr r12 +/* 8018CFC0 00189F20 4E 80 04 21 */ bctrl +lbl_8018CFC4: +/* 8018CFC4 00189F24 34 1E 02 28 */ addic. r0, r30, 0x228 +/* 8018CFC8 00189F28 41 82 00 18 */ beq lbl_8018CFE0 +/* 8018CFCC 00189F2C 34 1E 02 28 */ addic. r0, r30, 0x228 +/* 8018CFD0 00189F30 41 82 00 10 */ beq lbl_8018CFE0 +/* 8018CFD4 00189F34 38 7E 02 28 */ addi r3, r30, 0x228 +/* 8018CFD8 00189F38 38 80 00 00 */ li r4, 0 +/* 8018CFDC 00189F3C 48 1B 3E 65 */ bl __dt__6CTokenFv +lbl_8018CFE0: +/* 8018CFE0 00189F40 34 1E 02 24 */ addic. r0, r30, 0x224 +/* 8018CFE4 00189F44 41 82 00 10 */ beq lbl_8018CFF4 +/* 8018CFE8 00189F48 80 7E 02 24 */ lwz r3, 0x224(r30) +/* 8018CFEC 00189F4C 38 80 00 01 */ li r4, 1 +/* 8018CFF0 00189F50 4B F8 9A 5D */ bl __dt__10CModelDataFv +lbl_8018CFF4: +/* 8018CFF4 00189F54 34 1E 02 1C */ addic. r0, r30, 0x21c +/* 8018CFF8 00189F58 41 82 00 10 */ beq lbl_8018D008 +/* 8018CFFC 00189F5C 38 7E 02 1C */ addi r3, r30, 0x21c +/* 8018D000 00189F60 38 80 00 00 */ li r4, 0 +/* 8018D004 00189F64 48 1B 3E 3D */ bl __dt__6CTokenFv +lbl_8018D008: +/* 8018D008 00189F68 7F C3 F3 78 */ mr r3, r30 +/* 8018D00C 00189F6C 38 80 00 00 */ li r4, 0 +/* 8018D010 00189F70 48 02 FC B1 */ bl __dt__10CGunWeaponFv +/* 8018D014 00189F74 7F E0 07 35 */ extsh. r0, r31 +/* 8018D018 00189F78 40 81 00 0C */ ble lbl_8018D024 +/* 8018D01C 00189F7C 7F C3 F3 78 */ mr r3, r30 +/* 8018D020 00189F80 48 18 89 11 */ bl Free__7CMemoryFPCv +lbl_8018D024: +/* 8018D024 00189F84 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8018D028 00189F88 7F C3 F3 78 */ mr r3, r30 +/* 8018D02C 00189F8C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8018D030 00189F90 83 C1 00 08 */ lwz r30, 8(r1) +/* 8018D034 00189F94 7C 08 03 A6 */ mtlr r0 +/* 8018D038 00189F98 38 21 00 10 */ addi r1, r1, 0x10 +/* 8018D03C 00189F9C 4E 80 00 20 */ blr + +.global __ct__11CPhazonBeamFUi11EWeaponType9TUniqueId14EMaterialTypesRC9CVector3f +__ct__11CPhazonBeamFUi11EWeaponType9TUniqueId14EMaterialTypesRC9CVector3f: +/* 8018D040 00189FA0 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 8018D044 00189FA4 7C 08 02 A6 */ mflr r0 +/* 8018D048 00189FA8 90 01 00 94 */ stw r0, 0x94(r1) +/* 8018D04C 00189FAC 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 8018D050 00189FB0 7D 1F 43 78 */ mr r31, r8 +/* 8018D054 00189FB4 93 C1 00 88 */ stw r30, 0x88(r1) +/* 8018D058 00189FB8 7C 7E 1B 78 */ mr r30, r3 +/* 8018D05C 00189FBC 93 A1 00 84 */ stw r29, 0x84(r1) +/* 8018D060 00189FC0 A0 06 00 00 */ lhz r0, 0(r6) +/* 8018D064 00189FC4 38 C1 00 08 */ addi r6, r1, 8 +/* 8018D068 00189FC8 B0 01 00 08 */ sth r0, 8(r1) +/* 8018D06C 00189FCC 48 03 01 45 */ bl __ct__10CGunWeaponFUi11EWeaponType9TUniqueId14EMaterialTypesRC9CVector3f +/* 8018D070 00189FD0 3C 80 80 3E */ lis r4, lbl_803E42E8@ha +/* 8018D074 00189FD4 38 61 00 14 */ addi r3, r1, 0x14 +/* 8018D078 00189FD8 38 04 42 E8 */ addi r0, r4, lbl_803E42E8@l +/* 8018D07C 00189FDC 80 A2 A3 FC */ lwz r5, lbl_805AC11C@sda21(r2) +/* 8018D080 00189FE0 90 1E 00 00 */ stw r0, 0(r30) +/* 8018D084 00189FE4 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8018D088 00189FE8 81 84 00 00 */ lwz r12, 0(r4) +/* 8018D08C 00189FEC 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8018D090 00189FF0 7D 89 03 A6 */ mtctr r12 +/* 8018D094 00189FF4 4E 80 04 21 */ bctrl +/* 8018D098 00189FF8 38 7E 02 1C */ addi r3, r30, 0x21c +/* 8018D09C 00189FFC 38 81 00 14 */ addi r4, r1, 0x14 +/* 8018D0A0 0018A000 48 1B 3E 09 */ bl __ct__6CTokenFRC6CToken +/* 8018D0A4 0018A004 38 61 00 14 */ addi r3, r1, 0x14 +/* 8018D0A8 0018A008 38 80 FF FF */ li r4, -1 +/* 8018D0AC 0018A00C 48 1B 3D 95 */ bl __dt__6CTokenFv +/* 8018D0B0 0018A010 38 00 00 00 */ li r0, 0 +/* 8018D0B4 0018A014 3C 60 80 3D */ lis r3, lbl_803D08F8@ha +/* 8018D0B8 0018A018 90 1E 02 24 */ stw r0, 0x224(r30) +/* 8018D0BC 0018A01C 38 A3 08 F8 */ addi r5, r3, lbl_803D08F8@l +/* 8018D0C0 0018A020 38 61 00 0C */ addi r3, r1, 0xc +/* 8018D0C4 0018A024 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8018D0C8 0018A028 38 A5 00 36 */ addi r5, r5, 0x36 +/* 8018D0CC 0018A02C 81 84 00 00 */ lwz r12, 0(r4) +/* 8018D0D0 0018A030 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8018D0D4 0018A034 7D 89 03 A6 */ mtctr r12 +/* 8018D0D8 0018A038 4E 80 04 21 */ bctrl +/* 8018D0DC 0018A03C 3B BE 02 28 */ addi r29, r30, 0x228 +/* 8018D0E0 0018A040 38 81 00 0C */ addi r4, r1, 0xc +/* 8018D0E4 0018A044 7F A3 EB 78 */ mr r3, r29 +/* 8018D0E8 0018A048 48 1B 3D C1 */ bl __ct__6CTokenFRC6CToken +/* 8018D0EC 0018A04C 38 00 00 00 */ li r0, 0 +/* 8018D0F0 0018A050 38 61 00 0C */ addi r3, r1, 0xc +/* 8018D0F4 0018A054 90 1D 00 08 */ stw r0, 8(r29) +/* 8018D0F8 0018A058 38 80 FF FF */ li r4, -1 +/* 8018D0FC 0018A05C 48 1B 3D 45 */ bl __dt__6CTokenFv +/* 8018D100 0018A060 38 00 00 00 */ li r0, 0 +/* 8018D104 0018A064 C0 02 A4 34 */ lfs f0, lbl_805AC154@sda21(r2) +/* 8018D108 0018A068 90 1E 02 34 */ stw r0, 0x234(r30) +/* 8018D10C 0018A06C 38 7E 02 38 */ addi r3, r30, 0x238 +/* 8018D110 0018A070 C0 C2 A4 38 */ lfs f6, lbl_805AC158@sda21(r2) +/* 8018D114 0018A074 38 81 00 70 */ addi r4, r1, 0x70 +/* 8018D118 0018A078 C1 7F 00 04 */ lfs f11, 4(r31) +/* 8018D11C 0018A07C 38 A1 00 58 */ addi r5, r1, 0x58 +/* 8018D120 0018A080 C0 A2 A4 3C */ lfs f5, lbl_805AC15C@sda21(r2) +/* 8018D124 0018A084 C0 62 A4 40 */ lfs f3, lbl_805AC160@sda21(r2) +/* 8018D128 0018A088 ED 4B 01 B2 */ fmuls f10, f11, f6 +/* 8018D12C 0018A08C C0 42 A4 28 */ lfs f2, lbl_805AC148@sda21(r2) +/* 8018D130 0018A090 ED 2B 01 72 */ fmuls f9, f11, f5 +/* 8018D134 0018A094 C0 22 A4 44 */ lfs f1, lbl_805AC164@sda21(r2) +/* 8018D138 0018A098 EC 8B 00 32 */ fmuls f4, f11, f0 +/* 8018D13C 0018A09C ED 0B 00 B2 */ fmuls f8, f11, f2 +/* 8018D140 0018A0A0 EC EB 00 72 */ fmuls f7, f11, f1 +/* 8018D144 0018A0A4 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 8018D148 0018A0A8 EC 0B 00 F2 */ fmuls f0, f11, f3 +/* 8018D14C 0018A0AC D0 C1 00 50 */ stfs f6, 0x50(r1) +/* 8018D150 0018A0B0 D0 A1 00 54 */ stfs f5, 0x54(r1) +/* 8018D154 0018A0B4 D0 81 00 58 */ stfs f4, 0x58(r1) +/* 8018D158 0018A0B8 D1 41 00 5C */ stfs f10, 0x5c(r1) +/* 8018D15C 0018A0BC D1 21 00 60 */ stfs f9, 0x60(r1) +/* 8018D160 0018A0C0 D0 61 00 64 */ stfs f3, 0x64(r1) +/* 8018D164 0018A0C4 D0 41 00 68 */ stfs f2, 0x68(r1) +/* 8018D168 0018A0C8 D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 8018D16C 0018A0CC D0 01 00 70 */ stfs f0, 0x70(r1) +/* 8018D170 0018A0D0 D1 01 00 74 */ stfs f8, 0x74(r1) +/* 8018D174 0018A0D4 D0 E1 00 78 */ stfs f7, 0x78(r1) +/* 8018D178 0018A0D8 48 1A B3 91 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8018D17C 0018A0DC C0 02 A4 48 */ lfs f0, lbl_805AC168@sda21(r2) +/* 8018D180 0018A0E0 38 7E 02 50 */ addi r3, r30, 0x250 +/* 8018D184 0018A0E4 C1 7F 00 04 */ lfs f11, 4(r31) +/* 8018D188 0018A0E8 38 81 00 40 */ addi r4, r1, 0x40 +/* 8018D18C 0018A0EC C0 C2 A4 4C */ lfs f6, lbl_805AC16C@sda21(r2) +/* 8018D190 0018A0F0 38 A1 00 28 */ addi r5, r1, 0x28 +/* 8018D194 0018A0F4 C0 A2 A4 50 */ lfs f5, lbl_805AC170@sda21(r2) +/* 8018D198 0018A0F8 EC 8B 00 32 */ fmuls f4, f11, f0 +/* 8018D19C 0018A0FC C0 62 A4 54 */ lfs f3, lbl_805AC174@sda21(r2) +/* 8018D1A0 0018A100 ED 4B 01 B2 */ fmuls f10, f11, f6 +/* 8018D1A4 0018A104 C0 42 A4 28 */ lfs f2, lbl_805AC148@sda21(r2) +/* 8018D1A8 0018A108 ED 2B 01 72 */ fmuls f9, f11, f5 +/* 8018D1AC 0018A10C C0 22 A4 58 */ lfs f1, lbl_805AC178@sda21(r2) +/* 8018D1B0 0018A110 ED 0B 00 B2 */ fmuls f8, f11, f2 +/* 8018D1B4 0018A114 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8018D1B8 0018A118 EC EB 00 72 */ fmuls f7, f11, f1 +/* 8018D1BC 0018A11C EC 0B 00 F2 */ fmuls f0, f11, f3 +/* 8018D1C0 0018A120 D0 C1 00 20 */ stfs f6, 0x20(r1) +/* 8018D1C4 0018A124 D0 A1 00 24 */ stfs f5, 0x24(r1) +/* 8018D1C8 0018A128 D0 81 00 28 */ stfs f4, 0x28(r1) +/* 8018D1CC 0018A12C D1 41 00 2C */ stfs f10, 0x2c(r1) +/* 8018D1D0 0018A130 D1 21 00 30 */ stfs f9, 0x30(r1) +/* 8018D1D4 0018A134 D0 61 00 34 */ stfs f3, 0x34(r1) +/* 8018D1D8 0018A138 D0 41 00 38 */ stfs f2, 0x38(r1) +/* 8018D1DC 0018A13C D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 8018D1E0 0018A140 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 8018D1E4 0018A144 D1 01 00 44 */ stfs f8, 0x44(r1) +/* 8018D1E8 0018A148 D0 E1 00 48 */ stfs f7, 0x48(r1) +/* 8018D1EC 0018A14C 48 1A B3 1D */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 8018D1F0 0018A150 C0 42 A4 28 */ lfs f2, lbl_805AC148@sda21(r2) +/* 8018D1F4 0018A154 38 A0 00 00 */ li r5, 0 +/* 8018D1F8 0018A158 C0 22 A4 0C */ lfs f1, lbl_805AC12C@sda21(r2) +/* 8018D1FC 0018A15C 38 80 00 01 */ li r4, 1 +/* 8018D200 0018A160 D0 5E 02 68 */ stfs f2, 0x268(r30) +/* 8018D204 0018A164 7F C3 F3 78 */ mr r3, r30 +/* 8018D208 0018A168 C0 02 A4 24 */ lfs f0, lbl_805AC144@sda21(r2) +/* 8018D20C 0018A16C D0 5E 02 6C */ stfs f2, 0x26c(r30) +/* 8018D210 0018A170 D0 3E 02 70 */ stfs f1, 0x270(r30) +/* 8018D214 0018A174 88 1E 02 74 */ lbz r0, 0x274(r30) +/* 8018D218 0018A178 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 8018D21C 0018A17C 98 1E 02 74 */ stb r0, 0x274(r30) +/* 8018D220 0018A180 88 1E 02 74 */ lbz r0, 0x274(r30) +/* 8018D224 0018A184 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 8018D228 0018A188 98 1E 02 74 */ stb r0, 0x274(r30) +/* 8018D22C 0018A18C 88 1E 02 74 */ lbz r0, 0x274(r30) +/* 8018D230 0018A190 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a +/* 8018D234 0018A194 98 1E 02 74 */ stb r0, 0x274(r30) +/* 8018D238 0018A198 88 1E 02 74 */ lbz r0, 0x274(r30) +/* 8018D23C 0018A19C 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 8018D240 0018A1A0 98 1E 02 74 */ stb r0, 0x274(r30) +/* 8018D244 0018A1A4 D0 1E 02 78 */ stfs f0, 0x278(r30) +/* 8018D248 0018A1A8 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 8018D24C 0018A1AC 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 8018D250 0018A1B0 83 A1 00 84 */ lwz r29, 0x84(r1) +/* 8018D254 0018A1B4 80 01 00 94 */ lwz r0, 0x94(r1) +/* 8018D258 0018A1B8 7C 08 03 A6 */ mtlr r0 +/* 8018D25C 0018A1BC 38 21 00 90 */ addi r1, r1, 0x90 +/* 8018D260 0018A1C0 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Weapons/CPlasmaProjectile.s b/asm/Kyoto_CWD/Weapons/CPlasmaProjectile.s new file mode 100644 index 00000000..108a9cd0 --- /dev/null +++ b/asm/Kyoto_CWD/Weapons/CPlasmaProjectile.s @@ -0,0 +1,2809 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __dt__17CPlasmaProjectileFv +__dt__17CPlasmaProjectileFv: +/* 80176B2C 00173A8C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80176B30 00173A90 7C 08 02 A6 */ mflr r0 +/* 80176B34 00173A94 90 01 00 24 */ stw r0, 0x24(r1) +/* 80176B38 00173A98 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80176B3C 00173A9C 7C 9F 23 78 */ mr r31, r4 +/* 80176B40 00173AA0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80176B44 00173AA4 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80176B48 00173AA8 41 82 01 B4 */ beq lbl_80176CFC +/* 80176B4C 00173AAC 3C 60 80 3E */ lis r3, lbl_803E3F00@ha +/* 80176B50 00173AB0 34 1E 05 38 */ addic. r0, r30, 0x538 +/* 80176B54 00173AB4 38 03 3F 00 */ addi r0, r3, lbl_803E3F00@l +/* 80176B58 00173AB8 90 1E 00 00 */ stw r0, 0(r30) +/* 80176B5C 00173ABC 41 82 00 28 */ beq lbl_80176B84 +/* 80176B60 00173AC0 88 1E 05 40 */ lbz r0, 0x540(r30) +/* 80176B64 00173AC4 28 00 00 00 */ cmplwi r0, 0 +/* 80176B68 00173AC8 41 82 00 14 */ beq lbl_80176B7C +/* 80176B6C 00173ACC 34 7E 05 38 */ addic. r3, r30, 0x538 +/* 80176B70 00173AD0 41 82 00 0C */ beq lbl_80176B7C +/* 80176B74 00173AD4 38 80 00 00 */ li r4, 0 +/* 80176B78 00173AD8 48 1C A2 C9 */ bl __dt__6CTokenFv +lbl_80176B7C: +/* 80176B7C 00173ADC 38 00 00 00 */ li r0, 0 +/* 80176B80 00173AE0 98 1E 05 40 */ stb r0, 0x540(r30) +lbl_80176B84: +/* 80176B84 00173AE4 34 1E 05 2C */ addic. r0, r30, 0x52c +/* 80176B88 00173AE8 41 82 00 28 */ beq lbl_80176BB0 +/* 80176B8C 00173AEC 88 1E 05 34 */ lbz r0, 0x534(r30) +/* 80176B90 00173AF0 28 00 00 00 */ cmplwi r0, 0 +/* 80176B94 00173AF4 41 82 00 14 */ beq lbl_80176BA8 +/* 80176B98 00173AF8 34 7E 05 2C */ addic. r3, r30, 0x52c +/* 80176B9C 00173AFC 41 82 00 0C */ beq lbl_80176BA8 +/* 80176BA0 00173B00 38 80 00 00 */ li r4, 0 +/* 80176BA4 00173B04 48 1C A2 9D */ bl __dt__6CTokenFv +lbl_80176BA8: +/* 80176BA8 00173B08 38 00 00 00 */ li r0, 0 +/* 80176BAC 00173B0C 98 1E 05 34 */ stb r0, 0x534(r30) +lbl_80176BB0: +/* 80176BB0 00173B10 34 1E 05 20 */ addic. r0, r30, 0x520 +/* 80176BB4 00173B14 41 82 00 24 */ beq lbl_80176BD8 +/* 80176BB8 00173B18 80 7E 05 20 */ lwz r3, 0x520(r30) +/* 80176BBC 00173B1C 28 03 00 00 */ cmplwi r3, 0 +/* 80176BC0 00173B20 41 82 00 18 */ beq lbl_80176BD8 +/* 80176BC4 00173B24 81 83 00 00 */ lwz r12, 0(r3) +/* 80176BC8 00173B28 38 80 00 01 */ li r4, 1 +/* 80176BCC 00173B2C 81 8C 00 08 */ lwz r12, 8(r12) +/* 80176BD0 00173B30 7D 89 03 A6 */ mtctr r12 +/* 80176BD4 00173B34 4E 80 04 21 */ bctrl +lbl_80176BD8: +/* 80176BD8 00173B38 34 1E 05 1C */ addic. r0, r30, 0x51c +/* 80176BDC 00173B3C 41 82 00 24 */ beq lbl_80176C00 +/* 80176BE0 00173B40 80 7E 05 1C */ lwz r3, 0x51c(r30) +/* 80176BE4 00173B44 28 03 00 00 */ cmplwi r3, 0 +/* 80176BE8 00173B48 41 82 00 18 */ beq lbl_80176C00 +/* 80176BEC 00173B4C 81 83 00 00 */ lwz r12, 0(r3) +/* 80176BF0 00173B50 38 80 00 01 */ li r4, 1 +/* 80176BF4 00173B54 81 8C 00 08 */ lwz r12, 8(r12) +/* 80176BF8 00173B58 7D 89 03 A6 */ mtctr r12 +/* 80176BFC 00173B5C 4E 80 04 21 */ bctrl +lbl_80176C00: +/* 80176C00 00173B60 34 1E 05 18 */ addic. r0, r30, 0x518 +/* 80176C04 00173B64 41 82 00 24 */ beq lbl_80176C28 +/* 80176C08 00173B68 80 7E 05 18 */ lwz r3, 0x518(r30) +/* 80176C0C 00173B6C 28 03 00 00 */ cmplwi r3, 0 +/* 80176C10 00173B70 41 82 00 18 */ beq lbl_80176C28 +/* 80176C14 00173B74 81 83 00 00 */ lwz r12, 0(r3) +/* 80176C18 00173B78 38 80 00 01 */ li r4, 1 +/* 80176C1C 00173B7C 81 8C 00 08 */ lwz r12, 8(r12) +/* 80176C20 00173B80 7D 89 03 A6 */ mtctr r12 +/* 80176C24 00173B84 4E 80 04 21 */ bctrl +lbl_80176C28: +/* 80176C28 00173B88 34 1E 05 0C */ addic. r0, r30, 0x50c +/* 80176C2C 00173B8C 41 82 00 18 */ beq lbl_80176C44 +/* 80176C30 00173B90 34 1E 05 0C */ addic. r0, r30, 0x50c +/* 80176C34 00173B94 41 82 00 10 */ beq lbl_80176C44 +/* 80176C38 00173B98 38 7E 05 0C */ addi r3, r30, 0x50c +/* 80176C3C 00173B9C 38 80 00 00 */ li r4, 0 +/* 80176C40 00173BA0 48 1C A2 01 */ bl __dt__6CTokenFv +lbl_80176C44: +/* 80176C44 00173BA4 34 1E 05 00 */ addic. r0, r30, 0x500 +/* 80176C48 00173BA8 41 82 00 18 */ beq lbl_80176C60 +/* 80176C4C 00173BAC 34 1E 05 00 */ addic. r0, r30, 0x500 +/* 80176C50 00173BB0 41 82 00 10 */ beq lbl_80176C60 +/* 80176C54 00173BB4 38 7E 05 00 */ addi r3, r30, 0x500 +/* 80176C58 00173BB8 38 80 00 00 */ li r4, 0 +/* 80176C5C 00173BBC 48 1C A1 E5 */ bl __dt__6CTokenFv +lbl_80176C60: +/* 80176C60 00173BC0 34 1E 04 F4 */ addic. r0, r30, 0x4f4 +/* 80176C64 00173BC4 41 82 00 18 */ beq lbl_80176C7C +/* 80176C68 00173BC8 34 1E 04 F4 */ addic. r0, r30, 0x4f4 +/* 80176C6C 00173BCC 41 82 00 10 */ beq lbl_80176C7C +/* 80176C70 00173BD0 38 7E 04 F4 */ addi r3, r30, 0x4f4 +/* 80176C74 00173BD4 38 80 00 00 */ li r4, 0 +/* 80176C78 00173BD8 48 1C A1 C9 */ bl __dt__6CTokenFv +lbl_80176C7C: +/* 80176C7C 00173BDC 34 1E 04 E8 */ addic. r0, r30, 0x4e8 +/* 80176C80 00173BE0 41 82 00 18 */ beq lbl_80176C98 +/* 80176C84 00173BE4 34 1E 04 E8 */ addic. r0, r30, 0x4e8 +/* 80176C88 00173BE8 41 82 00 10 */ beq lbl_80176C98 +/* 80176C8C 00173BEC 38 7E 04 E8 */ addi r3, r30, 0x4e8 +/* 80176C90 00173BF0 38 80 00 00 */ li r4, 0 +/* 80176C94 00173BF4 48 1C A1 AD */ bl __dt__6CTokenFv +lbl_80176C98: +/* 80176C98 00173BF8 34 1E 04 68 */ addic. r0, r30, 0x468 +/* 80176C9C 00173BFC 41 82 00 44 */ beq lbl_80176CE0 +/* 80176CA0 00173C00 80 1E 04 6C */ lwz r0, 0x46c(r30) +/* 80176CA4 00173C04 80 7E 04 74 */ lwz r3, 0x474(r30) +/* 80176CA8 00173C08 54 00 08 3C */ slwi r0, r0, 1 +/* 80176CAC 00173C0C 7C 03 02 14 */ add r0, r3, r0 +/* 80176CB0 00173C10 90 61 00 0C */ stw r3, 0xc(r1) +/* 80176CB4 00173C14 7C 64 1B 78 */ mr r4, r3 +/* 80176CB8 00173C18 90 01 00 14 */ stw r0, 0x14(r1) +/* 80176CBC 00173C1C 90 01 00 10 */ stw r0, 0x10(r1) +/* 80176CC0 00173C20 90 61 00 08 */ stw r3, 8(r1) +/* 80176CC4 00173C24 48 00 00 08 */ b lbl_80176CCC +lbl_80176CC8: +/* 80176CC8 00173C28 38 84 00 02 */ addi r4, r4, 2 +lbl_80176CCC: +/* 80176CCC 00173C2C 7C 04 00 40 */ cmplw r4, r0 +/* 80176CD0 00173C30 40 82 FF F8 */ bne lbl_80176CC8 +/* 80176CD4 00173C34 28 03 00 00 */ cmplwi r3, 0 +/* 80176CD8 00173C38 41 82 00 08 */ beq lbl_80176CE0 +/* 80176CDC 00173C3C 48 19 EC 55 */ bl Free__7CMemoryFPCv +lbl_80176CE0: +/* 80176CE0 00173C40 7F C3 F3 78 */ mr r3, r30 +/* 80176CE4 00173C44 38 80 00 00 */ li r4, 0 +/* 80176CE8 00173C48 48 00 00 31 */ bl __dt__15CBeamProjectileFv +/* 80176CEC 00173C4C 7F E0 07 35 */ extsh. r0, r31 +/* 80176CF0 00173C50 40 81 00 0C */ ble lbl_80176CFC +/* 80176CF4 00173C54 7F C3 F3 78 */ mr r3, r30 +/* 80176CF8 00173C58 48 19 EC 39 */ bl Free__7CMemoryFPCv +lbl_80176CFC: +/* 80176CFC 00173C5C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80176D00 00173C60 7F C3 F3 78 */ mr r3, r30 +/* 80176D04 00173C64 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80176D08 00173C68 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80176D0C 00173C6C 7C 08 03 A6 */ mtlr r0 +/* 80176D10 00173C70 38 21 00 20 */ addi r1, r1, 0x20 +/* 80176D14 00173C74 4E 80 00 20 */ blr + +.global __dt__15CBeamProjectileFv +__dt__15CBeamProjectileFv: +/* 80176D18 00173C78 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80176D1C 00173C7C 7C 08 02 A6 */ mflr r0 +/* 80176D20 00173C80 90 01 00 14 */ stw r0, 0x14(r1) +/* 80176D24 00173C84 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80176D28 00173C88 7C 7F 1B 79 */ or. r31, r3, r3 +/* 80176D2C 00173C8C 93 C1 00 08 */ stw r30, 8(r1) +/* 80176D30 00173C90 7C 9E 23 78 */ mr r30, r4 +/* 80176D34 00173C94 41 82 00 E4 */ beq lbl_80176E18 +/* 80176D38 00173C98 3C 60 80 3E */ lis r3, lbl_803E4648@ha +/* 80176D3C 00173C9C 34 1F 04 00 */ addic. r0, r31, 0x400 +/* 80176D40 00173CA0 38 03 46 48 */ addi r0, r3, lbl_803E4648@l +/* 80176D44 00173CA4 90 1F 00 00 */ stw r0, 0(r31) +/* 80176D48 00173CA8 41 82 00 58 */ beq lbl_80176DA0 +/* 80176D4C 00173CAC 80 BF 04 00 */ lwz r5, 0x400(r31) +/* 80176D50 00173CB0 38 60 00 00 */ li r3, 0 +/* 80176D54 00173CB4 2C 05 00 00 */ cmpwi r5, 0 +/* 80176D58 00173CB8 40 81 00 40 */ ble lbl_80176D98 +/* 80176D5C 00173CBC 2C 05 00 08 */ cmpwi r5, 8 +/* 80176D60 00173CC0 38 85 FF F8 */ addi r4, r5, -8 +/* 80176D64 00173CC4 40 81 00 20 */ ble lbl_80176D84 +/* 80176D68 00173CC8 38 04 00 07 */ addi r0, r4, 7 +/* 80176D6C 00173CCC 54 00 E8 FE */ srwi r0, r0, 3 +/* 80176D70 00173CD0 7C 09 03 A6 */ mtctr r0 +/* 80176D74 00173CD4 2C 04 00 00 */ cmpwi r4, 0 +/* 80176D78 00173CD8 40 81 00 0C */ ble lbl_80176D84 +lbl_80176D7C: +/* 80176D7C 00173CDC 38 63 00 08 */ addi r3, r3, 8 +/* 80176D80 00173CE0 42 00 FF FC */ bdnz lbl_80176D7C +lbl_80176D84: +/* 80176D84 00173CE4 7C 03 28 50 */ subf r0, r3, r5 +/* 80176D88 00173CE8 7C 09 03 A6 */ mtctr r0 +/* 80176D8C 00173CEC 7C 03 28 00 */ cmpw r3, r5 +/* 80176D90 00173CF0 40 80 00 08 */ bge lbl_80176D98 +lbl_80176D94: +/* 80176D94 00173CF4 42 00 00 00 */ bdnz lbl_80176D94 +lbl_80176D98: +/* 80176D98 00173CF8 38 00 00 00 */ li r0, 0 +/* 80176D9C 00173CFC 90 1F 04 00 */ stw r0, 0x400(r31) +lbl_80176DA0: +/* 80176DA0 00173D00 34 1F 03 84 */ addic. r0, r31, 0x384 +/* 80176DA4 00173D04 41 82 00 58 */ beq lbl_80176DFC +/* 80176DA8 00173D08 80 BF 03 84 */ lwz r5, 0x384(r31) +/* 80176DAC 00173D0C 38 60 00 00 */ li r3, 0 +/* 80176DB0 00173D10 2C 05 00 00 */ cmpwi r5, 0 +/* 80176DB4 00173D14 40 81 00 40 */ ble lbl_80176DF4 +/* 80176DB8 00173D18 2C 05 00 08 */ cmpwi r5, 8 +/* 80176DBC 00173D1C 38 85 FF F8 */ addi r4, r5, -8 +/* 80176DC0 00173D20 40 81 00 20 */ ble lbl_80176DE0 +/* 80176DC4 00173D24 38 04 00 07 */ addi r0, r4, 7 +/* 80176DC8 00173D28 54 00 E8 FE */ srwi r0, r0, 3 +/* 80176DCC 00173D2C 7C 09 03 A6 */ mtctr r0 +/* 80176DD0 00173D30 2C 04 00 00 */ cmpwi r4, 0 +/* 80176DD4 00173D34 40 81 00 0C */ ble lbl_80176DE0 +lbl_80176DD8: +/* 80176DD8 00173D38 38 63 00 08 */ addi r3, r3, 8 +/* 80176DDC 00173D3C 42 00 FF FC */ bdnz lbl_80176DD8 +lbl_80176DE0: +/* 80176DE0 00173D40 7C 03 28 50 */ subf r0, r3, r5 +/* 80176DE4 00173D44 7C 09 03 A6 */ mtctr r0 +/* 80176DE8 00173D48 7C 03 28 00 */ cmpw r3, r5 +/* 80176DEC 00173D4C 40 80 00 08 */ bge lbl_80176DF4 +lbl_80176DF0: +/* 80176DF0 00173D50 42 00 00 00 */ bdnz lbl_80176DF0 +lbl_80176DF4: +/* 80176DF4 00173D54 38 00 00 00 */ li r0, 0 +/* 80176DF8 00173D58 90 1F 03 84 */ stw r0, 0x384(r31) +lbl_80176DFC: +/* 80176DFC 00173D5C 7F E3 FB 78 */ mr r3, r31 +/* 80176E00 00173D60 38 80 00 00 */ li r4, 0 +/* 80176E04 00173D64 4B EC 05 FD */ bl __dt__15CGameProjectileFv +/* 80176E08 00173D68 7F C0 07 35 */ extsh. r0, r30 +/* 80176E0C 00173D6C 40 81 00 0C */ ble lbl_80176E18 +/* 80176E10 00173D70 7F E3 FB 78 */ mr r3, r31 +/* 80176E14 00173D74 48 19 EB 1D */ bl Free__7CMemoryFPCv +lbl_80176E18: +/* 80176E18 00173D78 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80176E1C 00173D7C 7F E3 FB 78 */ mr r3, r31 +/* 80176E20 00173D80 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80176E24 00173D84 83 C1 00 08 */ lwz r30, 8(r1) +/* 80176E28 00173D88 7C 08 03 A6 */ mtlr r0 +/* 80176E2C 00173D8C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80176E30 00173D90 4E 80 00 20 */ blr + +.global sub_80176e34 +sub_80176e34: +/* 80176E34 00173D94 C0 02 A1 C0 */ lfs f0, lbl_805ABEE0@sda21(r2) +/* 80176E38 00173D98 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80176E3C 00173D9C 40 81 00 50 */ ble lbl_80176E8C +/* 80176E40 00173DA0 80 03 04 78 */ lwz r0, 0x478(r3) +/* 80176E44 00173DA4 60 00 00 08 */ ori r0, r0, 8 +/* 80176E48 00173DA8 90 03 04 78 */ stw r0, 0x478(r3) +/* 80176E4C 00173DAC D0 23 04 E0 */ stfs f1, 0x4e0(r3) +/* 80176E50 00173DB0 80 A4 00 00 */ lwz r5, 0(r4) +/* 80176E54 00173DB4 80 04 00 04 */ lwz r0, 4(r4) +/* 80176E58 00173DB8 90 A3 04 98 */ stw r5, 0x498(r3) +/* 80176E5C 00173DBC 90 03 04 9C */ stw r0, 0x49c(r3) +/* 80176E60 00173DC0 C0 04 00 08 */ lfs f0, 8(r4) +/* 80176E64 00173DC4 D0 03 04 A0 */ stfs f0, 0x4a0(r3) +/* 80176E68 00173DC8 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 80176E6C 00173DCC D0 03 04 A4 */ stfs f0, 0x4a4(r3) +/* 80176E70 00173DD0 C0 04 00 10 */ lfs f0, 0x10(r4) +/* 80176E74 00173DD4 D0 03 04 A8 */ stfs f0, 0x4a8(r3) +/* 80176E78 00173DD8 C0 04 00 14 */ lfs f0, 0x14(r4) +/* 80176E7C 00173DDC D0 03 04 AC */ stfs f0, 0x4ac(r3) +/* 80176E80 00173DE0 88 04 00 18 */ lbz r0, 0x18(r4) +/* 80176E84 00173DE4 98 03 04 B0 */ stb r0, 0x4b0(r3) +/* 80176E88 00173DE8 4E 80 00 20 */ blr +lbl_80176E8C: +/* 80176E8C 00173DEC 80 03 04 78 */ lwz r0, 0x478(r3) +/* 80176E90 00173DF0 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b +/* 80176E94 00173DF4 90 03 04 78 */ stw r0, 0x478(r3) +/* 80176E98 00173DF8 4E 80 00 20 */ blr + +.global UpdateLights__17CPlasmaProjectileFffR13CStateManager +UpdateLights__17CPlasmaProjectileFffR13CStateManager: +/* 80176E9C 00173DFC 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 80176EA0 00173E00 7C 08 02 A6 */ mflr r0 +/* 80176EA4 00173E04 90 01 01 04 */ stw r0, 0x104(r1) +/* 80176EA8 00173E08 DB E1 00 F0 */ stfd f31, 0xf0(r1) +/* 80176EAC 00173E0C F3 E1 00 F8 */ psq_st f31, 248(r1), 0, qr0 +/* 80176EB0 00173E10 DB C1 00 E0 */ stfd f30, 0xe0(r1) +/* 80176EB4 00173E14 F3 C1 00 E8 */ psq_st f30, 232(r1), 0, qr0 +/* 80176EB8 00173E18 93 E1 00 DC */ stw r31, 0xdc(r1) +/* 80176EBC 00173E1C 93 C1 00 D8 */ stw r30, 0xd8(r1) +/* 80176EC0 00173E20 93 A1 00 D4 */ stw r29, 0xd4(r1) +/* 80176EC4 00173E24 93 81 00 D0 */ stw r28, 0xd0(r1) +/* 80176EC8 00173E28 7C 7E 1B 78 */ mr r30, r3 +/* 80176ECC 00173E2C FF E0 08 90 */ fmr f31, f1 +/* 80176ED0 00173E30 80 63 05 20 */ lwz r3, 0x520(r3) +/* 80176ED4 00173E34 FF C0 10 90 */ fmr f30, f2 +/* 80176ED8 00173E38 7C 9F 23 78 */ mr r31, r4 +/* 80176EDC 00173E3C 28 03 00 00 */ cmplwi r3, 0 +/* 80176EE0 00173E40 41 82 01 4C */ beq lbl_8017702C +/* 80176EE4 00173E44 81 83 00 00 */ lwz r12, 0(r3) +/* 80176EE8 00173E48 81 8C 00 64 */ lwz r12, 0x64(r12) +/* 80176EEC 00173E4C 7D 89 03 A6 */ mtctr r12 +/* 80176EF0 00173E50 4E 80 04 21 */ bctrl +/* 80176EF4 00173E54 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80176EF8 00173E58 41 82 01 34 */ beq lbl_8017702C +/* 80176EFC 00173E5C 80 7E 05 20 */ lwz r3, 0x520(r30) +/* 80176F00 00173E60 FC 20 F0 90 */ fmr f1, f30 +/* 80176F04 00173E64 81 83 00 00 */ lwz r12, 0(r3) +/* 80176F08 00173E68 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80176F0C 00173E6C 7D 89 03 A6 */ mtctr r12 +/* 80176F10 00173E70 4E 80 04 21 */ bctrl +/* 80176F14 00173E74 80 9E 05 20 */ lwz r4, 0x520(r30) +/* 80176F18 00173E78 38 61 00 30 */ addi r3, r1, 0x30 +/* 80176F1C 00173E7C 81 84 00 00 */ lwz r12, 0(r4) +/* 80176F20 00173E80 81 8C 00 68 */ lwz r12, 0x68(r12) +/* 80176F24 00173E84 7D 89 03 A6 */ mtctr r12 +/* 80176F28 00173E88 4E 80 04 21 */ bctrl +/* 80176F2C 00173E8C 38 61 00 80 */ addi r3, r1, 0x80 +/* 80176F30 00173E90 38 81 00 30 */ addi r4, r1, 0x30 +/* 80176F34 00173E94 4B EC 46 3D */ bl __ct__6CLightFCR6CLight +/* 80176F38 00173E98 FC 20 F8 90 */ fmr f1, f31 +/* 80176F3C 00173E9C 80 81 00 98 */ lwz r4, 0x98(r1) +/* 80176F40 00173EA0 38 60 00 00 */ li r3, 0 +/* 80176F44 00173EA4 48 1E C2 D1 */ bl Lerp__6CColorFUiUif +/* 80176F48 00173EA8 90 61 00 0C */ stw r3, 0xc(r1) +/* 80176F4C 00173EAC 38 61 00 80 */ addi r3, r1, 0x80 +/* 80176F50 00173EB0 38 81 00 0C */ addi r4, r1, 0xc +/* 80176F54 00173EB4 48 18 F4 09 */ bl SetColor__6CLightFRC6CColor +/* 80176F58 00173EB8 C0 2D A4 38 */ lfs f1, lbl_805A8FF8@sda21(r13) +/* 80176F5C 00173EBC C0 1E 03 04 */ lfs f0, 0x304(r30) +/* 80176F60 00173EC0 C3 C2 A1 C0 */ lfs f30, lbl_805ABEE0@sda21(r2) +/* 80176F64 00173EC4 EF E1 00 32 */ fmuls f31, f1, f0 +/* 80176F68 00173EC8 83 9E 04 74 */ lwz r28, 0x474(r30) +/* 80176F6C 00173ECC 48 00 00 A8 */ b lbl_80177014 +lbl_80176F70: +/* 80176F70 00173ED0 A0 1C 00 00 */ lhz r0, 0(r28) +/* 80176F74 00173ED4 7F E3 FB 78 */ mr r3, r31 +/* 80176F78 00173ED8 38 81 00 08 */ addi r4, r1, 8 +/* 80176F7C 00173EDC B0 01 00 08 */ sth r0, 8(r1) +/* 80176F80 00173EE0 4B ED 55 F5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80176F84 00173EE4 7C 64 1B 78 */ mr r4, r3 +/* 80176F88 00173EE8 38 61 00 10 */ addi r3, r1, 0x10 +/* 80176F8C 00173EEC 4B F3 6A F9 */ bl "__ct__24TCastToPtr<10CGameLight>FP7CEntity" +/* 80176F90 00173EF0 83 A3 00 04 */ lwz r29, 4(r3) +/* 80176F94 00173EF4 28 1D 00 00 */ cmplwi r29, 0 +/* 80176F98 00173EF8 41 82 00 74 */ beq lbl_8017700C +/* 80176F9C 00173EFC C0 02 A1 C0 */ lfs f0, lbl_805ABEE0@sda21(r2) +/* 80176FA0 00173F00 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 80176FA4 00173F04 38 83 66 70 */ addi r4, r3, skIdentity4f@l +/* 80176FA8 00173F08 D3 C1 00 28 */ stfs f30, 0x28(r1) +/* 80176FAC 00173F0C 38 7D 00 34 */ addi r3, r29, 0x34 +/* 80176FB0 00173F10 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80176FB4 00173F14 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 80176FB8 00173F18 48 19 BB 89 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80176FBC 00173F1C 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 80176FC0 00173F20 38 C0 00 01 */ li r6, 1 +/* 80176FC4 00173F24 50 C0 26 F6 */ rlwimi r0, r6, 4, 0x1b, 0x1b +/* 80176FC8 00173F28 38 61 00 18 */ addi r3, r1, 0x18 +/* 80176FCC 00173F2C 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 80176FD0 00173F30 38 9E 03 24 */ addi r4, r30, 0x324 +/* 80176FD4 00173F34 38 A1 00 24 */ addi r5, r1, 0x24 +/* 80176FD8 00173F38 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 80176FDC 00173F3C 50 C0 1F 38 */ rlwimi r0, r6, 3, 0x1c, 0x1c +/* 80176FE0 00173F40 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 80176FE4 00173F44 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 80176FE8 00173F48 50 C0 17 7A */ rlwimi r0, r6, 2, 0x1d, 0x1d +/* 80176FEC 00173F4C 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 80176FF0 00173F50 48 19 BA F9 */ bl __ml__12CTransform4fCFRC9CVector3f +/* 80176FF4 00173F54 7F A3 EB 78 */ mr r3, r29 +/* 80176FF8 00173F58 38 81 00 18 */ addi r4, r1, 0x18 +/* 80176FFC 00173F5C 4B ED BE 91 */ bl SetTranslation__6CActorFRC9CVector3f +/* 80177000 00173F60 7F A3 EB 78 */ mr r3, r29 +/* 80177004 00173F64 38 81 00 80 */ addi r4, r1, 0x80 +/* 80177008 00173F68 4B F3 E7 3D */ bl SetLight__10CGameLightFRC6CLight +lbl_8017700C: +/* 8017700C 00173F6C EF DE F8 2A */ fadds f30, f30, f31 +/* 80177010 00173F70 3B 9C 00 02 */ addi r28, r28, 2 +lbl_80177014: +/* 80177014 00173F74 80 1E 04 6C */ lwz r0, 0x46c(r30) +/* 80177018 00173F78 80 7E 04 74 */ lwz r3, 0x474(r30) +/* 8017701C 00173F7C 54 00 08 3C */ slwi r0, r0, 1 +/* 80177020 00173F80 7C 03 02 14 */ add r0, r3, r0 +/* 80177024 00173F84 7C 1C 00 40 */ cmplw r28, r0 +/* 80177028 00173F88 40 82 FF 48 */ bne lbl_80176F70 +lbl_8017702C: +/* 8017702C 00173F8C E3 E1 00 F8 */ psq_l f31, 248(r1), 0, qr0 +/* 80177030 00173F90 CB E1 00 F0 */ lfd f31, 0xf0(r1) +/* 80177034 00173F94 E3 C1 00 E8 */ psq_l f30, 232(r1), 0, qr0 +/* 80177038 00173F98 CB C1 00 E0 */ lfd f30, 0xe0(r1) +/* 8017703C 00173F9C 83 E1 00 DC */ lwz r31, 0xdc(r1) +/* 80177040 00173FA0 83 C1 00 D8 */ lwz r30, 0xd8(r1) +/* 80177044 00173FA4 83 A1 00 D4 */ lwz r29, 0xd4(r1) +/* 80177048 00173FA8 80 01 01 04 */ lwz r0, 0x104(r1) +/* 8017704C 00173FAC 83 81 00 D0 */ lwz r28, 0xd0(r1) +/* 80177050 00173FB0 7C 08 03 A6 */ mtlr r0 +/* 80177054 00173FB4 38 21 01 00 */ addi r1, r1, 0x100 +/* 80177058 00173FB8 4E 80 00 20 */ blr + +.global DeletePlasmaLights__17CPlasmaProjectileFR13CStateManager +DeletePlasmaLights__17CPlasmaProjectileFR13CStateManager: +/* 8017705C 00173FBC 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80177060 00173FC0 7C 08 02 A6 */ mflr r0 +/* 80177064 00173FC4 90 01 00 44 */ stw r0, 0x44(r1) +/* 80177068 00173FC8 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8017706C 00173FCC 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80177070 00173FD0 7C 9E 23 78 */ mr r30, r4 +/* 80177074 00173FD4 93 A1 00 34 */ stw r29, 0x34(r1) +/* 80177078 00173FD8 7C 7D 1B 78 */ mr r29, r3 +/* 8017707C 00173FDC 83 E3 04 74 */ lwz r31, 0x474(r3) +/* 80177080 00173FE0 48 00 00 28 */ b lbl_801770A8 +lbl_80177084: +/* 80177084 00173FE4 A0 7F 00 00 */ lhz r3, 0(r31) +/* 80177088 00173FE8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8017708C 00173FEC 7C 03 00 40 */ cmplw r3, r0 +/* 80177090 00173FF0 41 82 00 14 */ beq lbl_801770A4 +/* 80177094 00173FF4 B0 61 00 08 */ sth r3, 8(r1) +/* 80177098 00173FF8 7F C3 F3 78 */ mr r3, r30 +/* 8017709C 00173FFC 38 81 00 08 */ addi r4, r1, 8 +/* 801770A0 00174000 4B ED 51 CD */ bl FreeScriptObject__13CStateManagerF9TUniqueId +lbl_801770A4: +/* 801770A4 00174004 3B FF 00 02 */ addi r31, r31, 2 +lbl_801770A8: +/* 801770A8 00174008 80 1D 04 6C */ lwz r0, 0x46c(r29) +/* 801770AC 0017400C 80 7D 04 74 */ lwz r3, 0x474(r29) +/* 801770B0 00174010 54 00 08 3C */ slwi r0, r0, 1 +/* 801770B4 00174014 7C 03 02 14 */ add r0, r3, r0 +/* 801770B8 00174018 7C 1F 00 40 */ cmplw r31, r0 +/* 801770BC 0017401C 40 82 FF C8 */ bne lbl_80177084 +/* 801770C0 00174020 38 00 00 00 */ li r0, 0 +/* 801770C4 00174024 38 7D 04 68 */ addi r3, r29, 0x468 +/* 801770C8 00174028 90 01 00 20 */ stw r0, 0x20(r1) +/* 801770CC 0017402C 38 81 00 1C */ addi r4, r1, 0x1c +/* 801770D0 00174030 90 01 00 24 */ stw r0, 0x24(r1) +/* 801770D4 00174034 90 01 00 28 */ stw r0, 0x28(r1) +/* 801770D8 00174038 4B EE 63 D9 */ bl sub_8005d4b0 +/* 801770DC 0017403C 80 01 00 20 */ lwz r0, 0x20(r1) +/* 801770E0 00174040 80 61 00 28 */ lwz r3, 0x28(r1) +/* 801770E4 00174044 54 00 08 3C */ slwi r0, r0, 1 +/* 801770E8 00174048 7C 03 02 14 */ add r0, r3, r0 +/* 801770EC 0017404C 90 61 00 10 */ stw r3, 0x10(r1) +/* 801770F0 00174050 7C 64 1B 78 */ mr r4, r3 +/* 801770F4 00174054 90 01 00 18 */ stw r0, 0x18(r1) +/* 801770F8 00174058 90 01 00 14 */ stw r0, 0x14(r1) +/* 801770FC 0017405C 90 61 00 0C */ stw r3, 0xc(r1) +/* 80177100 00174060 48 00 00 08 */ b lbl_80177108 +lbl_80177104: +/* 80177104 00174064 38 84 00 02 */ addi r4, r4, 2 +lbl_80177108: +/* 80177108 00174068 7C 04 00 40 */ cmplw r4, r0 +/* 8017710C 0017406C 40 82 FF F8 */ bne lbl_80177104 +/* 80177110 00174070 28 03 00 00 */ cmplwi r3, 0 +/* 80177114 00174074 41 82 00 08 */ beq lbl_8017711C +/* 80177118 00174078 48 19 E8 19 */ bl Free__7CMemoryFPCv +lbl_8017711C: +/* 8017711C 0017407C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80177120 00174080 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80177124 00174084 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80177128 00174088 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 8017712C 0017408C 7C 08 03 A6 */ mtlr r0 +/* 80177130 00174090 38 21 00 40 */ addi r1, r1, 0x40 +/* 80177134 00174094 4E 80 00 20 */ blr + +.global CreatePlasmaLights__17CPlasmaProjectileFUiRC6CLightR13CStateManager +CreatePlasmaLights__17CPlasmaProjectileFUiRC6CLightR13CStateManager: +/* 80177138 00174098 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 8017713C 0017409C 7C 08 02 A6 */ mflr r0 +/* 80177140 001740A0 90 01 00 64 */ stw r0, 0x64(r1) +/* 80177144 001740A4 BF 01 00 40 */ stmw r24, 0x40(r1) +/* 80177148 001740A8 7C DD 33 78 */ mr r29, r6 +/* 8017714C 001740AC 7C 9B 23 78 */ mr r27, r4 +/* 80177150 001740B0 7C 7A 1B 78 */ mr r26, r3 +/* 80177154 001740B4 7C BC 2B 78 */ mr r28, r5 +/* 80177158 001740B8 7F A4 EB 78 */ mr r4, r29 +/* 8017715C 001740BC 4B FF FF 01 */ bl DeletePlasmaLights__17CPlasmaProjectileFR13CStateManager +/* 80177160 001740C0 38 7A 04 68 */ addi r3, r26, 0x468 +/* 80177164 001740C4 38 80 00 03 */ li r4, 3 +/* 80177168 001740C8 4B E9 52 A1 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +/* 8017716C 001740CC 3C 60 80 3D */ lis r3, lbl_803D0668@ha +/* 80177170 001740D0 3B C0 00 00 */ li r30, 0 +/* 80177174 001740D4 3B E3 06 68 */ addi r31, r3, lbl_803D0668@l +lbl_80177178: +/* 80177178 001740D8 38 00 00 00 */ li r0, 0 +/* 8017717C 001740DC 38 6D A9 18 */ addi r3, r13, "_EmptyString__Q24rstl66basic_string,Q24rstl17rmemory_allocator>"@sda21 +/* 80177180 001740E0 90 61 00 2C */ stw r3, 0x2c(r1) +/* 80177184 001740E4 7F A4 EB 78 */ mr r4, r29 +/* 80177188 001740E8 38 61 00 1C */ addi r3, r1, 0x1c +/* 8017718C 001740EC 90 01 00 30 */ stw r0, 0x30(r1) +/* 80177190 001740F0 90 01 00 34 */ stw r0, 0x34(r1) +/* 80177194 001740F4 4B ED 5F 49 */ bl AllocateUniqueId__13CStateManagerFv +/* 80177198 001740F8 A0 01 00 1C */ lhz r0, 0x1c(r1) +/* 8017719C 001740FC 7F E4 FB 78 */ mr r4, r31 +/* 801771A0 00174100 38 60 01 48 */ li r3, 0x148 +/* 801771A4 00174104 38 A0 00 00 */ li r5, 0 +/* 801771A8 00174108 B0 01 00 20 */ sth r0, 0x20(r1) +/* 801771AC 0017410C 48 19 E6 C1 */ bl __nw__FUlPCcPCc +/* 801771B0 00174110 7C 79 1B 79 */ or. r25, r3, r3 +/* 801771B4 00174114 41 82 00 6C */ beq lbl_80177220 +/* 801771B8 00174118 A0 BA 00 08 */ lhz r5, 8(r26) +/* 801771BC 0017411C 7F 44 D3 78 */ mr r4, r26 +/* 801771C0 00174120 38 61 00 24 */ addi r3, r1, 0x24 +/* 801771C4 00174124 B0 A1 00 18 */ sth r5, 0x18(r1) +/* 801771C8 00174128 88 1A 00 30 */ lbz r0, 0x30(r26) +/* 801771CC 0017412C B0 A1 00 14 */ sth r5, 0x14(r1) +/* 801771D0 00174130 54 18 CF FE */ rlwinm r24, r0, 0x19, 0x1f, 0x1f +/* 801771D4 00174134 4B ED 9E B1 */ bl GetAreaId__7CEntityCFv +/* 801771D8 00174138 80 A1 00 24 */ lwz r5, 0x24(r1) +/* 801771DC 0017413C 38 00 00 00 */ li r0, 0 +/* 801771E0 00174140 A0 81 00 20 */ lhz r4, 0x20(r1) +/* 801771E4 00174144 7F 23 CB 78 */ mr r3, r25 +/* 801771E8 00174148 90 A1 00 28 */ stw r5, 0x28(r1) +/* 801771EC 0017414C 7F 06 C3 78 */ mr r6, r24 +/* 801771F0 00174150 C0 22 A1 C0 */ lfs f1, lbl_805ABEE0@sda21(r2) +/* 801771F4 00174154 7F 8A E3 78 */ mr r10, r28 +/* 801771F8 00174158 B0 81 00 10 */ sth r4, 0x10(r1) +/* 801771FC 0017415C 38 81 00 10 */ addi r4, r1, 0x10 +/* 80177200 00174160 38 A1 00 28 */ addi r5, r1, 0x28 +/* 80177204 00174164 38 E1 00 2C */ addi r7, r1, 0x2c +/* 80177208 00174168 93 61 00 08 */ stw r27, 8(r1) +/* 8017720C 0017416C 39 1A 00 34 */ addi r8, r26, 0x34 +/* 80177210 00174170 39 21 00 18 */ addi r9, r1, 0x18 +/* 80177214 00174174 90 01 00 0C */ stw r0, 0xc(r1) +/* 80177218 00174178 4B F3 E6 0D */ bl "__ct__10CGameLightF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC12CTransform4f9TUniqueIdRC6CLightUiUif" +/* 8017721C 0017417C 7C 79 1B 78 */ mr r25, r3 +lbl_80177220: +/* 80177220 00174180 7F A3 EB 78 */ mr r3, r29 +/* 80177224 00174184 7F 24 CB 78 */ mr r4, r25 +/* 80177228 00174188 4B ED 5A CD */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 8017722C 0017418C 80 1A 04 6C */ lwz r0, 0x46c(r26) +/* 80177230 00174190 80 BA 04 70 */ lwz r5, 0x470(r26) +/* 80177234 00174194 7C 00 28 00 */ cmpw r0, r5 +/* 80177238 00174198 41 80 00 1C */ blt lbl_80177254 +/* 8017723C 0017419C 2C 05 00 00 */ cmpwi r5, 0 +/* 80177240 001741A0 38 7A 04 68 */ addi r3, r26, 0x468 +/* 80177244 001741A4 38 80 00 04 */ li r4, 4 +/* 80177248 001741A8 41 82 00 08 */ beq lbl_80177250 +/* 8017724C 001741AC 54 A4 08 3C */ slwi r4, r5, 1 +lbl_80177250: +/* 80177250 001741B0 4B E9 51 B9 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +lbl_80177254: +/* 80177254 001741B4 80 1A 04 6C */ lwz r0, 0x46c(r26) +/* 80177258 001741B8 80 7A 04 74 */ lwz r3, 0x474(r26) +/* 8017725C 001741BC 54 00 08 3C */ slwi r0, r0, 1 +/* 80177260 001741C0 7C 63 02 15 */ add. r3, r3, r0 +/* 80177264 001741C4 41 82 00 0C */ beq lbl_80177270 +/* 80177268 001741C8 A0 01 00 20 */ lhz r0, 0x20(r1) +/* 8017726C 001741CC B0 03 00 00 */ sth r0, 0(r3) +lbl_80177270: +/* 80177270 001741D0 80 9A 04 6C */ lwz r4, 0x46c(r26) +/* 80177274 001741D4 38 61 00 2C */ addi r3, r1, 0x2c +/* 80177278 001741D8 38 04 00 01 */ addi r0, r4, 1 +/* 8017727C 001741DC 90 1A 04 6C */ stw r0, 0x46c(r26) +/* 80177280 001741E0 48 1C 68 61 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80177284 001741E4 3B DE 00 01 */ addi r30, r30, 1 +/* 80177288 001741E8 2C 1E 00 03 */ cmpwi r30, 3 +/* 8017728C 001741EC 41 80 FE EC */ blt lbl_80177178 +/* 80177290 001741F0 BB 01 00 40 */ lmw r24, 0x40(r1) +/* 80177294 001741F4 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80177298 001741F8 7C 08 03 A6 */ mtlr r0 +/* 8017729C 001741FC 38 21 00 60 */ addi r1, r1, 0x60 +/* 801772A0 00174200 4E 80 00 20 */ blr + +.global SetLightsActive__17CPlasmaProjectileFbR13CStateManager +SetLightsActive__17CPlasmaProjectileFbR13CStateManager: +/* 801772A4 00174204 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 801772A8 00174208 7C 08 02 A6 */ mflr r0 +/* 801772AC 0017420C 90 01 00 34 */ stw r0, 0x34(r1) +/* 801772B0 00174210 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 801772B4 00174214 93 C1 00 28 */ stw r30, 0x28(r1) +/* 801772B8 00174218 54 9E 06 3E */ clrlwi r30, r4, 0x18 +/* 801772BC 0017421C 93 A1 00 24 */ stw r29, 0x24(r1) +/* 801772C0 00174220 7C BD 2B 78 */ mr r29, r5 +/* 801772C4 00174224 93 81 00 20 */ stw r28, 0x20(r1) +/* 801772C8 00174228 7C 7C 1B 78 */ mr r28, r3 +/* 801772CC 0017422C 83 E3 04 74 */ lwz r31, 0x474(r3) +/* 801772D0 00174230 48 00 00 54 */ b lbl_80177324 +lbl_801772D4: +/* 801772D4 00174234 A0 7F 00 00 */ lhz r3, 0(r31) +/* 801772D8 00174238 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 801772DC 0017423C 7C 03 00 40 */ cmplw r3, r0 +/* 801772E0 00174240 41 82 00 40 */ beq lbl_80177320 +/* 801772E4 00174244 B0 61 00 08 */ sth r3, 8(r1) +/* 801772E8 00174248 7F A3 EB 78 */ mr r3, r29 +/* 801772EC 0017424C 38 81 00 08 */ addi r4, r1, 8 +/* 801772F0 00174250 4B ED 52 85 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 801772F4 00174254 7C 64 1B 78 */ mr r4, r3 +/* 801772F8 00174258 38 61 00 0C */ addi r3, r1, 0xc +/* 801772FC 0017425C 4B F3 67 89 */ bl "__ct__24TCastToPtr<10CGameLight>FP7CEntity" +/* 80177300 00174260 80 63 00 04 */ lwz r3, 4(r3) +/* 80177304 00174264 28 03 00 00 */ cmplwi r3, 0 +/* 80177308 00174268 41 82 00 18 */ beq lbl_80177320 +/* 8017730C 0017426C 81 83 00 00 */ lwz r12, 0(r3) +/* 80177310 00174270 7F C4 F3 78 */ mr r4, r30 +/* 80177314 00174274 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80177318 00174278 7D 89 03 A6 */ mtctr r12 +/* 8017731C 0017427C 4E 80 04 21 */ bctrl +lbl_80177320: +/* 80177320 00174280 3B FF 00 02 */ addi r31, r31, 2 +lbl_80177324: +/* 80177324 00174284 80 1C 04 6C */ lwz r0, 0x46c(r28) +/* 80177328 00174288 80 7C 04 74 */ lwz r3, 0x474(r28) +/* 8017732C 0017428C 54 00 08 3C */ slwi r0, r0, 1 +/* 80177330 00174290 7C 03 02 14 */ add r0, r3, r0 +/* 80177334 00174294 7C 1F 00 40 */ cmplw r31, r0 +/* 80177338 00174298 40 82 FF 9C */ bne lbl_801772D4 +/* 8017733C 0017429C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80177340 001742A0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80177344 001742A4 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80177348 001742A8 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8017734C 001742AC 83 81 00 20 */ lwz r28, 0x20(r1) +/* 80177350 001742B0 7C 08 03 A6 */ mtlr r0 +/* 80177354 001742B4 38 21 00 30 */ addi r1, r1, 0x30 +/* 80177358 001742B8 4E 80 00 20 */ blr + +.global AcceptScriptMsg__17CPlasmaProjectileF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__17CPlasmaProjectileF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8017735C 001742BC 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 80177360 001742C0 7C 08 02 A6 */ mflr r0 +/* 80177364 001742C4 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 80177368 001742C8 BF 41 00 88 */ stmw r26, 0x88(r1) +/* 8017736C 001742CC 7C 9D 23 78 */ mr r29, r4 +/* 80177370 001742D0 2C 1D 00 22 */ cmpwi r29, 0x22 +/* 80177374 001742D4 7C 7C 1B 78 */ mr r28, r3 +/* 80177378 001742D8 7C BE 2B 78 */ mr r30, r5 +/* 8017737C 001742DC 7C DF 33 78 */ mr r31, r6 +/* 80177380 001742E0 41 82 01 90 */ beq lbl_80177510 +/* 80177384 001742E4 40 80 01 D8 */ bge lbl_8017755C +/* 80177388 001742E8 2C 1D 00 21 */ cmpwi r29, 0x21 +/* 8017738C 001742EC 40 80 00 08 */ bge lbl_80177394 +/* 80177390 001742F0 48 00 01 CC */ b lbl_8017755C +lbl_80177394: +/* 80177394 001742F4 88 1C 00 E6 */ lbz r0, 0xe6(r28) +/* 80177398 001742F8 38 60 00 02 */ li r3, 2 +/* 8017739C 001742FC 50 60 1E F8 */ rlwimi r0, r3, 3, 0x1b, 0x1c +/* 801773A0 00174300 38 61 00 2C */ addi r3, r1, 0x2c +/* 801773A4 00174304 98 1C 00 E6 */ stb r0, 0xe6(r28) +/* 801773A8 00174308 38 9C 01 70 */ addi r4, r28, 0x170 +/* 801773AC 0017430C 4B EC 11 D5 */ bl GetWeaponDescription__17CProjectileWeaponCFv +/* 801773B0 00174310 80 61 00 34 */ lwz r3, 0x34(r1) +/* 801773B4 00174314 88 03 00 40 */ lbz r0, 0x40(r3) +/* 801773B8 00174318 28 00 00 00 */ cmplwi r0, 0 +/* 801773BC 0017431C 41 82 00 88 */ beq lbl_80177444 +/* 801773C0 00174320 3C 60 80 3D */ lis r3, lbl_803D0668@ha +/* 801773C4 00174324 3B 40 00 00 */ li r26, 0 +/* 801773C8 00174328 38 83 06 68 */ addi r4, r3, lbl_803D0668@l +/* 801773CC 0017432C 38 A0 00 00 */ li r5, 0 +/* 801773D0 00174330 38 60 03 40 */ li r3, 0x340 +/* 801773D4 00174334 48 19 E4 99 */ bl __nw__FUlPCcPCc +/* 801773D8 00174338 7C 7B 1B 79 */ or. r27, r3, r3 +/* 801773DC 0017433C 41 82 00 30 */ beq lbl_8017740C +/* 801773E0 00174340 80 81 00 34 */ lwz r4, 0x34(r1) +/* 801773E4 00174344 38 61 00 24 */ addi r3, r1, 0x24 +/* 801773E8 00174348 38 84 00 34 */ addi r4, r4, 0x34 +/* 801773EC 0017434C 48 1C 9A BD */ bl __ct__6CTokenFRC6CToken +/* 801773F0 00174350 7F 63 DB 78 */ mr r3, r27 +/* 801773F4 00174354 38 81 00 24 */ addi r4, r1, 0x24 +/* 801773F8 00174358 3B 40 00 01 */ li r26, 1 +/* 801773FC 0017435C 38 A0 00 00 */ li r5, 0 +/* 80177400 00174360 38 C0 00 01 */ li r6, 1 +/* 80177404 00174364 48 1A 7F DD */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 80177408 00174368 7C 7B 1B 78 */ mr r27, r3 +lbl_8017740C: +/* 8017740C 0017436C 80 7C 05 20 */ lwz r3, 0x520(r28) +/* 80177410 00174370 28 03 00 00 */ cmplwi r3, 0 +/* 80177414 00174374 41 82 00 18 */ beq lbl_8017742C +/* 80177418 00174378 81 83 00 00 */ lwz r12, 0(r3) +/* 8017741C 0017437C 38 80 00 01 */ li r4, 1 +/* 80177420 00174380 81 8C 00 08 */ lwz r12, 8(r12) +/* 80177424 00174384 7D 89 03 A6 */ mtctr r12 +/* 80177428 00174388 4E 80 04 21 */ bctrl +lbl_8017742C: +/* 8017742C 0017438C 7F 40 07 75 */ extsb. r0, r26 +/* 80177430 00174390 93 7C 05 20 */ stw r27, 0x520(r28) +/* 80177434 00174394 41 82 00 10 */ beq lbl_80177444 +/* 80177438 00174398 38 61 00 24 */ addi r3, r1, 0x24 +/* 8017743C 0017439C 38 80 00 00 */ li r4, 0 +/* 80177440 001743A0 48 1C 9A 01 */ bl __dt__6CTokenFv +lbl_80177444: +/* 80177444 001743A4 80 7C 05 20 */ lwz r3, 0x520(r28) +/* 80177448 001743A8 28 03 00 00 */ cmplwi r3, 0 +/* 8017744C 001743AC 41 82 00 54 */ beq lbl_801774A0 +/* 80177450 001743B0 81 83 00 00 */ lwz r12, 0(r3) +/* 80177454 001743B4 81 8C 00 64 */ lwz r12, 0x64(r12) +/* 80177458 001743B8 7D 89 03 A6 */ mtctr r12 +/* 8017745C 001743BC 4E 80 04 21 */ bctrl +/* 80177460 001743C0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80177464 001743C4 41 82 00 3C */ beq lbl_801774A0 +/* 80177468 001743C8 80 9C 05 20 */ lwz r4, 0x520(r28) +/* 8017746C 001743CC 38 61 00 38 */ addi r3, r1, 0x38 +/* 80177470 001743D0 80 A1 00 2C */ lwz r5, 0x2c(r1) +/* 80177474 001743D4 81 84 00 00 */ lwz r12, 0(r4) +/* 80177478 001743D8 83 65 00 08 */ lwz r27, 8(r5) +/* 8017747C 001743DC 81 8C 00 68 */ lwz r12, 0x68(r12) +/* 80177480 001743E0 7D 89 03 A6 */ mtctr r12 +/* 80177484 001743E4 4E 80 04 21 */ bctrl +/* 80177488 001743E8 7F 83 E3 78 */ mr r3, r28 +/* 8017748C 001743EC 7F 64 DB 78 */ mr r4, r27 +/* 80177490 001743F0 7F E6 FB 78 */ mr r6, r31 +/* 80177494 001743F4 38 A1 00 38 */ addi r5, r1, 0x38 +/* 80177498 001743F8 4B FF FC A1 */ bl CreatePlasmaLights__17CPlasmaProjectileFUiRC6CLightR13CStateManager +/* 8017749C 001743FC 48 00 00 2C */ b lbl_801774C8 +lbl_801774A0: +/* 801774A0 00174400 80 7C 05 20 */ lwz r3, 0x520(r28) +/* 801774A4 00174404 28 03 00 00 */ cmplwi r3, 0 +/* 801774A8 00174408 41 82 00 18 */ beq lbl_801774C0 +/* 801774AC 0017440C 81 83 00 00 */ lwz r12, 0(r3) +/* 801774B0 00174410 38 80 00 01 */ li r4, 1 +/* 801774B4 00174414 81 8C 00 08 */ lwz r12, 8(r12) +/* 801774B8 00174418 7D 89 03 A6 */ mtctr r12 +/* 801774BC 0017441C 4E 80 04 21 */ bctrl +lbl_801774C0: +/* 801774C0 00174420 38 00 00 00 */ li r0, 0 +/* 801774C4 00174424 90 1C 05 20 */ stw r0, 0x520(r28) +lbl_801774C8: +/* 801774C8 00174428 88 1C 05 48 */ lbz r0, 0x548(r28) +/* 801774CC 0017442C 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 801774D0 00174430 41 82 00 14 */ beq lbl_801774E4 +/* 801774D4 00174434 A0 1C 00 EC */ lhz r0, 0xec(r28) +/* 801774D8 00174438 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801774DC 0017443C B0 01 00 20 */ sth r0, 0x20(r1) +/* 801774E0 00174440 B0 1C 00 C6 */ sth r0, 0xc6(r28) +lbl_801774E4: +/* 801774E4 00174444 A0 1C 00 EC */ lhz r0, 0xec(r28) +/* 801774E8 00174448 7F E3 FB 78 */ mr r3, r31 +/* 801774EC 0017444C 80 BC 00 F0 */ lwz r5, 0xf0(r28) +/* 801774F0 00174450 38 81 00 18 */ addi r4, r1, 0x18 +/* 801774F4 00174454 B0 01 00 14 */ sth r0, 0x14(r1) +/* 801774F8 00174458 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801774FC 0017445C 4B EC D8 0D */ bl AddWeaponId__13CStateManagerF9TUniqueId11EWeaponType +/* 80177500 00174460 38 61 00 2C */ addi r3, r1, 0x2c +/* 80177504 00174464 38 80 00 00 */ li r4, 0 +/* 80177508 00174468 48 1C 99 39 */ bl __dt__6CTokenFv +/* 8017750C 0017446C 48 00 00 50 */ b lbl_8017755C +lbl_80177510: +/* 80177510 00174470 A0 1C 00 EC */ lhz r0, 0xec(r28) +/* 80177514 00174474 7F E3 FB 78 */ mr r3, r31 +/* 80177518 00174478 80 BC 00 F0 */ lwz r5, 0xf0(r28) +/* 8017751C 0017447C 38 81 00 10 */ addi r4, r1, 0x10 +/* 80177520 00174480 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80177524 00174484 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80177528 00174488 4B EC D7 B1 */ bl RemoveWeaponId__13CStateManagerF9TUniqueId11EWeaponType +/* 8017752C 0017448C 7F 83 E3 78 */ mr r3, r28 +/* 80177530 00174490 7F E4 FB 78 */ mr r4, r31 +/* 80177534 00174494 4B FF FB 29 */ bl DeletePlasmaLights__17CPlasmaProjectileFR13CStateManager +/* 80177538 00174498 88 1C 05 48 */ lbz r0, 0x548(r28) +/* 8017753C 0017449C 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 80177540 001744A0 41 82 00 1C */ beq lbl_8017755C +/* 80177544 001744A4 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 80177548 001744A8 4B E9 A3 FD */ bl DecrementPhazon__7CPlayerFv +/* 8017754C 001744AC 88 1C 05 48 */ lbz r0, 0x548(r28) +/* 80177550 001744B0 38 60 00 00 */ li r3, 0 +/* 80177554 001744B4 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 80177558 001744B8 98 1C 05 48 */ stb r0, 0x548(r28) +lbl_8017755C: +/* 8017755C 001744BC A0 1E 00 00 */ lhz r0, 0(r30) +/* 80177560 001744C0 7F 83 E3 78 */ mr r3, r28 +/* 80177564 001744C4 7F A4 EB 78 */ mr r4, r29 +/* 80177568 001744C8 7F E6 FB 78 */ mr r6, r31 +/* 8017756C 001744CC B0 01 00 08 */ sth r0, 8(r1) +/* 80177570 001744D0 38 A1 00 08 */ addi r5, r1, 8 +/* 80177574 001744D4 4B EC 10 59 */ bl AcceptScriptMsg__15CGameProjectileF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 80177578 001744D8 BB 41 00 88 */ lmw r26, 0x88(r1) +/* 8017757C 001744DC 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 80177580 001744E0 7C 08 03 A6 */ mtlr r0 +/* 80177584 001744E4 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 80177588 001744E8 4E 80 00 20 */ blr + +.global RenderMotionBlur__17CPlasmaProjectileCFv +RenderMotionBlur__17CPlasmaProjectileCFv: +/* 8017758C 001744EC 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 80177590 001744F0 7C 08 02 A6 */ mflr r0 +/* 80177594 001744F4 90 01 00 84 */ stw r0, 0x84(r1) +/* 80177598 001744F8 DB E1 00 70 */ stfd f31, 0x70(r1) +/* 8017759C 001744FC F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 801775A0 00174500 DB C1 00 60 */ stfd f30, 0x60(r1) +/* 801775A4 00174504 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 +/* 801775A8 00174508 DB A1 00 50 */ stfd f29, 0x50(r1) +/* 801775AC 0017450C F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 +/* 801775B0 00174510 DB 81 00 40 */ stfd f28, 0x40(r1) +/* 801775B4 00174514 F3 81 00 48 */ psq_st f28, 72(r1), 0, qr0 +/* 801775B8 00174518 DB 61 00 30 */ stfd f27, 0x30(r1) +/* 801775BC 0017451C F3 61 00 38 */ psq_st f27, 56(r1), 0, qr0 +/* 801775C0 00174520 BF 41 00 18 */ stmw r26, 0x18(r1) +/* 801775C4 00174524 7C 7A 1B 78 */ mr r26, r3 +/* 801775C8 00174528 38 60 00 00 */ li r3, 0 +/* 801775CC 0017452C 48 19 44 A5 */ bl SetCullMode__9CGraphicsF12ERglCullMode +/* 801775D0 00174530 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801775D4 00174534 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 801775D8 00174538 38 84 66 70 */ addi r4, r4, skIdentity4f@l +/* 801775DC 0017453C 81 83 00 00 */ lwz r12, 0(r3) +/* 801775E0 00174540 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 801775E4 00174544 7D 89 03 A6 */ mtctr r12 +/* 801775E8 00174548 4E 80 04 21 */ bctrl +/* 801775EC 0017454C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801775F0 00174550 81 83 00 00 */ lwz r12, 0(r3) +/* 801775F4 00174554 81 8C 00 68 */ lwz r12, 0x68(r12) +/* 801775F8 00174558 7D 89 03 A6 */ mtctr r12 +/* 801775FC 0017455C 4E 80 04 21 */ bctrl +/* 80177600 00174560 C0 22 A1 C4 */ lfs f1, lbl_805ABEE4@sda21(r2) +/* 80177604 00174564 C0 1A 04 C4 */ lfs f0, 0x4c4(r26) +/* 80177608 00174568 80 1A 04 94 */ lwz r0, 0x494(r26) +/* 8017760C 0017456C EF C1 00 32 */ fmuls f30, f1, f0 +/* 80177610 00174570 C3 BA 03 30 */ lfs f29, 0x330(r26) +/* 80177614 00174574 90 01 00 0C */ stw r0, 0xc(r1) +/* 80177618 00174578 C3 9A 03 40 */ lfs f28, 0x340(r26) +/* 8017761C 0017457C C3 7A 03 50 */ lfs f27, 0x350(r26) +/* 80177620 00174580 F3 C1 A0 08 */ psq_st f30, 8(r1), 1, qr2 +/* 80177624 00174584 3C 60 80 3D */ lis r3, lbl_803D0650@ha +/* 80177628 00174588 38 63 06 50 */ addi r3, r3, lbl_803D0650@l +/* 8017762C 0017458C 88 01 00 08 */ lbz r0, 8(r1) +/* 80177630 00174590 98 01 00 0F */ stb r0, 0xf(r1) +/* 80177634 00174594 80 01 00 0C */ lwz r0, 0xc(r1) +/* 80177638 00174598 54 1C 00 2E */ rlwinm r28, r0, 0, 0, 0x17 +/* 8017763C 0017459C 63 9B 00 3F */ ori r27, r28, 0x3f +/* 80177640 001745A0 48 19 07 E9 */ bl SetVtxDescv__3CGXFPC14_GXVtxDescList +/* 80177644 001745A4 38 60 00 01 */ li r3, 1 +/* 80177648 001745A8 48 19 18 09 */ bl SetNumChans__3CGXFUc +/* 8017764C 001745AC 38 60 00 01 */ li r3, 1 +/* 80177650 001745B0 48 19 16 41 */ bl SetNumTevStages__3CGXFUc +/* 80177654 001745B4 38 60 00 00 */ li r3, 0 +/* 80177658 001745B8 38 80 00 00 */ li r4, 0 +/* 8017765C 001745BC 38 A0 00 00 */ li r5, 0 +/* 80177660 001745C0 38 C0 00 01 */ li r6, 1 +/* 80177664 001745C4 38 E0 00 00 */ li r7, 0 +/* 80177668 001745C8 39 00 00 00 */ li r8, 0 +/* 8017766C 001745CC 39 20 00 02 */ li r9, 2 +/* 80177670 001745D0 48 19 16 5D */ bl SetChanCtrl__3CGXFQ23CGX10EChannelIdUc11_GXColorSrc11_GXColorSrc10_GXLightID12_GXDiffuseFn9_GXAttnFn +/* 80177674 001745D4 38 60 00 00 */ li r3, 0 +/* 80177678 001745D8 48 19 17 9D */ bl SetNumTexGens__3CGXFUc +/* 8017767C 001745DC 38 60 00 00 */ li r3, 0 +/* 80177680 001745E0 38 80 00 FF */ li r4, 0xff +/* 80177684 001745E4 38 A0 00 FF */ li r5, 0xff +/* 80177688 001745E8 38 C0 00 04 */ li r6, 4 +/* 8017768C 001745EC 48 19 12 C1 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 80177690 001745F0 80 8D 9C 68 */ lwz r4, lbl_805A8828@sda21(r13) +/* 80177694 001745F4 38 60 00 00 */ li r3, 0 +/* 80177698 001745F8 48 19 2C 21 */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass +/* 8017769C 001745FC 80 8D 9C 68 */ lwz r4, lbl_805A8828@sda21(r13) +/* 801776A0 00174600 38 60 00 01 */ li r3, 1 +/* 801776A4 00174604 48 19 2C 15 */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass +/* 801776A8 00174608 38 60 00 98 */ li r3, 0x98 +/* 801776AC 0017460C 38 80 00 00 */ li r4, 0 +/* 801776B0 00174610 38 A0 00 10 */ li r5, 0x10 +/* 801776B4 00174614 48 19 0E D1 */ bl Begin__3CGXF12_GXPrimitive9_GXVtxFmtUs +/* 801776B8 00174618 C3 C2 A1 C8 */ lfs f30, lbl_805ABEE8@sda21(r2) +/* 801776BC 0017461C 3B BA 04 04 */ addi r29, r26, 0x404 +/* 801776C0 00174620 CB E2 A1 D0 */ lfd f31, lbl_805ABEF0@sda21(r2) +/* 801776C4 00174624 3B 40 00 00 */ li r26, 0 +/* 801776C8 00174628 3F C0 43 30 */ lis r30, 0x4330 +/* 801776CC 0017462C 3F E0 CC 01 */ lis r31, 0xcc01 +lbl_801776D0: +/* 801776D0 00174630 6F 40 80 00 */ xoris r0, r26, 0x8000 +/* 801776D4 00174634 93 C1 00 10 */ stw r30, 0x10(r1) +/* 801776D8 00174638 7F 63 DB 78 */ mr r3, r27 +/* 801776DC 0017463C 7F 84 E3 78 */ mr r4, r28 +/* 801776E0 00174640 90 01 00 14 */ stw r0, 0x14(r1) +/* 801776E4 00174644 C8 01 00 10 */ lfd f0, 0x10(r1) +/* 801776E8 00174648 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 801776EC 0017464C EC 3E 00 32 */ fmuls f1, f30, f0 +/* 801776F0 00174650 48 1E BB 25 */ bl Lerp__6CColorFUiUif +/* 801776F4 00174654 D3 BF 80 00 */ stfs f29, 0xCC008000@l(r31) +/* 801776F8 00174658 3B 5A 00 01 */ addi r26, r26, 1 +/* 801776FC 0017465C 2C 1A 00 08 */ cmpwi r26, 8 +/* 80177700 00174660 D3 9F 80 00 */ stfs f28, 0xCC008000@l(r31) +/* 80177704 00174664 D3 7F 80 00 */ stfs f27, 0xCC008000@l(r31) +/* 80177708 00174668 90 7F 80 00 */ stw r3, 0xCC008000@l(r31) +/* 8017770C 0017466C C0 5D 00 08 */ lfs f2, 8(r29) +/* 80177710 00174670 C0 3D 00 04 */ lfs f1, 4(r29) +/* 80177714 00174674 C0 1D 00 00 */ lfs f0, 0(r29) +/* 80177718 00174678 3B BD 00 0C */ addi r29, r29, 0xc +/* 8017771C 0017467C D0 1F 80 00 */ stfs f0, 0xCC008000@l(r31) +/* 80177720 00174680 D0 3F 80 00 */ stfs f1, 0xCC008000@l(r31) +/* 80177724 00174684 D0 5F 80 00 */ stfs f2, 0xCC008000@l(r31) +/* 80177728 00174688 90 7F 80 00 */ stw r3, 0xCC008000@l(r31) +/* 8017772C 0017468C 41 80 FF A4 */ blt lbl_801776D0 +/* 80177730 00174690 48 19 0E 51 */ bl End__3CGXFv +/* 80177734 00174694 38 60 00 01 */ li r3, 1 +/* 80177738 00174698 48 19 43 39 */ bl SetCullMode__9CGraphicsF12ERglCullMode +/* 8017773C 0017469C E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 80177740 001746A0 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 80177744 001746A4 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 +/* 80177748 001746A8 CB C1 00 60 */ lfd f30, 0x60(r1) +/* 8017774C 001746AC E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0 +/* 80177750 001746B0 CB A1 00 50 */ lfd f29, 0x50(r1) +/* 80177754 001746B4 E3 81 00 48 */ psq_l f28, 72(r1), 0, qr0 +/* 80177758 001746B8 CB 81 00 40 */ lfd f28, 0x40(r1) +/* 8017775C 001746BC E3 61 00 38 */ psq_l f27, 56(r1), 0, qr0 +/* 80177760 001746C0 CB 61 00 30 */ lfd f27, 0x30(r1) +/* 80177764 001746C4 BB 41 00 18 */ lmw r26, 0x18(r1) +/* 80177768 001746C8 80 01 00 84 */ lwz r0, 0x84(r1) +/* 8017776C 001746CC 7C 08 03 A6 */ mtlr r0 +/* 80177770 001746D0 38 21 00 80 */ addi r1, r1, 0x80 +/* 80177774 001746D4 4E 80 00 20 */ blr + +.global UpdateEnergyPulse__17CPlasmaProjectileFf +UpdateEnergyPulse__17CPlasmaProjectileFf: +/* 80177778 001746D8 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8017777C 001746DC 7C 08 02 A6 */ mflr r0 +/* 80177780 001746E0 90 01 00 74 */ stw r0, 0x74(r1) +/* 80177784 001746E4 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 80177788 001746E8 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 8017778C 001746EC DB C1 00 50 */ stfd f30, 0x50(r1) +/* 80177790 001746F0 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 +/* 80177794 001746F4 DB A1 00 40 */ stfd f29, 0x40(r1) +/* 80177798 001746F8 F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 +/* 8017779C 001746FC DB 81 00 30 */ stfd f28, 0x30(r1) +/* 801777A0 00174700 F3 81 00 38 */ psq_st f28, 56(r1), 0, qr0 +/* 801777A4 00174704 DB 61 00 20 */ stfd f27, 0x20(r1) +/* 801777A8 00174708 F3 61 00 28 */ psq_st f27, 40(r1), 0, qr0 +/* 801777AC 0017470C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 801777B0 00174710 7C 7F 1B 78 */ mr r31, r3 +/* 801777B4 00174714 FF 60 08 90 */ fmr f27, f1 +/* 801777B8 00174718 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 801777BC 0017471C 2C 00 00 00 */ cmpwi r0, 0 +/* 801777C0 00174720 41 82 00 10 */ beq lbl_801777D0 +/* 801777C4 00174724 88 1F 05 48 */ lbz r0, 0x548(r31) +/* 801777C8 00174728 54 00 D7 FE */ rlwinm r0, r0, 0x1a, 0x1f, 0x1f +/* 801777CC 0017472C 48 00 00 08 */ b lbl_801777D4 +lbl_801777D0: +/* 801777D0 00174730 38 00 00 00 */ li r0, 0 +lbl_801777D4: +/* 801777D4 00174734 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 801777D8 00174738 41 82 00 E0 */ beq lbl_801778B8 +/* 801777DC 0017473C C0 3F 04 D8 */ lfs f1, 0x4d8(r31) +/* 801777E0 00174740 C0 02 A1 C0 */ lfs f0, lbl_805ABEE0@sda21(r2) +/* 801777E4 00174744 EC 21 D8 28 */ fsubs f1, f1, f27 +/* 801777E8 00174748 D0 3F 04 D8 */ stfs f1, 0x4d8(r31) +/* 801777EC 0017474C C0 3F 04 D8 */ lfs f1, 0x4d8(r31) +/* 801777F0 00174750 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801777F4 00174754 4C 40 13 82 */ cror 2, 0, 2 +/* 801777F8 00174758 40 82 00 C0 */ bne lbl_801778B8 +/* 801777FC 0017475C C0 02 A1 D8 */ lfs f0, lbl_805ABEF8@sda21(r2) +/* 80177800 00174760 38 80 00 01 */ li r4, 1 +/* 80177804 00174764 EC 00 06 F2 */ fmuls f0, f0, f27 +/* 80177808 00174768 D0 1F 04 D8 */ stfs f0, 0x4d8(r31) +/* 8017780C 0017476C 80 7F 05 1C */ lwz r3, 0x51c(r31) +/* 80177810 00174770 81 83 00 00 */ lwz r12, 0(r3) +/* 80177814 00174774 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80177818 00174778 7D 89 03 A6 */ mtctr r12 +/* 8017781C 0017477C 4E 80 04 21 */ bctrl +/* 80177820 00174780 C0 3F 03 04 */ lfs f1, 0x304(r31) +/* 80177824 00174784 C0 1F 02 EC */ lfs f0, 0x2ec(r31) +/* 80177828 00174788 C3 82 A1 C0 */ lfs f28, lbl_805ABEE0@sda21(r2) +/* 8017782C 0017478C EF A1 00 24 */ fdivs f29, f1, f0 +/* 80177830 00174790 C3 E2 A1 DC */ lfs f31, lbl_805ABEFC@sda21(r2) +/* 80177834 00174794 FF C0 E0 90 */ fmr f30, f28 +/* 80177838 00174798 48 00 00 50 */ b lbl_80177888 +lbl_8017783C: +/* 8017783C 0017479C C0 5F 02 EC */ lfs f2, 0x2ec(r31) +/* 80177840 001747A0 C0 3F 04 CC */ lfs f1, 0x4cc(r31) +/* 80177844 001747A4 C0 1F 03 04 */ lfs f0, 0x304(r31) +/* 80177848 001747A8 EC 3C 08 BA */ fmadds f1, f28, f2, f1 +/* 8017784C 001747AC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80177850 001747B0 41 81 00 34 */ bgt lbl_80177884 +/* 80177854 001747B4 D3 C1 00 08 */ stfs f30, 8(r1) +/* 80177858 001747B8 38 81 00 08 */ addi r4, r1, 8 +/* 8017785C 001747BC D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80177860 001747C0 D3 C1 00 10 */ stfs f30, 0x10(r1) +/* 80177864 001747C4 80 7F 05 1C */ lwz r3, 0x51c(r31) +/* 80177868 001747C8 81 83 00 00 */ lwz r12, 0(r3) +/* 8017786C 001747CC 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 80177870 001747D0 7D 89 03 A6 */ mtctr r12 +/* 80177874 001747D4 4E 80 04 21 */ bctrl +/* 80177878 001747D8 80 7F 05 1C */ lwz r3, 0x51c(r31) +/* 8017787C 001747DC 38 80 00 01 */ li r4, 1 +/* 80177880 001747E0 48 1A 50 41 */ bl ForceParticleCreation__11CElementGenFi +lbl_80177884: +/* 80177884 001747E4 EF 9C F8 2A */ fadds f28, f28, f31 +lbl_80177888: +/* 80177888 001747E8 FC 1C E8 40 */ fcmpo cr0, f28, f29 +/* 8017788C 001747EC 4C 40 13 82 */ cror 2, 0, 2 +/* 80177890 001747F0 41 82 FF AC */ beq lbl_8017783C +/* 80177894 001747F4 80 7F 05 1C */ lwz r3, 0x51c(r31) +/* 80177898 001747F8 38 9F 03 24 */ addi r4, r31, 0x324 +/* 8017789C 001747FC 48 1A 72 E9 */ bl SetGlobalOrientAndTrans__11CElementGenFRC12CTransform4f +/* 801778A0 00174800 80 7F 05 1C */ lwz r3, 0x51c(r31) +/* 801778A4 00174804 38 80 00 00 */ li r4, 0 +/* 801778A8 00174808 81 83 00 00 */ lwz r12, 0(r3) +/* 801778AC 0017480C 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 801778B0 00174810 7D 89 03 A6 */ mtctr r12 +/* 801778B4 00174814 4E 80 04 21 */ bctrl +lbl_801778B8: +/* 801778B8 00174818 80 7F 05 1C */ lwz r3, 0x51c(r31) +/* 801778BC 0017481C FC 20 D8 90 */ fmr f1, f27 +/* 801778C0 00174820 81 83 00 00 */ lwz r12, 0(r3) +/* 801778C4 00174824 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 801778C8 00174828 7D 89 03 A6 */ mtctr r12 +/* 801778CC 0017482C 4E 80 04 21 */ bctrl +/* 801778D0 00174830 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 801778D4 00174834 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 801778D8 00174838 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 +/* 801778DC 0017483C CB C1 00 50 */ lfd f30, 0x50(r1) +/* 801778E0 00174840 E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 +/* 801778E4 00174844 CB A1 00 40 */ lfd f29, 0x40(r1) +/* 801778E8 00174848 E3 81 00 38 */ psq_l f28, 56(r1), 0, qr0 +/* 801778EC 0017484C CB 81 00 30 */ lfd f28, 0x30(r1) +/* 801778F0 00174850 E3 61 00 28 */ psq_l f27, 40(r1), 0, qr0 +/* 801778F4 00174854 CB 61 00 20 */ lfd f27, 0x20(r1) +/* 801778F8 00174858 80 01 00 74 */ lwz r0, 0x74(r1) +/* 801778FC 0017485C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80177900 00174860 7C 08 03 A6 */ mtlr r0 +/* 80177904 00174864 38 21 00 70 */ addi r1, r1, 0x70 +/* 80177908 00174868 4E 80 00 20 */ blr + +.global RenderBeam__17CPlasmaProjectileCFifRC6CColori +RenderBeam__17CPlasmaProjectileCFifRC6CColori: +/* 8017790C 0017486C 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 80177910 00174870 7C 08 02 A6 */ mflr r0 +/* 80177914 00174874 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 80177918 00174878 DB E1 00 C0 */ stfd f31, 0xc0(r1) +/* 8017791C 0017487C F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 +/* 80177920 00174880 DB C1 00 B0 */ stfd f30, 0xb0(r1) +/* 80177924 00174884 F3 C1 00 B8 */ psq_st f30, 184(r1), 0, qr0 +/* 80177928 00174888 DB A1 00 A0 */ stfd f29, 0xa0(r1) +/* 8017792C 0017488C F3 A1 00 A8 */ psq_st f29, 168(r1), 0, qr0 +/* 80177930 00174890 DB 81 00 90 */ stfd f28, 0x90(r1) +/* 80177934 00174894 F3 81 00 98 */ psq_st f28, 152(r1), 0, qr0 +/* 80177938 00174898 DB 61 00 80 */ stfd f27, 0x80(r1) +/* 8017793C 0017489C F3 61 00 88 */ psq_st f27, 136(r1), 0, qr0 +/* 80177940 001748A0 DB 41 00 70 */ stfd f26, 0x70(r1) +/* 80177944 001748A4 F3 41 00 78 */ psq_st f26, 120(r1), 0, qr0 +/* 80177948 001748A8 DB 21 00 60 */ stfd f25, 0x60(r1) +/* 8017794C 001748AC F3 21 00 68 */ psq_st f25, 104(r1), 0, qr0 +/* 80177950 001748B0 DB 01 00 50 */ stfd f24, 0x50(r1) +/* 80177954 001748B4 F3 01 00 58 */ psq_st f24, 88(r1), 0, qr0 +/* 80177958 001748B8 BF 41 00 38 */ stmw r26, 0x38(r1) +/* 8017795C 001748BC FF A0 08 90 */ fmr f29, f1 +/* 80177960 001748C0 54 DF 07 FF */ clrlwi. r31, r6, 0x1f +/* 80177964 001748C4 7C DB 33 78 */ mr r27, r6 +/* 80177968 001748C8 7C BA 2B 78 */ mr r26, r5 +/* 8017796C 001748CC 3B C0 00 00 */ li r30, 0 +/* 80177970 001748D0 41 82 00 28 */ beq lbl_80177998 +/* 80177974 001748D4 57 60 07 39 */ rlwinm. r0, r27, 0, 0x1c, 0x1c +/* 80177978 001748D8 80 A3 04 F0 */ lwz r5, 0x4f0(r3) +/* 8017797C 001748DC 80 03 04 FC */ lwz r0, 0x4fc(r3) +/* 80177980 001748E0 41 82 00 0C */ beq lbl_8017798C +/* 80177984 001748E4 7C 1E 03 78 */ mr r30, r0 +/* 80177988 001748E8 48 00 00 08 */ b lbl_80177990 +lbl_8017798C: +/* 8017798C 001748EC 7C BE 2B 78 */ mr r30, r5 +lbl_80177990: +/* 80177990 001748F0 28 1E 00 00 */ cmplwi r30, 0 +/* 80177994 001748F4 41 82 02 E8 */ beq lbl_80177C7C +lbl_80177998: +/* 80177998 001748F8 3C C0 43 30 */ lis r6, 0x4330 +/* 8017799C 001748FC 6C 80 80 00 */ xoris r0, r4, 0x8000 +/* 801779A0 00174900 90 01 00 2C */ stw r0, 0x2c(r1) +/* 801779A4 00174904 57 65 07 BE */ clrlwi r5, r27, 0x1e +/* 801779A8 00174908 38 05 FF FD */ addi r0, r5, -3 +/* 801779AC 0017490C C8 42 A1 D0 */ lfd f2, lbl_805ABEF0@sda21(r2) +/* 801779B0 00174910 90 C1 00 28 */ stw r6, 0x28(r1) +/* 801779B4 00174914 7C 00 00 34 */ cntlzw r0, r0 +/* 801779B8 00174918 54 00 DE 3E */ rlwinm r0, r0, 0x1b, 0x18, 0x1f +/* 801779BC 0017491C C0 A2 A1 E0 */ lfs f5, lbl_805ABF00@sda21(r2) +/* 801779C0 00174920 C8 01 00 28 */ lfd f0, 0x28(r1) +/* 801779C4 00174924 3B 84 00 01 */ addi r28, r4, 1 +/* 801779C8 00174928 C0 22 A1 E4 */ lfs f1, lbl_805ABF04@sda21(r2) +/* 801779CC 0017492C 3B A0 00 00 */ li r29, 0 +/* 801779D0 00174930 EC 80 10 28 */ fsubs f4, f0, f2 +/* 801779D4 00174934 C0 03 04 CC */ lfs f0, 0x4cc(r3) +/* 801779D8 00174938 90 01 00 34 */ stw r0, 0x34(r1) +/* 801779DC 0017493C EC 61 00 32 */ fmuls f3, f1, f0 +/* 801779E0 00174940 C8 42 A1 F0 */ lfd f2, lbl_805ABF10@sda21(r2) +/* 801779E4 00174944 EF E5 20 24 */ fdivs f31, f5, f4 +/* 801779E8 00174948 90 C1 00 30 */ stw r6, 0x30(r1) +/* 801779EC 0017494C C0 02 A1 C0 */ lfs f0, lbl_805ABEE0@sda21(r2) +/* 801779F0 00174950 C8 21 00 30 */ lfd f1, 0x30(r1) +/* 801779F4 00174954 FF C0 18 50 */ fneg f30, f3 +/* 801779F8 00174958 EC 21 10 28 */ fsubs f1, f1, f2 +/* 801779FC 0017495C EC 3E 08 2A */ fadds f1, f30, f1 +/* 80177A00 00174960 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 80177A04 00174964 41 82 00 0C */ beq lbl_80177A10 +/* 80177A08 00174968 C3 42 A1 D8 */ lfs f26, lbl_805ABEF8@sda21(r2) +/* 80177A0C 0017496C 48 00 00 10 */ b lbl_80177A1C +lbl_80177A10: +/* 80177A10 00174970 C0 22 A1 E8 */ lfs f1, lbl_805ABF08@sda21(r2) +/* 80177A14 00174974 C0 03 03 04 */ lfs f0, 0x304(r3) +/* 80177A18 00174978 EF 41 00 32 */ fmuls f26, f1, f0 +lbl_80177A1C: +/* 80177A1C 0017497C C3 83 03 04 */ lfs f28, 0x304(r3) +/* 80177A20 00174980 38 60 00 07 */ li r3, 7 +/* 80177A24 00174984 C3 02 A1 C0 */ lfs f24, lbl_805ABEE0@sda21(r2) +/* 80177A28 00174988 38 80 00 00 */ li r4, 0 +/* 80177A2C 0017498C 38 A0 00 00 */ li r5, 0 +/* 80177A30 00174990 38 C0 00 07 */ li r6, 7 +/* 80177A34 00174994 38 E0 00 00 */ li r7, 0 +/* 80177A38 00174998 48 19 3F F1 */ bl SetAlphaCompare__9CGraphicsF13ERglAlphaFuncUc11ERglAlphaOp13ERglAlphaFuncUc +/* 80177A3C 0017499C 3C 80 80 3D */ lis r4, lbl_803D0630@ha +/* 80177A40 001749A0 38 61 00 08 */ addi r3, r1, 8 +/* 80177A44 001749A4 39 64 06 30 */ addi r11, r4, lbl_803D0630@l +/* 80177A48 001749A8 81 4B 00 00 */ lwz r10, 0(r11) +/* 80177A4C 001749AC 81 2B 00 04 */ lwz r9, 4(r11) +/* 80177A50 001749B0 81 0B 00 08 */ lwz r8, 8(r11) +/* 80177A54 001749B4 80 EB 00 0C */ lwz r7, 0xc(r11) +/* 80177A58 001749B8 80 CB 00 10 */ lwz r6, 0x10(r11) +/* 80177A5C 001749BC 80 AB 00 14 */ lwz r5, 0x14(r11) +/* 80177A60 001749C0 80 8B 00 18 */ lwz r4, 0x18(r11) +/* 80177A64 001749C4 80 0B 00 1C */ lwz r0, 0x1c(r11) +/* 80177A68 001749C8 91 41 00 08 */ stw r10, 8(r1) +/* 80177A6C 001749CC 91 21 00 0C */ stw r9, 0xc(r1) +/* 80177A70 001749D0 91 01 00 10 */ stw r8, 0x10(r1) +/* 80177A74 001749D4 90 E1 00 14 */ stw r7, 0x14(r1) +/* 80177A78 001749D8 90 C1 00 18 */ stw r6, 0x18(r1) +/* 80177A7C 001749DC 90 A1 00 1C */ stw r5, 0x1c(r1) +/* 80177A80 001749E0 90 81 00 20 */ stw r4, 0x20(r1) +/* 80177A84 001749E4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80177A88 001749E8 48 19 03 A1 */ bl SetVtxDescv__3CGXFPC14_GXVtxDescList +/* 80177A8C 001749EC 38 60 00 01 */ li r3, 1 +/* 80177A90 001749F0 48 19 13 C1 */ bl SetNumChans__3CGXFUc +/* 80177A94 001749F4 38 60 00 01 */ li r3, 1 +/* 80177A98 001749F8 48 19 11 F9 */ bl SetNumTevStages__3CGXFUc +/* 80177A9C 001749FC 38 60 00 00 */ li r3, 0 +/* 80177AA0 00174A00 38 80 00 00 */ li r4, 0 +/* 80177AA4 00174A04 38 A0 00 00 */ li r5, 0 +/* 80177AA8 00174A08 38 C0 00 01 */ li r6, 1 +/* 80177AAC 00174A0C 38 E0 00 00 */ li r7, 0 +/* 80177AB0 00174A10 39 00 00 00 */ li r8, 0 +/* 80177AB4 00174A14 39 20 00 02 */ li r9, 2 +/* 80177AB8 00174A18 48 19 12 15 */ bl SetChanCtrl__3CGXFQ23CGX10EChannelIdUc11_GXColorSrc11_GXColorSrc10_GXLightID12_GXDiffuseFn9_GXAttnFn +/* 80177ABC 00174A1C 57 60 06 F7 */ rlwinm. r0, r27, 0, 0x1b, 0x1b +/* 80177AC0 00174A20 41 82 00 1C */ beq lbl_80177ADC +/* 80177AC4 00174A24 38 60 00 03 */ li r3, 3 +/* 80177AC8 00174A28 38 80 00 01 */ li r4, 1 +/* 80177ACC 00174A2C 38 A0 00 01 */ li r5, 1 +/* 80177AD0 00174A30 38 C0 00 00 */ li r6, 0 +/* 80177AD4 00174A34 48 19 0D FD */ bl SetBlendMode__3CGXF12_GXBlendMode14_GXBlendFactor14_GXBlendFactor10_GXLogicOp +/* 80177AD8 00174A38 48 00 00 38 */ b lbl_80177B10 +lbl_80177ADC: +/* 80177ADC 00174A3C 57 60 07 7B */ rlwinm. r0, r27, 0, 0x1d, 0x1d +/* 80177AE0 00174A40 41 82 00 1C */ beq lbl_80177AFC +/* 80177AE4 00174A44 38 60 00 01 */ li r3, 1 +/* 80177AE8 00174A48 38 80 00 04 */ li r4, 4 +/* 80177AEC 00174A4C 38 A0 00 01 */ li r5, 1 +/* 80177AF0 00174A50 38 C0 00 00 */ li r6, 0 +/* 80177AF4 00174A54 48 19 0D DD */ bl SetBlendMode__3CGXF12_GXBlendMode14_GXBlendFactor14_GXBlendFactor10_GXLogicOp +/* 80177AF8 00174A58 48 00 00 18 */ b lbl_80177B10 +lbl_80177AFC: +/* 80177AFC 00174A5C 38 60 00 01 */ li r3, 1 +/* 80177B00 00174A60 38 80 00 01 */ li r4, 1 +/* 80177B04 00174A64 38 A0 00 01 */ li r5, 1 +/* 80177B08 00174A68 38 C0 00 00 */ li r6, 0 +/* 80177B0C 00174A6C 48 19 0D C5 */ bl SetBlendMode__3CGXF12_GXBlendMode14_GXBlendFactor14_GXBlendFactor10_GXLogicOp +lbl_80177B10: +/* 80177B10 00174A70 38 60 00 00 */ li r3, 0 +/* 80177B14 00174A74 38 80 00 00 */ li r4, 0 +/* 80177B18 00174A78 38 A0 00 0C */ li r5, 0xc +/* 80177B1C 00174A7C 38 C0 00 3C */ li r6, 0x3c +/* 80177B20 00174A80 38 E0 00 00 */ li r7, 0 +/* 80177B24 00174A84 39 00 00 7D */ li r8, 0x7d +/* 80177B28 00174A88 48 19 0B A5 */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx +/* 80177B2C 00174A8C 2C 1F 00 00 */ cmpwi r31, 0 +/* 80177B30 00174A90 41 82 00 44 */ beq lbl_80177B74 +/* 80177B34 00174A94 38 60 00 01 */ li r3, 1 +/* 80177B38 00174A98 48 19 12 DD */ bl SetNumTexGens__3CGXFUc +/* 80177B3C 00174A9C 38 60 00 00 */ li r3, 0 +/* 80177B40 00174AA0 38 80 00 00 */ li r4, 0 +/* 80177B44 00174AA4 38 A0 00 00 */ li r5, 0 +/* 80177B48 00174AA8 38 C0 00 04 */ li r6, 4 +/* 80177B4C 00174AAC 48 19 0E 01 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 80177B50 00174AB0 3C 80 80 5A */ lis r4, lbl_805A5EBC@ha +/* 80177B54 00174AB4 38 60 00 00 */ li r3, 0 +/* 80177B58 00174AB8 38 84 5E BC */ addi r4, r4, lbl_805A5EBC@l +/* 80177B5C 00174ABC 48 19 27 5D */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass +/* 80177B60 00174AC0 7F C3 F3 78 */ mr r3, r30 +/* 80177B64 00174AC4 38 80 00 00 */ li r4, 0 +/* 80177B68 00174AC8 38 A0 00 01 */ li r5, 1 +/* 80177B6C 00174ACC 48 19 7B D1 */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode +/* 80177B70 00174AD0 48 00 00 2C */ b lbl_80177B9C +lbl_80177B74: +/* 80177B74 00174AD4 38 60 00 00 */ li r3, 0 +/* 80177B78 00174AD8 48 19 12 9D */ bl SetNumTexGens__3CGXFUc +/* 80177B7C 00174ADC 38 60 00 00 */ li r3, 0 +/* 80177B80 00174AE0 38 80 00 FF */ li r4, 0xff +/* 80177B84 00174AE4 38 A0 00 FF */ li r5, 0xff +/* 80177B88 00174AE8 38 C0 00 04 */ li r6, 4 +/* 80177B8C 00174AEC 48 19 0D C1 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID +/* 80177B90 00174AF0 80 8D 9C 68 */ lwz r4, lbl_805A8828@sda21(r13) +/* 80177B94 00174AF4 38 60 00 00 */ li r3, 0 +/* 80177B98 00174AF8 48 19 27 21 */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass +lbl_80177B9C: +/* 80177B9C 00174AFC 80 8D 9C 68 */ lwz r4, lbl_805A8828@sda21(r13) +/* 80177BA0 00174B00 38 60 00 01 */ li r3, 1 +/* 80177BA4 00174B04 48 19 27 15 */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass +/* 80177BA8 00174B08 83 DA 00 00 */ lwz r30, 0(r26) +/* 80177BAC 00174B0C 57 85 0C 3C */ rlwinm r5, r28, 1, 0x10, 0x1e +/* 80177BB0 00174B10 38 60 00 98 */ li r3, 0x98 +/* 80177BB4 00174B14 38 80 00 00 */ li r4, 0 +/* 80177BB8 00174B18 48 19 09 CD */ bl Begin__3CGXF12_GXPrimitive9_GXVtxFmtUs +/* 80177BBC 00174B1C C3 62 A1 C0 */ lfs f27, lbl_805ABEE0@sda21(r2) +/* 80177BC0 00174B20 57 7B 07 38 */ rlwinm r27, r27, 0, 0x1c, 0x1c +/* 80177BC4 00174B24 3B E0 00 00 */ li r31, 0 +/* 80177BC8 00174B28 3F 40 CC 01 */ lis r26, 0xcc01 +/* 80177BCC 00174B2C EF 3B E0 2A */ fadds f25, f27, f28 +/* 80177BD0 00174B30 48 00 00 90 */ b lbl_80177C60 +lbl_80177BD4: +/* 80177BD4 00174B34 FC 20 C0 90 */ fmr f1, f24 +/* 80177BD8 00174B38 48 19 D1 6D */ bl FastCosR__5CMathFf +/* 80177BDC 00174B3C FF 80 08 90 */ fmr f28, f1 +/* 80177BE0 00174B40 FC 20 C0 90 */ fmr f1, f24 +/* 80177BE4 00174B44 48 19 D2 0D */ bl FastSinR__5CMathFf +/* 80177BE8 00174B48 2C 1B 00 00 */ cmpwi r27, 0 +/* 80177BEC 00174B4C 41 82 00 10 */ beq lbl_80177BFC +/* 80177BF0 00174B50 C0 02 A1 E8 */ lfs f0, lbl_805ABF08@sda21(r2) +/* 80177BF4 00174B54 EC 40 00 72 */ fmuls f2, f0, f1 +/* 80177BF8 00174B58 48 00 00 18 */ b lbl_80177C10 +lbl_80177BFC: +/* 80177BFC 00174B5C 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 80177C00 00174B60 41 82 00 0C */ beq lbl_80177C0C +/* 80177C04 00174B64 FC 40 E8 90 */ fmr f2, f29 +/* 80177C08 00174B68 48 00 00 08 */ b lbl_80177C10 +lbl_80177C0C: +/* 80177C0C 00174B6C C0 42 A1 C0 */ lfs f2, lbl_805ABEE0@sda21(r2) +lbl_80177C10: +/* 80177C10 00174B70 EC 1D 07 32 */ fmuls f0, f29, f28 +/* 80177C14 00174B74 6B A0 00 01 */ xori r0, r29, 1 +/* 80177C18 00174B78 EC 7D 00 72 */ fmuls f3, f29, f1 +/* 80177C1C 00174B7C 54 1D 06 3E */ clrlwi r29, r0, 0x18 +/* 80177C20 00174B80 EF 18 F8 2A */ fadds f24, f24, f31 +/* 80177C24 00174B84 3B FF 00 01 */ addi r31, r31, 1 +/* 80177C28 00174B88 D0 1A 80 00 */ stfs f0, 0xCC008000@l(r26) +/* 80177C2C 00174B8C EC 20 D8 2A */ fadds f1, f0, f27 +/* 80177C30 00174B90 EC 03 D8 2A */ fadds f0, f3, f27 +/* 80177C34 00174B94 D3 7A 80 00 */ stfs f27, 0xCC008000@l(r26) +/* 80177C38 00174B98 D0 7A 80 00 */ stfs f3, 0xCC008000@l(r26) +/* 80177C3C 00174B9C 93 DA 80 00 */ stw r30, 0xCC008000@l(r26) +/* 80177C40 00174BA0 D0 5A 80 00 */ stfs f2, 0xCC008000@l(r26) +/* 80177C44 00174BA4 D3 DA 80 00 */ stfs f30, 0xCC008000@l(r26) +/* 80177C48 00174BA8 D0 3A 80 00 */ stfs f1, 0xCC008000@l(r26) +/* 80177C4C 00174BAC D3 3A 80 00 */ stfs f25, 0xCC008000@l(r26) +/* 80177C50 00174BB0 D0 1A 80 00 */ stfs f0, 0xCC008000@l(r26) +/* 80177C54 00174BB4 93 DA 80 00 */ stw r30, 0xCC008000@l(r26) +/* 80177C58 00174BB8 D0 5A 80 00 */ stfs f2, 0xCC008000@l(r26) +/* 80177C5C 00174BBC D3 5A 80 00 */ stfs f26, 0xCC008000@l(r26) +lbl_80177C60: +/* 80177C60 00174BC0 7C 1F E0 00 */ cmpw r31, r28 +/* 80177C64 00174BC4 41 80 FF 70 */ blt lbl_80177BD4 +/* 80177C68 00174BC8 48 19 09 19 */ bl End__3CGXFv +/* 80177C6C 00174BCC 2C 1B 00 00 */ cmpwi r27, 0 +/* 80177C70 00174BD0 41 82 00 0C */ beq lbl_80177C7C +/* 80177C74 00174BD4 38 60 00 01 */ li r3, 1 +/* 80177C78 00174BD8 48 19 3D F9 */ bl SetCullMode__9CGraphicsF12ERglCullMode +lbl_80177C7C: +/* 80177C7C 00174BDC E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 +/* 80177C80 00174BE0 CB E1 00 C0 */ lfd f31, 0xc0(r1) +/* 80177C84 00174BE4 E3 C1 00 B8 */ psq_l f30, 184(r1), 0, qr0 +/* 80177C88 00174BE8 CB C1 00 B0 */ lfd f30, 0xb0(r1) +/* 80177C8C 00174BEC E3 A1 00 A8 */ psq_l f29, 168(r1), 0, qr0 +/* 80177C90 00174BF0 CB A1 00 A0 */ lfd f29, 0xa0(r1) +/* 80177C94 00174BF4 E3 81 00 98 */ psq_l f28, 152(r1), 0, qr0 +/* 80177C98 00174BF8 CB 81 00 90 */ lfd f28, 0x90(r1) +/* 80177C9C 00174BFC E3 61 00 88 */ psq_l f27, 136(r1), 0, qr0 +/* 80177CA0 00174C00 CB 61 00 80 */ lfd f27, 0x80(r1) +/* 80177CA4 00174C04 E3 41 00 78 */ psq_l f26, 120(r1), 0, qr0 +/* 80177CA8 00174C08 CB 41 00 70 */ lfd f26, 0x70(r1) +/* 80177CAC 00174C0C E3 21 00 68 */ psq_l f25, 104(r1), 0, qr0 +/* 80177CB0 00174C10 CB 21 00 60 */ lfd f25, 0x60(r1) +/* 80177CB4 00174C14 E3 01 00 58 */ psq_l f24, 88(r1), 0, qr0 +/* 80177CB8 00174C18 CB 01 00 50 */ lfd f24, 0x50(r1) +/* 80177CBC 00174C1C BB 41 00 38 */ lmw r26, 0x38(r1) +/* 80177CC0 00174C20 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 80177CC4 00174C24 7C 08 03 A6 */ mtlr r0 +/* 80177CC8 00174C28 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 80177CCC 00174C2C 4E 80 00 20 */ blr + +.global ResetBeam__17CPlasmaProjectileFR13CStateManagerb +ResetBeam__17CPlasmaProjectileFR13CStateManagerb: +/* 80177CD0 00174C30 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80177CD4 00174C34 7C 08 02 A6 */ mflr r0 +/* 80177CD8 00174C38 90 01 00 14 */ stw r0, 0x14(r1) +/* 80177CDC 00174C3C 54 A0 06 3F */ clrlwi. r0, r5, 0x18 +/* 80177CE0 00174C40 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80177CE4 00174C44 7C 9F 23 78 */ mr r31, r4 +/* 80177CE8 00174C48 93 C1 00 08 */ stw r30, 8(r1) +/* 80177CEC 00174C4C 7C 7E 1B 78 */ mr r30, r3 +/* 80177CF0 00174C50 41 82 00 94 */ beq lbl_80177D84 +/* 80177CF4 00174C54 81 83 00 00 */ lwz r12, 0(r3) +/* 80177CF8 00174C58 38 80 00 00 */ li r4, 0 +/* 80177CFC 00174C5C 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80177D00 00174C60 7D 89 03 A6 */ mtctr r12 +/* 80177D04 00174C64 4E 80 04 21 */ bctrl +/* 80177D08 00174C68 7F C3 F3 78 */ mr r3, r30 +/* 80177D0C 00174C6C 7F E5 FB 78 */ mr r5, r31 +/* 80177D10 00174C70 38 80 00 00 */ li r4, 0 +/* 80177D14 00174C74 4B FF F5 91 */ bl SetLightsActive__17CPlasmaProjectileFbR13CStateManager +/* 80177D18 00174C78 C0 02 A1 C0 */ lfs f0, lbl_805ABEE0@sda21(r2) +/* 80177D1C 00174C7C 38 60 00 00 */ li r3, 0 +/* 80177D20 00174C80 38 80 00 00 */ li r4, 0 +/* 80177D24 00174C84 D0 1E 04 BC */ stfs f0, 0x4bc(r30) +/* 80177D28 00174C88 D0 1E 04 C0 */ stfs f0, 0x4c0(r30) +/* 80177D2C 00174C8C D0 1E 04 C8 */ stfs f0, 0x4c8(r30) +/* 80177D30 00174C90 D0 1E 04 D0 */ stfs f0, 0x4d0(r30) +/* 80177D34 00174C94 D0 1E 04 C8 */ stfs f0, 0x4c8(r30) +/* 80177D38 00174C98 D0 1E 04 D4 */ stfs f0, 0x4d4(r30) +/* 80177D3C 00174C9C D0 1E 04 D8 */ stfs f0, 0x4d8(r30) +/* 80177D40 00174CA0 D0 1E 04 DC */ stfs f0, 0x4dc(r30) +/* 80177D44 00174CA4 90 7E 04 B4 */ stw r3, 0x4b4(r30) +/* 80177D48 00174CA8 88 1E 05 48 */ lbz r0, 0x548(r30) +/* 80177D4C 00174CAC 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 80177D50 00174CB0 98 1E 05 48 */ stb r0, 0x548(r30) +/* 80177D54 00174CB4 80 7E 05 18 */ lwz r3, 0x518(r30) +/* 80177D58 00174CB8 81 83 00 00 */ lwz r12, 0(r3) +/* 80177D5C 00174CBC 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80177D60 00174CC0 7D 89 03 A6 */ mtctr r12 +/* 80177D64 00174CC4 4E 80 04 21 */ bctrl +/* 80177D68 00174CC8 80 7E 05 1C */ lwz r3, 0x51c(r30) +/* 80177D6C 00174CCC 38 80 00 00 */ li r4, 0 +/* 80177D70 00174CD0 81 83 00 00 */ lwz r12, 0(r3) +/* 80177D74 00174CD4 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80177D78 00174CD8 7D 89 03 A6 */ mtctr r12 +/* 80177D7C 00174CDC 4E 80 04 21 */ bctrl +/* 80177D80 00174CE0 48 00 00 4C */ b lbl_80177DCC +lbl_80177D84: +/* 80177D84 00174CE4 88 7E 05 48 */ lbz r3, 0x548(r30) +/* 80177D88 00174CE8 38 00 00 00 */ li r0, 0 +/* 80177D8C 00174CEC 50 03 2E B4 */ rlwimi r3, r0, 5, 0x1a, 0x1a +/* 80177D90 00174CF0 38 00 00 03 */ li r0, 3 +/* 80177D94 00174CF4 98 7E 05 48 */ stb r3, 0x548(r30) +/* 80177D98 00174CF8 38 80 00 00 */ li r4, 0 +/* 80177D9C 00174CFC 90 1E 04 B4 */ stw r0, 0x4b4(r30) +/* 80177DA0 00174D00 80 7E 05 18 */ lwz r3, 0x518(r30) +/* 80177DA4 00174D04 81 83 00 00 */ lwz r12, 0(r3) +/* 80177DA8 00174D08 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80177DAC 00174D0C 7D 89 03 A6 */ mtctr r12 +/* 80177DB0 00174D10 4E 80 04 21 */ bctrl +/* 80177DB4 00174D14 80 7E 05 1C */ lwz r3, 0x51c(r30) +/* 80177DB8 00174D18 38 80 00 00 */ li r4, 0 +/* 80177DBC 00174D1C 81 83 00 00 */ lwz r12, 0(r3) +/* 80177DC0 00174D20 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80177DC4 00174D24 7D 89 03 A6 */ mtctr r12 +/* 80177DC8 00174D28 4E 80 04 21 */ bctrl +lbl_80177DCC: +/* 80177DCC 00174D2C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80177DD0 00174D30 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80177DD4 00174D34 83 C1 00 08 */ lwz r30, 8(r1) +/* 80177DD8 00174D38 7C 08 03 A6 */ mtlr r0 +/* 80177DDC 00174D3C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80177DE0 00174D40 4E 80 00 20 */ blr + +.global Fire__17CPlasmaProjectileFRC12CTransform4fR13CStateManagerb +Fire__17CPlasmaProjectileFRC12CTransform4fR13CStateManagerb: +/* 80177DE4 00174D44 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80177DE8 00174D48 7C 08 02 A6 */ mflr r0 +/* 80177DEC 00174D4C 90 01 00 24 */ stw r0, 0x24(r1) +/* 80177DF0 00174D50 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80177DF4 00174D54 7C DF 33 78 */ mr r31, r6 +/* 80177DF8 00174D58 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80177DFC 00174D5C 7C BE 2B 78 */ mr r30, r5 +/* 80177E00 00174D60 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80177E04 00174D64 7C 9D 23 78 */ mr r29, r4 +/* 80177E08 00174D68 38 80 00 01 */ li r4, 1 +/* 80177E0C 00174D6C 93 81 00 10 */ stw r28, 0x10(r1) +/* 80177E10 00174D70 7C 7C 1B 78 */ mr r28, r3 +/* 80177E14 00174D74 81 83 00 00 */ lwz r12, 0(r3) +/* 80177E18 00174D78 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80177E1C 00174D7C 7D 89 03 A6 */ mtctr r12 +/* 80177E20 00174D80 4E 80 04 21 */ bctrl +/* 80177E24 00174D84 7F 83 E3 78 */ mr r3, r28 +/* 80177E28 00174D88 7F C5 F3 78 */ mr r5, r30 +/* 80177E2C 00174D8C 38 80 00 01 */ li r4, 1 +/* 80177E30 00174D90 4B FF F4 75 */ bl SetLightsActive__17CPlasmaProjectileFbR13CStateManager +/* 80177E34 00174D94 88 1C 05 48 */ lbz r0, 0x548(r28) +/* 80177E38 00174D98 38 80 00 01 */ li r4, 1 +/* 80177E3C 00174D9C 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 80177E40 00174DA0 98 1C 05 48 */ stb r0, 0x548(r28) +/* 80177E44 00174DA4 88 1C 05 48 */ lbz r0, 0x548(r28) +/* 80177E48 00174DA8 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a +/* 80177E4C 00174DAC 98 1C 05 48 */ stb r0, 0x548(r28) +/* 80177E50 00174DB0 88 1C 05 48 */ lbz r0, 0x548(r28) +/* 80177E54 00174DB4 53 E0 3E 30 */ rlwimi r0, r31, 7, 0x18, 0x18 +/* 80177E58 00174DB8 98 1C 05 48 */ stb r0, 0x548(r28) +/* 80177E5C 00174DBC 90 9C 04 B4 */ stw r4, 0x4b4(r28) +/* 80177E60 00174DC0 80 1C 04 78 */ lwz r0, 0x478(r28) +/* 80177E64 00174DC4 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 80177E68 00174DC8 41 82 00 C4 */ beq lbl_80177F2C +/* 80177E6C 00174DCC C0 5D 00 2C */ lfs f2, 0x2c(r29) +/* 80177E70 00174DD0 C0 3D 00 1C */ lfs f1, 0x1c(r29) +/* 80177E74 00174DD4 C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 80177E78 00174DD8 D0 1C 04 04 */ stfs f0, 0x404(r28) +/* 80177E7C 00174DDC D0 3C 04 08 */ stfs f1, 0x408(r28) +/* 80177E80 00174DE0 D0 5C 04 0C */ stfs f2, 0x40c(r28) +/* 80177E84 00174DE4 C0 5D 00 2C */ lfs f2, 0x2c(r29) +/* 80177E88 00174DE8 C0 3D 00 1C */ lfs f1, 0x1c(r29) +/* 80177E8C 00174DEC C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 80177E90 00174DF0 D0 1C 04 10 */ stfs f0, 0x410(r28) +/* 80177E94 00174DF4 D0 3C 04 14 */ stfs f1, 0x414(r28) +/* 80177E98 00174DF8 D0 5C 04 18 */ stfs f2, 0x418(r28) +/* 80177E9C 00174DFC C0 5D 00 2C */ lfs f2, 0x2c(r29) +/* 80177EA0 00174E00 C0 3D 00 1C */ lfs f1, 0x1c(r29) +/* 80177EA4 00174E04 C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 80177EA8 00174E08 D0 1C 04 1C */ stfs f0, 0x41c(r28) +/* 80177EAC 00174E0C D0 3C 04 20 */ stfs f1, 0x420(r28) +/* 80177EB0 00174E10 D0 5C 04 24 */ stfs f2, 0x424(r28) +/* 80177EB4 00174E14 C0 5D 00 2C */ lfs f2, 0x2c(r29) +/* 80177EB8 00174E18 C0 3D 00 1C */ lfs f1, 0x1c(r29) +/* 80177EBC 00174E1C C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 80177EC0 00174E20 D0 1C 04 28 */ stfs f0, 0x428(r28) +/* 80177EC4 00174E24 D0 3C 04 2C */ stfs f1, 0x42c(r28) +/* 80177EC8 00174E28 D0 5C 04 30 */ stfs f2, 0x430(r28) +/* 80177ECC 00174E2C C0 5D 00 2C */ lfs f2, 0x2c(r29) +/* 80177ED0 00174E30 C0 3D 00 1C */ lfs f1, 0x1c(r29) +/* 80177ED4 00174E34 C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 80177ED8 00174E38 D0 1C 04 34 */ stfs f0, 0x434(r28) +/* 80177EDC 00174E3C D0 3C 04 38 */ stfs f1, 0x438(r28) +/* 80177EE0 00174E40 D0 5C 04 3C */ stfs f2, 0x43c(r28) +/* 80177EE4 00174E44 C0 5D 00 2C */ lfs f2, 0x2c(r29) +/* 80177EE8 00174E48 C0 3D 00 1C */ lfs f1, 0x1c(r29) +/* 80177EEC 00174E4C C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 80177EF0 00174E50 D0 1C 04 40 */ stfs f0, 0x440(r28) +/* 80177EF4 00174E54 D0 3C 04 44 */ stfs f1, 0x444(r28) +/* 80177EF8 00174E58 D0 5C 04 48 */ stfs f2, 0x448(r28) +/* 80177EFC 00174E5C C0 5D 00 2C */ lfs f2, 0x2c(r29) +/* 80177F00 00174E60 C0 3D 00 1C */ lfs f1, 0x1c(r29) +/* 80177F04 00174E64 C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 80177F08 00174E68 D0 1C 04 4C */ stfs f0, 0x44c(r28) +/* 80177F0C 00174E6C D0 3C 04 50 */ stfs f1, 0x450(r28) +/* 80177F10 00174E70 D0 5C 04 54 */ stfs f2, 0x454(r28) +/* 80177F14 00174E74 C0 5D 00 2C */ lfs f2, 0x2c(r29) +/* 80177F18 00174E78 C0 3D 00 1C */ lfs f1, 0x1c(r29) +/* 80177F1C 00174E7C C0 1D 00 0C */ lfs f0, 0xc(r29) +/* 80177F20 00174E80 D0 1C 04 58 */ stfs f0, 0x458(r28) +/* 80177F24 00174E84 D0 3C 04 5C */ stfs f1, 0x45c(r28) +/* 80177F28 00174E88 D0 5C 04 60 */ stfs f2, 0x460(r28) +lbl_80177F2C: +/* 80177F2C 00174E8C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80177F30 00174E90 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80177F34 00174E94 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80177F38 00174E98 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80177F3C 00174E9C 83 81 00 10 */ lwz r28, 0x10(r1) +/* 80177F40 00174EA0 7C 08 03 A6 */ mtlr r0 +/* 80177F44 00174EA4 38 21 00 20 */ addi r1, r1, 0x20 +/* 80177F48 00174EA8 4E 80 00 20 */ blr + +.global Render__17CPlasmaProjectileCFRC13CStateManager +Render__17CPlasmaProjectileCFRC13CStateManager: +/* 80177F4C 00174EAC 94 21 FE E0 */ stwu r1, -0x120(r1) +/* 80177F50 00174EB0 7C 08 02 A6 */ mflr r0 +/* 80177F54 00174EB4 90 01 01 24 */ stw r0, 0x124(r1) +/* 80177F58 00174EB8 93 E1 01 1C */ stw r31, 0x11c(r1) +/* 80177F5C 00174EBC 93 C1 01 18 */ stw r30, 0x118(r1) +/* 80177F60 00174EC0 7C 9E 23 78 */ mr r30, r4 +/* 80177F64 00174EC4 93 A1 01 14 */ stw r29, 0x114(r1) +/* 80177F68 00174EC8 7C 7D 1B 78 */ mr r29, r3 +/* 80177F6C 00174ECC 88 03 00 30 */ lbz r0, 0x30(r3) +/* 80177F70 00174ED0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80177F74 00174ED4 41 82 02 10 */ beq lbl_80178184 +/* 80177F78 00174ED8 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 80177F7C 00174EDC 38 9D 03 24 */ addi r4, r29, 0x324 +/* 80177F80 00174EE0 48 19 AB F5 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80177F84 00174EE4 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 80177F88 00174EE8 7F C4 F3 78 */ mr r4, r30 +/* 80177F8C 00174EEC 3B E0 00 00 */ li r31, 0 +/* 80177F90 00174EF0 80 63 00 00 */ lwz r3, 0(r3) +/* 80177F94 00174EF4 4B F1 95 C5 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager +/* 80177F98 00174EF8 2C 03 00 01 */ cmpwi r3, 1 +/* 80177F9C 00174EFC 40 82 00 08 */ bne lbl_80177FA4 +/* 80177FA0 00174F00 3B E0 00 10 */ li r31, 0x10 +lbl_80177FA4: +/* 80177FA4 00174F04 80 1D 04 78 */ lwz r0, 0x478(r29) +/* 80177FA8 00174F08 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 80177FAC 00174F0C 40 82 00 44 */ bne lbl_80177FF0 +/* 80177FB0 00174F10 80 9E 08 70 */ lwz r4, 0x870(r30) +/* 80177FB4 00174F14 7F C5 F3 78 */ mr r5, r30 +/* 80177FB8 00174F18 38 61 00 14 */ addi r3, r1, 0x14 +/* 80177FBC 00174F1C 4B E9 29 59 */ bl GetGlobalCameraTranslation__14CCameraManagerCFRC13CStateManager +/* 80177FC0 00174F20 C0 21 00 EC */ lfs f1, 0xec(r1) +/* 80177FC4 00174F24 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 80177FC8 00174F28 C0 61 00 FC */ lfs f3, 0xfc(r1) +/* 80177FCC 00174F2C C0 41 00 18 */ lfs f2, 0x18(r1) +/* 80177FD0 00174F30 EC 81 00 2A */ fadds f4, f1, f0 +/* 80177FD4 00174F34 C0 21 01 0C */ lfs f1, 0x10c(r1) +/* 80177FD8 00174F38 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 80177FDC 00174F3C EC 43 10 2A */ fadds f2, f3, f2 +/* 80177FE0 00174F40 D0 81 00 EC */ stfs f4, 0xec(r1) +/* 80177FE4 00174F44 EC 01 00 2A */ fadds f0, f1, f0 +/* 80177FE8 00174F48 D0 41 00 FC */ stfs f2, 0xfc(r1) +/* 80177FEC 00174F4C D0 01 01 0C */ stfs f0, 0x10c(r1) +lbl_80177FF0: +/* 80177FF0 00174F50 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80177FF4 00174F54 38 80 00 01 */ li r4, 1 +/* 80177FF8 00174F58 38 A0 00 00 */ li r5, 0 +/* 80177FFC 00174F5C 81 83 00 00 */ lwz r12, 0(r3) +/* 80178000 00174F60 81 8C 00 60 */ lwz r12, 0x60(r12) +/* 80178004 00174F64 7D 89 03 A6 */ mtctr r12 +/* 80178008 00174F68 4E 80 04 21 */ bctrl +/* 8017800C 00174F6C 80 1D 04 78 */ lwz r0, 0x478(r29) +/* 80178010 00174F70 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 80178014 00174F74 41 82 00 24 */ beq lbl_80178038 +/* 80178018 00174F78 88 1D 05 48 */ lbz r0, 0x548(r29) +/* 8017801C 00174F7C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 80178020 00174F80 41 82 00 18 */ beq lbl_80178038 +/* 80178024 00174F84 80 1D 04 B4 */ lwz r0, 0x4b4(r29) +/* 80178028 00174F88 2C 00 00 01 */ cmpwi r0, 1 +/* 8017802C 00174F8C 41 82 00 0C */ beq lbl_80178038 +/* 80178030 00174F90 7F A3 EB 78 */ mr r3, r29 +/* 80178034 00174F94 4B FF F5 59 */ bl RenderMotionBlur__17CPlasmaProjectileCFv +lbl_80178038: +/* 80178038 00174F98 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 8017803C 00174F9C 38 81 00 E0 */ addi r4, r1, 0xe0 +/* 80178040 00174FA0 81 83 00 00 */ lwz r12, 0(r3) +/* 80178044 00174FA4 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 80178048 00174FA8 7D 89 03 A6 */ mtctr r12 +/* 8017804C 00174FAC 4E 80 04 21 */ bctrl +/* 80178050 00174FB0 C0 22 A1 FC */ lfs f1, lbl_805ABF1C@sda21(r2) +/* 80178054 00174FB4 38 61 00 10 */ addi r3, r1, 0x10 +/* 80178058 00174FB8 C0 82 A2 00 */ lfs f4, lbl_805ABF20@sda21(r2) +/* 8017805C 00174FBC FC 40 08 90 */ fmr f2, f1 +/* 80178060 00174FC0 FC 60 08 90 */ fmr f3, f1 +/* 80178064 00174FC4 48 1E B3 89 */ bl __ct__6CColorFffff +/* 80178068 00174FC8 C0 22 A1 F8 */ lfs f1, lbl_805ABF18@sda21(r2) +/* 8017806C 00174FCC 7C 65 1B 78 */ mr r5, r3 +/* 80178070 00174FD0 C0 1D 04 B8 */ lfs f0, 0x4b8(r29) +/* 80178074 00174FD4 7F A3 EB 78 */ mr r3, r29 +/* 80178078 00174FD8 63 E6 00 04 */ ori r6, r31, 4 +/* 8017807C 00174FDC 38 80 00 03 */ li r4, 3 +/* 80178080 00174FE0 EC 21 00 32 */ fmuls f1, f1, f0 +/* 80178084 00174FE4 4B FF F8 89 */ bl RenderBeam__17CPlasmaProjectileCFifRC6CColori +/* 80178088 00174FE8 C0 22 A2 04 */ lfs f1, lbl_805ABF24@sda21(r2) +/* 8017808C 00174FEC 38 61 00 80 */ addi r3, r1, 0x80 +/* 80178090 00174FF0 C0 1D 04 C8 */ lfs f0, 0x4c8(r29) +/* 80178094 00174FF4 38 81 00 0C */ addi r4, r1, 0xc +/* 80178098 00174FF8 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8017809C 00174FFC D0 01 00 0C */ stfs f0, 0xc(r1) +/* 801780A0 00175000 48 19 B8 09 */ bl RotateY__12CTransform4fFRC9CRelAngle +/* 801780A4 00175004 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 801780A8 00175008 38 81 00 E0 */ addi r4, r1, 0xe0 +/* 801780AC 0017500C 38 A1 00 80 */ addi r5, r1, 0x80 +/* 801780B0 00175010 48 19 A8 A1 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 801780B4 00175014 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801780B8 00175018 38 81 00 B0 */ addi r4, r1, 0xb0 +/* 801780BC 0017501C 81 83 00 00 */ lwz r12, 0(r3) +/* 801780C0 00175020 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 801780C4 00175024 7D 89 03 A6 */ mtctr r12 +/* 801780C8 00175028 4E 80 04 21 */ bctrl +/* 801780CC 0017502C C0 22 A1 E8 */ lfs f1, lbl_805ABF08@sda21(r2) +/* 801780D0 00175030 7F A3 EB 78 */ mr r3, r29 +/* 801780D4 00175034 C0 1D 04 B8 */ lfs f0, 0x4b8(r29) +/* 801780D8 00175038 38 BD 04 90 */ addi r5, r29, 0x490 +/* 801780DC 0017503C 63 E6 00 01 */ ori r6, r31, 1 +/* 801780E0 00175040 38 80 00 04 */ li r4, 4 +/* 801780E4 00175044 EC 21 00 32 */ fmuls f1, f1, f0 +/* 801780E8 00175048 4B FF F8 25 */ bl RenderBeam__17CPlasmaProjectileCFifRC6CColori +/* 801780EC 0017504C C0 1D 04 C8 */ lfs f0, 0x4c8(r29) +/* 801780F0 00175050 38 61 00 20 */ addi r3, r1, 0x20 +/* 801780F4 00175054 C0 22 A2 04 */ lfs f1, lbl_805ABF24@sda21(r2) +/* 801780F8 00175058 38 81 00 08 */ addi r4, r1, 8 +/* 801780FC 0017505C FC 00 00 50 */ fneg f0, f0 +/* 80178100 00175060 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80178104 00175064 D0 01 00 08 */ stfs f0, 8(r1) +/* 80178108 00175068 48 19 B7 A1 */ bl RotateY__12CTransform4fFRC9CRelAngle +/* 8017810C 0017506C 38 61 00 50 */ addi r3, r1, 0x50 +/* 80178110 00175070 38 81 00 E0 */ addi r4, r1, 0xe0 +/* 80178114 00175074 38 A1 00 20 */ addi r5, r1, 0x20 +/* 80178118 00175078 48 19 A8 39 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8017811C 0017507C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80178120 00175080 38 81 00 50 */ addi r4, r1, 0x50 +/* 80178124 00175084 81 83 00 00 */ lwz r12, 0(r3) +/* 80178128 00175088 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 8017812C 0017508C 7D 89 03 A6 */ mtctr r12 +/* 80178130 00175090 4E 80 04 21 */ bctrl +/* 80178134 00175094 C0 3D 04 B8 */ lfs f1, 0x4b8(r29) +/* 80178138 00175098 7F A3 EB 78 */ mr r3, r29 +/* 8017813C 0017509C 38 BD 04 94 */ addi r5, r29, 0x494 +/* 80178140 001750A0 63 E6 00 03 */ ori r6, r31, 3 +/* 80178144 001750A4 38 80 00 08 */ li r4, 8 +/* 80178148 001750A8 4B FF F7 C5 */ bl RenderBeam__17CPlasmaProjectileCFifRC6CColori +/* 8017814C 001750AC 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 80178150 001750B0 38 81 00 E0 */ addi r4, r1, 0xe0 +/* 80178154 001750B4 81 83 00 00 */ lwz r12, 0(r3) +/* 80178158 001750B8 81 8C 00 30 */ lwz r12, 0x30(r12) +/* 8017815C 001750BC 7D 89 03 A6 */ mtctr r12 +/* 80178160 001750C0 4E 80 04 21 */ bctrl +/* 80178164 001750C4 C0 22 A2 08 */ lfs f1, lbl_805ABF28@sda21(r2) +/* 80178168 001750C8 7F A3 EB 78 */ mr r3, r29 +/* 8017816C 001750CC C0 1D 04 B8 */ lfs f0, 0x4b8(r29) +/* 80178170 001750D0 38 BD 04 94 */ addi r5, r29, 0x494 +/* 80178174 001750D4 63 E6 00 0D */ ori r6, r31, 0xd +/* 80178178 001750D8 38 80 00 06 */ li r4, 6 +/* 8017817C 001750DC EC 21 00 32 */ fmuls f1, f1, f0 +/* 80178180 001750E0 4B FF F7 8D */ bl RenderBeam__17CPlasmaProjectileCFifRC6CColori +lbl_80178184: +/* 80178184 001750E4 80 01 01 24 */ lwz r0, 0x124(r1) +/* 80178188 001750E8 83 E1 01 1C */ lwz r31, 0x11c(r1) +/* 8017818C 001750EC 83 C1 01 18 */ lwz r30, 0x118(r1) +/* 80178190 001750F0 83 A1 01 14 */ lwz r29, 0x114(r1) +/* 80178194 001750F4 7C 08 03 A6 */ mtlr r0 +/* 80178198 001750F8 38 21 01 20 */ addi r1, r1, 0x120 +/* 8017819C 001750FC 4E 80 00 20 */ blr + +.global AddToRenderer__17CPlasmaProjectileCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__17CPlasmaProjectileCFRC14CFrustumPlanesRC13CStateManager: +/* 801781A0 00175100 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 801781A4 00175104 7C 08 02 A6 */ mflr r0 +/* 801781A8 00175108 90 01 00 44 */ stw r0, 0x44(r1) +/* 801781AC 0017510C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 801781B0 00175110 7C BF 2B 78 */ mr r31, r5 +/* 801781B4 00175114 93 C1 00 38 */ stw r30, 0x38(r1) +/* 801781B8 00175118 7C 7E 1B 78 */ mr r30, r3 +/* 801781BC 0017511C 88 03 00 30 */ lbz r0, 0x30(r3) +/* 801781C0 00175120 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801781C4 00175124 41 82 00 40 */ beq lbl_80178204 +/* 801781C8 00175128 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801781CC 0017512C 80 9E 05 18 */ lwz r4, 0x518(r30) +/* 801781D0 00175130 81 83 00 00 */ lwz r12, 0(r3) +/* 801781D4 00175134 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801781D8 00175138 7D 89 03 A6 */ mtctr r12 +/* 801781DC 0017513C 4E 80 04 21 */ bctrl +/* 801781E0 00175140 80 1E 04 78 */ lwz r0, 0x478(r30) +/* 801781E4 00175144 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e +/* 801781E8 00175148 41 82 00 1C */ beq lbl_80178204 +/* 801781EC 0017514C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 801781F0 00175150 80 9E 05 1C */ lwz r4, 0x51c(r30) +/* 801781F4 00175154 81 83 00 00 */ lwz r12, 0(r3) +/* 801781F8 00175158 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 801781FC 0017515C 7D 89 03 A6 */ mtctr r12 +/* 80178200 00175160 4E 80 04 21 */ bctrl +lbl_80178204: +/* 80178204 00175164 C0 5E 03 50 */ lfs f2, 0x350(r30) +/* 80178208 00175168 7F C4 F3 78 */ mr r4, r30 +/* 8017820C 0017516C C0 3E 03 40 */ lfs f1, 0x340(r30) +/* 80178210 00175170 7F E5 FB 78 */ mr r5, r31 +/* 80178214 00175174 C0 1E 03 30 */ lfs f0, 0x330(r30) +/* 80178218 00175178 38 61 00 14 */ addi r3, r1, 0x14 +/* 8017821C 0017517C D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80178220 00175180 D0 01 00 08 */ stfs f0, 8(r1) +/* 80178224 00175184 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 80178228 00175188 81 9E 00 00 */ lwz r12, 0(r30) +/* 8017822C 0017518C 81 8C 00 64 */ lwz r12, 0x64(r12) +/* 80178230 00175190 7D 89 03 A6 */ mtctr r12 +/* 80178234 00175194 4E 80 04 21 */ bctrl +/* 80178238 00175198 7F C3 F3 78 */ mr r3, r30 +/* 8017823C 0017519C 7F E4 FB 78 */ mr r4, r31 +/* 80178240 001751A0 38 A1 00 08 */ addi r5, r1, 8 +/* 80178244 001751A4 38 C1 00 14 */ addi r6, r1, 0x14 +/* 80178248 001751A8 4B ED C8 61 */ bl EnsureRendered__6CActorCFRC13CStateManagerRC9CVector3f +/* 8017824C 001751AC 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80178250 001751B0 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80178254 001751B4 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80178258 001751B8 7C 08 03 A6 */ mtlr r0 +/* 8017825C 001751BC 38 21 00 40 */ addi r1, r1, 0x40 +/* 80178260 001751C0 4E 80 00 20 */ blr + +.global CanRenderUnsorted__17CPlasmaProjectileCFRC13CStateManager +CanRenderUnsorted__17CPlasmaProjectileCFRC13CStateManager: +/* 80178264 001751C4 38 60 00 00 */ li r3, 0 +/* 80178268 001751C8 4E 80 00 20 */ blr + +.global UpdateFx__17CPlasmaProjectileFRC12CTransform4ffR13CStateManager +UpdateFx__17CPlasmaProjectileFRC12CTransform4ffR13CStateManager: +/* 8017826C 001751CC 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 80178270 001751D0 7C 08 02 A6 */ mflr r0 +/* 80178274 001751D4 90 01 00 84 */ stw r0, 0x84(r1) +/* 80178278 001751D8 DB E1 00 70 */ stfd f31, 0x70(r1) +/* 8017827C 001751DC F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 80178280 001751E0 DB C1 00 60 */ stfd f30, 0x60(r1) +/* 80178284 001751E4 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 +/* 80178288 001751E8 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8017828C 001751EC 93 C1 00 58 */ stw r30, 0x58(r1) +/* 80178290 001751F0 93 A1 00 54 */ stw r29, 0x54(r1) +/* 80178294 001751F4 88 03 00 30 */ lbz r0, 0x30(r3) +/* 80178298 001751F8 FF E0 08 90 */ fmr f31, f1 +/* 8017829C 001751FC 7C 7D 1B 78 */ mr r29, r3 +/* 801782A0 00175200 7C 9E 23 78 */ mr r30, r4 +/* 801782A4 00175204 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 801782A8 00175208 7C BF 2B 78 */ mr r31, r5 +/* 801782AC 0017520C 41 82 03 44 */ beq lbl_801785F0 +/* 801782B0 00175210 80 1D 04 F0 */ lwz r0, 0x4f0(r29) +/* 801782B4 00175214 28 00 00 00 */ cmplwi r0, 0 +/* 801782B8 00175218 41 82 00 0C */ beq lbl_801782C4 +/* 801782BC 0017521C 38 80 00 01 */ li r4, 1 +/* 801782C0 00175220 48 00 00 3C */ b lbl_801782FC +lbl_801782C4: +/* 801782C4 00175224 88 1D 04 EC */ lbz r0, 0x4ec(r29) +/* 801782C8 00175228 28 00 00 00 */ cmplwi r0, 0 +/* 801782CC 0017522C 41 82 00 2C */ beq lbl_801782F8 +/* 801782D0 00175230 80 7D 04 E8 */ lwz r3, 0x4e8(r29) +/* 801782D4 00175234 80 03 00 10 */ lwz r0, 0x10(r3) +/* 801782D8 00175238 28 00 00 00 */ cmplwi r0, 0 +/* 801782DC 0017523C 41 82 00 1C */ beq lbl_801782F8 +/* 801782E0 00175240 38 7D 04 E8 */ addi r3, r29, 0x4e8 +/* 801782E4 00175244 48 1C 8B 29 */ bl GetObj__6CTokenFv +/* 801782E8 00175248 80 03 00 04 */ lwz r0, 4(r3) +/* 801782EC 0017524C 38 80 00 01 */ li r4, 1 +/* 801782F0 00175250 90 1D 04 F0 */ stw r0, 0x4f0(r29) +/* 801782F4 00175254 48 00 00 08 */ b lbl_801782FC +lbl_801782F8: +/* 801782F8 00175258 38 80 00 00 */ li r4, 0 +lbl_801782FC: +/* 801782FC 0017525C 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 80178300 00175260 41 82 00 50 */ beq lbl_80178350 +/* 80178304 00175264 80 1D 04 FC */ lwz r0, 0x4fc(r29) +/* 80178308 00175268 28 00 00 00 */ cmplwi r0, 0 +/* 8017830C 0017526C 41 82 00 0C */ beq lbl_80178318 +/* 80178310 00175270 38 80 00 01 */ li r4, 1 +/* 80178314 00175274 48 00 00 3C */ b lbl_80178350 +lbl_80178318: +/* 80178318 00175278 88 1D 04 F8 */ lbz r0, 0x4f8(r29) +/* 8017831C 0017527C 28 00 00 00 */ cmplwi r0, 0 +/* 80178320 00175280 41 82 00 2C */ beq lbl_8017834C +/* 80178324 00175284 80 7D 04 F4 */ lwz r3, 0x4f4(r29) +/* 80178328 00175288 80 03 00 10 */ lwz r0, 0x10(r3) +/* 8017832C 0017528C 28 00 00 00 */ cmplwi r0, 0 +/* 80178330 00175290 41 82 00 1C */ beq lbl_8017834C +/* 80178334 00175294 38 7D 04 F4 */ addi r3, r29, 0x4f4 +/* 80178338 00175298 48 1C 8A D5 */ bl GetObj__6CTokenFv +/* 8017833C 0017529C 80 03 00 04 */ lwz r0, 4(r3) +/* 80178340 001752A0 38 80 00 01 */ li r4, 1 +/* 80178344 001752A4 90 1D 04 FC */ stw r0, 0x4fc(r29) +/* 80178348 001752A8 48 00 00 08 */ b lbl_80178350 +lbl_8017834C: +/* 8017834C 001752AC 38 80 00 00 */ li r4, 0 +lbl_80178350: +/* 80178350 001752B0 88 7D 05 48 */ lbz r3, 0x548(r29) +/* 80178354 001752B4 50 83 26 F6 */ rlwimi r3, r4, 4, 0x1b, 0x1b +/* 80178358 001752B8 38 00 00 00 */ li r0, 0 +/* 8017835C 001752BC 98 7D 05 48 */ stb r3, 0x548(r29) +/* 80178360 001752C0 80 7D 04 B4 */ lwz r3, 0x4b4(r29) +/* 80178364 001752C4 2C 03 00 01 */ cmpwi r3, 1 +/* 80178368 001752C8 41 82 00 0C */ beq lbl_80178374 +/* 8017836C 001752CC 2C 03 00 02 */ cmpwi r3, 2 +/* 80178370 001752D0 40 82 00 08 */ bne lbl_80178378 +lbl_80178374: +/* 80178374 001752D4 38 00 00 01 */ li r0, 1 +lbl_80178378: +/* 80178378 001752D8 54 03 06 3E */ clrlwi r3, r0, 0x18 +/* 8017837C 001752DC 88 1D 04 64 */ lbz r0, 0x464(r29) +/* 80178380 001752E0 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80178384 001752E4 FC 20 F8 90 */ fmr f1, f31 +/* 80178388 001752E8 98 1D 04 64 */ stb r0, 0x464(r29) +/* 8017838C 001752EC 7F A3 EB 78 */ mr r3, r29 +/* 80178390 001752F0 7F C4 F3 78 */ mr r4, r30 +/* 80178394 001752F4 7F E5 FB 78 */ mr r5, r31 +/* 80178398 001752F8 48 02 0A 49 */ bl UpdateFx__15CBeamProjectileFRC12CTransform4ffR13CStateManager +/* 8017839C 001752FC FC 20 F8 90 */ fmr f1, f31 +/* 801783A0 00175300 7F A3 EB 78 */ mr r3, r29 +/* 801783A4 00175304 7F E4 FB 78 */ mr r4, r31 +/* 801783A8 00175308 48 00 02 75 */ bl UpdatePlayerEffects__17CPlasmaProjectileFfR13CStateManager +/* 801783AC 0017530C 80 1D 04 78 */ lwz r0, 0x478(r29) +/* 801783B0 00175310 38 9D 04 00 */ addi r4, r29, 0x400 +/* 801783B4 00175314 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 801783B8 00175318 41 82 00 60 */ beq lbl_80178418 +/* 801783BC 0017531C 38 00 00 07 */ li r0, 7 +/* 801783C0 00175320 38 C0 00 01 */ li r6, 1 +/* 801783C4 00175324 7C 09 03 A6 */ mtctr r0 +lbl_801783C8: +/* 801783C8 00175328 20 A6 00 08 */ subfic r5, r6, 8 +/* 801783CC 0017532C 38 C6 00 01 */ addi r6, r6, 1 +/* 801783D0 00175330 38 05 FF FF */ addi r0, r5, -1 +/* 801783D4 00175334 1C 60 00 0C */ mulli r3, r0, 0xc +/* 801783D8 00175338 1C 05 00 0C */ mulli r0, r5, 0xc +/* 801783DC 0017533C 7C 64 1A 14 */ add r3, r4, r3 +/* 801783E0 00175340 C0 03 00 04 */ lfs f0, 4(r3) +/* 801783E4 00175344 7C A4 02 14 */ add r5, r4, r0 +/* 801783E8 00175348 D0 05 00 04 */ stfs f0, 4(r5) +/* 801783EC 0017534C C0 03 00 08 */ lfs f0, 8(r3) +/* 801783F0 00175350 D0 05 00 08 */ stfs f0, 8(r5) +/* 801783F4 00175354 C0 03 00 0C */ lfs f0, 0xc(r3) +/* 801783F8 00175358 D0 05 00 0C */ stfs f0, 0xc(r5) +/* 801783FC 0017535C 42 00 FF CC */ bdnz lbl_801783C8 +/* 80178400 00175360 C0 1D 03 18 */ lfs f0, 0x318(r29) +/* 80178404 00175364 D0 04 00 04 */ stfs f0, 4(r4) +/* 80178408 00175368 C0 1D 03 1C */ lfs f0, 0x31c(r29) +/* 8017840C 0017536C D0 04 00 08 */ stfs f0, 8(r4) +/* 80178410 00175370 C0 1D 03 20 */ lfs f0, 0x320(r29) +/* 80178414 00175374 D0 04 00 0C */ stfs f0, 0xc(r4) +lbl_80178418: +/* 80178418 00175378 80 1D 02 F8 */ lwz r0, 0x2f8(r29) +/* 8017841C 0017537C 2C 00 00 00 */ cmpwi r0, 0 +/* 80178420 00175380 41 82 00 10 */ beq lbl_80178430 +/* 80178424 00175384 88 1D 05 48 */ lbz r0, 0x548(r29) +/* 80178428 00175388 54 03 D7 FE */ rlwinm r3, r0, 0x1a, 0x1f, 0x1f +/* 8017842C 0017538C 48 00 00 08 */ b lbl_80178434 +lbl_80178430: +/* 80178430 00175390 38 60 00 00 */ li r3, 0 +lbl_80178434: +/* 80178434 00175394 80 1D 05 18 */ lwz r0, 0x518(r29) +/* 80178438 00175398 28 00 00 00 */ cmplwi r0, 0 +/* 8017843C 0017539C 41 82 01 1C */ beq lbl_80178558 +/* 80178440 001753A0 C0 1D 04 D4 */ lfs f0, 0x4d4(r29) +/* 80178444 001753A4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80178448 001753A8 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 8017844C 001753AC D0 1D 04 D4 */ stfs f0, 0x4d4(r29) +/* 80178450 001753B0 41 82 00 D8 */ beq lbl_80178528 +/* 80178454 001753B4 C0 3D 04 D4 */ lfs f1, 0x4d4(r29) +/* 80178458 001753B8 C0 02 A1 C0 */ lfs f0, lbl_805ABEE0@sda21(r2) +/* 8017845C 001753BC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80178460 001753C0 4C 40 13 82 */ cror 2, 0, 2 +/* 80178464 001753C4 40 82 00 C4 */ bne lbl_80178528 +/* 80178468 001753C8 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8017846C 001753CC 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 80178470 001753D0 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 80178474 001753D4 83 DD 05 18 */ lwz r30, 0x518(r29) +/* 80178478 001753D8 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 8017847C 001753DC 38 61 00 20 */ addi r3, r1, 0x20 +/* 80178480 001753E0 38 BD 03 0C */ addi r5, r29, 0x30c +/* 80178484 001753E4 48 19 B6 8D */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 80178488 001753E8 7F C3 F3 78 */ mr r3, r30 +/* 8017848C 001753EC 38 81 00 20 */ addi r4, r1, 0x20 +/* 80178490 001753F0 81 9E 00 00 */ lwz r12, 0(r30) +/* 80178494 001753F4 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80178498 001753F8 7D 89 03 A6 */ mtctr r12 +/* 8017849C 001753FC 4E 80 04 21 */ bctrl +/* 801784A0 00175400 C0 62 A2 0C */ lfs f3, lbl_805ABF2C@sda21(r2) +/* 801784A4 00175404 38 81 00 14 */ addi r4, r1, 0x14 +/* 801784A8 00175408 C0 5D 03 10 */ lfs f2, 0x310(r29) +/* 801784AC 0017540C C0 3D 03 14 */ lfs f1, 0x314(r29) +/* 801784B0 00175410 C0 1D 03 0C */ lfs f0, 0x30c(r29) +/* 801784B4 00175414 EC A3 00 B2 */ fmuls f5, f3, f2 +/* 801784B8 00175418 EC 83 00 72 */ fmuls f4, f3, f1 +/* 801784BC 0017541C C0 5D 03 1C */ lfs f2, 0x31c(r29) +/* 801784C0 00175420 EC 63 00 32 */ fmuls f3, f3, f0 +/* 801784C4 00175424 C0 3D 03 20 */ lfs f1, 0x320(r29) +/* 801784C8 00175428 C0 1D 03 18 */ lfs f0, 0x318(r29) +/* 801784CC 0017542C EC 42 28 2A */ fadds f2, f2, f5 +/* 801784D0 00175430 EC 21 20 2A */ fadds f1, f1, f4 +/* 801784D4 00175434 D0 61 00 08 */ stfs f3, 8(r1) +/* 801784D8 00175438 EC 00 18 2A */ fadds f0, f0, f3 +/* 801784DC 0017543C D0 41 00 18 */ stfs f2, 0x18(r1) +/* 801784E0 00175440 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 801784E4 00175444 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 801784E8 00175448 80 7D 05 18 */ lwz r3, 0x518(r29) +/* 801784EC 0017544C D0 A1 00 0C */ stfs f5, 0xc(r1) +/* 801784F0 00175450 81 83 00 00 */ lwz r12, 0(r3) +/* 801784F4 00175454 D0 81 00 10 */ stfs f4, 0x10(r1) +/* 801784F8 00175458 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 801784FC 0017545C 7D 89 03 A6 */ mtctr r12 +/* 80178500 00175460 4E 80 04 21 */ bctrl +/* 80178504 00175464 80 7D 05 18 */ lwz r3, 0x518(r29) +/* 80178508 00175468 38 80 00 01 */ li r4, 1 +/* 8017850C 0017546C 81 83 00 00 */ lwz r12, 0(r3) +/* 80178510 00175470 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80178514 00175474 7D 89 03 A6 */ mtctr r12 +/* 80178518 00175478 4E 80 04 21 */ bctrl +/* 8017851C 0017547C C0 02 A1 E4 */ lfs f0, lbl_805ABF04@sda21(r2) +/* 80178520 00175480 D0 1D 04 D4 */ stfs f0, 0x4d4(r29) +/* 80178524 00175484 48 00 00 1C */ b lbl_80178540 +lbl_80178528: +/* 80178528 00175488 80 7D 05 18 */ lwz r3, 0x518(r29) +/* 8017852C 0017548C 38 80 00 00 */ li r4, 0 +/* 80178530 00175490 81 83 00 00 */ lwz r12, 0(r3) +/* 80178534 00175494 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80178538 00175498 7D 89 03 A6 */ mtctr r12 +/* 8017853C 0017549C 4E 80 04 21 */ bctrl +lbl_80178540: +/* 80178540 001754A0 80 7D 05 18 */ lwz r3, 0x518(r29) +/* 80178544 001754A4 FC 20 F8 90 */ fmr f1, f31 +/* 80178548 001754A8 81 83 00 00 */ lwz r12, 0(r3) +/* 8017854C 001754AC 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80178550 001754B0 7D 89 03 A6 */ mtctr r12 +/* 80178554 001754B4 4E 80 04 21 */ bctrl +lbl_80178558: +/* 80178558 001754B8 FC 20 F8 90 */ fmr f1, f31 +/* 8017855C 001754BC 7F A3 EB 78 */ mr r3, r29 +/* 80178560 001754C0 7F E4 FB 78 */ mr r4, r31 +/* 80178564 001754C4 48 00 05 05 */ bl UpdateBeamState__17CPlasmaProjectileFfR13CStateManager +/* 80178568 001754C8 FC 00 08 90 */ fmr f0, f1 +/* 8017856C 001754CC 7F A3 EB 78 */ mr r3, r29 +/* 80178570 001754D0 FC 20 F8 90 */ fmr f1, f31 +/* 80178574 001754D4 FF C0 00 90 */ fmr f30, f0 +/* 80178578 001754D8 4B FF F2 01 */ bl UpdateEnergyPulse__17CPlasmaProjectileFf +/* 8017857C 001754DC C0 42 A2 10 */ lfs f2, lbl_805ABF30@sda21(r2) +/* 80178580 001754E0 C0 3D 04 C8 */ lfs f1, 0x4c8(r29) +/* 80178584 001754E4 C0 02 A2 14 */ lfs f0, lbl_805ABF34@sda21(r2) +/* 80178588 001754E8 EC 22 0F FA */ fmadds f1, f2, f31, f1 +/* 8017858C 001754EC D0 3D 04 C8 */ stfs f1, 0x4c8(r29) +/* 80178590 001754F0 C0 3D 04 C8 */ lfs f1, 0x4c8(r29) +/* 80178594 001754F4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80178598 001754F8 40 81 00 0C */ ble lbl_801785A4 +/* 8017859C 001754FC C0 02 A1 C0 */ lfs f0, lbl_805ABEE0@sda21(r2) +/* 801785A0 00175500 D0 1D 04 C8 */ stfs f0, 0x4c8(r29) +lbl_801785A4: +/* 801785A4 00175504 C0 3D 02 F4 */ lfs f1, 0x2f4(r29) +/* 801785A8 00175508 C0 02 A2 18 */ lfs f0, lbl_805ABF38@sda21(r2) +/* 801785AC 0017550C EC 3E 00 72 */ fmuls f1, f30, f1 +/* 801785B0 00175510 D0 3D 04 B8 */ stfs f1, 0x4b8(r29) +/* 801785B4 00175514 D3 DD 04 C4 */ stfs f30, 0x4c4(r29) +/* 801785B8 00175518 C0 5D 04 80 */ lfs f2, 0x480(r29) +/* 801785BC 0017551C C0 3D 04 CC */ lfs f1, 0x4cc(r29) +/* 801785C0 00175520 EC 3F 08 BA */ fmadds f1, f31, f2, f1 +/* 801785C4 00175524 D0 3D 04 CC */ stfs f1, 0x4cc(r29) +/* 801785C8 00175528 C0 3D 04 CC */ lfs f1, 0x4cc(r29) +/* 801785CC 0017552C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 801785D0 00175530 40 81 00 0C */ ble lbl_801785DC +/* 801785D4 00175534 C0 02 A1 C0 */ lfs f0, lbl_805ABEE0@sda21(r2) +/* 801785D8 00175538 D0 1D 04 CC */ stfs f0, 0x4cc(r29) +lbl_801785DC: +/* 801785DC 0017553C FC 20 F0 90 */ fmr f1, f30 +/* 801785E0 00175540 7F A3 EB 78 */ mr r3, r29 +/* 801785E4 00175544 FC 40 F8 90 */ fmr f2, f31 +/* 801785E8 00175548 7F E4 FB 78 */ mr r4, r31 +/* 801785EC 0017554C 4B FF E8 B1 */ bl UpdateLights__17CPlasmaProjectileFffR13CStateManager +lbl_801785F0: +/* 801785F0 00175550 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 801785F4 00175554 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 801785F8 00175558 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 +/* 801785FC 0017555C CB C1 00 60 */ lfd f30, 0x60(r1) +/* 80178600 00175560 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 80178604 00175564 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 80178608 00175568 80 01 00 84 */ lwz r0, 0x84(r1) +/* 8017860C 0017556C 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 80178610 00175570 7C 08 03 A6 */ mtlr r0 +/* 80178614 00175574 38 21 00 80 */ addi r1, r1, 0x80 +/* 80178618 00175578 4E 80 00 20 */ blr + +.global UpdatePlayerEffects__17CPlasmaProjectileFfR13CStateManager +UpdatePlayerEffects__17CPlasmaProjectileFfR13CStateManager: +/* 8017861C 0017557C 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 80178620 00175580 7C 08 02 A6 */ mflr r0 +/* 80178624 00175584 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 80178628 00175588 DB E1 00 C0 */ stfd f31, 0xc0(r1) +/* 8017862C 0017558C F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 +/* 80178630 00175590 93 E1 00 BC */ stw r31, 0xbc(r1) +/* 80178634 00175594 93 C1 00 B8 */ stw r30, 0xb8(r1) +/* 80178638 00175598 93 A1 00 B4 */ stw r29, 0xb4(r1) +/* 8017863C 0017559C 7C 7D 1B 78 */ mr r29, r3 +/* 80178640 001755A0 FF E0 08 90 */ fmr f31, f1 +/* 80178644 001755A4 C0 03 04 DC */ lfs f0, 0x4dc(r3) +/* 80178648 001755A8 7C 9E 23 78 */ mr r30, r4 +/* 8017864C 001755AC 83 E4 08 4C */ lwz r31, 0x84c(r4) +/* 80178650 001755B0 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 80178654 001755B4 D0 03 04 DC */ stfs f0, 0x4dc(r3) +/* 80178658 001755B8 80 03 04 B4 */ lwz r0, 0x4b4(r3) +/* 8017865C 001755BC 2C 00 00 01 */ cmpwi r0, 1 +/* 80178660 001755C0 41 82 00 0C */ beq lbl_8017866C +/* 80178664 001755C4 2C 00 00 02 */ cmpwi r0, 2 +/* 80178668 001755C8 40 82 02 14 */ bne lbl_8017887C +lbl_8017866C: +/* 8017866C 001755CC C0 3D 04 DC */ lfs f1, 0x4dc(r29) +/* 80178670 001755D0 C0 02 A1 C0 */ lfs f0, lbl_805ABEE0@sda21(r2) +/* 80178674 001755D4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80178678 001755D8 4C 40 13 82 */ cror 2, 0, 2 +/* 8017867C 001755DC 40 82 02 00 */ bne lbl_8017887C +/* 80178680 001755E0 80 1D 02 F8 */ lwz r0, 0x2f8(r29) +/* 80178684 001755E4 2C 00 00 01 */ cmpwi r0, 1 +/* 80178688 001755E8 40 82 01 F4 */ bne lbl_8017887C +/* 8017868C 001755EC A0 7D 02 FE */ lhz r3, 0x2fe(r29) +/* 80178690 001755F0 A0 1F 00 08 */ lhz r0, 8(r31) +/* 80178694 001755F4 7C 03 00 40 */ cmplw r3, r0 +/* 80178698 001755F8 40 82 01 E4 */ bne lbl_8017887C +/* 8017869C 001755FC 80 1D 04 78 */ lwz r0, 0x478(r29) +/* 801786A0 00175600 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c +/* 801786A4 00175604 41 82 00 2C */ beq lbl_801786D0 +/* 801786A8 00175608 88 9D 05 48 */ lbz r4, 0x548(r29) +/* 801786AC 0017560C 54 80 F7 FE */ rlwinm r0, r4, 0x1e, 0x1f, 0x1f +/* 801786B0 00175610 28 00 00 01 */ cmplwi r0, 1 +/* 801786B4 00175614 41 82 00 1C */ beq lbl_801786D0 +/* 801786B8 00175618 38 00 00 01 */ li r0, 1 +/* 801786BC 0017561C 7F E3 FB 78 */ mr r3, r31 +/* 801786C0 00175620 50 04 17 7A */ rlwimi r4, r0, 2, 0x1d, 0x1d +/* 801786C4 00175624 98 9D 05 48 */ stb r4, 0x548(r29) +/* 801786C8 00175628 D0 1D 04 E4 */ stfs f0, 0x4e4(r29) +/* 801786CC 0017562C 4B E9 92 91 */ bl IncrementPhazon__7CPlayerFv +lbl_801786D0: +/* 801786D0 00175630 80 1D 00 F0 */ lwz r0, 0xf0(r29) +/* 801786D4 00175634 2C 00 00 02 */ cmpwi r0, 2 +/* 801786D8 00175638 41 82 00 3C */ beq lbl_80178714 +/* 801786DC 0017563C 40 80 00 10 */ bge lbl_801786EC +/* 801786E0 00175640 2C 00 00 01 */ cmpwi r0, 1 +/* 801786E4 00175644 40 80 00 14 */ bge lbl_801786F8 +/* 801786E8 00175648 48 00 01 8C */ b lbl_80178874 +lbl_801786EC: +/* 801786EC 0017564C 2C 00 00 04 */ cmpwi r0, 4 +/* 801786F0 00175650 40 80 01 84 */ bge lbl_80178874 +/* 801786F4 00175654 48 00 01 14 */ b lbl_80178808 +lbl_801786F8: +/* 801786F8 00175658 A0 DD 05 44 */ lhz r6, 0x544(r29) +/* 801786FC 0017565C 7F E3 FB 78 */ mr r3, r31 +/* 80178700 00175660 80 BD 05 24 */ lwz r5, 0x524(r29) +/* 80178704 00175664 7F C4 F3 78 */ mr r4, r30 +/* 80178708 00175668 80 FD 05 28 */ lwz r7, 0x528(r29) +/* 8017870C 0017566C 4B E9 D6 09 */ bl Freeze__7CPlayerFR13CStateManagerUiUsUi +/* 80178710 00175670 48 00 01 64 */ b lbl_80178874 +lbl_80178714: +/* 80178714 00175674 88 1D 05 34 */ lbz r0, 0x534(r29) +/* 80178718 00175678 28 00 00 00 */ cmplwi r0, 0 +/* 8017871C 0017567C 41 82 01 58 */ beq lbl_80178874 +/* 80178720 00175680 38 00 00 00 */ li r0, 0 +/* 80178724 00175684 3C 60 80 3D */ lis r3, lbl_803D0668@ha +/* 80178728 00175688 38 83 06 68 */ addi r4, r3, lbl_803D0668@l +/* 8017872C 0017568C 98 01 00 68 */ stb r0, 0x68(r1) +/* 80178730 00175690 38 61 00 50 */ addi r3, r1, 0x50 +/* 80178734 00175694 38 84 00 07 */ addi r4, r4, 7 +/* 80178738 00175698 4B E8 C5 81 */ bl string_l__4rstlFPCc +/* 8017873C 0017569C 7F A3 EB 78 */ mr r3, r29 +/* 80178740 001756A0 7F C7 F3 78 */ mr r7, r30 +/* 80178744 001756A4 38 81 00 60 */ addi r4, r1, 0x60 +/* 80178748 001756A8 38 BD 05 2C */ addi r5, r29, 0x52c +/* 8017874C 001756AC 38 C1 00 50 */ addi r6, r1, 0x50 +/* 80178750 001756B0 48 00 02 1D */ bl "MakeBillboardEffect__17CPlasmaProjectileFRCQ24rstl44optional_object<25TToken<15CGenDescription>>RCQ24rstl49optional_object<30TToken<20CElectricDescription>>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>R13CStateManager" +/* 80178754 001756B4 38 61 00 50 */ addi r3, r1, 0x50 +/* 80178758 001756B8 48 1C 53 89 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8017875C 001756BC 88 01 00 68 */ lbz r0, 0x68(r1) +/* 80178760 001756C0 28 00 00 00 */ cmplwi r0, 0 +/* 80178764 001756C4 41 82 00 14 */ beq lbl_80178778 +/* 80178768 001756C8 34 61 00 60 */ addic. r3, r1, 0x60 +/* 8017876C 001756CC 41 82 00 0C */ beq lbl_80178778 +/* 80178770 001756D0 38 80 00 00 */ li r4, 0 +/* 80178774 001756D4 48 1C 86 CD */ bl __dt__6CTokenFv +lbl_80178778: +/* 80178778 001756D8 38 00 00 00 */ li r0, 0 +/* 8017877C 001756DC A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80178780 001756E0 98 01 00 68 */ stb r0, 0x68(r1) +/* 80178784 001756E4 38 61 00 30 */ addi r3, r1, 0x30 +/* 80178788 001756E8 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8017878C 001756EC 38 A0 00 7F */ li r5, 0x7f +/* 80178790 001756F0 A0 9D 05 46 */ lhz r4, 0x546(r29) +/* 80178794 001756F4 38 C0 00 40 */ li r6, 0x40 +/* 80178798 001756F8 38 E0 00 00 */ li r7, 0 +/* 8017879C 001756FC 39 20 00 00 */ li r9, 0 +/* 801787A0 00175700 48 17 15 D5 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 801787A4 00175704 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 801787A8 00175708 C0 22 A2 1C */ lfs f1, lbl_805ABF3C@sda21(r2) +/* 801787AC 0017570C C0 42 80 F8 */ lfs f2, lbl_805A9E18@sda21(r2) +/* 801787B0 00175710 C0 62 80 FC */ lfs f3, lbl_805A9E1C@sda21(r2) +/* 801787B4 00175714 4B E9 A8 B9 */ bl SetHudDisable__7CPlayerFfff +/* 801787B8 00175718 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 801787BC 0017571C 7F C6 F3 78 */ mr r6, r30 +/* 801787C0 00175720 38 81 00 2C */ addi r4, r1, 0x2c +/* 801787C4 00175724 38 A0 00 08 */ li r5, 8 +/* 801787C8 00175728 A0 03 03 10 */ lhz r0, 0x310(r3) +/* 801787CC 0017572C B0 01 00 2C */ sth r0, 0x2c(r1) +/* 801787D0 00175730 B0 01 00 28 */ sth r0, 0x28(r1) +/* 801787D4 00175734 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 801787D8 00175738 48 00 2A 7D */ bl SetOrbitRequestForTarget__7CPlayerF9TUniqueId19EPlayerOrbitRequestR13CStateManager +/* 801787DC 0017573C A0 1D 00 08 */ lhz r0, 8(r29) +/* 801787E0 00175740 38 81 00 24 */ addi r4, r1, 0x24 +/* 801787E4 00175744 C0 22 A2 20 */ lfs f1, lbl_805ABF40@sda21(r2) +/* 801787E8 00175748 B0 01 00 24 */ sth r0, 0x24(r1) +/* 801787EC 0017574C C0 42 A2 1C */ lfs f2, lbl_805ABF3C@sda21(r2) +/* 801787F0 00175750 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 801787F4 00175754 B0 01 00 20 */ sth r0, 0x20(r1) +/* 801787F8 00175758 80 63 00 00 */ lwz r3, 0(r3) +/* 801787FC 0017575C 38 63 01 88 */ addi r3, r3, 0x188 +/* 80178800 00175760 48 04 83 39 */ bl AddSource__19CStaticInterferenceF9TUniqueId +/* 80178804 00175764 48 00 00 70 */ b lbl_80178874 +lbl_80178808: +/* 80178808 00175768 88 1D 05 40 */ lbz r0, 0x540(r29) +/* 8017880C 0017576C 28 00 00 00 */ cmplwi r0, 0 +/* 80178810 00175770 41 82 00 64 */ beq lbl_80178874 +/* 80178814 00175774 38 00 00 00 */ li r0, 0 +/* 80178818 00175778 3C 60 80 3D */ lis r3, lbl_803D0668@ha +/* 8017881C 0017577C 38 83 06 68 */ addi r4, r3, lbl_803D0668@l +/* 80178820 00175780 98 01 00 4C */ stb r0, 0x4c(r1) +/* 80178824 00175784 38 61 00 34 */ addi r3, r1, 0x34 +/* 80178828 00175788 38 84 00 18 */ addi r4, r4, 0x18 +/* 8017882C 0017578C 4B E8 C4 8D */ bl string_l__4rstlFPCc +/* 80178830 00175790 7F A3 EB 78 */ mr r3, r29 +/* 80178834 00175794 7F C7 F3 78 */ mr r7, r30 +/* 80178838 00175798 38 9D 05 38 */ addi r4, r29, 0x538 +/* 8017883C 0017579C 38 A1 00 44 */ addi r5, r1, 0x44 +/* 80178840 001757A0 38 C1 00 34 */ addi r6, r1, 0x34 +/* 80178844 001757A4 48 00 01 29 */ bl "MakeBillboardEffect__17CPlasmaProjectileFRCQ24rstl44optional_object<25TToken<15CGenDescription>>RCQ24rstl49optional_object<30TToken<20CElectricDescription>>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>R13CStateManager" +/* 80178848 001757A8 38 61 00 34 */ addi r3, r1, 0x34 +/* 8017884C 001757AC 48 1C 52 95 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80178850 001757B0 88 01 00 4C */ lbz r0, 0x4c(r1) +/* 80178854 001757B4 28 00 00 00 */ cmplwi r0, 0 +/* 80178858 001757B8 41 82 00 14 */ beq lbl_8017886C +/* 8017885C 001757BC 34 61 00 44 */ addic. r3, r1, 0x44 +/* 80178860 001757C0 41 82 00 0C */ beq lbl_8017886C +/* 80178864 001757C4 38 80 00 00 */ li r4, 0 +/* 80178868 001757C8 48 1C 85 D9 */ bl __dt__6CTokenFv +lbl_8017886C: +/* 8017886C 001757CC 38 00 00 00 */ li r0, 0 +/* 80178870 001757D0 98 01 00 4C */ stb r0, 0x4c(r1) +lbl_80178874: +/* 80178874 001757D4 C0 02 A2 24 */ lfs f0, lbl_805ABF44@sda21(r2) +/* 80178878 001757D8 D0 1D 04 DC */ stfs f0, 0x4dc(r29) +lbl_8017887C: +/* 8017887C 001757DC 88 1D 05 48 */ lbz r0, 0x548(r29) +/* 80178880 001757E0 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 80178884 001757E4 41 82 00 C4 */ beq lbl_80178948 +/* 80178888 001757E8 80 1D 00 F8 */ lwz r0, 0xf8(r29) +/* 8017888C 001757EC FC 20 F8 90 */ fmr f1, f31 +/* 80178890 001757F0 80 BD 00 FC */ lwz r5, 0xfc(r29) +/* 80178894 001757F4 38 61 00 88 */ addi r3, r1, 0x88 +/* 80178898 001757F8 38 9D 04 98 */ addi r4, r29, 0x498 +/* 8017889C 001757FC 90 A1 00 74 */ stw r5, 0x74(r1) +/* 801788A0 00175800 90 01 00 70 */ stw r0, 0x70(r1) +/* 801788A4 00175804 80 1D 01 00 */ lwz r0, 0x100(r29) +/* 801788A8 00175808 80 BD 01 04 */ lwz r5, 0x104(r29) +/* 801788AC 0017580C 90 A1 00 7C */ stw r5, 0x7c(r1) +/* 801788B0 00175810 90 01 00 78 */ stw r0, 0x78(r1) +/* 801788B4 00175814 80 1D 01 08 */ lwz r0, 0x108(r29) +/* 801788B8 00175818 90 01 00 80 */ stw r0, 0x80(r1) +/* 801788BC 0017581C A0 1D 00 EC */ lhz r0, 0xec(r29) +/* 801788C0 00175820 B0 01 00 0C */ sth r0, 0xc(r1) +/* 801788C4 00175824 A0 BF 00 08 */ lhz r5, 8(r31) +/* 801788C8 00175828 B0 01 00 08 */ sth r0, 8(r1) +/* 801788CC 0017582C B0 A1 00 14 */ sth r5, 0x14(r1) +/* 801788D0 00175830 A0 1D 00 08 */ lhz r0, 8(r29) +/* 801788D4 00175834 B0 A1 00 10 */ sth r5, 0x10(r1) +/* 801788D8 00175838 B0 01 00 18 */ sth r0, 0x18(r1) +/* 801788DC 0017583C B0 01 00 1C */ sth r0, 0x1c(r1) +/* 801788E0 00175840 4B F4 AB 69 */ bl __ct__11CDamageInfoFRC11CDamageInfof +/* 801788E4 00175844 3C 80 80 5A */ lis r4, skZero3f@ha +/* 801788E8 00175848 7F C3 F3 78 */ mr r3, r30 +/* 801788EC 0017584C 39 24 66 A0 */ addi r9, r4, skZero3f@l +/* 801788F0 00175850 38 A1 00 14 */ addi r5, r1, 0x14 +/* 801788F4 00175854 38 81 00 1C */ addi r4, r1, 0x1c +/* 801788F8 00175858 38 C1 00 0C */ addi r6, r1, 0xc +/* 801788FC 0017585C 38 E1 00 88 */ addi r7, r1, 0x88 +/* 80178900 00175860 39 01 00 70 */ addi r8, r1, 0x70 +/* 80178904 00175864 4B ED 17 9D */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 80178908 00175868 C0 1D 04 E4 */ lfs f0, 0x4e4(r29) +/* 8017890C 0017586C EC 00 F8 2A */ fadds f0, f0, f31 +/* 80178910 00175870 D0 1D 04 E4 */ stfs f0, 0x4e4(r29) +/* 80178914 00175874 C0 3D 04 E4 */ lfs f1, 0x4e4(r29) +/* 80178918 00175878 C0 1D 04 E0 */ lfs f0, 0x4e0(r29) +/* 8017891C 0017587C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80178920 00175880 4C 41 13 82 */ cror 2, 1, 2 +/* 80178924 00175884 40 82 00 24 */ bne lbl_80178948 +/* 80178928 00175888 7F E3 FB 78 */ mr r3, r31 +/* 8017892C 0017588C 4B E9 90 19 */ bl DecrementPhazon__7CPlayerFv +/* 80178930 00175890 C0 02 A1 C0 */ lfs f0, lbl_805ABEE0@sda21(r2) +/* 80178934 00175894 38 60 00 00 */ li r3, 0 +/* 80178938 00175898 D0 1D 04 E4 */ stfs f0, 0x4e4(r29) +/* 8017893C 0017589C 88 1D 05 48 */ lbz r0, 0x548(r29) +/* 80178940 001758A0 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 80178944 001758A4 98 1D 05 48 */ stb r0, 0x548(r29) +lbl_80178948: +/* 80178948 001758A8 E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 +/* 8017894C 001758AC 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 80178950 001758B0 CB E1 00 C0 */ lfd f31, 0xc0(r1) +/* 80178954 001758B4 83 E1 00 BC */ lwz r31, 0xbc(r1) +/* 80178958 001758B8 83 C1 00 B8 */ lwz r30, 0xb8(r1) +/* 8017895C 001758BC 83 A1 00 B4 */ lwz r29, 0xb4(r1) +/* 80178960 001758C0 7C 08 03 A6 */ mtlr r0 +/* 80178964 001758C4 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 80178968 001758C8 4E 80 00 20 */ blr + +.global "MakeBillboardEffect__17CPlasmaProjectileFRCQ24rstl44optional_object<25TToken<15CGenDescription>>RCQ24rstl49optional_object<30TToken<20CElectricDescription>>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>R13CStateManager" +"MakeBillboardEffect__17CPlasmaProjectileFRCQ24rstl44optional_object<25TToken<15CGenDescription>>RCQ24rstl49optional_object<30TToken<20CElectricDescription>>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>R13CStateManager": +/* 8017896C 001758CC 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80178970 001758D0 7C 08 02 A6 */ mflr r0 +/* 80178974 001758D4 3C 60 80 3D */ lis r3, lbl_803D0668@ha +/* 80178978 001758D8 90 01 00 64 */ stw r0, 0x64(r1) +/* 8017897C 001758DC 38 03 06 68 */ addi r0, r3, lbl_803D0668@l +/* 80178980 001758E0 38 60 01 10 */ li r3, 0x110 +/* 80178984 001758E4 BF 21 00 44 */ stmw r25, 0x44(r1) +/* 80178988 001758E8 7C BA 2B 78 */ mr r26, r5 +/* 8017898C 001758EC 7C 99 23 78 */ mr r25, r4 +/* 80178990 001758F0 7C DB 33 78 */ mr r27, r6 +/* 80178994 001758F4 7C FC 3B 78 */ mr r28, r7 +/* 80178998 001758F8 7C 04 03 78 */ mr r4, r0 +/* 8017899C 001758FC 38 A0 00 00 */ li r5, 0 +/* 801789A0 00175900 48 19 CE CD */ bl __nw__FUlPCcPCc +/* 801789A4 00175904 7C 7D 1B 79 */ or. r29, r3, r3 +/* 801789A8 00175908 41 82 00 A0 */ beq lbl_80178A48 +/* 801789AC 0017590C C0 22 A1 C0 */ lfs f1, lbl_805ABEE0@sda21(r2) +/* 801789B0 00175910 7F 84 E3 78 */ mr r4, r28 +/* 801789B4 00175914 C0 02 A1 FC */ lfs f0, lbl_805ABF1C@sda21(r2) +/* 801789B8 00175918 38 61 00 10 */ addi r3, r1, 0x10 +/* 801789BC 0017591C D0 21 00 28 */ stfs f1, 0x28(r1) +/* 801789C0 00175920 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 801789C4 00175924 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 801789C8 00175928 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 801789CC 0017592C D0 01 00 20 */ stfs f0, 0x20(r1) +/* 801789D0 00175930 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 801789D4 00175934 4B ED 47 09 */ bl AllocateUniqueId__13CStateManagerFv +/* 801789D8 00175938 C0 22 A1 FC */ lfs f1, lbl_805ABF1C@sda21(r2) +/* 801789DC 0017593C 38 61 00 18 */ addi r3, r1, 0x18 +/* 801789E0 00175940 A0 01 00 10 */ lhz r0, 0x10(r1) +/* 801789E4 00175944 FC 40 08 90 */ fmr f2, f1 +/* 801789E8 00175948 FC 60 08 90 */ fmr f3, f1 +/* 801789EC 0017594C B0 01 00 14 */ sth r0, 0x14(r1) +/* 801789F0 00175950 FC 80 08 90 */ fmr f4, f1 +/* 801789F4 00175954 48 1E A9 F9 */ bl __ct__6CColorFffff +/* 801789F8 00175958 7C 7E 1B 78 */ mr r30, r3 +/* 801789FC 0017595C 7F 83 E3 78 */ mr r3, r28 +/* 80178A00 00175960 4B FB 78 2D */ bl GetScaleForPOV__19CHUDBillboardEffectFRC13CStateManager +/* 80178A04 00175964 7C 7F 1B 78 */ mr r31, r3 +/* 80178A08 00175968 7F 83 E3 78 */ mr r3, r28 +/* 80178A0C 0017596C 4B FB 77 ED */ bl GetNearClipDistance__19CHUDBillboardEffectFRC13CStateManager +/* 80178A10 00175970 38 61 00 1C */ addi r3, r1, 0x1c +/* 80178A14 00175974 38 01 00 28 */ addi r0, r1, 0x28 +/* 80178A18 00175978 90 61 00 08 */ stw r3, 8(r1) +/* 80178A1C 0017597C 7F A3 EB 78 */ mr r3, r29 +/* 80178A20 00175980 7F 24 CB 78 */ mr r4, r25 +/* 80178A24 00175984 7F 45 D3 78 */ mr r5, r26 +/* 80178A28 00175988 90 01 00 0C */ stw r0, 0xc(r1) +/* 80178A2C 0017598C 7F 68 DB 78 */ mr r8, r27 +/* 80178A30 00175990 7F E9 FB 78 */ mr r9, r31 +/* 80178A34 00175994 7F CA F3 78 */ mr r10, r30 +/* 80178A38 00175998 38 C1 00 14 */ addi r6, r1, 0x14 +/* 80178A3C 0017599C 38 E0 00 01 */ li r7, 1 +/* 80178A40 001759A0 4B FB 74 B9 */ bl "__ct__19CHUDBillboardEffectFRCQ24rstl44optional_object<25TToken<15CGenDescription>>RCQ24rstl49optional_object<30TToken<20CElectricDescription>>9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>fRC9CVector3fRC6CColorRC9CVector3fRC9CVector3f" +/* 80178A44 001759A4 7C 7D 1B 78 */ mr r29, r3 +lbl_80178A48: +/* 80178A48 001759A8 7F 83 E3 78 */ mr r3, r28 +/* 80178A4C 001759AC 7F A4 EB 78 */ mr r4, r29 +/* 80178A50 001759B0 4B ED 42 A5 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 80178A54 001759B4 BB 21 00 44 */ lmw r25, 0x44(r1) +/* 80178A58 001759B8 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80178A5C 001759BC 7C 08 03 A6 */ mtlr r0 +/* 80178A60 001759C0 38 21 00 60 */ addi r1, r1, 0x60 +/* 80178A64 001759C4 4E 80 00 20 */ blr + +.global UpdateBeamState__17CPlasmaProjectileFfR13CStateManager +UpdateBeamState__17CPlasmaProjectileFfR13CStateManager: +/* 80178A68 001759C8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80178A6C 001759CC 7C 08 02 A6 */ mflr r0 +/* 80178A70 001759D0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80178A74 001759D4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80178A78 001759D8 7C 9F 23 78 */ mr r31, r4 +/* 80178A7C 001759DC 93 C1 00 08 */ stw r30, 8(r1) +/* 80178A80 001759E0 7C 7E 1B 78 */ mr r30, r3 +/* 80178A84 001759E4 80 03 04 B4 */ lwz r0, 0x4b4(r3) +/* 80178A88 001759E8 2C 00 00 03 */ cmpwi r0, 3 +/* 80178A8C 001759EC 41 82 00 84 */ beq lbl_80178B10 +/* 80178A90 001759F0 40 80 00 14 */ bge lbl_80178AA4 +/* 80178A94 001759F4 2C 00 00 01 */ cmpwi r0, 1 +/* 80178A98 001759F8 41 82 00 18 */ beq lbl_80178AB0 +/* 80178A9C 001759FC 40 80 00 40 */ bge lbl_80178ADC +/* 80178AA0 00175A00 48 00 01 1C */ b lbl_80178BBC +lbl_80178AA4: +/* 80178AA4 00175A04 2C 00 00 05 */ cmpwi r0, 5 +/* 80178AA8 00175A08 40 80 01 14 */ bge lbl_80178BBC +/* 80178AAC 00175A0C 48 00 00 A4 */ b lbl_80178B50 +lbl_80178AB0: +/* 80178AB0 00175A10 C0 5E 04 C0 */ lfs f2, 0x4c0(r30) +/* 80178AB4 00175A14 C0 02 A1 E8 */ lfs f0, lbl_805ABF08@sda21(r2) +/* 80178AB8 00175A18 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80178ABC 00175A1C 40 81 00 10 */ ble lbl_80178ACC +/* 80178AC0 00175A20 38 00 00 02 */ li r0, 2 +/* 80178AC4 00175A24 90 1E 04 B4 */ stw r0, 0x4b4(r30) +/* 80178AC8 00175A28 48 00 00 F4 */ b lbl_80178BBC +lbl_80178ACC: +/* 80178ACC 00175A2C C0 1E 04 88 */ lfs f0, 0x488(r30) +/* 80178AD0 00175A30 EC 01 10 3A */ fmadds f0, f1, f0, f2 +/* 80178AD4 00175A34 D0 1E 04 C0 */ stfs f0, 0x4c0(r30) +/* 80178AD8 00175A38 48 00 00 E4 */ b lbl_80178BBC +lbl_80178ADC: +/* 80178ADC 00175A3C 80 1E 04 78 */ lwz r0, 0x478(r30) +/* 80178AE0 00175A40 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d +/* 80178AE4 00175A44 41 82 00 D8 */ beq lbl_80178BBC +/* 80178AE8 00175A48 C0 5E 04 BC */ lfs f2, 0x4bc(r30) +/* 80178AEC 00175A4C C0 1E 04 7C */ lfs f0, 0x47c(r30) +/* 80178AF0 00175A50 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80178AF4 00175A54 40 81 00 10 */ ble lbl_80178B04 +/* 80178AF8 00175A58 38 00 00 03 */ li r0, 3 +/* 80178AFC 00175A5C 90 1E 04 B4 */ stw r0, 0x4b4(r30) +/* 80178B00 00175A60 48 00 00 BC */ b lbl_80178BBC +lbl_80178B04: +/* 80178B04 00175A64 EC 02 08 2A */ fadds f0, f2, f1 +/* 80178B08 00175A68 D0 1E 04 BC */ stfs f0, 0x4bc(r30) +/* 80178B0C 00175A6C 48 00 00 B0 */ b lbl_80178BBC +lbl_80178B10: +/* 80178B10 00175A70 C0 7E 04 88 */ lfs f3, 0x488(r30) +/* 80178B14 00175A74 C0 5E 04 C0 */ lfs f2, 0x4c0(r30) +/* 80178B18 00175A78 C0 02 A1 FC */ lfs f0, lbl_805ABF1C@sda21(r2) +/* 80178B1C 00175A7C EC 21 10 FA */ fmadds f1, f1, f3, f2 +/* 80178B20 00175A80 D0 3E 04 C0 */ stfs f1, 0x4c0(r30) +/* 80178B24 00175A84 C0 3E 04 C0 */ lfs f1, 0x4c0(r30) +/* 80178B28 00175A88 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80178B2C 00175A8C 40 81 00 90 */ ble lbl_80178BBC +/* 80178B30 00175A90 D0 1E 04 C0 */ stfs f0, 0x4c0(r30) +/* 80178B34 00175A94 38 00 00 04 */ li r0, 4 +/* 80178B38 00175A98 38 60 00 00 */ li r3, 0 +/* 80178B3C 00175A9C 90 1E 04 B4 */ stw r0, 0x4b4(r30) +/* 80178B40 00175AA0 88 1E 05 48 */ lbz r0, 0x548(r30) +/* 80178B44 00175AA4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80178B48 00175AA8 98 1E 05 48 */ stb r0, 0x548(r30) +/* 80178B4C 00175AAC 48 00 00 70 */ b lbl_80178BBC +lbl_80178B50: +/* 80178B50 00175AB0 C0 1E 04 D0 */ lfs f0, 0x4d0(r30) +/* 80178B54 00175AB4 EC 00 08 2A */ fadds f0, f0, f1 +/* 80178B58 00175AB8 D0 1E 04 D0 */ stfs f0, 0x4d0(r30) +/* 80178B5C 00175ABC C0 3E 04 D0 */ lfs f1, 0x4d0(r30) +/* 80178B60 00175AC0 C0 1E 04 84 */ lfs f0, 0x484(r30) +/* 80178B64 00175AC4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80178B68 00175AC8 40 81 00 54 */ ble lbl_80178BBC +/* 80178B6C 00175ACC 80 7E 05 18 */ lwz r3, 0x518(r30) +/* 80178B70 00175AD0 28 03 00 00 */ cmplwi r3, 0 +/* 80178B74 00175AD4 41 82 00 18 */ beq lbl_80178B8C +/* 80178B78 00175AD8 48 19 F3 75 */ bl GetParticleCountAll__11CElementGenCFv +/* 80178B7C 00175ADC 7C 60 00 34 */ cntlzw r0, r3 +/* 80178B80 00175AE0 38 60 00 01 */ li r3, 1 +/* 80178B84 00175AE4 5C 60 07 FE */ rlwnm r0, r3, r0, 0x1f, 0x1f +/* 80178B88 00175AE8 48 00 00 08 */ b lbl_80178B90 +lbl_80178B8C: +/* 80178B8C 00175AEC 38 00 00 01 */ li r0, 1 +lbl_80178B90: +/* 80178B90 00175AF0 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 80178B94 00175AF4 41 82 00 28 */ beq lbl_80178BBC +/* 80178B98 00175AF8 38 00 00 00 */ li r0, 0 +/* 80178B9C 00175AFC 7F C3 F3 78 */ mr r3, r30 +/* 80178BA0 00175B00 90 1E 04 B4 */ stw r0, 0x4b4(r30) +/* 80178BA4 00175B04 7F E4 FB 78 */ mr r4, r31 +/* 80178BA8 00175B08 38 A0 00 01 */ li r5, 1 +/* 80178BAC 00175B0C 81 9E 00 00 */ lwz r12, 0(r30) +/* 80178BB0 00175B10 81 8C 00 74 */ lwz r12, 0x74(r12) +/* 80178BB4 00175B14 7D 89 03 A6 */ mtctr r12 +/* 80178BB8 00175B18 4E 80 04 21 */ bctrl +lbl_80178BBC: +/* 80178BBC 00175B1C C0 5E 04 C0 */ lfs f2, 0x4c0(r30) +/* 80178BC0 00175B20 C0 22 A2 28 */ lfs f1, lbl_805ABF48@sda21(r2) +/* 80178BC4 00175B24 C0 02 A1 FC */ lfs f0, lbl_805ABF1C@sda21(r2) +/* 80178BC8 00175B28 EC 21 00 B2 */ fmuls f1, f1, f2 +/* 80178BCC 00175B2C EC 02 00 28 */ fsubs f0, f2, f0 +/* 80178BD0 00175B30 EC 21 00 32 */ fmuls f1, f1, f0 +/* 80178BD4 00175B34 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80178BD8 00175B38 83 C1 00 08 */ lwz r30, 8(r1) +/* 80178BDC 00175B3C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80178BE0 00175B40 7C 08 03 A6 */ mtlr r0 +/* 80178BE4 00175B44 38 21 00 10 */ addi r1, r1, 0x10 +/* 80178BE8 00175B48 4E 80 00 20 */ blr + +.global Touch__17CPlasmaProjectileFR6CActorR13CStateManager +Touch__17CPlasmaProjectileFR6CActorR13CStateManager: +/* 80178BEC 00175B4C 4E 80 00 20 */ blr + +.global Accept__17CPlasmaProjectileFR8IVisitor +Accept__17CPlasmaProjectileFR8IVisitor: +/* 80178BF0 00175B50 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80178BF4 00175B54 7C 08 02 A6 */ mflr r0 +/* 80178BF8 00175B58 90 01 00 14 */ stw r0, 0x14(r1) +/* 80178BFC 00175B5C 7C 60 1B 78 */ mr r0, r3 +/* 80178C00 00175B60 7C 83 23 78 */ mr r3, r4 +/* 80178C04 00175B64 81 84 00 00 */ lwz r12, 0(r4) +/* 80178C08 00175B68 7C 04 03 78 */ mr r4, r0 +/* 80178C0C 00175B6C 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 80178C10 00175B70 7D 89 03 A6 */ mtctr r12 +/* 80178C14 00175B74 4E 80 04 21 */ bctrl +/* 80178C18 00175B78 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80178C1C 00175B7C 7C 08 03 A6 */ mtlr r0 +/* 80178C20 00175B80 38 21 00 10 */ addi r1, r1, 0x10 +/* 80178C24 00175B84 4E 80 00 20 */ blr + +.global "__ct__17CPlasmaProjectileFRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC9CBeamInfoRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId9TUniqueIdbUi" +"__ct__17CPlasmaProjectileFRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC9CBeamInfoRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId9TUniqueIdbUi": +/* 80178C28 00175B88 94 21 FE C0 */ stwu r1, -0x140(r1) +/* 80178C2C 00175B8C 7C 08 02 A6 */ mflr r0 +/* 80178C30 00175B90 90 01 01 44 */ stw r0, 0x144(r1) +/* 80178C34 00175B94 39 81 00 24 */ addi r12, r1, 0x24 +/* 80178C38 00175B98 39 61 00 28 */ addi r11, r1, 0x28 +/* 80178C3C 00175B9C 38 01 00 20 */ addi r0, r1, 0x20 +/* 80178C40 00175BA0 BF 01 01 20 */ stmw r24, 0x120(r1) +/* 80178C44 00175BA4 7C FE 3B 78 */ mr r30, r7 +/* 80178C48 00175BA8 83 01 01 50 */ lwz r24, 0x150(r1) +/* 80178C4C 00175BAC 7D 07 43 78 */ mr r7, r8 +/* 80178C50 00175BB0 83 41 01 4C */ lwz r26, 0x14c(r1) +/* 80178C54 00175BB4 7C 7F 1B 78 */ mr r31, r3 +/* 80178C58 00175BB8 83 61 01 48 */ lwz r27, 0x148(r1) +/* 80178C5C 00175BBC 83 21 01 5C */ lwz r25, 0x15c(r1) +/* 80178C60 00175BC0 8B 81 01 5B */ lbz r28, 0x15b(r1) +/* 80178C64 00175BC4 83 A1 01 54 */ lwz r29, 0x154(r1) +/* 80178C68 00175BC8 A3 18 00 00 */ lhz r24, 0(r24) +/* 80178C6C 00175BCC B3 01 00 20 */ sth r24, 0x20(r1) +/* 80178C70 00175BD0 83 1A 00 00 */ lwz r24, 0(r26) +/* 80178C74 00175BD4 93 01 00 28 */ stw r24, 0x28(r1) +/* 80178C78 00175BD8 A1 1B 00 00 */ lhz r8, 0(r27) +/* 80178C7C 00175BDC B1 01 00 24 */ sth r8, 0x24(r1) +/* 80178C80 00175BE0 91 81 00 08 */ stw r12, 8(r1) +/* 80178C84 00175BE4 91 61 00 0C */ stw r11, 0xc(r1) +/* 80178C88 00175BE8 90 01 00 10 */ stw r0, 0x10(r1) +/* 80178C8C 00175BEC 93 21 00 14 */ stw r25, 0x14(r1) +/* 80178C90 00175BF0 93 81 00 18 */ stw r28, 0x18(r1) +/* 80178C94 00175BF4 81 1E 00 18 */ lwz r8, 0x18(r30) +/* 80178C98 00175BF8 C0 3E 00 1C */ lfs f1, 0x1c(r30) +/* 80178C9C 00175BFC C0 5E 00 38 */ lfs f2, 0x38(r30) +/* 80178CA0 00175C00 48 02 07 ED */ bl "__ct__15CBeamProjectileFRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC12CTransform4fiff14EMaterialTypesRC11CDamageInfo9TUniqueId9TUniqueIdUib" +/* 80178CA4 00175C04 3C 60 80 3E */ lis r3, lbl_803E3F00@ha +/* 80178CA8 00175C08 C0 22 A1 C0 */ lfs f1, lbl_805ABEE0@sda21(r2) +/* 80178CAC 00175C0C 38 03 3F 00 */ addi r0, r3, lbl_803E3F00@l +/* 80178CB0 00175C10 39 00 FF FF */ li r8, -1 +/* 80178CB4 00175C14 90 1F 00 00 */ stw r0, 0(r31) +/* 80178CB8 00175C18 39 40 00 00 */ li r10, 0 +/* 80178CBC 00175C1C 88 01 00 30 */ lbz r0, 0x30(r1) +/* 80178CC0 00175C20 51 40 3E 30 */ rlwimi r0, r10, 7, 0x18, 0x18 +/* 80178CC4 00175C24 91 5F 04 6C */ stw r10, 0x46c(r31) +/* 80178CC8 00175C28 3D 20 43 30 */ lis r9, 0x4330 +/* 80178CCC 00175C2C 54 07 06 3E */ clrlwi r7, r0, 0x18 +/* 80178CD0 00175C30 88 81 01 14 */ lbz r4, 0x114(r1) +/* 80178CD4 00175C34 91 5F 04 70 */ stw r10, 0x470(r31) +/* 80178CD8 00175C38 51 47 36 72 */ rlwimi r7, r10, 6, 0x19, 0x19 +/* 80178CDC 00175C3C 54 E6 06 3E */ clrlwi r6, r7, 0x18 +/* 80178CE0 00175C40 51 44 3E 30 */ rlwimi r4, r10, 7, 0x18, 0x18 +/* 80178CE4 00175C44 91 5F 04 74 */ stw r10, 0x474(r31) +/* 80178CE8 00175C48 51 46 2E B4 */ rlwimi r6, r10, 5, 0x1a, 0x1a +/* 80178CEC 00175C4C C8 62 A1 D0 */ lfd f3, lbl_805ABEF0@sda21(r2) +/* 80178CF0 00175C50 FC 00 08 18 */ frsp f0, f1 +/* 80178CF4 00175C54 80 BE 00 04 */ lwz r5, 4(r30) +/* 80178CF8 00175C58 3C 60 54 58 */ lis r3, 0x54585452@ha +/* 80178CFC 00175C5C 98 01 00 30 */ stb r0, 0x30(r1) +/* 80178D00 00175C60 38 03 54 52 */ addi r0, r3, 0x54585452@l +/* 80178D04 00175C64 C0 82 A2 2C */ lfs f4, lbl_805ABF4C@sda21(r2) +/* 80178D08 00175C68 90 BF 04 78 */ stw r5, 0x478(r31) +/* 80178D0C 00175C6C 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 80178D10 00175C70 38 A1 00 AC */ addi r5, r1, 0xac +/* 80178D14 00175C74 C0 5E 00 24 */ lfs f2, 0x24(r30) +/* 80178D18 00175C78 98 E1 00 30 */ stb r7, 0x30(r1) +/* 80178D1C 00175C7C D0 5F 04 7C */ stfs f2, 0x47c(r31) +/* 80178D20 00175C80 C0 5E 00 28 */ lfs f2, 0x28(r30) +/* 80178D24 00175C84 91 21 01 18 */ stw r9, 0x118(r1) +/* 80178D28 00175C88 D0 5F 04 80 */ stfs f2, 0x480(r31) +/* 80178D2C 00175C8C C0 5E 00 2C */ lfs f2, 0x2c(r30) +/* 80178D30 00175C90 98 C1 00 30 */ stb r6, 0x30(r1) +/* 80178D34 00175C94 D0 5F 04 84 */ stfs f2, 0x484(r31) +/* 80178D38 00175C98 C0 5E 00 20 */ lfs f2, 0x20(r30) +/* 80178D3C 00175C9C 98 C1 01 00 */ stb r6, 0x100(r1) +/* 80178D40 00175CA0 D0 5F 04 88 */ stfs f2, 0x488(r31) +/* 80178D44 00175CA4 80 FE 00 18 */ lwz r7, 0x18(r30) +/* 80178D48 00175CA8 98 81 01 14 */ stb r4, 0x114(r1) +/* 80178D4C 00175CAC 6C E7 80 00 */ xoris r7, r7, 0x8000 +/* 80178D50 00175CB0 90 E1 01 1C */ stw r7, 0x11c(r1) +/* 80178D54 00175CB4 C8 41 01 18 */ lfd f2, 0x118(r1) +/* 80178D58 00175CB8 91 01 00 2C */ stw r8, 0x2c(r1) +/* 80178D5C 00175CBC EC 42 18 28 */ fsubs f2, f2, f3 +/* 80178D60 00175CC0 91 01 00 FC */ stw r8, 0xfc(r1) +/* 80178D64 00175CC4 EC 44 00 B2 */ fmuls f2, f4, f2 +/* 80178D68 00175CC8 D0 21 01 04 */ stfs f1, 0x104(r1) +/* 80178D6C 00175CCC D0 21 01 08 */ stfs f1, 0x108(r1) +/* 80178D70 00175CD0 D0 5F 04 8C */ stfs f2, 0x48c(r31) +/* 80178D74 00175CD4 80 FE 00 3C */ lwz r7, 0x3c(r30) +/* 80178D78 00175CD8 D0 21 01 0C */ stfs f1, 0x10c(r1) +/* 80178D7C 00175CDC 90 FF 04 90 */ stw r7, 0x490(r31) +/* 80178D80 00175CE0 80 FE 00 40 */ lwz r7, 0x40(r30) +/* 80178D84 00175CE4 D0 21 01 10 */ stfs f1, 0x110(r1) +/* 80178D88 00175CE8 90 FF 04 94 */ stw r7, 0x494(r31) +/* 80178D8C 00175CEC 91 1F 04 98 */ stw r8, 0x498(r31) +/* 80178D90 00175CF0 98 DF 04 9C */ stb r6, 0x49c(r31) +/* 80178D94 00175CF4 D0 3F 04 A0 */ stfs f1, 0x4a0(r31) +/* 80178D98 00175CF8 D0 1F 04 A4 */ stfs f0, 0x4a4(r31) +/* 80178D9C 00175CFC D0 3F 04 A8 */ stfs f1, 0x4a8(r31) +/* 80178DA0 00175D00 D0 3F 04 AC */ stfs f1, 0x4ac(r31) +/* 80178DA4 00175D04 98 9F 04 B0 */ stb r4, 0x4b0(r31) +/* 80178DA8 00175D08 91 5F 04 B4 */ stw r10, 0x4b4(r31) +/* 80178DAC 00175D0C D0 3F 04 B8 */ stfs f1, 0x4b8(r31) +/* 80178DB0 00175D10 D0 3F 04 BC */ stfs f1, 0x4bc(r31) +/* 80178DB4 00175D14 D0 3F 04 C0 */ stfs f1, 0x4c0(r31) +/* 80178DB8 00175D18 D0 3F 04 C4 */ stfs f1, 0x4c4(r31) +/* 80178DBC 00175D1C D0 3F 04 C8 */ stfs f1, 0x4c8(r31) +/* 80178DC0 00175D20 D0 3F 04 CC */ stfs f1, 0x4cc(r31) +/* 80178DC4 00175D24 D0 3F 04 D0 */ stfs f1, 0x4d0(r31) +/* 80178DC8 00175D28 D0 3F 04 D4 */ stfs f1, 0x4d4(r31) +/* 80178DCC 00175D2C D0 3F 04 D8 */ stfs f1, 0x4d8(r31) +/* 80178DD0 00175D30 D0 3F 04 DC */ stfs f1, 0x4dc(r31) +/* 80178DD4 00175D34 D0 3F 04 E0 */ stfs f1, 0x4e0(r31) +/* 80178DD8 00175D38 D0 3F 04 E4 */ stfs f1, 0x4e4(r31) +/* 80178DDC 00175D3C 80 DE 00 10 */ lwz r6, 0x10(r30) +/* 80178DE0 00175D40 90 01 00 AC */ stw r0, 0xac(r1) +/* 80178DE4 00175D44 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80178DE8 00175D48 90 C1 00 B0 */ stw r6, 0xb0(r1) +/* 80178DEC 00175D4C 81 84 00 00 */ lwz r12, 0(r4) +/* 80178DF0 00175D50 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80178DF4 00175D54 7D 89 03 A6 */ mtctr r12 +/* 80178DF8 00175D58 4E 80 04 21 */ bctrl +/* 80178DFC 00175D5C 3B 1F 04 E8 */ addi r24, r31, 0x4e8 +/* 80178E00 00175D60 38 81 00 A4 */ addi r4, r1, 0xa4 +/* 80178E04 00175D64 7F 03 C3 78 */ mr r3, r24 +/* 80178E08 00175D68 48 1C 80 A1 */ bl __ct__6CTokenFRC6CToken +/* 80178E0C 00175D6C 38 00 00 00 */ li r0, 0 +/* 80178E10 00175D70 38 61 00 A4 */ addi r3, r1, 0xa4 +/* 80178E14 00175D74 90 18 00 08 */ stw r0, 8(r24) +/* 80178E18 00175D78 38 80 FF FF */ li r4, -1 +/* 80178E1C 00175D7C 48 1C 80 25 */ bl __dt__6CTokenFv +/* 80178E20 00175D80 80 DE 00 14 */ lwz r6, 0x14(r30) +/* 80178E24 00175D84 3C 60 54 58 */ lis r3, 0x54585452@ha +/* 80178E28 00175D88 38 03 54 52 */ addi r0, r3, 0x54585452@l +/* 80178E2C 00175D8C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80178E30 00175D90 90 01 00 9C */ stw r0, 0x9c(r1) +/* 80178E34 00175D94 38 61 00 94 */ addi r3, r1, 0x94 +/* 80178E38 00175D98 38 A1 00 9C */ addi r5, r1, 0x9c +/* 80178E3C 00175D9C 90 C1 00 A0 */ stw r6, 0xa0(r1) +/* 80178E40 00175DA0 81 84 00 00 */ lwz r12, 0(r4) +/* 80178E44 00175DA4 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80178E48 00175DA8 7D 89 03 A6 */ mtctr r12 +/* 80178E4C 00175DAC 4E 80 04 21 */ bctrl +/* 80178E50 00175DB0 3B 1F 04 F4 */ addi r24, r31, 0x4f4 +/* 80178E54 00175DB4 38 81 00 94 */ addi r4, r1, 0x94 +/* 80178E58 00175DB8 7F 03 C3 78 */ mr r3, r24 +/* 80178E5C 00175DBC 48 1C 80 4D */ bl __ct__6CTokenFRC6CToken +/* 80178E60 00175DC0 38 00 00 00 */ li r0, 0 +/* 80178E64 00175DC4 38 61 00 94 */ addi r3, r1, 0x94 +/* 80178E68 00175DC8 90 18 00 08 */ stw r0, 8(r24) +/* 80178E6C 00175DCC 38 80 FF FF */ li r4, -1 +/* 80178E70 00175DD0 48 1C 7F D1 */ bl __dt__6CTokenFv +/* 80178E74 00175DD4 80 DE 00 08 */ lwz r6, 8(r30) +/* 80178E78 00175DD8 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 80178E7C 00175DDC 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 80178E80 00175DE0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80178E84 00175DE4 90 01 00 8C */ stw r0, 0x8c(r1) +/* 80178E88 00175DE8 38 61 00 84 */ addi r3, r1, 0x84 +/* 80178E8C 00175DEC 38 A1 00 8C */ addi r5, r1, 0x8c +/* 80178E90 00175DF0 90 C1 00 90 */ stw r6, 0x90(r1) +/* 80178E94 00175DF4 81 84 00 00 */ lwz r12, 0(r4) +/* 80178E98 00175DF8 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80178E9C 00175DFC 7D 89 03 A6 */ mtctr r12 +/* 80178EA0 00175E00 4E 80 04 21 */ bctrl +/* 80178EA4 00175E04 3B 1F 05 00 */ addi r24, r31, 0x500 +/* 80178EA8 00175E08 38 81 00 84 */ addi r4, r1, 0x84 +/* 80178EAC 00175E0C 7F 03 C3 78 */ mr r3, r24 +/* 80178EB0 00175E10 48 1C 7F F9 */ bl __ct__6CTokenFRC6CToken +/* 80178EB4 00175E14 7F 03 C3 78 */ mr r3, r24 +/* 80178EB8 00175E18 48 1C 7F 55 */ bl GetObj__6CTokenFv +/* 80178EBC 00175E1C 80 03 00 04 */ lwz r0, 4(r3) +/* 80178EC0 00175E20 38 61 00 84 */ addi r3, r1, 0x84 +/* 80178EC4 00175E24 38 80 FF FF */ li r4, -1 +/* 80178EC8 00175E28 90 18 00 08 */ stw r0, 8(r24) +/* 80178ECC 00175E2C 48 1C 7F 75 */ bl __dt__6CTokenFv +/* 80178ED0 00175E30 80 DE 00 0C */ lwz r6, 0xc(r30) +/* 80178ED4 00175E34 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 80178ED8 00175E38 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 80178EDC 00175E3C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80178EE0 00175E40 90 01 00 7C */ stw r0, 0x7c(r1) +/* 80178EE4 00175E44 38 61 00 74 */ addi r3, r1, 0x74 +/* 80178EE8 00175E48 38 A1 00 7C */ addi r5, r1, 0x7c +/* 80178EEC 00175E4C 90 C1 00 80 */ stw r6, 0x80(r1) +/* 80178EF0 00175E50 81 84 00 00 */ lwz r12, 0(r4) +/* 80178EF4 00175E54 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80178EF8 00175E58 7D 89 03 A6 */ mtctr r12 +/* 80178EFC 00175E5C 4E 80 04 21 */ bctrl +/* 80178F00 00175E60 3B 1F 05 0C */ addi r24, r31, 0x50c +/* 80178F04 00175E64 38 81 00 74 */ addi r4, r1, 0x74 +/* 80178F08 00175E68 7F 03 C3 78 */ mr r3, r24 +/* 80178F0C 00175E6C 48 1C 7F 9D */ bl __ct__6CTokenFRC6CToken +/* 80178F10 00175E70 7F 03 C3 78 */ mr r3, r24 +/* 80178F14 00175E74 48 1C 7E F9 */ bl GetObj__6CTokenFv +/* 80178F18 00175E78 80 03 00 04 */ lwz r0, 4(r3) +/* 80178F1C 00175E7C 38 61 00 74 */ addi r3, r1, 0x74 +/* 80178F20 00175E80 38 80 FF FF */ li r4, -1 +/* 80178F24 00175E84 90 18 00 08 */ stw r0, 8(r24) +/* 80178F28 00175E88 48 1C 7F 19 */ bl __dt__6CTokenFv +/* 80178F2C 00175E8C 3C 60 80 3D */ lis r3, lbl_803D0668@ha +/* 80178F30 00175E90 3B 20 00 00 */ li r25, 0 +/* 80178F34 00175E94 38 83 06 68 */ addi r4, r3, lbl_803D0668@l +/* 80178F38 00175E98 38 A0 00 00 */ li r5, 0 +/* 80178F3C 00175E9C 38 60 03 40 */ li r3, 0x340 +/* 80178F40 00175EA0 48 19 C9 2D */ bl __nw__FUlPCcPCc +/* 80178F44 00175EA4 7C 78 1B 79 */ or. r24, r3, r3 +/* 80178F48 00175EA8 41 82 00 2C */ beq lbl_80178F74 +/* 80178F4C 00175EAC 38 61 00 6C */ addi r3, r1, 0x6c +/* 80178F50 00175EB0 38 9F 05 00 */ addi r4, r31, 0x500 +/* 80178F54 00175EB4 48 1C 7F 55 */ bl __ct__6CTokenFRC6CToken +/* 80178F58 00175EB8 7F 03 C3 78 */ mr r3, r24 +/* 80178F5C 00175EBC 38 81 00 6C */ addi r4, r1, 0x6c +/* 80178F60 00175EC0 3B 20 00 01 */ li r25, 1 +/* 80178F64 00175EC4 38 A0 00 01 */ li r5, 1 +/* 80178F68 00175EC8 38 C0 00 01 */ li r6, 1 +/* 80178F6C 00175ECC 48 1A 64 75 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 80178F70 00175ED0 7C 78 1B 78 */ mr r24, r3 +lbl_80178F74: +/* 80178F74 00175ED4 7F 20 07 75 */ extsb. r0, r25 +/* 80178F78 00175ED8 93 1F 05 18 */ stw r24, 0x518(r31) +/* 80178F7C 00175EDC 41 82 00 10 */ beq lbl_80178F8C +/* 80178F80 00175EE0 38 61 00 6C */ addi r3, r1, 0x6c +/* 80178F84 00175EE4 38 80 00 00 */ li r4, 0 +/* 80178F88 00175EE8 48 1C 7E B9 */ bl __dt__6CTokenFv +lbl_80178F8C: +/* 80178F8C 00175EEC 3C 60 80 3D */ lis r3, lbl_803D0668@ha +/* 80178F90 00175EF0 3B 20 00 00 */ li r25, 0 +/* 80178F94 00175EF4 38 83 06 68 */ addi r4, r3, lbl_803D0668@l +/* 80178F98 00175EF8 38 A0 00 00 */ li r5, 0 +/* 80178F9C 00175EFC 38 60 03 40 */ li r3, 0x340 +/* 80178FA0 00175F00 48 19 C8 CD */ bl __nw__FUlPCcPCc +/* 80178FA4 00175F04 7C 78 1B 79 */ or. r24, r3, r3 +/* 80178FA8 00175F08 41 82 00 2C */ beq lbl_80178FD4 +/* 80178FAC 00175F0C 38 61 00 64 */ addi r3, r1, 0x64 +/* 80178FB0 00175F10 38 9F 05 0C */ addi r4, r31, 0x50c +/* 80178FB4 00175F14 48 1C 7E F5 */ bl __ct__6CTokenFRC6CToken +/* 80178FB8 00175F18 7F 03 C3 78 */ mr r3, r24 +/* 80178FBC 00175F1C 38 81 00 64 */ addi r4, r1, 0x64 +/* 80178FC0 00175F20 3B 20 00 01 */ li r25, 1 +/* 80178FC4 00175F24 38 A0 00 00 */ li r5, 0 +/* 80178FC8 00175F28 38 C0 00 01 */ li r6, 1 +/* 80178FCC 00175F2C 48 1A 64 15 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 80178FD0 00175F30 7C 78 1B 78 */ mr r24, r3 +lbl_80178FD4: +/* 80178FD4 00175F34 7F 20 07 75 */ extsb. r0, r25 +/* 80178FD8 00175F38 93 1F 05 1C */ stw r24, 0x51c(r31) +/* 80178FDC 00175F3C 41 82 00 10 */ beq lbl_80178FEC +/* 80178FE0 00175F40 38 61 00 64 */ addi r3, r1, 0x64 +/* 80178FE4 00175F44 38 80 00 00 */ li r4, 0 +/* 80178FE8 00175F48 48 1C 7E 59 */ bl __dt__6CTokenFv +lbl_80178FEC: +/* 80178FEC 00175F4C 38 60 00 00 */ li r3, 0 +/* 80178FF0 00175F50 3B 60 00 00 */ li r27, 0 +/* 80178FF4 00175F54 90 7F 05 20 */ stw r3, 0x520(r31) +/* 80178FF8 00175F58 3B 40 00 00 */ li r26, 0 +/* 80178FFC 00175F5C 3B 20 00 00 */ li r25, 0 +/* 80179000 00175F60 3B 00 00 00 */ li r24, 0 +/* 80179004 00175F64 80 1D 00 04 */ lwz r0, 4(r29) +/* 80179008 00175F68 90 1F 05 24 */ stw r0, 0x524(r31) +/* 8017900C 00175F6C 80 1D 00 08 */ lwz r0, 8(r29) +/* 80179010 00175F70 90 1F 05 28 */ stw r0, 0x528(r31) +/* 80179014 00175F74 80 9D 00 0C */ lwz r4, 0xc(r29) +/* 80179018 00175F78 3C 04 00 01 */ addis r0, r4, 1 +/* 8017901C 00175F7C 28 00 FF FF */ cmplwi r0, 0xffff +/* 80179020 00175F80 41 82 00 68 */ beq lbl_80179088 +/* 80179024 00175F84 3C 60 45 4C */ lis r3, 0x454C5343@ha +/* 80179028 00175F88 90 81 00 60 */ stw r4, 0x60(r1) +/* 8017902C 00175F8C 38 03 53 43 */ addi r0, r3, 0x454C5343@l +/* 80179030 00175F90 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80179034 00175F94 90 01 00 5C */ stw r0, 0x5c(r1) +/* 80179038 00175F98 38 61 00 54 */ addi r3, r1, 0x54 +/* 8017903C 00175F9C 38 A1 00 5C */ addi r5, r1, 0x5c +/* 80179040 00175FA0 81 84 00 00 */ lwz r12, 0(r4) +/* 80179044 00175FA4 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80179048 00175FA8 7D 89 03 A6 */ mtctr r12 +/* 8017904C 00175FAC 4E 80 04 21 */ bctrl +/* 80179050 00175FB0 38 61 00 4C */ addi r3, r1, 0x4c +/* 80179054 00175FB4 38 81 00 54 */ addi r4, r1, 0x54 +/* 80179058 00175FB8 3B 60 00 01 */ li r27, 1 +/* 8017905C 00175FBC 48 1C 7E 4D */ bl __ct__6CTokenFRC6CToken +/* 80179060 00175FC0 38 00 00 01 */ li r0, 1 +/* 80179064 00175FC4 34 61 00 F0 */ addic. r3, r1, 0xf0 +/* 80179068 00175FC8 98 01 00 F8 */ stb r0, 0xf8(r1) +/* 8017906C 00175FCC 3B 40 00 01 */ li r26, 1 +/* 80179070 00175FD0 41 82 00 0C */ beq lbl_8017907C +/* 80179074 00175FD4 38 81 00 4C */ addi r4, r1, 0x4c +/* 80179078 00175FD8 48 1C 7E 31 */ bl __ct__6CTokenFRC6CToken +lbl_8017907C: +/* 8017907C 00175FDC 38 81 00 F0 */ addi r4, r1, 0xf0 +/* 80179080 00175FE0 3B 20 00 01 */ li r25, 1 +/* 80179084 00175FE4 48 00 00 10 */ b lbl_80179094 +lbl_80179088: +/* 80179088 00175FE8 98 61 00 EC */ stb r3, 0xec(r1) +/* 8017908C 00175FEC 38 81 00 E4 */ addi r4, r1, 0xe4 +/* 80179090 00175FF0 3B 00 00 01 */ li r24, 1 +lbl_80179094: +/* 80179094 00175FF4 88 04 00 08 */ lbz r0, 8(r4) +/* 80179098 00175FF8 98 1F 05 34 */ stb r0, 0x534(r31) +/* 8017909C 00175FFC 88 04 00 08 */ lbz r0, 8(r4) +/* 801790A0 00176000 28 00 00 00 */ cmplwi r0, 0 +/* 801790A4 00176004 41 82 00 10 */ beq lbl_801790B4 +/* 801790A8 00176008 34 7F 05 2C */ addic. r3, r31, 0x52c +/* 801790AC 0017600C 41 82 00 08 */ beq lbl_801790B4 +/* 801790B0 00176010 48 1C 7D F9 */ bl __ct__6CTokenFRC6CToken +lbl_801790B4: +/* 801790B4 00176014 7F 00 07 75 */ extsb. r0, r24 +/* 801790B8 00176018 41 82 00 28 */ beq lbl_801790E0 +/* 801790BC 0017601C 88 01 00 EC */ lbz r0, 0xec(r1) +/* 801790C0 00176020 28 00 00 00 */ cmplwi r0, 0 +/* 801790C4 00176024 41 82 00 14 */ beq lbl_801790D8 +/* 801790C8 00176028 34 61 00 E4 */ addic. r3, r1, 0xe4 +/* 801790CC 0017602C 41 82 00 0C */ beq lbl_801790D8 +/* 801790D0 00176030 38 80 00 00 */ li r4, 0 +/* 801790D4 00176034 48 1C 7D 6D */ bl __dt__6CTokenFv +lbl_801790D8: +/* 801790D8 00176038 38 00 00 00 */ li r0, 0 +/* 801790DC 0017603C 98 01 00 EC */ stb r0, 0xec(r1) +lbl_801790E0: +/* 801790E0 00176040 7F 20 07 75 */ extsb. r0, r25 +/* 801790E4 00176044 41 82 00 28 */ beq lbl_8017910C +/* 801790E8 00176048 88 01 00 F8 */ lbz r0, 0xf8(r1) +/* 801790EC 0017604C 28 00 00 00 */ cmplwi r0, 0 +/* 801790F0 00176050 41 82 00 14 */ beq lbl_80179104 +/* 801790F4 00176054 34 61 00 F0 */ addic. r3, r1, 0xf0 +/* 801790F8 00176058 41 82 00 0C */ beq lbl_80179104 +/* 801790FC 0017605C 38 80 00 00 */ li r4, 0 +/* 80179100 00176060 48 1C 7D 41 */ bl __dt__6CTokenFv +lbl_80179104: +/* 80179104 00176064 38 00 00 00 */ li r0, 0 +/* 80179108 00176068 98 01 00 F8 */ stb r0, 0xf8(r1) +lbl_8017910C: +/* 8017910C 0017606C 7F 40 07 75 */ extsb. r0, r26 +/* 80179110 00176070 41 82 00 10 */ beq lbl_80179120 +/* 80179114 00176074 38 61 00 4C */ addi r3, r1, 0x4c +/* 80179118 00176078 38 80 00 00 */ li r4, 0 +/* 8017911C 0017607C 48 1C 7D 25 */ bl __dt__6CTokenFv +lbl_80179120: +/* 80179120 00176080 7F 60 07 75 */ extsb. r0, r27 +/* 80179124 00176084 41 82 00 10 */ beq lbl_80179134 +/* 80179128 00176088 38 61 00 54 */ addi r3, r1, 0x54 +/* 8017912C 0017608C 38 80 FF FF */ li r4, -1 +/* 80179130 00176090 48 1C 7D 11 */ bl __dt__6CTokenFv +lbl_80179134: +/* 80179134 00176094 80 9D 00 10 */ lwz r4, 0x10(r29) +/* 80179138 00176098 3B 00 00 00 */ li r24, 0 +/* 8017913C 0017609C 3B 20 00 00 */ li r25, 0 +/* 80179140 001760A0 3B 40 00 00 */ li r26, 0 +/* 80179144 001760A4 3C 04 00 01 */ addis r0, r4, 1 +/* 80179148 001760A8 3B 60 00 00 */ li r27, 0 +/* 8017914C 001760AC 28 00 FF FF */ cmplwi r0, 0xffff +/* 80179150 001760B0 41 82 00 68 */ beq lbl_801791B8 +/* 80179154 001760B4 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 80179158 001760B8 90 81 00 48 */ stw r4, 0x48(r1) +/* 8017915C 001760BC 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 80179160 001760C0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80179164 001760C4 90 01 00 44 */ stw r0, 0x44(r1) +/* 80179168 001760C8 38 61 00 3C */ addi r3, r1, 0x3c +/* 8017916C 001760CC 38 A1 00 44 */ addi r5, r1, 0x44 +/* 80179170 001760D0 81 84 00 00 */ lwz r12, 0(r4) +/* 80179174 001760D4 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80179178 001760D8 7D 89 03 A6 */ mtctr r12 +/* 8017917C 001760DC 4E 80 04 21 */ bctrl +/* 80179180 001760E0 38 61 00 34 */ addi r3, r1, 0x34 +/* 80179184 001760E4 38 81 00 3C */ addi r4, r1, 0x3c +/* 80179188 001760E8 3B 00 00 01 */ li r24, 1 +/* 8017918C 001760EC 48 1C 7D 1D */ bl __ct__6CTokenFRC6CToken +/* 80179190 001760F0 38 00 00 01 */ li r0, 1 +/* 80179194 001760F4 34 61 00 D8 */ addic. r3, r1, 0xd8 +/* 80179198 001760F8 98 01 00 E0 */ stb r0, 0xe0(r1) +/* 8017919C 001760FC 3B 20 00 01 */ li r25, 1 +/* 801791A0 00176100 41 82 00 0C */ beq lbl_801791AC +/* 801791A4 00176104 38 81 00 34 */ addi r4, r1, 0x34 +/* 801791A8 00176108 48 1C 7D 01 */ bl __ct__6CTokenFRC6CToken +lbl_801791AC: +/* 801791AC 0017610C 38 81 00 D8 */ addi r4, r1, 0xd8 +/* 801791B0 00176110 3B 40 00 01 */ li r26, 1 +/* 801791B4 00176114 48 00 00 14 */ b lbl_801791C8 +lbl_801791B8: +/* 801791B8 00176118 38 00 00 00 */ li r0, 0 +/* 801791BC 0017611C 38 81 00 CC */ addi r4, r1, 0xcc +/* 801791C0 00176120 98 01 00 D4 */ stb r0, 0xd4(r1) +/* 801791C4 00176124 3B 60 00 01 */ li r27, 1 +lbl_801791C8: +/* 801791C8 00176128 88 04 00 08 */ lbz r0, 8(r4) +/* 801791CC 0017612C 98 1F 05 40 */ stb r0, 0x540(r31) +/* 801791D0 00176130 88 04 00 08 */ lbz r0, 8(r4) +/* 801791D4 00176134 28 00 00 00 */ cmplwi r0, 0 +/* 801791D8 00176138 41 82 00 10 */ beq lbl_801791E8 +/* 801791DC 0017613C 34 7F 05 38 */ addic. r3, r31, 0x538 +/* 801791E0 00176140 41 82 00 08 */ beq lbl_801791E8 +/* 801791E4 00176144 48 1C 7C C5 */ bl __ct__6CTokenFRC6CToken +lbl_801791E8: +/* 801791E8 00176148 7F 60 07 75 */ extsb. r0, r27 +/* 801791EC 0017614C 41 82 00 28 */ beq lbl_80179214 +/* 801791F0 00176150 88 01 00 D4 */ lbz r0, 0xd4(r1) +/* 801791F4 00176154 28 00 00 00 */ cmplwi r0, 0 +/* 801791F8 00176158 41 82 00 14 */ beq lbl_8017920C +/* 801791FC 0017615C 34 61 00 CC */ addic. r3, r1, 0xcc +/* 80179200 00176160 41 82 00 0C */ beq lbl_8017920C +/* 80179204 00176164 38 80 00 00 */ li r4, 0 +/* 80179208 00176168 48 1C 7C 39 */ bl __dt__6CTokenFv +lbl_8017920C: +/* 8017920C 0017616C 38 00 00 00 */ li r0, 0 +/* 80179210 00176170 98 01 00 D4 */ stb r0, 0xd4(r1) +lbl_80179214: +/* 80179214 00176174 7F 40 07 75 */ extsb. r0, r26 +/* 80179218 00176178 41 82 00 28 */ beq lbl_80179240 +/* 8017921C 0017617C 88 01 00 E0 */ lbz r0, 0xe0(r1) +/* 80179220 00176180 28 00 00 00 */ cmplwi r0, 0 +/* 80179224 00176184 41 82 00 14 */ beq lbl_80179238 +/* 80179228 00176188 34 61 00 D8 */ addic. r3, r1, 0xd8 +/* 8017922C 0017618C 41 82 00 0C */ beq lbl_80179238 +/* 80179230 00176190 38 80 00 00 */ li r4, 0 +/* 80179234 00176194 48 1C 7C 0D */ bl __dt__6CTokenFv +lbl_80179238: +/* 80179238 00176198 38 00 00 00 */ li r0, 0 +/* 8017923C 0017619C 98 01 00 E0 */ stb r0, 0xe0(r1) +lbl_80179240: +/* 80179240 001761A0 7F 20 07 75 */ extsb. r0, r25 +/* 80179244 001761A4 41 82 00 10 */ beq lbl_80179254 +/* 80179248 001761A8 38 61 00 34 */ addi r3, r1, 0x34 +/* 8017924C 001761AC 38 80 00 00 */ li r4, 0 +/* 80179250 001761B0 48 1C 7B F1 */ bl __dt__6CTokenFv +lbl_80179254: +/* 80179254 001761B4 7F 00 07 75 */ extsb. r0, r24 +/* 80179258 001761B8 41 82 00 10 */ beq lbl_80179268 +/* 8017925C 001761BC 38 61 00 3C */ addi r3, r1, 0x3c +/* 80179260 001761C0 38 80 FF FF */ li r4, -1 +/* 80179264 001761C4 48 1C 7B DD */ bl __dt__6CTokenFv +lbl_80179268: +/* 80179268 001761C8 80 1D 00 14 */ lwz r0, 0x14(r29) +/* 8017926C 001761CC 54 03 04 3E */ clrlwi r3, r0, 0x10 +/* 80179270 001761D0 48 16 F7 41 */ bl TranslateSFXID__11CSfxManagerFUs +/* 80179274 001761D4 B0 7F 05 44 */ sth r3, 0x544(r31) +/* 80179278 001761D8 80 1D 00 18 */ lwz r0, 0x18(r29) +/* 8017927C 001761DC 54 03 04 3E */ clrlwi r3, r0, 0x10 +/* 80179280 001761E0 48 16 F7 31 */ bl TranslateSFXID__11CSfxManagerFUs +/* 80179284 001761E4 B0 7F 05 46 */ sth r3, 0x546(r31) +/* 80179288 001761E8 38 A0 00 00 */ li r5, 0 +/* 8017928C 001761EC 38 80 00 01 */ li r4, 1 +/* 80179290 001761F0 38 7F 04 E8 */ addi r3, r31, 0x4e8 +/* 80179294 001761F4 88 1F 05 48 */ lbz r0, 0x548(r31) +/* 80179298 001761F8 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 8017929C 001761FC 98 1F 05 48 */ stb r0, 0x548(r31) +/* 801792A0 00176200 88 1F 05 48 */ lbz r0, 0x548(r31) +/* 801792A4 00176204 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 801792A8 00176208 98 1F 05 48 */ stb r0, 0x548(r31) +/* 801792AC 0017620C 88 1F 05 48 */ lbz r0, 0x548(r31) +/* 801792B0 00176210 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a +/* 801792B4 00176214 98 1F 05 48 */ stb r0, 0x548(r31) +/* 801792B8 00176218 88 1F 05 48 */ lbz r0, 0x548(r31) +/* 801792BC 0017621C 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 801792C0 00176220 98 1F 05 48 */ stb r0, 0x548(r31) +/* 801792C4 00176224 88 1F 05 48 */ lbz r0, 0x548(r31) +/* 801792C8 00176228 53 80 1F 38 */ rlwimi r0, r28, 3, 0x1c, 0x1c +/* 801792CC 0017622C 98 1F 05 48 */ stb r0, 0x548(r31) +/* 801792D0 00176230 88 1F 05 48 */ lbz r0, 0x548(r31) +/* 801792D4 00176234 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 801792D8 00176238 98 1F 05 48 */ stb r0, 0x548(r31) +/* 801792DC 0017623C 48 1C 7A A9 */ bl Lock__6CTokenFv +/* 801792E0 00176240 38 7F 04 F4 */ addi r3, r31, 0x4f4 +/* 801792E4 00176244 48 1C 7A A1 */ bl Lock__6CTokenFv +/* 801792E8 00176248 C0 1E 00 30 */ lfs f0, 0x30(r30) +/* 801792EC 0017624C 38 81 00 C0 */ addi r4, r1, 0xc0 +/* 801792F0 00176250 D0 01 00 C0 */ stfs f0, 0xc0(r1) +/* 801792F4 00176254 D0 01 00 C4 */ stfs f0, 0xc4(r1) +/* 801792F8 00176258 D0 01 00 C8 */ stfs f0, 0xc8(r1) +/* 801792FC 0017625C 80 7F 05 18 */ lwz r3, 0x518(r31) +/* 80179300 00176260 81 83 00 00 */ lwz r12, 0(r3) +/* 80179304 00176264 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 80179308 00176268 7D 89 03 A6 */ mtctr r12 +/* 8017930C 0017626C 4E 80 04 21 */ bctrl +/* 80179310 00176270 C0 1E 00 34 */ lfs f0, 0x34(r30) +/* 80179314 00176274 38 81 00 B4 */ addi r4, r1, 0xb4 +/* 80179318 00176278 D0 01 00 B4 */ stfs f0, 0xb4(r1) +/* 8017931C 0017627C D0 01 00 B8 */ stfs f0, 0xb8(r1) +/* 80179320 00176280 D0 01 00 BC */ stfs f0, 0xbc(r1) +/* 80179324 00176284 80 7F 05 1C */ lwz r3, 0x51c(r31) +/* 80179328 00176288 81 83 00 00 */ lwz r12, 0(r3) +/* 8017932C 0017628C 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 80179330 00176290 7D 89 03 A6 */ mtctr r12 +/* 80179334 00176294 4E 80 04 21 */ bctrl +/* 80179338 00176298 80 7F 05 18 */ lwz r3, 0x518(r31) +/* 8017933C 0017629C 38 80 00 00 */ li r4, 0 +/* 80179340 001762A0 81 83 00 00 */ lwz r12, 0(r3) +/* 80179344 001762A4 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80179348 001762A8 7D 89 03 A6 */ mtctr r12 +/* 8017934C 001762AC 4E 80 04 21 */ bctrl +/* 80179350 001762B0 80 7F 05 1C */ lwz r3, 0x51c(r31) +/* 80179354 001762B4 38 80 00 00 */ li r4, 0 +/* 80179358 001762B8 81 83 00 00 */ lwz r12, 0(r3) +/* 8017935C 001762BC 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 80179360 001762C0 7D 89 03 A6 */ mtctr r12 +/* 80179364 001762C4 4E 80 04 21 */ bctrl +/* 80179368 001762C8 7F E3 FB 78 */ mr r3, r31 +/* 8017936C 001762CC BB 01 01 20 */ lmw r24, 0x120(r1) +/* 80179370 001762D0 80 01 01 44 */ lwz r0, 0x144(r1) +/* 80179374 001762D4 7C 08 03 A6 */ mtlr r0 +/* 80179378 001762D8 38 21 01 40 */ addi r1, r1, 0x140 +/* 8017937C 001762DC 4E 80 00 20 */ blr + +.global __sinit_CPlasmaProjectile_cpp +__sinit_CPlasmaProjectile_cpp: +/* 80179380 001762E0 C0 02 A1 E8 */ lfs f0, lbl_805ABF08@sda21(r2) +/* 80179384 001762E4 D0 0D A4 38 */ stfs f0, lbl_805A8FF8@sda21(r13) +/* 80179388 001762E8 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/Weapons/CPowerBomb.s b/asm/Kyoto_CWD/Weapons/CPowerBomb.s new file mode 100644 index 00000000..efa5ae28 --- /dev/null +++ b/asm/Kyoto_CWD/Weapons/CPowerBomb.s @@ -0,0 +1,547 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global AcceptScriptMsg__10CPowerBombF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__10CPowerBombF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 8014D948 0014A8A8 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8014D94C 0014A8AC 7C 08 02 A6 */ mflr r0 +/* 8014D950 0014A8B0 90 01 00 54 */ stw r0, 0x54(r1) +/* 8014D954 0014A8B4 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 8014D958 0014A8B8 7C DF 33 78 */ mr r31, r6 +/* 8014D95C 0014A8BC 93 C1 00 48 */ stw r30, 0x48(r1) +/* 8014D960 0014A8C0 7C BE 2B 78 */ mr r30, r5 +/* 8014D964 0014A8C4 93 A1 00 44 */ stw r29, 0x44(r1) +/* 8014D968 0014A8C8 7C 9D 23 78 */ mr r29, r4 +/* 8014D96C 0014A8CC 2C 1D 00 22 */ cmpwi r29, 0x22 +/* 8014D970 0014A8D0 93 81 00 40 */ stw r28, 0x40(r1) +/* 8014D974 0014A8D4 7C 7C 1B 78 */ mr r28, r3 +/* 8014D978 0014A8D8 41 82 00 F4 */ beq lbl_8014DA6C +/* 8014D97C 0014A8DC 40 80 01 2C */ bge lbl_8014DAA8 +/* 8014D980 0014A8E0 2C 1D 00 21 */ cmpwi r29, 0x21 +/* 8014D984 0014A8E4 40 80 00 08 */ bge lbl_8014D98C +/* 8014D988 0014A8E8 48 00 01 20 */ b lbl_8014DAA8 +lbl_8014D98C: +/* 8014D98C 0014A8EC A0 1C 00 EC */ lhz r0, 0xec(r28) +/* 8014D990 0014A8F0 7F E3 FB 78 */ mr r3, r31 +/* 8014D994 0014A8F4 80 BC 00 F0 */ lwz r5, 0xf0(r28) +/* 8014D998 0014A8F8 38 81 00 18 */ addi r4, r1, 0x18 +/* 8014D99C 0014A8FC B0 01 00 14 */ sth r0, 0x14(r1) +/* 8014D9A0 0014A900 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8014D9A4 0014A904 4B EF 73 65 */ bl AddWeaponId__13CStateManagerF9TUniqueId11EWeaponType +/* 8014D9A8 0014A908 C0 02 9D 64 */ lfs f0, lbl_805ABA84@sda21(r2) +/* 8014D9AC 0014A90C D0 1C 01 20 */ stfs f0, 0x120(r28) +/* 8014D9B0 0014A910 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 8014D9B4 0014A914 80 63 00 00 */ lwz r3, 0(r3) +/* 8014D9B8 0014A918 88 03 00 00 */ lbz r0, 0(r3) +/* 8014D9BC 0014A91C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8014D9C0 0014A920 41 82 00 70 */ beq lbl_8014DA30 +/* 8014D9C4 0014A924 C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 8014D9C8 0014A928 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8014D9CC 0014A92C C0 3C 00 50 */ lfs f1, 0x50(r28) +/* 8014D9D0 0014A930 38 C3 66 A0 */ addi r6, r3, skZero3f@l +/* 8014D9D4 0014A934 C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 8014D9D8 0014A938 38 61 00 24 */ addi r3, r1, 0x24 +/* 8014D9DC 0014A93C A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) +/* 8014D9E0 0014A940 38 A1 00 34 */ addi r5, r1, 0x34 +/* 8014D9E4 0014A944 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 8014D9E8 0014A948 38 80 07 10 */ li r4, 0x710 +/* 8014D9EC 0014A94C 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8014D9F0 0014A950 38 E0 00 01 */ li r7, 1 +/* 8014D9F4 0014A954 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 8014D9F8 0014A958 39 00 00 00 */ li r8, 0 +/* 8014D9FC 0014A95C D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 8014DA00 0014A960 48 19 C8 B1 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi +/* 8014DA04 0014A964 C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 8014DA08 0014A968 7F E3 FB 78 */ mr r3, r31 +/* 8014DA0C 0014A96C C0 3C 00 50 */ lfs f1, 0x50(r28) +/* 8014DA10 0014A970 38 81 00 28 */ addi r4, r1, 0x28 +/* 8014DA14 0014A974 C0 1C 00 40 */ lfs f0, 0x40(r28) +/* 8014DA18 0014A978 38 A0 00 01 */ li r5, 1 +/* 8014DA1C 0014A97C D0 01 00 28 */ stfs f0, 0x28(r1) +/* 8014DA20 0014A980 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 8014DA24 0014A984 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 8014DA28 0014A988 4B EF AD 5D */ bl InformListeners__13CStateManagerFRC9CVector3f16EListenNoiseType +/* 8014DA2C 0014A98C 48 00 00 7C */ b lbl_8014DAA8 +lbl_8014DA30: +/* 8014DA30 0014A990 A9 02 C5 F8 */ lha r8, lbl_805AE318@sda21(r2) +/* 8014DA34 0014A994 38 61 00 1C */ addi r3, r1, 0x1c +/* 8014DA38 0014A998 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8014DA3C 0014A99C 38 80 07 3F */ li r4, 0x73f +/* 8014DA40 0014A9A0 38 A0 00 7F */ li r5, 0x7f +/* 8014DA44 0014A9A4 38 C0 00 40 */ li r6, 0x40 +/* 8014DA48 0014A9A8 38 E0 00 00 */ li r7, 0 +/* 8014DA4C 0014A9AC 39 20 00 00 */ li r9, 0 +/* 8014DA50 0014A9B0 48 19 C3 25 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 8014DA54 0014A9B4 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 8014DA58 0014A9B8 38 81 00 20 */ addi r4, r1, 0x20 +/* 8014DA5C 0014A9BC 90 01 00 20 */ stw r0, 0x20(r1) +/* 8014DA60 0014A9C0 80 7F 08 4C */ lwz r3, 0x84c(r31) +/* 8014DA64 0014A9C4 4B EC 37 29 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle +/* 8014DA68 0014A9C8 48 00 00 40 */ b lbl_8014DAA8 +lbl_8014DA6C: +/* 8014DA6C 0014A9CC C0 3C 01 5C */ lfs f1, 0x15c(r28) +/* 8014DA70 0014A9D0 C0 02 9D 68 */ lfs f0, lbl_805ABA88@sda21(r2) +/* 8014DA74 0014A9D4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8014DA78 0014A9D8 4C 40 13 82 */ cror 2, 0, 2 +/* 8014DA7C 0014A9DC 40 82 00 10 */ bne lbl_8014DA8C +/* 8014DA80 0014A9E0 C0 22 9D 64 */ lfs f1, lbl_805ABA84@sda21(r2) +/* 8014DA84 0014A9E4 38 7F 0C 90 */ addi r3, r31, 0xc90 +/* 8014DA88 0014A9E8 4B F9 F8 E1 */ bl DisableFilter__17CCameraFilterPassFf +lbl_8014DA8C: +/* 8014DA8C 0014A9EC A0 1C 00 EC */ lhz r0, 0xec(r28) +/* 8014DA90 0014A9F0 7F E3 FB 78 */ mr r3, r31 +/* 8014DA94 0014A9F4 80 BC 00 F0 */ lwz r5, 0xf0(r28) +/* 8014DA98 0014A9F8 38 81 00 10 */ addi r4, r1, 0x10 +/* 8014DA9C 0014A9FC B0 01 00 0C */ sth r0, 0xc(r1) +/* 8014DAA0 0014AA00 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8014DAA4 0014AA04 4B EF 72 35 */ bl RemoveWeaponId__13CStateManagerF9TUniqueId11EWeaponType +lbl_8014DAA8: +/* 8014DAA8 0014AA08 A0 1E 00 00 */ lhz r0, 0(r30) +/* 8014DAAC 0014AA0C 7F 83 E3 78 */ mr r3, r28 +/* 8014DAB0 0014AA10 7F A4 EB 78 */ mr r4, r29 +/* 8014DAB4 0014AA14 7F E6 FB 78 */ mr r6, r31 +/* 8014DAB8 0014AA18 B0 01 00 08 */ sth r0, 8(r1) +/* 8014DABC 0014AA1C 38 A1 00 08 */ addi r5, r1, 8 +/* 8014DAC0 0014AA20 4B F0 5B 55 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 8014DAC4 0014AA24 80 01 00 54 */ lwz r0, 0x54(r1) +/* 8014DAC8 0014AA28 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 8014DACC 0014AA2C 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 8014DAD0 0014AA30 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 8014DAD4 0014AA34 83 81 00 40 */ lwz r28, 0x40(r1) +/* 8014DAD8 0014AA38 7C 08 03 A6 */ mtlr r0 +/* 8014DADC 0014AA3C 38 21 00 50 */ addi r1, r1, 0x50 +/* 8014DAE0 0014AA40 4E 80 00 20 */ blr + +.global Accept__10CPowerBombFR8IVisitor +Accept__10CPowerBombFR8IVisitor: +/* 8014DAE4 0014AA44 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8014DAE8 0014AA48 7C 08 02 A6 */ mflr r0 +/* 8014DAEC 0014AA4C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014DAF0 0014AA50 7C 60 1B 78 */ mr r0, r3 +/* 8014DAF4 0014AA54 7C 83 23 78 */ mr r3, r4 +/* 8014DAF8 0014AA58 81 84 00 00 */ lwz r12, 0(r4) +/* 8014DAFC 0014AA5C 7C 04 03 78 */ mr r4, r0 +/* 8014DB00 0014AA60 81 8C 00 E8 */ lwz r12, 0xe8(r12) +/* 8014DB04 0014AA64 7D 89 03 A6 */ mtctr r12 +/* 8014DB08 0014AA68 4E 80 04 21 */ bctrl +/* 8014DB0C 0014AA6C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014DB10 0014AA70 7C 08 03 A6 */ mtlr r0 +/* 8014DB14 0014AA74 38 21 00 10 */ addi r1, r1, 0x10 +/* 8014DB18 0014AA78 4E 80 00 20 */ blr + +.global Think__10CPowerBombFfR13CStateManager +Think__10CPowerBombFfR13CStateManager: +/* 8014DB1C 0014AA7C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8014DB20 0014AA80 7C 08 02 A6 */ mflr r0 +/* 8014DB24 0014AA84 90 01 00 44 */ stw r0, 0x44(r1) +/* 8014DB28 0014AA88 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 8014DB2C 0014AA8C F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 8014DB30 0014AA90 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8014DB34 0014AA94 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8014DB38 0014AA98 FF E0 08 90 */ fmr f31, f1 +/* 8014DB3C 0014AA9C 7C 7E 1B 78 */ mr r30, r3 +/* 8014DB40 0014AAA0 7C 9F 23 78 */ mr r31, r4 +/* 8014DB44 0014AAA4 4B FB 45 95 */ bl Think__7CWeaponFfR13CStateManager +/* 8014DB48 0014AAA8 88 7E 01 58 */ lbz r3, 0x158(r30) +/* 8014DB4C 0014AAAC 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 8014DB50 0014AAB0 41 82 00 70 */ beq lbl_8014DBC0 +/* 8014DB54 0014AAB4 C0 3E 01 5C */ lfs f1, 0x15c(r30) +/* 8014DB58 0014AAB8 C0 02 9D 6C */ lfs f0, lbl_805ABA8C@sda21(r2) +/* 8014DB5C 0014AABC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8014DB60 0014AAC0 40 81 00 3C */ ble lbl_8014DB9C +/* 8014DB64 0014AAC4 54 60 D7 FE */ rlwinm r0, r3, 0x1a, 0x1f, 0x1f +/* 8014DB68 0014AAC8 28 00 00 01 */ cmplwi r0, 1 +/* 8014DB6C 0014AACC 41 82 00 30 */ beq lbl_8014DB9C +/* 8014DB70 0014AAD0 C0 22 9D 70 */ lfs f1, lbl_805ABA90@sda21(r2) +/* 8014DB74 0014AAD4 38 7F 0C 90 */ addi r3, r31, 0xc90 +/* 8014DB78 0014AAD8 38 80 00 03 */ li r4, 3 +/* 8014DB7C 0014AADC 38 A0 00 00 */ li r5, 0 +/* 8014DB80 0014AAE0 38 CD A3 E8 */ addi r6, r13, lbl_805A8FA8@sda21 +/* 8014DB84 0014AAE4 38 E0 FF FF */ li r7, -1 +/* 8014DB88 0014AAE8 4B F9 F8 19 */ bl SetFilter__17CCameraFilterPassFQ217CCameraFilterPass11EFilterTypeQ217CCameraFilterPass12EFilterShapefRC6CColorUi +/* 8014DB8C 0014AAEC 88 1E 01 58 */ lbz r0, 0x158(r30) +/* 8014DB90 0014AAF0 38 60 00 01 */ li r3, 1 +/* 8014DB94 0014AAF4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8014DB98 0014AAF8 98 1E 01 58 */ stb r0, 0x158(r30) +lbl_8014DB9C: +/* 8014DB9C 0014AAFC C0 3E 01 5C */ lfs f1, 0x15c(r30) +/* 8014DBA0 0014AB00 C0 02 9D 74 */ lfs f0, lbl_805ABA94@sda21(r2) +/* 8014DBA4 0014AB04 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8014DBA8 0014AB08 40 81 00 BC */ ble lbl_8014DC64 +/* 8014DBAC 0014AB0C 88 1E 01 58 */ lbz r0, 0x158(r30) +/* 8014DBB0 0014AB10 38 60 00 00 */ li r3, 0 +/* 8014DBB4 0014AB14 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 8014DBB8 0014AB18 98 1E 01 58 */ stb r0, 0x158(r30) +/* 8014DBBC 0014AB1C 48 00 00 A8 */ b lbl_8014DC64 +lbl_8014DBC0: +/* 8014DBC0 0014AB20 C0 3E 01 5C */ lfs f1, 0x15c(r30) +/* 8014DBC4 0014AB24 C0 02 9D 78 */ lfs f0, lbl_805ABA98@sda21(r2) +/* 8014DBC8 0014AB28 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8014DBCC 0014AB2C 40 81 00 28 */ ble lbl_8014DBF4 +/* 8014DBD0 0014AB30 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 8014DBD4 0014AB34 41 82 00 20 */ beq lbl_8014DBF4 +/* 8014DBD8 0014AB38 C0 22 9D 7C */ lfs f1, lbl_805ABA9C@sda21(r2) +/* 8014DBDC 0014AB3C 38 7F 0C 90 */ addi r3, r31, 0xc90 +/* 8014DBE0 0014AB40 4B F9 F7 89 */ bl DisableFilter__17CCameraFilterPassFf +/* 8014DBE4 0014AB44 88 1E 01 58 */ lbz r0, 0x158(r30) +/* 8014DBE8 0014AB48 38 60 00 00 */ li r3, 0 +/* 8014DBEC 0014AB4C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 8014DBF0 0014AB50 98 1E 01 58 */ stb r0, 0x158(r30) +lbl_8014DBF4: +/* 8014DBF4 0014AB54 C0 3E 01 5C */ lfs f1, 0x15c(r30) +/* 8014DBF8 0014AB58 C0 02 9D 68 */ lfs f0, lbl_805ABA88@sda21(r2) +/* 8014DBFC 0014AB5C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8014DC00 0014AB60 40 81 00 38 */ ble lbl_8014DC38 +/* 8014DC04 0014AB64 80 7E 01 68 */ lwz r3, 0x168(r30) +/* 8014DC08 0014AB68 81 83 00 00 */ lwz r12, 0(r3) +/* 8014DC0C 0014AB6C 81 8C 00 58 */ lwz r12, 0x58(r12) +/* 8014DC10 0014AB70 7D 89 03 A6 */ mtctr r12 +/* 8014DC14 0014AB74 4E 80 04 21 */ bctrl +/* 8014DC18 0014AB78 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8014DC1C 0014AB7C 41 82 00 1C */ beq lbl_8014DC38 +/* 8014DC20 0014AB80 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8014DC24 0014AB84 7F E3 FB 78 */ mr r3, r31 +/* 8014DC28 0014AB88 38 81 00 14 */ addi r4, r1, 0x14 +/* 8014DC2C 0014AB8C B0 01 00 10 */ sth r0, 0x10(r1) +/* 8014DC30 0014AB90 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8014DC34 0014AB94 4B EF E6 39 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +lbl_8014DC38: +/* 8014DC38 0014AB98 C0 3E 01 5C */ lfs f1, 0x15c(r30) +/* 8014DC3C 0014AB9C C0 02 9D 80 */ lfs f0, lbl_805ABAA0@sda21(r2) +/* 8014DC40 0014ABA0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8014DC44 0014ABA4 40 81 00 20 */ ble lbl_8014DC64 +/* 8014DC48 0014ABA8 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8014DC4C 0014ABAC 7F E3 FB 78 */ mr r3, r31 +/* 8014DC50 0014ABB0 38 81 00 0C */ addi r4, r1, 0xc +/* 8014DC54 0014ABB4 B0 01 00 08 */ sth r0, 8(r1) +/* 8014DC58 0014ABB8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8014DC5C 0014ABBC 4B EF E6 11 */ bl FreeScriptObject__13CStateManagerF9TUniqueId +/* 8014DC60 0014ABC0 48 00 00 84 */ b lbl_8014DCE4 +lbl_8014DC64: +/* 8014DC64 0014ABC4 C0 3E 01 5C */ lfs f1, 0x15c(r30) +/* 8014DC68 0014ABC8 C0 02 9D 6C */ lfs f0, lbl_805ABA8C@sda21(r2) +/* 8014DC6C 0014ABCC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8014DC70 0014ABD0 40 81 00 50 */ ble lbl_8014DCC0 +/* 8014DC74 0014ABD4 C0 02 9D 84 */ lfs f0, lbl_805ABAA4@sda21(r2) +/* 8014DC78 0014ABD8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8014DC7C 0014ABDC 40 80 00 44 */ bge lbl_8014DCC0 +/* 8014DC80 0014ABE0 C0 1E 01 60 */ lfs f0, 0x160(r30) +/* 8014DC84 0014ABE4 7F C3 F3 78 */ mr r3, r30 +/* 8014DC88 0014ABE8 7F E5 FB 78 */ mr r5, r31 +/* 8014DC8C 0014ABEC 38 81 00 18 */ addi r4, r1, 0x18 +/* 8014DC90 0014ABF0 D0 1E 01 20 */ stfs f0, 0x120(r30) +/* 8014DC94 0014ABF4 C0 5E 00 60 */ lfs f2, 0x60(r30) +/* 8014DC98 0014ABF8 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 8014DC9C 0014ABFC C0 1E 00 40 */ lfs f0, 0x40(r30) +/* 8014DCA0 0014AC00 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 8014DCA4 0014AC04 D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 8014DCA8 0014AC08 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 8014DCAC 0014AC0C 48 00 00 AD */ bl sub_8014dd58 +/* 8014DCB0 0014AC10 C0 3E 01 64 */ lfs f1, 0x164(r30) +/* 8014DCB4 0014AC14 C0 1E 01 60 */ lfs f0, 0x160(r30) +/* 8014DCB8 0014AC18 EC 01 07 FA */ fmadds f0, f1, f31, f0 +/* 8014DCBC 0014AC1C D0 1E 01 60 */ stfs f0, 0x160(r30) +lbl_8014DCC0: +/* 8014DCC0 0014AC20 80 7E 01 68 */ lwz r3, 0x168(r30) +/* 8014DCC4 0014AC24 FC 20 F8 90 */ fmr f1, f31 +/* 8014DCC8 0014AC28 81 83 00 00 */ lwz r12, 0(r3) +/* 8014DCCC 0014AC2C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8014DCD0 0014AC30 7D 89 03 A6 */ mtctr r12 +/* 8014DCD4 0014AC34 4E 80 04 21 */ bctrl +/* 8014DCD8 0014AC38 C0 1E 01 5C */ lfs f0, 0x15c(r30) +/* 8014DCDC 0014AC3C EC 00 F8 2A */ fadds f0, f0, f31 +/* 8014DCE0 0014AC40 D0 1E 01 5C */ stfs f0, 0x15c(r30) +lbl_8014DCE4: +/* 8014DCE4 0014AC44 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 8014DCE8 0014AC48 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8014DCEC 0014AC4C CB E1 00 30 */ lfd f31, 0x30(r1) +/* 8014DCF0 0014AC50 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8014DCF4 0014AC54 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8014DCF8 0014AC58 7C 08 03 A6 */ mtlr r0 +/* 8014DCFC 0014AC5C 38 21 00 40 */ addi r1, r1, 0x40 +/* 8014DD00 0014AC60 4E 80 00 20 */ blr + +.global nullsub_228 +nullsub_228: +/* 8014DD04 0014AC64 4E 80 00 20 */ blr + +.global AddToRenderer__10CPowerBombCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__10CPowerBombCFRC14CFrustumPlanesRC13CStateManager: +/* 8014DD08 0014AC68 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8014DD0C 0014AC6C 7C 08 02 A6 */ mflr r0 +/* 8014DD10 0014AC70 7C 64 1B 78 */ mr r4, r3 +/* 8014DD14 0014AC74 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014DD18 0014AC78 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 8014DD1C 0014AC7C 80 84 01 68 */ lwz r4, 0x168(r4) +/* 8014DD20 0014AC80 81 83 00 00 */ lwz r12, 0(r3) +/* 8014DD24 0014AC84 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 8014DD28 0014AC88 7D 89 03 A6 */ mtctr r12 +/* 8014DD2C 0014AC8C 4E 80 04 21 */ bctrl +/* 8014DD30 0014AC90 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014DD34 0014AC94 7C 08 03 A6 */ mtlr r0 +/* 8014DD38 0014AC98 38 21 00 10 */ addi r1, r1, 0x10 +/* 8014DD3C 0014AC9C 4E 80 00 20 */ blr + +.global GetTouchBounds__10CPowerBombCFv +GetTouchBounds__10CPowerBombCFv: +/* 8014DD40 0014ACA0 38 00 00 00 */ li r0, 0 +/* 8014DD44 0014ACA4 98 03 00 18 */ stb r0, 0x18(r3) +/* 8014DD48 0014ACA8 4E 80 00 20 */ blr + +.global Touch__10CPowerBombFR6CActorR13CStateManager +Touch__10CPowerBombFR6CActorR13CStateManager: +/* 8014DD4C 0014ACAC 88 03 01 58 */ lbz r0, 0x158(r3) +/* 8014DD50 0014ACB0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8014DD54 0014ACB4 4E 80 00 20 */ blr + +.global sub_8014dd58 +sub_8014dd58: +/* 8014DD58 0014ACB8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8014DD5C 0014ACBC 7C 08 02 A6 */ mflr r0 +/* 8014DD60 0014ACC0 7C 86 23 78 */ mr r6, r4 +/* 8014DD64 0014ACC4 7C 6A 1B 78 */ mr r10, r3 +/* 8014DD68 0014ACC8 90 01 00 34 */ stw r0, 0x34(r1) +/* 8014DD6C 0014ACCC 38 81 00 0C */ addi r4, r1, 0xc +/* 8014DD70 0014ACD0 39 01 00 10 */ addi r8, r1, 0x10 +/* 8014DD74 0014ACD4 80 03 00 F8 */ lwz r0, 0xf8(r3) +/* 8014DD78 0014ACD8 80 E3 00 FC */ lwz r7, 0xfc(r3) +/* 8014DD7C 0014ACDC 7C A3 2B 78 */ mr r3, r5 +/* 8014DD80 0014ACE0 7D 45 53 78 */ mr r5, r10 +/* 8014DD84 0014ACE4 90 E1 00 14 */ stw r7, 0x14(r1) +/* 8014DD88 0014ACE8 38 EA 01 2C */ addi r7, r10, 0x12c +/* 8014DD8C 0014ACEC 90 01 00 10 */ stw r0, 0x10(r1) +/* 8014DD90 0014ACF0 80 0A 01 00 */ lwz r0, 0x100(r10) +/* 8014DD94 0014ACF4 81 2A 01 04 */ lwz r9, 0x104(r10) +/* 8014DD98 0014ACF8 91 21 00 1C */ stw r9, 0x1c(r1) +/* 8014DD9C 0014ACFC 90 01 00 18 */ stw r0, 0x18(r1) +/* 8014DDA0 0014AD00 80 0A 01 08 */ lwz r0, 0x108(r10) +/* 8014DDA4 0014AD04 90 01 00 20 */ stw r0, 0x20(r1) +/* 8014DDA8 0014AD08 A0 0A 00 EC */ lhz r0, 0xec(r10) +/* 8014DDAC 0014AD0C B0 01 00 08 */ sth r0, 8(r1) +/* 8014DDB0 0014AD10 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8014DDB4 0014AD14 4B EF AE F9 */ bl ApplyDamageToWorld__13CStateManagerF9TUniqueIdRC6CActorRC9CVector3fRC11CDamageInfoRC15CMaterialFilter +/* 8014DDB8 0014AD18 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8014DDBC 0014AD1C 7C 08 03 A6 */ mtlr r0 +/* 8014DDC0 0014AD20 38 21 00 30 */ addi r1, r1, 0x30 +/* 8014DDC4 0014AD24 4E 80 00 20 */ blr + +.global __dt__10CPowerBombFv +__dt__10CPowerBombFv: +/* 8014DDC8 0014AD28 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8014DDCC 0014AD2C 7C 08 02 A6 */ mflr r0 +/* 8014DDD0 0014AD30 90 01 00 14 */ stw r0, 0x14(r1) +/* 8014DDD4 0014AD34 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8014DDD8 0014AD38 7C 9F 23 78 */ mr r31, r4 +/* 8014DDDC 0014AD3C 93 C1 00 08 */ stw r30, 8(r1) +/* 8014DDE0 0014AD40 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8014DDE4 0014AD44 41 82 00 54 */ beq lbl_8014DE38 +/* 8014DDE8 0014AD48 3C 60 80 3E */ lis r3, lbl_803E2808@ha +/* 8014DDEC 0014AD4C 34 1E 01 68 */ addic. r0, r30, 0x168 +/* 8014DDF0 0014AD50 38 03 28 08 */ addi r0, r3, lbl_803E2808@l +/* 8014DDF4 0014AD54 90 1E 00 00 */ stw r0, 0(r30) +/* 8014DDF8 0014AD58 41 82 00 24 */ beq lbl_8014DE1C +/* 8014DDFC 0014AD5C 80 7E 01 68 */ lwz r3, 0x168(r30) +/* 8014DE00 0014AD60 28 03 00 00 */ cmplwi r3, 0 +/* 8014DE04 0014AD64 41 82 00 18 */ beq lbl_8014DE1C +/* 8014DE08 0014AD68 81 83 00 00 */ lwz r12, 0(r3) +/* 8014DE0C 0014AD6C 38 80 00 01 */ li r4, 1 +/* 8014DE10 0014AD70 81 8C 00 08 */ lwz r12, 8(r12) +/* 8014DE14 0014AD74 7D 89 03 A6 */ mtctr r12 +/* 8014DE18 0014AD78 4E 80 04 21 */ bctrl +lbl_8014DE1C: +/* 8014DE1C 0014AD7C 7F C3 F3 78 */ mr r3, r30 +/* 8014DE20 0014AD80 38 80 00 00 */ li r4, 0 +/* 8014DE24 0014AD84 4B FB 44 11 */ bl __dt__7CWeaponFv +/* 8014DE28 0014AD88 7F E0 07 35 */ extsh. r0, r31 +/* 8014DE2C 0014AD8C 40 81 00 0C */ ble lbl_8014DE38 +/* 8014DE30 0014AD90 7F C3 F3 78 */ mr r3, r30 +/* 8014DE34 0014AD94 48 1C 7A FD */ bl Free__7CMemoryFPCv +lbl_8014DE38: +/* 8014DE38 0014AD98 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8014DE3C 0014AD9C 7F C3 F3 78 */ mr r3, r30 +/* 8014DE40 0014ADA0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8014DE44 0014ADA4 83 C1 00 08 */ lwz r30, 8(r1) +/* 8014DE48 0014ADA8 7C 08 03 A6 */ mtlr r0 +/* 8014DE4C 0014ADAC 38 21 00 10 */ addi r1, r1, 0x10 +/* 8014DE50 0014ADB0 4E 80 00 20 */ blr + +.global "__ct__10CPowerBombF25TToken<15CGenDescription>9TUniqueId7TAreaId9TUniqueIdRC12CTransform4fRC11CDamageInfo" +"__ct__10CPowerBombF25TToken<15CGenDescription>9TUniqueId7TAreaId9TUniqueIdRC12CTransform4fRC11CDamageInfo": +/* 8014DE54 0014ADB4 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 8014DE58 0014ADB8 7C 08 02 A6 */ mflr r0 +/* 8014DE5C 0014ADBC 3D 40 80 3D */ lis r10, lbl_803D01A0@ha +/* 8014DE60 0014ADC0 90 01 01 04 */ stw r0, 0x104(r1) +/* 8014DE64 0014ADC4 38 0A 01 A0 */ addi r0, r10, lbl_803D01A0@l +/* 8014DE68 0014ADC8 BE 61 00 CC */ stmw r19, 0xcc(r1) +/* 8014DE6C 0014ADCC 7C 7E 1B 78 */ mr r30, r3 +/* 8014DE70 0014ADD0 7C 9F 23 78 */ mr r31, r4 +/* 8014DE74 0014ADD4 7C B6 2B 78 */ mr r22, r5 +/* 8014DE78 0014ADD8 7C D7 33 78 */ mr r23, r6 +/* 8014DE7C 0014ADDC 7C F8 3B 78 */ mr r24, r7 +/* 8014DE80 0014ADE0 7D 19 43 78 */ mr r25, r8 +/* 8014DE84 0014ADE4 7D 3A 4B 78 */ mr r26, r9 +/* 8014DE88 0014ADE8 7C 04 03 78 */ mr r4, r0 +/* 8014DE8C 0014ADEC 38 61 00 4C */ addi r3, r1, 0x4c +/* 8014DE90 0014ADF0 4B EB 6E 29 */ bl string_l__4rstlFPCc +/* 8014DE94 0014ADF4 38 61 00 78 */ addi r3, r1, 0x78 +/* 8014DE98 0014ADF8 4B EE C9 0D */ bl CModelDataNull__10CModelDataFv +/* 8014DE9C 0014ADFC 38 00 00 00 */ li r0, 0 +/* 8014DEA0 0014AE00 80 AD 8C 2C */ lwz r5, lbl_805A77EC@sda21(r13) +/* 8014DEA4 0014AE04 90 01 00 3C */ stw r0, 0x3c(r1) +/* 8014DEA8 0014AE08 38 60 00 00 */ li r3, 0 +/* 8014DEAC 0014AE0C 38 80 00 01 */ li r4, 1 +/* 8014DEB0 0014AE10 90 01 00 38 */ stw r0, 0x38(r1) +/* 8014DEB4 0014AE14 48 23 C0 41 */ bl __shl2i +/* 8014DEB8 0014AE18 80 01 00 38 */ lwz r0, 0x38(r1) +/* 8014DEBC 0014AE1C 80 C1 00 3C */ lwz r6, 0x3c(r1) +/* 8014DEC0 0014AE20 7C 00 1B 78 */ or r0, r0, r3 +/* 8014DEC4 0014AE24 80 AD 8C 30 */ lwz r5, lbl_805A77F0@sda21(r13) +/* 8014DEC8 0014AE28 7C C4 23 78 */ or r4, r6, r4 +/* 8014DECC 0014AE2C 90 01 00 38 */ stw r0, 0x38(r1) +/* 8014DED0 0014AE30 38 60 00 00 */ li r3, 0 +/* 8014DED4 0014AE34 90 81 00 3C */ stw r4, 0x3c(r1) +/* 8014DED8 0014AE38 38 80 00 01 */ li r4, 1 +/* 8014DEDC 0014AE3C 48 23 C0 19 */ bl __shl2i +/* 8014DEE0 0014AE40 80 01 00 38 */ lwz r0, 0x38(r1) +/* 8014DEE4 0014AE44 80 C1 00 3C */ lwz r6, 0x3c(r1) +/* 8014DEE8 0014AE48 7C 00 1B 78 */ or r0, r0, r3 +/* 8014DEEC 0014AE4C 80 AD 8C 24 */ lwz r5, lbl_805A77E4@sda21(r13) +/* 8014DEF0 0014AE50 7C C4 23 78 */ or r4, r6, r4 +/* 8014DEF4 0014AE54 90 01 00 38 */ stw r0, 0x38(r1) +/* 8014DEF8 0014AE58 38 60 00 00 */ li r3, 0 +/* 8014DEFC 0014AE5C 90 81 00 3C */ stw r4, 0x3c(r1) +/* 8014DF00 0014AE60 38 80 00 01 */ li r4, 1 +/* 8014DF04 0014AE64 48 23 BF F1 */ bl __shl2i +/* 8014DF08 0014AE68 80 AD 8C 28 */ lwz r5, lbl_805A77E8@sda21(r13) +/* 8014DF0C 0014AE6C 7C 9C 23 78 */ mr r28, r4 +/* 8014DF10 0014AE70 7C 7D 1B 78 */ mr r29, r3 +/* 8014DF14 0014AE74 38 60 00 00 */ li r3, 0 +/* 8014DF18 0014AE78 38 80 00 01 */ li r4, 1 +/* 8014DF1C 0014AE7C 48 23 BF D9 */ bl __shl2i +/* 8014DF20 0014AE80 80 AD 8C 18 */ lwz r5, lbl_805A77D8@sda21(r13) +/* 8014DF24 0014AE84 7F 9C 23 78 */ or r28, r28, r4 +/* 8014DF28 0014AE88 7F BD 1B 78 */ or r29, r29, r3 +/* 8014DF2C 0014AE8C 38 60 00 00 */ li r3, 0 +/* 8014DF30 0014AE90 38 80 00 01 */ li r4, 1 +/* 8014DF34 0014AE94 48 23 BF C1 */ bl __shl2i +/* 8014DF38 0014AE98 80 AD 8C 1C */ lwz r5, lbl_805A77DC@sda21(r13) +/* 8014DF3C 0014AE9C 7C 93 23 78 */ mr r19, r4 +/* 8014DF40 0014AEA0 7C 7B 1B 78 */ mr r27, r3 +/* 8014DF44 0014AEA4 38 60 00 00 */ li r3, 0 +/* 8014DF48 0014AEA8 38 80 00 01 */ li r4, 1 +/* 8014DF4C 0014AEAC 48 23 BF A9 */ bl __shl2i +/* 8014DF50 0014AEB0 80 AD 8C 20 */ lwz r5, lbl_805A77E0@sda21(r13) +/* 8014DF54 0014AEB4 7E 73 23 78 */ or r19, r19, r4 +/* 8014DF58 0014AEB8 7F 7B 1B 78 */ or r27, r27, r3 +/* 8014DF5C 0014AEBC 38 60 00 00 */ li r3, 0 +/* 8014DF60 0014AEC0 38 80 00 01 */ li r4, 1 +/* 8014DF64 0014AEC4 48 23 BF 91 */ bl __shl2i +/* 8014DF68 0014AEC8 A2 B8 00 00 */ lhz r21, 0(r24) +/* 8014DF6C 0014AECC 7E 73 23 78 */ or r19, r19, r4 +/* 8014DF70 0014AED0 7F 7B 1B 78 */ or r27, r27, r3 +/* 8014DF74 0014AED4 83 17 00 00 */ lwz r24, 0(r23) +/* 8014DF78 0014AED8 A2 F6 00 00 */ lhz r23, 0(r22) +/* 8014DF7C 0014AEDC 3A 80 00 03 */ li r20, 3 +/* 8014DF80 0014AEE0 92 61 00 64 */ stw r19, 0x64(r1) +/* 8014DF84 0014AEE4 3A C1 00 60 */ addi r22, r1, 0x60 +/* 8014DF88 0014AEE8 39 81 00 38 */ addi r12, r1, 0x38 +/* 8014DF8C 0014AEEC 39 60 02 00 */ li r11, 0x200 +/* 8014DF90 0014AEF0 93 61 00 60 */ stw r27, 0x60(r1) +/* 8014DF94 0014AEF4 38 01 00 78 */ addi r0, r1, 0x78 +/* 8014DF98 0014AEF8 7F C3 F3 78 */ mr r3, r30 +/* 8014DF9C 0014AEFC 7F 2A CB 78 */ mr r10, r25 +/* 8014DFA0 0014AF00 93 81 00 6C */ stw r28, 0x6c(r1) +/* 8014DFA4 0014AF04 38 81 00 24 */ addi r4, r1, 0x24 +/* 8014DFA8 0014AF08 38 A1 00 28 */ addi r5, r1, 0x28 +/* 8014DFAC 0014AF0C 38 E1 00 20 */ addi r7, r1, 0x20 +/* 8014DFB0 0014AF10 93 A1 00 68 */ stw r29, 0x68(r1) +/* 8014DFB4 0014AF14 39 21 00 4C */ addi r9, r1, 0x4c +/* 8014DFB8 0014AF18 38 C0 00 01 */ li r6, 1 +/* 8014DFBC 0014AF1C 39 00 00 05 */ li r8, 5 +/* 8014DFC0 0014AF20 92 81 00 70 */ stw r20, 0x70(r1) +/* 8014DFC4 0014AF24 B2 A1 00 20 */ sth r21, 0x20(r1) +/* 8014DFC8 0014AF28 93 01 00 28 */ stw r24, 0x28(r1) +/* 8014DFCC 0014AF2C B2 E1 00 24 */ sth r23, 0x24(r1) +/* 8014DFD0 0014AF30 92 C1 00 08 */ stw r22, 8(r1) +/* 8014DFD4 0014AF34 91 81 00 0C */ stw r12, 0xc(r1) +/* 8014DFD8 0014AF38 93 41 00 10 */ stw r26, 0x10(r1) +/* 8014DFDC 0014AF3C 91 61 00 14 */ stw r11, 0x14(r1) +/* 8014DFE0 0014AF40 90 01 00 18 */ stw r0, 0x18(r1) +/* 8014DFE4 0014AF44 4B FB 42 B1 */ bl "__ct__7CWeaponF9TUniqueIdb9TUniqueId11EWeaponTypeRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC12CTransform4fRC15CMaterialFilterRC13CMaterialListRC11CDamageInfoiRC10CModelData" +/* 8014DFE8 0014AF48 38 61 00 78 */ addi r3, r1, 0x78 +/* 8014DFEC 0014AF4C 38 80 FF FF */ li r4, -1 +/* 8014DFF0 0014AF50 4B FC 8A 5D */ bl __dt__10CModelDataFv +/* 8014DFF4 0014AF54 38 61 00 4C */ addi r3, r1, 0x4c +/* 8014DFF8 0014AF58 48 1E FA E9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8014DFFC 0014AF5C 3C 80 80 3E */ lis r4, lbl_803E2808@ha +/* 8014E000 0014AF60 3C 60 80 3D */ lis r3, lbl_803D01A0@ha +/* 8014E004 0014AF64 38 04 28 08 */ addi r0, r4, lbl_803E2808@l +/* 8014E008 0014AF68 38 80 00 01 */ li r4, 1 +/* 8014E00C 0014AF6C 90 1E 00 00 */ stw r0, 0(r30) +/* 8014E010 0014AF70 38 63 01 A0 */ addi r3, r3, lbl_803D01A0@l +/* 8014E014 0014AF74 38 C0 00 00 */ li r6, 0 +/* 8014E018 0014AF78 C0 22 9D 64 */ lfs f1, lbl_805ABA84@sda21(r2) +/* 8014E01C 0014AF7C 88 1E 01 58 */ lbz r0, 0x158(r30) +/* 8014E020 0014AF80 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 +/* 8014E024 0014AF84 C0 02 9D 74 */ lfs f0, lbl_805ABA94@sda21(r2) +/* 8014E028 0014AF88 38 83 00 0A */ addi r4, r3, 0xa +/* 8014E02C 0014AF8C 98 1E 01 58 */ stb r0, 0x158(r30) +/* 8014E030 0014AF90 3A 60 00 00 */ li r19, 0 +/* 8014E034 0014AF94 38 60 03 40 */ li r3, 0x340 +/* 8014E038 0014AF98 38 A0 00 00 */ li r5, 0 +/* 8014E03C 0014AF9C 88 1E 01 58 */ lbz r0, 0x158(r30) +/* 8014E040 0014AFA0 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 +/* 8014E044 0014AFA4 98 1E 01 58 */ stb r0, 0x158(r30) +/* 8014E048 0014AFA8 D0 3E 01 5C */ stfs f1, 0x15c(r30) +/* 8014E04C 0014AFAC D0 3E 01 60 */ stfs f1, 0x160(r30) +/* 8014E050 0014AFB0 C0 3A 00 10 */ lfs f1, 0x10(r26) +/* 8014E054 0014AFB4 EC 01 00 24 */ fdivs f0, f1, f0 +/* 8014E058 0014AFB8 D0 1E 01 64 */ stfs f0, 0x164(r30) +/* 8014E05C 0014AFBC 48 1C 78 11 */ bl __nw__FUlPCcPCc +/* 8014E060 0014AFC0 7C 74 1B 79 */ or. r20, r3, r3 +/* 8014E064 0014AFC4 41 82 00 2C */ beq lbl_8014E090 +/* 8014E068 0014AFC8 7F E4 FB 78 */ mr r4, r31 +/* 8014E06C 0014AFCC 38 61 00 2C */ addi r3, r1, 0x2c +/* 8014E070 0014AFD0 48 1F 2E 39 */ bl __ct__6CTokenFRC6CToken +/* 8014E074 0014AFD4 7E 83 A3 78 */ mr r3, r20 +/* 8014E078 0014AFD8 38 81 00 2C */ addi r4, r1, 0x2c +/* 8014E07C 0014AFDC 3A 60 00 01 */ li r19, 1 +/* 8014E080 0014AFE0 38 A0 00 00 */ li r5, 0 +/* 8014E084 0014AFE4 38 C0 00 01 */ li r6, 1 +/* 8014E088 0014AFE8 48 1D 13 59 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" +/* 8014E08C 0014AFEC 7C 74 1B 78 */ mr r20, r3 +lbl_8014E090: +/* 8014E090 0014AFF0 7E 60 07 75 */ extsb. r0, r19 +/* 8014E094 0014AFF4 92 9E 01 68 */ stw r20, 0x168(r30) +/* 8014E098 0014AFF8 41 82 00 10 */ beq lbl_8014E0A8 +/* 8014E09C 0014AFFC 38 61 00 2C */ addi r3, r1, 0x2c +/* 8014E0A0 0014B000 38 80 00 00 */ li r4, 0 +/* 8014E0A4 0014B004 48 1F 2D 9D */ bl __dt__6CTokenFv +lbl_8014E0A8: +/* 8014E0A8 0014B008 C0 1A 00 10 */ lfs f0, 0x10(r26) +/* 8014E0AC 0014B00C 38 81 00 40 */ addi r4, r1, 0x40 +/* 8014E0B0 0014B010 D0 1E 01 6C */ stfs f0, 0x16c(r30) +/* 8014E0B4 0014B014 C0 59 00 2C */ lfs f2, 0x2c(r25) +/* 8014E0B8 0014B018 C0 39 00 1C */ lfs f1, 0x1c(r25) +/* 8014E0BC 0014B01C C0 19 00 0C */ lfs f0, 0xc(r25) +/* 8014E0C0 0014B020 D0 21 00 44 */ stfs f1, 0x44(r1) +/* 8014E0C4 0014B024 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 8014E0C8 0014B028 D0 41 00 48 */ stfs f2, 0x48(r1) +/* 8014E0CC 0014B02C 80 7E 01 68 */ lwz r3, 0x168(r30) +/* 8014E0D0 0014B030 81 83 00 00 */ lwz r12, 0(r3) +/* 8014E0D4 0014B034 81 8C 00 20 */ lwz r12, 0x20(r12) +/* 8014E0D8 0014B038 7D 89 03 A6 */ mtctr r12 +/* 8014E0DC 0014B03C 4E 80 04 21 */ bctrl +/* 8014E0E0 0014B040 7F C3 F3 78 */ mr r3, r30 +/* 8014E0E4 0014B044 BA 61 00 CC */ lmw r19, 0xcc(r1) +/* 8014E0E8 0014B048 80 01 01 04 */ lwz r0, 0x104(r1) +/* 8014E0EC 0014B04C 7C 08 03 A6 */ mtlr r0 +/* 8014E0F0 0014B050 38 21 01 00 */ addi r1, r1, 0x100 +/* 8014E0F4 0014B054 4E 80 00 20 */ blr + +.global __sinit_CPowerBomb_cpp +__sinit_CPowerBomb_cpp: +/* 8014E0F8 0014B058 38 00 FF 7F */ li r0, -129 +/* 8014E0FC 0014B05C 90 0D A3 E8 */ stw r0, lbl_805A8FA8@sda21(r13) +/* 8014E100 0014B060 4E 80 00 20 */ blr diff --git a/asm/text.s b/asm/text.s index 3db49a8a..9d571e23 100644 --- a/asm/text.s +++ b/asm/text.s @@ -2,75932 +2,6 @@ .section .text, "ax" # 0x80003640 - 0x803CB1C0 -.global __dt__11CBSScriptedFv -__dt__11CBSScriptedFv: -/* 8014B0C0 00148020 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8014B0C4 00148024 7C 08 02 A6 */ mflr r0 -/* 8014B0C8 00148028 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014B0CC 0014802C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8014B0D0 00148030 7C 7F 1B 79 */ or. r31, r3, r3 -/* 8014B0D4 00148034 41 82 00 30 */ beq lbl_8014B104 -/* 8014B0D8 00148038 3C 60 80 3E */ lis r3, lbl_803E24A8@ha -/* 8014B0DC 0014803C 38 03 24 A8 */ addi r0, r3, lbl_803E24A8@l -/* 8014B0E0 00148040 90 1F 00 00 */ stw r0, 0(r31) -/* 8014B0E4 00148044 41 82 00 10 */ beq lbl_8014B0F4 -/* 8014B0E8 00148048 3C 60 80 3E */ lis r3, lbl_803E1318@ha -/* 8014B0EC 0014804C 38 03 13 18 */ addi r0, r3, lbl_803E1318@l -/* 8014B0F0 00148050 90 1F 00 00 */ stw r0, 0(r31) -lbl_8014B0F4: -/* 8014B0F4 00148054 7C 80 07 35 */ extsh. r0, r4 -/* 8014B0F8 00148058 40 81 00 0C */ ble lbl_8014B104 -/* 8014B0FC 0014805C 7F E3 FB 78 */ mr r3, r31 -/* 8014B100 00148060 48 1C A8 31 */ bl Free__7CMemoryFPCv -lbl_8014B104: -/* 8014B104 00148064 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014B108 00148068 7F E3 FB 78 */ mr r3, r31 -/* 8014B10C 0014806C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8014B110 00148070 7C 08 03 A6 */ mtlr r0 -/* 8014B114 00148074 38 21 00 10 */ addi r1, r1, 0x10 -/* 8014B118 00148078 4E 80 00 20 */ blr - -.global ApplyHeadTracking__11CBSScriptedCFv -ApplyHeadTracking__11CBSScriptedCFv: -/* 8014B11C 0014807C 38 60 00 00 */ li r3, 0 -/* 8014B120 00148080 4E 80 00 20 */ blr - -.global GetBodyStateTransition__11CBSScriptedFfR15CBodyController -GetBodyStateTransition__11CBSScriptedFfR15CBodyController: -/* 8014B124 00148084 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8014B128 00148088 7C 08 02 A6 */ mflr r0 -/* 8014B12C 0014808C 90 01 00 24 */ stw r0, 0x24(r1) -/* 8014B130 00148090 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8014B134 00148094 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8014B138 00148098 7C 9E 23 78 */ mr r30, r4 -/* 8014B13C 0014809C 3B FE 00 04 */ addi r31, r30, 4 -/* 8014B140 001480A0 38 80 00 0F */ li r4, 0xf -/* 8014B144 001480A4 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8014B148 001480A8 7C 7D 1B 78 */ mr r29, r3 -/* 8014B14C 001480AC 7F E3 FB 78 */ mr r3, r31 -/* 8014B150 001480B0 4B FE 63 01 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8014B154 001480B4 28 03 00 00 */ cmplwi r3, 0 -/* 8014B158 001480B8 41 82 00 0C */ beq lbl_8014B164 -/* 8014B15C 001480BC 38 60 00 0E */ li r3, 0xe -/* 8014B160 001480C0 48 00 00 B4 */ b lbl_8014B214 -lbl_8014B164: -/* 8014B164 001480C4 7F E3 FB 78 */ mr r3, r31 -/* 8014B168 001480C8 38 80 00 03 */ li r4, 3 -/* 8014B16C 001480CC 4B FE 62 E5 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8014B170 001480D0 28 03 00 00 */ cmplwi r3, 0 -/* 8014B174 001480D4 41 82 00 0C */ beq lbl_8014B180 -/* 8014B178 001480D8 38 60 00 00 */ li r3, 0 -/* 8014B17C 001480DC 48 00 00 98 */ b lbl_8014B214 -lbl_8014B180: -/* 8014B180 001480E0 7F E3 FB 78 */ mr r3, r31 -/* 8014B184 001480E4 38 80 00 09 */ li r4, 9 -/* 8014B188 001480E8 4B FE 62 C9 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8014B18C 001480EC 28 03 00 00 */ cmplwi r3, 0 -/* 8014B190 001480F0 41 82 00 0C */ beq lbl_8014B19C -/* 8014B194 001480F4 38 60 00 0A */ li r3, 0xa -/* 8014B198 001480F8 48 00 00 7C */ b lbl_8014B214 -lbl_8014B19C: -/* 8014B19C 001480FC 7F E3 FB 78 */ mr r3, r31 -/* 8014B1A0 00148100 38 80 00 04 */ li r4, 4 -/* 8014B1A4 00148104 4B FE 62 AD */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8014B1A8 00148108 28 03 00 00 */ cmplwi r3, 0 -/* 8014B1AC 0014810C 41 82 00 0C */ beq lbl_8014B1B8 -/* 8014B1B0 00148110 38 60 00 06 */ li r3, 6 -/* 8014B1B4 00148114 48 00 00 60 */ b lbl_8014B214 -lbl_8014B1B8: -/* 8014B1B8 00148118 7F E3 FB 78 */ mr r3, r31 -/* 8014B1BC 0014811C 38 80 00 13 */ li r4, 0x13 -/* 8014B1C0 00148120 4B FE 62 91 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8014B1C4 00148124 28 03 00 00 */ cmplwi r3, 0 -/* 8014B1C8 00148128 41 82 00 0C */ beq lbl_8014B1D4 -/* 8014B1CC 0014812C 38 60 00 11 */ li r3, 0x11 -/* 8014B1D0 00148130 48 00 00 44 */ b lbl_8014B214 -lbl_8014B1D4: -/* 8014B1D4 00148134 88 1D 00 04 */ lbz r0, 4(r29) -/* 8014B1D8 00148138 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8014B1DC 0014813C 41 82 00 20 */ beq lbl_8014B1FC -/* 8014B1E0 00148140 7F E3 FB 78 */ mr r3, r31 -/* 8014B1E4 00148144 38 80 00 0A */ li r4, 0xa -/* 8014B1E8 00148148 4B FE 62 69 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8014B1EC 0014814C 28 03 00 00 */ cmplwi r3, 0 -/* 8014B1F0 00148150 41 82 00 20 */ beq lbl_8014B210 -/* 8014B1F4 00148154 38 60 00 05 */ li r3, 5 -/* 8014B1F8 00148158 48 00 00 1C */ b lbl_8014B214 -lbl_8014B1FC: -/* 8014B1FC 0014815C 88 1E 03 00 */ lbz r0, 0x300(r30) -/* 8014B200 00148160 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8014B204 00148164 41 82 00 0C */ beq lbl_8014B210 -/* 8014B208 00148168 38 60 00 05 */ li r3, 5 -/* 8014B20C 0014816C 48 00 00 08 */ b lbl_8014B214 -lbl_8014B210: -/* 8014B210 00148170 38 60 FF FF */ li r3, -1 -lbl_8014B214: -/* 8014B214 00148174 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8014B218 00148178 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8014B21C 0014817C 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8014B220 00148180 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 8014B224 00148184 7C 08 03 A6 */ mtlr r0 -/* 8014B228 00148188 38 21 00 20 */ addi r1, r1, 0x20 -/* 8014B22C 0014818C 4E 80 00 20 */ blr - -.global Shutdown__11CBSScriptedFR15CBodyController -Shutdown__11CBSScriptedFR15CBodyController: -/* 8014B230 00148190 4E 80 00 20 */ blr - -.global UpdateBody__11CBSScriptedFfR15CBodyControllerR13CStateManager -UpdateBody__11CBSScriptedFfR15CBodyControllerR13CStateManager: -/* 8014B234 00148194 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8014B238 00148198 7C 08 02 A6 */ mflr r0 -/* 8014B23C 0014819C 90 01 00 34 */ stw r0, 0x34(r1) -/* 8014B240 001481A0 DB E1 00 20 */ stfd f31, 0x20(r1) -/* 8014B244 001481A4 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 -/* 8014B248 001481A8 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8014B24C 001481AC 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8014B250 001481B0 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8014B254 001481B4 FF E0 08 90 */ fmr f31, f1 -/* 8014B258 001481B8 7C 7D 1B 78 */ mr r29, r3 -/* 8014B25C 001481BC 7C 9E 23 78 */ mr r30, r4 -/* 8014B260 001481C0 4B FF FE C5 */ bl GetBodyStateTransition__11CBSScriptedFfR15CBodyController -/* 8014B264 001481C4 7C 7F 1B 78 */ mr r31, r3 -/* 8014B268 001481C8 2C 1F FF FF */ cmpwi r31, -1 -/* 8014B26C 001481CC 40 82 00 88 */ bne lbl_8014B2F4 -/* 8014B270 001481D0 38 7E 00 1C */ addi r3, r30, 0x1c -/* 8014B274 001481D4 C0 22 9C E8 */ lfs f1, lbl_805ABA08@sda21(r2) -/* 8014B278 001481D8 C0 1E 00 1C */ lfs f0, 0x1c(r30) -/* 8014B27C 001481DC 38 00 00 00 */ li r0, 0 -/* 8014B280 001481E0 FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 8014B284 001481E4 40 82 00 1C */ bne lbl_8014B2A0 -/* 8014B288 001481E8 C0 03 00 04 */ lfs f0, 4(r3) -/* 8014B28C 001481EC FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 8014B290 001481F0 40 82 00 10 */ bne lbl_8014B2A0 -/* 8014B294 001481F4 C0 03 00 08 */ lfs f0, 8(r3) -/* 8014B298 001481F8 FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 8014B29C 001481FC 41 82 00 08 */ beq lbl_8014B2A4 -lbl_8014B2A0: -/* 8014B2A0 00148200 38 00 00 01 */ li r0, 1 -lbl_8014B2A4: -/* 8014B2A4 00148204 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 8014B2A8 00148208 41 82 00 14 */ beq lbl_8014B2BC -/* 8014B2AC 0014820C FC 20 F8 90 */ fmr f1, f31 -/* 8014B2B0 00148210 7F C3 F3 78 */ mr r3, r30 -/* 8014B2B4 00148214 38 9E 00 1C */ addi r4, r30, 0x1c -/* 8014B2B8 00148218 4B FE F3 ED */ bl FaceDirection__15CBodyControllerFRC9CVector3ff -lbl_8014B2BC: -/* 8014B2BC 0014821C 88 7D 00 04 */ lbz r3, 4(r29) -/* 8014B2C0 00148220 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f -/* 8014B2C4 00148224 41 82 00 30 */ beq lbl_8014B2F4 -/* 8014B2C8 00148228 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f -/* 8014B2CC 0014822C 41 82 00 28 */ beq lbl_8014B2F4 -/* 8014B2D0 00148230 C0 3D 00 08 */ lfs f1, 8(r29) -/* 8014B2D4 00148234 C0 02 9C E8 */ lfs f0, lbl_805ABA08@sda21(r2) -/* 8014B2D8 00148238 EC 21 F8 28 */ fsubs f1, f1, f31 -/* 8014B2DC 0014823C D0 3D 00 08 */ stfs f1, 8(r29) -/* 8014B2E0 00148240 C0 3D 00 08 */ lfs f1, 8(r29) -/* 8014B2E4 00148244 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8014B2E8 00148248 4C 40 13 82 */ cror 2, 0, 2 -/* 8014B2EC 0014824C 40 82 00 08 */ bne lbl_8014B2F4 -/* 8014B2F0 00148250 3B E0 00 05 */ li r31, 5 -lbl_8014B2F4: -/* 8014B2F4 00148254 7F E3 FB 78 */ mr r3, r31 -/* 8014B2F8 00148258 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 -/* 8014B2FC 0014825C 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8014B300 00148260 CB E1 00 20 */ lfd f31, 0x20(r1) -/* 8014B304 00148264 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8014B308 00148268 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8014B30C 0014826C 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 8014B310 00148270 7C 08 03 A6 */ mtlr r0 -/* 8014B314 00148274 38 21 00 30 */ addi r1, r1, 0x30 -/* 8014B318 00148278 4E 80 00 20 */ blr - -.global Start__11CBSScriptedFR15CBodyControllerR13CStateManager -Start__11CBSScriptedFR15CBodyControllerR13CStateManager: -/* 8014B31C 0014827C 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8014B320 00148280 7C 08 02 A6 */ mflr r0 -/* 8014B324 00148284 90 01 00 44 */ stw r0, 0x44(r1) -/* 8014B328 00148288 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 8014B32C 0014828C 7C 9F 23 78 */ mr r31, r4 -/* 8014B330 00148290 38 80 00 13 */ li r4, 0x13 -/* 8014B334 00148294 93 C1 00 38 */ stw r30, 0x38(r1) -/* 8014B338 00148298 7C 7E 1B 78 */ mr r30, r3 -/* 8014B33C 0014829C 38 7F 00 04 */ addi r3, r31, 4 -/* 8014B340 001482A0 4B FE 61 11 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8014B344 001482A4 88 03 00 0C */ lbz r0, 0xc(r3) -/* 8014B348 001482A8 7C 6A 1B 78 */ mr r10, r3 -/* 8014B34C 001482AC 88 9E 00 04 */ lbz r4, 4(r30) -/* 8014B350 001482B0 38 E0 FF FF */ li r7, -1 -/* 8014B354 001482B4 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f -/* 8014B358 001482B8 C0 02 9C EC */ lfs f0, lbl_805ABA0C@sda21(r2) -/* 8014B35C 001482BC 50 64 3E 30 */ rlwimi r4, r3, 7, 0x18, 0x18 -/* 8014B360 001482C0 38 A0 00 01 */ li r5, 1 -/* 8014B364 001482C4 98 9E 00 04 */ stb r4, 4(r30) -/* 8014B368 001482C8 38 00 00 00 */ li r0, 0 -/* 8014B36C 001482CC 7F E3 FB 78 */ mr r3, r31 -/* 8014B370 001482D0 38 81 00 08 */ addi r4, r1, 8 -/* 8014B374 001482D4 89 2A 00 0C */ lbz r9, 0xc(r10) -/* 8014B378 001482D8 38 C0 00 00 */ li r6, 0 -/* 8014B37C 001482DC 89 1E 00 04 */ lbz r8, 4(r30) -/* 8014B380 001482E0 51 28 06 72 */ rlwimi r8, r9, 0, 0x19, 0x19 -/* 8014B384 001482E4 99 1E 00 04 */ stb r8, 4(r30) -/* 8014B388 001482E8 C0 2A 00 10 */ lfs f1, 0x10(r10) -/* 8014B38C 001482EC D0 3E 00 08 */ stfs f1, 8(r30) -/* 8014B390 001482F0 81 0A 00 08 */ lwz r8, 8(r10) -/* 8014B394 001482F4 91 01 00 08 */ stw r8, 8(r1) -/* 8014B398 001482F8 90 E1 00 0C */ stw r7, 0xc(r1) -/* 8014B39C 001482FC D0 01 00 10 */ stfs f0, 0x10(r1) -/* 8014B3A0 00148300 98 A1 00 14 */ stb r5, 0x14(r1) -/* 8014B3A4 00148304 90 01 00 18 */ stw r0, 0x18(r1) -/* 8014B3A8 00148308 90 01 00 1C */ stw r0, 0x1c(r1) -/* 8014B3AC 0014830C 98 01 00 20 */ stb r0, 0x20(r1) -/* 8014B3B0 00148310 90 01 00 24 */ stw r0, 0x24(r1) -/* 8014B3B4 00148314 90 01 00 28 */ stw r0, 0x28(r1) -/* 8014B3B8 00148318 90 01 00 2C */ stw r0, 0x2c(r1) -/* 8014B3BC 0014831C 88 0A 00 0C */ lbz r0, 0xc(r10) -/* 8014B3C0 00148320 54 05 CF FE */ rlwinm r5, r0, 0x19, 0x1f, 0x1f -/* 8014B3C4 00148324 4B FE F5 59 */ bl SetCurrentAnimation__15CBodyControllerFRC18CAnimPlaybackParmsbb -/* 8014B3C8 00148328 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8014B3CC 0014832C 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 8014B3D0 00148330 83 C1 00 38 */ lwz r30, 0x38(r1) -/* 8014B3D4 00148334 7C 08 03 A6 */ mtlr r0 -/* 8014B3D8 00148338 38 21 00 40 */ addi r1, r1, 0x40 -/* 8014B3DC 0014833C 4E 80 00 20 */ blr - -.global __ct__11CBSScriptedFv -__ct__11CBSScriptedFv: -/* 8014B3E0 00148340 3C C0 80 3E */ lis r6, lbl_803E1318@ha -/* 8014B3E4 00148344 3C A0 80 3E */ lis r5, lbl_803E24A8@ha -/* 8014B3E8 00148348 38 C6 13 18 */ addi r6, r6, lbl_803E1318@l -/* 8014B3EC 0014834C 38 80 00 00 */ li r4, 0 -/* 8014B3F0 00148350 90 C3 00 00 */ stw r6, 0(r3) -/* 8014B3F4 00148354 38 05 24 A8 */ addi r0, r5, lbl_803E24A8@l -/* 8014B3F8 00148358 C0 02 9C E8 */ lfs f0, lbl_805ABA08@sda21(r2) -/* 8014B3FC 0014835C 90 03 00 00 */ stw r0, 0(r3) -/* 8014B400 00148360 88 03 00 04 */ lbz r0, 4(r3) -/* 8014B404 00148364 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 -/* 8014B408 00148368 98 03 00 04 */ stb r0, 4(r3) -/* 8014B40C 0014836C 88 03 00 04 */ lbz r0, 4(r3) -/* 8014B410 00148370 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 -/* 8014B414 00148374 98 03 00 04 */ stb r0, 4(r3) -/* 8014B418 00148378 D0 03 00 08 */ stfs f0, 8(r3) -/* 8014B41C 0014837C 4E 80 00 20 */ blr - -.global __dt__16CPuddleToadGammaFv -__dt__16CPuddleToadGammaFv: -/* 8014B420 00148380 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8014B424 00148384 7C 08 02 A6 */ mflr r0 -/* 8014B428 00148388 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014B42C 0014838C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8014B430 00148390 7C 9F 23 78 */ mr r31, r4 -/* 8014B434 00148394 93 C1 00 08 */ stw r30, 8(r1) -/* 8014B438 00148398 7C 7E 1B 79 */ or. r30, r3, r3 -/* 8014B43C 0014839C 41 82 00 54 */ beq lbl_8014B490 -/* 8014B440 001483A0 3C 60 80 3E */ lis r3, lbl_803E24E0@ha -/* 8014B444 001483A4 34 1E 05 E4 */ addic. r0, r30, 0x5e4 -/* 8014B448 001483A8 38 03 24 E0 */ addi r0, r3, lbl_803E24E0@l -/* 8014B44C 001483AC 90 1E 00 00 */ stw r0, 0(r30) -/* 8014B450 001483B0 41 82 00 24 */ beq lbl_8014B474 -/* 8014B454 001483B4 80 7E 05 E4 */ lwz r3, 0x5e4(r30) -/* 8014B458 001483B8 28 03 00 00 */ cmplwi r3, 0 -/* 8014B45C 001483BC 41 82 00 18 */ beq lbl_8014B474 -/* 8014B460 001483C0 81 83 00 00 */ lwz r12, 0(r3) -/* 8014B464 001483C4 38 80 00 01 */ li r4, 1 -/* 8014B468 001483C8 81 8C 00 20 */ lwz r12, 0x20(r12) -/* 8014B46C 001483CC 7D 89 03 A6 */ mtctr r12 -/* 8014B470 001483D0 4E 80 04 21 */ bctrl -lbl_8014B474: -/* 8014B474 001483D4 7F C3 F3 78 */ mr r3, r30 -/* 8014B478 001483D8 38 80 00 00 */ li r4, 0 -/* 8014B47C 001483DC 4B F2 C0 F5 */ bl __dt__10CPatternedFv -/* 8014B480 001483E0 7F E0 07 35 */ extsh. r0, r31 -/* 8014B484 001483E4 40 81 00 0C */ ble lbl_8014B490 -/* 8014B488 001483E8 7F C3 F3 78 */ mr r3, r30 -/* 8014B48C 001483EC 48 1C A4 A5 */ bl Free__7CMemoryFPCv -lbl_8014B490: -/* 8014B490 001483F0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014B494 001483F4 7F C3 F3 78 */ mr r3, r30 -/* 8014B498 001483F8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8014B49C 001483FC 83 C1 00 08 */ lwz r30, 8(r1) -/* 8014B4A0 00148400 7C 08 03 A6 */ mtlr r0 -/* 8014B4A4 00148404 38 21 00 10 */ addi r1, r1, 0x10 -/* 8014B4A8 00148408 4E 80 00 20 */ blr - -.global GetPrimitiveTransform__16CPuddleToadGammaCFv -GetPrimitiveTransform__16CPuddleToadGammaCFv: -/* 8014B4AC 0014840C 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 8014B4B0 00148410 7C 08 02 A6 */ mflr r0 -/* 8014B4B4 00148414 90 01 00 54 */ stw r0, 0x54(r1) -/* 8014B4B8 00148418 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 8014B4BC 0014841C 7C 9F 23 78 */ mr r31, r4 -/* 8014B4C0 00148420 38 9F 00 34 */ addi r4, r31, 0x34 -/* 8014B4C4 00148424 93 C1 00 48 */ stw r30, 0x48(r1) -/* 8014B4C8 00148428 7C 7E 1B 78 */ mr r30, r3 -/* 8014B4CC 0014842C 38 61 00 14 */ addi r3, r1, 0x14 -/* 8014B4D0 00148430 48 1C 76 A5 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8014B4D4 00148434 7F E4 FB 78 */ mr r4, r31 -/* 8014B4D8 00148438 38 61 00 08 */ addi r3, r1, 8 -/* 8014B4DC 0014843C 4B FC F1 51 */ bl GetPrimitiveOffset__13CPhysicsActorCFv -/* 8014B4E0 00148440 C0 21 00 20 */ lfs f1, 0x20(r1) -/* 8014B4E4 00148444 7F C3 F3 78 */ mr r3, r30 -/* 8014B4E8 00148448 C0 01 00 08 */ lfs f0, 8(r1) -/* 8014B4EC 0014844C 38 81 00 14 */ addi r4, r1, 0x14 -/* 8014B4F0 00148450 C0 61 00 30 */ lfs f3, 0x30(r1) -/* 8014B4F4 00148454 C0 41 00 0C */ lfs f2, 0xc(r1) -/* 8014B4F8 00148458 EC 81 00 2A */ fadds f4, f1, f0 -/* 8014B4FC 0014845C C0 21 00 40 */ lfs f1, 0x40(r1) -/* 8014B500 00148460 C0 01 00 10 */ lfs f0, 0x10(r1) -/* 8014B504 00148464 EC 43 10 2A */ fadds f2, f3, f2 -/* 8014B508 00148468 D0 81 00 20 */ stfs f4, 0x20(r1) -/* 8014B50C 0014846C EC 01 00 2A */ fadds f0, f1, f0 -/* 8014B510 00148470 D0 41 00 30 */ stfs f2, 0x30(r1) -/* 8014B514 00148474 D0 01 00 40 */ stfs f0, 0x40(r1) -/* 8014B518 00148478 48 1C 76 5D */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8014B51C 0014847C 80 01 00 54 */ lwz r0, 0x54(r1) -/* 8014B520 00148480 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 8014B524 00148484 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 8014B528 00148488 7C 08 03 A6 */ mtlr r0 -/* 8014B52C 0014848C 38 21 00 50 */ addi r1, r1, 0x50 -/* 8014B530 00148490 4E 80 00 20 */ blr - -.global GetCollisionPrimitive__16CPuddleToadGammaCFv -GetCollisionPrimitive__16CPuddleToadGammaCFv: -/* 8014B534 00148494 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8014B538 00148498 7C 08 02 A6 */ mflr r0 -/* 8014B53C 0014849C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014B540 001484A0 80 03 05 E4 */ lwz r0, 0x5e4(r3) -/* 8014B544 001484A4 28 00 00 00 */ cmplwi r0, 0 -/* 8014B548 001484A8 40 82 00 0C */ bne lbl_8014B554 -/* 8014B54C 001484AC 4B FC F5 09 */ bl GetCollisionPrimitive__13CPhysicsActorCFv -/* 8014B550 001484B0 48 00 00 08 */ b lbl_8014B558 -lbl_8014B554: -/* 8014B554 001484B4 7C 03 03 78 */ mr r3, r0 -lbl_8014B558: -/* 8014B558 001484B8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014B55C 001484BC 7C 08 03 A6 */ mtlr r0 -/* 8014B560 001484C0 38 21 00 10 */ addi r1, r1, 0x10 -/* 8014B564 001484C4 4E 80 00 20 */ blr - -.global GetTouchBounds__16CPuddleToadGammaCFv -GetTouchBounds__16CPuddleToadGammaCFv: -/* 8014B568 001484C8 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8014B56C 001484CC 7C 08 02 A6 */ mflr r0 -/* 8014B570 001484D0 7C 85 23 78 */ mr r5, r4 -/* 8014B574 001484D4 90 01 00 44 */ stw r0, 0x44(r1) -/* 8014B578 001484D8 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 8014B57C 001484DC 7C 7F 1B 78 */ mr r31, r3 -/* 8014B580 001484E0 88 04 00 30 */ lbz r0, 0x30(r4) -/* 8014B584 001484E4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8014B588 001484E8 41 82 00 BC */ beq lbl_8014B644 -/* 8014B58C 001484EC 80 05 05 E4 */ lwz r0, 0x5e4(r5) -/* 8014B590 001484F0 28 00 00 00 */ cmplwi r0, 0 -/* 8014B594 001484F4 41 82 00 64 */ beq lbl_8014B5F8 -/* 8014B598 001484F8 7C 04 03 78 */ mr r4, r0 -/* 8014B59C 001484FC 38 61 00 20 */ addi r3, r1, 0x20 -/* 8014B5A0 00148500 81 84 00 00 */ lwz r12, 0(r4) -/* 8014B5A4 00148504 38 A5 00 34 */ addi r5, r5, 0x34 -/* 8014B5A8 00148508 81 8C 00 14 */ lwz r12, 0x14(r12) -/* 8014B5AC 0014850C 7D 89 03 A6 */ mtctr r12 -/* 8014B5B0 00148510 4E 80 04 21 */ bctrl -/* 8014B5B4 00148514 38 00 00 01 */ li r0, 1 -/* 8014B5B8 00148518 28 1F 00 00 */ cmplwi r31, 0 -/* 8014B5BC 0014851C 98 1F 00 18 */ stb r0, 0x18(r31) -/* 8014B5C0 00148520 41 82 00 8C */ beq lbl_8014B64C -/* 8014B5C4 00148524 C0 01 00 20 */ lfs f0, 0x20(r1) -/* 8014B5C8 00148528 D0 1F 00 00 */ stfs f0, 0(r31) -/* 8014B5CC 0014852C C0 01 00 24 */ lfs f0, 0x24(r1) -/* 8014B5D0 00148530 D0 1F 00 04 */ stfs f0, 4(r31) -/* 8014B5D4 00148534 C0 01 00 28 */ lfs f0, 0x28(r1) -/* 8014B5D8 00148538 D0 1F 00 08 */ stfs f0, 8(r31) -/* 8014B5DC 0014853C C0 01 00 2C */ lfs f0, 0x2c(r1) -/* 8014B5E0 00148540 D0 1F 00 0C */ stfs f0, 0xc(r31) -/* 8014B5E4 00148544 C0 01 00 30 */ lfs f0, 0x30(r1) -/* 8014B5E8 00148548 D0 1F 00 10 */ stfs f0, 0x10(r31) -/* 8014B5EC 0014854C C0 01 00 34 */ lfs f0, 0x34(r1) -/* 8014B5F0 00148550 D0 1F 00 14 */ stfs f0, 0x14(r31) -/* 8014B5F4 00148554 48 00 00 58 */ b lbl_8014B64C -lbl_8014B5F8: -/* 8014B5F8 00148558 38 61 00 08 */ addi r3, r1, 8 -/* 8014B5FC 0014855C 4B FC F3 31 */ bl GetBoundingBox__13CPhysicsActorCFv -/* 8014B600 00148560 38 00 00 01 */ li r0, 1 -/* 8014B604 00148564 28 1F 00 00 */ cmplwi r31, 0 -/* 8014B608 00148568 98 1F 00 18 */ stb r0, 0x18(r31) -/* 8014B60C 0014856C 41 82 00 40 */ beq lbl_8014B64C -/* 8014B610 00148570 C0 01 00 08 */ lfs f0, 8(r1) -/* 8014B614 00148574 D0 1F 00 00 */ stfs f0, 0(r31) -/* 8014B618 00148578 C0 01 00 0C */ lfs f0, 0xc(r1) -/* 8014B61C 0014857C D0 1F 00 04 */ stfs f0, 4(r31) -/* 8014B620 00148580 C0 01 00 10 */ lfs f0, 0x10(r1) -/* 8014B624 00148584 D0 1F 00 08 */ stfs f0, 8(r31) -/* 8014B628 00148588 C0 01 00 14 */ lfs f0, 0x14(r1) -/* 8014B62C 0014858C D0 1F 00 0C */ stfs f0, 0xc(r31) -/* 8014B630 00148590 C0 01 00 18 */ lfs f0, 0x18(r1) -/* 8014B634 00148594 D0 1F 00 10 */ stfs f0, 0x10(r31) -/* 8014B638 00148598 C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 8014B63C 0014859C D0 1F 00 14 */ stfs f0, 0x14(r31) -/* 8014B640 001485A0 48 00 00 0C */ b lbl_8014B64C -lbl_8014B644: -/* 8014B644 001485A4 38 00 00 00 */ li r0, 0 -/* 8014B648 001485A8 98 1F 00 18 */ stb r0, 0x18(r31) -lbl_8014B64C: -/* 8014B64C 001485AC 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8014B650 001485B0 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 8014B654 001485B4 7C 08 03 A6 */ mtlr r0 -/* 8014B658 001485B8 38 21 00 40 */ addi r1, r1, 0x40 -/* 8014B65C 001485BC 4E 80 00 20 */ blr - -.global Attack__16CPuddleToadGammaFR13CStateManager9EStateMsgf -Attack__16CPuddleToadGammaFR13CStateManager9EStateMsgf: -/* 8014B660 001485C0 94 21 FF 50 */ stwu r1, -0xb0(r1) -/* 8014B664 001485C4 7C 08 02 A6 */ mflr r0 -/* 8014B668 001485C8 2C 05 00 01 */ cmpwi r5, 1 -/* 8014B66C 001485CC 90 01 00 B4 */ stw r0, 0xb4(r1) -/* 8014B670 001485D0 93 E1 00 AC */ stw r31, 0xac(r1) -/* 8014B674 001485D4 93 C1 00 A8 */ stw r30, 0xa8(r1) -/* 8014B678 001485D8 7C 9E 23 78 */ mr r30, r4 -/* 8014B67C 001485DC 93 A1 00 A4 */ stw r29, 0xa4(r1) -/* 8014B680 001485E0 7C 7D 1B 78 */ mr r29, r3 -/* 8014B684 001485E4 41 82 01 10 */ beq lbl_8014B794 -/* 8014B688 001485E8 40 80 00 10 */ bge lbl_8014B698 -/* 8014B68C 001485EC 2C 05 00 00 */ cmpwi r5, 0 -/* 8014B690 001485F0 40 80 00 14 */ bge lbl_8014B6A4 -/* 8014B694 001485F4 48 00 01 F8 */ b lbl_8014B88C -lbl_8014B698: -/* 8014B698 001485F8 2C 05 00 03 */ cmpwi r5, 3 -/* 8014B69C 001485FC 40 80 01 F0 */ bge lbl_8014B88C -/* 8014B6A0 00148600 48 00 01 B8 */ b lbl_8014B858 -lbl_8014B6A4: -/* 8014B6A4 00148604 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 8014B6A8 00148608 4B FC FC D1 */ bl Stop__13CPhysicsActorFv -/* 8014B6AC 0014860C 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8014B6B0 00148610 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 8014B6B4 00148614 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 8014B6B8 00148618 4B FC F5 E9 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -/* 8014B6BC 0014861C 3C A0 80 3E */ lis r5, lbl_803DAA68@ha -/* 8014B6C0 00148620 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8014B6C4 00148624 38 83 66 A0 */ addi r4, r3, skZero3f@l -/* 8014B6C8 00148628 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 8014B6CC 0014862C 39 05 AA 68 */ addi r8, r5, lbl_803DAA68@l -/* 8014B6D0 00148630 C0 44 00 00 */ lfs f2, 0(r4) -/* 8014B6D4 00148634 C0 24 00 04 */ lfs f1, 4(r4) -/* 8014B6D8 00148638 3C C0 80 3E */ lis r6, lbl_803DA9D8@ha -/* 8014B6DC 0014863C C0 04 00 08 */ lfs f0, 8(r4) -/* 8014B6E0 00148640 38 E0 00 05 */ li r7, 5 -/* 8014B6E4 00148644 38 A0 00 01 */ li r5, 1 -/* 8014B6E8 00148648 38 00 00 00 */ li r0, 0 -/* 8014B6EC 0014864C 3B E3 00 04 */ addi r31, r3, 4 -/* 8014B6F0 00148650 91 01 00 24 */ stw r8, 0x24(r1) -/* 8014B6F4 00148654 38 C6 A9 D8 */ addi r6, r6, lbl_803DA9D8@l -/* 8014B6F8 00148658 38 80 00 05 */ li r4, 5 -/* 8014B6FC 0014865C 90 E1 00 28 */ stw r7, 0x28(r1) -/* 8014B700 00148660 7F E3 FB 78 */ mr r3, r31 -/* 8014B704 00148664 90 C1 00 24 */ stw r6, 0x24(r1) -/* 8014B708 00148668 90 A1 00 2C */ stw r5, 0x2c(r1) -/* 8014B70C 0014866C D0 41 00 30 */ stfs f2, 0x30(r1) -/* 8014B710 00148670 D0 21 00 34 */ stfs f1, 0x34(r1) -/* 8014B714 00148674 D0 01 00 38 */ stfs f0, 0x38(r1) -/* 8014B718 00148678 98 01 00 3C */ stb r0, 0x3c(r1) -/* 8014B71C 0014867C 4B FE 5D 1D */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8014B720 00148680 80 01 00 28 */ lwz r0, 0x28(r1) -/* 8014B724 00148684 3C 60 80 3E */ lis r3, lbl_803DA9D8@ha -/* 8014B728 00148688 38 E3 A9 D8 */ addi r7, r3, lbl_803DA9D8@l -/* 8014B72C 0014868C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 8014B730 00148690 90 1F 01 10 */ stw r0, 0x110(r31) -/* 8014B734 00148694 38 A0 00 00 */ li r5, 0 -/* 8014B738 00148698 80 01 00 2C */ lwz r0, 0x2c(r1) -/* 8014B73C 0014869C 38 C3 AA 68 */ addi r6, r3, lbl_803DAA68@l -/* 8014B740 001486A0 80 61 00 30 */ lwz r3, 0x30(r1) -/* 8014B744 001486A4 38 80 00 01 */ li r4, 1 -/* 8014B748 001486A8 90 1F 01 14 */ stw r0, 0x114(r31) -/* 8014B74C 001486AC 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8014B750 001486B0 90 7F 01 18 */ stw r3, 0x118(r31) -/* 8014B754 001486B4 80 61 00 38 */ lwz r3, 0x38(r1) -/* 8014B758 001486B8 90 1F 01 1C */ stw r0, 0x11c(r31) -/* 8014B75C 001486BC 88 01 00 3C */ lbz r0, 0x3c(r1) -/* 8014B760 001486C0 90 7F 01 20 */ stw r3, 0x120(r31) -/* 8014B764 001486C4 98 1F 01 24 */ stb r0, 0x124(r31) -/* 8014B768 001486C8 88 1D 05 E8 */ lbz r0, 0x5e8(r29) -/* 8014B76C 001486CC 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a -/* 8014B770 001486D0 90 E1 00 24 */ stw r7, 0x24(r1) -/* 8014B774 001486D4 98 1D 05 E8 */ stb r0, 0x5e8(r29) -/* 8014B778 001486D8 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 8014B77C 001486DC 90 C1 00 24 */ stw r6, 0x24(r1) -/* 8014B780 001486E0 98 A3 05 90 */ stb r5, 0x590(r3) -/* 8014B784 001486E4 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 8014B788 001486E8 80 63 07 68 */ lwz r3, 0x768(r3) -/* 8014B78C 001486EC 4B FA 38 05 */ bl SetBombJumpState__10CMorphBallFQ210CMorphBall14EBombJumpState -/* 8014B790 001486F0 48 00 00 FC */ b lbl_8014B88C -lbl_8014B794: -/* 8014B794 001486F4 88 1D 05 E8 */ lbz r0, 0x5e8(r29) -/* 8014B798 001486F8 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f -/* 8014B79C 001486FC 40 82 00 8C */ bne lbl_8014B828 -/* 8014B7A0 00148700 80 8D 8C 00 */ lwz r4, lbl_805A77C0@sda21(r13) -/* 8014B7A4 00148704 38 61 00 14 */ addi r3, r1, 0x14 -/* 8014B7A8 00148708 4B EB 95 11 */ bl string_l__4rstlFPCc -/* 8014B7AC 0014870C 7F A4 EB 78 */ mr r4, r29 -/* 8014B7B0 00148710 38 61 00 40 */ addi r3, r1, 0x40 -/* 8014B7B4 00148714 38 A1 00 14 */ addi r5, r1, 0x14 -/* 8014B7B8 00148718 4B F2 D1 C1 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8014B7BC 0014871C 38 61 00 70 */ addi r3, r1, 0x70 -/* 8014B7C0 00148720 38 81 00 40 */ addi r4, r1, 0x40 -/* 8014B7C4 00148724 48 1C 73 B1 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8014B7C8 00148728 38 61 00 14 */ addi r3, r1, 0x14 -/* 8014B7CC 0014872C 48 1F 23 15 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 8014B7D0 00148730 3C 80 80 57 */ lis r4, lbl_805719DC@ha -/* 8014B7D4 00148734 38 61 00 08 */ addi r3, r1, 8 -/* 8014B7D8 00148738 38 A4 19 DC */ addi r5, r4, lbl_805719DC@l -/* 8014B7DC 0014873C 38 9D 00 34 */ addi r4, r29, 0x34 -/* 8014B7E0 00148740 48 1C 72 A1 */ bl Rotate__12CTransform4fCFRC9CVector3f -/* 8014B7E4 00148744 C0 21 00 7C */ lfs f1, 0x7c(r1) -/* 8014B7E8 00148748 7F A3 EB 78 */ mr r3, r29 -/* 8014B7EC 0014874C C0 01 00 08 */ lfs f0, 8(r1) -/* 8014B7F0 00148750 7F C4 F3 78 */ mr r4, r30 -/* 8014B7F4 00148754 C0 81 00 8C */ lfs f4, 0x8c(r1) -/* 8014B7F8 00148758 38 BD 05 CC */ addi r5, r29, 0x5cc -/* 8014B7FC 0014875C C0 61 00 0C */ lfs f3, 0xc(r1) -/* 8014B800 00148760 EC 01 00 2A */ fadds f0, f1, f0 -/* 8014B804 00148764 C0 41 00 9C */ lfs f2, 0x9c(r1) -/* 8014B808 00148768 C0 21 00 10 */ lfs f1, 0x10(r1) -/* 8014B80C 0014876C EC 64 18 2A */ fadds f3, f4, f3 -/* 8014B810 00148770 D0 1D 05 CC */ stfs f0, 0x5cc(r29) -/* 8014B814 00148774 EC 02 08 2A */ fadds f0, f2, f1 -/* 8014B818 00148778 D0 7D 05 D0 */ stfs f3, 0x5d0(r29) -/* 8014B81C 0014877C D0 1D 05 D4 */ stfs f0, 0x5d4(r29) -/* 8014B820 00148780 48 00 06 F1 */ bl sub_8014bf10 -/* 8014B824 00148784 48 00 00 68 */ b lbl_8014B88C -lbl_8014B828: -/* 8014B828 00148788 81 83 00 00 */ lwz r12, 0(r3) -/* 8014B82C 0014878C C0 22 9C F0 */ lfs f1, lbl_805ABA10@sda21(r2) -/* 8014B830 00148790 81 8C 02 74 */ lwz r12, 0x274(r12) -/* 8014B834 00148794 7D 89 03 A6 */ mtctr r12 -/* 8014B838 00148798 4E 80 04 21 */ bctrl -/* 8014B83C 0014879C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8014B840 001487A0 41 82 00 4C */ beq lbl_8014B88C -/* 8014B844 001487A4 7F A3 EB 78 */ mr r3, r29 -/* 8014B848 001487A8 7F C4 F3 78 */ mr r4, r30 -/* 8014B84C 001487AC 38 A0 00 01 */ li r5, 1 -/* 8014B850 001487B0 48 00 0B 1D */ bl SetSolid__16CPuddleToadGammaFR13CStateManagerb -/* 8014B854 001487B4 48 00 00 38 */ b lbl_8014B88C -lbl_8014B858: -/* 8014B858 001487B8 38 A0 00 01 */ li r5, 1 -/* 8014B85C 001487BC 48 00 0B 11 */ bl SetSolid__16CPuddleToadGammaFR13CStateManagerb -/* 8014B860 001487C0 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 8014B864 001487C4 38 00 00 01 */ li r0, 1 -/* 8014B868 001487C8 38 80 00 00 */ li r4, 0 -/* 8014B86C 001487CC 98 03 05 90 */ stb r0, 0x590(r3) -/* 8014B870 001487D0 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 8014B874 001487D4 80 63 07 68 */ lwz r3, 0x768(r3) -/* 8014B878 001487D8 4B FA 37 19 */ bl SetBombJumpState__10CMorphBallFQ210CMorphBall14EBombJumpState -/* 8014B87C 001487DC 88 1D 05 E8 */ lbz r0, 0x5e8(r29) -/* 8014B880 001487E0 38 60 00 00 */ li r3, 0 -/* 8014B884 001487E4 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 8014B888 001487E8 98 1D 05 E8 */ stb r0, 0x5e8(r29) -lbl_8014B88C: -/* 8014B88C 001487EC 80 01 00 B4 */ lwz r0, 0xb4(r1) -/* 8014B890 001487F0 83 E1 00 AC */ lwz r31, 0xac(r1) -/* 8014B894 001487F4 83 C1 00 A8 */ lwz r30, 0xa8(r1) -/* 8014B898 001487F8 83 A1 00 A4 */ lwz r29, 0xa4(r1) -/* 8014B89C 001487FC 7C 08 03 A6 */ mtlr r0 -/* 8014B8A0 00148800 38 21 00 B0 */ addi r1, r1, 0xb0 -/* 8014B8A4 00148804 4E 80 00 20 */ blr - -.global Crouch__16CPuddleToadGammaFR13CStateManager9EStateMsgf -Crouch__16CPuddleToadGammaFR13CStateManager9EStateMsgf: -/* 8014B8A8 00148808 94 21 FF 60 */ stwu r1, -0xa0(r1) -/* 8014B8AC 0014880C 7C 08 02 A6 */ mflr r0 -/* 8014B8B0 00148810 2C 05 00 01 */ cmpwi r5, 1 -/* 8014B8B4 00148814 90 01 00 A4 */ stw r0, 0xa4(r1) -/* 8014B8B8 00148818 93 E1 00 9C */ stw r31, 0x9c(r1) -/* 8014B8BC 0014881C 7C 9F 23 78 */ mr r31, r4 -/* 8014B8C0 00148820 93 C1 00 98 */ stw r30, 0x98(r1) -/* 8014B8C4 00148824 7C 7E 1B 78 */ mr r30, r3 -/* 8014B8C8 00148828 41 82 00 E0 */ beq lbl_8014B9A8 -/* 8014B8CC 0014882C 40 80 00 10 */ bge lbl_8014B8DC -/* 8014B8D0 00148830 2C 05 00 00 */ cmpwi r5, 0 -/* 8014B8D4 00148834 40 80 00 14 */ bge lbl_8014B8E8 -/* 8014B8D8 00148838 48 00 01 CC */ b lbl_8014BAA4 -lbl_8014B8DC: -/* 8014B8DC 0014883C 2C 05 00 03 */ cmpwi r5, 3 -/* 8014B8E0 00148840 40 80 01 C4 */ bge lbl_8014BAA4 -/* 8014B8E4 00148844 48 00 01 8C */ b lbl_8014BA70 -lbl_8014B8E8: -/* 8014B8E8 00148848 38 00 00 00 */ li r0, 0 -/* 8014B8EC 0014884C C0 02 9C F0 */ lfs f0, lbl_805ABA10@sda21(r2) -/* 8014B8F0 00148850 90 1E 05 68 */ stw r0, 0x568(r30) -/* 8014B8F4 00148854 38 60 00 01 */ li r3, 1 -/* 8014B8F8 00148858 D0 1E 05 6C */ stfs f0, 0x56c(r30) -/* 8014B8FC 0014885C 88 1E 05 E8 */ lbz r0, 0x5e8(r30) -/* 8014B900 00148860 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 8014B904 00148864 98 1E 05 E8 */ stb r0, 0x5e8(r30) -/* 8014B908 00148868 88 1E 05 E8 */ lbz r0, 0x5e8(r30) -/* 8014B90C 0014886C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 8014B910 00148870 98 1E 05 E8 */ stb r0, 0x5e8(r30) -/* 8014B914 00148874 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8014B918 00148878 4B FC FA 61 */ bl Stop__13CPhysicsActorFv -/* 8014B91C 0014887C 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8014B920 00148880 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8014B924 00148884 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 8014B928 00148888 4B FC F3 79 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -/* 8014B92C 0014888C 7F C3 F3 78 */ mr r3, r30 -/* 8014B930 00148890 7F E5 FB 78 */ mr r5, r31 -/* 8014B934 00148894 38 80 00 06 */ li r4, 6 -/* 8014B938 00148898 38 C0 FF FF */ li r6, -1 -/* 8014B93C 0014889C 4B F0 57 85 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 8014B940 001488A0 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8014B944 001488A4 38 81 00 0C */ addi r4, r1, 0xc -/* 8014B948 001488A8 38 A0 00 00 */ li r5, 0 -/* 8014B94C 001488AC B0 01 00 0C */ sth r0, 0xc(r1) -/* 8014B950 001488B0 B0 01 00 08 */ sth r0, 8(r1) -/* 8014B954 001488B4 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8014B958 001488B8 4B EC 90 79 */ bl AttachActorToPlayer__7CPlayerF9TUniqueId -/* 8014B95C 001488BC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8014B960 001488C0 40 82 00 0C */ bne lbl_8014B96C -/* 8014B964 001488C4 C0 02 9C F4 */ lfs f0, lbl_805ABA14@sda21(r2) -/* 8014B968 001488C8 D0 1E 05 6C */ stfs f0, 0x56c(r30) -lbl_8014B96C: -/* 8014B96C 001488CC 7F C3 F3 78 */ mr r3, r30 -/* 8014B970 001488D0 7F E4 FB 78 */ mr r4, r31 -/* 8014B974 001488D4 38 A0 00 00 */ li r5, 0 -/* 8014B978 001488D8 48 00 09 F5 */ bl SetSolid__16CPuddleToadGammaFR13CStateManagerb -/* 8014B97C 001488DC 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8014B980 001488E0 38 00 00 00 */ li r0, 0 -/* 8014B984 001488E4 98 03 05 90 */ stb r0, 0x590(r3) -/* 8014B988 001488E8 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8014B98C 001488EC 80 63 07 68 */ lwz r3, 0x768(r3) -/* 8014B990 001488F0 4B FA 5F 65 */ bl DisableHalfPipeStatus__10CMorphBallFv -/* 8014B994 001488F4 7F C3 F3 78 */ mr r3, r30 -/* 8014B998 001488F8 7F E4 FB 78 */ mr r4, r31 -/* 8014B99C 001488FC 38 A0 00 00 */ li r5, 0 -/* 8014B9A0 00148900 48 00 09 CD */ bl SetSolid__16CPuddleToadGammaFR13CStateManagerb -/* 8014B9A4 00148904 48 00 01 00 */ b lbl_8014BAA4 -lbl_8014B9A8: -/* 8014B9A8 00148908 80 8D 8C 00 */ lwz r4, lbl_805A77C0@sda21(r13) -/* 8014B9AC 0014890C 38 61 00 1C */ addi r3, r1, 0x1c -/* 8014B9B0 00148910 4B EB 93 09 */ bl string_l__4rstlFPCc -/* 8014B9B4 00148914 7F C4 F3 78 */ mr r4, r30 -/* 8014B9B8 00148918 38 61 00 2C */ addi r3, r1, 0x2c -/* 8014B9BC 0014891C 38 A1 00 1C */ addi r5, r1, 0x1c -/* 8014B9C0 00148920 4B F2 CF B9 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8014B9C4 00148924 38 61 00 5C */ addi r3, r1, 0x5c -/* 8014B9C8 00148928 38 81 00 2C */ addi r4, r1, 0x2c -/* 8014B9CC 0014892C 48 1C 71 A9 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8014B9D0 00148930 38 61 00 1C */ addi r3, r1, 0x1c -/* 8014B9D4 00148934 48 1F 21 0D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 8014B9D8 00148938 3C 80 80 57 */ lis r4, lbl_805719DC@ha -/* 8014B9DC 0014893C 38 61 00 10 */ addi r3, r1, 0x10 -/* 8014B9E0 00148940 38 A4 19 DC */ addi r5, r4, lbl_805719DC@l -/* 8014B9E4 00148944 38 9E 00 34 */ addi r4, r30, 0x34 -/* 8014B9E8 00148948 48 1C 70 99 */ bl Rotate__12CTransform4fCFRC9CVector3f -/* 8014B9EC 0014894C C0 21 00 68 */ lfs f1, 0x68(r1) -/* 8014B9F0 00148950 7F C3 F3 78 */ mr r3, r30 -/* 8014B9F4 00148954 C0 01 00 10 */ lfs f0, 0x10(r1) -/* 8014B9F8 00148958 7F E4 FB 78 */ mr r4, r31 -/* 8014B9FC 0014895C C0 81 00 78 */ lfs f4, 0x78(r1) -/* 8014BA00 00148960 38 BE 05 CC */ addi r5, r30, 0x5cc -/* 8014BA04 00148964 C0 61 00 14 */ lfs f3, 0x14(r1) -/* 8014BA08 00148968 EC 01 00 2A */ fadds f0, f1, f0 -/* 8014BA0C 0014896C C0 41 00 88 */ lfs f2, 0x88(r1) -/* 8014BA10 00148970 C0 21 00 18 */ lfs f1, 0x18(r1) -/* 8014BA14 00148974 EC 64 18 2A */ fadds f3, f4, f3 -/* 8014BA18 00148978 D0 1E 05 CC */ stfs f0, 0x5cc(r30) -/* 8014BA1C 0014897C EC 02 08 2A */ fadds f0, f2, f1 -/* 8014BA20 00148980 D0 7E 05 D0 */ stfs f3, 0x5d0(r30) -/* 8014BA24 00148984 D0 1E 05 D4 */ stfs f0, 0x5d4(r30) -/* 8014BA28 00148988 48 00 04 E9 */ bl sub_8014bf10 -/* 8014BA2C 0014898C 80 1E 05 68 */ lwz r0, 0x568(r30) -/* 8014BA30 00148990 2C 00 00 01 */ cmpwi r0, 1 -/* 8014BA34 00148994 41 82 00 70 */ beq lbl_8014BAA4 -/* 8014BA38 00148998 40 80 00 6C */ bge lbl_8014BAA4 -/* 8014BA3C 0014899C 2C 00 00 00 */ cmpwi r0, 0 -/* 8014BA40 001489A0 40 80 00 08 */ bge lbl_8014BA48 -/* 8014BA44 001489A4 48 00 00 60 */ b lbl_8014BAA4 -lbl_8014BA48: -/* 8014BA48 001489A8 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 8014BA4C 001489AC 80 03 02 B8 */ lwz r0, 0x2b8(r3) -/* 8014BA50 001489B0 2C 00 00 05 */ cmpwi r0, 5 -/* 8014BA54 001489B4 40 82 00 10 */ bne lbl_8014BA64 -/* 8014BA58 001489B8 38 00 00 01 */ li r0, 1 -/* 8014BA5C 001489BC 90 1E 05 68 */ stw r0, 0x568(r30) -/* 8014BA60 001489C0 48 00 00 44 */ b lbl_8014BAA4 -lbl_8014BA64: -/* 8014BA64 001489C4 38 80 00 03 */ li r4, 3 -/* 8014BA68 001489C8 4B FE EF 71 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -/* 8014BA6C 001489CC 48 00 00 38 */ b lbl_8014BAA4 -lbl_8014BA70: -/* 8014BA70 001489D0 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8014BA74 001489D4 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8014BA78 001489D8 A0 83 02 6C */ lhz r4, 0x26c(r3) -/* 8014BA7C 001489DC 7C 04 00 40 */ cmplw r4, r0 -/* 8014BA80 001489E0 40 82 00 08 */ bne lbl_8014BA88 -/* 8014BA84 001489E4 4B EC 8F 21 */ bl DetachActorFromPlayer__7CPlayerFv -lbl_8014BA88: -/* 8014BA88 001489E8 80 9F 08 4C */ lwz r4, 0x84c(r31) -/* 8014BA8C 001489EC 38 00 00 01 */ li r0, 1 -/* 8014BA90 001489F0 38 60 00 00 */ li r3, 0 -/* 8014BA94 001489F4 98 04 05 90 */ stb r0, 0x590(r4) -/* 8014BA98 001489F8 88 1E 05 E8 */ lbz r0, 0x5e8(r30) -/* 8014BA9C 001489FC 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 8014BAA0 00148A00 98 1E 05 E8 */ stb r0, 0x5e8(r30) -lbl_8014BAA4: -/* 8014BAA4 00148A04 80 01 00 A4 */ lwz r0, 0xa4(r1) -/* 8014BAA8 00148A08 83 E1 00 9C */ lwz r31, 0x9c(r1) -/* 8014BAAC 00148A0C 83 C1 00 98 */ lwz r30, 0x98(r1) -/* 8014BAB0 00148A10 7C 08 03 A6 */ mtlr r0 -/* 8014BAB4 00148A14 38 21 00 A0 */ addi r1, r1, 0xa0 -/* 8014BAB8 00148A18 4E 80 00 20 */ blr - -.global LostInterest__16CPuddleToadGammaFR13CStateManagerf -LostInterest__16CPuddleToadGammaFR13CStateManagerf: -/* 8014BABC 00148A1C 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 8014BAC0 00148A20 7C 08 02 A6 */ mflr r0 -/* 8014BAC4 00148A24 90 01 00 54 */ stw r0, 0x54(r1) -/* 8014BAC8 00148A28 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 8014BACC 00148A2C 7C 9F 23 78 */ mr r31, r4 -/* 8014BAD0 00148A30 7C 64 1B 78 */ mr r4, r3 -/* 8014BAD4 00148A34 38 61 00 20 */ addi r3, r1, 0x20 -/* 8014BAD8 00148A38 81 84 00 00 */ lwz r12, 0(r4) -/* 8014BADC 00148A3C 81 8C 00 40 */ lwz r12, 0x40(r12) -/* 8014BAE0 00148A40 7D 89 03 A6 */ mtctr r12 -/* 8014BAE4 00148A44 4E 80 04 21 */ bctrl -/* 8014BAE8 00148A48 80 9F 08 4C */ lwz r4, 0x84c(r31) -/* 8014BAEC 00148A4C 38 61 00 08 */ addi r3, r1, 8 -/* 8014BAF0 00148A50 4B FC EE 3D */ bl GetBoundingBox__13CPhysicsActorCFv -/* 8014BAF4 00148A54 38 61 00 20 */ addi r3, r1, 0x20 -/* 8014BAF8 00148A58 38 81 00 08 */ addi r4, r1, 8 -/* 8014BAFC 00148A5C 48 1E C0 89 */ bl DoBoundsOverlap__6CAABoxCFRC6CAABox -/* 8014BB00 00148A60 38 00 00 00 */ li r0, 0 -/* 8014BB04 00148A64 54 63 06 3E */ clrlwi r3, r3, 0x18 -/* 8014BB08 00148A68 98 01 00 38 */ stb r0, 0x38(r1) -/* 8014BB0C 00148A6C 7C 63 00 34 */ cntlzw r3, r3 -/* 8014BB10 00148A70 54 63 D9 7E */ srwi r3, r3, 5 -/* 8014BB14 00148A74 80 01 00 54 */ lwz r0, 0x54(r1) -/* 8014BB18 00148A78 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 8014BB1C 00148A7C 7C 08 03 A6 */ mtlr r0 -/* 8014BB20 00148A80 38 21 00 50 */ addi r1, r1, 0x50 -/* 8014BB24 00148A84 4E 80 00 20 */ blr - -.global Suck__16CPuddleToadGammaFR13CStateManager9EStateMsgf -Suck__16CPuddleToadGammaFR13CStateManager9EStateMsgf: -/* 8014BB28 00148A88 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8014BB2C 00148A8C 7C 08 02 A6 */ mflr r0 -/* 8014BB30 00148A90 2C 05 00 01 */ cmpwi r5, 1 -/* 8014BB34 00148A94 90 01 00 34 */ stw r0, 0x34(r1) -/* 8014BB38 00148A98 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8014BB3C 00148A9C 7C 9F 23 78 */ mr r31, r4 -/* 8014BB40 00148AA0 41 82 00 4C */ beq lbl_8014BB8C -/* 8014BB44 00148AA4 40 80 00 10 */ bge lbl_8014BB54 -/* 8014BB48 00148AA8 2C 05 00 00 */ cmpwi r5, 0 -/* 8014BB4C 00148AAC 40 80 00 14 */ bge lbl_8014BB60 -/* 8014BB50 00148AB0 48 00 01 10 */ b lbl_8014BC60 -lbl_8014BB54: -/* 8014BB54 00148AB4 2C 05 00 03 */ cmpwi r5, 3 -/* 8014BB58 00148AB8 40 80 01 08 */ bge lbl_8014BC60 -/* 8014BB5C 00148ABC 48 00 00 D4 */ b lbl_8014BC30 -lbl_8014BB60: -/* 8014BB60 00148AC0 38 00 00 00 */ li r0, 0 -/* 8014BB64 00148AC4 38 A0 00 00 */ li r5, 0 -/* 8014BB68 00148AC8 90 03 05 68 */ stw r0, 0x568(r3) -/* 8014BB6C 00148ACC 48 00 08 01 */ bl SetSolid__16CPuddleToadGammaFR13CStateManagerb -/* 8014BB70 00148AD0 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8014BB74 00148AD4 38 00 00 00 */ li r0, 0 -/* 8014BB78 00148AD8 98 03 05 90 */ stb r0, 0x590(r3) -/* 8014BB7C 00148ADC 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8014BB80 00148AE0 80 63 07 68 */ lwz r3, 0x768(r3) -/* 8014BB84 00148AE4 4B FA 5D 71 */ bl DisableHalfPipeStatus__10CMorphBallFv -/* 8014BB88 00148AE8 48 00 00 D8 */ b lbl_8014BC60 -lbl_8014BB8C: -/* 8014BB8C 00148AEC 80 03 05 68 */ lwz r0, 0x568(r3) -/* 8014BB90 00148AF0 2C 00 00 01 */ cmpwi r0, 1 -/* 8014BB94 00148AF4 41 82 00 94 */ beq lbl_8014BC28 -/* 8014BB98 00148AF8 40 80 00 C8 */ bge lbl_8014BC60 -/* 8014BB9C 00148AFC 2C 00 00 00 */ cmpwi r0, 0 -/* 8014BBA0 00148B00 40 80 00 08 */ bge lbl_8014BBA8 -/* 8014BBA4 00148B04 48 00 00 BC */ b lbl_8014BC60 -lbl_8014BBA8: -/* 8014BBA8 00148B08 80 C3 04 50 */ lwz r6, 0x450(r3) -/* 8014BBAC 00148B0C 80 06 02 B8 */ lwz r0, 0x2b8(r6) -/* 8014BBB0 00148B10 2C 00 00 0A */ cmpwi r0, 0xa -/* 8014BBB4 00148B14 40 82 00 10 */ bne lbl_8014BBC4 -/* 8014BBB8 00148B18 38 00 00 01 */ li r0, 1 -/* 8014BBBC 00148B1C 90 03 05 68 */ stw r0, 0x568(r3) -/* 8014BBC0 00148B20 48 00 00 A0 */ b lbl_8014BC60 -lbl_8014BBC4: -/* 8014BBC4 00148B24 3C 80 80 3E */ lis r4, lbl_803DAA68@ha -/* 8014BBC8 00148B28 3C 60 80 3E */ lis r3, lbl_803DAA2C@ha -/* 8014BBCC 00148B2C 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l -/* 8014BBD0 00148B30 38 80 00 08 */ li r4, 8 -/* 8014BBD4 00148B34 90 01 00 10 */ stw r0, 0x10(r1) -/* 8014BBD8 00148B38 38 A3 AA 2C */ addi r5, r3, lbl_803DAA2C@l -/* 8014BBDC 00148B3C 38 00 00 00 */ li r0, 0 -/* 8014BBE0 00148B40 3B E6 00 04 */ addi r31, r6, 4 -/* 8014BBE4 00148B44 90 81 00 14 */ stw r4, 0x14(r1) -/* 8014BBE8 00148B48 7F E3 FB 78 */ mr r3, r31 -/* 8014BBEC 00148B4C 38 80 00 08 */ li r4, 8 -/* 8014BBF0 00148B50 90 A1 00 10 */ stw r5, 0x10(r1) -/* 8014BBF4 00148B54 90 01 00 18 */ stw r0, 0x18(r1) -/* 8014BBF8 00148B58 4B FE 58 41 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8014BBFC 00148B5C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014BC00 00148B60 3C 60 80 3E */ lis r3, lbl_803DAA2C@ha -/* 8014BC04 00148B64 38 83 AA 2C */ addi r4, r3, lbl_803DAA2C@l -/* 8014BC08 00148B68 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 8014BC0C 00148B6C 90 1F 01 58 */ stw r0, 0x158(r31) -/* 8014BC10 00148B70 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 8014BC14 00148B74 80 61 00 18 */ lwz r3, 0x18(r1) -/* 8014BC18 00148B78 90 81 00 10 */ stw r4, 0x10(r1) -/* 8014BC1C 00148B7C 90 7F 01 5C */ stw r3, 0x15c(r31) -/* 8014BC20 00148B80 90 01 00 10 */ stw r0, 0x10(r1) -/* 8014BC24 00148B84 48 00 00 3C */ b lbl_8014BC60 -lbl_8014BC28: -/* 8014BC28 00148B88 48 00 0B 51 */ bl sub_8014c778 -/* 8014BC2C 00148B8C 48 00 00 34 */ b lbl_8014BC60 -lbl_8014BC30: -/* 8014BC30 00148B90 3C 80 80 3E */ lis r4, lbl_803DAA68@ha -/* 8014BC34 00148B94 38 00 00 0A */ li r0, 0xa -/* 8014BC38 00148B98 38 A4 AA 68 */ addi r5, r4, lbl_803DAA68@l -/* 8014BC3C 00148B9C 90 01 00 0C */ stw r0, 0xc(r1) -/* 8014BC40 00148BA0 38 81 00 08 */ addi r4, r1, 8 -/* 8014BC44 00148BA4 90 A1 00 08 */ stw r5, 8(r1) -/* 8014BC48 00148BA8 80 63 04 50 */ lwz r3, 0x450(r3) -/* 8014BC4C 00148BAC 38 63 00 04 */ addi r3, r3, 4 -/* 8014BC50 00148BB0 4B FE 5B 69 */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd -/* 8014BC54 00148BB4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 8014BC58 00148BB8 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 8014BC5C 00148BBC 90 01 00 08 */ stw r0, 8(r1) -lbl_8014BC60: -/* 8014BC60 00148BC0 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8014BC64 00148BC4 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8014BC68 00148BC8 7C 08 03 A6 */ mtlr r0 -/* 8014BC6C 00148BCC 38 21 00 30 */ addi r1, r1, 0x30 -/* 8014BC70 00148BD0 4E 80 00 20 */ blr - -.global Active__16CPuddleToadGammaFR13CStateManager9EStateMsgf -Active__16CPuddleToadGammaFR13CStateManager9EStateMsgf: -/* 8014BC74 00148BD4 94 21 FF 70 */ stwu r1, -0x90(r1) -/* 8014BC78 00148BD8 7C 08 02 A6 */ mflr r0 -/* 8014BC7C 00148BDC 2C 05 00 01 */ cmpwi r5, 1 -/* 8014BC80 00148BE0 90 01 00 94 */ stw r0, 0x94(r1) -/* 8014BC84 00148BE4 93 E1 00 8C */ stw r31, 0x8c(r1) -/* 8014BC88 00148BE8 7C 9F 23 78 */ mr r31, r4 -/* 8014BC8C 00148BEC 93 C1 00 88 */ stw r30, 0x88(r1) -/* 8014BC90 00148BF0 7C 7E 1B 78 */ mr r30, r3 -/* 8014BC94 00148BF4 41 82 00 E8 */ beq lbl_8014BD7C -/* 8014BC98 00148BF8 40 80 00 10 */ bge lbl_8014BCA8 -/* 8014BC9C 00148BFC 2C 05 00 00 */ cmpwi r5, 0 -/* 8014BCA0 00148C00 40 80 00 14 */ bge lbl_8014BCB4 -/* 8014BCA4 00148C04 48 00 00 D8 */ b lbl_8014BD7C -lbl_8014BCA8: -/* 8014BCA8 00148C08 2C 05 00 03 */ cmpwi r5, 3 -/* 8014BCAC 00148C0C 40 80 00 D0 */ bge lbl_8014BD7C -/* 8014BCB0 00148C10 48 00 00 BC */ b lbl_8014BD6C -lbl_8014BCB4: -/* 8014BCB4 00148C14 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 8014BCB8 00148C18 38 80 00 02 */ li r4, 2 -/* 8014BCBC 00148C1C 4B FE ED 1D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -/* 8014BCC0 00148C20 80 8D 8C 00 */ lwz r4, lbl_805A77C0@sda21(r13) -/* 8014BCC4 00148C24 38 61 00 14 */ addi r3, r1, 0x14 -/* 8014BCC8 00148C28 4B EB 8F F1 */ bl string_l__4rstlFPCc -/* 8014BCCC 00148C2C 7F C4 F3 78 */ mr r4, r30 -/* 8014BCD0 00148C30 38 61 00 24 */ addi r3, r1, 0x24 -/* 8014BCD4 00148C34 38 A1 00 14 */ addi r5, r1, 0x14 -/* 8014BCD8 00148C38 4B F2 CC A1 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8014BCDC 00148C3C 38 61 00 54 */ addi r3, r1, 0x54 -/* 8014BCE0 00148C40 38 81 00 24 */ addi r4, r1, 0x24 -/* 8014BCE4 00148C44 48 1C 6E 91 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8014BCE8 00148C48 38 61 00 14 */ addi r3, r1, 0x14 -/* 8014BCEC 00148C4C 48 1F 1D F5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 8014BCF0 00148C50 3C 80 80 57 */ lis r4, lbl_805719DC@ha -/* 8014BCF4 00148C54 38 61 00 08 */ addi r3, r1, 8 -/* 8014BCF8 00148C58 38 A4 19 DC */ addi r5, r4, lbl_805719DC@l -/* 8014BCFC 00148C5C 38 9E 00 34 */ addi r4, r30, 0x34 -/* 8014BD00 00148C60 48 1C 6D 81 */ bl Rotate__12CTransform4fCFRC9CVector3f -/* 8014BD04 00148C64 C0 21 00 60 */ lfs f1, 0x60(r1) -/* 8014BD08 00148C68 38 C0 00 01 */ li r6, 1 -/* 8014BD0C 00148C6C C0 01 00 08 */ lfs f0, 8(r1) -/* 8014BD10 00148C70 7F C3 F3 78 */ mr r3, r30 -/* 8014BD14 00148C74 C0 A1 00 70 */ lfs f5, 0x70(r1) -/* 8014BD18 00148C78 7F E4 FB 78 */ mr r4, r31 -/* 8014BD1C 00148C7C C0 81 00 0C */ lfs f4, 0xc(r1) -/* 8014BD20 00148C80 EC 21 00 2A */ fadds f1, f1, f0 -/* 8014BD24 00148C84 C0 61 00 80 */ lfs f3, 0x80(r1) -/* 8014BD28 00148C88 38 A0 00 01 */ li r5, 1 -/* 8014BD2C 00148C8C C0 41 00 10 */ lfs f2, 0x10(r1) -/* 8014BD30 00148C90 EC 85 20 2A */ fadds f4, f5, f4 -/* 8014BD34 00148C94 C0 02 9C F0 */ lfs f0, lbl_805ABA10@sda21(r2) -/* 8014BD38 00148C98 D0 3E 05 CC */ stfs f1, 0x5cc(r30) -/* 8014BD3C 00148C9C EC 23 10 2A */ fadds f1, f3, f2 -/* 8014BD40 00148CA0 D0 9E 05 D0 */ stfs f4, 0x5d0(r30) -/* 8014BD44 00148CA4 D0 3E 05 D4 */ stfs f1, 0x5d4(r30) -/* 8014BD48 00148CA8 D0 1E 05 6C */ stfs f0, 0x56c(r30) -/* 8014BD4C 00148CAC 88 1E 05 E8 */ lbz r0, 0x5e8(r30) -/* 8014BD50 00148CB0 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 -/* 8014BD54 00148CB4 98 1E 05 E8 */ stb r0, 0x5e8(r30) -/* 8014BD58 00148CB8 48 00 06 15 */ bl SetSolid__16CPuddleToadGammaFR13CStateManagerb -/* 8014BD5C 00148CBC 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8014BD60 00148CC0 38 00 00 01 */ li r0, 1 -/* 8014BD64 00148CC4 98 03 05 90 */ stb r0, 0x590(r3) -/* 8014BD68 00148CC8 48 00 00 14 */ b lbl_8014BD7C -lbl_8014BD6C: -/* 8014BD6C 00148CCC 88 1E 05 E8 */ lbz r0, 0x5e8(r30) -/* 8014BD70 00148CD0 38 60 00 00 */ li r3, 0 -/* 8014BD74 00148CD4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 8014BD78 00148CD8 98 1E 05 E8 */ stb r0, 0x5e8(r30) -lbl_8014BD7C: -/* 8014BD7C 00148CDC 80 01 00 94 */ lwz r0, 0x94(r1) -/* 8014BD80 00148CE0 83 E1 00 8C */ lwz r31, 0x8c(r1) -/* 8014BD84 00148CE4 83 C1 00 88 */ lwz r30, 0x88(r1) -/* 8014BD88 00148CE8 7C 08 03 A6 */ mtlr r0 -/* 8014BD8C 00148CEC 38 21 00 90 */ addi r1, r1, 0x90 -/* 8014BD90 00148CF0 4E 80 00 20 */ blr - -.global InActive__16CPuddleToadGammaFR13CStateManager9EStateMsgf -InActive__16CPuddleToadGammaFR13CStateManager9EStateMsgf: -/* 8014BD94 00148CF4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8014BD98 00148CF8 7C 08 02 A6 */ mflr r0 -/* 8014BD9C 00148CFC 2C 05 00 00 */ cmpwi r5, 0 -/* 8014BDA0 00148D00 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014BDA4 00148D04 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8014BDA8 00148D08 7C 9F 23 78 */ mr r31, r4 -/* 8014BDAC 00148D0C 93 C1 00 08 */ stw r30, 8(r1) -/* 8014BDB0 00148D10 7C 7E 1B 78 */ mr r30, r3 -/* 8014BDB4 00148D14 41 82 00 0C */ beq lbl_8014BDC0 -/* 8014BDB8 00148D18 41 80 00 38 */ blt lbl_8014BDF0 -/* 8014BDBC 00148D1C 48 00 00 34 */ b lbl_8014BDF0 -lbl_8014BDC0: -/* 8014BDC0 00148D20 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 8014BDC4 00148D24 38 80 00 01 */ li r4, 1 -/* 8014BDC8 00148D28 4B FE EC 11 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -/* 8014BDCC 00148D2C 7F C3 F3 78 */ mr r3, r30 -/* 8014BDD0 00148D30 7F E4 FB 78 */ mr r4, r31 -/* 8014BDD4 00148D34 38 A0 00 01 */ li r5, 1 -/* 8014BDD8 00148D38 48 00 05 95 */ bl SetSolid__16CPuddleToadGammaFR13CStateManagerb -/* 8014BDDC 00148D3C 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8014BDE0 00148D40 38 00 00 01 */ li r0, 1 -/* 8014BDE4 00148D44 C0 02 9C F8 */ lfs f0, lbl_805ABA18@sda21(r2) -/* 8014BDE8 00148D48 98 03 05 90 */ stb r0, 0x590(r3) -/* 8014BDEC 00148D4C D0 1E 03 40 */ stfs f0, 0x340(r30) -lbl_8014BDF0: -/* 8014BDF0 00148D50 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014BDF4 00148D54 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8014BDF8 00148D58 83 C1 00 08 */ lwz r30, 8(r1) -/* 8014BDFC 00148D5C 7C 08 03 A6 */ mtlr r0 -/* 8014BE00 00148D60 38 21 00 10 */ addi r1, r1, 0x10 -/* 8014BE04 00148D64 4E 80 00 20 */ blr - -.global SpotPlayer__16CPuddleToadGammaFR13CStateManagerf -SpotPlayer__16CPuddleToadGammaFR13CStateManagerf: -/* 8014BE08 00148D68 C0 23 05 6C */ lfs f1, 0x56c(r3) -/* 8014BE0C 00148D6C C0 03 05 C8 */ lfs f0, 0x5c8(r3) -/* 8014BE10 00148D70 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8014BE14 00148D74 4C 41 13 82 */ cror 2, 1, 2 -/* 8014BE18 00148D78 7C 00 00 26 */ mfcr r0 -/* 8014BE1C 00148D7C 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f -/* 8014BE20 00148D80 4E 80 00 20 */ blr - -.global ShouldAttack__16CPuddleToadGammaFR13CStateManagerf -ShouldAttack__16CPuddleToadGammaFR13CStateManagerf: -/* 8014BE24 00148D84 C0 23 05 6C */ lfs f1, 0x56c(r3) -/* 8014BE28 00148D88 C0 03 05 C4 */ lfs f0, 0x5c4(r3) -/* 8014BE2C 00148D8C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8014BE30 00148D90 4C 41 13 82 */ cror 2, 1, 2 -/* 8014BE34 00148D94 7C 00 00 26 */ mfcr r0 -/* 8014BE38 00148D98 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f -/* 8014BE3C 00148D9C 4E 80 00 20 */ blr - -.global Inside__16CPuddleToadGammaFR13CStateManagerf -Inside__16CPuddleToadGammaFR13CStateManagerf: -/* 8014BE40 00148DA0 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8014BE44 00148DA4 80 84 08 4C */ lwz r4, 0x84c(r4) -/* 8014BE48 00148DA8 80 04 02 F8 */ lwz r0, 0x2f8(r4) -/* 8014BE4C 00148DAC 2C 00 00 01 */ cmpwi r0, 1 -/* 8014BE50 00148DB0 40 82 00 7C */ bne lbl_8014BECC -/* 8014BE54 00148DB4 C0 24 00 50 */ lfs f1, 0x50(r4) -/* 8014BE58 00148DB8 C0 03 05 D0 */ lfs f0, 0x5d0(r3) -/* 8014BE5C 00148DBC C0 C3 00 48 */ lfs f6, 0x48(r3) -/* 8014BE60 00148DC0 EC 81 00 28 */ fsubs f4, f1, f0 -/* 8014BE64 00148DC4 C0 24 00 40 */ lfs f1, 0x40(r4) -/* 8014BE68 00148DC8 C0 03 05 CC */ lfs f0, 0x5cc(r3) -/* 8014BE6C 00148DCC C0 43 00 38 */ lfs f2, 0x38(r3) -/* 8014BE70 00148DD0 EC A1 00 28 */ fsubs f5, f1, f0 -/* 8014BE74 00148DD4 C0 64 00 60 */ lfs f3, 0x60(r4) -/* 8014BE78 00148DD8 EC 04 01 B2 */ fmuls f0, f4, f6 -/* 8014BE7C 00148DDC C0 23 05 D4 */ lfs f1, 0x5d4(r3) -/* 8014BE80 00148DE0 C0 E3 00 58 */ lfs f7, 0x58(r3) -/* 8014BE84 00148DE4 EC 63 08 28 */ fsubs f3, f3, f1 -/* 8014BE88 00148DE8 EC 25 00 BA */ fmadds f1, f5, f2, f0 -/* 8014BE8C 00148DEC C0 02 9C F0 */ lfs f0, lbl_805ABA10@sda21(r2) -/* 8014BE90 00148DF0 D0 41 00 08 */ stfs f2, 8(r1) -/* 8014BE94 00148DF4 EC 23 09 FA */ fmadds f1, f3, f7, f1 -/* 8014BE98 00148DF8 D0 C1 00 0C */ stfs f6, 0xc(r1) -/* 8014BE9C 00148DFC D0 E1 00 10 */ stfs f7, 0x10(r1) -/* 8014BEA0 00148E00 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8014BEA4 00148E04 4C 40 13 82 */ cror 2, 0, 2 -/* 8014BEA8 00148E08 40 82 00 24 */ bne lbl_8014BECC -/* 8014BEAC 00148E0C EC 24 01 32 */ fmuls f1, f4, f4 -/* 8014BEB0 00148E10 C0 02 9C F8 */ lfs f0, lbl_805ABA18@sda21(r2) -/* 8014BEB4 00148E14 EC 25 09 7A */ fmadds f1, f5, f5, f1 -/* 8014BEB8 00148E18 EC 23 08 FA */ fmadds f1, f3, f3, f1 -/* 8014BEBC 00148E1C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8014BEC0 00148E20 40 80 00 0C */ bge lbl_8014BECC -/* 8014BEC4 00148E24 38 60 00 01 */ li r3, 1 -/* 8014BEC8 00148E28 48 00 00 08 */ b lbl_8014BED0 -lbl_8014BECC: -/* 8014BECC 00148E2C 38 60 00 00 */ li r3, 0 -lbl_8014BED0: -/* 8014BED0 00148E30 38 21 00 20 */ addi r1, r1, 0x20 -/* 8014BED4 00148E34 4E 80 00 20 */ blr - -.global InAttackPosition__16CPuddleToadGammaFR13CStateManagerf -InAttackPosition__16CPuddleToadGammaFR13CStateManagerf: -/* 8014BED8 00148E38 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8014BEDC 00148E3C 7C 08 02 A6 */ mflr r0 -/* 8014BEE0 00148E40 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014BEE4 00148E44 80 A4 08 4C */ lwz r5, 0x84c(r4) -/* 8014BEE8 00148E48 80 05 02 F8 */ lwz r0, 0x2f8(r5) -/* 8014BEEC 00148E4C 2C 00 00 01 */ cmpwi r0, 1 -/* 8014BEF0 00148E50 40 82 00 0C */ bne lbl_8014BEFC -/* 8014BEF4 00148E54 48 00 09 B1 */ bl sub_8014c8a4 -/* 8014BEF8 00148E58 48 00 00 08 */ b lbl_8014BF00 -lbl_8014BEFC: -/* 8014BEFC 00148E5C 38 60 00 00 */ li r3, 0 -lbl_8014BF00: -/* 8014BF00 00148E60 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014BF04 00148E64 7C 08 03 A6 */ mtlr r0 -/* 8014BF08 00148E68 38 21 00 10 */ addi r1, r1, 0x10 -/* 8014BF0C 00148E6C 4E 80 00 20 */ blr - -.global sub_8014bf10 -sub_8014bf10: -/* 8014BF10 00148E70 94 21 FE F0 */ stwu r1, -0x110(r1) -/* 8014BF14 00148E74 7C 08 02 A6 */ mflr r0 -/* 8014BF18 00148E78 90 01 01 14 */ stw r0, 0x114(r1) -/* 8014BF1C 00148E7C DB E1 01 00 */ stfd f31, 0x100(r1) -/* 8014BF20 00148E80 F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 -/* 8014BF24 00148E84 BF 41 00 E8 */ stmw r26, 0xe8(r1) -/* 8014BF28 00148E88 7C 9C 23 78 */ mr r28, r4 -/* 8014BF2C 00148E8C 7C 7B 1B 78 */ mr r27, r3 -/* 8014BF30 00148E90 83 E4 08 4C */ lwz r31, 0x84c(r4) -/* 8014BF34 00148E94 7C BD 2B 78 */ mr r29, r5 -/* 8014BF38 00148E98 C3 E3 05 00 */ lfs f31, 0x500(r3) -/* 8014BF3C 00148E9C 7F E3 FB 78 */ mr r3, r31 -/* 8014BF40 00148EA0 4B FC F4 39 */ bl Stop__13CPhysicsActorFv -/* 8014BF44 00148EA4 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8014BF48 00148EA8 7F E3 FB 78 */ mr r3, r31 -/* 8014BF4C 00148EAC 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 8014BF50 00148EB0 4B FC ED 51 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -/* 8014BF54 00148EB4 80 7F 00 68 */ lwz r3, 0x68(r31) -/* 8014BF58 00148EB8 38 00 00 20 */ li r0, 0x20 -/* 8014BF5C 00148EBC 80 9F 00 6C */ lwz r4, 0x6c(r31) -/* 8014BF60 00148EC0 3B C0 00 00 */ li r30, 0 -/* 8014BF64 00148EC4 7C 60 00 38 */ and r0, r3, r0 -/* 8014BF68 00148EC8 7C 83 F0 38 */ and r3, r4, r30 -/* 8014BF6C 00148ECC 7C 63 F2 78 */ xor r3, r3, r30 -/* 8014BF70 00148ED0 7C 00 F2 78 */ xor r0, r0, r30 -/* 8014BF74 00148ED4 7C 60 03 79 */ or. r0, r3, r0 -/* 8014BF78 00148ED8 41 82 00 08 */ beq lbl_8014BF80 -/* 8014BF7C 00148EDC 3B C0 00 01 */ li r30, 1 -lbl_8014BF80: -/* 8014BF80 00148EE0 57 C0 06 3F */ clrlwi. r0, r30, 0x18 -/* 8014BF84 00148EE4 41 82 00 14 */ beq lbl_8014BF98 -/* 8014BF88 00148EE8 7F E3 FB 78 */ mr r3, r31 -/* 8014BF8C 00148EEC 7F 85 E3 78 */ mr r5, r28 -/* 8014BF90 00148EF0 38 80 00 25 */ li r4, 0x25 -/* 8014BF94 00148EF4 4B F0 7F ED */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager -lbl_8014BF98: -/* 8014BF98 00148EF8 7F E3 FB 78 */ mr r3, r31 -/* 8014BF9C 00148EFC 7F 85 E3 78 */ mr r5, r28 -/* 8014BFA0 00148F00 38 80 00 20 */ li r4, 0x20 -/* 8014BFA4 00148F04 4B F0 7F DD */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 8014BFA8 00148F08 80 1B 00 68 */ lwz r0, 0x68(r27) -/* 8014BFAC 00148F0C 3B 40 00 00 */ li r26, 0 -/* 8014BFB0 00148F10 80 9B 00 6C */ lwz r4, 0x6c(r27) -/* 8014BFB4 00148F14 3C 60 00 08 */ lis r3, 8 -/* 8014BFB8 00148F18 7C 00 D0 38 */ and r0, r0, r26 -/* 8014BFBC 00148F1C 7C 83 18 38 */ and r3, r4, r3 -/* 8014BFC0 00148F20 7C 63 D2 78 */ xor r3, r3, r26 -/* 8014BFC4 00148F24 7C 00 D2 78 */ xor r0, r0, r26 -/* 8014BFC8 00148F28 7C 60 03 79 */ or. r0, r3, r0 -/* 8014BFCC 00148F2C 41 82 00 08 */ beq lbl_8014BFD4 -/* 8014BFD0 00148F30 3B 40 00 01 */ li r26, 1 -lbl_8014BFD4: -/* 8014BFD4 00148F34 57 40 06 3F */ clrlwi. r0, r26, 0x18 -/* 8014BFD8 00148F38 41 82 00 14 */ beq lbl_8014BFEC -/* 8014BFDC 00148F3C 7F 63 DB 78 */ mr r3, r27 -/* 8014BFE0 00148F40 7F 85 E3 78 */ mr r5, r28 -/* 8014BFE4 00148F44 38 80 00 13 */ li r4, 0x13 -/* 8014BFE8 00148F48 4B F0 7F 99 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager -lbl_8014BFEC: -/* 8014BFEC 00148F4C 7F E4 FB 78 */ mr r4, r31 -/* 8014BFF0 00148F50 38 61 00 08 */ addi r3, r1, 8 -/* 8014BFF4 00148F54 4B FC FF F9 */ bl GetPhysicsState__13CPhysicsActorCFv -/* 8014BFF8 00148F58 38 61 00 78 */ addi r3, r1, 0x78 -/* 8014BFFC 00148F5C 38 81 00 08 */ addi r4, r1, 8 -/* 8014C000 00148F60 4B F6 74 C1 */ bl __ct__13CPhysicsStateFRC13CPhysicsState -/* 8014C004 00148F64 7F E3 FB 78 */ mr r3, r31 -/* 8014C008 00148F68 4B FC F3 71 */ bl Stop__13CPhysicsActorFv -/* 8014C00C 00148F6C FC 20 F8 90 */ fmr f1, f31 -/* 8014C010 00148F70 7F E3 FB 78 */ mr r3, r31 -/* 8014C014 00148F74 7F A4 EB 78 */ mr r4, r29 -/* 8014C018 00148F78 4B FC F0 F1 */ bl MoveToWR__13CPhysicsActorFRC9CVector3ff -/* 8014C01C 00148F7C FC 20 F8 90 */ fmr f1, f31 -/* 8014C020 00148F80 7F 83 E3 78 */ mr r3, r28 -/* 8014C024 00148F84 7F E4 FB 78 */ mr r4, r31 -/* 8014C028 00148F88 38 A0 00 00 */ li r5, 0 -/* 8014C02C 00148F8C 48 03 5D 0D */ bl "Move__14CGameCollisionFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 8014C030 00148F90 C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 8014C034 00148F94 7F E3 FB 78 */ mr r3, r31 -/* 8014C038 00148F98 C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 8014C03C 00148F9C 38 81 00 78 */ addi r4, r1, 0x78 -/* 8014C040 00148FA0 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 8014C044 00148FA4 D0 01 00 78 */ stfs f0, 0x78(r1) -/* 8014C048 00148FA8 D0 21 00 7C */ stfs f1, 0x7c(r1) -/* 8014C04C 00148FAC D0 41 00 80 */ stfs f2, 0x80(r1) -/* 8014C050 00148FB0 4B FC FD D5 */ bl SetPhysicsState__13CPhysicsActorFRC13CPhysicsState -/* 8014C054 00148FB4 57 C0 06 3F */ clrlwi. r0, r30, 0x18 -/* 8014C058 00148FB8 41 82 00 14 */ beq lbl_8014C06C -/* 8014C05C 00148FBC 7F E3 FB 78 */ mr r3, r31 -/* 8014C060 00148FC0 7F 85 E3 78 */ mr r5, r28 -/* 8014C064 00148FC4 38 80 00 25 */ li r4, 0x25 -/* 8014C068 00148FC8 4B F0 82 E9 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager -lbl_8014C06C: -/* 8014C06C 00148FCC 7F E3 FB 78 */ mr r3, r31 -/* 8014C070 00148FD0 7F 85 E3 78 */ mr r5, r28 -/* 8014C074 00148FD4 38 80 00 20 */ li r4, 0x20 -/* 8014C078 00148FD8 4B F0 82 D9 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 8014C07C 00148FDC 57 40 06 3F */ clrlwi. r0, r26, 0x18 -/* 8014C080 00148FE0 41 82 00 14 */ beq lbl_8014C094 -/* 8014C084 00148FE4 7F 63 DB 78 */ mr r3, r27 -/* 8014C088 00148FE8 7F 85 E3 78 */ mr r5, r28 -/* 8014C08C 00148FEC 38 80 00 13 */ li r4, 0x13 -/* 8014C090 00148FF0 4B F0 82 C1 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager -lbl_8014C094: -/* 8014C094 00148FF4 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 -/* 8014C098 00148FF8 CB E1 01 00 */ lfd f31, 0x100(r1) -/* 8014C09C 00148FFC BB 41 00 E8 */ lmw r26, 0xe8(r1) -/* 8014C0A0 00149000 80 01 01 14 */ lwz r0, 0x114(r1) -/* 8014C0A4 00149004 7C 08 03 A6 */ mtlr r0 -/* 8014C0A8 00149008 38 21 01 10 */ addi r1, r1, 0x110 -/* 8014C0AC 0014900C 4E 80 00 20 */ blr - -.global AcceptScriptMsg__16CPuddleToadGammaF20EScriptObjectMessage9TUniqueIdR13CStateManager -AcceptScriptMsg__16CPuddleToadGammaF20EScriptObjectMessage9TUniqueIdR13CStateManager: -/* 8014C0B0 00149010 94 21 FF 60 */ stwu r1, -0xa0(r1) -/* 8014C0B4 00149014 7C 08 02 A6 */ mflr r0 -/* 8014C0B8 00149018 90 01 00 A4 */ stw r0, 0xa4(r1) -/* 8014C0BC 0014901C 93 E1 00 9C */ stw r31, 0x9c(r1) -/* 8014C0C0 00149020 7C DF 33 78 */ mr r31, r6 -/* 8014C0C4 00149024 93 C1 00 98 */ stw r30, 0x98(r1) -/* 8014C0C8 00149028 7C 9E 23 78 */ mr r30, r4 -/* 8014C0CC 0014902C 93 A1 00 94 */ stw r29, 0x94(r1) -/* 8014C0D0 00149030 7C 7D 1B 78 */ mr r29, r3 -/* 8014C0D4 00149034 A0 05 00 00 */ lhz r0, 0(r5) -/* 8014C0D8 00149038 38 A1 00 08 */ addi r5, r1, 8 -/* 8014C0DC 0014903C B0 01 00 08 */ sth r0, 8(r1) -/* 8014C0E0 00149040 4B F3 0A 99 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager -/* 8014C0E4 00149044 2C 1E 00 21 */ cmpwi r30, 0x21 -/* 8014C0E8 00149048 41 82 00 14 */ beq lbl_8014C0FC -/* 8014C0EC 0014904C 40 80 00 DC */ bge lbl_8014C1C8 -/* 8014C0F0 00149050 2C 1E 00 01 */ cmpwi r30, 1 -/* 8014C0F4 00149054 41 82 00 D4 */ beq lbl_8014C1C8 -/* 8014C0F8 00149058 48 00 00 D0 */ b lbl_8014C1C8 -lbl_8014C0FC: -/* 8014C0FC 0014905C 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 8014C100 00149060 7F E4 FB 78 */ mr r4, r31 -/* 8014C104 00149064 4B FE EB ED */ bl Activate__15CBodyControllerFR13CStateManager -/* 8014C108 00149068 80 8D 8C 00 */ lwz r4, lbl_805A77C0@sda21(r13) -/* 8014C10C 0014906C 38 61 00 18 */ addi r3, r1, 0x18 -/* 8014C110 00149070 4B EB 8B A9 */ bl string_l__4rstlFPCc -/* 8014C114 00149074 7F A4 EB 78 */ mr r4, r29 -/* 8014C118 00149078 38 61 00 28 */ addi r3, r1, 0x28 -/* 8014C11C 0014907C 38 A1 00 18 */ addi r5, r1, 0x18 -/* 8014C120 00149080 4B F2 C8 59 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8014C124 00149084 38 61 00 58 */ addi r3, r1, 0x58 -/* 8014C128 00149088 38 81 00 28 */ addi r4, r1, 0x28 -/* 8014C12C 0014908C 48 1C 6A 49 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8014C130 00149090 38 61 00 18 */ addi r3, r1, 0x18 -/* 8014C134 00149094 48 1F 19 AD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 8014C138 00149098 3C 80 80 57 */ lis r4, lbl_805719DC@ha -/* 8014C13C 0014909C 38 61 00 0C */ addi r3, r1, 0xc -/* 8014C140 001490A0 38 A4 19 DC */ addi r5, r4, lbl_805719DC@l -/* 8014C144 001490A4 38 9D 00 34 */ addi r4, r29, 0x34 -/* 8014C148 001490A8 48 1C 69 39 */ bl Rotate__12CTransform4fCFRC9CVector3f -/* 8014C14C 001490AC C0 21 00 64 */ lfs f1, 0x64(r1) -/* 8014C150 001490B0 7F A3 EB 78 */ mr r3, r29 -/* 8014C154 001490B4 C0 01 00 0C */ lfs f0, 0xc(r1) -/* 8014C158 001490B8 7F E6 FB 78 */ mr r6, r31 -/* 8014C15C 001490BC C0 81 00 74 */ lfs f4, 0x74(r1) -/* 8014C160 001490C0 38 80 00 28 */ li r4, 0x28 -/* 8014C164 001490C4 C0 61 00 10 */ lfs f3, 0x10(r1) -/* 8014C168 001490C8 EC 01 00 2A */ fadds f0, f1, f0 -/* 8014C16C 001490CC C0 41 00 84 */ lfs f2, 0x84(r1) -/* 8014C170 001490D0 38 A0 00 29 */ li r5, 0x29 -/* 8014C174 001490D4 C0 21 00 14 */ lfs f1, 0x14(r1) -/* 8014C178 001490D8 EC 64 18 2A */ fadds f3, f4, f3 -/* 8014C17C 001490DC D0 1D 05 CC */ stfs f0, 0x5cc(r29) -/* 8014C180 001490E0 EC 02 08 2A */ fadds f0, f2, f1 -/* 8014C184 001490E4 D0 7D 05 D0 */ stfs f3, 0x5d0(r29) -/* 8014C188 001490E8 D0 1D 05 D4 */ stfs f0, 0x5d4(r29) -/* 8014C18C 001490EC C0 1D 05 CC */ lfs f0, 0x5cc(r29) -/* 8014C190 001490F0 D0 1D 05 D8 */ stfs f0, 0x5d8(r29) -/* 8014C194 001490F4 C0 1D 05 D0 */ lfs f0, 0x5d0(r29) -/* 8014C198 001490F8 D0 1D 05 DC */ stfs f0, 0x5dc(r29) -/* 8014C19C 001490FC C0 1D 05 D4 */ lfs f0, 0x5d4(r29) -/* 8014C1A0 00149100 D0 1D 05 E0 */ stfs f0, 0x5e0(r29) -/* 8014C1A4 00149104 4B F0 7D 31 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager -/* 8014C1A8 00149108 7F A3 EB 78 */ mr r3, r29 -/* 8014C1AC 0014910C 7F E5 FB 78 */ mr r5, r31 -/* 8014C1B0 00149110 38 80 00 2B */ li r4, 0x2b -/* 8014C1B4 00149114 4B F0 81 9D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 8014C1B8 00149118 7F A3 EB 78 */ mr r3, r29 -/* 8014C1BC 0014911C 7F E5 FB 78 */ mr r5, r31 -/* 8014C1C0 00149120 38 80 00 37 */ li r4, 0x37 -/* 8014C1C4 00149124 4B F0 81 8D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager -lbl_8014C1C8: -/* 8014C1C8 00149128 80 01 00 A4 */ lwz r0, 0xa4(r1) -/* 8014C1CC 0014912C 83 E1 00 9C */ lwz r31, 0x9c(r1) -/* 8014C1D0 00149130 83 C1 00 98 */ lwz r30, 0x98(r1) -/* 8014C1D4 00149134 83 A1 00 94 */ lwz r29, 0x94(r1) -/* 8014C1D8 00149138 7C 08 03 A6 */ mtlr r0 -/* 8014C1DC 0014913C 38 21 00 A0 */ addi r1, r1, 0xa0 -/* 8014C1E0 00149140 4E 80 00 20 */ blr - -.global Accept__16CPuddleToadGammaFR8IVisitor -Accept__16CPuddleToadGammaFR8IVisitor: -/* 8014C1E4 00149144 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8014C1E8 00149148 7C 08 02 A6 */ mflr r0 -/* 8014C1EC 0014914C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014C1F0 00149150 7C 60 1B 78 */ mr r0, r3 -/* 8014C1F4 00149154 7C 83 23 78 */ mr r3, r4 -/* 8014C1F8 00149158 81 84 00 00 */ lwz r12, 0(r4) -/* 8014C1FC 0014915C 7C 04 03 78 */ mr r4, r0 -/* 8014C200 00149160 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 8014C204 00149164 7D 89 03 A6 */ mtctr r12 -/* 8014C208 00149168 4E 80 04 21 */ bctrl -/* 8014C20C 0014916C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014C210 00149170 7C 08 03 A6 */ mtlr r0 -/* 8014C214 00149174 38 21 00 10 */ addi r1, r1, 0x10 -/* 8014C218 00149178 4E 80 00 20 */ blr - -.global CenterPlayer__16CPuddleToadGammaFR13CStateManagerRC9CVector3f -CenterPlayer__16CPuddleToadGammaFR13CStateManagerRC9CVector3f: -/* 8014C21C 0014917C 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 8014C220 00149180 7C 08 02 A6 */ mflr r0 -/* 8014C224 00149184 90 01 00 54 */ stw r0, 0x54(r1) -/* 8014C228 00149188 DB E1 00 40 */ stfd f31, 0x40(r1) -/* 8014C22C 0014918C F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 -/* 8014C230 00149190 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 8014C234 00149194 83 E4 08 4C */ lwz r31, 0x84c(r4) -/* 8014C238 00149198 FF E0 08 90 */ fmr f31, f1 -/* 8014C23C 0014919C C0 25 00 04 */ lfs f1, 4(r5) -/* 8014C240 001491A0 38 61 00 14 */ addi r3, r1, 0x14 -/* 8014C244 001491A4 C0 1F 00 50 */ lfs f0, 0x50(r31) -/* 8014C248 001491A8 38 81 00 08 */ addi r4, r1, 8 -/* 8014C24C 001491AC C0 65 00 08 */ lfs f3, 8(r5) -/* 8014C250 001491B0 C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 8014C254 001491B4 EC 81 00 28 */ fsubs f4, f1, f0 -/* 8014C258 001491B8 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 8014C25C 001491BC C0 25 00 00 */ lfs f1, 0(r5) -/* 8014C260 001491C0 EC 43 10 28 */ fsubs f2, f3, f2 -/* 8014C264 001491C4 D0 81 00 0C */ stfs f4, 0xc(r1) -/* 8014C268 001491C8 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8014C26C 001491CC D0 41 00 10 */ stfs f2, 0x10(r1) -/* 8014C270 001491D0 D0 01 00 08 */ stfs f0, 8(r1) -/* 8014C274 001491D4 48 1C 85 DD */ bl AsNormalized__9CVector3fCFv -/* 8014C278 001491D8 C0 02 9C F8 */ lfs f0, lbl_805ABA18@sda21(r2) -/* 8014C27C 001491DC 7F E3 FB 78 */ mr r3, r31 -/* 8014C280 001491E0 C0 82 9C FC */ lfs f4, lbl_805ABA1C@sda21(r2) -/* 8014C284 001491E4 38 81 00 20 */ addi r4, r1, 0x20 -/* 8014C288 001491E8 EC 60 07 F2 */ fmuls f3, f0, f31 -/* 8014C28C 001491EC C0 41 00 14 */ lfs f2, 0x14(r1) -/* 8014C290 001491F0 C0 21 00 18 */ lfs f1, 0x18(r1) -/* 8014C294 001491F4 C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 8014C298 001491F8 EC 64 18 24 */ fdivs f3, f4, f3 -/* 8014C29C 001491FC EC 43 00 B2 */ fmuls f2, f3, f2 -/* 8014C2A0 00149200 EC 23 00 72 */ fmuls f1, f3, f1 -/* 8014C2A4 00149204 EC 03 00 32 */ fmuls f0, f3, f0 -/* 8014C2A8 00149208 D0 41 00 20 */ stfs f2, 0x20(r1) -/* 8014C2AC 0014920C D0 21 00 24 */ stfs f1, 0x24(r1) -/* 8014C2B0 00149210 D0 01 00 28 */ stfs f0, 0x28(r1) -/* 8014C2B4 00149214 4B FC E9 ED */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -/* 8014C2B8 00149218 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 -/* 8014C2BC 0014921C 80 01 00 54 */ lwz r0, 0x54(r1) -/* 8014C2C0 00149220 CB E1 00 40 */ lfd f31, 0x40(r1) -/* 8014C2C4 00149224 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 8014C2C8 00149228 7C 08 03 A6 */ mtlr r0 -/* 8014C2CC 0014922C 38 21 00 50 */ addi r1, r1, 0x50 -/* 8014C2D0 00149230 4E 80 00 20 */ blr - -.global DoUserAnimEvent__16CPuddleToadGammaFR13CStateManagerRC13CInt32POINode14EUserEventType -DoUserAnimEvent__16CPuddleToadGammaFR13CStateManagerRC13CInt32POINode14EUserEventType: -/* 8014C2D4 00149234 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8014C2D8 00149238 7C 08 02 A6 */ mflr r0 -/* 8014C2DC 0014923C 90 01 00 34 */ stw r0, 0x34(r1) -/* 8014C2E0 00149240 DB E1 00 20 */ stfd f31, 0x20(r1) -/* 8014C2E4 00149244 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 -/* 8014C2E8 00149248 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8014C2EC 0014924C 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8014C2F0 00149250 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8014C2F4 00149254 93 81 00 10 */ stw r28, 0x10(r1) -/* 8014C2F8 00149258 7C DF 33 79 */ or. r31, r6, r6 -/* 8014C2FC 0014925C FF E0 08 90 */ fmr f31, f1 -/* 8014C300 00149260 7C 7C 1B 78 */ mr r28, r3 -/* 8014C304 00149264 7C 9D 23 78 */ mr r29, r4 -/* 8014C308 00149268 7C BE 2B 78 */ mr r30, r5 -/* 8014C30C 0014926C 38 00 00 00 */ li r0, 0 -/* 8014C310 00149270 41 82 00 08 */ beq lbl_8014C318 -/* 8014C314 00149274 48 00 00 10 */ b lbl_8014C324 -lbl_8014C318: -/* 8014C318 00149278 C0 3C 05 C0 */ lfs f1, 0x5c0(r28) -/* 8014C31C 0014927C 48 00 00 C9 */ bl ShootPlayer__16CPuddleToadGammaFR13CStateManagerf -/* 8014C320 00149280 38 00 00 01 */ li r0, 1 -lbl_8014C324: -/* 8014C324 00149284 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 8014C328 00149288 40 82 00 1C */ bne lbl_8014C344 -/* 8014C32C 0014928C FC 20 F8 90 */ fmr f1, f31 -/* 8014C330 00149290 7F 83 E3 78 */ mr r3, r28 -/* 8014C334 00149294 7F A4 EB 78 */ mr r4, r29 -/* 8014C338 00149298 7F C5 F3 78 */ mr r5, r30 -/* 8014C33C 0014929C 7F E6 FB 78 */ mr r6, r31 -/* 8014C340 001492A0 4B F2 CB 71 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType -lbl_8014C344: -/* 8014C344 001492A4 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 -/* 8014C348 001492A8 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8014C34C 001492AC CB E1 00 20 */ lfd f31, 0x20(r1) -/* 8014C350 001492B0 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8014C354 001492B4 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8014C358 001492B8 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 8014C35C 001492BC 83 81 00 10 */ lwz r28, 0x10(r1) -/* 8014C360 001492C0 7C 08 03 A6 */ mtlr r0 -/* 8014C364 001492C4 38 21 00 30 */ addi r1, r1, 0x30 -/* 8014C368 001492C8 4E 80 00 20 */ blr - -.global SetSolid__16CPuddleToadGammaFR13CStateManagerb -SetSolid__16CPuddleToadGammaFR13CStateManagerb: -/* 8014C36C 001492CC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8014C370 001492D0 7C 08 02 A6 */ mflr r0 -/* 8014C374 001492D4 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014C378 001492D8 54 A0 06 3F */ clrlwi. r0, r5, 0x18 -/* 8014C37C 001492DC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8014C380 001492E0 7C 9F 23 78 */ mr r31, r4 -/* 8014C384 001492E4 93 C1 00 08 */ stw r30, 8(r1) -/* 8014C388 001492E8 7C 7E 1B 78 */ mr r30, r3 -/* 8014C38C 001492EC 41 82 00 24 */ beq lbl_8014C3B0 -/* 8014C390 001492F0 7F E5 FB 78 */ mr r5, r31 -/* 8014C394 001492F4 38 80 00 13 */ li r4, 0x13 -/* 8014C398 001492F8 4B F0 7F B9 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 8014C39C 001492FC 7F C3 F3 78 */ mr r3, r30 -/* 8014C3A0 00149300 7F E5 FB 78 */ mr r5, r31 -/* 8014C3A4 00149304 38 80 00 32 */ li r4, 0x32 -/* 8014C3A8 00149308 4B F0 7B D9 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 8014C3AC 0014930C 48 00 00 20 */ b lbl_8014C3CC -lbl_8014C3B0: -/* 8014C3B0 00149310 7F E5 FB 78 */ mr r5, r31 -/* 8014C3B4 00149314 38 80 00 13 */ li r4, 0x13 -/* 8014C3B8 00149318 4B F0 7B C9 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 8014C3BC 0014931C 7F C3 F3 78 */ mr r3, r30 -/* 8014C3C0 00149320 7F E5 FB 78 */ mr r5, r31 -/* 8014C3C4 00149324 38 80 00 32 */ li r4, 0x32 -/* 8014C3C8 00149328 4B F0 7F 89 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager -lbl_8014C3CC: -/* 8014C3CC 0014932C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014C3D0 00149330 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8014C3D4 00149334 83 C1 00 08 */ lwz r30, 8(r1) -/* 8014C3D8 00149338 7C 08 03 A6 */ mtlr r0 -/* 8014C3DC 0014933C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8014C3E0 00149340 4E 80 00 20 */ blr - -.global ShootPlayer__16CPuddleToadGammaFR13CStateManagerf -ShootPlayer__16CPuddleToadGammaFR13CStateManagerf: -/* 8014C3E4 00149344 94 21 F7 00 */ stwu r1, -0x900(r1) -/* 8014C3E8 00149348 7C 08 02 A6 */ mflr r0 -/* 8014C3EC 0014934C 90 01 09 04 */ stw r0, 0x904(r1) -/* 8014C3F0 00149350 DB E1 08 F0 */ stfd f31, 0x8f0(r1) -/* 8014C3F4 00149354 F3 E1 08 F8 */ psq_st f31, -1800(r1), 0, qr0 -/* 8014C3F8 00149358 DB C1 08 E0 */ stfd f30, 0x8e0(r1) -/* 8014C3FC 0014935C F3 C1 08 E8 */ psq_st f30, -1816(r1), 0, qr0 -/* 8014C400 00149360 DB A1 08 D0 */ stfd f29, 0x8d0(r1) -/* 8014C404 00149364 F3 A1 08 D8 */ psq_st f29, -1832(r1), 0, qr0 -/* 8014C408 00149368 DB 81 08 C0 */ stfd f28, 0x8c0(r1) -/* 8014C40C 0014936C F3 81 08 C8 */ psq_st f28, -1848(r1), 0, qr0 -/* 8014C410 00149370 93 E1 08 BC */ stw r31, 0x8bc(r1) -/* 8014C414 00149374 93 C1 08 B8 */ stw r30, 0x8b8(r1) -/* 8014C418 00149378 93 A1 08 B4 */ stw r29, 0x8b4(r1) -/* 8014C41C 0014937C 93 81 08 B0 */ stw r28, 0x8b0(r1) -/* 8014C420 00149380 7C 9E 23 78 */ mr r30, r4 -/* 8014C424 00149384 FF 80 08 90 */ fmr f28, f1 -/* 8014C428 00149388 7C 7D 1B 78 */ mr r29, r3 -/* 8014C42C 0014938C 83 E4 08 4C */ lwz r31, 0x84c(r4) -/* 8014C430 00149390 38 61 00 44 */ addi r3, r1, 0x44 -/* 8014C434 00149394 38 9D 05 B4 */ addi r4, r29, 0x5b4 -/* 8014C438 00149398 48 1C 84 19 */ bl AsNormalized__9CVector3fCFv -/* 8014C43C 0014939C 38 61 00 50 */ addi r3, r1, 0x50 -/* 8014C440 001493A0 38 9D 00 34 */ addi r4, r29, 0x34 -/* 8014C444 001493A4 38 A1 00 44 */ addi r5, r1, 0x44 -/* 8014C448 001493A8 48 1C 66 39 */ bl Rotate__12CTransform4fCFRC9CVector3f -/* 8014C44C 001493AC C3 E1 00 50 */ lfs f31, 0x50(r1) -/* 8014C450 001493B0 38 60 00 01 */ li r3, 1 -/* 8014C454 001493B4 C3 C1 00 54 */ lfs f30, 0x54(r1) -/* 8014C458 001493B8 C3 A1 00 58 */ lfs f29, 0x58(r1) -/* 8014C45C 001493BC 98 7F 05 90 */ stb r3, 0x590(r31) -/* 8014C460 001493C0 80 1F 02 F8 */ lwz r0, 0x2f8(r31) -/* 8014C464 001493C4 2C 00 00 01 */ cmpwi r0, 1 -/* 8014C468 001493C8 40 82 02 3C */ bne lbl_8014C6A4 -/* 8014C46C 001493CC 88 1D 05 E8 */ lbz r0, 0x5e8(r29) -/* 8014C470 001493D0 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 8014C474 001493D4 7F E3 FB 78 */ mr r3, r31 -/* 8014C478 001493D8 98 1D 05 E8 */ stb r0, 0x5e8(r29) -/* 8014C47C 001493DC 4B FC EE FD */ bl Stop__13CPhysicsActorFv -/* 8014C480 001493E0 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8014C484 001493E4 7F E3 FB 78 */ mr r3, r31 -/* 8014C488 001493E8 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 8014C48C 001493EC 4B FC E8 15 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -/* 8014C490 001493F0 C0 1F 00 E8 */ lfs f0, 0xe8(r31) -/* 8014C494 001493F4 EC 60 07 F2 */ fmuls f3, f0, f31 -/* 8014C498 001493F8 EC 40 07 B2 */ fmuls f2, f0, f30 -/* 8014C49C 001493FC EC 20 07 72 */ fmuls f1, f0, f29 -/* 8014C4A0 00149400 EC 1C 00 F2 */ fmuls f0, f28, f3 -/* 8014C4A4 00149404 D0 61 00 2C */ stfs f3, 0x2c(r1) -/* 8014C4A8 00149408 EC 9C 00 B2 */ fmuls f4, f28, f2 -/* 8014C4AC 0014940C EC 7C 00 72 */ fmuls f3, f28, f1 -/* 8014C4B0 00149410 D0 41 00 30 */ stfs f2, 0x30(r1) -/* 8014C4B4 00149414 D0 21 00 34 */ stfs f1, 0x34(r1) -/* 8014C4B8 00149418 D0 01 00 38 */ stfs f0, 0x38(r1) -/* 8014C4BC 0014941C D0 81 00 3C */ stfs f4, 0x3c(r1) -/* 8014C4C0 00149420 D0 61 00 40 */ stfs f3, 0x40(r1) -/* 8014C4C4 00149424 4B EC F0 71 */ bl Identity__10CAxisAngleFv -/* 8014C4C8 00149428 7C 65 1B 78 */ mr r5, r3 -/* 8014C4CC 0014942C 7F E3 FB 78 */ mr r3, r31 -/* 8014C4D0 00149430 38 81 00 38 */ addi r4, r1, 0x38 -/* 8014C4D4 00149434 4B FC FE C5 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle -/* 8014C4D8 00149438 7F E3 FB 78 */ mr r3, r31 -/* 8014C4DC 0014943C 7F C5 F3 78 */ mr r5, r30 -/* 8014C4E0 00149440 38 80 00 02 */ li r4, 2 -/* 8014C4E4 00149444 48 13 9F 09 */ bl SetMoveState__7CPlayerFQ27NPlayer20EPlayerMovementStateR13CStateManager -/* 8014C4E8 00149448 80 AD 8B F8 */ lwz r5, lbl_805A77B8@sda21(r13) -/* 8014C4EC 0014944C 38 60 00 00 */ li r3, 0 -/* 8014C4F0 00149450 38 80 00 01 */ li r4, 1 -/* 8014C4F4 00149454 48 23 DA 01 */ bl __shl2i -/* 8014C4F8 00149458 39 40 00 00 */ li r10, 0 -/* 8014C4FC 0014945C 38 00 00 03 */ li r0, 3 -/* 8014C500 00149460 90 81 00 94 */ stw r4, 0x94(r1) -/* 8014C504 00149464 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8014C508 00149468 39 24 66 A0 */ addi r9, r4, skZero3f@l -/* 8014C50C 0014946C 38 A1 00 18 */ addi r5, r1, 0x18 -/* 8014C510 00149470 90 61 00 90 */ stw r3, 0x90(r1) -/* 8014C514 00149474 38 81 00 20 */ addi r4, r1, 0x20 -/* 8014C518 00149478 7F C3 F3 78 */ mr r3, r30 -/* 8014C51C 0014947C 38 C1 00 10 */ addi r6, r1, 0x10 -/* 8014C520 00149480 91 41 00 9C */ stw r10, 0x9c(r1) -/* 8014C524 00149484 38 FD 05 70 */ addi r7, r29, 0x570 -/* 8014C528 00149488 39 01 00 90 */ addi r8, r1, 0x90 -/* 8014C52C 0014948C 91 41 00 98 */ stw r10, 0x98(r1) -/* 8014C530 00149490 90 01 00 A0 */ stw r0, 0xa0(r1) -/* 8014C534 00149494 A0 1D 00 08 */ lhz r0, 8(r29) -/* 8014C538 00149498 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8014C53C 0014949C 81 5E 08 4C */ lwz r10, 0x84c(r30) -/* 8014C540 001494A0 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8014C544 001494A4 A1 4A 00 08 */ lhz r10, 8(r10) -/* 8014C548 001494A8 B1 41 00 18 */ sth r10, 0x18(r1) -/* 8014C54C 001494AC A0 1D 00 08 */ lhz r0, 8(r29) -/* 8014C550 001494B0 B1 41 00 14 */ sth r10, 0x14(r1) -/* 8014C554 001494B4 B0 01 00 1C */ sth r0, 0x1c(r1) -/* 8014C558 001494B8 B0 01 00 20 */ sth r0, 0x20(r1) -/* 8014C55C 001494BC 4B EF DB 45 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f -/* 8014C560 001494C0 80 7F 07 68 */ lwz r3, 0x768(r31) -/* 8014C564 001494C4 4B FA 2A 4D */ bl SetAsProjectile__10CMorphBallFv -/* 8014C568 001494C8 38 00 00 00 */ li r0, 0 -/* 8014C56C 001494CC 80 AD 8C 14 */ lwz r5, lbl_805A77D4@sda21(r13) -/* 8014C570 001494D0 90 01 00 A8 */ stw r0, 0xa8(r1) -/* 8014C574 001494D4 38 60 00 00 */ li r3, 0 -/* 8014C578 001494D8 38 80 00 01 */ li r4, 1 -/* 8014C57C 001494DC 48 23 D9 79 */ bl __shl2i -/* 8014C580 001494E0 38 A0 00 00 */ li r5, 0 -/* 8014C584 001494E4 38 00 00 01 */ li r0, 1 -/* 8014C588 001494E8 90 81 00 64 */ stw r4, 0x64(r1) -/* 8014C58C 001494EC 7F A4 EB 78 */ mr r4, r29 -/* 8014C590 001494F0 90 61 00 60 */ stw r3, 0x60(r1) -/* 8014C594 001494F4 38 61 00 78 */ addi r3, r1, 0x78 -/* 8014C598 001494F8 90 A1 00 6C */ stw r5, 0x6c(r1) -/* 8014C59C 001494FC 90 A1 00 68 */ stw r5, 0x68(r1) -/* 8014C5A0 00149500 90 01 00 70 */ stw r0, 0x70(r1) -/* 8014C5A4 00149504 4B FC E3 89 */ bl GetBoundingBox__13CPhysicsActorCFv -/* 8014C5A8 00149508 7F C3 F3 78 */ mr r3, r30 -/* 8014C5AC 0014950C 7F A7 EB 78 */ mr r7, r29 -/* 8014C5B0 00149510 38 81 00 A8 */ addi r4, r1, 0xa8 -/* 8014C5B4 00149514 38 A1 00 78 */ addi r5, r1, 0x78 -/* 8014C5B8 00149518 38 C1 00 60 */ addi r6, r1, 0x60 -/* 8014C5BC 0014951C 4B F0 01 65 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" -/* 8014C5C0 00149520 3B A1 00 AC */ addi r29, r1, 0xac -/* 8014C5C4 00149524 7F BF EB 78 */ mr r31, r29 -/* 8014C5C8 00149528 48 00 00 78 */ b lbl_8014C640 -lbl_8014C5CC: -/* 8014C5CC 0014952C A0 1F 00 00 */ lhz r0, 0(r31) -/* 8014C5D0 00149530 7F C3 F3 78 */ mr r3, r30 -/* 8014C5D4 00149534 38 81 00 08 */ addi r4, r1, 8 -/* 8014C5D8 00149538 B0 01 00 08 */ sth r0, 8(r1) -/* 8014C5DC 0014953C 4B EF FF 99 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8014C5E0 00149540 7C 64 1B 78 */ mr r4, r3 -/* 8014C5E4 00149544 38 61 00 24 */ addi r3, r1, 0x24 -/* 8014C5E8 00149548 4B F6 34 55 */ bl "__ct__18TCastToPtr<5CBomb>FP7CEntity" -/* 8014C5EC 0014954C 83 83 00 04 */ lwz r28, 4(r3) -/* 8014C5F0 00149550 28 1C 00 00 */ cmplwi r28, 0 -/* 8014C5F4 00149554 41 82 00 48 */ beq lbl_8014C63C -/* 8014C5F8 00149558 80 7E 09 00 */ lwz r3, 0x900(r30) -/* 8014C5FC 0014955C 48 1C 5E E1 */ bl Float__9CRandom16Fv -/* 8014C600 00149560 C0 62 9D 04 */ lfs f3, lbl_805ABA24@sda21(r2) -/* 8014C604 00149564 C0 02 9D 00 */ lfs f0, lbl_805ABA20@sda21(r2) -/* 8014C608 00149568 C0 42 96 A0 */ lfs f2, lbl_805AB3C0@sda21(r2) -/* 8014C60C 0014956C EC 23 00 7A */ fmadds f1, f3, f1, f0 -/* 8014C610 00149570 C0 02 9C F0 */ lfs f0, lbl_805ABA10@sda21(r2) -/* 8014C614 00149574 FC 80 10 50 */ fneg f4, f2 -/* 8014C618 00149578 EC 61 07 F2 */ fmuls f3, f1, f31 -/* 8014C61C 0014957C EC 41 07 B2 */ fmuls f2, f1, f30 -/* 8014C620 00149580 EC 21 07 72 */ fmuls f1, f1, f29 -/* 8014C624 00149584 D0 7C 01 58 */ stfs f3, 0x158(r28) -/* 8014C628 00149588 D0 5C 01 5C */ stfs f2, 0x15c(r28) -/* 8014C62C 0014958C D0 3C 01 60 */ stfs f1, 0x160(r28) -/* 8014C630 00149590 D0 1C 01 64 */ stfs f0, 0x164(r28) -/* 8014C634 00149594 D0 1C 01 68 */ stfs f0, 0x168(r28) -/* 8014C638 00149598 D0 9C 01 6C */ stfs f4, 0x16c(r28) -lbl_8014C63C: -/* 8014C63C 0014959C 3B FF 00 02 */ addi r31, r31, 2 -lbl_8014C640: -/* 8014C640 001495A0 80 A1 00 A8 */ lwz r5, 0xa8(r1) -/* 8014C644 001495A4 54 A0 08 3C */ slwi r0, r5, 1 -/* 8014C648 001495A8 7C 1D 02 14 */ add r0, r29, r0 -/* 8014C64C 001495AC 7C 1F 00 40 */ cmplw r31, r0 -/* 8014C650 001495B0 40 82 FF 7C */ bne lbl_8014C5CC -/* 8014C654 001495B4 2C 05 00 00 */ cmpwi r5, 0 -/* 8014C658 001495B8 38 60 00 00 */ li r3, 0 -/* 8014C65C 001495BC 40 81 00 40 */ ble lbl_8014C69C -/* 8014C660 001495C0 2C 05 00 08 */ cmpwi r5, 8 -/* 8014C664 001495C4 38 85 FF F8 */ addi r4, r5, -8 -/* 8014C668 001495C8 40 81 00 20 */ ble lbl_8014C688 -/* 8014C66C 001495CC 38 04 00 07 */ addi r0, r4, 7 -/* 8014C670 001495D0 54 00 E8 FE */ srwi r0, r0, 3 -/* 8014C674 001495D4 7C 09 03 A6 */ mtctr r0 -/* 8014C678 001495D8 2C 04 00 00 */ cmpwi r4, 0 -/* 8014C67C 001495DC 40 81 00 0C */ ble lbl_8014C688 -lbl_8014C680: -/* 8014C680 001495E0 38 63 00 08 */ addi r3, r3, 8 -/* 8014C684 001495E4 42 00 FF FC */ bdnz lbl_8014C680 -lbl_8014C688: -/* 8014C688 001495E8 7C 03 28 50 */ subf r0, r3, r5 -/* 8014C68C 001495EC 7C 09 03 A6 */ mtctr r0 -/* 8014C690 001495F0 7C 03 28 00 */ cmpw r3, r5 -/* 8014C694 001495F4 40 80 00 08 */ bge lbl_8014C69C -lbl_8014C698: -/* 8014C698 001495F8 42 00 00 00 */ bdnz lbl_8014C698 -lbl_8014C69C: -/* 8014C69C 001495FC 38 00 00 00 */ li r0, 0 -/* 8014C6A0 00149600 90 01 00 A8 */ stw r0, 0xa8(r1) -lbl_8014C6A4: -/* 8014C6A4 00149604 E3 E1 08 F8 */ psq_l f31, -1800(r1), 0, qr0 -/* 8014C6A8 00149608 CB E1 08 F0 */ lfd f31, 0x8f0(r1) -/* 8014C6AC 0014960C E3 C1 08 E8 */ psq_l f30, -1816(r1), 0, qr0 -/* 8014C6B0 00149610 CB C1 08 E0 */ lfd f30, 0x8e0(r1) -/* 8014C6B4 00149614 E3 A1 08 D8 */ psq_l f29, -1832(r1), 0, qr0 -/* 8014C6B8 00149618 CB A1 08 D0 */ lfd f29, 0x8d0(r1) -/* 8014C6BC 0014961C E3 81 08 C8 */ psq_l f28, -1848(r1), 0, qr0 -/* 8014C6C0 00149620 CB 81 08 C0 */ lfd f28, 0x8c0(r1) -/* 8014C6C4 00149624 83 E1 08 BC */ lwz r31, 0x8bc(r1) -/* 8014C6C8 00149628 83 C1 08 B8 */ lwz r30, 0x8b8(r1) -/* 8014C6CC 0014962C 83 A1 08 B4 */ lwz r29, 0x8b4(r1) -/* 8014C6D0 00149630 80 01 09 04 */ lwz r0, 0x904(r1) -/* 8014C6D4 00149634 83 81 08 B0 */ lwz r28, 0x8b0(r1) -/* 8014C6D8 00149638 7C 08 03 A6 */ mtlr r0 -/* 8014C6DC 0014963C 38 21 09 00 */ addi r1, r1, 0x900 -/* 8014C6E0 00149640 4E 80 00 20 */ blr - -.global GetDamageVulnerability__16CPuddleToadGammaCFRC9CVector3fRC9CVector3fRC11CDamageInfo -GetDamageVulnerability__16CPuddleToadGammaCFRC9CVector3fRC9CVector3fRC11CDamageInfo: -/* 8014C6E4 00149644 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8014C6E8 00149648 7C 08 02 A6 */ mflr r0 -/* 8014C6EC 0014964C 90 01 00 24 */ stw r0, 0x24(r1) -/* 8014C6F0 00149650 88 03 05 E8 */ lbz r0, 0x5e8(r3) -/* 8014C6F4 00149654 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8014C6F8 00149658 41 82 00 5C */ beq lbl_8014C754 -/* 8014C6FC 0014965C C0 43 05 DC */ lfs f2, 0x5dc(r3) -/* 8014C700 00149660 C0 04 00 04 */ lfs f0, 4(r4) -/* 8014C704 00149664 C0 23 05 D8 */ lfs f1, 0x5d8(r3) -/* 8014C708 00149668 EC A2 00 28 */ fsubs f5, f2, f0 -/* 8014C70C 0014966C C0 04 00 00 */ lfs f0, 0(r4) -/* 8014C710 00149670 C0 43 05 E0 */ lfs f2, 0x5e0(r3) -/* 8014C714 00149674 EC 61 00 28 */ fsubs f3, f1, f0 -/* 8014C718 00149678 C0 04 00 08 */ lfs f0, 8(r4) -/* 8014C71C 0014967C EC 25 01 72 */ fmuls f1, f5, f5 -/* 8014C720 00149680 EC 82 00 28 */ fsubs f4, f2, f0 -/* 8014C724 00149684 C0 02 9D 08 */ lfs f0, lbl_805ABA28@sda21(r2) -/* 8014C728 00149688 EC 43 00 F2 */ fmuls f2, f3, f3 -/* 8014C72C 0014968C D0 61 00 08 */ stfs f3, 8(r1) -/* 8014C730 00149690 EC 64 01 32 */ fmuls f3, f4, f4 -/* 8014C734 00149694 EC 22 08 2A */ fadds f1, f2, f1 -/* 8014C738 00149698 D0 A1 00 0C */ stfs f5, 0xc(r1) -/* 8014C73C 0014969C D0 81 00 10 */ stfs f4, 0x10(r1) -/* 8014C740 001496A0 EC 23 08 2A */ fadds f1, f3, f1 -/* 8014C744 001496A4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8014C748 001496A8 40 80 00 0C */ bge lbl_8014C754 -/* 8014C74C 001496AC 4B F5 66 25 */ bl GetDamageVulnerability__3CAiCFv -/* 8014C750 001496B0 48 00 00 0C */ b lbl_8014C75C -lbl_8014C754: -/* 8014C754 001496B4 3C 60 80 57 */ lis r3, lbl_8056D718@ha -/* 8014C758 001496B8 38 63 D7 18 */ addi r3, r3, lbl_8056D718@l -lbl_8014C75C: -/* 8014C75C 001496BC 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8014C760 001496C0 7C 08 03 A6 */ mtlr r0 -/* 8014C764 001496C4 38 21 00 20 */ addi r1, r1, 0x20 -/* 8014C768 001496C8 4E 80 00 20 */ blr - -.global GetDamageVulnerability__16CPuddleToadGammaCFv -GetDamageVulnerability__16CPuddleToadGammaCFv: -/* 8014C76C 001496CC 3C 60 80 57 */ lis r3, lbl_8056D718@ha -/* 8014C770 001496D0 38 63 D7 18 */ addi r3, r3, lbl_8056D718@l -/* 8014C774 001496D4 4E 80 00 20 */ blr - -.global sub_8014c778 -sub_8014c778: -/* 8014C778 001496D8 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8014C77C 001496DC 7C 08 02 A6 */ mflr r0 -/* 8014C780 001496E0 90 01 00 44 */ stw r0, 0x44(r1) -/* 8014C784 001496E4 DB E1 00 30 */ stfd f31, 0x30(r1) -/* 8014C788 001496E8 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 -/* 8014C78C 001496EC 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8014C790 001496F0 93 C1 00 28 */ stw r30, 0x28(r1) -/* 8014C794 001496F4 93 A1 00 24 */ stw r29, 0x24(r1) -/* 8014C798 001496F8 7C 9E 23 78 */ mr r30, r4 -/* 8014C79C 001496FC 7C 7D 1B 78 */ mr r29, r3 -/* 8014C7A0 00149700 83 E4 08 4C */ lwz r31, 0x84c(r4) -/* 8014C7A4 00149704 FF E0 08 90 */ fmr f31, f1 -/* 8014C7A8 00149708 C0 03 05 D0 */ lfs f0, 0x5d0(r3) -/* 8014C7AC 0014970C C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 8014C7B0 00149710 C0 7F 00 60 */ lfs f3, 0x60(r31) -/* 8014C7B4 00149714 C0 43 05 D4 */ lfs f2, 0x5d4(r3) -/* 8014C7B8 00149718 EC 81 00 28 */ fsubs f4, f1, f0 -/* 8014C7BC 0014971C C0 3F 00 40 */ lfs f1, 0x40(r31) -/* 8014C7C0 00149720 C0 03 05 CC */ lfs f0, 0x5cc(r3) -/* 8014C7C4 00149724 EC 43 10 28 */ fsubs f2, f3, f2 -/* 8014C7C8 00149728 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8014C7CC 0014972C D0 81 00 18 */ stfs f4, 0x18(r1) -/* 8014C7D0 00149730 D0 41 00 1C */ stfs f2, 0x1c(r1) -/* 8014C7D4 00149734 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 8014C7D8 00149738 80 1F 02 F8 */ lwz r0, 0x2f8(r31) -/* 8014C7DC 0014973C 2C 00 00 01 */ cmpwi r0, 1 -/* 8014C7E0 00149740 40 82 00 A0 */ bne lbl_8014C880 -/* 8014C7E4 00149744 38 61 00 14 */ addi r3, r1, 0x14 -/* 8014C7E8 00149748 48 1C 80 D1 */ bl Magnitude__9CVector3fCFv -/* 8014C7EC 0014974C C0 02 9D 0C */ lfs f0, lbl_805ABA2C@sda21(r2) -/* 8014C7F0 00149750 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8014C7F4 00149754 40 80 00 24 */ bge lbl_8014C818 -/* 8014C7F8 00149758 7F E3 FB 78 */ mr r3, r31 -/* 8014C7FC 0014975C 4B FC EB 7D */ bl Stop__13CPhysicsActorFv -/* 8014C800 00149760 FC 20 F8 90 */ fmr f1, f31 -/* 8014C804 00149764 7F A3 EB 78 */ mr r3, r29 -/* 8014C808 00149768 7F C4 F3 78 */ mr r4, r30 -/* 8014C80C 0014976C 38 BD 05 CC */ addi r5, r29, 0x5cc -/* 8014C810 00149770 4B FF FA 0D */ bl CenterPlayer__16CPuddleToadGammaFR13CStateManagerRC9CVector3f -/* 8014C814 00149774 48 00 00 6C */ b lbl_8014C880 -lbl_8014C818: -/* 8014C818 00149778 EC 01 00 72 */ fmuls f0, f1, f1 -/* 8014C81C 0014977C C0 7D 05 B0 */ lfs f3, 0x5b0(r29) -/* 8014C820 00149780 C0 41 00 18 */ lfs f2, 0x18(r1) -/* 8014C824 00149784 C0 21 00 1C */ lfs f1, 0x1c(r1) -/* 8014C828 00149788 EC 63 00 24 */ fdivs f3, f3, f0 -/* 8014C82C 0014978C C0 01 00 14 */ lfs f0, 0x14(r1) -/* 8014C830 00149790 C0 9D 05 A8 */ lfs f4, 0x5a8(r29) -/* 8014C834 00149794 C0 BF 00 E8 */ lfs f5, 0xe8(r31) -/* 8014C838 00149798 FC 40 10 50 */ fneg f2, f2 -/* 8014C83C 0014979C FC 20 08 50 */ fneg f1, f1 -/* 8014C840 001497A0 FC 00 00 50 */ fneg f0, f0 -/* 8014C844 001497A4 EC 64 00 F2 */ fmuls f3, f4, f3 -/* 8014C848 001497A8 EC 45 00 B2 */ fmuls f2, f5, f2 -/* 8014C84C 001497AC EC 25 00 72 */ fmuls f1, f5, f1 -/* 8014C850 001497B0 EC 05 00 32 */ fmuls f0, f5, f0 -/* 8014C854 001497B4 EC 43 00 B2 */ fmuls f2, f3, f2 -/* 8014C858 001497B8 EC 23 00 72 */ fmuls f1, f3, f1 -/* 8014C85C 001497BC EC 03 00 32 */ fmuls f0, f3, f0 -/* 8014C860 001497C0 D0 41 00 0C */ stfs f2, 0xc(r1) -/* 8014C864 001497C4 D0 01 00 08 */ stfs f0, 8(r1) -/* 8014C868 001497C8 D0 21 00 10 */ stfs f1, 0x10(r1) -/* 8014C86C 001497CC 4B EC EC C9 */ bl Identity__10CAxisAngleFv -/* 8014C870 001497D0 7C 65 1B 78 */ mr r5, r3 -/* 8014C874 001497D4 7F E3 FB 78 */ mr r3, r31 -/* 8014C878 001497D8 38 81 00 08 */ addi r4, r1, 8 -/* 8014C87C 001497DC 4B FC FA 49 */ bl ApplyForceWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle -lbl_8014C880: -/* 8014C880 001497E0 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 -/* 8014C884 001497E4 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8014C888 001497E8 CB E1 00 30 */ lfd f31, 0x30(r1) -/* 8014C88C 001497EC 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8014C890 001497F0 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 8014C894 001497F4 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 8014C898 001497F8 7C 08 03 A6 */ mtlr r0 -/* 8014C89C 001497FC 38 21 00 40 */ addi r1, r1, 0x40 -/* 8014C8A0 00149800 4E 80 00 20 */ blr - -.global sub_8014c8a4 -sub_8014c8a4: -/* 8014C8A4 00149804 94 21 FE 60 */ stwu r1, -0x1a0(r1) -/* 8014C8A8 00149808 7C 08 02 A6 */ mflr r0 -/* 8014C8AC 0014980C 90 01 01 A4 */ stw r0, 0x1a4(r1) -/* 8014C8B0 00149810 DB E1 01 90 */ stfd f31, 0x190(r1) -/* 8014C8B4 00149814 F3 E1 01 98 */ psq_st f31, 408(r1), 0, qr0 -/* 8014C8B8 00149818 DB C1 01 80 */ stfd f30, 0x180(r1) -/* 8014C8BC 0014981C F3 C1 01 88 */ psq_st f30, 392(r1), 0, qr0 -/* 8014C8C0 00149820 DB A1 01 70 */ stfd f29, 0x170(r1) -/* 8014C8C4 00149824 F3 A1 01 78 */ psq_st f29, 376(r1), 0, qr0 -/* 8014C8C8 00149828 DB 81 01 60 */ stfd f28, 0x160(r1) -/* 8014C8CC 0014982C F3 81 01 68 */ psq_st f28, 360(r1), 0, qr0 -/* 8014C8D0 00149830 DB 61 01 50 */ stfd f27, 0x150(r1) -/* 8014C8D4 00149834 F3 61 01 58 */ psq_st f27, 344(r1), 0, qr0 -/* 8014C8D8 00149838 DB 41 01 40 */ stfd f26, 0x140(r1) -/* 8014C8DC 0014983C F3 41 01 48 */ psq_st f26, 328(r1), 0, qr0 -/* 8014C8E0 00149840 BF 61 01 2C */ stmw r27, 0x12c(r1) -/* 8014C8E4 00149844 7C 9F 23 78 */ mr r31, r4 -/* 8014C8E8 00149848 7C 7E 1B 78 */ mr r30, r3 -/* 8014C8EC 0014984C 83 A4 08 4C */ lwz r29, 0x84c(r4) -/* 8014C8F0 00149850 38 61 00 50 */ addi r3, r1, 0x50 -/* 8014C8F4 00149854 80 8D 8B FC */ lwz r4, lbl_805A77BC@sda21(r13) -/* 8014C8F8 00149858 4B EB 83 C1 */ bl string_l__4rstlFPCc -/* 8014C8FC 0014985C 7F C4 F3 78 */ mr r4, r30 -/* 8014C900 00149860 38 61 00 C0 */ addi r3, r1, 0xc0 -/* 8014C904 00149864 38 A1 00 50 */ addi r5, r1, 0x50 -/* 8014C908 00149868 4B F2 C0 71 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8014C90C 0014986C 38 61 00 F0 */ addi r3, r1, 0xf0 -/* 8014C910 00149870 38 81 00 C0 */ addi r4, r1, 0xc0 -/* 8014C914 00149874 48 1C 62 61 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8014C918 00149878 38 61 00 50 */ addi r3, r1, 0x50 -/* 8014C91C 0014987C 48 1F 11 C5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 8014C920 00149880 80 7D 07 68 */ lwz r3, 0x768(r29) -/* 8014C924 00149884 4B FA C4 E1 */ bl GetBallRadius__10CMorphBallCFv -/* 8014C928 00149888 C0 1D 00 60 */ lfs f0, 0x60(r29) -/* 8014C92C 0014988C 38 61 00 44 */ addi r3, r1, 0x44 -/* 8014C930 00149890 C0 7D 00 40 */ lfs f3, 0x40(r29) -/* 8014C934 00149894 38 9E 00 34 */ addi r4, r30, 0x34 -/* 8014C938 00149898 C0 42 9C F0 */ lfs f2, lbl_805ABA10@sda21(r2) -/* 8014C93C 0014989C EF E0 08 2A */ fadds f31, f0, f1 -/* 8014C940 001498A0 C0 3D 00 50 */ lfs f1, 0x50(r29) -/* 8014C944 001498A4 38 A1 00 38 */ addi r5, r1, 0x38 -/* 8014C948 001498A8 C0 02 9C FC */ lfs f0, lbl_805ABA1C@sda21(r2) -/* 8014C94C 001498AC EF 43 10 2A */ fadds f26, f3, f2 -/* 8014C950 001498B0 EF 61 10 2A */ fadds f27, f1, f2 -/* 8014C954 001498B4 D0 41 00 38 */ stfs f2, 0x38(r1) -/* 8014C958 001498B8 D0 01 00 3C */ stfs f0, 0x3c(r1) -/* 8014C95C 001498BC D0 41 00 40 */ stfs f2, 0x40(r1) -/* 8014C960 001498C0 48 1C 61 21 */ bl Rotate__12CTransform4fCFRC9CVector3f -/* 8014C964 001498C4 C3 81 00 44 */ lfs f28, 0x44(r1) -/* 8014C968 001498C8 38 61 00 2C */ addi r3, r1, 0x2c -/* 8014C96C 001498CC C0 02 9C FC */ lfs f0, lbl_805ABA1C@sda21(r2) -/* 8014C970 001498D0 38 81 00 6C */ addi r4, r1, 0x6c -/* 8014C974 001498D4 C3 C1 00 48 */ lfs f30, 0x48(r1) -/* 8014C978 001498D8 C3 A1 00 4C */ lfs f29, 0x4c(r1) -/* 8014C97C 001498DC EC 60 07 32 */ fmuls f3, f0, f28 -/* 8014C980 001498E0 C1 01 00 FC */ lfs f8, 0xfc(r1) -/* 8014C984 001498E4 EC 40 07 B2 */ fmuls f2, f0, f30 -/* 8014C988 001498E8 C0 E1 01 0C */ lfs f7, 0x10c(r1) -/* 8014C98C 001498EC EC 20 07 72 */ fmuls f1, f0, f29 -/* 8014C990 001498F0 C0 C1 01 1C */ lfs f6, 0x11c(r1) -/* 8014C994 001498F4 C0 02 9D 08 */ lfs f0, lbl_805ABA28@sda21(r2) -/* 8014C998 001498F8 EC 68 18 28 */ fsubs f3, f8, f3 -/* 8014C99C 001498FC EC 47 10 28 */ fsubs f2, f7, f2 -/* 8014C9A0 00149900 EC 26 08 28 */ fsubs f1, f6, f1 -/* 8014C9A4 00149904 EC BA 18 28 */ fsubs f5, f26, f3 -/* 8014C9A8 00149908 EC 9B 10 28 */ fsubs f4, f27, f2 -/* 8014C9AC 0014990C EC 7F 08 28 */ fsubs f3, f31, f1 -/* 8014C9B0 00149910 EC 40 07 B2 */ fmuls f2, f0, f30 -/* 8014C9B4 00149914 D0 A1 00 6C */ stfs f5, 0x6c(r1) -/* 8014C9B8 00149918 EC 20 07 72 */ fmuls f1, f0, f29 -/* 8014C9BC 0014991C EC 00 07 32 */ fmuls f0, f0, f28 -/* 8014C9C0 00149920 D0 81 00 70 */ stfs f4, 0x70(r1) -/* 8014C9C4 00149924 EC 87 10 28 */ fsubs f4, f7, f2 -/* 8014C9C8 00149928 D0 61 00 74 */ stfs f3, 0x74(r1) -/* 8014C9CC 0014992C EC 46 08 28 */ fsubs f2, f6, f1 -/* 8014C9D0 00149930 EC 08 00 28 */ fsubs f0, f8, f0 -/* 8014C9D4 00149934 C0 BD 00 50 */ lfs f5, 0x50(r29) -/* 8014C9D8 00149938 C0 7D 00 60 */ lfs f3, 0x60(r29) -/* 8014C9DC 0014993C C0 3D 00 40 */ lfs f1, 0x40(r29) -/* 8014C9E0 00149940 EC 85 20 28 */ fsubs f4, f5, f4 -/* 8014C9E4 00149944 EC 43 10 28 */ fsubs f2, f3, f2 -/* 8014C9E8 00149948 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8014C9EC 0014994C D0 81 00 64 */ stfs f4, 0x64(r1) -/* 8014C9F0 00149950 D0 01 00 60 */ stfs f0, 0x60(r1) -/* 8014C9F4 00149954 D0 41 00 68 */ stfs f2, 0x68(r1) -/* 8014C9F8 00149958 48 1C 7E 59 */ bl AsNormalized__9CVector3fCFv -/* 8014C9FC 0014995C C0 01 00 30 */ lfs f0, 0x30(r1) -/* 8014CA00 00149960 38 61 00 20 */ addi r3, r1, 0x20 -/* 8014CA04 00149964 C0 21 00 2C */ lfs f1, 0x2c(r1) -/* 8014CA08 00149968 38 81 00 60 */ addi r4, r1, 0x60 -/* 8014CA0C 0014996C EC 00 07 B2 */ fmuls f0, f0, f30 -/* 8014CA10 00149970 C0 41 00 34 */ lfs f2, 0x34(r1) -/* 8014CA14 00149974 EC 01 07 3A */ fmadds f0, f1, f28, f0 -/* 8014CA18 00149978 EF E2 07 7A */ fmadds f31, f2, f29, f0 -/* 8014CA1C 0014997C 48 1C 7E 35 */ bl AsNormalized__9CVector3fCFv -/* 8014CA20 00149980 C0 01 00 24 */ lfs f0, 0x24(r1) -/* 8014CA24 00149984 38 61 00 6C */ addi r3, r1, 0x6c -/* 8014CA28 00149988 C0 21 00 20 */ lfs f1, 0x20(r1) -/* 8014CA2C 0014998C EC 00 07 B2 */ fmuls f0, f0, f30 -/* 8014CA30 00149990 C0 41 00 28 */ lfs f2, 0x28(r1) -/* 8014CA34 00149994 EC 01 07 3A */ fmadds f0, f1, f28, f0 -/* 8014CA38 00149998 EF 42 07 7A */ fmadds f26, f2, f29, f0 -/* 8014CA3C 0014999C 48 1C 7E 7D */ bl Magnitude__9CVector3fCFv -/* 8014CA40 001499A0 88 0D A3 E0 */ lbz r0, lbl_805A8FA0@sda21(r13) -/* 8014CA44 001499A4 FF 80 08 90 */ fmr f28, f1 -/* 8014CA48 001499A8 7C 00 07 75 */ extsb. r0, r0 -/* 8014CA4C 001499AC 40 82 00 88 */ bne lbl_8014CAD4 -/* 8014CA50 001499B0 80 AD 8C 08 */ lwz r5, lbl_805A77C8@sda21(r13) -/* 8014CA54 001499B4 38 60 00 00 */ li r3, 0 -/* 8014CA58 001499B8 38 80 00 01 */ li r4, 1 -/* 8014CA5C 001499BC 48 23 D4 99 */ bl __shl2i -/* 8014CA60 001499C0 80 AD 8C 0C */ lwz r5, lbl_805A77CC@sda21(r13) -/* 8014CA64 001499C4 7C 9B 23 78 */ mr r27, r4 -/* 8014CA68 001499C8 7C 7C 1B 78 */ mr r28, r3 -/* 8014CA6C 001499CC 38 60 00 00 */ li r3, 0 -/* 8014CA70 001499D0 38 80 00 01 */ li r4, 1 -/* 8014CA74 001499D4 48 23 D4 81 */ bl __shl2i -/* 8014CA78 001499D8 80 AD 8C 10 */ lwz r5, lbl_805A77D0@sda21(r13) -/* 8014CA7C 001499DC 7F 7B 23 78 */ or r27, r27, r4 -/* 8014CA80 001499E0 7F 9C 1B 78 */ or r28, r28, r3 -/* 8014CA84 001499E4 38 60 00 00 */ li r3, 0 -/* 8014CA88 001499E8 38 80 00 01 */ li r4, 1 -/* 8014CA8C 001499EC 48 23 D4 69 */ bl __shl2i -/* 8014CA90 001499F0 80 AD 8C 04 */ lwz r5, lbl_805A77C4@sda21(r13) -/* 8014CA94 001499F4 7F 7B 23 78 */ or r27, r27, r4 -/* 8014CA98 001499F8 7F 9C 1B 78 */ or r28, r28, r3 -/* 8014CA9C 001499FC 38 60 00 00 */ li r3, 0 -/* 8014CAA0 00149A00 38 80 00 01 */ li r4, 1 -/* 8014CAA4 00149A04 48 23 D4 51 */ bl __shl2i -/* 8014CAA8 00149A08 3C A0 80 47 */ lis r5, lbl_8046C758@ha -/* 8014CAAC 00149A0C 38 C0 00 03 */ li r6, 3 -/* 8014CAB0 00149A10 38 A5 C7 58 */ addi r5, r5, lbl_8046C758@l -/* 8014CAB4 00149A14 38 00 00 01 */ li r0, 1 -/* 8014CAB8 00149A18 90 C1 00 88 */ stw r6, 0x88(r1) -/* 8014CABC 00149A1C 90 85 00 04 */ stw r4, 4(r5) -/* 8014CAC0 00149A20 90 65 00 00 */ stw r3, 0(r5) -/* 8014CAC4 00149A24 93 65 00 0C */ stw r27, 0xc(r5) -/* 8014CAC8 00149A28 93 85 00 08 */ stw r28, 8(r5) -/* 8014CACC 00149A2C 90 C5 00 10 */ stw r6, 0x10(r5) -/* 8014CAD0 00149A30 98 0D A3 E0 */ stb r0, lbl_805A8FA0@sda21(r13) -lbl_8014CAD4: -/* 8014CAD4 00149A34 C0 02 9C F8 */ lfs f0, lbl_805ABA18@sda21(r2) -/* 8014CAD8 00149A38 FC 1C 00 40 */ fcmpo cr0, f28, f0 -/* 8014CADC 00149A3C 40 81 00 84 */ ble lbl_8014CB60 -/* 8014CAE0 00149A40 C0 02 9C FC */ lfs f0, lbl_805ABA1C@sda21(r2) -/* 8014CAE4 00149A44 C0 21 00 6C */ lfs f1, 0x6c(r1) -/* 8014CAE8 00149A48 EC C0 E0 24 */ fdivs f6, f0, f28 -/* 8014CAEC 00149A4C C0 01 00 70 */ lfs f0, 0x70(r1) -/* 8014CAF0 00149A50 C0 61 00 74 */ lfs f3, 0x74(r1) -/* 8014CAF4 00149A54 80 7D 07 68 */ lwz r3, 0x768(r29) -/* 8014CAF8 00149A58 C0 41 00 FC */ lfs f2, 0xfc(r1) -/* 8014CAFC 00149A5C D0 41 00 14 */ stfs f2, 0x14(r1) -/* 8014CB00 00149A60 EC A6 00 72 */ fmuls f5, f6, f1 -/* 8014CB04 00149A64 C0 21 01 0C */ lfs f1, 0x10c(r1) -/* 8014CB08 00149A68 EC 86 00 32 */ fmuls f4, f6, f0 -/* 8014CB0C 00149A6C C0 01 01 1C */ lfs f0, 0x11c(r1) -/* 8014CB10 00149A70 EC 66 00 F2 */ fmuls f3, f6, f3 -/* 8014CB14 00149A74 D0 21 00 18 */ stfs f1, 0x18(r1) -/* 8014CB18 00149A78 D0 A1 00 08 */ stfs f5, 8(r1) -/* 8014CB1C 00149A7C D0 81 00 0C */ stfs f4, 0xc(r1) -/* 8014CB20 00149A80 D0 61 00 10 */ stfs f3, 0x10(r1) -/* 8014CB24 00149A84 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 8014CB28 00149A88 4B FA C2 DD */ bl GetBallRadius__10CMorphBallCFv -/* 8014CB2C 00149A8C EC 3C 08 28 */ fsubs f1, f28, f1 -/* 8014CB30 00149A90 3C 60 80 47 */ lis r3, lbl_8046C758@ha -/* 8014CB34 00149A94 38 E3 C7 58 */ addi r7, r3, lbl_8046C758@l -/* 8014CB38 00149A98 7F E4 FB 78 */ mr r4, r31 -/* 8014CB3C 00149A9C 38 61 00 90 */ addi r3, r1, 0x90 -/* 8014CB40 00149AA0 38 A1 00 14 */ addi r5, r1, 0x14 -/* 8014CB44 00149AA4 38 C1 00 08 */ addi r6, r1, 8 -/* 8014CB48 00149AA8 4B F0 04 51 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter -/* 8014CB4C 00149AAC 88 01 00 B0 */ lbz r0, 0xb0(r1) -/* 8014CB50 00149AB0 28 00 00 00 */ cmplwi r0, 0 -/* 8014CB54 00149AB4 41 82 00 0C */ beq lbl_8014CB60 -/* 8014CB58 00149AB8 38 60 00 00 */ li r3, 0 -/* 8014CB5C 00149ABC 48 00 00 38 */ b lbl_8014CB94 -lbl_8014CB60: -/* 8014CB60 00149AC0 C0 1E 05 B0 */ lfs f0, 0x5b0(r30) -/* 8014CB64 00149AC4 FC 1C 00 40 */ fcmpo cr0, f28, f0 -/* 8014CB68 00149AC8 40 80 00 28 */ bge lbl_8014CB90 -/* 8014CB6C 00149ACC C0 02 9C F0 */ lfs f0, lbl_805ABA10@sda21(r2) -/* 8014CB70 00149AD0 38 60 00 00 */ li r3, 0 -/* 8014CB74 00149AD4 FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 8014CB78 00149AD8 40 81 00 1C */ ble lbl_8014CB94 -/* 8014CB7C 00149ADC C0 1E 05 AC */ lfs f0, 0x5ac(r30) -/* 8014CB80 00149AE0 FC 1A 00 40 */ fcmpo cr0, f26, f0 -/* 8014CB84 00149AE4 40 81 00 10 */ ble lbl_8014CB94 -/* 8014CB88 00149AE8 38 60 00 01 */ li r3, 1 -/* 8014CB8C 00149AEC 48 00 00 08 */ b lbl_8014CB94 -lbl_8014CB90: -/* 8014CB90 00149AF0 38 60 00 00 */ li r3, 0 -lbl_8014CB94: -/* 8014CB94 00149AF4 E3 E1 01 98 */ psq_l f31, 408(r1), 0, qr0 -/* 8014CB98 00149AF8 CB E1 01 90 */ lfd f31, 0x190(r1) -/* 8014CB9C 00149AFC E3 C1 01 88 */ psq_l f30, 392(r1), 0, qr0 -/* 8014CBA0 00149B00 CB C1 01 80 */ lfd f30, 0x180(r1) -/* 8014CBA4 00149B04 E3 A1 01 78 */ psq_l f29, 376(r1), 0, qr0 -/* 8014CBA8 00149B08 CB A1 01 70 */ lfd f29, 0x170(r1) -/* 8014CBAC 00149B0C E3 81 01 68 */ psq_l f28, 360(r1), 0, qr0 -/* 8014CBB0 00149B10 CB 81 01 60 */ lfd f28, 0x160(r1) -/* 8014CBB4 00149B14 E3 61 01 58 */ psq_l f27, 344(r1), 0, qr0 -/* 8014CBB8 00149B18 CB 61 01 50 */ lfd f27, 0x150(r1) -/* 8014CBBC 00149B1C E3 41 01 48 */ psq_l f26, 328(r1), 0, qr0 -/* 8014CBC0 00149B20 CB 41 01 40 */ lfd f26, 0x140(r1) -/* 8014CBC4 00149B24 BB 61 01 2C */ lmw r27, 0x12c(r1) -/* 8014CBC8 00149B28 80 01 01 A4 */ lwz r0, 0x1a4(r1) -/* 8014CBCC 00149B2C 7C 08 03 A6 */ mtlr r0 -/* 8014CBD0 00149B30 38 21 01 A0 */ addi r1, r1, 0x1a0 -/* 8014CBD4 00149B34 4E 80 00 20 */ blr - -.global Think__16CPuddleToadGammaFfR13CStateManager -Think__16CPuddleToadGammaFfR13CStateManager: -/* 8014CBD8 00149B38 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8014CBDC 00149B3C 7C 08 02 A6 */ mflr r0 -/* 8014CBE0 00149B40 90 01 00 24 */ stw r0, 0x24(r1) -/* 8014CBE4 00149B44 DB E1 00 10 */ stfd f31, 0x10(r1) -/* 8014CBE8 00149B48 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 -/* 8014CBEC 00149B4C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8014CBF0 00149B50 7C 7F 1B 78 */ mr r31, r3 -/* 8014CBF4 00149B54 FF E0 08 90 */ fmr f31, f1 -/* 8014CBF8 00149B58 4B F2 CF 21 */ bl Think__10CPatternedFfR13CStateManager -/* 8014CBFC 00149B5C 88 1F 05 E8 */ lbz r0, 0x5e8(r31) -/* 8014CC00 00149B60 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 8014CC04 00149B64 41 82 00 10 */ beq lbl_8014CC14 -/* 8014CC08 00149B68 C0 1F 05 6C */ lfs f0, 0x56c(r31) -/* 8014CC0C 00149B6C EC 00 F8 2A */ fadds f0, f0, f31 -/* 8014CC10 00149B70 D0 1F 05 6C */ stfs f0, 0x56c(r31) -lbl_8014CC14: -/* 8014CC14 00149B74 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 -/* 8014CC18 00149B78 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8014CC1C 00149B7C CB E1 00 10 */ lfd f31, 0x10(r1) -/* 8014CC20 00149B80 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8014CC24 00149B84 7C 08 03 A6 */ mtlr r0 -/* 8014CC28 00149B88 38 21 00 20 */ addi r1, r1, 0x20 -/* 8014CC2C 00149B8C 4E 80 00 20 */ blr - -.global "__ct__16CPuddleToadGammaF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersfff9CVector3ffffRC11CDamageInfoRC11CDamageInfo" -"__ct__16CPuddleToadGammaF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersfff9CVector3ffffRC11CDamageInfoRC11CDamageInfo": -/* 8014CC30 00149B90 94 21 FF 30 */ stwu r1, -0xd0(r1) -/* 8014CC34 00149B94 7C 08 02 A6 */ mflr r0 -/* 8014CC38 00149B98 90 01 00 D4 */ stw r0, 0xd4(r1) -/* 8014CC3C 00149B9C DB E1 00 C0 */ stfd f31, 0xc0(r1) -/* 8014CC40 00149BA0 F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 -/* 8014CC44 00149BA4 DB C1 00 B0 */ stfd f30, 0xb0(r1) -/* 8014CC48 00149BA8 F3 C1 00 B8 */ psq_st f30, 184(r1), 0, qr0 -/* 8014CC4C 00149BAC DB A1 00 A0 */ stfd f29, 0xa0(r1) -/* 8014CC50 00149BB0 F3 A1 00 A8 */ psq_st f29, 168(r1), 0, qr0 -/* 8014CC54 00149BB4 DB 81 00 90 */ stfd f28, 0x90(r1) -/* 8014CC58 00149BB8 F3 81 00 98 */ psq_st f28, 152(r1), 0, qr0 -/* 8014CC5C 00149BBC DB 61 00 80 */ stfd f27, 0x80(r1) -/* 8014CC60 00149BC0 F3 61 00 88 */ psq_st f27, 136(r1), 0, qr0 -/* 8014CC64 00149BC4 DB 41 00 70 */ stfd f26, 0x70(r1) -/* 8014CC68 00149BC8 F3 41 00 78 */ psq_st f26, 120(r1), 0, qr0 -/* 8014CC6C 00149BCC BF 21 00 54 */ stmw r25, 0x54(r1) -/* 8014CC70 00149BD0 A0 04 00 00 */ lhz r0, 0(r4) -/* 8014CC74 00149BD4 7C D9 33 78 */ mr r25, r6 -/* 8014CC78 00149BD8 7C FA 3B 78 */ mr r26, r7 -/* 8014CC7C 00149BDC 7D 0C 43 78 */ mr r12, r8 -/* 8014CC80 00149BE0 B0 01 00 20 */ sth r0, 0x20(r1) -/* 8014CC84 00149BE4 7D 2B 4B 78 */ mr r11, r9 -/* 8014CC88 00149BE8 38 C0 00 01 */ li r6, 1 -/* 8014CC8C 00149BEC 38 80 00 00 */ li r4, 0 -/* 8014CC90 00149BF0 91 41 00 08 */ stw r10, 8(r1) -/* 8014CC94 00149BF4 38 00 00 02 */ li r0, 2 -/* 8014CC98 00149BF8 80 E1 00 D8 */ lwz r7, 0xd8(r1) -/* 8014CC9C 00149BFC FF 40 08 90 */ fmr f26, f1 -/* 8014CCA0 00149C00 90 C1 00 0C */ stw r6, 0xc(r1) -/* 8014CCA4 00149C04 7C A6 2B 78 */ mr r6, r5 -/* 8014CCA8 00149C08 FF 60 10 90 */ fmr f27, f2 -/* 8014CCAC 00149C0C 83 C1 00 DC */ lwz r30, 0xdc(r1) -/* 8014CCB0 00149C10 90 81 00 10 */ stw r4, 0x10(r1) -/* 8014CCB4 00149C14 FF 80 18 90 */ fmr f28, f3 -/* 8014CCB8 00149C18 83 61 00 E0 */ lwz r27, 0xe0(r1) -/* 8014CCBC 00149C1C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014CCC0 00149C20 FF A0 20 90 */ fmr f29, f4 -/* 8014CCC4 00149C24 83 81 00 E4 */ lwz r28, 0xe4(r1) -/* 8014CCC8 00149C28 90 E1 00 18 */ stw r7, 0x18(r1) -/* 8014CCCC 00149C2C FF C0 28 90 */ fmr f30, f5 -/* 8014CCD0 00149C30 83 E1 00 E8 */ lwz r31, 0xe8(r1) -/* 8014CCD4 00149C34 FF E0 30 90 */ fmr f31, f6 -/* 8014CCD8 00149C38 90 01 00 1C */ stw r0, 0x1c(r1) -/* 8014CCDC 00149C3C 7C 7D 1B 78 */ mr r29, r3 -/* 8014CCE0 00149C40 7F 27 CB 78 */ mr r7, r25 -/* 8014CCE4 00149C44 7F 48 D3 78 */ mr r8, r26 -/* 8014CCE8 00149C48 7D 89 63 78 */ mr r9, r12 -/* 8014CCEC 00149C4C 7D 6A 5B 78 */ mr r10, r11 -/* 8014CCF0 00149C50 38 A1 00 20 */ addi r5, r1, 0x20 -/* 8014CCF4 00149C54 38 80 00 1C */ li r4, 0x1c -/* 8014CCF8 00149C58 4B F3 07 59 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" -/* 8014CCFC 00149C5C 3C 60 80 3E */ lis r3, lbl_803E24E0@ha -/* 8014CD00 00149C60 C0 02 9D 14 */ lfs f0, lbl_805ABA34@sda21(r2) -/* 8014CD04 00149C64 38 63 24 E0 */ addi r3, r3, lbl_803E24E0@l -/* 8014CD08 00149C68 38 00 00 00 */ li r0, 0 -/* 8014CD0C 00149C6C 90 7D 00 00 */ stw r3, 0(r29) -/* 8014CD10 00149C70 EC 1B 00 32 */ fmuls f0, f27, f0 -/* 8014CD14 00149C74 C0 22 9D 10 */ lfs f1, lbl_805ABA30@sda21(r2) -/* 8014CD18 00149C78 90 1D 05 68 */ stw r0, 0x568(r29) -/* 8014CD1C 00149C7C C0 42 9C F0 */ lfs f2, lbl_805ABA10@sda21(r2) -/* 8014CD20 00149C80 EC 21 00 32 */ fmuls f1, f1, f0 -/* 8014CD24 00149C84 D0 5D 05 6C */ stfs f2, 0x56c(r29) -/* 8014CD28 00149C88 80 1B 00 00 */ lwz r0, 0(r27) -/* 8014CD2C 00149C8C 90 1D 05 70 */ stw r0, 0x570(r29) -/* 8014CD30 00149C90 88 1B 00 04 */ lbz r0, 4(r27) -/* 8014CD34 00149C94 98 1D 05 74 */ stb r0, 0x574(r29) -/* 8014CD38 00149C98 C0 1B 00 08 */ lfs f0, 8(r27) -/* 8014CD3C 00149C9C D0 1D 05 78 */ stfs f0, 0x578(r29) -/* 8014CD40 00149CA0 C0 1B 00 0C */ lfs f0, 0xc(r27) -/* 8014CD44 00149CA4 D0 1D 05 7C */ stfs f0, 0x57c(r29) -/* 8014CD48 00149CA8 C0 1B 00 10 */ lfs f0, 0x10(r27) -/* 8014CD4C 00149CAC D0 1D 05 80 */ stfs f0, 0x580(r29) -/* 8014CD50 00149CB0 C0 1B 00 14 */ lfs f0, 0x14(r27) -/* 8014CD54 00149CB4 D0 1D 05 84 */ stfs f0, 0x584(r29) -/* 8014CD58 00149CB8 88 1B 00 18 */ lbz r0, 0x18(r27) -/* 8014CD5C 00149CBC 98 1D 05 88 */ stb r0, 0x588(r29) -/* 8014CD60 00149CC0 80 1C 00 00 */ lwz r0, 0(r28) -/* 8014CD64 00149CC4 90 1D 05 8C */ stw r0, 0x58c(r29) -/* 8014CD68 00149CC8 88 1C 00 04 */ lbz r0, 4(r28) -/* 8014CD6C 00149CCC 98 1D 05 90 */ stb r0, 0x590(r29) -/* 8014CD70 00149CD0 C0 1C 00 08 */ lfs f0, 8(r28) -/* 8014CD74 00149CD4 D0 1D 05 94 */ stfs f0, 0x594(r29) -/* 8014CD78 00149CD8 C0 1C 00 0C */ lfs f0, 0xc(r28) -/* 8014CD7C 00149CDC D0 1D 05 98 */ stfs f0, 0x598(r29) -/* 8014CD80 00149CE0 C0 1C 00 10 */ lfs f0, 0x10(r28) -/* 8014CD84 00149CE4 D0 1D 05 9C */ stfs f0, 0x59c(r29) -/* 8014CD88 00149CE8 C0 1C 00 14 */ lfs f0, 0x14(r28) -/* 8014CD8C 00149CEC D0 1D 05 A0 */ stfs f0, 0x5a0(r29) -/* 8014CD90 00149CF0 88 1C 00 18 */ lbz r0, 0x18(r28) -/* 8014CD94 00149CF4 98 1D 05 A4 */ stb r0, 0x5a4(r29) -/* 8014CD98 00149CF8 D3 5D 05 A8 */ stfs f26, 0x5a8(r29) -/* 8014CD9C 00149CFC 48 24 76 55 */ bl cos -/* 8014CDA0 00149D00 FC 00 08 18 */ frsp f0, f1 -/* 8014CDA4 00149D04 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8014CDA8 00149D08 3C 1F 00 01 */ addis r0, r31, 1 -/* 8014CDAC 00149D0C 38 80 00 00 */ li r4, 0 -/* 8014CDB0 00149D10 38 A3 66 A0 */ addi r5, r3, skZero3f@l -/* 8014CDB4 00149D14 38 60 00 01 */ li r3, 1 -/* 8014CDB8 00149D18 D0 1D 05 AC */ stfs f0, 0x5ac(r29) -/* 8014CDBC 00149D1C 28 00 FF FF */ cmplwi r0, 0xffff -/* 8014CDC0 00149D20 D3 9D 05 B0 */ stfs f28, 0x5b0(r29) -/* 8014CDC4 00149D24 C0 1E 00 00 */ lfs f0, 0(r30) -/* 8014CDC8 00149D28 D0 1D 05 B4 */ stfs f0, 0x5b4(r29) -/* 8014CDCC 00149D2C C0 1E 00 04 */ lfs f0, 4(r30) -/* 8014CDD0 00149D30 D0 1D 05 B8 */ stfs f0, 0x5b8(r29) -/* 8014CDD4 00149D34 C0 1E 00 08 */ lfs f0, 8(r30) -/* 8014CDD8 00149D38 D0 1D 05 BC */ stfs f0, 0x5bc(r29) -/* 8014CDDC 00149D3C D3 BD 05 C0 */ stfs f29, 0x5c0(r29) -/* 8014CDE0 00149D40 D3 DD 05 C4 */ stfs f30, 0x5c4(r29) -/* 8014CDE4 00149D44 D3 FD 05 C8 */ stfs f31, 0x5c8(r29) -/* 8014CDE8 00149D48 C0 05 00 00 */ lfs f0, 0(r5) -/* 8014CDEC 00149D4C D0 1D 05 CC */ stfs f0, 0x5cc(r29) -/* 8014CDF0 00149D50 C0 05 00 04 */ lfs f0, 4(r5) -/* 8014CDF4 00149D54 D0 1D 05 D0 */ stfs f0, 0x5d0(r29) -/* 8014CDF8 00149D58 C0 05 00 08 */ lfs f0, 8(r5) -/* 8014CDFC 00149D5C D0 1D 05 D4 */ stfs f0, 0x5d4(r29) -/* 8014CE00 00149D60 C0 05 00 00 */ lfs f0, 0(r5) -/* 8014CE04 00149D64 D0 1D 05 D8 */ stfs f0, 0x5d8(r29) -/* 8014CE08 00149D68 C0 05 00 04 */ lfs f0, 4(r5) -/* 8014CE0C 00149D6C D0 1D 05 DC */ stfs f0, 0x5dc(r29) -/* 8014CE10 00149D70 C0 05 00 08 */ lfs f0, 8(r5) -/* 8014CE14 00149D74 D0 1D 05 E0 */ stfs f0, 0x5e0(r29) -/* 8014CE18 00149D78 90 9D 05 E4 */ stw r4, 0x5e4(r29) -/* 8014CE1C 00149D7C 88 1D 05 E8 */ lbz r0, 0x5e8(r29) -/* 8014CE20 00149D80 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 -/* 8014CE24 00149D84 98 1D 05 E8 */ stb r0, 0x5e8(r29) -/* 8014CE28 00149D88 88 1D 05 E8 */ lbz r0, 0x5e8(r29) -/* 8014CE2C 00149D8C 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 -/* 8014CE30 00149D90 98 1D 05 E8 */ stb r0, 0x5e8(r29) -/* 8014CE34 00149D94 88 1D 05 E8 */ lbz r0, 0x5e8(r29) -/* 8014CE38 00149D98 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a -/* 8014CE3C 00149D9C 98 1D 05 E8 */ stb r0, 0x5e8(r29) -/* 8014CE40 00149DA0 88 1D 04 01 */ lbz r0, 0x401(r29) -/* 8014CE44 00149DA4 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 8014CE48 00149DA8 98 1D 04 01 */ stb r0, 0x401(r29) -/* 8014CE4C 00149DAC 88 1D 04 E1 */ lbz r0, 0x4e1(r29) -/* 8014CE50 00149DB0 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b -/* 8014CE54 00149DB4 98 1D 04 E1 */ stb r0, 0x4e1(r29) -/* 8014CE58 00149DB8 88 1D 04 E1 */ lbz r0, 0x4e1(r29) -/* 8014CE5C 00149DBC 50 80 0F BC */ rlwimi r0, r4, 1, 0x1e, 0x1e -/* 8014CE60 00149DC0 98 1D 04 E1 */ stb r0, 0x4e1(r29) -/* 8014CE64 00149DC4 88 1D 04 E1 */ lbz r0, 0x4e1(r29) -/* 8014CE68 00149DC8 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a -/* 8014CE6C 00149DCC 98 1D 04 E1 */ stb r0, 0x4e1(r29) -/* 8014CE70 00149DD0 88 1D 04 E1 */ lbz r0, 0x4e1(r29) -/* 8014CE74 00149DD4 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 -/* 8014CE78 00149DD8 98 1D 04 E1 */ stb r0, 0x4e1(r29) -/* 8014CE7C 00149DDC 88 1D 04 E1 */ lbz r0, 0x4e1(r29) -/* 8014CE80 00149DE0 50 80 07 FE */ rlwimi r0, r4, 0, 0x1f, 0x1f -/* 8014CE84 00149DE4 98 1D 04 E1 */ stb r0, 0x4e1(r29) -/* 8014CE88 00149DE8 88 1D 00 F8 */ lbz r0, 0xf8(r29) -/* 8014CE8C 00149DEC 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 -/* 8014CE90 00149DF0 98 1D 00 F8 */ stb r0, 0xf8(r29) -/* 8014CE94 00149DF4 41 82 01 00 */ beq lbl_8014CF94 -/* 8014CE98 00149DF8 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) -/* 8014CE9C 00149DFC 7F E4 FB 78 */ mr r4, r31 -/* 8014CEA0 00149E00 38 63 00 04 */ addi r3, r3, 4 -/* 8014CEA4 00149E04 48 1E EE 29 */ bl GetResourceTypeById__10CResLoaderCFUi -/* 8014CEA8 00149E08 28 03 00 00 */ cmplwi r3, 0 -/* 8014CEAC 00149E0C 41 82 00 E8 */ beq lbl_8014CF94 -/* 8014CEB0 00149E10 3C 60 44 43 */ lis r3, 0x44434C4E@ha -/* 8014CEB4 00149E14 93 E1 00 30 */ stw r31, 0x30(r1) -/* 8014CEB8 00149E18 38 03 4C 4E */ addi r0, r3, 0x44434C4E@l -/* 8014CEBC 00149E1C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) -/* 8014CEC0 00149E20 90 01 00 2C */ stw r0, 0x2c(r1) -/* 8014CEC4 00149E24 38 61 00 24 */ addi r3, r1, 0x24 -/* 8014CEC8 00149E28 38 A1 00 2C */ addi r5, r1, 0x2c -/* 8014CECC 00149E2C 81 84 00 00 */ lwz r12, 0(r4) -/* 8014CED0 00149E30 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 8014CED4 00149E34 7D 89 03 A6 */ mtctr r12 -/* 8014CED8 00149E38 4E 80 04 21 */ bctrl -/* 8014CEDC 00149E3C 3B 21 00 34 */ addi r25, r1, 0x34 -/* 8014CEE0 00149E40 38 81 00 24 */ addi r4, r1, 0x24 -/* 8014CEE4 00149E44 7F 23 CB 78 */ mr r3, r25 -/* 8014CEE8 00149E48 48 1F 3F C1 */ bl __ct__6CTokenFRC6CToken -/* 8014CEEC 00149E4C 7F 23 CB 78 */ mr r3, r25 -/* 8014CEF0 00149E50 48 1F 3F 1D */ bl GetObj__6CTokenFv -/* 8014CEF4 00149E54 80 03 00 04 */ lwz r0, 4(r3) -/* 8014CEF8 00149E58 3B 21 00 40 */ addi r25, r1, 0x40 -/* 8014CEFC 00149E5C 7F 23 CB 78 */ mr r3, r25 -/* 8014CF00 00149E60 38 81 00 34 */ addi r4, r1, 0x34 -/* 8014CF04 00149E64 90 01 00 3C */ stw r0, 0x3c(r1) -/* 8014CF08 00149E68 48 1F 3F A1 */ bl __ct__6CTokenFRC6CToken -/* 8014CF0C 00149E6C 80 01 00 3C */ lwz r0, 0x3c(r1) -/* 8014CF10 00149E70 7F 23 CB 78 */ mr r3, r25 -/* 8014CF14 00149E74 90 01 00 48 */ stw r0, 0x48(r1) -/* 8014CF18 00149E78 48 1F 3E 6D */ bl Lock__6CTokenFv -/* 8014CF1C 00149E7C 38 61 00 34 */ addi r3, r1, 0x34 -/* 8014CF20 00149E80 38 80 00 00 */ li r4, 0 -/* 8014CF24 00149E84 48 1F 3F 1D */ bl __dt__6CTokenFv -/* 8014CF28 00149E88 38 61 00 24 */ addi r3, r1, 0x24 -/* 8014CF2C 00149E8C 38 80 FF FF */ li r4, -1 -/* 8014CF30 00149E90 48 1F 3F 11 */ bl __dt__6CTokenFv -/* 8014CF34 00149E94 3C 80 80 3D */ lis r4, lbl_803D0170@ha -/* 8014CF38 00149E98 38 60 00 18 */ li r3, 0x18 -/* 8014CF3C 00149E9C 38 84 01 70 */ addi r4, r4, lbl_803D0170@l -/* 8014CF40 00149EA0 38 A0 00 00 */ li r5, 0 -/* 8014CF44 00149EA4 38 84 00 22 */ addi r4, r4, 0x22 -/* 8014CF48 00149EA8 48 1C 89 25 */ bl __nw__FUlPCcPCc -/* 8014CF4C 00149EAC 7C 7E 1B 79 */ or. r30, r3, r3 -/* 8014CF50 00149EB0 41 82 00 14 */ beq lbl_8014CF64 -/* 8014CF54 00149EB4 80 81 00 48 */ lwz r4, 0x48(r1) -/* 8014CF58 00149EB8 38 BD 00 68 */ addi r5, r29, 0x68 -/* 8014CF5C 00149EBC 48 16 0A 09 */ bl "__ct__23CCollidableOBBTreeGroupFRCQ24rstl42vector<6CAABox,Q24rstl17rmemory_allocator>R14CCMaterialList" -/* 8014CF60 00149EC0 7C 7E 1B 78 */ mr r30, r3 -lbl_8014CF64: -/* 8014CF64 00149EC4 80 7D 05 E4 */ lwz r3, 0x5e4(r29) -/* 8014CF68 00149EC8 28 03 00 00 */ cmplwi r3, 0 -/* 8014CF6C 00149ECC 41 82 00 18 */ beq lbl_8014CF84 -/* 8014CF70 00149ED0 81 83 00 00 */ lwz r12, 0(r3) -/* 8014CF74 00149ED4 38 80 00 01 */ li r4, 1 -/* 8014CF78 00149ED8 81 8C 00 20 */ lwz r12, 0x20(r12) -/* 8014CF7C 00149EDC 7D 89 03 A6 */ mtctr r12 -/* 8014CF80 00149EE0 4E 80 04 21 */ bctrl -lbl_8014CF84: -/* 8014CF84 00149EE4 93 DD 05 E4 */ stw r30, 0x5e4(r29) -/* 8014CF88 00149EE8 38 61 00 40 */ addi r3, r1, 0x40 -/* 8014CF8C 00149EEC 38 80 00 00 */ li r4, 0 -/* 8014CF90 00149EF0 48 1F 3E B1 */ bl __dt__6CTokenFv -lbl_8014CF94: -/* 8014CF94 00149EF4 7F A3 EB 78 */ mr r3, r29 -/* 8014CF98 00149EF8 E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 -/* 8014CF9C 00149EFC CB E1 00 C0 */ lfd f31, 0xc0(r1) -/* 8014CFA0 00149F00 E3 C1 00 B8 */ psq_l f30, 184(r1), 0, qr0 -/* 8014CFA4 00149F04 CB C1 00 B0 */ lfd f30, 0xb0(r1) -/* 8014CFA8 00149F08 E3 A1 00 A8 */ psq_l f29, 168(r1), 0, qr0 -/* 8014CFAC 00149F0C CB A1 00 A0 */ lfd f29, 0xa0(r1) -/* 8014CFB0 00149F10 E3 81 00 98 */ psq_l f28, 152(r1), 0, qr0 -/* 8014CFB4 00149F14 CB 81 00 90 */ lfd f28, 0x90(r1) -/* 8014CFB8 00149F18 E3 61 00 88 */ psq_l f27, 136(r1), 0, qr0 -/* 8014CFBC 00149F1C CB 61 00 80 */ lfd f27, 0x80(r1) -/* 8014CFC0 00149F20 E3 41 00 78 */ psq_l f26, 120(r1), 0, qr0 -/* 8014CFC4 00149F24 CB 41 00 70 */ lfd f26, 0x70(r1) -/* 8014CFC8 00149F28 BB 21 00 54 */ lmw r25, 0x54(r1) -/* 8014CFCC 00149F2C 80 01 00 D4 */ lwz r0, 0xd4(r1) -/* 8014CFD0 00149F30 7C 08 03 A6 */ mtlr r0 -/* 8014CFD4 00149F34 38 21 00 D0 */ addi r1, r1, 0xd0 -/* 8014CFD8 00149F38 4E 80 00 20 */ blr - -.global __sinit_CPuddleToadGamma_cpp -__sinit_CPuddleToadGamma_cpp: -/* 8014CFDC 00149F3C C0 42 9C F0 */ lfs f2, lbl_805ABA10@sda21(r2) -/* 8014CFE0 00149F40 3C 60 80 57 */ lis r3, lbl_805719DC@ha -/* 8014CFE4 00149F44 C0 22 9D 18 */ lfs f1, lbl_805ABA38@sda21(r2) -/* 8014CFE8 00149F48 D4 43 19 DC */ stfsu f2, lbl_805719DC@l(r3) -/* 8014CFEC 00149F4C C0 02 9D 1C */ lfs f0, lbl_805ABA3C@sda21(r2) -/* 8014CFF0 00149F50 D0 23 00 04 */ stfs f1, 4(r3) -/* 8014CFF4 00149F54 D0 03 00 08 */ stfs f0, 8(r3) -/* 8014CFF8 00149F58 4E 80 00 20 */ blr - -.global AcceptScriptMsg__18CScriptDistanceFogF20EScriptObjectMessage9TUniqueIdR13CStateManager -AcceptScriptMsg__18CScriptDistanceFogF20EScriptObjectMessage9TUniqueIdR13CStateManager: -/* 8014CFFC 00149F5C 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8014D000 00149F60 7C 08 02 A6 */ mflr r0 -/* 8014D004 00149F64 90 01 00 44 */ stw r0, 0x44(r1) -/* 8014D008 00149F68 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 8014D00C 00149F6C 7C DF 33 78 */ mr r31, r6 -/* 8014D010 00149F70 93 C1 00 38 */ stw r30, 0x38(r1) -/* 8014D014 00149F74 7C 7E 1B 78 */ mr r30, r3 -/* 8014D018 00149F78 93 A1 00 34 */ stw r29, 0x34(r1) -/* 8014D01C 00149F7C 7C 9D 23 78 */ mr r29, r4 -/* 8014D020 00149F80 A0 05 00 00 */ lhz r0, 0(r5) -/* 8014D024 00149F84 38 A1 00 08 */ addi r5, r1, 8 -/* 8014D028 00149F88 B0 01 00 08 */ sth r0, 8(r1) -/* 8014D02C 00149F8C 4B F0 41 31 */ bl AcceptScriptMsg__7CEntityF20EScriptObjectMessage9TUniqueIdR13CStateManager -/* 8014D030 00149F90 80 DE 00 04 */ lwz r6, 4(r30) -/* 8014D034 00149F94 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) -/* 8014D038 00149F98 7C 06 00 00 */ cmpw r6, r0 -/* 8014D03C 00149F9C 41 82 01 68 */ beq lbl_8014D1A4 -/* 8014D040 00149FA0 88 1E 00 30 */ lbz r0, 0x30(r30) -/* 8014D044 00149FA4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8014D048 00149FA8 41 82 01 5C */ beq lbl_8014D1A4 -/* 8014D04C 00149FAC 2C 1D 00 23 */ cmpwi r29, 0x23 -/* 8014D050 00149FB0 41 82 00 14 */ beq lbl_8014D064 -/* 8014D054 00149FB4 40 80 01 50 */ bge lbl_8014D1A4 -/* 8014D058 00149FB8 2C 1D 00 13 */ cmpwi r29, 0x13 -/* 8014D05C 00149FBC 41 82 00 5C */ beq lbl_8014D0B8 -/* 8014D060 00149FC0 48 00 01 44 */ b lbl_8014D1A4 -lbl_8014D064: -/* 8014D064 00149FC4 88 1E 00 60 */ lbz r0, 0x60(r30) -/* 8014D068 00149FC8 28 00 00 00 */ cmplwi r0, 0 -/* 8014D06C 00149FCC 41 82 01 38 */ beq lbl_8014D1A4 -/* 8014D070 00149FD0 80 BF 08 50 */ lwz r5, 0x850(r31) -/* 8014D074 00149FD4 54 C3 18 38 */ slwi r3, r6, 3 -/* 8014D078 00149FD8 80 9E 00 34 */ lwz r4, 0x34(r30) -/* 8014D07C 00149FDC 38 03 00 04 */ addi r0, r3, 4 -/* 8014D080 00149FE0 80 65 00 20 */ lwz r3, 0x20(r5) -/* 8014D084 00149FE4 2C 04 00 00 */ cmpwi r4, 0 -/* 8014D088 00149FE8 90 C1 00 28 */ stw r6, 0x28(r1) -/* 8014D08C 00149FEC 7C 63 00 2E */ lwzx r3, r3, r0 -/* 8014D090 00149FF0 90 C1 00 18 */ stw r6, 0x18(r1) -/* 8014D094 00149FF4 80 63 01 2C */ lwz r3, 0x12c(r3) -/* 8014D098 00149FF8 80 63 10 C4 */ lwz r3, 0x10c4(r3) -/* 8014D09C 00149FFC 40 82 00 0C */ bne lbl_8014D0A8 -/* 8014D0A0 0014A000 4B F1 20 F9 */ bl DisableFog__Q29CGameArea8CAreaFogFv -/* 8014D0A4 0014A004 48 00 01 00 */ b lbl_8014D1A4 -lbl_8014D0A8: -/* 8014D0A8 0014A008 38 BE 00 38 */ addi r5, r30, 0x38 -/* 8014D0AC 0014A00C 38 DE 00 3C */ addi r6, r30, 0x3c -/* 8014D0B0 0014A010 4B F1 20 71 */ bl SetFogExplicit__Q29CGameArea8CAreaFogF11ERglFogModeRC6CColorRC9CVector2f -/* 8014D0B4 0014A014 48 00 00 F0 */ b lbl_8014D1A4 -lbl_8014D0B8: -/* 8014D0B8 0014A018 88 1E 00 61 */ lbz r0, 0x61(r30) -/* 8014D0BC 0014A01C 28 00 00 00 */ cmplwi r0, 0 -/* 8014D0C0 0014A020 41 82 00 5C */ beq lbl_8014D11C -/* 8014D0C4 0014A024 80 BF 08 50 */ lwz r5, 0x850(r31) -/* 8014D0C8 0014A028 54 C3 18 38 */ slwi r3, r6, 3 -/* 8014D0CC 0014A02C 80 9E 00 34 */ lwz r4, 0x34(r30) -/* 8014D0D0 0014A030 38 03 00 04 */ addi r0, r3, 4 -/* 8014D0D4 0014A034 80 65 00 20 */ lwz r3, 0x20(r5) -/* 8014D0D8 0014A038 2C 04 00 00 */ cmpwi r4, 0 -/* 8014D0DC 0014A03C 90 C1 00 24 */ stw r6, 0x24(r1) -/* 8014D0E0 0014A040 7C 63 00 2E */ lwzx r3, r3, r0 -/* 8014D0E4 0014A044 90 C1 00 14 */ stw r6, 0x14(r1) -/* 8014D0E8 0014A048 80 63 01 2C */ lwz r3, 0x12c(r3) -/* 8014D0EC 0014A04C 80 63 10 C4 */ lwz r3, 0x10c4(r3) -/* 8014D0F0 0014A050 41 82 00 1C */ beq lbl_8014D10C -/* 8014D0F4 0014A054 C0 3E 00 44 */ lfs f1, 0x44(r30) -/* 8014D0F8 0014A058 38 BE 00 38 */ addi r5, r30, 0x38 -/* 8014D0FC 0014A05C 38 DE 00 3C */ addi r6, r30, 0x3c -/* 8014D100 0014A060 38 FE 00 48 */ addi r7, r30, 0x48 -/* 8014D104 0014A064 4B F1 1E F5 */ bl FadeFog__Q29CGameArea8CAreaFogF11ERglFogModeRC6CColorRC9CVector2ffRC9CVector2f -/* 8014D108 0014A068 48 00 00 14 */ b lbl_8014D11C -lbl_8014D10C: -/* 8014D10C 0014A06C C0 3E 00 48 */ lfs f1, 0x48(r30) -/* 8014D110 0014A070 38 9E 00 38 */ addi r4, r30, 0x38 -/* 8014D114 0014A074 C0 5E 00 44 */ lfs f2, 0x44(r30) -/* 8014D118 0014A078 4B F1 1E 2D */ bl RollFogOut__Q29CGameArea8CAreaFogFffRC6CColor -lbl_8014D11C: -/* 8014D11C 0014A07C C0 3E 00 54 */ lfs f1, 0x54(r30) -/* 8014D120 0014A080 C0 42 9D 20 */ lfs f2, lbl_805ABA40@sda21(r2) -/* 8014D124 0014A084 C0 02 9D 24 */ lfs f0, lbl_805ABA44@sda21(r2) -/* 8014D128 0014A088 EC 41 10 28 */ fsubs f2, f1, f2 -/* 8014D12C 0014A08C FC 40 12 10 */ fabs f2, f2 -/* 8014D130 0014A090 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8014D134 0014A094 41 80 00 2C */ blt lbl_8014D160 -/* 8014D138 0014A098 80 BE 00 04 */ lwz r5, 4(r30) -/* 8014D13C 0014A09C 80 9F 08 50 */ lwz r4, 0x850(r31) -/* 8014D140 0014A0A0 54 A3 18 38 */ slwi r3, r5, 3 -/* 8014D144 0014A0A4 90 A1 00 20 */ stw r5, 0x20(r1) -/* 8014D148 0014A0A8 80 84 00 20 */ lwz r4, 0x20(r4) -/* 8014D14C 0014A0AC 38 03 00 04 */ addi r0, r3, 4 -/* 8014D150 0014A0B0 90 A1 00 10 */ stw r5, 0x10(r1) -/* 8014D154 0014A0B4 7C 64 00 2E */ lwzx r3, r4, r0 -/* 8014D158 0014A0B8 C0 5E 00 50 */ lfs f2, 0x50(r30) -/* 8014D15C 0014A0BC 4B F1 10 A1 */ bl sub_8005e1fc -lbl_8014D160: -/* 8014D160 0014A0C0 C0 3E 00 5C */ lfs f1, 0x5c(r30) -/* 8014D164 0014A0C4 C0 42 9D 20 */ lfs f2, lbl_805ABA40@sda21(r2) -/* 8014D168 0014A0C8 C0 02 9D 24 */ lfs f0, lbl_805ABA44@sda21(r2) -/* 8014D16C 0014A0CC EC 41 10 28 */ fsubs f2, f1, f2 -/* 8014D170 0014A0D0 FC 40 12 10 */ fabs f2, f2 -/* 8014D174 0014A0D4 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8014D178 0014A0D8 41 80 00 2C */ blt lbl_8014D1A4 -/* 8014D17C 0014A0DC 80 BE 00 04 */ lwz r5, 4(r30) -/* 8014D180 0014A0E0 80 9F 08 50 */ lwz r4, 0x850(r31) -/* 8014D184 0014A0E4 54 A3 18 38 */ slwi r3, r5, 3 -/* 8014D188 0014A0E8 90 A1 00 1C */ stw r5, 0x1c(r1) -/* 8014D18C 0014A0EC 80 84 00 20 */ lwz r4, 0x20(r4) -/* 8014D190 0014A0F0 38 03 00 04 */ addi r0, r3, 4 -/* 8014D194 0014A0F4 90 A1 00 0C */ stw r5, 0xc(r1) -/* 8014D198 0014A0F8 7C 64 00 2E */ lwzx r3, r4, r0 -/* 8014D19C 0014A0FC C0 5E 00 58 */ lfs f2, 0x58(r30) -/* 8014D1A0 0014A100 4B F1 10 49 */ bl sub_8005e1e8 -lbl_8014D1A4: -/* 8014D1A4 0014A104 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8014D1A8 0014A108 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 8014D1AC 0014A10C 83 C1 00 38 */ lwz r30, 0x38(r1) -/* 8014D1B0 0014A110 83 A1 00 34 */ lwz r29, 0x34(r1) -/* 8014D1B4 0014A114 7C 08 03 A6 */ mtlr r0 -/* 8014D1B8 0014A118 38 21 00 40 */ addi r1, r1, 0x40 -/* 8014D1BC 0014A11C 4E 80 00 20 */ blr - -.global Accept__18CScriptDistanceFogFR8IVisitor -Accept__18CScriptDistanceFogFR8IVisitor: -/* 8014D1C0 0014A120 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8014D1C4 0014A124 7C 08 02 A6 */ mflr r0 -/* 8014D1C8 0014A128 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014D1CC 0014A12C 7C 60 1B 78 */ mr r0, r3 -/* 8014D1D0 0014A130 7C 83 23 78 */ mr r3, r4 -/* 8014D1D4 0014A134 81 84 00 00 */ lwz r12, 0(r4) -/* 8014D1D8 0014A138 7C 04 03 78 */ mr r4, r0 -/* 8014D1DC 0014A13C 81 8C 00 7C */ lwz r12, 0x7c(r12) -/* 8014D1E0 0014A140 7D 89 03 A6 */ mtctr r12 -/* 8014D1E4 0014A144 4E 80 04 21 */ bctrl -/* 8014D1E8 0014A148 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014D1EC 0014A14C 7C 08 03 A6 */ mtlr r0 -/* 8014D1F0 0014A150 38 21 00 10 */ addi r1, r1, 0x10 -/* 8014D1F4 0014A154 4E 80 00 20 */ blr - -.global __dt__18CScriptDistanceFogFv -__dt__18CScriptDistanceFogFv: -/* 8014D1F8 0014A158 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8014D1FC 0014A15C 7C 08 02 A6 */ mflr r0 -/* 8014D200 0014A160 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014D204 0014A164 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8014D208 0014A168 7C 9F 23 78 */ mr r31, r4 -/* 8014D20C 0014A16C 93 C1 00 08 */ stw r30, 8(r1) -/* 8014D210 0014A170 7C 7E 1B 79 */ or. r30, r3, r3 -/* 8014D214 0014A174 41 82 00 28 */ beq lbl_8014D23C -/* 8014D218 0014A178 3C A0 80 3E */ lis r5, lbl_803E27B0@ha -/* 8014D21C 0014A17C 38 80 00 00 */ li r4, 0 -/* 8014D220 0014A180 38 05 27 B0 */ addi r0, r5, lbl_803E27B0@l -/* 8014D224 0014A184 90 1E 00 00 */ stw r0, 0(r30) -/* 8014D228 0014A188 4B F0 40 4D */ bl __dt__7CEntityFv -/* 8014D22C 0014A18C 7F E0 07 35 */ extsh. r0, r31 -/* 8014D230 0014A190 40 81 00 0C */ ble lbl_8014D23C -/* 8014D234 0014A194 7F C3 F3 78 */ mr r3, r30 -/* 8014D238 0014A198 48 1C 86 F9 */ bl Free__7CMemoryFPCv -lbl_8014D23C: -/* 8014D23C 0014A19C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014D240 0014A1A0 7F C3 F3 78 */ mr r3, r30 -/* 8014D244 0014A1A4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8014D248 0014A1A8 83 C1 00 08 */ lwz r30, 8(r1) -/* 8014D24C 0014A1AC 7C 08 03 A6 */ mtlr r0 -/* 8014D250 0014A1B0 38 21 00 10 */ addi r1, r1, 0x10 -/* 8014D254 0014A1B4 4E 80 00 20 */ blr - -.global "__ct__18CScriptDistanceFogF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC11ERglFogModeRC6CColorRC9CVector2ff9CVector2fbbffff" -"__ct__18CScriptDistanceFogF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC11ERglFogModeRC6CColorRC9CVector2ff9CVector2fbbffff": -/* 8014D258 0014A1B8 94 21 FF 70 */ stwu r1, -0x90(r1) -/* 8014D25C 0014A1BC 7C 08 02 A6 */ mflr r0 -/* 8014D260 0014A1C0 90 01 00 94 */ stw r0, 0x94(r1) -/* 8014D264 0014A1C4 DB E1 00 80 */ stfd f31, 0x80(r1) -/* 8014D268 0014A1C8 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 -/* 8014D26C 0014A1CC DB C1 00 70 */ stfd f30, 0x70(r1) -/* 8014D270 0014A1D0 F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0 -/* 8014D274 0014A1D4 DB A1 00 60 */ stfd f29, 0x60(r1) -/* 8014D278 0014A1D8 F3 A1 00 68 */ psq_st f29, 104(r1), 0, qr0 -/* 8014D27C 0014A1DC DB 81 00 50 */ stfd f28, 0x50(r1) -/* 8014D280 0014A1E0 F3 81 00 58 */ psq_st f28, 88(r1), 0, qr0 -/* 8014D284 0014A1E4 DB 61 00 40 */ stfd f27, 0x40(r1) -/* 8014D288 0014A1E8 F3 61 00 48 */ psq_st f27, 72(r1), 0, qr0 -/* 8014D28C 0014A1EC BF 21 00 24 */ stmw r25, 0x24(r1) -/* 8014D290 0014A1F0 A0 04 00 00 */ lhz r0, 0(r4) -/* 8014D294 0014A1F4 7C AB 2B 78 */ mr r11, r5 -/* 8014D298 0014A1F8 FF 60 08 90 */ fmr f27, f1 -/* 8014D29C 0014A1FC 88 81 00 9F */ lbz r4, 0x9f(r1) -/* 8014D2A0 0014A200 FF 80 10 90 */ fmr f28, f2 -/* 8014D2A4 0014A204 B0 01 00 08 */ sth r0, 8(r1) -/* 8014D2A8 0014A208 7C FA 3B 78 */ mr r26, r7 -/* 8014D2AC 0014A20C 7C C5 33 78 */ mr r5, r6 -/* 8014D2B0 0014A210 7C 86 23 78 */ mr r6, r4 -/* 8014D2B4 0014A214 FF A0 18 90 */ fmr f29, f3 -/* 8014D2B8 0014A218 FF C0 20 90 */ fmr f30, f4 -/* 8014D2BC 0014A21C 8B C1 00 9B */ lbz r30, 0x9b(r1) -/* 8014D2C0 0014A220 FF E0 28 90 */ fmr f31, f5 -/* 8014D2C4 0014A224 7C 79 1B 78 */ mr r25, r3 -/* 8014D2C8 0014A228 7D 1B 43 78 */ mr r27, r8 -/* 8014D2CC 0014A22C 7D 3C 4B 78 */ mr r28, r9 -/* 8014D2D0 0014A230 7D 5D 53 78 */ mr r29, r10 -/* 8014D2D4 0014A234 7D 67 5B 78 */ mr r7, r11 -/* 8014D2D8 0014A238 38 81 00 08 */ addi r4, r1, 8 -/* 8014D2DC 0014A23C 4B F0 40 49 */ bl "__ct__7CEntityF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8014D2E0 0014A240 3C 60 80 3E */ lis r3, lbl_803E27B0@ha -/* 8014D2E4 0014A244 C0 22 9D 20 */ lfs f1, lbl_805ABA40@sda21(r2) -/* 8014D2E8 0014A248 38 03 27 B0 */ addi r0, r3, lbl_803E27B0@l -/* 8014D2EC 0014A24C 38 61 00 0C */ addi r3, r1, 0xc -/* 8014D2F0 0014A250 90 19 00 00 */ stw r0, 0(r25) -/* 8014D2F4 0014A254 FC 40 08 90 */ fmr f2, f1 -/* 8014D2F8 0014A258 3B E0 00 01 */ li r31, 1 -/* 8014D2FC 0014A25C 93 59 00 34 */ stw r26, 0x34(r25) -/* 8014D300 0014A260 80 1B 00 00 */ lwz r0, 0(r27) -/* 8014D304 0014A264 90 19 00 38 */ stw r0, 0x38(r25) -/* 8014D308 0014A268 C0 1C 00 00 */ lfs f0, 0(r28) -/* 8014D30C 0014A26C D0 19 00 3C */ stfs f0, 0x3c(r25) -/* 8014D310 0014A270 C0 1C 00 04 */ lfs f0, 4(r28) -/* 8014D314 0014A274 D0 19 00 40 */ stfs f0, 0x40(r25) -/* 8014D318 0014A278 D3 79 00 44 */ stfs f27, 0x44(r25) -/* 8014D31C 0014A27C C0 1D 00 00 */ lfs f0, 0(r29) -/* 8014D320 0014A280 D0 19 00 48 */ stfs f0, 0x48(r25) -/* 8014D324 0014A284 C0 1D 00 04 */ lfs f0, 4(r29) -/* 8014D328 0014A288 D0 19 00 4C */ stfs f0, 0x4c(r25) -/* 8014D32C 0014A28C D3 99 00 50 */ stfs f28, 0x50(r25) -/* 8014D330 0014A290 D3 B9 00 54 */ stfs f29, 0x54(r25) -/* 8014D334 0014A294 D3 D9 00 58 */ stfs f30, 0x58(r25) -/* 8014D338 0014A298 D3 F9 00 5C */ stfs f31, 0x5c(r25) -/* 8014D33C 0014A29C 9B D9 00 60 */ stb r30, 0x60(r25) -/* 8014D340 0014A2A0 48 1C 6E C1 */ bl __ct__9CVector2fFff -/* 8014D344 0014A2A4 C0 22 9D 28 */ lfs f1, lbl_805ABA48@sda21(r2) -/* 8014D348 0014A2A8 7C 64 1B 78 */ mr r4, r3 -/* 8014D34C 0014A2AC 7F A3 EB 78 */ mr r3, r29 -/* 8014D350 0014A2B0 48 1C 2B D5 */ bl sub_8030ff24 -/* 8014D354 0014A2B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8014D358 0014A2B8 41 82 00 28 */ beq lbl_8014D380 -/* 8014D35C 0014A2BC C0 22 9D 20 */ lfs f1, lbl_805ABA40@sda21(r2) -/* 8014D360 0014A2C0 C8 02 9D 30 */ lfd f0, lbl_805ABA50@sda21(r2) -/* 8014D364 0014A2C4 EC 3B 08 28 */ fsubs f1, f27, f1 -/* 8014D368 0014A2C8 FC 20 0A 10 */ fabs f1, f1 -/* 8014D36C 0014A2CC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8014D370 0014A2D0 7C 00 00 26 */ mfcr r0 -/* 8014D374 0014A2D4 54 00 0F FF */ rlwinm. r0, r0, 1, 0x1f, 0x1f -/* 8014D378 0014A2D8 41 82 00 08 */ beq lbl_8014D380 -/* 8014D37C 0014A2DC 3B E0 00 00 */ li r31, 0 -lbl_8014D380: -/* 8014D380 0014A2E0 9B F9 00 61 */ stb r31, 0x61(r25) -/* 8014D384 0014A2E4 7F 23 CB 78 */ mr r3, r25 -/* 8014D388 0014A2E8 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 -/* 8014D38C 0014A2EC CB E1 00 80 */ lfd f31, 0x80(r1) -/* 8014D390 0014A2F0 E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0 -/* 8014D394 0014A2F4 CB C1 00 70 */ lfd f30, 0x70(r1) -/* 8014D398 0014A2F8 E3 A1 00 68 */ psq_l f29, 104(r1), 0, qr0 -/* 8014D39C 0014A2FC CB A1 00 60 */ lfd f29, 0x60(r1) -/* 8014D3A0 0014A300 E3 81 00 58 */ psq_l f28, 88(r1), 0, qr0 -/* 8014D3A4 0014A304 CB 81 00 50 */ lfd f28, 0x50(r1) -/* 8014D3A8 0014A308 E3 61 00 48 */ psq_l f27, 72(r1), 0, qr0 -/* 8014D3AC 0014A30C CB 61 00 40 */ lfd f27, 0x40(r1) -/* 8014D3B0 0014A310 BB 21 00 24 */ lmw r25, 0x24(r1) -/* 8014D3B4 0014A314 80 01 00 94 */ lwz r0, 0x94(r1) -/* 8014D3B8 0014A318 7C 08 03 A6 */ mtlr r0 -/* 8014D3BC 0014A31C 38 21 00 90 */ addi r1, r1, 0x90 -/* 8014D3C0 0014A320 4E 80 00 20 */ blr - -.global __dt__19CBSProjectileAttackFv -__dt__19CBSProjectileAttackFv: -/* 8014D3C4 0014A324 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8014D3C8 0014A328 7C 08 02 A6 */ mflr r0 -/* 8014D3CC 0014A32C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014D3D0 0014A330 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8014D3D4 0014A334 7C 7F 1B 79 */ or. r31, r3, r3 -/* 8014D3D8 0014A338 41 82 00 30 */ beq lbl_8014D408 -/* 8014D3DC 0014A33C 3C 60 80 3E */ lis r3, lbl_803E27D0@ha -/* 8014D3E0 0014A340 38 03 27 D0 */ addi r0, r3, lbl_803E27D0@l -/* 8014D3E4 0014A344 90 1F 00 00 */ stw r0, 0(r31) -/* 8014D3E8 0014A348 41 82 00 10 */ beq lbl_8014D3F8 -/* 8014D3EC 0014A34C 3C 60 80 3E */ lis r3, lbl_803E1318@ha -/* 8014D3F0 0014A350 38 03 13 18 */ addi r0, r3, lbl_803E1318@l -/* 8014D3F4 0014A354 90 1F 00 00 */ stw r0, 0(r31) -lbl_8014D3F8: -/* 8014D3F8 0014A358 7C 80 07 35 */ extsh. r0, r4 -/* 8014D3FC 0014A35C 40 81 00 0C */ ble lbl_8014D408 -/* 8014D400 0014A360 7F E3 FB 78 */ mr r3, r31 -/* 8014D404 0014A364 48 1C 85 2D */ bl Free__7CMemoryFPCv -lbl_8014D408: -/* 8014D408 0014A368 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014D40C 0014A36C 7F E3 FB 78 */ mr r3, r31 -/* 8014D410 0014A370 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8014D414 0014A374 7C 08 03 A6 */ mtlr r0 -/* 8014D418 0014A378 38 21 00 10 */ addi r1, r1, 0x10 -/* 8014D41C 0014A37C 4E 80 00 20 */ blr - -.global CanShoot__19CBSProjectileAttackCFv -CanShoot__19CBSProjectileAttackCFv: -/* 8014D420 0014A380 38 60 00 01 */ li r3, 1 -/* 8014D424 0014A384 4E 80 00 20 */ blr - -.global GetBodyStateTransition__19CBSProjectileAttackFfR15CBodyController -GetBodyStateTransition__19CBSProjectileAttackFfR15CBodyController: -/* 8014D428 0014A388 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8014D42C 0014A38C 7C 08 02 A6 */ mflr r0 -/* 8014D430 0014A390 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014D434 0014A394 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8014D438 0014A398 93 C1 00 08 */ stw r30, 8(r1) -/* 8014D43C 0014A39C 7C 9E 23 78 */ mr r30, r4 -/* 8014D440 0014A3A0 3B FE 00 04 */ addi r31, r30, 4 -/* 8014D444 0014A3A4 38 80 00 0F */ li r4, 0xf -/* 8014D448 0014A3A8 7F E3 FB 78 */ mr r3, r31 -/* 8014D44C 0014A3AC 4B FE 40 05 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8014D450 0014A3B0 28 03 00 00 */ cmplwi r3, 0 -/* 8014D454 0014A3B4 41 82 00 0C */ beq lbl_8014D460 -/* 8014D458 0014A3B8 38 60 00 0E */ li r3, 0xe -/* 8014D45C 0014A3BC 48 00 00 A0 */ b lbl_8014D4FC -lbl_8014D460: -/* 8014D460 0014A3C0 7F E3 FB 78 */ mr r3, r31 -/* 8014D464 0014A3C4 38 80 00 03 */ li r4, 3 -/* 8014D468 0014A3C8 4B FE 3F E9 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8014D46C 0014A3CC 28 03 00 00 */ cmplwi r3, 0 -/* 8014D470 0014A3D0 41 82 00 0C */ beq lbl_8014D47C -/* 8014D474 0014A3D4 38 60 00 00 */ li r3, 0 -/* 8014D478 0014A3D8 48 00 00 84 */ b lbl_8014D4FC -lbl_8014D47C: -/* 8014D47C 0014A3DC 7F E3 FB 78 */ mr r3, r31 -/* 8014D480 0014A3E0 38 80 00 09 */ li r4, 9 -/* 8014D484 0014A3E4 4B FE 3F CD */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8014D488 0014A3E8 28 03 00 00 */ cmplwi r3, 0 -/* 8014D48C 0014A3EC 41 82 00 0C */ beq lbl_8014D498 -/* 8014D490 0014A3F0 38 60 00 0A */ li r3, 0xa -/* 8014D494 0014A3F4 48 00 00 68 */ b lbl_8014D4FC -lbl_8014D498: -/* 8014D498 0014A3F8 7F E3 FB 78 */ mr r3, r31 -/* 8014D49C 0014A3FC 38 80 00 04 */ li r4, 4 -/* 8014D4A0 0014A400 4B FE 3F B1 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8014D4A4 0014A404 28 03 00 00 */ cmplwi r3, 0 -/* 8014D4A8 0014A408 41 82 00 0C */ beq lbl_8014D4B4 -/* 8014D4AC 0014A40C 38 60 00 06 */ li r3, 6 -/* 8014D4B0 0014A410 48 00 00 4C */ b lbl_8014D4FC -lbl_8014D4B4: -/* 8014D4B4 0014A414 7F E3 FB 78 */ mr r3, r31 -/* 8014D4B8 0014A418 38 80 00 16 */ li r4, 0x16 -/* 8014D4BC 0014A41C 4B FE 3F 95 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8014D4C0 0014A420 28 03 00 00 */ cmplwi r3, 0 -/* 8014D4C4 0014A424 41 82 00 0C */ beq lbl_8014D4D0 -/* 8014D4C8 0014A428 38 60 00 05 */ li r3, 5 -/* 8014D4CC 0014A42C 48 00 00 30 */ b lbl_8014D4FC -lbl_8014D4D0: -/* 8014D4D0 0014A430 88 1E 03 00 */ lbz r0, 0x300(r30) -/* 8014D4D4 0014A434 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8014D4D8 0014A438 40 82 00 18 */ bne lbl_8014D4F0 -/* 8014D4DC 0014A43C 7F E3 FB 78 */ mr r3, r31 -/* 8014D4E0 0014A440 38 80 00 0C */ li r4, 0xc -/* 8014D4E4 0014A444 4B FE 3F 6D */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8014D4E8 0014A448 28 03 00 00 */ cmplwi r3, 0 -/* 8014D4EC 0014A44C 41 82 00 0C */ beq lbl_8014D4F8 -lbl_8014D4F0: -/* 8014D4F0 0014A450 38 60 00 05 */ li r3, 5 -/* 8014D4F4 0014A454 48 00 00 08 */ b lbl_8014D4FC -lbl_8014D4F8: -/* 8014D4F8 0014A458 38 60 FF FF */ li r3, -1 -lbl_8014D4FC: -/* 8014D4FC 0014A45C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014D500 0014A460 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8014D504 0014A464 83 C1 00 08 */ lwz r30, 8(r1) -/* 8014D508 0014A468 7C 08 03 A6 */ mtlr r0 -/* 8014D50C 0014A46C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8014D510 0014A470 4E 80 00 20 */ blr - -.global Shutdown__19CBSProjectileAttackFR15CBodyController -Shutdown__19CBSProjectileAttackFR15CBodyController: -/* 8014D514 0014A474 4E 80 00 20 */ blr - -.global UpdateBody__19CBSProjectileAttackFfR15CBodyControllerR13CStateManager -UpdateBody__19CBSProjectileAttackFfR15CBodyControllerR13CStateManager: -/* 8014D518 0014A478 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8014D51C 0014A47C 7C 08 02 A6 */ mflr r0 -/* 8014D520 0014A480 90 01 00 24 */ stw r0, 0x24(r1) -/* 8014D524 0014A484 DB E1 00 10 */ stfd f31, 0x10(r1) -/* 8014D528 0014A488 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 -/* 8014D52C 0014A48C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8014D530 0014A490 93 C1 00 08 */ stw r30, 8(r1) -/* 8014D534 0014A494 FF E0 08 90 */ fmr f31, f1 -/* 8014D538 0014A498 7C 9E 23 78 */ mr r30, r4 -/* 8014D53C 0014A49C 4B FF FE ED */ bl GetBodyStateTransition__19CBSProjectileAttackFfR15CBodyController -/* 8014D540 0014A4A0 7C 7F 1B 78 */ mr r31, r3 -/* 8014D544 0014A4A4 2C 1F FF FF */ cmpwi r31, -1 -/* 8014D548 0014A4A8 40 82 00 50 */ bne lbl_8014D598 -/* 8014D54C 0014A4AC 38 7E 00 1C */ addi r3, r30, 0x1c -/* 8014D550 0014A4B0 C0 22 9D 38 */ lfs f1, lbl_805ABA58@sda21(r2) -/* 8014D554 0014A4B4 C0 1E 00 1C */ lfs f0, 0x1c(r30) -/* 8014D558 0014A4B8 38 00 00 00 */ li r0, 0 -/* 8014D55C 0014A4BC FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 8014D560 0014A4C0 40 82 00 1C */ bne lbl_8014D57C -/* 8014D564 0014A4C4 C0 03 00 04 */ lfs f0, 4(r3) -/* 8014D568 0014A4C8 FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 8014D56C 0014A4CC 40 82 00 10 */ bne lbl_8014D57C -/* 8014D570 0014A4D0 C0 03 00 08 */ lfs f0, 8(r3) -/* 8014D574 0014A4D4 FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 8014D578 0014A4D8 41 82 00 08 */ beq lbl_8014D580 -lbl_8014D57C: -/* 8014D57C 0014A4DC 38 00 00 01 */ li r0, 1 -lbl_8014D580: -/* 8014D580 0014A4E0 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 8014D584 0014A4E4 41 82 00 14 */ beq lbl_8014D598 -/* 8014D588 0014A4E8 FC 20 F8 90 */ fmr f1, f31 -/* 8014D58C 0014A4EC 7F C3 F3 78 */ mr r3, r30 -/* 8014D590 0014A4F0 38 9E 00 1C */ addi r4, r30, 0x1c -/* 8014D594 0014A4F4 4B FE D1 11 */ bl FaceDirection__15CBodyControllerFRC9CVector3ff -lbl_8014D598: -/* 8014D598 0014A4F8 7F E3 FB 78 */ mr r3, r31 -/* 8014D59C 0014A4FC E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 -/* 8014D5A0 0014A500 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8014D5A4 0014A504 CB E1 00 10 */ lfd f31, 0x10(r1) -/* 8014D5A8 0014A508 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8014D5AC 0014A50C 83 C1 00 08 */ lwz r30, 8(r1) -/* 8014D5B0 0014A510 7C 08 03 A6 */ mtlr r0 -/* 8014D5B4 0014A514 38 21 00 20 */ addi r1, r1, 0x20 -/* 8014D5B8 0014A518 4E 80 00 20 */ blr - -.global Start__19CBSProjectileAttackFR15CBodyControllerR13CStateManager -Start__19CBSProjectileAttackFR15CBodyControllerR13CStateManager: -/* 8014D5BC 0014A51C 94 21 FE 80 */ stwu r1, -0x180(r1) -/* 8014D5C0 0014A520 7C 08 02 A6 */ mflr r0 -/* 8014D5C4 0014A524 90 01 01 84 */ stw r0, 0x184(r1) -/* 8014D5C8 0014A528 DB E1 01 70 */ stfd f31, 0x170(r1) -/* 8014D5CC 0014A52C F3 E1 01 78 */ psq_st f31, 376(r1), 0, qr0 -/* 8014D5D0 0014A530 DB C1 01 60 */ stfd f30, 0x160(r1) -/* 8014D5D4 0014A534 F3 C1 01 68 */ psq_st f30, 360(r1), 0, qr0 -/* 8014D5D8 0014A538 BF 41 01 48 */ stmw r26, 0x148(r1) -/* 8014D5DC 0014A53C 7C 9F 23 78 */ mr r31, r4 -/* 8014D5E0 0014A540 7C BA 2B 78 */ mr r26, r5 -/* 8014D5E4 0014A544 38 7F 00 04 */ addi r3, r31, 4 -/* 8014D5E8 0014A548 38 80 00 06 */ li r4, 6 -/* 8014D5EC 0014A54C 4B FE 3E 65 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8014D5F0 0014A550 80 DF 00 00 */ lwz r6, 0(r31) -/* 8014D5F4 0014A554 7C 7E 1B 78 */ mr r30, r3 -/* 8014D5F8 0014A558 C0 23 00 10 */ lfs f1, 0x10(r3) -/* 8014D5FC 0014A55C 38 61 00 80 */ addi r3, r1, 0x80 -/* 8014D600 0014A560 C0 06 00 50 */ lfs f0, 0x50(r6) -/* 8014D604 0014A564 38 86 00 34 */ addi r4, r6, 0x34 -/* 8014D608 0014A568 C0 7E 00 14 */ lfs f3, 0x14(r30) -/* 8014D60C 0014A56C 38 A1 00 8C */ addi r5, r1, 0x8c -/* 8014D610 0014A570 C0 46 00 60 */ lfs f2, 0x60(r6) -/* 8014D614 0014A574 EC 81 00 28 */ fsubs f4, f1, f0 -/* 8014D618 0014A578 C0 3E 00 0C */ lfs f1, 0xc(r30) -/* 8014D61C 0014A57C C0 06 00 40 */ lfs f0, 0x40(r6) -/* 8014D620 0014A580 EC 43 10 28 */ fsubs f2, f3, f2 -/* 8014D624 0014A584 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8014D628 0014A588 D0 81 00 90 */ stfs f4, 0x90(r1) -/* 8014D62C 0014A58C D0 41 00 94 */ stfs f2, 0x94(r1) -/* 8014D630 0014A590 D0 01 00 8C */ stfs f0, 0x8c(r1) -/* 8014D634 0014A594 48 1C 53 F1 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f -/* 8014D638 0014A598 C0 21 00 84 */ lfs f1, 0x84(r1) -/* 8014D63C 0014A59C C0 41 00 80 */ lfs f2, 0x80(r1) -/* 8014D640 0014A5A0 48 24 76 2D */ bl atan2 -/* 8014D644 0014A5A4 FC 80 08 18 */ frsp f4, f1 -/* 8014D648 0014A5A8 C0 02 9D 3C */ lfs f0, lbl_805ABA5C@sda21(r2) -/* 8014D64C 0014A5AC 3C 00 43 30 */ lis r0, 0x4330 -/* 8014D650 0014A5B0 C8 62 9D 58 */ lfd f3, lbl_805ABA78@sda21(r2) -/* 8014D654 0014A5B4 90 01 01 38 */ stw r0, 0x138(r1) -/* 8014D658 0014A5B8 EC 44 00 32 */ fmuls f2, f4, f0 -/* 8014D65C 0014A5BC C0 22 9D 40 */ lfs f1, lbl_805ABA60@sda21(r2) -/* 8014D660 0014A5C0 C0 02 9D 38 */ lfs f0, lbl_805ABA58@sda21(r2) -/* 8014D664 0014A5C4 FC 40 10 1E */ fctiwz f2, f2 -/* 8014D668 0014A5C8 D8 41 01 30 */ stfd f2, 0x130(r1) -/* 8014D66C 0014A5CC 80 01 01 34 */ lwz r0, 0x134(r1) -/* 8014D670 0014A5D0 6C 00 80 00 */ xoris r0, r0, 0x8000 -/* 8014D674 0014A5D4 90 01 01 3C */ stw r0, 0x13c(r1) -/* 8014D678 0014A5D8 C8 41 01 38 */ lfd f2, 0x138(r1) -/* 8014D67C 0014A5DC EC 42 18 28 */ fsubs f2, f2, f3 -/* 8014D680 0014A5E0 EC 42 20 7C */ fnmsubs f2, f2, f1, f4 -/* 8014D684 0014A5E4 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8014D688 0014A5E8 40 80 00 08 */ bge lbl_8014D690 -/* 8014D68C 0014A5EC EC 42 08 2A */ fadds f2, f2, f1 -lbl_8014D690: -/* 8014D690 0014A5F0 C0 02 9D 44 */ lfs f0, lbl_805ABA64@sda21(r2) -/* 8014D694 0014A5F4 7F E3 FB 78 */ mr r3, r31 -/* 8014D698 0014A5F8 EF E0 00 B2 */ fmuls f31, f0, f2 -/* 8014D69C 0014A5FC 4B FE CD B9 */ bl GetPASDatabase__15CBodyControllerCFv -/* 8014D6A0 0014A600 83 BF 02 EC */ lwz r29, 0x2ec(r31) -/* 8014D6A4 0014A604 7C 7B 1B 78 */ mr r27, r3 -/* 8014D6A8 0014A608 83 9E 00 08 */ lwz r28, 8(r30) -/* 8014D6AC 0014A60C 38 61 00 30 */ addi r3, r1, 0x30 -/* 8014D6B0 0014A610 48 19 59 CD */ bl NoParameter__12CPASAnimParmFv -/* 8014D6B4 0014A614 38 61 00 38 */ addi r3, r1, 0x38 -/* 8014D6B8 0014A618 48 19 59 C5 */ bl NoParameter__12CPASAnimParmFv -/* 8014D6BC 0014A61C 38 61 00 40 */ addi r3, r1, 0x40 -/* 8014D6C0 0014A620 48 19 59 BD */ bl NoParameter__12CPASAnimParmFv -/* 8014D6C4 0014A624 38 61 00 48 */ addi r3, r1, 0x48 -/* 8014D6C8 0014A628 48 19 59 B5 */ bl NoParameter__12CPASAnimParmFv -/* 8014D6CC 0014A62C 38 61 00 50 */ addi r3, r1, 0x50 -/* 8014D6D0 0014A630 48 19 59 AD */ bl NoParameter__12CPASAnimParmFv -/* 8014D6D4 0014A634 7F A4 EB 78 */ mr r4, r29 -/* 8014D6D8 0014A638 38 61 00 58 */ addi r3, r1, 0x58 -/* 8014D6DC 0014A63C 48 19 58 A9 */ bl FromEnum__12CPASAnimParmFi -/* 8014D6E0 0014A640 FC 20 F8 90 */ fmr f1, f31 -/* 8014D6E4 0014A644 38 61 00 60 */ addi r3, r1, 0x60 -/* 8014D6E8 0014A648 48 19 59 01 */ bl FromReal32__12CPASAnimParmFf -/* 8014D6EC 0014A64C 7F 84 E3 78 */ mr r4, r28 -/* 8014D6F0 0014A650 38 61 00 68 */ addi r3, r1, 0x68 -/* 8014D6F4 0014A654 48 19 58 91 */ bl FromEnum__12CPASAnimParmFi -/* 8014D6F8 0014A658 38 61 00 38 */ addi r3, r1, 0x38 -/* 8014D6FC 0014A65C 38 01 00 30 */ addi r0, r1, 0x30 -/* 8014D700 0014A660 90 61 00 08 */ stw r3, 8(r1) -/* 8014D704 0014A664 38 61 00 E8 */ addi r3, r1, 0xe8 -/* 8014D708 0014A668 38 A1 00 68 */ addi r5, r1, 0x68 -/* 8014D70C 0014A66C 38 C1 00 60 */ addi r6, r1, 0x60 -/* 8014D710 0014A670 90 01 00 0C */ stw r0, 0xc(r1) -/* 8014D714 0014A674 38 E1 00 58 */ addi r7, r1, 0x58 -/* 8014D718 0014A678 39 01 00 50 */ addi r8, r1, 0x50 -/* 8014D71C 0014A67C 39 21 00 48 */ addi r9, r1, 0x48 -/* 8014D720 0014A680 39 41 00 40 */ addi r10, r1, 0x40 -/* 8014D724 0014A684 38 80 00 12 */ li r4, 0x12 -/* 8014D728 0014A688 4B F2 FB 9D */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm -/* 8014D72C 0014A68C 80 DA 09 00 */ lwz r6, 0x900(r26) -/* 8014D730 0014A690 7F 64 DB 78 */ mr r4, r27 -/* 8014D734 0014A694 38 61 00 28 */ addi r3, r1, 0x28 -/* 8014D738 0014A698 38 A1 00 E8 */ addi r5, r1, 0xe8 -/* 8014D73C 0014A69C 38 E0 FF FF */ li r7, -1 -/* 8014D740 0014A6A0 48 19 79 21 */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i -/* 8014D744 0014A6A4 88 1E 00 18 */ lbz r0, 0x18(r30) -/* 8014D748 0014A6A8 83 81 00 2C */ lwz r28, 0x2c(r1) -/* 8014D74C 0014A6AC 28 00 00 00 */ cmplwi r0, 0 -/* 8014D750 0014A6B0 41 82 01 10 */ beq lbl_8014D860 -/* 8014D754 0014A6B4 80 DA 09 00 */ lwz r6, 0x900(r26) -/* 8014D758 0014A6B8 7F 64 DB 78 */ mr r4, r27 -/* 8014D75C 0014A6BC 7F 87 E3 78 */ mr r7, r28 -/* 8014D760 0014A6C0 38 61 00 20 */ addi r3, r1, 0x20 -/* 8014D764 0014A6C4 38 A1 00 E8 */ addi r5, r1, 0xe8 -/* 8014D768 0014A6C8 48 19 78 F9 */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i -/* 8014D76C 0014A6CC 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 8014D770 0014A6D0 7F 63 DB 78 */ mr r3, r27 -/* 8014D774 0014A6D4 38 80 00 12 */ li r4, 0x12 -/* 8014D778 0014A6D8 48 19 77 4D */ bl GetAnimState__12CPASDatabaseCFi -/* 8014D77C 0014A6DC 7C 7B 1B 78 */ mr r27, r3 -/* 8014D780 0014A6E0 7F 85 E3 78 */ mr r5, r28 -/* 8014D784 0014A6E4 38 61 00 18 */ addi r3, r1, 0x18 -/* 8014D788 0014A6E8 38 C0 00 01 */ li r6, 1 -/* 8014D78C 0014A6EC 7F 64 DB 78 */ mr r4, r27 -/* 8014D790 0014A6F0 48 19 68 65 */ bl GetAnimParmData__13CPASAnimStateCFiUi -/* 8014D794 0014A6F4 80 61 00 18 */ lwz r3, 0x18(r1) -/* 8014D798 0014A6F8 7F 64 DB 78 */ mr r4, r27 -/* 8014D79C 0014A6FC 80 01 00 1C */ lwz r0, 0x1c(r1) -/* 8014D7A0 0014A700 7F A5 EB 78 */ mr r5, r29 -/* 8014D7A4 0014A704 90 61 00 78 */ stw r3, 0x78(r1) -/* 8014D7A8 0014A708 38 61 00 10 */ addi r3, r1, 0x10 -/* 8014D7AC 0014A70C 38 C0 00 01 */ li r6, 1 -/* 8014D7B0 0014A710 90 01 00 7C */ stw r0, 0x7c(r1) -/* 8014D7B4 0014A714 48 19 68 41 */ bl GetAnimParmData__13CPASAnimStateCFiUi -/* 8014D7B8 0014A718 80 81 00 10 */ lwz r4, 0x10(r1) -/* 8014D7BC 0014A71C 38 61 00 78 */ addi r3, r1, 0x78 -/* 8014D7C0 0014A720 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014D7C4 0014A724 90 81 00 70 */ stw r4, 0x70(r1) -/* 8014D7C8 0014A728 90 01 00 74 */ stw r0, 0x74(r1) -/* 8014D7CC 0014A72C 48 19 57 A1 */ bl GetReal32Value__12CPASAnimParmCFv -/* 8014D7D0 0014A730 FF C0 08 90 */ fmr f30, f1 -/* 8014D7D4 0014A734 38 61 00 70 */ addi r3, r1, 0x70 -/* 8014D7D8 0014A738 48 19 57 95 */ bl GetReal32Value__12CPASAnimParmCFv -/* 8014D7DC 0014A73C EC 1E 08 28 */ fsubs f0, f30, f1 -/* 8014D7E0 0014A740 C0 42 9D 48 */ lfs f2, lbl_805ABA68@sda21(r2) -/* 8014D7E4 0014A744 FC 00 10 40 */ fcmpo cr0, f0, f2 -/* 8014D7E8 0014A748 40 81 00 10 */ ble lbl_8014D7F8 -/* 8014D7EC 0014A74C C0 02 9D 4C */ lfs f0, lbl_805ABA6C@sda21(r2) -/* 8014D7F0 0014A750 EC 20 08 2A */ fadds f1, f0, f1 -/* 8014D7F4 0014A754 48 00 00 18 */ b lbl_8014D80C -lbl_8014D7F8: -/* 8014D7F8 0014A758 EC 01 F0 28 */ fsubs f0, f1, f30 -/* 8014D7FC 0014A75C FC 00 10 40 */ fcmpo cr0, f0, f2 -/* 8014D800 0014A760 40 81 00 0C */ ble lbl_8014D80C -/* 8014D804 0014A764 C0 02 9D 4C */ lfs f0, lbl_805ABA6C@sda21(r2) -/* 8014D808 0014A768 EF C0 F0 2A */ fadds f30, f0, f30 -lbl_8014D80C: -/* 8014D80C 0014A76C EC 5E F8 28 */ fsubs f2, f30, f31 -/* 8014D810 0014A770 38 00 00 00 */ li r0, 0 -/* 8014D814 0014A774 EC 1E 08 28 */ fsubs f0, f30, f1 -/* 8014D818 0014A778 38 C0 00 01 */ li r6, 1 -/* 8014D81C 0014A77C 93 81 00 C0 */ stw r28, 0xc0(r1) -/* 8014D820 0014A780 7F E3 FB 78 */ mr r3, r31 -/* 8014D824 0014A784 EC 02 00 24 */ fdivs f0, f2, f0 -/* 8014D828 0014A788 93 A1 00 C4 */ stw r29, 0xc4(r1) -/* 8014D82C 0014A78C 38 81 00 C0 */ addi r4, r1, 0xc0 -/* 8014D830 0014A790 38 A0 00 00 */ li r5, 0 -/* 8014D834 0014A794 98 C1 00 CC */ stb r6, 0xcc(r1) -/* 8014D838 0014A798 38 C0 00 00 */ li r6, 0 -/* 8014D83C 0014A79C D0 01 00 C8 */ stfs f0, 0xc8(r1) -/* 8014D840 0014A7A0 90 01 00 D0 */ stw r0, 0xd0(r1) -/* 8014D844 0014A7A4 90 01 00 D4 */ stw r0, 0xd4(r1) -/* 8014D848 0014A7A8 98 01 00 D8 */ stb r0, 0xd8(r1) -/* 8014D84C 0014A7AC 90 01 00 DC */ stw r0, 0xdc(r1) -/* 8014D850 0014A7B0 90 01 00 E0 */ stw r0, 0xe0(r1) -/* 8014D854 0014A7B4 90 01 00 E4 */ stw r0, 0xe4(r1) -/* 8014D858 0014A7B8 4B FE D0 C5 */ bl SetCurrentAnimation__15CBodyControllerFRC18CAnimPlaybackParmsbb -/* 8014D85C 0014A7BC 48 00 00 50 */ b lbl_8014D8AC -lbl_8014D860: -/* 8014D860 0014A7C0 C0 02 9D 50 */ lfs f0, lbl_805ABA70@sda21(r2) -/* 8014D864 0014A7C4 38 00 00 00 */ li r0, 0 -/* 8014D868 0014A7C8 38 C0 FF FF */ li r6, -1 -/* 8014D86C 0014A7CC 38 E0 00 01 */ li r7, 1 -/* 8014D870 0014A7D0 93 81 00 98 */ stw r28, 0x98(r1) -/* 8014D874 0014A7D4 7F E3 FB 78 */ mr r3, r31 -/* 8014D878 0014A7D8 38 81 00 98 */ addi r4, r1, 0x98 -/* 8014D87C 0014A7DC 38 A0 00 00 */ li r5, 0 -/* 8014D880 0014A7E0 90 C1 00 9C */ stw r6, 0x9c(r1) -/* 8014D884 0014A7E4 38 C0 00 00 */ li r6, 0 -/* 8014D888 0014A7E8 D0 01 00 A0 */ stfs f0, 0xa0(r1) -/* 8014D88C 0014A7EC 98 E1 00 A4 */ stb r7, 0xa4(r1) -/* 8014D890 0014A7F0 90 01 00 A8 */ stw r0, 0xa8(r1) -/* 8014D894 0014A7F4 90 01 00 AC */ stw r0, 0xac(r1) -/* 8014D898 0014A7F8 98 01 00 B0 */ stb r0, 0xb0(r1) -/* 8014D89C 0014A7FC 90 01 00 B4 */ stw r0, 0xb4(r1) -/* 8014D8A0 0014A800 90 01 00 B8 */ stw r0, 0xb8(r1) -/* 8014D8A4 0014A804 90 01 00 BC */ stw r0, 0xbc(r1) -/* 8014D8A8 0014A808 4B FE D0 75 */ bl SetCurrentAnimation__15CBodyControllerFRC18CAnimPlaybackParmsbb -lbl_8014D8AC: -/* 8014D8AC 0014A80C 34 A1 00 EC */ addic. r5, r1, 0xec -/* 8014D8B0 0014A810 41 82 00 58 */ beq lbl_8014D908 -/* 8014D8B4 0014A814 80 C5 00 00 */ lwz r6, 0(r5) -/* 8014D8B8 0014A818 38 60 00 00 */ li r3, 0 -/* 8014D8BC 0014A81C 2C 06 00 00 */ cmpwi r6, 0 -/* 8014D8C0 0014A820 40 81 00 40 */ ble lbl_8014D900 -/* 8014D8C4 0014A824 2C 06 00 08 */ cmpwi r6, 8 -/* 8014D8C8 0014A828 38 86 FF F8 */ addi r4, r6, -8 -/* 8014D8CC 0014A82C 40 81 00 20 */ ble lbl_8014D8EC -/* 8014D8D0 0014A830 38 04 00 07 */ addi r0, r4, 7 -/* 8014D8D4 0014A834 54 00 E8 FE */ srwi r0, r0, 3 -/* 8014D8D8 0014A838 7C 09 03 A6 */ mtctr r0 -/* 8014D8DC 0014A83C 2C 04 00 00 */ cmpwi r4, 0 -/* 8014D8E0 0014A840 40 81 00 0C */ ble lbl_8014D8EC -lbl_8014D8E4: -/* 8014D8E4 0014A844 38 63 00 08 */ addi r3, r3, 8 -/* 8014D8E8 0014A848 42 00 FF FC */ bdnz lbl_8014D8E4 -lbl_8014D8EC: -/* 8014D8EC 0014A84C 7C 03 30 50 */ subf r0, r3, r6 -/* 8014D8F0 0014A850 7C 09 03 A6 */ mtctr r0 -/* 8014D8F4 0014A854 7C 03 30 00 */ cmpw r3, r6 -/* 8014D8F8 0014A858 40 80 00 08 */ bge lbl_8014D900 -lbl_8014D8FC: -/* 8014D8FC 0014A85C 42 00 00 00 */ bdnz lbl_8014D8FC -lbl_8014D900: -/* 8014D900 0014A860 38 00 00 00 */ li r0, 0 -/* 8014D904 0014A864 90 05 00 00 */ stw r0, 0(r5) -lbl_8014D908: -/* 8014D908 0014A868 E3 E1 01 78 */ psq_l f31, 376(r1), 0, qr0 -/* 8014D90C 0014A86C CB E1 01 70 */ lfd f31, 0x170(r1) -/* 8014D910 0014A870 E3 C1 01 68 */ psq_l f30, 360(r1), 0, qr0 -/* 8014D914 0014A874 CB C1 01 60 */ lfd f30, 0x160(r1) -/* 8014D918 0014A878 BB 41 01 48 */ lmw r26, 0x148(r1) -/* 8014D91C 0014A87C 80 01 01 84 */ lwz r0, 0x184(r1) -/* 8014D920 0014A880 7C 08 03 A6 */ mtlr r0 -/* 8014D924 0014A884 38 21 01 80 */ addi r1, r1, 0x180 -/* 8014D928 0014A888 4E 80 00 20 */ blr - -.global __ct__19CBSProjectileAttackFv -__ct__19CBSProjectileAttackFv: -/* 8014D92C 0014A88C 3C A0 80 3E */ lis r5, lbl_803E1318@ha -/* 8014D930 0014A890 3C 80 80 3E */ lis r4, lbl_803E27D0@ha -/* 8014D934 0014A894 38 A5 13 18 */ addi r5, r5, lbl_803E1318@l -/* 8014D938 0014A898 90 A3 00 00 */ stw r5, 0(r3) -/* 8014D93C 0014A89C 38 04 27 D0 */ addi r0, r4, lbl_803E27D0@l -/* 8014D940 0014A8A0 90 03 00 00 */ stw r0, 0(r3) -/* 8014D944 0014A8A4 4E 80 00 20 */ blr - -.global AcceptScriptMsg__10CPowerBombF20EScriptObjectMessage9TUniqueIdR13CStateManager -AcceptScriptMsg__10CPowerBombF20EScriptObjectMessage9TUniqueIdR13CStateManager: -/* 8014D948 0014A8A8 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 8014D94C 0014A8AC 7C 08 02 A6 */ mflr r0 -/* 8014D950 0014A8B0 90 01 00 54 */ stw r0, 0x54(r1) -/* 8014D954 0014A8B4 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 8014D958 0014A8B8 7C DF 33 78 */ mr r31, r6 -/* 8014D95C 0014A8BC 93 C1 00 48 */ stw r30, 0x48(r1) -/* 8014D960 0014A8C0 7C BE 2B 78 */ mr r30, r5 -/* 8014D964 0014A8C4 93 A1 00 44 */ stw r29, 0x44(r1) -/* 8014D968 0014A8C8 7C 9D 23 78 */ mr r29, r4 -/* 8014D96C 0014A8CC 2C 1D 00 22 */ cmpwi r29, 0x22 -/* 8014D970 0014A8D0 93 81 00 40 */ stw r28, 0x40(r1) -/* 8014D974 0014A8D4 7C 7C 1B 78 */ mr r28, r3 -/* 8014D978 0014A8D8 41 82 00 F4 */ beq lbl_8014DA6C -/* 8014D97C 0014A8DC 40 80 01 2C */ bge lbl_8014DAA8 -/* 8014D980 0014A8E0 2C 1D 00 21 */ cmpwi r29, 0x21 -/* 8014D984 0014A8E4 40 80 00 08 */ bge lbl_8014D98C -/* 8014D988 0014A8E8 48 00 01 20 */ b lbl_8014DAA8 -lbl_8014D98C: -/* 8014D98C 0014A8EC A0 1C 00 EC */ lhz r0, 0xec(r28) -/* 8014D990 0014A8F0 7F E3 FB 78 */ mr r3, r31 -/* 8014D994 0014A8F4 80 BC 00 F0 */ lwz r5, 0xf0(r28) -/* 8014D998 0014A8F8 38 81 00 18 */ addi r4, r1, 0x18 -/* 8014D99C 0014A8FC B0 01 00 14 */ sth r0, 0x14(r1) -/* 8014D9A0 0014A900 B0 01 00 18 */ sth r0, 0x18(r1) -/* 8014D9A4 0014A904 4B EF 73 65 */ bl AddWeaponId__13CStateManagerF9TUniqueId11EWeaponType -/* 8014D9A8 0014A908 C0 02 9D 64 */ lfs f0, lbl_805ABA84@sda21(r2) -/* 8014D9AC 0014A90C D0 1C 01 20 */ stfs f0, 0x120(r28) -/* 8014D9B0 0014A910 80 7F 08 B8 */ lwz r3, 0x8b8(r31) -/* 8014D9B4 0014A914 80 63 00 00 */ lwz r3, 0(r3) -/* 8014D9B8 0014A918 88 03 00 00 */ lbz r0, 0(r3) -/* 8014D9BC 0014A91C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8014D9C0 0014A920 41 82 00 70 */ beq lbl_8014DA30 -/* 8014D9C4 0014A924 C0 5C 00 60 */ lfs f2, 0x60(r28) -/* 8014D9C8 0014A928 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8014D9CC 0014A92C C0 3C 00 50 */ lfs f1, 0x50(r28) -/* 8014D9D0 0014A930 38 C3 66 A0 */ addi r6, r3, skZero3f@l -/* 8014D9D4 0014A934 C0 1C 00 40 */ lfs f0, 0x40(r28) -/* 8014D9D8 0014A938 38 61 00 24 */ addi r3, r1, 0x24 -/* 8014D9DC 0014A93C A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) -/* 8014D9E0 0014A940 38 A1 00 34 */ addi r5, r1, 0x34 -/* 8014D9E4 0014A944 D0 01 00 34 */ stfs f0, 0x34(r1) -/* 8014D9E8 0014A948 38 80 07 10 */ li r4, 0x710 -/* 8014D9EC 0014A94C 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) -/* 8014D9F0 0014A950 38 E0 00 01 */ li r7, 1 -/* 8014D9F4 0014A954 D0 21 00 38 */ stfs f1, 0x38(r1) -/* 8014D9F8 0014A958 39 00 00 00 */ li r8, 0 -/* 8014D9FC 0014A95C D0 41 00 3C */ stfs f2, 0x3c(r1) -/* 8014DA00 0014A960 48 19 C8 B1 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi -/* 8014DA04 0014A964 C0 5C 00 60 */ lfs f2, 0x60(r28) -/* 8014DA08 0014A968 7F E3 FB 78 */ mr r3, r31 -/* 8014DA0C 0014A96C C0 3C 00 50 */ lfs f1, 0x50(r28) -/* 8014DA10 0014A970 38 81 00 28 */ addi r4, r1, 0x28 -/* 8014DA14 0014A974 C0 1C 00 40 */ lfs f0, 0x40(r28) -/* 8014DA18 0014A978 38 A0 00 01 */ li r5, 1 -/* 8014DA1C 0014A97C D0 01 00 28 */ stfs f0, 0x28(r1) -/* 8014DA20 0014A980 D0 21 00 2C */ stfs f1, 0x2c(r1) -/* 8014DA24 0014A984 D0 41 00 30 */ stfs f2, 0x30(r1) -/* 8014DA28 0014A988 4B EF AD 5D */ bl InformListeners__13CStateManagerFRC9CVector3f16EListenNoiseType -/* 8014DA2C 0014A98C 48 00 00 7C */ b lbl_8014DAA8 -lbl_8014DA30: -/* 8014DA30 0014A990 A9 02 C5 F8 */ lha r8, lbl_805AE318@sda21(r2) -/* 8014DA34 0014A994 38 61 00 1C */ addi r3, r1, 0x1c -/* 8014DA38 0014A998 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) -/* 8014DA3C 0014A99C 38 80 07 3F */ li r4, 0x73f -/* 8014DA40 0014A9A0 38 A0 00 7F */ li r5, 0x7f -/* 8014DA44 0014A9A4 38 C0 00 40 */ li r6, 0x40 -/* 8014DA48 0014A9A8 38 E0 00 00 */ li r7, 0 -/* 8014DA4C 0014A9AC 39 20 00 00 */ li r9, 0 -/* 8014DA50 0014A9B0 48 19 C3 25 */ bl SfxStart__11CSfxManagerFUsssbsbi -/* 8014DA54 0014A9B4 80 01 00 1C */ lwz r0, 0x1c(r1) -/* 8014DA58 0014A9B8 38 81 00 20 */ addi r4, r1, 0x20 -/* 8014DA5C 0014A9BC 90 01 00 20 */ stw r0, 0x20(r1) -/* 8014DA60 0014A9C0 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8014DA64 0014A9C4 4B EC 37 29 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle -/* 8014DA68 0014A9C8 48 00 00 40 */ b lbl_8014DAA8 -lbl_8014DA6C: -/* 8014DA6C 0014A9CC C0 3C 01 5C */ lfs f1, 0x15c(r28) -/* 8014DA70 0014A9D0 C0 02 9D 68 */ lfs f0, lbl_805ABA88@sda21(r2) -/* 8014DA74 0014A9D4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8014DA78 0014A9D8 4C 40 13 82 */ cror 2, 0, 2 -/* 8014DA7C 0014A9DC 40 82 00 10 */ bne lbl_8014DA8C -/* 8014DA80 0014A9E0 C0 22 9D 64 */ lfs f1, lbl_805ABA84@sda21(r2) -/* 8014DA84 0014A9E4 38 7F 0C 90 */ addi r3, r31, 0xc90 -/* 8014DA88 0014A9E8 4B F9 F8 E1 */ bl DisableFilter__17CCameraFilterPassFf -lbl_8014DA8C: -/* 8014DA8C 0014A9EC A0 1C 00 EC */ lhz r0, 0xec(r28) -/* 8014DA90 0014A9F0 7F E3 FB 78 */ mr r3, r31 -/* 8014DA94 0014A9F4 80 BC 00 F0 */ lwz r5, 0xf0(r28) -/* 8014DA98 0014A9F8 38 81 00 10 */ addi r4, r1, 0x10 -/* 8014DA9C 0014A9FC B0 01 00 0C */ sth r0, 0xc(r1) -/* 8014DAA0 0014AA00 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8014DAA4 0014AA04 4B EF 72 35 */ bl RemoveWeaponId__13CStateManagerF9TUniqueId11EWeaponType -lbl_8014DAA8: -/* 8014DAA8 0014AA08 A0 1E 00 00 */ lhz r0, 0(r30) -/* 8014DAAC 0014AA0C 7F 83 E3 78 */ mr r3, r28 -/* 8014DAB0 0014AA10 7F A4 EB 78 */ mr r4, r29 -/* 8014DAB4 0014AA14 7F E6 FB 78 */ mr r6, r31 -/* 8014DAB8 0014AA18 B0 01 00 08 */ sth r0, 8(r1) -/* 8014DABC 0014AA1C 38 A1 00 08 */ addi r5, r1, 8 -/* 8014DAC0 0014AA20 4B F0 5B 55 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager -/* 8014DAC4 0014AA24 80 01 00 54 */ lwz r0, 0x54(r1) -/* 8014DAC8 0014AA28 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 8014DACC 0014AA2C 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 8014DAD0 0014AA30 83 A1 00 44 */ lwz r29, 0x44(r1) -/* 8014DAD4 0014AA34 83 81 00 40 */ lwz r28, 0x40(r1) -/* 8014DAD8 0014AA38 7C 08 03 A6 */ mtlr r0 -/* 8014DADC 0014AA3C 38 21 00 50 */ addi r1, r1, 0x50 -/* 8014DAE0 0014AA40 4E 80 00 20 */ blr - -.global Accept__10CPowerBombFR8IVisitor -Accept__10CPowerBombFR8IVisitor: -/* 8014DAE4 0014AA44 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8014DAE8 0014AA48 7C 08 02 A6 */ mflr r0 -/* 8014DAEC 0014AA4C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014DAF0 0014AA50 7C 60 1B 78 */ mr r0, r3 -/* 8014DAF4 0014AA54 7C 83 23 78 */ mr r3, r4 -/* 8014DAF8 0014AA58 81 84 00 00 */ lwz r12, 0(r4) -/* 8014DAFC 0014AA5C 7C 04 03 78 */ mr r4, r0 -/* 8014DB00 0014AA60 81 8C 00 E8 */ lwz r12, 0xe8(r12) -/* 8014DB04 0014AA64 7D 89 03 A6 */ mtctr r12 -/* 8014DB08 0014AA68 4E 80 04 21 */ bctrl -/* 8014DB0C 0014AA6C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014DB10 0014AA70 7C 08 03 A6 */ mtlr r0 -/* 8014DB14 0014AA74 38 21 00 10 */ addi r1, r1, 0x10 -/* 8014DB18 0014AA78 4E 80 00 20 */ blr - -.global Think__10CPowerBombFfR13CStateManager -Think__10CPowerBombFfR13CStateManager: -/* 8014DB1C 0014AA7C 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8014DB20 0014AA80 7C 08 02 A6 */ mflr r0 -/* 8014DB24 0014AA84 90 01 00 44 */ stw r0, 0x44(r1) -/* 8014DB28 0014AA88 DB E1 00 30 */ stfd f31, 0x30(r1) -/* 8014DB2C 0014AA8C F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 -/* 8014DB30 0014AA90 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8014DB34 0014AA94 93 C1 00 28 */ stw r30, 0x28(r1) -/* 8014DB38 0014AA98 FF E0 08 90 */ fmr f31, f1 -/* 8014DB3C 0014AA9C 7C 7E 1B 78 */ mr r30, r3 -/* 8014DB40 0014AAA0 7C 9F 23 78 */ mr r31, r4 -/* 8014DB44 0014AAA4 4B FB 45 95 */ bl Think__7CWeaponFfR13CStateManager -/* 8014DB48 0014AAA8 88 7E 01 58 */ lbz r3, 0x158(r30) -/* 8014DB4C 0014AAAC 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f -/* 8014DB50 0014AAB0 41 82 00 70 */ beq lbl_8014DBC0 -/* 8014DB54 0014AAB4 C0 3E 01 5C */ lfs f1, 0x15c(r30) -/* 8014DB58 0014AAB8 C0 02 9D 6C */ lfs f0, lbl_805ABA8C@sda21(r2) -/* 8014DB5C 0014AABC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8014DB60 0014AAC0 40 81 00 3C */ ble lbl_8014DB9C -/* 8014DB64 0014AAC4 54 60 D7 FE */ rlwinm r0, r3, 0x1a, 0x1f, 0x1f -/* 8014DB68 0014AAC8 28 00 00 01 */ cmplwi r0, 1 -/* 8014DB6C 0014AACC 41 82 00 30 */ beq lbl_8014DB9C -/* 8014DB70 0014AAD0 C0 22 9D 70 */ lfs f1, lbl_805ABA90@sda21(r2) -/* 8014DB74 0014AAD4 38 7F 0C 90 */ addi r3, r31, 0xc90 -/* 8014DB78 0014AAD8 38 80 00 03 */ li r4, 3 -/* 8014DB7C 0014AADC 38 A0 00 00 */ li r5, 0 -/* 8014DB80 0014AAE0 38 CD A3 E8 */ addi r6, r13, lbl_805A8FA8@sda21 -/* 8014DB84 0014AAE4 38 E0 FF FF */ li r7, -1 -/* 8014DB88 0014AAE8 4B F9 F8 19 */ bl SetFilter__17CCameraFilterPassFQ217CCameraFilterPass11EFilterTypeQ217CCameraFilterPass12EFilterShapefRC6CColorUi -/* 8014DB8C 0014AAEC 88 1E 01 58 */ lbz r0, 0x158(r30) -/* 8014DB90 0014AAF0 38 60 00 01 */ li r3, 1 -/* 8014DB94 0014AAF4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 8014DB98 0014AAF8 98 1E 01 58 */ stb r0, 0x158(r30) -lbl_8014DB9C: -/* 8014DB9C 0014AAFC C0 3E 01 5C */ lfs f1, 0x15c(r30) -/* 8014DBA0 0014AB00 C0 02 9D 74 */ lfs f0, lbl_805ABA94@sda21(r2) -/* 8014DBA4 0014AB04 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8014DBA8 0014AB08 40 81 00 BC */ ble lbl_8014DC64 -/* 8014DBAC 0014AB0C 88 1E 01 58 */ lbz r0, 0x158(r30) -/* 8014DBB0 0014AB10 38 60 00 00 */ li r3, 0 -/* 8014DBB4 0014AB14 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 8014DBB8 0014AB18 98 1E 01 58 */ stb r0, 0x158(r30) -/* 8014DBBC 0014AB1C 48 00 00 A8 */ b lbl_8014DC64 -lbl_8014DBC0: -/* 8014DBC0 0014AB20 C0 3E 01 5C */ lfs f1, 0x15c(r30) -/* 8014DBC4 0014AB24 C0 02 9D 78 */ lfs f0, lbl_805ABA98@sda21(r2) -/* 8014DBC8 0014AB28 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8014DBCC 0014AB2C 40 81 00 28 */ ble lbl_8014DBF4 -/* 8014DBD0 0014AB30 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f -/* 8014DBD4 0014AB34 41 82 00 20 */ beq lbl_8014DBF4 -/* 8014DBD8 0014AB38 C0 22 9D 7C */ lfs f1, lbl_805ABA9C@sda21(r2) -/* 8014DBDC 0014AB3C 38 7F 0C 90 */ addi r3, r31, 0xc90 -/* 8014DBE0 0014AB40 4B F9 F7 89 */ bl DisableFilter__17CCameraFilterPassFf -/* 8014DBE4 0014AB44 88 1E 01 58 */ lbz r0, 0x158(r30) -/* 8014DBE8 0014AB48 38 60 00 00 */ li r3, 0 -/* 8014DBEC 0014AB4C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 8014DBF0 0014AB50 98 1E 01 58 */ stb r0, 0x158(r30) -lbl_8014DBF4: -/* 8014DBF4 0014AB54 C0 3E 01 5C */ lfs f1, 0x15c(r30) -/* 8014DBF8 0014AB58 C0 02 9D 68 */ lfs f0, lbl_805ABA88@sda21(r2) -/* 8014DBFC 0014AB5C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8014DC00 0014AB60 40 81 00 38 */ ble lbl_8014DC38 -/* 8014DC04 0014AB64 80 7E 01 68 */ lwz r3, 0x168(r30) -/* 8014DC08 0014AB68 81 83 00 00 */ lwz r12, 0(r3) -/* 8014DC0C 0014AB6C 81 8C 00 58 */ lwz r12, 0x58(r12) -/* 8014DC10 0014AB70 7D 89 03 A6 */ mtctr r12 -/* 8014DC14 0014AB74 4E 80 04 21 */ bctrl -/* 8014DC18 0014AB78 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8014DC1C 0014AB7C 41 82 00 1C */ beq lbl_8014DC38 -/* 8014DC20 0014AB80 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8014DC24 0014AB84 7F E3 FB 78 */ mr r3, r31 -/* 8014DC28 0014AB88 38 81 00 14 */ addi r4, r1, 0x14 -/* 8014DC2C 0014AB8C B0 01 00 10 */ sth r0, 0x10(r1) -/* 8014DC30 0014AB90 B0 01 00 14 */ sth r0, 0x14(r1) -/* 8014DC34 0014AB94 4B EF E6 39 */ bl FreeScriptObject__13CStateManagerF9TUniqueId -lbl_8014DC38: -/* 8014DC38 0014AB98 C0 3E 01 5C */ lfs f1, 0x15c(r30) -/* 8014DC3C 0014AB9C C0 02 9D 80 */ lfs f0, lbl_805ABAA0@sda21(r2) -/* 8014DC40 0014ABA0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8014DC44 0014ABA4 40 81 00 20 */ ble lbl_8014DC64 -/* 8014DC48 0014ABA8 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8014DC4C 0014ABAC 7F E3 FB 78 */ mr r3, r31 -/* 8014DC50 0014ABB0 38 81 00 0C */ addi r4, r1, 0xc -/* 8014DC54 0014ABB4 B0 01 00 08 */ sth r0, 8(r1) -/* 8014DC58 0014ABB8 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8014DC5C 0014ABBC 4B EF E6 11 */ bl FreeScriptObject__13CStateManagerF9TUniqueId -/* 8014DC60 0014ABC0 48 00 00 84 */ b lbl_8014DCE4 -lbl_8014DC64: -/* 8014DC64 0014ABC4 C0 3E 01 5C */ lfs f1, 0x15c(r30) -/* 8014DC68 0014ABC8 C0 02 9D 6C */ lfs f0, lbl_805ABA8C@sda21(r2) -/* 8014DC6C 0014ABCC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8014DC70 0014ABD0 40 81 00 50 */ ble lbl_8014DCC0 -/* 8014DC74 0014ABD4 C0 02 9D 84 */ lfs f0, lbl_805ABAA4@sda21(r2) -/* 8014DC78 0014ABD8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8014DC7C 0014ABDC 40 80 00 44 */ bge lbl_8014DCC0 -/* 8014DC80 0014ABE0 C0 1E 01 60 */ lfs f0, 0x160(r30) -/* 8014DC84 0014ABE4 7F C3 F3 78 */ mr r3, r30 -/* 8014DC88 0014ABE8 7F E5 FB 78 */ mr r5, r31 -/* 8014DC8C 0014ABEC 38 81 00 18 */ addi r4, r1, 0x18 -/* 8014DC90 0014ABF0 D0 1E 01 20 */ stfs f0, 0x120(r30) -/* 8014DC94 0014ABF4 C0 5E 00 60 */ lfs f2, 0x60(r30) -/* 8014DC98 0014ABF8 C0 3E 00 50 */ lfs f1, 0x50(r30) -/* 8014DC9C 0014ABFC C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 8014DCA0 0014AC00 D0 01 00 18 */ stfs f0, 0x18(r1) -/* 8014DCA4 0014AC04 D0 21 00 1C */ stfs f1, 0x1c(r1) -/* 8014DCA8 0014AC08 D0 41 00 20 */ stfs f2, 0x20(r1) -/* 8014DCAC 0014AC0C 48 00 00 AD */ bl sub_8014dd58 -/* 8014DCB0 0014AC10 C0 3E 01 64 */ lfs f1, 0x164(r30) -/* 8014DCB4 0014AC14 C0 1E 01 60 */ lfs f0, 0x160(r30) -/* 8014DCB8 0014AC18 EC 01 07 FA */ fmadds f0, f1, f31, f0 -/* 8014DCBC 0014AC1C D0 1E 01 60 */ stfs f0, 0x160(r30) -lbl_8014DCC0: -/* 8014DCC0 0014AC20 80 7E 01 68 */ lwz r3, 0x168(r30) -/* 8014DCC4 0014AC24 FC 20 F8 90 */ fmr f1, f31 -/* 8014DCC8 0014AC28 81 83 00 00 */ lwz r12, 0(r3) -/* 8014DCCC 0014AC2C 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 8014DCD0 0014AC30 7D 89 03 A6 */ mtctr r12 -/* 8014DCD4 0014AC34 4E 80 04 21 */ bctrl -/* 8014DCD8 0014AC38 C0 1E 01 5C */ lfs f0, 0x15c(r30) -/* 8014DCDC 0014AC3C EC 00 F8 2A */ fadds f0, f0, f31 -/* 8014DCE0 0014AC40 D0 1E 01 5C */ stfs f0, 0x15c(r30) -lbl_8014DCE4: -/* 8014DCE4 0014AC44 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 -/* 8014DCE8 0014AC48 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8014DCEC 0014AC4C CB E1 00 30 */ lfd f31, 0x30(r1) -/* 8014DCF0 0014AC50 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8014DCF4 0014AC54 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 8014DCF8 0014AC58 7C 08 03 A6 */ mtlr r0 -/* 8014DCFC 0014AC5C 38 21 00 40 */ addi r1, r1, 0x40 -/* 8014DD00 0014AC60 4E 80 00 20 */ blr - -.global nullsub_228 -nullsub_228: -/* 8014DD04 0014AC64 4E 80 00 20 */ blr - -.global AddToRenderer__10CPowerBombCFRC14CFrustumPlanesRC13CStateManager -AddToRenderer__10CPowerBombCFRC14CFrustumPlanesRC13CStateManager: -/* 8014DD08 0014AC68 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8014DD0C 0014AC6C 7C 08 02 A6 */ mflr r0 -/* 8014DD10 0014AC70 7C 64 1B 78 */ mr r4, r3 -/* 8014DD14 0014AC74 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014DD18 0014AC78 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) -/* 8014DD1C 0014AC7C 80 84 01 68 */ lwz r4, 0x168(r4) -/* 8014DD20 0014AC80 81 83 00 00 */ lwz r12, 0(r3) -/* 8014DD24 0014AC84 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8014DD28 0014AC88 7D 89 03 A6 */ mtctr r12 -/* 8014DD2C 0014AC8C 4E 80 04 21 */ bctrl -/* 8014DD30 0014AC90 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014DD34 0014AC94 7C 08 03 A6 */ mtlr r0 -/* 8014DD38 0014AC98 38 21 00 10 */ addi r1, r1, 0x10 -/* 8014DD3C 0014AC9C 4E 80 00 20 */ blr - -.global GetTouchBounds__10CPowerBombCFv -GetTouchBounds__10CPowerBombCFv: -/* 8014DD40 0014ACA0 38 00 00 00 */ li r0, 0 -/* 8014DD44 0014ACA4 98 03 00 18 */ stb r0, 0x18(r3) -/* 8014DD48 0014ACA8 4E 80 00 20 */ blr - -.global Touch__10CPowerBombFR6CActorR13CStateManager -Touch__10CPowerBombFR6CActorR13CStateManager: -/* 8014DD4C 0014ACAC 88 03 01 58 */ lbz r0, 0x158(r3) -/* 8014DD50 0014ACB0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8014DD54 0014ACB4 4E 80 00 20 */ blr - -.global sub_8014dd58 -sub_8014dd58: -/* 8014DD58 0014ACB8 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8014DD5C 0014ACBC 7C 08 02 A6 */ mflr r0 -/* 8014DD60 0014ACC0 7C 86 23 78 */ mr r6, r4 -/* 8014DD64 0014ACC4 7C 6A 1B 78 */ mr r10, r3 -/* 8014DD68 0014ACC8 90 01 00 34 */ stw r0, 0x34(r1) -/* 8014DD6C 0014ACCC 38 81 00 0C */ addi r4, r1, 0xc -/* 8014DD70 0014ACD0 39 01 00 10 */ addi r8, r1, 0x10 -/* 8014DD74 0014ACD4 80 03 00 F8 */ lwz r0, 0xf8(r3) -/* 8014DD78 0014ACD8 80 E3 00 FC */ lwz r7, 0xfc(r3) -/* 8014DD7C 0014ACDC 7C A3 2B 78 */ mr r3, r5 -/* 8014DD80 0014ACE0 7D 45 53 78 */ mr r5, r10 -/* 8014DD84 0014ACE4 90 E1 00 14 */ stw r7, 0x14(r1) -/* 8014DD88 0014ACE8 38 EA 01 2C */ addi r7, r10, 0x12c -/* 8014DD8C 0014ACEC 90 01 00 10 */ stw r0, 0x10(r1) -/* 8014DD90 0014ACF0 80 0A 01 00 */ lwz r0, 0x100(r10) -/* 8014DD94 0014ACF4 81 2A 01 04 */ lwz r9, 0x104(r10) -/* 8014DD98 0014ACF8 91 21 00 1C */ stw r9, 0x1c(r1) -/* 8014DD9C 0014ACFC 90 01 00 18 */ stw r0, 0x18(r1) -/* 8014DDA0 0014AD00 80 0A 01 08 */ lwz r0, 0x108(r10) -/* 8014DDA4 0014AD04 90 01 00 20 */ stw r0, 0x20(r1) -/* 8014DDA8 0014AD08 A0 0A 00 EC */ lhz r0, 0xec(r10) -/* 8014DDAC 0014AD0C B0 01 00 08 */ sth r0, 8(r1) -/* 8014DDB0 0014AD10 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8014DDB4 0014AD14 4B EF AE F9 */ bl ApplyDamageToWorld__13CStateManagerF9TUniqueIdRC6CActorRC9CVector3fRC11CDamageInfoRC15CMaterialFilter -/* 8014DDB8 0014AD18 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8014DDBC 0014AD1C 7C 08 03 A6 */ mtlr r0 -/* 8014DDC0 0014AD20 38 21 00 30 */ addi r1, r1, 0x30 -/* 8014DDC4 0014AD24 4E 80 00 20 */ blr - -.global __dt__10CPowerBombFv -__dt__10CPowerBombFv: -/* 8014DDC8 0014AD28 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8014DDCC 0014AD2C 7C 08 02 A6 */ mflr r0 -/* 8014DDD0 0014AD30 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014DDD4 0014AD34 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8014DDD8 0014AD38 7C 9F 23 78 */ mr r31, r4 -/* 8014DDDC 0014AD3C 93 C1 00 08 */ stw r30, 8(r1) -/* 8014DDE0 0014AD40 7C 7E 1B 79 */ or. r30, r3, r3 -/* 8014DDE4 0014AD44 41 82 00 54 */ beq lbl_8014DE38 -/* 8014DDE8 0014AD48 3C 60 80 3E */ lis r3, lbl_803E2808@ha -/* 8014DDEC 0014AD4C 34 1E 01 68 */ addic. r0, r30, 0x168 -/* 8014DDF0 0014AD50 38 03 28 08 */ addi r0, r3, lbl_803E2808@l -/* 8014DDF4 0014AD54 90 1E 00 00 */ stw r0, 0(r30) -/* 8014DDF8 0014AD58 41 82 00 24 */ beq lbl_8014DE1C -/* 8014DDFC 0014AD5C 80 7E 01 68 */ lwz r3, 0x168(r30) -/* 8014DE00 0014AD60 28 03 00 00 */ cmplwi r3, 0 -/* 8014DE04 0014AD64 41 82 00 18 */ beq lbl_8014DE1C -/* 8014DE08 0014AD68 81 83 00 00 */ lwz r12, 0(r3) -/* 8014DE0C 0014AD6C 38 80 00 01 */ li r4, 1 -/* 8014DE10 0014AD70 81 8C 00 08 */ lwz r12, 8(r12) -/* 8014DE14 0014AD74 7D 89 03 A6 */ mtctr r12 -/* 8014DE18 0014AD78 4E 80 04 21 */ bctrl -lbl_8014DE1C: -/* 8014DE1C 0014AD7C 7F C3 F3 78 */ mr r3, r30 -/* 8014DE20 0014AD80 38 80 00 00 */ li r4, 0 -/* 8014DE24 0014AD84 4B FB 44 11 */ bl __dt__7CWeaponFv -/* 8014DE28 0014AD88 7F E0 07 35 */ extsh. r0, r31 -/* 8014DE2C 0014AD8C 40 81 00 0C */ ble lbl_8014DE38 -/* 8014DE30 0014AD90 7F C3 F3 78 */ mr r3, r30 -/* 8014DE34 0014AD94 48 1C 7A FD */ bl Free__7CMemoryFPCv -lbl_8014DE38: -/* 8014DE38 0014AD98 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014DE3C 0014AD9C 7F C3 F3 78 */ mr r3, r30 -/* 8014DE40 0014ADA0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8014DE44 0014ADA4 83 C1 00 08 */ lwz r30, 8(r1) -/* 8014DE48 0014ADA8 7C 08 03 A6 */ mtlr r0 -/* 8014DE4C 0014ADAC 38 21 00 10 */ addi r1, r1, 0x10 -/* 8014DE50 0014ADB0 4E 80 00 20 */ blr - -.global "__ct__10CPowerBombF25TToken<15CGenDescription>9TUniqueId7TAreaId9TUniqueIdRC12CTransform4fRC11CDamageInfo" -"__ct__10CPowerBombF25TToken<15CGenDescription>9TUniqueId7TAreaId9TUniqueIdRC12CTransform4fRC11CDamageInfo": -/* 8014DE54 0014ADB4 94 21 FF 00 */ stwu r1, -0x100(r1) -/* 8014DE58 0014ADB8 7C 08 02 A6 */ mflr r0 -/* 8014DE5C 0014ADBC 3D 40 80 3D */ lis r10, lbl_803D01A0@ha -/* 8014DE60 0014ADC0 90 01 01 04 */ stw r0, 0x104(r1) -/* 8014DE64 0014ADC4 38 0A 01 A0 */ addi r0, r10, lbl_803D01A0@l -/* 8014DE68 0014ADC8 BE 61 00 CC */ stmw r19, 0xcc(r1) -/* 8014DE6C 0014ADCC 7C 7E 1B 78 */ mr r30, r3 -/* 8014DE70 0014ADD0 7C 9F 23 78 */ mr r31, r4 -/* 8014DE74 0014ADD4 7C B6 2B 78 */ mr r22, r5 -/* 8014DE78 0014ADD8 7C D7 33 78 */ mr r23, r6 -/* 8014DE7C 0014ADDC 7C F8 3B 78 */ mr r24, r7 -/* 8014DE80 0014ADE0 7D 19 43 78 */ mr r25, r8 -/* 8014DE84 0014ADE4 7D 3A 4B 78 */ mr r26, r9 -/* 8014DE88 0014ADE8 7C 04 03 78 */ mr r4, r0 -/* 8014DE8C 0014ADEC 38 61 00 4C */ addi r3, r1, 0x4c -/* 8014DE90 0014ADF0 4B EB 6E 29 */ bl string_l__4rstlFPCc -/* 8014DE94 0014ADF4 38 61 00 78 */ addi r3, r1, 0x78 -/* 8014DE98 0014ADF8 4B EE C9 0D */ bl CModelDataNull__10CModelDataFv -/* 8014DE9C 0014ADFC 38 00 00 00 */ li r0, 0 -/* 8014DEA0 0014AE00 80 AD 8C 2C */ lwz r5, lbl_805A77EC@sda21(r13) -/* 8014DEA4 0014AE04 90 01 00 3C */ stw r0, 0x3c(r1) -/* 8014DEA8 0014AE08 38 60 00 00 */ li r3, 0 -/* 8014DEAC 0014AE0C 38 80 00 01 */ li r4, 1 -/* 8014DEB0 0014AE10 90 01 00 38 */ stw r0, 0x38(r1) -/* 8014DEB4 0014AE14 48 23 C0 41 */ bl __shl2i -/* 8014DEB8 0014AE18 80 01 00 38 */ lwz r0, 0x38(r1) -/* 8014DEBC 0014AE1C 80 C1 00 3C */ lwz r6, 0x3c(r1) -/* 8014DEC0 0014AE20 7C 00 1B 78 */ or r0, r0, r3 -/* 8014DEC4 0014AE24 80 AD 8C 30 */ lwz r5, lbl_805A77F0@sda21(r13) -/* 8014DEC8 0014AE28 7C C4 23 78 */ or r4, r6, r4 -/* 8014DECC 0014AE2C 90 01 00 38 */ stw r0, 0x38(r1) -/* 8014DED0 0014AE30 38 60 00 00 */ li r3, 0 -/* 8014DED4 0014AE34 90 81 00 3C */ stw r4, 0x3c(r1) -/* 8014DED8 0014AE38 38 80 00 01 */ li r4, 1 -/* 8014DEDC 0014AE3C 48 23 C0 19 */ bl __shl2i -/* 8014DEE0 0014AE40 80 01 00 38 */ lwz r0, 0x38(r1) -/* 8014DEE4 0014AE44 80 C1 00 3C */ lwz r6, 0x3c(r1) -/* 8014DEE8 0014AE48 7C 00 1B 78 */ or r0, r0, r3 -/* 8014DEEC 0014AE4C 80 AD 8C 24 */ lwz r5, lbl_805A77E4@sda21(r13) -/* 8014DEF0 0014AE50 7C C4 23 78 */ or r4, r6, r4 -/* 8014DEF4 0014AE54 90 01 00 38 */ stw r0, 0x38(r1) -/* 8014DEF8 0014AE58 38 60 00 00 */ li r3, 0 -/* 8014DEFC 0014AE5C 90 81 00 3C */ stw r4, 0x3c(r1) -/* 8014DF00 0014AE60 38 80 00 01 */ li r4, 1 -/* 8014DF04 0014AE64 48 23 BF F1 */ bl __shl2i -/* 8014DF08 0014AE68 80 AD 8C 28 */ lwz r5, lbl_805A77E8@sda21(r13) -/* 8014DF0C 0014AE6C 7C 9C 23 78 */ mr r28, r4 -/* 8014DF10 0014AE70 7C 7D 1B 78 */ mr r29, r3 -/* 8014DF14 0014AE74 38 60 00 00 */ li r3, 0 -/* 8014DF18 0014AE78 38 80 00 01 */ li r4, 1 -/* 8014DF1C 0014AE7C 48 23 BF D9 */ bl __shl2i -/* 8014DF20 0014AE80 80 AD 8C 18 */ lwz r5, lbl_805A77D8@sda21(r13) -/* 8014DF24 0014AE84 7F 9C 23 78 */ or r28, r28, r4 -/* 8014DF28 0014AE88 7F BD 1B 78 */ or r29, r29, r3 -/* 8014DF2C 0014AE8C 38 60 00 00 */ li r3, 0 -/* 8014DF30 0014AE90 38 80 00 01 */ li r4, 1 -/* 8014DF34 0014AE94 48 23 BF C1 */ bl __shl2i -/* 8014DF38 0014AE98 80 AD 8C 1C */ lwz r5, lbl_805A77DC@sda21(r13) -/* 8014DF3C 0014AE9C 7C 93 23 78 */ mr r19, r4 -/* 8014DF40 0014AEA0 7C 7B 1B 78 */ mr r27, r3 -/* 8014DF44 0014AEA4 38 60 00 00 */ li r3, 0 -/* 8014DF48 0014AEA8 38 80 00 01 */ li r4, 1 -/* 8014DF4C 0014AEAC 48 23 BF A9 */ bl __shl2i -/* 8014DF50 0014AEB0 80 AD 8C 20 */ lwz r5, lbl_805A77E0@sda21(r13) -/* 8014DF54 0014AEB4 7E 73 23 78 */ or r19, r19, r4 -/* 8014DF58 0014AEB8 7F 7B 1B 78 */ or r27, r27, r3 -/* 8014DF5C 0014AEBC 38 60 00 00 */ li r3, 0 -/* 8014DF60 0014AEC0 38 80 00 01 */ li r4, 1 -/* 8014DF64 0014AEC4 48 23 BF 91 */ bl __shl2i -/* 8014DF68 0014AEC8 A2 B8 00 00 */ lhz r21, 0(r24) -/* 8014DF6C 0014AECC 7E 73 23 78 */ or r19, r19, r4 -/* 8014DF70 0014AED0 7F 7B 1B 78 */ or r27, r27, r3 -/* 8014DF74 0014AED4 83 17 00 00 */ lwz r24, 0(r23) -/* 8014DF78 0014AED8 A2 F6 00 00 */ lhz r23, 0(r22) -/* 8014DF7C 0014AEDC 3A 80 00 03 */ li r20, 3 -/* 8014DF80 0014AEE0 92 61 00 64 */ stw r19, 0x64(r1) -/* 8014DF84 0014AEE4 3A C1 00 60 */ addi r22, r1, 0x60 -/* 8014DF88 0014AEE8 39 81 00 38 */ addi r12, r1, 0x38 -/* 8014DF8C 0014AEEC 39 60 02 00 */ li r11, 0x200 -/* 8014DF90 0014AEF0 93 61 00 60 */ stw r27, 0x60(r1) -/* 8014DF94 0014AEF4 38 01 00 78 */ addi r0, r1, 0x78 -/* 8014DF98 0014AEF8 7F C3 F3 78 */ mr r3, r30 -/* 8014DF9C 0014AEFC 7F 2A CB 78 */ mr r10, r25 -/* 8014DFA0 0014AF00 93 81 00 6C */ stw r28, 0x6c(r1) -/* 8014DFA4 0014AF04 38 81 00 24 */ addi r4, r1, 0x24 -/* 8014DFA8 0014AF08 38 A1 00 28 */ addi r5, r1, 0x28 -/* 8014DFAC 0014AF0C 38 E1 00 20 */ addi r7, r1, 0x20 -/* 8014DFB0 0014AF10 93 A1 00 68 */ stw r29, 0x68(r1) -/* 8014DFB4 0014AF14 39 21 00 4C */ addi r9, r1, 0x4c -/* 8014DFB8 0014AF18 38 C0 00 01 */ li r6, 1 -/* 8014DFBC 0014AF1C 39 00 00 05 */ li r8, 5 -/* 8014DFC0 0014AF20 92 81 00 70 */ stw r20, 0x70(r1) -/* 8014DFC4 0014AF24 B2 A1 00 20 */ sth r21, 0x20(r1) -/* 8014DFC8 0014AF28 93 01 00 28 */ stw r24, 0x28(r1) -/* 8014DFCC 0014AF2C B2 E1 00 24 */ sth r23, 0x24(r1) -/* 8014DFD0 0014AF30 92 C1 00 08 */ stw r22, 8(r1) -/* 8014DFD4 0014AF34 91 81 00 0C */ stw r12, 0xc(r1) -/* 8014DFD8 0014AF38 93 41 00 10 */ stw r26, 0x10(r1) -/* 8014DFDC 0014AF3C 91 61 00 14 */ stw r11, 0x14(r1) -/* 8014DFE0 0014AF40 90 01 00 18 */ stw r0, 0x18(r1) -/* 8014DFE4 0014AF44 4B FB 42 B1 */ bl "__ct__7CWeaponF9TUniqueIdb9TUniqueId11EWeaponTypeRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC12CTransform4fRC15CMaterialFilterRC13CMaterialListRC11CDamageInfoiRC10CModelData" -/* 8014DFE8 0014AF48 38 61 00 78 */ addi r3, r1, 0x78 -/* 8014DFEC 0014AF4C 38 80 FF FF */ li r4, -1 -/* 8014DFF0 0014AF50 4B FC 8A 5D */ bl __dt__10CModelDataFv -/* 8014DFF4 0014AF54 38 61 00 4C */ addi r3, r1, 0x4c -/* 8014DFF8 0014AF58 48 1E FA E9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 8014DFFC 0014AF5C 3C 80 80 3E */ lis r4, lbl_803E2808@ha -/* 8014E000 0014AF60 3C 60 80 3D */ lis r3, lbl_803D01A0@ha -/* 8014E004 0014AF64 38 04 28 08 */ addi r0, r4, lbl_803E2808@l -/* 8014E008 0014AF68 38 80 00 01 */ li r4, 1 -/* 8014E00C 0014AF6C 90 1E 00 00 */ stw r0, 0(r30) -/* 8014E010 0014AF70 38 63 01 A0 */ addi r3, r3, lbl_803D01A0@l -/* 8014E014 0014AF74 38 C0 00 00 */ li r6, 0 -/* 8014E018 0014AF78 C0 22 9D 64 */ lfs f1, lbl_805ABA84@sda21(r2) -/* 8014E01C 0014AF7C 88 1E 01 58 */ lbz r0, 0x158(r30) -/* 8014E020 0014AF80 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 -/* 8014E024 0014AF84 C0 02 9D 74 */ lfs f0, lbl_805ABA94@sda21(r2) -/* 8014E028 0014AF88 38 83 00 0A */ addi r4, r3, 0xa -/* 8014E02C 0014AF8C 98 1E 01 58 */ stb r0, 0x158(r30) -/* 8014E030 0014AF90 3A 60 00 00 */ li r19, 0 -/* 8014E034 0014AF94 38 60 03 40 */ li r3, 0x340 -/* 8014E038 0014AF98 38 A0 00 00 */ li r5, 0 -/* 8014E03C 0014AF9C 88 1E 01 58 */ lbz r0, 0x158(r30) -/* 8014E040 0014AFA0 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 -/* 8014E044 0014AFA4 98 1E 01 58 */ stb r0, 0x158(r30) -/* 8014E048 0014AFA8 D0 3E 01 5C */ stfs f1, 0x15c(r30) -/* 8014E04C 0014AFAC D0 3E 01 60 */ stfs f1, 0x160(r30) -/* 8014E050 0014AFB0 C0 3A 00 10 */ lfs f1, 0x10(r26) -/* 8014E054 0014AFB4 EC 01 00 24 */ fdivs f0, f1, f0 -/* 8014E058 0014AFB8 D0 1E 01 64 */ stfs f0, 0x164(r30) -/* 8014E05C 0014AFBC 48 1C 78 11 */ bl __nw__FUlPCcPCc -/* 8014E060 0014AFC0 7C 74 1B 79 */ or. r20, r3, r3 -/* 8014E064 0014AFC4 41 82 00 2C */ beq lbl_8014E090 -/* 8014E068 0014AFC8 7F E4 FB 78 */ mr r4, r31 -/* 8014E06C 0014AFCC 38 61 00 2C */ addi r3, r1, 0x2c -/* 8014E070 0014AFD0 48 1F 2E 39 */ bl __ct__6CTokenFRC6CToken -/* 8014E074 0014AFD4 7E 83 A3 78 */ mr r3, r20 -/* 8014E078 0014AFD8 38 81 00 2C */ addi r4, r1, 0x2c -/* 8014E07C 0014AFDC 3A 60 00 01 */ li r19, 1 -/* 8014E080 0014AFE0 38 A0 00 00 */ li r5, 0 -/* 8014E084 0014AFE4 38 C0 00 01 */ li r6, 1 -/* 8014E088 0014AFE8 48 1D 13 59 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" -/* 8014E08C 0014AFEC 7C 74 1B 78 */ mr r20, r3 -lbl_8014E090: -/* 8014E090 0014AFF0 7E 60 07 75 */ extsb. r0, r19 -/* 8014E094 0014AFF4 92 9E 01 68 */ stw r20, 0x168(r30) -/* 8014E098 0014AFF8 41 82 00 10 */ beq lbl_8014E0A8 -/* 8014E09C 0014AFFC 38 61 00 2C */ addi r3, r1, 0x2c -/* 8014E0A0 0014B000 38 80 00 00 */ li r4, 0 -/* 8014E0A4 0014B004 48 1F 2D 9D */ bl __dt__6CTokenFv -lbl_8014E0A8: -/* 8014E0A8 0014B008 C0 1A 00 10 */ lfs f0, 0x10(r26) -/* 8014E0AC 0014B00C 38 81 00 40 */ addi r4, r1, 0x40 -/* 8014E0B0 0014B010 D0 1E 01 6C */ stfs f0, 0x16c(r30) -/* 8014E0B4 0014B014 C0 59 00 2C */ lfs f2, 0x2c(r25) -/* 8014E0B8 0014B018 C0 39 00 1C */ lfs f1, 0x1c(r25) -/* 8014E0BC 0014B01C C0 19 00 0C */ lfs f0, 0xc(r25) -/* 8014E0C0 0014B020 D0 21 00 44 */ stfs f1, 0x44(r1) -/* 8014E0C4 0014B024 D0 01 00 40 */ stfs f0, 0x40(r1) -/* 8014E0C8 0014B028 D0 41 00 48 */ stfs f2, 0x48(r1) -/* 8014E0CC 0014B02C 80 7E 01 68 */ lwz r3, 0x168(r30) -/* 8014E0D0 0014B030 81 83 00 00 */ lwz r12, 0(r3) -/* 8014E0D4 0014B034 81 8C 00 20 */ lwz r12, 0x20(r12) -/* 8014E0D8 0014B038 7D 89 03 A6 */ mtctr r12 -/* 8014E0DC 0014B03C 4E 80 04 21 */ bctrl -/* 8014E0E0 0014B040 7F C3 F3 78 */ mr r3, r30 -/* 8014E0E4 0014B044 BA 61 00 CC */ lmw r19, 0xcc(r1) -/* 8014E0E8 0014B048 80 01 01 04 */ lwz r0, 0x104(r1) -/* 8014E0EC 0014B04C 7C 08 03 A6 */ mtlr r0 -/* 8014E0F0 0014B050 38 21 01 00 */ addi r1, r1, 0x100 -/* 8014E0F4 0014B054 4E 80 00 20 */ blr - -.global __sinit_CPowerBomb_cpp -__sinit_CPowerBomb_cpp: -/* 8014E0F8 0014B058 38 00 FF 7F */ li r0, -129 -/* 8014E0FC 0014B05C 90 0D A3 E8 */ stw r0, lbl_805A8FA8@sda21(r13) -/* 8014E100 0014B060 4E 80 00 20 */ blr - -.global __dt__8CMetareeFv -__dt__8CMetareeFv: -/* 8014E104 0014B064 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8014E108 0014B068 7C 08 02 A6 */ mflr r0 -/* 8014E10C 0014B06C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014E110 0014B070 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8014E114 0014B074 7C 9F 23 78 */ mr r31, r4 -/* 8014E118 0014B078 93 C1 00 08 */ stw r30, 8(r1) -/* 8014E11C 0014B07C 7C 7E 1B 79 */ or. r30, r3, r3 -/* 8014E120 0014B080 41 82 00 28 */ beq lbl_8014E148 -/* 8014E124 0014B084 3C A0 80 3E */ lis r5, lbl_803E2878@ha -/* 8014E128 0014B088 38 80 00 00 */ li r4, 0 -/* 8014E12C 0014B08C 38 05 28 78 */ addi r0, r5, lbl_803E2878@l -/* 8014E130 0014B090 90 1E 00 00 */ stw r0, 0(r30) -/* 8014E134 0014B094 4B F2 94 3D */ bl __dt__10CPatternedFv -/* 8014E138 0014B098 7F E0 07 35 */ extsh. r0, r31 -/* 8014E13C 0014B09C 40 81 00 0C */ ble lbl_8014E148 -/* 8014E140 0014B0A0 7F C3 F3 78 */ mr r3, r30 -/* 8014E144 0014B0A4 48 1C 77 ED */ bl Free__7CMemoryFPCv -lbl_8014E148: -/* 8014E148 0014B0A8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014E14C 0014B0AC 7F C3 F3 78 */ mr r3, r30 -/* 8014E150 0014B0B0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8014E154 0014B0B4 83 C1 00 08 */ lwz r30, 8(r1) -/* 8014E158 0014B0B8 7C 08 03 A6 */ mtlr r0 -/* 8014E15C 0014B0BC 38 21 00 10 */ addi r1, r1, 0x10 -/* 8014E160 0014B0C0 4E 80 00 20 */ blr - -.global Delay__8CMetareeFR13CStateManagerf -Delay__8CMetareeFR13CStateManagerf: -/* 8014E164 0014B0C4 C0 23 03 38 */ lfs f1, 0x338(r3) -/* 8014E168 0014B0C8 C0 03 05 68 */ lfs f0, 0x568(r3) -/* 8014E16C 0014B0CC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8014E170 0014B0D0 7C 00 00 26 */ mfcr r0 -/* 8014E174 0014B0D4 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f -/* 8014E178 0014B0D8 4E 80 00 20 */ blr - -.global Think__8CMetareeFfR13CStateManager -Think__8CMetareeFfR13CStateManager: -/* 8014E17C 0014B0DC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8014E180 0014B0E0 7C 08 02 A6 */ mflr r0 -/* 8014E184 0014B0E4 38 C0 00 01 */ li r6, 1 -/* 8014E188 0014B0E8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014E18C 0014B0EC 7C C0 33 78 */ mr r0, r6 -/* 8014E190 0014B0F0 80 A4 08 B8 */ lwz r5, 0x8b8(r4) -/* 8014E194 0014B0F4 80 A5 00 00 */ lwz r5, 0(r5) -/* 8014E198 0014B0F8 80 A5 00 14 */ lwz r5, 0x14(r5) -/* 8014E19C 0014B0FC 2C 05 00 03 */ cmpwi r5, 3 -/* 8014E1A0 0014B100 41 82 00 10 */ beq lbl_8014E1B0 -/* 8014E1A4 0014B104 2C 05 00 02 */ cmpwi r5, 2 -/* 8014E1A8 0014B108 41 82 00 08 */ beq lbl_8014E1B0 -/* 8014E1AC 0014B10C 38 00 00 00 */ li r0, 0 -lbl_8014E1B0: -/* 8014E1B0 0014B110 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 8014E1B4 0014B114 40 82 00 14 */ bne lbl_8014E1C8 -/* 8014E1B8 0014B118 88 03 05 CA */ lbz r0, 0x5ca(r3) -/* 8014E1BC 0014B11C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f -/* 8014E1C0 0014B120 40 82 00 08 */ bne lbl_8014E1C8 -/* 8014E1C4 0014B124 38 C0 00 00 */ li r6, 0 -lbl_8014E1C8: -/* 8014E1C8 0014B128 88 03 00 E7 */ lbz r0, 0xe7(r3) -/* 8014E1CC 0014B12C 50 C0 07 FE */ rlwimi r0, r6, 0, 0x1f, 0x1f -/* 8014E1D0 0014B130 98 03 00 E7 */ stb r0, 0xe7(r3) -/* 8014E1D4 0014B134 4B F2 B9 45 */ bl Think__10CPatternedFfR13CStateManager -/* 8014E1D8 0014B138 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014E1DC 0014B13C 7C 08 03 A6 */ mtlr r0 -/* 8014E1E0 0014B140 38 21 00 10 */ addi r1, r1, 0x10 -/* 8014E1E4 0014B144 4E 80 00 20 */ blr - -.global Explode__8CMetareeFR13CStateManager9EStateMsgf -Explode__8CMetareeFR13CStateManager9EStateMsgf: -/* 8014E1E8 0014B148 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8014E1EC 0014B14C 7C 08 02 A6 */ mflr r0 -/* 8014E1F0 0014B150 2C 05 00 00 */ cmpwi r5, 0 -/* 8014E1F4 0014B154 90 01 00 44 */ stw r0, 0x44(r1) -/* 8014E1F8 0014B158 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 8014E1FC 0014B15C 7C 9F 23 78 */ mr r31, r4 -/* 8014E200 0014B160 93 C1 00 38 */ stw r30, 0x38(r1) -/* 8014E204 0014B164 7C 7E 1B 78 */ mr r30, r3 -/* 8014E208 0014B168 41 82 00 08 */ beq lbl_8014E210 -/* 8014E20C 0014B16C 48 00 00 94 */ b lbl_8014E2A0 -lbl_8014E210: -/* 8014E210 0014B170 80 AD 8C 38 */ lwz r5, lbl_805A77F8@sda21(r13) -/* 8014E214 0014B174 38 60 00 00 */ li r3, 0 -/* 8014E218 0014B178 38 80 00 01 */ li r4, 1 -/* 8014E21C 0014B17C 48 23 BC D9 */ bl __shl2i -/* 8014E220 0014B180 39 40 00 00 */ li r10, 0 -/* 8014E224 0014B184 38 00 00 03 */ li r0, 3 -/* 8014E228 0014B188 90 81 00 24 */ stw r4, 0x24(r1) -/* 8014E22C 0014B18C 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8014E230 0014B190 39 24 66 A0 */ addi r9, r4, skZero3f@l -/* 8014E234 0014B194 38 A1 00 14 */ addi r5, r1, 0x14 -/* 8014E238 0014B198 90 61 00 20 */ stw r3, 0x20(r1) -/* 8014E23C 0014B19C 38 81 00 1C */ addi r4, r1, 0x1c -/* 8014E240 0014B1A0 7F E3 FB 78 */ mr r3, r31 -/* 8014E244 0014B1A4 38 C1 00 0C */ addi r6, r1, 0xc -/* 8014E248 0014B1A8 91 41 00 2C */ stw r10, 0x2c(r1) -/* 8014E24C 0014B1AC 38 FE 05 AC */ addi r7, r30, 0x5ac -/* 8014E250 0014B1B0 39 01 00 20 */ addi r8, r1, 0x20 -/* 8014E254 0014B1B4 91 41 00 28 */ stw r10, 0x28(r1) -/* 8014E258 0014B1B8 90 01 00 30 */ stw r0, 0x30(r1) -/* 8014E25C 0014B1BC A0 1E 00 08 */ lhz r0, 8(r30) -/* 8014E260 0014B1C0 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8014E264 0014B1C4 81 5F 08 4C */ lwz r10, 0x84c(r31) -/* 8014E268 0014B1C8 B0 01 00 08 */ sth r0, 8(r1) -/* 8014E26C 0014B1CC A1 4A 00 08 */ lhz r10, 8(r10) -/* 8014E270 0014B1D0 B1 41 00 14 */ sth r10, 0x14(r1) -/* 8014E274 0014B1D4 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8014E278 0014B1D8 B1 41 00 10 */ sth r10, 0x10(r1) -/* 8014E27C 0014B1DC B0 01 00 18 */ sth r0, 0x18(r1) -/* 8014E280 0014B1E0 B0 01 00 1C */ sth r0, 0x1c(r1) -/* 8014E284 0014B1E4 4B EF BE 1D */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f -/* 8014E288 0014B1E8 7F C3 F3 78 */ mr r3, r30 -/* 8014E28C 0014B1EC 7F E4 FB 78 */ mr r4, r31 -/* 8014E290 0014B1F0 81 9E 00 00 */ lwz r12, 0(r30) -/* 8014E294 0014B1F4 81 8C 02 98 */ lwz r12, 0x298(r12) -/* 8014E298 0014B1F8 7D 89 03 A6 */ mtctr r12 -/* 8014E29C 0014B1FC 4E 80 04 21 */ bctrl -lbl_8014E2A0: -/* 8014E2A0 0014B200 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8014E2A4 0014B204 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 8014E2A8 0014B208 83 C1 00 38 */ lwz r30, 0x38(r1) -/* 8014E2AC 0014B20C 7C 08 03 A6 */ mtlr r0 -/* 8014E2B0 0014B210 38 21 00 40 */ addi r1, r1, 0x40 -/* 8014E2B4 0014B214 4E 80 00 20 */ blr - -.global Flee__8CMetareeFR13CStateManager9EStateMsgf -Flee__8CMetareeFR13CStateManager9EStateMsgf: -/* 8014E2B8 0014B218 94 21 FF 80 */ stwu r1, -0x80(r1) -/* 8014E2BC 0014B21C 7C 08 02 A6 */ mflr r0 -/* 8014E2C0 0014B220 90 01 00 84 */ stw r0, 0x84(r1) -/* 8014E2C4 0014B224 DB E1 00 70 */ stfd f31, 0x70(r1) -/* 8014E2C8 0014B228 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 -/* 8014E2CC 0014B22C 93 E1 00 6C */ stw r31, 0x6c(r1) -/* 8014E2D0 0014B230 2C 05 00 01 */ cmpwi r5, 1 -/* 8014E2D4 0014B234 7C 7F 1B 78 */ mr r31, r3 -/* 8014E2D8 0014B238 41 82 00 F8 */ beq lbl_8014E3D0 -/* 8014E2DC 0014B23C 40 80 01 AC */ bge lbl_8014E488 -/* 8014E2E0 0014B240 2C 05 00 00 */ cmpwi r5, 0 -/* 8014E2E4 0014B244 40 80 00 0C */ bge lbl_8014E2F0 -/* 8014E2E8 0014B248 48 00 01 A0 */ b lbl_8014E488 -/* 8014E2EC 0014B24C 48 00 01 9C */ b lbl_8014E488 -lbl_8014E2F0: -/* 8014E2F0 0014B250 C0 9F 00 E8 */ lfs f4, 0xe8(r31) -/* 8014E2F4 0014B254 C0 5F 05 94 */ lfs f2, 0x594(r31) -/* 8014E2F8 0014B258 C0 3F 05 90 */ lfs f1, 0x590(r31) -/* 8014E2FC 0014B25C C0 02 9D 8C */ lfs f0, lbl_805ABAAC@sda21(r2) -/* 8014E300 0014B260 EC 44 00 B2 */ fmuls f2, f4, f2 -/* 8014E304 0014B264 C0 62 9D 88 */ lfs f3, lbl_805ABAA8@sda21(r2) -/* 8014E308 0014B268 EC 24 00 72 */ fmuls f1, f4, f1 -/* 8014E30C 0014B26C EC 04 00 32 */ fmuls f0, f4, f0 -/* 8014E310 0014B270 EC 43 00 B2 */ fmuls f2, f3, f2 -/* 8014E314 0014B274 EC 23 00 72 */ fmuls f1, f3, f1 -/* 8014E318 0014B278 EC 03 00 32 */ fmuls f0, f3, f0 -/* 8014E31C 0014B27C D0 41 00 18 */ stfs f2, 0x18(r1) -/* 8014E320 0014B280 D0 21 00 14 */ stfs f1, 0x14(r1) -/* 8014E324 0014B284 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 8014E328 0014B288 4B EC D2 0D */ bl Identity__10CAxisAngleFv -/* 8014E32C 0014B28C 7C 65 1B 78 */ mr r5, r3 -/* 8014E330 0014B290 7F E3 FB 78 */ mr r3, r31 -/* 8014E334 0014B294 38 81 00 14 */ addi r4, r1, 0x14 -/* 8014E338 0014B298 4B FC E0 61 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle -/* 8014E33C 0014B29C 7F E3 FB 78 */ mr r3, r31 -/* 8014E340 0014B2A0 C3 FF 00 E8 */ lfs f31, 0xe8(r31) -/* 8014E344 0014B2A4 81 9F 00 00 */ lwz r12, 0(r31) -/* 8014E348 0014B2A8 81 8C 02 BC */ lwz r12, 0x2bc(r12) -/* 8014E34C 0014B2AC 7D 89 03 A6 */ mtctr r12 -/* 8014E350 0014B2B0 4E 80 04 21 */ bctrl -/* 8014E354 0014B2B4 FC 20 08 50 */ fneg f1, f1 -/* 8014E358 0014B2B8 C0 02 9D 8C */ lfs f0, lbl_805ABAAC@sda21(r2) -/* 8014E35C 0014B2BC 38 61 00 38 */ addi r3, r1, 0x38 -/* 8014E360 0014B2C0 38 81 00 08 */ addi r4, r1, 8 -/* 8014E364 0014B2C4 D0 1F 01 50 */ stfs f0, 0x150(r31) -/* 8014E368 0014B2C8 EC 21 07 F2 */ fmuls f1, f1, f31 -/* 8014E36C 0014B2CC D0 1F 01 54 */ stfs f0, 0x154(r31) -/* 8014E370 0014B2D0 D0 3F 01 58 */ stfs f1, 0x158(r31) -/* 8014E374 0014B2D4 C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 8014E378 0014B2D8 C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 8014E37C 0014B2DC C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 8014E380 0014B2E0 D0 01 00 08 */ stfs f0, 8(r1) -/* 8014E384 0014B2E4 D0 21 00 0C */ stfs f1, 0xc(r1) -/* 8014E388 0014B2E8 D0 41 00 10 */ stfs f2, 0x10(r1) -/* 8014E38C 0014B2EC 48 1C 4D B5 */ bl Translate__12CTransform4fFRC9CVector3f -/* 8014E390 0014B2F0 38 7F 00 34 */ addi r3, r31, 0x34 -/* 8014E394 0014B2F4 38 81 00 38 */ addi r4, r1, 0x38 -/* 8014E398 0014B2F8 48 1C 47 A9 */ bl __as__12CTransform4fFRC12CTransform4f -/* 8014E39C 0014B2FC 88 7F 00 E4 */ lbz r3, 0xe4(r31) -/* 8014E3A0 0014B300 38 80 00 01 */ li r4, 1 -/* 8014E3A4 0014B304 50 83 26 F6 */ rlwimi r3, r4, 4, 0x1b, 0x1b -/* 8014E3A8 0014B308 38 00 00 00 */ li r0, 0 -/* 8014E3AC 0014B30C 98 7F 00 E4 */ stb r3, 0xe4(r31) -/* 8014E3B0 0014B310 88 7F 00 E4 */ lbz r3, 0xe4(r31) -/* 8014E3B4 0014B314 50 83 1F 38 */ rlwimi r3, r4, 3, 0x1c, 0x1c -/* 8014E3B8 0014B318 98 7F 00 E4 */ stb r3, 0xe4(r31) -/* 8014E3BC 0014B31C 88 7F 00 E4 */ lbz r3, 0xe4(r31) -/* 8014E3C0 0014B320 50 83 17 7A */ rlwimi r3, r4, 2, 0x1d, 0x1d -/* 8014E3C4 0014B324 98 7F 00 E4 */ stb r3, 0xe4(r31) -/* 8014E3C8 0014B328 90 1F 05 A8 */ stw r0, 0x5a8(r31) -/* 8014E3CC 0014B32C 48 00 00 BC */ b lbl_8014E488 -lbl_8014E3D0: -/* 8014E3D0 0014B330 80 1F 05 A8 */ lwz r0, 0x5a8(r31) -/* 8014E3D4 0014B334 2C 00 00 00 */ cmpwi r0, 0 -/* 8014E3D8 0014B338 41 82 00 08 */ beq lbl_8014E3E0 -/* 8014E3DC 0014B33C 48 00 00 AC */ b lbl_8014E488 -lbl_8014E3E0: -/* 8014E3E0 0014B340 80 9F 04 50 */ lwz r4, 0x450(r31) -/* 8014E3E4 0014B344 80 04 02 B8 */ lwz r0, 0x2b8(r4) -/* 8014E3E8 0014B348 2C 00 00 02 */ cmpwi r0, 2 -/* 8014E3EC 0014B34C 40 82 00 10 */ bne lbl_8014E3FC -/* 8014E3F0 0014B350 38 00 00 01 */ li r0, 1 -/* 8014E3F4 0014B354 90 1F 05 A8 */ stw r0, 0x5a8(r31) -/* 8014E3F8 0014B358 48 00 00 90 */ b lbl_8014E488 -lbl_8014E3FC: -/* 8014E3FC 0014B35C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 8014E400 0014B360 C0 22 9D 8C */ lfs f1, lbl_805ABAAC@sda21(r2) -/* 8014E404 0014B364 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 8014E408 0014B368 C0 02 9D 90 */ lfs f0, lbl_805ABAB0@sda21(r2) -/* 8014E40C 0014B36C 3C 60 80 3E */ lis r3, lbl_803DAA50@ha -/* 8014E410 0014B370 90 01 00 20 */ stw r0, 0x20(r1) -/* 8014E414 0014B374 38 A3 AA 50 */ addi r5, r3, lbl_803DAA50@l -/* 8014E418 0014B378 38 60 00 03 */ li r3, 3 -/* 8014E41C 0014B37C 38 00 00 00 */ li r0, 0 -/* 8014E420 0014B380 3B E4 00 04 */ addi r31, r4, 4 -/* 8014E424 0014B384 90 61 00 24 */ stw r3, 0x24(r1) -/* 8014E428 0014B388 7F E3 FB 78 */ mr r3, r31 -/* 8014E42C 0014B38C 38 80 00 03 */ li r4, 3 -/* 8014E430 0014B390 90 A1 00 20 */ stw r5, 0x20(r1) -/* 8014E434 0014B394 D0 21 00 28 */ stfs f1, 0x28(r1) -/* 8014E438 0014B398 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 8014E43C 0014B39C D0 21 00 30 */ stfs f1, 0x30(r1) -/* 8014E440 0014B3A0 90 01 00 34 */ stw r0, 0x34(r1) -/* 8014E444 0014B3A4 4B FE 2F F5 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8014E448 0014B3A8 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8014E44C 0014B3AC 3C 60 80 3E */ lis r3, lbl_803DAA50@ha -/* 8014E450 0014B3B0 38 83 AA 50 */ addi r4, r3, lbl_803DAA50@l -/* 8014E454 0014B3B4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 8014E458 0014B3B8 90 1F 00 E0 */ stw r0, 0xe0(r31) -/* 8014E45C 0014B3BC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 8014E460 0014B3C0 80 A1 00 28 */ lwz r5, 0x28(r1) -/* 8014E464 0014B3C4 80 61 00 2C */ lwz r3, 0x2c(r1) -/* 8014E468 0014B3C8 90 BF 00 E4 */ stw r5, 0xe4(r31) -/* 8014E46C 0014B3CC 80 A1 00 30 */ lwz r5, 0x30(r1) -/* 8014E470 0014B3D0 90 7F 00 E8 */ stw r3, 0xe8(r31) -/* 8014E474 0014B3D4 80 61 00 34 */ lwz r3, 0x34(r1) -/* 8014E478 0014B3D8 90 BF 00 EC */ stw r5, 0xec(r31) -/* 8014E47C 0014B3DC 90 81 00 20 */ stw r4, 0x20(r1) -/* 8014E480 0014B3E0 90 7F 00 F0 */ stw r3, 0xf0(r31) -/* 8014E484 0014B3E4 90 01 00 20 */ stw r0, 0x20(r1) -lbl_8014E488: -/* 8014E488 0014B3E8 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 -/* 8014E48C 0014B3EC 80 01 00 84 */ lwz r0, 0x84(r1) -/* 8014E490 0014B3F0 CB E1 00 70 */ lfd f31, 0x70(r1) -/* 8014E494 0014B3F4 83 E1 00 6C */ lwz r31, 0x6c(r1) -/* 8014E498 0014B3F8 7C 08 03 A6 */ mtlr r0 -/* 8014E49C 0014B3FC 38 21 00 80 */ addi r1, r1, 0x80 -/* 8014E4A0 0014B400 4E 80 00 20 */ blr - -.global Dead__8CMetareeFR13CStateManager9EStateMsgf -Dead__8CMetareeFR13CStateManager9EStateMsgf: -/* 8014E4A4 0014B404 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8014E4A8 0014B408 7C 08 02 A6 */ mflr r0 -/* 8014E4AC 0014B40C 2C 05 00 00 */ cmpwi r5, 0 -/* 8014E4B0 0014B410 90 01 00 44 */ stw r0, 0x44(r1) -/* 8014E4B4 0014B414 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 8014E4B8 0014B418 7C 9F 23 78 */ mr r31, r4 -/* 8014E4BC 0014B41C 93 C1 00 38 */ stw r30, 0x38(r1) -/* 8014E4C0 0014B420 7C 7E 1B 78 */ mr r30, r3 -/* 8014E4C4 0014B424 41 82 00 08 */ beq lbl_8014E4CC -/* 8014E4C8 0014B428 48 00 00 7C */ b lbl_8014E544 -lbl_8014E4CC: -/* 8014E4CC 0014B42C 80 AD 8C 40 */ lwz r5, lbl_805A7800@sda21(r13) -/* 8014E4D0 0014B430 38 60 00 00 */ li r3, 0 -/* 8014E4D4 0014B434 38 80 00 01 */ li r4, 1 -/* 8014E4D8 0014B438 48 23 BA 1D */ bl __shl2i -/* 8014E4DC 0014B43C 39 20 00 00 */ li r9, 0 -/* 8014E4E0 0014B440 38 00 00 03 */ li r0, 3 -/* 8014E4E4 0014B444 90 81 00 24 */ stw r4, 0x24(r1) -/* 8014E4E8 0014B448 7F C5 F3 78 */ mr r5, r30 -/* 8014E4EC 0014B44C 38 81 00 0C */ addi r4, r1, 0xc -/* 8014E4F0 0014B450 38 C1 00 10 */ addi r6, r1, 0x10 -/* 8014E4F4 0014B454 90 61 00 20 */ stw r3, 0x20(r1) -/* 8014E4F8 0014B458 7F E3 FB 78 */ mr r3, r31 -/* 8014E4FC 0014B45C 38 FE 05 AC */ addi r7, r30, 0x5ac -/* 8014E500 0014B460 39 01 00 20 */ addi r8, r1, 0x20 -/* 8014E504 0014B464 91 21 00 2C */ stw r9, 0x2c(r1) -/* 8014E508 0014B468 91 21 00 28 */ stw r9, 0x28(r1) -/* 8014E50C 0014B46C 90 01 00 30 */ stw r0, 0x30(r1) -/* 8014E510 0014B470 C0 5E 00 60 */ lfs f2, 0x60(r30) -/* 8014E514 0014B474 C0 3E 00 50 */ lfs f1, 0x50(r30) -/* 8014E518 0014B478 C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 8014E51C 0014B47C D0 01 00 10 */ stfs f0, 0x10(r1) -/* 8014E520 0014B480 D0 21 00 14 */ stfs f1, 0x14(r1) -/* 8014E524 0014B484 D0 41 00 18 */ stfs f2, 0x18(r1) -/* 8014E528 0014B488 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8014E52C 0014B48C B0 01 00 08 */ sth r0, 8(r1) -/* 8014E530 0014B490 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8014E534 0014B494 4B EF A7 79 */ bl ApplyDamageToWorld__13CStateManagerF9TUniqueIdRC6CActorRC9CVector3fRC11CDamageInfoRC15CMaterialFilter -/* 8014E538 0014B498 7F C3 F3 78 */ mr r3, r30 -/* 8014E53C 0014B49C 7F E4 FB 78 */ mr r4, r31 -/* 8014E540 0014B4A0 4B F2 A4 C1 */ bl DeathDelete__10CPatternedFR13CStateManager -lbl_8014E544: -/* 8014E544 0014B4A4 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8014E548 0014B4A8 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 8014E54C 0014B4AC 83 C1 00 38 */ lwz r30, 0x38(r1) -/* 8014E550 0014B4B0 7C 08 03 A6 */ mtlr r0 -/* 8014E554 0014B4B4 38 21 00 40 */ addi r1, r1, 0x40 -/* 8014E558 0014B4B8 4E 80 00 20 */ blr - -.global Attack__8CMetareeFR13CStateManager9EStateMsgf -Attack__8CMetareeFR13CStateManager9EStateMsgf: -/* 8014E55C 0014B4BC 94 21 FF 80 */ stwu r1, -0x80(r1) -/* 8014E560 0014B4C0 7C 08 02 A6 */ mflr r0 -/* 8014E564 0014B4C4 90 01 00 84 */ stw r0, 0x84(r1) -/* 8014E568 0014B4C8 DB E1 00 70 */ stfd f31, 0x70(r1) -/* 8014E56C 0014B4CC F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 -/* 8014E570 0014B4D0 DB C1 00 60 */ stfd f30, 0x60(r1) -/* 8014E574 0014B4D4 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 -/* 8014E578 0014B4D8 DB A1 00 50 */ stfd f29, 0x50(r1) -/* 8014E57C 0014B4DC F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 -/* 8014E580 0014B4E0 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 8014E584 0014B4E4 2C 05 00 01 */ cmpwi r5, 1 -/* 8014E588 0014B4E8 7C 7F 1B 78 */ mr r31, r3 -/* 8014E58C 0014B4EC 41 82 00 FC */ beq lbl_8014E688 -/* 8014E590 0014B4F0 40 80 01 34 */ bge lbl_8014E6C4 -/* 8014E594 0014B4F4 2C 05 00 00 */ cmpwi r5, 0 -/* 8014E598 0014B4F8 40 80 00 0C */ bge lbl_8014E5A4 -/* 8014E59C 0014B4FC 48 00 01 28 */ b lbl_8014E6C4 -/* 8014E5A0 0014B500 48 00 01 24 */ b lbl_8014E6C4 -lbl_8014E5A4: -/* 8014E5A4 0014B504 38 00 00 00 */ li r0, 0 -/* 8014E5A8 0014B508 38 61 00 30 */ addi r3, r1, 0x30 -/* 8014E5AC 0014B50C 90 1F 05 A8 */ stw r0, 0x5a8(r31) -/* 8014E5B0 0014B510 38 81 00 24 */ addi r4, r1, 0x24 -/* 8014E5B4 0014B514 C0 3F 05 88 */ lfs f1, 0x588(r31) -/* 8014E5B8 0014B518 C0 1F 00 50 */ lfs f0, 0x50(r31) -/* 8014E5BC 0014B51C C0 7F 05 8C */ lfs f3, 0x58c(r31) -/* 8014E5C0 0014B520 C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 8014E5C4 0014B524 EC 81 00 28 */ fsubs f4, f1, f0 -/* 8014E5C8 0014B528 C0 3F 05 84 */ lfs f1, 0x584(r31) -/* 8014E5CC 0014B52C C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 8014E5D0 0014B530 EC 43 10 28 */ fsubs f2, f3, f2 -/* 8014E5D4 0014B534 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8014E5D8 0014B538 D0 81 00 28 */ stfs f4, 0x28(r1) -/* 8014E5DC 0014B53C D0 41 00 2C */ stfs f2, 0x2c(r1) -/* 8014E5E0 0014B540 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 8014E5E4 0014B544 48 1C 62 6D */ bl AsNormalized__9CVector3fCFv -/* 8014E5E8 0014B548 C3 A1 00 30 */ lfs f29, 0x30(r1) -/* 8014E5EC 0014B54C 7F E3 FB 78 */ mr r3, r31 -/* 8014E5F0 0014B550 C0 1F 05 80 */ lfs f0, 0x580(r31) -/* 8014E5F4 0014B554 38 81 00 18 */ addi r4, r1, 0x18 -/* 8014E5F8 0014B558 C3 E1 00 34 */ lfs f31, 0x34(r1) -/* 8014E5FC 0014B55C C3 C1 00 38 */ lfs f30, 0x38(r1) -/* 8014E600 0014B560 EC 40 07 72 */ fmuls f2, f0, f29 -/* 8014E604 0014B564 EC 20 07 F2 */ fmuls f1, f0, f31 -/* 8014E608 0014B568 EC 00 07 B2 */ fmuls f0, f0, f30 -/* 8014E60C 0014B56C D0 41 00 18 */ stfs f2, 0x18(r1) -/* 8014E610 0014B570 D0 21 00 1C */ stfs f1, 0x1c(r1) -/* 8014E614 0014B574 D0 01 00 20 */ stfs f0, 0x20(r1) -/* 8014E618 0014B578 4B FC C6 89 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -/* 8014E61C 0014B57C C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 8014E620 0014B580 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8014E624 0014B584 C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 8014E628 0014B588 38 C3 66 A0 */ addi r6, r3, skZero3f@l -/* 8014E62C 0014B58C C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 8014E630 0014B590 38 61 00 08 */ addi r3, r1, 8 -/* 8014E634 0014B594 A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) -/* 8014E638 0014B598 38 A1 00 0C */ addi r5, r1, 0xc -/* 8014E63C 0014B59C D0 01 00 0C */ stfs f0, 0xc(r1) -/* 8014E640 0014B5A0 38 E0 00 01 */ li r7, 1 -/* 8014E644 0014B5A4 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) -/* 8014E648 0014B5A8 39 00 00 00 */ li r8, 0 -/* 8014E64C 0014B5AC D0 21 00 10 */ stfs f1, 0x10(r1) -/* 8014E650 0014B5B0 D0 41 00 14 */ stfs f2, 0x14(r1) -/* 8014E654 0014B5B4 A0 9F 05 C8 */ lhz r4, 0x5c8(r31) -/* 8014E658 0014B5B8 48 19 BC 59 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi -/* 8014E65C 0014B5BC 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8014E660 0014B5C0 38 80 00 03 */ li r4, 3 -/* 8014E664 0014B5C4 4B FE C3 75 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -/* 8014E668 0014B5C8 C0 1F 05 80 */ lfs f0, 0x580(r31) -/* 8014E66C 0014B5CC EC 40 07 72 */ fmuls f2, f0, f29 -/* 8014E670 0014B5D0 EC 20 07 F2 */ fmuls f1, f0, f31 -/* 8014E674 0014B5D4 EC 00 07 B2 */ fmuls f0, f0, f30 -/* 8014E678 0014B5D8 D0 5F 05 9C */ stfs f2, 0x59c(r31) -/* 8014E67C 0014B5DC D0 3F 05 A0 */ stfs f1, 0x5a0(r31) -/* 8014E680 0014B5E0 D0 1F 05 A4 */ stfs f0, 0x5a4(r31) -/* 8014E684 0014B5E4 48 00 00 40 */ b lbl_8014E6C4 -lbl_8014E688: -/* 8014E688 0014B5E8 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8014E68C 0014B5EC 4B FE BA 41 */ bl GetPercentageFrozen__15CBodyControllerCFv -/* 8014E690 0014B5F0 C0 02 9D 8C */ lfs f0, lbl_805ABAAC@sda21(r2) -/* 8014E694 0014B5F4 FC 00 08 00 */ fcmpu cr0, f0, f1 -/* 8014E698 0014B5F8 40 82 00 14 */ bne lbl_8014E6AC -/* 8014E69C 0014B5FC 7F E3 FB 78 */ mr r3, r31 -/* 8014E6A0 0014B600 38 9F 05 9C */ addi r4, r31, 0x59c -/* 8014E6A4 0014B604 4B FC C5 FD */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -/* 8014E6A8 0014B608 48 00 00 1C */ b lbl_8014E6C4 -lbl_8014E6AC: -/* 8014E6AC 0014B60C 7F E3 FB 78 */ mr r3, r31 -/* 8014E6B0 0014B610 4B FC CC C9 */ bl Stop__13CPhysicsActorFv -/* 8014E6B4 0014B614 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8014E6B8 0014B618 7F E3 FB 78 */ mr r3, r31 -/* 8014E6BC 0014B61C 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 8014E6C0 0014B620 4B FC C5 E1 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -lbl_8014E6C4: -/* 8014E6C4 0014B624 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 -/* 8014E6C8 0014B628 CB E1 00 70 */ lfd f31, 0x70(r1) -/* 8014E6CC 0014B62C E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 -/* 8014E6D0 0014B630 CB C1 00 60 */ lfd f30, 0x60(r1) -/* 8014E6D4 0014B634 E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0 -/* 8014E6D8 0014B638 CB A1 00 50 */ lfd f29, 0x50(r1) -/* 8014E6DC 0014B63C 80 01 00 84 */ lwz r0, 0x84(r1) -/* 8014E6E0 0014B640 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 8014E6E4 0014B644 7C 08 03 A6 */ mtlr r0 -/* 8014E6E8 0014B648 38 21 00 80 */ addi r1, r1, 0x80 -/* 8014E6EC 0014B64C 4E 80 00 20 */ blr - -.global Halt__8CMetareeFR13CStateManager9EStateMsgf -Halt__8CMetareeFR13CStateManager9EStateMsgf: -/* 8014E6F0 0014B650 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 8014E6F4 0014B654 7C 08 02 A6 */ mflr r0 -/* 8014E6F8 0014B658 2C 05 00 00 */ cmpwi r5, 0 -/* 8014E6FC 0014B65C 90 01 00 54 */ stw r0, 0x54(r1) -/* 8014E700 0014B660 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 8014E704 0014B664 7C 9F 23 78 */ mr r31, r4 -/* 8014E708 0014B668 93 C1 00 48 */ stw r30, 0x48(r1) -/* 8014E70C 0014B66C 7C 7E 1B 78 */ mr r30, r3 -/* 8014E710 0014B670 41 82 00 0C */ beq lbl_8014E71C -/* 8014E714 0014B674 41 80 00 E4 */ blt lbl_8014E7F8 -/* 8014E718 0014B678 48 00 00 E0 */ b lbl_8014E7F8 -lbl_8014E71C: -/* 8014E71C 0014B67C 4B FC CC 5D */ bl Stop__13CPhysicsActorFv -/* 8014E720 0014B680 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8014E724 0014B684 7F C3 F3 78 */ mr r3, r30 -/* 8014E728 0014B688 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 8014E72C 0014B68C 4B FC C5 75 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -/* 8014E730 0014B690 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8014E734 0014B694 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) -/* 8014E738 0014B698 38 80 00 02 */ li r4, 2 -/* 8014E73C 0014B69C D0 1E 01 50 */ stfs f0, 0x150(r30) -/* 8014E740 0014B6A0 C0 03 00 04 */ lfs f0, 4(r3) -/* 8014E744 0014B6A4 D0 1E 01 54 */ stfs f0, 0x154(r30) -/* 8014E748 0014B6A8 C0 03 00 08 */ lfs f0, 8(r3) -/* 8014E74C 0014B6AC D0 1E 01 58 */ stfs f0, 0x158(r30) -/* 8014E750 0014B6B0 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 8014E754 0014B6B4 4B FE C2 85 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -/* 8014E758 0014B6B8 80 9F 08 4C */ lwz r4, 0x84c(r31) -/* 8014E75C 0014B6BC 3C 60 80 5A */ lis r3, lbl_805A66F4@ha -/* 8014E760 0014B6C0 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l -/* 8014E764 0014B6C4 C0 1E 05 74 */ lfs f0, 0x574(r30) -/* 8014E768 0014B6C8 C0 24 00 40 */ lfs f1, 0x40(r4) -/* 8014E76C 0014B6CC 38 61 00 14 */ addi r3, r1, 0x14 -/* 8014E770 0014B6D0 C0 84 00 50 */ lfs f4, 0x50(r4) -/* 8014E774 0014B6D4 38 BE 05 84 */ addi r5, r30, 0x584 -/* 8014E778 0014B6D8 C0 7E 05 78 */ lfs f3, 0x578(r30) -/* 8014E77C 0014B6DC EC 01 00 2A */ fadds f0, f1, f0 -/* 8014E780 0014B6E0 C0 44 00 60 */ lfs f2, 0x60(r4) -/* 8014E784 0014B6E4 38 81 00 08 */ addi r4, r1, 8 -/* 8014E788 0014B6E8 C0 3E 05 7C */ lfs f1, 0x57c(r30) -/* 8014E78C 0014B6EC EC 64 18 2A */ fadds f3, f4, f3 -/* 8014E790 0014B6F0 D0 1E 05 84 */ stfs f0, 0x584(r30) -/* 8014E794 0014B6F4 EC 02 08 2A */ fadds f0, f2, f1 -/* 8014E798 0014B6F8 D0 7E 05 88 */ stfs f3, 0x588(r30) -/* 8014E79C 0014B6FC D0 1E 05 8C */ stfs f0, 0x58c(r30) -/* 8014E7A0 0014B700 C0 5E 00 60 */ lfs f2, 0x60(r30) -/* 8014E7A4 0014B704 C0 3E 00 50 */ lfs f1, 0x50(r30) -/* 8014E7A8 0014B708 C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 8014E7AC 0014B70C D0 01 00 08 */ stfs f0, 8(r1) -/* 8014E7B0 0014B710 D0 21 00 0C */ stfs f1, 0xc(r1) -/* 8014E7B4 0014B714 D0 41 00 10 */ stfs f2, 0x10(r1) -/* 8014E7B8 0014B718 48 1C 53 59 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f -/* 8014E7BC 0014B71C 38 7E 00 34 */ addi r3, r30, 0x34 -/* 8014E7C0 0014B720 38 81 00 14 */ addi r4, r1, 0x14 -/* 8014E7C4 0014B724 48 1C 43 7D */ bl __as__12CTransform4fFRC12CTransform4f -/* 8014E7C8 0014B728 88 1E 00 E4 */ lbz r0, 0xe4(r30) -/* 8014E7CC 0014B72C 38 60 00 01 */ li r3, 1 -/* 8014E7D0 0014B730 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 8014E7D4 0014B734 98 1E 00 E4 */ stb r0, 0xe4(r30) -/* 8014E7D8 0014B738 88 1E 00 E4 */ lbz r0, 0xe4(r30) -/* 8014E7DC 0014B73C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 8014E7E0 0014B740 98 1E 00 E4 */ stb r0, 0xe4(r30) -/* 8014E7E4 0014B744 88 1E 00 E4 */ lbz r0, 0xe4(r30) -/* 8014E7E8 0014B748 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d -/* 8014E7EC 0014B74C 98 1E 00 E4 */ stb r0, 0xe4(r30) -/* 8014E7F0 0014B750 C0 1E 05 6C */ lfs f0, 0x56c(r30) -/* 8014E7F4 0014B754 D0 1E 03 40 */ stfs f0, 0x340(r30) -lbl_8014E7F8: -/* 8014E7F8 0014B758 80 01 00 54 */ lwz r0, 0x54(r1) -/* 8014E7FC 0014B75C 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 8014E800 0014B760 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 8014E804 0014B764 7C 08 03 A6 */ mtlr r0 -/* 8014E808 0014B768 38 21 00 50 */ addi r1, r1, 0x50 -/* 8014E80C 0014B76C 4E 80 00 20 */ blr - -.global Active__8CMetareeFR13CStateManager9EStateMsgf -Active__8CMetareeFR13CStateManager9EStateMsgf: -/* 8014E810 0014B770 94 21 FF 90 */ stwu r1, -0x70(r1) -/* 8014E814 0014B774 7C 08 02 A6 */ mflr r0 -/* 8014E818 0014B778 90 01 00 74 */ stw r0, 0x74(r1) -/* 8014E81C 0014B77C DB E1 00 60 */ stfd f31, 0x60(r1) -/* 8014E820 0014B780 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 -/* 8014E824 0014B784 93 E1 00 5C */ stw r31, 0x5c(r1) -/* 8014E828 0014B788 93 C1 00 58 */ stw r30, 0x58(r1) -/* 8014E82C 0014B78C 2C 05 00 01 */ cmpwi r5, 1 -/* 8014E830 0014B790 7C 7F 1B 78 */ mr r31, r3 -/* 8014E834 0014B794 41 82 01 54 */ beq lbl_8014E988 -/* 8014E838 0014B798 40 80 00 10 */ bge lbl_8014E848 -/* 8014E83C 0014B79C 2C 05 00 00 */ cmpwi r5, 0 -/* 8014E840 0014B7A0 40 80 00 14 */ bge lbl_8014E854 -/* 8014E844 0014B7A4 48 00 01 CC */ b lbl_8014EA10 -lbl_8014E848: -/* 8014E848 0014B7A8 2C 05 00 03 */ cmpwi r5, 3 -/* 8014E84C 0014B7AC 40 80 01 C4 */ bge lbl_8014EA10 -/* 8014E850 0014B7B0 48 00 01 A4 */ b lbl_8014E9F4 -lbl_8014E854: -/* 8014E854 0014B7B4 39 20 00 00 */ li r9, 0 -/* 8014E858 0014B7B8 88 1F 04 00 */ lbz r0, 0x400(r31) -/* 8014E85C 0014B7BC 51 20 3E 30 */ rlwimi r0, r9, 7, 0x18, 0x18 -/* 8014E860 0014B7C0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 8014E864 0014B7C4 98 1F 04 00 */ stb r0, 0x400(r31) -/* 8014E868 0014B7C8 39 03 AA 68 */ addi r8, r3, lbl_803DAA68@l -/* 8014E86C 0014B7CC 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha -/* 8014E870 0014B7D0 38 E0 00 0E */ li r7, 0xe -/* 8014E874 0014B7D4 C0 62 9D 8C */ lfs f3, lbl_805ABAAC@sda21(r2) -/* 8014E878 0014B7D8 38 A0 FF FF */ li r5, -1 -/* 8014E87C 0014B7DC C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 8014E880 0014B7E0 38 00 00 01 */ li r0, 1 -/* 8014E884 0014B7E4 C0 9F 00 50 */ lfs f4, 0x50(r31) -/* 8014E888 0014B7E8 38 C3 A9 F0 */ addi r6, r3, lbl_803DA9F0@l -/* 8014E88C 0014B7EC EC 00 18 28 */ fsubs f0, f0, f3 -/* 8014E890 0014B7F0 C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 8014E894 0014B7F4 C0 3F 05 70 */ lfs f1, 0x570(r31) -/* 8014E898 0014B7F8 EC 64 18 28 */ fsubs f3, f4, f3 -/* 8014E89C 0014B7FC 80 61 00 48 */ lwz r3, 0x48(r1) -/* 8014E8A0 0014B800 50 03 F8 00 */ rlwimi r3, r0, 0x1f, 0, 0 -/* 8014E8A4 0014B804 D0 1F 05 84 */ stfs f0, 0x584(r31) -/* 8014E8A8 0014B808 EC 02 08 28 */ fsubs f0, f2, f1 -/* 8014E8AC 0014B80C 7C 60 1B 78 */ mr r0, r3 -/* 8014E8B0 0014B810 38 80 00 0E */ li r4, 0xe -/* 8014E8B4 0014B814 D0 7F 05 88 */ stfs f3, 0x588(r31) -/* 8014E8B8 0014B818 51 20 F0 42 */ rlwimi r0, r9, 0x1e, 1, 1 -/* 8014E8BC 0014B81C D0 1F 05 8C */ stfs f0, 0x58c(r31) -/* 8014E8C0 0014B820 91 01 00 2C */ stw r8, 0x2c(r1) -/* 8014E8C4 0014B824 C0 5F 05 84 */ lfs f2, 0x584(r31) -/* 8014E8C8 0014B828 90 61 00 48 */ stw r3, 0x48(r1) -/* 8014E8CC 0014B82C C0 3F 05 88 */ lfs f1, 0x588(r31) -/* 8014E8D0 0014B830 C0 1F 05 8C */ lfs f0, 0x58c(r31) -/* 8014E8D4 0014B834 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8014E8D8 0014B838 90 E1 00 30 */ stw r7, 0x30(r1) -/* 8014E8DC 0014B83C 3B C3 00 04 */ addi r30, r3, 4 -/* 8014E8E0 0014B840 90 C1 00 2C */ stw r6, 0x2c(r1) -/* 8014E8E4 0014B844 7F C3 F3 78 */ mr r3, r30 -/* 8014E8E8 0014B848 91 21 00 34 */ stw r9, 0x34(r1) -/* 8014E8EC 0014B84C D0 41 00 38 */ stfs f2, 0x38(r1) -/* 8014E8F0 0014B850 D0 21 00 3C */ stfs f1, 0x3c(r1) -/* 8014E8F4 0014B854 D0 01 00 40 */ stfs f0, 0x40(r1) -/* 8014E8F8 0014B858 90 A1 00 44 */ stw r5, 0x44(r1) -/* 8014E8FC 0014B85C 90 01 00 48 */ stw r0, 0x48(r1) -/* 8014E900 0014B860 4B FE 2B 39 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8014E904 0014B864 80 01 00 30 */ lwz r0, 0x30(r1) -/* 8014E908 0014B868 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha -/* 8014E90C 0014B86C 38 A3 A9 F0 */ addi r5, r3, lbl_803DA9F0@l -/* 8014E910 0014B870 3C 80 80 3E */ lis r4, lbl_803DAA68@ha -/* 8014E914 0014B874 90 1E 01 90 */ stw r0, 0x190(r30) -/* 8014E918 0014B878 7F E3 FB 78 */ mr r3, r31 -/* 8014E91C 0014B87C 80 C1 00 34 */ lwz r6, 0x34(r1) -/* 8014E920 0014B880 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l -/* 8014E924 0014B884 80 81 00 38 */ lwz r4, 0x38(r1) -/* 8014E928 0014B888 90 DE 01 94 */ stw r6, 0x194(r30) -/* 8014E92C 0014B88C 80 C1 00 3C */ lwz r6, 0x3c(r1) -/* 8014E930 0014B890 90 9E 01 98 */ stw r4, 0x198(r30) -/* 8014E934 0014B894 80 81 00 40 */ lwz r4, 0x40(r1) -/* 8014E938 0014B898 90 DE 01 9C */ stw r6, 0x19c(r30) -/* 8014E93C 0014B89C 80 C1 00 44 */ lwz r6, 0x44(r1) -/* 8014E940 0014B8A0 90 9E 01 A0 */ stw r4, 0x1a0(r30) -/* 8014E944 0014B8A4 80 81 00 48 */ lwz r4, 0x48(r1) -/* 8014E948 0014B8A8 90 DE 01 A4 */ stw r6, 0x1a4(r30) -/* 8014E94C 0014B8AC 90 9E 01 A8 */ stw r4, 0x1a8(r30) -/* 8014E950 0014B8B0 81 9F 00 00 */ lwz r12, 0(r31) -/* 8014E954 0014B8B4 90 A1 00 2C */ stw r5, 0x2c(r1) -/* 8014E958 0014B8B8 81 8C 02 BC */ lwz r12, 0x2bc(r12) -/* 8014E95C 0014B8BC 90 01 00 2C */ stw r0, 0x2c(r1) -/* 8014E960 0014B8C0 C3 FF 00 E8 */ lfs f31, 0xe8(r31) -/* 8014E964 0014B8C4 7D 89 03 A6 */ mtctr r12 -/* 8014E968 0014B8C8 4E 80 04 21 */ bctrl -/* 8014E96C 0014B8CC FC 20 08 50 */ fneg f1, f1 -/* 8014E970 0014B8D0 C0 02 9D 8C */ lfs f0, lbl_805ABAAC@sda21(r2) -/* 8014E974 0014B8D4 D0 1F 01 50 */ stfs f0, 0x150(r31) -/* 8014E978 0014B8D8 EC 21 07 F2 */ fmuls f1, f1, f31 -/* 8014E97C 0014B8DC D0 1F 01 54 */ stfs f0, 0x154(r31) -/* 8014E980 0014B8E0 D0 3F 01 58 */ stfs f1, 0x158(r31) -/* 8014E984 0014B8E4 48 00 00 8C */ b lbl_8014EA10 -lbl_8014E988: -/* 8014E988 0014B8E8 80 A4 08 4C */ lwz r5, 0x84c(r4) -/* 8014E98C 0014B8EC 38 61 00 20 */ addi r3, r1, 0x20 -/* 8014E990 0014B8F0 C0 1F 00 60 */ lfs f0, 0x60(r31) -/* 8014E994 0014B8F4 38 81 00 14 */ addi r4, r1, 0x14 -/* 8014E998 0014B8F8 C0 A5 00 60 */ lfs f5, 0x60(r5) -/* 8014E99C 0014B8FC C0 85 00 50 */ lfs f4, 0x50(r5) -/* 8014E9A0 0014B900 C0 5F 00 50 */ lfs f2, 0x50(r31) -/* 8014E9A4 0014B904 EC 25 00 28 */ fsubs f1, f5, f0 -/* 8014E9A8 0014B908 C0 05 00 40 */ lfs f0, 0x40(r5) -/* 8014E9AC 0014B90C C0 7F 00 40 */ lfs f3, 0x40(r31) -/* 8014E9B0 0014B910 EC 44 10 28 */ fsubs f2, f4, f2 -/* 8014E9B4 0014B914 D0 01 00 08 */ stfs f0, 8(r1) -/* 8014E9B8 0014B918 EC 00 18 28 */ fsubs f0, f0, f3 -/* 8014E9BC 0014B91C D0 81 00 0C */ stfs f4, 0xc(r1) -/* 8014E9C0 0014B920 D0 A1 00 10 */ stfs f5, 0x10(r1) -/* 8014E9C4 0014B924 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 8014E9C8 0014B928 D0 41 00 18 */ stfs f2, 0x18(r1) -/* 8014E9CC 0014B92C D0 21 00 1C */ stfs f1, 0x1c(r1) -/* 8014E9D0 0014B930 48 1C 5E 81 */ bl AsNormalized__9CVector3fCFv -/* 8014E9D4 0014B934 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8014E9D8 0014B938 C0 01 00 20 */ lfs f0, 0x20(r1) -/* 8014E9DC 0014B93C D0 03 00 1C */ stfs f0, 0x1c(r3) -/* 8014E9E0 0014B940 C0 01 00 24 */ lfs f0, 0x24(r1) -/* 8014E9E4 0014B944 D0 03 00 20 */ stfs f0, 0x20(r3) -/* 8014E9E8 0014B948 C0 01 00 28 */ lfs f0, 0x28(r1) -/* 8014E9EC 0014B94C D0 03 00 24 */ stfs f0, 0x24(r3) -/* 8014E9F0 0014B950 48 00 00 20 */ b lbl_8014EA10 -lbl_8014E9F4: -/* 8014E9F4 0014B954 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8014E9F8 0014B958 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) -/* 8014E9FC 0014B95C D0 1F 01 50 */ stfs f0, 0x150(r31) -/* 8014EA00 0014B960 C0 03 00 04 */ lfs f0, 4(r3) -/* 8014EA04 0014B964 D0 1F 01 54 */ stfs f0, 0x154(r31) -/* 8014EA08 0014B968 C0 03 00 08 */ lfs f0, 8(r3) -/* 8014EA0C 0014B96C D0 1F 01 58 */ stfs f0, 0x158(r31) -lbl_8014EA10: -/* 8014EA10 0014B970 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 -/* 8014EA14 0014B974 80 01 00 74 */ lwz r0, 0x74(r1) -/* 8014EA18 0014B978 CB E1 00 60 */ lfd f31, 0x60(r1) -/* 8014EA1C 0014B97C 83 E1 00 5C */ lwz r31, 0x5c(r1) -/* 8014EA20 0014B980 83 C1 00 58 */ lwz r30, 0x58(r1) -/* 8014EA24 0014B984 7C 08 03 A6 */ mtlr r0 -/* 8014EA28 0014B988 38 21 00 70 */ addi r1, r1, 0x70 -/* 8014EA2C 0014B98C 4E 80 00 20 */ blr - -.global InActive__8CMetareeFR13CStateManager9EStateMsgf -InActive__8CMetareeFR13CStateManager9EStateMsgf: -/* 8014EA30 0014B990 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8014EA34 0014B994 7C 08 02 A6 */ mflr r0 -/* 8014EA38 0014B998 2C 05 00 01 */ cmpwi r5, 1 -/* 8014EA3C 0014B99C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014EA40 0014B9A0 41 82 00 5C */ beq lbl_8014EA9C -/* 8014EA44 0014B9A4 40 80 00 10 */ bge lbl_8014EA54 -/* 8014EA48 0014B9A8 2C 05 00 00 */ cmpwi r5, 0 -/* 8014EA4C 0014B9AC 40 80 00 14 */ bge lbl_8014EA60 -/* 8014EA50 0014B9B0 48 00 00 4C */ b lbl_8014EA9C -lbl_8014EA54: -/* 8014EA54 0014B9B4 2C 05 00 03 */ cmpwi r5, 3 -/* 8014EA58 0014B9B8 40 80 00 44 */ bge lbl_8014EA9C -/* 8014EA5C 0014B9BC 48 00 00 30 */ b lbl_8014EA8C -lbl_8014EA60: -/* 8014EA60 0014B9C0 88 03 05 CA */ lbz r0, 0x5ca(r3) -/* 8014EA64 0014B9C4 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f -/* 8014EA68 0014B9C8 40 82 00 14 */ bne lbl_8014EA7C -/* 8014EA6C 0014B9CC 80 63 04 50 */ lwz r3, 0x450(r3) -/* 8014EA70 0014B9D0 38 80 00 01 */ li r4, 1 -/* 8014EA74 0014B9D4 4B FE BF 65 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -/* 8014EA78 0014B9D8 48 00 00 24 */ b lbl_8014EA9C -lbl_8014EA7C: -/* 8014EA7C 0014B9DC 80 63 04 50 */ lwz r3, 0x450(r3) -/* 8014EA80 0014B9E0 38 80 00 00 */ li r4, 0 -/* 8014EA84 0014B9E4 4B FE BF 55 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -/* 8014EA88 0014B9E8 48 00 00 14 */ b lbl_8014EA9C -lbl_8014EA8C: -/* 8014EA8C 0014B9EC 88 03 05 CA */ lbz r0, 0x5ca(r3) -/* 8014EA90 0014B9F0 38 80 00 01 */ li r4, 1 -/* 8014EA94 0014B9F4 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a -/* 8014EA98 0014B9F8 98 03 05 CA */ stb r0, 0x5ca(r3) -lbl_8014EA9C: -/* 8014EA9C 0014B9FC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014EAA0 0014BA00 7C 08 03 A6 */ mtlr r0 -/* 8014EAA4 0014BA04 38 21 00 10 */ addi r1, r1, 0x10 -/* 8014EAA8 0014BA08 4E 80 00 20 */ blr - -.global InRange__8CMetareeFR13CStateManagerf -InRange__8CMetareeFR13CStateManagerf: -/* 8014EAAC 0014BA0C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8014EAB0 0014BA10 7C 08 02 A6 */ mflr r0 -/* 8014EAB4 0014BA14 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014EAB8 0014BA18 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8014EABC 0014BA1C 3B E0 00 00 */ li r31, 0 -/* 8014EAC0 0014BA20 88 03 05 CA */ lbz r0, 0x5ca(r3) -/* 8014EAC4 0014BA24 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 8014EAC8 0014BA28 40 82 00 10 */ bne lbl_8014EAD8 -/* 8014EACC 0014BA2C 48 0A 7A 01 */ bl InRange__10CPatternedFR13CStateManagerf -/* 8014EAD0 0014BA30 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8014EAD4 0014BA34 41 82 00 08 */ beq lbl_8014EADC -lbl_8014EAD8: -/* 8014EAD8 0014BA38 3B E0 00 01 */ li r31, 1 -lbl_8014EADC: -/* 8014EADC 0014BA3C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014EAE0 0014BA40 7F E3 FB 78 */ mr r3, r31 -/* 8014EAE4 0014BA44 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8014EAE8 0014BA48 7C 08 03 A6 */ mtlr r0 -/* 8014EAEC 0014BA4C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8014EAF0 0014BA50 4E 80 00 20 */ blr - -.global ShouldAttack__8CMetareeFR13CStateManagerf -ShouldAttack__8CMetareeFR13CStateManagerf: -/* 8014EAF4 0014BA54 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8014EAF8 0014BA58 C0 63 00 60 */ lfs f3, 0x60(r3) -/* 8014EAFC 0014BA5C C0 03 05 8C */ lfs f0, 0x58c(r3) -/* 8014EB00 0014BA60 C0 43 00 50 */ lfs f2, 0x50(r3) -/* 8014EB04 0014BA64 C0 23 00 40 */ lfs f1, 0x40(r3) -/* 8014EB08 0014BA68 FC 03 00 40 */ fcmpo cr0, f3, f0 -/* 8014EB0C 0014BA6C D0 41 00 0C */ stfs f2, 0xc(r1) -/* 8014EB10 0014BA70 D0 21 00 08 */ stfs f1, 8(r1) -/* 8014EB14 0014BA74 D0 61 00 10 */ stfs f3, 0x10(r1) -/* 8014EB18 0014BA78 7C 00 00 26 */ mfcr r0 -/* 8014EB1C 0014BA7C 54 03 0F FE */ srwi r3, r0, 0x1f -/* 8014EB20 0014BA80 38 21 00 20 */ addi r1, r1, 0x20 -/* 8014EB24 0014BA84 4E 80 00 20 */ blr - -.global Touch__8CMetareeFR6CActorR13CStateManager -Touch__8CMetareeFR6CActorR13CStateManager: -/* 8014EB28 0014BA88 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8014EB2C 0014BA8C 7C 08 02 A6 */ mflr r0 -/* 8014EB30 0014BA90 90 01 00 24 */ stw r0, 0x24(r1) -/* 8014EB34 0014BA94 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8014EB38 0014BA98 7C BF 2B 78 */ mr r31, r5 -/* 8014EB3C 0014BA9C 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8014EB40 0014BAA0 7C 7E 1B 78 */ mr r30, r3 -/* 8014EB44 0014BAA4 88 03 04 00 */ lbz r0, 0x400(r3) -/* 8014EB48 0014BAA8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 8014EB4C 0014BAAC 41 82 00 6C */ beq lbl_8014EBB8 -/* 8014EB50 0014BAB0 38 61 00 08 */ addi r3, r1, 8 -/* 8014EB54 0014BAB4 4B F5 EC 25 */ bl "__ct__29TCastToPtr<15CGameProjectile>FR7CEntity" -/* 8014EB58 0014BAB8 80 A3 00 04 */ lwz r5, 4(r3) -/* 8014EB5C 0014BABC 28 05 00 00 */ cmplwi r5, 0 -/* 8014EB60 0014BAC0 41 82 00 58 */ beq lbl_8014EBB8 -/* 8014EB64 0014BAC4 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8014EB68 0014BAC8 A0 85 00 EC */ lhz r4, 0xec(r5) -/* 8014EB6C 0014BACC A0 03 00 08 */ lhz r0, 8(r3) -/* 8014EB70 0014BAD0 7C 04 00 40 */ cmplw r4, r0 -/* 8014EB74 0014BAD4 40 82 00 44 */ bne lbl_8014EBB8 -/* 8014EB78 0014BAD8 88 1E 04 00 */ lbz r0, 0x400(r30) -/* 8014EB7C 0014BADC 38 60 00 01 */ li r3, 1 -/* 8014EB80 0014BAE0 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 8014EB84 0014BAE4 98 1E 04 00 */ stb r0, 0x400(r30) -/* 8014EB88 0014BAE8 C0 25 00 40 */ lfs f1, 0x40(r5) -/* 8014EB8C 0014BAEC C0 05 02 98 */ lfs f0, 0x298(r5) -/* 8014EB90 0014BAF0 C0 85 00 50 */ lfs f4, 0x50(r5) -/* 8014EB94 0014BAF4 C0 65 02 9C */ lfs f3, 0x29c(r5) -/* 8014EB98 0014BAF8 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8014EB9C 0014BAFC C0 45 00 60 */ lfs f2, 0x60(r5) -/* 8014EBA0 0014BB00 C0 25 02 A0 */ lfs f1, 0x2a0(r5) -/* 8014EBA4 0014BB04 EC 64 18 28 */ fsubs f3, f4, f3 -/* 8014EBA8 0014BB08 D0 1E 05 90 */ stfs f0, 0x590(r30) -/* 8014EBAC 0014BB0C EC 02 08 28 */ fsubs f0, f2, f1 -/* 8014EBB0 0014BB10 D0 7E 05 94 */ stfs f3, 0x594(r30) -/* 8014EBB4 0014BB14 D0 1E 05 98 */ stfs f0, 0x598(r30) -lbl_8014EBB8: -/* 8014EBB8 0014BB18 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8014EBBC 0014BB1C 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8014EBC0 0014BB20 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8014EBC4 0014BB24 7C 08 03 A6 */ mtlr r0 -/* 8014EBC8 0014BB28 38 21 00 20 */ addi r1, r1, 0x20 -/* 8014EBCC 0014BB2C 4E 80 00 20 */ blr - -.global CollidedWith__8CMetareeFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager -CollidedWith__8CMetareeFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager: -/* 8014EBD0 0014BB30 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8014EBD4 0014BB34 7C 08 02 A6 */ mflr r0 -/* 8014EBD8 0014BB38 90 01 00 44 */ stw r0, 0x44(r1) -/* 8014EBDC 0014BB3C 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 8014EBE0 0014BB40 7C DF 33 78 */ mr r31, r6 -/* 8014EBE4 0014BB44 93 C1 00 38 */ stw r30, 0x38(r1) -/* 8014EBE8 0014BB48 7C 7E 1B 78 */ mr r30, r3 -/* 8014EBEC 0014BB4C 88 03 04 00 */ lbz r0, 0x400(r3) -/* 8014EBF0 0014BB50 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 8014EBF4 0014BB54 41 82 00 A8 */ beq lbl_8014EC9C -/* 8014EBF8 0014BB58 80 05 00 00 */ lwz r0, 0(r5) -/* 8014EBFC 0014BB5C 2C 00 00 00 */ cmpwi r0, 0 -/* 8014EC00 0014BB60 40 81 00 9C */ ble lbl_8014EC9C -/* 8014EC04 0014BB64 80 AD 8C 3C */ lwz r5, lbl_805A77FC@sda21(r13) -/* 8014EC08 0014BB68 38 60 00 00 */ li r3, 0 -/* 8014EC0C 0014BB6C 38 80 00 01 */ li r4, 1 -/* 8014EC10 0014BB70 48 23 B2 E5 */ bl __shl2i -/* 8014EC14 0014BB74 39 20 00 00 */ li r9, 0 -/* 8014EC18 0014BB78 38 00 00 01 */ li r0, 1 -/* 8014EC1C 0014BB7C 90 81 00 24 */ stw r4, 0x24(r1) -/* 8014EC20 0014BB80 7F C5 F3 78 */ mr r5, r30 -/* 8014EC24 0014BB84 38 81 00 0C */ addi r4, r1, 0xc -/* 8014EC28 0014BB88 38 C1 00 10 */ addi r6, r1, 0x10 -/* 8014EC2C 0014BB8C 90 61 00 20 */ stw r3, 0x20(r1) -/* 8014EC30 0014BB90 7F E3 FB 78 */ mr r3, r31 -/* 8014EC34 0014BB94 38 FE 05 AC */ addi r7, r30, 0x5ac -/* 8014EC38 0014BB98 39 01 00 20 */ addi r8, r1, 0x20 -/* 8014EC3C 0014BB9C 91 21 00 2C */ stw r9, 0x2c(r1) -/* 8014EC40 0014BBA0 91 21 00 28 */ stw r9, 0x28(r1) -/* 8014EC44 0014BBA4 90 01 00 30 */ stw r0, 0x30(r1) -/* 8014EC48 0014BBA8 C0 5E 00 60 */ lfs f2, 0x60(r30) -/* 8014EC4C 0014BBAC C0 3E 00 50 */ lfs f1, 0x50(r30) -/* 8014EC50 0014BBB0 C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 8014EC54 0014BBB4 D0 01 00 10 */ stfs f0, 0x10(r1) -/* 8014EC58 0014BBB8 D0 21 00 14 */ stfs f1, 0x14(r1) -/* 8014EC5C 0014BBBC D0 41 00 18 */ stfs f2, 0x18(r1) -/* 8014EC60 0014BBC0 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8014EC64 0014BBC4 B0 01 00 08 */ sth r0, 8(r1) -/* 8014EC68 0014BBC8 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8014EC6C 0014BBCC 4B EF A0 41 */ bl ApplyDamageToWorld__13CStateManagerF9TUniqueIdRC6CActorRC9CVector3fRC11CDamageInfoRC15CMaterialFilter -/* 8014EC70 0014BBD0 7F C3 F3 78 */ mr r3, r30 -/* 8014EC74 0014BBD4 7F E5 FB 78 */ mr r5, r31 -/* 8014EC78 0014BBD8 38 80 00 01 */ li r4, 1 -/* 8014EC7C 0014BBDC 38 C0 FF FF */ li r6, -1 -/* 8014EC80 0014BBE0 4B F0 24 41 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 8014EC84 0014BBE4 7F C3 F3 78 */ mr r3, r30 -/* 8014EC88 0014BBE8 7F E4 FB 78 */ mr r4, r31 -/* 8014EC8C 0014BBEC 81 9E 00 00 */ lwz r12, 0(r30) -/* 8014EC90 0014BBF0 81 8C 02 98 */ lwz r12, 0x298(r12) -/* 8014EC94 0014BBF4 7D 89 03 A6 */ mtctr r12 -/* 8014EC98 0014BBF8 4E 80 04 21 */ bctrl -lbl_8014EC9C: -/* 8014EC9C 0014BBFC 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8014ECA0 0014BC00 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 8014ECA4 0014BC04 83 C1 00 38 */ lwz r30, 0x38(r1) -/* 8014ECA8 0014BC08 7C 08 03 A6 */ mtlr r0 -/* 8014ECAC 0014BC0C 38 21 00 40 */ addi r1, r1, 0x40 -/* 8014ECB0 0014BC10 4E 80 00 20 */ blr - -.global ThinkAboutMove__8CMetareeFf -ThinkAboutMove__8CMetareeFf: -/* 8014ECB4 0014BC14 4E 80 00 20 */ blr - -.global AcceptScriptMsg__8CMetareeF20EScriptObjectMessage9TUniqueIdR13CStateManager -AcceptScriptMsg__8CMetareeF20EScriptObjectMessage9TUniqueIdR13CStateManager: -/* 8014ECB8 0014BC18 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8014ECBC 0014BC1C 7C 08 02 A6 */ mflr r0 -/* 8014ECC0 0014BC20 90 01 00 24 */ stw r0, 0x24(r1) -/* 8014ECC4 0014BC24 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8014ECC8 0014BC28 7C DF 33 78 */ mr r31, r6 -/* 8014ECCC 0014BC2C 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8014ECD0 0014BC30 7C 9E 23 78 */ mr r30, r4 -/* 8014ECD4 0014BC34 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8014ECD8 0014BC38 7C 7D 1B 78 */ mr r29, r3 -/* 8014ECDC 0014BC3C A0 05 00 00 */ lhz r0, 0(r5) -/* 8014ECE0 0014BC40 38 A1 00 08 */ addi r5, r1, 8 -/* 8014ECE4 0014BC44 B0 01 00 08 */ sth r0, 8(r1) -/* 8014ECE8 0014BC48 4B F2 DE 91 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager -/* 8014ECEC 0014BC4C 2C 1E 00 0E */ cmpwi r30, 0xe -/* 8014ECF0 0014BC50 41 82 00 30 */ beq lbl_8014ED20 -/* 8014ECF4 0014BC54 40 80 00 10 */ bge lbl_8014ED04 -/* 8014ECF8 0014BC58 2C 1E 00 01 */ cmpwi r30, 1 -/* 8014ECFC 0014BC5C 41 82 00 34 */ beq lbl_8014ED30 -/* 8014ED00 0014BC60 48 00 00 30 */ b lbl_8014ED30 -lbl_8014ED04: -/* 8014ED04 0014BC64 2C 1E 00 21 */ cmpwi r30, 0x21 -/* 8014ED08 0014BC68 41 82 00 08 */ beq lbl_8014ED10 -/* 8014ED0C 0014BC6C 48 00 00 24 */ b lbl_8014ED30 -lbl_8014ED10: -/* 8014ED10 0014BC70 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 8014ED14 0014BC74 7F E4 FB 78 */ mr r4, r31 -/* 8014ED18 0014BC78 4B FE BF D9 */ bl Activate__15CBodyControllerFR13CStateManager -/* 8014ED1C 0014BC7C 48 00 00 14 */ b lbl_8014ED30 -lbl_8014ED20: -/* 8014ED20 0014BC80 88 1D 05 CA */ lbz r0, 0x5ca(r29) -/* 8014ED24 0014BC84 38 60 00 01 */ li r3, 1 -/* 8014ED28 0014BC88 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 8014ED2C 0014BC8C 98 1D 05 CA */ stb r0, 0x5ca(r29) -lbl_8014ED30: -/* 8014ED30 0014BC90 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8014ED34 0014BC94 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8014ED38 0014BC98 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8014ED3C 0014BC9C 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 8014ED40 0014BCA0 7C 08 03 A6 */ mtlr r0 -/* 8014ED44 0014BCA4 38 21 00 20 */ addi r1, r1, 0x20 -/* 8014ED48 0014BCA8 4E 80 00 20 */ blr - -.global Accept__8CMetareeFR8IVisitor -Accept__8CMetareeFR8IVisitor: -/* 8014ED4C 0014BCAC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8014ED50 0014BCB0 7C 08 02 A6 */ mflr r0 -/* 8014ED54 0014BCB4 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014ED58 0014BCB8 7C 60 1B 78 */ mr r0, r3 -/* 8014ED5C 0014BCBC 7C 83 23 78 */ mr r3, r4 -/* 8014ED60 0014BCC0 81 84 00 00 */ lwz r12, 0(r4) -/* 8014ED64 0014BCC4 7C 04 03 78 */ mr r4, r0 -/* 8014ED68 0014BCC8 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 8014ED6C 0014BCCC 7D 89 03 A6 */ mtctr r12 -/* 8014ED70 0014BCD0 4E 80 04 21 */ bctrl -/* 8014ED74 0014BCD4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014ED78 0014BCD8 7C 08 03 A6 */ mtlr r0 -/* 8014ED7C 0014BCDC 38 21 00 10 */ addi r1, r1, 0x10 -/* 8014ED80 0014BCE0 4E 80 00 20 */ blr - -.global "__ct__8CMetareeF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC11CDamageInfofRC9CVector3ff9EBodyTypeffRC16CActorParameters" -"__ct__8CMetareeF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC11CDamageInfofRC9CVector3ff9EBodyTypeffRC16CActorParameters": -/* 8014ED84 0014BCE4 94 21 FF 80 */ stwu r1, -0x80(r1) -/* 8014ED88 0014BCE8 7C 08 02 A6 */ mflr r0 -/* 8014ED8C 0014BCEC 90 01 00 84 */ stw r0, 0x84(r1) -/* 8014ED90 0014BCF0 DB E1 00 70 */ stfd f31, 0x70(r1) -/* 8014ED94 0014BCF4 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 -/* 8014ED98 0014BCF8 DB C1 00 60 */ stfd f30, 0x60(r1) -/* 8014ED9C 0014BCFC F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 -/* 8014EDA0 0014BD00 DB A1 00 50 */ stfd f29, 0x50(r1) -/* 8014EDA4 0014BD04 F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 -/* 8014EDA8 0014BD08 DB 81 00 40 */ stfd f28, 0x40(r1) -/* 8014EDAC 0014BD0C F3 81 00 48 */ psq_st f28, 72(r1), 0, qr0 -/* 8014EDB0 0014BD10 BF 61 00 2C */ stmw r27, 0x2c(r1) -/* 8014EDB4 0014BD14 A0 04 00 00 */ lhz r0, 0(r4) -/* 8014EDB8 0014BD18 7C DB 33 78 */ mr r27, r6 -/* 8014EDBC 0014BD1C 7C FC 3B 78 */ mr r28, r7 -/* 8014EDC0 0014BD20 7D 0C 43 78 */ mr r12, r8 -/* 8014EDC4 0014BD24 B0 01 00 20 */ sth r0, 0x20(r1) -/* 8014EDC8 0014BD28 7D 2B 4B 78 */ mr r11, r9 -/* 8014EDCC 0014BD2C 38 80 00 01 */ li r4, 1 -/* 8014EDD0 0014BD30 38 00 00 00 */ li r0, 0 -/* 8014EDD4 0014BD34 91 41 00 08 */ stw r10, 8(r1) -/* 8014EDD8 0014BD38 FF 80 08 90 */ fmr f28, f1 -/* 8014EDDC 0014BD3C 80 C1 00 90 */ lwz r6, 0x90(r1) -/* 8014EDE0 0014BD40 FF A0 10 90 */ fmr f29, f2 -/* 8014EDE4 0014BD44 90 81 00 0C */ stw r4, 0xc(r1) -/* 8014EDE8 0014BD48 FF C0 18 90 */ fmr f30, f3 -/* 8014EDEC 0014BD4C 80 81 00 94 */ lwz r4, 0x94(r1) -/* 8014EDF0 0014BD50 90 01 00 10 */ stw r0, 0x10(r1) -/* 8014EDF4 0014BD54 FF E0 20 90 */ fmr f31, f4 -/* 8014EDF8 0014BD58 83 A1 00 88 */ lwz r29, 0x88(r1) -/* 8014EDFC 0014BD5C 7C 7F 1B 78 */ mr r31, r3 -/* 8014EE00 0014BD60 90 C1 00 14 */ stw r6, 0x14(r1) -/* 8014EE04 0014BD64 7C A6 2B 78 */ mr r6, r5 -/* 8014EE08 0014BD68 83 C1 00 8C */ lwz r30, 0x8c(r1) -/* 8014EE0C 0014BD6C 90 81 00 18 */ stw r4, 0x18(r1) -/* 8014EE10 0014BD70 7F 67 DB 78 */ mr r7, r27 -/* 8014EE14 0014BD74 7F 88 E3 78 */ mr r8, r28 -/* 8014EE18 0014BD78 7D 89 63 78 */ mr r9, r12 -/* 8014EE1C 0014BD7C 90 01 00 1C */ stw r0, 0x1c(r1) -/* 8014EE20 0014BD80 7D 6A 5B 78 */ mr r10, r11 -/* 8014EE24 0014BD84 38 A1 00 20 */ addi r5, r1, 0x20 -/* 8014EE28 0014BD88 38 80 00 12 */ li r4, 0x12 -/* 8014EE2C 0014BD8C 4B F2 E6 25 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" -/* 8014EE30 0014BD90 3C 80 80 3E */ lis r4, lbl_803E2878@ha -/* 8014EE34 0014BD94 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8014EE38 0014BD98 38 04 28 78 */ addi r0, r4, lbl_803E2878@l -/* 8014EE3C 0014BD9C C0 02 9D 8C */ lfs f0, lbl_805ABAAC@sda21(r2) -/* 8014EE40 0014BDA0 90 1F 00 00 */ stw r0, 0(r31) -/* 8014EE44 0014BDA4 38 A3 66 A0 */ addi r5, r3, skZero3f@l -/* 8014EE48 0014BDA8 38 C0 00 00 */ li r6, 0 -/* 8014EE4C 0014BDAC 38 00 02 25 */ li r0, 0x225 -/* 8014EE50 0014BDB0 D3 DF 05 68 */ stfs f30, 0x568(r31) -/* 8014EE54 0014BDB4 38 80 00 01 */ li r4, 1 -/* 8014EE58 0014BDB8 7F E3 FB 78 */ mr r3, r31 -/* 8014EE5C 0014BDBC D3 FF 05 6C */ stfs f31, 0x56c(r31) -/* 8014EE60 0014BDC0 D3 9F 05 70 */ stfs f28, 0x570(r31) -/* 8014EE64 0014BDC4 C0 3E 00 00 */ lfs f1, 0(r30) -/* 8014EE68 0014BDC8 D0 3F 05 74 */ stfs f1, 0x574(r31) -/* 8014EE6C 0014BDCC C0 3E 00 04 */ lfs f1, 4(r30) -/* 8014EE70 0014BDD0 D0 3F 05 78 */ stfs f1, 0x578(r31) -/* 8014EE74 0014BDD4 C0 3E 00 08 */ lfs f1, 8(r30) -/* 8014EE78 0014BDD8 D0 3F 05 7C */ stfs f1, 0x57c(r31) -/* 8014EE7C 0014BDDC D3 BF 05 80 */ stfs f29, 0x580(r31) -/* 8014EE80 0014BDE0 C0 25 00 00 */ lfs f1, 0(r5) -/* 8014EE84 0014BDE4 D0 3F 05 84 */ stfs f1, 0x584(r31) -/* 8014EE88 0014BDE8 C0 25 00 04 */ lfs f1, 4(r5) -/* 8014EE8C 0014BDEC D0 3F 05 88 */ stfs f1, 0x588(r31) -/* 8014EE90 0014BDF0 C0 25 00 08 */ lfs f1, 8(r5) -/* 8014EE94 0014BDF4 D0 3F 05 8C */ stfs f1, 0x58c(r31) -/* 8014EE98 0014BDF8 D0 1F 05 90 */ stfs f0, 0x590(r31) -/* 8014EE9C 0014BDFC D0 1F 05 94 */ stfs f0, 0x594(r31) -/* 8014EEA0 0014BE00 D0 1F 05 98 */ stfs f0, 0x598(r31) -/* 8014EEA4 0014BE04 C0 05 00 00 */ lfs f0, 0(r5) -/* 8014EEA8 0014BE08 D0 1F 05 9C */ stfs f0, 0x59c(r31) -/* 8014EEAC 0014BE0C C0 05 00 04 */ lfs f0, 4(r5) -/* 8014EEB0 0014BE10 D0 1F 05 A0 */ stfs f0, 0x5a0(r31) -/* 8014EEB4 0014BE14 C0 05 00 08 */ lfs f0, 8(r5) -/* 8014EEB8 0014BE18 D0 1F 05 A4 */ stfs f0, 0x5a4(r31) -/* 8014EEBC 0014BE1C 90 DF 05 A8 */ stw r6, 0x5a8(r31) -/* 8014EEC0 0014BE20 80 BD 00 00 */ lwz r5, 0(r29) -/* 8014EEC4 0014BE24 90 BF 05 AC */ stw r5, 0x5ac(r31) -/* 8014EEC8 0014BE28 88 BD 00 04 */ lbz r5, 4(r29) -/* 8014EECC 0014BE2C 98 BF 05 B0 */ stb r5, 0x5b0(r31) -/* 8014EED0 0014BE30 C0 1D 00 08 */ lfs f0, 8(r29) -/* 8014EED4 0014BE34 D0 1F 05 B4 */ stfs f0, 0x5b4(r31) -/* 8014EED8 0014BE38 C0 1D 00 0C */ lfs f0, 0xc(r29) -/* 8014EEDC 0014BE3C D0 1F 05 B8 */ stfs f0, 0x5b8(r31) -/* 8014EEE0 0014BE40 C0 1D 00 10 */ lfs f0, 0x10(r29) -/* 8014EEE4 0014BE44 D0 1F 05 BC */ stfs f0, 0x5bc(r31) -/* 8014EEE8 0014BE48 C0 1D 00 14 */ lfs f0, 0x14(r29) -/* 8014EEEC 0014BE4C D0 1F 05 C0 */ stfs f0, 0x5c0(r31) -/* 8014EEF0 0014BE50 88 BD 00 18 */ lbz r5, 0x18(r29) -/* 8014EEF4 0014BE54 98 BF 05 C4 */ stb r5, 0x5c4(r31) -/* 8014EEF8 0014BE58 B0 1F 05 C8 */ sth r0, 0x5c8(r31) -/* 8014EEFC 0014BE5C 88 1F 05 CA */ lbz r0, 0x5ca(r31) -/* 8014EF00 0014BE60 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 -/* 8014EF04 0014BE64 98 1F 05 CA */ stb r0, 0x5ca(r31) -/* 8014EF08 0014BE68 88 1F 05 CA */ lbz r0, 0x5ca(r31) -/* 8014EF0C 0014BE6C 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 -/* 8014EF10 0014BE70 98 1F 05 CA */ stb r0, 0x5ca(r31) -/* 8014EF14 0014BE74 88 1F 05 CA */ lbz r0, 0x5ca(r31) -/* 8014EF18 0014BE78 50 C0 2E B4 */ rlwimi r0, r6, 5, 0x1a, 0x1a -/* 8014EF1C 0014BE7C 98 1F 05 CA */ stb r0, 0x5ca(r31) -/* 8014EF20 0014BE80 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 -/* 8014EF24 0014BE84 CB E1 00 70 */ lfd f31, 0x70(r1) -/* 8014EF28 0014BE88 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 -/* 8014EF2C 0014BE8C CB C1 00 60 */ lfd f30, 0x60(r1) -/* 8014EF30 0014BE90 E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0 -/* 8014EF34 0014BE94 CB A1 00 50 */ lfd f29, 0x50(r1) -/* 8014EF38 0014BE98 E3 81 00 48 */ psq_l f28, 72(r1), 0, qr0 -/* 8014EF3C 0014BE9C CB 81 00 40 */ lfd f28, 0x40(r1) -/* 8014EF40 0014BEA0 BB 61 00 2C */ lmw r27, 0x2c(r1) -/* 8014EF44 0014BEA4 80 01 00 84 */ lwz r0, 0x84(r1) -/* 8014EF48 0014BEA8 7C 08 03 A6 */ mtlr r0 -/* 8014EF4C 0014BEAC 38 21 00 80 */ addi r1, r1, 0x80 -/* 8014EF50 0014BEB0 4E 80 00 20 */ blr - -.global __dt__21CScriptDockAreaChangeFv -__dt__21CScriptDockAreaChangeFv: -/* 8014EF54 0014BEB4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8014EF58 0014BEB8 7C 08 02 A6 */ mflr r0 -/* 8014EF5C 0014BEBC 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014EF60 0014BEC0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8014EF64 0014BEC4 7C 9F 23 78 */ mr r31, r4 -/* 8014EF68 0014BEC8 93 C1 00 08 */ stw r30, 8(r1) -/* 8014EF6C 0014BECC 7C 7E 1B 79 */ or. r30, r3, r3 -/* 8014EF70 0014BED0 41 82 00 28 */ beq lbl_8014EF98 -/* 8014EF74 0014BED4 3C A0 80 3E */ lis r5, lbl_803E2B48@ha -/* 8014EF78 0014BED8 38 80 00 00 */ li r4, 0 -/* 8014EF7C 0014BEDC 38 05 2B 48 */ addi r0, r5, lbl_803E2B48@l -/* 8014EF80 0014BEE0 90 1E 00 00 */ stw r0, 0(r30) -/* 8014EF84 0014BEE4 4B F0 22 F1 */ bl __dt__7CEntityFv -/* 8014EF88 0014BEE8 7F E0 07 35 */ extsh. r0, r31 -/* 8014EF8C 0014BEEC 40 81 00 0C */ ble lbl_8014EF98 -/* 8014EF90 0014BEF0 7F C3 F3 78 */ mr r3, r30 -/* 8014EF94 0014BEF4 48 1C 69 9D */ bl Free__7CMemoryFPCv -lbl_8014EF98: -/* 8014EF98 0014BEF8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014EF9C 0014BEFC 7F C3 F3 78 */ mr r3, r30 -/* 8014EFA0 0014BF00 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8014EFA4 0014BF04 83 C1 00 08 */ lwz r30, 8(r1) -/* 8014EFA8 0014BF08 7C 08 03 A6 */ mtlr r0 -/* 8014EFAC 0014BF0C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8014EFB0 0014BF10 4E 80 00 20 */ blr - -.global Accept__21CScriptDockAreaChangeFR8IVisitor -Accept__21CScriptDockAreaChangeFR8IVisitor: -/* 8014EFB4 0014BF14 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8014EFB8 0014BF18 7C 08 02 A6 */ mflr r0 -/* 8014EFBC 0014BF1C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014EFC0 0014BF20 7C 60 1B 78 */ mr r0, r3 -/* 8014EFC4 0014BF24 7C 83 23 78 */ mr r3, r4 -/* 8014EFC8 0014BF28 81 84 00 00 */ lwz r12, 0(r4) -/* 8014EFCC 0014BF2C 7C 04 03 78 */ mr r4, r0 -/* 8014EFD0 0014BF30 81 8C 00 24 */ lwz r12, 0x24(r12) -/* 8014EFD4 0014BF34 7D 89 03 A6 */ mtctr r12 -/* 8014EFD8 0014BF38 4E 80 04 21 */ bctrl -/* 8014EFDC 0014BF3C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014EFE0 0014BF40 7C 08 03 A6 */ mtlr r0 -/* 8014EFE4 0014BF44 38 21 00 10 */ addi r1, r1, 0x10 -/* 8014EFE8 0014BF48 4E 80 00 20 */ blr - -.global AcceptScriptMsg__21CScriptDockAreaChangeF20EScriptObjectMessage9TUniqueIdR13CStateManager -AcceptScriptMsg__21CScriptDockAreaChangeF20EScriptObjectMessage9TUniqueIdR13CStateManager: -/* 8014EFEC 0014BF4C 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 8014EFF0 0014BF50 7C 08 02 A6 */ mflr r0 -/* 8014EFF4 0014BF54 90 01 00 64 */ stw r0, 0x64(r1) -/* 8014EFF8 0014BF58 BE E1 00 3C */ stmw r23, 0x3c(r1) -/* 8014EFFC 0014BF5C 7C 9C 23 78 */ mr r28, r4 -/* 8014F000 0014BF60 2C 1C 00 13 */ cmpwi r28, 0x13 -/* 8014F004 0014BF64 7C 7B 1B 78 */ mr r27, r3 -/* 8014F008 0014BF68 7C BD 2B 78 */ mr r29, r5 -/* 8014F00C 0014BF6C 7C DE 33 78 */ mr r30, r6 -/* 8014F010 0014BF70 41 82 00 08 */ beq lbl_8014F018 -/* 8014F014 0014BF74 48 00 00 F4 */ b lbl_8014F108 -lbl_8014F018: -/* 8014F018 0014BF78 88 1B 00 30 */ lbz r0, 0x30(r27) -/* 8014F01C 0014BF7C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8014F020 0014BF80 41 82 00 E8 */ beq lbl_8014F108 -/* 8014F024 0014BF84 83 FB 00 2C */ lwz r31, 0x2c(r27) -/* 8014F028 0014BF88 48 00 00 B4 */ b lbl_8014F0DC -lbl_8014F02C: -/* 8014F02C 0014BF8C 80 1F 00 00 */ lwz r0, 0(r31) -/* 8014F030 0014BF90 2C 00 00 12 */ cmpwi r0, 0x12 -/* 8014F034 0014BF94 40 82 00 A4 */ bne lbl_8014F0D8 -/* 8014F038 0014BF98 80 1F 00 04 */ lwz r0, 4(r31) -/* 8014F03C 0014BF9C 2C 00 00 00 */ cmpwi r0, 0 -/* 8014F040 0014BFA0 41 82 00 98 */ beq lbl_8014F0D8 -/* 8014F044 0014BFA4 80 1F 00 08 */ lwz r0, 8(r31) -/* 8014F048 0014BFA8 7F C4 F3 78 */ mr r4, r30 -/* 8014F04C 0014BFAC 38 61 00 1C */ addi r3, r1, 0x1c -/* 8014F050 0014BFB0 38 A1 00 10 */ addi r5, r1, 0x10 -/* 8014F054 0014BFB4 90 01 00 10 */ stw r0, 0x10(r1) -/* 8014F058 0014BFB8 4B EF 8F 71 */ bl GetIdListForScript__13CStateManagerCF9TEditorId -/* 8014F05C 0014BFBC 83 41 00 20 */ lwz r26, 0x20(r1) -/* 8014F060 0014BFC0 83 21 00 24 */ lwz r25, 0x24(r1) -/* 8014F064 0014BFC4 83 01 00 28 */ lwz r24, 0x28(r1) -/* 8014F068 0014BFC8 82 E1 00 1C */ lwz r23, 0x1c(r1) -/* 8014F06C 0014BFCC 48 00 00 4C */ b lbl_8014F0B8 -lbl_8014F070: -/* 8014F070 0014BFD0 A0 17 00 14 */ lhz r0, 0x14(r23) -/* 8014F074 0014BFD4 7F C3 F3 78 */ mr r3, r30 -/* 8014F078 0014BFD8 38 81 00 0C */ addi r4, r1, 0xc -/* 8014F07C 0014BFDC B0 01 00 0C */ sth r0, 0xc(r1) -/* 8014F080 0014BFE0 4B EF D4 F5 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8014F084 0014BFE4 7C 64 1B 78 */ mr r4, r3 -/* 8014F088 0014BFE8 38 61 00 14 */ addi r3, r1, 0x14 -/* 8014F08C 0014BFEC 4B F5 B3 79 */ bl "__ct__25TCastToPtr<11CScriptDock>FP7CEntity" -/* 8014F090 0014BFF0 80 63 00 04 */ lwz r3, 4(r3) -/* 8014F094 0014BFF4 28 03 00 00 */ cmplwi r3, 0 -/* 8014F098 0014BFF8 41 82 00 10 */ beq lbl_8014F0A8 -/* 8014F09C 0014BFFC 80 BB 00 34 */ lwz r5, 0x34(r27) -/* 8014F0A0 0014C000 7F C4 F3 78 */ mr r4, r30 -/* 8014F0A4 0014C004 4B F7 47 F5 */ bl SetDockReference__11CScriptDockFi -lbl_8014F0A8: -/* 8014F0A8 0014C008 7F 43 D3 78 */ mr r3, r26 -/* 8014F0AC 0014C00C 7E E4 BB 78 */ mr r4, r23 -/* 8014F0B0 0014C010 48 1E D5 31 */ bl rbtree_traverse_forward__4rstlFPCvPv -/* 8014F0B4 0014C014 7C 77 1B 78 */ mr r23, r3 -lbl_8014F0B8: -/* 8014F0B8 0014C018 7C 17 C8 40 */ cmplw r23, r25 -/* 8014F0BC 0014C01C 38 00 00 00 */ li r0, 0 -/* 8014F0C0 0014C020 40 82 00 0C */ bne lbl_8014F0CC -/* 8014F0C4 0014C024 7C 1A C0 40 */ cmplw r26, r24 -/* 8014F0C8 0014C028 41 82 00 08 */ beq lbl_8014F0D0 -lbl_8014F0CC: -/* 8014F0CC 0014C02C 38 00 00 01 */ li r0, 1 -lbl_8014F0D0: -/* 8014F0D0 0014C030 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 8014F0D4 0014C034 40 82 FF 9C */ bne lbl_8014F070 -lbl_8014F0D8: -/* 8014F0D8 0014C038 3B FF 00 0C */ addi r31, r31, 0xc -lbl_8014F0DC: -/* 8014F0DC 0014C03C 80 1B 00 24 */ lwz r0, 0x24(r27) -/* 8014F0E0 0014C040 80 7B 00 2C */ lwz r3, 0x2c(r27) -/* 8014F0E4 0014C044 1C 00 00 0C */ mulli r0, r0, 0xc -/* 8014F0E8 0014C048 7C 03 02 14 */ add r0, r3, r0 -/* 8014F0EC 0014C04C 7C 1F 00 40 */ cmplw r31, r0 -/* 8014F0F0 0014C050 40 82 FF 3C */ bne lbl_8014F02C -/* 8014F0F4 0014C054 7F 63 DB 78 */ mr r3, r27 -/* 8014F0F8 0014C058 7F C5 F3 78 */ mr r5, r30 -/* 8014F0FC 0014C05C 38 80 00 12 */ li r4, 0x12 -/* 8014F100 0014C060 38 C0 FF FF */ li r6, -1 -/* 8014F104 0014C064 4B F0 1F BD */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -lbl_8014F108: -/* 8014F108 0014C068 A0 1D 00 00 */ lhz r0, 0(r29) -/* 8014F10C 0014C06C 7F 63 DB 78 */ mr r3, r27 -/* 8014F110 0014C070 7F 84 E3 78 */ mr r4, r28 -/* 8014F114 0014C074 7F C6 F3 78 */ mr r6, r30 -/* 8014F118 0014C078 B0 01 00 08 */ sth r0, 8(r1) -/* 8014F11C 0014C07C 38 A1 00 08 */ addi r5, r1, 8 -/* 8014F120 0014C080 4B F0 20 3D */ bl AcceptScriptMsg__7CEntityF20EScriptObjectMessage9TUniqueIdR13CStateManager -/* 8014F124 0014C084 BA E1 00 3C */ lmw r23, 0x3c(r1) -/* 8014F128 0014C088 80 01 00 64 */ lwz r0, 0x64(r1) -/* 8014F12C 0014C08C 7C 08 03 A6 */ mtlr r0 -/* 8014F130 0014C090 38 21 00 60 */ addi r1, r1, 0x60 -/* 8014F134 0014C094 4E 80 00 20 */ blr - -.global "__ct__21CScriptDockAreaChangeF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoib" -"__ct__21CScriptDockAreaChangeF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoib": -/* 8014F138 0014C098 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8014F13C 0014C09C 7C 08 02 A6 */ mflr r0 -/* 8014F140 0014C0A0 90 01 00 24 */ stw r0, 0x24(r1) -/* 8014F144 0014C0A4 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8014F148 0014C0A8 7C FF 3B 78 */ mr r31, r7 -/* 8014F14C 0014C0AC 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8014F150 0014C0B0 7C 7E 1B 78 */ mr r30, r3 -/* 8014F154 0014C0B4 A0 04 00 00 */ lhz r0, 0(r4) -/* 8014F158 0014C0B8 7C A4 2B 78 */ mr r4, r5 -/* 8014F15C 0014C0BC 7C C5 33 78 */ mr r5, r6 -/* 8014F160 0014C0C0 7D 06 43 78 */ mr r6, r8 -/* 8014F164 0014C0C4 B0 01 00 08 */ sth r0, 8(r1) -/* 8014F168 0014C0C8 7C 87 23 78 */ mr r7, r4 -/* 8014F16C 0014C0CC 38 81 00 08 */ addi r4, r1, 8 -/* 8014F170 0014C0D0 4B F0 21 B5 */ bl "__ct__7CEntityF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8014F174 0014C0D4 3C 80 80 3E */ lis r4, lbl_803E2B48@ha -/* 8014F178 0014C0D8 7F C3 F3 78 */ mr r3, r30 -/* 8014F17C 0014C0DC 38 04 2B 48 */ addi r0, r4, lbl_803E2B48@l -/* 8014F180 0014C0E0 90 1E 00 00 */ stw r0, 0(r30) -/* 8014F184 0014C0E4 93 FE 00 34 */ stw r31, 0x34(r30) -/* 8014F188 0014C0E8 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8014F18C 0014C0EC 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8014F190 0014C0F0 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8014F194 0014C0F4 7C 08 03 A6 */ mtlr r0 -/* 8014F198 0014C0F8 38 21 00 20 */ addi r1, r1, 0x20 -/* 8014F19C 0014C0FC 4E 80 00 20 */ blr - -.global __dt__22CScriptSpecialFunctionFv -__dt__22CScriptSpecialFunctionFv: -/* 8014F1A0 0014C100 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8014F1A4 0014C104 7C 08 02 A6 */ mflr r0 -/* 8014F1A8 0014C108 90 01 00 34 */ stw r0, 0x34(r1) -/* 8014F1AC 0014C10C 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8014F1B0 0014C110 7C 9F 23 78 */ mr r31, r4 -/* 8014F1B4 0014C114 93 C1 00 28 */ stw r30, 0x28(r1) -/* 8014F1B8 0014C118 7C 7E 1B 79 */ or. r30, r3, r3 -/* 8014F1BC 0014C11C 41 82 01 0C */ beq lbl_8014F2C8 -/* 8014F1C0 0014C120 3C 60 80 3E */ lis r3, lbl_803E2B68@ha -/* 8014F1C4 0014C124 34 1E 01 E8 */ addic. r0, r30, 0x1e8 -/* 8014F1C8 0014C128 38 03 2B 68 */ addi r0, r3, lbl_803E2B68@l -/* 8014F1CC 0014C12C 90 1E 00 00 */ stw r0, 0(r30) -/* 8014F1D0 0014C130 41 82 00 24 */ beq lbl_8014F1F4 -/* 8014F1D4 0014C134 88 1E 01 F0 */ lbz r0, 0x1f0(r30) -/* 8014F1D8 0014C138 28 00 00 00 */ cmplwi r0, 0 -/* 8014F1DC 0014C13C 41 82 00 10 */ beq lbl_8014F1EC -/* 8014F1E0 0014C140 38 7E 01 E8 */ addi r3, r30, 0x1e8 -/* 8014F1E4 0014C144 38 80 FF FF */ li r4, -1 -/* 8014F1E8 0014C148 48 1F 1C 59 */ bl __dt__6CTokenFv -lbl_8014F1EC: -/* 8014F1EC 0014C14C 38 00 00 00 */ li r0, 0 -/* 8014F1F0 0014C150 98 1E 01 F0 */ stb r0, 0x1f0(r30) -lbl_8014F1F4: -/* 8014F1F4 0014C154 34 1E 01 C8 */ addic. r0, r30, 0x1c8 -/* 8014F1F8 0014C158 41 82 00 0C */ beq lbl_8014F204 -/* 8014F1FC 0014C15C 38 00 00 00 */ li r0, 0 -/* 8014F200 0014C160 98 1E 01 E0 */ stb r0, 0x1e0(r30) -lbl_8014F204: -/* 8014F204 0014C164 34 1E 01 98 */ addic. r0, r30, 0x198 -/* 8014F208 0014C168 41 82 00 44 */ beq lbl_8014F24C -/* 8014F20C 0014C16C 80 1E 01 9C */ lwz r0, 0x19c(r30) -/* 8014F210 0014C170 80 7E 01 A4 */ lwz r3, 0x1a4(r30) -/* 8014F214 0014C174 1C 00 00 18 */ mulli r0, r0, 0x18 -/* 8014F218 0014C178 90 61 00 1C */ stw r3, 0x1c(r1) -/* 8014F21C 0014C17C 7C 64 1B 78 */ mr r4, r3 -/* 8014F220 0014C180 7C 03 02 14 */ add r0, r3, r0 -/* 8014F224 0014C184 90 61 00 18 */ stw r3, 0x18(r1) -/* 8014F228 0014C188 90 01 00 24 */ stw r0, 0x24(r1) -/* 8014F22C 0014C18C 90 01 00 20 */ stw r0, 0x20(r1) -/* 8014F230 0014C190 48 00 00 08 */ b lbl_8014F238 -lbl_8014F234: -/* 8014F234 0014C194 38 84 00 18 */ addi r4, r4, 0x18 -lbl_8014F238: -/* 8014F238 0014C198 7C 04 00 40 */ cmplw r4, r0 -/* 8014F23C 0014C19C 40 82 FF F8 */ bne lbl_8014F234 -/* 8014F240 0014C1A0 28 03 00 00 */ cmplwi r3, 0 -/* 8014F244 0014C1A4 41 82 00 08 */ beq lbl_8014F24C -/* 8014F248 0014C1A8 48 1C 66 E9 */ bl Free__7CMemoryFPCv -lbl_8014F24C: -/* 8014F24C 0014C1AC 34 1E 01 84 */ addic. r0, r30, 0x184 -/* 8014F250 0014C1B0 41 82 00 4C */ beq lbl_8014F29C -/* 8014F254 0014C1B4 34 1E 01 84 */ addic. r0, r30, 0x184 -/* 8014F258 0014C1B8 41 82 00 44 */ beq lbl_8014F29C -/* 8014F25C 0014C1BC 80 1E 01 88 */ lwz r0, 0x188(r30) -/* 8014F260 0014C1C0 80 7E 01 90 */ lwz r3, 0x190(r30) -/* 8014F264 0014C1C4 54 00 10 3A */ slwi r0, r0, 2 -/* 8014F268 0014C1C8 7C 03 02 14 */ add r0, r3, r0 -/* 8014F26C 0014C1CC 90 61 00 0C */ stw r3, 0xc(r1) -/* 8014F270 0014C1D0 7C 64 1B 78 */ mr r4, r3 -/* 8014F274 0014C1D4 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014F278 0014C1D8 90 01 00 10 */ stw r0, 0x10(r1) -/* 8014F27C 0014C1DC 90 61 00 08 */ stw r3, 8(r1) -/* 8014F280 0014C1E0 48 00 00 08 */ b lbl_8014F288 -lbl_8014F284: -/* 8014F284 0014C1E4 38 84 00 04 */ addi r4, r4, 4 -lbl_8014F288: -/* 8014F288 0014C1E8 7C 04 00 40 */ cmplw r4, r0 -/* 8014F28C 0014C1EC 40 82 FF F8 */ bne lbl_8014F284 -/* 8014F290 0014C1F0 28 03 00 00 */ cmplwi r3, 0 -/* 8014F294 0014C1F4 41 82 00 08 */ beq lbl_8014F29C -/* 8014F298 0014C1F8 48 1C 66 99 */ bl Free__7CMemoryFPCv -lbl_8014F29C: -/* 8014F29C 0014C1FC 34 1E 00 EC */ addic. r0, r30, 0xec -/* 8014F2A0 0014C200 41 82 00 0C */ beq lbl_8014F2AC -/* 8014F2A4 0014C204 38 7E 00 EC */ addi r3, r30, 0xec -/* 8014F2A8 0014C208 48 1E E8 39 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -lbl_8014F2AC: -/* 8014F2AC 0014C20C 7F C3 F3 78 */ mr r3, r30 -/* 8014F2B0 0014C210 38 80 00 00 */ li r4, 0 -/* 8014F2B4 0014C214 4B F0 64 3D */ bl __dt__6CActorFv -/* 8014F2B8 0014C218 7F E0 07 35 */ extsh. r0, r31 -/* 8014F2BC 0014C21C 40 81 00 0C */ ble lbl_8014F2C8 -/* 8014F2C0 0014C220 7F C3 F3 78 */ mr r3, r30 -/* 8014F2C4 0014C224 48 1C 66 6D */ bl Free__7CMemoryFPCv -lbl_8014F2C8: -/* 8014F2C8 0014C228 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8014F2CC 0014C22C 7F C3 F3 78 */ mr r3, r30 -/* 8014F2D0 0014C230 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8014F2D4 0014C234 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 8014F2D8 0014C238 7C 08 03 A6 */ mtlr r0 -/* 8014F2DC 0014C23C 38 21 00 30 */ addi r1, r1, 0x30 -/* 8014F2E0 0014C240 4E 80 00 20 */ blr - -.global GetTouchBounds__22CScriptSpecialFunctionCFv -GetTouchBounds__22CScriptSpecialFunctionCFv: -/* 8014F2E4 0014C244 88 04 01 E0 */ lbz r0, 0x1e0(r4) -/* 8014F2E8 0014C248 98 03 00 18 */ stb r0, 0x18(r3) -/* 8014F2EC 0014C24C 88 04 01 E0 */ lbz r0, 0x1e0(r4) -/* 8014F2F0 0014C250 28 00 00 00 */ cmplwi r0, 0 -/* 8014F2F4 0014C254 4D 82 00 20 */ beqlr -/* 8014F2F8 0014C258 28 03 00 00 */ cmplwi r3, 0 -/* 8014F2FC 0014C25C 4D 82 00 20 */ beqlr -/* 8014F300 0014C260 C0 04 01 C8 */ lfs f0, 0x1c8(r4) -/* 8014F304 0014C264 D0 03 00 00 */ stfs f0, 0(r3) -/* 8014F308 0014C268 C0 04 01 CC */ lfs f0, 0x1cc(r4) -/* 8014F30C 0014C26C D0 03 00 04 */ stfs f0, 4(r3) -/* 8014F310 0014C270 C0 04 01 D0 */ lfs f0, 0x1d0(r4) -/* 8014F314 0014C274 D0 03 00 08 */ stfs f0, 8(r3) -/* 8014F318 0014C278 C0 04 01 D4 */ lfs f0, 0x1d4(r4) -/* 8014F31C 0014C27C D0 03 00 0C */ stfs f0, 0xc(r3) -/* 8014F320 0014C280 C0 04 01 D8 */ lfs f0, 0x1d8(r4) -/* 8014F324 0014C284 D0 03 00 10 */ stfs f0, 0x10(r3) -/* 8014F328 0014C288 C0 04 01 DC */ lfs f0, 0x1dc(r4) -/* 8014F32C 0014C28C D0 03 00 14 */ stfs f0, 0x14(r3) -/* 8014F330 0014C290 4E 80 00 20 */ blr - -.global GetSpecialEnding__22CScriptSpecialFunctionCFv -GetSpecialEnding__22CScriptSpecialFunctionCFv: -/* 8014F334 0014C294 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8014F338 0014C298 7C 08 02 A6 */ mflr r0 -/* 8014F33C 0014C29C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014F340 0014C2A0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8014F344 0014C2A4 93 C1 00 08 */ stw r30, 8(r1) -/* 8014F348 0014C2A8 80 64 08 B8 */ lwz r3, 0x8b8(r4) -/* 8014F34C 0014C2AC 83 C3 00 00 */ lwz r30, 0(r3) -/* 8014F350 0014C2B0 7F C3 F3 78 */ mr r3, r30 -/* 8014F354 0014C2B4 4B F4 21 59 */ bl GetTotalPickupCount__12CPlayerStateFv -/* 8014F358 0014C2B8 7C 7F 1B 78 */ mr r31, r3 -/* 8014F35C 0014C2BC 7F C3 F3 78 */ mr r3, r30 -/* 8014F360 0014C2C0 4B F4 1E D5 */ bl CalculateItemCollectionRate__12CPlayerStateFv -/* 8014F364 0014C2C4 1C 03 00 64 */ mulli r0, r3, 0x64 -/* 8014F368 0014C2C8 7C 00 FB D6 */ divw r0, r0, r31 -/* 8014F36C 0014C2CC 2C 00 00 4B */ cmpwi r0, 0x4b -/* 8014F370 0014C2D0 40 80 00 0C */ bge lbl_8014F37C -/* 8014F374 0014C2D4 38 60 00 00 */ li r3, 0 -/* 8014F378 0014C2D8 48 00 00 14 */ b lbl_8014F38C -lbl_8014F37C: -/* 8014F37C 0014C2DC 2C 00 00 64 */ cmpwi r0, 0x64 -/* 8014F380 0014C2E0 38 60 00 02 */ li r3, 2 -/* 8014F384 0014C2E4 40 80 00 08 */ bge lbl_8014F38C -/* 8014F388 0014C2E8 38 60 00 01 */ li r3, 1 -lbl_8014F38C: -/* 8014F38C 0014C2EC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014F390 0014C2F0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8014F394 0014C2F4 83 C1 00 08 */ lwz r30, 8(r1) -/* 8014F398 0014C2F8 7C 08 03 A6 */ mtlr r0 -/* 8014F39C 0014C2FC 38 21 00 10 */ addi r1, r1, 0x10 -/* 8014F3A0 0014C300 4E 80 00 20 */ blr - -.global sub_8014f3a4 -sub_8014f3a4: -/* 8014F3A4 0014C304 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8014F3A8 0014C308 7C 08 02 A6 */ mflr r0 -/* 8014F3AC 0014C30C 90 01 00 24 */ stw r0, 0x24(r1) -/* 8014F3B0 0014C310 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8014F3B4 0014C314 7C 9F 23 78 */ mr r31, r4 -/* 8014F3B8 0014C318 80 04 00 00 */ lwz r0, 0(r4) -/* 8014F3BC 0014C31C 28 00 00 00 */ cmplwi r0, 0 -/* 8014F3C0 0014C320 41 82 00 1C */ beq lbl_8014F3DC -/* 8014F3C4 0014C324 80 1F 00 00 */ lwz r0, 0(r31) -/* 8014F3C8 0014C328 38 61 00 08 */ addi r3, r1, 8 -/* 8014F3CC 0014C32C 90 01 00 08 */ stw r0, 8(r1) -/* 8014F3D0 0014C330 48 19 AA B5 */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle -/* 8014F3D4 0014C334 38 00 00 00 */ li r0, 0 -/* 8014F3D8 0014C338 90 1F 00 00 */ stw r0, 0(r31) -lbl_8014F3DC: -/* 8014F3DC 0014C33C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8014F3E0 0014C340 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8014F3E4 0014C344 7C 08 03 A6 */ mtlr r0 -/* 8014F3E8 0014C348 38 21 00 20 */ addi r1, r1, 0x20 -/* 8014F3EC 0014C34C 4E 80 00 20 */ blr - -.global sub_8014f3f0 -sub_8014f3f0: -/* 8014F3F0 0014C350 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8014F3F4 0014C354 7C 08 02 A6 */ mflr r0 -/* 8014F3F8 0014C358 90 01 00 44 */ stw r0, 0x44(r1) -/* 8014F3FC 0014C35C DB E1 00 30 */ stfd f31, 0x30(r1) -/* 8014F400 0014C360 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 -/* 8014F404 0014C364 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8014F408 0014C368 80 04 00 00 */ lwz r0, 0(r4) -/* 8014F40C 0014C36C FF E0 08 90 */ fmr f31, f1 -/* 8014F410 0014C370 7C 9F 23 78 */ mr r31, r4 -/* 8014F414 0014C374 28 00 00 00 */ cmplwi r0, 0 -/* 8014F418 0014C378 40 82 00 40 */ bne lbl_8014F458 -/* 8014F41C 0014C37C 80 82 C6 00 */ lwz r4, lbl_805AE320@sda21(r2) -/* 8014F420 0014C380 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8014F424 0014C384 38 03 66 A0 */ addi r0, r3, skZero3f@l -/* 8014F428 0014C388 A9 42 C5 FA */ lha r10, lbl_805AE31A@sda21(r2) -/* 8014F42C 0014C38C 90 81 00 08 */ stw r4, 8(r1) -/* 8014F430 0014C390 7C A4 2B 78 */ mr r4, r5 -/* 8014F434 0014C394 7C C5 33 78 */ mr r5, r6 -/* 8014F438 0014C398 7C 06 03 78 */ mr r6, r0 -/* 8014F43C 0014C39C 38 61 00 18 */ addi r3, r1, 0x18 -/* 8014F440 0014C3A0 39 00 00 01 */ li r8, 1 -/* 8014F444 0014C3A4 39 20 00 01 */ li r9, 1 -/* 8014F448 0014C3A8 48 19 AD 71 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fUcbbsi -/* 8014F44C 0014C3AC 80 01 00 18 */ lwz r0, 0x18(r1) -/* 8014F450 0014C3B0 90 1F 00 00 */ stw r0, 0(r31) -/* 8014F454 0014C3B4 48 00 00 4C */ b lbl_8014F4A0 -lbl_8014F458: -/* 8014F458 0014C3B8 80 1F 00 00 */ lwz r0, 0(r31) -/* 8014F45C 0014C3BC 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8014F460 0014C3C0 38 A3 66 A0 */ addi r5, r3, skZero3f@l -/* 8014F464 0014C3C4 7C C4 33 78 */ mr r4, r6 -/* 8014F468 0014C3C8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014F46C 0014C3CC 7C E6 3B 78 */ mr r6, r7 -/* 8014F470 0014C3D0 38 61 00 14 */ addi r3, r1, 0x14 -/* 8014F474 0014C3D4 48 19 AA 3D */ bl UpdateEmitter__11CSfxManagerF10CSfxHandleRC9CVector3fRC9CVector3fUc -/* 8014F478 0014C3D8 C0 02 9D 98 */ lfs f0, lbl_805ABAB8@sda21(r2) -/* 8014F47C 0014C3DC 38 61 00 10 */ addi r3, r1, 0x10 -/* 8014F480 0014C3E0 80 1F 00 00 */ lwz r0, 0(r31) -/* 8014F484 0014C3E4 EC 00 07 FA */ fmadds f0, f0, f31, f0 -/* 8014F488 0014C3E8 90 01 00 10 */ stw r0, 0x10(r1) -/* 8014F48C 0014C3EC FC 00 00 1E */ fctiwz f0, f0 -/* 8014F490 0014C3F0 D8 01 00 20 */ stfd f0, 0x20(r1) -/* 8014F494 0014C3F4 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8014F498 0014C3F8 7C 04 07 34 */ extsh r4, r0 -/* 8014F49C 0014C3FC 48 19 9A 11 */ bl PitchBend__11CSfxManagerF10CSfxHandlei -lbl_8014F4A0: -/* 8014F4A0 0014C400 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 -/* 8014F4A4 0014C404 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8014F4A8 0014C408 CB E1 00 30 */ lfd f31, 0x30(r1) -/* 8014F4AC 0014C40C 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8014F4B0 0014C410 7C 08 03 A6 */ mtlr r0 -/* 8014F4B4 0014C414 38 21 00 40 */ addi r1, r1, 0x40 -/* 8014F4B8 0014C418 4E 80 00 20 */ blr - -.global ThinkPlayerInArea__22CScriptSpecialFunctionFfR13CStateManager -ThinkPlayerInArea__22CScriptSpecialFunctionFfR13CStateManager: -/* 8014F4BC 0014C41C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8014F4C0 0014C420 7C 08 02 A6 */ mflr r0 -/* 8014F4C4 0014C424 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014F4C8 0014C428 80 A4 08 4C */ lwz r5, 0x84c(r4) -/* 8014F4CC 0014C42C 80 03 00 04 */ lwz r0, 4(r3) -/* 8014F4D0 0014C430 80 A5 00 04 */ lwz r5, 4(r5) -/* 8014F4D4 0014C434 7C 05 00 00 */ cmpw r5, r0 -/* 8014F4D8 0014C438 40 82 00 30 */ bne lbl_8014F508 -/* 8014F4DC 0014C43C 88 C3 01 E5 */ lbz r6, 0x1e5(r3) -/* 8014F4E0 0014C440 54 C0 D7 FF */ rlwinm. r0, r6, 0x1a, 0x1f, 0x1f -/* 8014F4E4 0014C444 40 82 00 4C */ bne lbl_8014F530 -/* 8014F4E8 0014C448 38 00 00 01 */ li r0, 1 -/* 8014F4EC 0014C44C 7C 85 23 78 */ mr r5, r4 -/* 8014F4F0 0014C450 50 06 36 72 */ rlwimi r6, r0, 6, 0x19, 0x19 -/* 8014F4F4 0014C454 38 80 00 03 */ li r4, 3 -/* 8014F4F8 0014C458 98 C3 01 E5 */ stb r6, 0x1e5(r3) -/* 8014F4FC 0014C45C 38 C0 FF FF */ li r6, -1 -/* 8014F500 0014C460 4B F0 1B C1 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 8014F504 0014C464 48 00 00 2C */ b lbl_8014F530 -lbl_8014F508: -/* 8014F508 0014C468 88 C3 01 E5 */ lbz r6, 0x1e5(r3) -/* 8014F50C 0014C46C 54 C0 D7 FF */ rlwinm. r0, r6, 0x1a, 0x1f, 0x1f -/* 8014F510 0014C470 41 82 00 20 */ beq lbl_8014F530 -/* 8014F514 0014C474 38 00 00 00 */ li r0, 0 -/* 8014F518 0014C478 7C 85 23 78 */ mr r5, r4 -/* 8014F51C 0014C47C 50 06 36 72 */ rlwimi r6, r0, 6, 0x19, 0x19 -/* 8014F520 0014C480 38 80 00 04 */ li r4, 4 -/* 8014F524 0014C484 98 C3 01 E5 */ stb r6, 0x1e5(r3) -/* 8014F528 0014C488 38 C0 FF FF */ li r6, -1 -/* 8014F52C 0014C48C 4B F0 1B 95 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -lbl_8014F530: -/* 8014F530 0014C490 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014F534 0014C494 7C 08 03 A6 */ mtlr r0 -/* 8014F538 0014C498 38 21 00 10 */ addi r1, r1, 0x10 -/* 8014F53C 0014C49C 4E 80 00 20 */ blr - -.global sub_8014f540 -sub_8014f540: -/* 8014F540 0014C4A0 94 21 FF 80 */ stwu r1, -0x80(r1) -/* 8014F544 0014C4A4 7C 08 02 A6 */ mflr r0 -/* 8014F548 0014C4A8 90 01 00 84 */ stw r0, 0x84(r1) -/* 8014F54C 0014C4AC DB E1 00 70 */ stfd f31, 0x70(r1) -/* 8014F550 0014C4B0 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 -/* 8014F554 0014C4B4 DB C1 00 60 */ stfd f30, 0x60(r1) -/* 8014F558 0014C4B8 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 -/* 8014F55C 0014C4BC DB A1 00 50 */ stfd f29, 0x50(r1) -/* 8014F560 0014C4C0 F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 -/* 8014F564 0014C4C4 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 8014F568 0014C4C8 93 C1 00 48 */ stw r30, 0x48(r1) -/* 8014F56C 0014C4CC 93 A1 00 44 */ stw r29, 0x44(r1) -/* 8014F570 0014C4D0 93 81 00 40 */ stw r28, 0x40(r1) -/* 8014F574 0014C4D4 7C 7D 1B 78 */ mr r29, r3 -/* 8014F578 0014C4D8 7C 9E 23 78 */ mr r30, r4 -/* 8014F57C 0014C4DC C0 43 00 FC */ lfs f2, 0xfc(r3) -/* 8014F580 0014C4E0 C0 03 01 00 */ lfs f0, 0x100(r3) -/* 8014F584 0014C4E4 EF A1 00 B2 */ fmuls f29, f1, f2 -/* 8014F588 0014C4E8 83 E3 00 2C */ lwz r31, 0x2c(r3) -/* 8014F58C 0014C4EC D0 01 00 30 */ stfs f0, 0x30(r1) -/* 8014F590 0014C4F0 48 00 01 58 */ b lbl_8014F6E8 -lbl_8014F594: -/* 8014F594 0014C4F4 80 1F 00 00 */ lwz r0, 0(r31) -/* 8014F598 0014C4F8 2C 00 00 12 */ cmpwi r0, 0x12 -/* 8014F59C 0014C4FC 40 82 01 48 */ bne lbl_8014F6E4 -/* 8014F5A0 0014C500 80 1F 00 04 */ lwz r0, 4(r31) -/* 8014F5A4 0014C504 2C 00 00 01 */ cmpwi r0, 1 -/* 8014F5A8 0014C508 40 82 01 3C */ bne lbl_8014F6E4 -/* 8014F5AC 0014C50C 80 1F 00 08 */ lwz r0, 8(r31) -/* 8014F5B0 0014C510 7F C4 F3 78 */ mr r4, r30 -/* 8014F5B4 0014C514 38 61 00 0C */ addi r3, r1, 0xc -/* 8014F5B8 0014C518 38 A1 00 2C */ addi r5, r1, 0x2c -/* 8014F5BC 0014C51C 90 01 00 2C */ stw r0, 0x2c(r1) -/* 8014F5C0 0014C520 4B EF 89 5D */ bl GetIdForScript__13CStateManagerCF9TEditorId -/* 8014F5C4 0014C524 A0 01 00 0C */ lhz r0, 0xc(r1) -/* 8014F5C8 0014C528 7F C3 F3 78 */ mr r3, r30 -/* 8014F5CC 0014C52C 38 81 00 08 */ addi r4, r1, 8 -/* 8014F5D0 0014C530 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8014F5D4 0014C534 B0 01 00 08 */ sth r0, 8(r1) -/* 8014F5D8 0014C538 4B EF CF 9D */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8014F5DC 0014C53C 7C 64 1B 78 */ mr r4, r3 -/* 8014F5E0 0014C540 38 61 00 34 */ addi r3, r1, 0x34 -/* 8014F5E4 0014C544 4B F6 06 AD */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8014F5E8 0014C548 83 83 00 04 */ lwz r28, 4(r3) -/* 8014F5EC 0014C54C 28 1C 00 00 */ cmplwi r28, 0 -/* 8014F5F0 0014C550 41 82 00 F4 */ beq lbl_8014F6E4 -/* 8014F5F4 0014C554 80 9C 00 64 */ lwz r4, 0x64(r28) -/* 8014F5F8 0014C558 38 60 00 00 */ li r3, 0 -/* 8014F5FC 0014C55C 28 04 00 00 */ cmplwi r4, 0 -/* 8014F600 0014C560 41 82 00 20 */ beq lbl_8014F620 -/* 8014F604 0014C564 80 04 00 10 */ lwz r0, 0x10(r4) -/* 8014F608 0014C568 28 00 00 00 */ cmplwi r0, 0 -/* 8014F60C 0014C56C 40 82 00 10 */ bne lbl_8014F61C -/* 8014F610 0014C570 88 04 00 28 */ lbz r0, 0x28(r4) -/* 8014F614 0014C574 28 00 00 00 */ cmplwi r0, 0 -/* 8014F618 0014C578 41 82 00 08 */ beq lbl_8014F620 -lbl_8014F61C: -/* 8014F61C 0014C57C 38 60 00 01 */ li r3, 1 -lbl_8014F620: -/* 8014F620 0014C580 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8014F624 0014C584 41 82 00 C0 */ beq lbl_8014F6E4 -/* 8014F628 0014C588 C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) -/* 8014F62C 0014C58C C0 24 00 00 */ lfs f1, 0(r4) -/* 8014F630 0014C590 FC 1D 00 40 */ fcmpo cr0, f29, f0 -/* 8014F634 0014C594 C3 E4 00 04 */ lfs f31, 4(r4) -/* 8014F638 0014C598 C3 C4 00 08 */ lfs f30, 8(r4) -/* 8014F63C 0014C59C 40 81 00 50 */ ble lbl_8014F68C -/* 8014F640 0014C5A0 EC 1D 08 2A */ fadds f0, f29, f1 -/* 8014F644 0014C5A4 38 61 00 28 */ addi r3, r1, 0x28 -/* 8014F648 0014C5A8 38 81 00 30 */ addi r4, r1, 0x30 -/* 8014F64C 0014C5AC D0 01 00 28 */ stfs f0, 0x28(r1) -/* 8014F650 0014C5B0 4B F2 E7 91 */ bl "Min__5CMathFRCfRCf" -/* 8014F654 0014C5B4 EC 1D F8 2A */ fadds f0, f29, f31 -/* 8014F658 0014C5B8 C3 E3 00 00 */ lfs f31, 0(r3) -/* 8014F65C 0014C5BC 38 61 00 24 */ addi r3, r1, 0x24 -/* 8014F660 0014C5C0 38 81 00 30 */ addi r4, r1, 0x30 -/* 8014F664 0014C5C4 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 8014F668 0014C5C8 4B F2 E7 79 */ bl "Min__5CMathFRCfRCf" -/* 8014F66C 0014C5CC EC 1D F0 2A */ fadds f0, f29, f30 -/* 8014F670 0014C5D0 C3 C3 00 00 */ lfs f30, 0(r3) -/* 8014F674 0014C5D4 38 61 00 20 */ addi r3, r1, 0x20 -/* 8014F678 0014C5D8 38 81 00 30 */ addi r4, r1, 0x30 -/* 8014F67C 0014C5DC D0 01 00 20 */ stfs f0, 0x20(r1) -/* 8014F680 0014C5E0 4B F2 E7 61 */ bl "Min__5CMathFRCfRCf" -/* 8014F684 0014C5E4 C0 03 00 00 */ lfs f0, 0(r3) -/* 8014F688 0014C5E8 48 00 00 4C */ b lbl_8014F6D4 -lbl_8014F68C: -/* 8014F68C 0014C5EC EC 1D 08 2A */ fadds f0, f29, f1 -/* 8014F690 0014C5F0 38 61 00 1C */ addi r3, r1, 0x1c -/* 8014F694 0014C5F4 38 81 00 30 */ addi r4, r1, 0x30 -/* 8014F698 0014C5F8 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 8014F69C 0014C5FC 4B F0 00 95 */ bl "Max__5CMathFRCfRCf" -/* 8014F6A0 0014C600 EC 1D F8 2A */ fadds f0, f29, f31 -/* 8014F6A4 0014C604 C3 E3 00 00 */ lfs f31, 0(r3) -/* 8014F6A8 0014C608 38 61 00 18 */ addi r3, r1, 0x18 -/* 8014F6AC 0014C60C 38 81 00 30 */ addi r4, r1, 0x30 -/* 8014F6B0 0014C610 D0 01 00 18 */ stfs f0, 0x18(r1) -/* 8014F6B4 0014C614 4B F0 00 7D */ bl "Max__5CMathFRCfRCf" -/* 8014F6B8 0014C618 EC 1D F0 2A */ fadds f0, f29, f30 -/* 8014F6BC 0014C61C C3 C3 00 00 */ lfs f30, 0(r3) -/* 8014F6C0 0014C620 38 61 00 14 */ addi r3, r1, 0x14 -/* 8014F6C4 0014C624 38 81 00 30 */ addi r4, r1, 0x30 -/* 8014F6C8 0014C628 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 8014F6CC 0014C62C 4B F0 00 65 */ bl "Max__5CMathFRCfRCf" -/* 8014F6D0 0014C630 C0 03 00 00 */ lfs f0, 0(r3) -lbl_8014F6D4: -/* 8014F6D4 0014C634 80 7C 00 64 */ lwz r3, 0x64(r28) -/* 8014F6D8 0014C638 D3 E3 00 00 */ stfs f31, 0(r3) -/* 8014F6DC 0014C63C D3 C3 00 04 */ stfs f30, 4(r3) -/* 8014F6E0 0014C640 D0 03 00 08 */ stfs f0, 8(r3) -lbl_8014F6E4: -/* 8014F6E4 0014C644 3B FF 00 0C */ addi r31, r31, 0xc -lbl_8014F6E8: -/* 8014F6E8 0014C648 80 1D 00 24 */ lwz r0, 0x24(r29) -/* 8014F6EC 0014C64C 80 7D 00 2C */ lwz r3, 0x2c(r29) -/* 8014F6F0 0014C650 1C 00 00 0C */ mulli r0, r0, 0xc -/* 8014F6F4 0014C654 7C 03 02 14 */ add r0, r3, r0 -/* 8014F6F8 0014C658 7C 1F 00 40 */ cmplw r31, r0 -/* 8014F6FC 0014C65C 40 82 FE 98 */ bne lbl_8014F594 -/* 8014F700 0014C660 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 -/* 8014F704 0014C664 CB E1 00 70 */ lfd f31, 0x70(r1) -/* 8014F708 0014C668 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 -/* 8014F70C 0014C66C CB C1 00 60 */ lfd f30, 0x60(r1) -/* 8014F710 0014C670 E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0 -/* 8014F714 0014C674 CB A1 00 50 */ lfd f29, 0x50(r1) -/* 8014F718 0014C678 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 8014F71C 0014C67C 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 8014F720 0014C680 83 A1 00 44 */ lwz r29, 0x44(r1) -/* 8014F724 0014C684 80 01 00 84 */ lwz r0, 0x84(r1) -/* 8014F728 0014C688 83 81 00 40 */ lwz r28, 0x40(r1) -/* 8014F72C 0014C68C 7C 08 03 A6 */ mtlr r0 -/* 8014F730 0014C690 38 21 00 80 */ addi r1, r1, 0x80 -/* 8014F734 0014C694 4E 80 00 20 */ blr - -.global ThinkAreaDamage__22CScriptSpecialFunctionFfR13CStateManager -ThinkAreaDamage__22CScriptSpecialFunctionFfR13CStateManager: -/* 8014F738 0014C698 94 21 FF 80 */ stwu r1, -0x80(r1) -/* 8014F73C 0014C69C 7C 08 02 A6 */ mflr r0 -/* 8014F740 0014C6A0 90 01 00 84 */ stw r0, 0x84(r1) -/* 8014F744 0014C6A4 DB E1 00 70 */ stfd f31, 0x70(r1) -/* 8014F748 0014C6A8 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 -/* 8014F74C 0014C6AC 93 E1 00 6C */ stw r31, 0x6c(r1) -/* 8014F750 0014C6B0 93 C1 00 68 */ stw r30, 0x68(r1) -/* 8014F754 0014C6B4 93 A1 00 64 */ stw r29, 0x64(r1) -/* 8014F758 0014C6B8 7C 7D 1B 78 */ mr r29, r3 -/* 8014F75C 0014C6BC 80 64 08 B8 */ lwz r3, 0x8b8(r4) -/* 8014F760 0014C6C0 83 E4 08 4C */ lwz r31, 0x84c(r4) -/* 8014F764 0014C6C4 7C 9E 23 78 */ mr r30, r4 -/* 8014F768 0014C6C8 80 83 00 00 */ lwz r4, 0(r3) -/* 8014F76C 0014C6CC FF E0 08 90 */ fmr f31, f1 -/* 8014F770 0014C6D0 88 7D 01 E4 */ lbz r3, 0x1e4(r29) -/* 8014F774 0014C6D4 80 E4 00 20 */ lwz r7, 0x20(r4) -/* 8014F778 0014C6D8 54 60 07 FF */ clrlwi. r0, r3, 0x1f -/* 8014F77C 0014C6DC 80 DF 00 04 */ lwz r6, 4(r31) -/* 8014F780 0014C6E0 80 BD 00 04 */ lwz r5, 4(r29) -/* 8014F784 0014C6E4 7C 87 00 D0 */ neg r4, r7 -/* 8014F788 0014C6E8 7C 84 38 78 */ andc r4, r4, r7 -/* 8014F78C 0014C6EC 7C 06 28 50 */ subf r0, r6, r5 -/* 8014F790 0014C6F0 7C 00 00 34 */ cntlzw r0, r0 -/* 8014F794 0014C6F4 54 84 0F FE */ srwi r4, r4, 0x1f -/* 8014F798 0014C6F8 54 00 D9 7E */ srwi r0, r0, 5 -/* 8014F79C 0014C6FC 41 82 00 54 */ beq lbl_8014F7F0 -/* 8014F7A0 0014C700 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 8014F7A4 0014C704 41 82 00 0C */ beq lbl_8014F7B0 -/* 8014F7A8 0014C708 28 04 00 00 */ cmplwi r4, 0 -/* 8014F7AC 0014C70C 41 82 00 90 */ beq lbl_8014F83C -lbl_8014F7B0: -/* 8014F7B0 0014C710 88 1D 01 E4 */ lbz r0, 0x1e4(r29) -/* 8014F7B4 0014C714 38 60 00 00 */ li r3, 0 -/* 8014F7B8 0014C718 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f -/* 8014F7BC 0014C71C 98 1D 01 E4 */ stb r0, 0x1e4(r29) -/* 8014F7C0 0014C720 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 8014F7C4 0014C724 4B EC 21 81 */ bl DecrementPhazon__7CPlayerFv -/* 8014F7C8 0014C728 7F A3 EB 78 */ mr r3, r29 -/* 8014F7CC 0014C72C 7F C5 F3 78 */ mr r5, r30 -/* 8014F7D0 0014C730 38 80 00 04 */ li r4, 4 -/* 8014F7D4 0014C734 38 C0 FF FF */ li r6, -1 -/* 8014F7D8 0014C738 4B F0 18 E9 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 8014F7DC 0014C73C 88 1E 0F 94 */ lbz r0, 0xf94(r30) -/* 8014F7E0 0014C740 38 60 00 00 */ li r3, 0 -/* 8014F7E4 0014C744 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e -/* 8014F7E8 0014C748 98 1E 0F 94 */ stb r0, 0xf94(r30) -/* 8014F7EC 0014C74C 48 00 01 28 */ b lbl_8014F914 -lbl_8014F7F0: -/* 8014F7F0 0014C750 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 8014F7F4 0014C754 41 82 01 20 */ beq lbl_8014F914 -/* 8014F7F8 0014C758 28 04 00 00 */ cmplwi r4, 0 -/* 8014F7FC 0014C75C 41 82 00 08 */ beq lbl_8014F804 -/* 8014F800 0014C760 48 00 01 14 */ b lbl_8014F914 -lbl_8014F804: -/* 8014F804 0014C764 38 00 00 01 */ li r0, 1 -/* 8014F808 0014C768 50 03 07 FE */ rlwimi r3, r0, 0, 0x1f, 0x1f -/* 8014F80C 0014C76C 98 7D 01 E4 */ stb r3, 0x1e4(r29) -/* 8014F810 0014C770 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 8014F814 0014C774 4B EC 21 49 */ bl IncrementPhazon__7CPlayerFv -/* 8014F818 0014C778 7F A3 EB 78 */ mr r3, r29 -/* 8014F81C 0014C77C 7F C5 F3 78 */ mr r5, r30 -/* 8014F820 0014C780 38 80 00 03 */ li r4, 3 -/* 8014F824 0014C784 38 C0 FF FF */ li r6, -1 -/* 8014F828 0014C788 4B F0 18 99 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 8014F82C 0014C78C 88 1E 0F 94 */ lbz r0, 0xf94(r30) -/* 8014F830 0014C790 38 60 00 01 */ li r3, 1 -/* 8014F834 0014C794 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e -/* 8014F838 0014C798 98 1E 0F 94 */ stb r0, 0xf94(r30) -lbl_8014F83C: -/* 8014F83C 0014C79C 88 01 00 24 */ lbz r0, 0x24(r1) -/* 8014F840 0014C7A0 38 60 00 00 */ li r3, 0 -/* 8014F844 0014C7A4 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 8014F848 0014C7A8 C0 1D 00 FC */ lfs f0, 0xfc(r29) -/* 8014F84C 0014C7AC 98 01 00 24 */ stb r0, 0x24(r1) -/* 8014F850 0014C7B0 38 E0 00 0C */ li r7, 0xc -/* 8014F854 0014C7B4 EC 20 07 F2 */ fmuls f1, f0, f31 -/* 8014F858 0014C7B8 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 8014F85C 0014C7BC 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 8014F860 0014C7C0 C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) -/* 8014F864 0014C7C4 54 06 06 3E */ clrlwi r6, r0, 0x18 -/* 8014F868 0014C7C8 98 01 00 24 */ stb r0, 0x24(r1) -/* 8014F86C 0014C7CC 50 66 2E B4 */ rlwimi r6, r3, 5, 0x1a, 0x1a -/* 8014F870 0014C7D0 88 01 00 58 */ lbz r0, 0x58(r1) -/* 8014F874 0014C7D4 38 60 00 01 */ li r3, 1 -/* 8014F878 0014C7D8 80 AD 8C 48 */ lwz r5, lbl_805A7808@sda21(r13) -/* 8014F87C 0014C7DC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 8014F880 0014C7E0 90 E1 00 20 */ stw r7, 0x20(r1) -/* 8014F884 0014C7E4 38 60 00 00 */ li r3, 0 -/* 8014F888 0014C7E8 38 80 00 01 */ li r4, 1 -/* 8014F88C 0014C7EC 98 C1 00 24 */ stb r6, 0x24(r1) -/* 8014F890 0014C7F0 90 E1 00 40 */ stw r7, 0x40(r1) -/* 8014F894 0014C7F4 98 C1 00 44 */ stb r6, 0x44(r1) -/* 8014F898 0014C7F8 D0 21 00 48 */ stfs f1, 0x48(r1) -/* 8014F89C 0014C7FC D0 21 00 4C */ stfs f1, 0x4c(r1) -/* 8014F8A0 0014C800 D0 01 00 50 */ stfs f0, 0x50(r1) -/* 8014F8A4 0014C804 D0 01 00 54 */ stfs f0, 0x54(r1) -/* 8014F8A8 0014C808 98 01 00 58 */ stb r0, 0x58(r1) -/* 8014F8AC 0014C80C 48 23 A6 49 */ bl __shl2i -/* 8014F8B0 0014C810 39 40 00 00 */ li r10, 0 -/* 8014F8B4 0014C814 38 00 00 03 */ li r0, 3 -/* 8014F8B8 0014C818 90 81 00 2C */ stw r4, 0x2c(r1) -/* 8014F8BC 0014C81C 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8014F8C0 0014C820 39 24 66 A0 */ addi r9, r4, skZero3f@l -/* 8014F8C4 0014C824 38 A1 00 14 */ addi r5, r1, 0x14 -/* 8014F8C8 0014C828 90 61 00 28 */ stw r3, 0x28(r1) -/* 8014F8CC 0014C82C 38 81 00 1C */ addi r4, r1, 0x1c -/* 8014F8D0 0014C830 7F C3 F3 78 */ mr r3, r30 -/* 8014F8D4 0014C834 38 C1 00 0C */ addi r6, r1, 0xc -/* 8014F8D8 0014C838 91 41 00 34 */ stw r10, 0x34(r1) -/* 8014F8DC 0014C83C 38 E1 00 40 */ addi r7, r1, 0x40 -/* 8014F8E0 0014C840 39 01 00 28 */ addi r8, r1, 0x28 -/* 8014F8E4 0014C844 91 41 00 30 */ stw r10, 0x30(r1) -/* 8014F8E8 0014C848 90 01 00 38 */ stw r0, 0x38(r1) -/* 8014F8EC 0014C84C A0 1D 00 08 */ lhz r0, 8(r29) -/* 8014F8F0 0014C850 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8014F8F4 0014C854 A1 5F 00 08 */ lhz r10, 8(r31) -/* 8014F8F8 0014C858 B0 01 00 08 */ sth r0, 8(r1) -/* 8014F8FC 0014C85C B1 41 00 14 */ sth r10, 0x14(r1) -/* 8014F900 0014C860 A0 1D 00 08 */ lhz r0, 8(r29) -/* 8014F904 0014C864 B1 41 00 10 */ sth r10, 0x10(r1) -/* 8014F908 0014C868 B0 01 00 18 */ sth r0, 0x18(r1) -/* 8014F90C 0014C86C B0 01 00 1C */ sth r0, 0x1c(r1) -/* 8014F910 0014C870 4B EF A7 91 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f -lbl_8014F914: -/* 8014F914 0014C874 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 -/* 8014F918 0014C878 80 01 00 84 */ lwz r0, 0x84(r1) -/* 8014F91C 0014C87C CB E1 00 70 */ lfd f31, 0x70(r1) -/* 8014F920 0014C880 83 E1 00 6C */ lwz r31, 0x6c(r1) -/* 8014F924 0014C884 83 C1 00 68 */ lwz r30, 0x68(r1) -/* 8014F928 0014C888 83 A1 00 64 */ lwz r29, 0x64(r1) -/* 8014F92C 0014C88C 7C 08 03 A6 */ mtlr r0 -/* 8014F930 0014C890 38 21 00 80 */ addi r1, r1, 0x80 -/* 8014F934 0014C894 4E 80 00 20 */ blr - -.global ThinkRainSimulator__22CScriptSpecialFunctionFfR13CStateManager -ThinkRainSimulator__22CScriptSpecialFunctionFfR13CStateManager: -/* 8014F938 0014C898 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8014F93C 0014C89C 7C 08 02 A6 */ mflr r0 -/* 8014F940 0014C8A0 3C A0 91 A3 */ lis r5, 0x91A2B3C5@ha -/* 8014F944 0014C8A4 C8 62 9D A8 */ lfd f3, lbl_805ABAC8@sda21(r2) -/* 8014F948 0014C8A8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8014F94C 0014C8AC 3C 00 43 30 */ lis r0, 0x4330 -/* 8014F950 0014C8B0 38 A5 B3 C5 */ addi r5, r5, 0x91A2B3C5@l -/* 8014F954 0014C8B4 C0 22 9D A0 */ lfs f1, lbl_805ABAC0@sda21(r2) -/* 8014F958 0014C8B8 80 C4 08 D4 */ lwz r6, 0x8d4(r4) -/* 8014F95C 0014C8BC 90 01 00 08 */ stw r0, 8(r1) -/* 8014F960 0014C8C0 7C A5 30 16 */ mulhwu r5, r5, r6 -/* 8014F964 0014C8C4 C0 02 9D A4 */ lfs f0, lbl_805ABAC4@sda21(r2) -/* 8014F968 0014C8C8 54 A5 AA FE */ srwi r5, r5, 0xb -/* 8014F96C 0014C8CC 1C 05 0E 10 */ mulli r0, r5, 0xe10 -/* 8014F970 0014C8D0 7C 00 30 50 */ subf r0, r0, r6 -/* 8014F974 0014C8D4 90 01 00 0C */ stw r0, 0xc(r1) -/* 8014F978 0014C8D8 C8 41 00 08 */ lfd f2, 8(r1) -/* 8014F97C 0014C8DC EC 42 18 28 */ fsubs f2, f2, f3 -/* 8014F980 0014C8E0 EC 22 08 24 */ fdivs f1, f2, f1 -/* 8014F984 0014C8E4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8014F988 0014C8E8 40 80 00 18 */ bge lbl_8014F9A0 -/* 8014F98C 0014C8EC 7C 85 23 78 */ mr r5, r4 -/* 8014F990 0014C8F0 38 80 00 07 */ li r4, 7 -/* 8014F994 0014C8F4 38 C0 FF FF */ li r6, -1 -/* 8014F998 0014C8F8 4B F0 17 29 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 8014F99C 0014C8FC 48 00 00 14 */ b lbl_8014F9B0 -lbl_8014F9A0: -/* 8014F9A0 0014C900 7C 85 23 78 */ mr r5, r4 -/* 8014F9A4 0014C904 38 80 00 09 */ li r4, 9 -/* 8014F9A8 0014C908 38 C0 FF FF */ li r6, -1 -/* 8014F9AC 0014C90C 4B F0 17 15 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -lbl_8014F9B0: -/* 8014F9B0 0014C910 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8014F9B4 0014C914 7C 08 03 A6 */ mtlr r0 -/* 8014F9B8 0014C918 38 21 00 10 */ addi r1, r1, 0x10 -/* 8014F9BC 0014C91C 4E 80 00 20 */ blr - -.global ThinkChaffTarget__22CScriptSpecialFunctionFfR13CStateManager -ThinkChaffTarget__22CScriptSpecialFunctionFfR13CStateManager: -/* 8014F9C0 0014C920 94 21 F7 50 */ stwu r1, -0x8b0(r1) -/* 8014F9C4 0014C924 7C 08 02 A6 */ mflr r0 -/* 8014F9C8 0014C928 90 01 08 B4 */ stw r0, 0x8b4(r1) -/* 8014F9CC 0014C92C DB E1 08 A0 */ stfd f31, 0x8a0(r1) -/* 8014F9D0 0014C930 F3 E1 08 A8 */ psq_st f31, -1880(r1), 0, qr0 -/* 8014F9D4 0014C934 BF 61 08 8C */ stmw r27, 0x88c(r1) -/* 8014F9D8 0014C938 38 00 00 00 */ li r0, 0 -/* 8014F9DC 0014C93C 7C 7E 1B 78 */ mr r30, r3 -/* 8014F9E0 0014C940 90 01 00 80 */ stw r0, 0x80(r1) -/* 8014F9E4 0014C944 7C 9F 23 78 */ mr r31, r4 -/* 8014F9E8 0014C948 C0 62 9D B0 */ lfs f3, lbl_805ABAD0@sda21(r2) -/* 8014F9EC 0014C94C FF E0 08 90 */ fmr f31, f1 -/* 8014F9F0 0014C950 C0 83 00 50 */ lfs f4, 0x50(r3) -/* 8014F9F4 0014C954 38 61 00 68 */ addi r3, r1, 0x68 -/* 8014F9F8 0014C958 C0 5E 00 60 */ lfs f2, 0x60(r30) -/* 8014F9FC 0014C95C 38 81 00 40 */ addi r4, r1, 0x40 -/* 8014FA00 0014C960 C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 8014FA04 0014C964 EC C4 18 2A */ fadds f6, f4, f3 -/* 8014FA08 0014C968 38 A1 00 34 */ addi r5, r1, 0x34 -/* 8014FA0C 0014C96C EC A2 18 2A */ fadds f5, f2, f3 -/* 8014FA10 0014C970 EC 20 18 2A */ fadds f1, f0, f3 -/* 8014FA14 0014C974 EC 84 18 28 */ fsubs f4, f4, f3 -/* 8014FA18 0014C978 D0 C1 00 38 */ stfs f6, 0x38(r1) -/* 8014FA1C 0014C97C EC 42 18 28 */ fsubs f2, f2, f3 -/* 8014FA20 0014C980 EC 00 18 28 */ fsubs f0, f0, f3 -/* 8014FA24 0014C984 D0 21 00 34 */ stfs f1, 0x34(r1) -/* 8014FA28 0014C988 D0 A1 00 3C */ stfs f5, 0x3c(r1) -/* 8014FA2C 0014C98C D0 01 00 40 */ stfs f0, 0x40(r1) -/* 8014FA30 0014C990 D0 81 00 44 */ stfs f4, 0x44(r1) -/* 8014FA34 0014C994 D0 41 00 48 */ stfs f2, 0x48(r1) -/* 8014FA38 0014C998 48 1E 8A D1 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 8014FA3C 0014C99C 80 AD 8C 68 */ lwz r5, lbl_805A7828@sda21(r13) -/* 8014FA40 0014C9A0 38 60 00 00 */ li r3, 0 -/* 8014FA44 0014C9A4 38 80 00 01 */ li r4, 1 -/* 8014FA48 0014C9A8 48 23 A4 AD */ bl __shl2i -/* 8014FA4C 0014C9AC 39 00 00 00 */ li r8, 0 -/* 8014FA50 0014C9B0 38 00 00 01 */ li r0, 1 -/* 8014FA54 0014C9B4 90 81 00 54 */ stw r4, 0x54(r1) -/* 8014FA58 0014C9B8 38 81 00 80 */ addi r4, r1, 0x80 -/* 8014FA5C 0014C9BC 38 A1 00 68 */ addi r5, r1, 0x68 -/* 8014FA60 0014C9C0 38 C1 00 50 */ addi r6, r1, 0x50 -/* 8014FA64 0014C9C4 90 61 00 50 */ stw r3, 0x50(r1) -/* 8014FA68 0014C9C8 7F E3 FB 78 */ mr r3, r31 -/* 8014FA6C 0014C9CC 38 E0 00 00 */ li r7, 0 -/* 8014FA70 0014C9D0 91 01 00 5C */ stw r8, 0x5c(r1) -/* 8014FA74 0014C9D4 91 01 00 58 */ stw r8, 0x58(r1) -/* 8014FA78 0014C9D8 90 01 00 60 */ stw r0, 0x60(r1) -/* 8014FA7C 0014C9DC 4B EF CC A5 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" -/* 8014FA80 0014C9E0 3B A1 00 84 */ addi r29, r1, 0x84 -/* 8014FA84 0014C9E4 3B 9F 0C BC */ addi r28, r31, 0xcbc -/* 8014FA88 0014C9E8 3B 60 00 00 */ li r27, 0 -/* 8014FA8C 0014C9EC 48 00 00 C4 */ b lbl_8014FB50 -lbl_8014FA90: -/* 8014FA90 0014C9F0 A0 1D 00 00 */ lhz r0, 0(r29) -/* 8014FA94 0014C9F4 7F E3 FB 78 */ mr r3, r31 -/* 8014FA98 0014C9F8 38 81 00 20 */ addi r4, r1, 0x20 -/* 8014FA9C 0014C9FC B0 01 00 20 */ sth r0, 0x20(r1) -/* 8014FAA0 0014CA00 4B EF CA D5 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8014FAA4 0014CA04 7C 64 1B 78 */ mr r4, r3 -/* 8014FAA8 0014CA08 38 61 00 2C */ addi r3, r1, 0x2c -/* 8014FAAC 0014CA0C 4B F5 F2 1D */ bl "__ct__31TCastToPtr<17CEnergyProjectile>FP7CEntity" -/* 8014FAB0 0014CA10 80 83 00 04 */ lwz r4, 4(r3) -/* 8014FAB4 0014CA14 28 04 00 00 */ cmplwi r4, 0 -/* 8014FAB8 0014CA18 41 82 00 90 */ beq lbl_8014FB48 -/* 8014FABC 0014CA1C A0 64 02 C0 */ lhz r3, 0x2c0(r4) -/* 8014FAC0 0014CA20 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8014FAC4 0014CA24 7C 03 00 40 */ cmplw r3, r0 -/* 8014FAC8 0014CA28 40 82 00 80 */ bne lbl_8014FB48 -/* 8014FACC 0014CA2C 88 04 03 D0 */ lbz r0, 0x3d0(r4) -/* 8014FAD0 0014CA30 38 60 00 01 */ li r3, 1 -/* 8014FAD4 0014CA34 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 8014FAD8 0014CA38 98 04 03 D0 */ stb r0, 0x3d0(r4) -/* 8014FADC 0014CA3C 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8014FAE0 0014CA40 80 1E 00 04 */ lwz r0, 4(r30) -/* 8014FAE4 0014CA44 80 83 00 04 */ lwz r4, 4(r3) -/* 8014FAE8 0014CA48 7C 04 00 00 */ cmpw r4, r0 -/* 8014FAEC 0014CA4C 40 82 00 5C */ bne lbl_8014FB48 -/* 8014FAF0 0014CA50 C0 3E 01 00 */ lfs f1, 0x100(r30) -/* 8014FAF4 0014CA54 C0 42 80 F8 */ lfs f2, lbl_805A9E18@sda21(r2) -/* 8014FAF8 0014CA58 C0 62 80 FC */ lfs f3, lbl_805A9E1C@sda21(r2) -/* 8014FAFC 0014CA5C 4B EC 35 71 */ bl SetHudDisable__7CPlayerFfff -/* 8014FB00 0014CA60 C0 22 9D B4 */ lfs f1, lbl_805ABAD4@sda21(r2) -/* 8014FB04 0014CA64 38 61 00 28 */ addi r3, r1, 0x28 -/* 8014FB08 0014CA68 C0 1E 00 FC */ lfs f0, 0xfc(r30) -/* 8014FB0C 0014CA6C FC 40 08 90 */ fmr f2, f1 -/* 8014FB10 0014CA70 FC 60 08 90 */ fmr f3, f1 -/* 8014FB14 0014CA74 D0 1E 01 94 */ stfs f0, 0x194(r30) -/* 8014FB18 0014CA78 FC 80 08 90 */ fmr f4, f1 -/* 8014FB1C 0014CA7C 48 21 38 D1 */ bl __ct__6CColorFffff -/* 8014FB20 0014CA80 C0 22 9D 9C */ lfs f1, lbl_805ABABC@sda21(r2) -/* 8014FB24 0014CA84 7C 66 1B 78 */ mr r6, r3 -/* 8014FB28 0014CA88 7F 83 E3 78 */ mr r3, r28 -/* 8014FB2C 0014CA8C 38 80 00 05 */ li r4, 5 -/* 8014FB30 0014CA90 38 A0 00 00 */ li r5, 0 -/* 8014FB34 0014CA94 38 E0 FF FF */ li r7, -1 -/* 8014FB38 0014CA98 4B F9 D8 69 */ bl SetFilter__17CCameraFilterPassFQ217CCameraFilterPass11EFilterTypeQ217CCameraFilterPass12EFilterShapefRC6CColorUi -/* 8014FB3C 0014CA9C C0 22 9D B8 */ lfs f1, lbl_805ABAD8@sda21(r2) -/* 8014FB40 0014CAA0 7F 83 E3 78 */ mr r3, r28 -/* 8014FB44 0014CAA4 4B F9 D8 25 */ bl DisableFilter__17CCameraFilterPassFf -lbl_8014FB48: -/* 8014FB48 0014CAA8 3B BD 00 02 */ addi r29, r29, 2 -/* 8014FB4C 0014CAAC 3B 7B 00 01 */ addi r27, r27, 1 -lbl_8014FB50: -/* 8014FB50 0014CAB0 80 01 00 80 */ lwz r0, 0x80(r1) -/* 8014FB54 0014CAB4 7C 1B 00 00 */ cmpw r27, r0 -/* 8014FB58 0014CAB8 41 80 FF 38 */ blt lbl_8014FA90 -/* 8014FB5C 0014CABC C0 1E 01 94 */ lfs f0, 0x194(r30) -/* 8014FB60 0014CAC0 38 81 00 24 */ addi r4, r1, 0x24 -/* 8014FB64 0014CAC4 3B 60 00 00 */ li r27, 0 -/* 8014FB68 0014CAC8 38 6D 8C 6C */ addi r3, r13, lbl_805A782C@sda21 -/* 8014FB6C 0014CACC EC 00 F8 28 */ fsubs f0, f0, f31 -/* 8014FB70 0014CAD0 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 8014FB74 0014CAD4 4B EF FB BD */ bl "Max__5CMathFRCfRCf" -/* 8014FB78 0014CAD8 C0 23 00 00 */ lfs f1, 0(r3) -/* 8014FB7C 0014CADC C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) -/* 8014FB80 0014CAE0 D0 3E 01 94 */ stfs f1, 0x194(r30) -/* 8014FB84 0014CAE4 C0 BE 01 94 */ lfs f5, 0x194(r30) -/* 8014FB88 0014CAE8 FC 05 00 00 */ fcmpu cr0, f5, f0 -/* 8014FB8C 0014CAEC 41 82 00 6C */ beq lbl_8014FBF8 -/* 8014FB90 0014CAF0 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8014FB94 0014CAF4 80 1E 00 04 */ lwz r0, 4(r30) -/* 8014FB98 0014CAF8 80 63 00 04 */ lwz r3, 4(r3) -/* 8014FB9C 0014CAFC 7C 03 00 00 */ cmpw r3, r0 -/* 8014FBA0 0014CB00 40 82 00 58 */ bne lbl_8014FBF8 -/* 8014FBA4 0014CB04 C0 62 9D A4 */ lfs f3, lbl_805ABAC4@sda21(r2) -/* 8014FBA8 0014CB08 3B 60 00 01 */ li r27, 1 -/* 8014FBAC 0014CB0C C0 02 9D B4 */ lfs f0, lbl_805ABAD4@sda21(r2) -/* 8014FBB0 0014CB10 EC 43 01 72 */ fmuls f2, f3, f5 -/* 8014FBB4 0014CB14 C0 3E 00 FC */ lfs f1, 0xfc(r30) -/* 8014FBB8 0014CB18 C0 9E 01 04 */ lfs f4, 0x104(r30) -/* 8014FBBC 0014CB1C FC 05 00 40 */ fcmpo cr0, f5, f0 -/* 8014FBC0 0014CB20 EC 02 08 24 */ fdivs f0, f2, f1 -/* 8014FBC4 0014CB24 EC 03 00 2A */ fadds f0, f3, f0 -/* 8014FBC8 0014CB28 EC 24 00 32 */ fmuls f1, f4, f0 -/* 8014FBCC 0014CB2C 40 80 00 08 */ bge lbl_8014FBD4 -/* 8014FBD0 0014CB30 EC 21 01 72 */ fmuls f1, f1, f5 -lbl_8014FBD4: -/* 8014FBD4 0014CB34 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8014FBD8 0014CB38 38 81 00 1C */ addi r4, r1, 0x1c -/* 8014FBDC 0014CB3C C0 42 9D A4 */ lfs f2, lbl_805ABAC4@sda21(r2) -/* 8014FBE0 0014CB40 B0 01 00 1C */ sth r0, 0x1c(r1) -/* 8014FBE4 0014CB44 80 7F 08 B8 */ lwz r3, 0x8b8(r31) -/* 8014FBE8 0014CB48 B0 01 00 18 */ sth r0, 0x18(r1) -/* 8014FBEC 0014CB4C 80 63 00 00 */ lwz r3, 0(r3) -/* 8014FBF0 0014CB50 38 63 01 88 */ addi r3, r3, 0x188 -/* 8014FBF4 0014CB54 48 07 0F 45 */ bl AddSource__19CStaticInterferenceF9TUniqueId -lbl_8014FBF8: -/* 8014FBF8 0014CB58 57 60 06 3F */ clrlwi. r0, r27, 0x18 -/* 8014FBFC 0014CB5C 41 82 00 38 */ beq lbl_8014FC34 -/* 8014FC00 0014CB60 80 7F 08 B8 */ lwz r3, 0x8b8(r31) -/* 8014FC04 0014CB64 80 63 00 00 */ lwz r3, 0(r3) -/* 8014FC08 0014CB68 80 03 00 14 */ lwz r0, 0x14(r3) -/* 8014FC0C 0014CB6C 2C 00 00 03 */ cmpwi r0, 3 -/* 8014FC10 0014CB70 41 82 00 24 */ beq lbl_8014FC34 -/* 8014FC14 0014CB74 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8014FC18 0014CB78 7F E4 FB 78 */ mr r4, r31 -/* 8014FC1C 0014CB7C 38 A1 00 14 */ addi r5, r1, 0x14 -/* 8014FC20 0014CB80 B0 01 00 14 */ sth r0, 0x14(r1) -/* 8014FC24 0014CB84 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8014FC28 0014CB88 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8014FC2C 0014CB8C 48 02 E4 25 */ bl AddOrbitDisableSource__7CPlayerFR13CStateManager9TUniqueId -/* 8014FC30 0014CB90 48 00 00 1C */ b lbl_8014FC4C -lbl_8014FC34: -/* 8014FC34 0014CB94 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8014FC38 0014CB98 38 81 00 0C */ addi r4, r1, 0xc -/* 8014FC3C 0014CB9C B0 01 00 0C */ sth r0, 0xc(r1) -/* 8014FC40 0014CBA0 B0 01 00 08 */ sth r0, 8(r1) -/* 8014FC44 0014CBA4 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8014FC48 0014CBA8 48 02 E3 89 */ bl RemoveOrbitDisableSource__7CPlayerF9TUniqueId -lbl_8014FC4C: -/* 8014FC4C 0014CBAC 80 A1 00 80 */ lwz r5, 0x80(r1) -/* 8014FC50 0014CBB0 38 60 00 00 */ li r3, 0 -/* 8014FC54 0014CBB4 2C 05 00 00 */ cmpwi r5, 0 -/* 8014FC58 0014CBB8 40 81 00 40 */ ble lbl_8014FC98 -/* 8014FC5C 0014CBBC 2C 05 00 08 */ cmpwi r5, 8 -/* 8014FC60 0014CBC0 38 85 FF F8 */ addi r4, r5, -8 -/* 8014FC64 0014CBC4 40 81 00 20 */ ble lbl_8014FC84 -/* 8014FC68 0014CBC8 38 04 00 07 */ addi r0, r4, 7 -/* 8014FC6C 0014CBCC 54 00 E8 FE */ srwi r0, r0, 3 -/* 8014FC70 0014CBD0 7C 09 03 A6 */ mtctr r0 -/* 8014FC74 0014CBD4 2C 04 00 00 */ cmpwi r4, 0 -/* 8014FC78 0014CBD8 40 81 00 0C */ ble lbl_8014FC84 -lbl_8014FC7C: -/* 8014FC7C 0014CBDC 38 63 00 08 */ addi r3, r3, 8 -/* 8014FC80 0014CBE0 42 00 FF FC */ bdnz lbl_8014FC7C -lbl_8014FC84: -/* 8014FC84 0014CBE4 7C 03 28 50 */ subf r0, r3, r5 -/* 8014FC88 0014CBE8 7C 09 03 A6 */ mtctr r0 -/* 8014FC8C 0014CBEC 7C 03 28 00 */ cmpw r3, r5 -/* 8014FC90 0014CBF0 40 80 00 08 */ bge lbl_8014FC98 -lbl_8014FC94: -/* 8014FC94 0014CBF4 42 00 00 00 */ bdnz lbl_8014FC94 -lbl_8014FC98: -/* 8014FC98 0014CBF8 38 00 00 00 */ li r0, 0 -/* 8014FC9C 0014CBFC 90 01 00 80 */ stw r0, 0x80(r1) -/* 8014FCA0 0014CC00 E3 E1 08 A8 */ psq_l f31, -1880(r1), 0, qr0 -/* 8014FCA4 0014CC04 CB E1 08 A0 */ lfd f31, 0x8a0(r1) -/* 8014FCA8 0014CC08 BB 61 08 8C */ lmw r27, 0x88c(r1) -/* 8014FCAC 0014CC0C 80 01 08 B4 */ lwz r0, 0x8b4(r1) -/* 8014FCB0 0014CC10 7C 08 03 A6 */ mtlr r0 -/* 8014FCB4 0014CC14 38 21 08 B0 */ addi r1, r1, 0x8b0 -/* 8014FCB8 0014CC18 4E 80 00 20 */ blr - -.global Render__22CScriptSpecialFunctionCFRC13CStateManager -Render__22CScriptSpecialFunctionCFRC13CStateManager: -/* 8014FCBC 0014CC1C 94 21 FE A0 */ stwu r1, -0x160(r1) -/* 8014FCC0 0014CC20 7C 08 02 A6 */ mflr r0 -/* 8014FCC4 0014CC24 90 01 01 64 */ stw r0, 0x164(r1) -/* 8014FCC8 0014CC28 93 E1 01 5C */ stw r31, 0x15c(r1) -/* 8014FCCC 0014CC2C 7C 9F 23 78 */ mr r31, r4 -/* 8014FCD0 0014CC30 93 C1 01 58 */ stw r30, 0x158(r1) -/* 8014FCD4 0014CC34 7C 7E 1B 78 */ mr r30, r3 -/* 8014FCD8 0014CC38 80 03 00 E8 */ lwz r0, 0xe8(r3) -/* 8014FCDC 0014CC3C 2C 00 00 2F */ cmpwi r0, 0x2f -/* 8014FCE0 0014CC40 40 82 01 98 */ bne lbl_8014FE78 -/* 8014FCE4 0014CC44 88 1E 00 30 */ lbz r0, 0x30(r30) -/* 8014FCE8 0014CC48 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8014FCEC 0014CC4C 41 82 01 90 */ beq lbl_8014FE7C -/* 8014FCF0 0014CC50 48 1B A1 F1 */ bl GetSecondsMod900__9CGraphicsFv -/* 8014FCF4 0014CC54 C0 1E 01 00 */ lfs f0, 0x100(r30) -/* 8014FCF8 0014CC58 EC 20 00 72 */ fmuls f1, f0, f1 -/* 8014FCFC 0014CC5C 48 1C 50 F5 */ bl FastSinR__5CMathFf -/* 8014FD00 0014CC60 C0 1E 00 FC */ lfs f0, 0xfc(r30) -/* 8014FD04 0014CC64 7F E3 FB 78 */ mr r3, r31 -/* 8014FD08 0014CC68 EC 20 00 72 */ fmuls f1, f0, f1 -/* 8014FD0C 0014CC6C 4B EF 40 D5 */ bl IntegrateVisorFog__13CStateManagerFf -/* 8014FD10 0014CC70 C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) -/* 8014FD14 0014CC74 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8014FD18 0014CC78 40 81 01 64 */ ble lbl_8014FE7C -/* 8014FD1C 0014CC7C C0 7E 00 60 */ lfs f3, 0x60(r30) -/* 8014FD20 0014CC80 38 61 00 74 */ addi r3, r1, 0x74 -/* 8014FD24 0014CC84 C0 1E 01 14 */ lfs f0, 0x114(r30) -/* 8014FD28 0014CC88 38 81 00 50 */ addi r4, r1, 0x50 -/* 8014FD2C 0014CC8C C0 FE 00 50 */ lfs f7, 0x50(r30) -/* 8014FD30 0014CC90 38 A1 00 44 */ addi r5, r1, 0x44 -/* 8014FD34 0014CC94 EC C3 00 2A */ fadds f6, f3, f0 -/* 8014FD38 0014CC98 C0 5E 01 10 */ lfs f2, 0x110(r30) -/* 8014FD3C 0014CC9C C1 1E 00 40 */ lfs f8, 0x40(r30) -/* 8014FD40 0014CCA0 EC 83 00 28 */ fsubs f4, f3, f0 -/* 8014FD44 0014CCA4 C0 1E 01 0C */ lfs f0, 0x10c(r30) -/* 8014FD48 0014CCA8 EC A7 10 28 */ fsubs f5, f7, f2 -/* 8014FD4C 0014CCAC EC 68 00 28 */ fsubs f3, f8, f0 -/* 8014FD50 0014CCB0 D0 C1 00 4C */ stfs f6, 0x4c(r1) -/* 8014FD54 0014CCB4 EC E7 10 2A */ fadds f7, f7, f2 -/* 8014FD58 0014CCB8 EC 48 00 2A */ fadds f2, f8, f0 -/* 8014FD5C 0014CCBC D0 A1 00 54 */ stfs f5, 0x54(r1) -/* 8014FD60 0014CCC0 EC 06 08 2A */ fadds f0, f6, f1 -/* 8014FD64 0014CCC4 D0 61 00 50 */ stfs f3, 0x50(r1) -/* 8014FD68 0014CCC8 D0 81 00 58 */ stfs f4, 0x58(r1) -/* 8014FD6C 0014CCCC D0 41 00 44 */ stfs f2, 0x44(r1) -/* 8014FD70 0014CCD0 D0 E1 00 48 */ stfs f7, 0x48(r1) -/* 8014FD74 0014CCD4 D0 01 00 4C */ stfs f0, 0x4c(r1) -/* 8014FD78 0014CCD8 48 1E 87 91 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 8014FD7C 0014CCDC C0 61 00 88 */ lfs f3, 0x88(r1) -/* 8014FD80 0014CCE0 38 61 00 8C */ addi r3, r1, 0x8c -/* 8014FD84 0014CCE4 C0 21 00 7C */ lfs f1, 0x7c(r1) -/* 8014FD88 0014CCE8 38 81 00 2C */ addi r4, r1, 0x2c -/* 8014FD8C 0014CCEC C0 41 00 80 */ lfs f2, 0x80(r1) -/* 8014FD90 0014CCF0 C0 01 00 74 */ lfs f0, 0x74(r1) -/* 8014FD94 0014CCF4 EC 83 08 28 */ fsubs f4, f3, f1 -/* 8014FD98 0014CCF8 C0 22 9D A4 */ lfs f1, lbl_805ABAC4@sda21(r2) -/* 8014FD9C 0014CCFC EC 62 00 28 */ fsubs f3, f2, f0 -/* 8014FDA0 0014CD00 C0 41 00 84 */ lfs f2, 0x84(r1) -/* 8014FDA4 0014CD04 C0 01 00 78 */ lfs f0, 0x78(r1) -/* 8014FDA8 0014CD08 EC A1 01 32 */ fmuls f5, f1, f4 -/* 8014FDAC 0014CD0C D0 81 00 28 */ stfs f4, 0x28(r1) -/* 8014FDB0 0014CD10 EC 42 00 28 */ fsubs f2, f2, f0 -/* 8014FDB4 0014CD14 EC 01 00 F2 */ fmuls f0, f1, f3 -/* 8014FDB8 0014CD18 D0 61 00 20 */ stfs f3, 0x20(r1) -/* 8014FDBC 0014CD1C EC 21 00 B2 */ fmuls f1, f1, f2 -/* 8014FDC0 0014CD20 D0 41 00 24 */ stfs f2, 0x24(r1) -/* 8014FDC4 0014CD24 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 8014FDC8 0014CD28 D0 21 00 30 */ stfs f1, 0x30(r1) -/* 8014FDCC 0014CD2C D0 A1 00 34 */ stfs f5, 0x34(r1) -/* 8014FDD0 0014CD30 48 1C 33 F5 */ bl Scale__12CTransform4fFRC9CVector3f -/* 8014FDD4 0014CD34 38 61 00 38 */ addi r3, r1, 0x38 -/* 8014FDD8 0014CD38 38 81 00 74 */ addi r4, r1, 0x74 -/* 8014FDDC 0014CD3C 48 1E 78 31 */ bl GetCenterPoint__6CAABoxCFv -/* 8014FDE0 0014CD40 38 61 00 BC */ addi r3, r1, 0xbc -/* 8014FDE4 0014CD44 38 81 00 38 */ addi r4, r1, 0x38 -/* 8014FDE8 0014CD48 48 1C 33 59 */ bl Translate__12CTransform4fFRC9CVector3f -/* 8014FDEC 0014CD4C 38 61 00 EC */ addi r3, r1, 0xec -/* 8014FDF0 0014CD50 38 81 00 BC */ addi r4, r1, 0xbc -/* 8014FDF4 0014CD54 38 A1 00 8C */ addi r5, r1, 0x8c -/* 8014FDF8 0014CD58 48 1C 2B 59 */ bl __ml__12CTransform4fCFRC12CTransform4f -/* 8014FDFC 0014CD5C 38 61 01 1C */ addi r3, r1, 0x11c -/* 8014FE00 0014CD60 38 81 00 EC */ addi r4, r1, 0xec -/* 8014FE04 0014CD64 48 1C 2D 71 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8014FE08 0014CD68 C0 22 9D B4 */ lfs f1, lbl_805ABAD4@sda21(r2) -/* 8014FE0C 0014CD6C 38 61 00 5C */ addi r3, r1, 0x5c -/* 8014FE10 0014CD70 C0 02 9D BC */ lfs f0, lbl_805ABADC@sda21(r2) -/* 8014FE14 0014CD74 38 81 00 14 */ addi r4, r1, 0x14 -/* 8014FE18 0014CD78 D0 21 00 08 */ stfs f1, 8(r1) -/* 8014FE1C 0014CD7C 38 A1 00 08 */ addi r5, r1, 8 -/* 8014FE20 0014CD80 D0 21 00 0C */ stfs f1, 0xc(r1) -/* 8014FE24 0014CD84 D0 21 00 10 */ stfs f1, 0x10(r1) -/* 8014FE28 0014CD88 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 8014FE2C 0014CD8C D0 01 00 18 */ stfs f0, 0x18(r1) -/* 8014FE30 0014CD90 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 8014FE34 0014CD94 48 1E 86 D5 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 8014FE38 0014CD98 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) -/* 8014FE3C 0014CD9C 38 81 01 1C */ addi r4, r1, 0x11c -/* 8014FE40 0014CDA0 81 83 00 00 */ lwz r12, 0(r3) -/* 8014FE44 0014CDA4 81 8C 00 30 */ lwz r12, 0x30(r12) -/* 8014FE48 0014CDA8 7D 89 03 A6 */ mtctr r12 -/* 8014FE4C 0014CDAC 4E 80 04 21 */ bctrl -/* 8014FE50 0014CDB0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) -/* 8014FE54 0014CDB4 38 9E 01 18 */ addi r4, r30, 0x118 -/* 8014FE58 0014CDB8 38 A1 00 5C */ addi r5, r1, 0x5c -/* 8014FE5C 0014CDBC 38 C0 00 00 */ li r6, 0 -/* 8014FE60 0014CDC0 81 83 00 00 */ lwz r12, 0(r3) -/* 8014FE64 0014CDC4 38 E0 00 00 */ li r7, 0 -/* 8014FE68 0014CDC8 81 8C 00 E4 */ lwz r12, 0xe4(r12) -/* 8014FE6C 0014CDCC 7D 89 03 A6 */ mtctr r12 -/* 8014FE70 0014CDD0 4E 80 04 21 */ bctrl -/* 8014FE74 0014CDD4 48 00 00 08 */ b lbl_8014FE7C -lbl_8014FE78: -/* 8014FE78 0014CDD8 4B F0 49 2D */ bl Render__6CActorCFRC13CStateManager -lbl_8014FE7C: -/* 8014FE7C 0014CDDC 80 01 01 64 */ lwz r0, 0x164(r1) -/* 8014FE80 0014CDE0 83 E1 01 5C */ lwz r31, 0x15c(r1) -/* 8014FE84 0014CDE4 83 C1 01 58 */ lwz r30, 0x158(r1) -/* 8014FE88 0014CDE8 7C 08 03 A6 */ mtlr r0 -/* 8014FE8C 0014CDEC 38 21 01 60 */ addi r1, r1, 0x160 -/* 8014FE90 0014CDF0 4E 80 00 20 */ blr - -.global ThinkObjectFollowObject__22CScriptSpecialFunctionFfR13CStateManager -ThinkObjectFollowObject__22CScriptSpecialFunctionFfR13CStateManager: -/* 8014FE94 0014CDF4 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 8014FE98 0014CDF8 7C 08 02 A6 */ mflr r0 -/* 8014FE9C 0014CDFC 90 01 00 64 */ stw r0, 0x64(r1) -/* 8014FEA0 0014CE00 93 E1 00 5C */ stw r31, 0x5c(r1) -/* 8014FEA4 0014CE04 93 C1 00 58 */ stw r30, 0x58(r1) -/* 8014FEA8 0014CE08 7C 9E 23 78 */ mr r30, r4 -/* 8014FEAC 0014CE0C 93 A1 00 54 */ stw r29, 0x54(r1) -/* 8014FEB0 0014CE10 7C 7D 1B 78 */ mr r29, r3 -/* 8014FEB4 0014CE14 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8014FEB8 0014CE18 83 E3 00 2C */ lwz r31, 0x2c(r3) -/* 8014FEBC 0014CE1C B0 01 00 1C */ sth r0, 0x1c(r1) -/* 8014FEC0 0014CE20 B0 01 00 18 */ sth r0, 0x18(r1) -/* 8014FEC4 0014CE24 48 00 00 D4 */ b lbl_8014FF98 -lbl_8014FEC8: -/* 8014FEC8 0014CE28 80 1F 00 00 */ lwz r0, 0(r31) -/* 8014FECC 0014CE2C 2C 00 00 12 */ cmpwi r0, 0x12 -/* 8014FED0 0014CE30 40 82 00 C4 */ bne lbl_8014FF94 -/* 8014FED4 0014CE34 80 1F 00 04 */ lwz r0, 4(r31) -/* 8014FED8 0014CE38 2C 00 00 01 */ cmpwi r0, 1 -/* 8014FEDC 0014CE3C 41 82 00 0C */ beq lbl_8014FEE8 -/* 8014FEE0 0014CE40 2C 00 00 04 */ cmpwi r0, 4 -/* 8014FEE4 0014CE44 40 82 00 B0 */ bne lbl_8014FF94 -lbl_8014FEE8: -/* 8014FEE8 0014CE48 80 1F 00 08 */ lwz r0, 8(r31) -/* 8014FEEC 0014CE4C 7F C4 F3 78 */ mr r4, r30 -/* 8014FEF0 0014CE50 38 61 00 3C */ addi r3, r1, 0x3c -/* 8014FEF4 0014CE54 38 A1 00 20 */ addi r5, r1, 0x20 -/* 8014FEF8 0014CE58 90 01 00 20 */ stw r0, 0x20(r1) -/* 8014FEFC 0014CE5C 4B EF 80 CD */ bl GetIdListForScript__13CStateManagerCF9TEditorId -/* 8014FF00 0014CE60 80 A1 00 3C */ lwz r5, 0x3c(r1) -/* 8014FF04 0014CE64 38 60 00 00 */ li r3, 0 -/* 8014FF08 0014CE68 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8014FF0C 0014CE6C 80 81 00 40 */ lwz r4, 0x40(r1) -/* 8014FF10 0014CE70 7C 05 00 40 */ cmplw r5, r0 -/* 8014FF14 0014CE74 80 01 00 48 */ lwz r0, 0x48(r1) -/* 8014FF18 0014CE78 40 82 00 10 */ bne lbl_8014FF28 -/* 8014FF1C 0014CE7C 7C 04 00 40 */ cmplw r4, r0 -/* 8014FF20 0014CE80 40 82 00 08 */ bne lbl_8014FF28 -/* 8014FF24 0014CE84 38 60 00 01 */ li r3, 1 -lbl_8014FF28: -/* 8014FF28 0014CE88 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8014FF2C 0014CE8C 40 82 00 68 */ bne lbl_8014FF94 -/* 8014FF30 0014CE90 A0 05 00 14 */ lhz r0, 0x14(r5) -/* 8014FF34 0014CE94 7F C3 F3 78 */ mr r3, r30 -/* 8014FF38 0014CE98 38 81 00 10 */ addi r4, r1, 0x10 -/* 8014FF3C 0014CE9C B0 01 00 14 */ sth r0, 0x14(r1) -/* 8014FF40 0014CEA0 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8014FF44 0014CEA4 4B EF C6 61 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8014FF48 0014CEA8 7C 64 1B 78 */ mr r4, r3 -/* 8014FF4C 0014CEAC 38 61 00 2C */ addi r3, r1, 0x2c -/* 8014FF50 0014CEB0 4B F5 FD 41 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8014FF54 0014CEB4 80 63 00 04 */ lwz r3, 4(r3) -/* 8014FF58 0014CEB8 28 03 00 00 */ cmplwi r3, 0 -/* 8014FF5C 0014CEBC 41 82 00 38 */ beq lbl_8014FF94 -/* 8014FF60 0014CEC0 80 1F 00 04 */ lwz r0, 4(r31) -/* 8014FF64 0014CEC4 2C 00 00 01 */ cmpwi r0, 1 -/* 8014FF68 0014CEC8 40 82 00 1C */ bne lbl_8014FF84 -/* 8014FF6C 0014CECC 88 03 00 30 */ lbz r0, 0x30(r3) -/* 8014FF70 0014CED0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8014FF74 0014CED4 41 82 00 C8 */ beq lbl_8015003C -/* 8014FF78 0014CED8 A0 01 00 14 */ lhz r0, 0x14(r1) -/* 8014FF7C 0014CEDC B0 01 00 18 */ sth r0, 0x18(r1) -/* 8014FF80 0014CEE0 48 00 00 14 */ b lbl_8014FF94 -lbl_8014FF84: -/* 8014FF84 0014CEE4 2C 00 00 04 */ cmpwi r0, 4 -/* 8014FF88 0014CEE8 40 82 00 0C */ bne lbl_8014FF94 -/* 8014FF8C 0014CEEC A0 01 00 14 */ lhz r0, 0x14(r1) -/* 8014FF90 0014CEF0 B0 01 00 1C */ sth r0, 0x1c(r1) -lbl_8014FF94: -/* 8014FF94 0014CEF4 3B FF 00 0C */ addi r31, r31, 0xc -lbl_8014FF98: -/* 8014FF98 0014CEF8 80 1D 00 24 */ lwz r0, 0x24(r29) -/* 8014FF9C 0014CEFC 80 7D 00 2C */ lwz r3, 0x2c(r29) -/* 8014FFA0 0014CF00 1C 00 00 0C */ mulli r0, r0, 0xc -/* 8014FFA4 0014CF04 7C 03 02 14 */ add r0, r3, r0 -/* 8014FFA8 0014CF08 7C 1F 00 40 */ cmplw r31, r0 -/* 8014FFAC 0014CF0C 40 82 FF 1C */ bne lbl_8014FEC8 -/* 8014FFB0 0014CF10 A0 01 00 18 */ lhz r0, 0x18(r1) -/* 8014FFB4 0014CF14 7F C3 F3 78 */ mr r3, r30 -/* 8014FFB8 0014CF18 38 81 00 0C */ addi r4, r1, 0xc -/* 8014FFBC 0014CF1C B0 01 00 0C */ sth r0, 0xc(r1) -/* 8014FFC0 0014CF20 4B EF C5 E5 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8014FFC4 0014CF24 7C 64 1B 78 */ mr r4, r3 -/* 8014FFC8 0014CF28 38 61 00 24 */ addi r3, r1, 0x24 -/* 8014FFCC 0014CF2C 4B F5 FC C5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8014FFD0 0014CF30 83 A3 00 04 */ lwz r29, 4(r3) -/* 8014FFD4 0014CF34 7F C3 F3 78 */ mr r3, r30 -/* 8014FFD8 0014CF38 A0 01 00 1C */ lhz r0, 0x1c(r1) -/* 8014FFDC 0014CF3C 38 81 00 08 */ addi r4, r1, 8 -/* 8014FFE0 0014CF40 B0 01 00 08 */ sth r0, 8(r1) -/* 8014FFE4 0014CF44 4B EF C5 91 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8014FFE8 0014CF48 7C 64 1B 78 */ mr r4, r3 -/* 8014FFEC 0014CF4C 38 61 00 34 */ addi r3, r1, 0x34 -/* 8014FFF0 0014CF50 4B F5 FC A1 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8014FFF4 0014CF54 83 C3 00 04 */ lwz r30, 4(r3) -/* 8014FFF8 0014CF58 28 1E 00 00 */ cmplwi r30, 0 -/* 8014FFFC 0014CF5C 41 82 00 40 */ beq lbl_8015003C -/* 80150000 0014CF60 28 1D 00 00 */ cmplwi r29, 0 -/* 80150004 0014CF64 41 82 00 38 */ beq lbl_8015003C -/* 80150008 0014CF68 38 7E 00 34 */ addi r3, r30, 0x34 -/* 8015000C 0014CF6C 38 9D 00 34 */ addi r4, r29, 0x34 -/* 80150010 0014CF70 48 1C 2B 31 */ bl __as__12CTransform4fFRC12CTransform4f -/* 80150014 0014CF74 88 1E 00 E4 */ lbz r0, 0xe4(r30) -/* 80150018 0014CF78 38 60 00 01 */ li r3, 1 -/* 8015001C 0014CF7C 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 80150020 0014CF80 98 1E 00 E4 */ stb r0, 0xe4(r30) -/* 80150024 0014CF84 88 1E 00 E4 */ lbz r0, 0xe4(r30) -/* 80150028 0014CF88 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 8015002C 0014CF8C 98 1E 00 E4 */ stb r0, 0xe4(r30) -/* 80150030 0014CF90 88 1E 00 E4 */ lbz r0, 0xe4(r30) -/* 80150034 0014CF94 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d -/* 80150038 0014CF98 98 1E 00 E4 */ stb r0, 0xe4(r30) -lbl_8015003C: -/* 8015003C 0014CF9C 80 01 00 64 */ lwz r0, 0x64(r1) -/* 80150040 0014CFA0 83 E1 00 5C */ lwz r31, 0x5c(r1) -/* 80150044 0014CFA4 83 C1 00 58 */ lwz r30, 0x58(r1) -/* 80150048 0014CFA8 83 A1 00 54 */ lwz r29, 0x54(r1) -/* 8015004C 0014CFAC 7C 08 03 A6 */ mtlr r0 -/* 80150050 0014CFB0 38 21 00 60 */ addi r1, r1, 0x60 -/* 80150054 0014CFB4 4E 80 00 20 */ blr - -.global ThinkObjectFollowLocator__22CScriptSpecialFunctionFfR13CStateManager -ThinkObjectFollowLocator__22CScriptSpecialFunctionFfR13CStateManager: -/* 80150058 0014CFB8 94 21 FF 10 */ stwu r1, -0xf0(r1) -/* 8015005C 0014CFBC 7C 08 02 A6 */ mflr r0 -/* 80150060 0014CFC0 90 01 00 F4 */ stw r0, 0xf4(r1) -/* 80150064 0014CFC4 93 E1 00 EC */ stw r31, 0xec(r1) -/* 80150068 0014CFC8 93 C1 00 E8 */ stw r30, 0xe8(r1) -/* 8015006C 0014CFCC 7C 9E 23 78 */ mr r30, r4 -/* 80150070 0014CFD0 93 A1 00 E4 */ stw r29, 0xe4(r1) -/* 80150074 0014CFD4 7C 7D 1B 78 */ mr r29, r3 -/* 80150078 0014CFD8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8015007C 0014CFDC 83 E3 00 2C */ lwz r31, 0x2c(r3) -/* 80150080 0014CFE0 B0 01 00 1C */ sth r0, 0x1c(r1) -/* 80150084 0014CFE4 B0 01 00 18 */ sth r0, 0x18(r1) -/* 80150088 0014CFE8 48 00 00 FC */ b lbl_80150184 -lbl_8015008C: -/* 8015008C 0014CFEC 80 1F 00 00 */ lwz r0, 0(r31) -/* 80150090 0014CFF0 2C 00 00 12 */ cmpwi r0, 0x12 -/* 80150094 0014CFF4 40 82 00 EC */ bne lbl_80150180 -/* 80150098 0014CFF8 80 1F 00 04 */ lwz r0, 4(r31) -/* 8015009C 0014CFFC 2C 00 00 01 */ cmpwi r0, 1 -/* 801500A0 0014D000 41 82 00 0C */ beq lbl_801500AC -/* 801500A4 0014D004 2C 00 00 04 */ cmpwi r0, 4 -/* 801500A8 0014D008 40 82 00 D8 */ bne lbl_80150180 -lbl_801500AC: -/* 801500AC 0014D00C 80 1F 00 08 */ lwz r0, 8(r31) -/* 801500B0 0014D010 7F C4 F3 78 */ mr r4, r30 -/* 801500B4 0014D014 38 61 00 3C */ addi r3, r1, 0x3c -/* 801500B8 0014D018 38 A1 00 20 */ addi r5, r1, 0x20 -/* 801500BC 0014D01C 90 01 00 20 */ stw r0, 0x20(r1) -/* 801500C0 0014D020 4B EF 7F 09 */ bl GetIdListForScript__13CStateManagerCF9TEditorId -/* 801500C4 0014D024 80 A1 00 3C */ lwz r5, 0x3c(r1) -/* 801500C8 0014D028 38 60 00 00 */ li r3, 0 -/* 801500CC 0014D02C 80 01 00 44 */ lwz r0, 0x44(r1) -/* 801500D0 0014D030 80 81 00 40 */ lwz r4, 0x40(r1) -/* 801500D4 0014D034 7C 05 00 40 */ cmplw r5, r0 -/* 801500D8 0014D038 80 01 00 48 */ lwz r0, 0x48(r1) -/* 801500DC 0014D03C 40 82 00 10 */ bne lbl_801500EC -/* 801500E0 0014D040 7C 04 00 40 */ cmplw r4, r0 -/* 801500E4 0014D044 40 82 00 08 */ bne lbl_801500EC -/* 801500E8 0014D048 38 60 00 01 */ li r3, 1 -lbl_801500EC: -/* 801500EC 0014D04C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801500F0 0014D050 40 82 00 90 */ bne lbl_80150180 -/* 801500F4 0014D054 A0 05 00 14 */ lhz r0, 0x14(r5) -/* 801500F8 0014D058 7F C3 F3 78 */ mr r3, r30 -/* 801500FC 0014D05C 38 81 00 10 */ addi r4, r1, 0x10 -/* 80150100 0014D060 B0 01 00 14 */ sth r0, 0x14(r1) -/* 80150104 0014D064 B0 01 00 10 */ sth r0, 0x10(r1) -/* 80150108 0014D068 4B EF C4 9D */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8015010C 0014D06C 7C 64 1B 78 */ mr r4, r3 -/* 80150110 0014D070 38 61 00 2C */ addi r3, r1, 0x2c -/* 80150114 0014D074 4B F5 FB 7D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 80150118 0014D078 80 C3 00 04 */ lwz r6, 4(r3) -/* 8015011C 0014D07C 28 06 00 00 */ cmplwi r6, 0 -/* 80150120 0014D080 41 82 00 60 */ beq lbl_80150180 -/* 80150124 0014D084 80 BF 00 04 */ lwz r5, 4(r31) -/* 80150128 0014D088 2C 05 00 01 */ cmpwi r5, 1 -/* 8015012C 0014D08C 40 82 00 44 */ bne lbl_80150170 -/* 80150130 0014D090 80 86 00 64 */ lwz r4, 0x64(r6) -/* 80150134 0014D094 38 60 00 00 */ li r3, 0 -/* 80150138 0014D098 28 04 00 00 */ cmplwi r4, 0 -/* 8015013C 0014D09C 41 82 00 14 */ beq lbl_80150150 -/* 80150140 0014D0A0 80 04 00 10 */ lwz r0, 0x10(r4) -/* 80150144 0014D0A4 28 00 00 00 */ cmplwi r0, 0 -/* 80150148 0014D0A8 41 82 00 08 */ beq lbl_80150150 -/* 8015014C 0014D0AC 38 60 00 01 */ li r3, 1 -lbl_80150150: -/* 80150150 0014D0B0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80150154 0014D0B4 41 82 00 1C */ beq lbl_80150170 -/* 80150158 0014D0B8 88 06 00 30 */ lbz r0, 0x30(r6) -/* 8015015C 0014D0BC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80150160 0014D0C0 41 82 01 10 */ beq lbl_80150270 -/* 80150164 0014D0C4 A0 01 00 14 */ lhz r0, 0x14(r1) -/* 80150168 0014D0C8 B0 01 00 18 */ sth r0, 0x18(r1) -/* 8015016C 0014D0CC 48 00 00 14 */ b lbl_80150180 -lbl_80150170: -/* 80150170 0014D0D0 2C 05 00 04 */ cmpwi r5, 4 -/* 80150174 0014D0D4 40 82 00 0C */ bne lbl_80150180 -/* 80150178 0014D0D8 A0 01 00 14 */ lhz r0, 0x14(r1) -/* 8015017C 0014D0DC B0 01 00 1C */ sth r0, 0x1c(r1) -lbl_80150180: -/* 80150180 0014D0E0 3B FF 00 0C */ addi r31, r31, 0xc -lbl_80150184: -/* 80150184 0014D0E4 80 1D 00 24 */ lwz r0, 0x24(r29) -/* 80150188 0014D0E8 80 7D 00 2C */ lwz r3, 0x2c(r29) -/* 8015018C 0014D0EC 1C 00 00 0C */ mulli r0, r0, 0xc -/* 80150190 0014D0F0 7C 03 02 14 */ add r0, r3, r0 -/* 80150194 0014D0F4 7C 1F 00 40 */ cmplw r31, r0 -/* 80150198 0014D0F8 40 82 FE F4 */ bne lbl_8015008C -/* 8015019C 0014D0FC A0 01 00 1C */ lhz r0, 0x1c(r1) -/* 801501A0 0014D100 A0 6D A3 8C */ lhz r3, lbl_805A8F4C@sda21(r13) -/* 801501A4 0014D104 7C 00 18 40 */ cmplw r0, r3 -/* 801501A8 0014D108 41 82 00 C8 */ beq lbl_80150270 -/* 801501AC 0014D10C A0 01 00 18 */ lhz r0, 0x18(r1) -/* 801501B0 0014D110 7C 00 18 40 */ cmplw r0, r3 -/* 801501B4 0014D114 41 82 00 BC */ beq lbl_80150270 -/* 801501B8 0014D118 A0 01 00 18 */ lhz r0, 0x18(r1) -/* 801501BC 0014D11C 7F C3 F3 78 */ mr r3, r30 -/* 801501C0 0014D120 38 81 00 0C */ addi r4, r1, 0xc -/* 801501C4 0014D124 B0 01 00 0C */ sth r0, 0xc(r1) -/* 801501C8 0014D128 4B EF C3 DD */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 801501CC 0014D12C 7C 64 1B 78 */ mr r4, r3 -/* 801501D0 0014D130 38 61 00 24 */ addi r3, r1, 0x24 -/* 801501D4 0014D134 4B F5 FA BD */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 801501D8 0014D138 83 E3 00 04 */ lwz r31, 4(r3) -/* 801501DC 0014D13C 7F C3 F3 78 */ mr r3, r30 -/* 801501E0 0014D140 A0 01 00 1C */ lhz r0, 0x1c(r1) -/* 801501E4 0014D144 38 81 00 08 */ addi r4, r1, 8 -/* 801501E8 0014D148 B0 01 00 08 */ sth r0, 8(r1) -/* 801501EC 0014D14C 4B EF C3 89 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 801501F0 0014D150 7C 64 1B 78 */ mr r4, r3 -/* 801501F4 0014D154 38 61 00 34 */ addi r3, r1, 0x34 -/* 801501F8 0014D158 4B F5 FA 99 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 801501FC 0014D15C 28 1F 00 00 */ cmplwi r31, 0 -/* 80150200 0014D160 83 C3 00 04 */ lwz r30, 4(r3) -/* 80150204 0014D164 41 82 00 6C */ beq lbl_80150270 -/* 80150208 0014D168 28 1E 00 00 */ cmplwi r30, 0 -/* 8015020C 0014D16C 41 82 00 64 */ beq lbl_80150270 -/* 80150210 0014D170 7F E4 FB 78 */ mr r4, r31 -/* 80150214 0014D174 38 61 00 4C */ addi r3, r1, 0x4c -/* 80150218 0014D178 38 BD 00 EC */ addi r5, r29, 0xec -/* 8015021C 0014D17C 4B F0 2C B5 */ bl "GetScaledLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80150220 0014D180 38 61 00 7C */ addi r3, r1, 0x7c -/* 80150224 0014D184 38 9F 00 34 */ addi r4, r31, 0x34 -/* 80150228 0014D188 38 A1 00 4C */ addi r5, r1, 0x4c -/* 8015022C 0014D18C 48 1C 27 25 */ bl __ml__12CTransform4fCFRC12CTransform4f -/* 80150230 0014D190 38 61 00 AC */ addi r3, r1, 0xac -/* 80150234 0014D194 38 81 00 7C */ addi r4, r1, 0x7c -/* 80150238 0014D198 48 1C 29 3D */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8015023C 0014D19C 38 7E 00 34 */ addi r3, r30, 0x34 -/* 80150240 0014D1A0 38 81 00 AC */ addi r4, r1, 0xac -/* 80150244 0014D1A4 48 1C 28 FD */ bl __as__12CTransform4fFRC12CTransform4f -/* 80150248 0014D1A8 88 1E 00 E4 */ lbz r0, 0xe4(r30) -/* 8015024C 0014D1AC 38 60 00 01 */ li r3, 1 -/* 80150250 0014D1B0 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 80150254 0014D1B4 98 1E 00 E4 */ stb r0, 0xe4(r30) -/* 80150258 0014D1B8 88 1E 00 E4 */ lbz r0, 0xe4(r30) -/* 8015025C 0014D1BC 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 80150260 0014D1C0 98 1E 00 E4 */ stb r0, 0xe4(r30) -/* 80150264 0014D1C4 88 1E 00 E4 */ lbz r0, 0xe4(r30) -/* 80150268 0014D1C8 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d -/* 8015026C 0014D1CC 98 1E 00 E4 */ stb r0, 0xe4(r30) -lbl_80150270: -/* 80150270 0014D1D0 80 01 00 F4 */ lwz r0, 0xf4(r1) -/* 80150274 0014D1D4 83 E1 00 EC */ lwz r31, 0xec(r1) -/* 80150278 0014D1D8 83 C1 00 E8 */ lwz r30, 0xe8(r1) -/* 8015027C 0014D1DC 83 A1 00 E4 */ lwz r29, 0xe4(r1) -/* 80150280 0014D1E0 7C 08 03 A6 */ mtlr r0 -/* 80150284 0014D1E4 38 21 00 F0 */ addi r1, r1, 0xf0 -/* 80150288 0014D1E8 4E 80 00 20 */ blr - -.global ThinkSpinnerController__22CScriptSpecialFunctionFfR13CStateManagerQ222CScriptSpecialFunction22ESpinnerControllerMode -ThinkSpinnerController__22CScriptSpecialFunctionFfR13CStateManagerQ222CScriptSpecialFunction22ESpinnerControllerMode: -/* 8015028C 0014D1EC 94 21 FE 20 */ stwu r1, -0x1e0(r1) -/* 80150290 0014D1F0 7C 08 02 A6 */ mflr r0 -/* 80150294 0014D1F4 90 01 01 E4 */ stw r0, 0x1e4(r1) -/* 80150298 0014D1F8 DB E1 01 D0 */ stfd f31, 0x1d0(r1) -/* 8015029C 0014D1FC F3 E1 01 D8 */ psq_st f31, 472(r1), 0, qr0 -/* 801502A0 0014D200 DB C1 01 C0 */ stfd f30, 0x1c0(r1) -/* 801502A4 0014D204 F3 C1 01 C8 */ psq_st f30, 456(r1), 0, qr0 -/* 801502A8 0014D208 DB A1 01 B0 */ stfd f29, 0x1b0(r1) -/* 801502AC 0014D20C F3 A1 01 B8 */ psq_st f29, 440(r1), 0, qr0 -/* 801502B0 0014D210 DB 81 01 A0 */ stfd f28, 0x1a0(r1) -/* 801502B4 0014D214 F3 81 01 A8 */ psq_st f28, 424(r1), 0, qr0 -/* 801502B8 0014D218 DB 61 01 90 */ stfd f27, 0x190(r1) -/* 801502BC 0014D21C F3 61 01 98 */ psq_st f27, 408(r1), 0, qr0 -/* 801502C0 0014D220 DB 41 01 80 */ stfd f26, 0x180(r1) -/* 801502C4 0014D224 F3 41 01 88 */ psq_st f26, 392(r1), 0, qr0 -/* 801502C8 0014D228 BE E1 01 5C */ stmw r23, 0x15c(r1) -/* 801502CC 0014D22C 3C C0 80 3D */ lis r6, lbl_803D01D0@ha -/* 801502D0 0014D230 FF 60 08 90 */ fmr f27, f1 -/* 801502D4 0014D234 38 06 01 D0 */ addi r0, r6, lbl_803D01D0@l -/* 801502D8 0014D238 7C 78 1B 78 */ mr r24, r3 -/* 801502DC 0014D23C 7C 99 23 78 */ mr r25, r4 -/* 801502E0 0014D240 7C BA 2B 78 */ mr r26, r5 -/* 801502E4 0014D244 7C 04 03 78 */ mr r4, r0 -/* 801502E8 0014D248 38 61 00 98 */ addi r3, r1, 0x98 -/* 801502EC 0014D24C 4B EB 49 CD */ bl string_l__4rstlFPCc -/* 801502F0 0014D250 38 78 00 EC */ addi r3, r24, 0xec -/* 801502F4 0014D254 38 81 00 98 */ addi r4, r1, 0x98 -/* 801502F8 0014D258 38 A0 00 00 */ li r5, 0 -/* 801502FC 0014D25C 48 00 0A 9D */ bl sub_80150d98 -/* 80150300 0014D260 20 83 FF FF */ subfic r4, r3, -1 -/* 80150304 0014D264 38 03 00 01 */ addi r0, r3, 1 -/* 80150308 0014D268 7C 80 03 78 */ or r0, r4, r0 -/* 8015030C 0014D26C 38 61 00 98 */ addi r3, r1, 0x98 -/* 80150310 0014D270 54 1C 0F FE */ srwi r28, r0, 0x1f -/* 80150314 0014D274 48 1E D7 CD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 80150318 0014D278 3C 80 80 3D */ lis r4, lbl_803D01D0@ha -/* 8015031C 0014D27C 38 61 00 88 */ addi r3, r1, 0x88 -/* 80150320 0014D280 38 84 01 D0 */ addi r4, r4, lbl_803D01D0@l -/* 80150324 0014D284 38 84 00 0A */ addi r4, r4, 0xa -/* 80150328 0014D288 4B EB 49 91 */ bl string_l__4rstlFPCc -/* 8015032C 0014D28C 38 78 00 EC */ addi r3, r24, 0xec -/* 80150330 0014D290 38 81 00 88 */ addi r4, r1, 0x88 -/* 80150334 0014D294 38 A0 00 00 */ li r5, 0 -/* 80150338 0014D298 48 00 0A 61 */ bl sub_80150d98 -/* 8015033C 0014D29C 20 83 FF FF */ subfic r4, r3, -1 -/* 80150340 0014D2A0 38 03 00 01 */ addi r0, r3, 1 -/* 80150344 0014D2A4 7C 80 03 78 */ or r0, r4, r0 -/* 80150348 0014D2A8 38 61 00 88 */ addi r3, r1, 0x88 -/* 8015034C 0014D2AC 54 1B 0F FE */ srwi r27, r0, 0x1f -/* 80150350 0014D2B0 48 1E D7 91 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 80150354 0014D2B4 C0 22 9D B8 */ lfs f1, lbl_805ABAD8@sda21(r2) -/* 80150358 0014D2B8 3B A1 00 DC */ addi r29, r1, 0xdc -/* 8015035C 0014D2BC C0 02 9D C0 */ lfs f0, lbl_805ABAE0@sda21(r2) -/* 80150360 0014D2C0 EF E1 06 F2 */ fmuls f31, f1, f27 -/* 80150364 0014D2C4 83 D8 00 2C */ lwz r30, 0x2c(r24) -/* 80150368 0014D2C8 EF C0 06 F2 */ fmuls f30, f0, f27 -/* 8015036C 0014D2CC 48 00 06 5C */ b lbl_801509C8 -lbl_80150370: -/* 80150370 0014D2D0 80 1E 00 00 */ lwz r0, 0(r30) -/* 80150374 0014D2D4 2C 00 00 12 */ cmpwi r0, 0x12 -/* 80150378 0014D2D8 40 82 06 4C */ bne lbl_801509C4 -/* 8015037C 0014D2DC 80 1E 00 04 */ lwz r0, 4(r30) -/* 80150380 0014D2E0 2C 00 00 01 */ cmpwi r0, 1 -/* 80150384 0014D2E4 40 82 06 40 */ bne lbl_801509C4 -/* 80150388 0014D2E8 80 1E 00 08 */ lwz r0, 8(r30) -/* 8015038C 0014D2EC 7F 24 CB 78 */ mr r4, r25 -/* 80150390 0014D2F0 38 61 00 78 */ addi r3, r1, 0x78 -/* 80150394 0014D2F4 38 A1 00 18 */ addi r5, r1, 0x18 -/* 80150398 0014D2F8 90 01 00 18 */ stw r0, 0x18(r1) -/* 8015039C 0014D2FC 4B EF 7C 2D */ bl GetIdListForScript__13CStateManagerCF9TEditorId -/* 801503A0 0014D300 80 A1 00 78 */ lwz r5, 0x78(r1) -/* 801503A4 0014D304 38 60 00 00 */ li r3, 0 -/* 801503A8 0014D308 80 01 00 80 */ lwz r0, 0x80(r1) -/* 801503AC 0014D30C 80 81 00 7C */ lwz r4, 0x7c(r1) -/* 801503B0 0014D310 7C 05 00 40 */ cmplw r5, r0 -/* 801503B4 0014D314 80 01 00 84 */ lwz r0, 0x84(r1) -/* 801503B8 0014D318 40 82 00 10 */ bne lbl_801503C8 -/* 801503BC 0014D31C 7C 04 00 40 */ cmplw r4, r0 -/* 801503C0 0014D320 40 82 00 08 */ bne lbl_801503C8 -/* 801503C4 0014D324 38 60 00 01 */ li r3, 1 -lbl_801503C8: -/* 801503C8 0014D328 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801503CC 0014D32C 40 82 05 F8 */ bne lbl_801509C4 -/* 801503D0 0014D330 A0 05 00 14 */ lhz r0, 0x14(r5) -/* 801503D4 0014D334 7F 23 CB 78 */ mr r3, r25 -/* 801503D8 0014D338 38 81 00 08 */ addi r4, r1, 8 -/* 801503DC 0014D33C B0 01 00 08 */ sth r0, 8(r1) -/* 801503E0 0014D340 4B EF C1 95 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 801503E4 0014D344 7C 64 1B 78 */ mr r4, r3 -/* 801503E8 0014D348 38 61 00 2C */ addi r3, r1, 0x2c -/* 801503EC 0014D34C 4B F5 8A 29 */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" -/* 801503F0 0014D350 83 E3 00 04 */ lwz r31, 4(r3) -/* 801503F4 0014D354 28 1F 00 00 */ cmplwi r31, 0 -/* 801503F8 0014D358 41 82 05 CC */ beq lbl_801509C4 -/* 801503FC 0014D35C 80 9F 00 64 */ lwz r4, 0x64(r31) -/* 80150400 0014D360 38 60 00 00 */ li r3, 0 -/* 80150404 0014D364 28 04 00 00 */ cmplwi r4, 0 -/* 80150408 0014D368 41 82 00 14 */ beq lbl_8015041C -/* 8015040C 0014D36C 80 04 00 10 */ lwz r0, 0x10(r4) -/* 80150410 0014D370 28 00 00 00 */ cmplwi r0, 0 -/* 80150414 0014D374 41 82 00 08 */ beq lbl_8015041C -/* 80150418 0014D378 38 60 00 01 */ li r3, 1 -lbl_8015041C: -/* 8015041C 0014D37C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80150420 0014D380 41 82 05 A4 */ beq lbl_801509C4 -/* 80150424 0014D384 88 1F 03 56 */ lbz r0, 0x356(r31) -/* 80150428 0014D388 38 60 00 01 */ li r3, 1 -/* 8015042C 0014D38C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 80150430 0014D390 98 1F 03 56 */ stb r0, 0x356(r31) -/* 80150434 0014D394 88 18 01 E4 */ lbz r0, 0x1e4(r24) -/* 80150438 0014D398 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8015043C 0014D39C 40 82 00 20 */ bne lbl_8015045C -/* 80150440 0014D3A0 38 78 01 3C */ addi r3, r24, 0x13c -/* 80150444 0014D3A4 38 9F 00 34 */ addi r4, r31, 0x34 -/* 80150448 0014D3A8 48 1C 26 F9 */ bl __as__12CTransform4fFRC12CTransform4f -/* 8015044C 0014D3AC 88 18 01 E4 */ lbz r0, 0x1e4(r24) -/* 80150450 0014D3B0 38 60 00 01 */ li r3, 1 -/* 80150454 0014D3B4 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80150458 0014D3B8 98 18 01 E4 */ stb r0, 0x1e4(r24) -lbl_8015045C: -/* 8015045C 0014D3BC C0 18 01 00 */ lfs f0, 0x100(r24) -/* 80150460 0014D3C0 2C 1A 00 00 */ cmpwi r26, 0 -/* 80150464 0014D3C4 C3 98 01 38 */ lfs f28, 0x138(r24) -/* 80150468 0014D3C8 EF BF 00 32 */ fmuls f29, f31, f0 -/* 8015046C 0014D3CC 40 82 00 EC */ bne lbl_80150558 -/* 80150470 0014D3D0 88 18 01 E4 */ lbz r0, 0x1e4(r24) -/* 80150474 0014D3D4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 80150478 0014D3D8 41 82 00 CC */ beq lbl_80150544 -/* 8015047C 0014D3DC 80 99 08 4C */ lwz r4, 0x84c(r25) -/* 80150480 0014D3E0 38 61 00 6C */ addi r3, r1, 0x6c -/* 80150484 0014D3E4 80 04 02 F8 */ lwz r0, 0x2f8(r4) -/* 80150488 0014D3E8 20 00 00 01 */ subfic r0, r0, 1 -/* 8015048C 0014D3EC 7C 00 00 34 */ cntlzw r0, r0 -/* 80150490 0014D3F0 54 17 D9 7E */ srwi r23, r0, 5 -/* 80150494 0014D3F4 4B FC A7 11 */ bl GetAngularVelocityOR__13CPhysicsActorCFv -/* 80150498 0014D3F8 38 61 00 6C */ addi r3, r1, 0x6c -/* 8015049C 0014D3FC 4B EC B0 95 */ bl GetVector__10CAxisAngleCFv -/* 801504A0 0014D400 C0 03 00 00 */ lfs f0, 0(r3) -/* 801504A4 0014D404 D0 01 00 A8 */ stfs f0, 0xa8(r1) -/* 801504A8 0014D408 C0 03 00 04 */ lfs f0, 4(r3) -/* 801504AC 0014D40C D0 01 00 AC */ stfs f0, 0xac(r1) -/* 801504B0 0014D410 C0 03 00 08 */ lfs f0, 8(r3) -/* 801504B4 0014D414 38 61 00 A8 */ addi r3, r1, 0xa8 -/* 801504B8 0014D418 D0 01 00 B0 */ stfs f0, 0xb0(r1) -/* 801504BC 0014D41C 48 1C 42 3D */ bl CanBeNormalized__9CVector3fCFv -/* 801504C0 0014D420 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801504C4 0014D424 41 82 00 10 */ beq lbl_801504D4 -/* 801504C8 0014D428 38 61 00 A8 */ addi r3, r1, 0xa8 -/* 801504CC 0014D42C 48 1C 43 ED */ bl Magnitude__9CVector3fCFv -/* 801504D0 0014D430 48 00 00 08 */ b lbl_801504D8 -lbl_801504D4: -/* 801504D4 0014D434 C0 22 9D 9C */ lfs f1, lbl_805ABABC@sda21(r2) -lbl_801504D8: -/* 801504D8 0014D438 56 E0 06 3F */ clrlwi. r0, r23, 0x18 -/* 801504DC 0014D43C 41 82 00 10 */ beq lbl_801504EC -/* 801504E0 0014D440 C0 02 9D C4 */ lfs f0, lbl_805ABAE4@sda21(r2) -/* 801504E4 0014D444 EF 40 00 72 */ fmuls f26, f0, f1 -/* 801504E8 0014D448 48 00 00 08 */ b lbl_801504F0 -lbl_801504EC: -/* 801504EC 0014D44C C3 42 9D 9C */ lfs f26, lbl_805ABABC@sda21(r2) -lbl_801504F0: -/* 801504F0 0014D450 C0 18 01 80 */ lfs f0, 0x180(r24) -/* 801504F4 0014D454 FC 1A 00 40 */ fcmpo cr0, f26, f0 -/* 801504F8 0014D458 40 81 00 18 */ ble lbl_80150510 -/* 801504FC 0014D45C 7F 03 C3 78 */ mr r3, r24 -/* 80150500 0014D460 7F 25 CB 78 */ mr r5, r25 -/* 80150504 0014D464 38 80 00 12 */ li r4, 0x12 -/* 80150508 0014D468 38 C0 FF FF */ li r6, -1 -/* 8015050C 0014D46C 4B F0 0B B5 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -lbl_80150510: -/* 80150510 0014D470 C0 02 9D C8 */ lfs f0, lbl_805ABAE8@sda21(r2) -/* 80150514 0014D474 28 1B 00 00 */ cmplwi r27, 0 -/* 80150518 0014D478 D3 58 01 80 */ stfs f26, 0x180(r24) -/* 8015051C 0014D47C EC 40 06 B2 */ fmuls f2, f0, f26 -/* 80150520 0014D480 C0 38 00 FC */ lfs f1, 0xfc(r24) -/* 80150524 0014D484 C0 18 01 38 */ lfs f0, 0x138(r24) -/* 80150528 0014D488 EC 02 00 7A */ fmadds f0, f2, f1, f0 -/* 8015052C 0014D48C D0 18 01 38 */ stfs f0, 0x138(r24) -/* 80150530 0014D490 40 82 00 90 */ bne lbl_801505C0 -/* 80150534 0014D494 C0 18 01 38 */ lfs f0, 0x138(r24) -/* 80150538 0014D498 EC 00 E8 28 */ fsubs f0, f0, f29 -/* 8015053C 0014D49C D0 18 01 38 */ stfs f0, 0x138(r24) -/* 80150540 0014D4A0 48 00 00 80 */ b lbl_801505C0 -lbl_80150544: -/* 80150544 0014D4A4 28 1B 00 00 */ cmplwi r27, 0 -/* 80150548 0014D4A8 40 82 00 78 */ bne lbl_801505C0 -/* 8015054C 0014D4AC EC 1C F0 28 */ fsubs f0, f28, f30 -/* 80150550 0014D4B0 D0 18 01 38 */ stfs f0, 0x138(r24) -/* 80150554 0014D4B4 48 00 00 6C */ b lbl_801505C0 -lbl_80150558: -/* 80150558 0014D4B8 2C 1A 00 01 */ cmpwi r26, 1 -/* 8015055C 0014D4BC 40 82 00 64 */ bne lbl_801505C0 -/* 80150560 0014D4C0 C0 42 9D C8 */ lfs f2, lbl_805ABAE8@sda21(r2) -/* 80150564 0014D4C4 28 1B 00 00 */ cmplwi r27, 0 -/* 80150568 0014D4C8 C0 38 01 6C */ lfs f1, 0x16c(r24) -/* 8015056C 0014D4CC C0 18 00 FC */ lfs f0, 0xfc(r24) -/* 80150570 0014D4D0 EC 22 00 72 */ fmuls f1, f2, f1 -/* 80150574 0014D4D4 EC 01 E0 3A */ fmadds f0, f1, f0, f28 -/* 80150578 0014D4D8 D0 18 01 38 */ stfs f0, 0x138(r24) -/* 8015057C 0014D4DC 40 82 00 44 */ bne lbl_801505C0 -/* 80150580 0014D4E0 C0 18 01 38 */ lfs f0, 0x138(r24) -/* 80150584 0014D4E4 EC 00 E8 28 */ fsubs f0, f0, f29 -/* 80150588 0014D4E8 D0 18 01 38 */ stfs f0, 0x138(r24) -/* 8015058C 0014D4EC C0 38 01 6C */ lfs f1, 0x16c(r24) -/* 80150590 0014D4F0 FC 00 0A 10 */ fabs f0, f1 -/* 80150594 0014D4F4 FC 00 00 18 */ frsp f0, f0 -/* 80150598 0014D4F8 FC 00 D8 40 */ fcmpo cr0, f0, f27 -/* 8015059C 0014D4FC 40 80 00 10 */ bge lbl_801505AC -/* 801505A0 0014D500 C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) -/* 801505A4 0014D504 D0 18 01 6C */ stfs f0, 0x16c(r24) -/* 801505A8 0014D508 48 00 00 18 */ b lbl_801505C0 -lbl_801505AC: -/* 801505AC 0014D50C C0 42 9D BC */ lfs f2, lbl_805ABADC@sda21(r2) -/* 801505B0 0014D510 C0 02 9D B4 */ lfs f0, lbl_805ABAD4@sda21(r2) -/* 801505B4 0014D514 FC 01 10 2E */ fsel f0, f1, f0, f2 -/* 801505B8 0014D518 EC 1B 08 3C */ fnmsubs f0, f27, f0, f1 -/* 801505BC 0014D51C D0 18 01 6C */ stfs f0, 0x16c(r24) -lbl_801505C0: -/* 801505C0 0014D520 28 1C 00 00 */ cmplwi r28, 0 -/* 801505C4 0014D524 41 82 00 38 */ beq lbl_801505FC -/* 801505C8 0014D528 C0 38 01 38 */ lfs f1, 0x138(r24) -/* 801505CC 0014D52C C8 42 9D D0 */ lfd f2, lbl_805ABAF0@sda21(r2) -/* 801505D0 0014D530 48 24 46 DD */ bl fmod -/* 801505D4 0014D534 FC 20 08 18 */ frsp f1, f1 -/* 801505D8 0014D538 C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) -/* 801505DC 0014D53C D0 38 01 38 */ stfs f1, 0x138(r24) -/* 801505E0 0014D540 C0 38 01 38 */ lfs f1, 0x138(r24) -/* 801505E4 0014D544 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801505E8 0014D548 40 80 00 50 */ bge lbl_80150638 -/* 801505EC 0014D54C C0 02 9D B4 */ lfs f0, lbl_805ABAD4@sda21(r2) -/* 801505F0 0014D550 EC 01 00 2A */ fadds f0, f1, f0 -/* 801505F4 0014D554 D0 18 01 38 */ stfs f0, 0x138(r24) -/* 801505F8 0014D558 48 00 00 40 */ b lbl_80150638 -lbl_801505FC: -/* 801505FC 0014D55C C0 2D 8C 5C */ lfs f1, lbl_805A781C@sda21(r13) -/* 80150600 0014D560 C0 18 01 38 */ lfs f0, 0x138(r24) -/* 80150604 0014D564 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80150608 0014D568 40 80 00 0C */ bge lbl_80150614 -/* 8015060C 0014D56C 38 78 01 38 */ addi r3, r24, 0x138 -/* 80150610 0014D570 48 00 00 08 */ b lbl_80150618 -lbl_80150614: -/* 80150614 0014D574 38 6D 8C 5C */ addi r3, r13, lbl_805A781C@sda21 -lbl_80150618: -/* 80150618 0014D578 C0 23 00 00 */ lfs f1, 0(r3) -/* 8015061C 0014D57C C0 0D 8C 60 */ lfs f0, lbl_805A7820@sda21(r13) -/* 80150620 0014D580 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80150624 0014D584 40 80 00 08 */ bge lbl_8015062C -/* 80150628 0014D588 48 00 00 08 */ b lbl_80150630 -lbl_8015062C: -/* 8015062C 0014D58C 38 6D 8C 60 */ addi r3, r13, lbl_805A7820@sda21 -lbl_80150630: -/* 80150630 0014D590 C0 03 00 00 */ lfs f0, 0(r3) -/* 80150634 0014D594 D0 18 01 38 */ stfs f0, 0x138(r24) -lbl_80150638: -/* 80150638 0014D598 C0 58 01 38 */ lfs f2, 0x138(r24) -/* 8015063C 0014D59C 3A E0 00 01 */ li r23, 1 -/* 80150640 0014D5A0 C0 22 9D B4 */ lfs f1, lbl_805ABAD4@sda21(r2) -/* 80150644 0014D5A4 C0 02 9D D8 */ lfs f0, lbl_805ABAF8@sda21(r2) -/* 80150648 0014D5A8 EF 82 E0 28 */ fsubs f28, f2, f28 -/* 8015064C 0014D5AC EC 22 08 28 */ fsubs f1, f2, f1 -/* 80150650 0014D5B0 FC 20 0A 10 */ fabs f1, f1 -/* 80150654 0014D5B4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80150658 0014D5B8 40 80 00 88 */ bge lbl_801506E0 -/* 8015065C 0014D5BC 88 18 01 E4 */ lbz r0, 0x1e4(r24) -/* 80150660 0014D5C0 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f -/* 80150664 0014D5C4 40 82 00 60 */ bne lbl_801506C4 -/* 80150668 0014D5C8 A0 98 01 74 */ lhz r4, 0x174(r24) -/* 8015066C 0014D5CC A0 02 C5 FC */ lhz r0, lbl_805AE31C@sda21(r2) -/* 80150670 0014D5D0 7C 04 00 40 */ cmplw r4, r0 -/* 80150674 0014D5D4 41 82 00 40 */ beq lbl_801506B4 -/* 80150678 0014D5D8 C0 58 00 60 */ lfs f2, 0x60(r24) -/* 8015067C 0014D5DC 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80150680 0014D5E0 C0 38 00 50 */ lfs f1, 0x50(r24) -/* 80150684 0014D5E4 38 C3 66 A0 */ addi r6, r3, skZero3f@l -/* 80150688 0014D5E8 C0 18 00 40 */ lfs f0, 0x40(r24) -/* 8015068C 0014D5EC 38 61 00 14 */ addi r3, r1, 0x14 -/* 80150690 0014D5F0 A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) -/* 80150694 0014D5F4 38 A1 00 60 */ addi r5, r1, 0x60 -/* 80150698 0014D5F8 D0 01 00 60 */ stfs f0, 0x60(r1) -/* 8015069C 0014D5FC 38 E0 00 01 */ li r7, 1 -/* 801506A0 0014D600 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) -/* 801506A4 0014D604 39 00 00 00 */ li r8, 0 -/* 801506A8 0014D608 D0 21 00 64 */ stfs f1, 0x64(r1) -/* 801506AC 0014D60C D0 41 00 68 */ stfs f2, 0x68(r1) -/* 801506B0 0014D610 48 19 9C 01 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi -lbl_801506B4: -/* 801506B4 0014D614 88 18 01 E4 */ lbz r0, 0x1e4(r24) -/* 801506B8 0014D618 38 60 00 01 */ li r3, 1 -/* 801506BC 0014D61C 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 801506C0 0014D620 98 18 01 E4 */ stb r0, 0x1e4(r24) -lbl_801506C4: -/* 801506C4 0014D624 7F 03 C3 78 */ mr r3, r24 -/* 801506C8 0014D628 7F 25 CB 78 */ mr r5, r25 -/* 801506CC 0014D62C 38 80 00 07 */ li r4, 7 -/* 801506D0 0014D630 38 C0 FF FF */ li r6, -1 -/* 801506D4 0014D634 4B F0 09 ED */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 801506D8 0014D638 3A E0 00 00 */ li r23, 0 -/* 801506DC 0014D63C 48 00 00 14 */ b lbl_801506F0 -lbl_801506E0: -/* 801506E0 0014D640 88 18 01 E4 */ lbz r0, 0x1e4(r24) -/* 801506E4 0014D644 38 60 00 00 */ li r3, 0 -/* 801506E8 0014D648 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 801506EC 0014D64C 98 18 01 E4 */ stb r0, 0x1e4(r24) -lbl_801506F0: -/* 801506F0 0014D650 C0 58 01 38 */ lfs f2, 0x138(r24) -/* 801506F4 0014D654 C0 22 9D 9C */ lfs f1, lbl_805ABABC@sda21(r2) -/* 801506F8 0014D658 C0 02 9D D8 */ lfs f0, lbl_805ABAF8@sda21(r2) -/* 801506FC 0014D65C EC 22 08 28 */ fsubs f1, f2, f1 -/* 80150700 0014D660 FC 20 0A 10 */ fabs f1, f1 -/* 80150704 0014D664 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80150708 0014D668 40 80 00 88 */ bge lbl_80150790 -/* 8015070C 0014D66C 88 18 01 E4 */ lbz r0, 0x1e4(r24) -/* 80150710 0014D670 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f -/* 80150714 0014D674 40 82 00 60 */ bne lbl_80150774 -/* 80150718 0014D678 A0 98 01 72 */ lhz r4, 0x172(r24) -/* 8015071C 0014D67C A0 02 C5 FC */ lhz r0, lbl_805AE31C@sda21(r2) -/* 80150720 0014D680 7C 04 00 40 */ cmplw r4, r0 -/* 80150724 0014D684 41 82 00 40 */ beq lbl_80150764 -/* 80150728 0014D688 C0 58 00 60 */ lfs f2, 0x60(r24) -/* 8015072C 0014D68C 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80150730 0014D690 C0 38 00 50 */ lfs f1, 0x50(r24) -/* 80150734 0014D694 38 C3 66 A0 */ addi r6, r3, skZero3f@l -/* 80150738 0014D698 C0 18 00 40 */ lfs f0, 0x40(r24) -/* 8015073C 0014D69C 38 61 00 10 */ addi r3, r1, 0x10 -/* 80150740 0014D6A0 A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) -/* 80150744 0014D6A4 38 A1 00 54 */ addi r5, r1, 0x54 -/* 80150748 0014D6A8 D0 01 00 54 */ stfs f0, 0x54(r1) -/* 8015074C 0014D6AC 38 E0 00 01 */ li r7, 1 -/* 80150750 0014D6B0 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) -/* 80150754 0014D6B4 39 00 00 00 */ li r8, 0 -/* 80150758 0014D6B8 D0 21 00 58 */ stfs f1, 0x58(r1) -/* 8015075C 0014D6BC D0 41 00 5C */ stfs f2, 0x5c(r1) -/* 80150760 0014D6C0 48 19 9B 51 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi -lbl_80150764: -/* 80150764 0014D6C4 88 18 01 E4 */ lbz r0, 0x1e4(r24) -/* 80150768 0014D6C8 38 60 00 01 */ li r3, 1 -/* 8015076C 0014D6CC 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 80150770 0014D6D0 98 18 01 E4 */ stb r0, 0x1e4(r24) -lbl_80150774: -/* 80150774 0014D6D4 7F 03 C3 78 */ mr r3, r24 -/* 80150778 0014D6D8 7F 25 CB 78 */ mr r5, r25 -/* 8015077C 0014D6DC 38 80 00 09 */ li r4, 9 -/* 80150780 0014D6E0 38 C0 FF FF */ li r6, -1 -/* 80150784 0014D6E4 4B F0 09 3D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 80150788 0014D6E8 3A E0 00 00 */ li r23, 0 -/* 8015078C 0014D6EC 48 00 00 14 */ b lbl_801507A0 -lbl_80150790: -/* 80150790 0014D6F0 88 18 01 E4 */ lbz r0, 0x1e4(r24) -/* 80150794 0014D6F4 38 60 00 00 */ li r3, 0 -/* 80150798 0014D6F8 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 8015079C 0014D6FC 98 18 01 E4 */ stb r0, 0x1e4(r24) -lbl_801507A0: -/* 801507A0 0014D700 38 61 00 24 */ addi r3, r1, 0x24 -/* 801507A4 0014D704 38 98 01 84 */ addi r4, r24, 0x184 -/* 801507A8 0014D708 48 00 05 91 */ bl sub_80150d38 -/* 801507AC 0014D70C 88 01 00 28 */ lbz r0, 0x28(r1) -/* 801507B0 0014D710 28 00 00 00 */ cmplwi r0, 0 -/* 801507B4 0014D714 98 01 00 38 */ stb r0, 0x38(r1) -/* 801507B8 0014D718 41 82 00 14 */ beq lbl_801507CC -/* 801507BC 0014D71C 34 61 00 34 */ addic. r3, r1, 0x34 -/* 801507C0 0014D720 41 82 00 0C */ beq lbl_801507CC -/* 801507C4 0014D724 C0 01 00 24 */ lfs f0, 0x24(r1) -/* 801507C8 0014D728 D0 03 00 00 */ stfs f0, 0(r3) -lbl_801507CC: -/* 801507CC 0014D72C 38 00 00 00 */ li r0, 0 -/* 801507D0 0014D730 56 E4 06 3F */ clrlwi. r4, r23, 0x18 -/* 801507D4 0014D734 98 01 00 28 */ stb r0, 0x28(r1) -/* 801507D8 0014D738 41 82 00 FC */ beq lbl_801508D4 -/* 801507DC 0014D73C A0 78 01 70 */ lhz r3, 0x170(r24) -/* 801507E0 0014D740 A0 02 C5 FC */ lhz r0, lbl_805AE31C@sda21(r2) -/* 801507E4 0014D744 7C 03 00 40 */ cmplw r3, r0 -/* 801507E8 0014D748 41 82 00 F8 */ beq lbl_801508E0 -/* 801507EC 0014D74C C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) -/* 801507F0 0014D750 FC 1C 00 40 */ fcmpo cr0, f28, f0 -/* 801507F4 0014D754 4C 41 13 82 */ cror 2, 1, 2 -/* 801507F8 0014D758 7C 00 00 26 */ mfcr r0 -/* 801507FC 0014D75C 28 04 00 00 */ cmplwi r4, 0 -/* 80150800 0014D760 54 17 1F FE */ rlwinm r23, r0, 3, 0x1f, 0x1f -/* 80150804 0014D764 41 82 00 44 */ beq lbl_80150848 -/* 80150808 0014D768 28 17 00 00 */ cmplwi r23, 0 -/* 8015080C 0014D76C 38 00 00 7F */ li r0, 0x7f -/* 80150810 0014D770 41 82 00 08 */ beq lbl_80150818 -/* 80150814 0014D774 38 00 00 64 */ li r0, 0x64 -lbl_80150818: -/* 80150818 0014D778 54 03 06 3E */ clrlwi r3, r0, 0x18 -/* 8015081C 0014D77C 3C 00 43 30 */ lis r0, 0x4330 -/* 80150820 0014D780 90 61 01 54 */ stw r3, 0x154(r1) -/* 80150824 0014D784 38 78 01 84 */ addi r3, r24, 0x184 -/* 80150828 0014D788 C8 22 9D A8 */ lfd f1, lbl_805ABAC8@sda21(r2) -/* 8015082C 0014D78C 38 81 00 0C */ addi r4, r1, 0xc -/* 80150830 0014D790 90 01 01 50 */ stw r0, 0x150(r1) -/* 80150834 0014D794 C8 01 01 50 */ lfd f0, 0x150(r1) -/* 80150838 0014D798 EC 00 08 28 */ fsubs f0, f0, f1 -/* 8015083C 0014D79C D0 01 00 0C */ stfs f0, 0xc(r1) -/* 80150840 0014D7A0 48 00 01 E5 */ bl sub_80150a24 -/* 80150844 0014D7A4 48 00 00 10 */ b lbl_80150854 -lbl_80150848: -/* 80150848 0014D7A8 38 78 01 84 */ addi r3, r24, 0x184 -/* 8015084C 0014D7AC 38 8D 8C 64 */ addi r4, r13, lbl_805A7824@sda21 -/* 80150850 0014D7B0 48 00 01 D5 */ bl sub_80150a24 -lbl_80150854: -/* 80150854 0014D7B4 38 61 00 1C */ addi r3, r1, 0x1c -/* 80150858 0014D7B8 38 98 01 84 */ addi r4, r24, 0x184 -/* 8015085C 0014D7BC 48 00 04 DD */ bl sub_80150d38 -/* 80150860 0014D7C0 28 17 00 00 */ cmplwi r23, 0 -/* 80150864 0014D7C4 41 82 00 0C */ beq lbl_80150870 -/* 80150868 0014D7C8 C0 38 01 08 */ lfs f1, 0x108(r24) -/* 8015086C 0014D7CC 48 00 00 08 */ b lbl_80150874 -lbl_80150870: -/* 80150870 0014D7D0 C0 22 9D B4 */ lfs f1, lbl_805ABAD4@sda21(r2) -lbl_80150874: -/* 80150874 0014D7D4 C0 18 00 50 */ lfs f0, 0x50(r24) -/* 80150878 0014D7D8 7F 03 C3 78 */ mr r3, r24 -/* 8015087C 0014D7DC C0 78 00 60 */ lfs f3, 0x60(r24) -/* 80150880 0014D7E0 38 98 01 78 */ addi r4, r24, 0x178 -/* 80150884 0014D7E4 D0 01 00 40 */ stfs f0, 0x40(r1) -/* 80150888 0014D7E8 38 C1 00 48 */ addi r6, r1, 0x48 -/* 8015088C 0014D7EC C0 58 00 40 */ lfs f2, 0x40(r24) -/* 80150890 0014D7F0 C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 80150894 0014D7F4 D0 41 00 3C */ stfs f2, 0x3c(r1) -/* 80150898 0014D7F8 FC 00 00 1E */ fctiwz f0, f0 -/* 8015089C 0014D7FC 80 A1 00 40 */ lwz r5, 0x40(r1) -/* 801508A0 0014D800 D0 61 00 44 */ stfs f3, 0x44(r1) -/* 801508A4 0014D804 80 E1 00 3C */ lwz r7, 0x3c(r1) -/* 801508A8 0014D808 80 01 00 44 */ lwz r0, 0x44(r1) -/* 801508AC 0014D80C D8 01 01 50 */ stfd f0, 0x150(r1) -/* 801508B0 0014D810 90 E1 00 48 */ stw r7, 0x48(r1) -/* 801508B4 0014D814 80 E1 01 54 */ lwz r7, 0x154(r1) -/* 801508B8 0014D818 90 A1 00 4C */ stw r5, 0x4c(r1) -/* 801508BC 0014D81C 90 01 00 50 */ stw r0, 0x50(r1) -/* 801508C0 0014D820 A0 B8 01 70 */ lhz r5, 0x170(r24) -/* 801508C4 0014D824 4B FF EB 2D */ bl sub_8014f3f0 -/* 801508C8 0014D828 38 00 00 00 */ li r0, 0 -/* 801508CC 0014D82C 98 01 00 20 */ stb r0, 0x20(r1) -/* 801508D0 0014D830 48 00 00 10 */ b lbl_801508E0 -lbl_801508D4: -/* 801508D4 0014D834 7F 03 C3 78 */ mr r3, r24 -/* 801508D8 0014D838 38 98 01 78 */ addi r4, r24, 0x178 -/* 801508DC 0014D83C 4B FF EA C9 */ bl sub_8014f3a4 -lbl_801508E0: -/* 801508E0 0014D840 80 7F 00 64 */ lwz r3, 0x64(r31) -/* 801508E4 0014D844 80 63 00 10 */ lwz r3, 0x10(r3) -/* 801508E8 0014D848 A8 83 02 08 */ lha r4, 0x208(r3) -/* 801508EC 0014D84C 4B ED BB DD */ bl GetAnimationDuration__9CAnimDataCFi -/* 801508F0 0014D850 C0 18 01 38 */ lfs f0, 0x138(r24) -/* 801508F4 0014D854 80 7F 00 64 */ lwz r3, 0x64(r31) -/* 801508F8 0014D858 EF 40 00 72 */ fmuls f26, f0, f1 -/* 801508FC 0014D85C C0 22 9D 9C */ lfs f1, lbl_805ABABC@sda21(r2) -/* 80150900 0014D860 80 63 00 10 */ lwz r3, 0x10(r3) -/* 80150904 0014D864 4B ED 9C 05 */ bl sub_8002a508 -/* 80150908 0014D868 80 7F 00 64 */ lwz r3, 0x64(r31) -/* 8015090C 0014D86C C0 22 9D B4 */ lfs f1, lbl_805ABAD4@sda21(r2) -/* 80150910 0014D870 80 63 00 10 */ lwz r3, 0x10(r3) -/* 80150914 0014D874 4B ED AB 55 */ bl SetPlaybackRate__9CAnimDataFf -/* 80150918 0014D878 FC 20 D0 90 */ fmr f1, f26 -/* 8015091C 0014D87C 7F E4 FB 78 */ mr r4, r31 -/* 80150920 0014D880 7F 25 CB 78 */ mr r5, r25 -/* 80150924 0014D884 38 61 00 B4 */ addi r3, r1, 0xb4 -/* 80150928 0014D888 38 C0 00 01 */ li r6, 1 -/* 8015092C 0014D88C 4B F0 49 71 */ bl UpdateAnimation__6CActorFfR13CStateManagerb -/* 80150930 0014D890 C0 C1 00 B4 */ lfs f6, 0xb4(r1) -/* 80150934 0014D894 7F A4 EB 78 */ mr r4, r29 -/* 80150938 0014D898 C0 A1 00 B8 */ lfs f5, 0xb8(r1) -/* 8015093C 0014D89C 38 61 00 EC */ addi r3, r1, 0xec -/* 80150940 0014D8A0 C0 81 00 BC */ lfs f4, 0xbc(r1) -/* 80150944 0014D8A4 38 A1 00 D0 */ addi r5, r1, 0xd0 -/* 80150948 0014D8A8 C0 61 00 C0 */ lfs f3, 0xc0(r1) -/* 8015094C 0014D8AC C0 41 00 C4 */ lfs f2, 0xc4(r1) -/* 80150950 0014D8B0 C0 21 00 C8 */ lfs f1, 0xc8(r1) -/* 80150954 0014D8B4 C0 01 00 CC */ lfs f0, 0xcc(r1) -/* 80150958 0014D8B8 D0 C1 00 D0 */ stfs f6, 0xd0(r1) -/* 8015095C 0014D8BC D0 A1 00 D4 */ stfs f5, 0xd4(r1) -/* 80150960 0014D8C0 D0 81 00 D8 */ stfs f4, 0xd8(r1) -/* 80150964 0014D8C4 D0 61 00 DC */ stfs f3, 0xdc(r1) -/* 80150968 0014D8C8 D0 41 00 E0 */ stfs f2, 0xe0(r1) -/* 8015096C 0014D8CC D0 21 00 E4 */ stfs f1, 0xe4(r1) -/* 80150970 0014D8D0 D0 01 00 E8 */ stfs f0, 0xe8(r1) -/* 80150974 0014D8D4 48 1C 15 49 */ bl BuildTransform4f__11CQuaternionCFRC9CVector3f -/* 80150978 0014D8D8 38 61 01 1C */ addi r3, r1, 0x11c -/* 8015097C 0014D8DC 38 98 01 3C */ addi r4, r24, 0x13c -/* 80150980 0014D8E0 38 A1 00 EC */ addi r5, r1, 0xec -/* 80150984 0014D8E4 48 1C 1F CD */ bl __ml__12CTransform4fCFRC12CTransform4f -/* 80150988 0014D8E8 38 7F 00 34 */ addi r3, r31, 0x34 -/* 8015098C 0014D8EC 38 81 01 1C */ addi r4, r1, 0x11c -/* 80150990 0014D8F0 48 1C 21 B1 */ bl __as__12CTransform4fFRC12CTransform4f -/* 80150994 0014D8F4 88 7F 00 E4 */ lbz r3, 0xe4(r31) -/* 80150998 0014D8F8 38 80 00 01 */ li r4, 1 -/* 8015099C 0014D8FC 50 83 26 F6 */ rlwimi r3, r4, 4, 0x1b, 0x1b -/* 801509A0 0014D900 38 00 00 00 */ li r0, 0 -/* 801509A4 0014D904 98 7F 00 E4 */ stb r3, 0xe4(r31) -/* 801509A8 0014D908 88 7F 00 E4 */ lbz r3, 0xe4(r31) -/* 801509AC 0014D90C 50 83 1F 38 */ rlwimi r3, r4, 3, 0x1c, 0x1c -/* 801509B0 0014D910 98 01 00 38 */ stb r0, 0x38(r1) -/* 801509B4 0014D914 98 7F 00 E4 */ stb r3, 0xe4(r31) -/* 801509B8 0014D918 88 1F 00 E4 */ lbz r0, 0xe4(r31) -/* 801509BC 0014D91C 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d -/* 801509C0 0014D920 98 1F 00 E4 */ stb r0, 0xe4(r31) -lbl_801509C4: -/* 801509C4 0014D924 3B DE 00 0C */ addi r30, r30, 0xc -lbl_801509C8: -/* 801509C8 0014D928 80 18 00 24 */ lwz r0, 0x24(r24) -/* 801509CC 0014D92C 80 78 00 2C */ lwz r3, 0x2c(r24) -/* 801509D0 0014D930 1C 00 00 0C */ mulli r0, r0, 0xc -/* 801509D4 0014D934 7C 03 02 14 */ add r0, r3, r0 -/* 801509D8 0014D938 7C 1E 00 40 */ cmplw r30, r0 -/* 801509DC 0014D93C 40 82 F9 94 */ bne lbl_80150370 -/* 801509E0 0014D940 E3 E1 01 D8 */ psq_l f31, 472(r1), 0, qr0 -/* 801509E4 0014D944 CB E1 01 D0 */ lfd f31, 0x1d0(r1) -/* 801509E8 0014D948 E3 C1 01 C8 */ psq_l f30, 456(r1), 0, qr0 -/* 801509EC 0014D94C CB C1 01 C0 */ lfd f30, 0x1c0(r1) -/* 801509F0 0014D950 E3 A1 01 B8 */ psq_l f29, 440(r1), 0, qr0 -/* 801509F4 0014D954 CB A1 01 B0 */ lfd f29, 0x1b0(r1) -/* 801509F8 0014D958 E3 81 01 A8 */ psq_l f28, 424(r1), 0, qr0 -/* 801509FC 0014D95C CB 81 01 A0 */ lfd f28, 0x1a0(r1) -/* 80150A00 0014D960 E3 61 01 98 */ psq_l f27, 408(r1), 0, qr0 -/* 80150A04 0014D964 CB 61 01 90 */ lfd f27, 0x190(r1) -/* 80150A08 0014D968 E3 41 01 88 */ psq_l f26, 392(r1), 0, qr0 -/* 80150A0C 0014D96C CB 41 01 80 */ lfd f26, 0x180(r1) -/* 80150A10 0014D970 BA E1 01 5C */ lmw r23, 0x15c(r1) -/* 80150A14 0014D974 80 01 01 E4 */ lwz r0, 0x1e4(r1) -/* 80150A18 0014D978 7C 08 03 A6 */ mtlr r0 -/* 80150A1C 0014D97C 38 21 01 E0 */ addi r1, r1, 0x1e0 -/* 80150A20 0014D980 4E 80 00 20 */ blr - -.global sub_80150a24 -sub_80150a24: -/* 80150A24 0014D984 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80150A28 0014D988 7C 08 02 A6 */ mflr r0 -/* 80150A2C 0014D98C 7C 86 23 78 */ mr r6, r4 -/* 80150A30 0014D990 90 01 00 24 */ stw r0, 0x24(r1) -/* 80150A34 0014D994 80 83 00 04 */ lwz r4, 4(r3) -/* 80150A38 0014D998 80 03 00 08 */ lwz r0, 8(r3) -/* 80150A3C 0014D99C 7C 04 00 00 */ cmpw r4, r0 -/* 80150A40 0014D9A0 40 82 00 10 */ bne lbl_80150A50 -/* 80150A44 0014D9A4 80 83 00 04 */ lwz r4, 4(r3) -/* 80150A48 0014D9A8 38 04 FF FF */ addi r0, r4, -1 -/* 80150A4C 0014D9AC 90 03 00 04 */ stw r0, 4(r3) -lbl_80150A50: -/* 80150A50 0014D9B0 80 03 00 0C */ lwz r0, 0xc(r3) -/* 80150A54 0014D9B4 7C 64 1B 78 */ mr r4, r3 -/* 80150A58 0014D9B8 38 61 00 10 */ addi r3, r1, 0x10 -/* 80150A5C 0014D9BC 38 A1 00 0C */ addi r5, r1, 0xc -/* 80150A60 0014D9C0 90 01 00 08 */ stw r0, 8(r1) -/* 80150A64 0014D9C4 90 01 00 0C */ stw r0, 0xc(r1) -/* 80150A68 0014D9C8 48 00 00 15 */ bl sub_80150a7c -/* 80150A6C 0014D9CC 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80150A70 0014D9D0 7C 08 03 A6 */ mtlr r0 -/* 80150A74 0014D9D4 38 21 00 20 */ addi r1, r1, 0x20 -/* 80150A78 0014D9D8 4E 80 00 20 */ blr - -.global sub_80150a7c -sub_80150a7c: -/* 80150A7C 0014D9DC 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80150A80 0014D9E0 7C 08 02 A6 */ mflr r0 -/* 80150A84 0014D9E4 90 01 00 34 */ stw r0, 0x34(r1) -/* 80150A88 0014D9E8 38 00 00 00 */ li r0, 0 -/* 80150A8C 0014D9EC 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 80150A90 0014D9F0 93 C1 00 28 */ stw r30, 0x28(r1) -/* 80150A94 0014D9F4 7C 9E 23 78 */ mr r30, r4 -/* 80150A98 0014D9F8 93 A1 00 24 */ stw r29, 0x24(r1) -/* 80150A9C 0014D9FC 7C 7D 1B 78 */ mr r29, r3 -/* 80150AA0 0014DA00 7F C3 F3 78 */ mr r3, r30 -/* 80150AA4 0014DA04 80 84 00 0C */ lwz r4, 0xc(r4) -/* 80150AA8 0014DA08 80 E5 00 00 */ lwz r7, 0(r5) -/* 80150AAC 0014DA0C 38 A0 00 01 */ li r5, 1 -/* 80150AB0 0014DA10 90 C1 00 14 */ stw r6, 0x14(r1) -/* 80150AB4 0014DA14 7C 84 38 50 */ subf r4, r4, r7 -/* 80150AB8 0014DA18 90 C1 00 0C */ stw r6, 0xc(r1) -/* 80150ABC 0014DA1C 7C 84 16 70 */ srawi r4, r4, 2 -/* 80150AC0 0014DA20 7F E4 01 94 */ addze r31, r4 -/* 80150AC4 0014DA24 38 C1 00 0C */ addi r6, r1, 0xc -/* 80150AC8 0014DA28 90 01 00 18 */ stw r0, 0x18(r1) -/* 80150ACC 0014DA2C 38 81 00 08 */ addi r4, r1, 8 -/* 80150AD0 0014DA30 90 01 00 10 */ stw r0, 0x10(r1) -/* 80150AD4 0014DA34 90 E1 00 08 */ stw r7, 8(r1) -/* 80150AD8 0014DA38 48 00 00 31 */ bl sub_80150b08 -/* 80150ADC 0014DA3C 80 7E 00 0C */ lwz r3, 0xc(r30) -/* 80150AE0 0014DA40 57 E0 10 3A */ slwi r0, r31, 2 -/* 80150AE4 0014DA44 7C 63 02 14 */ add r3, r3, r0 -/* 80150AE8 0014DA48 90 7D 00 00 */ stw r3, 0(r29) -/* 80150AEC 0014DA4C 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80150AF0 0014DA50 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 80150AF4 0014DA54 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 80150AF8 0014DA58 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 80150AFC 0014DA5C 7C 08 03 A6 */ mtlr r0 -/* 80150B00 0014DA60 38 21 00 30 */ addi r1, r1, 0x30 -/* 80150B04 0014DA64 4E 80 00 20 */ blr - -.global sub_80150b08 -sub_80150b08: -/* 80150B08 0014DA68 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80150B0C 0014DA6C 7C 08 02 A6 */ mflr r0 -/* 80150B10 0014DA70 90 01 00 34 */ stw r0, 0x34(r1) -/* 80150B14 0014DA74 BF 21 00 14 */ stmw r25, 0x14(r1) -/* 80150B18 0014DA78 7C 7B 1B 78 */ mr r27, r3 -/* 80150B1C 0014DA7C 7C 99 23 78 */ mr r25, r4 -/* 80150B20 0014DA80 7C BC 2B 78 */ mr r28, r5 -/* 80150B24 0014DA84 80 63 00 04 */ lwz r3, 4(r3) -/* 80150B28 0014DA88 80 9B 00 08 */ lwz r4, 8(r27) -/* 80150B2C 0014DA8C 7C A3 E2 14 */ add r5, r3, r28 -/* 80150B30 0014DA90 80 FB 00 0C */ lwz r7, 0xc(r27) -/* 80150B34 0014DA94 7C 05 20 00 */ cmpw r5, r4 -/* 80150B38 0014DA98 83 E6 00 00 */ lwz r31, 0(r6) -/* 80150B3C 0014DA9C 7C FE 3B 78 */ mr r30, r7 -/* 80150B40 0014DAA0 41 81 00 9C */ bgt lbl_80150BDC -/* 80150B44 0014DAA4 80 19 00 00 */ lwz r0, 0(r25) -/* 80150B48 0014DAA8 57 84 10 3A */ slwi r4, r28, 2 -/* 80150B4C 0014DAAC 7C 07 00 50 */ subf r0, r7, r0 -/* 80150B50 0014DAB0 7C 00 16 70 */ srawi r0, r0, 2 -/* 80150B54 0014DAB4 7C A0 01 94 */ addze r5, r0 -/* 80150B58 0014DAB8 7C 65 18 50 */ subf r3, r5, r3 -/* 80150B5C 0014DABC 35 03 FF FF */ addic. r8, r3, -1 -/* 80150B60 0014DAC0 54 A0 10 3A */ slwi r0, r5, 2 -/* 80150B64 0014DAC4 7C C7 02 14 */ add r6, r7, r0 -/* 80150B68 0014DAC8 55 03 10 3A */ slwi r3, r8, 2 -/* 80150B6C 0014DACC 38 08 00 01 */ addi r0, r8, 1 -/* 80150B70 0014DAD0 7C 84 1A 14 */ add r4, r4, r3 -/* 80150B74 0014DAD4 7C 86 22 14 */ add r4, r6, r4 -/* 80150B78 0014DAD8 7C 09 03 A6 */ mtctr r0 -/* 80150B7C 0014DADC 41 80 00 2C */ blt lbl_80150BA8 -lbl_80150B80: -/* 80150B80 0014DAE0 28 04 00 00 */ cmplwi r4, 0 -/* 80150B84 0014DAE4 7C 05 42 14 */ add r0, r5, r8 -/* 80150B88 0014DAE8 80 7B 00 0C */ lwz r3, 0xc(r27) -/* 80150B8C 0014DAEC 54 00 10 3A */ slwi r0, r0, 2 -/* 80150B90 0014DAF0 41 82 00 0C */ beq lbl_80150B9C -/* 80150B94 0014DAF4 7C 03 04 2E */ lfsx f0, r3, r0 -/* 80150B98 0014DAF8 D0 04 00 00 */ stfs f0, 0(r4) -lbl_80150B9C: -/* 80150B9C 0014DAFC 38 84 FF FC */ addi r4, r4, -4 -/* 80150BA0 0014DB00 39 08 FF FF */ addi r8, r8, -1 -/* 80150BA4 0014DB04 42 00 FF DC */ bdnz lbl_80150B80 -lbl_80150BA8: -/* 80150BA8 0014DB08 7F 89 03 A6 */ mtctr r28 -/* 80150BAC 0014DB0C 2C 1C 00 00 */ cmpwi r28, 0 -/* 80150BB0 0014DB10 40 81 00 1C */ ble lbl_80150BCC -lbl_80150BB4: -/* 80150BB4 0014DB14 28 06 00 00 */ cmplwi r6, 0 -/* 80150BB8 0014DB18 41 82 00 0C */ beq lbl_80150BC4 -/* 80150BBC 0014DB1C C0 1F 00 00 */ lfs f0, 0(r31) -/* 80150BC0 0014DB20 D0 06 00 00 */ stfs f0, 0(r6) -lbl_80150BC4: -/* 80150BC4 0014DB24 38 C6 00 04 */ addi r6, r6, 4 -/* 80150BC8 0014DB28 42 00 FF EC */ bdnz lbl_80150BB4 -lbl_80150BCC: -/* 80150BCC 0014DB2C 80 1B 00 04 */ lwz r0, 4(r27) -/* 80150BD0 0014DB30 7C 00 E2 14 */ add r0, r0, r28 -/* 80150BD4 0014DB34 90 1B 00 04 */ stw r0, 4(r27) -/* 80150BD8 0014DB38 48 00 01 4C */ b lbl_80150D24 -lbl_80150BDC: -/* 80150BDC 0014DB3C 2C 04 00 00 */ cmpwi r4, 0 -/* 80150BE0 0014DB40 38 00 00 04 */ li r0, 4 -/* 80150BE4 0014DB44 41 82 00 08 */ beq lbl_80150BEC -/* 80150BE8 0014DB48 54 80 08 3C */ slwi r0, r4, 1 -lbl_80150BEC: -/* 80150BEC 0014DB4C 7C 1D 03 78 */ mr r29, r0 -/* 80150BF0 0014DB50 48 00 00 08 */ b lbl_80150BF8 -lbl_80150BF4: -/* 80150BF4 0014DB54 57 BD 08 3C */ slwi r29, r29, 1 -lbl_80150BF8: -/* 80150BF8 0014DB58 7C 1D 28 00 */ cmpw r29, r5 -/* 80150BFC 0014DB5C 41 80 FF F8 */ blt lbl_80150BF4 -/* 80150C00 0014DB60 57 A3 10 3B */ rlwinm. r3, r29, 2, 0, 0x1d -/* 80150C04 0014DB64 40 82 00 0C */ bne lbl_80150C10 -/* 80150C08 0014DB68 3B 40 00 00 */ li r26, 0 -/* 80150C0C 0014DB6C 48 00 00 1C */ b lbl_80150C28 -lbl_80150C10: -/* 80150C10 0014DB70 3C 80 80 3D */ lis r4, lbl_803D01D0@ha -/* 80150C14 0014DB74 38 A0 00 00 */ li r5, 0 -/* 80150C18 0014DB78 38 84 01 D0 */ addi r4, r4, lbl_803D01D0@l -/* 80150C1C 0014DB7C 38 84 00 15 */ addi r4, r4, 0x15 -/* 80150C20 0014DB80 48 1C 4B F9 */ bl __nwa__FUlPCcPCc -/* 80150C24 0014DB84 7C 7A 1B 78 */ mr r26, r3 -lbl_80150C28: -/* 80150C28 0014DB88 80 7B 00 0C */ lwz r3, 0xc(r27) -/* 80150C2C 0014DB8C 7F 46 D3 78 */ mr r6, r26 -/* 80150C30 0014DB90 80 19 00 00 */ lwz r0, 0(r25) -/* 80150C34 0014DB94 38 E0 00 00 */ li r7, 0 -/* 80150C38 0014DB98 38 A0 00 00 */ li r5, 0 -/* 80150C3C 0014DB9C 7C 03 00 50 */ subf r0, r3, r0 -/* 80150C40 0014DBA0 7C 00 16 70 */ srawi r0, r0, 2 -/* 80150C44 0014DBA4 7C 80 01 95 */ addze. r4, r0 -/* 80150C48 0014DBA8 7C 89 03 A6 */ mtctr r4 -/* 80150C4C 0014DBAC 40 81 00 28 */ ble lbl_80150C74 -lbl_80150C50: -/* 80150C50 0014DBB0 28 06 00 00 */ cmplwi r6, 0 -/* 80150C54 0014DBB4 80 7B 00 0C */ lwz r3, 0xc(r27) -/* 80150C58 0014DBB8 41 82 00 0C */ beq lbl_80150C64 -/* 80150C5C 0014DBBC 7C 03 2C 2E */ lfsx f0, r3, r5 -/* 80150C60 0014DBC0 D0 06 00 00 */ stfs f0, 0(r6) -lbl_80150C64: -/* 80150C64 0014DBC4 38 C6 00 04 */ addi r6, r6, 4 -/* 80150C68 0014DBC8 38 E7 00 01 */ addi r7, r7, 1 -/* 80150C6C 0014DBCC 38 A5 00 04 */ addi r5, r5, 4 -/* 80150C70 0014DBD0 42 00 FF E0 */ bdnz lbl_80150C50 -lbl_80150C74: -/* 80150C74 0014DBD4 54 E0 10 3A */ slwi r0, r7, 2 -/* 80150C78 0014DBD8 7C 7A 02 14 */ add r3, r26, r0 -/* 80150C7C 0014DBDC 7F 89 03 A6 */ mtctr r28 -/* 80150C80 0014DBE0 2C 1C 00 00 */ cmpwi r28, 0 -/* 80150C84 0014DBE4 40 81 00 20 */ ble lbl_80150CA4 -lbl_80150C88: -/* 80150C88 0014DBE8 28 03 00 00 */ cmplwi r3, 0 -/* 80150C8C 0014DBEC 41 82 00 0C */ beq lbl_80150C98 -/* 80150C90 0014DBF0 C0 1F 00 00 */ lfs f0, 0(r31) -/* 80150C94 0014DBF4 D0 03 00 00 */ stfs f0, 0(r3) -lbl_80150C98: -/* 80150C98 0014DBF8 38 63 00 04 */ addi r3, r3, 4 -/* 80150C9C 0014DBFC 38 E7 00 01 */ addi r7, r7, 1 -/* 80150CA0 0014DC00 42 00 FF E8 */ bdnz lbl_80150C88 -lbl_80150CA4: -/* 80150CA4 0014DC04 54 E0 10 3A */ slwi r0, r7, 2 -/* 80150CA8 0014DC08 7C 86 23 78 */ mr r6, r4 -/* 80150CAC 0014DC0C 54 84 10 3A */ slwi r4, r4, 2 -/* 80150CB0 0014DC10 7C BA 02 14 */ add r5, r26, r0 -/* 80150CB4 0014DC14 48 00 00 24 */ b lbl_80150CD8 -lbl_80150CB8: -/* 80150CB8 0014DC18 28 05 00 00 */ cmplwi r5, 0 -/* 80150CBC 0014DC1C 80 7B 00 0C */ lwz r3, 0xc(r27) -/* 80150CC0 0014DC20 41 82 00 0C */ beq lbl_80150CCC -/* 80150CC4 0014DC24 7C 03 24 2E */ lfsx f0, r3, r4 -/* 80150CC8 0014DC28 D0 05 00 00 */ stfs f0, 0(r5) -lbl_80150CCC: -/* 80150CCC 0014DC2C 38 A5 00 04 */ addi r5, r5, 4 -/* 80150CD0 0014DC30 38 84 00 04 */ addi r4, r4, 4 -/* 80150CD4 0014DC34 38 C6 00 01 */ addi r6, r6, 1 -lbl_80150CD8: -/* 80150CD8 0014DC38 80 1B 00 04 */ lwz r0, 4(r27) -/* 80150CDC 0014DC3C 7C 06 00 00 */ cmpw r6, r0 -/* 80150CE0 0014DC40 41 80 FF D8 */ blt lbl_80150CB8 -/* 80150CE4 0014DC44 54 00 10 3A */ slwi r0, r0, 2 -/* 80150CE8 0014DC48 7F C3 F3 78 */ mr r3, r30 -/* 80150CEC 0014DC4C 7C 1E 02 14 */ add r0, r30, r0 -/* 80150CF0 0014DC50 48 00 00 08 */ b lbl_80150CF8 -lbl_80150CF4: -/* 80150CF4 0014DC54 38 63 00 04 */ addi r3, r3, 4 -lbl_80150CF8: -/* 80150CF8 0014DC58 7C 03 00 40 */ cmplw r3, r0 -/* 80150CFC 0014DC5C 40 82 FF F8 */ bne lbl_80150CF4 -/* 80150D00 0014DC60 80 7B 00 0C */ lwz r3, 0xc(r27) -/* 80150D04 0014DC64 28 03 00 00 */ cmplwi r3, 0 -/* 80150D08 0014DC68 41 82 00 08 */ beq lbl_80150D10 -/* 80150D0C 0014DC6C 48 1C 4C 25 */ bl Free__7CMemoryFPCv -lbl_80150D10: -/* 80150D10 0014DC70 93 5B 00 0C */ stw r26, 0xc(r27) -/* 80150D14 0014DC74 93 BB 00 08 */ stw r29, 8(r27) -/* 80150D18 0014DC78 80 1B 00 04 */ lwz r0, 4(r27) -/* 80150D1C 0014DC7C 7C 00 E2 14 */ add r0, r0, r28 -/* 80150D20 0014DC80 90 1B 00 04 */ stw r0, 4(r27) -lbl_80150D24: -/* 80150D24 0014DC84 BB 21 00 14 */ lmw r25, 0x14(r1) -/* 80150D28 0014DC88 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80150D2C 0014DC8C 7C 08 03 A6 */ mtlr r0 -/* 80150D30 0014DC90 38 21 00 30 */ addi r1, r1, 0x30 -/* 80150D34 0014DC94 4E 80 00 20 */ blr - -.global sub_80150d38 -sub_80150d38: -/* 80150D38 0014DC98 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80150D3C 0014DC9C 7C 08 02 A6 */ mflr r0 -/* 80150D40 0014DCA0 90 01 00 14 */ stw r0, 0x14(r1) -/* 80150D44 0014DCA4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80150D48 0014DCA8 7C 7F 1B 78 */ mr r31, r3 -/* 80150D4C 0014DCAC 80 04 00 04 */ lwz r0, 4(r4) -/* 80150D50 0014DCB0 2C 00 00 00 */ cmpwi r0, 0 -/* 80150D54 0014DCB4 40 82 00 10 */ bne lbl_80150D64 -/* 80150D58 0014DCB8 38 00 00 00 */ li r0, 0 -/* 80150D5C 0014DCBC 98 1F 00 04 */ stb r0, 4(r31) -/* 80150D60 0014DCC0 48 00 00 24 */ b lbl_80150D84 -lbl_80150D64: -/* 80150D64 0014DCC4 80 64 00 0C */ lwz r3, 0xc(r4) -/* 80150D68 0014DCC8 7C 04 03 78 */ mr r4, r0 -/* 80150D6C 0014DCCC 4B EB 7B 29 */ bl "GetAverageValue__FPCfi" -/* 80150D70 0014DCD0 38 00 00 01 */ li r0, 1 -/* 80150D74 0014DCD4 28 1F 00 00 */ cmplwi r31, 0 -/* 80150D78 0014DCD8 98 1F 00 04 */ stb r0, 4(r31) -/* 80150D7C 0014DCDC 41 82 00 08 */ beq lbl_80150D84 -/* 80150D80 0014DCE0 D0 3F 00 00 */ stfs f1, 0(r31) -lbl_80150D84: -/* 80150D84 0014DCE4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80150D88 0014DCE8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80150D8C 0014DCEC 7C 08 03 A6 */ mtlr r0 -/* 80150D90 0014DCF0 38 21 00 10 */ addi r1, r1, 0x10 -/* 80150D94 0014DCF4 4E 80 00 20 */ blr - -.global sub_80150d98 -sub_80150d98: -/* 80150D98 0014DCF8 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 80150D9C 0014DCFC 7C 08 02 A6 */ mflr r0 -/* 80150DA0 0014DD00 2C 05 FF FF */ cmpwi r5, -1 -/* 80150DA4 0014DD04 90 01 00 64 */ stw r0, 0x64(r1) -/* 80150DA8 0014DD08 93 E1 00 5C */ stw r31, 0x5c(r1) -/* 80150DAC 0014DD0C 41 82 00 10 */ beq lbl_80150DBC -/* 80150DB0 0014DD10 80 03 00 08 */ lwz r0, 8(r3) -/* 80150DB4 0014DD14 7C 05 00 00 */ cmpw r5, r0 -/* 80150DB8 0014DD18 41 80 00 0C */ blt lbl_80150DC4 -lbl_80150DBC: -/* 80150DBC 0014DD1C 83 E3 00 08 */ lwz r31, 8(r3) -/* 80150DC0 0014DD20 48 00 00 08 */ b lbl_80150DC8 -lbl_80150DC4: -/* 80150DC4 0014DD24 7C BF 2B 78 */ mr r31, r5 -lbl_80150DC8: -/* 80150DC8 0014DD28 38 E0 00 00 */ li r7, 0 -/* 80150DCC 0014DD2C 81 04 00 08 */ lwz r8, 8(r4) -/* 80150DD0 0014DD30 80 03 00 08 */ lwz r0, 8(r3) -/* 80150DD4 0014DD34 38 A1 00 28 */ addi r5, r1, 0x28 -/* 80150DD8 0014DD38 90 E1 00 0C */ stw r7, 0xc(r1) -/* 80150DDC 0014DD3C 38 C1 00 18 */ addi r6, r1, 0x18 -/* 80150DE0 0014DD40 90 81 00 10 */ stw r4, 0x10(r1) -/* 80150DE4 0014DD44 91 01 00 14 */ stw r8, 0x14(r1) -/* 80150DE8 0014DD48 90 81 00 18 */ stw r4, 0x18(r1) -/* 80150DEC 0014DD4C 91 01 00 1C */ stw r8, 0x1c(r1) -/* 80150DF0 0014DD50 90 81 00 20 */ stw r4, 0x20(r1) -/* 80150DF4 0014DD54 90 81 00 28 */ stw r4, 0x28(r1) -/* 80150DF8 0014DD58 38 81 00 38 */ addi r4, r1, 0x38 -/* 80150DFC 0014DD5C 90 E1 00 24 */ stw r7, 0x24(r1) -/* 80150E00 0014DD60 90 E1 00 2C */ stw r7, 0x2c(r1) -/* 80150E04 0014DD64 90 61 00 30 */ stw r3, 0x30(r1) -/* 80150E08 0014DD68 90 01 00 34 */ stw r0, 0x34(r1) -/* 80150E0C 0014DD6C 90 61 00 38 */ stw r3, 0x38(r1) -/* 80150E10 0014DD70 90 01 00 3C */ stw r0, 0x3c(r1) -/* 80150E14 0014DD74 90 61 00 40 */ stw r3, 0x40(r1) -/* 80150E18 0014DD78 90 E1 00 44 */ stw r7, 0x44(r1) -/* 80150E1C 0014DD7C 90 61 00 08 */ stw r3, 8(r1) -/* 80150E20 0014DD80 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80150E24 0014DD84 90 61 00 48 */ stw r3, 0x48(r1) -/* 80150E28 0014DD88 90 61 00 50 */ stw r3, 0x50(r1) -/* 80150E2C 0014DD8C 38 61 00 50 */ addi r3, r1, 0x50 -/* 80150E30 0014DD90 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 80150E34 0014DD94 93 E1 00 54 */ stw r31, 0x54(r1) -/* 80150E38 0014DD98 48 00 00 2D */ bl sub_80150e64 -/* 80150E3C 0014DD9C 2C 03 FF FF */ cmpwi r3, -1 -/* 80150E40 0014DDA0 7C 03 FA 14 */ add r0, r3, r31 -/* 80150E44 0014DDA4 40 82 00 08 */ bne lbl_80150E4C -/* 80150E48 0014DDA8 7C 60 1B 78 */ mr r0, r3 -lbl_80150E4C: -/* 80150E4C 0014DDAC 7C 03 03 78 */ mr r3, r0 -/* 80150E50 0014DDB0 80 01 00 64 */ lwz r0, 0x64(r1) -/* 80150E54 0014DDB4 83 E1 00 5C */ lwz r31, 0x5c(r1) -/* 80150E58 0014DDB8 7C 08 03 A6 */ mtlr r0 -/* 80150E5C 0014DDBC 38 21 00 60 */ addi r1, r1, 0x60 -/* 80150E60 0014DDC0 4E 80 00 20 */ blr - -.global sub_80150e64 -sub_80150e64: -/* 80150E64 0014DDC4 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80150E68 0014DDC8 39 00 00 00 */ li r8, 0 -/* 80150E6C 0014DDCC 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80150E70 0014DDD0 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80150E74 0014DDD4 93 A1 00 14 */ stw r29, 0x14(r1) -/* 80150E78 0014DDD8 81 65 00 00 */ lwz r11, 0(r5) -/* 80150E7C 0014DDDC 81 86 00 00 */ lwz r12, 0(r6) -/* 80150E80 0014DDE0 7C 0B 60 40 */ cmplw r11, r12 -/* 80150E84 0014DDE4 40 82 00 18 */ bne lbl_80150E9C -/* 80150E88 0014DDE8 80 E5 00 04 */ lwz r7, 4(r5) -/* 80150E8C 0014DDEC 80 06 00 04 */ lwz r0, 4(r6) -/* 80150E90 0014DDF0 7C 07 00 00 */ cmpw r7, r0 -/* 80150E94 0014DDF4 40 82 00 08 */ bne lbl_80150E9C -/* 80150E98 0014DDF8 39 00 00 01 */ li r8, 1 -lbl_80150E9C: -/* 80150E9C 0014DDFC 55 00 06 3F */ clrlwi. r0, r8, 0x18 -/* 80150EA0 0014DE00 41 82 00 0C */ beq lbl_80150EAC -/* 80150EA4 0014DE04 38 60 00 00 */ li r3, 0 -/* 80150EA8 0014DE08 48 00 00 B4 */ b lbl_80150F5C -lbl_80150EAC: -/* 80150EAC 0014DE0C 83 E3 00 04 */ lwz r31, 4(r3) -/* 80150EB0 0014DE10 3B A0 00 00 */ li r29, 0 -/* 80150EB4 0014DE14 83 C5 00 04 */ lwz r30, 4(r5) -/* 80150EB8 0014DE18 80 E3 00 00 */ lwz r7, 0(r3) -/* 80150EBC 0014DE1C 7F E8 FB 78 */ mr r8, r31 -/* 80150EC0 0014DE20 81 44 00 00 */ lwz r10, 0(r4) -/* 80150EC4 0014DE24 7F C9 F3 78 */ mr r9, r30 -/* 80150EC8 0014DE28 48 00 00 6C */ b lbl_80150F34 -lbl_80150ECC: -/* 80150ECC 0014DE2C 80 A7 00 00 */ lwz r5, 0(r7) -/* 80150ED0 0014DE30 80 6B 00 00 */ lwz r3, 0(r11) -/* 80150ED4 0014DE34 7C A5 40 AE */ lbzx r5, r5, r8 -/* 80150ED8 0014DE38 7C 03 48 AE */ lbzx r0, r3, r9 -/* 80150EDC 0014DE3C 7C A3 07 74 */ extsb r3, r5 -/* 80150EE0 0014DE40 7C 00 07 74 */ extsb r0, r0 -/* 80150EE4 0014DE44 7C 03 00 00 */ cmpw r3, r0 -/* 80150EE8 0014DE48 40 82 00 40 */ bne lbl_80150F28 -/* 80150EEC 0014DE4C 7C 0B 60 40 */ cmplw r11, r12 -/* 80150EF0 0014DE50 38 60 00 00 */ li r3, 0 -/* 80150EF4 0014DE54 39 29 00 01 */ addi r9, r9, 1 -/* 80150EF8 0014DE58 3B BD 00 01 */ addi r29, r29, 1 -/* 80150EFC 0014DE5C 40 82 00 14 */ bne lbl_80150F10 -/* 80150F00 0014DE60 80 06 00 04 */ lwz r0, 4(r6) -/* 80150F04 0014DE64 7C 09 00 00 */ cmpw r9, r0 -/* 80150F08 0014DE68 40 82 00 08 */ bne lbl_80150F10 -/* 80150F0C 0014DE6C 38 60 00 01 */ li r3, 1 -lbl_80150F10: -/* 80150F10 0014DE70 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80150F14 0014DE74 41 82 00 1C */ beq lbl_80150F30 -/* 80150F18 0014DE78 7C 1F 40 50 */ subf r0, r31, r8 -/* 80150F1C 0014DE7C 7C 7D 00 50 */ subf r3, r29, r0 -/* 80150F20 0014DE80 38 63 00 01 */ addi r3, r3, 1 -/* 80150F24 0014DE84 48 00 00 38 */ b lbl_80150F5C -lbl_80150F28: -/* 80150F28 0014DE88 7F C9 F3 78 */ mr r9, r30 -/* 80150F2C 0014DE8C 3B A0 00 00 */ li r29, 0 -lbl_80150F30: -/* 80150F30 0014DE90 39 08 00 01 */ addi r8, r8, 1 -lbl_80150F34: -/* 80150F34 0014DE94 7C 07 50 40 */ cmplw r7, r10 -/* 80150F38 0014DE98 38 60 00 00 */ li r3, 0 -/* 80150F3C 0014DE9C 40 82 00 10 */ bne lbl_80150F4C -/* 80150F40 0014DEA0 80 04 00 04 */ lwz r0, 4(r4) -/* 80150F44 0014DEA4 7C 08 00 00 */ cmpw r8, r0 -/* 80150F48 0014DEA8 41 82 00 08 */ beq lbl_80150F50 -lbl_80150F4C: -/* 80150F4C 0014DEAC 38 60 00 01 */ li r3, 1 -lbl_80150F50: -/* 80150F50 0014DEB0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80150F54 0014DEB4 40 82 FF 78 */ bne lbl_80150ECC -/* 80150F58 0014DEB8 38 60 FF FF */ li r3, -1 -lbl_80150F5C: -/* 80150F5C 0014DEBC 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80150F60 0014DEC0 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 80150F64 0014DEC4 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 80150F68 0014DEC8 38 21 00 20 */ addi r1, r1, 0x20 -/* 80150F6C 0014DECC 4E 80 00 20 */ blr - -.global ThinkPlayerFollowLocator__22CScriptSpecialFunctionFfR13CStateManager -ThinkPlayerFollowLocator__22CScriptSpecialFunctionFfR13CStateManager: -/* 80150F70 0014DED0 94 21 FF 30 */ stwu r1, -0xd0(r1) -/* 80150F74 0014DED4 7C 08 02 A6 */ mflr r0 -/* 80150F78 0014DED8 90 01 00 D4 */ stw r0, 0xd4(r1) -/* 80150F7C 0014DEDC 93 E1 00 CC */ stw r31, 0xcc(r1) -/* 80150F80 0014DEE0 93 C1 00 C8 */ stw r30, 0xc8(r1) -/* 80150F84 0014DEE4 7C 9E 23 78 */ mr r30, r4 -/* 80150F88 0014DEE8 93 A1 00 C4 */ stw r29, 0xc4(r1) -/* 80150F8C 0014DEEC 7C 7D 1B 78 */ mr r29, r3 -/* 80150F90 0014DEF0 93 81 00 C0 */ stw r28, 0xc0(r1) -/* 80150F94 0014DEF4 83 E3 00 2C */ lwz r31, 0x2c(r3) -/* 80150F98 0014DEF8 48 00 01 4C */ b lbl_801510E4 -lbl_80150F9C: -/* 80150F9C 0014DEFC 80 1F 00 00 */ lwz r0, 0(r31) -/* 80150FA0 0014DF00 2C 00 00 12 */ cmpwi r0, 0x12 -/* 80150FA4 0014DF04 40 82 01 3C */ bne lbl_801510E0 -/* 80150FA8 0014DF08 80 1F 00 04 */ lwz r0, 4(r31) -/* 80150FAC 0014DF0C 2C 00 00 01 */ cmpwi r0, 1 -/* 80150FB0 0014DF10 40 82 01 30 */ bne lbl_801510E0 -/* 80150FB4 0014DF14 80 1F 00 08 */ lwz r0, 8(r31) -/* 80150FB8 0014DF18 7F C4 F3 78 */ mr r4, r30 -/* 80150FBC 0014DF1C 38 61 00 18 */ addi r3, r1, 0x18 -/* 80150FC0 0014DF20 38 A1 00 0C */ addi r5, r1, 0xc -/* 80150FC4 0014DF24 90 01 00 0C */ stw r0, 0xc(r1) -/* 80150FC8 0014DF28 4B EF 70 01 */ bl GetIdListForScript__13CStateManagerCF9TEditorId -/* 80150FCC 0014DF2C 80 A1 00 18 */ lwz r5, 0x18(r1) -/* 80150FD0 0014DF30 38 60 00 00 */ li r3, 0 -/* 80150FD4 0014DF34 80 01 00 20 */ lwz r0, 0x20(r1) -/* 80150FD8 0014DF38 80 81 00 1C */ lwz r4, 0x1c(r1) -/* 80150FDC 0014DF3C 7C 05 00 40 */ cmplw r5, r0 -/* 80150FE0 0014DF40 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80150FE4 0014DF44 40 82 00 10 */ bne lbl_80150FF4 -/* 80150FE8 0014DF48 7C 04 00 40 */ cmplw r4, r0 -/* 80150FEC 0014DF4C 40 82 00 08 */ bne lbl_80150FF4 -/* 80150FF0 0014DF50 38 60 00 01 */ li r3, 1 -lbl_80150FF4: -/* 80150FF4 0014DF54 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80150FF8 0014DF58 40 82 00 E8 */ bne lbl_801510E0 -/* 80150FFC 0014DF5C A0 05 00 14 */ lhz r0, 0x14(r5) -/* 80151000 0014DF60 7F C3 F3 78 */ mr r3, r30 -/* 80151004 0014DF64 38 81 00 08 */ addi r4, r1, 8 -/* 80151008 0014DF68 B0 01 00 08 */ sth r0, 8(r1) -/* 8015100C 0014DF6C 4B EF B5 99 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 80151010 0014DF70 7C 64 1B 78 */ mr r4, r3 -/* 80151014 0014DF74 38 61 00 10 */ addi r3, r1, 0x10 -/* 80151018 0014DF78 4B F5 EC 79 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8015101C 0014DF7C 83 83 00 04 */ lwz r28, 4(r3) -/* 80151020 0014DF80 28 1C 00 00 */ cmplwi r28, 0 -/* 80151024 0014DF84 41 82 00 BC */ beq lbl_801510E0 -/* 80151028 0014DF88 80 9C 00 64 */ lwz r4, 0x64(r28) -/* 8015102C 0014DF8C 38 60 00 00 */ li r3, 0 -/* 80151030 0014DF90 28 04 00 00 */ cmplwi r4, 0 -/* 80151034 0014DF94 41 82 00 14 */ beq lbl_80151048 -/* 80151038 0014DF98 80 04 00 10 */ lwz r0, 0x10(r4) -/* 8015103C 0014DF9C 28 00 00 00 */ cmplwi r0, 0 -/* 80151040 0014DFA0 41 82 00 08 */ beq lbl_80151048 -/* 80151044 0014DFA4 38 60 00 01 */ li r3, 1 -lbl_80151048: -/* 80151048 0014DFA8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8015104C 0014DFAC 41 82 00 94 */ beq lbl_801510E0 -/* 80151050 0014DFB0 7F 84 E3 78 */ mr r4, r28 -/* 80151054 0014DFB4 38 61 00 28 */ addi r3, r1, 0x28 -/* 80151058 0014DFB8 38 BD 00 EC */ addi r5, r29, 0xec -/* 8015105C 0014DFBC 4B F0 1E A5 */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80151060 0014DFC0 38 61 00 58 */ addi r3, r1, 0x58 -/* 80151064 0014DFC4 38 9C 00 34 */ addi r4, r28, 0x34 -/* 80151068 0014DFC8 38 A1 00 28 */ addi r5, r1, 0x28 -/* 8015106C 0014DFCC 48 1C 18 E5 */ bl __ml__12CTransform4fCFRC12CTransform4f -/* 80151070 0014DFD0 38 61 00 88 */ addi r3, r1, 0x88 -/* 80151074 0014DFD4 38 81 00 58 */ addi r4, r1, 0x58 -/* 80151078 0014DFD8 48 1C 1A FD */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8015107C 0014DFDC 83 BE 08 4C */ lwz r29, 0x84c(r30) -/* 80151080 0014DFE0 38 81 00 88 */ addi r4, r1, 0x88 -/* 80151084 0014DFE4 38 7D 00 34 */ addi r3, r29, 0x34 -/* 80151088 0014DFE8 48 1C 1A B9 */ bl __as__12CTransform4fFRC12CTransform4f -/* 8015108C 0014DFEC 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 80151090 0014DFF0 38 A0 00 01 */ li r5, 1 -/* 80151094 0014DFF4 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b -/* 80151098 0014DFF8 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8015109C 0014DFFC 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 801510A0 0014E000 38 83 66 A0 */ addi r4, r3, skZero3f@l -/* 801510A4 0014E004 7F A3 EB 78 */ mr r3, r29 -/* 801510A8 0014E008 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 801510AC 0014E00C 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c -/* 801510B0 0014E010 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 801510B4 0014E014 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 801510B8 0014E018 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d -/* 801510BC 0014E01C 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 801510C0 0014E020 4B FC 9B E1 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -/* 801510C4 0014E024 4B EC A4 71 */ bl Identity__10CAxisAngleFv -/* 801510C8 0014E028 7C 64 1B 78 */ mr r4, r3 -/* 801510CC 0014E02C 7F A3 EB 78 */ mr r3, r29 -/* 801510D0 0014E030 4B FC 9B 2D */ bl SetAngularVelocityWR__13CPhysicsActorFRC10CAxisAngle -/* 801510D4 0014E034 7F A3 EB 78 */ mr r3, r29 -/* 801510D8 0014E038 4B FC A1 DD */ bl ClearForcesAndTorques__13CPhysicsActorFv -/* 801510DC 0014E03C 48 00 00 20 */ b lbl_801510FC -lbl_801510E0: -/* 801510E0 0014E040 3B FF 00 0C */ addi r31, r31, 0xc -lbl_801510E4: -/* 801510E4 0014E044 80 1D 00 24 */ lwz r0, 0x24(r29) -/* 801510E8 0014E048 80 7D 00 2C */ lwz r3, 0x2c(r29) -/* 801510EC 0014E04C 1C 00 00 0C */ mulli r0, r0, 0xc -/* 801510F0 0014E050 7C 03 02 14 */ add r0, r3, r0 -/* 801510F4 0014E054 7C 1F 00 40 */ cmplw r31, r0 -/* 801510F8 0014E058 40 82 FE A4 */ bne lbl_80150F9C -lbl_801510FC: -/* 801510FC 0014E05C 80 01 00 D4 */ lwz r0, 0xd4(r1) -/* 80151100 0014E060 83 E1 00 CC */ lwz r31, 0xcc(r1) -/* 80151104 0014E064 83 C1 00 C8 */ lwz r30, 0xc8(r1) -/* 80151108 0014E068 83 A1 00 C4 */ lwz r29, 0xc4(r1) -/* 8015110C 0014E06C 83 81 00 C0 */ lwz r28, 0xc0(r1) -/* 80151110 0014E070 7C 08 03 A6 */ mtlr r0 -/* 80151114 0014E074 38 21 00 D0 */ addi r1, r1, 0xd0 -/* 80151118 0014E078 4E 80 00 20 */ blr - -.global ThinkIntroBossRingController__22CScriptSpecialFunctionFfR13CStateManager -ThinkIntroBossRingController__22CScriptSpecialFunctionFfR13CStateManager: -/* 8015111C 0014E07C 94 21 FE 80 */ stwu r1, -0x180(r1) -/* 80151120 0014E080 7C 08 02 A6 */ mflr r0 -/* 80151124 0014E084 90 01 01 84 */ stw r0, 0x184(r1) -/* 80151128 0014E088 DB E1 01 70 */ stfd f31, 0x170(r1) -/* 8015112C 0014E08C F3 E1 01 78 */ psq_st f31, 376(r1), 0, qr0 -/* 80151130 0014E090 BF 41 01 58 */ stmw r26, 0x158(r1) -/* 80151134 0014E094 7C 7B 1B 78 */ mr r27, r3 -/* 80151138 0014E098 FF E0 08 90 */ fmr f31, f1 -/* 8015113C 0014E09C 80 03 01 A8 */ lwz r0, 0x1a8(r3) -/* 80151140 0014E0A0 7C 9C 23 78 */ mr r28, r4 -/* 80151144 0014E0A4 2C 00 00 03 */ cmpwi r0, 3 -/* 80151148 0014E0A8 41 82 00 BC */ beq lbl_80151204 -/* 8015114C 0014E0AC 3B C0 00 00 */ li r30, 0 -/* 80151150 0014E0B0 3B A0 00 00 */ li r29, 0 -/* 80151154 0014E0B4 48 00 00 A4 */ b lbl_801511F8 -lbl_80151158: -/* 80151158 0014E0B8 80 BB 01 A4 */ lwz r5, 0x1a4(r27) -/* 8015115C 0014E0BC 7F 83 E3 78 */ mr r3, r28 -/* 80151160 0014E0C0 38 81 00 14 */ addi r4, r1, 0x14 -/* 80151164 0014E0C4 7C 05 EA 2E */ lhzx r0, r5, r29 -/* 80151168 0014E0C8 B0 01 00 14 */ sth r0, 0x14(r1) -/* 8015116C 0014E0CC 4B EF B4 09 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80151170 0014E0D0 7C 64 1B 78 */ mr r4, r3 -/* 80151174 0014E0D4 38 61 00 38 */ addi r3, r1, 0x38 -/* 80151178 0014E0D8 4B F5 EB 19 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8015117C 0014E0DC 83 E3 00 04 */ lwz r31, 4(r3) -/* 80151180 0014E0E0 28 1F 00 00 */ cmplwi r31, 0 -/* 80151184 0014E0E4 41 82 00 6C */ beq lbl_801511F0 -/* 80151188 0014E0E8 38 61 01 1C */ addi r3, r1, 0x11c -/* 8015118C 0014E0EC 38 9F 00 34 */ addi r4, r31, 0x34 -/* 80151190 0014E0F0 48 1C 19 E5 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80151194 0014E0F4 80 9B 01 A4 */ lwz r4, 0x1a4(r27) -/* 80151198 0014E0F8 38 1D 00 04 */ addi r0, r29, 4 -/* 8015119C 0014E0FC C0 22 9D DC */ lfs f1, lbl_805ABAFC@sda21(r2) -/* 801511A0 0014E100 38 61 01 1C */ addi r3, r1, 0x11c -/* 801511A4 0014E104 7C 04 04 2E */ lfsx f0, r4, r0 -/* 801511A8 0014E108 38 81 00 20 */ addi r4, r1, 0x20 -/* 801511AC 0014E10C EC 1F 00 32 */ fmuls f0, f31, f0 -/* 801511B0 0014E110 EC 01 00 32 */ fmuls f0, f1, f0 -/* 801511B4 0014E114 D0 01 00 20 */ stfs f0, 0x20(r1) -/* 801511B8 0014E118 48 1C 23 05 */ bl RotateLocalZ__12CTransform4fFRC9CRelAngle -/* 801511BC 0014E11C 38 7F 00 34 */ addi r3, r31, 0x34 -/* 801511C0 0014E120 38 81 01 1C */ addi r4, r1, 0x11c -/* 801511C4 0014E124 48 1C 19 7D */ bl __as__12CTransform4fFRC12CTransform4f -/* 801511C8 0014E128 88 1F 00 E4 */ lbz r0, 0xe4(r31) -/* 801511CC 0014E12C 38 60 00 01 */ li r3, 1 -/* 801511D0 0014E130 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 801511D4 0014E134 98 1F 00 E4 */ stb r0, 0xe4(r31) -/* 801511D8 0014E138 88 1F 00 E4 */ lbz r0, 0xe4(r31) -/* 801511DC 0014E13C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 801511E0 0014E140 98 1F 00 E4 */ stb r0, 0xe4(r31) -/* 801511E4 0014E144 88 1F 00 E4 */ lbz r0, 0xe4(r31) -/* 801511E8 0014E148 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d -/* 801511EC 0014E14C 98 1F 00 E4 */ stb r0, 0xe4(r31) -lbl_801511F0: -/* 801511F0 0014E150 3B BD 00 18 */ addi r29, r29, 0x18 -/* 801511F4 0014E154 3B DE 00 01 */ addi r30, r30, 1 -lbl_801511F8: -/* 801511F8 0014E158 80 1B 01 9C */ lwz r0, 0x19c(r27) -/* 801511FC 0014E15C 7C 1E 00 00 */ cmpw r30, r0 -/* 80151200 0014E160 41 80 FF 58 */ blt lbl_80151158 -lbl_80151204: -/* 80151204 0014E164 80 1B 01 A8 */ lwz r0, 0x1a8(r27) -/* 80151208 0014E168 2C 00 00 02 */ cmpwi r0, 2 -/* 8015120C 0014E16C 41 82 04 84 */ beq lbl_80151690 -/* 80151210 0014E170 40 80 00 14 */ bge lbl_80151224 -/* 80151214 0014E174 2C 00 00 00 */ cmpwi r0, 0 -/* 80151218 0014E178 41 82 04 78 */ beq lbl_80151690 -/* 8015121C 0014E17C 40 80 01 CC */ bge lbl_801513E8 -/* 80151220 0014E180 48 00 04 70 */ b lbl_80151690 -lbl_80151224: -/* 80151224 0014E184 2C 00 00 04 */ cmpwi r0, 4 -/* 80151228 0014E188 40 80 04 68 */ bge lbl_80151690 -/* 8015122C 0014E18C C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) -/* 80151230 0014E190 3B C0 00 00 */ li r30, 0 -/* 80151234 0014E194 3B A0 00 00 */ li r29, 0 -/* 80151238 0014E198 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 8015123C 0014E19C 48 00 01 0C */ b lbl_80151348 -lbl_80151240: -/* 80151240 0014E1A0 80 BB 01 A4 */ lwz r5, 0x1a4(r27) -/* 80151244 0014E1A4 7F 83 E3 78 */ mr r3, r28 -/* 80151248 0014E1A8 38 81 00 10 */ addi r4, r1, 0x10 -/* 8015124C 0014E1AC 7C 05 EA 2E */ lhzx r0, r5, r29 -/* 80151250 0014E1B0 B0 01 00 10 */ sth r0, 0x10(r1) -/* 80151254 0014E1B4 4B EF B3 21 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80151258 0014E1B8 7C 64 1B 78 */ mr r4, r3 -/* 8015125C 0014E1BC 38 61 00 30 */ addi r3, r1, 0x30 -/* 80151260 0014E1C0 4B F5 EA 31 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 80151264 0014E1C4 83 E3 00 04 */ lwz r31, 4(r3) -/* 80151268 0014E1C8 28 1F 00 00 */ cmplwi r31, 0 -/* 8015126C 0014E1CC 41 82 00 D4 */ beq lbl_80151340 -/* 80151270 0014E1D0 C1 5F 00 58 */ lfs f10, 0x58(r31) -/* 80151274 0014E1D4 7F E3 FB 78 */ mr r3, r31 -/* 80151278 0014E1D8 C1 1F 00 48 */ lfs f8, 0x48(r31) -/* 8015127C 0014E1DC 38 81 00 A4 */ addi r4, r1, 0xa4 -/* 80151280 0014E1E0 C0 02 9D E0 */ lfs f0, lbl_805ABB00@sda21(r2) -/* 80151284 0014E1E4 C0 5F 00 38 */ lfs f2, 0x38(r31) -/* 80151288 0014E1E8 EC A0 02 32 */ fmuls f5, f0, f8 -/* 8015128C 0014E1EC C1 9F 00 60 */ lfs f12, 0x60(r31) -/* 80151290 0014E1F0 EC 80 02 B2 */ fmuls f4, f0, f10 -/* 80151294 0014E1F4 C1 7F 00 50 */ lfs f11, 0x50(r31) -/* 80151298 0014E1F8 EC 60 00 B2 */ fmuls f3, f0, f2 -/* 8015129C 0014E1FC C0 3F 00 40 */ lfs f1, 0x40(r31) -/* 801512A0 0014E200 EC FF 01 72 */ fmuls f7, f31, f5 -/* 801512A4 0014E204 D0 41 00 74 */ stfs f2, 0x74(r1) -/* 801512A8 0014E208 EC DF 01 32 */ fmuls f6, f31, f4 -/* 801512AC 0014E20C EC 5F 00 F2 */ fmuls f2, f31, f3 -/* 801512B0 0014E210 D1 01 00 78 */ stfs f8, 0x78(r1) -/* 801512B4 0014E214 ED 2B 38 2A */ fadds f9, f11, f7 -/* 801512B8 0014E218 ED 0C 30 2A */ fadds f8, f12, f6 -/* 801512BC 0014E21C D1 41 00 7C */ stfs f10, 0x7c(r1) -/* 801512C0 0014E220 EC 01 10 2A */ fadds f0, f1, f2 -/* 801512C4 0014E224 D0 61 00 80 */ stfs f3, 0x80(r1) -/* 801512C8 0014E228 D0 A1 00 84 */ stfs f5, 0x84(r1) -/* 801512CC 0014E22C D0 81 00 88 */ stfs f4, 0x88(r1) -/* 801512D0 0014E230 D0 41 00 8C */ stfs f2, 0x8c(r1) -/* 801512D4 0014E234 D0 E1 00 90 */ stfs f7, 0x90(r1) -/* 801512D8 0014E238 D0 C1 00 94 */ stfs f6, 0x94(r1) -/* 801512DC 0014E23C D0 21 00 98 */ stfs f1, 0x98(r1) -/* 801512E0 0014E240 D1 61 00 9C */ stfs f11, 0x9c(r1) -/* 801512E4 0014E244 D1 81 00 A0 */ stfs f12, 0xa0(r1) -/* 801512E8 0014E248 D0 01 00 A4 */ stfs f0, 0xa4(r1) -/* 801512EC 0014E24C D1 21 00 A8 */ stfs f9, 0xa8(r1) -/* 801512F0 0014E250 D1 01 00 AC */ stfs f8, 0xac(r1) -/* 801512F4 0014E254 4B F0 1B 99 */ bl SetTranslation__6CActorFRC9CVector3f -/* 801512F8 0014E258 C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 801512FC 0014E25C 38 61 00 68 */ addi r3, r1, 0x68 -/* 80151300 0014E260 C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 80151304 0014E264 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 80151308 0014E268 D0 01 00 68 */ stfs f0, 0x68(r1) -/* 8015130C 0014E26C D0 21 00 6C */ stfs f1, 0x6c(r1) -/* 80151310 0014E270 D0 41 00 70 */ stfs f2, 0x70(r1) -/* 80151314 0014E274 48 1C 35 A5 */ bl Magnitude__9CVector3fCFv -/* 80151318 0014E278 FC 40 08 18 */ frsp f2, f1 -/* 8015131C 0014E27C C0 01 00 24 */ lfs f0, 0x24(r1) -/* 80151320 0014E280 D0 21 00 1C */ stfs f1, 0x1c(r1) -/* 80151324 0014E284 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 80151328 0014E288 40 80 00 0C */ bge lbl_80151334 -/* 8015132C 0014E28C 38 61 00 1C */ addi r3, r1, 0x1c -/* 80151330 0014E290 48 00 00 08 */ b lbl_80151338 -lbl_80151334: -/* 80151334 0014E294 38 61 00 24 */ addi r3, r1, 0x24 -lbl_80151338: -/* 80151338 0014E298 C0 03 00 00 */ lfs f0, 0(r3) -/* 8015133C 0014E29C D0 01 00 24 */ stfs f0, 0x24(r1) -lbl_80151340: -/* 80151340 0014E2A0 3B BD 00 18 */ addi r29, r29, 0x18 -/* 80151344 0014E2A4 3B DE 00 01 */ addi r30, r30, 1 -lbl_80151348: -/* 80151348 0014E2A8 80 1B 01 9C */ lwz r0, 0x19c(r27) -/* 8015134C 0014E2AC 7C 1E 00 00 */ cmpw r30, r0 -/* 80151350 0014E2B0 41 80 FE F0 */ blt lbl_80151240 -/* 80151354 0014E2B4 7F 63 DB 78 */ mr r3, r27 -/* 80151358 0014E2B8 81 9B 00 00 */ lwz r12, 0(r27) -/* 8015135C 0014E2BC 81 8C 00 30 */ lwz r12, 0x30(r12) -/* 80151360 0014E2C0 7D 89 03 A6 */ mtctr r12 -/* 80151364 0014E2C4 4E 80 04 21 */ bctrl -/* 80151368 0014E2C8 C0 21 00 24 */ lfs f1, 0x24(r1) -/* 8015136C 0014E2CC C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) -/* 80151370 0014E2D0 FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 80151374 0014E2D4 41 82 03 1C */ beq lbl_80151690 -/* 80151378 0014E2D8 3B C0 00 00 */ li r30, 0 -/* 8015137C 0014E2DC 3B A0 00 00 */ li r29, 0 -/* 80151380 0014E2E0 48 00 00 40 */ b lbl_801513C0 -lbl_80151384: -/* 80151384 0014E2E4 80 BB 01 A4 */ lwz r5, 0x1a4(r27) -/* 80151388 0014E2E8 7F 83 E3 78 */ mr r3, r28 -/* 8015138C 0014E2EC 38 81 00 0C */ addi r4, r1, 0xc -/* 80151390 0014E2F0 7C 05 EA 2E */ lhzx r0, r5, r29 -/* 80151394 0014E2F4 B0 01 00 0C */ sth r0, 0xc(r1) -/* 80151398 0014E2F8 4B EF B1 DD */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8015139C 0014E2FC 28 03 00 00 */ cmplwi r3, 0 -/* 801513A0 0014E300 41 82 00 18 */ beq lbl_801513B8 -/* 801513A4 0014E304 81 83 00 00 */ lwz r12, 0(r3) -/* 801513A8 0014E308 38 80 00 00 */ li r4, 0 -/* 801513AC 0014E30C 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 801513B0 0014E310 7D 89 03 A6 */ mtctr r12 -/* 801513B4 0014E314 4E 80 04 21 */ bctrl -lbl_801513B8: -/* 801513B8 0014E318 3B BD 00 18 */ addi r29, r29, 0x18 -/* 801513BC 0014E31C 3B DE 00 01 */ addi r30, r30, 1 -lbl_801513C0: -/* 801513C0 0014E320 80 1B 01 9C */ lwz r0, 0x19c(r27) -/* 801513C4 0014E324 7C 1E 00 00 */ cmpw r30, r0 -/* 801513C8 0014E328 41 80 FF BC */ blt lbl_80151384 -/* 801513CC 0014E32C 7F 63 DB 78 */ mr r3, r27 -/* 801513D0 0014E330 38 80 00 00 */ li r4, 0 -/* 801513D4 0014E334 81 9B 00 00 */ lwz r12, 0(r27) -/* 801513D8 0014E338 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 801513DC 0014E33C 7D 89 03 A6 */ mtctr r12 -/* 801513E0 0014E340 4E 80 04 21 */ bctrl -/* 801513E4 0014E344 48 00 02 AC */ b lbl_80151690 -lbl_801513E8: -/* 801513E8 0014E348 88 1B 01 B8 */ lbz r0, 0x1b8(r27) -/* 801513EC 0014E34C C0 62 9D DC */ lfs f3, lbl_805ABAFC@sda21(r2) -/* 801513F0 0014E350 28 00 00 00 */ cmplwi r0, 0 -/* 801513F4 0014E354 C0 3B 00 FC */ lfs f1, 0xfc(r27) -/* 801513F8 0014E358 41 82 00 0C */ beq lbl_80151404 -/* 801513FC 0014E35C C0 02 9D B4 */ lfs f0, lbl_805ABAD4@sda21(r2) -/* 80151400 0014E360 48 00 00 08 */ b lbl_80151408 -lbl_80151404: -/* 80151404 0014E364 C0 02 9D BC */ lfs f0, lbl_805ABADC@sda21(r2) -lbl_80151408: -/* 80151408 0014E368 EC 41 00 32 */ fmuls f2, f1, f0 -/* 8015140C 0014E36C C0 22 9D 9C */ lfs f1, lbl_805ABABC@sda21(r2) -/* 80151410 0014E370 C0 02 9D B4 */ lfs f0, lbl_805ABAD4@sda21(r2) -/* 80151414 0014E374 38 61 00 40 */ addi r3, r1, 0x40 -/* 80151418 0014E378 D0 21 00 40 */ stfs f1, 0x40(r1) -/* 8015141C 0014E37C EC 5F 00 B2 */ fmuls f2, f31, f2 -/* 80151420 0014E380 D0 21 00 44 */ stfs f1, 0x44(r1) -/* 80151424 0014E384 EC 23 00 B2 */ fmuls f1, f3, f2 -/* 80151428 0014E388 D0 01 00 48 */ stfs f0, 0x48(r1) -/* 8015142C 0014E38C D0 21 00 18 */ stfs f1, 0x18(r1) -/* 80151430 0014E390 48 1C 34 C9 */ bl Normalize__9CVector3fFv -/* 80151434 0014E394 38 61 00 4C */ addi r3, r1, 0x4c -/* 80151438 0014E398 38 81 00 40 */ addi r4, r1, 0x40 -/* 8015143C 0014E39C 38 A1 00 18 */ addi r5, r1, 0x18 -/* 80151440 0014E3A0 48 1B FE B5 */ bl AxisAngle__11CQuaternionFRC13CUnitVector3fRC9CRelAngle -/* 80151444 0014E3A4 38 61 00 5C */ addi r3, r1, 0x5c -/* 80151448 0014E3A8 38 81 00 4C */ addi r4, r1, 0x4c -/* 8015144C 0014E3AC 38 BB 01 AC */ addi r5, r27, 0x1ac -/* 80151450 0014E3B0 48 1B FE 15 */ bl Transform__11CQuaternionCFRC9CVector3f -/* 80151454 0014E3B4 C0 01 00 5C */ lfs f0, 0x5c(r1) -/* 80151458 0014E3B8 3B C0 00 01 */ li r30, 1 -/* 8015145C 0014E3BC 3B A0 00 00 */ li r29, 0 -/* 80151460 0014E3C0 3B E0 00 00 */ li r31, 0 -/* 80151464 0014E3C4 D0 1B 01 AC */ stfs f0, 0x1ac(r27) -/* 80151468 0014E3C8 C0 01 00 60 */ lfs f0, 0x60(r1) -/* 8015146C 0014E3CC D0 1B 01 B0 */ stfs f0, 0x1b0(r27) -/* 80151470 0014E3D0 C0 01 00 64 */ lfs f0, 0x64(r1) -/* 80151474 0014E3D4 D0 1B 01 B4 */ stfs f0, 0x1b4(r27) -/* 80151478 0014E3D8 48 00 01 B8 */ b lbl_80151630 -lbl_8015147C: -/* 8015147C 0014E3DC 80 1B 01 A4 */ lwz r0, 0x1a4(r27) -/* 80151480 0014E3E0 7C 60 FA 14 */ add r3, r0, r31 -/* 80151484 0014E3E4 88 03 00 08 */ lbz r0, 8(r3) -/* 80151488 0014E3E8 28 00 00 00 */ cmplwi r0, 0 -/* 8015148C 0014E3EC 40 82 01 9C */ bne lbl_80151628 -/* 80151490 0014E3F0 A0 03 00 00 */ lhz r0, 0(r3) -/* 80151494 0014E3F4 7F 83 E3 78 */ mr r3, r28 -/* 80151498 0014E3F8 38 81 00 08 */ addi r4, r1, 8 -/* 8015149C 0014E3FC B0 01 00 08 */ sth r0, 8(r1) -/* 801514A0 0014E400 4B EF B0 D5 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 801514A4 0014E404 7C 64 1B 78 */ mr r4, r3 -/* 801514A8 0014E408 38 61 00 28 */ addi r3, r1, 0x28 -/* 801514AC 0014E40C 4B F5 E7 E5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 801514B0 0014E410 83 43 00 04 */ lwz r26, 4(r3) -/* 801514B4 0014E414 28 1A 00 00 */ cmplwi r26, 0 -/* 801514B8 0014E418 41 82 01 70 */ beq lbl_80151628 -/* 801514BC 0014E41C C0 7A 00 58 */ lfs f3, 0x58(r26) -/* 801514C0 0014E420 38 61 00 B0 */ addi r3, r1, 0xb0 -/* 801514C4 0014E424 C0 5A 00 48 */ lfs f2, 0x48(r26) -/* 801514C8 0014E428 C0 3A 00 38 */ lfs f1, 0x38(r26) -/* 801514CC 0014E42C C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) -/* 801514D0 0014E430 D0 61 00 B8 */ stfs f3, 0xb8(r1) -/* 801514D4 0014E434 D0 21 00 B0 */ stfs f1, 0xb0(r1) -/* 801514D8 0014E438 D0 41 00 B4 */ stfs f2, 0xb4(r1) -/* 801514DC 0014E43C D0 01 00 B8 */ stfs f0, 0xb8(r1) -/* 801514E0 0014E440 48 1C 34 19 */ bl Normalize__9CVector3fFv -/* 801514E4 0014E444 C0 21 00 B4 */ lfs f1, 0xb4(r1) -/* 801514E8 0014E448 C0 1B 01 B0 */ lfs f0, 0x1b0(r27) -/* 801514EC 0014E44C C0 41 00 B0 */ lfs f2, 0xb0(r1) -/* 801514F0 0014E450 EC 01 00 32 */ fmuls f0, f1, f0 -/* 801514F4 0014E454 C0 3B 01 AC */ lfs f1, 0x1ac(r27) -/* 801514F8 0014E458 C0 81 00 B8 */ lfs f4, 0xb8(r1) -/* 801514FC 0014E45C C0 7B 01 B4 */ lfs f3, 0x1b4(r27) -/* 80151500 0014E460 EC 22 00 7A */ fmadds f1, f2, f1, f0 -/* 80151504 0014E464 C8 02 9D D0 */ lfd f0, lbl_805ABAF0@sda21(r2) -/* 80151508 0014E468 EC 24 08 FA */ fmadds f1, f4, f3, f1 -/* 8015150C 0014E46C FC 40 0A 10 */ fabs f2, f1 -/* 80151510 0014E470 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 80151514 0014E474 40 81 00 14 */ ble lbl_80151528 -/* 80151518 0014E478 C0 02 9D BC */ lfs f0, lbl_805ABADC@sda21(r2) -/* 8015151C 0014E47C C0 42 9D B4 */ lfs f2, lbl_805ABAD4@sda21(r2) -/* 80151520 0014E480 FC 01 00 AE */ fsel f0, f1, f2, f0 -/* 80151524 0014E484 EC 22 00 32 */ fmuls f1, f2, f0 -lbl_80151528: -/* 80151528 0014E488 80 7B 01 A4 */ lwz r3, 0x1a4(r27) -/* 8015152C 0014E48C 38 1F 00 04 */ addi r0, r31, 4 -/* 80151530 0014E490 7C 03 04 2E */ lfsx f0, r3, r0 -/* 80151534 0014E494 FF E0 02 10 */ fabs f31, f0 -/* 80151538 0014E498 48 1C 3E 59 */ bl ArcCosineR__5CMathFf -/* 8015153C 0014E49C FC 40 F8 18 */ frsp f2, f31 -/* 80151540 0014E4A0 C0 7B 00 FC */ lfs f3, 0xfc(r27) -/* 80151544 0014E4A4 C0 02 9D EC */ lfs f0, lbl_805ABB0C@sda21(r2) -/* 80151548 0014E4A8 C0 82 9D E8 */ lfs f4, lbl_805ABB08@sda21(r2) -/* 8015154C 0014E4AC EC 43 10 2A */ fadds f2, f3, f2 -/* 80151550 0014E4B0 C0 62 9D E4 */ lfs f3, lbl_805ABB04@sda21(r2) -/* 80151554 0014E4B4 EC 02 00 24 */ fdivs f0, f2, f0 -/* 80151558 0014E4B8 EC 04 00 32 */ fmuls f0, f4, f0 -/* 8015155C 0014E4BC EC 03 00 32 */ fmuls f0, f3, f0 -/* 80151560 0014E4C0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80151564 0014E4C4 4C 40 13 82 */ cror 2, 0, 2 -/* 80151568 0014E4C8 40 82 00 B8 */ bne lbl_80151620 -/* 8015156C 0014E4CC 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80151570 0014E4D0 3C A0 80 5A */ lis r5, lbl_805A66F4@ha -/* 80151574 0014E4D4 38 83 66 A0 */ addi r4, r3, skZero3f@l -/* 80151578 0014E4D8 38 C5 66 F4 */ addi r6, r5, lbl_805A66F4@l -/* 8015157C 0014E4DC 38 61 00 BC */ addi r3, r1, 0xbc -/* 80151580 0014E4E0 38 BB 01 AC */ addi r5, r27, 0x1ac -/* 80151584 0014E4E4 48 1C 25 8D */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f -/* 80151588 0014E4E8 38 61 00 EC */ addi r3, r1, 0xec -/* 8015158C 0014E4EC 38 81 00 BC */ addi r4, r1, 0xbc -/* 80151590 0014E4F0 48 1C 15 E5 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80151594 0014E4F4 C0 5A 00 60 */ lfs f2, 0x60(r26) -/* 80151598 0014E4F8 38 7A 00 34 */ addi r3, r26, 0x34 -/* 8015159C 0014E4FC C0 3A 00 50 */ lfs f1, 0x50(r26) -/* 801515A0 0014E500 38 81 00 EC */ addi r4, r1, 0xec -/* 801515A4 0014E504 C0 1A 00 40 */ lfs f0, 0x40(r26) -/* 801515A8 0014E508 D0 01 00 F8 */ stfs f0, 0xf8(r1) -/* 801515AC 0014E50C D0 21 01 08 */ stfs f1, 0x108(r1) -/* 801515B0 0014E510 D0 41 01 18 */ stfs f2, 0x118(r1) -/* 801515B4 0014E514 48 1C 15 8D */ bl __as__12CTransform4fFRC12CTransform4f -/* 801515B8 0014E518 88 1A 00 E4 */ lbz r0, 0xe4(r26) -/* 801515BC 0014E51C 38 60 00 01 */ li r3, 1 -/* 801515C0 0014E520 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 801515C4 0014E524 98 1A 00 E4 */ stb r0, 0xe4(r26) -/* 801515C8 0014E528 88 1A 00 E4 */ lbz r0, 0xe4(r26) -/* 801515CC 0014E52C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 801515D0 0014E530 98 1A 00 E4 */ stb r0, 0xe4(r26) -/* 801515D4 0014E534 88 1A 00 E4 */ lbz r0, 0xe4(r26) -/* 801515D8 0014E538 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d -/* 801515DC 0014E53C 98 1A 00 E4 */ stb r0, 0xe4(r26) -/* 801515E0 0014E540 88 1B 01 B8 */ lbz r0, 0x1b8(r27) -/* 801515E4 0014E544 C0 3B 00 FC */ lfs f1, 0xfc(r27) -/* 801515E8 0014E548 28 00 00 00 */ cmplwi r0, 0 -/* 801515EC 0014E54C 41 82 00 0C */ beq lbl_801515F8 -/* 801515F0 0014E550 C0 02 9D B4 */ lfs f0, lbl_805ABAD4@sda21(r2) -/* 801515F4 0014E554 48 00 00 08 */ b lbl_801515FC -lbl_801515F8: -/* 801515F8 0014E558 C0 02 9D BC */ lfs f0, lbl_805ABADC@sda21(r2) -lbl_801515FC: -/* 801515FC 0014E55C EC 01 00 32 */ fmuls f0, f1, f0 -/* 80151600 0014E560 80 BB 01 A4 */ lwz r5, 0x1a4(r27) -/* 80151604 0014E564 38 7F 00 04 */ addi r3, r31, 4 -/* 80151608 0014E568 38 1F 00 08 */ addi r0, r31, 8 -/* 8015160C 0014E56C 38 80 00 01 */ li r4, 1 -/* 80151610 0014E570 7C 05 1D 2E */ stfsx f0, r5, r3 -/* 80151614 0014E574 80 7B 01 A4 */ lwz r3, 0x1a4(r27) -/* 80151618 0014E578 7C 83 01 AE */ stbx r4, r3, r0 -/* 8015161C 0014E57C 48 00 00 0C */ b lbl_80151628 -lbl_80151620: -/* 80151620 0014E580 3B C0 00 00 */ li r30, 0 -/* 80151624 0014E584 48 00 00 18 */ b lbl_8015163C -lbl_80151628: -/* 80151628 0014E588 3B FF 00 18 */ addi r31, r31, 0x18 -/* 8015162C 0014E58C 3B BD 00 01 */ addi r29, r29, 1 -lbl_80151630: -/* 80151630 0014E590 80 1B 01 9C */ lwz r0, 0x19c(r27) -/* 80151634 0014E594 7C 1D 00 00 */ cmpw r29, r0 -/* 80151638 0014E598 41 80 FE 44 */ blt lbl_8015147C -lbl_8015163C: -/* 8015163C 0014E59C 57 C0 06 3F */ clrlwi. r0, r30, 0x18 -/* 80151640 0014E5A0 41 82 00 50 */ beq lbl_80151690 -/* 80151644 0014E5A4 7F 63 DB 78 */ mr r3, r27 -/* 80151648 0014E5A8 7F 85 E3 78 */ mr r5, r28 -/* 8015164C 0014E5AC 38 80 00 07 */ li r4, 7 -/* 80151650 0014E5B0 38 C0 FF FF */ li r6, -1 -/* 80151654 0014E5B4 4B EF FA 6D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 80151658 0014E5B8 38 00 00 02 */ li r0, 2 -/* 8015165C 0014E5BC 38 A0 00 00 */ li r5, 0 -/* 80151660 0014E5C0 90 1B 01 A8 */ stw r0, 0x1a8(r27) -/* 80151664 0014E5C4 7C A4 2B 78 */ mr r4, r5 -/* 80151668 0014E5C8 38 C0 00 00 */ li r6, 0 -/* 8015166C 0014E5CC 48 00 00 18 */ b lbl_80151684 -lbl_80151670: -/* 80151670 0014E5D0 80 7B 01 A4 */ lwz r3, 0x1a4(r27) -/* 80151674 0014E5D4 38 05 00 08 */ addi r0, r5, 8 -/* 80151678 0014E5D8 38 A5 00 18 */ addi r5, r5, 0x18 -/* 8015167C 0014E5DC 38 C6 00 01 */ addi r6, r6, 1 -/* 80151680 0014E5E0 7C 83 01 AE */ stbx r4, r3, r0 -lbl_80151684: -/* 80151684 0014E5E4 80 1B 01 9C */ lwz r0, 0x19c(r27) -/* 80151688 0014E5E8 7C 06 00 00 */ cmpw r6, r0 -/* 8015168C 0014E5EC 41 80 FF E4 */ blt lbl_80151670 -lbl_80151690: -/* 80151690 0014E5F0 E3 E1 01 78 */ psq_l f31, 376(r1), 0, qr0 -/* 80151694 0014E5F4 CB E1 01 70 */ lfd f31, 0x170(r1) -/* 80151698 0014E5F8 BB 41 01 58 */ lmw r26, 0x158(r1) -/* 8015169C 0014E5FC 80 01 01 84 */ lwz r0, 0x184(r1) -/* 801516A0 0014E600 7C 08 03 A6 */ mtlr r0 -/* 801516A4 0014E604 38 21 01 80 */ addi r1, r1, 0x180 -/* 801516A8 0014E608 4E 80 00 20 */ blr - -.global ThinkSaveStation__22CScriptSpecialFunctionFfR13CStateManager -ThinkSaveStation__22CScriptSpecialFunctionFfR13CStateManager: -/* 801516AC 0014E60C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801516B0 0014E610 7C 08 02 A6 */ mflr r0 -/* 801516B4 0014E614 90 01 00 14 */ stw r0, 0x14(r1) -/* 801516B8 0014E618 88 A3 01 E5 */ lbz r5, 0x1e5(r3) -/* 801516BC 0014E61C 54 A0 CF FF */ rlwinm. r0, r5, 0x19, 0x1f, 0x1f -/* 801516C0 0014E620 41 82 00 4C */ beq lbl_8015170C -/* 801516C4 0014E624 80 04 0F 90 */ lwz r0, 0xf90(r4) -/* 801516C8 0014E628 2C 00 00 04 */ cmpwi r0, 4 -/* 801516CC 0014E62C 41 82 00 40 */ beq lbl_8015170C -/* 801516D0 0014E630 38 00 00 00 */ li r0, 0 -/* 801516D4 0014E634 50 05 3E 30 */ rlwimi r5, r0, 7, 0x18, 0x18 -/* 801516D8 0014E638 98 A3 01 E5 */ stb r5, 0x1e5(r3) -/* 801516DC 0014E63C 88 04 0F 94 */ lbz r0, 0xf94(r4) -/* 801516E0 0014E640 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f -/* 801516E4 0014E644 41 82 00 18 */ beq lbl_801516FC -/* 801516E8 0014E648 7C 85 23 78 */ mr r5, r4 -/* 801516EC 0014E64C 38 80 00 07 */ li r4, 7 -/* 801516F0 0014E650 38 C0 FF FF */ li r6, -1 -/* 801516F4 0014E654 4B EF F9 CD */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 801516F8 0014E658 48 00 00 14 */ b lbl_8015170C -lbl_801516FC: -/* 801516FC 0014E65C 7C 85 23 78 */ mr r5, r4 -/* 80151700 0014E660 38 80 00 09 */ li r4, 9 -/* 80151704 0014E664 38 C0 FF FF */ li r6, -1 -/* 80151708 0014E668 4B EF F9 B9 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -lbl_8015170C: -/* 8015170C 0014E66C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80151710 0014E670 7C 08 03 A6 */ mtlr r0 -/* 80151714 0014E674 38 21 00 10 */ addi r1, r1, 0x10 -/* 80151718 0014E678 4E 80 00 20 */ blr - -.global RingScramble__22CScriptSpecialFunctionFR13CStateManager -RingScramble__22CScriptSpecialFunctionFR13CStateManager: -/* 8015171C 0014E67C 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80151720 0014E680 7C 08 02 A6 */ mflr r0 -/* 80151724 0014E684 90 01 00 34 */ stw r0, 0x34(r1) -/* 80151728 0014E688 DB E1 00 20 */ stfd f31, 0x20(r1) -/* 8015172C 0014E68C F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 -/* 80151730 0014E690 BF 41 00 08 */ stmw r26, 8(r1) -/* 80151734 0014E694 7C 9B 23 78 */ mr r27, r4 -/* 80151738 0014E698 7C 7A 1B 78 */ mr r26, r3 -/* 8015173C 0014E69C 7F 65 DB 78 */ mr r5, r27 -/* 80151740 0014E6A0 38 80 00 09 */ li r4, 9 -/* 80151744 0014E6A4 38 C0 FF FF */ li r6, -1 -/* 80151748 0014E6A8 4B EF F9 79 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 8015174C 0014E6AC 38 00 00 00 */ li r0, 0 -/* 80151750 0014E6B0 90 1A 01 A8 */ stw r0, 0x1a8(r26) -/* 80151754 0014E6B4 88 1A 01 B8 */ lbz r0, 0x1b8(r26) -/* 80151758 0014E6B8 7C 00 00 34 */ cntlzw r0, r0 -/* 8015175C 0014E6BC 54 00 D9 7E */ srwi r0, r0, 5 -/* 80151760 0014E6C0 98 1A 01 B8 */ stb r0, 0x1b8(r26) -/* 80151764 0014E6C4 88 1A 01 B8 */ lbz r0, 0x1b8(r26) -/* 80151768 0014E6C8 28 00 00 00 */ cmplwi r0, 0 -/* 8015176C 0014E6CC 41 82 00 0C */ beq lbl_80151778 -/* 80151770 0014E6D0 C3 E2 9D B4 */ lfs f31, lbl_805ABAD4@sda21(r2) -/* 80151774 0014E6D4 48 00 00 08 */ b lbl_8015177C -lbl_80151778: -/* 80151778 0014E6D8 C3 E2 9D BC */ lfs f31, lbl_805ABADC@sda21(r2) -lbl_8015177C: -/* 8015177C 0014E6DC 3B A0 00 00 */ li r29, 0 -/* 80151780 0014E6E0 3B 80 00 00 */ li r28, 0 -/* 80151784 0014E6E4 7F BF EB 78 */ mr r31, r29 -/* 80151788 0014E6E8 48 00 00 3C */ b lbl_801517C4 -lbl_8015178C: -/* 8015178C 0014E6EC 80 1A 01 A4 */ lwz r0, 0x1a4(r26) -/* 80151790 0014E6F0 80 7B 09 00 */ lwz r3, 0x900(r27) -/* 80151794 0014E6F4 C0 3A 01 00 */ lfs f1, 0x100(r26) -/* 80151798 0014E6F8 7F C0 EA 14 */ add r30, r0, r29 -/* 8015179C 0014E6FC C0 5A 01 04 */ lfs f2, 0x104(r26) -/* 801517A0 0014E700 48 1C 0D A5 */ bl Range__9CRandom16Fff -/* 801517A4 0014E704 EC 1F 00 72 */ fmuls f0, f31, f1 -/* 801517A8 0014E708 38 1D 00 08 */ addi r0, r29, 8 -/* 801517AC 0014E70C FF E0 F8 50 */ fneg f31, f31 -/* 801517B0 0014E710 3B 9C 00 01 */ addi r28, r28, 1 -/* 801517B4 0014E714 3B BD 00 18 */ addi r29, r29, 0x18 -/* 801517B8 0014E718 D0 1E 00 04 */ stfs f0, 4(r30) -/* 801517BC 0014E71C 80 7A 01 A4 */ lwz r3, 0x1a4(r26) -/* 801517C0 0014E720 7F E3 01 AE */ stbx r31, r3, r0 -lbl_801517C4: -/* 801517C4 0014E724 80 1A 01 9C */ lwz r0, 0x19c(r26) -/* 801517C8 0014E728 7C 1C 00 00 */ cmpw r28, r0 -/* 801517CC 0014E72C 41 80 FF C0 */ blt lbl_8015178C -/* 801517D0 0014E730 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 -/* 801517D4 0014E734 CB E1 00 20 */ lfd f31, 0x20(r1) -/* 801517D8 0014E738 BB 41 00 08 */ lmw r26, 8(r1) -/* 801517DC 0014E73C 80 01 00 34 */ lwz r0, 0x34(r1) -/* 801517E0 0014E740 7C 08 03 A6 */ mtlr r0 -/* 801517E4 0014E744 38 21 00 30 */ addi r1, r1, 0x30 -/* 801517E8 0014E748 4E 80 00 20 */ blr - -.global Accept__22CScriptSpecialFunctionFR8IVisitor -Accept__22CScriptSpecialFunctionFR8IVisitor: -/* 801517EC 0014E74C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801517F0 0014E750 7C 08 02 A6 */ mflr r0 -/* 801517F4 0014E754 90 01 00 14 */ stw r0, 0x14(r1) -/* 801517F8 0014E758 7C 60 1B 78 */ mr r0, r3 -/* 801517FC 0014E75C 7C 83 23 78 */ mr r3, r4 -/* 80151800 0014E760 81 84 00 00 */ lwz r12, 0(r4) -/* 80151804 0014E764 7C 04 03 78 */ mr r4, r0 -/* 80151808 0014E768 81 8C 00 B4 */ lwz r12, 0xb4(r12) -/* 8015180C 0014E76C 7D 89 03 A6 */ mtctr r12 -/* 80151810 0014E770 4E 80 04 21 */ bctrl -/* 80151814 0014E774 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80151818 0014E778 7C 08 03 A6 */ mtlr r0 -/* 8015181C 0014E77C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80151820 0014E780 4E 80 00 20 */ blr - -.global SkipCinematic__22CScriptSpecialFunctionFR13CStateManager -SkipCinematic__22CScriptSpecialFunctionFR13CStateManager: -/* 80151824 0014E784 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80151828 0014E788 7C 08 02 A6 */ mflr r0 -/* 8015182C 0014E78C 38 C0 FF FF */ li r6, -1 -/* 80151830 0014E790 90 01 00 24 */ stw r0, 0x24(r1) -/* 80151834 0014E794 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80151838 0014E798 7C 9F 23 78 */ mr r31, r4 -/* 8015183C 0014E79C 38 80 00 09 */ li r4, 9 -/* 80151840 0014E7A0 7F E5 FB 78 */ mr r5, r31 -/* 80151844 0014E7A4 4B EF F8 7D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 80151848 0014E7A8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8015184C 0014E7AC B0 01 00 08 */ sth r0, 8(r1) -/* 80151850 0014E7B0 B0 1F 0F 38 */ sth r0, 0xf38(r31) -/* 80151854 0014E7B4 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80151858 0014E7B8 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8015185C 0014E7BC 7C 08 03 A6 */ mtlr r0 -/* 80151860 0014E7C0 38 21 00 20 */ addi r1, r1, 0x20 -/* 80151864 0014E7C4 4E 80 00 20 */ blr - -.global ShouldSkipCinematic__22CScriptSpecialFunctionFR13CStateManager -ShouldSkipCinematic__22CScriptSpecialFunctionFR13CStateManager: -/* 80151868 0014E7C8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8015186C 0014E7CC 7C 08 02 A6 */ mflr r0 -/* 80151870 0014E7D0 90 01 00 24 */ stw r0, 0x24(r1) -/* 80151874 0014E7D4 80 A4 08 50 */ lwz r5, 0x850(r4) -/* 80151878 0014E7D8 38 81 00 10 */ addi r4, r1, 0x10 -/* 8015187C 0014E7DC 80 03 00 0C */ lwz r0, 0xc(r3) -/* 80151880 0014E7E0 80 A5 00 08 */ lwz r5, 8(r5) -/* 80151884 0014E7E4 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) -/* 80151888 0014E7E8 90 A1 00 08 */ stw r5, 8(r1) -/* 8015188C 0014E7EC 38 63 00 A8 */ addi r3, r3, 0xa8 -/* 80151890 0014E7F0 90 01 00 0C */ stw r0, 0xc(r1) -/* 80151894 0014E7F4 90 A1 00 10 */ stw r5, 0x10(r1) -/* 80151898 0014E7F8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015189C 0014E7FC 48 08 3C 8D */ bl "GetCinematicState__14CSystemOptionsFRCQ24rstl19pair" -/* 801518A0 0014E800 80 01 00 24 */ lwz r0, 0x24(r1) -/* 801518A4 0014E804 7C 08 03 A6 */ mtlr r0 -/* 801518A8 0014E808 38 21 00 20 */ addi r1, r1, 0x20 -/* 801518AC 0014E80C 4E 80 00 20 */ blr - -.global AcceptScriptMsg__22CScriptSpecialFunctionF20EScriptObjectMessage9TUniqueIdR13CStateManager -AcceptScriptMsg__22CScriptSpecialFunctionF20EScriptObjectMessage9TUniqueIdR13CStateManager: -/* 801518B0 0014E810 94 21 FE 40 */ stwu r1, -0x1c0(r1) -/* 801518B4 0014E814 7C 08 02 A6 */ mflr r0 -/* 801518B8 0014E818 90 01 01 C4 */ stw r0, 0x1c4(r1) -/* 801518BC 0014E81C DB E1 01 B0 */ stfd f31, 0x1b0(r1) -/* 801518C0 0014E820 F3 E1 01 B8 */ psq_st f31, 440(r1), 0, qr0 -/* 801518C4 0014E824 DB C1 01 A0 */ stfd f30, 0x1a0(r1) -/* 801518C8 0014E828 F3 C1 01 A8 */ psq_st f30, 424(r1), 0, qr0 -/* 801518CC 0014E82C DB A1 01 90 */ stfd f29, 0x190(r1) -/* 801518D0 0014E830 F3 A1 01 98 */ psq_st f29, 408(r1), 0, qr0 -/* 801518D4 0014E834 BF 41 01 78 */ stmw r26, 0x178(r1) -/* 801518D8 0014E838 88 03 00 30 */ lbz r0, 0x30(r3) -/* 801518DC 0014E83C 7C 7F 1B 78 */ mr r31, r3 -/* 801518E0 0014E840 7C 9C 23 78 */ mr r28, r4 -/* 801518E4 0014E844 7C BB 2B 78 */ mr r27, r5 -/* 801518E8 0014E848 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 801518EC 0014E84C 7C DE 33 78 */ mr r30, r6 -/* 801518F0 0014E850 41 82 00 E4 */ beq lbl_801519D4 -/* 801518F4 0014E854 2C 1C 00 04 */ cmpwi r28, 4 -/* 801518F8 0014E858 40 82 00 DC */ bne lbl_801519D4 -/* 801518FC 0014E85C 80 1F 00 E8 */ lwz r0, 0xe8(r31) -/* 80151900 0014E860 2C 00 00 18 */ cmpwi r0, 0x18 -/* 80151904 0014E864 40 82 00 D0 */ bne lbl_801519D4 -/* 80151908 0014E868 38 61 00 C4 */ addi r3, r1, 0xc4 -/* 8015190C 0014E86C 38 80 00 00 */ li r4, 0 -/* 80151910 0014E870 38 A0 00 00 */ li r5, 0 -/* 80151914 0014E874 48 1C 2A 39 */ bl __ct__9CVector2iFii -/* 80151918 0014E878 7C 7D 1B 78 */ mr r29, r3 -/* 8015191C 0014E87C 38 61 00 CC */ addi r3, r1, 0xcc -/* 80151920 0014E880 38 80 00 00 */ li r4, 0 -/* 80151924 0014E884 38 A0 00 00 */ li r5, 0 -/* 80151928 0014E888 48 1C 2A 25 */ bl __ct__9CVector2iFii -/* 8015192C 0014E88C 7C 65 1B 78 */ mr r5, r3 -/* 80151930 0014E890 7F C3 F3 78 */ mr r3, r30 -/* 80151934 0014E894 7F A6 EB 78 */ mr r6, r29 -/* 80151938 0014E898 38 80 FF FF */ li r4, -1 -/* 8015193C 0014E89C 4B EF 26 CD */ bl sub_80044008 -/* 80151940 0014E8A0 38 7F 01 E8 */ addi r3, r31, 0x1e8 -/* 80151944 0014E8A4 38 81 00 FC */ addi r4, r1, 0xfc -/* 80151948 0014E8A8 38 00 00 00 */ li r0, 0 -/* 8015194C 0014E8AC 7C 03 20 40 */ cmplw r3, r4 -/* 80151950 0014E8B0 98 01 01 04 */ stb r0, 0x104(r1) -/* 80151954 0014E8B4 41 82 00 54 */ beq lbl_801519A8 -/* 80151958 0014E8B8 28 00 00 00 */ cmplwi r0, 0 -/* 8015195C 0014E8BC 41 82 00 30 */ beq lbl_8015198C -/* 80151960 0014E8C0 88 1F 01 F0 */ lbz r0, 0x1f0(r31) -/* 80151964 0014E8C4 28 00 00 00 */ cmplwi r0, 0 -/* 80151968 0014E8C8 40 82 00 1C */ bne lbl_80151984 -/* 8015196C 0014E8CC 34 7F 01 E8 */ addic. r3, r31, 0x1e8 -/* 80151970 0014E8D0 41 82 00 08 */ beq lbl_80151978 -/* 80151974 0014E8D4 48 1E F5 35 */ bl __ct__6CTokenFRC6CToken -lbl_80151978: -/* 80151978 0014E8D8 38 00 00 01 */ li r0, 1 -/* 8015197C 0014E8DC 98 1F 01 F0 */ stb r0, 0x1f0(r31) -/* 80151980 0014E8E0 48 00 00 28 */ b lbl_801519A8 -lbl_80151984: -/* 80151984 0014E8E4 48 1E F3 41 */ bl __as__6CTokenFRC6CToken -/* 80151988 0014E8E8 48 00 00 20 */ b lbl_801519A8 -lbl_8015198C: -/* 8015198C 0014E8EC 88 1F 01 F0 */ lbz r0, 0x1f0(r31) -/* 80151990 0014E8F0 28 00 00 00 */ cmplwi r0, 0 -/* 80151994 0014E8F4 41 82 00 0C */ beq lbl_801519A0 -/* 80151998 0014E8F8 38 80 FF FF */ li r4, -1 -/* 8015199C 0014E8FC 48 1E F4 A5 */ bl __dt__6CTokenFv -lbl_801519A0: -/* 801519A0 0014E900 38 00 00 00 */ li r0, 0 -/* 801519A4 0014E904 98 1F 01 F0 */ stb r0, 0x1f0(r31) -lbl_801519A8: -/* 801519A8 0014E908 88 01 01 04 */ lbz r0, 0x104(r1) -/* 801519AC 0014E90C 28 00 00 00 */ cmplwi r0, 0 -/* 801519B0 0014E910 41 82 00 10 */ beq lbl_801519C0 -/* 801519B4 0014E914 38 61 00 FC */ addi r3, r1, 0xfc -/* 801519B8 0014E918 38 80 FF FF */ li r4, -1 -/* 801519BC 0014E91C 48 1E F4 85 */ bl __dt__6CTokenFv -lbl_801519C0: -/* 801519C0 0014E920 38 60 00 00 */ li r3, 0 -/* 801519C4 0014E924 98 61 01 04 */ stb r3, 0x104(r1) -/* 801519C8 0014E928 88 1F 01 E5 */ lbz r0, 0x1e5(r31) -/* 801519CC 0014E92C 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 801519D0 0014E930 98 1F 01 E5 */ stb r0, 0x1e5(r31) -lbl_801519D4: -/* 801519D4 0014E934 A0 1B 00 00 */ lhz r0, 0(r27) -/* 801519D8 0014E938 7F E3 FB 78 */ mr r3, r31 -/* 801519DC 0014E93C 7F 84 E3 78 */ mr r4, r28 -/* 801519E0 0014E940 7F C6 F3 78 */ mr r6, r30 -/* 801519E4 0014E944 B0 01 00 34 */ sth r0, 0x34(r1) -/* 801519E8 0014E948 38 A1 00 34 */ addi r5, r1, 0x34 -/* 801519EC 0014E94C 4B F0 1C 29 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager -/* 801519F0 0014E950 80 1F 00 E8 */ lwz r0, 0xe8(r31) -/* 801519F4 0014E954 2C 00 00 04 */ cmpwi r0, 4 -/* 801519F8 0014E958 40 82 00 1C */ bne lbl_80151A14 -/* 801519FC 0014E95C 2C 1C 00 23 */ cmpwi r28, 0x23 -/* 80151A00 0014E960 40 82 00 14 */ bne lbl_80151A14 -/* 80151A04 0014E964 7F E3 FB 78 */ mr r3, r31 -/* 80151A08 0014E968 7F C5 F3 78 */ mr r5, r30 -/* 80151A0C 0014E96C 38 80 00 28 */ li r4, 0x28 -/* 80151A10 0014E970 4B F0 29 41 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager -lbl_80151A14: -/* 80151A14 0014E974 88 1F 00 30 */ lbz r0, 0x30(r31) -/* 80151A18 0014E978 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80151A1C 0014E97C 41 82 0E 84 */ beq lbl_801528A0 -/* 80151A20 0014E980 80 1F 00 E8 */ lwz r0, 0xe8(r31) -/* 80151A24 0014E984 28 00 00 32 */ cmplwi r0, 0x32 -/* 80151A28 0014E988 41 81 0E 78 */ bgt lbl_801528A0 -/* 80151A2C 0014E98C 3C 60 80 3E */ lis r3, lbl_803E2BD4@ha -/* 80151A30 0014E990 54 00 10 3A */ slwi r0, r0, 2 -/* 80151A34 0014E994 38 63 2B D4 */ addi r3, r3, lbl_803E2BD4@l -/* 80151A38 0014E998 7C 03 00 2E */ lwzx r0, r3, r0 -/* 80151A3C 0014E99C 7C 09 03 A6 */ mtctr r0 -/* 80151A40 0014E9A0 4E 80 04 20 */ bctr -/* 80151A44 0014E9A4 2C 1C 00 13 */ cmpwi r28, 0x13 -/* 80151A48 0014E9A8 40 82 0E 58 */ bne lbl_801528A0 -/* 80151A4C 0014E9AC 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 80151A50 0014E9B0 C0 3F 00 FC */ lfs f1, 0xfc(r31) -/* 80151A54 0014E9B4 C0 42 9D 9C */ lfs f2, lbl_805ABABC@sda21(r2) -/* 80151A58 0014E9B8 C0 62 9D A4 */ lfs f3, lbl_805ABAC4@sda21(r2) -/* 80151A5C 0014E9BC 4B EC 16 11 */ bl SetHudDisable__7CPlayerFfff -/* 80151A60 0014E9C0 48 00 0E 40 */ b lbl_801528A0 -/* 80151A64 0014E9C4 2C 1C 00 13 */ cmpwi r28, 0x13 -/* 80151A68 0014E9C8 40 82 0E 38 */ bne lbl_801528A0 -/* 80151A6C 0014E9CC C0 3F 00 FC */ lfs f1, 0xfc(r31) -/* 80151A70 0014E9D0 C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) -/* 80151A74 0014E9D4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80151A78 0014E9D8 4C 41 13 82 */ cror 2, 1, 2 -/* 80151A7C 0014E9DC 40 82 0E 24 */ bne lbl_801528A0 -/* 80151A80 0014E9E0 7F C3 F3 78 */ mr r3, r30 -/* 80151A84 0014E9E4 4B EF 35 F9 */ bl ResetEscapeSequenceTimer__13CStateManagerFf -/* 80151A88 0014E9E8 48 00 0E 18 */ b lbl_801528A0 -/* 80151A8C 0014E9EC 2C 1C 00 0F */ cmpwi r28, 0xf -/* 80151A90 0014E9F0 41 82 00 48 */ beq lbl_80151AD8 -/* 80151A94 0014E9F4 40 80 00 10 */ bge lbl_80151AA4 -/* 80151A98 0014E9F8 2C 1C 00 04 */ cmpwi r28, 4 -/* 80151A9C 0014E9FC 41 82 00 50 */ beq lbl_80151AEC -/* 80151AA0 0014EA00 48 00 0E 00 */ b lbl_801528A0 -lbl_80151AA4: -/* 80151AA4 0014EA04 2C 1C 00 14 */ cmpwi r28, 0x14 -/* 80151AA8 0014EA08 41 82 00 08 */ beq lbl_80151AB0 -/* 80151AAC 0014EA0C 48 00 0D F4 */ b lbl_801528A0 -lbl_80151AB0: -/* 80151AB0 0014EA10 88 1F 01 E4 */ lbz r0, 0x1e4(r31) -/* 80151AB4 0014EA14 38 60 00 01 */ li r3, 1 -/* 80151AB8 0014EA18 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 80151ABC 0014EA1C 98 1F 01 E4 */ stb r0, 0x1e4(r31) -/* 80151AC0 0014EA20 83 7E 08 4C */ lwz r27, 0x84c(r30) -/* 80151AC4 0014EA24 4B EC 9A 71 */ bl Identity__10CAxisAngleFv -/* 80151AC8 0014EA28 7C 64 1B 78 */ mr r4, r3 -/* 80151ACC 0014EA2C 7F 63 DB 78 */ mr r3, r27 -/* 80151AD0 0014EA30 4B FC 91 2D */ bl SetAngularVelocityWR__13CPhysicsActorFRC10CAxisAngle -/* 80151AD4 0014EA34 48 00 0D CC */ b lbl_801528A0 -lbl_80151AD8: -/* 80151AD8 0014EA38 88 1F 01 E4 */ lbz r0, 0x1e4(r31) -/* 80151ADC 0014EA3C 38 60 00 00 */ li r3, 0 -/* 80151AE0 0014EA40 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 80151AE4 0014EA44 98 1F 01 E4 */ stb r0, 0x1e4(r31) -/* 80151AE8 0014EA48 48 00 0D B8 */ b lbl_801528A0 -lbl_80151AEC: -/* 80151AEC 0014EA4C 7F E3 FB 78 */ mr r3, r31 -/* 80151AF0 0014EA50 38 9F 01 78 */ addi r4, r31, 0x178 -/* 80151AF4 0014EA54 4B FF D8 B1 */ bl sub_8014f3a4 -/* 80151AF8 0014EA58 48 00 0D A8 */ b lbl_801528A0 -/* 80151AFC 0014EA5C 2C 1C 00 07 */ cmpwi r28, 7 -/* 80151B00 0014EA60 40 82 00 64 */ bne lbl_80151B64 -/* 80151B04 0014EA64 C0 42 9D B4 */ lfs f2, lbl_805ABAD4@sda21(r2) -/* 80151B08 0014EA68 C0 3F 01 6C */ lfs f1, 0x16c(r31) -/* 80151B0C 0014EA6C C0 0D 8C 54 */ lfs f0, lbl_805A7814@sda21(r13) -/* 80151B10 0014EA70 EC 22 08 2A */ fadds f1, f2, f1 -/* 80151B14 0014EA74 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 80151B18 0014EA78 D0 21 00 64 */ stfs f1, 0x64(r1) -/* 80151B1C 0014EA7C 40 80 00 0C */ bge lbl_80151B28 -/* 80151B20 0014EA80 38 6D 8C 54 */ addi r3, r13, lbl_805A7814@sda21 -/* 80151B24 0014EA84 48 00 00 08 */ b lbl_80151B2C -lbl_80151B28: -/* 80151B28 0014EA88 38 61 00 64 */ addi r3, r1, 0x64 -lbl_80151B2C: -/* 80151B2C 0014EA8C C0 2D 8C 58 */ lfs f1, lbl_805A7818@sda21(r13) -/* 80151B30 0014EA90 C0 03 00 00 */ lfs f0, 0(r3) -/* 80151B34 0014EA94 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80151B38 0014EA98 40 80 00 08 */ bge lbl_80151B40 -/* 80151B3C 0014EA9C 48 00 00 08 */ b lbl_80151B44 -lbl_80151B40: -/* 80151B40 0014EAA0 38 6D 8C 58 */ addi r3, r13, lbl_805A7818@sda21 -lbl_80151B44: -/* 80151B44 0014EAA4 C0 03 00 00 */ lfs f0, 0(r3) -/* 80151B48 0014EAA8 7F E3 FB 78 */ mr r3, r31 -/* 80151B4C 0014EAAC 7F C5 F3 78 */ mr r5, r30 -/* 80151B50 0014EAB0 38 80 00 12 */ li r4, 0x12 -/* 80151B54 0014EAB4 D0 1F 01 6C */ stfs f0, 0x16c(r31) -/* 80151B58 0014EAB8 38 C0 FF FF */ li r6, -1 -/* 80151B5C 0014EABC 4B EF F5 65 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 80151B60 0014EAC0 48 00 0D 40 */ b lbl_801528A0 -lbl_80151B64: -/* 80151B64 0014EAC4 2C 1C 00 0C */ cmpwi r28, 0xc -/* 80151B68 0014EAC8 40 82 00 24 */ bne lbl_80151B8C -/* 80151B6C 0014EACC C0 1F 01 04 */ lfs f0, 0x104(r31) -/* 80151B70 0014EAD0 7F E3 FB 78 */ mr r3, r31 -/* 80151B74 0014EAD4 7F C5 F3 78 */ mr r5, r30 -/* 80151B78 0014EAD8 38 80 00 12 */ li r4, 0x12 -/* 80151B7C 0014EADC D0 1F 01 6C */ stfs f0, 0x16c(r31) -/* 80151B80 0014EAE0 38 C0 FF FF */ li r6, -1 -/* 80151B84 0014EAE4 4B EF F5 3D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 80151B88 0014EAE8 48 00 0D 18 */ b lbl_801528A0 -lbl_80151B8C: -/* 80151B8C 0014EAEC 2C 1C 00 0D */ cmpwi r28, 0xd -/* 80151B90 0014EAF0 40 82 0D 10 */ bne lbl_801528A0 -/* 80151B94 0014EAF4 C0 22 9D F0 */ lfs f1, lbl_805ABB10@sda21(r2) -/* 80151B98 0014EAF8 C0 1F 01 04 */ lfs f0, 0x104(r31) -/* 80151B9C 0014EAFC EC 01 00 32 */ fmuls f0, f1, f0 -/* 80151BA0 0014EB00 D0 1F 01 6C */ stfs f0, 0x16c(r31) -/* 80151BA4 0014EB04 48 00 0C FC */ b lbl_801528A0 -/* 80151BA8 0014EB08 2C 1C 00 13 */ cmpwi r28, 0x13 -/* 80151BAC 0014EB0C 40 82 0C F4 */ bne lbl_801528A0 -/* 80151BB0 0014EB10 80 7E 08 C0 */ lwz r3, 0x8c0(r30) -/* 80151BB4 0014EB14 38 00 00 01 */ li r0, 1 -/* 80151BB8 0014EB18 80 63 00 00 */ lwz r3, 0(r3) -/* 80151BBC 0014EB1C 98 03 00 38 */ stb r0, 0x38(r3) -/* 80151BC0 0014EB20 80 7E 08 50 */ lwz r3, 0x850(r30) -/* 80151BC4 0014EB24 4B F0 5A D9 */ bl GetMapWorld__6CWorldCFv -/* 80151BC8 0014EB28 80 9E 08 C0 */ lwz r4, 0x8c0(r30) -/* 80151BCC 0014EB2C 80 BE 08 50 */ lwz r5, 0x850(r30) -/* 80151BD0 0014EB30 80 84 00 00 */ lwz r4, 0(r4) -/* 80151BD4 0014EB34 4B F4 DC 89 */ bl RecalculateWorldSphere__9CMapWorldCFRC13CMapWorldInfoRC6IWorld -/* 80151BD8 0014EB38 7F C3 F3 78 */ mr r3, r30 -/* 80151BDC 0014EB3C 38 80 00 01 */ li r4, 1 -/* 80151BE0 0014EB40 4B EF 2C 81 */ bl DeferStateTransition__13CStateManagerF23EStateManagerTransition -/* 80151BE4 0014EB44 48 00 0C BC */ b lbl_801528A0 -/* 80151BE8 0014EB48 2C 1C 00 13 */ cmpwi r28, 0x13 -/* 80151BEC 0014EB4C 40 82 0C B4 */ bne lbl_801528A0 -/* 80151BF0 0014EB50 80 7E 08 B8 */ lwz r3, 0x8b8(r30) -/* 80151BF4 0014EB54 38 80 00 04 */ li r4, 4 -/* 80151BF8 0014EB58 83 63 00 00 */ lwz r27, 0(r3) -/* 80151BFC 0014EB5C 7F 63 DB 78 */ mr r3, r27 -/* 80151C00 0014EB60 4B F3 FE F5 */ bl GetItemCapacity__12CPlayerStateCFQ212CPlayerState9EItemType -/* 80151C04 0014EB64 7C 65 1B 78 */ mr r5, r3 -/* 80151C08 0014EB68 7F 63 DB 78 */ mr r3, r27 -/* 80151C0C 0014EB6C 38 80 00 04 */ li r4, 4 -/* 80151C10 0014EB70 4B F4 00 F1 */ bl ResetAndIncrPickUp__12CPlayerStateFQ212CPlayerState9EItemTypei -/* 80151C14 0014EB74 48 00 0C 8C */ b lbl_801528A0 -/* 80151C18 0014EB78 2C 1C 00 13 */ cmpwi r28, 0x13 -/* 80151C1C 0014EB7C 40 82 0C 84 */ bne lbl_801528A0 -/* 80151C20 0014EB80 80 7E 08 B8 */ lwz r3, 0x8b8(r30) -/* 80151C24 0014EB84 38 80 00 07 */ li r4, 7 -/* 80151C28 0014EB88 83 63 00 00 */ lwz r27, 0(r3) -/* 80151C2C 0014EB8C 7F 63 DB 78 */ mr r3, r27 -/* 80151C30 0014EB90 4B F3 FE C5 */ bl GetItemCapacity__12CPlayerStateCFQ212CPlayerState9EItemType -/* 80151C34 0014EB94 7C 65 1B 78 */ mr r5, r3 -/* 80151C38 0014EB98 7F 63 DB 78 */ mr r3, r27 -/* 80151C3C 0014EB9C 38 80 00 07 */ li r4, 7 -/* 80151C40 0014EBA0 4B F4 00 C1 */ bl ResetAndIncrPickUp__12CPlayerStateFQ212CPlayerState9EItemTypei -/* 80151C44 0014EBA4 48 00 0C 5C */ b lbl_801528A0 -/* 80151C48 0014EBA8 2C 1C 00 13 */ cmpwi r28, 0x13 -/* 80151C4C 0014EBAC 40 82 0C 54 */ bne lbl_801528A0 -/* 80151C50 0014EBB0 80 ED A0 80 */ lwz r7, gpGameState@sda21(r13) -/* 80151C54 0014EBB4 38 00 00 00 */ li r0, 0 -/* 80151C58 0014EBB8 80 7E 08 B8 */ lwz r3, 0x8b8(r30) -/* 80151C5C 0014EBBC 38 80 00 18 */ li r4, 0x18 -/* 80151C60 0014EBC0 80 C7 02 10 */ lwz r6, 0x210(r7) -/* 80151C64 0014EBC4 38 A0 00 01 */ li r5, 1 -/* 80151C68 0014EBC8 80 E7 02 14 */ lwz r7, 0x214(r7) -/* 80151C6C 0014EBCC 7C DB 02 78 */ xor r27, r6, r0 -/* 80151C70 0014EBD0 80 63 00 00 */ lwz r3, 0(r3) -/* 80151C74 0014EBD4 7C E0 02 78 */ xor r0, r7, r0 -/* 80151C78 0014EBD8 7C 1B DB 78 */ or r27, r0, r27 -/* 80151C7C 0014EBDC 7F 7B 00 34 */ cntlzw r27, r27 -/* 80151C80 0014EBE0 57 7B D9 7E */ srwi r27, r27, 5 -/* 80151C84 0014EBE4 4B F3 FF 6D */ bl IncrPickUp__12CPlayerStateFQ212CPlayerState9EItemTypei -/* 80151C88 0014EBE8 57 60 06 3F */ clrlwi. r0, r27, 0x18 -/* 80151C8C 0014EBEC 41 82 00 1C */ beq lbl_80151CA8 -/* 80151C90 0014EBF0 7F E3 FB 78 */ mr r3, r31 -/* 80151C94 0014EBF4 7F C5 F3 78 */ mr r5, r30 -/* 80151C98 0014EBF8 38 80 00 02 */ li r4, 2 -/* 80151C9C 0014EBFC 38 C0 FF FF */ li r6, -1 -/* 80151CA0 0014EC00 4B EF F4 21 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 80151CA4 0014EC04 48 00 0B FC */ b lbl_801528A0 -lbl_80151CA8: -/* 80151CA8 0014EC08 40 82 0B F8 */ bne lbl_801528A0 -/* 80151CAC 0014EC0C 7F C3 F3 78 */ mr r3, r30 -/* 80151CB0 0014EC10 38 80 00 04 */ li r4, 4 -/* 80151CB4 0014EC14 4B EF 2B AD */ bl DeferStateTransition__13CStateManagerF23EStateManagerTransition -/* 80151CB8 0014EC18 88 1F 01 E5 */ lbz r0, 0x1e5(r31) -/* 80151CBC 0014EC1C 38 60 00 01 */ li r3, 1 -/* 80151CC0 0014EC20 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80151CC4 0014EC24 98 1F 01 E5 */ stb r0, 0x1e5(r31) -/* 80151CC8 0014EC28 48 00 0B D8 */ b lbl_801528A0 -/* 80151CCC 0014EC2C 80 1F 01 A8 */ lwz r0, 0x1a8(r31) -/* 80151CD0 0014EC30 2C 00 00 03 */ cmpwi r0, 3 -/* 80151CD4 0014EC34 41 82 0B CC */ beq lbl_801528A0 -/* 80151CD8 0014EC38 2C 1C 00 14 */ cmpwi r28, 0x14 -/* 80151CDC 0014EC3C 41 82 02 30 */ beq lbl_80151F0C -/* 80151CE0 0014EC40 40 80 00 1C */ bge lbl_80151CFC -/* 80151CE4 0014EC44 2C 1C 00 0D */ cmpwi r28, 0xd -/* 80151CE8 0014EC48 41 82 02 FC */ beq lbl_80151FE4 -/* 80151CEC 0014EC4C 41 80 0B B4 */ blt lbl_801528A0 -/* 80151CF0 0014EC50 2C 1C 00 13 */ cmpwi r28, 0x13 -/* 80151CF4 0014EC54 40 80 02 E0 */ bge lbl_80151FD4 -/* 80151CF8 0014EC58 48 00 0B A8 */ b lbl_801528A0 -lbl_80151CFC: -/* 80151CFC 0014EC5C 2C 1C 00 23 */ cmpwi r28, 0x23 -/* 80151D00 0014EC60 41 82 00 08 */ beq lbl_80151D08 -/* 80151D04 0014EC64 48 00 0B 9C */ b lbl_801528A0 -lbl_80151D08: -/* 80151D08 0014EC68 38 7F 01 98 */ addi r3, r31, 0x198 -/* 80151D0C 0014EC6C 38 80 00 03 */ li r4, 3 -/* 80151D10 0014EC70 48 00 16 CD */ bl "reserve__Q24rstl78vectorFi" -/* 80151D14 0014EC74 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80151D18 0014EC78 83 9F 00 2C */ lwz r28, 0x2c(r31) -/* 80151D1C 0014EC7C 3B A3 66 A0 */ addi r29, r3, skZero3f@l -/* 80151D20 0014EC80 48 00 01 38 */ b lbl_80151E58 -lbl_80151D24: -/* 80151D24 0014EC84 80 1C 00 00 */ lwz r0, 0(r28) -/* 80151D28 0014EC88 2C 00 00 12 */ cmpwi r0, 0x12 -/* 80151D2C 0014EC8C 40 82 01 28 */ bne lbl_80151E54 -/* 80151D30 0014EC90 80 1C 00 04 */ lwz r0, 4(r28) -/* 80151D34 0014EC94 2C 00 00 01 */ cmpwi r0, 1 -/* 80151D38 0014EC98 40 82 01 1C */ bne lbl_80151E54 -/* 80151D3C 0014EC9C 80 1C 00 08 */ lwz r0, 8(r28) -/* 80151D40 0014ECA0 7F C4 F3 78 */ mr r4, r30 -/* 80151D44 0014ECA4 38 61 00 EC */ addi r3, r1, 0xec -/* 80151D48 0014ECA8 38 A1 00 60 */ addi r5, r1, 0x60 -/* 80151D4C 0014ECAC 90 01 00 60 */ stw r0, 0x60(r1) -/* 80151D50 0014ECB0 4B EF 62 79 */ bl GetIdListForScript__13CStateManagerCF9TEditorId -/* 80151D54 0014ECB4 83 41 00 EC */ lwz r26, 0xec(r1) -/* 80151D58 0014ECB8 38 60 00 00 */ li r3, 0 -/* 80151D5C 0014ECBC 80 01 00 F4 */ lwz r0, 0xf4(r1) -/* 80151D60 0014ECC0 80 81 00 F0 */ lwz r4, 0xf0(r1) -/* 80151D64 0014ECC4 7C 1A 00 40 */ cmplw r26, r0 -/* 80151D68 0014ECC8 80 01 00 F8 */ lwz r0, 0xf8(r1) -/* 80151D6C 0014ECCC 40 82 00 10 */ bne lbl_80151D7C -/* 80151D70 0014ECD0 7C 04 00 40 */ cmplw r4, r0 -/* 80151D74 0014ECD4 40 82 00 08 */ bne lbl_80151D7C -/* 80151D78 0014ECD8 38 60 00 01 */ li r3, 1 -lbl_80151D7C: -/* 80151D7C 0014ECDC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80151D80 0014ECE0 40 82 00 D4 */ bne lbl_80151E54 -/* 80151D84 0014ECE4 A0 1A 00 14 */ lhz r0, 0x14(r26) -/* 80151D88 0014ECE8 7F C3 F3 78 */ mr r3, r30 -/* 80151D8C 0014ECEC 38 81 00 30 */ addi r4, r1, 0x30 -/* 80151D90 0014ECF0 B0 01 00 30 */ sth r0, 0x30(r1) -/* 80151D94 0014ECF4 4B EF A7 E1 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80151D98 0014ECF8 7C 64 1B 78 */ mr r4, r3 -/* 80151D9C 0014ECFC 38 61 00 BC */ addi r3, r1, 0xbc -/* 80151DA0 0014ED00 4B F5 DE F1 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 80151DA4 0014ED04 83 63 00 04 */ lwz r27, 4(r3) -/* 80151DA8 0014ED08 28 1B 00 00 */ cmplwi r27, 0 -/* 80151DAC 0014ED0C 41 82 00 A8 */ beq lbl_80151E54 -/* 80151DB0 0014ED10 80 9F 01 9C */ lwz r4, 0x19c(r31) -/* 80151DB4 0014ED14 38 7F 01 98 */ addi r3, r31, 0x198 -/* 80151DB8 0014ED18 38 84 00 01 */ addi r4, r4, 1 -/* 80151DBC 0014ED1C 48 00 16 21 */ bl "reserve__Q24rstl78vectorFi" -/* 80151DC0 0014ED20 80 1F 01 9C */ lwz r0, 0x19c(r31) -/* 80151DC4 0014ED24 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80151DC8 0014ED28 80 BF 01 A0 */ lwz r5, 0x1a0(r31) -/* 80151DCC 0014ED2C A0 9A 00 14 */ lhz r4, 0x14(r26) -/* 80151DD0 0014ED30 7C 00 28 00 */ cmpw r0, r5 -/* 80151DD4 0014ED34 C3 E3 66 A0 */ lfs f31, skZero3f@l(r3) -/* 80151DD8 0014ED38 B0 81 00 2C */ sth r4, 0x2c(r1) -/* 80151DDC 0014ED3C C3 DD 00 04 */ lfs f30, 4(r29) -/* 80151DE0 0014ED40 C3 BD 00 08 */ lfs f29, 8(r29) -/* 80151DE4 0014ED44 41 80 00 1C */ blt lbl_80151E00 -/* 80151DE8 0014ED48 2C 05 00 00 */ cmpwi r5, 0 -/* 80151DEC 0014ED4C 38 7F 01 98 */ addi r3, r31, 0x198 -/* 80151DF0 0014ED50 38 80 00 04 */ li r4, 4 -/* 80151DF4 0014ED54 41 82 00 08 */ beq lbl_80151DFC -/* 80151DF8 0014ED58 54 A4 08 3C */ slwi r4, r5, 1 -lbl_80151DFC: -/* 80151DFC 0014ED5C 48 00 15 E1 */ bl "reserve__Q24rstl78vectorFi" -lbl_80151E00: -/* 80151E00 0014ED60 80 1F 01 9C */ lwz r0, 0x19c(r31) -/* 80151E04 0014ED64 80 7F 01 A4 */ lwz r3, 0x1a4(r31) -/* 80151E08 0014ED68 1C 00 00 18 */ mulli r0, r0, 0x18 -/* 80151E0C 0014ED6C 7C 83 02 15 */ add. r4, r3, r0 -/* 80151E10 0014ED70 41 82 00 28 */ beq lbl_80151E38 -/* 80151E14 0014ED74 A0 61 00 2C */ lhz r3, 0x2c(r1) -/* 80151E18 0014ED78 38 00 00 00 */ li r0, 0 -/* 80151E1C 0014ED7C C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) -/* 80151E20 0014ED80 B0 64 00 00 */ sth r3, 0(r4) -/* 80151E24 0014ED84 D0 04 00 04 */ stfs f0, 4(r4) -/* 80151E28 0014ED88 98 04 00 08 */ stb r0, 8(r4) -/* 80151E2C 0014ED8C D3 E4 00 0C */ stfs f31, 0xc(r4) -/* 80151E30 0014ED90 D3 C4 00 10 */ stfs f30, 0x10(r4) -/* 80151E34 0014ED94 D3 A4 00 14 */ stfs f29, 0x14(r4) -lbl_80151E38: -/* 80151E38 0014ED98 80 DF 01 9C */ lwz r6, 0x19c(r31) -/* 80151E3C 0014ED9C 7F 63 DB 78 */ mr r3, r27 -/* 80151E40 0014EDA0 7F C5 F3 78 */ mr r5, r30 -/* 80151E44 0014EDA4 38 80 00 2A */ li r4, 0x2a -/* 80151E48 0014EDA8 38 06 00 01 */ addi r0, r6, 1 -/* 80151E4C 0014EDAC 90 1F 01 9C */ stw r0, 0x19c(r31) -/* 80151E50 0014EDB0 4B F0 21 31 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager -lbl_80151E54: -/* 80151E54 0014EDB4 3B 9C 00 0C */ addi r28, r28, 0xc -lbl_80151E58: -/* 80151E58 0014EDB8 80 1F 00 24 */ lwz r0, 0x24(r31) -/* 80151E5C 0014EDBC 80 7F 00 2C */ lwz r3, 0x2c(r31) -/* 80151E60 0014EDC0 1C 00 00 0C */ mulli r0, r0, 0xc -/* 80151E64 0014EDC4 7C 03 02 14 */ add r0, r3, r0 -/* 80151E68 0014EDC8 7C 1C 00 40 */ cmplw r28, r0 -/* 80151E6C 0014EDCC 40 82 FE B8 */ bne lbl_80151D24 -/* 80151E70 0014EDD0 93 C1 00 4C */ stw r30, 0x4c(r1) -/* 80151E74 0014EDD4 38 61 00 5C */ addi r3, r1, 0x5c -/* 80151E78 0014EDD8 38 81 00 54 */ addi r4, r1, 0x54 -/* 80151E7C 0014EDDC 38 A1 00 4C */ addi r5, r1, 0x4c -/* 80151E80 0014EDE0 80 1F 01 9C */ lwz r0, 0x19c(r31) -/* 80151E84 0014EDE4 80 DF 01 A4 */ lwz r6, 0x1a4(r31) -/* 80151E88 0014EDE8 1C 00 00 18 */ mulli r0, r0, 0x18 -/* 80151E8C 0014EDEC 93 C1 00 48 */ stw r30, 0x48(r1) -/* 80151E90 0014EDF0 7C C6 02 14 */ add r6, r6, r0 -/* 80151E94 0014EDF4 90 C1 00 54 */ stw r6, 0x54(r1) -/* 80151E98 0014EDF8 80 1F 01 A4 */ lwz r0, 0x1a4(r31) -/* 80151E9C 0014EDFC 90 C1 00 50 */ stw r6, 0x50(r1) -/* 80151EA0 0014EE00 90 01 00 58 */ stw r0, 0x58(r1) -/* 80151EA4 0014EE04 90 01 00 5C */ stw r0, 0x5c(r1) -/* 80151EA8 0014EE08 48 00 11 B5 */ bl "sort,Q24rstl17rmemory_allocator>,Q236@unnamed@CScriptSpecialFunction_cpp@11CRingSorter>__4rstlFQ24rstl176pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl176pointer_iteratorFP7CEntity" -/* 80151F58 0014EEB8 80 83 00 04 */ lwz r4, 4(r3) -/* 80151F5C 0014EEBC 28 04 00 00 */ cmplwi r4, 0 -/* 80151F60 0014EEC0 41 82 00 2C */ beq lbl_80151F8C -/* 80151F64 0014EEC4 80 1F 01 A4 */ lwz r0, 0x1a4(r31) -/* 80151F68 0014EEC8 38 7C 00 0C */ addi r3, r28, 0xc -/* 80151F6C 0014EECC C0 44 00 58 */ lfs f2, 0x58(r4) -/* 80151F70 0014EED0 C0 24 00 48 */ lfs f1, 0x48(r4) -/* 80151F74 0014EED4 7C 60 1A 14 */ add r3, r0, r3 -/* 80151F78 0014EED8 C0 04 00 38 */ lfs f0, 0x38(r4) -/* 80151F7C 0014EEDC D0 03 00 00 */ stfs f0, 0(r3) -/* 80151F80 0014EEE0 D0 23 00 04 */ stfs f1, 4(r3) -/* 80151F84 0014EEE4 D0 43 00 08 */ stfs f2, 8(r3) -/* 80151F88 0014EEE8 48 00 00 2C */ b lbl_80151FB4 -lbl_80151F8C: -/* 80151F8C 0014EEEC 3C 60 80 5A */ lis r3, lbl_805A6724@ha -/* 80151F90 0014EEF0 80 1F 01 A4 */ lwz r0, 0x1a4(r31) -/* 80151F94 0014EEF4 38 9C 00 0C */ addi r4, r28, 0xc -/* 80151F98 0014EEF8 C0 03 67 24 */ lfs f0, lbl_805A6724@l(r3) -/* 80151F9C 0014EEFC 7C 80 22 14 */ add r4, r0, r4 -/* 80151FA0 0014EF00 D0 04 00 00 */ stfs f0, 0(r4) -/* 80151FA4 0014EF04 C0 1B 00 04 */ lfs f0, 4(r27) -/* 80151FA8 0014EF08 D0 04 00 04 */ stfs f0, 4(r4) -/* 80151FAC 0014EF0C C0 1B 00 08 */ lfs f0, 8(r27) -/* 80151FB0 0014EF10 D0 04 00 08 */ stfs f0, 8(r4) -lbl_80151FB4: -/* 80151FB4 0014EF14 3B 9C 00 18 */ addi r28, r28, 0x18 -/* 80151FB8 0014EF18 3B 5A 00 01 */ addi r26, r26, 1 -lbl_80151FBC: -/* 80151FBC 0014EF1C 80 1F 01 9C */ lwz r0, 0x19c(r31) -/* 80151FC0 0014EF20 7C 1A 00 00 */ cmpw r26, r0 -/* 80151FC4 0014EF24 41 80 FF 70 */ blt lbl_80151F34 -/* 80151FC8 0014EF28 38 00 00 03 */ li r0, 3 -/* 80151FCC 0014EF2C 90 1F 01 A8 */ stw r0, 0x1a8(r31) -/* 80151FD0 0014EF30 48 00 08 D0 */ b lbl_801528A0 -lbl_80151FD4: -/* 80151FD4 0014EF34 7F E3 FB 78 */ mr r3, r31 -/* 80151FD8 0014EF38 7F C4 F3 78 */ mr r4, r30 -/* 80151FDC 0014EF3C 4B FF F7 41 */ bl RingScramble__22CScriptSpecialFunctionFR13CStateManager -/* 80151FE0 0014EF40 48 00 08 C0 */ b lbl_801528A0 -lbl_80151FE4: -/* 80151FE4 0014EF44 38 00 00 01 */ li r0, 1 -/* 80151FE8 0014EF48 C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) -/* 80151FEC 0014EF4C 90 1F 01 A8 */ stw r0, 0x1a8(r31) -/* 80151FF0 0014EF50 38 7F 01 AC */ addi r3, r31, 0x1ac -/* 80151FF4 0014EF54 80 9E 08 4C */ lwz r4, 0x84c(r30) -/* 80151FF8 0014EF58 C0 5F 00 40 */ lfs f2, 0x40(r31) -/* 80151FFC 0014EF5C C0 24 00 40 */ lfs f1, 0x40(r4) -/* 80152000 0014EF60 C0 BF 00 50 */ lfs f5, 0x50(r31) -/* 80152004 0014EF64 C0 84 00 50 */ lfs f4, 0x50(r4) -/* 80152008 0014EF68 EC 22 08 28 */ fsubs f1, f2, f1 -/* 8015200C 0014EF6C C0 7F 00 60 */ lfs f3, 0x60(r31) -/* 80152010 0014EF70 C0 44 00 60 */ lfs f2, 0x60(r4) -/* 80152014 0014EF74 EC 85 20 28 */ fsubs f4, f5, f4 -/* 80152018 0014EF78 D0 3F 01 AC */ stfs f1, 0x1ac(r31) -/* 8015201C 0014EF7C EC 23 10 28 */ fsubs f1, f3, f2 -/* 80152020 0014EF80 D0 9F 01 B0 */ stfs f4, 0x1b0(r31) -/* 80152024 0014EF84 D0 3F 01 B4 */ stfs f1, 0x1b4(r31) -/* 80152028 0014EF88 D0 1F 01 B4 */ stfs f0, 0x1b4(r31) -/* 8015202C 0014EF8C 48 1C 28 CD */ bl Normalize__9CVector3fFv -/* 80152030 0014EF90 48 00 08 70 */ b lbl_801528A0 -/* 80152034 0014EF94 2C 1C 00 13 */ cmpwi r28, 0x13 -/* 80152038 0014EF98 40 82 08 68 */ bne lbl_801528A0 -/* 8015203C 0014EF9C 80 1F 01 1C */ lwz r0, 0x11c(r31) -/* 80152040 0014EFA0 38 60 00 00 */ li r3, 0 -/* 80152044 0014EFA4 80 AD 8C 4C */ lwz r5, lbl_805A780C@sda21(r13) -/* 80152048 0014EFA8 38 80 00 01 */ li r4, 1 -/* 8015204C 0014EFAC 90 01 01 30 */ stw r0, 0x130(r1) -/* 80152050 0014EFB0 88 1F 01 20 */ lbz r0, 0x120(r31) -/* 80152054 0014EFB4 98 01 01 34 */ stb r0, 0x134(r1) -/* 80152058 0014EFB8 C0 1F 01 24 */ lfs f0, 0x124(r31) -/* 8015205C 0014EFBC D0 01 01 38 */ stfs f0, 0x138(r1) -/* 80152060 0014EFC0 C0 1F 01 28 */ lfs f0, 0x128(r31) -/* 80152064 0014EFC4 D0 01 01 3C */ stfs f0, 0x13c(r1) -/* 80152068 0014EFC8 C0 1F 01 2C */ lfs f0, 0x12c(r31) -/* 8015206C 0014EFCC D0 01 01 40 */ stfs f0, 0x140(r1) -/* 80152070 0014EFD0 C0 1F 01 30 */ lfs f0, 0x130(r31) -/* 80152074 0014EFD4 D0 01 01 44 */ stfs f0, 0x144(r1) -/* 80152078 0014EFD8 88 1F 01 34 */ lbz r0, 0x134(r31) -/* 8015207C 0014EFDC 98 01 01 48 */ stb r0, 0x148(r1) -/* 80152080 0014EFE0 C0 1F 00 FC */ lfs f0, 0xfc(r31) -/* 80152084 0014EFE4 D0 01 01 40 */ stfs f0, 0x140(r1) -/* 80152088 0014EFE8 48 23 7E 6D */ bl __shl2i -/* 8015208C 0014EFEC 39 20 00 00 */ li r9, 0 -/* 80152090 0014EFF0 38 00 00 03 */ li r0, 3 -/* 80152094 0014EFF4 90 81 01 1C */ stw r4, 0x11c(r1) -/* 80152098 0014EFF8 7F E5 FB 78 */ mr r5, r31 -/* 8015209C 0014EFFC 38 81 00 24 */ addi r4, r1, 0x24 -/* 801520A0 0014F000 38 C1 00 E0 */ addi r6, r1, 0xe0 -/* 801520A4 0014F004 90 61 01 18 */ stw r3, 0x118(r1) -/* 801520A8 0014F008 7F C3 F3 78 */ mr r3, r30 -/* 801520AC 0014F00C 38 E1 01 30 */ addi r7, r1, 0x130 -/* 801520B0 0014F010 39 01 01 18 */ addi r8, r1, 0x118 -/* 801520B4 0014F014 91 21 01 24 */ stw r9, 0x124(r1) -/* 801520B8 0014F018 91 21 01 20 */ stw r9, 0x120(r1) -/* 801520BC 0014F01C 90 01 01 28 */ stw r0, 0x128(r1) -/* 801520C0 0014F020 C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 801520C4 0014F024 C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 801520C8 0014F028 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 801520CC 0014F02C D0 01 00 E0 */ stfs f0, 0xe0(r1) -/* 801520D0 0014F030 D0 21 00 E4 */ stfs f1, 0xe4(r1) -/* 801520D4 0014F034 D0 41 00 E8 */ stfs f2, 0xe8(r1) -/* 801520D8 0014F038 A0 1F 00 08 */ lhz r0, 8(r31) -/* 801520DC 0014F03C B0 01 00 20 */ sth r0, 0x20(r1) -/* 801520E0 0014F040 B0 01 00 24 */ sth r0, 0x24(r1) -/* 801520E4 0014F044 4B EF 6B C9 */ bl ApplyDamageToWorld__13CStateManagerF9TUniqueIdRC6CActorRC9CVector3fRC11CDamageInfoRC15CMaterialFilter -/* 801520E8 0014F048 48 00 07 B8 */ b lbl_801528A0 -/* 801520EC 0014F04C 2C 1C 00 07 */ cmpwi r28, 7 -/* 801520F0 0014F050 40 82 00 34 */ bne lbl_80152124 -/* 801520F4 0014F054 C0 1F 01 00 */ lfs f0, 0x100(r31) -/* 801520F8 0014F058 7F C3 F3 78 */ mr r3, r30 -/* 801520FC 0014F05C A0 1B 00 00 */ lhz r0, 0(r27) -/* 80152100 0014F060 38 81 00 1C */ addi r4, r1, 0x1c -/* 80152104 0014F064 FC 00 00 1E */ fctiwz f0, f0 -/* 80152108 0014F068 B0 01 00 1C */ sth r0, 0x1c(r1) -/* 8015210C 0014F06C D8 01 01 50 */ stfd f0, 0x150(r1) -/* 80152110 0014F070 C0 3F 00 FC */ lfs f1, 0xfc(r31) -/* 80152114 0014F074 80 A1 01 54 */ lwz r5, 0x154(r1) -/* 80152118 0014F078 38 A5 00 56 */ addi r5, r5, 0x56 -/* 8015211C 0014F07C 4B EF 1E 29 */ bl SetBossParams__13CStateManagerF9TUniqueIdfUi -/* 80152120 0014F080 48 00 07 80 */ b lbl_801528A0 -lbl_80152124: -/* 80152124 0014F084 2C 1C 00 05 */ cmpwi r28, 5 -/* 80152128 0014F088 40 82 07 78 */ bne lbl_801528A0 -/* 8015212C 0014F08C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80152130 0014F090 7F C3 F3 78 */ mr r3, r30 -/* 80152134 0014F094 C0 22 9D 9C */ lfs f1, lbl_805ABABC@sda21(r2) -/* 80152138 0014F098 38 81 00 18 */ addi r4, r1, 0x18 -/* 8015213C 0014F09C B0 01 00 18 */ sth r0, 0x18(r1) -/* 80152140 0014F0A0 38 A0 00 00 */ li r5, 0 -/* 80152144 0014F0A4 4B EF 1E 01 */ bl SetBossParams__13CStateManagerF9TUniqueIdfUi -/* 80152148 0014F0A8 48 00 07 58 */ b lbl_801528A0 -/* 8015214C 0014F0AC 2C 1C 00 13 */ cmpwi r28, 0x13 -/* 80152150 0014F0B0 40 82 07 50 */ bne lbl_801528A0 -/* 80152154 0014F0B4 7F E3 FB 78 */ mr r3, r31 -/* 80152158 0014F0B8 7F C4 F3 78 */ mr r4, r30 -/* 8015215C 0014F0BC 4B FF D1 D9 */ bl GetSpecialEnding__22CScriptSpecialFunctionCFv -/* 80152160 0014F0C0 2C 03 00 01 */ cmpwi r3, 1 -/* 80152164 0014F0C4 41 82 00 30 */ beq lbl_80152194 -/* 80152168 0014F0C8 40 80 00 10 */ bge lbl_80152178 -/* 8015216C 0014F0CC 2C 03 00 00 */ cmpwi r3, 0 -/* 80152170 0014F0D0 40 80 00 14 */ bge lbl_80152184 -/* 80152174 0014F0D4 48 00 00 3C */ b lbl_801521B0 -lbl_80152178: -/* 80152178 0014F0D8 2C 03 00 03 */ cmpwi r3, 3 -/* 8015217C 0014F0DC 40 80 00 34 */ bge lbl_801521B0 -/* 80152180 0014F0E0 48 00 00 24 */ b lbl_801521A4 -lbl_80152184: -/* 80152184 0014F0E4 80 6D A0 78 */ lwz r3, gpMain@sda21(r13) -/* 80152188 0014F0E8 38 00 00 01 */ li r0, 1 -/* 8015218C 0014F0EC 90 03 01 2C */ stw r0, 0x12c(r3) -/* 80152190 0014F0F0 48 00 00 20 */ b lbl_801521B0 -lbl_80152194: -/* 80152194 0014F0F4 80 6D A0 78 */ lwz r3, gpMain@sda21(r13) -/* 80152198 0014F0F8 38 00 00 02 */ li r0, 2 -/* 8015219C 0014F0FC 90 03 01 2C */ stw r0, 0x12c(r3) -/* 801521A0 0014F100 48 00 00 10 */ b lbl_801521B0 -lbl_801521A4: -/* 801521A4 0014F104 80 6D A0 78 */ lwz r3, gpMain@sda21(r13) -/* 801521A8 0014F108 38 00 00 03 */ li r0, 3 -/* 801521AC 0014F10C 90 03 01 2C */ stw r0, 0x12c(r3) -lbl_801521B0: -/* 801521B0 0014F110 88 1E 0F 94 */ lbz r0, 0xf94(r30) -/* 801521B4 0014F114 38 60 00 01 */ li r3, 1 -/* 801521B8 0014F118 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 801521BC 0014F11C 98 1E 0F 94 */ stb r0, 0xf94(r30) -/* 801521C0 0014F120 48 00 06 E0 */ b lbl_801528A0 -/* 801521C4 0014F124 2C 1C 00 07 */ cmpwi r28, 7 -/* 801521C8 0014F128 40 82 00 2C */ bne lbl_801521F4 -/* 801521CC 0014F12C 7F E3 FB 78 */ mr r3, r31 -/* 801521D0 0014F130 7F C4 F3 78 */ mr r4, r30 -/* 801521D4 0014F134 4B FF F6 95 */ bl ShouldSkipCinematic__22CScriptSpecialFunctionFR13CStateManager -/* 801521D8 0014F138 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801521DC 0014F13C 41 82 06 C4 */ beq lbl_801528A0 -/* 801521E0 0014F140 A0 1F 00 08 */ lhz r0, 8(r31) -/* 801521E4 0014F144 B0 01 00 10 */ sth r0, 0x10(r1) -/* 801521E8 0014F148 B0 01 00 14 */ sth r0, 0x14(r1) -/* 801521EC 0014F14C B0 1E 0F 38 */ sth r0, 0xf38(r30) -/* 801521F0 0014F150 48 00 06 B0 */ b lbl_801528A0 -lbl_801521F4: -/* 801521F4 0014F154 2C 1C 00 05 */ cmpwi r28, 5 -/* 801521F8 0014F158 40 82 06 A8 */ bne lbl_801528A0 -/* 801521FC 0014F15C A0 ED A3 8C */ lhz r7, lbl_805A8F4C@sda21(r13) -/* 80152200 0014F160 38 81 00 AC */ addi r4, r1, 0xac -/* 80152204 0014F164 38 A0 00 01 */ li r5, 1 -/* 80152208 0014F168 B0 FE 0F 38 */ sth r7, 0xf38(r30) -/* 8015220C 0014F16C 80 7E 08 50 */ lwz r3, 0x850(r30) -/* 80152210 0014F170 80 1F 00 0C */ lwz r0, 0xc(r31) -/* 80152214 0014F174 80 C3 00 08 */ lwz r6, 8(r3) -/* 80152218 0014F178 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) -/* 8015221C 0014F17C B0 E1 00 0C */ sth r7, 0xc(r1) -/* 80152220 0014F180 38 63 00 A8 */ addi r3, r3, 0xa8 -/* 80152224 0014F184 90 C1 00 A4 */ stw r6, 0xa4(r1) -/* 80152228 0014F188 90 01 00 A8 */ stw r0, 0xa8(r1) -/* 8015222C 0014F18C 90 C1 00 AC */ stw r6, 0xac(r1) -/* 80152230 0014F190 90 01 00 B0 */ stw r0, 0xb0(r1) -/* 80152234 0014F194 48 08 30 DD */ bl SetCinematicState__14CSystemOptionsFUi9TEditorIdb -/* 80152238 0014F198 48 00 06 68 */ b lbl_801528A0 -/* 8015223C 0014F19C 2C 1C 00 06 */ cmpwi r28, 6 -/* 80152240 0014F1A0 41 82 00 E4 */ beq lbl_80152324 -/* 80152244 0014F1A4 40 80 00 10 */ bge lbl_80152254 -/* 80152248 0014F1A8 2C 1C 00 05 */ cmpwi r28, 5 -/* 8015224C 0014F1AC 40 80 00 10 */ bge lbl_8015225C -/* 80152250 0014F1B0 48 00 00 D4 */ b lbl_80152324 -lbl_80152254: -/* 80152254 0014F1B4 2C 1C 00 08 */ cmpwi r28, 8 -/* 80152258 0014F1B8 40 80 00 CC */ bge lbl_80152324 -lbl_8015225C: -/* 8015225C 0014F1BC 80 BF 01 BC */ lwz r5, 0x1bc(r31) -/* 80152260 0014F1C0 3C 05 00 01 */ addis r0, r5, 1 -/* 80152264 0014F1C4 28 00 FF FF */ cmplwi r0, 0xffff -/* 80152268 0014F1C8 41 82 00 BC */ beq lbl_80152324 -/* 8015226C 0014F1CC 80 7F 01 C0 */ lwz r3, 0x1c0(r31) -/* 80152270 0014F1D0 3C 03 00 01 */ addis r0, r3, 1 -/* 80152274 0014F1D4 28 00 FF FF */ cmplwi r0, 0xffff -/* 80152278 0014F1D8 41 82 00 AC */ beq lbl_80152324 -/* 8015227C 0014F1DC 20 1C 00 07 */ subfic r0, r28, 7 -/* 80152280 0014F1E0 80 9E 08 50 */ lwz r4, 0x850(r30) -/* 80152284 0014F1E4 7C 00 00 34 */ cntlzw r0, r0 -/* 80152288 0014F1E8 38 61 00 44 */ addi r3, r1, 0x44 -/* 8015228C 0014F1EC 54 1A D9 7E */ srwi r26, r0, 5 -/* 80152290 0014F1F0 4B F0 3D D1 */ bl sub_80056060 -/* 80152294 0014F1F4 80 01 00 44 */ lwz r0, 0x44(r1) -/* 80152298 0014F1F8 3B A0 00 00 */ li r29, 0 -/* 8015229C 0014F1FC 2C 00 FF FF */ cmpwi r0, -1 -/* 801522A0 0014F200 90 01 00 68 */ stw r0, 0x68(r1) -/* 801522A4 0014F204 41 82 00 10 */ beq lbl_801522B4 -/* 801522A8 0014F208 80 7E 08 C8 */ lwz r3, 0x8c8(r30) -/* 801522AC 0014F20C 83 A3 00 00 */ lwz r29, 0(r3) -/* 801522B0 0014F210 48 00 00 40 */ b lbl_801522F0 -lbl_801522B4: -/* 801522B4 0014F214 80 8D A0 84 */ lwz r4, gpMemoryCard@sda21(r13) -/* 801522B8 0014F218 38 61 00 9C */ addi r3, r1, 0x9c -/* 801522BC 0014F21C 80 BF 01 BC */ lwz r5, 0x1bc(r31) -/* 801522C0 0014F220 48 0F 6B 1D */ bl sub_80248ddc -/* 801522C4 0014F224 80 81 00 9C */ lwz r4, 0x9c(r1) -/* 801522C8 0014F228 83 61 00 A0 */ lwz r27, 0xa0(r1) -/* 801522CC 0014F22C 3C 04 00 01 */ addis r0, r4, 1 -/* 801522D0 0014F230 28 00 FF FF */ cmplwi r0, 0xffff -/* 801522D4 0014F234 41 82 00 1C */ beq lbl_801522F0 -/* 801522D8 0014F238 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) -/* 801522DC 0014F23C 48 08 16 FD */ bl StateForWorld__10CGameStateFUi -/* 801522E0 0014F240 48 08 2A 55 */ bl GetLayerState__11CWorldStateFv -/* 801522E4 0014F244 80 63 00 00 */ lwz r3, 0(r3) -/* 801522E8 0014F248 93 61 00 68 */ stw r27, 0x68(r1) -/* 801522EC 0014F24C 83 A3 00 00 */ lwz r29, 0(r3) -lbl_801522F0: -/* 801522F0 0014F250 80 01 00 68 */ lwz r0, 0x68(r1) -/* 801522F4 0014F254 2C 00 FF FF */ cmpwi r0, -1 -/* 801522F8 0014F258 41 82 00 2C */ beq lbl_80152324 -/* 801522FC 0014F25C 80 FF 01 C0 */ lwz r7, 0x1c0(r31) -/* 80152300 0014F260 7F A3 EB 78 */ mr r3, r29 -/* 80152304 0014F264 80 01 00 68 */ lwz r0, 0x68(r1) -/* 80152308 0014F268 7F 46 D3 78 */ mr r6, r26 -/* 8015230C 0014F26C 90 E1 00 38 */ stw r7, 0x38(r1) -/* 80152310 0014F270 38 81 00 40 */ addi r4, r1, 0x40 -/* 80152314 0014F274 38 A1 00 3C */ addi r5, r1, 0x3c -/* 80152318 0014F278 90 E1 00 3C */ stw r7, 0x3c(r1) -/* 8015231C 0014F27C 90 01 00 40 */ stw r0, 0x40(r1) -/* 80152320 0014F280 48 0E 1F A1 */ bl SetLayerActive__16CWorldLayerStateFiib -lbl_80152324: -/* 80152324 0014F284 2C 1C 00 13 */ cmpwi r28, 0x13 -/* 80152328 0014F288 40 82 05 78 */ bne lbl_801528A0 -/* 8015232C 0014F28C C0 1F 01 00 */ lfs f0, 0x100(r31) -/* 80152330 0014F290 80 7E 08 80 */ lwz r3, 0x880(r30) -/* 80152334 0014F294 FC 00 00 1E */ fctiwz f0, f0 -/* 80152338 0014F298 C0 3F 00 FC */ lfs f1, 0xfc(r31) -/* 8015233C 0014F29C D8 01 01 50 */ stfd f0, 0x150(r1) -/* 80152340 0014F2A0 80 81 01 54 */ lwz r4, 0x154(r1) -/* 80152344 0014F2A4 48 0B DC 19 */ bl sub_8020ff5c -/* 80152348 0014F2A8 48 00 05 58 */ b lbl_801528A0 -/* 8015234C 0014F2AC 2C 1C 00 13 */ cmpwi r28, 0x13 -/* 80152350 0014F2B0 40 82 05 50 */ bne lbl_801528A0 -/* 80152354 0014F2B4 C0 1F 01 00 */ lfs f0, 0x100(r31) -/* 80152358 0014F2B8 FC 00 00 1E */ fctiwz f0, f0 -/* 8015235C 0014F2BC D8 01 01 50 */ stfd f0, 0x150(r1) -/* 80152360 0014F2C0 80 01 01 54 */ lwz r0, 0x154(r1) -/* 80152364 0014F2C4 2C 00 00 00 */ cmpwi r0, 0 -/* 80152368 0014F2C8 41 80 05 38 */ blt lbl_801528A0 -/* 8015236C 0014F2CC 2C 00 00 06 */ cmpwi r0, 6 -/* 80152370 0014F2D0 40 80 05 30 */ bge lbl_801528A0 -/* 80152374 0014F2D4 3C 60 80 3D */ lis r3, lbl_803D01B8@ha -/* 80152378 0014F2D8 54 00 10 3A */ slwi r0, r0, 2 -/* 8015237C 0014F2DC 38 63 01 B8 */ addi r3, r3, lbl_803D01B8@l -/* 80152380 0014F2E0 C0 3F 01 04 */ lfs f1, 0x104(r31) -/* 80152384 0014F2E4 7F 43 00 2E */ lwzx r26, r3, r0 -/* 80152388 0014F2E8 48 23 75 CD */ bl __cvt_fp2unsigned -/* 8015238C 0014F2EC 54 60 07 FF */ clrlwi. r0, r3, 0x1f -/* 80152390 0014F2F0 41 82 00 20 */ beq lbl_801523B0 -/* 80152394 0014F2F4 80 7E 08 8C */ lwz r3, 0x88c(r30) -/* 80152398 0014F2F8 7F C4 F3 78 */ mr r4, r30 -/* 8015239C 0014F2FC C0 22 9D B4 */ lfs f1, lbl_805ABAD4@sda21(r2) -/* 801523A0 0014F300 7F 45 D3 78 */ mr r5, r26 -/* 801523A4 0014F304 38 C0 00 01 */ li r6, 1 -/* 801523A8 0014F308 48 0D BE 9D */ bl Rumble__14CRumbleManagerFR13CStateManager11ERumbleFxIdf15ERumblePriority -/* 801523AC 0014F30C 48 00 04 F4 */ b lbl_801528A0 -lbl_801523B0: -/* 801523B0 0014F310 C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 801523B4 0014F314 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e -/* 801523B8 0014F318 C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 801523BC 0014F31C C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 801523C0 0014F320 D0 01 01 08 */ stfs f0, 0x108(r1) -/* 801523C4 0014F324 D0 21 01 0C */ stfs f1, 0x10c(r1) -/* 801523C8 0014F328 D0 41 01 10 */ stfs f2, 0x110(r1) -/* 801523CC 0014F32C 41 82 00 48 */ beq lbl_80152414 -/* 801523D0 0014F330 A0 1B 00 00 */ lhz r0, 0(r27) -/* 801523D4 0014F334 7F C3 F3 78 */ mr r3, r30 -/* 801523D8 0014F338 38 81 00 08 */ addi r4, r1, 8 -/* 801523DC 0014F33C B0 01 00 08 */ sth r0, 8(r1) -/* 801523E0 0014F340 4B EF A1 C5 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 801523E4 0014F344 7C 64 1B 78 */ mr r4, r3 -/* 801523E8 0014F348 38 61 00 6C */ addi r3, r1, 0x6c -/* 801523EC 0014F34C 4B F5 D8 A5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 801523F0 0014F350 80 63 00 04 */ lwz r3, 4(r3) -/* 801523F4 0014F354 28 03 00 00 */ cmplwi r3, 0 -/* 801523F8 0014F358 41 82 00 1C */ beq lbl_80152414 -/* 801523FC 0014F35C C0 43 00 60 */ lfs f2, 0x60(r3) -/* 80152400 0014F360 C0 23 00 50 */ lfs f1, 0x50(r3) -/* 80152404 0014F364 C0 03 00 40 */ lfs f0, 0x40(r3) -/* 80152408 0014F368 D0 01 01 08 */ stfs f0, 0x108(r1) -/* 8015240C 0014F36C D0 21 01 0C */ stfs f1, 0x10c(r1) -/* 80152410 0014F370 D0 41 01 10 */ stfs f2, 0x110(r1) -lbl_80152414: -/* 80152414 0014F374 80 7E 08 8C */ lwz r3, 0x88c(r30) -/* 80152418 0014F378 7F C4 F3 78 */ mr r4, r30 -/* 8015241C 0014F37C C0 3F 00 FC */ lfs f1, 0xfc(r31) -/* 80152420 0014F380 7F 46 D3 78 */ mr r6, r26 -/* 80152424 0014F384 38 A1 01 08 */ addi r5, r1, 0x108 -/* 80152428 0014F388 38 E0 00 01 */ li r7, 1 -/* 8015242C 0014F38C 48 0D BD 1D */ bl Rumble__14CRumbleManagerFR13CStateManagerRC9CVector3f11ERumbleFxIdf15ERumblePriority -/* 80152430 0014F390 48 00 04 70 */ b lbl_801528A0 -/* 80152434 0014F394 2C 1C 00 13 */ cmpwi r28, 0x13 -/* 80152438 0014F398 40 82 04 68 */ bne lbl_801528A0 -/* 8015243C 0014F39C 80 7E 08 B8 */ lwz r3, 0x8b8(r30) -/* 80152440 0014F3A0 80 9F 01 C4 */ lwz r4, 0x1c4(r31) -/* 80152444 0014F3A4 80 63 00 00 */ lwz r3, 0(r3) -/* 80152448 0014F3A8 4B F3 F6 79 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType -/* 8015244C 0014F3AC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80152450 0014F3B0 41 82 04 50 */ beq lbl_801528A0 -/* 80152454 0014F3B4 7F E3 FB 78 */ mr r3, r31 -/* 80152458 0014F3B8 7F C5 F3 78 */ mr r5, r30 -/* 8015245C 0014F3BC 38 80 00 09 */ li r4, 9 -/* 80152460 0014F3C0 38 C0 FF FF */ li r6, -1 -/* 80152464 0014F3C4 4B EF EC 5D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 80152468 0014F3C8 48 00 04 38 */ b lbl_801528A0 -/* 8015246C 0014F3CC 2C 1C 00 13 */ cmpwi r28, 0x13 -/* 80152470 0014F3D0 40 82 04 30 */ bne lbl_801528A0 -/* 80152474 0014F3D4 80 7E 08 B8 */ lwz r3, 0x8b8(r30) -/* 80152478 0014F3D8 80 63 00 00 */ lwz r3, 0(r3) -/* 8015247C 0014F3DC 4B F3 F0 49 */ bl GetIsFusionEnabled__12CPlayerStateFv -/* 80152480 0014F3E0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80152484 0014F3E4 41 82 04 1C */ beq lbl_801528A0 -/* 80152488 0014F3E8 7F E3 FB 78 */ mr r3, r31 -/* 8015248C 0014F3EC 7F C5 F3 78 */ mr r5, r30 -/* 80152490 0014F3F0 38 80 00 09 */ li r4, 9 -/* 80152494 0014F3F4 38 C0 FF FF */ li r6, -1 -/* 80152498 0014F3F8 4B EF EC 29 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 8015249C 0014F3FC 48 00 04 04 */ b lbl_801528A0 -/* 801524A0 0014F400 2C 1C 00 22 */ cmpwi r28, 0x22 -/* 801524A4 0014F404 41 82 00 0C */ beq lbl_801524B0 -/* 801524A8 0014F408 2C 1C 00 04 */ cmpwi r28, 4 -/* 801524AC 0014F40C 40 82 03 F4 */ bne lbl_801528A0 -lbl_801524B0: -/* 801524B0 0014F410 88 7F 01 E4 */ lbz r3, 0x1e4(r31) -/* 801524B4 0014F414 54 60 07 FF */ clrlwi. r0, r3, 0x1f -/* 801524B8 0014F418 41 82 03 E8 */ beq lbl_801528A0 -/* 801524BC 0014F41C 38 00 00 00 */ li r0, 0 -/* 801524C0 0014F420 50 03 07 FE */ rlwimi r3, r0, 0, 0x1f, 0x1f -/* 801524C4 0014F424 98 7F 01 E4 */ stb r3, 0x1e4(r31) -/* 801524C8 0014F428 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 801524CC 0014F42C 4B EB F4 79 */ bl DecrementPhazon__7CPlayerFv -/* 801524D0 0014F430 88 1E 0F 94 */ lbz r0, 0xf94(r30) -/* 801524D4 0014F434 38 60 00 00 */ li r3, 0 -/* 801524D8 0014F438 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e -/* 801524DC 0014F43C 98 1E 0F 94 */ stb r0, 0xf94(r30) -/* 801524E0 0014F440 48 00 03 C0 */ b lbl_801528A0 -/* 801524E4 0014F444 2C 1C 00 13 */ cmpwi r28, 0x13 -/* 801524E8 0014F448 40 82 03 B8 */ bne lbl_801528A0 -/* 801524EC 0014F44C C0 3F 00 FC */ lfs f1, 0xfc(r31) -/* 801524F0 0014F450 C0 02 9D B4 */ lfs f0, lbl_805ABAD4@sda21(r2) -/* 801524F4 0014F454 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801524F8 0014F458 4C 41 13 82 */ cror 2, 1, 2 -/* 801524FC 0014F45C 40 82 00 1C */ bne lbl_80152518 -/* 80152500 0014F460 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 80152504 0014F464 7F C5 F3 78 */ mr r5, r30 -/* 80152508 0014F468 38 80 00 01 */ li r4, 1 -/* 8015250C 0014F46C 80 63 04 90 */ lwz r3, 0x490(r3) -/* 80152510 0014F470 4B EE D7 35 */ bl DropBomb__10CPlayerGunFQ210CPlayerGun8EBWeaponR13CStateManager -/* 80152514 0014F474 48 00 03 8C */ b lbl_801528A0 -lbl_80152518: -/* 80152518 0014F478 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 8015251C 0014F47C 7F C5 F3 78 */ mr r5, r30 -/* 80152520 0014F480 38 80 00 00 */ li r4, 0 -/* 80152524 0014F484 80 63 04 90 */ lwz r3, 0x490(r3) -/* 80152528 0014F488 4B EE D7 1D */ bl DropBomb__10CPlayerGunFQ210CPlayerGun8EBWeaponR13CStateManager -/* 8015252C 0014F48C 48 00 03 74 */ b lbl_801528A0 -/* 80152530 0014F490 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) -/* 80152534 0014F494 2C 1C 00 13 */ cmpwi r28, 0x13 -/* 80152538 0014F498 38 63 01 F8 */ addi r3, r3, 0x1f8 -/* 8015253C 0014F49C 40 82 00 10 */ bne lbl_8015254C -/* 80152540 0014F4A0 38 9F 00 EC */ addi r4, r31, 0xec -/* 80152544 0014F4A4 48 11 52 69 */ bl ActivateContinueDelayHintTimer__12CHintOptionsFPCc -/* 80152548 0014F4A8 48 00 03 58 */ b lbl_801528A0 -lbl_8015254C: -/* 8015254C 0014F4AC 2C 1C 00 07 */ cmpwi r28, 7 -/* 80152550 0014F4B0 40 82 00 10 */ bne lbl_80152560 -/* 80152554 0014F4B4 38 9F 00 EC */ addi r4, r31, 0xec -/* 80152558 0014F4B8 48 11 53 59 */ bl ActivateImmediateHintTimer__12CHintOptionsFPCc -/* 8015255C 0014F4BC 48 00 03 44 */ b lbl_801528A0 -lbl_80152560: -/* 80152560 0014F4C0 2C 1C 00 05 */ cmpwi r28, 5 -/* 80152564 0014F4C4 40 82 03 3C */ bne lbl_801528A0 -/* 80152568 0014F4C8 38 9F 00 EC */ addi r4, r31, 0xec -/* 8015256C 0014F4CC 48 11 52 BD */ bl DelayHint__12CHintOptionsFPCc -/* 80152570 0014F4D0 48 00 03 30 */ b lbl_801528A0 -/* 80152574 0014F4D4 2C 1C 00 07 */ cmpwi r28, 7 -/* 80152578 0014F4D8 40 82 01 18 */ bne lbl_80152690 -/* 8015257C 0014F4DC 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) -/* 80152580 0014F4E0 80 9F 00 EC */ lwz r4, 0xec(r31) -/* 80152584 0014F4E4 81 83 00 00 */ lwz r12, 0(r3) -/* 80152588 0014F4E8 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 8015258C 0014F4EC 7D 89 03 A6 */ mtctr r12 -/* 80152590 0014F4F0 4E 80 04 21 */ bctrl -/* 80152594 0014F4F4 7C 7C 1B 79 */ or. r28, r3, r3 -/* 80152598 0014F4F8 41 82 00 0C */ beq lbl_801525A4 -/* 8015259C 0014F4FC 83 BC 00 04 */ lwz r29, 4(r28) -/* 801525A0 0014F500 48 00 00 08 */ b lbl_801525A8 -lbl_801525A4: -/* 801525A4 0014F504 3B A0 FF FF */ li r29, -1 -lbl_801525A8: -/* 801525A8 0014F508 C0 3F 01 04 */ lfs f1, 0x104(r31) -/* 801525AC 0014F50C 38 61 00 8C */ addi r3, r1, 0x8c -/* 801525B0 0014F510 C0 1F 01 08 */ lfs f0, 0x108(r31) -/* 801525B4 0014F514 FC 20 08 1E */ fctiwz f1, f1 -/* 801525B8 0014F518 FC 00 00 1E */ fctiwz f0, f0 -/* 801525BC 0014F51C D8 21 01 50 */ stfd f1, 0x150(r1) -/* 801525C0 0014F520 D8 01 01 58 */ stfd f0, 0x158(r1) -/* 801525C4 0014F524 80 81 01 54 */ lwz r4, 0x154(r1) -/* 801525C8 0014F528 80 A1 01 5C */ lwz r5, 0x15c(r1) -/* 801525CC 0014F52C 48 1C 1D 81 */ bl __ct__9CVector2iFii -/* 801525D0 0014F530 C0 3F 00 FC */ lfs f1, 0xfc(r31) -/* 801525D4 0014F534 7C 7B 1B 78 */ mr r27, r3 -/* 801525D8 0014F538 C0 1F 01 00 */ lfs f0, 0x100(r31) -/* 801525DC 0014F53C 38 61 00 94 */ addi r3, r1, 0x94 -/* 801525E0 0014F540 FC 20 08 1E */ fctiwz f1, f1 -/* 801525E4 0014F544 FC 00 00 1E */ fctiwz f0, f0 -/* 801525E8 0014F548 D8 21 01 60 */ stfd f1, 0x160(r1) -/* 801525EC 0014F54C D8 01 01 68 */ stfd f0, 0x168(r1) -/* 801525F0 0014F550 80 81 01 64 */ lwz r4, 0x164(r1) -/* 801525F4 0014F554 80 A1 01 6C */ lwz r5, 0x16c(r1) -/* 801525F8 0014F558 48 1C 1D 55 */ bl __ct__9CVector2iFii -/* 801525FC 0014F55C 7C 65 1B 78 */ mr r5, r3 -/* 80152600 0014F560 7F C3 F3 78 */ mr r3, r30 -/* 80152604 0014F564 7F A4 EB 78 */ mr r4, r29 -/* 80152608 0014F568 7F 66 DB 78 */ mr r6, r27 -/* 8015260C 0014F56C 4B EF 19 FD */ bl sub_80044008 -/* 80152610 0014F570 28 1C 00 00 */ cmplwi r28, 0 -/* 80152614 0014F574 41 82 02 8C */ beq lbl_801528A0 -/* 80152618 0014F578 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) -/* 8015261C 0014F57C 38 61 00 84 */ addi r3, r1, 0x84 -/* 80152620 0014F580 80 BF 00 EC */ lwz r5, 0xec(r31) -/* 80152624 0014F584 81 84 00 00 */ lwz r12, 0(r4) -/* 80152628 0014F588 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 8015262C 0014F58C 7D 89 03 A6 */ mtctr r12 -/* 80152630 0014F590 4E 80 04 21 */ bctrl -/* 80152634 0014F594 88 1F 01 F0 */ lbz r0, 0x1f0(r31) -/* 80152638 0014F598 28 00 00 00 */ cmplwi r0, 0 -/* 8015263C 0014F59C 40 82 00 20 */ bne lbl_8015265C -/* 80152640 0014F5A0 34 7F 01 E8 */ addic. r3, r31, 0x1e8 -/* 80152644 0014F5A4 41 82 00 0C */ beq lbl_80152650 -/* 80152648 0014F5A8 38 81 00 84 */ addi r4, r1, 0x84 -/* 8015264C 0014F5AC 48 1E E8 5D */ bl __ct__6CTokenFRC6CToken -lbl_80152650: -/* 80152650 0014F5B0 38 00 00 01 */ li r0, 1 -/* 80152654 0014F5B4 98 1F 01 F0 */ stb r0, 0x1f0(r31) -/* 80152658 0014F5B8 48 00 00 10 */ b lbl_80152668 -lbl_8015265C: -/* 8015265C 0014F5BC 38 7F 01 E8 */ addi r3, r31, 0x1e8 -/* 80152660 0014F5C0 38 81 00 84 */ addi r4, r1, 0x84 -/* 80152664 0014F5C4 48 1E E6 61 */ bl __as__6CTokenFRC6CToken -lbl_80152668: -/* 80152668 0014F5C8 38 61 00 84 */ addi r3, r1, 0x84 -/* 8015266C 0014F5CC 38 80 FF FF */ li r4, -1 -/* 80152670 0014F5D0 48 1E E7 D1 */ bl __dt__6CTokenFv -/* 80152674 0014F5D4 38 7F 01 E8 */ addi r3, r31, 0x1e8 -/* 80152678 0014F5D8 48 1E E7 0D */ bl Lock__6CTokenFv -/* 8015267C 0014F5DC 88 1F 01 E5 */ lbz r0, 0x1e5(r31) -/* 80152680 0014F5E0 38 60 00 01 */ li r3, 1 -/* 80152684 0014F5E4 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 80152688 0014F5E8 98 1F 01 E5 */ stb r0, 0x1e5(r31) -/* 8015268C 0014F5EC 48 00 02 14 */ b lbl_801528A0 -lbl_80152690: -/* 80152690 0014F5F0 2C 1C 00 05 */ cmpwi r28, 5 -/* 80152694 0014F5F4 40 82 02 0C */ bne lbl_801528A0 -/* 80152698 0014F5F8 C0 3F 01 04 */ lfs f1, 0x104(r31) -/* 8015269C 0014F5FC 38 61 00 74 */ addi r3, r1, 0x74 -/* 801526A0 0014F600 C0 1F 01 08 */ lfs f0, 0x108(r31) -/* 801526A4 0014F604 FC 20 08 1E */ fctiwz f1, f1 -/* 801526A8 0014F608 FC 00 00 1E */ fctiwz f0, f0 -/* 801526AC 0014F60C D8 21 01 68 */ stfd f1, 0x168(r1) -/* 801526B0 0014F610 D8 01 01 60 */ stfd f0, 0x160(r1) -/* 801526B4 0014F614 80 81 01 6C */ lwz r4, 0x16c(r1) -/* 801526B8 0014F618 80 A1 01 64 */ lwz r5, 0x164(r1) -/* 801526BC 0014F61C 48 1C 1C 91 */ bl __ct__9CVector2iFii -/* 801526C0 0014F620 C0 3F 00 FC */ lfs f1, 0xfc(r31) -/* 801526C4 0014F624 7C 7B 1B 78 */ mr r27, r3 -/* 801526C8 0014F628 C0 1F 01 00 */ lfs f0, 0x100(r31) -/* 801526CC 0014F62C 38 61 00 7C */ addi r3, r1, 0x7c -/* 801526D0 0014F630 FC 20 08 1E */ fctiwz f1, f1 -/* 801526D4 0014F634 FC 00 00 1E */ fctiwz f0, f0 -/* 801526D8 0014F638 D8 21 01 58 */ stfd f1, 0x158(r1) -/* 801526DC 0014F63C D8 01 01 50 */ stfd f0, 0x150(r1) -/* 801526E0 0014F640 80 81 01 5C */ lwz r4, 0x15c(r1) -/* 801526E4 0014F644 80 A1 01 54 */ lwz r5, 0x154(r1) -/* 801526E8 0014F648 48 1C 1C 65 */ bl __ct__9CVector2iFii -/* 801526EC 0014F64C 7C 65 1B 78 */ mr r5, r3 -/* 801526F0 0014F650 7F C3 F3 78 */ mr r3, r30 -/* 801526F4 0014F654 7F 66 DB 78 */ mr r6, r27 -/* 801526F8 0014F658 38 80 FF FF */ li r4, -1 -/* 801526FC 0014F65C 4B EF 19 0D */ bl sub_80044008 -/* 80152700 0014F660 38 7F 01 E8 */ addi r3, r31, 0x1e8 -/* 80152704 0014F664 38 81 00 D4 */ addi r4, r1, 0xd4 -/* 80152708 0014F668 38 00 00 00 */ li r0, 0 -/* 8015270C 0014F66C 7C 03 20 40 */ cmplw r3, r4 -/* 80152710 0014F670 98 01 00 DC */ stb r0, 0xdc(r1) -/* 80152714 0014F674 41 82 00 54 */ beq lbl_80152768 -/* 80152718 0014F678 28 00 00 00 */ cmplwi r0, 0 -/* 8015271C 0014F67C 41 82 00 30 */ beq lbl_8015274C -/* 80152720 0014F680 88 1F 01 F0 */ lbz r0, 0x1f0(r31) -/* 80152724 0014F684 28 00 00 00 */ cmplwi r0, 0 -/* 80152728 0014F688 40 82 00 1C */ bne lbl_80152744 -/* 8015272C 0014F68C 34 7F 01 E8 */ addic. r3, r31, 0x1e8 -/* 80152730 0014F690 41 82 00 08 */ beq lbl_80152738 -/* 80152734 0014F694 48 1E E7 75 */ bl __ct__6CTokenFRC6CToken -lbl_80152738: -/* 80152738 0014F698 38 00 00 01 */ li r0, 1 -/* 8015273C 0014F69C 98 1F 01 F0 */ stb r0, 0x1f0(r31) -/* 80152740 0014F6A0 48 00 00 28 */ b lbl_80152768 -lbl_80152744: -/* 80152744 0014F6A4 48 1E E5 81 */ bl __as__6CTokenFRC6CToken -/* 80152748 0014F6A8 48 00 00 20 */ b lbl_80152768 -lbl_8015274C: -/* 8015274C 0014F6AC 88 1F 01 F0 */ lbz r0, 0x1f0(r31) -/* 80152750 0014F6B0 28 00 00 00 */ cmplwi r0, 0 -/* 80152754 0014F6B4 41 82 00 0C */ beq lbl_80152760 -/* 80152758 0014F6B8 38 80 FF FF */ li r4, -1 -/* 8015275C 0014F6BC 48 1E E6 E5 */ bl __dt__6CTokenFv -lbl_80152760: -/* 80152760 0014F6C0 38 00 00 00 */ li r0, 0 -/* 80152764 0014F6C4 98 1F 01 F0 */ stb r0, 0x1f0(r31) -lbl_80152768: -/* 80152768 0014F6C8 88 01 00 DC */ lbz r0, 0xdc(r1) -/* 8015276C 0014F6CC 28 00 00 00 */ cmplwi r0, 0 -/* 80152770 0014F6D0 41 82 00 10 */ beq lbl_80152780 -/* 80152774 0014F6D4 38 61 00 D4 */ addi r3, r1, 0xd4 -/* 80152778 0014F6D8 38 80 FF FF */ li r4, -1 -/* 8015277C 0014F6DC 48 1E E6 C5 */ bl __dt__6CTokenFv -lbl_80152780: -/* 80152780 0014F6E0 38 60 00 00 */ li r3, 0 -/* 80152784 0014F6E4 98 61 00 DC */ stb r3, 0xdc(r1) -/* 80152788 0014F6E8 88 1F 01 E5 */ lbz r0, 0x1e5(r31) -/* 8015278C 0014F6EC 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 80152790 0014F6F0 98 1F 01 E5 */ stb r0, 0x1e5(r31) -/* 80152794 0014F6F4 48 00 01 0C */ b lbl_801528A0 -/* 80152798 0014F6F8 2C 1C 00 13 */ cmpwi r28, 0x13 -/* 8015279C 0014F6FC 41 82 00 0C */ beq lbl_801527A8 -/* 801527A0 0014F700 2C 1C 00 0D */ cmpwi r28, 0xd -/* 801527A4 0014F704 40 82 00 FC */ bne lbl_801528A0 -lbl_801527A8: -/* 801527A8 0014F708 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 801527AC 0014F70C 80 1F 00 04 */ lwz r0, 4(r31) -/* 801527B0 0014F710 80 63 00 04 */ lwz r3, 4(r3) -/* 801527B4 0014F714 7C 03 00 00 */ cmpw r3, r0 -/* 801527B8 0014F718 40 82 00 E8 */ bne lbl_801528A0 -/* 801527BC 0014F71C 7F E3 FB 78 */ mr r3, r31 -/* 801527C0 0014F720 7F C5 F3 78 */ mr r5, r30 -/* 801527C4 0014F724 38 80 00 09 */ li r4, 9 -/* 801527C8 0014F728 38 C0 FF FF */ li r6, -1 -/* 801527CC 0014F72C 4B EF E8 F5 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 801527D0 0014F730 48 00 00 D0 */ b lbl_801528A0 -/* 801527D4 0014F734 2C 1C 00 07 */ cmpwi r28, 7 -/* 801527D8 0014F738 40 82 00 1C */ bne lbl_801527F4 -/* 801527DC 0014F73C 7F E3 FB 78 */ mr r3, r31 -/* 801527E0 0014F740 7F C6 F3 78 */ mr r6, r30 -/* 801527E4 0014F744 38 80 00 28 */ li r4, 0x28 -/* 801527E8 0014F748 38 A0 00 33 */ li r5, 0x33 -/* 801527EC 0014F74C 4B F0 1A C9 */ bl AddMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager -/* 801527F0 0014F750 48 00 00 B0 */ b lbl_801528A0 -lbl_801527F4: -/* 801527F4 0014F754 2C 1C 00 05 */ cmpwi r28, 5 -/* 801527F8 0014F758 40 82 00 A8 */ bne lbl_801528A0 -/* 801527FC 0014F75C 7F E3 FB 78 */ mr r3, r31 -/* 80152800 0014F760 7F C6 F3 78 */ mr r6, r30 -/* 80152804 0014F764 38 80 00 28 */ li r4, 0x28 -/* 80152808 0014F768 38 A0 00 33 */ li r5, 0x33 -/* 8015280C 0014F76C 4B F0 16 C9 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager -/* 80152810 0014F770 48 00 00 90 */ b lbl_801528A0 -/* 80152814 0014F774 2C 1C 00 07 */ cmpwi r28, 7 -/* 80152818 0014F778 C0 5F 01 00 */ lfs f2, 0x100(r31) -/* 8015281C 0014F77C 40 82 00 14 */ bne lbl_80152830 -/* 80152820 0014F780 80 7E 08 70 */ lwz r3, 0x870(r30) -/* 80152824 0014F784 C0 3F 00 FC */ lfs f1, 0xfc(r31) -/* 80152828 0014F788 4B EB 8D A5 */ bl sub_8000b5cc -/* 8015282C 0014F78C 48 00 00 74 */ b lbl_801528A0 -lbl_80152830: -/* 80152830 0014F790 2C 1C 00 05 */ cmpwi r28, 5 -/* 80152834 0014F794 40 82 00 6C */ bne lbl_801528A0 -/* 80152838 0014F798 80 7E 08 70 */ lwz r3, 0x870(r30) -/* 8015283C 0014F79C C0 22 9D B4 */ lfs f1, lbl_805ABAD4@sda21(r2) -/* 80152840 0014F7A0 4B EB 8D 8D */ bl sub_8000b5cc -/* 80152844 0014F7A4 48 00 00 5C */ b lbl_801528A0 -/* 80152848 0014F7A8 2C 1C 00 13 */ cmpwi r28, 0x13 -/* 8015284C 0014F7AC 40 82 00 54 */ bne lbl_801528A0 -/* 80152850 0014F7B0 7F C3 F3 78 */ mr r3, r30 -/* 80152854 0014F7B4 38 80 00 03 */ li r4, 3 -/* 80152858 0014F7B8 4B EF 20 09 */ bl DeferStateTransition__13CStateManagerF23EStateManagerTransition -/* 8015285C 0014F7BC 48 00 00 44 */ b lbl_801528A0 -/* 80152860 0014F7C0 2C 1C 00 13 */ cmpwi r28, 0x13 -/* 80152864 0014F7C4 40 82 00 3C */ bne lbl_801528A0 -/* 80152868 0014F7C8 7F E3 FB 78 */ mr r3, r31 -/* 8015286C 0014F7CC 7F C4 F3 78 */ mr r4, r30 -/* 80152870 0014F7D0 4B FF CA C5 */ bl GetSpecialEnding__22CScriptSpecialFunctionCFv -/* 80152874 0014F7D4 C0 1F 00 FC */ lfs f0, 0xfc(r31) -/* 80152878 0014F7D8 FC 00 00 1E */ fctiwz f0, f0 -/* 8015287C 0014F7DC D8 01 01 68 */ stfd f0, 0x168(r1) -/* 80152880 0014F7E0 80 01 01 6C */ lwz r0, 0x16c(r1) -/* 80152884 0014F7E4 7C 03 00 00 */ cmpw r3, r0 -/* 80152888 0014F7E8 40 82 00 18 */ bne lbl_801528A0 -/* 8015288C 0014F7EC 7F E3 FB 78 */ mr r3, r31 -/* 80152890 0014F7F0 7F C5 F3 78 */ mr r5, r30 -/* 80152894 0014F7F4 38 80 00 09 */ li r4, 9 -/* 80152898 0014F7F8 38 C0 FF FF */ li r6, -1 -/* 8015289C 0014F7FC 4B EF E8 25 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -lbl_801528A0: -/* 801528A0 0014F800 E3 E1 01 B8 */ psq_l f31, 440(r1), 0, qr0 -/* 801528A4 0014F804 CB E1 01 B0 */ lfd f31, 0x1b0(r1) -/* 801528A8 0014F808 E3 C1 01 A8 */ psq_l f30, 424(r1), 0, qr0 -/* 801528AC 0014F80C CB C1 01 A0 */ lfd f30, 0x1a0(r1) -/* 801528B0 0014F810 E3 A1 01 98 */ psq_l f29, 408(r1), 0, qr0 -/* 801528B4 0014F814 CB A1 01 90 */ lfd f29, 0x190(r1) -/* 801528B8 0014F818 BB 41 01 78 */ lmw r26, 0x178(r1) -/* 801528BC 0014F81C 80 01 01 C4 */ lwz r0, 0x1c4(r1) -/* 801528C0 0014F820 7C 08 03 A6 */ mtlr r0 -/* 801528C4 0014F824 38 21 01 C0 */ addi r1, r1, 0x1c0 -/* 801528C8 0014F828 4E 80 00 20 */ blr - -.global PreRender__22CScriptSpecialFunctionFR13CStateManagerRC14CFrustumPlanes -PreRender__22CScriptSpecialFunctionFR13CStateManagerRC14CFrustumPlanes: -/* 801528CC 0014F82C 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 801528D0 0014F830 7C 08 02 A6 */ mflr r0 -/* 801528D4 0014F834 90 01 00 54 */ stw r0, 0x54(r1) -/* 801528D8 0014F838 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 801528DC 0014F83C 7C BF 2B 78 */ mr r31, r5 -/* 801528E0 0014F840 93 C1 00 48 */ stw r30, 0x48(r1) -/* 801528E4 0014F844 7C 7E 1B 78 */ mr r30, r3 -/* 801528E8 0014F848 80 63 00 E8 */ lwz r3, 0xe8(r3) -/* 801528EC 0014F84C 2C 03 00 2F */ cmpwi r3, 0x2f -/* 801528F0 0014F850 41 82 00 14 */ beq lbl_80152904 -/* 801528F4 0014F854 40 80 01 00 */ bge lbl_801529F4 -/* 801528F8 0014F858 2C 03 00 09 */ cmpwi r3, 9 -/* 801528FC 0014F85C 41 82 00 08 */ beq lbl_80152904 -/* 80152900 0014F860 48 00 00 F4 */ b lbl_801529F4 -lbl_80152904: -/* 80152904 0014F864 88 1E 00 30 */ lbz r0, 0x30(r30) -/* 80152908 0014F868 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8015290C 0014F86C 41 82 00 E8 */ beq lbl_801529F4 -/* 80152910 0014F870 2C 03 00 2F */ cmpwi r3, 0x2f -/* 80152914 0014F874 40 82 00 78 */ bne lbl_8015298C -/* 80152918 0014F878 C0 5E 00 60 */ lfs f2, 0x60(r30) -/* 8015291C 0014F87C 38 61 00 2C */ addi r3, r1, 0x2c -/* 80152920 0014F880 C0 1E 01 14 */ lfs f0, 0x114(r30) -/* 80152924 0014F884 38 81 00 14 */ addi r4, r1, 0x14 -/* 80152928 0014F888 C0 7E 00 50 */ lfs f3, 0x50(r30) -/* 8015292C 0014F88C 38 A1 00 20 */ addi r5, r1, 0x20 -/* 80152930 0014F890 C0 3E 01 10 */ lfs f1, 0x110(r30) -/* 80152934 0014F894 EC 82 00 2A */ fadds f4, f2, f0 -/* 80152938 0014F898 C0 DE 00 40 */ lfs f6, 0x40(r30) -/* 8015293C 0014F89C EC 42 00 28 */ fsubs f2, f2, f0 -/* 80152940 0014F8A0 C0 1E 01 0C */ lfs f0, 0x10c(r30) -/* 80152944 0014F8A4 EC A3 08 2A */ fadds f5, f3, f1 -/* 80152948 0014F8A8 EC 63 08 28 */ fsubs f3, f3, f1 -/* 8015294C 0014F8AC EC 26 00 2A */ fadds f1, f6, f0 -/* 80152950 0014F8B0 D0 81 00 28 */ stfs f4, 0x28(r1) -/* 80152954 0014F8B4 EC 06 00 28 */ fsubs f0, f6, f0 -/* 80152958 0014F8B8 D0 A1 00 24 */ stfs f5, 0x24(r1) -/* 8015295C 0014F8BC D0 21 00 20 */ stfs f1, 0x20(r1) -/* 80152960 0014F8C0 C0 3E 00 FC */ lfs f1, 0xfc(r30) -/* 80152964 0014F8C4 EC 24 08 2A */ fadds f1, f4, f1 -/* 80152968 0014F8C8 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 8015296C 0014F8CC D0 61 00 18 */ stfs f3, 0x18(r1) -/* 80152970 0014F8D0 D0 21 00 28 */ stfs f1, 0x28(r1) -/* 80152974 0014F8D4 D0 41 00 1C */ stfs f2, 0x1c(r1) -/* 80152978 0014F8D8 48 1E 5B 91 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 8015297C 0014F8DC 7F E3 FB 78 */ mr r3, r31 -/* 80152980 0014F8E0 38 81 00 2C */ addi r4, r1, 0x2c -/* 80152984 0014F8E4 48 1F 28 4D */ bl BoxInFrustumPlanes__14CFrustumPlanesCFRC6CAABox -/* 80152988 0014F8E8 48 00 00 28 */ b lbl_801529B0 -lbl_8015298C: -/* 8015298C 0014F8EC C0 5E 00 60 */ lfs f2, 0x60(r30) -/* 80152990 0014F8F0 7F E3 FB 78 */ mr r3, r31 -/* 80152994 0014F8F4 C0 3E 00 50 */ lfs f1, 0x50(r30) -/* 80152998 0014F8F8 38 81 00 08 */ addi r4, r1, 8 -/* 8015299C 0014F8FC C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 801529A0 0014F900 D0 01 00 08 */ stfs f0, 8(r1) -/* 801529A4 0014F904 D0 21 00 0C */ stfs f1, 0xc(r1) -/* 801529A8 0014F908 D0 41 00 10 */ stfs f2, 0x10(r1) -/* 801529AC 0014F90C 48 1F 26 21 */ bl PointInFrustumPlanes__14CFrustumPlanesCFRC9CVector3f -lbl_801529B0: -/* 801529B0 0014F910 88 BE 01 E4 */ lbz r5, 0x1e4(r30) -/* 801529B4 0014F914 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 801529B8 0014F918 54 A4 FF FE */ rlwinm r4, r5, 0x1f, 0x1f, 0x1f -/* 801529BC 0014F91C 7C 04 00 40 */ cmplw r4, r0 -/* 801529C0 0014F920 41 82 00 34 */ beq lbl_801529F4 -/* 801529C4 0014F924 28 00 00 00 */ cmplwi r0, 0 -/* 801529C8 0014F928 41 82 00 14 */ beq lbl_801529DC -/* 801529CC 0014F92C 38 00 00 01 */ li r0, 1 -/* 801529D0 0014F930 50 05 1F 38 */ rlwimi r5, r0, 3, 0x1c, 0x1c -/* 801529D4 0014F934 98 BE 01 E4 */ stb r5, 0x1e4(r30) -/* 801529D8 0014F938 48 00 00 10 */ b lbl_801529E8 -lbl_801529DC: -/* 801529DC 0014F93C 38 00 00 01 */ li r0, 1 -/* 801529E0 0014F940 50 05 17 7A */ rlwimi r5, r0, 2, 0x1d, 0x1d -/* 801529E4 0014F944 98 BE 01 E4 */ stb r5, 0x1e4(r30) -lbl_801529E8: -/* 801529E8 0014F948 88 1E 01 E4 */ lbz r0, 0x1e4(r30) -/* 801529EC 0014F94C 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e -/* 801529F0 0014F950 98 1E 01 E4 */ stb r0, 0x1e4(r30) -lbl_801529F4: -/* 801529F4 0014F954 80 01 00 54 */ lwz r0, 0x54(r1) -/* 801529F8 0014F958 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 801529FC 0014F95C 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 80152A00 0014F960 7C 08 03 A6 */ mtlr r0 -/* 80152A04 0014F964 38 21 00 50 */ addi r1, r1, 0x50 -/* 80152A08 0014F968 4E 80 00 20 */ blr - -.global AddToRenderer__22CScriptSpecialFunctionCFRC14CFrustumPlanesRC13CStateManager -AddToRenderer__22CScriptSpecialFunctionCFRC14CFrustumPlanesRC13CStateManager: -/* 80152A0C 0014F96C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80152A10 0014F970 7C 08 02 A6 */ mflr r0 -/* 80152A14 0014F974 90 01 00 14 */ stw r0, 0x14(r1) -/* 80152A18 0014F978 88 03 00 30 */ lbz r0, 0x30(r3) -/* 80152A1C 0014F97C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80152A20 0014F980 41 82 00 24 */ beq lbl_80152A44 -/* 80152A24 0014F984 80 03 00 E8 */ lwz r0, 0xe8(r3) -/* 80152A28 0014F988 2C 00 00 2F */ cmpwi r0, 0x2f -/* 80152A2C 0014F98C 40 82 00 18 */ bne lbl_80152A44 -/* 80152A30 0014F990 88 03 01 E4 */ lbz r0, 0x1e4(r3) -/* 80152A34 0014F994 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f -/* 80152A38 0014F998 41 82 00 0C */ beq lbl_80152A44 -/* 80152A3C 0014F99C 7C A4 2B 78 */ mr r4, r5 -/* 80152A40 0014F9A0 4B F0 1F 8D */ bl EnsureRendered__6CActorCFRC13CStateManager -lbl_80152A44: -/* 80152A44 0014F9A4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80152A48 0014F9A8 7C 08 03 A6 */ mtlr r0 -/* 80152A4C 0014F9AC 38 21 00 10 */ addi r1, r1, 0x10 -/* 80152A50 0014F9B0 4E 80 00 20 */ blr - -.global Think__22CScriptSpecialFunctionFfR13CStateManager -Think__22CScriptSpecialFunctionFfR13CStateManager: -/* 80152A54 0014F9B4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80152A58 0014F9B8 7C 08 02 A6 */ mflr r0 -/* 80152A5C 0014F9BC 90 01 00 14 */ stw r0, 0x14(r1) -/* 80152A60 0014F9C0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80152A64 0014F9C4 7C 9F 23 78 */ mr r31, r4 -/* 80152A68 0014F9C8 93 C1 00 08 */ stw r30, 8(r1) -/* 80152A6C 0014F9CC 7C 7E 1B 78 */ mr r30, r3 -/* 80152A70 0014F9D0 88 03 00 30 */ lbz r0, 0x30(r3) -/* 80152A74 0014F9D4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80152A78 0014F9D8 41 82 01 30 */ beq lbl_80152BA8 -/* 80152A7C 0014F9DC 80 1E 00 E8 */ lwz r0, 0xe8(r30) -/* 80152A80 0014F9E0 28 00 00 19 */ cmplwi r0, 0x19 -/* 80152A84 0014F9E4 41 81 01 24 */ bgt lbl_80152BA8 -/* 80152A88 0014F9E8 3C A0 80 3E */ lis r5, lbl_803E2CA0@ha -/* 80152A8C 0014F9EC 54 00 10 3A */ slwi r0, r0, 2 -/* 80152A90 0014F9F0 38 A5 2C A0 */ addi r5, r5, lbl_803E2CA0@l -/* 80152A94 0014F9F4 7C 05 00 2E */ lwzx r0, r5, r0 -/* 80152A98 0014F9F8 7C 09 03 A6 */ mtctr r0 -/* 80152A9C 0014F9FC 4E 80 04 20 */ bctr -/* 80152AA0 0014FA00 4B FF E4 D1 */ bl ThinkPlayerFollowLocator__22CScriptSpecialFunctionFfR13CStateManager -/* 80152AA4 0014FA04 48 00 01 04 */ b lbl_80152BA8 -/* 80152AA8 0014FA08 38 A0 00 00 */ li r5, 0 -/* 80152AAC 0014FA0C 4B FF D7 E1 */ bl ThinkSpinnerController__22CScriptSpecialFunctionFfR13CStateManagerQ222CScriptSpecialFunction22ESpinnerControllerMode -/* 80152AB0 0014FA10 48 00 00 F8 */ b lbl_80152BA8 -/* 80152AB4 0014FA14 38 A0 00 01 */ li r5, 1 -/* 80152AB8 0014FA18 4B FF D7 D5 */ bl ThinkSpinnerController__22CScriptSpecialFunctionFfR13CStateManagerQ222CScriptSpecialFunction22ESpinnerControllerMode -/* 80152ABC 0014FA1C 48 00 00 EC */ b lbl_80152BA8 -/* 80152AC0 0014FA20 4B FF D5 99 */ bl ThinkObjectFollowLocator__22CScriptSpecialFunctionFfR13CStateManager -/* 80152AC4 0014FA24 48 00 00 E4 */ b lbl_80152BA8 -/* 80152AC8 0014FA28 4B FF D3 CD */ bl ThinkObjectFollowObject__22CScriptSpecialFunctionFfR13CStateManager -/* 80152ACC 0014FA2C 48 00 00 DC */ b lbl_80152BA8 -/* 80152AD0 0014FA30 4B FF CE F1 */ bl ThinkChaffTarget__22CScriptSpecialFunctionFfR13CStateManager -/* 80152AD4 0014FA34 48 00 00 D4 */ b lbl_80152BA8 -/* 80152AD8 0014FA38 88 9E 01 E4 */ lbz r4, 0x1e4(r30) -/* 80152ADC 0014FA3C 54 80 EF FF */ rlwinm. r0, r4, 0x1d, 0x1f, 0x1f -/* 80152AE0 0014FA40 41 82 00 20 */ beq lbl_80152B00 -/* 80152AE4 0014FA44 38 00 00 00 */ li r0, 0 -/* 80152AE8 0014FA48 7F E5 FB 78 */ mr r5, r31 -/* 80152AEC 0014FA4C 50 04 1F 38 */ rlwimi r4, r0, 3, 0x1c, 0x1c -/* 80152AF0 0014FA50 38 C0 FF FF */ li r6, -1 -/* 80152AF4 0014FA54 98 9E 01 E4 */ stb r4, 0x1e4(r30) -/* 80152AF8 0014FA58 38 80 00 03 */ li r4, 3 -/* 80152AFC 0014FA5C 4B EF E5 C5 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -lbl_80152B00: -/* 80152B00 0014FA60 88 9E 01 E4 */ lbz r4, 0x1e4(r30) -/* 80152B04 0014FA64 54 80 F7 FF */ rlwinm. r0, r4, 0x1e, 0x1f, 0x1f -/* 80152B08 0014FA68 41 82 00 A0 */ beq lbl_80152BA8 -/* 80152B0C 0014FA6C 38 00 00 00 */ li r0, 0 -/* 80152B10 0014FA70 7F C3 F3 78 */ mr r3, r30 -/* 80152B14 0014FA74 50 04 17 7A */ rlwimi r4, r0, 2, 0x1d, 0x1d -/* 80152B18 0014FA78 7F E5 FB 78 */ mr r5, r31 -/* 80152B1C 0014FA7C 98 9E 01 E4 */ stb r4, 0x1e4(r30) -/* 80152B20 0014FA80 38 80 00 04 */ li r4, 4 -/* 80152B24 0014FA84 38 C0 FF FF */ li r6, -1 -/* 80152B28 0014FA88 4B EF E5 99 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 80152B2C 0014FA8C 48 00 00 7C */ b lbl_80152BA8 -/* 80152B30 0014FA90 4B FF EB 7D */ bl ThinkSaveStation__22CScriptSpecialFunctionFfR13CStateManager -/* 80152B34 0014FA94 48 00 00 74 */ b lbl_80152BA8 -/* 80152B38 0014FA98 4B FF E5 E5 */ bl ThinkIntroBossRingController__22CScriptSpecialFunctionFfR13CStateManager -/* 80152B3C 0014FA9C 48 00 00 6C */ b lbl_80152BA8 -/* 80152B40 0014FAA0 4B FF CD F9 */ bl ThinkRainSimulator__22CScriptSpecialFunctionFfR13CStateManager -/* 80152B44 0014FAA4 48 00 00 64 */ b lbl_80152BA8 -/* 80152B48 0014FAA8 4B FF CB F1 */ bl ThinkAreaDamage__22CScriptSpecialFunctionFfR13CStateManager -/* 80152B4C 0014FAAC 48 00 00 5C */ b lbl_80152BA8 -/* 80152B50 0014FAB0 4B FF C9 F1 */ bl sub_8014f540 -/* 80152B54 0014FAB4 48 00 00 54 */ b lbl_80152BA8 -/* 80152B58 0014FAB8 4B FF C9 65 */ bl ThinkPlayerInArea__22CScriptSpecialFunctionFfR13CStateManager -/* 80152B5C 0014FABC 48 00 00 4C */ b lbl_80152BA8 -/* 80152B60 0014FAC0 88 1E 01 F0 */ lbz r0, 0x1f0(r30) -/* 80152B64 0014FAC4 28 00 00 00 */ cmplwi r0, 0 -/* 80152B68 0014FAC8 41 82 00 40 */ beq lbl_80152BA8 -/* 80152B6C 0014FACC 80 9E 01 E8 */ lwz r4, 0x1e8(r30) -/* 80152B70 0014FAD0 80 04 00 10 */ lwz r0, 0x10(r4) -/* 80152B74 0014FAD4 28 00 00 00 */ cmplwi r0, 0 -/* 80152B78 0014FAD8 41 82 00 30 */ beq lbl_80152BA8 -/* 80152B7C 0014FADC 88 1E 01 E5 */ lbz r0, 0x1e5(r30) -/* 80152B80 0014FAE0 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f -/* 80152B84 0014FAE4 41 82 00 24 */ beq lbl_80152BA8 -/* 80152B88 0014FAE8 7F E5 FB 78 */ mr r5, r31 -/* 80152B8C 0014FAEC 38 80 00 07 */ li r4, 7 -/* 80152B90 0014FAF0 38 C0 FF FF */ li r6, -1 -/* 80152B94 0014FAF4 4B EF E5 2D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 80152B98 0014FAF8 88 1E 01 E5 */ lbz r0, 0x1e5(r30) -/* 80152B9C 0014FAFC 38 60 00 00 */ li r3, 0 -/* 80152BA0 0014FB00 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 80152BA4 0014FB04 98 1E 01 E5 */ stb r0, 0x1e5(r30) -lbl_80152BA8: -/* 80152BA8 0014FB08 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80152BAC 0014FB0C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80152BB0 0014FB10 83 C1 00 08 */ lwz r30, 8(r1) -/* 80152BB4 0014FB14 7C 08 03 A6 */ mtlr r0 -/* 80152BB8 0014FB18 38 21 00 10 */ addi r1, r1, 0x10 -/* 80152BBC 0014FB1C 4E 80 00 20 */ blr - -.global "__ct__22CScriptSpecialFunctionF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fQ222CScriptSpecialFunction16ESpecialFunctionRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>ffffRC9CVector3fRC6CColorbRC11CDamageInfoUiUiUiUsUsUs" -"__ct__22CScriptSpecialFunctionF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fQ222CScriptSpecialFunction16ESpecialFunctionRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>ffffRC9CVector3fRC6CColorbRC11CDamageInfoUiUiUiUsUsUs": -/* 80152BC0 0014FB20 94 21 FE 70 */ stwu r1, -0x190(r1) -/* 80152BC4 0014FB24 7C 08 02 A6 */ mflr r0 -/* 80152BC8 0014FB28 90 01 01 94 */ stw r0, 0x194(r1) -/* 80152BCC 0014FB2C DB E1 01 80 */ stfd f31, 0x180(r1) -/* 80152BD0 0014FB30 F3 E1 01 88 */ psq_st f31, 392(r1), 0, qr0 -/* 80152BD4 0014FB34 DB C1 01 70 */ stfd f30, 0x170(r1) -/* 80152BD8 0014FB38 F3 C1 01 78 */ psq_st f30, 376(r1), 0, qr0 -/* 80152BDC 0014FB3C DB A1 01 60 */ stfd f29, 0x160(r1) -/* 80152BE0 0014FB40 F3 A1 01 68 */ psq_st f29, 360(r1), 0, qr0 -/* 80152BE4 0014FB44 DB 81 01 50 */ stfd f28, 0x150(r1) -/* 80152BE8 0014FB48 F3 81 01 58 */ psq_st f28, 344(r1), 0, qr0 -/* 80152BEC 0014FB4C BD E1 01 0C */ stmw r15, 0x10c(r1) -/* 80152BF0 0014FB50 FF 80 08 90 */ fmr f28, f1 -/* 80152BF4 0014FB54 7C 7A 1B 78 */ mr r26, r3 -/* 80152BF8 0014FB58 FF A0 10 90 */ fmr f29, f2 -/* 80152BFC 0014FB5C 82 21 01 98 */ lwz r17, 0x198(r1) -/* 80152C00 0014FB60 FF C0 18 90 */ fmr f30, f3 -/* 80152C04 0014FB64 8A 41 01 9F */ lbz r18, 0x19f(r1) -/* 80152C08 0014FB68 FF E0 20 90 */ fmr f31, f4 -/* 80152C0C 0014FB6C 82 61 01 A0 */ lwz r19, 0x1a0(r1) -/* 80152C10 0014FB70 82 81 01 A4 */ lwz r20, 0x1a4(r1) -/* 80152C14 0014FB74 7C 9B 23 78 */ mr r27, r4 -/* 80152C18 0014FB78 82 A1 01 A8 */ lwz r21, 0x1a8(r1) -/* 80152C1C 0014FB7C 7C BC 2B 78 */ mr r28, r5 -/* 80152C20 0014FB80 82 C1 01 AC */ lwz r22, 0x1ac(r1) -/* 80152C24 0014FB84 7C DD 33 78 */ mr r29, r6 -/* 80152C28 0014FB88 A2 E1 01 B2 */ lhz r23, 0x1b2(r1) -/* 80152C2C 0014FB8C 7C FE 3B 78 */ mr r30, r7 -/* 80152C30 0014FB90 A3 01 01 B6 */ lhz r24, 0x1b6(r1) -/* 80152C34 0014FB94 7D 1F 43 78 */ mr r31, r8 -/* 80152C38 0014FB98 A3 21 01 BA */ lhz r25, 0x1ba(r1) -/* 80152C3C 0014FB9C 7D 2F 4B 78 */ mr r15, r9 -/* 80152C40 0014FBA0 7D 50 53 78 */ mr r16, r10 -/* 80152C44 0014FBA4 38 61 00 B8 */ addi r3, r1, 0xb8 -/* 80152C48 0014FBA8 4B EE 7B 5D */ bl CModelDataNull__10CModelDataFv -/* 80152C4C 0014FBAC 38 61 00 50 */ addi r3, r1, 0x50 -/* 80152C50 0014FBB0 4B EC 81 E9 */ bl None__16CActorParametersFv -/* 80152C54 0014FBB4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80152C58 0014FBB8 38 80 00 00 */ li r4, 0 -/* 80152C5C 0014FBBC A1 9B 00 00 */ lhz r12, 0(r27) -/* 80152C60 0014FBC0 39 61 00 50 */ addi r11, r1, 0x50 -/* 80152C64 0014FBC4 B0 01 00 10 */ sth r0, 0x10(r1) -/* 80152C68 0014FBC8 38 01 00 10 */ addi r0, r1, 0x10 -/* 80152C6C 0014FBCC 7F 43 D3 78 */ mr r3, r26 -/* 80152C70 0014FBD0 7E 45 93 78 */ mr r5, r18 -/* 80152C74 0014FBD4 90 81 00 1C */ stw r4, 0x1c(r1) -/* 80152C78 0014FBD8 7F 86 E3 78 */ mr r6, r28 -/* 80152C7C 0014FBDC 7F A7 EB 78 */ mr r7, r29 -/* 80152C80 0014FBE0 7F C8 F3 78 */ mr r8, r30 -/* 80152C84 0014FBE4 90 81 00 18 */ stw r4, 0x18(r1) -/* 80152C88 0014FBE8 38 81 00 14 */ addi r4, r1, 0x14 -/* 80152C8C 0014FBEC 39 21 00 B8 */ addi r9, r1, 0xb8 -/* 80152C90 0014FBF0 39 41 00 18 */ addi r10, r1, 0x18 -/* 80152C94 0014FBF4 B1 81 00 14 */ sth r12, 0x14(r1) -/* 80152C98 0014FBF8 91 61 00 08 */ stw r11, 8(r1) -/* 80152C9C 0014FBFC 90 01 00 0C */ stw r0, 0xc(r1) -/* 80152CA0 0014FC00 4B F0 2B 81 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" -/* 80152CA4 0014FC04 38 61 00 50 */ addi r3, r1, 0x50 -/* 80152CA8 0014FC08 38 80 FF FF */ li r4, -1 -/* 80152CAC 0014FC0C 4B FB 39 5D */ bl __dt__16CActorParametersFv -/* 80152CB0 0014FC10 38 61 00 B8 */ addi r3, r1, 0xb8 -/* 80152CB4 0014FC14 38 80 FF FF */ li r4, -1 -/* 80152CB8 0014FC18 4B FC 3D 95 */ bl __dt__10CModelDataFv -/* 80152CBC 0014FC1C 3C 60 80 3E */ lis r3, lbl_803E2B68@ha -/* 80152CC0 0014FC20 7D E4 7B 78 */ mr r4, r15 -/* 80152CC4 0014FC24 38 03 2B 68 */ addi r0, r3, lbl_803E2B68@l -/* 80152CC8 0014FC28 38 7A 00 EC */ addi r3, r26, 0xec -/* 80152CCC 0014FC2C 90 1A 00 00 */ stw r0, 0(r26) -/* 80152CD0 0014FC30 93 FA 00 E8 */ stw r31, 0xe8(r26) -/* 80152CD4 0014FC34 48 1E B4 8D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80152CD8 0014FC38 D3 9A 00 FC */ stfs f28, 0xfc(r26) -/* 80152CDC 0014FC3C 3C 60 80 5A */ lis r3, skIdentity4f@ha -/* 80152CE0 0014FC40 38 83 66 70 */ addi r4, r3, skIdentity4f@l -/* 80152CE4 0014FC44 C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) -/* 80152CE8 0014FC48 D3 BA 01 00 */ stfs f29, 0x100(r26) -/* 80152CEC 0014FC4C 38 7A 01 3C */ addi r3, r26, 0x13c -/* 80152CF0 0014FC50 D3 DA 01 04 */ stfs f30, 0x104(r26) -/* 80152CF4 0014FC54 D3 FA 01 08 */ stfs f31, 0x108(r26) -/* 80152CF8 0014FC58 C0 30 00 00 */ lfs f1, 0(r16) -/* 80152CFC 0014FC5C D0 3A 01 0C */ stfs f1, 0x10c(r26) -/* 80152D00 0014FC60 C0 30 00 04 */ lfs f1, 4(r16) -/* 80152D04 0014FC64 D0 3A 01 10 */ stfs f1, 0x110(r26) -/* 80152D08 0014FC68 C0 30 00 08 */ lfs f1, 8(r16) -/* 80152D0C 0014FC6C D0 3A 01 14 */ stfs f1, 0x114(r26) -/* 80152D10 0014FC70 80 11 00 00 */ lwz r0, 0(r17) -/* 80152D14 0014FC74 90 1A 01 18 */ stw r0, 0x118(r26) -/* 80152D18 0014FC78 80 13 00 00 */ lwz r0, 0(r19) -/* 80152D1C 0014FC7C 90 1A 01 1C */ stw r0, 0x11c(r26) -/* 80152D20 0014FC80 88 13 00 04 */ lbz r0, 4(r19) -/* 80152D24 0014FC84 98 1A 01 20 */ stb r0, 0x120(r26) -/* 80152D28 0014FC88 C0 33 00 08 */ lfs f1, 8(r19) -/* 80152D2C 0014FC8C D0 3A 01 24 */ stfs f1, 0x124(r26) -/* 80152D30 0014FC90 C0 33 00 0C */ lfs f1, 0xc(r19) -/* 80152D34 0014FC94 D0 3A 01 28 */ stfs f1, 0x128(r26) -/* 80152D38 0014FC98 C0 33 00 10 */ lfs f1, 0x10(r19) -/* 80152D3C 0014FC9C D0 3A 01 2C */ stfs f1, 0x12c(r26) -/* 80152D40 0014FCA0 C0 33 00 14 */ lfs f1, 0x14(r19) -/* 80152D44 0014FCA4 D0 3A 01 30 */ stfs f1, 0x130(r26) -/* 80152D48 0014FCA8 88 13 00 18 */ lbz r0, 0x18(r19) -/* 80152D4C 0014FCAC 98 1A 01 34 */ stb r0, 0x134(r26) -/* 80152D50 0014FCB0 D0 1A 01 38 */ stfs f0, 0x138(r26) -/* 80152D54 0014FCB4 48 1B FE 21 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80152D58 0014FCB8 C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) -/* 80152D5C 0014FCBC 7E E3 BB 78 */ mr r3, r23 -/* 80152D60 0014FCC0 D0 1A 01 6C */ stfs f0, 0x16c(r26) -/* 80152D64 0014FCC4 48 19 5C 4D */ bl TranslateSFXID__11CSfxManagerFUs -/* 80152D68 0014FCC8 B0 7A 01 70 */ sth r3, 0x170(r26) -/* 80152D6C 0014FCCC 7F 03 C3 78 */ mr r3, r24 -/* 80152D70 0014FCD0 48 19 5C 41 */ bl TranslateSFXID__11CSfxManagerFUs -/* 80152D74 0014FCD4 B0 7A 01 72 */ sth r3, 0x172(r26) -/* 80152D78 0014FCD8 7F 23 CB 78 */ mr r3, r25 -/* 80152D7C 0014FCDC 48 19 5C 35 */ bl TranslateSFXID__11CSfxManagerFUs -/* 80152D80 0014FCE0 B0 7A 01 74 */ sth r3, 0x174(r26) -/* 80152D84 0014FCE4 38 00 00 00 */ li r0, 0 -/* 80152D88 0014FCE8 C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) -/* 80152D8C 0014FCEC 38 7A 01 84 */ addi r3, r26, 0x184 -/* 80152D90 0014FCF0 90 1A 01 78 */ stw r0, 0x178(r26) -/* 80152D94 0014FCF4 38 80 00 06 */ li r4, 6 -/* 80152D98 0014FCF8 38 AD 8C 50 */ addi r5, r13, lbl_805A7810@sda21 -/* 80152D9C 0014FCFC D0 1A 01 80 */ stfs f0, 0x180(r26) -/* 80152DA0 0014FD00 48 00 01 B5 */ bl "__ct__Q24rstl36vectorFRCQ24rstl17rmemory_allocator" -/* 80152DA4 0014FD04 C0 02 9D 9C */ lfs f0, lbl_805ABABC@sda21(r2) -/* 80152DA8 0014FD08 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80152DAC 0014FD0C 38 A0 00 00 */ li r5, 0 -/* 80152DB0 0014FD10 38 00 00 02 */ li r0, 2 -/* 80152DB4 0014FD14 D0 1A 01 94 */ stfs f0, 0x194(r26) -/* 80152DB8 0014FD18 38 83 66 A0 */ addi r4, r3, skZero3f@l -/* 80152DBC 0014FD1C 38 60 00 01 */ li r3, 1 -/* 80152DC0 0014FD20 90 BA 01 9C */ stw r5, 0x19c(r26) -/* 80152DC4 0014FD24 90 BA 01 A0 */ stw r5, 0x1a0(r26) -/* 80152DC8 0014FD28 90 BA 01 A4 */ stw r5, 0x1a4(r26) -/* 80152DCC 0014FD2C 90 1A 01 A8 */ stw r0, 0x1a8(r26) -/* 80152DD0 0014FD30 C0 04 00 00 */ lfs f0, 0(r4) -/* 80152DD4 0014FD34 D0 1A 01 AC */ stfs f0, 0x1ac(r26) -/* 80152DD8 0014FD38 C0 04 00 04 */ lfs f0, 4(r4) -/* 80152DDC 0014FD3C D0 1A 01 B0 */ stfs f0, 0x1b0(r26) -/* 80152DE0 0014FD40 C0 04 00 08 */ lfs f0, 8(r4) -/* 80152DE4 0014FD44 D0 1A 01 B4 */ stfs f0, 0x1b4(r26) -/* 80152DE8 0014FD48 98 7A 01 B8 */ stb r3, 0x1b8(r26) -/* 80152DEC 0014FD4C 92 9A 01 BC */ stw r20, 0x1bc(r26) -/* 80152DF0 0014FD50 92 BA 01 C0 */ stw r21, 0x1c0(r26) -/* 80152DF4 0014FD54 92 DA 01 C4 */ stw r22, 0x1c4(r26) -/* 80152DF8 0014FD58 98 BA 01 E0 */ stb r5, 0x1e0(r26) -/* 80152DFC 0014FD5C 88 1A 01 E4 */ lbz r0, 0x1e4(r26) -/* 80152E00 0014FD60 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 -/* 80152E04 0014FD64 98 1A 01 E4 */ stb r0, 0x1e4(r26) -/* 80152E08 0014FD68 88 1A 01 E4 */ lbz r0, 0x1e4(r26) -/* 80152E0C 0014FD6C 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 -/* 80152E10 0014FD70 98 1A 01 E4 */ stb r0, 0x1e4(r26) -/* 80152E14 0014FD74 88 1A 01 E4 */ lbz r0, 0x1e4(r26) -/* 80152E18 0014FD78 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 80152E1C 0014FD7C 98 1A 01 E4 */ stb r0, 0x1e4(r26) -/* 80152E20 0014FD80 88 1A 01 E4 */ lbz r0, 0x1e4(r26) -/* 80152E24 0014FD84 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b -/* 80152E28 0014FD88 98 1A 01 E4 */ stb r0, 0x1e4(r26) -/* 80152E2C 0014FD8C 88 1A 01 E4 */ lbz r0, 0x1e4(r26) -/* 80152E30 0014FD90 50 A0 07 FE */ rlwimi r0, r5, 0, 0x1f, 0x1f -/* 80152E34 0014FD94 98 1A 01 E4 */ stb r0, 0x1e4(r26) -/* 80152E38 0014FD98 88 1A 01 E5 */ lbz r0, 0x1e5(r26) -/* 80152E3C 0014FD9C 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 -/* 80152E40 0014FDA0 98 1A 01 E5 */ stb r0, 0x1e5(r26) -/* 80152E44 0014FDA4 88 1A 01 E5 */ lbz r0, 0x1e5(r26) -/* 80152E48 0014FDA8 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 -/* 80152E4C 0014FDAC 98 1A 01 E5 */ stb r0, 0x1e5(r26) -/* 80152E50 0014FDB0 88 1A 01 E5 */ lbz r0, 0x1e5(r26) -/* 80152E54 0014FDB4 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a -/* 80152E58 0014FDB8 98 1A 01 E5 */ stb r0, 0x1e5(r26) -/* 80152E5C 0014FDBC 98 BA 01 F0 */ stb r5, 0x1f0(r26) -/* 80152E60 0014FDC0 80 1A 00 E8 */ lwz r0, 0xe8(r26) -/* 80152E64 0014FDC4 2C 00 00 1A */ cmpwi r0, 0x1a -/* 80152E68 0014FDC8 40 82 00 B4 */ bne lbl_80152F1C -/* 80152E6C 0014FDCC C0 22 9D B4 */ lfs f1, lbl_805ABAD4@sda21(r2) -/* 80152E70 0014FDD0 38 61 00 38 */ addi r3, r1, 0x38 -/* 80152E74 0014FDD4 C0 02 9D BC */ lfs f0, lbl_805ABADC@sda21(r2) -/* 80152E78 0014FDD8 38 81 00 2C */ addi r4, r1, 0x2c -/* 80152E7C 0014FDDC D0 21 00 20 */ stfs f1, 0x20(r1) -/* 80152E80 0014FDE0 38 A1 00 20 */ addi r5, r1, 0x20 -/* 80152E84 0014FDE4 D0 21 00 24 */ stfs f1, 0x24(r1) -/* 80152E88 0014FDE8 D0 21 00 28 */ stfs f1, 0x28(r1) -/* 80152E8C 0014FDEC D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 80152E90 0014FDF0 D0 01 00 30 */ stfs f0, 0x30(r1) -/* 80152E94 0014FDF4 D0 01 00 34 */ stfs f0, 0x34(r1) -/* 80152E98 0014FDF8 48 1E 56 71 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 80152E9C 0014FDFC 88 1A 01 E0 */ lbz r0, 0x1e0(r26) -/* 80152EA0 0014FE00 28 00 00 00 */ cmplwi r0, 0 -/* 80152EA4 0014FE04 40 82 00 48 */ bne lbl_80152EEC -/* 80152EA8 0014FE08 34 7A 01 C8 */ addic. r3, r26, 0x1c8 -/* 80152EAC 0014FE0C 41 82 00 34 */ beq lbl_80152EE0 -/* 80152EB0 0014FE10 C0 01 00 38 */ lfs f0, 0x38(r1) -/* 80152EB4 0014FE14 D0 03 00 00 */ stfs f0, 0(r3) -/* 80152EB8 0014FE18 C0 01 00 3C */ lfs f0, 0x3c(r1) -/* 80152EBC 0014FE1C D0 03 00 04 */ stfs f0, 4(r3) -/* 80152EC0 0014FE20 C0 01 00 40 */ lfs f0, 0x40(r1) -/* 80152EC4 0014FE24 D0 03 00 08 */ stfs f0, 8(r3) -/* 80152EC8 0014FE28 C0 01 00 44 */ lfs f0, 0x44(r1) -/* 80152ECC 0014FE2C D0 03 00 0C */ stfs f0, 0xc(r3) -/* 80152ED0 0014FE30 C0 01 00 48 */ lfs f0, 0x48(r1) -/* 80152ED4 0014FE34 D0 03 00 10 */ stfs f0, 0x10(r3) -/* 80152ED8 0014FE38 C0 01 00 4C */ lfs f0, 0x4c(r1) -/* 80152EDC 0014FE3C D0 03 00 14 */ stfs f0, 0x14(r3) -lbl_80152EE0: -/* 80152EE0 0014FE40 38 00 00 01 */ li r0, 1 -/* 80152EE4 0014FE44 98 1A 01 E0 */ stb r0, 0x1e0(r26) -/* 80152EE8 0014FE48 48 00 00 34 */ b lbl_80152F1C -lbl_80152EEC: -/* 80152EEC 0014FE4C 80 61 00 38 */ lwz r3, 0x38(r1) -/* 80152EF0 0014FE50 80 01 00 3C */ lwz r0, 0x3c(r1) -/* 80152EF4 0014FE54 90 7A 01 C8 */ stw r3, 0x1c8(r26) -/* 80152EF8 0014FE58 90 1A 01 CC */ stw r0, 0x1cc(r26) -/* 80152EFC 0014FE5C 80 01 00 40 */ lwz r0, 0x40(r1) -/* 80152F00 0014FE60 90 1A 01 D0 */ stw r0, 0x1d0(r26) -/* 80152F04 0014FE64 80 61 00 44 */ lwz r3, 0x44(r1) -/* 80152F08 0014FE68 80 01 00 48 */ lwz r0, 0x48(r1) -/* 80152F0C 0014FE6C 90 7A 01 D4 */ stw r3, 0x1d4(r26) -/* 80152F10 0014FE70 90 1A 01 D8 */ stw r0, 0x1d8(r26) -/* 80152F14 0014FE74 80 01 00 4C */ lwz r0, 0x4c(r1) -/* 80152F18 0014FE78 90 1A 01 DC */ stw r0, 0x1dc(r26) -lbl_80152F1C: -/* 80152F1C 0014FE7C 7F 43 D3 78 */ mr r3, r26 -/* 80152F20 0014FE80 E3 E1 01 88 */ psq_l f31, 392(r1), 0, qr0 -/* 80152F24 0014FE84 CB E1 01 80 */ lfd f31, 0x180(r1) -/* 80152F28 0014FE88 E3 C1 01 78 */ psq_l f30, 376(r1), 0, qr0 -/* 80152F2C 0014FE8C CB C1 01 70 */ lfd f30, 0x170(r1) -/* 80152F30 0014FE90 E3 A1 01 68 */ psq_l f29, 360(r1), 0, qr0 -/* 80152F34 0014FE94 CB A1 01 60 */ lfd f29, 0x160(r1) -/* 80152F38 0014FE98 E3 81 01 58 */ psq_l f28, 344(r1), 0, qr0 -/* 80152F3C 0014FE9C CB 81 01 50 */ lfd f28, 0x150(r1) -/* 80152F40 0014FEA0 B9 E1 01 0C */ lmw r15, 0x10c(r1) -/* 80152F44 0014FEA4 80 01 01 94 */ lwz r0, 0x194(r1) -/* 80152F48 0014FEA8 7C 08 03 A6 */ mtlr r0 -/* 80152F4C 0014FEAC 38 21 01 90 */ addi r1, r1, 0x190 -/* 80152F50 0014FEB0 4E 80 00 20 */ blr - -.global "__ct__Q24rstl36vectorFRCQ24rstl17rmemory_allocator" -"__ct__Q24rstl36vectorFRCQ24rstl17rmemory_allocator": -/* 80152F54 0014FEB4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80152F58 0014FEB8 7C 08 02 A6 */ mflr r0 -/* 80152F5C 0014FEBC 90 01 00 14 */ stw r0, 0x14(r1) -/* 80152F60 0014FEC0 38 00 00 00 */ li r0, 0 -/* 80152F64 0014FEC4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80152F68 0014FEC8 7C 7F 1B 78 */ mr r31, r3 -/* 80152F6C 0014FECC 90 03 00 04 */ stw r0, 4(r3) -/* 80152F70 0014FED0 90 03 00 08 */ stw r0, 8(r3) -/* 80152F74 0014FED4 90 03 00 0C */ stw r0, 0xc(r3) -/* 80152F78 0014FED8 48 00 00 1D */ bl sub_80152f94 -/* 80152F7C 0014FEDC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80152F80 0014FEE0 7F E3 FB 78 */ mr r3, r31 -/* 80152F84 0014FEE4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80152F88 0014FEE8 7C 08 03 A6 */ mtlr r0 -/* 80152F8C 0014FEEC 38 21 00 10 */ addi r1, r1, 0x10 -/* 80152F90 0014FEF0 4E 80 00 20 */ blr - -.global sub_80152f94 -sub_80152f94: -/* 80152F94 0014FEF4 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80152F98 0014FEF8 7C 08 02 A6 */ mflr r0 -/* 80152F9C 0014FEFC 90 01 00 34 */ stw r0, 0x34(r1) -/* 80152FA0 0014FF00 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 80152FA4 0014FF04 7C BF 2B 78 */ mr r31, r5 -/* 80152FA8 0014FF08 93 C1 00 28 */ stw r30, 0x28(r1) -/* 80152FAC 0014FF0C 7C 9E 23 78 */ mr r30, r4 -/* 80152FB0 0014FF10 93 A1 00 24 */ stw r29, 0x24(r1) -/* 80152FB4 0014FF14 7C 7D 1B 78 */ mr r29, r3 -/* 80152FB8 0014FF18 80 03 00 04 */ lwz r0, 4(r3) -/* 80152FBC 0014FF1C 7C 00 F0 00 */ cmpw r0, r30 -/* 80152FC0 0014FF20 41 82 00 80 */ beq lbl_80153040 -/* 80152FC4 0014FF24 7C 1E 00 00 */ cmpw r30, r0 -/* 80152FC8 0014FF28 40 81 00 40 */ ble lbl_80153008 -/* 80152FCC 0014FF2C 4B F0 AE 2D */ bl "reserve__Q24rstl36vectorFi" -/* 80152FD0 0014FF30 80 9D 00 04 */ lwz r4, 4(r29) -/* 80152FD4 0014FF34 80 7D 00 0C */ lwz r3, 0xc(r29) -/* 80152FD8 0014FF38 54 80 10 3A */ slwi r0, r4, 2 -/* 80152FDC 0014FF3C 7C 84 F0 51 */ subf. r4, r4, r30 -/* 80152FE0 0014FF40 7C 63 02 14 */ add r3, r3, r0 -/* 80152FE4 0014FF44 7C 89 03 A6 */ mtctr r4 -/* 80152FE8 0014FF48 40 81 00 54 */ ble lbl_8015303C -lbl_80152FEC: -/* 80152FEC 0014FF4C 28 03 00 00 */ cmplwi r3, 0 -/* 80152FF0 0014FF50 41 82 00 0C */ beq lbl_80152FFC -/* 80152FF4 0014FF54 C0 1F 00 00 */ lfs f0, 0(r31) -/* 80152FF8 0014FF58 D0 03 00 00 */ stfs f0, 0(r3) -lbl_80152FFC: -/* 80152FFC 0014FF5C 38 63 00 04 */ addi r3, r3, 4 -/* 80153000 0014FF60 42 00 FF EC */ bdnz lbl_80152FEC -/* 80153004 0014FF64 48 00 00 38 */ b lbl_8015303C -lbl_80153008: -/* 80153008 0014FF68 80 9D 00 0C */ lwz r4, 0xc(r29) -/* 8015300C 0014FF6C 54 03 10 3A */ slwi r3, r0, 2 -/* 80153010 0014FF70 57 C0 10 3A */ slwi r0, r30, 2 -/* 80153014 0014FF74 7C A4 02 14 */ add r5, r4, r0 -/* 80153018 0014FF78 7C 04 1A 14 */ add r0, r4, r3 -/* 8015301C 0014FF7C 90 A1 00 10 */ stw r5, 0x10(r1) -/* 80153020 0014FF80 90 01 00 08 */ stw r0, 8(r1) -/* 80153024 0014FF84 90 01 00 0C */ stw r0, 0xc(r1) -/* 80153028 0014FF88 90 A1 00 14 */ stw r5, 0x14(r1) -/* 8015302C 0014FF8C 48 00 00 08 */ b lbl_80153034 -lbl_80153030: -/* 80153030 0014FF90 38 A5 00 04 */ addi r5, r5, 4 -lbl_80153034: -/* 80153034 0014FF94 7C 05 00 40 */ cmplw r5, r0 -/* 80153038 0014FF98 40 82 FF F8 */ bne lbl_80153030 -lbl_8015303C: -/* 8015303C 0014FF9C 93 DD 00 04 */ stw r30, 4(r29) -lbl_80153040: -/* 80153040 0014FFA0 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80153044 0014FFA4 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 80153048 0014FFA8 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 8015304C 0014FFAC 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 80153050 0014FFB0 7C 08 03 A6 */ mtlr r0 -/* 80153054 0014FFB4 38 21 00 30 */ addi r1, r1, 0x30 -/* 80153058 0014FFB8 4E 80 00 20 */ blr - -.global "sort,Q24rstl17rmemory_allocator>,Q236@unnamed@CScriptSpecialFunction_cpp@11CRingSorter>__4rstlFQ24rstl176pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl176pointer_iterator,Q24rstl17rmemory_allocator>,Q236@unnamed@CScriptSpecialFunction_cpp@11CRingSorter>__4rstlFQ24rstl176pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl176pointer_iteratorFP7CEntity" -/* 80153188 001500E8 83 63 00 04 */ lwz r27, 4(r3) -/* 8015318C 001500EC 38 81 00 14 */ addi r4, r1, 0x14 -/* 80153190 001500F0 80 7E 00 00 */ lwz r3, 0(r30) -/* 80153194 001500F4 B3 E1 00 14 */ sth r31, 0x14(r1) -/* 80153198 001500F8 4B EF 94 0D */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8015319C 001500FC 7C 64 1B 78 */ mr r4, r3 -/* 801531A0 00150100 38 61 00 60 */ addi r3, r1, 0x60 -/* 801531A4 00150104 4B F5 CA ED */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 801531A8 00150108 28 1B 00 00 */ cmplwi r27, 0 -/* 801531AC 0015010C 80 63 00 04 */ lwz r3, 4(r3) -/* 801531B0 00150110 41 82 00 4C */ beq lbl_801531FC -/* 801531B4 00150114 28 03 00 00 */ cmplwi r3, 0 -/* 801531B8 00150118 41 82 00 44 */ beq lbl_801531FC -/* 801531BC 0015011C C0 A3 00 60 */ lfs f5, 0x60(r3) -/* 801531C0 00150120 C0 7B 00 60 */ lfs f3, 0x60(r27) -/* 801531C4 00150124 C0 83 00 50 */ lfs f4, 0x50(r3) -/* 801531C8 00150128 C0 23 00 40 */ lfs f1, 0x40(r3) -/* 801531CC 0015012C FC 03 28 40 */ fcmpo cr0, f3, f5 -/* 801531D0 00150130 C0 5B 00 50 */ lfs f2, 0x50(r27) -/* 801531D4 00150134 C0 1B 00 40 */ lfs f0, 0x40(r27) -/* 801531D8 00150138 D0 21 00 94 */ stfs f1, 0x94(r1) -/* 801531DC 0015013C D0 81 00 98 */ stfs f4, 0x98(r1) -/* 801531E0 00150140 D0 A1 00 9C */ stfs f5, 0x9c(r1) -/* 801531E4 00150144 D0 01 00 88 */ stfs f0, 0x88(r1) -/* 801531E8 00150148 D0 41 00 8C */ stfs f2, 0x8c(r1) -/* 801531EC 0015014C D0 61 00 90 */ stfs f3, 0x90(r1) -/* 801531F0 00150150 7C 00 00 26 */ mfcr r0 -/* 801531F4 00150154 54 00 0F FE */ srwi r0, r0, 0x1f -/* 801531F8 00150158 48 00 00 08 */ b lbl_80153200 -lbl_801531FC: -/* 801531FC 0015015C 38 00 00 00 */ li r0, 0 -lbl_80153200: -/* 80153200 00150160 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 80153204 00150164 40 82 FF 54 */ bne lbl_80153158 -/* 80153208 00150168 A3 61 00 B8 */ lhz r27, 0xb8(r1) -/* 8015320C 0015016C 48 00 00 10 */ b lbl_8015321C -lbl_80153210: -/* 80153210 00150170 80 61 00 4C */ lwz r3, 0x4c(r1) -/* 80153214 00150174 38 03 FF E8 */ addi r0, r3, -24 -/* 80153218 00150178 90 01 00 4C */ stw r0, 0x4c(r1) -lbl_8015321C: -/* 8015321C 0015017C B3 61 00 08 */ sth r27, 8(r1) -/* 80153220 00150180 38 81 00 08 */ addi r4, r1, 8 -/* 80153224 00150184 80 7E 00 00 */ lwz r3, 0(r30) -/* 80153228 00150188 4B EF 93 7D */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8015322C 0015018C 7C 64 1B 78 */ mr r4, r3 -/* 80153230 00150190 38 61 00 58 */ addi r3, r1, 0x58 -/* 80153234 00150194 4B F5 CA 5D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 80153238 00150198 80 A1 00 4C */ lwz r5, 0x4c(r1) -/* 8015323C 0015019C 38 81 00 0C */ addi r4, r1, 0xc -/* 80153240 001501A0 83 43 00 04 */ lwz r26, 4(r3) -/* 80153244 001501A4 A0 05 00 00 */ lhz r0, 0(r5) -/* 80153248 001501A8 80 7E 00 00 */ lwz r3, 0(r30) -/* 8015324C 001501AC B0 01 00 0C */ sth r0, 0xc(r1) -/* 80153250 001501B0 4B EF 93 55 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 80153254 001501B4 7C 64 1B 78 */ mr r4, r3 -/* 80153258 001501B8 38 61 00 50 */ addi r3, r1, 0x50 -/* 8015325C 001501BC 4B F5 CA 35 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 80153260 001501C0 28 1A 00 00 */ cmplwi r26, 0 -/* 80153264 001501C4 80 63 00 04 */ lwz r3, 4(r3) -/* 80153268 001501C8 41 82 00 4C */ beq lbl_801532B4 -/* 8015326C 001501CC 28 03 00 00 */ cmplwi r3, 0 -/* 80153270 001501D0 41 82 00 44 */ beq lbl_801532B4 -/* 80153274 001501D4 C0 A3 00 60 */ lfs f5, 0x60(r3) -/* 80153278 001501D8 C0 7A 00 60 */ lfs f3, 0x60(r26) -/* 8015327C 001501DC C0 83 00 50 */ lfs f4, 0x50(r3) -/* 80153280 001501E0 C0 23 00 40 */ lfs f1, 0x40(r3) -/* 80153284 001501E4 FC 03 28 40 */ fcmpo cr0, f3, f5 -/* 80153288 001501E8 C0 5A 00 50 */ lfs f2, 0x50(r26) -/* 8015328C 001501EC C0 1A 00 40 */ lfs f0, 0x40(r26) -/* 80153290 001501F0 D0 21 00 7C */ stfs f1, 0x7c(r1) -/* 80153294 001501F4 D0 81 00 80 */ stfs f4, 0x80(r1) -/* 80153298 001501F8 D0 A1 00 84 */ stfs f5, 0x84(r1) -/* 8015329C 001501FC D0 01 00 70 */ stfs f0, 0x70(r1) -/* 801532A0 00150200 D0 41 00 74 */ stfs f2, 0x74(r1) -/* 801532A4 00150204 D0 61 00 78 */ stfs f3, 0x78(r1) -/* 801532A8 00150208 7C 00 00 26 */ mfcr r0 -/* 801532AC 0015020C 54 00 0F FE */ srwi r0, r0, 0x1f -/* 801532B0 00150210 48 00 00 08 */ b lbl_801532B8 -lbl_801532B4: -/* 801532B4 00150214 38 00 00 00 */ li r0, 0 -lbl_801532B8: -/* 801532B8 00150218 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 801532BC 0015021C 40 82 FF 54 */ bne lbl_80153210 -/* 801532C0 00150220 80 61 00 48 */ lwz r3, 0x48(r1) -/* 801532C4 00150224 80 01 00 4C */ lwz r0, 0x4c(r1) -/* 801532C8 00150228 7C 03 00 40 */ cmplw r3, r0 -/* 801532CC 0015022C 40 80 00 AC */ bge lbl_80153378 -/* 801532D0 00150230 81 61 00 48 */ lwz r11, 0x48(r1) -/* 801532D4 00150234 81 81 00 4C */ lwz r12, 0x4c(r1) -/* 801532D8 00150238 A1 4B 00 00 */ lhz r10, 0(r11) -/* 801532DC 0015023C 38 6B 00 18 */ addi r3, r11, 0x18 -/* 801532E0 00150240 C0 6B 00 04 */ lfs f3, 4(r11) -/* 801532E4 00150244 38 0C FF E8 */ addi r0, r12, -24 -/* 801532E8 00150248 89 2B 00 08 */ lbz r9, 8(r11) -/* 801532EC 0015024C C0 0B 00 0C */ lfs f0, 0xc(r11) -/* 801532F0 00150250 C0 4B 00 10 */ lfs f2, 0x10(r11) -/* 801532F4 00150254 C0 2B 00 14 */ lfs f1, 0x14(r11) -/* 801532F8 00150258 A0 8C 00 00 */ lhz r4, 0(r12) -/* 801532FC 0015025C D0 01 00 AC */ stfs f0, 0xac(r1) -/* 80153300 00150260 B0 8B 00 00 */ sth r4, 0(r11) -/* 80153304 00150264 80 C1 00 AC */ lwz r6, 0xac(r1) -/* 80153308 00150268 C0 0C 00 04 */ lfs f0, 4(r12) -/* 8015330C 0015026C D0 41 00 B0 */ stfs f2, 0xb0(r1) -/* 80153310 00150270 D0 0B 00 04 */ stfs f0, 4(r11) -/* 80153314 00150274 80 A1 00 B0 */ lwz r5, 0xb0(r1) -/* 80153318 00150278 88 8C 00 08 */ lbz r4, 8(r12) -/* 8015331C 0015027C D0 21 00 B4 */ stfs f1, 0xb4(r1) -/* 80153320 00150280 98 8B 00 08 */ stb r4, 8(r11) -/* 80153324 00150284 80 81 00 B4 */ lwz r4, 0xb4(r1) -/* 80153328 00150288 81 0C 00 0C */ lwz r8, 0xc(r12) -/* 8015332C 0015028C 80 EC 00 10 */ lwz r7, 0x10(r12) -/* 80153330 00150290 91 81 00 30 */ stw r12, 0x30(r1) -/* 80153334 00150294 91 0B 00 0C */ stw r8, 0xc(r11) -/* 80153338 00150298 90 EB 00 10 */ stw r7, 0x10(r11) -/* 8015333C 0015029C 80 EC 00 14 */ lwz r7, 0x14(r12) -/* 80153340 001502A0 91 61 00 34 */ stw r11, 0x34(r1) -/* 80153344 001502A4 90 EB 00 14 */ stw r7, 0x14(r11) -/* 80153348 001502A8 B1 4C 00 00 */ sth r10, 0(r12) -/* 8015334C 001502AC D0 6C 00 04 */ stfs f3, 4(r12) -/* 80153350 001502B0 99 2C 00 08 */ stb r9, 8(r12) -/* 80153354 001502B4 90 CC 00 0C */ stw r6, 0xc(r12) -/* 80153358 001502B8 90 AC 00 10 */ stw r5, 0x10(r12) -/* 8015335C 001502BC B1 41 00 A0 */ sth r10, 0xa0(r1) -/* 80153360 001502C0 D0 61 00 A4 */ stfs f3, 0xa4(r1) -/* 80153364 001502C4 99 21 00 A8 */ stb r9, 0xa8(r1) -/* 80153368 001502C8 90 8C 00 14 */ stw r4, 0x14(r12) -/* 8015336C 001502CC 90 61 00 48 */ stw r3, 0x48(r1) -/* 80153370 001502D0 90 01 00 4C */ stw r0, 0x4c(r1) -/* 80153374 001502D4 4B FF FD F0 */ b lbl_80153164 -lbl_80153378: -/* 80153378 001502D8 80 FE 00 00 */ lwz r7, 0(r30) -/* 8015337C 001502DC 38 61 00 2C */ addi r3, r1, 0x2c -/* 80153380 001502E0 80 C1 00 48 */ lwz r6, 0x48(r1) -/* 80153384 001502E4 38 81 00 28 */ addi r4, r1, 0x28 -/* 80153388 001502E8 80 1C 00 00 */ lwz r0, 0(r28) -/* 8015338C 001502EC 38 A1 00 24 */ addi r5, r1, 0x24 -/* 80153390 001502F0 90 E1 00 24 */ stw r7, 0x24(r1) -/* 80153394 001502F4 90 C1 00 28 */ stw r6, 0x28(r1) -/* 80153398 001502F8 90 01 00 2C */ stw r0, 0x2c(r1) -/* 8015339C 001502FC 4B FF FC C1 */ bl "sort,Q24rstl17rmemory_allocator>,Q236@unnamed@CScriptSpecialFunction_cpp@11CRingSorter>__4rstlFQ24rstl176pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl176pointer_iterator,Q24rstl17rmemory_allocator>,Q236@unnamed@CScriptSpecialFunction_cpp@11CRingSorter>__4rstlFQ24rstl176pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl176pointer_iteratorFi" -"reserve__Q24rstl78vectorFi": -/* 801533DC 0015033C 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 801533E0 00150340 7C 08 02 A6 */ mflr r0 -/* 801533E4 00150344 90 01 00 34 */ stw r0, 0x34(r1) -/* 801533E8 00150348 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 801533EC 0015034C 7C 9F 23 78 */ mr r31, r4 -/* 801533F0 00150350 93 C1 00 28 */ stw r30, 0x28(r1) -/* 801533F4 00150354 7C 7E 1B 78 */ mr r30, r3 -/* 801533F8 00150358 93 A1 00 24 */ stw r29, 0x24(r1) -/* 801533FC 0015035C 80 03 00 08 */ lwz r0, 8(r3) -/* 80153400 00150360 7C 1F 00 00 */ cmpw r31, r0 -/* 80153404 00150364 40 81 00 D8 */ ble lbl_801534DC -/* 80153408 00150368 1C 7F 00 18 */ mulli r3, r31, 0x18 -/* 8015340C 0015036C 2C 03 00 00 */ cmpwi r3, 0 -/* 80153410 00150370 40 82 00 0C */ bne lbl_8015341C -/* 80153414 00150374 3B A0 00 00 */ li r29, 0 -/* 80153418 00150378 48 00 00 1C */ b lbl_80153434 -lbl_8015341C: -/* 8015341C 0015037C 3C 80 80 3D */ lis r4, lbl_803D01D0@ha -/* 80153420 00150380 38 A0 00 00 */ li r5, 0 -/* 80153424 00150384 38 84 01 D0 */ addi r4, r4, lbl_803D01D0@l -/* 80153428 00150388 38 84 00 15 */ addi r4, r4, 0x15 -/* 8015342C 0015038C 48 1C 23 ED */ bl __nwa__FUlPCcPCc -/* 80153430 00150390 7C 7D 1B 78 */ mr r29, r3 -lbl_80153434: -/* 80153434 00150394 80 1E 00 04 */ lwz r0, 4(r30) -/* 80153438 00150398 7F A4 EB 78 */ mr r4, r29 -/* 8015343C 0015039C 80 BE 00 0C */ lwz r5, 0xc(r30) -/* 80153440 001503A0 1C 00 00 18 */ mulli r0, r0, 0x18 -/* 80153444 001503A4 90 A1 00 10 */ stw r5, 0x10(r1) -/* 80153448 001503A8 7C 65 02 14 */ add r3, r5, r0 -/* 8015344C 001503AC 90 A1 00 14 */ stw r5, 0x14(r1) -/* 80153450 001503B0 90 61 00 08 */ stw r3, 8(r1) -/* 80153454 001503B4 90 61 00 0C */ stw r3, 0xc(r1) -/* 80153458 001503B8 48 00 00 44 */ b lbl_8015349C -lbl_8015345C: -/* 8015345C 001503BC 28 04 00 00 */ cmplwi r4, 0 -/* 80153460 001503C0 41 82 00 34 */ beq lbl_80153494 -/* 80153464 001503C4 A0 05 00 00 */ lhz r0, 0(r5) -/* 80153468 001503C8 B0 04 00 00 */ sth r0, 0(r4) -/* 8015346C 001503CC C0 05 00 04 */ lfs f0, 4(r5) -/* 80153470 001503D0 D0 04 00 04 */ stfs f0, 4(r4) -/* 80153474 001503D4 88 05 00 08 */ lbz r0, 8(r5) -/* 80153478 001503D8 98 04 00 08 */ stb r0, 8(r4) -/* 8015347C 001503DC C0 05 00 0C */ lfs f0, 0xc(r5) -/* 80153480 001503E0 D0 04 00 0C */ stfs f0, 0xc(r4) -/* 80153484 001503E4 C0 05 00 10 */ lfs f0, 0x10(r5) -/* 80153488 001503E8 D0 04 00 10 */ stfs f0, 0x10(r4) -/* 8015348C 001503EC C0 05 00 14 */ lfs f0, 0x14(r5) -/* 80153490 001503F0 D0 04 00 14 */ stfs f0, 0x14(r4) -lbl_80153494: -/* 80153494 001503F4 38 84 00 18 */ addi r4, r4, 0x18 -/* 80153498 001503F8 38 A5 00 18 */ addi r5, r5, 0x18 -lbl_8015349C: -/* 8015349C 001503FC 7C 05 18 40 */ cmplw r5, r3 -/* 801534A0 00150400 40 82 FF BC */ bne lbl_8015345C -/* 801534A4 00150404 80 1E 00 04 */ lwz r0, 4(r30) -/* 801534A8 00150408 80 7E 00 0C */ lwz r3, 0xc(r30) -/* 801534AC 0015040C 1C 00 00 18 */ mulli r0, r0, 0x18 -/* 801534B0 00150410 7C 64 1B 78 */ mr r4, r3 -/* 801534B4 00150414 7C 03 02 14 */ add r0, r3, r0 -/* 801534B8 00150418 48 00 00 08 */ b lbl_801534C0 -lbl_801534BC: -/* 801534BC 0015041C 38 84 00 18 */ addi r4, r4, 0x18 -lbl_801534C0: -/* 801534C0 00150420 7C 04 00 40 */ cmplw r4, r0 -/* 801534C4 00150424 40 82 FF F8 */ bne lbl_801534BC -/* 801534C8 00150428 28 03 00 00 */ cmplwi r3, 0 -/* 801534CC 0015042C 41 82 00 08 */ beq lbl_801534D4 -/* 801534D0 00150430 48 1C 24 61 */ bl Free__7CMemoryFPCv -lbl_801534D4: -/* 801534D4 00150434 93 BE 00 0C */ stw r29, 0xc(r30) -/* 801534D8 00150438 93 FE 00 08 */ stw r31, 8(r30) -lbl_801534DC: -/* 801534DC 0015043C 80 01 00 34 */ lwz r0, 0x34(r1) -/* 801534E0 00150440 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 801534E4 00150444 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 801534E8 00150448 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 801534EC 0015044C 7C 08 03 A6 */ mtlr r0 -/* 801534F0 00150450 38 21 00 30 */ addi r1, r1, 0x30 -/* 801534F4 00150454 4E 80 00 20 */ blr - -.global sub_801534f8 -sub_801534f8: -/* 801534F8 00150458 94 21 FF 20 */ stwu r1, -0xe0(r1) -/* 801534FC 0015045C 7C 08 02 A6 */ mflr r0 -/* 80153500 00150460 90 01 00 E4 */ stw r0, 0xe4(r1) -/* 80153504 00150464 BF 61 00 CC */ stmw r27, 0xcc(r1) -/* 80153508 00150468 7C 7C 1B 78 */ mr r28, r3 -/* 8015350C 0015046C 7C 9D 23 78 */ mr r29, r4 -/* 80153510 00150470 7C DF 33 78 */ mr r31, r6 -/* 80153514 00150474 7C BE 2B 78 */ mr r30, r5 -/* 80153518 00150478 A0 04 00 00 */ lhz r0, 0(r4) -/* 8015351C 0015047C 38 81 00 18 */ addi r4, r1, 0x18 -/* 80153520 00150480 80 66 00 00 */ lwz r3, 0(r6) -/* 80153524 00150484 B0 01 00 18 */ sth r0, 0x18(r1) -/* 80153528 00150488 4B EF 90 7D */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8015352C 0015048C 7C 64 1B 78 */ mr r4, r3 -/* 80153530 00150490 38 61 00 48 */ addi r3, r1, 0x48 -/* 80153534 00150494 4B F5 C7 5D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 80153538 00150498 83 63 00 04 */ lwz r27, 4(r3) -/* 8015353C 0015049C 38 81 00 1C */ addi r4, r1, 0x1c -/* 80153540 001504A0 A0 1C 00 00 */ lhz r0, 0(r28) -/* 80153544 001504A4 80 7F 00 00 */ lwz r3, 0(r31) -/* 80153548 001504A8 B0 01 00 1C */ sth r0, 0x1c(r1) -/* 8015354C 001504AC 4B EF 90 59 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 80153550 001504B0 7C 64 1B 78 */ mr r4, r3 -/* 80153554 001504B4 38 61 00 40 */ addi r3, r1, 0x40 -/* 80153558 001504B8 4B F5 C7 39 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8015355C 001504BC 28 1B 00 00 */ cmplwi r27, 0 -/* 80153560 001504C0 80 63 00 04 */ lwz r3, 4(r3) -/* 80153564 001504C4 41 82 00 4C */ beq lbl_801535B0 -/* 80153568 001504C8 28 03 00 00 */ cmplwi r3, 0 -/* 8015356C 001504CC 41 82 00 44 */ beq lbl_801535B0 -/* 80153570 001504D0 C0 A3 00 60 */ lfs f5, 0x60(r3) -/* 80153574 001504D4 C0 7B 00 60 */ lfs f3, 0x60(r27) -/* 80153578 001504D8 C0 83 00 50 */ lfs f4, 0x50(r3) -/* 8015357C 001504DC C0 23 00 40 */ lfs f1, 0x40(r3) -/* 80153580 001504E0 FC 03 28 40 */ fcmpo cr0, f3, f5 -/* 80153584 001504E4 C0 5B 00 50 */ lfs f2, 0x50(r27) -/* 80153588 001504E8 C0 1B 00 40 */ lfs f0, 0x40(r27) -/* 8015358C 001504EC D0 21 00 8C */ stfs f1, 0x8c(r1) -/* 80153590 001504F0 D0 81 00 90 */ stfs f4, 0x90(r1) -/* 80153594 001504F4 D0 A1 00 94 */ stfs f5, 0x94(r1) -/* 80153598 001504F8 D0 01 00 80 */ stfs f0, 0x80(r1) -/* 8015359C 001504FC D0 41 00 84 */ stfs f2, 0x84(r1) -/* 801535A0 00150500 D0 61 00 88 */ stfs f3, 0x88(r1) -/* 801535A4 00150504 7C 00 00 26 */ mfcr r0 -/* 801535A8 00150508 54 00 0F FE */ srwi r0, r0, 0x1f -/* 801535AC 0015050C 48 00 00 08 */ b lbl_801535B4 -lbl_801535B0: -/* 801535B0 00150510 38 00 00 00 */ li r0, 0 -lbl_801535B4: -/* 801535B4 00150514 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 801535B8 00150518 41 82 00 88 */ beq lbl_80153640 -/* 801535BC 0015051C A1 1C 00 00 */ lhz r8, 0(r28) -/* 801535C0 00150520 C0 7C 00 04 */ lfs f3, 4(r28) -/* 801535C4 00150524 88 FC 00 08 */ lbz r7, 8(r28) -/* 801535C8 00150528 C0 1C 00 0C */ lfs f0, 0xc(r28) -/* 801535CC 0015052C C0 5C 00 10 */ lfs f2, 0x10(r28) -/* 801535D0 00150530 C0 3C 00 14 */ lfs f1, 0x14(r28) -/* 801535D4 00150534 A0 1D 00 00 */ lhz r0, 0(r29) -/* 801535D8 00150538 D0 01 00 A4 */ stfs f0, 0xa4(r1) -/* 801535DC 0015053C B0 1C 00 00 */ sth r0, 0(r28) -/* 801535E0 00150540 80 81 00 A4 */ lwz r4, 0xa4(r1) -/* 801535E4 00150544 C0 1D 00 04 */ lfs f0, 4(r29) -/* 801535E8 00150548 D0 41 00 A8 */ stfs f2, 0xa8(r1) -/* 801535EC 0015054C D0 1C 00 04 */ stfs f0, 4(r28) -/* 801535F0 00150550 80 61 00 A8 */ lwz r3, 0xa8(r1) -/* 801535F4 00150554 88 1D 00 08 */ lbz r0, 8(r29) -/* 801535F8 00150558 D0 21 00 AC */ stfs f1, 0xac(r1) -/* 801535FC 0015055C 98 1C 00 08 */ stb r0, 8(r28) -/* 80153600 00150560 80 01 00 AC */ lwz r0, 0xac(r1) -/* 80153604 00150564 80 DD 00 0C */ lwz r6, 0xc(r29) -/* 80153608 00150568 80 BD 00 10 */ lwz r5, 0x10(r29) -/* 8015360C 0015056C B1 01 00 98 */ sth r8, 0x98(r1) -/* 80153610 00150570 90 DC 00 0C */ stw r6, 0xc(r28) -/* 80153614 00150574 90 BC 00 10 */ stw r5, 0x10(r28) -/* 80153618 00150578 80 BD 00 14 */ lwz r5, 0x14(r29) -/* 8015361C 0015057C D0 61 00 9C */ stfs f3, 0x9c(r1) -/* 80153620 00150580 90 BC 00 14 */ stw r5, 0x14(r28) -/* 80153624 00150584 B1 1D 00 00 */ sth r8, 0(r29) -/* 80153628 00150588 D0 7D 00 04 */ stfs f3, 4(r29) -/* 8015362C 0015058C 98 FD 00 08 */ stb r7, 8(r29) -/* 80153630 00150590 90 9D 00 0C */ stw r4, 0xc(r29) -/* 80153634 00150594 90 7D 00 10 */ stw r3, 0x10(r29) -/* 80153638 00150598 98 E1 00 A0 */ stb r7, 0xa0(r1) -/* 8015363C 0015059C 90 1D 00 14 */ stw r0, 0x14(r29) -lbl_80153640: -/* 80153640 001505A0 A0 1E 00 00 */ lhz r0, 0(r30) -/* 80153644 001505A4 38 81 00 10 */ addi r4, r1, 0x10 -/* 80153648 001505A8 80 7F 00 00 */ lwz r3, 0(r31) -/* 8015364C 001505AC B0 01 00 10 */ sth r0, 0x10(r1) -/* 80153650 001505B0 4B EF 8F 55 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 80153654 001505B4 7C 64 1B 78 */ mr r4, r3 -/* 80153658 001505B8 38 61 00 38 */ addi r3, r1, 0x38 -/* 8015365C 001505BC 4B F5 C6 35 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 80153660 001505C0 83 63 00 04 */ lwz r27, 4(r3) -/* 80153664 001505C4 38 81 00 14 */ addi r4, r1, 0x14 -/* 80153668 001505C8 A0 1D 00 00 */ lhz r0, 0(r29) -/* 8015366C 001505CC 80 7F 00 00 */ lwz r3, 0(r31) -/* 80153670 001505D0 B0 01 00 14 */ sth r0, 0x14(r1) -/* 80153674 001505D4 4B EF 8F 31 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 80153678 001505D8 7C 64 1B 78 */ mr r4, r3 -/* 8015367C 001505DC 38 61 00 30 */ addi r3, r1, 0x30 -/* 80153680 001505E0 4B F5 C6 11 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 80153684 001505E4 28 1B 00 00 */ cmplwi r27, 0 -/* 80153688 001505E8 80 63 00 04 */ lwz r3, 4(r3) -/* 8015368C 001505EC 41 82 00 4C */ beq lbl_801536D8 -/* 80153690 001505F0 28 03 00 00 */ cmplwi r3, 0 -/* 80153694 001505F4 41 82 00 44 */ beq lbl_801536D8 -/* 80153698 001505F8 C0 A3 00 60 */ lfs f5, 0x60(r3) -/* 8015369C 001505FC C0 7B 00 60 */ lfs f3, 0x60(r27) -/* 801536A0 00150600 C0 83 00 50 */ lfs f4, 0x50(r3) -/* 801536A4 00150604 C0 23 00 40 */ lfs f1, 0x40(r3) -/* 801536A8 00150608 FC 03 28 40 */ fcmpo cr0, f3, f5 -/* 801536AC 0015060C C0 5B 00 50 */ lfs f2, 0x50(r27) -/* 801536B0 00150610 C0 1B 00 40 */ lfs f0, 0x40(r27) -/* 801536B4 00150614 D0 21 00 74 */ stfs f1, 0x74(r1) -/* 801536B8 00150618 D0 81 00 78 */ stfs f4, 0x78(r1) -/* 801536BC 0015061C D0 A1 00 7C */ stfs f5, 0x7c(r1) -/* 801536C0 00150620 D0 01 00 68 */ stfs f0, 0x68(r1) -/* 801536C4 00150624 D0 41 00 6C */ stfs f2, 0x6c(r1) -/* 801536C8 00150628 D0 61 00 70 */ stfs f3, 0x70(r1) -/* 801536CC 0015062C 7C 00 00 26 */ mfcr r0 -/* 801536D0 00150630 54 00 0F FE */ srwi r0, r0, 0x1f -/* 801536D4 00150634 48 00 00 08 */ b lbl_801536DC -lbl_801536D8: -/* 801536D8 00150638 38 00 00 00 */ li r0, 0 -lbl_801536DC: -/* 801536DC 0015063C 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 801536E0 00150640 41 82 01 98 */ beq lbl_80153878 -/* 801536E4 00150644 A0 BE 00 00 */ lhz r5, 0(r30) -/* 801536E8 00150648 38 81 00 08 */ addi r4, r1, 8 -/* 801536EC 0015064C C0 9E 00 04 */ lfs f4, 4(r30) -/* 801536F0 00150650 88 7E 00 08 */ lbz r3, 8(r30) -/* 801536F4 00150654 C0 7E 00 0C */ lfs f3, 0xc(r30) -/* 801536F8 00150658 C0 5E 00 10 */ lfs f2, 0x10(r30) -/* 801536FC 0015065C C0 3E 00 14 */ lfs f1, 0x14(r30) -/* 80153700 00150660 A0 1D 00 00 */ lhz r0, 0(r29) -/* 80153704 00150664 B0 A1 00 B0 */ sth r5, 0xb0(r1) -/* 80153708 00150668 B0 1E 00 00 */ sth r0, 0(r30) -/* 8015370C 0015066C C0 1D 00 04 */ lfs f0, 4(r29) -/* 80153710 00150670 D0 81 00 B4 */ stfs f4, 0xb4(r1) -/* 80153714 00150674 D0 1E 00 04 */ stfs f0, 4(r30) -/* 80153718 00150678 88 1D 00 08 */ lbz r0, 8(r29) -/* 8015371C 0015067C 98 61 00 B8 */ stb r3, 0xb8(r1) -/* 80153720 00150680 98 1E 00 08 */ stb r0, 8(r30) -/* 80153724 00150684 80 7D 00 0C */ lwz r3, 0xc(r29) -/* 80153728 00150688 80 1D 00 10 */ lwz r0, 0x10(r29) -/* 8015372C 0015068C D0 61 00 BC */ stfs f3, 0xbc(r1) -/* 80153730 00150690 90 7E 00 0C */ stw r3, 0xc(r30) -/* 80153734 00150694 90 1E 00 10 */ stw r0, 0x10(r30) -/* 80153738 00150698 80 1D 00 14 */ lwz r0, 0x14(r29) -/* 8015373C 0015069C D0 41 00 C0 */ stfs f2, 0xc0(r1) -/* 80153740 001506A0 90 1E 00 14 */ stw r0, 0x14(r30) -/* 80153744 001506A4 D0 21 00 C4 */ stfs f1, 0xc4(r1) -/* 80153748 001506A8 80 7F 00 00 */ lwz r3, 0(r31) -/* 8015374C 001506AC B0 A1 00 08 */ sth r5, 8(r1) -/* 80153750 001506B0 4B EF 8E 55 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 80153754 001506B4 7C 64 1B 78 */ mr r4, r3 -/* 80153758 001506B8 38 61 00 28 */ addi r3, r1, 0x28 -/* 8015375C 001506BC 4B F5 C5 35 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 80153760 001506C0 83 63 00 04 */ lwz r27, 4(r3) -/* 80153764 001506C4 38 81 00 0C */ addi r4, r1, 0xc -/* 80153768 001506C8 A0 1C 00 00 */ lhz r0, 0(r28) -/* 8015376C 001506CC 80 7F 00 00 */ lwz r3, 0(r31) -/* 80153770 001506D0 B0 01 00 0C */ sth r0, 0xc(r1) -/* 80153774 001506D4 4B EF 8E 31 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 80153778 001506D8 7C 64 1B 78 */ mr r4, r3 -/* 8015377C 001506DC 38 61 00 20 */ addi r3, r1, 0x20 -/* 80153780 001506E0 4B F5 C5 11 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 80153784 001506E4 28 1B 00 00 */ cmplwi r27, 0 -/* 80153788 001506E8 80 63 00 04 */ lwz r3, 4(r3) -/* 8015378C 001506EC 41 82 00 4C */ beq lbl_801537D8 -/* 80153790 001506F0 28 03 00 00 */ cmplwi r3, 0 -/* 80153794 001506F4 41 82 00 44 */ beq lbl_801537D8 -/* 80153798 001506F8 C0 A3 00 60 */ lfs f5, 0x60(r3) -/* 8015379C 001506FC C0 7B 00 60 */ lfs f3, 0x60(r27) -/* 801537A0 00150700 C0 83 00 50 */ lfs f4, 0x50(r3) -/* 801537A4 00150704 C0 23 00 40 */ lfs f1, 0x40(r3) -/* 801537A8 00150708 FC 03 28 40 */ fcmpo cr0, f3, f5 -/* 801537AC 0015070C C0 5B 00 50 */ lfs f2, 0x50(r27) -/* 801537B0 00150710 C0 1B 00 40 */ lfs f0, 0x40(r27) -/* 801537B4 00150714 D0 21 00 5C */ stfs f1, 0x5c(r1) -/* 801537B8 00150718 D0 81 00 60 */ stfs f4, 0x60(r1) -/* 801537BC 0015071C D0 A1 00 64 */ stfs f5, 0x64(r1) -/* 801537C0 00150720 D0 01 00 50 */ stfs f0, 0x50(r1) -/* 801537C4 00150724 D0 41 00 54 */ stfs f2, 0x54(r1) -/* 801537C8 00150728 D0 61 00 58 */ stfs f3, 0x58(r1) -/* 801537CC 0015072C 7C 00 00 26 */ mfcr r0 -/* 801537D0 00150730 54 00 0F FE */ srwi r0, r0, 0x1f -/* 801537D4 00150734 48 00 00 08 */ b lbl_801537DC -lbl_801537D8: -/* 801537D8 00150738 38 00 00 00 */ li r0, 0 -lbl_801537DC: -/* 801537DC 0015073C 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 801537E0 00150740 41 82 00 68 */ beq lbl_80153848 -/* 801537E4 00150744 A0 1C 00 00 */ lhz r0, 0(r28) -/* 801537E8 00150748 A0 C1 00 B0 */ lhz r6, 0xb0(r1) -/* 801537EC 0015074C B0 1D 00 00 */ sth r0, 0(r29) -/* 801537F0 00150750 C0 01 00 B4 */ lfs f0, 0xb4(r1) -/* 801537F4 00150754 C0 3C 00 04 */ lfs f1, 4(r28) -/* 801537F8 00150758 88 A1 00 B8 */ lbz r5, 0xb8(r1) -/* 801537FC 0015075C D0 3D 00 04 */ stfs f1, 4(r29) -/* 80153800 00150760 80 81 00 BC */ lwz r4, 0xbc(r1) -/* 80153804 00150764 88 1C 00 08 */ lbz r0, 8(r28) -/* 80153808 00150768 80 61 00 C0 */ lwz r3, 0xc0(r1) -/* 8015380C 0015076C 98 1D 00 08 */ stb r0, 8(r29) -/* 80153810 00150770 80 01 00 C4 */ lwz r0, 0xc4(r1) -/* 80153814 00150774 81 1C 00 0C */ lwz r8, 0xc(r28) -/* 80153818 00150778 80 FC 00 10 */ lwz r7, 0x10(r28) -/* 8015381C 0015077C 91 1D 00 0C */ stw r8, 0xc(r29) -/* 80153820 00150780 90 FD 00 10 */ stw r7, 0x10(r29) -/* 80153824 00150784 80 FC 00 14 */ lwz r7, 0x14(r28) -/* 80153828 00150788 90 FD 00 14 */ stw r7, 0x14(r29) -/* 8015382C 0015078C B0 DC 00 00 */ sth r6, 0(r28) -/* 80153830 00150790 D0 1C 00 04 */ stfs f0, 4(r28) -/* 80153834 00150794 98 BC 00 08 */ stb r5, 8(r28) -/* 80153838 00150798 90 9C 00 0C */ stw r4, 0xc(r28) -/* 8015383C 0015079C 90 7C 00 10 */ stw r3, 0x10(r28) -/* 80153840 001507A0 90 1C 00 14 */ stw r0, 0x14(r28) -/* 80153844 001507A4 48 00 00 34 */ b lbl_80153878 -lbl_80153848: -/* 80153848 001507A8 A0 01 00 B0 */ lhz r0, 0xb0(r1) -/* 8015384C 001507AC C0 01 00 B4 */ lfs f0, 0xb4(r1) -/* 80153850 001507B0 B0 1D 00 00 */ sth r0, 0(r29) -/* 80153854 001507B4 88 61 00 B8 */ lbz r3, 0xb8(r1) -/* 80153858 001507B8 D0 1D 00 04 */ stfs f0, 4(r29) -/* 8015385C 001507BC 80 01 00 BC */ lwz r0, 0xbc(r1) -/* 80153860 001507C0 98 7D 00 08 */ stb r3, 8(r29) -/* 80153864 001507C4 80 61 00 C0 */ lwz r3, 0xc0(r1) -/* 80153868 001507C8 90 1D 00 0C */ stw r0, 0xc(r29) -/* 8015386C 001507CC 80 01 00 C4 */ lwz r0, 0xc4(r1) -/* 80153870 001507D0 90 7D 00 10 */ stw r3, 0x10(r29) -/* 80153874 001507D4 90 1D 00 14 */ stw r0, 0x14(r29) -lbl_80153878: -/* 80153878 001507D8 BB 61 00 CC */ lmw r27, 0xcc(r1) -/* 8015387C 001507DC 80 01 00 E4 */ lwz r0, 0xe4(r1) -/* 80153880 001507E0 7C 08 03 A6 */ mtlr r0 -/* 80153884 001507E4 38 21 00 E0 */ addi r1, r1, 0xe0 -/* 80153888 001507E8 4E 80 00 20 */ blr - -.global sub_8015388c -sub_8015388c: -/* 8015388C 001507EC 94 21 FF 90 */ stwu r1, -0x70(r1) -/* 80153890 001507F0 7C 08 02 A6 */ mflr r0 -/* 80153894 001507F4 90 01 00 74 */ stw r0, 0x74(r1) -/* 80153898 001507F8 BF 01 00 50 */ stmw r24, 0x50(r1) -/* 8015389C 001507FC 7C 7A 1B 78 */ mr r26, r3 -/* 801538A0 00150800 7C 9B 23 78 */ mr r27, r4 -/* 801538A4 00150804 7C BC 2B 78 */ mr r28, r5 -/* 801538A8 00150808 83 E3 00 00 */ lwz r31, 0(r3) -/* 801538AC 0015080C 3B FF 00 18 */ addi r31, r31, 0x18 -/* 801538B0 00150810 48 00 01 5C */ b lbl_80153A0C -lbl_801538B4: -/* 801538B4 00150814 A0 7F 00 00 */ lhz r3, 0(r31) -/* 801538B8 00150818 7F FD FB 78 */ mr r29, r31 -/* 801538BC 0015081C C0 7F 00 04 */ lfs f3, 4(r31) -/* 801538C0 00150820 3B DF FF E8 */ addi r30, r31, -24 -/* 801538C4 00150824 88 1F 00 08 */ lbz r0, 8(r31) -/* 801538C8 00150828 54 79 04 3E */ clrlwi r25, r3, 0x10 -/* 801538CC 0015082C C0 5F 00 0C */ lfs f2, 0xc(r31) -/* 801538D0 00150830 C0 3F 00 10 */ lfs f1, 0x10(r31) -/* 801538D4 00150834 C0 1F 00 14 */ lfs f0, 0x14(r31) -/* 801538D8 00150838 B0 61 00 38 */ sth r3, 0x38(r1) -/* 801538DC 0015083C D0 61 00 3C */ stfs f3, 0x3c(r1) -/* 801538E0 00150840 98 01 00 40 */ stb r0, 0x40(r1) -/* 801538E4 00150844 D0 41 00 44 */ stfs f2, 0x44(r1) -/* 801538E8 00150848 D0 21 00 48 */ stfs f1, 0x48(r1) -/* 801538EC 0015084C D0 01 00 4C */ stfs f0, 0x4c(r1) -/* 801538F0 00150850 48 00 00 3C */ b lbl_8015392C -lbl_801538F4: -/* 801538F4 00150854 A0 1E 00 00 */ lhz r0, 0(r30) -/* 801538F8 00150858 B0 1D 00 00 */ sth r0, 0(r29) -/* 801538FC 0015085C C0 1E 00 04 */ lfs f0, 4(r30) -/* 80153900 00150860 D0 1D 00 04 */ stfs f0, 4(r29) -/* 80153904 00150864 88 1E 00 08 */ lbz r0, 8(r30) -/* 80153908 00150868 98 1D 00 08 */ stb r0, 8(r29) -/* 8015390C 0015086C 80 7E 00 0C */ lwz r3, 0xc(r30) -/* 80153910 00150870 80 1E 00 10 */ lwz r0, 0x10(r30) -/* 80153914 00150874 90 7D 00 0C */ stw r3, 0xc(r29) -/* 80153918 00150878 90 1D 00 10 */ stw r0, 0x10(r29) -/* 8015391C 0015087C 80 1E 00 14 */ lwz r0, 0x14(r30) -/* 80153920 00150880 3B DE FF E8 */ addi r30, r30, -24 -/* 80153924 00150884 90 1D 00 14 */ stw r0, 0x14(r29) -/* 80153928 00150888 3B BD FF E8 */ addi r29, r29, -24 -lbl_8015392C: -/* 8015392C 0015088C 80 1A 00 00 */ lwz r0, 0(r26) -/* 80153930 00150890 7C 00 E8 40 */ cmplw r0, r29 -/* 80153934 00150894 40 80 00 A4 */ bge lbl_801539D8 -/* 80153938 00150898 B3 21 00 08 */ sth r25, 8(r1) -/* 8015393C 0015089C 38 81 00 08 */ addi r4, r1, 8 -/* 80153940 001508A0 80 7C 00 00 */ lwz r3, 0(r28) -/* 80153944 001508A4 4B EF 8C 61 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 80153948 001508A8 7C 64 1B 78 */ mr r4, r3 -/* 8015394C 001508AC 38 61 00 18 */ addi r3, r1, 0x18 -/* 80153950 001508B0 4B F5 C3 41 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 80153954 001508B4 83 03 00 04 */ lwz r24, 4(r3) -/* 80153958 001508B8 38 81 00 0C */ addi r4, r1, 0xc -/* 8015395C 001508BC A0 1E 00 00 */ lhz r0, 0(r30) -/* 80153960 001508C0 80 7C 00 00 */ lwz r3, 0(r28) -/* 80153964 001508C4 B0 01 00 0C */ sth r0, 0xc(r1) -/* 80153968 001508C8 4B EF 8C 3D */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8015396C 001508CC 7C 64 1B 78 */ mr r4, r3 -/* 80153970 001508D0 38 61 00 10 */ addi r3, r1, 0x10 -/* 80153974 001508D4 4B F5 C3 1D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 80153978 001508D8 28 18 00 00 */ cmplwi r24, 0 -/* 8015397C 001508DC 80 63 00 04 */ lwz r3, 4(r3) -/* 80153980 001508E0 41 82 00 4C */ beq lbl_801539CC -/* 80153984 001508E4 28 03 00 00 */ cmplwi r3, 0 -/* 80153988 001508E8 41 82 00 44 */ beq lbl_801539CC -/* 8015398C 001508EC C0 A3 00 60 */ lfs f5, 0x60(r3) -/* 80153990 001508F0 C0 78 00 60 */ lfs f3, 0x60(r24) -/* 80153994 001508F4 C0 83 00 50 */ lfs f4, 0x50(r3) -/* 80153998 001508F8 C0 23 00 40 */ lfs f1, 0x40(r3) -/* 8015399C 001508FC FC 03 28 40 */ fcmpo cr0, f3, f5 -/* 801539A0 00150900 C0 58 00 50 */ lfs f2, 0x50(r24) -/* 801539A4 00150904 C0 18 00 40 */ lfs f0, 0x40(r24) -/* 801539A8 00150908 D0 21 00 2C */ stfs f1, 0x2c(r1) -/* 801539AC 0015090C D0 81 00 30 */ stfs f4, 0x30(r1) -/* 801539B0 00150910 D0 A1 00 34 */ stfs f5, 0x34(r1) -/* 801539B4 00150914 D0 01 00 20 */ stfs f0, 0x20(r1) -/* 801539B8 00150918 D0 41 00 24 */ stfs f2, 0x24(r1) -/* 801539BC 0015091C D0 61 00 28 */ stfs f3, 0x28(r1) -/* 801539C0 00150920 7C 00 00 26 */ mfcr r0 -/* 801539C4 00150924 54 00 0F FE */ srwi r0, r0, 0x1f -/* 801539C8 00150928 48 00 00 08 */ b lbl_801539D0 -lbl_801539CC: -/* 801539CC 0015092C 38 00 00 00 */ li r0, 0 -lbl_801539D0: -/* 801539D0 00150930 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 801539D4 00150934 40 82 FF 20 */ bne lbl_801538F4 -lbl_801539D8: -/* 801539D8 00150938 A0 01 00 38 */ lhz r0, 0x38(r1) -/* 801539DC 0015093C 3B FF 00 18 */ addi r31, r31, 0x18 -/* 801539E0 00150940 C0 01 00 3C */ lfs f0, 0x3c(r1) -/* 801539E4 00150944 B0 1D 00 00 */ sth r0, 0(r29) -/* 801539E8 00150948 88 61 00 40 */ lbz r3, 0x40(r1) -/* 801539EC 0015094C D0 1D 00 04 */ stfs f0, 4(r29) -/* 801539F0 00150950 80 01 00 44 */ lwz r0, 0x44(r1) -/* 801539F4 00150954 98 7D 00 08 */ stb r3, 8(r29) -/* 801539F8 00150958 80 61 00 48 */ lwz r3, 0x48(r1) -/* 801539FC 0015095C 90 1D 00 0C */ stw r0, 0xc(r29) -/* 80153A00 00150960 80 01 00 4C */ lwz r0, 0x4c(r1) -/* 80153A04 00150964 90 7D 00 10 */ stw r3, 0x10(r29) -/* 80153A08 00150968 90 1D 00 14 */ stw r0, 0x14(r29) -lbl_80153A0C: -/* 80153A0C 0015096C 80 1B 00 00 */ lwz r0, 0(r27) -/* 80153A10 00150970 7C 1F 00 40 */ cmplw r31, r0 -/* 80153A14 00150974 41 80 FE A0 */ blt lbl_801538B4 -/* 80153A18 00150978 BB 01 00 50 */ lmw r24, 0x50(r1) -/* 80153A1C 0015097C 80 01 00 74 */ lwz r0, 0x74(r1) -/* 80153A20 00150980 7C 08 03 A6 */ mtlr r0 -/* 80153A24 00150984 38 21 00 70 */ addi r1, r1, 0x70 -/* 80153A28 00150988 4E 80 00 20 */ blr - -.global __dt__18CScriptActorRotateFv -__dt__18CScriptActorRotateFv: -/* 80153A2C 0015098C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80153A30 00150990 7C 08 02 A6 */ mflr r0 -/* 80153A34 00150994 90 01 00 24 */ stw r0, 0x24(r1) -/* 80153A38 00150998 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80153A3C 0015099C 7C 9F 23 78 */ mr r31, r4 -/* 80153A40 001509A0 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80153A44 001509A4 7C 7E 1B 79 */ or. r30, r3, r3 -/* 80153A48 001509A8 41 82 00 74 */ beq lbl_80153ABC -/* 80153A4C 001509AC 3C 60 80 3E */ lis r3, lbl_803E2D08@ha -/* 80153A50 001509B0 34 1E 00 48 */ addic. r0, r30, 0x48 -/* 80153A54 001509B4 38 03 2D 08 */ addi r0, r3, lbl_803E2D08@l -/* 80153A58 001509B8 90 1E 00 00 */ stw r0, 0(r30) -/* 80153A5C 001509BC 41 82 00 44 */ beq lbl_80153AA0 -/* 80153A60 001509C0 80 1E 00 4C */ lwz r0, 0x4c(r30) -/* 80153A64 001509C4 80 7E 00 54 */ lwz r3, 0x54(r30) -/* 80153A68 001509C8 1C 00 00 34 */ mulli r0, r0, 0x34 -/* 80153A6C 001509CC 90 61 00 0C */ stw r3, 0xc(r1) -/* 80153A70 001509D0 7C 64 1B 78 */ mr r4, r3 -/* 80153A74 001509D4 7C 03 02 14 */ add r0, r3, r0 -/* 80153A78 001509D8 90 61 00 08 */ stw r3, 8(r1) -/* 80153A7C 001509DC 90 01 00 14 */ stw r0, 0x14(r1) -/* 80153A80 001509E0 90 01 00 10 */ stw r0, 0x10(r1) -/* 80153A84 001509E4 48 00 00 08 */ b lbl_80153A8C -lbl_80153A88: -/* 80153A88 001509E8 38 84 00 34 */ addi r4, r4, 0x34 -lbl_80153A8C: -/* 80153A8C 001509EC 7C 04 00 40 */ cmplw r4, r0 -/* 80153A90 001509F0 40 82 FF F8 */ bne lbl_80153A88 -/* 80153A94 001509F4 28 03 00 00 */ cmplwi r3, 0 -/* 80153A98 001509F8 41 82 00 08 */ beq lbl_80153AA0 -/* 80153A9C 001509FC 48 1C 1E 95 */ bl Free__7CMemoryFPCv -lbl_80153AA0: -/* 80153AA0 00150A00 7F C3 F3 78 */ mr r3, r30 -/* 80153AA4 00150A04 38 80 00 00 */ li r4, 0 -/* 80153AA8 00150A08 4B EF D7 CD */ bl __dt__7CEntityFv -/* 80153AAC 00150A0C 7F E0 07 35 */ extsh. r0, r31 -/* 80153AB0 00150A10 40 81 00 0C */ ble lbl_80153ABC -/* 80153AB4 00150A14 7F C3 F3 78 */ mr r3, r30 -/* 80153AB8 00150A18 48 1C 1E 79 */ bl Free__7CMemoryFPCv -lbl_80153ABC: -/* 80153ABC 00150A1C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80153AC0 00150A20 7F C3 F3 78 */ mr r3, r30 -/* 80153AC4 00150A24 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80153AC8 00150A28 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 80153ACC 00150A2C 7C 08 03 A6 */ mtlr r0 -/* 80153AD0 00150A30 38 21 00 20 */ addi r1, r1, 0x20 -/* 80153AD4 00150A34 4E 80 00 20 */ blr - -.global Accept__18CScriptActorRotateFR8IVisitor -Accept__18CScriptActorRotateFR8IVisitor: -/* 80153AD8 00150A38 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80153ADC 00150A3C 7C 08 02 A6 */ mflr r0 -/* 80153AE0 00150A40 90 01 00 14 */ stw r0, 0x14(r1) -/* 80153AE4 00150A44 7C 60 1B 78 */ mr r0, r3 -/* 80153AE8 00150A48 7C 83 23 78 */ mr r3, r4 -/* 80153AEC 00150A4C 81 84 00 00 */ lwz r12, 0(r4) -/* 80153AF0 00150A50 7C 04 03 78 */ mr r4, r0 -/* 80153AF4 00150A54 81 8C 00 24 */ lwz r12, 0x24(r12) -/* 80153AF8 00150A58 7D 89 03 A6 */ mtctr r12 -/* 80153AFC 00150A5C 4E 80 04 21 */ bctrl -/* 80153B00 00150A60 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80153B04 00150A64 7C 08 03 A6 */ mtlr r0 -/* 80153B08 00150A68 38 21 00 10 */ addi r1, r1, 0x10 -/* 80153B0C 00150A6C 4E 80 00 20 */ blr - -.global AcceptScriptMsg__18CScriptActorRotateF20EScriptObjectMessage9TUniqueIdR13CStateManager -AcceptScriptMsg__18CScriptActorRotateF20EScriptObjectMessage9TUniqueIdR13CStateManager: -/* 80153B10 00150A70 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80153B14 00150A74 7C 08 02 A6 */ mflr r0 -/* 80153B18 00150A78 90 01 00 34 */ stw r0, 0x34(r1) -/* 80153B1C 00150A7C BF 61 00 1C */ stmw r27, 0x1c(r1) -/* 80153B20 00150A80 7C 9C 23 78 */ mr r28, r4 -/* 80153B24 00150A84 2C 1C 00 13 */ cmpwi r28, 0x13 -/* 80153B28 00150A88 7C 7B 1B 78 */ mr r27, r3 -/* 80153B2C 00150A8C 7C BD 2B 78 */ mr r29, r5 -/* 80153B30 00150A90 7C DE 33 78 */ mr r30, r6 -/* 80153B34 00150A94 3B E0 00 00 */ li r31, 0 -/* 80153B38 00150A98 41 82 00 4C */ beq lbl_80153B84 -/* 80153B3C 00150A9C 40 80 00 1C */ bge lbl_80153B58 -/* 80153B40 00150AA0 2C 1C 00 08 */ cmpwi r28, 8 -/* 80153B44 00150AA4 41 82 00 40 */ beq lbl_80153B84 -/* 80153B48 00150AA8 40 80 00 60 */ bge lbl_80153BA8 -/* 80153B4C 00150AAC 2C 1C 00 01 */ cmpwi r28, 1 -/* 80153B50 00150AB0 41 82 00 14 */ beq lbl_80153B64 -/* 80153B54 00150AB4 48 00 00 54 */ b lbl_80153BA8 -lbl_80153B58: -/* 80153B58 00150AB8 2C 1C 00 21 */ cmpwi r28, 0x21 -/* 80153B5C 00150ABC 41 82 00 1C */ beq lbl_80153B78 -/* 80153B60 00150AC0 48 00 00 48 */ b lbl_80153BA8 -lbl_80153B64: -/* 80153B64 00150AC4 A0 1D 00 00 */ lhz r0, 0(r29) -/* 80153B68 00150AC8 38 A1 00 0C */ addi r5, r1, 0xc -/* 80153B6C 00150ACC B0 01 00 0C */ sth r0, 0xc(r1) -/* 80153B70 00150AD0 4B EF D5 ED */ bl AcceptScriptMsg__7CEntityF20EScriptObjectMessage9TUniqueIdR13CStateManager -/* 80153B74 00150AD4 3B E0 00 01 */ li r31, 1 -lbl_80153B78: -/* 80153B78 00150AD8 88 1B 00 58 */ lbz r0, 0x58(r27) -/* 80153B7C 00150ADC 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f -/* 80153B80 00150AE0 41 82 00 28 */ beq lbl_80153BA8 -lbl_80153B84: -/* 80153B84 00150AE4 88 1B 00 30 */ lbz r0, 0x30(r27) -/* 80153B88 00150AE8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80153B8C 00150AEC 41 82 00 1C */ beq lbl_80153BA8 -/* 80153B90 00150AF0 20 1C 00 08 */ subfic r0, r28, 8 -/* 80153B94 00150AF4 7F 63 DB 78 */ mr r3, r27 -/* 80153B98 00150AF8 7C 00 00 34 */ cntlzw r0, r0 -/* 80153B9C 00150AFC 7F C5 F3 78 */ mr r5, r30 -/* 80153BA0 00150B00 54 04 D9 7E */ srwi r4, r0, 5 -/* 80153BA4 00150B04 48 00 00 3D */ bl UpdateActors__18CScriptActorRotateFbR13CStateManager -lbl_80153BA8: -/* 80153BA8 00150B08 57 E0 06 3F */ clrlwi. r0, r31, 0x18 -/* 80153BAC 00150B0C 40 82 00 20 */ bne lbl_80153BCC -/* 80153BB0 00150B10 A0 1D 00 00 */ lhz r0, 0(r29) -/* 80153BB4 00150B14 7F 63 DB 78 */ mr r3, r27 -/* 80153BB8 00150B18 7F 84 E3 78 */ mr r4, r28 -/* 80153BBC 00150B1C 7F C6 F3 78 */ mr r6, r30 -/* 80153BC0 00150B20 B0 01 00 08 */ sth r0, 8(r1) -/* 80153BC4 00150B24 38 A1 00 08 */ addi r5, r1, 8 -/* 80153BC8 00150B28 4B EF D5 95 */ bl AcceptScriptMsg__7CEntityF20EScriptObjectMessage9TUniqueIdR13CStateManager -lbl_80153BCC: -/* 80153BCC 00150B2C BB 61 00 1C */ lmw r27, 0x1c(r1) -/* 80153BD0 00150B30 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80153BD4 00150B34 7C 08 03 A6 */ mtlr r0 -/* 80153BD8 00150B38 38 21 00 30 */ addi r1, r1, 0x30 -/* 80153BDC 00150B3C 4E 80 00 20 */ blr - -.global UpdateActors__18CScriptActorRotateFbR13CStateManager -UpdateActors__18CScriptActorRotateFbR13CStateManager: -/* 80153BE0 00150B40 94 21 FF 10 */ stwu r1, -0xf0(r1) -/* 80153BE4 00150B44 7C 08 02 A6 */ mflr r0 -/* 80153BE8 00150B48 90 01 00 F4 */ stw r0, 0xf4(r1) -/* 80153BEC 00150B4C BE C1 00 C8 */ stmw r22, 0xc8(r1) -/* 80153BF0 00150B50 7C 77 1B 78 */ mr r23, r3 -/* 80153BF4 00150B54 7C 98 23 78 */ mr r24, r4 -/* 80153BF8 00150B58 7C B9 2B 78 */ mr r25, r5 -/* 80153BFC 00150B5C 88 03 00 58 */ lbz r0, 0x58(r3) -/* 80153C00 00150B60 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80153C04 00150B64 40 82 02 4C */ bne lbl_80153E50 -/* 80153C08 00150B68 80 17 00 4C */ lwz r0, 0x4c(r23) -/* 80153C0C 00150B6C 80 77 00 54 */ lwz r3, 0x54(r23) -/* 80153C10 00150B70 1C 00 00 34 */ mulli r0, r0, 0x34 -/* 80153C14 00150B74 90 61 00 10 */ stw r3, 0x10(r1) -/* 80153C18 00150B78 7C 03 02 14 */ add r0, r3, r0 -/* 80153C1C 00150B7C 90 61 00 0C */ stw r3, 0xc(r1) -/* 80153C20 00150B80 90 01 00 18 */ stw r0, 0x18(r1) -/* 80153C24 00150B84 90 01 00 14 */ stw r0, 0x14(r1) -/* 80153C28 00150B88 48 00 00 08 */ b lbl_80153C30 -lbl_80153C2C: -/* 80153C2C 00150B8C 38 63 00 34 */ addi r3, r3, 0x34 -lbl_80153C30: -/* 80153C30 00150B90 7C 03 00 40 */ cmplw r3, r0 -/* 80153C34 00150B94 40 82 FF F8 */ bne lbl_80153C2C -/* 80153C38 00150B98 38 00 00 00 */ li r0, 0 -/* 80153C3C 00150B9C 3B 41 00 8C */ addi r26, r1, 0x8c -/* 80153C40 00150BA0 90 17 00 4C */ stw r0, 0x4c(r23) -/* 80153C44 00150BA4 83 F7 00 2C */ lwz r31, 0x2c(r23) -/* 80153C48 00150BA8 48 00 01 A4 */ b lbl_80153DEC -lbl_80153C4C: -/* 80153C4C 00150BAC 80 1F 00 00 */ lwz r0, 0(r31) -/* 80153C50 00150BB0 2C 00 00 12 */ cmpwi r0, 0x12 -/* 80153C54 00150BB4 40 82 01 94 */ bne lbl_80153DE8 -/* 80153C58 00150BB8 80 1F 00 04 */ lwz r0, 4(r31) -/* 80153C5C 00150BBC 2C 00 00 14 */ cmpwi r0, 0x14 -/* 80153C60 00150BC0 40 82 01 88 */ bne lbl_80153DE8 -/* 80153C64 00150BC4 80 1F 00 08 */ lwz r0, 8(r31) -/* 80153C68 00150BC8 7F 24 CB 78 */ mr r4, r25 -/* 80153C6C 00150BCC 38 61 00 38 */ addi r3, r1, 0x38 -/* 80153C70 00150BD0 38 A1 00 1C */ addi r5, r1, 0x1c -/* 80153C74 00150BD4 90 01 00 1C */ stw r0, 0x1c(r1) -/* 80153C78 00150BD8 4B EF 43 51 */ bl GetIdListForScript__13CStateManagerCF9TEditorId -/* 80153C7C 00150BDC 80 C1 00 38 */ lwz r6, 0x38(r1) -/* 80153C80 00150BE0 38 00 00 00 */ li r0, 0 -/* 80153C84 00150BE4 80 81 00 40 */ lwz r4, 0x40(r1) -/* 80153C88 00150BE8 80 A1 00 3C */ lwz r5, 0x3c(r1) -/* 80153C8C 00150BEC 80 61 00 44 */ lwz r3, 0x44(r1) -/* 80153C90 00150BF0 7C 06 20 40 */ cmplw r6, r4 -/* 80153C94 00150BF4 90 C1 00 48 */ stw r6, 0x48(r1) -/* 80153C98 00150BF8 90 A1 00 4C */ stw r5, 0x4c(r1) -/* 80153C9C 00150BFC 90 81 00 50 */ stw r4, 0x50(r1) -/* 80153CA0 00150C00 90 61 00 54 */ stw r3, 0x54(r1) -/* 80153CA4 00150C04 40 82 00 10 */ bne lbl_80153CB4 -/* 80153CA8 00150C08 7C 05 18 40 */ cmplw r5, r3 -/* 80153CAC 00150C0C 40 82 00 08 */ bne lbl_80153CB4 -/* 80153CB0 00150C10 38 00 00 01 */ li r0, 1 -lbl_80153CB4: -/* 80153CB4 00150C14 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 80153CB8 00150C18 40 82 01 30 */ bne lbl_80153DE8 -/* 80153CBC 00150C1C 80 E1 00 50 */ lwz r7, 0x50(r1) -/* 80153CC0 00150C20 38 61 00 30 */ addi r3, r1, 0x30 -/* 80153CC4 00150C24 80 C1 00 54 */ lwz r6, 0x54(r1) -/* 80153CC8 00150C28 38 81 00 28 */ addi r4, r1, 0x28 -/* 80153CCC 00150C2C 80 A1 00 48 */ lwz r5, 0x48(r1) -/* 80153CD0 00150C30 80 01 00 4C */ lwz r0, 0x4c(r1) -/* 80153CD4 00150C34 90 E1 00 28 */ stw r7, 0x28(r1) -/* 80153CD8 00150C38 90 C1 00 2C */ stw r6, 0x2c(r1) -/* 80153CDC 00150C3C 90 A1 00 30 */ stw r5, 0x30(r1) -/* 80153CE0 00150C40 90 01 00 34 */ stw r0, 0x34(r1) -/* 80153CE4 00150C44 83 77 00 4C */ lwz r27, 0x4c(r23) -/* 80153CE8 00150C48 48 00 08 B9 */ bl "distance,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>14const_iterator>__4rstlFQ34rstl195red_black_tree<13TGameScriptId,Q24rstl32pair<13TGameScriptId,9TUniqueId>,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>14const_iteratorQ34rstl195red_black_tree<13TGameScriptId,Q24rstl32" -/* 80153CEC 00150C4C 7C 60 1B 78 */ mr r0, r3 -/* 80153CF0 00150C50 38 77 00 48 */ addi r3, r23, 0x48 -/* 80153CF4 00150C54 7C 9B 02 14 */ add r4, r27, r0 -/* 80153CF8 00150C58 48 00 09 85 */ bl "reserve__Q24rstl75vector,Q24rstl17rmemory_allocator>Fi" -/* 80153CFC 00150C5C 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 80153D00 00150C60 83 A1 00 4C */ lwz r29, 0x4c(r1) -/* 80153D04 00150C64 83 81 00 50 */ lwz r28, 0x50(r1) -/* 80153D08 00150C68 83 61 00 54 */ lwz r27, 0x54(r1) -/* 80153D0C 00150C6C 48 00 00 BC */ b lbl_80153DC8 -lbl_80153D10: -/* 80153D10 00150C70 A0 1E 00 14 */ lhz r0, 0x14(r30) -/* 80153D14 00150C74 7F 23 CB 78 */ mr r3, r25 -/* 80153D18 00150C78 38 81 00 08 */ addi r4, r1, 8 -/* 80153D1C 00150C7C B0 01 00 08 */ sth r0, 8(r1) -/* 80153D20 00150C80 4B EF 88 55 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80153D24 00150C84 7C 64 1B 78 */ mr r4, r3 -/* 80153D28 00150C88 38 61 00 20 */ addi r3, r1, 0x20 -/* 80153D2C 00150C8C 4B F5 BF 65 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 80153D30 00150C90 82 C3 00 04 */ lwz r22, 4(r3) -/* 80153D34 00150C94 28 16 00 00 */ cmplwi r22, 0 -/* 80153D38 00150C98 41 82 00 80 */ beq lbl_80153DB8 -/* 80153D3C 00150C9C 38 61 00 58 */ addi r3, r1, 0x58 -/* 80153D40 00150CA0 38 96 00 34 */ addi r4, r22, 0x34 -/* 80153D44 00150CA4 48 1B EE FD */ bl GetRotation__12CTransform4fCFv -/* 80153D48 00150CA8 A0 16 00 08 */ lhz r0, 8(r22) -/* 80153D4C 00150CAC 7F 43 D3 78 */ mr r3, r26 -/* 80153D50 00150CB0 38 81 00 58 */ addi r4, r1, 0x58 -/* 80153D54 00150CB4 B0 01 00 88 */ sth r0, 0x88(r1) -/* 80153D58 00150CB8 48 1B EE 1D */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80153D5C 00150CBC 80 17 00 4C */ lwz r0, 0x4c(r23) -/* 80153D60 00150CC0 80 B7 00 50 */ lwz r5, 0x50(r23) -/* 80153D64 00150CC4 7C 00 28 00 */ cmpw r0, r5 -/* 80153D68 00150CC8 41 80 00 1C */ blt lbl_80153D84 -/* 80153D6C 00150CCC 2C 05 00 00 */ cmpwi r5, 0 -/* 80153D70 00150CD0 38 77 00 48 */ addi r3, r23, 0x48 -/* 80153D74 00150CD4 38 80 00 04 */ li r4, 4 -/* 80153D78 00150CD8 41 82 00 08 */ beq lbl_80153D80 -/* 80153D7C 00150CDC 54 A4 08 3C */ slwi r4, r5, 1 -lbl_80153D80: -/* 80153D80 00150CE0 48 00 08 FD */ bl "reserve__Q24rstl75vector,Q24rstl17rmemory_allocator>Fi" -lbl_80153D84: -/* 80153D84 00150CE4 80 17 00 4C */ lwz r0, 0x4c(r23) -/* 80153D88 00150CE8 80 77 00 54 */ lwz r3, 0x54(r23) -/* 80153D8C 00150CEC 1C 00 00 34 */ mulli r0, r0, 0x34 -/* 80153D90 00150CF0 7C A3 02 15 */ add. r5, r3, r0 -/* 80153D94 00150CF4 41 82 00 18 */ beq lbl_80153DAC -/* 80153D98 00150CF8 A0 01 00 88 */ lhz r0, 0x88(r1) -/* 80153D9C 00150CFC 7F 44 D3 78 */ mr r4, r26 -/* 80153DA0 00150D00 38 65 00 04 */ addi r3, r5, 4 -/* 80153DA4 00150D04 B0 05 00 00 */ sth r0, 0(r5) -/* 80153DA8 00150D08 48 1B ED CD */ bl __ct__12CTransform4fFRC12CTransform4f -lbl_80153DAC: -/* 80153DAC 00150D0C 80 77 00 4C */ lwz r3, 0x4c(r23) -/* 80153DB0 00150D10 38 03 00 01 */ addi r0, r3, 1 -/* 80153DB4 00150D14 90 17 00 4C */ stw r0, 0x4c(r23) -lbl_80153DB8: -/* 80153DB8 00150D18 7F A3 EB 78 */ mr r3, r29 -/* 80153DBC 00150D1C 7F C4 F3 78 */ mr r4, r30 -/* 80153DC0 00150D20 48 1E 88 21 */ bl rbtree_traverse_forward__4rstlFPCvPv -/* 80153DC4 00150D24 7C 7E 1B 78 */ mr r30, r3 -lbl_80153DC8: -/* 80153DC8 00150D28 7C 1E E0 40 */ cmplw r30, r28 -/* 80153DCC 00150D2C 38 00 00 00 */ li r0, 0 -/* 80153DD0 00150D30 40 82 00 0C */ bne lbl_80153DDC -/* 80153DD4 00150D34 7C 1D D8 40 */ cmplw r29, r27 -/* 80153DD8 00150D38 41 82 00 08 */ beq lbl_80153DE0 -lbl_80153DDC: -/* 80153DDC 00150D3C 38 00 00 01 */ li r0, 1 -lbl_80153DE0: -/* 80153DE0 00150D40 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 80153DE4 00150D44 40 82 FF 2C */ bne lbl_80153D10 -lbl_80153DE8: -/* 80153DE8 00150D48 3B FF 00 0C */ addi r31, r31, 0xc -lbl_80153DEC: -/* 80153DEC 00150D4C 80 17 00 24 */ lwz r0, 0x24(r23) -/* 80153DF0 00150D50 80 77 00 2C */ lwz r3, 0x2c(r23) -/* 80153DF4 00150D54 1C 00 00 0C */ mulli r0, r0, 0xc -/* 80153DF8 00150D58 7C 03 02 14 */ add r0, r3, r0 -/* 80153DFC 00150D5C 7C 1F 00 40 */ cmplw r31, r0 -/* 80153E00 00150D60 40 82 FE 4C */ bne lbl_80153C4C -/* 80153E04 00150D64 7E E3 BB 78 */ mr r3, r23 -/* 80153E08 00150D68 7F 25 CB 78 */ mr r5, r25 -/* 80153E0C 00150D6C 38 80 00 12 */ li r4, 0x12 -/* 80153E10 00150D70 38 C0 FF FF */ li r6, -1 -/* 80153E14 00150D74 4B EF D2 AD */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 80153E18 00150D78 80 17 00 4C */ lwz r0, 0x4c(r23) -/* 80153E1C 00150D7C 2C 00 00 00 */ cmpwi r0, 0 -/* 80153E20 00150D80 41 82 00 30 */ beq lbl_80153E50 -/* 80153E24 00150D84 88 77 00 58 */ lbz r3, 0x58(r23) -/* 80153E28 00150D88 38 80 00 01 */ li r4, 1 -/* 80153E2C 00150D8C 50 83 3E 30 */ rlwimi r3, r4, 7, 0x18, 0x18 -/* 80153E30 00150D90 57 00 06 3F */ clrlwi. r0, r24, 0x18 -/* 80153E34 00150D94 98 77 00 58 */ stb r3, 0x58(r23) -/* 80153E38 00150D98 41 82 00 10 */ beq lbl_80153E48 -/* 80153E3C 00150D9C C0 17 00 40 */ lfs f0, 0x40(r23) -/* 80153E40 00150DA0 D0 17 00 44 */ stfs f0, 0x44(r23) -/* 80153E44 00150DA4 48 00 00 0C */ b lbl_80153E50 -lbl_80153E48: -/* 80153E48 00150DA8 C0 02 9D F8 */ lfs f0, lbl_805ABB18@sda21(r2) -/* 80153E4C 00150DAC D0 17 00 44 */ stfs f0, 0x44(r23) -lbl_80153E50: -/* 80153E50 00150DB0 BA C1 00 C8 */ lmw r22, 0xc8(r1) -/* 80153E54 00150DB4 80 01 00 F4 */ lwz r0, 0xf4(r1) -/* 80153E58 00150DB8 7C 08 03 A6 */ mtlr r0 -/* 80153E5C 00150DBC 38 21 00 F0 */ addi r1, r1, 0xf0 -/* 80153E60 00150DC0 4E 80 00 20 */ blr - -.global Think__18CScriptActorRotateFfR13CStateManager -Think__18CScriptActorRotateFfR13CStateManager: -/* 80153E64 00150DC4 94 21 FE 30 */ stwu r1, -0x1d0(r1) -/* 80153E68 00150DC8 7C 08 02 A6 */ mflr r0 -/* 80153E6C 00150DCC 90 01 01 D4 */ stw r0, 0x1d4(r1) -/* 80153E70 00150DD0 DB E1 01 C0 */ stfd f31, 0x1c0(r1) -/* 80153E74 00150DD4 F3 E1 01 C8 */ psq_st f31, 456(r1), 0, qr0 -/* 80153E78 00150DD8 93 E1 01 BC */ stw r31, 0x1bc(r1) -/* 80153E7C 00150DDC 93 C1 01 B8 */ stw r30, 0x1b8(r1) -/* 80153E80 00150DE0 93 A1 01 B4 */ stw r29, 0x1b4(r1) -/* 80153E84 00150DE4 93 81 01 B0 */ stw r28, 0x1b0(r1) -/* 80153E88 00150DE8 88 03 00 58 */ lbz r0, 0x58(r3) -/* 80153E8C 00150DEC 7C 7E 1B 78 */ mr r30, r3 -/* 80153E90 00150DF0 7C 9F 23 78 */ mr r31, r4 -/* 80153E94 00150DF4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80153E98 00150DF8 41 82 02 24 */ beq lbl_801540BC -/* 80153E9C 00150DFC 88 1E 00 30 */ lbz r0, 0x30(r30) -/* 80153EA0 00150E00 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80153EA4 00150E04 40 82 00 08 */ bne lbl_80153EAC -/* 80153EA8 00150E08 48 00 02 14 */ b lbl_801540BC -lbl_80153EAC: -/* 80153EAC 00150E0C C0 1E 00 44 */ lfs f0, 0x44(r30) -/* 80153EB0 00150E10 EC 00 08 2A */ fadds f0, f0, f1 -/* 80153EB4 00150E14 D0 1E 00 44 */ stfs f0, 0x44(r30) -/* 80153EB8 00150E18 C0 3E 00 44 */ lfs f1, 0x44(r30) -/* 80153EBC 00150E1C C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 80153EC0 00150E20 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80153EC4 00150E24 4C 41 13 82 */ cror 2, 1, 2 -/* 80153EC8 00150E28 40 82 00 1C */ bne lbl_80153EE4 -/* 80153ECC 00150E2C 88 1E 00 58 */ lbz r0, 0x58(r30) -/* 80153ED0 00150E30 38 60 00 00 */ li r3, 0 -/* 80153ED4 00150E34 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80153ED8 00150E38 98 1E 00 58 */ stb r0, 0x58(r30) -/* 80153EDC 00150E3C C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 80153EE0 00150E40 D0 1E 00 44 */ stfs f0, 0x44(r30) -lbl_80153EE4: -/* 80153EE4 00150E44 C0 3E 00 44 */ lfs f1, 0x44(r30) -/* 80153EE8 00150E48 C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 80153EEC 00150E4C 83 BE 00 54 */ lwz r29, 0x54(r30) -/* 80153EF0 00150E50 EF E1 00 24 */ fdivs f31, f1, f0 -/* 80153EF4 00150E54 48 00 01 74 */ b lbl_80154068 -lbl_80153EF8: -/* 80153EF8 00150E58 A0 1D 00 00 */ lhz r0, 0(r29) -/* 80153EFC 00150E5C 7F E3 FB 78 */ mr r3, r31 -/* 80153F00 00150E60 38 81 00 0C */ addi r4, r1, 0xc -/* 80153F04 00150E64 B0 01 00 0C */ sth r0, 0xc(r1) -/* 80153F08 00150E68 4B EF 86 6D */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80153F0C 00150E6C 7C 64 1B 78 */ mr r4, r3 -/* 80153F10 00150E70 38 61 00 24 */ addi r3, r1, 0x24 -/* 80153F14 00150E74 4B F5 BD 7D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 80153F18 00150E78 83 83 00 04 */ lwz r28, 4(r3) -/* 80153F1C 00150E7C 28 1C 00 00 */ cmplwi r28, 0 -/* 80153F20 00150E80 41 82 01 44 */ beq lbl_80154064 -/* 80153F24 00150E84 C0 1E 00 3C */ lfs f0, 0x3c(r30) -/* 80153F28 00150E88 38 61 00 5C */ addi r3, r1, 0x5c -/* 80153F2C 00150E8C C0 22 9D FC */ lfs f1, lbl_805ABB1C@sda21(r2) -/* 80153F30 00150E90 38 81 00 10 */ addi r4, r1, 0x10 -/* 80153F34 00150E94 EC 1F 00 32 */ fmuls f0, f31, f0 -/* 80153F38 00150E98 EC 01 00 32 */ fmuls f0, f1, f0 -/* 80153F3C 00150E9C D0 01 00 10 */ stfs f0, 0x10(r1) -/* 80153F40 00150EA0 C0 1E 00 38 */ lfs f0, 0x38(r30) -/* 80153F44 00150EA4 EC 1F 00 32 */ fmuls f0, f31, f0 -/* 80153F48 00150EA8 EC 01 00 32 */ fmuls f0, f1, f0 -/* 80153F4C 00150EAC D0 01 00 14 */ stfs f0, 0x14(r1) -/* 80153F50 00150EB0 C0 1E 00 34 */ lfs f0, 0x34(r30) -/* 80153F54 00150EB4 EC 1F 00 32 */ fmuls f0, f31, f0 -/* 80153F58 00150EB8 EC 01 00 32 */ fmuls f0, f1, f0 -/* 80153F5C 00150EBC D0 01 00 18 */ stfs f0, 0x18(r1) -/* 80153F60 00150EC0 48 1B F8 B1 */ bl RotateZ__12CTransform4fFRC9CRelAngle -/* 80153F64 00150EC4 38 61 00 8C */ addi r3, r1, 0x8c -/* 80153F68 00150EC8 38 81 00 14 */ addi r4, r1, 0x14 -/* 80153F6C 00150ECC 48 1B F9 3D */ bl RotateY__12CTransform4fFRC9CRelAngle -/* 80153F70 00150ED0 38 61 00 BC */ addi r3, r1, 0xbc -/* 80153F74 00150ED4 38 81 00 18 */ addi r4, r1, 0x18 -/* 80153F78 00150ED8 48 1B F9 C9 */ bl RotateX__12CTransform4fFRC9CRelAngle -/* 80153F7C 00150EDC 38 61 00 EC */ addi r3, r1, 0xec -/* 80153F80 00150EE0 38 81 00 BC */ addi r4, r1, 0xbc -/* 80153F84 00150EE4 38 A1 00 8C */ addi r5, r1, 0x8c -/* 80153F88 00150EE8 48 1B E9 C9 */ bl __ml__12CTransform4fCFRC12CTransform4f -/* 80153F8C 00150EEC 38 61 01 1C */ addi r3, r1, 0x11c -/* 80153F90 00150EF0 38 81 00 EC */ addi r4, r1, 0xec -/* 80153F94 00150EF4 38 A1 00 5C */ addi r5, r1, 0x5c -/* 80153F98 00150EF8 48 1B E9 B9 */ bl __ml__12CTransform4fCFRC12CTransform4f -/* 80153F9C 00150EFC 38 61 01 7C */ addi r3, r1, 0x17c -/* 80153FA0 00150F00 38 81 01 1C */ addi r4, r1, 0x11c -/* 80153FA4 00150F04 48 1B EB D1 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80153FA8 00150F08 38 61 00 2C */ addi r3, r1, 0x2c -/* 80153FAC 00150F0C 38 9D 00 04 */ addi r4, r29, 4 -/* 80153FB0 00150F10 38 A1 01 7C */ addi r5, r1, 0x17c -/* 80153FB4 00150F14 48 1B E9 9D */ bl __ml__12CTransform4fCFRC12CTransform4f -/* 80153FB8 00150F18 38 61 01 4C */ addi r3, r1, 0x14c -/* 80153FBC 00150F1C 38 81 00 2C */ addi r4, r1, 0x2c -/* 80153FC0 00150F20 48 1B EB B5 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80153FC4 00150F24 C0 5C 00 60 */ lfs f2, 0x60(r28) -/* 80153FC8 00150F28 38 7C 00 34 */ addi r3, r28, 0x34 -/* 80153FCC 00150F2C C0 01 01 78 */ lfs f0, 0x178(r1) -/* 80153FD0 00150F30 38 81 01 4C */ addi r4, r1, 0x14c -/* 80153FD4 00150F34 C0 9C 00 50 */ lfs f4, 0x50(r28) -/* 80153FD8 00150F38 C0 21 01 68 */ lfs f1, 0x168(r1) -/* 80153FDC 00150F3C EC 00 10 2A */ fadds f0, f0, f2 -/* 80153FE0 00150F40 C0 5C 00 40 */ lfs f2, 0x40(r28) -/* 80153FE4 00150F44 C0 61 01 58 */ lfs f3, 0x158(r1) -/* 80153FE8 00150F48 EC 21 20 2A */ fadds f1, f1, f4 -/* 80153FEC 00150F4C D0 01 01 78 */ stfs f0, 0x178(r1) -/* 80153FF0 00150F50 EC 03 10 2A */ fadds f0, f3, f2 -/* 80153FF4 00150F54 D0 21 01 68 */ stfs f1, 0x168(r1) -/* 80153FF8 00150F58 D0 01 01 58 */ stfs f0, 0x158(r1) -/* 80153FFC 00150F5C 48 1B EB 45 */ bl __as__12CTransform4fFRC12CTransform4f -/* 80154000 00150F60 88 1C 00 E4 */ lbz r0, 0xe4(r28) -/* 80154004 00150F64 38 A0 00 01 */ li r5, 1 -/* 80154008 00150F68 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b -/* 8015400C 00150F6C 7F E3 FB 78 */ mr r3, r31 -/* 80154010 00150F70 98 1C 00 E4 */ stb r0, 0xe4(r28) -/* 80154014 00150F74 38 81 00 08 */ addi r4, r1, 8 -/* 80154018 00150F78 88 1C 00 E4 */ lbz r0, 0xe4(r28) -/* 8015401C 00150F7C 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c -/* 80154020 00150F80 98 1C 00 E4 */ stb r0, 0xe4(r28) -/* 80154024 00150F84 88 1C 00 E4 */ lbz r0, 0xe4(r28) -/* 80154028 00150F88 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d -/* 8015402C 00150F8C 98 1C 00 E4 */ stb r0, 0xe4(r28) -/* 80154030 00150F90 A0 1D 00 00 */ lhz r0, 0(r29) -/* 80154034 00150F94 B0 01 00 08 */ sth r0, 8(r1) -/* 80154038 00150F98 4B EF 85 3D */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8015403C 00150F9C 7C 64 1B 78 */ mr r4, r3 -/* 80154040 00150FA0 38 61 00 1C */ addi r3, r1, 0x1c -/* 80154044 00150FA4 4B F5 4D D1 */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" -/* 80154048 00150FA8 80 83 00 04 */ lwz r4, 4(r3) -/* 8015404C 00150FAC 28 04 00 00 */ cmplwi r4, 0 -/* 80154050 00150FB0 41 82 00 14 */ beq lbl_80154064 -/* 80154054 00150FB4 7F C3 F3 78 */ mr r3, r30 -/* 80154058 00150FB8 7F E6 FB 78 */ mr r6, r31 -/* 8015405C 00150FBC 38 A1 01 7C */ addi r5, r1, 0x17c -/* 80154060 00150FC0 48 00 01 D1 */ bl sub_80154230 -lbl_80154064: -/* 80154064 00150FC4 3B BD 00 34 */ addi r29, r29, 0x34 -lbl_80154068: -/* 80154068 00150FC8 80 1E 00 4C */ lwz r0, 0x4c(r30) -/* 8015406C 00150FCC 80 7E 00 54 */ lwz r3, 0x54(r30) -/* 80154070 00150FD0 1C 00 00 34 */ mulli r0, r0, 0x34 -/* 80154074 00150FD4 7C 03 02 14 */ add r0, r3, r0 -/* 80154078 00150FD8 7C 1D 00 40 */ cmplw r29, r0 -/* 8015407C 00150FDC 40 82 FE 7C */ bne lbl_80153EF8 -/* 80154080 00150FE0 88 7E 00 58 */ lbz r3, 0x58(r30) -/* 80154084 00150FE4 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f -/* 80154088 00150FE8 40 82 00 34 */ bne lbl_801540BC -/* 8015408C 00150FEC 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f -/* 80154090 00150FF0 41 82 00 10 */ beq lbl_801540A0 -/* 80154094 00150FF4 7F C3 F3 78 */ mr r3, r30 -/* 80154098 00150FF8 7F E4 FB 78 */ mr r4, r31 -/* 8015409C 00150FFC 48 00 00 49 */ bl RebuildSpiderBallWaypoints__18CScriptActorRotateFR13CStateManager -lbl_801540A0: -/* 801540A0 00151000 88 1E 00 58 */ lbz r0, 0x58(r30) -/* 801540A4 00151004 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f -/* 801540A8 00151008 41 82 00 14 */ beq lbl_801540BC -/* 801540AC 0015100C 7F C3 F3 78 */ mr r3, r30 -/* 801540B0 00151010 7F E5 FB 78 */ mr r5, r31 -/* 801540B4 00151014 38 80 00 00 */ li r4, 0 -/* 801540B8 00151018 4B FF FB 29 */ bl UpdateActors__18CScriptActorRotateFbR13CStateManager -lbl_801540BC: -/* 801540BC 0015101C E3 E1 01 C8 */ psq_l f31, 456(r1), 0, qr0 -/* 801540C0 00151020 80 01 01 D4 */ lwz r0, 0x1d4(r1) -/* 801540C4 00151024 CB E1 01 C0 */ lfd f31, 0x1c0(r1) -/* 801540C8 00151028 83 E1 01 BC */ lwz r31, 0x1bc(r1) -/* 801540CC 0015102C 83 C1 01 B8 */ lwz r30, 0x1b8(r1) -/* 801540D0 00151030 83 A1 01 B4 */ lwz r29, 0x1b4(r1) -/* 801540D4 00151034 83 81 01 B0 */ lwz r28, 0x1b0(r1) -/* 801540D8 00151038 7C 08 03 A6 */ mtlr r0 -/* 801540DC 0015103C 38 21 01 D0 */ addi r1, r1, 0x1d0 -/* 801540E0 00151040 4E 80 00 20 */ blr - -.global RebuildSpiderBallWaypoints__18CScriptActorRotateFR13CStateManager -RebuildSpiderBallWaypoints__18CScriptActorRotateFR13CStateManager: -/* 801540E4 00151044 94 21 F7 D0 */ stwu r1, -0x830(r1) -/* 801540E8 00151048 7C 08 02 A6 */ mflr r0 -/* 801540EC 0015104C 90 01 08 34 */ stw r0, 0x834(r1) -/* 801540F0 00151050 38 00 00 00 */ li r0, 0 -/* 801540F4 00151054 BF 41 08 18 */ stmw r26, 0x818(r1) -/* 801540F8 00151058 7C 9E 23 78 */ mr r30, r4 -/* 801540FC 0015105C 7C 7D 1B 78 */ mr r29, r3 -/* 80154100 00151060 3B E1 00 18 */ addi r31, r1, 0x18 -/* 80154104 00151064 3B 80 00 00 */ li r28, 0 -/* 80154108 00151068 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015410C 0015106C 83 64 08 10 */ lwz r27, 0x810(r4) -lbl_80154110: -/* 80154110 00151070 7F 63 DB 78 */ mr r3, r27 -/* 80154114 00151074 7F 84 E3 78 */ mr r4, r28 -/* 80154118 00151078 4B EB BB FD */ bl __vc__11CObjectListFi -/* 8015411C 0015107C 7C 64 1B 78 */ mr r4, r3 -/* 80154120 00151080 38 61 00 0C */ addi r3, r1, 0xc -/* 80154124 00151084 4B F5 3A 79 */ bl "__ct__39TCastToPtr<25CScriptSpiderBallWaypoint>FP7CEntity" -/* 80154128 00151088 80 63 00 04 */ lwz r3, 4(r3) -/* 8015412C 0015108C 28 03 00 00 */ cmplwi r3, 0 -/* 80154130 00151090 41 82 00 2C */ beq lbl_8015415C -/* 80154134 00151094 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80154138 00151098 A0 A3 00 08 */ lhz r5, 8(r3) -/* 8015413C 0015109C 54 00 08 3C */ slwi r0, r0, 1 -/* 80154140 001510A0 7C 9F 02 15 */ add. r4, r31, r0 -/* 80154144 001510A4 41 82 00 08 */ beq lbl_8015414C -/* 80154148 001510A8 B0 A4 00 00 */ sth r5, 0(r4) -lbl_8015414C: -/* 8015414C 001510AC 80 81 00 14 */ lwz r4, 0x14(r1) -/* 80154150 001510B0 38 04 00 01 */ addi r0, r4, 1 -/* 80154154 001510B4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80154158 001510B8 4B FC 47 E1 */ bl ClearWaypoints__25CScriptSpiderBallWaypointFv -lbl_8015415C: -/* 8015415C 001510BC 3B 9C 00 01 */ addi r28, r28, 1 -/* 80154160 001510C0 2C 1C 04 00 */ cmpwi r28, 0x400 -/* 80154164 001510C4 40 82 FF AC */ bne lbl_80154110 -/* 80154168 001510C8 7F FA FB 78 */ mr r26, r31 -/* 8015416C 001510CC 3B 80 00 01 */ li r28, 1 -/* 80154170 001510D0 48 00 00 38 */ b lbl_801541A8 -lbl_80154174: -/* 80154174 001510D4 A0 1A 00 00 */ lhz r0, 0(r26) -/* 80154178 001510D8 7F C3 F3 78 */ mr r3, r30 -/* 8015417C 001510DC 38 81 00 08 */ addi r4, r1, 8 -/* 80154180 001510E0 B0 01 00 08 */ sth r0, 8(r1) -/* 80154184 001510E4 4B EF 83 F1 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80154188 001510E8 7C 7B 1B 79 */ or. r27, r3, r3 -/* 8015418C 001510EC 41 82 00 18 */ beq lbl_801541A4 -/* 80154190 001510F0 7F C4 F3 78 */ mr r4, r30 -/* 80154194 001510F4 4B FC 46 21 */ bl BuildWaypointListAndBounds__25CScriptSpiderBallWaypointFR13CStateManager -/* 80154198 001510F8 88 1B 00 E4 */ lbz r0, 0xe4(r27) -/* 8015419C 001510FC 53 80 26 F6 */ rlwimi r0, r28, 4, 0x1b, 0x1b -/* 801541A0 00151100 98 1B 00 E4 */ stb r0, 0xe4(r27) -lbl_801541A4: -/* 801541A4 00151104 3B 5A 00 02 */ addi r26, r26, 2 -lbl_801541A8: -/* 801541A8 00151108 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801541AC 0015110C 54 00 08 3C */ slwi r0, r0, 1 -/* 801541B0 00151110 7C 1F 02 14 */ add r0, r31, r0 -/* 801541B4 00151114 7C 1A 00 40 */ cmplw r26, r0 -/* 801541B8 00151118 40 82 FF BC */ bne lbl_80154174 -/* 801541BC 0015111C 38 60 00 00 */ li r3, 0 -/* 801541C0 00151120 88 1D 00 58 */ lbz r0, 0x58(r29) -/* 801541C4 00151124 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 801541C8 00151128 98 1D 00 58 */ stb r0, 0x58(r29) -/* 801541CC 0015112C 80 A1 00 14 */ lwz r5, 0x14(r1) -/* 801541D0 00151130 2C 05 00 00 */ cmpwi r5, 0 -/* 801541D4 00151134 40 81 00 40 */ ble lbl_80154214 -/* 801541D8 00151138 2C 05 00 08 */ cmpwi r5, 8 -/* 801541DC 0015113C 38 85 FF F8 */ addi r4, r5, -8 -/* 801541E0 00151140 40 81 00 20 */ ble lbl_80154200 -/* 801541E4 00151144 38 04 00 07 */ addi r0, r4, 7 -/* 801541E8 00151148 54 00 E8 FE */ srwi r0, r0, 3 -/* 801541EC 0015114C 7C 09 03 A6 */ mtctr r0 -/* 801541F0 00151150 2C 04 00 00 */ cmpwi r4, 0 -/* 801541F4 00151154 40 81 00 0C */ ble lbl_80154200 -lbl_801541F8: -/* 801541F8 00151158 38 63 00 08 */ addi r3, r3, 8 -/* 801541FC 0015115C 42 00 FF FC */ bdnz lbl_801541F8 -lbl_80154200: -/* 80154200 00151160 7C 03 28 50 */ subf r0, r3, r5 -/* 80154204 00151164 7C 09 03 A6 */ mtctr r0 -/* 80154208 00151168 7C 03 28 00 */ cmpw r3, r5 -/* 8015420C 0015116C 40 80 00 08 */ bge lbl_80154214 -lbl_80154210: -/* 80154210 00151170 42 00 00 00 */ bdnz lbl_80154210 -lbl_80154214: -/* 80154214 00151174 38 00 00 00 */ li r0, 0 -/* 80154218 00151178 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015421C 0015117C BB 41 08 18 */ lmw r26, 0x818(r1) -/* 80154220 00151180 80 01 08 34 */ lwz r0, 0x834(r1) -/* 80154224 00151184 7C 08 03 A6 */ mtlr r0 -/* 80154228 00151188 38 21 08 30 */ addi r1, r1, 0x830 -/* 8015422C 0015118C 4E 80 00 20 */ blr - -.global sub_80154230 -sub_80154230: -/* 80154230 00151190 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80154234 00151194 7C 08 02 A6 */ mflr r0 -/* 80154238 00151198 90 01 00 24 */ stw r0, 0x24(r1) -/* 8015423C 0015119C 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80154240 001511A0 7C DF 33 78 */ mr r31, r6 -/* 80154244 001511A4 7F E7 FB 78 */ mr r7, r31 -/* 80154248 001511A8 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8015424C 001511AC 7C BE 2B 78 */ mr r30, r5 -/* 80154250 001511B0 7F C6 F3 78 */ mr r6, r30 -/* 80154254 001511B4 93 A1 00 14 */ stw r29, 0x14(r1) -/* 80154258 001511B8 7C 9D 23 78 */ mr r29, r4 -/* 8015425C 001511BC 7F A5 EB 78 */ mr r5, r29 -/* 80154260 001511C0 93 81 00 10 */ stw r28, 0x10(r1) -/* 80154264 001511C4 7C 7C 1B 78 */ mr r28, r3 -/* 80154268 001511C8 38 9D 03 28 */ addi r4, r29, 0x328 -/* 8015426C 001511CC 48 00 00 3D */ bl sub_801542a8 -/* 80154270 001511D0 7F 83 E3 78 */ mr r3, r28 -/* 80154274 001511D4 7F A5 EB 78 */ mr r5, r29 -/* 80154278 001511D8 7F C6 F3 78 */ mr r6, r30 -/* 8015427C 001511DC 7F E7 FB 78 */ mr r7, r31 -/* 80154280 001511E0 38 9D 03 38 */ addi r4, r29, 0x338 -/* 80154284 001511E4 48 00 00 25 */ bl sub_801542a8 -/* 80154288 001511E8 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8015428C 001511EC 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80154290 001511F0 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 80154294 001511F4 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 80154298 001511F8 83 81 00 10 */ lwz r28, 0x10(r1) -/* 8015429C 001511FC 7C 08 03 A6 */ mtlr r0 -/* 801542A0 00151200 38 21 00 20 */ addi r1, r1, 0x20 -/* 801542A4 00151204 4E 80 00 20 */ blr - -.global sub_801542a8 -sub_801542a8: -/* 801542A8 00151208 94 21 FF 40 */ stwu r1, -0xc0(r1) -/* 801542AC 0015120C 7C 08 02 A6 */ mflr r0 -/* 801542B0 00151210 90 01 00 C4 */ stw r0, 0xc4(r1) -/* 801542B4 00151214 BF 01 00 A0 */ stmw r24, 0xa0(r1) -/* 801542B8 00151218 7C 99 23 78 */ mr r25, r4 -/* 801542BC 0015121C 7C 78 1B 78 */ mr r24, r3 -/* 801542C0 00151220 7C BA 2B 78 */ mr r26, r5 -/* 801542C4 00151224 7C DB 33 78 */ mr r27, r6 -/* 801542C8 00151228 7C FC 3B 78 */ mr r28, r7 -/* 801542CC 0015122C 83 E4 00 0C */ lwz r31, 0xc(r4) -/* 801542D0 00151230 48 00 01 B0 */ b lbl_80154480 -lbl_801542D4: -/* 801542D4 00151234 A0 1F 00 00 */ lhz r0, 0(r31) -/* 801542D8 00151238 7F 83 E3 78 */ mr r3, r28 -/* 801542DC 0015123C 38 81 00 0C */ addi r4, r1, 0xc -/* 801542E0 00151240 B0 01 00 0C */ sth r0, 0xc(r1) -/* 801542E4 00151244 4B EF 82 91 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 801542E8 00151248 7C 64 1B 78 */ mr r4, r3 -/* 801542EC 0015124C 38 61 00 20 */ addi r3, r1, 0x20 -/* 801542F0 00151250 4B F5 B9 A1 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 801542F4 00151254 83 A3 00 04 */ lwz r29, 4(r3) -/* 801542F8 00151258 28 1D 00 00 */ cmplwi r29, 0 -/* 801542FC 0015125C 41 82 01 80 */ beq lbl_8015447C -/* 80154300 00151260 3B DF 00 08 */ addi r30, r31, 8 -/* 80154304 00151264 38 7D 00 34 */ addi r3, r29, 0x34 -/* 80154308 00151268 7F C4 F3 78 */ mr r4, r30 -/* 8015430C 0015126C 48 1B E8 35 */ bl __as__12CTransform4fFRC12CTransform4f -/* 80154310 00151270 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 80154314 00151274 38 C0 00 01 */ li r6, 1 -/* 80154318 00151278 50 C0 26 F6 */ rlwimi r0, r6, 4, 0x1b, 0x1b -/* 8015431C 0015127C 7F 64 DB 78 */ mr r4, r27 -/* 80154320 00151280 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 80154324 00151284 38 61 00 40 */ addi r3, r1, 0x40 -/* 80154328 00151288 38 BD 00 34 */ addi r5, r29, 0x34 -/* 8015432C 0015128C 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 80154330 00151290 50 C0 1F 38 */ rlwimi r0, r6, 3, 0x1c, 0x1c -/* 80154334 00151294 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 80154338 00151298 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 8015433C 0015129C 50 C0 17 7A */ rlwimi r0, r6, 2, 0x1d, 0x1d -/* 80154340 001512A0 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 80154344 001512A4 48 1B E6 0D */ bl __ml__12CTransform4fCFRC12CTransform4f -/* 80154348 001512A8 38 7D 00 34 */ addi r3, r29, 0x34 -/* 8015434C 001512AC 38 81 00 40 */ addi r4, r1, 0x40 -/* 80154350 001512B0 48 1B E7 F1 */ bl __as__12CTransform4fFRC12CTransform4f -/* 80154354 001512B4 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 80154358 001512B8 38 A0 00 01 */ li r5, 1 -/* 8015435C 001512BC 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b -/* 80154360 001512C0 7F A3 EB 78 */ mr r3, r29 -/* 80154364 001512C4 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 80154368 001512C8 38 81 00 34 */ addi r4, r1, 0x34 -/* 8015436C 001512CC 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 80154370 001512D0 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c -/* 80154374 001512D4 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 80154378 001512D8 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 8015437C 001512DC 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d -/* 80154380 001512E0 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 80154384 001512E4 C0 BA 00 60 */ lfs f5, 0x60(r26) -/* 80154388 001512E8 C0 1D 00 60 */ lfs f0, 0x60(r29) -/* 8015438C 001512EC C0 9A 00 50 */ lfs f4, 0x50(r26) -/* 80154390 001512F0 C0 5D 00 50 */ lfs f2, 0x50(r29) -/* 80154394 001512F4 EC 25 00 2A */ fadds f1, f5, f0 -/* 80154398 001512F8 C0 1A 00 40 */ lfs f0, 0x40(r26) -/* 8015439C 001512FC C0 7D 00 40 */ lfs f3, 0x40(r29) -/* 801543A0 00151300 EC 44 10 2A */ fadds f2, f4, f2 -/* 801543A4 00151304 D0 01 00 28 */ stfs f0, 0x28(r1) -/* 801543A8 00151308 EC 00 18 2A */ fadds f0, f0, f3 -/* 801543AC 0015130C D0 81 00 2C */ stfs f4, 0x2c(r1) -/* 801543B0 00151310 D0 A1 00 30 */ stfs f5, 0x30(r1) -/* 801543B4 00151314 D0 01 00 34 */ stfs f0, 0x34(r1) -/* 801543B8 00151318 D0 41 00 38 */ stfs f2, 0x38(r1) -/* 801543BC 0015131C D0 21 00 3C */ stfs f1, 0x3c(r1) -/* 801543C0 00151320 4B EF EA CD */ bl SetTranslation__6CActorFRC9CVector3f -/* 801543C4 00151324 88 18 00 58 */ lbz r0, 0x58(r24) -/* 801543C8 00151328 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 801543CC 0015132C 40 82 00 74 */ bne lbl_80154440 -/* 801543D0 00151330 38 61 00 70 */ addi r3, r1, 0x70 -/* 801543D4 00151334 38 9D 00 34 */ addi r4, r29, 0x34 -/* 801543D8 00151338 48 1B E7 9D */ bl __ct__12CTransform4fFRC12CTransform4f -/* 801543DC 0015133C C0 3D 00 50 */ lfs f1, 0x50(r29) -/* 801543E0 00151340 7F C3 F3 78 */ mr r3, r30 -/* 801543E4 00151344 C0 1A 00 50 */ lfs f0, 0x50(r26) -/* 801543E8 00151348 38 81 00 70 */ addi r4, r1, 0x70 -/* 801543EC 0015134C C0 7D 00 60 */ lfs f3, 0x60(r29) -/* 801543F0 00151350 C0 5A 00 60 */ lfs f2, 0x60(r26) -/* 801543F4 00151354 EC 81 00 28 */ fsubs f4, f1, f0 -/* 801543F8 00151358 C0 3D 00 40 */ lfs f1, 0x40(r29) -/* 801543FC 0015135C C0 1A 00 40 */ lfs f0, 0x40(r26) -/* 80154400 00151360 EC 43 10 28 */ fsubs f2, f3, f2 -/* 80154404 00151364 EC 01 00 28 */ fsubs f0, f1, f0 -/* 80154408 00151368 D0 81 00 8C */ stfs f4, 0x8c(r1) -/* 8015440C 0015136C D0 41 00 9C */ stfs f2, 0x9c(r1) -/* 80154410 00151370 D0 01 00 7C */ stfs f0, 0x7c(r1) -/* 80154414 00151374 48 1B E7 2D */ bl __as__12CTransform4fFRC12CTransform4f -/* 80154418 00151378 7F A4 EB 78 */ mr r4, r29 -/* 8015441C 0015137C 38 61 00 10 */ addi r3, r1, 0x10 -/* 80154420 00151380 4B F5 37 7D */ bl "__ct__39TCastToPtr<25CScriptSpiderBallWaypoint>FP7CEntity" -/* 80154424 00151384 80 03 00 04 */ lwz r0, 4(r3) -/* 80154428 00151388 28 00 00 00 */ cmplwi r0, 0 -/* 8015442C 0015138C 41 82 00 14 */ beq lbl_80154440 -/* 80154430 00151390 88 18 00 58 */ lbz r0, 0x58(r24) -/* 80154434 00151394 38 60 00 01 */ li r3, 1 -/* 80154438 00151398 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 8015443C 0015139C 98 18 00 58 */ stb r0, 0x58(r24) -lbl_80154440: -/* 80154440 001513A0 A0 1F 00 00 */ lhz r0, 0(r31) -/* 80154444 001513A4 7F 83 E3 78 */ mr r3, r28 -/* 80154448 001513A8 38 81 00 08 */ addi r4, r1, 8 -/* 8015444C 001513AC B0 01 00 08 */ sth r0, 8(r1) -/* 80154450 001513B0 4B EF 81 25 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80154454 001513B4 7C 64 1B 78 */ mr r4, r3 -/* 80154458 001513B8 38 61 00 18 */ addi r3, r1, 0x18 -/* 8015445C 001513BC 4B F5 49 B9 */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" -/* 80154460 001513C0 80 83 00 04 */ lwz r4, 4(r3) -/* 80154464 001513C4 28 04 00 00 */ cmplwi r4, 0 -/* 80154468 001513C8 41 82 00 14 */ beq lbl_8015447C -/* 8015446C 001513CC 7F 03 C3 78 */ mr r3, r24 -/* 80154470 001513D0 7F 65 DB 78 */ mr r5, r27 -/* 80154474 001513D4 7F 86 E3 78 */ mr r6, r28 -/* 80154478 001513D8 4B FF FD B9 */ bl sub_80154230 -lbl_8015447C: -/* 8015447C 001513DC 3B FF 00 38 */ addi r31, r31, 0x38 -lbl_80154480: -/* 80154480 001513E0 80 19 00 04 */ lwz r0, 4(r25) -/* 80154484 001513E4 80 79 00 0C */ lwz r3, 0xc(r25) -/* 80154488 001513E8 1C 00 00 38 */ mulli r0, r0, 0x38 -/* 8015448C 001513EC 7C 03 02 14 */ add r0, r3, r0 -/* 80154490 001513F0 7C 1F 00 40 */ cmplw r31, r0 -/* 80154494 001513F4 40 82 FE 40 */ bne lbl_801542D4 -/* 80154498 001513F8 BB 01 00 A0 */ lmw r24, 0xa0(r1) -/* 8015449C 001513FC 80 01 00 C4 */ lwz r0, 0xc4(r1) -/* 801544A0 00151400 7C 08 03 A6 */ mtlr r0 -/* 801544A4 00151404 38 21 00 C0 */ addi r1, r1, 0xc0 -/* 801544A8 00151408 4E 80 00 20 */ blr - -.global "__ct__18CScriptActorRotateF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3ffbbb" -"__ct__18CScriptActorRotateF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3ffbbb": -/* 801544AC 0015140C 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 801544B0 00151410 7C 08 02 A6 */ mflr r0 -/* 801544B4 00151414 90 01 00 34 */ stw r0, 0x34(r1) -/* 801544B8 00151418 DB E1 00 20 */ stfd f31, 0x20(r1) -/* 801544BC 0015141C F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 -/* 801544C0 00151420 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 801544C4 00151424 93 C1 00 18 */ stw r30, 0x18(r1) -/* 801544C8 00151428 93 A1 00 14 */ stw r29, 0x14(r1) -/* 801544CC 0015142C 93 81 00 10 */ stw r28, 0x10(r1) -/* 801544D0 00151430 A0 04 00 00 */ lhz r0, 0(r4) -/* 801544D4 00151434 7C A4 2B 78 */ mr r4, r5 -/* 801544D8 00151438 FF E0 08 90 */ fmr f31, f1 -/* 801544DC 0015143C 7C FD 3B 78 */ mr r29, r7 -/* 801544E0 00151440 B0 01 00 08 */ sth r0, 8(r1) -/* 801544E4 00151444 7C C5 33 78 */ mr r5, r6 -/* 801544E8 00151448 7C 87 23 78 */ mr r7, r4 -/* 801544EC 0015144C 7C 7C 1B 78 */ mr r28, r3 -/* 801544F0 00151450 7D 1E 43 78 */ mr r30, r8 -/* 801544F4 00151454 7D 3F 4B 78 */ mr r31, r9 -/* 801544F8 00151458 7D 46 53 78 */ mr r6, r10 -/* 801544FC 0015145C 38 81 00 08 */ addi r4, r1, 8 -/* 80154500 00151460 4B EF CE 25 */ bl "__ct__7CEntityF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80154504 00151464 3C 60 80 3E */ lis r3, lbl_803E2D08@ha -/* 80154508 00151468 C0 02 9D F8 */ lfs f0, lbl_805ABB18@sda21(r2) -/* 8015450C 0015146C 38 03 2D 08 */ addi r0, r3, lbl_803E2D08@l -/* 80154510 00151470 38 C0 00 00 */ li r6, 0 -/* 80154514 00151474 90 1C 00 00 */ stw r0, 0(r28) -/* 80154518 00151478 7F 83 E3 78 */ mr r3, r28 -/* 8015451C 0015147C C0 3D 00 00 */ lfs f1, 0(r29) -/* 80154520 00151480 D0 3C 00 34 */ stfs f1, 0x34(r28) -/* 80154524 00151484 C0 3D 00 04 */ lfs f1, 4(r29) -/* 80154528 00151488 D0 3C 00 38 */ stfs f1, 0x38(r28) -/* 8015452C 0015148C C0 3D 00 08 */ lfs f1, 8(r29) -/* 80154530 00151490 D0 3C 00 3C */ stfs f1, 0x3c(r28) -/* 80154534 00151494 D3 FC 00 40 */ stfs f31, 0x40(r28) -/* 80154538 00151498 D0 1C 00 44 */ stfs f0, 0x44(r28) -/* 8015453C 0015149C 90 DC 00 4C */ stw r6, 0x4c(r28) -/* 80154540 001514A0 90 DC 00 50 */ stw r6, 0x50(r28) -/* 80154544 001514A4 90 DC 00 54 */ stw r6, 0x54(r28) -/* 80154548 001514A8 88 1C 00 58 */ lbz r0, 0x58(r28) -/* 8015454C 001514AC 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18 -/* 80154550 001514B0 98 1C 00 58 */ stb r0, 0x58(r28) -/* 80154554 001514B4 88 1C 00 58 */ lbz r0, 0x58(r28) -/* 80154558 001514B8 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 -/* 8015455C 001514BC 98 1C 00 58 */ stb r0, 0x58(r28) -/* 80154560 001514C0 88 1C 00 58 */ lbz r0, 0x58(r28) -/* 80154564 001514C4 53 C0 2E B4 */ rlwimi r0, r30, 5, 0x1a, 0x1a -/* 80154568 001514C8 98 1C 00 58 */ stb r0, 0x58(r28) -/* 8015456C 001514CC 88 1C 00 58 */ lbz r0, 0x58(r28) -/* 80154570 001514D0 53 E0 26 F6 */ rlwimi r0, r31, 4, 0x1b, 0x1b -/* 80154574 001514D4 98 1C 00 58 */ stb r0, 0x58(r28) -/* 80154578 001514D8 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 -/* 8015457C 001514DC 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80154580 001514E0 CB E1 00 20 */ lfd f31, 0x20(r1) -/* 80154584 001514E4 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80154588 001514E8 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8015458C 001514EC 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 80154590 001514F0 83 81 00 10 */ lwz r28, 0x10(r1) -/* 80154594 001514F4 7C 08 03 A6 */ mtlr r0 -/* 80154598 001514F8 38 21 00 30 */ addi r1, r1, 0x30 -/* 8015459C 001514FC 4E 80 00 20 */ blr - -.global "distance,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>14const_iterator>__4rstlFQ34rstl195red_black_tree<13TGameScriptId,Q24rstl32pair<13TGameScriptId,9TUniqueId>,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>14const_iteratorQ34rstl195red_black_tree<13TGameScriptId,Q24rstl32" -"distance,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>14const_iterator>__4rstlFQ34rstl195red_black_tree<13TGameScriptId,Q24rstl32pair<13TGameScriptId,9TUniqueId>,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>14const_iteratorQ34rstl195red_black_tree<13TGameScriptId,Q24rstl32": -/* 801545A0 00151500 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 801545A4 00151504 7C 08 02 A6 */ mflr r0 -/* 801545A8 00151508 90 01 00 24 */ stw r0, 0x24(r1) -/* 801545AC 0015150C 38 A1 00 0C */ addi r5, r1, 0xc -/* 801545B0 00151510 89 21 00 08 */ lbz r9, 8(r1) -/* 801545B4 00151514 81 04 00 00 */ lwz r8, 0(r4) -/* 801545B8 00151518 80 E4 00 04 */ lwz r7, 4(r4) -/* 801545BC 0015151C 38 81 00 10 */ addi r4, r1, 0x10 -/* 801545C0 00151520 80 C3 00 00 */ lwz r6, 0(r3) -/* 801545C4 00151524 80 03 00 04 */ lwz r0, 4(r3) -/* 801545C8 00151528 38 61 00 18 */ addi r3, r1, 0x18 -/* 801545CC 0015152C 99 21 00 0C */ stb r9, 0xc(r1) -/* 801545D0 00151530 91 01 00 10 */ stw r8, 0x10(r1) -/* 801545D4 00151534 90 E1 00 14 */ stw r7, 0x14(r1) -/* 801545D8 00151538 90 C1 00 18 */ stw r6, 0x18(r1) -/* 801545DC 0015153C 90 01 00 1C */ stw r0, 0x1c(r1) -/* 801545E0 00151540 48 00 00 15 */ bl "__distance,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>14const_iterator>__4rstlFQ34rstl195red_black_tree<13TGameScriptId,Q24rstl32pair<13TGameScriptId,9TUniqueId>,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>14const_iteratorQ34rstl195red_black_tree<13TGameScriptId,Q24rstl" -/* 801545E4 00151544 80 01 00 24 */ lwz r0, 0x24(r1) -/* 801545E8 00151548 7C 08 03 A6 */ mtlr r0 -/* 801545EC 0015154C 38 21 00 20 */ addi r1, r1, 0x20 -/* 801545F0 00151550 4E 80 00 20 */ blr - -.global "__distance,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>14const_iterator>__4rstlFQ34rstl195red_black_tree<13TGameScriptId,Q24rstl32pair<13TGameScriptId,9TUniqueId>,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>14const_iteratorQ34rstl195red_black_tree<13TGameScriptId,Q24rstl" -"__distance,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>14const_iterator>__4rstlFQ34rstl195red_black_tree<13TGameScriptId,Q24rstl32pair<13TGameScriptId,9TUniqueId>,1,Q24rstl52select1st>,Q24rstl21less<13TGameScriptId>,Q24rstl17rmemory_allocator>14const_iteratorQ34rstl195red_black_tree<13TGameScriptId,Q24rstl": -/* 801545F4 00151554 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 801545F8 00151558 7C 08 02 A6 */ mflr r0 -/* 801545FC 0015155C 90 01 00 24 */ stw r0, 0x24(r1) -/* 80154600 00151560 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80154604 00151564 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80154608 00151568 3B C0 00 00 */ li r30, 0 -/* 8015460C 0015156C 93 A1 00 14 */ stw r29, 0x14(r1) -/* 80154610 00151570 7C 9D 23 78 */ mr r29, r4 -/* 80154614 00151574 80 A3 00 00 */ lwz r5, 0(r3) -/* 80154618 00151578 83 E3 00 04 */ lwz r31, 4(r3) -/* 8015461C 0015157C 48 00 00 18 */ b lbl_80154634 -lbl_80154620: -/* 80154620 00151580 7F E3 FB 78 */ mr r3, r31 -/* 80154624 00151584 7C A4 2B 78 */ mr r4, r5 -/* 80154628 00151588 3B DE 00 01 */ addi r30, r30, 1 -/* 8015462C 0015158C 48 1E 7F B5 */ bl rbtree_traverse_forward__4rstlFPCvPv -/* 80154630 00151590 7C 65 1B 78 */ mr r5, r3 -lbl_80154634: -/* 80154634 00151594 80 1D 00 00 */ lwz r0, 0(r29) -/* 80154638 00151598 38 60 00 00 */ li r3, 0 -/* 8015463C 0015159C 7C 05 00 40 */ cmplw r5, r0 -/* 80154640 001515A0 40 82 00 10 */ bne lbl_80154650 -/* 80154644 001515A4 80 1D 00 04 */ lwz r0, 4(r29) -/* 80154648 001515A8 7C 1F 00 40 */ cmplw r31, r0 -/* 8015464C 001515AC 41 82 00 08 */ beq lbl_80154654 -lbl_80154650: -/* 80154650 001515B0 38 60 00 01 */ li r3, 1 -lbl_80154654: -/* 80154654 001515B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80154658 001515B8 40 82 FF C8 */ bne lbl_80154620 -/* 8015465C 001515BC 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80154660 001515C0 7F C3 F3 78 */ mr r3, r30 -/* 80154664 001515C4 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80154668 001515C8 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8015466C 001515CC 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 80154670 001515D0 7C 08 03 A6 */ mtlr r0 -/* 80154674 001515D4 38 21 00 20 */ addi r1, r1, 0x20 -/* 80154678 001515D8 4E 80 00 20 */ blr - -.global "reserve__Q24rstl75vector,Q24rstl17rmemory_allocator>Fi" -"reserve__Q24rstl75vector,Q24rstl17rmemory_allocator>Fi": -/* 8015467C 001515DC 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80154680 001515E0 7C 08 02 A6 */ mflr r0 -/* 80154684 001515E4 90 01 00 34 */ stw r0, 0x34(r1) -/* 80154688 001515E8 BF 41 00 18 */ stmw r26, 0x18(r1) -/* 8015468C 001515EC 7C 9F 23 78 */ mr r31, r4 -/* 80154690 001515F0 7C 7E 1B 78 */ mr r30, r3 -/* 80154694 001515F4 80 03 00 08 */ lwz r0, 8(r3) -/* 80154698 001515F8 7C 1F 00 00 */ cmpw r31, r0 -/* 8015469C 001515FC 40 81 00 B8 */ ble lbl_80154754 -/* 801546A0 00151600 1C 7F 00 34 */ mulli r3, r31, 0x34 -/* 801546A4 00151604 2C 03 00 00 */ cmpwi r3, 0 -/* 801546A8 00151608 40 82 00 0C */ bne lbl_801546B4 -/* 801546AC 0015160C 3B 80 00 00 */ li r28, 0 -/* 801546B0 00151610 48 00 00 18 */ b lbl_801546C8 -lbl_801546B4: -/* 801546B4 00151614 3C 80 80 3D */ lis r4, lbl_803D01F0@ha -/* 801546B8 00151618 38 A0 00 00 */ li r5, 0 -/* 801546BC 0015161C 38 84 01 F0 */ addi r4, r4, lbl_803D01F0@l -/* 801546C0 00151620 48 1C 11 59 */ bl __nwa__FUlPCcPCc -/* 801546C4 00151624 7C 7C 1B 78 */ mr r28, r3 -lbl_801546C8: -/* 801546C8 00151628 80 1E 00 04 */ lwz r0, 4(r30) -/* 801546CC 0015162C 7F 9B E3 78 */ mr r27, r28 -/* 801546D0 00151630 83 5E 00 0C */ lwz r26, 0xc(r30) -/* 801546D4 00151634 1C 00 00 34 */ mulli r0, r0, 0x34 -/* 801546D8 00151638 93 41 00 10 */ stw r26, 0x10(r1) -/* 801546DC 0015163C 7F BA 02 14 */ add r29, r26, r0 -/* 801546E0 00151640 93 41 00 14 */ stw r26, 0x14(r1) -/* 801546E4 00151644 93 A1 00 08 */ stw r29, 8(r1) -/* 801546E8 00151648 93 A1 00 0C */ stw r29, 0xc(r1) -/* 801546EC 0015164C 48 00 00 28 */ b lbl_80154714 -lbl_801546F0: -/* 801546F0 00151650 28 1B 00 00 */ cmplwi r27, 0 -/* 801546F4 00151654 41 82 00 18 */ beq lbl_8015470C -/* 801546F8 00151658 A0 1A 00 00 */ lhz r0, 0(r26) -/* 801546FC 0015165C 38 7B 00 04 */ addi r3, r27, 4 -/* 80154700 00151660 38 9A 00 04 */ addi r4, r26, 4 -/* 80154704 00151664 B0 1B 00 00 */ sth r0, 0(r27) -/* 80154708 00151668 48 1B E4 6D */ bl __ct__12CTransform4fFRC12CTransform4f -lbl_8015470C: -/* 8015470C 0015166C 3B 7B 00 34 */ addi r27, r27, 0x34 -/* 80154710 00151670 3B 5A 00 34 */ addi r26, r26, 0x34 -lbl_80154714: -/* 80154714 00151674 7C 1A E8 40 */ cmplw r26, r29 -/* 80154718 00151678 40 82 FF D8 */ bne lbl_801546F0 -/* 8015471C 0015167C 80 1E 00 04 */ lwz r0, 4(r30) -/* 80154720 00151680 80 7E 00 0C */ lwz r3, 0xc(r30) -/* 80154724 00151684 1C 00 00 34 */ mulli r0, r0, 0x34 -/* 80154728 00151688 7C 64 1B 78 */ mr r4, r3 -/* 8015472C 0015168C 7C 03 02 14 */ add r0, r3, r0 -/* 80154730 00151690 48 00 00 08 */ b lbl_80154738 -lbl_80154734: -/* 80154734 00151694 38 84 00 34 */ addi r4, r4, 0x34 -lbl_80154738: -/* 80154738 00151698 7C 04 00 40 */ cmplw r4, r0 -/* 8015473C 0015169C 40 82 FF F8 */ bne lbl_80154734 -/* 80154740 001516A0 28 03 00 00 */ cmplwi r3, 0 -/* 80154744 001516A4 41 82 00 08 */ beq lbl_8015474C -/* 80154748 001516A8 48 1C 11 E9 */ bl Free__7CMemoryFPCv -lbl_8015474C: -/* 8015474C 001516AC 93 9E 00 0C */ stw r28, 0xc(r30) -/* 80154750 001516B0 93 FE 00 08 */ stw r31, 8(r30) -lbl_80154754: -/* 80154754 001516B4 BB 41 00 18 */ lmw r26, 0x18(r1) -/* 80154758 001516B8 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8015475C 001516BC 7C 08 03 A6 */ mtlr r0 -/* 80154760 001516C0 38 21 00 30 */ addi r1, r1, 0x30 -/* 80154764 001516C4 4E 80 00 20 */ blr - -.global Update__7CFidgetFibbfR13CStateManager -Update__7CFidgetFibbfR13CStateManager: -/* 80154768 001516C8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015476C 001516CC 7C 08 02 A6 */ mflr r0 -/* 80154770 001516D0 90 01 00 14 */ stw r0, 0x14(r1) -/* 80154774 001516D4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80154778 001516D8 7C FF 3B 78 */ mr r31, r7 -/* 8015477C 001516DC 93 C1 00 08 */ stw r30, 8(r1) -/* 80154780 001516E0 7C 7E 1B 78 */ mr r30, r3 -/* 80154784 001516E4 80 03 00 00 */ lwz r0, 0(r3) -/* 80154788 001516E8 2C 00 00 00 */ cmpwi r0, 0 -/* 8015478C 001516EC 41 82 00 78 */ beq lbl_80154804 -/* 80154790 001516F0 2C 00 00 02 */ cmpwi r0, 2 -/* 80154794 001516F4 41 82 00 38 */ beq lbl_801547CC -/* 80154798 001516F8 40 80 00 10 */ bge lbl_801547A8 -/* 8015479C 001516FC 2C 00 00 01 */ cmpwi r0, 1 -/* 801547A0 00151700 40 80 00 14 */ bge lbl_801547B4 -/* 801547A4 00151704 48 00 00 58 */ b lbl_801547FC -lbl_801547A8: -/* 801547A8 00151708 2C 00 00 04 */ cmpwi r0, 4 -/* 801547AC 0015170C 40 80 00 50 */ bge lbl_801547FC -/* 801547B0 00151710 48 00 00 34 */ b lbl_801547E4 -lbl_801547B4: -/* 801547B4 00151714 88 1E 00 34 */ lbz r0, 0x34(r30) -/* 801547B8 00151718 38 60 00 04 */ li r3, 4 -/* 801547BC 0015171C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 801547C0 00151720 41 82 03 80 */ beq lbl_80154B40 -/* 801547C4 00151724 38 60 00 07 */ li r3, 7 -/* 801547C8 00151728 48 00 03 78 */ b lbl_80154B40 -lbl_801547CC: -/* 801547CC 0015172C 88 1E 00 34 */ lbz r0, 0x34(r30) -/* 801547D0 00151730 38 60 00 05 */ li r3, 5 -/* 801547D4 00151734 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 801547D8 00151738 41 82 03 68 */ beq lbl_80154B40 -/* 801547DC 0015173C 38 60 00 07 */ li r3, 7 -/* 801547E0 00151740 48 00 03 60 */ b lbl_80154B40 -lbl_801547E4: -/* 801547E4 00151744 88 1E 00 34 */ lbz r0, 0x34(r30) -/* 801547E8 00151748 38 60 00 06 */ li r3, 6 -/* 801547EC 0015174C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 801547F0 00151750 41 82 03 50 */ beq lbl_80154B40 -/* 801547F4 00151754 38 60 00 07 */ li r3, 7 -/* 801547F8 00151758 48 00 03 48 */ b lbl_80154B40 -lbl_801547FC: -/* 801547FC 0015175C 38 00 00 00 */ li r0, 0 -/* 80154800 00151760 90 1E 00 00 */ stw r0, 0(r30) -lbl_80154804: -/* 80154804 00151764 2C 04 00 00 */ cmpwi r4, 0 -/* 80154808 00151768 41 82 00 14 */ beq lbl_8015481C -/* 8015480C 0015176C C0 02 9E 00 */ lfs f0, lbl_805ABB20@sda21(r2) -/* 80154810 00151770 D0 1E 00 14 */ stfs f0, 0x14(r30) -/* 80154814 00151774 D0 1E 00 2C */ stfs f0, 0x2c(r30) -/* 80154818 00151778 48 00 00 3C */ b lbl_80154854 -lbl_8015481C: -/* 8015481C 0015177C C0 5E 00 14 */ lfs f2, 0x14(r30) -/* 80154820 00151780 C0 02 9E 04 */ lfs f0, lbl_805ABB24@sda21(r2) -/* 80154824 00151784 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 80154828 00151788 40 80 00 0C */ bge lbl_80154834 -/* 8015482C 0015178C EC 02 08 2A */ fadds f0, f2, f1 -/* 80154830 00151790 D0 1E 00 14 */ stfs f0, 0x14(r30) -lbl_80154834: -/* 80154834 00151794 C0 42 9E 08 */ lfs f2, lbl_805ABB28@sda21(r2) -/* 80154838 00151798 C0 1E 00 30 */ lfs f0, 0x30(r30) -/* 8015483C 0015179C C0 7E 00 2C */ lfs f3, 0x2c(r30) -/* 80154840 001517A0 EC 02 00 2A */ fadds f0, f2, f0 -/* 80154844 001517A4 FC 03 00 40 */ fcmpo cr0, f3, f0 -/* 80154848 001517A8 40 80 00 0C */ bge lbl_80154854 -/* 8015484C 001517AC EC 03 08 2A */ fadds f0, f3, f1 -/* 80154850 001517B0 D0 1E 00 2C */ stfs f0, 0x2c(r30) -lbl_80154854: -/* 80154854 001517B4 54 C0 06 3F */ clrlwi. r0, r6, 0x18 -/* 80154858 001517B8 41 82 00 10 */ beq lbl_80154868 -/* 8015485C 001517BC C0 02 9E 00 */ lfs f0, lbl_805ABB20@sda21(r2) -/* 80154860 001517C0 D0 1E 00 18 */ stfs f0, 0x18(r30) -/* 80154864 001517C4 48 00 00 1C */ b lbl_80154880 -lbl_80154868: -/* 80154868 001517C8 C0 5E 00 18 */ lfs f2, 0x18(r30) -/* 8015486C 001517CC C0 02 9E 0C */ lfs f0, lbl_805ABB2C@sda21(r2) -/* 80154870 001517D0 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 80154874 001517D4 40 80 00 0C */ bge lbl_80154880 -/* 80154878 001517D8 EC 02 08 2A */ fadds f0, f2, f1 -/* 8015487C 001517DC D0 1E 00 18 */ stfs f0, 0x18(r30) -lbl_80154880: -/* 80154880 001517E0 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 80154884 001517E4 80 03 02 F8 */ lwz r0, 0x2f8(r3) -/* 80154888 001517E8 2C 00 00 00 */ cmpwi r0, 0 -/* 8015488C 001517EC 40 82 00 20 */ bne lbl_801548AC -/* 80154890 001517F0 C0 5E 00 1C */ lfs f2, 0x1c(r30) -/* 80154894 001517F4 C0 02 9E 10 */ lfs f0, lbl_805ABB30@sda21(r2) -/* 80154898 001517F8 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8015489C 001517FC 40 80 00 18 */ bge lbl_801548B4 -/* 801548A0 00151800 EC 02 08 2A */ fadds f0, f2, f1 -/* 801548A4 00151804 D0 1E 00 1C */ stfs f0, 0x1c(r30) -/* 801548A8 00151808 48 00 00 0C */ b lbl_801548B4 -lbl_801548AC: -/* 801548AC 0015180C C0 02 9E 00 */ lfs f0, lbl_805ABB20@sda21(r2) -/* 801548B0 00151810 D0 1E 00 1C */ stfs f0, 0x1c(r30) -lbl_801548B4: -/* 801548B4 00151814 54 A0 06 3F */ clrlwi. r0, r5, 0x18 -/* 801548B8 00151818 41 82 00 10 */ beq lbl_801548C8 -/* 801548BC 0015181C C0 02 9E 00 */ lfs f0, lbl_805ABB20@sda21(r2) -/* 801548C0 00151820 D0 1E 00 20 */ stfs f0, 0x20(r30) -/* 801548C4 00151824 48 00 00 1C */ b lbl_801548E0 -lbl_801548C8: -/* 801548C8 00151828 C0 5E 00 20 */ lfs f2, 0x20(r30) -/* 801548CC 0015182C C0 02 9E 10 */ lfs f0, lbl_805ABB30@sda21(r2) -/* 801548D0 00151830 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 801548D4 00151834 40 80 00 0C */ bge lbl_801548E0 -/* 801548D8 00151838 EC 02 08 2A */ fadds f0, f2, f1 -/* 801548DC 0015183C D0 1E 00 20 */ stfs f0, 0x20(r30) -lbl_801548E0: -/* 801548E0 00151840 80 1E 00 00 */ lwz r0, 0(r30) -/* 801548E4 00151844 38 60 00 00 */ li r3, 0 -/* 801548E8 00151848 2C 00 00 00 */ cmpwi r0, 0 -/* 801548EC 0015184C 40 82 00 6C */ bne lbl_80154958 -/* 801548F0 00151850 80 1E 00 10 */ lwz r0, 0x10(r30) -/* 801548F4 00151854 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 801548F8 00151858 41 82 00 2C */ beq lbl_80154924 -/* 801548FC 0015185C C0 1E 00 24 */ lfs f0, 0x24(r30) -/* 80154900 00151860 EC 00 08 2A */ fadds f0, f0, f1 -/* 80154904 00151864 D0 1E 00 24 */ stfs f0, 0x24(r30) -/* 80154908 00151868 C0 5E 00 24 */ lfs f2, 0x24(r30) -/* 8015490C 0015186C C0 0D 8C 70 */ lfs f0, lbl_805A7830@sda21(r13) -/* 80154910 00151870 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 80154914 00151874 40 81 00 10 */ ble lbl_80154924 -/* 80154918 00151878 C0 02 9E 00 */ lfs f0, lbl_805ABB20@sda21(r2) -/* 8015491C 0015187C 60 63 00 01 */ ori r3, r3, 1 -/* 80154920 00151880 D0 1E 00 24 */ stfs f0, 0x24(r30) -lbl_80154924: -/* 80154924 00151884 80 1E 00 10 */ lwz r0, 0x10(r30) -/* 80154928 00151888 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e -/* 8015492C 0015188C 41 82 00 2C */ beq lbl_80154958 -/* 80154930 00151890 C0 1E 00 28 */ lfs f0, 0x28(r30) -/* 80154934 00151894 EC 00 08 2A */ fadds f0, f0, f1 -/* 80154938 00151898 D0 1E 00 28 */ stfs f0, 0x28(r30) -/* 8015493C 0015189C C0 3E 00 28 */ lfs f1, 0x28(r30) -/* 80154940 001518A0 C0 0D 8C 74 */ lfs f0, lbl_805A7834@sda21(r13) -/* 80154944 001518A4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80154948 001518A8 40 81 00 10 */ ble lbl_80154958 -/* 8015494C 001518AC C0 02 9E 00 */ lfs f0, lbl_805ABB20@sda21(r2) -/* 80154950 001518B0 60 63 00 02 */ ori r3, r3, 2 -/* 80154954 001518B4 D0 1E 00 28 */ stfs f0, 0x28(r30) -lbl_80154958: -/* 80154958 001518B8 C0 3E 00 2C */ lfs f1, 0x2c(r30) -/* 8015495C 001518BC C0 1E 00 30 */ lfs f0, 0x30(r30) -/* 80154960 001518C0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80154964 001518C4 40 81 00 10 */ ble lbl_80154974 -/* 80154968 001518C8 38 00 00 03 */ li r0, 3 -/* 8015496C 001518CC 90 1E 00 00 */ stw r0, 0(r30) -/* 80154970 001518D0 48 00 00 DC */ b lbl_80154A4C -lbl_80154974: -/* 80154974 001518D4 C0 3E 00 18 */ lfs f1, 0x18(r30) -/* 80154978 001518D8 C0 02 9E 14 */ lfs f0, lbl_805ABB34@sda21(r2) -/* 8015497C 001518DC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80154980 001518E0 40 81 00 4C */ ble lbl_801549CC -/* 80154984 001518E4 C0 1E 00 1C */ lfs f0, 0x1c(r30) -/* 80154988 001518E8 C0 22 9E 18 */ lfs f1, lbl_805ABB38@sda21(r2) -/* 8015498C 001518EC FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 80154990 001518F0 40 81 00 3C */ ble lbl_801549CC -/* 80154994 001518F4 C0 1E 00 20 */ lfs f0, 0x20(r30) -/* 80154998 001518F8 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 8015499C 001518FC 40 81 00 30 */ ble lbl_801549CC -/* 801549A0 00151900 54 60 07 FF */ clrlwi. r0, r3, 0x1f -/* 801549A4 00151904 41 82 00 14 */ beq lbl_801549B8 -/* 801549A8 00151908 80 1E 00 08 */ lwz r0, 8(r30) -/* 801549AC 0015190C 60 00 00 01 */ ori r0, r0, 1 -/* 801549B0 00151910 90 1E 00 08 */ stw r0, 8(r30) -/* 801549B4 00151914 48 00 00 18 */ b lbl_801549CC -lbl_801549B8: -/* 801549B8 00151918 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e -/* 801549BC 0015191C 41 82 00 10 */ beq lbl_801549CC -/* 801549C0 00151920 80 1E 00 08 */ lwz r0, 8(r30) -/* 801549C4 00151924 60 00 00 02 */ ori r0, r0, 2 -/* 801549C8 00151928 90 1E 00 08 */ stw r0, 8(r30) -lbl_801549CC: -/* 801549CC 0015192C 80 7E 00 08 */ lwz r3, 8(r30) -/* 801549D0 00151930 54 60 07 BE */ clrlwi r0, r3, 0x1e -/* 801549D4 00151934 2C 00 00 03 */ cmpwi r0, 3 -/* 801549D8 00151938 40 82 00 44 */ bne lbl_80154A1C -/* 801549DC 0015193C 80 7F 09 00 */ lwz r3, 0x900(r31) -/* 801549E0 00151940 48 1B DB 41 */ bl Next__9CRandom16Fv -/* 801549E4 00151944 3C 80 51 EC */ lis r4, 0x51EB851F@ha -/* 801549E8 00151948 38 A0 00 01 */ li r5, 1 -/* 801549EC 0015194C 38 04 85 1F */ addi r0, r4, 0x51EB851F@l -/* 801549F0 00151950 7C 00 18 96 */ mulhw r0, r0, r3 -/* 801549F4 00151954 7C 00 2E 70 */ srawi r0, r0, 5 -/* 801549F8 00151958 54 04 0F FE */ srwi r4, r0, 0x1f -/* 801549FC 0015195C 7C 00 22 14 */ add r0, r0, r4 -/* 80154A00 00151960 1C 00 00 64 */ mulli r0, r0, 0x64 -/* 80154A04 00151964 7C 00 18 50 */ subf r0, r0, r3 -/* 80154A08 00151968 2C 00 00 32 */ cmpwi r0, 0x32 -/* 80154A0C 0015196C 40 81 00 08 */ ble lbl_80154A14 -/* 80154A10 00151970 38 A0 00 02 */ li r5, 2 -lbl_80154A14: -/* 80154A14 00151974 90 BE 00 00 */ stw r5, 0(r30) -/* 80154A18 00151978 48 00 00 34 */ b lbl_80154A4C -lbl_80154A1C: -/* 80154A1C 0015197C 54 60 07 FF */ clrlwi. r0, r3, 0x1f -/* 80154A20 00151980 41 82 00 10 */ beq lbl_80154A30 -/* 80154A24 00151984 38 00 00 01 */ li r0, 1 -/* 80154A28 00151988 90 1E 00 00 */ stw r0, 0(r30) -/* 80154A2C 0015198C 48 00 00 20 */ b lbl_80154A4C -lbl_80154A30: -/* 80154A30 00151990 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e -/* 80154A34 00151994 41 82 00 10 */ beq lbl_80154A44 -/* 80154A38 00151998 38 00 00 02 */ li r0, 2 -/* 80154A3C 0015199C 90 1E 00 00 */ stw r0, 0(r30) -/* 80154A40 001519A0 48 00 00 0C */ b lbl_80154A4C -lbl_80154A44: -/* 80154A44 001519A4 38 00 00 00 */ li r0, 0 -/* 80154A48 001519A8 90 1E 00 00 */ stw r0, 0(r30) -lbl_80154A4C: -/* 80154A4C 001519AC 80 1E 00 00 */ lwz r0, 0(r30) -/* 80154A50 001519B0 2C 00 00 02 */ cmpwi r0, 2 -/* 80154A54 001519B4 41 82 00 78 */ beq lbl_80154ACC -/* 80154A58 001519B8 40 80 00 10 */ bge lbl_80154A68 -/* 80154A5C 001519BC 2C 00 00 01 */ cmpwi r0, 1 -/* 80154A60 001519C0 40 80 00 14 */ bge lbl_80154A74 -/* 80154A64 001519C4 48 00 00 D8 */ b lbl_80154B3C -lbl_80154A68: -/* 80154A68 001519C8 2C 00 00 04 */ cmpwi r0, 4 -/* 80154A6C 001519CC 40 80 00 D0 */ bge lbl_80154B3C -/* 80154A70 001519D0 48 00 00 B0 */ b lbl_80154B20 -lbl_80154A74: -/* 80154A74 001519D4 88 7E 00 34 */ lbz r3, 0x34(r30) -/* 80154A78 001519D8 38 00 00 01 */ li r0, 1 -/* 80154A7C 001519DC 50 03 3E 30 */ rlwimi r3, r0, 7, 0x18, 0x18 -/* 80154A80 001519E0 38 00 00 02 */ li r0, 2 -/* 80154A84 001519E4 98 7E 00 34 */ stb r3, 0x34(r30) -/* 80154A88 001519E8 C0 22 9E 18 */ lfs f1, lbl_805ABB38@sda21(r2) -/* 80154A8C 001519EC 90 1E 00 10 */ stw r0, 0x10(r30) -/* 80154A90 001519F0 C0 42 9E 1C */ lfs f2, lbl_805ABB3C@sda21(r2) -/* 80154A94 001519F4 80 1E 00 08 */ lwz r0, 8(r30) -/* 80154A98 001519F8 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e -/* 80154A9C 001519FC 90 1E 00 08 */ stw r0, 8(r30) -/* 80154AA0 00151A00 80 7F 09 00 */ lwz r3, 0x900(r31) -/* 80154AA4 00151A04 48 1B DA A1 */ bl Range__9CRandom16Fff -/* 80154AA8 00151A08 D0 2D 8C 70 */ stfs f1, lbl_805A7830@sda21(r13) -/* 80154AAC 00151A0C 38 00 00 00 */ li r0, 0 -/* 80154AB0 00151A10 38 80 00 00 */ li r4, 0 -/* 80154AB4 00151A14 38 A0 00 04 */ li r5, 4 -/* 80154AB8 00151A18 90 1E 00 04 */ stw r0, 4(r30) -/* 80154ABC 00151A1C 80 7F 09 00 */ lwz r3, 0x900(r31) -/* 80154AC0 00151A20 48 1B DA D5 */ bl Range__9CRandom16Fii -/* 80154AC4 00151A24 90 7E 00 0C */ stw r3, 0xc(r30) -/* 80154AC8 00151A28 48 00 00 74 */ b lbl_80154B3C -lbl_80154ACC: -/* 80154ACC 00151A2C 88 1E 00 34 */ lbz r0, 0x34(r30) -/* 80154AD0 00151A30 38 60 00 01 */ li r3, 1 -/* 80154AD4 00151A34 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80154AD8 00151A38 C0 22 9E 18 */ lfs f1, lbl_805ABB38@sda21(r2) -/* 80154ADC 00151A3C 98 1E 00 34 */ stb r0, 0x34(r30) -/* 80154AE0 00151A40 C0 42 9E 20 */ lfs f2, lbl_805ABB40@sda21(r2) -/* 80154AE4 00151A44 90 7E 00 10 */ stw r3, 0x10(r30) -/* 80154AE8 00151A48 80 1E 00 08 */ lwz r0, 8(r30) -/* 80154AEC 00151A4C 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d -/* 80154AF0 00151A50 90 1E 00 08 */ stw r0, 8(r30) -/* 80154AF4 00151A54 80 7F 09 00 */ lwz r3, 0x900(r31) -/* 80154AF8 00151A58 48 1B DA 4D */ bl Range__9CRandom16Fff -/* 80154AFC 00151A5C D0 2D 8C 74 */ stfs f1, lbl_805A7834@sda21(r13) -/* 80154B00 00151A60 38 00 00 01 */ li r0, 1 -/* 80154B04 00151A64 38 80 00 00 */ li r4, 0 -/* 80154B08 00151A68 38 A0 00 05 */ li r5, 5 -/* 80154B0C 00151A6C 90 1E 00 04 */ stw r0, 4(r30) -/* 80154B10 00151A70 80 7F 09 00 */ lwz r3, 0x900(r31) -/* 80154B14 00151A74 48 1B DA 81 */ bl Range__9CRandom16Fii -/* 80154B18 00151A78 90 7E 00 0C */ stw r3, 0xc(r30) -/* 80154B1C 00151A7C 48 00 00 20 */ b lbl_80154B3C -lbl_80154B20: -/* 80154B20 00151A80 38 80 00 00 */ li r4, 0 -/* 80154B24 00151A84 38 60 00 01 */ li r3, 1 -/* 80154B28 00151A88 90 9E 00 04 */ stw r4, 4(r30) -/* 80154B2C 00151A8C 88 1E 00 34 */ lbz r0, 0x34(r30) -/* 80154B30 00151A90 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80154B34 00151A94 98 1E 00 34 */ stb r0, 0x34(r30) -/* 80154B38 00151A98 90 9E 00 0C */ stw r4, 0xc(r30) -lbl_80154B3C: -/* 80154B3C 00151A9C 80 7E 00 00 */ lwz r3, 0(r30) -lbl_80154B40: -/* 80154B40 00151AA0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80154B44 00151AA4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80154B48 00151AA8 83 C1 00 08 */ lwz r30, 8(r1) -/* 80154B4C 00151AAC 7C 08 03 A6 */ mtlr r0 -/* 80154B50 00151AB0 38 21 00 10 */ addi r1, r1, 0x10 -/* 80154B54 00151AB4 4E 80 00 20 */ blr - -.global ResetMinor__7CFidgetFv -ResetMinor__7CFidgetFv: -/* 80154B58 00151AB8 38 00 00 00 */ li r0, 0 -/* 80154B5C 00151ABC 90 03 00 00 */ stw r0, 0(r3) -/* 80154B60 00151AC0 4E 80 00 20 */ blr - -.global ResetAll__7CFidgetFv -ResetAll__7CFidgetFv: -/* 80154B64 00151AC4 38 A0 00 00 */ li r5, 0 -/* 80154B68 00151AC8 38 80 FF FF */ li r4, -1 -/* 80154B6C 00151ACC 90 A3 00 00 */ stw r5, 0(r3) -/* 80154B70 00151AD0 38 00 00 03 */ li r0, 3 -/* 80154B74 00151AD4 C0 02 9E 00 */ lfs f0, lbl_805ABB20@sda21(r2) -/* 80154B78 00151AD8 90 83 00 04 */ stw r4, 4(r3) -/* 80154B7C 00151ADC D0 03 00 18 */ stfs f0, 0x18(r3) -/* 80154B80 00151AE0 D0 03 00 1C */ stfs f0, 0x1c(r3) -/* 80154B84 00151AE4 D0 03 00 14 */ stfs f0, 0x14(r3) -/* 80154B88 00151AE8 D0 03 00 24 */ stfs f0, 0x24(r3) -/* 80154B8C 00151AEC D0 03 00 28 */ stfs f0, 0x28(r3) -/* 80154B90 00151AF0 D0 03 00 2C */ stfs f0, 0x2c(r3) -/* 80154B94 00151AF4 90 A3 00 08 */ stw r5, 8(r3) -/* 80154B98 00151AF8 90 83 00 0C */ stw r4, 0xc(r3) -/* 80154B9C 00151AFC 90 03 00 10 */ stw r0, 0x10(r3) -/* 80154BA0 00151B00 88 03 00 34 */ lbz r0, 0x34(r3) -/* 80154BA4 00151B04 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 -/* 80154BA8 00151B08 98 03 00 34 */ stb r0, 0x34(r3) -/* 80154BAC 00151B0C 4E 80 00 20 */ blr - -.global __ct__7CFidgetFv -__ct__7CFidgetFv: -/* 80154BB0 00151B10 38 A0 00 00 */ li r5, 0 -/* 80154BB4 00151B14 38 80 FF FF */ li r4, -1 -/* 80154BB8 00151B18 90 A3 00 00 */ stw r5, 0(r3) -/* 80154BBC 00151B1C 38 00 00 03 */ li r0, 3 -/* 80154BC0 00151B20 C0 22 9E 00 */ lfs f1, lbl_805ABB20@sda21(r2) -/* 80154BC4 00151B24 90 83 00 04 */ stw r4, 4(r3) -/* 80154BC8 00151B28 C0 02 9E 24 */ lfs f0, lbl_805ABB44@sda21(r2) -/* 80154BCC 00151B2C 90 A3 00 08 */ stw r5, 8(r3) -/* 80154BD0 00151B30 90 83 00 0C */ stw r4, 0xc(r3) -/* 80154BD4 00151B34 90 03 00 10 */ stw r0, 0x10(r3) -/* 80154BD8 00151B38 D0 23 00 14 */ stfs f1, 0x14(r3) -/* 80154BDC 00151B3C D0 23 00 18 */ stfs f1, 0x18(r3) -/* 80154BE0 00151B40 D0 23 00 1C */ stfs f1, 0x1c(r3) -/* 80154BE4 00151B44 D0 23 00 20 */ stfs f1, 0x20(r3) -/* 80154BE8 00151B48 D0 23 00 24 */ stfs f1, 0x24(r3) -/* 80154BEC 00151B4C D0 23 00 28 */ stfs f1, 0x28(r3) -/* 80154BF0 00151B50 D0 23 00 2C */ stfs f1, 0x2c(r3) -/* 80154BF4 00151B54 D0 03 00 30 */ stfs f0, 0x30(r3) -/* 80154BF8 00151B58 88 03 00 34 */ lbz r0, 0x34(r3) -/* 80154BFC 00151B5C 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 -/* 80154C00 00151B60 98 03 00 34 */ stb r0, 0x34(r3) -/* 80154C04 00151B64 4E 80 00 20 */ blr - -.global __dt__10CSpankWeedFv -__dt__10CSpankWeedFv: -/* 80154C08 00151B68 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80154C0C 00151B6C 7C 08 02 A6 */ mflr r0 -/* 80154C10 00151B70 90 01 00 14 */ stw r0, 0x14(r1) -/* 80154C14 00151B74 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80154C18 00151B78 7C 9F 23 78 */ mr r31, r4 -/* 80154C1C 00151B7C 93 C1 00 08 */ stw r30, 8(r1) -/* 80154C20 00151B80 7C 7E 1B 79 */ or. r30, r3, r3 -/* 80154C24 00151B84 41 82 00 40 */ beq lbl_80154C64 -/* 80154C28 00151B88 3C 60 80 3E */ lis r3, lbl_803E2D28@ha -/* 80154C2C 00151B8C 34 1E 05 94 */ addic. r0, r30, 0x594 -/* 80154C30 00151B90 38 03 2D 28 */ addi r0, r3, lbl_803E2D28@l -/* 80154C34 00151B94 90 1E 00 00 */ stw r0, 0(r30) -/* 80154C38 00151B98 41 82 00 10 */ beq lbl_80154C48 -/* 80154C3C 00151B9C 80 7E 05 94 */ lwz r3, 0x594(r30) -/* 80154C40 00151BA0 38 80 00 01 */ li r4, 1 -/* 80154C44 00151BA4 48 05 2C 99 */ bl sub_801a78dc -lbl_80154C48: -/* 80154C48 00151BA8 7F C3 F3 78 */ mr r3, r30 -/* 80154C4C 00151BAC 38 80 00 00 */ li r4, 0 -/* 80154C50 00151BB0 4B F2 29 21 */ bl __dt__10CPatternedFv -/* 80154C54 00151BB4 7F E0 07 35 */ extsh. r0, r31 -/* 80154C58 00151BB8 40 81 00 0C */ ble lbl_80154C64 -/* 80154C5C 00151BBC 7F C3 F3 78 */ mr r3, r30 -/* 80154C60 00151BC0 48 1C 0C D1 */ bl Free__7CMemoryFPCv -lbl_80154C64: -/* 80154C64 00151BC4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80154C68 00151BC8 7F C3 F3 78 */ mr r3, r30 -/* 80154C6C 00151BCC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80154C70 00151BD0 83 C1 00 08 */ lwz r30, 8(r1) -/* 80154C74 00151BD4 7C 08 03 A6 */ mtlr r0 -/* 80154C78 00151BD8 38 21 00 10 */ addi r1, r1, 0x10 -/* 80154C7C 00151BDC 4E 80 00 20 */ blr - -.global Render__10CSpankWeedCFRC13CStateManager -Render__10CSpankWeedCFRC13CStateManager: -/* 80154C80 00151BE0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80154C84 00151BE4 7C 08 02 A6 */ mflr r0 -/* 80154C88 00151BE8 90 01 00 14 */ stw r0, 0x14(r1) -/* 80154C8C 00151BEC 4B F2 33 A1 */ bl Render__10CPatternedCFRC13CStateManager -/* 80154C90 00151BF0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80154C94 00151BF4 7C 08 03 A6 */ mtlr r0 -/* 80154C98 00151BF8 38 21 00 10 */ addi r1, r1, 0x10 -/* 80154C9C 00151BFC 4E 80 00 20 */ blr - -.global Attacked__10CSpankWeedFR13CStateManagerf -Attacked__10CSpankWeedFR13CStateManagerf: -/* 80154CA0 00151C00 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80154CA4 00151C04 7C 08 02 A6 */ mflr r0 -/* 80154CA8 00151C08 90 01 00 14 */ stw r0, 0x14(r1) -/* 80154CAC 00151C0C 48 0A 0F 35 */ bl Attacked__10CPatternedFR13CStateManagerf -/* 80154CB0 00151C10 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80154CB4 00151C14 7C 08 03 A6 */ mtlr r0 -/* 80154CB8 00151C18 38 21 00 10 */ addi r1, r1, 0x10 -/* 80154CBC 00151C1C 4E 80 00 20 */ blr - -.global sub_80154cc0 -sub_80154cc0: -/* 80154CC0 00151C20 80 03 05 BC */ lwz r0, 0x5bc(r3) -/* 80154CC4 00151C24 20 00 00 03 */ subfic r0, r0, 3 -/* 80154CC8 00151C28 7C 00 00 34 */ cntlzw r0, r0 -/* 80154CCC 00151C2C 54 03 D9 7E */ srwi r3, r0, 5 -/* 80154CD0 00151C30 4E 80 00 20 */ blr - -.global sub_80154cd4 -sub_80154cd4: -/* 80154CD4 00151C34 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80154CD8 00151C38 80 84 08 4C */ lwz r4, 0x84c(r4) -/* 80154CDC 00151C3C C0 03 05 AC */ lfs f0, 0x5ac(r3) -/* 80154CE0 00151C40 C0 C4 00 50 */ lfs f6, 0x50(r4) -/* 80154CE4 00151C44 C0 44 00 40 */ lfs f2, 0x40(r4) -/* 80154CE8 00151C48 EC A6 00 28 */ fsubs f5, f6, f0 -/* 80154CEC 00151C4C C0 03 05 A8 */ lfs f0, 0x5a8(r3) -/* 80154CF0 00151C50 C0 E4 00 60 */ lfs f7, 0x60(r4) -/* 80154CF4 00151C54 EC 62 00 28 */ fsubs f3, f2, f0 -/* 80154CF8 00151C58 C0 23 05 B0 */ lfs f1, 0x5b0(r3) -/* 80154CFC 00151C5C EC 05 01 72 */ fmuls f0, f5, f5 -/* 80154D00 00151C60 EC 87 08 28 */ fsubs f4, f7, f1 -/* 80154D04 00151C64 D0 41 00 08 */ stfs f2, 8(r1) -/* 80154D08 00151C68 EC 23 00 F2 */ fmuls f1, f3, f3 -/* 80154D0C 00151C6C D0 C1 00 0C */ stfs f6, 0xc(r1) -/* 80154D10 00151C70 EC 44 01 32 */ fmuls f2, f4, f4 -/* 80154D14 00151C74 EC 01 00 2A */ fadds f0, f1, f0 -/* 80154D18 00151C78 D0 E1 00 10 */ stfs f7, 0x10(r1) -/* 80154D1C 00151C7C D0 61 00 14 */ stfs f3, 0x14(r1) -/* 80154D20 00151C80 EC 22 00 2A */ fadds f1, f2, f0 -/* 80154D24 00151C84 D0 A1 00 18 */ stfs f5, 0x18(r1) -/* 80154D28 00151C88 D0 81 00 1C */ stfs f4, 0x1c(r1) -/* 80154D2C 00151C8C 38 21 00 20 */ addi r1, r1, 0x20 -/* 80154D30 00151C90 4E 80 00 20 */ blr - -.global GetOrbitPosition__10CSpankWeedCFRC13CStateManager -GetOrbitPosition__10CSpankWeedCFRC13CStateManager: -/* 80154D34 00151C94 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80154D38 00151C98 7C 08 02 A6 */ mflr r0 -/* 80154D3C 00151C9C 90 01 00 24 */ stw r0, 0x24(r1) -/* 80154D40 00151CA0 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80154D44 00151CA4 7C 9F 23 78 */ mr r31, r4 -/* 80154D48 00151CA8 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80154D4C 00151CAC 7C 7E 1B 78 */ mr r30, r3 -/* 80154D50 00151CB0 38 61 00 0C */ addi r3, r1, 0xc -/* 80154D54 00151CB4 4B F2 38 59 */ bl GetOrbitPosition__10CPatternedCFRC13CStateManager -/* 80154D58 00151CB8 C0 3F 03 38 */ lfs f1, 0x338(r31) -/* 80154D5C 00151CBC C0 02 9E 28 */ lfs f0, lbl_805ABB48@sda21(r2) -/* 80154D60 00151CC0 D0 21 00 08 */ stfs f1, 8(r1) -/* 80154D64 00151CC4 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 80154D68 00151CC8 C0 E1 00 0C */ lfs f7, 0xc(r1) -/* 80154D6C 00151CCC C1 01 00 10 */ lfs f8, 0x10(r1) -/* 80154D70 00151CD0 C1 21 00 14 */ lfs f9, 0x14(r1) -/* 80154D74 00151CD4 40 80 00 0C */ bge lbl_80154D80 -/* 80154D78 00151CD8 38 62 9E 28 */ addi r3, r2, lbl_805ABB48@sda21 -/* 80154D7C 00151CDC 48 00 00 08 */ b lbl_80154D84 -lbl_80154D80: -/* 80154D80 00151CE0 38 61 00 08 */ addi r3, r1, 8 -lbl_80154D84: -/* 80154D84 00151CE4 80 9F 05 B4 */ lwz r4, 0x5b4(r31) -/* 80154D88 00151CE8 C0 3F 00 40 */ lfs f1, 0x40(r31) -/* 80154D8C 00151CEC C0 1F 05 9C */ lfs f0, 0x59c(r31) -/* 80154D90 00151CF0 2C 04 00 03 */ cmpwi r4, 3 -/* 80154D94 00151CF4 C0 7F 00 50 */ lfs f3, 0x50(r31) -/* 80154D98 00151CF8 C0 5F 05 A0 */ lfs f2, 0x5a0(r31) -/* 80154D9C 00151CFC EC C1 00 2A */ fadds f6, f1, f0 -/* 80154DA0 00151D00 C0 3F 00 60 */ lfs f1, 0x60(r31) -/* 80154DA4 00151D04 C0 1F 05 A4 */ lfs f0, 0x5a4(r31) -/* 80154DA8 00151D08 EC A3 10 2A */ fadds f5, f3, f2 -/* 80154DAC 00151D0C C1 43 00 00 */ lfs f10, 0(r3) -/* 80154DB0 00151D10 EC 81 00 2A */ fadds f4, f1, f0 -/* 80154DB4 00151D14 40 82 00 40 */ bne lbl_80154DF4 -/* 80154DB8 00151D18 80 1F 05 B8 */ lwz r0, 0x5b8(r31) -/* 80154DBC 00151D1C 2C 00 00 02 */ cmpwi r0, 2 -/* 80154DC0 00151D20 40 82 00 34 */ bne lbl_80154DF4 -/* 80154DC4 00151D24 C0 02 9E 2C */ lfs f0, lbl_805ABB4C@sda21(r2) -/* 80154DC8 00151D28 EC 46 02 B2 */ fmuls f2, f6, f10 -/* 80154DCC 00151D2C EC 25 02 B2 */ fmuls f1, f5, f10 -/* 80154DD0 00151D30 EC 60 50 28 */ fsubs f3, f0, f10 -/* 80154DD4 00151D34 EC 04 02 B2 */ fmuls f0, f4, f10 -/* 80154DD8 00151D38 EC 47 10 FA */ fmadds f2, f7, f3, f2 -/* 80154DDC 00151D3C EC 28 08 FA */ fmadds f1, f8, f3, f1 -/* 80154DE0 00151D40 EC 09 00 FA */ fmadds f0, f9, f3, f0 -/* 80154DE4 00151D44 D0 5E 00 00 */ stfs f2, 0(r30) -/* 80154DE8 00151D48 D0 3E 00 04 */ stfs f1, 4(r30) -/* 80154DEC 00151D4C D0 1E 00 08 */ stfs f0, 8(r30) -/* 80154DF0 00151D50 48 00 00 54 */ b lbl_80154E44 -lbl_80154DF4: -/* 80154DF4 00151D54 2C 04 00 02 */ cmpwi r4, 2 -/* 80154DF8 00151D58 40 82 00 40 */ bne lbl_80154E38 -/* 80154DFC 00151D5C 80 1F 05 B8 */ lwz r0, 0x5b8(r31) -/* 80154E00 00151D60 2C 00 00 03 */ cmpwi r0, 3 -/* 80154E04 00151D64 40 82 00 34 */ bne lbl_80154E38 -/* 80154E08 00151D68 C0 02 9E 2C */ lfs f0, lbl_805ABB4C@sda21(r2) -/* 80154E0C 00151D6C EC 47 02 B2 */ fmuls f2, f7, f10 -/* 80154E10 00151D70 EC 28 02 B2 */ fmuls f1, f8, f10 -/* 80154E14 00151D74 EC 60 50 28 */ fsubs f3, f0, f10 -/* 80154E18 00151D78 EC 09 02 B2 */ fmuls f0, f9, f10 -/* 80154E1C 00151D7C EC 46 10 FA */ fmadds f2, f6, f3, f2 -/* 80154E20 00151D80 EC 25 08 FA */ fmadds f1, f5, f3, f1 -/* 80154E24 00151D84 EC 04 00 FA */ fmadds f0, f4, f3, f0 -/* 80154E28 00151D88 D0 5E 00 00 */ stfs f2, 0(r30) -/* 80154E2C 00151D8C D0 3E 00 04 */ stfs f1, 4(r30) -/* 80154E30 00151D90 D0 1E 00 08 */ stfs f0, 8(r30) -/* 80154E34 00151D94 48 00 00 10 */ b lbl_80154E44 -lbl_80154E38: -/* 80154E38 00151D98 D0 FE 00 00 */ stfs f7, 0(r30) -/* 80154E3C 00151D9C D1 1E 00 04 */ stfs f8, 4(r30) -/* 80154E40 00151DA0 D1 3E 00 08 */ stfs f9, 8(r30) -lbl_80154E44: -/* 80154E44 00151DA4 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80154E48 00151DA8 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80154E4C 00151DAC 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 80154E50 00151DB0 7C 08 03 A6 */ mtlr r0 -/* 80154E54 00151DB4 38 21 00 20 */ addi r1, r1, 0x20 -/* 80154E58 00151DB8 4E 80 00 20 */ blr - -.global GetAimPosition__10CSpankWeedCFRC13CStateManagerf -GetAimPosition__10CSpankWeedCFRC13CStateManagerf: -/* 80154E5C 00151DBC 94 21 FE C0 */ stwu r1, -0x140(r1) -/* 80154E60 00151DC0 7C 08 02 A6 */ mflr r0 -/* 80154E64 00151DC4 90 01 01 44 */ stw r0, 0x144(r1) -/* 80154E68 00151DC8 DB E1 01 30 */ stfd f31, 0x130(r1) -/* 80154E6C 00151DCC F3 E1 01 38 */ psq_st f31, 312(r1), 0, qr0 -/* 80154E70 00151DD0 DB C1 01 20 */ stfd f30, 0x120(r1) -/* 80154E74 00151DD4 F3 C1 01 28 */ psq_st f30, 296(r1), 0, qr0 -/* 80154E78 00151DD8 DB A1 01 10 */ stfd f29, 0x110(r1) -/* 80154E7C 00151DDC F3 A1 01 18 */ psq_st f29, 280(r1), 0, qr0 -/* 80154E80 00151DE0 93 E1 01 0C */ stw r31, 0x10c(r1) -/* 80154E84 00151DE4 93 C1 01 08 */ stw r30, 0x108(r1) -/* 80154E88 00151DE8 93 A1 01 04 */ stw r29, 0x104(r1) -/* 80154E8C 00151DEC C0 02 9E 30 */ lfs f0, lbl_805ABB50@sda21(r2) -/* 80154E90 00151DF0 3C A0 80 5A */ lis r5, skZero3f@ha -/* 80154E94 00151DF4 C7 E5 66 A0 */ lfsu f31, skZero3f@l(r5) -/* 80154E98 00151DF8 7C 7D 1B 78 */ mr r29, r3 -/* 80154E9C 00151DFC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80154EA0 00151E00 7C 9E 23 78 */ mr r30, r4 -/* 80154EA4 00151E04 C3 C5 00 04 */ lfs f30, 4(r5) -/* 80154EA8 00151E08 C3 A5 00 08 */ lfs f29, 8(r5) -/* 80154EAC 00151E0C 40 81 00 18 */ ble lbl_80154EC4 -/* 80154EB0 00151E10 38 61 00 90 */ addi r3, r1, 0x90 -/* 80154EB4 00151E14 4B FC 6D FD */ bl PredictMotion__13CPhysicsActorCFf -/* 80154EB8 00151E18 C3 E1 00 90 */ lfs f31, 0x90(r1) -/* 80154EBC 00151E1C C3 C1 00 94 */ lfs f30, 0x94(r1) -/* 80154EC0 00151E20 C3 A1 00 98 */ lfs f29, 0x98(r1) -lbl_80154EC4: -/* 80154EC4 00151E24 80 BE 00 64 */ lwz r5, 0x64(r30) -/* 80154EC8 00151E28 3C 60 80 3D */ lis r3, lbl_803D0230@ha -/* 80154ECC 00151E2C 38 83 02 30 */ addi r4, r3, lbl_803D0230@l -/* 80154ED0 00151E30 38 61 00 2C */ addi r3, r1, 0x2c -/* 80154ED4 00151E34 83 E5 00 10 */ lwz r31, 0x10(r5) -/* 80154ED8 00151E38 38 84 00 59 */ addi r4, r4, 0x59 -/* 80154EDC 00151E3C 4B EA FD DD */ bl string_l__4rstlFPCc -/* 80154EE0 00151E40 7F E4 FB 78 */ mr r4, r31 -/* 80154EE4 00151E44 38 61 00 0C */ addi r3, r1, 0xc -/* 80154EE8 00151E48 38 A1 00 2C */ addi r5, r1, 0x2c -/* 80154EEC 00151E4C 4B ED 99 4D */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80154EF0 00151E50 88 01 00 0C */ lbz r0, 0xc(r1) -/* 80154EF4 00151E54 38 61 00 2C */ addi r3, r1, 0x2c -/* 80154EF8 00151E58 98 01 00 10 */ stb r0, 0x10(r1) -/* 80154EFC 00151E5C 48 1E 8B E5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 80154F00 00151E60 88 01 00 10 */ lbz r0, 0x10(r1) -/* 80154F04 00151E64 28 00 00 FF */ cmplwi r0, 0xff -/* 80154F08 00151E68 41 82 00 88 */ beq lbl_80154F90 -/* 80154F0C 00151E6C 98 01 00 08 */ stb r0, 8(r1) -/* 80154F10 00151E70 7F E4 FB 78 */ mr r4, r31 -/* 80154F14 00151E74 38 61 00 60 */ addi r3, r1, 0x60 -/* 80154F18 00151E78 38 A1 00 08 */ addi r5, r1, 8 -/* 80154F1C 00151E7C 38 C0 00 00 */ li r6, 0 -/* 80154F20 00151E80 4B ED 73 55 */ bl GetLocatorTransform__9CAnimDataCF6CSegIdPC13CCharAnimTime -/* 80154F24 00151E84 38 61 00 C4 */ addi r3, r1, 0xc4 -/* 80154F28 00151E88 38 81 00 60 */ addi r4, r1, 0x60 -/* 80154F2C 00151E8C 48 1B DC 49 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80154F30 00151E90 80 DE 00 64 */ lwz r6, 0x64(r30) -/* 80154F34 00151E94 38 61 00 20 */ addi r3, r1, 0x20 -/* 80154F38 00151E98 C0 01 00 F0 */ lfs f0, 0xf0(r1) -/* 80154F3C 00151E9C 38 9E 00 34 */ addi r4, r30, 0x34 -/* 80154F40 00151EA0 C0 26 00 08 */ lfs f1, 8(r6) -/* 80154F44 00151EA4 38 A1 00 3C */ addi r5, r1, 0x3c -/* 80154F48 00151EA8 C0 66 00 04 */ lfs f3, 4(r6) -/* 80154F4C 00151EAC C0 41 00 E0 */ lfs f2, 0xe0(r1) -/* 80154F50 00151EB0 EC 81 00 32 */ fmuls f4, f1, f0 -/* 80154F54 00151EB4 C0 26 00 00 */ lfs f1, 0(r6) -/* 80154F58 00151EB8 C0 01 00 D0 */ lfs f0, 0xd0(r1) -/* 80154F5C 00151EBC EC 43 00 B2 */ fmuls f2, f3, f2 -/* 80154F60 00151EC0 D0 81 00 44 */ stfs f4, 0x44(r1) -/* 80154F64 00151EC4 EC 01 00 32 */ fmuls f0, f1, f0 -/* 80154F68 00151EC8 D0 41 00 40 */ stfs f2, 0x40(r1) -/* 80154F6C 00151ECC D0 01 00 3C */ stfs f0, 0x3c(r1) -/* 80154F70 00151ED0 48 1B DB 79 */ bl __ml__12CTransform4fCFRC9CVector3f -/* 80154F74 00151ED4 C0 41 00 20 */ lfs f2, 0x20(r1) -/* 80154F78 00151ED8 C0 21 00 24 */ lfs f1, 0x24(r1) -/* 80154F7C 00151EDC C0 01 00 28 */ lfs f0, 0x28(r1) -/* 80154F80 00151EE0 EF FF 10 2A */ fadds f31, f31, f2 -/* 80154F84 00151EE4 EF DE 08 2A */ fadds f30, f30, f1 -/* 80154F88 00151EE8 EF BD 00 2A */ fadds f29, f29, f0 -/* 80154F8C 00151EEC 48 00 00 34 */ b lbl_80154FC0 -lbl_80154F90: -/* 80154F90 00151EF0 7F C4 F3 78 */ mr r4, r30 -/* 80154F94 00151EF4 38 61 00 48 */ addi r3, r1, 0x48 -/* 80154F98 00151EF8 4B FC 59 95 */ bl GetBoundingBox__13CPhysicsActorCFv -/* 80154F9C 00151EFC 38 61 00 14 */ addi r3, r1, 0x14 -/* 80154FA0 00151F00 38 81 00 48 */ addi r4, r1, 0x48 -/* 80154FA4 00151F04 48 1E 26 69 */ bl GetCenterPoint__6CAABoxCFv -/* 80154FA8 00151F08 C0 41 00 14 */ lfs f2, 0x14(r1) -/* 80154FAC 00151F0C C0 21 00 18 */ lfs f1, 0x18(r1) -/* 80154FB0 00151F10 C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 80154FB4 00151F14 EF FF 10 2A */ fadds f31, f31, f2 -/* 80154FB8 00151F18 EF DE 08 2A */ fadds f30, f30, f1 -/* 80154FBC 00151F1C EF BD 00 2A */ fadds f29, f29, f0 -lbl_80154FC0: -/* 80154FC0 00151F20 D3 FD 00 00 */ stfs f31, 0(r29) -/* 80154FC4 00151F24 D3 DD 00 04 */ stfs f30, 4(r29) -/* 80154FC8 00151F28 D3 BD 00 08 */ stfs f29, 8(r29) -/* 80154FCC 00151F2C E3 E1 01 38 */ psq_l f31, 312(r1), 0, qr0 -/* 80154FD0 00151F30 CB E1 01 30 */ lfd f31, 0x130(r1) -/* 80154FD4 00151F34 E3 C1 01 28 */ psq_l f30, 296(r1), 0, qr0 -/* 80154FD8 00151F38 CB C1 01 20 */ lfd f30, 0x120(r1) -/* 80154FDC 00151F3C E3 A1 01 18 */ psq_l f29, 280(r1), 0, qr0 -/* 80154FE0 00151F40 CB A1 01 10 */ lfd f29, 0x110(r1) -/* 80154FE4 00151F44 83 E1 01 0C */ lwz r31, 0x10c(r1) -/* 80154FE8 00151F48 83 C1 01 08 */ lwz r30, 0x108(r1) -/* 80154FEC 00151F4C 80 01 01 44 */ lwz r0, 0x144(r1) -/* 80154FF0 00151F50 83 A1 01 04 */ lwz r29, 0x104(r1) -/* 80154FF4 00151F54 7C 08 03 A6 */ mtlr r0 -/* 80154FF8 00151F58 38 21 01 40 */ addi r1, r1, 0x140 -/* 80154FFC 00151F5C 4E 80 00 20 */ blr - -.global Flinch__10CSpankWeedFR13CStateManager9EStateMsgf -Flinch__10CSpankWeedFR13CStateManager9EStateMsgf: -/* 80155000 00151F60 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80155004 00151F64 7C 08 02 A6 */ mflr r0 -/* 80155008 00151F68 2C 05 00 01 */ cmpwi r5, 1 -/* 8015500C 00151F6C 90 01 00 34 */ stw r0, 0x34(r1) -/* 80155010 00151F70 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 80155014 00151F74 41 82 00 44 */ beq lbl_80155058 -/* 80155018 00151F78 40 80 00 10 */ bge lbl_80155028 -/* 8015501C 00151F7C 2C 05 00 00 */ cmpwi r5, 0 -/* 80155020 00151F80 40 80 00 14 */ bge lbl_80155034 -/* 80155024 00151F84 48 00 01 34 */ b lbl_80155158 -lbl_80155028: -/* 80155028 00151F88 2C 05 00 03 */ cmpwi r5, 3 -/* 8015502C 00151F8C 40 80 01 2C */ bge lbl_80155158 -/* 80155030 00151F90 48 00 01 20 */ b lbl_80155150 -lbl_80155034: -/* 80155034 00151F94 38 A0 00 00 */ li r5, 0 -/* 80155038 00151F98 38 00 00 04 */ li r0, 4 -/* 8015503C 00151F9C 90 A3 05 BC */ stw r5, 0x5bc(r3) -/* 80155040 00151FA0 7C 86 23 78 */ mr r6, r4 -/* 80155044 00151FA4 38 80 00 29 */ li r4, 0x29 -/* 80155048 00151FA8 38 A0 00 28 */ li r5, 0x28 -/* 8015504C 00151FAC 90 03 05 B4 */ stw r0, 0x5b4(r3) -/* 80155050 00151FB0 4B EF EE 85 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager -/* 80155054 00151FB4 48 00 01 04 */ b lbl_80155158 -lbl_80155058: -/* 80155058 00151FB8 80 03 05 BC */ lwz r0, 0x5bc(r3) -/* 8015505C 00151FBC 2C 00 00 01 */ cmpwi r0, 1 -/* 80155060 00151FC0 41 82 00 F8 */ beq lbl_80155158 -/* 80155064 00151FC4 40 80 00 10 */ bge lbl_80155074 -/* 80155068 00151FC8 2C 00 00 00 */ cmpwi r0, 0 -/* 8015506C 00151FCC 40 80 00 14 */ bge lbl_80155080 -/* 80155070 00151FD0 48 00 00 E8 */ b lbl_80155158 -lbl_80155074: -/* 80155074 00151FD4 2C 00 00 03 */ cmpwi r0, 3 -/* 80155078 00151FD8 40 80 00 E0 */ bge lbl_80155158 -/* 8015507C 00151FDC 48 00 00 B8 */ b lbl_80155134 -lbl_80155080: -/* 80155080 00151FE0 80 E3 04 50 */ lwz r7, 0x450(r3) -/* 80155084 00151FE4 80 07 02 B8 */ lwz r0, 0x2b8(r7) -/* 80155088 00151FE8 2C 00 00 06 */ cmpwi r0, 6 -/* 8015508C 00151FEC 40 82 00 10 */ bne lbl_8015509C -/* 80155090 00151FF0 38 00 00 02 */ li r0, 2 -/* 80155094 00151FF4 90 03 05 BC */ stw r0, 0x5bc(r3) -/* 80155098 00151FF8 48 00 00 C0 */ b lbl_80155158 -lbl_8015509C: -/* 8015509C 00151FFC 3C A0 80 3E */ lis r5, lbl_803DAA68@ha -/* 801550A0 00152000 3C 60 80 5A */ lis r3, skZero3f@ha -/* 801550A4 00152004 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) -/* 801550A8 00152008 38 A5 AA 68 */ addi r5, r5, lbl_803DAA68@l -/* 801550AC 0015200C 3C 80 80 3E */ lis r4, lbl_803DAA44@ha -/* 801550B0 00152010 90 A1 00 08 */ stw r5, 8(r1) -/* 801550B4 00152014 38 A4 AA 44 */ addi r5, r4, lbl_803DAA44@l -/* 801550B8 00152018 C0 23 00 04 */ lfs f1, 4(r3) -/* 801550BC 0015201C C0 03 00 08 */ lfs f0, 8(r3) -/* 801550C0 00152020 38 C0 00 04 */ li r6, 4 -/* 801550C4 00152024 38 00 00 00 */ li r0, 0 -/* 801550C8 00152028 3B E7 00 04 */ addi r31, r7, 4 -/* 801550CC 0015202C 90 C1 00 0C */ stw r6, 0xc(r1) -/* 801550D0 00152030 38 80 00 04 */ li r4, 4 -/* 801550D4 00152034 7F E3 FB 78 */ mr r3, r31 -/* 801550D8 00152038 90 A1 00 08 */ stw r5, 8(r1) -/* 801550DC 0015203C D0 41 00 10 */ stfs f2, 0x10(r1) -/* 801550E0 00152040 D0 21 00 14 */ stfs f1, 0x14(r1) -/* 801550E4 00152044 D0 01 00 18 */ stfs f0, 0x18(r1) -/* 801550E8 00152048 90 01 00 1C */ stw r0, 0x1c(r1) -/* 801550EC 0015204C 4B FD C3 4D */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 801550F0 00152050 80 01 00 0C */ lwz r0, 0xc(r1) -/* 801550F4 00152054 3C 60 80 3E */ lis r3, lbl_803DAA44@ha -/* 801550F8 00152058 38 83 AA 44 */ addi r4, r3, lbl_803DAA44@l -/* 801550FC 0015205C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80155100 00152060 90 1F 00 F8 */ stw r0, 0xf8(r31) -/* 80155104 00152064 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 80155108 00152068 80 A1 00 10 */ lwz r5, 0x10(r1) -/* 8015510C 0015206C 80 61 00 14 */ lwz r3, 0x14(r1) -/* 80155110 00152070 90 BF 00 FC */ stw r5, 0xfc(r31) -/* 80155114 00152074 80 A1 00 18 */ lwz r5, 0x18(r1) -/* 80155118 00152078 90 7F 01 00 */ stw r3, 0x100(r31) -/* 8015511C 0015207C 80 61 00 1C */ lwz r3, 0x1c(r1) -/* 80155120 00152080 90 BF 01 04 */ stw r5, 0x104(r31) -/* 80155124 00152084 90 81 00 08 */ stw r4, 8(r1) -/* 80155128 00152088 90 7F 01 08 */ stw r3, 0x108(r31) -/* 8015512C 0015208C 90 01 00 08 */ stw r0, 8(r1) -/* 80155130 00152090 48 00 00 28 */ b lbl_80155158 -lbl_80155134: -/* 80155134 00152094 80 83 04 50 */ lwz r4, 0x450(r3) -/* 80155138 00152098 80 04 02 B8 */ lwz r0, 0x2b8(r4) -/* 8015513C 0015209C 2C 00 00 06 */ cmpwi r0, 6 -/* 80155140 001520A0 41 82 00 18 */ beq lbl_80155158 -/* 80155144 001520A4 38 00 00 03 */ li r0, 3 -/* 80155148 001520A8 90 03 05 BC */ stw r0, 0x5bc(r3) -/* 8015514C 001520AC 48 00 00 0C */ b lbl_80155158 -lbl_80155150: -/* 80155150 001520B0 38 00 00 04 */ li r0, 4 -/* 80155154 001520B4 90 03 05 B8 */ stw r0, 0x5b8(r3) -lbl_80155158: -/* 80155158 001520B8 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8015515C 001520BC 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 80155160 001520C0 7C 08 03 A6 */ mtlr r0 -/* 80155164 001520C4 38 21 00 30 */ addi r1, r1, 0x30 -/* 80155168 001520C8 4E 80 00 20 */ blr - -.global Delay__10CSpankWeedFR13CStateManagerf -Delay__10CSpankWeedFR13CStateManagerf: -/* 8015516C 001520CC 88 03 04 00 */ lbz r0, 0x400(r3) -/* 80155170 001520D0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80155174 001520D4 41 82 00 34 */ beq lbl_801551A8 -/* 80155178 001520D8 C0 23 03 38 */ lfs f1, 0x338(r3) -/* 8015517C 001520DC C0 03 05 78 */ lfs f0, 0x578(r3) -/* 80155180 001520E0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80155184 001520E4 40 81 00 1C */ ble lbl_801551A0 -/* 80155188 001520E8 88 03 04 00 */ lbz r0, 0x400(r3) -/* 8015518C 001520EC 38 80 00 00 */ li r4, 0 -/* 80155190 001520F0 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 -/* 80155194 001520F4 98 03 04 00 */ stb r0, 0x400(r3) -/* 80155198 001520F8 38 60 00 01 */ li r3, 1 -/* 8015519C 001520FC 4E 80 00 20 */ blr -lbl_801551A0: -/* 801551A0 00152100 38 60 00 00 */ li r3, 0 -/* 801551A4 00152104 4E 80 00 20 */ blr -lbl_801551A8: -/* 801551A8 00152108 38 60 00 01 */ li r3, 1 -/* 801551AC 0015210C 4E 80 00 20 */ blr - -.global InRange__10CSpankWeedFR13CStateManagerf -InRange__10CSpankWeedFR13CStateManagerf: -/* 801551B0 00152110 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 801551B4 00152114 7C 08 02 A6 */ mflr r0 -/* 801551B8 00152118 90 01 00 24 */ stw r0, 0x24(r1) -/* 801551BC 0015211C 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 801551C0 00152120 7C 9F 23 78 */ mr r31, r4 -/* 801551C4 00152124 93 C1 00 18 */ stw r30, 0x18(r1) -/* 801551C8 00152128 7C 7E 1B 78 */ mr r30, r3 -/* 801551CC 0015212C 4B FF FB 09 */ bl sub_80154cd4 -/* 801551D0 00152130 C0 7E 05 6C */ lfs f3, 0x56c(r30) -/* 801551D4 00152134 C0 02 9E 30 */ lfs f0, lbl_805ABB50@sda21(r2) -/* 801551D8 00152138 FC 03 00 40 */ fcmpo cr0, f3, f0 -/* 801551DC 0015213C 40 81 00 54 */ ble lbl_80155230 -/* 801551E0 00152140 80 9F 08 4C */ lwz r4, 0x84c(r31) -/* 801551E4 00152144 38 60 00 00 */ li r3, 0 -/* 801551E8 00152148 C0 BE 00 60 */ lfs f5, 0x60(r30) -/* 801551EC 0015214C C0 04 00 60 */ lfs f0, 0x60(r4) -/* 801551F0 00152150 C0 9E 00 50 */ lfs f4, 0x50(r30) -/* 801551F4 00152154 EC 00 28 28 */ fsubs f0, f0, f5 -/* 801551F8 00152158 C0 5E 00 40 */ lfs f2, 0x40(r30) -/* 801551FC 0015215C D0 81 00 0C */ stfs f4, 0xc(r1) -/* 80155200 00152160 FC 00 02 10 */ fabs f0, f0 -/* 80155204 00152164 D0 41 00 08 */ stfs f2, 8(r1) -/* 80155208 00152168 D0 A1 00 10 */ stfs f5, 0x10(r1) -/* 8015520C 0015216C FC 00 00 18 */ frsp f0, f0 -/* 80155210 00152170 FC 00 18 40 */ fcmpo cr0, f0, f3 -/* 80155214 00152174 40 80 00 30 */ bge lbl_80155244 -/* 80155218 00152178 C0 1E 05 74 */ lfs f0, 0x574(r30) -/* 8015521C 0015217C EC 00 00 32 */ fmuls f0, f0, f0 -/* 80155220 00152180 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80155224 00152184 40 80 00 20 */ bge lbl_80155244 -/* 80155228 00152188 38 60 00 01 */ li r3, 1 -/* 8015522C 0015218C 48 00 00 18 */ b lbl_80155244 -lbl_80155230: -/* 80155230 00152190 C0 1E 05 74 */ lfs f0, 0x574(r30) -/* 80155234 00152194 EC 00 00 32 */ fmuls f0, f0, f0 -/* 80155238 00152198 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015523C 0015219C 7C 00 00 26 */ mfcr r0 -/* 80155240 001521A0 54 03 0F FE */ srwi r3, r0, 0x1f -lbl_80155244: -/* 80155244 001521A4 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80155248 001521A8 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8015524C 001521AC 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 80155250 001521B0 7C 08 03 A6 */ mtlr r0 -/* 80155254 001521B4 38 21 00 20 */ addi r1, r1, 0x20 -/* 80155258 001521B8 4E 80 00 20 */ blr - -.global HearPlayer__10CSpankWeedFR13CStateManagerf -HearPlayer__10CSpankWeedFR13CStateManagerf: -/* 8015525C 001521BC 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80155260 001521C0 7C 08 02 A6 */ mflr r0 -/* 80155264 001521C4 90 01 00 24 */ stw r0, 0x24(r1) -/* 80155268 001521C8 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8015526C 001521CC 7C 9F 23 78 */ mr r31, r4 -/* 80155270 001521D0 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80155274 001521D4 7C 7E 1B 78 */ mr r30, r3 -/* 80155278 001521D8 4B FF FA 5D */ bl sub_80154cd4 -/* 8015527C 001521DC C0 7E 05 6C */ lfs f3, 0x56c(r30) -/* 80155280 001521E0 C0 02 9E 30 */ lfs f0, lbl_805ABB50@sda21(r2) -/* 80155284 001521E4 FC 03 00 40 */ fcmpo cr0, f3, f0 -/* 80155288 001521E8 40 81 00 54 */ ble lbl_801552DC -/* 8015528C 001521EC 80 9F 08 4C */ lwz r4, 0x84c(r31) -/* 80155290 001521F0 38 60 00 00 */ li r3, 0 -/* 80155294 001521F4 C0 BE 00 60 */ lfs f5, 0x60(r30) -/* 80155298 001521F8 C0 04 00 60 */ lfs f0, 0x60(r4) -/* 8015529C 001521FC C0 9E 00 50 */ lfs f4, 0x50(r30) -/* 801552A0 00152200 EC 00 28 28 */ fsubs f0, f0, f5 -/* 801552A4 00152204 C0 5E 00 40 */ lfs f2, 0x40(r30) -/* 801552A8 00152208 D0 81 00 0C */ stfs f4, 0xc(r1) -/* 801552AC 0015220C FC 00 02 10 */ fabs f0, f0 -/* 801552B0 00152210 D0 41 00 08 */ stfs f2, 8(r1) -/* 801552B4 00152214 D0 A1 00 10 */ stfs f5, 0x10(r1) -/* 801552B8 00152218 FC 00 00 18 */ frsp f0, f0 -/* 801552BC 0015221C FC 00 18 40 */ fcmpo cr0, f0, f3 -/* 801552C0 00152220 40 80 00 30 */ bge lbl_801552F0 -/* 801552C4 00152224 C0 1E 05 70 */ lfs f0, 0x570(r30) -/* 801552C8 00152228 EC 00 00 32 */ fmuls f0, f0, f0 -/* 801552CC 0015222C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801552D0 00152230 40 80 00 20 */ bge lbl_801552F0 -/* 801552D4 00152234 38 60 00 01 */ li r3, 1 -/* 801552D8 00152238 48 00 00 18 */ b lbl_801552F0 -lbl_801552DC: -/* 801552DC 0015223C C0 1E 05 70 */ lfs f0, 0x570(r30) -/* 801552E0 00152240 EC 00 00 32 */ fmuls f0, f0, f0 -/* 801552E4 00152244 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801552E8 00152248 7C 00 00 26 */ mfcr r0 -/* 801552EC 0015224C 54 03 0F FE */ srwi r3, r0, 0x1f -lbl_801552F0: -/* 801552F0 00152250 80 01 00 24 */ lwz r0, 0x24(r1) -/* 801552F4 00152254 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 801552F8 00152258 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 801552FC 0015225C 7C 08 03 A6 */ mtlr r0 -/* 80155300 00152260 38 21 00 20 */ addi r1, r1, 0x20 -/* 80155304 00152264 4E 80 00 20 */ blr - -.global InDetectionRage__10CSpankWeedFR13CStateManagerf -InDetectionRage__10CSpankWeedFR13CStateManagerf: -/* 80155308 00152268 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8015530C 0015226C 7C 08 02 A6 */ mflr r0 -/* 80155310 00152270 90 01 00 24 */ stw r0, 0x24(r1) -/* 80155314 00152274 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80155318 00152278 7C 9F 23 78 */ mr r31, r4 -/* 8015531C 0015227C 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80155320 00152280 7C 7E 1B 78 */ mr r30, r3 -/* 80155324 00152284 4B FF F9 B1 */ bl sub_80154cd4 -/* 80155328 00152288 C0 7E 05 6C */ lfs f3, 0x56c(r30) -/* 8015532C 0015228C C0 02 9E 30 */ lfs f0, lbl_805ABB50@sda21(r2) -/* 80155330 00152290 FC 03 00 40 */ fcmpo cr0, f3, f0 -/* 80155334 00152294 40 81 00 54 */ ble lbl_80155388 -/* 80155338 00152298 80 9F 08 4C */ lwz r4, 0x84c(r31) -/* 8015533C 0015229C 38 60 00 00 */ li r3, 0 -/* 80155340 001522A0 C0 BE 00 60 */ lfs f5, 0x60(r30) -/* 80155344 001522A4 C0 04 00 60 */ lfs f0, 0x60(r4) -/* 80155348 001522A8 C0 9E 00 50 */ lfs f4, 0x50(r30) -/* 8015534C 001522AC EC 00 28 28 */ fsubs f0, f0, f5 -/* 80155350 001522B0 C0 5E 00 40 */ lfs f2, 0x40(r30) -/* 80155354 001522B4 D0 81 00 0C */ stfs f4, 0xc(r1) -/* 80155358 001522B8 FC 00 02 10 */ fabs f0, f0 -/* 8015535C 001522BC D0 41 00 08 */ stfs f2, 8(r1) -/* 80155360 001522C0 D0 A1 00 10 */ stfs f5, 0x10(r1) -/* 80155364 001522C4 FC 00 00 18 */ frsp f0, f0 -/* 80155368 001522C8 FC 00 18 40 */ fcmpo cr0, f0, f3 -/* 8015536C 001522CC 40 80 00 30 */ bge lbl_8015539C -/* 80155370 001522D0 C0 1E 05 68 */ lfs f0, 0x568(r30) -/* 80155374 001522D4 EC 00 00 32 */ fmuls f0, f0, f0 -/* 80155378 001522D8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015537C 001522DC 40 80 00 20 */ bge lbl_8015539C -/* 80155380 001522E0 38 60 00 01 */ li r3, 1 -/* 80155384 001522E4 48 00 00 18 */ b lbl_8015539C -lbl_80155388: -/* 80155388 001522E8 C0 1E 05 68 */ lfs f0, 0x568(r30) -/* 8015538C 001522EC EC 00 00 32 */ fmuls f0, f0, f0 -/* 80155390 001522F0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80155394 001522F4 7C 00 00 26 */ mfcr r0 -/* 80155398 001522F8 54 03 0F FE */ srwi r3, r0, 0x1f -lbl_8015539C: -/* 8015539C 001522FC 80 01 00 24 */ lwz r0, 0x24(r1) -/* 801553A0 00152300 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 801553A4 00152304 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 801553A8 00152308 7C 08 03 A6 */ mtlr r0 -/* 801553AC 0015230C 38 21 00 20 */ addi r1, r1, 0x20 -/* 801553B0 00152310 4E 80 00 20 */ blr - -.global Attack__10CSpankWeedFR13CStateManager9EStateMsgf -Attack__10CSpankWeedFR13CStateManager9EStateMsgf: -/* 801553B4 00152314 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 801553B8 00152318 7C 08 02 A6 */ mflr r0 -/* 801553BC 0015231C 2C 05 00 01 */ cmpwi r5, 1 -/* 801553C0 00152320 90 01 00 54 */ stw r0, 0x54(r1) -/* 801553C4 00152324 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 801553C8 00152328 7C 7F 1B 78 */ mr r31, r3 -/* 801553CC 0015232C 93 C1 00 48 */ stw r30, 0x48(r1) -/* 801553D0 00152330 41 82 00 D0 */ beq lbl_801554A0 -/* 801553D4 00152334 40 80 00 10 */ bge lbl_801553E4 -/* 801553D8 00152338 2C 05 00 00 */ cmpwi r5, 0 -/* 801553DC 0015233C 40 80 00 14 */ bge lbl_801553F0 -/* 801553E0 00152340 48 00 01 7C */ b lbl_8015555C -lbl_801553E4: -/* 801553E4 00152344 2C 05 00 03 */ cmpwi r5, 3 -/* 801553E8 00152348 40 80 01 74 */ bge lbl_8015555C -/* 801553EC 0015234C 48 00 01 68 */ b lbl_80155554 -lbl_801553F0: -/* 801553F0 00152350 3C 80 80 3E */ lis r4, lbl_803DAA68@ha -/* 801553F4 00152354 3C 60 80 5A */ lis r3, skZero3f@ha -/* 801553F8 00152358 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) -/* 801553FC 0015235C 38 E4 AA 68 */ addi r7, r4, lbl_803DAA68@l -/* 80155400 00152360 3C 80 80 3E */ lis r4, lbl_803DA9D8@ha -/* 80155404 00152364 90 E1 00 24 */ stw r7, 0x24(r1) -/* 80155408 00152368 38 00 00 00 */ li r0, 0 -/* 8015540C 0015236C C0 23 00 04 */ lfs f1, 4(r3) -/* 80155410 00152370 C0 03 00 08 */ lfs f0, 8(r3) -/* 80155414 00152374 38 A4 A9 D8 */ addi r5, r4, lbl_803DA9D8@l -/* 80155418 00152378 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8015541C 0015237C 38 C0 00 05 */ li r6, 5 -/* 80155420 00152380 90 C1 00 28 */ stw r6, 0x28(r1) -/* 80155424 00152384 38 80 00 05 */ li r4, 5 -/* 80155428 00152388 3B C3 00 04 */ addi r30, r3, 4 -/* 8015542C 0015238C 90 A1 00 24 */ stw r5, 0x24(r1) -/* 80155430 00152390 7F C3 F3 78 */ mr r3, r30 -/* 80155434 00152394 90 01 00 2C */ stw r0, 0x2c(r1) -/* 80155438 00152398 D0 41 00 30 */ stfs f2, 0x30(r1) -/* 8015543C 0015239C D0 21 00 34 */ stfs f1, 0x34(r1) -/* 80155440 001523A0 D0 01 00 38 */ stfs f0, 0x38(r1) -/* 80155444 001523A4 98 01 00 3C */ stb r0, 0x3c(r1) -/* 80155448 001523A8 4B FD BF F1 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8015544C 001523AC 80 01 00 28 */ lwz r0, 0x28(r1) -/* 80155450 001523B0 3C 60 80 3E */ lis r3, lbl_803DA9D8@ha -/* 80155454 001523B4 38 83 A9 D8 */ addi r4, r3, lbl_803DA9D8@l -/* 80155458 001523B8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 8015545C 001523BC 90 1E 01 10 */ stw r0, 0x110(r30) -/* 80155460 001523C0 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l -/* 80155464 001523C4 80 A1 00 2C */ lwz r5, 0x2c(r1) -/* 80155468 001523C8 38 00 00 03 */ li r0, 3 -/* 8015546C 001523CC 80 C1 00 30 */ lwz r6, 0x30(r1) -/* 80155470 001523D0 90 BE 01 14 */ stw r5, 0x114(r30) -/* 80155474 001523D4 80 A1 00 34 */ lwz r5, 0x34(r1) -/* 80155478 001523D8 90 DE 01 18 */ stw r6, 0x118(r30) -/* 8015547C 001523DC 80 C1 00 38 */ lwz r6, 0x38(r1) -/* 80155480 001523E0 90 BE 01 1C */ stw r5, 0x11c(r30) -/* 80155484 001523E4 88 A1 00 3C */ lbz r5, 0x3c(r1) -/* 80155488 001523E8 90 DE 01 20 */ stw r6, 0x120(r30) -/* 8015548C 001523EC 98 BE 01 24 */ stb r5, 0x124(r30) -/* 80155490 001523F0 90 81 00 24 */ stw r4, 0x24(r1) -/* 80155494 001523F4 90 61 00 24 */ stw r3, 0x24(r1) -/* 80155498 001523F8 90 1F 05 B4 */ stw r0, 0x5b4(r31) -/* 8015549C 001523FC 48 00 00 C0 */ b lbl_8015555C -lbl_801554A0: -/* 801554A0 00152400 80 DF 04 50 */ lwz r6, 0x450(r31) -/* 801554A4 00152404 80 06 02 B8 */ lwz r0, 0x2b8(r6) -/* 801554A8 00152408 2C 00 00 07 */ cmpwi r0, 7 -/* 801554AC 0015240C 41 82 00 B0 */ beq lbl_8015555C -/* 801554B0 00152410 3C 80 80 3E */ lis r4, lbl_803DAA68@ha -/* 801554B4 00152414 3C 60 80 5A */ lis r3, skZero3f@ha -/* 801554B8 00152418 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) -/* 801554BC 0015241C 38 A4 AA 68 */ addi r5, r4, lbl_803DAA68@l -/* 801554C0 00152420 3C 80 80 3E */ lis r4, lbl_803DA9D8@ha -/* 801554C4 00152424 90 A1 00 08 */ stw r5, 8(r1) -/* 801554C8 00152428 38 00 00 00 */ li r0, 0 -/* 801554CC 0015242C C0 23 00 04 */ lfs f1, 4(r3) -/* 801554D0 00152430 C0 03 00 08 */ lfs f0, 8(r3) -/* 801554D4 00152434 38 A4 A9 D8 */ addi r5, r4, lbl_803DA9D8@l -/* 801554D8 00152438 38 60 00 05 */ li r3, 5 -/* 801554DC 0015243C 3B C6 00 04 */ addi r30, r6, 4 -/* 801554E0 00152440 90 61 00 0C */ stw r3, 0xc(r1) -/* 801554E4 00152444 38 80 00 05 */ li r4, 5 -/* 801554E8 00152448 7F C3 F3 78 */ mr r3, r30 -/* 801554EC 0015244C 90 A1 00 08 */ stw r5, 8(r1) -/* 801554F0 00152450 90 01 00 10 */ stw r0, 0x10(r1) -/* 801554F4 00152454 D0 41 00 14 */ stfs f2, 0x14(r1) -/* 801554F8 00152458 D0 21 00 18 */ stfs f1, 0x18(r1) -/* 801554FC 0015245C D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 80155500 00152460 98 01 00 20 */ stb r0, 0x20(r1) -/* 80155504 00152464 4B FD BF 35 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80155508 00152468 80 01 00 0C */ lwz r0, 0xc(r1) -/* 8015550C 0015246C 3C 60 80 3E */ lis r3, lbl_803DA9D8@ha -/* 80155510 00152470 38 83 A9 D8 */ addi r4, r3, lbl_803DA9D8@l -/* 80155514 00152474 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80155518 00152478 90 1E 01 10 */ stw r0, 0x110(r30) -/* 8015551C 0015247C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 80155520 00152480 80 61 00 10 */ lwz r3, 0x10(r1) -/* 80155524 00152484 80 A1 00 14 */ lwz r5, 0x14(r1) -/* 80155528 00152488 90 7E 01 14 */ stw r3, 0x114(r30) -/* 8015552C 0015248C 80 61 00 18 */ lwz r3, 0x18(r1) -/* 80155530 00152490 90 BE 01 18 */ stw r5, 0x118(r30) -/* 80155534 00152494 80 A1 00 1C */ lwz r5, 0x1c(r1) -/* 80155538 00152498 90 7E 01 1C */ stw r3, 0x11c(r30) -/* 8015553C 0015249C 88 61 00 20 */ lbz r3, 0x20(r1) -/* 80155540 001524A0 90 BE 01 20 */ stw r5, 0x120(r30) -/* 80155544 001524A4 90 81 00 08 */ stw r4, 8(r1) -/* 80155548 001524A8 98 7E 01 24 */ stb r3, 0x124(r30) -/* 8015554C 001524AC 90 01 00 08 */ stw r0, 8(r1) -/* 80155550 001524B0 48 00 00 0C */ b lbl_8015555C -lbl_80155554: -/* 80155554 001524B4 38 00 00 03 */ li r0, 3 -/* 80155558 001524B8 90 1F 05 B8 */ stw r0, 0x5b8(r31) -lbl_8015555C: -/* 8015555C 001524BC 80 01 00 54 */ lwz r0, 0x54(r1) -/* 80155560 001524C0 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 80155564 001524C4 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 80155568 001524C8 7C 08 03 A6 */ mtlr r0 -/* 8015556C 001524CC 38 21 00 50 */ addi r1, r1, 0x50 -/* 80155570 001524D0 4E 80 00 20 */ blr - -.global TargetPatrol__10CSpankWeedFR13CStateManager9EStateMsgf -TargetPatrol__10CSpankWeedFR13CStateManager9EStateMsgf: -/* 80155574 001524D4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80155578 001524D8 7C 08 02 A6 */ mflr r0 -/* 8015557C 001524DC 2C 05 00 01 */ cmpwi r5, 1 -/* 80155580 001524E0 90 01 00 14 */ stw r0, 0x14(r1) -/* 80155584 001524E4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80155588 001524E8 7C 9F 23 78 */ mr r31, r4 -/* 8015558C 001524EC 93 C1 00 08 */ stw r30, 8(r1) -/* 80155590 001524F0 7C 7E 1B 78 */ mr r30, r3 -/* 80155594 001524F4 41 82 00 50 */ beq lbl_801555E4 -/* 80155598 001524F8 40 80 00 10 */ bge lbl_801555A8 -/* 8015559C 001524FC 2C 05 00 00 */ cmpwi r5, 0 -/* 801555A0 00152500 40 80 00 14 */ bge lbl_801555B4 -/* 801555A4 00152504 48 00 00 40 */ b lbl_801555E4 -lbl_801555A8: -/* 801555A8 00152508 2C 05 00 03 */ cmpwi r5, 3 -/* 801555AC 0015250C 40 80 00 38 */ bge lbl_801555E4 -/* 801555B0 00152510 48 00 00 2C */ b lbl_801555DC -lbl_801555B4: -/* 801555B4 00152514 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 801555B8 00152518 38 80 00 03 */ li r4, 3 -/* 801555BC 0015251C 4B FE 54 1D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -/* 801555C0 00152520 7F C3 F3 78 */ mr r3, r30 -/* 801555C4 00152524 7F E5 FB 78 */ mr r5, r31 -/* 801555C8 00152528 38 80 00 13 */ li r4, 0x13 -/* 801555CC 0015252C 4B EF E9 B5 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 801555D0 00152530 38 00 00 02 */ li r0, 2 -/* 801555D4 00152534 90 1E 05 B4 */ stw r0, 0x5b4(r30) -/* 801555D8 00152538 48 00 00 0C */ b lbl_801555E4 -lbl_801555DC: -/* 801555DC 0015253C 38 00 00 02 */ li r0, 2 -/* 801555E0 00152540 90 1E 05 B8 */ stw r0, 0x5b8(r30) -lbl_801555E4: -/* 801555E4 00152544 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801555E8 00152548 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 801555EC 0015254C 83 C1 00 08 */ lwz r30, 8(r1) -/* 801555F0 00152550 7C 08 03 A6 */ mtlr r0 -/* 801555F4 00152554 38 21 00 10 */ addi r1, r1, 0x10 -/* 801555F8 00152558 4E 80 00 20 */ blr - -.global Lurk__10CSpankWeedFR13CStateManager9EStateMsgf -Lurk__10CSpankWeedFR13CStateManager9EStateMsgf: -/* 801555FC 0015255C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80155600 00152560 7C 08 02 A6 */ mflr r0 -/* 80155604 00152564 2C 05 00 01 */ cmpwi r5, 1 -/* 80155608 00152568 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015560C 0015256C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80155610 00152570 7C 9F 23 78 */ mr r31, r4 -/* 80155614 00152574 93 C1 00 08 */ stw r30, 8(r1) -/* 80155618 00152578 7C 7E 1B 78 */ mr r30, r3 -/* 8015561C 0015257C 41 82 00 60 */ beq lbl_8015567C -/* 80155620 00152580 40 80 00 10 */ bge lbl_80155630 -/* 80155624 00152584 2C 05 00 00 */ cmpwi r5, 0 -/* 80155628 00152588 40 80 00 14 */ bge lbl_8015563C -/* 8015562C 0015258C 48 00 00 50 */ b lbl_8015567C -lbl_80155630: -/* 80155630 00152590 2C 05 00 03 */ cmpwi r5, 3 -/* 80155634 00152594 40 80 00 48 */ bge lbl_8015567C -/* 80155638 00152598 48 00 00 3C */ b lbl_80155674 -lbl_8015563C: -/* 8015563C 0015259C 88 1E 04 E1 */ lbz r0, 0x4e1(r30) -/* 80155640 001525A0 38 60 00 01 */ li r3, 1 -/* 80155644 001525A4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 80155648 001525A8 38 80 00 02 */ li r4, 2 -/* 8015564C 001525AC 98 1E 04 E1 */ stb r0, 0x4e1(r30) -/* 80155650 001525B0 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 80155654 001525B4 4B FE 53 85 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -/* 80155658 001525B8 7F C3 F3 78 */ mr r3, r30 -/* 8015565C 001525BC 7F E5 FB 78 */ mr r5, r31 -/* 80155660 001525C0 38 80 00 13 */ li r4, 0x13 -/* 80155664 001525C4 4B EF E9 1D */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 80155668 001525C8 38 00 00 01 */ li r0, 1 -/* 8015566C 001525CC 90 1E 05 B4 */ stw r0, 0x5b4(r30) -/* 80155670 001525D0 48 00 00 0C */ b lbl_8015567C -lbl_80155674: -/* 80155674 001525D4 38 00 00 01 */ li r0, 1 -/* 80155678 001525D8 90 1E 05 B8 */ stw r0, 0x5b8(r30) -lbl_8015567C: -/* 8015567C 001525DC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80155680 001525E0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80155684 001525E4 83 C1 00 08 */ lwz r30, 8(r1) -/* 80155688 001525E8 7C 08 03 A6 */ mtlr r0 -/* 8015568C 001525EC 38 21 00 10 */ addi r1, r1, 0x10 -/* 80155690 001525F0 4E 80 00 20 */ blr - -.global FadeOut__10CSpankWeedFR13CStateManager9EStateMsgf -FadeOut__10CSpankWeedFR13CStateManager9EStateMsgf: -/* 80155694 001525F4 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80155698 001525F8 7C 08 02 A6 */ mflr r0 -/* 8015569C 001525FC 2C 05 00 01 */ cmpwi r5, 1 -/* 801556A0 00152600 90 01 00 24 */ stw r0, 0x24(r1) -/* 801556A4 00152604 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 801556A8 00152608 41 82 00 38 */ beq lbl_801556E0 -/* 801556AC 0015260C 40 80 00 10 */ bge lbl_801556BC -/* 801556B0 00152610 2C 05 00 00 */ cmpwi r5, 0 -/* 801556B4 00152614 40 80 00 14 */ bge lbl_801556C8 -/* 801556B8 00152618 48 00 01 00 */ b lbl_801557B8 -lbl_801556BC: -/* 801556BC 0015261C 2C 05 00 03 */ cmpwi r5, 3 -/* 801556C0 00152620 40 80 00 F8 */ bge lbl_801557B8 -/* 801556C4 00152624 48 00 00 EC */ b lbl_801557B0 -lbl_801556C8: -/* 801556C8 00152628 38 80 00 00 */ li r4, 0 -/* 801556CC 0015262C 38 00 00 06 */ li r0, 6 -/* 801556D0 00152630 90 83 05 BC */ stw r4, 0x5bc(r3) -/* 801556D4 00152634 98 83 05 7C */ stb r4, 0x57c(r3) -/* 801556D8 00152638 90 03 05 B4 */ stw r0, 0x5b4(r3) -/* 801556DC 0015263C 48 00 00 DC */ b lbl_801557B8 -lbl_801556E0: -/* 801556E0 00152640 80 03 05 BC */ lwz r0, 0x5bc(r3) -/* 801556E4 00152644 2C 00 00 01 */ cmpwi r0, 1 -/* 801556E8 00152648 41 82 00 D0 */ beq lbl_801557B8 -/* 801556EC 0015264C 40 80 00 10 */ bge lbl_801556FC -/* 801556F0 00152650 2C 00 00 00 */ cmpwi r0, 0 -/* 801556F4 00152654 40 80 00 14 */ bge lbl_80155708 -/* 801556F8 00152658 48 00 00 C0 */ b lbl_801557B8 -lbl_801556FC: -/* 801556FC 0015265C 2C 00 00 03 */ cmpwi r0, 3 -/* 80155700 00152660 40 80 00 B8 */ bge lbl_801557B8 -/* 80155704 00152664 48 00 00 90 */ b lbl_80155794 -lbl_80155708: -/* 80155708 00152668 80 83 04 50 */ lwz r4, 0x450(r3) -/* 8015570C 0015266C 80 04 02 B8 */ lwz r0, 0x2b8(r4) -/* 80155710 00152670 2C 00 00 03 */ cmpwi r0, 3 -/* 80155714 00152674 40 82 00 10 */ bne lbl_80155724 -/* 80155718 00152678 38 00 00 02 */ li r0, 2 -/* 8015571C 0015267C 90 03 05 BC */ stw r0, 0x5bc(r3) -/* 80155720 00152680 48 00 00 98 */ b lbl_801557B8 -lbl_80155724: -/* 80155724 00152684 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80155728 00152688 38 C0 00 01 */ li r6, 1 -/* 8015572C 0015268C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 80155730 00152690 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha -/* 80155734 00152694 90 01 00 08 */ stw r0, 8(r1) -/* 80155738 00152698 38 A3 A9 E4 */ addi r5, r3, lbl_803DA9E4@l -/* 8015573C 0015269C 38 00 00 00 */ li r0, 0 -/* 80155740 001526A0 3B E4 00 04 */ addi r31, r4, 4 -/* 80155744 001526A4 90 C1 00 0C */ stw r6, 0xc(r1) -/* 80155748 001526A8 7F E3 FB 78 */ mr r3, r31 -/* 8015574C 001526AC 38 80 00 01 */ li r4, 1 -/* 80155750 001526B0 90 A1 00 08 */ stw r5, 8(r1) -/* 80155754 001526B4 90 C1 00 10 */ stw r6, 0x10(r1) -/* 80155758 001526B8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015575C 001526BC 4B FD BC DD */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80155760 001526C0 80 01 00 0C */ lwz r0, 0xc(r1) -/* 80155764 001526C4 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha -/* 80155768 001526C8 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l -/* 8015576C 001526CC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80155770 001526D0 90 1F 00 C8 */ stw r0, 0xc8(r31) -/* 80155774 001526D4 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 80155778 001526D8 80 A1 00 10 */ lwz r5, 0x10(r1) -/* 8015577C 001526DC 90 81 00 08 */ stw r4, 8(r1) -/* 80155780 001526E0 80 61 00 14 */ lwz r3, 0x14(r1) -/* 80155784 001526E4 90 BF 00 CC */ stw r5, 0xcc(r31) -/* 80155788 001526E8 90 7F 00 D0 */ stw r3, 0xd0(r31) -/* 8015578C 001526EC 90 01 00 08 */ stw r0, 8(r1) -/* 80155790 001526F0 48 00 00 28 */ b lbl_801557B8 -lbl_80155794: -/* 80155794 001526F4 80 83 04 50 */ lwz r4, 0x450(r3) -/* 80155798 001526F8 80 04 02 B8 */ lwz r0, 0x2b8(r4) -/* 8015579C 001526FC 2C 00 00 03 */ cmpwi r0, 3 -/* 801557A0 00152700 41 82 00 18 */ beq lbl_801557B8 -/* 801557A4 00152704 38 00 00 03 */ li r0, 3 -/* 801557A8 00152708 90 03 05 BC */ stw r0, 0x5bc(r3) -/* 801557AC 0015270C 48 00 00 0C */ b lbl_801557B8 -lbl_801557B0: -/* 801557B0 00152710 38 00 00 06 */ li r0, 6 -/* 801557B4 00152714 90 03 05 B8 */ stw r0, 0x5b8(r3) -lbl_801557B8: -/* 801557B8 00152718 80 01 00 24 */ lwz r0, 0x24(r1) -/* 801557BC 0015271C 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 801557C0 00152720 7C 08 03 A6 */ mtlr r0 -/* 801557C4 00152724 38 21 00 20 */ addi r1, r1, 0x20 -/* 801557C8 00152728 4E 80 00 20 */ blr - -.global FadeIn__10CSpankWeedFR13CStateManager9EStateMsgf -FadeIn__10CSpankWeedFR13CStateManager9EStateMsgf: -/* 801557CC 0015272C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 801557D0 00152730 7C 08 02 A6 */ mflr r0 -/* 801557D4 00152734 2C 05 00 01 */ cmpwi r5, 1 -/* 801557D8 00152738 90 01 00 24 */ stw r0, 0x24(r1) -/* 801557DC 0015273C 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 801557E0 00152740 7C 7F 1B 78 */ mr r31, r3 -/* 801557E4 00152744 93 C1 00 18 */ stw r30, 0x18(r1) -/* 801557E8 00152748 41 82 00 3C */ beq lbl_80155824 -/* 801557EC 0015274C 40 80 00 10 */ bge lbl_801557FC -/* 801557F0 00152750 2C 05 00 00 */ cmpwi r5, 0 -/* 801557F4 00152754 40 80 00 14 */ bge lbl_80155808 -/* 801557F8 00152758 48 00 01 04 */ b lbl_801558FC -lbl_801557FC: -/* 801557FC 0015275C 2C 05 00 03 */ cmpwi r5, 3 -/* 80155800 00152760 40 80 00 FC */ bge lbl_801558FC -/* 80155804 00152764 48 00 00 F0 */ b lbl_801558F4 -lbl_80155808: -/* 80155808 00152768 38 00 00 00 */ li r0, 0 -/* 8015580C 0015276C 38 60 00 01 */ li r3, 1 -/* 80155810 00152770 90 1F 05 BC */ stw r0, 0x5bc(r31) -/* 80155814 00152774 38 00 00 05 */ li r0, 5 -/* 80155818 00152778 98 7F 05 7C */ stb r3, 0x57c(r31) -/* 8015581C 0015277C 90 1F 05 B4 */ stw r0, 0x5b4(r31) -/* 80155820 00152780 48 00 00 DC */ b lbl_801558FC -lbl_80155824: -/* 80155824 00152784 80 1F 05 BC */ lwz r0, 0x5bc(r31) -/* 80155828 00152788 2C 00 00 01 */ cmpwi r0, 1 -/* 8015582C 0015278C 41 82 00 D0 */ beq lbl_801558FC -/* 80155830 00152790 40 80 00 10 */ bge lbl_80155840 -/* 80155834 00152794 2C 00 00 00 */ cmpwi r0, 0 -/* 80155838 00152798 40 80 00 14 */ bge lbl_8015584C -/* 8015583C 0015279C 48 00 00 C0 */ b lbl_801558FC -lbl_80155840: -/* 80155840 001527A0 2C 00 00 03 */ cmpwi r0, 3 -/* 80155844 001527A4 40 80 00 B8 */ bge lbl_801558FC -/* 80155848 001527A8 48 00 00 90 */ b lbl_801558D8 -lbl_8015584C: -/* 8015584C 001527AC 80 DF 04 50 */ lwz r6, 0x450(r31) -/* 80155850 001527B0 80 06 02 B8 */ lwz r0, 0x2b8(r6) -/* 80155854 001527B4 2C 00 00 03 */ cmpwi r0, 3 -/* 80155858 001527B8 40 82 00 10 */ bne lbl_80155868 -/* 8015585C 001527BC 38 00 00 02 */ li r0, 2 -/* 80155860 001527C0 90 1F 05 BC */ stw r0, 0x5bc(r31) -/* 80155864 001527C4 48 00 00 98 */ b lbl_801558FC -lbl_80155868: -/* 80155868 001527C8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 8015586C 001527CC 38 00 00 00 */ li r0, 0 -/* 80155870 001527D0 38 83 AA 68 */ addi r4, r3, lbl_803DAA68@l -/* 80155874 001527D4 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha -/* 80155878 001527D8 90 81 00 08 */ stw r4, 8(r1) -/* 8015587C 001527DC 38 A3 A9 E4 */ addi r5, r3, lbl_803DA9E4@l -/* 80155880 001527E0 38 60 00 01 */ li r3, 1 -/* 80155884 001527E4 3B C6 00 04 */ addi r30, r6, 4 -/* 80155888 001527E8 90 61 00 0C */ stw r3, 0xc(r1) -/* 8015588C 001527EC 7F C3 F3 78 */ mr r3, r30 -/* 80155890 001527F0 38 80 00 01 */ li r4, 1 -/* 80155894 001527F4 90 A1 00 08 */ stw r5, 8(r1) -/* 80155898 001527F8 90 01 00 10 */ stw r0, 0x10(r1) -/* 8015589C 001527FC 90 01 00 14 */ stw r0, 0x14(r1) -/* 801558A0 00152800 4B FD BB 99 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 801558A4 00152804 80 01 00 0C */ lwz r0, 0xc(r1) -/* 801558A8 00152808 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha -/* 801558AC 0015280C 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l -/* 801558B0 00152810 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 801558B4 00152814 90 1E 00 C8 */ stw r0, 0xc8(r30) -/* 801558B8 00152818 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 801558BC 0015281C 80 A1 00 10 */ lwz r5, 0x10(r1) -/* 801558C0 00152820 90 81 00 08 */ stw r4, 8(r1) -/* 801558C4 00152824 80 61 00 14 */ lwz r3, 0x14(r1) -/* 801558C8 00152828 90 BE 00 CC */ stw r5, 0xcc(r30) -/* 801558CC 0015282C 90 7E 00 D0 */ stw r3, 0xd0(r30) -/* 801558D0 00152830 90 01 00 08 */ stw r0, 8(r1) -/* 801558D4 00152834 48 00 00 28 */ b lbl_801558FC -lbl_801558D8: -/* 801558D8 00152838 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 801558DC 0015283C 80 03 02 B8 */ lwz r0, 0x2b8(r3) -/* 801558E0 00152840 2C 00 00 03 */ cmpwi r0, 3 -/* 801558E4 00152844 41 82 00 18 */ beq lbl_801558FC -/* 801558E8 00152848 38 00 00 03 */ li r0, 3 -/* 801558EC 0015284C 90 1F 05 BC */ stw r0, 0x5bc(r31) -/* 801558F0 00152850 48 00 00 0C */ b lbl_801558FC -lbl_801558F4: -/* 801558F4 00152854 38 00 00 05 */ li r0, 5 -/* 801558F8 00152858 90 1F 05 B8 */ stw r0, 0x5b8(r31) -lbl_801558FC: -/* 801558FC 0015285C 88 1F 00 E7 */ lbz r0, 0xe7(r31) -/* 80155900 00152860 38 60 00 01 */ li r3, 1 -/* 80155904 00152864 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 80155908 00152868 98 1F 00 E7 */ stb r0, 0xe7(r31) -/* 8015590C 0015286C 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80155910 00152870 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 80155914 00152874 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80155918 00152878 7C 08 03 A6 */ mtlr r0 -/* 8015591C 0015287C 38 21 00 20 */ addi r1, r1, 0x20 -/* 80155920 00152880 4E 80 00 20 */ blr - -.global Patrol__10CSpankWeedFR13CStateManager9EStateMsgf -Patrol__10CSpankWeedFR13CStateManager9EStateMsgf: -/* 80155924 00152884 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80155928 00152888 7C 08 02 A6 */ mflr r0 -/* 8015592C 0015288C 2C 05 00 01 */ cmpwi r5, 1 -/* 80155930 00152890 90 01 00 14 */ stw r0, 0x14(r1) -/* 80155934 00152894 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80155938 00152898 7C 9F 23 78 */ mr r31, r4 -/* 8015593C 0015289C 93 C1 00 08 */ stw r30, 8(r1) -/* 80155940 001528A0 7C 7E 1B 78 */ mr r30, r3 -/* 80155944 001528A4 41 82 00 D4 */ beq lbl_80155A18 -/* 80155948 001528A8 40 80 00 10 */ bge lbl_80155958 -/* 8015594C 001528AC 2C 05 00 00 */ cmpwi r5, 0 -/* 80155950 001528B0 40 80 00 14 */ bge lbl_80155964 -/* 80155954 001528B4 48 00 00 C4 */ b lbl_80155A18 -lbl_80155958: -/* 80155958 001528B8 2C 05 00 03 */ cmpwi r5, 3 -/* 8015595C 001528BC 40 80 00 BC */ bge lbl_80155A18 -/* 80155960 001528C0 48 00 00 6C */ b lbl_801559CC -lbl_80155964: -/* 80155964 001528C4 88 1E 04 E1 */ lbz r0, 0x4e1(r30) -/* 80155968 001528C8 38 60 00 00 */ li r3, 0 -/* 8015596C 001528CC 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 80155970 001528D0 38 80 00 01 */ li r4, 1 -/* 80155974 001528D4 98 1E 04 E1 */ stb r0, 0x4e1(r30) -/* 80155978 001528D8 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 8015597C 001528DC 4B FE 50 5D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -/* 80155980 001528E0 7F C3 F3 78 */ mr r3, r30 -/* 80155984 001528E4 7F E6 FB 78 */ mr r6, r31 -/* 80155988 001528E8 38 80 00 13 */ li r4, 0x13 -/* 8015598C 001528EC 38 A0 00 27 */ li r5, 0x27 -/* 80155990 001528F0 4B EF E5 45 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager -/* 80155994 001528F4 7F C3 F3 78 */ mr r3, r30 -/* 80155998 001528F8 7F E6 FB 78 */ mr r6, r31 -/* 8015599C 001528FC 38 80 00 29 */ li r4, 0x29 -/* 801559A0 00152900 38 A0 00 28 */ li r5, 0x28 -/* 801559A4 00152904 4B EF E5 31 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager -/* 801559A8 00152908 80 7E 05 94 */ lwz r3, 0x594(r30) -/* 801559AC 0015290C 7F E4 FB 78 */ mr r4, r31 -/* 801559B0 00152910 38 A0 00 00 */ li r5, 0 -/* 801559B4 00152914 48 05 19 45 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb -/* 801559B8 00152918 38 60 00 01 */ li r3, 1 -/* 801559BC 0015291C 38 00 00 00 */ li r0, 0 -/* 801559C0 00152920 98 7E 05 98 */ stb r3, 0x598(r30) -/* 801559C4 00152924 90 1E 05 B4 */ stw r0, 0x5b4(r30) -/* 801559C8 00152928 48 00 00 50 */ b lbl_80155A18 -lbl_801559CC: -/* 801559CC 0015292C 7F E7 FB 78 */ mr r7, r31 -/* 801559D0 00152930 38 80 00 29 */ li r4, 0x29 -/* 801559D4 00152934 38 A0 00 28 */ li r5, 0x28 -/* 801559D8 00152938 38 C0 00 27 */ li r6, 0x27 -/* 801559DC 0015293C 4B EF E8 09 */ bl AddMaterial__6CActorF14EMaterialTypes14EMaterialTypes14EMaterialTypesR13CStateManager -/* 801559E0 00152940 7F C3 F3 78 */ mr r3, r30 -/* 801559E4 00152944 38 9E 05 84 */ addi r4, r30, 0x584 -/* 801559E8 00152948 4B EF D4 A5 */ bl SetTranslation__6CActorFRC9CVector3f -/* 801559EC 0015294C 80 7E 05 94 */ lwz r3, 0x594(r30) -/* 801559F0 00152950 7F E4 FB 78 */ mr r4, r31 -/* 801559F4 00152954 38 A0 00 01 */ li r5, 1 -/* 801559F8 00152958 48 05 19 01 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb -/* 801559FC 0015295C 38 80 00 00 */ li r4, 0 -/* 80155A00 00152960 38 60 00 01 */ li r3, 1 -/* 80155A04 00152964 98 9E 05 98 */ stb r4, 0x598(r30) -/* 80155A08 00152968 88 1E 04 E1 */ lbz r0, 0x4e1(r30) -/* 80155A0C 0015296C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 80155A10 00152970 98 1E 04 E1 */ stb r0, 0x4e1(r30) -/* 80155A14 00152974 90 9E 05 B8 */ stw r4, 0x5b8(r30) -lbl_80155A18: -/* 80155A18 00152978 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80155A1C 0015297C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80155A20 00152980 83 C1 00 08 */ lwz r30, 8(r1) -/* 80155A24 00152984 7C 08 03 A6 */ mtlr r0 -/* 80155A28 00152988 38 21 00 10 */ addi r1, r1, 0x10 -/* 80155A2C 0015298C 4E 80 00 20 */ blr - -.global KnockBack__10CSpankWeedFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef -KnockBack__10CSpankWeedFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef: -/* 80155A30 00152990 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80155A34 00152994 7C 08 02 A6 */ mflr r0 -/* 80155A38 00152998 90 01 00 14 */ stw r0, 0x14(r1) -/* 80155A3C 0015299C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80155A40 001529A0 7C 7F 1B 78 */ mr r31, r3 -/* 80155A44 001529A4 88 03 05 7C */ lbz r0, 0x57c(r3) -/* 80155A48 001529A8 28 00 00 00 */ cmplwi r0, 0 -/* 80155A4C 001529AC 41 82 00 10 */ beq lbl_80155A5C -/* 80155A50 001529B0 4B F2 4D 2D */ bl KnockBack__10CPatternedFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef -/* 80155A54 001529B4 38 00 00 00 */ li r0, 0 -/* 80155A58 001529B8 98 1F 05 7C */ stb r0, 0x57c(r31) -lbl_80155A5C: -/* 80155A5C 001529BC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80155A60 001529C0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80155A64 001529C4 7C 08 03 A6 */ mtlr r0 -/* 80155A68 001529C8 38 21 00 10 */ addi r1, r1, 0x10 -/* 80155A6C 001529CC 4E 80 00 20 */ blr - -.global Think__10CSpankWeedFfR13CStateManager -Think__10CSpankWeedFfR13CStateManager: -/* 80155A70 001529D0 94 21 FF 20 */ stwu r1, -0xe0(r1) -/* 80155A74 001529D4 7C 08 02 A6 */ mflr r0 -/* 80155A78 001529D8 90 01 00 E4 */ stw r0, 0xe4(r1) -/* 80155A7C 001529DC DB E1 00 D0 */ stfd f31, 0xd0(r1) -/* 80155A80 001529E0 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 -/* 80155A84 001529E4 DB C1 00 C0 */ stfd f30, 0xc0(r1) -/* 80155A88 001529E8 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 -/* 80155A8C 001529EC DB A1 00 B0 */ stfd f29, 0xb0(r1) -/* 80155A90 001529F0 F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0 -/* 80155A94 001529F4 DB 81 00 A0 */ stfd f28, 0xa0(r1) -/* 80155A98 001529F8 F3 81 00 A8 */ psq_st f28, 168(r1), 0, qr0 -/* 80155A9C 001529FC DB 61 00 90 */ stfd f27, 0x90(r1) -/* 80155AA0 00152A00 F3 61 00 98 */ psq_st f27, 152(r1), 0, qr0 -/* 80155AA4 00152A04 DB 41 00 80 */ stfd f26, 0x80(r1) -/* 80155AA8 00152A08 F3 41 00 88 */ psq_st f26, 136(r1), 0, qr0 -/* 80155AAC 00152A0C DB 21 00 70 */ stfd f25, 0x70(r1) -/* 80155AB0 00152A10 F3 21 00 78 */ psq_st f25, 120(r1), 0, qr0 -/* 80155AB4 00152A14 93 E1 00 6C */ stw r31, 0x6c(r1) -/* 80155AB8 00152A18 93 C1 00 68 */ stw r30, 0x68(r1) -/* 80155ABC 00152A1C 88 03 00 30 */ lbz r0, 0x30(r3) -/* 80155AC0 00152A20 FF 20 08 90 */ fmr f25, f1 -/* 80155AC4 00152A24 7C 7E 1B 78 */ mr r30, r3 -/* 80155AC8 00152A28 7C 9F 23 78 */ mr r31, r4 -/* 80155ACC 00152A2C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80155AD0 00152A30 41 82 00 F0 */ beq lbl_80155BC0 -/* 80155AD4 00152A34 81 83 00 00 */ lwz r12, 0(r3) -/* 80155AD8 00152A38 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 80155ADC 00152A3C 7D 89 03 A6 */ mtctr r12 -/* 80155AE0 00152A40 4E 80 04 21 */ bctrl -/* 80155AE4 00152A44 C0 02 9E 34 */ lfs f0, lbl_805ABB54@sda21(r2) -/* 80155AE8 00152A48 D0 03 00 00 */ stfs f0, 0(r3) -/* 80155AEC 00152A4C 88 1E 05 98 */ lbz r0, 0x598(r30) -/* 80155AF0 00152A50 28 00 00 00 */ cmplwi r0, 0 -/* 80155AF4 00152A54 40 82 00 BC */ bne lbl_80155BB0 -/* 80155AF8 00152A58 80 BE 00 64 */ lwz r5, 0x64(r30) -/* 80155AFC 00152A5C 3C 60 80 3D */ lis r3, lbl_803D0230@ha -/* 80155B00 00152A60 38 83 02 30 */ addi r4, r3, lbl_803D0230@l -/* 80155B04 00152A64 38 61 00 14 */ addi r3, r1, 0x14 -/* 80155B08 00152A68 C3 85 00 00 */ lfs f28, 0(r5) -/* 80155B0C 00152A6C 38 84 00 6C */ addi r4, r4, 0x6c -/* 80155B10 00152A70 C3 65 00 04 */ lfs f27, 4(r5) -/* 80155B14 00152A74 C3 45 00 08 */ lfs f26, 8(r5) -/* 80155B18 00152A78 4B EA F1 A1 */ bl string_l__4rstlFPCc -/* 80155B1C 00152A7C 7F C4 F3 78 */ mr r4, r30 -/* 80155B20 00152A80 38 61 00 30 */ addi r3, r1, 0x30 -/* 80155B24 00152A84 38 A1 00 14 */ addi r5, r1, 0x14 -/* 80155B28 00152A88 4B EF D3 D9 */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80155B2C 00152A8C C3 A1 00 5C */ lfs f29, 0x5c(r1) -/* 80155B30 00152A90 38 61 00 14 */ addi r3, r1, 0x14 -/* 80155B34 00152A94 C3 C1 00 4C */ lfs f30, 0x4c(r1) -/* 80155B38 00152A98 C3 E1 00 3C */ lfs f31, 0x3c(r1) -/* 80155B3C 00152A9C 48 1E 7F A5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 80155B40 00152AA0 EC 5C 07 F2 */ fmuls f2, f28, f31 -/* 80155B44 00152AA4 38 61 00 08 */ addi r3, r1, 8 -/* 80155B48 00152AA8 EC 3B 07 B2 */ fmuls f1, f27, f30 -/* 80155B4C 00152AAC 38 9E 00 34 */ addi r4, r30, 0x34 -/* 80155B50 00152AB0 EC 1A 07 72 */ fmuls f0, f26, f29 -/* 80155B54 00152AB4 38 A1 00 24 */ addi r5, r1, 0x24 -/* 80155B58 00152AB8 D0 41 00 24 */ stfs f2, 0x24(r1) -/* 80155B5C 00152ABC D0 21 00 28 */ stfs f1, 0x28(r1) -/* 80155B60 00152AC0 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 80155B64 00152AC4 48 1B CF 1D */ bl Rotate__12CTransform4fCFRC9CVector3f -/* 80155B68 00152AC8 C0 41 00 08 */ lfs f2, 8(r1) -/* 80155B6C 00152ACC 7F C3 F3 78 */ mr r3, r30 -/* 80155B70 00152AD0 C0 21 00 0C */ lfs f1, 0xc(r1) -/* 80155B74 00152AD4 38 81 00 24 */ addi r4, r1, 0x24 -/* 80155B78 00152AD8 C0 01 00 10 */ lfs f0, 0x10(r1) -/* 80155B7C 00152ADC D0 41 00 24 */ stfs f2, 0x24(r1) -/* 80155B80 00152AE0 D0 21 00 28 */ stfs f1, 0x28(r1) -/* 80155B84 00152AE4 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 80155B88 00152AE8 4B FC 4E B1 */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f -/* 80155B8C 00152AEC FC 20 C8 90 */ fmr f1, f25 -/* 80155B90 00152AF0 80 7E 05 94 */ lwz r3, 0x594(r30) -/* 80155B94 00152AF4 7F E4 FB 78 */ mr r4, r31 -/* 80155B98 00152AF8 38 A0 00 00 */ li r5, 0 -/* 80155B9C 00152AFC 48 05 18 B5 */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions -/* 80155BA0 00152B00 88 1E 00 E4 */ lbz r0, 0xe4(r30) -/* 80155BA4 00152B04 38 60 00 01 */ li r3, 1 -/* 80155BA8 00152B08 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 80155BAC 00152B0C 98 1E 00 E4 */ stb r0, 0xe4(r30) -lbl_80155BB0: -/* 80155BB0 00152B10 FC 20 C8 90 */ fmr f1, f25 -/* 80155BB4 00152B14 7F C3 F3 78 */ mr r3, r30 -/* 80155BB8 00152B18 7F E4 FB 78 */ mr r4, r31 -/* 80155BBC 00152B1C 4B F2 3F 5D */ bl Think__10CPatternedFfR13CStateManager -lbl_80155BC0: -/* 80155BC0 00152B20 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 -/* 80155BC4 00152B24 CB E1 00 D0 */ lfd f31, 0xd0(r1) -/* 80155BC8 00152B28 E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 -/* 80155BCC 00152B2C CB C1 00 C0 */ lfd f30, 0xc0(r1) -/* 80155BD0 00152B30 E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0 -/* 80155BD4 00152B34 CB A1 00 B0 */ lfd f29, 0xb0(r1) -/* 80155BD8 00152B38 E3 81 00 A8 */ psq_l f28, 168(r1), 0, qr0 -/* 80155BDC 00152B3C CB 81 00 A0 */ lfd f28, 0xa0(r1) -/* 80155BE0 00152B40 E3 61 00 98 */ psq_l f27, 152(r1), 0, qr0 -/* 80155BE4 00152B44 CB 61 00 90 */ lfd f27, 0x90(r1) -/* 80155BE8 00152B48 E3 41 00 88 */ psq_l f26, 136(r1), 0, qr0 -/* 80155BEC 00152B4C CB 41 00 80 */ lfd f26, 0x80(r1) -/* 80155BF0 00152B50 E3 21 00 78 */ psq_l f25, 120(r1), 0, qr0 -/* 80155BF4 00152B54 CB 21 00 70 */ lfd f25, 0x70(r1) -/* 80155BF8 00152B58 83 E1 00 6C */ lwz r31, 0x6c(r1) -/* 80155BFC 00152B5C 80 01 00 E4 */ lwz r0, 0xe4(r1) -/* 80155C00 00152B60 83 C1 00 68 */ lwz r30, 0x68(r1) -/* 80155C04 00152B64 7C 08 03 A6 */ mtlr r0 -/* 80155C08 00152B68 38 21 00 E0 */ addi r1, r1, 0xe0 -/* 80155C0C 00152B6C 4E 80 00 20 */ blr - -.global AcceptScriptMsg__10CSpankWeedF20EScriptObjectMessage9TUniqueIdR13CStateManager -AcceptScriptMsg__10CSpankWeedF20EScriptObjectMessage9TUniqueIdR13CStateManager: -/* 80155C10 00152B70 94 21 FD A0 */ stwu r1, -0x260(r1) -/* 80155C14 00152B74 7C 08 02 A6 */ mflr r0 -/* 80155C18 00152B78 90 01 02 64 */ stw r0, 0x264(r1) -/* 80155C1C 00152B7C DB E1 02 50 */ stfd f31, 0x250(r1) -/* 80155C20 00152B80 F3 E1 02 58 */ psq_st f31, 600(r1), 0, qr0 -/* 80155C24 00152B84 DB C1 02 40 */ stfd f30, 0x240(r1) -/* 80155C28 00152B88 F3 C1 02 48 */ psq_st f30, 584(r1), 0, qr0 -/* 80155C2C 00152B8C DB A1 02 30 */ stfd f29, 0x230(r1) -/* 80155C30 00152B90 F3 A1 02 38 */ psq_st f29, 568(r1), 0, qr0 -/* 80155C34 00152B94 BE E1 02 0C */ stmw r23, 0x20c(r1) -/* 80155C38 00152B98 7C 7F 1B 78 */ mr r31, r3 -/* 80155C3C 00152B9C 7C 9C 23 78 */ mr r28, r4 -/* 80155C40 00152BA0 88 03 00 30 */ lbz r0, 0x30(r3) -/* 80155C44 00152BA4 2C 1C 00 1E */ cmpwi r28, 0x1e -/* 80155C48 00152BA8 7C BD 2B 78 */ mr r29, r5 -/* 80155C4C 00152BAC 7C DE 33 78 */ mr r30, r6 -/* 80155C50 00152BB0 54 1B CF FE */ rlwinm r27, r0, 0x19, 0x1f, 0x1f -/* 80155C54 00152BB4 41 82 03 A8 */ beq lbl_80155FFC -/* 80155C58 00152BB8 40 80 00 1C */ bge lbl_80155C74 -/* 80155C5C 00152BBC 2C 1C 00 05 */ cmpwi r28, 5 -/* 80155C60 00152BC0 41 82 05 0C */ beq lbl_8015616C -/* 80155C64 00152BC4 40 80 05 60 */ bge lbl_801561C4 -/* 80155C68 00152BC8 2C 1C 00 01 */ cmpwi r28, 1 -/* 80155C6C 00152BCC 41 82 04 E0 */ beq lbl_8015614C -/* 80155C70 00152BD0 48 00 05 54 */ b lbl_801561C4 -lbl_80155C74: -/* 80155C74 00152BD4 2C 1C 00 22 */ cmpwi r28, 0x22 -/* 80155C78 00152BD8 41 82 04 B0 */ beq lbl_80156128 -/* 80155C7C 00152BDC 40 80 00 10 */ bge lbl_80155C8C -/* 80155C80 00152BE0 2C 1C 00 21 */ cmpwi r28, 0x21 -/* 80155C84 00152BE4 40 80 00 14 */ bge lbl_80155C98 -/* 80155C88 00152BE8 48 00 05 3C */ b lbl_801561C4 -lbl_80155C8C: -/* 80155C8C 00152BEC 2C 1C 00 30 */ cmpwi r28, 0x30 -/* 80155C90 00152BF0 41 82 05 1C */ beq lbl_801561AC -/* 80155C94 00152BF4 48 00 05 30 */ b lbl_801561C4 -lbl_80155C98: -/* 80155C98 00152BF8 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 80155C9C 00152BFC 88 03 03 00 */ lbz r0, 0x300(r3) -/* 80155CA0 00152C00 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 80155CA4 00152C04 40 82 00 7C */ bne lbl_80155D20 -/* 80155CA8 00152C08 7F C4 F3 78 */ mr r4, r30 -/* 80155CAC 00152C0C 4B FE 50 45 */ bl Activate__15CBodyControllerFR13CStateManager -/* 80155CB0 00152C10 7F E4 FB 78 */ mr r4, r31 -/* 80155CB4 00152C14 38 61 01 14 */ addi r3, r1, 0x114 -/* 80155CB8 00152C18 4B FC 4C 75 */ bl GetBoundingBox__13CPhysicsActorCFv -/* 80155CBC 00152C1C C0 61 01 20 */ lfs f3, 0x120(r1) -/* 80155CC0 00152C20 7F E3 FB 78 */ mr r3, r31 -/* 80155CC4 00152C24 C0 41 01 14 */ lfs f2, 0x114(r1) -/* 80155CC8 00152C28 38 81 00 FC */ addi r4, r1, 0xfc -/* 80155CCC 00152C2C C0 21 01 28 */ lfs f1, 0x128(r1) -/* 80155CD0 00152C30 C0 01 01 1C */ lfs f0, 0x11c(r1) -/* 80155CD4 00152C34 EC 63 10 28 */ fsubs f3, f3, f2 -/* 80155CD8 00152C38 C0 82 9E 38 */ lfs f4, lbl_805ABB58@sda21(r2) -/* 80155CDC 00152C3C EC 41 00 28 */ fsubs f2, f1, f0 -/* 80155CE0 00152C40 C0 21 01 24 */ lfs f1, 0x124(r1) -/* 80155CE4 00152C44 EC 64 00 F2 */ fmuls f3, f4, f3 -/* 80155CE8 00152C48 C0 01 01 18 */ lfs f0, 0x118(r1) -/* 80155CEC 00152C4C EC A4 00 B2 */ fmuls f5, f4, f2 -/* 80155CF0 00152C50 EC 41 00 28 */ fsubs f2, f1, f0 -/* 80155CF4 00152C54 D0 61 01 08 */ stfs f3, 0x108(r1) -/* 80155CF8 00152C58 FC 20 18 50 */ fneg f1, f3 -/* 80155CFC 00152C5C FC 00 28 50 */ fneg f0, f5 -/* 80155D00 00152C60 D0 A1 01 10 */ stfs f5, 0x110(r1) -/* 80155D04 00152C64 EC 44 00 B2 */ fmuls f2, f4, f2 -/* 80155D08 00152C68 D0 21 00 FC */ stfs f1, 0xfc(r1) -/* 80155D0C 00152C6C FC 20 10 50 */ fneg f1, f2 -/* 80155D10 00152C70 D0 01 01 04 */ stfs f0, 0x104(r1) -/* 80155D14 00152C74 D0 41 01 0C */ stfs f2, 0x10c(r1) -/* 80155D18 00152C78 D0 21 01 00 */ stfs f1, 0x100(r1) -/* 80155D1C 00152C7C 4B FC 49 3D */ bl SetBoundingBox__13CPhysicsActorFRC6CAABox -lbl_80155D20: -/* 80155D20 00152C80 38 00 00 00 */ li r0, 0 -/* 80155D24 00152C84 38 61 00 B8 */ addi r3, r1, 0xb8 -/* 80155D28 00152C88 90 01 00 BC */ stw r0, 0xbc(r1) -/* 80155D2C 00152C8C 38 80 00 0C */ li r4, 0xc -/* 80155D30 00152C90 90 01 00 C0 */ stw r0, 0xc0(r1) -/* 80155D34 00152C94 90 01 00 C4 */ stw r0, 0xc4(r1) -/* 80155D38 00152C98 48 00 0A 81 */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" -/* 80155D3C 00152C9C 3C 60 80 3D */ lis r3, lbl_803D01F8@ha -/* 80155D40 00152CA0 3B 21 01 AC */ addi r25, r1, 0x1ac -/* 80155D44 00152CA4 3B 43 01 F8 */ addi r26, r3, lbl_803D01F8@l -/* 80155D48 00152CA8 3B 01 01 F0 */ addi r24, r1, 0x1f0 -/* 80155D4C 00152CAC 3A E0 00 00 */ li r23, 0 -lbl_80155D50: -/* 80155D50 00152CB0 80 9A 00 00 */ lwz r4, 0(r26) -/* 80155D54 00152CB4 38 61 00 A8 */ addi r3, r1, 0xa8 -/* 80155D58 00152CB8 4B EA EF 61 */ bl string_l__4rstlFPCc -/* 80155D5C 00152CBC 80 9F 00 64 */ lwz r4, 0x64(r31) -/* 80155D60 00152CC0 38 61 00 10 */ addi r3, r1, 0x10 -/* 80155D64 00152CC4 38 A1 00 A8 */ addi r5, r1, 0xa8 -/* 80155D68 00152CC8 80 84 00 10 */ lwz r4, 0x10(r4) -/* 80155D6C 00152CCC 4B ED 8A CD */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80155D70 00152CD0 88 01 00 10 */ lbz r0, 0x10(r1) -/* 80155D74 00152CD4 38 61 00 A8 */ addi r3, r1, 0xa8 -/* 80155D78 00152CD8 98 01 00 14 */ stb r0, 0x14(r1) -/* 80155D7C 00152CDC 48 1E 7D 65 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 80155D80 00152CE0 88 01 00 14 */ lbz r0, 0x14(r1) -/* 80155D84 00152CE4 28 00 00 FF */ cmplwi r0, 0xff -/* 80155D88 00152CE8 41 82 00 E0 */ beq lbl_80155E68 -/* 80155D8C 00152CEC 80 9A 00 00 */ lwz r4, 0(r26) -/* 80155D90 00152CF0 38 61 00 98 */ addi r3, r1, 0x98 -/* 80155D94 00152CF4 4B EA EF 25 */ bl string_l__4rstlFPCc -/* 80155D98 00152CF8 88 01 00 14 */ lbz r0, 0x14(r1) -/* 80155D9C 00152CFC 38 61 01 80 */ addi r3, r1, 0x180 -/* 80155DA0 00152D00 C0 3A 00 04 */ lfs f1, 4(r26) -/* 80155DA4 00152D04 38 81 00 0C */ addi r4, r1, 0xc -/* 80155DA8 00152D08 98 01 00 0C */ stb r0, 0xc(r1) -/* 80155DAC 00152D0C 38 A1 00 98 */ addi r5, r1, 0x98 -/* 80155DB0 00152D10 C0 42 9E 3C */ lfs f2, lbl_805ABB5C@sda21(r2) -/* 80155DB4 00152D14 48 05 2A 59 */ bl "SphereCollision__26CJointCollisionDescriptionF6CSegIdfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" -/* 80155DB8 00152D18 80 E1 01 80 */ lwz r7, 0x180(r1) -/* 80155DBC 00152D1C 7F 03 C3 78 */ mr r3, r24 -/* 80155DC0 00152D20 80 C1 01 84 */ lwz r6, 0x184(r1) -/* 80155DC4 00152D24 7F 24 CB 78 */ mr r4, r25 -/* 80155DC8 00152D28 88 A1 01 88 */ lbz r5, 0x188(r1) -/* 80155DCC 00152D2C 88 01 01 89 */ lbz r0, 0x189(r1) -/* 80155DD0 00152D30 C0 E1 01 8C */ lfs f7, 0x18c(r1) -/* 80155DD4 00152D34 C0 C1 01 90 */ lfs f6, 0x190(r1) -/* 80155DD8 00152D38 C0 A1 01 94 */ lfs f5, 0x194(r1) -/* 80155DDC 00152D3C C0 81 01 98 */ lfs f4, 0x198(r1) -/* 80155DE0 00152D40 C0 61 01 9C */ lfs f3, 0x19c(r1) -/* 80155DE4 00152D44 C0 41 01 A0 */ lfs f2, 0x1a0(r1) -/* 80155DE8 00152D48 C0 21 01 A4 */ lfs f1, 0x1a4(r1) -/* 80155DEC 00152D4C C0 01 01 A8 */ lfs f0, 0x1a8(r1) -/* 80155DF0 00152D50 90 E1 01 C4 */ stw r7, 0x1c4(r1) -/* 80155DF4 00152D54 90 C1 01 C8 */ stw r6, 0x1c8(r1) -/* 80155DF8 00152D58 98 A1 01 CC */ stb r5, 0x1cc(r1) -/* 80155DFC 00152D5C 98 01 01 CD */ stb r0, 0x1cd(r1) -/* 80155E00 00152D60 D0 E1 01 D0 */ stfs f7, 0x1d0(r1) -/* 80155E04 00152D64 D0 C1 01 D4 */ stfs f6, 0x1d4(r1) -/* 80155E08 00152D68 D0 A1 01 D8 */ stfs f5, 0x1d8(r1) -/* 80155E0C 00152D6C D0 81 01 DC */ stfs f4, 0x1dc(r1) -/* 80155E10 00152D70 D0 61 01 E0 */ stfs f3, 0x1e0(r1) -/* 80155E14 00152D74 D0 41 01 E4 */ stfs f2, 0x1e4(r1) -/* 80155E18 00152D78 D0 21 01 E8 */ stfs f1, 0x1e8(r1) -/* 80155E1C 00152D7C D0 01 01 EC */ stfs f0, 0x1ec(r1) -/* 80155E20 00152D80 48 1E 83 41 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80155E24 00152D84 A0 01 01 BC */ lhz r0, 0x1bc(r1) -/* 80155E28 00152D88 28 19 00 00 */ cmplwi r25, 0 -/* 80155E2C 00152D8C C0 01 01 C0 */ lfs f0, 0x1c0(r1) -/* 80155E30 00152D90 B0 01 02 00 */ sth r0, 0x200(r1) -/* 80155E34 00152D94 D0 01 02 04 */ stfs f0, 0x204(r1) -/* 80155E38 00152D98 41 82 00 0C */ beq lbl_80155E44 -/* 80155E3C 00152D9C 7F 23 CB 78 */ mr r3, r25 -/* 80155E40 00152DA0 48 1E 7C A1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -lbl_80155E44: -/* 80155E44 00152DA4 38 61 00 98 */ addi r3, r1, 0x98 -/* 80155E48 00152DA8 48 1E 7C 99 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 80155E4C 00152DAC 38 61 00 B8 */ addi r3, r1, 0xb8 -/* 80155E50 00152DB0 38 81 01 C4 */ addi r4, r1, 0x1c4 -/* 80155E54 00152DB4 48 00 03 DD */ bl sub_80156230 -/* 80155E58 00152DB8 28 18 00 00 */ cmplwi r24, 0 -/* 80155E5C 00152DBC 41 82 00 0C */ beq lbl_80155E68 -/* 80155E60 00152DC0 7F 03 C3 78 */ mr r3, r24 -/* 80155E64 00152DC4 48 1E 7C 7D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -lbl_80155E68: -/* 80155E68 00152DC8 3A F7 00 01 */ addi r23, r23, 1 -/* 80155E6C 00152DCC 3B 5A 00 08 */ addi r26, r26, 8 -/* 80155E70 00152DD0 28 17 00 07 */ cmplwi r23, 7 -/* 80155E74 00152DD4 41 80 FE DC */ blt lbl_80155D50 -/* 80155E78 00152DD8 3C 80 80 3D */ lis r4, lbl_803D0230@ha -/* 80155E7C 00152DDC 38 60 00 18 */ li r3, 0x18 -/* 80155E80 00152DE0 38 84 02 30 */ addi r4, r4, lbl_803D0230@l -/* 80155E84 00152DE4 38 A0 00 00 */ li r5, 0 -/* 80155E88 00152DE8 38 84 00 70 */ addi r4, r4, 0x70 -/* 80155E8C 00152DEC 48 1B F9 E1 */ bl __nw__FUlPCcPCc -/* 80155E90 00152DF0 7C 77 1B 79 */ or. r23, r3, r3 -/* 80155E94 00152DF4 41 82 00 3C */ beq lbl_80155ED0 -/* 80155E98 00152DF8 88 1F 00 30 */ lbz r0, 0x30(r31) -/* 80155E9C 00152DFC 7F C4 F3 78 */ mr r4, r30 -/* 80155EA0 00152E00 81 3F 00 04 */ lwz r9, 4(r31) -/* 80155EA4 00152E04 38 A1 00 48 */ addi r5, r1, 0x48 -/* 80155EA8 00152E08 54 08 CF FE */ rlwinm r8, r0, 0x19, 0x1f, 0x1f -/* 80155EAC 00152E0C 38 C1 00 54 */ addi r6, r1, 0x54 -/* 80155EB0 00152E10 91 21 00 54 */ stw r9, 0x54(r1) -/* 80155EB4 00152E14 38 E1 00 B8 */ addi r7, r1, 0xb8 -/* 80155EB8 00152E18 A0 1F 00 08 */ lhz r0, 8(r31) -/* 80155EBC 00152E1C 91 21 00 50 */ stw r9, 0x50(r1) -/* 80155EC0 00152E20 B0 01 00 44 */ sth r0, 0x44(r1) -/* 80155EC4 00152E24 B0 01 00 48 */ sth r0, 0x48(r1) -/* 80155EC8 00152E28 48 05 1A 69 */ bl "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b" -/* 80155ECC 00152E2C 7C 77 1B 78 */ mr r23, r3 -lbl_80155ED0: -/* 80155ED0 00152E30 80 7F 05 94 */ lwz r3, 0x594(r31) -/* 80155ED4 00152E34 38 80 00 01 */ li r4, 1 -/* 80155ED8 00152E38 48 05 1A 05 */ bl sub_801a78dc -/* 80155EDC 00152E3C 92 FF 05 94 */ stw r23, 0x594(r31) -/* 80155EE0 00152E40 38 00 00 00 */ li r0, 0 -/* 80155EE4 00152E44 38 60 00 00 */ li r3, 0 -/* 80155EE8 00152E48 38 80 00 01 */ li r4, 1 -/* 80155EEC 00152E4C 80 AD 8C 84 */ lwz r5, lbl_805A7844@sda21(r13) -/* 80155EF0 00152E50 90 01 00 6C */ stw r0, 0x6c(r1) -/* 80155EF4 00152E54 90 01 00 68 */ stw r0, 0x68(r1) -/* 80155EF8 00152E58 48 23 3F FD */ bl __shl2i -/* 80155EFC 00152E5C 80 01 00 68 */ lwz r0, 0x68(r1) -/* 80155F00 00152E60 80 C1 00 6C */ lwz r6, 0x6c(r1) -/* 80155F04 00152E64 7C 00 1B 78 */ or r0, r0, r3 -/* 80155F08 00152E68 80 AD 8C 88 */ lwz r5, lbl_805A7848@sda21(r13) -/* 80155F0C 00152E6C 7C C4 23 78 */ or r4, r6, r4 -/* 80155F10 00152E70 90 01 00 68 */ stw r0, 0x68(r1) -/* 80155F14 00152E74 38 60 00 00 */ li r3, 0 -/* 80155F18 00152E78 90 81 00 6C */ stw r4, 0x6c(r1) -/* 80155F1C 00152E7C 38 80 00 01 */ li r4, 1 -/* 80155F20 00152E80 48 23 3F D5 */ bl __shl2i -/* 80155F24 00152E84 80 01 00 68 */ lwz r0, 0x68(r1) -/* 80155F28 00152E88 38 A1 00 68 */ addi r5, r1, 0x68 -/* 80155F2C 00152E8C 80 C1 00 6C */ lwz r6, 0x6c(r1) -/* 80155F30 00152E90 7C 00 1B 78 */ or r0, r0, r3 -/* 80155F34 00152E94 7C C3 23 78 */ or r3, r6, r4 -/* 80155F38 00152E98 90 01 00 68 */ stw r0, 0x68(r1) -/* 80155F3C 00152E9C 7F C4 F3 78 */ mr r4, r30 -/* 80155F40 00152EA0 90 61 00 6C */ stw r3, 0x6c(r1) -/* 80155F44 00152EA4 80 7F 05 94 */ lwz r3, 0x594(r31) -/* 80155F48 00152EA8 48 05 13 09 */ bl AddMaterial__22CCollisionActorManagerFR13CStateManagerRC13CMaterialList -/* 80155F4C 00152EAC 38 61 00 B8 */ addi r3, r1, 0xb8 -/* 80155F50 00152EB0 38 80 FF FF */ li r4, -1 -/* 80155F54 00152EB4 48 00 03 D9 */ bl sub_8015632c -/* 80155F58 00152EB8 80 9F 00 90 */ lwz r4, 0x90(r31) -/* 80155F5C 00152EBC 28 04 00 00 */ cmplwi r4, 0 -/* 80155F60 00152EC0 41 82 00 14 */ beq lbl_80155F74 -/* 80155F64 00152EC4 88 04 02 98 */ lbz r0, 0x298(r4) -/* 80155F68 00152EC8 38 60 00 01 */ li r3, 1 -/* 80155F6C 00152ECC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80155F70 00152ED0 98 04 02 98 */ stb r0, 0x298(r4) -lbl_80155F74: -/* 80155F74 00152ED4 3C 80 80 3D */ lis r4, lbl_803D0230@ha -/* 80155F78 00152ED8 38 61 00 70 */ addi r3, r1, 0x70 -/* 80155F7C 00152EDC 38 84 02 30 */ addi r4, r4, lbl_803D0230@l -/* 80155F80 00152EE0 38 C1 00 08 */ addi r6, r1, 8 -/* 80155F84 00152EE4 38 84 00 4D */ addi r4, r4, 0x4d -/* 80155F88 00152EE8 38 A0 FF FF */ li r5, -1 -/* 80155F8C 00152EEC 48 1E 82 09 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" -/* 80155F90 00152EF0 7F E4 FB 78 */ mr r4, r31 -/* 80155F94 00152EF4 38 61 01 2C */ addi r3, r1, 0x12c -/* 80155F98 00152EF8 38 A1 00 70 */ addi r5, r1, 0x70 -/* 80155F9C 00152EFC 4B EF CF 35 */ bl "GetScaledLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80155FA0 00152F00 C0 41 01 58 */ lfs f2, 0x158(r1) -/* 80155FA4 00152F04 38 61 01 5C */ addi r3, r1, 0x15c -/* 80155FA8 00152F08 C0 21 01 48 */ lfs f1, 0x148(r1) -/* 80155FAC 00152F0C 38 9F 00 34 */ addi r4, r31, 0x34 -/* 80155FB0 00152F10 C0 01 01 38 */ lfs f0, 0x138(r1) -/* 80155FB4 00152F14 D0 21 00 84 */ stfs f1, 0x84(r1) -/* 80155FB8 00152F18 D0 01 00 80 */ stfs f0, 0x80(r1) -/* 80155FBC 00152F1C D0 41 00 88 */ stfs f2, 0x88(r1) -/* 80155FC0 00152F20 48 1B D1 35 */ bl BuildMatrix3f__12CTransform4fCFv -/* 80155FC4 00152F24 38 61 00 8C */ addi r3, r1, 0x8c -/* 80155FC8 00152F28 38 81 01 5C */ addi r4, r1, 0x15c -/* 80155FCC 00152F2C 38 A1 00 80 */ addi r5, r1, 0x80 -/* 80155FD0 00152F30 48 1B A2 C5 */ bl __ml__9CMatrix3fCFRC9CVector3f -/* 80155FD4 00152F34 C3 E1 00 8C */ lfs f31, 0x8c(r1) -/* 80155FD8 00152F38 38 61 00 70 */ addi r3, r1, 0x70 -/* 80155FDC 00152F3C C3 C1 00 90 */ lfs f30, 0x90(r1) -/* 80155FE0 00152F40 C3 A1 00 94 */ lfs f29, 0x94(r1) -/* 80155FE4 00152F44 48 1E 7A FD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 80155FE8 00152F48 80 7F 00 90 */ lwz r3, 0x90(r31) -/* 80155FEC 00152F4C D3 E3 02 AC */ stfs f31, 0x2ac(r3) -/* 80155FF0 00152F50 D3 C3 02 B0 */ stfs f30, 0x2b0(r3) -/* 80155FF4 00152F54 D3 A3 02 B4 */ stfs f29, 0x2b4(r3) -/* 80155FF8 00152F58 48 00 01 CC */ b lbl_801561C4 -lbl_80155FFC: -/* 80155FFC 00152F5C A0 1D 00 00 */ lhz r0, 0(r29) -/* 80156000 00152F60 7F C3 F3 78 */ mr r3, r30 -/* 80156004 00152F64 38 81 00 40 */ addi r4, r1, 0x40 -/* 80156008 00152F68 B0 01 00 40 */ sth r0, 0x40(r1) -/* 8015600C 00152F6C 4B EF 65 69 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80156010 00152F70 7C 60 1B 78 */ mr r0, r3 -/* 80156014 00152F74 38 61 00 60 */ addi r3, r1, 0x60 -/* 80156018 00152F78 7C 04 03 78 */ mr r4, r0 -/* 8015601C 00152F7C 4B F5 93 31 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" -/* 80156020 00152F80 80 83 00 04 */ lwz r4, 4(r3) -/* 80156024 00152F84 28 04 00 00 */ cmplwi r4, 0 -/* 80156028 00152F88 41 82 01 9C */ beq lbl_801561C4 -/* 8015602C 00152F8C 38 61 00 3C */ addi r3, r1, 0x3c -/* 80156030 00152F90 48 05 2B 5D */ bl GetLastTouchedObject__15CCollisionActorCFv -/* 80156034 00152F94 A0 01 00 3C */ lhz r0, 0x3c(r1) -/* 80156038 00152F98 7F C3 F3 78 */ mr r3, r30 -/* 8015603C 00152F9C 38 81 00 38 */ addi r4, r1, 0x38 -/* 80156040 00152FA0 B0 01 00 4C */ sth r0, 0x4c(r1) -/* 80156044 00152FA4 B0 01 00 38 */ sth r0, 0x38(r1) -/* 80156048 00152FA8 4B EF 65 2D */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8015604C 00152FAC 7C 60 1B 78 */ mr r0, r3 -/* 80156050 00152FB0 38 61 00 58 */ addi r3, r1, 0x58 -/* 80156054 00152FB4 7C 04 03 78 */ mr r4, r0 -/* 80156058 00152FB8 4B F5 63 3D */ bl "__ct__20TCastToPtr<7CPlayer>FP7CEntity" -/* 8015605C 00152FBC 82 E3 00 04 */ lwz r23, 4(r3) -/* 80156060 00152FC0 28 17 00 00 */ cmplwi r23, 0 -/* 80156064 00152FC4 41 82 01 60 */ beq lbl_801561C4 -/* 80156068 00152FC8 C0 3F 04 20 */ lfs f1, 0x420(r31) -/* 8015606C 00152FCC C0 02 9E 30 */ lfs f0, lbl_805ABB50@sda21(r2) -/* 80156070 00152FD0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80156074 00152FD4 4C 40 13 82 */ cror 2, 0, 2 -/* 80156078 00152FD8 40 82 01 4C */ bne lbl_801561C4 -/* 8015607C 00152FDC 80 1F 05 B4 */ lwz r0, 0x5b4(r31) -/* 80156080 00152FE0 2C 00 00 04 */ cmpwi r0, 4 -/* 80156084 00152FE4 41 82 01 40 */ beq lbl_801561C4 -/* 80156088 00152FE8 2C 00 00 06 */ cmpwi r0, 6 -/* 8015608C 00152FEC 41 82 01 38 */ beq lbl_801561C4 -/* 80156090 00152FF0 80 AD 8C 78 */ lwz r5, lbl_805A7838@sda21(r13) -/* 80156094 00152FF4 38 60 00 00 */ li r3, 0 -/* 80156098 00152FF8 38 80 00 01 */ li r4, 1 -/* 8015609C 00152FFC 48 23 3E 59 */ bl __shl2i -/* 801560A0 00153000 38 A0 00 00 */ li r5, 0 -/* 801560A4 00153004 38 00 00 03 */ li r0, 3 -/* 801560A8 00153008 90 81 00 CC */ stw r4, 0xcc(r1) -/* 801560AC 0015300C 7F E4 FB 78 */ mr r4, r31 -/* 801560B0 00153010 90 61 00 C8 */ stw r3, 0xc8(r1) -/* 801560B4 00153014 38 61 00 E0 */ addi r3, r1, 0xe0 -/* 801560B8 00153018 90 A1 00 D4 */ stw r5, 0xd4(r1) -/* 801560BC 0015301C 90 A1 00 D0 */ stw r5, 0xd0(r1) -/* 801560C0 00153020 90 01 00 D8 */ stw r0, 0xd8(r1) -/* 801560C4 00153024 A0 1F 00 08 */ lhz r0, 8(r31) -/* 801560C8 00153028 B0 01 00 24 */ sth r0, 0x24(r1) -/* 801560CC 0015302C A0 B7 00 08 */ lhz r5, 8(r23) -/* 801560D0 00153030 B0 01 00 20 */ sth r0, 0x20(r1) -/* 801560D4 00153034 B0 A1 00 2C */ sth r5, 0x2c(r1) -/* 801560D8 00153038 A0 1F 00 08 */ lhz r0, 8(r31) -/* 801560DC 0015303C B0 A1 00 28 */ sth r5, 0x28(r1) -/* 801560E0 00153040 B0 01 00 34 */ sth r0, 0x34(r1) -/* 801560E4 00153044 81 9F 00 00 */ lwz r12, 0(r31) -/* 801560E8 00153048 B0 01 00 30 */ sth r0, 0x30(r1) -/* 801560EC 0015304C 81 8C 02 B0 */ lwz r12, 0x2b0(r12) -/* 801560F0 00153050 7D 89 03 A6 */ mtctr r12 -/* 801560F4 00153054 4E 80 04 21 */ bctrl -/* 801560F8 00153058 3C 80 80 5A */ lis r4, skZero3f@ha -/* 801560FC 0015305C 7F C3 F3 78 */ mr r3, r30 -/* 80156100 00153060 39 24 66 A0 */ addi r9, r4, skZero3f@l -/* 80156104 00153064 38 A1 00 2C */ addi r5, r1, 0x2c -/* 80156108 00153068 38 81 00 34 */ addi r4, r1, 0x34 -/* 8015610C 0015306C 38 C1 00 24 */ addi r6, r1, 0x24 -/* 80156110 00153070 38 E1 00 E0 */ addi r7, r1, 0xe0 -/* 80156114 00153074 39 01 00 C8 */ addi r8, r1, 0xc8 -/* 80156118 00153078 4B EF 3F 89 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f -/* 8015611C 0015307C C0 1F 04 24 */ lfs f0, 0x424(r31) -/* 80156120 00153080 D0 1F 04 20 */ stfs f0, 0x420(r31) -/* 80156124 00153084 48 00 00 A0 */ b lbl_801561C4 -lbl_80156128: -/* 80156128 00153088 A0 1F 05 90 */ lhz r0, 0x590(r31) -/* 8015612C 0015308C 7F C3 F3 78 */ mr r3, r30 -/* 80156130 00153090 38 81 00 1C */ addi r4, r1, 0x1c -/* 80156134 00153094 B0 01 00 1C */ sth r0, 0x1c(r1) -/* 80156138 00153098 4B EF 61 35 */ bl FreeScriptObject__13CStateManagerF9TUniqueId -/* 8015613C 0015309C 80 7F 05 94 */ lwz r3, 0x594(r31) -/* 80156140 001530A0 7F C4 F3 78 */ mr r4, r30 -/* 80156144 001530A4 48 05 12 81 */ bl Destroy__22CCollisionActorManagerCFR13CStateManager -/* 80156148 001530A8 48 00 00 7C */ b lbl_801561C4 -lbl_8015614C: -/* 8015614C 001530AC 80 9F 00 90 */ lwz r4, 0x90(r31) -/* 80156150 001530B0 28 04 00 00 */ cmplwi r4, 0 -/* 80156154 001530B4 41 82 00 70 */ beq lbl_801561C4 -/* 80156158 001530B8 88 04 02 98 */ lbz r0, 0x298(r4) -/* 8015615C 001530BC 38 60 00 01 */ li r3, 1 -/* 80156160 001530C0 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80156164 001530C4 98 04 02 98 */ stb r0, 0x298(r4) -/* 80156168 001530C8 48 00 00 5C */ b lbl_801561C4 -lbl_8015616C: -/* 8015616C 001530CC 80 1F 05 B4 */ lwz r0, 0x5b4(r31) -/* 80156170 001530D0 2C 00 00 00 */ cmpwi r0, 0 -/* 80156174 001530D4 41 82 00 50 */ beq lbl_801561C4 -/* 80156178 001530D8 2C 00 00 05 */ cmpwi r0, 5 -/* 8015617C 001530DC 41 82 00 48 */ beq lbl_801561C4 -/* 80156180 001530E0 2C 00 00 06 */ cmpwi r0, 6 -/* 80156184 001530E4 41 82 00 40 */ beq lbl_801561C4 -/* 80156188 001530E8 2C 00 00 04 */ cmpwi r0, 4 -/* 8015618C 001530EC 41 82 00 38 */ beq lbl_801561C4 -/* 80156190 001530F0 88 1F 04 00 */ lbz r0, 0x400(r31) -/* 80156194 001530F4 38 60 00 01 */ li r3, 1 -/* 80156198 001530F8 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 8015619C 001530FC 98 1F 04 00 */ stb r0, 0x400(r31) -/* 801561A0 00153100 C0 1F 04 24 */ lfs f0, 0x424(r31) -/* 801561A4 00153104 D0 1F 04 28 */ stfs f0, 0x428(r31) -/* 801561A8 00153108 48 00 00 1C */ b lbl_801561C4 -lbl_801561AC: -/* 801561AC 0015310C 80 7F 05 94 */ lwz r3, 0x594(r31) -/* 801561B0 00153110 28 03 00 00 */ cmplwi r3, 0 -/* 801561B4 00153114 41 82 00 10 */ beq lbl_801561C4 -/* 801561B8 00153118 7F C4 F3 78 */ mr r4, r30 -/* 801561BC 0015311C 38 A0 00 00 */ li r5, 0 -/* 801561C0 00153120 48 05 0D 01 */ bl SetMovable__22CCollisionActorManagerFb -lbl_801561C4: -/* 801561C4 00153124 A0 1D 00 00 */ lhz r0, 0(r29) -/* 801561C8 00153128 7F E3 FB 78 */ mr r3, r31 -/* 801561CC 0015312C 7F 84 E3 78 */ mr r4, r28 -/* 801561D0 00153130 7F C6 F3 78 */ mr r6, r30 -/* 801561D4 00153134 B0 01 00 18 */ sth r0, 0x18(r1) -/* 801561D8 00153138 38 A1 00 18 */ addi r5, r1, 0x18 -/* 801561DC 0015313C 4B F2 69 9D */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager -/* 801561E0 00153140 88 1F 00 30 */ lbz r0, 0x30(r31) -/* 801561E4 00153144 54 05 CF FE */ rlwinm r5, r0, 0x19, 0x1f, 0x1f -/* 801561E8 00153148 7C 1B 28 40 */ cmplw r27, r5 -/* 801561EC 0015314C 41 82 00 18 */ beq lbl_80156204 -/* 801561F0 00153150 80 7F 05 94 */ lwz r3, 0x594(r31) -/* 801561F4 00153154 28 03 00 00 */ cmplwi r3, 0 -/* 801561F8 00153158 41 82 00 0C */ beq lbl_80156204 -/* 801561FC 0015315C 7F C4 F3 78 */ mr r4, r30 -/* 80156200 00153160 48 05 10 F9 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb -lbl_80156204: -/* 80156204 00153164 E3 E1 02 58 */ psq_l f31, 600(r1), 0, qr0 -/* 80156208 00153168 CB E1 02 50 */ lfd f31, 0x250(r1) -/* 8015620C 0015316C E3 C1 02 48 */ psq_l f30, 584(r1), 0, qr0 -/* 80156210 00153170 CB C1 02 40 */ lfd f30, 0x240(r1) -/* 80156214 00153174 E3 A1 02 38 */ psq_l f29, 568(r1), 0, qr0 -/* 80156218 00153178 CB A1 02 30 */ lfd f29, 0x230(r1) -/* 8015621C 0015317C BA E1 02 0C */ lmw r23, 0x20c(r1) -/* 80156220 00153180 80 01 02 64 */ lwz r0, 0x264(r1) -/* 80156224 00153184 7C 08 03 A6 */ mtlr r0 -/* 80156228 00153188 38 21 02 60 */ addi r1, r1, 0x260 -/* 8015622C 0015318C 4E 80 00 20 */ blr - -.global sub_80156230 -sub_80156230: -/* 80156230 00153190 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80156234 00153194 7C 08 02 A6 */ mflr r0 -/* 80156238 00153198 90 01 00 24 */ stw r0, 0x24(r1) -/* 8015623C 0015319C 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80156240 001531A0 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80156244 001531A4 7C 9E 23 78 */ mr r30, r4 -/* 80156248 001531A8 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8015624C 001531AC 7C 7D 1B 78 */ mr r29, r3 -/* 80156250 001531B0 80 03 00 04 */ lwz r0, 4(r3) -/* 80156254 001531B4 80 A3 00 08 */ lwz r5, 8(r3) -/* 80156258 001531B8 7C 00 28 00 */ cmpw r0, r5 -/* 8015625C 001531BC 41 80 00 18 */ blt lbl_80156274 -/* 80156260 001531C0 2C 05 00 00 */ cmpwi r5, 0 -/* 80156264 001531C4 38 80 00 04 */ li r4, 4 -/* 80156268 001531C8 41 82 00 08 */ beq lbl_80156270 -/* 8015626C 001531CC 54 A4 08 3C */ slwi r4, r5, 1 -lbl_80156270: -/* 80156270 001531D0 48 00 05 49 */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" -lbl_80156274: -/* 80156274 001531D4 80 1D 00 04 */ lwz r0, 4(r29) -/* 80156278 001531D8 80 7D 00 0C */ lwz r3, 0xc(r29) -/* 8015627C 001531DC 1C 00 00 44 */ mulli r0, r0, 0x44 -/* 80156280 001531E0 7F E3 02 15 */ add. r31, r3, r0 -/* 80156284 001531E4 41 82 00 80 */ beq lbl_80156304 -/* 80156288 001531E8 80 1E 00 00 */ lwz r0, 0(r30) -/* 8015628C 001531EC 38 7F 00 2C */ addi r3, r31, 0x2c -/* 80156290 001531F0 38 9E 00 2C */ addi r4, r30, 0x2c -/* 80156294 001531F4 90 1F 00 00 */ stw r0, 0(r31) -/* 80156298 001531F8 80 1E 00 04 */ lwz r0, 4(r30) -/* 8015629C 001531FC 90 1F 00 04 */ stw r0, 4(r31) -/* 801562A0 00153200 88 1E 00 08 */ lbz r0, 8(r30) -/* 801562A4 00153204 98 1F 00 08 */ stb r0, 8(r31) -/* 801562A8 00153208 88 1E 00 09 */ lbz r0, 9(r30) -/* 801562AC 0015320C 98 1F 00 09 */ stb r0, 9(r31) -/* 801562B0 00153210 C0 1E 00 0C */ lfs f0, 0xc(r30) -/* 801562B4 00153214 D0 1F 00 0C */ stfs f0, 0xc(r31) -/* 801562B8 00153218 C0 1E 00 10 */ lfs f0, 0x10(r30) -/* 801562BC 0015321C D0 1F 00 10 */ stfs f0, 0x10(r31) -/* 801562C0 00153220 C0 1E 00 14 */ lfs f0, 0x14(r30) -/* 801562C4 00153224 D0 1F 00 14 */ stfs f0, 0x14(r31) -/* 801562C8 00153228 C0 1E 00 18 */ lfs f0, 0x18(r30) -/* 801562CC 0015322C D0 1F 00 18 */ stfs f0, 0x18(r31) -/* 801562D0 00153230 C0 1E 00 1C */ lfs f0, 0x1c(r30) -/* 801562D4 00153234 D0 1F 00 1C */ stfs f0, 0x1c(r31) -/* 801562D8 00153238 C0 1E 00 20 */ lfs f0, 0x20(r30) -/* 801562DC 0015323C D0 1F 00 20 */ stfs f0, 0x20(r31) -/* 801562E0 00153240 C0 1E 00 24 */ lfs f0, 0x24(r30) -/* 801562E4 00153244 D0 1F 00 24 */ stfs f0, 0x24(r31) -/* 801562E8 00153248 C0 1E 00 28 */ lfs f0, 0x28(r30) -/* 801562EC 0015324C D0 1F 00 28 */ stfs f0, 0x28(r31) -/* 801562F0 00153250 48 1E 7E 71 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 801562F4 00153254 A0 1E 00 3C */ lhz r0, 0x3c(r30) -/* 801562F8 00153258 B0 1F 00 3C */ sth r0, 0x3c(r31) -/* 801562FC 0015325C C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 80156300 00153260 D0 1F 00 40 */ stfs f0, 0x40(r31) -lbl_80156304: -/* 80156304 00153264 80 7D 00 04 */ lwz r3, 4(r29) -/* 80156308 00153268 38 03 00 01 */ addi r0, r3, 1 -/* 8015630C 0015326C 90 1D 00 04 */ stw r0, 4(r29) -/* 80156310 00153270 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80156314 00153274 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 80156318 00153278 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 8015631C 0015327C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80156320 00153280 7C 08 03 A6 */ mtlr r0 -/* 80156324 00153284 38 21 00 20 */ addi r1, r1, 0x20 -/* 80156328 00153288 4E 80 00 20 */ blr - -.global sub_8015632c -sub_8015632c: -/* 8015632C 0015328C 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80156330 00153290 7C 08 02 A6 */ mflr r0 -/* 80156334 00153294 90 01 00 34 */ stw r0, 0x34(r1) -/* 80156338 00153298 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8015633C 0015329C 93 C1 00 28 */ stw r30, 0x28(r1) -/* 80156340 001532A0 93 A1 00 24 */ stw r29, 0x24(r1) -/* 80156344 001532A4 7C 9D 23 78 */ mr r29, r4 -/* 80156348 001532A8 93 81 00 20 */ stw r28, 0x20(r1) -/* 8015634C 001532AC 7C 7C 1B 79 */ or. r28, r3, r3 -/* 80156350 001532B0 41 82 00 6C */ beq lbl_801563BC -/* 80156354 001532B4 80 1C 00 04 */ lwz r0, 4(r28) -/* 80156358 001532B8 83 DC 00 0C */ lwz r30, 0xc(r28) -/* 8015635C 001532BC 1C 00 00 44 */ mulli r0, r0, 0x44 -/* 80156360 001532C0 93 C1 00 10 */ stw r30, 0x10(r1) -/* 80156364 001532C4 7F FE 02 14 */ add r31, r30, r0 -/* 80156368 001532C8 93 C1 00 14 */ stw r30, 0x14(r1) -/* 8015636C 001532CC 93 E1 00 08 */ stw r31, 8(r1) -/* 80156370 001532D0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80156374 001532D4 48 00 00 20 */ b lbl_80156394 -lbl_80156378: -/* 80156378 001532D8 28 1E 00 00 */ cmplwi r30, 0 -/* 8015637C 001532DC 41 82 00 14 */ beq lbl_80156390 -/* 80156380 001532E0 34 1E 00 2C */ addic. r0, r30, 0x2c -/* 80156384 001532E4 41 82 00 0C */ beq lbl_80156390 -/* 80156388 001532E8 38 7E 00 2C */ addi r3, r30, 0x2c -/* 8015638C 001532EC 48 1E 77 55 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -lbl_80156390: -/* 80156390 001532F0 3B DE 00 44 */ addi r30, r30, 0x44 -lbl_80156394: -/* 80156394 001532F4 7C 1E F8 40 */ cmplw r30, r31 -/* 80156398 001532F8 40 82 FF E0 */ bne lbl_80156378 -/* 8015639C 001532FC 80 7C 00 0C */ lwz r3, 0xc(r28) -/* 801563A0 00153300 28 03 00 00 */ cmplwi r3, 0 -/* 801563A4 00153304 41 82 00 08 */ beq lbl_801563AC -/* 801563A8 00153308 48 1B F5 89 */ bl Free__7CMemoryFPCv -lbl_801563AC: -/* 801563AC 0015330C 7F A0 07 35 */ extsh. r0, r29 -/* 801563B0 00153310 40 81 00 0C */ ble lbl_801563BC -/* 801563B4 00153314 7F 83 E3 78 */ mr r3, r28 -/* 801563B8 00153318 48 1B F5 79 */ bl Free__7CMemoryFPCv -lbl_801563BC: -/* 801563BC 0015331C 80 01 00 34 */ lwz r0, 0x34(r1) -/* 801563C0 00153320 7F 83 E3 78 */ mr r3, r28 -/* 801563C4 00153324 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 801563C8 00153328 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 801563CC 0015332C 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 801563D0 00153330 83 81 00 20 */ lwz r28, 0x20(r1) -/* 801563D4 00153334 7C 08 03 A6 */ mtlr r0 -/* 801563D8 00153338 38 21 00 30 */ addi r1, r1, 0x30 -/* 801563DC 0015333C 4E 80 00 20 */ blr - -.global Accept__10CSpankWeedFR8IVisitor -Accept__10CSpankWeedFR8IVisitor: -/* 801563E0 00153340 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801563E4 00153344 7C 08 02 A6 */ mflr r0 -/* 801563E8 00153348 90 01 00 14 */ stw r0, 0x14(r1) -/* 801563EC 0015334C 7C 60 1B 78 */ mr r0, r3 -/* 801563F0 00153350 7C 83 23 78 */ mr r3, r4 -/* 801563F4 00153354 81 84 00 00 */ lwz r12, 0(r4) -/* 801563F8 00153358 7C 04 03 78 */ mr r4, r0 -/* 801563FC 0015335C 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 80156400 00153360 7D 89 03 A6 */ mtctr r12 -/* 80156404 00153364 4E 80 04 21 */ bctrl -/* 80156408 00153368 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015640C 0015336C 7C 08 03 A6 */ mtlr r0 -/* 80156410 00153370 38 21 00 10 */ addi r1, r1, 0x10 -/* 80156414 00153374 4E 80 00 20 */ blr - -.global "__ct__10CSpankWeedF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC16CActorParametersRC14CPatternedInfoffff" -"__ct__10CSpankWeedF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC16CActorParametersRC14CPatternedInfoffff": -/* 80156418 00153378 94 21 FA 10 */ stwu r1, -0x5f0(r1) -/* 8015641C 0015337C 7C 08 02 A6 */ mflr r0 -/* 80156420 00153380 90 01 05 F4 */ stw r0, 0x5f4(r1) -/* 80156424 00153384 DB E1 05 E0 */ stfd f31, 0x5e0(r1) -/* 80156428 00153388 F3 E1 05 E8 */ psq_st f31, 1512(r1), 0, qr0 -/* 8015642C 0015338C DB C1 05 D0 */ stfd f30, 0x5d0(r1) -/* 80156430 00153390 F3 C1 05 D8 */ psq_st f30, 1496(r1), 0, qr0 -/* 80156434 00153394 DB A1 05 C0 */ stfd f29, 0x5c0(r1) -/* 80156438 00153398 F3 A1 05 C8 */ psq_st f29, 1480(r1), 0, qr0 -/* 8015643C 0015339C DB 81 05 B0 */ stfd f28, 0x5b0(r1) -/* 80156440 001533A0 F3 81 05 B8 */ psq_st f28, 1464(r1), 0, qr0 -/* 80156444 001533A4 BF 61 05 9C */ stmw r27, 0x59c(r1) -/* 80156448 001533A8 A0 04 00 00 */ lhz r0, 0(r4) -/* 8015644C 001533AC 7D 5B 53 78 */ mr r27, r10 -/* 80156450 001533B0 7C C4 33 78 */ mr r4, r6 -/* 80156454 001533B4 7C FC 3B 78 */ mr r28, r7 -/* 80156458 001533B8 B0 01 00 2C */ sth r0, 0x2c(r1) -/* 8015645C 001533BC 7D 0A 43 78 */ mr r10, r8 -/* 80156460 001533C0 7C A6 2B 78 */ mr r6, r5 -/* 80156464 001533C4 7C 88 23 78 */ mr r8, r4 -/* 80156468 001533C8 93 61 00 08 */ stw r27, 8(r1) -/* 8015646C 001533CC 39 60 00 01 */ li r11, 1 -/* 80156470 001533D0 38 00 00 02 */ li r0, 2 -/* 80156474 001533D4 FF 80 08 90 */ fmr f28, f1 -/* 80156478 001533D8 91 61 00 0C */ stw r11, 0xc(r1) -/* 8015647C 001533DC FF A0 10 90 */ fmr f29, f2 -/* 80156480 001533E0 FF C0 18 90 */ fmr f30, f3 -/* 80156484 001533E4 7C 7F 1B 78 */ mr r31, r3 -/* 80156488 001533E8 91 61 00 10 */ stw r11, 0x10(r1) -/* 8015648C 001533EC FF E0 20 90 */ fmr f31, f4 -/* 80156490 001533F0 38 A1 00 2C */ addi r5, r1, 0x2c -/* 80156494 001533F4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80156498 001533F8 38 80 00 23 */ li r4, 0x23 -/* 8015649C 001533FC 38 E0 00 00 */ li r7, 0 -/* 801564A0 00153400 91 21 00 18 */ stw r9, 0x18(r1) -/* 801564A4 00153404 7F 89 E3 78 */ mr r9, r28 -/* 801564A8 00153408 91 61 00 1C */ stw r11, 0x1c(r1) -/* 801564AC 0015340C 4B F2 6F A5 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" -/* 801564B0 00153410 3C 80 80 3E */ lis r4, lbl_803E2D28@ha -/* 801564B4 00153414 3C 60 80 5A */ lis r3, skZero3f@ha -/* 801564B8 00153418 38 04 2D 28 */ addi r0, r4, lbl_803E2D28@l -/* 801564BC 0015341C 39 00 00 00 */ li r8, 0 -/* 801564C0 00153420 90 1F 00 00 */ stw r0, 0(r31) -/* 801564C4 00153424 38 C0 00 01 */ li r6, 1 -/* 801564C8 00153428 C0 02 9E 30 */ lfs f0, lbl_805ABB50@sda21(r2) -/* 801564CC 0015342C 38 A3 66 A0 */ addi r5, r3, skZero3f@l -/* 801564D0 00153430 D3 9F 05 68 */ stfs f28, 0x568(r31) -/* 801564D4 00153434 38 00 FF FF */ li r0, -1 -/* 801564D8 00153438 7F E3 FB 78 */ mr r3, r31 -/* 801564DC 0015343C 38 80 00 00 */ li r4, 0 -/* 801564E0 00153440 C0 3B 00 10 */ lfs f1, 0x10(r27) -/* 801564E4 00153444 D0 3F 05 6C */ stfs f1, 0x56c(r31) -/* 801564E8 00153448 D3 BF 05 70 */ stfs f29, 0x570(r31) -/* 801564EC 0015344C D3 DF 05 74 */ stfs f30, 0x574(r31) -/* 801564F0 00153450 D3 FF 05 78 */ stfs f31, 0x578(r31) -/* 801564F4 00153454 99 1F 05 7C */ stb r8, 0x57c(r31) -/* 801564F8 00153458 D0 1F 05 80 */ stfs f0, 0x580(r31) -/* 801564FC 0015345C C0 5C 00 2C */ lfs f2, 0x2c(r28) -/* 80156500 00153460 C0 3C 00 1C */ lfs f1, 0x1c(r28) -/* 80156504 00153464 C0 1C 00 0C */ lfs f0, 0xc(r28) -/* 80156508 00153468 D0 1F 05 84 */ stfs f0, 0x584(r31) -/* 8015650C 0015346C D0 3F 05 88 */ stfs f1, 0x588(r31) -/* 80156510 00153470 D0 5F 05 8C */ stfs f2, 0x58c(r31) -/* 80156514 00153474 A0 ED A3 8C */ lhz r7, lbl_805A8F4C@sda21(r13) -/* 80156518 00153478 B0 FF 05 90 */ sth r7, 0x590(r31) -/* 8015651C 0015347C 91 1F 05 94 */ stw r8, 0x594(r31) -/* 80156520 00153480 98 DF 05 98 */ stb r6, 0x598(r31) -/* 80156524 00153484 C0 05 00 00 */ lfs f0, 0(r5) -/* 80156528 00153488 D0 1F 05 9C */ stfs f0, 0x59c(r31) -/* 8015652C 0015348C C0 05 00 04 */ lfs f0, 4(r5) -/* 80156530 00153490 D0 1F 05 A0 */ stfs f0, 0x5a0(r31) -/* 80156534 00153494 C0 05 00 08 */ lfs f0, 8(r5) -/* 80156538 00153498 D0 1F 05 A4 */ stfs f0, 0x5a4(r31) -/* 8015653C 0015349C C0 05 00 00 */ lfs f0, 0(r5) -/* 80156540 001534A0 D0 1F 05 A8 */ stfs f0, 0x5a8(r31) -/* 80156544 001534A4 C0 05 00 04 */ lfs f0, 4(r5) -/* 80156548 001534A8 D0 1F 05 AC */ stfs f0, 0x5ac(r31) -/* 8015654C 001534AC C0 05 00 08 */ lfs f0, 8(r5) -/* 80156550 001534B0 D0 1F 05 B0 */ stfs f0, 0x5b0(r31) -/* 80156554 001534B4 90 1F 05 B4 */ stw r0, 0x5b4(r31) -/* 80156558 001534B8 90 1F 05 B8 */ stw r0, 0x5b8(r31) -/* 8015655C 001534BC 90 1F 05 BC */ stw r0, 0x5bc(r31) -/* 80156560 001534C0 4B EF DE 59 */ bl SetCallTouch__6CActorFb -/* 80156564 001534C4 7F E3 FB 78 */ mr r3, r31 -/* 80156568 001534C8 38 80 00 00 */ li r4, 0 -/* 8015656C 001534CC 4B EF C8 01 */ bl CreateShadow__6CActorFb -/* 80156570 001534D0 80 7F 00 64 */ lwz r3, 0x64(r31) -/* 80156574 001534D4 C0 23 00 04 */ lfs f1, 4(r3) -/* 80156578 001534D8 C0 03 00 00 */ lfs f0, 0(r3) -/* 8015657C 001534DC C0 43 00 08 */ lfs f2, 8(r3) -/* 80156580 001534E0 FC 00 08 00 */ fcmpu cr0, f0, f1 -/* 80156584 001534E4 D0 01 00 4C */ stfs f0, 0x4c(r1) -/* 80156588 001534E8 D0 21 00 50 */ stfs f1, 0x50(r1) -/* 8015658C 001534EC D0 41 00 54 */ stfs f2, 0x54(r1) -/* 80156590 001534F0 40 82 00 0C */ bne lbl_8015659C -/* 80156594 001534F4 FC 00 10 00 */ fcmpu cr0, f0, f2 -/* 80156598 001534F8 41 82 00 58 */ beq lbl_801565F0 -lbl_8015659C: -/* 8015659C 001534FC 38 61 00 4C */ addi r3, r1, 0x4c -/* 801565A0 00153500 48 1B E3 19 */ bl Magnitude__9CVector3fCFv -/* 801565A4 00153504 FF E0 08 90 */ fmr f31, f1 -/* 801565A8 00153508 C0 22 9E 40 */ lfs f1, lbl_805ABB60@sda21(r2) -/* 801565AC 0015350C 48 1B EF 55 */ bl SqrtF__5CMathFf -/* 801565B0 00153510 EC 9F 08 24 */ fdivs f4, f31, f1 -/* 801565B4 00153514 80 BF 00 64 */ lwz r5, 0x64(r31) -/* 801565B8 00153518 3C 80 80 3D */ lis r4, lbl_803D0230@ha -/* 801565BC 0015351C 38 61 01 90 */ addi r3, r1, 0x190 -/* 801565C0 00153520 38 84 02 30 */ addi r4, r4, lbl_803D0230@l -/* 801565C4 00153524 38 84 00 77 */ addi r4, r4, 0x77 -/* 801565C8 00153528 D0 85 00 00 */ stfs f4, 0(r5) -/* 801565CC 0015352C FC A0 20 90 */ fmr f5, f4 -/* 801565D0 00153530 FC C0 20 90 */ fmr f6, f4 -/* 801565D4 00153534 D0 85 00 04 */ stfs f4, 4(r5) -/* 801565D8 00153538 D0 85 00 08 */ stfs f4, 8(r5) -/* 801565DC 0015353C C0 21 00 4C */ lfs f1, 0x4c(r1) -/* 801565E0 00153540 C0 41 00 50 */ lfs f2, 0x50(r1) -/* 801565E4 00153544 C0 61 00 54 */ lfs f3, 0x54(r1) -/* 801565E8 00153548 4C C6 32 42 */ crset 6 -/* 801565EC 0015354C 48 23 76 F1 */ bl sprintf -lbl_801565F0: -/* 801565F0 00153550 7F E3 FB 78 */ mr r3, r31 -/* 801565F4 00153554 4B EF D2 C9 */ bl GetMaterialFilter__6CActorCFv -/* 801565F8 00153558 80 AD 8C 7C */ lwz r5, lbl_805A783C@sda21(r13) -/* 801565FC 0015355C 38 80 00 01 */ li r4, 1 -/* 80156600 00153560 83 C3 00 08 */ lwz r30, 8(r3) -/* 80156604 00153564 83 A3 00 0C */ lwz r29, 0xc(r3) -/* 80156608 00153568 38 60 00 00 */ li r3, 0 -/* 8015660C 0015356C 48 23 38 E9 */ bl __shl2i -/* 80156610 00153570 80 AD 8C 80 */ lwz r5, lbl_805A7840@sda21(r13) -/* 80156614 00153574 7C 9B 23 78 */ mr r27, r4 -/* 80156618 00153578 7C 7C 1B 78 */ mr r28, r3 -/* 8015661C 0015357C 38 60 00 00 */ li r3, 0 -/* 80156620 00153580 38 80 00 01 */ li r4, 1 -/* 80156624 00153584 48 23 38 D1 */ bl __shl2i -/* 80156628 00153588 7F 9C 1B 78 */ or r28, r28, r3 -/* 8015662C 0015358C 7F 7B 23 78 */ or r27, r27, r4 -/* 80156630 00153590 7F E3 FB 78 */ mr r3, r31 -/* 80156634 00153594 7F BD DB 78 */ or r29, r29, r27 -/* 80156638 00153598 7F DE E3 78 */ or r30, r30, r28 -/* 8015663C 0015359C 4B EF D2 81 */ bl GetMaterialFilter__6CActorCFv -/* 80156640 001535A0 80 A3 00 00 */ lwz r5, 0(r3) -/* 80156644 001535A4 38 00 00 03 */ li r0, 3 -/* 80156648 001535A8 80 C3 00 04 */ lwz r6, 4(r3) -/* 8015664C 001535AC 7F E3 FB 78 */ mr r3, r31 -/* 80156650 001535B0 38 81 00 58 */ addi r4, r1, 0x58 -/* 80156654 001535B4 90 C1 00 5C */ stw r6, 0x5c(r1) -/* 80156658 001535B8 90 A1 00 58 */ stw r5, 0x58(r1) -/* 8015665C 001535BC 93 A1 00 64 */ stw r29, 0x64(r1) -/* 80156660 001535C0 93 C1 00 60 */ stw r30, 0x60(r1) -/* 80156664 001535C4 90 01 00 68 */ stw r0, 0x68(r1) -/* 80156668 001535C8 4B EF D2 39 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter -/* 8015666C 001535CC 3C 80 80 3D */ lis r4, lbl_803D0230@ha -/* 80156670 001535D0 38 61 00 3C */ addi r3, r1, 0x3c -/* 80156674 001535D4 38 84 02 30 */ addi r4, r4, lbl_803D0230@l -/* 80156678 001535D8 38 84 00 59 */ addi r4, r4, 0x59 -/* 8015667C 001535DC 4B EA E6 3D */ bl string_l__4rstlFPCc -/* 80156680 001535E0 80 9F 00 64 */ lwz r4, 0x64(r31) -/* 80156684 001535E4 38 61 00 24 */ addi r3, r1, 0x24 -/* 80156688 001535E8 38 A1 00 3C */ addi r5, r1, 0x3c -/* 8015668C 001535EC 80 84 00 10 */ lwz r4, 0x10(r4) -/* 80156690 001535F0 4B ED 81 A9 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80156694 001535F4 88 01 00 24 */ lbz r0, 0x24(r1) -/* 80156698 001535F8 38 61 00 3C */ addi r3, r1, 0x3c -/* 8015669C 001535FC 98 01 00 28 */ stb r0, 0x28(r1) -/* 801566A0 00153600 48 1E 74 41 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 801566A4 00153604 88 01 00 28 */ lbz r0, 0x28(r1) -/* 801566A8 00153608 28 00 00 FF */ cmplwi r0, 0xff -/* 801566AC 0015360C 41 82 00 C8 */ beq lbl_80156774 -/* 801566B0 00153610 98 01 00 20 */ stb r0, 0x20(r1) -/* 801566B4 00153614 38 61 01 00 */ addi r3, r1, 0x100 -/* 801566B8 00153618 38 A1 00 20 */ addi r5, r1, 0x20 -/* 801566BC 0015361C 38 C0 00 00 */ li r6, 0 -/* 801566C0 00153620 80 9F 00 64 */ lwz r4, 0x64(r31) -/* 801566C4 00153624 80 84 00 10 */ lwz r4, 0x10(r4) -/* 801566C8 00153628 4B ED 5B AD */ bl GetLocatorTransform__9CAnimDataCF6CSegIdPC13CCharAnimTime -/* 801566CC 0015362C 38 61 01 60 */ addi r3, r1, 0x160 -/* 801566D0 00153630 38 81 01 00 */ addi r4, r1, 0x100 -/* 801566D4 00153634 48 1B C4 A1 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 801566D8 00153638 80 BF 00 64 */ lwz r5, 0x64(r31) -/* 801566DC 0015363C 38 61 00 70 */ addi r3, r1, 0x70 -/* 801566E0 00153640 38 81 00 30 */ addi r4, r1, 0x30 -/* 801566E4 00153644 C0 05 00 00 */ lfs f0, 0(r5) -/* 801566E8 00153648 D0 01 00 30 */ stfs f0, 0x30(r1) -/* 801566EC 0015364C C0 05 00 04 */ lfs f0, 4(r5) -/* 801566F0 00153650 D0 01 00 34 */ stfs f0, 0x34(r1) -/* 801566F4 00153654 C0 05 00 08 */ lfs f0, 8(r5) -/* 801566F8 00153658 D0 01 00 38 */ stfs f0, 0x38(r1) -/* 801566FC 0015365C 48 1B CA C9 */ bl Scale__12CTransform4fFRC9CVector3f -/* 80156700 00153660 38 61 00 A0 */ addi r3, r1, 0xa0 -/* 80156704 00153664 38 81 00 70 */ addi r4, r1, 0x70 -/* 80156708 00153668 38 A1 01 60 */ addi r5, r1, 0x160 -/* 8015670C 0015366C 48 1B C2 45 */ bl __ml__12CTransform4fCFRC12CTransform4f -/* 80156710 00153670 38 61 00 D0 */ addi r3, r1, 0xd0 -/* 80156714 00153674 38 9F 00 34 */ addi r4, r31, 0x34 -/* 80156718 00153678 38 A1 00 A0 */ addi r5, r1, 0xa0 -/* 8015671C 0015367C 48 1B C2 35 */ bl __ml__12CTransform4fCFRC12CTransform4f -/* 80156720 00153680 38 61 01 30 */ addi r3, r1, 0x130 -/* 80156724 00153684 38 81 00 D0 */ addi r4, r1, 0xd0 -/* 80156728 00153688 48 1B C4 4D */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8015672C 0015368C C0 41 01 5C */ lfs f2, 0x15c(r1) -/* 80156730 00153690 C0 21 01 4C */ lfs f1, 0x14c(r1) -/* 80156734 00153694 C0 01 01 3C */ lfs f0, 0x13c(r1) -/* 80156738 00153698 D0 1F 05 A8 */ stfs f0, 0x5a8(r31) -/* 8015673C 0015369C D0 3F 05 AC */ stfs f1, 0x5ac(r31) -/* 80156740 001536A0 D0 5F 05 B0 */ stfs f2, 0x5b0(r31) -/* 80156744 001536A4 C0 21 01 3C */ lfs f1, 0x13c(r1) -/* 80156748 001536A8 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 8015674C 001536AC C0 61 01 4C */ lfs f3, 0x14c(r1) -/* 80156750 001536B0 C0 5F 00 50 */ lfs f2, 0x50(r31) -/* 80156754 001536B4 EC 01 00 28 */ fsubs f0, f1, f0 -/* 80156758 001536B8 C0 9F 00 60 */ lfs f4, 0x60(r31) -/* 8015675C 001536BC C0 21 01 5C */ lfs f1, 0x15c(r1) -/* 80156760 001536C0 EC 43 10 28 */ fsubs f2, f3, f2 -/* 80156764 001536C4 D0 1F 05 9C */ stfs f0, 0x59c(r31) -/* 80156768 001536C8 EC 01 20 28 */ fsubs f0, f1, f4 -/* 8015676C 001536CC D0 5F 05 A0 */ stfs f2, 0x5a0(r31) -/* 80156770 001536D0 D0 1F 05 A4 */ stfs f0, 0x5a4(r31) -lbl_80156774: -/* 80156774 001536D4 38 7F 04 60 */ addi r3, r31, 0x460 -/* 80156778 001536D8 38 80 00 00 */ li r4, 0 -/* 8015677C 001536DC 48 0D D5 E9 */ bl SetAutoResetImpulse__20CKnockBackControllerFb -/* 80156780 001536E0 7F E3 FB 78 */ mr r3, r31 -/* 80156784 001536E4 E3 E1 05 E8 */ psq_l f31, 1512(r1), 0, qr0 -/* 80156788 001536E8 CB E1 05 E0 */ lfd f31, 0x5e0(r1) -/* 8015678C 001536EC E3 C1 05 D8 */ psq_l f30, 1496(r1), 0, qr0 -/* 80156790 001536F0 CB C1 05 D0 */ lfd f30, 0x5d0(r1) -/* 80156794 001536F4 E3 A1 05 C8 */ psq_l f29, 1480(r1), 0, qr0 -/* 80156798 001536F8 CB A1 05 C0 */ lfd f29, 0x5c0(r1) -/* 8015679C 001536FC E3 81 05 B8 */ psq_l f28, 1464(r1), 0, qr0 -/* 801567A0 00153700 CB 81 05 B0 */ lfd f28, 0x5b0(r1) -/* 801567A4 00153704 BB 61 05 9C */ lmw r27, 0x59c(r1) -/* 801567A8 00153708 80 01 05 F4 */ lwz r0, 0x5f4(r1) -/* 801567AC 0015370C 7C 08 03 A6 */ mtlr r0 -/* 801567B0 00153710 38 21 05 F0 */ addi r1, r1, 0x5f0 -/* 801567B4 00153714 4E 80 00 20 */ blr - -.global "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" -"reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi": -/* 801567B8 00153718 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 801567BC 0015371C 7C 08 02 A6 */ mflr r0 -/* 801567C0 00153720 90 01 00 34 */ stw r0, 0x34(r1) -/* 801567C4 00153724 BF 61 00 1C */ stmw r27, 0x1c(r1) -/* 801567C8 00153728 7C 9F 23 78 */ mr r31, r4 -/* 801567CC 0015372C 7C 7E 1B 78 */ mr r30, r3 -/* 801567D0 00153730 80 03 00 08 */ lwz r0, 8(r3) -/* 801567D4 00153734 7C 1F 00 00 */ cmpw r31, r0 -/* 801567D8 00153738 40 81 00 B4 */ ble lbl_8015688C -/* 801567DC 0015373C 1C 7F 00 44 */ mulli r3, r31, 0x44 -/* 801567E0 00153740 2C 03 00 00 */ cmpwi r3, 0 -/* 801567E4 00153744 40 82 00 0C */ bne lbl_801567F0 -/* 801567E8 00153748 3B A0 00 00 */ li r29, 0 -/* 801567EC 0015374C 48 00 00 1C */ b lbl_80156808 -lbl_801567F0: -/* 801567F0 00153750 3C 80 80 3D */ lis r4, lbl_803D0230@ha -/* 801567F4 00153754 38 A0 00 00 */ li r5, 0 -/* 801567F8 00153758 38 84 02 30 */ addi r4, r4, lbl_803D0230@l -/* 801567FC 0015375C 38 84 00 70 */ addi r4, r4, 0x70 -/* 80156800 00153760 48 1B F0 19 */ bl __nwa__FUlPCcPCc -/* 80156804 00153764 7C 7D 1B 78 */ mr r29, r3 -lbl_80156808: -/* 80156808 00153768 80 1E 00 04 */ lwz r0, 4(r30) -/* 8015680C 0015376C 7F A5 EB 78 */ mr r5, r29 -/* 80156810 00153770 80 DE 00 0C */ lwz r6, 0xc(r30) -/* 80156814 00153774 38 61 00 14 */ addi r3, r1, 0x14 -/* 80156818 00153778 1C 00 00 44 */ mulli r0, r0, 0x44 -/* 8015681C 0015377C 38 81 00 0C */ addi r4, r1, 0xc -/* 80156820 00153780 7C C6 02 14 */ add r6, r6, r0 -/* 80156824 00153784 90 C1 00 0C */ stw r6, 0xc(r1) -/* 80156828 00153788 80 1E 00 0C */ lwz r0, 0xc(r30) -/* 8015682C 0015378C 90 C1 00 08 */ stw r6, 8(r1) -/* 80156830 00153790 90 01 00 10 */ stw r0, 0x10(r1) -/* 80156834 00153794 90 01 00 14 */ stw r0, 0x14(r1) -/* 80156838 00153798 48 00 00 69 */ bl sub_801568a0 -/* 8015683C 0015379C 80 1E 00 04 */ lwz r0, 4(r30) -/* 80156840 001537A0 83 7E 00 0C */ lwz r27, 0xc(r30) -/* 80156844 001537A4 1C 00 00 44 */ mulli r0, r0, 0x44 -/* 80156848 001537A8 7F 9B 02 14 */ add r28, r27, r0 -/* 8015684C 001537AC 48 00 00 20 */ b lbl_8015686C -lbl_80156850: -/* 80156850 001537B0 28 1B 00 00 */ cmplwi r27, 0 -/* 80156854 001537B4 41 82 00 14 */ beq lbl_80156868 -/* 80156858 001537B8 34 1B 00 2C */ addic. r0, r27, 0x2c -/* 8015685C 001537BC 41 82 00 0C */ beq lbl_80156868 -/* 80156860 001537C0 38 7B 00 2C */ addi r3, r27, 0x2c -/* 80156864 001537C4 48 1E 72 7D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -lbl_80156868: -/* 80156868 001537C8 3B 7B 00 44 */ addi r27, r27, 0x44 -lbl_8015686C: -/* 8015686C 001537CC 7C 1B E0 40 */ cmplw r27, r28 -/* 80156870 001537D0 40 82 FF E0 */ bne lbl_80156850 -/* 80156874 001537D4 80 7E 00 0C */ lwz r3, 0xc(r30) -/* 80156878 001537D8 28 03 00 00 */ cmplwi r3, 0 -/* 8015687C 001537DC 41 82 00 08 */ beq lbl_80156884 -/* 80156880 001537E0 48 1B F0 B1 */ bl Free__7CMemoryFPCv -lbl_80156884: -/* 80156884 001537E4 93 BE 00 0C */ stw r29, 0xc(r30) -/* 80156888 001537E8 93 FE 00 08 */ stw r31, 8(r30) -lbl_8015688C: -/* 8015688C 001537EC BB 61 00 1C */ lmw r27, 0x1c(r1) -/* 80156890 001537F0 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80156894 001537F4 7C 08 03 A6 */ mtlr r0 -/* 80156898 001537F8 38 21 00 30 */ addi r1, r1, 0x30 -/* 8015689C 001537FC 4E 80 00 20 */ blr - -.global sub_801568a0 -sub_801568a0: -/* 801568A0 00153800 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 801568A4 00153804 7C 08 02 A6 */ mflr r0 -/* 801568A8 00153808 90 01 00 24 */ stw r0, 0x24(r1) -/* 801568AC 0015380C 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 801568B0 00153810 93 C1 00 18 */ stw r30, 0x18(r1) -/* 801568B4 00153814 7C BE 2B 78 */ mr r30, r5 -/* 801568B8 00153818 93 A1 00 14 */ stw r29, 0x14(r1) -/* 801568BC 0015381C 7C 9D 23 78 */ mr r29, r4 -/* 801568C0 00153820 83 E3 00 00 */ lwz r31, 0(r3) -/* 801568C4 00153824 48 00 00 90 */ b lbl_80156954 -lbl_801568C8: -/* 801568C8 00153828 28 1E 00 00 */ cmplwi r30, 0 -/* 801568CC 0015382C 41 82 00 80 */ beq lbl_8015694C -/* 801568D0 00153830 80 1F 00 00 */ lwz r0, 0(r31) -/* 801568D4 00153834 38 7E 00 2C */ addi r3, r30, 0x2c -/* 801568D8 00153838 38 9F 00 2C */ addi r4, r31, 0x2c -/* 801568DC 0015383C 90 1E 00 00 */ stw r0, 0(r30) -/* 801568E0 00153840 80 1F 00 04 */ lwz r0, 4(r31) -/* 801568E4 00153844 90 1E 00 04 */ stw r0, 4(r30) -/* 801568E8 00153848 88 1F 00 08 */ lbz r0, 8(r31) -/* 801568EC 0015384C 98 1E 00 08 */ stb r0, 8(r30) -/* 801568F0 00153850 88 1F 00 09 */ lbz r0, 9(r31) -/* 801568F4 00153854 98 1E 00 09 */ stb r0, 9(r30) -/* 801568F8 00153858 C0 1F 00 0C */ lfs f0, 0xc(r31) -/* 801568FC 0015385C D0 1E 00 0C */ stfs f0, 0xc(r30) -/* 80156900 00153860 C0 1F 00 10 */ lfs f0, 0x10(r31) -/* 80156904 00153864 D0 1E 00 10 */ stfs f0, 0x10(r30) -/* 80156908 00153868 C0 1F 00 14 */ lfs f0, 0x14(r31) -/* 8015690C 0015386C D0 1E 00 14 */ stfs f0, 0x14(r30) -/* 80156910 00153870 C0 1F 00 18 */ lfs f0, 0x18(r31) -/* 80156914 00153874 D0 1E 00 18 */ stfs f0, 0x18(r30) -/* 80156918 00153878 C0 1F 00 1C */ lfs f0, 0x1c(r31) -/* 8015691C 0015387C D0 1E 00 1C */ stfs f0, 0x1c(r30) -/* 80156920 00153880 C0 1F 00 20 */ lfs f0, 0x20(r31) -/* 80156924 00153884 D0 1E 00 20 */ stfs f0, 0x20(r30) -/* 80156928 00153888 C0 1F 00 24 */ lfs f0, 0x24(r31) -/* 8015692C 0015388C D0 1E 00 24 */ stfs f0, 0x24(r30) -/* 80156930 00153890 C0 1F 00 28 */ lfs f0, 0x28(r31) -/* 80156934 00153894 D0 1E 00 28 */ stfs f0, 0x28(r30) -/* 80156938 00153898 48 1E 78 29 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8015693C 0015389C A0 1F 00 3C */ lhz r0, 0x3c(r31) -/* 80156940 001538A0 B0 1E 00 3C */ sth r0, 0x3c(r30) -/* 80156944 001538A4 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 80156948 001538A8 D0 1E 00 40 */ stfs f0, 0x40(r30) -lbl_8015694C: -/* 8015694C 001538AC 3B DE 00 44 */ addi r30, r30, 0x44 -/* 80156950 001538B0 3B FF 00 44 */ addi r31, r31, 0x44 -lbl_80156954: -/* 80156954 001538B4 80 1D 00 00 */ lwz r0, 0(r29) -/* 80156958 001538B8 7C 1F 00 40 */ cmplw r31, r0 -/* 8015695C 001538BC 40 82 FF 6C */ bne lbl_801568C8 -/* 80156960 001538C0 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80156964 001538C4 7F C3 F3 78 */ mr r3, r30 -/* 80156968 001538C8 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8015696C 001538CC 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 80156970 001538D0 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 80156974 001538D4 7C 08 03 A6 */ mtlr r0 -/* 80156978 001538D8 38 21 00 20 */ addi r1, r1, 0x20 -/* 8015697C 001538DC 4E 80 00 20 */ blr - -.global __dt__9CParasiteFv -__dt__9CParasiteFv: -/* 80156980 001538E0 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80156984 001538E4 7C 08 02 A6 */ mflr r0 -/* 80156988 001538E8 90 01 00 34 */ stw r0, 0x34(r1) -/* 8015698C 001538EC 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 80156990 001538F0 93 C1 00 28 */ stw r30, 0x28(r1) -/* 80156994 001538F4 7C 9E 23 78 */ mr r30, r4 -/* 80156998 001538F8 93 A1 00 24 */ stw r29, 0x24(r1) -/* 8015699C 001538FC 7C 7D 1B 79 */ or. r29, r3, r3 -/* 801569A0 00153900 41 82 00 B4 */ beq lbl_80156A54 -/* 801569A4 00153904 3C 60 80 3E */ lis r3, lbl_803E3004@ha -/* 801569A8 00153908 34 1D 06 24 */ addic. r0, r29, 0x624 -/* 801569AC 0015390C 38 03 30 04 */ addi r0, r3, lbl_803E3004@l -/* 801569B0 00153910 90 1D 00 00 */ stw r0, 0(r29) -/* 801569B4 00153914 41 82 00 28 */ beq lbl_801569DC -/* 801569B8 00153918 83 FD 06 24 */ lwz r31, 0x624(r29) -/* 801569BC 0015391C 28 1F 00 00 */ cmplwi r31, 0 -/* 801569C0 00153920 41 82 00 1C */ beq lbl_801569DC -/* 801569C4 00153924 41 82 00 10 */ beq lbl_801569D4 -/* 801569C8 00153928 7F E3 FB 78 */ mr r3, r31 -/* 801569CC 0015392C 38 80 00 00 */ li r4, 0 -/* 801569D0 00153930 48 1E A4 71 */ bl __dt__6CTokenFv -lbl_801569D4: -/* 801569D4 00153934 7F E3 FB 78 */ mr r3, r31 -/* 801569D8 00153938 48 1B EF 59 */ bl Free__7CMemoryFPCv -lbl_801569DC: -/* 801569DC 0015393C 34 1D 06 20 */ addic. r0, r29, 0x620 -/* 801569E0 00153940 41 82 00 10 */ beq lbl_801569F0 -/* 801569E4 00153944 80 7D 06 20 */ lwz r3, 0x620(r29) -/* 801569E8 00153948 38 80 00 01 */ li r4, 1 -/* 801569EC 0015394C 48 05 0E F1 */ bl sub_801a78dc -lbl_801569F0: -/* 801569F0 00153950 34 1D 05 D8 */ addic. r0, r29, 0x5d8 -/* 801569F4 00153954 41 82 00 44 */ beq lbl_80156A38 -/* 801569F8 00153958 80 1D 05 DC */ lwz r0, 0x5dc(r29) -/* 801569FC 0015395C 80 7D 05 E4 */ lwz r3, 0x5e4(r29) -/* 80156A00 00153960 54 00 20 36 */ slwi r0, r0, 4 -/* 80156A04 00153964 7C 03 02 14 */ add r0, r3, r0 -/* 80156A08 00153968 90 61 00 0C */ stw r3, 0xc(r1) -/* 80156A0C 0015396C 7C 64 1B 78 */ mr r4, r3 -/* 80156A10 00153970 90 01 00 14 */ stw r0, 0x14(r1) -/* 80156A14 00153974 90 01 00 10 */ stw r0, 0x10(r1) -/* 80156A18 00153978 90 61 00 08 */ stw r3, 8(r1) -/* 80156A1C 0015397C 48 00 00 08 */ b lbl_80156A24 -lbl_80156A20: -/* 80156A20 00153980 38 84 00 10 */ addi r4, r4, 0x10 -lbl_80156A24: -/* 80156A24 00153984 7C 04 00 40 */ cmplw r4, r0 -/* 80156A28 00153988 40 82 FF F8 */ bne lbl_80156A20 -/* 80156A2C 0015398C 28 03 00 00 */ cmplwi r3, 0 -/* 80156A30 00153990 41 82 00 08 */ beq lbl_80156A38 -/* 80156A34 00153994 48 1B EE FD */ bl Free__7CMemoryFPCv -lbl_80156A38: -/* 80156A38 00153998 7F A3 EB 78 */ mr r3, r29 -/* 80156A3C 0015399C 38 80 00 00 */ li r4, 0 -/* 80156A40 001539A0 48 00 00 35 */ bl __dt__11CWallWalkerFv -/* 80156A44 001539A4 7F C0 07 35 */ extsh. r0, r30 -/* 80156A48 001539A8 40 81 00 0C */ ble lbl_80156A54 -/* 80156A4C 001539AC 7F A3 EB 78 */ mr r3, r29 -/* 80156A50 001539B0 48 1B EE E1 */ bl Free__7CMemoryFPCv -lbl_80156A54: -/* 80156A54 001539B4 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80156A58 001539B8 7F A3 EB 78 */ mr r3, r29 -/* 80156A5C 001539BC 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 80156A60 001539C0 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 80156A64 001539C4 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 80156A68 001539C8 7C 08 03 A6 */ mtlr r0 -/* 80156A6C 001539CC 38 21 00 30 */ addi r1, r1, 0x30 -/* 80156A70 001539D0 4E 80 00 20 */ blr - -.global __dt__11CWallWalkerFv -__dt__11CWallWalkerFv: -/* 80156A74 001539D4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80156A78 001539D8 7C 08 02 A6 */ mflr r0 -/* 80156A7C 001539DC 90 01 00 14 */ stw r0, 0x14(r1) -/* 80156A80 001539E0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80156A84 001539E4 7C 9F 23 78 */ mr r31, r4 -/* 80156A88 001539E8 93 C1 00 08 */ stw r30, 8(r1) -/* 80156A8C 001539EC 7C 7E 1B 79 */ or. r30, r3, r3 -/* 80156A90 001539F0 41 82 00 54 */ beq lbl_80156AE4 -/* 80156A94 001539F4 3C 60 80 3F */ lis r3, lbl_803EA0F0@ha -/* 80156A98 001539F8 34 1E 05 90 */ addic. r0, r30, 0x590 -/* 80156A9C 001539FC 38 03 A0 F0 */ addi r0, r3, lbl_803EA0F0@l -/* 80156AA0 00153A00 90 1E 00 00 */ stw r0, 0(r30) -/* 80156AA4 00153A04 41 82 00 24 */ beq lbl_80156AC8 -/* 80156AA8 00153A08 3C 60 80 3F */ lis r3, lbl_803ECAF8@ha -/* 80156AAC 00153A0C 34 1E 05 90 */ addic. r0, r30, 0x590 -/* 80156AB0 00153A10 38 03 CA F8 */ addi r0, r3, lbl_803ECAF8@l -/* 80156AB4 00153A14 90 1E 05 90 */ stw r0, 0x590(r30) -/* 80156AB8 00153A18 41 82 00 10 */ beq lbl_80156AC8 -/* 80156ABC 00153A1C 3C 60 80 3E */ lis r3, lbl_803D97E4@ha -/* 80156AC0 00153A20 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l -/* 80156AC4 00153A24 90 1E 05 90 */ stw r0, 0x590(r30) -lbl_80156AC8: -/* 80156AC8 00153A28 7F C3 F3 78 */ mr r3, r30 -/* 80156ACC 00153A2C 38 80 00 00 */ li r4, 0 -/* 80156AD0 00153A30 4B F2 0A A1 */ bl __dt__10CPatternedFv -/* 80156AD4 00153A34 7F E0 07 35 */ extsh. r0, r31 -/* 80156AD8 00153A38 40 81 00 0C */ ble lbl_80156AE4 -/* 80156ADC 00153A3C 7F C3 F3 78 */ mr r3, r30 -/* 80156AE0 00153A40 48 1B EE 51 */ bl Free__7CMemoryFPCv -lbl_80156AE4: -/* 80156AE4 00153A44 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80156AE8 00153A48 7F C3 F3 78 */ mr r3, r30 -/* 80156AEC 00153A4C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80156AF0 00153A50 83 C1 00 08 */ lwz r30, 8(r1) -/* 80156AF4 00153A54 7C 08 03 A6 */ mtlr r0 -/* 80156AF8 00153A58 38 21 00 10 */ addi r1, r1, 0x10 -/* 80156AFC 00153A5C 4E 80 00 20 */ blr - -.global IsOnGround__9CParasiteCFv -IsOnGround__9CParasiteCFv: -/* 80156B00 00153A60 88 03 07 42 */ lbz r0, 0x742(r3) -/* 80156B04 00153A64 54 03 EF FE */ rlwinm r3, r0, 0x1d, 0x1f, 0x1f -/* 80156B08 00153A68 4E 80 00 20 */ blr - -.global MassiveFrozenDeath__9CParasiteFR13CStateManager -MassiveFrozenDeath__9CParasiteFR13CStateManager: -/* 80156B0C 00153A6C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80156B10 00153A70 7C 08 02 A6 */ mflr r0 -/* 80156B14 00153A74 90 01 00 14 */ stw r0, 0x14(r1) -/* 80156B18 00153A78 4B F2 40 1D */ bl MassiveFrozenDeath__10CPatternedFR13CStateManager -/* 80156B1C 00153A7C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80156B20 00153A80 7C 08 03 A6 */ mtlr r0 -/* 80156B24 00153A84 38 21 00 10 */ addi r1, r1, 0x10 -/* 80156B28 00153A88 4E 80 00 20 */ blr - -.global MassiveDeath__9CParasiteFR13CStateManager -MassiveDeath__9CParasiteFR13CStateManager: -/* 80156B2C 00153A8C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80156B30 00153A90 7C 08 02 A6 */ mflr r0 -/* 80156B34 00153A94 90 01 00 14 */ stw r0, 0x14(r1) -/* 80156B38 00153A98 4B F2 41 B1 */ bl MassiveDeath__10CPatternedFR13CStateManager -/* 80156B3C 00153A9C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80156B40 00153AA0 7C 08 03 A6 */ mtlr r0 -/* 80156B44 00153AA4 38 21 00 10 */ addi r1, r1, 0x10 -/* 80156B48 00153AA8 4E 80 00 20 */ blr - -.global UpdateCollisionActors__9CParasiteFR13CStateManager -UpdateCollisionActors__9CParasiteFR13CStateManager: -/* 80156B4C 00153AAC 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 80156B50 00153AB0 7C 08 02 A6 */ mflr r0 -/* 80156B54 00153AB4 90 01 00 44 */ stw r0, 0x44(r1) -/* 80156B58 00153AB8 DB E1 00 30 */ stfd f31, 0x30(r1) -/* 80156B5C 00153ABC F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 -/* 80156B60 00153AC0 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 80156B64 00153AC4 93 C1 00 28 */ stw r30, 0x28(r1) -/* 80156B68 00153AC8 93 A1 00 24 */ stw r29, 0x24(r1) -/* 80156B6C 00153ACC 7C 7D 1B 78 */ mr r29, r3 -/* 80156B70 00153AD0 7C 9E 23 78 */ mr r30, r4 -/* 80156B74 00153AD4 80 63 06 20 */ lwz r3, 0x620(r3) -/* 80156B78 00153AD8 38 A0 00 00 */ li r5, 0 -/* 80156B7C 00153ADC 48 05 08 D5 */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions -/* 80156B80 00153AE0 88 1D 07 43 */ lbz r0, 0x743(r29) -/* 80156B84 00153AE4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 80156B88 00153AE8 40 82 00 D8 */ bne lbl_80156C60 -/* 80156B8C 00153AEC C3 E2 9E 50 */ lfs f31, lbl_805ABB70@sda21(r2) -/* 80156B90 00153AF0 3B E0 00 00 */ li r31, 0 -/* 80156B94 00153AF4 48 00 00 60 */ b lbl_80156BF4 -lbl_80156B98: -/* 80156B98 00153AF8 80 7D 06 20 */ lwz r3, 0x620(r29) -/* 80156B9C 00153AFC 7F E4 FB 78 */ mr r4, r31 -/* 80156BA0 00153B00 48 05 06 99 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi -/* 80156BA4 00153B04 A0 03 00 3C */ lhz r0, 0x3c(r3) -/* 80156BA8 00153B08 7F C3 F3 78 */ mr r3, r30 -/* 80156BAC 00153B0C 38 81 00 08 */ addi r4, r1, 8 -/* 80156BB0 00153B10 B0 01 00 0C */ sth r0, 0xc(r1) -/* 80156BB4 00153B14 B0 01 00 08 */ sth r0, 8(r1) -/* 80156BB8 00153B18 4B EF 59 BD */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80156BBC 00153B1C 7C 64 1B 78 */ mr r4, r3 -/* 80156BC0 00153B20 38 61 00 10 */ addi r3, r1, 0x10 -/* 80156BC4 00153B24 4B F5 87 89 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" -/* 80156BC8 00153B28 80 63 00 04 */ lwz r3, 4(r3) -/* 80156BCC 00153B2C 28 03 00 00 */ cmplwi r3, 0 -/* 80156BD0 00153B30 41 82 00 20 */ beq lbl_80156BF0 -/* 80156BD4 00153B34 81 83 00 00 */ lwz r12, 0(r3) -/* 80156BD8 00153B38 7F C4 F3 78 */ mr r4, r30 -/* 80156BDC 00153B3C 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 80156BE0 00153B40 7D 89 03 A6 */ mtctr r12 -/* 80156BE4 00153B44 4E 80 04 21 */ bctrl -/* 80156BE8 00153B48 C0 03 00 00 */ lfs f0, 0(r3) -/* 80156BEC 00153B4C EF FF 00 2A */ fadds f31, f31, f0 -lbl_80156BF0: -/* 80156BF0 00153B50 3B FF 00 01 */ addi r31, r31, 1 -lbl_80156BF4: -/* 80156BF4 00153B54 80 7D 06 20 */ lwz r3, 0x620(r29) -/* 80156BF8 00153B58 48 05 06 51 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv -/* 80156BFC 00153B5C 7C 1F 18 40 */ cmplw r31, r3 -/* 80156C00 00153B60 41 80 FF 98 */ blt lbl_80156B98 -/* 80156C04 00153B64 C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) -/* 80156C08 00153B68 FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 80156C0C 00153B6C 4C 40 13 82 */ cror 2, 0, 2 -/* 80156C10 00153B70 40 82 00 50 */ bne lbl_80156C60 -/* 80156C14 00153B74 88 1D 07 43 */ lbz r0, 0x743(r29) -/* 80156C18 00153B78 38 60 00 01 */ li r3, 1 -/* 80156C1C 00153B7C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 80156C20 00153B80 7F A3 EB 78 */ mr r3, r29 -/* 80156C24 00153B84 98 1D 07 43 */ stb r0, 0x743(r29) -/* 80156C28 00153B88 7F C5 F3 78 */ mr r5, r30 -/* 80156C2C 00153B8C 38 80 00 13 */ li r4, 0x13 -/* 80156C30 00153B90 4B EF D7 21 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 80156C34 00153B94 7F A3 EB 78 */ mr r3, r29 -/* 80156C38 00153B98 7F C5 F3 78 */ mr r5, r30 -/* 80156C3C 00153B9C 38 80 00 12 */ li r4, 0x12 -/* 80156C40 00153BA0 4B EF D3 41 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 80156C44 00153BA4 7F A3 EB 78 */ mr r3, r29 -/* 80156C48 00153BA8 7F C4 F3 78 */ mr r4, r30 -/* 80156C4C 00153BAC 48 00 00 F9 */ bl DestroyActorManager__9CParasiteFR13CStateManager -/* 80156C50 00153BB0 80 7D 00 64 */ lwz r3, 0x64(r29) -/* 80156C54 00153BB4 80 9D 06 24 */ lwz r4, 0x624(r29) -/* 80156C58 00153BB8 80 63 00 10 */ lwz r3, 0x10(r3) -/* 80156C5C 00153BBC 4B ED 74 41 */ bl "SubstituteModelData__9CAnimDataFRC29TCachedToken<13CSkinnedModel>" -lbl_80156C60: -/* 80156C60 00153BC0 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 -/* 80156C64 00153BC4 80 01 00 44 */ lwz r0, 0x44(r1) -/* 80156C68 00153BC8 CB E1 00 30 */ lfd f31, 0x30(r1) -/* 80156C6C 00153BCC 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 80156C70 00153BD0 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 80156C74 00153BD4 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 80156C78 00153BD8 7C 08 03 A6 */ mtlr r0 -/* 80156C7C 00153BDC 38 21 00 40 */ addi r1, r1, 0x40 -/* 80156C80 00153BE0 4E 80 00 20 */ blr - -.global SetupIceZoomerVulnerability__9CParasiteFR13CStateManagerRC20CDamageVulnerabilityRC11CHealthInfo -SetupIceZoomerVulnerability__9CParasiteFR13CStateManagerRC20CDamageVulnerabilityRC11CHealthInfo: -/* 80156C84 00153BE4 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80156C88 00153BE8 7C 08 02 A6 */ mflr r0 -/* 80156C8C 00153BEC 90 01 00 34 */ stw r0, 0x34(r1) -/* 80156C90 00153BF0 BF 41 00 18 */ stmw r26, 0x18(r1) -/* 80156C94 00153BF4 7C 7A 1B 78 */ mr r26, r3 -/* 80156C98 00153BF8 7C 9B 23 78 */ mr r27, r4 -/* 80156C9C 00153BFC 7C BC 2B 78 */ mr r28, r5 -/* 80156CA0 00153C00 7C DD 33 78 */ mr r29, r6 -/* 80156CA4 00153C04 3B E0 00 00 */ li r31, 0 -/* 80156CA8 00153C08 48 00 00 78 */ b lbl_80156D20 -lbl_80156CAC: -/* 80156CAC 00153C0C 80 7A 06 20 */ lwz r3, 0x620(r26) -/* 80156CB0 00153C10 7F E4 FB 78 */ mr r4, r31 -/* 80156CB4 00153C14 48 05 05 85 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi -/* 80156CB8 00153C18 A0 03 00 3C */ lhz r0, 0x3c(r3) -/* 80156CBC 00153C1C 7F 63 DB 78 */ mr r3, r27 -/* 80156CC0 00153C20 38 81 00 08 */ addi r4, r1, 8 -/* 80156CC4 00153C24 B0 01 00 0C */ sth r0, 0xc(r1) -/* 80156CC8 00153C28 B0 01 00 08 */ sth r0, 8(r1) -/* 80156CCC 00153C2C 4B EF 58 A9 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80156CD0 00153C30 7C 64 1B 78 */ mr r4, r3 -/* 80156CD4 00153C34 38 61 00 10 */ addi r3, r1, 0x10 -/* 80156CD8 00153C38 4B F5 86 75 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" -/* 80156CDC 00153C3C 83 C3 00 04 */ lwz r30, 4(r3) -/* 80156CE0 00153C40 28 1E 00 00 */ cmplwi r30, 0 -/* 80156CE4 00153C44 41 82 00 38 */ beq lbl_80156D1C -/* 80156CE8 00153C48 7F C3 F3 78 */ mr r3, r30 -/* 80156CEC 00153C4C 7F 84 E3 78 */ mr r4, r28 -/* 80156CF0 00153C50 48 05 1E A9 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability -/* 80156CF4 00153C54 7F C3 F3 78 */ mr r3, r30 -/* 80156CF8 00153C58 7F 64 DB 78 */ mr r4, r27 -/* 80156CFC 00153C5C 81 9E 00 00 */ lwz r12, 0(r30) -/* 80156D00 00153C60 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 80156D04 00153C64 7D 89 03 A6 */ mtctr r12 -/* 80156D08 00153C68 4E 80 04 21 */ bctrl -/* 80156D0C 00153C6C C0 1D 00 00 */ lfs f0, 0(r29) -/* 80156D10 00153C70 D0 03 00 00 */ stfs f0, 0(r3) -/* 80156D14 00153C74 C0 1D 00 04 */ lfs f0, 4(r29) -/* 80156D18 00153C78 D0 03 00 04 */ stfs f0, 4(r3) -lbl_80156D1C: -/* 80156D1C 00153C7C 3B FF 00 01 */ addi r31, r31, 1 -lbl_80156D20: -/* 80156D20 00153C80 80 7A 06 20 */ lwz r3, 0x620(r26) -/* 80156D24 00153C84 48 05 05 25 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv -/* 80156D28 00153C88 7C 1F 18 40 */ cmplw r31, r3 -/* 80156D2C 00153C8C 41 80 FF 80 */ blt lbl_80156CAC -/* 80156D30 00153C90 BB 41 00 18 */ lmw r26, 0x18(r1) -/* 80156D34 00153C94 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80156D38 00153C98 7C 08 03 A6 */ mtlr r0 -/* 80156D3C 00153C9C 38 21 00 30 */ addi r1, r1, 0x30 -/* 80156D40 00153CA0 4E 80 00 20 */ blr - -.global DestroyActorManager__9CParasiteFR13CStateManager -DestroyActorManager__9CParasiteFR13CStateManager: -/* 80156D44 00153CA4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80156D48 00153CA8 7C 08 02 A6 */ mflr r0 -/* 80156D4C 00153CAC 90 01 00 14 */ stw r0, 0x14(r1) -/* 80156D50 00153CB0 80 63 06 20 */ lwz r3, 0x620(r3) -/* 80156D54 00153CB4 48 05 06 71 */ bl Destroy__22CCollisionActorManagerCFR13CStateManager -/* 80156D58 00153CB8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80156D5C 00153CBC 7C 08 03 A6 */ mtlr r0 -/* 80156D60 00153CC0 38 21 00 10 */ addi r1, r1, 0x10 -/* 80156D64 00153CC4 4E 80 00 20 */ blr - -.global SetupIceZoomerCollision__9CParasiteFR13CStateManager -SetupIceZoomerCollision__9CParasiteFR13CStateManager: -/* 80156D68 00153CC8 94 21 FF 10 */ stwu r1, -0xf0(r1) -/* 80156D6C 00153CCC 7C 08 02 A6 */ mflr r0 -/* 80156D70 00153CD0 90 01 00 F4 */ stw r0, 0xf4(r1) -/* 80156D74 00153CD4 38 00 00 00 */ li r0, 0 -/* 80156D78 00153CD8 BF 41 00 D8 */ stmw r26, 0xd8(r1) -/* 80156D7C 00153CDC 7C 7E 1B 78 */ mr r30, r3 -/* 80156D80 00153CE0 7C 9F 23 78 */ mr r31, r4 -/* 80156D84 00153CE4 38 61 00 40 */ addi r3, r1, 0x40 -/* 80156D88 00153CE8 38 80 00 02 */ li r4, 2 -/* 80156D8C 00153CEC 90 01 00 44 */ stw r0, 0x44(r1) -/* 80156D90 00153CF0 90 01 00 48 */ stw r0, 0x48(r1) -/* 80156D94 00153CF4 90 01 00 4C */ stw r0, 0x4c(r1) -/* 80156D98 00153CF8 4B FF FA 21 */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" -/* 80156D9C 00153CFC 80 7E 00 64 */ lwz r3, 0x64(r30) -/* 80156DA0 00153D00 3B 82 9E 48 */ addi r28, r2, lbl_805ABB68@sda21 -/* 80156DA4 00153D04 80 82 9E 48 */ lwz r4, lbl_805ABB68@sda21(r2) -/* 80156DA8 00153D08 3B 61 00 7C */ addi r27, r1, 0x7c -/* 80156DAC 00153D0C 83 A3 00 10 */ lwz r29, 0x10(r3) -/* 80156DB0 00153D10 3B 41 00 C0 */ addi r26, r1, 0xc0 -/* 80156DB4 00153D14 38 61 00 30 */ addi r3, r1, 0x30 -/* 80156DB8 00153D18 4B EA DF 01 */ bl string_l__4rstlFPCc -/* 80156DBC 00153D1C 80 9C 00 00 */ lwz r4, 0(r28) -/* 80156DC0 00153D20 38 61 00 20 */ addi r3, r1, 0x20 -/* 80156DC4 00153D24 4B EA DE F5 */ bl string_l__4rstlFPCc -/* 80156DC8 00153D28 7F A4 EB 78 */ mr r4, r29 -/* 80156DCC 00153D2C 38 61 00 08 */ addi r3, r1, 8 -/* 80156DD0 00153D30 38 A1 00 30 */ addi r5, r1, 0x30 -/* 80156DD4 00153D34 4B ED 7A 65 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80156DD8 00153D38 88 01 00 08 */ lbz r0, 8(r1) -/* 80156DDC 00153D3C 38 61 00 50 */ addi r3, r1, 0x50 -/* 80156DE0 00153D40 C0 42 9E 54 */ lfs f2, lbl_805ABB74@sda21(r2) -/* 80156DE4 00153D44 38 81 00 0C */ addi r4, r1, 0xc -/* 80156DE8 00153D48 98 01 00 0C */ stb r0, 0xc(r1) -/* 80156DEC 00153D4C 38 A1 00 20 */ addi r5, r1, 0x20 -/* 80156DF0 00153D50 C0 3C 00 04 */ lfs f1, 4(r28) -/* 80156DF4 00153D54 48 05 1A 19 */ bl "SphereCollision__26CJointCollisionDescriptionF6CSegIdfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" -/* 80156DF8 00153D58 80 E1 00 50 */ lwz r7, 0x50(r1) -/* 80156DFC 00153D5C 7F 43 D3 78 */ mr r3, r26 -/* 80156E00 00153D60 80 C1 00 54 */ lwz r6, 0x54(r1) -/* 80156E04 00153D64 7F 64 DB 78 */ mr r4, r27 -/* 80156E08 00153D68 88 A1 00 58 */ lbz r5, 0x58(r1) -/* 80156E0C 00153D6C 88 01 00 59 */ lbz r0, 0x59(r1) -/* 80156E10 00153D70 C0 E1 00 5C */ lfs f7, 0x5c(r1) -/* 80156E14 00153D74 C0 C1 00 60 */ lfs f6, 0x60(r1) -/* 80156E18 00153D78 C0 A1 00 64 */ lfs f5, 0x64(r1) -/* 80156E1C 00153D7C C0 81 00 68 */ lfs f4, 0x68(r1) -/* 80156E20 00153D80 C0 61 00 6C */ lfs f3, 0x6c(r1) -/* 80156E24 00153D84 C0 41 00 70 */ lfs f2, 0x70(r1) -/* 80156E28 00153D88 C0 21 00 74 */ lfs f1, 0x74(r1) -/* 80156E2C 00153D8C C0 01 00 78 */ lfs f0, 0x78(r1) -/* 80156E30 00153D90 90 E1 00 94 */ stw r7, 0x94(r1) -/* 80156E34 00153D94 90 C1 00 98 */ stw r6, 0x98(r1) -/* 80156E38 00153D98 98 A1 00 9C */ stb r5, 0x9c(r1) -/* 80156E3C 00153D9C 98 01 00 9D */ stb r0, 0x9d(r1) -/* 80156E40 00153DA0 D0 E1 00 A0 */ stfs f7, 0xa0(r1) -/* 80156E44 00153DA4 D0 C1 00 A4 */ stfs f6, 0xa4(r1) -/* 80156E48 00153DA8 D0 A1 00 A8 */ stfs f5, 0xa8(r1) -/* 80156E4C 00153DAC D0 81 00 AC */ stfs f4, 0xac(r1) -/* 80156E50 00153DB0 D0 61 00 B0 */ stfs f3, 0xb0(r1) -/* 80156E54 00153DB4 D0 41 00 B4 */ stfs f2, 0xb4(r1) -/* 80156E58 00153DB8 D0 21 00 B8 */ stfs f1, 0xb8(r1) -/* 80156E5C 00153DBC D0 01 00 BC */ stfs f0, 0xbc(r1) -/* 80156E60 00153DC0 48 1E 73 01 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80156E64 00153DC4 A0 01 00 8C */ lhz r0, 0x8c(r1) -/* 80156E68 00153DC8 28 1B 00 00 */ cmplwi r27, 0 -/* 80156E6C 00153DCC C0 01 00 90 */ lfs f0, 0x90(r1) -/* 80156E70 00153DD0 B0 01 00 D0 */ sth r0, 0xd0(r1) -/* 80156E74 00153DD4 D0 01 00 D4 */ stfs f0, 0xd4(r1) -/* 80156E78 00153DD8 41 82 00 0C */ beq lbl_80156E84 -/* 80156E7C 00153DDC 7F 63 DB 78 */ mr r3, r27 -/* 80156E80 00153DE0 48 1E 6C 61 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -lbl_80156E84: -/* 80156E84 00153DE4 38 61 00 20 */ addi r3, r1, 0x20 -/* 80156E88 00153DE8 48 1E 6C 59 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 80156E8C 00153DEC 38 61 00 30 */ addi r3, r1, 0x30 -/* 80156E90 00153DF0 48 1E 6C 51 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 80156E94 00153DF4 38 61 00 40 */ addi r3, r1, 0x40 -/* 80156E98 00153DF8 38 81 00 94 */ addi r4, r1, 0x94 -/* 80156E9C 00153DFC 4B FF F3 95 */ bl sub_80156230 -/* 80156EA0 00153E00 28 1A 00 00 */ cmplwi r26, 0 -/* 80156EA4 00153E04 41 82 00 0C */ beq lbl_80156EB0 -/* 80156EA8 00153E08 7F 43 D3 78 */ mr r3, r26 -/* 80156EAC 00153E0C 48 1E 6C 35 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -lbl_80156EB0: -/* 80156EB0 00153E10 7F C3 F3 78 */ mr r3, r30 -/* 80156EB4 00153E14 7F E5 FB 78 */ mr r5, r31 -/* 80156EB8 00153E18 38 80 00 13 */ li r4, 0x13 -/* 80156EBC 00153E1C 4B EF D0 C5 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 80156EC0 00153E20 7F C3 F3 78 */ mr r3, r30 -/* 80156EC4 00153E24 7F E5 FB 78 */ mr r5, r31 -/* 80156EC8 00153E28 38 80 00 12 */ li r4, 0x12 -/* 80156ECC 00153E2C 4B EF D4 85 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 80156ED0 00153E30 3C 80 80 3D */ lis r4, lbl_803D0330@ha -/* 80156ED4 00153E34 38 60 00 18 */ li r3, 0x18 -/* 80156ED8 00153E38 38 84 03 30 */ addi r4, r4, lbl_803D0330@l -/* 80156EDC 00153E3C 38 A0 00 00 */ li r5, 0 -/* 80156EE0 00153E40 38 84 00 09 */ addi r4, r4, 9 -/* 80156EE4 00153E44 48 1B E9 89 */ bl __nw__FUlPCcPCc -/* 80156EE8 00153E48 7C 7D 1B 79 */ or. r29, r3, r3 -/* 80156EEC 00153E4C 41 82 00 3C */ beq lbl_80156F28 -/* 80156EF0 00153E50 88 1E 00 30 */ lbz r0, 0x30(r30) -/* 80156EF4 00153E54 7F E4 FB 78 */ mr r4, r31 -/* 80156EF8 00153E58 81 3E 00 04 */ lwz r9, 4(r30) -/* 80156EFC 00153E5C 38 A1 00 14 */ addi r5, r1, 0x14 -/* 80156F00 00153E60 54 08 CF FE */ rlwinm r8, r0, 0x19, 0x1f, 0x1f -/* 80156F04 00153E64 38 C1 00 1C */ addi r6, r1, 0x1c -/* 80156F08 00153E68 91 21 00 1C */ stw r9, 0x1c(r1) -/* 80156F0C 00153E6C 38 E1 00 40 */ addi r7, r1, 0x40 -/* 80156F10 00153E70 A0 1E 00 08 */ lhz r0, 8(r30) -/* 80156F14 00153E74 91 21 00 18 */ stw r9, 0x18(r1) -/* 80156F18 00153E78 B0 01 00 10 */ sth r0, 0x10(r1) -/* 80156F1C 00153E7C B0 01 00 14 */ sth r0, 0x14(r1) -/* 80156F20 00153E80 48 05 0A 11 */ bl "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b" -/* 80156F24 00153E84 7C 7D 1B 78 */ mr r29, r3 -lbl_80156F28: -/* 80156F28 00153E88 80 7E 06 20 */ lwz r3, 0x620(r30) -/* 80156F2C 00153E8C 38 80 00 01 */ li r4, 1 -/* 80156F30 00153E90 48 05 09 AD */ bl sub_801a78dc -/* 80156F34 00153E94 93 BE 06 20 */ stw r29, 0x620(r30) -/* 80156F38 00153E98 38 61 00 40 */ addi r3, r1, 0x40 -/* 80156F3C 00153E9C 38 80 FF FF */ li r4, -1 -/* 80156F40 00153EA0 4B FF F3 ED */ bl sub_8015632c -/* 80156F44 00153EA4 BB 41 00 D8 */ lmw r26, 0xd8(r1) -/* 80156F48 00153EA8 80 01 00 F4 */ lwz r0, 0xf4(r1) -/* 80156F4C 00153EAC 7C 08 03 A6 */ mtlr r0 -/* 80156F50 00153EB0 38 21 00 F0 */ addi r1, r1, 0xf0 -/* 80156F54 00153EB4 4E 80 00 20 */ blr - -.global GetContactDamage__9CParasiteCFv -GetContactDamage__9CParasiteCFv: -/* 80156F58 00153EB8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80156F5C 00153EBC 7C 08 02 A6 */ mflr r0 -/* 80156F60 00153EC0 90 01 00 14 */ stw r0, 0x14(r1) -/* 80156F64 00153EC4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80156F68 00153EC8 7C 7F 1B 78 */ mr r31, r3 -/* 80156F6C 00153ECC 80 04 05 D0 */ lwz r0, 0x5d0(r4) -/* 80156F70 00153ED0 2C 00 00 01 */ cmpwi r0, 1 -/* 80156F74 00153ED4 41 82 00 08 */ beq lbl_80156F7C -/* 80156F78 00153ED8 48 00 00 54 */ b lbl_80156FCC -lbl_80156F7C: -/* 80156F7C 00153EDC 88 04 07 43 */ lbz r0, 0x743(r4) -/* 80156F80 00153EE0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80156F84 00153EE4 41 82 00 40 */ beq lbl_80156FC4 -/* 80156F88 00153EE8 80 04 06 B4 */ lwz r0, 0x6b4(r4) -/* 80156F8C 00153EEC 90 1F 00 00 */ stw r0, 0(r31) -/* 80156F90 00153EF0 88 04 06 B8 */ lbz r0, 0x6b8(r4) -/* 80156F94 00153EF4 98 1F 00 04 */ stb r0, 4(r31) -/* 80156F98 00153EF8 C0 04 06 BC */ lfs f0, 0x6bc(r4) -/* 80156F9C 00153EFC D0 1F 00 08 */ stfs f0, 8(r31) -/* 80156FA0 00153F00 C0 04 06 C0 */ lfs f0, 0x6c0(r4) -/* 80156FA4 00153F04 D0 1F 00 0C */ stfs f0, 0xc(r31) -/* 80156FA8 00153F08 C0 04 06 C4 */ lfs f0, 0x6c4(r4) -/* 80156FAC 00153F0C D0 1F 00 10 */ stfs f0, 0x10(r31) -/* 80156FB0 00153F10 C0 04 06 C8 */ lfs f0, 0x6c8(r4) -/* 80156FB4 00153F14 D0 1F 00 14 */ stfs f0, 0x14(r31) -/* 80156FB8 00153F18 88 04 06 CC */ lbz r0, 0x6cc(r4) -/* 80156FBC 00153F1C 98 1F 00 18 */ stb r0, 0x18(r31) -/* 80156FC0 00153F20 48 00 00 10 */ b lbl_80156FD0 -lbl_80156FC4: -/* 80156FC4 00153F24 4B F2 1A 01 */ bl GetContactDamage__10CPatternedCFv -/* 80156FC8 00153F28 48 00 00 08 */ b lbl_80156FD0 -lbl_80156FCC: -/* 80156FCC 00153F2C 4B F2 19 F9 */ bl GetContactDamage__10CPatternedCFv -lbl_80156FD0: -/* 80156FD0 00153F30 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80156FD4 00153F34 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80156FD8 00153F38 7C 08 03 A6 */ mtlr r0 -/* 80156FDC 00153F3C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80156FE0 00153F40 4E 80 00 20 */ blr - -.global GetDamageVulnerability__9CParasiteCFv -GetDamageVulnerability__9CParasiteCFv: -/* 80156FE4 00153F44 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80156FE8 00153F48 7C 08 02 A6 */ mflr r0 -/* 80156FEC 00153F4C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80156FF0 00153F50 80 03 05 D0 */ lwz r0, 0x5d0(r3) -/* 80156FF4 00153F54 2C 00 00 02 */ cmpwi r0, 2 -/* 80156FF8 00153F58 41 82 00 4C */ beq lbl_80157044 -/* 80156FFC 00153F5C 40 80 00 10 */ bge lbl_8015700C -/* 80157000 00153F60 2C 00 00 01 */ cmpwi r0, 1 -/* 80157004 00153F64 40 80 00 14 */ bge lbl_80157018 -/* 80157008 00153F68 48 00 00 3C */ b lbl_80157044 -lbl_8015700C: -/* 8015700C 00153F6C 2C 00 00 04 */ cmpwi r0, 4 -/* 80157010 00153F70 40 80 00 34 */ bge lbl_80157044 -/* 80157014 00153F74 48 00 00 18 */ b lbl_8015702C -lbl_80157018: -/* 80157018 00153F78 88 03 07 43 */ lbz r0, 0x743(r3) -/* 8015701C 00153F7C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80157020 00153F80 41 82 00 24 */ beq lbl_80157044 -/* 80157024 00153F84 38 63 06 4C */ addi r3, r3, 0x64c -/* 80157028 00153F88 48 00 00 20 */ b lbl_80157048 -lbl_8015702C: -/* 8015702C 00153F8C 88 03 07 43 */ lbz r0, 0x743(r3) -/* 80157030 00153F90 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 80157034 00153F94 40 82 00 10 */ bne lbl_80157044 -/* 80157038 00153F98 3C 60 80 57 */ lis r3, lbl_8056D718@ha -/* 8015703C 00153F9C 38 63 D7 18 */ addi r3, r3, lbl_8056D718@l -/* 80157040 00153FA0 48 00 00 08 */ b lbl_80157048 -lbl_80157044: -/* 80157044 00153FA4 4B F4 BD 2D */ bl GetDamageVulnerability__3CAiCFv -lbl_80157048: -/* 80157048 00153FA8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015704C 00153FAC 7C 08 03 A6 */ mtlr r0 -/* 80157050 00153FB0 38 21 00 10 */ addi r1, r1, 0x10 -/* 80157054 00153FB4 4E 80 00 20 */ blr - -.global Render__9CParasiteCFRC13CStateManager -Render__9CParasiteCFRC13CStateManager: -/* 80157058 00153FB8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015705C 00153FBC 7C 08 02 A6 */ mflr r0 -/* 80157060 00153FC0 90 01 00 14 */ stw r0, 0x14(r1) -/* 80157064 00153FC4 48 11 16 69 */ bl Render__11CWallWalkerCFRC13CStateManager -/* 80157068 00153FC8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015706C 00153FCC 7C 08 03 A6 */ mtlr r0 -/* 80157070 00153FD0 38 21 00 10 */ addi r1, r1, 0x10 -/* 80157074 00153FD4 4E 80 00 20 */ blr - -.global DoFlockingBehavior__9CParasiteFR13CStateManager -DoFlockingBehavior__9CParasiteFR13CStateManager: -/* 80157078 00153FD8 94 21 ED 80 */ stwu r1, -0x1280(r1) -/* 8015707C 00153FDC 7C 08 02 A6 */ mflr r0 -/* 80157080 00153FE0 90 01 12 84 */ stw r0, 0x1284(r1) -/* 80157084 00153FE4 38 00 12 78 */ li r0, 0x1278 -/* 80157088 00153FE8 DB E1 12 70 */ stfd f31, 0x1270(r1) -/* 8015708C 00153FEC 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 -/* 80157090 00153FF0 BF 41 12 58 */ stmw r26, 0x1258(r1) -/* 80157094 00153FF4 7C 7A 1B 78 */ mr r26, r3 -/* 80157098 00153FF8 7C 9B 23 78 */ mr r27, r4 -/* 8015709C 00153FFC C0 43 00 5C */ lfs f2, 0x5c(r3) -/* 801570A0 00154000 38 00 00 00 */ li r0, 0 -/* 801570A4 00154004 C0 23 00 4C */ lfs f1, 0x4c(r3) -/* 801570A8 00154008 38 61 02 30 */ addi r3, r1, 0x230 -/* 801570AC 0015400C C0 1A 00 3C */ lfs f0, 0x3c(r26) -/* 801570B0 00154010 38 81 01 24 */ addi r4, r1, 0x124 -/* 801570B4 00154014 38 A1 01 18 */ addi r5, r1, 0x118 -/* 801570B8 00154018 D0 01 01 48 */ stfs f0, 0x148(r1) -/* 801570BC 0015401C D0 21 01 4C */ stfs f1, 0x14c(r1) -/* 801570C0 00154020 D0 41 01 50 */ stfs f2, 0x150(r1) -/* 801570C4 00154024 90 01 0A 4C */ stw r0, 0xa4c(r1) -/* 801570C8 00154028 C0 FA 06 E4 */ lfs f7, 0x6e4(r26) -/* 801570CC 0015402C C0 DA 00 60 */ lfs f6, 0x60(r26) -/* 801570D0 00154030 C0 BA 00 50 */ lfs f5, 0x50(r26) -/* 801570D4 00154034 C0 3A 00 40 */ lfs f1, 0x40(r26) -/* 801570D8 00154038 EC 06 38 2A */ fadds f0, f6, f7 -/* 801570DC 0015403C EC 65 38 2A */ fadds f3, f5, f7 -/* 801570E0 00154040 EC 81 38 2A */ fadds f4, f1, f7 -/* 801570E4 00154044 EC 41 38 28 */ fsubs f2, f1, f7 -/* 801570E8 00154048 D0 01 01 20 */ stfs f0, 0x120(r1) -/* 801570EC 0015404C EC 25 38 28 */ fsubs f1, f5, f7 -/* 801570F0 00154050 EC 06 38 28 */ fsubs f0, f6, f7 -/* 801570F4 00154054 D0 81 01 18 */ stfs f4, 0x118(r1) -/* 801570F8 00154058 D0 61 01 1C */ stfs f3, 0x11c(r1) -/* 801570FC 0015405C D0 41 01 24 */ stfs f2, 0x124(r1) -/* 80157100 00154060 D0 21 01 28 */ stfs f1, 0x128(r1) -/* 80157104 00154064 D0 01 01 2C */ stfs f0, 0x12c(r1) -/* 80157108 00154068 48 1E 14 01 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 8015710C 0015406C 3C 60 2A AB */ lis r3, 0x2AAAAAAB@ha -/* 80157110 00154070 A8 9A 05 D4 */ lha r4, 0x5d4(r26) -/* 80157114 00154074 38 03 AA AB */ addi r0, r3, 0x2AAAAAAB@l -/* 80157118 00154078 7C 60 20 96 */ mulhw r3, r0, r4 -/* 8015711C 0015407C 54 60 0F FE */ srwi r0, r3, 0x1f -/* 80157120 00154080 7C 03 02 14 */ add r0, r3, r0 -/* 80157124 00154084 1C 00 00 06 */ mulli r0, r0, 6 -/* 80157128 00154088 7C 00 20 51 */ subf. r0, r0, r4 -/* 8015712C 0015408C 40 82 03 34 */ bne lbl_80157460 -/* 80157130 00154090 38 60 00 00 */ li r3, 0 -/* 80157134 00154094 3B C1 02 4C */ addi r30, r1, 0x24c -/* 80157138 00154098 2C 03 00 00 */ cmpwi r3, 0 -/* 8015713C 0015409C 90 61 02 48 */ stw r3, 0x248(r1) -/* 80157140 001540A0 7C 64 1B 78 */ mr r4, r3 -/* 80157144 001540A4 40 81 00 40 */ ble lbl_80157184 -/* 80157148 001540A8 2C 03 00 08 */ cmpwi r3, 8 -/* 8015714C 001540AC 38 A0 FF F8 */ li r5, -8 -/* 80157150 001540B0 40 81 00 20 */ ble lbl_80157170 -/* 80157154 001540B4 38 00 FF FF */ li r0, -1 -/* 80157158 001540B8 54 00 E8 FE */ srwi r0, r0, 3 -/* 8015715C 001540BC 7C 09 03 A6 */ mtctr r0 -/* 80157160 001540C0 2C 05 00 00 */ cmpwi r5, 0 -/* 80157164 001540C4 40 81 00 0C */ ble lbl_80157170 -lbl_80157168: -/* 80157168 001540C8 38 84 00 08 */ addi r4, r4, 8 -/* 8015716C 001540CC 42 00 FF FC */ bdnz lbl_80157168 -lbl_80157170: -/* 80157170 001540D0 7C 04 00 D0 */ neg r0, r4 -/* 80157174 001540D4 7C 09 03 A6 */ mtctr r0 -/* 80157178 001540D8 7C 04 18 00 */ cmpw r4, r3 -/* 8015717C 001540DC 40 80 00 08 */ bge lbl_80157184 -lbl_80157180: -/* 80157180 001540E0 42 00 00 00 */ bdnz lbl_80157180 -lbl_80157184: -/* 80157184 001540E4 88 0D A4 18 */ lbz r0, lbl_805A8FD8@sda21(r13) -/* 80157188 001540E8 38 60 00 00 */ li r3, 0 -/* 8015718C 001540EC 90 61 02 48 */ stw r3, 0x248(r1) -/* 80157190 001540F0 7C 00 07 75 */ extsb. r0, r0 -/* 80157194 001540F4 40 82 00 40 */ bne lbl_801571D4 -/* 80157198 001540F8 80 AD 8C A0 */ lwz r5, lbl_805A7860@sda21(r13) -/* 8015719C 001540FC 38 60 00 00 */ li r3, 0 -/* 801571A0 00154100 38 80 00 01 */ li r4, 1 -/* 801571A4 00154104 48 23 2D 51 */ bl __shl2i -/* 801571A8 00154108 3C A0 80 47 */ lis r5, lbl_8046C788@ha -/* 801571AC 0015410C 38 C0 00 01 */ li r6, 1 -/* 801571B0 00154110 38 A5 C7 88 */ addi r5, r5, lbl_8046C788@l -/* 801571B4 00154114 38 00 00 00 */ li r0, 0 -/* 801571B8 00154118 90 C1 02 28 */ stw r6, 0x228(r1) -/* 801571BC 0015411C 90 85 00 04 */ stw r4, 4(r5) -/* 801571C0 00154120 90 65 00 00 */ stw r3, 0(r5) -/* 801571C4 00154124 90 05 00 0C */ stw r0, 0xc(r5) -/* 801571C8 00154128 90 05 00 08 */ stw r0, 8(r5) -/* 801571CC 0015412C 90 C5 00 10 */ stw r6, 0x10(r5) -/* 801571D0 00154130 98 CD A4 18 */ stb r6, lbl_805A8FD8@sda21(r13) -lbl_801571D4: -/* 801571D4 00154134 C0 1A 06 E8 */ lfs f0, 0x6e8(r26) -/* 801571D8 00154138 3C 60 80 47 */ lis r3, lbl_8046C788@ha -/* 801571DC 0015413C 38 C3 C7 88 */ addi r6, r3, lbl_8046C788@l -/* 801571E0 00154140 C0 22 9E 58 */ lfs f1, lbl_805ABB78@sda21(r2) -/* 801571E4 00154144 EC 00 00 32 */ fmuls f0, f0, f0 -/* 801571E8 00154148 7F 63 DB 78 */ mr r3, r27 -/* 801571EC 0015414C 38 81 02 48 */ addi r4, r1, 0x248 -/* 801571F0 00154150 38 A1 02 30 */ addi r5, r1, 0x230 -/* 801571F4 00154154 3B A0 00 00 */ li r29, 0 -/* 801571F8 00154158 38 E0 00 00 */ li r7, 0 -/* 801571FC 0015415C EF E1 00 2A */ fadds f31, f1, f0 -/* 80157200 00154160 4B EF 55 21 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" -/* 80157204 00154164 7F DC F3 78 */ mr r28, r30 -/* 80157208 00154168 3B E1 0A 50 */ addi r31, r1, 0xa50 -/* 8015720C 0015416C 48 00 00 D0 */ b lbl_801572DC -lbl_80157210: -/* 80157210 00154170 A0 1C 00 00 */ lhz r0, 0(r28) -/* 80157214 00154174 7F 63 DB 78 */ mr r3, r27 -/* 80157218 00154178 38 81 00 08 */ addi r4, r1, 8 -/* 8015721C 0015417C B0 01 00 08 */ sth r0, 8(r1) -/* 80157220 00154180 4B EF 53 55 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80157224 00154184 7C 64 1B 78 */ mr r4, r3 -/* 80157228 00154188 38 61 00 0C */ addi r3, r1, 0xc -/* 8015722C 0015418C 4B F4 E2 0D */ bl sub_800a5438 -/* 80157230 00154190 4B F4 E1 DD */ bl "CastTo<9CParasite>__10CPatternedFP7CEntity" -/* 80157234 00154194 28 03 00 00 */ cmplwi r3, 0 -/* 80157238 00154198 41 82 00 A0 */ beq lbl_801572D8 -/* 8015723C 0015419C A0 A3 00 08 */ lhz r5, 8(r3) -/* 80157240 001541A0 A0 1A 00 08 */ lhz r0, 8(r26) -/* 80157244 001541A4 7C 05 00 40 */ cmplw r5, r0 -/* 80157248 001541A8 41 82 00 90 */ beq lbl_801572D8 -/* 8015724C 001541AC 88 03 04 00 */ lbz r0, 0x400(r3) -/* 80157250 001541B0 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 80157254 001541B4 41 82 00 84 */ beq lbl_801572D8 -/* 80157258 001541B8 80 01 0A 4C */ lwz r0, 0xa4c(r1) -/* 8015725C 001541BC 54 00 08 3C */ slwi r0, r0, 1 -/* 80157260 001541C0 7C 9F 02 15 */ add. r4, r31, r0 -/* 80157264 001541C4 41 82 00 08 */ beq lbl_8015726C -/* 80157268 001541C8 B0 A4 00 00 */ sth r5, 0(r4) -lbl_8015726C: -/* 8015726C 001541CC 80 81 0A 4C */ lwz r4, 0xa4c(r1) -/* 80157270 001541D0 38 04 00 01 */ addi r0, r4, 1 -/* 80157274 001541D4 90 01 0A 4C */ stw r0, 0xa4c(r1) -/* 80157278 001541D8 C0 C3 00 50 */ lfs f6, 0x50(r3) -/* 8015727C 001541DC C0 1A 00 50 */ lfs f0, 0x50(r26) -/* 80157280 001541E0 C0 23 00 40 */ lfs f1, 0x40(r3) -/* 80157284 001541E4 EC A6 00 28 */ fsubs f5, f6, f0 -/* 80157288 001541E8 C0 1A 00 40 */ lfs f0, 0x40(r26) -/* 8015728C 001541EC C0 E3 00 60 */ lfs f7, 0x60(r3) -/* 80157290 001541F0 EC 61 00 28 */ fsubs f3, f1, f0 -/* 80157294 001541F4 C0 5A 00 60 */ lfs f2, 0x60(r26) -/* 80157298 001541F8 EC 05 01 72 */ fmuls f0, f5, f5 -/* 8015729C 001541FC EC 87 10 28 */ fsubs f4, f7, f2 -/* 801572A0 00154200 D0 21 01 00 */ stfs f1, 0x100(r1) -/* 801572A4 00154204 EC 23 00 F2 */ fmuls f1, f3, f3 -/* 801572A8 00154208 D0 C1 01 04 */ stfs f6, 0x104(r1) -/* 801572AC 0015420C EC 44 01 32 */ fmuls f2, f4, f4 -/* 801572B0 00154210 EC 01 00 2A */ fadds f0, f1, f0 -/* 801572B4 00154214 D0 E1 01 08 */ stfs f7, 0x108(r1) -/* 801572B8 00154218 D0 61 01 0C */ stfs f3, 0x10c(r1) -/* 801572BC 0015421C EC 02 00 2A */ fadds f0, f2, f0 -/* 801572C0 00154220 D0 A1 01 10 */ stfs f5, 0x110(r1) -/* 801572C4 00154224 FC 00 F8 40 */ fcmpo cr0, f0, f31 -/* 801572C8 00154228 D0 81 01 14 */ stfs f4, 0x114(r1) -/* 801572CC 0015422C 40 80 00 0C */ bge lbl_801572D8 -/* 801572D0 00154230 FF E0 00 90 */ fmr f31, f0 -/* 801572D4 00154234 7C 7D 1B 78 */ mr r29, r3 -lbl_801572D8: -/* 801572D8 00154238 3B 9C 00 02 */ addi r28, r28, 2 -lbl_801572DC: -/* 801572DC 0015423C 80 01 02 48 */ lwz r0, 0x248(r1) -/* 801572E0 00154240 54 00 08 3C */ slwi r0, r0, 1 -/* 801572E4 00154244 7C 1E 02 14 */ add r0, r30, r0 -/* 801572E8 00154248 7C 1C 00 40 */ cmplw r28, r0 -/* 801572EC 0015424C 40 82 FF 24 */ bne lbl_80157210 -/* 801572F0 00154250 28 1D 00 00 */ cmplwi r29, 0 -/* 801572F4 00154254 41 82 00 78 */ beq lbl_8015736C -/* 801572F8 00154258 C0 3A 06 EC */ lfs f1, 0x6ec(r26) -/* 801572FC 0015425C C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) -/* 80157300 00154260 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80157304 00154264 40 81 00 68 */ ble lbl_8015736C -/* 80157308 00154268 C0 3A 06 E8 */ lfs f1, 0x6e8(r26) -/* 8015730C 0015426C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80157310 00154270 40 81 00 5C */ ble lbl_8015736C -/* 80157314 00154274 C3 FA 06 04 */ lfs f31, 0x604(r26) -/* 80157318 00154278 7F 45 D3 78 */ mr r5, r26 -/* 8015731C 0015427C C0 7D 00 60 */ lfs f3, 0x60(r29) -/* 80157320 00154280 38 61 00 F4 */ addi r3, r1, 0xf4 -/* 80157324 00154284 C0 5D 00 50 */ lfs f2, 0x50(r29) -/* 80157328 00154288 38 9A 04 5C */ addi r4, r26, 0x45c -/* 8015732C 0015428C C0 1D 00 40 */ lfs f0, 0x40(r29) -/* 80157330 00154290 38 C1 00 E8 */ addi r6, r1, 0xe8 -/* 80157334 00154294 D0 01 00 E8 */ stfs f0, 0xe8(r1) -/* 80157338 00154298 D0 41 00 EC */ stfs f2, 0xec(r1) -/* 8015733C 0015429C D0 61 00 F0 */ stfs f3, 0xf0(r1) -/* 80157340 001542A0 4B FE 75 B1 */ bl Separation__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff -/* 80157344 001542A4 C0 01 00 F4 */ lfs f0, 0xf4(r1) -/* 80157348 001542A8 C0 41 00 F8 */ lfs f2, 0xf8(r1) -/* 8015734C 001542AC EC 1F 00 32 */ fmuls f0, f31, f0 -/* 80157350 001542B0 C0 21 00 FC */ lfs f1, 0xfc(r1) -/* 80157354 001542B4 EC 5F 00 B2 */ fmuls f2, f31, f2 -/* 80157358 001542B8 EC 3F 00 72 */ fmuls f1, f31, f1 -/* 8015735C 001542BC D0 1A 06 28 */ stfs f0, 0x628(r26) -/* 80157360 001542C0 D0 5A 06 2C */ stfs f2, 0x62c(r26) -/* 80157364 001542C4 D0 3A 06 30 */ stfs f1, 0x630(r26) -/* 80157368 001542C8 48 00 00 20 */ b lbl_80157388 -lbl_8015736C: -/* 8015736C 001542CC 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80157370 001542D0 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) -/* 80157374 001542D4 D0 1A 06 28 */ stfs f0, 0x628(r26) -/* 80157378 001542D8 C0 03 00 04 */ lfs f0, 4(r3) -/* 8015737C 001542DC D0 1A 06 2C */ stfs f0, 0x62c(r26) -/* 80157380 001542E0 C0 03 00 08 */ lfs f0, 8(r3) -/* 80157384 001542E4 D0 1A 06 30 */ stfs f0, 0x630(r26) -lbl_80157388: -/* 80157388 001542E8 C3 FA 06 04 */ lfs f31, 0x604(r26) -/* 8015738C 001542EC 7F 45 D3 78 */ mr r5, r26 -/* 80157390 001542F0 C0 22 9E 5C */ lfs f1, lbl_805ABB7C@sda21(r2) -/* 80157394 001542F4 7F 67 DB 78 */ mr r7, r27 -/* 80157398 001542F8 38 61 00 DC */ addi r3, r1, 0xdc -/* 8015739C 001542FC 38 9A 04 5C */ addi r4, r26, 0x45c -/* 801573A0 00154300 38 C1 0A 4C */ addi r6, r1, 0xa4c -/* 801573A4 00154304 4B FE 72 7D */ bl "Cohesion__18CSteeringBehaviorsCFRC13CPhysicsActorRQ24rstl32reserved_vector<9TUniqueId,1024>fRC13CStateManager" -/* 801573A8 00154308 C0 01 00 DC */ lfs f0, 0xdc(r1) -/* 801573AC 0015430C 7F 45 D3 78 */ mr r5, r26 -/* 801573B0 00154310 C0 41 00 E0 */ lfs f2, 0xe0(r1) -/* 801573B4 00154314 7F 67 DB 78 */ mr r7, r27 -/* 801573B8 00154318 EC 1F 00 32 */ fmuls f0, f31, f0 -/* 801573BC 0015431C C0 21 00 E4 */ lfs f1, 0xe4(r1) -/* 801573C0 00154320 EC 5F 00 B2 */ fmuls f2, f31, f2 -/* 801573C4 00154324 38 61 00 D0 */ addi r3, r1, 0xd0 -/* 801573C8 00154328 EC 3F 00 72 */ fmuls f1, f31, f1 -/* 801573CC 0015432C 38 9A 04 5C */ addi r4, r26, 0x45c -/* 801573D0 00154330 D0 1A 06 34 */ stfs f0, 0x634(r26) -/* 801573D4 00154334 38 C1 0A 4C */ addi r6, r1, 0xa4c -/* 801573D8 00154338 D0 5A 06 38 */ stfs f2, 0x638(r26) -/* 801573DC 0015433C D0 3A 06 3C */ stfs f1, 0x63c(r26) -/* 801573E0 00154340 C3 FA 06 04 */ lfs f31, 0x604(r26) -/* 801573E4 00154344 4B FE 73 99 */ bl "Alignment__18CSteeringBehaviorsCFRC13CPhysicsActorRQ24rstl32reserved_vector<9TUniqueId,1024>RC13CStateManager" -/* 801573E8 00154348 C0 01 00 D0 */ lfs f0, 0xd0(r1) -/* 801573EC 0015434C 38 60 00 00 */ li r3, 0 -/* 801573F0 00154350 C0 41 00 D4 */ lfs f2, 0xd4(r1) -/* 801573F4 00154354 EC 1F 00 32 */ fmuls f0, f31, f0 -/* 801573F8 00154358 C0 21 00 D8 */ lfs f1, 0xd8(r1) -/* 801573FC 0015435C EC 5F 00 B2 */ fmuls f2, f31, f2 -/* 80157400 00154360 EC 3F 00 72 */ fmuls f1, f31, f1 -/* 80157404 00154364 D0 1A 06 40 */ stfs f0, 0x640(r26) -/* 80157408 00154368 D0 5A 06 44 */ stfs f2, 0x644(r26) -/* 8015740C 0015436C D0 3A 06 48 */ stfs f1, 0x648(r26) -/* 80157410 00154370 80 A1 02 48 */ lwz r5, 0x248(r1) -/* 80157414 00154374 2C 05 00 00 */ cmpwi r5, 0 -/* 80157418 00154378 40 81 00 40 */ ble lbl_80157458 -/* 8015741C 0015437C 2C 05 00 08 */ cmpwi r5, 8 -/* 80157420 00154380 38 85 FF F8 */ addi r4, r5, -8 -/* 80157424 00154384 40 81 00 20 */ ble lbl_80157444 -/* 80157428 00154388 38 04 00 07 */ addi r0, r4, 7 -/* 8015742C 0015438C 54 00 E8 FE */ srwi r0, r0, 3 -/* 80157430 00154390 7C 09 03 A6 */ mtctr r0 -/* 80157434 00154394 2C 04 00 00 */ cmpwi r4, 0 -/* 80157438 00154398 40 81 00 0C */ ble lbl_80157444 -lbl_8015743C: -/* 8015743C 0015439C 38 63 00 08 */ addi r3, r3, 8 -/* 80157440 001543A0 42 00 FF FC */ bdnz lbl_8015743C -lbl_80157444: -/* 80157444 001543A4 7C 03 28 50 */ subf r0, r3, r5 -/* 80157448 001543A8 7C 09 03 A6 */ mtctr r0 -/* 8015744C 001543AC 7C 03 28 00 */ cmpw r3, r5 -/* 80157450 001543B0 40 80 00 08 */ bge lbl_80157458 -lbl_80157454: -/* 80157454 001543B4 42 00 00 00 */ bdnz lbl_80157454 -lbl_80157458: -/* 80157458 001543B8 38 00 00 00 */ li r0, 0 -/* 8015745C 001543BC 90 01 02 48 */ stw r0, 0x248(r1) -lbl_80157460: -/* 80157460 001543C0 80 7B 08 4C */ lwz r3, 0x84c(r27) -/* 80157464 001543C4 C0 3A 07 00 */ lfs f1, 0x700(r26) -/* 80157468 001543C8 C1 23 00 50 */ lfs f9, 0x50(r3) -/* 8015746C 001543CC C0 5A 00 50 */ lfs f2, 0x50(r26) -/* 80157470 001543D0 EC 01 00 72 */ fmuls f0, f1, f1 -/* 80157474 001543D4 C0 C3 00 40 */ lfs f6, 0x40(r3) -/* 80157478 001543D8 ED 09 10 28 */ fsubs f8, f9, f2 -/* 8015747C 001543DC C0 5A 00 40 */ lfs f2, 0x40(r26) -/* 80157480 001543E0 C1 43 00 60 */ lfs f10, 0x60(r3) -/* 80157484 001543E4 EC A6 10 28 */ fsubs f5, f6, f2 -/* 80157488 001543E8 C0 7A 00 60 */ lfs f3, 0x60(r26) -/* 8015748C 001543EC EC 48 02 32 */ fmuls f2, f8, f8 -/* 80157490 001543F0 EC EA 18 28 */ fsubs f7, f10, f3 -/* 80157494 001543F4 D0 C1 00 B8 */ stfs f6, 0xb8(r1) -/* 80157498 001543F8 EC 65 01 72 */ fmuls f3, f5, f5 -/* 8015749C 001543FC D1 21 00 BC */ stfs f9, 0xbc(r1) -/* 801574A0 00154400 EC 87 01 F2 */ fmuls f4, f7, f7 -/* 801574A4 00154404 EC 43 10 2A */ fadds f2, f3, f2 -/* 801574A8 00154408 D1 41 00 C0 */ stfs f10, 0xc0(r1) -/* 801574AC 0015440C D0 A1 00 C4 */ stfs f5, 0xc4(r1) -/* 801574B0 00154410 EC 44 10 2A */ fadds f2, f4, f2 -/* 801574B4 00154414 D1 01 00 C8 */ stfs f8, 0xc8(r1) -/* 801574B8 00154418 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 801574BC 0015441C D0 E1 00 CC */ stfs f7, 0xcc(r1) -/* 801574C0 00154420 40 80 00 90 */ bge lbl_80157550 -/* 801574C4 00154424 C3 FA 06 04 */ lfs f31, 0x604(r26) -/* 801574C8 00154428 7F 45 D3 78 */ mr r5, r26 -/* 801574CC 0015442C 38 61 00 A0 */ addi r3, r1, 0xa0 -/* 801574D0 00154430 38 9A 04 5C */ addi r4, r26, 0x45c -/* 801574D4 00154434 D0 C1 00 94 */ stfs f6, 0x94(r1) -/* 801574D8 00154438 38 C1 00 94 */ addi r6, r1, 0x94 -/* 801574DC 0015443C D1 21 00 98 */ stfs f9, 0x98(r1) -/* 801574E0 00154440 D1 41 00 9C */ stfs f10, 0x9c(r1) -/* 801574E4 00154444 4B FE 74 0D */ bl Separation__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff -/* 801574E8 00154448 38 61 00 AC */ addi r3, r1, 0xac -/* 801574EC 0015444C 38 81 00 A0 */ addi r4, r1, 0xa0 -/* 801574F0 00154450 38 A1 01 48 */ addi r5, r1, 0x148 -/* 801574F4 00154454 48 11 1C A9 */ bl ProjectVectorToPlane__11CWallWalkerFRC9CVector3fRC9CVector3f -/* 801574F8 00154458 C0 41 00 AC */ lfs f2, 0xac(r1) -/* 801574FC 0015445C 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80157500 00154460 C0 21 00 B0 */ lfs f1, 0xb0(r1) -/* 80157504 00154464 38 81 01 FC */ addi r4, r1, 0x1fc -/* 80157508 00154468 C0 01 00 B4 */ lfs f0, 0xb4(r1) -/* 8015750C 0015446C EC BF 00 B2 */ fmuls f5, f31, f2 -/* 80157510 00154470 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) -/* 80157514 00154474 EC 9F 00 72 */ fmuls f4, f31, f1 -/* 80157518 00154478 C0 DA 07 04 */ lfs f6, 0x704(r26) -/* 8015751C 0015447C EC 7F 00 32 */ fmuls f3, f31, f0 -/* 80157520 00154480 C0 23 00 04 */ lfs f1, 4(r3) -/* 80157524 00154484 C0 03 00 08 */ lfs f0, 8(r3) -/* 80157528 00154488 D0 A1 01 FC */ stfs f5, 0x1fc(r1) -/* 8015752C 0015448C D0 81 02 00 */ stfs f4, 0x200(r1) -/* 80157530 00154490 D0 61 02 04 */ stfs f3, 0x204(r1) -/* 80157534 00154494 D0 41 02 08 */ stfs f2, 0x208(r1) -/* 80157538 00154498 D0 21 02 0C */ stfs f1, 0x20c(r1) -/* 8015753C 0015449C D0 01 02 10 */ stfs f0, 0x210(r1) -/* 80157540 001544A0 D0 C1 02 14 */ stfs f6, 0x214(r1) -/* 80157544 001544A4 80 7A 04 50 */ lwz r3, 0x450(r26) -/* 80157548 001544A8 38 63 00 04 */ addi r3, r3, 4 -/* 8015754C 001544AC 4B FD A1 CD */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd -lbl_80157550: -/* 80157550 001544B0 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80157554 001544B4 C0 3A 06 28 */ lfs f1, 0x628(r26) -/* 80157558 001544B8 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) -/* 8015755C 001544BC 38 00 00 00 */ li r0, 0 -/* 80157560 001544C0 FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 80157564 001544C4 40 82 00 28 */ bne lbl_8015758C -/* 80157568 001544C8 C0 3A 06 2C */ lfs f1, 0x62c(r26) -/* 8015756C 001544CC C0 03 00 04 */ lfs f0, 4(r3) -/* 80157570 001544D0 FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 80157574 001544D4 40 82 00 18 */ bne lbl_8015758C -/* 80157578 001544D8 C0 3A 06 30 */ lfs f1, 0x630(r26) -/* 8015757C 001544DC C0 03 00 08 */ lfs f0, 8(r3) -/* 80157580 001544E0 FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 80157584 001544E4 40 82 00 08 */ bne lbl_8015758C -/* 80157588 001544E8 38 00 00 01 */ li r0, 1 -lbl_8015758C: -/* 8015758C 001544EC 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 80157590 001544F0 40 82 00 60 */ bne lbl_801575F0 -/* 80157594 001544F4 C3 FA 06 EC */ lfs f31, 0x6ec(r26) -/* 80157598 001544F8 38 61 00 88 */ addi r3, r1, 0x88 -/* 8015759C 001544FC 38 9A 06 28 */ addi r4, r26, 0x628 -/* 801575A0 00154500 38 A1 01 48 */ addi r5, r1, 0x148 -/* 801575A4 00154504 48 11 1B F9 */ bl ProjectVectorToPlane__11CWallWalkerFRC9CVector3fRC9CVector3f -/* 801575A8 00154508 3C 60 80 5A */ lis r3, skZero3f@ha -/* 801575AC 0015450C C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) -/* 801575B0 00154510 C0 A1 00 88 */ lfs f5, 0x88(r1) -/* 801575B4 00154514 38 81 01 E0 */ addi r4, r1, 0x1e0 -/* 801575B8 00154518 C0 81 00 8C */ lfs f4, 0x8c(r1) -/* 801575BC 0015451C C0 61 00 90 */ lfs f3, 0x90(r1) -/* 801575C0 00154520 C0 23 00 04 */ lfs f1, 4(r3) -/* 801575C4 00154524 C0 03 00 08 */ lfs f0, 8(r3) -/* 801575C8 00154528 D0 A1 01 E0 */ stfs f5, 0x1e0(r1) -/* 801575CC 0015452C D0 81 01 E4 */ stfs f4, 0x1e4(r1) -/* 801575D0 00154530 D0 61 01 E8 */ stfs f3, 0x1e8(r1) -/* 801575D4 00154534 D0 41 01 EC */ stfs f2, 0x1ec(r1) -/* 801575D8 00154538 D0 21 01 F0 */ stfs f1, 0x1f0(r1) -/* 801575DC 0015453C D0 01 01 F4 */ stfs f0, 0x1f4(r1) -/* 801575E0 00154540 D3 E1 01 F8 */ stfs f31, 0x1f8(r1) -/* 801575E4 00154544 80 7A 04 50 */ lwz r3, 0x450(r26) -/* 801575E8 00154548 38 63 00 04 */ addi r3, r3, 4 -/* 801575EC 0015454C 4B FD A1 2D */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd -lbl_801575F0: -/* 801575F0 00154550 3C 60 80 5A */ lis r3, skZero3f@ha -/* 801575F4 00154554 83 7A 05 E4 */ lwz r27, 0x5e4(r26) -/* 801575F8 00154558 3B E3 66 A0 */ addi r31, r3, skZero3f@l -/* 801575FC 0015455C 48 00 00 F4 */ b lbl_801576F0 -lbl_80157600: -/* 80157600 00154560 C0 5B 00 04 */ lfs f2, 4(r27) -/* 80157604 00154564 C0 1A 00 50 */ lfs f0, 0x50(r26) -/* 80157608 00154568 C0 3B 00 00 */ lfs f1, 0(r27) -/* 8015760C 0015456C EC C2 00 28 */ fsubs f6, f2, f0 -/* 80157610 00154570 C0 1A 00 40 */ lfs f0, 0x40(r26) -/* 80157614 00154574 C0 7B 00 08 */ lfs f3, 8(r27) -/* 80157618 00154578 EC 81 00 28 */ fsubs f4, f1, f0 -/* 8015761C 0015457C C0 1A 00 60 */ lfs f0, 0x60(r26) -/* 80157620 00154580 EC 46 01 B2 */ fmuls f2, f6, f6 -/* 80157624 00154584 EC A3 00 28 */ fsubs f5, f3, f0 -/* 80157628 00154588 C0 3B 00 0C */ lfs f1, 0xc(r27) -/* 8015762C 0015458C EC 64 01 32 */ fmuls f3, f4, f4 -/* 80157630 00154590 EC 01 00 72 */ fmuls f0, f1, f1 -/* 80157634 00154594 D0 81 00 7C */ stfs f4, 0x7c(r1) -/* 80157638 00154598 EC 85 01 72 */ fmuls f4, f5, f5 -/* 8015763C 0015459C EC 43 10 2A */ fadds f2, f3, f2 -/* 80157640 001545A0 D0 C1 00 80 */ stfs f6, 0x80(r1) -/* 80157644 001545A4 D0 A1 00 84 */ stfs f5, 0x84(r1) -/* 80157648 001545A8 EC 44 10 2A */ fadds f2, f4, f2 -/* 8015764C 001545AC FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 80157650 001545B0 40 80 00 9C */ bge lbl_801576EC -/* 80157654 001545B4 C3 FA 06 04 */ lfs f31, 0x604(r26) -/* 80157658 001545B8 7F 45 D3 78 */ mr r5, r26 -/* 8015765C 001545BC 7F 66 DB 78 */ mr r6, r27 -/* 80157660 001545C0 38 61 00 70 */ addi r3, r1, 0x70 -/* 80157664 001545C4 38 9A 04 5C */ addi r4, r26, 0x45c -/* 80157668 001545C8 4B FE 72 89 */ bl Separation__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff -/* 8015766C 001545CC C0 41 00 74 */ lfs f2, 0x74(r1) -/* 80157670 001545D0 38 61 00 64 */ addi r3, r1, 0x64 -/* 80157674 001545D4 C0 21 00 78 */ lfs f1, 0x78(r1) -/* 80157678 001545D8 38 81 01 3C */ addi r4, r1, 0x13c -/* 8015767C 001545DC C0 01 00 70 */ lfs f0, 0x70(r1) -/* 80157680 001545E0 EC 5F 00 B2 */ fmuls f2, f31, f2 -/* 80157684 001545E4 EC 3F 00 72 */ fmuls f1, f31, f1 -/* 80157688 001545E8 38 A1 01 48 */ addi r5, r1, 0x148 -/* 8015768C 001545EC EC 1F 00 32 */ fmuls f0, f31, f0 -/* 80157690 001545F0 D0 41 01 40 */ stfs f2, 0x140(r1) -/* 80157694 001545F4 D0 01 01 3C */ stfs f0, 0x13c(r1) -/* 80157698 001545F8 D0 21 01 44 */ stfs f1, 0x144(r1) -/* 8015769C 001545FC 48 11 1B 01 */ bl ProjectVectorToPlane__11CWallWalkerFRC9CVector3fRC9CVector3f -/* 801576A0 00154600 3C 60 80 5A */ lis r3, skZero3f@ha -/* 801576A4 00154604 C0 C1 00 64 */ lfs f6, 0x64(r1) -/* 801576A8 00154608 C0 A1 00 68 */ lfs f5, 0x68(r1) -/* 801576AC 0015460C 38 81 01 C4 */ addi r4, r1, 0x1c4 -/* 801576B0 00154610 C0 81 00 6C */ lfs f4, 0x6c(r1) -/* 801576B4 00154614 C0 63 66 A0 */ lfs f3, skZero3f@l(r3) -/* 801576B8 00154618 C0 5F 00 04 */ lfs f2, 4(r31) -/* 801576BC 0015461C C0 3F 00 08 */ lfs f1, 8(r31) -/* 801576C0 00154620 C0 02 9E 60 */ lfs f0, lbl_805ABB80@sda21(r2) -/* 801576C4 00154624 D0 C1 01 C4 */ stfs f6, 0x1c4(r1) -/* 801576C8 00154628 D0 A1 01 C8 */ stfs f5, 0x1c8(r1) -/* 801576CC 0015462C D0 81 01 CC */ stfs f4, 0x1cc(r1) -/* 801576D0 00154630 D0 61 01 D0 */ stfs f3, 0x1d0(r1) -/* 801576D4 00154634 D0 41 01 D4 */ stfs f2, 0x1d4(r1) -/* 801576D8 00154638 D0 21 01 D8 */ stfs f1, 0x1d8(r1) -/* 801576DC 0015463C D0 01 01 DC */ stfs f0, 0x1dc(r1) -/* 801576E0 00154640 80 7A 04 50 */ lwz r3, 0x450(r26) -/* 801576E4 00154644 38 63 00 04 */ addi r3, r3, 4 -/* 801576E8 00154648 4B FD A0 31 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd -lbl_801576EC: -/* 801576EC 0015464C 3B 7B 00 10 */ addi r27, r27, 0x10 -lbl_801576F0: -/* 801576F0 00154650 80 1A 05 DC */ lwz r0, 0x5dc(r26) -/* 801576F4 00154654 80 7A 05 E4 */ lwz r3, 0x5e4(r26) -/* 801576F8 00154658 54 00 20 36 */ slwi r0, r0, 4 -/* 801576FC 0015465C 7C 03 02 14 */ add r0, r3, r0 -/* 80157700 00154660 7C 1B 00 40 */ cmplw r27, r0 -/* 80157704 00154664 40 82 FE FC */ bne lbl_80157600 -/* 80157708 00154668 C0 3A 06 08 */ lfs f1, 0x608(r26) -/* 8015770C 0015466C C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) -/* 80157710 00154670 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80157714 00154674 4C 40 13 82 */ cror 2, 0, 2 -/* 80157718 00154678 40 82 01 D8 */ bne lbl_801578F0 -/* 8015771C 0015467C C3 FA 06 F4 */ lfs f31, 0x6f4(r26) -/* 80157720 00154680 38 61 00 58 */ addi r3, r1, 0x58 -/* 80157724 00154684 38 9A 06 34 */ addi r4, r26, 0x634 -/* 80157728 00154688 38 A1 01 48 */ addi r5, r1, 0x148 -/* 8015772C 0015468C 48 11 1A 71 */ bl ProjectVectorToPlane__11CWallWalkerFRC9CVector3fRC9CVector3f -/* 80157730 00154690 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80157734 00154694 C0 A1 00 58 */ lfs f5, 0x58(r1) -/* 80157738 00154698 C0 81 00 5C */ lfs f4, 0x5c(r1) -/* 8015773C 0015469C 38 81 01 A8 */ addi r4, r1, 0x1a8 -/* 80157740 001546A0 C0 61 00 60 */ lfs f3, 0x60(r1) -/* 80157744 001546A4 C0 43 66 A0 */ lfs f2, skZero3f@l(r3) -/* 80157748 001546A8 C0 3F 00 04 */ lfs f1, 4(r31) -/* 8015774C 001546AC C0 1F 00 08 */ lfs f0, 8(r31) -/* 80157750 001546B0 D0 A1 01 A8 */ stfs f5, 0x1a8(r1) -/* 80157754 001546B4 D0 81 01 AC */ stfs f4, 0x1ac(r1) -/* 80157758 001546B8 D0 61 01 B0 */ stfs f3, 0x1b0(r1) -/* 8015775C 001546BC D0 41 01 B4 */ stfs f2, 0x1b4(r1) -/* 80157760 001546C0 D0 21 01 B8 */ stfs f1, 0x1b8(r1) -/* 80157764 001546C4 D0 01 01 BC */ stfs f0, 0x1bc(r1) -/* 80157768 001546C8 D3 E1 01 C0 */ stfs f31, 0x1c0(r1) -/* 8015776C 001546CC 80 7A 04 50 */ lwz r3, 0x450(r26) -/* 80157770 001546D0 38 63 00 04 */ addi r3, r3, 4 -/* 80157774 001546D4 4B FD 9F A5 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd -/* 80157778 001546D8 C3 FA 06 F0 */ lfs f31, 0x6f0(r26) -/* 8015777C 001546DC 38 61 00 4C */ addi r3, r1, 0x4c -/* 80157780 001546E0 38 9A 06 40 */ addi r4, r26, 0x640 -/* 80157784 001546E4 38 A1 01 48 */ addi r5, r1, 0x148 -/* 80157788 001546E8 48 11 1A 15 */ bl ProjectVectorToPlane__11CWallWalkerFRC9CVector3fRC9CVector3f -/* 8015778C 001546EC 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80157790 001546F0 C0 A1 00 4C */ lfs f5, 0x4c(r1) -/* 80157794 001546F4 C0 81 00 50 */ lfs f4, 0x50(r1) -/* 80157798 001546F8 38 81 01 8C */ addi r4, r1, 0x18c -/* 8015779C 001546FC C0 61 00 54 */ lfs f3, 0x54(r1) -/* 801577A0 00154700 C0 43 66 A0 */ lfs f2, skZero3f@l(r3) -/* 801577A4 00154704 C0 3F 00 04 */ lfs f1, 4(r31) -/* 801577A8 00154708 C0 1F 00 08 */ lfs f0, 8(r31) -/* 801577AC 0015470C D0 A1 01 8C */ stfs f5, 0x18c(r1) -/* 801577B0 00154710 D0 81 01 90 */ stfs f4, 0x190(r1) -/* 801577B4 00154714 D0 61 01 94 */ stfs f3, 0x194(r1) -/* 801577B8 00154718 D0 41 01 98 */ stfs f2, 0x198(r1) -/* 801577BC 0015471C D0 21 01 9C */ stfs f1, 0x19c(r1) -/* 801577C0 00154720 D0 01 01 A0 */ stfs f0, 0x1a0(r1) -/* 801577C4 00154724 D3 E1 01 A4 */ stfs f31, 0x1a4(r1) -/* 801577C8 00154728 80 7A 04 50 */ lwz r3, 0x450(r26) -/* 801577CC 0015472C 38 63 00 04 */ addi r3, r3, 4 -/* 801577D0 00154730 4B FD 9F 49 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd -/* 801577D4 00154734 C3 FA 06 04 */ lfs f31, 0x604(r26) -/* 801577D8 00154738 7F 45 D3 78 */ mr r5, r26 -/* 801577DC 0015473C 38 61 00 34 */ addi r3, r1, 0x34 -/* 801577E0 00154740 38 9A 04 5C */ addi r4, r26, 0x45c -/* 801577E4 00154744 38 DA 02 E0 */ addi r6, r26, 0x2e0 -/* 801577E8 00154748 4B FE 74 39 */ bl Seek__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3f -/* 801577EC 0015474C 38 61 00 40 */ addi r3, r1, 0x40 -/* 801577F0 00154750 38 81 00 34 */ addi r4, r1, 0x34 -/* 801577F4 00154754 38 A1 01 48 */ addi r5, r1, 0x148 -/* 801577F8 00154758 48 11 19 A5 */ bl ProjectVectorToPlane__11CWallWalkerFRC9CVector3fRC9CVector3f -/* 801577FC 0015475C C0 41 00 40 */ lfs f2, 0x40(r1) -/* 80157800 00154760 38 61 00 28 */ addi r3, r1, 0x28 -/* 80157804 00154764 C0 21 00 44 */ lfs f1, 0x44(r1) -/* 80157808 00154768 38 81 01 30 */ addi r4, r1, 0x130 -/* 8015780C 0015476C C0 01 00 48 */ lfs f0, 0x48(r1) -/* 80157810 00154770 EC 5F 00 B2 */ fmuls f2, f31, f2 -/* 80157814 00154774 EC 3F 00 72 */ fmuls f1, f31, f1 -/* 80157818 00154778 38 A1 01 48 */ addi r5, r1, 0x148 -/* 8015781C 0015477C EC 1F 00 32 */ fmuls f0, f31, f0 -/* 80157820 00154780 D0 41 01 30 */ stfs f2, 0x130(r1) -/* 80157824 00154784 D0 21 01 34 */ stfs f1, 0x134(r1) -/* 80157828 00154788 D0 01 01 38 */ stfs f0, 0x138(r1) -/* 8015782C 0015478C C3 FA 06 F8 */ lfs f31, 0x6f8(r26) -/* 80157830 00154790 48 11 19 6D */ bl ProjectVectorToPlane__11CWallWalkerFRC9CVector3fRC9CVector3f -/* 80157834 00154794 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80157838 00154798 C0 A1 00 28 */ lfs f5, 0x28(r1) -/* 8015783C 0015479C C0 81 00 2C */ lfs f4, 0x2c(r1) -/* 80157840 001547A0 38 81 01 70 */ addi r4, r1, 0x170 -/* 80157844 001547A4 C0 61 00 30 */ lfs f3, 0x30(r1) -/* 80157848 001547A8 C0 43 66 A0 */ lfs f2, skZero3f@l(r3) -/* 8015784C 001547AC C0 3F 00 04 */ lfs f1, 4(r31) -/* 80157850 001547B0 C0 1F 00 08 */ lfs f0, 8(r31) -/* 80157854 001547B4 D0 A1 01 70 */ stfs f5, 0x170(r1) -/* 80157858 001547B8 D0 81 01 74 */ stfs f4, 0x174(r1) -/* 8015785C 001547BC D0 61 01 78 */ stfs f3, 0x178(r1) -/* 80157860 001547C0 D0 41 01 7C */ stfs f2, 0x17c(r1) -/* 80157864 001547C4 D0 21 01 80 */ stfs f1, 0x180(r1) -/* 80157868 001547C8 D0 01 01 84 */ stfs f0, 0x184(r1) -/* 8015786C 001547CC D3 E1 01 88 */ stfs f31, 0x188(r1) -/* 80157870 001547D0 80 7A 04 50 */ lwz r3, 0x450(r26) -/* 80157874 001547D4 38 63 00 04 */ addi r3, r3, 4 -/* 80157878 001547D8 4B FD 9E A1 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd -/* 8015787C 001547DC C1 3A 00 58 */ lfs f9, 0x58(r26) -/* 80157880 001547E0 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80157884 001547E4 C0 1A 06 04 */ lfs f0, 0x604(r26) -/* 80157888 001547E8 38 81 01 54 */ addi r4, r1, 0x154 -/* 8015788C 001547EC C1 1A 00 48 */ lfs f8, 0x48(r26) -/* 80157890 001547F0 C0 9A 00 38 */ lfs f4, 0x38(r26) -/* 80157894 001547F4 EC A0 02 72 */ fmuls f5, f0, f9 -/* 80157898 001547F8 C0 FA 06 FC */ lfs f7, 0x6fc(r26) -/* 8015789C 001547FC EC C0 02 32 */ fmuls f6, f0, f8 -/* 801578A0 00154800 EC 60 01 32 */ fmuls f3, f0, f4 -/* 801578A4 00154804 C0 43 66 A0 */ lfs f2, skZero3f@l(r3) -/* 801578A8 00154808 C0 3F 00 04 */ lfs f1, 4(r31) -/* 801578AC 0015480C C0 1F 00 08 */ lfs f0, 8(r31) -/* 801578B0 00154810 D0 61 01 54 */ stfs f3, 0x154(r1) -/* 801578B4 00154814 D0 C1 01 58 */ stfs f6, 0x158(r1) -/* 801578B8 00154818 D0 A1 01 5C */ stfs f5, 0x15c(r1) -/* 801578BC 0015481C D0 41 01 60 */ stfs f2, 0x160(r1) -/* 801578C0 00154820 D0 21 01 64 */ stfs f1, 0x164(r1) -/* 801578C4 00154824 D0 01 01 68 */ stfs f0, 0x168(r1) -/* 801578C8 00154828 D0 E1 01 6C */ stfs f7, 0x16c(r1) -/* 801578CC 0015482C 80 7A 04 50 */ lwz r3, 0x450(r26) -/* 801578D0 00154830 D0 81 00 10 */ stfs f4, 0x10(r1) -/* 801578D4 00154834 38 63 00 04 */ addi r3, r3, 4 -/* 801578D8 00154838 D1 01 00 14 */ stfs f8, 0x14(r1) -/* 801578DC 0015483C D1 21 00 18 */ stfs f9, 0x18(r1) -/* 801578E0 00154840 D0 61 00 1C */ stfs f3, 0x1c(r1) -/* 801578E4 00154844 D0 C1 00 20 */ stfs f6, 0x20(r1) -/* 801578E8 00154848 D0 A1 00 24 */ stfs f5, 0x24(r1) -/* 801578EC 0015484C 4B FD 9E 2D */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd -lbl_801578F0: -/* 801578F0 00154850 80 A1 0A 4C */ lwz r5, 0xa4c(r1) -/* 801578F4 00154854 38 60 00 00 */ li r3, 0 -/* 801578F8 00154858 2C 05 00 00 */ cmpwi r5, 0 -/* 801578FC 0015485C 40 81 00 40 */ ble lbl_8015793C -/* 80157900 00154860 2C 05 00 08 */ cmpwi r5, 8 -/* 80157904 00154864 38 85 FF F8 */ addi r4, r5, -8 -/* 80157908 00154868 40 81 00 20 */ ble lbl_80157928 -/* 8015790C 0015486C 38 04 00 07 */ addi r0, r4, 7 -/* 80157910 00154870 54 00 E8 FE */ srwi r0, r0, 3 -/* 80157914 00154874 7C 09 03 A6 */ mtctr r0 -/* 80157918 00154878 2C 04 00 00 */ cmpwi r4, 0 -/* 8015791C 0015487C 40 81 00 0C */ ble lbl_80157928 -lbl_80157920: -/* 80157920 00154880 38 63 00 08 */ addi r3, r3, 8 -/* 80157924 00154884 42 00 FF FC */ bdnz lbl_80157920 -lbl_80157928: -/* 80157928 00154888 7C 03 28 50 */ subf r0, r3, r5 -/* 8015792C 0015488C 7C 09 03 A6 */ mtctr r0 -/* 80157930 00154890 7C 03 28 00 */ cmpw r3, r5 -/* 80157934 00154894 40 80 00 08 */ bge lbl_8015793C -lbl_80157938: -/* 80157938 00154898 42 00 00 00 */ bdnz lbl_80157938 -lbl_8015793C: -/* 8015793C 0015489C 38 00 00 00 */ li r0, 0 -/* 80157940 001548A0 90 01 0A 4C */ stw r0, 0xa4c(r1) -/* 80157944 001548A4 38 00 12 78 */ li r0, 0x1278 -/* 80157948 001548A8 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 -/* 8015794C 001548AC CB E1 12 70 */ lfd f31, 0x1270(r1) -/* 80157950 001548B0 BB 41 12 58 */ lmw r26, 0x1258(r1) -/* 80157954 001548B4 80 01 12 84 */ lwz r0, 0x1284(r1) -/* 80157958 001548B8 7C 08 03 A6 */ mtlr r0 -/* 8015795C 001548BC 38 21 12 80 */ addi r1, r1, 0x1280 -/* 80157960 001548C0 4E 80 00 20 */ blr - -.global UpdatePFDestination__9CParasiteFR13CStateManager -UpdatePFDestination__9CParasiteFR13CStateManager: -/* 80157964 001548C4 4E 80 00 20 */ blr - -.global Touch__9CParasiteFR6CActorR13CStateManager -Touch__9CParasiteFR6CActorR13CStateManager: -/* 80157968 001548C8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015796C 001548CC 7C 08 02 A6 */ mflr r0 -/* 80157970 001548D0 90 01 00 14 */ stw r0, 0x14(r1) -/* 80157974 001548D4 4B F2 21 2D */ bl Touch__10CPatternedFR6CActorR13CStateManager -/* 80157978 001548D8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015797C 001548DC 7C 08 03 A6 */ mtlr r0 -/* 80157980 001548E0 38 21 00 10 */ addi r1, r1, 0x10 -/* 80157984 001548E4 4E 80 00 20 */ blr - -.global GetUp__9CParasiteFR13CStateManager9EStateMsgf -GetUp__9CParasiteFR13CStateManager9EStateMsgf: -/* 80157988 001548E8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8015798C 001548EC 7C 08 02 A6 */ mflr r0 -/* 80157990 001548F0 2C 05 00 00 */ cmpwi r5, 0 -/* 80157994 001548F4 90 01 00 24 */ stw r0, 0x24(r1) -/* 80157998 001548F8 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8015799C 001548FC 7C 7F 1B 78 */ mr r31, r3 -/* 801579A0 00154900 40 82 00 5C */ bne lbl_801579FC -/* 801579A4 00154904 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 801579A8 00154908 38 80 00 01 */ li r4, 1 -/* 801579AC 0015490C 4B FE 30 2D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -/* 801579B0 00154910 80 1F 05 D0 */ lwz r0, 0x5d0(r31) -/* 801579B4 00154914 2C 00 00 02 */ cmpwi r0, 2 -/* 801579B8 00154918 40 82 00 44 */ bne lbl_801579FC -/* 801579BC 0015491C C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 801579C0 00154920 3C 60 80 5A */ lis r3, skZero3f@ha -/* 801579C4 00154924 C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 801579C8 00154928 38 C3 66 A0 */ addi r6, r3, skZero3f@l -/* 801579CC 0015492C C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 801579D0 00154930 38 61 00 08 */ addi r3, r1, 8 -/* 801579D4 00154934 A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) -/* 801579D8 00154938 38 A1 00 0C */ addi r5, r1, 0xc -/* 801579DC 0015493C D0 01 00 0C */ stfs f0, 0xc(r1) -/* 801579E0 00154940 38 E0 00 01 */ li r7, 1 -/* 801579E4 00154944 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) -/* 801579E8 00154948 39 00 00 00 */ li r8, 0 -/* 801579EC 0015494C D0 21 00 10 */ stfs f1, 0x10(r1) -/* 801579F0 00154950 D0 41 00 14 */ stfs f2, 0x14(r1) -/* 801579F4 00154954 A0 9F 07 3E */ lhz r4, 0x73e(r31) -/* 801579F8 00154958 48 19 28 B9 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi -lbl_801579FC: -/* 801579FC 0015495C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80157A00 00154960 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80157A04 00154964 7C 08 03 A6 */ mtlr r0 -/* 80157A08 00154968 38 21 00 20 */ addi r1, r1, 0x20 -/* 80157A0C 0015496C 4E 80 00 20 */ blr - -.global Crouch__9CParasiteFR13CStateManager9EStateMsgf -Crouch__9CParasiteFR13CStateManager9EStateMsgf: -/* 80157A10 00154970 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80157A14 00154974 7C 08 02 A6 */ mflr r0 -/* 80157A18 00154978 2C 05 00 00 */ cmpwi r5, 0 -/* 80157A1C 0015497C 90 01 00 24 */ stw r0, 0x24(r1) -/* 80157A20 00154980 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80157A24 00154984 7C 7F 1B 78 */ mr r31, r3 -/* 80157A28 00154988 40 82 00 5C */ bne lbl_80157A84 -/* 80157A2C 0015498C 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 80157A30 00154990 38 80 00 00 */ li r4, 0 -/* 80157A34 00154994 4B FE 2F A5 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -/* 80157A38 00154998 80 1F 05 D0 */ lwz r0, 0x5d0(r31) -/* 80157A3C 0015499C 2C 00 00 02 */ cmpwi r0, 2 -/* 80157A40 001549A0 40 82 00 44 */ bne lbl_80157A84 -/* 80157A44 001549A4 C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 80157A48 001549A8 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80157A4C 001549AC C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 80157A50 001549B0 38 C3 66 A0 */ addi r6, r3, skZero3f@l -/* 80157A54 001549B4 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 80157A58 001549B8 38 61 00 08 */ addi r3, r1, 8 -/* 80157A5C 001549BC A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) -/* 80157A60 001549C0 38 A1 00 0C */ addi r5, r1, 0xc -/* 80157A64 001549C4 D0 01 00 0C */ stfs f0, 0xc(r1) -/* 80157A68 001549C8 38 E0 00 01 */ li r7, 1 -/* 80157A6C 001549CC 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) -/* 80157A70 001549D0 39 00 00 00 */ li r8, 0 -/* 80157A74 001549D4 D0 21 00 10 */ stfs f1, 0x10(r1) -/* 80157A78 001549D8 D0 41 00 14 */ stfs f2, 0x14(r1) -/* 80157A7C 001549DC A0 9F 07 40 */ lhz r4, 0x740(r31) -/* 80157A80 001549E0 48 19 28 31 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi -lbl_80157A84: -/* 80157A84 001549E4 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80157A88 001549E8 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80157A8C 001549EC 7C 08 03 A6 */ mtlr r0 -/* 80157A90 001549F0 38 21 00 20 */ addi r1, r1, 0x20 -/* 80157A94 001549F4 4E 80 00 20 */ blr - -.global Halt__9CParasiteFR13CStateManager9EStateMsgf -Halt__9CParasiteFR13CStateManager9EStateMsgf: -/* 80157A98 001549F8 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 80157A9C 001549FC 7C 08 02 A6 */ mflr r0 -/* 80157AA0 00154A00 2C 05 00 01 */ cmpwi r5, 1 -/* 80157AA4 00154A04 90 01 00 44 */ stw r0, 0x44(r1) -/* 80157AA8 00154A08 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 80157AAC 00154A0C 7C 7F 1B 78 */ mr r31, r3 -/* 80157AB0 00154A10 41 82 00 98 */ beq lbl_80157B48 -/* 80157AB4 00154A14 40 80 00 10 */ bge lbl_80157AC4 -/* 80157AB8 00154A18 2C 05 00 00 */ cmpwi r5, 0 -/* 80157ABC 00154A1C 40 80 00 14 */ bge lbl_80157AD0 -/* 80157AC0 00154A20 48 00 01 24 */ b lbl_80157BE4 -lbl_80157AC4: -/* 80157AC4 00154A24 2C 05 00 03 */ cmpwi r5, 3 -/* 80157AC8 00154A28 40 80 01 1C */ bge lbl_80157BE4 -/* 80157ACC 00154A2C 48 00 00 C0 */ b lbl_80157B8C -lbl_80157AD0: -/* 80157AD0 00154A30 C0 1F 07 10 */ lfs f0, 0x710(r31) -/* 80157AD4 00154A34 38 60 00 01 */ li r3, 1 -/* 80157AD8 00154A38 D0 1F 03 40 */ stfs f0, 0x340(r31) -/* 80157ADC 00154A3C 90 7F 03 2C */ stw r3, 0x32c(r31) -/* 80157AE0 00154A40 88 1F 07 43 */ lbz r0, 0x743(r31) -/* 80157AE4 00154A44 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80157AE8 00154A48 98 1F 07 43 */ stb r0, 0x743(r31) -/* 80157AEC 00154A4C 88 1F 05 D6 */ lbz r0, 0x5d6(r31) -/* 80157AF0 00154A50 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80157AF4 00154A54 98 1F 05 D6 */ stb r0, 0x5d6(r31) -/* 80157AF8 00154A58 80 1F 05 D0 */ lwz r0, 0x5d0(r31) -/* 80157AFC 00154A5C 2C 00 00 02 */ cmpwi r0, 2 -/* 80157B00 00154A60 40 82 00 E4 */ bne lbl_80157BE4 -/* 80157B04 00154A64 C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 80157B08 00154A68 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80157B0C 00154A6C C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 80157B10 00154A70 38 C3 66 A0 */ addi r6, r3, skZero3f@l -/* 80157B14 00154A74 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 80157B18 00154A78 38 61 00 08 */ addi r3, r1, 8 -/* 80157B1C 00154A7C A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) -/* 80157B20 00154A80 38 A1 00 20 */ addi r5, r1, 0x20 -/* 80157B24 00154A84 D0 01 00 20 */ stfs f0, 0x20(r1) -/* 80157B28 00154A88 38 E0 00 01 */ li r7, 1 -/* 80157B2C 00154A8C 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) -/* 80157B30 00154A90 39 00 00 00 */ li r8, 0 -/* 80157B34 00154A94 D0 21 00 24 */ stfs f1, 0x24(r1) -/* 80157B38 00154A98 D0 41 00 28 */ stfs f2, 0x28(r1) -/* 80157B3C 00154A9C A0 9F 07 3C */ lhz r4, 0x73c(r31) -/* 80157B40 00154AA0 48 19 27 71 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi -/* 80157B44 00154AA4 48 00 00 A0 */ b lbl_80157BE4 -lbl_80157B48: -/* 80157B48 00154AA8 3C A0 80 3E */ lis r5, lbl_803E2FF8@ha -/* 80157B4C 00154AAC 38 C1 00 14 */ addi r6, r1, 0x14 -/* 80157B50 00154AB0 39 45 2F F8 */ addi r10, r5, lbl_803E2FF8@l -/* 80157B54 00154AB4 38 A0 00 0A */ li r5, 0xa -/* 80157B58 00154AB8 81 2A 00 00 */ lwz r9, 0(r10) -/* 80157B5C 00154ABC 38 E0 00 01 */ li r7, 1 -/* 80157B60 00154AC0 81 0A 00 04 */ lwz r8, 4(r10) -/* 80157B64 00154AC4 80 0A 00 08 */ lwz r0, 8(r10) -/* 80157B68 00154AC8 91 21 00 14 */ stw r9, 0x14(r1) -/* 80157B6C 00154ACC 91 01 00 18 */ stw r8, 0x18(r1) -/* 80157B70 00154AD0 90 01 00 1C */ stw r0, 0x1c(r1) -/* 80157B74 00154AD4 4B F2 4C 41 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi -/* 80157B78 00154AD8 88 1F 04 00 */ lbz r0, 0x400(r31) -/* 80157B7C 00154ADC 38 60 00 00 */ li r3, 0 -/* 80157B80 00154AE0 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80157B84 00154AE4 98 1F 04 00 */ stb r0, 0x400(r31) -/* 80157B88 00154AE8 48 00 00 5C */ b lbl_80157BE4 -lbl_80157B8C: -/* 80157B8C 00154AEC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80157B90 00154AF0 38 00 00 0A */ li r0, 0xa -/* 80157B94 00154AF4 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l -/* 80157B98 00154AF8 90 01 00 10 */ stw r0, 0x10(r1) -/* 80157B9C 00154AFC 38 81 00 0C */ addi r4, r1, 0xc -/* 80157BA0 00154B00 90 61 00 0C */ stw r3, 0xc(r1) -/* 80157BA4 00154B04 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 80157BA8 00154B08 38 63 00 04 */ addi r3, r3, 4 -/* 80157BAC 00154B0C 4B FD 9C 0D */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd -/* 80157BB0 00154B10 34 01 00 0C */ addic. r0, r1, 0xc -/* 80157BB4 00154B14 41 82 00 10 */ beq lbl_80157BC4 -/* 80157BB8 00154B18 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80157BBC 00154B1C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 80157BC0 00154B20 90 01 00 0C */ stw r0, 0xc(r1) -lbl_80157BC4: -/* 80157BC4 00154B24 38 60 00 00 */ li r3, 0 -/* 80157BC8 00154B28 90 7F 03 2C */ stw r3, 0x32c(r31) -/* 80157BCC 00154B2C 88 1F 07 43 */ lbz r0, 0x743(r31) -/* 80157BD0 00154B30 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80157BD4 00154B34 98 1F 07 43 */ stb r0, 0x743(r31) -/* 80157BD8 00154B38 88 1F 05 D6 */ lbz r0, 0x5d6(r31) -/* 80157BDC 00154B3C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80157BE0 00154B40 98 1F 05 D6 */ stb r0, 0x5d6(r31) -lbl_80157BE4: -/* 80157BE4 00154B44 80 01 00 44 */ lwz r0, 0x44(r1) -/* 80157BE8 00154B48 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 80157BEC 00154B4C 7C 08 03 A6 */ mtlr r0 -/* 80157BF0 00154B50 38 21 00 40 */ addi r1, r1, 0x40 -/* 80157BF4 00154B54 4E 80 00 20 */ blr - -.global TelegraphAttack__9CParasiteFR13CStateManager9EStateMsgf -TelegraphAttack__9CParasiteFR13CStateManager9EStateMsgf: -/* 80157BF8 00154B58 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 80157BFC 00154B5C 7C 08 02 A6 */ mflr r0 -/* 80157C00 00154B60 2C 05 00 00 */ cmpwi r5, 0 -/* 80157C04 00154B64 90 01 00 44 */ stw r0, 0x44(r1) -/* 80157C08 00154B68 BF 61 00 2C */ stmw r27, 0x2c(r1) -/* 80157C0C 00154B6C 7C 7B 1B 78 */ mr r27, r3 -/* 80157C10 00154B70 7C 9C 23 78 */ mr r28, r4 -/* 80157C14 00154B74 41 82 00 0C */ beq lbl_80157C20 -/* 80157C18 00154B78 41 80 01 24 */ blt lbl_80157D3C -/* 80157C1C 00154B7C 48 00 01 20 */ b lbl_80157D3C -lbl_80157C20: -/* 80157C20 00154B80 3B DC 0F 54 */ addi r30, r28, 0xf54 -/* 80157C24 00154B84 83 BC 0F 58 */ lwz r29, 0xf58(r28) -/* 80157C28 00154B88 48 00 00 F8 */ b lbl_80157D20 -lbl_80157C2C: -/* 80157C2C 00154B8C A0 1D 00 08 */ lhz r0, 8(r29) -/* 80157C30 00154B90 7F 83 E3 78 */ mr r3, r28 -/* 80157C34 00154B94 38 81 00 08 */ addi r4, r1, 8 -/* 80157C38 00154B98 B0 01 00 08 */ sth r0, 8(r1) -/* 80157C3C 00154B9C 4B EF 49 39 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80157C40 00154BA0 7C 64 1B 78 */ mr r4, r3 -/* 80157C44 00154BA4 38 61 00 0C */ addi r3, r1, 0xc -/* 80157C48 00154BA8 4B F4 D7 F1 */ bl sub_800a5438 -/* 80157C4C 00154BAC 4B F4 D7 C1 */ bl "CastTo<9CParasite>__10CPatternedFP7CEntity" -/* 80157C50 00154BB0 7C 7F 1B 79 */ or. r31, r3, r3 -/* 80157C54 00154BB4 40 82 00 18 */ bne lbl_80157C6C -/* 80157C58 00154BB8 7F C3 F3 78 */ mr r3, r30 -/* 80157C5C 00154BBC 7F A4 EB 78 */ mr r4, r29 -/* 80157C60 00154BC0 4B FD 52 11 */ bl "erase__Q24rstl43list<9TUniqueId,Q24rstl17rmemory_allocator>FRCQ34rstl43list<9TUniqueId,Q24rstl17rmemory_allocator>8iterator" -/* 80157C64 00154BC4 7C 7D 1B 78 */ mr r29, r3 -/* 80157C68 00154BC8 48 00 00 B8 */ b lbl_80157D20 -lbl_80157C6C: -/* 80157C6C 00154BCC 7C 1F D8 40 */ cmplw r31, r27 -/* 80157C70 00154BD0 41 82 00 AC */ beq lbl_80157D1C -/* 80157C74 00154BD4 88 1F 04 00 */ lbz r0, 0x400(r31) -/* 80157C78 00154BD8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 80157C7C 00154BDC 41 82 00 A0 */ beq lbl_80157D1C -/* 80157C80 00154BE0 C0 FF 00 50 */ lfs f7, 0x50(r31) -/* 80157C84 00154BE4 C0 1B 00 50 */ lfs f0, 0x50(r27) -/* 80157C88 00154BE8 C0 7F 00 40 */ lfs f3, 0x40(r31) -/* 80157C8C 00154BEC EC C7 00 28 */ fsubs f6, f7, f0 -/* 80157C90 00154BF0 C0 1B 00 40 */ lfs f0, 0x40(r27) -/* 80157C94 00154BF4 C1 1F 00 60 */ lfs f8, 0x60(r31) -/* 80157C98 00154BF8 EC 83 00 28 */ fsubs f4, f3, f0 -/* 80157C9C 00154BFC C0 1B 00 60 */ lfs f0, 0x60(r27) -/* 80157CA0 00154C00 EC 26 01 B2 */ fmuls f1, f6, f6 -/* 80157CA4 00154C04 EC A8 00 28 */ fsubs f5, f8, f0 -/* 80157CA8 00154C08 C0 1B 06 D0 */ lfs f0, 0x6d0(r27) -/* 80157CAC 00154C0C EC 44 01 32 */ fmuls f2, f4, f4 -/* 80157CB0 00154C10 EC 00 00 32 */ fmuls f0, f0, f0 -/* 80157CB4 00154C14 D0 61 00 10 */ stfs f3, 0x10(r1) -/* 80157CB8 00154C18 EC 65 01 72 */ fmuls f3, f5, f5 -/* 80157CBC 00154C1C EC 22 08 2A */ fadds f1, f2, f1 -/* 80157CC0 00154C20 D0 E1 00 14 */ stfs f7, 0x14(r1) -/* 80157CC4 00154C24 D1 01 00 18 */ stfs f8, 0x18(r1) -/* 80157CC8 00154C28 EC 23 08 2A */ fadds f1, f3, f1 -/* 80157CCC 00154C2C D0 81 00 1C */ stfs f4, 0x1c(r1) -/* 80157CD0 00154C30 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80157CD4 00154C34 D0 C1 00 20 */ stfs f6, 0x20(r1) -/* 80157CD8 00154C38 D0 A1 00 24 */ stfs f5, 0x24(r1) -/* 80157CDC 00154C3C 40 80 00 40 */ bge lbl_80157D1C -/* 80157CE0 00154C40 88 1F 07 42 */ lbz r0, 0x742(r31) -/* 80157CE4 00154C44 38 60 00 01 */ li r3, 1 -/* 80157CE8 00154C48 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80157CEC 00154C4C 98 1F 07 42 */ stb r0, 0x742(r31) -/* 80157CF0 00154C50 80 7C 09 00 */ lwz r3, 0x900(r28) -/* 80157CF4 00154C54 48 1B A7 E9 */ bl Float__9CRandom16Fv -/* 80157CF8 00154C58 C0 02 9E 64 */ lfs f0, lbl_805ABB84@sda21(r2) -/* 80157CFC 00154C5C EC 00 00 7A */ fmadds f0, f0, f1, f0 -/* 80157D00 00154C60 D0 1F 06 08 */ stfs f0, 0x608(r31) -/* 80157D04 00154C64 C0 5B 00 60 */ lfs f2, 0x60(r27) -/* 80157D08 00154C68 C0 3B 00 50 */ lfs f1, 0x50(r27) -/* 80157D0C 00154C6C C0 1B 00 40 */ lfs f0, 0x40(r27) -/* 80157D10 00154C70 D0 1F 05 F8 */ stfs f0, 0x5f8(r31) -/* 80157D14 00154C74 D0 3F 05 FC */ stfs f1, 0x5fc(r31) -/* 80157D18 00154C78 D0 5F 06 00 */ stfs f2, 0x600(r31) -lbl_80157D1C: -/* 80157D1C 00154C7C 83 BD 00 04 */ lwz r29, 4(r29) -lbl_80157D20: -/* 80157D20 00154C80 80 1E 00 08 */ lwz r0, 8(r30) -/* 80157D24 00154C84 7C 1D 00 40 */ cmplw r29, r0 -/* 80157D28 00154C88 40 82 FF 04 */ bne lbl_80157C2C -/* 80157D2C 00154C8C 88 1B 04 00 */ lbz r0, 0x400(r27) -/* 80157D30 00154C90 38 60 00 00 */ li r3, 0 -/* 80157D34 00154C94 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80157D38 00154C98 98 1B 04 00 */ stb r0, 0x400(r27) -lbl_80157D3C: -/* 80157D3C 00154C9C BB 61 00 2C */ lmw r27, 0x2c(r1) -/* 80157D40 00154CA0 80 01 00 44 */ lwz r0, 0x44(r1) -/* 80157D44 00154CA4 7C 08 03 A6 */ mtlr r0 -/* 80157D48 00154CA8 38 21 00 40 */ addi r1, r1, 0x40 -/* 80157D4C 00154CAC 4E 80 00 20 */ blr - -.global Death__9CParasiteFRC9CVector3fR13CStateManager -Death__9CParasiteFRC9CVector3fR13CStateManager: -/* 80157D50 00154CB0 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80157D54 00154CB4 7C 08 02 A6 */ mflr r0 -/* 80157D58 00154CB8 90 01 00 24 */ stw r0, 0x24(r1) -/* 80157D5C 00154CBC 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80157D60 00154CC0 7C DF 33 78 */ mr r31, r6 -/* 80157D64 00154CC4 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80157D68 00154CC8 7C BE 2B 78 */ mr r30, r5 -/* 80157D6C 00154CCC 93 A1 00 14 */ stw r29, 0x14(r1) -/* 80157D70 00154CD0 7C 9D 23 78 */ mr r29, r4 -/* 80157D74 00154CD4 93 81 00 10 */ stw r28, 0x10(r1) -/* 80157D78 00154CD8 7C 7C 1B 78 */ mr r28, r3 -/* 80157D7C 00154CDC 4B FC 35 FD */ bl Stop__13CPhysicsActorFv -/* 80157D80 00154CE0 7F 83 E3 78 */ mr r3, r28 -/* 80157D84 00154CE4 7F A4 EB 78 */ mr r4, r29 -/* 80157D88 00154CE8 81 9C 00 00 */ lwz r12, 0(r28) -/* 80157D8C 00154CEC 38 A0 00 00 */ li r5, 0 -/* 80157D90 00154CF0 C0 22 9E 50 */ lfs f1, lbl_805ABB70@sda21(r2) -/* 80157D94 00154CF4 81 8C 01 30 */ lwz r12, 0x130(r12) -/* 80157D98 00154CF8 7D 89 03 A6 */ mtctr r12 -/* 80157D9C 00154CFC 4E 80 04 21 */ bctrl -/* 80157DA0 00154D00 7F 83 E3 78 */ mr r3, r28 -/* 80157DA4 00154D04 81 9C 00 00 */ lwz r12, 0(r28) -/* 80157DA8 00154D08 81 8C 00 80 */ lwz r12, 0x80(r12) -/* 80157DAC 00154D0C 7D 89 03 A6 */ mtctr r12 -/* 80157DB0 00154D10 4E 80 04 21 */ bctrl -/* 80157DB4 00154D14 C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) -/* 80157DB8 00154D18 FC 20 08 50 */ fneg f1, f1 -/* 80157DBC 00154D1C 7F 83 E3 78 */ mr r3, r28 -/* 80157DC0 00154D20 7F A4 EB 78 */ mr r4, r29 -/* 80157DC4 00154D24 D0 1C 01 50 */ stfs f0, 0x150(r28) -/* 80157DC8 00154D28 7F C5 F3 78 */ mr r5, r30 -/* 80157DCC 00154D2C 7F E6 FB 78 */ mr r6, r31 -/* 80157DD0 00154D30 D0 1C 01 54 */ stfs f0, 0x154(r28) -/* 80157DD4 00154D34 D0 3C 01 58 */ stfs f1, 0x158(r28) -/* 80157DD8 00154D38 4B F2 35 CD */ bl Death__10CPatternedFR13CStateManagerRC9CVector3f18EScriptObjectState -/* 80157DDC 00154D3C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80157DE0 00154D40 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80157DE4 00154D44 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 80157DE8 00154D48 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 80157DEC 00154D4C 83 81 00 10 */ lwz r28, 0x10(r1) -/* 80157DF0 00154D50 7C 08 03 A6 */ mtlr r0 -/* 80157DF4 00154D54 38 21 00 20 */ addi r1, r1, 0x20 -/* 80157DF8 00154D58 4E 80 00 20 */ blr - -.global TargetPlayer__9CParasiteFR13CStateManager9EStateMsgf -TargetPlayer__9CParasiteFR13CStateManager9EStateMsgf: -/* 80157DFC 00154D5C 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 80157E00 00154D60 7C 08 02 A6 */ mflr r0 -/* 80157E04 00154D64 2C 05 00 01 */ cmpwi r5, 1 -/* 80157E08 00154D68 90 01 00 44 */ stw r0, 0x44(r1) -/* 80157E0C 00154D6C 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 80157E10 00154D70 41 82 00 4C */ beq lbl_80157E5C -/* 80157E14 00154D74 40 80 00 D0 */ bge lbl_80157EE4 -/* 80157E18 00154D78 2C 05 00 00 */ cmpwi r5, 0 -/* 80157E1C 00154D7C 40 80 00 0C */ bge lbl_80157E28 -/* 80157E20 00154D80 48 00 00 C4 */ b lbl_80157EE4 -/* 80157E24 00154D84 48 00 00 C0 */ b lbl_80157EE4 -lbl_80157E28: -/* 80157E28 00154D88 80 84 08 4C */ lwz r4, 0x84c(r4) -/* 80157E2C 00154D8C C0 62 9E 50 */ lfs f3, lbl_805ABB70@sda21(r2) -/* 80157E30 00154D90 C0 04 00 40 */ lfs f0, 0x40(r4) -/* 80157E34 00154D94 C0 84 00 50 */ lfs f4, 0x50(r4) -/* 80157E38 00154D98 EC 00 18 2A */ fadds f0, f0, f3 -/* 80157E3C 00154D9C C0 44 00 60 */ lfs f2, 0x60(r4) -/* 80157E40 00154DA0 C0 22 9E 68 */ lfs f1, lbl_805ABB88@sda21(r2) -/* 80157E44 00154DA4 EC 64 18 2A */ fadds f3, f4, f3 -/* 80157E48 00154DA8 D0 03 05 F8 */ stfs f0, 0x5f8(r3) -/* 80157E4C 00154DAC EC 02 08 2A */ fadds f0, f2, f1 -/* 80157E50 00154DB0 D0 63 05 FC */ stfs f3, 0x5fc(r3) -/* 80157E54 00154DB4 D0 03 06 00 */ stfs f0, 0x600(r3) -/* 80157E58 00154DB8 48 00 00 8C */ b lbl_80157EE4 -lbl_80157E5C: -/* 80157E5C 00154DBC C0 43 00 58 */ lfs f2, 0x58(r3) -/* 80157E60 00154DC0 38 81 00 20 */ addi r4, r1, 0x20 -/* 80157E64 00154DC4 C0 23 00 48 */ lfs f1, 0x48(r3) -/* 80157E68 00154DC8 38 A1 00 14 */ addi r5, r1, 0x14 -/* 80157E6C 00154DCC C0 03 00 38 */ lfs f0, 0x38(r3) -/* 80157E70 00154DD0 D0 01 00 08 */ stfs f0, 8(r1) -/* 80157E74 00154DD4 D0 21 00 0C */ stfs f1, 0xc(r1) -/* 80157E78 00154DD8 D0 41 00 10 */ stfs f2, 0x10(r1) -/* 80157E7C 00154DDC C0 43 00 5C */ lfs f2, 0x5c(r3) -/* 80157E80 00154DE0 C0 23 00 4C */ lfs f1, 0x4c(r3) -/* 80157E84 00154DE4 C0 03 00 3C */ lfs f0, 0x3c(r3) -/* 80157E88 00154DE8 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 80157E8C 00154DEC D0 21 00 18 */ stfs f1, 0x18(r1) -/* 80157E90 00154DF0 D0 41 00 1C */ stfs f2, 0x1c(r1) -/* 80157E94 00154DF4 C0 23 05 FC */ lfs f1, 0x5fc(r3) -/* 80157E98 00154DF8 C0 03 00 50 */ lfs f0, 0x50(r3) -/* 80157E9C 00154DFC C0 63 06 00 */ lfs f3, 0x600(r3) -/* 80157EA0 00154E00 C0 43 00 60 */ lfs f2, 0x60(r3) -/* 80157EA4 00154E04 EC 81 00 28 */ fsubs f4, f1, f0 -/* 80157EA8 00154E08 C0 23 05 F8 */ lfs f1, 0x5f8(r3) -/* 80157EAC 00154E0C C0 03 00 40 */ lfs f0, 0x40(r3) -/* 80157EB0 00154E10 EC 43 10 28 */ fsubs f2, f3, f2 -/* 80157EB4 00154E14 EC 01 00 28 */ fsubs f0, f1, f0 -/* 80157EB8 00154E18 D0 81 00 24 */ stfs f4, 0x24(r1) -/* 80157EBC 00154E1C D0 41 00 28 */ stfs f2, 0x28(r1) -/* 80157EC0 00154E20 D0 01 00 20 */ stfs f0, 0x20(r1) -/* 80157EC4 00154E24 83 E3 04 50 */ lwz r31, 0x450(r3) -/* 80157EC8 00154E28 38 61 00 2C */ addi r3, r1, 0x2c -/* 80157ECC 00154E2C 48 11 12 D1 */ bl ProjectVectorToPlane__11CWallWalkerFRC9CVector3fRC9CVector3f -/* 80157ED0 00154E30 C0 22 9E 58 */ lfs f1, lbl_805ABB78@sda21(r2) -/* 80157ED4 00154E34 7F E3 FB 78 */ mr r3, r31 -/* 80157ED8 00154E38 38 81 00 2C */ addi r4, r1, 0x2c -/* 80157EDC 00154E3C 38 A1 00 08 */ addi r5, r1, 8 -/* 80157EE0 00154E40 4B FE 25 89 */ bl FaceDirection3D__15CBodyControllerFRC9CVector3ff -lbl_80157EE4: -/* 80157EE4 00154E44 80 01 00 44 */ lwz r0, 0x44(r1) -/* 80157EE8 00154E48 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 80157EEC 00154E4C 7C 08 03 A6 */ mtlr r0 -/* 80157EF0 00154E50 38 21 00 40 */ addi r1, r1, 0x40 -/* 80157EF4 00154E54 4E 80 00 20 */ blr - -.global Retreat__9CParasiteFR13CStateManager9EStateMsgf -Retreat__9CParasiteFR13CStateManager9EStateMsgf: -/* 80157EF8 00154E58 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 80157EFC 00154E5C 7C 08 02 A6 */ mflr r0 -/* 80157F00 00154E60 2C 05 00 01 */ cmpwi r5, 1 -/* 80157F04 00154E64 90 01 00 64 */ stw r0, 0x64(r1) -/* 80157F08 00154E68 93 E1 00 5C */ stw r31, 0x5c(r1) -/* 80157F0C 00154E6C 7C 7F 1B 78 */ mr r31, r3 -/* 80157F10 00154E70 93 C1 00 58 */ stw r30, 0x58(r1) -/* 80157F14 00154E74 7C 9E 23 78 */ mr r30, r4 -/* 80157F18 00154E78 41 82 02 30 */ beq lbl_80158148 -/* 80157F1C 00154E7C 40 80 00 10 */ bge lbl_80157F2C -/* 80157F20 00154E80 2C 05 00 00 */ cmpwi r5, 0 -/* 80157F24 00154E84 40 80 00 14 */ bge lbl_80157F38 -/* 80157F28 00154E88 48 00 02 3C */ b lbl_80158164 -lbl_80157F2C: -/* 80157F2C 00154E8C 2C 05 00 03 */ cmpwi r5, 3 -/* 80157F30 00154E90 40 80 02 34 */ bge lbl_80158164 -/* 80157F34 00154E94 48 00 02 20 */ b lbl_80158154 -lbl_80157F38: -/* 80157F38 00154E98 80 9E 08 4C */ lwz r4, 0x84c(r30) -/* 80157F3C 00154E9C 38 61 00 20 */ addi r3, r1, 0x20 -/* 80157F40 00154EA0 C0 1F 00 60 */ lfs f0, 0x60(r31) -/* 80157F44 00154EA4 C0 24 00 60 */ lfs f1, 0x60(r4) -/* 80157F48 00154EA8 C0 84 00 50 */ lfs f4, 0x50(r4) -/* 80157F4C 00154EAC C0 7F 00 50 */ lfs f3, 0x50(r31) -/* 80157F50 00154EB0 EC A1 00 28 */ fsubs f5, f1, f0 -/* 80157F54 00154EB4 C0 44 00 40 */ lfs f2, 0x40(r4) -/* 80157F58 00154EB8 C0 3F 00 40 */ lfs f1, 0x40(r31) -/* 80157F5C 00154EBC EC 64 18 28 */ fsubs f3, f4, f3 -/* 80157F60 00154EC0 C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) -/* 80157F64 00154EC4 EC 22 08 28 */ fsubs f1, f2, f1 -/* 80157F68 00154EC8 D0 A1 00 28 */ stfs f5, 0x28(r1) -/* 80157F6C 00154ECC D0 61 00 24 */ stfs f3, 0x24(r1) -/* 80157F70 00154ED0 D0 21 00 20 */ stfs f1, 0x20(r1) -/* 80157F74 00154ED4 D0 01 00 28 */ stfs f0, 0x28(r1) -/* 80157F78 00154ED8 48 1B C7 81 */ bl CanBeNormalized__9CVector3fCFv -/* 80157F7C 00154EDC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80157F80 00154EE0 41 82 00 2C */ beq lbl_80157FAC -/* 80157F84 00154EE4 38 61 00 14 */ addi r3, r1, 0x14 -/* 80157F88 00154EE8 38 81 00 20 */ addi r4, r1, 0x20 -/* 80157F8C 00154EEC 48 1B C8 C5 */ bl AsNormalized__9CVector3fCFv -/* 80157F90 00154EF0 C0 41 00 14 */ lfs f2, 0x14(r1) -/* 80157F94 00154EF4 C0 21 00 18 */ lfs f1, 0x18(r1) -/* 80157F98 00154EF8 C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 80157F9C 00154EFC D0 41 00 20 */ stfs f2, 0x20(r1) -/* 80157FA0 00154F00 D0 21 00 24 */ stfs f1, 0x24(r1) -/* 80157FA4 00154F04 D0 01 00 28 */ stfs f0, 0x28(r1) -/* 80157FA8 00154F08 48 00 00 20 */ b lbl_80157FC8 -lbl_80157FAC: -/* 80157FAC 00154F0C 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 80157FB0 00154F10 C0 43 00 58 */ lfs f2, 0x58(r3) -/* 80157FB4 00154F14 C0 23 00 48 */ lfs f1, 0x48(r3) -/* 80157FB8 00154F18 C0 03 00 38 */ lfs f0, 0x38(r3) -/* 80157FBC 00154F1C D0 01 00 20 */ stfs f0, 0x20(r1) -/* 80157FC0 00154F20 D0 21 00 24 */ stfs f1, 0x24(r1) -/* 80157FC4 00154F24 D0 41 00 28 */ stfs f2, 0x28(r1) -lbl_80157FC8: -/* 80157FC8 00154F28 C0 A2 9E 6C */ lfs f5, lbl_805ABB8C@sda21(r2) -/* 80157FCC 00154F2C 7F E3 FB 78 */ mr r3, r31 -/* 80157FD0 00154F30 C0 01 00 20 */ lfs f0, 0x20(r1) -/* 80157FD4 00154F34 38 81 00 08 */ addi r4, r1, 8 -/* 80157FD8 00154F38 C0 61 00 24 */ lfs f3, 0x24(r1) -/* 80157FDC 00154F3C EC 05 00 32 */ fmuls f0, f5, f0 -/* 80157FE0 00154F40 C0 3F 00 40 */ lfs f1, 0x40(r31) -/* 80157FE4 00154F44 C0 41 00 28 */ lfs f2, 0x28(r1) -/* 80157FE8 00154F48 EC 85 00 F2 */ fmuls f4, f5, f3 -/* 80157FEC 00154F4C C0 DF 00 50 */ lfs f6, 0x50(r31) -/* 80157FF0 00154F50 EC 01 00 28 */ fsubs f0, f1, f0 -/* 80157FF4 00154F54 C0 7F 00 60 */ lfs f3, 0x60(r31) -/* 80157FF8 00154F58 EC 25 00 B2 */ fmuls f1, f5, f2 -/* 80157FFC 00154F5C EC 46 20 28 */ fsubs f2, f6, f4 -/* 80158000 00154F60 D0 1F 05 F8 */ stfs f0, 0x5f8(r31) -/* 80158004 00154F64 EC 03 08 28 */ fsubs f0, f3, f1 -/* 80158008 00154F68 D0 5F 05 FC */ stfs f2, 0x5fc(r31) -/* 8015800C 00154F6C D0 1F 06 00 */ stfs f0, 0x600(r31) -/* 80158010 00154F70 80 BF 05 F8 */ lwz r5, 0x5f8(r31) -/* 80158014 00154F74 80 1F 05 FC */ lwz r0, 0x5fc(r31) -/* 80158018 00154F78 90 A1 00 08 */ stw r5, 8(r1) -/* 8015801C 00154F7C 90 01 00 0C */ stw r0, 0xc(r1) -/* 80158020 00154F80 80 1F 06 00 */ lwz r0, 0x600(r31) -/* 80158024 00154F84 90 01 00 10 */ stw r0, 0x10(r1) -/* 80158028 00154F88 48 00 05 21 */ bl FaceTarget__9CParasiteF9CVector3f -/* 8015802C 00154F8C 39 60 00 00 */ li r11, 0 -/* 80158030 00154F90 39 20 00 01 */ li r9, 1 -/* 80158034 00154F94 91 7F 05 E8 */ stw r11, 0x5e8(r31) -/* 80158038 00154F98 3C A0 80 3E */ lis r5, lbl_803DAA68@ha -/* 8015803C 00154F9C 88 61 00 50 */ lbz r3, 0x50(r1) -/* 80158040 00154FA0 51 63 3E 30 */ rlwimi r3, r11, 7, 0x18, 0x18 -/* 80158044 00154FA4 88 1F 07 42 */ lbz r0, 0x742(r31) -/* 80158048 00154FA8 51 60 26 F6 */ rlwimi r0, r11, 4, 0x1b, 0x1b -/* 8015804C 00154FAC 3C 80 80 5A */ lis r4, skZero3f@ha -/* 80158050 00154FB0 39 05 AA 68 */ addi r8, r5, lbl_803DAA68@l -/* 80158054 00154FB4 98 1F 07 42 */ stb r0, 0x742(r31) -/* 80158058 00154FB8 3C C0 80 3E */ lis r6, lbl_803DA9FC@ha -/* 8015805C 00154FBC 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 80158060 00154FC0 38 E0 00 10 */ li r7, 0x10 -/* 80158064 00154FC4 89 5F 07 42 */ lbz r10, 0x742(r31) -/* 80158068 00154FC8 51 6A 1F 38 */ rlwimi r10, r11, 3, 0x1c, 0x1c -/* 8015806C 00154FCC 38 A4 66 A0 */ addi r5, r4, skZero3f@l -/* 80158070 00154FD0 91 01 00 2C */ stw r8, 0x2c(r1) -/* 80158074 00154FD4 38 C6 A9 FC */ addi r6, r6, lbl_803DA9FC@l -/* 80158078 00154FD8 51 60 36 72 */ rlwimi r0, r11, 6, 0x19, 0x19 -/* 8015807C 00154FDC 99 5F 07 42 */ stb r10, 0x742(r31) -/* 80158080 00154FE0 38 80 00 10 */ li r4, 0x10 -/* 80158084 00154FE4 89 1F 07 42 */ lbz r8, 0x742(r31) -/* 80158088 00154FE8 51 28 36 72 */ rlwimi r8, r9, 6, 0x19, 0x19 -/* 8015808C 00154FEC 98 61 00 50 */ stb r3, 0x50(r1) -/* 80158090 00154FF0 99 1F 07 42 */ stb r8, 0x742(r31) -/* 80158094 00154FF4 C0 BF 05 F8 */ lfs f5, 0x5f8(r31) -/* 80158098 00154FF8 C0 9F 05 FC */ lfs f4, 0x5fc(r31) -/* 8015809C 00154FFC C0 7F 06 00 */ lfs f3, 0x600(r31) -/* 801580A0 00155000 C0 45 00 00 */ lfs f2, 0(r5) -/* 801580A4 00155004 C0 25 00 04 */ lfs f1, 4(r5) -/* 801580A8 00155008 C0 05 00 08 */ lfs f0, 8(r5) -/* 801580AC 0015500C 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 801580B0 00155010 90 E1 00 30 */ stw r7, 0x30(r1) -/* 801580B4 00155014 3B E3 00 04 */ addi r31, r3, 4 -/* 801580B8 00155018 90 C1 00 2C */ stw r6, 0x2c(r1) -/* 801580BC 0015501C 7F E3 FB 78 */ mr r3, r31 -/* 801580C0 00155020 91 21 00 34 */ stw r9, 0x34(r1) -/* 801580C4 00155024 D0 A1 00 38 */ stfs f5, 0x38(r1) -/* 801580C8 00155028 D0 81 00 3C */ stfs f4, 0x3c(r1) -/* 801580CC 0015502C D0 61 00 40 */ stfs f3, 0x40(r1) -/* 801580D0 00155030 D0 41 00 44 */ stfs f2, 0x44(r1) -/* 801580D4 00155034 D0 21 00 48 */ stfs f1, 0x48(r1) -/* 801580D8 00155038 D0 01 00 4C */ stfs f0, 0x4c(r1) -/* 801580DC 0015503C 98 01 00 50 */ stb r0, 0x50(r1) -/* 801580E0 00155040 4B FD 93 59 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 801580E4 00155044 80 01 00 30 */ lwz r0, 0x30(r1) -/* 801580E8 00155048 3C 60 80 3E */ lis r3, lbl_803DA9FC@ha -/* 801580EC 0015504C 38 83 A9 FC */ addi r4, r3, lbl_803DA9FC@l -/* 801580F0 00155050 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 801580F4 00155054 90 1F 01 D4 */ stw r0, 0x1d4(r31) -/* 801580F8 00155058 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 801580FC 0015505C 80 A1 00 34 */ lwz r5, 0x34(r1) -/* 80158100 00155060 80 61 00 38 */ lwz r3, 0x38(r1) -/* 80158104 00155064 90 BF 01 D8 */ stw r5, 0x1d8(r31) -/* 80158108 00155068 80 A1 00 3C */ lwz r5, 0x3c(r1) -/* 8015810C 0015506C 90 7F 01 DC */ stw r3, 0x1dc(r31) -/* 80158110 00155070 80 61 00 40 */ lwz r3, 0x40(r1) -/* 80158114 00155074 90 BF 01 E0 */ stw r5, 0x1e0(r31) -/* 80158118 00155078 80 A1 00 44 */ lwz r5, 0x44(r1) -/* 8015811C 0015507C 90 7F 01 E4 */ stw r3, 0x1e4(r31) -/* 80158120 00155080 80 61 00 48 */ lwz r3, 0x48(r1) -/* 80158124 00155084 90 BF 01 E8 */ stw r5, 0x1e8(r31) -/* 80158128 00155088 80 A1 00 4C */ lwz r5, 0x4c(r1) -/* 8015812C 0015508C 90 7F 01 EC */ stw r3, 0x1ec(r31) -/* 80158130 00155090 88 61 00 50 */ lbz r3, 0x50(r1) -/* 80158134 00155094 90 BF 01 F0 */ stw r5, 0x1f0(r31) -/* 80158138 00155098 90 81 00 2C */ stw r4, 0x2c(r1) -/* 8015813C 0015509C 98 7F 01 F4 */ stb r3, 0x1f4(r31) -/* 80158140 001550A0 90 01 00 2C */ stw r0, 0x2c(r1) -/* 80158144 001550A4 48 00 00 20 */ b lbl_80158164 -lbl_80158148: -/* 80158148 001550A8 C0 02 9E 60 */ lfs f0, lbl_805ABB80@sda21(r2) -/* 8015814C 001550AC D0 1F 03 B4 */ stfs f0, 0x3b4(r31) -/* 80158150 001550B0 48 00 00 14 */ b lbl_80158164 -lbl_80158154: -/* 80158154 001550B4 88 1F 07 42 */ lbz r0, 0x742(r31) -/* 80158158 001550B8 38 60 00 01 */ li r3, 1 -/* 8015815C 001550BC 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 80158160 001550C0 98 1F 07 42 */ stb r0, 0x742(r31) -lbl_80158164: -/* 80158164 001550C4 80 01 00 64 */ lwz r0, 0x64(r1) -/* 80158168 001550C8 83 E1 00 5C */ lwz r31, 0x5c(r1) -/* 8015816C 001550CC 83 C1 00 58 */ lwz r30, 0x58(r1) -/* 80158170 001550D0 7C 08 03 A6 */ mtlr r0 -/* 80158174 001550D4 38 21 00 60 */ addi r1, r1, 0x60 -/* 80158178 001550D8 4E 80 00 20 */ blr - -.global Attack__9CParasiteFR13CStateManager9EStateMsgf -Attack__9CParasiteFR13CStateManager9EStateMsgf: -/* 8015817C 001550DC 94 21 FF 20 */ stwu r1, -0xe0(r1) -/* 80158180 001550E0 7C 08 02 A6 */ mflr r0 -/* 80158184 001550E4 90 01 00 E4 */ stw r0, 0xe4(r1) -/* 80158188 001550E8 DB E1 00 D0 */ stfd f31, 0xd0(r1) -/* 8015818C 001550EC F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 -/* 80158190 001550F0 DB C1 00 C0 */ stfd f30, 0xc0(r1) -/* 80158194 001550F4 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 -/* 80158198 001550F8 DB A1 00 B0 */ stfd f29, 0xb0(r1) -/* 8015819C 001550FC F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0 -/* 801581A0 00155100 DB 81 00 A0 */ stfd f28, 0xa0(r1) -/* 801581A4 00155104 F3 81 00 A8 */ psq_st f28, 168(r1), 0, qr0 -/* 801581A8 00155108 DB 61 00 90 */ stfd f27, 0x90(r1) -/* 801581AC 0015510C F3 61 00 98 */ psq_st f27, 152(r1), 0, qr0 -/* 801581B0 00155110 93 E1 00 8C */ stw r31, 0x8c(r1) -/* 801581B4 00155114 93 C1 00 88 */ stw r30, 0x88(r1) -/* 801581B8 00155118 93 A1 00 84 */ stw r29, 0x84(r1) -/* 801581BC 0015511C 2C 05 00 01 */ cmpwi r5, 1 -/* 801581C0 00155120 7C 7F 1B 78 */ mr r31, r3 -/* 801581C4 00155124 7C 9D 23 78 */ mr r29, r4 -/* 801581C8 00155128 41 82 01 CC */ beq lbl_80158394 -/* 801581CC 0015512C 40 80 00 10 */ bge lbl_801581DC -/* 801581D0 00155130 2C 05 00 00 */ cmpwi r5, 0 -/* 801581D4 00155134 40 80 00 14 */ bge lbl_801581E8 -/* 801581D8 00155138 48 00 03 2C */ b lbl_80158504 -lbl_801581DC: -/* 801581DC 0015513C 2C 05 00 03 */ cmpwi r5, 3 -/* 801581E0 00155140 40 80 03 24 */ bge lbl_80158504 -/* 801581E4 00155144 48 00 03 04 */ b lbl_801584E8 -lbl_801581E8: -/* 801581E8 00155148 C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) -/* 801581EC 0015514C D0 1F 06 08 */ stfs f0, 0x608(r31) -/* 801581F0 00155150 80 7D 08 4C */ lwz r3, 0x84c(r29) -/* 801581F4 00155154 83 DD 09 00 */ lwz r30, 0x900(r29) -/* 801581F8 00155158 80 03 02 F8 */ lwz r0, 0x2f8(r3) -/* 801581FC 0015515C 2C 00 00 01 */ cmpwi r0, 1 -/* 80158200 00155160 40 82 00 6C */ bne lbl_8015826C -/* 80158204 00155164 7F C3 F3 78 */ mr r3, r30 -/* 80158208 00155168 48 1B A2 D5 */ bl Float__9CRandom16Fv -/* 8015820C 0015516C C0 02 9E 64 */ lfs f0, lbl_805ABB84@sda21(r2) -/* 80158210 00155170 7F C3 F3 78 */ mr r3, r30 -/* 80158214 00155174 EF C1 00 28 */ fsubs f30, f1, f0 -/* 80158218 00155178 48 1B A2 C5 */ bl Float__9CRandom16Fv -/* 8015821C 0015517C C0 02 9E 64 */ lfs f0, lbl_805ABB84@sda21(r2) -/* 80158220 00155180 7F C3 F3 78 */ mr r3, r30 -/* 80158224 00155184 EF E1 00 28 */ fsubs f31, f1, f0 -/* 80158228 00155188 48 1B A2 B5 */ bl Float__9CRandom16Fv -/* 8015822C 0015518C C0 02 9E 64 */ lfs f0, lbl_805ABB84@sda21(r2) -/* 80158230 00155190 80 7D 08 4C */ lwz r3, 0x84c(r29) -/* 80158234 00155194 EC 61 00 28 */ fsubs f3, f1, f0 -/* 80158238 00155198 C0 23 00 40 */ lfs f1, 0x40(r3) -/* 8015823C 0015519C EC 80 07 F2 */ fmuls f4, f0, f31 -/* 80158240 001551A0 C0 A3 00 50 */ lfs f5, 0x50(r3) -/* 80158244 001551A4 EC 40 07 B2 */ fmuls f2, f0, f30 -/* 80158248 001551A8 EC 00 00 F2 */ fmuls f0, f0, f3 -/* 8015824C 001551AC C0 63 00 60 */ lfs f3, 0x60(r3) -/* 80158250 001551B0 EC 85 20 2A */ fadds f4, f5, f4 -/* 80158254 001551B4 EC 01 00 2A */ fadds f0, f1, f0 -/* 80158258 001551B8 EC 23 10 2A */ fadds f1, f3, f2 -/* 8015825C 001551BC D0 1F 05 F8 */ stfs f0, 0x5f8(r31) -/* 80158260 001551C0 D0 9F 05 FC */ stfs f4, 0x5fc(r31) -/* 80158264 001551C4 D0 3F 06 00 */ stfs f1, 0x600(r31) -/* 80158268 001551C8 48 00 00 D8 */ b lbl_80158340 -lbl_8015826C: -/* 8015826C 001551CC C3 7F 00 60 */ lfs f27, 0x60(r31) -/* 80158270 001551D0 7F C3 F3 78 */ mr r3, r30 -/* 80158274 001551D4 C3 9F 00 50 */ lfs f28, 0x50(r31) -/* 80158278 001551D8 C3 BF 00 40 */ lfs f29, 0x40(r31) -/* 8015827C 001551DC 48 1B A2 61 */ bl Float__9CRandom16Fv -/* 80158280 001551E0 C0 02 9E 64 */ lfs f0, lbl_805ABB84@sda21(r2) -/* 80158284 001551E4 7F C3 F3 78 */ mr r3, r30 -/* 80158288 001551E8 EF E0 08 2A */ fadds f31, f0, f1 -/* 8015828C 001551EC 48 1B A2 51 */ bl Float__9CRandom16Fv -/* 80158290 001551F0 C0 02 9E 64 */ lfs f0, lbl_805ABB84@sda21(r2) -/* 80158294 001551F4 7F C3 F3 78 */ mr r3, r30 -/* 80158298 001551F8 EF C1 00 28 */ fsubs f30, f1, f0 -/* 8015829C 001551FC 48 1B A2 41 */ bl Float__9CRandom16Fv -/* 801582A0 00155200 C0 02 9E 64 */ lfs f0, lbl_805ABB84@sda21(r2) -/* 801582A4 00155204 38 61 00 44 */ addi r3, r1, 0x44 -/* 801582A8 00155208 80 BD 08 4C */ lwz r5, 0x84c(r29) -/* 801582AC 0015520C 38 81 00 38 */ addi r4, r1, 0x38 -/* 801582B0 00155210 EC 21 00 28 */ fsubs f1, f1, f0 -/* 801582B4 00155214 C0 C5 00 60 */ lfs f6, 0x60(r5) -/* 801582B8 00155218 C0 85 00 50 */ lfs f4, 0x50(r5) -/* 801582BC 0015521C C0 05 00 40 */ lfs f0, 0x40(r5) -/* 801582C0 00155220 EC 46 F8 2A */ fadds f2, f6, f31 -/* 801582C4 00155224 EC 64 F0 2A */ fadds f3, f4, f30 -/* 801582C8 00155228 D0 81 00 24 */ stfs f4, 0x24(r1) -/* 801582CC 0015522C EC 20 08 2A */ fadds f1, f0, f1 -/* 801582D0 00155230 EC 82 D8 28 */ fsubs f4, f2, f27 -/* 801582D4 00155234 D0 01 00 20 */ stfs f0, 0x20(r1) -/* 801582D8 00155238 EC A3 E0 28 */ fsubs f5, f3, f28 -/* 801582DC 0015523C EC 01 E8 28 */ fsubs f0, f1, f29 -/* 801582E0 00155240 D0 C1 00 28 */ stfs f6, 0x28(r1) -/* 801582E4 00155244 D0 21 00 2C */ stfs f1, 0x2c(r1) -/* 801582E8 00155248 D0 61 00 30 */ stfs f3, 0x30(r1) -/* 801582EC 0015524C D0 41 00 34 */ stfs f2, 0x34(r1) -/* 801582F0 00155250 D0 01 00 38 */ stfs f0, 0x38(r1) -/* 801582F4 00155254 D0 A1 00 3C */ stfs f5, 0x3c(r1) -/* 801582F8 00155258 D0 81 00 40 */ stfs f4, 0x40(r1) -/* 801582FC 0015525C 48 1B C5 55 */ bl AsNormalized__9CVector3fCFv -/* 80158300 00155260 C0 A2 9E 70 */ lfs f5, lbl_805ABB90@sda21(r2) -/* 80158304 00155264 C0 01 00 44 */ lfs f0, 0x44(r1) -/* 80158308 00155268 C0 61 00 48 */ lfs f3, 0x48(r1) -/* 8015830C 0015526C EC 05 00 32 */ fmuls f0, f5, f0 -/* 80158310 00155270 C0 3F 00 40 */ lfs f1, 0x40(r31) -/* 80158314 00155274 C0 41 00 4C */ lfs f2, 0x4c(r1) -/* 80158318 00155278 EC 85 00 F2 */ fmuls f4, f5, f3 -/* 8015831C 0015527C C0 DF 00 50 */ lfs f6, 0x50(r31) -/* 80158320 00155280 EC 01 00 2A */ fadds f0, f1, f0 -/* 80158324 00155284 C0 7F 00 60 */ lfs f3, 0x60(r31) -/* 80158328 00155288 EC 25 00 B2 */ fmuls f1, f5, f2 -/* 8015832C 0015528C EC 46 20 2A */ fadds f2, f6, f4 -/* 80158330 00155290 D0 1F 05 F8 */ stfs f0, 0x5f8(r31) -/* 80158334 00155294 EC 03 08 2A */ fadds f0, f3, f1 -/* 80158338 00155298 D0 5F 05 FC */ stfs f2, 0x5fc(r31) -/* 8015833C 0015529C D0 1F 06 00 */ stfs f0, 0x600(r31) -lbl_80158340: -/* 80158340 001552A0 80 BF 05 F8 */ lwz r5, 0x5f8(r31) -/* 80158344 001552A4 7F E3 FB 78 */ mr r3, r31 -/* 80158348 001552A8 80 1F 05 FC */ lwz r0, 0x5fc(r31) -/* 8015834C 001552AC 38 81 00 14 */ addi r4, r1, 0x14 -/* 80158350 001552B0 90 A1 00 14 */ stw r5, 0x14(r1) -/* 80158354 001552B4 90 01 00 18 */ stw r0, 0x18(r1) -/* 80158358 001552B8 80 1F 06 00 */ lwz r0, 0x600(r31) -/* 8015835C 001552BC 90 01 00 1C */ stw r0, 0x1c(r1) -/* 80158360 001552C0 48 00 01 E9 */ bl FaceTarget__9CParasiteF9CVector3f -/* 80158364 001552C4 38 60 00 00 */ li r3, 0 -/* 80158368 001552C8 90 7F 05 E8 */ stw r3, 0x5e8(r31) -/* 8015836C 001552CC 88 1F 07 42 */ lbz r0, 0x742(r31) -/* 80158370 001552D0 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e -/* 80158374 001552D4 98 1F 07 42 */ stb r0, 0x742(r31) -/* 80158378 001552D8 88 1F 07 42 */ lbz r0, 0x742(r31) -/* 8015837C 001552DC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80158380 001552E0 98 1F 07 42 */ stb r0, 0x742(r31) -/* 80158384 001552E4 88 1F 07 42 */ lbz r0, 0x742(r31) -/* 80158388 001552E8 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 8015838C 001552EC 98 1F 07 42 */ stb r0, 0x742(r31) -/* 80158390 001552F0 48 00 01 74 */ b lbl_80158504 -lbl_80158394: -/* 80158394 001552F4 80 1F 05 E8 */ lwz r0, 0x5e8(r31) -/* 80158398 001552F8 2C 00 00 01 */ cmpwi r0, 1 -/* 8015839C 001552FC 41 82 01 68 */ beq lbl_80158504 -/* 801583A0 00155300 40 80 01 64 */ bge lbl_80158504 -/* 801583A4 00155304 2C 00 00 00 */ cmpwi r0, 0 -/* 801583A8 00155308 40 80 00 08 */ bge lbl_801583B0 -/* 801583AC 0015530C 48 00 01 58 */ b lbl_80158504 -lbl_801583B0: -/* 801583B0 00155310 80 9F 04 50 */ lwz r4, 0x450(r31) -/* 801583B4 00155314 80 04 02 B8 */ lwz r0, 0x2b8(r4) -/* 801583B8 00155318 2C 00 00 0D */ cmpwi r0, 0xd -/* 801583BC 0015531C 40 82 00 10 */ bne lbl_801583CC -/* 801583C0 00155320 38 00 00 01 */ li r0, 1 -/* 801583C4 00155324 90 1F 05 E8 */ stw r0, 0x5e8(r31) -/* 801583C8 00155328 48 00 01 3C */ b lbl_80158504 -lbl_801583CC: -/* 801583CC 0015532C 88 1F 07 42 */ lbz r0, 0x742(r31) -/* 801583D0 00155330 38 80 00 01 */ li r4, 1 -/* 801583D4 00155334 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 -/* 801583D8 00155338 38 81 00 08 */ addi r4, r1, 8 -/* 801583DC 0015533C 98 1F 07 42 */ stb r0, 0x742(r31) -/* 801583E0 00155340 80 BF 05 F8 */ lwz r5, 0x5f8(r31) -/* 801583E4 00155344 80 1F 05 FC */ lwz r0, 0x5fc(r31) -/* 801583E8 00155348 90 A1 00 08 */ stw r5, 8(r1) -/* 801583EC 0015534C 90 01 00 0C */ stw r0, 0xc(r1) -/* 801583F0 00155350 80 1F 06 00 */ lwz r0, 0x600(r31) -/* 801583F4 00155354 90 01 00 10 */ stw r0, 0x10(r1) -/* 801583F8 00155358 48 00 01 51 */ bl FaceTarget__9CParasiteF9CVector3f -/* 801583FC 0015535C 3C C0 80 3E */ lis r6, lbl_803DAA68@ha -/* 80158400 00155360 38 A0 00 00 */ li r5, 0 -/* 80158404 00155364 39 06 AA 68 */ addi r8, r6, lbl_803DAA68@l -/* 80158408 00155368 88 61 00 74 */ lbz r3, 0x74(r1) -/* 8015840C 0015536C 50 A3 3E 30 */ rlwimi r3, r5, 7, 0x18, 0x18 -/* 80158410 00155370 3C 80 80 5A */ lis r4, skZero3f@ha -/* 80158414 00155374 C4 44 66 A0 */ lfsu f2, skZero3f@l(r4) -/* 80158418 00155378 3C C0 80 3E */ lis r6, lbl_803DA9FC@ha -/* 8015841C 0015537C C0 BF 05 F8 */ lfs f5, 0x5f8(r31) -/* 80158420 00155380 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 80158424 00155384 C0 9F 05 FC */ lfs f4, 0x5fc(r31) -/* 80158428 00155388 38 E0 00 10 */ li r7, 0x10 -/* 8015842C 0015538C C0 7F 06 00 */ lfs f3, 0x600(r31) -/* 80158430 00155390 38 C6 A9 FC */ addi r6, r6, lbl_803DA9FC@l -/* 80158434 00155394 C0 24 00 04 */ lfs f1, 4(r4) -/* 80158438 00155398 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 -/* 8015843C 0015539C C0 04 00 08 */ lfs f0, 8(r4) -/* 80158440 001553A0 38 80 00 10 */ li r4, 0x10 -/* 80158444 001553A4 98 61 00 74 */ stb r3, 0x74(r1) -/* 80158448 001553A8 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8015844C 001553AC 91 01 00 50 */ stw r8, 0x50(r1) -/* 80158450 001553B0 3B C3 00 04 */ addi r30, r3, 4 -/* 80158454 001553B4 90 E1 00 54 */ stw r7, 0x54(r1) -/* 80158458 001553B8 7F C3 F3 78 */ mr r3, r30 -/* 8015845C 001553BC 90 C1 00 50 */ stw r6, 0x50(r1) -/* 80158460 001553C0 90 A1 00 58 */ stw r5, 0x58(r1) -/* 80158464 001553C4 D0 A1 00 5C */ stfs f5, 0x5c(r1) -/* 80158468 001553C8 D0 81 00 60 */ stfs f4, 0x60(r1) -/* 8015846C 001553CC D0 61 00 64 */ stfs f3, 0x64(r1) -/* 80158470 001553D0 D0 41 00 68 */ stfs f2, 0x68(r1) -/* 80158474 001553D4 D0 21 00 6C */ stfs f1, 0x6c(r1) -/* 80158478 001553D8 D0 01 00 70 */ stfs f0, 0x70(r1) -/* 8015847C 001553DC 98 01 00 74 */ stb r0, 0x74(r1) -/* 80158480 001553E0 4B FD 8F B9 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80158484 001553E4 80 01 00 54 */ lwz r0, 0x54(r1) -/* 80158488 001553E8 3C 60 80 3E */ lis r3, lbl_803DA9FC@ha -/* 8015848C 001553EC 38 83 A9 FC */ addi r4, r3, lbl_803DA9FC@l -/* 80158490 001553F0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80158494 001553F4 90 1E 01 D4 */ stw r0, 0x1d4(r30) -/* 80158498 001553F8 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 8015849C 001553FC 80 A1 00 58 */ lwz r5, 0x58(r1) -/* 801584A0 00155400 80 61 00 5C */ lwz r3, 0x5c(r1) -/* 801584A4 00155404 90 BE 01 D8 */ stw r5, 0x1d8(r30) -/* 801584A8 00155408 80 A1 00 60 */ lwz r5, 0x60(r1) -/* 801584AC 0015540C 90 7E 01 DC */ stw r3, 0x1dc(r30) -/* 801584B0 00155410 80 61 00 64 */ lwz r3, 0x64(r1) -/* 801584B4 00155414 90 BE 01 E0 */ stw r5, 0x1e0(r30) -/* 801584B8 00155418 80 A1 00 68 */ lwz r5, 0x68(r1) -/* 801584BC 0015541C 90 7E 01 E4 */ stw r3, 0x1e4(r30) -/* 801584C0 00155420 80 61 00 6C */ lwz r3, 0x6c(r1) -/* 801584C4 00155424 90 BE 01 E8 */ stw r5, 0x1e8(r30) -/* 801584C8 00155428 80 A1 00 70 */ lwz r5, 0x70(r1) -/* 801584CC 0015542C 90 7E 01 EC */ stw r3, 0x1ec(r30) -/* 801584D0 00155430 88 61 00 74 */ lbz r3, 0x74(r1) -/* 801584D4 00155434 90 BE 01 F0 */ stw r5, 0x1f0(r30) -/* 801584D8 00155438 90 81 00 50 */ stw r4, 0x50(r1) -/* 801584DC 0015543C 98 7E 01 F4 */ stb r3, 0x1f4(r30) -/* 801584E0 00155440 90 01 00 50 */ stw r0, 0x50(r1) -/* 801584E4 00155444 48 00 00 20 */ b lbl_80158504 -lbl_801584E8: -/* 801584E8 00155448 88 1F 07 42 */ lbz r0, 0x742(r31) -/* 801584EC 0015544C 38 60 00 01 */ li r3, 1 -/* 801584F0 00155450 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 801584F4 00155454 98 1F 07 42 */ stb r0, 0x742(r31) -/* 801584F8 00155458 88 1F 07 42 */ lbz r0, 0x742(r31) -/* 801584FC 0015545C 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e -/* 80158500 00155460 98 1F 07 42 */ stb r0, 0x742(r31) -lbl_80158504: -/* 80158504 00155464 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 -/* 80158508 00155468 CB E1 00 D0 */ lfd f31, 0xd0(r1) -/* 8015850C 0015546C E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 -/* 80158510 00155470 CB C1 00 C0 */ lfd f30, 0xc0(r1) -/* 80158514 00155474 E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0 -/* 80158518 00155478 CB A1 00 B0 */ lfd f29, 0xb0(r1) -/* 8015851C 0015547C E3 81 00 A8 */ psq_l f28, 168(r1), 0, qr0 -/* 80158520 00155480 CB 81 00 A0 */ lfd f28, 0xa0(r1) -/* 80158524 00155484 E3 61 00 98 */ psq_l f27, 152(r1), 0, qr0 -/* 80158528 00155488 CB 61 00 90 */ lfd f27, 0x90(r1) -/* 8015852C 0015548C 83 E1 00 8C */ lwz r31, 0x8c(r1) -/* 80158530 00155490 83 C1 00 88 */ lwz r30, 0x88(r1) -/* 80158534 00155494 80 01 00 E4 */ lwz r0, 0xe4(r1) -/* 80158538 00155498 83 A1 00 84 */ lwz r29, 0x84(r1) -/* 8015853C 0015549C 7C 08 03 A6 */ mtlr r0 -/* 80158540 001554A0 38 21 00 E0 */ addi r1, r1, 0xe0 -/* 80158544 001554A4 4E 80 00 20 */ blr - -.global FaceTarget__9CParasiteF9CVector3f -FaceTarget__9CParasiteF9CVector3f: -/* 80158548 001554A8 94 21 FF 60 */ stwu r1, -0xa0(r1) -/* 8015854C 001554AC 7C 08 02 A6 */ mflr r0 -/* 80158550 001554B0 90 01 00 A4 */ stw r0, 0xa4(r1) -/* 80158554 001554B4 93 E1 00 9C */ stw r31, 0x9c(r1) -/* 80158558 001554B8 7C 7F 1B 78 */ mr r31, r3 -/* 8015855C 001554BC 3C 60 80 5A */ lis r3, skIdentity4f@ha -/* 80158560 001554C0 C0 24 00 08 */ lfs f1, 8(r4) -/* 80158564 001554C4 38 A3 66 70 */ addi r5, r3, skIdentity4f@l -/* 80158568 001554C8 C0 1F 00 60 */ lfs f0, 0x60(r31) -/* 8015856C 001554CC 38 61 00 18 */ addi r3, r1, 0x18 -/* 80158570 001554D0 C0 64 00 04 */ lfs f3, 4(r4) -/* 80158574 001554D4 EC 81 00 28 */ fsubs f4, f1, f0 -/* 80158578 001554D8 C0 5F 00 50 */ lfs f2, 0x50(r31) -/* 8015857C 001554DC C0 24 00 00 */ lfs f1, 0(r4) -/* 80158580 001554E0 38 81 00 50 */ addi r4, r1, 0x50 -/* 80158584 001554E4 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 80158588 001554E8 EC C3 10 28 */ fsubs f6, f3, f2 -/* 8015858C 001554EC EC A1 00 28 */ fsubs f5, f1, f0 -/* 80158590 001554F0 C0 62 9E 74 */ lfs f3, lbl_805ABB94@sda21(r2) -/* 80158594 001554F4 C0 45 00 04 */ lfs f2, 4(r5) -/* 80158598 001554F8 C0 25 00 14 */ lfs f1, 0x14(r5) -/* 8015859C 001554FC C0 05 00 24 */ lfs f0, 0x24(r5) -/* 801585A0 00155500 D0 81 00 58 */ stfs f4, 0x58(r1) -/* 801585A4 00155504 C0 82 9E 50 */ lfs f4, lbl_805ABB70@sda21(r2) -/* 801585A8 00155508 D0 A1 00 50 */ stfs f5, 0x50(r1) -/* 801585AC 0015550C D0 C1 00 54 */ stfs f6, 0x54(r1) -/* 801585B0 00155510 D0 81 00 58 */ stfs f4, 0x58(r1) -/* 801585B4 00155514 D0 61 00 08 */ stfs f3, 8(r1) -/* 801585B8 00155518 D0 41 00 24 */ stfs f2, 0x24(r1) -/* 801585BC 0015551C D0 21 00 28 */ stfs f1, 0x28(r1) -/* 801585C0 00155520 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 801585C4 00155524 48 1B B8 0D */ bl __ct__11CUnitVectorFRC9CVector3f -/* 801585C8 00155528 7C 65 1B 78 */ mr r5, r3 -/* 801585CC 0015552C 38 61 00 30 */ addi r3, r1, 0x30 -/* 801585D0 00155530 38 81 00 24 */ addi r4, r1, 0x24 -/* 801585D4 00155534 38 C1 00 08 */ addi r6, r1, 8 -/* 801585D8 00155538 48 1B 90 BD */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle -/* 801585DC 0015553C C0 61 00 30 */ lfs f3, 0x30(r1) -/* 801585E0 00155540 38 61 00 5C */ addi r3, r1, 0x5c -/* 801585E4 00155544 C0 41 00 34 */ lfs f2, 0x34(r1) -/* 801585E8 00155548 38 81 00 40 */ addi r4, r1, 0x40 -/* 801585EC 0015554C C0 21 00 38 */ lfs f1, 0x38(r1) -/* 801585F0 00155550 38 A1 00 0C */ addi r5, r1, 0xc -/* 801585F4 00155554 C0 01 00 3C */ lfs f0, 0x3c(r1) -/* 801585F8 00155558 D0 61 00 40 */ stfs f3, 0x40(r1) -/* 801585FC 0015555C D0 41 00 44 */ stfs f2, 0x44(r1) -/* 80158600 00155560 D0 21 00 48 */ stfs f1, 0x48(r1) -/* 80158604 00155564 D0 01 00 4C */ stfs f0, 0x4c(r1) -/* 80158608 00155568 C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 8015860C 0015556C C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 80158610 00155570 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 80158614 00155574 D0 01 00 0C */ stfs f0, 0xc(r1) -/* 80158618 00155578 D0 21 00 10 */ stfs f1, 0x10(r1) -/* 8015861C 0015557C D0 41 00 14 */ stfs f2, 0x14(r1) -/* 80158620 00155580 48 1B 98 9D */ bl BuildTransform4f__11CQuaternionCFRC9CVector3f -/* 80158624 00155584 38 7F 00 34 */ addi r3, r31, 0x34 -/* 80158628 00155588 38 81 00 5C */ addi r4, r1, 0x5c -/* 8015862C 0015558C 48 1B A5 15 */ bl __as__12CTransform4fFRC12CTransform4f -/* 80158630 00155590 88 1F 00 E4 */ lbz r0, 0xe4(r31) -/* 80158634 00155594 38 60 00 01 */ li r3, 1 -/* 80158638 00155598 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 8015863C 0015559C 98 1F 00 E4 */ stb r0, 0xe4(r31) -/* 80158640 001555A0 88 1F 00 E4 */ lbz r0, 0xe4(r31) -/* 80158644 001555A4 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 80158648 001555A8 98 1F 00 E4 */ stb r0, 0xe4(r31) -/* 8015864C 001555AC 88 1F 00 E4 */ lbz r0, 0xe4(r31) -/* 80158650 001555B0 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d -/* 80158654 001555B4 98 1F 00 E4 */ stb r0, 0xe4(r31) -/* 80158658 001555B8 83 E1 00 9C */ lwz r31, 0x9c(r1) -/* 8015865C 001555BC 80 01 00 A4 */ lwz r0, 0xa4(r1) -/* 80158660 001555C0 7C 08 03 A6 */ mtlr r0 -/* 80158664 001555C4 38 21 00 A0 */ addi r1, r1, 0xa0 -/* 80158668 001555C8 4E 80 00 20 */ blr - -.global Patrol__9CParasiteFR13CStateManager9EStateMsgf -Patrol__9CParasiteFR13CStateManager9EStateMsgf: -/* 8015866C 001555CC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80158670 001555D0 7C 08 02 A6 */ mflr r0 -/* 80158674 001555D4 2C 05 00 01 */ cmpwi r5, 1 -/* 80158678 001555D8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015867C 001555DC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80158680 001555E0 7C 7F 1B 78 */ mr r31, r3 -/* 80158684 001555E4 93 C1 00 08 */ stw r30, 8(r1) -/* 80158688 001555E8 7C 9E 23 78 */ mr r30, r4 -/* 8015868C 001555EC 41 82 00 9C */ beq lbl_80158728 -/* 80158690 001555F0 40 80 00 10 */ bge lbl_801586A0 -/* 80158694 001555F4 2C 05 00 00 */ cmpwi r5, 0 -/* 80158698 001555F8 40 80 00 14 */ bge lbl_801586AC -/* 8015869C 001555FC 48 00 01 34 */ b lbl_801587D0 -lbl_801586A0: -/* 801586A0 00155600 2C 05 00 03 */ cmpwi r5, 3 -/* 801586A4 00155604 40 80 01 2C */ bge lbl_801587D0 -/* 801586A8 00155608 48 00 01 08 */ b lbl_801587B0 -lbl_801586AC: -/* 801586AC 0015560C 88 1F 07 42 */ lbz r0, 0x742(r31) -/* 801586B0 00155610 38 60 00 01 */ li r3, 1 -/* 801586B4 00155614 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 801586B8 00155618 98 1F 07 42 */ stb r0, 0x742(r31) -/* 801586BC 0015561C 88 1F 05 D6 */ lbz r0, 0x5d6(r31) -/* 801586C0 00155620 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 801586C4 00155624 98 1F 05 D6 */ stb r0, 0x5d6(r31) -/* 801586C8 00155628 88 1F 05 D6 */ lbz r0, 0x5d6(r31) -/* 801586CC 0015562C 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f -/* 801586D0 00155630 40 82 00 1C */ bne lbl_801586EC -/* 801586D4 00155634 80 1F 05 D0 */ lwz r0, 0x5d0(r31) -/* 801586D8 00155638 2C 00 00 00 */ cmpwi r0, 0 -/* 801586DC 0015563C 40 82 00 10 */ bne lbl_801586EC -/* 801586E0 00155640 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 801586E4 00155644 38 80 00 02 */ li r4, 2 -/* 801586E8 00155648 4B FE 22 F1 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -lbl_801586EC: -/* 801586EC 0015564C 3C 80 80 5A */ lis r4, skZero3f@ha -/* 801586F0 00155650 C4 04 66 A0 */ lfsu f0, skZero3f@l(r4) -/* 801586F4 00155654 38 60 00 00 */ li r3, 0 -/* 801586F8 00155658 D0 1F 01 50 */ stfs f0, 0x150(r31) -/* 801586FC 0015565C C0 04 00 04 */ lfs f0, 4(r4) -/* 80158700 00155660 D0 1F 01 54 */ stfs f0, 0x154(r31) -/* 80158704 00155664 C0 04 00 08 */ lfs f0, 8(r4) -/* 80158708 00155668 D0 1F 01 58 */ stfs f0, 0x158(r31) -/* 8015870C 0015566C 88 1F 05 D6 */ lbz r0, 0x5d6(r31) -/* 80158710 00155670 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 80158714 00155674 98 1F 05 D6 */ stb r0, 0x5d6(r31) -/* 80158718 00155678 88 1F 00 F8 */ lbz r0, 0xf8(r31) -/* 8015871C 0015567C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80158720 00155680 98 1F 00 F8 */ stb r0, 0xf8(r31) -/* 80158724 00155684 48 00 00 AC */ b lbl_801587D0 -lbl_80158728: -/* 80158728 00155688 C0 1F 05 BC */ lfs f0, 0x5bc(r31) -/* 8015872C 0015568C C0 42 9E 50 */ lfs f2, lbl_805ABB70@sda21(r2) -/* 80158730 00155690 FC 00 10 40 */ fcmpo cr0, f0, f2 -/* 80158734 00155694 40 81 00 40 */ ble lbl_80158774 -/* 80158738 00155698 C0 1F 05 BC */ lfs f0, 0x5bc(r31) -/* 8015873C 0015569C EC 00 08 28 */ fsubs f0, f0, f1 -/* 80158740 001556A0 D0 1F 05 BC */ stfs f0, 0x5bc(r31) -/* 80158744 001556A4 C0 1F 05 BC */ lfs f0, 0x5bc(r31) -/* 80158748 001556A8 FC 00 10 40 */ fcmpo cr0, f0, f2 -/* 8015874C 001556AC 4C 40 13 82 */ cror 2, 0, 2 -/* 80158750 001556B0 40 82 00 24 */ bne lbl_80158774 -/* 80158754 001556B4 80 1F 05 D0 */ lwz r0, 0x5d0(r31) -/* 80158758 001556B8 2C 00 00 00 */ cmpwi r0, 0 -/* 8015875C 001556BC 40 82 00 10 */ bne lbl_8015876C -/* 80158760 001556C0 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 80158764 001556C4 38 80 00 02 */ li r4, 2 -/* 80158768 001556C8 4B FE 22 71 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -lbl_8015876C: -/* 8015876C 001556CC C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) -/* 80158770 001556D0 D0 1F 05 BC */ stfs f0, 0x5bc(r31) -lbl_80158774: -/* 80158774 001556D4 7F E3 FB 78 */ mr r3, r31 -/* 80158778 001556D8 7F C4 F3 78 */ mr r4, r30 -/* 8015877C 001556DC 48 10 FF 71 */ bl GotoNextWaypoint__11CWallWalkerFR13CStateManager -/* 80158780 001556E0 C0 3F 05 BC */ lfs f1, 0x5bc(r31) -/* 80158784 001556E4 C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) -/* 80158788 001556E8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015878C 001556EC 4C 40 13 82 */ cror 2, 0, 2 -/* 80158790 001556F0 40 82 00 40 */ bne lbl_801587D0 -/* 80158794 001556F4 88 1F 05 D6 */ lbz r0, 0x5d6(r31) -/* 80158798 001556F8 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f -/* 8015879C 001556FC 40 82 00 34 */ bne lbl_801587D0 -/* 801587A0 00155700 7F E3 FB 78 */ mr r3, r31 -/* 801587A4 00155704 7F C4 F3 78 */ mr r4, r30 -/* 801587A8 00155708 4B FF E8 D1 */ bl DoFlockingBehavior__9CParasiteFR13CStateManager -/* 801587AC 0015570C 48 00 00 24 */ b lbl_801587D0 -lbl_801587B0: -/* 801587B0 00155710 88 1F 05 D6 */ lbz r0, 0x5d6(r31) -/* 801587B4 00155714 38 60 00 00 */ li r3, 0 -/* 801587B8 00155718 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 801587BC 0015571C 38 60 00 01 */ li r3, 1 -/* 801587C0 00155720 98 1F 05 D6 */ stb r0, 0x5d6(r31) -/* 801587C4 00155724 88 1F 00 F8 */ lbz r0, 0xf8(r31) -/* 801587C8 00155728 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 801587CC 0015572C 98 1F 00 F8 */ stb r0, 0xf8(r31) -lbl_801587D0: -/* 801587D0 00155730 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801587D4 00155734 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 801587D8 00155738 83 C1 00 08 */ lwz r30, 8(r1) -/* 801587DC 0015573C 7C 08 03 A6 */ mtlr r0 -/* 801587E0 00155740 38 21 00 10 */ addi r1, r1, 0x10 -/* 801587E4 00155744 4E 80 00 20 */ blr - -.global TargetPatrol__9CParasiteFR13CStateManager9EStateMsgf -TargetPatrol__9CParasiteFR13CStateManager9EStateMsgf: -/* 801587E8 00155748 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 801587EC 0015574C 7C 08 02 A6 */ mflr r0 -/* 801587F0 00155750 2C 05 00 00 */ cmpwi r5, 0 -/* 801587F4 00155754 7C 86 23 78 */ mr r6, r4 -/* 801587F8 00155758 90 01 00 24 */ stw r0, 0x24(r1) -/* 801587FC 0015575C 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80158800 00155760 7C 7F 1B 78 */ mr r31, r3 -/* 80158804 00155764 41 82 00 0C */ beq lbl_80158810 -/* 80158808 00155768 41 80 00 4C */ blt lbl_80158854 -/* 8015880C 0015576C 48 00 00 48 */ b lbl_80158854 -lbl_80158810: -/* 80158810 00155770 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80158814 00155774 7F E4 FB 78 */ mr r4, r31 -/* 80158818 00155778 38 E3 66 A0 */ addi r7, r3, skZero3f@l -/* 8015881C 0015577C 38 A0 00 0D */ li r5, 0xd -/* 80158820 00155780 C0 07 00 00 */ lfs f0, 0(r7) -/* 80158824 00155784 38 61 00 08 */ addi r3, r1, 8 -/* 80158828 00155788 D0 1F 01 50 */ stfs f0, 0x150(r31) -/* 8015882C 0015578C C0 07 00 04 */ lfs f0, 4(r7) -/* 80158830 00155790 D0 1F 01 54 */ stfs f0, 0x154(r31) -/* 80158834 00155794 C0 07 00 08 */ lfs f0, 8(r7) -/* 80158838 00155798 D0 1F 01 58 */ stfs f0, 0x158(r31) -/* 8015883C 0015579C 48 00 06 C5 */ bl GetClosestWaypointForState__9CParasiteCF18EScriptObjectStateR13CStateManager -/* 80158840 001557A0 A0 61 00 08 */ lhz r3, 8(r1) -/* 80158844 001557A4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80158848 001557A8 7C 03 00 40 */ cmplw r3, r0 -/* 8015884C 001557AC 41 82 00 08 */ beq lbl_80158854 -/* 80158850 001557B0 B0 7F 02 DC */ sth r3, 0x2dc(r31) -lbl_80158854: -/* 80158854 001557B4 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80158858 001557B8 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8015885C 001557BC 7C 08 03 A6 */ mtlr r0 -/* 80158860 001557C0 38 21 00 20 */ addi r1, r1, 0x20 -/* 80158864 001557C4 4E 80 00 20 */ blr - -.global Jump__9CParasiteFR13CStateManager9EStateMsgf -Jump__9CParasiteFR13CStateManager9EStateMsgf: -/* 80158868 001557C8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015886C 001557CC 7C 08 02 A6 */ mflr r0 -/* 80158870 001557D0 2C 05 00 01 */ cmpwi r5, 1 -/* 80158874 001557D4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80158878 001557D8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8015887C 001557DC 7C 7F 1B 78 */ mr r31, r3 -/* 80158880 001557E0 41 82 00 90 */ beq lbl_80158910 -/* 80158884 001557E4 40 80 00 10 */ bge lbl_80158894 -/* 80158888 001557E8 2C 05 00 00 */ cmpwi r5, 0 -/* 8015888C 001557EC 40 80 00 14 */ bge lbl_801588A0 -/* 80158890 001557F0 48 00 01 00 */ b lbl_80158990 -lbl_80158894: -/* 80158894 001557F4 2C 05 00 03 */ cmpwi r5, 3 -/* 80158898 001557F8 40 80 00 F8 */ bge lbl_80158990 -/* 8015889C 001557FC 48 00 00 9C */ b lbl_80158938 -lbl_801588A0: -/* 801588A0 00155800 7C 85 23 78 */ mr r5, r4 -/* 801588A4 00155804 38 80 00 25 */ li r4, 0x25 -/* 801588A8 00155808 4B EF BA A9 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 801588AC 0015580C 7F E3 FB 78 */ mr r3, r31 -/* 801588B0 00155810 81 9F 00 00 */ lwz r12, 0(r31) -/* 801588B4 00155814 81 8C 00 80 */ lwz r12, 0x80(r12) -/* 801588B8 00155818 7D 89 03 A6 */ mtctr r12 -/* 801588BC 0015581C 4E 80 04 21 */ bctrl -/* 801588C0 00155820 C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) -/* 801588C4 00155824 FC 20 08 50 */ fneg f1, f1 -/* 801588C8 00155828 38 80 00 00 */ li r4, 0 -/* 801588CC 0015582C 38 60 00 01 */ li r3, 1 -/* 801588D0 00155830 D0 1F 01 50 */ stfs f0, 0x150(r31) -/* 801588D4 00155834 D0 1F 01 54 */ stfs f0, 0x154(r31) -/* 801588D8 00155838 D0 3F 01 58 */ stfs f1, 0x158(r31) -/* 801588DC 0015583C 88 1F 07 42 */ lbz r0, 0x742(r31) -/* 801588E0 00155840 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c -/* 801588E4 00155844 98 1F 07 42 */ stb r0, 0x742(r31) -/* 801588E8 00155848 88 1F 05 D6 */ lbz r0, 0x5d6(r31) -/* 801588EC 0015584C 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 -/* 801588F0 00155850 98 1F 05 D6 */ stb r0, 0x5d6(r31) -/* 801588F4 00155854 88 1F 07 42 */ lbz r0, 0x742(r31) -/* 801588F8 00155858 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b -/* 801588FC 0015585C 98 1F 07 42 */ stb r0, 0x742(r31) -/* 80158900 00155860 88 1F 07 43 */ lbz r0, 0x743(r31) -/* 80158904 00155864 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 80158908 00155868 98 1F 07 43 */ stb r0, 0x743(r31) -/* 8015890C 0015586C 48 00 00 84 */ b lbl_80158990 -lbl_80158910: -/* 80158910 00155870 81 83 00 00 */ lwz r12, 0(r3) -/* 80158914 00155874 81 8C 00 80 */ lwz r12, 0x80(r12) -/* 80158918 00155878 7D 89 03 A6 */ mtctr r12 -/* 8015891C 0015587C 4E 80 04 21 */ bctrl -/* 80158920 00155880 C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) -/* 80158924 00155884 FC 20 08 50 */ fneg f1, f1 -/* 80158928 00155888 D0 1F 01 50 */ stfs f0, 0x150(r31) -/* 8015892C 0015588C D0 1F 01 54 */ stfs f0, 0x154(r31) -/* 80158930 00155890 D0 3F 01 58 */ stfs f1, 0x158(r31) -/* 80158934 00155894 48 00 00 5C */ b lbl_80158990 -lbl_80158938: -/* 80158938 00155898 7C 85 23 78 */ mr r5, r4 -/* 8015893C 0015589C 38 80 00 25 */ li r4, 0x25 -/* 80158940 001558A0 4B EF B6 41 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 80158944 001558A4 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80158948 001558A8 38 80 00 01 */ li r4, 1 -/* 8015894C 001558AC 38 A3 66 A0 */ addi r5, r3, skZero3f@l -/* 80158950 001558B0 38 60 00 00 */ li r3, 0 -/* 80158954 001558B4 C0 05 00 00 */ lfs f0, 0(r5) -/* 80158958 001558B8 D0 1F 01 50 */ stfs f0, 0x150(r31) -/* 8015895C 001558BC C0 05 00 04 */ lfs f0, 4(r5) -/* 80158960 001558C0 D0 1F 01 54 */ stfs f0, 0x154(r31) -/* 80158964 001558C4 C0 05 00 08 */ lfs f0, 8(r5) -/* 80158968 001558C8 D0 1F 01 58 */ stfs f0, 0x158(r31) -/* 8015896C 001558CC 88 1F 07 42 */ lbz r0, 0x742(r31) -/* 80158970 001558D0 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c -/* 80158974 001558D4 98 1F 07 42 */ stb r0, 0x742(r31) -/* 80158978 001558D8 88 1F 07 42 */ lbz r0, 0x742(r31) -/* 8015897C 001558DC 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 80158980 001558E0 98 1F 07 42 */ stb r0, 0x742(r31) -/* 80158984 001558E4 88 1F 07 43 */ lbz r0, 0x743(r31) -/* 80158988 001558E8 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 8015898C 001558EC 98 1F 07 43 */ stb r0, 0x743(r31) -lbl_80158990: -/* 80158990 001558F0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80158994 001558F4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80158998 001558F8 7C 08 03 A6 */ mtlr r0 -/* 8015899C 001558FC 38 21 00 10 */ addi r1, r1, 0x10 -/* 801589A0 00155900 4E 80 00 20 */ blr - -.global PathFind__9CParasiteFR13CStateManager9EStateMsgf -PathFind__9CParasiteFR13CStateManager9EStateMsgf: -/* 801589A4 00155904 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801589A8 00155908 7C 08 02 A6 */ mflr r0 -/* 801589AC 0015590C 2C 05 00 01 */ cmpwi r5, 1 -/* 801589B0 00155910 90 01 00 14 */ stw r0, 0x14(r1) -/* 801589B4 00155914 93 E1 00 0C */ stw r31, 0xc(r1) -/* 801589B8 00155918 7C 9F 23 78 */ mr r31, r4 -/* 801589BC 0015591C 93 C1 00 08 */ stw r30, 8(r1) -/* 801589C0 00155920 7C 7E 1B 78 */ mr r30, r3 -/* 801589C4 00155924 41 82 00 84 */ beq lbl_80158A48 -/* 801589C8 00155928 40 80 00 10 */ bge lbl_801589D8 -/* 801589CC 0015592C 2C 05 00 00 */ cmpwi r5, 0 -/* 801589D0 00155930 40 80 00 14 */ bge lbl_801589E4 -/* 801589D4 00155934 48 00 00 B4 */ b lbl_80158A88 -lbl_801589D8: -/* 801589D8 00155938 2C 05 00 03 */ cmpwi r5, 3 -/* 801589DC 0015593C 40 80 00 AC */ bge lbl_80158A88 -/* 801589E0 00155940 48 00 00 7C */ b lbl_80158A5C -lbl_801589E4: -/* 801589E4 00155944 88 1E 07 42 */ lbz r0, 0x742(r30) -/* 801589E8 00155948 38 60 00 01 */ li r3, 1 -/* 801589EC 0015594C 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 801589F0 00155950 98 1E 07 42 */ stb r0, 0x742(r30) -/* 801589F4 00155954 88 1E 05 D6 */ lbz r0, 0x5d6(r30) -/* 801589F8 00155958 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 801589FC 0015595C 98 1E 05 D6 */ stb r0, 0x5d6(r30) -/* 80158A00 00155960 80 1E 05 D0 */ lwz r0, 0x5d0(r30) -/* 80158A04 00155964 2C 00 00 00 */ cmpwi r0, 0 -/* 80158A08 00155968 40 82 00 10 */ bne lbl_80158A18 -/* 80158A0C 0015596C 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 80158A10 00155970 38 80 00 02 */ li r4, 2 -/* 80158A14 00155974 4B FE 1F C5 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -lbl_80158A18: -/* 80158A18 00155978 3C 80 80 5A */ lis r4, skZero3f@ha -/* 80158A1C 0015597C C4 04 66 A0 */ lfsu f0, skZero3f@l(r4) -/* 80158A20 00155980 38 60 00 00 */ li r3, 0 -/* 80158A24 00155984 D0 1E 01 50 */ stfs f0, 0x150(r30) -/* 80158A28 00155988 C0 04 00 04 */ lfs f0, 4(r4) -/* 80158A2C 0015598C D0 1E 01 54 */ stfs f0, 0x154(r30) -/* 80158A30 00155990 C0 04 00 08 */ lfs f0, 8(r4) -/* 80158A34 00155994 D0 1E 01 58 */ stfs f0, 0x158(r30) -/* 80158A38 00155998 88 1E 00 F8 */ lbz r0, 0xf8(r30) -/* 80158A3C 0015599C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80158A40 001559A0 98 1E 00 F8 */ stb r0, 0xf8(r30) -/* 80158A44 001559A4 48 00 00 44 */ b lbl_80158A88 -lbl_80158A48: -/* 80158A48 001559A8 4B FF EF 1D */ bl UpdatePFDestination__9CParasiteFR13CStateManager -/* 80158A4C 001559AC 7F C3 F3 78 */ mr r3, r30 -/* 80158A50 001559B0 7F E4 FB 78 */ mr r4, r31 -/* 80158A54 001559B4 4B FF E6 25 */ bl DoFlockingBehavior__9CParasiteFR13CStateManager -/* 80158A58 001559B8 48 00 00 30 */ b lbl_80158A88 -lbl_80158A5C: -/* 80158A5C 001559BC 88 1E 00 F8 */ lbz r0, 0xf8(r30) -/* 80158A60 001559C0 38 60 00 01 */ li r3, 1 -/* 80158A64 001559C4 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80158A68 001559C8 38 60 00 00 */ li r3, 0 -/* 80158A6C 001559CC 98 1E 00 F8 */ stb r0, 0xf8(r30) -/* 80158A70 001559D0 88 1E 05 D6 */ lbz r0, 0x5d6(r30) -/* 80158A74 001559D4 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80158A78 001559D8 98 1E 05 D6 */ stb r0, 0x5d6(r30) -/* 80158A7C 001559DC 88 1E 07 42 */ lbz r0, 0x742(r30) -/* 80158A80 001559E0 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 80158A84 001559E4 98 1E 07 42 */ stb r0, 0x742(r30) -lbl_80158A88: -/* 80158A88 001559E8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80158A8C 001559EC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80158A90 001559F0 83 C1 00 08 */ lwz r30, 8(r1) -/* 80158A94 001559F4 7C 08 03 A6 */ mtlr r0 -/* 80158A98 001559F8 38 21 00 10 */ addi r1, r1, 0x10 -/* 80158A9C 001559FC 4E 80 00 20 */ blr - -.global Run__9CParasiteFR13CStateManager9EStateMsgf -Run__9CParasiteFR13CStateManager9EStateMsgf: -/* 80158AA0 00155A00 4E 80 00 20 */ blr - -.global Deactivate__9CParasiteFR13CStateManager9EStateMsgf -Deactivate__9CParasiteFR13CStateManager9EStateMsgf: -/* 80158AA4 00155A04 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 80158AA8 00155A08 7C 08 02 A6 */ mflr r0 -/* 80158AAC 00155A0C 2C 05 00 01 */ cmpwi r5, 1 -/* 80158AB0 00155A10 90 01 00 44 */ stw r0, 0x44(r1) -/* 80158AB4 00155A14 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 80158AB8 00155A18 7C 9F 23 78 */ mr r31, r4 -/* 80158ABC 00155A1C 93 C1 00 38 */ stw r30, 0x38(r1) -/* 80158AC0 00155A20 7C 7E 1B 78 */ mr r30, r3 -/* 80158AC4 00155A24 41 82 00 4C */ beq lbl_80158B10 -/* 80158AC8 00155A28 40 80 01 40 */ bge lbl_80158C08 -/* 80158ACC 00155A2C 2C 05 00 00 */ cmpwi r5, 0 -/* 80158AD0 00155A30 40 80 00 0C */ bge lbl_80158ADC -/* 80158AD4 00155A34 48 00 01 34 */ b lbl_80158C08 -/* 80158AD8 00155A38 48 00 01 30 */ b lbl_80158C08 -lbl_80158ADC: -/* 80158ADC 00155A3C 38 00 00 00 */ li r0, 0 -/* 80158AE0 00155A40 7F E5 FB 78 */ mr r5, r31 -/* 80158AE4 00155A44 90 1E 05 E8 */ stw r0, 0x5e8(r30) -/* 80158AE8 00155A48 38 80 00 11 */ li r4, 0x11 -/* 80158AEC 00155A4C 38 C0 FF FF */ li r6, -1 -/* 80158AF0 00155A50 4B EF 85 D1 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 80158AF4 00155A54 A0 1E 00 08 */ lhz r0, 8(r30) -/* 80158AF8 00155A58 7F E3 FB 78 */ mr r3, r31 -/* 80158AFC 00155A5C 38 81 00 0C */ addi r4, r1, 0xc -/* 80158B00 00155A60 B0 01 00 08 */ sth r0, 8(r1) -/* 80158B04 00155A64 B0 01 00 0C */ sth r0, 0xc(r1) -/* 80158B08 00155A68 4B EF 37 65 */ bl FreeScriptObject__13CStateManagerF9TUniqueId -/* 80158B0C 00155A6C 48 00 00 FC */ b lbl_80158C08 -lbl_80158B10: -/* 80158B10 00155A70 80 1E 05 E8 */ lwz r0, 0x5e8(r30) -/* 80158B14 00155A74 2C 00 00 00 */ cmpwi r0, 0 -/* 80158B18 00155A78 41 82 00 08 */ beq lbl_80158B20 -/* 80158B1C 00155A7C 48 00 00 EC */ b lbl_80158C08 -lbl_80158B20: -/* 80158B20 00155A80 81 5E 04 50 */ lwz r10, 0x450(r30) -/* 80158B24 00155A84 80 0A 02 B8 */ lwz r0, 0x2b8(r10) -/* 80158B28 00155A88 2C 00 00 0C */ cmpwi r0, 0xc -/* 80158B2C 00155A8C 40 82 00 10 */ bne lbl_80158B3C -/* 80158B30 00155A90 38 00 00 01 */ li r0, 1 -/* 80158B34 00155A94 90 1E 05 E8 */ stw r0, 0x5e8(r30) -/* 80158B38 00155A98 48 00 00 D0 */ b lbl_80158C08 -lbl_80158B3C: -/* 80158B3C 00155A9C 3C C0 80 3E */ lis r6, lbl_803DAA68@ha -/* 80158B40 00155AA0 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80158B44 00155AA4 38 A3 66 A0 */ addi r5, r3, skZero3f@l -/* 80158B48 00155AA8 80 81 00 2C */ lwz r4, 0x2c(r1) -/* 80158B4C 00155AAC 38 60 00 00 */ li r3, 0 -/* 80158B50 00155AB0 39 26 AA 68 */ addi r9, r6, lbl_803DAA68@l -/* 80158B54 00155AB4 50 64 F8 00 */ rlwimi r4, r3, 0x1f, 0, 0 -/* 80158B58 00155AB8 C0 45 00 00 */ lfs f2, 0(r5) -/* 80158B5C 00155ABC C0 25 00 04 */ lfs f1, 4(r5) -/* 80158B60 00155AC0 3C E0 80 3E */ lis r7, lbl_803DA9F0@ha -/* 80158B64 00155AC4 C0 05 00 08 */ lfs f0, 8(r5) -/* 80158B68 00155AC8 7C 80 23 78 */ mr r0, r4 -/* 80158B6C 00155ACC 39 00 00 0E */ li r8, 0xe -/* 80158B70 00155AD0 38 C0 00 01 */ li r6, 1 -/* 80158B74 00155AD4 38 A0 FF FF */ li r5, -1 -/* 80158B78 00155AD8 3B EA 00 04 */ addi r31, r10, 4 -/* 80158B7C 00155ADC 91 21 00 10 */ stw r9, 0x10(r1) -/* 80158B80 00155AE0 38 E7 A9 F0 */ addi r7, r7, lbl_803DA9F0@l -/* 80158B84 00155AE4 50 60 F0 42 */ rlwimi r0, r3, 0x1e, 1, 1 -/* 80158B88 00155AE8 7F E3 FB 78 */ mr r3, r31 -/* 80158B8C 00155AEC 90 81 00 2C */ stw r4, 0x2c(r1) -/* 80158B90 00155AF0 38 80 00 0E */ li r4, 0xe -/* 80158B94 00155AF4 91 01 00 14 */ stw r8, 0x14(r1) -/* 80158B98 00155AF8 90 E1 00 10 */ stw r7, 0x10(r1) -/* 80158B9C 00155AFC 90 C1 00 18 */ stw r6, 0x18(r1) -/* 80158BA0 00155B00 D0 41 00 1C */ stfs f2, 0x1c(r1) -/* 80158BA4 00155B04 D0 21 00 20 */ stfs f1, 0x20(r1) -/* 80158BA8 00155B08 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 80158BAC 00155B0C 90 A1 00 28 */ stw r5, 0x28(r1) -/* 80158BB0 00155B10 90 01 00 2C */ stw r0, 0x2c(r1) -/* 80158BB4 00155B14 4B FD 88 85 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80158BB8 00155B18 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80158BBC 00155B1C 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha -/* 80158BC0 00155B20 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l -/* 80158BC4 00155B24 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80158BC8 00155B28 90 1F 01 90 */ stw r0, 0x190(r31) -/* 80158BCC 00155B2C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 80158BD0 00155B30 80 A1 00 18 */ lwz r5, 0x18(r1) -/* 80158BD4 00155B34 80 61 00 1C */ lwz r3, 0x1c(r1) -/* 80158BD8 00155B38 90 BF 01 94 */ stw r5, 0x194(r31) -/* 80158BDC 00155B3C 80 A1 00 20 */ lwz r5, 0x20(r1) -/* 80158BE0 00155B40 90 7F 01 98 */ stw r3, 0x198(r31) -/* 80158BE4 00155B44 80 61 00 24 */ lwz r3, 0x24(r1) -/* 80158BE8 00155B48 90 BF 01 9C */ stw r5, 0x19c(r31) -/* 80158BEC 00155B4C 80 A1 00 28 */ lwz r5, 0x28(r1) -/* 80158BF0 00155B50 90 7F 01 A0 */ stw r3, 0x1a0(r31) -/* 80158BF4 00155B54 80 61 00 2C */ lwz r3, 0x2c(r1) -/* 80158BF8 00155B58 90 BF 01 A4 */ stw r5, 0x1a4(r31) -/* 80158BFC 00155B5C 90 81 00 10 */ stw r4, 0x10(r1) -/* 80158C00 00155B60 90 7F 01 A8 */ stw r3, 0x1a8(r31) -/* 80158C04 00155B64 90 01 00 10 */ stw r0, 0x10(r1) -lbl_80158C08: -/* 80158C08 00155B68 80 01 00 44 */ lwz r0, 0x44(r1) -/* 80158C0C 00155B6C 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 80158C10 00155B70 83 C1 00 38 */ lwz r30, 0x38(r1) -/* 80158C14 00155B74 7C 08 03 A6 */ mtlr r0 -/* 80158C18 00155B78 38 21 00 40 */ addi r1, r1, 0x40 -/* 80158C1C 00155B7C 4E 80 00 20 */ blr - -.global Generate__9CParasiteFR13CStateManager9EStateMsgf -Generate__9CParasiteFR13CStateManager9EStateMsgf: -/* 80158C20 00155B80 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80158C24 00155B84 7C 08 02 A6 */ mflr r0 -/* 80158C28 00155B88 2C 05 00 01 */ cmpwi r5, 1 -/* 80158C2C 00155B8C 90 01 00 34 */ stw r0, 0x34(r1) -/* 80158C30 00155B90 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 80158C34 00155B94 41 82 00 24 */ beq lbl_80158C58 -/* 80158C38 00155B98 40 80 01 38 */ bge lbl_80158D70 -/* 80158C3C 00155B9C 2C 05 00 00 */ cmpwi r5, 0 -/* 80158C40 00155BA0 40 80 00 0C */ bge lbl_80158C4C -/* 80158C44 00155BA4 48 00 01 2C */ b lbl_80158D70 -/* 80158C48 00155BA8 48 00 01 28 */ b lbl_80158D70 -lbl_80158C4C: -/* 80158C4C 00155BAC 38 00 00 00 */ li r0, 0 -/* 80158C50 00155BB0 90 03 05 E8 */ stw r0, 0x5e8(r3) -/* 80158C54 00155BB4 48 00 01 1C */ b lbl_80158D70 -lbl_80158C58: -/* 80158C58 00155BB8 80 03 05 E8 */ lwz r0, 0x5e8(r3) -/* 80158C5C 00155BBC 2C 00 00 01 */ cmpwi r0, 1 -/* 80158C60 00155BC0 41 82 00 F8 */ beq lbl_80158D58 -/* 80158C64 00155BC4 40 80 01 0C */ bge lbl_80158D70 -/* 80158C68 00155BC8 2C 00 00 00 */ cmpwi r0, 0 -/* 80158C6C 00155BCC 40 80 00 08 */ bge lbl_80158C74 -/* 80158C70 00155BD0 48 00 01 00 */ b lbl_80158D70 -lbl_80158C74: -/* 80158C74 00155BD4 81 43 04 50 */ lwz r10, 0x450(r3) -/* 80158C78 00155BD8 80 0A 02 B8 */ lwz r0, 0x2b8(r10) -/* 80158C7C 00155BDC 2C 00 00 0C */ cmpwi r0, 0xc -/* 80158C80 00155BE0 40 82 00 10 */ bne lbl_80158C90 -/* 80158C84 00155BE4 38 00 00 01 */ li r0, 1 -/* 80158C88 00155BE8 90 03 05 E8 */ stw r0, 0x5e8(r3) -/* 80158C8C 00155BEC 48 00 00 E4 */ b lbl_80158D70 -lbl_80158C90: -/* 80158C90 00155BF0 3C A0 80 3E */ lis r5, lbl_803DAA68@ha -/* 80158C94 00155BF4 38 C0 00 00 */ li r6, 0 -/* 80158C98 00155BF8 39 25 AA 68 */ addi r9, r5, lbl_803DAA68@l -/* 80158C9C 00155BFC 80 61 00 24 */ lwz r3, 0x24(r1) -/* 80158CA0 00155C00 50 C3 F8 00 */ rlwimi r3, r6, 0x1f, 0, 0 -/* 80158CA4 00155C04 3C 80 80 5A */ lis r4, skZero3f@ha -/* 80158CA8 00155C08 C4 44 66 A0 */ lfsu f2, skZero3f@l(r4) -/* 80158CAC 00155C0C 3C E0 80 3E */ lis r7, lbl_803DA9F0@ha -/* 80158CB0 00155C10 7C 60 1B 78 */ mr r0, r3 -/* 80158CB4 00155C14 39 00 00 0E */ li r8, 0xe -/* 80158CB8 00155C18 C0 24 00 04 */ lfs f1, 4(r4) -/* 80158CBC 00155C1C 38 A0 FF FF */ li r5, -1 -/* 80158CC0 00155C20 C0 04 00 08 */ lfs f0, 8(r4) -/* 80158CC4 00155C24 38 E7 A9 F0 */ addi r7, r7, lbl_803DA9F0@l -/* 80158CC8 00155C28 91 21 00 08 */ stw r9, 8(r1) -/* 80158CCC 00155C2C 50 C0 F0 42 */ rlwimi r0, r6, 0x1e, 1, 1 -/* 80158CD0 00155C30 3B EA 00 04 */ addi r31, r10, 4 -/* 80158CD4 00155C34 38 80 00 0E */ li r4, 0xe -/* 80158CD8 00155C38 90 61 00 24 */ stw r3, 0x24(r1) -/* 80158CDC 00155C3C 7F E3 FB 78 */ mr r3, r31 -/* 80158CE0 00155C40 91 01 00 0C */ stw r8, 0xc(r1) -/* 80158CE4 00155C44 90 E1 00 08 */ stw r7, 8(r1) -/* 80158CE8 00155C48 90 C1 00 10 */ stw r6, 0x10(r1) -/* 80158CEC 00155C4C D0 41 00 14 */ stfs f2, 0x14(r1) -/* 80158CF0 00155C50 D0 21 00 18 */ stfs f1, 0x18(r1) -/* 80158CF4 00155C54 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 80158CF8 00155C58 90 A1 00 20 */ stw r5, 0x20(r1) -/* 80158CFC 00155C5C 90 01 00 24 */ stw r0, 0x24(r1) -/* 80158D00 00155C60 4B FD 87 39 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80158D04 00155C64 80 01 00 0C */ lwz r0, 0xc(r1) -/* 80158D08 00155C68 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha -/* 80158D0C 00155C6C 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l -/* 80158D10 00155C70 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80158D14 00155C74 90 1F 01 90 */ stw r0, 0x190(r31) -/* 80158D18 00155C78 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 80158D1C 00155C7C 80 A1 00 10 */ lwz r5, 0x10(r1) -/* 80158D20 00155C80 80 61 00 14 */ lwz r3, 0x14(r1) -/* 80158D24 00155C84 90 BF 01 94 */ stw r5, 0x194(r31) -/* 80158D28 00155C88 80 A1 00 18 */ lwz r5, 0x18(r1) -/* 80158D2C 00155C8C 90 7F 01 98 */ stw r3, 0x198(r31) -/* 80158D30 00155C90 80 61 00 1C */ lwz r3, 0x1c(r1) -/* 80158D34 00155C94 90 BF 01 9C */ stw r5, 0x19c(r31) -/* 80158D38 00155C98 80 A1 00 20 */ lwz r5, 0x20(r1) -/* 80158D3C 00155C9C 90 7F 01 A0 */ stw r3, 0x1a0(r31) -/* 80158D40 00155CA0 80 61 00 24 */ lwz r3, 0x24(r1) -/* 80158D44 00155CA4 90 BF 01 A4 */ stw r5, 0x1a4(r31) -/* 80158D48 00155CA8 90 81 00 08 */ stw r4, 8(r1) -/* 80158D4C 00155CAC 90 7F 01 A8 */ stw r3, 0x1a8(r31) -/* 80158D50 00155CB0 90 01 00 08 */ stw r0, 8(r1) -/* 80158D54 00155CB4 48 00 00 1C */ b lbl_80158D70 -lbl_80158D58: -/* 80158D58 00155CB8 80 83 04 50 */ lwz r4, 0x450(r3) -/* 80158D5C 00155CBC 80 04 02 B8 */ lwz r0, 0x2b8(r4) -/* 80158D60 00155CC0 2C 00 00 0C */ cmpwi r0, 0xc -/* 80158D64 00155CC4 41 82 00 0C */ beq lbl_80158D70 -/* 80158D68 00155CC8 38 00 00 02 */ li r0, 2 -/* 80158D6C 00155CCC 90 03 05 E8 */ stw r0, 0x5e8(r3) -lbl_80158D70: -/* 80158D70 00155CD0 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80158D74 00155CD4 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 80158D78 00155CD8 7C 08 03 A6 */ mtlr r0 -/* 80158D7C 00155CDC 38 21 00 30 */ addi r1, r1, 0x30 -/* 80158D80 00155CE0 4E 80 00 20 */ blr - -.global ShouldAttack__9CParasiteFR13CStateManagerf -ShouldAttack__9CParasiteFR13CStateManagerf: -/* 80158D84 00155CE4 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80158D88 00155CE8 7C 08 02 A6 */ mflr r0 -/* 80158D8C 00155CEC 90 01 00 34 */ stw r0, 0x34(r1) -/* 80158D90 00155CF0 DB E1 00 20 */ stfd f31, 0x20(r1) -/* 80158D94 00155CF4 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 -/* 80158D98 00155CF8 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80158D9C 00155CFC 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80158DA0 00155D00 93 A1 00 14 */ stw r29, 0x14(r1) -/* 80158DA4 00155D04 93 81 00 10 */ stw r28, 0x10(r1) -/* 80158DA8 00155D08 88 03 07 42 */ lbz r0, 0x742(r3) -/* 80158DAC 00155D0C FF E0 08 90 */ fmr f31, f1 -/* 80158DB0 00155D10 7C 7C 1B 78 */ mr r28, r3 -/* 80158DB4 00155D14 7C 9D 23 78 */ mr r29, r4 -/* 80158DB8 00155D18 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80158DBC 00155D1C 3B C0 00 00 */ li r30, 0 -/* 80158DC0 00155D20 41 82 00 18 */ beq lbl_80158DD8 -/* 80158DC4 00155D24 C0 3C 06 08 */ lfs f1, 0x608(r28) -/* 80158DC8 00155D28 C0 02 9E 78 */ lfs f0, lbl_805ABB98@sda21(r2) -/* 80158DCC 00155D2C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80158DD0 00155D30 40 81 00 08 */ ble lbl_80158DD8 -/* 80158DD4 00155D34 3B C0 00 01 */ li r30, 1 -lbl_80158DD8: -/* 80158DD8 00155D38 7F 83 E3 78 */ mr r3, r28 -/* 80158DDC 00155D3C FC 20 F8 90 */ fmr f1, f31 -/* 80158DE0 00155D40 81 9C 00 00 */ lwz r12, 0(r28) -/* 80158DE4 00155D44 7F A4 EB 78 */ mr r4, r29 -/* 80158DE8 00155D48 3B E0 00 00 */ li r31, 0 -/* 80158DEC 00155D4C 81 8C 01 9C */ lwz r12, 0x19c(r12) -/* 80158DF0 00155D50 7D 89 03 A6 */ mtctr r12 -/* 80158DF4 00155D54 4E 80 04 21 */ bctrl -/* 80158DF8 00155D58 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80158DFC 00155D5C 40 82 00 58 */ bne lbl_80158E54 -/* 80158E00 00155D60 7F 83 E3 78 */ mr r3, r28 -/* 80158E04 00155D64 FC 20 F8 90 */ fmr f1, f31 -/* 80158E08 00155D68 81 9C 00 00 */ lwz r12, 0(r28) -/* 80158E0C 00155D6C 7F A4 EB 78 */ mr r4, r29 -/* 80158E10 00155D70 81 8C 01 A4 */ lwz r12, 0x1a4(r12) -/* 80158E14 00155D74 7D 89 03 A6 */ mtctr r12 -/* 80158E18 00155D78 4E 80 04 21 */ bctrl -/* 80158E1C 00155D7C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80158E20 00155D80 41 82 00 34 */ beq lbl_80158E54 -/* 80158E24 00155D84 57 C0 06 3F */ clrlwi. r0, r30, 0x18 -/* 80158E28 00155D88 40 82 00 28 */ bne lbl_80158E50 -/* 80158E2C 00155D8C 7F 83 E3 78 */ mr r3, r28 -/* 80158E30 00155D90 7F A4 EB 78 */ mr r4, r29 -/* 80158E34 00155D94 81 9C 00 00 */ lwz r12, 0(r28) -/* 80158E38 00155D98 C0 22 9E 50 */ lfs f1, lbl_805ABB70@sda21(r2) -/* 80158E3C 00155D9C 81 8C 01 A8 */ lwz r12, 0x1a8(r12) -/* 80158E40 00155DA0 7D 89 03 A6 */ mtctr r12 -/* 80158E44 00155DA4 4E 80 04 21 */ bctrl -/* 80158E48 00155DA8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80158E4C 00155DAC 41 82 00 08 */ beq lbl_80158E54 -lbl_80158E50: -/* 80158E50 00155DB0 3B E0 00 01 */ li r31, 1 -lbl_80158E54: -/* 80158E54 00155DB4 7F E3 FB 78 */ mr r3, r31 -/* 80158E58 00155DB8 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 -/* 80158E5C 00155DBC 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80158E60 00155DC0 CB E1 00 20 */ lfd f31, 0x20(r1) -/* 80158E64 00155DC4 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80158E68 00155DC8 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 80158E6C 00155DCC 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 80158E70 00155DD0 83 81 00 10 */ lwz r28, 0x10(r1) -/* 80158E74 00155DD4 7C 08 03 A6 */ mtlr r0 -/* 80158E78 00155DD8 38 21 00 30 */ addi r1, r1, 0x30 -/* 80158E7C 00155DDC 4E 80 00 20 */ blr - -.global HitSomething__9CParasiteFR13CStateManagerf -HitSomething__9CParasiteFR13CStateManagerf: -/* 80158E80 00155DE0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80158E84 00155DE4 7C 08 02 A6 */ mflr r0 -/* 80158E88 00155DE8 90 01 00 14 */ stw r0, 0x14(r1) -/* 80158E8C 00155DEC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80158E90 00155DF0 A8 03 05 D4 */ lha r0, 0x5d4(r3) -/* 80158E94 00155DF4 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 80158E98 00155DF8 41 82 00 0C */ beq lbl_80158EA4 -/* 80158E9C 00155DFC 3B E0 00 01 */ li r31, 1 -/* 80158EA0 00155E00 48 00 00 28 */ b lbl_80158EC8 -lbl_80158EA4: -/* 80158EA4 00155E04 C0 23 05 B8 */ lfs f1, 0x5b8(r3) -/* 80158EA8 00155E08 3B E0 00 00 */ li r31, 0 -/* 80158EAC 00155E0C C0 02 9E 7C */ lfs f0, lbl_805ABB9C@sda21(r2) -/* 80158EB0 00155E10 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80158EB4 00155E14 40 80 00 14 */ bge lbl_80158EC8 -/* 80158EB8 00155E18 48 00 04 49 */ bl CloseToWall__9CParasiteFR13CStateManager -/* 80158EBC 00155E1C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80158EC0 00155E20 41 82 00 08 */ beq lbl_80158EC8 -/* 80158EC4 00155E24 3B E0 00 01 */ li r31, 1 -lbl_80158EC8: -/* 80158EC8 00155E28 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80158ECC 00155E2C 7F E3 FB 78 */ mr r3, r31 -/* 80158ED0 00155E30 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80158ED4 00155E34 7C 08 03 A6 */ mtlr r0 -/* 80158ED8 00155E38 38 21 00 10 */ addi r1, r1, 0x10 -/* 80158EDC 00155E3C 4E 80 00 20 */ blr - -.global Landed__9CParasiteFR13CStateManagerf -Landed__9CParasiteFR13CStateManagerf: -/* 80158EE0 00155E40 88 03 07 42 */ lbz r0, 0x742(r3) -/* 80158EE4 00155E44 54 03 E7 FE */ rlwinm r3, r0, 0x1c, 0x1f, 0x1f -/* 80158EE8 00155E48 4E 80 00 20 */ blr - -.global AnimOver__9CParasiteFR13CStateManagerf -AnimOver__9CParasiteFR13CStateManagerf: -/* 80158EEC 00155E4C 80 03 05 E8 */ lwz r0, 0x5e8(r3) -/* 80158EF0 00155E50 20 00 00 02 */ subfic r0, r0, 2 -/* 80158EF4 00155E54 7C 00 00 34 */ cntlzw r0, r0 -/* 80158EF8 00155E58 54 03 D9 7E */ srwi r3, r0, 5 -/* 80158EFC 00155E5C 4E 80 00 20 */ blr - -.global GetClosestWaypointForState__9CParasiteCF18EScriptObjectStateR13CStateManager -GetClosestWaypointForState__9CParasiteCF18EScriptObjectStateR13CStateManager: -/* 80158F00 00155E60 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 80158F04 00155E64 7C 08 02 A6 */ mflr r0 -/* 80158F08 00155E68 90 01 00 54 */ stw r0, 0x54(r1) -/* 80158F0C 00155E6C DB E1 00 40 */ stfd f31, 0x40(r1) -/* 80158F10 00155E70 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 -/* 80158F14 00155E74 BF 41 00 28 */ stmw r26, 0x28(r1) -/* 80158F18 00155E78 7C 9B 23 78 */ mr r27, r4 -/* 80158F1C 00155E7C C3 E2 9E 80 */ lfs f31, lbl_805ABBA0@sda21(r2) -/* 80158F20 00155E80 A3 ED A3 8C */ lhz r31, lbl_805A8F4C@sda21(r13) -/* 80158F24 00155E84 7C 7A 1B 78 */ mr r26, r3 -/* 80158F28 00155E88 83 C4 00 2C */ lwz r30, 0x2c(r4) -/* 80158F2C 00155E8C 7C BC 2B 78 */ mr r28, r5 -/* 80158F30 00155E90 7C DD 33 78 */ mr r29, r6 -/* 80158F34 00155E94 48 00 00 74 */ b lbl_80158FA8 -lbl_80158F38: -/* 80158F38 00155E98 80 1E 00 00 */ lwz r0, 0(r30) -/* 80158F3C 00155E9C 7C 1C 00 00 */ cmpw r28, r0 -/* 80158F40 00155EA0 40 82 00 64 */ bne lbl_80158FA4 -/* 80158F44 00155EA4 80 1E 00 04 */ lwz r0, 4(r30) -/* 80158F48 00155EA8 2C 00 00 06 */ cmpwi r0, 6 -/* 80158F4C 00155EAC 40 82 00 58 */ bne lbl_80158FA4 -/* 80158F50 00155EB0 80 1E 00 08 */ lwz r0, 8(r30) -/* 80158F54 00155EB4 7F A4 EB 78 */ mr r4, r29 -/* 80158F58 00155EB8 38 61 00 10 */ addi r3, r1, 0x10 -/* 80158F5C 00155EBC 38 A1 00 18 */ addi r5, r1, 0x18 -/* 80158F60 00155EC0 90 01 00 18 */ stw r0, 0x18(r1) -/* 80158F64 00155EC4 4B EE EF B9 */ bl GetIdForScript__13CStateManagerCF9TEditorId -/* 80158F68 00155EC8 A0 01 00 10 */ lhz r0, 0x10(r1) -/* 80158F6C 00155ECC 7F 64 DB 78 */ mr r4, r27 -/* 80158F70 00155ED0 7F A5 EB 78 */ mr r5, r29 -/* 80158F74 00155ED4 38 61 00 0C */ addi r3, r1, 0xc -/* 80158F78 00155ED8 B0 01 00 14 */ sth r0, 0x14(r1) -/* 80158F7C 00155EDC 38 C1 00 08 */ addi r6, r1, 8 -/* 80158F80 00155EE0 38 E1 00 1C */ addi r7, r1, 0x1c -/* 80158F84 00155EE4 B0 01 00 08 */ sth r0, 8(r1) -/* 80158F88 00155EE8 48 00 00 59 */ bl RecursiveFindClosestWayPoint__9CParasiteCFR13CStateManager9TUniqueIdRf -/* 80158F8C 00155EEC C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 80158F90 00155EF0 A0 01 00 0C */ lhz r0, 0xc(r1) -/* 80158F94 00155EF4 FC 00 F8 40 */ fcmpo cr0, f0, f31 -/* 80158F98 00155EF8 40 80 00 0C */ bge lbl_80158FA4 -/* 80158F9C 00155EFC FF E0 00 90 */ fmr f31, f0 -/* 80158FA0 00155F00 7C 1F 03 78 */ mr r31, r0 -lbl_80158FA4: -/* 80158FA4 00155F04 3B DE 00 0C */ addi r30, r30, 0xc -lbl_80158FA8: -/* 80158FA8 00155F08 80 1B 00 24 */ lwz r0, 0x24(r27) -/* 80158FAC 00155F0C 80 7B 00 2C */ lwz r3, 0x2c(r27) -/* 80158FB0 00155F10 1C 00 00 0C */ mulli r0, r0, 0xc -/* 80158FB4 00155F14 7C 03 02 14 */ add r0, r3, r0 -/* 80158FB8 00155F18 7C 1E 00 40 */ cmplw r30, r0 -/* 80158FBC 00155F1C 40 82 FF 7C */ bne lbl_80158F38 -/* 80158FC0 00155F20 B3 FA 00 00 */ sth r31, 0(r26) -/* 80158FC4 00155F24 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 -/* 80158FC8 00155F28 CB E1 00 40 */ lfd f31, 0x40(r1) -/* 80158FCC 00155F2C BB 41 00 28 */ lmw r26, 0x28(r1) -/* 80158FD0 00155F30 80 01 00 54 */ lwz r0, 0x54(r1) -/* 80158FD4 00155F34 7C 08 03 A6 */ mtlr r0 -/* 80158FD8 00155F38 38 21 00 50 */ addi r1, r1, 0x50 -/* 80158FDC 00155F3C 4E 80 00 20 */ blr - -.global RecursiveFindClosestWayPoint__9CParasiteCFR13CStateManager9TUniqueIdRf -RecursiveFindClosestWayPoint__9CParasiteCFR13CStateManager9TUniqueIdRf: -/* 80158FE0 00155F40 94 21 FF 90 */ stwu r1, -0x70(r1) -/* 80158FE4 00155F44 7C 08 02 A6 */ mflr r0 -/* 80158FE8 00155F48 90 01 00 74 */ stw r0, 0x74(r1) -/* 80158FEC 00155F4C BF 21 00 54 */ stmw r25, 0x54(r1) -/* 80158FF0 00155F50 7C 9A 23 78 */ mr r26, r4 -/* 80158FF4 00155F54 7C BB 2B 78 */ mr r27, r5 -/* 80158FF8 00155F58 7C 79 1B 78 */ mr r25, r3 -/* 80158FFC 00155F5C 7C FC 3B 78 */ mr r28, r7 -/* 80159000 00155F60 38 81 00 18 */ addi r4, r1, 0x18 -/* 80159004 00155F64 7F 63 DB 78 */ mr r3, r27 -/* 80159008 00155F68 A0 06 00 00 */ lhz r0, 0(r6) -/* 8015900C 00155F6C A3 C6 00 00 */ lhz r30, 0(r6) -/* 80159010 00155F70 B0 01 00 18 */ sth r0, 0x18(r1) -/* 80159014 00155F74 4B EF 35 61 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80159018 00155F78 7C 64 1B 78 */ mr r4, r3 -/* 8015901C 00155F7C 38 61 00 30 */ addi r3, r1, 0x30 -/* 80159020 00155F80 4B F4 D5 2D */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" -/* 80159024 00155F84 83 E3 00 04 */ lwz r31, 4(r3) -/* 80159028 00155F88 28 1F 00 00 */ cmplwi r31, 0 -/* 8015902C 00155F8C 40 82 00 0C */ bne lbl_80159038 -/* 80159030 00155F90 B3 D9 00 00 */ sth r30, 0(r25) -/* 80159034 00155F94 48 00 01 64 */ b lbl_80159198 -lbl_80159038: -/* 80159038 00155F98 7F E3 FB 78 */ mr r3, r31 -/* 8015903C 00155F9C 38 80 00 00 */ li r4, 0 -/* 80159040 00155FA0 81 9F 00 00 */ lwz r12, 0(r31) -/* 80159044 00155FA4 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 80159048 00155FA8 7D 89 03 A6 */ mtctr r12 -/* 8015904C 00155FAC 4E 80 04 21 */ bctrl -/* 80159050 00155FB0 C0 DF 00 50 */ lfs f6, 0x50(r31) -/* 80159054 00155FB4 C0 1A 00 50 */ lfs f0, 0x50(r26) -/* 80159058 00155FB8 C0 3F 00 40 */ lfs f1, 0x40(r31) -/* 8015905C 00155FBC EC A6 00 28 */ fsubs f5, f6, f0 -/* 80159060 00155FC0 C0 1A 00 40 */ lfs f0, 0x40(r26) -/* 80159064 00155FC4 C0 FF 00 60 */ lfs f7, 0x60(r31) -/* 80159068 00155FC8 EC 61 00 28 */ fsubs f3, f1, f0 -/* 8015906C 00155FCC C0 5A 00 60 */ lfs f2, 0x60(r26) -/* 80159070 00155FD0 EC 05 01 72 */ fmuls f0, f5, f5 -/* 80159074 00155FD4 EC 87 10 28 */ fsubs f4, f7, f2 -/* 80159078 00155FD8 D0 21 00 38 */ stfs f1, 0x38(r1) -/* 8015907C 00155FDC EC 23 00 F2 */ fmuls f1, f3, f3 -/* 80159080 00155FE0 D0 C1 00 3C */ stfs f6, 0x3c(r1) -/* 80159084 00155FE4 EC 44 01 32 */ fmuls f2, f4, f4 -/* 80159088 00155FE8 EC 01 00 2A */ fadds f0, f1, f0 -/* 8015908C 00155FEC D0 E1 00 40 */ stfs f7, 0x40(r1) -/* 80159090 00155FF0 D0 61 00 44 */ stfs f3, 0x44(r1) -/* 80159094 00155FF4 EC 02 00 2A */ fadds f0, f2, f0 -/* 80159098 00155FF8 D0 A1 00 48 */ stfs f5, 0x48(r1) -/* 8015909C 00155FFC D0 1C 00 00 */ stfs f0, 0(r28) -/* 801590A0 00156000 D0 81 00 4C */ stfs f4, 0x4c(r1) -/* 801590A4 00156004 83 BF 00 2C */ lwz r29, 0x2c(r31) -/* 801590A8 00156008 48 00 00 BC */ b lbl_80159164 -lbl_801590AC: -/* 801590AC 0015600C 80 1D 00 00 */ lwz r0, 0(r29) -/* 801590B0 00156010 2C 00 00 01 */ cmpwi r0, 1 -/* 801590B4 00156014 40 82 00 AC */ bne lbl_80159160 -/* 801590B8 00156018 80 1D 00 04 */ lwz r0, 4(r29) -/* 801590BC 0015601C 2C 00 00 08 */ cmpwi r0, 8 -/* 801590C0 00156020 40 82 00 A0 */ bne lbl_80159160 -/* 801590C4 00156024 80 1D 00 08 */ lwz r0, 8(r29) -/* 801590C8 00156028 7F 64 DB 78 */ mr r4, r27 -/* 801590CC 0015602C 38 61 00 14 */ addi r3, r1, 0x14 -/* 801590D0 00156030 38 A1 00 20 */ addi r5, r1, 0x20 -/* 801590D4 00156034 90 01 00 20 */ stw r0, 0x20(r1) -/* 801590D8 00156038 4B EE EE 45 */ bl GetIdForScript__13CStateManagerCF9TEditorId -/* 801590DC 0015603C A0 61 00 14 */ lhz r3, 0x14(r1) -/* 801590E0 00156040 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 801590E4 00156044 B0 61 00 1C */ sth r3, 0x1c(r1) -/* 801590E8 00156048 7C 03 00 40 */ cmplw r3, r0 -/* 801590EC 0015604C 41 82 00 74 */ beq lbl_80159160 -/* 801590F0 00156050 B0 61 00 10 */ sth r3, 0x10(r1) -/* 801590F4 00156054 7F 63 DB 78 */ mr r3, r27 -/* 801590F8 00156058 38 81 00 10 */ addi r4, r1, 0x10 -/* 801590FC 0015605C 4B EF 34 A9 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 80159100 00156060 7C 64 1B 78 */ mr r4, r3 -/* 80159104 00156064 38 61 00 28 */ addi r3, r1, 0x28 -/* 80159108 00156068 4B F4 D4 45 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" -/* 8015910C 0015606C 80 63 00 04 */ lwz r3, 4(r3) -/* 80159110 00156070 28 03 00 00 */ cmplwi r3, 0 -/* 80159114 00156074 41 82 00 4C */ beq lbl_80159160 -/* 80159118 00156078 88 03 00 30 */ lbz r0, 0x30(r3) -/* 8015911C 0015607C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80159120 00156080 41 82 00 40 */ beq lbl_80159160 -/* 80159124 00156084 A0 01 00 1C */ lhz r0, 0x1c(r1) -/* 80159128 00156088 7F 44 D3 78 */ mr r4, r26 -/* 8015912C 0015608C 7F 65 DB 78 */ mr r5, r27 -/* 80159130 00156090 38 61 00 0C */ addi r3, r1, 0xc -/* 80159134 00156094 B0 01 00 08 */ sth r0, 8(r1) -/* 80159138 00156098 38 C1 00 08 */ addi r6, r1, 8 -/* 8015913C 0015609C 38 E1 00 24 */ addi r7, r1, 0x24 -/* 80159140 001560A0 4B FF FE A1 */ bl RecursiveFindClosestWayPoint__9CParasiteCFR13CStateManager9TUniqueIdRf -/* 80159144 001560A4 C0 21 00 24 */ lfs f1, 0x24(r1) -/* 80159148 001560A8 C0 1C 00 00 */ lfs f0, 0(r28) -/* 8015914C 001560AC A0 01 00 0C */ lhz r0, 0xc(r1) -/* 80159150 001560B0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80159154 001560B4 40 80 00 0C */ bge lbl_80159160 -/* 80159158 001560B8 D0 3C 00 00 */ stfs f1, 0(r28) -/* 8015915C 001560BC 7C 1E 03 78 */ mr r30, r0 -lbl_80159160: -/* 80159160 001560C0 3B BD 00 0C */ addi r29, r29, 0xc -lbl_80159164: -/* 80159164 001560C4 80 1F 00 24 */ lwz r0, 0x24(r31) -/* 80159168 001560C8 80 7F 00 2C */ lwz r3, 0x2c(r31) -/* 8015916C 001560CC 1C 00 00 0C */ mulli r0, r0, 0xc -/* 80159170 001560D0 7C 03 02 14 */ add r0, r3, r0 -/* 80159174 001560D4 7C 1D 00 40 */ cmplw r29, r0 -/* 80159178 001560D8 40 82 FF 34 */ bne lbl_801590AC -/* 8015917C 001560DC 7F E3 FB 78 */ mr r3, r31 -/* 80159180 001560E0 38 80 00 01 */ li r4, 1 -/* 80159184 001560E4 81 9F 00 00 */ lwz r12, 0(r31) -/* 80159188 001560E8 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 8015918C 001560EC 7D 89 03 A6 */ mtctr r12 -/* 80159190 001560F0 4E 80 04 21 */ bctrl -/* 80159194 001560F4 B3 D9 00 00 */ sth r30, 0(r25) -lbl_80159198: -/* 80159198 001560F8 BB 21 00 54 */ lmw r25, 0x54(r1) -/* 8015919C 001560FC 80 01 00 74 */ lwz r0, 0x74(r1) -/* 801591A0 00156100 7C 08 03 A6 */ mtlr r0 -/* 801591A4 00156104 38 21 00 70 */ addi r1, r1, 0x70 -/* 801591A8 00156108 4E 80 00 20 */ blr - -.global CollidedWith__9CParasiteFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager -CollidedWith__9CParasiteFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager: -/* 801591AC 0015610C 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 801591B0 00156110 7C 08 02 A6 */ mflr r0 -/* 801591B4 00156114 90 01 00 34 */ stw r0, 0x34(r1) -/* 801591B8 00156118 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 801591BC 0015611C 93 C1 00 28 */ stw r30, 0x28(r1) -/* 801591C0 00156120 7C BE 2B 78 */ mr r30, r5 -/* 801591C4 00156124 93 A1 00 24 */ stw r29, 0x24(r1) -/* 801591C8 00156128 7C 7D 1B 78 */ mr r29, r3 -/* 801591CC 0015612C 93 81 00 20 */ stw r28, 0x20(r1) -/* 801591D0 00156130 88 0D A4 0A */ lbz r0, lbl_805A8FCA@sda21(r13) -/* 801591D4 00156134 7C 00 07 75 */ extsb. r0, r0 -/* 801591D8 00156138 40 82 00 44 */ bne lbl_8015921C -/* 801591DC 0015613C 80 AD 8C 98 */ lwz r5, lbl_805A7858@sda21(r13) -/* 801591E0 00156140 38 60 00 00 */ li r3, 0 -/* 801591E4 00156144 38 80 00 01 */ li r4, 1 -/* 801591E8 00156148 48 23 0D 0D */ bl __shl2i -/* 801591EC 0015614C 80 AD 8C 9C */ lwz r5, lbl_805A785C@sda21(r13) -/* 801591F0 00156150 7C 9C 23 78 */ mr r28, r4 -/* 801591F4 00156154 7C 7F 1B 78 */ mr r31, r3 -/* 801591F8 00156158 38 60 00 00 */ li r3, 0 -/* 801591FC 0015615C 38 80 00 01 */ li r4, 1 -/* 80159200 00156160 48 23 0C F5 */ bl __shl2i -/* 80159204 00156164 7F 9C 23 78 */ or r28, r28, r4 -/* 80159208 00156168 7F FF 1B 78 */ or r31, r31, r3 -/* 8015920C 0015616C 38 00 00 01 */ li r0, 1 -/* 80159210 00156170 93 8D A4 14 */ stw r28, lbl_805A8FD4@sda21(r13) -/* 80159214 00156174 93 ED A4 10 */ stw r31, lbl_805A8FD0@sda21(r13) -/* 80159218 00156178 98 0D A4 0A */ stb r0, lbl_805A8FCA@sda21(r13) -lbl_8015921C: -/* 8015921C 0015617C 88 1D 07 43 */ lbz r0, 0x743(r29) -/* 80159220 00156180 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f -/* 80159224 00156184 41 82 00 BC */ beq lbl_801592E0 -/* 80159228 00156188 3B FE 00 04 */ addi r31, r30, 4 -/* 8015922C 0015618C 48 00 00 9C */ b lbl_801592C8 -lbl_80159230: -/* 80159230 00156190 88 1D 05 D6 */ lbz r0, 0x5d6(r29) -/* 80159234 00156194 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80159238 00156198 40 82 00 8C */ bne lbl_801592C4 -/* 8015923C 0015619C 80 BF 00 38 */ lwz r5, 0x38(r31) -/* 80159240 001561A0 38 60 00 00 */ li r3, 0 -/* 80159244 001561A4 80 0D A4 10 */ lwz r0, lbl_805A8FD0@sda21(r13) -/* 80159248 001561A8 80 DF 00 3C */ lwz r6, 0x3c(r31) -/* 8015924C 001561AC 80 8D A4 14 */ lwz r4, lbl_805A8FD4@sda21(r13) -/* 80159250 001561B0 7C A0 00 38 */ and r0, r5, r0 -/* 80159254 001561B4 7C 00 1A 78 */ xor r0, r0, r3 -/* 80159258 001561B8 7C C4 20 38 */ and r4, r6, r4 -/* 8015925C 001561BC 7C 83 1A 78 */ xor r3, r4, r3 -/* 80159260 001561C0 7C 60 03 79 */ or. r0, r3, r0 -/* 80159264 001561C4 40 82 00 60 */ bne lbl_801592C4 -/* 80159268 001561C8 C0 3F 00 48 */ lfs f1, 0x48(r31) -/* 8015926C 001561CC 7F A3 EB 78 */ mr r3, r29 -/* 80159270 001561D0 C0 5F 00 4C */ lfs f2, 0x4c(r31) -/* 80159274 001561D4 38 81 00 08 */ addi r4, r1, 8 -/* 80159278 001561D8 C0 1F 00 50 */ lfs f0, 0x50(r31) -/* 8015927C 001561DC D0 21 00 08 */ stfs f1, 8(r1) -/* 80159280 001561E0 C0 22 9E 84 */ lfs f1, lbl_805ABBA4@sda21(r2) -/* 80159284 001561E4 D0 41 00 0C */ stfs f2, 0xc(r1) -/* 80159288 001561E8 D0 01 00 10 */ stfs f0, 0x10(r1) -/* 8015928C 001561EC 48 10 FC 31 */ bl OrientToSurfaceNormal__11CWallWalkerFRC9CVector3ff -/* 80159290 001561F0 7F A3 EB 78 */ mr r3, r29 -/* 80159294 001561F4 4B FC 20 E5 */ bl Stop__13CPhysicsActorFv -/* 80159298 001561F8 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8015929C 001561FC 7F A3 EB 78 */ mr r3, r29 -/* 801592A0 00156200 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 801592A4 00156204 4B FC 19 FD */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -/* 801592A8 00156208 88 1D 07 42 */ lbz r0, 0x742(r29) -/* 801592AC 0015620C 38 60 00 01 */ li r3, 1 -/* 801592B0 00156210 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 801592B4 00156214 98 1D 07 42 */ stb r0, 0x742(r29) -/* 801592B8 00156218 88 1D 07 42 */ lbz r0, 0x742(r29) -/* 801592BC 0015621C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 801592C0 00156220 98 1D 07 42 */ stb r0, 0x742(r29) -lbl_801592C4: -/* 801592C4 00156224 3B FF 00 60 */ addi r31, r31, 0x60 -lbl_801592C8: -/* 801592C8 00156228 80 1E 00 00 */ lwz r0, 0(r30) -/* 801592CC 0015622C 1C 00 00 60 */ mulli r0, r0, 0x60 -/* 801592D0 00156230 7C 7E 02 14 */ add r3, r30, r0 -/* 801592D4 00156234 38 03 00 04 */ addi r0, r3, 4 -/* 801592D8 00156238 7C 1F 00 40 */ cmplw r31, r0 -/* 801592DC 0015623C 41 80 FF 54 */ blt lbl_80159230 -lbl_801592E0: -/* 801592E0 00156240 80 01 00 34 */ lwz r0, 0x34(r1) -/* 801592E4 00156244 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 801592E8 00156248 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 801592EC 0015624C 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 801592F0 00156250 83 81 00 20 */ lwz r28, 0x20(r1) -/* 801592F4 00156254 7C 08 03 A6 */ mtlr r0 -/* 801592F8 00156258 38 21 00 30 */ addi r1, r1, 0x30 -/* 801592FC 0015625C 4E 80 00 20 */ blr - -.global CloseToWall__9CParasiteFR13CStateManager -CloseToWall__9CParasiteFR13CStateManager: -/* 80159300 00156260 94 21 FF 60 */ stwu r1, -0xa0(r1) -/* 80159304 00156264 7C 08 02 A6 */ mflr r0 -/* 80159308 00156268 90 01 00 A4 */ stw r0, 0xa4(r1) -/* 8015930C 0015626C 93 E1 00 9C */ stw r31, 0x9c(r1) -/* 80159310 00156270 7C 9F 23 78 */ mr r31, r4 -/* 80159314 00156274 93 C1 00 98 */ stw r30, 0x98(r1) -/* 80159318 00156278 7C 7E 1B 78 */ mr r30, r3 -/* 8015931C 0015627C 88 0D A4 09 */ lbz r0, lbl_805A8FC9@sda21(r13) -/* 80159320 00156280 7C 00 07 75 */ extsb. r0, r0 -/* 80159324 00156284 40 82 00 40 */ bne lbl_80159364 -/* 80159328 00156288 80 AD 8C 94 */ lwz r5, lbl_805A7854@sda21(r13) -/* 8015932C 0015628C 38 60 00 00 */ li r3, 0 -/* 80159330 00156290 38 80 00 01 */ li r4, 1 -/* 80159334 00156294 48 23 0B C1 */ bl __shl2i -/* 80159338 00156298 3C A0 80 47 */ lis r5, lbl_8046C770@ha -/* 8015933C 0015629C 38 C0 00 01 */ li r6, 1 -/* 80159340 001562A0 38 A5 C7 70 */ addi r5, r5, lbl_8046C770@l -/* 80159344 001562A4 38 00 00 00 */ li r0, 0 -/* 80159348 001562A8 90 C1 00 48 */ stw r6, 0x48(r1) -/* 8015934C 001562AC 90 85 00 04 */ stw r4, 4(r5) -/* 80159350 001562B0 90 65 00 00 */ stw r3, 0(r5) -/* 80159354 001562B4 90 05 00 0C */ stw r0, 0xc(r5) -/* 80159358 001562B8 90 05 00 08 */ stw r0, 8(r5) -/* 8015935C 001562BC 90 C5 00 10 */ stw r6, 0x10(r5) -/* 80159360 001562C0 98 CD A4 09 */ stb r6, lbl_805A8FC9@sda21(r13) -lbl_80159364: -/* 80159364 001562C4 7F C4 F3 78 */ mr r4, r30 -/* 80159368 001562C8 38 61 00 20 */ addi r3, r1, 0x20 -/* 8015936C 001562CC 4B FC 15 C1 */ bl GetBoundingBox__13CPhysicsActorCFv -/* 80159370 001562D0 C0 5E 05 AC */ lfs f2, 0x5ac(r30) -/* 80159374 001562D4 38 61 00 50 */ addi r3, r1, 0x50 -/* 80159378 001562D8 C0 3E 05 B0 */ lfs f1, 0x5b0(r30) -/* 8015937C 001562DC 38 81 00 14 */ addi r4, r1, 0x14 -/* 80159380 001562E0 C0 01 00 30 */ lfs f0, 0x30(r1) -/* 80159384 001562E4 38 A1 00 08 */ addi r5, r1, 8 -/* 80159388 001562E8 EC C2 08 2A */ fadds f6, f2, f1 -/* 8015938C 001562EC C0 81 00 34 */ lfs f4, 0x34(r1) -/* 80159390 001562F0 C0 61 00 2C */ lfs f3, 0x2c(r1) -/* 80159394 001562F4 C0 41 00 24 */ lfs f2, 0x24(r1) -/* 80159398 001562F8 C0 21 00 28 */ lfs f1, 0x28(r1) -/* 8015939C 001562FC EC A0 30 2A */ fadds f5, f0, f6 -/* 801593A0 00156300 C0 01 00 20 */ lfs f0, 0x20(r1) -/* 801593A4 00156304 EC 84 30 2A */ fadds f4, f4, f6 -/* 801593A8 00156308 EC 63 30 2A */ fadds f3, f3, f6 -/* 801593AC 0015630C EC 42 30 28 */ fsubs f2, f2, f6 -/* 801593B0 00156310 D0 A1 00 0C */ stfs f5, 0xc(r1) -/* 801593B4 00156314 EC 21 30 28 */ fsubs f1, f1, f6 -/* 801593B8 00156318 EC 00 30 28 */ fsubs f0, f0, f6 -/* 801593BC 0015631C D0 61 00 08 */ stfs f3, 8(r1) -/* 801593C0 00156320 D0 81 00 10 */ stfs f4, 0x10(r1) -/* 801593C4 00156324 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 801593C8 00156328 D0 41 00 18 */ stfs f2, 0x18(r1) -/* 801593CC 0015632C D0 21 00 1C */ stfs f1, 0x1c(r1) -/* 801593D0 00156330 48 1D F1 39 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 801593D4 00156334 38 61 00 68 */ addi r3, r1, 0x68 -/* 801593D8 00156338 38 9E 00 68 */ addi r4, r30, 0x68 -/* 801593DC 0015633C 48 17 64 D9 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList -/* 801593E0 00156340 C0 A1 00 50 */ lfs f5, 0x50(r1) -/* 801593E4 00156344 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha -/* 801593E8 00156348 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l -/* 801593EC 0015634C C0 81 00 54 */ lfs f4, 0x54(r1) -/* 801593F0 00156350 C0 61 00 58 */ lfs f3, 0x58(r1) -/* 801593F4 00156354 3C 80 80 5A */ lis r4, skIdentity4f@ha -/* 801593F8 00156358 C0 41 00 5C */ lfs f2, 0x5c(r1) -/* 801593FC 0015635C 3C 60 80 47 */ lis r3, lbl_8046C770@ha -/* 80159400 00156360 C0 21 00 60 */ lfs f1, 0x60(r1) -/* 80159404 00156364 38 A4 66 70 */ addi r5, r4, skIdentity4f@l -/* 80159408 00156368 C0 01 00 64 */ lfs f0, 0x64(r1) -/* 8015940C 0015636C 38 C3 C7 70 */ addi r6, r3, lbl_8046C770@l -/* 80159410 00156370 90 01 00 68 */ stw r0, 0x68(r1) -/* 80159414 00156374 7F E3 FB 78 */ mr r3, r31 -/* 80159418 00156378 38 81 00 68 */ addi r4, r1, 0x68 -/* 8015941C 0015637C D0 A1 00 78 */ stfs f5, 0x78(r1) -/* 80159420 00156380 D0 81 00 7C */ stfs f4, 0x7c(r1) -/* 80159424 00156384 D0 61 00 80 */ stfs f3, 0x80(r1) -/* 80159428 00156388 D0 41 00 84 */ stfs f2, 0x84(r1) -/* 8015942C 0015638C D0 21 00 88 */ stfs f1, 0x88(r1) -/* 80159430 00156390 D0 01 00 8C */ stfs f0, 0x8c(r1) -/* 80159434 00156394 48 02 9F 6D */ bl DetectStaticCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter -/* 80159438 00156398 3C A0 80 3F */ lis r5, lbl_803ECAD0@ha -/* 8015943C 0015639C 3C 80 80 3E */ lis r4, lbl_803D97E4@ha -/* 80159440 001563A0 38 05 CA D0 */ addi r0, r5, lbl_803ECAD0@l -/* 80159444 001563A4 90 01 00 68 */ stw r0, 0x68(r1) -/* 80159448 001563A8 38 04 97 E4 */ addi r0, r4, lbl_803D97E4@l -/* 8015944C 001563AC 90 01 00 68 */ stw r0, 0x68(r1) -/* 80159450 001563B0 83 E1 00 9C */ lwz r31, 0x9c(r1) -/* 80159454 001563B4 83 C1 00 98 */ lwz r30, 0x98(r1) -/* 80159458 001563B8 80 01 00 A4 */ lwz r0, 0xa4(r1) -/* 8015945C 001563BC 7C 08 03 A6 */ mtlr r0 -/* 80159460 001563C0 38 21 00 A0 */ addi r1, r1, 0xa0 -/* 80159464 001563C4 4E 80 00 20 */ blr - -.global ShotAt__9CParasiteFR13CStateManagerf -ShotAt__9CParasiteFR13CStateManagerf: -/* 80159468 001563C8 80 03 05 D0 */ lwz r0, 0x5d0(r3) -/* 8015946C 001563CC 2C 00 00 01 */ cmpwi r0, 1 -/* 80159470 001563D0 41 82 00 1C */ beq lbl_8015948C -/* 80159474 001563D4 88 03 04 00 */ lbz r0, 0x400(r3) -/* 80159478 001563D8 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f -/* 8015947C 001563DC 7C 03 00 D0 */ neg r0, r3 -/* 80159480 001563E0 7C 00 1B 78 */ or r0, r0, r3 -/* 80159484 001563E4 54 03 0F FE */ srwi r3, r0, 0x1f -/* 80159488 001563E8 4E 80 00 20 */ blr -lbl_8015948C: -/* 8015948C 001563EC 88 03 07 43 */ lbz r0, 0x743(r3) -/* 80159490 001563F0 54 03 DF FE */ rlwinm r3, r0, 0x1b, 0x1f, 0x1f -/* 80159494 001563F4 4E 80 00 20 */ blr - -.global AttackOver__9CParasiteFR13CStateManagerf -AttackOver__9CParasiteFR13CStateManagerf: -/* 80159498 001563F8 88 03 07 42 */ lbz r0, 0x742(r3) -/* 8015949C 001563FC 54 03 FF FE */ rlwinm r3, r0, 0x1f, 0x1f, 0x1f -/* 801594A0 00156400 4E 80 00 20 */ blr - -.global Stuck__9CParasiteFR13CStateManagerf -Stuck__9CParasiteFR13CStateManagerf: -/* 801594A4 00156404 C0 23 06 0C */ lfs f1, 0x60c(r3) -/* 801594A8 00156408 C0 03 06 E0 */ lfs f0, 0x6e0(r3) -/* 801594AC 0015640C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801594B0 00156410 7C 00 00 26 */ mfcr r0 -/* 801594B4 00156414 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f -/* 801594B8 00156418 4E 80 00 20 */ blr - -.global ThinkAboutMove__9CParasiteFf -ThinkAboutMove__9CParasiteFf: -/* 801594BC 0015641C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801594C0 00156420 7C 08 02 A6 */ mflr r0 -/* 801594C4 00156424 38 A0 00 00 */ li r5, 0 -/* 801594C8 00156428 90 01 00 14 */ stw r0, 0x14(r1) -/* 801594CC 0015642C 38 00 00 20 */ li r0, 0x20 -/* 801594D0 00156430 80 83 00 68 */ lwz r4, 0x68(r3) -/* 801594D4 00156434 80 C3 00 6C */ lwz r6, 0x6c(r3) -/* 801594D8 00156438 7C 80 00 38 */ and r0, r4, r0 -/* 801594DC 0015643C 7C C4 28 38 */ and r4, r6, r5 -/* 801594E0 00156440 7C 84 2A 78 */ xor r4, r4, r5 -/* 801594E4 00156444 7C 00 2A 78 */ xor r0, r0, r5 -/* 801594E8 00156448 7C 80 03 79 */ or. r0, r4, r0 -/* 801594EC 0015644C 40 82 00 08 */ bne lbl_801594F4 -/* 801594F0 00156450 4B F1 FE 75 */ bl ThinkAboutMove__10CPatternedFf -lbl_801594F4: -/* 801594F4 00156454 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801594F8 00156458 7C 08 03 A6 */ mtlr r0 -/* 801594FC 0015645C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80159500 00156460 4E 80 00 20 */ blr - -.global GetAimPosition__9CParasiteCFRC13CStateManagerf -GetAimPosition__9CParasiteCFRC13CStateManagerf: -/* 80159504 00156464 C0 44 00 60 */ lfs f2, 0x60(r4) -/* 80159508 00156468 C0 24 00 50 */ lfs f1, 0x50(r4) -/* 8015950C 0015646C C0 04 00 40 */ lfs f0, 0x40(r4) -/* 80159510 00156470 D0 03 00 00 */ stfs f0, 0(r3) -/* 80159514 00156474 D0 23 00 04 */ stfs f1, 4(r3) -/* 80159518 00156478 D0 43 00 08 */ stfs f2, 8(r3) -/* 8015951C 0015647C 4E 80 00 20 */ blr - -.global UpdateJumpVelocity__9CParasiteFv -UpdateJumpVelocity__9CParasiteFv: -/* 80159520 00156480 94 21 FF 70 */ stwu r1, -0x90(r1) -/* 80159524 00156484 7C 08 02 A6 */ mflr r0 -/* 80159528 00156488 90 01 00 94 */ stw r0, 0x94(r1) -/* 8015952C 0015648C DB E1 00 80 */ stfd f31, 0x80(r1) -/* 80159530 00156490 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 -/* 80159534 00156494 DB C1 00 70 */ stfd f30, 0x70(r1) -/* 80159538 00156498 F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0 -/* 8015953C 0015649C DB A1 00 60 */ stfd f29, 0x60(r1) -/* 80159540 001564A0 F3 A1 00 68 */ psq_st f29, 104(r1), 0, qr0 -/* 80159544 001564A4 DB 81 00 50 */ stfd f28, 0x50(r1) -/* 80159548 001564A8 F3 81 00 58 */ psq_st f28, 88(r1), 0, qr0 -/* 8015954C 001564AC DB 61 00 40 */ stfd f27, 0x40(r1) -/* 80159550 001564B0 F3 61 00 48 */ psq_st f27, 72(r1), 0, qr0 -/* 80159554 001564B4 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 80159558 001564B8 93 C1 00 38 */ stw r30, 0x38(r1) -/* 8015955C 001564BC 81 83 00 00 */ lwz r12, 0(r3) -/* 80159560 001564C0 7C 7E 1B 78 */ mr r30, r3 -/* 80159564 001564C4 81 8C 00 80 */ lwz r12, 0x80(r12) -/* 80159568 001564C8 7D 89 03 A6 */ mtctr r12 -/* 8015956C 001564CC 4E 80 04 21 */ bctrl -/* 80159570 001564D0 C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) -/* 80159574 001564D4 FC 20 08 50 */ fneg f1, f1 -/* 80159578 001564D8 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8015957C 001564DC D0 1E 01 50 */ stfs f0, 0x150(r30) -/* 80159580 001564E0 D0 1E 01 54 */ stfs f0, 0x154(r30) -/* 80159584 001564E4 D0 3E 01 58 */ stfs f1, 0x158(r30) -/* 80159588 001564E8 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) -/* 8015958C 001564EC C0 23 00 04 */ lfs f1, 4(r3) -/* 80159590 001564F0 C0 03 00 08 */ lfs f0, 8(r3) -/* 80159594 001564F4 D0 41 00 28 */ stfs f2, 0x28(r1) -/* 80159598 001564F8 D0 21 00 2C */ stfs f1, 0x2c(r1) -/* 8015959C 001564FC D0 01 00 30 */ stfs f0, 0x30(r1) -/* 801595A0 00156500 88 1E 07 42 */ lbz r0, 0x742(r30) -/* 801595A4 00156504 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f -/* 801595A8 00156508 40 82 00 3C */ bne lbl_801595E4 -/* 801595AC 0015650C C0 8D A3 F4 */ lfs f4, lbl_805A8FB4@sda21(r13) -/* 801595B0 00156510 C0 1E 00 58 */ lfs f0, 0x58(r30) -/* 801595B4 00156514 C0 5E 00 38 */ lfs f2, 0x38(r30) -/* 801595B8 00156518 C0 3E 00 48 */ lfs f1, 0x48(r30) -/* 801595BC 0015651C EC 64 00 32 */ fmuls f3, f4, f0 -/* 801595C0 00156520 C0 02 9E 64 */ lfs f0, lbl_805ABB84@sda21(r2) -/* 801595C4 00156524 EC 44 00 B2 */ fmuls f2, f4, f2 -/* 801595C8 00156528 EC 24 00 72 */ fmuls f1, f4, f1 -/* 801595CC 0015652C EC 00 01 32 */ fmuls f0, f0, f4 -/* 801595D0 00156530 D0 61 00 30 */ stfs f3, 0x30(r1) -/* 801595D4 00156534 D0 41 00 28 */ stfs f2, 0x28(r1) -/* 801595D8 00156538 D0 21 00 2C */ stfs f1, 0x2c(r1) -/* 801595DC 0015653C D0 01 00 30 */ stfs f0, 0x30(r1) -/* 801595E0 00156540 48 00 00 38 */ b lbl_80159618 -lbl_801595E4: -/* 801595E4 00156544 C0 8D A3 FC */ lfs f4, lbl_805A8FBC@sda21(r13) -/* 801595E8 00156548 C0 1E 00 58 */ lfs f0, 0x58(r30) -/* 801595EC 0015654C C0 5E 00 38 */ lfs f2, 0x38(r30) -/* 801595F0 00156550 C0 3E 00 48 */ lfs f1, 0x48(r30) -/* 801595F4 00156554 EC 64 00 32 */ fmuls f3, f4, f0 -/* 801595F8 00156558 C0 02 9E 64 */ lfs f0, lbl_805ABB84@sda21(r2) -/* 801595FC 0015655C EC 44 00 B2 */ fmuls f2, f4, f2 -/* 80159600 00156560 EC 24 00 72 */ fmuls f1, f4, f1 -/* 80159604 00156564 EC 00 01 32 */ fmuls f0, f0, f4 -/* 80159608 00156568 D0 61 00 30 */ stfs f3, 0x30(r1) -/* 8015960C 0015656C D0 41 00 28 */ stfs f2, 0x28(r1) -/* 80159610 00156570 D0 21 00 2C */ stfs f1, 0x2c(r1) -/* 80159614 00156574 D0 01 00 30 */ stfs f0, 0x30(r1) -lbl_80159618: -/* 80159618 00156578 C0 3E 01 58 */ lfs f1, 0x158(r30) -/* 8015961C 0015657C 38 61 00 1C */ addi r3, r1, 0x1c -/* 80159620 00156580 C0 1E 00 E8 */ lfs f0, 0xe8(r30) -/* 80159624 00156584 C0 BE 00 50 */ lfs f5, 0x50(r30) -/* 80159628 00156588 EF C1 00 24 */ fdivs f30, f1, f0 -/* 8015962C 0015658C C0 7E 00 40 */ lfs f3, 0x40(r30) -/* 80159630 00156590 C0 1E 05 FC */ lfs f0, 0x5fc(r30) -/* 80159634 00156594 C0 3E 05 F8 */ lfs f1, 0x5f8(r30) -/* 80159638 00156598 C0 DE 00 60 */ lfs f6, 0x60(r30) -/* 8015963C 0015659C C0 5E 06 00 */ lfs f2, 0x600(r30) -/* 80159640 001565A0 EC 80 28 28 */ fsubs f4, f0, f5 -/* 80159644 001565A4 C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) -/* 80159648 001565A8 EC 21 18 28 */ fsubs f1, f1, f3 -/* 8015964C 001565AC D0 61 00 10 */ stfs f3, 0x10(r1) -/* 80159650 001565B0 EF E2 30 28 */ fsubs f31, f2, f6 -/* 80159654 001565B4 D0 A1 00 14 */ stfs f5, 0x14(r1) -/* 80159658 001565B8 D0 C1 00 18 */ stfs f6, 0x18(r1) -/* 8015965C 001565BC D0 21 00 1C */ stfs f1, 0x1c(r1) -/* 80159660 001565C0 D0 81 00 20 */ stfs f4, 0x20(r1) -/* 80159664 001565C4 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 80159668 001565C8 48 1B B2 51 */ bl Magnitude__9CVector3fCFv -/* 8015966C 001565CC FF A0 08 90 */ fmr f29, f1 -/* 80159670 001565D0 C0 C2 9E 88 */ lfs f6, lbl_805ABBA8@sda21(r2) -/* 80159674 001565D4 FC 1D 30 40 */ fcmpo cr0, f29, f6 -/* 80159678 001565D8 40 81 00 E8 */ ble lbl_80159760 -/* 8015967C 001565DC C0 02 9E 60 */ lfs f0, lbl_805ABB80@sda21(r2) -/* 80159680 001565E0 C0 81 00 20 */ lfs f4, 0x20(r1) -/* 80159684 001565E4 EC E0 E8 24 */ fdivs f7, f0, f29 -/* 80159688 001565E8 C0 A1 00 1C */ lfs f5, 0x1c(r1) -/* 8015968C 001565EC C0 61 00 24 */ lfs f3, 0x24(r1) -/* 80159690 001565F0 C0 01 00 2C */ lfs f0, 0x2c(r1) -/* 80159694 001565F4 C0 21 00 28 */ lfs f1, 0x28(r1) -/* 80159698 001565F8 C0 41 00 30 */ lfs f2, 0x30(r1) -/* 8015969C 001565FC EC 84 01 F2 */ fmuls f4, f4, f7 -/* 801596A0 00156600 EC A5 01 F2 */ fmuls f5, f5, f7 -/* 801596A4 00156604 EC 63 01 F2 */ fmuls f3, f3, f7 -/* 801596A8 00156608 EC 04 00 32 */ fmuls f0, f4, f0 -/* 801596AC 0015660C D0 81 00 20 */ stfs f4, 0x20(r1) -/* 801596B0 00156610 D0 A1 00 1C */ stfs f5, 0x1c(r1) -/* 801596B4 00156614 EC 05 00 7A */ fmadds f0, f5, f1, f0 -/* 801596B8 00156618 D0 61 00 24 */ stfs f3, 0x24(r1) -/* 801596BC 0015661C EF 83 00 BA */ fmadds f28, f3, f2, f0 -/* 801596C0 00156620 FC 1C 30 40 */ fcmpo cr0, f28, f6 -/* 801596C4 00156624 40 81 00 9C */ ble lbl_80159760 -/* 801596C8 00156628 C3 62 9E 50 */ lfs f27, lbl_805ABB70@sda21(r2) -/* 801596CC 0015662C FC 1F D8 40 */ fcmpo cr0, f31, f27 -/* 801596D0 00156630 7C 00 00 26 */ mfcr r0 -/* 801596D4 00156634 FC 20 F0 90 */ fmr f1, f30 -/* 801596D8 00156638 FC 60 F8 50 */ fneg f3, f31 -/* 801596DC 0015663C 54 1F 0F FE */ srwi r31, r0, 0x1f -/* 801596E0 00156640 38 61 00 0C */ addi r3, r1, 0xc -/* 801596E4 00156644 38 81 00 08 */ addi r4, r1, 8 -/* 801596E8 00156648 4B FE 4D 0D */ bl SolveQuadratic__18CSteeringBehaviorsFfffRfRf -/* 801596EC 0015664C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801596F0 00156650 41 82 00 18 */ beq lbl_80159708 -/* 801596F4 00156654 28 1F 00 00 */ cmplwi r31, 0 -/* 801596F8 00156658 41 82 00 0C */ beq lbl_80159704 -/* 801596FC 0015665C C3 61 00 08 */ lfs f27, 8(r1) -/* 80159700 00156660 48 00 00 08 */ b lbl_80159708 -lbl_80159704: -/* 80159704 00156664 C3 61 00 0C */ lfs f27, 0xc(r1) -lbl_80159708: -/* 80159708 00156668 28 1F 00 00 */ cmplwi r31, 0 -/* 8015970C 0015666C 40 82 00 0C */ bne lbl_80159718 -/* 80159710 00156670 EC 1D E0 24 */ fdivs f0, f29, f28 -/* 80159714 00156674 EF 7B 00 2A */ fadds f27, f27, f0 -lbl_80159718: -/* 80159718 00156678 C0 02 9E 8C */ lfs f0, lbl_805ABBAC@sda21(r2) -/* 8015971C 0015667C FC 1B 00 40 */ fcmpo cr0, f27, f0 -/* 80159720 00156680 40 80 00 40 */ bge lbl_80159760 -/* 80159724 00156684 EC BD D8 24 */ fdivs f5, f29, f27 -/* 80159728 00156688 C0 22 9E 64 */ lfs f1, lbl_805ABB84@sda21(r2) -/* 8015972C 0015668C C0 01 00 24 */ lfs f0, 0x24(r1) -/* 80159730 00156690 C0 61 00 1C */ lfs f3, 0x1c(r1) -/* 80159734 00156694 C0 41 00 20 */ lfs f2, 0x20(r1) -/* 80159738 00156698 EC 85 00 32 */ fmuls f4, f5, f0 -/* 8015973C 0015669C EC 1F D8 24 */ fdivs f0, f31, f27 -/* 80159740 001566A0 D0 81 00 30 */ stfs f4, 0x30(r1) -/* 80159744 001566A4 EC 21 07 B2 */ fmuls f1, f1, f30 -/* 80159748 001566A8 EC 65 00 F2 */ fmuls f3, f5, f3 -/* 8015974C 001566AC EC 45 00 B2 */ fmuls f2, f5, f2 -/* 80159750 001566B0 EC 01 06 FC */ fnmsubs f0, f1, f27, f0 -/* 80159754 001566B4 D0 61 00 28 */ stfs f3, 0x28(r1) -/* 80159758 001566B8 D0 41 00 2C */ stfs f2, 0x2c(r1) -/* 8015975C 001566BC D0 01 00 30 */ stfs f0, 0x30(r1) -lbl_80159760: -/* 80159760 001566C0 7F C3 F3 78 */ mr r3, r30 -/* 80159764 001566C4 38 81 00 28 */ addi r4, r1, 0x28 -/* 80159768 001566C8 4B FC 15 39 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -/* 8015976C 001566CC E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 -/* 80159770 001566D0 CB E1 00 80 */ lfd f31, 0x80(r1) -/* 80159774 001566D4 E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0 -/* 80159778 001566D8 CB C1 00 70 */ lfd f30, 0x70(r1) -/* 8015977C 001566DC E3 A1 00 68 */ psq_l f29, 104(r1), 0, qr0 -/* 80159780 001566E0 CB A1 00 60 */ lfd f29, 0x60(r1) -/* 80159784 001566E4 E3 81 00 58 */ psq_l f28, 88(r1), 0, qr0 -/* 80159788 001566E8 CB 81 00 50 */ lfd f28, 0x50(r1) -/* 8015978C 001566EC E3 61 00 48 */ psq_l f27, 72(r1), 0, qr0 -/* 80159790 001566F0 CB 61 00 40 */ lfd f27, 0x40(r1) -/* 80159794 001566F4 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 80159798 001566F8 80 01 00 94 */ lwz r0, 0x94(r1) -/* 8015979C 001566FC 83 C1 00 38 */ lwz r30, 0x38(r1) -/* 801597A0 00156700 7C 08 03 A6 */ mtlr r0 -/* 801597A4 00156704 38 21 00 90 */ addi r1, r1, 0x90 -/* 801597A8 00156708 4E 80 00 20 */ blr - -.global UpdateWalkerAnimation__9CParasiteFR13CStateManagerf -UpdateWalkerAnimation__9CParasiteFR13CStateManagerf: -/* 801597AC 0015670C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801597B0 00156710 7C 08 02 A6 */ mflr r0 -/* 801597B4 00156714 38 C0 00 01 */ li r6, 1 -/* 801597B8 00156718 90 01 00 14 */ stw r0, 0x14(r1) -/* 801597BC 0015671C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 801597C0 00156720 7C 7F 1B 78 */ mr r31, r3 -/* 801597C4 00156724 4B EF BA D9 */ bl UpdateAnimation__6CActorFfR13CStateManagerb -/* 801597C8 00156728 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801597CC 0015672C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 801597D0 00156730 7C 08 03 A6 */ mtlr r0 -/* 801597D4 00156734 38 21 00 10 */ addi r1, r1, 0x10 -/* 801597D8 00156738 4E 80 00 20 */ blr - -.global Think__9CParasiteFfR13CStateManager -Think__9CParasiteFfR13CStateManager: -/* 801597DC 0015673C 94 21 FE 70 */ stwu r1, -0x190(r1) -/* 801597E0 00156740 7C 08 02 A6 */ mflr r0 -/* 801597E4 00156744 90 01 01 94 */ stw r0, 0x194(r1) -/* 801597E8 00156748 DB E1 01 80 */ stfd f31, 0x180(r1) -/* 801597EC 0015674C F3 E1 01 88 */ psq_st f31, 392(r1), 0, qr0 -/* 801597F0 00156750 DB C1 01 70 */ stfd f30, 0x170(r1) -/* 801597F4 00156754 F3 C1 01 78 */ psq_st f30, 376(r1), 0, qr0 -/* 801597F8 00156758 93 E1 01 6C */ stw r31, 0x16c(r1) -/* 801597FC 0015675C 93 C1 01 68 */ stw r30, 0x168(r1) -/* 80159800 00156760 93 A1 01 64 */ stw r29, 0x164(r1) -/* 80159804 00156764 88 03 00 30 */ lbz r0, 0x30(r3) -/* 80159808 00156768 FF E0 08 90 */ fmr f31, f1 -/* 8015980C 0015676C 7C 7D 1B 78 */ mr r29, r3 -/* 80159810 00156770 7C 9E 23 78 */ mr r30, r4 -/* 80159814 00156774 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80159818 00156778 41 82 05 48 */ beq lbl_80159D60 -/* 8015981C 0015677C A8 BD 05 D4 */ lha r5, 0x5d4(r29) -/* 80159820 00156780 38 05 00 01 */ addi r0, r5, 1 -/* 80159824 00156784 B0 1D 05 D4 */ sth r0, 0x5d4(r29) -/* 80159828 00156788 80 1D 05 D0 */ lwz r0, 0x5d0(r29) -/* 8015982C 0015678C 2C 00 00 03 */ cmpwi r0, 3 -/* 80159830 00156790 40 82 00 08 */ bne lbl_80159838 -/* 80159834 00156794 4B FF D3 19 */ bl UpdateCollisionActors__9CParasiteFR13CStateManager -lbl_80159838: -/* 80159838 00156798 88 1D 05 D6 */ lbz r0, 0x5d6(r29) -/* 8015983C 0015679C 38 C0 00 00 */ li r6, 0 -/* 80159840 001567A0 50 C0 2E B4 */ rlwimi r0, r6, 5, 0x1a, 0x1a -/* 80159844 001567A4 98 1D 05 D6 */ stb r0, 0x5d6(r29) -/* 80159848 001567A8 80 BD 00 04 */ lwz r5, 4(r29) -/* 8015984C 001567AC 80 9E 08 50 */ lwz r4, 0x850(r30) -/* 80159850 001567B0 54 A3 18 38 */ slwi r3, r5, 3 -/* 80159854 001567B4 90 A1 00 20 */ stw r5, 0x20(r1) -/* 80159858 001567B8 80 84 00 20 */ lwz r4, 0x20(r4) -/* 8015985C 001567BC 38 03 00 04 */ addi r0, r3, 4 -/* 80159860 001567C0 90 A1 00 24 */ stw r5, 0x24(r1) -/* 80159864 001567C4 7C 64 00 2E */ lwzx r3, r4, r0 -/* 80159868 001567C8 88 03 00 F0 */ lbz r0, 0xf0(r3) -/* 8015986C 001567CC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80159870 001567D0 41 82 00 0C */ beq lbl_8015987C -/* 80159874 001567D4 80 63 01 2C */ lwz r3, 0x12c(r3) -/* 80159878 001567D8 80 C3 10 DC */ lwz r6, 0x10dc(r3) -lbl_8015987C: -/* 8015987C 001567DC 2C 06 00 01 */ cmpwi r6, 1 -/* 80159880 001567E0 41 82 00 14 */ beq lbl_80159894 -/* 80159884 001567E4 88 1D 05 D6 */ lbz r0, 0x5d6(r29) -/* 80159888 001567E8 38 60 00 01 */ li r3, 1 -/* 8015988C 001567EC 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 80159890 001567F0 98 1D 05 D6 */ stb r0, 0x5d6(r29) -lbl_80159894: -/* 80159894 001567F4 88 1D 05 D6 */ lbz r0, 0x5d6(r29) -/* 80159898 001567F8 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f -/* 8015989C 001567FC 40 82 00 D4 */ bne lbl_80159970 -/* 801598A0 00156800 80 9E 08 4C */ lwz r4, 0x84c(r30) -/* 801598A4 00156804 38 61 00 88 */ addi r3, r1, 0x88 -/* 801598A8 00156808 C0 A4 00 60 */ lfs f5, 0x60(r4) -/* 801598AC 0015680C C0 84 00 50 */ lfs f4, 0x50(r4) -/* 801598B0 00156810 C0 64 00 40 */ lfs f3, 0x40(r4) -/* 801598B4 00156814 D0 61 00 94 */ stfs f3, 0x94(r1) -/* 801598B8 00156818 D0 81 00 98 */ stfs f4, 0x98(r1) -/* 801598BC 0015681C D0 A1 00 9C */ stfs f5, 0x9c(r1) -/* 801598C0 00156820 C0 5D 00 50 */ lfs f2, 0x50(r29) -/* 801598C4 00156824 C0 3D 00 60 */ lfs f1, 0x60(r29) -/* 801598C8 00156828 C0 1D 00 40 */ lfs f0, 0x40(r29) -/* 801598CC 0015682C EC 44 10 28 */ fsubs f2, f4, f2 -/* 801598D0 00156830 EC 25 08 28 */ fsubs f1, f5, f1 -/* 801598D4 00156834 EC 03 00 28 */ fsubs f0, f3, f0 -/* 801598D8 00156838 D0 41 00 8C */ stfs f2, 0x8c(r1) -/* 801598DC 0015683C D0 01 00 88 */ stfs f0, 0x88(r1) -/* 801598E0 00156840 D0 21 00 90 */ stfs f1, 0x90(r1) -/* 801598E4 00156844 48 1B AF D5 */ bl Magnitude__9CVector3fCFv -/* 801598E8 00156848 FF C0 08 90 */ fmr f30, f1 -/* 801598EC 0015684C C0 1D 05 C4 */ lfs f0, 0x5c4(r29) -/* 801598F0 00156850 FC 1E 00 40 */ fcmpo cr0, f30, f0 -/* 801598F4 00156854 40 81 00 7C */ ble lbl_80159970 -/* 801598F8 00156858 C0 3D 00 50 */ lfs f1, 0x50(r29) -/* 801598FC 0015685C 38 61 00 7C */ addi r3, r1, 0x7c -/* 80159900 00156860 C0 01 00 98 */ lfs f0, 0x98(r1) -/* 80159904 00156864 38 81 00 70 */ addi r4, r1, 0x70 -/* 80159908 00156868 C0 7D 00 60 */ lfs f3, 0x60(r29) -/* 8015990C 0015686C C0 41 00 9C */ lfs f2, 0x9c(r1) -/* 80159910 00156870 EC 81 00 28 */ fsubs f4, f1, f0 -/* 80159914 00156874 C0 3D 00 40 */ lfs f1, 0x40(r29) -/* 80159918 00156878 C0 01 00 94 */ lfs f0, 0x94(r1) -/* 8015991C 0015687C EC 43 10 28 */ fsubs f2, f3, f2 -/* 80159920 00156880 D0 81 00 74 */ stfs f4, 0x74(r1) -/* 80159924 00156884 EC 01 00 28 */ fsubs f0, f1, f0 -/* 80159928 00156888 D0 41 00 78 */ stfs f2, 0x78(r1) -/* 8015992C 0015688C D0 01 00 70 */ stfs f0, 0x70(r1) -/* 80159930 00156890 48 1B AF 21 */ bl AsNormalized__9CVector3fCFv -/* 80159934 00156894 FC 20 F0 90 */ fmr f1, f30 -/* 80159938 00156898 3C 60 80 5A */ lis r3, lbl_8059FD18@ha -/* 8015993C 0015689C 38 E3 FD 18 */ addi r7, r3, lbl_8059FD18@l -/* 80159940 001568A0 7F C4 F3 78 */ mr r4, r30 -/* 80159944 001568A4 38 61 01 28 */ addi r3, r1, 0x128 -/* 80159948 001568A8 38 A1 00 94 */ addi r5, r1, 0x94 -/* 8015994C 001568AC 38 C1 00 7C */ addi r6, r1, 0x7c -/* 80159950 001568B0 4B EF 36 49 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter -/* 80159954 001568B4 88 01 01 48 */ lbz r0, 0x148(r1) -/* 80159958 001568B8 28 00 00 00 */ cmplwi r0, 0 -/* 8015995C 001568BC 41 82 00 14 */ beq lbl_80159970 -/* 80159960 001568C0 88 1D 05 D6 */ lbz r0, 0x5d6(r29) -/* 80159964 001568C4 38 60 00 01 */ li r3, 1 -/* 80159968 001568C8 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 8015996C 001568CC 98 1D 05 D6 */ stb r0, 0x5d6(r29) -lbl_80159970: -/* 80159970 001568D0 88 7D 05 D6 */ lbz r3, 0x5d6(r29) -/* 80159974 001568D4 54 60 DF FF */ rlwinm. r0, r3, 0x1b, 0x1f, 0x1f -/* 80159978 001568D8 41 82 00 18 */ beq lbl_80159990 -/* 8015997C 001568DC 88 1D 00 F8 */ lbz r0, 0xf8(r29) -/* 80159980 001568E0 38 60 00 00 */ li r3, 0 -/* 80159984 001568E4 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80159988 001568E8 98 1D 00 F8 */ stb r0, 0xf8(r29) -/* 8015998C 001568EC 48 00 03 D4 */ b lbl_80159D60 -lbl_80159990: -/* 80159990 001568F0 54 63 CF FE */ rlwinm r3, r3, 0x19, 0x1f, 0x1f -/* 80159994 001568F4 88 1D 00 F8 */ lbz r0, 0xf8(r29) -/* 80159998 001568F8 7C 63 00 34 */ cntlzw r3, r3 -/* 8015999C 001568FC 50 60 16 30 */ rlwimi r0, r3, 2, 0x18, 0x18 -/* 801599A0 00156900 98 1D 00 F8 */ stb r0, 0xf8(r29) -/* 801599A4 00156904 88 1D 05 D6 */ lbz r0, 0x5d6(r29) -/* 801599A8 00156908 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f -/* 801599AC 0015690C 40 82 00 DC */ bne lbl_80159A88 -/* 801599B0 00156910 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 801599B4 00156914 4B FE 07 19 */ bl GetPercentageFrozen__15CBodyControllerCFv -/* 801599B8 00156918 C0 42 9E 50 */ lfs f2, lbl_805ABB70@sda21(r2) -/* 801599BC 0015691C C0 02 9E 90 */ lfs f0, lbl_805ABBB0@sda21(r2) -/* 801599C0 00156920 EC 21 10 28 */ fsubs f1, f1, f2 -/* 801599C4 00156924 FC 20 0A 10 */ fabs f1, f1 -/* 801599C8 00156928 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801599CC 0015692C 40 80 00 BC */ bge lbl_80159A88 -/* 801599D0 00156930 88 0D A4 08 */ lbz r0, lbl_805A8FC8@sda21(r13) -/* 801599D4 00156934 7C 00 07 75 */ extsb. r0, r0 -/* 801599D8 00156938 40 82 00 20 */ bne lbl_801599F8 -/* 801599DC 0015693C C0 22 9E 94 */ lfs f1, lbl_805ABBB4@sda21(r2) -/* 801599E0 00156940 38 00 00 01 */ li r0, 1 -/* 801599E4 00156944 C0 1D 03 B4 */ lfs f0, 0x3b4(r29) -/* 801599E8 00156948 EC 21 07 F2 */ fmuls f1, f1, f31 -/* 801599EC 0015694C 98 0D A4 08 */ stb r0, lbl_805A8FC8@sda21(r13) -/* 801599F0 00156950 EC 01 00 32 */ fmuls f0, f1, f0 -/* 801599F4 00156954 D0 0D A4 04 */ stfs f0, lbl_805A8FC4@sda21(r13) -lbl_801599F8: -/* 801599F8 00156958 C0 5D 00 50 */ lfs f2, 0x50(r29) -/* 801599FC 0015695C C0 3D 06 18 */ lfs f1, 0x618(r29) -/* 80159A00 00156960 C0 0D A4 04 */ lfs f0, lbl_805A8FC4@sda21(r13) -/* 80159A04 00156964 EC A2 08 28 */ fsubs f5, f2, f1 -/* 80159A08 00156968 C0 9D 00 40 */ lfs f4, 0x40(r29) -/* 80159A0C 0015696C C0 3D 06 14 */ lfs f1, 0x614(r29) -/* 80159A10 00156970 EC 00 07 F2 */ fmuls f0, f0, f31 -/* 80159A14 00156974 C0 7D 00 60 */ lfs f3, 0x60(r29) -/* 80159A18 00156978 C0 5D 06 1C */ lfs f2, 0x61c(r29) -/* 80159A1C 0015697C EC 84 08 28 */ fsubs f4, f4, f1 -/* 80159A20 00156980 EC 25 01 72 */ fmuls f1, f5, f5 -/* 80159A24 00156984 EC 43 10 28 */ fsubs f2, f3, f2 -/* 80159A28 00156988 EC 24 09 3A */ fmadds f1, f4, f4, f1 -/* 80159A2C 0015698C EC 22 08 BA */ fmadds f1, f2, f2, f1 -/* 80159A30 00156990 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80159A34 00156994 40 80 00 14 */ bge lbl_80159A48 -/* 80159A38 00156998 C0 1D 06 0C */ lfs f0, 0x60c(r29) -/* 80159A3C 0015699C EC 00 F8 2A */ fadds f0, f0, f31 -/* 80159A40 001569A0 D0 1D 06 0C */ stfs f0, 0x60c(r29) -/* 80159A44 001569A4 48 00 00 0C */ b lbl_80159A50 -lbl_80159A48: -/* 80159A48 001569A8 C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) -/* 80159A4C 001569AC D0 1D 06 0C */ stfs f0, 0x60c(r29) -lbl_80159A50: -/* 80159A50 001569B0 C0 7D 00 60 */ lfs f3, 0x60(r29) -/* 80159A54 001569B4 C0 5D 00 50 */ lfs f2, 0x50(r29) -/* 80159A58 001569B8 C0 3D 00 40 */ lfs f1, 0x40(r29) -/* 80159A5C 001569BC C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) -/* 80159A60 001569C0 D0 3D 06 14 */ stfs f1, 0x614(r29) -/* 80159A64 001569C4 D0 5D 06 18 */ stfs f2, 0x618(r29) -/* 80159A68 001569C8 D0 7D 06 1C */ stfs f3, 0x61c(r29) -/* 80159A6C 001569CC C0 3D 06 08 */ lfs f1, 0x608(r29) -/* 80159A70 001569D0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80159A74 001569D4 40 81 00 10 */ ble lbl_80159A84 -/* 80159A78 001569D8 EC 01 F8 28 */ fsubs f0, f1, f31 -/* 80159A7C 001569DC D0 1D 06 08 */ stfs f0, 0x608(r29) -/* 80159A80 001569E0 48 00 00 08 */ b lbl_80159A88 -lbl_80159A84: -/* 80159A84 001569E4 D0 1D 06 08 */ stfs f0, 0x608(r29) -lbl_80159A88: -/* 80159A88 001569E8 88 1D 04 00 */ lbz r0, 0x400(r29) -/* 80159A8C 001569EC 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 80159A90 001569F0 41 82 01 E8 */ beq lbl_80159C78 -/* 80159A94 001569F4 83 FE 08 4C */ lwz r31, 0x84c(r30) -/* 80159A98 001569F8 38 60 00 00 */ li r3, 0 -/* 80159A9C 001569FC 80 1F 02 F8 */ lwz r0, 0x2f8(r31) -/* 80159AA0 00156A00 2C 00 00 01 */ cmpwi r0, 1 -/* 80159AA4 00156A04 41 82 00 10 */ beq lbl_80159AB4 -/* 80159AA8 00156A08 88 1D 07 42 */ lbz r0, 0x742(r29) -/* 80159AAC 00156A0C 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f -/* 80159AB0 00156A10 40 82 00 08 */ bne lbl_80159AB8 -lbl_80159AB4: -/* 80159AB4 00156A14 38 60 00 01 */ li r3, 1 -lbl_80159AB8: -/* 80159AB8 00156A18 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80159ABC 00156A1C 41 82 00 0C */ beq lbl_80159AC8 -/* 80159AC0 00156A20 C0 DD 05 AC */ lfs f6, 0x5ac(r29) -/* 80159AC4 00156A24 48 00 00 08 */ b lbl_80159ACC -lbl_80159AC8: -/* 80159AC8 00156A28 C0 DD 07 08 */ lfs f6, 0x708(r29) -lbl_80159ACC: -/* 80159ACC 00156A2C C0 7D 00 50 */ lfs f3, 0x50(r29) -/* 80159AD0 00156A30 38 61 01 0C */ addi r3, r1, 0x10c -/* 80159AD4 00156A34 C0 5D 00 60 */ lfs f2, 0x60(r29) -/* 80159AD8 00156A38 38 81 00 64 */ addi r4, r1, 0x64 -/* 80159ADC 00156A3C C0 1D 00 40 */ lfs f0, 0x40(r29) -/* 80159AE0 00156A40 EC A3 30 2A */ fadds f5, f3, f6 -/* 80159AE4 00156A44 EC 82 30 2A */ fadds f4, f2, f6 -/* 80159AE8 00156A48 38 A1 00 58 */ addi r5, r1, 0x58 -/* 80159AEC 00156A4C EC 20 30 2A */ fadds f1, f0, f6 -/* 80159AF0 00156A50 EC 63 30 28 */ fsubs f3, f3, f6 -/* 80159AF4 00156A54 D0 A1 00 5C */ stfs f5, 0x5c(r1) -/* 80159AF8 00156A58 EC 42 30 28 */ fsubs f2, f2, f6 -/* 80159AFC 00156A5C EC 00 30 28 */ fsubs f0, f0, f6 -/* 80159B00 00156A60 D0 21 00 58 */ stfs f1, 0x58(r1) -/* 80159B04 00156A64 D0 81 00 60 */ stfs f4, 0x60(r1) -/* 80159B08 00156A68 D0 01 00 64 */ stfs f0, 0x64(r1) -/* 80159B0C 00156A6C D0 61 00 68 */ stfs f3, 0x68(r1) -/* 80159B10 00156A70 D0 41 00 6C */ stfs f2, 0x6c(r1) -/* 80159B14 00156A74 48 1D E9 F5 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 80159B18 00156A78 7F E4 FB 78 */ mr r4, r31 -/* 80159B1C 00156A7C 38 61 00 D4 */ addi r3, r1, 0xd4 -/* 80159B20 00156A80 81 9F 00 00 */ lwz r12, 0(r31) -/* 80159B24 00156A84 81 8C 00 40 */ lwz r12, 0x40(r12) -/* 80159B28 00156A88 7D 89 03 A6 */ mtctr r12 -/* 80159B2C 00156A8C 4E 80 04 21 */ bctrl -/* 80159B30 00156A90 88 01 00 EC */ lbz r0, 0xec(r1) -/* 80159B34 00156A94 28 00 00 00 */ cmplwi r0, 0 -/* 80159B38 00156A98 98 01 01 08 */ stb r0, 0x108(r1) -/* 80159B3C 00156A9C 41 82 00 3C */ beq lbl_80159B78 -/* 80159B40 00156AA0 34 61 00 F0 */ addic. r3, r1, 0xf0 -/* 80159B44 00156AA4 41 82 00 34 */ beq lbl_80159B78 -/* 80159B48 00156AA8 C0 01 00 D4 */ lfs f0, 0xd4(r1) -/* 80159B4C 00156AAC D0 03 00 00 */ stfs f0, 0(r3) -/* 80159B50 00156AB0 C0 01 00 D8 */ lfs f0, 0xd8(r1) -/* 80159B54 00156AB4 D0 03 00 04 */ stfs f0, 4(r3) -/* 80159B58 00156AB8 C0 01 00 DC */ lfs f0, 0xdc(r1) -/* 80159B5C 00156ABC D0 03 00 08 */ stfs f0, 8(r3) -/* 80159B60 00156AC0 C0 01 00 E0 */ lfs f0, 0xe0(r1) -/* 80159B64 00156AC4 D0 03 00 0C */ stfs f0, 0xc(r3) -/* 80159B68 00156AC8 C0 01 00 E4 */ lfs f0, 0xe4(r1) -/* 80159B6C 00156ACC D0 03 00 10 */ stfs f0, 0x10(r3) -/* 80159B70 00156AD0 C0 01 00 E8 */ lfs f0, 0xe8(r1) -/* 80159B74 00156AD4 D0 03 00 14 */ stfs f0, 0x14(r3) -lbl_80159B78: -/* 80159B78 00156AD8 88 01 01 08 */ lbz r0, 0x108(r1) -/* 80159B7C 00156ADC 38 60 00 00 */ li r3, 0 -/* 80159B80 00156AE0 98 61 00 EC */ stb r3, 0xec(r1) -/* 80159B84 00156AE4 28 00 00 00 */ cmplwi r0, 0 -/* 80159B88 00156AE8 41 82 00 E8 */ beq lbl_80159C70 -/* 80159B8C 00156AEC 38 61 00 F0 */ addi r3, r1, 0xf0 -/* 80159B90 00156AF0 38 81 01 0C */ addi r4, r1, 0x10c -/* 80159B94 00156AF4 48 1D DF F1 */ bl DoBoundsOverlap__6CAABoxCFRC6CAABox -/* 80159B98 00156AF8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80159B9C 00156AFC 41 82 00 D4 */ beq lbl_80159C70 -/* 80159BA0 00156B00 88 9D 07 42 */ lbz r4, 0x742(r29) -/* 80159BA4 00156B04 54 80 FF FF */ rlwinm. r0, r4, 0x1f, 0x1f, 0x1f -/* 80159BA8 00156B08 40 82 00 20 */ bne lbl_80159BC8 -/* 80159BAC 00156B0C 38 00 00 01 */ li r0, 1 -/* 80159BB0 00156B10 38 60 00 00 */ li r3, 0 -/* 80159BB4 00156B14 50 04 0F BC */ rlwimi r4, r0, 1, 0x1e, 0x1e -/* 80159BB8 00156B18 98 9D 07 42 */ stb r4, 0x742(r29) -/* 80159BBC 00156B1C 88 1D 07 42 */ lbz r0, 0x742(r29) -/* 80159BC0 00156B20 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 80159BC4 00156B24 98 1D 07 42 */ stb r0, 0x742(r29) -lbl_80159BC8: -/* 80159BC8 00156B28 C0 3D 04 20 */ lfs f1, 0x420(r29) -/* 80159BCC 00156B2C C0 02 9E 50 */ lfs f0, lbl_805ABB70@sda21(r2) -/* 80159BD0 00156B30 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80159BD4 00156B34 4C 40 13 82 */ cror 2, 0, 2 -/* 80159BD8 00156B38 40 82 00 98 */ bne lbl_80159C70 -/* 80159BDC 00156B3C 80 AD 8C 90 */ lwz r5, lbl_805A7850@sda21(r13) -/* 80159BE0 00156B40 38 60 00 00 */ li r3, 0 -/* 80159BE4 00156B44 38 80 00 01 */ li r4, 1 -/* 80159BE8 00156B48 48 23 03 0D */ bl __shl2i -/* 80159BEC 00156B4C 38 A0 00 00 */ li r5, 0 -/* 80159BF0 00156B50 38 00 00 03 */ li r0, 3 -/* 80159BF4 00156B54 90 81 00 A4 */ stw r4, 0xa4(r1) -/* 80159BF8 00156B58 7F A4 EB 78 */ mr r4, r29 -/* 80159BFC 00156B5C 90 61 00 A0 */ stw r3, 0xa0(r1) -/* 80159C00 00156B60 38 61 00 B8 */ addi r3, r1, 0xb8 -/* 80159C04 00156B64 90 A1 00 AC */ stw r5, 0xac(r1) -/* 80159C08 00156B68 90 A1 00 A8 */ stw r5, 0xa8(r1) -/* 80159C0C 00156B6C 90 01 00 B0 */ stw r0, 0xb0(r1) -/* 80159C10 00156B70 A0 1D 00 08 */ lhz r0, 8(r29) -/* 80159C14 00156B74 B0 01 00 0C */ sth r0, 0xc(r1) -/* 80159C18 00156B78 A0 BF 00 08 */ lhz r5, 8(r31) -/* 80159C1C 00156B7C B0 01 00 08 */ sth r0, 8(r1) -/* 80159C20 00156B80 B0 A1 00 14 */ sth r5, 0x14(r1) -/* 80159C24 00156B84 A0 1D 00 08 */ lhz r0, 8(r29) -/* 80159C28 00156B88 B0 A1 00 10 */ sth r5, 0x10(r1) -/* 80159C2C 00156B8C B0 01 00 1C */ sth r0, 0x1c(r1) -/* 80159C30 00156B90 81 9D 00 00 */ lwz r12, 0(r29) -/* 80159C34 00156B94 B0 01 00 18 */ sth r0, 0x18(r1) -/* 80159C38 00156B98 81 8C 02 B0 */ lwz r12, 0x2b0(r12) -/* 80159C3C 00156B9C 7D 89 03 A6 */ mtctr r12 -/* 80159C40 00156BA0 4E 80 04 21 */ bctrl -/* 80159C44 00156BA4 3C 80 80 5A */ lis r4, skZero3f@ha -/* 80159C48 00156BA8 7F C3 F3 78 */ mr r3, r30 -/* 80159C4C 00156BAC 39 24 66 A0 */ addi r9, r4, skZero3f@l -/* 80159C50 00156BB0 38 A1 00 14 */ addi r5, r1, 0x14 -/* 80159C54 00156BB4 38 81 00 1C */ addi r4, r1, 0x1c -/* 80159C58 00156BB8 38 C1 00 0C */ addi r6, r1, 0xc -/* 80159C5C 00156BBC 38 E1 00 B8 */ addi r7, r1, 0xb8 -/* 80159C60 00156BC0 39 01 00 A0 */ addi r8, r1, 0xa0 -/* 80159C64 00156BC4 4B EF 04 3D */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f -/* 80159C68 00156BC8 C0 1D 04 24 */ lfs f0, 0x424(r29) -/* 80159C6C 00156BCC D0 1D 04 20 */ stfs f0, 0x420(r29) -lbl_80159C70: -/* 80159C70 00156BD0 38 00 00 00 */ li r0, 0 -/* 80159C74 00156BD4 98 01 01 08 */ stb r0, 0x108(r1) -lbl_80159C78: -/* 80159C78 00156BD8 FC 20 F8 90 */ fmr f1, f31 -/* 80159C7C 00156BDC 7F A3 EB 78 */ mr r3, r29 -/* 80159C80 00156BE0 7F C4 F3 78 */ mr r4, r30 -/* 80159C84 00156BE4 48 10 E8 E9 */ bl Think__11CWallWalkerFfR13CStateManager -/* 80159C88 00156BE8 88 1D 05 D6 */ lbz r0, 0x5d6(r29) -/* 80159C8C 00156BEC 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f -/* 80159C90 00156BF0 40 82 00 D0 */ bne lbl_80159D60 -/* 80159C94 00156BF4 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 80159C98 00156BF8 4B FE 04 35 */ bl GetPercentageFrozen__15CBodyControllerCFv -/* 80159C9C 00156BFC C0 42 9E 50 */ lfs f2, lbl_805ABB70@sda21(r2) -/* 80159CA0 00156C00 C0 02 9E 90 */ lfs f0, lbl_805ABBB0@sda21(r2) -/* 80159CA4 00156C04 EC 21 10 28 */ fsubs f1, f1, f2 -/* 80159CA8 00156C08 FC 20 0A 10 */ fabs f1, f1 -/* 80159CAC 00156C0C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80159CB0 00156C10 40 80 00 B0 */ bge lbl_80159D60 -/* 80159CB4 00156C14 C0 1D 06 04 */ lfs f0, 0x604(r29) -/* 80159CB8 00156C18 D0 1D 03 B4 */ stfs f0, 0x3b4(r29) -/* 80159CBC 00156C1C 88 1D 05 D6 */ lbz r0, 0x5d6(r29) -/* 80159CC0 00156C20 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80159CC4 00156C24 41 82 00 8C */ beq lbl_80159D50 -/* 80159CC8 00156C28 C0 7D 01 3C */ lfs f3, 0x13c(r29) -/* 80159CCC 00156C2C FC 40 F8 90 */ fmr f2, f31 -/* 80159CD0 00156C30 C0 1D 01 40 */ lfs f0, 0x140(r29) -/* 80159CD4 00156C34 7F A3 EB 78 */ mr r3, r29 -/* 80159CD8 00156C38 C0 3D 01 38 */ lfs f1, 0x138(r29) -/* 80159CDC 00156C3C EC DF 00 F2 */ fmuls f6, f31, f3 -/* 80159CE0 00156C40 EC BF 00 32 */ fmuls f5, f31, f0 -/* 80159CE4 00156C44 C0 02 9E 58 */ lfs f0, lbl_805ABB78@sda21(r2) -/* 80159CE8 00156C48 EC 3F 00 72 */ fmuls f1, f31, f1 -/* 80159CEC 00156C4C C1 9D 00 60 */ lfs f12, 0x60(r29) -/* 80159CF0 00156C50 7F C4 F3 78 */ mr r4, r30 -/* 80159CF4 00156C54 EC E0 01 72 */ fmuls f7, f0, f5 -/* 80159CF8 00156C58 ED 00 01 B2 */ fmuls f8, f0, f6 -/* 80159CFC 00156C5C C1 7D 00 50 */ lfs f11, 0x50(r29) -/* 80159D00 00156C60 EC 80 00 72 */ fmuls f4, f0, f1 -/* 80159D04 00156C64 C0 7D 00 40 */ lfs f3, 0x40(r29) -/* 80159D08 00156C68 ED 2C 38 2A */ fadds f9, f12, f7 -/* 80159D0C 00156C6C ED 4B 40 2A */ fadds f10, f11, f8 -/* 80159D10 00156C70 EC 03 20 2A */ fadds f0, f3, f4 -/* 80159D14 00156C74 D0 21 00 28 */ stfs f1, 0x28(r1) -/* 80159D18 00156C78 38 A1 00 4C */ addi r5, r1, 0x4c -/* 80159D1C 00156C7C D1 41 00 50 */ stfs f10, 0x50(r1) -/* 80159D20 00156C80 D0 01 00 4C */ stfs f0, 0x4c(r1) -/* 80159D24 00156C84 D1 21 00 54 */ stfs f9, 0x54(r1) -/* 80159D28 00156C88 D0 C1 00 2C */ stfs f6, 0x2c(r1) -/* 80159D2C 00156C8C C0 3D 05 AC */ lfs f1, 0x5ac(r29) -/* 80159D30 00156C90 D0 A1 00 30 */ stfs f5, 0x30(r1) -/* 80159D34 00156C94 D0 81 00 34 */ stfs f4, 0x34(r1) -/* 80159D38 00156C98 D1 01 00 38 */ stfs f8, 0x38(r1) -/* 80159D3C 00156C9C D0 E1 00 3C */ stfs f7, 0x3c(r1) -/* 80159D40 00156CA0 D0 61 00 40 */ stfs f3, 0x40(r1) -/* 80159D44 00156CA4 D1 61 00 44 */ stfs f11, 0x44(r1) -/* 80159D48 00156CA8 D1 81 00 48 */ stfs f12, 0x48(r1) -/* 80159D4C 00156CAC 48 10 EC FD */ bl AlignToFloor__11CWallWalkerFR13CStateManagerfRC9CVector3ff -lbl_80159D50: -/* 80159D50 00156CB0 88 1D 07 42 */ lbz r0, 0x742(r29) -/* 80159D54 00156CB4 38 60 00 00 */ li r3, 0 -/* 80159D58 00156CB8 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 80159D5C 00156CBC 98 1D 07 42 */ stb r0, 0x742(r29) -lbl_80159D60: -/* 80159D60 00156CC0 E3 E1 01 88 */ psq_l f31, 392(r1), 0, qr0 -/* 80159D64 00156CC4 CB E1 01 80 */ lfd f31, 0x180(r1) -/* 80159D68 00156CC8 E3 C1 01 78 */ psq_l f30, 376(r1), 0, qr0 -/* 80159D6C 00156CCC CB C1 01 70 */ lfd f30, 0x170(r1) -/* 80159D70 00156CD0 83 E1 01 6C */ lwz r31, 0x16c(r1) -/* 80159D74 00156CD4 83 C1 01 68 */ lwz r30, 0x168(r1) -/* 80159D78 00156CD8 80 01 01 94 */ lwz r0, 0x194(r1) -/* 80159D7C 00156CDC 83 A1 01 64 */ lwz r29, 0x164(r1) -/* 80159D80 00156CE0 7C 08 03 A6 */ mtlr r0 -/* 80159D84 00156CE4 38 21 01 90 */ addi r1, r1, 0x190 -/* 80159D88 00156CE8 4E 80 00 20 */ blr - -.global PreThink__9CParasiteFfR13CStateManager -PreThink__9CParasiteFfR13CStateManager: -/* 80159D8C 00156CEC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80159D90 00156CF0 7C 08 02 A6 */ mflr r0 -/* 80159D94 00156CF4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80159D98 00156CF8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80159D9C 00156CFC 7C 7F 1B 78 */ mr r31, r3 -/* 80159DA0 00156D00 48 10 EA 91 */ bl PreThink__11CWallWalkerFfR13CStateManager -/* 80159DA4 00156D04 88 1F 07 43 */ lbz r0, 0x743(r31) -/* 80159DA8 00156D08 38 60 00 00 */ li r3, 0 -/* 80159DAC 00156D0C 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 80159DB0 00156D10 98 1F 07 43 */ stb r0, 0x743(r31) -/* 80159DB4 00156D14 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80159DB8 00156D18 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80159DBC 00156D1C 7C 08 03 A6 */ mtlr r0 -/* 80159DC0 00156D20 38 21 00 10 */ addi r1, r1, 0x10 -/* 80159DC4 00156D24 4E 80 00 20 */ blr - -.global AddDoorRepulsors__9CParasiteFR13CStateManager -AddDoorRepulsors__9CParasiteFR13CStateManager: -/* 80159DC8 00156D28 94 21 FF 40 */ stwu r1, -0xc0(r1) -/* 80159DCC 00156D2C 7C 08 02 A6 */ mflr r0 -/* 80159DD0 00156D30 90 01 00 C4 */ stw r0, 0xc4(r1) -/* 80159DD4 00156D34 DB E1 00 B0 */ stfd f31, 0xb0(r1) -/* 80159DD8 00156D38 F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 -/* 80159DDC 00156D3C DB C1 00 A0 */ stfd f30, 0xa0(r1) -/* 80159DE0 00156D40 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 -/* 80159DE4 00156D44 DB A1 00 90 */ stfd f29, 0x90(r1) -/* 80159DE8 00156D48 F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0 -/* 80159DEC 00156D4C 93 E1 00 8C */ stw r31, 0x8c(r1) -/* 80159DF0 00156D50 93 C1 00 88 */ stw r30, 0x88(r1) -/* 80159DF4 00156D54 93 A1 00 84 */ stw r29, 0x84(r1) -/* 80159DF8 00156D58 93 81 00 80 */ stw r28, 0x80(r1) -/* 80159DFC 00156D5C 83 E4 08 20 */ lwz r31, 0x820(r4) -/* 80159E00 00156D60 7C 7D 1B 78 */ mr r29, r3 -/* 80159E04 00156D64 3B C0 00 00 */ li r30, 0 -/* 80159E08 00156D68 AB 9F 20 08 */ lha r28, 0x2008(r31) -/* 80159E0C 00156D6C 48 00 00 5C */ b lbl_80159E68 -lbl_80159E10: -/* 80159E10 00156D70 7F E3 FB 78 */ mr r3, r31 -/* 80159E14 00156D74 7F 84 E3 78 */ mr r4, r28 -/* 80159E18 00156D78 4B EB 5E FD */ bl __vc__11CObjectListFi -/* 80159E1C 00156D7C 7C 60 1B 78 */ mr r0, r3 -/* 80159E20 00156D80 38 61 00 10 */ addi r3, r1, 0x10 -/* 80159E24 00156D84 7C 04 03 78 */ mr r4, r0 -/* 80159E28 00156D88 4B F5 02 C9 */ bl "__ct__25TCastToPtr<11CScriptDoor>FP7CEntity" -/* 80159E2C 00156D8C 80 63 00 04 */ lwz r3, 4(r3) -/* 80159E30 00156D90 28 03 00 00 */ cmplwi r3, 0 -/* 80159E34 00156D94 41 82 00 18 */ beq lbl_80159E4C -/* 80159E38 00156D98 80 63 00 04 */ lwz r3, 4(r3) -/* 80159E3C 00156D9C 80 1D 00 04 */ lwz r0, 4(r29) -/* 80159E40 00156DA0 7C 03 00 00 */ cmpw r3, r0 -/* 80159E44 00156DA4 40 82 00 08 */ bne lbl_80159E4C -/* 80159E48 00156DA8 3B DE 00 01 */ addi r30, r30, 1 -lbl_80159E4C: -/* 80159E4C 00156DAC 2C 1C FF FF */ cmpwi r28, -1 -/* 80159E50 00156DB0 41 82 00 14 */ beq lbl_80159E64 -/* 80159E54 00156DB4 57 83 18 38 */ slwi r3, r28, 3 -/* 80159E58 00156DB8 38 03 00 08 */ addi r0, r3, 8 -/* 80159E5C 00156DBC 7F 9F 02 AE */ lhax r28, r31, r0 -/* 80159E60 00156DC0 48 00 00 08 */ b lbl_80159E68 -lbl_80159E64: -/* 80159E64 00156DC4 3B 80 FF FF */ li r28, -1 -lbl_80159E68: -/* 80159E68 00156DC8 2C 1C FF FF */ cmpwi r28, -1 -/* 80159E6C 00156DCC 40 82 FF A4 */ bne lbl_80159E10 -/* 80159E70 00156DD0 7F C4 F3 78 */ mr r4, r30 -/* 80159E74 00156DD4 38 7D 05 D8 */ addi r3, r29, 0x5d8 -/* 80159E78 00156DD8 48 00 0D D1 */ bl "reserve__Q24rstl57vectorFi" -/* 80159E7C 00156DDC AB DF 20 08 */ lha r30, 0x2008(r31) -/* 80159E80 00156DE0 48 00 01 9C */ b lbl_8015A01C -lbl_80159E84: -/* 80159E84 00156DE4 7F E3 FB 78 */ mr r3, r31 -/* 80159E88 00156DE8 7F C4 F3 78 */ mr r4, r30 -/* 80159E8C 00156DEC 4B EB 5E 89 */ bl __vc__11CObjectListFi -/* 80159E90 00156DF0 7C 60 1B 78 */ mr r0, r3 -/* 80159E94 00156DF4 38 61 00 08 */ addi r3, r1, 8 -/* 80159E98 00156DF8 7C 04 03 78 */ mr r4, r0 -/* 80159E9C 00156DFC 4B F5 02 55 */ bl "__ct__25TCastToPtr<11CScriptDoor>FP7CEntity" -/* 80159EA0 00156E00 80 83 00 04 */ lwz r4, 4(r3) -/* 80159EA4 00156E04 28 04 00 00 */ cmplwi r4, 0 -/* 80159EA8 00156E08 41 82 01 58 */ beq lbl_8015A000 -/* 80159EAC 00156E0C 80 64 00 04 */ lwz r3, 4(r4) -/* 80159EB0 00156E10 80 1D 00 04 */ lwz r0, 4(r29) -/* 80159EB4 00156E14 7C 03 00 00 */ cmpw r3, r0 -/* 80159EB8 00156E18 40 82 01 48 */ bne lbl_8015A000 -/* 80159EBC 00156E1C 81 84 00 00 */ lwz r12, 0(r4) -/* 80159EC0 00156E20 38 61 00 3C */ addi r3, r1, 0x3c -/* 80159EC4 00156E24 81 8C 00 40 */ lwz r12, 0x40(r12) -/* 80159EC8 00156E28 7D 89 03 A6 */ mtctr r12 -/* 80159ECC 00156E2C 4E 80 04 21 */ bctrl -/* 80159ED0 00156E30 88 01 00 54 */ lbz r0, 0x54(r1) -/* 80159ED4 00156E34 28 00 00 00 */ cmplwi r0, 0 -/* 80159ED8 00156E38 98 01 00 70 */ stb r0, 0x70(r1) -/* 80159EDC 00156E3C 41 82 00 3C */ beq lbl_80159F18 -/* 80159EE0 00156E40 34 61 00 58 */ addic. r3, r1, 0x58 -/* 80159EE4 00156E44 41 82 00 34 */ beq lbl_80159F18 -/* 80159EE8 00156E48 C0 01 00 3C */ lfs f0, 0x3c(r1) -/* 80159EEC 00156E4C D0 03 00 00 */ stfs f0, 0(r3) -/* 80159EF0 00156E50 C0 01 00 40 */ lfs f0, 0x40(r1) -/* 80159EF4 00156E54 D0 03 00 04 */ stfs f0, 4(r3) -/* 80159EF8 00156E58 C0 01 00 44 */ lfs f0, 0x44(r1) -/* 80159EFC 00156E5C D0 03 00 08 */ stfs f0, 8(r3) -/* 80159F00 00156E60 C0 01 00 48 */ lfs f0, 0x48(r1) -/* 80159F04 00156E64 D0 03 00 0C */ stfs f0, 0xc(r3) -/* 80159F08 00156E68 C0 01 00 4C */ lfs f0, 0x4c(r1) -/* 80159F0C 00156E6C D0 03 00 10 */ stfs f0, 0x10(r3) -/* 80159F10 00156E70 C0 01 00 50 */ lfs f0, 0x50(r1) -/* 80159F14 00156E74 D0 03 00 14 */ stfs f0, 0x14(r3) -lbl_80159F18: -/* 80159F18 00156E78 88 01 00 70 */ lbz r0, 0x70(r1) -/* 80159F1C 00156E7C 38 60 00 00 */ li r3, 0 -/* 80159F20 00156E80 98 61 00 54 */ stb r3, 0x54(r1) -/* 80159F24 00156E84 28 00 00 00 */ cmplwi r0, 0 -/* 80159F28 00156E88 41 82 00 D0 */ beq lbl_80159FF8 -/* 80159F2C 00156E8C C0 21 00 5C */ lfs f1, 0x5c(r1) -/* 80159F30 00156E90 38 61 00 30 */ addi r3, r1, 0x30 -/* 80159F34 00156E94 C0 01 00 68 */ lfs f0, 0x68(r1) -/* 80159F38 00156E98 C0 61 00 60 */ lfs f3, 0x60(r1) -/* 80159F3C 00156E9C C0 41 00 6C */ lfs f2, 0x6c(r1) -/* 80159F40 00156EA0 EC 81 00 28 */ fsubs f4, f1, f0 -/* 80159F44 00156EA4 C0 21 00 58 */ lfs f1, 0x58(r1) -/* 80159F48 00156EA8 C0 01 00 64 */ lfs f0, 0x64(r1) -/* 80159F4C 00156EAC EC 43 10 28 */ fsubs f2, f3, f2 -/* 80159F50 00156EB0 D0 81 00 34 */ stfs f4, 0x34(r1) -/* 80159F54 00156EB4 EC 01 00 28 */ fsubs f0, f1, f0 -/* 80159F58 00156EB8 D0 41 00 38 */ stfs f2, 0x38(r1) -/* 80159F5C 00156EBC D0 01 00 30 */ stfs f0, 0x30(r1) -/* 80159F60 00156EC0 48 1B A9 59 */ bl Magnitude__9CVector3fCFv -/* 80159F64 00156EC4 FF E0 08 90 */ fmr f31, f1 -/* 80159F68 00156EC8 38 61 00 18 */ addi r3, r1, 0x18 -/* 80159F6C 00156ECC 38 81 00 58 */ addi r4, r1, 0x58 -/* 80159F70 00156ED0 48 1D D6 9D */ bl GetCenterPoint__6CAABoxCFv -/* 80159F74 00156ED4 80 61 00 1C */ lwz r3, 0x1c(r1) -/* 80159F78 00156ED8 80 01 00 20 */ lwz r0, 0x20(r1) -/* 80159F7C 00156EDC C0 02 9E 98 */ lfs f0, lbl_805ABBB8@sda21(r2) -/* 80159F80 00156EE0 90 61 00 28 */ stw r3, 0x28(r1) -/* 80159F84 00156EE4 80 61 00 18 */ lwz r3, 0x18(r1) -/* 80159F88 00156EE8 EF A0 07 F2 */ fmuls f29, f0, f31 -/* 80159F8C 00156EEC 90 01 00 2C */ stw r0, 0x2c(r1) -/* 80159F90 00156EF0 80 1D 05 DC */ lwz r0, 0x5dc(r29) -/* 80159F94 00156EF4 80 BD 05 E0 */ lwz r5, 0x5e0(r29) -/* 80159F98 00156EF8 90 61 00 24 */ stw r3, 0x24(r1) -/* 80159F9C 00156EFC 7C 00 28 00 */ cmpw r0, r5 -/* 80159FA0 00156F00 C3 E1 00 28 */ lfs f31, 0x28(r1) -/* 80159FA4 00156F04 C3 C1 00 2C */ lfs f30, 0x2c(r1) -/* 80159FA8 00156F08 41 80 00 1C */ blt lbl_80159FC4 -/* 80159FAC 00156F0C 2C 05 00 00 */ cmpwi r5, 0 -/* 80159FB0 00156F10 38 7D 05 D8 */ addi r3, r29, 0x5d8 -/* 80159FB4 00156F14 38 80 00 04 */ li r4, 4 -/* 80159FB8 00156F18 41 82 00 08 */ beq lbl_80159FC0 -/* 80159FBC 00156F1C 54 A4 08 3C */ slwi r4, r5, 1 -lbl_80159FC0: -/* 80159FC0 00156F20 48 00 0C 89 */ bl "reserve__Q24rstl57vectorFi" -lbl_80159FC4: -/* 80159FC4 00156F24 80 1D 05 DC */ lwz r0, 0x5dc(r29) -/* 80159FC8 00156F28 80 7D 05 E4 */ lwz r3, 0x5e4(r29) -/* 80159FCC 00156F2C 54 00 20 36 */ slwi r0, r0, 4 -/* 80159FD0 00156F30 7C 63 02 15 */ add. r3, r3, r0 -/* 80159FD4 00156F34 41 82 00 18 */ beq lbl_80159FEC -/* 80159FD8 00156F38 C0 01 00 24 */ lfs f0, 0x24(r1) -/* 80159FDC 00156F3C D0 03 00 00 */ stfs f0, 0(r3) -/* 80159FE0 00156F40 D3 E3 00 04 */ stfs f31, 4(r3) -/* 80159FE4 00156F44 D3 C3 00 08 */ stfs f30, 8(r3) -/* 80159FE8 00156F48 D3 A3 00 0C */ stfs f29, 0xc(r3) -lbl_80159FEC: -/* 80159FEC 00156F4C 80 7D 05 DC */ lwz r3, 0x5dc(r29) -/* 80159FF0 00156F50 38 03 00 01 */ addi r0, r3, 1 -/* 80159FF4 00156F54 90 1D 05 DC */ stw r0, 0x5dc(r29) -lbl_80159FF8: -/* 80159FF8 00156F58 38 00 00 00 */ li r0, 0 -/* 80159FFC 00156F5C 98 01 00 70 */ stb r0, 0x70(r1) -lbl_8015A000: -/* 8015A000 00156F60 2C 1E FF FF */ cmpwi r30, -1 -/* 8015A004 00156F64 41 82 00 14 */ beq lbl_8015A018 -/* 8015A008 00156F68 57 C3 18 38 */ slwi r3, r30, 3 -/* 8015A00C 00156F6C 38 03 00 08 */ addi r0, r3, 8 -/* 8015A010 00156F70 7F DF 02 AE */ lhax r30, r31, r0 -/* 8015A014 00156F74 48 00 00 08 */ b lbl_8015A01C -lbl_8015A018: -/* 8015A018 00156F78 3B C0 FF FF */ li r30, -1 -lbl_8015A01C: -/* 8015A01C 00156F7C 2C 1E FF FF */ cmpwi r30, -1 -/* 8015A020 00156F80 40 82 FE 64 */ bne lbl_80159E84 -/* 8015A024 00156F84 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 -/* 8015A028 00156F88 CB E1 00 B0 */ lfd f31, 0xb0(r1) -/* 8015A02C 00156F8C E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 -/* 8015A030 00156F90 CB C1 00 A0 */ lfd f30, 0xa0(r1) -/* 8015A034 00156F94 E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0 -/* 8015A038 00156F98 CB A1 00 90 */ lfd f29, 0x90(r1) -/* 8015A03C 00156F9C 83 E1 00 8C */ lwz r31, 0x8c(r1) -/* 8015A040 00156FA0 83 C1 00 88 */ lwz r30, 0x88(r1) -/* 8015A044 00156FA4 83 A1 00 84 */ lwz r29, 0x84(r1) -/* 8015A048 00156FA8 80 01 00 C4 */ lwz r0, 0xc4(r1) -/* 8015A04C 00156FAC 83 81 00 80 */ lwz r28, 0x80(r1) -/* 8015A050 00156FB0 7C 08 03 A6 */ mtlr r0 -/* 8015A054 00156FB4 38 21 00 C0 */ addi r1, r1, 0xc0 -/* 8015A058 00156FB8 4E 80 00 20 */ blr - -.global AcceptScriptMsg__9CParasiteF20EScriptObjectMessage9TUniqueIdR13CStateManager -AcceptScriptMsg__9CParasiteF20EScriptObjectMessage9TUniqueIdR13CStateManager: -/* 8015A05C 00156FBC 94 21 FF 00 */ stwu r1, -0x100(r1) -/* 8015A060 00156FC0 7C 08 02 A6 */ mflr r0 -/* 8015A064 00156FC4 90 01 01 04 */ stw r0, 0x104(r1) -/* 8015A068 00156FC8 DB E1 00 F0 */ stfd f31, 0xf0(r1) -/* 8015A06C 00156FCC F3 E1 00 F8 */ psq_st f31, 248(r1), 0, qr0 -/* 8015A070 00156FD0 BF 61 00 DC */ stmw r27, 0xdc(r1) -/* 8015A074 00156FD4 7C BB 2B 78 */ mr r27, r5 -/* 8015A078 00156FD8 7C 7E 1B 78 */ mr r30, r3 -/* 8015A07C 00156FDC A0 05 00 00 */ lhz r0, 0(r5) -/* 8015A080 00156FE0 7C 9C 23 78 */ mr r28, r4 -/* 8015A084 00156FE4 7C DF 33 78 */ mr r31, r6 -/* 8015A088 00156FE8 38 A1 00 10 */ addi r5, r1, 0x10 -/* 8015A08C 00156FEC B0 01 00 10 */ sth r0, 0x10(r1) -/* 8015A090 00156FF0 4B F2 2A E9 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager -/* 8015A094 00156FF4 2C 1C 00 28 */ cmpwi r28, 0x28 -/* 8015A098 00156FF8 41 82 01 A8 */ beq lbl_8015A240 -/* 8015A09C 00156FFC 40 80 00 28 */ bge lbl_8015A0C4 -/* 8015A0A0 00157000 2C 1C 00 21 */ cmpwi r28, 0x21 -/* 8015A0A4 00157004 41 82 00 38 */ beq lbl_8015A0DC -/* 8015A0A8 00157008 40 80 00 10 */ bge lbl_8015A0B8 -/* 8015A0AC 0015700C 2C 1C 00 01 */ cmpwi r28, 1 -/* 8015A0B0 00157010 41 82 01 B8 */ beq lbl_8015A268 -/* 8015A0B4 00157014 48 00 03 5C */ b lbl_8015A410 -lbl_8015A0B8: -/* 8015A0B8 00157018 2C 1C 00 23 */ cmpwi r28, 0x23 -/* 8015A0BC 0015701C 40 80 03 54 */ bge lbl_8015A410 -/* 8015A0C0 00157020 48 00 01 50 */ b lbl_8015A210 -lbl_8015A0C4: -/* 8015A0C4 00157024 2C 1C 00 30 */ cmpwi r28, 0x30 -/* 8015A0C8 00157028 41 82 03 30 */ beq lbl_8015A3F8 -/* 8015A0CC 0015702C 40 80 03 44 */ bge lbl_8015A410 -/* 8015A0D0 00157030 2C 1C 00 2A */ cmpwi r28, 0x2a -/* 8015A0D4 00157034 41 82 01 C0 */ beq lbl_8015A294 -/* 8015A0D8 00157038 48 00 03 38 */ b lbl_8015A410 -lbl_8015A0DC: -/* 8015A0DC 0015703C 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 8015A0E0 00157040 7F E4 FB 78 */ mr r4, r31 -/* 8015A0E4 00157044 4B FE 0C 0D */ bl Activate__15CBodyControllerFR13CStateManager -/* 8015A0E8 00157048 83 BF 0F 5C */ lwz r29, 0xf5c(r31) -/* 8015A0EC 0015704C 3C 60 80 3D */ lis r3, lbl_803D0330@ha -/* 8015A0F0 00157050 38 63 03 30 */ addi r3, r3, lbl_803D0330@l -/* 8015A0F4 00157054 A3 7E 00 08 */ lhz r27, 8(r30) -/* 8015A0F8 00157058 83 9D 00 00 */ lwz r28, 0(r29) -/* 8015A0FC 0015705C 38 83 00 09 */ addi r4, r3, 9 -/* 8015A100 00157060 38 60 00 0A */ li r3, 0xa -/* 8015A104 00157064 38 A0 00 00 */ li r5, 0 -/* 8015A108 00157068 48 1B B7 11 */ bl __nwa__FUlPCcPCc -/* 8015A10C 0015706C 28 03 00 00 */ cmplwi r3, 0 -/* 8015A110 00157070 41 82 00 0C */ beq lbl_8015A11C -/* 8015A114 00157074 93 83 00 00 */ stw r28, 0(r3) -/* 8015A118 00157078 93 A3 00 04 */ stw r29, 4(r3) -lbl_8015A11C: -/* 8015A11C 0015707C 34 83 00 08 */ addic. r4, r3, 8 -/* 8015A120 00157080 41 82 00 08 */ beq lbl_8015A128 -/* 8015A124 00157084 B3 64 00 00 */ sth r27, 0(r4) -lbl_8015A128: -/* 8015A128 00157088 80 1F 0F 58 */ lwz r0, 0xf58(r31) -/* 8015A12C 0015708C 7C 1D 00 40 */ cmplw r29, r0 -/* 8015A130 00157090 40 82 00 08 */ bne lbl_8015A138 -/* 8015A134 00157094 90 7F 0F 58 */ stw r3, 0xf58(r31) -lbl_8015A138: -/* 8015A138 00157098 80 A3 00 00 */ lwz r5, 0(r3) -/* 8015A13C 0015709C 38 80 00 00 */ li r4, 0 -/* 8015A140 001570A0 90 65 00 04 */ stw r3, 4(r5) -/* 8015A144 001570A4 80 A3 00 04 */ lwz r5, 4(r3) -/* 8015A148 001570A8 90 65 00 00 */ stw r3, 0(r5) -/* 8015A14C 001570AC 7F C3 F3 78 */ mr r3, r30 -/* 8015A150 001570B0 80 BF 0F 68 */ lwz r5, 0xf68(r31) -/* 8015A154 001570B4 38 05 00 01 */ addi r0, r5, 1 -/* 8015A158 001570B8 90 1F 0F 68 */ stw r0, 0xf68(r31) -/* 8015A15C 001570BC 4B EF 8C 11 */ bl CreateShadow__6CActorFb -/* 8015A160 001570C0 C0 1E 03 B4 */ lfs f0, 0x3b4(r30) -/* 8015A164 001570C4 38 61 00 B4 */ addi r3, r1, 0xb4 -/* 8015A168 001570C8 38 81 00 48 */ addi r4, r1, 0x48 -/* 8015A16C 001570CC 38 A1 00 54 */ addi r5, r1, 0x54 -/* 8015A170 001570D0 D0 1E 06 04 */ stfs f0, 0x604(r30) -/* 8015A174 001570D4 C0 3E 05 AC */ lfs f1, 0x5ac(r30) -/* 8015A178 001570D8 FC 00 08 50 */ fneg f0, f1 -/* 8015A17C 001570DC D0 21 00 54 */ stfs f1, 0x54(r1) -/* 8015A180 001570E0 D0 21 00 58 */ stfs f1, 0x58(r1) -/* 8015A184 001570E4 D0 21 00 5C */ stfs f1, 0x5c(r1) -/* 8015A188 001570E8 D0 01 00 48 */ stfs f0, 0x48(r1) -/* 8015A18C 001570EC D0 01 00 4C */ stfs f0, 0x4c(r1) -/* 8015A190 001570F0 D0 01 00 50 */ stfs f0, 0x50(r1) -/* 8015A194 001570F4 48 1D E3 75 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 8015A198 001570F8 7C 64 1B 78 */ mr r4, r3 -/* 8015A19C 001570FC 7F C3 F3 78 */ mr r3, r30 -/* 8015A1A0 00157100 4B FC 04 B9 */ bl SetBoundingBox__13CPhysicsActorFRC6CAABox -/* 8015A1A4 00157104 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8015A1A8 00157108 7F C3 F3 78 */ mr r3, r30 -/* 8015A1AC 0015710C 7F E4 FB 78 */ mr r4, r31 -/* 8015A1B0 00157110 B0 0D A4 00 */ sth r0, lbl_805A8FC0@sda21(r13) -/* 8015A1B4 00157114 4B FF FC 15 */ bl AddDoorRepulsors__9CParasiteFR13CStateManager -/* 8015A1B8 00157118 80 1E 05 D0 */ lwz r0, 0x5d0(r30) -/* 8015A1BC 0015711C 2C 00 00 03 */ cmpwi r0, 3 -/* 8015A1C0 00157120 40 82 02 50 */ bne lbl_8015A410 -/* 8015A1C4 00157124 7F C3 F3 78 */ mr r3, r30 -/* 8015A1C8 00157128 7F E4 FB 78 */ mr r4, r31 -/* 8015A1CC 0015712C 4B FF CB 9D */ bl SetupIceZoomerCollision__9CParasiteFR13CStateManager -/* 8015A1D0 00157130 7F C3 F3 78 */ mr r3, r30 -/* 8015A1D4 00157134 7F E4 FB 78 */ mr r4, r31 -/* 8015A1D8 00157138 81 9E 00 00 */ lwz r12, 0(r30) -/* 8015A1DC 0015713C 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8015A1E0 00157140 7D 89 03 A6 */ mtctr r12 -/* 8015A1E4 00157144 4E 80 04 21 */ bctrl -/* 8015A1E8 00157148 C0 23 00 04 */ lfs f1, 4(r3) -/* 8015A1EC 0015714C 7F C3 F3 78 */ mr r3, r30 -/* 8015A1F0 00157150 C0 1E 07 14 */ lfs f0, 0x714(r30) -/* 8015A1F4 00157154 7F E4 FB 78 */ mr r4, r31 -/* 8015A1F8 00157158 38 BE 06 4C */ addi r5, r30, 0x64c -/* 8015A1FC 0015715C 38 C1 00 28 */ addi r6, r1, 0x28 -/* 8015A200 00157160 D0 01 00 28 */ stfs f0, 0x28(r1) -/* 8015A204 00157164 D0 21 00 2C */ stfs f1, 0x2c(r1) -/* 8015A208 00157168 4B FF CA 7D */ bl SetupIceZoomerVulnerability__9CParasiteFR13CStateManagerRC20CDamageVulnerabilityRC11CHealthInfo -/* 8015A20C 0015716C 48 00 02 04 */ b lbl_8015A410 -lbl_8015A210: -/* 8015A210 00157170 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8015A214 00157174 38 7F 0F 54 */ addi r3, r31, 0xf54 -/* 8015A218 00157178 38 81 00 0C */ addi r4, r1, 0xc -/* 8015A21C 0015717C B0 01 00 0C */ sth r0, 0xc(r1) -/* 8015A220 00157180 4B FC BB 69 */ bl "remove__Q24rstl43list<9TUniqueId,Q24rstl17rmemory_allocator>FRC9TUniqueId" -/* 8015A224 00157184 80 1E 05 D0 */ lwz r0, 0x5d0(r30) -/* 8015A228 00157188 2C 00 00 03 */ cmpwi r0, 3 -/* 8015A22C 0015718C 40 82 01 E4 */ bne lbl_8015A410 -/* 8015A230 00157190 7F C3 F3 78 */ mr r3, r30 -/* 8015A234 00157194 7F E4 FB 78 */ mr r4, r31 -/* 8015A238 00157198 4B FF CB 0D */ bl DestroyActorManager__9CParasiteFR13CStateManager -/* 8015A23C 0015719C 48 00 01 D4 */ b lbl_8015A410 -lbl_8015A240: -/* 8015A240 001571A0 88 1E 07 42 */ lbz r0, 0x742(r30) -/* 8015A244 001571A4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 8015A248 001571A8 41 82 01 C8 */ beq lbl_8015A410 -/* 8015A24C 001571AC 7F C3 F3 78 */ mr r3, r30 -/* 8015A250 001571B0 4B FF F2 D1 */ bl UpdateJumpVelocity__9CParasiteFv -/* 8015A254 001571B4 88 1E 07 42 */ lbz r0, 0x742(r30) -/* 8015A258 001571B8 38 60 00 00 */ li r3, 0 -/* 8015A25C 001571BC 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 8015A260 001571C0 98 1E 07 42 */ stb r0, 0x742(r30) -/* 8015A264 001571C4 48 00 01 AC */ b lbl_8015A410 -lbl_8015A268: -/* 8015A268 001571C8 88 1E 05 D6 */ lbz r0, 0x5d6(r30) -/* 8015A26C 001571CC 38 60 00 00 */ li r3, 0 -/* 8015A270 001571D0 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 8015A274 001571D4 98 1E 05 D6 */ stb r0, 0x5d6(r30) -/* 8015A278 001571D8 80 1E 05 D0 */ lwz r0, 0x5d0(r30) -/* 8015A27C 001571DC 2C 00 00 00 */ cmpwi r0, 0 -/* 8015A280 001571E0 40 82 01 90 */ bne lbl_8015A410 -/* 8015A284 001571E4 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 8015A288 001571E8 38 80 00 02 */ li r4, 2 -/* 8015A28C 001571EC 4B FE 07 4D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -/* 8015A290 001571F0 48 00 01 80 */ b lbl_8015A410 -lbl_8015A294: -/* 8015A294 001571F4 80 1E 05 D0 */ lwz r0, 0x5d0(r30) -/* 8015A298 001571F8 2C 00 00 01 */ cmpwi r0, 1 -/* 8015A29C 001571FC 40 82 01 74 */ bne lbl_8015A410 -/* 8015A2A0 00157200 A0 1B 00 00 */ lhz r0, 0(r27) -/* 8015A2A4 00157204 7F E3 FB 78 */ mr r3, r31 -/* 8015A2A8 00157208 38 81 00 08 */ addi r4, r1, 8 -/* 8015A2AC 0015720C B0 01 00 08 */ sth r0, 8(r1) -/* 8015A2B0 00157210 4B EF 22 F5 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8015A2B4 00157214 7C 64 1B 78 */ mr r4, r3 -/* 8015A2B8 00157218 38 61 00 20 */ addi r3, r1, 0x20 -/* 8015A2BC 0015721C 4B F5 59 D5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8015A2C0 00157220 80 A3 00 04 */ lwz r5, 4(r3) -/* 8015A2C4 00157224 28 05 00 00 */ cmplwi r5, 0 -/* 8015A2C8 00157228 41 82 01 48 */ beq lbl_8015A410 -/* 8015A2CC 0015722C C0 E5 00 50 */ lfs f7, 0x50(r5) -/* 8015A2D0 00157230 7F C4 F3 78 */ mr r4, r30 -/* 8015A2D4 00157234 C0 1E 00 50 */ lfs f0, 0x50(r30) -/* 8015A2D8 00157238 38 61 00 98 */ addi r3, r1, 0x98 -/* 8015A2DC 0015723C C0 85 00 40 */ lfs f4, 0x40(r5) -/* 8015A2E0 00157240 EC C7 00 28 */ fsubs f6, f7, f0 -/* 8015A2E4 00157244 C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 8015A2E8 00157248 C1 05 00 60 */ lfs f8, 0x60(r5) -/* 8015A2EC 0015724C EC 64 00 28 */ fsubs f3, f4, f0 -/* 8015A2F0 00157250 C0 3E 00 60 */ lfs f1, 0x60(r30) -/* 8015A2F4 00157254 EC 06 01 B2 */ fmuls f0, f6, f6 -/* 8015A2F8 00157258 EC A8 08 28 */ fsubs f5, f8, f1 -/* 8015A2FC 0015725C 81 9E 00 00 */ lwz r12, 0(r30) -/* 8015A300 00157260 EC 23 00 F2 */ fmuls f1, f3, f3 -/* 8015A304 00157264 81 8C 00 40 */ lwz r12, 0x40(r12) -/* 8015A308 00157268 EC 45 01 72 */ fmuls f2, f5, f5 -/* 8015A30C 0015726C D0 81 00 30 */ stfs f4, 0x30(r1) -/* 8015A310 00157270 EC 01 00 2A */ fadds f0, f1, f0 -/* 8015A314 00157274 D0 E1 00 34 */ stfs f7, 0x34(r1) -/* 8015A318 00157278 EF E2 00 2A */ fadds f31, f2, f0 -/* 8015A31C 0015727C D1 01 00 38 */ stfs f8, 0x38(r1) -/* 8015A320 00157280 D0 61 00 3C */ stfs f3, 0x3c(r1) -/* 8015A324 00157284 D0 C1 00 40 */ stfs f6, 0x40(r1) -/* 8015A328 00157288 D0 A1 00 44 */ stfs f5, 0x44(r1) -/* 8015A32C 0015728C 7D 89 03 A6 */ mtctr r12 -/* 8015A330 00157290 4E 80 04 21 */ bctrl -/* 8015A334 00157294 7F C4 F3 78 */ mr r4, r30 -/* 8015A338 00157298 38 61 00 7C */ addi r3, r1, 0x7c -/* 8015A33C 0015729C 81 9E 00 00 */ lwz r12, 0(r30) -/* 8015A340 001572A0 81 8C 00 40 */ lwz r12, 0x40(r12) -/* 8015A344 001572A4 7D 89 03 A6 */ mtctr r12 -/* 8015A348 001572A8 4E 80 04 21 */ bctrl -/* 8015A34C 001572AC 7F C4 F3 78 */ mr r4, r30 -/* 8015A350 001572B0 38 61 00 60 */ addi r3, r1, 0x60 -/* 8015A354 001572B4 81 9E 00 00 */ lwz r12, 0(r30) -/* 8015A358 001572B8 81 8C 00 40 */ lwz r12, 0x40(r12) -/* 8015A35C 001572BC 7D 89 03 A6 */ mtctr r12 -/* 8015A360 001572C0 4E 80 04 21 */ bctrl -/* 8015A364 001572C4 C0 61 00 70 */ lfs f3, 0x70(r1) -/* 8015A368 001572C8 C0 41 00 64 */ lfs f2, 0x64(r1) -/* 8015A36C 001572CC C0 21 00 90 */ lfs f1, 0x90(r1) -/* 8015A370 001572D0 C0 01 00 84 */ lfs f0, 0x84(r1) -/* 8015A374 001572D4 EC 43 10 28 */ fsubs f2, f3, f2 -/* 8015A378 001572D8 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8015A37C 001572DC D0 41 00 14 */ stfs f2, 0x14(r1) -/* 8015A380 001572E0 FC 00 10 40 */ fcmpo cr0, f0, f2 -/* 8015A384 001572E4 D0 01 00 18 */ stfs f0, 0x18(r1) -/* 8015A388 001572E8 40 80 00 0C */ bge lbl_8015A394 -/* 8015A38C 001572EC 38 61 00 14 */ addi r3, r1, 0x14 -/* 8015A390 001572F0 48 00 00 08 */ b lbl_8015A398 -lbl_8015A394: -/* 8015A394 001572F4 38 61 00 18 */ addi r3, r1, 0x18 -lbl_8015A398: -/* 8015A398 001572F8 C0 21 00 A4 */ lfs f1, 0xa4(r1) -/* 8015A39C 001572FC C0 01 00 98 */ lfs f0, 0x98(r1) -/* 8015A3A0 00157300 EC 21 00 28 */ fsubs f1, f1, f0 -/* 8015A3A4 00157304 D0 21 00 1C */ stfs f1, 0x1c(r1) -/* 8015A3A8 00157308 C0 03 00 00 */ lfs f0, 0(r3) -/* 8015A3AC 0015730C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015A3B0 00157310 40 80 00 08 */ bge lbl_8015A3B8 -/* 8015A3B4 00157314 48 00 00 08 */ b lbl_8015A3BC -lbl_8015A3B8: -/* 8015A3B8 00157318 38 61 00 1C */ addi r3, r1, 0x1c -lbl_8015A3BC: -/* 8015A3BC 0015731C C0 23 00 00 */ lfs f1, 0(r3) -/* 8015A3C0 00157320 38 00 00 00 */ li r0, 0 -/* 8015A3C4 00157324 C0 02 9E 60 */ lfs f0, lbl_805ABB80@sda21(r2) -/* 8015A3C8 00157328 98 01 00 78 */ stb r0, 0x78(r1) -/* 8015A3CC 0015732C EC 01 00 7A */ fmadds f0, f1, f1, f0 -/* 8015A3D0 00157330 98 01 00 94 */ stb r0, 0x94(r1) -/* 8015A3D4 00157334 EC 00 00 32 */ fmuls f0, f0, f0 -/* 8015A3D8 00157338 98 01 00 B0 */ stb r0, 0xb0(r1) -/* 8015A3DC 0015733C FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 8015A3E0 00157340 40 80 00 30 */ bge lbl_8015A410 -/* 8015A3E4 00157344 88 1E 07 43 */ lbz r0, 0x743(r30) -/* 8015A3E8 00157348 38 60 00 01 */ li r3, 1 -/* 8015A3EC 0015734C 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 8015A3F0 00157350 98 1E 07 43 */ stb r0, 0x743(r30) -/* 8015A3F4 00157354 48 00 00 1C */ b lbl_8015A410 -lbl_8015A3F8: -/* 8015A3F8 00157358 80 7E 06 20 */ lwz r3, 0x620(r30) -/* 8015A3FC 0015735C 28 03 00 00 */ cmplwi r3, 0 -/* 8015A400 00157360 41 82 00 10 */ beq lbl_8015A410 -/* 8015A404 00157364 7F E4 FB 78 */ mr r4, r31 -/* 8015A408 00157368 38 A0 00 00 */ li r5, 0 -/* 8015A40C 0015736C 48 04 CA B5 */ bl SetMovable__22CCollisionActorManagerFb -lbl_8015A410: -/* 8015A410 00157370 E3 E1 00 F8 */ psq_l f31, 248(r1), 0, qr0 -/* 8015A414 00157374 CB E1 00 F0 */ lfd f31, 0xf0(r1) -/* 8015A418 00157378 BB 61 00 DC */ lmw r27, 0xdc(r1) -/* 8015A41C 0015737C 80 01 01 04 */ lwz r0, 0x104(r1) -/* 8015A420 00157380 7C 08 03 A6 */ mtlr r0 -/* 8015A424 00157384 38 21 01 00 */ addi r1, r1, 0x100 -/* 8015A428 00157388 4E 80 00 20 */ blr - -.global Accept__9CParasiteFR8IVisitor -Accept__9CParasiteFR8IVisitor: -/* 8015A42C 0015738C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015A430 00157390 7C 08 02 A6 */ mflr r0 -/* 8015A434 00157394 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015A438 00157398 7C 60 1B 78 */ mr r0, r3 -/* 8015A43C 0015739C 7C 83 23 78 */ mr r3, r4 -/* 8015A440 001573A0 81 84 00 00 */ lwz r12, 0(r4) -/* 8015A444 001573A4 7C 04 03 78 */ mr r4, r0 -/* 8015A448 001573A8 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 8015A44C 001573AC 7D 89 03 A6 */ mtctr r12 -/* 8015A450 001573B0 4E 80 04 21 */ bctrl -/* 8015A454 001573B4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015A458 001573B8 7C 08 03 A6 */ mtlr r0 -/* 8015A45C 001573BC 38 21 00 10 */ addi r1, r1, 0x10 -/* 8015A460 001573C0 4E 80 00 20 */ blr - -.global "__ct__9CParasiteF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfo9EBodyTypefffffffffffffffffbUiRC10Something1RC10Something2UsUsUsUiUifRC16CActorParameters" -"__ct__9CParasiteF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfo9EBodyTypefffffffffffffffffbUiRC10Something1RC10Something2UsUsUsUiUifRC16CActorParameters": -/* 8015A464 001573C4 94 21 FE 70 */ stwu r1, -0x190(r1) -/* 8015A468 001573C8 7C 08 02 A6 */ mflr r0 -/* 8015A46C 001573CC 90 01 01 94 */ stw r0, 0x194(r1) -/* 8015A470 001573D0 DB E1 01 80 */ stfd f31, 0x180(r1) -/* 8015A474 001573D4 F3 E1 01 88 */ psq_st f31, 392(r1), 0, qr0 -/* 8015A478 001573D8 DB C1 01 70 */ stfd f30, 0x170(r1) -/* 8015A47C 001573DC F3 C1 01 78 */ psq_st f30, 376(r1), 0, qr0 -/* 8015A480 001573E0 DB A1 01 60 */ stfd f29, 0x160(r1) -/* 8015A484 001573E4 F3 A1 01 68 */ psq_st f29, 360(r1), 0, qr0 -/* 8015A488 001573E8 DB 81 01 50 */ stfd f28, 0x150(r1) -/* 8015A48C 001573EC F3 81 01 58 */ psq_st f28, 344(r1), 0, qr0 -/* 8015A490 001573F0 DB 61 01 40 */ stfd f27, 0x140(r1) -/* 8015A494 001573F4 F3 61 01 48 */ psq_st f27, 328(r1), 0, qr0 -/* 8015A498 001573F8 DB 41 01 30 */ stfd f26, 0x130(r1) -/* 8015A49C 001573FC F3 41 01 38 */ psq_st f26, 312(r1), 0, qr0 -/* 8015A4A0 00157400 DB 21 01 20 */ stfd f25, 0x120(r1) -/* 8015A4A4 00157404 F3 21 01 28 */ psq_st f25, 296(r1), 0, qr0 -/* 8015A4A8 00157408 DB 01 01 10 */ stfd f24, 0x110(r1) -/* 8015A4AC 0015740C F3 01 01 18 */ psq_st f24, 280(r1), 0, qr0 -/* 8015A4B0 00157410 DA E1 01 00 */ stfd f23, 0x100(r1) -/* 8015A4B4 00157414 F2 E1 01 08 */ psq_st f23, 264(r1), 0, qr0 -/* 8015A4B8 00157418 DA C1 00 F0 */ stfd f22, 0xf0(r1) -/* 8015A4BC 0015741C F2 C1 00 F8 */ psq_st f22, 248(r1), 0, qr0 -/* 8015A4C0 00157420 DA A1 00 E0 */ stfd f21, 0xe0(r1) -/* 8015A4C4 00157424 F2 A1 00 E8 */ psq_st f21, 232(r1), 0, qr0 -/* 8015A4C8 00157428 DA 81 00 D0 */ stfd f20, 0xd0(r1) -/* 8015A4CC 0015742C F2 81 00 D8 */ psq_st f20, 216(r1), 0, qr0 -/* 8015A4D0 00157430 DA 61 00 C0 */ stfd f19, 0xc0(r1) -/* 8015A4D4 00157434 F2 61 00 C8 */ psq_st f19, 200(r1), 0, qr0 -/* 8015A4D8 00157438 DA 41 00 B0 */ stfd f18, 0xb0(r1) -/* 8015A4DC 0015743C F2 41 00 B8 */ psq_st f18, 184(r1), 0, qr0 -/* 8015A4E0 00157440 DA 21 00 A0 */ stfd f17, 0xa0(r1) -/* 8015A4E4 00157444 F2 21 00 A8 */ psq_st f17, 168(r1), 0, qr0 -/* 8015A4E8 00157448 BE E1 00 7C */ stmw r23, 0x7c(r1) -/* 8015A4EC 0015744C A0 04 00 00 */ lhz r0, 0(r4) -/* 8015A4F0 00157450 7D 57 53 78 */ mr r23, r10 -/* 8015A4F4 00157454 7C D8 33 78 */ mr r24, r6 -/* 8015A4F8 00157458 FD 20 10 90 */ fmr f9, f2 -/* 8015A4FC 0015745C B0 01 00 28 */ sth r0, 0x28(r1) -/* 8015A500 00157460 FE 40 18 90 */ fmr f18, f3 -/* 8015A504 00157464 FE 20 08 90 */ fmr f17, f1 -/* 8015A508 00157468 7C EC 3B 78 */ mr r12, r7 -/* 8015A50C 0015746C 92 E1 00 08 */ stw r23, 8(r1) -/* 8015A510 00157470 38 80 00 01 */ li r4, 1 -/* 8015A514 00157474 7D 0B 43 78 */ mr r11, r8 -/* 8015A518 00157478 90 81 00 0C */ stw r4, 0xc(r1) -/* 8015A51C 0015747C 38 00 00 00 */ li r0, 0 -/* 8015A520 00157480 7F 07 C3 78 */ mr r7, r24 -/* 8015A524 00157484 80 C1 01 98 */ lwz r6, 0x198(r1) -/* 8015A528 00157488 7D 2A 4B 78 */ mr r10, r9 -/* 8015A52C 0015748C 90 01 00 10 */ stw r0, 0x10(r1) -/* 8015A530 00157490 FE 60 28 90 */ fmr f19, f5 -/* 8015A534 00157494 80 81 01 EC */ lwz r4, 0x1ec(r1) -/* 8015A538 00157498 FE 80 30 90 */ fmr f20, f6 -/* 8015A53C 0015749C 90 C1 00 14 */ stw r6, 0x14(r1) -/* 8015A540 001574A0 FE A0 40 90 */ fmr f21, f8 -/* 8015A544 001574A4 80 C1 01 C8 */ lwz r6, 0x1c8(r1) -/* 8015A548 001574A8 90 81 00 18 */ stw r4, 0x18(r1) -/* 8015A54C 001574AC FC 20 38 90 */ fmr f1, f7 -/* 8015A550 001574B0 C0 01 01 BC */ lfs f0, 0x1bc(r1) -/* 8015A554 001574B4 FC 40 20 90 */ fmr f2, f4 -/* 8015A558 001574B8 90 01 00 1C */ stw r0, 0x1c(r1) -/* 8015A55C 001574BC FC 60 48 90 */ fmr f3, f9 -/* 8015A560 001574C0 88 81 01 C7 */ lbz r4, 0x1c7(r1) -/* 8015A564 001574C4 90 C1 00 20 */ stw r6, 0x20(r1) -/* 8015A568 001574C8 FC 80 00 90 */ fmr f4, f0 -/* 8015A56C 001574CC C2 C1 01 9C */ lfs f22, 0x19c(r1) -/* 8015A570 001574D0 7C A6 2B 78 */ mr r6, r5 -/* 8015A574 001574D4 90 81 00 24 */ stw r4, 0x24(r1) -/* 8015A578 001574D8 7C 7F 1B 78 */ mr r31, r3 -/* 8015A57C 001574DC C2 E1 01 A0 */ lfs f23, 0x1a0(r1) -/* 8015A580 001574E0 C3 01 01 A4 */ lfs f24, 0x1a4(r1) -/* 8015A584 001574E4 7D 88 63 78 */ mr r8, r12 -/* 8015A588 001574E8 C3 21 01 A8 */ lfs f25, 0x1a8(r1) -/* 8015A58C 001574EC 7D 69 5B 78 */ mr r9, r11 -/* 8015A590 001574F0 C3 41 01 AC */ lfs f26, 0x1ac(r1) -/* 8015A594 001574F4 38 A1 00 28 */ addi r5, r1, 0x28 -/* 8015A598 001574F8 C3 61 01 B0 */ lfs f27, 0x1b0(r1) -/* 8015A59C 001574FC 38 80 00 18 */ li r4, 0x18 -/* 8015A5A0 00157500 C3 81 01 B4 */ lfs f28, 0x1b4(r1) -/* 8015A5A4 00157504 C3 A1 01 B8 */ lfs f29, 0x1b8(r1) -/* 8015A5A8 00157508 C3 C1 01 C0 */ lfs f30, 0x1c0(r1) -/* 8015A5AC 0015750C 83 01 01 CC */ lwz r24, 0x1cc(r1) -/* 8015A5B0 00157510 83 21 01 D0 */ lwz r25, 0x1d0(r1) -/* 8015A5B4 00157514 A3 41 01 D6 */ lhz r26, 0x1d6(r1) -/* 8015A5B8 00157518 A3 C1 01 DA */ lhz r30, 0x1da(r1) -/* 8015A5BC 0015751C A3 A1 01 DE */ lhz r29, 0x1de(r1) -/* 8015A5C0 00157520 83 61 01 E0 */ lwz r27, 0x1e0(r1) -/* 8015A5C4 00157524 83 81 01 E4 */ lwz r28, 0x1e4(r1) -/* 8015A5C8 00157528 C3 E1 01 E8 */ lfs f31, 0x1e8(r1) -/* 8015A5CC 0015752C 48 10 EC 95 */ bl "__ct__11CWallWalkerFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUiUi" -/* 8015A5D0 00157530 3C 80 80 3E */ lis r4, lbl_803E3004@ha -/* 8015A5D4 00157534 C0 42 9E 50 */ lfs f2, lbl_805ABB70@sda21(r2) -/* 8015A5D8 00157538 38 04 30 04 */ addi r0, r4, lbl_803E3004@l -/* 8015A5DC 0015753C C0 02 9E 60 */ lfs f0, lbl_805ABB80@sda21(r2) -/* 8015A5E0 00157540 90 1F 00 00 */ stw r0, 0(r31) -/* 8015A5E4 00157544 38 80 00 00 */ li r4, 0 -/* 8015A5E8 00157548 38 00 FF FF */ li r0, -1 -/* 8015A5EC 0015754C 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8015A5F0 00157550 90 9F 05 DC */ stw r4, 0x5dc(r31) -/* 8015A5F4 00157554 90 9F 05 E0 */ stw r4, 0x5e0(r31) -/* 8015A5F8 00157558 90 9F 05 E4 */ stw r4, 0x5e4(r31) -/* 8015A5FC 0015755C 90 1F 05 E8 */ stw r0, 0x5e8(r31) -/* 8015A600 00157560 D0 5F 05 EC */ stfs f2, 0x5ec(r31) -/* 8015A604 00157564 D0 5F 05 F0 */ stfs f2, 0x5f0(r31) -/* 8015A608 00157568 D0 5F 05 F4 */ stfs f2, 0x5f4(r31) -/* 8015A60C 0015756C D0 5F 05 F8 */ stfs f2, 0x5f8(r31) -/* 8015A610 00157570 D0 5F 05 FC */ stfs f2, 0x5fc(r31) -/* 8015A614 00157574 D0 5F 06 00 */ stfs f2, 0x600(r31) -/* 8015A618 00157578 D0 1F 06 04 */ stfs f0, 0x604(r31) -/* 8015A61C 0015757C D0 5F 06 08 */ stfs f2, 0x608(r31) -/* 8015A620 00157580 D0 5F 06 0C */ stfs f2, 0x60c(r31) -/* 8015A624 00157584 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) -/* 8015A628 00157588 D0 1F 06 14 */ stfs f0, 0x614(r31) -/* 8015A62C 0015758C C0 03 00 04 */ lfs f0, 4(r3) -/* 8015A630 00157590 D0 1F 06 18 */ stfs f0, 0x618(r31) -/* 8015A634 00157594 C0 03 00 08 */ lfs f0, 8(r3) -/* 8015A638 00157598 D0 1F 06 1C */ stfs f0, 0x61c(r31) -/* 8015A63C 0015759C 90 9F 06 20 */ stw r4, 0x620(r31) -/* 8015A640 001575A0 90 9F 06 24 */ stw r4, 0x624(r31) -/* 8015A644 001575A4 D0 5F 06 28 */ stfs f2, 0x628(r31) -/* 8015A648 001575A8 D0 5F 06 2C */ stfs f2, 0x62c(r31) -/* 8015A64C 001575AC D0 5F 06 30 */ stfs f2, 0x630(r31) -/* 8015A650 001575B0 D0 5F 06 34 */ stfs f2, 0x634(r31) -/* 8015A654 001575B4 D0 5F 06 38 */ stfs f2, 0x638(r31) -/* 8015A658 001575B8 D0 5F 06 3C */ stfs f2, 0x63c(r31) -/* 8015A65C 001575BC D0 5F 06 40 */ stfs f2, 0x640(r31) -/* 8015A660 001575C0 D0 5F 06 44 */ stfs f2, 0x644(r31) -/* 8015A664 001575C4 D0 5F 06 48 */ stfs f2, 0x648(r31) -/* 8015A668 001575C8 80 78 00 00 */ lwz r3, 0(r24) -/* 8015A66C 001575CC 80 18 00 04 */ lwz r0, 4(r24) -/* 8015A670 001575D0 90 7F 06 4C */ stw r3, 0x64c(r31) -/* 8015A674 001575D4 90 1F 06 50 */ stw r0, 0x650(r31) -/* 8015A678 001575D8 80 78 00 08 */ lwz r3, 8(r24) -/* 8015A67C 001575DC 80 18 00 0C */ lwz r0, 0xc(r24) -/* 8015A680 001575E0 90 7F 06 54 */ stw r3, 0x654(r31) -/* 8015A684 001575E4 90 1F 06 58 */ stw r0, 0x658(r31) -/* 8015A688 001575E8 80 78 00 10 */ lwz r3, 0x10(r24) -/* 8015A68C 001575EC 80 18 00 14 */ lwz r0, 0x14(r24) -/* 8015A690 001575F0 90 7F 06 5C */ stw r3, 0x65c(r31) -/* 8015A694 001575F4 90 1F 06 60 */ stw r0, 0x660(r31) -/* 8015A698 001575F8 80 78 00 18 */ lwz r3, 0x18(r24) -/* 8015A69C 001575FC 80 18 00 1C */ lwz r0, 0x1c(r24) -/* 8015A6A0 00157600 90 7F 06 64 */ stw r3, 0x664(r31) -/* 8015A6A4 00157604 90 1F 06 68 */ stw r0, 0x668(r31) -/* 8015A6A8 00157608 80 78 00 20 */ lwz r3, 0x20(r24) -/* 8015A6AC 0015760C 80 18 00 24 */ lwz r0, 0x24(r24) -/* 8015A6B0 00157610 90 7F 06 6C */ stw r3, 0x66c(r31) -/* 8015A6B4 00157614 90 1F 06 70 */ stw r0, 0x670(r31) -/* 8015A6B8 00157618 80 78 00 28 */ lwz r3, 0x28(r24) -/* 8015A6BC 0015761C 80 18 00 2C */ lwz r0, 0x2c(r24) -/* 8015A6C0 00157620 90 7F 06 74 */ stw r3, 0x674(r31) -/* 8015A6C4 00157624 90 1F 06 78 */ stw r0, 0x678(r31) -/* 8015A6C8 00157628 80 78 00 30 */ lwz r3, 0x30(r24) -/* 8015A6CC 0015762C 80 18 00 34 */ lwz r0, 0x34(r24) -/* 8015A6D0 00157630 90 7F 06 7C */ stw r3, 0x67c(r31) -/* 8015A6D4 00157634 90 1F 06 80 */ stw r0, 0x680(r31) -/* 8015A6D8 00157638 80 18 00 38 */ lwz r0, 0x38(r24) -/* 8015A6DC 0015763C 90 1F 06 84 */ stw r0, 0x684(r31) -/* 8015A6E0 00157640 80 78 00 3C */ lwz r3, 0x3c(r24) -/* 8015A6E4 00157644 80 18 00 40 */ lwz r0, 0x40(r24) -/* 8015A6E8 00157648 90 7F 06 88 */ stw r3, 0x688(r31) -/* 8015A6EC 0015764C 90 1F 06 8C */ stw r0, 0x68c(r31) -/* 8015A6F0 00157650 80 78 00 44 */ lwz r3, 0x44(r24) -/* 8015A6F4 00157654 80 18 00 48 */ lwz r0, 0x48(r24) -/* 8015A6F8 00157658 90 7F 06 90 */ stw r3, 0x690(r31) -/* 8015A6FC 0015765C 90 1F 06 94 */ stw r0, 0x694(r31) -/* 8015A700 00157660 80 98 00 4C */ lwz r4, 0x4c(r24) -/* 8015A704 00157664 7F 43 D3 78 */ mr r3, r26 -/* 8015A708 00157668 80 18 00 50 */ lwz r0, 0x50(r24) -/* 8015A70C 0015766C C0 02 9E 64 */ lfs f0, lbl_805ABB84@sda21(r2) -/* 8015A710 00157670 90 9F 06 98 */ stw r4, 0x698(r31) -/* 8015A714 00157674 90 1F 06 9C */ stw r0, 0x69c(r31) -/* 8015A718 00157678 80 98 00 54 */ lwz r4, 0x54(r24) -/* 8015A71C 0015767C 80 18 00 58 */ lwz r0, 0x58(r24) -/* 8015A720 00157680 90 9F 06 A0 */ stw r4, 0x6a0(r31) -/* 8015A724 00157684 90 1F 06 A4 */ stw r0, 0x6a4(r31) -/* 8015A728 00157688 80 18 00 5C */ lwz r0, 0x5c(r24) -/* 8015A72C 0015768C 90 1F 06 A8 */ stw r0, 0x6a8(r31) -/* 8015A730 00157690 80 18 00 60 */ lwz r0, 0x60(r24) -/* 8015A734 00157694 90 1F 06 AC */ stw r0, 0x6ac(r31) -/* 8015A738 00157698 80 18 00 64 */ lwz r0, 0x64(r24) -/* 8015A73C 0015769C 90 1F 06 B0 */ stw r0, 0x6b0(r31) -/* 8015A740 001576A0 80 19 00 00 */ lwz r0, 0(r25) -/* 8015A744 001576A4 90 1F 06 B4 */ stw r0, 0x6b4(r31) -/* 8015A748 001576A8 88 19 00 04 */ lbz r0, 4(r25) -/* 8015A74C 001576AC 98 1F 06 B8 */ stb r0, 0x6b8(r31) -/* 8015A750 001576B0 C0 39 00 08 */ lfs f1, 8(r25) -/* 8015A754 001576B4 D0 3F 06 BC */ stfs f1, 0x6bc(r31) -/* 8015A758 001576B8 C0 39 00 0C */ lfs f1, 0xc(r25) -/* 8015A75C 001576BC D0 3F 06 C0 */ stfs f1, 0x6c0(r31) -/* 8015A760 001576C0 C0 39 00 10 */ lfs f1, 0x10(r25) -/* 8015A764 001576C4 D0 3F 06 C4 */ stfs f1, 0x6c4(r31) -/* 8015A768 001576C8 C0 39 00 14 */ lfs f1, 0x14(r25) -/* 8015A76C 001576CC D0 3F 06 C8 */ stfs f1, 0x6c8(r31) -/* 8015A770 001576D0 88 19 00 18 */ lbz r0, 0x18(r25) -/* 8015A774 001576D4 98 1F 06 CC */ stb r0, 0x6cc(r31) -/* 8015A778 001576D8 D2 3F 06 D0 */ stfs f17, 0x6d0(r31) -/* 8015A77C 001576DC D2 5F 06 D4 */ stfs f18, 0x6d4(r31) -/* 8015A780 001576E0 D2 7F 06 DC */ stfs f19, 0x6dc(r31) -/* 8015A784 001576E4 D2 9F 06 E0 */ stfs f20, 0x6e0(r31) -/* 8015A788 001576E8 D2 BF 06 E4 */ stfs f21, 0x6e4(r31) -/* 8015A78C 001576EC D2 DF 06 E8 */ stfs f22, 0x6e8(r31) -/* 8015A790 001576F0 D2 FF 06 EC */ stfs f23, 0x6ec(r31) -/* 8015A794 001576F4 D3 1F 06 F0 */ stfs f24, 0x6f0(r31) -/* 8015A798 001576F8 D3 3F 06 F4 */ stfs f25, 0x6f4(r31) -/* 8015A79C 001576FC D3 5F 06 F8 */ stfs f26, 0x6f8(r31) -/* 8015A7A0 00157700 D3 7F 06 FC */ stfs f27, 0x6fc(r31) -/* 8015A7A4 00157704 D3 9F 07 00 */ stfs f28, 0x700(r31) -/* 8015A7A8 00157708 D3 BF 07 04 */ stfs f29, 0x704(r31) -/* 8015A7AC 0015770C C0 37 00 C8 */ lfs f1, 0xc8(r23) -/* 8015A7B0 00157710 EC 01 00 32 */ fmuls f0, f1, f0 -/* 8015A7B4 00157714 D0 1F 07 08 */ stfs f0, 0x708(r31) -/* 8015A7B8 00157718 D3 DF 07 10 */ stfs f30, 0x710(r31) -/* 8015A7BC 0015771C D3 FF 07 14 */ stfs f31, 0x714(r31) -/* 8015A7C0 00157720 D0 5F 07 18 */ stfs f2, 0x718(r31) -/* 8015A7C4 00157724 D0 5F 07 1C */ stfs f2, 0x71c(r31) -/* 8015A7C8 00157728 D0 5F 07 20 */ stfs f2, 0x720(r31) -/* 8015A7CC 0015772C D0 5F 07 24 */ stfs f2, 0x724(r31) -/* 8015A7D0 00157730 D0 5F 07 28 */ stfs f2, 0x728(r31) -/* 8015A7D4 00157734 D0 5F 07 2C */ stfs f2, 0x72c(r31) -/* 8015A7D8 00157738 D0 5F 07 30 */ stfs f2, 0x730(r31) -/* 8015A7DC 0015773C D0 5F 07 34 */ stfs f2, 0x734(r31) -/* 8015A7E0 00157740 D0 5F 07 38 */ stfs f2, 0x738(r31) -/* 8015A7E4 00157744 48 18 E1 CD */ bl TranslateSFXID__11CSfxManagerFUs -/* 8015A7E8 00157748 B0 7F 07 3C */ sth r3, 0x73c(r31) -/* 8015A7EC 0015774C 7F C3 F3 78 */ mr r3, r30 -/* 8015A7F0 00157750 48 18 E1 C1 */ bl TranslateSFXID__11CSfxManagerFUs -/* 8015A7F4 00157754 B0 7F 07 3E */ sth r3, 0x73e(r31) -/* 8015A7F8 00157758 7F A3 EB 78 */ mr r3, r29 -/* 8015A7FC 0015775C 48 18 E1 B5 */ bl TranslateSFXID__11CSfxManagerFUs -/* 8015A800 00157760 B0 7F 07 40 */ sth r3, 0x740(r31) -/* 8015A804 00157764 38 C0 00 00 */ li r6, 0 -/* 8015A808 00157768 38 A0 00 01 */ li r5, 1 -/* 8015A80C 0015776C 7F E3 FB 78 */ mr r3, r31 -/* 8015A810 00157770 88 1F 07 42 */ lbz r0, 0x742(r31) -/* 8015A814 00157774 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18 -/* 8015A818 00157778 38 80 00 00 */ li r4, 0 -/* 8015A81C 0015777C 98 1F 07 42 */ stb r0, 0x742(r31) -/* 8015A820 00157780 88 1F 07 42 */ lbz r0, 0x742(r31) -/* 8015A824 00157784 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 -/* 8015A828 00157788 98 1F 07 42 */ stb r0, 0x742(r31) -/* 8015A82C 0015778C 88 1F 07 42 */ lbz r0, 0x742(r31) -/* 8015A830 00157790 50 C0 2E B4 */ rlwimi r0, r6, 5, 0x1a, 0x1a -/* 8015A834 00157794 98 1F 07 42 */ stb r0, 0x742(r31) -/* 8015A838 00157798 88 1F 07 42 */ lbz r0, 0x742(r31) -/* 8015A83C 0015779C 50 C0 26 F6 */ rlwimi r0, r6, 4, 0x1b, 0x1b -/* 8015A840 001577A0 98 1F 07 42 */ stb r0, 0x742(r31) -/* 8015A844 001577A4 88 1F 07 42 */ lbz r0, 0x742(r31) -/* 8015A848 001577A8 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c -/* 8015A84C 001577AC 98 1F 07 42 */ stb r0, 0x742(r31) -/* 8015A850 001577B0 88 1F 07 42 */ lbz r0, 0x742(r31) -/* 8015A854 001577B4 50 C0 17 7A */ rlwimi r0, r6, 2, 0x1d, 0x1d -/* 8015A858 001577B8 98 1F 07 42 */ stb r0, 0x742(r31) -/* 8015A85C 001577BC 88 1F 07 42 */ lbz r0, 0x742(r31) -/* 8015A860 001577C0 50 A0 0F BC */ rlwimi r0, r5, 1, 0x1e, 0x1e -/* 8015A864 001577C4 98 1F 07 42 */ stb r0, 0x742(r31) -/* 8015A868 001577C8 88 1F 07 42 */ lbz r0, 0x742(r31) -/* 8015A86C 001577CC 50 C0 07 FE */ rlwimi r0, r6, 0, 0x1f, 0x1f -/* 8015A870 001577D0 98 1F 07 42 */ stb r0, 0x742(r31) -/* 8015A874 001577D4 88 1F 07 43 */ lbz r0, 0x743(r31) -/* 8015A878 001577D8 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18 -/* 8015A87C 001577DC 98 1F 07 43 */ stb r0, 0x743(r31) -/* 8015A880 001577E0 88 1F 07 43 */ lbz r0, 0x743(r31) -/* 8015A884 001577E4 50 C0 2E B4 */ rlwimi r0, r6, 5, 0x1a, 0x1a -/* 8015A888 001577E8 98 1F 07 43 */ stb r0, 0x743(r31) -/* 8015A88C 001577EC 88 1F 07 43 */ lbz r0, 0x743(r31) -/* 8015A890 001577F0 50 C0 26 F6 */ rlwimi r0, r6, 4, 0x1b, 0x1b -/* 8015A894 001577F4 98 1F 07 43 */ stb r0, 0x743(r31) -/* 8015A898 001577F8 4B EF 9B 21 */ bl SetCallTouch__6CActorFb -/* 8015A89C 001577FC 80 1F 05 D0 */ lwz r0, 0x5d0(r31) -/* 8015A8A0 00157800 2C 00 00 02 */ cmpwi r0, 2 -/* 8015A8A4 00157804 41 82 00 20 */ beq lbl_8015A8C4 -/* 8015A8A8 00157808 40 80 00 10 */ bge lbl_8015A8B8 -/* 8015A8AC 0015780C 2C 00 00 01 */ cmpwi r0, 1 -/* 8015A8B0 00157810 40 80 00 24 */ bge lbl_8015A8D4 -/* 8015A8B4 00157814 48 00 02 28 */ b lbl_8015AADC -lbl_8015A8B8: -/* 8015A8B8 00157818 2C 00 00 04 */ cmpwi r0, 4 -/* 8015A8BC 0015781C 40 80 02 20 */ bge lbl_8015AADC -/* 8015A8C0 00157820 48 00 00 24 */ b lbl_8015A8E4 -lbl_8015A8C4: -/* 8015A8C4 00157824 88 1F 04 E1 */ lbz r0, 0x4e1(r31) -/* 8015A8C8 00157828 38 60 00 00 */ li r3, 0 -/* 8015A8CC 0015782C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 8015A8D0 00157830 98 1F 04 E1 */ stb r0, 0x4e1(r31) -lbl_8015A8D4: -/* 8015A8D4 00157834 38 7F 04 60 */ addi r3, r31, 0x460 -/* 8015A8D8 00157838 38 80 00 00 */ li r4, 0 -/* 8015A8DC 0015783C 48 0D 94 89 */ bl SetAutoResetImpulse__20CKnockBackControllerFb -/* 8015A8E0 00157840 48 00 01 FC */ b lbl_8015AADC -lbl_8015A8E4: -/* 8015A8E4 00157844 3C 60 80 3D */ lis r3, lbl_803D0330@ha -/* 8015A8E8 00157848 3A E0 00 00 */ li r23, 0 -/* 8015A8EC 0015784C 38 63 03 30 */ addi r3, r3, lbl_803D0330@l -/* 8015A8F0 00157850 3B 00 00 00 */ li r24, 0 -/* 8015A8F4 00157854 38 83 00 09 */ addi r4, r3, 9 -/* 8015A8F8 00157858 3B 20 00 00 */ li r25, 0 -/* 8015A8FC 0015785C 3B 40 00 00 */ li r26, 0 -/* 8015A900 00157860 38 60 00 0C */ li r3, 0xc -/* 8015A904 00157864 38 A0 00 00 */ li r5, 0 -/* 8015A908 00157868 48 1B AF 65 */ bl __nw__FUlPCcPCc -/* 8015A90C 0015786C 7C 7E 1B 79 */ or. r30, r3, r3 -/* 8015A910 00157870 41 82 01 54 */ beq lbl_8015AA64 -/* 8015A914 00157874 3C 80 80 3D */ lis r4, lbl_803D0330@ha -/* 8015A918 00157878 38 60 00 3C */ li r3, 0x3c -/* 8015A91C 0015787C 38 84 03 30 */ addi r4, r4, lbl_803D0330@l -/* 8015A920 00157880 38 A0 00 00 */ li r5, 0 -/* 8015A924 00157884 38 84 00 09 */ addi r4, r4, 9 -/* 8015A928 00157888 48 1B AF 45 */ bl __nw__FUlPCcPCc -/* 8015A92C 0015788C 7C 7D 1B 79 */ or. r29, r3, r3 -/* 8015A930 00157890 41 82 00 D4 */ beq lbl_8015AA04 -/* 8015A934 00157894 3C 60 43 4D */ lis r3, 0x434D444C@ha -/* 8015A938 00157898 93 61 00 40 */ stw r27, 0x40(r1) -/* 8015A93C 0015789C 38 03 44 4C */ addi r0, r3, 0x434D444C@l -/* 8015A940 001578A0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) -/* 8015A944 001578A4 90 01 00 3C */ stw r0, 0x3c(r1) -/* 8015A948 001578A8 38 61 00 34 */ addi r3, r1, 0x34 -/* 8015A94C 001578AC 38 A1 00 3C */ addi r5, r1, 0x3c -/* 8015A950 001578B0 81 84 00 00 */ lwz r12, 0(r4) -/* 8015A954 001578B4 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 8015A958 001578B8 7D 89 03 A6 */ mtctr r12 -/* 8015A95C 001578BC 4E 80 04 21 */ bctrl -/* 8015A960 001578C0 3A E1 00 54 */ addi r23, r1, 0x54 -/* 8015A964 001578C4 38 81 00 34 */ addi r4, r1, 0x34 -/* 8015A968 001578C8 7E E3 BB 78 */ mr r3, r23 -/* 8015A96C 001578CC 3B 20 00 01 */ li r25, 1 -/* 8015A970 001578D0 48 1E 65 39 */ bl __ct__6CTokenFRC6CToken -/* 8015A974 001578D4 7E E3 BB 78 */ mr r3, r23 -/* 8015A978 001578D8 48 1E 64 95 */ bl GetObj__6CTokenFv -/* 8015A97C 001578DC 80 A3 00 04 */ lwz r5, 4(r3) -/* 8015A980 001578E0 3C 60 43 53 */ lis r3, 0x43534B52@ha -/* 8015A984 001578E4 38 03 4B 52 */ addi r0, r3, 0x43534B52@l -/* 8015A988 001578E8 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) -/* 8015A98C 001578EC 90 A1 00 5C */ stw r5, 0x5c(r1) -/* 8015A990 001578F0 38 61 00 44 */ addi r3, r1, 0x44 -/* 8015A994 001578F4 38 A1 00 4C */ addi r5, r1, 0x4c -/* 8015A998 001578F8 3B 40 00 01 */ li r26, 1 -/* 8015A99C 001578FC 90 01 00 4C */ stw r0, 0x4c(r1) -/* 8015A9A0 00157900 93 81 00 50 */ stw r28, 0x50(r1) -/* 8015A9A4 00157904 81 84 00 00 */ lwz r12, 0(r4) -/* 8015A9A8 00157908 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 8015A9AC 0015790C 7D 89 03 A6 */ mtctr r12 -/* 8015A9B0 00157910 4E 80 04 21 */ bctrl -/* 8015A9B4 00157914 3B 01 00 60 */ addi r24, r1, 0x60 -/* 8015A9B8 00157918 38 81 00 44 */ addi r4, r1, 0x44 -/* 8015A9BC 0015791C 7F 03 C3 78 */ mr r3, r24 -/* 8015A9C0 00157920 3A E0 00 01 */ li r23, 1 -/* 8015A9C4 00157924 48 1E 64 E5 */ bl __ct__6CTokenFRC6CToken -/* 8015A9C8 00157928 7F 03 C3 78 */ mr r3, r24 -/* 8015A9CC 0015792C 48 1E 64 41 */ bl GetObj__6CTokenFv -/* 8015A9D0 00157930 80 03 00 04 */ lwz r0, 4(r3) -/* 8015A9D4 00157934 7F 05 C3 78 */ mr r5, r24 -/* 8015A9D8 00157938 7F A3 EB 78 */ mr r3, r29 -/* 8015A9DC 0015793C 38 81 00 54 */ addi r4, r1, 0x54 -/* 8015A9E0 00157940 90 01 00 68 */ stw r0, 0x68(r1) -/* 8015A9E4 00157944 3B 00 00 01 */ li r24, 1 -/* 8015A9E8 00157948 38 E0 00 01 */ li r7, 1 -/* 8015A9EC 0015794C 80 DF 00 64 */ lwz r6, 0x64(r31) -/* 8015A9F0 00157950 80 C6 00 10 */ lwz r6, 0x10(r6) -/* 8015A9F4 00157954 80 C6 00 E0 */ lwz r6, 0xe0(r6) -/* 8015A9F8 00157958 38 C6 00 1C */ addi r6, r6, 0x1c -/* 8015A9FC 0015795C 48 1F 8A 3D */ bl "__ct__13CSkinnedModelFRC21TLockedToken<6CModel>RC26TLockedToken<10CSkinRules>RC31TLockedToken<15CCharLayoutInfo>Q213CSkinnedModel14EDataOwnership" -/* 8015AA00 00157960 7C 7D 1B 78 */ mr r29, r3 -lbl_8015AA04: -/* 8015AA04 00157964 7F DB F3 78 */ mr r27, r30 -/* 8015AA08 00157968 7F A4 EB 78 */ mr r4, r29 -/* 8015AA0C 0015796C 38 61 00 2C */ addi r3, r1, 0x2c -/* 8015AA10 00157970 48 00 01 A9 */ bl sub_8015abb8 -/* 8015AA14 00157974 38 00 00 00 */ li r0, 0 -/* 8015AA18 00157978 80 81 00 30 */ lwz r4, 0x30(r1) -/* 8015AA1C 0015797C 98 01 00 2C */ stb r0, 0x2c(r1) -/* 8015AA20 00157980 7F C3 F3 78 */ mr r3, r30 -/* 8015AA24 00157984 48 1E 64 E1 */ bl __ct__6CTokenFP4IObj -/* 8015AA28 00157988 88 01 00 2C */ lbz r0, 0x2c(r1) -/* 8015AA2C 0015798C 28 00 00 00 */ cmplwi r0, 0 -/* 8015AA30 00157990 41 82 00 24 */ beq lbl_8015AA54 -/* 8015AA34 00157994 80 61 00 30 */ lwz r3, 0x30(r1) -/* 8015AA38 00157998 28 03 00 00 */ cmplwi r3, 0 -/* 8015AA3C 0015799C 41 82 00 18 */ beq lbl_8015AA54 -/* 8015AA40 001579A0 81 83 00 00 */ lwz r12, 0(r3) -/* 8015AA44 001579A4 38 80 00 01 */ li r4, 1 -/* 8015AA48 001579A8 81 8C 00 08 */ lwz r12, 8(r12) -/* 8015AA4C 001579AC 7D 89 03 A6 */ mtctr r12 -/* 8015AA50 001579B0 4E 80 04 21 */ bctrl -lbl_8015AA54: -/* 8015AA54 001579B4 93 BB 00 08 */ stw r29, 8(r27) -/* 8015AA58 001579B8 7F 63 DB 78 */ mr r3, r27 -/* 8015AA5C 001579BC 48 1E 63 29 */ bl Lock__6CTokenFv -/* 8015AA60 001579C0 7F 7E DB 78 */ mr r30, r27 -lbl_8015AA64: -/* 8015AA64 001579C4 83 7F 06 24 */ lwz r27, 0x624(r31) -/* 8015AA68 001579C8 28 1B 00 00 */ cmplwi r27, 0 -/* 8015AA6C 001579CC 41 82 00 1C */ beq lbl_8015AA88 -/* 8015AA70 001579D0 41 82 00 10 */ beq lbl_8015AA80 -/* 8015AA74 001579D4 7F 63 DB 78 */ mr r3, r27 -/* 8015AA78 001579D8 38 80 00 00 */ li r4, 0 -/* 8015AA7C 001579DC 48 1E 63 C5 */ bl __dt__6CTokenFv -lbl_8015AA80: -/* 8015AA80 001579E0 7F 63 DB 78 */ mr r3, r27 -/* 8015AA84 001579E4 48 1B AE AD */ bl Free__7CMemoryFPCv -lbl_8015AA88: -/* 8015AA88 001579E8 7F 40 07 75 */ extsb. r0, r26 -/* 8015AA8C 001579EC 93 DF 06 24 */ stw r30, 0x624(r31) -/* 8015AA90 001579F0 41 82 00 10 */ beq lbl_8015AAA0 -/* 8015AA94 001579F4 38 61 00 54 */ addi r3, r1, 0x54 -/* 8015AA98 001579F8 38 80 00 00 */ li r4, 0 -/* 8015AA9C 001579FC 48 1E 63 A5 */ bl __dt__6CTokenFv -lbl_8015AAA0: -/* 8015AAA0 00157A00 7F 20 07 75 */ extsb. r0, r25 -/* 8015AAA4 00157A04 41 82 00 10 */ beq lbl_8015AAB4 -/* 8015AAA8 00157A08 38 61 00 34 */ addi r3, r1, 0x34 -/* 8015AAAC 00157A0C 38 80 FF FF */ li r4, -1 -/* 8015AAB0 00157A10 48 1E 63 91 */ bl __dt__6CTokenFv -lbl_8015AAB4: -/* 8015AAB4 00157A14 7F 00 07 75 */ extsb. r0, r24 -/* 8015AAB8 00157A18 41 82 00 10 */ beq lbl_8015AAC8 -/* 8015AABC 00157A1C 38 61 00 60 */ addi r3, r1, 0x60 -/* 8015AAC0 00157A20 38 80 00 00 */ li r4, 0 -/* 8015AAC4 00157A24 48 1E 63 7D */ bl __dt__6CTokenFv -lbl_8015AAC8: -/* 8015AAC8 00157A28 7E E0 07 75 */ extsb. r0, r23 -/* 8015AACC 00157A2C 41 82 00 10 */ beq lbl_8015AADC -/* 8015AAD0 00157A30 38 61 00 44 */ addi r3, r1, 0x44 -/* 8015AAD4 00157A34 38 80 FF FF */ li r4, -1 -/* 8015AAD8 00157A38 48 1E 63 69 */ bl __dt__6CTokenFv -lbl_8015AADC: -/* 8015AADC 00157A3C 80 1F 05 D0 */ lwz r0, 0x5d0(r31) -/* 8015AAE0 00157A40 2C 00 00 01 */ cmpwi r0, 1 -/* 8015AAE4 00157A44 40 82 00 44 */ bne lbl_8015AB28 -/* 8015AAE8 00157A48 88 1F 04 E1 */ lbz r0, 0x4e1(r31) -/* 8015AAEC 00157A4C 38 60 00 00 */ li r3, 0 -/* 8015AAF0 00157A50 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 8015AAF4 00157A54 98 1F 04 E1 */ stb r0, 0x4e1(r31) -/* 8015AAF8 00157A58 88 1F 04 E1 */ lbz r0, 0x4e1(r31) -/* 8015AAFC 00157A5C 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 8015AB00 00157A60 98 1F 04 E1 */ stb r0, 0x4e1(r31) -/* 8015AB04 00157A64 88 1F 04 E1 */ lbz r0, 0x4e1(r31) -/* 8015AB08 00157A68 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 8015AB0C 00157A6C 98 1F 04 E1 */ stb r0, 0x4e1(r31) -/* 8015AB10 00157A70 88 1F 04 E1 */ lbz r0, 0x4e1(r31) -/* 8015AB14 00157A74 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d -/* 8015AB18 00157A78 98 1F 04 E1 */ stb r0, 0x4e1(r31) -/* 8015AB1C 00157A7C 88 1F 04 E2 */ lbz r0, 0x4e2(r31) -/* 8015AB20 00157A80 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 8015AB24 00157A84 98 1F 04 E2 */ stb r0, 0x4e2(r31) -lbl_8015AB28: -/* 8015AB28 00157A88 7F E3 FB 78 */ mr r3, r31 -/* 8015AB2C 00157A8C E3 E1 01 88 */ psq_l f31, 392(r1), 0, qr0 -/* 8015AB30 00157A90 CB E1 01 80 */ lfd f31, 0x180(r1) -/* 8015AB34 00157A94 E3 C1 01 78 */ psq_l f30, 376(r1), 0, qr0 -/* 8015AB38 00157A98 CB C1 01 70 */ lfd f30, 0x170(r1) -/* 8015AB3C 00157A9C E3 A1 01 68 */ psq_l f29, 360(r1), 0, qr0 -/* 8015AB40 00157AA0 CB A1 01 60 */ lfd f29, 0x160(r1) -/* 8015AB44 00157AA4 E3 81 01 58 */ psq_l f28, 344(r1), 0, qr0 -/* 8015AB48 00157AA8 CB 81 01 50 */ lfd f28, 0x150(r1) -/* 8015AB4C 00157AAC E3 61 01 48 */ psq_l f27, 328(r1), 0, qr0 -/* 8015AB50 00157AB0 CB 61 01 40 */ lfd f27, 0x140(r1) -/* 8015AB54 00157AB4 E3 41 01 38 */ psq_l f26, 312(r1), 0, qr0 -/* 8015AB58 00157AB8 CB 41 01 30 */ lfd f26, 0x130(r1) -/* 8015AB5C 00157ABC E3 21 01 28 */ psq_l f25, 296(r1), 0, qr0 -/* 8015AB60 00157AC0 CB 21 01 20 */ lfd f25, 0x120(r1) -/* 8015AB64 00157AC4 E3 01 01 18 */ psq_l f24, 280(r1), 0, qr0 -/* 8015AB68 00157AC8 CB 01 01 10 */ lfd f24, 0x110(r1) -/* 8015AB6C 00157ACC E2 E1 01 08 */ psq_l f23, 264(r1), 0, qr0 -/* 8015AB70 00157AD0 CA E1 01 00 */ lfd f23, 0x100(r1) -/* 8015AB74 00157AD4 E2 C1 00 F8 */ psq_l f22, 248(r1), 0, qr0 -/* 8015AB78 00157AD8 CA C1 00 F0 */ lfd f22, 0xf0(r1) -/* 8015AB7C 00157ADC E2 A1 00 E8 */ psq_l f21, 232(r1), 0, qr0 -/* 8015AB80 00157AE0 CA A1 00 E0 */ lfd f21, 0xe0(r1) -/* 8015AB84 00157AE4 E2 81 00 D8 */ psq_l f20, 216(r1), 0, qr0 -/* 8015AB88 00157AE8 CA 81 00 D0 */ lfd f20, 0xd0(r1) -/* 8015AB8C 00157AEC E2 61 00 C8 */ psq_l f19, 200(r1), 0, qr0 -/* 8015AB90 00157AF0 CA 61 00 C0 */ lfd f19, 0xc0(r1) -/* 8015AB94 00157AF4 E2 41 00 B8 */ psq_l f18, 184(r1), 0, qr0 -/* 8015AB98 00157AF8 CA 41 00 B0 */ lfd f18, 0xb0(r1) -/* 8015AB9C 00157AFC E2 21 00 A8 */ psq_l f17, 168(r1), 0, qr0 -/* 8015ABA0 00157B00 CA 21 00 A0 */ lfd f17, 0xa0(r1) -/* 8015ABA4 00157B04 BA E1 00 7C */ lmw r23, 0x7c(r1) -/* 8015ABA8 00157B08 80 01 01 94 */ lwz r0, 0x194(r1) -/* 8015ABAC 00157B0C 7C 08 03 A6 */ mtlr r0 -/* 8015ABB0 00157B10 38 21 01 90 */ addi r1, r1, 0x190 -/* 8015ABB4 00157B14 4E 80 00 20 */ blr - -.global sub_8015abb8 -sub_8015abb8: -/* 8015ABB8 00157B18 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015ABBC 00157B1C 7C 08 02 A6 */ mflr r0 -/* 8015ABC0 00157B20 3C A0 80 3D */ lis r5, lbl_803D0330@ha -/* 8015ABC4 00157B24 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015ABC8 00157B28 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8015ABCC 00157B2C 7C 9F 23 78 */ mr r31, r4 -/* 8015ABD0 00157B30 93 C1 00 08 */ stw r30, 8(r1) -/* 8015ABD4 00157B34 7C 7E 1B 78 */ mr r30, r3 -/* 8015ABD8 00157B38 38 65 03 30 */ addi r3, r5, lbl_803D0330@l -/* 8015ABDC 00157B3C 38 A0 00 00 */ li r5, 0 -/* 8015ABE0 00157B40 38 83 00 09 */ addi r4, r3, 9 -/* 8015ABE4 00157B44 38 60 00 08 */ li r3, 8 -/* 8015ABE8 00157B48 48 1B AC 85 */ bl __nw__FUlPCcPCc -/* 8015ABEC 00157B4C 28 03 00 00 */ cmplwi r3, 0 -/* 8015ABF0 00157B50 41 82 00 2C */ beq lbl_8015AC1C -/* 8015ABF4 00157B54 3C 80 80 3E */ lis r4, lbl_803D8D6C@ha -/* 8015ABF8 00157B58 3C A0 80 3E */ lis r5, lbl_803D8D78@ha -/* 8015ABFC 00157B5C 38 04 8D 6C */ addi r0, r4, lbl_803D8D6C@l -/* 8015AC00 00157B60 3C 80 80 3E */ lis r4, lbl_803D9BC8@ha -/* 8015AC04 00157B64 90 03 00 00 */ stw r0, 0(r3) -/* 8015AC08 00157B68 38 A5 8D 78 */ addi r5, r5, lbl_803D8D78@l -/* 8015AC0C 00157B6C 38 04 9B C8 */ addi r0, r4, lbl_803D9BC8@l -/* 8015AC10 00157B70 90 A3 00 00 */ stw r5, 0(r3) -/* 8015AC14 00157B74 93 E3 00 04 */ stw r31, 4(r3) -/* 8015AC18 00157B78 90 03 00 00 */ stw r0, 0(r3) -lbl_8015AC1C: -/* 8015AC1C 00157B7C 7C 03 00 D0 */ neg r0, r3 -/* 8015AC20 00157B80 7C 00 1B 78 */ or r0, r0, r3 -/* 8015AC24 00157B84 54 00 0F FE */ srwi r0, r0, 0x1f -/* 8015AC28 00157B88 98 1E 00 00 */ stb r0, 0(r30) -/* 8015AC2C 00157B8C 90 7E 00 04 */ stw r3, 4(r30) -/* 8015AC30 00157B90 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8015AC34 00157B94 83 C1 00 08 */ lwz r30, 8(r1) -/* 8015AC38 00157B98 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015AC3C 00157B9C 7C 08 03 A6 */ mtlr r0 -/* 8015AC40 00157BA0 38 21 00 10 */ addi r1, r1, 0x10 -/* 8015AC44 00157BA4 4E 80 00 20 */ blr - -.global "reserve__Q24rstl57vectorFi" -"reserve__Q24rstl57vectorFi": -/* 8015AC48 00157BA8 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8015AC4C 00157BAC 7C 08 02 A6 */ mflr r0 -/* 8015AC50 00157BB0 90 01 00 34 */ stw r0, 0x34(r1) -/* 8015AC54 00157BB4 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8015AC58 00157BB8 7C 9F 23 78 */ mr r31, r4 -/* 8015AC5C 00157BBC 93 C1 00 28 */ stw r30, 0x28(r1) -/* 8015AC60 00157BC0 7C 7E 1B 78 */ mr r30, r3 -/* 8015AC64 00157BC4 93 A1 00 24 */ stw r29, 0x24(r1) -/* 8015AC68 00157BC8 80 03 00 08 */ lwz r0, 8(r3) -/* 8015AC6C 00157BCC 7C 1F 00 00 */ cmpw r31, r0 -/* 8015AC70 00157BD0 40 81 00 C4 */ ble lbl_8015AD34 -/* 8015AC74 00157BD4 57 E3 20 37 */ rlwinm. r3, r31, 4, 0, 0x1b -/* 8015AC78 00157BD8 40 82 00 0C */ bne lbl_8015AC84 -/* 8015AC7C 00157BDC 3B A0 00 00 */ li r29, 0 -/* 8015AC80 00157BE0 48 00 00 1C */ b lbl_8015AC9C -lbl_8015AC84: -/* 8015AC84 00157BE4 3C 80 80 3D */ lis r4, lbl_803D0330@ha -/* 8015AC88 00157BE8 38 A0 00 00 */ li r5, 0 -/* 8015AC8C 00157BEC 38 84 03 30 */ addi r4, r4, lbl_803D0330@l -/* 8015AC90 00157BF0 38 84 00 09 */ addi r4, r4, 9 -/* 8015AC94 00157BF4 48 1B AB 85 */ bl __nwa__FUlPCcPCc -/* 8015AC98 00157BF8 7C 7D 1B 78 */ mr r29, r3 -lbl_8015AC9C: -/* 8015AC9C 00157BFC 80 1E 00 04 */ lwz r0, 4(r30) -/* 8015ACA0 00157C00 7F A3 EB 78 */ mr r3, r29 -/* 8015ACA4 00157C04 80 9E 00 0C */ lwz r4, 0xc(r30) -/* 8015ACA8 00157C08 54 00 20 36 */ slwi r0, r0, 4 -/* 8015ACAC 00157C0C 7C 04 02 14 */ add r0, r4, r0 -/* 8015ACB0 00157C10 90 81 00 10 */ stw r4, 0x10(r1) -/* 8015ACB4 00157C14 90 01 00 08 */ stw r0, 8(r1) -/* 8015ACB8 00157C18 90 01 00 0C */ stw r0, 0xc(r1) -/* 8015ACBC 00157C1C 90 81 00 14 */ stw r4, 0x14(r1) -/* 8015ACC0 00157C20 48 00 00 34 */ b lbl_8015ACF4 -lbl_8015ACC4: -/* 8015ACC4 00157C24 28 03 00 00 */ cmplwi r3, 0 -/* 8015ACC8 00157C28 41 82 00 24 */ beq lbl_8015ACEC -/* 8015ACCC 00157C2C C0 04 00 00 */ lfs f0, 0(r4) -/* 8015ACD0 00157C30 D0 03 00 00 */ stfs f0, 0(r3) -/* 8015ACD4 00157C34 C0 04 00 04 */ lfs f0, 4(r4) -/* 8015ACD8 00157C38 D0 03 00 04 */ stfs f0, 4(r3) -/* 8015ACDC 00157C3C C0 04 00 08 */ lfs f0, 8(r4) -/* 8015ACE0 00157C40 D0 03 00 08 */ stfs f0, 8(r3) -/* 8015ACE4 00157C44 C0 04 00 0C */ lfs f0, 0xc(r4) -/* 8015ACE8 00157C48 D0 03 00 0C */ stfs f0, 0xc(r3) -lbl_8015ACEC: -/* 8015ACEC 00157C4C 38 63 00 10 */ addi r3, r3, 0x10 -/* 8015ACF0 00157C50 38 84 00 10 */ addi r4, r4, 0x10 -lbl_8015ACF4: -/* 8015ACF4 00157C54 7C 04 00 40 */ cmplw r4, r0 -/* 8015ACF8 00157C58 40 82 FF CC */ bne lbl_8015ACC4 -/* 8015ACFC 00157C5C 80 1E 00 04 */ lwz r0, 4(r30) -/* 8015AD00 00157C60 80 7E 00 0C */ lwz r3, 0xc(r30) -/* 8015AD04 00157C64 54 00 20 36 */ slwi r0, r0, 4 -/* 8015AD08 00157C68 7C 64 1B 78 */ mr r4, r3 -/* 8015AD0C 00157C6C 7C 03 02 14 */ add r0, r3, r0 -/* 8015AD10 00157C70 48 00 00 08 */ b lbl_8015AD18 -lbl_8015AD14: -/* 8015AD14 00157C74 38 84 00 10 */ addi r4, r4, 0x10 -lbl_8015AD18: -/* 8015AD18 00157C78 7C 04 00 40 */ cmplw r4, r0 -/* 8015AD1C 00157C7C 40 82 FF F8 */ bne lbl_8015AD14 -/* 8015AD20 00157C80 28 03 00 00 */ cmplwi r3, 0 -/* 8015AD24 00157C84 41 82 00 08 */ beq lbl_8015AD2C -/* 8015AD28 00157C88 48 1B AC 09 */ bl Free__7CMemoryFPCv -lbl_8015AD2C: -/* 8015AD2C 00157C8C 93 BE 00 0C */ stw r29, 0xc(r30) -/* 8015AD30 00157C90 93 FE 00 08 */ stw r31, 8(r30) -lbl_8015AD34: -/* 8015AD34 00157C94 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8015AD38 00157C98 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8015AD3C 00157C9C 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 8015AD40 00157CA0 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 8015AD44 00157CA4 7C 08 03 A6 */ mtlr r0 -/* 8015AD48 00157CA8 38 21 00 30 */ addi r1, r1, 0x30 -/* 8015AD4C 00157CAC 4E 80 00 20 */ blr - -.global __sinit_CParasite_cpp -__sinit_CParasite_cpp: -/* 8015AD50 00157CB0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015AD54 00157CB4 7C 08 02 A6 */ mflr r0 -/* 8015AD58 00157CB8 C0 22 9E 9C */ lfs f1, lbl_805ABBBC@sda21(r2) -/* 8015AD5C 00157CBC C0 02 96 A0 */ lfs f0, lbl_805AB3C0@sda21(r2) -/* 8015AD60 00157CC0 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015AD64 00157CC4 EC 21 00 24 */ fdivs f1, f1, f0 -/* 8015AD68 00157CC8 48 1B A7 99 */ bl SqrtF__5CMathFf -/* 8015AD6C 00157CCC C0 02 9E 58 */ lfs f0, lbl_805ABB78@sda21(r2) -/* 8015AD70 00157CD0 C0 42 9E 70 */ lfs f2, lbl_805ABB90@sda21(r2) -/* 8015AD74 00157CD4 EC 60 00 72 */ fmuls f3, f0, f1 -/* 8015AD78 00157CD8 C0 22 9E 9C */ lfs f1, lbl_805ABBBC@sda21(r2) -/* 8015AD7C 00157CDC C0 02 96 A0 */ lfs f0, lbl_805AB3C0@sda21(r2) -/* 8015AD80 00157CE0 EC 42 18 24 */ fdivs f2, f2, f3 -/* 8015AD84 00157CE4 D0 6D A3 F0 */ stfs f3, lbl_805A8FB0@sda21(r13) -/* 8015AD88 00157CE8 EC 21 00 24 */ fdivs f1, f1, f0 -/* 8015AD8C 00157CEC D0 4D A3 F4 */ stfs f2, lbl_805A8FB4@sda21(r13) -/* 8015AD90 00157CF0 48 1B A7 71 */ bl SqrtF__5CMathFf -/* 8015AD94 00157CF4 C0 42 9E 58 */ lfs f2, lbl_805ABB78@sda21(r2) -/* 8015AD98 00157CF8 38 00 00 00 */ li r0, 0 -/* 8015AD9C 00157CFC C0 02 9E 6C */ lfs f0, lbl_805ABB8C@sda21(r2) -/* 8015ADA0 00157D00 EC 22 00 72 */ fmuls f1, f2, f1 -/* 8015ADA4 00157D04 B0 0D A4 00 */ sth r0, lbl_805A8FC0@sda21(r13) -/* 8015ADA8 00157D08 EC 00 08 24 */ fdivs f0, f0, f1 -/* 8015ADAC 00157D0C D0 2D A3 F8 */ stfs f1, lbl_805A8FB8@sda21(r13) -/* 8015ADB0 00157D10 D0 0D A3 FC */ stfs f0, lbl_805A8FBC@sda21(r13) -/* 8015ADB4 00157D14 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015ADB8 00157D18 7C 08 03 A6 */ mtlr r0 -/* 8015ADBC 00157D1C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8015ADC0 00157D20 4E 80 00 20 */ blr - -.global Draw__20CSamusFaceReflectionCFRC13CStateManager -Draw__20CSamusFaceReflectionCFRC13CStateManager: -/* 8015ADC4 00157D24 94 21 FD D0 */ stwu r1, -0x230(r1) -/* 8015ADC8 00157D28 7C 08 02 A6 */ mflr r0 -/* 8015ADCC 00157D2C 90 01 02 34 */ stw r0, 0x234(r1) -/* 8015ADD0 00157D30 DB E1 02 20 */ stfd f31, 0x220(r1) -/* 8015ADD4 00157D34 F3 E1 02 28 */ psq_st f31, 552(r1), 0, qr0 -/* 8015ADD8 00157D38 DB C1 02 10 */ stfd f30, 0x210(r1) -/* 8015ADDC 00157D3C F3 C1 02 18 */ psq_st f30, 536(r1), 0, qr0 -/* 8015ADE0 00157D40 DB A1 02 00 */ stfd f29, 0x200(r1) -/* 8015ADE4 00157D44 F3 A1 02 08 */ psq_st f29, 520(r1), 0, qr0 -/* 8015ADE8 00157D48 DB 81 01 F0 */ stfd f28, 0x1f0(r1) -/* 8015ADEC 00157D4C F3 81 01 F8 */ psq_st f28, 504(r1), 0, qr0 -/* 8015ADF0 00157D50 DB 61 01 E0 */ stfd f27, 0x1e0(r1) -/* 8015ADF4 00157D54 F3 61 01 E8 */ psq_st f27, 488(r1), 0, qr0 -/* 8015ADF8 00157D58 DB 41 01 D0 */ stfd f26, 0x1d0(r1) -/* 8015ADFC 00157D5C F3 41 01 D8 */ psq_st f26, 472(r1), 0, qr0 -/* 8015AE00 00157D60 DB 21 01 C0 */ stfd f25, 0x1c0(r1) -/* 8015AE04 00157D64 F3 21 01 C8 */ psq_st f25, 456(r1), 0, qr0 -/* 8015AE08 00157D68 DB 01 01 B0 */ stfd f24, 0x1b0(r1) -/* 8015AE0C 00157D6C F3 01 01 B8 */ psq_st f24, 440(r1), 0, qr0 -/* 8015AE10 00157D70 DA E1 01 A0 */ stfd f23, 0x1a0(r1) -/* 8015AE14 00157D74 F2 E1 01 A8 */ psq_st f23, 424(r1), 0, qr0 -/* 8015AE18 00157D78 DA C1 01 90 */ stfd f22, 0x190(r1) -/* 8015AE1C 00157D7C F2 C1 01 98 */ psq_st f22, 408(r1), 0, qr0 -/* 8015AE20 00157D80 DA A1 01 80 */ stfd f21, 0x180(r1) -/* 8015AE24 00157D84 F2 A1 01 88 */ psq_st f21, 392(r1), 0, qr0 -/* 8015AE28 00157D88 DA 81 01 70 */ stfd f20, 0x170(r1) -/* 8015AE2C 00157D8C F2 81 01 78 */ psq_st f20, 376(r1), 0, qr0 -/* 8015AE30 00157D90 DA 61 01 60 */ stfd f19, 0x160(r1) -/* 8015AE34 00157D94 F2 61 01 68 */ psq_st f19, 360(r1), 0, qr0 -/* 8015AE38 00157D98 93 E1 01 5C */ stw r31, 0x15c(r1) -/* 8015AE3C 00157D9C 93 C1 01 58 */ stw r30, 0x158(r1) -/* 8015AE40 00157DA0 93 A1 01 54 */ stw r29, 0x154(r1) -/* 8015AE44 00157DA4 7C 7D 1B 78 */ mr r29, r3 -/* 8015AE48 00157DA8 7C 9E 23 78 */ mr r30, r4 -/* 8015AE4C 00157DAC 88 03 00 70 */ lbz r0, 0x70(r3) -/* 8015AE50 00157DB0 28 00 00 00 */ cmplwi r0, 0 -/* 8015AE54 00157DB4 40 82 03 00 */ bne lbl_8015B154 -/* 8015AE58 00157DB8 80 7E 08 70 */ lwz r3, 0x870(r30) -/* 8015AE5C 00157DBC 4B EB 0C BD */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager -/* 8015AE60 00157DC0 7C 64 1B 78 */ mr r4, r3 -/* 8015AE64 00157DC4 38 61 00 08 */ addi r3, r1, 8 -/* 8015AE68 00157DC8 4B F5 36 0D */ bl "__ct__32TCastToPtr<18CFirstPersonCamera>FR7CEntity" -/* 8015AE6C 00157DCC 83 E3 00 04 */ lwz r31, 4(r3) -/* 8015AE70 00157DD0 28 1F 00 00 */ cmplwi r31, 0 -/* 8015AE74 00157DD4 41 82 02 E0 */ beq lbl_8015B154 -/* 8015AE78 00157DD8 C2 FF 00 60 */ lfs f23, 0x60(r31) -/* 8015AE7C 00157DDC 38 9F 00 34 */ addi r4, r31, 0x34 -/* 8015AE80 00157DE0 C3 1F 00 50 */ lfs f24, 0x50(r31) -/* 8015AE84 00157DE4 38 61 00 78 */ addi r3, r1, 0x78 -/* 8015AE88 00157DE8 C3 3F 00 40 */ lfs f25, 0x40(r31) -/* 8015AE8C 00157DEC C3 BF 00 58 */ lfs f29, 0x58(r31) -/* 8015AE90 00157DF0 C2 7F 00 48 */ lfs f19, 0x48(r31) -/* 8015AE94 00157DF4 C2 9F 00 38 */ lfs f20, 0x38(r31) -/* 8015AE98 00157DF8 C3 5F 00 5C */ lfs f26, 0x5c(r31) -/* 8015AE9C 00157DFC C3 7F 00 4C */ lfs f27, 0x4c(r31) -/* 8015AEA0 00157E00 C3 9F 00 3C */ lfs f28, 0x3c(r31) -/* 8015AEA4 00157E04 48 1B 72 85 */ bl FromMatrix__11CQuaternionFRC12CTransform4f -/* 8015AEA8 00157E08 C0 61 00 78 */ lfs f3, 0x78(r1) -/* 8015AEAC 00157E0C C0 41 00 7C */ lfs f2, 0x7c(r1) -/* 8015AEB0 00157E10 C0 21 00 80 */ lfs f1, 0x80(r1) -/* 8015AEB4 00157E14 C0 01 00 84 */ lfs f0, 0x84(r1) -/* 8015AEB8 00157E18 D0 61 00 88 */ stfs f3, 0x88(r1) -/* 8015AEBC 00157E1C 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) -/* 8015AEC0 00157E20 D0 41 00 8C */ stfs f2, 0x8c(r1) -/* 8015AEC4 00157E24 D0 21 00 90 */ stfs f1, 0x90(r1) -/* 8015AEC8 00157E28 D0 01 00 94 */ stfs f0, 0x94(r1) -/* 8015AECC 00157E2C C0 23 01 44 */ lfs f1, 0x144(r3) -/* 8015AED0 00157E30 4B F1 94 81 */ bl FaceReflectionDistanceDebugValueToActualValue__9CTweakGuiFf -/* 8015AED4 00157E34 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) -/* 8015AED8 00157E38 FE A0 08 90 */ fmr f21, f1 -/* 8015AEDC 00157E3C C0 23 01 48 */ lfs f1, 0x148(r3) -/* 8015AEE0 00157E40 4B F1 94 61 */ bl FaceReflectionHeightDebugValueToActualValue__9CTweakGuiFf -/* 8015AEE4 00157E44 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) -/* 8015AEE8 00157E48 FE C0 08 90 */ fmr f22, f1 -/* 8015AEEC 00157E4C C0 23 01 4C */ lfs f1, 0x14c(r3) -/* 8015AEF0 00157E50 4B F1 94 41 */ bl FaceReflectionAspectDebugValueToActualValue__9CTweakGuiFf -/* 8015AEF4 00157E54 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) -/* 8015AEF8 00157E58 FF C0 08 90 */ fmr f30, f1 -/* 8015AEFC 00157E5C C0 23 01 3C */ lfs f1, 0x13c(r3) -/* 8015AF00 00157E60 4B F1 94 21 */ bl FaceReflectionOrthoWidthDebugValueToActualValue__9CTweakGuiFf -/* 8015AF04 00157E64 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) -/* 8015AF08 00157E68 FF E0 08 90 */ fmr f31, f1 -/* 8015AF0C 00157E6C C0 23 01 40 */ lfs f1, 0x140(r3) -/* 8015AF10 00157E70 4B F1 94 01 */ bl FaceReflectionOrthoHeightDebugValueToActualValue__9CTweakGuiFf -/* 8015AF14 00157E74 EC 15 04 F2 */ fmuls f0, f21, f19 -/* 8015AF18 00157E78 38 61 00 68 */ addi r3, r1, 0x68 -/* 8015AF1C 00157E7C EC 75 07 72 */ fmuls f3, f21, f29 -/* 8015AF20 00157E80 38 81 00 88 */ addi r4, r1, 0x88 -/* 8015AF24 00157E84 EC 55 05 32 */ fmuls f2, f21, f20 -/* 8015AF28 00157E88 38 BD 00 50 */ addi r5, r29, 0x50 -/* 8015AF2C 00157E8C EC B6 07 32 */ fmuls f5, f22, f28 -/* 8015AF30 00157E90 D0 01 00 48 */ stfs f0, 0x48(r1) -/* 8015AF34 00157E94 EC F8 00 2A */ fadds f7, f24, f0 -/* 8015AF38 00157E98 EC 96 06 F2 */ fmuls f4, f22, f27 -/* 8015AF3C 00157E9C D0 41 00 44 */ stfs f2, 0x44(r1) -/* 8015AF40 00157EA0 EC 59 10 2A */ fadds f2, f25, f2 -/* 8015AF44 00157EA4 EC 16 06 B2 */ fmuls f0, f22, f26 -/* 8015AF48 00157EA8 D0 A1 00 38 */ stfs f5, 0x38(r1) -/* 8015AF4C 00157EAC EC D7 18 2A */ fadds f6, f23, f3 -/* 8015AF50 00157EB0 ED 07 20 2A */ fadds f8, f7, f4 -/* 8015AF54 00157EB4 D0 81 00 3C */ stfs f4, 0x3c(r1) -/* 8015AF58 00157EB8 FE 60 08 90 */ fmr f19, f1 -/* 8015AF5C 00157EBC EC 86 00 2A */ fadds f4, f6, f0 -/* 8015AF60 00157EC0 D0 01 00 40 */ stfs f0, 0x40(r1) -/* 8015AF64 00157EC4 EC 02 28 2A */ fadds f0, f2, f5 -/* 8015AF68 00157EC8 D0 61 00 4C */ stfs f3, 0x4c(r1) -/* 8015AF6C 00157ECC D0 41 00 50 */ stfs f2, 0x50(r1) -/* 8015AF70 00157ED0 D0 E1 00 54 */ stfs f7, 0x54(r1) -/* 8015AF74 00157ED4 D0 C1 00 58 */ stfs f6, 0x58(r1) -/* 8015AF78 00157ED8 D0 01 00 5C */ stfs f0, 0x5c(r1) -/* 8015AF7C 00157EDC D1 01 00 60 */ stfs f8, 0x60(r1) -/* 8015AF80 00157EE0 D0 81 00 64 */ stfs f4, 0x64(r1) -/* 8015AF84 00157EE4 48 1B 62 1D */ bl __ml__11CQuaternionCFRC11CQuaternion -/* 8015AF88 00157EE8 38 61 00 98 */ addi r3, r1, 0x98 -/* 8015AF8C 00157EEC 38 81 00 68 */ addi r4, r1, 0x68 -/* 8015AF90 00157EF0 48 1B 70 FD */ bl BuildTransform__11CQuaternionCFv -/* 8015AF94 00157EF4 38 61 00 BC */ addi r3, r1, 0xbc -/* 8015AF98 00157EF8 38 81 00 98 */ addi r4, r1, 0x98 -/* 8015AF9C 00157EFC 38 A1 00 5C */ addi r5, r1, 0x5c -/* 8015AFA0 00157F00 48 1B 82 D9 */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f -/* 8015AFA4 00157F04 3C A0 80 47 */ lis r5, lbl_8046C7A0@ha -/* 8015AFA8 00157F08 7C 64 1B 78 */ mr r4, r3 -/* 8015AFAC 00157F0C 38 A5 C7 A0 */ addi r5, r5, lbl_8046C7A0@l -/* 8015AFB0 00157F10 38 61 00 EC */ addi r3, r1, 0xec -/* 8015AFB4 00157F14 48 1B 79 9D */ bl __ml__12CTransform4fCFRC12CTransform4f -/* 8015AFB8 00157F18 38 61 01 1C */ addi r3, r1, 0x11c -/* 8015AFBC 00157F1C 38 81 00 EC */ addi r4, r1, 0xec -/* 8015AFC0 00157F20 48 1B 7B B5 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8015AFC4 00157F24 38 7F 00 34 */ addi r3, r31, 0x34 -/* 8015AFC8 00157F28 48 1B 17 85 */ bl SetViewPointMatrix__9CGraphicsFRC12CTransform4f -/* 8015AFCC 00157F2C FC 00 F8 50 */ fneg f0, f31 -/* 8015AFD0 00157F30 C0 A2 9E A4 */ lfs f5, lbl_805ABBC4@sda21(r2) -/* 8015AFD4 00157F34 FC 60 98 90 */ fmr f3, f19 -/* 8015AFD8 00157F38 C0 C2 9E A8 */ lfs f6, lbl_805ABBC8@sda21(r2) -/* 8015AFDC 00157F3C EC 5E 07 F2 */ fmuls f2, f30, f31 -/* 8015AFE0 00157F40 EC 3E 00 32 */ fmuls f1, f30, f0 -/* 8015AFE4 00157F44 FC 80 98 50 */ fneg f4, f19 -/* 8015AFE8 00157F48 48 1B 15 6D */ bl SetOrtho__9CGraphicsFffffff -/* 8015AFEC 00157F4C 80 1D 00 6C */ lwz r0, 0x6c(r29) -/* 8015AFF0 00157F50 2C 00 00 01 */ cmpwi r0, 1 -/* 8015AFF4 00157F54 40 82 00 0C */ bne lbl_8015B000 -/* 8015AFF8 00157F58 3B E0 00 00 */ li r31, 0 -/* 8015AFFC 00157F5C 48 00 00 08 */ b lbl_8015B004 -lbl_8015B000: -/* 8015B000 00157F60 83 FD 00 4C */ lwz r31, 0x4c(r29) -lbl_8015B004: -/* 8015B004 00157F64 2C 00 00 03 */ cmpwi r0, 3 -/* 8015B008 00157F68 40 82 00 4C */ bne lbl_8015B054 -/* 8015B00C 00157F6C C0 22 9E AC */ lfs f1, lbl_805ABBCC@sda21(r2) -/* 8015B010 00157F70 38 80 00 00 */ li r4, 0 -/* 8015B014 00157F74 38 00 00 03 */ li r0, 3 -/* 8015B018 00157F78 98 81 00 30 */ stb r4, 0x30(r1) -/* 8015B01C 00157F7C FC 40 08 90 */ fmr f2, f1 -/* 8015B020 00157F80 38 61 00 34 */ addi r3, r1, 0x34 -/* 8015B024 00157F84 FC 60 08 90 */ fmr f3, f1 -/* 8015B028 00157F88 98 81 00 31 */ stb r4, 0x31(r1) -/* 8015B02C 00157F8C FC 80 08 90 */ fmr f4, f1 -/* 8015B030 00157F90 B0 01 00 32 */ sth r0, 0x32(r1) -/* 8015B034 00157F94 48 20 83 B9 */ bl __ct__6CColorFffff -/* 8015B038 00157F98 7F A3 EB 78 */ mr r3, r29 -/* 8015B03C 00157F9C 7F C4 F3 78 */ mr r4, r30 -/* 8015B040 00157FA0 7F E6 FB 78 */ mr r6, r31 -/* 8015B044 00157FA4 38 A1 01 1C */ addi r5, r1, 0x11c -/* 8015B048 00157FA8 38 E1 00 30 */ addi r7, r1, 0x30 -/* 8015B04C 00157FAC 4B FB 9D 71 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags -/* 8015B050 00157FB0 48 00 01 04 */ b lbl_8015B154 -lbl_8015B054: -/* 8015B054 00157FB4 80 7E 08 B8 */ lwz r3, 0x8b8(r30) -/* 8015B058 00157FB8 7F C4 F3 78 */ mr r4, r30 -/* 8015B05C 00157FBC 80 63 00 00 */ lwz r3, 0(r3) -/* 8015B060 00157FC0 4B F3 64 F9 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager -/* 8015B064 00157FC4 2C 03 00 00 */ cmpwi r3, 0 -/* 8015B068 00157FC8 40 82 00 18 */ bne lbl_8015B080 -/* 8015B06C 00157FCC 80 7E 08 B8 */ lwz r3, 0x8b8(r30) -/* 8015B070 00157FD0 80 63 00 00 */ lwz r3, 0(r3) -/* 8015B074 00157FD4 4B F3 67 F1 */ bl GetVisorTransitionFactor__12CPlayerStateCFv -/* 8015B078 00157FD8 FE E0 08 90 */ fmr f23, f1 -/* 8015B07C 00157FDC 48 00 00 08 */ b lbl_8015B084 -lbl_8015B080: -/* 8015B080 00157FE0 C2 E2 9E B0 */ lfs f23, lbl_805ABBD0@sda21(r2) -lbl_8015B084: -/* 8015B084 00157FE4 C0 02 9E B0 */ lfs f0, lbl_805ABBD0@sda21(r2) -/* 8015B088 00157FE8 FC 17 00 40 */ fcmpo cr0, f23, f0 -/* 8015B08C 00157FEC 40 81 00 C8 */ ble lbl_8015B154 -/* 8015B090 00157FF0 48 1E EF 25 */ bl Black__6CColorFv -/* 8015B094 00157FF4 39 20 00 03 */ li r9, 3 -/* 8015B098 00157FF8 81 03 00 00 */ lwz r8, 0(r3) -/* 8015B09C 00157FFC 55 20 00 3A */ rlwinm r0, r9, 0, 0, 0x1d -/* 8015B0A0 00158000 39 60 00 07 */ li r11, 7 -/* 8015B0A4 00158004 39 40 00 00 */ li r10, 0 -/* 8015B0A8 00158008 99 61 00 20 */ stb r11, 0x20(r1) -/* 8015B0AC 0015800C 60 00 00 03 */ ori r0, r0, 3 -/* 8015B0B0 00158010 7F A3 EB 78 */ mr r3, r29 -/* 8015B0B4 00158014 99 41 00 21 */ stb r10, 0x21(r1) -/* 8015B0B8 00158018 7F C4 F3 78 */ mr r4, r30 -/* 8015B0BC 0015801C 38 A1 01 1C */ addi r5, r1, 0x11c -/* 8015B0C0 00158020 38 E1 00 28 */ addi r7, r1, 0x28 -/* 8015B0C4 00158024 B1 21 00 22 */ sth r9, 0x22(r1) -/* 8015B0C8 00158028 38 C0 00 00 */ li r6, 0 -/* 8015B0CC 0015802C 91 01 00 24 */ stw r8, 0x24(r1) -/* 8015B0D0 00158030 99 61 00 28 */ stb r11, 0x28(r1) -/* 8015B0D4 00158034 99 41 00 29 */ stb r10, 0x29(r1) -/* 8015B0D8 00158038 B0 01 00 2A */ sth r0, 0x2a(r1) -/* 8015B0DC 0015803C 91 01 00 2C */ stw r8, 0x2c(r1) -/* 8015B0E0 00158040 4B FB 9C DD */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags -/* 8015B0E4 00158044 C0 22 9E AC */ lfs f1, lbl_805ABBCC@sda21(r2) -/* 8015B0E8 00158048 38 A0 00 07 */ li r5, 7 -/* 8015B0EC 0015804C 38 80 00 00 */ li r4, 0 -/* 8015B0F0 00158050 38 00 00 03 */ li r0, 3 -/* 8015B0F4 00158054 FC 40 08 90 */ fmr f2, f1 -/* 8015B0F8 00158058 98 A1 00 10 */ stb r5, 0x10(r1) -/* 8015B0FC 0015805C FC 60 08 90 */ fmr f3, f1 -/* 8015B100 00158060 38 61 00 14 */ addi r3, r1, 0x14 -/* 8015B104 00158064 FC 80 B8 90 */ fmr f4, f23 -/* 8015B108 00158068 98 81 00 11 */ stb r4, 0x11(r1) -/* 8015B10C 0015806C B0 01 00 12 */ sth r0, 0x12(r1) -/* 8015B110 00158070 48 20 82 DD */ bl __ct__6CColorFffff -/* 8015B114 00158074 A0 01 00 12 */ lhz r0, 0x12(r1) -/* 8015B118 00158078 7F A3 EB 78 */ mr r3, r29 -/* 8015B11C 0015807C 88 A1 00 10 */ lbz r5, 0x10(r1) -/* 8015B120 00158080 7F C4 F3 78 */ mr r4, r30 -/* 8015B124 00158084 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d -/* 8015B128 00158088 88 E1 00 11 */ lbz r7, 0x11(r1) -/* 8015B12C 0015808C 60 08 00 01 */ ori r8, r0, 1 -/* 8015B130 00158090 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015B134 00158094 98 A1 00 18 */ stb r5, 0x18(r1) -/* 8015B138 00158098 7F E6 FB 78 */ mr r6, r31 -/* 8015B13C 0015809C 38 A1 01 1C */ addi r5, r1, 0x11c -/* 8015B140 001580A0 98 E1 00 19 */ stb r7, 0x19(r1) -/* 8015B144 001580A4 38 E1 00 18 */ addi r7, r1, 0x18 -/* 8015B148 001580A8 B1 01 00 1A */ sth r8, 0x1a(r1) -/* 8015B14C 001580AC 90 01 00 1C */ stw r0, 0x1c(r1) -/* 8015B150 001580B0 4B FB 9C 6D */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags -lbl_8015B154: -/* 8015B154 001580B4 E3 E1 02 28 */ psq_l f31, 552(r1), 0, qr0 -/* 8015B158 001580B8 CB E1 02 20 */ lfd f31, 0x220(r1) -/* 8015B15C 001580BC E3 C1 02 18 */ psq_l f30, 536(r1), 0, qr0 -/* 8015B160 001580C0 CB C1 02 10 */ lfd f30, 0x210(r1) -/* 8015B164 001580C4 E3 A1 02 08 */ psq_l f29, 520(r1), 0, qr0 -/* 8015B168 001580C8 CB A1 02 00 */ lfd f29, 0x200(r1) -/* 8015B16C 001580CC E3 81 01 F8 */ psq_l f28, 504(r1), 0, qr0 -/* 8015B170 001580D0 CB 81 01 F0 */ lfd f28, 0x1f0(r1) -/* 8015B174 001580D4 E3 61 01 E8 */ psq_l f27, 488(r1), 0, qr0 -/* 8015B178 001580D8 CB 61 01 E0 */ lfd f27, 0x1e0(r1) -/* 8015B17C 001580DC E3 41 01 D8 */ psq_l f26, 472(r1), 0, qr0 -/* 8015B180 001580E0 CB 41 01 D0 */ lfd f26, 0x1d0(r1) -/* 8015B184 001580E4 E3 21 01 C8 */ psq_l f25, 456(r1), 0, qr0 -/* 8015B188 001580E8 CB 21 01 C0 */ lfd f25, 0x1c0(r1) -/* 8015B18C 001580EC E3 01 01 B8 */ psq_l f24, 440(r1), 0, qr0 -/* 8015B190 001580F0 CB 01 01 B0 */ lfd f24, 0x1b0(r1) -/* 8015B194 001580F4 E2 E1 01 A8 */ psq_l f23, 424(r1), 0, qr0 -/* 8015B198 001580F8 CA E1 01 A0 */ lfd f23, 0x1a0(r1) -/* 8015B19C 001580FC E2 C1 01 98 */ psq_l f22, 408(r1), 0, qr0 -/* 8015B1A0 00158100 CA C1 01 90 */ lfd f22, 0x190(r1) -/* 8015B1A4 00158104 E2 A1 01 88 */ psq_l f21, 392(r1), 0, qr0 -/* 8015B1A8 00158108 CA A1 01 80 */ lfd f21, 0x180(r1) -/* 8015B1AC 0015810C E2 81 01 78 */ psq_l f20, 376(r1), 0, qr0 -/* 8015B1B0 00158110 CA 81 01 70 */ lfd f20, 0x170(r1) -/* 8015B1B4 00158114 E2 61 01 68 */ psq_l f19, 360(r1), 0, qr0 -/* 8015B1B8 00158118 CA 61 01 60 */ lfd f19, 0x160(r1) -/* 8015B1BC 0015811C 83 E1 01 5C */ lwz r31, 0x15c(r1) -/* 8015B1C0 00158120 83 C1 01 58 */ lwz r30, 0x158(r1) -/* 8015B1C4 00158124 80 01 02 34 */ lwz r0, 0x234(r1) -/* 8015B1C8 00158128 83 A1 01 54 */ lwz r29, 0x154(r1) -/* 8015B1CC 0015812C 7C 08 03 A6 */ mtlr r0 -/* 8015B1D0 00158130 38 21 02 30 */ addi r1, r1, 0x230 -/* 8015B1D4 00158134 4E 80 00 20 */ blr - -.global PreDraw__20CSamusFaceReflectionFRC13CStateManager -PreDraw__20CSamusFaceReflectionFRC13CStateManager: -/* 8015B1D8 00158138 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8015B1DC 0015813C 7C 08 02 A6 */ mflr r0 -/* 8015B1E0 00158140 90 01 00 24 */ stw r0, 0x24(r1) -/* 8015B1E4 00158144 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8015B1E8 00158148 7C 9F 23 78 */ mr r31, r4 -/* 8015B1EC 0015814C 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8015B1F0 00158150 7C 7E 1B 78 */ mr r30, r3 -/* 8015B1F4 00158154 80 03 00 6C */ lwz r0, 0x6c(r3) -/* 8015B1F8 00158158 2C 00 00 02 */ cmpwi r0, 2 -/* 8015B1FC 0015815C 41 82 00 4C */ beq lbl_8015B248 -/* 8015B200 00158160 80 7E 00 4C */ lwz r3, 0x4c(r30) -/* 8015B204 00158164 4B FA 9E AD */ bl GetActiveLightCount__12CActorLightsCFv -/* 8015B208 00158168 28 03 00 01 */ cmplwi r3, 1 -/* 8015B20C 0015816C 40 80 00 18 */ bge lbl_8015B224 -/* 8015B210 00158170 80 1E 00 6C */ lwz r0, 0x6c(r30) -/* 8015B214 00158174 2C 00 00 00 */ cmpwi r0, 0 -/* 8015B218 00158178 41 82 00 30 */ beq lbl_8015B248 -/* 8015B21C 0015817C 2C 00 00 03 */ cmpwi r0, 3 -/* 8015B220 00158180 41 82 00 28 */ beq lbl_8015B248 -lbl_8015B224: -/* 8015B224 00158184 80 7F 08 70 */ lwz r3, 0x870(r31) -/* 8015B228 00158188 7F E4 FB 78 */ mr r4, r31 -/* 8015B22C 0015818C 4B EB 08 ED */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager -/* 8015B230 00158190 7C 64 1B 78 */ mr r4, r3 -/* 8015B234 00158194 38 61 00 08 */ addi r3, r1, 8 -/* 8015B238 00158198 4B F5 32 3D */ bl "__ct__32TCastToPtr<18CFirstPersonCamera>FR7CEntity" -/* 8015B23C 0015819C 80 03 00 04 */ lwz r0, 4(r3) -/* 8015B240 001581A0 28 00 00 00 */ cmplwi r0, 0 -/* 8015B244 001581A4 40 82 00 10 */ bne lbl_8015B254 -lbl_8015B248: -/* 8015B248 001581A8 38 00 00 01 */ li r0, 1 -/* 8015B24C 001581AC 98 1E 00 70 */ stb r0, 0x70(r30) -/* 8015B250 001581B0 48 00 00 14 */ b lbl_8015B264 -lbl_8015B254: -/* 8015B254 001581B4 38 00 00 00 */ li r0, 0 -/* 8015B258 001581B8 98 1E 00 70 */ stb r0, 0x70(r30) -/* 8015B25C 001581BC 80 7E 00 10 */ lwz r3, 0x10(r30) -/* 8015B260 001581C0 4B ED 17 A5 */ bl PreRender__9CAnimDataFv -lbl_8015B264: -/* 8015B264 001581C4 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8015B268 001581C8 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8015B26C 001581CC 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8015B270 001581D0 7C 08 03 A6 */ mtlr r0 -/* 8015B274 001581D4 38 21 00 20 */ addi r1, r1, 0x20 -/* 8015B278 001581D8 4E 80 00 20 */ blr - -.global Update__20CSamusFaceReflectionFfRC13CStateManagerR9CRandom16 -Update__20CSamusFaceReflectionFfRC13CStateManagerR9CRandom16: -/* 8015B27C 001581DC 94 21 FD F0 */ stwu r1, -0x210(r1) -/* 8015B280 001581E0 7C 08 02 A6 */ mflr r0 -/* 8015B284 001581E4 90 01 02 14 */ stw r0, 0x214(r1) -/* 8015B288 001581E8 DB E1 02 00 */ stfd f31, 0x200(r1) -/* 8015B28C 001581EC F3 E1 02 08 */ psq_st f31, 520(r1), 0, qr0 -/* 8015B290 001581F0 DB C1 01 F0 */ stfd f30, 0x1f0(r1) -/* 8015B294 001581F4 F3 C1 01 F8 */ psq_st f30, 504(r1), 0, qr0 -/* 8015B298 001581F8 DB A1 01 E0 */ stfd f29, 0x1e0(r1) -/* 8015B29C 001581FC F3 A1 01 E8 */ psq_st f29, 488(r1), 0, qr0 -/* 8015B2A0 00158200 DB 81 01 D0 */ stfd f28, 0x1d0(r1) -/* 8015B2A4 00158204 F3 81 01 D8 */ psq_st f28, 472(r1), 0, qr0 -/* 8015B2A8 00158208 93 E1 01 CC */ stw r31, 0x1cc(r1) -/* 8015B2AC 0015820C 93 C1 01 C8 */ stw r30, 0x1c8(r1) -/* 8015B2B0 00158210 93 A1 01 C4 */ stw r29, 0x1c4(r1) -/* 8015B2B4 00158214 93 81 01 C0 */ stw r28, 0x1c0(r1) -/* 8015B2B8 00158218 FF E0 08 90 */ fmr f31, f1 -/* 8015B2BC 0015821C 7C 9C 23 78 */ mr r28, r4 -/* 8015B2C0 00158220 7C 7F 1B 78 */ mr r31, r3 -/* 8015B2C4 00158224 80 64 08 70 */ lwz r3, 0x870(r4) -/* 8015B2C8 00158228 7C BE 2B 78 */ mr r30, r5 -/* 8015B2CC 0015822C 4B EB 08 4D */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager -/* 8015B2D0 00158230 7C 64 1B 78 */ mr r4, r3 -/* 8015B2D4 00158234 38 61 00 1C */ addi r3, r1, 0x1c -/* 8015B2D8 00158238 4B F5 31 9D */ bl "__ct__32TCastToPtr<18CFirstPersonCamera>FR7CEntity" -/* 8015B2DC 0015823C 83 A3 00 04 */ lwz r29, 4(r3) -/* 8015B2E0 00158240 28 1D 00 00 */ cmplwi r29, 0 -/* 8015B2E4 00158244 41 82 03 2C */ beq lbl_8015B610 -/* 8015B2E8 00158248 FC 20 F8 90 */ fmr f1, f31 -/* 8015B2EC 0015824C C3 DD 00 60 */ lfs f30, 0x60(r29) -/* 8015B2F0 00158250 C3 BD 00 50 */ lfs f29, 0x50(r29) -/* 8015B2F4 00158254 7F E4 FB 78 */ mr r4, r31 -/* 8015B2F8 00158258 C3 9D 00 40 */ lfs f28, 0x40(r29) -/* 8015B2FC 0015825C 7F C5 F3 78 */ mr r5, r30 -/* 8015B300 00158260 38 61 00 F0 */ addi r3, r1, 0xf0 -/* 8015B304 00158264 38 C0 00 01 */ li r6, 1 -/* 8015B308 00158268 4B FB A7 B1 */ bl AdvanceAnimationIgnoreParticles__10CModelDataFfR9CRandom16b -/* 8015B30C 0015826C 83 DF 00 4C */ lwz r30, 0x4c(r31) -/* 8015B310 00158270 38 60 00 00 */ li r3, 0 -/* 8015B314 00158274 88 1E 02 98 */ lbz r0, 0x298(r30) -/* 8015B318 00158278 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 8015B31C 0015827C 98 1E 02 98 */ stb r0, 0x298(r30) -/* 8015B320 00158280 80 7C 08 4C */ lwz r3, 0x84c(r28) -/* 8015B324 00158284 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) -/* 8015B328 00158288 80 63 00 04 */ lwz r3, 4(r3) -/* 8015B32C 0015828C 7C 03 00 00 */ cmpw r3, r0 -/* 8015B330 00158290 90 61 00 18 */ stw r3, 0x18(r1) -/* 8015B334 00158294 41 82 02 DC */ beq lbl_8015B610 -/* 8015B338 00158298 C0 A2 9E B4 */ lfs f5, lbl_805ABBD4@sda21(r2) -/* 8015B33C 0015829C 38 61 01 0C */ addi r3, r1, 0x10c -/* 8015B340 001582A0 38 81 00 B8 */ addi r4, r1, 0xb8 -/* 8015B344 001582A4 38 A1 00 AC */ addi r5, r1, 0xac -/* 8015B348 001582A8 EC 1C 28 2A */ fadds f0, f28, f5 -/* 8015B34C 001582AC EC 9D 28 2A */ fadds f4, f29, f5 -/* 8015B350 001582B0 EC 7E 28 2A */ fadds f3, f30, f5 -/* 8015B354 001582B4 EC 5C 28 28 */ fsubs f2, f28, f5 -/* 8015B358 001582B8 D0 01 00 AC */ stfs f0, 0xac(r1) -/* 8015B35C 001582BC EC 3D 28 28 */ fsubs f1, f29, f5 -/* 8015B360 001582C0 EC 1E 28 28 */ fsubs f0, f30, f5 -/* 8015B364 001582C4 D0 81 00 B0 */ stfs f4, 0xb0(r1) -/* 8015B368 001582C8 D0 61 00 B4 */ stfs f3, 0xb4(r1) -/* 8015B36C 001582CC D0 41 00 B8 */ stfs f2, 0xb8(r1) -/* 8015B370 001582D0 D0 21 00 BC */ stfs f1, 0xbc(r1) -/* 8015B374 001582D4 D0 01 00 C0 */ stfs f0, 0xc0(r1) -/* 8015B378 001582D8 48 1D D1 91 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 8015B37C 001582DC 80 01 00 18 */ lwz r0, 0x18(r1) -/* 8015B380 001582E0 7F C3 F3 78 */ mr r3, r30 -/* 8015B384 001582E4 80 DC 08 50 */ lwz r6, 0x850(r28) -/* 8015B388 001582E8 7F 84 E3 78 */ mr r4, r28 -/* 8015B38C 001582EC 54 05 18 38 */ slwi r5, r0, 3 -/* 8015B390 001582F0 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015B394 001582F4 80 E6 00 20 */ lwz r7, 0x20(r6) -/* 8015B398 001582F8 38 05 00 04 */ addi r0, r5, 4 -/* 8015B39C 001582FC 38 C1 01 0C */ addi r6, r1, 0x10c -/* 8015B3A0 00158300 7C A7 00 2E */ lwzx r5, r7, r0 -/* 8015B3A4 00158304 4B FA 7F 19 */ bl BuildFaceLightList__12CActorLightsFRC13CStateManagerRC9CGameAreaRC6CAABox -/* 8015B3A8 00158308 38 61 01 6C */ addi r3, r1, 0x16c -/* 8015B3AC 0015830C 38 9D 00 34 */ addi r4, r29, 0x34 -/* 8015B3B0 00158310 48 1B 7D 45 */ bl BuildMatrix3f__12CTransform4fCFv -/* 8015B3B4 00158314 38 61 01 90 */ addi r3, r1, 0x190 -/* 8015B3B8 00158318 38 81 01 6C */ addi r4, r1, 0x16c -/* 8015B3BC 0015831C 48 1B 4C 69 */ bl __ct__9CMatrix3fFRC9CMatrix3f -/* 8015B3C0 00158320 C0 41 01 AC */ lfs f2, 0x1ac(r1) -/* 8015B3C4 00158324 38 61 00 E4 */ addi r3, r1, 0xe4 -/* 8015B3C8 00158328 C0 21 01 A0 */ lfs f1, 0x1a0(r1) -/* 8015B3CC 0015832C 38 81 00 A0 */ addi r4, r1, 0xa0 -/* 8015B3D0 00158330 C0 01 01 94 */ lfs f0, 0x194(r1) -/* 8015B3D4 00158334 D0 21 00 A4 */ stfs f1, 0xa4(r1) -/* 8015B3D8 00158338 D0 01 00 A0 */ stfs f0, 0xa0(r1) -/* 8015B3DC 0015833C D0 41 00 A8 */ stfs f2, 0xa8(r1) -/* 8015B3E0 00158340 48 1B 89 F1 */ bl __ct__11CUnitVectorFRC9CVector3f -/* 8015B3E4 00158344 3C 60 80 5A */ lis r3, lbl_805A6724@ha -/* 8015B3E8 00158348 C0 C2 9E B8 */ lfs f6, lbl_805ABBD8@sda21(r2) -/* 8015B3EC 0015834C 3B C3 67 24 */ addi r30, r3, lbl_805A6724@l -/* 8015B3F0 00158350 C0 41 00 E4 */ lfs f2, 0xe4(r1) -/* 8015B3F4 00158354 C0 BE 00 00 */ lfs f5, 0(r30) -/* 8015B3F8 00158358 38 61 00 90 */ addi r3, r1, 0x90 -/* 8015B3FC 0015835C C0 9E 00 04 */ lfs f4, 4(r30) -/* 8015B400 00158360 38 81 00 84 */ addi r4, r1, 0x84 -/* 8015B404 00158364 C0 7E 00 08 */ lfs f3, 8(r30) -/* 8015B408 00158368 38 A1 00 78 */ addi r5, r1, 0x78 -/* 8015B40C 0015836C C0 21 00 E8 */ lfs f1, 0xe8(r1) -/* 8015B410 00158370 38 C1 00 10 */ addi r6, r1, 0x10 -/* 8015B414 00158374 C0 01 00 EC */ lfs f0, 0xec(r1) -/* 8015B418 00158378 D0 C1 00 10 */ stfs f6, 0x10(r1) -/* 8015B41C 0015837C D0 A1 00 78 */ stfs f5, 0x78(r1) -/* 8015B420 00158380 D0 81 00 7C */ stfs f4, 0x7c(r1) -/* 8015B424 00158384 D0 61 00 80 */ stfs f3, 0x80(r1) -/* 8015B428 00158388 D0 41 00 84 */ stfs f2, 0x84(r1) -/* 8015B42C 0015838C D0 21 00 88 */ stfs f1, 0x88(r1) -/* 8015B430 00158390 D0 01 00 8C */ stfs f0, 0x8c(r1) -/* 8015B434 00158394 48 1B 62 61 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle -/* 8015B438 00158398 3C 60 80 5A */ lis r3, lbl_805A6724@ha -/* 8015B43C 0015839C C0 E1 00 90 */ lfs f7, 0x90(r1) -/* 8015B440 001583A0 38 C3 67 24 */ addi r6, r3, lbl_805A6724@l -/* 8015B444 001583A4 C0 C1 00 94 */ lfs f6, 0x94(r1) -/* 8015B448 001583A8 C0 A1 00 98 */ lfs f5, 0x98(r1) -/* 8015B44C 001583AC 38 61 00 44 */ addi r3, r1, 0x44 -/* 8015B450 001583B0 C0 81 00 9C */ lfs f4, 0x9c(r1) -/* 8015B454 001583B4 38 81 00 D4 */ addi r4, r1, 0xd4 -/* 8015B458 001583B8 C0 62 9E B8 */ lfs f3, lbl_805ABBD8@sda21(r2) -/* 8015B45C 001583BC 38 BF 00 60 */ addi r5, r31, 0x60 -/* 8015B460 001583C0 C0 46 00 00 */ lfs f2, 0(r6) -/* 8015B464 001583C4 C0 3E 00 04 */ lfs f1, 4(r30) -/* 8015B468 001583C8 C0 1E 00 08 */ lfs f0, 8(r30) -/* 8015B46C 001583CC D0 E1 00 D4 */ stfs f7, 0xd4(r1) -/* 8015B470 001583D0 D0 C1 00 D8 */ stfs f6, 0xd8(r1) -/* 8015B474 001583D4 D0 A1 00 DC */ stfs f5, 0xdc(r1) -/* 8015B478 001583D8 D0 81 00 E0 */ stfs f4, 0xe0(r1) -/* 8015B47C 001583DC D0 61 00 0C */ stfs f3, 0xc(r1) -/* 8015B480 001583E0 D0 41 00 5C */ stfs f2, 0x5c(r1) -/* 8015B484 001583E4 D0 21 00 60 */ stfs f1, 0x60(r1) -/* 8015B488 001583E8 D0 01 00 64 */ stfs f0, 0x64(r1) -/* 8015B48C 001583EC 48 1B 5D D9 */ bl Transform__11CQuaternionCFRC9CVector3f -/* 8015B490 001583F0 38 61 00 50 */ addi r3, r1, 0x50 -/* 8015B494 001583F4 38 81 00 44 */ addi r4, r1, 0x44 -/* 8015B498 001583F8 48 1B 89 39 */ bl __ct__11CUnitVectorFRC9CVector3f -/* 8015B49C 001583FC 7C 65 1B 78 */ mr r5, r3 -/* 8015B4A0 00158400 38 61 00 68 */ addi r3, r1, 0x68 -/* 8015B4A4 00158404 38 81 00 5C */ addi r4, r1, 0x5c -/* 8015B4A8 00158408 38 C1 00 0C */ addi r6, r1, 0xc -/* 8015B4AC 0015840C 48 1B 61 E9 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle -/* 8015B4B0 00158410 C0 61 00 68 */ lfs f3, 0x68(r1) -/* 8015B4B4 00158414 38 81 00 C4 */ addi r4, r1, 0xc4 -/* 8015B4B8 00158418 C0 41 00 6C */ lfs f2, 0x6c(r1) -/* 8015B4BC 0015841C 7C 85 23 78 */ mr r5, r4 -/* 8015B4C0 00158420 C0 21 00 70 */ lfs f1, 0x70(r1) -/* 8015B4C4 00158424 38 61 00 24 */ addi r3, r1, 0x24 -/* 8015B4C8 00158428 C0 01 00 74 */ lfs f0, 0x74(r1) -/* 8015B4CC 0015842C D0 61 00 C4 */ stfs f3, 0xc4(r1) -/* 8015B4D0 00158430 D0 41 00 C8 */ stfs f2, 0xc8(r1) -/* 8015B4D4 00158434 D0 21 00 CC */ stfs f1, 0xcc(r1) -/* 8015B4D8 00158438 D0 01 00 D0 */ stfs f0, 0xd0(r1) -/* 8015B4DC 0015843C 48 1B 5C C5 */ bl __ml__11CQuaternionCFRC11CQuaternion -/* 8015B4E0 00158440 C0 01 00 24 */ lfs f0, 0x24(r1) -/* 8015B4E4 00158444 38 61 01 48 */ addi r3, r1, 0x148 -/* 8015B4E8 00158448 80 C1 00 28 */ lwz r6, 0x28(r1) -/* 8015B4EC 0015844C 38 81 00 C4 */ addi r4, r1, 0xc4 -/* 8015B4F0 00158450 80 A1 00 2C */ lwz r5, 0x2c(r1) -/* 8015B4F4 00158454 80 01 00 30 */ lwz r0, 0x30(r1) -/* 8015B4F8 00158458 D0 01 00 C4 */ stfs f0, 0xc4(r1) -/* 8015B4FC 0015845C 90 C1 00 C8 */ stw r6, 0xc8(r1) -/* 8015B500 00158460 90 A1 00 CC */ stw r5, 0xcc(r1) -/* 8015B504 00158464 90 01 00 D0 */ stw r0, 0xd0(r1) -/* 8015B508 00158468 48 1B 6B 85 */ bl BuildTransform__11CQuaternionCFv -/* 8015B50C 0015846C C3 81 01 64 */ lfs f28, 0x164(r1) -/* 8015B510 00158470 38 61 01 24 */ addi r3, r1, 0x124 -/* 8015B514 00158474 C3 A1 01 58 */ lfs f29, 0x158(r1) -/* 8015B518 00158478 38 9F 00 50 */ addi r4, r31, 0x50 -/* 8015B51C 0015847C C3 C1 01 4C */ lfs f30, 0x14c(r1) -/* 8015B520 00158480 48 1B 6B 6D */ bl BuildTransform__11CQuaternionCFv -/* 8015B524 00158484 C0 01 01 34 */ lfs f0, 0x134(r1) -/* 8015B528 00158488 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8015B52C 0015848C EC 00 07 72 */ fmuls f0, f0, f29 -/* 8015B530 00158490 C0 21 01 28 */ lfs f1, 0x128(r1) -/* 8015B534 00158494 C0 63 01 38 */ lfs f3, 0x138(r3) -/* 8015B538 00158498 C0 41 01 40 */ lfs f2, 0x140(r1) -/* 8015B53C 0015849C EC 21 07 BA */ fmadds f1, f1, f30, f0 -/* 8015B540 001584A0 C0 82 9E BC */ lfs f4, lbl_805ABBDC@sda21(r2) -/* 8015B544 001584A4 EC 7F 00 F2 */ fmuls f3, f31, f3 -/* 8015B548 001584A8 C8 02 9E C0 */ lfd f0, lbl_805ABBE0@sda21(r2) -/* 8015B54C 001584AC EC 22 0F 3A */ fmadds f1, f2, f28, f1 -/* 8015B550 001584B0 EF C4 00 F2 */ fmuls f30, f4, f3 -/* 8015B554 001584B4 FC 40 0A 10 */ fabs f2, f1 -/* 8015B558 001584B8 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8015B55C 001584BC 40 81 00 14 */ ble lbl_8015B570 -/* 8015B560 001584C0 C0 02 9E C8 */ lfs f0, lbl_805ABBE8@sda21(r2) -/* 8015B564 001584C4 C0 42 9E AC */ lfs f2, lbl_805ABBCC@sda21(r2) -/* 8015B568 001584C8 FC 01 00 AE */ fsel f0, f1, f2, f0 -/* 8015B56C 001584CC EC 22 00 32 */ fmuls f1, f2, f0 -lbl_8015B570: -/* 8015B570 001584D0 48 23 96 BD */ bl acos -/* 8015B574 001584D4 FC 40 08 18 */ frsp f2, f1 -/* 8015B578 001584D8 C0 22 9E CC */ lfs f1, lbl_805ABBEC@sda21(r2) -/* 8015B57C 001584DC C0 02 9E B0 */ lfs f0, lbl_805ABBD0@sda21(r2) -/* 8015B580 001584E0 EC 21 07 F2 */ fmuls f1, f1, f31 -/* 8015B584 001584E4 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8015B588 001584E8 40 81 00 08 */ ble lbl_8015B590 -/* 8015B58C 001584EC EC 1E 10 24 */ fdivs f0, f30, f2 -lbl_8015B590: -/* 8015B590 001584F0 EC 01 00 32 */ fmuls f0, f1, f0 -/* 8015B594 001584F4 38 81 00 08 */ addi r4, r1, 8 -/* 8015B598 001584F8 38 6D 8C A8 */ addi r3, r13, lbl_805A7868@sda21 -/* 8015B59C 001584FC 38 AD 8C AC */ addi r5, r13, lbl_805A786C@sda21 -/* 8015B5A0 00158500 D0 01 00 08 */ stfs f0, 8(r1) -/* 8015B5A4 00158504 4B EB 0D 11 */ bl "Clamp__5CMathFRCfRCfRCf" -/* 8015B5A8 00158508 C0 23 00 00 */ lfs f1, 0(r3) -/* 8015B5AC 0015850C 38 61 00 34 */ addi r3, r1, 0x34 -/* 8015B5B0 00158510 38 9F 00 50 */ addi r4, r31, 0x50 -/* 8015B5B4 00158514 38 A1 00 C4 */ addi r5, r1, 0xc4 -/* 8015B5B8 00158518 48 1B 60 01 */ bl SlerpLocal__11CQuaternionFRC11CQuaternionRC11CQuaternionf -/* 8015B5BC 0015851C C0 01 00 34 */ lfs f0, 0x34(r1) -/* 8015B5C0 00158520 80 81 00 38 */ lwz r4, 0x38(r1) -/* 8015B5C4 00158524 80 61 00 3C */ lwz r3, 0x3c(r1) -/* 8015B5C8 00158528 80 01 00 40 */ lwz r0, 0x40(r1) -/* 8015B5CC 0015852C D0 01 00 C4 */ stfs f0, 0xc4(r1) -/* 8015B5D0 00158530 90 81 00 C8 */ stw r4, 0xc8(r1) -/* 8015B5D4 00158534 90 61 00 CC */ stw r3, 0xcc(r1) -/* 8015B5D8 00158538 90 01 00 D0 */ stw r0, 0xd0(r1) -/* 8015B5DC 0015853C D0 1F 00 50 */ stfs f0, 0x50(r31) -/* 8015B5E0 00158540 80 61 00 C8 */ lwz r3, 0xc8(r1) -/* 8015B5E4 00158544 80 01 00 CC */ lwz r0, 0xcc(r1) -/* 8015B5E8 00158548 90 7F 00 54 */ stw r3, 0x54(r31) -/* 8015B5EC 0015854C 90 1F 00 58 */ stw r0, 0x58(r31) -/* 8015B5F0 00158550 80 01 00 D0 */ lwz r0, 0xd0(r1) -/* 8015B5F4 00158554 90 1F 00 5C */ stw r0, 0x5c(r31) -/* 8015B5F8 00158558 C0 01 00 E4 */ lfs f0, 0xe4(r1) -/* 8015B5FC 0015855C D0 1F 00 60 */ stfs f0, 0x60(r31) -/* 8015B600 00158560 C0 01 00 E8 */ lfs f0, 0xe8(r1) -/* 8015B604 00158564 D0 1F 00 64 */ stfs f0, 0x64(r31) -/* 8015B608 00158568 C0 01 00 EC */ lfs f0, 0xec(r1) -/* 8015B60C 0015856C D0 1F 00 68 */ stfs f0, 0x68(r31) -lbl_8015B610: -/* 8015B610 00158570 E3 E1 02 08 */ psq_l f31, 520(r1), 0, qr0 -/* 8015B614 00158574 CB E1 02 00 */ lfd f31, 0x200(r1) -/* 8015B618 00158578 E3 C1 01 F8 */ psq_l f30, 504(r1), 0, qr0 -/* 8015B61C 0015857C CB C1 01 F0 */ lfd f30, 0x1f0(r1) -/* 8015B620 00158580 E3 A1 01 E8 */ psq_l f29, 488(r1), 0, qr0 -/* 8015B624 00158584 CB A1 01 E0 */ lfd f29, 0x1e0(r1) -/* 8015B628 00158588 E3 81 01 D8 */ psq_l f28, 472(r1), 0, qr0 -/* 8015B62C 0015858C CB 81 01 D0 */ lfd f28, 0x1d0(r1) -/* 8015B630 00158590 83 E1 01 CC */ lwz r31, 0x1cc(r1) -/* 8015B634 00158594 83 C1 01 C8 */ lwz r30, 0x1c8(r1) -/* 8015B638 00158598 83 A1 01 C4 */ lwz r29, 0x1c4(r1) -/* 8015B63C 0015859C 80 01 02 14 */ lwz r0, 0x214(r1) -/* 8015B640 001585A0 83 81 01 C0 */ lwz r28, 0x1c0(r1) -/* 8015B644 001585A4 7C 08 03 A6 */ mtlr r0 -/* 8015B648 001585A8 38 21 02 10 */ addi r1, r1, 0x210 -/* 8015B64C 001585AC 4E 80 00 20 */ blr - -.global __ct__20CSamusFaceReflectionFRC13CStateManager -__ct__20CSamusFaceReflectionFRC13CStateManager: -/* 8015B650 001585B0 94 21 FF 50 */ stwu r1, -0xb0(r1) -/* 8015B654 001585B4 7C 08 02 A6 */ mflr r0 -/* 8015B658 001585B8 80 82 9E A0 */ lwz r4, lbl_805ABBC0@sda21(r2) -/* 8015B65C 001585BC 90 01 00 B4 */ stw r0, 0xb4(r1) -/* 8015B660 001585C0 93 E1 00 AC */ stw r31, 0xac(r1) -/* 8015B664 001585C4 7C 7F 1B 78 */ mr r31, r3 -/* 8015B668 001585C8 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) -/* 8015B66C 001585CC 81 83 00 00 */ lwz r12, 0(r3) -/* 8015B670 001585D0 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 8015B674 001585D4 7D 89 03 A6 */ mtctr r12 -/* 8015B678 001585D8 4E 80 04 21 */ bctrl -/* 8015B67C 001585DC 80 83 00 04 */ lwz r4, 4(r3) -/* 8015B680 001585E0 38 A0 00 01 */ li r5, 1 -/* 8015B684 001585E4 C0 02 9E AC */ lfs f0, lbl_805ABBCC@sda21(r2) -/* 8015B688 001585E8 38 00 00 00 */ li r0, 0 -/* 8015B68C 001585EC 80 C2 83 F0 */ lwz r6, lbl_805AA110@sda21(r2) -/* 8015B690 001585F0 38 61 00 58 */ addi r3, r1, 0x58 -/* 8015B694 001585F4 90 81 00 14 */ stw r4, 0x14(r1) -/* 8015B698 001585F8 38 81 00 14 */ addi r4, r1, 0x14 -/* 8015B69C 001585FC 90 C1 00 18 */ stw r6, 0x18(r1) -/* 8015B6A0 00158600 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 8015B6A4 00158604 D0 01 00 20 */ stfs f0, 0x20(r1) -/* 8015B6A8 00158608 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 8015B6AC 0015860C 98 A1 00 28 */ stb r5, 0x28(r1) -/* 8015B6B0 00158610 90 01 00 2C */ stw r0, 0x2c(r1) -/* 8015B6B4 00158614 4B FB B4 A1 */ bl __ct__10CModelDataFRC8CAnimRes -/* 8015B6B8 00158618 7F E3 FB 78 */ mr r3, r31 -/* 8015B6BC 0015861C 38 81 00 58 */ addi r4, r1, 0x58 -/* 8015B6C0 00158620 4B EB D6 CD */ bl __ct__10CModelDataFRC10CModelData -/* 8015B6C4 00158624 38 61 00 58 */ addi r3, r1, 0x58 -/* 8015B6C8 00158628 38 80 FF FF */ li r4, -1 -/* 8015B6CC 0015862C 4B FB B3 81 */ bl __dt__10CModelDataFv -/* 8015B6D0 00158630 3C 80 80 3D */ lis r4, lbl_803D0340@ha -/* 8015B6D4 00158634 38 60 02 E0 */ li r3, 0x2e0 -/* 8015B6D8 00158638 38 84 03 40 */ addi r4, r4, lbl_803D0340@l -/* 8015B6DC 0015863C 38 A0 00 00 */ li r5, 0 -/* 8015B6E0 00158640 38 84 00 0E */ addi r4, r4, 0xe -/* 8015B6E4 00158644 48 1B A1 89 */ bl __nw__FUlPCcPCc -/* 8015B6E8 00158648 7C 60 1B 79 */ or. r0, r3, r3 -/* 8015B6EC 0015864C 41 82 00 4C */ beq lbl_8015B738 -/* 8015B6F0 00158650 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8015B6F4 00158654 C0 22 94 04 */ lfs f1, lbl_805AB124@sda21(r2) -/* 8015B6F8 00158658 38 E4 66 A0 */ addi r7, r4, skZero3f@l -/* 8015B6FC 0015865C 38 A1 00 08 */ addi r5, r1, 8 -/* 8015B700 00158660 81 07 00 00 */ lwz r8, 0(r7) -/* 8015B704 00158664 38 80 00 08 */ li r4, 8 -/* 8015B708 00158668 81 67 00 04 */ lwz r11, 4(r7) -/* 8015B70C 0015866C 38 C0 00 04 */ li r6, 4 -/* 8015B710 00158670 80 07 00 08 */ lwz r0, 8(r7) -/* 8015B714 00158674 38 E0 00 04 */ li r7, 4 -/* 8015B718 00158678 91 01 00 08 */ stw r8, 8(r1) -/* 8015B71C 0015867C 39 00 00 00 */ li r8, 0 -/* 8015B720 00158680 39 20 00 00 */ li r9, 0 -/* 8015B724 00158684 39 40 00 00 */ li r10, 0 -/* 8015B728 00158688 91 61 00 0C */ stw r11, 0xc(r1) -/* 8015B72C 0015868C 90 01 00 10 */ stw r0, 0x10(r1) -/* 8015B730 00158690 4B FA 9A 9D */ bl __ct__12CActorLightsFUi9CVector3fiif -/* 8015B734 00158694 7C 60 1B 78 */ mr r0, r3 -lbl_8015B738: -/* 8015B738 00158698 3C 60 80 5A */ lis r3, lbl_805A6660@ha -/* 8015B73C 0015869C 90 1F 00 4C */ stw r0, 0x4c(r31) -/* 8015B740 001586A0 39 03 66 60 */ addi r8, r3, lbl_805A6660@l -/* 8015B744 001586A4 3C 60 80 5A */ lis r3, lbl_805A6724@ha -/* 8015B748 001586A8 C0 08 00 00 */ lfs f0, 0(r8) -/* 8015B74C 001586AC 38 E3 67 24 */ addi r7, r3, lbl_805A6724@l -/* 8015B750 001586B0 38 C0 00 00 */ li r6, 0 -/* 8015B754 001586B4 38 60 00 01 */ li r3, 1 -/* 8015B758 001586B8 D0 1F 00 50 */ stfs f0, 0x50(r31) -/* 8015B75C 001586BC 38 00 FF FF */ li r0, -1 -/* 8015B760 001586C0 C0 02 9E AC */ lfs f0, lbl_805ABBCC@sda21(r2) -/* 8015B764 001586C4 38 81 00 30 */ addi r4, r1, 0x30 -/* 8015B768 001586C8 C0 28 00 04 */ lfs f1, 4(r8) -/* 8015B76C 001586CC 38 A0 00 00 */ li r5, 0 -/* 8015B770 001586D0 D0 3F 00 54 */ stfs f1, 0x54(r31) -/* 8015B774 001586D4 C0 28 00 08 */ lfs f1, 8(r8) -/* 8015B778 001586D8 D0 3F 00 58 */ stfs f1, 0x58(r31) -/* 8015B77C 001586DC C0 28 00 0C */ lfs f1, 0xc(r8) -/* 8015B780 001586E0 D0 3F 00 5C */ stfs f1, 0x5c(r31) -/* 8015B784 001586E4 C0 27 00 00 */ lfs f1, 0(r7) -/* 8015B788 001586E8 D0 3F 00 60 */ stfs f1, 0x60(r31) -/* 8015B78C 001586EC C0 27 00 04 */ lfs f1, 4(r7) -/* 8015B790 001586F0 D0 3F 00 64 */ stfs f1, 0x64(r31) -/* 8015B794 001586F4 C0 27 00 08 */ lfs f1, 8(r7) -/* 8015B798 001586F8 D0 3F 00 68 */ stfs f1, 0x68(r31) -/* 8015B79C 001586FC 90 DF 00 6C */ stw r6, 0x6c(r31) -/* 8015B7A0 00158700 98 7F 00 70 */ stb r3, 0x70(r31) -/* 8015B7A4 00158704 90 C1 00 30 */ stw r6, 0x30(r1) -/* 8015B7A8 00158708 90 01 00 34 */ stw r0, 0x34(r1) -/* 8015B7AC 0015870C D0 01 00 38 */ stfs f0, 0x38(r1) -/* 8015B7B0 00158710 98 61 00 3C */ stb r3, 0x3c(r1) -/* 8015B7B4 00158714 90 C1 00 40 */ stw r6, 0x40(r1) -/* 8015B7B8 00158718 90 C1 00 44 */ stw r6, 0x44(r1) -/* 8015B7BC 0015871C 98 C1 00 48 */ stb r6, 0x48(r1) -/* 8015B7C0 00158720 90 C1 00 4C */ stw r6, 0x4c(r1) -/* 8015B7C4 00158724 90 C1 00 50 */ stw r6, 0x50(r1) -/* 8015B7C8 00158728 90 C1 00 54 */ stw r6, 0x54(r1) -/* 8015B7CC 0015872C 80 7F 00 10 */ lwz r3, 0x10(r31) -/* 8015B7D0 00158730 4B ED 15 AD */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb -/* 8015B7D4 00158734 80 01 00 B4 */ lwz r0, 0xb4(r1) -/* 8015B7D8 00158738 7F E3 FB 78 */ mr r3, r31 -/* 8015B7DC 0015873C 83 E1 00 AC */ lwz r31, 0xac(r1) -/* 8015B7E0 00158740 7C 08 03 A6 */ mtlr r0 -/* 8015B7E4 00158744 38 21 00 B0 */ addi r1, r1, 0xb0 -/* 8015B7E8 00158748 4E 80 00 20 */ blr - -.global __sinit_CSamusFaceReflection_cpp -__sinit_CSamusFaceReflection_cpp: -/* 8015B7EC 0015874C 94 21 FF 50 */ stwu r1, -0xb0(r1) -/* 8015B7F0 00158750 7C 08 02 A6 */ mflr r0 -/* 8015B7F4 00158754 C0 22 9E B0 */ lfs f1, lbl_805ABBD0@sda21(r2) -/* 8015B7F8 00158758 90 01 00 B4 */ stw r0, 0xb4(r1) -/* 8015B7FC 0015875C 38 61 00 14 */ addi r3, r1, 0x14 -/* 8015B800 00158760 C0 02 9E BC */ lfs f0, lbl_805ABBDC@sda21(r2) -/* 8015B804 00158764 38 81 00 08 */ addi r4, r1, 8 -/* 8015B808 00158768 D0 21 00 08 */ stfs f1, 8(r1) -/* 8015B80C 0015876C D0 01 00 0C */ stfs f0, 0xc(r1) -/* 8015B810 00158770 D0 21 00 10 */ stfs f1, 0x10(r1) -/* 8015B814 00158774 48 1B 79 2D */ bl Translate__12CTransform4fFRC9CVector3f -/* 8015B818 00158778 C0 22 9E D0 */ lfs f1, lbl_805ABBF0@sda21(r2) -/* 8015B81C 0015877C 38 61 00 44 */ addi r3, r1, 0x44 -/* 8015B820 00158780 48 1B 7A 21 */ bl Scale__12CTransform4fFf -/* 8015B824 00158784 38 61 00 74 */ addi r3, r1, 0x74 -/* 8015B828 00158788 38 81 00 44 */ addi r4, r1, 0x44 -/* 8015B82C 0015878C 38 A1 00 14 */ addi r5, r1, 0x14 -/* 8015B830 00158790 48 1B 71 21 */ bl __ml__12CTransform4fCFRC12CTransform4f -/* 8015B834 00158794 3C 60 80 47 */ lis r3, lbl_8046C7A0@ha -/* 8015B838 00158798 38 81 00 74 */ addi r4, r1, 0x74 -/* 8015B83C 0015879C 38 63 C7 A0 */ addi r3, r3, lbl_8046C7A0@l -/* 8015B840 001587A0 48 1B 73 35 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8015B844 001587A4 80 01 00 B4 */ lwz r0, 0xb4(r1) -/* 8015B848 001587A8 7C 08 03 A6 */ mtlr r0 -/* 8015B84C 001587AC 38 21 00 B0 */ addi r1, r1, 0xb0 -/* 8015B850 001587B0 4E 80 00 20 */ blr - -.global __dt__17CScriptPlayerHintFv -__dt__17CScriptPlayerHintFv: -/* 8015B854 001587B4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015B858 001587B8 7C 08 02 A6 */ mflr r0 -/* 8015B85C 001587BC 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015B860 001587C0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8015B864 001587C4 7C 9F 23 78 */ mr r31, r4 -/* 8015B868 001587C8 93 C1 00 08 */ stw r30, 8(r1) -/* 8015B86C 001587CC 7C 7E 1B 79 */ or. r30, r3, r3 -/* 8015B870 001587D0 41 82 00 88 */ beq lbl_8015B8F8 -/* 8015B874 001587D4 3C 60 80 3E */ lis r3, lbl_803E32D8@ha -/* 8015B878 001587D8 34 1E 00 E8 */ addic. r0, r30, 0xe8 -/* 8015B87C 001587DC 38 03 32 D8 */ addi r0, r3, lbl_803E32D8@l -/* 8015B880 001587E0 90 1E 00 00 */ stw r0, 0(r30) -/* 8015B884 001587E4 41 82 00 58 */ beq lbl_8015B8DC -/* 8015B888 001587E8 80 BE 00 E8 */ lwz r5, 0xe8(r30) -/* 8015B88C 001587EC 38 60 00 00 */ li r3, 0 -/* 8015B890 001587F0 2C 05 00 00 */ cmpwi r5, 0 -/* 8015B894 001587F4 40 81 00 40 */ ble lbl_8015B8D4 -/* 8015B898 001587F8 2C 05 00 08 */ cmpwi r5, 8 -/* 8015B89C 001587FC 38 85 FF F8 */ addi r4, r5, -8 -/* 8015B8A0 00158800 40 81 00 20 */ ble lbl_8015B8C0 -/* 8015B8A4 00158804 38 04 00 07 */ addi r0, r4, 7 -/* 8015B8A8 00158808 54 00 E8 FE */ srwi r0, r0, 3 -/* 8015B8AC 0015880C 7C 09 03 A6 */ mtctr r0 -/* 8015B8B0 00158810 2C 04 00 00 */ cmpwi r4, 0 -/* 8015B8B4 00158814 40 81 00 0C */ ble lbl_8015B8C0 -lbl_8015B8B8: -/* 8015B8B8 00158818 38 63 00 08 */ addi r3, r3, 8 -/* 8015B8BC 0015881C 42 00 FF FC */ bdnz lbl_8015B8B8 -lbl_8015B8C0: -/* 8015B8C0 00158820 7C 03 28 50 */ subf r0, r3, r5 -/* 8015B8C4 00158824 7C 09 03 A6 */ mtctr r0 -/* 8015B8C8 00158828 7C 03 28 00 */ cmpw r3, r5 -/* 8015B8CC 0015882C 40 80 00 08 */ bge lbl_8015B8D4 -lbl_8015B8D0: -/* 8015B8D0 00158830 42 00 00 00 */ bdnz lbl_8015B8D0 -lbl_8015B8D4: -/* 8015B8D4 00158834 38 00 00 00 */ li r0, 0 -/* 8015B8D8 00158838 90 1E 00 E8 */ stw r0, 0xe8(r30) -lbl_8015B8DC: -/* 8015B8DC 0015883C 7F C3 F3 78 */ mr r3, r30 -/* 8015B8E0 00158840 38 80 00 00 */ li r4, 0 -/* 8015B8E4 00158844 4B EF 9E 0D */ bl __dt__6CActorFv -/* 8015B8E8 00158848 7F E0 07 35 */ extsh. r0, r31 -/* 8015B8EC 0015884C 40 81 00 0C */ ble lbl_8015B8F8 -/* 8015B8F0 00158850 7F C3 F3 78 */ mr r3, r30 -/* 8015B8F4 00158854 48 1B A0 3D */ bl Free__7CMemoryFPCv -lbl_8015B8F8: -/* 8015B8F8 00158858 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015B8FC 0015885C 7F C3 F3 78 */ mr r3, r30 -/* 8015B900 00158860 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8015B904 00158864 83 C1 00 08 */ lwz r30, 8(r1) -/* 8015B908 00158868 7C 08 03 A6 */ mtlr r0 -/* 8015B90C 0015886C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8015B910 00158870 4E 80 00 20 */ blr - -.global Accept__17CScriptPlayerHintFR8IVisitor -Accept__17CScriptPlayerHintFR8IVisitor: -/* 8015B914 00158874 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015B918 00158878 7C 08 02 A6 */ mflr r0 -/* 8015B91C 0015887C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015B920 00158880 7C 60 1B 78 */ mr r0, r3 -/* 8015B924 00158884 7C 83 23 78 */ mr r3, r4 -/* 8015B928 00158888 81 84 00 00 */ lwz r12, 0(r4) -/* 8015B92C 0015888C 7C 04 03 78 */ mr r4, r0 -/* 8015B930 00158890 81 8C 00 A0 */ lwz r12, 0xa0(r12) -/* 8015B934 00158894 7D 89 03 A6 */ mtctr r12 -/* 8015B938 00158898 4E 80 04 21 */ bctrl -/* 8015B93C 0015889C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015B940 001588A0 7C 08 03 A6 */ mtlr r0 -/* 8015B944 001588A4 38 21 00 10 */ addi r1, r1, 0x10 -/* 8015B948 001588A8 4E 80 00 20 */ blr - -.global AcceptScriptMsg__17CScriptPlayerHintF20EScriptObjectMessage9TUniqueIdR13CStateManager -AcceptScriptMsg__17CScriptPlayerHintF20EScriptObjectMessage9TUniqueIdR13CStateManager: -/* 8015B94C 001588AC 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 8015B950 001588B0 7C 08 02 A6 */ mflr r0 -/* 8015B954 001588B4 90 01 00 64 */ stw r0, 0x64(r1) -/* 8015B958 001588B8 BF 61 00 4C */ stmw r27, 0x4c(r1) -/* 8015B95C 001588BC 7C 9D 23 78 */ mr r29, r4 -/* 8015B960 001588C0 2C 1D 00 07 */ cmpwi r29, 7 -/* 8015B964 001588C4 7C 7C 1B 78 */ mr r28, r3 -/* 8015B968 001588C8 7C BE 2B 78 */ mr r30, r5 -/* 8015B96C 001588CC 7C DF 33 78 */ mr r31, r6 -/* 8015B970 001588D0 41 82 00 60 */ beq lbl_8015B9D0 -/* 8015B974 001588D4 40 80 00 10 */ bge lbl_8015B984 -/* 8015B978 001588D8 2C 1D 00 04 */ cmpwi r29, 4 -/* 8015B97C 001588DC 41 82 00 14 */ beq lbl_8015B990 -/* 8015B980 001588E0 48 00 00 EC */ b lbl_8015BA6C -lbl_8015B984: -/* 8015B984 001588E4 2C 1D 00 22 */ cmpwi r29, 0x22 -/* 8015B988 001588E8 41 82 00 08 */ beq lbl_8015B990 -/* 8015B98C 001588EC 48 00 00 E0 */ b lbl_8015BA6C -lbl_8015B990: -/* 8015B990 001588F0 A0 1E 00 00 */ lhz r0, 0(r30) -/* 8015B994 001588F4 7F 83 E3 78 */ mr r3, r28 -/* 8015B998 001588F8 7F E5 FB 78 */ mr r5, r31 -/* 8015B99C 001588FC 38 81 00 34 */ addi r4, r1, 0x34 -/* 8015B9A0 00158900 B0 01 00 34 */ sth r0, 0x34(r1) -/* 8015B9A4 00158904 48 00 01 99 */ bl RemoveFromObjectList__17CScriptPlayerHintF9TUniqueIdR13CStateManager -/* 8015B9A8 00158908 A0 1C 00 08 */ lhz r0, 8(r28) -/* 8015B9AC 0015890C 7F E5 FB 78 */ mr r5, r31 -/* 8015B9B0 00158910 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8015B9B4 00158914 38 81 00 30 */ addi r4, r1, 0x30 -/* 8015B9B8 00158918 B0 01 00 2C */ sth r0, 0x2c(r1) -/* 8015B9BC 0015891C B0 01 00 30 */ sth r0, 0x30(r1) -/* 8015B9C0 00158920 48 12 89 B5 */ bl AddToPlayerHintRemoveList__7CPlayerF9TUniqueIdR13CStateManager -/* 8015B9C4 00158924 38 00 00 01 */ li r0, 1 -/* 8015B9C8 00158928 98 1C 00 FC */ stb r0, 0xfc(r28) -/* 8015B9CC 0015892C 48 00 00 A0 */ b lbl_8015BA6C -lbl_8015B9D0: -/* 8015B9D0 00158930 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8015B9D4 00158934 B0 1C 01 08 */ sth r0, 0x108(r28) -/* 8015B9D8 00158938 80 1C 01 04 */ lwz r0, 0x104(r28) -/* 8015B9DC 0015893C 54 00 04 63 */ rlwinm. r0, r0, 0, 0x11, 0x11 -/* 8015B9E0 00158940 41 82 00 8C */ beq lbl_8015BA6C -/* 8015B9E4 00158944 83 7C 00 2C */ lwz r27, 0x2c(r28) -/* 8015B9E8 00158948 48 00 00 6C */ b lbl_8015BA54 -lbl_8015B9EC: -/* 8015B9EC 0015894C 80 1B 00 00 */ lwz r0, 0(r27) -/* 8015B9F0 00158950 2C 00 00 12 */ cmpwi r0, 0x12 -/* 8015B9F4 00158954 40 82 00 5C */ bne lbl_8015BA50 -/* 8015B9F8 00158958 80 1B 00 08 */ lwz r0, 8(r27) -/* 8015B9FC 0015895C 7F E4 FB 78 */ mr r4, r31 -/* 8015BA00 00158960 38 61 00 28 */ addi r3, r1, 0x28 -/* 8015BA04 00158964 38 A1 00 38 */ addi r5, r1, 0x38 -/* 8015BA08 00158968 90 01 00 38 */ stw r0, 0x38(r1) -/* 8015BA0C 0015896C 4B EE C5 11 */ bl GetIdForScript__13CStateManagerCF9TEditorId -/* 8015BA10 00158970 A0 01 00 28 */ lhz r0, 0x28(r1) -/* 8015BA14 00158974 7F E3 FB 78 */ mr r3, r31 -/* 8015BA18 00158978 38 81 00 24 */ addi r4, r1, 0x24 -/* 8015BA1C 0015897C B0 1C 01 08 */ sth r0, 0x108(r28) -/* 8015BA20 00158980 A0 1C 01 08 */ lhz r0, 0x108(r28) -/* 8015BA24 00158984 B0 01 00 24 */ sth r0, 0x24(r1) -/* 8015BA28 00158988 4B EF 0B 7D */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8015BA2C 0015898C 7C 64 1B 78 */ mr r4, r3 -/* 8015BA30 00158990 38 61 00 3C */ addi r3, r1, 0x3c -/* 8015BA34 00158994 4B F5 16 B5 */ bl "__ct__32TCastToPtr<18CMetroidPrimeRelay>FP7CEntity" -/* 8015BA38 00158998 80 63 00 04 */ lwz r3, 4(r3) -/* 8015BA3C 0015899C 28 03 00 00 */ cmplwi r3, 0 -/* 8015BA40 001589A0 41 82 00 10 */ beq lbl_8015BA50 -/* 8015BA44 001589A4 A0 03 00 34 */ lhz r0, 0x34(r3) -/* 8015BA48 001589A8 B0 1C 01 08 */ sth r0, 0x108(r28) -/* 8015BA4C 001589AC 48 00 00 20 */ b lbl_8015BA6C -lbl_8015BA50: -/* 8015BA50 001589B0 3B 7B 00 0C */ addi r27, r27, 0xc -lbl_8015BA54: -/* 8015BA54 001589B4 80 1C 00 24 */ lwz r0, 0x24(r28) -/* 8015BA58 001589B8 80 7C 00 2C */ lwz r3, 0x2c(r28) -/* 8015BA5C 001589BC 1C 00 00 0C */ mulli r0, r0, 0xc -/* 8015BA60 001589C0 7C 03 02 14 */ add r0, r3, r0 -/* 8015BA64 001589C4 7C 1B 00 40 */ cmplw r27, r0 -/* 8015BA68 001589C8 40 82 FF 84 */ bne lbl_8015B9EC -lbl_8015BA6C: -/* 8015BA6C 001589CC 88 1C 00 30 */ lbz r0, 0x30(r28) -/* 8015BA70 001589D0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8015BA74 001589D4 41 82 00 98 */ beq lbl_8015BB0C -/* 8015BA78 001589D8 2C 1D 00 06 */ cmpwi r29, 6 -/* 8015BA7C 001589DC 83 7F 08 4C */ lwz r27, 0x84c(r31) -/* 8015BA80 001589E0 41 82 00 8C */ beq lbl_8015BB0C -/* 8015BA84 001589E4 40 80 00 10 */ bge lbl_8015BA94 -/* 8015BA88 001589E8 2C 1D 00 05 */ cmpwi r29, 5 -/* 8015BA8C 001589EC 40 80 00 4C */ bge lbl_8015BAD8 -/* 8015BA90 001589F0 48 00 00 7C */ b lbl_8015BB0C -lbl_8015BA94: -/* 8015BA94 001589F4 2C 1D 00 08 */ cmpwi r29, 8 -/* 8015BA98 001589F8 40 80 00 74 */ bge lbl_8015BB0C -/* 8015BA9C 001589FC A0 1E 00 00 */ lhz r0, 0(r30) -/* 8015BAA0 00158A00 7F 83 E3 78 */ mr r3, r28 -/* 8015BAA4 00158A04 38 81 00 20 */ addi r4, r1, 0x20 -/* 8015BAA8 00158A08 B0 01 00 20 */ sth r0, 0x20(r1) -/* 8015BAAC 00158A0C 48 00 01 61 */ bl AddToObjectList__17CScriptPlayerHintF9TUniqueIdR13CStateManager -/* 8015BAB0 00158A10 A0 1C 00 08 */ lhz r0, 8(r28) -/* 8015BAB4 00158A14 7F 63 DB 78 */ mr r3, r27 -/* 8015BAB8 00158A18 7F E5 FB 78 */ mr r5, r31 -/* 8015BABC 00158A1C 38 81 00 1C */ addi r4, r1, 0x1c -/* 8015BAC0 00158A20 B0 01 00 18 */ sth r0, 0x18(r1) -/* 8015BAC4 00158A24 B0 01 00 1C */ sth r0, 0x1c(r1) -/* 8015BAC8 00158A28 48 12 8A 3D */ bl AddToPlayerHintAddList__7CPlayerF9TUniqueIdR13CStateManager -/* 8015BACC 00158A2C 38 00 00 00 */ li r0, 0 -/* 8015BAD0 00158A30 98 1C 00 FC */ stb r0, 0xfc(r28) -/* 8015BAD4 00158A34 48 00 00 38 */ b lbl_8015BB0C -lbl_8015BAD8: -/* 8015BAD8 00158A38 A0 1E 00 00 */ lhz r0, 0(r30) -/* 8015BADC 00158A3C 7F 83 E3 78 */ mr r3, r28 -/* 8015BAE0 00158A40 7F E5 FB 78 */ mr r5, r31 -/* 8015BAE4 00158A44 38 81 00 14 */ addi r4, r1, 0x14 -/* 8015BAE8 00158A48 B0 01 00 14 */ sth r0, 0x14(r1) -/* 8015BAEC 00158A4C 48 00 00 51 */ bl RemoveFromObjectList__17CScriptPlayerHintF9TUniqueIdR13CStateManager -/* 8015BAF0 00158A50 A0 1C 00 08 */ lhz r0, 8(r28) -/* 8015BAF4 00158A54 7F 63 DB 78 */ mr r3, r27 -/* 8015BAF8 00158A58 7F E5 FB 78 */ mr r5, r31 -/* 8015BAFC 00158A5C 38 81 00 10 */ addi r4, r1, 0x10 -/* 8015BB00 00158A60 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8015BB04 00158A64 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8015BB08 00158A68 48 12 88 6D */ bl AddToPlayerHintRemoveList__7CPlayerF9TUniqueIdR13CStateManager -lbl_8015BB0C: -/* 8015BB0C 00158A6C A0 1E 00 00 */ lhz r0, 0(r30) -/* 8015BB10 00158A70 7F 83 E3 78 */ mr r3, r28 -/* 8015BB14 00158A74 7F A4 EB 78 */ mr r4, r29 -/* 8015BB18 00158A78 7F E6 FB 78 */ mr r6, r31 -/* 8015BB1C 00158A7C B0 01 00 08 */ sth r0, 8(r1) -/* 8015BB20 00158A80 38 A1 00 08 */ addi r5, r1, 8 -/* 8015BB24 00158A84 4B EF 7A F1 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager -/* 8015BB28 00158A88 BB 61 00 4C */ lmw r27, 0x4c(r1) -/* 8015BB2C 00158A8C 80 01 00 64 */ lwz r0, 0x64(r1) -/* 8015BB30 00158A90 7C 08 03 A6 */ mtlr r0 -/* 8015BB34 00158A94 38 21 00 60 */ addi r1, r1, 0x60 -/* 8015BB38 00158A98 4E 80 00 20 */ blr - -.global RemoveFromObjectList__17CScriptPlayerHintF9TUniqueIdR13CStateManager -RemoveFromObjectList__17CScriptPlayerHintF9TUniqueIdR13CStateManager: -/* 8015BB3C 00158A9C 80 03 00 E8 */ lwz r0, 0xe8(r3) -/* 8015BB40 00158AA0 2C 00 00 00 */ cmpwi r0, 0 -/* 8015BB44 00158AA4 4D 82 00 20 */ beqlr -/* 8015BB48 00158AA8 38 E3 00 EC */ addi r7, r3, 0xec -/* 8015BB4C 00158AAC 54 00 08 3C */ slwi r0, r0, 1 -/* 8015BB50 00158AB0 7C E6 3B 78 */ mr r6, r7 -/* 8015BB54 00158AB4 7D 07 02 14 */ add r8, r7, r0 -/* 8015BB58 00158AB8 48 00 00 08 */ b lbl_8015BB60 -lbl_8015BB5C: -/* 8015BB5C 00158ABC 38 C6 00 02 */ addi r6, r6, 2 -lbl_8015BB60: -/* 8015BB60 00158AC0 7C 06 40 40 */ cmplw r6, r8 -/* 8015BB64 00158AC4 41 82 00 14 */ beq lbl_8015BB78 -/* 8015BB68 00158AC8 A0 A6 00 00 */ lhz r5, 0(r6) -/* 8015BB6C 00158ACC A0 04 00 00 */ lhz r0, 0(r4) -/* 8015BB70 00158AD0 7C 05 00 40 */ cmplw r5, r0 -/* 8015BB74 00158AD4 40 82 FF E8 */ bne lbl_8015BB5C -lbl_8015BB78: -/* 8015BB78 00158AD8 7C 06 40 40 */ cmplw r6, r8 -/* 8015BB7C 00158ADC 40 82 00 4C */ bne lbl_8015BBC8 -/* 8015BB80 00158AE0 7C 07 38 40 */ cmplw r7, r7 -/* 8015BB84 00158AE4 4D 80 00 20 */ bltlr -/* 8015BB88 00158AE8 7C 07 40 40 */ cmplw r7, r8 -/* 8015BB8C 00158AEC 4C 80 00 20 */ bgelr -/* 8015BB90 00158AF0 7C E6 3B 78 */ mr r6, r7 -/* 8015BB94 00158AF4 48 00 00 10 */ b lbl_8015BBA4 -lbl_8015BB98: -/* 8015BB98 00158AF8 A0 06 00 02 */ lhz r0, 2(r6) -/* 8015BB9C 00158AFC B0 06 00 00 */ sth r0, 0(r6) -/* 8015BBA0 00158B00 38 C6 00 02 */ addi r6, r6, 2 -lbl_8015BBA4: -/* 8015BBA4 00158B04 80 A3 00 E8 */ lwz r5, 0xe8(r3) -/* 8015BBA8 00158B08 54 A4 08 3C */ slwi r4, r5, 1 -/* 8015BBAC 00158B0C 38 04 FF FE */ addi r0, r4, -2 -/* 8015BBB0 00158B10 7C 07 02 14 */ add r0, r7, r0 -/* 8015BBB4 00158B14 7C 06 00 40 */ cmplw r6, r0 -/* 8015BBB8 00158B18 41 80 FF E0 */ blt lbl_8015BB98 -/* 8015BBBC 00158B1C 38 05 FF FF */ addi r0, r5, -1 -/* 8015BBC0 00158B20 90 03 00 E8 */ stw r0, 0xe8(r3) -/* 8015BBC4 00158B24 4E 80 00 20 */ blr -lbl_8015BBC8: -/* 8015BBC8 00158B28 7C 06 38 40 */ cmplw r6, r7 -/* 8015BBCC 00158B2C 4D 80 00 20 */ bltlr -/* 8015BBD0 00158B30 7C 06 40 40 */ cmplw r6, r8 -/* 8015BBD4 00158B34 4C 80 00 20 */ bgelr -/* 8015BBD8 00158B38 48 00 00 10 */ b lbl_8015BBE8 -lbl_8015BBDC: -/* 8015BBDC 00158B3C A0 06 00 02 */ lhz r0, 2(r6) -/* 8015BBE0 00158B40 B0 06 00 00 */ sth r0, 0(r6) -/* 8015BBE4 00158B44 38 C6 00 02 */ addi r6, r6, 2 -lbl_8015BBE8: -/* 8015BBE8 00158B48 80 A3 00 E8 */ lwz r5, 0xe8(r3) -/* 8015BBEC 00158B4C 54 A4 08 3C */ slwi r4, r5, 1 -/* 8015BBF0 00158B50 38 04 FF FE */ addi r0, r4, -2 -/* 8015BBF4 00158B54 7C 07 02 14 */ add r0, r7, r0 -/* 8015BBF8 00158B58 7C 06 00 40 */ cmplw r6, r0 -/* 8015BBFC 00158B5C 41 80 FF E0 */ blt lbl_8015BBDC -/* 8015BC00 00158B60 38 05 FF FF */ addi r0, r5, -1 -/* 8015BC04 00158B64 90 03 00 E8 */ stw r0, 0xe8(r3) -/* 8015BC08 00158B68 4E 80 00 20 */ blr - -.global AddToObjectList__17CScriptPlayerHintF9TUniqueIdR13CStateManager -AddToObjectList__17CScriptPlayerHintF9TUniqueIdR13CStateManager: -/* 8015BC0C 00158B6C 80 03 00 E8 */ lwz r0, 0xe8(r3) -/* 8015BC10 00158B70 38 C3 00 EC */ addi r6, r3, 0xec -/* 8015BC14 00158B74 54 00 08 3C */ slwi r0, r0, 1 -/* 8015BC18 00158B78 7C E6 02 14 */ add r7, r6, r0 -/* 8015BC1C 00158B7C 48 00 00 08 */ b lbl_8015BC24 -lbl_8015BC20: -/* 8015BC20 00158B80 38 C6 00 02 */ addi r6, r6, 2 -lbl_8015BC24: -/* 8015BC24 00158B84 7C 06 38 40 */ cmplw r6, r7 -/* 8015BC28 00158B88 41 82 00 14 */ beq lbl_8015BC3C -/* 8015BC2C 00158B8C A0 A6 00 00 */ lhz r5, 0(r6) -/* 8015BC30 00158B90 A0 04 00 00 */ lhz r0, 0(r4) -/* 8015BC34 00158B94 7C 05 00 40 */ cmplw r5, r0 -/* 8015BC38 00158B98 40 82 FF E8 */ bne lbl_8015BC20 -lbl_8015BC3C: -/* 8015BC3C 00158B9C 7C 06 38 40 */ cmplw r6, r7 -/* 8015BC40 00158BA0 4C 82 00 20 */ bnelr -/* 8015BC44 00158BA4 28 07 00 00 */ cmplwi r7, 0 -/* 8015BC48 00158BA8 41 82 00 0C */ beq lbl_8015BC54 -/* 8015BC4C 00158BAC A0 04 00 00 */ lhz r0, 0(r4) -/* 8015BC50 00158BB0 B0 07 00 00 */ sth r0, 0(r7) -lbl_8015BC54: -/* 8015BC54 00158BB4 80 83 00 E8 */ lwz r4, 0xe8(r3) -/* 8015BC58 00158BB8 38 04 00 01 */ addi r0, r4, 1 -/* 8015BC5C 00158BBC 90 03 00 E8 */ stw r0, 0xe8(r3) -/* 8015BC60 00158BC0 4E 80 00 20 */ blr - -.global ClearObjectList__17CScriptPlayerHintFv -ClearObjectList__17CScriptPlayerHintFv: -/* 8015BC64 00158BC4 80 C3 00 E8 */ lwz r6, 0xe8(r3) -/* 8015BC68 00158BC8 38 80 00 00 */ li r4, 0 -/* 8015BC6C 00158BCC 2C 06 00 00 */ cmpwi r6, 0 -/* 8015BC70 00158BD0 40 81 00 40 */ ble lbl_8015BCB0 -/* 8015BC74 00158BD4 2C 06 00 08 */ cmpwi r6, 8 -/* 8015BC78 00158BD8 38 A6 FF F8 */ addi r5, r6, -8 -/* 8015BC7C 00158BDC 40 81 00 20 */ ble lbl_8015BC9C -/* 8015BC80 00158BE0 38 05 00 07 */ addi r0, r5, 7 -/* 8015BC84 00158BE4 54 00 E8 FE */ srwi r0, r0, 3 -/* 8015BC88 00158BE8 7C 09 03 A6 */ mtctr r0 -/* 8015BC8C 00158BEC 2C 05 00 00 */ cmpwi r5, 0 -/* 8015BC90 00158BF0 40 81 00 0C */ ble lbl_8015BC9C -lbl_8015BC94: -/* 8015BC94 00158BF4 38 84 00 08 */ addi r4, r4, 8 -/* 8015BC98 00158BF8 42 00 FF FC */ bdnz lbl_8015BC94 -lbl_8015BC9C: -/* 8015BC9C 00158BFC 7C 04 30 50 */ subf r0, r4, r6 -/* 8015BCA0 00158C00 7C 09 03 A6 */ mtctr r0 -/* 8015BCA4 00158C04 7C 04 30 00 */ cmpw r4, r6 -/* 8015BCA8 00158C08 40 80 00 08 */ bge lbl_8015BCB0 -lbl_8015BCAC: -/* 8015BCAC 00158C0C 42 00 00 00 */ bdnz lbl_8015BCAC -lbl_8015BCB0: -/* 8015BCB0 00158C10 38 00 00 00 */ li r0, 0 -/* 8015BCB4 00158C14 90 03 00 E8 */ stw r0, 0xe8(r3) -/* 8015BCB8 00158C18 4E 80 00 20 */ blr - -.global "__ct__17CScriptPlayerHintF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fbii" -"__ct__17CScriptPlayerHintF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fbii": -/* 8015BCBC 00158C1C 94 21 FF 00 */ stwu r1, -0x100(r1) -/* 8015BCC0 00158C20 7C 08 02 A6 */ mflr r0 -/* 8015BCC4 00158C24 90 01 01 04 */ stw r0, 0x104(r1) -/* 8015BCC8 00158C28 BF 01 00 E0 */ stmw r24, 0xe0(r1) -/* 8015BCCC 00158C2C 7C 7F 1B 78 */ mr r31, r3 -/* 8015BCD0 00158C30 7C 98 23 78 */ mr r24, r4 -/* 8015BCD4 00158C34 7C B9 2B 78 */ mr r25, r5 -/* 8015BCD8 00158C38 7C DA 33 78 */ mr r26, r6 -/* 8015BCDC 00158C3C 7C FB 3B 78 */ mr r27, r7 -/* 8015BCE0 00158C40 7D 1C 43 78 */ mr r28, r8 -/* 8015BCE4 00158C44 7D 3D 4B 78 */ mr r29, r9 -/* 8015BCE8 00158C48 7D 5E 53 78 */ mr r30, r10 -/* 8015BCEC 00158C4C 38 61 00 88 */ addi r3, r1, 0x88 -/* 8015BCF0 00158C50 4B ED EA B5 */ bl CModelDataNull__10CModelDataFv -/* 8015BCF4 00158C54 38 61 00 20 */ addi r3, r1, 0x20 -/* 8015BCF8 00158C58 4B EB F1 41 */ bl None__16CActorParametersFv -/* 8015BCFC 00158C5C A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) -/* 8015BD00 00158C60 38 00 00 00 */ li r0, 0 -/* 8015BD04 00158C64 80 AD 8C B0 */ lwz r5, lbl_805A7870@sda21(r13) -/* 8015BD08 00158C68 38 60 00 00 */ li r3, 0 -/* 8015BD0C 00158C6C B0 81 00 10 */ sth r4, 0x10(r1) -/* 8015BD10 00158C70 38 80 00 01 */ li r4, 1 -/* 8015BD14 00158C74 90 01 00 1C */ stw r0, 0x1c(r1) -/* 8015BD18 00158C78 90 01 00 18 */ stw r0, 0x18(r1) -/* 8015BD1C 00158C7C 48 22 E1 D9 */ bl __shl2i -/* 8015BD20 00158C80 80 A1 00 18 */ lwz r5, 0x18(r1) -/* 8015BD24 00158C84 39 61 00 20 */ addi r11, r1, 0x20 -/* 8015BD28 00158C88 80 C1 00 1C */ lwz r6, 0x1c(r1) -/* 8015BD2C 00158C8C 38 01 00 10 */ addi r0, r1, 0x10 -/* 8015BD30 00158C90 7C A3 1B 78 */ or r3, r5, r3 -/* 8015BD34 00158C94 A1 38 00 00 */ lhz r9, 0(r24) -/* 8015BD38 00158C98 7C C4 23 78 */ or r4, r6, r4 -/* 8015BD3C 00158C9C 90 61 00 18 */ stw r3, 0x18(r1) -/* 8015BD40 00158CA0 7F E3 FB 78 */ mr r3, r31 -/* 8015BD44 00158CA4 7F 85 E3 78 */ mr r5, r28 -/* 8015BD48 00158CA8 90 81 00 1C */ stw r4, 0x1c(r1) -/* 8015BD4C 00158CAC 7F 26 CB 78 */ mr r6, r25 -/* 8015BD50 00158CB0 7F 47 D3 78 */ mr r7, r26 -/* 8015BD54 00158CB4 7F 68 DB 78 */ mr r8, r27 -/* 8015BD58 00158CB8 B1 21 00 14 */ sth r9, 0x14(r1) -/* 8015BD5C 00158CBC 38 81 00 14 */ addi r4, r1, 0x14 -/* 8015BD60 00158CC0 39 21 00 88 */ addi r9, r1, 0x88 -/* 8015BD64 00158CC4 39 41 00 18 */ addi r10, r1, 0x18 -/* 8015BD68 00158CC8 91 61 00 08 */ stw r11, 8(r1) -/* 8015BD6C 00158CCC 90 01 00 0C */ stw r0, 0xc(r1) -/* 8015BD70 00158CD0 4B EF 9A B1 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" -/* 8015BD74 00158CD4 38 61 00 20 */ addi r3, r1, 0x20 -/* 8015BD78 00158CD8 38 80 FF FF */ li r4, -1 -/* 8015BD7C 00158CDC 4B FA A8 8D */ bl __dt__16CActorParametersFv -/* 8015BD80 00158CE0 38 61 00 88 */ addi r3, r1, 0x88 -/* 8015BD84 00158CE4 38 80 FF FF */ li r4, -1 -/* 8015BD88 00158CE8 4B FB AC C5 */ bl __dt__10CModelDataFv -/* 8015BD8C 00158CEC 3C 60 80 3E */ lis r3, lbl_803E32D8@ha -/* 8015BD90 00158CF0 38 00 00 00 */ li r0, 0 -/* 8015BD94 00158CF4 38 83 32 D8 */ addi r4, r3, lbl_803E32D8@l -/* 8015BD98 00158CF8 7F E3 FB 78 */ mr r3, r31 -/* 8015BD9C 00158CFC 90 9F 00 00 */ stw r4, 0(r31) -/* 8015BDA0 00158D00 90 1F 00 E8 */ stw r0, 0xe8(r31) -/* 8015BDA4 00158D04 98 1F 00 FC */ stb r0, 0xfc(r31) -/* 8015BDA8 00158D08 93 BF 01 00 */ stw r29, 0x100(r31) -/* 8015BDAC 00158D0C 93 DF 01 04 */ stw r30, 0x104(r31) -/* 8015BDB0 00158D10 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8015BDB4 00158D14 B0 1F 01 08 */ sth r0, 0x108(r31) -/* 8015BDB8 00158D18 BB 01 00 E0 */ lmw r24, 0xe0(r1) -/* 8015BDBC 00158D1C 80 01 01 04 */ lwz r0, 0x104(r1) -/* 8015BDC0 00158D20 7C 08 03 A6 */ mtlr r0 -/* 8015BDC4 00158D24 38 21 01 00 */ addi r1, r1, 0x100 -/* 8015BDC8 00158D28 4E 80 00 20 */ blr - -.global sub_8015bdcc -sub_8015bdcc: -/* 8015BDCC 00158D2C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8015BDD0 00158D30 7C 08 02 A6 */ mflr r0 -/* 8015BDD4 00158D34 90 01 00 24 */ stw r0, 0x24(r1) -/* 8015BDD8 00158D38 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8015BDDC 00158D3C 7C 7F 1B 78 */ mr r31, r3 -/* 8015BDE0 00158D40 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8015BDE4 00158D44 A0 63 05 9A */ lhz r3, 0x59a(r3) -/* 8015BDE8 00158D48 7C 03 00 40 */ cmplw r3, r0 -/* 8015BDEC 00158D4C 41 82 00 20 */ beq lbl_8015BE0C -/* 8015BDF0 00158D50 A0 1F 05 9A */ lhz r0, 0x59a(r31) -/* 8015BDF4 00158D54 7C 83 23 78 */ mr r3, r4 -/* 8015BDF8 00158D58 38 81 00 08 */ addi r4, r1, 8 -/* 8015BDFC 00158D5C B0 01 00 08 */ sth r0, 8(r1) -/* 8015BE00 00158D60 4B EF 04 6D */ bl FreeScriptObject__13CStateManagerF9TUniqueId -/* 8015BE04 00158D64 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8015BE08 00158D68 B0 1F 05 9A */ sth r0, 0x59a(r31) -lbl_8015BE0C: -/* 8015BE0C 00158D6C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8015BE10 00158D70 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8015BE14 00158D74 7C 08 03 A6 */ mtlr r0 -/* 8015BE18 00158D78 38 21 00 20 */ addi r1, r1, 0x20 -/* 8015BE1C 00158D7C 4E 80 00 20 */ blr - -.global AddPlatform__7CRipperFR13CStateManager -AddPlatform__7CRipperFR13CStateManager: -/* 8015BE20 00158D80 94 21 FF 10 */ stwu r1, -0xf0(r1) -/* 8015BE24 00158D84 7C 08 02 A6 */ mflr r0 -/* 8015BE28 00158D88 90 01 00 F4 */ stw r0, 0xf4(r1) -/* 8015BE2C 00158D8C BF 41 00 D8 */ stmw r26, 0xd8(r1) -/* 8015BE30 00158D90 7C 7D 1B 78 */ mr r29, r3 -/* 8015BE34 00158D94 7C 9E 23 78 */ mr r30, r4 -/* 8015BE38 00158D98 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8015BE3C 00158D9C A0 63 05 9A */ lhz r3, 0x59a(r3) -/* 8015BE40 00158DA0 7C 03 00 40 */ cmplw r3, r0 -/* 8015BE44 00158DA4 40 82 01 DC */ bne lbl_8015C020 -/* 8015BE48 00158DA8 38 61 00 1C */ addi r3, r1, 0x1c -/* 8015BE4C 00158DAC 4B EF 12 91 */ bl AllocateUniqueId__13CStateManagerFv -/* 8015BE50 00158DB0 A0 01 00 1C */ lhz r0, 0x1c(r1) -/* 8015BE54 00158DB4 38 61 00 A4 */ addi r3, r1, 0xa4 -/* 8015BE58 00158DB8 38 9D 00 34 */ addi r4, r29, 0x34 -/* 8015BE5C 00158DBC B0 1D 05 9A */ sth r0, 0x59a(r29) -/* 8015BE60 00158DC0 83 9D 00 64 */ lwz r28, 0x64(r29) -/* 8015BE64 00158DC4 48 1B 6D DD */ bl GetRotation__12CTransform4fCFv -/* 8015BE68 00158DC8 7F 84 E3 78 */ mr r4, r28 -/* 8015BE6C 00158DCC 38 61 00 74 */ addi r3, r1, 0x74 -/* 8015BE70 00158DD0 38 A1 00 A4 */ addi r5, r1, 0xa4 -/* 8015BE74 00158DD4 4B FB 99 41 */ bl GetBounds__10CModelDataCFRC12CTransform4f -/* 8015BE78 00158DD8 C0 A1 00 74 */ lfs f5, 0x74(r1) -/* 8015BE7C 00158DDC 3C 60 80 3D */ lis r3, lbl_803D0358@ha -/* 8015BE80 00158DE0 C0 81 00 78 */ lfs f4, 0x78(r1) -/* 8015BE84 00158DE4 38 83 03 58 */ addi r4, r3, lbl_803D0358@l -/* 8015BE88 00158DE8 C0 61 00 7C */ lfs f3, 0x7c(r1) -/* 8015BE8C 00158DEC 3B 80 00 00 */ li r28, 0 -/* 8015BE90 00158DF0 C0 41 00 80 */ lfs f2, 0x80(r1) -/* 8015BE94 00158DF4 3B 40 00 00 */ li r26, 0 -/* 8015BE98 00158DF8 C0 21 00 84 */ lfs f1, 0x84(r1) -/* 8015BE9C 00158DFC 3B 60 00 00 */ li r27, 0 -/* 8015BEA0 00158E00 C0 01 00 88 */ lfs f0, 0x88(r1) -/* 8015BEA4 00158E04 38 60 03 60 */ li r3, 0x360 -/* 8015BEA8 00158E08 D0 A1 00 8C */ stfs f5, 0x8c(r1) -/* 8015BEAC 00158E0C 38 A0 00 00 */ li r5, 0 -/* 8015BEB0 00158E10 D0 81 00 90 */ stfs f4, 0x90(r1) -/* 8015BEB4 00158E14 D0 61 00 94 */ stfs f3, 0x94(r1) -/* 8015BEB8 00158E18 D0 41 00 98 */ stfs f2, 0x98(r1) -/* 8015BEBC 00158E1C D0 21 00 9C */ stfs f1, 0x9c(r1) -/* 8015BEC0 00158E20 D0 01 00 A0 */ stfs f0, 0xa0(r1) -/* 8015BEC4 00158E24 48 1B 99 A9 */ bl __nw__FUlPCcPCc -/* 8015BEC8 00158E28 7C 7F 1B 79 */ or. r31, r3, r3 -/* 8015BECC 00158E2C 41 82 00 A4 */ beq lbl_8015BF70 -/* 8015BED0 00158E30 38 00 00 00 */ li r0, 0 -/* 8015BED4 00158E34 3C 60 80 57 */ lis r3, lbl_8056D410@ha -/* 8015BED8 00158E38 98 01 00 58 */ stb r0, 0x58(r1) -/* 8015BEDC 00158E3C 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l -/* 8015BEE0 00158E40 80 0D A3 88 */ lwz r0, lbl_805A8F48@sda21(r13) -/* 8015BEE4 00158E44 38 61 00 5C */ addi r3, r1, 0x5c -/* 8015BEE8 00158E48 88 FD 00 30 */ lbz r7, 0x30(r29) -/* 8015BEEC 00158E4C 38 81 00 34 */ addi r4, r1, 0x34 -/* 8015BEF0 00158E50 38 C1 00 38 */ addi r6, r1, 0x38 -/* 8015BEF4 00158E54 3B 80 00 01 */ li r28, 1 -/* 8015BEF8 00158E58 90 01 00 38 */ stw r0, 0x38(r1) -/* 8015BEFC 00158E5C 54 FB CF FE */ rlwinm r27, r7, 0x19, 0x1f, 0x1f -/* 8015BF00 00158E60 80 1D 00 04 */ lwz r0, 4(r29) -/* 8015BF04 00158E64 90 01 00 30 */ stw r0, 0x30(r1) -/* 8015BF08 00158E68 90 01 00 34 */ stw r0, 0x34(r1) -/* 8015BF0C 00158E6C 4B EF 55 79 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" -/* 8015BF10 00158E70 3C 80 80 3D */ lis r4, lbl_803D0358@ha -/* 8015BF14 00158E74 38 61 00 3C */ addi r3, r1, 0x3c -/* 8015BF18 00158E78 38 84 03 58 */ addi r4, r4, lbl_803D0358@l -/* 8015BF1C 00158E7C 3B 40 00 01 */ li r26, 1 -/* 8015BF20 00158E80 38 84 00 07 */ addi r4, r4, 7 -/* 8015BF24 00158E84 4B EA 8D 95 */ bl string_l__4rstlFPCc -/* 8015BF28 00158E88 A1 1D 00 08 */ lhz r8, 8(r29) -/* 8015BF2C 00158E8C 38 01 00 4C */ addi r0, r1, 0x4c -/* 8015BF30 00158E90 7F E3 FB 78 */ mr r3, r31 -/* 8015BF34 00158E94 7F 6A DB 78 */ mr r10, r27 -/* 8015BF38 00158E98 B1 01 00 18 */ sth r8, 0x18(r1) -/* 8015BF3C 00158E9C 38 81 00 10 */ addi r4, r1, 0x10 -/* 8015BF40 00158EA0 38 A1 00 18 */ addi r5, r1, 0x18 -/* 8015BF44 00158EA4 38 C1 00 3C */ addi r6, r1, 0x3c -/* 8015BF48 00158EA8 A1 7D 05 9A */ lhz r11, 0x59a(r29) -/* 8015BF4C 00158EAC 38 E1 00 5C */ addi r7, r1, 0x5c -/* 8015BF50 00158EB0 B1 01 00 14 */ sth r8, 0x14(r1) -/* 8015BF54 00158EB4 39 1D 00 34 */ addi r8, r29, 0x34 -/* 8015BF58 00158EB8 39 21 00 8C */ addi r9, r1, 0x8c -/* 8015BF5C 00158EBC 3B 60 00 01 */ li r27, 1 -/* 8015BF60 00158EC0 B1 61 00 10 */ sth r11, 0x10(r1) -/* 8015BF64 00158EC4 90 01 00 08 */ stw r0, 8(r1) -/* 8015BF68 00158EC8 48 0D 6C 31 */ bl "__ct__25CRipperControlledPlatformF9TUniqueId9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC6CAABoxbRCQ24rstl58optional_object<39TLockedToken<23CCollidableOBBTreeGroup>>" -/* 8015BF6C 00158ECC 7C 7F 1B 78 */ mr r31, r3 -lbl_8015BF70: -/* 8015BF70 00158ED0 7F 60 07 75 */ extsb. r0, r27 -/* 8015BF74 00158ED4 41 82 00 0C */ beq lbl_8015BF80 -/* 8015BF78 00158ED8 38 61 00 3C */ addi r3, r1, 0x3c -/* 8015BF7C 00158EDC 48 1E 1B 65 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -lbl_8015BF80: -/* 8015BF80 00158EE0 7F 40 07 75 */ extsb. r0, r26 -/* 8015BF84 00158EE4 41 82 00 44 */ beq lbl_8015BFC8 -/* 8015BF88 00158EE8 80 01 00 64 */ lwz r0, 0x64(r1) -/* 8015BF8C 00158EEC 80 61 00 6C */ lwz r3, 0x6c(r1) -/* 8015BF90 00158EF0 1C 00 00 0C */ mulli r0, r0, 0xc -/* 8015BF94 00158EF4 90 61 00 24 */ stw r3, 0x24(r1) -/* 8015BF98 00158EF8 7C 64 1B 78 */ mr r4, r3 -/* 8015BF9C 00158EFC 7C 03 02 14 */ add r0, r3, r0 -/* 8015BFA0 00158F00 90 61 00 20 */ stw r3, 0x20(r1) -/* 8015BFA4 00158F04 90 01 00 2C */ stw r0, 0x2c(r1) -/* 8015BFA8 00158F08 90 01 00 28 */ stw r0, 0x28(r1) -/* 8015BFAC 00158F0C 48 00 00 08 */ b lbl_8015BFB4 -lbl_8015BFB0: -/* 8015BFB0 00158F10 38 84 00 0C */ addi r4, r4, 0xc -lbl_8015BFB4: -/* 8015BFB4 00158F14 7C 04 00 40 */ cmplw r4, r0 -/* 8015BFB8 00158F18 40 82 FF F8 */ bne lbl_8015BFB0 -/* 8015BFBC 00158F1C 28 03 00 00 */ cmplwi r3, 0 -/* 8015BFC0 00158F20 41 82 00 08 */ beq lbl_8015BFC8 -/* 8015BFC4 00158F24 48 1B 99 6D */ bl Free__7CMemoryFPCv -lbl_8015BFC8: -/* 8015BFC8 00158F28 7F 80 07 75 */ extsb. r0, r28 -/* 8015BFCC 00158F2C 41 82 00 30 */ beq lbl_8015BFFC -/* 8015BFD0 00158F30 88 01 00 58 */ lbz r0, 0x58(r1) -/* 8015BFD4 00158F34 28 00 00 00 */ cmplwi r0, 0 -/* 8015BFD8 00158F38 41 82 00 1C */ beq lbl_8015BFF4 -/* 8015BFDC 00158F3C 34 61 00 4C */ addic. r3, r1, 0x4c -/* 8015BFE0 00158F40 41 82 00 14 */ beq lbl_8015BFF4 -/* 8015BFE4 00158F44 28 03 00 00 */ cmplwi r3, 0 -/* 8015BFE8 00158F48 41 82 00 0C */ beq lbl_8015BFF4 -/* 8015BFEC 00158F4C 38 80 00 00 */ li r4, 0 -/* 8015BFF0 00158F50 48 1E 4E 51 */ bl __dt__6CTokenFv -lbl_8015BFF4: -/* 8015BFF4 00158F54 38 00 00 00 */ li r0, 0 -/* 8015BFF8 00158F58 98 01 00 58 */ stb r0, 0x58(r1) -lbl_8015BFFC: -/* 8015BFFC 00158F5C 28 1F 00 00 */ cmplwi r31, 0 -/* 8015C000 00158F60 41 82 00 20 */ beq lbl_8015C020 -/* 8015C004 00158F64 7F C3 F3 78 */ mr r3, r30 -/* 8015C008 00158F68 7F E4 FB 78 */ mr r4, r31 -/* 8015C00C 00158F6C 4B EF 0C E9 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence -/* 8015C010 00158F70 7F E3 FB 78 */ mr r3, r31 -/* 8015C014 00158F74 7F C5 F3 78 */ mr r5, r30 -/* 8015C018 00158F78 38 80 00 12 */ li r4, 0x12 -/* 8015C01C 00158F7C 4B EF 83 35 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager -lbl_8015C020: -/* 8015C020 00158F80 BB 41 00 D8 */ lmw r26, 0xd8(r1) -/* 8015C024 00158F84 80 01 00 F4 */ lwz r0, 0xf4(r1) -/* 8015C028 00158F88 7C 08 03 A6 */ mtlr r0 -/* 8015C02C 00158F8C 38 21 00 F0 */ addi r1, r1, 0xf0 -/* 8015C030 00158F90 4E 80 00 20 */ blr - -.global sub_8015c034 -sub_8015c034: -/* 8015C034 00158F94 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8015C038 00158F98 7C 08 02 A6 */ mflr r0 -/* 8015C03C 00158F9C 90 01 00 24 */ stw r0, 0x24(r1) -/* 8015C040 00158FA0 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8015C044 00158FA4 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8015C048 00158FA8 7C 7E 1B 78 */ mr r30, r3 -/* 8015C04C 00158FAC 80 03 03 FC */ lwz r0, 0x3fc(r3) -/* 8015C050 00158FB0 2C 00 00 01 */ cmpwi r0, 1 -/* 8015C054 00158FB4 40 82 00 74 */ bne lbl_8015C0C8 -/* 8015C058 00158FB8 A0 7E 05 98 */ lhz r3, 0x598(r30) -/* 8015C05C 00158FBC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8015C060 00158FC0 7C 03 00 40 */ cmplw r3, r0 -/* 8015C064 00158FC4 41 82 00 64 */ beq lbl_8015C0C8 -/* 8015C068 00158FC8 A0 1E 05 98 */ lhz r0, 0x598(r30) -/* 8015C06C 00158FCC 7C 83 23 78 */ mr r3, r4 -/* 8015C070 00158FD0 38 81 00 08 */ addi r4, r1, 8 -/* 8015C074 00158FD4 B0 01 00 08 */ sth r0, 8(r1) -/* 8015C078 00158FD8 4B EF 04 FD */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8015C07C 00158FDC 7C 64 1B 78 */ mr r4, r3 -/* 8015C080 00158FE0 38 61 00 0C */ addi r3, r1, 0xc -/* 8015C084 00158FE4 4B F4 DA 45 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" -/* 8015C088 00158FE8 83 E3 00 04 */ lwz r31, 4(r3) -/* 8015C08C 00158FEC 28 1F 00 00 */ cmplwi r31, 0 -/* 8015C090 00158FF0 41 82 00 38 */ beq lbl_8015C0C8 -/* 8015C094 00158FF4 38 7F 00 34 */ addi r3, r31, 0x34 -/* 8015C098 00158FF8 38 9E 00 34 */ addi r4, r30, 0x34 -/* 8015C09C 00158FFC 48 1B 6A A5 */ bl __as__12CTransform4fFRC12CTransform4f -/* 8015C0A0 00159000 88 1F 00 E4 */ lbz r0, 0xe4(r31) -/* 8015C0A4 00159004 38 60 00 01 */ li r3, 1 -/* 8015C0A8 00159008 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 8015C0AC 0015900C 98 1F 00 E4 */ stb r0, 0xe4(r31) -/* 8015C0B0 00159010 88 1F 00 E4 */ lbz r0, 0xe4(r31) -/* 8015C0B4 00159014 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 8015C0B8 00159018 98 1F 00 E4 */ stb r0, 0xe4(r31) -/* 8015C0BC 0015901C 88 1F 00 E4 */ lbz r0, 0xe4(r31) -/* 8015C0C0 00159020 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d -/* 8015C0C4 00159024 98 1F 00 E4 */ stb r0, 0xe4(r31) -lbl_8015C0C8: -/* 8015C0C8 00159028 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8015C0CC 0015902C 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8015C0D0 00159030 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8015C0D4 00159034 7C 08 03 A6 */ mtlr r0 -/* 8015C0D8 00159038 38 21 00 20 */ addi r1, r1, 0x20 -/* 8015C0DC 0015903C 4E 80 00 20 */ blr - -.global sub_8015c0e0 -sub_8015c0e0: -/* 8015C0E0 00159040 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8015C0E4 00159044 7C 08 02 A6 */ mflr r0 -/* 8015C0E8 00159048 90 01 00 24 */ stw r0, 0x24(r1) -/* 8015C0EC 0015904C 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8015C0F0 00159050 7C 7F 1B 78 */ mr r31, r3 -/* 8015C0F4 00159054 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8015C0F8 00159058 A0 63 05 98 */ lhz r3, 0x598(r3) -/* 8015C0FC 0015905C 7C 03 00 40 */ cmplw r3, r0 -/* 8015C100 00159060 41 82 00 20 */ beq lbl_8015C120 -/* 8015C104 00159064 A0 1F 05 98 */ lhz r0, 0x598(r31) -/* 8015C108 00159068 7C 83 23 78 */ mr r3, r4 -/* 8015C10C 0015906C 38 81 00 08 */ addi r4, r1, 8 -/* 8015C110 00159070 B0 01 00 08 */ sth r0, 8(r1) -/* 8015C114 00159074 4B EF 01 59 */ bl FreeScriptObject__13CStateManagerF9TUniqueId -/* 8015C118 00159078 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8015C11C 0015907C B0 1F 05 98 */ sth r0, 0x598(r31) -lbl_8015C120: -/* 8015C120 00159080 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8015C124 00159084 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8015C128 00159088 7C 08 03 A6 */ mtlr r0 -/* 8015C12C 0015908C 38 21 00 20 */ addi r1, r1, 0x20 -/* 8015C130 00159090 4E 80 00 20 */ blr - -.global AddGrapplePoint__7CRipperFR13CStateManager -AddGrapplePoint__7CRipperFR13CStateManager: -/* 8015C134 00159094 94 21 FF 90 */ stwu r1, -0x70(r1) -/* 8015C138 00159098 7C 08 02 A6 */ mflr r0 -/* 8015C13C 0015909C 90 01 00 74 */ stw r0, 0x74(r1) -/* 8015C140 001590A0 BF 61 00 5C */ stmw r27, 0x5c(r1) -/* 8015C144 001590A4 7C 7D 1B 78 */ mr r29, r3 -/* 8015C148 001590A8 7C 9E 23 78 */ mr r30, r4 -/* 8015C14C 001590AC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8015C150 001590B0 A0 63 05 98 */ lhz r3, 0x598(r3) -/* 8015C154 001590B4 7C 03 00 40 */ cmplw r3, r0 -/* 8015C158 001590B8 40 82 01 10 */ bne lbl_8015C268 -/* 8015C15C 001590BC 38 61 00 0C */ addi r3, r1, 0xc -/* 8015C160 001590C0 4B EF 0F 7D */ bl AllocateUniqueId__13CStateManagerFv -/* 8015C164 001590C4 A0 01 00 0C */ lhz r0, 0xc(r1) -/* 8015C168 001590C8 3C 60 80 3D */ lis r3, lbl_803D0358@ha -/* 8015C16C 001590CC 38 83 03 58 */ addi r4, r3, lbl_803D0358@l -/* 8015C170 001590D0 3B 80 00 00 */ li r28, 0 -/* 8015C174 001590D4 B0 1D 05 98 */ sth r0, 0x598(r29) -/* 8015C178 001590D8 3B 60 00 00 */ li r27, 0 -/* 8015C17C 001590DC 38 60 01 30 */ li r3, 0x130 -/* 8015C180 001590E0 38 A0 00 00 */ li r5, 0 -/* 8015C184 001590E4 48 1B 96 E9 */ bl __nw__FUlPCcPCc -/* 8015C188 001590E8 7C 7F 1B 79 */ or. r31, r3, r3 -/* 8015C18C 001590EC 41 82 00 78 */ beq lbl_8015C204 -/* 8015C190 001590F0 80 0D A3 88 */ lwz r0, lbl_805A8F48@sda21(r13) -/* 8015C194 001590F4 3C 60 80 57 */ lis r3, lbl_8056D410@ha -/* 8015C198 001590F8 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l -/* 8015C19C 001590FC 38 81 00 24 */ addi r4, r1, 0x24 -/* 8015C1A0 00159100 90 01 00 28 */ stw r0, 0x28(r1) -/* 8015C1A4 00159104 38 61 00 3C */ addi r3, r1, 0x3c -/* 8015C1A8 00159108 38 C1 00 28 */ addi r6, r1, 0x28 -/* 8015C1AC 0015910C 80 1D 00 04 */ lwz r0, 4(r29) -/* 8015C1B0 00159110 90 01 00 20 */ stw r0, 0x20(r1) -/* 8015C1B4 00159114 90 01 00 24 */ stw r0, 0x24(r1) -/* 8015C1B8 00159118 4B EF 52 CD */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" -/* 8015C1BC 0015911C 3C 80 80 3D */ lis r4, lbl_803D0358@ha -/* 8015C1C0 00159120 38 61 00 2C */ addi r3, r1, 0x2c -/* 8015C1C4 00159124 38 84 03 58 */ addi r4, r4, lbl_803D0358@l -/* 8015C1C8 00159128 3B 80 00 01 */ li r28, 1 -/* 8015C1CC 0015912C 38 84 00 22 */ addi r4, r4, 0x22 -/* 8015C1D0 00159130 4B EA 8A E9 */ bl string_l__4rstlFPCc -/* 8015C1D4 00159134 A0 1D 05 98 */ lhz r0, 0x598(r29) -/* 8015C1D8 00159138 7F E3 FB 78 */ mr r3, r31 -/* 8015C1DC 0015913C 38 81 00 08 */ addi r4, r1, 8 -/* 8015C1E0 00159140 38 A1 00 2C */ addi r5, r1, 0x2c -/* 8015C1E4 00159144 B0 01 00 08 */ sth r0, 8(r1) -/* 8015C1E8 00159148 38 C1 00 3C */ addi r6, r1, 0x3c -/* 8015C1EC 0015914C 38 FD 00 34 */ addi r7, r29, 0x34 -/* 8015C1F0 00159150 39 3D 05 68 */ addi r9, r29, 0x568 -/* 8015C1F4 00159154 3B 60 00 01 */ li r27, 1 -/* 8015C1F8 00159158 39 00 00 01 */ li r8, 1 -/* 8015C1FC 0015915C 4B FD 37 25 */ bl "__ct__19CScriptGrapplePointF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fbRC18CGrappleParameters" -/* 8015C200 00159160 7C 7F 1B 78 */ mr r31, r3 -lbl_8015C204: -/* 8015C204 00159164 7F C3 F3 78 */ mr r3, r30 -/* 8015C208 00159168 7F E4 FB 78 */ mr r4, r31 -/* 8015C20C 0015916C 4B EF 0A E9 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence -/* 8015C210 00159170 7F 60 07 75 */ extsb. r0, r27 -/* 8015C214 00159174 41 82 00 0C */ beq lbl_8015C220 -/* 8015C218 00159178 38 61 00 2C */ addi r3, r1, 0x2c -/* 8015C21C 0015917C 48 1E 18 C5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -lbl_8015C220: -/* 8015C220 00159180 7F 80 07 75 */ extsb. r0, r28 -/* 8015C224 00159184 41 82 00 44 */ beq lbl_8015C268 -/* 8015C228 00159188 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8015C22C 0015918C 80 61 00 4C */ lwz r3, 0x4c(r1) -/* 8015C230 00159190 1C 00 00 0C */ mulli r0, r0, 0xc -/* 8015C234 00159194 90 61 00 14 */ stw r3, 0x14(r1) -/* 8015C238 00159198 7C 64 1B 78 */ mr r4, r3 -/* 8015C23C 0015919C 7C 03 02 14 */ add r0, r3, r0 -/* 8015C240 001591A0 90 61 00 10 */ stw r3, 0x10(r1) -/* 8015C244 001591A4 90 01 00 1C */ stw r0, 0x1c(r1) -/* 8015C248 001591A8 90 01 00 18 */ stw r0, 0x18(r1) -/* 8015C24C 001591AC 48 00 00 08 */ b lbl_8015C254 -lbl_8015C250: -/* 8015C250 001591B0 38 84 00 0C */ addi r4, r4, 0xc -lbl_8015C254: -/* 8015C254 001591B4 7C 04 00 40 */ cmplw r4, r0 -/* 8015C258 001591B8 40 82 FF F8 */ bne lbl_8015C250 -/* 8015C25C 001591BC 28 03 00 00 */ cmplwi r3, 0 -/* 8015C260 001591C0 41 82 00 08 */ beq lbl_8015C268 -/* 8015C264 001591C4 48 1B 96 CD */ bl Free__7CMemoryFPCv -lbl_8015C268: -/* 8015C268 001591C8 BB 61 00 5C */ lmw r27, 0x5c(r1) -/* 8015C26C 001591CC 80 01 00 74 */ lwz r0, 0x74(r1) -/* 8015C270 001591D0 7C 08 03 A6 */ mtlr r0 -/* 8015C274 001591D4 38 21 00 70 */ addi r1, r1, 0x70 -/* 8015C278 001591D8 4E 80 00 20 */ blr - -.global Patrol__7CRipperFR13CStateManager9EStateMsgf -Patrol__7CRipperFR13CStateManager9EStateMsgf: -/* 8015C27C 001591DC 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8015C280 001591E0 7C 08 02 A6 */ mflr r0 -/* 8015C284 001591E4 90 01 00 34 */ stw r0, 0x34(r1) -/* 8015C288 001591E8 DB E1 00 20 */ stfd f31, 0x20(r1) -/* 8015C28C 001591EC F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 -/* 8015C290 001591F0 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8015C294 001591F4 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8015C298 001591F8 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8015C29C 001591FC 7C 7D 1B 78 */ mr r29, r3 -/* 8015C2A0 00159200 FF E0 08 90 */ fmr f31, f1 -/* 8015C2A4 00159204 80 63 04 50 */ lwz r3, 0x450(r3) -/* 8015C2A8 00159208 38 00 00 01 */ li r0, 1 -/* 8015C2AC 0015920C C0 22 9E DC */ lfs f1, lbl_805ABBFC@sda21(r2) -/* 8015C2B0 00159210 7C 9E 23 78 */ mr r30, r4 -/* 8015C2B4 00159214 90 03 00 34 */ stw r0, 0x34(r3) -/* 8015C2B8 00159218 FC 40 08 90 */ fmr f2, f1 -/* 8015C2BC 0015921C 7C BF 2B 78 */ mr r31, r5 -/* 8015C2C0 00159220 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 8015C2C4 00159224 38 63 00 04 */ addi r3, r3, 4 -/* 8015C2C8 00159228 4B FD 55 21 */ bl SetSteeringSpeedRange__16CBodyStateCmdMgrFff -/* 8015C2CC 0015922C FC 20 F8 90 */ fmr f1, f31 -/* 8015C2D0 00159230 7F A3 EB 78 */ mr r3, r29 -/* 8015C2D4 00159234 7F C4 F3 78 */ mr r4, r30 -/* 8015C2D8 00159238 7F E5 FB 78 */ mr r5, r31 -/* 8015C2DC 0015923C 48 09 AB 99 */ bl Patrol__10CPatternedFR13CStateManager9EStateMsgf -/* 8015C2E0 00159240 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 -/* 8015C2E4 00159244 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8015C2E8 00159248 CB E1 00 20 */ lfd f31, 0x20(r1) -/* 8015C2EC 0015924C 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8015C2F0 00159250 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8015C2F4 00159254 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 8015C2F8 00159258 7C 08 03 A6 */ mtlr r0 -/* 8015C2FC 0015925C 38 21 00 30 */ addi r1, r1, 0x30 -/* 8015C300 00159260 4E 80 00 20 */ blr - -.global PathOver__7CRipperFR13CStateManagerf -PathOver__7CRipperFR13CStateManagerf: -/* 8015C304 00159264 38 60 00 00 */ li r3, 0 -/* 8015C308 00159268 4E 80 00 20 */ blr - -.global KnockBack__7CRipperFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef -KnockBack__7CRipperFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef: -/* 8015C30C 0015926C 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8015C310 00159270 7C 08 02 A6 */ mflr r0 -/* 8015C314 00159274 90 01 00 34 */ stw r0, 0x34(r1) -/* 8015C318 00159278 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8015C31C 0015927C 7C 9F 23 78 */ mr r31, r4 -/* 8015C320 00159280 93 C1 00 28 */ stw r30, 0x28(r1) -/* 8015C324 00159284 7C 7E 1B 78 */ mr r30, r3 -/* 8015C328 00159288 4B F1 E4 55 */ bl KnockBack__10CPatternedFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef -/* 8015C32C 0015928C C0 5F 00 08 */ lfs f2, 8(r31) -/* 8015C330 00159290 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 8015C334 00159294 C0 3F 00 04 */ lfs f1, 4(r31) -/* 8015C338 00159298 38 A3 AA 68 */ addi r5, r3, lbl_803DAA68@l -/* 8015C33C 0015929C C0 1F 00 00 */ lfs f0, 0(r31) -/* 8015C340 001592A0 FC 40 10 50 */ fneg f2, f2 -/* 8015C344 001592A4 FC 20 08 50 */ fneg f1, f1 -/* 8015C348 001592A8 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 8015C34C 001592AC FC 00 00 50 */ fneg f0, f0 -/* 8015C350 001592B0 3C 80 80 3E */ lis r4, lbl_803DAA44@ha -/* 8015C354 001592B4 38 C0 00 04 */ li r6, 4 -/* 8015C358 001592B8 38 00 00 01 */ li r0, 1 -/* 8015C35C 001592BC 3B E3 00 04 */ addi r31, r3, 4 -/* 8015C360 001592C0 90 A1 00 08 */ stw r5, 8(r1) -/* 8015C364 001592C4 38 A4 AA 44 */ addi r5, r4, lbl_803DAA44@l -/* 8015C368 001592C8 38 80 00 04 */ li r4, 4 -/* 8015C36C 001592CC 90 C1 00 0C */ stw r6, 0xc(r1) -/* 8015C370 001592D0 7F E3 FB 78 */ mr r3, r31 -/* 8015C374 001592D4 90 A1 00 08 */ stw r5, 8(r1) -/* 8015C378 001592D8 D0 01 00 10 */ stfs f0, 0x10(r1) -/* 8015C37C 001592DC D0 21 00 14 */ stfs f1, 0x14(r1) -/* 8015C380 001592E0 D0 41 00 18 */ stfs f2, 0x18(r1) -/* 8015C384 001592E4 90 01 00 1C */ stw r0, 0x1c(r1) -/* 8015C388 001592E8 4B FD 50 B1 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8015C38C 001592EC 80 01 00 0C */ lwz r0, 0xc(r1) -/* 8015C390 001592F0 3C 60 80 3E */ lis r3, lbl_803DAA44@ha -/* 8015C394 001592F4 38 83 AA 44 */ addi r4, r3, lbl_803DAA44@l -/* 8015C398 001592F8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 8015C39C 001592FC 90 1F 00 F8 */ stw r0, 0xf8(r31) -/* 8015C3A0 00159300 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 8015C3A4 00159304 80 A1 00 10 */ lwz r5, 0x10(r1) -/* 8015C3A8 00159308 80 61 00 14 */ lwz r3, 0x14(r1) -/* 8015C3AC 0015930C 90 BF 00 FC */ stw r5, 0xfc(r31) -/* 8015C3B0 00159310 80 A1 00 18 */ lwz r5, 0x18(r1) -/* 8015C3B4 00159314 90 7F 01 00 */ stw r3, 0x100(r31) -/* 8015C3B8 00159318 80 61 00 1C */ lwz r3, 0x1c(r1) -/* 8015C3BC 0015931C 90 BF 01 04 */ stw r5, 0x104(r31) -/* 8015C3C0 00159320 90 81 00 08 */ stw r4, 8(r1) -/* 8015C3C4 00159324 90 7F 01 08 */ stw r3, 0x108(r31) -/* 8015C3C8 00159328 90 01 00 08 */ stw r0, 8(r1) -/* 8015C3CC 0015932C 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8015C3D0 00159330 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 8015C3D4 00159334 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8015C3D8 00159338 7C 08 03 A6 */ mtlr r0 -/* 8015C3DC 0015933C 38 21 00 30 */ addi r1, r1, 0x30 -/* 8015C3E0 00159340 4E 80 00 20 */ blr - -.global GetCollisionResponseType__7CRipperFRC9CVector3fRC9CVector3fRC11CWeaponModei -GetCollisionResponseType__7CRipperFRC9CVector3fRC9CVector3fRC11CWeaponModei: -/* 8015C3E4 00159344 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015C3E8 00159348 7C 08 02 A6 */ mflr r0 -/* 8015C3EC 0015934C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015C3F0 00159350 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8015C3F4 00159354 3B E0 00 20 */ li r31, 0x20 -/* 8015C3F8 00159358 93 C1 00 08 */ stw r30, 8(r1) -/* 8015C3FC 0015935C 7C DE 33 78 */ mr r30, r6 -/* 8015C400 00159360 81 83 00 00 */ lwz r12, 0(r3) -/* 8015C404 00159364 81 8C 00 38 */ lwz r12, 0x38(r12) -/* 8015C408 00159368 7D 89 03 A6 */ mtctr r12 -/* 8015C40C 0015936C 4E 80 04 21 */ bctrl -/* 8015C410 00159370 7F C4 F3 78 */ mr r4, r30 -/* 8015C414 00159374 38 A0 00 00 */ li r5, 0 -/* 8015C418 00159378 4B FA 61 6D */ bl WeaponHits__20CDamageVulnerabilityCFRC11CWeaponModei -/* 8015C41C 0015937C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8015C420 00159380 40 82 00 08 */ bne lbl_8015C428 -/* 8015C424 00159384 3B E0 00 52 */ li r31, 0x52 -lbl_8015C428: -/* 8015C428 00159388 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015C42C 0015938C 7F E3 FB 78 */ mr r3, r31 -/* 8015C430 00159390 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8015C434 00159394 83 C1 00 08 */ lwz r30, 8(r1) -/* 8015C438 00159398 7C 08 03 A6 */ mtlr r0 -/* 8015C43C 0015939C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8015C440 001593A0 4E 80 00 20 */ blr - -.global AcceptScriptMsg__7CRipperF20EScriptObjectMessage9TUniqueIdR13CStateManager -AcceptScriptMsg__7CRipperF20EScriptObjectMessage9TUniqueIdR13CStateManager: -/* 8015C444 001593A4 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8015C448 001593A8 7C 08 02 A6 */ mflr r0 -/* 8015C44C 001593AC 90 01 00 24 */ stw r0, 0x24(r1) -/* 8015C450 001593B0 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8015C454 001593B4 7C DF 33 78 */ mr r31, r6 -/* 8015C458 001593B8 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8015C45C 001593BC 7C 9E 23 78 */ mr r30, r4 -/* 8015C460 001593C0 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8015C464 001593C4 7C 7D 1B 78 */ mr r29, r3 -/* 8015C468 001593C8 A0 05 00 00 */ lhz r0, 0(r5) -/* 8015C46C 001593CC 38 A1 00 08 */ addi r5, r1, 8 -/* 8015C470 001593D0 B0 01 00 08 */ sth r0, 8(r1) -/* 8015C474 001593D4 4B F2 07 05 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager -/* 8015C478 001593D8 2C 1E 00 04 */ cmpwi r30, 4 -/* 8015C47C 001593DC 41 82 00 C8 */ beq lbl_8015C544 -/* 8015C480 001593E0 40 80 00 10 */ bge lbl_8015C490 -/* 8015C484 001593E4 2C 1E 00 01 */ cmpwi r30, 1 -/* 8015C488 001593E8 41 82 00 A0 */ beq lbl_8015C528 -/* 8015C48C 001593EC 48 00 00 D0 */ b lbl_8015C55C -lbl_8015C490: -/* 8015C490 001593F0 2C 1E 00 22 */ cmpwi r30, 0x22 -/* 8015C494 001593F4 41 82 00 78 */ beq lbl_8015C50C -/* 8015C498 001593F8 40 80 00 C4 */ bge lbl_8015C55C -/* 8015C49C 001593FC 2C 1E 00 21 */ cmpwi r30, 0x21 -/* 8015C4A0 00159400 40 80 00 08 */ bge lbl_8015C4A8 -/* 8015C4A4 00159404 48 00 00 B8 */ b lbl_8015C55C -lbl_8015C4A8: -/* 8015C4A8 00159408 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 8015C4AC 0015940C 7F E4 FB 78 */ mr r4, r31 -/* 8015C4B0 00159410 4B FD E8 41 */ bl Activate__15CBodyControllerFR13CStateManager -/* 8015C4B4 00159414 7F A3 EB 78 */ mr r3, r29 -/* 8015C4B8 00159418 7F E5 FB 78 */ mr r5, r31 -/* 8015C4BC 0015941C 38 80 00 2B */ li r4, 0x2b -/* 8015C4C0 00159420 4B EF 7E 91 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 8015C4C4 00159424 7F A3 EB 78 */ mr r3, r29 -/* 8015C4C8 00159428 7F E5 FB 78 */ mr r5, r31 -/* 8015C4CC 0015942C 38 80 00 13 */ li r4, 0x13 -/* 8015C4D0 00159430 4B EF 7A B1 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 8015C4D4 00159434 80 1D 03 FC */ lwz r0, 0x3fc(r29) -/* 8015C4D8 00159438 2C 00 00 01 */ cmpwi r0, 1 -/* 8015C4DC 0015943C 40 82 00 20 */ bne lbl_8015C4FC -/* 8015C4E0 00159440 7F A3 EB 78 */ mr r3, r29 -/* 8015C4E4 00159444 7F E4 FB 78 */ mr r4, r31 -/* 8015C4E8 00159448 4B FF FC 4D */ bl AddGrapplePoint__7CRipperFR13CStateManager -/* 8015C4EC 0015944C 7F A3 EB 78 */ mr r3, r29 -/* 8015C4F0 00159450 7F E5 FB 78 */ mr r5, r31 -/* 8015C4F4 00159454 38 80 00 29 */ li r4, 0x29 -/* 8015C4F8 00159458 4B EF 7A 89 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager -lbl_8015C4FC: -/* 8015C4FC 0015945C 7F A3 EB 78 */ mr r3, r29 -/* 8015C500 00159460 7F E4 FB 78 */ mr r4, r31 -/* 8015C504 00159464 4B FF F9 1D */ bl AddPlatform__7CRipperFR13CStateManager -/* 8015C508 00159468 48 00 00 54 */ b lbl_8015C55C -lbl_8015C50C: -/* 8015C50C 0015946C 7F A3 EB 78 */ mr r3, r29 -/* 8015C510 00159470 7F E4 FB 78 */ mr r4, r31 -/* 8015C514 00159474 4B FF FB CD */ bl sub_8015c0e0 -/* 8015C518 00159478 7F A3 EB 78 */ mr r3, r29 -/* 8015C51C 0015947C 7F E4 FB 78 */ mr r4, r31 -/* 8015C520 00159480 4B FF F8 AD */ bl sub_8015bdcc -/* 8015C524 00159484 48 00 00 38 */ b lbl_8015C55C -lbl_8015C528: -/* 8015C528 00159488 7F A3 EB 78 */ mr r3, r29 -/* 8015C52C 0015948C 7F E4 FB 78 */ mr r4, r31 -/* 8015C530 00159490 4B FF FC 05 */ bl AddGrapplePoint__7CRipperFR13CStateManager -/* 8015C534 00159494 7F A3 EB 78 */ mr r3, r29 -/* 8015C538 00159498 7F E4 FB 78 */ mr r4, r31 -/* 8015C53C 0015949C 4B FF F8 E5 */ bl AddPlatform__7CRipperFR13CStateManager -/* 8015C540 001594A0 48 00 00 1C */ b lbl_8015C55C -lbl_8015C544: -/* 8015C544 001594A4 7F A3 EB 78 */ mr r3, r29 -/* 8015C548 001594A8 7F E4 FB 78 */ mr r4, r31 -/* 8015C54C 001594AC 4B FF FB 95 */ bl sub_8015c0e0 -/* 8015C550 001594B0 7F A3 EB 78 */ mr r3, r29 -/* 8015C554 001594B4 7F E4 FB 78 */ mr r4, r31 -/* 8015C558 001594B8 4B FF F8 75 */ bl sub_8015bdcc -lbl_8015C55C: -/* 8015C55C 001594BC 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8015C560 001594C0 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8015C564 001594C4 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8015C568 001594C8 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 8015C56C 001594CC 7C 08 03 A6 */ mtlr r0 -/* 8015C570 001594D0 38 21 00 20 */ addi r1, r1, 0x20 -/* 8015C574 001594D4 4E 80 00 20 */ blr - -.global Think__7CRipperFfR13CStateManager -Think__7CRipperFfR13CStateManager: -/* 8015C578 001594D8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8015C57C 001594DC 7C 08 02 A6 */ mflr r0 -/* 8015C580 001594E0 90 01 00 24 */ stw r0, 0x24(r1) -/* 8015C584 001594E4 DB E1 00 18 */ stfd f31, 0x18(r1) -/* 8015C588 001594E8 FF E0 08 90 */ fmr f31, f1 -/* 8015C58C 001594EC 93 E1 00 14 */ stw r31, 0x14(r1) -/* 8015C590 001594F0 7C 7F 1B 78 */ mr r31, r3 -/* 8015C594 001594F4 93 C1 00 10 */ stw r30, 0x10(r1) -/* 8015C598 001594F8 7C 9E 23 78 */ mr r30, r4 -/* 8015C59C 001594FC 88 03 00 30 */ lbz r0, 0x30(r3) -/* 8015C5A0 00159500 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8015C5A4 00159504 41 82 00 D8 */ beq lbl_8015C67C -/* 8015C5A8 00159508 4B FF FA 8D */ bl sub_8015c034 -/* 8015C5AC 0015950C 80 9E 08 4C */ lwz r4, 0x84c(r30) -/* 8015C5B0 00159510 A0 BF 05 98 */ lhz r5, 0x598(r31) -/* 8015C5B4 00159514 80 64 04 90 */ lwz r3, 0x490(r4) -/* 8015C5B8 00159518 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8015C5BC 0015951C 80 63 07 40 */ lwz r3, 0x740(r3) -/* 8015C5C0 00159520 7C 05 00 40 */ cmplw r5, r0 -/* 8015C5C4 00159524 80 63 03 34 */ lwz r3, 0x334(r3) -/* 8015C5C8 00159528 41 82 00 1C */ beq lbl_8015C5E4 -/* 8015C5CC 0015952C A0 04 03 10 */ lhz r0, 0x310(r4) -/* 8015C5D0 00159530 7C 00 28 40 */ cmplw r0, r5 -/* 8015C5D4 00159534 40 82 00 10 */ bne lbl_8015C5E4 -/* 8015C5D8 00159538 80 04 03 B8 */ lwz r0, 0x3b8(r4) -/* 8015C5DC 0015953C 2C 00 00 00 */ cmpwi r0, 0 -/* 8015C5E0 00159540 40 82 00 40 */ bne lbl_8015C620 -lbl_8015C5E4: -/* 8015C5E4 00159544 FC 20 F8 90 */ fmr f1, f31 -/* 8015C5E8 00159548 7F E3 FB 78 */ mr r3, r31 -/* 8015C5EC 0015954C 7F C4 F3 78 */ mr r4, r30 -/* 8015C5F0 00159550 4B F1 D5 29 */ bl Think__10CPatternedFfR13CStateManager -/* 8015C5F4 00159554 88 1F 05 9C */ lbz r0, 0x59c(r31) -/* 8015C5F8 00159558 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8015C5FC 0015955C 41 82 00 80 */ beq lbl_8015C67C -/* 8015C600 00159560 7F E3 FB 78 */ mr r3, r31 -/* 8015C604 00159564 38 80 00 00 */ li r4, 0 -/* 8015C608 00159568 4B EF 6D E5 */ bl SetMuted__6CActorFb -/* 8015C60C 0015956C 88 1F 05 9C */ lbz r0, 0x59c(r31) -/* 8015C610 00159570 38 60 00 00 */ li r3, 0 -/* 8015C614 00159574 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 8015C618 00159578 98 1F 05 9C */ stb r0, 0x59c(r31) -/* 8015C61C 0015957C 48 00 00 60 */ b lbl_8015C67C -lbl_8015C620: -/* 8015C620 00159580 2C 00 00 01 */ cmpwi r0, 1 -/* 8015C624 00159584 40 82 00 28 */ bne lbl_8015C64C -/* 8015C628 00159588 28 03 00 02 */ cmplwi r3, 2 -/* 8015C62C 0015958C 40 81 00 0C */ ble lbl_8015C638 -/* 8015C630 00159590 2C 03 00 03 */ cmpwi r3, 3 -/* 8015C634 00159594 40 82 00 18 */ bne lbl_8015C64C -lbl_8015C638: -/* 8015C638 00159598 FC 20 F8 90 */ fmr f1, f31 -/* 8015C63C 0015959C 7F E3 FB 78 */ mr r3, r31 -/* 8015C640 001595A0 7F C4 F3 78 */ mr r4, r30 -/* 8015C644 001595A4 4B F1 D4 D5 */ bl Think__10CPatternedFfR13CStateManager -/* 8015C648 001595A8 48 00 00 34 */ b lbl_8015C67C -lbl_8015C64C: -/* 8015C64C 001595AC 7F E3 FB 78 */ mr r3, r31 -/* 8015C650 001595B0 4B FB ED 29 */ bl Stop__13CPhysicsActorFv -/* 8015C654 001595B4 88 1F 05 9C */ lbz r0, 0x59c(r31) -/* 8015C658 001595B8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8015C65C 001595BC 40 82 00 20 */ bne lbl_8015C67C -/* 8015C660 001595C0 7F E3 FB 78 */ mr r3, r31 -/* 8015C664 001595C4 38 80 00 01 */ li r4, 1 -/* 8015C668 001595C8 4B EF 6D 85 */ bl SetMuted__6CActorFb -/* 8015C66C 001595CC 88 1F 05 9C */ lbz r0, 0x59c(r31) -/* 8015C670 001595D0 38 60 00 01 */ li r3, 1 -/* 8015C674 001595D4 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 8015C678 001595D8 98 1F 05 9C */ stb r0, 0x59c(r31) -lbl_8015C67C: -/* 8015C67C 001595DC 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8015C680 001595E0 CB E1 00 18 */ lfd f31, 0x18(r1) -/* 8015C684 001595E4 83 E1 00 14 */ lwz r31, 0x14(r1) -/* 8015C688 001595E8 83 C1 00 10 */ lwz r30, 0x10(r1) -/* 8015C68C 001595EC 7C 08 03 A6 */ mtlr r0 -/* 8015C690 001595F0 38 21 00 20 */ addi r1, r1, 0x20 -/* 8015C694 001595F4 4E 80 00 20 */ blr - -.global Accept__7CRipperFR8IVisitor -Accept__7CRipperFR8IVisitor: -/* 8015C698 001595F8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015C69C 001595FC 7C 08 02 A6 */ mflr r0 -/* 8015C6A0 00159600 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015C6A4 00159604 7C 60 1B 78 */ mr r0, r3 -/* 8015C6A8 00159608 7C 83 23 78 */ mr r3, r4 -/* 8015C6AC 0015960C 81 84 00 00 */ lwz r12, 0(r4) -/* 8015C6B0 00159610 7C 04 03 78 */ mr r4, r0 -/* 8015C6B4 00159614 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 8015C6B8 00159618 7D 89 03 A6 */ mtctr r12 -/* 8015C6BC 0015961C 4E 80 04 21 */ bctrl -/* 8015C6C0 00159620 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015C6C4 00159624 7C 08 03 A6 */ mtlr r0 -/* 8015C6C8 00159628 38 21 00 10 */ addi r1, r1, 0x10 -/* 8015C6CC 0015962C 4E 80 00 20 */ blr - -.global __dt__7CRipperFv -__dt__7CRipperFv: -/* 8015C6D0 00159630 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015C6D4 00159634 7C 08 02 A6 */ mflr r0 -/* 8015C6D8 00159638 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015C6DC 0015963C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8015C6E0 00159640 7C 9F 23 78 */ mr r31, r4 -/* 8015C6E4 00159644 93 C1 00 08 */ stw r30, 8(r1) -/* 8015C6E8 00159648 7C 7E 1B 79 */ or. r30, r3, r3 -/* 8015C6EC 0015964C 41 82 00 28 */ beq lbl_8015C714 -/* 8015C6F0 00159650 3C A0 80 3E */ lis r5, lbl_803E3348@ha -/* 8015C6F4 00159654 38 80 00 00 */ li r4, 0 -/* 8015C6F8 00159658 38 05 33 48 */ addi r0, r5, lbl_803E3348@l -/* 8015C6FC 0015965C 90 1E 00 00 */ stw r0, 0(r30) -/* 8015C700 00159660 4B F1 AE 71 */ bl __dt__10CPatternedFv -/* 8015C704 00159664 7F E0 07 35 */ extsh. r0, r31 -/* 8015C708 00159668 40 81 00 0C */ ble lbl_8015C714 -/* 8015C70C 0015966C 7F C3 F3 78 */ mr r3, r30 -/* 8015C710 00159670 48 1B 92 21 */ bl Free__7CMemoryFPCv -lbl_8015C714: -/* 8015C714 00159674 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015C718 00159678 7F C3 F3 78 */ mr r3, r30 -/* 8015C71C 0015967C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8015C720 00159680 83 C1 00 08 */ lwz r30, 8(r1) -/* 8015C724 00159684 7C 08 03 A6 */ mtlr r0 -/* 8015C728 00159688 38 21 00 10 */ addi r1, r1, 0x10 -/* 8015C72C 0015968C 4E 80 00 20 */ blr - -.global "__ct__7CRipperF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersRC18CGrappleParameters" -"__ct__7CRipperF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersRC18CGrappleParameters": -/* 8015C730 00159690 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 8015C734 00159694 7C 08 02 A6 */ mflr r0 -/* 8015C738 00159698 39 60 00 01 */ li r11, 1 -/* 8015C73C 0015969C 90 01 00 64 */ stw r0, 0x64(r1) -/* 8015C740 001596A0 81 81 00 68 */ lwz r12, 0x68(r1) -/* 8015C744 001596A4 BF 61 00 4C */ stmw r27, 0x4c(r1) -/* 8015C748 001596A8 7C DB 33 78 */ mr r27, r6 -/* 8015C74C 001596AC 7C FC 3B 78 */ mr r28, r7 -/* 8015C750 001596B0 7D 1E 43 78 */ mr r30, r8 -/* 8015C754 001596B4 7C A6 2B 78 */ mr r6, r5 -/* 8015C758 001596B8 83 A1 00 6C */ lwz r29, 0x6c(r1) -/* 8015C75C 001596BC 7C 7F 1B 78 */ mr r31, r3 -/* 8015C760 001596C0 7F 67 DB 78 */ mr r7, r27 -/* 8015C764 001596C4 7F 88 E3 78 */ mr r8, r28 -/* 8015C768 001596C8 38 A1 00 20 */ addi r5, r1, 0x20 -/* 8015C76C 001596CC A0 04 00 00 */ lhz r0, 0(r4) -/* 8015C770 001596D0 7D 24 4B 78 */ mr r4, r9 -/* 8015C774 001596D4 7F C9 F3 78 */ mr r9, r30 -/* 8015C778 001596D8 B0 01 00 20 */ sth r0, 0x20(r1) -/* 8015C77C 001596DC 38 00 00 03 */ li r0, 3 -/* 8015C780 001596E0 91 41 00 08 */ stw r10, 8(r1) -/* 8015C784 001596E4 7C 8A 23 78 */ mr r10, r4 -/* 8015C788 001596E8 38 80 00 1F */ li r4, 0x1f -/* 8015C78C 001596EC 91 61 00 0C */ stw r11, 0xc(r1) -/* 8015C790 001596F0 91 61 00 10 */ stw r11, 0x10(r1) -/* 8015C794 001596F4 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015C798 001596F8 91 81 00 18 */ stw r12, 0x18(r1) -/* 8015C79C 001596FC 91 61 00 1C */ stw r11, 0x1c(r1) -/* 8015C7A0 00159700 4B F2 0C B1 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" -/* 8015C7A4 00159704 3C 60 80 3E */ lis r3, lbl_803E3348@ha -/* 8015C7A8 00159708 38 A0 00 00 */ li r5, 0 -/* 8015C7AC 0015970C 38 03 33 48 */ addi r0, r3, lbl_803E3348@l -/* 8015C7B0 00159710 38 80 00 01 */ li r4, 1 -/* 8015C7B4 00159714 90 1F 00 00 */ stw r0, 0(r31) -/* 8015C7B8 00159718 38 60 00 00 */ li r3, 0 -/* 8015C7BC 0015971C C0 1D 00 00 */ lfs f0, 0(r29) -/* 8015C7C0 00159720 D0 1F 05 68 */ stfs f0, 0x568(r31) -/* 8015C7C4 00159724 C0 1D 00 04 */ lfs f0, 4(r29) -/* 8015C7C8 00159728 D0 1F 05 6C */ stfs f0, 0x56c(r31) -/* 8015C7CC 0015972C C0 1D 00 08 */ lfs f0, 8(r29) -/* 8015C7D0 00159730 D0 1F 05 70 */ stfs f0, 0x570(r31) -/* 8015C7D4 00159734 C0 1D 00 0C */ lfs f0, 0xc(r29) -/* 8015C7D8 00159738 D0 1F 05 74 */ stfs f0, 0x574(r31) -/* 8015C7DC 0015973C C0 1D 00 10 */ lfs f0, 0x10(r29) -/* 8015C7E0 00159740 D0 1F 05 78 */ stfs f0, 0x578(r31) -/* 8015C7E4 00159744 C0 1D 00 14 */ lfs f0, 0x14(r29) -/* 8015C7E8 00159748 D0 1F 05 7C */ stfs f0, 0x57c(r31) -/* 8015C7EC 0015974C C0 1D 00 18 */ lfs f0, 0x18(r29) -/* 8015C7F0 00159750 D0 1F 05 80 */ stfs f0, 0x580(r31) -/* 8015C7F4 00159754 C0 1D 00 1C */ lfs f0, 0x1c(r29) -/* 8015C7F8 00159758 D0 1F 05 84 */ stfs f0, 0x584(r31) -/* 8015C7FC 0015975C C0 1D 00 20 */ lfs f0, 0x20(r29) -/* 8015C800 00159760 D0 1F 05 88 */ stfs f0, 0x588(r31) -/* 8015C804 00159764 C0 1D 00 24 */ lfs f0, 0x24(r29) -/* 8015C808 00159768 D0 1F 05 8C */ stfs f0, 0x58c(r31) -/* 8015C80C 0015976C C0 1D 00 28 */ lfs f0, 0x28(r29) -/* 8015C810 00159770 D0 1F 05 90 */ stfs f0, 0x590(r31) -/* 8015C814 00159774 88 1D 00 2C */ lbz r0, 0x2c(r29) -/* 8015C818 00159778 98 1F 05 94 */ stb r0, 0x594(r31) -/* 8015C81C 0015977C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8015C820 00159780 B0 1F 05 98 */ sth r0, 0x598(r31) -/* 8015C824 00159784 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8015C828 00159788 B0 1F 05 9A */ sth r0, 0x59a(r31) -/* 8015C82C 0015978C 88 1F 05 9C */ lbz r0, 0x59c(r31) -/* 8015C830 00159790 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 -/* 8015C834 00159794 98 1F 05 9C */ stb r0, 0x59c(r31) -/* 8015C838 00159798 80 AD 8C BC */ lwz r5, lbl_805A787C@sda21(r13) -/* 8015C83C 0015979C 48 22 D6 B9 */ bl __shl2i -/* 8015C840 001597A0 80 AD 8C C0 */ lwz r5, lbl_805A7880@sda21(r13) -/* 8015C844 001597A4 7C 9D 23 78 */ mr r29, r4 -/* 8015C848 001597A8 7C 7E 1B 78 */ mr r30, r3 -/* 8015C84C 001597AC 38 60 00 00 */ li r3, 0 -/* 8015C850 001597B0 38 80 00 01 */ li r4, 1 -/* 8015C854 001597B4 48 22 D6 A1 */ bl __shl2i -/* 8015C858 001597B8 80 AD 8C C4 */ lwz r5, lbl_805A7884@sda21(r13) -/* 8015C85C 001597BC 7F BD 23 78 */ or r29, r29, r4 -/* 8015C860 001597C0 7F DE 1B 78 */ or r30, r30, r3 -/* 8015C864 001597C4 38 60 00 00 */ li r3, 0 -/* 8015C868 001597C8 38 80 00 01 */ li r4, 1 -/* 8015C86C 001597CC 48 22 D6 89 */ bl __shl2i -/* 8015C870 001597D0 80 AD 8C B8 */ lwz r5, lbl_805A7878@sda21(r13) -/* 8015C874 001597D4 7F BD 23 78 */ or r29, r29, r4 -/* 8015C878 001597D8 7F DE 1B 78 */ or r30, r30, r3 -/* 8015C87C 001597DC 38 60 00 00 */ li r3, 0 -/* 8015C880 001597E0 38 80 00 01 */ li r4, 1 -/* 8015C884 001597E4 48 22 D6 71 */ bl __shl2i -/* 8015C888 001597E8 38 00 00 03 */ li r0, 3 -/* 8015C88C 001597EC 90 81 00 2C */ stw r4, 0x2c(r1) -/* 8015C890 001597F0 38 81 00 28 */ addi r4, r1, 0x28 -/* 8015C894 001597F4 90 61 00 28 */ stw r3, 0x28(r1) -/* 8015C898 001597F8 7F E3 FB 78 */ mr r3, r31 -/* 8015C89C 001597FC 93 A1 00 34 */ stw r29, 0x34(r1) -/* 8015C8A0 00159800 93 C1 00 30 */ stw r30, 0x30(r1) -/* 8015C8A4 00159804 90 01 00 38 */ stw r0, 0x38(r1) -/* 8015C8A8 00159808 4B EF 6F F9 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter -/* 8015C8AC 0015980C 38 7F 04 60 */ addi r3, r31, 0x460 -/* 8015C8B0 00159810 38 80 00 00 */ li r4, 0 -/* 8015C8B4 00159814 48 0D 74 B1 */ bl SetAutoResetImpulse__20CKnockBackControllerFb -/* 8015C8B8 00159818 38 7F 04 60 */ addi r3, r31, 0x460 -/* 8015C8BC 0015981C 38 80 00 01 */ li r4, 1 -/* 8015C8C0 00159820 38 A0 00 02 */ li r5, 2 -/* 8015C8C4 00159824 48 0D 74 D1 */ bl SetAnimationStateRange__20CKnockBackControllerF24EKnockBackAnimationState24EKnockBackAnimationState -/* 8015C8C8 00159828 7F E3 FB 78 */ mr r3, r31 -/* 8015C8CC 0015982C BB 61 00 4C */ lmw r27, 0x4c(r1) -/* 8015C8D0 00159830 80 01 00 64 */ lwz r0, 0x64(r1) -/* 8015C8D4 00159834 7C 08 03 A6 */ mtlr r0 -/* 8015C8D8 00159838 38 21 00 60 */ addi r1, r1, 0x60 -/* 8015C8DC 0015983C 4E 80 00 20 */ blr - -.global GetSomething2__16CCameraShakeDataFv -GetSomething2__16CCameraShakeDataFv: -/* 8015C8E0 00159840 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8015C8E4 00159844 7C 08 02 A6 */ mflr r0 -/* 8015C8E8 00159848 90 01 00 24 */ stw r0, 0x24(r1) -/* 8015C8EC 0015984C DB E1 00 10 */ stfd f31, 0x10(r1) -/* 8015C8F0 00159850 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 -/* 8015C8F4 00159854 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8015C8F8 00159858 80 03 00 0C */ lwz r0, 0xc(r3) -/* 8015C8FC 0015985C 7C 7F 1B 78 */ mr r31, r3 -/* 8015C900 00159860 C3 E2 9E E0 */ lfs f31, lbl_805ABC00@sda21(r2) -/* 8015C904 00159864 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 8015C908 00159868 41 82 00 10 */ beq lbl_8015C918 -/* 8015C90C 0015986C 38 7F 00 28 */ addi r3, r31, 0x28 -/* 8015C910 00159870 48 00 09 BD */ bl GetSomething__17SCameraShakePointFv -/* 8015C914 00159874 FF E0 08 90 */ fmr f31, f1 -lbl_8015C918: -/* 8015C918 00159878 80 1F 00 48 */ lwz r0, 0x48(r31) -/* 8015C91C 0015987C 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 8015C920 00159880 41 82 00 20 */ beq lbl_8015C940 -/* 8015C924 00159884 38 7F 00 64 */ addi r3, r31, 0x64 -/* 8015C928 00159888 48 00 09 A5 */ bl GetSomething__17SCameraShakePointFv -/* 8015C92C 0015988C FC 01 F8 40 */ fcmpo cr0, f1, f31 -/* 8015C930 00159890 40 81 00 10 */ ble lbl_8015C940 -/* 8015C934 00159894 38 7F 00 64 */ addi r3, r31, 0x64 -/* 8015C938 00159898 48 00 09 95 */ bl GetSomething__17SCameraShakePointFv -/* 8015C93C 0015989C FF E0 08 90 */ fmr f31, f1 -lbl_8015C940: -/* 8015C940 001598A0 80 1F 00 84 */ lwz r0, 0x84(r31) -/* 8015C944 001598A4 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 8015C948 001598A8 41 82 00 20 */ beq lbl_8015C968 -/* 8015C94C 001598AC 38 7F 00 A0 */ addi r3, r31, 0xa0 -/* 8015C950 001598B0 48 00 09 7D */ bl GetSomething__17SCameraShakePointFv -/* 8015C954 001598B4 FC 01 F8 40 */ fcmpo cr0, f1, f31 -/* 8015C958 001598B8 40 81 00 10 */ ble lbl_8015C968 -/* 8015C95C 001598BC 38 7F 00 A0 */ addi r3, r31, 0xa0 -/* 8015C960 001598C0 48 00 09 6D */ bl GetSomething__17SCameraShakePointFv -/* 8015C964 001598C4 FF E0 08 90 */ fmr f31, f1 -lbl_8015C968: -/* 8015C968 001598C8 FC 20 F8 90 */ fmr f1, f31 -/* 8015C96C 001598CC E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 -/* 8015C970 001598D0 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8015C974 001598D4 CB E1 00 10 */ lfd f31, 0x10(r1) -/* 8015C978 001598D8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8015C97C 001598DC 7C 08 03 A6 */ mtlr r0 -/* 8015C980 001598E0 38 21 00 20 */ addi r1, r1, 0x20 -/* 8015C984 001598E4 4E 80 00 20 */ blr - -.global GetSomething__16CCameraShakeDataFv -GetSomething__16CCameraShakeDataFv: -/* 8015C988 001598E8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8015C98C 001598EC 7C 08 02 A6 */ mflr r0 -/* 8015C990 001598F0 90 01 00 24 */ stw r0, 0x24(r1) -/* 8015C994 001598F4 DB E1 00 10 */ stfd f31, 0x10(r1) -/* 8015C998 001598F8 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 -/* 8015C99C 001598FC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8015C9A0 00159900 80 03 00 0C */ lwz r0, 0xc(r3) -/* 8015C9A4 00159904 7C 7F 1B 78 */ mr r31, r3 -/* 8015C9A8 00159908 C3 E2 9E E0 */ lfs f31, lbl_805ABC00@sda21(r2) -/* 8015C9AC 0015990C 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 8015C9B0 00159910 41 82 00 10 */ beq lbl_8015C9C0 -/* 8015C9B4 00159914 38 7F 00 10 */ addi r3, r31, 0x10 -/* 8015C9B8 00159918 48 00 09 15 */ bl GetSomething__17SCameraShakePointFv -/* 8015C9BC 0015991C FF E0 08 90 */ fmr f31, f1 -lbl_8015C9C0: -/* 8015C9C0 00159920 80 1F 00 48 */ lwz r0, 0x48(r31) -/* 8015C9C4 00159924 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 8015C9C8 00159928 41 82 00 20 */ beq lbl_8015C9E8 -/* 8015C9CC 0015992C 38 7F 00 4C */ addi r3, r31, 0x4c -/* 8015C9D0 00159930 48 00 08 FD */ bl GetSomething__17SCameraShakePointFv -/* 8015C9D4 00159934 FC 01 F8 40 */ fcmpo cr0, f1, f31 -/* 8015C9D8 00159938 40 81 00 10 */ ble lbl_8015C9E8 -/* 8015C9DC 0015993C 38 7F 00 4C */ addi r3, r31, 0x4c -/* 8015C9E0 00159940 48 00 08 ED */ bl GetSomething__17SCameraShakePointFv -/* 8015C9E4 00159944 FF E0 08 90 */ fmr f31, f1 -lbl_8015C9E8: -/* 8015C9E8 00159948 80 1F 00 84 */ lwz r0, 0x84(r31) -/* 8015C9EC 0015994C 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 8015C9F0 00159950 41 82 00 20 */ beq lbl_8015CA10 -/* 8015C9F4 00159954 38 7F 00 88 */ addi r3, r31, 0x88 -/* 8015C9F8 00159958 48 00 08 D5 */ bl GetSomething__17SCameraShakePointFv -/* 8015C9FC 0015995C FC 01 F8 40 */ fcmpo cr0, f1, f31 -/* 8015CA00 00159960 40 81 00 10 */ ble lbl_8015CA10 -/* 8015CA04 00159964 38 7F 00 88 */ addi r3, r31, 0x88 -/* 8015CA08 00159968 48 00 08 C5 */ bl GetSomething__17SCameraShakePointFv -/* 8015CA0C 0015996C FF E0 08 90 */ fmr f31, f1 -lbl_8015CA10: -/* 8015CA10 00159970 FC 20 F8 90 */ fmr f1, f31 -/* 8015CA14 00159974 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 -/* 8015CA18 00159978 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8015CA1C 0015997C CB E1 00 10 */ lfd f31, 0x10(r1) -/* 8015CA20 00159980 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8015CA24 00159984 7C 08 03 A6 */ mtlr r0 -/* 8015CA28 00159988 38 21 00 20 */ addi r1, r1, 0x20 -/* 8015CA2C 0015998C 4E 80 00 20 */ blr - -.global __ct__16CCameraShakeDataFR12CInputStream -__ct__16CCameraShakeDataFR12CInputStream: -/* 8015CA30 00159990 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015CA34 00159994 7C 08 02 A6 */ mflr r0 -/* 8015CA38 00159998 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015CA3C 0015999C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8015CA40 001599A0 7C 9F 23 78 */ mr r31, r4 -/* 8015CA44 001599A4 93 C1 00 08 */ stw r30, 8(r1) -/* 8015CA48 001599A8 7C 7E 1B 78 */ mr r30, r3 -/* 8015CA4C 001599AC 7F E3 FB 78 */ mr r3, r31 -/* 8015CA50 001599B0 48 1E 22 35 */ bl ReadLong__12CInputStreamFv -/* 8015CA54 001599B4 7F E3 FB 78 */ mr r3, r31 -/* 8015CA58 001599B8 48 1E 21 D1 */ bl ReadFloat__12CInputStreamFv -/* 8015CA5C 001599BC 7F E3 FB 78 */ mr r3, r31 -/* 8015CA60 001599C0 48 1E 21 C9 */ bl ReadFloat__12CInputStreamFv -/* 8015CA64 001599C4 7F E3 FB 78 */ mr r3, r31 -/* 8015CA68 001599C8 48 1E 21 C1 */ bl ReadFloat__12CInputStreamFv -/* 8015CA6C 001599CC 7F E3 FB 78 */ mr r3, r31 -/* 8015CA70 001599D0 48 1E 21 B9 */ bl ReadFloat__12CInputStreamFv -/* 8015CA74 001599D4 7F E3 FB 78 */ mr r3, r31 -/* 8015CA78 001599D8 48 1E 21 B1 */ bl ReadFloat__12CInputStreamFv -/* 8015CA7C 001599DC 7F E3 FB 78 */ mr r3, r31 -/* 8015CA80 001599E0 48 1E 21 A9 */ bl ReadFloat__12CInputStreamFv -/* 8015CA84 001599E4 7F E3 FB 78 */ mr r3, r31 -/* 8015CA88 001599E8 48 1E 21 A1 */ bl ReadFloat__12CInputStreamFv -/* 8015CA8C 001599EC 7F E3 FB 78 */ mr r3, r31 -/* 8015CA90 001599F0 48 1E 22 4D */ bl ReadBool__12CInputStreamFv -/* 8015CA94 001599F4 C0 22 9E E4 */ lfs f1, lbl_805ABC04@sda21(r2) -/* 8015CA98 001599F8 7F C3 F3 78 */ mr r3, r30 -/* 8015CA9C 001599FC C0 42 9E E8 */ lfs f2, lbl_805ABC08@sda21(r2) -/* 8015CAA0 00159A00 48 00 11 15 */ bl BuildProjectileCameraShake__16CCameraShakeDataFff -/* 8015CAA4 00159A04 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015CAA8 00159A08 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8015CAAC 00159A0C 83 C1 00 08 */ lwz r30, 8(r1) -/* 8015CAB0 00159A10 7C 08 03 A6 */ mtlr r0 -/* 8015CAB4 00159A14 38 21 00 10 */ addi r1, r1, 0x10 -/* 8015CAB8 00159A18 4E 80 00 20 */ blr - -.global LoadCameraShakeData__FR12CInputStream -LoadCameraShakeData__FR12CInputStream: -/* 8015CABC 00159A1C 94 21 FE 30 */ stwu r1, -0x1d0(r1) -/* 8015CAC0 00159A20 7C 08 02 A6 */ mflr r0 -/* 8015CAC4 00159A24 90 01 01 D4 */ stw r0, 0x1d4(r1) -/* 8015CAC8 00159A28 DB E1 01 C0 */ stfd f31, 0x1c0(r1) -/* 8015CACC 00159A2C F3 E1 01 C8 */ psq_st f31, 456(r1), 0, qr0 -/* 8015CAD0 00159A30 DB C1 01 B0 */ stfd f30, 0x1b0(r1) -/* 8015CAD4 00159A34 F3 C1 01 B8 */ psq_st f30, 440(r1), 0, qr0 -/* 8015CAD8 00159A38 DB A1 01 A0 */ stfd f29, 0x1a0(r1) -/* 8015CADC 00159A3C F3 A1 01 A8 */ psq_st f29, 424(r1), 0, qr0 -/* 8015CAE0 00159A40 DB 81 01 90 */ stfd f28, 0x190(r1) -/* 8015CAE4 00159A44 F3 81 01 98 */ psq_st f28, 408(r1), 0, qr0 -/* 8015CAE8 00159A48 93 E1 01 8C */ stw r31, 0x18c(r1) -/* 8015CAEC 00159A4C 93 C1 01 88 */ stw r30, 0x188(r1) -/* 8015CAF0 00159A50 7C 9F 23 78 */ mr r31, r4 -/* 8015CAF4 00159A54 7C 7E 1B 78 */ mr r30, r3 -/* 8015CAF8 00159A58 7F E3 FB 78 */ mr r3, r31 -/* 8015CAFC 00159A5C 48 1E 21 2D */ bl ReadFloat__12CInputStreamFv -/* 8015CB00 00159A60 FF C0 08 90 */ fmr f30, f1 -/* 8015CB04 00159A64 7F E3 FB 78 */ mr r3, r31 -/* 8015CB08 00159A68 48 1E 21 21 */ bl ReadFloat__12CInputStreamFv -/* 8015CB0C 00159A6C 7F E3 FB 78 */ mr r3, r31 -/* 8015CB10 00159A70 48 1E 21 19 */ bl ReadFloat__12CInputStreamFv -/* 8015CB14 00159A74 FF 80 08 90 */ fmr f28, f1 -/* 8015CB18 00159A78 7F E3 FB 78 */ mr r3, r31 -/* 8015CB1C 00159A7C 48 1E 21 0D */ bl ReadFloat__12CInputStreamFv -/* 8015CB20 00159A80 7F E3 FB 78 */ mr r3, r31 -/* 8015CB24 00159A84 48 1E 21 05 */ bl ReadFloat__12CInputStreamFv -/* 8015CB28 00159A88 FF E0 08 90 */ fmr f31, f1 -/* 8015CB2C 00159A8C 7F E3 FB 78 */ mr r3, r31 -/* 8015CB30 00159A90 48 1E 20 F9 */ bl ReadFloat__12CInputStreamFv -/* 8015CB34 00159A94 7F E3 FB 78 */ mr r3, r31 -/* 8015CB38 00159A98 48 1E 20 F1 */ bl ReadFloat__12CInputStreamFv -/* 8015CB3C 00159A9C FF A0 08 90 */ fmr f29, f1 -/* 8015CB40 00159AA0 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) -/* 8015CB44 00159AA4 C0 02 9E EC */ lfs f0, lbl_805ABC0C@sda21(r2) -/* 8015CB48 00159AA8 38 61 00 80 */ addi r3, r1, 0x80 -/* 8015CB4C 00159AAC FC 40 08 90 */ fmr f2, f1 -/* 8015CB50 00159AB0 38 80 00 00 */ li r4, 0 -/* 8015CB54 00159AB4 EC 80 07 B2 */ fmuls f4, f0, f30 -/* 8015CB58 00159AB8 FC 60 E8 90 */ fmr f3, f29 -/* 8015CB5C 00159ABC 48 00 09 49 */ bl __ct__17SCameraShakePointFiffff -/* 8015CB60 00159AC0 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) -/* 8015CB64 00159AC4 FC 60 E8 90 */ fmr f3, f29 -/* 8015CB68 00159AC8 C0 02 9E EC */ lfs f0, lbl_805ABC0C@sda21(r2) -/* 8015CB6C 00159ACC 38 61 00 68 */ addi r3, r1, 0x68 -/* 8015CB70 00159AD0 FC 40 08 90 */ fmr f2, f1 -/* 8015CB74 00159AD4 38 80 00 00 */ li r4, 0 -/* 8015CB78 00159AD8 EC 80 07 32 */ fmuls f4, f0, f28 -/* 8015CB7C 00159ADC 48 00 09 29 */ bl __ct__17SCameraShakePointFiffff -/* 8015CB80 00159AE0 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) -/* 8015CB84 00159AE4 FC 60 E8 90 */ fmr f3, f29 -/* 8015CB88 00159AE8 C0 02 9E EC */ lfs f0, lbl_805ABC0C@sda21(r2) -/* 8015CB8C 00159AEC 38 61 00 50 */ addi r3, r1, 0x50 -/* 8015CB90 00159AF0 FC 40 08 90 */ fmr f2, f1 -/* 8015CB94 00159AF4 38 80 00 00 */ li r4, 0 -/* 8015CB98 00159AF8 EC 80 07 F2 */ fmuls f4, f0, f31 -/* 8015CB9C 00159AFC 48 00 09 09 */ bl __ct__17SCameraShakePointFiffff -/* 8015CBA0 00159B00 C0 02 9E E4 */ lfs f0, lbl_805ABC04@sda21(r2) -/* 8015CBA4 00159B04 38 61 00 38 */ addi r3, r1, 0x38 -/* 8015CBA8 00159B08 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) -/* 8015CBAC 00159B0C 38 80 00 00 */ li r4, 0 -/* 8015CBB0 00159B10 EF 80 07 72 */ fmuls f28, f0, f29 -/* 8015CBB4 00159B14 C0 82 9E F0 */ lfs f4, lbl_805ABC10@sda21(r2) -/* 8015CBB8 00159B18 FC 40 08 90 */ fmr f2, f1 -/* 8015CBBC 00159B1C FC 60 E0 90 */ fmr f3, f28 -/* 8015CBC0 00159B20 48 00 08 E5 */ bl __ct__17SCameraShakePointFiffff -/* 8015CBC4 00159B24 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) -/* 8015CBC8 00159B28 FC 60 E0 90 */ fmr f3, f28 -/* 8015CBCC 00159B2C 38 61 00 20 */ addi r3, r1, 0x20 -/* 8015CBD0 00159B30 38 80 00 00 */ li r4, 0 -/* 8015CBD4 00159B34 FC 40 08 90 */ fmr f2, f1 -/* 8015CBD8 00159B38 FC 80 08 90 */ fmr f4, f1 -/* 8015CBDC 00159B3C 48 00 08 C9 */ bl __ct__17SCameraShakePointFiffff -/* 8015CBE0 00159B40 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) -/* 8015CBE4 00159B44 FC 60 E0 90 */ fmr f3, f28 -/* 8015CBE8 00159B48 C0 82 9E F0 */ lfs f4, lbl_805ABC10@sda21(r2) -/* 8015CBEC 00159B4C 38 61 00 08 */ addi r3, r1, 8 -/* 8015CBF0 00159B50 FC 40 08 90 */ fmr f2, f1 -/* 8015CBF4 00159B54 38 80 00 00 */ li r4, 0 -/* 8015CBF8 00159B58 48 00 08 AD */ bl __ct__17SCameraShakePointFiffff -/* 8015CBFC 00159B5C 38 61 01 4C */ addi r3, r1, 0x14c -/* 8015CC00 00159B60 38 A1 00 80 */ addi r5, r1, 0x80 -/* 8015CC04 00159B64 38 C1 00 38 */ addi r6, r1, 0x38 -/* 8015CC08 00159B68 38 80 00 01 */ li r4, 1 -/* 8015CC0C 00159B6C 48 00 06 45 */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint -/* 8015CC10 00159B70 38 61 00 98 */ addi r3, r1, 0x98 -/* 8015CC14 00159B74 48 00 05 1D */ bl __ct__22CCameraShakerComponentFv -/* 8015CC18 00159B78 80 81 00 9C */ lwz r4, 0x9c(r1) -/* 8015CC1C 00159B7C 3C A0 80 3E */ lis r5, lbl_803D8EA8@ha -/* 8015CC20 00159B80 80 61 00 A0 */ lwz r3, 0xa0(r1) -/* 8015CC24 00159B84 38 A5 8E A8 */ addi r5, r5, lbl_803D8EA8@l -/* 8015CC28 00159B88 C1 41 00 A4 */ lfs f10, 0xa4(r1) -/* 8015CC2C 00159B8C 34 01 00 98 */ addic. r0, r1, 0x98 -/* 8015CC30 00159B90 C1 21 00 A8 */ lfs f9, 0xa8(r1) -/* 8015CC34 00159B94 C1 01 00 AC */ lfs f8, 0xac(r1) -/* 8015CC38 00159B98 C0 E1 00 B0 */ lfs f7, 0xb0(r1) -/* 8015CC3C 00159B9C C0 C1 00 B4 */ lfs f6, 0xb4(r1) -/* 8015CC40 00159BA0 80 01 00 B8 */ lwz r0, 0xb8(r1) -/* 8015CC44 00159BA4 C0 A1 00 BC */ lfs f5, 0xbc(r1) -/* 8015CC48 00159BA8 C0 81 00 C0 */ lfs f4, 0xc0(r1) -/* 8015CC4C 00159BAC C0 61 00 C4 */ lfs f3, 0xc4(r1) -/* 8015CC50 00159BB0 C0 41 00 C8 */ lfs f2, 0xc8(r1) -/* 8015CC54 00159BB4 C0 21 00 CC */ lfs f1, 0xcc(r1) -/* 8015CC58 00159BB8 C0 01 00 D0 */ lfs f0, 0xd0(r1) -/* 8015CC5C 00159BBC 90 A1 01 10 */ stw r5, 0x110(r1) -/* 8015CC60 00159BC0 90 81 01 14 */ stw r4, 0x114(r1) -/* 8015CC64 00159BC4 90 61 01 18 */ stw r3, 0x118(r1) -/* 8015CC68 00159BC8 D1 41 01 1C */ stfs f10, 0x11c(r1) -/* 8015CC6C 00159BCC D1 21 01 20 */ stfs f9, 0x120(r1) -/* 8015CC70 00159BD0 D1 01 01 24 */ stfs f8, 0x124(r1) -/* 8015CC74 00159BD4 D0 E1 01 28 */ stfs f7, 0x128(r1) -/* 8015CC78 00159BD8 D0 C1 01 2C */ stfs f6, 0x12c(r1) -/* 8015CC7C 00159BDC 90 01 01 30 */ stw r0, 0x130(r1) -/* 8015CC80 00159BE0 D0 A1 01 34 */ stfs f5, 0x134(r1) -/* 8015CC84 00159BE4 D0 81 01 38 */ stfs f4, 0x138(r1) -/* 8015CC88 00159BE8 D0 61 01 3C */ stfs f3, 0x13c(r1) -/* 8015CC8C 00159BEC D0 41 01 40 */ stfs f2, 0x140(r1) -/* 8015CC90 00159BF0 D0 21 01 44 */ stfs f1, 0x144(r1) -/* 8015CC94 00159BF4 D0 01 01 48 */ stfs f0, 0x148(r1) -/* 8015CC98 00159BF8 41 82 00 08 */ beq lbl_8015CCA0 -/* 8015CC9C 00159BFC 90 A1 00 98 */ stw r5, 0x98(r1) -lbl_8015CCA0: -/* 8015CCA0 00159C00 38 61 00 D4 */ addi r3, r1, 0xd4 -/* 8015CCA4 00159C04 38 A1 00 50 */ addi r5, r1, 0x50 -/* 8015CCA8 00159C08 38 C1 00 08 */ addi r6, r1, 8 -/* 8015CCAC 00159C0C 38 80 00 01 */ li r4, 1 -/* 8015CCB0 00159C10 48 00 05 A1 */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint -/* 8015CCB4 00159C14 FC 20 E8 90 */ fmr f1, f29 -/* 8015CCB8 00159C18 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8015CCBC 00159C1C C0 42 9E F4 */ lfs f2, lbl_805ABC14@sda21(r2) -/* 8015CCC0 00159C20 38 A3 66 A0 */ addi r5, r3, skZero3f@l -/* 8015CCC4 00159C24 7F C3 F3 78 */ mr r3, r30 -/* 8015CCC8 00159C28 38 C1 01 4C */ addi r6, r1, 0x14c -/* 8015CCCC 00159C2C 38 E1 01 10 */ addi r7, r1, 0x110 -/* 8015CCD0 00159C30 39 01 00 D4 */ addi r8, r1, 0xd4 -/* 8015CCD4 00159C34 38 80 00 00 */ li r4, 0 -/* 8015CCD8 00159C38 48 00 01 C1 */ bl __ct__16CCameraShakeDataFffiRC9CVector3fRC22CCameraShakerComponentRC22CCameraShakerComponentRC22CCameraShakerComponent -/* 8015CCDC 00159C3C 34 01 00 D4 */ addic. r0, r1, 0xd4 -/* 8015CCE0 00159C40 41 82 00 10 */ beq lbl_8015CCF0 -/* 8015CCE4 00159C44 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015CCE8 00159C48 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015CCEC 00159C4C 90 01 00 D4 */ stw r0, 0xd4(r1) -lbl_8015CCF0: -/* 8015CCF0 00159C50 34 01 01 10 */ addic. r0, r1, 0x110 -/* 8015CCF4 00159C54 41 82 00 10 */ beq lbl_8015CD04 -/* 8015CCF8 00159C58 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015CCFC 00159C5C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015CD00 00159C60 90 01 01 10 */ stw r0, 0x110(r1) -lbl_8015CD04: -/* 8015CD04 00159C64 34 01 01 4C */ addic. r0, r1, 0x14c -/* 8015CD08 00159C68 41 82 00 10 */ beq lbl_8015CD18 -/* 8015CD0C 00159C6C 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015CD10 00159C70 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015CD14 00159C74 90 01 01 4C */ stw r0, 0x14c(r1) -lbl_8015CD18: -/* 8015CD18 00159C78 E3 E1 01 C8 */ psq_l f31, 456(r1), 0, qr0 -/* 8015CD1C 00159C7C CB E1 01 C0 */ lfd f31, 0x1c0(r1) -/* 8015CD20 00159C80 E3 C1 01 B8 */ psq_l f30, 440(r1), 0, qr0 -/* 8015CD24 00159C84 CB C1 01 B0 */ lfd f30, 0x1b0(r1) -/* 8015CD28 00159C88 E3 A1 01 A8 */ psq_l f29, 424(r1), 0, qr0 -/* 8015CD2C 00159C8C CB A1 01 A0 */ lfd f29, 0x1a0(r1) -/* 8015CD30 00159C90 E3 81 01 98 */ psq_l f28, 408(r1), 0, qr0 -/* 8015CD34 00159C94 CB 81 01 90 */ lfd f28, 0x190(r1) -/* 8015CD38 00159C98 83 E1 01 8C */ lwz r31, 0x18c(r1) -/* 8015CD3C 00159C9C 80 01 01 D4 */ lwz r0, 0x1d4(r1) -/* 8015CD40 00159CA0 83 C1 01 88 */ lwz r30, 0x188(r1) -/* 8015CD44 00159CA4 7C 08 03 A6 */ mtlr r0 -/* 8015CD48 00159CA8 38 21 01 D0 */ addi r1, r1, 0x1d0 -/* 8015CD4C 00159CAC 4E 80 00 20 */ blr - -.global GetPoint__16CCameraShakeDataCFv -GetPoint__16CCameraShakeDataCFv: -/* 8015CD50 00159CB0 C0 24 00 7C */ lfs f1, 0x7c(r4) -/* 8015CD54 00159CB4 C0 44 00 B8 */ lfs f2, 0xb8(r4) -/* 8015CD58 00159CB8 C0 04 00 40 */ lfs f0, 0x40(r4) -/* 8015CD5C 00159CBC D0 03 00 00 */ stfs f0, 0(r3) -/* 8015CD60 00159CC0 D0 23 00 04 */ stfs f1, 4(r3) -/* 8015CD64 00159CC4 D0 43 00 08 */ stfs f2, 8(r3) -/* 8015CD68 00159CC8 4E 80 00 20 */ blr - -.global Update__16CCameraShakeDataFfR13CStateManager -Update__16CCameraShakeDataFfR13CStateManager: -/* 8015CD6C 00159CCC 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8015CD70 00159CD0 7C 08 02 A6 */ mflr r0 -/* 8015CD74 00159CD4 90 01 00 44 */ stw r0, 0x44(r1) -/* 8015CD78 00159CD8 DB E1 00 30 */ stfd f31, 0x30(r1) -/* 8015CD7C 00159CDC F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 -/* 8015CD80 00159CE0 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8015CD84 00159CE4 C0 03 00 04 */ lfs f0, 4(r3) -/* 8015CD88 00159CE8 7C 7F 1B 78 */ mr r31, r3 -/* 8015CD8C 00159CEC C3 E2 9E F8 */ lfs f31, lbl_805ABC18@sda21(r2) -/* 8015CD90 00159CF0 EC 00 08 2A */ fadds f0, f0, f1 -/* 8015CD94 00159CF4 D0 03 00 04 */ stfs f0, 4(r3) -/* 8015CD98 00159CF8 80 03 00 C0 */ lwz r0, 0xc0(r3) -/* 8015CD9C 00159CFC 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 8015CDA0 00159D00 41 82 00 74 */ beq lbl_8015CE14 -/* 8015CDA4 00159D04 80 84 08 4C */ lwz r4, 0x84c(r4) -/* 8015CDA8 00159D08 38 61 00 18 */ addi r3, r1, 0x18 -/* 8015CDAC 00159D0C C0 3F 00 C8 */ lfs f1, 0xc8(r31) -/* 8015CDB0 00159D10 C0 04 00 50 */ lfs f0, 0x50(r4) -/* 8015CDB4 00159D14 C0 7F 00 CC */ lfs f3, 0xcc(r31) -/* 8015CDB8 00159D18 C0 44 00 60 */ lfs f2, 0x60(r4) -/* 8015CDBC 00159D1C EC 81 00 28 */ fsubs f4, f1, f0 -/* 8015CDC0 00159D20 C0 3F 00 C4 */ lfs f1, 0xc4(r31) -/* 8015CDC4 00159D24 C0 04 00 40 */ lfs f0, 0x40(r4) -/* 8015CDC8 00159D28 EC 43 10 28 */ fsubs f2, f3, f2 -/* 8015CDCC 00159D2C D0 81 00 10 */ stfs f4, 0x10(r1) -/* 8015CDD0 00159D30 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8015CDD4 00159D34 D0 41 00 14 */ stfs f2, 0x14(r1) -/* 8015CDD8 00159D38 D0 01 00 0C */ stfs f0, 0xc(r1) -/* 8015CDDC 00159D3C D0 01 00 18 */ stfs f0, 0x18(r1) -/* 8015CDE0 00159D40 D0 81 00 1C */ stfs f4, 0x1c(r1) -/* 8015CDE4 00159D44 D0 41 00 20 */ stfs f2, 0x20(r1) -/* 8015CDE8 00159D48 48 1B 7A D1 */ bl Magnitude__9CVector3fCFv -/* 8015CDEC 00159D4C C0 1F 00 D0 */ lfs f0, 0xd0(r31) -/* 8015CDF0 00159D50 38 81 00 08 */ addi r4, r1, 8 -/* 8015CDF4 00159D54 38 6D 8C D8 */ addi r3, r13, lbl_805A7898@sda21 -/* 8015CDF8 00159D58 38 AD 8C DC */ addi r5, r13, lbl_805A789C@sda21 -/* 8015CDFC 00159D5C EC 01 00 24 */ fdivs f0, f1, f0 -/* 8015CE00 00159D60 D0 01 00 08 */ stfs f0, 8(r1) -/* 8015CE04 00159D64 4B EA F4 B1 */ bl "Clamp__5CMathFRCfRCfRCf" -/* 8015CE08 00159D68 C0 23 00 00 */ lfs f1, 0(r3) -/* 8015CE0C 00159D6C C0 02 9E F8 */ lfs f0, lbl_805ABC18@sda21(r2) -/* 8015CE10 00159D70 EF E0 08 28 */ fsubs f31, f0, f1 -lbl_8015CE14: -/* 8015CE14 00159D74 FC 60 F8 90 */ fmr f3, f31 -/* 8015CE18 00159D78 C0 3F 00 04 */ lfs f1, 4(r31) -/* 8015CE1C 00159D7C C0 5F 00 00 */ lfs f2, 0(r31) -/* 8015CE20 00159D80 38 7F 00 08 */ addi r3, r31, 8 -/* 8015CE24 00159D84 48 00 02 11 */ bl sub_8015d034 -/* 8015CE28 00159D88 FC 60 F8 90 */ fmr f3, f31 -/* 8015CE2C 00159D8C C0 3F 00 04 */ lfs f1, 4(r31) -/* 8015CE30 00159D90 C0 5F 00 00 */ lfs f2, 0(r31) -/* 8015CE34 00159D94 38 7F 00 44 */ addi r3, r31, 0x44 -/* 8015CE38 00159D98 48 00 01 FD */ bl sub_8015d034 -/* 8015CE3C 00159D9C FC 60 F8 90 */ fmr f3, f31 -/* 8015CE40 00159DA0 C0 3F 00 04 */ lfs f1, 4(r31) -/* 8015CE44 00159DA4 C0 5F 00 00 */ lfs f2, 0(r31) -/* 8015CE48 00159DA8 38 7F 00 80 */ addi r3, r31, 0x80 -/* 8015CE4C 00159DAC 48 00 01 E9 */ bl sub_8015d034 -/* 8015CE50 00159DB0 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 -/* 8015CE54 00159DB4 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8015CE58 00159DB8 CB E1 00 30 */ lfd f31, 0x30(r1) -/* 8015CE5C 00159DBC 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8015CE60 00159DC0 7C 08 03 A6 */ mtlr r0 -/* 8015CE64 00159DC4 38 21 00 40 */ addi r1, r1, 0x40 -/* 8015CE68 00159DC8 4E 80 00 20 */ blr - -.global SetSfxPositionAndDistance__16CCameraShakeDataFRC9CVector3ff -SetSfxPositionAndDistance__16CCameraShakeDataFRC9CVector3ff: -/* 8015CE6C 00159DCC 80 03 00 C0 */ lwz r0, 0xc0(r3) -/* 8015CE70 00159DD0 60 00 00 01 */ ori r0, r0, 1 -/* 8015CE74 00159DD4 90 03 00 C0 */ stw r0, 0xc0(r3) -/* 8015CE78 00159DD8 D0 23 00 D0 */ stfs f1, 0xd0(r3) -/* 8015CE7C 00159DDC C0 04 00 00 */ lfs f0, 0(r4) -/* 8015CE80 00159DE0 D0 03 00 C4 */ stfs f0, 0xc4(r3) -/* 8015CE84 00159DE4 C0 04 00 04 */ lfs f0, 4(r4) -/* 8015CE88 00159DE8 D0 03 00 C8 */ stfs f0, 0xc8(r3) -/* 8015CE8C 00159DEC C0 04 00 08 */ lfs f0, 8(r4) -/* 8015CE90 00159DF0 D0 03 00 CC */ stfs f0, 0xcc(r3) -/* 8015CE94 00159DF4 4E 80 00 20 */ blr - -.global __ct__16CCameraShakeDataFffiRC9CVector3fRC22CCameraShakerComponentRC22CCameraShakerComponentRC22CCameraShakerComponent -__ct__16CCameraShakeDataFffiRC9CVector3fRC22CCameraShakerComponentRC22CCameraShakerComponentRC22CCameraShakerComponent: -/* 8015CE98 00159DF8 D0 23 00 00 */ stfs f1, 0(r3) -/* 8015CE9C 00159DFC 3D 20 80 3E */ lis r9, lbl_803D8EA8@ha -/* 8015CEA0 00159E00 C0 02 9E E0 */ lfs f0, lbl_805ABC00@sda21(r2) -/* 8015CEA4 00159E04 39 49 8E A8 */ addi r10, r9, lbl_803D8EA8@l -/* 8015CEA8 00159E08 38 00 00 00 */ li r0, 0 -/* 8015CEAC 00159E0C D0 03 00 04 */ stfs f0, 4(r3) -/* 8015CEB0 00159E10 91 43 00 08 */ stw r10, 8(r3) -/* 8015CEB4 00159E14 81 26 00 04 */ lwz r9, 4(r6) -/* 8015CEB8 00159E18 91 23 00 0C */ stw r9, 0xc(r3) -/* 8015CEBC 00159E1C 81 26 00 08 */ lwz r9, 8(r6) -/* 8015CEC0 00159E20 91 23 00 10 */ stw r9, 0x10(r3) -/* 8015CEC4 00159E24 C0 06 00 0C */ lfs f0, 0xc(r6) -/* 8015CEC8 00159E28 D0 03 00 14 */ stfs f0, 0x14(r3) -/* 8015CECC 00159E2C C0 06 00 10 */ lfs f0, 0x10(r6) -/* 8015CED0 00159E30 D0 03 00 18 */ stfs f0, 0x18(r3) -/* 8015CED4 00159E34 C0 06 00 14 */ lfs f0, 0x14(r6) -/* 8015CED8 00159E38 D0 03 00 1C */ stfs f0, 0x1c(r3) -/* 8015CEDC 00159E3C C0 06 00 18 */ lfs f0, 0x18(r6) -/* 8015CEE0 00159E40 D0 03 00 20 */ stfs f0, 0x20(r3) -/* 8015CEE4 00159E44 C0 06 00 1C */ lfs f0, 0x1c(r6) -/* 8015CEE8 00159E48 D0 03 00 24 */ stfs f0, 0x24(r3) -/* 8015CEEC 00159E4C 81 26 00 20 */ lwz r9, 0x20(r6) -/* 8015CEF0 00159E50 91 23 00 28 */ stw r9, 0x28(r3) -/* 8015CEF4 00159E54 C0 06 00 24 */ lfs f0, 0x24(r6) -/* 8015CEF8 00159E58 D0 03 00 2C */ stfs f0, 0x2c(r3) -/* 8015CEFC 00159E5C C0 06 00 28 */ lfs f0, 0x28(r6) -/* 8015CF00 00159E60 D0 03 00 30 */ stfs f0, 0x30(r3) -/* 8015CF04 00159E64 C0 06 00 2C */ lfs f0, 0x2c(r6) -/* 8015CF08 00159E68 D0 03 00 34 */ stfs f0, 0x34(r3) -/* 8015CF0C 00159E6C C0 06 00 30 */ lfs f0, 0x30(r6) -/* 8015CF10 00159E70 D0 03 00 38 */ stfs f0, 0x38(r3) -/* 8015CF14 00159E74 C0 06 00 34 */ lfs f0, 0x34(r6) -/* 8015CF18 00159E78 D0 03 00 3C */ stfs f0, 0x3c(r3) -/* 8015CF1C 00159E7C C0 06 00 38 */ lfs f0, 0x38(r6) -/* 8015CF20 00159E80 D0 03 00 40 */ stfs f0, 0x40(r3) -/* 8015CF24 00159E84 91 43 00 44 */ stw r10, 0x44(r3) -/* 8015CF28 00159E88 80 C7 00 04 */ lwz r6, 4(r7) -/* 8015CF2C 00159E8C 90 C3 00 48 */ stw r6, 0x48(r3) -/* 8015CF30 00159E90 80 C7 00 08 */ lwz r6, 8(r7) -/* 8015CF34 00159E94 90 C3 00 4C */ stw r6, 0x4c(r3) -/* 8015CF38 00159E98 C0 07 00 0C */ lfs f0, 0xc(r7) -/* 8015CF3C 00159E9C D0 03 00 50 */ stfs f0, 0x50(r3) -/* 8015CF40 00159EA0 C0 07 00 10 */ lfs f0, 0x10(r7) -/* 8015CF44 00159EA4 D0 03 00 54 */ stfs f0, 0x54(r3) -/* 8015CF48 00159EA8 C0 07 00 14 */ lfs f0, 0x14(r7) -/* 8015CF4C 00159EAC D0 03 00 58 */ stfs f0, 0x58(r3) -/* 8015CF50 00159EB0 C0 07 00 18 */ lfs f0, 0x18(r7) -/* 8015CF54 00159EB4 D0 03 00 5C */ stfs f0, 0x5c(r3) -/* 8015CF58 00159EB8 C0 07 00 1C */ lfs f0, 0x1c(r7) -/* 8015CF5C 00159EBC D0 03 00 60 */ stfs f0, 0x60(r3) -/* 8015CF60 00159EC0 80 C7 00 20 */ lwz r6, 0x20(r7) -/* 8015CF64 00159EC4 90 C3 00 64 */ stw r6, 0x64(r3) -/* 8015CF68 00159EC8 C0 07 00 24 */ lfs f0, 0x24(r7) -/* 8015CF6C 00159ECC D0 03 00 68 */ stfs f0, 0x68(r3) -/* 8015CF70 00159ED0 C0 07 00 28 */ lfs f0, 0x28(r7) -/* 8015CF74 00159ED4 D0 03 00 6C */ stfs f0, 0x6c(r3) -/* 8015CF78 00159ED8 C0 07 00 2C */ lfs f0, 0x2c(r7) -/* 8015CF7C 00159EDC D0 03 00 70 */ stfs f0, 0x70(r3) -/* 8015CF80 00159EE0 C0 07 00 30 */ lfs f0, 0x30(r7) -/* 8015CF84 00159EE4 D0 03 00 74 */ stfs f0, 0x74(r3) -/* 8015CF88 00159EE8 C0 07 00 34 */ lfs f0, 0x34(r7) -/* 8015CF8C 00159EEC D0 03 00 78 */ stfs f0, 0x78(r3) -/* 8015CF90 00159EF0 C0 07 00 38 */ lfs f0, 0x38(r7) -/* 8015CF94 00159EF4 D0 03 00 7C */ stfs f0, 0x7c(r3) -/* 8015CF98 00159EF8 91 43 00 80 */ stw r10, 0x80(r3) -/* 8015CF9C 00159EFC 80 C8 00 04 */ lwz r6, 4(r8) -/* 8015CFA0 00159F00 90 C3 00 84 */ stw r6, 0x84(r3) -/* 8015CFA4 00159F04 80 C8 00 08 */ lwz r6, 8(r8) -/* 8015CFA8 00159F08 90 C3 00 88 */ stw r6, 0x88(r3) -/* 8015CFAC 00159F0C C0 08 00 0C */ lfs f0, 0xc(r8) -/* 8015CFB0 00159F10 D0 03 00 8C */ stfs f0, 0x8c(r3) -/* 8015CFB4 00159F14 C0 08 00 10 */ lfs f0, 0x10(r8) -/* 8015CFB8 00159F18 D0 03 00 90 */ stfs f0, 0x90(r3) -/* 8015CFBC 00159F1C C0 08 00 14 */ lfs f0, 0x14(r8) -/* 8015CFC0 00159F20 D0 03 00 94 */ stfs f0, 0x94(r3) -/* 8015CFC4 00159F24 C0 08 00 18 */ lfs f0, 0x18(r8) -/* 8015CFC8 00159F28 D0 03 00 98 */ stfs f0, 0x98(r3) -/* 8015CFCC 00159F2C C0 08 00 1C */ lfs f0, 0x1c(r8) -/* 8015CFD0 00159F30 D0 03 00 9C */ stfs f0, 0x9c(r3) -/* 8015CFD4 00159F34 80 C8 00 20 */ lwz r6, 0x20(r8) -/* 8015CFD8 00159F38 90 C3 00 A0 */ stw r6, 0xa0(r3) -/* 8015CFDC 00159F3C C0 08 00 24 */ lfs f0, 0x24(r8) -/* 8015CFE0 00159F40 D0 03 00 A4 */ stfs f0, 0xa4(r3) -/* 8015CFE4 00159F44 C0 08 00 28 */ lfs f0, 0x28(r8) -/* 8015CFE8 00159F48 D0 03 00 A8 */ stfs f0, 0xa8(r3) -/* 8015CFEC 00159F4C C0 08 00 2C */ lfs f0, 0x2c(r8) -/* 8015CFF0 00159F50 D0 03 00 AC */ stfs f0, 0xac(r3) -/* 8015CFF4 00159F54 C0 08 00 30 */ lfs f0, 0x30(r8) -/* 8015CFF8 00159F58 D0 03 00 B0 */ stfs f0, 0xb0(r3) -/* 8015CFFC 00159F5C C0 08 00 34 */ lfs f0, 0x34(r8) -/* 8015D000 00159F60 D0 03 00 B4 */ stfs f0, 0xb4(r3) -/* 8015D004 00159F64 C0 08 00 38 */ lfs f0, 0x38(r8) -/* 8015D008 00159F68 D0 03 00 B8 */ stfs f0, 0xb8(r3) -/* 8015D00C 00159F6C 90 03 00 BC */ stw r0, 0xbc(r3) -/* 8015D010 00159F70 90 83 00 C0 */ stw r4, 0xc0(r3) -/* 8015D014 00159F74 C0 05 00 00 */ lfs f0, 0(r5) -/* 8015D018 00159F78 D0 03 00 C4 */ stfs f0, 0xc4(r3) -/* 8015D01C 00159F7C C0 05 00 04 */ lfs f0, 4(r5) -/* 8015D020 00159F80 D0 03 00 C8 */ stfs f0, 0xc8(r3) -/* 8015D024 00159F84 C0 05 00 08 */ lfs f0, 8(r5) -/* 8015D028 00159F88 D0 03 00 CC */ stfs f0, 0xcc(r3) -/* 8015D02C 00159F8C D0 43 00 D0 */ stfs f2, 0xd0(r3) -/* 8015D030 00159F90 4E 80 00 20 */ blr - -.global sub_8015d034 -sub_8015d034: -/* 8015D034 00159F94 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 8015D038 00159F98 7C 08 02 A6 */ mflr r0 -/* 8015D03C 00159F9C 90 01 00 54 */ stw r0, 0x54(r1) -/* 8015D040 00159FA0 DB E1 00 40 */ stfd f31, 0x40(r1) -/* 8015D044 00159FA4 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 -/* 8015D048 00159FA8 DB C1 00 30 */ stfd f30, 0x30(r1) -/* 8015D04C 00159FAC F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 -/* 8015D050 00159FB0 DB A1 00 20 */ stfd f29, 0x20(r1) -/* 8015D054 00159FB4 F3 A1 00 28 */ psq_st f29, 40(r1), 0, qr0 -/* 8015D058 00159FB8 DB 81 00 10 */ stfd f28, 0x10(r1) -/* 8015D05C 00159FBC F3 81 00 18 */ psq_st f28, 24(r1), 0, qr0 -/* 8015D060 00159FC0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8015D064 00159FC4 FF A0 10 90 */ fmr f29, f2 -/* 8015D068 00159FC8 C0 42 9E E0 */ lfs f2, lbl_805ABC00@sda21(r2) -/* 8015D06C 00159FCC C0 02 9E FC */ lfs f0, lbl_805ABC1C@sda21(r2) -/* 8015D070 00159FD0 FF 80 08 90 */ fmr f28, f1 -/* 8015D074 00159FD4 FF C0 18 90 */ fmr f30, f3 -/* 8015D078 00159FD8 7C 7F 1B 78 */ mr r31, r3 -/* 8015D07C 00159FDC EC 5D 10 28 */ fsubs f2, f29, f2 -/* 8015D080 00159FE0 FC 40 12 10 */ fabs f2, f2 -/* 8015D084 00159FE4 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8015D088 00159FE8 41 80 00 10 */ blt lbl_8015D098 -/* 8015D08C 00159FEC 80 1F 00 04 */ lwz r0, 4(r31) -/* 8015D090 00159FF0 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 8015D094 00159FF4 40 82 00 10 */ bne lbl_8015D0A4 -lbl_8015D098: -/* 8015D098 00159FF8 C0 02 9E E0 */ lfs f0, lbl_805ABC00@sda21(r2) -/* 8015D09C 00159FFC D0 1F 00 38 */ stfs f0, 0x38(r31) -/* 8015D0A0 0015A000 48 00 00 5C */ b lbl_8015D0FC -lbl_8015D0A4: -/* 8015D0A4 0015A004 38 7F 00 20 */ addi r3, r31, 0x20 -/* 8015D0A8 0015A008 48 00 02 41 */ bl sub_8015d2e8 -/* 8015D0AC 0015A00C 38 7F 00 20 */ addi r3, r31, 0x20 -/* 8015D0B0 0015A010 48 00 02 1D */ bl GetSomething__17SCameraShakePointFv -/* 8015D0B4 0015A014 C0 02 9E F8 */ lfs f0, lbl_805ABC18@sda21(r2) -/* 8015D0B8 0015A018 38 7F 00 08 */ addi r3, r31, 8 -/* 8015D0BC 0015A01C EF E0 08 2A */ fadds f31, f0, f1 -/* 8015D0C0 0015A020 FC 20 E0 90 */ fmr f1, f28 -/* 8015D0C4 0015A024 48 00 02 25 */ bl sub_8015d2e8 -/* 8015D0C8 0015A028 EC 1D E0 28 */ fsubs f0, f29, f28 -/* 8015D0CC 0015A02C C0 22 9F 00 */ lfs f1, lbl_805ABC20@sda21(r2) -/* 8015D0D0 0015A030 EC 01 00 32 */ fmuls f0, f1, f0 -/* 8015D0D4 0015A034 EC 3F 00 32 */ fmuls f1, f31, f0 -/* 8015D0D8 0015A038 48 23 7A 05 */ bl sin -/* 8015D0DC 0015A03C FF E0 08 18 */ frsp f31, f1 -/* 8015D0E0 0015A040 38 7F 00 08 */ addi r3, r31, 8 -/* 8015D0E4 0015A044 48 00 01 E9 */ bl GetSomething__17SCameraShakePointFv -/* 8015D0E8 0015A048 EC 01 07 F2 */ fmuls f0, f1, f31 -/* 8015D0EC 0015A04C D0 1F 00 38 */ stfs f0, 0x38(r31) -/* 8015D0F0 0015A050 C0 1F 00 38 */ lfs f0, 0x38(r31) -/* 8015D0F4 0015A054 EC 00 07 B2 */ fmuls f0, f0, f30 -/* 8015D0F8 0015A058 D0 1F 00 38 */ stfs f0, 0x38(r31) -lbl_8015D0FC: -/* 8015D0FC 0015A05C E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 -/* 8015D100 0015A060 CB E1 00 40 */ lfd f31, 0x40(r1) -/* 8015D104 0015A064 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 -/* 8015D108 0015A068 CB C1 00 30 */ lfd f30, 0x30(r1) -/* 8015D10C 0015A06C E3 A1 00 28 */ psq_l f29, 40(r1), 0, qr0 -/* 8015D110 0015A070 CB A1 00 20 */ lfd f29, 0x20(r1) -/* 8015D114 0015A074 E3 81 00 18 */ psq_l f28, 24(r1), 0, qr0 -/* 8015D118 0015A078 CB 81 00 10 */ lfd f28, 0x10(r1) -/* 8015D11C 0015A07C 80 01 00 54 */ lwz r0, 0x54(r1) -/* 8015D120 0015A080 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8015D124 0015A084 7C 08 03 A6 */ mtlr r0 -/* 8015D128 0015A088 38 21 00 50 */ addi r1, r1, 0x50 -/* 8015D12C 0015A08C 4E 80 00 20 */ blr - -.global __ct__22CCameraShakerComponentFv -__ct__22CCameraShakerComponentFv: -/* 8015D130 0015A090 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8015D134 0015A094 7C 08 02 A6 */ mflr r0 -/* 8015D138 0015A098 90 01 00 44 */ stw r0, 0x44(r1) -/* 8015D13C 0015A09C 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 8015D140 0015A0A0 7C 7F 1B 78 */ mr r31, r3 -/* 8015D144 0015A0A4 38 61 00 08 */ addi r3, r1, 8 -/* 8015D148 0015A0A8 48 00 02 7D */ bl __ct__17SCameraShakePointFv -/* 8015D14C 0015A0AC 38 61 00 20 */ addi r3, r1, 0x20 -/* 8015D150 0015A0B0 48 00 02 75 */ bl __ct__17SCameraShakePointFv -/* 8015D154 0015A0B4 7F E3 FB 78 */ mr r3, r31 -/* 8015D158 0015A0B8 38 A1 00 20 */ addi r5, r1, 0x20 -/* 8015D15C 0015A0BC 38 C1 00 08 */ addi r6, r1, 8 -/* 8015D160 0015A0C0 38 80 00 00 */ li r4, 0 -/* 8015D164 0015A0C4 48 00 00 ED */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint -/* 8015D168 0015A0C8 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8015D16C 0015A0CC 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 8015D170 0015A0D0 7C 08 03 A6 */ mtlr r0 -/* 8015D174 0015A0D4 38 21 00 40 */ addi r1, r1, 0x40 -/* 8015D178 0015A0D8 4E 80 00 20 */ blr - -.global LoadNewCameraShakerComponent__FR12CInputStream -LoadNewCameraShakerComponent__FR12CInputStream: -/* 8015D17C 0015A0DC 94 21 FF 80 */ stwu r1, -0x80(r1) -/* 8015D180 0015A0E0 7C 08 02 A6 */ mflr r0 -/* 8015D184 0015A0E4 90 01 00 84 */ stw r0, 0x84(r1) -/* 8015D188 0015A0E8 93 E1 00 7C */ stw r31, 0x7c(r1) -/* 8015D18C 0015A0EC 93 C1 00 78 */ stw r30, 0x78(r1) -/* 8015D190 0015A0F0 7C 9E 23 78 */ mr r30, r4 -/* 8015D194 0015A0F4 93 A1 00 74 */ stw r29, 0x74(r1) -/* 8015D198 0015A0F8 7C 7D 1B 78 */ mr r29, r3 -/* 8015D19C 0015A0FC 7F C3 F3 78 */ mr r3, r30 -/* 8015D1A0 0015A100 4B F7 CA 5D */ bl LoadParameterFlags__FR12CInputStream -/* 8015D1A4 0015A104 7C 7F 1B 78 */ mr r31, r3 -/* 8015D1A8 0015A108 7F C4 F3 78 */ mr r4, r30 -/* 8015D1AC 0015A10C 38 61 00 20 */ addi r3, r1, 0x20 -/* 8015D1B0 0015A110 48 00 02 49 */ bl LoadCameraShakePoint__R12CInputStream -/* 8015D1B4 0015A114 80 01 00 20 */ lwz r0, 0x20(r1) -/* 8015D1B8 0015A118 7F C4 F3 78 */ mr r4, r30 -/* 8015D1BC 0015A11C C0 81 00 24 */ lfs f4, 0x24(r1) -/* 8015D1C0 0015A120 38 61 00 08 */ addi r3, r1, 8 -/* 8015D1C4 0015A124 C0 61 00 28 */ lfs f3, 0x28(r1) -/* 8015D1C8 0015A128 C0 41 00 2C */ lfs f2, 0x2c(r1) -/* 8015D1CC 0015A12C C0 21 00 30 */ lfs f1, 0x30(r1) -/* 8015D1D0 0015A130 C0 01 00 34 */ lfs f0, 0x34(r1) -/* 8015D1D4 0015A134 90 01 00 50 */ stw r0, 0x50(r1) -/* 8015D1D8 0015A138 D0 81 00 54 */ stfs f4, 0x54(r1) -/* 8015D1DC 0015A13C D0 61 00 58 */ stfs f3, 0x58(r1) -/* 8015D1E0 0015A140 D0 41 00 5C */ stfs f2, 0x5c(r1) -/* 8015D1E4 0015A144 D0 21 00 60 */ stfs f1, 0x60(r1) -/* 8015D1E8 0015A148 D0 01 00 64 */ stfs f0, 0x64(r1) -/* 8015D1EC 0015A14C 48 00 02 0D */ bl LoadCameraShakePoint__R12CInputStream -/* 8015D1F0 0015A150 80 01 00 08 */ lwz r0, 8(r1) -/* 8015D1F4 0015A154 7F A3 EB 78 */ mr r3, r29 -/* 8015D1F8 0015A158 C0 81 00 0C */ lfs f4, 0xc(r1) -/* 8015D1FC 0015A15C 7F E4 FB 78 */ mr r4, r31 -/* 8015D200 0015A160 C0 61 00 10 */ lfs f3, 0x10(r1) -/* 8015D204 0015A164 38 A1 00 50 */ addi r5, r1, 0x50 -/* 8015D208 0015A168 C0 41 00 14 */ lfs f2, 0x14(r1) -/* 8015D20C 0015A16C 38 C1 00 38 */ addi r6, r1, 0x38 -/* 8015D210 0015A170 C0 21 00 18 */ lfs f1, 0x18(r1) -/* 8015D214 0015A174 C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 8015D218 0015A178 90 01 00 38 */ stw r0, 0x38(r1) -/* 8015D21C 0015A17C D0 81 00 3C */ stfs f4, 0x3c(r1) -/* 8015D220 0015A180 D0 61 00 40 */ stfs f3, 0x40(r1) -/* 8015D224 0015A184 D0 41 00 44 */ stfs f2, 0x44(r1) -/* 8015D228 0015A188 D0 21 00 48 */ stfs f1, 0x48(r1) -/* 8015D22C 0015A18C D0 01 00 4C */ stfs f0, 0x4c(r1) -/* 8015D230 0015A190 48 00 00 21 */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint -/* 8015D234 0015A194 80 01 00 84 */ lwz r0, 0x84(r1) -/* 8015D238 0015A198 83 E1 00 7C */ lwz r31, 0x7c(r1) -/* 8015D23C 0015A19C 83 C1 00 78 */ lwz r30, 0x78(r1) -/* 8015D240 0015A1A0 83 A1 00 74 */ lwz r29, 0x74(r1) -/* 8015D244 0015A1A4 7C 08 03 A6 */ mtlr r0 -/* 8015D248 0015A1A8 38 21 00 80 */ addi r1, r1, 0x80 -/* 8015D24C 0015A1AC 4E 80 00 20 */ blr - -.global __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint -__ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint: -/* 8015D250 0015A1B0 3C E0 80 3E */ lis r7, lbl_803D8EA8@ha -/* 8015D254 0015A1B4 C0 02 9E E0 */ lfs f0, lbl_805ABC00@sda21(r2) -/* 8015D258 0015A1B8 38 07 8E A8 */ addi r0, r7, lbl_803D8EA8@l -/* 8015D25C 0015A1BC 90 03 00 00 */ stw r0, 0(r3) -/* 8015D260 0015A1C0 90 83 00 04 */ stw r4, 4(r3) -/* 8015D264 0015A1C4 80 05 00 00 */ lwz r0, 0(r5) -/* 8015D268 0015A1C8 90 03 00 08 */ stw r0, 8(r3) -/* 8015D26C 0015A1CC C0 25 00 04 */ lfs f1, 4(r5) -/* 8015D270 0015A1D0 D0 23 00 0C */ stfs f1, 0xc(r3) -/* 8015D274 0015A1D4 C0 25 00 08 */ lfs f1, 8(r5) -/* 8015D278 0015A1D8 D0 23 00 10 */ stfs f1, 0x10(r3) -/* 8015D27C 0015A1DC C0 25 00 0C */ lfs f1, 0xc(r5) -/* 8015D280 0015A1E0 D0 23 00 14 */ stfs f1, 0x14(r3) -/* 8015D284 0015A1E4 C0 25 00 10 */ lfs f1, 0x10(r5) -/* 8015D288 0015A1E8 D0 23 00 18 */ stfs f1, 0x18(r3) -/* 8015D28C 0015A1EC C0 25 00 14 */ lfs f1, 0x14(r5) -/* 8015D290 0015A1F0 D0 23 00 1C */ stfs f1, 0x1c(r3) -/* 8015D294 0015A1F4 80 06 00 00 */ lwz r0, 0(r6) -/* 8015D298 0015A1F8 90 03 00 20 */ stw r0, 0x20(r3) -/* 8015D29C 0015A1FC C0 26 00 04 */ lfs f1, 4(r6) -/* 8015D2A0 0015A200 D0 23 00 24 */ stfs f1, 0x24(r3) -/* 8015D2A4 0015A204 C0 26 00 08 */ lfs f1, 8(r6) -/* 8015D2A8 0015A208 D0 23 00 28 */ stfs f1, 0x28(r3) -/* 8015D2AC 0015A20C C0 26 00 0C */ lfs f1, 0xc(r6) -/* 8015D2B0 0015A210 D0 23 00 2C */ stfs f1, 0x2c(r3) -/* 8015D2B4 0015A214 C0 26 00 10 */ lfs f1, 0x10(r6) -/* 8015D2B8 0015A218 D0 23 00 30 */ stfs f1, 0x30(r3) -/* 8015D2BC 0015A21C C0 26 00 14 */ lfs f1, 0x14(r6) -/* 8015D2C0 0015A220 D0 23 00 34 */ stfs f1, 0x34(r3) -/* 8015D2C4 0015A224 D0 03 00 38 */ stfs f0, 0x38(r3) -/* 8015D2C8 0015A228 4E 80 00 20 */ blr - -.global GetSomething__17SCameraShakePointFv -GetSomething__17SCameraShakePointFv: -/* 8015D2CC 0015A22C 80 03 00 00 */ lwz r0, 0(r3) -/* 8015D2D0 0015A230 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 8015D2D4 0015A234 41 82 00 0C */ beq lbl_8015D2E0 -/* 8015D2D8 0015A238 C0 23 00 08 */ lfs f1, 8(r3) -/* 8015D2DC 0015A23C 4E 80 00 20 */ blr -lbl_8015D2E0: -/* 8015D2E0 0015A240 C0 23 00 04 */ lfs f1, 4(r3) -/* 8015D2E4 0015A244 4E 80 00 20 */ blr - -.global sub_8015d2e8 -sub_8015d2e8: -/* 8015D2E8 0015A248 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8015D2EC 0015A24C 7C 08 02 A6 */ mflr r0 -/* 8015D2F0 0015A250 90 01 00 44 */ stw r0, 0x44(r1) -/* 8015D2F4 0015A254 DB E1 00 30 */ stfd f31, 0x30(r1) -/* 8015D2F8 0015A258 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 -/* 8015D2FC 0015A25C DB C1 00 20 */ stfd f30, 0x20(r1) -/* 8015D300 0015A260 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 -/* 8015D304 0015A264 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8015D308 0015A268 7C 7F 1B 78 */ mr r31, r3 -/* 8015D30C 0015A26C FF C0 08 90 */ fmr f30, f1 -/* 8015D310 0015A270 C0 23 00 0C */ lfs f1, 0xc(r3) -/* 8015D314 0015A274 C0 03 00 10 */ lfs f0, 0x10(r3) -/* 8015D318 0015A278 FC 1E 08 40 */ fcmpo cr0, f30, f1 -/* 8015D31C 0015A27C C0 42 9E F8 */ lfs f2, lbl_805ABC18@sda21(r2) -/* 8015D320 0015A280 EF E1 00 2A */ fadds f31, f1, f0 -/* 8015D324 0015A284 40 80 00 2C */ bge lbl_8015D350 -/* 8015D328 0015A288 C0 02 9E E0 */ lfs f0, lbl_805ABC00@sda21(r2) -/* 8015D32C 0015A28C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015D330 0015A290 40 81 00 20 */ ble lbl_8015D350 -/* 8015D334 0015A294 EC 1E 08 24 */ fdivs f0, f30, f1 -/* 8015D338 0015A298 38 81 00 0C */ addi r4, r1, 0xc -/* 8015D33C 0015A29C 38 6D 8C C8 */ addi r3, r13, lbl_805A7888@sda21 -/* 8015D340 0015A2A0 38 AD 8C CC */ addi r5, r13, lbl_805A788C@sda21 -/* 8015D344 0015A2A4 D0 01 00 0C */ stfs f0, 0xc(r1) -/* 8015D348 0015A2A8 4B EA EF 6D */ bl "Clamp__5CMathFRCfRCfRCf" -/* 8015D34C 0015A2AC C0 43 00 00 */ lfs f2, 0(r3) -lbl_8015D350: -/* 8015D350 0015A2B0 FC 1E F8 40 */ fcmpo cr0, f30, f31 -/* 8015D354 0015A2B4 4C 41 13 82 */ cror 2, 1, 2 -/* 8015D358 0015A2B8 40 82 00 3C */ bne lbl_8015D394 -/* 8015D35C 0015A2BC C0 3F 00 14 */ lfs f1, 0x14(r31) -/* 8015D360 0015A2C0 C0 02 9E E0 */ lfs f0, lbl_805ABC00@sda21(r2) -/* 8015D364 0015A2C4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015D368 0015A2C8 40 81 00 2C */ ble lbl_8015D394 -/* 8015D36C 0015A2CC EC 1E F8 28 */ fsubs f0, f30, f31 -/* 8015D370 0015A2D0 38 81 00 08 */ addi r4, r1, 8 -/* 8015D374 0015A2D4 38 6D 8C D0 */ addi r3, r13, lbl_805A7890@sda21 -/* 8015D378 0015A2D8 38 AD 8C D4 */ addi r5, r13, lbl_805A7894@sda21 -/* 8015D37C 0015A2DC EC 00 08 24 */ fdivs f0, f0, f1 -/* 8015D380 0015A2E0 D0 01 00 08 */ stfs f0, 8(r1) -/* 8015D384 0015A2E4 4B EA EF 31 */ bl "Clamp__5CMathFRCfRCfRCf" -/* 8015D388 0015A2E8 C0 23 00 00 */ lfs f1, 0(r3) -/* 8015D38C 0015A2EC C0 02 9E F8 */ lfs f0, lbl_805ABC18@sda21(r2) -/* 8015D390 0015A2F0 EC 40 08 28 */ fsubs f2, f0, f1 -lbl_8015D394: -/* 8015D394 0015A2F4 C0 1F 00 08 */ lfs f0, 8(r31) -/* 8015D398 0015A2F8 EC 00 00 B2 */ fmuls f0, f0, f2 -/* 8015D39C 0015A2FC D0 1F 00 04 */ stfs f0, 4(r31) -/* 8015D3A0 0015A300 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 -/* 8015D3A4 0015A304 CB E1 00 30 */ lfd f31, 0x30(r1) -/* 8015D3A8 0015A308 E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 -/* 8015D3AC 0015A30C CB C1 00 20 */ lfd f30, 0x20(r1) -/* 8015D3B0 0015A310 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8015D3B4 0015A314 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8015D3B8 0015A318 7C 08 03 A6 */ mtlr r0 -/* 8015D3BC 0015A31C 38 21 00 40 */ addi r1, r1, 0x40 -/* 8015D3C0 0015A320 4E 80 00 20 */ blr - -.global __ct__17SCameraShakePointFv -__ct__17SCameraShakePointFv: -/* 8015D3C4 0015A324 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015D3C8 0015A328 7C 08 02 A6 */ mflr r0 -/* 8015D3CC 0015A32C C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) -/* 8015D3D0 0015A330 38 80 00 00 */ li r4, 0 -/* 8015D3D4 0015A334 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015D3D8 0015A338 FC 40 08 90 */ fmr f2, f1 -/* 8015D3DC 0015A33C FC 60 08 90 */ fmr f3, f1 -/* 8015D3E0 0015A340 FC 80 08 90 */ fmr f4, f1 -/* 8015D3E4 0015A344 48 00 00 C1 */ bl __ct__17SCameraShakePointFiffff -/* 8015D3E8 0015A348 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015D3EC 0015A34C 7C 08 03 A6 */ mtlr r0 -/* 8015D3F0 0015A350 38 21 00 10 */ addi r1, r1, 0x10 -/* 8015D3F4 0015A354 4E 80 00 20 */ blr - -.global LoadCameraShakePoint__R12CInputStream -LoadCameraShakePoint__R12CInputStream: -/* 8015D3F8 0015A358 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8015D3FC 0015A35C 7C 08 02 A6 */ mflr r0 -/* 8015D400 0015A360 90 01 00 34 */ stw r0, 0x34(r1) -/* 8015D404 0015A364 DB E1 00 28 */ stfd f31, 0x28(r1) -/* 8015D408 0015A368 DB C1 00 20 */ stfd f30, 0x20(r1) -/* 8015D40C 0015A36C DB A1 00 18 */ stfd f29, 0x18(r1) -/* 8015D410 0015A370 93 E1 00 14 */ stw r31, 0x14(r1) -/* 8015D414 0015A374 93 C1 00 10 */ stw r30, 0x10(r1) -/* 8015D418 0015A378 7C 9E 23 78 */ mr r30, r4 -/* 8015D41C 0015A37C 93 A1 00 0C */ stw r29, 0xc(r1) -/* 8015D420 0015A380 7C 7D 1B 78 */ mr r29, r3 -/* 8015D424 0015A384 7F C3 F3 78 */ mr r3, r30 -/* 8015D428 0015A388 4B F7 C7 D5 */ bl LoadParameterFlags__FR12CInputStream -/* 8015D42C 0015A38C 7C 60 1B 78 */ mr r0, r3 -/* 8015D430 0015A390 7F C3 F3 78 */ mr r3, r30 -/* 8015D434 0015A394 7C 1F 03 78 */ mr r31, r0 -/* 8015D438 0015A398 48 1E 17 F1 */ bl ReadFloat__12CInputStreamFv -/* 8015D43C 0015A39C FF E0 08 90 */ fmr f31, f1 -/* 8015D440 0015A3A0 7F C3 F3 78 */ mr r3, r30 -/* 8015D444 0015A3A4 48 1E 17 E5 */ bl ReadFloat__12CInputStreamFv -/* 8015D448 0015A3A8 FF C0 08 90 */ fmr f30, f1 -/* 8015D44C 0015A3AC 7F C3 F3 78 */ mr r3, r30 -/* 8015D450 0015A3B0 48 1E 17 D9 */ bl ReadFloat__12CInputStreamFv -/* 8015D454 0015A3B4 FF A0 08 90 */ fmr f29, f1 -/* 8015D458 0015A3B8 7F C3 F3 78 */ mr r3, r30 -/* 8015D45C 0015A3BC 48 1E 17 CD */ bl ReadFloat__12CInputStreamFv -/* 8015D460 0015A3C0 FC 80 08 90 */ fmr f4, f1 -/* 8015D464 0015A3C4 7F A3 EB 78 */ mr r3, r29 -/* 8015D468 0015A3C8 FC 20 F8 90 */ fmr f1, f31 -/* 8015D46C 0015A3CC 7F E4 FB 78 */ mr r4, r31 -/* 8015D470 0015A3D0 FC 40 F0 90 */ fmr f2, f30 -/* 8015D474 0015A3D4 FC 60 E8 90 */ fmr f3, f29 -/* 8015D478 0015A3D8 48 00 00 2D */ bl __ct__17SCameraShakePointFiffff -/* 8015D47C 0015A3DC 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8015D480 0015A3E0 CB E1 00 28 */ lfd f31, 0x28(r1) -/* 8015D484 0015A3E4 CB C1 00 20 */ lfd f30, 0x20(r1) -/* 8015D488 0015A3E8 CB A1 00 18 */ lfd f29, 0x18(r1) -/* 8015D48C 0015A3EC 83 E1 00 14 */ lwz r31, 0x14(r1) -/* 8015D490 0015A3F0 83 C1 00 10 */ lwz r30, 0x10(r1) -/* 8015D494 0015A3F4 83 A1 00 0C */ lwz r29, 0xc(r1) -/* 8015D498 0015A3F8 7C 08 03 A6 */ mtlr r0 -/* 8015D49C 0015A3FC 38 21 00 30 */ addi r1, r1, 0x30 -/* 8015D4A0 0015A400 4E 80 00 20 */ blr - -.global __ct__17SCameraShakePointFiffff -__ct__17SCameraShakePointFiffff: -/* 8015D4A4 0015A404 90 83 00 00 */ stw r4, 0(r3) -/* 8015D4A8 0015A408 C0 02 9E E0 */ lfs f0, lbl_805ABC00@sda21(r2) -/* 8015D4AC 0015A40C D0 03 00 04 */ stfs f0, 4(r3) -/* 8015D4B0 0015A410 D0 83 00 08 */ stfs f4, 8(r3) -/* 8015D4B4 0015A414 D0 23 00 0C */ stfs f1, 0xc(r3) -/* 8015D4B8 0015A418 D0 43 00 10 */ stfs f2, 0x10(r3) -/* 8015D4BC 0015A41C D0 63 00 14 */ stfs f3, 0x14(r3) -/* 8015D4C0 0015A420 4E 80 00 20 */ blr - -.global BuildMissileShakeData__16CCameraShakeDataFfffRC9CVector3f -BuildMissileShakeData__16CCameraShakeDataFfffRC9CVector3f: -/* 8015D4C4 0015A424 94 21 FE 30 */ stwu r1, -0x1d0(r1) -/* 8015D4C8 0015A428 7C 08 02 A6 */ mflr r0 -/* 8015D4CC 0015A42C 90 01 01 D4 */ stw r0, 0x1d4(r1) -/* 8015D4D0 0015A430 DB E1 01 C8 */ stfd f31, 0x1c8(r1) -/* 8015D4D4 0015A434 FF E0 18 90 */ fmr f31, f3 -/* 8015D4D8 0015A438 93 E1 01 C4 */ stw r31, 0x1c4(r1) -/* 8015D4DC 0015A43C 7C 9F 23 78 */ mr r31, r4 -/* 8015D4E0 0015A440 93 C1 01 C0 */ stw r30, 0x1c0(r1) -/* 8015D4E4 0015A444 7C 7E 1B 78 */ mr r30, r3 -/* 8015D4E8 0015A448 38 61 00 14 */ addi r3, r1, 0x14 -/* 8015D4EC 0015A44C 48 00 03 45 */ bl __ct__16CCameraShakeDataFff -/* 8015D4F0 0015A450 38 61 00 E8 */ addi r3, r1, 0xe8 -/* 8015D4F4 0015A454 38 81 00 14 */ addi r4, r1, 0x14 -/* 8015D4F8 0015A458 4B EA D8 B1 */ bl __ct__16CCameraShakeDataFRC16CCameraShakeData -/* 8015D4FC 0015A45C 34 81 00 94 */ addic. r4, r1, 0x94 -/* 8015D500 0015A460 41 82 00 10 */ beq lbl_8015D510 -/* 8015D504 0015A464 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015D508 0015A468 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015D50C 0015A46C 90 04 00 00 */ stw r0, 0(r4) -lbl_8015D510: -/* 8015D510 0015A470 34 81 00 58 */ addic. r4, r1, 0x58 -/* 8015D514 0015A474 41 82 00 10 */ beq lbl_8015D524 -/* 8015D518 0015A478 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015D51C 0015A47C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015D520 0015A480 90 04 00 00 */ stw r0, 0(r4) -lbl_8015D524: -/* 8015D524 0015A484 34 81 00 1C */ addic. r4, r1, 0x1c -/* 8015D528 0015A488 41 82 00 10 */ beq lbl_8015D538 -/* 8015D52C 0015A48C 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015D530 0015A490 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015D534 0015A494 90 04 00 00 */ stw r0, 0(r4) -lbl_8015D538: -/* 8015D538 0015A498 80 DF 00 00 */ lwz r6, 0(r31) -/* 8015D53C 0015A49C FC 20 F8 90 */ fmr f1, f31 -/* 8015D540 0015A4A0 80 BF 00 04 */ lwz r5, 4(r31) -/* 8015D544 0015A4A4 38 61 00 E8 */ addi r3, r1, 0xe8 -/* 8015D548 0015A4A8 80 1F 00 08 */ lwz r0, 8(r31) -/* 8015D54C 0015A4AC 38 81 00 08 */ addi r4, r1, 8 -/* 8015D550 0015A4B0 90 C1 00 08 */ stw r6, 8(r1) -/* 8015D554 0015A4B4 90 A1 00 0C */ stw r5, 0xc(r1) -/* 8015D558 0015A4B8 90 01 00 10 */ stw r0, 0x10(r1) -/* 8015D55C 0015A4BC 4B FF F9 11 */ bl SetSfxPositionAndDistance__16CCameraShakeDataFRC9CVector3ff -/* 8015D560 0015A4C0 7F C3 F3 78 */ mr r3, r30 -/* 8015D564 0015A4C4 38 81 00 E8 */ addi r4, r1, 0xe8 -/* 8015D568 0015A4C8 4B EA D8 41 */ bl __ct__16CCameraShakeDataFRC16CCameraShakeData -/* 8015D56C 0015A4CC 34 81 01 68 */ addic. r4, r1, 0x168 -/* 8015D570 0015A4D0 41 82 00 10 */ beq lbl_8015D580 -/* 8015D574 0015A4D4 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015D578 0015A4D8 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015D57C 0015A4DC 90 04 00 00 */ stw r0, 0(r4) -lbl_8015D580: -/* 8015D580 0015A4E0 34 81 01 2C */ addic. r4, r1, 0x12c -/* 8015D584 0015A4E4 41 82 00 10 */ beq lbl_8015D594 -/* 8015D588 0015A4E8 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015D58C 0015A4EC 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015D590 0015A4F0 90 04 00 00 */ stw r0, 0(r4) -lbl_8015D594: -/* 8015D594 0015A4F4 34 81 00 F0 */ addic. r4, r1, 0xf0 -/* 8015D598 0015A4F8 41 82 00 10 */ beq lbl_8015D5A8 -/* 8015D59C 0015A4FC 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015D5A0 0015A500 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015D5A4 0015A504 90 04 00 00 */ stw r0, 0(r4) -lbl_8015D5A8: -/* 8015D5A8 0015A508 80 01 01 D4 */ lwz r0, 0x1d4(r1) -/* 8015D5AC 0015A50C CB E1 01 C8 */ lfd f31, 0x1c8(r1) -/* 8015D5B0 0015A510 83 E1 01 C4 */ lwz r31, 0x1c4(r1) -/* 8015D5B4 0015A514 83 C1 01 C0 */ lwz r30, 0x1c0(r1) -/* 8015D5B8 0015A518 7C 08 03 A6 */ mtlr r0 -/* 8015D5BC 0015A51C 38 21 01 D0 */ addi r1, r1, 0x1d0 -/* 8015D5C0 0015A520 4E 80 00 20 */ blr - -.global BuildPatternedExplodeShakeData__16CCameraShakeDataFRC9CVector3ffff -BuildPatternedExplodeShakeData__16CCameraShakeDataFRC9CVector3ffff: -/* 8015D5C4 0015A524 94 21 FE 30 */ stwu r1, -0x1d0(r1) -/* 8015D5C8 0015A528 7C 08 02 A6 */ mflr r0 -/* 8015D5CC 0015A52C 90 01 01 D4 */ stw r0, 0x1d4(r1) -/* 8015D5D0 0015A530 DB E1 01 C8 */ stfd f31, 0x1c8(r1) -/* 8015D5D4 0015A534 FF E0 18 90 */ fmr f31, f3 -/* 8015D5D8 0015A538 93 E1 01 C4 */ stw r31, 0x1c4(r1) -/* 8015D5DC 0015A53C 7C 9F 23 78 */ mr r31, r4 -/* 8015D5E0 0015A540 93 C1 01 C0 */ stw r30, 0x1c0(r1) -/* 8015D5E4 0015A544 7C 7E 1B 78 */ mr r30, r3 -/* 8015D5E8 0015A548 38 61 00 14 */ addi r3, r1, 0x14 -/* 8015D5EC 0015A54C 48 00 03 4D */ bl BuildPatternedExplodeShakeData__16CCameraShakeDataFff -/* 8015D5F0 0015A550 38 61 00 E8 */ addi r3, r1, 0xe8 -/* 8015D5F4 0015A554 38 81 00 14 */ addi r4, r1, 0x14 -/* 8015D5F8 0015A558 4B EA D7 B1 */ bl __ct__16CCameraShakeDataFRC16CCameraShakeData -/* 8015D5FC 0015A55C 34 81 00 94 */ addic. r4, r1, 0x94 -/* 8015D600 0015A560 41 82 00 10 */ beq lbl_8015D610 -/* 8015D604 0015A564 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015D608 0015A568 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015D60C 0015A56C 90 04 00 00 */ stw r0, 0(r4) -lbl_8015D610: -/* 8015D610 0015A570 34 81 00 58 */ addic. r4, r1, 0x58 -/* 8015D614 0015A574 41 82 00 10 */ beq lbl_8015D624 -/* 8015D618 0015A578 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015D61C 0015A57C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015D620 0015A580 90 04 00 00 */ stw r0, 0(r4) -lbl_8015D624: -/* 8015D624 0015A584 34 81 00 1C */ addic. r4, r1, 0x1c -/* 8015D628 0015A588 41 82 00 10 */ beq lbl_8015D638 -/* 8015D62C 0015A58C 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015D630 0015A590 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015D634 0015A594 90 04 00 00 */ stw r0, 0(r4) -lbl_8015D638: -/* 8015D638 0015A598 80 DF 00 00 */ lwz r6, 0(r31) -/* 8015D63C 0015A59C FC 20 F8 90 */ fmr f1, f31 -/* 8015D640 0015A5A0 80 BF 00 04 */ lwz r5, 4(r31) -/* 8015D644 0015A5A4 38 61 00 E8 */ addi r3, r1, 0xe8 -/* 8015D648 0015A5A8 80 1F 00 08 */ lwz r0, 8(r31) -/* 8015D64C 0015A5AC 38 81 00 08 */ addi r4, r1, 8 -/* 8015D650 0015A5B0 90 C1 00 08 */ stw r6, 8(r1) -/* 8015D654 0015A5B4 90 A1 00 0C */ stw r5, 0xc(r1) -/* 8015D658 0015A5B8 90 01 00 10 */ stw r0, 0x10(r1) -/* 8015D65C 0015A5BC 4B FF F8 11 */ bl SetSfxPositionAndDistance__16CCameraShakeDataFRC9CVector3ff -/* 8015D660 0015A5C0 7F C3 F3 78 */ mr r3, r30 -/* 8015D664 0015A5C4 38 81 00 E8 */ addi r4, r1, 0xe8 -/* 8015D668 0015A5C8 4B EA D7 41 */ bl __ct__16CCameraShakeDataFRC16CCameraShakeData -/* 8015D66C 0015A5CC 34 81 01 68 */ addic. r4, r1, 0x168 -/* 8015D670 0015A5D0 41 82 00 10 */ beq lbl_8015D680 -/* 8015D674 0015A5D4 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015D678 0015A5D8 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015D67C 0015A5DC 90 04 00 00 */ stw r0, 0(r4) -lbl_8015D680: -/* 8015D680 0015A5E0 34 81 01 2C */ addic. r4, r1, 0x12c -/* 8015D684 0015A5E4 41 82 00 10 */ beq lbl_8015D694 -/* 8015D688 0015A5E8 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015D68C 0015A5EC 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015D690 0015A5F0 90 04 00 00 */ stw r0, 0(r4) -lbl_8015D694: -/* 8015D694 0015A5F4 34 81 00 F0 */ addic. r4, r1, 0xf0 -/* 8015D698 0015A5F8 41 82 00 10 */ beq lbl_8015D6A8 -/* 8015D69C 0015A5FC 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015D6A0 0015A600 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015D6A4 0015A604 90 04 00 00 */ stw r0, 0(r4) -lbl_8015D6A8: -/* 8015D6A8 0015A608 80 01 01 D4 */ lwz r0, 0x1d4(r1) -/* 8015D6AC 0015A60C CB E1 01 C8 */ lfd f31, 0x1c8(r1) -/* 8015D6B0 0015A610 83 E1 01 C4 */ lwz r31, 0x1c4(r1) -/* 8015D6B4 0015A614 83 C1 01 C0 */ lwz r30, 0x1c0(r1) -/* 8015D6B8 0015A618 7C 08 03 A6 */ mtlr r0 -/* 8015D6BC 0015A61C 38 21 01 D0 */ addi r1, r1, 0x1d0 -/* 8015D6C0 0015A620 4E 80 00 20 */ blr - -.global BuildLandingCameraShake__16CCameraShakeDataFff -BuildLandingCameraShake__16CCameraShakeDataFff: -/* 8015D6C4 0015A624 94 21 FE B0 */ stwu r1, -0x150(r1) -/* 8015D6C8 0015A628 7C 08 02 A6 */ mflr r0 -/* 8015D6CC 0015A62C 90 01 01 54 */ stw r0, 0x154(r1) -/* 8015D6D0 0015A630 DB E1 01 40 */ stfd f31, 0x140(r1) -/* 8015D6D4 0015A634 F3 E1 01 48 */ psq_st f31, 328(r1), 0, qr0 -/* 8015D6D8 0015A638 DB C1 01 30 */ stfd f30, 0x130(r1) -/* 8015D6DC 0015A63C F3 C1 01 38 */ psq_st f30, 312(r1), 0, qr0 -/* 8015D6E0 0015A640 93 E1 01 2C */ stw r31, 0x12c(r1) -/* 8015D6E4 0015A644 FF E0 10 90 */ fmr f31, f2 -/* 8015D6E8 0015A648 7C 7F 1B 78 */ mr r31, r3 -/* 8015D6EC 0015A64C FF C0 08 90 */ fmr f30, f1 -/* 8015D6F0 0015A650 C0 22 9F 04 */ lfs f1, lbl_805ABC24@sda21(r2) -/* 8015D6F4 0015A654 C0 02 9F 08 */ lfs f0, lbl_805ABC28@sda21(r2) -/* 8015D6F8 0015A658 38 61 00 50 */ addi r3, r1, 0x50 -/* 8015D6FC 0015A65C FC 80 F8 90 */ fmr f4, f31 -/* 8015D700 0015A660 C0 42 9E E0 */ lfs f2, lbl_805ABC00@sda21(r2) -/* 8015D704 0015A664 EC 21 07 B2 */ fmuls f1, f1, f30 -/* 8015D708 0015A668 38 80 00 00 */ li r4, 0 -/* 8015D70C 0015A66C EC 60 07 B2 */ fmuls f3, f0, f30 -/* 8015D710 0015A670 4B FF FD 95 */ bl __ct__17SCameraShakePointFiffff -/* 8015D714 0015A674 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) -/* 8015D718 0015A678 38 61 00 38 */ addi r3, r1, 0x38 -/* 8015D71C 0015A67C C0 02 9F 0C */ lfs f0, lbl_805ABC2C@sda21(r2) -/* 8015D720 0015A680 38 80 00 01 */ li r4, 1 -/* 8015D724 0015A684 FC 40 08 90 */ fmr f2, f1 -/* 8015D728 0015A688 C0 82 9F 10 */ lfs f4, lbl_805ABC30@sda21(r2) -/* 8015D72C 0015A68C EC 60 07 B2 */ fmuls f3, f0, f30 -/* 8015D730 0015A690 4B FF FD 75 */ bl __ct__17SCameraShakePointFiffff -/* 8015D734 0015A694 38 61 00 E0 */ addi r3, r1, 0xe0 -/* 8015D738 0015A698 38 A1 00 50 */ addi r5, r1, 0x50 -/* 8015D73C 0015A69C 38 C1 00 38 */ addi r6, r1, 0x38 -/* 8015D740 0015A6A0 38 80 00 01 */ li r4, 1 -/* 8015D744 0015A6A4 4B FF FB 0D */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint -/* 8015D748 0015A6A8 C0 22 9F 14 */ lfs f1, lbl_805ABC34@sda21(r2) -/* 8015D74C 0015A6AC FC 80 F8 90 */ fmr f4, f31 -/* 8015D750 0015A6B0 C0 02 9E E8 */ lfs f0, lbl_805ABC08@sda21(r2) -/* 8015D754 0015A6B4 38 61 00 20 */ addi r3, r1, 0x20 -/* 8015D758 0015A6B8 EC 21 07 B2 */ fmuls f1, f1, f30 -/* 8015D75C 0015A6BC C0 42 9E E0 */ lfs f2, lbl_805ABC00@sda21(r2) -/* 8015D760 0015A6C0 EC 60 07 B2 */ fmuls f3, f0, f30 -/* 8015D764 0015A6C4 38 80 00 00 */ li r4, 0 -/* 8015D768 0015A6C8 4B FF FD 3D */ bl __ct__17SCameraShakePointFiffff -/* 8015D76C 0015A6CC C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) -/* 8015D770 0015A6D0 38 61 00 08 */ addi r3, r1, 8 -/* 8015D774 0015A6D4 C0 02 9E E4 */ lfs f0, lbl_805ABC04@sda21(r2) -/* 8015D778 0015A6D8 38 80 00 01 */ li r4, 1 -/* 8015D77C 0015A6DC FC 40 08 90 */ fmr f2, f1 -/* 8015D780 0015A6E0 C0 82 9E EC */ lfs f4, lbl_805ABC0C@sda21(r2) -/* 8015D784 0015A6E4 EC 60 07 B2 */ fmuls f3, f0, f30 -/* 8015D788 0015A6E8 4B FF FD 1D */ bl __ct__17SCameraShakePointFiffff -/* 8015D78C 0015A6EC 38 61 00 A4 */ addi r3, r1, 0xa4 -/* 8015D790 0015A6F0 38 A1 00 20 */ addi r5, r1, 0x20 -/* 8015D794 0015A6F4 38 C1 00 08 */ addi r6, r1, 8 -/* 8015D798 0015A6F8 38 80 00 01 */ li r4, 1 -/* 8015D79C 0015A6FC 4B FF FA B5 */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint -/* 8015D7A0 0015A700 38 61 00 68 */ addi r3, r1, 0x68 -/* 8015D7A4 0015A704 4B FF F9 8D */ bl __ct__22CCameraShakerComponentFv -/* 8015D7A8 0015A708 FC 20 F0 90 */ fmr f1, f30 -/* 8015D7AC 0015A70C 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8015D7B0 0015A710 C0 42 9E F4 */ lfs f2, lbl_805ABC14@sda21(r2) -/* 8015D7B4 0015A714 38 A3 66 A0 */ addi r5, r3, skZero3f@l -/* 8015D7B8 0015A718 7F E3 FB 78 */ mr r3, r31 -/* 8015D7BC 0015A71C 38 C1 00 E0 */ addi r6, r1, 0xe0 -/* 8015D7C0 0015A720 38 E1 00 68 */ addi r7, r1, 0x68 -/* 8015D7C4 0015A724 39 01 00 A4 */ addi r8, r1, 0xa4 -/* 8015D7C8 0015A728 38 80 00 00 */ li r4, 0 -/* 8015D7CC 0015A72C 4B FF F6 CD */ bl __ct__16CCameraShakeDataFffiRC9CVector3fRC22CCameraShakerComponentRC22CCameraShakerComponentRC22CCameraShakerComponent -/* 8015D7D0 0015A730 34 01 00 68 */ addic. r0, r1, 0x68 -/* 8015D7D4 0015A734 41 82 00 10 */ beq lbl_8015D7E4 -/* 8015D7D8 0015A738 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015D7DC 0015A73C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015D7E0 0015A740 90 01 00 68 */ stw r0, 0x68(r1) -lbl_8015D7E4: -/* 8015D7E4 0015A744 34 01 00 A4 */ addic. r0, r1, 0xa4 -/* 8015D7E8 0015A748 41 82 00 10 */ beq lbl_8015D7F8 -/* 8015D7EC 0015A74C 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015D7F0 0015A750 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015D7F4 0015A754 90 01 00 A4 */ stw r0, 0xa4(r1) -lbl_8015D7F8: -/* 8015D7F8 0015A758 34 01 00 E0 */ addic. r0, r1, 0xe0 -/* 8015D7FC 0015A75C 41 82 00 10 */ beq lbl_8015D80C -/* 8015D800 0015A760 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015D804 0015A764 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015D808 0015A768 90 01 00 E0 */ stw r0, 0xe0(r1) -lbl_8015D80C: -/* 8015D80C 0015A76C E3 E1 01 48 */ psq_l f31, 328(r1), 0, qr0 -/* 8015D810 0015A770 CB E1 01 40 */ lfd f31, 0x140(r1) -/* 8015D814 0015A774 E3 C1 01 38 */ psq_l f30, 312(r1), 0, qr0 -/* 8015D818 0015A778 CB C1 01 30 */ lfd f30, 0x130(r1) -/* 8015D81C 0015A77C 80 01 01 54 */ lwz r0, 0x154(r1) -/* 8015D820 0015A780 83 E1 01 2C */ lwz r31, 0x12c(r1) -/* 8015D824 0015A784 7C 08 03 A6 */ mtlr r0 -/* 8015D828 0015A788 38 21 01 50 */ addi r1, r1, 0x150 -/* 8015D82C 0015A78C 4E 80 00 20 */ blr - -.global __ct__16CCameraShakeDataFff -__ct__16CCameraShakeDataFff: -/* 8015D830 0015A790 94 21 FE F0 */ stwu r1, -0x110(r1) -/* 8015D834 0015A794 7C 08 02 A6 */ mflr r0 -/* 8015D838 0015A798 90 01 01 14 */ stw r0, 0x114(r1) -/* 8015D83C 0015A79C DB E1 01 00 */ stfd f31, 0x100(r1) -/* 8015D840 0015A7A0 F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 -/* 8015D844 0015A7A4 93 E1 00 FC */ stw r31, 0xfc(r1) -/* 8015D848 0015A7A8 FF E0 08 90 */ fmr f31, f1 -/* 8015D84C 0015A7AC C0 22 9F 14 */ lfs f1, lbl_805ABC34@sda21(r2) -/* 8015D850 0015A7B0 C0 02 9E E8 */ lfs f0, lbl_805ABC08@sda21(r2) -/* 8015D854 0015A7B4 FC 80 10 90 */ fmr f4, f2 -/* 8015D858 0015A7B8 7C 7F 1B 78 */ mr r31, r3 -/* 8015D85C 0015A7BC C0 42 9E E0 */ lfs f2, lbl_805ABC00@sda21(r2) -/* 8015D860 0015A7C0 EC 21 07 F2 */ fmuls f1, f1, f31 -/* 8015D864 0015A7C4 38 61 00 20 */ addi r3, r1, 0x20 -/* 8015D868 0015A7C8 EC 60 07 F2 */ fmuls f3, f0, f31 -/* 8015D86C 0015A7CC 38 80 00 00 */ li r4, 0 -/* 8015D870 0015A7D0 4B FF FC 35 */ bl __ct__17SCameraShakePointFiffff -/* 8015D874 0015A7D4 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) -/* 8015D878 0015A7D8 38 61 00 08 */ addi r3, r1, 8 -/* 8015D87C 0015A7DC C0 02 9E E4 */ lfs f0, lbl_805ABC04@sda21(r2) -/* 8015D880 0015A7E0 38 80 00 01 */ li r4, 1 -/* 8015D884 0015A7E4 FC 40 08 90 */ fmr f2, f1 -/* 8015D888 0015A7E8 C0 82 9E EC */ lfs f4, lbl_805ABC0C@sda21(r2) -/* 8015D88C 0015A7EC EC 60 07 F2 */ fmuls f3, f0, f31 -/* 8015D890 0015A7F0 4B FF FC 15 */ bl __ct__17SCameraShakePointFiffff -/* 8015D894 0015A7F4 38 61 00 B0 */ addi r3, r1, 0xb0 -/* 8015D898 0015A7F8 38 A1 00 20 */ addi r5, r1, 0x20 -/* 8015D89C 0015A7FC 38 C1 00 08 */ addi r6, r1, 8 -/* 8015D8A0 0015A800 38 80 00 01 */ li r4, 1 -/* 8015D8A4 0015A804 4B FF F9 AD */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint -/* 8015D8A8 0015A808 38 61 00 74 */ addi r3, r1, 0x74 -/* 8015D8AC 0015A80C 4B FF F8 85 */ bl __ct__22CCameraShakerComponentFv -/* 8015D8B0 0015A810 38 61 00 38 */ addi r3, r1, 0x38 -/* 8015D8B4 0015A814 4B FF F8 7D */ bl __ct__22CCameraShakerComponentFv -/* 8015D8B8 0015A818 FC 20 F8 90 */ fmr f1, f31 -/* 8015D8BC 0015A81C 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8015D8C0 0015A820 C0 42 9E F4 */ lfs f2, lbl_805ABC14@sda21(r2) -/* 8015D8C4 0015A824 38 A3 66 A0 */ addi r5, r3, skZero3f@l -/* 8015D8C8 0015A828 7F E3 FB 78 */ mr r3, r31 -/* 8015D8CC 0015A82C 38 C1 00 74 */ addi r6, r1, 0x74 -/* 8015D8D0 0015A830 38 E1 00 38 */ addi r7, r1, 0x38 -/* 8015D8D4 0015A834 39 01 00 B0 */ addi r8, r1, 0xb0 -/* 8015D8D8 0015A838 38 80 00 00 */ li r4, 0 -/* 8015D8DC 0015A83C 4B FF F5 BD */ bl __ct__16CCameraShakeDataFffiRC9CVector3fRC22CCameraShakerComponentRC22CCameraShakerComponentRC22CCameraShakerComponent -/* 8015D8E0 0015A840 34 01 00 38 */ addic. r0, r1, 0x38 -/* 8015D8E4 0015A844 41 82 00 10 */ beq lbl_8015D8F4 -/* 8015D8E8 0015A848 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015D8EC 0015A84C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015D8F0 0015A850 90 01 00 38 */ stw r0, 0x38(r1) -lbl_8015D8F4: -/* 8015D8F4 0015A854 34 01 00 74 */ addic. r0, r1, 0x74 -/* 8015D8F8 0015A858 41 82 00 10 */ beq lbl_8015D908 -/* 8015D8FC 0015A85C 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015D900 0015A860 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015D904 0015A864 90 01 00 74 */ stw r0, 0x74(r1) -lbl_8015D908: -/* 8015D908 0015A868 34 01 00 B0 */ addic. r0, r1, 0xb0 -/* 8015D90C 0015A86C 41 82 00 10 */ beq lbl_8015D91C -/* 8015D910 0015A870 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015D914 0015A874 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015D918 0015A878 90 01 00 B0 */ stw r0, 0xb0(r1) -lbl_8015D91C: -/* 8015D91C 0015A87C E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 -/* 8015D920 0015A880 80 01 01 14 */ lwz r0, 0x114(r1) -/* 8015D924 0015A884 CB E1 01 00 */ lfd f31, 0x100(r1) -/* 8015D928 0015A888 83 E1 00 FC */ lwz r31, 0xfc(r1) -/* 8015D92C 0015A88C 7C 08 03 A6 */ mtlr r0 -/* 8015D930 0015A890 38 21 01 10 */ addi r1, r1, 0x110 -/* 8015D934 0015A894 4E 80 00 20 */ blr - -.global BuildPatternedExplodeShakeData__16CCameraShakeDataFff -BuildPatternedExplodeShakeData__16CCameraShakeDataFff: -/* 8015D938 0015A898 94 21 FE F0 */ stwu r1, -0x110(r1) -/* 8015D93C 0015A89C 7C 08 02 A6 */ mflr r0 -/* 8015D940 0015A8A0 90 01 01 14 */ stw r0, 0x114(r1) -/* 8015D944 0015A8A4 DB E1 01 00 */ stfd f31, 0x100(r1) -/* 8015D948 0015A8A8 F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 -/* 8015D94C 0015A8AC 93 E1 00 FC */ stw r31, 0xfc(r1) -/* 8015D950 0015A8B0 FF E0 08 90 */ fmr f31, f1 -/* 8015D954 0015A8B4 C0 22 9F 14 */ lfs f1, lbl_805ABC34@sda21(r2) -/* 8015D958 0015A8B8 C0 02 9E E8 */ lfs f0, lbl_805ABC08@sda21(r2) -/* 8015D95C 0015A8BC FC 80 10 90 */ fmr f4, f2 -/* 8015D960 0015A8C0 7C 7F 1B 78 */ mr r31, r3 -/* 8015D964 0015A8C4 C0 42 9E E0 */ lfs f2, lbl_805ABC00@sda21(r2) -/* 8015D968 0015A8C8 EC 21 07 F2 */ fmuls f1, f1, f31 -/* 8015D96C 0015A8CC 38 61 00 20 */ addi r3, r1, 0x20 -/* 8015D970 0015A8D0 EC 60 07 F2 */ fmuls f3, f0, f31 -/* 8015D974 0015A8D4 38 80 00 00 */ li r4, 0 -/* 8015D978 0015A8D8 4B FF FB 2D */ bl __ct__17SCameraShakePointFiffff -/* 8015D97C 0015A8DC C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) -/* 8015D980 0015A8E0 38 61 00 08 */ addi r3, r1, 8 -/* 8015D984 0015A8E4 C0 02 9E E4 */ lfs f0, lbl_805ABC04@sda21(r2) -/* 8015D988 0015A8E8 38 80 00 01 */ li r4, 1 -/* 8015D98C 0015A8EC FC 40 08 90 */ fmr f2, f1 -/* 8015D990 0015A8F0 C0 82 9E EC */ lfs f4, lbl_805ABC0C@sda21(r2) -/* 8015D994 0015A8F4 EC 60 07 F2 */ fmuls f3, f0, f31 -/* 8015D998 0015A8F8 4B FF FB 0D */ bl __ct__17SCameraShakePointFiffff -/* 8015D99C 0015A8FC 38 61 00 B0 */ addi r3, r1, 0xb0 -/* 8015D9A0 0015A900 38 A1 00 20 */ addi r5, r1, 0x20 -/* 8015D9A4 0015A904 38 C1 00 08 */ addi r6, r1, 8 -/* 8015D9A8 0015A908 38 80 00 01 */ li r4, 1 -/* 8015D9AC 0015A90C 4B FF F8 A5 */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint -/* 8015D9B0 0015A910 38 61 00 74 */ addi r3, r1, 0x74 -/* 8015D9B4 0015A914 4B FF F7 7D */ bl __ct__22CCameraShakerComponentFv -/* 8015D9B8 0015A918 38 61 00 38 */ addi r3, r1, 0x38 -/* 8015D9BC 0015A91C 4B FF F7 75 */ bl __ct__22CCameraShakerComponentFv -/* 8015D9C0 0015A920 FC 20 F8 90 */ fmr f1, f31 -/* 8015D9C4 0015A924 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8015D9C8 0015A928 C0 42 9E F4 */ lfs f2, lbl_805ABC14@sda21(r2) -/* 8015D9CC 0015A92C 38 A3 66 A0 */ addi r5, r3, skZero3f@l -/* 8015D9D0 0015A930 7F E3 FB 78 */ mr r3, r31 -/* 8015D9D4 0015A934 38 C1 00 B0 */ addi r6, r1, 0xb0 -/* 8015D9D8 0015A938 38 E1 00 74 */ addi r7, r1, 0x74 -/* 8015D9DC 0015A93C 39 01 00 38 */ addi r8, r1, 0x38 -/* 8015D9E0 0015A940 38 80 00 00 */ li r4, 0 -/* 8015D9E4 0015A944 4B FF F4 B5 */ bl __ct__16CCameraShakeDataFffiRC9CVector3fRC22CCameraShakerComponentRC22CCameraShakerComponentRC22CCameraShakerComponent -/* 8015D9E8 0015A948 34 01 00 38 */ addic. r0, r1, 0x38 -/* 8015D9EC 0015A94C 41 82 00 10 */ beq lbl_8015D9FC -/* 8015D9F0 0015A950 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015D9F4 0015A954 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015D9F8 0015A958 90 01 00 38 */ stw r0, 0x38(r1) -lbl_8015D9FC: -/* 8015D9FC 0015A95C 34 01 00 74 */ addic. r0, r1, 0x74 -/* 8015DA00 0015A960 41 82 00 10 */ beq lbl_8015DA10 -/* 8015DA04 0015A964 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015DA08 0015A968 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015DA0C 0015A96C 90 01 00 74 */ stw r0, 0x74(r1) -lbl_8015DA10: -/* 8015DA10 0015A970 34 01 00 B0 */ addic. r0, r1, 0xb0 -/* 8015DA14 0015A974 41 82 00 10 */ beq lbl_8015DA24 -/* 8015DA18 0015A978 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015DA1C 0015A97C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015DA20 0015A980 90 01 00 B0 */ stw r0, 0xb0(r1) -lbl_8015DA24: -/* 8015DA24 0015A984 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 -/* 8015DA28 0015A988 80 01 01 14 */ lwz r0, 0x114(r1) -/* 8015DA2C 0015A98C CB E1 01 00 */ lfd f31, 0x100(r1) -/* 8015DA30 0015A990 83 E1 00 FC */ lwz r31, 0xfc(r1) -/* 8015DA34 0015A994 7C 08 03 A6 */ mtlr r0 -/* 8015DA38 0015A998 38 21 01 10 */ addi r1, r1, 0x110 -/* 8015DA3C 0015A99C 4E 80 00 20 */ blr - -.global BuildPhazonCameraShakeData__16CCameraShakeDataFff -BuildPhazonCameraShakeData__16CCameraShakeDataFff: -/* 8015DA40 0015A9A0 94 21 FE A0 */ stwu r1, -0x160(r1) -/* 8015DA44 0015A9A4 7C 08 02 A6 */ mflr r0 -/* 8015DA48 0015A9A8 90 01 01 64 */ stw r0, 0x164(r1) -/* 8015DA4C 0015A9AC DB E1 01 50 */ stfd f31, 0x150(r1) -/* 8015DA50 0015A9B0 F3 E1 01 58 */ psq_st f31, 344(r1), 0, qr0 -/* 8015DA54 0015A9B4 DB C1 01 40 */ stfd f30, 0x140(r1) -/* 8015DA58 0015A9B8 F3 C1 01 48 */ psq_st f30, 328(r1), 0, qr0 -/* 8015DA5C 0015A9BC DB A1 01 30 */ stfd f29, 0x130(r1) -/* 8015DA60 0015A9C0 F3 A1 01 38 */ psq_st f29, 312(r1), 0, qr0 -/* 8015DA64 0015A9C4 93 E1 01 2C */ stw r31, 0x12c(r1) -/* 8015DA68 0015A9C8 FF A0 08 90 */ fmr f29, f1 -/* 8015DA6C 0015A9CC C0 02 9F 14 */ lfs f0, lbl_805ABC34@sda21(r2) -/* 8015DA70 0015A9D0 FF C0 10 90 */ fmr f30, f2 -/* 8015DA74 0015A9D4 C0 22 9F 04 */ lfs f1, lbl_805ABC24@sda21(r2) -/* 8015DA78 0015A9D8 7C 7F 1B 78 */ mr r31, r3 -/* 8015DA7C 0015A9DC C0 42 9E E0 */ lfs f2, lbl_805ABC00@sda21(r2) -/* 8015DA80 0015A9E0 EF E0 07 72 */ fmuls f31, f0, f29 -/* 8015DA84 0015A9E4 38 61 00 50 */ addi r3, r1, 0x50 -/* 8015DA88 0015A9E8 FC 80 F0 90 */ fmr f4, f30 -/* 8015DA8C 0015A9EC 38 80 00 00 */ li r4, 0 -/* 8015DA90 0015A9F0 EC 21 07 72 */ fmuls f1, f1, f29 -/* 8015DA94 0015A9F4 FC 60 F8 90 */ fmr f3, f31 -/* 8015DA98 0015A9F8 4B FF FA 0D */ bl __ct__17SCameraShakePointFiffff -/* 8015DA9C 0015A9FC C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) -/* 8015DAA0 0015AA00 38 61 00 38 */ addi r3, r1, 0x38 -/* 8015DAA4 0015AA04 C0 02 9F 0C */ lfs f0, lbl_805ABC2C@sda21(r2) -/* 8015DAA8 0015AA08 38 80 00 01 */ li r4, 1 -/* 8015DAAC 0015AA0C FC 40 08 90 */ fmr f2, f1 -/* 8015DAB0 0015AA10 C0 82 9F 18 */ lfs f4, lbl_805ABC38@sda21(r2) -/* 8015DAB4 0015AA14 EC 60 07 72 */ fmuls f3, f0, f29 -/* 8015DAB8 0015AA18 4B FF F9 ED */ bl __ct__17SCameraShakePointFiffff -/* 8015DABC 0015AA1C 38 61 00 E0 */ addi r3, r1, 0xe0 -/* 8015DAC0 0015AA20 38 A1 00 50 */ addi r5, r1, 0x50 -/* 8015DAC4 0015AA24 38 C1 00 38 */ addi r6, r1, 0x38 -/* 8015DAC8 0015AA28 38 80 00 01 */ li r4, 1 -/* 8015DACC 0015AA2C 4B FF F7 85 */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint -/* 8015DAD0 0015AA30 FC 20 F8 90 */ fmr f1, f31 -/* 8015DAD4 0015AA34 C0 42 9E E0 */ lfs f2, lbl_805ABC00@sda21(r2) -/* 8015DAD8 0015AA38 FC 60 F8 90 */ fmr f3, f31 -/* 8015DADC 0015AA3C 38 61 00 20 */ addi r3, r1, 0x20 -/* 8015DAE0 0015AA40 FC 80 F0 90 */ fmr f4, f30 -/* 8015DAE4 0015AA44 38 80 00 00 */ li r4, 0 -/* 8015DAE8 0015AA48 4B FF F9 BD */ bl __ct__17SCameraShakePointFiffff -/* 8015DAEC 0015AA4C C0 82 9E E4 */ lfs f4, lbl_805ABC04@sda21(r2) -/* 8015DAF0 0015AA50 38 61 00 08 */ addi r3, r1, 8 -/* 8015DAF4 0015AA54 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) -/* 8015DAF8 0015AA58 38 80 00 01 */ li r4, 1 -/* 8015DAFC 0015AA5C EC 64 07 72 */ fmuls f3, f4, f29 -/* 8015DB00 0015AA60 FC 40 08 90 */ fmr f2, f1 -/* 8015DB04 0015AA64 4B FF F9 A1 */ bl __ct__17SCameraShakePointFiffff -/* 8015DB08 0015AA68 38 61 00 A4 */ addi r3, r1, 0xa4 -/* 8015DB0C 0015AA6C 38 A1 00 20 */ addi r5, r1, 0x20 -/* 8015DB10 0015AA70 38 C1 00 08 */ addi r6, r1, 8 -/* 8015DB14 0015AA74 38 80 00 01 */ li r4, 1 -/* 8015DB18 0015AA78 4B FF F7 39 */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint -/* 8015DB1C 0015AA7C 38 61 00 68 */ addi r3, r1, 0x68 -/* 8015DB20 0015AA80 4B FF F6 11 */ bl __ct__22CCameraShakerComponentFv -/* 8015DB24 0015AA84 FC 20 E8 90 */ fmr f1, f29 -/* 8015DB28 0015AA88 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8015DB2C 0015AA8C C0 42 9E F4 */ lfs f2, lbl_805ABC14@sda21(r2) -/* 8015DB30 0015AA90 38 A3 66 A0 */ addi r5, r3, skZero3f@l -/* 8015DB34 0015AA94 7F E3 FB 78 */ mr r3, r31 -/* 8015DB38 0015AA98 38 C1 00 E0 */ addi r6, r1, 0xe0 -/* 8015DB3C 0015AA9C 38 E1 00 68 */ addi r7, r1, 0x68 -/* 8015DB40 0015AAA0 39 01 00 A4 */ addi r8, r1, 0xa4 -/* 8015DB44 0015AAA4 38 80 00 00 */ li r4, 0 -/* 8015DB48 0015AAA8 4B FF F3 51 */ bl __ct__16CCameraShakeDataFffiRC9CVector3fRC22CCameraShakerComponentRC22CCameraShakerComponentRC22CCameraShakerComponent -/* 8015DB4C 0015AAAC 34 01 00 68 */ addic. r0, r1, 0x68 -/* 8015DB50 0015AAB0 41 82 00 10 */ beq lbl_8015DB60 -/* 8015DB54 0015AAB4 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015DB58 0015AAB8 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015DB5C 0015AABC 90 01 00 68 */ stw r0, 0x68(r1) -lbl_8015DB60: -/* 8015DB60 0015AAC0 34 01 00 A4 */ addic. r0, r1, 0xa4 -/* 8015DB64 0015AAC4 41 82 00 10 */ beq lbl_8015DB74 -/* 8015DB68 0015AAC8 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015DB6C 0015AACC 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015DB70 0015AAD0 90 01 00 A4 */ stw r0, 0xa4(r1) -lbl_8015DB74: -/* 8015DB74 0015AAD4 34 01 00 E0 */ addic. r0, r1, 0xe0 -/* 8015DB78 0015AAD8 41 82 00 10 */ beq lbl_8015DB88 -/* 8015DB7C 0015AADC 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015DB80 0015AAE0 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015DB84 0015AAE4 90 01 00 E0 */ stw r0, 0xe0(r1) -lbl_8015DB88: -/* 8015DB88 0015AAE8 E3 E1 01 58 */ psq_l f31, 344(r1), 0, qr0 -/* 8015DB8C 0015AAEC CB E1 01 50 */ lfd f31, 0x150(r1) -/* 8015DB90 0015AAF0 E3 C1 01 48 */ psq_l f30, 328(r1), 0, qr0 -/* 8015DB94 0015AAF4 CB C1 01 40 */ lfd f30, 0x140(r1) -/* 8015DB98 0015AAF8 E3 A1 01 38 */ psq_l f29, 312(r1), 0, qr0 -/* 8015DB9C 0015AAFC CB A1 01 30 */ lfd f29, 0x130(r1) -/* 8015DBA0 0015AB00 80 01 01 64 */ lwz r0, 0x164(r1) -/* 8015DBA4 0015AB04 83 E1 01 2C */ lwz r31, 0x12c(r1) -/* 8015DBA8 0015AB08 7C 08 03 A6 */ mtlr r0 -/* 8015DBAC 0015AB0C 38 21 01 60 */ addi r1, r1, 0x160 -/* 8015DBB0 0015AB10 4E 80 00 20 */ blr - -.global BuildProjectileCameraShake__16CCameraShakeDataFff -BuildProjectileCameraShake__16CCameraShakeDataFff: -/* 8015DBB4 0015AB14 94 21 FE F0 */ stwu r1, -0x110(r1) -/* 8015DBB8 0015AB18 7C 08 02 A6 */ mflr r0 -/* 8015DBBC 0015AB1C 90 01 01 14 */ stw r0, 0x114(r1) -/* 8015DBC0 0015AB20 DB E1 01 00 */ stfd f31, 0x100(r1) -/* 8015DBC4 0015AB24 F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 -/* 8015DBC8 0015AB28 93 E1 00 FC */ stw r31, 0xfc(r1) -/* 8015DBCC 0015AB2C FF E0 08 90 */ fmr f31, f1 -/* 8015DBD0 0015AB30 7C 7F 1B 78 */ mr r31, r3 -/* 8015DBD4 0015AB34 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) -/* 8015DBD8 0015AB38 FC 80 10 90 */ fmr f4, f2 -/* 8015DBDC 0015AB3C 38 61 00 20 */ addi r3, r1, 0x20 -/* 8015DBE0 0015AB40 38 80 00 00 */ li r4, 0 -/* 8015DBE4 0015AB44 FC 40 08 90 */ fmr f2, f1 -/* 8015DBE8 0015AB48 FC 60 F8 90 */ fmr f3, f31 -/* 8015DBEC 0015AB4C 4B FF F8 B9 */ bl __ct__17SCameraShakePointFiffff -/* 8015DBF0 0015AB50 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) -/* 8015DBF4 0015AB54 38 61 00 08 */ addi r3, r1, 8 -/* 8015DBF8 0015AB58 C0 02 9E E4 */ lfs f0, lbl_805ABC04@sda21(r2) -/* 8015DBFC 0015AB5C 38 80 00 01 */ li r4, 1 -/* 8015DC00 0015AB60 FC 40 08 90 */ fmr f2, f1 -/* 8015DC04 0015AB64 C0 82 9E F0 */ lfs f4, lbl_805ABC10@sda21(r2) -/* 8015DC08 0015AB68 EC 60 07 F2 */ fmuls f3, f0, f31 -/* 8015DC0C 0015AB6C 4B FF F8 99 */ bl __ct__17SCameraShakePointFiffff -/* 8015DC10 0015AB70 38 61 00 B0 */ addi r3, r1, 0xb0 -/* 8015DC14 0015AB74 38 A1 00 20 */ addi r5, r1, 0x20 -/* 8015DC18 0015AB78 38 C1 00 08 */ addi r6, r1, 8 -/* 8015DC1C 0015AB7C 38 80 00 01 */ li r4, 1 -/* 8015DC20 0015AB80 4B FF F6 31 */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint -/* 8015DC24 0015AB84 38 61 00 74 */ addi r3, r1, 0x74 -/* 8015DC28 0015AB88 4B FF F5 09 */ bl __ct__22CCameraShakerComponentFv -/* 8015DC2C 0015AB8C 38 61 00 38 */ addi r3, r1, 0x38 -/* 8015DC30 0015AB90 4B FF F5 01 */ bl __ct__22CCameraShakerComponentFv -/* 8015DC34 0015AB94 FC 20 F8 90 */ fmr f1, f31 -/* 8015DC38 0015AB98 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8015DC3C 0015AB9C C0 42 9E F4 */ lfs f2, lbl_805ABC14@sda21(r2) -/* 8015DC40 0015ABA0 38 A3 66 A0 */ addi r5, r3, skZero3f@l -/* 8015DC44 0015ABA4 7F E3 FB 78 */ mr r3, r31 -/* 8015DC48 0015ABA8 38 C1 00 B0 */ addi r6, r1, 0xb0 -/* 8015DC4C 0015ABAC 38 E1 00 74 */ addi r7, r1, 0x74 -/* 8015DC50 0015ABB0 39 01 00 38 */ addi r8, r1, 0x38 -/* 8015DC54 0015ABB4 38 80 00 00 */ li r4, 0 -/* 8015DC58 0015ABB8 4B FF F2 41 */ bl __ct__16CCameraShakeDataFffiRC9CVector3fRC22CCameraShakerComponentRC22CCameraShakerComponentRC22CCameraShakerComponent -/* 8015DC5C 0015ABBC 34 01 00 38 */ addic. r0, r1, 0x38 -/* 8015DC60 0015ABC0 41 82 00 10 */ beq lbl_8015DC70 -/* 8015DC64 0015ABC4 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015DC68 0015ABC8 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015DC6C 0015ABCC 90 01 00 38 */ stw r0, 0x38(r1) -lbl_8015DC70: -/* 8015DC70 0015ABD0 34 01 00 74 */ addic. r0, r1, 0x74 -/* 8015DC74 0015ABD4 41 82 00 10 */ beq lbl_8015DC84 -/* 8015DC78 0015ABD8 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015DC7C 0015ABDC 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015DC80 0015ABE0 90 01 00 74 */ stw r0, 0x74(r1) -lbl_8015DC84: -/* 8015DC84 0015ABE4 34 01 00 B0 */ addic. r0, r1, 0xb0 -/* 8015DC88 0015ABE8 41 82 00 10 */ beq lbl_8015DC98 -/* 8015DC8C 0015ABEC 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015DC90 0015ABF0 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015DC94 0015ABF4 90 01 00 B0 */ stw r0, 0xb0(r1) -lbl_8015DC98: -/* 8015DC98 0015ABF8 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 -/* 8015DC9C 0015ABFC 80 01 01 14 */ lwz r0, 0x114(r1) -/* 8015DCA0 0015AC00 CB E1 01 00 */ lfd f31, 0x100(r1) -/* 8015DCA4 0015AC04 83 E1 00 FC */ lwz r31, 0xfc(r1) -/* 8015DCA8 0015AC08 7C 08 03 A6 */ mtlr r0 -/* 8015DCAC 0015AC0C 38 21 01 10 */ addi r1, r1, 0x110 -/* 8015DCB0 0015AC10 4E 80 00 20 */ blr - -.global __sinit_CCameraShakeData_cpp -__sinit_CCameraShakeData_cpp: -/* 8015DCB4 0015AC14 94 21 FE 80 */ stwu r1, -0x180(r1) -/* 8015DCB8 0015AC18 7C 08 02 A6 */ mflr r0 -/* 8015DCBC 0015AC1C C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) -/* 8015DCC0 0015AC20 3C 60 80 47 */ lis r3, lbl_8046C7D0@ha -/* 8015DCC4 0015AC24 90 01 01 84 */ stw r0, 0x184(r1) -/* 8015DCC8 0015AC28 38 80 00 00 */ li r4, 0 -/* 8015DCCC 0015AC2C FC 40 08 90 */ fmr f2, f1 -/* 8015DCD0 0015AC30 C0 62 9F 18 */ lfs f3, lbl_805ABC38@sda21(r2) -/* 8015DCD4 0015AC34 93 E1 01 7C */ stw r31, 0x17c(r1) -/* 8015DCD8 0015AC38 3B E3 C7 D0 */ addi r31, r3, lbl_8046C7D0@l -/* 8015DCDC 0015AC3C C0 82 9F 1C */ lfs f4, lbl_805ABC3C@sda21(r2) -/* 8015DCE0 0015AC40 38 7F 00 00 */ addi r3, r31, 0 -/* 8015DCE4 0015AC44 4B FF F7 C1 */ bl __ct__17SCameraShakePointFiffff -/* 8015DCE8 0015AC48 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) -/* 8015DCEC 0015AC4C 38 7F 00 18 */ addi r3, r31, 0x18 -/* 8015DCF0 0015AC50 C0 62 9F 18 */ lfs f3, lbl_805ABC38@sda21(r2) -/* 8015DCF4 0015AC54 38 80 00 00 */ li r4, 0 -/* 8015DCF8 0015AC58 FC 40 08 90 */ fmr f2, f1 -/* 8015DCFC 0015AC5C C0 82 9F 20 */ lfs f4, lbl_805ABC40@sda21(r2) -/* 8015DD00 0015AC60 4B FF F7 A5 */ bl __ct__17SCameraShakePointFiffff -/* 8015DD04 0015AC64 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) -/* 8015DD08 0015AC68 38 7F 00 30 */ addi r3, r31, 0x30 -/* 8015DD0C 0015AC6C C0 62 9F 24 */ lfs f3, lbl_805ABC44@sda21(r2) -/* 8015DD10 0015AC70 38 80 00 01 */ li r4, 1 -/* 8015DD14 0015AC74 FC 40 08 90 */ fmr f2, f1 -/* 8015DD18 0015AC78 C0 82 9F 18 */ lfs f4, lbl_805ABC38@sda21(r2) -/* 8015DD1C 0015AC7C 4B FF F7 89 */ bl __ct__17SCameraShakePointFiffff -/* 8015DD20 0015AC80 C0 22 9E E0 */ lfs f1, lbl_805ABC00@sda21(r2) -/* 8015DD24 0015AC84 38 7F 00 48 */ addi r3, r31, 0x48 -/* 8015DD28 0015AC88 C0 62 9F 24 */ lfs f3, lbl_805ABC44@sda21(r2) -/* 8015DD2C 0015AC8C 38 80 00 01 */ li r4, 1 -/* 8015DD30 0015AC90 FC 40 08 90 */ fmr f2, f1 -/* 8015DD34 0015AC94 C0 82 9E E4 */ lfs f4, lbl_805ABC04@sda21(r2) -/* 8015DD38 0015AC98 4B FF F7 6D */ bl __ct__17SCameraShakePointFiffff -/* 8015DD3C 0015AC9C 38 61 01 34 */ addi r3, r1, 0x134 -/* 8015DD40 0015ACA0 4B FF F3 F1 */ bl __ct__22CCameraShakerComponentFv -/* 8015DD44 0015ACA4 38 61 00 F8 */ addi r3, r1, 0xf8 -/* 8015DD48 0015ACA8 38 BF 00 00 */ addi r5, r31, 0 -/* 8015DD4C 0015ACAC 38 DF 00 30 */ addi r6, r31, 0x30 -/* 8015DD50 0015ACB0 38 80 00 01 */ li r4, 1 -/* 8015DD54 0015ACB4 4B FF F4 FD */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint -/* 8015DD58 0015ACB8 38 61 00 BC */ addi r3, r1, 0xbc -/* 8015DD5C 0015ACBC 4B FF F3 D5 */ bl __ct__22CCameraShakerComponentFv -/* 8015DD60 0015ACC0 3C 60 80 57 */ lis r3, lbl_805719E8@ha -/* 8015DD64 0015ACC4 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8015DD68 0015ACC8 38 A4 66 A0 */ addi r5, r4, skZero3f@l -/* 8015DD6C 0015ACCC C0 22 9F 18 */ lfs f1, lbl_805ABC38@sda21(r2) -/* 8015DD70 0015ACD0 C0 42 9E F4 */ lfs f2, lbl_805ABC14@sda21(r2) -/* 8015DD74 0015ACD4 38 63 19 E8 */ addi r3, r3, lbl_805719E8@l -/* 8015DD78 0015ACD8 38 C1 01 34 */ addi r6, r1, 0x134 -/* 8015DD7C 0015ACDC 38 E1 00 F8 */ addi r7, r1, 0xf8 -/* 8015DD80 0015ACE0 39 01 00 BC */ addi r8, r1, 0xbc -/* 8015DD84 0015ACE4 38 80 00 00 */ li r4, 0 -/* 8015DD88 0015ACE8 4B FF F1 11 */ bl __ct__16CCameraShakeDataFffiRC9CVector3fRC22CCameraShakerComponentRC22CCameraShakerComponentRC22CCameraShakerComponent -/* 8015DD8C 0015ACEC 3C 80 80 01 */ lis r4, sub_8000ad2c@ha -/* 8015DD90 0015ACF0 38 BF 00 60 */ addi r5, r31, 0x60 -/* 8015DD94 0015ACF4 38 84 AD 2C */ addi r4, r4, sub_8000ad2c@l -/* 8015DD98 0015ACF8 48 22 B8 F5 */ bl __register_global_object -/* 8015DD9C 0015ACFC 34 01 00 BC */ addic. r0, r1, 0xbc -/* 8015DDA0 0015AD00 41 82 00 10 */ beq lbl_8015DDB0 -/* 8015DDA4 0015AD04 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015DDA8 0015AD08 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015DDAC 0015AD0C 90 01 00 BC */ stw r0, 0xbc(r1) -lbl_8015DDB0: -/* 8015DDB0 0015AD10 34 01 00 F8 */ addic. r0, r1, 0xf8 -/* 8015DDB4 0015AD14 41 82 00 10 */ beq lbl_8015DDC4 -/* 8015DDB8 0015AD18 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015DDBC 0015AD1C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015DDC0 0015AD20 90 01 00 F8 */ stw r0, 0xf8(r1) -lbl_8015DDC4: -/* 8015DDC4 0015AD24 34 01 01 34 */ addic. r0, r1, 0x134 -/* 8015DDC8 0015AD28 41 82 00 10 */ beq lbl_8015DDD8 -/* 8015DDCC 0015AD2C 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015DDD0 0015AD30 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015DDD4 0015AD34 90 01 01 34 */ stw r0, 0x134(r1) -lbl_8015DDD8: -/* 8015DDD8 0015AD38 38 61 00 80 */ addi r3, r1, 0x80 -/* 8015DDDC 0015AD3C 4B FF F3 55 */ bl __ct__22CCameraShakerComponentFv -/* 8015DDE0 0015AD40 38 61 00 44 */ addi r3, r1, 0x44 -/* 8015DDE4 0015AD44 38 BF 00 18 */ addi r5, r31, 0x18 -/* 8015DDE8 0015AD48 38 DF 00 48 */ addi r6, r31, 0x48 -/* 8015DDEC 0015AD4C 38 80 00 01 */ li r4, 1 -/* 8015DDF0 0015AD50 4B FF F4 61 */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint -/* 8015DDF4 0015AD54 38 61 00 08 */ addi r3, r1, 8 -/* 8015DDF8 0015AD58 4B FF F3 39 */ bl __ct__22CCameraShakerComponentFv -/* 8015DDFC 0015AD5C 3C 60 80 57 */ lis r3, lbl_80571B90@ha -/* 8015DE00 0015AD60 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8015DE04 0015AD64 38 A4 66 A0 */ addi r5, r4, skZero3f@l -/* 8015DE08 0015AD68 C0 22 9F 18 */ lfs f1, lbl_805ABC38@sda21(r2) -/* 8015DE0C 0015AD6C C0 42 9E F4 */ lfs f2, lbl_805ABC14@sda21(r2) -/* 8015DE10 0015AD70 38 63 1B 90 */ addi r3, r3, lbl_80571B90@l -/* 8015DE14 0015AD74 38 C1 00 80 */ addi r6, r1, 0x80 -/* 8015DE18 0015AD78 38 E1 00 44 */ addi r7, r1, 0x44 -/* 8015DE1C 0015AD7C 39 01 00 08 */ addi r8, r1, 8 -/* 8015DE20 0015AD80 38 80 00 00 */ li r4, 0 -/* 8015DE24 0015AD84 4B FF F0 75 */ bl __ct__16CCameraShakeDataFffiRC9CVector3fRC22CCameraShakerComponentRC22CCameraShakerComponentRC22CCameraShakerComponent -/* 8015DE28 0015AD88 3C 80 80 01 */ lis r4, sub_8000ad2c@ha -/* 8015DE2C 0015AD8C 38 BF 00 6C */ addi r5, r31, 0x6c -/* 8015DE30 0015AD90 38 84 AD 2C */ addi r4, r4, sub_8000ad2c@l -/* 8015DE34 0015AD94 48 22 B8 59 */ bl __register_global_object -/* 8015DE38 0015AD98 34 01 00 08 */ addic. r0, r1, 8 -/* 8015DE3C 0015AD9C 41 82 00 10 */ beq lbl_8015DE4C -/* 8015DE40 0015ADA0 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015DE44 0015ADA4 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015DE48 0015ADA8 90 01 00 08 */ stw r0, 8(r1) -lbl_8015DE4C: -/* 8015DE4C 0015ADAC 34 01 00 44 */ addic. r0, r1, 0x44 -/* 8015DE50 0015ADB0 41 82 00 10 */ beq lbl_8015DE60 -/* 8015DE54 0015ADB4 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015DE58 0015ADB8 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015DE5C 0015ADBC 90 01 00 44 */ stw r0, 0x44(r1) -lbl_8015DE60: -/* 8015DE60 0015ADC0 34 01 00 80 */ addic. r0, r1, 0x80 -/* 8015DE64 0015ADC4 41 82 00 10 */ beq lbl_8015DE74 -/* 8015DE68 0015ADC8 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha -/* 8015DE6C 0015ADCC 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l -/* 8015DE70 0015ADD0 90 01 00 80 */ stw r0, 0x80(r1) -lbl_8015DE74: -/* 8015DE74 0015ADD4 80 01 01 84 */ lwz r0, 0x184(r1) -/* 8015DE78 0015ADD8 83 E1 01 7C */ lwz r31, 0x17c(r1) -/* 8015DE7C 0015ADDC 7C 08 03 A6 */ mtlr r0 -/* 8015DE80 0015ADE0 38 21 01 80 */ addi r1, r1, 0x180 -/* 8015DE84 0015ADE4 4E 80 00 20 */ blr - -.global Accept__22CScriptPickupGeneratorFR8IVisitor -Accept__22CScriptPickupGeneratorFR8IVisitor: -/* 8015DE88 0015ADE8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015DE8C 0015ADEC 7C 08 02 A6 */ mflr r0 -/* 8015DE90 0015ADF0 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015DE94 0015ADF4 7C 60 1B 78 */ mr r0, r3 -/* 8015DE98 0015ADF8 7C 83 23 78 */ mr r3, r4 -/* 8015DE9C 0015ADFC 81 84 00 00 */ lwz r12, 0(r4) -/* 8015DEA0 0015AE00 7C 04 03 78 */ mr r4, r0 -/* 8015DEA4 0015AE04 81 8C 00 24 */ lwz r12, 0x24(r12) -/* 8015DEA8 0015AE08 7D 89 03 A6 */ mtctr r12 -/* 8015DEAC 0015AE0C 4E 80 04 21 */ bctrl -/* 8015DEB0 0015AE10 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015DEB4 0015AE14 7C 08 03 A6 */ mtlr r0 -/* 8015DEB8 0015AE18 38 21 00 10 */ addi r1, r1, 0x10 -/* 8015DEBC 0015AE1C 4E 80 00 20 */ blr - -.global AcceptScriptMsg__22CScriptPickupGeneratorF20EScriptObjectMessage9TUniqueIdR13CStateManager -AcceptScriptMsg__22CScriptPickupGeneratorF20EScriptObjectMessage9TUniqueIdR13CStateManager: -/* 8015DEC0 0015AE20 94 21 FF 30 */ stwu r1, -0xd0(r1) -/* 8015DEC4 0015AE24 7C 08 02 A6 */ mflr r0 -/* 8015DEC8 0015AE28 90 01 00 D4 */ stw r0, 0xd4(r1) -/* 8015DECC 0015AE2C BF 61 00 BC */ stmw r27, 0xbc(r1) -/* 8015DED0 0015AE30 7C 9D 23 78 */ mr r29, r4 -/* 8015DED4 0015AE34 2C 1D 00 0D */ cmpwi r29, 0xd -/* 8015DED8 0015AE38 7C 7C 1B 78 */ mr r28, r3 -/* 8015DEDC 0015AE3C 7C BE 2B 78 */ mr r30, r5 -/* 8015DEE0 0015AE40 7C DF 33 78 */ mr r31, r6 -/* 8015DEE4 0015AE44 41 82 00 08 */ beq lbl_8015DEEC -/* 8015DEE8 0015AE48 48 00 03 08 */ b lbl_8015E1F0 -lbl_8015DEEC: -/* 8015DEEC 0015AE4C 88 1C 00 30 */ lbz r0, 0x30(r28) -/* 8015DEF0 0015AE50 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8015DEF4 0015AE54 41 82 02 FC */ beq lbl_8015E1F0 -/* 8015DEF8 0015AE58 C0 22 9F 28 */ lfs f1, lbl_805ABC48@sda21(r2) -/* 8015DEFC 0015AE5C C0 1C 00 40 */ lfs f0, 0x40(r28) -/* 8015DF00 0015AE60 FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 8015DF04 0015AE64 41 82 02 EC */ beq lbl_8015E1F0 -/* 8015DF08 0015AE68 C0 5C 00 44 */ lfs f2, 0x44(r28) -/* 8015DF0C 0015AE6C C0 22 9F 2C */ lfs f1, lbl_805ABC4C@sda21(r2) -/* 8015DF10 0015AE70 C0 02 9F 30 */ lfs f0, lbl_805ABC50@sda21(r2) -/* 8015DF14 0015AE74 EC 22 08 28 */ fsubs f1, f2, f1 -/* 8015DF18 0015AE78 D0 3C 00 44 */ stfs f1, 0x44(r28) -/* 8015DF1C 0015AE7C C0 3C 00 44 */ lfs f1, 0x44(r28) -/* 8015DF20 0015AE80 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015DF24 0015AE84 40 80 00 0C */ bge lbl_8015DF30 -/* 8015DF28 0015AE88 48 00 02 F9 */ bl ResetDelayTimer__22CScriptPickupGeneratorFv -/* 8015DF2C 0015AE8C 48 00 02 C4 */ b lbl_8015E1F0 -lbl_8015DF30: -/* 8015DF30 0015AE90 A0 1E 00 00 */ lhz r0, 0(r30) -/* 8015DF34 0015AE94 38 E0 00 00 */ li r7, 0 -/* 8015DF38 0015AE98 90 E1 00 94 */ stw r7, 0x94(r1) -/* 8015DF3C 0015AE9C 7F E4 FB 78 */ mr r4, r31 -/* 8015DF40 0015AEA0 38 A1 00 10 */ addi r5, r1, 0x10 -/* 8015DF44 0015AEA4 38 C1 00 90 */ addi r6, r1, 0x90 -/* 8015DF48 0015AEA8 90 E1 00 98 */ stw r7, 0x98(r1) -/* 8015DF4C 0015AEAC 90 E1 00 9C */ stw r7, 0x9c(r1) -/* 8015DF50 0015AEB0 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8015DF54 0015AEB4 48 00 07 F5 */ bl "GetGeneratorIds__22CScriptPickupGeneratorFR13CStateManager9TUniqueIdRQ24rstl18vector<9TUniqueId>" -/* 8015DF58 0015AEB8 38 00 00 00 */ li r0, 0 -/* 8015DF5C 0015AEBC 7F 83 E3 78 */ mr r3, r28 -/* 8015DF60 0015AEC0 90 01 00 84 */ stw r0, 0x84(r1) -/* 8015DF64 0015AEC4 7F E4 FB 78 */ mr r4, r31 -/* 8015DF68 0015AEC8 38 A1 00 80 */ addi r5, r1, 0x80 -/* 8015DF6C 0015AECC 90 01 00 88 */ stw r0, 0x88(r1) -/* 8015DF70 0015AED0 90 01 00 8C */ stw r0, 0x8c(r1) -/* 8015DF74 0015AED4 48 00 04 E9 */ bl "GetPickupTemplates__22CScriptPickupGeneratorFR13CStateManagerRQ24rstl35vector>" -/* 8015DF78 0015AED8 80 01 00 84 */ lwz r0, 0x84(r1) -/* 8015DF7C 0015AEDC 2C 00 00 00 */ cmpwi r0, 0 -/* 8015DF80 0015AEE0 40 82 00 84 */ bne lbl_8015E004 -/* 8015DF84 0015AEE4 80 61 00 8C */ lwz r3, 0x8c(r1) -/* 8015DF88 0015AEE8 54 00 18 38 */ slwi r0, r0, 3 -/* 8015DF8C 0015AEEC 7C 03 02 14 */ add r0, r3, r0 -/* 8015DF90 0015AEF0 90 61 00 68 */ stw r3, 0x68(r1) -/* 8015DF94 0015AEF4 7C 64 1B 78 */ mr r4, r3 -/* 8015DF98 0015AEF8 90 01 00 70 */ stw r0, 0x70(r1) -/* 8015DF9C 0015AEFC 90 01 00 6C */ stw r0, 0x6c(r1) -/* 8015DFA0 0015AF00 90 61 00 64 */ stw r3, 0x64(r1) -/* 8015DFA4 0015AF04 48 00 00 08 */ b lbl_8015DFAC -lbl_8015DFA8: -/* 8015DFA8 0015AF08 38 84 00 08 */ addi r4, r4, 8 -lbl_8015DFAC: -/* 8015DFAC 0015AF0C 7C 04 00 40 */ cmplw r4, r0 -/* 8015DFB0 0015AF10 40 82 FF F8 */ bne lbl_8015DFA8 -/* 8015DFB4 0015AF14 28 03 00 00 */ cmplwi r3, 0 -/* 8015DFB8 0015AF18 41 82 00 08 */ beq lbl_8015DFC0 -/* 8015DFBC 0015AF1C 48 1B 79 75 */ bl Free__7CMemoryFPCv -lbl_8015DFC0: -/* 8015DFC0 0015AF20 80 01 00 94 */ lwz r0, 0x94(r1) -/* 8015DFC4 0015AF24 80 61 00 9C */ lwz r3, 0x9c(r1) -/* 8015DFC8 0015AF28 54 00 08 3C */ slwi r0, r0, 1 -/* 8015DFCC 0015AF2C 7C 03 02 14 */ add r0, r3, r0 -/* 8015DFD0 0015AF30 90 61 00 58 */ stw r3, 0x58(r1) -/* 8015DFD4 0015AF34 7C 64 1B 78 */ mr r4, r3 -/* 8015DFD8 0015AF38 90 01 00 60 */ stw r0, 0x60(r1) -/* 8015DFDC 0015AF3C 90 01 00 5C */ stw r0, 0x5c(r1) -/* 8015DFE0 0015AF40 90 61 00 54 */ stw r3, 0x54(r1) -/* 8015DFE4 0015AF44 48 00 00 08 */ b lbl_8015DFEC -lbl_8015DFE8: -/* 8015DFE8 0015AF48 38 84 00 02 */ addi r4, r4, 2 -lbl_8015DFEC: -/* 8015DFEC 0015AF4C 7C 04 00 40 */ cmplw r4, r0 -/* 8015DFF0 0015AF50 40 82 FF F8 */ bne lbl_8015DFE8 -/* 8015DFF4 0015AF54 28 03 00 00 */ cmplwi r3, 0 -/* 8015DFF8 0015AF58 41 82 01 F8 */ beq lbl_8015E1F0 -/* 8015DFFC 0015AF5C 48 1B 79 35 */ bl Free__7CMemoryFPCv -/* 8015E000 0015AF60 48 00 01 F0 */ b lbl_8015E1F0 -lbl_8015E004: -/* 8015E004 0015AF64 FC 40 08 90 */ fmr f2, f1 -/* 8015E008 0015AF68 80 7F 09 00 */ lwz r3, 0x900(r31) -/* 8015E00C 0015AF6C C0 22 9F 34 */ lfs f1, lbl_805ABC54@sda21(r2) -/* 8015E010 0015AF70 3B 60 00 00 */ li r27, 0 -/* 8015E014 0015AF74 48 1B 45 31 */ bl Range__9CRandom16Fff -/* 8015E018 0015AF78 80 81 00 8C */ lwz r4, 0x8c(r1) -/* 8015E01C 0015AF7C 80 01 00 84 */ lwz r0, 0x84(r1) -/* 8015E020 0015AF80 7C 83 23 78 */ mr r3, r4 -/* 8015E024 0015AF84 C0 42 9F 34 */ lfs f2, lbl_805ABC54@sda21(r2) -/* 8015E028 0015AF88 7C 09 03 A6 */ mtctr r0 -/* 8015E02C 0015AF8C 2C 00 00 00 */ cmpwi r0, 0 -/* 8015E030 0015AF90 40 81 00 34 */ ble lbl_8015E064 -lbl_8015E034: -/* 8015E034 0015AF94 FC 01 10 40 */ fcmpo cr0, f1, f2 -/* 8015E038 0015AF98 C0 63 00 00 */ lfs f3, 0(r3) -/* 8015E03C 0015AF9C 4C 41 13 82 */ cror 2, 1, 2 -/* 8015E040 0015AFA0 40 82 00 14 */ bne lbl_8015E054 -/* 8015E044 0015AFA4 EC 02 18 2A */ fadds f0, f2, f3 -/* 8015E048 0015AFA8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015E04C 0015AFAC 4C 40 13 82 */ cror 2, 0, 2 -/* 8015E050 0015AFB0 41 82 00 14 */ beq lbl_8015E064 -lbl_8015E054: -/* 8015E054 0015AFB4 EC 42 18 2A */ fadds f2, f2, f3 -/* 8015E058 0015AFB8 38 63 00 08 */ addi r3, r3, 8 -/* 8015E05C 0015AFBC 3B 7B 00 01 */ addi r27, r27, 1 -/* 8015E060 0015AFC0 42 00 FF D4 */ bdnz lbl_8015E034 -lbl_8015E064: -/* 8015E064 0015AFC4 7C 1B 00 00 */ cmpw r27, r0 -/* 8015E068 0015AFC8 40 82 00 84 */ bne lbl_8015E0EC -/* 8015E06C 0015AFCC 54 00 18 38 */ slwi r0, r0, 3 -/* 8015E070 0015AFD0 90 81 00 48 */ stw r4, 0x48(r1) -/* 8015E074 0015AFD4 7C 04 02 14 */ add r0, r4, r0 -/* 8015E078 0015AFD8 7C 83 23 78 */ mr r3, r4 -/* 8015E07C 0015AFDC 90 01 00 50 */ stw r0, 0x50(r1) -/* 8015E080 0015AFE0 90 01 00 4C */ stw r0, 0x4c(r1) -/* 8015E084 0015AFE4 90 81 00 44 */ stw r4, 0x44(r1) -/* 8015E088 0015AFE8 48 00 00 08 */ b lbl_8015E090 -lbl_8015E08C: -/* 8015E08C 0015AFEC 38 63 00 08 */ addi r3, r3, 8 -lbl_8015E090: -/* 8015E090 0015AFF0 7C 03 00 40 */ cmplw r3, r0 -/* 8015E094 0015AFF4 40 82 FF F8 */ bne lbl_8015E08C -/* 8015E098 0015AFF8 28 04 00 00 */ cmplwi r4, 0 -/* 8015E09C 0015AFFC 41 82 00 0C */ beq lbl_8015E0A8 -/* 8015E0A0 0015B000 7C 83 23 78 */ mr r3, r4 -/* 8015E0A4 0015B004 48 1B 78 8D */ bl Free__7CMemoryFPCv -lbl_8015E0A8: -/* 8015E0A8 0015B008 80 01 00 94 */ lwz r0, 0x94(r1) -/* 8015E0AC 0015B00C 80 61 00 9C */ lwz r3, 0x9c(r1) -/* 8015E0B0 0015B010 54 00 08 3C */ slwi r0, r0, 1 -/* 8015E0B4 0015B014 7C 03 02 14 */ add r0, r3, r0 -/* 8015E0B8 0015B018 90 61 00 38 */ stw r3, 0x38(r1) -/* 8015E0BC 0015B01C 7C 64 1B 78 */ mr r4, r3 -/* 8015E0C0 0015B020 90 01 00 40 */ stw r0, 0x40(r1) -/* 8015E0C4 0015B024 90 01 00 3C */ stw r0, 0x3c(r1) -/* 8015E0C8 0015B028 90 61 00 34 */ stw r3, 0x34(r1) -/* 8015E0CC 0015B02C 48 00 00 08 */ b lbl_8015E0D4 -lbl_8015E0D0: -/* 8015E0D0 0015B030 38 84 00 02 */ addi r4, r4, 2 -lbl_8015E0D4: -/* 8015E0D4 0015B034 7C 04 00 40 */ cmplw r4, r0 -/* 8015E0D8 0015B038 40 82 FF F8 */ bne lbl_8015E0D0 -/* 8015E0DC 0015B03C 28 03 00 00 */ cmplwi r3, 0 -/* 8015E0E0 0015B040 41 82 01 10 */ beq lbl_8015E1F0 -/* 8015E0E4 0015B044 48 1B 78 4D */ bl Free__7CMemoryFPCv -/* 8015E0E8 0015B048 48 00 01 08 */ b lbl_8015E1F0 -lbl_8015E0EC: -/* 8015E0EC 0015B04C 57 60 18 38 */ slwi r0, r27, 3 -/* 8015E0F0 0015B050 80 7F 09 00 */ lwz r3, 0x900(r31) -/* 8015E0F4 0015B054 7C 84 02 14 */ add r4, r4, r0 -/* 8015E0F8 0015B058 C0 04 00 00 */ lfs f0, 0(r4) -/* 8015E0FC 0015B05C 80 04 00 04 */ lwz r0, 4(r4) -/* 8015E100 0015B060 D0 01 00 78 */ stfs f0, 0x78(r1) -/* 8015E104 0015B064 90 01 00 7C */ stw r0, 0x7c(r1) -/* 8015E108 0015B068 48 1B 43 D5 */ bl Float__9CRandom16Fv -/* 8015E10C 0015B06C 80 81 00 94 */ lwz r4, 0x94(r1) -/* 8015E110 0015B070 3C 00 43 30 */ lis r0, 0x4330 -/* 8015E114 0015B074 90 01 00 A0 */ stw r0, 0xa0(r1) -/* 8015E118 0015B078 7F 83 E3 78 */ mr r3, r28 -/* 8015E11C 0015B07C 6C 80 80 00 */ xoris r0, r4, 0x8000 -/* 8015E120 0015B080 C8 62 9F 40 */ lfd f3, lbl_805ABC60@sda21(r2) -/* 8015E124 0015B084 90 01 00 A4 */ stw r0, 0xa4(r1) -/* 8015E128 0015B088 7F E4 FB 78 */ mr r4, r31 -/* 8015E12C 0015B08C C0 02 9F 38 */ lfs f0, lbl_805ABC58@sda21(r2) -/* 8015E130 0015B090 38 A1 00 74 */ addi r5, r1, 0x74 -/* 8015E134 0015B094 C8 41 00 A0 */ lfd f2, 0xa0(r1) -/* 8015E138 0015B098 38 C1 00 0C */ addi r6, r1, 0xc -/* 8015E13C 0015B09C 81 01 00 9C */ lwz r8, 0x9c(r1) -/* 8015E140 0015B0A0 EC 42 18 28 */ fsubs f2, f2, f3 -/* 8015E144 0015B0A4 80 01 00 7C */ lwz r0, 0x7c(r1) -/* 8015E148 0015B0A8 EC 21 00 B2 */ fmuls f1, f1, f2 -/* 8015E14C 0015B0AC EC 00 00 72 */ fmuls f0, f0, f1 -/* 8015E150 0015B0B0 FC 00 00 1E */ fctiwz f0, f0 -/* 8015E154 0015B0B4 D8 01 00 A8 */ stfd f0, 0xa8(r1) -/* 8015E158 0015B0B8 80 E1 00 AC */ lwz r7, 0xac(r1) -/* 8015E15C 0015B0BC 54 E7 08 3C */ slwi r7, r7, 1 -/* 8015E160 0015B0C0 7C E8 3A 2E */ lhzx r7, r8, r7 -/* 8015E164 0015B0C4 B0 E1 00 0C */ sth r7, 0xc(r1) -/* 8015E168 0015B0C8 90 01 00 74 */ stw r0, 0x74(r1) -/* 8015E16C 0015B0CC 48 00 00 E9 */ bl GeneratePickup__22CScriptPickupGeneratorFR13CStateManager9TUniqueId9TEditorId -/* 8015E170 0015B0D0 80 01 00 84 */ lwz r0, 0x84(r1) -/* 8015E174 0015B0D4 80 61 00 8C */ lwz r3, 0x8c(r1) -/* 8015E178 0015B0D8 54 00 18 38 */ slwi r0, r0, 3 -/* 8015E17C 0015B0DC 7C 03 02 14 */ add r0, r3, r0 -/* 8015E180 0015B0E0 90 61 00 28 */ stw r3, 0x28(r1) -/* 8015E184 0015B0E4 7C 64 1B 78 */ mr r4, r3 -/* 8015E188 0015B0E8 90 01 00 30 */ stw r0, 0x30(r1) -/* 8015E18C 0015B0EC 90 01 00 2C */ stw r0, 0x2c(r1) -/* 8015E190 0015B0F0 90 61 00 24 */ stw r3, 0x24(r1) -/* 8015E194 0015B0F4 48 00 00 08 */ b lbl_8015E19C -lbl_8015E198: -/* 8015E198 0015B0F8 38 84 00 08 */ addi r4, r4, 8 -lbl_8015E19C: -/* 8015E19C 0015B0FC 7C 04 00 40 */ cmplw r4, r0 -/* 8015E1A0 0015B100 40 82 FF F8 */ bne lbl_8015E198 -/* 8015E1A4 0015B104 28 03 00 00 */ cmplwi r3, 0 -/* 8015E1A8 0015B108 41 82 00 08 */ beq lbl_8015E1B0 -/* 8015E1AC 0015B10C 48 1B 77 85 */ bl Free__7CMemoryFPCv -lbl_8015E1B0: -/* 8015E1B0 0015B110 80 01 00 94 */ lwz r0, 0x94(r1) -/* 8015E1B4 0015B114 80 61 00 9C */ lwz r3, 0x9c(r1) -/* 8015E1B8 0015B118 54 00 08 3C */ slwi r0, r0, 1 -/* 8015E1BC 0015B11C 7C 03 02 14 */ add r0, r3, r0 -/* 8015E1C0 0015B120 90 61 00 18 */ stw r3, 0x18(r1) -/* 8015E1C4 0015B124 7C 64 1B 78 */ mr r4, r3 -/* 8015E1C8 0015B128 90 01 00 20 */ stw r0, 0x20(r1) -/* 8015E1CC 0015B12C 90 01 00 1C */ stw r0, 0x1c(r1) -/* 8015E1D0 0015B130 90 61 00 14 */ stw r3, 0x14(r1) -/* 8015E1D4 0015B134 48 00 00 08 */ b lbl_8015E1DC -lbl_8015E1D8: -/* 8015E1D8 0015B138 38 84 00 02 */ addi r4, r4, 2 -lbl_8015E1DC: -/* 8015E1DC 0015B13C 7C 04 00 40 */ cmplw r4, r0 -/* 8015E1E0 0015B140 40 82 FF F8 */ bne lbl_8015E1D8 -/* 8015E1E4 0015B144 28 03 00 00 */ cmplwi r3, 0 -/* 8015E1E8 0015B148 41 82 00 08 */ beq lbl_8015E1F0 -/* 8015E1EC 0015B14C 48 1B 77 45 */ bl Free__7CMemoryFPCv -lbl_8015E1F0: -/* 8015E1F0 0015B150 A0 1E 00 00 */ lhz r0, 0(r30) -/* 8015E1F4 0015B154 7F 83 E3 78 */ mr r3, r28 -/* 8015E1F8 0015B158 7F A4 EB 78 */ mr r4, r29 -/* 8015E1FC 0015B15C 7F E6 FB 78 */ mr r6, r31 -/* 8015E200 0015B160 B0 01 00 08 */ sth r0, 8(r1) -/* 8015E204 0015B164 38 A1 00 08 */ addi r5, r1, 8 -/* 8015E208 0015B168 4B EF 2F 55 */ bl AcceptScriptMsg__7CEntityF20EScriptObjectMessage9TUniqueIdR13CStateManager -/* 8015E20C 0015B16C BB 61 00 BC */ lmw r27, 0xbc(r1) -/* 8015E210 0015B170 80 01 00 D4 */ lwz r0, 0xd4(r1) -/* 8015E214 0015B174 7C 08 03 A6 */ mtlr r0 -/* 8015E218 0015B178 38 21 00 D0 */ addi r1, r1, 0xd0 -/* 8015E21C 0015B17C 4E 80 00 20 */ blr - -.global ResetDelayTimer__22CScriptPickupGeneratorFv -ResetDelayTimer__22CScriptPickupGeneratorFv: -/* 8015E220 0015B180 C0 43 00 40 */ lfs f2, 0x40(r3) -/* 8015E224 0015B184 C0 02 9F 34 */ lfs f0, lbl_805ABC54@sda21(r2) -/* 8015E228 0015B188 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8015E22C 0015B18C 40 81 00 1C */ ble lbl_8015E248 -/* 8015E230 0015B190 C0 02 9F 28 */ lfs f0, lbl_805ABC48@sda21(r2) -/* 8015E234 0015B194 C0 23 00 44 */ lfs f1, 0x44(r3) -/* 8015E238 0015B198 EC 00 10 24 */ fdivs f0, f0, f2 -/* 8015E23C 0015B19C EC 01 00 2A */ fadds f0, f1, f0 -/* 8015E240 0015B1A0 D0 03 00 44 */ stfs f0, 0x44(r3) -/* 8015E244 0015B1A4 4E 80 00 20 */ blr -lbl_8015E248: -/* 8015E248 0015B1A8 C0 02 9F 48 */ lfs f0, lbl_805ABC68@sda21(r2) -/* 8015E24C 0015B1AC D0 03 00 44 */ stfs f0, 0x44(r3) -/* 8015E250 0015B1B0 4E 80 00 20 */ blr - -.global GeneratePickup__22CScriptPickupGeneratorFR13CStateManager9TUniqueId9TEditorId -GeneratePickup__22CScriptPickupGeneratorFR13CStateManager9TUniqueId9TEditorId: -/* 8015E254 0015B1B4 94 21 FF 60 */ stwu r1, -0xa0(r1) -/* 8015E258 0015B1B8 7C 08 02 A6 */ mflr r0 -/* 8015E25C 0015B1BC 90 01 00 A4 */ stw r0, 0xa4(r1) -/* 8015E260 0015B1C0 BF 21 00 84 */ stmw r25, 0x84(r1) -/* 8015E264 0015B1C4 7C 7E 1B 78 */ mr r30, r3 -/* 8015E268 0015B1C8 7C BA 2B 78 */ mr r26, r5 -/* 8015E26C 0015B1CC 7C 9F 23 78 */ mr r31, r4 -/* 8015E270 0015B1D0 7C D9 33 78 */ mr r25, r6 -/* 8015E274 0015B1D4 38 61 00 1C */ addi r3, r1, 0x1c -/* 8015E278 0015B1D8 80 05 00 00 */ lwz r0, 0(r5) -/* 8015E27C 0015B1DC 38 A1 00 28 */ addi r5, r1, 0x28 -/* 8015E280 0015B1E0 90 01 00 28 */ stw r0, 0x28(r1) -/* 8015E284 0015B1E4 4B EE 9C 99 */ bl GetIdForScript__13CStateManagerCF9TEditorId -/* 8015E288 0015B1E8 A0 01 00 1C */ lhz r0, 0x1c(r1) -/* 8015E28C 0015B1EC 7F E3 FB 78 */ mr r3, r31 -/* 8015E290 0015B1F0 38 81 00 18 */ addi r4, r1, 0x18 -/* 8015E294 0015B1F4 B0 01 00 24 */ sth r0, 0x24(r1) -/* 8015E298 0015B1F8 B0 01 00 18 */ sth r0, 0x18(r1) -/* 8015E29C 0015B1FC 4B EE E2 D9 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8015E2A0 0015B200 A0 19 00 00 */ lhz r0, 0(r25) -/* 8015E2A4 0015B204 7C 7D 1B 78 */ mr r29, r3 -/* 8015E2A8 0015B208 7F E3 FB 78 */ mr r3, r31 -/* 8015E2AC 0015B20C 38 81 00 14 */ addi r4, r1, 0x14 -/* 8015E2B0 0015B210 B0 01 00 14 */ sth r0, 0x14(r1) -/* 8015E2B4 0015B214 4B EE E2 C1 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8015E2B8 0015B218 28 1D 00 00 */ cmplwi r29, 0 -/* 8015E2BC 0015B21C 7C 7C 1B 78 */ mr r28, r3 -/* 8015E2C0 0015B220 41 82 01 88 */ beq lbl_8015E448 -/* 8015E2C4 0015B224 28 1C 00 00 */ cmplwi r28, 0 -/* 8015E2C8 0015B228 41 82 01 80 */ beq lbl_8015E448 -/* 8015E2CC 0015B22C 88 DF 0F 94 */ lbz r6, 0xf94(r31) -/* 8015E2D0 0015B230 38 60 00 01 */ li r3, 1 -/* 8015E2D4 0015B234 88 1F 0F 94 */ lbz r0, 0xf94(r31) -/* 8015E2D8 0015B238 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 8015E2DC 0015B23C 7F E4 FB 78 */ mr r4, r31 -/* 8015E2E0 0015B240 7F 45 D3 78 */ mr r5, r26 -/* 8015E2E4 0015B244 98 1F 0F 94 */ stb r0, 0xf94(r31) -/* 8015E2E8 0015B248 54 DD DF FE */ rlwinm r29, r6, 0x1b, 0x1f, 0x1f -/* 8015E2EC 0015B24C 38 61 00 4C */ addi r3, r1, 0x4c -/* 8015E2F0 0015B250 4B EE 9F F9 */ bl GenerateObject__13CStateManagerF9TEditorId -/* 8015E2F4 0015B254 A0 81 00 50 */ lhz r4, 0x50(r1) -/* 8015E2F8 0015B258 88 1F 0F 94 */ lbz r0, 0xf94(r31) -/* 8015E2FC 0015B25C 53 A0 2E B4 */ rlwimi r0, r29, 5, 0x1a, 0x1a -/* 8015E300 0015B260 54 83 04 3E */ clrlwi r3, r4, 0x10 -/* 8015E304 0015B264 B0 81 00 20 */ sth r4, 0x20(r1) -/* 8015E308 0015B268 98 1F 0F 94 */ stb r0, 0xf94(r31) -/* 8015E30C 0015B26C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8015E310 0015B270 7C 03 00 40 */ cmplw r3, r0 -/* 8015E314 0015B274 41 82 01 34 */ beq lbl_8015E448 -/* 8015E318 0015B278 B0 81 00 10 */ sth r4, 0x10(r1) -/* 8015E31C 0015B27C 7F E3 FB 78 */ mr r3, r31 -/* 8015E320 0015B280 38 81 00 10 */ addi r4, r1, 0x10 -/* 8015E324 0015B284 4B EE E2 51 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8015E328 0015B288 7C 60 1B 78 */ mr r0, r3 -/* 8015E32C 0015B28C 38 61 00 44 */ addi r3, r1, 0x44 -/* 8015E330 0015B290 7C 1B 03 78 */ mr r27, r0 -/* 8015E334 0015B294 7F 64 DB 78 */ mr r4, r27 -/* 8015E338 0015B298 4B F5 19 59 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8015E33C 0015B29C 83 43 00 04 */ lwz r26, 4(r3) -/* 8015E340 0015B2A0 7F 64 DB 78 */ mr r4, r27 -/* 8015E344 0015B2A4 38 61 00 3C */ addi r3, r1, 0x3c -/* 8015E348 0015B2A8 4B F4 AE 45 */ bl "__ct__27TCastToPtr<13CScriptPickup>FP7CEntity" -/* 8015E34C 0015B2AC 83 A3 00 04 */ lwz r29, 4(r3) -/* 8015E350 0015B2B0 7F 84 E3 78 */ mr r4, r28 -/* 8015E354 0015B2B4 38 61 00 34 */ addi r3, r1, 0x34 -/* 8015E358 0015B2B8 4B F5 19 39 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8015E35C 0015B2BC 83 23 00 04 */ lwz r25, 4(r3) -/* 8015E360 0015B2C0 7F 84 E3 78 */ mr r4, r28 -/* 8015E364 0015B2C4 38 61 00 2C */ addi r3, r1, 0x2c -/* 8015E368 0015B2C8 4B F4 78 A9 */ bl "__ct__31TCastToPtr<17CWallCrawlerSwarm>FP7CEntity" -/* 8015E36C 0015B2CC 28 1A 00 00 */ cmplwi r26, 0 -/* 8015E370 0015B2D0 80 A3 00 04 */ lwz r5, 4(r3) -/* 8015E374 0015B2D4 41 82 00 58 */ beq lbl_8015E3CC -/* 8015E378 0015B2D8 28 05 00 00 */ cmplwi r5, 0 -/* 8015E37C 0015B2DC 41 82 00 50 */ beq lbl_8015E3CC -/* 8015E380 0015B2E0 C0 A5 01 30 */ lfs f5, 0x130(r5) -/* 8015E384 0015B2E4 7F 43 D3 78 */ mr r3, r26 -/* 8015E388 0015B2E8 C0 85 01 34 */ lfs f4, 0x134(r5) -/* 8015E38C 0015B2EC 38 81 00 6C */ addi r4, r1, 0x6c -/* 8015E390 0015B2F0 C0 65 01 38 */ lfs f3, 0x138(r5) -/* 8015E394 0015B2F4 C0 5E 00 38 */ lfs f2, 0x38(r30) -/* 8015E398 0015B2F8 C0 3E 00 3C */ lfs f1, 0x3c(r30) -/* 8015E39C 0015B2FC C0 1E 00 34 */ lfs f0, 0x34(r30) -/* 8015E3A0 0015B300 EC 44 10 2A */ fadds f2, f4, f2 -/* 8015E3A4 0015B304 EC 23 08 2A */ fadds f1, f3, f1 -/* 8015E3A8 0015B308 D0 A1 00 60 */ stfs f5, 0x60(r1) -/* 8015E3AC 0015B30C EC 05 00 2A */ fadds f0, f5, f0 -/* 8015E3B0 0015B310 D0 81 00 64 */ stfs f4, 0x64(r1) -/* 8015E3B4 0015B314 D0 61 00 68 */ stfs f3, 0x68(r1) -/* 8015E3B8 0015B318 D0 01 00 6C */ stfs f0, 0x6c(r1) -/* 8015E3BC 0015B31C D0 41 00 70 */ stfs f2, 0x70(r1) -/* 8015E3C0 0015B320 D0 21 00 74 */ stfs f1, 0x74(r1) -/* 8015E3C4 0015B324 4B EF 4A C9 */ bl SetTranslation__6CActorFRC9CVector3f -/* 8015E3C8 0015B328 48 00 00 50 */ b lbl_8015E418 -lbl_8015E3CC: -/* 8015E3CC 0015B32C 28 1A 00 00 */ cmplwi r26, 0 -/* 8015E3D0 0015B330 41 82 00 48 */ beq lbl_8015E418 -/* 8015E3D4 0015B334 28 19 00 00 */ cmplwi r25, 0 -/* 8015E3D8 0015B338 41 82 00 40 */ beq lbl_8015E418 -/* 8015E3DC 0015B33C C0 39 00 50 */ lfs f1, 0x50(r25) -/* 8015E3E0 0015B340 7F 43 D3 78 */ mr r3, r26 -/* 8015E3E4 0015B344 C0 1E 00 38 */ lfs f0, 0x38(r30) -/* 8015E3E8 0015B348 38 81 00 54 */ addi r4, r1, 0x54 -/* 8015E3EC 0015B34C C0 79 00 60 */ lfs f3, 0x60(r25) -/* 8015E3F0 0015B350 C0 5E 00 3C */ lfs f2, 0x3c(r30) -/* 8015E3F4 0015B354 EC 81 00 2A */ fadds f4, f1, f0 -/* 8015E3F8 0015B358 C0 39 00 40 */ lfs f1, 0x40(r25) -/* 8015E3FC 0015B35C C0 1E 00 34 */ lfs f0, 0x34(r30) -/* 8015E400 0015B360 EC 43 10 2A */ fadds f2, f3, f2 -/* 8015E404 0015B364 D0 81 00 58 */ stfs f4, 0x58(r1) -/* 8015E408 0015B368 EC 01 00 2A */ fadds f0, f1, f0 -/* 8015E40C 0015B36C D0 41 00 5C */ stfs f2, 0x5c(r1) -/* 8015E410 0015B370 D0 01 00 54 */ stfs f0, 0x54(r1) -/* 8015E414 0015B374 4B EF 4A 79 */ bl SetTranslation__6CActorFRC9CVector3f -lbl_8015E418: -/* 8015E418 0015B378 28 1D 00 00 */ cmplwi r29, 0 -/* 8015E41C 0015B37C 41 82 00 0C */ beq lbl_8015E428 -/* 8015E420 0015B380 7F A3 EB 78 */ mr r3, r29 -/* 8015E424 0015B384 4B F6 41 CD */ bl SetSpawned__13CScriptPickupFv -lbl_8015E428: -/* 8015E428 0015B388 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8015E42C 0015B38C 7F E3 FB 78 */ mr r3, r31 -/* 8015E430 0015B390 7F 64 DB 78 */ mr r4, r27 -/* 8015E434 0015B394 38 A1 00 0C */ addi r5, r1, 0xc -/* 8015E438 0015B398 B0 01 00 08 */ sth r0, 8(r1) -/* 8015E43C 0015B39C 38 C0 00 01 */ li r6, 1 -/* 8015E440 0015B3A0 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8015E444 0015B3A4 4B EE 5A 8D */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -lbl_8015E448: -/* 8015E448 0015B3A8 BB 21 00 84 */ lmw r25, 0x84(r1) -/* 8015E44C 0015B3AC 80 01 00 A4 */ lwz r0, 0xa4(r1) -/* 8015E450 0015B3B0 7C 08 03 A6 */ mtlr r0 -/* 8015E454 0015B3B4 38 21 00 A0 */ addi r1, r1, 0xa0 -/* 8015E458 0015B3B8 4E 80 00 20 */ blr - -.global "GetPickupTemplates__22CScriptPickupGeneratorFR13CStateManagerRQ24rstl35vector>" -"GetPickupTemplates__22CScriptPickupGeneratorFR13CStateManagerRQ24rstl35vector>": -/* 8015E45C 0015B3BC 94 21 FF 80 */ stwu r1, -0x80(r1) -/* 8015E460 0015B3C0 7C 08 02 A6 */ mflr r0 -/* 8015E464 0015B3C4 90 01 00 84 */ stw r0, 0x84(r1) -/* 8015E468 0015B3C8 DB E1 00 70 */ stfd f31, 0x70(r1) -/* 8015E46C 0015B3CC F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 -/* 8015E470 0015B3D0 DB C1 00 60 */ stfd f30, 0x60(r1) -/* 8015E474 0015B3D4 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 -/* 8015E478 0015B3D8 DB A1 00 50 */ stfd f29, 0x50(r1) -/* 8015E47C 0015B3DC F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 -/* 8015E480 0015B3E0 DB 81 00 40 */ stfd f28, 0x40(r1) -/* 8015E484 0015B3E4 F3 81 00 48 */ psq_st f28, 72(r1), 0, qr0 -/* 8015E488 0015B3E8 BF 01 00 20 */ stmw r24, 0x20(r1) -/* 8015E48C 0015B3EC 7C 9C 23 78 */ mr r28, r4 -/* 8015E490 0015B3F0 7C 7B 1B 78 */ mr r27, r3 -/* 8015E494 0015B3F4 80 84 08 B8 */ lwz r4, 0x8b8(r4) -/* 8015E498 0015B3F8 7C BD 2B 78 */ mr r29, r5 -/* 8015E49C 0015B3FC C3 A2 9F 34 */ lfs f29, lbl_805ABC54@sda21(r2) -/* 8015E4A0 0015B400 7F A3 EB 78 */ mr r3, r29 -/* 8015E4A4 0015B404 83 E4 00 00 */ lwz r31, 0(r4) -/* 8015E4A8 0015B408 80 9B 00 24 */ lwz r4, 0x24(r27) -/* 8015E4AC 0015B40C 48 00 05 31 */ bl sub_8015e9dc -/* 8015E4B0 0015B410 83 DB 00 2C */ lwz r30, 0x2c(r27) -/* 8015E4B4 0015B414 48 00 02 44 */ b lbl_8015E6F8 -lbl_8015E4B8: -/* 8015E4B8 0015B418 80 1E 00 00 */ lwz r0, 0(r30) -/* 8015E4BC 0015B41C 2C 00 00 09 */ cmpwi r0, 9 -/* 8015E4C0 0015B420 40 82 02 34 */ bne lbl_8015E6F4 -/* 8015E4C4 0015B424 80 1E 00 04 */ lwz r0, 4(r30) -/* 8015E4C8 0015B428 2C 00 00 01 */ cmpwi r0, 1 -/* 8015E4CC 0015B42C 40 82 02 28 */ bne lbl_8015E6F4 -/* 8015E4D0 0015B430 80 1E 00 08 */ lwz r0, 8(r30) -/* 8015E4D4 0015B434 7F 84 E3 78 */ mr r4, r28 -/* 8015E4D8 0015B438 38 61 00 0C */ addi r3, r1, 0xc -/* 8015E4DC 0015B43C 38 A1 00 14 */ addi r5, r1, 0x14 -/* 8015E4E0 0015B440 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015E4E4 0015B444 4B EE 9A 39 */ bl GetIdForScript__13CStateManagerCF9TEditorId -/* 8015E4E8 0015B448 A0 61 00 0C */ lhz r3, 0xc(r1) -/* 8015E4EC 0015B44C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8015E4F0 0015B450 B0 61 00 10 */ sth r3, 0x10(r1) -/* 8015E4F4 0015B454 7C 03 00 40 */ cmplw r3, r0 -/* 8015E4F8 0015B458 41 82 01 FC */ beq lbl_8015E6F4 -/* 8015E4FC 0015B45C B0 61 00 08 */ sth r3, 8(r1) -/* 8015E500 0015B460 7F 83 E3 78 */ mr r3, r28 -/* 8015E504 0015B464 38 81 00 08 */ addi r4, r1, 8 -/* 8015E508 0015B468 4B EE E0 9D */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8015E50C 0015B46C 7C 64 1B 78 */ mr r4, r3 -/* 8015E510 0015B470 38 61 00 18 */ addi r3, r1, 0x18 -/* 8015E514 0015B474 4B F4 AC 79 */ bl "__ct__27TCastToPtr<13CScriptPickup>FP7CEntity" -/* 8015E518 0015B478 83 23 00 04 */ lwz r25, 4(r3) -/* 8015E51C 0015B47C 28 19 00 00 */ cmplwi r25, 0 -/* 8015E520 0015B480 41 82 01 D4 */ beq lbl_8015E6F4 -/* 8015E524 0015B484 7F 23 CB 78 */ mr r3, r25 -/* 8015E528 0015B488 4B F6 40 E5 */ bl GetItem__13CScriptPickupCFv -/* 8015E52C 0015B48C 7C 7A 1B 78 */ mr r26, r3 -/* 8015E530 0015B490 7F 23 CB 78 */ mr r3, r25 -/* 8015E534 0015B494 4B F6 40 D1 */ bl GetPossibility__13CScriptPickupCFv -/* 8015E538 0015B498 FF E0 08 90 */ fmr f31, f1 -/* 8015E53C 0015B49C 2C 1A 00 07 */ cmpwi r26, 7 -/* 8015E540 0015B4A0 C3 82 9F 2C */ lfs f28, lbl_805ABC4C@sda21(r2) -/* 8015E544 0015B4A4 3B 20 00 00 */ li r25, 0 -/* 8015E548 0015B4A8 3B 00 00 00 */ li r24, 0 -/* 8015E54C 0015B4AC 41 82 00 68 */ beq lbl_8015E5B4 -/* 8015E550 0015B4B0 40 80 00 10 */ bge lbl_8015E560 -/* 8015E554 0015B4B4 2C 1A 00 04 */ cmpwi r26, 4 -/* 8015E558 0015B4B8 41 82 00 14 */ beq lbl_8015E56C -/* 8015E55C 0015B4BC 48 00 01 00 */ b lbl_8015E65C -lbl_8015E560: -/* 8015E560 0015B4C0 2C 1A 00 1A */ cmpwi r26, 0x1a -/* 8015E564 0015B4C4 41 82 00 CC */ beq lbl_8015E630 -/* 8015E568 0015B4C8 48 00 00 F4 */ b lbl_8015E65C -lbl_8015E56C: -/* 8015E56C 0015B4CC 7F E3 FB 78 */ mr r3, r31 -/* 8015E570 0015B4D0 38 80 00 04 */ li r4, 4 -/* 8015E574 0015B4D4 4B F3 35 4D */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType -/* 8015E578 0015B4D8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8015E57C 0015B4DC 41 82 00 E4 */ beq lbl_8015E660 -/* 8015E580 0015B4E0 7F E3 FB 78 */ mr r3, r31 -/* 8015E584 0015B4E4 38 80 00 04 */ li r4, 4 -/* 8015E588 0015B4E8 4B F3 35 6D */ bl GetItemCapacity__12CPlayerStateCFQ212CPlayerState9EItemType -/* 8015E58C 0015B4EC 7C 7A 1B 78 */ mr r26, r3 -/* 8015E590 0015B4F0 7F E3 FB 78 */ mr r3, r31 -/* 8015E594 0015B4F4 38 80 00 04 */ li r4, 4 -/* 8015E598 0015B4F8 4B F3 35 85 */ bl GetItemAmount__12CPlayerStateCFQ212CPlayerState9EItemType -/* 8015E59C 0015B4FC 7C 03 D0 00 */ cmpw r3, r26 -/* 8015E5A0 0015B500 40 80 00 0C */ bge lbl_8015E5AC -/* 8015E5A4 0015B504 3B 20 00 01 */ li r25, 1 -/* 8015E5A8 0015B508 48 00 00 B8 */ b lbl_8015E660 -lbl_8015E5AC: -/* 8015E5AC 0015B50C 3B 00 00 01 */ li r24, 1 -/* 8015E5B0 0015B510 48 00 00 B0 */ b lbl_8015E660 -lbl_8015E5B4: -/* 8015E5B4 0015B514 7F E3 FB 78 */ mr r3, r31 -/* 8015E5B8 0015B518 38 80 00 07 */ li r4, 7 -/* 8015E5BC 0015B51C 4B F3 35 05 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType -/* 8015E5C0 0015B520 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8015E5C4 0015B524 41 82 00 9C */ beq lbl_8015E660 -/* 8015E5C8 0015B528 7F E3 FB 78 */ mr r3, r31 -/* 8015E5CC 0015B52C 38 80 00 07 */ li r4, 7 -/* 8015E5D0 0015B530 4B F3 35 25 */ bl GetItemCapacity__12CPlayerStateCFQ212CPlayerState9EItemType -/* 8015E5D4 0015B534 7C 7A 1B 78 */ mr r26, r3 -/* 8015E5D8 0015B538 7F E3 FB 78 */ mr r3, r31 -/* 8015E5DC 0015B53C 38 80 00 07 */ li r4, 7 -/* 8015E5E0 0015B540 4B F3 35 3D */ bl GetItemAmount__12CPlayerStateCFQ212CPlayerState9EItemType -/* 8015E5E4 0015B544 7C 03 D0 00 */ cmpw r3, r26 -/* 8015E5E8 0015B548 40 80 00 40 */ bge lbl_8015E628 -/* 8015E5EC 0015B54C 7F E3 FB 78 */ mr r3, r31 -/* 8015E5F0 0015B550 3B 20 00 01 */ li r25, 1 -/* 8015E5F4 0015B554 38 80 00 07 */ li r4, 7 -/* 8015E5F8 0015B558 4B F3 35 25 */ bl GetItemAmount__12CPlayerStateCFQ212CPlayerState9EItemType -/* 8015E5FC 0015B55C 2C 03 00 02 */ cmpwi r3, 2 -/* 8015E600 0015B560 40 80 00 60 */ bge lbl_8015E660 -/* 8015E604 0015B564 C0 02 9F 4C */ lfs f0, lbl_805ABC6C@sda21(r2) -/* 8015E608 0015B568 FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 8015E60C 0015B56C 4C 41 13 82 */ cror 2, 1, 2 -/* 8015E610 0015B570 40 82 00 50 */ bne lbl_8015E660 -/* 8015E614 0015B574 C0 02 9F 50 */ lfs f0, lbl_805ABC70@sda21(r2) -/* 8015E618 0015B578 FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 8015E61C 0015B57C 40 80 00 44 */ bge lbl_8015E660 -/* 8015E620 0015B580 C3 82 9F 54 */ lfs f28, lbl_805ABC74@sda21(r2) -/* 8015E624 0015B584 48 00 00 3C */ b lbl_8015E660 -lbl_8015E628: -/* 8015E628 0015B588 3B 00 00 01 */ li r24, 1 -/* 8015E62C 0015B58C 48 00 00 34 */ b lbl_8015E660 -lbl_8015E630: -/* 8015E630 0015B590 34 7F 00 0C */ addic. r3, r31, 0xc -/* 8015E634 0015B594 41 82 00 20 */ beq lbl_8015E654 -/* 8015E638 0015B598 C3 C3 00 00 */ lfs f30, 0(r3) -/* 8015E63C 0015B59C 7F E3 FB 78 */ mr r3, r31 -/* 8015E640 0015B5A0 4B F3 36 F1 */ bl CalculateHealth__12CPlayerStateFUi -/* 8015E644 0015B5A4 FC 1E 08 40 */ fcmpo cr0, f30, f1 -/* 8015E648 0015B5A8 40 80 00 0C */ bge lbl_8015E654 -/* 8015E64C 0015B5AC 3B 20 00 01 */ li r25, 1 -/* 8015E650 0015B5B0 48 00 00 10 */ b lbl_8015E660 -lbl_8015E654: -/* 8015E654 0015B5B4 3B 00 00 01 */ li r24, 1 -/* 8015E658 0015B5B8 48 00 00 08 */ b lbl_8015E660 -lbl_8015E65C: -/* 8015E65C 0015B5BC 3B 20 00 01 */ li r25, 1 -lbl_8015E660: -/* 8015E660 0015B5C0 80 7C 09 00 */ lwz r3, 0x900(r28) -/* 8015E664 0015B5C4 48 1B 3E 79 */ bl Float__9CRandom16Fv -/* 8015E668 0015B5C8 C0 02 9F 58 */ lfs f0, lbl_805ABC78@sda21(r2) -/* 8015E66C 0015B5CC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015E670 0015B5D0 7C 60 00 26 */ mfcr r3 -/* 8015E674 0015B5D4 57 20 06 3F */ clrlwi. r0, r25, 0x18 -/* 8015E678 0015B5D8 54 63 0F FE */ srwi r3, r3, 0x1f -/* 8015E67C 0015B5DC 40 82 00 14 */ bne lbl_8015E690 -/* 8015E680 0015B5E0 57 00 06 3F */ clrlwi. r0, r24, 0x18 -/* 8015E684 0015B5E4 41 82 00 70 */ beq lbl_8015E6F4 -/* 8015E688 0015B5E8 28 03 00 00 */ cmplwi r3, 0 -/* 8015E68C 0015B5EC 41 82 00 68 */ beq lbl_8015E6F4 -lbl_8015E690: -/* 8015E690 0015B5F0 C0 02 9F 34 */ lfs f0, lbl_805ABC54@sda21(r2) -/* 8015E694 0015B5F4 FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 8015E698 0015B5F8 40 81 00 5C */ ble lbl_8015E6F4 -/* 8015E69C 0015B5FC 80 1D 00 04 */ lwz r0, 4(r29) -/* 8015E6A0 0015B600 EF BF EF 3A */ fmadds f29, f31, f28, f29 -/* 8015E6A4 0015B604 80 BD 00 08 */ lwz r5, 8(r29) -/* 8015E6A8 0015B608 83 5E 00 08 */ lwz r26, 8(r30) -/* 8015E6AC 0015B60C 7C 00 28 00 */ cmpw r0, r5 -/* 8015E6B0 0015B610 41 80 00 1C */ blt lbl_8015E6CC -/* 8015E6B4 0015B614 2C 05 00 00 */ cmpwi r5, 0 -/* 8015E6B8 0015B618 7F A3 EB 78 */ mr r3, r29 -/* 8015E6BC 0015B61C 38 80 00 04 */ li r4, 4 -/* 8015E6C0 0015B620 41 82 00 08 */ beq lbl_8015E6C8 -/* 8015E6C4 0015B624 54 A4 08 3C */ slwi r4, r5, 1 -lbl_8015E6C8: -/* 8015E6C8 0015B628 48 00 03 15 */ bl sub_8015e9dc -lbl_8015E6CC: -/* 8015E6CC 0015B62C 80 1D 00 04 */ lwz r0, 4(r29) -/* 8015E6D0 0015B630 80 7D 00 0C */ lwz r3, 0xc(r29) -/* 8015E6D4 0015B634 54 00 18 38 */ slwi r0, r0, 3 -/* 8015E6D8 0015B638 7C 63 02 15 */ add. r3, r3, r0 -/* 8015E6DC 0015B63C 41 82 00 0C */ beq lbl_8015E6E8 -/* 8015E6E0 0015B640 D3 E3 00 00 */ stfs f31, 0(r3) -/* 8015E6E4 0015B644 93 43 00 04 */ stw r26, 4(r3) -lbl_8015E6E8: -/* 8015E6E8 0015B648 80 7D 00 04 */ lwz r3, 4(r29) -/* 8015E6EC 0015B64C 38 03 00 01 */ addi r0, r3, 1 -/* 8015E6F0 0015B650 90 1D 00 04 */ stw r0, 4(r29) -lbl_8015E6F4: -/* 8015E6F4 0015B654 3B DE 00 0C */ addi r30, r30, 0xc -lbl_8015E6F8: -/* 8015E6F8 0015B658 80 1B 00 24 */ lwz r0, 0x24(r27) -/* 8015E6FC 0015B65C 80 7B 00 2C */ lwz r3, 0x2c(r27) -/* 8015E700 0015B660 1C 00 00 0C */ mulli r0, r0, 0xc -/* 8015E704 0015B664 7C 03 02 14 */ add r0, r3, r0 -/* 8015E708 0015B668 7C 1E 00 40 */ cmplw r30, r0 -/* 8015E70C 0015B66C 40 82 FD AC */ bne lbl_8015E4B8 -/* 8015E710 0015B670 FC 20 E8 90 */ fmr f1, f29 -/* 8015E714 0015B674 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 -/* 8015E718 0015B678 CB E1 00 70 */ lfd f31, 0x70(r1) -/* 8015E71C 0015B67C E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 -/* 8015E720 0015B680 CB C1 00 60 */ lfd f30, 0x60(r1) -/* 8015E724 0015B684 E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0 -/* 8015E728 0015B688 CB A1 00 50 */ lfd f29, 0x50(r1) -/* 8015E72C 0015B68C E3 81 00 48 */ psq_l f28, 72(r1), 0, qr0 -/* 8015E730 0015B690 CB 81 00 40 */ lfd f28, 0x40(r1) -/* 8015E734 0015B694 BB 01 00 20 */ lmw r24, 0x20(r1) -/* 8015E738 0015B698 80 01 00 84 */ lwz r0, 0x84(r1) -/* 8015E73C 0015B69C 7C 08 03 A6 */ mtlr r0 -/* 8015E740 0015B6A0 38 21 00 80 */ addi r1, r1, 0x80 -/* 8015E744 0015B6A4 4E 80 00 20 */ blr - -.global "GetGeneratorIds__22CScriptPickupGeneratorFR13CStateManager9TUniqueIdRQ24rstl18vector<9TUniqueId>" -"GetGeneratorIds__22CScriptPickupGeneratorFR13CStateManager9TUniqueIdRQ24rstl18vector<9TUniqueId>": -/* 8015E748 0015B6A8 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8015E74C 0015B6AC 7C 08 02 A6 */ mflr r0 -/* 8015E750 0015B6B0 90 01 00 44 */ stw r0, 0x44(r1) -/* 8015E754 0015B6B4 BF 61 00 2C */ stmw r27, 0x2c(r1) -/* 8015E758 0015B6B8 7C 7B 1B 78 */ mr r27, r3 -/* 8015E75C 0015B6BC 7C 9C 23 78 */ mr r28, r4 -/* 8015E760 0015B6C0 7C BD 2B 78 */ mr r29, r5 -/* 8015E764 0015B6C4 7C DE 33 78 */ mr r30, r6 -/* 8015E768 0015B6C8 80 63 00 24 */ lwz r3, 0x24(r3) -/* 8015E76C 0015B6CC 80 0D 8C E0 */ lwz r0, lbl_805A78A0@sda21(r13) -/* 8015E770 0015B6D0 90 61 00 18 */ stw r3, 0x18(r1) -/* 8015E774 0015B6D4 7C 00 18 00 */ cmpw r0, r3 -/* 8015E778 0015B6D8 38 6D 8C E0 */ addi r3, r13, lbl_805A78A0@sda21 -/* 8015E77C 0015B6DC 40 80 00 08 */ bge lbl_8015E784 -/* 8015E780 0015B6E0 38 61 00 18 */ addi r3, r1, 0x18 -lbl_8015E784: -/* 8015E784 0015B6E4 80 83 00 00 */ lwz r4, 0(r3) -/* 8015E788 0015B6E8 7F C3 F3 78 */ mr r3, r30 -/* 8015E78C 0015B6EC 4B EA DC 7D */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" -/* 8015E790 0015B6F0 83 FB 00 2C */ lwz r31, 0x2c(r27) -/* 8015E794 0015B6F4 48 00 00 C0 */ b lbl_8015E854 -lbl_8015E798: -/* 8015E798 0015B6F8 80 1F 00 00 */ lwz r0, 0(r31) -/* 8015E79C 0015B6FC 2C 00 00 09 */ cmpwi r0, 9 -/* 8015E7A0 0015B700 40 82 00 B0 */ bne lbl_8015E850 -/* 8015E7A4 0015B704 80 1F 00 04 */ lwz r0, 4(r31) -/* 8015E7A8 0015B708 2C 00 00 06 */ cmpwi r0, 6 -/* 8015E7AC 0015B70C 40 82 00 A4 */ bne lbl_8015E850 -/* 8015E7B0 0015B710 80 1F 00 08 */ lwz r0, 8(r31) -/* 8015E7B4 0015B714 7F 84 E3 78 */ mr r4, r28 -/* 8015E7B8 0015B718 38 61 00 0C */ addi r3, r1, 0xc -/* 8015E7BC 0015B71C 38 A1 00 14 */ addi r5, r1, 0x14 -/* 8015E7C0 0015B720 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015E7C4 0015B724 4B EE 97 59 */ bl GetIdForScript__13CStateManagerCF9TEditorId -/* 8015E7C8 0015B728 A0 61 00 0C */ lhz r3, 0xc(r1) -/* 8015E7CC 0015B72C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8015E7D0 0015B730 B0 61 00 10 */ sth r3, 0x10(r1) -/* 8015E7D4 0015B734 7C 03 00 40 */ cmplw r3, r0 -/* 8015E7D8 0015B738 41 82 00 78 */ beq lbl_8015E850 -/* 8015E7DC 0015B73C B0 61 00 08 */ sth r3, 8(r1) -/* 8015E7E0 0015B740 7F 83 E3 78 */ mr r3, r28 -/* 8015E7E4 0015B744 38 81 00 08 */ addi r4, r1, 8 -/* 8015E7E8 0015B748 4B EE DD BD */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8015E7EC 0015B74C 28 03 00 00 */ cmplwi r3, 0 -/* 8015E7F0 0015B750 41 82 00 60 */ beq lbl_8015E850 -/* 8015E7F4 0015B754 88 03 00 30 */ lbz r0, 0x30(r3) -/* 8015E7F8 0015B758 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8015E7FC 0015B75C 41 82 00 54 */ beq lbl_8015E850 -/* 8015E800 0015B760 80 1E 00 04 */ lwz r0, 4(r30) -/* 8015E804 0015B764 80 BE 00 08 */ lwz r5, 8(r30) -/* 8015E808 0015B768 7C 00 28 00 */ cmpw r0, r5 -/* 8015E80C 0015B76C 41 80 00 1C */ blt lbl_8015E828 -/* 8015E810 0015B770 2C 05 00 00 */ cmpwi r5, 0 -/* 8015E814 0015B774 7F C3 F3 78 */ mr r3, r30 -/* 8015E818 0015B778 38 80 00 04 */ li r4, 4 -/* 8015E81C 0015B77C 41 82 00 08 */ beq lbl_8015E824 -/* 8015E820 0015B780 54 A4 08 3C */ slwi r4, r5, 1 -lbl_8015E824: -/* 8015E824 0015B784 4B EA DB E5 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" -lbl_8015E828: -/* 8015E828 0015B788 80 1E 00 04 */ lwz r0, 4(r30) -/* 8015E82C 0015B78C 80 7E 00 0C */ lwz r3, 0xc(r30) -/* 8015E830 0015B790 54 00 08 3C */ slwi r0, r0, 1 -/* 8015E834 0015B794 7C 63 02 15 */ add. r3, r3, r0 -/* 8015E838 0015B798 41 82 00 0C */ beq lbl_8015E844 -/* 8015E83C 0015B79C A0 01 00 10 */ lhz r0, 0x10(r1) -/* 8015E840 0015B7A0 B0 03 00 00 */ sth r0, 0(r3) -lbl_8015E844: -/* 8015E844 0015B7A4 80 7E 00 04 */ lwz r3, 4(r30) -/* 8015E848 0015B7A8 38 03 00 01 */ addi r0, r3, 1 -/* 8015E84C 0015B7AC 90 1E 00 04 */ stw r0, 4(r30) -lbl_8015E850: -/* 8015E850 0015B7B0 3B FF 00 0C */ addi r31, r31, 0xc -lbl_8015E854: -/* 8015E854 0015B7B4 80 1B 00 24 */ lwz r0, 0x24(r27) -/* 8015E858 0015B7B8 80 7B 00 2C */ lwz r3, 0x2c(r27) -/* 8015E85C 0015B7BC 1C 00 00 0C */ mulli r0, r0, 0xc -/* 8015E860 0015B7C0 7C 03 02 14 */ add r0, r3, r0 -/* 8015E864 0015B7C4 7C 1F 00 40 */ cmplw r31, r0 -/* 8015E868 0015B7C8 40 82 FF 30 */ bne lbl_8015E798 -/* 8015E86C 0015B7CC 80 1E 00 04 */ lwz r0, 4(r30) -/* 8015E870 0015B7D0 2C 00 00 00 */ cmpwi r0, 0 -/* 8015E874 0015B7D4 40 82 00 50 */ bne lbl_8015E8C4 -/* 8015E878 0015B7D8 80 BE 00 08 */ lwz r5, 8(r30) -/* 8015E87C 0015B7DC 7C 00 28 00 */ cmpw r0, r5 -/* 8015E880 0015B7E0 41 80 00 1C */ blt lbl_8015E89C -/* 8015E884 0015B7E4 2C 05 00 00 */ cmpwi r5, 0 -/* 8015E888 0015B7E8 7F C3 F3 78 */ mr r3, r30 -/* 8015E88C 0015B7EC 38 80 00 04 */ li r4, 4 -/* 8015E890 0015B7F0 41 82 00 08 */ beq lbl_8015E898 -/* 8015E894 0015B7F4 54 A4 08 3C */ slwi r4, r5, 1 -lbl_8015E898: -/* 8015E898 0015B7F8 4B EA DB 71 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" -lbl_8015E89C: -/* 8015E89C 0015B7FC 80 1E 00 04 */ lwz r0, 4(r30) -/* 8015E8A0 0015B800 80 7E 00 0C */ lwz r3, 0xc(r30) -/* 8015E8A4 0015B804 54 00 08 3C */ slwi r0, r0, 1 -/* 8015E8A8 0015B808 7C 63 02 15 */ add. r3, r3, r0 -/* 8015E8AC 0015B80C 41 82 00 0C */ beq lbl_8015E8B8 -/* 8015E8B0 0015B810 A0 1D 00 00 */ lhz r0, 0(r29) -/* 8015E8B4 0015B814 B0 03 00 00 */ sth r0, 0(r3) -lbl_8015E8B8: -/* 8015E8B8 0015B818 80 7E 00 04 */ lwz r3, 4(r30) -/* 8015E8BC 0015B81C 38 03 00 01 */ addi r0, r3, 1 -/* 8015E8C0 0015B820 90 1E 00 04 */ stw r0, 4(r30) -lbl_8015E8C4: -/* 8015E8C4 0015B824 BB 61 00 2C */ lmw r27, 0x2c(r1) -/* 8015E8C8 0015B828 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8015E8CC 0015B82C 7C 08 03 A6 */ mtlr r0 -/* 8015E8D0 0015B830 38 21 00 40 */ addi r1, r1, 0x40 -/* 8015E8D4 0015B834 4E 80 00 20 */ blr - -.global __dt__22CScriptPickupGeneratorFv -__dt__22CScriptPickupGeneratorFv: -/* 8015E8D8 0015B838 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015E8DC 0015B83C 7C 08 02 A6 */ mflr r0 -/* 8015E8E0 0015B840 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015E8E4 0015B844 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8015E8E8 0015B848 7C 9F 23 78 */ mr r31, r4 -/* 8015E8EC 0015B84C 93 C1 00 08 */ stw r30, 8(r1) -/* 8015E8F0 0015B850 7C 7E 1B 79 */ or. r30, r3, r3 -/* 8015E8F4 0015B854 41 82 00 28 */ beq lbl_8015E91C -/* 8015E8F8 0015B858 3C A0 80 3E */ lis r5, lbl_803E3618@ha -/* 8015E8FC 0015B85C 38 80 00 00 */ li r4, 0 -/* 8015E900 0015B860 38 05 36 18 */ addi r0, r5, lbl_803E3618@l -/* 8015E904 0015B864 90 1E 00 00 */ stw r0, 0(r30) -/* 8015E908 0015B868 4B EF 29 6D */ bl __dt__7CEntityFv -/* 8015E90C 0015B86C 7F E0 07 35 */ extsh. r0, r31 -/* 8015E910 0015B870 40 81 00 0C */ ble lbl_8015E91C -/* 8015E914 0015B874 7F C3 F3 78 */ mr r3, r30 -/* 8015E918 0015B878 48 1B 70 19 */ bl Free__7CMemoryFPCv -lbl_8015E91C: -/* 8015E91C 0015B87C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015E920 0015B880 7F C3 F3 78 */ mr r3, r30 -/* 8015E924 0015B884 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8015E928 0015B888 83 C1 00 08 */ lwz r30, 8(r1) -/* 8015E92C 0015B88C 7C 08 03 A6 */ mtlr r0 -/* 8015E930 0015B890 38 21 00 10 */ addi r1, r1, 0x10 -/* 8015E934 0015B894 4E 80 00 20 */ blr - -.global "__ct__22CScriptPickupGeneratorF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3ffb" -"__ct__22CScriptPickupGeneratorF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3ffb": -/* 8015E938 0015B898 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8015E93C 0015B89C 7C 08 02 A6 */ mflr r0 -/* 8015E940 0015B8A0 90 01 00 34 */ stw r0, 0x34(r1) -/* 8015E944 0015B8A4 DB E1 00 20 */ stfd f31, 0x20(r1) -/* 8015E948 0015B8A8 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 -/* 8015E94C 0015B8AC 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8015E950 0015B8B0 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8015E954 0015B8B4 A0 04 00 00 */ lhz r0, 0(r4) -/* 8015E958 0015B8B8 7C A4 2B 78 */ mr r4, r5 -/* 8015E95C 0015B8BC FF E0 08 90 */ fmr f31, f1 -/* 8015E960 0015B8C0 7C FF 3B 78 */ mr r31, r7 -/* 8015E964 0015B8C4 B0 01 00 08 */ sth r0, 8(r1) -/* 8015E968 0015B8C8 7C C5 33 78 */ mr r5, r6 -/* 8015E96C 0015B8CC 7C 87 23 78 */ mr r7, r4 -/* 8015E970 0015B8D0 7C 7E 1B 78 */ mr r30, r3 -/* 8015E974 0015B8D4 7D 06 43 78 */ mr r6, r8 -/* 8015E978 0015B8D8 38 81 00 08 */ addi r4, r1, 8 -/* 8015E97C 0015B8DC 4B EF 29 A9 */ bl "__ct__7CEntityF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8015E980 0015B8E0 3C 60 80 3E */ lis r3, lbl_803E3618@ha -/* 8015E984 0015B8E4 C0 02 9F 34 */ lfs f0, lbl_805ABC54@sda21(r2) -/* 8015E988 0015B8E8 38 03 36 18 */ addi r0, r3, lbl_803E3618@l -/* 8015E98C 0015B8EC 7F C3 F3 78 */ mr r3, r30 -/* 8015E990 0015B8F0 90 1E 00 00 */ stw r0, 0(r30) -/* 8015E994 0015B8F4 C0 3F 00 00 */ lfs f1, 0(r31) -/* 8015E998 0015B8F8 D0 3E 00 34 */ stfs f1, 0x34(r30) -/* 8015E99C 0015B8FC C0 3F 00 04 */ lfs f1, 4(r31) -/* 8015E9A0 0015B900 D0 3E 00 38 */ stfs f1, 0x38(r30) -/* 8015E9A4 0015B904 C0 3F 00 08 */ lfs f1, 8(r31) -/* 8015E9A8 0015B908 D0 3E 00 3C */ stfs f1, 0x3c(r30) -/* 8015E9AC 0015B90C D3 FE 00 40 */ stfs f31, 0x40(r30) -/* 8015E9B0 0015B910 D0 1E 00 44 */ stfs f0, 0x44(r30) -/* 8015E9B4 0015B914 4B FF F8 6D */ bl ResetDelayTimer__22CScriptPickupGeneratorFv -/* 8015E9B8 0015B918 7F C3 F3 78 */ mr r3, r30 -/* 8015E9BC 0015B91C E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 -/* 8015E9C0 0015B920 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8015E9C4 0015B924 CB E1 00 20 */ lfd f31, 0x20(r1) -/* 8015E9C8 0015B928 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8015E9CC 0015B92C 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8015E9D0 0015B930 7C 08 03 A6 */ mtlr r0 -/* 8015E9D4 0015B934 38 21 00 30 */ addi r1, r1, 0x30 -/* 8015E9D8 0015B938 4E 80 00 20 */ blr - -.global sub_8015e9dc -sub_8015e9dc: -/* 8015E9DC 0015B93C 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8015E9E0 0015B940 7C 08 02 A6 */ mflr r0 -/* 8015E9E4 0015B944 90 01 00 34 */ stw r0, 0x34(r1) -/* 8015E9E8 0015B948 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8015E9EC 0015B94C 7C 9F 23 78 */ mr r31, r4 -/* 8015E9F0 0015B950 93 C1 00 28 */ stw r30, 0x28(r1) -/* 8015E9F4 0015B954 7C 7E 1B 78 */ mr r30, r3 -/* 8015E9F8 0015B958 93 A1 00 24 */ stw r29, 0x24(r1) -/* 8015E9FC 0015B95C 80 03 00 08 */ lwz r0, 8(r3) -/* 8015EA00 0015B960 7C 1F 00 00 */ cmpw r31, r0 -/* 8015EA04 0015B964 40 81 00 B0 */ ble lbl_8015EAB4 -/* 8015EA08 0015B968 57 E3 18 39 */ rlwinm. r3, r31, 3, 0, 0x1c -/* 8015EA0C 0015B96C 40 82 00 0C */ bne lbl_8015EA18 -/* 8015EA10 0015B970 3B A0 00 00 */ li r29, 0 -/* 8015EA14 0015B974 48 00 00 18 */ b lbl_8015EA2C -lbl_8015EA18: -/* 8015EA18 0015B978 3C 80 80 3D */ lis r4, lbl_803D0390@ha -/* 8015EA1C 0015B97C 38 A0 00 00 */ li r5, 0 -/* 8015EA20 0015B980 38 84 03 90 */ addi r4, r4, lbl_803D0390@l -/* 8015EA24 0015B984 48 1B 6D F5 */ bl __nwa__FUlPCcPCc -/* 8015EA28 0015B988 7C 7D 1B 78 */ mr r29, r3 -lbl_8015EA2C: -/* 8015EA2C 0015B98C 80 1E 00 04 */ lwz r0, 4(r30) -/* 8015EA30 0015B990 7F A4 EB 78 */ mr r4, r29 -/* 8015EA34 0015B994 80 BE 00 0C */ lwz r5, 0xc(r30) -/* 8015EA38 0015B998 54 00 18 38 */ slwi r0, r0, 3 -/* 8015EA3C 0015B99C 7C 65 02 14 */ add r3, r5, r0 -/* 8015EA40 0015B9A0 90 A1 00 10 */ stw r5, 0x10(r1) -/* 8015EA44 0015B9A4 90 61 00 08 */ stw r3, 8(r1) -/* 8015EA48 0015B9A8 90 61 00 0C */ stw r3, 0xc(r1) -/* 8015EA4C 0015B9AC 90 A1 00 14 */ stw r5, 0x14(r1) -/* 8015EA50 0015B9B0 48 00 00 24 */ b lbl_8015EA74 -lbl_8015EA54: -/* 8015EA54 0015B9B4 28 04 00 00 */ cmplwi r4, 0 -/* 8015EA58 0015B9B8 41 82 00 14 */ beq lbl_8015EA6C -/* 8015EA5C 0015B9BC C0 05 00 00 */ lfs f0, 0(r5) -/* 8015EA60 0015B9C0 D0 04 00 00 */ stfs f0, 0(r4) -/* 8015EA64 0015B9C4 80 05 00 04 */ lwz r0, 4(r5) -/* 8015EA68 0015B9C8 90 04 00 04 */ stw r0, 4(r4) -lbl_8015EA6C: -/* 8015EA6C 0015B9CC 38 84 00 08 */ addi r4, r4, 8 -/* 8015EA70 0015B9D0 38 A5 00 08 */ addi r5, r5, 8 -lbl_8015EA74: -/* 8015EA74 0015B9D4 7C 05 18 40 */ cmplw r5, r3 -/* 8015EA78 0015B9D8 40 82 FF DC */ bne lbl_8015EA54 -/* 8015EA7C 0015B9DC 80 1E 00 04 */ lwz r0, 4(r30) -/* 8015EA80 0015B9E0 80 7E 00 0C */ lwz r3, 0xc(r30) -/* 8015EA84 0015B9E4 54 00 18 38 */ slwi r0, r0, 3 -/* 8015EA88 0015B9E8 7C 64 1B 78 */ mr r4, r3 -/* 8015EA8C 0015B9EC 7C 03 02 14 */ add r0, r3, r0 -/* 8015EA90 0015B9F0 48 00 00 08 */ b lbl_8015EA98 -lbl_8015EA94: -/* 8015EA94 0015B9F4 38 84 00 08 */ addi r4, r4, 8 -lbl_8015EA98: -/* 8015EA98 0015B9F8 7C 04 00 40 */ cmplw r4, r0 -/* 8015EA9C 0015B9FC 40 82 FF F8 */ bne lbl_8015EA94 -/* 8015EAA0 0015BA00 28 03 00 00 */ cmplwi r3, 0 -/* 8015EAA4 0015BA04 41 82 00 08 */ beq lbl_8015EAAC -/* 8015EAA8 0015BA08 48 1B 6E 89 */ bl Free__7CMemoryFPCv -lbl_8015EAAC: -/* 8015EAAC 0015BA0C 93 BE 00 0C */ stw r29, 0xc(r30) -/* 8015EAB0 0015BA10 93 FE 00 08 */ stw r31, 8(r30) -lbl_8015EAB4: -/* 8015EAB4 0015BA14 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8015EAB8 0015BA18 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8015EABC 0015BA1C 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 8015EAC0 0015BA20 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 8015EAC4 0015BA24 7C 08 03 A6 */ mtlr r0 -/* 8015EAC8 0015BA28 38 21 00 30 */ addi r1, r1, 0x30 -/* 8015EACC 0015BA2C 4E 80 00 20 */ blr - -.global CalculateRenderBounds__22CScriptPointOfInterestFv -CalculateRenderBounds__22CScriptPointOfInterestFv: -/* 8015EAD0 0015BA30 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8015EAD4 0015BA34 7C 08 02 A6 */ mflr r0 -/* 8015EAD8 0015BA38 C0 02 9F 60 */ lfs f0, lbl_805ABC80@sda21(r2) -/* 8015EADC 0015BA3C 90 01 00 44 */ stw r0, 0x44(r1) -/* 8015EAE0 0015BA40 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 8015EAE4 0015BA44 7C 7F 1B 78 */ mr r31, r3 -/* 8015EAE8 0015BA48 C0 E3 00 E8 */ lfs f7, 0xe8(r3) -/* 8015EAEC 0015BA4C FC 00 38 00 */ fcmpu cr0, f0, f7 -/* 8015EAF0 0015BA50 40 82 00 0C */ bne lbl_8015EAFC -/* 8015EAF4 0015BA54 4B EF 65 E1 */ bl CalculateRenderBounds__6CActorFv -/* 8015EAF8 0015BA58 48 00 00 80 */ b lbl_8015EB78 -lbl_8015EAFC: -/* 8015EAFC 0015BA5C C0 DF 00 60 */ lfs f6, 0x60(r31) -/* 8015EB00 0015BA60 38 61 00 20 */ addi r3, r1, 0x20 -/* 8015EB04 0015BA64 C0 BF 00 50 */ lfs f5, 0x50(r31) -/* 8015EB08 0015BA68 38 81 00 14 */ addi r4, r1, 0x14 -/* 8015EB0C 0015BA6C C0 3F 00 40 */ lfs f1, 0x40(r31) -/* 8015EB10 0015BA70 EC 06 38 2A */ fadds f0, f6, f7 -/* 8015EB14 0015BA74 EC 65 38 2A */ fadds f3, f5, f7 -/* 8015EB18 0015BA78 38 A1 00 08 */ addi r5, r1, 8 -/* 8015EB1C 0015BA7C EC 81 38 2A */ fadds f4, f1, f7 -/* 8015EB20 0015BA80 EC 41 38 28 */ fsubs f2, f1, f7 -/* 8015EB24 0015BA84 D0 01 00 10 */ stfs f0, 0x10(r1) -/* 8015EB28 0015BA88 EC 25 38 28 */ fsubs f1, f5, f7 -/* 8015EB2C 0015BA8C EC 06 38 28 */ fsubs f0, f6, f7 -/* 8015EB30 0015BA90 D0 81 00 08 */ stfs f4, 8(r1) -/* 8015EB34 0015BA94 D0 61 00 0C */ stfs f3, 0xc(r1) -/* 8015EB38 0015BA98 D0 41 00 14 */ stfs f2, 0x14(r1) -/* 8015EB3C 0015BA9C D0 21 00 18 */ stfs f1, 0x18(r1) -/* 8015EB40 0015BAA0 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 8015EB44 0015BAA4 48 1D 99 C5 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 8015EB48 0015BAA8 80 61 00 20 */ lwz r3, 0x20(r1) -/* 8015EB4C 0015BAAC 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8015EB50 0015BAB0 90 7F 00 9C */ stw r3, 0x9c(r31) -/* 8015EB54 0015BAB4 90 1F 00 A0 */ stw r0, 0xa0(r31) -/* 8015EB58 0015BAB8 80 01 00 28 */ lwz r0, 0x28(r1) -/* 8015EB5C 0015BABC 90 1F 00 A4 */ stw r0, 0xa4(r31) -/* 8015EB60 0015BAC0 80 61 00 2C */ lwz r3, 0x2c(r1) -/* 8015EB64 0015BAC4 80 01 00 30 */ lwz r0, 0x30(r1) -/* 8015EB68 0015BAC8 90 7F 00 A8 */ stw r3, 0xa8(r31) -/* 8015EB6C 0015BACC 90 1F 00 AC */ stw r0, 0xac(r31) -/* 8015EB70 0015BAD0 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8015EB74 0015BAD4 90 1F 00 B0 */ stw r0, 0xb0(r31) -lbl_8015EB78: -/* 8015EB78 0015BAD8 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8015EB7C 0015BADC 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 8015EB80 0015BAE0 7C 08 03 A6 */ mtlr r0 -/* 8015EB84 0015BAE4 38 21 00 40 */ addi r1, r1, 0x40 -/* 8015EB88 0015BAE8 4E 80 00 20 */ blr - -.global Think__22CScriptPointOfInterestFfR13CStateManager -Think__22CScriptPointOfInterestFfR13CStateManager: -/* 8015EB8C 0015BAEC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015EB90 0015BAF0 7C 08 02 A6 */ mflr r0 -/* 8015EB94 0015BAF4 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015EB98 0015BAF8 80 A4 08 B8 */ lwz r5, 0x8b8(r4) -/* 8015EB9C 0015BAFC 88 03 00 E7 */ lbz r0, 0xe7(r3) -/* 8015EBA0 0015BB00 80 A5 00 00 */ lwz r5, 0(r5) -/* 8015EBA4 0015BB04 80 A5 00 14 */ lwz r5, 0x14(r5) -/* 8015EBA8 0015BB08 20 A5 00 02 */ subfic r5, r5, 2 -/* 8015EBAC 0015BB0C 7C A5 00 34 */ cntlzw r5, r5 -/* 8015EBB0 0015BB10 50 A0 DF FE */ rlwimi r0, r5, 0x1b, 0x1f, 0x1f -/* 8015EBB4 0015BB14 98 03 00 E7 */ stb r0, 0xe7(r3) -/* 8015EBB8 0015BB18 4B EF 25 01 */ bl Think__7CEntityFfR13CStateManager -/* 8015EBBC 0015BB1C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015EBC0 0015BB20 7C 08 03 A6 */ mtlr r0 -/* 8015EBC4 0015BB24 38 21 00 10 */ addi r1, r1, 0x10 -/* 8015EBC8 0015BB28 4E 80 00 20 */ blr - -.global Accept__22CScriptPointOfInterestFR8IVisitor -Accept__22CScriptPointOfInterestFR8IVisitor: -/* 8015EBCC 0015BB2C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015EBD0 0015BB30 7C 08 02 A6 */ mflr r0 -/* 8015EBD4 0015BB34 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015EBD8 0015BB38 7C 60 1B 78 */ mr r0, r3 -/* 8015EBDC 0015BB3C 7C 83 23 78 */ mr r3, r4 -/* 8015EBE0 0015BB40 81 84 00 00 */ lwz r12, 0(r4) -/* 8015EBE4 0015BB44 7C 04 03 78 */ mr r4, r0 -/* 8015EBE8 0015BB48 81 8C 00 A4 */ lwz r12, 0xa4(r12) -/* 8015EBEC 0015BB4C 7D 89 03 A6 */ mtctr r12 -/* 8015EBF0 0015BB50 4E 80 04 21 */ bctrl -/* 8015EBF4 0015BB54 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015EBF8 0015BB58 7C 08 03 A6 */ mtlr r0 -/* 8015EBFC 0015BB5C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8015EC00 0015BB60 4E 80 00 20 */ blr - -.global AddToRenderer__22CScriptPointOfInterestCFRC14CFrustumPlanesRC13CStateManager -AddToRenderer__22CScriptPointOfInterestCFRC14CFrustumPlanesRC13CStateManager: -/* 8015EC04 0015BB64 4E 80 00 20 */ blr - -.global Render__22CScriptPointOfInterestCFRC13CStateManager -Render__22CScriptPointOfInterestCFRC13CStateManager: -/* 8015EC08 0015BB68 4E 80 00 20 */ blr - -.global GetTouchBounds__22CScriptPointOfInterestCFv -GetTouchBounds__22CScriptPointOfInterestCFv: -/* 8015EC0C 0015BB6C 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8015EC10 0015BB70 7C 08 02 A6 */ mflr r0 -/* 8015EC14 0015BB74 90 01 00 44 */ stw r0, 0x44(r1) -/* 8015EC18 0015BB78 38 A1 00 08 */ addi r5, r1, 8 -/* 8015EC1C 0015BB7C 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 8015EC20 0015BB80 7C 7F 1B 78 */ mr r31, r3 -/* 8015EC24 0015BB84 38 61 00 20 */ addi r3, r1, 0x20 -/* 8015EC28 0015BB88 C0 44 00 60 */ lfs f2, 0x60(r4) -/* 8015EC2C 0015BB8C C0 24 00 50 */ lfs f1, 0x50(r4) -/* 8015EC30 0015BB90 C0 04 00 40 */ lfs f0, 0x40(r4) -/* 8015EC34 0015BB94 38 81 00 14 */ addi r4, r1, 0x14 -/* 8015EC38 0015BB98 D0 21 00 0C */ stfs f1, 0xc(r1) -/* 8015EC3C 0015BB9C D0 01 00 08 */ stfs f0, 8(r1) -/* 8015EC40 0015BBA0 D0 41 00 10 */ stfs f2, 0x10(r1) -/* 8015EC44 0015BBA4 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 8015EC48 0015BBA8 D0 21 00 18 */ stfs f1, 0x18(r1) -/* 8015EC4C 0015BBAC D0 41 00 1C */ stfs f2, 0x1c(r1) -/* 8015EC50 0015BBB0 48 1D 98 B9 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 8015EC54 0015BBB4 38 00 00 01 */ li r0, 1 -/* 8015EC58 0015BBB8 28 1F 00 00 */ cmplwi r31, 0 -/* 8015EC5C 0015BBBC 98 1F 00 18 */ stb r0, 0x18(r31) -/* 8015EC60 0015BBC0 41 82 00 34 */ beq lbl_8015EC94 -/* 8015EC64 0015BBC4 C0 01 00 20 */ lfs f0, 0x20(r1) -/* 8015EC68 0015BBC8 D0 1F 00 00 */ stfs f0, 0(r31) -/* 8015EC6C 0015BBCC C0 01 00 24 */ lfs f0, 0x24(r1) -/* 8015EC70 0015BBD0 D0 1F 00 04 */ stfs f0, 4(r31) -/* 8015EC74 0015BBD4 C0 01 00 28 */ lfs f0, 0x28(r1) -/* 8015EC78 0015BBD8 D0 1F 00 08 */ stfs f0, 8(r31) -/* 8015EC7C 0015BBDC C0 01 00 2C */ lfs f0, 0x2c(r1) -/* 8015EC80 0015BBE0 D0 1F 00 0C */ stfs f0, 0xc(r31) -/* 8015EC84 0015BBE4 C0 01 00 30 */ lfs f0, 0x30(r1) -/* 8015EC88 0015BBE8 D0 1F 00 10 */ stfs f0, 0x10(r31) -/* 8015EC8C 0015BBEC C0 01 00 34 */ lfs f0, 0x34(r1) -/* 8015EC90 0015BBF0 D0 1F 00 14 */ stfs f0, 0x14(r31) -lbl_8015EC94: -/* 8015EC94 0015BBF4 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8015EC98 0015BBF8 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 8015EC9C 0015BBFC 7C 08 03 A6 */ mtlr r0 -/* 8015ECA0 0015BC00 38 21 00 40 */ addi r1, r1, 0x40 -/* 8015ECA4 0015BC04 4E 80 00 20 */ blr - -.global AcceptScriptMsg__22CScriptPointOfInterestF20EScriptObjectMessage9TUniqueIdR13CStateManager -AcceptScriptMsg__22CScriptPointOfInterestF20EScriptObjectMessage9TUniqueIdR13CStateManager: -/* 8015ECA8 0015BC08 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015ECAC 0015BC0C 7C 08 02 A6 */ mflr r0 -/* 8015ECB0 0015BC10 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015ECB4 0015BC14 A0 05 00 00 */ lhz r0, 0(r5) -/* 8015ECB8 0015BC18 38 A1 00 08 */ addi r5, r1, 8 -/* 8015ECBC 0015BC1C B0 01 00 08 */ sth r0, 8(r1) -/* 8015ECC0 0015BC20 4B EF 49 55 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager -/* 8015ECC4 0015BC24 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015ECC8 0015BC28 7C 08 03 A6 */ mtlr r0 -/* 8015ECCC 0015BC2C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8015ECD0 0015BC30 4E 80 00 20 */ blr - -.global __dt__22CScriptPointOfInterestFv -__dt__22CScriptPointOfInterestFv: -/* 8015ECD4 0015BC34 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015ECD8 0015BC38 7C 08 02 A6 */ mflr r0 -/* 8015ECDC 0015BC3C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015ECE0 0015BC40 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8015ECE4 0015BC44 7C 9F 23 78 */ mr r31, r4 -/* 8015ECE8 0015BC48 93 C1 00 08 */ stw r30, 8(r1) -/* 8015ECEC 0015BC4C 7C 7E 1B 79 */ or. r30, r3, r3 -/* 8015ECF0 0015BC50 41 82 00 28 */ beq lbl_8015ED18 -/* 8015ECF4 0015BC54 3C A0 80 3E */ lis r5, lbl_803E3638@ha -/* 8015ECF8 0015BC58 38 80 00 00 */ li r4, 0 -/* 8015ECFC 0015BC5C 38 05 36 38 */ addi r0, r5, lbl_803E3638@l -/* 8015ED00 0015BC60 90 1E 00 00 */ stw r0, 0(r30) -/* 8015ED04 0015BC64 4B EF 69 ED */ bl __dt__6CActorFv -/* 8015ED08 0015BC68 7F E0 07 35 */ extsh. r0, r31 -/* 8015ED0C 0015BC6C 40 81 00 0C */ ble lbl_8015ED18 -/* 8015ED10 0015BC70 7F C3 F3 78 */ mr r3, r30 -/* 8015ED14 0015BC74 48 1B 6C 1D */ bl Free__7CMemoryFPCv -lbl_8015ED18: -/* 8015ED18 0015BC78 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015ED1C 0015BC7C 7F C3 F3 78 */ mr r3, r30 -/* 8015ED20 0015BC80 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8015ED24 0015BC84 83 C1 00 08 */ lwz r30, 8(r1) -/* 8015ED28 0015BC88 7C 08 03 A6 */ mtlr r0 -/* 8015ED2C 0015BC8C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8015ED30 0015BC90 4E 80 00 20 */ blr - -.global "__ct__22CScriptPointOfInterestF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fbRC20CScannableParameters" -"__ct__22CScriptPointOfInterestF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fbRC20CScannableParameters": -/* 8015ED34 0015BC94 94 21 FE 90 */ stwu r1, -0x170(r1) -/* 8015ED38 0015BC98 7C 08 02 A6 */ mflr r0 -/* 8015ED3C 0015BC9C 90 01 01 74 */ stw r0, 0x174(r1) -/* 8015ED40 0015BCA0 DB E1 01 68 */ stfd f31, 0x168(r1) -/* 8015ED44 0015BCA4 FF E0 08 90 */ fmr f31, f1 -/* 8015ED48 0015BCA8 BF 21 01 4C */ stmw r25, 0x14c(r1) -/* 8015ED4C 0015BCAC 7C 7F 1B 78 */ mr r31, r3 -/* 8015ED50 0015BCB0 7C 99 23 78 */ mr r25, r4 -/* 8015ED54 0015BCB4 7C BA 2B 78 */ mr r26, r5 -/* 8015ED58 0015BCB8 7C DB 33 78 */ mr r27, r6 -/* 8015ED5C 0015BCBC 7C FC 3B 78 */ mr r28, r7 -/* 8015ED60 0015BCC0 7D 1D 43 78 */ mr r29, r8 -/* 8015ED64 0015BCC4 7D 3E 4B 78 */ mr r30, r9 -/* 8015ED68 0015BCC8 38 61 00 F0 */ addi r3, r1, 0xf0 -/* 8015ED6C 0015BCCC 4B ED BA 39 */ bl CModelDataNull__10CModelDataFv -/* 8015ED70 0015BCD0 38 61 00 88 */ addi r3, r1, 0x88 -/* 8015ED74 0015BCD4 4B EB C0 C5 */ bl None__16CActorParametersFv -/* 8015ED78 0015BCD8 7F C5 F3 78 */ mr r5, r30 -/* 8015ED7C 0015BCDC 38 61 00 20 */ addi r3, r1, 0x20 -/* 8015ED80 0015BCE0 38 81 00 88 */ addi r4, r1, 0x88 -/* 8015ED84 0015BCE4 4B FA 7A E9 */ bl Scannable__16CActorParametersCFRC20CScannableParameters -/* 8015ED88 0015BCE8 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) -/* 8015ED8C 0015BCEC 38 00 00 00 */ li r0, 0 -/* 8015ED90 0015BCF0 80 AD 8C E8 */ lwz r5, lbl_805A78A8@sda21(r13) -/* 8015ED94 0015BCF4 38 60 00 00 */ li r3, 0 -/* 8015ED98 0015BCF8 B0 81 00 10 */ sth r4, 0x10(r1) -/* 8015ED9C 0015BCFC 38 80 00 01 */ li r4, 1 -/* 8015EDA0 0015BD00 90 01 00 1C */ stw r0, 0x1c(r1) -/* 8015EDA4 0015BD04 90 01 00 18 */ stw r0, 0x18(r1) -/* 8015EDA8 0015BD08 48 22 B1 4D */ bl __shl2i -/* 8015EDAC 0015BD0C 80 A1 00 18 */ lwz r5, 0x18(r1) -/* 8015EDB0 0015BD10 39 61 00 20 */ addi r11, r1, 0x20 -/* 8015EDB4 0015BD14 80 C1 00 1C */ lwz r6, 0x1c(r1) -/* 8015EDB8 0015BD18 38 01 00 10 */ addi r0, r1, 0x10 -/* 8015EDBC 0015BD1C 7C A3 1B 78 */ or r3, r5, r3 -/* 8015EDC0 0015BD20 A1 39 00 00 */ lhz r9, 0(r25) -/* 8015EDC4 0015BD24 7C C4 23 78 */ or r4, r6, r4 -/* 8015EDC8 0015BD28 90 61 00 18 */ stw r3, 0x18(r1) -/* 8015EDCC 0015BD2C 7F E3 FB 78 */ mr r3, r31 -/* 8015EDD0 0015BD30 7F A5 EB 78 */ mr r5, r29 -/* 8015EDD4 0015BD34 90 81 00 1C */ stw r4, 0x1c(r1) -/* 8015EDD8 0015BD38 7F 46 D3 78 */ mr r6, r26 -/* 8015EDDC 0015BD3C 7F 67 DB 78 */ mr r7, r27 -/* 8015EDE0 0015BD40 7F 88 E3 78 */ mr r8, r28 -/* 8015EDE4 0015BD44 B1 21 00 14 */ sth r9, 0x14(r1) -/* 8015EDE8 0015BD48 38 81 00 14 */ addi r4, r1, 0x14 -/* 8015EDEC 0015BD4C 39 21 00 F0 */ addi r9, r1, 0xf0 -/* 8015EDF0 0015BD50 39 41 00 18 */ addi r10, r1, 0x18 -/* 8015EDF4 0015BD54 91 61 00 08 */ stw r11, 8(r1) -/* 8015EDF8 0015BD58 90 01 00 0C */ stw r0, 0xc(r1) -/* 8015EDFC 0015BD5C 4B EF 6A 25 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" -/* 8015EE00 0015BD60 38 61 00 20 */ addi r3, r1, 0x20 -/* 8015EE04 0015BD64 38 80 FF FF */ li r4, -1 -/* 8015EE08 0015BD68 4B FA 78 01 */ bl __dt__16CActorParametersFv -/* 8015EE0C 0015BD6C 38 61 00 88 */ addi r3, r1, 0x88 -/* 8015EE10 0015BD70 38 80 FF FF */ li r4, -1 -/* 8015EE14 0015BD74 4B FA 77 F5 */ bl __dt__16CActorParametersFv -/* 8015EE18 0015BD78 38 61 00 F0 */ addi r3, r1, 0xf0 -/* 8015EE1C 0015BD7C 38 80 FF FF */ li r4, -1 -/* 8015EE20 0015BD80 4B FB 7C 2D */ bl __dt__10CModelDataFv -/* 8015EE24 0015BD84 3C 80 80 3E */ lis r4, lbl_803E3638@ha -/* 8015EE28 0015BD88 7F E3 FB 78 */ mr r3, r31 -/* 8015EE2C 0015BD8C 38 04 36 38 */ addi r0, r4, lbl_803E3638@l -/* 8015EE30 0015BD90 90 1F 00 00 */ stw r0, 0(r31) -/* 8015EE34 0015BD94 D3 FF 00 E8 */ stfs f31, 0xe8(r31) -/* 8015EE38 0015BD98 CB E1 01 68 */ lfd f31, 0x168(r1) -/* 8015EE3C 0015BD9C BB 21 01 4C */ lmw r25, 0x14c(r1) -/* 8015EE40 0015BDA0 80 01 01 74 */ lwz r0, 0x174(r1) -/* 8015EE44 0015BDA4 7C 08 03 A6 */ mtlr r0 -/* 8015EE48 0015BDA8 38 21 01 70 */ addi r1, r1, 0x170 -/* 8015EE4C 0015BDAC 4E 80 00 20 */ blr - -.global __dt__6CDroneFv -__dt__6CDroneFv: -/* 8015EE50 0015BDB0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015EE54 0015BDB4 7C 08 02 A6 */ mflr r0 -/* 8015EE58 0015BDB8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015EE5C 0015BDBC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8015EE60 0015BDC0 7C 9F 23 78 */ mr r31, r4 -/* 8015EE64 0015BDC4 93 C1 00 08 */ stw r30, 8(r1) -/* 8015EE68 0015BDC8 7C 7E 1B 79 */ or. r30, r3, r3 -/* 8015EE6C 0015BDCC 41 82 02 C0 */ beq lbl_8015F12C -/* 8015EE70 0015BDD0 3C 60 80 3E */ lis r3, lbl_803E36A8@ha -/* 8015EE74 0015BDD4 34 1E 08 2C */ addic. r0, r30, 0x82c -/* 8015EE78 0015BDD8 38 03 36 A8 */ addi r0, r3, lbl_803E36A8@l -/* 8015EE7C 0015BDDC 90 1E 00 00 */ stw r0, 0(r30) -/* 8015EE80 0015BDE0 41 82 00 10 */ beq lbl_8015EE90 -/* 8015EE84 0015BDE4 80 7E 08 2C */ lwz r3, 0x82c(r30) -/* 8015EE88 0015BDE8 38 80 00 01 */ li r4, 1 -/* 8015EE8C 0015BDEC 4B FB 7B C1 */ bl __dt__10CModelDataFv -lbl_8015EE90: -/* 8015EE90 0015BDF0 34 1E 08 24 */ addic. r0, r30, 0x824 -/* 8015EE94 0015BDF4 41 82 00 58 */ beq lbl_8015EEEC -/* 8015EE98 0015BDF8 80 BE 08 24 */ lwz r5, 0x824(r30) -/* 8015EE9C 0015BDFC 38 60 00 00 */ li r3, 0 -/* 8015EEA0 0015BE00 2C 05 00 00 */ cmpwi r5, 0 -/* 8015EEA4 0015BE04 40 81 00 40 */ ble lbl_8015EEE4 -/* 8015EEA8 0015BE08 2C 05 00 08 */ cmpwi r5, 8 -/* 8015EEAC 0015BE0C 38 85 FF F8 */ addi r4, r5, -8 -/* 8015EEB0 0015BE10 40 81 00 20 */ ble lbl_8015EED0 -/* 8015EEB4 0015BE14 38 04 00 07 */ addi r0, r4, 7 -/* 8015EEB8 0015BE18 54 00 E8 FE */ srwi r0, r0, 3 -/* 8015EEBC 0015BE1C 7C 09 03 A6 */ mtctr r0 -/* 8015EEC0 0015BE20 2C 04 00 00 */ cmpwi r4, 0 -/* 8015EEC4 0015BE24 40 81 00 0C */ ble lbl_8015EED0 -lbl_8015EEC8: -/* 8015EEC8 0015BE28 38 63 00 08 */ addi r3, r3, 8 -/* 8015EECC 0015BE2C 42 00 FF FC */ bdnz lbl_8015EEC8 -lbl_8015EED0: -/* 8015EED0 0015BE30 7C 03 28 50 */ subf r0, r3, r5 -/* 8015EED4 0015BE34 7C 09 03 A6 */ mtctr r0 -/* 8015EED8 0015BE38 7C 03 28 00 */ cmpw r3, r5 -/* 8015EEDC 0015BE3C 40 80 00 08 */ bge lbl_8015EEE4 -lbl_8015EEE0: -/* 8015EEE0 0015BE40 42 00 00 00 */ bdnz lbl_8015EEE0 -lbl_8015EEE4: -/* 8015EEE4 0015BE44 38 00 00 00 */ li r0, 0 -/* 8015EEE8 0015BE48 90 1E 08 24 */ stw r0, 0x824(r30) -lbl_8015EEEC: -/* 8015EEEC 0015BE4C 34 1E 08 18 */ addic. r0, r30, 0x818 -/* 8015EEF0 0015BE50 41 82 00 58 */ beq lbl_8015EF48 -/* 8015EEF4 0015BE54 80 BE 08 18 */ lwz r5, 0x818(r30) -/* 8015EEF8 0015BE58 38 60 00 00 */ li r3, 0 -/* 8015EEFC 0015BE5C 2C 05 00 00 */ cmpwi r5, 0 -/* 8015EF00 0015BE60 40 81 00 40 */ ble lbl_8015EF40 -/* 8015EF04 0015BE64 2C 05 00 08 */ cmpwi r5, 8 -/* 8015EF08 0015BE68 38 85 FF F8 */ addi r4, r5, -8 -/* 8015EF0C 0015BE6C 40 81 00 20 */ ble lbl_8015EF2C -/* 8015EF10 0015BE70 38 04 00 07 */ addi r0, r4, 7 -/* 8015EF14 0015BE74 54 00 E8 FE */ srwi r0, r0, 3 -/* 8015EF18 0015BE78 7C 09 03 A6 */ mtctr r0 -/* 8015EF1C 0015BE7C 2C 04 00 00 */ cmpwi r4, 0 -/* 8015EF20 0015BE80 40 81 00 0C */ ble lbl_8015EF2C -lbl_8015EF24: -/* 8015EF24 0015BE84 38 63 00 08 */ addi r3, r3, 8 -/* 8015EF28 0015BE88 42 00 FF FC */ bdnz lbl_8015EF24 -lbl_8015EF2C: -/* 8015EF2C 0015BE8C 7C 03 28 50 */ subf r0, r3, r5 -/* 8015EF30 0015BE90 7C 09 03 A6 */ mtctr r0 -/* 8015EF34 0015BE94 7C 03 28 00 */ cmpw r3, r5 -/* 8015EF38 0015BE98 40 80 00 08 */ bge lbl_8015EF40 -lbl_8015EF3C: -/* 8015EF3C 0015BE9C 42 00 00 00 */ bdnz lbl_8015EF3C -lbl_8015EF40: -/* 8015EF40 0015BEA0 38 00 00 00 */ li r0, 0 -/* 8015EF44 0015BEA4 90 1E 08 18 */ stw r0, 0x818(r30) -lbl_8015EF48: -/* 8015EF48 0015BEA8 34 1E 07 FC */ addic. r0, r30, 0x7fc -/* 8015EF4C 0015BEAC 41 82 00 58 */ beq lbl_8015EFA4 -/* 8015EF50 0015BEB0 80 BE 07 FC */ lwz r5, 0x7fc(r30) -/* 8015EF54 0015BEB4 38 60 00 00 */ li r3, 0 -/* 8015EF58 0015BEB8 2C 05 00 00 */ cmpwi r5, 0 -/* 8015EF5C 0015BEBC 40 81 00 40 */ ble lbl_8015EF9C -/* 8015EF60 0015BEC0 2C 05 00 08 */ cmpwi r5, 8 -/* 8015EF64 0015BEC4 38 85 FF F8 */ addi r4, r5, -8 -/* 8015EF68 0015BEC8 40 81 00 20 */ ble lbl_8015EF88 -/* 8015EF6C 0015BECC 38 04 00 07 */ addi r0, r4, 7 -/* 8015EF70 0015BED0 54 00 E8 FE */ srwi r0, r0, 3 -/* 8015EF74 0015BED4 7C 09 03 A6 */ mtctr r0 -/* 8015EF78 0015BED8 2C 04 00 00 */ cmpwi r4, 0 -/* 8015EF7C 0015BEDC 40 81 00 0C */ ble lbl_8015EF88 -lbl_8015EF80: -/* 8015EF80 0015BEE0 38 63 00 08 */ addi r3, r3, 8 -/* 8015EF84 0015BEE4 42 00 FF FC */ bdnz lbl_8015EF80 -lbl_8015EF88: -/* 8015EF88 0015BEE8 7C 03 28 50 */ subf r0, r3, r5 -/* 8015EF8C 0015BEEC 7C 09 03 A6 */ mtctr r0 -/* 8015EF90 0015BEF0 7C 03 28 00 */ cmpw r3, r5 -/* 8015EF94 0015BEF4 40 80 00 08 */ bge lbl_8015EF9C -lbl_8015EF98: -/* 8015EF98 0015BEF8 42 00 00 00 */ bdnz lbl_8015EF98 -lbl_8015EF9C: -/* 8015EF9C 0015BEFC 38 00 00 00 */ li r0, 0 -/* 8015EFA0 0015BF00 90 1E 07 FC */ stw r0, 0x7fc(r30) -lbl_8015EFA4: -/* 8015EFA4 0015BF04 34 1E 07 E0 */ addic. r0, r30, 0x7e0 -/* 8015EFA8 0015BF08 41 82 00 58 */ beq lbl_8015F000 -/* 8015EFAC 0015BF0C 80 BE 07 E0 */ lwz r5, 0x7e0(r30) -/* 8015EFB0 0015BF10 38 60 00 00 */ li r3, 0 -/* 8015EFB4 0015BF14 2C 05 00 00 */ cmpwi r5, 0 -/* 8015EFB8 0015BF18 40 81 00 40 */ ble lbl_8015EFF8 -/* 8015EFBC 0015BF1C 2C 05 00 08 */ cmpwi r5, 8 -/* 8015EFC0 0015BF20 38 85 FF F8 */ addi r4, r5, -8 -/* 8015EFC4 0015BF24 40 81 00 20 */ ble lbl_8015EFE4 -/* 8015EFC8 0015BF28 38 04 00 07 */ addi r0, r4, 7 -/* 8015EFCC 0015BF2C 54 00 E8 FE */ srwi r0, r0, 3 -/* 8015EFD0 0015BF30 7C 09 03 A6 */ mtctr r0 -/* 8015EFD4 0015BF34 2C 04 00 00 */ cmpwi r4, 0 -/* 8015EFD8 0015BF38 40 81 00 0C */ ble lbl_8015EFE4 -lbl_8015EFDC: -/* 8015EFDC 0015BF3C 38 63 00 08 */ addi r3, r3, 8 -/* 8015EFE0 0015BF40 42 00 FF FC */ bdnz lbl_8015EFDC -lbl_8015EFE4: -/* 8015EFE4 0015BF44 7C 03 28 50 */ subf r0, r3, r5 -/* 8015EFE8 0015BF48 7C 09 03 A6 */ mtctr r0 -/* 8015EFEC 0015BF4C 7C 03 28 00 */ cmpw r3, r5 -/* 8015EFF0 0015BF50 40 80 00 08 */ bge lbl_8015EFF8 -lbl_8015EFF4: -/* 8015EFF4 0015BF54 42 00 00 00 */ bdnz lbl_8015EFF4 -lbl_8015EFF8: -/* 8015EFF8 0015BF58 38 00 00 00 */ li r0, 0 -/* 8015EFFC 0015BF5C 90 1E 07 E0 */ stw r0, 0x7e0(r30) -lbl_8015F000: -/* 8015F000 0015BF60 34 1E 07 D8 */ addic. r0, r30, 0x7d8 -/* 8015F004 0015BF64 41 82 00 58 */ beq lbl_8015F05C -/* 8015F008 0015BF68 80 BE 07 D8 */ lwz r5, 0x7d8(r30) -/* 8015F00C 0015BF6C 38 60 00 00 */ li r3, 0 -/* 8015F010 0015BF70 2C 05 00 00 */ cmpwi r5, 0 -/* 8015F014 0015BF74 40 81 00 40 */ ble lbl_8015F054 -/* 8015F018 0015BF78 2C 05 00 08 */ cmpwi r5, 8 -/* 8015F01C 0015BF7C 38 85 FF F8 */ addi r4, r5, -8 -/* 8015F020 0015BF80 40 81 00 20 */ ble lbl_8015F040 -/* 8015F024 0015BF84 38 04 00 07 */ addi r0, r4, 7 -/* 8015F028 0015BF88 54 00 E8 FE */ srwi r0, r0, 3 -/* 8015F02C 0015BF8C 7C 09 03 A6 */ mtctr r0 -/* 8015F030 0015BF90 2C 04 00 00 */ cmpwi r4, 0 -/* 8015F034 0015BF94 40 81 00 0C */ ble lbl_8015F040 -lbl_8015F038: -/* 8015F038 0015BF98 38 63 00 08 */ addi r3, r3, 8 -/* 8015F03C 0015BF9C 42 00 FF FC */ bdnz lbl_8015F038 -lbl_8015F040: -/* 8015F040 0015BFA0 7C 03 28 50 */ subf r0, r3, r5 -/* 8015F044 0015BFA4 7C 09 03 A6 */ mtctr r0 -/* 8015F048 0015BFA8 7C 03 28 00 */ cmpw r3, r5 -/* 8015F04C 0015BFAC 40 80 00 08 */ bge lbl_8015F054 -lbl_8015F050: -/* 8015F050 0015BFB0 42 00 00 00 */ bdnz lbl_8015F050 -lbl_8015F054: -/* 8015F054 0015BFB4 38 00 00 00 */ li r0, 0 -/* 8015F058 0015BFB8 90 1E 07 D8 */ stw r0, 0x7d8(r30) -lbl_8015F05C: -/* 8015F05C 0015BFBC 34 1E 06 B0 */ addic. r0, r30, 0x6b0 -/* 8015F060 0015BFC0 41 82 00 60 */ beq lbl_8015F0C0 -/* 8015F064 0015BFC4 34 1E 06 B4 */ addic. r0, r30, 0x6b4 -/* 8015F068 0015BFC8 41 82 00 58 */ beq lbl_8015F0C0 -/* 8015F06C 0015BFCC 80 BE 06 B4 */ lwz r5, 0x6b4(r30) -/* 8015F070 0015BFD0 38 60 00 00 */ li r3, 0 -/* 8015F074 0015BFD4 2C 05 00 00 */ cmpwi r5, 0 -/* 8015F078 0015BFD8 40 81 00 40 */ ble lbl_8015F0B8 -/* 8015F07C 0015BFDC 2C 05 00 08 */ cmpwi r5, 8 -/* 8015F080 0015BFE0 38 85 FF F8 */ addi r4, r5, -8 -/* 8015F084 0015BFE4 40 81 00 20 */ ble lbl_8015F0A4 -/* 8015F088 0015BFE8 38 04 00 07 */ addi r0, r4, 7 -/* 8015F08C 0015BFEC 54 00 E8 FE */ srwi r0, r0, 3 -/* 8015F090 0015BFF0 7C 09 03 A6 */ mtctr r0 -/* 8015F094 0015BFF4 2C 04 00 00 */ cmpwi r4, 0 -/* 8015F098 0015BFF8 40 81 00 0C */ ble lbl_8015F0A4 -lbl_8015F09C: -/* 8015F09C 0015BFFC 38 63 00 08 */ addi r3, r3, 8 -/* 8015F0A0 0015C000 42 00 FF FC */ bdnz lbl_8015F09C -lbl_8015F0A4: -/* 8015F0A4 0015C004 7C 03 28 50 */ subf r0, r3, r5 -/* 8015F0A8 0015C008 7C 09 03 A6 */ mtctr r0 -/* 8015F0AC 0015C00C 7C 03 28 00 */ cmpw r3, r5 -/* 8015F0B0 0015C010 40 80 00 08 */ bge lbl_8015F0B8 -lbl_8015F0B4: -/* 8015F0B4 0015C014 42 00 00 00 */ bdnz lbl_8015F0B4 -lbl_8015F0B8: -/* 8015F0B8 0015C018 38 00 00 00 */ li r0, 0 -/* 8015F0BC 0015C01C 90 1E 06 B4 */ stw r0, 0x6b4(r30) -lbl_8015F0C0: -/* 8015F0C0 0015C020 34 1E 06 90 */ addic. r0, r30, 0x690 -/* 8015F0C4 0015C024 41 82 00 24 */ beq lbl_8015F0E8 -/* 8015F0C8 0015C028 3C 60 80 3F */ lis r3, lbl_803ECAF8@ha -/* 8015F0CC 0015C02C 34 1E 06 90 */ addic. r0, r30, 0x690 -/* 8015F0D0 0015C030 38 03 CA F8 */ addi r0, r3, lbl_803ECAF8@l -/* 8015F0D4 0015C034 90 1E 06 90 */ stw r0, 0x690(r30) -/* 8015F0D8 0015C038 41 82 00 10 */ beq lbl_8015F0E8 -/* 8015F0DC 0015C03C 3C 60 80 3E */ lis r3, lbl_803D97E4@ha -/* 8015F0E0 0015C040 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l -/* 8015F0E4 0015C044 90 1E 06 90 */ stw r0, 0x690(r30) -lbl_8015F0E8: -/* 8015F0E8 0015C048 38 7E 05 7C */ addi r3, r30, 0x57c -/* 8015F0EC 0015C04C 38 80 FF FF */ li r4, -1 -/* 8015F0F0 0015C050 4B F6 E6 C9 */ bl sub_800cd7b8 -/* 8015F0F4 0015C054 34 1E 05 6C */ addic. r0, r30, 0x56c -/* 8015F0F8 0015C058 41 82 00 18 */ beq lbl_8015F110 -/* 8015F0FC 0015C05C 34 1E 05 6C */ addic. r0, r30, 0x56c -/* 8015F100 0015C060 41 82 00 10 */ beq lbl_8015F110 -/* 8015F104 0015C064 38 7E 05 6C */ addi r3, r30, 0x56c -/* 8015F108 0015C068 38 80 00 00 */ li r4, 0 -/* 8015F10C 0015C06C 48 1E 1D 35 */ bl __dt__6CTokenFv -lbl_8015F110: -/* 8015F110 0015C070 7F C3 F3 78 */ mr r3, r30 -/* 8015F114 0015C074 38 80 00 00 */ li r4, 0 -/* 8015F118 0015C078 4B F1 84 59 */ bl __dt__10CPatternedFv -/* 8015F11C 0015C07C 7F E0 07 35 */ extsh. r0, r31 -/* 8015F120 0015C080 40 81 00 0C */ ble lbl_8015F12C -/* 8015F124 0015C084 7F C3 F3 78 */ mr r3, r30 -/* 8015F128 0015C088 48 1B 68 09 */ bl Free__7CMemoryFPCv -lbl_8015F12C: -/* 8015F12C 0015C08C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015F130 0015C090 7F C3 F3 78 */ mr r3, r30 -/* 8015F134 0015C094 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8015F138 0015C098 83 C1 00 08 */ lwz r30, 8(r1) -/* 8015F13C 0015C09C 7C 08 03 A6 */ mtlr r0 -/* 8015F140 0015C0A0 38 21 00 10 */ addi r1, r1, 0x10 -/* 8015F144 0015C0A4 4E 80 00 20 */ blr - -.global GetSearchPath__6CDroneFv -GetSearchPath__6CDroneFv: -/* 8015F148 0015C0A8 38 63 06 B0 */ addi r3, r3, 0x6b0 -/* 8015F14C 0015C0AC 4E 80 00 20 */ blr - -.global sub_8015f150 -sub_8015f150: -/* 8015F150 0015C0B0 38 60 00 03 */ li r3, 3 -/* 8015F154 0015C0B4 4E 80 00 20 */ blr - -.global sub_8015f158 -sub_8015f158: -/* 8015F158 0015C0B8 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8015F15C 0015C0BC 7C 08 02 A6 */ mflr r0 -/* 8015F160 0015C0C0 90 01 00 44 */ stw r0, 0x44(r1) -/* 8015F164 0015C0C4 DB E1 00 30 */ stfd f31, 0x30(r1) -/* 8015F168 0015C0C8 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 -/* 8015F16C 0015C0CC 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8015F170 0015C0D0 7C 7F 1B 78 */ mr r31, r3 -/* 8015F174 0015C0D4 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 8015F178 0015C0D8 C0 43 06 30 */ lfs f2, 0x630(r3) -/* 8015F17C 0015C0DC FF E0 08 90 */ fmr f31, f1 -/* 8015F180 0015C0E0 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8015F184 0015C0E4 40 81 00 0C */ ble lbl_8015F190 -/* 8015F188 0015C0E8 EC 02 F8 28 */ fsubs f0, f2, f31 -/* 8015F18C 0015C0EC D0 1F 06 30 */ stfs f0, 0x630(r31) -lbl_8015F190: -/* 8015F190 0015C0F0 7F E4 FB 78 */ mr r4, r31 -/* 8015F194 0015C0F4 38 61 00 18 */ addi r3, r1, 0x18 -/* 8015F198 0015C0F8 4B EF 41 81 */ bl GetSfxHandle__6CActorCFv -/* 8015F19C 0015C0FC C0 02 9F 6C */ lfs f0, lbl_805ABC8C@sda21(r2) -/* 8015F1A0 0015C100 38 61 00 14 */ addi r3, r1, 0x14 -/* 8015F1A4 0015C104 80 01 00 18 */ lwz r0, 0x18(r1) -/* 8015F1A8 0015C108 38 81 00 10 */ addi r4, r1, 0x10 -/* 8015F1AC 0015C10C EC 5F 00 24 */ fdivs f2, f31, f0 -/* 8015F1B0 0015C110 C0 3F 06 34 */ lfs f1, 0x634(r31) -/* 8015F1B4 0015C114 C0 1F 06 38 */ lfs f0, 0x638(r31) -/* 8015F1B8 0015C118 38 A1 00 1C */ addi r5, r1, 0x1c -/* 8015F1BC 0015C11C 90 01 00 20 */ stw r0, 0x20(r1) -/* 8015F1C0 0015C120 EC 21 00 28 */ fsubs f1, f1, f0 -/* 8015F1C4 0015C124 FC 00 10 50 */ fneg f0, f2 -/* 8015F1C8 0015C128 D0 41 00 1C */ stfs f2, 0x1c(r1) -/* 8015F1CC 0015C12C D0 21 00 10 */ stfs f1, 0x10(r1) -/* 8015F1D0 0015C130 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 8015F1D4 0015C134 4B EA D0 E1 */ bl "Clamp__5CMathFRCfRCfRCf" -/* 8015F1D8 0015C138 C0 23 00 00 */ lfs f1, 0(r3) -/* 8015F1DC 0015C13C C0 1F 06 38 */ lfs f0, 0x638(r31) -/* 8015F1E0 0015C140 80 01 00 20 */ lwz r0, 0x20(r1) -/* 8015F1E4 0015C144 EC 00 08 2A */ fadds f0, f0, f1 -/* 8015F1E8 0015C148 28 00 00 00 */ cmplwi r0, 0 -/* 8015F1EC 0015C14C D0 1F 06 38 */ stfs f0, 0x638(r31) -/* 8015F1F0 0015C150 41 82 00 50 */ beq lbl_8015F240 -/* 8015F1F4 0015C154 C0 42 9F 74 */ lfs f2, lbl_805ABC94@sda21(r2) -/* 8015F1F8 0015C158 C0 3F 06 38 */ lfs f1, 0x638(r31) -/* 8015F1FC 0015C15C C0 02 9F 70 */ lfs f0, lbl_805ABC90@sda21(r2) -/* 8015F200 0015C160 EC 22 00 7A */ fmadds f1, f2, f1, f0 -/* 8015F204 0015C164 48 22 A7 51 */ bl __cvt_fp2unsigned -/* 8015F208 0015C168 88 1F 08 35 */ lbz r0, 0x835(r31) -/* 8015F20C 0015C16C 7C 64 1B 78 */ mr r4, r3 -/* 8015F210 0015C170 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 8015F214 0015C174 41 82 00 1C */ beq lbl_8015F230 -/* 8015F218 0015C178 80 01 00 20 */ lwz r0, 0x20(r1) -/* 8015F21C 0015C17C 38 61 00 0C */ addi r3, r1, 0xc -/* 8015F220 0015C180 38 84 E0 00 */ addi r4, r4, -8192 -/* 8015F224 0015C184 90 01 00 0C */ stw r0, 0xc(r1) -/* 8015F228 0015C188 48 18 9C 85 */ bl PitchBend__11CSfxManagerF10CSfxHandlei -/* 8015F22C 0015C18C 48 00 00 14 */ b lbl_8015F240 -lbl_8015F230: -/* 8015F230 0015C190 80 01 00 20 */ lwz r0, 0x20(r1) -/* 8015F234 0015C194 38 61 00 08 */ addi r3, r1, 8 -/* 8015F238 0015C198 90 01 00 08 */ stw r0, 8(r1) -/* 8015F23C 0015C19C 48 18 9C 71 */ bl PitchBend__11CSfxManagerF10CSfxHandlei -lbl_8015F240: -/* 8015F240 0015C1A0 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 -/* 8015F244 0015C1A4 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8015F248 0015C1A8 CB E1 00 30 */ lfd f31, 0x30(r1) -/* 8015F24C 0015C1AC 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8015F250 0015C1B0 7C 08 03 A6 */ mtlr r0 -/* 8015F254 0015C1B4 38 21 00 40 */ addi r1, r1, 0x40 -/* 8015F258 0015C1B8 4E 80 00 20 */ blr - -.global sub_8015f25c -sub_8015f25c: -/* 8015F25C 0015C1BC 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8015F260 0015C1C0 7C 08 02 A6 */ mflr r0 -/* 8015F264 0015C1C4 90 01 00 34 */ stw r0, 0x34(r1) -/* 8015F268 0015C1C8 DB E1 00 20 */ stfd f31, 0x20(r1) -/* 8015F26C 0015C1CC F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 -/* 8015F270 0015C1D0 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8015F274 0015C1D4 7C 7F 1B 78 */ mr r31, r3 -/* 8015F278 0015C1D8 FF E0 08 90 */ fmr f31, f1 -/* 8015F27C 0015C1DC 88 63 08 32 */ lbz r3, 0x832(r3) -/* 8015F280 0015C1E0 7C 86 23 78 */ mr r6, r4 -/* 8015F284 0015C1E4 54 60 D8 06 */ rlwinm r0, r3, 0x1b, 0, 3 -/* 8015F288 0015C1E8 7C 00 EE 70 */ srawi r0, r0, 0x1d -/* 8015F28C 0015C1EC 2C 00 00 02 */ cmpwi r0, 2 -/* 8015F290 0015C1F0 41 82 00 68 */ beq lbl_8015F2F8 -/* 8015F294 0015C1F4 40 80 00 14 */ bge lbl_8015F2A8 -/* 8015F298 0015C1F8 2C 00 00 00 */ cmpwi r0, 0 -/* 8015F29C 0015C1FC 41 82 00 18 */ beq lbl_8015F2B4 -/* 8015F2A0 0015C200 40 80 00 34 */ bge lbl_8015F2D4 -/* 8015F2A4 0015C204 48 00 00 CC */ b lbl_8015F370 -lbl_8015F2A8: -/* 8015F2A8 0015C208 2C 00 00 04 */ cmpwi r0, 4 -/* 8015F2AC 0015C20C 40 80 00 C4 */ bge lbl_8015F370 -/* 8015F2B0 0015C210 48 00 00 88 */ b lbl_8015F338 -lbl_8015F2B4: -/* 8015F2B4 0015C214 C0 3F 06 28 */ lfs f1, 0x628(r31) -/* 8015F2B8 0015C218 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 8015F2BC 0015C21C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015F2C0 0015C220 40 81 00 B0 */ ble lbl_8015F370 -/* 8015F2C4 0015C224 38 00 00 02 */ li r0, 2 -/* 8015F2C8 0015C228 50 03 16 FA */ rlwimi r3, r0, 2, 0x1b, 0x1d -/* 8015F2CC 0015C22C 98 7F 08 32 */ stb r3, 0x832(r31) -/* 8015F2D0 0015C230 48 00 00 A0 */ b lbl_8015F370 -lbl_8015F2D4: -/* 8015F2D4 0015C234 C0 3F 06 28 */ lfs f1, 0x628(r31) -/* 8015F2D8 0015C238 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 8015F2DC 0015C23C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015F2E0 0015C240 4C 40 13 82 */ cror 2, 0, 2 -/* 8015F2E4 0015C244 40 82 00 8C */ bne lbl_8015F370 -/* 8015F2E8 0015C248 38 00 00 03 */ li r0, 3 -/* 8015F2EC 0015C24C 50 03 16 FA */ rlwimi r3, r0, 2, 0x1b, 0x1d -/* 8015F2F0 0015C250 98 7F 08 32 */ stb r3, 0x832(r31) -/* 8015F2F4 0015C254 48 00 00 7C */ b lbl_8015F370 -lbl_8015F2F8: -/* 8015F2F8 0015C258 C0 02 9F 78 */ lfs f0, lbl_805ABC98@sda21(r2) -/* 8015F2FC 0015C25C C0 5F 06 2C */ lfs f2, 0x62c(r31) -/* 8015F300 0015C260 EC 3F 00 24 */ fdivs f1, f31, f0 -/* 8015F304 0015C264 C0 02 9F 7C */ lfs f0, lbl_805ABC9C@sda21(r2) -/* 8015F308 0015C268 EC 22 08 2A */ fadds f1, f2, f1 -/* 8015F30C 0015C26C D0 3F 06 2C */ stfs f1, 0x62c(r31) -/* 8015F310 0015C270 C0 3F 06 2C */ lfs f1, 0x62c(r31) -/* 8015F314 0015C274 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015F318 0015C278 4C 41 13 82 */ cror 2, 1, 2 -/* 8015F31C 0015C27C 40 82 00 54 */ bne lbl_8015F370 -/* 8015F320 0015C280 D0 1F 06 2C */ stfs f0, 0x62c(r31) -/* 8015F324 0015C284 38 60 00 01 */ li r3, 1 -/* 8015F328 0015C288 88 1F 08 32 */ lbz r0, 0x832(r31) -/* 8015F32C 0015C28C 50 60 16 FA */ rlwimi r0, r3, 2, 0x1b, 0x1d -/* 8015F330 0015C290 98 1F 08 32 */ stb r0, 0x832(r31) -/* 8015F334 0015C294 48 00 00 3C */ b lbl_8015F370 -lbl_8015F338: -/* 8015F338 0015C298 C0 42 9F 80 */ lfs f2, lbl_805ABCA0@sda21(r2) -/* 8015F33C 0015C29C C0 3F 06 2C */ lfs f1, 0x62c(r31) -/* 8015F340 0015C2A0 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 8015F344 0015C2A4 EC 3F 08 BC */ fnmsubs f1, f31, f2, f1 -/* 8015F348 0015C2A8 D0 3F 06 2C */ stfs f1, 0x62c(r31) -/* 8015F34C 0015C2AC C0 3F 06 2C */ lfs f1, 0x62c(r31) -/* 8015F350 0015C2B0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015F354 0015C2B4 4C 40 13 82 */ cror 2, 0, 2 -/* 8015F358 0015C2B8 40 82 00 18 */ bne lbl_8015F370 -/* 8015F35C 0015C2BC D0 1F 06 2C */ stfs f0, 0x62c(r31) -/* 8015F360 0015C2C0 38 60 00 00 */ li r3, 0 -/* 8015F364 0015C2C4 88 1F 08 32 */ lbz r0, 0x832(r31) -/* 8015F368 0015C2C8 50 60 16 FA */ rlwimi r0, r3, 2, 0x1b, 0x1d -/* 8015F36C 0015C2CC 98 1F 08 32 */ stb r0, 0x832(r31) -lbl_8015F370: -/* 8015F370 0015C2D0 80 66 08 B8 */ lwz r3, 0x8b8(r6) -/* 8015F374 0015C2D4 80 63 00 00 */ lwz r3, 0(r3) -/* 8015F378 0015C2D8 80 03 00 14 */ lwz r0, 0x14(r3) -/* 8015F37C 0015C2DC 2C 00 00 03 */ cmpwi r0, 3 -/* 8015F380 0015C2E0 40 82 00 40 */ bne lbl_8015F3C0 -/* 8015F384 0015C2E4 C0 3F 06 2C */ lfs f1, 0x62c(r31) -/* 8015F388 0015C2E8 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 8015F38C 0015C2EC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015F390 0015C2F0 40 81 00 30 */ ble lbl_8015F3C0 -/* 8015F394 0015C2F4 C0 06 0F 28 */ lfs f0, 0xf28(r6) -/* 8015F398 0015C2F8 38 81 00 0C */ addi r4, r1, 0xc -/* 8015F39C 0015C2FC 38 A0 00 08 */ li r5, 8 -/* 8015F3A0 0015C300 EC 00 08 2A */ fadds f0, f0, f1 -/* 8015F3A4 0015C304 D0 06 0F 28 */ stfs f0, 0xf28(r6) -/* 8015F3A8 0015C308 80 66 08 4C */ lwz r3, 0x84c(r6) -/* 8015F3AC 0015C30C A0 03 03 10 */ lhz r0, 0x310(r3) -/* 8015F3B0 0015C310 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8015F3B4 0015C314 B0 01 00 08 */ sth r0, 8(r1) -/* 8015F3B8 0015C318 80 66 08 4C */ lwz r3, 0x84c(r6) -/* 8015F3BC 0015C31C 48 01 BE 99 */ bl SetOrbitRequestForTarget__7CPlayerF9TUniqueId19EPlayerOrbitRequestR13CStateManager -lbl_8015F3C0: -/* 8015F3C0 0015C320 C0 3F 06 28 */ lfs f1, 0x628(r31) -/* 8015F3C4 0015C324 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 8015F3C8 0015C328 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015F3CC 0015C32C 40 81 00 0C */ ble lbl_8015F3D8 -/* 8015F3D0 0015C330 EC 01 F8 28 */ fsubs f0, f1, f31 -/* 8015F3D4 0015C334 D0 1F 06 28 */ stfs f0, 0x628(r31) -lbl_8015F3D8: -/* 8015F3D8 0015C338 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 -/* 8015F3DC 0015C33C 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8015F3E0 0015C340 CB E1 00 20 */ lfd f31, 0x20(r1) -/* 8015F3E4 0015C344 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8015F3E8 0015C348 7C 08 03 A6 */ mtlr r0 -/* 8015F3EC 0015C34C 38 21 00 30 */ addi r1, r1, 0x30 -/* 8015F3F0 0015C350 4E 80 00 20 */ blr - -.global sub_8015f3f4 -sub_8015f3f4: -/* 8015F3F4 0015C354 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8015F3F8 0015C358 7C 08 02 A6 */ mflr r0 -/* 8015F3FC 0015C35C 90 01 00 34 */ stw r0, 0x34(r1) -/* 8015F400 0015C360 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8015F404 0015C364 93 C1 00 28 */ stw r30, 0x28(r1) -/* 8015F408 0015C368 7C 7E 1B 78 */ mr r30, r3 -/* 8015F40C 0015C36C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8015F410 0015C370 A0 63 06 88 */ lhz r3, 0x688(r3) -/* 8015F414 0015C374 7C 03 00 40 */ cmplw r3, r0 -/* 8015F418 0015C378 41 82 00 68 */ beq lbl_8015F480 -/* 8015F41C 0015C37C A0 1E 06 88 */ lhz r0, 0x688(r30) -/* 8015F420 0015C380 7C 83 23 78 */ mr r3, r4 -/* 8015F424 0015C384 38 81 00 18 */ addi r4, r1, 0x18 -/* 8015F428 0015C388 B0 01 00 18 */ sth r0, 0x18(r1) -/* 8015F42C 0015C38C 4B EE D1 49 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8015F430 0015C390 7C 64 1B 78 */ mr r4, r3 -/* 8015F434 0015C394 38 61 00 1C */ addi r3, r1, 0x1c -/* 8015F438 0015C398 4B F4 81 3D */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" -/* 8015F43C 0015C39C 83 E3 00 04 */ lwz r31, 4(r3) -/* 8015F440 0015C3A0 28 1F 00 00 */ cmplwi r31, 0 -/* 8015F444 0015C3A4 41 82 00 3C */ beq lbl_8015F480 -/* 8015F448 0015C3A8 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8015F44C 0015C3AC 7F E3 FB 78 */ mr r3, r31 -/* 8015F450 0015C3B0 38 81 00 14 */ addi r4, r1, 0x14 -/* 8015F454 0015C3B4 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8015F458 0015C3B8 B0 01 00 14 */ sth r0, 0x14(r1) -/* 8015F45C 0015C3BC 48 0D 9B 95 */ bl IsPartOfTeam__10CTeamAiMgrCF9TUniqueId -/* 8015F460 0015C3C0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8015F464 0015C3C4 41 82 00 1C */ beq lbl_8015F480 -/* 8015F468 0015C3C8 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8015F46C 0015C3CC 7F E3 FB 78 */ mr r3, r31 -/* 8015F470 0015C3D0 38 81 00 0C */ addi r4, r1, 0xc -/* 8015F474 0015C3D4 B0 01 00 08 */ sth r0, 8(r1) -/* 8015F478 0015C3D8 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8015F47C 0015C3DC 48 0D A0 79 */ bl RemoveTeamAiRole__10CTeamAiMgrF9TUniqueId -lbl_8015F480: -/* 8015F480 0015C3E0 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8015F484 0015C3E4 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8015F488 0015C3E8 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 8015F48C 0015C3EC 7C 08 03 A6 */ mtlr r0 -/* 8015F490 0015C3F0 38 21 00 30 */ addi r1, r1, 0x30 -/* 8015F494 0015C3F4 4E 80 00 20 */ blr - -.global sub_8015f498 -sub_8015f498: -/* 8015F498 0015C3F8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8015F49C 0015C3FC 7C 08 02 A6 */ mflr r0 -/* 8015F4A0 0015C400 90 01 00 24 */ stw r0, 0x24(r1) -/* 8015F4A4 0015C404 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8015F4A8 0015C408 7C 7F 1B 78 */ mr r31, r3 -/* 8015F4AC 0015C40C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8015F4B0 0015C410 A0 63 06 88 */ lhz r3, 0x688(r3) -/* 8015F4B4 0015C414 7C 03 00 40 */ cmplw r3, r0 -/* 8015F4B8 0015C418 41 82 00 44 */ beq lbl_8015F4FC -/* 8015F4BC 0015C41C A0 1F 06 88 */ lhz r0, 0x688(r31) -/* 8015F4C0 0015C420 7C 83 23 78 */ mr r3, r4 -/* 8015F4C4 0015C424 38 81 00 08 */ addi r4, r1, 8 -/* 8015F4C8 0015C428 B0 01 00 08 */ sth r0, 8(r1) -/* 8015F4CC 0015C42C 4B EE D0 A9 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8015F4D0 0015C430 7C 64 1B 78 */ mr r4, r3 -/* 8015F4D4 0015C434 38 61 00 0C */ addi r3, r1, 0xc -/* 8015F4D8 0015C438 4B F4 80 9D */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" -/* 8015F4DC 0015C43C 80 63 00 04 */ lwz r3, 4(r3) -/* 8015F4E0 0015C440 28 03 00 00 */ cmplwi r3, 0 -/* 8015F4E4 0015C444 41 82 00 18 */ beq lbl_8015F4FC -/* 8015F4E8 0015C448 7F E4 FB 78 */ mr r4, r31 -/* 8015F4EC 0015C44C 38 A0 00 02 */ li r5, 2 -/* 8015F4F0 0015C450 38 C0 00 01 */ li r6, 1 -/* 8015F4F4 0015C454 38 E0 FF FF */ li r7, -1 -/* 8015F4F8 0015C458 48 0D A2 B5 */ bl AssignTeamAiRole__10CTeamAiMgrFRC3CAiiii -lbl_8015F4FC: -/* 8015F4FC 0015C45C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8015F500 0015C460 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8015F504 0015C464 7C 08 03 A6 */ mtlr r0 -/* 8015F508 0015C468 38 21 00 20 */ addi r1, r1, 0x20 -/* 8015F50C 0015C46C 4E 80 00 20 */ blr - -.global sub_8015f510 -sub_8015f510: -/* 8015F510 0015C470 94 21 F7 50 */ stwu r1, -0x8b0(r1) -/* 8015F514 0015C474 7C 08 02 A6 */ mflr r0 -/* 8015F518 0015C478 90 01 08 B4 */ stw r0, 0x8b4(r1) -/* 8015F51C 0015C47C DB E1 08 A0 */ stfd f31, 0x8a0(r1) -/* 8015F520 0015C480 F3 E1 08 A8 */ psq_st f31, -1880(r1), 0, qr0 -/* 8015F524 0015C484 DB C1 08 90 */ stfd f30, 0x890(r1) -/* 8015F528 0015C488 F3 C1 08 98 */ psq_st f30, -1896(r1), 0, qr0 -/* 8015F52C 0015C48C DB A1 08 80 */ stfd f29, 0x880(r1) -/* 8015F530 0015C490 F3 A1 08 88 */ psq_st f29, -1912(r1), 0, qr0 -/* 8015F534 0015C494 DB 81 08 70 */ stfd f28, 0x870(r1) -/* 8015F538 0015C498 F3 81 08 78 */ psq_st f28, -1928(r1), 0, qr0 -/* 8015F53C 0015C49C 93 E1 08 6C */ stw r31, 0x86c(r1) -/* 8015F540 0015C4A0 93 C1 08 68 */ stw r30, 0x868(r1) -/* 8015F544 0015C4A4 93 A1 08 64 */ stw r29, 0x864(r1) -/* 8015F548 0015C4A8 93 81 08 60 */ stw r28, 0x860(r1) -/* 8015F54C 0015C4AC 7C 7F 1B 78 */ mr r31, r3 -/* 8015F550 0015C4B0 7C 9C 23 78 */ mr r28, r4 -/* 8015F554 0015C4B4 80 83 04 50 */ lwz r4, 0x450(r3) -/* 8015F558 0015C4B8 80 04 02 B8 */ lwz r0, 0x2b8(r4) -/* 8015F55C 0015C4BC 2C 00 00 03 */ cmpwi r0, 3 -/* 8015F560 0015C4C0 41 82 02 EC */ beq lbl_8015F84C -/* 8015F564 0015C4C4 38 00 00 00 */ li r0, 0 -/* 8015F568 0015C4C8 7F 87 E3 78 */ mr r7, r28 -/* 8015F56C 0015C4CC 90 01 00 5C */ stw r0, 0x5c(r1) -/* 8015F570 0015C4D0 38 C1 00 5C */ addi r6, r1, 0x5c -/* 8015F574 0015C4D4 38 80 00 21 */ li r4, 0x21 -/* 8015F578 0015C4D8 38 A0 00 20 */ li r5, 0x20 -/* 8015F57C 0015C4DC 81 83 00 00 */ lwz r12, 0(r3) -/* 8015F580 0015C4E0 C0 3F 06 1C */ lfs f1, 0x61c(r31) -/* 8015F584 0015C4E4 81 8C 02 CC */ lwz r12, 0x2cc(r12) -/* 8015F588 0015C4E8 7D 89 03 A6 */ mtctr r12 -/* 8015F58C 0015C4EC 4E 80 04 21 */ bctrl -/* 8015F590 0015C4F0 80 01 00 5C */ lwz r0, 0x5c(r1) -/* 8015F594 0015C4F4 2C 00 00 00 */ cmpwi r0, 0 -/* 8015F598 0015C4F8 40 81 02 60 */ ble lbl_8015F7F8 -/* 8015F59C 0015C4FC 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8015F5A0 0015C500 C7 E3 66 A0 */ lfsu f31, skZero3f@l(r3) -/* 8015F5A4 0015C504 C3 82 9F 84 */ lfs f28, lbl_805ABCA4@sda21(r2) -/* 8015F5A8 0015C508 3B C1 00 60 */ addi r30, r1, 0x60 -/* 8015F5AC 0015C50C C3 C3 00 04 */ lfs f30, 4(r3) -/* 8015F5B0 0015C510 3B A0 00 00 */ li r29, 0 -/* 8015F5B4 0015C514 C3 A3 00 08 */ lfs f29, 8(r3) -/* 8015F5B8 0015C518 48 00 00 A0 */ b lbl_8015F658 -lbl_8015F5BC: -/* 8015F5BC 0015C51C A0 1E 00 00 */ lhz r0, 0(r30) -/* 8015F5C0 0015C520 7F 83 E3 78 */ mr r3, r28 -/* 8015F5C4 0015C524 38 81 00 08 */ addi r4, r1, 8 -/* 8015F5C8 0015C528 B0 01 00 08 */ sth r0, 8(r1) -/* 8015F5CC 0015C52C 4B EE CF D9 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8015F5D0 0015C530 28 03 00 00 */ cmplwi r3, 0 -/* 8015F5D4 0015C534 41 82 00 7C */ beq lbl_8015F650 -/* 8015F5D8 0015C538 C0 E3 00 50 */ lfs f7, 0x50(r3) -/* 8015F5DC 0015C53C C0 1F 00 50 */ lfs f0, 0x50(r31) -/* 8015F5E0 0015C540 C0 83 00 40 */ lfs f4, 0x40(r3) -/* 8015F5E4 0015C544 EC C7 00 28 */ fsubs f6, f7, f0 -/* 8015F5E8 0015C548 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 8015F5EC 0015C54C C1 03 00 60 */ lfs f8, 0x60(r3) -/* 8015F5F0 0015C550 EC 64 00 28 */ fsubs f3, f4, f0 -/* 8015F5F4 0015C554 C0 3F 00 60 */ lfs f1, 0x60(r31) -/* 8015F5F8 0015C558 EC 06 01 B2 */ fmuls f0, f6, f6 -/* 8015F5FC 0015C55C EC A8 08 28 */ fsubs f5, f8, f1 -/* 8015F600 0015C560 A0 7E 00 00 */ lhz r3, 0(r30) -/* 8015F604 0015C564 EC 23 00 F2 */ fmuls f1, f3, f3 -/* 8015F608 0015C568 A0 1F 00 08 */ lhz r0, 8(r31) -/* 8015F60C 0015C56C EC 45 01 72 */ fmuls f2, f5, f5 -/* 8015F610 0015C570 D0 81 00 44 */ stfs f4, 0x44(r1) -/* 8015F614 0015C574 EC 01 00 2A */ fadds f0, f1, f0 -/* 8015F618 0015C578 7C 03 00 40 */ cmplw r3, r0 -/* 8015F61C 0015C57C D0 E1 00 48 */ stfs f7, 0x48(r1) -/* 8015F620 0015C580 EC 02 00 2A */ fadds f0, f2, f0 -/* 8015F624 0015C584 D1 01 00 4C */ stfs f8, 0x4c(r1) -/* 8015F628 0015C588 D0 61 00 50 */ stfs f3, 0x50(r1) -/* 8015F62C 0015C58C D0 C1 00 54 */ stfs f6, 0x54(r1) -/* 8015F630 0015C590 D0 A1 00 58 */ stfs f5, 0x58(r1) -/* 8015F634 0015C594 41 82 00 1C */ beq lbl_8015F650 -/* 8015F638 0015C598 FC 00 E0 40 */ fcmpo cr0, f0, f28 -/* 8015F63C 0015C59C 40 80 00 14 */ bge lbl_8015F650 -/* 8015F640 0015C5A0 FF E0 20 90 */ fmr f31, f4 -/* 8015F644 0015C5A4 FF C0 38 90 */ fmr f30, f7 -/* 8015F648 0015C5A8 FF A0 40 90 */ fmr f29, f8 -/* 8015F64C 0015C5AC FF 80 00 90 */ fmr f28, f0 -lbl_8015F650: -/* 8015F650 0015C5B0 3B DE 00 02 */ addi r30, r30, 2 -/* 8015F654 0015C5B4 3B BD 00 01 */ addi r29, r29, 1 -lbl_8015F658: -/* 8015F658 0015C5B8 80 01 00 5C */ lwz r0, 0x5c(r1) -/* 8015F65C 0015C5BC 7C 1D 00 00 */ cmpw r29, r0 -/* 8015F660 0015C5C0 41 80 FF 5C */ blt lbl_8015F5BC -/* 8015F664 0015C5C4 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8015F668 0015C5C8 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) -/* 8015F66C 0015C5CC 38 00 00 00 */ li r0, 0 -/* 8015F670 0015C5D0 FC 1F 00 00 */ fcmpu cr0, f31, f0 -/* 8015F674 0015C5D4 40 82 00 20 */ bne lbl_8015F694 -/* 8015F678 0015C5D8 C0 03 00 04 */ lfs f0, 4(r3) -/* 8015F67C 0015C5DC FC 1E 00 00 */ fcmpu cr0, f30, f0 -/* 8015F680 0015C5E0 40 82 00 14 */ bne lbl_8015F694 -/* 8015F684 0015C5E4 C0 03 00 08 */ lfs f0, 8(r3) -/* 8015F688 0015C5E8 FC 1D 00 00 */ fcmpu cr0, f29, f0 -/* 8015F68C 0015C5EC 40 82 00 08 */ bne lbl_8015F694 -/* 8015F690 0015C5F0 38 00 00 01 */ li r0, 1 -lbl_8015F694: -/* 8015F694 0015C5F4 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 8015F698 0015C5F8 40 82 01 60 */ bne lbl_8015F7F8 -/* 8015F69C 0015C5FC C0 1F 06 1C */ lfs f0, 0x61c(r31) -/* 8015F6A0 0015C600 EC 00 00 32 */ fmuls f0, f0, f0 -/* 8015F6A4 0015C604 FC 1C 00 40 */ fcmpo cr0, f28, f0 -/* 8015F6A8 0015C608 40 80 01 50 */ bge lbl_8015F7F8 -/* 8015F6AC 0015C60C C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 8015F6B0 0015C610 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 8015F6B4 0015C614 EC BE 08 28 */ fsubs f5, f30, f1 -/* 8015F6B8 0015C618 C0 DF 00 44 */ lfs f6, 0x44(r31) -/* 8015F6BC 0015C61C EC 7F 00 28 */ fsubs f3, f31, f0 -/* 8015F6C0 0015C620 C0 1F 00 60 */ lfs f0, 0x60(r31) -/* 8015F6C4 0015C624 C0 5F 00 34 */ lfs f2, 0x34(r31) -/* 8015F6C8 0015C628 EC 26 01 72 */ fmuls f1, f6, f5 -/* 8015F6CC 0015C62C EC 9D 00 28 */ fsubs f4, f29, f0 -/* 8015F6D0 0015C630 C0 FF 00 54 */ lfs f7, 0x54(r31) -/* 8015F6D4 0015C634 C0 02 9F 88 */ lfs f0, lbl_805ABCA8@sda21(r2) -/* 8015F6D8 0015C638 EC 22 08 FA */ fmadds f1, f2, f3, f1 -/* 8015F6DC 0015C63C D0 61 00 2C */ stfs f3, 0x2c(r1) -/* 8015F6E0 0015C640 D0 A1 00 30 */ stfs f5, 0x30(r1) -/* 8015F6E4 0015C644 EC 27 09 3A */ fmadds f1, f7, f4, f1 -/* 8015F6E8 0015C648 D0 81 00 34 */ stfs f4, 0x34(r1) -/* 8015F6EC 0015C64C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015F6F0 0015C650 D0 41 00 38 */ stfs f2, 0x38(r1) -/* 8015F6F4 0015C654 D0 C1 00 3C */ stfs f6, 0x3c(r1) -/* 8015F6F8 0015C658 D0 E1 00 40 */ stfs f7, 0x40(r1) -/* 8015F6FC 0015C65C 40 80 00 7C */ bge lbl_8015F778 -/* 8015F700 0015C660 3C 80 80 3E */ lis r4, lbl_803DAA68@ha -/* 8015F704 0015C664 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8015F708 0015C668 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l -/* 8015F70C 0015C66C 3C 80 80 3E */ lis r4, lbl_803DA9E4@ha -/* 8015F710 0015C670 90 01 00 1C */ stw r0, 0x1c(r1) -/* 8015F714 0015C674 38 C4 A9 E4 */ addi r6, r4, lbl_803DA9E4@l -/* 8015F718 0015C678 38 80 00 01 */ li r4, 1 -/* 8015F71C 0015C67C 38 A0 00 03 */ li r5, 3 -/* 8015F720 0015C680 38 00 00 00 */ li r0, 0 -/* 8015F724 0015C684 3B E3 00 04 */ addi r31, r3, 4 -/* 8015F728 0015C688 90 81 00 20 */ stw r4, 0x20(r1) -/* 8015F72C 0015C68C 7F E3 FB 78 */ mr r3, r31 -/* 8015F730 0015C690 38 80 00 01 */ li r4, 1 -/* 8015F734 0015C694 90 C1 00 1C */ stw r6, 0x1c(r1) -/* 8015F738 0015C698 90 A1 00 24 */ stw r5, 0x24(r1) -/* 8015F73C 0015C69C 90 01 00 28 */ stw r0, 0x28(r1) -/* 8015F740 0015C6A0 4B FD 1C F9 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8015F744 0015C6A4 80 01 00 20 */ lwz r0, 0x20(r1) -/* 8015F748 0015C6A8 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha -/* 8015F74C 0015C6AC 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l -/* 8015F750 0015C6B0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 8015F754 0015C6B4 90 1F 00 C8 */ stw r0, 0xc8(r31) -/* 8015F758 0015C6B8 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 8015F75C 0015C6BC 80 A1 00 24 */ lwz r5, 0x24(r1) -/* 8015F760 0015C6C0 90 81 00 1C */ stw r4, 0x1c(r1) -/* 8015F764 0015C6C4 80 61 00 28 */ lwz r3, 0x28(r1) -/* 8015F768 0015C6C8 90 BF 00 CC */ stw r5, 0xcc(r31) -/* 8015F76C 0015C6CC 90 7F 00 D0 */ stw r3, 0xd0(r31) -/* 8015F770 0015C6D0 90 01 00 1C */ stw r0, 0x1c(r1) -/* 8015F774 0015C6D4 48 00 00 84 */ b lbl_8015F7F8 -lbl_8015F778: -/* 8015F778 0015C6D8 C0 02 9F 8C */ lfs f0, lbl_805ABCAC@sda21(r2) -/* 8015F77C 0015C6DC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015F780 0015C6E0 40 81 00 78 */ ble lbl_8015F7F8 -/* 8015F784 0015C6E4 3C 80 80 3E */ lis r4, lbl_803DAA68@ha -/* 8015F788 0015C6E8 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8015F78C 0015C6EC 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l -/* 8015F790 0015C6F0 3C 80 80 3E */ lis r4, lbl_803DA9E4@ha -/* 8015F794 0015C6F4 90 01 00 0C */ stw r0, 0xc(r1) -/* 8015F798 0015C6F8 38 C4 A9 E4 */ addi r6, r4, lbl_803DA9E4@l -/* 8015F79C 0015C6FC 38 80 00 01 */ li r4, 1 -/* 8015F7A0 0015C700 38 A0 00 02 */ li r5, 2 -/* 8015F7A4 0015C704 38 00 00 00 */ li r0, 0 -/* 8015F7A8 0015C708 3B E3 00 04 */ addi r31, r3, 4 -/* 8015F7AC 0015C70C 90 81 00 10 */ stw r4, 0x10(r1) -/* 8015F7B0 0015C710 7F E3 FB 78 */ mr r3, r31 -/* 8015F7B4 0015C714 38 80 00 01 */ li r4, 1 -/* 8015F7B8 0015C718 90 C1 00 0C */ stw r6, 0xc(r1) -/* 8015F7BC 0015C71C 90 A1 00 14 */ stw r5, 0x14(r1) -/* 8015F7C0 0015C720 90 01 00 18 */ stw r0, 0x18(r1) -/* 8015F7C4 0015C724 4B FD 1C 75 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8015F7C8 0015C728 80 01 00 10 */ lwz r0, 0x10(r1) -/* 8015F7CC 0015C72C 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha -/* 8015F7D0 0015C730 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l -/* 8015F7D4 0015C734 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 8015F7D8 0015C738 90 1F 00 C8 */ stw r0, 0xc8(r31) -/* 8015F7DC 0015C73C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 8015F7E0 0015C740 80 A1 00 14 */ lwz r5, 0x14(r1) -/* 8015F7E4 0015C744 90 81 00 0C */ stw r4, 0xc(r1) -/* 8015F7E8 0015C748 80 61 00 18 */ lwz r3, 0x18(r1) -/* 8015F7EC 0015C74C 90 BF 00 CC */ stw r5, 0xcc(r31) -/* 8015F7F0 0015C750 90 7F 00 D0 */ stw r3, 0xd0(r31) -/* 8015F7F4 0015C754 90 01 00 0C */ stw r0, 0xc(r1) -lbl_8015F7F8: -/* 8015F7F8 0015C758 80 A1 00 5C */ lwz r5, 0x5c(r1) -/* 8015F7FC 0015C75C 38 60 00 00 */ li r3, 0 -/* 8015F800 0015C760 2C 05 00 00 */ cmpwi r5, 0 -/* 8015F804 0015C764 40 81 00 40 */ ble lbl_8015F844 -/* 8015F808 0015C768 2C 05 00 08 */ cmpwi r5, 8 -/* 8015F80C 0015C76C 38 85 FF F8 */ addi r4, r5, -8 -/* 8015F810 0015C770 40 81 00 20 */ ble lbl_8015F830 -/* 8015F814 0015C774 38 04 00 07 */ addi r0, r4, 7 -/* 8015F818 0015C778 54 00 E8 FE */ srwi r0, r0, 3 -/* 8015F81C 0015C77C 7C 09 03 A6 */ mtctr r0 -/* 8015F820 0015C780 2C 04 00 00 */ cmpwi r4, 0 -/* 8015F824 0015C784 40 81 00 0C */ ble lbl_8015F830 -lbl_8015F828: -/* 8015F828 0015C788 38 63 00 08 */ addi r3, r3, 8 -/* 8015F82C 0015C78C 42 00 FF FC */ bdnz lbl_8015F828 -lbl_8015F830: -/* 8015F830 0015C790 7C 03 28 50 */ subf r0, r3, r5 -/* 8015F834 0015C794 7C 09 03 A6 */ mtctr r0 -/* 8015F838 0015C798 7C 03 28 00 */ cmpw r3, r5 -/* 8015F83C 0015C79C 40 80 00 08 */ bge lbl_8015F844 -lbl_8015F840: -/* 8015F840 0015C7A0 42 00 00 00 */ bdnz lbl_8015F840 -lbl_8015F844: -/* 8015F844 0015C7A4 38 00 00 00 */ li r0, 0 -/* 8015F848 0015C7A8 90 01 00 5C */ stw r0, 0x5c(r1) -lbl_8015F84C: -/* 8015F84C 0015C7AC E3 E1 08 A8 */ psq_l f31, -1880(r1), 0, qr0 -/* 8015F850 0015C7B0 CB E1 08 A0 */ lfd f31, 0x8a0(r1) -/* 8015F854 0015C7B4 E3 C1 08 98 */ psq_l f30, -1896(r1), 0, qr0 -/* 8015F858 0015C7B8 CB C1 08 90 */ lfd f30, 0x890(r1) -/* 8015F85C 0015C7BC E3 A1 08 88 */ psq_l f29, -1912(r1), 0, qr0 -/* 8015F860 0015C7C0 CB A1 08 80 */ lfd f29, 0x880(r1) -/* 8015F864 0015C7C4 E3 81 08 78 */ psq_l f28, -1928(r1), 0, qr0 -/* 8015F868 0015C7C8 CB 81 08 70 */ lfd f28, 0x870(r1) -/* 8015F86C 0015C7CC 83 E1 08 6C */ lwz r31, 0x86c(r1) -/* 8015F870 0015C7D0 83 C1 08 68 */ lwz r30, 0x868(r1) -/* 8015F874 0015C7D4 83 A1 08 64 */ lwz r29, 0x864(r1) -/* 8015F878 0015C7D8 80 01 08 B4 */ lwz r0, 0x8b4(r1) -/* 8015F87C 0015C7DC 83 81 08 60 */ lwz r28, 0x860(r1) -/* 8015F880 0015C7E0 7C 08 03 A6 */ mtlr r0 -/* 8015F884 0015C7E4 38 21 08 B0 */ addi r1, r1, 0x8b0 -/* 8015F888 0015C7E8 4E 80 00 20 */ blr - -.global Burn__6CDroneFff -Burn__6CDroneFff: -/* 8015F88C 0015C7EC 4E 80 00 20 */ blr - -.global CanRenderUnsorted__6CDroneCFRC13CStateManager -CanRenderUnsorted__6CDroneCFRC13CStateManager: -/* 8015F890 0015C7F0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015F894 0015C7F4 7C 08 02 A6 */ mflr r0 -/* 8015F898 0015C7F8 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 8015F89C 0015C7FC 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015F8A0 0015C800 C0 02 9F 90 */ lfs f0, lbl_805ABCB0@sda21(r2) -/* 8015F8A4 0015C804 C0 43 05 DC */ lfs f2, 0x5dc(r3) -/* 8015F8A8 0015C808 EC 22 08 28 */ fsubs f1, f2, f1 -/* 8015F8AC 0015C80C FC 20 0A 10 */ fabs f1, f1 -/* 8015F8B0 0015C810 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015F8B4 0015C814 40 80 00 0C */ bge lbl_8015F8C0 -/* 8015F8B8 0015C818 4B F1 89 E9 */ bl CanRenderUnsorted__10CPatternedCFRC13CStateManager -/* 8015F8BC 0015C81C 48 00 00 08 */ b lbl_8015F8C4 -lbl_8015F8C0: -/* 8015F8C0 0015C820 38 60 00 00 */ li r3, 0 -lbl_8015F8C4: -/* 8015F8C4 0015C824 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015F8C8 0015C828 7C 08 03 A6 */ mtlr r0 -/* 8015F8CC 0015C82C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8015F8D0 0015C830 4E 80 00 20 */ blr - -.global Cover__6CDroneFR13CStateManager9EStateMsgf -Cover__6CDroneFR13CStateManager9EStateMsgf: -/* 8015F8D4 0015C834 94 21 FE 90 */ stwu r1, -0x170(r1) -/* 8015F8D8 0015C838 7C 08 02 A6 */ mflr r0 -/* 8015F8DC 0015C83C 90 01 01 74 */ stw r0, 0x174(r1) -/* 8015F8E0 0015C840 DB E1 01 60 */ stfd f31, 0x160(r1) -/* 8015F8E4 0015C844 F3 E1 01 68 */ psq_st f31, 360(r1), 0, qr0 -/* 8015F8E8 0015C848 DB C1 01 50 */ stfd f30, 0x150(r1) -/* 8015F8EC 0015C84C F3 C1 01 58 */ psq_st f30, 344(r1), 0, qr0 -/* 8015F8F0 0015C850 DB A1 01 40 */ stfd f29, 0x140(r1) -/* 8015F8F4 0015C854 F3 A1 01 48 */ psq_st f29, 328(r1), 0, qr0 -/* 8015F8F8 0015C858 DB 81 01 30 */ stfd f28, 0x130(r1) -/* 8015F8FC 0015C85C F3 81 01 38 */ psq_st f28, 312(r1), 0, qr0 -/* 8015F900 0015C860 DB 61 01 20 */ stfd f27, 0x120(r1) -/* 8015F904 0015C864 F3 61 01 28 */ psq_st f27, 296(r1), 0, qr0 -/* 8015F908 0015C868 93 E1 01 1C */ stw r31, 0x11c(r1) -/* 8015F90C 0015C86C 93 C1 01 18 */ stw r30, 0x118(r1) -/* 8015F910 0015C870 93 A1 01 14 */ stw r29, 0x114(r1) -/* 8015F914 0015C874 FF 60 08 90 */ fmr f27, f1 -/* 8015F918 0015C878 2C 05 00 01 */ cmpwi r5, 1 -/* 8015F91C 0015C87C 7C 7D 1B 78 */ mr r29, r3 -/* 8015F920 0015C880 7C 9E 23 78 */ mr r30, r4 -/* 8015F924 0015C884 41 82 02 90 */ beq lbl_8015FBB4 -/* 8015F928 0015C888 40 80 00 10 */ bge lbl_8015F938 -/* 8015F92C 0015C88C 2C 05 00 00 */ cmpwi r5, 0 -/* 8015F930 0015C890 40 80 00 14 */ bge lbl_8015F944 -/* 8015F934 0015C894 48 00 03 F0 */ b lbl_8015FD24 -lbl_8015F938: -/* 8015F938 0015C898 2C 05 00 03 */ cmpwi r5, 3 -/* 8015F93C 0015C89C 40 80 03 E8 */ bge lbl_8015FD24 -/* 8015F940 0015C8A0 48 00 03 C8 */ b lbl_8015FD08 -lbl_8015F944: -/* 8015F944 0015C8A4 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8015F948 0015C8A8 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) -/* 8015F94C 0015C8AC C3 E2 9F 68 */ lfs f31, lbl_805ABC88@sda21(r2) -/* 8015F950 0015C8B0 3B E0 00 00 */ li r31, 0 -/* 8015F954 0015C8B4 D0 1D 06 7C */ stfs f0, 0x67c(r29) -/* 8015F958 0015C8B8 C0 03 00 04 */ lfs f0, 4(r3) -/* 8015F95C 0015C8BC D0 1D 06 80 */ stfs f0, 0x680(r29) -/* 8015F960 0015C8C0 C0 03 00 08 */ lfs f0, 8(r3) -/* 8015F964 0015C8C4 D0 1D 06 84 */ stfs f0, 0x684(r29) -/* 8015F968 0015C8C8 C0 5D 00 60 */ lfs f2, 0x60(r29) -/* 8015F96C 0015C8CC C0 3D 00 50 */ lfs f1, 0x50(r29) -/* 8015F970 0015C8D0 C0 1D 00 40 */ lfs f0, 0x40(r29) -/* 8015F974 0015C8D4 D0 1D 06 70 */ stfs f0, 0x670(r29) -/* 8015F978 0015C8D8 D0 3D 06 74 */ stfs f1, 0x674(r29) -/* 8015F97C 0015C8DC D0 5D 06 78 */ stfs f2, 0x678(r29) -lbl_8015F980: -/* 8015F980 0015C8E0 C3 7D 06 48 */ lfs f27, 0x648(r29) -/* 8015F984 0015C8E4 80 7E 09 00 */ lwz r3, 0x900(r30) -/* 8015F988 0015C8E8 48 1B 2B 55 */ bl Float__9CRandom16Fv -/* 8015F98C 0015C8EC C0 1D 06 4C */ lfs f0, 0x64c(r29) -/* 8015F990 0015C8F0 80 7E 09 00 */ lwz r3, 0x900(r30) -/* 8015F994 0015C8F4 EC 00 D8 28 */ fsubs f0, f0, f27 -/* 8015F998 0015C8F8 EF C0 D8 7A */ fmadds f30, f0, f1, f27 -/* 8015F99C 0015C8FC 48 1B 2B 85 */ bl Next__9CRandom16Fv -/* 8015F9A0 0015C900 54 60 EF FF */ rlwinm. r0, r3, 0x1d, 0x1f, 0x1f -/* 8015F9A4 0015C904 D3 E1 00 08 */ stfs f31, 8(r1) -/* 8015F9A8 0015C908 41 82 00 38 */ beq lbl_8015F9E0 -/* 8015F9AC 0015C90C C0 42 9F 94 */ lfs f2, lbl_805ABCB4@sda21(r2) -/* 8015F9B0 0015C910 C0 3D 06 50 */ lfs f1, 0x650(r29) -/* 8015F9B4 0015C914 C0 1D 06 54 */ lfs f0, 0x654(r29) -/* 8015F9B8 0015C918 EF 62 08 28 */ fsubs f27, f2, f1 -/* 8015F9BC 0015C91C 80 7E 09 00 */ lwz r3, 0x900(r30) -/* 8015F9C0 0015C920 EF 82 00 2A */ fadds f28, f2, f0 -/* 8015F9C4 0015C924 48 1B 2B 19 */ bl Float__9CRandom16Fv -/* 8015F9C8 0015C928 EC 5C D8 28 */ fsubs f2, f28, f27 -/* 8015F9CC 0015C92C C0 02 9F 98 */ lfs f0, lbl_805ABCB8@sda21(r2) -/* 8015F9D0 0015C930 EC 22 D8 7A */ fmadds f1, f2, f1, f27 -/* 8015F9D4 0015C934 EC 00 00 72 */ fmuls f0, f0, f1 -/* 8015F9D8 0015C938 D0 01 00 08 */ stfs f0, 8(r1) -/* 8015F9DC 0015C93C 48 00 00 34 */ b lbl_8015FA10 -lbl_8015F9E0: -/* 8015F9E0 0015C940 C0 42 9F 9C */ lfs f2, lbl_805ABCBC@sda21(r2) -/* 8015F9E4 0015C944 C0 3D 06 54 */ lfs f1, 0x654(r29) -/* 8015F9E8 0015C948 C0 1D 06 50 */ lfs f0, 0x650(r29) -/* 8015F9EC 0015C94C EF 62 08 28 */ fsubs f27, f2, f1 -/* 8015F9F0 0015C950 80 7E 09 00 */ lwz r3, 0x900(r30) -/* 8015F9F4 0015C954 EF 82 00 2A */ fadds f28, f2, f0 -/* 8015F9F8 0015C958 48 1B 2A E5 */ bl Float__9CRandom16Fv -/* 8015F9FC 0015C95C EC 5C D8 28 */ fsubs f2, f28, f27 -/* 8015FA00 0015C960 C0 02 9F 98 */ lfs f0, lbl_805ABCB8@sda21(r2) -/* 8015FA04 0015C964 EC 22 D8 7A */ fmadds f1, f2, f1, f27 -/* 8015FA08 0015C968 EC 00 00 72 */ fmuls f0, f0, f1 -/* 8015FA0C 0015C96C D0 01 00 08 */ stfs f0, 8(r1) -lbl_8015FA10: -/* 8015FA10 0015C970 80 9E 08 4C */ lwz r4, 0x84c(r30) -/* 8015FA14 0015C974 7F C5 F3 78 */ mr r5, r30 -/* 8015FA18 0015C978 38 61 00 94 */ addi r3, r1, 0x94 -/* 8015FA1C 0015C97C C3 7D 00 60 */ lfs f27, 0x60(r29) -/* 8015FA20 0015C980 81 84 00 00 */ lwz r12, 0(r4) -/* 8015FA24 0015C984 C3 9D 00 50 */ lfs f28, 0x50(r29) -/* 8015FA28 0015C988 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 8015FA2C 0015C98C C3 BD 00 40 */ lfs f29, 0x40(r29) -/* 8015FA30 0015C990 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 8015FA34 0015C994 7D 89 03 A6 */ mtctr r12 -/* 8015FA38 0015C998 4E 80 04 21 */ bctrl -/* 8015FA3C 0015C99C C0 41 00 98 */ lfs f2, 0x98(r1) -/* 8015FA40 0015C9A0 38 61 00 AC */ addi r3, r1, 0xac -/* 8015FA44 0015C9A4 C0 21 00 9C */ lfs f1, 0x9c(r1) -/* 8015FA48 0015C9A8 38 81 00 A0 */ addi r4, r1, 0xa0 -/* 8015FA4C 0015C9AC C0 01 00 94 */ lfs f0, 0x94(r1) -/* 8015FA50 0015C9B0 EC 42 E0 28 */ fsubs f2, f2, f28 -/* 8015FA54 0015C9B4 EC 21 D8 28 */ fsubs f1, f1, f27 -/* 8015FA58 0015C9B8 EC 00 E8 28 */ fsubs f0, f0, f29 -/* 8015FA5C 0015C9BC D0 41 00 A4 */ stfs f2, 0xa4(r1) -/* 8015FA60 0015C9C0 D0 01 00 A0 */ stfs f0, 0xa0(r1) -/* 8015FA64 0015C9C4 D0 21 00 A8 */ stfs f1, 0xa8(r1) -/* 8015FA68 0015C9C8 48 1B 4D E9 */ bl AsNormalized__9CVector3fCFv -/* 8015FA6C 0015C9CC C0 41 00 B0 */ lfs f2, 0xb0(r1) -/* 8015FA70 0015C9D0 38 61 00 78 */ addi r3, r1, 0x78 -/* 8015FA74 0015C9D4 C0 21 00 B4 */ lfs f1, 0xb4(r1) -/* 8015FA78 0015C9D8 38 81 00 08 */ addi r4, r1, 8 -/* 8015FA7C 0015C9DC C0 01 00 AC */ lfs f0, 0xac(r1) -/* 8015FA80 0015C9E0 EC 5E 00 B2 */ fmuls f2, f30, f2 -/* 8015FA84 0015C9E4 EC 3E 00 72 */ fmuls f1, f30, f1 -/* 8015FA88 0015C9E8 EC 1E 00 32 */ fmuls f0, f30, f0 -/* 8015FA8C 0015C9EC D0 41 00 70 */ stfs f2, 0x70(r1) -/* 8015FA90 0015C9F0 D0 01 00 6C */ stfs f0, 0x6c(r1) -/* 8015FA94 0015C9F4 D0 21 00 74 */ stfs f1, 0x74(r1) -/* 8015FA98 0015C9F8 48 1B 16 61 */ bl ZRotation__11CQuaternionFRC9CRelAngle -/* 8015FA9C 0015C9FC 38 61 00 88 */ addi r3, r1, 0x88 -/* 8015FAA0 0015CA00 38 81 00 78 */ addi r4, r1, 0x78 -/* 8015FAA4 0015CA04 38 A1 00 6C */ addi r5, r1, 0x6c -/* 8015FAA8 0015CA08 48 1B 17 BD */ bl Transform__11CQuaternionCFRC9CVector3f -/* 8015FAAC 0015CA0C C0 3D 00 50 */ lfs f1, 0x50(r29) -/* 8015FAB0 0015CA10 38 60 00 00 */ li r3, 0 -/* 8015FAB4 0015CA14 C0 01 00 8C */ lfs f0, 0x8c(r1) -/* 8015FAB8 0015CA18 38 80 00 01 */ li r4, 1 -/* 8015FABC 0015CA1C C0 7D 00 60 */ lfs f3, 0x60(r29) -/* 8015FAC0 0015CA20 EC 81 00 2A */ fadds f4, f1, f0 -/* 8015FAC4 0015CA24 C0 41 00 90 */ lfs f2, 0x90(r1) -/* 8015FAC8 0015CA28 C0 3D 00 40 */ lfs f1, 0x40(r29) -/* 8015FACC 0015CA2C C0 01 00 88 */ lfs f0, 0x88(r1) -/* 8015FAD0 0015CA30 EC 43 10 2A */ fadds f2, f3, f2 -/* 8015FAD4 0015CA34 80 AD 8D 84 */ lwz r5, lbl_805A7944@sda21(r13) -/* 8015FAD8 0015CA38 EC 01 00 2A */ fadds f0, f1, f0 -/* 8015FADC 0015CA3C D0 81 00 D4 */ stfs f4, 0xd4(r1) -/* 8015FAE0 0015CA40 D0 41 00 D8 */ stfs f2, 0xd8(r1) -/* 8015FAE4 0015CA44 D0 01 00 D0 */ stfs f0, 0xd0(r1) -/* 8015FAE8 0015CA48 48 22 A4 0D */ bl __shl2i -/* 8015FAEC 0015CA4C 39 00 00 00 */ li r8, 0 -/* 8015FAF0 0015CA50 38 00 00 01 */ li r0, 1 -/* 8015FAF4 0015CA54 90 81 00 FC */ stw r4, 0xfc(r1) -/* 8015FAF8 0015CA58 7F A7 EB 78 */ mr r7, r29 -/* 8015FAFC 0015CA5C 38 81 00 60 */ addi r4, r1, 0x60 -/* 8015FB00 0015CA60 38 A1 00 D0 */ addi r5, r1, 0xd0 -/* 8015FB04 0015CA64 90 61 00 F8 */ stw r3, 0xf8(r1) -/* 8015FB08 0015CA68 7F C3 F3 78 */ mr r3, r30 -/* 8015FB0C 0015CA6C 38 C1 00 F8 */ addi r6, r1, 0xf8 -/* 8015FB10 0015CA70 91 01 01 04 */ stw r8, 0x104(r1) -/* 8015FB14 0015CA74 91 01 01 00 */ stw r8, 0x100(r1) -/* 8015FB18 0015CA78 90 01 01 08 */ stw r0, 0x108(r1) -/* 8015FB1C 0015CA7C C0 5D 00 60 */ lfs f2, 0x60(r29) -/* 8015FB20 0015CA80 C0 3D 00 50 */ lfs f1, 0x50(r29) -/* 8015FB24 0015CA84 C0 1D 00 40 */ lfs f0, 0x40(r29) -/* 8015FB28 0015CA88 D0 01 00 60 */ stfs f0, 0x60(r1) -/* 8015FB2C 0015CA8C D0 21 00 64 */ stfs f1, 0x64(r1) -/* 8015FB30 0015CA90 D0 41 00 68 */ stfs f2, 0x68(r1) -/* 8015FB34 0015CA94 4B EE D3 09 */ bl RayCollideWorld__13CStateManagerFRC9CVector3fRC9CVector3fRC15CMaterialFilterPC6CActor -/* 8015FB38 0015CA98 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8015FB3C 0015CA9C 41 82 00 68 */ beq lbl_8015FBA4 -/* 8015FB40 0015CAA0 C0 01 00 D0 */ lfs f0, 0xd0(r1) -/* 8015FB44 0015CAA4 38 7D 06 7C */ addi r3, r29, 0x67c -/* 8015FB48 0015CAA8 D0 1D 06 70 */ stfs f0, 0x670(r29) -/* 8015FB4C 0015CAAC C0 01 00 D4 */ lfs f0, 0xd4(r1) -/* 8015FB50 0015CAB0 D0 1D 06 74 */ stfs f0, 0x674(r29) -/* 8015FB54 0015CAB4 C0 01 00 D8 */ lfs f0, 0xd8(r1) -/* 8015FB58 0015CAB8 D0 1D 06 78 */ stfs f0, 0x678(r29) -/* 8015FB5C 0015CABC C0 21 00 D0 */ lfs f1, 0xd0(r1) -/* 8015FB60 0015CAC0 C0 1D 00 40 */ lfs f0, 0x40(r29) -/* 8015FB64 0015CAC4 C0 81 00 D4 */ lfs f4, 0xd4(r1) -/* 8015FB68 0015CAC8 C0 7D 00 50 */ lfs f3, 0x50(r29) -/* 8015FB6C 0015CACC EC 01 00 28 */ fsubs f0, f1, f0 -/* 8015FB70 0015CAD0 C0 41 00 D8 */ lfs f2, 0xd8(r1) -/* 8015FB74 0015CAD4 C0 3D 00 60 */ lfs f1, 0x60(r29) -/* 8015FB78 0015CAD8 EC 64 18 28 */ fsubs f3, f4, f3 -/* 8015FB7C 0015CADC D0 1D 06 7C */ stfs f0, 0x67c(r29) -/* 8015FB80 0015CAE0 EC 02 08 28 */ fsubs f0, f2, f1 -/* 8015FB84 0015CAE4 D0 7D 06 80 */ stfs f3, 0x680(r29) -/* 8015FB88 0015CAE8 D0 1D 06 84 */ stfs f0, 0x684(r29) -/* 8015FB8C 0015CAEC 48 1B 4B 6D */ bl CanBeNormalized__9CVector3fCFv -/* 8015FB90 0015CAF0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8015FB94 0015CAF4 41 82 01 90 */ beq lbl_8015FD24 -/* 8015FB98 0015CAF8 38 7D 06 7C */ addi r3, r29, 0x67c -/* 8015FB9C 0015CAFC 48 1B 4D 5D */ bl Normalize__9CVector3fFv -/* 8015FBA0 0015CB00 48 00 01 84 */ b lbl_8015FD24 -lbl_8015FBA4: -/* 8015FBA4 0015CB04 3B FF 00 01 */ addi r31, r31, 1 -/* 8015FBA8 0015CB08 2C 1F 00 04 */ cmpwi r31, 4 -/* 8015FBAC 0015CB0C 41 80 FD D4 */ blt lbl_8015F980 -/* 8015FBB0 0015CB10 48 00 01 74 */ b lbl_8015FD24 -lbl_8015FBB4: -/* 8015FBB4 0015CB14 C0 7D 06 58 */ lfs f3, 0x658(r29) -/* 8015FBB8 0015CB18 38 61 00 48 */ addi r3, r1, 0x48 -/* 8015FBBC 0015CB1C C0 5D 06 80 */ lfs f2, 0x680(r29) -/* 8015FBC0 0015CB20 38 9D 00 34 */ addi r4, r29, 0x34 -/* 8015FBC4 0015CB24 C0 3D 06 84 */ lfs f1, 0x684(r29) -/* 8015FBC8 0015CB28 38 A1 00 C4 */ addi r5, r1, 0xc4 -/* 8015FBCC 0015CB2C C0 1D 06 7C */ lfs f0, 0x67c(r29) -/* 8015FBD0 0015CB30 EC 43 00 B2 */ fmuls f2, f3, f2 -/* 8015FBD4 0015CB34 EC 23 00 72 */ fmuls f1, f3, f1 -/* 8015FBD8 0015CB38 EC 03 00 32 */ fmuls f0, f3, f0 -/* 8015FBDC 0015CB3C EC 5B 00 B2 */ fmuls f2, f27, f2 -/* 8015FBE0 0015CB40 EC 3B 00 72 */ fmuls f1, f27, f1 -/* 8015FBE4 0015CB44 EC 1B 00 32 */ fmuls f0, f27, f0 -/* 8015FBE8 0015CB48 D0 41 00 C8 */ stfs f2, 0xc8(r1) -/* 8015FBEC 0015CB4C D0 01 00 C4 */ stfs f0, 0xc4(r1) -/* 8015FBF0 0015CB50 D0 21 00 CC */ stfs f1, 0xcc(r1) -/* 8015FBF4 0015CB54 48 1B 2E 31 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f -/* 8015FBF8 0015CB58 FC 20 D8 90 */ fmr f1, f27 -/* 8015FBFC 0015CB5C 7F A4 EB 78 */ mr r4, r29 -/* 8015FC00 0015CB60 38 61 00 54 */ addi r3, r1, 0x54 -/* 8015FC04 0015CB64 38 A1 00 48 */ addi r5, r1, 0x48 -/* 8015FC08 0015CB68 4B FB B4 01 */ bl GetMoveToORImpulseWR__13CPhysicsActorCFRC9CVector3ff -/* 8015FC0C 0015CB6C C0 41 00 54 */ lfs f2, 0x54(r1) -/* 8015FC10 0015CB70 C0 21 00 58 */ lfs f1, 0x58(r1) -/* 8015FC14 0015CB74 C0 01 00 5C */ lfs f0, 0x5c(r1) -/* 8015FC18 0015CB78 D0 41 00 B8 */ stfs f2, 0xb8(r1) -/* 8015FC1C 0015CB7C D0 21 00 BC */ stfs f1, 0xbc(r1) -/* 8015FC20 0015CB80 D0 01 00 C0 */ stfs f0, 0xc0(r1) -/* 8015FC24 0015CB84 4B EB B9 11 */ bl Identity__10CAxisAngleFv -/* 8015FC28 0015CB88 7C 65 1B 78 */ mr r5, r3 -/* 8015FC2C 0015CB8C 7F A3 EB 78 */ mr r3, r29 -/* 8015FC30 0015CB90 38 81 00 B8 */ addi r4, r1, 0xb8 -/* 8015FC34 0015CB94 4B FB C7 65 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle -/* 8015FC38 0015CB98 80 9E 08 4C */ lwz r4, 0x84c(r30) -/* 8015FC3C 0015CB9C 7F C5 F3 78 */ mr r5, r30 -/* 8015FC40 0015CBA0 38 61 00 24 */ addi r3, r1, 0x24 -/* 8015FC44 0015CBA4 C3 BD 00 60 */ lfs f29, 0x60(r29) -/* 8015FC48 0015CBA8 81 84 00 00 */ lwz r12, 0(r4) -/* 8015FC4C 0015CBAC C3 9D 00 50 */ lfs f28, 0x50(r29) -/* 8015FC50 0015CBB0 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 8015FC54 0015CBB4 C3 7D 00 40 */ lfs f27, 0x40(r29) -/* 8015FC58 0015CBB8 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 8015FC5C 0015CBBC 7D 89 03 A6 */ mtctr r12 -/* 8015FC60 0015CBC0 4E 80 04 21 */ bctrl -/* 8015FC64 0015CBC4 C0 41 00 24 */ lfs f2, 0x24(r1) -/* 8015FC68 0015CBC8 38 61 00 3C */ addi r3, r1, 0x3c -/* 8015FC6C 0015CBCC C0 21 00 28 */ lfs f1, 0x28(r1) -/* 8015FC70 0015CBD0 38 81 00 30 */ addi r4, r1, 0x30 -/* 8015FC74 0015CBD4 C0 01 00 2C */ lfs f0, 0x2c(r1) -/* 8015FC78 0015CBD8 EC 42 D8 28 */ fsubs f2, f2, f27 -/* 8015FC7C 0015CBDC EC 21 E0 28 */ fsubs f1, f1, f28 -/* 8015FC80 0015CBE0 EC 00 E8 28 */ fsubs f0, f0, f29 -/* 8015FC84 0015CBE4 D0 41 00 30 */ stfs f2, 0x30(r1) -/* 8015FC88 0015CBE8 D0 21 00 34 */ stfs f1, 0x34(r1) -/* 8015FC8C 0015CBEC D0 01 00 38 */ stfs f0, 0x38(r1) -/* 8015FC90 0015CBF0 48 1B 4B C1 */ bl AsNormalized__9CVector3fCFv -/* 8015FC94 0015CBF4 C1 3D 00 58 */ lfs f9, 0x58(r29) -/* 8015FC98 0015CBF8 38 81 00 DC */ addi r4, r1, 0xdc -/* 8015FC9C 0015CBFC C1 1D 00 48 */ lfs f8, 0x48(r29) -/* 8015FCA0 0015CC00 C0 02 9F A0 */ lfs f0, lbl_805ABCC0@sda21(r2) -/* 8015FCA4 0015CC04 C0 BD 00 38 */ lfs f5, 0x38(r29) -/* 8015FCA8 0015CC08 EC E0 02 32 */ fmuls f7, f0, f8 -/* 8015FCAC 0015CC0C C0 61 00 3C */ lfs f3, 0x3c(r1) -/* 8015FCB0 0015CC10 EC C0 02 72 */ fmuls f6, f0, f9 -/* 8015FCB4 0015CC14 C0 41 00 40 */ lfs f2, 0x40(r1) -/* 8015FCB8 0015CC18 EC 80 01 72 */ fmuls f4, f0, f5 -/* 8015FCBC 0015CC1C C0 21 00 44 */ lfs f1, 0x44(r1) -/* 8015FCC0 0015CC20 C0 02 9F 7C */ lfs f0, lbl_805ABC9C@sda21(r2) -/* 8015FCC4 0015CC24 D0 81 00 DC */ stfs f4, 0xdc(r1) -/* 8015FCC8 0015CC28 D0 E1 00 E0 */ stfs f7, 0xe0(r1) -/* 8015FCCC 0015CC2C D0 C1 00 E4 */ stfs f6, 0xe4(r1) -/* 8015FCD0 0015CC30 D0 61 00 E8 */ stfs f3, 0xe8(r1) -/* 8015FCD4 0015CC34 D0 41 00 EC */ stfs f2, 0xec(r1) -/* 8015FCD8 0015CC38 D0 21 00 F0 */ stfs f1, 0xf0(r1) -/* 8015FCDC 0015CC3C D0 01 00 F4 */ stfs f0, 0xf4(r1) -/* 8015FCE0 0015CC40 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 8015FCE4 0015CC44 D0 A1 00 0C */ stfs f5, 0xc(r1) -/* 8015FCE8 0015CC48 38 63 00 04 */ addi r3, r3, 4 -/* 8015FCEC 0015CC4C D1 01 00 10 */ stfs f8, 0x10(r1) -/* 8015FCF0 0015CC50 D1 21 00 14 */ stfs f9, 0x14(r1) -/* 8015FCF4 0015CC54 D0 81 00 18 */ stfs f4, 0x18(r1) -/* 8015FCF8 0015CC58 D0 E1 00 1C */ stfs f7, 0x1c(r1) -/* 8015FCFC 0015CC5C D0 C1 00 20 */ stfs f6, 0x20(r1) -/* 8015FD00 0015CC60 4B FD 1A 19 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd -/* 8015FD04 0015CC64 48 00 00 20 */ b lbl_8015FD24 -lbl_8015FD08: -/* 8015FD08 0015CC68 C3 7D 06 3C */ lfs f27, 0x63c(r29) -/* 8015FD0C 0015CC6C 80 7E 09 00 */ lwz r3, 0x900(r30) -/* 8015FD10 0015CC70 48 1B 27 CD */ bl Float__9CRandom16Fv -/* 8015FD14 0015CC74 C0 1D 06 40 */ lfs f0, 0x640(r29) -/* 8015FD18 0015CC78 EC 00 D8 28 */ fsubs f0, f0, f27 -/* 8015FD1C 0015CC7C EC 00 D8 7A */ fmadds f0, f0, f1, f27 -/* 8015FD20 0015CC80 D0 1D 06 44 */ stfs f0, 0x644(r29) -lbl_8015FD24: -/* 8015FD24 0015CC84 E3 E1 01 68 */ psq_l f31, 360(r1), 0, qr0 -/* 8015FD28 0015CC88 CB E1 01 60 */ lfd f31, 0x160(r1) -/* 8015FD2C 0015CC8C E3 C1 01 58 */ psq_l f30, 344(r1), 0, qr0 -/* 8015FD30 0015CC90 CB C1 01 50 */ lfd f30, 0x150(r1) -/* 8015FD34 0015CC94 E3 A1 01 48 */ psq_l f29, 328(r1), 0, qr0 -/* 8015FD38 0015CC98 CB A1 01 40 */ lfd f29, 0x140(r1) -/* 8015FD3C 0015CC9C E3 81 01 38 */ psq_l f28, 312(r1), 0, qr0 -/* 8015FD40 0015CCA0 CB 81 01 30 */ lfd f28, 0x130(r1) -/* 8015FD44 0015CCA4 E3 61 01 28 */ psq_l f27, 296(r1), 0, qr0 -/* 8015FD48 0015CCA8 CB 61 01 20 */ lfd f27, 0x120(r1) -/* 8015FD4C 0015CCAC 83 E1 01 1C */ lwz r31, 0x11c(r1) -/* 8015FD50 0015CCB0 83 C1 01 18 */ lwz r30, 0x118(r1) -/* 8015FD54 0015CCB4 80 01 01 74 */ lwz r0, 0x174(r1) -/* 8015FD58 0015CCB8 83 A1 01 14 */ lwz r29, 0x114(r1) -/* 8015FD5C 0015CCBC 7C 08 03 A6 */ mtlr r0 -/* 8015FD60 0015CCC0 38 21 01 70 */ addi r1, r1, 0x170 -/* 8015FD64 0015CCC4 4E 80 00 20 */ blr - -.global CoverCheck__6CDroneFR13CStateManagerf -CoverCheck__6CDroneFR13CStateManagerf: -/* 8015FD68 0015CCC8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015FD6C 0015CCCC 7C 08 02 A6 */ mflr r0 -/* 8015FD70 0015CCD0 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8015FD74 0015CCD4 C0 22 9F A4 */ lfs f1, lbl_805ABCC4@sda21(r2) -/* 8015FD78 0015CCD8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8015FD7C 0015CCDC 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 8015FD80 0015CCE0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8015FD84 0015CCE4 7C 7F 1B 78 */ mr r31, r3 -/* 8015FD88 0015CCE8 38 7F 06 7C */ addi r3, r31, 0x67c -/* 8015FD8C 0015CCEC 48 1B 01 D9 */ bl close_enough__FRC9CVector3fRC9CVector3ff -/* 8015FD90 0015CCF0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8015FD94 0015CCF4 41 82 00 0C */ beq lbl_8015FDA0 -/* 8015FD98 0015CCF8 38 60 00 01 */ li r3, 1 -/* 8015FD9C 0015CCFC 48 00 00 6C */ b lbl_8015FE08 -lbl_8015FDA0: -/* 8015FDA0 0015CD00 C0 3F 06 74 */ lfs f1, 0x674(r31) -/* 8015FDA4 0015CD04 38 60 00 00 */ li r3, 0 -/* 8015FDA8 0015CD08 C0 1F 00 50 */ lfs f0, 0x50(r31) -/* 8015FDAC 0015CD0C C0 7F 06 70 */ lfs f3, 0x670(r31) -/* 8015FDB0 0015CD10 C0 5F 00 40 */ lfs f2, 0x40(r31) -/* 8015FDB4 0015CD14 EC 81 00 28 */ fsubs f4, f1, f0 -/* 8015FDB8 0015CD18 C0 1F 06 80 */ lfs f0, 0x680(r31) -/* 8015FDBC 0015CD1C EC A3 10 28 */ fsubs f5, f3, f2 -/* 8015FDC0 0015CD20 C0 7F 06 78 */ lfs f3, 0x678(r31) -/* 8015FDC4 0015CD24 C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 8015FDC8 0015CD28 EC 00 01 32 */ fmuls f0, f0, f4 -/* 8015FDCC 0015CD2C C0 3F 06 7C */ lfs f1, 0x67c(r31) -/* 8015FDD0 0015CD30 EC 63 10 28 */ fsubs f3, f3, f2 -/* 8015FDD4 0015CD34 EC 21 01 7A */ fmadds f1, f1, f5, f0 -/* 8015FDD8 0015CD38 C0 5F 06 84 */ lfs f2, 0x684(r31) -/* 8015FDDC 0015CD3C C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 8015FDE0 0015CD40 EC 22 08 FA */ fmadds f1, f2, f3, f1 -/* 8015FDE4 0015CD44 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015FDE8 0015CD48 41 80 00 1C */ blt lbl_8015FE04 -/* 8015FDEC 0015CD4C EC 24 01 32 */ fmuls f1, f4, f4 -/* 8015FDF0 0015CD50 C0 02 9F 78 */ lfs f0, lbl_805ABC98@sda21(r2) -/* 8015FDF4 0015CD54 EC 25 09 7A */ fmadds f1, f5, f5, f1 -/* 8015FDF8 0015CD58 EC 23 08 FA */ fmadds f1, f3, f3, f1 -/* 8015FDFC 0015CD5C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015FE00 0015CD60 40 80 00 08 */ bge lbl_8015FE08 -lbl_8015FE04: -/* 8015FE04 0015CD64 38 60 00 01 */ li r3, 1 -lbl_8015FE08: -/* 8015FE08 0015CD68 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015FE0C 0015CD6C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8015FE10 0015CD70 7C 08 03 A6 */ mtlr r0 -/* 8015FE14 0015CD74 38 21 00 10 */ addi r1, r1, 0x10 -/* 8015FE18 0015CD78 4E 80 00 20 */ blr - -.global ShouldMove__6CDroneFR13CStateManagerf -ShouldMove__6CDroneFR13CStateManagerf: -/* 8015FE1C 0015CD7C C0 23 06 44 */ lfs f1, 0x644(r3) -/* 8015FE20 0015CD80 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 8015FE24 0015CD84 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015FE28 0015CD88 4C 40 13 82 */ cror 2, 0, 2 -/* 8015FE2C 0015CD8C 7C 00 00 26 */ mfcr r0 -/* 8015FE30 0015CD90 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f -/* 8015FE34 0015CD94 4E 80 00 20 */ blr - -.global Leash__6CDroneFR13CStateManagerf -Leash__6CDroneFR13CStateManagerf: -/* 8015FE38 0015CD98 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8015FE3C 0015CD9C 80 84 08 4C */ lwz r4, 0x84c(r4) -/* 8015FE40 0015CDA0 C0 03 03 C8 */ lfs f0, 0x3c8(r3) -/* 8015FE44 0015CDA4 C0 E4 00 50 */ lfs f7, 0x50(r4) -/* 8015FE48 0015CDA8 C0 23 00 50 */ lfs f1, 0x50(r3) -/* 8015FE4C 0015CDAC EC 00 00 32 */ fmuls f0, f0, f0 -/* 8015FE50 0015CDB0 C0 44 00 40 */ lfs f2, 0x40(r4) -/* 8015FE54 0015CDB4 EC C7 08 28 */ fsubs f6, f7, f1 -/* 8015FE58 0015CDB8 C0 23 00 40 */ lfs f1, 0x40(r3) -/* 8015FE5C 0015CDBC C1 04 00 60 */ lfs f8, 0x60(r4) -/* 8015FE60 0015CDC0 EC 82 08 28 */ fsubs f4, f2, f1 -/* 8015FE64 0015CDC4 C0 63 00 60 */ lfs f3, 0x60(r3) -/* 8015FE68 0015CDC8 D0 41 00 08 */ stfs f2, 8(r1) -/* 8015FE6C 0015CDCC EC A8 18 28 */ fsubs f5, f8, f3 -/* 8015FE70 0015CDD0 EC 26 01 B2 */ fmuls f1, f6, f6 -/* 8015FE74 0015CDD4 D0 E1 00 0C */ stfs f7, 0xc(r1) -/* 8015FE78 0015CDD8 EC 44 01 32 */ fmuls f2, f4, f4 -/* 8015FE7C 0015CDDC EC 65 01 72 */ fmuls f3, f5, f5 -/* 8015FE80 0015CDE0 D1 01 00 10 */ stfs f8, 0x10(r1) -/* 8015FE84 0015CDE4 EC 22 08 2A */ fadds f1, f2, f1 -/* 8015FE88 0015CDE8 D0 81 00 14 */ stfs f4, 0x14(r1) -/* 8015FE8C 0015CDEC D0 C1 00 18 */ stfs f6, 0x18(r1) -/* 8015FE90 0015CDF0 EC 23 08 2A */ fadds f1, f3, f1 -/* 8015FE94 0015CDF4 D0 A1 00 1C */ stfs f5, 0x1c(r1) -/* 8015FE98 0015CDF8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015FE9C 0015CDFC 7C 00 00 26 */ mfcr r0 -/* 8015FEA0 0015CE00 54 03 0F FE */ srwi r3, r0, 0x1f -/* 8015FEA4 0015CE04 38 21 00 20 */ addi r1, r1, 0x20 -/* 8015FEA8 0015CE08 4E 80 00 20 */ blr - -.global TargetPlayer__6CDroneFR13CStateManager9EStateMsgf -TargetPlayer__6CDroneFR13CStateManager9EStateMsgf: -/* 8015FEAC 0015CE0C 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8015FEB0 0015CE10 7C 08 02 A6 */ mflr r0 -/* 8015FEB4 0015CE14 2C 05 00 01 */ cmpwi r5, 1 -/* 8015FEB8 0015CE18 90 01 00 44 */ stw r0, 0x44(r1) -/* 8015FEBC 0015CE1C 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 8015FEC0 0015CE20 7C 7F 1B 78 */ mr r31, r3 -/* 8015FEC4 0015CE24 41 82 00 10 */ beq lbl_8015FED4 -/* 8015FEC8 0015CE28 40 80 00 84 */ bge lbl_8015FF4C -/* 8015FECC 0015CE2C 48 00 00 80 */ b lbl_8015FF4C -/* 8015FED0 0015CE30 48 00 00 7C */ b lbl_8015FF4C -lbl_8015FED4: -/* 8015FED4 0015CE34 C0 3F 05 E4 */ lfs f1, 0x5e4(r31) -/* 8015FED8 0015CE38 38 61 00 08 */ addi r3, r1, 8 -/* 8015FEDC 0015CE3C C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 8015FEE0 0015CE40 38 9F 00 34 */ addi r4, r31, 0x34 -/* 8015FEE4 0015CE44 C0 42 9F 7C */ lfs f2, lbl_805ABC9C@sda21(r2) -/* 8015FEE8 0015CE48 38 A1 00 2C */ addi r5, r1, 0x2c -/* 8015FEEC 0015CE4C EC 61 00 32 */ fmuls f3, f1, f0 -/* 8015FEF0 0015CE50 EC 01 00 B2 */ fmuls f0, f1, f2 -/* 8015FEF4 0015CE54 EC 22 00 F2 */ fmuls f1, f2, f3 -/* 8015FEF8 0015CE58 EC 02 00 32 */ fmuls f0, f2, f0 -/* 8015FEFC 0015CE5C D0 21 00 2C */ stfs f1, 0x2c(r1) -/* 8015FF00 0015CE60 D0 21 00 30 */ stfs f1, 0x30(r1) -/* 8015FF04 0015CE64 D0 01 00 34 */ stfs f0, 0x34(r1) -/* 8015FF08 0015CE68 48 1B 2B 1D */ bl TransposeRotate__12CTransform4fCFRC9CVector3f -/* 8015FF0C 0015CE6C C0 22 9F 7C */ lfs f1, lbl_805ABC9C@sda21(r2) -/* 8015FF10 0015CE70 7F E4 FB 78 */ mr r4, r31 -/* 8015FF14 0015CE74 38 61 00 14 */ addi r3, r1, 0x14 -/* 8015FF18 0015CE78 38 A1 00 08 */ addi r5, r1, 8 -/* 8015FF1C 0015CE7C 4B FB B0 ED */ bl GetMoveToORImpulseWR__13CPhysicsActorCFRC9CVector3ff -/* 8015FF20 0015CE80 C0 41 00 14 */ lfs f2, 0x14(r1) -/* 8015FF24 0015CE84 C0 21 00 18 */ lfs f1, 0x18(r1) -/* 8015FF28 0015CE88 C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 8015FF2C 0015CE8C D0 41 00 20 */ stfs f2, 0x20(r1) -/* 8015FF30 0015CE90 D0 21 00 24 */ stfs f1, 0x24(r1) -/* 8015FF34 0015CE94 D0 01 00 28 */ stfs f0, 0x28(r1) -/* 8015FF38 0015CE98 4B EB B5 FD */ bl Identity__10CAxisAngleFv -/* 8015FF3C 0015CE9C 7C 65 1B 78 */ mr r5, r3 -/* 8015FF40 0015CEA0 7F E3 FB 78 */ mr r3, r31 -/* 8015FF44 0015CEA4 38 81 00 20 */ addi r4, r1, 0x20 -/* 8015FF48 0015CEA8 4B FB C4 51 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle -lbl_8015FF4C: -/* 8015FF4C 0015CEAC 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8015FF50 0015CEB0 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 8015FF54 0015CEB4 7C 08 03 A6 */ mtlr r0 -/* 8015FF58 0015CEB8 38 21 00 40 */ addi r1, r1, 0x40 -/* 8015FF5C 0015CEBC 4E 80 00 20 */ blr - -.global PathFind__6CDroneFR13CStateManager9EStateMsgf -PathFind__6CDroneFR13CStateManager9EStateMsgf: -/* 8015FF60 0015CEC0 94 21 FF 00 */ stwu r1, -0x100(r1) -/* 8015FF64 0015CEC4 7C 08 02 A6 */ mflr r0 -/* 8015FF68 0015CEC8 90 01 01 04 */ stw r0, 0x104(r1) -/* 8015FF6C 0015CECC DB E1 00 F0 */ stfd f31, 0xf0(r1) -/* 8015FF70 0015CED0 F3 E1 00 F8 */ psq_st f31, 248(r1), 0, qr0 -/* 8015FF74 0015CED4 DB C1 00 E0 */ stfd f30, 0xe0(r1) -/* 8015FF78 0015CED8 F3 C1 00 E8 */ psq_st f30, 232(r1), 0, qr0 -/* 8015FF7C 0015CEDC DB A1 00 D0 */ stfd f29, 0xd0(r1) -/* 8015FF80 0015CEE0 F3 A1 00 D8 */ psq_st f29, 216(r1), 0, qr0 -/* 8015FF84 0015CEE4 93 E1 00 CC */ stw r31, 0xcc(r1) -/* 8015FF88 0015CEE8 93 C1 00 C8 */ stw r30, 0xc8(r1) -/* 8015FF8C 0015CEEC 93 A1 00 C4 */ stw r29, 0xc4(r1) -/* 8015FF90 0015CEF0 2C 05 00 01 */ cmpwi r5, 1 -/* 8015FF94 0015CEF4 7C 7D 1B 78 */ mr r29, r3 -/* 8015FF98 0015CEF8 7C 9E 23 78 */ mr r30, r4 -/* 8015FF9C 0015CEFC 41 82 01 58 */ beq lbl_801600F4 -/* 8015FFA0 0015CF00 40 80 00 10 */ bge lbl_8015FFB0 -/* 8015FFA4 0015CF04 2C 05 00 00 */ cmpwi r5, 0 -/* 8015FFA8 0015CF08 40 80 00 14 */ bge lbl_8015FFBC -/* 8015FFAC 0015CF0C 48 00 03 0C */ b lbl_801602B8 -lbl_8015FFB0: -/* 8015FFB0 0015CF10 2C 05 00 03 */ cmpwi r5, 3 -/* 8015FFB4 0015CF14 40 80 03 04 */ bge lbl_801602B8 -/* 8015FFB8 0015CF18 48 00 02 FC */ b lbl_801602B4 -lbl_8015FFBC: -/* 8015FFBC 0015CF1C C0 1D 02 E0 */ lfs f0, 0x2e0(r29) -/* 8015FFC0 0015CF20 D0 01 00 8C */ stfs f0, 0x8c(r1) -/* 8015FFC4 0015CF24 C0 1D 02 E4 */ lfs f0, 0x2e4(r29) -/* 8015FFC8 0015CF28 D0 01 00 90 */ stfs f0, 0x90(r1) -/* 8015FFCC 0015CF2C C0 1D 02 E8 */ lfs f0, 0x2e8(r29) -/* 8015FFD0 0015CF30 D0 01 00 94 */ stfs f0, 0x94(r1) -/* 8015FFD4 0015CF34 C0 5D 00 60 */ lfs f2, 0x60(r29) -/* 8015FFD8 0015CF38 C0 3D 00 50 */ lfs f1, 0x50(r29) -/* 8015FFDC 0015CF3C C0 1D 00 40 */ lfs f0, 0x40(r29) -/* 8015FFE0 0015CF40 D0 01 00 74 */ stfs f0, 0x74(r1) -/* 8015FFE4 0015CF44 D0 21 00 78 */ stfs f1, 0x78(r1) -/* 8015FFE8 0015CF48 D0 41 00 7C */ stfs f2, 0x7c(r1) -/* 8015FFEC 0015CF4C 81 83 00 00 */ lwz r12, 0(r3) -/* 8015FFF0 0015CF50 81 8C 02 AC */ lwz r12, 0x2ac(r12) -/* 8015FFF4 0015CF54 7D 89 03 A6 */ mtctr r12 -/* 8015FFF8 0015CF58 4E 80 04 21 */ bctrl -/* 8015FFFC 0015CF5C 38 81 00 74 */ addi r4, r1, 0x74 -/* 80160000 0015CF60 38 A1 00 8C */ addi r5, r1, 0x8c -/* 80160004 0015CF64 48 06 7C 69 */ bl Search__15CPathFindSearchFRC9CVector3fRC9CVector3f -/* 80160008 0015CF68 2C 03 00 00 */ cmpwi r3, 0 -/* 8016000C 0015CF6C 41 82 00 C8 */ beq lbl_801600D4 -/* 80160010 0015CF70 7F A3 EB 78 */ mr r3, r29 -/* 80160014 0015CF74 81 9D 00 00 */ lwz r12, 0(r29) -/* 80160018 0015CF78 81 8C 02 AC */ lwz r12, 0x2ac(r12) -/* 8016001C 0015CF7C 7D 89 03 A6 */ mtctr r12 -/* 80160020 0015CF80 4E 80 04 21 */ bctrl -/* 80160024 0015CF84 80 03 00 CC */ lwz r0, 0xcc(r3) -/* 80160028 0015CF88 2C 00 00 03 */ cmpwi r0, 3 -/* 8016002C 0015CF8C 41 82 00 24 */ beq lbl_80160050 -/* 80160030 0015CF90 7F A3 EB 78 */ mr r3, r29 -/* 80160034 0015CF94 81 9D 00 00 */ lwz r12, 0(r29) -/* 80160038 0015CF98 81 8C 02 AC */ lwz r12, 0x2ac(r12) -/* 8016003C 0015CF9C 7D 89 03 A6 */ mtctr r12 -/* 80160040 0015CFA0 4E 80 04 21 */ bctrl -/* 80160044 0015CFA4 80 03 00 CC */ lwz r0, 0xcc(r3) -/* 80160048 0015CFA8 2C 00 00 04 */ cmpwi r0, 4 -/* 8016004C 0015CFAC 40 82 00 88 */ bne lbl_801600D4 -lbl_80160050: -/* 80160050 0015CFB0 C0 5D 00 60 */ lfs f2, 0x60(r29) -/* 80160054 0015CFB4 7F A3 EB 78 */ mr r3, r29 -/* 80160058 0015CFB8 C0 3D 00 50 */ lfs f1, 0x50(r29) -/* 8016005C 0015CFBC C0 1D 00 40 */ lfs f0, 0x40(r29) -/* 80160060 0015CFC0 D0 01 00 68 */ stfs f0, 0x68(r1) -/* 80160064 0015CFC4 D0 21 00 6C */ stfs f1, 0x6c(r1) -/* 80160068 0015CFC8 D0 41 00 70 */ stfs f2, 0x70(r1) -/* 8016006C 0015CFCC 81 9D 00 00 */ lwz r12, 0(r29) -/* 80160070 0015CFD0 81 8C 02 AC */ lwz r12, 0x2ac(r12) -/* 80160074 0015CFD4 7D 89 03 A6 */ mtctr r12 -/* 80160078 0015CFD8 4E 80 04 21 */ bctrl -/* 8016007C 0015CFDC 38 81 00 68 */ addi r4, r1, 0x68 -/* 80160080 0015CFE0 38 A1 00 8C */ addi r5, r1, 0x8c -/* 80160084 0015CFE4 48 06 70 79 */ bl FindClosestReachablePoint__15CPathFindSearchCFRC9CVector3fR9CVector3f -/* 80160088 0015CFE8 2C 03 00 00 */ cmpwi r3, 0 -/* 8016008C 0015CFEC 40 82 00 48 */ bne lbl_801600D4 -/* 80160090 0015CFF0 C0 5D 00 60 */ lfs f2, 0x60(r29) -/* 80160094 0015CFF4 7F A3 EB 78 */ mr r3, r29 -/* 80160098 0015CFF8 C0 3D 00 50 */ lfs f1, 0x50(r29) -/* 8016009C 0015CFFC C0 1D 00 40 */ lfs f0, 0x40(r29) -/* 801600A0 0015D000 D0 01 00 5C */ stfs f0, 0x5c(r1) -/* 801600A4 0015D004 D0 21 00 60 */ stfs f1, 0x60(r1) -/* 801600A8 0015D008 D0 41 00 64 */ stfs f2, 0x64(r1) -/* 801600AC 0015D00C 81 9D 00 00 */ lwz r12, 0(r29) -/* 801600B0 0015D010 81 8C 02 AC */ lwz r12, 0x2ac(r12) -/* 801600B4 0015D014 7D 89 03 A6 */ mtctr r12 -/* 801600B8 0015D018 4E 80 04 21 */ bctrl -/* 801600BC 0015D01C 38 81 00 5C */ addi r4, r1, 0x5c -/* 801600C0 0015D020 38 A1 00 8C */ addi r5, r1, 0x8c -/* 801600C4 0015D024 48 06 7B A9 */ bl Search__15CPathFindSearchFRC9CVector3fRC9CVector3f -/* 801600C8 0015D028 7F A3 EB 78 */ mr r3, r29 -/* 801600CC 0015D02C 38 81 00 8C */ addi r4, r1, 0x8c -/* 801600D0 0015D030 4B F1 CA 8D */ bl SetDestPos__10CPatternedFRC9CVector3f -lbl_801600D4: -/* 801600D4 0015D034 80 1D 03 FC */ lwz r0, 0x3fc(r29) -/* 801600D8 0015D038 2C 00 00 01 */ cmpwi r0, 1 -/* 801600DC 0015D03C 40 82 01 DC */ bne lbl_801602B8 -/* 801600E0 0015D040 88 1D 08 34 */ lbz r0, 0x834(r29) -/* 801600E4 0015D044 38 60 00 01 */ li r3, 1 -/* 801600E8 0015D048 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e -/* 801600EC 0015D04C 98 1D 08 34 */ stb r0, 0x834(r29) -/* 801600F0 0015D050 48 00 01 C8 */ b lbl_801602B8 -lbl_801600F4: -/* 801600F4 0015D054 48 09 65 D9 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf -/* 801600F8 0015D058 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 801600FC 0015D05C 3B E3 00 04 */ addi r31, r3, 4 -/* 80160100 0015D060 7F E3 FB 78 */ mr r3, r31 -/* 80160104 0015D064 4B FD 14 45 */ bl BlendSteeringCmds__16CBodyStateCmdMgrFv -/* 80160108 0015D068 C0 1F 00 00 */ lfs f0, 0(r31) -/* 8016010C 0015D06C 38 61 00 80 */ addi r3, r1, 0x80 -/* 80160110 0015D070 D0 01 00 80 */ stfs f0, 0x80(r1) -/* 80160114 0015D074 C0 1F 00 04 */ lfs f0, 4(r31) -/* 80160118 0015D078 D0 01 00 84 */ stfs f0, 0x84(r1) -/* 8016011C 0015D07C C0 1F 00 08 */ lfs f0, 8(r31) -/* 80160120 0015D080 D0 01 00 88 */ stfs f0, 0x88(r1) -/* 80160124 0015D084 48 1B 45 D5 */ bl CanBeNormalized__9CVector3fCFv -/* 80160128 0015D088 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016012C 0015D08C 41 82 01 6C */ beq lbl_80160298 -/* 80160130 0015D090 38 61 00 80 */ addi r3, r1, 0x80 -/* 80160134 0015D094 48 1B 47 C5 */ bl Normalize__9CVector3fFv -/* 80160138 0015D098 7F E3 FB 78 */ mr r3, r31 -/* 8016013C 0015D09C 4B FD 13 6D */ bl ClearLocomotionCmds__16CBodyStateCmdMgrFv -/* 80160140 0015D0A0 C0 9D 05 E4 */ lfs f4, 0x5e4(r29) -/* 80160144 0015D0A4 C0 41 00 84 */ lfs f2, 0x84(r1) -/* 80160148 0015D0A8 C0 21 00 88 */ lfs f1, 0x88(r1) -/* 8016014C 0015D0AC C0 01 00 80 */ lfs f0, 0x80(r1) -/* 80160150 0015D0B0 EC 64 00 B2 */ fmuls f3, f4, f2 -/* 80160154 0015D0B4 EC 44 00 72 */ fmuls f2, f4, f1 -/* 80160158 0015D0B8 C0 BD 00 E8 */ lfs f5, 0xe8(r29) -/* 8016015C 0015D0BC EC 24 00 32 */ fmuls f1, f4, f0 -/* 80160160 0015D0C0 EC 85 00 F2 */ fmuls f4, f5, f3 -/* 80160164 0015D0C4 D0 61 00 48 */ stfs f3, 0x48(r1) -/* 80160168 0015D0C8 EC 65 00 B2 */ fmuls f3, f5, f2 -/* 8016016C 0015D0CC EC 05 00 72 */ fmuls f0, f5, f1 -/* 80160170 0015D0D0 D0 21 00 44 */ stfs f1, 0x44(r1) -/* 80160174 0015D0D4 D0 41 00 4C */ stfs f2, 0x4c(r1) -/* 80160178 0015D0D8 D0 01 00 50 */ stfs f0, 0x50(r1) -/* 8016017C 0015D0DC D0 81 00 54 */ stfs f4, 0x54(r1) -/* 80160180 0015D0E0 D0 61 00 58 */ stfs f3, 0x58(r1) -/* 80160184 0015D0E4 4B EB B3 B1 */ bl Identity__10CAxisAngleFv -/* 80160188 0015D0E8 7C 65 1B 78 */ mr r5, r3 -/* 8016018C 0015D0EC 7F A3 EB 78 */ mr r3, r29 -/* 80160190 0015D0F0 38 81 00 50 */ addi r4, r1, 0x50 -/* 80160194 0015D0F4 4B FB C2 05 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle -/* 80160198 0015D0F8 80 9E 08 4C */ lwz r4, 0x84c(r30) -/* 8016019C 0015D0FC 7F C5 F3 78 */ mr r5, r30 -/* 801601A0 0015D100 38 61 00 20 */ addi r3, r1, 0x20 -/* 801601A4 0015D104 C3 BD 00 60 */ lfs f29, 0x60(r29) -/* 801601A8 0015D108 81 84 00 00 */ lwz r12, 0(r4) -/* 801601AC 0015D10C C3 DD 00 50 */ lfs f30, 0x50(r29) -/* 801601B0 0015D110 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 801601B4 0015D114 C3 FD 00 40 */ lfs f31, 0x40(r29) -/* 801601B8 0015D118 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 801601BC 0015D11C 7D 89 03 A6 */ mtctr r12 -/* 801601C0 0015D120 4E 80 04 21 */ bctrl -/* 801601C4 0015D124 C0 41 00 20 */ lfs f2, 0x20(r1) -/* 801601C8 0015D128 38 61 00 38 */ addi r3, r1, 0x38 -/* 801601CC 0015D12C C0 21 00 24 */ lfs f1, 0x24(r1) -/* 801601D0 0015D130 38 81 00 2C */ addi r4, r1, 0x2c -/* 801601D4 0015D134 C0 01 00 28 */ lfs f0, 0x28(r1) -/* 801601D8 0015D138 EC 42 F8 28 */ fsubs f2, f2, f31 -/* 801601DC 0015D13C EC 21 F0 28 */ fsubs f1, f1, f30 -/* 801601E0 0015D140 EC 00 E8 28 */ fsubs f0, f0, f29 -/* 801601E4 0015D144 D0 41 00 2C */ stfs f2, 0x2c(r1) -/* 801601E8 0015D148 D0 21 00 30 */ stfs f1, 0x30(r1) -/* 801601EC 0015D14C D0 01 00 34 */ stfs f0, 0x34(r1) -/* 801601F0 0015D150 48 1B 46 61 */ bl AsNormalized__9CVector3fCFv -/* 801601F4 0015D154 C0 DD 00 58 */ lfs f6, 0x58(r29) -/* 801601F8 0015D158 7F E3 FB 78 */ mr r3, r31 -/* 801601FC 0015D15C C0 BD 00 48 */ lfs f5, 0x48(r29) -/* 80160200 0015D160 38 81 00 98 */ addi r4, r1, 0x98 -/* 80160204 0015D164 C0 02 9F A0 */ lfs f0, lbl_805ABCC0@sda21(r2) -/* 80160208 0015D168 C0 5D 00 38 */ lfs f2, 0x38(r29) -/* 8016020C 0015D16C EC 80 01 72 */ fmuls f4, f0, f5 -/* 80160210 0015D170 C3 E1 00 38 */ lfs f31, 0x38(r1) -/* 80160214 0015D174 EC 60 01 B2 */ fmuls f3, f0, f6 -/* 80160218 0015D178 C3 A1 00 3C */ lfs f29, 0x3c(r1) -/* 8016021C 0015D17C EC 20 00 B2 */ fmuls f1, f0, f2 -/* 80160220 0015D180 C3 C1 00 40 */ lfs f30, 0x40(r1) -/* 80160224 0015D184 C0 02 9F 7C */ lfs f0, lbl_805ABC9C@sda21(r2) -/* 80160228 0015D188 D0 41 00 08 */ stfs f2, 8(r1) -/* 8016022C 0015D18C D0 A1 00 0C */ stfs f5, 0xc(r1) -/* 80160230 0015D190 D0 C1 00 10 */ stfs f6, 0x10(r1) -/* 80160234 0015D194 D0 21 00 14 */ stfs f1, 0x14(r1) -/* 80160238 0015D198 D0 81 00 18 */ stfs f4, 0x18(r1) -/* 8016023C 0015D19C D0 61 00 1C */ stfs f3, 0x1c(r1) -/* 80160240 0015D1A0 D0 21 00 98 */ stfs f1, 0x98(r1) -/* 80160244 0015D1A4 D0 81 00 9C */ stfs f4, 0x9c(r1) -/* 80160248 0015D1A8 D0 61 00 A0 */ stfs f3, 0xa0(r1) -/* 8016024C 0015D1AC D3 E1 00 A4 */ stfs f31, 0xa4(r1) -/* 80160250 0015D1B0 D3 A1 00 A8 */ stfs f29, 0xa8(r1) -/* 80160254 0015D1B4 D3 C1 00 AC */ stfs f30, 0xac(r1) -/* 80160258 0015D1B8 D0 01 00 B0 */ stfs f0, 0xb0(r1) -/* 8016025C 0015D1BC 4B FD 14 BD */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd -/* 80160260 0015D1C0 D3 FF 00 18 */ stfs f31, 0x18(r31) -/* 80160264 0015D1C4 7F A3 EB 78 */ mr r3, r29 -/* 80160268 0015D1C8 7F C4 F3 78 */ mr r4, r30 -/* 8016026C 0015D1CC D3 BF 00 1C */ stfs f29, 0x1c(r31) -/* 80160270 0015D1D0 D3 DF 00 20 */ stfs f30, 0x20(r31) -/* 80160274 0015D1D4 4B FF F2 9D */ bl sub_8015f510 -/* 80160278 0015D1D8 C0 3D 06 30 */ lfs f1, 0x630(r29) -/* 8016027C 0015D1DC C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 80160280 0015D1E0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80160284 0015D1E4 4C 40 13 82 */ cror 2, 0, 2 -/* 80160288 0015D1E8 40 82 00 30 */ bne lbl_801602B8 -/* 8016028C 0015D1EC C0 02 9F A8 */ lfs f0, lbl_805ABCC8@sda21(r2) -/* 80160290 0015D1F0 D0 1D 06 34 */ stfs f0, 0x634(r29) -/* 80160294 0015D1F4 48 00 00 24 */ b lbl_801602B8 -lbl_80160298: -/* 80160298 0015D1F8 C0 3D 06 30 */ lfs f1, 0x630(r29) -/* 8016029C 0015D1FC C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 801602A0 0015D200 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801602A4 0015D204 4C 40 13 82 */ cror 2, 0, 2 -/* 801602A8 0015D208 40 82 00 10 */ bne lbl_801602B8 -/* 801602AC 0015D20C D0 1D 06 34 */ stfs f0, 0x634(r29) -/* 801602B0 0015D210 48 00 00 08 */ b lbl_801602B8 -lbl_801602B4: -/* 801602B4 0015D214 48 09 64 19 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf -lbl_801602B8: -/* 801602B8 0015D218 E3 E1 00 F8 */ psq_l f31, 248(r1), 0, qr0 -/* 801602BC 0015D21C CB E1 00 F0 */ lfd f31, 0xf0(r1) -/* 801602C0 0015D220 E3 C1 00 E8 */ psq_l f30, 232(r1), 0, qr0 -/* 801602C4 0015D224 CB C1 00 E0 */ lfd f30, 0xe0(r1) -/* 801602C8 0015D228 E3 A1 00 D8 */ psq_l f29, 216(r1), 0, qr0 -/* 801602CC 0015D22C CB A1 00 D0 */ lfd f29, 0xd0(r1) -/* 801602D0 0015D230 83 E1 00 CC */ lwz r31, 0xcc(r1) -/* 801602D4 0015D234 83 C1 00 C8 */ lwz r30, 0xc8(r1) -/* 801602D8 0015D238 80 01 01 04 */ lwz r0, 0x104(r1) -/* 801602DC 0015D23C 83 A1 00 C4 */ lwz r29, 0xc4(r1) -/* 801602E0 0015D240 7C 08 03 A6 */ mtlr r0 -/* 801602E4 0015D244 38 21 01 00 */ addi r1, r1, 0x100 -/* 801602E8 0015D248 4E 80 00 20 */ blr - -.global PathFindEx__6CDroneFR13CStateManager9EStateMsgf -PathFindEx__6CDroneFR13CStateManager9EStateMsgf: -/* 801602EC 0015D24C 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 801602F0 0015D250 7C 08 02 A6 */ mflr r0 -/* 801602F4 0015D254 90 01 00 54 */ stw r0, 0x54(r1) -/* 801602F8 0015D258 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 801602FC 0015D25C 7C BF 2B 78 */ mr r31, r5 -/* 80160300 0015D260 93 C1 00 48 */ stw r30, 0x48(r1) -/* 80160304 0015D264 7C 9E 23 78 */ mr r30, r4 -/* 80160308 0015D268 93 A1 00 44 */ stw r29, 0x44(r1) -/* 8016030C 0015D26C 7C 7D 1B 78 */ mr r29, r3 -/* 80160310 0015D270 48 09 63 BD */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf -/* 80160314 0015D274 2C 1F 00 00 */ cmpwi r31, 0 -/* 80160318 0015D278 41 82 00 0C */ beq lbl_80160324 -/* 8016031C 0015D27C 41 80 01 3C */ blt lbl_80160458 -/* 80160320 0015D280 48 00 01 38 */ b lbl_80160458 -lbl_80160324: -/* 80160324 0015D284 80 9E 08 4C */ lwz r4, 0x84c(r30) -/* 80160328 0015D288 7F A3 EB 78 */ mr r3, r29 -/* 8016032C 0015D28C C0 62 9F 68 */ lfs f3, lbl_805ABC88@sda21(r2) -/* 80160330 0015D290 C0 24 00 50 */ lfs f1, 0x50(r4) -/* 80160334 0015D294 C0 04 00 40 */ lfs f0, 0x40(r4) -/* 80160338 0015D298 C0 44 00 60 */ lfs f2, 0x60(r4) -/* 8016033C 0015D29C EC 81 18 2A */ fadds f4, f1, f3 -/* 80160340 0015D2A0 C0 3D 06 64 */ lfs f1, 0x664(r29) -/* 80160344 0015D2A4 EC 00 18 2A */ fadds f0, f0, f3 -/* 80160348 0015D2A8 EC 22 08 2A */ fadds f1, f2, f1 -/* 8016034C 0015D2AC D0 81 00 30 */ stfs f4, 0x30(r1) -/* 80160350 0015D2B0 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 80160354 0015D2B4 D0 21 00 34 */ stfs f1, 0x34(r1) -/* 80160358 0015D2B8 C0 5D 00 60 */ lfs f2, 0x60(r29) -/* 8016035C 0015D2BC C0 3D 00 50 */ lfs f1, 0x50(r29) -/* 80160360 0015D2C0 C0 1D 00 40 */ lfs f0, 0x40(r29) -/* 80160364 0015D2C4 D0 01 00 20 */ stfs f0, 0x20(r1) -/* 80160368 0015D2C8 D0 21 00 24 */ stfs f1, 0x24(r1) -/* 8016036C 0015D2CC D0 41 00 28 */ stfs f2, 0x28(r1) -/* 80160370 0015D2D0 81 9D 00 00 */ lwz r12, 0(r29) -/* 80160374 0015D2D4 81 8C 02 AC */ lwz r12, 0x2ac(r12) -/* 80160378 0015D2D8 7D 89 03 A6 */ mtctr r12 -/* 8016037C 0015D2DC 4E 80 04 21 */ bctrl -/* 80160380 0015D2E0 38 81 00 20 */ addi r4, r1, 0x20 -/* 80160384 0015D2E4 38 A1 00 2C */ addi r5, r1, 0x2c -/* 80160388 0015D2E8 48 06 78 E5 */ bl Search__15CPathFindSearchFRC9CVector3fRC9CVector3f -/* 8016038C 0015D2EC 2C 03 00 00 */ cmpwi r3, 0 -/* 80160390 0015D2F0 41 82 00 C8 */ beq lbl_80160458 -/* 80160394 0015D2F4 7F A3 EB 78 */ mr r3, r29 -/* 80160398 0015D2F8 81 9D 00 00 */ lwz r12, 0(r29) -/* 8016039C 0015D2FC 81 8C 02 AC */ lwz r12, 0x2ac(r12) -/* 801603A0 0015D300 7D 89 03 A6 */ mtctr r12 -/* 801603A4 0015D304 4E 80 04 21 */ bctrl -/* 801603A8 0015D308 80 03 00 CC */ lwz r0, 0xcc(r3) -/* 801603AC 0015D30C 2C 00 00 03 */ cmpwi r0, 3 -/* 801603B0 0015D310 41 82 00 24 */ beq lbl_801603D4 -/* 801603B4 0015D314 7F A3 EB 78 */ mr r3, r29 -/* 801603B8 0015D318 81 9D 00 00 */ lwz r12, 0(r29) -/* 801603BC 0015D31C 81 8C 02 AC */ lwz r12, 0x2ac(r12) -/* 801603C0 0015D320 7D 89 03 A6 */ mtctr r12 -/* 801603C4 0015D324 4E 80 04 21 */ bctrl -/* 801603C8 0015D328 80 03 00 CC */ lwz r0, 0xcc(r3) -/* 801603CC 0015D32C 2C 00 00 04 */ cmpwi r0, 4 -/* 801603D0 0015D330 40 82 00 88 */ bne lbl_80160458 -lbl_801603D4: -/* 801603D4 0015D334 C0 5D 00 60 */ lfs f2, 0x60(r29) -/* 801603D8 0015D338 7F A3 EB 78 */ mr r3, r29 -/* 801603DC 0015D33C C0 3D 00 50 */ lfs f1, 0x50(r29) -/* 801603E0 0015D340 C0 1D 00 40 */ lfs f0, 0x40(r29) -/* 801603E4 0015D344 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 801603E8 0015D348 D0 21 00 18 */ stfs f1, 0x18(r1) -/* 801603EC 0015D34C D0 41 00 1C */ stfs f2, 0x1c(r1) -/* 801603F0 0015D350 81 9D 00 00 */ lwz r12, 0(r29) -/* 801603F4 0015D354 81 8C 02 AC */ lwz r12, 0x2ac(r12) -/* 801603F8 0015D358 7D 89 03 A6 */ mtctr r12 -/* 801603FC 0015D35C 4E 80 04 21 */ bctrl -/* 80160400 0015D360 38 81 00 14 */ addi r4, r1, 0x14 -/* 80160404 0015D364 38 A1 00 2C */ addi r5, r1, 0x2c -/* 80160408 0015D368 48 06 6C F5 */ bl FindClosestReachablePoint__15CPathFindSearchCFRC9CVector3fR9CVector3f -/* 8016040C 0015D36C 2C 03 00 00 */ cmpwi r3, 0 -/* 80160410 0015D370 40 82 00 48 */ bne lbl_80160458 -/* 80160414 0015D374 C0 5D 00 60 */ lfs f2, 0x60(r29) -/* 80160418 0015D378 7F A3 EB 78 */ mr r3, r29 -/* 8016041C 0015D37C C0 3D 00 50 */ lfs f1, 0x50(r29) -/* 80160420 0015D380 C0 1D 00 40 */ lfs f0, 0x40(r29) -/* 80160424 0015D384 D0 01 00 08 */ stfs f0, 8(r1) -/* 80160428 0015D388 D0 21 00 0C */ stfs f1, 0xc(r1) -/* 8016042C 0015D38C D0 41 00 10 */ stfs f2, 0x10(r1) -/* 80160430 0015D390 81 9D 00 00 */ lwz r12, 0(r29) -/* 80160434 0015D394 81 8C 02 AC */ lwz r12, 0x2ac(r12) -/* 80160438 0015D398 7D 89 03 A6 */ mtctr r12 -/* 8016043C 0015D39C 4E 80 04 21 */ bctrl -/* 80160440 0015D3A0 38 81 00 08 */ addi r4, r1, 8 -/* 80160444 0015D3A4 38 A1 00 2C */ addi r5, r1, 0x2c -/* 80160448 0015D3A8 48 06 78 25 */ bl Search__15CPathFindSearchFRC9CVector3fRC9CVector3f -/* 8016044C 0015D3AC 7F A3 EB 78 */ mr r3, r29 -/* 80160450 0015D3B0 38 81 00 2C */ addi r4, r1, 0x2c -/* 80160454 0015D3B4 4B F1 C7 09 */ bl SetDestPos__10CPatternedFRC9CVector3f -lbl_80160458: -/* 80160458 0015D3B8 80 01 00 54 */ lwz r0, 0x54(r1) -/* 8016045C 0015D3BC 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 80160460 0015D3C0 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 80160464 0015D3C4 83 A1 00 44 */ lwz r29, 0x44(r1) -/* 80160468 0015D3C8 7C 08 03 A6 */ mtlr r0 -/* 8016046C 0015D3CC 38 21 00 50 */ addi r1, r1, 0x50 -/* 80160470 0015D3D0 4E 80 00 20 */ blr - -.global Attack__6CDroneFR13CStateManager9EStateMsgf -Attack__6CDroneFR13CStateManager9EStateMsgf: -/* 80160474 0015D3D4 94 21 FF 30 */ stwu r1, -0xd0(r1) -/* 80160478 0015D3D8 7C 08 02 A6 */ mflr r0 -/* 8016047C 0015D3DC 90 01 00 D4 */ stw r0, 0xd4(r1) -/* 80160480 0015D3E0 DB E1 00 C0 */ stfd f31, 0xc0(r1) -/* 80160484 0015D3E4 F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 -/* 80160488 0015D3E8 DB C1 00 B0 */ stfd f30, 0xb0(r1) -/* 8016048C 0015D3EC F3 C1 00 B8 */ psq_st f30, 184(r1), 0, qr0 -/* 80160490 0015D3F0 DB A1 00 A0 */ stfd f29, 0xa0(r1) -/* 80160494 0015D3F4 F3 A1 00 A8 */ psq_st f29, 168(r1), 0, qr0 -/* 80160498 0015D3F8 93 E1 00 9C */ stw r31, 0x9c(r1) -/* 8016049C 0015D3FC 93 C1 00 98 */ stw r30, 0x98(r1) -/* 801604A0 0015D400 2C 05 00 01 */ cmpwi r5, 1 -/* 801604A4 0015D404 7C 7E 1B 78 */ mr r30, r3 -/* 801604A8 0015D408 7C 9F 23 78 */ mr r31, r4 -/* 801604AC 0015D40C 41 82 07 18 */ beq lbl_80160BC4 -/* 801604B0 0015D410 40 80 00 10 */ bge lbl_801604C0 -/* 801604B4 0015D414 2C 05 00 00 */ cmpwi r5, 0 -/* 801604B8 0015D418 40 80 00 14 */ bge lbl_801604CC -/* 801604BC 0015D41C 48 00 08 7C */ b lbl_80160D38 -lbl_801604C0: -/* 801604C0 0015D420 2C 05 00 03 */ cmpwi r5, 3 -/* 801604C4 0015D424 40 80 08 74 */ bge lbl_80160D38 -/* 801604C8 0015D428 48 00 08 10 */ b lbl_80160CD8 -lbl_801604CC: -/* 801604CC 0015D42C 38 80 00 00 */ li r4, 0 -/* 801604D0 0015D430 7F E5 FB 78 */ mr r5, r31 -/* 801604D4 0015D434 90 9E 07 C8 */ stw r4, 0x7c8(r30) -/* 801604D8 0015D438 38 61 00 5C */ addi r3, r1, 0x5c -/* 801604DC 0015D43C C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 801604E0 0015D440 88 1E 08 34 */ lbz r0, 0x834(r30) -/* 801604E4 0015D444 50 80 07 FE */ rlwimi r0, r4, 0, 0x1f, 0x1f -/* 801604E8 0015D448 98 1E 08 34 */ stb r0, 0x834(r30) -/* 801604EC 0015D44C 80 9F 08 4C */ lwz r4, 0x84c(r31) -/* 801604F0 0015D450 81 84 00 00 */ lwz r12, 0(r4) -/* 801604F4 0015D454 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 801604F8 0015D458 7D 89 03 A6 */ mtctr r12 -/* 801604FC 0015D45C 4E 80 04 21 */ bctrl -/* 80160500 0015D460 C0 A1 00 5C */ lfs f5, 0x5c(r1) -/* 80160504 0015D464 38 61 00 50 */ addi r3, r1, 0x50 -/* 80160508 0015D468 C0 81 00 60 */ lfs f4, 0x60(r1) -/* 8016050C 0015D46C 38 81 00 44 */ addi r4, r1, 0x44 -/* 80160510 0015D470 C0 61 00 64 */ lfs f3, 0x64(r1) -/* 80160514 0015D474 D0 A1 00 68 */ stfs f5, 0x68(r1) -/* 80160518 0015D478 D0 81 00 6C */ stfs f4, 0x6c(r1) -/* 8016051C 0015D47C D0 61 00 70 */ stfs f3, 0x70(r1) -/* 80160520 0015D480 C0 5E 00 50 */ lfs f2, 0x50(r30) -/* 80160524 0015D484 C0 3E 00 60 */ lfs f1, 0x60(r30) -/* 80160528 0015D488 C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 8016052C 0015D48C EC 44 10 28 */ fsubs f2, f4, f2 -/* 80160530 0015D490 EC 23 08 28 */ fsubs f1, f3, f1 -/* 80160534 0015D494 EC 05 00 28 */ fsubs f0, f5, f0 -/* 80160538 0015D498 D0 41 00 48 */ stfs f2, 0x48(r1) -/* 8016053C 0015D49C D0 01 00 44 */ stfs f0, 0x44(r1) -/* 80160540 0015D4A0 D0 21 00 4C */ stfs f1, 0x4c(r1) -/* 80160544 0015D4A4 48 1B 43 0D */ bl AsNormalized__9CVector3fCFv -/* 80160548 0015D4A8 C0 9E 00 48 */ lfs f4, 0x48(r30) -/* 8016054C 0015D4AC C0 01 00 54 */ lfs f0, 0x54(r1) -/* 80160550 0015D4B0 C0 7E 00 38 */ lfs f3, 0x38(r30) -/* 80160554 0015D4B4 EC 00 01 32 */ fmuls f0, f0, f4 -/* 80160558 0015D4B8 C0 21 00 50 */ lfs f1, 0x50(r1) -/* 8016055C 0015D4BC C0 BE 00 58 */ lfs f5, 0x58(r30) -/* 80160560 0015D4C0 C0 41 00 58 */ lfs f2, 0x58(r1) -/* 80160564 0015D4C4 EC 21 00 FA */ fmadds f1, f1, f3, f0 -/* 80160568 0015D4C8 C0 02 9F AC */ lfs f0, lbl_805ABCCC@sda21(r2) -/* 8016056C 0015D4CC D0 61 00 38 */ stfs f3, 0x38(r1) -/* 80160570 0015D4D0 EC 22 09 7A */ fmadds f1, f2, f5, f1 -/* 80160574 0015D4D4 D0 81 00 3C */ stfs f4, 0x3c(r1) -/* 80160578 0015D4D8 D0 A1 00 40 */ stfs f5, 0x40(r1) -/* 8016057C 0015D4DC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80160580 0015D4E0 40 80 00 64 */ bge lbl_801605E4 -/* 80160584 0015D4E4 C0 02 9F B0 */ lfs f0, lbl_805ABCD0@sda21(r2) -/* 80160588 0015D4E8 38 61 00 08 */ addi r3, r1, 8 -/* 8016058C 0015D4EC C1 5E 00 60 */ lfs f10, 0x60(r30) -/* 80160590 0015D4F0 EC C0 01 72 */ fmuls f6, f0, f5 -/* 80160594 0015D4F4 C1 3E 00 50 */ lfs f9, 0x50(r30) -/* 80160598 0015D4F8 EC E0 01 32 */ fmuls f7, f0, f4 -/* 8016059C 0015D4FC C0 3E 00 40 */ lfs f1, 0x40(r30) -/* 801605A0 0015D500 EC 40 00 F2 */ fmuls f2, f0, f3 -/* 801605A4 0015D504 D0 61 00 2C */ stfs f3, 0x2c(r1) -/* 801605A8 0015D508 ED 09 38 2A */ fadds f8, f9, f7 -/* 801605AC 0015D50C D0 81 00 30 */ stfs f4, 0x30(r1) -/* 801605B0 0015D510 EC 6A 30 2A */ fadds f3, f10, f6 -/* 801605B4 0015D514 EC 01 10 2A */ fadds f0, f1, f2 -/* 801605B8 0015D518 D0 A1 00 34 */ stfs f5, 0x34(r1) -/* 801605BC 0015D51C D0 41 00 20 */ stfs f2, 0x20(r1) -/* 801605C0 0015D520 D0 E1 00 24 */ stfs f7, 0x24(r1) -/* 801605C4 0015D524 D0 C1 00 28 */ stfs f6, 0x28(r1) -/* 801605C8 0015D528 D0 21 00 14 */ stfs f1, 0x14(r1) -/* 801605CC 0015D52C D1 21 00 18 */ stfs f9, 0x18(r1) -/* 801605D0 0015D530 D1 41 00 1C */ stfs f10, 0x1c(r1) -/* 801605D4 0015D534 D0 01 00 08 */ stfs f0, 8(r1) -/* 801605D8 0015D538 D1 01 00 0C */ stfs f8, 0xc(r1) -/* 801605DC 0015D53C D0 61 00 10 */ stfs f3, 0x10(r1) -/* 801605E0 0015D540 48 00 00 08 */ b lbl_801605E8 -lbl_801605E4: -/* 801605E4 0015D544 38 61 00 68 */ addi r3, r1, 0x68 -lbl_801605E8: -/* 801605E8 0015D548 C3 E3 00 00 */ lfs f31, 0(r3) -/* 801605EC 0015D54C C3 C3 00 04 */ lfs f30, 4(r3) -/* 801605F0 0015D550 C3 A3 00 08 */ lfs f29, 8(r3) -/* 801605F4 0015D554 80 7F 09 00 */ lwz r3, 0x900(r31) -/* 801605F8 0015D558 48 1B 1F 29 */ bl Next__9CRandom16Fv -/* 801605FC 0015D55C 54 60 F0 02 */ slwi r0, r3, 0x1e -/* 80160600 0015D560 54 63 0F FE */ srwi r3, r3, 0x1f -/* 80160604 0015D564 7C 03 00 50 */ subf r0, r3, r0 -/* 80160608 0015D568 54 00 10 3E */ rotlwi r0, r0, 2 -/* 8016060C 0015D56C 7C 00 1A 14 */ add r0, r0, r3 -/* 80160610 0015D570 2C 00 00 02 */ cmpwi r0, 2 -/* 80160614 0015D574 41 82 02 DC */ beq lbl_801608F0 -/* 80160618 0015D578 40 80 00 14 */ bge lbl_8016062C -/* 8016061C 0015D57C 2C 00 00 00 */ cmpwi r0, 0 -/* 80160620 0015D580 41 82 00 18 */ beq lbl_80160638 -/* 80160624 0015D584 40 80 01 70 */ bge lbl_80160794 -/* 80160628 0015D588 48 00 05 7C */ b lbl_80160BA4 -lbl_8016062C: -/* 8016062C 0015D58C 2C 00 00 04 */ cmpwi r0, 4 -/* 80160630 0015D590 40 80 05 74 */ bge lbl_80160BA4 -/* 80160634 0015D594 48 00 04 18 */ b lbl_80160A4C -lbl_80160638: -/* 80160638 0015D598 C0 22 9F B4 */ lfs f1, lbl_805ABCD4@sda21(r2) -/* 8016063C 0015D59C C0 1E 00 34 */ lfs f0, 0x34(r30) -/* 80160640 0015D5A0 C0 9E 00 44 */ lfs f4, 0x44(r30) -/* 80160644 0015D5A4 EC 61 00 32 */ fmuls f3, f1, f0 -/* 80160648 0015D5A8 C0 02 9F B8 */ lfs f0, lbl_805ABCD8@sda21(r2) -/* 8016064C 0015D5AC C0 5E 00 3C */ lfs f2, 0x3c(r30) -/* 80160650 0015D5B0 EC E1 01 32 */ fmuls f7, f1, f4 -/* 80160654 0015D5B4 C0 9E 00 54 */ lfs f4, 0x54(r30) -/* 80160658 0015D5B8 C0 DE 00 4C */ lfs f6, 0x4c(r30) -/* 8016065C 0015D5BC EC A1 01 32 */ fmuls f5, f1, f4 -/* 80160660 0015D5C0 C0 9E 00 5C */ lfs f4, 0x5c(r30) -/* 80160664 0015D5C4 EC 7F 18 2A */ fadds f3, f31, f3 -/* 80160668 0015D5C8 EC 40 00 B2 */ fmuls f2, f0, f2 -/* 8016066C 0015D5CC EC FE 38 2A */ fadds f7, f30, f7 -/* 80160670 0015D5D0 EC C0 01 B2 */ fmuls f6, f0, f6 -/* 80160674 0015D5D4 EC 43 10 28 */ fsubs f2, f3, f2 -/* 80160678 0015D5D8 EC BD 28 2A */ fadds f5, f29, f5 -/* 8016067C 0015D5DC EC 60 01 32 */ fmuls f3, f0, f4 -/* 80160680 0015D5E0 EC 87 30 28 */ fsubs f4, f7, f6 -/* 80160684 0015D5E4 D0 5E 07 E4 */ stfs f2, 0x7e4(r30) -/* 80160688 0015D5E8 EC 45 18 28 */ fsubs f2, f5, f3 -/* 8016068C 0015D5EC D0 9E 07 E8 */ stfs f4, 0x7e8(r30) -/* 80160690 0015D5F0 D0 5E 07 EC */ stfs f2, 0x7ec(r30) -/* 80160694 0015D5F4 C0 5E 00 34 */ lfs f2, 0x34(r30) -/* 80160698 0015D5F8 C0 9E 00 44 */ lfs f4, 0x44(r30) -/* 8016069C 0015D5FC EC 61 00 B2 */ fmuls f3, f1, f2 -/* 801606A0 0015D600 C0 5E 00 3C */ lfs f2, 0x3c(r30) -/* 801606A4 0015D604 EC E1 01 32 */ fmuls f7, f1, f4 -/* 801606A8 0015D608 C0 BE 00 54 */ lfs f5, 0x54(r30) -/* 801606AC 0015D60C C0 DE 00 4C */ lfs f6, 0x4c(r30) -/* 801606B0 0015D610 EC 40 00 B2 */ fmuls f2, f0, f2 -/* 801606B4 0015D614 EC 7F 18 28 */ fsubs f3, f31, f3 -/* 801606B8 0015D618 C0 9E 00 5C */ lfs f4, 0x5c(r30) -/* 801606BC 0015D61C EC A1 01 72 */ fmuls f5, f1, f5 -/* 801606C0 0015D620 EC FE 38 28 */ fsubs f7, f30, f7 -/* 801606C4 0015D624 EC C0 01 B2 */ fmuls f6, f0, f6 -/* 801606C8 0015D628 EC 43 10 2A */ fadds f2, f3, f2 -/* 801606CC 0015D62C EC BD 28 28 */ fsubs f5, f29, f5 -/* 801606D0 0015D630 EC 60 01 32 */ fmuls f3, f0, f4 -/* 801606D4 0015D634 EC 87 30 2A */ fadds f4, f7, f6 -/* 801606D8 0015D638 D0 5E 08 00 */ stfs f2, 0x800(r30) -/* 801606DC 0015D63C EC 45 18 2A */ fadds f2, f5, f3 -/* 801606E0 0015D640 D0 9E 08 04 */ stfs f4, 0x804(r30) -/* 801606E4 0015D644 D0 5E 08 08 */ stfs f2, 0x808(r30) -/* 801606E8 0015D648 C0 5E 00 34 */ lfs f2, 0x34(r30) -/* 801606EC 0015D64C C0 9E 00 44 */ lfs f4, 0x44(r30) -/* 801606F0 0015D650 EC 61 00 B2 */ fmuls f3, f1, f2 -/* 801606F4 0015D654 C0 5E 00 3C */ lfs f2, 0x3c(r30) -/* 801606F8 0015D658 EC E1 01 32 */ fmuls f7, f1, f4 -/* 801606FC 0015D65C C0 BE 00 54 */ lfs f5, 0x54(r30) -/* 80160700 0015D660 C0 DE 00 4C */ lfs f6, 0x4c(r30) -/* 80160704 0015D664 EC 40 00 B2 */ fmuls f2, f0, f2 -/* 80160708 0015D668 EC 7F 18 28 */ fsubs f3, f31, f3 -/* 8016070C 0015D66C C0 9E 00 5C */ lfs f4, 0x5c(r30) -/* 80160710 0015D670 EC A1 01 72 */ fmuls f5, f1, f5 -/* 80160714 0015D674 EC FE 38 28 */ fsubs f7, f30, f7 -/* 80160718 0015D678 EC C0 01 B2 */ fmuls f6, f0, f6 -/* 8016071C 0015D67C EC 43 10 28 */ fsubs f2, f3, f2 -/* 80160720 0015D680 EC BD 28 28 */ fsubs f5, f29, f5 -/* 80160724 0015D684 EC 60 01 32 */ fmuls f3, f0, f4 -/* 80160728 0015D688 EC 87 30 28 */ fsubs f4, f7, f6 -/* 8016072C 0015D68C D0 5E 07 F0 */ stfs f2, 0x7f0(r30) -/* 80160730 0015D690 EC 45 18 28 */ fsubs f2, f5, f3 -/* 80160734 0015D694 D0 9E 07 F4 */ stfs f4, 0x7f4(r30) -/* 80160738 0015D698 D0 5E 07 F8 */ stfs f2, 0x7f8(r30) -/* 8016073C 0015D69C C0 5E 00 34 */ lfs f2, 0x34(r30) -/* 80160740 0015D6A0 C0 9E 00 44 */ lfs f4, 0x44(r30) -/* 80160744 0015D6A4 EC 61 00 B2 */ fmuls f3, f1, f2 -/* 80160748 0015D6A8 C0 5E 00 3C */ lfs f2, 0x3c(r30) -/* 8016074C 0015D6AC EC E1 01 32 */ fmuls f7, f1, f4 -/* 80160750 0015D6B0 C0 BE 00 54 */ lfs f5, 0x54(r30) -/* 80160754 0015D6B4 C0 DE 00 4C */ lfs f6, 0x4c(r30) -/* 80160758 0015D6B8 EC 40 00 B2 */ fmuls f2, f0, f2 -/* 8016075C 0015D6BC EC 7F 18 2A */ fadds f3, f31, f3 -/* 80160760 0015D6C0 C0 9E 00 5C */ lfs f4, 0x5c(r30) -/* 80160764 0015D6C4 EC A1 01 72 */ fmuls f5, f1, f5 -/* 80160768 0015D6C8 EC FE 38 2A */ fadds f7, f30, f7 -/* 8016076C 0015D6CC EC C0 01 B2 */ fmuls f6, f0, f6 -/* 80160770 0015D6D0 EC 23 10 2A */ fadds f1, f3, f2 -/* 80160774 0015D6D4 EC 5D 28 2A */ fadds f2, f29, f5 -/* 80160778 0015D6D8 EC 00 01 32 */ fmuls f0, f0, f4 -/* 8016077C 0015D6DC EC 67 30 2A */ fadds f3, f7, f6 -/* 80160780 0015D6E0 D0 3E 08 0C */ stfs f1, 0x80c(r30) -/* 80160784 0015D6E4 EC 02 00 2A */ fadds f0, f2, f0 -/* 80160788 0015D6E8 D0 7E 08 10 */ stfs f3, 0x810(r30) -/* 8016078C 0015D6EC D0 1E 08 14 */ stfs f0, 0x814(r30) -/* 80160790 0015D6F0 48 00 04 14 */ b lbl_80160BA4 -lbl_80160794: -/* 80160794 0015D6F4 C0 22 9F B4 */ lfs f1, lbl_805ABCD4@sda21(r2) -/* 80160798 0015D6F8 C0 1E 00 34 */ lfs f0, 0x34(r30) -/* 8016079C 0015D6FC C0 9E 00 44 */ lfs f4, 0x44(r30) -/* 801607A0 0015D700 EC 61 00 32 */ fmuls f3, f1, f0 -/* 801607A4 0015D704 C0 02 9F B8 */ lfs f0, lbl_805ABCD8@sda21(r2) -/* 801607A8 0015D708 C0 5E 00 3C */ lfs f2, 0x3c(r30) -/* 801607AC 0015D70C EC E1 01 32 */ fmuls f7, f1, f4 -/* 801607B0 0015D710 C0 9E 00 54 */ lfs f4, 0x54(r30) -/* 801607B4 0015D714 C0 DE 00 4C */ lfs f6, 0x4c(r30) -/* 801607B8 0015D718 EC A1 01 32 */ fmuls f5, f1, f4 -/* 801607BC 0015D71C C0 9E 00 5C */ lfs f4, 0x5c(r30) -/* 801607C0 0015D720 EC 7F 18 2A */ fadds f3, f31, f3 -/* 801607C4 0015D724 EC 40 00 B2 */ fmuls f2, f0, f2 -/* 801607C8 0015D728 EC FE 38 2A */ fadds f7, f30, f7 -/* 801607CC 0015D72C EC C0 01 B2 */ fmuls f6, f0, f6 -/* 801607D0 0015D730 EC 43 10 2A */ fadds f2, f3, f2 -/* 801607D4 0015D734 EC BD 28 2A */ fadds f5, f29, f5 -/* 801607D8 0015D738 EC 60 01 32 */ fmuls f3, f0, f4 -/* 801607DC 0015D73C EC 87 30 2A */ fadds f4, f7, f6 -/* 801607E0 0015D740 D0 5E 07 E4 */ stfs f2, 0x7e4(r30) -/* 801607E4 0015D744 EC 45 18 2A */ fadds f2, f5, f3 -/* 801607E8 0015D748 D0 9E 07 E8 */ stfs f4, 0x7e8(r30) -/* 801607EC 0015D74C D0 5E 07 EC */ stfs f2, 0x7ec(r30) -/* 801607F0 0015D750 C0 5E 00 34 */ lfs f2, 0x34(r30) -/* 801607F4 0015D754 C0 9E 00 44 */ lfs f4, 0x44(r30) -/* 801607F8 0015D758 EC 61 00 B2 */ fmuls f3, f1, f2 -/* 801607FC 0015D75C C0 5E 00 3C */ lfs f2, 0x3c(r30) -/* 80160800 0015D760 EC E1 01 32 */ fmuls f7, f1, f4 -/* 80160804 0015D764 C0 BE 00 54 */ lfs f5, 0x54(r30) -/* 80160808 0015D768 C0 DE 00 4C */ lfs f6, 0x4c(r30) -/* 8016080C 0015D76C EC 40 00 B2 */ fmuls f2, f0, f2 -/* 80160810 0015D770 EC 7F 18 28 */ fsubs f3, f31, f3 -/* 80160814 0015D774 C0 9E 00 5C */ lfs f4, 0x5c(r30) -/* 80160818 0015D778 EC A1 01 72 */ fmuls f5, f1, f5 -/* 8016081C 0015D77C EC FE 38 28 */ fsubs f7, f30, f7 -/* 80160820 0015D780 EC C0 01 B2 */ fmuls f6, f0, f6 -/* 80160824 0015D784 EC 43 10 28 */ fsubs f2, f3, f2 -/* 80160828 0015D788 EC BD 28 28 */ fsubs f5, f29, f5 -/* 8016082C 0015D78C EC 60 01 32 */ fmuls f3, f0, f4 -/* 80160830 0015D790 EC 87 30 28 */ fsubs f4, f7, f6 -/* 80160834 0015D794 D0 5E 08 00 */ stfs f2, 0x800(r30) -/* 80160838 0015D798 EC 45 18 28 */ fsubs f2, f5, f3 -/* 8016083C 0015D79C D0 9E 08 04 */ stfs f4, 0x804(r30) -/* 80160840 0015D7A0 D0 5E 08 08 */ stfs f2, 0x808(r30) -/* 80160844 0015D7A4 C0 5E 00 34 */ lfs f2, 0x34(r30) -/* 80160848 0015D7A8 C0 9E 00 44 */ lfs f4, 0x44(r30) -/* 8016084C 0015D7AC EC 61 00 B2 */ fmuls f3, f1, f2 -/* 80160850 0015D7B0 C0 5E 00 3C */ lfs f2, 0x3c(r30) -/* 80160854 0015D7B4 EC E1 01 32 */ fmuls f7, f1, f4 -/* 80160858 0015D7B8 C0 BE 00 54 */ lfs f5, 0x54(r30) -/* 8016085C 0015D7BC C0 DE 00 4C */ lfs f6, 0x4c(r30) -/* 80160860 0015D7C0 EC 40 00 B2 */ fmuls f2, f0, f2 -/* 80160864 0015D7C4 EC 7F 18 28 */ fsubs f3, f31, f3 -/* 80160868 0015D7C8 C0 9E 00 5C */ lfs f4, 0x5c(r30) -/* 8016086C 0015D7CC EC A1 01 72 */ fmuls f5, f1, f5 -/* 80160870 0015D7D0 EC FE 38 28 */ fsubs f7, f30, f7 -/* 80160874 0015D7D4 EC C0 01 B2 */ fmuls f6, f0, f6 -/* 80160878 0015D7D8 EC 43 10 2A */ fadds f2, f3, f2 -/* 8016087C 0015D7DC EC BD 28 28 */ fsubs f5, f29, f5 -/* 80160880 0015D7E0 EC 60 01 32 */ fmuls f3, f0, f4 -/* 80160884 0015D7E4 EC 87 30 2A */ fadds f4, f7, f6 -/* 80160888 0015D7E8 D0 5E 07 F0 */ stfs f2, 0x7f0(r30) -/* 8016088C 0015D7EC EC 45 18 2A */ fadds f2, f5, f3 -/* 80160890 0015D7F0 D0 9E 07 F4 */ stfs f4, 0x7f4(r30) -/* 80160894 0015D7F4 D0 5E 07 F8 */ stfs f2, 0x7f8(r30) -/* 80160898 0015D7F8 C0 5E 00 34 */ lfs f2, 0x34(r30) -/* 8016089C 0015D7FC C0 9E 00 44 */ lfs f4, 0x44(r30) -/* 801608A0 0015D800 EC 61 00 B2 */ fmuls f3, f1, f2 -/* 801608A4 0015D804 C0 5E 00 3C */ lfs f2, 0x3c(r30) -/* 801608A8 0015D808 EC E1 01 32 */ fmuls f7, f1, f4 -/* 801608AC 0015D80C C0 BE 00 54 */ lfs f5, 0x54(r30) -/* 801608B0 0015D810 C0 DE 00 4C */ lfs f6, 0x4c(r30) -/* 801608B4 0015D814 EC 40 00 B2 */ fmuls f2, f0, f2 -/* 801608B8 0015D818 EC 7F 18 2A */ fadds f3, f31, f3 -/* 801608BC 0015D81C C0 9E 00 5C */ lfs f4, 0x5c(r30) -/* 801608C0 0015D820 EC A1 01 72 */ fmuls f5, f1, f5 -/* 801608C4 0015D824 EC FE 38 2A */ fadds f7, f30, f7 -/* 801608C8 0015D828 EC C0 01 B2 */ fmuls f6, f0, f6 -/* 801608CC 0015D82C EC 23 10 28 */ fsubs f1, f3, f2 -/* 801608D0 0015D830 EC 5D 28 2A */ fadds f2, f29, f5 -/* 801608D4 0015D834 EC 00 01 32 */ fmuls f0, f0, f4 -/* 801608D8 0015D838 EC 67 30 28 */ fsubs f3, f7, f6 -/* 801608DC 0015D83C D0 3E 08 0C */ stfs f1, 0x80c(r30) -/* 801608E0 0015D840 EC 02 00 28 */ fsubs f0, f2, f0 -/* 801608E4 0015D844 D0 7E 08 10 */ stfs f3, 0x810(r30) -/* 801608E8 0015D848 D0 1E 08 14 */ stfs f0, 0x814(r30) -/* 801608EC 0015D84C 48 00 02 B8 */ b lbl_80160BA4 -lbl_801608F0: -/* 801608F0 0015D850 C0 22 9F B8 */ lfs f1, lbl_805ABCD8@sda21(r2) -/* 801608F4 0015D854 C0 1E 00 34 */ lfs f0, 0x34(r30) -/* 801608F8 0015D858 C0 9E 00 44 */ lfs f4, 0x44(r30) -/* 801608FC 0015D85C EC 61 00 32 */ fmuls f3, f1, f0 -/* 80160900 0015D860 C0 02 9F B4 */ lfs f0, lbl_805ABCD4@sda21(r2) -/* 80160904 0015D864 C0 5E 00 3C */ lfs f2, 0x3c(r30) -/* 80160908 0015D868 EC E1 01 32 */ fmuls f7, f1, f4 -/* 8016090C 0015D86C C0 9E 00 54 */ lfs f4, 0x54(r30) -/* 80160910 0015D870 C0 DE 00 4C */ lfs f6, 0x4c(r30) -/* 80160914 0015D874 EC A1 01 32 */ fmuls f5, f1, f4 -/* 80160918 0015D878 C0 9E 00 5C */ lfs f4, 0x5c(r30) -/* 8016091C 0015D87C EC 7F 18 28 */ fsubs f3, f31, f3 -/* 80160920 0015D880 EC 40 00 B2 */ fmuls f2, f0, f2 -/* 80160924 0015D884 EC FE 38 28 */ fsubs f7, f30, f7 -/* 80160928 0015D888 EC C0 01 B2 */ fmuls f6, f0, f6 -/* 8016092C 0015D88C EC 43 10 28 */ fsubs f2, f3, f2 -/* 80160930 0015D890 EC BD 28 28 */ fsubs f5, f29, f5 -/* 80160934 0015D894 EC 60 01 32 */ fmuls f3, f0, f4 -/* 80160938 0015D898 EC 87 30 28 */ fsubs f4, f7, f6 -/* 8016093C 0015D89C D0 5E 07 E4 */ stfs f2, 0x7e4(r30) -/* 80160940 0015D8A0 EC 45 18 28 */ fsubs f2, f5, f3 -/* 80160944 0015D8A4 D0 9E 07 E8 */ stfs f4, 0x7e8(r30) -/* 80160948 0015D8A8 D0 5E 07 EC */ stfs f2, 0x7ec(r30) -/* 8016094C 0015D8AC C0 5E 00 34 */ lfs f2, 0x34(r30) -/* 80160950 0015D8B0 C0 9E 00 44 */ lfs f4, 0x44(r30) -/* 80160954 0015D8B4 EC 61 00 B2 */ fmuls f3, f1, f2 -/* 80160958 0015D8B8 C0 5E 00 3C */ lfs f2, 0x3c(r30) -/* 8016095C 0015D8BC EC E1 01 32 */ fmuls f7, f1, f4 -/* 80160960 0015D8C0 C0 BE 00 54 */ lfs f5, 0x54(r30) -/* 80160964 0015D8C4 C0 DE 00 4C */ lfs f6, 0x4c(r30) -/* 80160968 0015D8C8 EC 40 00 B2 */ fmuls f2, f0, f2 -/* 8016096C 0015D8CC EC 7F 18 2A */ fadds f3, f31, f3 -/* 80160970 0015D8D0 C0 9E 00 5C */ lfs f4, 0x5c(r30) -/* 80160974 0015D8D4 EC A1 01 72 */ fmuls f5, f1, f5 -/* 80160978 0015D8D8 EC FE 38 2A */ fadds f7, f30, f7 -/* 8016097C 0015D8DC EC C0 01 B2 */ fmuls f6, f0, f6 -/* 80160980 0015D8E0 EC 43 10 2A */ fadds f2, f3, f2 -/* 80160984 0015D8E4 EC BD 28 2A */ fadds f5, f29, f5 -/* 80160988 0015D8E8 EC 60 01 32 */ fmuls f3, f0, f4 -/* 8016098C 0015D8EC EC 87 30 2A */ fadds f4, f7, f6 -/* 80160990 0015D8F0 D0 5E 08 00 */ stfs f2, 0x800(r30) -/* 80160994 0015D8F4 EC 45 18 2A */ fadds f2, f5, f3 -/* 80160998 0015D8F8 D0 9E 08 04 */ stfs f4, 0x804(r30) -/* 8016099C 0015D8FC D0 5E 08 08 */ stfs f2, 0x808(r30) -/* 801609A0 0015D900 C0 5E 00 34 */ lfs f2, 0x34(r30) -/* 801609A4 0015D904 C0 9E 00 44 */ lfs f4, 0x44(r30) -/* 801609A8 0015D908 EC 61 00 B2 */ fmuls f3, f1, f2 -/* 801609AC 0015D90C C0 5E 00 3C */ lfs f2, 0x3c(r30) -/* 801609B0 0015D910 EC E1 01 32 */ fmuls f7, f1, f4 -/* 801609B4 0015D914 C0 BE 00 54 */ lfs f5, 0x54(r30) -/* 801609B8 0015D918 C0 DE 00 4C */ lfs f6, 0x4c(r30) -/* 801609BC 0015D91C EC 40 00 B2 */ fmuls f2, f0, f2 -/* 801609C0 0015D920 EC 7F 18 2A */ fadds f3, f31, f3 -/* 801609C4 0015D924 C0 9E 00 5C */ lfs f4, 0x5c(r30) -/* 801609C8 0015D928 EC A1 01 72 */ fmuls f5, f1, f5 -/* 801609CC 0015D92C EC FE 38 2A */ fadds f7, f30, f7 -/* 801609D0 0015D930 EC C0 01 B2 */ fmuls f6, f0, f6 -/* 801609D4 0015D934 EC 43 10 28 */ fsubs f2, f3, f2 -/* 801609D8 0015D938 EC BD 28 2A */ fadds f5, f29, f5 -/* 801609DC 0015D93C EC 60 01 32 */ fmuls f3, f0, f4 -/* 801609E0 0015D940 EC 87 30 28 */ fsubs f4, f7, f6 -/* 801609E4 0015D944 D0 5E 07 F0 */ stfs f2, 0x7f0(r30) -/* 801609E8 0015D948 EC 45 18 28 */ fsubs f2, f5, f3 -/* 801609EC 0015D94C D0 9E 07 F4 */ stfs f4, 0x7f4(r30) -/* 801609F0 0015D950 D0 5E 07 F8 */ stfs f2, 0x7f8(r30) -/* 801609F4 0015D954 C0 5E 00 34 */ lfs f2, 0x34(r30) -/* 801609F8 0015D958 C0 9E 00 44 */ lfs f4, 0x44(r30) -/* 801609FC 0015D95C EC 61 00 B2 */ fmuls f3, f1, f2 -/* 80160A00 0015D960 C0 5E 00 3C */ lfs f2, 0x3c(r30) -/* 80160A04 0015D964 EC E1 01 32 */ fmuls f7, f1, f4 -/* 80160A08 0015D968 C0 BE 00 54 */ lfs f5, 0x54(r30) -/* 80160A0C 0015D96C C0 DE 00 4C */ lfs f6, 0x4c(r30) -/* 80160A10 0015D970 EC 40 00 B2 */ fmuls f2, f0, f2 -/* 80160A14 0015D974 EC 7F 18 28 */ fsubs f3, f31, f3 -/* 80160A18 0015D978 C0 9E 00 5C */ lfs f4, 0x5c(r30) -/* 80160A1C 0015D97C EC A1 01 72 */ fmuls f5, f1, f5 -/* 80160A20 0015D980 EC FE 38 28 */ fsubs f7, f30, f7 -/* 80160A24 0015D984 EC C0 01 B2 */ fmuls f6, f0, f6 -/* 80160A28 0015D988 EC 23 10 2A */ fadds f1, f3, f2 -/* 80160A2C 0015D98C EC 5D 28 28 */ fsubs f2, f29, f5 -/* 80160A30 0015D990 EC 00 01 32 */ fmuls f0, f0, f4 -/* 80160A34 0015D994 EC 67 30 2A */ fadds f3, f7, f6 -/* 80160A38 0015D998 D0 3E 08 0C */ stfs f1, 0x80c(r30) -/* 80160A3C 0015D99C EC 02 00 2A */ fadds f0, f2, f0 -/* 80160A40 0015D9A0 D0 7E 08 10 */ stfs f3, 0x810(r30) -/* 80160A44 0015D9A4 D0 1E 08 14 */ stfs f0, 0x814(r30) -/* 80160A48 0015D9A8 48 00 01 5C */ b lbl_80160BA4 -lbl_80160A4C: -/* 80160A4C 0015D9AC C0 22 9F B8 */ lfs f1, lbl_805ABCD8@sda21(r2) -/* 80160A50 0015D9B0 C0 1E 00 34 */ lfs f0, 0x34(r30) -/* 80160A54 0015D9B4 C0 9E 00 44 */ lfs f4, 0x44(r30) -/* 80160A58 0015D9B8 EC 61 00 32 */ fmuls f3, f1, f0 -/* 80160A5C 0015D9BC C0 02 9F B4 */ lfs f0, lbl_805ABCD4@sda21(r2) -/* 80160A60 0015D9C0 C0 5E 00 3C */ lfs f2, 0x3c(r30) -/* 80160A64 0015D9C4 EC E1 01 32 */ fmuls f7, f1, f4 -/* 80160A68 0015D9C8 C0 9E 00 54 */ lfs f4, 0x54(r30) -/* 80160A6C 0015D9CC C0 DE 00 4C */ lfs f6, 0x4c(r30) -/* 80160A70 0015D9D0 EC A1 01 32 */ fmuls f5, f1, f4 -/* 80160A74 0015D9D4 C0 9E 00 5C */ lfs f4, 0x5c(r30) -/* 80160A78 0015D9D8 EC 7F 18 28 */ fsubs f3, f31, f3 -/* 80160A7C 0015D9DC EC 40 00 B2 */ fmuls f2, f0, f2 -/* 80160A80 0015D9E0 EC FE 38 28 */ fsubs f7, f30, f7 -/* 80160A84 0015D9E4 EC C0 01 B2 */ fmuls f6, f0, f6 -/* 80160A88 0015D9E8 EC 43 10 2A */ fadds f2, f3, f2 -/* 80160A8C 0015D9EC EC BD 28 28 */ fsubs f5, f29, f5 -/* 80160A90 0015D9F0 EC 60 01 32 */ fmuls f3, f0, f4 -/* 80160A94 0015D9F4 EC 87 30 2A */ fadds f4, f7, f6 -/* 80160A98 0015D9F8 D0 5E 07 E4 */ stfs f2, 0x7e4(r30) -/* 80160A9C 0015D9FC EC 45 18 2A */ fadds f2, f5, f3 -/* 80160AA0 0015DA00 D0 9E 07 E8 */ stfs f4, 0x7e8(r30) -/* 80160AA4 0015DA04 D0 5E 07 EC */ stfs f2, 0x7ec(r30) -/* 80160AA8 0015DA08 C0 5E 00 34 */ lfs f2, 0x34(r30) -/* 80160AAC 0015DA0C C0 9E 00 44 */ lfs f4, 0x44(r30) -/* 80160AB0 0015DA10 EC 61 00 B2 */ fmuls f3, f1, f2 -/* 80160AB4 0015DA14 C0 5E 00 3C */ lfs f2, 0x3c(r30) -/* 80160AB8 0015DA18 EC E1 01 32 */ fmuls f7, f1, f4 -/* 80160ABC 0015DA1C C0 BE 00 54 */ lfs f5, 0x54(r30) -/* 80160AC0 0015DA20 C0 DE 00 4C */ lfs f6, 0x4c(r30) -/* 80160AC4 0015DA24 EC 40 00 B2 */ fmuls f2, f0, f2 -/* 80160AC8 0015DA28 EC 7F 18 2A */ fadds f3, f31, f3 -/* 80160ACC 0015DA2C C0 9E 00 5C */ lfs f4, 0x5c(r30) -/* 80160AD0 0015DA30 EC A1 01 72 */ fmuls f5, f1, f5 -/* 80160AD4 0015DA34 EC FE 38 2A */ fadds f7, f30, f7 -/* 80160AD8 0015DA38 EC C0 01 B2 */ fmuls f6, f0, f6 -/* 80160ADC 0015DA3C EC 43 10 28 */ fsubs f2, f3, f2 -/* 80160AE0 0015DA40 EC BD 28 2A */ fadds f5, f29, f5 -/* 80160AE4 0015DA44 EC 60 01 32 */ fmuls f3, f0, f4 -/* 80160AE8 0015DA48 EC 87 30 28 */ fsubs f4, f7, f6 -/* 80160AEC 0015DA4C D0 5E 08 00 */ stfs f2, 0x800(r30) -/* 80160AF0 0015DA50 EC 45 18 28 */ fsubs f2, f5, f3 -/* 80160AF4 0015DA54 D0 9E 08 04 */ stfs f4, 0x804(r30) -/* 80160AF8 0015DA58 D0 5E 08 08 */ stfs f2, 0x808(r30) -/* 80160AFC 0015DA5C C0 5E 00 34 */ lfs f2, 0x34(r30) -/* 80160B00 0015DA60 C0 9E 00 44 */ lfs f4, 0x44(r30) -/* 80160B04 0015DA64 EC 61 00 B2 */ fmuls f3, f1, f2 -/* 80160B08 0015DA68 C0 5E 00 3C */ lfs f2, 0x3c(r30) -/* 80160B0C 0015DA6C EC E1 01 32 */ fmuls f7, f1, f4 -/* 80160B10 0015DA70 C0 BE 00 54 */ lfs f5, 0x54(r30) -/* 80160B14 0015DA74 C0 DE 00 4C */ lfs f6, 0x4c(r30) -/* 80160B18 0015DA78 EC 40 00 B2 */ fmuls f2, f0, f2 -/* 80160B1C 0015DA7C EC 7F 18 2A */ fadds f3, f31, f3 -/* 80160B20 0015DA80 C0 9E 00 5C */ lfs f4, 0x5c(r30) -/* 80160B24 0015DA84 EC A1 01 72 */ fmuls f5, f1, f5 -/* 80160B28 0015DA88 EC FE 38 2A */ fadds f7, f30, f7 -/* 80160B2C 0015DA8C EC C0 01 B2 */ fmuls f6, f0, f6 -/* 80160B30 0015DA90 EC 43 10 2A */ fadds f2, f3, f2 -/* 80160B34 0015DA94 EC BD 28 2A */ fadds f5, f29, f5 -/* 80160B38 0015DA98 EC 60 01 32 */ fmuls f3, f0, f4 -/* 80160B3C 0015DA9C EC 87 30 2A */ fadds f4, f7, f6 -/* 80160B40 0015DAA0 D0 5E 07 F0 */ stfs f2, 0x7f0(r30) -/* 80160B44 0015DAA4 EC 45 18 2A */ fadds f2, f5, f3 -/* 80160B48 0015DAA8 D0 9E 07 F4 */ stfs f4, 0x7f4(r30) -/* 80160B4C 0015DAAC D0 5E 07 F8 */ stfs f2, 0x7f8(r30) -/* 80160B50 0015DAB0 C0 5E 00 34 */ lfs f2, 0x34(r30) -/* 80160B54 0015DAB4 C0 9E 00 44 */ lfs f4, 0x44(r30) -/* 80160B58 0015DAB8 EC 61 00 B2 */ fmuls f3, f1, f2 -/* 80160B5C 0015DABC C0 5E 00 3C */ lfs f2, 0x3c(r30) -/* 80160B60 0015DAC0 EC E1 01 32 */ fmuls f7, f1, f4 -/* 80160B64 0015DAC4 C0 BE 00 54 */ lfs f5, 0x54(r30) -/* 80160B68 0015DAC8 C0 DE 00 4C */ lfs f6, 0x4c(r30) -/* 80160B6C 0015DACC EC 40 00 B2 */ fmuls f2, f0, f2 -/* 80160B70 0015DAD0 EC 7F 18 28 */ fsubs f3, f31, f3 -/* 80160B74 0015DAD4 C0 9E 00 5C */ lfs f4, 0x5c(r30) -/* 80160B78 0015DAD8 EC A1 01 72 */ fmuls f5, f1, f5 -/* 80160B7C 0015DADC EC FE 38 28 */ fsubs f7, f30, f7 -/* 80160B80 0015DAE0 EC C0 01 B2 */ fmuls f6, f0, f6 -/* 80160B84 0015DAE4 EC 23 10 28 */ fsubs f1, f3, f2 -/* 80160B88 0015DAE8 EC 5D 28 28 */ fsubs f2, f29, f5 -/* 80160B8C 0015DAEC EC 00 01 32 */ fmuls f0, f0, f4 -/* 80160B90 0015DAF0 EC 67 30 28 */ fsubs f3, f7, f6 -/* 80160B94 0015DAF4 D0 3E 08 0C */ stfs f1, 0x80c(r30) -/* 80160B98 0015DAF8 EC 02 00 28 */ fsubs f0, f2, f0 -/* 80160B9C 0015DAFC D0 7E 08 10 */ stfs f3, 0x810(r30) -/* 80160BA0 0015DB00 D0 1E 08 14 */ stfs f0, 0x814(r30) -lbl_80160BA4: -/* 80160BA4 0015DB04 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 80160BA8 0015DB08 38 60 00 01 */ li r3, 1 -/* 80160BAC 0015DB0C D0 1E 08 1C */ stfs f0, 0x81c(r30) -/* 80160BB0 0015DB10 D0 1E 08 20 */ stfs f0, 0x820(r30) -/* 80160BB4 0015DB14 88 1E 08 35 */ lbz r0, 0x835(r30) -/* 80160BB8 0015DB18 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80160BBC 0015DB1C 98 1E 08 35 */ stb r0, 0x835(r30) -/* 80160BC0 0015DB20 48 00 01 78 */ b lbl_80160D38 -lbl_80160BC4: -/* 80160BC4 0015DB24 80 1E 07 C8 */ lwz r0, 0x7c8(r30) -/* 80160BC8 0015DB28 2C 00 00 01 */ cmpwi r0, 1 -/* 80160BCC 0015DB2C 41 82 00 D8 */ beq lbl_80160CA4 -/* 80160BD0 0015DB30 40 80 00 EC */ bge lbl_80160CBC -/* 80160BD4 0015DB34 2C 00 00 00 */ cmpwi r0, 0 -/* 80160BD8 0015DB38 40 80 00 08 */ bge lbl_80160BE0 -/* 80160BDC 0015DB3C 48 00 00 E0 */ b lbl_80160CBC -lbl_80160BE0: -/* 80160BE0 0015DB40 81 1E 04 50 */ lwz r8, 0x450(r30) -/* 80160BE4 0015DB44 80 08 02 B8 */ lwz r0, 0x2b8(r8) -/* 80160BE8 0015DB48 2C 00 00 12 */ cmpwi r0, 0x12 -/* 80160BEC 0015DB4C 40 82 00 10 */ bne lbl_80160BFC -/* 80160BF0 0015DB50 38 00 00 01 */ li r0, 1 -/* 80160BF4 0015DB54 90 1E 07 C8 */ stw r0, 0x7c8(r30) -/* 80160BF8 0015DB58 48 00 00 C4 */ b lbl_80160CBC -lbl_80160BFC: -/* 80160BFC 0015DB5C 80 DF 08 4C */ lwz r6, 0x84c(r31) -/* 80160C00 0015DB60 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80160C04 0015DB64 38 83 AA 68 */ addi r4, r3, lbl_803DAA68@l -/* 80160C08 0015DB68 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha -/* 80160C0C 0015DB6C C0 46 00 60 */ lfs f2, 0x60(r6) -/* 80160C10 0015DB70 38 E0 00 06 */ li r7, 6 -/* 80160C14 0015DB74 C0 26 00 50 */ lfs f1, 0x50(r6) -/* 80160C18 0015DB78 38 A0 00 02 */ li r5, 2 -/* 80160C1C 0015DB7C C0 06 00 40 */ lfs f0, 0x40(r6) -/* 80160C20 0015DB80 38 00 00 00 */ li r0, 0 -/* 80160C24 0015DB84 3B E8 00 04 */ addi r31, r8, 4 -/* 80160C28 0015DB88 90 81 00 74 */ stw r4, 0x74(r1) -/* 80160C2C 0015DB8C 38 C3 A9 CC */ addi r6, r3, lbl_803DA9CC@l -/* 80160C30 0015DB90 38 80 00 06 */ li r4, 6 -/* 80160C34 0015DB94 90 E1 00 78 */ stw r7, 0x78(r1) -/* 80160C38 0015DB98 7F E3 FB 78 */ mr r3, r31 -/* 80160C3C 0015DB9C 90 C1 00 74 */ stw r6, 0x74(r1) -/* 80160C40 0015DBA0 90 A1 00 7C */ stw r5, 0x7c(r1) -/* 80160C44 0015DBA4 D0 01 00 80 */ stfs f0, 0x80(r1) -/* 80160C48 0015DBA8 D0 21 00 84 */ stfs f1, 0x84(r1) -/* 80160C4C 0015DBAC D0 41 00 88 */ stfs f2, 0x88(r1) -/* 80160C50 0015DBB0 98 01 00 8C */ stb r0, 0x8c(r1) -/* 80160C54 0015DBB4 4B FD 07 E5 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80160C58 0015DBB8 80 01 00 78 */ lwz r0, 0x78(r1) -/* 80160C5C 0015DBBC 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha -/* 80160C60 0015DBC0 38 83 A9 CC */ addi r4, r3, lbl_803DA9CC@l -/* 80160C64 0015DBC4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80160C68 0015DBC8 90 1F 01 2C */ stw r0, 0x12c(r31) -/* 80160C6C 0015DBCC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 80160C70 0015DBD0 80 61 00 7C */ lwz r3, 0x7c(r1) -/* 80160C74 0015DBD4 80 A1 00 80 */ lwz r5, 0x80(r1) -/* 80160C78 0015DBD8 90 7F 01 30 */ stw r3, 0x130(r31) -/* 80160C7C 0015DBDC 80 61 00 84 */ lwz r3, 0x84(r1) -/* 80160C80 0015DBE0 90 BF 01 34 */ stw r5, 0x134(r31) -/* 80160C84 0015DBE4 80 A1 00 88 */ lwz r5, 0x88(r1) -/* 80160C88 0015DBE8 90 7F 01 38 */ stw r3, 0x138(r31) -/* 80160C8C 0015DBEC 88 61 00 8C */ lbz r3, 0x8c(r1) -/* 80160C90 0015DBF0 90 BF 01 3C */ stw r5, 0x13c(r31) -/* 80160C94 0015DBF4 90 81 00 74 */ stw r4, 0x74(r1) -/* 80160C98 0015DBF8 98 7F 01 40 */ stb r3, 0x140(r31) -/* 80160C9C 0015DBFC 90 01 00 74 */ stw r0, 0x74(r1) -/* 80160CA0 0015DC00 48 00 00 1C */ b lbl_80160CBC -lbl_80160CA4: -/* 80160CA4 0015DC04 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 80160CA8 0015DC08 80 03 02 B8 */ lwz r0, 0x2b8(r3) -/* 80160CAC 0015DC0C 2C 00 00 12 */ cmpwi r0, 0x12 -/* 80160CB0 0015DC10 41 82 00 0C */ beq lbl_80160CBC -/* 80160CB4 0015DC14 38 00 00 02 */ li r0, 2 -/* 80160CB8 0015DC18 90 1E 07 C8 */ stw r0, 0x7c8(r30) -lbl_80160CBC: -/* 80160CBC 0015DC1C C0 3E 06 30 */ lfs f1, 0x630(r30) -/* 80160CC0 0015DC20 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 80160CC4 0015DC24 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80160CC8 0015DC28 4C 40 13 82 */ cror 2, 0, 2 -/* 80160CCC 0015DC2C 40 82 00 6C */ bne lbl_80160D38 -/* 80160CD0 0015DC30 D0 1E 06 34 */ stfs f0, 0x634(r30) -/* 80160CD4 0015DC34 48 00 00 64 */ b lbl_80160D38 -lbl_80160CD8: -/* 80160CD8 0015DC38 38 00 00 00 */ li r0, 0 -/* 80160CDC 0015DC3C 38 A0 00 00 */ li r5, 0 -/* 80160CE0 0015DC40 98 1E 08 28 */ stb r0, 0x828(r30) -/* 80160CE4 0015DC44 38 C0 00 00 */ li r6, 0 -/* 80160CE8 0015DC48 98 1E 08 29 */ stb r0, 0x829(r30) -/* 80160CEC 0015DC4C 48 00 25 B9 */ bl sub_801632a4 -/* 80160CF0 0015DC50 7F C3 F3 78 */ mr r3, r30 -/* 80160CF4 0015DC54 7F E4 FB 78 */ mr r4, r31 -/* 80160CF8 0015DC58 38 A0 00 01 */ li r5, 1 -/* 80160CFC 0015DC5C 38 C0 00 00 */ li r6, 0 -/* 80160D00 0015DC60 48 00 25 A5 */ bl sub_801632a4 -/* 80160D04 0015DC64 7F C3 F3 78 */ mr r3, r30 -/* 80160D08 0015DC68 7F E4 FB 78 */ mr r4, r31 -/* 80160D0C 0015DC6C 81 9E 00 00 */ lwz r12, 0(r30) -/* 80160D10 0015DC70 38 A0 00 00 */ li r5, 0 -/* 80160D14 0015DC74 81 8C 02 D4 */ lwz r12, 0x2d4(r12) -/* 80160D18 0015DC78 7D 89 03 A6 */ mtctr r12 -/* 80160D1C 0015DC7C 4E 80 04 21 */ bctrl -/* 80160D20 0015DC80 C0 1E 05 F4 */ lfs f0, 0x5f4(r30) -/* 80160D24 0015DC84 38 60 00 00 */ li r3, 0 -/* 80160D28 0015DC88 D0 1E 05 D0 */ stfs f0, 0x5d0(r30) -/* 80160D2C 0015DC8C 88 1E 08 35 */ lbz r0, 0x835(r30) -/* 80160D30 0015DC90 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80160D34 0015DC94 98 1E 08 35 */ stb r0, 0x835(r30) -lbl_80160D38: -/* 80160D38 0015DC98 E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 -/* 80160D3C 0015DC9C CB E1 00 C0 */ lfd f31, 0xc0(r1) -/* 80160D40 0015DCA0 E3 C1 00 B8 */ psq_l f30, 184(r1), 0, qr0 -/* 80160D44 0015DCA4 CB C1 00 B0 */ lfd f30, 0xb0(r1) -/* 80160D48 0015DCA8 E3 A1 00 A8 */ psq_l f29, 168(r1), 0, qr0 -/* 80160D4C 0015DCAC CB A1 00 A0 */ lfd f29, 0xa0(r1) -/* 80160D50 0015DCB0 83 E1 00 9C */ lwz r31, 0x9c(r1) -/* 80160D54 0015DCB4 80 01 00 D4 */ lwz r0, 0xd4(r1) -/* 80160D58 0015DCB8 83 C1 00 98 */ lwz r30, 0x98(r1) -/* 80160D5C 0015DCBC 7C 08 03 A6 */ mtlr r0 -/* 80160D60 0015DCC0 38 21 00 D0 */ addi r1, r1, 0xd0 -/* 80160D64 0015DCC4 4E 80 00 20 */ blr - -.global Active__6CDroneFR13CStateManager9EStateMsgf -Active__6CDroneFR13CStateManager9EStateMsgf: -/* 80160D68 0015DCC8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80160D6C 0015DCCC 7C 08 02 A6 */ mflr r0 -/* 80160D70 0015DCD0 2C 05 00 01 */ cmpwi r5, 1 -/* 80160D74 0015DCD4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80160D78 0015DCD8 41 82 00 40 */ beq lbl_80160DB8 -/* 80160D7C 0015DCDC 40 80 00 10 */ bge lbl_80160D8C -/* 80160D80 0015DCE0 2C 05 00 00 */ cmpwi r5, 0 -/* 80160D84 0015DCE4 40 80 00 14 */ bge lbl_80160D98 -/* 80160D88 0015DCE8 48 00 00 30 */ b lbl_80160DB8 -lbl_80160D8C: -/* 80160D8C 0015DCEC 2C 05 00 03 */ cmpwi r5, 3 -/* 80160D90 0015DCF0 40 80 00 28 */ bge lbl_80160DB8 -/* 80160D94 0015DCF4 48 00 00 1C */ b lbl_80160DB0 -lbl_80160D98: -/* 80160D98 0015DCF8 C0 03 05 F0 */ lfs f0, 0x5f0(r3) -/* 80160D9C 0015DCFC 38 80 00 01 */ li r4, 1 -/* 80160DA0 0015DD00 D0 03 03 40 */ stfs f0, 0x340(r3) -/* 80160DA4 0015DD04 80 63 04 50 */ lwz r3, 0x450(r3) -/* 80160DA8 0015DD08 4B FD 9C 31 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -/* 80160DAC 0015DD0C 48 00 00 0C */ b lbl_80160DB8 -lbl_80160DB0: -/* 80160DB0 0015DD10 C0 03 05 F8 */ lfs f0, 0x5f8(r3) -/* 80160DB4 0015DD14 D0 03 05 D0 */ stfs f0, 0x5d0(r3) -lbl_80160DB8: -/* 80160DB8 0015DD18 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80160DBC 0015DD1C 7C 08 03 A6 */ mtlr r0 -/* 80160DC0 0015DD20 38 21 00 10 */ addi r1, r1, 0x10 -/* 80160DC4 0015DD24 4E 80 00 20 */ blr - -.global ProjectileAttack__6CDroneFR13CStateManager9EStateMsgf -ProjectileAttack__6CDroneFR13CStateManager9EStateMsgf: -/* 80160DC8 0015DD28 94 21 FF 10 */ stwu r1, -0xf0(r1) -/* 80160DCC 0015DD2C 7C 08 02 A6 */ mflr r0 -/* 80160DD0 0015DD30 90 01 00 F4 */ stw r0, 0xf4(r1) -/* 80160DD4 0015DD34 DB E1 00 E0 */ stfd f31, 0xe0(r1) -/* 80160DD8 0015DD38 F3 E1 00 E8 */ psq_st f31, 232(r1), 0, qr0 -/* 80160DDC 0015DD3C 93 E1 00 DC */ stw r31, 0xdc(r1) -/* 80160DE0 0015DD40 93 C1 00 D8 */ stw r30, 0xd8(r1) -/* 80160DE4 0015DD44 93 A1 00 D4 */ stw r29, 0xd4(r1) -/* 80160DE8 0015DD48 2C 05 00 01 */ cmpwi r5, 1 -/* 80160DEC 0015DD4C 7C 7D 1B 78 */ mr r29, r3 -/* 80160DF0 0015DD50 7C 9E 23 78 */ mr r30, r4 -/* 80160DF4 0015DD54 41 82 00 D8 */ beq lbl_80160ECC -/* 80160DF8 0015DD58 40 80 00 10 */ bge lbl_80160E08 -/* 80160DFC 0015DD5C 2C 05 00 00 */ cmpwi r5, 0 -/* 80160E00 0015DD60 40 80 00 14 */ bge lbl_80160E14 -/* 80160E04 0015DD64 48 00 04 28 */ b lbl_8016122C -lbl_80160E08: -/* 80160E08 0015DD68 2C 05 00 03 */ cmpwi r5, 3 -/* 80160E0C 0015DD6C 40 80 04 20 */ bge lbl_8016122C -/* 80160E10 0015DD70 48 00 03 A4 */ b lbl_801611B4 -lbl_80160E14: -/* 80160E14 0015DD74 38 00 00 00 */ li r0, 0 -/* 80160E18 0015DD78 C0 02 9F BC */ lfs f0, lbl_805ABCDC@sda21(r2) -/* 80160E1C 0015DD7C 90 1D 07 C8 */ stw r0, 0x7c8(r29) -/* 80160E20 0015DD80 7F C3 F3 78 */ mr r3, r30 -/* 80160E24 0015DD84 38 81 00 2C */ addi r4, r1, 0x2c -/* 80160E28 0015DD88 80 BD 04 50 */ lwz r5, 0x450(r29) -/* 80160E2C 0015DD8C D0 05 02 D4 */ stfs f0, 0x2d4(r5) -/* 80160E30 0015DD90 A0 1D 06 88 */ lhz r0, 0x688(r29) -/* 80160E34 0015DD94 B0 01 00 2C */ sth r0, 0x2c(r1) -/* 80160E38 0015DD98 4B EE B7 3D */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80160E3C 0015DD9C 7C 64 1B 78 */ mr r4, r3 -/* 80160E40 0015DDA0 38 61 00 38 */ addi r3, r1, 0x38 -/* 80160E44 0015DDA4 4B F4 67 31 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" -/* 80160E48 0015DDA8 83 C3 00 04 */ lwz r30, 4(r3) -/* 80160E4C 0015DDAC 28 1E 00 00 */ cmplwi r30, 0 -/* 80160E50 0015DDB0 41 82 00 54 */ beq lbl_80160EA4 -/* 80160E54 0015DDB4 A0 1D 00 08 */ lhz r0, 8(r29) -/* 80160E58 0015DDB8 7F C3 F3 78 */ mr r3, r30 -/* 80160E5C 0015DDBC 38 81 00 28 */ addi r4, r1, 0x28 -/* 80160E60 0015DDC0 B0 01 00 24 */ sth r0, 0x24(r1) -/* 80160E64 0015DDC4 B0 01 00 28 */ sth r0, 0x28(r1) -/* 80160E68 0015DDC8 48 0D 82 9D */ bl HasTeamAiRole__10CTeamAiMgrCF9TUniqueId -/* 80160E6C 0015DDCC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80160E70 0015DDD0 41 82 00 34 */ beq lbl_80160EA4 -/* 80160E74 0015DDD4 A0 1D 00 08 */ lhz r0, 8(r29) -/* 80160E78 0015DDD8 7F C3 F3 78 */ mr r3, r30 -/* 80160E7C 0015DDDC 38 81 00 20 */ addi r4, r1, 0x20 -/* 80160E80 0015DDE0 B0 01 00 1C */ sth r0, 0x1c(r1) -/* 80160E84 0015DDE4 B0 01 00 20 */ sth r0, 0x20(r1) -/* 80160E88 0015DDE8 48 0D 77 3D */ bl AddProjectileAttacker__10CTeamAiMgrF9TUniqueId -/* 80160E8C 0015DDEC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80160E90 0015DDF0 38 60 00 02 */ li r3, 2 -/* 80160E94 0015DDF4 41 82 00 08 */ beq lbl_80160E9C -/* 80160E98 0015DDF8 38 60 00 00 */ li r3, 0 -lbl_80160E9C: -/* 80160E9C 0015DDFC 90 7D 07 C8 */ stw r3, 0x7c8(r29) -/* 80160EA0 0015DE00 48 00 00 0C */ b lbl_80160EAC -lbl_80160EA4: -/* 80160EA4 0015DE04 38 00 00 00 */ li r0, 0 -/* 80160EA8 0015DE08 90 1D 07 C8 */ stw r0, 0x7c8(r29) -lbl_80160EAC: -/* 80160EAC 0015DE0C A8 9D 08 30 */ lha r4, 0x830(r29) -/* 80160EB0 0015DE10 38 60 00 01 */ li r3, 1 -/* 80160EB4 0015DE14 38 04 00 01 */ addi r0, r4, 1 -/* 80160EB8 0015DE18 B0 1D 08 30 */ sth r0, 0x830(r29) -/* 80160EBC 0015DE1C 88 1D 08 34 */ lbz r0, 0x834(r29) -/* 80160EC0 0015DE20 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 80160EC4 0015DE24 98 1D 08 34 */ stb r0, 0x834(r29) -/* 80160EC8 0015DE28 48 00 03 64 */ b lbl_8016122C -lbl_80160ECC: -/* 80160ECC 0015DE2C 80 1D 07 C8 */ lwz r0, 0x7c8(r29) -/* 80160ED0 0015DE30 2C 00 00 01 */ cmpwi r0, 1 -/* 80160ED4 0015DE34 41 82 00 E8 */ beq lbl_80160FBC -/* 80160ED8 0015DE38 40 80 02 70 */ bge lbl_80161148 -/* 80160EDC 0015DE3C 2C 00 00 00 */ cmpwi r0, 0 -/* 80160EE0 0015DE40 40 80 00 08 */ bge lbl_80160EE8 -/* 80160EE4 0015DE44 48 00 02 64 */ b lbl_80161148 -lbl_80160EE8: -/* 80160EE8 0015DE48 81 1D 04 50 */ lwz r8, 0x450(r29) -/* 80160EEC 0015DE4C 80 08 02 B8 */ lwz r0, 0x2b8(r8) -/* 80160EF0 0015DE50 2C 00 00 12 */ cmpwi r0, 0x12 -/* 80160EF4 0015DE54 40 82 00 10 */ bne lbl_80160F04 -/* 80160EF8 0015DE58 38 00 00 01 */ li r0, 1 -/* 80160EFC 0015DE5C 90 1D 07 C8 */ stw r0, 0x7c8(r29) -/* 80160F00 0015DE60 48 00 02 48 */ b lbl_80161148 -lbl_80160F04: -/* 80160F04 0015DE64 88 1D 08 34 */ lbz r0, 0x834(r29) -/* 80160F08 0015DE68 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80160F0C 0015DE6C 80 DE 08 4C */ lwz r6, 0x84c(r30) -/* 80160F10 0015DE70 38 83 AA 68 */ addi r4, r3, lbl_803DAA68@l -/* 80160F14 0015DE74 54 05 E7 FE */ rlwinm r5, r0, 0x1c, 0x1f, 0x1f -/* 80160F18 0015DE78 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha -/* 80160F1C 0015DE7C 7C 05 00 D0 */ neg r0, r5 -/* 80160F20 0015DE80 C0 46 00 60 */ lfs f2, 0x60(r6) -/* 80160F24 0015DE84 7C 00 2B 78 */ or r0, r0, r5 -/* 80160F28 0015DE88 C0 26 00 50 */ lfs f1, 0x50(r6) -/* 80160F2C 0015DE8C C0 06 00 40 */ lfs f0, 0x40(r6) -/* 80160F30 0015DE90 54 07 0F FE */ srwi r7, r0, 0x1f -/* 80160F34 0015DE94 38 C0 00 06 */ li r6, 6 -/* 80160F38 0015DE98 38 00 00 00 */ li r0, 0 -/* 80160F3C 0015DE9C 3B E8 00 04 */ addi r31, r8, 4 -/* 80160F40 0015DEA0 90 81 00 AC */ stw r4, 0xac(r1) -/* 80160F44 0015DEA4 38 A3 A9 CC */ addi r5, r3, lbl_803DA9CC@l -/* 80160F48 0015DEA8 38 80 00 06 */ li r4, 6 -/* 80160F4C 0015DEAC 90 C1 00 B0 */ stw r6, 0xb0(r1) -/* 80160F50 0015DEB0 7F E3 FB 78 */ mr r3, r31 -/* 80160F54 0015DEB4 90 A1 00 AC */ stw r5, 0xac(r1) -/* 80160F58 0015DEB8 90 E1 00 B4 */ stw r7, 0xb4(r1) -/* 80160F5C 0015DEBC D0 01 00 B8 */ stfs f0, 0xb8(r1) -/* 80160F60 0015DEC0 D0 21 00 BC */ stfs f1, 0xbc(r1) -/* 80160F64 0015DEC4 D0 41 00 C0 */ stfs f2, 0xc0(r1) -/* 80160F68 0015DEC8 98 01 00 C4 */ stb r0, 0xc4(r1) -/* 80160F6C 0015DECC 4B FD 04 CD */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80160F70 0015DED0 80 01 00 B0 */ lwz r0, 0xb0(r1) -/* 80160F74 0015DED4 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha -/* 80160F78 0015DED8 38 83 A9 CC */ addi r4, r3, lbl_803DA9CC@l -/* 80160F7C 0015DEDC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80160F80 0015DEE0 90 1F 01 2C */ stw r0, 0x12c(r31) -/* 80160F84 0015DEE4 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 80160F88 0015DEE8 80 61 00 B4 */ lwz r3, 0xb4(r1) -/* 80160F8C 0015DEEC 80 A1 00 B8 */ lwz r5, 0xb8(r1) -/* 80160F90 0015DEF0 90 7F 01 30 */ stw r3, 0x130(r31) -/* 80160F94 0015DEF4 80 61 00 BC */ lwz r3, 0xbc(r1) -/* 80160F98 0015DEF8 90 BF 01 34 */ stw r5, 0x134(r31) -/* 80160F9C 0015DEFC 80 A1 00 C0 */ lwz r5, 0xc0(r1) -/* 80160FA0 0015DF00 90 7F 01 38 */ stw r3, 0x138(r31) -/* 80160FA4 0015DF04 88 61 00 C4 */ lbz r3, 0xc4(r1) -/* 80160FA8 0015DF08 90 BF 01 3C */ stw r5, 0x13c(r31) -/* 80160FAC 0015DF0C 90 81 00 AC */ stw r4, 0xac(r1) -/* 80160FB0 0015DF10 98 7F 01 40 */ stb r3, 0x140(r31) -/* 80160FB4 0015DF14 90 01 00 AC */ stw r0, 0xac(r1) -/* 80160FB8 0015DF18 48 00 01 90 */ b lbl_80161148 -lbl_80160FBC: -/* 80160FBC 0015DF1C 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 80160FC0 0015DF20 80 03 02 B8 */ lwz r0, 0x2b8(r3) -/* 80160FC4 0015DF24 2C 00 00 12 */ cmpwi r0, 0x12 -/* 80160FC8 0015DF28 41 82 00 0C */ beq lbl_80160FD4 -/* 80160FCC 0015DF2C 38 00 00 02 */ li r0, 2 -/* 80160FD0 0015DF30 90 1D 07 C8 */ stw r0, 0x7c8(r29) -lbl_80160FD4: -/* 80160FD4 0015DF34 80 9E 08 4C */ lwz r4, 0x84c(r30) -/* 80160FD8 0015DF38 7F C5 F3 78 */ mr r5, r30 -/* 80160FDC 0015DF3C 38 61 00 88 */ addi r3, r1, 0x88 -/* 80160FE0 0015DF40 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 80160FE4 0015DF44 81 84 00 00 */ lwz r12, 0(r4) -/* 80160FE8 0015DF48 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 80160FEC 0015DF4C 7D 89 03 A6 */ mtctr r12 -/* 80160FF0 0015DF50 4E 80 04 21 */ bctrl -/* 80160FF4 0015DF54 C0 5D 00 60 */ lfs f2, 0x60(r29) -/* 80160FF8 0015DF58 C0 61 00 90 */ lfs f3, 0x90(r1) -/* 80160FFC 0015DF5C C0 3D 00 50 */ lfs f1, 0x50(r29) -/* 80161000 0015DF60 C0 1D 00 40 */ lfs f0, 0x40(r29) -/* 80161004 0015DF64 EF E3 10 28 */ fsubs f31, f3, f2 -/* 80161008 0015DF68 C0 9D 06 68 */ lfs f4, 0x668(r29) -/* 8016100C 0015DF6C C0 7D 06 64 */ lfs f3, 0x664(r29) -/* 80161010 0015DF70 D0 01 00 7C */ stfs f0, 0x7c(r1) -/* 80161014 0015DF74 FC 04 18 40 */ fcmpo cr0, f4, f3 -/* 80161018 0015DF78 D0 21 00 80 */ stfs f1, 0x80(r1) -/* 8016101C 0015DF7C D0 41 00 84 */ stfs f2, 0x84(r1) -/* 80161020 0015DF80 40 80 00 10 */ bge lbl_80161030 -/* 80161024 0015DF84 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 80161028 0015DF88 FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 8016102C 0015DF8C 41 81 00 0C */ bgt lbl_80161038 -lbl_80161030: -/* 80161030 0015DF90 FC 04 18 40 */ fcmpo cr0, f4, f3 -/* 80161034 0015DF94 40 81 01 0C */ ble lbl_80161140 -lbl_80161038: -/* 80161038 0015DF98 C0 1D 06 20 */ lfs f0, 0x620(r29) -/* 8016103C 0015DF9C FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 80161040 0015DFA0 41 81 00 10 */ bgt lbl_80161050 -/* 80161044 0015DFA4 FC 00 00 50 */ fneg f0, f0 -/* 80161048 0015DFA8 FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 8016104C 0015DFAC 40 80 00 B0 */ bge lbl_801610FC -lbl_80161050: -/* 80161050 0015DFB0 FC 20 FA 10 */ fabs f1, f31 -/* 80161054 0015DFB4 C0 02 9F B8 */ lfs f0, lbl_805ABCD8@sda21(r2) -/* 80161058 0015DFB8 FC 20 08 18 */ frsp f1, f1 -/* 8016105C 0015DFBC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80161060 0015DFC0 40 81 00 0C */ ble lbl_8016106C -/* 80161064 0015DFC4 C0 22 9F 7C */ lfs f1, lbl_805ABC9C@sda21(r2) -/* 80161068 0015DFC8 48 00 00 0C */ b lbl_80161074 -lbl_8016106C: -/* 8016106C 0015DFCC C0 02 9F 78 */ lfs f0, lbl_805ABC98@sda21(r2) -/* 80161070 0015DFD0 EC 20 00 72 */ fmuls f1, f0, f1 -lbl_80161074: -/* 80161074 0015DFD4 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 80161078 0015DFD8 C0 7D 05 E4 */ lfs f3, 0x5e4(r29) -/* 8016107C 0015DFDC FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 80161080 0015DFE0 40 80 00 08 */ bge lbl_80161088 -/* 80161084 0015DFE4 FC 20 08 50 */ fneg f1, f1 -lbl_80161088: -/* 80161088 0015DFE8 C0 42 9F 68 */ lfs f2, lbl_805ABC88@sda21(r2) -/* 8016108C 0015DFEC EC 03 00 72 */ fmuls f0, f3, f1 -/* 80161090 0015DFF0 C0 22 9F 7C */ lfs f1, lbl_805ABC9C@sda21(r2) -/* 80161094 0015DFF4 38 61 00 64 */ addi r3, r1, 0x64 -/* 80161098 0015DFF8 EC 43 00 B2 */ fmuls f2, f3, f2 -/* 8016109C 0015DFFC 38 9D 00 34 */ addi r4, r29, 0x34 -/* 801610A0 0015E000 EC 01 00 32 */ fmuls f0, f1, f0 -/* 801610A4 0015E004 38 A1 00 A0 */ addi r5, r1, 0xa0 -/* 801610A8 0015E008 EC 21 00 B2 */ fmuls f1, f1, f2 -/* 801610AC 0015E00C D0 01 00 A8 */ stfs f0, 0xa8(r1) -/* 801610B0 0015E010 D0 21 00 A0 */ stfs f1, 0xa0(r1) -/* 801610B4 0015E014 D0 21 00 A4 */ stfs f1, 0xa4(r1) -/* 801610B8 0015E018 48 1B 19 6D */ bl TransposeRotate__12CTransform4fCFRC9CVector3f -/* 801610BC 0015E01C C0 22 9F 7C */ lfs f1, lbl_805ABC9C@sda21(r2) -/* 801610C0 0015E020 7F A4 EB 78 */ mr r4, r29 -/* 801610C4 0015E024 38 61 00 70 */ addi r3, r1, 0x70 -/* 801610C8 0015E028 38 A1 00 64 */ addi r5, r1, 0x64 -/* 801610CC 0015E02C 4B FB 9F 3D */ bl GetMoveToORImpulseWR__13CPhysicsActorCFRC9CVector3ff -/* 801610D0 0015E030 C0 41 00 70 */ lfs f2, 0x70(r1) -/* 801610D4 0015E034 C0 21 00 74 */ lfs f1, 0x74(r1) -/* 801610D8 0015E038 C0 01 00 78 */ lfs f0, 0x78(r1) -/* 801610DC 0015E03C D0 41 00 94 */ stfs f2, 0x94(r1) -/* 801610E0 0015E040 D0 21 00 98 */ stfs f1, 0x98(r1) -/* 801610E4 0015E044 D0 01 00 9C */ stfs f0, 0x9c(r1) -/* 801610E8 0015E048 4B EB A4 4D */ bl Identity__10CAxisAngleFv -/* 801610EC 0015E04C 7C 65 1B 78 */ mr r5, r3 -/* 801610F0 0015E050 7F A3 EB 78 */ mr r3, r29 -/* 801610F4 0015E054 38 81 00 94 */ addi r4, r1, 0x94 -/* 801610F8 0015E058 4B FB B2 A1 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle -lbl_801610FC: -/* 801610FC 0015E05C C0 3D 06 30 */ lfs f1, 0x630(r29) -/* 80161100 0015E060 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 80161104 0015E064 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80161108 0015E068 4C 40 13 82 */ cror 2, 0, 2 -/* 8016110C 0015E06C 40 82 00 3C */ bne lbl_80161148 -/* 80161110 0015E070 C0 02 9F C0 */ lfs f0, lbl_805ABCE0@sda21(r2) -/* 80161114 0015E074 FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 80161118 0015E078 41 81 00 10 */ bgt lbl_80161128 -/* 8016111C 0015E07C C0 02 9F C4 */ lfs f0, lbl_805ABCE4@sda21(r2) -/* 80161120 0015E080 FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 80161124 0015E084 40 80 00 10 */ bge lbl_80161134 -lbl_80161128: -/* 80161128 0015E088 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 8016112C 0015E08C D0 1D 06 34 */ stfs f0, 0x634(r29) -/* 80161130 0015E090 48 00 00 18 */ b lbl_80161148 -lbl_80161134: -/* 80161134 0015E094 C0 02 9F A8 */ lfs f0, lbl_805ABCC8@sda21(r2) -/* 80161138 0015E098 D0 1D 06 34 */ stfs f0, 0x634(r29) -/* 8016113C 0015E09C 48 00 00 0C */ b lbl_80161148 -lbl_80161140: -/* 80161140 0015E0A0 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 80161144 0015E0A4 D0 1D 06 34 */ stfs f0, 0x634(r29) -lbl_80161148: -/* 80161148 0015E0A8 80 BE 08 4C */ lwz r5, 0x84c(r30) -/* 8016114C 0015E0AC 38 61 00 58 */ addi r3, r1, 0x58 -/* 80161150 0015E0B0 C0 1D 00 60 */ lfs f0, 0x60(r29) -/* 80161154 0015E0B4 38 81 00 4C */ addi r4, r1, 0x4c -/* 80161158 0015E0B8 C0 A5 00 60 */ lfs f5, 0x60(r5) -/* 8016115C 0015E0BC C0 85 00 50 */ lfs f4, 0x50(r5) -/* 80161160 0015E0C0 C0 5D 00 50 */ lfs f2, 0x50(r29) -/* 80161164 0015E0C4 EC 25 00 28 */ fsubs f1, f5, f0 -/* 80161168 0015E0C8 C0 05 00 40 */ lfs f0, 0x40(r5) -/* 8016116C 0015E0CC C0 7D 00 40 */ lfs f3, 0x40(r29) -/* 80161170 0015E0D0 EC 44 10 28 */ fsubs f2, f4, f2 -/* 80161174 0015E0D4 D0 01 00 40 */ stfs f0, 0x40(r1) -/* 80161178 0015E0D8 EC 00 18 28 */ fsubs f0, f0, f3 -/* 8016117C 0015E0DC D0 81 00 44 */ stfs f4, 0x44(r1) -/* 80161180 0015E0E0 D0 A1 00 48 */ stfs f5, 0x48(r1) -/* 80161184 0015E0E4 D0 01 00 4C */ stfs f0, 0x4c(r1) -/* 80161188 0015E0E8 D0 41 00 50 */ stfs f2, 0x50(r1) -/* 8016118C 0015E0EC D0 21 00 54 */ stfs f1, 0x54(r1) -/* 80161190 0015E0F0 48 1B 36 C1 */ bl AsNormalized__9CVector3fCFv -/* 80161194 0015E0F4 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 80161198 0015E0F8 C0 01 00 58 */ lfs f0, 0x58(r1) -/* 8016119C 0015E0FC D0 03 00 1C */ stfs f0, 0x1c(r3) -/* 801611A0 0015E100 C0 01 00 5C */ lfs f0, 0x5c(r1) -/* 801611A4 0015E104 D0 03 00 20 */ stfs f0, 0x20(r3) -/* 801611A8 0015E108 C0 01 00 60 */ lfs f0, 0x60(r1) -/* 801611AC 0015E10C D0 03 00 24 */ stfs f0, 0x24(r3) -/* 801611B0 0015E110 48 00 00 7C */ b lbl_8016122C -lbl_801611B4: -/* 801611B4 0015E114 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 801611B8 0015E118 7F C3 F3 78 */ mr r3, r30 -/* 801611BC 0015E11C 80 BD 04 50 */ lwz r5, 0x450(r29) -/* 801611C0 0015E120 38 81 00 18 */ addi r4, r1, 0x18 -/* 801611C4 0015E124 D0 05 02 D4 */ stfs f0, 0x2d4(r5) -/* 801611C8 0015E128 A0 1D 06 88 */ lhz r0, 0x688(r29) -/* 801611CC 0015E12C B0 01 00 18 */ sth r0, 0x18(r1) -/* 801611D0 0015E130 4B EE B3 A5 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 801611D4 0015E134 7C 64 1B 78 */ mr r4, r3 -/* 801611D8 0015E138 38 61 00 30 */ addi r3, r1, 0x30 -/* 801611DC 0015E13C 4B F4 63 99 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" -/* 801611E0 0015E140 83 C3 00 04 */ lwz r30, 4(r3) -/* 801611E4 0015E144 28 1E 00 00 */ cmplwi r30, 0 -/* 801611E8 0015E148 41 82 00 3C */ beq lbl_80161224 -/* 801611EC 0015E14C A0 1D 00 08 */ lhz r0, 8(r29) -/* 801611F0 0015E150 7F C3 F3 78 */ mr r3, r30 -/* 801611F4 0015E154 38 81 00 14 */ addi r4, r1, 0x14 -/* 801611F8 0015E158 B0 01 00 10 */ sth r0, 0x10(r1) -/* 801611FC 0015E15C B0 01 00 14 */ sth r0, 0x14(r1) -/* 80161200 0015E160 48 0D 79 01 */ bl IsProjectileAttacker__10CTeamAiMgrCF9TUniqueId -/* 80161204 0015E164 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80161208 0015E168 41 82 00 1C */ beq lbl_80161224 -/* 8016120C 0015E16C A0 1D 00 08 */ lhz r0, 8(r29) -/* 80161210 0015E170 7F C3 F3 78 */ mr r3, r30 -/* 80161214 0015E174 38 81 00 0C */ addi r4, r1, 0xc -/* 80161218 0015E178 B0 01 00 08 */ sth r0, 8(r1) -/* 8016121C 0015E17C B0 01 00 0C */ sth r0, 0xc(r1) -/* 80161220 0015E180 48 0D 72 C5 */ bl RemoveProjectileAttacker__10CTeamAiMgrF9TUniqueId -lbl_80161224: -/* 80161224 0015E184 C0 1D 05 FC */ lfs f0, 0x5fc(r29) -/* 80161228 0015E188 D0 1D 06 24 */ stfs f0, 0x624(r29) -lbl_8016122C: -/* 8016122C 0015E18C E3 E1 00 E8 */ psq_l f31, 232(r1), 0, qr0 -/* 80161230 0015E190 80 01 00 F4 */ lwz r0, 0xf4(r1) -/* 80161234 0015E194 CB E1 00 E0 */ lfd f31, 0xe0(r1) -/* 80161238 0015E198 83 E1 00 DC */ lwz r31, 0xdc(r1) -/* 8016123C 0015E19C 83 C1 00 D8 */ lwz r30, 0xd8(r1) -/* 80161240 0015E1A0 83 A1 00 D4 */ lwz r29, 0xd4(r1) -/* 80161244 0015E1A4 7C 08 03 A6 */ mtlr r0 -/* 80161248 0015E1A8 38 21 00 F0 */ addi r1, r1, 0xf0 -/* 8016124C 0015E1AC 4E 80 00 20 */ blr - -.global sub_80161250 -sub_80161250: -/* 80161250 0015E1B0 80 03 07 C8 */ lwz r0, 0x7c8(r3) -/* 80161254 0015E1B4 20 00 00 02 */ subfic r0, r0, 2 -/* 80161258 0015E1B8 7C 00 00 34 */ cntlzw r0, r0 -/* 8016125C 0015E1BC 54 03 D9 7E */ srwi r3, r0, 5 -/* 80161260 0015E1C0 4E 80 00 20 */ blr - -.global TelegraphAttack__6CDroneFR13CStateManager9EStateMsgf -TelegraphAttack__6CDroneFR13CStateManager9EStateMsgf: -/* 80161264 0015E1C4 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80161268 0015E1C8 7C 08 02 A6 */ mflr r0 -/* 8016126C 0015E1CC 2C 05 00 01 */ cmpwi r5, 1 -/* 80161270 0015E1D0 90 01 00 24 */ stw r0, 0x24(r1) -/* 80161274 0015E1D4 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80161278 0015E1D8 41 82 00 2C */ beq lbl_801612A4 -/* 8016127C 0015E1DC 40 80 00 10 */ bge lbl_8016128C -/* 80161280 0015E1E0 2C 05 00 00 */ cmpwi r5, 0 -/* 80161284 0015E1E4 40 80 00 14 */ bge lbl_80161298 -/* 80161288 0015E1E8 48 00 00 E8 */ b lbl_80161370 -lbl_8016128C: -/* 8016128C 0015E1EC 2C 05 00 03 */ cmpwi r5, 3 -/* 80161290 0015E1F0 40 80 00 E0 */ bge lbl_80161370 -/* 80161294 0015E1F4 48 00 00 CC */ b lbl_80161360 -lbl_80161298: -/* 80161298 0015E1F8 38 00 00 00 */ li r0, 0 -/* 8016129C 0015E1FC 90 03 07 C8 */ stw r0, 0x7c8(r3) -/* 801612A0 0015E200 48 00 00 D0 */ b lbl_80161370 -lbl_801612A4: -/* 801612A4 0015E204 80 03 07 C8 */ lwz r0, 0x7c8(r3) -/* 801612A8 0015E208 2C 00 00 01 */ cmpwi r0, 1 -/* 801612AC 0015E20C 41 82 00 98 */ beq lbl_80161344 -/* 801612B0 0015E210 40 80 00 C0 */ bge lbl_80161370 -/* 801612B4 0015E214 2C 00 00 00 */ cmpwi r0, 0 -/* 801612B8 0015E218 40 80 00 0C */ bge lbl_801612C4 -/* 801612BC 0015E21C 48 00 00 B4 */ b lbl_80161370 -/* 801612C0 0015E220 48 00 00 B0 */ b lbl_80161370 -lbl_801612C4: -/* 801612C4 0015E224 80 C3 04 50 */ lwz r6, 0x450(r3) -/* 801612C8 0015E228 80 06 02 B8 */ lwz r0, 0x2b8(r6) -/* 801612CC 0015E22C 2C 00 00 10 */ cmpwi r0, 0x10 -/* 801612D0 0015E230 40 82 00 10 */ bne lbl_801612E0 -/* 801612D4 0015E234 38 00 00 01 */ li r0, 1 -/* 801612D8 0015E238 90 03 07 C8 */ stw r0, 0x7c8(r3) -/* 801612DC 0015E23C 48 00 00 94 */ b lbl_80161370 -lbl_801612E0: -/* 801612E0 0015E240 3C 80 80 3E */ lis r4, lbl_803DAA68@ha -/* 801612E4 0015E244 3C 60 80 3E */ lis r3, lbl_803DAA14@ha -/* 801612E8 0015E248 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l -/* 801612EC 0015E24C 38 80 00 12 */ li r4, 0x12 -/* 801612F0 0015E250 90 01 00 08 */ stw r0, 8(r1) -/* 801612F4 0015E254 38 A3 AA 14 */ addi r5, r3, lbl_803DAA14@l -/* 801612F8 0015E258 38 00 00 01 */ li r0, 1 -/* 801612FC 0015E25C 3B E6 00 04 */ addi r31, r6, 4 -/* 80161300 0015E260 90 81 00 0C */ stw r4, 0xc(r1) -/* 80161304 0015E264 7F E3 FB 78 */ mr r3, r31 -/* 80161308 0015E268 38 80 00 12 */ li r4, 0x12 -/* 8016130C 0015E26C 90 A1 00 08 */ stw r5, 8(r1) -/* 80161310 0015E270 90 01 00 10 */ stw r0, 0x10(r1) -/* 80161314 0015E274 4B FD 01 25 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80161318 0015E278 80 01 00 0C */ lwz r0, 0xc(r1) -/* 8016131C 0015E27C 3C 60 80 3E */ lis r3, lbl_803DAA14@ha -/* 80161320 0015E280 38 83 AA 14 */ addi r4, r3, lbl_803DAA14@l -/* 80161324 0015E284 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80161328 0015E288 90 1F 02 14 */ stw r0, 0x214(r31) -/* 8016132C 0015E28C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 80161330 0015E290 80 61 00 10 */ lwz r3, 0x10(r1) -/* 80161334 0015E294 90 81 00 08 */ stw r4, 8(r1) -/* 80161338 0015E298 90 7F 02 18 */ stw r3, 0x218(r31) -/* 8016133C 0015E29C 90 01 00 08 */ stw r0, 8(r1) -/* 80161340 0015E2A0 48 00 00 30 */ b lbl_80161370 -lbl_80161344: -/* 80161344 0015E2A4 80 83 04 50 */ lwz r4, 0x450(r3) -/* 80161348 0015E2A8 80 04 02 B8 */ lwz r0, 0x2b8(r4) -/* 8016134C 0015E2AC 2C 00 00 10 */ cmpwi r0, 0x10 -/* 80161350 0015E2B0 41 82 00 20 */ beq lbl_80161370 -/* 80161354 0015E2B4 38 00 00 02 */ li r0, 2 -/* 80161358 0015E2B8 90 03 07 C8 */ stw r0, 0x7c8(r3) -/* 8016135C 0015E2BC 48 00 00 14 */ b lbl_80161370 -lbl_80161360: -/* 80161360 0015E2C0 7C 85 23 78 */ mr r5, r4 -/* 80161364 0015E2C4 38 80 00 09 */ li r4, 9 -/* 80161368 0015E2C8 38 C0 FF FF */ li r6, -1 -/* 8016136C 0015E2CC 4B EE FD 55 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -lbl_80161370: -/* 80161370 0015E2D0 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80161374 0015E2D4 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80161378 0015E2D8 7C 08 03 A6 */ mtlr r0 -/* 8016137C 0015E2DC 38 21 00 20 */ addi r1, r1, 0x20 -/* 80161380 0015E2E0 4E 80 00 20 */ blr - -.global Flee__6CDroneFR13CStateManager9EStateMsgf -Flee__6CDroneFR13CStateManager9EStateMsgf: -/* 80161384 0015E2E4 94 21 FF 10 */ stwu r1, -0xf0(r1) -/* 80161388 0015E2E8 7C 08 02 A6 */ mflr r0 -/* 8016138C 0015E2EC 2C 05 00 01 */ cmpwi r5, 1 -/* 80161390 0015E2F0 90 01 00 F4 */ stw r0, 0xf4(r1) -/* 80161394 0015E2F4 93 E1 00 EC */ stw r31, 0xec(r1) -/* 80161398 0015E2F8 93 C1 00 E8 */ stw r30, 0xe8(r1) -/* 8016139C 0015E2FC 7C 9E 23 78 */ mr r30, r4 -/* 801613A0 0015E300 93 A1 00 E4 */ stw r29, 0xe4(r1) -/* 801613A4 0015E304 7C 7D 1B 78 */ mr r29, r3 -/* 801613A8 0015E308 41 82 01 08 */ beq lbl_801614B0 -/* 801613AC 0015E30C 40 80 03 40 */ bge lbl_801616EC -/* 801613B0 0015E310 2C 05 00 00 */ cmpwi r5, 0 -/* 801613B4 0015E314 40 80 00 0C */ bge lbl_801613C0 -/* 801613B8 0015E318 48 00 03 34 */ b lbl_801616EC -/* 801613BC 0015E31C 48 00 03 30 */ b lbl_801616EC -lbl_801613C0: -/* 801613C0 0015E320 38 A0 00 00 */ li r5, 0 -/* 801613C4 0015E324 38 60 00 00 */ li r3, 0 -/* 801613C8 0015E328 90 BD 07 C8 */ stw r5, 0x7c8(r29) -/* 801613CC 0015E32C 38 80 00 01 */ li r4, 1 -/* 801613D0 0015E330 88 1D 08 32 */ lbz r0, 0x832(r29) -/* 801613D4 0015E334 50 A0 2E 34 */ rlwimi r0, r5, 5, 0x18, 0x1a -/* 801613D8 0015E338 98 1D 08 32 */ stb r0, 0x832(r29) -/* 801613DC 0015E33C 80 AD 8D 80 */ lwz r5, lbl_805A7940@sda21(r13) -/* 801613E0 0015E340 48 22 8B 15 */ bl __shl2i -/* 801613E4 0015E344 39 00 00 01 */ li r8, 1 -/* 801613E8 0015E348 38 00 00 00 */ li r0, 0 -/* 801613EC 0015E34C 90 81 00 9C */ stw r4, 0x9c(r1) -/* 801613F0 0015E350 7F C4 F3 78 */ mr r4, r30 -/* 801613F4 0015E354 C0 22 9F B8 */ lfs f1, lbl_805ABCD8@sda21(r2) -/* 801613F8 0015E358 38 A1 00 74 */ addi r5, r1, 0x74 -/* 801613FC 0015E35C 90 61 00 98 */ stw r3, 0x98(r1) -/* 80161400 0015E360 38 61 00 B0 */ addi r3, r1, 0xb0 -/* 80161404 0015E364 38 C1 00 68 */ addi r6, r1, 0x68 -/* 80161408 0015E368 38 E1 00 98 */ addi r7, r1, 0x98 -/* 8016140C 0015E36C 90 01 00 A4 */ stw r0, 0xa4(r1) -/* 80161410 0015E370 90 01 00 A0 */ stw r0, 0xa0(r1) -/* 80161414 0015E374 91 01 00 A8 */ stw r8, 0xa8(r1) -/* 80161418 0015E378 C0 DD 00 58 */ lfs f6, 0x58(r29) -/* 8016141C 0015E37C C0 BD 00 48 */ lfs f5, 0x48(r29) -/* 80161420 0015E380 C0 9D 00 38 */ lfs f4, 0x38(r29) -/* 80161424 0015E384 FC 00 30 50 */ fneg f0, f6 -/* 80161428 0015E388 FC 40 28 50 */ fneg f2, f5 -/* 8016142C 0015E38C 91 01 00 90 */ stw r8, 0x90(r1) -/* 80161430 0015E390 FC 60 20 50 */ fneg f3, f4 -/* 80161434 0015E394 D0 01 00 70 */ stfs f0, 0x70(r1) -/* 80161438 0015E398 D0 61 00 68 */ stfs f3, 0x68(r1) -/* 8016143C 0015E39C D0 41 00 6C */ stfs f2, 0x6c(r1) -/* 80161440 0015E3A0 C0 7D 00 60 */ lfs f3, 0x60(r29) -/* 80161444 0015E3A4 C0 5D 00 50 */ lfs f2, 0x50(r29) -/* 80161448 0015E3A8 C0 1D 00 40 */ lfs f0, 0x40(r29) -/* 8016144C 0015E3AC D0 81 00 5C */ stfs f4, 0x5c(r1) -/* 80161450 0015E3B0 D0 A1 00 60 */ stfs f5, 0x60(r1) -/* 80161454 0015E3B4 D0 C1 00 64 */ stfs f6, 0x64(r1) -/* 80161458 0015E3B8 D0 01 00 74 */ stfs f0, 0x74(r1) -/* 8016145C 0015E3BC D0 41 00 78 */ stfs f2, 0x78(r1) -/* 80161460 0015E3C0 D0 61 00 7C */ stfs f3, 0x7c(r1) -/* 80161464 0015E3C4 4B EE BB 35 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter -/* 80161468 0015E3C8 88 01 00 D0 */ lbz r0, 0xd0(r1) -/* 8016146C 0015E3CC 28 00 00 00 */ cmplwi r0, 0 -/* 80161470 0015E3D0 41 82 02 7C */ beq lbl_801616EC -/* 80161474 0015E3D4 80 7E 09 00 */ lwz r3, 0x900(r30) -/* 80161478 0015E3D8 48 1B 10 65 */ bl Float__9CRandom16Fv -/* 8016147C 0015E3DC C0 02 9F 80 */ lfs f0, lbl_805ABCA0@sda21(r2) -/* 80161480 0015E3E0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80161484 0015E3E4 40 80 00 18 */ bge lbl_8016149C -/* 80161488 0015E3E8 88 1D 08 32 */ lbz r0, 0x832(r29) -/* 8016148C 0015E3EC 38 60 00 01 */ li r3, 1 -/* 80161490 0015E3F0 50 60 2E 34 */ rlwimi r0, r3, 5, 0x18, 0x1a -/* 80161494 0015E3F4 98 1D 08 32 */ stb r0, 0x832(r29) -/* 80161498 0015E3F8 48 00 02 54 */ b lbl_801616EC -lbl_8016149C: -/* 8016149C 0015E3FC 88 1D 08 32 */ lbz r0, 0x832(r29) -/* 801614A0 0015E400 38 60 00 02 */ li r3, 2 -/* 801614A4 0015E404 50 60 2E 34 */ rlwimi r0, r3, 5, 0x18, 0x1a -/* 801614A8 0015E408 98 1D 08 32 */ stb r0, 0x832(r29) -/* 801614AC 0015E40C 48 00 02 40 */ b lbl_801616EC -lbl_801614B0: -/* 801614B0 0015E410 80 1D 07 C8 */ lwz r0, 0x7c8(r29) -/* 801614B4 0015E414 2C 00 00 01 */ cmpwi r0, 1 -/* 801614B8 0015E418 41 82 01 B4 */ beq lbl_8016166C -/* 801614BC 0015E41C 40 80 01 C8 */ bge lbl_80161684 -/* 801614C0 0015E420 2C 00 00 00 */ cmpwi r0, 0 -/* 801614C4 0015E424 40 80 00 0C */ bge lbl_801614D0 -/* 801614C8 0015E428 48 00 01 BC */ b lbl_80161684 -/* 801614CC 0015E42C 48 00 01 B8 */ b lbl_80161684 -lbl_801614D0: -/* 801614D0 0015E430 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 801614D4 0015E434 80 03 02 B8 */ lwz r0, 0x2b8(r3) -/* 801614D8 0015E438 2C 00 00 03 */ cmpwi r0, 3 -/* 801614DC 0015E43C 40 82 00 10 */ bne lbl_801614EC -/* 801614E0 0015E440 38 00 00 01 */ li r0, 1 -/* 801614E4 0015E444 90 1D 07 C8 */ stw r0, 0x7c8(r29) -/* 801614E8 0015E448 48 00 01 9C */ b lbl_80161684 -lbl_801614EC: -/* 801614EC 0015E44C 88 1D 08 32 */ lbz r0, 0x832(r29) -/* 801614F0 0015E450 3B E3 00 04 */ addi r31, r3, 4 -/* 801614F4 0015E454 54 00 C0 06 */ rlwinm r0, r0, 0x18, 0, 3 -/* 801614F8 0015E458 7C 00 EE 70 */ srawi r0, r0, 0x1d -/* 801614FC 0015E45C 2C 00 00 01 */ cmpwi r0, 1 -/* 80161500 0015E460 41 82 00 8C */ beq lbl_8016158C -/* 80161504 0015E464 40 80 00 10 */ bge lbl_80161514 -/* 80161508 0015E468 2C 00 00 00 */ cmpwi r0, 0 -/* 8016150C 0015E46C 40 80 00 14 */ bge lbl_80161520 -/* 80161510 0015E470 48 00 01 74 */ b lbl_80161684 -lbl_80161514: -/* 80161514 0015E474 2C 00 00 03 */ cmpwi r0, 3 -/* 80161518 0015E478 40 80 01 6C */ bge lbl_80161684 -/* 8016151C 0015E47C 48 00 00 E0 */ b lbl_801615FC -lbl_80161520: -/* 80161520 0015E480 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80161524 0015E484 38 C0 00 01 */ li r6, 1 -/* 80161528 0015E488 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 8016152C 0015E48C 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha -/* 80161530 0015E490 90 01 00 4C */ stw r0, 0x4c(r1) -/* 80161534 0015E494 38 A3 A9 E4 */ addi r5, r3, lbl_803DA9E4@l -/* 80161538 0015E498 38 00 00 02 */ li r0, 2 -/* 8016153C 0015E49C 7F E3 FB 78 */ mr r3, r31 -/* 80161540 0015E4A0 90 C1 00 50 */ stw r6, 0x50(r1) -/* 80161544 0015E4A4 38 80 00 01 */ li r4, 1 -/* 80161548 0015E4A8 90 A1 00 4C */ stw r5, 0x4c(r1) -/* 8016154C 0015E4AC 90 C1 00 54 */ stw r6, 0x54(r1) -/* 80161550 0015E4B0 90 01 00 58 */ stw r0, 0x58(r1) -/* 80161554 0015E4B4 4B FC FE E5 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80161558 0015E4B8 80 01 00 50 */ lwz r0, 0x50(r1) -/* 8016155C 0015E4BC 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha -/* 80161560 0015E4C0 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l -/* 80161564 0015E4C4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80161568 0015E4C8 90 1F 00 C8 */ stw r0, 0xc8(r31) -/* 8016156C 0015E4CC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 80161570 0015E4D0 80 A1 00 54 */ lwz r5, 0x54(r1) -/* 80161574 0015E4D4 90 81 00 4C */ stw r4, 0x4c(r1) -/* 80161578 0015E4D8 80 61 00 58 */ lwz r3, 0x58(r1) -/* 8016157C 0015E4DC 90 BF 00 CC */ stw r5, 0xcc(r31) -/* 80161580 0015E4E0 90 7F 00 D0 */ stw r3, 0xd0(r31) -/* 80161584 0015E4E4 90 01 00 4C */ stw r0, 0x4c(r1) -/* 80161588 0015E4E8 48 00 00 FC */ b lbl_80161684 -lbl_8016158C: -/* 8016158C 0015E4EC 3C 80 80 3E */ lis r4, lbl_803DAA68@ha -/* 80161590 0015E4F0 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha -/* 80161594 0015E4F4 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l -/* 80161598 0015E4F8 38 80 00 01 */ li r4, 1 -/* 8016159C 0015E4FC 90 01 00 3C */ stw r0, 0x3c(r1) -/* 801615A0 0015E500 38 C3 A9 E4 */ addi r6, r3, lbl_803DA9E4@l -/* 801615A4 0015E504 38 A0 00 02 */ li r5, 2 -/* 801615A8 0015E508 38 00 00 00 */ li r0, 0 -/* 801615AC 0015E50C 90 81 00 40 */ stw r4, 0x40(r1) -/* 801615B0 0015E510 7F E3 FB 78 */ mr r3, r31 -/* 801615B4 0015E514 38 80 00 01 */ li r4, 1 -/* 801615B8 0015E518 90 C1 00 3C */ stw r6, 0x3c(r1) -/* 801615BC 0015E51C 90 A1 00 44 */ stw r5, 0x44(r1) -/* 801615C0 0015E520 90 01 00 48 */ stw r0, 0x48(r1) -/* 801615C4 0015E524 4B FC FE 75 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 801615C8 0015E528 80 01 00 40 */ lwz r0, 0x40(r1) -/* 801615CC 0015E52C 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha -/* 801615D0 0015E530 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l -/* 801615D4 0015E534 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 801615D8 0015E538 90 1F 00 C8 */ stw r0, 0xc8(r31) -/* 801615DC 0015E53C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 801615E0 0015E540 80 A1 00 44 */ lwz r5, 0x44(r1) -/* 801615E4 0015E544 90 81 00 3C */ stw r4, 0x3c(r1) -/* 801615E8 0015E548 80 61 00 48 */ lwz r3, 0x48(r1) -/* 801615EC 0015E54C 90 BF 00 CC */ stw r5, 0xcc(r31) -/* 801615F0 0015E550 90 7F 00 D0 */ stw r3, 0xd0(r31) -/* 801615F4 0015E554 90 01 00 3C */ stw r0, 0x3c(r1) -/* 801615F8 0015E558 48 00 00 8C */ b lbl_80161684 -lbl_801615FC: -/* 801615FC 0015E55C 3C 80 80 3E */ lis r4, lbl_803DAA68@ha -/* 80161600 0015E560 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha -/* 80161604 0015E564 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l -/* 80161608 0015E568 38 80 00 01 */ li r4, 1 -/* 8016160C 0015E56C 90 01 00 2C */ stw r0, 0x2c(r1) -/* 80161610 0015E570 38 C3 A9 E4 */ addi r6, r3, lbl_803DA9E4@l -/* 80161614 0015E574 38 A0 00 03 */ li r5, 3 -/* 80161618 0015E578 38 00 00 00 */ li r0, 0 -/* 8016161C 0015E57C 90 81 00 30 */ stw r4, 0x30(r1) -/* 80161620 0015E580 7F E3 FB 78 */ mr r3, r31 -/* 80161624 0015E584 38 80 00 01 */ li r4, 1 -/* 80161628 0015E588 90 C1 00 2C */ stw r6, 0x2c(r1) -/* 8016162C 0015E58C 90 A1 00 34 */ stw r5, 0x34(r1) -/* 80161630 0015E590 90 01 00 38 */ stw r0, 0x38(r1) -/* 80161634 0015E594 4B FC FE 05 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80161638 0015E598 80 01 00 30 */ lwz r0, 0x30(r1) -/* 8016163C 0015E59C 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha -/* 80161640 0015E5A0 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l -/* 80161644 0015E5A4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80161648 0015E5A8 90 1F 00 C8 */ stw r0, 0xc8(r31) -/* 8016164C 0015E5AC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 80161650 0015E5B0 80 A1 00 34 */ lwz r5, 0x34(r1) -/* 80161654 0015E5B4 90 81 00 2C */ stw r4, 0x2c(r1) -/* 80161658 0015E5B8 80 61 00 38 */ lwz r3, 0x38(r1) -/* 8016165C 0015E5BC 90 BF 00 CC */ stw r5, 0xcc(r31) -/* 80161660 0015E5C0 90 7F 00 D0 */ stw r3, 0xd0(r31) -/* 80161664 0015E5C4 90 01 00 2C */ stw r0, 0x2c(r1) -/* 80161668 0015E5C8 48 00 00 1C */ b lbl_80161684 -lbl_8016166C: -/* 8016166C 0015E5CC 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 80161670 0015E5D0 80 03 02 B8 */ lwz r0, 0x2b8(r3) -/* 80161674 0015E5D4 2C 00 00 03 */ cmpwi r0, 3 -/* 80161678 0015E5D8 41 82 00 0C */ beq lbl_80161684 -/* 8016167C 0015E5DC 38 00 00 02 */ li r0, 2 -/* 80161680 0015E5E0 90 1D 07 C8 */ stw r0, 0x7c8(r29) -lbl_80161684: -/* 80161684 0015E5E4 80 BE 08 4C */ lwz r5, 0x84c(r30) -/* 80161688 0015E5E8 38 61 00 20 */ addi r3, r1, 0x20 -/* 8016168C 0015E5EC C0 1D 00 60 */ lfs f0, 0x60(r29) -/* 80161690 0015E5F0 38 81 00 14 */ addi r4, r1, 0x14 -/* 80161694 0015E5F4 C0 A5 00 60 */ lfs f5, 0x60(r5) -/* 80161698 0015E5F8 C0 85 00 50 */ lfs f4, 0x50(r5) -/* 8016169C 0015E5FC C0 5D 00 50 */ lfs f2, 0x50(r29) -/* 801616A0 0015E600 EC 25 00 28 */ fsubs f1, f5, f0 -/* 801616A4 0015E604 C0 05 00 40 */ lfs f0, 0x40(r5) -/* 801616A8 0015E608 C0 7D 00 40 */ lfs f3, 0x40(r29) -/* 801616AC 0015E60C EC 44 10 28 */ fsubs f2, f4, f2 -/* 801616B0 0015E610 D0 01 00 08 */ stfs f0, 8(r1) -/* 801616B4 0015E614 EC 00 18 28 */ fsubs f0, f0, f3 -/* 801616B8 0015E618 D0 81 00 0C */ stfs f4, 0xc(r1) -/* 801616BC 0015E61C D0 A1 00 10 */ stfs f5, 0x10(r1) -/* 801616C0 0015E620 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 801616C4 0015E624 D0 41 00 18 */ stfs f2, 0x18(r1) -/* 801616C8 0015E628 D0 21 00 1C */ stfs f1, 0x1c(r1) -/* 801616CC 0015E62C 48 1B 31 85 */ bl AsNormalized__9CVector3fCFv -/* 801616D0 0015E630 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 801616D4 0015E634 C0 01 00 20 */ lfs f0, 0x20(r1) -/* 801616D8 0015E638 D0 03 00 1C */ stfs f0, 0x1c(r3) -/* 801616DC 0015E63C C0 01 00 24 */ lfs f0, 0x24(r1) -/* 801616E0 0015E640 D0 03 00 20 */ stfs f0, 0x20(r3) -/* 801616E4 0015E644 C0 01 00 28 */ lfs f0, 0x28(r1) -/* 801616E8 0015E648 D0 03 00 24 */ stfs f0, 0x24(r3) -lbl_801616EC: -/* 801616EC 0015E64C 80 01 00 F4 */ lwz r0, 0xf4(r1) -/* 801616F0 0015E650 83 E1 00 EC */ lwz r31, 0xec(r1) -/* 801616F4 0015E654 83 C1 00 E8 */ lwz r30, 0xe8(r1) -/* 801616F8 0015E658 83 A1 00 E4 */ lwz r29, 0xe4(r1) -/* 801616FC 0015E65C 7C 08 03 A6 */ mtlr r0 -/* 80161700 0015E660 38 21 00 F0 */ addi r1, r1, 0xf0 -/* 80161704 0015E664 4E 80 00 20 */ blr - -.global SpecialAttack__6CDroneFR13CStateManager9EStateMsgf -SpecialAttack__6CDroneFR13CStateManager9EStateMsgf: -/* 80161708 0015E668 94 21 FF 30 */ stwu r1, -0xd0(r1) -/* 8016170C 0015E66C 7C 08 02 A6 */ mflr r0 -/* 80161710 0015E670 90 01 00 D4 */ stw r0, 0xd4(r1) -/* 80161714 0015E674 DB E1 00 C0 */ stfd f31, 0xc0(r1) -/* 80161718 0015E678 F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 -/* 8016171C 0015E67C DB C1 00 B0 */ stfd f30, 0xb0(r1) -/* 80161720 0015E680 F3 C1 00 B8 */ psq_st f30, 184(r1), 0, qr0 -/* 80161724 0015E684 DB A1 00 A0 */ stfd f29, 0xa0(r1) -/* 80161728 0015E688 F3 A1 00 A8 */ psq_st f29, 168(r1), 0, qr0 -/* 8016172C 0015E68C DB 81 00 90 */ stfd f28, 0x90(r1) -/* 80161730 0015E690 F3 81 00 98 */ psq_st f28, 152(r1), 0, qr0 -/* 80161734 0015E694 93 E1 00 8C */ stw r31, 0x8c(r1) -/* 80161738 0015E698 93 C1 00 88 */ stw r30, 0x88(r1) -/* 8016173C 0015E69C FF E0 08 90 */ fmr f31, f1 -/* 80161740 0015E6A0 2C 05 00 01 */ cmpwi r5, 1 -/* 80161744 0015E6A4 7C 7E 1B 78 */ mr r30, r3 -/* 80161748 0015E6A8 7C 9F 23 78 */ mr r31, r4 -/* 8016174C 0015E6AC 41 82 00 4C */ beq lbl_80161798 -/* 80161750 0015E6B0 40 80 01 DC */ bge lbl_8016192C -/* 80161754 0015E6B4 2C 05 00 00 */ cmpwi r5, 0 -/* 80161758 0015E6B8 40 80 00 0C */ bge lbl_80161764 -/* 8016175C 0015E6BC 48 00 01 D0 */ b lbl_8016192C -/* 80161760 0015E6C0 48 00 01 CC */ b lbl_8016192C -lbl_80161764: -/* 80161764 0015E6C4 80 1E 03 FC */ lwz r0, 0x3fc(r30) -/* 80161768 0015E6C8 2C 00 00 01 */ cmpwi r0, 1 -/* 8016176C 0015E6CC 40 82 00 14 */ bne lbl_80161780 -/* 80161770 0015E6D0 88 1E 08 34 */ lbz r0, 0x834(r30) -/* 80161774 0015E6D4 38 60 00 01 */ li r3, 1 -/* 80161778 0015E6D8 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e -/* 8016177C 0015E6DC 98 1E 08 34 */ stb r0, 0x834(r30) -lbl_80161780: -/* 80161780 0015E6E0 C0 1E 06 60 */ lfs f0, 0x660(r30) -/* 80161784 0015E6E4 38 80 00 0A */ li r4, 0xa -/* 80161788 0015E6E8 D0 1E 03 40 */ stfs f0, 0x340(r30) -/* 8016178C 0015E6EC 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 80161790 0015E6F0 4B FD 92 49 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -/* 80161794 0015E6F4 48 00 01 98 */ b lbl_8016192C -lbl_80161798: -/* 80161798 0015E6F8 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8016179C 0015E6FC C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) -/* 801617A0 0015E700 C0 DE 00 58 */ lfs f6, 0x58(r30) -/* 801617A4 0015E704 38 81 00 68 */ addi r4, r1, 0x68 -/* 801617A8 0015E708 C0 BE 00 48 */ lfs f5, 0x48(r30) -/* 801617AC 0015E70C C0 9E 00 38 */ lfs f4, 0x38(r30) -/* 801617B0 0015E710 C0 43 00 04 */ lfs f2, 4(r3) -/* 801617B4 0015E714 C0 23 00 08 */ lfs f1, 8(r3) -/* 801617B8 0015E718 C0 02 9F 7C */ lfs f0, lbl_805ABC9C@sda21(r2) -/* 801617BC 0015E71C D0 81 00 68 */ stfs f4, 0x68(r1) -/* 801617C0 0015E720 D0 A1 00 6C */ stfs f5, 0x6c(r1) -/* 801617C4 0015E724 D0 C1 00 70 */ stfs f6, 0x70(r1) -/* 801617C8 0015E728 D0 61 00 74 */ stfs f3, 0x74(r1) -/* 801617CC 0015E72C D0 41 00 78 */ stfs f2, 0x78(r1) -/* 801617D0 0015E730 D0 21 00 7C */ stfs f1, 0x7c(r1) -/* 801617D4 0015E734 D0 01 00 80 */ stfs f0, 0x80(r1) -/* 801617D8 0015E738 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 801617DC 0015E73C D0 81 00 38 */ stfs f4, 0x38(r1) -/* 801617E0 0015E740 38 63 00 04 */ addi r3, r3, 4 -/* 801617E4 0015E744 D0 A1 00 3C */ stfs f5, 0x3c(r1) -/* 801617E8 0015E748 D0 C1 00 40 */ stfs f6, 0x40(r1) -/* 801617EC 0015E74C 4B FC FF 2D */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd -/* 801617F0 0015E750 80 9F 08 4C */ lwz r4, 0x84c(r31) -/* 801617F4 0015E754 7F E5 FB 78 */ mr r5, r31 -/* 801617F8 0015E758 38 61 00 2C */ addi r3, r1, 0x2c -/* 801617FC 0015E75C C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 80161800 0015E760 81 84 00 00 */ lwz r12, 0(r4) -/* 80161804 0015E764 C3 84 00 60 */ lfs f28, 0x60(r4) -/* 80161808 0015E768 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 8016180C 0015E76C C3 A4 00 50 */ lfs f29, 0x50(r4) -/* 80161810 0015E770 C3 C4 00 40 */ lfs f30, 0x40(r4) -/* 80161814 0015E774 7D 89 03 A6 */ mtctr r12 -/* 80161818 0015E778 4E 80 04 21 */ bctrl -/* 8016181C 0015E77C C0 41 00 30 */ lfs f2, 0x30(r1) -/* 80161820 0015E780 C0 21 00 34 */ lfs f1, 0x34(r1) -/* 80161824 0015E784 C0 01 00 2C */ lfs f0, 0x2c(r1) -/* 80161828 0015E788 EC 42 E8 2A */ fadds f2, f2, f29 -/* 8016182C 0015E78C C0 C2 9F 80 */ lfs f6, lbl_805ABCA0@sda21(r2) -/* 80161830 0015E790 EC 21 E0 2A */ fadds f1, f1, f28 -/* 80161834 0015E794 EC 00 F0 2A */ fadds f0, f0, f30 -/* 80161838 0015E798 C0 9E 00 50 */ lfs f4, 0x50(r30) -/* 8016183C 0015E79C EC A6 00 B2 */ fmuls f5, f6, f2 -/* 80161840 0015E7A0 EC 66 00 72 */ fmuls f3, f6, f1 -/* 80161844 0015E7A4 C0 5E 00 60 */ lfs f2, 0x60(r30) -/* 80161848 0015E7A8 EC 26 00 32 */ fmuls f1, f6, f0 -/* 8016184C 0015E7AC C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 80161850 0015E7B0 EC 85 20 28 */ fsubs f4, f5, f4 -/* 80161854 0015E7B4 EC 43 10 28 */ fsubs f2, f3, f2 -/* 80161858 0015E7B8 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8016185C 0015E7BC D0 81 00 60 */ stfs f4, 0x60(r1) -/* 80161860 0015E7C0 D0 01 00 5C */ stfs f0, 0x5c(r1) -/* 80161864 0015E7C4 D0 41 00 64 */ stfs f2, 0x64(r1) -/* 80161868 0015E7C8 C0 7E 06 68 */ lfs f3, 0x668(r30) -/* 8016186C 0015E7CC C0 3E 06 64 */ lfs f1, 0x664(r30) -/* 80161870 0015E7D0 FC 03 08 40 */ fcmpo cr0, f3, f1 -/* 80161874 0015E7D4 40 80 00 10 */ bge lbl_80161884 -/* 80161878 0015E7D8 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 8016187C 0015E7DC FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 80161880 0015E7E0 41 81 00 0C */ bgt lbl_8016188C -lbl_80161884: -/* 80161884 0015E7E4 FC 03 08 40 */ fcmpo cr0, f3, f1 -/* 80161888 0015E7E8 40 81 00 A4 */ ble lbl_8016192C -lbl_8016188C: -/* 8016188C 0015E7EC 38 61 00 5C */ addi r3, r1, 0x5c -/* 80161890 0015E7F0 48 1B 2E 69 */ bl CanBeNormalized__9CVector3fCFv -/* 80161894 0015E7F4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80161898 0015E7F8 41 82 00 94 */ beq lbl_8016192C -/* 8016189C 0015E7FC C3 DE 05 E4 */ lfs f30, 0x5e4(r30) -/* 801618A0 0015E800 38 61 00 20 */ addi r3, r1, 0x20 -/* 801618A4 0015E804 38 81 00 5C */ addi r4, r1, 0x5c -/* 801618A8 0015E808 48 1B 2F A9 */ bl AsNormalized__9CVector3fCFv -/* 801618AC 0015E80C C0 41 00 20 */ lfs f2, 0x20(r1) -/* 801618B0 0015E810 38 61 00 08 */ addi r3, r1, 8 -/* 801618B4 0015E814 C0 21 00 24 */ lfs f1, 0x24(r1) -/* 801618B8 0015E818 38 9E 00 34 */ addi r4, r30, 0x34 -/* 801618BC 0015E81C C0 01 00 28 */ lfs f0, 0x28(r1) -/* 801618C0 0015E820 EC 5E 00 B2 */ fmuls f2, f30, f2 -/* 801618C4 0015E824 EC 3E 00 72 */ fmuls f1, f30, f1 -/* 801618C8 0015E828 38 A1 00 50 */ addi r5, r1, 0x50 -/* 801618CC 0015E82C EC 1E 00 32 */ fmuls f0, f30, f0 -/* 801618D0 0015E830 EC 5F 00 B2 */ fmuls f2, f31, f2 -/* 801618D4 0015E834 EC 3F 00 72 */ fmuls f1, f31, f1 -/* 801618D8 0015E838 EC 1F 00 32 */ fmuls f0, f31, f0 -/* 801618DC 0015E83C D0 41 00 50 */ stfs f2, 0x50(r1) -/* 801618E0 0015E840 D0 21 00 54 */ stfs f1, 0x54(r1) -/* 801618E4 0015E844 D0 01 00 58 */ stfs f0, 0x58(r1) -/* 801618E8 0015E848 48 1B 11 3D */ bl TransposeRotate__12CTransform4fCFRC9CVector3f -/* 801618EC 0015E84C FC 20 F8 90 */ fmr f1, f31 -/* 801618F0 0015E850 7F C4 F3 78 */ mr r4, r30 -/* 801618F4 0015E854 38 61 00 14 */ addi r3, r1, 0x14 -/* 801618F8 0015E858 38 A1 00 08 */ addi r5, r1, 8 -/* 801618FC 0015E85C 4B FB 97 0D */ bl GetMoveToORImpulseWR__13CPhysicsActorCFRC9CVector3ff -/* 80161900 0015E860 C0 41 00 14 */ lfs f2, 0x14(r1) -/* 80161904 0015E864 C0 21 00 18 */ lfs f1, 0x18(r1) -/* 80161908 0015E868 C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 8016190C 0015E86C D0 41 00 44 */ stfs f2, 0x44(r1) -/* 80161910 0015E870 D0 21 00 48 */ stfs f1, 0x48(r1) -/* 80161914 0015E874 D0 01 00 4C */ stfs f0, 0x4c(r1) -/* 80161918 0015E878 4B EB 9C 1D */ bl Identity__10CAxisAngleFv -/* 8016191C 0015E87C 7C 65 1B 78 */ mr r5, r3 -/* 80161920 0015E880 7F C3 F3 78 */ mr r3, r30 -/* 80161924 0015E884 38 81 00 44 */ addi r4, r1, 0x44 -/* 80161928 0015E888 4B FB AA 71 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle -lbl_8016192C: -/* 8016192C 0015E88C E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 -/* 80161930 0015E890 CB E1 00 C0 */ lfd f31, 0xc0(r1) -/* 80161934 0015E894 E3 C1 00 B8 */ psq_l f30, 184(r1), 0, qr0 -/* 80161938 0015E898 CB C1 00 B0 */ lfd f30, 0xb0(r1) -/* 8016193C 0015E89C E3 A1 00 A8 */ psq_l f29, 168(r1), 0, qr0 -/* 80161940 0015E8A0 CB A1 00 A0 */ lfd f29, 0xa0(r1) -/* 80161944 0015E8A4 E3 81 00 98 */ psq_l f28, 152(r1), 0, qr0 -/* 80161948 0015E8A8 CB 81 00 90 */ lfd f28, 0x90(r1) -/* 8016194C 0015E8AC 83 E1 00 8C */ lwz r31, 0x8c(r1) -/* 80161950 0015E8B0 80 01 00 D4 */ lwz r0, 0xd4(r1) -/* 80161954 0015E8B4 83 C1 00 88 */ lwz r30, 0x88(r1) -/* 80161958 0015E8B8 7C 08 03 A6 */ mtlr r0 -/* 8016195C 0015E8BC 38 21 00 D0 */ addi r1, r1, 0xd0 -/* 80161960 0015E8C0 4E 80 00 20 */ blr - -.global Retreat__6CDroneFR13CStateManager9EStateMsgf -Retreat__6CDroneFR13CStateManager9EStateMsgf: -/* 80161964 0015E8C4 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 80161968 0015E8C8 7C 08 02 A6 */ mflr r0 -/* 8016196C 0015E8CC 2C 05 00 01 */ cmpwi r5, 1 -/* 80161970 0015E8D0 90 01 00 54 */ stw r0, 0x54(r1) -/* 80161974 0015E8D4 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 80161978 0015E8D8 7C 9F 23 78 */ mr r31, r4 -/* 8016197C 0015E8DC 93 C1 00 48 */ stw r30, 0x48(r1) -/* 80161980 0015E8E0 7C 7E 1B 78 */ mr r30, r3 -/* 80161984 0015E8E4 93 A1 00 44 */ stw r29, 0x44(r1) -/* 80161988 0015E8E8 41 82 00 48 */ beq lbl_801619D0 -/* 8016198C 0015E8EC 40 80 01 A0 */ bge lbl_80161B2C -/* 80161990 0015E8F0 2C 05 00 00 */ cmpwi r5, 0 -/* 80161994 0015E8F4 40 80 00 0C */ bge lbl_801619A0 -/* 80161998 0015E8F8 48 00 01 94 */ b lbl_80161B2C -/* 8016199C 0015E8FC 48 00 01 90 */ b lbl_80161B2C -lbl_801619A0: -/* 801619A0 0015E900 38 00 00 00 */ li r0, 0 -/* 801619A4 0015E904 90 1E 07 C8 */ stw r0, 0x7c8(r30) -/* 801619A8 0015E908 80 1E 03 FC */ lwz r0, 0x3fc(r30) -/* 801619AC 0015E90C 2C 00 00 01 */ cmpwi r0, 1 -/* 801619B0 0015E910 40 82 00 14 */ bne lbl_801619C4 -/* 801619B4 0015E914 88 1E 08 34 */ lbz r0, 0x834(r30) -/* 801619B8 0015E918 38 60 00 01 */ li r3, 1 -/* 801619BC 0015E91C 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e -/* 801619C0 0015E920 98 1E 08 34 */ stb r0, 0x834(r30) -lbl_801619C4: -/* 801619C4 0015E924 C0 1E 06 5C */ lfs f0, 0x65c(r30) -/* 801619C8 0015E928 D0 1E 03 40 */ stfs f0, 0x340(r30) -/* 801619CC 0015E92C 48 00 01 60 */ b lbl_80161B2C -lbl_801619D0: -/* 801619D0 0015E930 80 1E 07 C8 */ lwz r0, 0x7c8(r30) -/* 801619D4 0015E934 2C 00 00 01 */ cmpwi r0, 1 -/* 801619D8 0015E938 41 82 00 AC */ beq lbl_80161A84 -/* 801619DC 0015E93C 40 80 00 10 */ bge lbl_801619EC -/* 801619E0 0015E940 2C 00 00 00 */ cmpwi r0, 0 -/* 801619E4 0015E944 40 80 00 14 */ bge lbl_801619F8 -/* 801619E8 0015E948 48 00 00 C0 */ b lbl_80161AA8 -lbl_801619EC: -/* 801619EC 0015E94C 2C 00 00 03 */ cmpwi r0, 3 -/* 801619F0 0015E950 40 80 00 B8 */ bge lbl_80161AA8 -/* 801619F4 0015E954 48 00 00 AC */ b lbl_80161AA0 -lbl_801619F8: -/* 801619F8 0015E958 80 9E 04 50 */ lwz r4, 0x450(r30) -/* 801619FC 0015E95C 80 04 02 B8 */ lwz r0, 0x2b8(r4) -/* 80161A00 0015E960 2C 00 00 03 */ cmpwi r0, 3 -/* 80161A04 0015E964 40 82 00 10 */ bne lbl_80161A14 -/* 80161A08 0015E968 38 00 00 01 */ li r0, 1 -/* 80161A0C 0015E96C 90 1E 07 C8 */ stw r0, 0x7c8(r30) -/* 80161A10 0015E970 48 00 00 98 */ b lbl_80161AA8 -lbl_80161A14: -/* 80161A14 0015E974 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80161A18 0015E978 38 C0 00 01 */ li r6, 1 -/* 80161A1C 0015E97C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 80161A20 0015E980 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha -/* 80161A24 0015E984 90 01 00 2C */ stw r0, 0x2c(r1) -/* 80161A28 0015E988 38 A3 A9 E4 */ addi r5, r3, lbl_803DA9E4@l -/* 80161A2C 0015E98C 38 00 00 00 */ li r0, 0 -/* 80161A30 0015E990 3B A4 00 04 */ addi r29, r4, 4 -/* 80161A34 0015E994 90 C1 00 30 */ stw r6, 0x30(r1) -/* 80161A38 0015E998 7F A3 EB 78 */ mr r3, r29 -/* 80161A3C 0015E99C 38 80 00 01 */ li r4, 1 -/* 80161A40 0015E9A0 90 A1 00 2C */ stw r5, 0x2c(r1) -/* 80161A44 0015E9A4 90 C1 00 34 */ stw r6, 0x34(r1) -/* 80161A48 0015E9A8 90 01 00 38 */ stw r0, 0x38(r1) -/* 80161A4C 0015E9AC 4B FC F9 ED */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80161A50 0015E9B0 80 01 00 30 */ lwz r0, 0x30(r1) -/* 80161A54 0015E9B4 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha -/* 80161A58 0015E9B8 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l -/* 80161A5C 0015E9BC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80161A60 0015E9C0 90 1D 00 C8 */ stw r0, 0xc8(r29) -/* 80161A64 0015E9C4 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 80161A68 0015E9C8 80 A1 00 34 */ lwz r5, 0x34(r1) -/* 80161A6C 0015E9CC 90 81 00 2C */ stw r4, 0x2c(r1) -/* 80161A70 0015E9D0 80 61 00 38 */ lwz r3, 0x38(r1) -/* 80161A74 0015E9D4 90 BD 00 CC */ stw r5, 0xcc(r29) -/* 80161A78 0015E9D8 90 7D 00 D0 */ stw r3, 0xd0(r29) -/* 80161A7C 0015E9DC 90 01 00 2C */ stw r0, 0x2c(r1) -/* 80161A80 0015E9E0 48 00 00 28 */ b lbl_80161AA8 -lbl_80161A84: -/* 80161A84 0015E9E4 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 80161A88 0015E9E8 80 03 02 B8 */ lwz r0, 0x2b8(r3) -/* 80161A8C 0015E9EC 2C 00 00 03 */ cmpwi r0, 3 -/* 80161A90 0015E9F0 41 82 00 18 */ beq lbl_80161AA8 -/* 80161A94 0015E9F4 38 00 00 02 */ li r0, 2 -/* 80161A98 0015E9F8 90 1E 07 C8 */ stw r0, 0x7c8(r30) -/* 80161A9C 0015E9FC 48 00 00 0C */ b lbl_80161AA8 -lbl_80161AA0: -/* 80161AA0 0015EA00 38 00 00 00 */ li r0, 0 -/* 80161AA4 0015EA04 90 1E 07 C8 */ stw r0, 0x7c8(r30) -lbl_80161AA8: -/* 80161AA8 0015EA08 80 BF 08 4C */ lwz r5, 0x84c(r31) -/* 80161AAC 0015EA0C 38 61 00 20 */ addi r3, r1, 0x20 -/* 80161AB0 0015EA10 C0 1E 00 60 */ lfs f0, 0x60(r30) -/* 80161AB4 0015EA14 38 81 00 14 */ addi r4, r1, 0x14 -/* 80161AB8 0015EA18 C0 A5 00 60 */ lfs f5, 0x60(r5) -/* 80161ABC 0015EA1C C0 85 00 50 */ lfs f4, 0x50(r5) -/* 80161AC0 0015EA20 C0 5E 00 50 */ lfs f2, 0x50(r30) -/* 80161AC4 0015EA24 EC 25 00 28 */ fsubs f1, f5, f0 -/* 80161AC8 0015EA28 C0 05 00 40 */ lfs f0, 0x40(r5) -/* 80161ACC 0015EA2C C0 7E 00 40 */ lfs f3, 0x40(r30) -/* 80161AD0 0015EA30 EC 44 10 28 */ fsubs f2, f4, f2 -/* 80161AD4 0015EA34 D0 01 00 08 */ stfs f0, 8(r1) -/* 80161AD8 0015EA38 EC 00 18 28 */ fsubs f0, f0, f3 -/* 80161ADC 0015EA3C D0 81 00 0C */ stfs f4, 0xc(r1) -/* 80161AE0 0015EA40 D0 A1 00 10 */ stfs f5, 0x10(r1) -/* 80161AE4 0015EA44 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 80161AE8 0015EA48 D0 41 00 18 */ stfs f2, 0x18(r1) -/* 80161AEC 0015EA4C D0 21 00 1C */ stfs f1, 0x1c(r1) -/* 80161AF0 0015EA50 48 1B 2D 61 */ bl AsNormalized__9CVector3fCFv -/* 80161AF4 0015EA54 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 80161AF8 0015EA58 C0 21 00 20 */ lfs f1, 0x20(r1) -/* 80161AFC 0015EA5C C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 80161B00 0015EA60 D0 23 00 1C */ stfs f1, 0x1c(r3) -/* 80161B04 0015EA64 C0 21 00 24 */ lfs f1, 0x24(r1) -/* 80161B08 0015EA68 D0 23 00 20 */ stfs f1, 0x20(r3) -/* 80161B0C 0015EA6C C0 21 00 28 */ lfs f1, 0x28(r1) -/* 80161B10 0015EA70 D0 23 00 24 */ stfs f1, 0x24(r3) -/* 80161B14 0015EA74 C0 3E 06 30 */ lfs f1, 0x630(r30) -/* 80161B18 0015EA78 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80161B1C 0015EA7C 4C 40 13 82 */ cror 2, 0, 2 -/* 80161B20 0015EA80 40 82 00 0C */ bne lbl_80161B2C -/* 80161B24 0015EA84 C0 02 9F A8 */ lfs f0, lbl_805ABCC8@sda21(r2) -/* 80161B28 0015EA88 D0 1E 06 34 */ stfs f0, 0x634(r30) -lbl_80161B2C: -/* 80161B2C 0015EA8C 80 01 00 54 */ lwz r0, 0x54(r1) -/* 80161B30 0015EA90 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 80161B34 0015EA94 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 80161B38 0015EA98 83 A1 00 44 */ lwz r29, 0x44(r1) -/* 80161B3C 0015EA9C 7C 08 03 A6 */ mtlr r0 -/* 80161B40 0015EAA0 38 21 00 50 */ addi r1, r1, 0x50 -/* 80161B44 0015EAA4 4E 80 00 20 */ blr - -.global TargetPatrol__6CDroneFR13CStateManager9EStateMsgf -TargetPatrol__6CDroneFR13CStateManager9EStateMsgf: -/* 80161B48 0015EAA8 94 21 FF 40 */ stwu r1, -0xc0(r1) -/* 80161B4C 0015EAAC 7C 08 02 A6 */ mflr r0 -/* 80161B50 0015EAB0 90 01 00 C4 */ stw r0, 0xc4(r1) -/* 80161B54 0015EAB4 DB E1 00 B0 */ stfd f31, 0xb0(r1) -/* 80161B58 0015EAB8 F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 -/* 80161B5C 0015EABC DB C1 00 A0 */ stfd f30, 0xa0(r1) -/* 80161B60 0015EAC0 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 -/* 80161B64 0015EAC4 DB A1 00 90 */ stfd f29, 0x90(r1) -/* 80161B68 0015EAC8 F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0 -/* 80161B6C 0015EACC 93 E1 00 8C */ stw r31, 0x8c(r1) -/* 80161B70 0015EAD0 93 C1 00 88 */ stw r30, 0x88(r1) -/* 80161B74 0015EAD4 2C 05 00 01 */ cmpwi r5, 1 -/* 80161B78 0015EAD8 7C 7E 1B 78 */ mr r30, r3 -/* 80161B7C 0015EADC 7C 9F 23 78 */ mr r31, r4 -/* 80161B80 0015EAE0 41 82 00 D8 */ beq lbl_80161C58 -/* 80161B84 0015EAE4 40 80 00 10 */ bge lbl_80161B94 -/* 80161B88 0015EAE8 2C 05 00 00 */ cmpwi r5, 0 -/* 80161B8C 0015EAEC 40 80 00 14 */ bge lbl_80161BA0 -/* 80161B90 0015EAF0 48 00 02 10 */ b lbl_80161DA0 -lbl_80161B94: -/* 80161B94 0015EAF4 2C 05 00 03 */ cmpwi r5, 3 -/* 80161B98 0015EAF8 40 80 02 08 */ bge lbl_80161DA0 -/* 80161B9C 0015EAFC 48 00 01 C0 */ b lbl_80161D5C -lbl_80161BA0: -/* 80161BA0 0015EB00 C0 1E 05 EC */ lfs f0, 0x5ec(r30) -/* 80161BA4 0015EB04 D0 1E 03 B8 */ stfs f0, 0x3b8(r30) -/* 80161BA8 0015EB08 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 80161BAC 0015EB0C C0 3E 05 EC */ lfs f1, 0x5ec(r30) -/* 80161BB0 0015EB10 4B FD 8D F5 */ bl SetTurnSpeed__15CBodyControllerFf -/* 80161BB4 0015EB14 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 80161BB8 0015EB18 80 03 02 EC */ lwz r0, 0x2ec(r3) -/* 80161BBC 0015EB1C 2C 00 00 03 */ cmpwi r0, 3 -/* 80161BC0 0015EB20 41 82 00 0C */ beq lbl_80161BCC -/* 80161BC4 0015EB24 38 80 00 03 */ li r4, 3 -/* 80161BC8 0015EB28 4B FD 8E 11 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -lbl_80161BCC: -/* 80161BCC 0015EB2C C0 02 9F BC */ lfs f0, lbl_805ABCDC@sda21(r2) -/* 80161BD0 0015EB30 7F E5 FB 78 */ mr r5, r31 -/* 80161BD4 0015EB34 80 9E 04 50 */ lwz r4, 0x450(r30) -/* 80161BD8 0015EB38 38 61 00 5C */ addi r3, r1, 0x5c -/* 80161BDC 0015EB3C C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 80161BE0 0015EB40 D0 04 02 D4 */ stfs f0, 0x2d4(r4) -/* 80161BE4 0015EB44 80 9F 08 4C */ lwz r4, 0x84c(r31) -/* 80161BE8 0015EB48 81 84 00 00 */ lwz r12, 0(r4) -/* 80161BEC 0015EB4C 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 80161BF0 0015EB50 7D 89 03 A6 */ mtctr r12 -/* 80161BF4 0015EB54 4E 80 04 21 */ bctrl -/* 80161BF8 0015EB58 7F C3 F3 78 */ mr r3, r30 -/* 80161BFC 0015EB5C 38 81 00 5C */ addi r4, r1, 0x5c -/* 80161C00 0015EB60 4B F1 AF 5D */ bl SetDestPos__10CPatternedFRC9CVector3f -/* 80161C04 0015EB64 88 1E 04 00 */ lbz r0, 0x400(r30) -/* 80161C08 0015EB68 38 60 00 00 */ li r3, 0 -/* 80161C0C 0015EB6C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80161C10 0015EB70 98 1E 04 00 */ stb r0, 0x400(r30) -/* 80161C14 0015EB74 80 1E 03 FC */ lwz r0, 0x3fc(r30) -/* 80161C18 0015EB78 2C 00 00 01 */ cmpwi r0, 1 -/* 80161C1C 0015EB7C 40 82 00 14 */ bne lbl_80161C30 -/* 80161C20 0015EB80 88 1E 08 34 */ lbz r0, 0x834(r30) -/* 80161C24 0015EB84 38 60 00 01 */ li r3, 1 -/* 80161C28 0015EB88 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e -/* 80161C2C 0015EB8C 98 1E 08 34 */ stb r0, 0x834(r30) -lbl_80161C30: -/* 80161C30 0015EB90 C0 2D 8D 7C */ lfs f1, lbl_805A793C@sda21(r13) -/* 80161C34 0015EB94 C0 1E 06 24 */ lfs f0, 0x624(r30) -/* 80161C38 0015EB98 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80161C3C 0015EB9C 40 80 00 0C */ bge lbl_80161C48 -/* 80161C40 0015EBA0 38 7E 06 24 */ addi r3, r30, 0x624 -/* 80161C44 0015EBA4 48 00 00 08 */ b lbl_80161C4C -lbl_80161C48: -/* 80161C48 0015EBA8 38 6D 8D 7C */ addi r3, r13, lbl_805A793C@sda21 -lbl_80161C4C: -/* 80161C4C 0015EBAC C0 03 00 00 */ lfs f0, 0(r3) -/* 80161C50 0015EBB0 D0 1E 03 40 */ stfs f0, 0x340(r30) -/* 80161C54 0015EBB4 48 00 01 4C */ b lbl_80161DA0 -lbl_80161C58: -/* 80161C58 0015EBB8 80 9F 08 4C */ lwz r4, 0x84c(r31) -/* 80161C5C 0015EBBC 7F E5 FB 78 */ mr r5, r31 -/* 80161C60 0015EBC0 38 61 00 38 */ addi r3, r1, 0x38 -/* 80161C64 0015EBC4 C3 BE 00 60 */ lfs f29, 0x60(r30) -/* 80161C68 0015EBC8 81 84 00 00 */ lwz r12, 0(r4) -/* 80161C6C 0015EBCC C3 DE 00 50 */ lfs f30, 0x50(r30) -/* 80161C70 0015EBD0 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 80161C74 0015EBD4 C3 FE 00 40 */ lfs f31, 0x40(r30) -/* 80161C78 0015EBD8 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 80161C7C 0015EBDC 7D 89 03 A6 */ mtctr r12 -/* 80161C80 0015EBE0 4E 80 04 21 */ bctrl -/* 80161C84 0015EBE4 C0 41 00 38 */ lfs f2, 0x38(r1) -/* 80161C88 0015EBE8 38 61 00 50 */ addi r3, r1, 0x50 -/* 80161C8C 0015EBEC C0 21 00 3C */ lfs f1, 0x3c(r1) -/* 80161C90 0015EBF0 38 81 00 44 */ addi r4, r1, 0x44 -/* 80161C94 0015EBF4 C0 01 00 40 */ lfs f0, 0x40(r1) -/* 80161C98 0015EBF8 EC 42 F8 28 */ fsubs f2, f2, f31 -/* 80161C9C 0015EBFC EC 21 F0 28 */ fsubs f1, f1, f30 -/* 80161CA0 0015EC00 EC 00 E8 28 */ fsubs f0, f0, f29 -/* 80161CA4 0015EC04 D0 41 00 44 */ stfs f2, 0x44(r1) -/* 80161CA8 0015EC08 D0 21 00 48 */ stfs f1, 0x48(r1) -/* 80161CAC 0015EC0C D0 01 00 4C */ stfs f0, 0x4c(r1) -/* 80161CB0 0015EC10 48 1B 2B A1 */ bl AsNormalized__9CVector3fCFv -/* 80161CB4 0015EC14 C0 DE 00 58 */ lfs f6, 0x58(r30) -/* 80161CB8 0015EC18 38 81 00 68 */ addi r4, r1, 0x68 -/* 80161CBC 0015EC1C C0 BE 00 48 */ lfs f5, 0x48(r30) -/* 80161CC0 0015EC20 C0 02 9F A0 */ lfs f0, lbl_805ABCC0@sda21(r2) -/* 80161CC4 0015EC24 C0 5E 00 38 */ lfs f2, 0x38(r30) -/* 80161CC8 0015EC28 EC 80 01 72 */ fmuls f4, f0, f5 -/* 80161CCC 0015EC2C C3 E1 00 50 */ lfs f31, 0x50(r1) -/* 80161CD0 0015EC30 EC 60 01 B2 */ fmuls f3, f0, f6 -/* 80161CD4 0015EC34 C3 A1 00 54 */ lfs f29, 0x54(r1) -/* 80161CD8 0015EC38 EC 20 00 B2 */ fmuls f1, f0, f2 -/* 80161CDC 0015EC3C C3 C1 00 58 */ lfs f30, 0x58(r1) -/* 80161CE0 0015EC40 C0 02 9F 7C */ lfs f0, lbl_805ABC9C@sda21(r2) -/* 80161CE4 0015EC44 D0 21 00 68 */ stfs f1, 0x68(r1) -/* 80161CE8 0015EC48 D0 81 00 6C */ stfs f4, 0x6c(r1) -/* 80161CEC 0015EC4C D0 61 00 70 */ stfs f3, 0x70(r1) -/* 80161CF0 0015EC50 D3 E1 00 74 */ stfs f31, 0x74(r1) -/* 80161CF4 0015EC54 D3 A1 00 78 */ stfs f29, 0x78(r1) -/* 80161CF8 0015EC58 D3 C1 00 7C */ stfs f30, 0x7c(r1) -/* 80161CFC 0015EC5C D0 01 00 80 */ stfs f0, 0x80(r1) -/* 80161D00 0015EC60 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 80161D04 0015EC64 D0 41 00 20 */ stfs f2, 0x20(r1) -/* 80161D08 0015EC68 38 63 00 04 */ addi r3, r3, 4 -/* 80161D0C 0015EC6C D0 A1 00 24 */ stfs f5, 0x24(r1) -/* 80161D10 0015EC70 D0 C1 00 28 */ stfs f6, 0x28(r1) -/* 80161D14 0015EC74 D0 21 00 2C */ stfs f1, 0x2c(r1) -/* 80161D18 0015EC78 D0 81 00 30 */ stfs f4, 0x30(r1) -/* 80161D1C 0015EC7C D0 61 00 34 */ stfs f3, 0x34(r1) -/* 80161D20 0015EC80 4B FC F9 F9 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd -/* 80161D24 0015EC84 80 BE 04 50 */ lwz r5, 0x450(r30) -/* 80161D28 0015EC88 7F C3 F3 78 */ mr r3, r30 -/* 80161D2C 0015EC8C 7F E4 FB 78 */ mr r4, r31 -/* 80161D30 0015EC90 D3 E5 00 1C */ stfs f31, 0x1c(r5) -/* 80161D34 0015EC94 D3 A5 00 20 */ stfs f29, 0x20(r5) -/* 80161D38 0015EC98 D3 C5 00 24 */ stfs f30, 0x24(r5) -/* 80161D3C 0015EC9C 4B FF D7 D5 */ bl sub_8015f510 -/* 80161D40 0015ECA0 C0 3E 06 30 */ lfs f1, 0x630(r30) -/* 80161D44 0015ECA4 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 80161D48 0015ECA8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80161D4C 0015ECAC 4C 40 13 82 */ cror 2, 0, 2 -/* 80161D50 0015ECB0 40 82 00 50 */ bne lbl_80161DA0 -/* 80161D54 0015ECB4 D0 1E 06 34 */ stfs f0, 0x634(r30) -/* 80161D58 0015ECB8 48 00 00 48 */ b lbl_80161DA0 -lbl_80161D5C: -/* 80161D5C 0015ECBC 80 BF 08 4C */ lwz r5, 0x84c(r31) -/* 80161D60 0015ECC0 38 81 00 14 */ addi r4, r1, 0x14 -/* 80161D64 0015ECC4 C0 1E 06 64 */ lfs f0, 0x664(r30) -/* 80161D68 0015ECC8 C0 A5 00 60 */ lfs f5, 0x60(r5) -/* 80161D6C 0015ECCC C0 85 00 50 */ lfs f4, 0x50(r5) -/* 80161D70 0015ECD0 C0 25 00 40 */ lfs f1, 0x40(r5) -/* 80161D74 0015ECD4 EC 45 00 2A */ fadds f2, f5, f0 -/* 80161D78 0015ECD8 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 80161D7C 0015ECDC D0 21 00 08 */ stfs f1, 8(r1) -/* 80161D80 0015ECE0 EC 64 00 2A */ fadds f3, f4, f0 -/* 80161D84 0015ECE4 EC 01 00 2A */ fadds f0, f1, f0 -/* 80161D88 0015ECE8 D0 81 00 0C */ stfs f4, 0xc(r1) -/* 80161D8C 0015ECEC D0 A1 00 10 */ stfs f5, 0x10(r1) -/* 80161D90 0015ECF0 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 80161D94 0015ECF4 D0 61 00 18 */ stfs f3, 0x18(r1) -/* 80161D98 0015ECF8 D0 41 00 1C */ stfs f2, 0x1c(r1) -/* 80161D9C 0015ECFC 4B F1 AD C1 */ bl SetDestPos__10CPatternedFRC9CVector3f -lbl_80161DA0: -/* 80161DA0 0015ED00 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 -/* 80161DA4 0015ED04 CB E1 00 B0 */ lfd f31, 0xb0(r1) -/* 80161DA8 0015ED08 E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 -/* 80161DAC 0015ED0C CB C1 00 A0 */ lfd f30, 0xa0(r1) -/* 80161DB0 0015ED10 E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0 -/* 80161DB4 0015ED14 CB A1 00 90 */ lfd f29, 0x90(r1) -/* 80161DB8 0015ED18 83 E1 00 8C */ lwz r31, 0x8c(r1) -/* 80161DBC 0015ED1C 80 01 00 C4 */ lwz r0, 0xc4(r1) -/* 80161DC0 0015ED20 83 C1 00 88 */ lwz r30, 0x88(r1) -/* 80161DC4 0015ED24 7C 08 03 A6 */ mtlr r0 -/* 80161DC8 0015ED28 38 21 00 C0 */ addi r1, r1, 0xc0 -/* 80161DCC 0015ED2C 4E 80 00 20 */ blr - -.global AddToRenderer__6CDroneCFRC14CFrustumPlanesRC13CStateManager -AddToRenderer__6CDroneCFRC14CFrustumPlanesRC13CStateManager: -/* 80161DD0 0015ED30 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80161DD4 0015ED34 7C 08 02 A6 */ mflr r0 -/* 80161DD8 0015ED38 90 01 00 14 */ stw r0, 0x14(r1) -/* 80161DDC 0015ED3C 4B F1 5A DD */ bl AddToRenderer__10CPatternedCFRC14CFrustumPlanesRC13CStateManager -/* 80161DE0 0015ED40 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80161DE4 0015ED44 7C 08 03 A6 */ mtlr r0 -/* 80161DE8 0015ED48 38 21 00 10 */ addi r1, r1, 0x10 -/* 80161DEC 0015ED4C 4E 80 00 20 */ blr - -.global Render__6CDroneCFRC13CStateManager -Render__6CDroneCFRC13CStateManager: -/* 80161DF0 0015ED50 94 21 FF 40 */ stwu r1, -0xc0(r1) -/* 80161DF4 0015ED54 7C 08 02 A6 */ mflr r0 -/* 80161DF8 0015ED58 90 01 00 C4 */ stw r0, 0xc4(r1) -/* 80161DFC 0015ED5C 93 E1 00 BC */ stw r31, 0xbc(r1) -/* 80161E00 0015ED60 93 C1 00 B8 */ stw r30, 0xb8(r1) -/* 80161E04 0015ED64 7C 9E 23 78 */ mr r30, r4 -/* 80161E08 0015ED68 93 A1 00 B4 */ stw r29, 0xb4(r1) -/* 80161E0C 0015ED6C 7C 7D 1B 78 */ mr r29, r3 -/* 80161E10 0015ED70 93 81 00 B0 */ stw r28, 0xb0(r1) -/* 80161E14 0015ED74 81 83 00 00 */ lwz r12, 0(r3) -/* 80161E18 0015ED78 80 03 03 FC */ lwz r0, 0x3fc(r3) -/* 80161E1C 0015ED7C 80 A3 00 04 */ lwz r5, 4(r3) -/* 80161E20 0015ED80 20 00 00 01 */ subfic r0, r0, 1 -/* 80161E24 0015ED84 81 8C 02 B4 */ lwz r12, 0x2b4(r12) -/* 80161E28 0015ED88 7C 00 00 34 */ cntlzw r0, r0 -/* 80161E2C 0015ED8C 90 A1 00 20 */ stw r5, 0x20(r1) -/* 80161E30 0015ED90 54 1F D9 7E */ srwi r31, r0, 5 -/* 80161E34 0015ED94 7D 89 03 A6 */ mtctr r12 -/* 80161E38 0015ED98 4E 80 04 21 */ bctrl -/* 80161E3C 0015ED9C 54 64 06 3E */ clrlwi r4, r3, 0x18 -/* 80161E40 0015EDA0 57 E0 06 3F */ clrlwi. r0, r31, 0x18 -/* 80161E44 0015EDA4 7C 64 00 D0 */ neg r3, r4 -/* 80161E48 0015EDA8 7C 63 23 78 */ or r3, r3, r4 -/* 80161E4C 0015EDAC 54 60 0F FE */ srwi r0, r3, 0x1f -/* 80161E50 0015EDB0 41 82 00 0C */ beq lbl_80161E5C -/* 80161E54 0015EDB4 28 00 00 00 */ cmplwi r0, 0 -/* 80161E58 0015EDB8 41 82 01 D0 */ beq lbl_80162028 -lbl_80161E5C: -/* 80161E5C 0015EDBC 80 7E 08 B8 */ lwz r3, 0x8b8(r30) -/* 80161E60 0015EDC0 7F C4 F3 78 */ mr r4, r30 -/* 80161E64 0015EDC4 80 63 00 00 */ lwz r3, 0(r3) -/* 80161E68 0015EDC8 4B F2 F6 F1 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager -/* 80161E6C 0015EDCC 57 E0 06 3F */ clrlwi. r0, r31, 0x18 -/* 80161E70 0015EDD0 20 63 00 01 */ subfic r3, r3, 1 -/* 80161E74 0015EDD4 7C 60 00 34 */ cntlzw r0, r3 -/* 80161E78 0015EDD8 54 1C D9 7E */ srwi r28, r0, 5 -/* 80161E7C 0015EDDC 41 82 00 54 */ beq lbl_80161ED0 -/* 80161E80 0015EDE0 57 80 06 3F */ clrlwi. r0, r28, 0x18 -/* 80161E84 0015EDE4 41 82 00 4C */ beq lbl_80161ED0 -/* 80161E88 0015EDE8 38 00 00 01 */ li r0, 1 -/* 80161E8C 0015EDEC 98 0D A8 B9 */ stb r0, lbl_805A9479@sda21(r13) -/* 80161E90 0015EDF0 98 0D A8 B8 */ stb r0, lbl_805A9478@sda21(r13) -/* 80161E94 0015EDF4 48 1E 81 21 */ bl Black__6CColorFv -/* 80161E98 0015EDF8 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 80161E9C 0015EDFC 7C 64 1B 78 */ mr r4, r3 -/* 80161EA0 0015EE00 C0 42 9F C8 */ lfs f2, lbl_805ABCE8@sda21(r2) -/* 80161EA4 0015EE04 38 60 00 02 */ li r3, 2 -/* 80161EA8 0015EE08 48 1A 83 E1 */ bl SetFog__9CGraphicsF11ERglFogModeffRC6CColor -/* 80161EAC 0015EE0C 80 7D 00 64 */ lwz r3, 0x64(r29) -/* 80161EB0 0015EE10 80 63 00 10 */ lwz r3, 0x10(r3) -/* 80161EB4 0015EE14 38 63 01 20 */ addi r3, r3, 0x120 -/* 80161EB8 0015EE18 4B F5 60 FD */ bl RenderSystemsToBeDrawnFirst__17CParticleDatabaseCFv -/* 80161EBC 0015EE1C 80 01 00 20 */ lwz r0, 0x20(r1) -/* 80161EC0 0015EE20 7F C3 F3 78 */ mr r3, r30 -/* 80161EC4 0015EE24 38 81 00 18 */ addi r4, r1, 0x18 -/* 80161EC8 0015EE28 90 01 00 18 */ stw r0, 0x18(r1) -/* 80161ECC 0015EE2C 4B EE 4E 4D */ bl sub_80046d18 -lbl_80161ED0: -/* 80161ED0 0015EE30 7F A3 EB 78 */ mr r3, r29 -/* 80161ED4 0015EE34 7F C4 F3 78 */ mr r4, r30 -/* 80161ED8 0015EE38 4B F1 61 55 */ bl Render__10CPatternedCFRC13CStateManager -/* 80161EDC 0015EE3C 57 E0 06 3F */ clrlwi. r0, r31, 0x18 -/* 80161EE0 0015EE40 41 82 00 54 */ beq lbl_80161F34 -/* 80161EE4 0015EE44 57 80 06 3F */ clrlwi. r0, r28, 0x18 -/* 80161EE8 0015EE48 41 82 00 4C */ beq lbl_80161F34 -/* 80161EEC 0015EE4C 48 1E 80 C9 */ bl Black__6CColorFv -/* 80161EF0 0015EE50 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 80161EF4 0015EE54 7C 64 1B 78 */ mr r4, r3 -/* 80161EF8 0015EE58 C0 42 9F C8 */ lfs f2, lbl_805ABCE8@sda21(r2) -/* 80161EFC 0015EE5C 38 60 00 02 */ li r3, 2 -/* 80161F00 0015EE60 48 1A 83 89 */ bl SetFog__9CGraphicsF11ERglFogModeffRC6CColor -/* 80161F04 0015EE64 80 7D 00 64 */ lwz r3, 0x64(r29) -/* 80161F08 0015EE68 80 63 00 10 */ lwz r3, 0x10(r3) -/* 80161F0C 0015EE6C 38 63 01 20 */ addi r3, r3, 0x120 -/* 80161F10 0015EE70 4B F5 60 15 */ bl RenderSystemsToBeDrawnLast__17CParticleDatabaseCFv -/* 80161F14 0015EE74 80 01 00 20 */ lwz r0, 0x20(r1) -/* 80161F18 0015EE78 7F C3 F3 78 */ mr r3, r30 -/* 80161F1C 0015EE7C 38 81 00 14 */ addi r4, r1, 0x14 -/* 80161F20 0015EE80 90 01 00 14 */ stw r0, 0x14(r1) -/* 80161F24 0015EE84 4B EE 4E 5D */ bl SetupFogForArea__13CStateManagerCF7TAreaId -/* 80161F28 0015EE88 38 00 00 00 */ li r0, 0 -/* 80161F2C 0015EE8C 98 0D A8 B9 */ stb r0, lbl_805A9479@sda21(r13) -/* 80161F30 0015EE90 98 0D A8 B8 */ stb r0, lbl_805A9478@sda21(r13) -lbl_80161F34: -/* 80161F34 0015EE94 57 E0 06 3F */ clrlwi. r0, r31, 0x18 -/* 80161F38 0015EE98 41 82 00 F0 */ beq lbl_80162028 -/* 80161F3C 0015EE9C C0 9D 05 DC */ lfs f4, 0x5dc(r29) -/* 80161F40 0015EEA0 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 80161F44 0015EEA4 C0 02 9F 90 */ lfs f0, lbl_805ABCB0@sda21(r2) -/* 80161F48 0015EEA8 EC 24 08 28 */ fsubs f1, f4, f1 -/* 80161F4C 0015EEAC FC 20 0A 10 */ fabs f1, f1 -/* 80161F50 0015EEB0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80161F54 0015EEB4 41 80 00 D4 */ blt lbl_80162028 -/* 80161F58 0015EEB8 C0 22 9F 7C */ lfs f1, lbl_805ABC9C@sda21(r2) -/* 80161F5C 0015EEBC 38 61 00 10 */ addi r3, r1, 0x10 -/* 80161F60 0015EEC0 FC 40 08 90 */ fmr f2, f1 -/* 80161F64 0015EEC4 FC 60 08 90 */ fmr f3, f1 -/* 80161F68 0015EEC8 48 20 14 85 */ bl __ct__6CColorFffff -/* 80161F6C 0015EECC C0 22 9F 7C */ lfs f1, lbl_805ABC9C@sda21(r2) -/* 80161F70 0015EED0 38 61 00 08 */ addi r3, r1, 8 -/* 80161F74 0015EED4 C0 42 9F 68 */ lfs f2, lbl_805ABC88@sda21(r2) -/* 80161F78 0015EED8 80 01 00 10 */ lwz r0, 0x10(r1) -/* 80161F7C 0015EEDC FC 80 08 90 */ fmr f4, f1 -/* 80161F80 0015EEE0 FC 60 10 90 */ fmr f3, f2 -/* 80161F84 0015EEE4 90 01 00 1C */ stw r0, 0x1c(r1) -/* 80161F88 0015EEE8 48 20 14 65 */ bl __ct__6CColorFffff -/* 80161F8C 0015EEEC C0 3D 05 E8 */ lfs f1, 0x5e8(r29) -/* 80161F90 0015EEF0 7C 65 1B 78 */ mr r5, r3 -/* 80161F94 0015EEF4 38 61 00 0C */ addi r3, r1, 0xc -/* 80161F98 0015EEF8 38 81 00 1C */ addi r4, r1, 0x1c -/* 80161F9C 0015EEFC 48 20 13 11 */ bl Lerp__6CColorFRC6CColorRC6CColorf -/* 80161FA0 0015EF00 3C 60 80 3D */ lis r3, lbl_803D0398@ha -/* 80161FA4 0015EF04 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80161FA8 0015EF08 38 83 03 98 */ addi r4, r3, lbl_803D0398@l -/* 80161FAC 0015EF0C 38 61 00 34 */ addi r3, r1, 0x34 -/* 80161FB0 0015EF10 38 84 00 2A */ addi r4, r4, 0x2a -/* 80161FB4 0015EF14 4B EA 2D 05 */ bl string_l__4rstlFPCc -/* 80161FB8 0015EF18 7F A4 EB 78 */ mr r4, r29 -/* 80161FBC 0015EF1C 38 61 00 44 */ addi r3, r1, 0x44 -/* 80161FC0 0015EF20 38 A1 00 34 */ addi r5, r1, 0x34 -/* 80161FC4 0015EF24 4B F1 69 B5 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80161FC8 0015EF28 38 61 00 74 */ addi r3, r1, 0x74 -/* 80161FCC 0015EF2C 38 81 00 44 */ addi r4, r1, 0x44 -/* 80161FD0 0015EF30 48 1B 0B A5 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80161FD4 0015EF34 38 61 00 34 */ addi r3, r1, 0x34 -/* 80161FD8 0015EF38 48 1D BB 09 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 80161FDC 0015EF3C 38 E0 00 03 */ li r7, 3 -/* 80161FE0 0015EF40 39 20 00 08 */ li r9, 8 -/* 80161FE4 0015EF44 54 E0 00 3A */ rlwinm r0, r7, 0, 0, 0x1d -/* 80161FE8 0015EF48 39 00 00 00 */ li r8, 0 -/* 80161FEC 0015EF4C 60 00 00 03 */ ori r0, r0, 3 -/* 80161FF0 0015EF50 B0 E1 00 26 */ sth r7, 0x26(r1) -/* 80161FF4 0015EF54 80 7D 08 2C */ lwz r3, 0x82c(r29) -/* 80161FF8 0015EF58 7F C4 F3 78 */ mr r4, r30 -/* 80161FFC 0015EF5C 99 21 00 24 */ stb r9, 0x24(r1) -/* 80162000 0015EF60 38 A1 00 74 */ addi r5, r1, 0x74 -/* 80162004 0015EF64 80 DD 00 90 */ lwz r6, 0x90(r29) -/* 80162008 0015EF68 38 E1 00 2C */ addi r7, r1, 0x2c -/* 8016200C 0015EF6C 99 01 00 25 */ stb r8, 0x25(r1) -/* 80162010 0015EF70 93 E1 00 28 */ stw r31, 0x28(r1) -/* 80162014 0015EF74 99 21 00 2C */ stb r9, 0x2c(r1) -/* 80162018 0015EF78 99 01 00 2D */ stb r8, 0x2d(r1) -/* 8016201C 0015EF7C B0 01 00 2E */ sth r0, 0x2e(r1) -/* 80162020 0015EF80 93 E1 00 30 */ stw r31, 0x30(r1) -/* 80162024 0015EF84 4B FB 2D 99 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags -lbl_80162028: -/* 80162028 0015EF88 80 01 00 C4 */ lwz r0, 0xc4(r1) -/* 8016202C 0015EF8C 83 E1 00 BC */ lwz r31, 0xbc(r1) -/* 80162030 0015EF90 83 C1 00 B8 */ lwz r30, 0xb8(r1) -/* 80162034 0015EF94 83 A1 00 B4 */ lwz r29, 0xb4(r1) -/* 80162038 0015EF98 83 81 00 B0 */ lwz r28, 0xb0(r1) -/* 8016203C 0015EF9C 7C 08 03 A6 */ mtlr r0 -/* 80162040 0015EFA0 38 21 00 C0 */ addi r1, r1, 0xc0 -/* 80162044 0015EFA4 4E 80 00 20 */ blr - -.global PreRender__6CDroneFR13CStateManagerRC14CFrustumPlanes -PreRender__6CDroneFR13CStateManagerRC14CFrustumPlanes: -/* 80162048 0015EFA8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8016204C 0015EFAC 7C 08 02 A6 */ mflr r0 -/* 80162050 0015EFB0 90 01 00 14 */ stw r0, 0x14(r1) -/* 80162054 0015EFB4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80162058 0015EFB8 7C 9F 23 78 */ mr r31, r4 -/* 8016205C 0015EFBC 93 C1 00 08 */ stw r30, 8(r1) -/* 80162060 0015EFC0 7C 7E 1B 78 */ mr r30, r3 -/* 80162064 0015EFC4 4B F1 62 79 */ bl PreRender__10CPatternedFR13CStateManagerRC14CFrustumPlanes -/* 80162068 0015EFC8 80 1E 03 FC */ lwz r0, 0x3fc(r30) -/* 8016206C 0015EFCC 2C 00 00 01 */ cmpwi r0, 1 -/* 80162070 0015EFD0 40 82 00 9C */ bne lbl_8016210C -/* 80162074 0015EFD4 80 BE 00 64 */ lwz r5, 0x64(r30) -/* 80162078 0015EFD8 38 80 00 00 */ li r4, 0 -/* 8016207C 0015EFDC 7C 05 00 D0 */ neg r0, r5 -/* 80162080 0015EFE0 7C 00 2B 78 */ or r0, r0, r5 -/* 80162084 0015EFE4 54 03 0F FF */ rlwinm. r3, r0, 1, 0x1f, 0x1f -/* 80162088 0015EFE8 41 82 00 20 */ beq lbl_801620A8 -/* 8016208C 0015EFEC 80 05 00 10 */ lwz r0, 0x10(r5) -/* 80162090 0015EFF0 28 00 00 00 */ cmplwi r0, 0 -/* 80162094 0015EFF4 40 82 00 10 */ bne lbl_801620A4 -/* 80162098 0015EFF8 88 05 00 28 */ lbz r0, 0x28(r5) -/* 8016209C 0015EFFC 28 00 00 00 */ cmplwi r0, 0 -/* 801620A0 0015F000 41 82 00 08 */ beq lbl_801620A8 -lbl_801620A4: -/* 801620A4 0015F004 38 80 00 01 */ li r4, 1 -lbl_801620A8: -/* 801620A8 0015F008 54 80 06 3F */ clrlwi. r0, r4, 0x18 -/* 801620AC 0015F00C 41 82 00 60 */ beq lbl_8016210C -/* 801620B0 0015F010 28 03 00 00 */ cmplwi r3, 0 -/* 801620B4 0015F014 38 60 00 00 */ li r3, 0 -/* 801620B8 0015F018 41 82 00 14 */ beq lbl_801620CC -/* 801620BC 0015F01C 80 05 00 10 */ lwz r0, 0x10(r5) -/* 801620C0 0015F020 28 00 00 00 */ cmplwi r0, 0 -/* 801620C4 0015F024 41 82 00 08 */ beq lbl_801620CC -/* 801620C8 0015F028 38 60 00 01 */ li r3, 1 -lbl_801620CC: -/* 801620CC 0015F02C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801620D0 0015F030 41 82 00 3C */ beq lbl_8016210C -/* 801620D4 0015F034 7F C3 F3 78 */ mr r3, r30 -/* 801620D8 0015F038 7F E4 FB 78 */ mr r4, r31 -/* 801620DC 0015F03C 81 9E 00 00 */ lwz r12, 0(r30) -/* 801620E0 0015F040 81 8C 02 B4 */ lwz r12, 0x2b4(r12) -/* 801620E4 0015F044 7D 89 03 A6 */ mtctr r12 -/* 801620E8 0015F048 4E 80 04 21 */ bctrl -/* 801620EC 0015F04C 54 63 06 3E */ clrlwi r3, r3, 0x18 -/* 801620F0 0015F050 7C 03 00 D0 */ neg r0, r3 -/* 801620F4 0015F054 7C 00 1B 78 */ or r0, r0, r3 -/* 801620F8 0015F058 54 00 0F FF */ rlwinm. r0, r0, 1, 0x1f, 0x1f -/* 801620FC 0015F05C 40 82 00 10 */ bne lbl_8016210C -/* 80162100 0015F060 80 7E 00 64 */ lwz r3, 0x64(r30) -/* 80162104 0015F064 80 63 00 10 */ lwz r3, 0x10(r3) -/* 80162108 0015F068 4B EC A9 59 */ bl BuildPose__9CAnimDataFv -lbl_8016210C: -/* 8016210C 0015F06C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80162110 0015F070 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80162114 0015F074 83 C1 00 08 */ lwz r30, 8(r1) -/* 80162118 0015F078 7C 08 03 A6 */ mtlr r0 -/* 8016211C 0015F07C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80162120 0015F080 4E 80 00 20 */ blr - -.global Death__6CDroneFRC9CVector3fR13CStateManager -Death__6CDroneFRC9CVector3fR13CStateManager: -/* 80162124 0015F084 94 21 FE F0 */ stwu r1, -0x110(r1) -/* 80162128 0015F088 7C 08 02 A6 */ mflr r0 -/* 8016212C 0015F08C 90 01 01 14 */ stw r0, 0x114(r1) -/* 80162130 0015F090 93 E1 01 0C */ stw r31, 0x10c(r1) -/* 80162134 0015F094 7C DF 33 78 */ mr r31, r6 -/* 80162138 0015F098 93 C1 01 08 */ stw r30, 0x108(r1) -/* 8016213C 0015F09C 7C 9E 23 78 */ mr r30, r4 -/* 80162140 0015F0A0 93 A1 01 04 */ stw r29, 0x104(r1) -/* 80162144 0015F0A4 7C 7D 1B 78 */ mr r29, r3 -/* 80162148 0015F0A8 93 81 01 00 */ stw r28, 0x100(r1) -/* 8016214C 0015F0AC 7C BC 2B 78 */ mr r28, r5 -/* 80162150 0015F0B0 88 03 04 00 */ lbz r0, 0x400(r3) -/* 80162154 0015F0B4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 80162158 0015F0B8 41 82 01 E8 */ beq lbl_80162340 -/* 8016215C 0015F0BC 38 00 00 00 */ li r0, 0 -/* 80162160 0015F0C0 38 A0 00 00 */ li r5, 0 -/* 80162164 0015F0C4 98 1D 08 28 */ stb r0, 0x828(r29) -/* 80162168 0015F0C8 38 C0 00 00 */ li r6, 0 -/* 8016216C 0015F0CC 98 1D 08 29 */ stb r0, 0x829(r29) -/* 80162170 0015F0D0 48 00 11 35 */ bl sub_801632a4 -/* 80162174 0015F0D4 7F A3 EB 78 */ mr r3, r29 -/* 80162178 0015F0D8 7F C4 F3 78 */ mr r4, r30 -/* 8016217C 0015F0DC 38 A0 00 01 */ li r5, 1 -/* 80162180 0015F0E0 38 C0 00 00 */ li r6, 0 -/* 80162184 0015F0E4 48 00 11 21 */ bl sub_801632a4 -/* 80162188 0015F0E8 7F A3 EB 78 */ mr r3, r29 -/* 8016218C 0015F0EC 7F C4 F3 78 */ mr r4, r30 -/* 80162190 0015F0F0 81 9D 00 00 */ lwz r12, 0(r29) -/* 80162194 0015F0F4 38 A0 00 00 */ li r5, 0 -/* 80162198 0015F0F8 81 8C 02 D4 */ lwz r12, 0x2d4(r12) -/* 8016219C 0015F0FC 7D 89 03 A6 */ mtctr r12 -/* 801621A0 0015F100 4E 80 04 21 */ bctrl -/* 801621A4 0015F104 7F A3 EB 78 */ mr r3, r29 -/* 801621A8 0015F108 7F C4 F3 78 */ mr r4, r30 -/* 801621AC 0015F10C 81 9D 00 00 */ lwz r12, 0(r29) -/* 801621B0 0015F110 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 801621B4 0015F114 7D 89 03 A6 */ mtctr r12 -/* 801621B8 0015F118 4E 80 04 21 */ bctrl -/* 801621BC 0015F11C C0 5D 03 E4 */ lfs f2, 0x3e4(r29) -/* 801621C0 0015F120 C0 23 00 00 */ lfs f1, 0(r3) -/* 801621C4 0015F124 C0 1D 03 D8 */ lfs f0, 0x3d8(r29) -/* 801621C8 0015F128 EC 22 08 28 */ fsubs f1, f2, f1 -/* 801621CC 0015F12C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801621D0 0015F130 4C 41 13 82 */ cror 2, 1, 2 -/* 801621D4 0015F134 40 82 00 F0 */ bne lbl_801622C4 -/* 801621D8 0015F138 88 1D 08 34 */ lbz r0, 0x834(r29) -/* 801621DC 0015F13C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 801621E0 0015F140 40 82 00 E4 */ bne lbl_801622C4 -/* 801621E4 0015F144 88 1D 04 00 */ lbz r0, 0x400(r29) -/* 801621E8 0015F148 38 60 00 01 */ li r3, 1 -/* 801621EC 0015F14C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 801621F0 0015F150 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 801621F4 0015F154 98 1D 04 00 */ stb r0, 0x400(r29) -/* 801621F8 0015F158 C0 3D 03 E0 */ lfs f1, 0x3e0(r29) -/* 801621FC 0015F15C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80162200 0015F160 4C 40 13 82 */ cror 2, 0, 2 -/* 80162204 0015F164 40 82 00 FC */ bne lbl_80162300 -/* 80162208 0015F168 C0 DD 00 60 */ lfs f6, 0x60(r29) -/* 8016220C 0015F16C 38 61 00 34 */ addi r3, r1, 0x34 -/* 80162210 0015F170 C0 1C 00 08 */ lfs f0, 8(r28) -/* 80162214 0015F174 38 81 00 08 */ addi r4, r1, 8 -/* 80162218 0015F178 C0 BD 00 50 */ lfs f5, 0x50(r29) -/* 8016221C 0015F17C C0 5D 00 40 */ lfs f2, 0x40(r29) -/* 80162220 0015F180 EC 66 00 28 */ fsubs f3, f6, f0 -/* 80162224 0015F184 C0 1C 00 04 */ lfs f0, 4(r28) -/* 80162228 0015F188 C0 3C 00 00 */ lfs f1, 0(r28) -/* 8016222C 0015F18C EC 85 00 28 */ fsubs f4, f5, f0 -/* 80162230 0015F190 C0 02 9F CC */ lfs f0, lbl_805ABCEC@sda21(r2) -/* 80162234 0015F194 EC 22 08 28 */ fsubs f1, f2, f1 -/* 80162238 0015F198 D0 41 00 28 */ stfs f2, 0x28(r1) -/* 8016223C 0015F19C D0 A1 00 2C */ stfs f5, 0x2c(r1) -/* 80162240 0015F1A0 D0 C1 00 30 */ stfs f6, 0x30(r1) -/* 80162244 0015F1A4 D0 21 00 1C */ stfs f1, 0x1c(r1) -/* 80162248 0015F1A8 D0 81 00 20 */ stfs f4, 0x20(r1) -/* 8016224C 0015F1AC D0 61 00 24 */ stfs f3, 0x24(r1) -/* 80162250 0015F1B0 D0 01 00 08 */ stfs f0, 8(r1) -/* 80162254 0015F1B4 48 1B 16 ED */ bl RotateX__12CTransform4fFRC9CRelAngle -/* 80162258 0015F1B8 3C 80 80 5A */ lis r4, lbl_805A66F4@ha -/* 8016225C 0015F1BC 38 61 00 64 */ addi r3, r1, 0x64 -/* 80162260 0015F1C0 38 C4 66 F4 */ addi r6, r4, lbl_805A66F4@l -/* 80162264 0015F1C4 38 A1 00 1C */ addi r5, r1, 0x1c -/* 80162268 0015F1C8 38 81 00 28 */ addi r4, r1, 0x28 -/* 8016226C 0015F1CC 48 1B 18 A5 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f -/* 80162270 0015F1D0 38 61 00 94 */ addi r3, r1, 0x94 -/* 80162274 0015F1D4 38 81 00 64 */ addi r4, r1, 0x64 -/* 80162278 0015F1D8 38 A1 00 34 */ addi r5, r1, 0x34 -/* 8016227C 0015F1DC 48 1B 06 D5 */ bl __ml__12CTransform4fCFRC12CTransform4f -/* 80162280 0015F1E0 38 61 00 C4 */ addi r3, r1, 0xc4 -/* 80162284 0015F1E4 38 81 00 94 */ addi r4, r1, 0x94 -/* 80162288 0015F1E8 48 1B 08 ED */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8016228C 0015F1EC 38 7D 00 34 */ addi r3, r29, 0x34 -/* 80162290 0015F1F0 38 81 00 C4 */ addi r4, r1, 0xc4 -/* 80162294 0015F1F4 48 1B 08 AD */ bl __as__12CTransform4fFRC12CTransform4f -/* 80162298 0015F1F8 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 8016229C 0015F1FC 38 60 00 01 */ li r3, 1 -/* 801622A0 0015F200 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 801622A4 0015F204 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 801622A8 0015F208 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 801622AC 0015F20C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 801622B0 0015F210 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 801622B4 0015F214 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 801622B8 0015F218 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d -/* 801622BC 0015F21C 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 801622C0 0015F220 48 00 00 40 */ b lbl_80162300 -lbl_801622C4: -/* 801622C4 0015F224 3C 80 80 3D */ lis r4, lbl_803D0398@ha -/* 801622C8 0015F228 38 61 00 0C */ addi r3, r1, 0xc -/* 801622CC 0015F22C 38 84 03 98 */ addi r4, r4, lbl_803D0398@l -/* 801622D0 0015F230 38 84 00 36 */ addi r4, r4, 0x36 -/* 801622D4 0015F234 4B EA 29 E5 */ bl string_l__4rstlFPCc -/* 801622D8 0015F238 7F A3 EB 78 */ mr r3, r29 -/* 801622DC 0015F23C 4B F4 06 1D */ bl GetStateMachine__3CAiFv -/* 801622E0 0015F240 7C 66 1B 78 */ mr r6, r3 -/* 801622E4 0015F244 7F C4 F3 78 */ mr r4, r30 -/* 801622E8 0015F248 7F A5 EB 78 */ mr r5, r29 -/* 801622EC 0015F24C 38 7D 03 30 */ addi r3, r29, 0x330 -/* 801622F0 0015F250 38 E1 00 0C */ addi r7, r1, 0xc -/* 801622F4 0015F254 4B F1 D9 11 */ bl "SetState__18CStateMachineStateFR13CStateManagerR3CAiPC13CStateMachineRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 801622F8 0015F258 38 61 00 0C */ addi r3, r1, 0xc -/* 801622FC 0015F25C 48 1D B7 E5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -lbl_80162300: -/* 80162300 0015F260 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 80162304 0015F264 4B FD 7D C9 */ bl GetPercentageFrozen__15CBodyControllerCFv -/* 80162308 0015F268 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 8016230C 0015F26C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80162310 0015F270 40 81 00 0C */ ble lbl_8016231C -/* 80162314 0015F274 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 80162318 0015F278 4B FD 7E 3D */ bl UnFreeze__15CBodyControllerFv -lbl_8016231C: -/* 8016231C 0015F27C 88 1D 04 00 */ lbz r0, 0x400(r29) -/* 80162320 0015F280 38 60 00 00 */ li r3, 0 -/* 80162324 0015F284 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 80162328 0015F288 7F A3 EB 78 */ mr r3, r29 -/* 8016232C 0015F28C 98 1D 04 00 */ stb r0, 0x400(r29) -/* 80162330 0015F290 7F E4 FB 78 */ mr r4, r31 -/* 80162334 0015F294 7F C5 F3 78 */ mr r5, r30 -/* 80162338 0015F298 38 C0 FF FF */ li r6, -1 -/* 8016233C 0015F29C 4B EE ED 85 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -lbl_80162340: -/* 80162340 0015F2A0 80 01 01 14 */ lwz r0, 0x114(r1) -/* 80162344 0015F2A4 83 E1 01 0C */ lwz r31, 0x10c(r1) -/* 80162348 0015F2A8 83 C1 01 08 */ lwz r30, 0x108(r1) -/* 8016234C 0015F2AC 83 A1 01 04 */ lwz r29, 0x104(r1) -/* 80162350 0015F2B0 83 81 01 00 */ lwz r28, 0x100(r1) -/* 80162354 0015F2B4 7C 08 03 A6 */ mtlr r0 -/* 80162358 0015F2B8 38 21 01 10 */ addi r1, r1, 0x110 -/* 8016235C 0015F2BC 4E 80 00 20 */ blr - -.global Dead__6CDroneFR13CStateManager9EStateMsgf -Dead__6CDroneFR13CStateManager9EStateMsgf: -/* 80162360 0015F2C0 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 80162364 0015F2C4 7C 08 02 A6 */ mflr r0 -/* 80162368 0015F2C8 2C 05 00 01 */ cmpwi r5, 1 -/* 8016236C 0015F2CC 90 01 00 54 */ stw r0, 0x54(r1) -/* 80162370 0015F2D0 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 80162374 0015F2D4 7C 9F 23 78 */ mr r31, r4 -/* 80162378 0015F2D8 93 C1 00 48 */ stw r30, 0x48(r1) -/* 8016237C 0015F2DC 7C 7E 1B 78 */ mr r30, r3 -/* 80162380 0015F2E0 41 82 00 D0 */ beq lbl_80162450 -/* 80162384 0015F2E4 40 80 02 60 */ bge lbl_801625E4 -/* 80162388 0015F2E8 2C 05 00 00 */ cmpwi r5, 0 -/* 8016238C 0015F2EC 40 80 00 0C */ bge lbl_80162398 -/* 80162390 0015F2F0 48 00 02 54 */ b lbl_801625E4 -/* 80162394 0015F2F4 48 00 02 50 */ b lbl_801625E4 -lbl_80162398: -/* 80162398 0015F2F8 38 7E 04 60 */ addi r3, r30, 0x460 -/* 8016239C 0015F2FC 38 80 00 00 */ li r4, 0 -/* 801623A0 0015F300 48 0D 19 C5 */ bl SetAutoResetImpulse__20CKnockBackControllerFb -/* 801623A4 0015F304 88 1E 08 34 */ lbz r0, 0x834(r30) -/* 801623A8 0015F308 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 801623AC 0015F30C 41 82 00 30 */ beq lbl_801623DC -/* 801623B0 0015F310 7F C3 F3 78 */ mr r3, r30 -/* 801623B4 0015F314 81 9E 00 00 */ lwz r12, 0(r30) -/* 801623B8 0015F318 81 8C 00 80 */ lwz r12, 0x80(r12) -/* 801623BC 0015F31C 7D 89 03 A6 */ mtctr r12 -/* 801623C0 0015F320 4E 80 04 21 */ bctrl -/* 801623C4 0015F324 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 801623C8 0015F328 FC 20 08 50 */ fneg f1, f1 -/* 801623CC 0015F32C D0 1E 01 50 */ stfs f0, 0x150(r30) -/* 801623D0 0015F330 D0 1E 01 54 */ stfs f0, 0x154(r30) -/* 801623D4 0015F334 D0 3E 01 58 */ stfs f1, 0x158(r30) -/* 801623D8 0015F338 48 00 00 38 */ b lbl_80162410 -lbl_801623DC: -/* 801623DC 0015F33C 7F C3 F3 78 */ mr r3, r30 -/* 801623E0 0015F340 4B FB 8F 99 */ bl Stop__13CPhysicsActorFv -/* 801623E4 0015F344 3C 80 80 5A */ lis r4, skZero3f@ha -/* 801623E8 0015F348 7F C3 F3 78 */ mr r3, r30 -/* 801623EC 0015F34C 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 801623F0 0015F350 4B FB 88 B1 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -/* 801623F4 0015F354 3C 60 80 5A */ lis r3, skZero3f@ha -/* 801623F8 0015F358 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) -/* 801623FC 0015F35C D0 1E 01 50 */ stfs f0, 0x150(r30) -/* 80162400 0015F360 C0 03 00 04 */ lfs f0, 4(r3) -/* 80162404 0015F364 D0 1E 01 54 */ stfs f0, 0x154(r30) -/* 80162408 0015F368 C0 03 00 08 */ lfs f0, 8(r3) -/* 8016240C 0015F36C D0 1E 01 58 */ stfs f0, 0x158(r30) -lbl_80162410: -/* 80162410 0015F370 88 1E 04 01 */ lbz r0, 0x401(r30) -/* 80162414 0015F374 38 60 00 01 */ li r3, 1 -/* 80162418 0015F378 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 8016241C 0015F37C C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 80162420 0015F380 98 1E 04 01 */ stb r0, 0x401(r30) -/* 80162424 0015F384 7F C3 F3 78 */ mr r3, r30 -/* 80162428 0015F388 7F E4 FB 78 */ mr r4, r31 -/* 8016242C 0015F38C 38 A0 00 00 */ li r5, 0 -/* 80162430 0015F390 D0 1E 05 C8 */ stfs f0, 0x5c8(r30) -/* 80162434 0015F394 81 9E 00 00 */ lwz r12, 0(r30) -/* 80162438 0015F398 81 8C 02 D4 */ lwz r12, 0x2d4(r12) -/* 8016243C 0015F39C 7D 89 03 A6 */ mtctr r12 -/* 80162440 0015F3A0 4E 80 04 21 */ bctrl -/* 80162444 0015F3A4 38 00 00 00 */ li r0, 0 -/* 80162448 0015F3A8 90 1E 07 C8 */ stw r0, 0x7c8(r30) -/* 8016244C 0015F3AC 48 00 01 98 */ b lbl_801625E4 -lbl_80162450: -/* 80162450 0015F3B0 80 1E 07 C8 */ lwz r0, 0x7c8(r30) -/* 80162454 0015F3B4 2C 00 00 00 */ cmpwi r0, 0 -/* 80162458 0015F3B8 41 82 00 08 */ beq lbl_80162460 -/* 8016245C 0015F3BC 48 00 01 88 */ b lbl_801625E4 -lbl_80162460: -/* 80162460 0015F3C0 88 1E 08 34 */ lbz r0, 0x834(r30) -/* 80162464 0015F3C4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80162468 0015F3C8 41 82 00 D0 */ beq lbl_80162538 -/* 8016246C 0015F3CC 3C A0 80 3E */ lis r5, lbl_803DAA68@ha -/* 80162470 0015F3D0 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80162474 0015F3D4 38 83 66 A0 */ addi r4, r3, skZero3f@l -/* 80162478 0015F3D8 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 8016247C 0015F3DC C0 04 00 00 */ lfs f0, 0(r4) -/* 80162480 0015F3E0 38 E5 AA 68 */ addi r7, r5, lbl_803DAA68@l -/* 80162484 0015F3E4 C0 24 00 04 */ lfs f1, 4(r4) -/* 80162488 0015F3E8 3C A0 80 3E */ lis r5, lbl_803DAA5C@ha -/* 8016248C 0015F3EC C0 44 00 08 */ lfs f2, 8(r4) -/* 80162490 0015F3F0 38 C0 00 0F */ li r6, 0xf -/* 80162494 0015F3F4 38 00 00 00 */ li r0, 0 -/* 80162498 0015F3F8 3B E3 00 04 */ addi r31, r3, 4 -/* 8016249C 0015F3FC 90 E1 00 20 */ stw r7, 0x20(r1) -/* 801624A0 0015F400 38 A5 AA 5C */ addi r5, r5, lbl_803DAA5C@l -/* 801624A4 0015F404 7F E3 FB 78 */ mr r3, r31 -/* 801624A8 0015F408 38 80 00 0F */ li r4, 0xf -/* 801624AC 0015F40C 90 C1 00 24 */ stw r6, 0x24(r1) -/* 801624B0 0015F410 90 A1 00 20 */ stw r5, 0x20(r1) -/* 801624B4 0015F414 D0 01 00 28 */ stfs f0, 0x28(r1) -/* 801624B8 0015F418 D0 21 00 2C */ stfs f1, 0x2c(r1) -/* 801624BC 0015F41C D0 41 00 30 */ stfs f2, 0x30(r1) -/* 801624C0 0015F420 D0 01 00 34 */ stfs f0, 0x34(r1) -/* 801624C4 0015F424 D0 21 00 38 */ stfs f1, 0x38(r1) -/* 801624C8 0015F428 D0 41 00 3C */ stfs f2, 0x3c(r1) -/* 801624CC 0015F42C 98 01 00 40 */ stb r0, 0x40(r1) -/* 801624D0 0015F430 4B FC EF 69 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 801624D4 0015F434 80 01 00 24 */ lwz r0, 0x24(r1) -/* 801624D8 0015F438 3C 60 80 3E */ lis r3, lbl_803DAA5C@ha -/* 801624DC 0015F43C 38 83 AA 5C */ addi r4, r3, lbl_803DAA5C@l -/* 801624E0 0015F440 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 801624E4 0015F444 90 1F 01 B0 */ stw r0, 0x1b0(r31) -/* 801624E8 0015F448 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l -/* 801624EC 0015F44C 80 A1 00 28 */ lwz r5, 0x28(r1) -/* 801624F0 0015F450 38 00 00 01 */ li r0, 1 -/* 801624F4 0015F454 80 C1 00 2C */ lwz r6, 0x2c(r1) -/* 801624F8 0015F458 90 BF 01 B4 */ stw r5, 0x1b4(r31) -/* 801624FC 0015F45C 80 A1 00 30 */ lwz r5, 0x30(r1) -/* 80162500 0015F460 90 DF 01 B8 */ stw r6, 0x1b8(r31) -/* 80162504 0015F464 80 C1 00 34 */ lwz r6, 0x34(r1) -/* 80162508 0015F468 90 BF 01 BC */ stw r5, 0x1bc(r31) -/* 8016250C 0015F46C 80 A1 00 38 */ lwz r5, 0x38(r1) -/* 80162510 0015F470 90 DF 01 C0 */ stw r6, 0x1c0(r31) -/* 80162514 0015F474 80 C1 00 3C */ lwz r6, 0x3c(r1) -/* 80162518 0015F478 90 BF 01 C4 */ stw r5, 0x1c4(r31) -/* 8016251C 0015F47C 88 A1 00 40 */ lbz r5, 0x40(r1) -/* 80162520 0015F480 90 DF 01 C8 */ stw r6, 0x1c8(r31) -/* 80162524 0015F484 98 BF 01 CC */ stb r5, 0x1cc(r31) -/* 80162528 0015F488 90 81 00 20 */ stw r4, 0x20(r1) -/* 8016252C 0015F48C 90 61 00 20 */ stw r3, 0x20(r1) -/* 80162530 0015F490 90 1E 07 C8 */ stw r0, 0x7c8(r30) -/* 80162534 0015F494 48 00 00 B0 */ b lbl_801625E4 -lbl_80162538: -/* 80162538 0015F498 3C A0 80 3E */ lis r5, lbl_803DAA68@ha -/* 8016253C 0015F49C 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80162540 0015F4A0 38 83 66 A0 */ addi r4, r3, skZero3f@l -/* 80162544 0015F4A4 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 80162548 0015F4A8 38 E5 AA 68 */ addi r7, r5, lbl_803DAA68@l -/* 8016254C 0015F4AC C0 44 00 00 */ lfs f2, 0(r4) -/* 80162550 0015F4B0 C0 24 00 04 */ lfs f1, 4(r4) -/* 80162554 0015F4B4 3C A0 80 3E */ lis r5, lbl_803DAA50@ha -/* 80162558 0015F4B8 C0 04 00 08 */ lfs f0, 8(r4) -/* 8016255C 0015F4BC 38 C0 00 03 */ li r6, 3 -/* 80162560 0015F4C0 38 00 00 00 */ li r0, 0 -/* 80162564 0015F4C4 3B E3 00 04 */ addi r31, r3, 4 -/* 80162568 0015F4C8 90 E1 00 08 */ stw r7, 8(r1) -/* 8016256C 0015F4CC 38 A5 AA 50 */ addi r5, r5, lbl_803DAA50@l -/* 80162570 0015F4D0 7F E3 FB 78 */ mr r3, r31 -/* 80162574 0015F4D4 38 80 00 03 */ li r4, 3 -/* 80162578 0015F4D8 90 C1 00 0C */ stw r6, 0xc(r1) -/* 8016257C 0015F4DC 90 A1 00 08 */ stw r5, 8(r1) -/* 80162580 0015F4E0 D0 41 00 10 */ stfs f2, 0x10(r1) -/* 80162584 0015F4E4 D0 21 00 14 */ stfs f1, 0x14(r1) -/* 80162588 0015F4E8 D0 01 00 18 */ stfs f0, 0x18(r1) -/* 8016258C 0015F4EC 90 01 00 1C */ stw r0, 0x1c(r1) -/* 80162590 0015F4F0 4B FC EE A9 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80162594 0015F4F4 80 01 00 0C */ lwz r0, 0xc(r1) -/* 80162598 0015F4F8 3C 60 80 3E */ lis r3, lbl_803DAA50@ha -/* 8016259C 0015F4FC 38 A3 AA 50 */ addi r5, r3, lbl_803DAA50@l -/* 801625A0 0015F500 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 801625A4 0015F504 90 1F 00 E0 */ stw r0, 0xe0(r31) -/* 801625A8 0015F508 38 83 AA 68 */ addi r4, r3, lbl_803DAA68@l -/* 801625AC 0015F50C 80 E1 00 10 */ lwz r7, 0x10(r1) -/* 801625B0 0015F510 38 00 00 01 */ li r0, 1 -/* 801625B4 0015F514 80 C1 00 14 */ lwz r6, 0x14(r1) -/* 801625B8 0015F518 7F C3 F3 78 */ mr r3, r30 -/* 801625BC 0015F51C 90 FF 00 E4 */ stw r7, 0xe4(r31) -/* 801625C0 0015F520 80 E1 00 18 */ lwz r7, 0x18(r1) -/* 801625C4 0015F524 90 DF 00 E8 */ stw r6, 0xe8(r31) -/* 801625C8 0015F528 80 C1 00 1C */ lwz r6, 0x1c(r1) -/* 801625CC 0015F52C 90 FF 00 EC */ stw r7, 0xec(r31) -/* 801625D0 0015F530 90 DF 00 F0 */ stw r6, 0xf0(r31) -/* 801625D4 0015F534 90 A1 00 08 */ stw r5, 8(r1) -/* 801625D8 0015F538 90 81 00 08 */ stw r4, 8(r1) -/* 801625DC 0015F53C 90 1E 07 C8 */ stw r0, 0x7c8(r30) -/* 801625E0 0015F540 4B FB 8D 99 */ bl Stop__13CPhysicsActorFv -lbl_801625E4: -/* 801625E4 0015F544 80 01 00 54 */ lwz r0, 0x54(r1) -/* 801625E8 0015F548 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 801625EC 0015F54C 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 801625F0 0015F550 7C 08 03 A6 */ mtlr r0 -/* 801625F4 0015F554 38 21 00 50 */ addi r1, r1, 0x50 -/* 801625F8 0015F558 4E 80 00 20 */ blr - -.global SpotPlayer__6CDroneFR13CStateManagerf -SpotPlayer__6CDroneFR13CStateManagerf: -/* 801625FC 0015F55C 94 21 FF 10 */ stwu r1, -0xf0(r1) -/* 80162600 0015F560 7C 08 02 A6 */ mflr r0 -/* 80162604 0015F564 90 01 00 F4 */ stw r0, 0xf4(r1) -/* 80162608 0015F568 DB E1 00 E0 */ stfd f31, 0xe0(r1) -/* 8016260C 0015F56C F3 E1 00 E8 */ psq_st f31, 232(r1), 0, qr0 -/* 80162610 0015F570 DB C1 00 D0 */ stfd f30, 0xd0(r1) -/* 80162614 0015F574 F3 C1 00 D8 */ psq_st f30, 216(r1), 0, qr0 -/* 80162618 0015F578 DB A1 00 C0 */ stfd f29, 0xc0(r1) -/* 8016261C 0015F57C F3 A1 00 C8 */ psq_st f29, 200(r1), 0, qr0 -/* 80162620 0015F580 DB 81 00 B0 */ stfd f28, 0xb0(r1) -/* 80162624 0015F584 F3 81 00 B8 */ psq_st f28, 184(r1), 0, qr0 -/* 80162628 0015F588 DB 61 00 A0 */ stfd f27, 0xa0(r1) -/* 8016262C 0015F58C F3 61 00 A8 */ psq_st f27, 168(r1), 0, qr0 -/* 80162630 0015F590 DB 41 00 90 */ stfd f26, 0x90(r1) -/* 80162634 0015F594 F3 41 00 98 */ psq_st f26, 152(r1), 0, qr0 -/* 80162638 0015F598 93 E1 00 8C */ stw r31, 0x8c(r1) -/* 8016263C 0015F59C 93 C1 00 88 */ stw r30, 0x88(r1) -/* 80162640 0015F5A0 7C 9F 23 78 */ mr r31, r4 -/* 80162644 0015F5A4 7C 7E 1B 78 */ mr r30, r3 -/* 80162648 0015F5A8 80 A4 08 4C */ lwz r5, 0x84c(r4) -/* 8016264C 0015F5AC C0 03 03 BC */ lfs f0, 0x3bc(r3) -/* 80162650 0015F5B0 C0 E5 00 50 */ lfs f7, 0x50(r5) -/* 80162654 0015F5B4 C0 23 00 50 */ lfs f1, 0x50(r3) -/* 80162658 0015F5B8 EC 00 00 32 */ fmuls f0, f0, f0 -/* 8016265C 0015F5BC C0 45 00 40 */ lfs f2, 0x40(r5) -/* 80162660 0015F5C0 EC C7 08 28 */ fsubs f6, f7, f1 -/* 80162664 0015F5C4 C0 23 00 40 */ lfs f1, 0x40(r3) -/* 80162668 0015F5C8 C1 05 00 60 */ lfs f8, 0x60(r5) -/* 8016266C 0015F5CC EC 82 08 28 */ fsubs f4, f2, f1 -/* 80162670 0015F5D0 C0 63 00 60 */ lfs f3, 0x60(r3) -/* 80162674 0015F5D4 EC 26 01 B2 */ fmuls f1, f6, f6 -/* 80162678 0015F5D8 EC A8 18 28 */ fsubs f5, f8, f3 -/* 8016267C 0015F5DC D0 41 00 68 */ stfs f2, 0x68(r1) -/* 80162680 0015F5E0 EC 44 01 32 */ fmuls f2, f4, f4 -/* 80162684 0015F5E4 D0 E1 00 6C */ stfs f7, 0x6c(r1) -/* 80162688 0015F5E8 EC 65 01 72 */ fmuls f3, f5, f5 -/* 8016268C 0015F5EC EC 22 08 2A */ fadds f1, f2, f1 -/* 80162690 0015F5F0 D1 01 00 70 */ stfs f8, 0x70(r1) -/* 80162694 0015F5F4 D0 81 00 74 */ stfs f4, 0x74(r1) -/* 80162698 0015F5F8 EC 23 08 2A */ fadds f1, f3, f1 -/* 8016269C 0015F5FC D0 C1 00 78 */ stfs f6, 0x78(r1) -/* 801626A0 0015F600 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801626A4 0015F604 D0 A1 00 7C */ stfs f5, 0x7c(r1) -/* 801626A8 0015F608 40 81 00 0C */ ble lbl_801626B4 -/* 801626AC 0015F60C 38 60 00 00 */ li r3, 0 -/* 801626B0 0015F610 48 00 01 28 */ b lbl_801627D8 -lbl_801626B4: -/* 801626B4 0015F614 81 83 00 00 */ lwz r12, 0(r3) -/* 801626B8 0015F618 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 801626BC 0015F61C 81 8C 02 20 */ lwz r12, 0x220(r12) -/* 801626C0 0015F620 7D 89 03 A6 */ mtctr r12 -/* 801626C4 0015F624 4E 80 04 21 */ bctrl -/* 801626C8 0015F628 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801626CC 0015F62C 40 82 00 0C */ bne lbl_801626D8 -/* 801626D0 0015F630 38 60 00 00 */ li r3, 0 -/* 801626D4 0015F634 48 00 01 04 */ b lbl_801627D8 -lbl_801626D8: -/* 801626D8 0015F638 C1 1E 00 54 */ lfs f8, 0x54(r30) -/* 801626DC 0015F63C 38 61 00 5C */ addi r3, r1, 0x5c -/* 801626E0 0015F640 C0 3E 05 CC */ lfs f1, 0x5cc(r30) -/* 801626E4 0015F644 38 81 00 50 */ addi r4, r1, 0x50 -/* 801626E8 0015F648 C0 FE 00 44 */ lfs f7, 0x44(r30) -/* 801626EC 0015F64C C0 1E 00 34 */ lfs f0, 0x34(r30) -/* 801626F0 0015F650 EC 61 02 32 */ fmuls f3, f1, f8 -/* 801626F4 0015F654 C1 5E 00 58 */ lfs f10, 0x58(r30) -/* 801626F8 0015F658 EC 81 01 F2 */ fmuls f4, f1, f7 -/* 801626FC 0015F65C C1 3E 00 48 */ lfs f9, 0x48(r30) -/* 80162700 0015F660 EC 41 00 32 */ fmuls f2, f1, f0 -/* 80162704 0015F664 C0 3E 00 38 */ lfs f1, 0x38(r30) -/* 80162708 0015F668 EC C9 20 2A */ fadds f6, f9, f4 -/* 8016270C 0015F66C D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 80162710 0015F670 EC AA 18 2A */ fadds f5, f10, f3 -/* 80162714 0015F674 EC 01 10 2A */ fadds f0, f1, f2 -/* 80162718 0015F678 D0 E1 00 30 */ stfs f7, 0x30(r1) -/* 8016271C 0015F67C D1 01 00 34 */ stfs f8, 0x34(r1) -/* 80162720 0015F680 D0 41 00 38 */ stfs f2, 0x38(r1) -/* 80162724 0015F684 D0 81 00 3C */ stfs f4, 0x3c(r1) -/* 80162728 0015F688 D0 61 00 40 */ stfs f3, 0x40(r1) -/* 8016272C 0015F68C D0 21 00 44 */ stfs f1, 0x44(r1) -/* 80162730 0015F690 D1 21 00 48 */ stfs f9, 0x48(r1) -/* 80162734 0015F694 D1 41 00 4C */ stfs f10, 0x4c(r1) -/* 80162738 0015F698 D0 01 00 50 */ stfs f0, 0x50(r1) -/* 8016273C 0015F69C D0 C1 00 54 */ stfs f6, 0x54(r1) -/* 80162740 0015F6A0 D0 A1 00 58 */ stfs f5, 0x58(r1) -/* 80162744 0015F6A4 48 1B 21 0D */ bl AsNormalized__9CVector3fCFv -/* 80162748 0015F6A8 80 9F 08 4C */ lwz r4, 0x84c(r31) -/* 8016274C 0015F6AC 7F E5 FB 78 */ mr r5, r31 -/* 80162750 0015F6B0 38 61 00 08 */ addi r3, r1, 8 -/* 80162754 0015F6B4 C3 81 00 5C */ lfs f28, 0x5c(r1) -/* 80162758 0015F6B8 81 84 00 00 */ lwz r12, 0(r4) -/* 8016275C 0015F6BC C3 61 00 60 */ lfs f27, 0x60(r1) -/* 80162760 0015F6C0 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 80162764 0015F6C4 C3 41 00 64 */ lfs f26, 0x64(r1) -/* 80162768 0015F6C8 C3 BE 00 60 */ lfs f29, 0x60(r30) -/* 8016276C 0015F6CC C3 DE 00 50 */ lfs f30, 0x50(r30) -/* 80162770 0015F6D0 C3 FE 00 40 */ lfs f31, 0x40(r30) -/* 80162774 0015F6D4 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 80162778 0015F6D8 7D 89 03 A6 */ mtctr r12 -/* 8016277C 0015F6DC 4E 80 04 21 */ bctrl -/* 80162780 0015F6E0 C0 41 00 08 */ lfs f2, 8(r1) -/* 80162784 0015F6E4 38 61 00 20 */ addi r3, r1, 0x20 -/* 80162788 0015F6E8 C0 21 00 0C */ lfs f1, 0xc(r1) -/* 8016278C 0015F6EC 38 81 00 14 */ addi r4, r1, 0x14 -/* 80162790 0015F6F0 C0 01 00 10 */ lfs f0, 0x10(r1) -/* 80162794 0015F6F4 EC 42 F8 28 */ fsubs f2, f2, f31 -/* 80162798 0015F6F8 EC 21 F0 28 */ fsubs f1, f1, f30 -/* 8016279C 0015F6FC EC 00 E8 28 */ fsubs f0, f0, f29 -/* 801627A0 0015F700 D0 41 00 14 */ stfs f2, 0x14(r1) -/* 801627A4 0015F704 D0 21 00 18 */ stfs f1, 0x18(r1) -/* 801627A8 0015F708 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 801627AC 0015F70C 48 1B 20 A5 */ bl AsNormalized__9CVector3fCFv -/* 801627B0 0015F710 C0 01 00 24 */ lfs f0, 0x24(r1) -/* 801627B4 0015F714 C0 41 00 20 */ lfs f2, 0x20(r1) -/* 801627B8 0015F718 EC 3B 00 32 */ fmuls f1, f27, f0 -/* 801627BC 0015F71C C0 61 00 28 */ lfs f3, 0x28(r1) -/* 801627C0 0015F720 C8 02 9F D0 */ lfd f0, lbl_805ABCF0@sda21(r2) -/* 801627C4 0015F724 EC 3C 08 BA */ fmadds f1, f28, f2, f1 -/* 801627C8 0015F728 EC 3A 08 FA */ fmadds f1, f26, f3, f1 -/* 801627CC 0015F72C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801627D0 0015F730 7C 00 00 26 */ mfcr r0 -/* 801627D4 0015F734 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f -lbl_801627D8: -/* 801627D8 0015F738 E3 E1 00 E8 */ psq_l f31, 232(r1), 0, qr0 -/* 801627DC 0015F73C CB E1 00 E0 */ lfd f31, 0xe0(r1) -/* 801627E0 0015F740 E3 C1 00 D8 */ psq_l f30, 216(r1), 0, qr0 -/* 801627E4 0015F744 CB C1 00 D0 */ lfd f30, 0xd0(r1) -/* 801627E8 0015F748 E3 A1 00 C8 */ psq_l f29, 200(r1), 0, qr0 -/* 801627EC 0015F74C CB A1 00 C0 */ lfd f29, 0xc0(r1) -/* 801627F0 0015F750 E3 81 00 B8 */ psq_l f28, 184(r1), 0, qr0 -/* 801627F4 0015F754 CB 81 00 B0 */ lfd f28, 0xb0(r1) -/* 801627F8 0015F758 E3 61 00 A8 */ psq_l f27, 168(r1), 0, qr0 -/* 801627FC 0015F75C CB 61 00 A0 */ lfd f27, 0xa0(r1) -/* 80162800 0015F760 E3 41 00 98 */ psq_l f26, 152(r1), 0, qr0 -/* 80162804 0015F764 CB 41 00 90 */ lfd f26, 0x90(r1) -/* 80162808 0015F768 83 E1 00 8C */ lwz r31, 0x8c(r1) -/* 8016280C 0015F76C 80 01 00 F4 */ lwz r0, 0xf4(r1) -/* 80162810 0015F770 83 C1 00 88 */ lwz r30, 0x88(r1) -/* 80162814 0015F774 7C 08 03 A6 */ mtlr r0 -/* 80162818 0015F778 38 21 00 F0 */ addi r1, r1, 0xf0 -/* 8016281C 0015F77C 4E 80 00 20 */ blr - -.global ShouldFire__6CDroneFR13CStateManagerf -ShouldFire__6CDroneFR13CStateManagerf: -/* 80162820 0015F780 94 21 FE A0 */ stwu r1, -0x160(r1) -/* 80162824 0015F784 7C 08 02 A6 */ mflr r0 -/* 80162828 0015F788 90 01 01 64 */ stw r0, 0x164(r1) -/* 8016282C 0015F78C BF 41 01 48 */ stmw r26, 0x148(r1) -/* 80162830 0015F790 7C 7A 1B 78 */ mr r26, r3 -/* 80162834 0015F794 7C 9B 23 78 */ mr r27, r4 -/* 80162838 0015F798 80 64 08 4C */ lwz r3, 0x84c(r4) -/* 8016283C 0015F79C 80 03 02 F8 */ lwz r0, 0x2f8(r3) -/* 80162840 0015F7A0 2C 00 00 01 */ cmpwi r0, 1 -/* 80162844 0015F7A4 41 82 01 A4 */ beq lbl_801629E8 -/* 80162848 0015F7A8 C0 3A 06 24 */ lfs f1, 0x624(r26) -/* 8016284C 0015F7AC C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 80162850 0015F7B0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80162854 0015F7B4 4C 40 13 82 */ cror 2, 0, 2 -/* 80162858 0015F7B8 40 82 01 90 */ bne lbl_801629E8 -/* 8016285C 0015F7BC 80 AD 8D 74 */ lwz r5, lbl_805A7934@sda21(r13) -/* 80162860 0015F7C0 38 60 00 00 */ li r3, 0 -/* 80162864 0015F7C4 38 80 00 01 */ li r4, 1 -/* 80162868 0015F7C8 48 22 76 8D */ bl __shl2i -/* 8016286C 0015F7CC 80 AD 8D 78 */ lwz r5, lbl_805A7938@sda21(r13) -/* 80162870 0015F7D0 7C 9E 23 78 */ mr r30, r4 -/* 80162874 0015F7D4 7C 7F 1B 78 */ mr r31, r3 -/* 80162878 0015F7D8 38 60 00 00 */ li r3, 0 -/* 8016287C 0015F7DC 38 80 00 01 */ li r4, 1 -/* 80162880 0015F7E0 48 22 76 75 */ bl __shl2i -/* 80162884 0015F7E4 80 AD 8D 6C */ lwz r5, lbl_805A792C@sda21(r13) -/* 80162888 0015F7E8 7F DE 23 78 */ or r30, r30, r4 -/* 8016288C 0015F7EC 7F FF 1B 78 */ or r31, r31, r3 -/* 80162890 0015F7F0 38 60 00 00 */ li r3, 0 -/* 80162894 0015F7F4 38 80 00 01 */ li r4, 1 -/* 80162898 0015F7F8 48 22 76 5D */ bl __shl2i -/* 8016289C 0015F7FC 80 AD 8D 70 */ lwz r5, lbl_805A7930@sda21(r13) -/* 801628A0 0015F800 7C 9C 23 78 */ mr r28, r4 -/* 801628A4 0015F804 7C 7D 1B 78 */ mr r29, r3 -/* 801628A8 0015F808 38 60 00 00 */ li r3, 0 -/* 801628AC 0015F80C 38 80 00 01 */ li r4, 1 -/* 801628B0 0015F810 48 22 76 45 */ bl __shl2i -/* 801628B4 0015F814 7F BD 1B 78 */ or r29, r29, r3 -/* 801628B8 0015F818 38 00 00 03 */ li r0, 3 -/* 801628BC 0015F81C 7F 9C 23 78 */ or r28, r28, r4 -/* 801628C0 0015F820 93 A1 00 70 */ stw r29, 0x70(r1) -/* 801628C4 0015F824 7F 65 DB 78 */ mr r5, r27 -/* 801628C8 0015F828 38 61 00 40 */ addi r3, r1, 0x40 -/* 801628CC 0015F82C 93 81 00 74 */ stw r28, 0x74(r1) -/* 801628D0 0015F830 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 801628D4 0015F834 93 C1 00 7C */ stw r30, 0x7c(r1) -/* 801628D8 0015F838 93 E1 00 78 */ stw r31, 0x78(r1) -/* 801628DC 0015F83C 90 01 00 80 */ stw r0, 0x80(r1) -/* 801628E0 0015F840 80 9B 08 4C */ lwz r4, 0x84c(r27) -/* 801628E4 0015F844 90 01 00 68 */ stw r0, 0x68(r1) -/* 801628E8 0015F848 81 84 00 00 */ lwz r12, 0(r4) -/* 801628EC 0015F84C 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 801628F0 0015F850 7D 89 03 A6 */ mtctr r12 -/* 801628F4 0015F854 4E 80 04 21 */ bctrl -/* 801628F8 0015F858 C0 41 00 40 */ lfs f2, 0x40(r1) -/* 801628FC 0015F85C 38 61 00 30 */ addi r3, r1, 0x30 -/* 80162900 0015F860 C0 21 00 44 */ lfs f1, 0x44(r1) -/* 80162904 0015F864 C0 01 00 48 */ lfs f0, 0x48(r1) -/* 80162908 0015F868 D0 41 00 4C */ stfs f2, 0x4c(r1) -/* 8016290C 0015F86C 80 8D 8C F8 */ lwz r4, lbl_805A78B8@sda21(r13) -/* 80162910 0015F870 D0 21 00 50 */ stfs f1, 0x50(r1) -/* 80162914 0015F874 D0 01 00 54 */ stfs f0, 0x54(r1) -/* 80162918 0015F878 4B EA 23 A1 */ bl string_l__4rstlFPCc -/* 8016291C 0015F87C 7F 44 D3 78 */ mr r4, r26 -/* 80162920 0015F880 38 61 00 B8 */ addi r3, r1, 0xb8 -/* 80162924 0015F884 38 A1 00 30 */ addi r5, r1, 0x30 -/* 80162928 0015F888 4B F1 60 51 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8016292C 0015F88C 38 61 01 18 */ addi r3, r1, 0x118 -/* 80162930 0015F890 38 81 00 B8 */ addi r4, r1, 0xb8 -/* 80162934 0015F894 48 1B 02 41 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80162938 0015F898 38 61 00 30 */ addi r3, r1, 0x30 -/* 8016293C 0015F89C 48 1D B1 A5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 80162940 0015F8A0 C0 41 01 24 */ lfs f2, 0x124(r1) -/* 80162944 0015F8A4 7F 63 DB 78 */ mr r3, r27 -/* 80162948 0015F8A8 C0 21 01 34 */ lfs f1, 0x134(r1) -/* 8016294C 0015F8AC 7F 47 D3 78 */ mr r7, r26 -/* 80162950 0015F8B0 C0 01 01 44 */ lfs f0, 0x144(r1) -/* 80162954 0015F8B4 38 81 00 24 */ addi r4, r1, 0x24 -/* 80162958 0015F8B8 D0 41 00 24 */ stfs f2, 0x24(r1) -/* 8016295C 0015F8BC 38 A1 00 4C */ addi r5, r1, 0x4c -/* 80162960 0015F8C0 38 C1 00 70 */ addi r6, r1, 0x70 -/* 80162964 0015F8C4 D0 21 00 28 */ stfs f1, 0x28(r1) -/* 80162968 0015F8C8 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 8016296C 0015F8CC 4B EE A4 D1 */ bl RayCollideWorld__13CStateManagerFRC9CVector3fRC9CVector3fRC15CMaterialFilterPC6CActor -/* 80162970 0015F8D0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80162974 0015F8D4 41 82 00 74 */ beq lbl_801629E8 -/* 80162978 0015F8D8 80 8D 8C FC */ lwz r4, lbl_805A78BC@sda21(r13) -/* 8016297C 0015F8DC 38 61 00 14 */ addi r3, r1, 0x14 -/* 80162980 0015F8E0 4B EA 23 39 */ bl string_l__4rstlFPCc -/* 80162984 0015F8E4 7F 44 D3 78 */ mr r4, r26 -/* 80162988 0015F8E8 38 61 00 88 */ addi r3, r1, 0x88 -/* 8016298C 0015F8EC 38 A1 00 14 */ addi r5, r1, 0x14 -/* 80162990 0015F8F0 4B F1 5F E9 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80162994 0015F8F4 38 61 00 E8 */ addi r3, r1, 0xe8 -/* 80162998 0015F8F8 38 81 00 88 */ addi r4, r1, 0x88 -/* 8016299C 0015F8FC 48 1B 01 D9 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 801629A0 0015F900 38 61 00 14 */ addi r3, r1, 0x14 -/* 801629A4 0015F904 48 1D B1 3D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 801629A8 0015F908 C0 41 00 F4 */ lfs f2, 0xf4(r1) -/* 801629AC 0015F90C 7F 63 DB 78 */ mr r3, r27 -/* 801629B0 0015F910 C0 21 01 04 */ lfs f1, 0x104(r1) -/* 801629B4 0015F914 7F 47 D3 78 */ mr r7, r26 -/* 801629B8 0015F918 C0 01 01 14 */ lfs f0, 0x114(r1) -/* 801629BC 0015F91C 38 81 00 08 */ addi r4, r1, 8 -/* 801629C0 0015F920 D0 41 00 08 */ stfs f2, 8(r1) -/* 801629C4 0015F924 38 A1 00 4C */ addi r5, r1, 0x4c -/* 801629C8 0015F928 38 C1 00 70 */ addi r6, r1, 0x70 -/* 801629CC 0015F92C D0 21 00 0C */ stfs f1, 0xc(r1) -/* 801629D0 0015F930 D0 01 00 10 */ stfs f0, 0x10(r1) -/* 801629D4 0015F934 4B EE A4 69 */ bl RayCollideWorld__13CStateManagerFRC9CVector3fRC9CVector3fRC15CMaterialFilterPC6CActor -/* 801629D8 0015F938 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801629DC 0015F93C 41 82 00 0C */ beq lbl_801629E8 -/* 801629E0 0015F940 38 60 00 01 */ li r3, 1 -/* 801629E4 0015F944 48 00 00 08 */ b lbl_801629EC -lbl_801629E8: -/* 801629E8 0015F948 38 60 00 00 */ li r3, 0 -lbl_801629EC: -/* 801629EC 0015F94C BB 41 01 48 */ lmw r26, 0x148(r1) -/* 801629F0 0015F950 80 01 01 64 */ lwz r0, 0x164(r1) -/* 801629F4 0015F954 7C 08 03 A6 */ mtlr r0 -/* 801629F8 0015F958 38 21 01 60 */ addi r1, r1, 0x160 -/* 801629FC 0015F95C 4E 80 00 20 */ blr - -.global LineOfSight__6CDroneFR13CStateManagerf -LineOfSight__6CDroneFR13CStateManagerf: -/* 80162A00 0015F960 94 21 FF 80 */ stwu r1, -0x80(r1) -/* 80162A04 0015F964 7C 08 02 A6 */ mflr r0 -/* 80162A08 0015F968 90 01 00 84 */ stw r0, 0x84(r1) -/* 80162A0C 0015F96C BF 41 00 68 */ stmw r26, 0x68(r1) -/* 80162A10 0015F970 7C 9B 23 78 */ mr r27, r4 -/* 80162A14 0015F974 7C 7A 1B 78 */ mr r26, r3 -/* 80162A18 0015F978 38 80 00 01 */ li r4, 1 -/* 80162A1C 0015F97C C0 43 00 60 */ lfs f2, 0x60(r3) -/* 80162A20 0015F980 C0 23 00 50 */ lfs f1, 0x50(r3) -/* 80162A24 0015F984 C0 03 00 40 */ lfs f0, 0x40(r3) -/* 80162A28 0015F988 38 60 00 00 */ li r3, 0 -/* 80162A2C 0015F98C 80 AD 8D 64 */ lwz r5, lbl_805A7924@sda21(r13) -/* 80162A30 0015F990 D0 01 00 20 */ stfs f0, 0x20(r1) -/* 80162A34 0015F994 D0 21 00 24 */ stfs f1, 0x24(r1) -/* 80162A38 0015F998 D0 41 00 28 */ stfs f2, 0x28(r1) -/* 80162A3C 0015F99C 48 22 74 B9 */ bl __shl2i -/* 80162A40 0015F9A0 80 AD 8D 68 */ lwz r5, lbl_805A7928@sda21(r13) -/* 80162A44 0015F9A4 7C 9E 23 78 */ mr r30, r4 -/* 80162A48 0015F9A8 7C 7F 1B 78 */ mr r31, r3 -/* 80162A4C 0015F9AC 38 60 00 00 */ li r3, 0 -/* 80162A50 0015F9B0 38 80 00 01 */ li r4, 1 -/* 80162A54 0015F9B4 48 22 74 A1 */ bl __shl2i -/* 80162A58 0015F9B8 80 AD 8D 5C */ lwz r5, lbl_805A791C@sda21(r13) -/* 80162A5C 0015F9BC 7F DE 23 78 */ or r30, r30, r4 -/* 80162A60 0015F9C0 7F FF 1B 78 */ or r31, r31, r3 -/* 80162A64 0015F9C4 38 60 00 00 */ li r3, 0 -/* 80162A68 0015F9C8 38 80 00 01 */ li r4, 1 -/* 80162A6C 0015F9CC 48 22 74 89 */ bl __shl2i -/* 80162A70 0015F9D0 80 AD 8D 60 */ lwz r5, lbl_805A7920@sda21(r13) -/* 80162A74 0015F9D4 7C 9C 23 78 */ mr r28, r4 -/* 80162A78 0015F9D8 7C 7D 1B 78 */ mr r29, r3 -/* 80162A7C 0015F9DC 38 60 00 00 */ li r3, 0 -/* 80162A80 0015F9E0 38 80 00 01 */ li r4, 1 -/* 80162A84 0015F9E4 48 22 74 71 */ bl __shl2i -/* 80162A88 0015F9E8 7F BD 1B 78 */ or r29, r29, r3 -/* 80162A8C 0015F9EC 38 00 00 03 */ li r0, 3 -/* 80162A90 0015F9F0 7F 9C 23 78 */ or r28, r28, r4 -/* 80162A94 0015F9F4 93 A1 00 48 */ stw r29, 0x48(r1) -/* 80162A98 0015F9F8 7F 65 DB 78 */ mr r5, r27 -/* 80162A9C 0015F9FC 38 61 00 08 */ addi r3, r1, 8 -/* 80162AA0 0015FA00 93 81 00 4C */ stw r28, 0x4c(r1) -/* 80162AA4 0015FA04 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 80162AA8 0015FA08 93 C1 00 54 */ stw r30, 0x54(r1) -/* 80162AAC 0015FA0C 93 E1 00 50 */ stw r31, 0x50(r1) -/* 80162AB0 0015FA10 90 01 00 58 */ stw r0, 0x58(r1) -/* 80162AB4 0015FA14 80 9B 08 4C */ lwz r4, 0x84c(r27) -/* 80162AB8 0015FA18 90 01 00 40 */ stw r0, 0x40(r1) -/* 80162ABC 0015FA1C 81 84 00 00 */ lwz r12, 0(r4) -/* 80162AC0 0015FA20 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 80162AC4 0015FA24 7D 89 03 A6 */ mtctr r12 -/* 80162AC8 0015FA28 4E 80 04 21 */ bctrl -/* 80162ACC 0015FA2C C0 41 00 08 */ lfs f2, 8(r1) -/* 80162AD0 0015FA30 7F 63 DB 78 */ mr r3, r27 -/* 80162AD4 0015FA34 C0 21 00 0C */ lfs f1, 0xc(r1) -/* 80162AD8 0015FA38 7F 47 D3 78 */ mr r7, r26 -/* 80162ADC 0015FA3C C0 01 00 10 */ lfs f0, 0x10(r1) -/* 80162AE0 0015FA40 38 81 00 20 */ addi r4, r1, 0x20 -/* 80162AE4 0015FA44 D0 41 00 14 */ stfs f2, 0x14(r1) -/* 80162AE8 0015FA48 38 A1 00 14 */ addi r5, r1, 0x14 -/* 80162AEC 0015FA4C 38 C1 00 48 */ addi r6, r1, 0x48 -/* 80162AF0 0015FA50 D0 21 00 18 */ stfs f1, 0x18(r1) -/* 80162AF4 0015FA54 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 80162AF8 0015FA58 4B EE A3 45 */ bl RayCollideWorld__13CStateManagerFRC9CVector3fRC9CVector3fRC15CMaterialFilterPC6CActor -/* 80162AFC 0015FA5C BB 41 00 68 */ lmw r26, 0x68(r1) -/* 80162B00 0015FA60 80 01 00 84 */ lwz r0, 0x84(r1) -/* 80162B04 0015FA64 7C 08 03 A6 */ mtlr r0 -/* 80162B08 0015FA68 38 21 00 80 */ addi r1, r1, 0x80 -/* 80162B0C 0015FA6C 4E 80 00 20 */ blr - -.global Deactivate__6CDroneFR13CStateManager9EStateMsgf -Deactivate__6CDroneFR13CStateManager9EStateMsgf: -/* 80162B10 0015FA70 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80162B14 0015FA74 7C 08 02 A6 */ mflr r0 -/* 80162B18 0015FA78 2C 05 00 00 */ cmpwi r5, 0 -/* 80162B1C 0015FA7C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80162B20 0015FA80 41 82 00 08 */ beq lbl_80162B28 -/* 80162B24 0015FA84 48 00 00 08 */ b lbl_80162B2C -lbl_80162B28: -/* 80162B28 0015FA88 4B F1 5E D9 */ bl DeathDelete__10CPatternedFR13CStateManager -lbl_80162B2C: -/* 80162B2C 0015FA8C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80162B30 0015FA90 7C 08 03 A6 */ mtlr r0 -/* 80162B34 0015FA94 38 21 00 10 */ addi r1, r1, 0x10 -/* 80162B38 0015FA98 4E 80 00 20 */ blr - -.global Dodge__6CDroneFR13CStateManager9EStateMsgf -Dodge__6CDroneFR13CStateManager9EStateMsgf: -/* 80162B3C 0015FA9C 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 80162B40 0015FAA0 7C 08 02 A6 */ mflr r0 -/* 80162B44 0015FAA4 2C 05 00 01 */ cmpwi r5, 1 -/* 80162B48 0015FAA8 90 01 00 64 */ stw r0, 0x64(r1) -/* 80162B4C 0015FAAC 93 E1 00 5C */ stw r31, 0x5c(r1) -/* 80162B50 0015FAB0 7C 9F 23 78 */ mr r31, r4 -/* 80162B54 0015FAB4 93 C1 00 58 */ stw r30, 0x58(r1) -/* 80162B58 0015FAB8 7C 7E 1B 78 */ mr r30, r3 -/* 80162B5C 0015FABC 93 A1 00 54 */ stw r29, 0x54(r1) -/* 80162B60 0015FAC0 41 82 00 50 */ beq lbl_80162BB0 -/* 80162B64 0015FAC4 40 80 03 28 */ bge lbl_80162E8C -/* 80162B68 0015FAC8 2C 05 00 00 */ cmpwi r5, 0 -/* 80162B6C 0015FACC 40 80 00 0C */ bge lbl_80162B78 -/* 80162B70 0015FAD0 48 00 03 1C */ b lbl_80162E8C -/* 80162B74 0015FAD4 48 00 03 18 */ b lbl_80162E8C -lbl_80162B78: -/* 80162B78 0015FAD8 38 00 00 00 */ li r0, 0 -/* 80162B7C 0015FADC C0 22 9F 80 */ lfs f1, lbl_805ABCA0@sda21(r2) -/* 80162B80 0015FAE0 90 1E 07 C8 */ stw r0, 0x7c8(r30) -/* 80162B84 0015FAE4 C0 02 9F 7C */ lfs f0, lbl_805ABC9C@sda21(r2) -/* 80162B88 0015FAE8 D0 3E 06 30 */ stfs f1, 0x630(r30) -/* 80162B8C 0015FAEC D0 1E 06 34 */ stfs f0, 0x634(r30) -/* 80162B90 0015FAF0 80 1E 03 FC */ lwz r0, 0x3fc(r30) -/* 80162B94 0015FAF4 2C 00 00 01 */ cmpwi r0, 1 -/* 80162B98 0015FAF8 40 82 02 F4 */ bne lbl_80162E8C -/* 80162B9C 0015FAFC 88 1E 08 34 */ lbz r0, 0x834(r30) -/* 80162BA0 0015FB00 38 60 00 01 */ li r3, 1 -/* 80162BA4 0015FB04 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e -/* 80162BA8 0015FB08 98 1E 08 34 */ stb r0, 0x834(r30) -/* 80162BAC 0015FB0C 48 00 02 E0 */ b lbl_80162E8C -lbl_80162BB0: -/* 80162BB0 0015FB10 80 1E 07 C8 */ lwz r0, 0x7c8(r30) -/* 80162BB4 0015FB14 2C 00 00 01 */ cmpwi r0, 1 -/* 80162BB8 0015FB18 41 82 02 70 */ beq lbl_80162E28 -/* 80162BBC 0015FB1C 40 80 02 84 */ bge lbl_80162E40 -/* 80162BC0 0015FB20 2C 00 00 00 */ cmpwi r0, 0 -/* 80162BC4 0015FB24 40 80 00 08 */ bge lbl_80162BCC -/* 80162BC8 0015FB28 48 00 02 78 */ b lbl_80162E40 -lbl_80162BCC: -/* 80162BCC 0015FB2C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80162BD0 0015FB30 38 00 00 0C */ li r0, 0xc -/* 80162BD4 0015FB34 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l -/* 80162BD8 0015FB38 90 01 00 0C */ stw r0, 0xc(r1) -/* 80162BDC 0015FB3C 38 81 00 08 */ addi r4, r1, 8 -/* 80162BE0 0015FB40 90 61 00 08 */ stw r3, 8(r1) -/* 80162BE4 0015FB44 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 80162BE8 0015FB48 38 63 00 04 */ addi r3, r3, 4 -/* 80162BEC 0015FB4C 4B FC EB CD */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd -/* 80162BF0 0015FB50 34 01 00 08 */ addic. r0, r1, 8 -/* 80162BF4 0015FB54 41 82 00 10 */ beq lbl_80162C04 -/* 80162BF8 0015FB58 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80162BFC 0015FB5C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 80162C00 0015FB60 90 01 00 08 */ stw r0, 8(r1) -lbl_80162C04: -/* 80162C04 0015FB64 80 1E 05 8C */ lwz r0, 0x58c(r30) -/* 80162C08 0015FB68 2C 00 00 04 */ cmpwi r0, 4 -/* 80162C0C 0015FB6C 41 82 01 1C */ beq lbl_80162D28 -/* 80162C10 0015FB70 40 80 00 14 */ bge lbl_80162C24 -/* 80162C14 0015FB74 2C 00 00 02 */ cmpwi r0, 2 -/* 80162C18 0015FB78 41 82 00 18 */ beq lbl_80162C30 -/* 80162C1C 0015FB7C 40 80 00 90 */ bge lbl_80162CAC -/* 80162C20 0015FB80 48 00 01 FC */ b lbl_80162E1C -lbl_80162C24: -/* 80162C24 0015FB84 2C 00 00 06 */ cmpwi r0, 6 -/* 80162C28 0015FB88 40 80 01 F4 */ bge lbl_80162E1C -/* 80162C2C 0015FB8C 48 00 01 78 */ b lbl_80162DA4 -lbl_80162C30: -/* 80162C30 0015FB90 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80162C34 0015FB94 38 C0 00 01 */ li r6, 1 -/* 80162C38 0015FB98 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 80162C3C 0015FB9C 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 80162C40 0015FBA0 3C 80 80 3E */ lis r4, lbl_803DA9E4@ha -/* 80162C44 0015FBA4 90 01 00 40 */ stw r0, 0x40(r1) -/* 80162C48 0015FBA8 38 A4 A9 E4 */ addi r5, r4, lbl_803DA9E4@l -/* 80162C4C 0015FBAC 38 00 00 03 */ li r0, 3 -/* 80162C50 0015FBB0 3B A3 00 04 */ addi r29, r3, 4 -/* 80162C54 0015FBB4 90 C1 00 44 */ stw r6, 0x44(r1) -/* 80162C58 0015FBB8 7F A3 EB 78 */ mr r3, r29 -/* 80162C5C 0015FBBC 38 80 00 01 */ li r4, 1 -/* 80162C60 0015FBC0 90 A1 00 40 */ stw r5, 0x40(r1) -/* 80162C64 0015FBC4 90 01 00 48 */ stw r0, 0x48(r1) -/* 80162C68 0015FBC8 90 C1 00 4C */ stw r6, 0x4c(r1) -/* 80162C6C 0015FBCC 4B FC E7 CD */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80162C70 0015FBD0 80 01 00 44 */ lwz r0, 0x44(r1) -/* 80162C74 0015FBD4 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha -/* 80162C78 0015FBD8 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l -/* 80162C7C 0015FBDC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80162C80 0015FBE0 90 1D 00 C8 */ stw r0, 0xc8(r29) -/* 80162C84 0015FBE4 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l -/* 80162C88 0015FBE8 80 C1 00 48 */ lwz r6, 0x48(r1) -/* 80162C8C 0015FBEC 38 00 00 03 */ li r0, 3 -/* 80162C90 0015FBF0 80 A1 00 4C */ lwz r5, 0x4c(r1) -/* 80162C94 0015FBF4 90 DD 00 CC */ stw r6, 0xcc(r29) -/* 80162C98 0015FBF8 90 BD 00 D0 */ stw r5, 0xd0(r29) -/* 80162C9C 0015FBFC 90 81 00 40 */ stw r4, 0x40(r1) -/* 80162CA0 0015FC00 90 61 00 40 */ stw r3, 0x40(r1) -/* 80162CA4 0015FC04 90 1E 05 8C */ stw r0, 0x58c(r30) -/* 80162CA8 0015FC08 48 00 01 74 */ b lbl_80162E1C -lbl_80162CAC: -/* 80162CAC 0015FC0C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80162CB0 0015FC10 38 C0 00 01 */ li r6, 1 -/* 80162CB4 0015FC14 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 80162CB8 0015FC18 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 80162CBC 0015FC1C 3C 80 80 3E */ lis r4, lbl_803DA9E4@ha -/* 80162CC0 0015FC20 90 01 00 30 */ stw r0, 0x30(r1) -/* 80162CC4 0015FC24 38 A4 A9 E4 */ addi r5, r4, lbl_803DA9E4@l -/* 80162CC8 0015FC28 38 00 00 04 */ li r0, 4 -/* 80162CCC 0015FC2C 3B A3 00 04 */ addi r29, r3, 4 -/* 80162CD0 0015FC30 90 C1 00 34 */ stw r6, 0x34(r1) -/* 80162CD4 0015FC34 7F A3 EB 78 */ mr r3, r29 -/* 80162CD8 0015FC38 38 80 00 01 */ li r4, 1 -/* 80162CDC 0015FC3C 90 A1 00 30 */ stw r5, 0x30(r1) -/* 80162CE0 0015FC40 90 01 00 38 */ stw r0, 0x38(r1) -/* 80162CE4 0015FC44 90 C1 00 3C */ stw r6, 0x3c(r1) -/* 80162CE8 0015FC48 4B FC E7 51 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80162CEC 0015FC4C 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80162CF0 0015FC50 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha -/* 80162CF4 0015FC54 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l -/* 80162CF8 0015FC58 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80162CFC 0015FC5C 90 1D 00 C8 */ stw r0, 0xc8(r29) -/* 80162D00 0015FC60 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l -/* 80162D04 0015FC64 80 C1 00 38 */ lwz r6, 0x38(r1) -/* 80162D08 0015FC68 38 00 00 04 */ li r0, 4 -/* 80162D0C 0015FC6C 80 A1 00 3C */ lwz r5, 0x3c(r1) -/* 80162D10 0015FC70 90 DD 00 CC */ stw r6, 0xcc(r29) -/* 80162D14 0015FC74 90 BD 00 D0 */ stw r5, 0xd0(r29) -/* 80162D18 0015FC78 90 81 00 30 */ stw r4, 0x30(r1) -/* 80162D1C 0015FC7C 90 61 00 30 */ stw r3, 0x30(r1) -/* 80162D20 0015FC80 90 1E 05 8C */ stw r0, 0x58c(r30) -/* 80162D24 0015FC84 48 00 00 F8 */ b lbl_80162E1C -lbl_80162D28: -/* 80162D28 0015FC88 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80162D2C 0015FC8C 38 C0 00 01 */ li r6, 1 -/* 80162D30 0015FC90 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 80162D34 0015FC94 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 80162D38 0015FC98 3C 80 80 3E */ lis r4, lbl_803DA9E4@ha -/* 80162D3C 0015FC9C 90 01 00 20 */ stw r0, 0x20(r1) -/* 80162D40 0015FCA0 38 A4 A9 E4 */ addi r5, r4, lbl_803DA9E4@l -/* 80162D44 0015FCA4 38 00 00 05 */ li r0, 5 -/* 80162D48 0015FCA8 3B A3 00 04 */ addi r29, r3, 4 -/* 80162D4C 0015FCAC 90 C1 00 24 */ stw r6, 0x24(r1) -/* 80162D50 0015FCB0 7F A3 EB 78 */ mr r3, r29 -/* 80162D54 0015FCB4 38 80 00 01 */ li r4, 1 -/* 80162D58 0015FCB8 90 A1 00 20 */ stw r5, 0x20(r1) -/* 80162D5C 0015FCBC 90 01 00 28 */ stw r0, 0x28(r1) -/* 80162D60 0015FCC0 90 C1 00 2C */ stw r6, 0x2c(r1) -/* 80162D64 0015FCC4 4B FC E6 D5 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80162D68 0015FCC8 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80162D6C 0015FCCC 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha -/* 80162D70 0015FCD0 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l -/* 80162D74 0015FCD4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80162D78 0015FCD8 90 1D 00 C8 */ stw r0, 0xc8(r29) -/* 80162D7C 0015FCDC 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l -/* 80162D80 0015FCE0 80 C1 00 28 */ lwz r6, 0x28(r1) -/* 80162D84 0015FCE4 38 00 00 05 */ li r0, 5 -/* 80162D88 0015FCE8 80 A1 00 2C */ lwz r5, 0x2c(r1) -/* 80162D8C 0015FCEC 90 DD 00 CC */ stw r6, 0xcc(r29) -/* 80162D90 0015FCF0 90 BD 00 D0 */ stw r5, 0xd0(r29) -/* 80162D94 0015FCF4 90 81 00 20 */ stw r4, 0x20(r1) -/* 80162D98 0015FCF8 90 61 00 20 */ stw r3, 0x20(r1) -/* 80162D9C 0015FCFC 90 1E 05 8C */ stw r0, 0x58c(r30) -/* 80162DA0 0015FD00 48 00 00 7C */ b lbl_80162E1C -lbl_80162DA4: -/* 80162DA4 0015FD04 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80162DA8 0015FD08 38 C0 00 01 */ li r6, 1 -/* 80162DAC 0015FD0C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 80162DB0 0015FD10 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 80162DB4 0015FD14 3C 80 80 3E */ lis r4, lbl_803DA9E4@ha -/* 80162DB8 0015FD18 90 01 00 10 */ stw r0, 0x10(r1) -/* 80162DBC 0015FD1C 38 A4 A9 E4 */ addi r5, r4, lbl_803DA9E4@l -/* 80162DC0 0015FD20 38 00 00 02 */ li r0, 2 -/* 80162DC4 0015FD24 3B A3 00 04 */ addi r29, r3, 4 -/* 80162DC8 0015FD28 90 C1 00 14 */ stw r6, 0x14(r1) -/* 80162DCC 0015FD2C 7F A3 EB 78 */ mr r3, r29 -/* 80162DD0 0015FD30 38 80 00 01 */ li r4, 1 -/* 80162DD4 0015FD34 90 A1 00 10 */ stw r5, 0x10(r1) -/* 80162DD8 0015FD38 90 01 00 18 */ stw r0, 0x18(r1) -/* 80162DDC 0015FD3C 90 C1 00 1C */ stw r6, 0x1c(r1) -/* 80162DE0 0015FD40 4B FC E6 59 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80162DE4 0015FD44 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80162DE8 0015FD48 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha -/* 80162DEC 0015FD4C 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l -/* 80162DF0 0015FD50 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 80162DF4 0015FD54 90 1D 00 C8 */ stw r0, 0xc8(r29) -/* 80162DF8 0015FD58 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l -/* 80162DFC 0015FD5C 80 C1 00 18 */ lwz r6, 0x18(r1) -/* 80162E00 0015FD60 38 00 00 02 */ li r0, 2 -/* 80162E04 0015FD64 80 A1 00 1C */ lwz r5, 0x1c(r1) -/* 80162E08 0015FD68 90 DD 00 CC */ stw r6, 0xcc(r29) -/* 80162E0C 0015FD6C 90 BD 00 D0 */ stw r5, 0xd0(r29) -/* 80162E10 0015FD70 90 81 00 10 */ stw r4, 0x10(r1) -/* 80162E14 0015FD74 90 61 00 10 */ stw r3, 0x10(r1) -/* 80162E18 0015FD78 90 1E 05 8C */ stw r0, 0x58c(r30) -lbl_80162E1C: -/* 80162E1C 0015FD7C 38 00 00 01 */ li r0, 1 -/* 80162E20 0015FD80 90 1E 07 C8 */ stw r0, 0x7c8(r30) -/* 80162E24 0015FD84 48 00 00 1C */ b lbl_80162E40 -lbl_80162E28: -/* 80162E28 0015FD88 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 80162E2C 0015FD8C 80 03 02 B8 */ lwz r0, 0x2b8(r3) -/* 80162E30 0015FD90 2C 00 00 03 */ cmpwi r0, 3 -/* 80162E34 0015FD94 41 82 00 0C */ beq lbl_80162E40 -/* 80162E38 0015FD98 38 00 00 02 */ li r0, 2 -/* 80162E3C 0015FD9C 90 1E 07 C8 */ stw r0, 0x7c8(r30) -lbl_80162E40: -/* 80162E40 0015FDA0 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 80162E44 0015FDA4 C0 42 9F 68 */ lfs f2, lbl_805ABC88@sda21(r2) -/* 80162E48 0015FDA8 C0 03 00 40 */ lfs f0, 0x40(r3) -/* 80162E4C 0015FDAC C0 63 00 50 */ lfs f3, 0x50(r3) -/* 80162E50 0015FDB0 EC 20 10 2A */ fadds f1, f0, f2 -/* 80162E54 0015FDB4 C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 80162E58 0015FDB8 EC A3 10 2A */ fadds f5, f3, f2 -/* 80162E5C 0015FDBC C0 9E 00 50 */ lfs f4, 0x50(r30) -/* 80162E60 0015FDC0 C0 63 00 60 */ lfs f3, 0x60(r3) -/* 80162E64 0015FDC4 C0 42 9F 7C */ lfs f2, lbl_805ABC9C@sda21(r2) -/* 80162E68 0015FDC8 EC 01 00 28 */ fsubs f0, f1, f0 -/* 80162E6C 0015FDCC C0 3E 00 60 */ lfs f1, 0x60(r30) -/* 80162E70 0015FDD0 EC 43 10 2A */ fadds f2, f3, f2 -/* 80162E74 0015FDD4 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 80162E78 0015FDD8 EC 65 20 28 */ fsubs f3, f5, f4 -/* 80162E7C 0015FDDC D0 03 00 1C */ stfs f0, 0x1c(r3) -/* 80162E80 0015FDE0 EC 02 08 28 */ fsubs f0, f2, f1 -/* 80162E84 0015FDE4 D0 63 00 20 */ stfs f3, 0x20(r3) -/* 80162E88 0015FDE8 D0 03 00 24 */ stfs f0, 0x24(r3) -lbl_80162E8C: -/* 80162E8C 0015FDEC 80 01 00 64 */ lwz r0, 0x64(r1) -/* 80162E90 0015FDF0 83 E1 00 5C */ lwz r31, 0x5c(r1) -/* 80162E94 0015FDF4 83 C1 00 58 */ lwz r30, 0x58(r1) -/* 80162E98 0015FDF8 83 A1 00 54 */ lwz r29, 0x54(r1) -/* 80162E9C 0015FDFC 7C 08 03 A6 */ mtlr r0 -/* 80162EA0 0015FE00 38 21 00 60 */ addi r1, r1, 0x60 -/* 80162EA4 0015FE04 4E 80 00 20 */ blr - -.global AttackOver__6CDroneFR13CStateManagerf -AttackOver__6CDroneFR13CStateManagerf: -/* 80162EA8 0015FE08 88 03 08 34 */ lbz r0, 0x834(r3) -/* 80162EAC 0015FE0C 54 03 07 FE */ clrlwi r3, r0, 0x1f -/* 80162EB0 0015FE10 4E 80 00 20 */ blr - -.global CodeTrigger__6CDroneFR13CStateManagerf -CodeTrigger__6CDroneFR13CStateManagerf: -/* 80162EB4 0015FE14 88 03 08 34 */ lbz r0, 0x834(r3) -/* 80162EB8 0015FE18 54 03 F7 FE */ rlwinm r3, r0, 0x1e, 0x1f, 0x1f -/* 80162EBC 0015FE1C 4E 80 00 20 */ blr - -.global InRange__6CDroneFR13CStateManagerf -InRange__6CDroneFR13CStateManagerf: -/* 80162EC0 0015FE20 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80162EC4 0015FE24 38 00 00 00 */ li r0, 0 -/* 80162EC8 0015FE28 80 84 08 4C */ lwz r4, 0x84c(r4) -/* 80162ECC 0015FE2C C0 03 02 FC */ lfs f0, 0x2fc(r3) -/* 80162ED0 0015FE30 C0 E4 00 50 */ lfs f7, 0x50(r4) -/* 80162ED4 0015FE34 C0 23 00 50 */ lfs f1, 0x50(r3) -/* 80162ED8 0015FE38 EC 00 00 32 */ fmuls f0, f0, f0 -/* 80162EDC 0015FE3C C0 44 00 40 */ lfs f2, 0x40(r4) -/* 80162EE0 0015FE40 EC C7 08 28 */ fsubs f6, f7, f1 -/* 80162EE4 0015FE44 C0 23 00 40 */ lfs f1, 0x40(r3) -/* 80162EE8 0015FE48 C1 04 00 60 */ lfs f8, 0x60(r4) -/* 80162EEC 0015FE4C EC 82 08 28 */ fsubs f4, f2, f1 -/* 80162EF0 0015FE50 C0 63 00 60 */ lfs f3, 0x60(r3) -/* 80162EF4 0015FE54 D0 41 00 08 */ stfs f2, 8(r1) -/* 80162EF8 0015FE58 EC A8 18 28 */ fsubs f5, f8, f3 -/* 80162EFC 0015FE5C EC 26 01 B2 */ fmuls f1, f6, f6 -/* 80162F00 0015FE60 D0 E1 00 0C */ stfs f7, 0xc(r1) -/* 80162F04 0015FE64 EC 44 01 32 */ fmuls f2, f4, f4 -/* 80162F08 0015FE68 EC 65 01 72 */ fmuls f3, f5, f5 -/* 80162F0C 0015FE6C D1 01 00 10 */ stfs f8, 0x10(r1) -/* 80162F10 0015FE70 EC 22 08 2A */ fadds f1, f2, f1 -/* 80162F14 0015FE74 D0 81 00 14 */ stfs f4, 0x14(r1) -/* 80162F18 0015FE78 D0 C1 00 18 */ stfs f6, 0x18(r1) -/* 80162F1C 0015FE7C EC 23 08 2A */ fadds f1, f3, f1 -/* 80162F20 0015FE80 D0 A1 00 1C */ stfs f5, 0x1c(r1) -/* 80162F24 0015FE84 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80162F28 0015FE88 40 81 00 18 */ ble lbl_80162F40 -/* 80162F2C 0015FE8C C0 03 03 00 */ lfs f0, 0x300(r3) -/* 80162F30 0015FE90 EC 00 00 32 */ fmuls f0, f0, f0 -/* 80162F34 0015FE94 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80162F38 0015FE98 40 80 00 08 */ bge lbl_80162F40 -/* 80162F3C 0015FE9C 38 00 00 01 */ li r0, 1 -lbl_80162F40: -/* 80162F40 0015FEA0 7C 03 03 78 */ mr r3, r0 -/* 80162F44 0015FEA4 38 21 00 20 */ addi r1, r1, 0x20 -/* 80162F48 0015FEA8 4E 80 00 20 */ blr - -.global sub_80162f4c -sub_80162f4c: -/* 80162F4C 0015FEAC 94 21 FF 80 */ stwu r1, -0x80(r1) -/* 80162F50 0015FEB0 7C 08 02 A6 */ mflr r0 -/* 80162F54 0015FEB4 90 01 00 84 */ stw r0, 0x84(r1) -/* 80162F58 0015FEB8 BF 61 00 6C */ stmw r27, 0x6c(r1) -/* 80162F5C 0015FEBC 7C 9B 23 78 */ mr r27, r4 -/* 80162F60 0015FEC0 7C BE 2B 78 */ mr r30, r5 -/* 80162F64 0015FEC4 7C DC 33 78 */ mr r28, r6 -/* 80162F68 0015FEC8 7C FD 3B 78 */ mr r29, r7 -/* 80162F6C 0015FECC 38 81 00 14 */ addi r4, r1, 0x14 -/* 80162F70 0015FED0 38 A1 00 08 */ addi r5, r1, 8 -/* 80162F74 0015FED4 C0 03 00 40 */ lfs f0, 0x40(r3) -/* 80162F78 0015FED8 C0 E3 00 60 */ lfs f7, 0x60(r3) -/* 80162F7C 0015FEDC C0 43 00 50 */ lfs f2, 0x50(r3) -/* 80162F80 0015FEE0 EC C0 08 2A */ fadds f6, f0, f1 -/* 80162F84 0015FEE4 EC 60 08 28 */ fsubs f3, f0, f1 -/* 80162F88 0015FEE8 38 61 00 50 */ addi r3, r1, 0x50 -/* 80162F8C 0015FEEC EC A2 08 2A */ fadds f5, f2, f1 -/* 80162F90 0015FEF0 EC 87 08 2A */ fadds f4, f7, f1 -/* 80162F94 0015FEF4 D0 C1 00 08 */ stfs f6, 8(r1) -/* 80162F98 0015FEF8 EC 42 08 28 */ fsubs f2, f2, f1 -/* 80162F9C 0015FEFC EC 07 08 28 */ fsubs f0, f7, f1 -/* 80162FA0 0015FF00 D0 A1 00 0C */ stfs f5, 0xc(r1) -/* 80162FA4 0015FF04 D0 81 00 10 */ stfs f4, 0x10(r1) -/* 80162FA8 0015FF08 D0 61 00 14 */ stfs f3, 0x14(r1) -/* 80162FAC 0015FF0C D0 41 00 18 */ stfs f2, 0x18(r1) -/* 80162FB0 0015FF10 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 80162FB4 0015FF14 48 1D 55 55 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 80162FB8 0015FF18 7F C5 F3 78 */ mr r5, r30 -/* 80162FBC 0015FF1C 38 60 00 00 */ li r3, 0 -/* 80162FC0 0015FF20 38 80 00 01 */ li r4, 1 -/* 80162FC4 0015FF24 48 22 6F 31 */ bl __shl2i -/* 80162FC8 0015FF28 7C 9E 23 78 */ mr r30, r4 -/* 80162FCC 0015FF2C 7C 7F 1B 78 */ mr r31, r3 -/* 80162FD0 0015FF30 7F 65 DB 78 */ mr r5, r27 -/* 80162FD4 0015FF34 38 60 00 00 */ li r3, 0 -/* 80162FD8 0015FF38 38 80 00 01 */ li r4, 1 -/* 80162FDC 0015FF3C 48 22 6F 19 */ bl __shl2i -/* 80162FE0 0015FF40 38 00 00 03 */ li r0, 3 -/* 80162FE4 0015FF44 90 81 00 3C */ stw r4, 0x3c(r1) -/* 80162FE8 0015FF48 7F 84 E3 78 */ mr r4, r28 -/* 80162FEC 0015FF4C 38 A1 00 50 */ addi r5, r1, 0x50 -/* 80162FF0 0015FF50 90 61 00 38 */ stw r3, 0x38(r1) -/* 80162FF4 0015FF54 7F A3 EB 78 */ mr r3, r29 -/* 80162FF8 0015FF58 38 C1 00 38 */ addi r6, r1, 0x38 -/* 80162FFC 0015FF5C 38 E0 00 00 */ li r7, 0 -/* 80163000 0015FF60 90 01 00 30 */ stw r0, 0x30(r1) -/* 80163004 0015FF64 93 C1 00 44 */ stw r30, 0x44(r1) -/* 80163008 0015FF68 93 E1 00 40 */ stw r31, 0x40(r1) -/* 8016300C 0015FF6C 90 01 00 48 */ stw r0, 0x48(r1) -/* 80163010 0015FF70 4B EE 97 11 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" -/* 80163014 0015FF74 BB 61 00 6C */ lmw r27, 0x6c(r1) -/* 80163018 0015FF78 80 01 00 84 */ lwz r0, 0x84(r1) -/* 8016301C 0015FF7C 7C 08 03 A6 */ mtlr r0 -/* 80163020 0015FF80 38 21 00 80 */ addi r1, r1, 0x80 -/* 80163024 0015FF84 4E 80 00 20 */ blr - -.global HearShot__6CDroneFR13CStateManagerf -HearShot__6CDroneFR13CStateManagerf: -/* 80163028 0015FF88 94 21 F7 D0 */ stwu r1, -0x830(r1) -/* 8016302C 0015FF8C 7C 08 02 A6 */ mflr r0 -/* 80163030 0015FF90 C0 22 9F B0 */ lfs f1, lbl_805ABCD0@sda21(r2) -/* 80163034 0015FF94 38 A0 00 20 */ li r5, 0x20 -/* 80163038 0015FF98 90 01 08 34 */ stw r0, 0x834(r1) -/* 8016303C 0015FF9C 38 00 00 00 */ li r0, 0 -/* 80163040 0015FFA0 38 C1 00 14 */ addi r6, r1, 0x14 -/* 80163044 0015FFA4 93 E1 08 2C */ stw r31, 0x82c(r1) -/* 80163048 0015FFA8 93 C1 08 28 */ stw r30, 0x828(r1) -/* 8016304C 0015FFAC 93 A1 08 24 */ stw r29, 0x824(r1) -/* 80163050 0015FFB0 7C 9D 23 78 */ mr r29, r4 -/* 80163054 0015FFB4 7F A7 EB 78 */ mr r7, r29 -/* 80163058 0015FFB8 38 80 00 23 */ li r4, 0x23 -/* 8016305C 0015FFBC 90 01 00 14 */ stw r0, 0x14(r1) -/* 80163060 0015FFC0 81 83 00 00 */ lwz r12, 0(r3) -/* 80163064 0015FFC4 81 8C 02 CC */ lwz r12, 0x2cc(r12) -/* 80163068 0015FFC8 7D 89 03 A6 */ mtctr r12 -/* 8016306C 0015FFCC 4E 80 04 21 */ bctrl -/* 80163070 0015FFD0 3B E1 00 18 */ addi r31, r1, 0x18 -/* 80163074 0015FFD4 7F FE FB 78 */ mr r30, r31 -/* 80163078 0015FFD8 48 00 00 9C */ b lbl_80163114 -lbl_8016307C: -/* 8016307C 0015FFDC A0 1E 00 00 */ lhz r0, 0(r30) -/* 80163080 0015FFE0 7F A3 EB 78 */ mr r3, r29 -/* 80163084 0015FFE4 38 81 00 08 */ addi r4, r1, 8 -/* 80163088 0015FFE8 B0 01 00 08 */ sth r0, 8(r1) -/* 8016308C 0015FFEC 4B EE 95 19 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 80163090 0015FFF0 7C 64 1B 78 */ mr r4, r3 -/* 80163094 0015FFF4 38 61 00 0C */ addi r3, r1, 0xc -/* 80163098 0015FFF8 4B F4 28 01 */ bl "__ct__20TCastToPtr<7CWeapon>FP7CEntity" -/* 8016309C 0015FFFC 80 63 00 04 */ lwz r3, 4(r3) -/* 801630A0 00160000 28 03 00 00 */ cmplwi r3, 0 -/* 801630A4 00160004 41 82 00 6C */ beq lbl_80163110 -/* 801630A8 00160008 80 03 00 F0 */ lwz r0, 0xf0(r3) -/* 801630AC 0016000C 2C 00 00 09 */ cmpwi r0, 9 -/* 801630B0 00160010 41 82 00 60 */ beq lbl_80163110 -/* 801630B4 00160014 80 A1 00 14 */ lwz r5, 0x14(r1) -/* 801630B8 00160018 38 60 00 00 */ li r3, 0 -/* 801630BC 0016001C 2C 05 00 00 */ cmpwi r5, 0 -/* 801630C0 00160020 40 81 00 40 */ ble lbl_80163100 -/* 801630C4 00160024 2C 05 00 08 */ cmpwi r5, 8 -/* 801630C8 00160028 38 85 FF F8 */ addi r4, r5, -8 -/* 801630CC 0016002C 40 81 00 20 */ ble lbl_801630EC -/* 801630D0 00160030 38 04 00 07 */ addi r0, r4, 7 -/* 801630D4 00160034 54 00 E8 FE */ srwi r0, r0, 3 -/* 801630D8 00160038 7C 09 03 A6 */ mtctr r0 -/* 801630DC 0016003C 2C 04 00 00 */ cmpwi r4, 0 -/* 801630E0 00160040 40 81 00 0C */ ble lbl_801630EC -lbl_801630E4: -/* 801630E4 00160044 38 63 00 08 */ addi r3, r3, 8 -/* 801630E8 00160048 42 00 FF FC */ bdnz lbl_801630E4 -lbl_801630EC: -/* 801630EC 0016004C 7C 03 28 50 */ subf r0, r3, r5 -/* 801630F0 00160050 7C 09 03 A6 */ mtctr r0 -/* 801630F4 00160054 7C 03 28 00 */ cmpw r3, r5 -/* 801630F8 00160058 40 80 00 08 */ bge lbl_80163100 -lbl_801630FC: -/* 801630FC 0016005C 42 00 00 00 */ bdnz lbl_801630FC -lbl_80163100: -/* 80163100 00160060 38 00 00 00 */ li r0, 0 -/* 80163104 00160064 38 60 00 01 */ li r3, 1 -/* 80163108 00160068 90 01 00 14 */ stw r0, 0x14(r1) -/* 8016310C 0016006C 48 00 00 70 */ b lbl_8016317C -lbl_80163110: -/* 80163110 00160070 3B DE 00 02 */ addi r30, r30, 2 -lbl_80163114: -/* 80163114 00160074 80 A1 00 14 */ lwz r5, 0x14(r1) -/* 80163118 00160078 54 A0 08 3C */ slwi r0, r5, 1 -/* 8016311C 0016007C 7C 1F 02 14 */ add r0, r31, r0 -/* 80163120 00160080 7C 1E 00 40 */ cmplw r30, r0 -/* 80163124 00160084 40 82 FF 58 */ bne lbl_8016307C -/* 80163128 00160088 2C 05 00 00 */ cmpwi r5, 0 -/* 8016312C 0016008C 38 60 00 00 */ li r3, 0 -/* 80163130 00160090 40 81 00 40 */ ble lbl_80163170 -/* 80163134 00160094 2C 05 00 08 */ cmpwi r5, 8 -/* 80163138 00160098 38 85 FF F8 */ addi r4, r5, -8 -/* 8016313C 0016009C 40 81 00 20 */ ble lbl_8016315C -/* 80163140 001600A0 38 04 00 07 */ addi r0, r4, 7 -/* 80163144 001600A4 54 00 E8 FE */ srwi r0, r0, 3 -/* 80163148 001600A8 7C 09 03 A6 */ mtctr r0 -/* 8016314C 001600AC 2C 04 00 00 */ cmpwi r4, 0 -/* 80163150 001600B0 40 81 00 0C */ ble lbl_8016315C -lbl_80163154: -/* 80163154 001600B4 38 63 00 08 */ addi r3, r3, 8 -/* 80163158 001600B8 42 00 FF FC */ bdnz lbl_80163154 -lbl_8016315C: -/* 8016315C 001600BC 7C 03 28 50 */ subf r0, r3, r5 -/* 80163160 001600C0 7C 09 03 A6 */ mtctr r0 -/* 80163164 001600C4 7C 03 28 00 */ cmpw r3, r5 -/* 80163168 001600C8 40 80 00 08 */ bge lbl_80163170 -lbl_8016316C: -/* 8016316C 001600CC 42 00 00 00 */ bdnz lbl_8016316C -lbl_80163170: -/* 80163170 001600D0 38 00 00 00 */ li r0, 0 -/* 80163174 001600D4 38 60 00 00 */ li r3, 0 -/* 80163178 001600D8 90 01 00 14 */ stw r0, 0x14(r1) -lbl_8016317C: -/* 8016317C 001600DC 80 01 08 34 */ lwz r0, 0x834(r1) -/* 80163180 001600E0 83 E1 08 2C */ lwz r31, 0x82c(r1) -/* 80163184 001600E4 83 C1 08 28 */ lwz r30, 0x828(r1) -/* 80163188 001600E8 83 A1 08 24 */ lwz r29, 0x824(r1) -/* 8016318C 001600EC 7C 08 03 A6 */ mtlr r0 -/* 80163190 001600F0 38 21 08 30 */ addi r1, r1, 0x830 -/* 80163194 001600F4 4E 80 00 20 */ blr - -.global ShouldAttack__6CDroneFR13CStateManagerf -ShouldAttack__6CDroneFR13CStateManagerf: -/* 80163198 001600F8 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8016319C 001600FC 7C 08 02 A6 */ mflr r0 -/* 801631A0 00160100 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 801631A4 00160104 90 01 00 34 */ stw r0, 0x34(r1) -/* 801631A8 00160108 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 801631AC 0016010C 93 C1 00 28 */ stw r30, 0x28(r1) -/* 801631B0 00160110 7C 7E 1B 78 */ mr r30, r3 -/* 801631B4 00160114 C0 23 05 D0 */ lfs f1, 0x5d0(r3) -/* 801631B8 00160118 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801631BC 0016011C 4C 40 13 82 */ cror 2, 0, 2 -/* 801631C0 00160120 40 82 00 74 */ bne lbl_80163234 -/* 801631C4 00160124 A0 1E 06 88 */ lhz r0, 0x688(r30) -/* 801631C8 00160128 7C 83 23 78 */ mr r3, r4 -/* 801631CC 0016012C 38 81 00 18 */ addi r4, r1, 0x18 -/* 801631D0 00160130 B0 01 00 18 */ sth r0, 0x18(r1) -/* 801631D4 00160134 4B EE 93 A1 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 801631D8 00160138 7C 64 1B 78 */ mr r4, r3 -/* 801631DC 0016013C 38 61 00 1C */ addi r3, r1, 0x1c -/* 801631E0 00160140 4B F4 43 95 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" -/* 801631E4 00160144 83 E3 00 04 */ lwz r31, 4(r3) -/* 801631E8 00160148 28 1F 00 00 */ cmplwi r31, 0 -/* 801631EC 0016014C 41 82 00 40 */ beq lbl_8016322C -/* 801631F0 00160150 A0 1E 00 08 */ lhz r0, 8(r30) -/* 801631F4 00160154 7F E3 FB 78 */ mr r3, r31 -/* 801631F8 00160158 38 81 00 14 */ addi r4, r1, 0x14 -/* 801631FC 0016015C B0 01 00 10 */ sth r0, 0x10(r1) -/* 80163200 00160160 B0 01 00 14 */ sth r0, 0x14(r1) -/* 80163204 00160164 48 0D 5F 01 */ bl HasTeamAiRole__10CTeamAiMgrCF9TUniqueId -/* 80163208 00160168 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016320C 0016016C 41 82 00 20 */ beq lbl_8016322C -/* 80163210 00160170 A0 1E 00 08 */ lhz r0, 8(r30) -/* 80163214 00160174 7F E3 FB 78 */ mr r3, r31 -/* 80163218 00160178 38 81 00 0C */ addi r4, r1, 0xc -/* 8016321C 0016017C B0 01 00 08 */ sth r0, 8(r1) -/* 80163220 00160180 B0 01 00 0C */ sth r0, 0xc(r1) -/* 80163224 00160184 48 0D 53 A1 */ bl AddProjectileAttacker__10CTeamAiMgrF9TUniqueId -/* 80163228 00160188 48 00 00 10 */ b lbl_80163238 -lbl_8016322C: -/* 8016322C 0016018C 38 60 00 01 */ li r3, 1 -/* 80163230 00160190 48 00 00 08 */ b lbl_80163238 -lbl_80163234: -/* 80163234 00160194 38 60 00 00 */ li r3, 0 -lbl_80163238: -/* 80163238 00160198 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8016323C 0016019C 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 80163240 001601A0 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 80163244 001601A4 7C 08 03 A6 */ mtlr r0 -/* 80163248 001601A8 38 21 00 30 */ addi r1, r1, 0x30 -/* 8016324C 001601AC 4E 80 00 20 */ blr - -.global KnockBack__6CDroneFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef -KnockBack__6CDroneFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef: -/* 80163250 001601B0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80163254 001601B4 7C 08 02 A6 */ mflr r0 -/* 80163258 001601B8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8016325C 001601BC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80163260 001601C0 7C 7F 1B 78 */ mr r31, r3 -/* 80163264 001601C4 88 03 04 00 */ lbz r0, 0x400(r3) -/* 80163268 001601C8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 8016326C 001601CC 41 82 00 24 */ beq lbl_80163290 -/* 80163270 001601D0 4B F1 75 0D */ bl KnockBack__10CPatternedFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef -/* 80163274 001601D4 80 1F 04 64 */ lwz r0, 0x464(r31) -/* 80163278 001601D8 2C 00 FF FF */ cmpwi r0, -1 -/* 8016327C 001601DC 41 82 00 14 */ beq lbl_80163290 -/* 80163280 001601E0 C0 22 9F 80 */ lfs f1, lbl_805ABCA0@sda21(r2) -/* 80163284 001601E4 C0 02 9F 7C */ lfs f0, lbl_805ABC9C@sda21(r2) -/* 80163288 001601E8 D0 3F 06 30 */ stfs f1, 0x630(r31) -/* 8016328C 001601EC D0 1F 06 34 */ stfs f0, 0x634(r31) -lbl_80163290: -/* 80163290 001601F0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80163294 001601F4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80163298 001601F8 7C 08 03 A6 */ mtlr r0 -/* 8016329C 001601FC 38 21 00 10 */ addi r1, r1, 0x10 -/* 801632A0 00160200 4E 80 00 20 */ blr - -.global sub_801632a4 -sub_801632a4: -/* 801632A4 00160204 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 801632A8 00160208 7C 08 02 A6 */ mflr r0 -/* 801632AC 0016020C 90 01 00 44 */ stw r0, 0x44(r1) -/* 801632B0 00160210 54 C0 06 3F */ clrlwi. r0, r6, 0x18 -/* 801632B4 00160214 BF 61 00 2C */ stmw r27, 0x2c(r1) -/* 801632B8 00160218 7C DF 33 78 */ mr r31, r6 -/* 801632BC 0016021C 7C 7D 1B 78 */ mr r29, r3 -/* 801632C0 00160220 7C 9E 23 78 */ mr r30, r4 -/* 801632C4 00160224 7C BB 2B 78 */ mr r27, r5 -/* 801632C8 00160228 41 82 00 80 */ beq lbl_80163348 -/* 801632CC 0016022C 57 63 08 3C */ slwi r3, r27, 1 -/* 801632D0 00160230 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 801632D4 00160234 7F 9D 1A 14 */ add r28, r29, r3 -/* 801632D8 00160238 A0 7C 07 DC */ lhz r3, 0x7dc(r28) -/* 801632DC 0016023C 7C 03 00 40 */ cmplw r3, r0 -/* 801632E0 00160240 40 82 00 68 */ bne lbl_80163348 -/* 801632E4 00160244 38 61 00 18 */ addi r3, r1, 0x18 -/* 801632E8 00160248 4B EE 9D F5 */ bl AllocateUniqueId__13CStateManagerFv -/* 801632EC 0016024C A0 01 00 18 */ lhz r0, 0x18(r1) -/* 801632F0 00160250 3C 60 80 3D */ lis r3, lbl_803D0398@ha -/* 801632F4 00160254 38 83 03 98 */ addi r4, r3, lbl_803D0398@l -/* 801632F8 00160258 38 60 01 08 */ li r3, 0x108 -/* 801632FC 0016025C B0 1C 07 DC */ sth r0, 0x7dc(r28) -/* 80163300 00160260 38 84 00 3B */ addi r4, r4, 0x3b -/* 80163304 00160264 38 A0 00 00 */ li r5, 0 -/* 80163308 00160268 48 1B 25 65 */ bl __nw__FUlPCcPCc -/* 8016330C 0016026C 7C 64 1B 79 */ or. r4, r3, r3 -/* 80163310 00160270 41 82 00 30 */ beq lbl_80163340 -/* 80163314 00160274 80 FD 00 04 */ lwz r7, 4(r29) -/* 80163318 00160278 38 81 00 14 */ addi r4, r1, 0x14 -/* 8016331C 0016027C 38 A1 00 20 */ addi r5, r1, 0x20 -/* 80163320 00160280 38 DD 00 34 */ addi r6, r29, 0x34 -/* 80163324 00160284 90 E1 00 20 */ stw r7, 0x20(r1) -/* 80163328 00160288 A0 1C 07 DC */ lhz r0, 0x7dc(r28) -/* 8016332C 0016028C 90 E1 00 1C */ stw r7, 0x1c(r1) -/* 80163330 00160290 B0 01 00 14 */ sth r0, 0x14(r1) -/* 80163334 00160294 80 FD 05 68 */ lwz r7, 0x568(r29) -/* 80163338 00160298 48 00 45 CD */ bl __ct__11CDroneLaserF9TUniqueIdRC12CTransform4fUi -/* 8016333C 0016029C 7C 64 1B 78 */ mr r4, r3 -lbl_80163340: -/* 80163340 001602A0 7F C3 F3 78 */ mr r3, r30 -/* 80163344 001602A4 4B EE 97 D1 */ bl AddObject__13CStateManagerFR7CEntity -lbl_80163348: -/* 80163348 001602A8 57 60 08 3C */ slwi r0, r27, 1 -/* 8016334C 001602AC 7F C3 F3 78 */ mr r3, r30 -/* 80163350 001602B0 7C BD 02 14 */ add r5, r29, r0 -/* 80163354 001602B4 38 81 00 10 */ addi r4, r1, 0x10 -/* 80163358 001602B8 A0 05 07 DC */ lhz r0, 0x7dc(r5) -/* 8016335C 001602BC B0 01 00 10 */ sth r0, 0x10(r1) -/* 80163360 001602C0 4B EE 92 15 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80163364 001602C4 7C 64 1B 79 */ or. r4, r3, r3 -/* 80163368 001602C8 41 82 00 2C */ beq lbl_80163394 -/* 8016336C 001602CC 57 E0 06 3F */ clrlwi. r0, r31, 0x18 -/* 80163370 001602D0 38 C0 00 04 */ li r6, 4 -/* 80163374 001602D4 41 82 00 08 */ beq lbl_8016337C -/* 80163378 001602D8 38 C0 00 01 */ li r6, 1 -lbl_8016337C: -/* 8016337C 001602DC A0 1D 00 08 */ lhz r0, 8(r29) -/* 80163380 001602E0 7F C3 F3 78 */ mr r3, r30 -/* 80163384 001602E4 38 A1 00 0C */ addi r5, r1, 0xc -/* 80163388 001602E8 B0 01 00 08 */ sth r0, 8(r1) -/* 8016338C 001602EC B0 01 00 0C */ sth r0, 0xc(r1) -/* 80163390 001602F0 4B EE 0B 41 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -lbl_80163394: -/* 80163394 001602F4 BB 61 00 2C */ lmw r27, 0x2c(r1) -/* 80163398 001602F8 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8016339C 001602FC 7C 08 03 A6 */ mtlr r0 -/* 801633A0 00160300 38 21 00 40 */ addi r1, r1, 0x40 -/* 801633A4 00160304 4E 80 00 20 */ blr - -.global sub_801633a8 -sub_801633a8: -/* 801633A8 00160308 94 21 F6 60 */ stwu r1, -0x9a0(r1) -/* 801633AC 0016030C 7C 08 02 A6 */ mflr r0 -/* 801633B0 00160310 90 01 09 A4 */ stw r0, 0x9a4(r1) -/* 801633B4 00160314 93 E1 09 9C */ stw r31, 0x99c(r1) -/* 801633B8 00160318 7C 9F 23 78 */ mr r31, r4 -/* 801633BC 0016031C 93 C1 09 98 */ stw r30, 0x998(r1) -/* 801633C0 00160320 7C 7E 1B 78 */ mr r30, r3 -/* 801633C4 00160324 93 A1 09 94 */ stw r29, 0x994(r1) -/* 801633C8 00160328 93 81 09 90 */ stw r28, 0x990(r1) -/* 801633CC 0016032C 88 0D A4 23 */ lbz r0, lbl_805A8FE3@sda21(r13) -/* 801633D0 00160330 7C 00 07 75 */ extsb. r0, r0 -/* 801633D4 00160334 40 82 00 58 */ bne lbl_8016342C -/* 801633D8 00160338 80 AD 8D 50 */ lwz r5, lbl_805A7910@sda21(r13) -/* 801633DC 0016033C 38 60 00 00 */ li r3, 0 -/* 801633E0 00160340 38 80 00 01 */ li r4, 1 -/* 801633E4 00160344 48 22 6B 11 */ bl __shl2i -/* 801633E8 00160348 80 AD 8D 4C */ lwz r5, lbl_805A790C@sda21(r13) -/* 801633EC 0016034C 7C 9C 23 78 */ mr r28, r4 -/* 801633F0 00160350 7C 7D 1B 78 */ mr r29, r3 -/* 801633F4 00160354 38 60 00 00 */ li r3, 0 -/* 801633F8 00160358 38 80 00 01 */ li r4, 1 -/* 801633FC 0016035C 48 22 6A F9 */ bl __shl2i -/* 80163400 00160360 3C A0 80 47 */ lis r5, lbl_8046C890@ha -/* 80163404 00160364 38 C0 00 03 */ li r6, 3 -/* 80163408 00160368 38 A5 C8 90 */ addi r5, r5, lbl_8046C890@l -/* 8016340C 0016036C 38 00 00 01 */ li r0, 1 -/* 80163410 00160370 90 C1 00 D0 */ stw r6, 0xd0(r1) -/* 80163414 00160374 90 85 00 04 */ stw r4, 4(r5) -/* 80163418 00160378 90 65 00 00 */ stw r3, 0(r5) -/* 8016341C 0016037C 93 85 00 0C */ stw r28, 0xc(r5) -/* 80163420 00160380 93 A5 00 08 */ stw r29, 8(r5) -/* 80163424 00160384 90 C5 00 10 */ stw r6, 0x10(r5) -/* 80163428 00160388 98 0D A4 23 */ stb r0, lbl_805A8FE3@sda21(r13) -lbl_8016342C: -/* 8016342C 0016038C 88 0D A4 24 */ lbz r0, lbl_805A8FE4@sda21(r13) -/* 80163430 00160390 7C 00 07 75 */ extsb. r0, r0 -/* 80163434 00160394 40 82 00 58 */ bne lbl_8016348C -/* 80163438 00160398 80 AD 8D 58 */ lwz r5, lbl_805A7918@sda21(r13) -/* 8016343C 0016039C 38 60 00 00 */ li r3, 0 -/* 80163440 001603A0 38 80 00 01 */ li r4, 1 -/* 80163444 001603A4 48 22 6A B1 */ bl __shl2i -/* 80163448 001603A8 80 AD 8D 54 */ lwz r5, lbl_805A7914@sda21(r13) -/* 8016344C 001603AC 7C 9D 23 78 */ mr r29, r4 -/* 80163450 001603B0 7C 7C 1B 78 */ mr r28, r3 -/* 80163454 001603B4 38 60 00 00 */ li r3, 0 -/* 80163458 001603B8 38 80 00 01 */ li r4, 1 -/* 8016345C 001603BC 48 22 6A 99 */ bl __shl2i -/* 80163460 001603C0 3C A0 80 47 */ lis r5, lbl_8046C8A8@ha -/* 80163464 001603C4 38 C0 00 03 */ li r6, 3 -/* 80163468 001603C8 38 A5 C8 A8 */ addi r5, r5, lbl_8046C8A8@l -/* 8016346C 001603CC 38 00 00 01 */ li r0, 1 -/* 80163470 001603D0 90 C1 00 B8 */ stw r6, 0xb8(r1) -/* 80163474 001603D4 90 85 00 04 */ stw r4, 4(r5) -/* 80163478 001603D8 90 65 00 00 */ stw r3, 0(r5) -/* 8016347C 001603DC 93 A5 00 0C */ stw r29, 0xc(r5) -/* 80163480 001603E0 93 85 00 08 */ stw r28, 8(r5) -/* 80163484 001603E4 90 C5 00 10 */ stw r6, 0x10(r5) -/* 80163488 001603E8 98 0D A4 24 */ stb r0, lbl_805A8FE4@sda21(r13) -lbl_8016348C: -/* 8016348C 001603EC C0 5E 00 5C */ lfs f2, 0x5c(r30) -/* 80163490 001603F0 7F C4 F3 78 */ mr r4, r30 -/* 80163494 001603F4 C0 3E 00 4C */ lfs f1, 0x4c(r30) -/* 80163498 001603F8 38 61 00 8C */ addi r3, r1, 0x8c -/* 8016349C 001603FC C0 1E 00 3C */ lfs f0, 0x3c(r30) -/* 801634A0 00160400 FC 40 10 50 */ fneg f2, f2 -/* 801634A4 00160404 FC 20 08 50 */ fneg f1, f1 -/* 801634A8 00160408 FC 00 00 50 */ fneg f0, f0 -/* 801634AC 0016040C D0 41 00 70 */ stfs f2, 0x70(r1) -/* 801634B0 00160410 D0 01 00 68 */ stfs f0, 0x68(r1) -/* 801634B4 00160414 D0 21 00 6C */ stfs f1, 0x6c(r1) -/* 801634B8 00160418 4B FB 74 75 */ bl GetBoundingBox__13CPhysicsActorCFv -/* 801634BC 0016041C C0 01 00 8C */ lfs f0, 0x8c(r1) -/* 801634C0 00160420 7F C4 F3 78 */ mr r4, r30 -/* 801634C4 00160424 C0 A1 00 90 */ lfs f5, 0x90(r1) -/* 801634C8 00160428 38 61 00 74 */ addi r3, r1, 0x74 -/* 801634CC 0016042C C0 81 00 94 */ lfs f4, 0x94(r1) -/* 801634D0 00160430 C0 61 00 98 */ lfs f3, 0x98(r1) -/* 801634D4 00160434 C0 41 00 9C */ lfs f2, 0x9c(r1) -/* 801634D8 00160438 C0 21 00 A0 */ lfs f1, 0xa0(r1) -/* 801634DC 0016043C D0 01 00 D8 */ stfs f0, 0xd8(r1) -/* 801634E0 00160440 C0 02 9F D8 */ lfs f0, lbl_805ABCF8@sda21(r2) -/* 801634E4 00160444 D0 A1 00 DC */ stfs f5, 0xdc(r1) -/* 801634E8 00160448 D0 81 00 E0 */ stfs f4, 0xe0(r1) -/* 801634EC 0016044C D0 61 00 E4 */ stfs f3, 0xe4(r1) -/* 801634F0 00160450 D0 41 00 E8 */ stfs f2, 0xe8(r1) -/* 801634F4 00160454 D0 21 00 EC */ stfs f1, 0xec(r1) -/* 801634F8 00160458 C0 BE 00 5C */ lfs f5, 0x5c(r30) -/* 801634FC 0016045C C0 9E 00 4C */ lfs f4, 0x4c(r30) -/* 80163500 00160460 C0 3E 00 3C */ lfs f1, 0x3c(r30) -/* 80163504 00160464 EC 40 01 72 */ fmuls f2, f0, f5 -/* 80163508 00160468 EC 60 01 32 */ fmuls f3, f0, f4 -/* 8016350C 0016046C D0 81 00 3C */ stfs f4, 0x3c(r1) -/* 80163510 00160470 EC 00 00 72 */ fmuls f0, f0, f1 -/* 80163514 00160474 D0 21 00 38 */ stfs f1, 0x38(r1) -/* 80163518 00160478 D0 A1 00 40 */ stfs f5, 0x40(r1) -/* 8016351C 0016047C D0 01 00 44 */ stfs f0, 0x44(r1) -/* 80163520 00160480 D0 61 00 48 */ stfs f3, 0x48(r1) -/* 80163524 00160484 D0 41 00 4C */ stfs f2, 0x4c(r1) -/* 80163528 00160488 4B FB 74 05 */ bl GetBoundingBox__13CPhysicsActorCFv -/* 8016352C 0016048C C0 21 00 78 */ lfs f1, 0x78(r1) -/* 80163530 00160490 38 61 00 D8 */ addi r3, r1, 0xd8 -/* 80163534 00160494 C0 01 00 48 */ lfs f0, 0x48(r1) -/* 80163538 00160498 38 81 00 50 */ addi r4, r1, 0x50 -/* 8016353C 0016049C C0 61 00 7C */ lfs f3, 0x7c(r1) -/* 80163540 001604A0 C0 41 00 4C */ lfs f2, 0x4c(r1) -/* 80163544 001604A4 EC 81 00 2A */ fadds f4, f1, f0 -/* 80163548 001604A8 C0 21 00 74 */ lfs f1, 0x74(r1) -/* 8016354C 001604AC C0 01 00 44 */ lfs f0, 0x44(r1) -/* 80163550 001604B0 EC 43 10 2A */ fadds f2, f3, f2 -/* 80163554 001604B4 D0 81 00 54 */ stfs f4, 0x54(r1) -/* 80163558 001604B8 EC 01 00 2A */ fadds f0, f1, f0 -/* 8016355C 001604BC D0 41 00 58 */ stfs f2, 0x58(r1) -/* 80163560 001604C0 D0 01 00 50 */ stfs f0, 0x50(r1) -/* 80163564 001604C4 48 1D 45 A5 */ bl AccumulateBounds__6CAABoxFRC9CVector3f -/* 80163568 001604C8 38 00 00 00 */ li r0, 0 -/* 8016356C 001604CC 3C 60 80 47 */ lis r3, lbl_8046C890@ha -/* 80163570 001604D0 90 01 01 80 */ stw r0, 0x180(r1) -/* 80163574 001604D4 38 C3 C8 90 */ addi r6, r3, lbl_8046C890@l -/* 80163578 001604D8 7F E3 FB 78 */ mr r3, r31 -/* 8016357C 001604DC 38 81 01 80 */ addi r4, r1, 0x180 -/* 80163580 001604E0 38 A1 00 D8 */ addi r5, r1, 0xd8 -/* 80163584 001604E4 38 E0 00 00 */ li r7, 0 -/* 80163588 001604E8 4B EE 91 99 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" -/* 8016358C 001604EC 80 01 01 80 */ lwz r0, 0x180(r1) -/* 80163590 001604F0 2C 00 00 00 */ cmpwi r0, 0 -/* 80163594 001604F4 40 81 01 B0 */ ble lbl_80163744 -/* 80163598 001604F8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016359C 001604FC 3C 60 80 47 */ lis r3, lbl_8046C8A8@ha -/* 801635A0 00160500 38 E3 C8 A8 */ addi r7, r3, lbl_8046C8A8@l -/* 801635A4 00160504 C0 22 9F DC */ lfs f1, lbl_805ABCFC@sda21(r2) -/* 801635A8 00160508 B0 01 00 14 */ sth r0, 0x14(r1) -/* 801635AC 0016050C 7F E4 FB 78 */ mr r4, r31 -/* 801635B0 00160510 38 61 01 20 */ addi r3, r1, 0x120 -/* 801635B4 00160514 38 A1 00 2C */ addi r5, r1, 0x2c -/* 801635B8 00160518 C0 7E 00 60 */ lfs f3, 0x60(r30) -/* 801635BC 0016051C 38 C1 00 68 */ addi r6, r1, 0x68 -/* 801635C0 00160520 C0 5E 00 50 */ lfs f2, 0x50(r30) -/* 801635C4 00160524 C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 801635C8 00160528 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 801635CC 0016052C D0 41 00 30 */ stfs f2, 0x30(r1) -/* 801635D0 00160530 D0 61 00 34 */ stfs f3, 0x34(r1) -/* 801635D4 00160534 4B EE 99 C5 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter -/* 801635D8 00160538 C0 E1 01 20 */ lfs f7, 0x120(r1) -/* 801635DC 0016053C 7F E4 FB 78 */ mr r4, r31 -/* 801635E0 00160540 C0 C1 01 24 */ lfs f6, 0x124(r1) -/* 801635E4 00160544 38 61 00 F0 */ addi r3, r1, 0xf0 -/* 801635E8 00160548 C0 A1 01 28 */ lfs f5, 0x128(r1) -/* 801635EC 0016054C 38 A1 00 14 */ addi r5, r1, 0x14 -/* 801635F0 00160550 C0 81 01 2C */ lfs f4, 0x12c(r1) -/* 801635F4 00160554 38 C1 00 20 */ addi r6, r1, 0x20 -/* 801635F8 00160558 C0 61 01 30 */ lfs f3, 0x130(r1) -/* 801635FC 0016055C 38 E1 00 68 */ addi r7, r1, 0x68 -/* 80163600 00160560 C0 41 01 34 */ lfs f2, 0x134(r1) -/* 80163604 00160564 39 01 01 80 */ addi r8, r1, 0x180 -/* 80163608 00160568 C0 21 01 38 */ lfs f1, 0x138(r1) -/* 8016360C 0016056C 39 21 01 50 */ addi r9, r1, 0x150 -/* 80163610 00160570 C0 01 01 3C */ lfs f0, 0x13c(r1) -/* 80163614 00160574 89 61 01 40 */ lbz r11, 0x140(r1) -/* 80163618 00160578 80 01 01 48 */ lwz r0, 0x148(r1) -/* 8016361C 0016057C 81 41 01 4C */ lwz r10, 0x14c(r1) -/* 80163620 00160580 D0 E1 01 50 */ stfs f7, 0x150(r1) -/* 80163624 00160584 D0 C1 01 54 */ stfs f6, 0x154(r1) -/* 80163628 00160588 D0 A1 01 58 */ stfs f5, 0x158(r1) -/* 8016362C 0016058C D0 81 01 5C */ stfs f4, 0x15c(r1) -/* 80163630 00160590 D0 61 01 60 */ stfs f3, 0x160(r1) -/* 80163634 00160594 D0 41 01 64 */ stfs f2, 0x164(r1) -/* 80163638 00160598 D0 21 01 68 */ stfs f1, 0x168(r1) -/* 8016363C 0016059C D0 01 01 6C */ stfs f0, 0x16c(r1) -/* 80163640 001605A0 99 61 01 70 */ stb r11, 0x170(r1) -/* 80163644 001605A4 91 41 01 7C */ stw r10, 0x17c(r1) -/* 80163648 001605A8 90 01 01 78 */ stw r0, 0x178(r1) -/* 8016364C 001605AC C0 5E 00 60 */ lfs f2, 0x60(r30) -/* 80163650 001605B0 C0 3E 00 50 */ lfs f1, 0x50(r30) -/* 80163654 001605B4 C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 80163658 001605B8 D0 01 00 20 */ stfs f0, 0x20(r1) -/* 8016365C 001605BC D0 21 00 24 */ stfs f1, 0x24(r1) -/* 80163660 001605C0 D0 41 00 28 */ stfs f2, 0x28(r1) -/* 80163664 001605C4 48 00 01 55 */ bl sub_801637b8 -/* 80163668 001605C8 88 01 01 10 */ lbz r0, 0x110(r1) -/* 8016366C 001605CC C0 A1 00 F0 */ lfs f5, 0xf0(r1) -/* 80163670 001605D0 80 A1 00 F4 */ lwz r5, 0xf4(r1) -/* 80163674 001605D4 28 00 00 00 */ cmplwi r0, 0 -/* 80163678 001605D8 80 81 00 F8 */ lwz r4, 0xf8(r1) -/* 8016367C 001605DC 80 61 00 FC */ lwz r3, 0xfc(r1) -/* 80163680 001605E0 C0 81 01 00 */ lfs f4, 0x100(r1) -/* 80163684 001605E4 C0 61 01 04 */ lfs f3, 0x104(r1) -/* 80163688 001605E8 C0 41 01 08 */ lfs f2, 0x108(r1) -/* 8016368C 001605EC C0 21 01 0C */ lfs f1, 0x10c(r1) -/* 80163690 001605F0 C8 01 01 18 */ lfd f0, 0x118(r1) -/* 80163694 001605F4 D0 A1 01 50 */ stfs f5, 0x150(r1) -/* 80163698 001605F8 90 A1 01 54 */ stw r5, 0x154(r1) -/* 8016369C 001605FC 90 81 01 58 */ stw r4, 0x158(r1) -/* 801636A0 00160600 90 61 01 5C */ stw r3, 0x15c(r1) -/* 801636A4 00160604 D0 81 01 60 */ stfs f4, 0x160(r1) -/* 801636A8 00160608 D0 61 01 64 */ stfs f3, 0x164(r1) -/* 801636AC 0016060C D0 41 01 68 */ stfs f2, 0x168(r1) -/* 801636B0 00160610 D0 21 01 6C */ stfs f1, 0x16c(r1) -/* 801636B4 00160614 98 01 01 70 */ stb r0, 0x170(r1) -/* 801636B8 00160618 D8 01 01 78 */ stfd f0, 0x178(r1) -/* 801636BC 0016061C 41 82 00 88 */ beq lbl_80163744 -/* 801636C0 00160620 A0 61 00 14 */ lhz r3, 0x14(r1) -/* 801636C4 00160624 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 801636C8 00160628 7C 03 00 40 */ cmplw r3, r0 -/* 801636CC 0016062C 41 82 00 78 */ beq lbl_80163744 -/* 801636D0 00160630 A0 01 00 14 */ lhz r0, 0x14(r1) -/* 801636D4 00160634 7F E3 FB 78 */ mr r3, r31 -/* 801636D8 00160638 38 81 00 10 */ addi r4, r1, 0x10 -/* 801636DC 0016063C B0 01 00 10 */ sth r0, 0x10(r1) -/* 801636E0 00160640 4B EE 8E 95 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 801636E4 00160644 7C 64 1B 78 */ mr r4, r3 -/* 801636E8 00160648 38 61 00 18 */ addi r3, r1, 0x18 -/* 801636EC 0016064C 4B F4 31 75 */ bl "__ct__26TCastToPtr<12CScriptWater>FP7CEntity" -/* 801636F0 00160650 80 C3 00 04 */ lwz r6, 4(r3) -/* 801636F4 00160654 28 06 00 00 */ cmplwi r6, 0 -/* 801636F8 00160658 41 82 00 4C */ beq lbl_80163744 -/* 801636FC 0016065C C0 21 01 54 */ lfs f1, 0x154(r1) -/* 80163700 00160660 7F E7 FB 78 */ mr r7, r31 -/* 80163704 00160664 C0 41 01 58 */ lfs f2, 0x158(r1) -/* 80163708 00160668 38 81 00 0C */ addi r4, r1, 0xc -/* 8016370C 0016066C C0 01 01 5C */ lfs f0, 0x15c(r1) -/* 80163710 00160670 38 A1 00 5C */ addi r5, r1, 0x5c -/* 80163714 00160674 D0 21 00 5C */ stfs f1, 0x5c(r1) -/* 80163718 00160678 C0 22 9F E0 */ lfs f1, lbl_805ABD00@sda21(r2) -/* 8016371C 0016067C D0 41 00 60 */ stfs f2, 0x60(r1) -/* 80163720 00160680 D0 01 00 64 */ stfs f0, 0x64(r1) -/* 80163724 00160684 A0 1E 00 08 */ lhz r0, 8(r30) -/* 80163728 00160688 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8016372C 0016068C 80 66 01 B4 */ lwz r3, 0x1b4(r6) -/* 80163730 00160690 B0 01 00 08 */ sth r0, 8(r1) -/* 80163734 00160694 81 83 00 00 */ lwz r12, 0(r3) -/* 80163738 00160698 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 8016373C 0016069C 7D 89 03 A6 */ mtctr r12 -/* 80163740 001606A0 4E 80 04 21 */ bctrl -lbl_80163744: -/* 80163744 001606A4 80 A1 01 80 */ lwz r5, 0x180(r1) -/* 80163748 001606A8 38 60 00 00 */ li r3, 0 -/* 8016374C 001606AC 2C 05 00 00 */ cmpwi r5, 0 -/* 80163750 001606B0 40 81 00 40 */ ble lbl_80163790 -/* 80163754 001606B4 2C 05 00 08 */ cmpwi r5, 8 -/* 80163758 001606B8 38 85 FF F8 */ addi r4, r5, -8 -/* 8016375C 001606BC 40 81 00 20 */ ble lbl_8016377C -/* 80163760 001606C0 38 04 00 07 */ addi r0, r4, 7 -/* 80163764 001606C4 54 00 E8 FE */ srwi r0, r0, 3 -/* 80163768 001606C8 7C 09 03 A6 */ mtctr r0 -/* 8016376C 001606CC 2C 04 00 00 */ cmpwi r4, 0 -/* 80163770 001606D0 40 81 00 0C */ ble lbl_8016377C -lbl_80163774: -/* 80163774 001606D4 38 63 00 08 */ addi r3, r3, 8 -/* 80163778 001606D8 42 00 FF FC */ bdnz lbl_80163774 -lbl_8016377C: -/* 8016377C 001606DC 7C 03 28 50 */ subf r0, r3, r5 -/* 80163780 001606E0 7C 09 03 A6 */ mtctr r0 -/* 80163784 001606E4 7C 03 28 00 */ cmpw r3, r5 -/* 80163788 001606E8 40 80 00 08 */ bge lbl_80163790 -lbl_8016378C: -/* 8016378C 001606EC 42 00 00 00 */ bdnz lbl_8016378C -lbl_80163790: -/* 80163790 001606F0 38 00 00 00 */ li r0, 0 -/* 80163794 001606F4 90 01 01 80 */ stw r0, 0x180(r1) -/* 80163798 001606F8 80 01 09 A4 */ lwz r0, 0x9a4(r1) -/* 8016379C 001606FC 83 E1 09 9C */ lwz r31, 0x99c(r1) -/* 801637A0 00160700 83 C1 09 98 */ lwz r30, 0x998(r1) -/* 801637A4 00160704 83 A1 09 94 */ lwz r29, 0x994(r1) -/* 801637A8 00160708 83 81 09 90 */ lwz r28, 0x990(r1) -/* 801637AC 0016070C 7C 08 03 A6 */ mtlr r0 -/* 801637B0 00160710 38 21 09 A0 */ addi r1, r1, 0x9a0 -/* 801637B4 00160714 4E 80 00 20 */ blr - -.global sub_801637b8 -sub_801637b8: -/* 801637B8 00160718 94 21 FD 60 */ stwu r1, -0x2a0(r1) -/* 801637BC 0016071C 7C 08 02 A6 */ mflr r0 -/* 801637C0 00160720 90 01 02 A4 */ stw r0, 0x2a4(r1) -/* 801637C4 00160724 DB E1 02 90 */ stfd f31, 0x290(r1) -/* 801637C8 00160728 F3 E1 02 98 */ psq_st f31, 664(r1), 0, qr0 -/* 801637CC 0016072C BE A1 02 64 */ stmw r21, 0x264(r1) -/* 801637D0 00160730 C0 E9 00 00 */ lfs f7, 0(r9) -/* 801637D4 00160734 7D 1B 43 78 */ mr r27, r8 -/* 801637D8 00160738 C0 C9 00 04 */ lfs f6, 4(r9) -/* 801637DC 0016073C 7C 76 1B 78 */ mr r22, r3 -/* 801637E0 00160740 C0 A9 00 08 */ lfs f5, 8(r9) -/* 801637E4 00160744 FF E0 38 90 */ fmr f31, f7 -/* 801637E8 00160748 C0 89 00 0C */ lfs f4, 0xc(r9) -/* 801637EC 0016074C 7C 97 23 78 */ mr r23, r4 -/* 801637F0 00160750 C0 69 00 10 */ lfs f3, 0x10(r9) -/* 801637F4 00160754 7C B8 2B 78 */ mr r24, r5 -/* 801637F8 00160758 C0 49 00 14 */ lfs f2, 0x14(r9) -/* 801637FC 0016075C C0 29 00 18 */ lfs f1, 0x18(r9) -/* 80163800 00160760 7C D9 33 78 */ mr r25, r6 -/* 80163804 00160764 C0 09 00 1C */ lfs f0, 0x1c(r9) -/* 80163808 00160768 7C FA 3B 78 */ mr r26, r7 -/* 8016380C 0016076C 88 89 00 20 */ lbz r4, 0x20(r9) -/* 80163810 00160770 3B BB 00 04 */ addi r29, r27, 4 -/* 80163814 00160774 80 09 00 28 */ lwz r0, 0x28(r9) -/* 80163818 00160778 3B E1 02 2C */ addi r31, r1, 0x22c -/* 8016381C 0016077C 80 69 00 2C */ lwz r3, 0x2c(r9) -/* 80163820 00160780 3B C1 01 BC */ addi r30, r1, 0x1bc -/* 80163824 00160784 D0 E1 01 50 */ stfs f7, 0x150(r1) -/* 80163828 00160788 D0 C1 01 54 */ stfs f6, 0x154(r1) -/* 8016382C 0016078C D0 A1 01 58 */ stfs f5, 0x158(r1) -/* 80163830 00160790 D0 81 01 5C */ stfs f4, 0x15c(r1) -/* 80163834 00160794 D0 61 01 60 */ stfs f3, 0x160(r1) -/* 80163838 00160798 D0 41 01 64 */ stfs f2, 0x164(r1) -/* 8016383C 0016079C D0 21 01 68 */ stfs f1, 0x168(r1) -/* 80163840 001607A0 D0 01 01 6C */ stfs f0, 0x16c(r1) -/* 80163844 001607A4 98 81 01 70 */ stb r4, 0x170(r1) -/* 80163848 001607A8 90 61 01 7C */ stw r3, 0x17c(r1) -/* 8016384C 001607AC 90 01 01 78 */ stw r0, 0x178(r1) -/* 80163850 001607B0 48 00 03 64 */ b lbl_80163BB4 -lbl_80163854: -/* 80163854 001607B4 A0 1D 00 00 */ lhz r0, 0(r29) -/* 80163858 001607B8 7E E3 BB 78 */ mr r3, r23 -/* 8016385C 001607BC 38 81 00 0C */ addi r4, r1, 0xc -/* 80163860 001607C0 B0 01 00 0C */ sth r0, 0xc(r1) -/* 80163864 001607C4 4B EE 8D 41 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 80163868 001607C8 7C 64 1B 78 */ mr r4, r3 -/* 8016386C 001607CC 38 61 00 18 */ addi r3, r1, 0x18 -/* 80163870 001607D0 4B F4 8E 75 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" -/* 80163874 001607D4 83 83 00 04 */ lwz r28, 4(r3) -/* 80163878 001607D8 28 1C 00 00 */ cmplwi r28, 0 -/* 8016387C 001607DC 41 82 01 4C */ beq lbl_801639C8 -/* 80163880 001607E0 7F 84 E3 78 */ mr r4, r28 -/* 80163884 001607E4 38 61 00 68 */ addi r3, r1, 0x68 -/* 80163888 001607E8 81 9C 00 00 */ lwz r12, 0(r28) -/* 8016388C 001607EC 81 8C 00 70 */ lwz r12, 0x70(r12) -/* 80163890 001607F0 7D 89 03 A6 */ mtctr r12 -/* 80163894 001607F4 4E 80 04 21 */ bctrl -/* 80163898 001607F8 7F 83 E3 78 */ mr r3, r28 -/* 8016389C 001607FC 81 9C 00 00 */ lwz r12, 0(r28) -/* 801638A0 00160800 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 801638A4 00160804 7D 89 03 A6 */ mtctr r12 -/* 801638A8 00160808 4E 80 04 21 */ bctrl -/* 801638AC 0016080C FC 20 F8 90 */ fmr f1, f31 -/* 801638B0 00160810 7C 75 1B 78 */ mr r21, r3 -/* 801638B4 00160814 7F 24 CB 78 */ mr r4, r25 -/* 801638B8 00160818 7F 45 D3 78 */ mr r5, r26 -/* 801638BC 0016081C 38 61 01 F0 */ addi r3, r1, 0x1f0 -/* 801638C0 00160820 48 17 27 AD */ bl __ct__5CMRayFRC9CVector3fRC9CVector3ff -/* 801638C4 00160824 D3 E1 02 28 */ stfs f31, 0x228(r1) -/* 801638C8 00160828 7F E3 FB 78 */ mr r3, r31 -/* 801638CC 0016082C 38 81 00 68 */ addi r4, r1, 0x68 -/* 801638D0 00160830 48 1A F2 A5 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 801638D4 00160834 3C 60 80 5A */ lis r3, lbl_8059FD18@ha -/* 801638D8 00160838 7E A4 AB 78 */ mr r4, r21 -/* 801638DC 0016083C 38 03 FD 18 */ addi r0, r3, lbl_8059FD18@l -/* 801638E0 00160840 38 61 00 98 */ addi r3, r1, 0x98 -/* 801638E4 00160844 90 01 02 5C */ stw r0, 0x25c(r1) -/* 801638E8 00160848 38 A1 01 F0 */ addi r5, r1, 0x1f0 -/* 801638EC 0016084C 81 95 00 00 */ lwz r12, 0(r21) -/* 801638F0 00160850 81 8C 00 24 */ lwz r12, 0x24(r12) -/* 801638F4 00160854 7D 89 03 A6 */ mtctr r12 -/* 801638F8 00160858 4E 80 04 21 */ bctrl -/* 801638FC 0016085C 88 81 00 B8 */ lbz r4, 0xb8(r1) -/* 80163900 00160860 C0 E1 00 98 */ lfs f7, 0x98(r1) -/* 80163904 00160864 C0 C1 00 9C */ lfs f6, 0x9c(r1) -/* 80163908 00160868 28 04 00 00 */ cmplwi r4, 0 -/* 8016390C 0016086C C0 A1 00 A0 */ lfs f5, 0xa0(r1) -/* 80163910 00160870 C0 81 00 A4 */ lfs f4, 0xa4(r1) -/* 80163914 00160874 C0 61 00 A8 */ lfs f3, 0xa8(r1) -/* 80163918 00160878 C0 41 00 AC */ lfs f2, 0xac(r1) -/* 8016391C 0016087C C0 21 00 B0 */ lfs f1, 0xb0(r1) -/* 80163920 00160880 C0 01 00 B4 */ lfs f0, 0xb4(r1) -/* 80163924 00160884 80 01 00 C0 */ lwz r0, 0xc0(r1) -/* 80163928 00160888 80 61 00 C4 */ lwz r3, 0xc4(r1) -/* 8016392C 0016088C D0 E1 01 20 */ stfs f7, 0x120(r1) -/* 80163930 00160890 D0 C1 01 24 */ stfs f6, 0x124(r1) -/* 80163934 00160894 D0 A1 01 28 */ stfs f5, 0x128(r1) -/* 80163938 00160898 D0 81 01 2C */ stfs f4, 0x12c(r1) -/* 8016393C 0016089C D0 61 01 30 */ stfs f3, 0x130(r1) -/* 80163940 001608A0 D0 41 01 34 */ stfs f2, 0x134(r1) -/* 80163944 001608A4 D0 21 01 38 */ stfs f1, 0x138(r1) -/* 80163948 001608A8 D0 01 01 3C */ stfs f0, 0x13c(r1) -/* 8016394C 001608AC 98 81 01 40 */ stb r4, 0x140(r1) -/* 80163950 001608B0 90 61 01 4C */ stw r3, 0x14c(r1) -/* 80163954 001608B4 90 01 01 48 */ stw r0, 0x148(r1) -/* 80163958 001608B8 41 82 02 58 */ beq lbl_80163BB0 -/* 8016395C 001608BC FC 07 F8 40 */ fcmpo cr0, f7, f31 -/* 80163960 001608C0 41 80 00 10 */ blt lbl_80163970 -/* 80163964 001608C4 88 01 01 70 */ lbz r0, 0x170(r1) -/* 80163968 001608C8 28 00 00 00 */ cmplwi r0, 0 -/* 8016396C 001608CC 40 82 00 5C */ bne lbl_801639C8 -lbl_80163970: -/* 80163970 001608D0 80 C1 01 24 */ lwz r6, 0x124(r1) -/* 80163974 001608D4 FF E0 38 90 */ fmr f31, f7 -/* 80163978 001608D8 80 A1 01 28 */ lwz r5, 0x128(r1) -/* 8016397C 001608DC 80 81 01 2C */ lwz r4, 0x12c(r1) -/* 80163980 001608E0 C0 81 01 30 */ lfs f4, 0x130(r1) -/* 80163984 001608E4 C0 61 01 34 */ lfs f3, 0x134(r1) -/* 80163988 001608E8 C0 41 01 38 */ lfs f2, 0x138(r1) -/* 8016398C 001608EC C0 21 01 3C */ lfs f1, 0x13c(r1) -/* 80163990 001608F0 88 61 01 40 */ lbz r3, 0x140(r1) -/* 80163994 001608F4 C8 01 01 48 */ lfd f0, 0x148(r1) -/* 80163998 001608F8 A0 1C 00 08 */ lhz r0, 8(r28) -/* 8016399C 001608FC D0 E1 01 50 */ stfs f7, 0x150(r1) -/* 801639A0 00160900 90 C1 01 54 */ stw r6, 0x154(r1) -/* 801639A4 00160904 90 A1 01 58 */ stw r5, 0x158(r1) -/* 801639A8 00160908 90 81 01 5C */ stw r4, 0x15c(r1) -/* 801639AC 0016090C D0 81 01 60 */ stfs f4, 0x160(r1) -/* 801639B0 00160910 D0 61 01 64 */ stfs f3, 0x164(r1) -/* 801639B4 00160914 D0 41 01 68 */ stfs f2, 0x168(r1) -/* 801639B8 00160918 D0 21 01 6C */ stfs f1, 0x16c(r1) -/* 801639BC 0016091C 98 61 01 70 */ stb r3, 0x170(r1) -/* 801639C0 00160920 D8 01 01 78 */ stfd f0, 0x178(r1) -/* 801639C4 00160924 B0 18 00 00 */ sth r0, 0(r24) -lbl_801639C8: -/* 801639C8 00160928 A0 1D 00 00 */ lhz r0, 0(r29) -/* 801639CC 0016092C 7E E3 BB 78 */ mr r3, r23 -/* 801639D0 00160930 38 81 00 08 */ addi r4, r1, 8 -/* 801639D4 00160934 B0 01 00 08 */ sth r0, 8(r1) -/* 801639D8 00160938 4B EE 8B CD */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 801639DC 0016093C 7C 64 1B 78 */ mr r4, r3 -/* 801639E0 00160940 38 61 00 10 */ addi r3, r1, 0x10 -/* 801639E4 00160944 4B F4 2E 7D */ bl "__ct__26TCastToPtr<12CScriptWater>FP7CEntity" -/* 801639E8 00160948 83 83 00 04 */ lwz r28, 4(r3) -/* 801639EC 0016094C 28 1C 00 00 */ cmplwi r28, 0 -/* 801639F0 00160950 41 82 01 A8 */ beq lbl_80163B98 -/* 801639F4 00160954 7F 84 E3 78 */ mr r4, r28 -/* 801639F8 00160958 38 61 00 20 */ addi r3, r1, 0x20 -/* 801639FC 0016095C 4B F1 2C D1 */ bl GetTriggerBoundsWR__14CScriptTriggerCFv -/* 80163A00 00160960 38 61 00 F8 */ addi r3, r1, 0xf8 -/* 80163A04 00160964 38 9C 00 68 */ addi r4, r28, 0x68 -/* 80163A08 00160968 48 16 BE AD */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList -/* 80163A0C 0016096C C0 C1 00 20 */ lfs f6, 0x20(r1) -/* 80163A10 00160970 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha -/* 80163A14 00160974 C0 A1 00 24 */ lfs f5, 0x24(r1) -/* 80163A18 00160978 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l -/* 80163A1C 0016097C C0 81 00 28 */ lfs f4, 0x28(r1) -/* 80163A20 00160980 FC 20 F8 90 */ fmr f1, f31 -/* 80163A24 00160984 C0 61 00 2C */ lfs f3, 0x2c(r1) -/* 80163A28 00160988 7F 24 CB 78 */ mr r4, r25 -/* 80163A2C 0016098C C0 41 00 30 */ lfs f2, 0x30(r1) -/* 80163A30 00160990 7F 45 D3 78 */ mr r5, r26 -/* 80163A34 00160994 C0 01 00 34 */ lfs f0, 0x34(r1) -/* 80163A38 00160998 90 01 00 F8 */ stw r0, 0xf8(r1) -/* 80163A3C 0016099C 38 61 01 80 */ addi r3, r1, 0x180 -/* 80163A40 001609A0 D0 C1 01 08 */ stfs f6, 0x108(r1) -/* 80163A44 001609A4 D0 A1 01 0C */ stfs f5, 0x10c(r1) -/* 80163A48 001609A8 D0 81 01 10 */ stfs f4, 0x110(r1) -/* 80163A4C 001609AC D0 61 01 14 */ stfs f3, 0x114(r1) -/* 80163A50 001609B0 D0 41 01 18 */ stfs f2, 0x118(r1) -/* 80163A54 001609B4 D0 01 01 1C */ stfs f0, 0x11c(r1) -/* 80163A58 001609B8 48 17 26 15 */ bl __ct__5CMRayFRC9CVector3fRC9CVector3ff -/* 80163A5C 001609BC 3C 60 80 5A */ lis r3, skIdentity4f@ha -/* 80163A60 001609C0 D3 E1 01 B8 */ stfs f31, 0x1b8(r1) -/* 80163A64 001609C4 38 83 66 70 */ addi r4, r3, skIdentity4f@l -/* 80163A68 001609C8 7F C3 F3 78 */ mr r3, r30 -/* 80163A6C 001609CC 48 1A F1 09 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80163A70 001609D0 3C 60 80 5A */ lis r3, lbl_8059FD18@ha -/* 80163A74 001609D4 81 81 00 F8 */ lwz r12, 0xf8(r1) -/* 80163A78 001609D8 38 03 FD 18 */ addi r0, r3, lbl_8059FD18@l -/* 80163A7C 001609DC 38 61 00 38 */ addi r3, r1, 0x38 -/* 80163A80 001609E0 90 01 01 EC */ stw r0, 0x1ec(r1) -/* 80163A84 001609E4 38 81 00 F8 */ addi r4, r1, 0xf8 -/* 80163A88 001609E8 38 A1 01 80 */ addi r5, r1, 0x180 -/* 80163A8C 001609EC 81 8C 00 24 */ lwz r12, 0x24(r12) -/* 80163A90 001609F0 7D 89 03 A6 */ mtctr r12 -/* 80163A94 001609F4 4E 80 04 21 */ bctrl -/* 80163A98 001609F8 88 81 00 58 */ lbz r4, 0x58(r1) -/* 80163A9C 001609FC C0 E1 00 38 */ lfs f7, 0x38(r1) -/* 80163AA0 00160A00 C0 C1 00 3C */ lfs f6, 0x3c(r1) -/* 80163AA4 00160A04 28 04 00 00 */ cmplwi r4, 0 -/* 80163AA8 00160A08 C0 A1 00 40 */ lfs f5, 0x40(r1) -/* 80163AAC 00160A0C C0 81 00 44 */ lfs f4, 0x44(r1) -/* 80163AB0 00160A10 C0 61 00 48 */ lfs f3, 0x48(r1) -/* 80163AB4 00160A14 C0 41 00 4C */ lfs f2, 0x4c(r1) -/* 80163AB8 00160A18 C0 21 00 50 */ lfs f1, 0x50(r1) -/* 80163ABC 00160A1C C0 01 00 54 */ lfs f0, 0x54(r1) -/* 80163AC0 00160A20 80 01 00 60 */ lwz r0, 0x60(r1) -/* 80163AC4 00160A24 80 61 00 64 */ lwz r3, 0x64(r1) -/* 80163AC8 00160A28 D0 E1 00 C8 */ stfs f7, 0xc8(r1) -/* 80163ACC 00160A2C D0 C1 00 CC */ stfs f6, 0xcc(r1) -/* 80163AD0 00160A30 D0 A1 00 D0 */ stfs f5, 0xd0(r1) -/* 80163AD4 00160A34 D0 81 00 D4 */ stfs f4, 0xd4(r1) -/* 80163AD8 00160A38 D0 61 00 D8 */ stfs f3, 0xd8(r1) -/* 80163ADC 00160A3C D0 41 00 DC */ stfs f2, 0xdc(r1) -/* 80163AE0 00160A40 D0 21 00 E0 */ stfs f1, 0xe0(r1) -/* 80163AE4 00160A44 D0 01 00 E4 */ stfs f0, 0xe4(r1) -/* 80163AE8 00160A48 98 81 00 E8 */ stb r4, 0xe8(r1) -/* 80163AEC 00160A4C 90 61 00 F4 */ stw r3, 0xf4(r1) -/* 80163AF0 00160A50 90 01 00 F0 */ stw r0, 0xf0(r1) -/* 80163AF4 00160A54 40 82 00 20 */ bne lbl_80163B14 -/* 80163AF8 00160A58 3C 80 80 3F */ lis r4, lbl_803ECAD0@ha -/* 80163AFC 00160A5C 3C 60 80 3E */ lis r3, lbl_803D97E4@ha -/* 80163B00 00160A60 38 04 CA D0 */ addi r0, r4, lbl_803ECAD0@l -/* 80163B04 00160A64 90 01 00 F8 */ stw r0, 0xf8(r1) -/* 80163B08 00160A68 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l -/* 80163B0C 00160A6C 90 01 00 F8 */ stw r0, 0xf8(r1) -/* 80163B10 00160A70 48 00 00 A0 */ b lbl_80163BB0 -lbl_80163B14: -/* 80163B14 00160A74 FC 07 F8 40 */ fcmpo cr0, f7, f31 -/* 80163B18 00160A78 41 80 00 10 */ blt lbl_80163B28 -/* 80163B1C 00160A7C 88 01 01 70 */ lbz r0, 0x170(r1) -/* 80163B20 00160A80 28 00 00 00 */ cmplwi r0, 0 -/* 80163B24 00160A84 40 82 00 5C */ bne lbl_80163B80 -lbl_80163B28: -/* 80163B28 00160A88 80 C1 00 CC */ lwz r6, 0xcc(r1) -/* 80163B2C 00160A8C FF E0 38 90 */ fmr f31, f7 -/* 80163B30 00160A90 80 A1 00 D0 */ lwz r5, 0xd0(r1) -/* 80163B34 00160A94 80 81 00 D4 */ lwz r4, 0xd4(r1) -/* 80163B38 00160A98 C0 81 00 D8 */ lfs f4, 0xd8(r1) -/* 80163B3C 00160A9C C0 61 00 DC */ lfs f3, 0xdc(r1) -/* 80163B40 00160AA0 C0 41 00 E0 */ lfs f2, 0xe0(r1) -/* 80163B44 00160AA4 C0 21 00 E4 */ lfs f1, 0xe4(r1) -/* 80163B48 00160AA8 88 61 00 E8 */ lbz r3, 0xe8(r1) -/* 80163B4C 00160AAC C8 01 00 F0 */ lfd f0, 0xf0(r1) -/* 80163B50 00160AB0 A0 1C 00 08 */ lhz r0, 8(r28) -/* 80163B54 00160AB4 D0 E1 01 50 */ stfs f7, 0x150(r1) -/* 80163B58 00160AB8 90 C1 01 54 */ stw r6, 0x154(r1) -/* 80163B5C 00160ABC 90 A1 01 58 */ stw r5, 0x158(r1) -/* 80163B60 00160AC0 90 81 01 5C */ stw r4, 0x15c(r1) -/* 80163B64 00160AC4 D0 81 01 60 */ stfs f4, 0x160(r1) -/* 80163B68 00160AC8 D0 61 01 64 */ stfs f3, 0x164(r1) -/* 80163B6C 00160ACC D0 41 01 68 */ stfs f2, 0x168(r1) -/* 80163B70 00160AD0 D0 21 01 6C */ stfs f1, 0x16c(r1) -/* 80163B74 00160AD4 98 61 01 70 */ stb r3, 0x170(r1) -/* 80163B78 00160AD8 D8 01 01 78 */ stfd f0, 0x178(r1) -/* 80163B7C 00160ADC B0 18 00 00 */ sth r0, 0(r24) -lbl_80163B80: -/* 80163B80 00160AE0 3C 80 80 3F */ lis r4, lbl_803ECAD0@ha -/* 80163B84 00160AE4 3C 60 80 3E */ lis r3, lbl_803D97E4@ha -/* 80163B88 00160AE8 38 04 CA D0 */ addi r0, r4, lbl_803ECAD0@l -/* 80163B8C 00160AEC 90 01 00 F8 */ stw r0, 0xf8(r1) -/* 80163B90 00160AF0 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l -/* 80163B94 00160AF4 90 01 00 F8 */ stw r0, 0xf8(r1) -lbl_80163B98: -/* 80163B98 00160AF8 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 80163B9C 00160AFC C0 02 9F 90 */ lfs f0, lbl_805ABCB0@sda21(r2) -/* 80163BA0 00160B00 EC 3F 08 28 */ fsubs f1, f31, f1 -/* 80163BA4 00160B04 FC 20 0A 10 */ fabs f1, f1 -/* 80163BA8 00160B08 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80163BAC 00160B0C 41 80 00 20 */ blt lbl_80163BCC -lbl_80163BB0: -/* 80163BB0 00160B10 3B BD 00 02 */ addi r29, r29, 2 -lbl_80163BB4: -/* 80163BB4 00160B14 80 1B 00 00 */ lwz r0, 0(r27) -/* 80163BB8 00160B18 54 00 08 3C */ slwi r0, r0, 1 -/* 80163BBC 00160B1C 7C 7B 02 14 */ add r3, r27, r0 -/* 80163BC0 00160B20 38 03 00 04 */ addi r0, r3, 4 -/* 80163BC4 00160B24 7C 1D 00 40 */ cmplw r29, r0 -/* 80163BC8 00160B28 40 82 FC 8C */ bne lbl_80163854 -lbl_80163BCC: -/* 80163BCC 00160B2C C0 21 01 50 */ lfs f1, 0x150(r1) -/* 80163BD0 00160B30 C0 01 01 54 */ lfs f0, 0x154(r1) -/* 80163BD4 00160B34 D0 36 00 00 */ stfs f1, 0(r22) -/* 80163BD8 00160B38 C0 21 01 58 */ lfs f1, 0x158(r1) -/* 80163BDC 00160B3C D0 16 00 04 */ stfs f0, 4(r22) -/* 80163BE0 00160B40 C0 01 01 5C */ lfs f0, 0x15c(r1) -/* 80163BE4 00160B44 D0 36 00 08 */ stfs f1, 8(r22) -/* 80163BE8 00160B48 C0 21 01 60 */ lfs f1, 0x160(r1) -/* 80163BEC 00160B4C D0 16 00 0C */ stfs f0, 0xc(r22) -/* 80163BF0 00160B50 C0 01 01 64 */ lfs f0, 0x164(r1) -/* 80163BF4 00160B54 D0 36 00 10 */ stfs f1, 0x10(r22) -/* 80163BF8 00160B58 C0 21 01 68 */ lfs f1, 0x168(r1) -/* 80163BFC 00160B5C D0 16 00 14 */ stfs f0, 0x14(r22) -/* 80163C00 00160B60 C0 01 01 6C */ lfs f0, 0x16c(r1) -/* 80163C04 00160B64 D0 36 00 18 */ stfs f1, 0x18(r22) -/* 80163C08 00160B68 88 01 01 70 */ lbz r0, 0x170(r1) -/* 80163C0C 00160B6C D0 16 00 1C */ stfs f0, 0x1c(r22) -/* 80163C10 00160B70 80 61 01 7C */ lwz r3, 0x17c(r1) -/* 80163C14 00160B74 98 16 00 20 */ stb r0, 0x20(r22) -/* 80163C18 00160B78 80 01 01 78 */ lwz r0, 0x178(r1) -/* 80163C1C 00160B7C 90 76 00 2C */ stw r3, 0x2c(r22) -/* 80163C20 00160B80 90 16 00 28 */ stw r0, 0x28(r22) -/* 80163C24 00160B84 E3 E1 02 98 */ psq_l f31, 664(r1), 0, qr0 -/* 80163C28 00160B88 CB E1 02 90 */ lfd f31, 0x290(r1) -/* 80163C2C 00160B8C BA A1 02 64 */ lmw r21, 0x264(r1) -/* 80163C30 00160B90 80 01 02 A4 */ lwz r0, 0x2a4(r1) -/* 80163C34 00160B94 7C 08 03 A6 */ mtlr r0 -/* 80163C38 00160B98 38 21 02 A0 */ addi r1, r1, 0x2a0 -/* 80163C3C 00160B9C 4E 80 00 20 */ blr - -.global sub_80163c40 -sub_80163c40: -/* 80163C40 00160BA0 94 21 F5 70 */ stwu r1, -0xa90(r1) -/* 80163C44 00160BA4 7C 08 02 A6 */ mflr r0 -/* 80163C48 00160BA8 90 01 0A 94 */ stw r0, 0xa94(r1) -/* 80163C4C 00160BAC DB E1 0A 80 */ stfd f31, 0xa80(r1) -/* 80163C50 00160BB0 F3 E1 0A 88 */ psq_st f31, -1400(r1), 0, qr0 -/* 80163C54 00160BB4 DB C1 0A 70 */ stfd f30, 0xa70(r1) -/* 80163C58 00160BB8 F3 C1 0A 78 */ psq_st f30, -1416(r1), 0, qr0 -/* 80163C5C 00160BBC BE 81 0A 40 */ stmw r20, 0xa40(r1) -/* 80163C60 00160BC0 88 0D A4 22 */ lbz r0, lbl_805A8FE2@sda21(r13) -/* 80163C64 00160BC4 FF C0 08 90 */ fmr f30, f1 -/* 80163C68 00160BC8 7C 7E 1B 78 */ mr r30, r3 -/* 80163C6C 00160BCC 7C 9F 23 78 */ mr r31, r4 -/* 80163C70 00160BD0 7C 00 07 75 */ extsb. r0, r0 -/* 80163C74 00160BD4 40 82 00 58 */ bne lbl_80163CCC -/* 80163C78 00160BD8 80 AD 8D 48 */ lwz r5, lbl_805A7908@sda21(r13) -/* 80163C7C 00160BDC 38 60 00 00 */ li r3, 0 -/* 80163C80 00160BE0 38 80 00 01 */ li r4, 1 -/* 80163C84 00160BE4 48 22 62 71 */ bl __shl2i -/* 80163C88 00160BE8 80 AD 8D 44 */ lwz r5, lbl_805A7904@sda21(r13) -/* 80163C8C 00160BEC 7C 95 23 78 */ mr r21, r4 -/* 80163C90 00160BF0 7C 74 1B 78 */ mr r20, r3 -/* 80163C94 00160BF4 38 60 00 00 */ li r3, 0 -/* 80163C98 00160BF8 38 80 00 01 */ li r4, 1 -/* 80163C9C 00160BFC 48 22 62 59 */ bl __shl2i -/* 80163CA0 00160C00 3C A0 80 47 */ lis r5, lbl_8046C878@ha -/* 80163CA4 00160C04 38 C0 00 03 */ li r6, 3 -/* 80163CA8 00160C08 38 A5 C8 78 */ addi r5, r5, lbl_8046C878@l -/* 80163CAC 00160C0C 38 00 00 01 */ li r0, 1 -/* 80163CB0 00160C10 90 C1 01 58 */ stw r6, 0x158(r1) -/* 80163CB4 00160C14 90 85 00 04 */ stw r4, 4(r5) -/* 80163CB8 00160C18 90 65 00 00 */ stw r3, 0(r5) -/* 80163CBC 00160C1C 92 A5 00 0C */ stw r21, 0xc(r5) -/* 80163CC0 00160C20 92 85 00 08 */ stw r20, 8(r5) -/* 80163CC4 00160C24 90 C5 00 10 */ stw r6, 0x10(r5) -/* 80163CC8 00160C28 98 0D A4 22 */ stb r0, lbl_805A8FE2@sda21(r13) -lbl_80163CCC: -/* 80163CCC 00160C2C 80 8D 8C F4 */ lwz r4, lbl_805A78B4@sda21(r13) -/* 80163CD0 00160C30 38 61 00 D4 */ addi r3, r1, 0xd4 -/* 80163CD4 00160C34 4B EA 0F E5 */ bl string_l__4rstlFPCc -/* 80163CD8 00160C38 7F C4 F3 78 */ mr r4, r30 -/* 80163CDC 00160C3C 38 61 01 A8 */ addi r3, r1, 0x1a8 -/* 80163CE0 00160C40 38 A1 00 D4 */ addi r5, r1, 0xd4 -/* 80163CE4 00160C44 4B F1 4C 95 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80163CE8 00160C48 38 61 02 08 */ addi r3, r1, 0x208 -/* 80163CEC 00160C4C 38 81 01 A8 */ addi r4, r1, 0x1a8 -/* 80163CF0 00160C50 48 1A EE 85 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80163CF4 00160C54 38 61 00 D4 */ addi r3, r1, 0xd4 -/* 80163CF8 00160C58 48 1D 9D E9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 80163CFC 00160C5C 3C 60 80 5A */ lis r3, lbl_805A6754@ha -/* 80163D00 00160C60 C3 E2 9F 7C */ lfs f31, lbl_805ABC9C@sda21(r2) -/* 80163D04 00160C64 3B 9E 08 1C */ addi r28, r30, 0x81c -/* 80163D08 00160C68 3A FE 08 28 */ addi r23, r30, 0x828 -/* 80163D0C 00160C6C 3B 7E 08 00 */ addi r27, r30, 0x800 -/* 80163D10 00160C70 3B 5E 07 E4 */ addi r26, r30, 0x7e4 -/* 80163D14 00160C74 3B 3E 07 DC */ addi r25, r30, 0x7dc -/* 80163D18 00160C78 3B A3 67 54 */ addi r29, r3, lbl_805A6754@l -/* 80163D1C 00160C7C 3A C1 01 DC */ addi r22, r1, 0x1dc -/* 80163D20 00160C80 3A A1 01 E8 */ addi r21, r1, 0x1e8 -/* 80163D24 00160C84 3B 00 00 00 */ li r24, 0 -/* 80163D28 00160C88 48 00 05 0C */ b lbl_80164234 -lbl_80163D2C: -/* 80163D2C 00160C8C C0 1C 00 00 */ lfs f0, 0(r28) -/* 80163D30 00160C90 FC 00 F8 40 */ fcmpo cr0, f0, f31 -/* 80163D34 00160C94 40 80 04 E8 */ bge lbl_8016421C -/* 80163D38 00160C98 88 17 00 00 */ lbz r0, 0(r23) -/* 80163D3C 00160C9C 28 00 00 00 */ cmplwi r0, 0 -/* 80163D40 00160CA0 41 82 04 DC */ beq lbl_8016421C -/* 80163D44 00160CA4 EC 00 F0 2A */ fadds f0, f0, f30 -/* 80163D48 00160CA8 38 61 00 C8 */ addi r3, r1, 0xc8 -/* 80163D4C 00160CAC 38 81 00 BC */ addi r4, r1, 0xbc -/* 80163D50 00160CB0 D0 1C 00 00 */ stfs f0, 0(r28) -/* 80163D54 00160CB4 C1 1C 00 00 */ lfs f8, 0(r28) -/* 80163D58 00160CB8 C0 5B 00 04 */ lfs f2, 4(r27) -/* 80163D5C 00160CBC C0 3B 00 08 */ lfs f1, 8(r27) -/* 80163D60 00160CC0 EC FF 40 28 */ fsubs f7, f31, f8 -/* 80163D64 00160CC4 C0 1B 00 00 */ lfs f0, 0(r27) -/* 80163D68 00160CC8 EC A2 02 32 */ fmuls f5, f2, f8 -/* 80163D6C 00160CCC C0 DA 00 04 */ lfs f6, 4(r26) -/* 80163D70 00160CD0 EC 61 02 32 */ fmuls f3, f1, f8 -/* 80163D74 00160CD4 C0 9A 00 08 */ lfs f4, 8(r26) -/* 80163D78 00160CD8 EC 20 02 32 */ fmuls f1, f0, f8 -/* 80163D7C 00160CDC C0 5A 00 00 */ lfs f2, 0(r26) -/* 80163D80 00160CE0 EC A6 29 FA */ fmadds f5, f6, f7, f5 -/* 80163D84 00160CE4 C0 01 02 24 */ lfs f0, 0x224(r1) -/* 80163D88 00160CE8 EC 84 19 FA */ fmadds f4, f4, f7, f3 -/* 80163D8C 00160CEC C0 61 02 34 */ lfs f3, 0x234(r1) -/* 80163D90 00160CF0 EC A5 00 28 */ fsubs f5, f5, f0 -/* 80163D94 00160CF4 C0 01 02 14 */ lfs f0, 0x214(r1) -/* 80163D98 00160CF8 EC 22 09 FA */ fmadds f1, f2, f7, f1 -/* 80163D9C 00160CFC EC 44 18 28 */ fsubs f2, f4, f3 -/* 80163DA0 00160D00 D0 A1 00 C0 */ stfs f5, 0xc0(r1) -/* 80163DA4 00160D04 EC 01 00 28 */ fsubs f0, f1, f0 -/* 80163DA8 00160D08 D0 41 00 C4 */ stfs f2, 0xc4(r1) -/* 80163DAC 00160D0C D0 01 00 BC */ stfs f0, 0xbc(r1) -/* 80163DB0 00160D10 48 1B 0A A1 */ bl AsNormalized__9CVector3fCFv -/* 80163DB4 00160D14 3C 60 80 5A */ lis r3, lbl_805A6754@ha -/* 80163DB8 00160D18 C1 21 00 C8 */ lfs f9, 0xc8(r1) -/* 80163DBC 00160D1C 38 A3 67 54 */ addi r5, r3, lbl_805A6754@l -/* 80163DC0 00160D20 C1 01 00 CC */ lfs f8, 0xcc(r1) -/* 80163DC4 00160D24 C0 E1 00 D0 */ lfs f7, 0xd0(r1) -/* 80163DC8 00160D28 38 61 01 60 */ addi r3, r1, 0x160 -/* 80163DCC 00160D2C C0 02 9F E4 */ lfs f0, lbl_805ABD04@sda21(r2) -/* 80163DD0 00160D30 38 81 00 B0 */ addi r4, r1, 0xb0 -/* 80163DD4 00160D34 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80163DD8 00160D38 C0 C5 00 00 */ lfs f6, 0(r5) -/* 80163DDC 00160D3C ED 60 02 32 */ fmuls f11, f0, f8 -/* 80163DE0 00160D40 C0 BD 00 04 */ lfs f5, 4(r29) -/* 80163DE4 00160D44 ED 40 01 F2 */ fmuls f10, f0, f7 -/* 80163DE8 00160D48 C0 9D 00 08 */ lfs f4, 8(r29) -/* 80163DEC 00160D4C EC 00 02 72 */ fmuls f0, f0, f9 -/* 80163DF0 00160D50 C0 7D 00 0C */ lfs f3, 0xc(r29) -/* 80163DF4 00160D54 C0 5D 00 10 */ lfs f2, 0x10(r29) -/* 80163DF8 00160D58 C0 3D 00 14 */ lfs f1, 0x14(r29) -/* 80163DFC 00160D5C D1 21 00 E4 */ stfs f9, 0xe4(r1) -/* 80163E00 00160D60 D1 01 00 E8 */ stfs f8, 0xe8(r1) -/* 80163E04 00160D64 D0 E1 00 EC */ stfs f7, 0xec(r1) -/* 80163E08 00160D68 B0 01 00 34 */ sth r0, 0x34(r1) -/* 80163E0C 00160D6C D0 C1 01 60 */ stfs f6, 0x160(r1) -/* 80163E10 00160D70 D0 A1 01 64 */ stfs f5, 0x164(r1) -/* 80163E14 00160D74 D0 81 01 68 */ stfs f4, 0x168(r1) -/* 80163E18 00160D78 D0 61 01 6C */ stfs f3, 0x16c(r1) -/* 80163E1C 00160D7C D0 41 01 70 */ stfs f2, 0x170(r1) -/* 80163E20 00160D80 D0 21 01 74 */ stfs f1, 0x174(r1) -/* 80163E24 00160D84 C0 BE 00 60 */ lfs f5, 0x60(r30) -/* 80163E28 00160D88 C0 9E 00 50 */ lfs f4, 0x50(r30) -/* 80163E2C 00160D8C C0 3E 00 40 */ lfs f1, 0x40(r30) -/* 80163E30 00160D90 EC 45 50 2A */ fadds f2, f5, f10 -/* 80163E34 00160D94 EC 64 58 2A */ fadds f3, f4, f11 -/* 80163E38 00160D98 D0 01 00 98 */ stfs f0, 0x98(r1) -/* 80163E3C 00160D9C EC 01 00 2A */ fadds f0, f1, f0 -/* 80163E40 00160DA0 D1 61 00 9C */ stfs f11, 0x9c(r1) -/* 80163E44 00160DA4 D1 41 00 A0 */ stfs f10, 0xa0(r1) -/* 80163E48 00160DA8 D0 21 00 A4 */ stfs f1, 0xa4(r1) -/* 80163E4C 00160DAC D0 81 00 A8 */ stfs f4, 0xa8(r1) -/* 80163E50 00160DB0 D0 A1 00 AC */ stfs f5, 0xac(r1) -/* 80163E54 00160DB4 D0 01 00 B0 */ stfs f0, 0xb0(r1) -/* 80163E58 00160DB8 D0 61 00 B4 */ stfs f3, 0xb4(r1) -/* 80163E5C 00160DBC D0 41 00 B8 */ stfs f2, 0xb8(r1) -/* 80163E60 00160DC0 48 1D 3C A9 */ bl AccumulateBounds__6CAABoxFRC9CVector3f -/* 80163E64 00160DC4 C0 5E 00 60 */ lfs f2, 0x60(r30) -/* 80163E68 00160DC8 38 61 01 60 */ addi r3, r1, 0x160 -/* 80163E6C 00160DCC C0 3E 00 50 */ lfs f1, 0x50(r30) -/* 80163E70 00160DD0 38 81 00 8C */ addi r4, r1, 0x8c -/* 80163E74 00160DD4 C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 80163E78 00160DD8 D0 01 00 8C */ stfs f0, 0x8c(r1) -/* 80163E7C 00160DDC D0 21 00 90 */ stfs f1, 0x90(r1) -/* 80163E80 00160DE0 D0 41 00 94 */ stfs f2, 0x94(r1) -/* 80163E84 00160DE4 48 1D 3C 85 */ bl AccumulateBounds__6CAABoxFRC9CVector3f -/* 80163E88 00160DE8 38 00 00 00 */ li r0, 0 -/* 80163E8C 00160DEC 3C 60 80 47 */ lis r3, lbl_8046C878@ha -/* 80163E90 00160DF0 90 01 02 38 */ stw r0, 0x238(r1) -/* 80163E94 00160DF4 38 C3 C8 78 */ addi r6, r3, lbl_8046C878@l -/* 80163E98 00160DF8 7F E3 FB 78 */ mr r3, r31 -/* 80163E9C 00160DFC 38 81 02 38 */ addi r4, r1, 0x238 -/* 80163EA0 00160E00 38 A1 01 60 */ addi r5, r1, 0x160 -/* 80163EA4 00160E04 38 E0 00 00 */ li r7, 0 -/* 80163EA8 00160E08 4B EE 88 79 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" -/* 80163EAC 00160E0C C0 82 9F E8 */ lfs f4, lbl_805ABD08@sda21(r2) -/* 80163EB0 00160E10 3C 60 80 47 */ lis r3, lbl_8046C878@ha -/* 80163EB4 00160E14 C0 41 00 E8 */ lfs f2, 0xe8(r1) -/* 80163EB8 00160E18 39 03 C8 78 */ addi r8, r3, lbl_8046C878@l -/* 80163EBC 00160E1C C0 21 00 EC */ lfs f1, 0xec(r1) -/* 80163EC0 00160E20 7F E4 FB 78 */ mr r4, r31 -/* 80163EC4 00160E24 EC E4 00 B2 */ fmuls f7, f4, f2 -/* 80163EC8 00160E28 C0 61 02 24 */ lfs f3, 0x224(r1) -/* 80163ECC 00160E2C EC C4 00 72 */ fmuls f6, f4, f1 -/* 80163ED0 00160E30 C0 01 00 E4 */ lfs f0, 0xe4(r1) -/* 80163ED4 00160E34 C0 41 02 34 */ lfs f2, 0x234(r1) -/* 80163ED8 00160E38 38 61 01 78 */ addi r3, r1, 0x178 -/* 80163EDC 00160E3C EC A4 00 32 */ fmuls f5, f4, f0 -/* 80163EE0 00160E40 C0 81 02 14 */ lfs f4, 0x214(r1) -/* 80163EE4 00160E44 ED 03 38 2A */ fadds f8, f3, f7 -/* 80163EE8 00160E48 D0 E1 00 6C */ stfs f7, 0x6c(r1) -/* 80163EEC 00160E4C EC E2 30 2A */ fadds f7, f2, f6 -/* 80163EF0 00160E50 C0 22 9F EC */ lfs f1, lbl_805ABD0C@sda21(r2) -/* 80163EF4 00160E54 EC 04 28 2A */ fadds f0, f4, f5 -/* 80163EF8 00160E58 D0 A1 00 68 */ stfs f5, 0x68(r1) -/* 80163EFC 00160E5C 38 A1 00 34 */ addi r5, r1, 0x34 -/* 80163F00 00160E60 38 C1 00 80 */ addi r6, r1, 0x80 -/* 80163F04 00160E64 D0 C1 00 70 */ stfs f6, 0x70(r1) -/* 80163F08 00160E68 38 E1 00 E4 */ addi r7, r1, 0xe4 -/* 80163F0C 00160E6C D0 81 00 74 */ stfs f4, 0x74(r1) -/* 80163F10 00160E70 39 21 02 38 */ addi r9, r1, 0x238 -/* 80163F14 00160E74 D0 61 00 78 */ stfs f3, 0x78(r1) -/* 80163F18 00160E78 D0 41 00 7C */ stfs f2, 0x7c(r1) -/* 80163F1C 00160E7C D0 01 00 80 */ stfs f0, 0x80(r1) -/* 80163F20 00160E80 D1 01 00 84 */ stfs f8, 0x84(r1) -/* 80163F24 00160E84 D0 E1 00 88 */ stfs f7, 0x88(r1) -/* 80163F28 00160E88 4B EE 90 9D */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 80163F2C 00160E8C 88 81 01 98 */ lbz r4, 0x198(r1) -/* 80163F30 00160E90 C0 E1 01 78 */ lfs f7, 0x178(r1) -/* 80163F34 00160E94 C0 C1 01 7C */ lfs f6, 0x17c(r1) -/* 80163F38 00160E98 28 04 00 00 */ cmplwi r4, 0 -/* 80163F3C 00160E9C C0 A1 01 80 */ lfs f5, 0x180(r1) -/* 80163F40 00160EA0 C0 81 01 84 */ lfs f4, 0x184(r1) -/* 80163F44 00160EA4 C0 61 01 88 */ lfs f3, 0x188(r1) -/* 80163F48 00160EA8 C0 41 01 8C */ lfs f2, 0x18c(r1) -/* 80163F4C 00160EAC C0 21 01 90 */ lfs f1, 0x190(r1) -/* 80163F50 00160EB0 C0 01 01 94 */ lfs f0, 0x194(r1) -/* 80163F54 00160EB4 80 01 01 A0 */ lwz r0, 0x1a0(r1) -/* 80163F58 00160EB8 80 61 01 A4 */ lwz r3, 0x1a4(r1) -/* 80163F5C 00160EBC D0 E1 01 D8 */ stfs f7, 0x1d8(r1) -/* 80163F60 00160EC0 D0 C1 01 DC */ stfs f6, 0x1dc(r1) -/* 80163F64 00160EC4 D0 A1 01 E0 */ stfs f5, 0x1e0(r1) -/* 80163F68 00160EC8 D0 81 01 E4 */ stfs f4, 0x1e4(r1) -/* 80163F6C 00160ECC D0 61 01 E8 */ stfs f3, 0x1e8(r1) -/* 80163F70 00160ED0 D0 41 01 EC */ stfs f2, 0x1ec(r1) -/* 80163F74 00160ED4 D0 21 01 F0 */ stfs f1, 0x1f0(r1) -/* 80163F78 00160ED8 D0 01 01 F4 */ stfs f0, 0x1f4(r1) -/* 80163F7C 00160EDC 98 81 01 F8 */ stb r4, 0x1f8(r1) -/* 80163F80 00160EE0 90 61 02 04 */ stw r3, 0x204(r1) -/* 80163F84 00160EE4 90 01 02 00 */ stw r0, 0x200(r1) -/* 80163F88 00160EE8 41 82 02 3C */ beq lbl_801641C4 -/* 80163F8C 00160EEC A0 79 00 00 */ lhz r3, 0(r25) -/* 80163F90 00160EF0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80163F94 00160EF4 7C 03 00 40 */ cmplw r3, r0 -/* 80163F98 00160EF8 41 82 00 68 */ beq lbl_80164000 -/* 80163F9C 00160EFC A0 19 00 00 */ lhz r0, 0(r25) -/* 80163FA0 00160F00 7F E3 FB 78 */ mr r3, r31 -/* 80163FA4 00160F04 38 81 00 30 */ addi r4, r1, 0x30 -/* 80163FA8 00160F08 B0 01 00 30 */ sth r0, 0x30(r1) -/* 80163FAC 00160F0C 4B EE 85 C9 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80163FB0 00160F10 7C 74 1B 79 */ or. r20, r3, r3 -/* 80163FB4 00160F14 41 82 00 4C */ beq lbl_80164000 -/* 80163FB8 00160F18 38 74 00 34 */ addi r3, r20, 0x34 -/* 80163FBC 00160F1C 38 81 02 08 */ addi r4, r1, 0x208 -/* 80163FC0 00160F20 48 1A EB 81 */ bl __as__12CTransform4fFRC12CTransform4f -/* 80163FC4 00160F24 88 14 00 E4 */ lbz r0, 0xe4(r20) -/* 80163FC8 00160F28 38 E0 00 01 */ li r7, 1 -/* 80163FCC 00160F2C 50 E0 26 F6 */ rlwimi r0, r7, 4, 0x1b, 0x1b -/* 80163FD0 00160F30 7E 83 A3 78 */ mr r3, r20 -/* 80163FD4 00160F34 98 14 00 E4 */ stb r0, 0xe4(r20) -/* 80163FD8 00160F38 7F E4 FB 78 */ mr r4, r31 -/* 80163FDC 00160F3C 7E C5 B3 78 */ mr r5, r22 -/* 80163FE0 00160F40 7E A6 AB 78 */ mr r6, r21 -/* 80163FE4 00160F44 88 14 00 E4 */ lbz r0, 0xe4(r20) -/* 80163FE8 00160F48 50 E0 1F 38 */ rlwimi r0, r7, 3, 0x1c, 0x1c -/* 80163FEC 00160F4C 98 14 00 E4 */ stb r0, 0xe4(r20) -/* 80163FF0 00160F50 88 14 00 E4 */ lbz r0, 0xe4(r20) -/* 80163FF4 00160F54 50 E0 17 7A */ rlwimi r0, r7, 2, 0x1d, 0x1d -/* 80163FF8 00160F58 98 14 00 E4 */ stb r0, 0xe4(r20) -/* 80163FFC 00160F5C 48 00 37 59 */ bl sub_80167754 -lbl_80164000: -/* 80164000 00160F60 A0 01 00 34 */ lhz r0, 0x34(r1) -/* 80164004 00160F64 7F E3 FB 78 */ mr r3, r31 -/* 80164008 00160F68 38 81 00 2C */ addi r4, r1, 0x2c -/* 8016400C 00160F6C B0 01 00 2C */ sth r0, 0x2c(r1) -/* 80164010 00160F70 4B EE 85 65 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80164014 00160F74 7C 64 1B 78 */ mr r4, r3 -/* 80164018 00160F78 38 61 00 44 */ addi r3, r1, 0x44 -/* 8016401C 00160F7C 4B F4 83 79 */ bl "__ct__20TCastToPtr<7CPlayer>FP7CEntity" -/* 80164020 00160F80 82 83 00 04 */ lwz r20, 4(r3) -/* 80164024 00160F84 28 14 00 00 */ cmplwi r20, 0 -/* 80164028 00160F88 41 82 01 10 */ beq lbl_80164138 -/* 8016402C 00160F8C C0 3E 04 20 */ lfs f1, 0x420(r30) -/* 80164030 00160F90 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 80164034 00160F94 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80164038 00160F98 4C 40 13 82 */ cror 2, 0, 2 -/* 8016403C 00160F9C 40 82 00 FC */ bne lbl_80164138 -/* 80164040 00160FA0 80 AD 8C F0 */ lwz r5, lbl_805A78B0@sda21(r13) -/* 80164044 00160FA4 38 60 00 00 */ li r3, 0 -/* 80164048 00160FA8 38 80 00 01 */ li r4, 1 -/* 8016404C 00160FAC 48 22 5E A9 */ bl __shl2i -/* 80164050 00160FB0 38 A0 00 00 */ li r5, 0 -/* 80164054 00160FB4 38 00 00 03 */ li r0, 3 -/* 80164058 00160FB8 90 81 01 14 */ stw r4, 0x114(r1) -/* 8016405C 00160FBC 7F C4 F3 78 */ mr r4, r30 -/* 80164060 00160FC0 90 61 01 10 */ stw r3, 0x110(r1) -/* 80164064 00160FC4 38 61 01 28 */ addi r3, r1, 0x128 -/* 80164068 00160FC8 90 A1 01 1C */ stw r5, 0x11c(r1) -/* 8016406C 00160FCC 90 A1 01 18 */ stw r5, 0x118(r1) -/* 80164070 00160FD0 90 01 01 20 */ stw r0, 0x120(r1) -/* 80164074 00160FD4 A0 1E 00 08 */ lhz r0, 8(r30) -/* 80164078 00160FD8 B0 01 00 18 */ sth r0, 0x18(r1) -/* 8016407C 00160FDC A0 B4 00 08 */ lhz r5, 8(r20) -/* 80164080 00160FE0 B0 01 00 14 */ sth r0, 0x14(r1) -/* 80164084 00160FE4 B0 A1 00 20 */ sth r5, 0x20(r1) -/* 80164088 00160FE8 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8016408C 00160FEC B0 A1 00 1C */ sth r5, 0x1c(r1) -/* 80164090 00160FF0 B0 01 00 28 */ sth r0, 0x28(r1) -/* 80164094 00160FF4 81 9E 00 00 */ lwz r12, 0(r30) -/* 80164098 00160FF8 B0 01 00 24 */ sth r0, 0x24(r1) -/* 8016409C 00160FFC 81 8C 02 B0 */ lwz r12, 0x2b0(r12) -/* 801640A0 00161000 7D 89 03 A6 */ mtctr r12 -/* 801640A4 00161004 4E 80 04 21 */ bctrl -/* 801640A8 00161008 3C 80 80 5A */ lis r4, skZero3f@ha -/* 801640AC 0016100C 7F E3 FB 78 */ mr r3, r31 -/* 801640B0 00161010 39 24 66 A0 */ addi r9, r4, skZero3f@l -/* 801640B4 00161014 38 A1 00 20 */ addi r5, r1, 0x20 -/* 801640B8 00161018 38 81 00 28 */ addi r4, r1, 0x28 -/* 801640BC 0016101C 38 C1 00 18 */ addi r6, r1, 0x18 -/* 801640C0 00161020 38 E1 01 28 */ addi r7, r1, 0x128 -/* 801640C4 00161024 39 01 01 10 */ addi r8, r1, 0x110 -/* 801640C8 00161028 4B EE 5F D9 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f -/* 801640CC 0016102C C0 1E 04 24 */ lfs f0, 0x424(r30) -/* 801640D0 00161030 38 81 00 10 */ addi r4, r1, 0x10 -/* 801640D4 00161034 C0 22 9F F0 */ lfs f1, lbl_805ABD10@sda21(r2) -/* 801640D8 00161038 D0 1E 04 20 */ stfs f0, 0x420(r30) -/* 801640DC 0016103C C0 42 9F 7C */ lfs f2, lbl_805ABC9C@sda21(r2) -/* 801640E0 00161040 A0 1E 00 08 */ lhz r0, 8(r30) -/* 801640E4 00161044 B0 01 00 10 */ sth r0, 0x10(r1) -/* 801640E8 00161048 80 7F 08 B8 */ lwz r3, 0x8b8(r31) -/* 801640EC 0016104C B0 01 00 0C */ sth r0, 0xc(r1) -/* 801640F0 00161050 80 63 00 00 */ lwz r3, 0(r3) -/* 801640F4 00161054 38 63 01 88 */ addi r3, r3, 0x188 -/* 801640F8 00161058 48 05 CA 41 */ bl AddSource__19CStaticInterferenceF9TUniqueId -/* 801640FC 0016105C C0 22 9F 80 */ lfs f1, lbl_805ABCA0@sda21(r2) -/* 80164100 00161060 7E C5 B3 78 */ mr r5, r22 -/* 80164104 00161064 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 80164108 00161068 38 61 00 38 */ addi r3, r1, 0x38 -/* 8016410C 0016106C D0 3E 06 28 */ stfs f1, 0x628(r30) -/* 80164110 00161070 38 C1 00 5C */ addi r6, r1, 0x5c -/* 80164114 00161074 A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) -/* 80164118 00161078 38 E0 00 01 */ li r7, 1 -/* 8016411C 0016107C 81 5E 00 04 */ lwz r10, 4(r30) -/* 80164120 00161080 39 00 00 00 */ li r8, 0 -/* 80164124 00161084 D0 01 00 5C */ stfs f0, 0x5c(r1) -/* 80164128 00161088 D0 01 00 60 */ stfs f0, 0x60(r1) -/* 8016412C 0016108C D0 01 00 64 */ stfs f0, 0x64(r1) -/* 80164130 00161090 A0 9E 07 CC */ lhz r4, 0x7cc(r30) -/* 80164134 00161094 48 18 61 7D */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi -lbl_80164138: -/* 80164138 00161098 A0 61 00 34 */ lhz r3, 0x34(r1) -/* 8016413C 0016109C A0 1E 00 08 */ lhz r0, 8(r30) -/* 80164140 001610A0 7C 03 00 40 */ cmplw r3, r0 -/* 80164144 001610A4 41 82 00 80 */ beq lbl_801641C4 -/* 80164148 001610A8 A0 01 00 34 */ lhz r0, 0x34(r1) -/* 8016414C 001610AC 7F E3 FB 78 */ mr r3, r31 -/* 80164150 001610B0 38 81 00 08 */ addi r4, r1, 8 -/* 80164154 001610B4 B0 01 00 08 */ sth r0, 8(r1) -/* 80164158 001610B8 4B EE 84 1D */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8016415C 001610BC 7C 64 1B 78 */ mr r4, r3 -/* 80164160 001610C0 38 61 00 3C */ addi r3, r1, 0x3c -/* 80164164 001610C4 4B F4 88 F9 */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" -/* 80164168 001610C8 80 03 00 04 */ lwz r0, 4(r3) -/* 8016416C 001610CC 28 00 00 00 */ cmplwi r0, 0 -/* 80164170 001610D0 41 82 00 54 */ beq lbl_801641C4 -/* 80164174 001610D4 88 1E 08 34 */ lbz r0, 0x834(r30) -/* 80164178 001610D8 38 60 00 01 */ li r3, 1 -/* 8016417C 001610DC 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f -/* 80164180 001610E0 3C 60 80 3D */ lis r3, lbl_803D0398@ha -/* 80164184 001610E4 38 83 03 98 */ addi r4, r3, lbl_803D0398@l -/* 80164188 001610E8 98 1E 08 34 */ stb r0, 0x834(r30) -/* 8016418C 001610EC 38 61 00 4C */ addi r3, r1, 0x4c -/* 80164190 001610F0 38 84 00 42 */ addi r4, r4, 0x42 -/* 80164194 001610F4 4B EA 0B 25 */ bl string_l__4rstlFPCc -/* 80164198 001610F8 80 7E 00 64 */ lwz r3, 0x64(r30) -/* 8016419C 001610FC 38 81 00 4C */ addi r4, r1, 0x4c -/* 801641A0 00161100 80 63 00 10 */ lwz r3, 0x10(r3) -/* 801641A4 00161104 4B EC 82 C9 */ bl "GetAnimTimeRemaining__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 801641A8 00161108 7F C4 F3 78 */ mr r4, r30 -/* 801641AC 0016110C 7F E5 FB 78 */ mr r5, r31 -/* 801641B0 00161110 38 61 00 F0 */ addi r3, r1, 0xf0 -/* 801641B4 00161114 38 C0 00 01 */ li r6, 1 -/* 801641B8 00161118 4B EF 10 E5 */ bl UpdateAnimation__6CActorFfR13CStateManagerb -/* 801641BC 0016111C 38 61 00 4C */ addi r3, r1, 0x4c -/* 801641C0 00161120 48 1D 99 21 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -lbl_801641C4: -/* 801641C4 00161124 80 A1 02 38 */ lwz r5, 0x238(r1) -/* 801641C8 00161128 38 60 00 00 */ li r3, 0 -/* 801641CC 0016112C 2C 05 00 00 */ cmpwi r5, 0 -/* 801641D0 00161130 40 81 00 44 */ ble lbl_80164214 -/* 801641D4 00161134 2C 05 00 08 */ cmpwi r5, 8 -/* 801641D8 00161138 38 85 FF F8 */ addi r4, r5, -8 -/* 801641DC 0016113C 40 81 00 20 */ ble lbl_801641FC -/* 801641E0 00161140 38 04 00 07 */ addi r0, r4, 7 -/* 801641E4 00161144 54 00 E8 FE */ srwi r0, r0, 3 -/* 801641E8 00161148 7C 09 03 A6 */ mtctr r0 -/* 801641EC 0016114C 2C 04 00 00 */ cmpwi r4, 0 -/* 801641F0 00161150 40 81 00 0C */ ble lbl_801641FC -lbl_801641F4: -/* 801641F4 00161154 38 63 00 08 */ addi r3, r3, 8 -/* 801641F8 00161158 42 00 FF FC */ bdnz lbl_801641F4 -lbl_801641FC: -/* 801641FC 0016115C 7C 03 28 50 */ subf r0, r3, r5 -/* 80164200 00161160 7C 09 03 A6 */ mtctr r0 -/* 80164204 00161164 7C 03 28 00 */ cmpw r3, r5 -/* 80164208 00161168 40 80 00 0C */ bge lbl_80164214 -lbl_8016420C: -/* 8016420C 0016116C 38 63 00 01 */ addi r3, r3, 1 -/* 80164210 00161170 42 00 FF FC */ bdnz lbl_8016420C -lbl_80164214: -/* 80164214 00161174 38 00 00 00 */ li r0, 0 -/* 80164218 00161178 90 01 02 38 */ stw r0, 0x238(r1) -lbl_8016421C: -/* 8016421C 0016117C 3B 9C 00 04 */ addi r28, r28, 4 -/* 80164220 00161180 3A F7 00 01 */ addi r23, r23, 1 -/* 80164224 00161184 3B 7B 00 0C */ addi r27, r27, 0xc -/* 80164228 00161188 3B 5A 00 0C */ addi r26, r26, 0xc -/* 8016422C 0016118C 3B 39 00 02 */ addi r25, r25, 2 -/* 80164230 00161190 3B 18 00 01 */ addi r24, r24, 1 -lbl_80164234: -/* 80164234 00161194 80 1E 08 18 */ lwz r0, 0x818(r30) -/* 80164238 00161198 7C 18 00 00 */ cmpw r24, r0 -/* 8016423C 0016119C 41 80 FA F0 */ blt lbl_80163D2C -/* 80164240 001611A0 E3 E1 0A 88 */ psq_l f31, -1400(r1), 0, qr0 -/* 80164244 001611A4 CB E1 0A 80 */ lfd f31, 0xa80(r1) -/* 80164248 001611A8 E3 C1 0A 78 */ psq_l f30, -1416(r1), 0, qr0 -/* 8016424C 001611AC CB C1 0A 70 */ lfd f30, 0xa70(r1) -/* 80164250 001611B0 BA 81 0A 40 */ lmw r20, 0xa40(r1) -/* 80164254 001611B4 80 01 0A 94 */ lwz r0, 0xa94(r1) -/* 80164258 001611B8 7C 08 03 A6 */ mtlr r0 -/* 8016425C 001611BC 38 21 0A 90 */ addi r1, r1, 0xa90 -/* 80164260 001611C0 4E 80 00 20 */ blr - -.global sub_80164264 -sub_80164264: -/* 80164264 001611C4 94 21 F6 70 */ stwu r1, -0x990(r1) -/* 80164268 001611C8 7C 08 02 A6 */ mflr r0 -/* 8016426C 001611CC 90 01 09 94 */ stw r0, 0x994(r1) -/* 80164270 001611D0 DB E1 09 80 */ stfd f31, 0x980(r1) -/* 80164274 001611D4 F3 E1 09 88 */ psq_st f31, -1656(r1), 0, qr0 -/* 80164278 001611D8 93 E1 09 7C */ stw r31, 0x97c(r1) -/* 8016427C 001611DC 93 C1 09 78 */ stw r30, 0x978(r1) -/* 80164280 001611E0 93 A1 09 74 */ stw r29, 0x974(r1) -/* 80164284 001611E4 93 81 09 70 */ stw r28, 0x970(r1) -/* 80164288 001611E8 7C 7E 1B 78 */ mr r30, r3 -/* 8016428C 001611EC C0 62 9F F4 */ lfs f3, lbl_805ABD14@sda21(r2) -/* 80164290 001611F0 C0 43 05 D4 */ lfs f2, 0x5d4(r3) -/* 80164294 001611F4 7C 9F 23 78 */ mr r31, r4 -/* 80164298 001611F8 C0 02 9F F8 */ lfs f0, lbl_805ABD18@sda21(r2) -/* 8016429C 001611FC EC 23 10 7A */ fmadds f1, f3, f1, f2 -/* 801642A0 00161200 D0 23 05 D4 */ stfs f1, 0x5d4(r3) -/* 801642A4 00161204 C0 23 05 D4 */ lfs f1, 0x5d4(r3) -/* 801642A8 00161208 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801642AC 0016120C 40 81 00 0C */ ble lbl_801642B8 -/* 801642B0 00161210 EC 01 00 28 */ fsubs f0, f1, f0 -/* 801642B4 00161214 D0 1E 05 D4 */ stfs f0, 0x5d4(r30) -lbl_801642B8: -/* 801642B8 00161218 C0 3E 05 D4 */ lfs f1, 0x5d4(r30) -/* 801642BC 0016121C C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 801642C0 00161220 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801642C4 00161224 40 80 00 08 */ bge lbl_801642CC -/* 801642C8 00161228 D0 1E 05 D4 */ stfs f0, 0x5d4(r30) -lbl_801642CC: -/* 801642CC 0016122C C0 3E 05 D8 */ lfs f1, 0x5d8(r30) -/* 801642D0 00161230 C0 02 9F F8 */ lfs f0, lbl_805ABD18@sda21(r2) -/* 801642D4 00161234 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801642D8 00161238 40 81 00 0C */ ble lbl_801642E4 -/* 801642DC 0016123C EC 01 00 28 */ fsubs f0, f1, f0 -/* 801642E0 00161240 D0 1E 05 D8 */ stfs f0, 0x5d8(r30) -lbl_801642E4: -/* 801642E4 00161244 C0 3E 05 D8 */ lfs f1, 0x5d8(r30) -/* 801642E8 00161248 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 801642EC 0016124C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801642F0 00161250 40 80 00 08 */ bge lbl_801642F8 -/* 801642F4 00161254 D0 1E 05 D8 */ stfs f0, 0x5d8(r30) -lbl_801642F8: -/* 801642F8 00161258 C0 3E 05 D4 */ lfs f1, 0x5d4(r30) -/* 801642FC 0016125C 48 1B 0A F5 */ bl FastSinR__5CMathFf -/* 80164300 00161260 C0 42 9F 7C */ lfs f2, lbl_805ABC9C@sda21(r2) -/* 80164304 00161264 38 81 00 14 */ addi r4, r1, 0x14 -/* 80164308 00161268 C0 02 9F 80 */ lfs f0, lbl_805ABCA0@sda21(r2) -/* 8016430C 0016126C 38 6D 8D 34 */ addi r3, r13, lbl_805A78F4@sda21 -/* 80164310 00161270 EC 22 08 2A */ fadds f1, f2, f1 -/* 80164314 00161274 38 AD 8D 38 */ addi r5, r13, lbl_805A78F8@sda21 -/* 80164318 00161278 EC 00 00 72 */ fmuls f0, f0, f1 -/* 8016431C 0016127C D0 01 00 14 */ stfs f0, 0x14(r1) -/* 80164320 00161280 4B EA 7F 95 */ bl "Clamp__5CMathFRCfRCfRCf" -/* 80164324 00161284 C0 23 00 00 */ lfs f1, 0(r3) -/* 80164328 00161288 3C 00 7F 80 */ lis r0, 0x7f80 -/* 8016432C 0016128C D0 21 00 10 */ stfs f1, 0x10(r1) -/* 80164330 00161290 80 81 00 10 */ lwz r4, 0x10(r1) -/* 80164334 00161294 54 83 00 50 */ rlwinm r3, r4, 0, 1, 8 -/* 80164338 00161298 7C 03 00 00 */ cmpw r3, r0 -/* 8016433C 0016129C 41 82 00 34 */ beq lbl_80164370 -/* 80164340 001612A0 40 80 00 28 */ bge lbl_80164368 -/* 80164344 001612A4 2C 03 00 00 */ cmpwi r3, 0 -/* 80164348 001612A8 41 82 00 08 */ beq lbl_80164350 -/* 8016434C 001612AC 48 00 00 1C */ b lbl_80164368 -lbl_80164350: -/* 80164350 001612B0 54 80 02 7F */ clrlwi. r0, r4, 9 -/* 80164354 001612B4 41 82 00 0C */ beq lbl_80164360 -/* 80164358 001612B8 38 00 00 02 */ li r0, 2 -/* 8016435C 001612BC 48 00 00 28 */ b lbl_80164384 -lbl_80164360: -/* 80164360 001612C0 38 00 00 03 */ li r0, 3 -/* 80164364 001612C4 48 00 00 20 */ b lbl_80164384 -lbl_80164368: -/* 80164368 001612C8 38 00 00 04 */ li r0, 4 -/* 8016436C 001612CC 48 00 00 18 */ b lbl_80164384 -lbl_80164370: -/* 80164370 001612D0 54 80 02 7F */ clrlwi. r0, r4, 9 -/* 80164374 001612D4 41 82 00 0C */ beq lbl_80164380 -/* 80164378 001612D8 38 00 00 00 */ li r0, 0 -/* 8016437C 001612DC 48 00 00 08 */ b lbl_80164384 -lbl_80164380: -/* 80164380 001612E0 38 00 00 01 */ li r0, 1 -lbl_80164384: -/* 80164384 001612E4 2C 00 00 02 */ cmpwi r0, 2 -/* 80164388 001612E8 41 82 00 1C */ beq lbl_801643A4 -/* 8016438C 001612EC C0 42 A0 00 */ lfs f2, lbl_805ABD20@sda21(r2) -/* 80164390 001612F0 48 1B 0F 9D */ bl PowF__5CMathFff -/* 80164394 001612F4 C0 42 9F FC */ lfs f2, lbl_805ABD1C@sda21(r2) -/* 80164398 001612F8 C0 1E 05 D8 */ lfs f0, 0x5d8(r30) -/* 8016439C 001612FC EC 02 00 7A */ fmadds f0, f2, f1, f0 -/* 801643A0 00161300 D0 1E 05 D8 */ stfs f0, 0x5d8(r30) -lbl_801643A4: -/* 801643A4 00161304 C0 3E 05 D8 */ lfs f1, 0x5d8(r30) -/* 801643A8 00161308 48 1B 09 9D */ bl FastCosR__5CMathFf -/* 801643AC 0016130C C0 62 9F 80 */ lfs f3, lbl_805ABCA0@sda21(r2) -/* 801643B0 00161310 C0 42 A0 04 */ lfs f2, lbl_805ABD24@sda21(r2) -/* 801643B4 00161314 C0 1E 05 D8 */ lfs f0, 0x5d8(r30) -/* 801643B8 00161318 EF E3 00 72 */ fmuls f31, f3, f1 -/* 801643BC 0016131C EC 22 00 32 */ fmuls f1, f2, f0 -/* 801643C0 00161320 48 1B 0A 31 */ bl FastSinR__5CMathFf -/* 801643C4 00161324 C0 42 9F 80 */ lfs f2, lbl_805ABCA0@sda21(r2) -/* 801643C8 00161328 38 61 00 54 */ addi r3, r1, 0x54 -/* 801643CC 0016132C C0 02 9F 7C */ lfs f0, lbl_805ABC9C@sda21(r2) -/* 801643D0 00161330 38 81 00 78 */ addi r4, r1, 0x78 -/* 801643D4 00161334 EC 22 00 72 */ fmuls f1, f2, f1 -/* 801643D8 00161338 D3 E1 00 78 */ stfs f31, 0x78(r1) -/* 801643DC 0016133C D0 01 00 7C */ stfs f0, 0x7c(r1) -/* 801643E0 00161340 D0 21 00 80 */ stfs f1, 0x80(r1) -/* 801643E4 00161344 48 1B 04 6D */ bl AsNormalized__9CVector3fCFv -/* 801643E8 00161348 38 61 00 60 */ addi r3, r1, 0x60 -/* 801643EC 0016134C 38 9E 00 34 */ addi r4, r30, 0x34 -/* 801643F0 00161350 38 A1 00 54 */ addi r5, r1, 0x54 -/* 801643F4 00161354 48 1A E6 8D */ bl Rotate__12CTransform4fCFRC9CVector3f -/* 801643F8 00161358 88 0D A4 21 */ lbz r0, lbl_805A8FE1@sda21(r13) -/* 801643FC 0016135C C0 41 00 60 */ lfs f2, 0x60(r1) -/* 80164400 00161360 C0 21 00 64 */ lfs f1, 0x64(r1) -/* 80164404 00161364 7C 00 07 75 */ extsb. r0, r0 -/* 80164408 00161368 C0 01 00 68 */ lfs f0, 0x68(r1) -/* 8016440C 0016136C D0 41 00 6C */ stfs f2, 0x6c(r1) -/* 80164410 00161370 D0 21 00 70 */ stfs f1, 0x70(r1) -/* 80164414 00161374 D0 01 00 74 */ stfs f0, 0x74(r1) -/* 80164418 00161378 40 82 00 58 */ bne lbl_80164470 -/* 8016441C 0016137C 80 AD 8D 40 */ lwz r5, lbl_805A7900@sda21(r13) -/* 80164420 00161380 38 60 00 00 */ li r3, 0 -/* 80164424 00161384 38 80 00 01 */ li r4, 1 -/* 80164428 00161388 48 22 5A CD */ bl __shl2i -/* 8016442C 0016138C 80 AD 8D 3C */ lwz r5, lbl_805A78FC@sda21(r13) -/* 80164430 00161390 7C 9C 23 78 */ mr r28, r4 -/* 80164434 00161394 7C 7D 1B 78 */ mr r29, r3 -/* 80164438 00161398 38 60 00 00 */ li r3, 0 -/* 8016443C 0016139C 38 80 00 01 */ li r4, 1 -/* 80164440 001613A0 48 22 5A B5 */ bl __shl2i -/* 80164444 001613A4 3C A0 80 47 */ lis r5, lbl_8046C860@ha -/* 80164448 001613A8 38 C0 00 03 */ li r6, 3 -/* 8016444C 001613AC 38 A5 C8 60 */ addi r5, r5, lbl_8046C860@l -/* 80164450 001613B0 38 00 00 01 */ li r0, 1 -/* 80164454 001613B4 90 C1 00 98 */ stw r6, 0x98(r1) -/* 80164458 001613B8 90 85 00 04 */ stw r4, 4(r5) -/* 8016445C 001613BC 90 65 00 00 */ stw r3, 0(r5) -/* 80164460 001613C0 93 85 00 0C */ stw r28, 0xc(r5) -/* 80164464 001613C4 93 A5 00 08 */ stw r29, 8(r5) -/* 80164468 001613C8 90 C5 00 10 */ stw r6, 0x10(r5) -/* 8016446C 001613CC 98 0D A4 21 */ stb r0, lbl_805A8FE1@sda21(r13) -lbl_80164470: -/* 80164470 001613D0 80 8D 8C F4 */ lwz r4, lbl_805A78B4@sda21(r13) -/* 80164474 001613D4 38 61 00 44 */ addi r3, r1, 0x44 -/* 80164478 001613D8 4B EA 08 41 */ bl string_l__4rstlFPCc -/* 8016447C 001613DC 7F C4 F3 78 */ mr r4, r30 -/* 80164480 001613E0 38 61 00 D0 */ addi r3, r1, 0xd0 -/* 80164484 001613E4 38 A1 00 44 */ addi r5, r1, 0x44 -/* 80164488 001613E8 4B F1 44 F1 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8016448C 001613EC 38 61 01 30 */ addi r3, r1, 0x130 -/* 80164490 001613F0 38 81 00 D0 */ addi r4, r1, 0xd0 -/* 80164494 001613F4 48 1A E6 E1 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80164498 001613F8 38 61 00 44 */ addi r3, r1, 0x44 -/* 8016449C 001613FC 48 1D 96 45 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 801644A0 00161400 A0 6D A3 8C */ lhz r3, lbl_805A8F4C@sda21(r13) -/* 801644A4 00161404 38 00 00 00 */ li r0, 0 -/* 801644A8 00161408 90 01 01 60 */ stw r0, 0x160(r1) -/* 801644AC 0016140C 54 00 08 3C */ slwi r0, r0, 1 -/* 801644B0 00161410 38 81 01 64 */ addi r4, r1, 0x164 -/* 801644B4 00161414 B0 61 00 0C */ sth r3, 0xc(r1) -/* 801644B8 00161418 7C 84 02 15 */ add. r4, r4, r0 -/* 801644BC 0016141C 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 801644C0 00161420 A0 03 00 08 */ lhz r0, 8(r3) -/* 801644C4 00161424 41 82 00 08 */ beq lbl_801644CC -/* 801644C8 00161428 B0 04 00 00 */ sth r0, 0(r4) -lbl_801644CC: -/* 801644CC 0016142C C0 82 9F 8C */ lfs f4, lbl_805ABCAC@sda21(r2) -/* 801644D0 00161430 3C 60 80 47 */ lis r3, lbl_8046C860@ha -/* 801644D4 00161434 C0 41 00 70 */ lfs f2, 0x70(r1) -/* 801644D8 00161438 39 03 C8 60 */ addi r8, r3, lbl_8046C860@l -/* 801644DC 0016143C C0 21 00 74 */ lfs f1, 0x74(r1) -/* 801644E0 00161440 7F E4 FB 78 */ mr r4, r31 -/* 801644E4 00161444 EC C4 00 B2 */ fmuls f6, f4, f2 -/* 801644E8 00161448 C0 61 01 4C */ lfs f3, 0x14c(r1) -/* 801644EC 0016144C EC A4 00 72 */ fmuls f5, f4, f1 -/* 801644F0 00161450 C0 41 01 5C */ lfs f2, 0x15c(r1) -/* 801644F4 00161454 C0 01 00 6C */ lfs f0, 0x6c(r1) -/* 801644F8 00161458 38 A1 00 0C */ addi r5, r1, 0xc -/* 801644FC 0016145C EC 04 00 32 */ fmuls f0, f4, f0 -/* 80164500 00161460 C0 81 01 3C */ lfs f4, 0x13c(r1) -/* 80164504 00161464 ED 03 30 2A */ fadds f8, f3, f6 -/* 80164508 00161468 80 61 01 60 */ lwz r3, 0x160(r1) -/* 8016450C 0016146C EC E2 28 2A */ fadds f7, f2, f5 -/* 80164510 00161470 C0 22 9F EC */ lfs f1, lbl_805ABD0C@sda21(r2) -/* 80164514 00161474 38 03 00 01 */ addi r0, r3, 1 -/* 80164518 00161478 D0 01 00 20 */ stfs f0, 0x20(r1) -/* 8016451C 0016147C EC 04 00 2A */ fadds f0, f4, f0 -/* 80164520 00161480 38 61 00 A0 */ addi r3, r1, 0xa0 -/* 80164524 00161484 90 01 01 60 */ stw r0, 0x160(r1) -/* 80164528 00161488 38 C1 00 38 */ addi r6, r1, 0x38 -/* 8016452C 0016148C 38 E1 00 6C */ addi r7, r1, 0x6c -/* 80164530 00161490 39 21 01 60 */ addi r9, r1, 0x160 -/* 80164534 00161494 D0 C1 00 24 */ stfs f6, 0x24(r1) -/* 80164538 00161498 D0 A1 00 28 */ stfs f5, 0x28(r1) -/* 8016453C 0016149C D0 81 00 2C */ stfs f4, 0x2c(r1) -/* 80164540 001614A0 D0 61 00 30 */ stfs f3, 0x30(r1) -/* 80164544 001614A4 D0 41 00 34 */ stfs f2, 0x34(r1) -/* 80164548 001614A8 D0 01 00 38 */ stfs f0, 0x38(r1) -/* 8016454C 001614AC D1 01 00 3C */ stfs f8, 0x3c(r1) -/* 80164550 001614B0 D0 E1 00 40 */ stfs f7, 0x40(r1) -/* 80164554 001614B4 4B EE 8A 71 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 80164558 001614B8 88 81 00 C0 */ lbz r4, 0xc0(r1) -/* 8016455C 001614BC 3B 81 01 04 */ addi r28, r1, 0x104 -/* 80164560 001614C0 C0 E1 00 A0 */ lfs f7, 0xa0(r1) -/* 80164564 001614C4 C0 C1 00 A4 */ lfs f6, 0xa4(r1) -/* 80164568 001614C8 28 04 00 00 */ cmplwi r4, 0 -/* 8016456C 001614CC C0 A1 00 A8 */ lfs f5, 0xa8(r1) -/* 80164570 001614D0 C0 81 00 AC */ lfs f4, 0xac(r1) -/* 80164574 001614D4 C0 61 00 B0 */ lfs f3, 0xb0(r1) -/* 80164578 001614D8 C0 41 00 B4 */ lfs f2, 0xb4(r1) -/* 8016457C 001614DC C0 21 00 B8 */ lfs f1, 0xb8(r1) -/* 80164580 001614E0 C0 01 00 BC */ lfs f0, 0xbc(r1) -/* 80164584 001614E4 80 01 00 C8 */ lwz r0, 0xc8(r1) -/* 80164588 001614E8 80 61 00 CC */ lwz r3, 0xcc(r1) -/* 8016458C 001614EC D0 E1 01 00 */ stfs f7, 0x100(r1) -/* 80164590 001614F0 D0 C1 01 04 */ stfs f6, 0x104(r1) -/* 80164594 001614F4 D0 A1 01 08 */ stfs f5, 0x108(r1) -/* 80164598 001614F8 D0 81 01 0C */ stfs f4, 0x10c(r1) -/* 8016459C 001614FC D0 61 01 10 */ stfs f3, 0x110(r1) -/* 801645A0 00161500 D0 41 01 14 */ stfs f2, 0x114(r1) -/* 801645A4 00161504 D0 21 01 18 */ stfs f1, 0x118(r1) -/* 801645A8 00161508 D0 01 01 1C */ stfs f0, 0x11c(r1) -/* 801645AC 0016150C 98 81 01 20 */ stb r4, 0x120(r1) -/* 801645B0 00161510 90 61 01 2C */ stw r3, 0x12c(r1) -/* 801645B4 00161514 90 01 01 28 */ stw r0, 0x128(r1) -/* 801645B8 00161518 41 82 00 60 */ beq lbl_80164618 -/* 801645BC 0016151C A0 7E 05 78 */ lhz r3, 0x578(r30) -/* 801645C0 00161520 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 801645C4 00161524 7C 03 00 40 */ cmplw r3, r0 -/* 801645C8 00161528 41 82 00 50 */ beq lbl_80164618 -/* 801645CC 0016152C A0 1E 05 78 */ lhz r0, 0x578(r30) -/* 801645D0 00161530 7F E3 FB 78 */ mr r3, r31 -/* 801645D4 00161534 38 81 00 08 */ addi r4, r1, 8 -/* 801645D8 00161538 B0 01 00 08 */ sth r0, 8(r1) -/* 801645DC 0016153C 4B EE 7F 99 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 801645E0 00161540 7C 64 1B 78 */ mr r4, r3 -/* 801645E4 00161544 38 61 00 18 */ addi r3, r1, 0x18 -/* 801645E8 00161548 4B F4 94 9D */ bl "__ct__24TCastToPtr<10CGameLight>FP7CEntity" -/* 801645EC 0016154C 80 63 00 04 */ lwz r3, 4(r3) -/* 801645F0 00161550 28 03 00 00 */ cmplwi r3, 0 -/* 801645F4 00161554 41 82 00 24 */ beq lbl_80164618 -/* 801645F8 00161558 7F 84 E3 78 */ mr r4, r28 -/* 801645FC 0016155C 4B EE E8 91 */ bl SetTranslation__6CActorFRC9CVector3f -/* 80164600 00161560 C0 01 01 04 */ lfs f0, 0x104(r1) -/* 80164604 00161564 D0 1E 07 AC */ stfs f0, 0x7ac(r30) -/* 80164608 00161568 C0 01 01 08 */ lfs f0, 0x108(r1) -/* 8016460C 0016156C D0 1E 07 B0 */ stfs f0, 0x7b0(r30) -/* 80164610 00161570 C0 01 01 0C */ lfs f0, 0x10c(r1) -/* 80164614 00161574 D0 1E 07 B4 */ stfs f0, 0x7b4(r30) -lbl_80164618: -/* 80164618 00161578 80 A1 01 60 */ lwz r5, 0x160(r1) -/* 8016461C 0016157C 38 60 00 00 */ li r3, 0 -/* 80164620 00161580 2C 05 00 00 */ cmpwi r5, 0 -/* 80164624 00161584 40 81 00 40 */ ble lbl_80164664 -/* 80164628 00161588 2C 05 00 08 */ cmpwi r5, 8 -/* 8016462C 0016158C 38 85 FF F8 */ addi r4, r5, -8 -/* 80164630 00161590 40 81 00 20 */ ble lbl_80164650 -/* 80164634 00161594 38 04 00 07 */ addi r0, r4, 7 -/* 80164638 00161598 54 00 E8 FE */ srwi r0, r0, 3 -/* 8016463C 0016159C 7C 09 03 A6 */ mtctr r0 -/* 80164640 001615A0 2C 04 00 00 */ cmpwi r4, 0 -/* 80164644 001615A4 40 81 00 0C */ ble lbl_80164650 -lbl_80164648: -/* 80164648 001615A8 38 63 00 08 */ addi r3, r3, 8 -/* 8016464C 001615AC 42 00 FF FC */ bdnz lbl_80164648 -lbl_80164650: -/* 80164650 001615B0 7C 03 28 50 */ subf r0, r3, r5 -/* 80164654 001615B4 7C 09 03 A6 */ mtctr r0 -/* 80164658 001615B8 7C 03 28 00 */ cmpw r3, r5 -/* 8016465C 001615BC 40 80 00 08 */ bge lbl_80164664 -lbl_80164660: -/* 80164660 001615C0 42 00 00 00 */ bdnz lbl_80164660 -lbl_80164664: -/* 80164664 001615C4 38 00 00 00 */ li r0, 0 -/* 80164668 001615C8 90 01 01 60 */ stw r0, 0x160(r1) -/* 8016466C 001615CC E3 E1 09 88 */ psq_l f31, -1656(r1), 0, qr0 -/* 80164670 001615D0 80 01 09 94 */ lwz r0, 0x994(r1) -/* 80164674 001615D4 CB E1 09 80 */ lfd f31, 0x980(r1) -/* 80164678 001615D8 83 E1 09 7C */ lwz r31, 0x97c(r1) -/* 8016467C 001615DC 83 C1 09 78 */ lwz r30, 0x978(r1) -/* 80164680 001615E0 83 A1 09 74 */ lwz r29, 0x974(r1) -/* 80164684 001615E4 83 81 09 70 */ lwz r28, 0x970(r1) -/* 80164688 001615E8 7C 08 03 A6 */ mtlr r0 -/* 8016468C 001615EC 38 21 09 90 */ addi r1, r1, 0x990 -/* 80164690 001615F0 4E 80 00 20 */ blr - -.global GetCollisionPrimitive__6CDroneCFv -GetCollisionPrimitive__6CDroneCFv: -/* 80164694 001615F4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80164698 001615F8 7C 08 02 A6 */ mflr r0 -/* 8016469C 001615FC 90 01 00 14 */ stw r0, 0x14(r1) -/* 801646A0 00161600 88 03 08 34 */ lbz r0, 0x834(r3) -/* 801646A4 00161604 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f -/* 801646A8 00161608 41 82 00 0C */ beq lbl_801646B4 -/* 801646AC 0016160C 4B FB 63 A9 */ bl GetCollisionPrimitive__13CPhysicsActorCFv -/* 801646B0 00161610 48 00 00 08 */ b lbl_801646B8 -lbl_801646B4: -/* 801646B4 00161614 38 63 06 90 */ addi r3, r3, 0x690 -lbl_801646B8: -/* 801646B8 00161618 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801646BC 0016161C 7C 08 03 A6 */ mtlr r0 -/* 801646C0 00161620 38 21 00 10 */ addi r1, r1, 0x10 -/* 801646C4 00161624 4E 80 00 20 */ blr - -.global Patrol__6CDroneFR13CStateManager9EStateMsgf -Patrol__6CDroneFR13CStateManager9EStateMsgf: -/* 801646C8 00161628 94 21 F7 90 */ stwu r1, -0x870(r1) -/* 801646CC 0016162C 7C 08 02 A6 */ mflr r0 -/* 801646D0 00161630 90 01 08 74 */ stw r0, 0x874(r1) -/* 801646D4 00161634 DB E1 08 60 */ stfd f31, 0x860(r1) -/* 801646D8 00161638 F3 E1 08 68 */ psq_st f31, -1944(r1), 0, qr0 -/* 801646DC 0016163C 93 E1 08 5C */ stw r31, 0x85c(r1) -/* 801646E0 00161640 93 C1 08 58 */ stw r30, 0x858(r1) -/* 801646E4 00161644 93 A1 08 54 */ stw r29, 0x854(r1) -/* 801646E8 00161648 7C BF 2B 78 */ mr r31, r5 -/* 801646EC 0016164C FF E0 08 90 */ fmr f31, f1 -/* 801646F0 00161650 2C 1F 00 01 */ cmpwi r31, 1 -/* 801646F4 00161654 7C 7D 1B 78 */ mr r29, r3 -/* 801646F8 00161658 7C 9E 23 78 */ mr r30, r4 -/* 801646FC 0016165C 41 82 00 5C */ beq lbl_80164758 -/* 80164700 00161660 40 80 00 10 */ bge lbl_80164710 -/* 80164704 00161664 2C 1F 00 00 */ cmpwi r31, 0 -/* 80164708 00161668 40 80 00 14 */ bge lbl_8016471C -/* 8016470C 0016166C 48 00 01 C8 */ b lbl_801648D4 -lbl_80164710: -/* 80164710 00161670 2C 1F 00 03 */ cmpwi r31, 3 -/* 80164714 00161674 40 80 01 C0 */ bge lbl_801648D4 -/* 80164718 00161678 48 00 01 98 */ b lbl_801648B0 -lbl_8016471C: -/* 8016471C 0016167C 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 80164720 00161680 38 80 00 02 */ li r4, 2 -/* 80164724 00161684 4B FD 62 B5 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -/* 80164728 00161688 7F A3 EB 78 */ mr r3, r29 -/* 8016472C 0016168C 7F C4 F3 78 */ mr r4, r30 -/* 80164730 00161690 81 9D 00 00 */ lwz r12, 0(r29) -/* 80164734 00161694 38 A0 00 01 */ li r5, 1 -/* 80164738 00161698 81 8C 02 D0 */ lwz r12, 0x2d0(r12) -/* 8016473C 0016169C 7D 89 03 A6 */ mtctr r12 -/* 80164740 001616A0 4E 80 04 21 */ bctrl -/* 80164744 001616A4 88 1D 08 34 */ lbz r0, 0x834(r29) -/* 80164748 001616A8 38 60 00 01 */ li r3, 1 -/* 8016474C 001616AC 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 80164750 001616B0 98 1D 08 34 */ stb r0, 0x834(r29) -/* 80164754 001616B4 48 00 01 80 */ b lbl_801648D4 -lbl_80164758: -/* 80164758 001616B8 38 00 00 00 */ li r0, 0 -/* 8016475C 001616BC 7F C7 F3 78 */ mr r7, r30 -/* 80164760 001616C0 90 01 00 40 */ stw r0, 0x40(r1) -/* 80164764 001616C4 38 C1 00 40 */ addi r6, r1, 0x40 -/* 80164768 001616C8 C0 22 A0 00 */ lfs f1, lbl_805ABD20@sda21(r2) -/* 8016476C 001616CC 38 80 00 21 */ li r4, 0x21 -/* 80164770 001616D0 81 83 00 00 */ lwz r12, 0(r3) -/* 80164774 001616D4 38 A0 00 20 */ li r5, 0x20 -/* 80164778 001616D8 81 8C 02 CC */ lwz r12, 0x2cc(r12) -/* 8016477C 001616DC 7D 89 03 A6 */ mtctr r12 -/* 80164780 001616E0 4E 80 04 21 */ bctrl -/* 80164784 001616E4 80 01 00 40 */ lwz r0, 0x40(r1) -/* 80164788 001616E8 2C 00 00 00 */ cmpwi r0, 0 -/* 8016478C 001616EC 41 82 00 CC */ beq lbl_80164858 -/* 80164790 001616F0 A0 01 00 44 */ lhz r0, 0x44(r1) -/* 80164794 001616F4 7F C3 F3 78 */ mr r3, r30 -/* 80164798 001616F8 38 81 00 08 */ addi r4, r1, 8 -/* 8016479C 001616FC B0 01 00 08 */ sth r0, 8(r1) -/* 801647A0 00161700 4B EE 7E 05 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 801647A4 00161704 C0 63 00 60 */ lfs f3, 0x60(r3) -/* 801647A8 00161708 7F A5 EB 78 */ mr r5, r29 -/* 801647AC 0016170C C0 43 00 50 */ lfs f2, 0x50(r3) -/* 801647B0 00161710 38 9D 04 5C */ addi r4, r29, 0x45c -/* 801647B4 00161714 C0 03 00 40 */ lfs f0, 0x40(r3) -/* 801647B8 00161718 38 61 00 18 */ addi r3, r1, 0x18 -/* 801647BC 0016171C C0 22 A0 00 */ lfs f1, lbl_805ABD20@sda21(r2) -/* 801647C0 00161720 38 C1 00 0C */ addi r6, r1, 0xc -/* 801647C4 00161724 D0 01 00 0C */ stfs f0, 0xc(r1) -/* 801647C8 00161728 D0 41 00 10 */ stfs f2, 0x10(r1) -/* 801647CC 0016172C D0 61 00 14 */ stfs f3, 0x14(r1) -/* 801647D0 00161730 4B FD A1 21 */ bl Separation__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff -/* 801647D4 00161734 3C 60 80 5A */ lis r3, skZero3f@ha -/* 801647D8 00161738 C0 21 00 18 */ lfs f1, 0x18(r1) -/* 801647DC 0016173C C4 A3 66 A0 */ lfsu f5, skZero3f@l(r3) -/* 801647E0 00161740 38 00 00 00 */ li r0, 0 -/* 801647E4 00161744 C0 61 00 1C */ lfs f3, 0x1c(r1) -/* 801647E8 00161748 FC 01 28 00 */ fcmpu cr0, f1, f5 -/* 801647EC 0016174C C0 81 00 20 */ lfs f4, 0x20(r1) -/* 801647F0 00161750 40 82 00 20 */ bne lbl_80164810 -/* 801647F4 00161754 C0 03 00 04 */ lfs f0, 4(r3) -/* 801647F8 00161758 FC 03 00 00 */ fcmpu cr0, f3, f0 -/* 801647FC 0016175C 40 82 00 14 */ bne lbl_80164810 -/* 80164800 00161760 C0 03 00 08 */ lfs f0, 8(r3) -/* 80164804 00161764 FC 04 00 00 */ fcmpu cr0, f4, f0 -/* 80164808 00161768 40 82 00 08 */ bne lbl_80164810 -/* 8016480C 0016176C 38 00 00 01 */ li r0, 1 -lbl_80164810: -/* 80164810 00161770 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 80164814 00161774 40 82 00 44 */ bne lbl_80164858 -/* 80164818 00161778 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8016481C 0016177C C0 02 9F 80 */ lfs f0, lbl_805ABCA0@sda21(r2) -/* 80164820 00161780 38 63 66 A0 */ addi r3, r3, skZero3f@l -/* 80164824 00161784 D0 21 00 24 */ stfs f1, 0x24(r1) -/* 80164828 00161788 C0 43 00 04 */ lfs f2, 4(r3) -/* 8016482C 0016178C 38 81 00 24 */ addi r4, r1, 0x24 -/* 80164830 00161790 C0 23 00 08 */ lfs f1, 8(r3) -/* 80164834 00161794 D0 61 00 28 */ stfs f3, 0x28(r1) -/* 80164838 00161798 D0 81 00 2C */ stfs f4, 0x2c(r1) -/* 8016483C 0016179C D0 A1 00 30 */ stfs f5, 0x30(r1) -/* 80164840 001617A0 D0 41 00 34 */ stfs f2, 0x34(r1) -/* 80164844 001617A4 D0 21 00 38 */ stfs f1, 0x38(r1) -/* 80164848 001617A8 D0 01 00 3C */ stfs f0, 0x3c(r1) -/* 8016484C 001617AC 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 80164850 001617B0 38 63 00 04 */ addi r3, r3, 4 -/* 80164854 001617B4 4B FC CE C5 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd -lbl_80164858: -/* 80164858 001617B8 80 A1 00 40 */ lwz r5, 0x40(r1) -/* 8016485C 001617BC 38 60 00 00 */ li r3, 0 -/* 80164860 001617C0 2C 05 00 00 */ cmpwi r5, 0 -/* 80164864 001617C4 40 81 00 40 */ ble lbl_801648A4 -/* 80164868 001617C8 2C 05 00 08 */ cmpwi r5, 8 -/* 8016486C 001617CC 38 85 FF F8 */ addi r4, r5, -8 -/* 80164870 001617D0 40 81 00 20 */ ble lbl_80164890 -/* 80164874 001617D4 38 04 00 07 */ addi r0, r4, 7 -/* 80164878 001617D8 54 00 E8 FE */ srwi r0, r0, 3 -/* 8016487C 001617DC 7C 09 03 A6 */ mtctr r0 -/* 80164880 001617E0 2C 04 00 00 */ cmpwi r4, 0 -/* 80164884 001617E4 40 81 00 0C */ ble lbl_80164890 -lbl_80164888: -/* 80164888 001617E8 38 63 00 08 */ addi r3, r3, 8 -/* 8016488C 001617EC 42 00 FF FC */ bdnz lbl_80164888 -lbl_80164890: -/* 80164890 001617F0 7C 03 28 50 */ subf r0, r3, r5 -/* 80164894 001617F4 7C 09 03 A6 */ mtctr r0 -/* 80164898 001617F8 7C 03 28 00 */ cmpw r3, r5 -/* 8016489C 001617FC 40 80 00 08 */ bge lbl_801648A4 -lbl_801648A0: -/* 801648A0 00161800 42 00 00 00 */ bdnz lbl_801648A0 -lbl_801648A4: -/* 801648A4 00161804 38 00 00 00 */ li r0, 0 -/* 801648A8 00161808 90 01 00 40 */ stw r0, 0x40(r1) -/* 801648AC 0016180C 48 00 00 28 */ b lbl_801648D4 -lbl_801648B0: -/* 801648B0 00161810 81 83 00 00 */ lwz r12, 0(r3) -/* 801648B4 00161814 38 A0 00 00 */ li r5, 0 -/* 801648B8 00161818 81 8C 02 D0 */ lwz r12, 0x2d0(r12) -/* 801648BC 0016181C 7D 89 03 A6 */ mtctr r12 -/* 801648C0 00161820 4E 80 04 21 */ bctrl -/* 801648C4 00161824 88 1D 08 34 */ lbz r0, 0x834(r29) -/* 801648C8 00161828 38 60 00 00 */ li r3, 0 -/* 801648CC 0016182C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 801648D0 00161830 98 1D 08 34 */ stb r0, 0x834(r29) -lbl_801648D4: -/* 801648D4 00161834 FC 20 F8 90 */ fmr f1, f31 -/* 801648D8 00161838 7F A3 EB 78 */ mr r3, r29 -/* 801648DC 0016183C 7F C4 F3 78 */ mr r4, r30 -/* 801648E0 00161840 7F E5 FB 78 */ mr r5, r31 -/* 801648E4 00161844 48 09 25 91 */ bl Patrol__10CPatternedFR13CStateManager9EStateMsgf -/* 801648E8 00161848 E3 E1 08 68 */ psq_l f31, -1944(r1), 0, qr0 -/* 801648EC 0016184C 80 01 08 74 */ lwz r0, 0x874(r1) -/* 801648F0 00161850 CB E1 08 60 */ lfd f31, 0x860(r1) -/* 801648F4 00161854 83 E1 08 5C */ lwz r31, 0x85c(r1) -/* 801648F8 00161858 83 C1 08 58 */ lwz r30, 0x858(r1) -/* 801648FC 0016185C 83 A1 08 54 */ lwz r29, 0x854(r1) -/* 80164900 00161860 7C 08 03 A6 */ mtlr r0 -/* 80164904 00161864 38 21 08 70 */ addi r1, r1, 0x870 -/* 80164908 00161868 4E 80 00 20 */ blr - -.global sub_8016490c -sub_8016490c: -/* 8016490C 0016186C 94 21 FF 00 */ stwu r1, -0x100(r1) -/* 80164910 00161870 7C 08 02 A6 */ mflr r0 -/* 80164914 00161874 90 01 01 04 */ stw r0, 0x104(r1) -/* 80164918 00161878 DB E1 00 F0 */ stfd f31, 0xf0(r1) -/* 8016491C 0016187C F3 E1 00 F8 */ psq_st f31, 248(r1), 0, qr0 -/* 80164920 00161880 DB C1 00 E0 */ stfd f30, 0xe0(r1) -/* 80164924 00161884 F3 C1 00 E8 */ psq_st f30, 232(r1), 0, qr0 -/* 80164928 00161888 DB A1 00 D0 */ stfd f29, 0xd0(r1) -/* 8016492C 0016188C F3 A1 00 D8 */ psq_st f29, 216(r1), 0, qr0 -/* 80164930 00161890 DB 81 00 C0 */ stfd f28, 0xc0(r1) -/* 80164934 00161894 F3 81 00 C8 */ psq_st f28, 200(r1), 0, qr0 -/* 80164938 00161898 93 E1 00 BC */ stw r31, 0xbc(r1) -/* 8016493C 0016189C 3C 80 80 3D */ lis r4, lbl_803D0398@ha -/* 80164940 001618A0 FF 80 08 90 */ fmr f28, f1 -/* 80164944 001618A4 38 84 03 98 */ addi r4, r4, lbl_803D0398@l -/* 80164948 001618A8 7C 7F 1B 78 */ mr r31, r3 -/* 8016494C 001618AC 38 61 00 30 */ addi r3, r1, 0x30 -/* 80164950 001618B0 38 84 00 4D */ addi r4, r4, 0x4d -/* 80164954 001618B4 4B EA 03 65 */ bl string_l__4rstlFPCc -/* 80164958 001618B8 7F E4 FB 78 */ mr r4, r31 -/* 8016495C 001618BC 38 61 00 58 */ addi r3, r1, 0x58 -/* 80164960 001618C0 38 A1 00 30 */ addi r5, r1, 0x30 -/* 80164964 001618C4 4B F1 40 15 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80164968 001618C8 38 61 00 88 */ addi r3, r1, 0x88 -/* 8016496C 001618CC 38 81 00 58 */ addi r4, r1, 0x58 -/* 80164970 001618D0 48 1A E2 05 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80164974 001618D4 38 61 00 30 */ addi r3, r1, 0x30 -/* 80164978 001618D8 48 1D 91 69 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 8016497C 001618DC C0 41 00 94 */ lfs f2, 0x94(r1) -/* 80164980 001618E0 38 61 00 40 */ addi r3, r1, 0x40 -/* 80164984 001618E4 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 80164988 001618E8 38 81 00 24 */ addi r4, r1, 0x24 -/* 8016498C 001618EC C0 21 00 A4 */ lfs f1, 0xa4(r1) -/* 80164990 001618F0 38 A1 00 18 */ addi r5, r1, 0x18 -/* 80164994 001618F4 EF A2 00 28 */ fsubs f29, f2, f0 -/* 80164998 001618F8 C0 1F 00 50 */ lfs f0, 0x50(r31) -/* 8016499C 001618FC C0 41 00 B4 */ lfs f2, 0xb4(r1) -/* 801649A0 00161900 EF C1 00 28 */ fsubs f30, f1, f0 -/* 801649A4 00161904 C0 1F 00 60 */ lfs f0, 0x60(r31) -/* 801649A8 00161908 EC 3D E0 2A */ fadds f1, f29, f28 -/* 801649AC 0016190C EF E2 00 28 */ fsubs f31, f2, f0 -/* 801649B0 00161910 EC 1E E0 2A */ fadds f0, f30, f28 -/* 801649B4 00161914 EC 5D E0 28 */ fsubs f2, f29, f28 -/* 801649B8 00161918 D0 21 00 18 */ stfs f1, 0x18(r1) -/* 801649BC 0016191C EC 7F E0 2A */ fadds f3, f31, f28 -/* 801649C0 00161920 EC 3E E0 28 */ fsubs f1, f30, f28 -/* 801649C4 00161924 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 801649C8 00161928 EC 1F E0 28 */ fsubs f0, f31, f28 -/* 801649CC 0016192C D0 61 00 20 */ stfs f3, 0x20(r1) -/* 801649D0 00161930 D0 41 00 24 */ stfs f2, 0x24(r1) -/* 801649D4 00161934 D0 21 00 28 */ stfs f1, 0x28(r1) -/* 801649D8 00161938 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 801649DC 0016193C 48 1D 3B 2D */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 801649E0 00161940 D3 A1 00 08 */ stfs f29, 8(r1) -/* 801649E4 00161944 FC 00 E0 18 */ frsp f0, f28 -/* 801649E8 00161948 7F E3 FB 78 */ mr r3, r31 -/* 801649EC 0016194C 38 81 00 40 */ addi r4, r1, 0x40 -/* 801649F0 00161950 D3 C1 00 0C */ stfs f30, 0xc(r1) -/* 801649F4 00161954 80 01 00 08 */ lwz r0, 8(r1) -/* 801649F8 00161958 D3 E1 00 10 */ stfs f31, 0x10(r1) -/* 801649FC 0016195C 80 A1 00 0C */ lwz r5, 0xc(r1) -/* 80164A00 00161960 90 1F 06 A0 */ stw r0, 0x6a0(r31) -/* 80164A04 00161964 80 01 00 10 */ lwz r0, 0x10(r1) -/* 80164A08 00161968 90 BF 06 A4 */ stw r5, 0x6a4(r31) -/* 80164A0C 0016196C 90 1F 06 A8 */ stw r0, 0x6a8(r31) -/* 80164A10 00161970 D3 81 00 14 */ stfs f28, 0x14(r1) -/* 80164A14 00161974 D0 1F 06 AC */ stfs f0, 0x6ac(r31) -/* 80164A18 00161978 4B FB 5C 41 */ bl SetBoundingBox__13CPhysicsActorFRC6CAABox -/* 80164A1C 0016197C C0 02 9F 78 */ lfs f0, lbl_805ABC98@sda21(r2) -/* 80164A20 00161980 EC 00 E0 2A */ fadds f0, f0, f28 -/* 80164A24 00161984 D0 1F 07 84 */ stfs f0, 0x784(r31) -/* 80164A28 00161988 E3 E1 00 F8 */ psq_l f31, 248(r1), 0, qr0 -/* 80164A2C 0016198C CB E1 00 F0 */ lfd f31, 0xf0(r1) -/* 80164A30 00161990 E3 C1 00 E8 */ psq_l f30, 232(r1), 0, qr0 -/* 80164A34 00161994 CB C1 00 E0 */ lfd f30, 0xe0(r1) -/* 80164A38 00161998 E3 A1 00 D8 */ psq_l f29, 216(r1), 0, qr0 -/* 80164A3C 0016199C CB A1 00 D0 */ lfd f29, 0xd0(r1) -/* 80164A40 001619A0 E3 81 00 C8 */ psq_l f28, 200(r1), 0, qr0 -/* 80164A44 001619A4 CB 81 00 C0 */ lfd f28, 0xc0(r1) -/* 80164A48 001619A8 80 01 01 04 */ lwz r0, 0x104(r1) -/* 80164A4C 001619AC 83 E1 00 BC */ lwz r31, 0xbc(r1) -/* 80164A50 001619B0 7C 08 03 A6 */ mtlr r0 -/* 80164A54 001619B4 38 21 01 00 */ addi r1, r1, 0x100 -/* 80164A58 001619B8 4E 80 00 20 */ blr - -.global Think__6CDroneFfR13CStateManager -Think__6CDroneFfR13CStateManager: -/* 80164A5C 001619BC 94 21 F5 D0 */ stwu r1, -0xa30(r1) -/* 80164A60 001619C0 7C 08 02 A6 */ mflr r0 -/* 80164A64 001619C4 90 01 0A 34 */ stw r0, 0xa34(r1) -/* 80164A68 001619C8 DB E1 0A 20 */ stfd f31, 0xa20(r1) -/* 80164A6C 001619CC F3 E1 0A 28 */ psq_st f31, -1496(r1), 0, qr0 -/* 80164A70 001619D0 DB C1 0A 10 */ stfd f30, 0xa10(r1) -/* 80164A74 001619D4 F3 C1 0A 18 */ psq_st f30, -1512(r1), 0, qr0 -/* 80164A78 001619D8 BF 61 09 FC */ stmw r27, 0x9fc(r1) -/* 80164A7C 001619DC 7C 7E 1B 78 */ mr r30, r3 -/* 80164A80 001619E0 FF E0 08 90 */ fmr f31, f1 -/* 80164A84 001619E4 80 03 03 FC */ lwz r0, 0x3fc(r3) -/* 80164A88 001619E8 7C 9F 23 78 */ mr r31, r4 -/* 80164A8C 001619EC 2C 00 00 01 */ cmpwi r0, 1 -/* 80164A90 001619F0 40 82 00 64 */ bne lbl_80164AF4 -/* 80164A94 001619F4 80 7F 08 B8 */ lwz r3, 0x8b8(r31) -/* 80164A98 001619F8 80 63 00 00 */ lwz r3, 0(r3) -/* 80164A9C 001619FC 4B F2 CA BD */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager -/* 80164AA0 00161A00 20 03 00 01 */ subfic r0, r3, 1 -/* 80164AA4 00161A04 C0 22 9F 7C */ lfs f1, lbl_805ABC9C@sda21(r2) -/* 80164AA8 00161A08 7C 00 00 34 */ cntlzw r0, r0 -/* 80164AAC 00161A0C 54 00 DE 3F */ rlwinm. r0, r0, 0x1b, 0x18, 0x1f -/* 80164AB0 00161A10 40 82 00 30 */ bne lbl_80164AE0 -/* 80164AB4 00161A14 C0 5E 04 28 */ lfs f2, 0x428(r30) -/* 80164AB8 00161A18 C0 22 88 F0 */ lfs f1, lbl_805AA610@sda21(r2) -/* 80164ABC 00161A1C C0 0D 8D 14 */ lfs f0, lbl_805A78D4@sda21(r13) -/* 80164AC0 00161A20 EC 22 08 24 */ fdivs f1, f2, f1 -/* 80164AC4 00161A24 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 80164AC8 00161A28 D0 21 00 4C */ stfs f1, 0x4c(r1) -/* 80164ACC 00161A2C 40 80 00 0C */ bge lbl_80164AD8 -/* 80164AD0 00161A30 38 61 00 4C */ addi r3, r1, 0x4c -/* 80164AD4 00161A34 48 00 00 08 */ b lbl_80164ADC -lbl_80164AD8: -/* 80164AD8 00161A38 38 6D 8D 14 */ addi r3, r13, lbl_805A78D4@sda21 -lbl_80164ADC: -/* 80164ADC 00161A3C C0 23 00 00 */ lfs f1, 0(r3) -lbl_80164AE0: -/* 80164AE0 00161A40 C0 02 A0 08 */ lfs f0, lbl_805ABD28@sda21(r2) -/* 80164AE4 00161A44 EF C0 00 72 */ fmuls f30, f0, f1 -/* 80164AE8 00161A48 F3 C1 A0 08 */ psq_st f30, 8(r1), 1, qr2 -/* 80164AEC 00161A4C 88 01 00 08 */ lbz r0, 8(r1) -/* 80164AF0 00161A50 98 1E 04 2F */ stb r0, 0x42f(r30) -lbl_80164AF4: -/* 80164AF4 00161A54 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 80164AF8 00161A58 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 80164AFC 00161A5C C0 03 03 24 */ lfs f0, 0x324(r3) -/* 80164B00 00161A60 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 80164B04 00161A64 7C 60 00 26 */ mfcr r3 -/* 80164B08 00161A68 88 1E 04 03 */ lbz r0, 0x403(r30) -/* 80164B0C 00161A6C 54 63 17 FE */ rlwinm r3, r3, 2, 0x1f, 0x1f -/* 80164B10 00161A70 7C 63 00 34 */ cntlzw r3, r3 -/* 80164B14 00161A74 50 60 0E 72 */ rlwimi r0, r3, 1, 0x19, 0x19 -/* 80164B18 00161A78 98 1E 04 03 */ stb r0, 0x403(r30) -/* 80164B1C 00161A7C 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 80164B20 00161A80 C0 03 03 24 */ lfs f0, 0x324(r3) -/* 80164B24 00161A84 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 80164B28 00161A88 40 81 00 6C */ ble lbl_80164B94 -/* 80164B2C 00161A8C 88 1E 08 28 */ lbz r0, 0x828(r30) -/* 80164B30 00161A90 28 00 00 00 */ cmplwi r0, 0 -/* 80164B34 00161A94 40 82 00 10 */ bne lbl_80164B44 -/* 80164B38 00161A98 88 1E 08 29 */ lbz r0, 0x829(r30) -/* 80164B3C 00161A9C 28 00 00 00 */ cmplwi r0, 0 -/* 80164B40 00161AA0 41 82 00 54 */ beq lbl_80164B94 -lbl_80164B44: -/* 80164B44 00161AA4 38 00 00 00 */ li r0, 0 -/* 80164B48 00161AA8 7F C3 F3 78 */ mr r3, r30 -/* 80164B4C 00161AAC 98 1E 08 28 */ stb r0, 0x828(r30) -/* 80164B50 00161AB0 7F E4 FB 78 */ mr r4, r31 -/* 80164B54 00161AB4 38 A0 00 00 */ li r5, 0 -/* 80164B58 00161AB8 38 C0 00 00 */ li r6, 0 -/* 80164B5C 00161ABC 98 1E 08 29 */ stb r0, 0x829(r30) -/* 80164B60 00161AC0 4B FF E7 45 */ bl sub_801632a4 -/* 80164B64 00161AC4 7F C3 F3 78 */ mr r3, r30 -/* 80164B68 00161AC8 7F E4 FB 78 */ mr r4, r31 -/* 80164B6C 00161ACC 38 A0 00 01 */ li r5, 1 -/* 80164B70 00161AD0 38 C0 00 00 */ li r6, 0 -/* 80164B74 00161AD4 4B FF E7 31 */ bl sub_801632a4 -/* 80164B78 00161AD8 7F C3 F3 78 */ mr r3, r30 -/* 80164B7C 00161ADC 7F E4 FB 78 */ mr r4, r31 -/* 80164B80 00161AE0 81 9E 00 00 */ lwz r12, 0(r30) -/* 80164B84 00161AE4 38 A0 00 00 */ li r5, 0 -/* 80164B88 00161AE8 81 8C 02 D4 */ lwz r12, 0x2d4(r12) -/* 80164B8C 00161AEC 7D 89 03 A6 */ mtctr r12 -/* 80164B90 00161AF0 4E 80 04 21 */ bctrl -lbl_80164B94: -/* 80164B94 00161AF4 FC 20 F8 90 */ fmr f1, f31 -/* 80164B98 00161AF8 7F C3 F3 78 */ mr r3, r30 -/* 80164B9C 00161AFC 7F E4 FB 78 */ mr r4, r31 -/* 80164BA0 00161B00 4B F1 4F 79 */ bl Think__10CPatternedFfR13CStateManager -/* 80164BA4 00161B04 88 1E 00 30 */ lbz r0, 0x30(r30) -/* 80164BA8 00161B08 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80164BAC 00161B0C 41 82 09 14 */ beq lbl_801654C0 -/* 80164BB0 00161B10 C0 3E 05 C8 */ lfs f1, 0x5c8(r30) -/* 80164BB4 00161B14 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 80164BB8 00161B18 EC 21 F8 28 */ fsubs f1, f1, f31 -/* 80164BBC 00161B1C D0 3E 05 C8 */ stfs f1, 0x5c8(r30) -/* 80164BC0 00161B20 C0 3E 07 C4 */ lfs f1, 0x7c4(r30) -/* 80164BC4 00161B24 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80164BC8 00161B28 4C 41 13 82 */ cror 2, 1, 2 -/* 80164BCC 00161B2C 40 82 00 0C */ bne lbl_80164BD8 -/* 80164BD0 00161B30 EC 01 F8 28 */ fsubs f0, f1, f31 -/* 80164BD4 00161B34 D0 1E 07 C4 */ stfs f0, 0x7c4(r30) -lbl_80164BD8: -/* 80164BD8 00161B38 C0 3E 05 D0 */ lfs f1, 0x5d0(r30) -/* 80164BDC 00161B3C C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 80164BE0 00161B40 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80164BE4 00161B44 4C 41 13 82 */ cror 2, 1, 2 -/* 80164BE8 00161B48 40 82 00 2C */ bne lbl_80164C14 -/* 80164BEC 00161B4C 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 80164BF0 00161B50 80 03 02 F8 */ lwz r0, 0x2f8(r3) -/* 80164BF4 00161B54 2C 00 00 01 */ cmpwi r0, 1 -/* 80164BF8 00161B58 40 82 00 14 */ bne lbl_80164C0C -/* 80164BFC 00161B5C C0 02 9F B4 */ lfs f0, lbl_805ABCD4@sda21(r2) -/* 80164C00 00161B60 EC 00 0F FC */ fnmsubs f0, f0, f31, f1 -/* 80164C04 00161B64 D0 1E 05 D0 */ stfs f0, 0x5d0(r30) -/* 80164C08 00161B68 48 00 00 0C */ b lbl_80164C14 -lbl_80164C0C: -/* 80164C0C 00161B6C EC 01 F8 28 */ fsubs f0, f1, f31 -/* 80164C10 00161B70 D0 1E 05 D0 */ stfs f0, 0x5d0(r30) -lbl_80164C14: -/* 80164C14 00161B74 C0 3E 06 24 */ lfs f1, 0x624(r30) -/* 80164C18 00161B78 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 80164C1C 00161B7C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80164C20 00161B80 4C 41 13 82 */ cror 2, 1, 2 -/* 80164C24 00161B84 40 82 00 0C */ bne lbl_80164C30 -/* 80164C28 00161B88 EC 01 F8 28 */ fsubs f0, f1, f31 -/* 80164C2C 00161B8C D0 1E 06 24 */ stfs f0, 0x624(r30) -lbl_80164C30: -/* 80164C30 00161B90 C0 3E 06 44 */ lfs f1, 0x644(r30) -/* 80164C34 00161B94 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 80164C38 00161B98 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80164C3C 00161B9C 4C 41 13 82 */ cror 2, 1, 2 -/* 80164C40 00161BA0 40 82 00 0C */ bne lbl_80164C4C -/* 80164C44 00161BA4 EC 01 F8 28 */ fsubs f0, f1, f31 -/* 80164C48 00161BA8 D0 1E 06 44 */ stfs f0, 0x644(r30) -lbl_80164C4C: -/* 80164C4C 00161BAC 88 1E 08 28 */ lbz r0, 0x828(r30) -/* 80164C50 00161BB0 28 00 00 00 */ cmplwi r0, 0 -/* 80164C54 00161BB4 40 82 00 1C */ bne lbl_80164C70 -/* 80164C58 00161BB8 88 1E 08 29 */ lbz r0, 0x829(r30) -/* 80164C5C 00161BBC 28 00 00 00 */ cmplwi r0, 0 -/* 80164C60 00161BC0 41 82 00 38 */ beq lbl_80164C98 -/* 80164C64 00161BC4 88 1E 04 00 */ lbz r0, 0x400(r30) -/* 80164C68 00161BC8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 80164C6C 00161BCC 41 82 00 2C */ beq lbl_80164C98 -lbl_80164C70: -/* 80164C70 00161BD0 FC 20 F8 90 */ fmr f1, f31 -/* 80164C74 00161BD4 7F C3 F3 78 */ mr r3, r30 -/* 80164C78 00161BD8 7F E4 FB 78 */ mr r4, r31 -/* 80164C7C 00161BDC 4B FF EF C5 */ bl sub_80163c40 -/* 80164C80 00161BE0 7F C3 F3 78 */ mr r3, r30 -/* 80164C84 00161BE4 7F E4 FB 78 */ mr r4, r31 -/* 80164C88 00161BE8 81 9E 00 00 */ lwz r12, 0(r30) -/* 80164C8C 00161BEC 81 8C 02 D8 */ lwz r12, 0x2d8(r12) -/* 80164C90 00161BF0 7D 89 03 A6 */ mtctr r12 -/* 80164C94 00161BF4 4E 80 04 21 */ bctrl -lbl_80164C98: -/* 80164C98 00161BF8 88 1E 08 34 */ lbz r0, 0x834(r30) -/* 80164C9C 00161BFC 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 80164CA0 00161C00 41 82 00 20 */ beq lbl_80164CC0 -/* 80164CA4 00161C04 88 1E 04 00 */ lbz r0, 0x400(r30) -/* 80164CA8 00161C08 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 80164CAC 00161C0C 41 82 00 14 */ beq lbl_80164CC0 -/* 80164CB0 00161C10 FC 20 F8 90 */ fmr f1, f31 -/* 80164CB4 00161C14 7F C3 F3 78 */ mr r3, r30 -/* 80164CB8 00161C18 7F E4 FB 78 */ mr r4, r31 -/* 80164CBC 00161C1C 4B FF F5 A9 */ bl sub_80164264 -lbl_80164CC0: -/* 80164CC0 00161C20 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 80164CC4 00161C24 88 1E 08 34 */ lbz r0, 0x834(r30) -/* 80164CC8 00161C28 C0 C3 00 50 */ lfs f6, 0x50(r3) -/* 80164CCC 00161C2C C0 1E 00 50 */ lfs f0, 0x50(r30) -/* 80164CD0 00161C30 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f -/* 80164CD4 00161C34 C0 23 00 40 */ lfs f1, 0x40(r3) -/* 80164CD8 00161C38 EC A6 00 28 */ fsubs f5, f6, f0 -/* 80164CDC 00161C3C C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 80164CE0 00161C40 C0 E3 00 60 */ lfs f7, 0x60(r3) -/* 80164CE4 00161C44 EC 61 00 28 */ fsubs f3, f1, f0 -/* 80164CE8 00161C48 C0 5E 00 60 */ lfs f2, 0x60(r30) -/* 80164CEC 00161C4C D0 21 00 DC */ stfs f1, 0xdc(r1) -/* 80164CF0 00161C50 EC 87 10 28 */ fsubs f4, f7, f2 -/* 80164CF4 00161C54 EC 05 01 72 */ fmuls f0, f5, f5 -/* 80164CF8 00161C58 D0 C1 00 E0 */ stfs f6, 0xe0(r1) -/* 80164CFC 00161C5C EC 23 00 F2 */ fmuls f1, f3, f3 -/* 80164D00 00161C60 EC 44 01 32 */ fmuls f2, f4, f4 -/* 80164D04 00161C64 D0 E1 00 E4 */ stfs f7, 0xe4(r1) -/* 80164D08 00161C68 EC 01 00 2A */ fadds f0, f1, f0 -/* 80164D0C 00161C6C D0 61 00 E8 */ stfs f3, 0xe8(r1) -/* 80164D10 00161C70 D0 A1 00 EC */ stfs f5, 0xec(r1) -/* 80164D14 00161C74 EF C2 00 2A */ fadds f30, f2, f0 -/* 80164D18 00161C78 D0 81 00 F0 */ stfs f4, 0xf0(r1) -/* 80164D1C 00161C7C 41 82 00 90 */ beq lbl_80164DAC -/* 80164D20 00161C80 C0 1E 06 0C */ lfs f0, 0x60c(r30) -/* 80164D24 00161C84 EC 00 00 32 */ fmuls f0, f0, f0 -/* 80164D28 00161C88 FC 1E 00 40 */ fcmpo cr0, f30, f0 -/* 80164D2C 00161C8C 40 80 00 80 */ bge lbl_80164DAC -/* 80164D30 00161C90 A0 1E 00 08 */ lhz r0, 8(r30) -/* 80164D34 00161C94 38 81 00 2C */ addi r4, r1, 0x2c -/* 80164D38 00161C98 B0 01 00 2C */ sth r0, 0x2c(r1) -/* 80164D3C 00161C9C 80 7F 08 B8 */ lwz r3, 0x8b8(r31) -/* 80164D40 00161CA0 B0 01 00 28 */ sth r0, 0x28(r1) -/* 80164D44 00161CA4 80 63 00 00 */ lwz r3, 0(r3) -/* 80164D48 00161CA8 38 63 01 88 */ addi r3, r3, 0x188 -/* 80164D4C 00161CAC 48 05 BC 69 */ bl sub_801c09b4 -/* 80164D50 00161CB0 80 7F 08 B8 */ lwz r3, 0x8b8(r31) -/* 80164D54 00161CB4 80 63 00 00 */ lwz r3, 0(r3) -/* 80164D58 00161CB8 38 63 01 88 */ addi r3, r3, 0x188 -/* 80164D5C 00161CBC 48 05 BB C9 */ bl GetTotalInterference__19CStaticInterferenceCFv -/* 80164D60 00161CC0 C0 5E 06 08 */ lfs f2, 0x608(r30) -/* 80164D64 00161CC4 C0 0D 8D 18 */ lfs f0, lbl_805A78D8@sda21(r13) -/* 80164D68 00161CC8 EC 22 08 28 */ fsubs f1, f2, f1 -/* 80164D6C 00161CCC FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 80164D70 00161CD0 D0 21 00 48 */ stfs f1, 0x48(r1) -/* 80164D74 00161CD4 40 80 00 0C */ bge lbl_80164D80 -/* 80164D78 00161CD8 38 61 00 48 */ addi r3, r1, 0x48 -/* 80164D7C 00161CDC 48 00 00 08 */ b lbl_80164D84 -lbl_80164D80: -/* 80164D80 00161CE0 38 6D 8D 18 */ addi r3, r13, lbl_805A78D8@sda21 -lbl_80164D84: -/* 80164D84 00161CE4 A0 1E 00 08 */ lhz r0, 8(r30) -/* 80164D88 00161CE8 38 81 00 24 */ addi r4, r1, 0x24 -/* 80164D8C 00161CEC C0 23 00 00 */ lfs f1, 0(r3) -/* 80164D90 00161CF0 C0 42 9F 8C */ lfs f2, lbl_805ABCAC@sda21(r2) -/* 80164D94 00161CF4 B0 01 00 24 */ sth r0, 0x24(r1) -/* 80164D98 00161CF8 80 7F 08 B8 */ lwz r3, 0x8b8(r31) -/* 80164D9C 00161CFC B0 01 00 20 */ sth r0, 0x20(r1) -/* 80164DA0 00161D00 80 63 00 00 */ lwz r3, 0(r3) -/* 80164DA4 00161D04 38 63 01 88 */ addi r3, r3, 0x188 -/* 80164DA8 00161D08 48 05 BD 91 */ bl AddSource__19CStaticInterferenceF9TUniqueId -lbl_80164DAC: -/* 80164DAC 00161D0C 88 1E 08 34 */ lbz r0, 0x834(r30) -/* 80164DB0 00161D10 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f -/* 80164DB4 00161D14 40 82 00 90 */ bne lbl_80164E44 -/* 80164DB8 00161D18 C0 1E 06 14 */ lfs f0, 0x614(r30) -/* 80164DBC 00161D1C EC 00 00 32 */ fmuls f0, f0, f0 -/* 80164DC0 00161D20 FC 1E 00 40 */ fcmpo cr0, f30, f0 -/* 80164DC4 00161D24 40 80 00 80 */ bge lbl_80164E44 -/* 80164DC8 00161D28 A0 1E 00 08 */ lhz r0, 8(r30) -/* 80164DCC 00161D2C 38 81 00 1C */ addi r4, r1, 0x1c -/* 80164DD0 00161D30 B0 01 00 1C */ sth r0, 0x1c(r1) -/* 80164DD4 00161D34 80 7F 08 B8 */ lwz r3, 0x8b8(r31) -/* 80164DD8 00161D38 B0 01 00 18 */ sth r0, 0x18(r1) -/* 80164DDC 00161D3C 80 63 00 00 */ lwz r3, 0(r3) -/* 80164DE0 00161D40 38 63 01 88 */ addi r3, r3, 0x188 -/* 80164DE4 00161D44 48 05 BB D1 */ bl sub_801c09b4 -/* 80164DE8 00161D48 80 7F 08 B8 */ lwz r3, 0x8b8(r31) -/* 80164DEC 00161D4C 80 63 00 00 */ lwz r3, 0(r3) -/* 80164DF0 00161D50 38 63 01 88 */ addi r3, r3, 0x188 -/* 80164DF4 00161D54 48 05 BB 31 */ bl GetTotalInterference__19CStaticInterferenceCFv -/* 80164DF8 00161D58 C0 5E 06 10 */ lfs f2, 0x610(r30) -/* 80164DFC 00161D5C C0 0D 8D 1C */ lfs f0, lbl_805A78DC@sda21(r13) -/* 80164E00 00161D60 EC 22 08 28 */ fsubs f1, f2, f1 -/* 80164E04 00161D64 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 80164E08 00161D68 D0 21 00 44 */ stfs f1, 0x44(r1) -/* 80164E0C 00161D6C 40 80 00 0C */ bge lbl_80164E18 -/* 80164E10 00161D70 38 61 00 44 */ addi r3, r1, 0x44 -/* 80164E14 00161D74 48 00 00 08 */ b lbl_80164E1C -lbl_80164E18: -/* 80164E18 00161D78 38 6D 8D 1C */ addi r3, r13, lbl_805A78DC@sda21 -lbl_80164E1C: -/* 80164E1C 00161D7C A0 1E 00 08 */ lhz r0, 8(r30) -/* 80164E20 00161D80 38 81 00 14 */ addi r4, r1, 0x14 -/* 80164E24 00161D84 C0 23 00 00 */ lfs f1, 0(r3) -/* 80164E28 00161D88 C0 42 9F 8C */ lfs f2, lbl_805ABCAC@sda21(r2) -/* 80164E2C 00161D8C B0 01 00 14 */ sth r0, 0x14(r1) -/* 80164E30 00161D90 80 7F 08 B8 */ lwz r3, 0x8b8(r31) -/* 80164E34 00161D94 B0 01 00 10 */ sth r0, 0x10(r1) -/* 80164E38 00161D98 80 63 00 00 */ lwz r3, 0(r3) -/* 80164E3C 00161D9C 38 63 01 88 */ addi r3, r3, 0x188 -/* 80164E40 00161DA0 48 05 BC F9 */ bl AddSource__19CStaticInterferenceF9TUniqueId -lbl_80164E44: -/* 80164E44 00161DA4 88 1E 08 34 */ lbz r0, 0x834(r30) -/* 80164E48 00161DA8 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f -/* 80164E4C 00161DAC 40 82 00 50 */ bne lbl_80164E9C -/* 80164E50 00161DB0 88 1E 04 00 */ lbz r0, 0x400(r30) -/* 80164E54 00161DB4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 80164E58 00161DB8 41 82 00 44 */ beq lbl_80164E9C -/* 80164E5C 00161DBC 88 1E 08 35 */ lbz r0, 0x835(r30) -/* 80164E60 00161DC0 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 80164E64 00161DC4 40 82 00 38 */ bne lbl_80164E9C -/* 80164E68 00161DC8 C0 3E 05 E0 */ lfs f1, 0x5e0(r30) -/* 80164E6C 00161DCC C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 80164E70 00161DD0 EC 21 F8 28 */ fsubs f1, f1, f31 -/* 80164E74 00161DD4 D0 3E 05 E0 */ stfs f1, 0x5e0(r30) -/* 80164E78 00161DD8 C0 3E 05 E0 */ lfs f1, 0x5e0(r30) -/* 80164E7C 00161DDC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80164E80 00161DE0 4C 40 13 82 */ cror 2, 0, 2 -/* 80164E84 00161DE4 40 82 00 18 */ bne lbl_80164E9C -/* 80164E88 00161DE8 7F C3 F3 78 */ mr r3, r30 -/* 80164E8C 00161DEC 7F E4 FB 78 */ mr r4, r31 -/* 80164E90 00161DF0 4B FF E5 19 */ bl sub_801633a8 -/* 80164E94 00161DF4 C0 02 9F C0 */ lfs f0, lbl_805ABCE0@sda21(r2) -/* 80164E98 00161DF8 D0 1E 05 E0 */ stfs f0, 0x5e0(r30) -lbl_80164E9C: -/* 80164E9C 00161DFC 7F C3 F3 78 */ mr r3, r30 -/* 80164EA0 00161E00 7F E4 FB 78 */ mr r4, r31 -/* 80164EA4 00161E04 81 9E 00 00 */ lwz r12, 0(r30) -/* 80164EA8 00161E08 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 80164EAC 00161E0C 7D 89 03 A6 */ mtctr r12 -/* 80164EB0 00161E10 4E 80 04 21 */ bctrl -/* 80164EB4 00161E14 C0 5E 06 00 */ lfs f2, 0x600(r30) -/* 80164EB8 00161E18 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 80164EBC 00161E1C C0 9E 06 04 */ lfs f4, 0x604(r30) -/* 80164EC0 00161E20 EC 22 00 28 */ fsubs f1, f2, f0 -/* 80164EC4 00161E24 C0 63 00 00 */ lfs f3, 0(r3) -/* 80164EC8 00161E28 C0 02 9F 90 */ lfs f0, lbl_805ABCB0@sda21(r2) -/* 80164ECC 00161E2C EC 64 18 28 */ fsubs f3, f4, f3 -/* 80164ED0 00161E30 FC 20 0A 10 */ fabs f1, f1 -/* 80164ED4 00161E34 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80164ED8 00161E38 41 80 00 28 */ blt lbl_80164F00 -/* 80164EDC 00161E3C EC 03 10 24 */ fdivs f0, f3, f2 -/* 80164EE0 00161E40 C0 3E 05 D0 */ lfs f1, 0x5d0(r30) -/* 80164EE4 00161E44 EC 01 00 28 */ fsubs f0, f1, f0 -/* 80164EE8 00161E48 D0 1E 05 D0 */ stfs f0, 0x5d0(r30) -/* 80164EEC 00161E4C C0 1E 06 00 */ lfs f0, 0x600(r30) -/* 80164EF0 00161E50 C0 3E 06 24 */ lfs f1, 0x624(r30) -/* 80164EF4 00161E54 EC 03 00 24 */ fdivs f0, f3, f0 -/* 80164EF8 00161E58 EC 01 00 28 */ fsubs f0, f1, f0 -/* 80164EFC 00161E5C D0 1E 06 24 */ stfs f0, 0x624(r30) -lbl_80164F00: -/* 80164F00 00161E60 7F C3 F3 78 */ mr r3, r30 -/* 80164F04 00161E64 7F E4 FB 78 */ mr r4, r31 -/* 80164F08 00161E68 81 9E 00 00 */ lwz r12, 0(r30) -/* 80164F0C 00161E6C 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 80164F10 00161E70 7D 89 03 A6 */ mtctr r12 -/* 80164F14 00161E74 4E 80 04 21 */ bctrl -/* 80164F18 00161E78 C0 03 00 00 */ lfs f0, 0(r3) -/* 80164F1C 00161E7C D0 1E 06 04 */ stfs f0, 0x604(r30) -/* 80164F20 00161E80 80 1E 03 FC */ lwz r0, 0x3fc(r30) -/* 80164F24 00161E84 2C 00 00 01 */ cmpwi r0, 1 -/* 80164F28 00161E88 40 82 01 44 */ bne lbl_8016506C -/* 80164F2C 00161E8C 88 1E 08 34 */ lbz r0, 0x834(r30) -/* 80164F30 00161E90 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f -/* 80164F34 00161E94 41 82 00 38 */ beq lbl_80164F6C -/* 80164F38 00161E98 C0 42 9F B4 */ lfs f2, lbl_805ABCD4@sda21(r2) -/* 80164F3C 00161E9C C0 3E 05 DC */ lfs f1, 0x5dc(r30) -/* 80164F40 00161EA0 C0 0D 8D 20 */ lfs f0, lbl_805A78E0@sda21(r13) -/* 80164F44 00161EA4 EC 22 0F FA */ fmadds f1, f2, f31, f1 -/* 80164F48 00161EA8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80164F4C 00161EAC D0 21 00 40 */ stfs f1, 0x40(r1) -/* 80164F50 00161EB0 40 80 00 0C */ bge lbl_80164F5C -/* 80164F54 00161EB4 38 61 00 40 */ addi r3, r1, 0x40 -/* 80164F58 00161EB8 48 00 00 08 */ b lbl_80164F60 -lbl_80164F5C: -/* 80164F5C 00161EBC 38 6D 8D 20 */ addi r3, r13, lbl_805A78E0@sda21 -lbl_80164F60: -/* 80164F60 00161EC0 C0 03 00 00 */ lfs f0, 0(r3) -/* 80164F64 00161EC4 D0 1E 05 DC */ stfs f0, 0x5dc(r30) -/* 80164F68 00161EC8 48 00 00 34 */ b lbl_80164F9C -lbl_80164F6C: -/* 80164F6C 00161ECC C0 42 9F B4 */ lfs f2, lbl_805ABCD4@sda21(r2) -/* 80164F70 00161ED0 C0 3E 05 DC */ lfs f1, 0x5dc(r30) -/* 80164F74 00161ED4 C0 0D 8D 24 */ lfs f0, lbl_805A78E4@sda21(r13) -/* 80164F78 00161ED8 EC 22 0F FC */ fnmsubs f1, f2, f31, f1 -/* 80164F7C 00161EDC FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 80164F80 00161EE0 D0 21 00 3C */ stfs f1, 0x3c(r1) -/* 80164F84 00161EE4 40 80 00 0C */ bge lbl_80164F90 -/* 80164F88 00161EE8 38 61 00 3C */ addi r3, r1, 0x3c -/* 80164F8C 00161EEC 48 00 00 08 */ b lbl_80164F94 -lbl_80164F90: -/* 80164F90 00161EF0 38 6D 8D 24 */ addi r3, r13, lbl_805A78E4@sda21 -lbl_80164F94: -/* 80164F94 00161EF4 C0 03 00 00 */ lfs f0, 0(r3) -/* 80164F98 00161EF8 D0 1E 05 DC */ stfs f0, 0x5dc(r30) -lbl_80164F9C: -/* 80164F9C 00161EFC C0 3E 05 E8 */ lfs f1, 0x5e8(r30) -/* 80164FA0 00161F00 C0 0D 8D 28 */ lfs f0, lbl_805A78E8@sda21(r13) -/* 80164FA4 00161F04 EC 21 F8 28 */ fsubs f1, f1, f31 -/* 80164FA8 00161F08 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 80164FAC 00161F0C D0 21 00 38 */ stfs f1, 0x38(r1) -/* 80164FB0 00161F10 40 80 00 0C */ bge lbl_80164FBC -/* 80164FB4 00161F14 38 61 00 38 */ addi r3, r1, 0x38 -/* 80164FB8 00161F18 48 00 00 08 */ b lbl_80164FC0 -lbl_80164FBC: -/* 80164FBC 00161F1C 38 6D 8D 28 */ addi r3, r13, lbl_805A78E8@sda21 -lbl_80164FC0: -/* 80164FC0 00161F20 C0 03 00 00 */ lfs f0, 0(r3) -/* 80164FC4 00161F24 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 80164FC8 00161F28 D0 1E 05 E8 */ stfs f0, 0x5e8(r30) -/* 80164FCC 00161F2C C0 02 9F 90 */ lfs f0, lbl_805ABCB0@sda21(r2) -/* 80164FD0 00161F30 C0 5E 05 DC */ lfs f2, 0x5dc(r30) -/* 80164FD4 00161F34 EC 22 08 28 */ fsubs f1, f2, f1 -/* 80164FD8 00161F38 FC 20 0A 10 */ fabs f1, f1 -/* 80164FDC 00161F3C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80164FE0 00161F40 41 80 00 68 */ blt lbl_80165048 -/* 80164FE4 00161F44 80 1E 07 D0 */ lwz r0, 0x7d0(r30) -/* 80164FE8 00161F48 28 00 00 00 */ cmplwi r0, 0 -/* 80164FEC 00161F4C 40 82 00 80 */ bne lbl_8016506C -/* 80164FF0 00161F50 88 1E 04 00 */ lbz r0, 0x400(r30) -/* 80164FF4 00161F54 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 80164FF8 00161F58 41 82 00 74 */ beq lbl_8016506C -/* 80164FFC 00161F5C 81 5E 00 04 */ lwz r10, 4(r30) -/* 80165000 00161F60 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80165004 00161F64 C0 5E 00 60 */ lfs f2, 0x60(r30) -/* 80165008 00161F68 38 C3 66 A0 */ addi r6, r3, skZero3f@l -/* 8016500C 00161F6C C0 3E 00 50 */ lfs f1, 0x50(r30) -/* 80165010 00161F70 38 61 00 34 */ addi r3, r1, 0x34 -/* 80165014 00161F74 C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 80165018 00161F78 38 A1 00 D0 */ addi r5, r1, 0xd0 -/* 8016501C 00161F7C A9 22 C5 FA */ lha r9, lbl_805AE31A@sda21(r2) -/* 80165020 00161F80 38 80 00 DD */ li r4, 0xdd -/* 80165024 00161F84 D0 01 00 D0 */ stfs f0, 0xd0(r1) -/* 80165028 00161F88 38 E0 00 01 */ li r7, 1 -/* 8016502C 00161F8C 39 00 00 01 */ li r8, 1 -/* 80165030 00161F90 D0 21 00 D4 */ stfs f1, 0xd4(r1) -/* 80165034 00161F94 D0 41 00 D8 */ stfs f2, 0xd8(r1) -/* 80165038 00161F98 48 18 52 79 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi -/* 8016503C 00161F9C 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80165040 00161FA0 90 1E 07 D0 */ stw r0, 0x7d0(r30) -/* 80165044 00161FA4 48 00 00 28 */ b lbl_8016506C -lbl_80165048: -/* 80165048 00161FA8 80 1E 07 D0 */ lwz r0, 0x7d0(r30) -/* 8016504C 00161FAC 28 00 00 00 */ cmplwi r0, 0 -/* 80165050 00161FB0 41 82 00 1C */ beq lbl_8016506C -/* 80165054 00161FB4 80 1E 07 D0 */ lwz r0, 0x7d0(r30) -/* 80165058 00161FB8 38 61 00 30 */ addi r3, r1, 0x30 -/* 8016505C 00161FBC 90 01 00 30 */ stw r0, 0x30(r1) -/* 80165060 00161FC0 48 18 4E 25 */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle -/* 80165064 00161FC4 38 00 00 00 */ li r0, 0 -/* 80165068 00161FC8 90 1E 07 D0 */ stw r0, 0x7d0(r30) -lbl_8016506C: -/* 8016506C 00161FCC FC 20 F8 90 */ fmr f1, f31 -/* 80165070 00161FD0 7F C3 F3 78 */ mr r3, r30 -/* 80165074 00161FD4 7F E4 FB 78 */ mr r4, r31 -/* 80165078 00161FD8 4B FF A1 E5 */ bl sub_8015f25c -/* 8016507C 00161FDC FC 20 F8 90 */ fmr f1, f31 -/* 80165080 00161FE0 7F C3 F3 78 */ mr r3, r30 -/* 80165084 00161FE4 4B FF A0 D5 */ bl sub_8015f158 -/* 80165088 00161FE8 88 1E 08 35 */ lbz r0, 0x835(r30) -/* 8016508C 00161FEC 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 80165090 00161FF0 40 82 00 48 */ bne lbl_801650D8 -/* 80165094 00161FF4 80 BE 00 64 */ lwz r5, 0x64(r30) -/* 80165098 00161FF8 FC 20 F8 90 */ fmr f1, f31 -/* 8016509C 00161FFC C0 02 A0 0C */ lfs f0, lbl_805ABD2C@sda21(r2) -/* 801650A0 00162000 7F E3 FB 78 */ mr r3, r31 -/* 801650A4 00162004 C0 85 00 04 */ lfs f4, 4(r5) -/* 801650A8 00162008 7F C4 F3 78 */ mr r4, r30 -/* 801650AC 0016200C C0 45 00 00 */ lfs f2, 0(r5) -/* 801650B0 00162010 C0 A5 00 08 */ lfs f5, 8(r5) -/* 801650B4 00162014 EC 60 01 32 */ fmuls f3, f0, f4 -/* 801650B8 00162018 D0 41 00 C4 */ stfs f2, 0xc4(r1) -/* 801650BC 0016201C 38 A0 00 08 */ li r5, 8 -/* 801650C0 00162020 C0 42 9F 78 */ lfs f2, lbl_805ABC98@sda21(r2) -/* 801650C4 00162024 D0 81 00 C8 */ stfs f4, 0xc8(r1) -/* 801650C8 00162028 C0 82 A0 10 */ lfs f4, lbl_805ABD30@sda21(r2) -/* 801650CC 0016202C D0 A1 00 CC */ stfs f5, 0xcc(r1) -/* 801650D0 00162030 C0 A2 9F 80 */ lfs f5, lbl_805ABCA0@sda21(r2) -/* 801650D4 00162034 48 01 AA B1 */ bl sub_8017fb84 -lbl_801650D8: -/* 801650D8 00162038 C0 3E 06 6C */ lfs f1, 0x66c(r30) -/* 801650DC 0016203C C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 801650E0 00162040 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801650E4 00162044 4C 40 13 82 */ cror 2, 0, 2 -/* 801650E8 00162048 40 82 00 7C */ bne lbl_80165164 -/* 801650EC 0016204C 80 AD 8D 2C */ lwz r5, lbl_805A78EC@sda21(r13) -/* 801650F0 00162050 38 60 00 00 */ li r3, 0 -/* 801650F4 00162054 38 80 00 01 */ li r4, 1 -/* 801650F8 00162058 48 22 4D FD */ bl __shl2i -/* 801650FC 0016205C 39 00 00 00 */ li r8, 0 -/* 80165100 00162060 38 00 00 01 */ li r0, 1 -/* 80165104 00162064 90 81 01 8C */ stw r4, 0x18c(r1) -/* 80165108 00162068 3C 80 80 5A */ lis r4, lbl_805A6700@ha -/* 8016510C 0016206C 38 C4 67 00 */ addi r6, r4, lbl_805A6700@l -/* 80165110 00162070 C0 22 9F EC */ lfs f1, lbl_805ABD0C@sda21(r2) -/* 80165114 00162074 90 61 01 88 */ stw r3, 0x188(r1) -/* 80165118 00162078 7F E4 FB 78 */ mr r4, r31 -/* 8016511C 0016207C 38 61 01 B8 */ addi r3, r1, 0x1b8 -/* 80165120 00162080 38 A1 00 B8 */ addi r5, r1, 0xb8 -/* 80165124 00162084 91 01 01 94 */ stw r8, 0x194(r1) -/* 80165128 00162088 38 E1 01 88 */ addi r7, r1, 0x188 -/* 8016512C 0016208C 91 01 01 90 */ stw r8, 0x190(r1) -/* 80165130 00162090 90 01 01 98 */ stw r0, 0x198(r1) -/* 80165134 00162094 C0 7E 00 60 */ lfs f3, 0x60(r30) -/* 80165138 00162098 C0 5E 00 50 */ lfs f2, 0x50(r30) -/* 8016513C 0016209C C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 80165140 001620A0 D0 01 00 B8 */ stfs f0, 0xb8(r1) -/* 80165144 001620A4 D0 41 00 BC */ stfs f2, 0xbc(r1) -/* 80165148 001620A8 D0 61 00 C0 */ stfs f3, 0xc0(r1) -/* 8016514C 001620AC 4B EE 7E 4D */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter -/* 80165150 001620B0 C0 21 01 B8 */ lfs f1, 0x1b8(r1) -/* 80165154 001620B4 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 80165158 001620B8 D0 3E 06 68 */ stfs f1, 0x668(r30) -/* 8016515C 001620BC D0 1E 06 6C */ stfs f0, 0x66c(r30) -/* 80165160 001620C0 48 00 00 0C */ b lbl_8016516C -lbl_80165164: -/* 80165164 001620C4 EC 01 F8 28 */ fsubs f0, f1, f31 -/* 80165168 001620C8 D0 1E 06 6C */ stfs f0, 0x66c(r30) -lbl_8016516C: -/* 8016516C 001620CC 88 1E 04 00 */ lbz r0, 0x400(r30) -/* 80165170 001620D0 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 80165174 001620D4 41 82 02 88 */ beq lbl_801653FC -/* 80165178 001620D8 88 1E 08 35 */ lbz r0, 0x835(r30) -/* 8016517C 001620DC 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 80165180 001620E0 41 82 02 7C */ beq lbl_801653FC -/* 80165184 001620E4 38 00 00 00 */ li r0, 0 -/* 80165188 001620E8 7F C4 F3 78 */ mr r4, r30 -/* 8016518C 001620EC 90 01 01 E8 */ stw r0, 0x1e8(r1) -/* 80165190 001620F0 38 61 01 70 */ addi r3, r1, 0x170 -/* 80165194 001620F4 4B FB 57 99 */ bl GetBoundingBox__13CPhysicsActorCFv -/* 80165198 001620F8 3C 60 80 5A */ lis r3, lbl_805A6700@ha -/* 8016519C 001620FC C1 21 01 70 */ lfs f9, 0x170(r1) -/* 801651A0 00162100 3B A3 67 00 */ addi r29, r3, lbl_805A6700@l -/* 801651A4 00162104 C1 01 01 74 */ lfs f8, 0x174(r1) -/* 801651A8 00162108 C0 E1 01 78 */ lfs f7, 0x178(r1) -/* 801651AC 0016210C 38 61 01 A0 */ addi r3, r1, 0x1a0 -/* 801651B0 00162110 C0 C1 01 7C */ lfs f6, 0x17c(r1) -/* 801651B4 00162114 38 81 00 AC */ addi r4, r1, 0xac -/* 801651B8 00162118 C0 A1 01 80 */ lfs f5, 0x180(r1) -/* 801651BC 0016211C C0 81 01 84 */ lfs f4, 0x184(r1) -/* 801651C0 00162120 C0 62 A0 14 */ lfs f3, lbl_805ABD34@sda21(r2) -/* 801651C4 00162124 C0 5D 00 04 */ lfs f2, 4(r29) -/* 801651C8 00162128 C0 3D 00 08 */ lfs f1, 8(r29) -/* 801651CC 0016212C C0 1D 00 00 */ lfs f0, 0(r29) -/* 801651D0 00162130 ED 43 00 B2 */ fmuls f10, f3, f2 -/* 801651D4 00162134 EC 43 00 72 */ fmuls f2, f3, f1 -/* 801651D8 00162138 D1 21 01 A0 */ stfs f9, 0x1a0(r1) -/* 801651DC 0016213C EC 03 00 32 */ fmuls f0, f3, f0 -/* 801651E0 00162140 D1 01 01 A4 */ stfs f8, 0x1a4(r1) -/* 801651E4 00162144 D0 E1 01 A8 */ stfs f7, 0x1a8(r1) -/* 801651E8 00162148 D0 C1 01 AC */ stfs f6, 0x1ac(r1) -/* 801651EC 0016214C D0 A1 01 B0 */ stfs f5, 0x1b0(r1) -/* 801651F0 00162150 D0 81 01 B4 */ stfs f4, 0x1b4(r1) -/* 801651F4 00162154 C0 DE 00 60 */ lfs f6, 0x60(r30) -/* 801651F8 00162158 C0 BE 00 50 */ lfs f5, 0x50(r30) -/* 801651FC 0016215C C0 3E 00 40 */ lfs f1, 0x40(r30) -/* 80165200 00162160 EC 66 10 2A */ fadds f3, f6, f2 -/* 80165204 00162164 EC 85 50 2A */ fadds f4, f5, f10 -/* 80165208 00162168 D0 01 00 94 */ stfs f0, 0x94(r1) -/* 8016520C 0016216C EC 01 00 2A */ fadds f0, f1, f0 -/* 80165210 00162170 D1 41 00 98 */ stfs f10, 0x98(r1) -/* 80165214 00162174 D0 41 00 9C */ stfs f2, 0x9c(r1) -/* 80165218 00162178 D0 21 00 A0 */ stfs f1, 0xa0(r1) -/* 8016521C 0016217C D0 A1 00 A4 */ stfs f5, 0xa4(r1) -/* 80165220 00162180 D0 C1 00 A8 */ stfs f6, 0xa8(r1) -/* 80165224 00162184 D0 01 00 AC */ stfs f0, 0xac(r1) -/* 80165228 00162188 D0 81 00 B0 */ stfs f4, 0xb0(r1) -/* 8016522C 0016218C D0 61 00 B4 */ stfs f3, 0xb4(r1) -/* 80165230 00162190 48 1D 28 D9 */ bl AccumulateBounds__6CAABoxFRC9CVector3f -/* 80165234 00162194 80 AD 8D 30 */ lwz r5, lbl_805A78F0@sda21(r13) -/* 80165238 00162198 38 60 00 00 */ li r3, 0 -/* 8016523C 0016219C 38 80 00 01 */ li r4, 1 -/* 80165240 001621A0 48 22 4C B5 */ bl __shl2i -/* 80165244 001621A4 38 A0 00 00 */ li r5, 0 -/* 80165248 001621A8 38 00 00 01 */ li r0, 1 -/* 8016524C 001621AC 90 81 01 44 */ stw r4, 0x144(r1) -/* 80165250 001621B0 7F C4 F3 78 */ mr r4, r30 -/* 80165254 001621B4 90 61 01 40 */ stw r3, 0x140(r1) -/* 80165258 001621B8 38 61 01 58 */ addi r3, r1, 0x158 -/* 8016525C 001621BC 90 A1 01 4C */ stw r5, 0x14c(r1) -/* 80165260 001621C0 90 A1 01 48 */ stw r5, 0x148(r1) -/* 80165264 001621C4 90 01 01 50 */ stw r0, 0x150(r1) -/* 80165268 001621C8 4B FB 56 C5 */ bl GetBoundingBox__13CPhysicsActorCFv -/* 8016526C 001621CC 7F E3 FB 78 */ mr r3, r31 -/* 80165270 001621D0 7F C7 F3 78 */ mr r7, r30 -/* 80165274 001621D4 38 81 01 E8 */ addi r4, r1, 0x1e8 -/* 80165278 001621D8 38 A1 01 58 */ addi r5, r1, 0x158 -/* 8016527C 001621DC 38 C1 01 40 */ addi r6, r1, 0x140 -/* 80165280 001621E0 4B EE 74 A1 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" -/* 80165284 001621E4 3B 81 01 EC */ addi r28, r1, 0x1ec -/* 80165288 001621E8 7F 9B E3 78 */ mr r27, r28 -/* 8016528C 001621EC 48 00 01 08 */ b lbl_80165394 -lbl_80165290: -/* 80165290 001621F0 A0 1B 00 00 */ lhz r0, 0(r27) -/* 80165294 001621F4 7F E3 FB 78 */ mr r3, r31 -/* 80165298 001621F8 38 81 00 0C */ addi r4, r1, 0xc -/* 8016529C 001621FC B0 01 00 0C */ sth r0, 0xc(r1) -/* 801652A0 00162200 4B EE 73 05 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 801652A4 00162204 7C 64 1B 78 */ mr r4, r3 -/* 801652A8 00162208 38 61 00 50 */ addi r3, r1, 0x50 -/* 801652AC 0016220C 4B F4 15 B5 */ bl "__ct__26TCastToPtr<12CScriptWater>FP7CEntity" -/* 801652B0 00162210 80 83 00 04 */ lwz r4, 4(r3) -/* 801652B4 00162214 28 04 00 00 */ cmplwi r4, 0 -/* 801652B8 00162218 41 82 00 D8 */ beq lbl_80165390 -/* 801652BC 0016221C C3 DE 00 60 */ lfs f30, 0x60(r30) -/* 801652C0 00162220 38 61 01 24 */ addi r3, r1, 0x124 -/* 801652C4 00162224 C0 3E 00 50 */ lfs f1, 0x50(r30) -/* 801652C8 00162228 C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 801652CC 0016222C D0 21 00 8C */ stfs f1, 0x8c(r1) -/* 801652D0 00162230 D0 01 00 88 */ stfs f0, 0x88(r1) -/* 801652D4 00162234 D3 C1 00 90 */ stfs f30, 0x90(r1) -/* 801652D8 00162238 4B F1 13 F5 */ bl GetTriggerBoundsWR__14CScriptTriggerCFv -/* 801652DC 0016223C C0 21 01 38 */ lfs f1, 0x138(r1) -/* 801652E0 00162240 C0 02 9F B4 */ lfs f0, lbl_805ABCD4@sda21(r2) -/* 801652E4 00162244 EC 21 F0 28 */ fsubs f1, f1, f30 -/* 801652E8 00162248 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801652EC 0016224C 40 80 00 A4 */ bge lbl_80165390 -/* 801652F0 00162250 C8 02 A0 20 */ lfd f0, lbl_805ABD40@sda21(r2) -/* 801652F4 00162254 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801652F8 00162258 40 80 00 0C */ bge lbl_80165304 -/* 801652FC 0016225C C0 62 A0 18 */ lfs f3, lbl_805ABD38@sda21(r2) -/* 80165300 00162260 48 00 00 08 */ b lbl_80165308 -lbl_80165304: -/* 80165304 00162264 C0 62 A0 14 */ lfs f3, lbl_805ABD34@sda21(r2) -lbl_80165308: -/* 80165308 00162268 3C 60 80 5A */ lis r3, lbl_805A6700@ha -/* 8016530C 0016226C C0 5D 00 04 */ lfs f2, 4(r29) -/* 80165310 00162270 C0 03 67 00 */ lfs f0, lbl_805A6700@l(r3) -/* 80165314 00162274 38 61 00 70 */ addi r3, r1, 0x70 -/* 80165318 00162278 C0 3D 00 08 */ lfs f1, 8(r29) -/* 8016531C 0016227C EC 5F 00 B2 */ fmuls f2, f31, f2 -/* 80165320 00162280 EC 1F 00 32 */ fmuls f0, f31, f0 -/* 80165324 00162284 38 9E 00 34 */ addi r4, r30, 0x34 -/* 80165328 00162288 EC 3F 00 72 */ fmuls f1, f31, f1 -/* 8016532C 0016228C 38 A1 01 18 */ addi r5, r1, 0x118 -/* 80165330 00162290 EC 43 00 B2 */ fmuls f2, f3, f2 -/* 80165334 00162294 EC 03 00 32 */ fmuls f0, f3, f0 -/* 80165338 00162298 EC 23 00 72 */ fmuls f1, f3, f1 -/* 8016533C 0016229C D0 41 01 1C */ stfs f2, 0x11c(r1) -/* 80165340 001622A0 D0 01 01 18 */ stfs f0, 0x118(r1) -/* 80165344 001622A4 D0 21 01 20 */ stfs f1, 0x120(r1) -/* 80165348 001622A8 48 1A D6 DD */ bl TransposeRotate__12CTransform4fCFRC9CVector3f -/* 8016534C 001622AC FC 20 F8 90 */ fmr f1, f31 -/* 80165350 001622B0 7F C4 F3 78 */ mr r4, r30 -/* 80165354 001622B4 38 61 00 7C */ addi r3, r1, 0x7c -/* 80165358 001622B8 38 A1 00 70 */ addi r5, r1, 0x70 -/* 8016535C 001622BC 4B FB 5C AD */ bl GetMoveToORImpulseWR__13CPhysicsActorCFRC9CVector3ff -/* 80165360 001622C0 C0 41 00 7C */ lfs f2, 0x7c(r1) -/* 80165364 001622C4 C0 21 00 80 */ lfs f1, 0x80(r1) -/* 80165368 001622C8 C0 01 00 84 */ lfs f0, 0x84(r1) -/* 8016536C 001622CC D0 41 01 0C */ stfs f2, 0x10c(r1) -/* 80165370 001622D0 D0 21 01 10 */ stfs f1, 0x110(r1) -/* 80165374 001622D4 D0 01 01 14 */ stfs f0, 0x114(r1) -/* 80165378 001622D8 4B EB 61 BD */ bl Identity__10CAxisAngleFv -/* 8016537C 001622DC 7C 65 1B 78 */ mr r5, r3 -/* 80165380 001622E0 7F C3 F3 78 */ mr r3, r30 -/* 80165384 001622E4 38 81 01 0C */ addi r4, r1, 0x10c -/* 80165388 001622E8 4B FB 70 11 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle -/* 8016538C 001622EC 48 00 00 1C */ b lbl_801653A8 -lbl_80165390: -/* 80165390 001622F0 3B 7B 00 02 */ addi r27, r27, 2 -lbl_80165394: -/* 80165394 001622F4 80 01 01 E8 */ lwz r0, 0x1e8(r1) -/* 80165398 001622F8 54 00 08 3C */ slwi r0, r0, 1 -/* 8016539C 001622FC 7C 1C 02 14 */ add r0, r28, r0 -/* 801653A0 00162300 7C 1B 00 40 */ cmplw r27, r0 -/* 801653A4 00162304 41 80 FE EC */ blt lbl_80165290 -lbl_801653A8: -/* 801653A8 00162308 80 A1 01 E8 */ lwz r5, 0x1e8(r1) -/* 801653AC 0016230C 38 60 00 00 */ li r3, 0 -/* 801653B0 00162310 2C 05 00 00 */ cmpwi r5, 0 -/* 801653B4 00162314 40 81 00 40 */ ble lbl_801653F4 -/* 801653B8 00162318 2C 05 00 08 */ cmpwi r5, 8 -/* 801653BC 0016231C 38 85 FF F8 */ addi r4, r5, -8 -/* 801653C0 00162320 40 81 00 20 */ ble lbl_801653E0 -/* 801653C4 00162324 38 04 00 07 */ addi r0, r4, 7 -/* 801653C8 00162328 54 00 E8 FE */ srwi r0, r0, 3 -/* 801653CC 0016232C 7C 09 03 A6 */ mtctr r0 -/* 801653D0 00162330 2C 04 00 00 */ cmpwi r4, 0 -/* 801653D4 00162334 40 81 00 0C */ ble lbl_801653E0 -lbl_801653D8: -/* 801653D8 00162338 38 63 00 08 */ addi r3, r3, 8 -/* 801653DC 0016233C 42 00 FF FC */ bdnz lbl_801653D8 -lbl_801653E0: -/* 801653E0 00162340 7C 03 28 50 */ subf r0, r3, r5 -/* 801653E4 00162344 7C 09 03 A6 */ mtctr r0 -/* 801653E8 00162348 7C 03 28 00 */ cmpw r3, r5 -/* 801653EC 0016234C 40 80 00 08 */ bge lbl_801653F4 -lbl_801653F0: -/* 801653F0 00162350 42 00 00 00 */ bdnz lbl_801653F0 -lbl_801653F4: -/* 801653F4 00162354 38 00 00 00 */ li r0, 0 -/* 801653F8 00162358 90 01 01 E8 */ stw r0, 0x1e8(r1) -lbl_801653FC: -/* 801653FC 0016235C 88 1E 04 00 */ lbz r0, 0x400(r30) -/* 80165400 00162360 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 80165404 00162364 41 82 00 A0 */ beq lbl_801654A4 -/* 80165408 00162368 C0 3E 06 68 */ lfs f1, 0x668(r30) -/* 8016540C 0016236C C0 1E 06 64 */ lfs f0, 0x664(r30) -/* 80165410 00162370 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80165414 00162374 40 80 00 90 */ bge lbl_801654A4 -/* 80165418 00162378 3C 60 80 5A */ lis r3, lbl_805A66F4@ha -/* 8016541C 0016237C C0 62 9F 7C */ lfs f3, lbl_805ABC9C@sda21(r2) -/* 80165420 00162380 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l -/* 80165424 00162384 38 61 00 58 */ addi r3, r1, 0x58 -/* 80165428 00162388 C0 46 00 00 */ lfs f2, 0(r6) -/* 8016542C 0016238C 38 9E 00 34 */ addi r4, r30, 0x34 -/* 80165430 00162390 C0 26 00 04 */ lfs f1, 4(r6) -/* 80165434 00162394 38 A1 01 00 */ addi r5, r1, 0x100 -/* 80165438 00162398 C0 06 00 08 */ lfs f0, 8(r6) -/* 8016543C 0016239C EC 43 00 B2 */ fmuls f2, f3, f2 -/* 80165440 001623A0 EC 23 00 72 */ fmuls f1, f3, f1 -/* 80165444 001623A4 EC 03 00 32 */ fmuls f0, f3, f0 -/* 80165448 001623A8 EC 5F 00 B2 */ fmuls f2, f31, f2 -/* 8016544C 001623AC EC 3F 00 72 */ fmuls f1, f31, f1 -/* 80165450 001623B0 EC 1F 00 32 */ fmuls f0, f31, f0 -/* 80165454 001623B4 D0 41 01 00 */ stfs f2, 0x100(r1) -/* 80165458 001623B8 D0 21 01 04 */ stfs f1, 0x104(r1) -/* 8016545C 001623BC D0 01 01 08 */ stfs f0, 0x108(r1) -/* 80165460 001623C0 48 1A D5 C5 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f -/* 80165464 001623C4 FC 20 F8 90 */ fmr f1, f31 -/* 80165468 001623C8 7F C4 F3 78 */ mr r4, r30 -/* 8016546C 001623CC 38 61 00 64 */ addi r3, r1, 0x64 -/* 80165470 001623D0 38 A1 00 58 */ addi r5, r1, 0x58 -/* 80165474 001623D4 4B FB 5B 95 */ bl GetMoveToORImpulseWR__13CPhysicsActorCFRC9CVector3ff -/* 80165478 001623D8 C0 41 00 64 */ lfs f2, 0x64(r1) -/* 8016547C 001623DC C0 21 00 68 */ lfs f1, 0x68(r1) -/* 80165480 001623E0 C0 01 00 6C */ lfs f0, 0x6c(r1) -/* 80165484 001623E4 D0 41 00 F4 */ stfs f2, 0xf4(r1) -/* 80165488 001623E8 D0 21 00 F8 */ stfs f1, 0xf8(r1) -/* 8016548C 001623EC D0 01 00 FC */ stfs f0, 0xfc(r1) -/* 80165490 001623F0 4B EB 60 A5 */ bl Identity__10CAxisAngleFv -/* 80165494 001623F4 7C 65 1B 78 */ mr r5, r3 -/* 80165498 001623F8 7F C3 F3 78 */ mr r3, r30 -/* 8016549C 001623FC 38 81 00 F4 */ addi r4, r1, 0xf4 -/* 801654A0 00162400 4B FB 6E F9 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle -lbl_801654A4: -/* 801654A4 00162404 88 7E 04 00 */ lbz r3, 0x400(r30) -/* 801654A8 00162408 88 1E 00 E7 */ lbz r0, 0xe7(r30) -/* 801654AC 0016240C 54 64 D7 FE */ rlwinm r4, r3, 0x1a, 0x1f, 0x1f -/* 801654B0 00162410 7C 64 00 D0 */ neg r3, r4 -/* 801654B4 00162414 7C 63 23 78 */ or r3, r3, r4 -/* 801654B8 00162418 50 60 0F FE */ rlwimi r0, r3, 1, 0x1f, 0x1f -/* 801654BC 0016241C 98 1E 00 E7 */ stb r0, 0xe7(r30) -lbl_801654C0: -/* 801654C0 00162420 E3 E1 0A 28 */ psq_l f31, -1496(r1), 0, qr0 -/* 801654C4 00162424 CB E1 0A 20 */ lfd f31, 0xa20(r1) -/* 801654C8 00162428 E3 C1 0A 18 */ psq_l f30, -1512(r1), 0, qr0 -/* 801654CC 0016242C CB C1 0A 10 */ lfd f30, 0xa10(r1) -/* 801654D0 00162430 BB 61 09 FC */ lmw r27, 0x9fc(r1) -/* 801654D4 00162434 80 01 0A 34 */ lwz r0, 0xa34(r1) -/* 801654D8 00162438 7C 08 03 A6 */ mtlr r0 -/* 801654DC 0016243C 38 21 0A 30 */ addi r1, r1, 0xa30 -/* 801654E0 00162440 4E 80 00 20 */ blr - -.global GetDamageVulnerability__6CDroneCFRC9CVector3fRC9CVector3fRC11CDamageInfo -GetDamageVulnerability__6CDroneCFRC9CVector3fRC9CVector3fRC11CDamageInfo: -/* 801654E4 00162444 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 801654E8 00162448 7C 08 02 A6 */ mflr r0 -/* 801654EC 0016244C 90 01 00 24 */ stw r0, 0x24(r1) -/* 801654F0 00162450 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 801654F4 00162454 7C 7F 1B 78 */ mr r31, r3 -/* 801654F8 00162458 80 03 03 FC */ lwz r0, 0x3fc(r3) -/* 801654FC 0016245C 2C 00 00 01 */ cmpwi r0, 1 -/* 80165500 00162460 40 82 00 4C */ bne lbl_8016554C -/* 80165504 00162464 C0 45 00 08 */ lfs f2, 8(r5) -/* 80165508 00162468 38 81 00 08 */ addi r4, r1, 8 -/* 8016550C 0016246C C0 25 00 04 */ lfs f1, 4(r5) -/* 80165510 00162470 C0 05 00 00 */ lfs f0, 0(r5) -/* 80165514 00162474 FC 40 10 50 */ fneg f2, f2 -/* 80165518 00162478 FC 20 08 50 */ fneg f1, f1 -/* 8016551C 0016247C FC 00 00 50 */ fneg f0, f0 -/* 80165520 00162480 D0 41 00 10 */ stfs f2, 0x10(r1) -/* 80165524 00162484 D0 01 00 08 */ stfs f0, 8(r1) -/* 80165528 00162488 D0 21 00 0C */ stfs f1, 0xc(r1) -/* 8016552C 0016248C 48 00 00 C1 */ bl sub_801655ec -/* 80165530 00162490 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80165534 00162494 41 82 00 18 */ beq lbl_8016554C -/* 80165538 00162498 C0 02 9F 7C */ lfs f0, lbl_805ABC9C@sda21(r2) -/* 8016553C 0016249C 3C 60 80 57 */ lis r3, lbl_8056D780@ha -/* 80165540 001624A0 38 63 D7 80 */ addi r3, r3, lbl_8056D780@l -/* 80165544 001624A4 D0 1F 05 E8 */ stfs f0, 0x5e8(r31) -/* 80165548 001624A8 48 00 00 0C */ b lbl_80165554 -lbl_8016554C: -/* 8016554C 001624AC 7F E3 FB 78 */ mr r3, r31 -/* 80165550 001624B0 4B F3 D8 21 */ bl GetDamageVulnerability__3CAiCFv -lbl_80165554: -/* 80165554 001624B4 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80165558 001624B8 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8016555C 001624BC 7C 08 03 A6 */ mtlr r0 -/* 80165560 001624C0 38 21 00 20 */ addi r1, r1, 0x20 -/* 80165564 001624C4 4E 80 00 20 */ blr - -.global GetCollisionResponseType__6CDroneCFRC9CVector3fRC9CVector3fRC11CWeaponModei -GetCollisionResponseType__6CDroneCFRC9CVector3fRC9CVector3fRC11CWeaponModei: -/* 80165568 001624C8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8016556C 001624CC 7C 08 02 A6 */ mflr r0 -/* 80165570 001624D0 90 01 00 24 */ stw r0, 0x24(r1) -/* 80165574 001624D4 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80165578 001624D8 3B E0 00 24 */ li r31, 0x24 -/* 8016557C 001624DC 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80165580 001624E0 7C 7E 1B 78 */ mr r30, r3 -/* 80165584 001624E4 80 03 03 FC */ lwz r0, 0x3fc(r3) -/* 80165588 001624E8 2C 00 00 01 */ cmpwi r0, 1 -/* 8016558C 001624EC 40 82 00 44 */ bne lbl_801655D0 -/* 80165590 001624F0 C0 45 00 08 */ lfs f2, 8(r5) -/* 80165594 001624F4 38 81 00 08 */ addi r4, r1, 8 -/* 80165598 001624F8 C0 25 00 04 */ lfs f1, 4(r5) -/* 8016559C 001624FC C0 05 00 00 */ lfs f0, 0(r5) -/* 801655A0 00162500 FC 40 10 50 */ fneg f2, f2 -/* 801655A4 00162504 FC 20 08 50 */ fneg f1, f1 -/* 801655A8 00162508 FC 00 00 50 */ fneg f0, f0 -/* 801655AC 0016250C D0 41 00 10 */ stfs f2, 0x10(r1) -/* 801655B0 00162510 D0 01 00 08 */ stfs f0, 8(r1) -/* 801655B4 00162514 D0 21 00 0C */ stfs f1, 0xc(r1) -/* 801655B8 00162518 48 00 00 35 */ bl sub_801655ec -/* 801655BC 0016251C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801655C0 00162520 41 82 00 10 */ beq lbl_801655D0 -/* 801655C4 00162524 C0 02 9F 7C */ lfs f0, lbl_805ABC9C@sda21(r2) -/* 801655C8 00162528 3B E0 00 56 */ li r31, 0x56 -/* 801655CC 0016252C D0 1E 05 E8 */ stfs f0, 0x5e8(r30) -lbl_801655D0: -/* 801655D0 00162530 80 01 00 24 */ lwz r0, 0x24(r1) -/* 801655D4 00162534 7F E3 FB 78 */ mr r3, r31 -/* 801655D8 00162538 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 801655DC 0016253C 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 801655E0 00162540 7C 08 03 A6 */ mtlr r0 -/* 801655E4 00162544 38 21 00 20 */ addi r1, r1, 0x20 -/* 801655E8 00162548 4E 80 00 20 */ blr - -.global sub_801655ec -sub_801655ec: -/* 801655EC 0016254C 94 21 FF 90 */ stwu r1, -0x70(r1) -/* 801655F0 00162550 7C 08 02 A6 */ mflr r0 -/* 801655F4 00162554 90 01 00 74 */ stw r0, 0x74(r1) -/* 801655F8 00162558 93 E1 00 6C */ stw r31, 0x6c(r1) -/* 801655FC 0016255C 7C 9F 23 78 */ mr r31, r4 -/* 80165600 00162560 93 C1 00 68 */ stw r30, 0x68(r1) -/* 80165604 00162564 7C 7E 1B 78 */ mr r30, r3 -/* 80165608 00162568 80 03 03 FC */ lwz r0, 0x3fc(r3) -/* 8016560C 0016256C 2C 00 00 01 */ cmpwi r0, 1 -/* 80165610 00162570 41 82 00 0C */ beq lbl_8016561C -/* 80165614 00162574 38 60 00 00 */ li r3, 0 -/* 80165618 00162578 48 00 00 A4 */ b lbl_801656BC -lbl_8016561C: -/* 8016561C 0016257C C0 5E 05 DC */ lfs f2, 0x5dc(r30) -/* 80165620 00162580 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 80165624 00162584 C0 02 9F 90 */ lfs f0, lbl_805ABCB0@sda21(r2) -/* 80165628 00162588 EC 22 08 28 */ fsubs f1, f2, f1 -/* 8016562C 0016258C FC 20 0A 10 */ fabs f1, f1 -/* 80165630 00162590 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80165634 00162594 40 80 00 0C */ bge lbl_80165640 -/* 80165638 00162598 38 60 00 00 */ li r3, 0 -/* 8016563C 0016259C 48 00 00 80 */ b lbl_801656BC -lbl_80165640: -/* 80165640 001625A0 3C 80 80 3D */ lis r4, lbl_803D0398@ha -/* 80165644 001625A4 38 61 00 14 */ addi r3, r1, 0x14 -/* 80165648 001625A8 38 84 03 98 */ addi r4, r4, lbl_803D0398@l -/* 8016564C 001625AC 38 84 00 2A */ addi r4, r4, 0x2a -/* 80165650 001625B0 4B E9 F6 69 */ bl string_l__4rstlFPCc -/* 80165654 001625B4 7F E4 FB 78 */ mr r4, r31 -/* 80165658 001625B8 38 61 00 08 */ addi r3, r1, 8 -/* 8016565C 001625BC 48 1A F1 F5 */ bl AsNormalized__9CVector3fCFv -/* 80165660 001625C0 7F C4 F3 78 */ mr r4, r30 -/* 80165664 001625C4 38 61 00 30 */ addi r3, r1, 0x30 -/* 80165668 001625C8 38 A1 00 14 */ addi r5, r1, 0x14 -/* 8016566C 001625CC 4B F1 33 0D */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80165670 001625D0 C0 81 00 44 */ lfs f4, 0x44(r1) -/* 80165674 001625D4 C0 01 00 0C */ lfs f0, 0xc(r1) -/* 80165678 001625D8 C0 61 00 34 */ lfs f3, 0x34(r1) -/* 8016567C 001625DC EC 04 00 32 */ fmuls f0, f4, f0 -/* 80165680 001625E0 C0 21 00 08 */ lfs f1, 8(r1) -/* 80165684 001625E4 C0 A1 00 54 */ lfs f5, 0x54(r1) -/* 80165688 001625E8 C0 41 00 10 */ lfs f2, 0x10(r1) -/* 8016568C 001625EC EC 23 00 7A */ fmadds f1, f3, f1, f0 -/* 80165690 001625F0 C0 02 A0 28 */ lfs f0, lbl_805ABD48@sda21(r2) -/* 80165694 001625F4 D0 61 00 24 */ stfs f3, 0x24(r1) -/* 80165698 001625F8 EC 25 08 BA */ fmadds f1, f5, f2, f1 -/* 8016569C 001625FC D0 81 00 28 */ stfs f4, 0x28(r1) -/* 801656A0 00162600 D0 A1 00 2C */ stfs f5, 0x2c(r1) -/* 801656A4 00162604 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801656A8 00162608 7C 00 00 26 */ mfcr r0 -/* 801656AC 0016260C 38 61 00 14 */ addi r3, r1, 0x14 -/* 801656B0 00162610 54 1F 17 FE */ rlwinm r31, r0, 2, 0x1f, 0x1f -/* 801656B4 00162614 48 1D 84 2D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 801656B8 00162618 7F E3 FB 78 */ mr r3, r31 -lbl_801656BC: -/* 801656BC 0016261C 80 01 00 74 */ lwz r0, 0x74(r1) -/* 801656C0 00162620 83 E1 00 6C */ lwz r31, 0x6c(r1) -/* 801656C4 00162624 83 C1 00 68 */ lwz r30, 0x68(r1) -/* 801656C8 00162628 7C 08 03 A6 */ mtlr r0 -/* 801656CC 0016262C 38 21 00 70 */ addi r1, r1, 0x70 -/* 801656D0 00162630 4E 80 00 20 */ blr - -.global sub_801656d4 -sub_801656d4: -/* 801656D4 00162634 94 21 F6 F0 */ stwu r1, -0x910(r1) -/* 801656D8 00162638 7C 08 02 A6 */ mflr r0 -/* 801656DC 0016263C 90 01 09 14 */ stw r0, 0x914(r1) -/* 801656E0 00162640 BF 61 08 FC */ stmw r27, 0x8fc(r1) -/* 801656E4 00162644 7C 7D 1B 78 */ mr r29, r3 -/* 801656E8 00162648 7C 9E 23 78 */ mr r30, r4 -/* 801656EC 0016264C 7C BF 2B 78 */ mr r31, r5 -/* 801656F0 00162650 88 0D A4 20 */ lbz r0, lbl_805A8FE0@sda21(r13) -/* 801656F4 00162654 7C 00 07 75 */ extsb. r0, r0 -/* 801656F8 00162658 40 82 00 58 */ bne lbl_80165750 -/* 801656FC 0016265C 80 AD 8D 10 */ lwz r5, lbl_805A78D0@sda21(r13) -/* 80165700 00162660 38 60 00 00 */ li r3, 0 -/* 80165704 00162664 38 80 00 01 */ li r4, 1 -/* 80165708 00162668 48 22 47 ED */ bl __shl2i -/* 8016570C 0016266C 80 AD 8D 0C */ lwz r5, lbl_805A78CC@sda21(r13) -/* 80165710 00162670 7C 9B 23 78 */ mr r27, r4 -/* 80165714 00162674 7C 7C 1B 78 */ mr r28, r3 -/* 80165718 00162678 38 60 00 00 */ li r3, 0 -/* 8016571C 0016267C 38 80 00 01 */ li r4, 1 -/* 80165720 00162680 48 22 47 D5 */ bl __shl2i -/* 80165724 00162684 3C A0 80 47 */ lis r5, lbl_8046C848@ha -/* 80165728 00162688 38 C0 00 03 */ li r6, 3 -/* 8016572C 0016268C 38 A5 C8 48 */ addi r5, r5, lbl_8046C848@l -/* 80165730 00162690 38 00 00 01 */ li r0, 1 -/* 80165734 00162694 90 C1 00 80 */ stw r6, 0x80(r1) -/* 80165738 00162698 90 85 00 04 */ stw r4, 4(r5) -/* 8016573C 0016269C 90 65 00 00 */ stw r3, 0(r5) -/* 80165740 001626A0 93 65 00 0C */ stw r27, 0xc(r5) -/* 80165744 001626A4 93 85 00 08 */ stw r28, 8(r5) -/* 80165748 001626A8 90 C5 00 10 */ stw r6, 0x10(r5) -/* 8016574C 001626AC 98 0D A4 20 */ stb r0, lbl_805A8FE0@sda21(r13) -lbl_80165750: -/* 80165750 001626B0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80165754 001626B4 38 A0 00 00 */ li r5, 0 -/* 80165758 001626B8 C0 DE 00 24 */ lfs f6, 0x24(r30) -/* 8016575C 001626BC 3C 60 80 47 */ lis r3, lbl_8046C848@ha -/* 80165760 001626C0 C0 BE 00 14 */ lfs f5, 0x14(r30) -/* 80165764 001626C4 38 E3 C8 48 */ addi r7, r3, lbl_8046C848@l -/* 80165768 001626C8 C0 5E 00 04 */ lfs f2, 4(r30) -/* 8016576C 001626CC 7F E3 FB 78 */ mr r3, r31 -/* 80165770 001626D0 C0 9E 00 2C */ lfs f4, 0x2c(r30) -/* 80165774 001626D4 7F A8 EB 78 */ mr r8, r29 -/* 80165778 001626D8 C0 7E 00 1C */ lfs f3, 0x1c(r30) -/* 8016577C 001626DC 38 81 00 E8 */ addi r4, r1, 0xe8 -/* 80165780 001626E0 C0 1E 00 0C */ lfs f0, 0xc(r30) -/* 80165784 001626E4 38 C1 00 3C */ addi r6, r1, 0x3c -/* 80165788 001626E8 90 A1 00 E8 */ stw r5, 0xe8(r1) -/* 8016578C 001626EC 38 A1 00 48 */ addi r5, r1, 0x48 -/* 80165790 001626F0 C0 22 A0 2C */ lfs f1, lbl_805ABD4C@sda21(r2) -/* 80165794 001626F4 B0 01 00 20 */ sth r0, 0x20(r1) -/* 80165798 001626F8 D0 41 00 3C */ stfs f2, 0x3c(r1) -/* 8016579C 001626FC D0 A1 00 40 */ stfs f5, 0x40(r1) -/* 801657A0 00162700 D0 C1 00 44 */ stfs f6, 0x44(r1) -/* 801657A4 00162704 D0 01 00 48 */ stfs f0, 0x48(r1) -/* 801657A8 00162708 D0 61 00 4C */ stfs f3, 0x4c(r1) -/* 801657AC 0016270C D0 81 00 50 */ stfs f4, 0x50(r1) -/* 801657B0 00162710 4B EE 6F 29 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" -/* 801657B4 00162714 C0 BE 00 24 */ lfs f5, 0x24(r30) -/* 801657B8 00162718 3C 60 80 47 */ lis r3, lbl_8046C848@ha -/* 801657BC 0016271C C0 9E 00 14 */ lfs f4, 0x14(r30) -/* 801657C0 00162720 39 03 C8 48 */ addi r8, r3, lbl_8046C848@l -/* 801657C4 00162724 C0 3E 00 04 */ lfs f1, 4(r30) -/* 801657C8 00162728 7F E4 FB 78 */ mr r4, r31 -/* 801657CC 0016272C C0 7E 00 2C */ lfs f3, 0x2c(r30) -/* 801657D0 00162730 38 61 00 88 */ addi r3, r1, 0x88 -/* 801657D4 00162734 C0 5E 00 1C */ lfs f2, 0x1c(r30) -/* 801657D8 00162738 38 A1 00 20 */ addi r5, r1, 0x20 -/* 801657DC 0016273C C0 1E 00 0C */ lfs f0, 0xc(r30) -/* 801657E0 00162740 38 C1 00 30 */ addi r6, r1, 0x30 -/* 801657E4 00162744 D0 21 00 24 */ stfs f1, 0x24(r1) -/* 801657E8 00162748 38 E1 00 24 */ addi r7, r1, 0x24 -/* 801657EC 0016274C C0 22 A0 2C */ lfs f1, lbl_805ABD4C@sda21(r2) -/* 801657F0 00162750 39 21 00 E8 */ addi r9, r1, 0xe8 -/* 801657F4 00162754 D0 81 00 28 */ stfs f4, 0x28(r1) -/* 801657F8 00162758 D0 A1 00 2C */ stfs f5, 0x2c(r1) -/* 801657FC 0016275C D0 01 00 30 */ stfs f0, 0x30(r1) -/* 80165800 00162760 D0 41 00 34 */ stfs f2, 0x34(r1) -/* 80165804 00162764 D0 61 00 38 */ stfs f3, 0x38(r1) -/* 80165808 00162768 4B EE 77 BD */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 8016580C 0016276C 88 81 00 A8 */ lbz r4, 0xa8(r1) -/* 80165810 00162770 C0 E1 00 88 */ lfs f7, 0x88(r1) -/* 80165814 00162774 C0 C1 00 8C */ lfs f6, 0x8c(r1) -/* 80165818 00162778 28 04 00 00 */ cmplwi r4, 0 -/* 8016581C 0016277C C0 A1 00 90 */ lfs f5, 0x90(r1) -/* 80165820 00162780 C0 81 00 94 */ lfs f4, 0x94(r1) -/* 80165824 00162784 C0 61 00 98 */ lfs f3, 0x98(r1) -/* 80165828 00162788 C0 41 00 9C */ lfs f2, 0x9c(r1) -/* 8016582C 0016278C C0 21 00 A0 */ lfs f1, 0xa0(r1) -/* 80165830 00162790 C0 01 00 A4 */ lfs f0, 0xa4(r1) -/* 80165834 00162794 80 01 00 B0 */ lwz r0, 0xb0(r1) -/* 80165838 00162798 80 61 00 B4 */ lwz r3, 0xb4(r1) -/* 8016583C 0016279C D0 E1 00 B8 */ stfs f7, 0xb8(r1) -/* 80165840 001627A0 D0 C1 00 BC */ stfs f6, 0xbc(r1) -/* 80165844 001627A4 D0 A1 00 C0 */ stfs f5, 0xc0(r1) -/* 80165848 001627A8 D0 81 00 C4 */ stfs f4, 0xc4(r1) -/* 8016584C 001627AC D0 61 00 C8 */ stfs f3, 0xc8(r1) -/* 80165850 001627B0 D0 41 00 CC */ stfs f2, 0xcc(r1) -/* 80165854 001627B4 D0 21 00 D0 */ stfs f1, 0xd0(r1) -/* 80165858 001627B8 D0 01 00 D4 */ stfs f0, 0xd4(r1) -/* 8016585C 001627BC 98 81 00 D8 */ stb r4, 0xd8(r1) -/* 80165860 001627C0 90 61 00 E4 */ stw r3, 0xe4(r1) -/* 80165864 001627C4 90 01 00 E0 */ stw r0, 0xe0(r1) -/* 80165868 001627C8 41 82 00 B4 */ beq lbl_8016591C -/* 8016586C 001627CC 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 80165870 001627D0 A0 81 00 20 */ lhz r4, 0x20(r1) -/* 80165874 001627D4 A0 03 00 08 */ lhz r0, 8(r3) -/* 80165878 001627D8 7C 04 00 40 */ cmplw r4, r0 -/* 8016587C 001627DC 40 82 00 74 */ bne lbl_801658F0 -/* 80165880 001627E0 80 AD 8C F0 */ lwz r5, lbl_805A78B0@sda21(r13) -/* 80165884 001627E4 38 60 00 00 */ li r3, 0 -/* 80165888 001627E8 38 80 00 01 */ li r4, 1 -/* 8016588C 001627EC 48 22 46 69 */ bl __shl2i -/* 80165890 001627F0 39 00 00 00 */ li r8, 0 -/* 80165894 001627F4 39 40 00 03 */ li r10, 3 -/* 80165898 001627F8 90 81 00 5C */ stw r4, 0x5c(r1) -/* 8016589C 001627FC 3C 80 80 5A */ lis r4, skZero3f@ha -/* 801658A0 00162800 39 24 66 A0 */ addi r9, r4, skZero3f@l -/* 801658A4 00162804 A0 01 00 20 */ lhz r0, 0x20(r1) -/* 801658A8 00162808 90 61 00 58 */ stw r3, 0x58(r1) -/* 801658AC 0016280C 7F E3 FB 78 */ mr r3, r31 -/* 801658B0 00162810 38 81 00 1C */ addi r4, r1, 0x1c -/* 801658B4 00162814 38 A1 00 14 */ addi r5, r1, 0x14 -/* 801658B8 00162818 91 01 00 64 */ stw r8, 0x64(r1) -/* 801658BC 0016281C 38 C1 00 10 */ addi r6, r1, 0x10 -/* 801658C0 00162820 38 FD 05 AC */ addi r7, r29, 0x5ac -/* 801658C4 00162824 91 01 00 60 */ stw r8, 0x60(r1) -/* 801658C8 00162828 39 01 00 58 */ addi r8, r1, 0x58 -/* 801658CC 0016282C 91 41 00 68 */ stw r10, 0x68(r1) -/* 801658D0 00162830 A1 5D 00 08 */ lhz r10, 8(r29) -/* 801658D4 00162834 B1 41 00 10 */ sth r10, 0x10(r1) -/* 801658D8 00162838 B0 01 00 14 */ sth r0, 0x14(r1) -/* 801658DC 0016283C A0 1D 00 08 */ lhz r0, 8(r29) -/* 801658E0 00162840 B1 41 00 0C */ sth r10, 0xc(r1) -/* 801658E4 00162844 B0 01 00 18 */ sth r0, 0x18(r1) -/* 801658E8 00162848 B0 01 00 1C */ sth r0, 0x1c(r1) -/* 801658EC 0016284C 4B EE 47 B5 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f -lbl_801658F0: -/* 801658F0 00162850 88 9D 00 E6 */ lbz r4, 0xe6(r29) -/* 801658F4 00162854 7F E3 FB 78 */ mr r3, r31 -/* 801658F8 00162858 A0 01 00 20 */ lhz r0, 0x20(r1) -/* 801658FC 0016285C 38 A1 00 B8 */ addi r5, r1, 0xb8 -/* 80165900 00162860 54 89 E7 FE */ rlwinm r9, r4, 0x1c, 0x1f, 0x1f -/* 80165904 00162864 38 C1 00 08 */ addi r6, r1, 8 -/* 80165908 00162868 B0 01 00 08 */ sth r0, 8(r1) -/* 8016590C 0016286C 38 FD 05 AC */ addi r7, r29, 0x5ac -/* 80165910 00162870 39 00 00 01 */ li r8, 1 -/* 80165914 00162874 80 9D 05 74 */ lwz r4, 0x574(r29) -/* 80165918 00162878 4B ED E7 81 */ bl sub_80044098 -lbl_8016591C: -/* 8016591C 0016287C 80 A1 00 E8 */ lwz r5, 0xe8(r1) -/* 80165920 00162880 38 60 00 00 */ li r3, 0 -/* 80165924 00162884 2C 05 00 00 */ cmpwi r5, 0 -/* 80165928 00162888 40 81 00 40 */ ble lbl_80165968 -/* 8016592C 0016288C 2C 05 00 08 */ cmpwi r5, 8 -/* 80165930 00162890 38 85 FF F8 */ addi r4, r5, -8 -/* 80165934 00162894 40 81 00 20 */ ble lbl_80165954 -/* 80165938 00162898 38 04 00 07 */ addi r0, r4, 7 -/* 8016593C 0016289C 54 00 E8 FE */ srwi r0, r0, 3 -/* 80165940 001628A0 7C 09 03 A6 */ mtctr r0 -/* 80165944 001628A4 2C 04 00 00 */ cmpwi r4, 0 -/* 80165948 001628A8 40 81 00 0C */ ble lbl_80165954 -lbl_8016594C: -/* 8016594C 001628AC 38 63 00 08 */ addi r3, r3, 8 -/* 80165950 001628B0 42 00 FF FC */ bdnz lbl_8016594C -lbl_80165954: -/* 80165954 001628B4 7C 03 28 50 */ subf r0, r3, r5 -/* 80165958 001628B8 7C 09 03 A6 */ mtctr r0 -/* 8016595C 001628BC 7C 03 28 00 */ cmpw r3, r5 -/* 80165960 001628C0 40 80 00 08 */ bge lbl_80165968 -lbl_80165964: -/* 80165964 001628C4 42 00 00 00 */ bdnz lbl_80165964 -lbl_80165968: -/* 80165968 001628C8 38 00 00 00 */ li r0, 0 -/* 8016596C 001628CC 90 01 00 E8 */ stw r0, 0xe8(r1) -/* 80165970 001628D0 BB 61 08 FC */ lmw r27, 0x8fc(r1) -/* 80165974 001628D4 80 01 09 14 */ lwz r0, 0x914(r1) -/* 80165978 001628D8 7C 08 03 A6 */ mtlr r0 -/* 8016597C 001628DC 38 21 09 10 */ addi r1, r1, 0x910 -/* 80165980 001628E0 4E 80 00 20 */ blr - -.global sub_80165984 -sub_80165984: -/* 80165984 001628E4 94 21 FE 50 */ stwu r1, -0x1b0(r1) -/* 80165988 001628E8 7C 08 02 A6 */ mflr r0 -/* 8016598C 001628EC 90 01 01 B4 */ stw r0, 0x1b4(r1) -/* 80165990 001628F0 DB E1 01 A0 */ stfd f31, 0x1a0(r1) -/* 80165994 001628F4 F3 E1 01 A8 */ psq_st f31, 424(r1), 0, qr0 -/* 80165998 001628F8 DB C1 01 90 */ stfd f30, 0x190(r1) -/* 8016599C 001628FC F3 C1 01 98 */ psq_st f30, 408(r1), 0, qr0 -/* 801659A0 00162900 DB A1 01 80 */ stfd f29, 0x180(r1) -/* 801659A4 00162904 F3 A1 01 88 */ psq_st f29, 392(r1), 0, qr0 -/* 801659A8 00162908 93 E1 01 7C */ stw r31, 0x17c(r1) -/* 801659AC 0016290C 93 C1 01 78 */ stw r30, 0x178(r1) -/* 801659B0 00162910 93 A1 01 74 */ stw r29, 0x174(r1) -/* 801659B4 00162914 7C 9E 23 78 */ mr r30, r4 -/* 801659B8 00162918 7C 7D 1B 78 */ mr r29, r3 -/* 801659BC 0016291C 80 84 08 4C */ lwz r4, 0x84c(r4) -/* 801659C0 00162920 7C BF 2B 78 */ mr r31, r5 -/* 801659C4 00162924 7F C5 F3 78 */ mr r5, r30 -/* 801659C8 00162928 38 61 00 70 */ addi r3, r1, 0x70 -/* 801659CC 0016292C 81 84 00 00 */ lwz r12, 0(r4) -/* 801659D0 00162930 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 801659D4 00162934 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 801659D8 00162938 7D 89 03 A6 */ mtctr r12 -/* 801659DC 0016293C 4E 80 04 21 */ bctrl -/* 801659E0 00162940 C0 A1 00 70 */ lfs f5, 0x70(r1) -/* 801659E4 00162944 38 61 00 64 */ addi r3, r1, 0x64 -/* 801659E8 00162948 C0 81 00 74 */ lfs f4, 0x74(r1) -/* 801659EC 0016294C 38 81 00 58 */ addi r4, r1, 0x58 -/* 801659F0 00162950 C0 61 00 78 */ lfs f3, 0x78(r1) -/* 801659F4 00162954 C0 5F 00 1C */ lfs f2, 0x1c(r31) -/* 801659F8 00162958 C0 3F 00 2C */ lfs f1, 0x2c(r31) -/* 801659FC 0016295C C0 1F 00 0C */ lfs f0, 0xc(r31) -/* 80165A00 00162960 EC 44 10 28 */ fsubs f2, f4, f2 -/* 80165A04 00162964 EC 23 08 28 */ fsubs f1, f3, f1 -/* 80165A08 00162968 D0 A1 00 98 */ stfs f5, 0x98(r1) -/* 80165A0C 0016296C EC 05 00 28 */ fsubs f0, f5, f0 -/* 80165A10 00162970 C3 BF 00 24 */ lfs f29, 0x24(r31) -/* 80165A14 00162974 D0 81 00 9C */ stfs f4, 0x9c(r1) -/* 80165A18 00162978 C3 DF 00 14 */ lfs f30, 0x14(r31) -/* 80165A1C 0016297C D0 61 00 A0 */ stfs f3, 0xa0(r1) -/* 80165A20 00162980 C3 FF 00 04 */ lfs f31, 4(r31) -/* 80165A24 00162984 D0 01 00 58 */ stfs f0, 0x58(r1) -/* 80165A28 00162988 D0 41 00 5C */ stfs f2, 0x5c(r1) -/* 80165A2C 0016298C D0 21 00 60 */ stfs f1, 0x60(r1) -/* 80165A30 00162990 48 1A EE 21 */ bl AsNormalized__9CVector3fCFv -/* 80165A34 00162994 C0 01 00 68 */ lfs f0, 0x68(r1) -/* 80165A38 00162998 C0 41 00 64 */ lfs f2, 0x64(r1) -/* 80165A3C 0016299C EC 20 07 B2 */ fmuls f1, f0, f30 -/* 80165A40 001629A0 C0 61 00 6C */ lfs f3, 0x6c(r1) -/* 80165A44 001629A4 C0 02 A0 30 */ lfs f0, lbl_805ABD50@sda21(r2) -/* 80165A48 001629A8 EC 22 0F FA */ fmadds f1, f2, f31, f1 -/* 80165A4C 001629AC EC 23 0F 7A */ fmadds f1, f3, f29, f1 -/* 80165A50 001629B0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80165A54 001629B4 40 81 01 78 */ ble lbl_80165BCC -/* 80165A58 001629B8 3C 80 80 5A */ lis r4, skZero3f@ha -/* 80165A5C 001629BC C7 A4 66 A0 */ lfsu f29, skZero3f@l(r4) -/* 80165A60 001629C0 80 7E 09 00 */ lwz r3, 0x900(r30) -/* 80165A64 001629C4 C3 C4 00 04 */ lfs f30, 4(r4) -/* 80165A68 001629C8 C3 E4 00 08 */ lfs f31, 8(r4) -/* 80165A6C 001629CC 48 1A CA 71 */ bl Float__9CRandom16Fv -/* 80165A70 001629D0 C0 02 9F 8C */ lfs f0, lbl_805ABCAC@sda21(r2) -/* 80165A74 001629D4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80165A78 001629D8 40 81 00 E0 */ ble lbl_80165B58 -/* 80165A7C 001629DC C0 5F 00 2C */ lfs f2, 0x2c(r31) -/* 80165A80 001629E0 3C 60 80 5A */ lis r3, lbl_805A66F4@ha -/* 80165A84 001629E4 C0 3F 00 1C */ lfs f1, 0x1c(r31) -/* 80165A88 001629E8 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l -/* 80165A8C 001629EC C0 1F 00 0C */ lfs f0, 0xc(r31) -/* 80165A90 001629F0 38 61 00 D4 */ addi r3, r1, 0xd4 -/* 80165A94 001629F4 D0 21 00 50 */ stfs f1, 0x50(r1) -/* 80165A98 001629F8 38 81 00 4C */ addi r4, r1, 0x4c -/* 80165A9C 001629FC 38 A1 00 98 */ addi r5, r1, 0x98 -/* 80165AA0 00162A00 D0 01 00 4C */ stfs f0, 0x4c(r1) -/* 80165AA4 00162A04 D0 41 00 54 */ stfs f2, 0x54(r1) -/* 80165AA8 00162A08 48 1A E0 69 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f -/* 80165AAC 00162A0C 38 61 01 34 */ addi r3, r1, 0x134 -/* 80165AB0 00162A10 38 81 00 D4 */ addi r4, r1, 0xd4 -/* 80165AB4 00162A14 48 1A D0 C1 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80165AB8 00162A18 C0 21 01 38 */ lfs f1, 0x138(r1) -/* 80165ABC 00162A1C C0 41 01 48 */ lfs f2, 0x148(r1) -/* 80165AC0 00162A20 C0 01 01 58 */ lfs f0, 0x158(r1) -/* 80165AC4 00162A24 D0 21 00 8C */ stfs f1, 0x8c(r1) -/* 80165AC8 00162A28 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 80165ACC 00162A2C D0 41 00 90 */ stfs f2, 0x90(r1) -/* 80165AD0 00162A30 C0 42 A0 34 */ lfs f2, lbl_805ABD54@sda21(r2) -/* 80165AD4 00162A34 D0 01 00 94 */ stfs f0, 0x94(r1) -/* 80165AD8 00162A38 80 7E 09 00 */ lwz r3, 0x900(r30) -/* 80165ADC 00162A3C 48 1A CA 69 */ bl Range__9CRandom16Fff -/* 80165AE0 00162A40 D0 21 00 08 */ stfs f1, 8(r1) -/* 80165AE4 00162A44 38 61 00 3C */ addi r3, r1, 0x3c -/* 80165AE8 00162A48 38 81 00 8C */ addi r4, r1, 0x8c -/* 80165AEC 00162A4C 38 A1 00 08 */ addi r5, r1, 8 -/* 80165AF0 00162A50 48 1A B8 05 */ bl AxisAngle__11CQuaternionFRC13CUnitVector3fRC9CRelAngle -/* 80165AF4 00162A54 C0 62 9F B8 */ lfs f3, lbl_805ABCD8@sda21(r2) -/* 80165AF8 00162A58 38 61 00 30 */ addi r3, r1, 0x30 -/* 80165AFC 00162A5C C0 41 01 34 */ lfs f2, 0x134(r1) -/* 80165B00 00162A60 38 81 00 7C */ addi r4, r1, 0x7c -/* 80165B04 00162A64 C0 21 01 44 */ lfs f1, 0x144(r1) -/* 80165B08 00162A68 38 A1 00 24 */ addi r5, r1, 0x24 -/* 80165B0C 00162A6C C0 01 01 54 */ lfs f0, 0x154(r1) -/* 80165B10 00162A70 EC 43 00 B2 */ fmuls f2, f3, f2 -/* 80165B14 00162A74 EC 23 00 72 */ fmuls f1, f3, f1 -/* 80165B18 00162A78 C0 C1 00 3C */ lfs f6, 0x3c(r1) -/* 80165B1C 00162A7C EC 03 00 32 */ fmuls f0, f3, f0 -/* 80165B20 00162A80 C0 A1 00 40 */ lfs f5, 0x40(r1) -/* 80165B24 00162A84 C0 81 00 44 */ lfs f4, 0x44(r1) -/* 80165B28 00162A88 C0 61 00 48 */ lfs f3, 0x48(r1) -/* 80165B2C 00162A8C D0 C1 00 7C */ stfs f6, 0x7c(r1) -/* 80165B30 00162A90 D0 A1 00 80 */ stfs f5, 0x80(r1) -/* 80165B34 00162A94 D0 81 00 84 */ stfs f4, 0x84(r1) -/* 80165B38 00162A98 D0 61 00 88 */ stfs f3, 0x88(r1) -/* 80165B3C 00162A9C D0 41 00 24 */ stfs f2, 0x24(r1) -/* 80165B40 00162AA0 D0 21 00 28 */ stfs f1, 0x28(r1) -/* 80165B44 00162AA4 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 80165B48 00162AA8 48 1A B7 1D */ bl Transform__11CQuaternionCFRC9CVector3f -/* 80165B4C 00162AAC C3 A1 00 30 */ lfs f29, 0x30(r1) -/* 80165B50 00162AB0 C3 C1 00 34 */ lfs f30, 0x34(r1) -/* 80165B54 00162AB4 C3 E1 00 38 */ lfs f31, 0x38(r1) -lbl_80165B58: -/* 80165B58 00162AB8 C0 41 00 9C */ lfs f2, 0x9c(r1) -/* 80165B5C 00162ABC 3C 60 80 5A */ lis r3, lbl_805A66F4@ha -/* 80165B60 00162AC0 C0 21 00 A0 */ lfs f1, 0xa0(r1) -/* 80165B64 00162AC4 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l -/* 80165B68 00162AC8 EC 62 F0 2A */ fadds f3, f2, f30 -/* 80165B6C 00162ACC C0 01 00 98 */ lfs f0, 0x98(r1) -/* 80165B70 00162AD0 EC 41 F8 2A */ fadds f2, f1, f31 -/* 80165B74 00162AD4 C0 BF 00 2C */ lfs f5, 0x2c(r31) -/* 80165B78 00162AD8 EC 20 E8 2A */ fadds f1, f0, f29 -/* 80165B7C 00162ADC C0 9F 00 1C */ lfs f4, 0x1c(r31) -/* 80165B80 00162AE0 C0 1F 00 0C */ lfs f0, 0xc(r31) -/* 80165B84 00162AE4 38 61 00 A4 */ addi r3, r1, 0xa4 -/* 80165B88 00162AE8 D0 61 00 10 */ stfs f3, 0x10(r1) -/* 80165B8C 00162AEC 38 81 00 18 */ addi r4, r1, 0x18 -/* 80165B90 00162AF0 38 A1 00 0C */ addi r5, r1, 0xc -/* 80165B94 00162AF4 D0 21 00 0C */ stfs f1, 0xc(r1) -/* 80165B98 00162AF8 D0 41 00 14 */ stfs f2, 0x14(r1) -/* 80165B9C 00162AFC D0 01 00 18 */ stfs f0, 0x18(r1) -/* 80165BA0 00162B00 D0 81 00 1C */ stfs f4, 0x1c(r1) -/* 80165BA4 00162B04 D0 A1 00 20 */ stfs f5, 0x20(r1) -/* 80165BA8 00162B08 48 1A DF 69 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f -/* 80165BAC 00162B0C 38 61 01 04 */ addi r3, r1, 0x104 -/* 80165BB0 00162B10 38 81 00 A4 */ addi r4, r1, 0xa4 -/* 80165BB4 00162B14 48 1A CF C1 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80165BB8 00162B18 7F A3 EB 78 */ mr r3, r29 -/* 80165BBC 00162B1C 7F C5 F3 78 */ mr r5, r30 -/* 80165BC0 00162B20 38 81 01 04 */ addi r4, r1, 0x104 -/* 80165BC4 00162B24 4B FF FB 11 */ bl sub_801656d4 -/* 80165BC8 00162B28 48 00 00 14 */ b lbl_80165BDC -lbl_80165BCC: -/* 80165BCC 00162B2C 7F A3 EB 78 */ mr r3, r29 -/* 80165BD0 00162B30 7F E4 FB 78 */ mr r4, r31 -/* 80165BD4 00162B34 7F C5 F3 78 */ mr r5, r30 -/* 80165BD8 00162B38 4B FF FA FD */ bl sub_801656d4 -lbl_80165BDC: -/* 80165BDC 00162B3C E3 E1 01 A8 */ psq_l f31, 424(r1), 0, qr0 -/* 80165BE0 00162B40 CB E1 01 A0 */ lfd f31, 0x1a0(r1) -/* 80165BE4 00162B44 E3 C1 01 98 */ psq_l f30, 408(r1), 0, qr0 -/* 80165BE8 00162B48 CB C1 01 90 */ lfd f30, 0x190(r1) -/* 80165BEC 00162B4C E3 A1 01 88 */ psq_l f29, 392(r1), 0, qr0 -/* 80165BF0 00162B50 CB A1 01 80 */ lfd f29, 0x180(r1) -/* 80165BF4 00162B54 83 E1 01 7C */ lwz r31, 0x17c(r1) -/* 80165BF8 00162B58 83 C1 01 78 */ lwz r30, 0x178(r1) -/* 80165BFC 00162B5C 80 01 01 B4 */ lwz r0, 0x1b4(r1) -/* 80165C00 00162B60 83 A1 01 74 */ lwz r29, 0x174(r1) -/* 80165C04 00162B64 7C 08 03 A6 */ mtlr r0 -/* 80165C08 00162B68 38 21 01 B0 */ addi r1, r1, 0x1b0 -/* 80165C0C 00162B6C 4E 80 00 20 */ blr - -.global Touch__6CDroneFR6CActorR13CStateManager -Touch__6CDroneFR6CActorR13CStateManager: -/* 80165C10 00162B70 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80165C14 00162B74 7C 08 02 A6 */ mflr r0 -/* 80165C18 00162B78 90 01 00 34 */ stw r0, 0x34(r1) -/* 80165C1C 00162B7C 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 80165C20 00162B80 7C 9F 23 78 */ mr r31, r4 -/* 80165C24 00162B84 93 C1 00 28 */ stw r30, 0x28(r1) -/* 80165C28 00162B88 7C 7E 1B 78 */ mr r30, r3 -/* 80165C2C 00162B8C 4B F1 3E 75 */ bl Touch__10CPatternedFR6CActorR13CStateManager -/* 80165C30 00162B90 7F E4 FB 78 */ mr r4, r31 -/* 80165C34 00162B94 38 61 00 08 */ addi r3, r1, 8 -/* 80165C38 00162B98 4B F3 FC CD */ bl "__ct__20TCastToPtr<7CWeapon>FR7CEntity" -/* 80165C3C 00162B9C 80 A3 00 04 */ lwz r5, 4(r3) -/* 80165C40 00162BA0 28 05 00 00 */ cmplwi r5, 0 -/* 80165C44 00162BA4 41 82 00 80 */ beq lbl_80165CC4 -/* 80165C48 00162BA8 88 1E 04 00 */ lbz r0, 0x400(r30) -/* 80165C4C 00162BAC 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 80165C50 00162BB0 41 82 00 74 */ beq lbl_80165CC4 -/* 80165C54 00162BB4 80 65 00 F0 */ lwz r3, 0xf0(r5) -/* 80165C58 00162BB8 88 1E 08 34 */ lbz r0, 0x834(r30) -/* 80165C5C 00162BBC 20 63 00 02 */ subfic r3, r3, 2 -/* 80165C60 00162BC0 7C 63 00 34 */ cntlzw r3, r3 -/* 80165C64 00162BC4 50 60 16 30 */ rlwimi r0, r3, 2, 0x18, 0x18 -/* 80165C68 00162BC8 98 1E 08 34 */ stb r0, 0x834(r30) -/* 80165C6C 00162BCC 80 1E 03 FC */ lwz r0, 0x3fc(r30) -/* 80165C70 00162BD0 2C 00 00 01 */ cmpwi r0, 1 -/* 80165C74 00162BD4 40 82 00 50 */ bne lbl_80165CC4 -/* 80165C78 00162BD8 C0 25 00 50 */ lfs f1, 0x50(r5) -/* 80165C7C 00162BDC 7F C3 F3 78 */ mr r3, r30 -/* 80165C80 00162BE0 C0 1E 00 50 */ lfs f0, 0x50(r30) -/* 80165C84 00162BE4 38 81 00 10 */ addi r4, r1, 0x10 -/* 80165C88 00162BE8 C0 65 00 60 */ lfs f3, 0x60(r5) -/* 80165C8C 00162BEC C0 5E 00 60 */ lfs f2, 0x60(r30) -/* 80165C90 00162BF0 EC 81 00 28 */ fsubs f4, f1, f0 -/* 80165C94 00162BF4 C0 25 00 40 */ lfs f1, 0x40(r5) -/* 80165C98 00162BF8 C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 80165C9C 00162BFC EC 43 10 28 */ fsubs f2, f3, f2 -/* 80165CA0 00162C00 EC 01 00 28 */ fsubs f0, f1, f0 -/* 80165CA4 00162C04 D0 81 00 14 */ stfs f4, 0x14(r1) -/* 80165CA8 00162C08 D0 41 00 18 */ stfs f2, 0x18(r1) -/* 80165CAC 00162C0C D0 01 00 10 */ stfs f0, 0x10(r1) -/* 80165CB0 00162C10 4B FF F9 3D */ bl sub_801655ec -/* 80165CB4 00162C14 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80165CB8 00162C18 41 82 00 0C */ beq lbl_80165CC4 -/* 80165CBC 00162C1C C0 02 9F 7C */ lfs f0, lbl_805ABC9C@sda21(r2) -/* 80165CC0 00162C20 D0 1E 05 E8 */ stfs f0, 0x5e8(r30) -lbl_80165CC4: -/* 80165CC4 00162C24 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80165CC8 00162C28 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 80165CCC 00162C2C 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 80165CD0 00162C30 7C 08 03 A6 */ mtlr r0 -/* 80165CD4 00162C34 38 21 00 30 */ addi r1, r1, 0x30 -/* 80165CD8 00162C38 4E 80 00 20 */ blr - -.global DoUserAnimEvent__6CDroneFR13CStateManagerRC13CInt32POINode14EUserEventType -DoUserAnimEvent__6CDroneFR13CStateManagerRC13CInt32POINode14EUserEventType: -/* 80165CDC 00162C3C 94 21 FF 70 */ stwu r1, -0x90(r1) -/* 80165CE0 00162C40 7C 08 02 A6 */ mflr r0 -/* 80165CE4 00162C44 90 01 00 94 */ stw r0, 0x94(r1) -/* 80165CE8 00162C48 DB E1 00 88 */ stfd f31, 0x88(r1) -/* 80165CEC 00162C4C FF E0 08 90 */ fmr f31, f1 -/* 80165CF0 00162C50 BF 61 00 74 */ stmw r27, 0x74(r1) -/* 80165CF4 00162C54 7C DF 33 78 */ mr r31, r6 -/* 80165CF8 00162C58 28 1F 00 0F */ cmplwi r31, 0xf -/* 80165CFC 00162C5C 7C 7C 1B 78 */ mr r28, r3 -/* 80165D00 00162C60 7C 9D 23 78 */ mr r29, r4 -/* 80165D04 00162C64 7C BE 2B 78 */ mr r30, r5 -/* 80165D08 00162C68 3B 60 00 00 */ li r27, 0 -/* 80165D0C 00162C6C 41 81 01 BC */ bgt lbl_80165EC8 -/* 80165D10 00162C70 3C A0 80 3E */ lis r5, lbl_803E3988@ha -/* 80165D14 00162C74 57 E0 10 3A */ slwi r0, r31, 2 -/* 80165D18 00162C78 38 A5 39 88 */ addi r5, r5, lbl_803E3988@l -/* 80165D1C 00162C7C 7C 05 00 2E */ lwzx r0, r5, r0 -/* 80165D20 00162C80 7C 09 03 A6 */ mtctr r0 -/* 80165D24 00162C84 4E 80 04 20 */ bctr -/* 80165D28 00162C88 7F 84 E3 78 */ mr r4, r28 -/* 80165D2C 00162C8C 38 61 00 0C */ addi r3, r1, 0xc -/* 80165D30 00162C90 38 BE 00 3C */ addi r5, r30, 0x3c -/* 80165D34 00162C94 4B F1 2C 45 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80165D38 00162C98 38 61 00 3C */ addi r3, r1, 0x3c -/* 80165D3C 00162C9C 38 81 00 0C */ addi r4, r1, 0xc -/* 80165D40 00162CA0 48 1A CE 35 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80165D44 00162CA4 7F 83 E3 78 */ mr r3, r28 -/* 80165D48 00162CA8 7F A4 EB 78 */ mr r4, r29 -/* 80165D4C 00162CAC 38 A1 00 3C */ addi r5, r1, 0x3c -/* 80165D50 00162CB0 4B FF FC 35 */ bl sub_80165984 -/* 80165D54 00162CB4 3B 60 00 01 */ li r27, 1 -/* 80165D58 00162CB8 48 00 01 70 */ b lbl_80165EC8 -/* 80165D5C 00162CBC 88 1C 04 00 */ lbz r0, 0x400(r28) -/* 80165D60 00162CC0 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 80165D64 00162CC4 41 82 00 70 */ beq lbl_80165DD4 -/* 80165D68 00162CC8 88 1C 08 35 */ lbz r0, 0x835(r28) -/* 80165D6C 00162CCC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80165D70 00162CD0 41 82 00 64 */ beq lbl_80165DD4 -/* 80165D74 00162CD4 88 1C 08 28 */ lbz r0, 0x828(r28) -/* 80165D78 00162CD8 28 00 00 00 */ cmplwi r0, 0 -/* 80165D7C 00162CDC 40 82 00 38 */ bne lbl_80165DB4 -/* 80165D80 00162CE0 38 A0 00 00 */ li r5, 0 -/* 80165D84 00162CE4 38 C0 00 01 */ li r6, 1 -/* 80165D88 00162CE8 4B FF D5 1D */ bl sub_801632a4 -/* 80165D8C 00162CEC 38 00 00 01 */ li r0, 1 -/* 80165D90 00162CF0 7F 83 E3 78 */ mr r3, r28 -/* 80165D94 00162CF4 98 1C 08 28 */ stb r0, 0x828(r28) -/* 80165D98 00162CF8 7F A4 EB 78 */ mr r4, r29 -/* 80165D9C 00162CFC 38 A0 00 01 */ li r5, 1 -/* 80165DA0 00162D00 81 9C 00 00 */ lwz r12, 0(r28) -/* 80165DA4 00162D04 81 8C 02 D4 */ lwz r12, 0x2d4(r12) -/* 80165DA8 00162D08 7D 89 03 A6 */ mtctr r12 -/* 80165DAC 00162D0C 4E 80 04 21 */ bctrl -/* 80165DB0 00162D10 48 00 00 24 */ b lbl_80165DD4 -lbl_80165DB4: -/* 80165DB4 00162D14 80 1C 03 FC */ lwz r0, 0x3fc(r28) -/* 80165DB8 00162D18 2C 00 00 01 */ cmpwi r0, 1 -/* 80165DBC 00162D1C 40 82 00 18 */ bne lbl_80165DD4 -/* 80165DC0 00162D20 38 A0 00 01 */ li r5, 1 -/* 80165DC4 00162D24 38 C0 00 01 */ li r6, 1 -/* 80165DC8 00162D28 4B FF D4 DD */ bl sub_801632a4 -/* 80165DCC 00162D2C 38 00 00 01 */ li r0, 1 -/* 80165DD0 00162D30 98 1C 08 29 */ stb r0, 0x829(r28) -lbl_80165DD4: -/* 80165DD4 00162D34 3B 60 00 01 */ li r27, 1 -/* 80165DD8 00162D38 48 00 00 F0 */ b lbl_80165EC8 -/* 80165DDC 00162D3C 88 1C 08 28 */ lbz r0, 0x828(r28) -/* 80165DE0 00162D40 28 00 00 00 */ cmplwi r0, 0 -/* 80165DE4 00162D44 41 82 00 38 */ beq lbl_80165E1C -/* 80165DE8 00162D48 38 A0 00 00 */ li r5, 0 -/* 80165DEC 00162D4C 38 C0 00 00 */ li r6, 0 -/* 80165DF0 00162D50 4B FF D4 B5 */ bl sub_801632a4 -/* 80165DF4 00162D54 38 00 00 00 */ li r0, 0 -/* 80165DF8 00162D58 7F 83 E3 78 */ mr r3, r28 -/* 80165DFC 00162D5C 98 1C 08 28 */ stb r0, 0x828(r28) -/* 80165E00 00162D60 7F A4 EB 78 */ mr r4, r29 -/* 80165E04 00162D64 38 A0 00 00 */ li r5, 0 -/* 80165E08 00162D68 81 9C 00 00 */ lwz r12, 0(r28) -/* 80165E0C 00162D6C 81 8C 02 D4 */ lwz r12, 0x2d4(r12) -/* 80165E10 00162D70 7D 89 03 A6 */ mtctr r12 -/* 80165E14 00162D74 4E 80 04 21 */ bctrl -/* 80165E18 00162D78 48 00 00 24 */ b lbl_80165E3C -lbl_80165E1C: -/* 80165E1C 00162D7C 80 1C 03 FC */ lwz r0, 0x3fc(r28) -/* 80165E20 00162D80 2C 00 00 01 */ cmpwi r0, 1 -/* 80165E24 00162D84 40 82 00 18 */ bne lbl_80165E3C -/* 80165E28 00162D88 38 A0 00 01 */ li r5, 1 -/* 80165E2C 00162D8C 38 C0 00 00 */ li r6, 0 -/* 80165E30 00162D90 4B FF D4 75 */ bl sub_801632a4 -/* 80165E34 00162D94 38 00 00 00 */ li r0, 0 -/* 80165E38 00162D98 98 1C 08 29 */ stb r0, 0x829(r28) -lbl_80165E3C: -/* 80165E3C 00162D9C 3B 60 00 01 */ li r27, 1 -/* 80165E40 00162DA0 48 00 00 88 */ b lbl_80165EC8 -/* 80165E44 00162DA4 80 1C 03 FC */ lwz r0, 0x3fc(r28) -/* 80165E48 00162DA8 2C 00 00 01 */ cmpwi r0, 1 -/* 80165E4C 00162DAC 40 82 00 14 */ bne lbl_80165E60 -/* 80165E50 00162DB0 88 1C 08 34 */ lbz r0, 0x834(r28) -/* 80165E54 00162DB4 38 60 00 01 */ li r3, 1 -/* 80165E58 00162DB8 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e -/* 80165E5C 00162DBC 98 1C 08 34 */ stb r0, 0x834(r28) -lbl_80165E60: -/* 80165E60 00162DC0 3B 60 00 01 */ li r27, 1 -/* 80165E64 00162DC4 48 00 00 64 */ b lbl_80165EC8 -/* 80165E68 00162DC8 80 1C 03 FC */ lwz r0, 0x3fc(r28) -/* 80165E6C 00162DCC 2C 00 00 01 */ cmpwi r0, 1 -/* 80165E70 00162DD0 40 82 00 14 */ bne lbl_80165E84 -/* 80165E74 00162DD4 88 1C 08 34 */ lbz r0, 0x834(r28) -/* 80165E78 00162DD8 38 60 00 00 */ li r3, 0 -/* 80165E7C 00162DDC 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e -/* 80165E80 00162DE0 98 1C 08 34 */ stb r0, 0x834(r28) -lbl_80165E84: -/* 80165E84 00162DE4 3B 60 00 01 */ li r27, 1 -/* 80165E88 00162DE8 48 00 00 40 */ b lbl_80165EC8 -/* 80165E8C 00162DEC 80 1C 07 D0 */ lwz r0, 0x7d0(r28) -/* 80165E90 00162DF0 28 00 00 00 */ cmplwi r0, 0 -/* 80165E94 00162DF4 41 82 00 1C */ beq lbl_80165EB0 -/* 80165E98 00162DF8 80 1C 07 D0 */ lwz r0, 0x7d0(r28) -/* 80165E9C 00162DFC 38 61 00 08 */ addi r3, r1, 8 -/* 80165EA0 00162E00 90 01 00 08 */ stw r0, 8(r1) -/* 80165EA4 00162E04 48 18 3F E1 */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle -/* 80165EA8 00162E08 38 00 00 00 */ li r0, 0 -/* 80165EAC 00162E0C 90 1C 07 D0 */ stw r0, 0x7d0(r28) -lbl_80165EB0: -/* 80165EB0 00162E10 7F 83 E3 78 */ mr r3, r28 -/* 80165EB4 00162E14 7F A4 EB 78 */ mr r4, r29 -/* 80165EB8 00162E18 81 9C 00 00 */ lwz r12, 0(r28) -/* 80165EBC 00162E1C 81 8C 02 98 */ lwz r12, 0x298(r12) -/* 80165EC0 00162E20 7D 89 03 A6 */ mtctr r12 -/* 80165EC4 00162E24 4E 80 04 21 */ bctrl -lbl_80165EC8: -/* 80165EC8 00162E28 57 60 06 3F */ clrlwi. r0, r27, 0x18 -/* 80165ECC 00162E2C 40 82 00 1C */ bne lbl_80165EE8 -/* 80165ED0 00162E30 FC 20 F8 90 */ fmr f1, f31 -/* 80165ED4 00162E34 7F 83 E3 78 */ mr r3, r28 -/* 80165ED8 00162E38 7F A4 EB 78 */ mr r4, r29 -/* 80165EDC 00162E3C 7F C5 F3 78 */ mr r5, r30 -/* 80165EE0 00162E40 7F E6 FB 78 */ mr r6, r31 -/* 80165EE4 00162E44 4B F1 2F CD */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType -lbl_80165EE8: -/* 80165EE8 00162E48 CB E1 00 88 */ lfd f31, 0x88(r1) -/* 80165EEC 00162E4C BB 61 00 74 */ lmw r27, 0x74(r1) -/* 80165EF0 00162E50 80 01 00 94 */ lwz r0, 0x94(r1) -/* 80165EF4 00162E54 7C 08 03 A6 */ mtlr r0 -/* 80165EF8 00162E58 38 21 00 90 */ addi r1, r1, 0x90 -/* 80165EFC 00162E5C 4E 80 00 20 */ blr - -.global sub_80165f00 -sub_80165f00: -/* 80165F00 00162E60 94 21 FF 10 */ stwu r1, -0xf0(r1) -/* 80165F04 00162E64 7C 08 02 A6 */ mflr r0 -/* 80165F08 00162E68 90 01 00 F4 */ stw r0, 0xf4(r1) -/* 80165F0C 00162E6C 93 E1 00 EC */ stw r31, 0xec(r1) -/* 80165F10 00162E70 93 C1 00 E8 */ stw r30, 0xe8(r1) -/* 80165F14 00162E74 7C 9E 23 78 */ mr r30, r4 -/* 80165F18 00162E78 38 81 00 08 */ addi r4, r1, 8 -/* 80165F1C 00162E7C 93 A1 00 E4 */ stw r29, 0xe4(r1) -/* 80165F20 00162E80 7C 7D 1B 78 */ mr r29, r3 -/* 80165F24 00162E84 A0 03 05 7A */ lhz r0, 0x57a(r3) -/* 80165F28 00162E88 7F C3 F3 78 */ mr r3, r30 -/* 80165F2C 00162E8C B0 01 00 08 */ sth r0, 8(r1) -/* 80165F30 00162E90 4B EE 66 45 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80165F34 00162E94 7C 64 1B 78 */ mr r4, r3 -/* 80165F38 00162E98 38 61 00 0C */ addi r3, r1, 0xc -/* 80165F3C 00162E9C 4B F4 0C 9D */ bl "__ct__31TCastToPtr<17CScriptVisorFlare>FP7CEntity" -/* 80165F40 00162EA0 80 BE 08 4C */ lwz r5, 0x84c(r30) -/* 80165F44 00162EA4 38 81 00 60 */ addi r4, r1, 0x60 -/* 80165F48 00162EA8 83 E3 00 04 */ lwz r31, 4(r3) -/* 80165F4C 00162EAC 38 61 00 6C */ addi r3, r1, 0x6c -/* 80165F50 00162EB0 C0 A5 00 60 */ lfs f5, 0x60(r5) -/* 80165F54 00162EB4 C0 1D 00 60 */ lfs f0, 0x60(r29) -/* 80165F58 00162EB8 C0 85 00 50 */ lfs f4, 0x50(r5) -/* 80165F5C 00162EBC C0 5D 00 50 */ lfs f2, 0x50(r29) -/* 80165F60 00162EC0 EC 25 00 28 */ fsubs f1, f5, f0 -/* 80165F64 00162EC4 C0 05 00 40 */ lfs f0, 0x40(r5) -/* 80165F68 00162EC8 C0 7D 00 40 */ lfs f3, 0x40(r29) -/* 80165F6C 00162ECC EC 44 10 28 */ fsubs f2, f4, f2 -/* 80165F70 00162ED0 D0 01 00 54 */ stfs f0, 0x54(r1) -/* 80165F74 00162ED4 EC 00 18 28 */ fsubs f0, f0, f3 -/* 80165F78 00162ED8 D0 81 00 58 */ stfs f4, 0x58(r1) -/* 80165F7C 00162EDC D0 A1 00 5C */ stfs f5, 0x5c(r1) -/* 80165F80 00162EE0 D0 01 00 60 */ stfs f0, 0x60(r1) -/* 80165F84 00162EE4 D0 41 00 64 */ stfs f2, 0x64(r1) -/* 80165F88 00162EE8 D0 21 00 68 */ stfs f1, 0x68(r1) -/* 80165F8C 00162EEC 48 1A E8 C5 */ bl AsNormalized__9CVector3fCFv -/* 80165F90 00162EF0 C0 9D 00 48 */ lfs f4, 0x48(r29) -/* 80165F94 00162EF4 7F A3 EB 78 */ mr r3, r29 -/* 80165F98 00162EF8 C0 01 00 70 */ lfs f0, 0x70(r1) -/* 80165F9C 00162EFC 7F C4 F3 78 */ mr r4, r30 -/* 80165FA0 00162F00 C0 7D 00 38 */ lfs f3, 0x38(r29) -/* 80165FA4 00162F04 EC 00 01 32 */ fmuls f0, f0, f4 -/* 80165FA8 00162F08 C0 21 00 6C */ lfs f1, 0x6c(r1) -/* 80165FAC 00162F0C C0 BD 00 58 */ lfs f5, 0x58(r29) -/* 80165FB0 00162F10 C0 41 00 74 */ lfs f2, 0x74(r1) -/* 80165FB4 00162F14 EC 21 00 FA */ fmadds f1, f1, f3, f0 -/* 80165FB8 00162F18 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 80165FBC 00162F1C D0 61 00 48 */ stfs f3, 0x48(r1) -/* 80165FC0 00162F20 EC 22 09 7A */ fmadds f1, f2, f5, f1 -/* 80165FC4 00162F24 D0 81 00 4C */ stfs f4, 0x4c(r1) -/* 80165FC8 00162F28 D0 A1 00 50 */ stfs f5, 0x50(r1) -/* 80165FCC 00162F2C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80165FD0 00162F30 7C 00 00 26 */ mfcr r0 -/* 80165FD4 00162F34 81 9D 00 00 */ lwz r12, 0(r29) -/* 80165FD8 00162F38 54 05 17 FE */ rlwinm r5, r0, 2, 0x1f, 0x1f -/* 80165FDC 00162F3C 81 8C 02 D4 */ lwz r12, 0x2d4(r12) -/* 80165FE0 00162F40 7D 89 03 A6 */ mtctr r12 -/* 80165FE4 00162F44 4E 80 04 21 */ bctrl -/* 80165FE8 00162F48 28 1F 00 00 */ cmplwi r31, 0 -/* 80165FEC 00162F4C 41 82 00 9C */ beq lbl_80166088 -/* 80165FF0 00162F50 3C 80 80 3D */ lis r4, lbl_803D0398@ha -/* 80165FF4 00162F54 38 61 00 38 */ addi r3, r1, 0x38 -/* 80165FF8 00162F58 38 84 03 98 */ addi r4, r4, lbl_803D0398@l -/* 80165FFC 00162F5C 4B E9 EC BD */ bl string_l__4rstlFPCc -/* 80166000 00162F60 7F A4 EB 78 */ mr r4, r29 -/* 80166004 00162F64 38 61 00 78 */ addi r3, r1, 0x78 -/* 80166008 00162F68 38 A1 00 38 */ addi r5, r1, 0x38 -/* 8016600C 00162F6C 4B F1 29 6D */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80166010 00162F70 38 61 00 A8 */ addi r3, r1, 0xa8 -/* 80166014 00162F74 38 81 00 78 */ addi r4, r1, 0x78 -/* 80166018 00162F78 48 1A CB 5D */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8016601C 00162F7C 38 61 00 38 */ addi r3, r1, 0x38 -/* 80166020 00162F80 48 1D 7A C1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 80166024 00162F84 C0 82 9F C0 */ lfs f4, lbl_805ABCE0@sda21(r2) -/* 80166028 00162F88 7F E3 FB 78 */ mr r3, r31 -/* 8016602C 00162F8C C0 21 00 CC */ lfs f1, 0xcc(r1) -/* 80166030 00162F90 38 81 00 2C */ addi r4, r1, 0x2c -/* 80166034 00162F94 C0 41 00 AC */ lfs f2, 0xac(r1) -/* 80166038 00162F98 C0 01 00 BC */ lfs f0, 0xbc(r1) -/* 8016603C 00162F9C EC C4 00 72 */ fmuls f6, f4, f1 -/* 80166040 00162FA0 C0 21 00 D4 */ lfs f1, 0xd4(r1) -/* 80166044 00162FA4 EC A4 00 B2 */ fmuls f5, f4, f2 -/* 80166048 00162FA8 C0 61 00 B4 */ lfs f3, 0xb4(r1) -/* 8016604C 00162FAC EC 84 00 32 */ fmuls f4, f4, f0 -/* 80166050 00162FB0 C0 41 00 C4 */ lfs f2, 0xc4(r1) -/* 80166054 00162FB4 EC E1 30 2A */ fadds f7, f1, f6 -/* 80166058 00162FB8 D0 A1 00 14 */ stfs f5, 0x14(r1) -/* 8016605C 00162FBC ED 02 20 2A */ fadds f8, f2, f4 -/* 80166060 00162FC0 EC 03 28 2A */ fadds f0, f3, f5 -/* 80166064 00162FC4 D0 81 00 18 */ stfs f4, 0x18(r1) -/* 80166068 00162FC8 D0 C1 00 1C */ stfs f6, 0x1c(r1) -/* 8016606C 00162FCC D0 61 00 20 */ stfs f3, 0x20(r1) -/* 80166070 00162FD0 D0 41 00 24 */ stfs f2, 0x24(r1) -/* 80166074 00162FD4 D0 21 00 28 */ stfs f1, 0x28(r1) -/* 80166078 00162FD8 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 8016607C 00162FDC D1 01 00 30 */ stfs f8, 0x30(r1) -/* 80166080 00162FE0 D0 E1 00 34 */ stfs f7, 0x34(r1) -/* 80166084 00162FE4 4B EE CE 09 */ bl SetTranslation__6CActorFRC9CVector3f -lbl_80166088: -/* 80166088 00162FE8 80 01 00 F4 */ lwz r0, 0xf4(r1) -/* 8016608C 00162FEC 83 E1 00 EC */ lwz r31, 0xec(r1) -/* 80166090 00162FF0 83 C1 00 E8 */ lwz r30, 0xe8(r1) -/* 80166094 00162FF4 83 A1 00 E4 */ lwz r29, 0xe4(r1) -/* 80166098 00162FF8 7C 08 03 A6 */ mtlr r0 -/* 8016609C 00162FFC 38 21 00 F0 */ addi r1, r1, 0xf0 -/* 801660A0 00163000 4E 80 00 20 */ blr - -.global sub_801660a4 -sub_801660a4: -/* 801660A4 00163004 94 21 FE F0 */ stwu r1, -0x110(r1) -/* 801660A8 00163008 7C 08 02 A6 */ mflr r0 -/* 801660AC 0016300C 90 01 01 14 */ stw r0, 0x114(r1) -/* 801660B0 00163010 BF 41 00 F8 */ stmw r26, 0xf8(r1) -/* 801660B4 00163014 7C 7C 1B 78 */ mr r28, r3 -/* 801660B8 00163018 7C 9D 23 78 */ mr r29, r4 -/* 801660BC 0016301C 7C BE 2B 78 */ mr r30, r5 -/* 801660C0 00163020 88 03 04 00 */ lbz r0, 0x400(r3) -/* 801660C4 00163024 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 801660C8 00163028 41 82 01 EC */ beq lbl_801662B4 -/* 801660CC 0016302C A0 1C 05 7A */ lhz r0, 0x57a(r28) -/* 801660D0 00163030 7F A3 EB 78 */ mr r3, r29 -/* 801660D4 00163034 38 81 00 28 */ addi r4, r1, 0x28 -/* 801660D8 00163038 B0 01 00 28 */ sth r0, 0x28(r1) -/* 801660DC 0016303C 4B EE 64 99 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 801660E0 00163040 7C 64 1B 78 */ mr r4, r3 -/* 801660E4 00163044 38 61 00 48 */ addi r3, r1, 0x48 -/* 801660E8 00163048 4B F4 0A F1 */ bl "__ct__31TCastToPtr<17CScriptVisorFlare>FP7CEntity" -/* 801660EC 0016304C 80 03 00 04 */ lwz r0, 4(r3) -/* 801660F0 00163050 28 00 00 00 */ cmplwi r0, 0 -/* 801660F4 00163054 7C 1F 03 78 */ mr r31, r0 -/* 801660F8 00163058 40 82 01 90 */ bne lbl_80166288 -/* 801660FC 0016305C 57 C0 06 3F */ clrlwi. r0, r30, 0x18 -/* 80166100 00163060 41 82 01 88 */ beq lbl_80166288 -/* 80166104 00163064 7F A4 EB 78 */ mr r4, r29 -/* 80166108 00163068 38 61 00 24 */ addi r3, r1, 0x24 -/* 8016610C 0016306C 4B EE 6F D1 */ bl AllocateUniqueId__13CStateManagerFv -/* 80166110 00163070 A0 01 00 24 */ lhz r0, 0x24(r1) -/* 80166114 00163074 3C 60 80 3D */ lis r3, lbl_803D0398@ha -/* 80166118 00163078 38 83 03 98 */ addi r4, r3, lbl_803D0398@l -/* 8016611C 0016307C B0 1C 05 7A */ sth r0, 0x57a(r28) -/* 80166120 00163080 38 61 00 6C */ addi r3, r1, 0x6c -/* 80166124 00163084 4B E9 EB 95 */ bl string_l__4rstlFPCc -/* 80166128 00163088 7F 84 E3 78 */ mr r4, r28 -/* 8016612C 0016308C 38 61 00 94 */ addi r3, r1, 0x94 -/* 80166130 00163090 38 A1 00 6C */ addi r5, r1, 0x6c -/* 80166134 00163094 4B F1 28 45 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80166138 00163098 38 61 00 C4 */ addi r3, r1, 0xc4 -/* 8016613C 0016309C 38 81 00 94 */ addi r4, r1, 0x94 -/* 80166140 001630A0 48 1A CA 35 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80166144 001630A4 38 61 00 6C */ addi r3, r1, 0x6c -/* 80166148 001630A8 48 1D 79 99 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 8016614C 001630AC 3C 60 80 3D */ lis r3, lbl_803D0398@ha -/* 80166150 001630B0 3B 60 00 00 */ li r27, 0 -/* 80166154 001630B4 38 63 03 98 */ addi r3, r3, lbl_803D0398@l -/* 80166158 001630B8 3B 40 00 00 */ li r26, 0 -/* 8016615C 001630BC 38 83 00 3B */ addi r4, r3, 0x3b -/* 80166160 001630C0 38 60 01 20 */ li r3, 0x120 -/* 80166164 001630C4 38 A0 00 00 */ li r5, 0 -/* 80166168 001630C8 48 1A F7 05 */ bl __nw__FUlPCcPCc -/* 8016616C 001630CC 7C 7F 1B 79 */ or. r31, r3, r3 -/* 80166170 001630D0 41 82 00 B4 */ beq lbl_80166224 -/* 80166174 001630D4 C0 41 00 D0 */ lfs f2, 0xd0(r1) -/* 80166178 001630D8 3C 60 80 57 */ lis r3, lbl_8056D410@ha -/* 8016617C 001630DC C0 21 00 E0 */ lfs f1, 0xe0(r1) -/* 80166180 001630E0 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l -/* 80166184 001630E4 C0 01 00 F0 */ lfs f0, 0xf0(r1) -/* 80166188 001630E8 38 61 00 7C */ addi r3, r1, 0x7c -/* 8016618C 001630EC 80 0D A3 88 */ lwz r0, lbl_805A8F48@sda21(r13) -/* 80166190 001630F0 38 81 00 40 */ addi r4, r1, 0x40 -/* 80166194 001630F4 D0 41 00 60 */ stfs f2, 0x60(r1) -/* 80166198 001630F8 38 C1 00 44 */ addi r6, r1, 0x44 -/* 8016619C 001630FC D0 21 00 64 */ stfs f1, 0x64(r1) -/* 801661A0 00163100 D0 01 00 68 */ stfs f0, 0x68(r1) -/* 801661A4 00163104 90 01 00 44 */ stw r0, 0x44(r1) -/* 801661A8 00163108 80 1C 00 04 */ lwz r0, 4(r28) -/* 801661AC 0016310C 90 01 00 3C */ stw r0, 0x3c(r1) -/* 801661B0 00163110 90 01 00 40 */ stw r0, 0x40(r1) -/* 801661B4 00163114 4B EE B2 D1 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" -/* 801661B8 00163118 3C 80 80 3D */ lis r4, lbl_803D0398@ha -/* 801661BC 0016311C 38 61 00 50 */ addi r3, r1, 0x50 -/* 801661C0 00163120 38 84 03 98 */ addi r4, r4, lbl_803D0398@l -/* 801661C4 00163124 3B 60 00 01 */ li r27, 1 -/* 801661C8 00163128 38 84 00 5B */ addi r4, r4, 0x5b -/* 801661CC 0016312C 4B E9 EA ED */ bl string_l__4rstlFPCc -/* 801661D0 00163130 A0 7C 05 7A */ lhz r3, 0x57a(r28) -/* 801661D4 00163134 38 C0 00 00 */ li r6, 0 -/* 801661D8 00163138 38 1C 05 7C */ addi r0, r28, 0x57c -/* 801661DC 0016313C C0 22 9F C0 */ lfs f1, lbl_805ABCE0@sda21(r2) -/* 801661E0 00163140 B0 61 00 20 */ sth r3, 0x20(r1) -/* 801661E4 00163144 7F E3 FB 78 */ mr r3, r31 -/* 801661E8 00163148 C0 42 9F 7C */ lfs f2, lbl_805ABC9C@sda21(r2) -/* 801661EC 0016314C 7F C7 F3 78 */ mr r7, r30 -/* 801661F0 00163150 90 C1 00 08 */ stw r6, 8(r1) -/* 801661F4 00163154 38 81 00 20 */ addi r4, r1, 0x20 -/* 801661F8 00163158 C0 62 9F E8 */ lfs f3, lbl_805ABD08@sda21(r2) -/* 801661FC 0016315C 38 A1 00 50 */ addi r5, r1, 0x50 -/* 80166200 00163160 90 C1 00 0C */ stw r6, 0xc(r1) -/* 80166204 00163164 38 C1 00 7C */ addi r6, r1, 0x7c -/* 80166208 00163168 39 01 00 60 */ addi r8, r1, 0x60 -/* 8016620C 0016316C 3B 40 00 01 */ li r26, 1 -/* 80166210 00163170 90 01 00 10 */ stw r0, 0x10(r1) -/* 80166214 00163174 39 20 00 00 */ li r9, 0 -/* 80166218 00163178 39 40 00 01 */ li r10, 1 -/* 8016621C 0016317C 48 07 05 11 */ bl "__ct__17CScriptVisorFlareF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfobRC9CVector3fQ211CVisorFlare10EBlendModebfffRCQ24rstl60vector" -/* 80166220 00163180 7C 7F 1B 78 */ mr r31, r3 -lbl_80166224: -/* 80166224 00163184 7F 40 07 75 */ extsb. r0, r26 -/* 80166228 00163188 41 82 00 0C */ beq lbl_80166234 -/* 8016622C 0016318C 38 61 00 50 */ addi r3, r1, 0x50 -/* 80166230 00163190 48 1D 78 B1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -lbl_80166234: -/* 80166234 00163194 7F 60 07 75 */ extsb. r0, r27 -/* 80166238 00163198 41 82 00 44 */ beq lbl_8016627C -/* 8016623C 0016319C 80 01 00 84 */ lwz r0, 0x84(r1) -/* 80166240 001631A0 80 61 00 8C */ lwz r3, 0x8c(r1) -/* 80166244 001631A4 1C 00 00 0C */ mulli r0, r0, 0xc -/* 80166248 001631A8 90 61 00 30 */ stw r3, 0x30(r1) -/* 8016624C 001631AC 7C 64 1B 78 */ mr r4, r3 -/* 80166250 001631B0 7C 03 02 14 */ add r0, r3, r0 -/* 80166254 001631B4 90 61 00 2C */ stw r3, 0x2c(r1) -/* 80166258 001631B8 90 01 00 38 */ stw r0, 0x38(r1) -/* 8016625C 001631BC 90 01 00 34 */ stw r0, 0x34(r1) -/* 80166260 001631C0 48 00 00 08 */ b lbl_80166268 -lbl_80166264: -/* 80166264 001631C4 38 84 00 0C */ addi r4, r4, 0xc -lbl_80166268: -/* 80166268 001631C8 7C 04 00 40 */ cmplw r4, r0 -/* 8016626C 001631CC 40 82 FF F8 */ bne lbl_80166264 -/* 80166270 001631D0 28 03 00 00 */ cmplwi r3, 0 -/* 80166274 001631D4 41 82 00 08 */ beq lbl_8016627C -/* 80166278 001631D8 48 1A F6 B9 */ bl Free__7CMemoryFPCv -lbl_8016627C: -/* 8016627C 001631DC 7F A3 EB 78 */ mr r3, r29 -/* 80166280 001631E0 7F E4 FB 78 */ mr r4, r31 -/* 80166284 001631E4 4B EE 68 91 */ bl AddObject__13CStateManagerFR7CEntity -lbl_80166288: -/* 80166288 001631E8 57 C0 06 3F */ clrlwi. r0, r30, 0x18 -/* 8016628C 001631EC 38 C0 00 04 */ li r6, 4 -/* 80166290 001631F0 41 82 00 08 */ beq lbl_80166298 -/* 80166294 001631F4 38 C0 00 01 */ li r6, 1 -lbl_80166298: -/* 80166298 001631F8 A0 1C 00 08 */ lhz r0, 8(r28) -/* 8016629C 001631FC 7F A3 EB 78 */ mr r3, r29 -/* 801662A0 00163200 7F E4 FB 78 */ mr r4, r31 -/* 801662A4 00163204 38 A1 00 1C */ addi r5, r1, 0x1c -/* 801662A8 00163208 B0 01 00 18 */ sth r0, 0x18(r1) -/* 801662AC 0016320C B0 01 00 1C */ sth r0, 0x1c(r1) -/* 801662B0 00163210 4B ED DC 21 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -lbl_801662B4: -/* 801662B4 00163214 BB 41 00 F8 */ lmw r26, 0xf8(r1) -/* 801662B8 00163218 80 01 01 14 */ lwz r0, 0x114(r1) -/* 801662BC 0016321C 7C 08 03 A6 */ mtlr r0 -/* 801662C0 00163220 38 21 01 10 */ addi r1, r1, 0x110 -/* 801662C4 00163224 4E 80 00 20 */ blr - -.global sub_801662c8 -sub_801662c8: -/* 801662C8 00163228 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 801662CC 0016322C 7C 08 02 A6 */ mflr r0 -/* 801662D0 00163230 7C 88 23 78 */ mr r8, r4 -/* 801662D4 00163234 38 C0 00 04 */ li r6, 4 -/* 801662D8 00163238 90 01 00 24 */ stw r0, 0x24(r1) -/* 801662DC 0016323C 54 A0 06 3F */ clrlwi. r0, r5, 0x18 -/* 801662E0 00163240 41 82 00 08 */ beq lbl_801662E8 -/* 801662E4 00163244 38 C0 00 01 */ li r6, 1 -lbl_801662E8: -/* 801662E8 00163248 A0 E3 00 08 */ lhz r7, 8(r3) -/* 801662EC 0016324C 38 81 00 10 */ addi r4, r1, 0x10 -/* 801662F0 00163250 38 A1 00 0C */ addi r5, r1, 0xc -/* 801662F4 00163254 B0 E1 00 0C */ sth r7, 0xc(r1) -/* 801662F8 00163258 A0 03 05 78 */ lhz r0, 0x578(r3) -/* 801662FC 0016325C 7D 03 43 78 */ mr r3, r8 -/* 80166300 00163260 B0 E1 00 08 */ sth r7, 8(r1) -/* 80166304 00163264 B0 01 00 10 */ sth r0, 0x10(r1) -/* 80166308 00163268 4B ED DB 4D */ bl SendScriptMsgAlways__13CStateManagerF9TUniqueId -/* 8016630C 0016326C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80166310 00163270 7C 08 03 A6 */ mtlr r0 -/* 80166314 00163274 38 21 00 20 */ addi r1, r1, 0x20 -/* 80166318 00163278 4E 80 00 20 */ blr - -.global AcceptScriptMsg__6CDroneF20EScriptObjectMessage9TUniqueIdR13CStateManager -AcceptScriptMsg__6CDroneF20EScriptObjectMessage9TUniqueIdR13CStateManager: -/* 8016631C 0016327C 94 21 FE F0 */ stwu r1, -0x110(r1) -/* 80166320 00163280 7C 08 02 A6 */ mflr r0 -/* 80166324 00163284 90 01 01 14 */ stw r0, 0x114(r1) -/* 80166328 00163288 93 E1 01 0C */ stw r31, 0x10c(r1) -/* 8016632C 0016328C 7C DF 33 78 */ mr r31, r6 -/* 80166330 00163290 93 C1 01 08 */ stw r30, 0x108(r1) -/* 80166334 00163294 7C 7E 1B 78 */ mr r30, r3 -/* 80166338 00163298 93 A1 01 04 */ stw r29, 0x104(r1) -/* 8016633C 0016329C 93 81 01 00 */ stw r28, 0x100(r1) -/* 80166340 001632A0 7C 9C 23 78 */ mr r28, r4 -/* 80166344 001632A4 A0 05 00 00 */ lhz r0, 0(r5) -/* 80166348 001632A8 38 A1 00 38 */ addi r5, r1, 0x38 -/* 8016634C 001632AC B0 01 00 38 */ sth r0, 0x38(r1) -/* 80166350 001632B0 4B F1 68 29 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager -/* 80166354 001632B4 28 1C 00 23 */ cmplwi r28, 0x23 -/* 80166358 001632B8 41 81 03 B0 */ bgt lbl_80166708 -/* 8016635C 001632BC 3C 60 80 3E */ lis r3, lbl_803E39C8@ha -/* 80166360 001632C0 57 80 10 3A */ slwi r0, r28, 2 -/* 80166364 001632C4 38 63 39 C8 */ addi r3, r3, lbl_803E39C8@l -/* 80166368 001632C8 7C 03 00 2E */ lwzx r0, r3, r0 -/* 8016636C 001632CC 7C 09 03 A6 */ mtctr r0 -/* 80166370 001632D0 4E 80 04 20 */ bctr -/* 80166374 001632D4 7F C3 F3 78 */ mr r3, r30 -/* 80166378 001632D8 7F E4 FB 78 */ mr r4, r31 -/* 8016637C 001632DC 81 9E 00 00 */ lwz r12, 0(r30) -/* 80166380 001632E0 38 A0 00 01 */ li r5, 1 -/* 80166384 001632E4 81 8C 02 D0 */ lwz r12, 0x2d0(r12) -/* 80166388 001632E8 7D 89 03 A6 */ mtctr r12 -/* 8016638C 001632EC 4E 80 04 21 */ bctrl -/* 80166390 001632F0 7F C3 F3 78 */ mr r3, r30 -/* 80166394 001632F4 7F E4 FB 78 */ mr r4, r31 -/* 80166398 001632F8 4B FF 91 01 */ bl sub_8015f498 -/* 8016639C 001632FC 48 00 03 6C */ b lbl_80166708 -/* 801663A0 00163300 3B BE 07 DC */ addi r29, r30, 0x7dc -/* 801663A4 00163304 3B 80 00 00 */ li r28, 0 -/* 801663A8 00163308 48 00 00 38 */ b lbl_801663E0 -lbl_801663AC: -/* 801663AC 0016330C A0 7D 00 00 */ lhz r3, 0(r29) -/* 801663B0 00163310 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 801663B4 00163314 7C 03 00 40 */ cmplw r3, r0 -/* 801663B8 00163318 41 82 00 20 */ beq lbl_801663D8 -/* 801663BC 0016331C A0 1D 00 00 */ lhz r0, 0(r29) -/* 801663C0 00163320 7F E3 FB 78 */ mr r3, r31 -/* 801663C4 00163324 38 81 00 34 */ addi r4, r1, 0x34 -/* 801663C8 00163328 B0 01 00 34 */ sth r0, 0x34(r1) -/* 801663CC 0016332C 4B EE 5E A1 */ bl FreeScriptObject__13CStateManagerF9TUniqueId -/* 801663D0 00163330 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 801663D4 00163334 B0 1D 00 00 */ sth r0, 0(r29) -lbl_801663D8: -/* 801663D8 00163338 3B BD 00 02 */ addi r29, r29, 2 -/* 801663DC 0016333C 3B 9C 00 01 */ addi r28, r28, 1 -lbl_801663E0: -/* 801663E0 00163340 80 1E 07 D8 */ lwz r0, 0x7d8(r30) -/* 801663E4 00163344 7C 1C 00 00 */ cmpw r28, r0 -/* 801663E8 00163348 41 80 FF C4 */ blt lbl_801663AC -/* 801663EC 0016334C 7F C3 F3 78 */ mr r3, r30 -/* 801663F0 00163350 7F E4 FB 78 */ mr r4, r31 -/* 801663F4 00163354 4B FF 90 01 */ bl sub_8015f3f4 -/* 801663F8 00163358 A0 1E 00 08 */ lhz r0, 8(r30) -/* 801663FC 0016335C 38 81 00 30 */ addi r4, r1, 0x30 -/* 80166400 00163360 B0 01 00 30 */ sth r0, 0x30(r1) -/* 80166404 00163364 80 7F 08 B8 */ lwz r3, 0x8b8(r31) -/* 80166408 00163368 B0 01 00 2C */ sth r0, 0x2c(r1) -/* 8016640C 0016336C 80 63 00 00 */ lwz r3, 0(r3) -/* 80166410 00163370 38 63 01 88 */ addi r3, r3, 0x188 -/* 80166414 00163374 48 05 A5 A1 */ bl sub_801c09b4 -/* 80166418 00163378 A0 7E 05 78 */ lhz r3, 0x578(r30) -/* 8016641C 0016337C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80166420 00163380 7C 03 00 40 */ cmplw r3, r0 -/* 80166424 00163384 41 82 00 20 */ beq lbl_80166444 -/* 80166428 00163388 A0 1E 05 78 */ lhz r0, 0x578(r30) -/* 8016642C 0016338C 7F E3 FB 78 */ mr r3, r31 -/* 80166430 00163390 38 81 00 28 */ addi r4, r1, 0x28 -/* 80166434 00163394 B0 01 00 28 */ sth r0, 0x28(r1) -/* 80166438 00163398 4B EE 5E 35 */ bl FreeScriptObject__13CStateManagerF9TUniqueId -/* 8016643C 0016339C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80166440 001633A0 B0 1E 05 78 */ sth r0, 0x578(r30) -lbl_80166444: -/* 80166444 001633A4 A0 7E 05 7A */ lhz r3, 0x57a(r30) -/* 80166448 001633A8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016644C 001633AC 7C 03 00 40 */ cmplw r3, r0 -/* 80166450 001633B0 41 82 00 20 */ beq lbl_80166470 -/* 80166454 001633B4 A0 1E 05 7A */ lhz r0, 0x57a(r30) -/* 80166458 001633B8 7F E3 FB 78 */ mr r3, r31 -/* 8016645C 001633BC 38 81 00 24 */ addi r4, r1, 0x24 -/* 80166460 001633C0 B0 01 00 24 */ sth r0, 0x24(r1) -/* 80166464 001633C4 4B EE 5E 09 */ bl FreeScriptObject__13CStateManagerF9TUniqueId -/* 80166468 001633C8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016646C 001633CC B0 1E 05 7A */ sth r0, 0x57a(r30) -lbl_80166470: -/* 80166470 001633D0 80 1E 07 D0 */ lwz r0, 0x7d0(r30) -/* 80166474 001633D4 28 00 00 00 */ cmplwi r0, 0 -/* 80166478 001633D8 41 82 02 90 */ beq lbl_80166708 -/* 8016647C 001633DC 80 1E 07 D0 */ lwz r0, 0x7d0(r30) -/* 80166480 001633E0 38 61 00 48 */ addi r3, r1, 0x48 -/* 80166484 001633E4 90 01 00 48 */ stw r0, 0x48(r1) -/* 80166488 001633E8 48 18 39 FD */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle -/* 8016648C 001633EC 38 00 00 00 */ li r0, 0 -/* 80166490 001633F0 90 1E 07 D0 */ stw r0, 0x7d0(r30) -/* 80166494 001633F4 48 00 02 74 */ b lbl_80166708 -/* 80166498 001633F8 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 8016649C 001633FC 7F E4 FB 78 */ mr r4, r31 -/* 801664A0 00163400 4B FD 48 51 */ bl Activate__15CBodyControllerFR13CStateManager -/* 801664A4 00163404 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 801664A8 00163408 38 80 00 02 */ li r4, 2 -/* 801664AC 0016340C 4B FD 45 2D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -/* 801664B0 00163410 C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 801664B4 00163414 38 C0 00 00 */ li r6, 0 -/* 801664B8 00163418 80 FE 04 50 */ lwz r7, 0x450(r30) -/* 801664BC 0016341C 7F C3 F3 78 */ mr r3, r30 -/* 801664C0 00163420 7F E5 FB 78 */ mr r5, r31 -/* 801664C4 00163424 38 80 00 35 */ li r4, 0x35 -/* 801664C8 00163428 D0 07 02 D4 */ stfs f0, 0x2d4(r7) -/* 801664CC 0016342C D0 1E 05 CC */ stfs f0, 0x5cc(r30) -/* 801664D0 00163430 88 1E 04 E1 */ lbz r0, 0x4e1(r30) -/* 801664D4 00163434 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 -/* 801664D8 00163438 98 1E 04 E1 */ stb r0, 0x4e1(r30) -/* 801664DC 0016343C 4B EE DE 75 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 801664E0 00163440 7F E4 FB 78 */ mr r4, r31 -/* 801664E4 00163444 38 61 00 20 */ addi r3, r1, 0x20 -/* 801664E8 00163448 4B EE 6B F5 */ bl AllocateUniqueId__13CStateManagerFv -/* 801664EC 0016344C A0 01 00 20 */ lhz r0, 0x20(r1) -/* 801664F0 00163450 B0 1E 05 78 */ sth r0, 0x578(r30) -/* 801664F4 00163454 48 1E 3A A9 */ bl Red__6CColorFv -/* 801664F8 00163458 3C 80 80 5A */ lis r4, skZero3f@ha -/* 801664FC 0016345C 7C 65 1B 78 */ mr r5, r3 -/* 80166500 00163460 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 80166504 00163464 38 61 00 60 */ addi r3, r1, 0x60 -/* 80166508 00163468 48 19 FF 2D */ bl BuildPoint__6CLightFRC9CVector3fRC6CColor -/* 8016650C 0016346C 38 61 00 B0 */ addi r3, r1, 0xb0 -/* 80166510 00163470 38 81 00 60 */ addi r4, r1, 0x60 -/* 80166514 00163474 4B ED 50 5D */ bl __ct__6CLightFCR6CLight -/* 80166518 00163478 3C 60 80 3D */ lis r3, lbl_803D0398@ha -/* 8016651C 0016347C 3B 80 00 00 */ li r28, 0 -/* 80166520 00163480 38 83 03 98 */ addi r4, r3, lbl_803D0398@l -/* 80166524 00163484 38 60 01 48 */ li r3, 0x148 -/* 80166528 00163488 38 84 00 3B */ addi r4, r4, 0x3b -/* 8016652C 0016348C 38 A0 00 00 */ li r5, 0 -/* 80166530 00163490 48 1A F3 3D */ bl __nw__FUlPCcPCc -/* 80166534 00163494 7C 7D 1B 79 */ or. r29, r3, r3 -/* 80166538 00163498 41 82 00 7C */ beq lbl_801665B4 -/* 8016653C 0016349C A0 1E 00 08 */ lhz r0, 8(r30) -/* 80166540 001634A0 3C 60 80 3D */ lis r3, lbl_803D0398@ha -/* 80166544 001634A4 38 83 03 98 */ addi r4, r3, lbl_803D0398@l -/* 80166548 001634A8 38 61 00 50 */ addi r3, r1, 0x50 -/* 8016654C 001634AC B0 01 00 18 */ sth r0, 0x18(r1) -/* 80166550 001634B0 38 84 00 6B */ addi r4, r4, 0x6b -/* 80166554 001634B4 B0 01 00 1C */ sth r0, 0x1c(r1) -/* 80166558 001634B8 4B E9 E7 61 */ bl string_l__4rstlFPCc -/* 8016655C 001634BC 88 1E 00 30 */ lbz r0, 0x30(r30) -/* 80166560 001634C0 3C 60 80 5A */ lis r3, skIdentity4f@ha -/* 80166564 001634C4 80 9E 00 04 */ lwz r4, 4(r30) -/* 80166568 001634C8 39 03 66 70 */ addi r8, r3, skIdentity4f@l -/* 8016656C 001634CC 54 06 CF FE */ rlwinm r6, r0, 0x19, 0x1f, 0x1f -/* 80166570 001634D0 38 00 00 00 */ li r0, 0 -/* 80166574 001634D4 90 81 00 44 */ stw r4, 0x44(r1) -/* 80166578 001634D8 7F A3 EB 78 */ mr r3, r29 -/* 8016657C 001634DC C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 80166580 001634E0 38 A1 00 44 */ addi r5, r1, 0x44 -/* 80166584 001634E4 A1 3E 05 78 */ lhz r9, 0x578(r30) -/* 80166588 001634E8 38 E1 00 50 */ addi r7, r1, 0x50 -/* 8016658C 001634EC 90 81 00 40 */ stw r4, 0x40(r1) -/* 80166590 001634F0 38 81 00 14 */ addi r4, r1, 0x14 -/* 80166594 001634F4 39 41 00 B0 */ addi r10, r1, 0xb0 -/* 80166598 001634F8 3B 80 00 01 */ li r28, 1 -/* 8016659C 001634FC B1 21 00 14 */ sth r9, 0x14(r1) -/* 801665A0 00163500 39 21 00 1C */ addi r9, r1, 0x1c -/* 801665A4 00163504 90 01 00 08 */ stw r0, 8(r1) -/* 801665A8 00163508 90 01 00 0C */ stw r0, 0xc(r1) -/* 801665AC 0016350C 4B F4 F2 79 */ bl "__ct__10CGameLightF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC12CTransform4f9TUniqueIdRC6CLightUiUif" -/* 801665B0 00163510 7C 7D 1B 78 */ mr r29, r3 -lbl_801665B4: -/* 801665B4 00163514 7F 80 07 75 */ extsb. r0, r28 -/* 801665B8 00163518 7F BC EB 78 */ mr r28, r29 -/* 801665BC 0016351C 41 82 00 0C */ beq lbl_801665C8 -/* 801665C0 00163520 38 61 00 50 */ addi r3, r1, 0x50 -/* 801665C4 00163524 48 1D 75 1D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -lbl_801665C8: -/* 801665C8 00163528 7F E3 FB 78 */ mr r3, r31 -/* 801665CC 0016352C 7F 84 E3 78 */ mr r4, r28 -/* 801665D0 00163530 4B EE 65 45 */ bl AddObject__13CStateManagerFR7CEntity -/* 801665D4 00163534 48 00 01 34 */ b lbl_80166708 -/* 801665D8 00163538 88 1E 08 34 */ lbz r0, 0x834(r30) -/* 801665DC 0016353C 38 60 00 01 */ li r3, 1 -/* 801665E0 00163540 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d -/* 801665E4 00163544 98 1E 08 34 */ stb r0, 0x834(r30) -/* 801665E8 00163548 48 00 01 20 */ b lbl_80166708 -/* 801665EC 0016354C 80 BE 00 04 */ lwz r5, 4(r30) -/* 801665F0 00163550 80 9F 08 50 */ lwz r4, 0x850(r31) -/* 801665F4 00163554 54 A3 18 38 */ slwi r3, r5, 3 -/* 801665F8 00163558 90 A1 00 4C */ stw r5, 0x4c(r1) -/* 801665FC 0016355C 80 84 00 20 */ lwz r4, 0x20(r4) -/* 80166600 00163560 38 03 00 04 */ addi r0, r3, 4 -/* 80166604 00163564 90 A1 00 3C */ stw r5, 0x3c(r1) -/* 80166608 00163568 7C 64 00 2E */ lwzx r3, r4, r0 -/* 8016660C 0016356C 80 63 01 2C */ lwz r3, 0x12c(r3) -/* 80166610 00163570 80 03 10 BC */ lwz r0, 0x10bc(r3) -/* 80166614 00163574 90 1E 06 B0 */ stw r0, 0x6b0(r30) -/* 80166618 00163578 A0 7E 06 88 */ lhz r3, 0x688(r30) -/* 8016661C 0016357C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80166620 00163580 7C 03 00 40 */ cmplw r3, r0 -/* 80166624 00163584 40 82 00 34 */ bne lbl_80166658 -/* 80166628 00163588 7F C4 F3 78 */ mr r4, r30 -/* 8016662C 0016358C 7F E5 FB 78 */ mr r5, r31 -/* 80166630 00163590 38 61 00 10 */ addi r3, r1, 0x10 -/* 80166634 00163594 48 0D 3B B5 */ bl GetTeamAiMgr__10CTeamAiMgrF3CAiRC13CStateManager -/* 80166638 00163598 A0 01 00 10 */ lhz r0, 0x10(r1) -/* 8016663C 0016359C B0 1E 06 88 */ sth r0, 0x688(r30) -/* 80166640 001635A0 88 1E 00 30 */ lbz r0, 0x30(r30) -/* 80166644 001635A4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80166648 001635A8 41 82 00 10 */ beq lbl_80166658 -/* 8016664C 001635AC 7F C3 F3 78 */ mr r3, r30 -/* 80166650 001635B0 7F E4 FB 78 */ mr r4, r31 -/* 80166654 001635B4 4B FF 8E 45 */ bl sub_8015f498 -lbl_80166658: -/* 80166658 001635B8 7F C3 F3 78 */ mr r3, r30 -/* 8016665C 001635BC 7F E4 FB 78 */ mr r4, r31 -/* 80166660 001635C0 81 9E 00 00 */ lwz r12, 0(r30) -/* 80166664 001635C4 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 80166668 001635C8 7D 89 03 A6 */ mtctr r12 -/* 8016666C 001635CC 4E 80 04 21 */ bctrl -/* 80166670 001635D0 C0 03 00 00 */ lfs f0, 0(r3) -/* 80166674 001635D4 C0 62 9F 7C */ lfs f3, lbl_805ABC9C@sda21(r2) -/* 80166678 001635D8 D0 1E 06 04 */ stfs f0, 0x604(r30) -/* 8016667C 001635DC 80 7E 00 64 */ lwz r3, 0x64(r30) -/* 80166680 001635E0 C0 03 00 00 */ lfs f0, 0(r3) -/* 80166684 001635E4 C0 23 00 04 */ lfs f1, 4(r3) -/* 80166688 001635E8 EC 03 00 24 */ fdivs f0, f3, f0 -/* 8016668C 001635EC C0 43 00 08 */ lfs f2, 8(r3) -/* 80166690 001635F0 D0 1E 05 5C */ stfs f0, 0x55c(r30) -/* 80166694 001635F4 EC 23 08 24 */ fdivs f1, f3, f1 -/* 80166698 001635F8 EC 03 10 24 */ fdivs f0, f3, f2 -/* 8016669C 001635FC D0 3E 05 60 */ stfs f1, 0x560(r30) -/* 801666A0 00163600 D0 1E 05 64 */ stfs f0, 0x564(r30) -/* 801666A4 00163604 88 1E 08 35 */ lbz r0, 0x835(r30) -/* 801666A8 00163608 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 801666AC 0016360C 41 82 00 5C */ beq lbl_80166708 -/* 801666B0 00163610 7F C3 F3 78 */ mr r3, r30 -/* 801666B4 00163614 38 80 00 00 */ li r4, 0 -/* 801666B8 00163618 4B EE CC 6D */ bl SetSoundEventPitchBend__6CActorFi -/* 801666BC 0016361C 48 00 00 4C */ b lbl_80166708 -/* 801666C0 00163620 88 9E 08 35 */ lbz r4, 0x835(r30) -/* 801666C4 00163624 54 80 DF FF */ rlwinm. r0, r4, 0x1b, 0x1f, 0x1f -/* 801666C8 00163628 40 82 00 40 */ bne lbl_80166708 -/* 801666CC 0016362C 88 1E 08 34 */ lbz r0, 0x834(r30) -/* 801666D0 00163630 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 801666D4 00163634 41 82 00 34 */ beq lbl_80166708 -/* 801666D8 00163638 88 1E 04 00 */ lbz r0, 0x400(r30) -/* 801666DC 0016363C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 801666E0 00163640 40 82 00 28 */ bne lbl_80166708 -/* 801666E4 00163644 38 00 00 01 */ li r0, 1 -/* 801666E8 00163648 7F C3 F3 78 */ mr r3, r30 -/* 801666EC 0016364C 50 04 2E B4 */ rlwimi r4, r0, 5, 0x1a, 0x1a -/* 801666F0 00163650 98 9E 08 35 */ stb r4, 0x835(r30) -/* 801666F4 00163654 7F E4 FB 78 */ mr r4, r31 -/* 801666F8 00163658 81 9E 00 00 */ lwz r12, 0(r30) -/* 801666FC 0016365C 81 8C 02 9C */ lwz r12, 0x29c(r12) -/* 80166700 00163660 7D 89 03 A6 */ mtctr r12 -/* 80166704 00163664 4E 80 04 21 */ bctrl -lbl_80166708: -/* 80166708 00163668 80 01 01 14 */ lwz r0, 0x114(r1) -/* 8016670C 0016366C 83 E1 01 0C */ lwz r31, 0x10c(r1) -/* 80166710 00163670 83 C1 01 08 */ lwz r30, 0x108(r1) -/* 80166714 00163674 83 A1 01 04 */ lwz r29, 0x104(r1) -/* 80166718 00163678 83 81 01 00 */ lwz r28, 0x100(r1) -/* 8016671C 0016367C 7C 08 03 A6 */ mtlr r0 -/* 80166720 00163680 38 21 01 10 */ addi r1, r1, 0x110 -/* 80166724 00163684 4E 80 00 20 */ blr - -.global Accept__6CDroneFR8IVisitor -Accept__6CDroneFR8IVisitor: -/* 80166728 00163688 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8016672C 0016368C 7C 08 02 A6 */ mflr r0 -/* 80166730 00163690 90 01 00 14 */ stw r0, 0x14(r1) -/* 80166734 00163694 7C 60 1B 78 */ mr r0, r3 -/* 80166738 00163698 7C 83 23 78 */ mr r3, r4 -/* 8016673C 0016369C 81 84 00 00 */ lwz r12, 0(r4) -/* 80166740 001636A0 7C 04 03 78 */ mr r4, r0 -/* 80166744 001636A4 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 80166748 001636A8 7D 89 03 A6 */ mtctr r12 -/* 8016674C 001636AC 4E 80 04 21 */ bctrl -/* 80166750 001636B0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80166754 001636B4 7C 08 03 A6 */ mtlr r0 -/* 80166758 001636B8 38 21 00 10 */ addi r1, r1, 0x10 -/* 8016675C 001636BC 4E 80 00 20 */ blr - -.global "__ct__6CDroneF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC11CDamageInfoUiUiUiRC11CDamageInfofUiQ24rstl60vectorRC16CActorParameters" -"__ct__6CDroneF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC11CDamageInfoUiUiUiRC11CDamageInfofUiQ24rstl60vectorRC16CActorParameters": -/* 80166760 001636C0 94 21 FE 50 */ stwu r1, -0x1b0(r1) -/* 80166764 001636C4 7C 08 02 A6 */ mflr r0 -/* 80166768 001636C8 90 01 01 B4 */ stw r0, 0x1b4(r1) -/* 8016676C 001636CC DB E1 01 A0 */ stfd f31, 0x1a0(r1) -/* 80166770 001636D0 F3 E1 01 A8 */ psq_st f31, 424(r1), 0, qr0 -/* 80166774 001636D4 DB C1 01 90 */ stfd f30, 0x190(r1) -/* 80166778 001636D8 F3 C1 01 98 */ psq_st f30, 408(r1), 0, qr0 -/* 8016677C 001636DC DB A1 01 80 */ stfd f29, 0x180(r1) -/* 80166780 001636E0 F3 A1 01 88 */ psq_st f29, 392(r1), 0, qr0 -/* 80166784 001636E4 DB 81 01 70 */ stfd f28, 0x170(r1) -/* 80166788 001636E8 F3 81 01 78 */ psq_st f28, 376(r1), 0, qr0 -/* 8016678C 001636EC DB 61 01 60 */ stfd f27, 0x160(r1) -/* 80166790 001636F0 F3 61 01 68 */ psq_st f27, 360(r1), 0, qr0 -/* 80166794 001636F4 DB 41 01 50 */ stfd f26, 0x150(r1) -/* 80166798 001636F8 F3 41 01 58 */ psq_st f26, 344(r1), 0, qr0 -/* 8016679C 001636FC DB 21 01 40 */ stfd f25, 0x140(r1) -/* 801667A0 00163700 F3 21 01 48 */ psq_st f25, 328(r1), 0, qr0 -/* 801667A4 00163704 DB 01 01 30 */ stfd f24, 0x130(r1) -/* 801667A8 00163708 F3 01 01 38 */ psq_st f24, 312(r1), 0, qr0 -/* 801667AC 0016370C DA E1 01 20 */ stfd f23, 0x120(r1) -/* 801667B0 00163710 F2 E1 01 28 */ psq_st f23, 296(r1), 0, qr0 -/* 801667B4 00163714 DA C1 01 10 */ stfd f22, 0x110(r1) -/* 801667B8 00163718 F2 C1 01 18 */ psq_st f22, 280(r1), 0, qr0 -/* 801667BC 0016371C DA A1 01 00 */ stfd f21, 0x100(r1) -/* 801667C0 00163720 F2 A1 01 08 */ psq_st f21, 264(r1), 0, qr0 -/* 801667C4 00163724 DA 81 00 F0 */ stfd f20, 0xf0(r1) -/* 801667C8 00163728 F2 81 00 F8 */ psq_st f20, 248(r1), 0, qr0 -/* 801667CC 0016372C DA 61 00 E0 */ stfd f19, 0xe0(r1) -/* 801667D0 00163730 F2 61 00 E8 */ psq_st f19, 232(r1), 0, qr0 -/* 801667D4 00163734 DA 41 00 D0 */ stfd f18, 0xd0(r1) -/* 801667D8 00163738 F2 41 00 D8 */ psq_st f18, 216(r1), 0, qr0 -/* 801667DC 0016373C DA 21 00 C0 */ stfd f17, 0xc0(r1) -/* 801667E0 00163740 F2 21 00 C8 */ psq_st f17, 200(r1), 0, qr0 -/* 801667E4 00163744 DA 01 00 B0 */ stfd f16, 0xb0(r1) -/* 801667E8 00163748 F2 01 00 B8 */ psq_st f16, 184(r1), 0, qr0 -/* 801667EC 0016374C D9 E1 00 A0 */ stfd f15, 0xa0(r1) -/* 801667F0 00163750 F1 E1 00 A8 */ psq_st f15, 168(r1), 0, qr0 -/* 801667F4 00163754 D9 C1 00 90 */ stfd f14, 0x90(r1) -/* 801667F8 00163758 F1 C1 00 98 */ psq_st f14, 152(r1), 0, qr0 -/* 801667FC 0016375C BE 01 00 50 */ stmw r16, 0x50(r1) -/* 80166800 00163760 7C D1 33 79 */ or. r17, r6, r6 -/* 80166804 00163764 FD C0 08 90 */ fmr f14, f1 -/* 80166808 00163768 FD E0 10 90 */ fmr f15, f2 -/* 8016680C 0016376C 82 A1 01 B8 */ lwz r21, 0x1b8(r1) -/* 80166810 00163770 FE 00 18 90 */ fmr f16, f3 -/* 80166814 00163774 82 C1 01 BC */ lwz r22, 0x1bc(r1) -/* 80166818 00163778 FE 20 20 90 */ fmr f17, f4 -/* 8016681C 0016377C FE 40 28 90 */ fmr f18, f5 -/* 80166820 00163780 FE 60 30 90 */ fmr f19, f6 -/* 80166824 00163784 81 81 01 C0 */ lwz r12, 0x1c0(r1) -/* 80166828 00163788 FE 80 38 90 */ fmr f20, f7 -/* 8016682C 0016378C 81 61 01 C4 */ lwz r11, 0x1c4(r1) -/* 80166830 00163790 FE A0 40 90 */ fmr f21, f8 -/* 80166834 00163794 82 E1 01 C8 */ lwz r23, 0x1c8(r1) -/* 80166838 00163798 83 01 01 CC */ lwz r24, 0x1cc(r1) -/* 8016683C 0016379C 7C 7E 1B 78 */ mr r30, r3 -/* 80166840 001637A0 83 21 01 D0 */ lwz r25, 0x1d0(r1) -/* 80166844 001637A4 7C F2 3B 78 */ mr r18, r7 -/* 80166848 001637A8 82 01 01 D4 */ lwz r16, 0x1d4(r1) -/* 8016684C 001637AC 7D 13 43 78 */ mr r19, r8 -/* 80166850 001637B0 83 41 01 D8 */ lwz r26, 0x1d8(r1) -/* 80166854 001637B4 7D 34 4B 78 */ mr r20, r9 -/* 80166858 001637B8 C2 C1 01 DC */ lfs f22, 0x1dc(r1) -/* 8016685C 001637BC 7D 5F 53 78 */ mr r31, r10 -/* 80166860 001637C0 C2 E1 01 E0 */ lfs f23, 0x1e0(r1) -/* 80166864 001637C4 38 00 00 02 */ li r0, 2 -/* 80166868 001637C8 C3 01 01 E4 */ lfs f24, 0x1e4(r1) -/* 8016686C 001637CC C3 21 01 E8 */ lfs f25, 0x1e8(r1) -/* 80166870 001637D0 C3 41 01 EC */ lfs f26, 0x1ec(r1) -/* 80166874 001637D4 C3 61 01 F0 */ lfs f27, 0x1f0(r1) -/* 80166878 001637D8 C3 81 01 F4 */ lfs f28, 0x1f4(r1) -/* 8016687C 001637DC C3 A1 01 F8 */ lfs f29, 0x1f8(r1) -/* 80166880 001637E0 C3 C1 01 FC */ lfs f30, 0x1fc(r1) -/* 80166884 001637E4 C3 E1 02 00 */ lfs f31, 0x200(r1) -/* 80166888 001637E8 83 61 02 0C */ lwz r27, 0x20c(r1) -/* 8016688C 001637EC 83 81 02 20 */ lwz r28, 0x220(r1) -/* 80166890 001637F0 8B A1 02 27 */ lbz r29, 0x227(r1) -/* 80166894 001637F4 40 82 00 08 */ bne lbl_8016689C -/* 80166898 001637F8 38 00 00 01 */ li r0, 1 -lbl_8016689C: -/* 8016689C 001637FC A0 84 00 00 */ lhz r4, 0(r4) -/* 801668A0 00163800 7F C3 F3 78 */ mr r3, r30 -/* 801668A4 00163804 7C A6 2B 78 */ mr r6, r5 -/* 801668A8 00163808 7E 27 8B 78 */ mr r7, r17 -/* 801668AC 0016380C B0 81 00 20 */ sth r4, 0x20(r1) -/* 801668B0 00163810 7E 48 93 78 */ mr r8, r18 -/* 801668B4 00163814 7E 69 9B 78 */ mr r9, r19 -/* 801668B8 00163818 7E 8A A3 78 */ mr r10, r20 -/* 801668BC 0016381C 93 E1 00 08 */ stw r31, 8(r1) -/* 801668C0 00163820 38 A1 00 20 */ addi r5, r1, 0x20 -/* 801668C4 00163824 38 80 00 07 */ li r4, 7 -/* 801668C8 00163828 92 C1 00 0C */ stw r22, 0xc(r1) -/* 801668CC 0016382C 91 81 00 10 */ stw r12, 0x10(r1) -/* 801668D0 00163830 91 61 00 14 */ stw r11, 0x14(r1) -/* 801668D4 00163834 92 A1 00 18 */ stw r21, 0x18(r1) -/* 801668D8 00163838 90 01 00 1C */ stw r0, 0x1c(r1) -/* 801668DC 0016383C 4B F1 6B 75 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" -/* 801668E0 00163840 3C 60 80 3E */ lis r3, lbl_803E36A8@ha -/* 801668E4 00163844 3C 80 43 52 */ lis r4, 0x43525343@ha -/* 801668E8 00163848 38 03 36 A8 */ addi r0, r3, lbl_803E36A8@l -/* 801668EC 0016384C 38 61 00 24 */ addi r3, r1, 0x24 -/* 801668F0 00163850 90 1E 00 00 */ stw r0, 0(r30) -/* 801668F4 00163854 38 04 53 43 */ addi r0, r4, 0x43525343@l -/* 801668F8 00163858 38 A1 00 2C */ addi r5, r1, 0x2c -/* 801668FC 0016385C 93 1E 05 68 */ stw r24, 0x568(r30) -/* 80166900 00163860 90 01 00 2C */ stw r0, 0x2c(r1) -/* 80166904 00163864 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) -/* 80166908 00163868 93 61 00 30 */ stw r27, 0x30(r1) -/* 8016690C 0016386C 81 84 00 00 */ lwz r12, 0(r4) -/* 80166910 00163870 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 80166914 00163874 7D 89 03 A6 */ mtctr r12 -/* 80166918 00163878 4E 80 04 21 */ bctrl -/* 8016691C 0016387C 3A 3E 05 6C */ addi r17, r30, 0x56c -/* 80166920 00163880 38 81 00 24 */ addi r4, r1, 0x24 -/* 80166924 00163884 7E 23 8B 78 */ mr r3, r17 -/* 80166928 00163888 48 1D A5 81 */ bl __ct__6CTokenFRC6CToken -/* 8016692C 0016388C 7E 23 8B 78 */ mr r3, r17 -/* 80166930 00163890 48 1D A4 DD */ bl GetObj__6CTokenFv -/* 80166934 00163894 80 03 00 04 */ lwz r0, 4(r3) -/* 80166938 00163898 38 61 00 24 */ addi r3, r1, 0x24 -/* 8016693C 0016389C 38 80 FF FF */ li r4, -1 -/* 80166940 001638A0 90 11 00 08 */ stw r0, 8(r17) -/* 80166944 001638A4 48 1D A4 FD */ bl __dt__6CTokenFv -/* 80166948 001638A8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016694C 001638AC 7F 44 D3 78 */ mr r4, r26 -/* 80166950 001638B0 38 7E 05 7C */ addi r3, r30, 0x57c -/* 80166954 001638B4 B0 1E 05 78 */ sth r0, 0x578(r30) -/* 80166958 001638B8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016695C 001638BC B0 1E 05 7A */ sth r0, 0x57a(r30) -/* 80166960 001638C0 4B F6 7B 0D */ bl sub_800ce46c -/* 80166964 001638C4 38 00 00 02 */ li r0, 2 -/* 80166968 001638C8 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8016696C 001638CC 90 1E 05 8C */ stw r0, 0x58c(r30) -/* 80166970 001638D0 3A 23 66 A0 */ addi r17, r3, skZero3f@l -/* 80166974 001638D4 3A 5E 06 90 */ addi r18, r30, 0x690 -/* 80166978 001638D8 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 8016697C 001638DC 80 17 00 00 */ lwz r0, 0(r23) -/* 80166980 001638E0 38 9E 00 68 */ addi r4, r30, 0x68 -/* 80166984 001638E4 7E 43 93 78 */ mr r3, r18 -/* 80166988 001638E8 90 1E 05 90 */ stw r0, 0x590(r30) -/* 8016698C 001638EC 88 17 00 04 */ lbz r0, 4(r23) -/* 80166990 001638F0 98 1E 05 94 */ stb r0, 0x594(r30) -/* 80166994 001638F4 C0 17 00 08 */ lfs f0, 8(r23) -/* 80166998 001638F8 D0 1E 05 98 */ stfs f0, 0x598(r30) -/* 8016699C 001638FC C0 17 00 0C */ lfs f0, 0xc(r23) -/* 801669A0 00163900 D0 1E 05 9C */ stfs f0, 0x59c(r30) -/* 801669A4 00163904 C0 17 00 10 */ lfs f0, 0x10(r23) -/* 801669A8 00163908 D0 1E 05 A0 */ stfs f0, 0x5a0(r30) -/* 801669AC 0016390C C0 17 00 14 */ lfs f0, 0x14(r23) -/* 801669B0 00163910 D0 1E 05 A4 */ stfs f0, 0x5a4(r30) -/* 801669B4 00163914 88 17 00 18 */ lbz r0, 0x18(r23) -/* 801669B8 00163918 98 1E 05 A8 */ stb r0, 0x5a8(r30) -/* 801669BC 0016391C 80 19 00 00 */ lwz r0, 0(r25) -/* 801669C0 00163920 90 1E 05 AC */ stw r0, 0x5ac(r30) -/* 801669C4 00163924 88 19 00 04 */ lbz r0, 4(r25) -/* 801669C8 00163928 98 1E 05 B0 */ stb r0, 0x5b0(r30) -/* 801669CC 0016392C C0 19 00 08 */ lfs f0, 8(r25) -/* 801669D0 00163930 D0 1E 05 B4 */ stfs f0, 0x5b4(r30) -/* 801669D4 00163934 C0 19 00 0C */ lfs f0, 0xc(r25) -/* 801669D8 00163938 D0 1E 05 B8 */ stfs f0, 0x5b8(r30) -/* 801669DC 0016393C C0 19 00 10 */ lfs f0, 0x10(r25) -/* 801669E0 00163940 D0 1E 05 BC */ stfs f0, 0x5bc(r30) -/* 801669E4 00163944 C0 19 00 14 */ lfs f0, 0x14(r25) -/* 801669E8 00163948 D0 1E 05 C0 */ stfs f0, 0x5c0(r30) -/* 801669EC 0016394C C0 01 02 18 */ lfs f0, 0x218(r1) -/* 801669F0 00163950 88 19 00 18 */ lbz r0, 0x18(r25) -/* 801669F4 00163954 98 1E 05 C4 */ stb r0, 0x5c4(r30) -/* 801669F8 00163958 D0 3E 05 C8 */ stfs f1, 0x5c8(r30) -/* 801669FC 0016395C D0 3E 05 CC */ stfs f1, 0x5cc(r30) -/* 80166A00 00163960 D0 3E 05 D0 */ stfs f1, 0x5d0(r30) -/* 80166A04 00163964 D0 3E 05 D4 */ stfs f1, 0x5d4(r30) -/* 80166A08 00163968 D0 3E 05 D8 */ stfs f1, 0x5d8(r30) -/* 80166A0C 0016396C D0 3E 05 DC */ stfs f1, 0x5dc(r30) -/* 80166A10 00163970 D0 3E 05 E0 */ stfs f1, 0x5e0(r30) -/* 80166A14 00163974 D0 1E 05 E4 */ stfs f0, 0x5e4(r30) -/* 80166A18 00163978 C0 01 02 08 */ lfs f0, 0x208(r1) -/* 80166A1C 0016397C D0 3E 05 E8 */ stfs f1, 0x5e8(r30) -/* 80166A20 00163980 D1 DE 05 EC */ stfs f14, 0x5ec(r30) -/* 80166A24 00163984 D1 FE 05 F0 */ stfs f15, 0x5f0(r30) -/* 80166A28 00163988 D2 1E 05 F4 */ stfs f16, 0x5f4(r30) -/* 80166A2C 0016398C D2 3E 05 F8 */ stfs f17, 0x5f8(r30) -/* 80166A30 00163990 D2 5E 05 FC */ stfs f18, 0x5fc(r30) -/* 80166A34 00163994 D3 1E 06 00 */ stfs f24, 0x600(r30) -/* 80166A38 00163998 D0 3E 06 04 */ stfs f1, 0x604(r30) -/* 80166A3C 0016399C D2 7E 06 08 */ stfs f19, 0x608(r30) -/* 80166A40 001639A0 D2 9E 06 0C */ stfs f20, 0x60c(r30) -/* 80166A44 001639A4 D2 BE 06 10 */ stfs f21, 0x610(r30) -/* 80166A48 001639A8 D2 DE 06 14 */ stfs f22, 0x614(r30) -/* 80166A4C 001639AC D2 FE 06 18 */ stfs f23, 0x618(r30) -/* 80166A50 001639B0 D3 3E 06 1C */ stfs f25, 0x61c(r30) -/* 80166A54 001639B4 D0 1E 06 20 */ stfs f0, 0x620(r30) -/* 80166A58 001639B8 C0 01 02 04 */ lfs f0, 0x204(r1) -/* 80166A5C 001639BC D0 3E 06 24 */ stfs f1, 0x624(r30) -/* 80166A60 001639C0 D0 3E 06 28 */ stfs f1, 0x628(r30) -/* 80166A64 001639C4 D0 3E 06 2C */ stfs f1, 0x62c(r30) -/* 80166A68 001639C8 D0 3E 06 30 */ stfs f1, 0x630(r30) -/* 80166A6C 001639CC D0 3E 06 34 */ stfs f1, 0x634(r30) -/* 80166A70 001639D0 D0 3E 06 38 */ stfs f1, 0x638(r30) -/* 80166A74 001639D4 D3 5E 06 3C */ stfs f26, 0x63c(r30) -/* 80166A78 001639D8 D3 7E 06 40 */ stfs f27, 0x640(r30) -/* 80166A7C 001639DC D0 3E 06 44 */ stfs f1, 0x644(r30) -/* 80166A80 001639E0 D3 9E 06 48 */ stfs f28, 0x648(r30) -/* 80166A84 001639E4 D3 BE 06 4C */ stfs f29, 0x64c(r30) -/* 80166A88 001639E8 D3 DE 06 50 */ stfs f30, 0x650(r30) -/* 80166A8C 001639EC D3 FE 06 54 */ stfs f31, 0x654(r30) -/* 80166A90 001639F0 D0 1E 06 58 */ stfs f0, 0x658(r30) -/* 80166A94 001639F4 C0 01 02 10 */ lfs f0, 0x210(r1) -/* 80166A98 001639F8 D0 1E 06 5C */ stfs f0, 0x65c(r30) -/* 80166A9C 001639FC C0 01 02 14 */ lfs f0, 0x214(r1) -/* 80166AA0 00163A00 D0 1E 06 60 */ stfs f0, 0x660(r30) -/* 80166AA4 00163A04 C0 01 02 1C */ lfs f0, 0x21c(r1) -/* 80166AA8 00163A08 D0 1E 06 64 */ stfs f0, 0x664(r30) -/* 80166AAC 00163A0C D0 3E 06 68 */ stfs f1, 0x668(r30) -/* 80166AB0 00163A10 D0 3E 06 6C */ stfs f1, 0x66c(r30) -/* 80166AB4 00163A14 C0 11 00 00 */ lfs f0, 0(r17) -/* 80166AB8 00163A18 D0 1E 06 70 */ stfs f0, 0x670(r30) -/* 80166ABC 00163A1C C0 11 00 04 */ lfs f0, 4(r17) -/* 80166AC0 00163A20 D0 1E 06 74 */ stfs f0, 0x674(r30) -/* 80166AC4 00163A24 C0 11 00 08 */ lfs f0, 8(r17) -/* 80166AC8 00163A28 D0 1E 06 78 */ stfs f0, 0x678(r30) -/* 80166ACC 00163A2C C0 11 00 00 */ lfs f0, 0(r17) -/* 80166AD0 00163A30 D0 1E 06 7C */ stfs f0, 0x67c(r30) -/* 80166AD4 00163A34 C0 11 00 04 */ lfs f0, 4(r17) -/* 80166AD8 00163A38 D0 1E 06 80 */ stfs f0, 0x680(r30) -/* 80166ADC 00163A3C C0 11 00 08 */ lfs f0, 8(r17) -/* 80166AE0 00163A40 D0 1E 06 84 */ stfs f0, 0x684(r30) -/* 80166AE4 00163A44 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80166AE8 00163A48 B0 1E 06 88 */ sth r0, 0x688(r30) -/* 80166AEC 00163A4C 48 16 8D C9 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList -/* 80166AF0 00163A50 3C 60 80 3F */ lis r3, lbl_803ECAF8@ha -/* 80166AF4 00163A54 7C 1D 00 D0 */ neg r0, r29 -/* 80166AF8 00163A58 38 63 CA F8 */ addi r3, r3, lbl_803ECAF8@l -/* 80166AFC 00163A5C C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 80166B00 00163A60 90 72 00 00 */ stw r3, 0(r18) -/* 80166B04 00163A64 7C 00 EB 78 */ or r0, r0, r29 -/* 80166B08 00163A68 54 03 0F FE */ srwi r3, r0, 0x1f -/* 80166B0C 00163A6C C0 42 A0 38 */ lfs f2, lbl_805ABD58@sda21(r2) -/* 80166B10 00163A70 D0 32 00 10 */ stfs f1, 0x10(r18) -/* 80166B14 00163A74 38 A3 00 03 */ addi r5, r3, 3 -/* 80166B18 00163A78 C0 02 A0 3C */ lfs f0, lbl_805ABD5C@sda21(r2) -/* 80166B1C 00163A7C 38 7E 06 B0 */ addi r3, r30, 0x6b0 -/* 80166B20 00163A80 D0 32 00 14 */ stfs f1, 0x14(r18) -/* 80166B24 00163A84 38 80 00 00 */ li r4, 0 -/* 80166B28 00163A88 C0 22 9F 7C */ lfs f1, lbl_805ABC9C@sda21(r2) -/* 80166B2C 00163A8C D0 52 00 18 */ stfs f2, 0x18(r18) -/* 80166B30 00163A90 C0 42 A0 40 */ lfs f2, lbl_805ABD60@sda21(r2) -/* 80166B34 00163A94 D0 12 00 1C */ stfs f0, 0x1c(r18) -/* 80166B38 00163A98 80 DF 01 0C */ lwz r6, 0x10c(r31) -/* 80166B3C 00163A9C 48 06 22 59 */ bl __ct__15CPathFindSearchFP7CPFAreaUiff -/* 80166B40 00163AA0 4B EB 49 F5 */ bl Identity__10CAxisAngleFv -/* 80166B44 00163AA4 C0 23 00 00 */ lfs f1, 0(r3) -/* 80166B48 00163AA8 3C 80 80 5A */ lis r4, skZero3f@ha -/* 80166B4C 00163AAC C0 02 9F 68 */ lfs f0, lbl_805ABC88@sda21(r2) -/* 80166B50 00163AB0 38 00 00 00 */ li r0, 0 -/* 80166B54 00163AB4 D0 3E 07 94 */ stfs f1, 0x794(r30) -/* 80166B58 00163AB8 C0 23 00 04 */ lfs f1, 4(r3) -/* 80166B5C 00163ABC D0 3E 07 98 */ stfs f1, 0x798(r30) -/* 80166B60 00163AC0 C0 23 00 08 */ lfs f1, 8(r3) -/* 80166B64 00163AC4 57 83 04 3E */ clrlwi r3, r28, 0x10 -/* 80166B68 00163AC8 D0 3E 07 9C */ stfs f1, 0x79c(r30) -/* 80166B6C 00163ACC C0 24 66 A0 */ lfs f1, skZero3f@l(r4) -/* 80166B70 00163AD0 D0 3E 07 A0 */ stfs f1, 0x7a0(r30) -/* 80166B74 00163AD4 C0 31 00 04 */ lfs f1, 4(r17) -/* 80166B78 00163AD8 D0 3E 07 A4 */ stfs f1, 0x7a4(r30) -/* 80166B7C 00163ADC C0 31 00 08 */ lfs f1, 8(r17) -/* 80166B80 00163AE0 D0 3E 07 A8 */ stfs f1, 0x7a8(r30) -/* 80166B84 00163AE4 D0 1E 07 AC */ stfs f0, 0x7ac(r30) -/* 80166B88 00163AE8 D0 1E 07 B0 */ stfs f0, 0x7b0(r30) -/* 80166B8C 00163AEC D0 1E 07 B4 */ stfs f0, 0x7b4(r30) -/* 80166B90 00163AF0 D0 1E 07 B8 */ stfs f0, 0x7b8(r30) -/* 80166B94 00163AF4 D0 1E 07 BC */ stfs f0, 0x7bc(r30) -/* 80166B98 00163AF8 D0 1E 07 C0 */ stfs f0, 0x7c0(r30) -/* 80166B9C 00163AFC D0 1E 07 C4 */ stfs f0, 0x7c4(r30) -/* 80166BA0 00163B00 90 1E 07 C8 */ stw r0, 0x7c8(r30) -/* 80166BA4 00163B04 48 18 1E 0D */ bl TranslateSFXID__11CSfxManagerFUs -/* 80166BA8 00163B08 B0 7E 07 CC */ sth r3, 0x7cc(r30) -/* 80166BAC 00163B0C 38 60 00 00 */ li r3, 0 -/* 80166BB0 00163B10 34 9E 07 DC */ addic. r4, r30, 0x7dc -/* 80166BB4 00163B14 38 00 00 02 */ li r0, 2 -/* 80166BB8 00163B18 90 7E 07 D0 */ stw r3, 0x7d0(r30) -/* 80166BBC 00163B1C 90 1E 07 D8 */ stw r0, 0x7d8(r30) -/* 80166BC0 00163B20 41 82 00 0C */ beq lbl_80166BCC -/* 80166BC4 00163B24 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80166BC8 00163B28 B0 04 00 00 */ sth r0, 0(r4) -lbl_80166BCC: -/* 80166BCC 00163B2C 34 84 00 02 */ addic. r4, r4, 2 -/* 80166BD0 00163B30 41 82 00 0C */ beq lbl_80166BDC -/* 80166BD4 00163B34 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80166BD8 00163B38 B0 04 00 00 */ sth r0, 0(r4) -lbl_80166BDC: -/* 80166BDC 00163B3C 38 00 00 02 */ li r0, 2 -/* 80166BE0 00163B40 34 9E 07 E4 */ addic. r4, r30, 0x7e4 -/* 80166BE4 00163B44 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80166BE8 00163B48 90 1E 07 E0 */ stw r0, 0x7e0(r30) -/* 80166BEC 00163B4C 38 63 66 A0 */ addi r3, r3, skZero3f@l -/* 80166BF0 00163B50 41 82 00 1C */ beq lbl_80166C0C -/* 80166BF4 00163B54 C0 03 00 00 */ lfs f0, 0(r3) -/* 80166BF8 00163B58 D0 04 00 00 */ stfs f0, 0(r4) -/* 80166BFC 00163B5C C0 03 00 04 */ lfs f0, 4(r3) -/* 80166C00 00163B60 D0 04 00 04 */ stfs f0, 4(r4) -/* 80166C04 00163B64 C0 03 00 08 */ lfs f0, 8(r3) -/* 80166C08 00163B68 D0 04 00 08 */ stfs f0, 8(r4) -lbl_80166C0C: -/* 80166C0C 00163B6C 34 84 00 0C */ addic. r4, r4, 0xc -/* 80166C10 00163B70 41 82 00 1C */ beq lbl_80166C2C -/* 80166C14 00163B74 C0 03 00 00 */ lfs f0, 0(r3) -/* 80166C18 00163B78 D0 04 00 00 */ stfs f0, 0(r4) -/* 80166C1C 00163B7C C0 03 00 04 */ lfs f0, 4(r3) -/* 80166C20 00163B80 D0 04 00 04 */ stfs f0, 4(r4) -/* 80166C24 00163B84 C0 03 00 08 */ lfs f0, 8(r3) -/* 80166C28 00163B88 D0 04 00 08 */ stfs f0, 8(r4) -lbl_80166C2C: -/* 80166C2C 00163B8C 38 00 00 02 */ li r0, 2 -/* 80166C30 00163B90 34 9E 08 00 */ addic. r4, r30, 0x800 -/* 80166C34 00163B94 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80166C38 00163B98 90 1E 07 FC */ stw r0, 0x7fc(r30) -/* 80166C3C 00163B9C 38 63 66 A0 */ addi r3, r3, skZero3f@l -/* 80166C40 00163BA0 41 82 00 1C */ beq lbl_80166C5C -/* 80166C44 00163BA4 C0 03 00 00 */ lfs f0, 0(r3) -/* 80166C48 00163BA8 D0 04 00 00 */ stfs f0, 0(r4) -/* 80166C4C 00163BAC C0 03 00 04 */ lfs f0, 4(r3) -/* 80166C50 00163BB0 D0 04 00 04 */ stfs f0, 4(r4) -/* 80166C54 00163BB4 C0 03 00 08 */ lfs f0, 8(r3) -/* 80166C58 00163BB8 D0 04 00 08 */ stfs f0, 8(r4) -lbl_80166C5C: -/* 80166C5C 00163BBC 34 84 00 0C */ addic. r4, r4, 0xc -/* 80166C60 00163BC0 41 82 00 1C */ beq lbl_80166C7C -/* 80166C64 00163BC4 C0 03 00 00 */ lfs f0, 0(r3) -/* 80166C68 00163BC8 D0 04 00 00 */ stfs f0, 0(r4) -/* 80166C6C 00163BCC C0 03 00 04 */ lfs f0, 4(r3) -/* 80166C70 00163BD0 D0 04 00 04 */ stfs f0, 4(r4) -/* 80166C74 00163BD4 C0 03 00 08 */ lfs f0, 8(r3) -/* 80166C78 00163BD8 D0 04 00 08 */ stfs f0, 8(r4) -lbl_80166C7C: -/* 80166C7C 00163BDC 38 00 00 02 */ li r0, 2 -/* 80166C80 00163BE0 34 7E 08 1C */ addic. r3, r30, 0x81c -/* 80166C84 00163BE4 90 1E 08 18 */ stw r0, 0x818(r30) -/* 80166C88 00163BE8 41 82 00 0C */ beq lbl_80166C94 -/* 80166C8C 00163BEC C0 0D 8D 04 */ lfs f0, lbl_805A78C4@sda21(r13) -/* 80166C90 00163BF0 D0 03 00 00 */ stfs f0, 0(r3) -lbl_80166C94: -/* 80166C94 00163BF4 34 63 00 04 */ addic. r3, r3, 4 -/* 80166C98 00163BF8 41 82 00 0C */ beq lbl_80166CA4 -/* 80166C9C 00163BFC C0 0D 8D 04 */ lfs f0, lbl_805A78C4@sda21(r13) -/* 80166CA0 00163C00 D0 03 00 00 */ stfs f0, 0(r3) -lbl_80166CA4: -/* 80166CA4 00163C04 38 00 00 02 */ li r0, 2 -/* 80166CA8 00163C08 34 7E 08 28 */ addic. r3, r30, 0x828 -/* 80166CAC 00163C0C 90 1E 08 24 */ stw r0, 0x824(r30) -/* 80166CB0 00163C10 41 82 00 0C */ beq lbl_80166CBC -/* 80166CB4 00163C14 88 0D 8D 08 */ lbz r0, lbl_805A78C8@sda21(r13) -/* 80166CB8 00163C18 98 03 00 00 */ stb r0, 0(r3) -lbl_80166CBC: -/* 80166CBC 00163C1C 34 63 00 01 */ addic. r3, r3, 1 -/* 80166CC0 00163C20 41 82 00 0C */ beq lbl_80166CCC -/* 80166CC4 00163C24 88 0D 8D 08 */ lbz r0, lbl_805A78C8@sda21(r13) -/* 80166CC8 00163C28 98 03 00 00 */ stb r0, 0(r3) -lbl_80166CCC: -/* 80166CCC 00163C2C 3C 80 80 3D */ lis r4, lbl_803D0398@ha -/* 80166CD0 00163C30 38 60 00 4C */ li r3, 0x4c -/* 80166CD4 00163C34 38 84 03 98 */ addi r4, r4, lbl_803D0398@l -/* 80166CD8 00163C38 38 A0 00 00 */ li r5, 0 -/* 80166CDC 00163C3C 38 84 00 3B */ addi r4, r4, 0x3b -/* 80166CE0 00163C40 48 1A EB 8D */ bl __nw__FUlPCcPCc -/* 80166CE4 00163C44 7C 60 1B 79 */ or. r0, r3, r3 -/* 80166CE8 00163C48 41 82 00 24 */ beq lbl_80166D0C -/* 80166CEC 00163C4C C0 02 9F 7C */ lfs f0, lbl_805ABC9C@sda21(r2) -/* 80166CF0 00163C50 38 81 00 34 */ addi r4, r1, 0x34 -/* 80166CF4 00163C54 92 01 00 34 */ stw r16, 0x34(r1) -/* 80166CF8 00163C58 D0 01 00 38 */ stfs f0, 0x38(r1) -/* 80166CFC 00163C5C D0 01 00 3C */ stfs f0, 0x3c(r1) -/* 80166D00 00163C60 D0 01 00 40 */ stfs f0, 0x40(r1) -/* 80166D04 00163C64 4B FB 00 59 */ bl __ct__10CModelDataFRC10CStaticRes -/* 80166D08 00163C68 7C 60 1B 78 */ mr r0, r3 -lbl_80166D0C: -/* 80166D0C 00163C6C 90 1E 08 2C */ stw r0, 0x82c(r30) -/* 80166D10 00163C70 38 80 00 00 */ li r4, 0 -/* 80166D14 00163C74 7F C3 F3 78 */ mr r3, r30 -/* 80166D18 00163C78 B0 9E 08 30 */ sth r4, 0x830(r30) -/* 80166D1C 00163C7C 80 1E 08 30 */ lwz r0, 0x830(r30) -/* 80166D20 00163C80 50 80 6C 24 */ rlwimi r0, r4, 0xd, 0x10, 0x12 -/* 80166D24 00163C84 90 1E 08 30 */ stw r0, 0x830(r30) -/* 80166D28 00163C88 80 1E 08 30 */ lwz r0, 0x830(r30) -/* 80166D2C 00163C8C 50 80 54 EA */ rlwimi r0, r4, 0xa, 0x13, 0x15 -/* 80166D30 00163C90 90 1E 08 30 */ stw r0, 0x830(r30) -/* 80166D34 00163C94 88 1E 08 34 */ lbz r0, 0x834(r30) -/* 80166D38 00163C98 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 -/* 80166D3C 00163C9C 98 1E 08 34 */ stb r0, 0x834(r30) -/* 80166D40 00163CA0 88 1E 08 34 */ lbz r0, 0x834(r30) -/* 80166D44 00163CA4 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 -/* 80166D48 00163CA8 98 1E 08 34 */ stb r0, 0x834(r30) -/* 80166D4C 00163CAC 88 1E 08 34 */ lbz r0, 0x834(r30) -/* 80166D50 00163CB0 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a -/* 80166D54 00163CB4 98 1E 08 34 */ stb r0, 0x834(r30) -/* 80166D58 00163CB8 88 1E 08 34 */ lbz r0, 0x834(r30) -/* 80166D5C 00163CBC 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b -/* 80166D60 00163CC0 98 1E 08 34 */ stb r0, 0x834(r30) -/* 80166D64 00163CC4 88 1E 08 34 */ lbz r0, 0x834(r30) -/* 80166D68 00163CC8 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c -/* 80166D6C 00163CCC 98 1E 08 34 */ stb r0, 0x834(r30) -/* 80166D70 00163CD0 88 1E 08 34 */ lbz r0, 0x834(r30) -/* 80166D74 00163CD4 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d -/* 80166D78 00163CD8 98 1E 08 34 */ stb r0, 0x834(r30) -/* 80166D7C 00163CDC 88 1E 08 34 */ lbz r0, 0x834(r30) -/* 80166D80 00163CE0 50 80 0F BC */ rlwimi r0, r4, 1, 0x1e, 0x1e -/* 80166D84 00163CE4 98 1E 08 34 */ stb r0, 0x834(r30) -/* 80166D88 00163CE8 88 1E 08 34 */ lbz r0, 0x834(r30) -/* 80166D8C 00163CEC 50 80 07 FE */ rlwimi r0, r4, 0, 0x1f, 0x1f -/* 80166D90 00163CF0 98 1E 08 34 */ stb r0, 0x834(r30) -/* 80166D94 00163CF4 88 1E 08 35 */ lbz r0, 0x835(r30) -/* 80166D98 00163CF8 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 -/* 80166D9C 00163CFC 98 1E 08 35 */ stb r0, 0x835(r30) -/* 80166DA0 00163D00 88 1E 08 35 */ lbz r0, 0x835(r30) -/* 80166DA4 00163D04 53 A0 36 72 */ rlwimi r0, r29, 6, 0x19, 0x19 -/* 80166DA8 00163D08 98 1E 08 35 */ stb r0, 0x835(r30) -/* 80166DAC 00163D0C 88 1E 08 35 */ lbz r0, 0x835(r30) -/* 80166DB0 00163D10 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a -/* 80166DB4 00163D14 98 1E 08 35 */ stb r0, 0x835(r30) -/* 80166DB8 00163D18 C0 3F 00 C4 */ lfs f1, 0xc4(r31) -/* 80166DBC 00163D1C 4B FF DB 51 */ bl sub_8016490c -/* 80166DC0 00163D20 88 1E 04 E1 */ lbz r0, 0x4e1(r30) -/* 80166DC4 00163D24 38 60 00 01 */ li r3, 1 -/* 80166DC8 00163D28 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 80166DCC 00163D2C 38 7E 04 60 */ addi r3, r30, 0x460 -/* 80166DD0 00163D30 98 1E 04 E1 */ stb r0, 0x4e1(r30) -/* 80166DD4 00163D34 38 80 00 03 */ li r4, 3 -/* 80166DD8 00163D38 38 A0 00 00 */ li r5, 0 -/* 80166DDC 00163D3C 48 0C CF E9 */ bl SetAvailableState__20CKnockBackControllerFib -/* 80166DE0 00163D40 88 1E 04 E2 */ lbz r0, 0x4e2(r30) -/* 80166DE4 00163D44 38 60 00 01 */ li r3, 1 -/* 80166DE8 00163D48 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 80166DEC 00163D4C 7F C3 F3 78 */ mr r3, r30 -/* 80166DF0 00163D50 98 1E 04 E2 */ stb r0, 0x4e2(r30) -/* 80166DF4 00163D54 4B F1 0A A1 */ bl MakeThermalColdAndHot__10CPatternedFv -/* 80166DF8 00163D58 80 BE 03 FC */ lwz r5, 0x3fc(r30) -/* 80166DFC 00163D5C 7F C3 F3 78 */ mr r3, r30 -/* 80166E00 00163D60 20 85 00 01 */ subfic r4, r5, 1 -/* 80166E04 00163D64 38 05 FF FF */ addi r0, r5, -1 -/* 80166E08 00163D68 7C 80 03 78 */ or r0, r4, r0 -/* 80166E0C 00163D6C 54 04 0F FE */ srwi r4, r0, 0x1f -/* 80166E10 00163D70 4B EE BF 5D */ bl CreateShadow__6CActorFb -/* 80166E14 00163D74 7F C3 F3 78 */ mr r3, r30 -/* 80166E18 00163D78 E3 E1 01 A8 */ psq_l f31, 424(r1), 0, qr0 -/* 80166E1C 00163D7C CB E1 01 A0 */ lfd f31, 0x1a0(r1) -/* 80166E20 00163D80 E3 C1 01 98 */ psq_l f30, 408(r1), 0, qr0 -/* 80166E24 00163D84 CB C1 01 90 */ lfd f30, 0x190(r1) -/* 80166E28 00163D88 E3 A1 01 88 */ psq_l f29, 392(r1), 0, qr0 -/* 80166E2C 00163D8C CB A1 01 80 */ lfd f29, 0x180(r1) -/* 80166E30 00163D90 E3 81 01 78 */ psq_l f28, 376(r1), 0, qr0 -/* 80166E34 00163D94 CB 81 01 70 */ lfd f28, 0x170(r1) -/* 80166E38 00163D98 E3 61 01 68 */ psq_l f27, 360(r1), 0, qr0 -/* 80166E3C 00163D9C CB 61 01 60 */ lfd f27, 0x160(r1) -/* 80166E40 00163DA0 E3 41 01 58 */ psq_l f26, 344(r1), 0, qr0 -/* 80166E44 00163DA4 CB 41 01 50 */ lfd f26, 0x150(r1) -/* 80166E48 00163DA8 E3 21 01 48 */ psq_l f25, 328(r1), 0, qr0 -/* 80166E4C 00163DAC CB 21 01 40 */ lfd f25, 0x140(r1) -/* 80166E50 00163DB0 E3 01 01 38 */ psq_l f24, 312(r1), 0, qr0 -/* 80166E54 00163DB4 CB 01 01 30 */ lfd f24, 0x130(r1) -/* 80166E58 00163DB8 E2 E1 01 28 */ psq_l f23, 296(r1), 0, qr0 -/* 80166E5C 00163DBC CA E1 01 20 */ lfd f23, 0x120(r1) -/* 80166E60 00163DC0 E2 C1 01 18 */ psq_l f22, 280(r1), 0, qr0 -/* 80166E64 00163DC4 CA C1 01 10 */ lfd f22, 0x110(r1) -/* 80166E68 00163DC8 E2 A1 01 08 */ psq_l f21, 264(r1), 0, qr0 -/* 80166E6C 00163DCC CA A1 01 00 */ lfd f21, 0x100(r1) -/* 80166E70 00163DD0 E2 81 00 F8 */ psq_l f20, 248(r1), 0, qr0 -/* 80166E74 00163DD4 CA 81 00 F0 */ lfd f20, 0xf0(r1) -/* 80166E78 00163DD8 E2 61 00 E8 */ psq_l f19, 232(r1), 0, qr0 -/* 80166E7C 00163DDC CA 61 00 E0 */ lfd f19, 0xe0(r1) -/* 80166E80 00163DE0 E2 41 00 D8 */ psq_l f18, 216(r1), 0, qr0 -/* 80166E84 00163DE4 CA 41 00 D0 */ lfd f18, 0xd0(r1) -/* 80166E88 00163DE8 E2 21 00 C8 */ psq_l f17, 200(r1), 0, qr0 -/* 80166E8C 00163DEC CA 21 00 C0 */ lfd f17, 0xc0(r1) -/* 80166E90 00163DF0 E2 01 00 B8 */ psq_l f16, 184(r1), 0, qr0 -/* 80166E94 00163DF4 CA 01 00 B0 */ lfd f16, 0xb0(r1) -/* 80166E98 00163DF8 E1 E1 00 A8 */ psq_l f15, 168(r1), 0, qr0 -/* 80166E9C 00163DFC C9 E1 00 A0 */ lfd f15, 0xa0(r1) -/* 80166EA0 00163E00 E1 C1 00 98 */ psq_l f14, 152(r1), 0, qr0 -/* 80166EA4 00163E04 C9 C1 00 90 */ lfd f14, 0x90(r1) -/* 80166EA8 00163E08 BA 01 00 50 */ lmw r16, 0x50(r1) -/* 80166EAC 00163E0C 80 01 01 B4 */ lwz r0, 0x1b4(r1) -/* 80166EB0 00163E10 7C 08 03 A6 */ mtlr r0 -/* 80166EB4 00163E14 38 21 01 B0 */ addi r1, r1, 0x1b0 -/* 80166EB8 00163E18 4E 80 00 20 */ blr - -.global sub_80166ebc -sub_80166ebc: -/* 80166EBC 00163E1C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80166EC0 00163E20 7C 08 02 A6 */ mflr r0 -/* 80166EC4 00163E24 7C 88 23 78 */ mr r8, r4 -/* 80166EC8 00163E28 38 C0 00 04 */ li r6, 4 -/* 80166ECC 00163E2C 90 01 00 24 */ stw r0, 0x24(r1) -/* 80166ED0 00163E30 54 A0 06 3F */ clrlwi. r0, r5, 0x18 -/* 80166ED4 00163E34 41 82 00 08 */ beq lbl_80166EDC -/* 80166ED8 00163E38 38 C0 00 01 */ li r6, 1 -lbl_80166EDC: -/* 80166EDC 00163E3C A0 E3 00 08 */ lhz r7, 8(r3) -/* 80166EE0 00163E40 38 81 00 10 */ addi r4, r1, 0x10 -/* 80166EE4 00163E44 38 A1 00 0C */ addi r5, r1, 0xc -/* 80166EE8 00163E48 B0 E1 00 0C */ sth r7, 0xc(r1) -/* 80166EEC 00163E4C A0 03 00 F4 */ lhz r0, 0xf4(r3) -/* 80166EF0 00163E50 7D 03 43 78 */ mr r3, r8 -/* 80166EF4 00163E54 B0 E1 00 08 */ sth r7, 8(r1) -/* 80166EF8 00163E58 B0 01 00 10 */ sth r0, 0x10(r1) -/* 80166EFC 00163E5C 4B ED CF 59 */ bl SendScriptMsgAlways__13CStateManagerF9TUniqueId -/* 80166F00 00163E60 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80166F04 00163E64 7C 08 03 A6 */ mtlr r0 -/* 80166F08 00163E68 38 21 00 20 */ addi r1, r1, 0x20 -/* 80166F0C 00163E6C 4E 80 00 20 */ blr - -.global sub_80166f10 -sub_80166f10: -/* 80166F10 00163E70 94 21 FE C0 */ stwu r1, -0x140(r1) -/* 80166F14 00163E74 7C 08 02 A6 */ mflr r0 -/* 80166F18 00163E78 90 01 01 44 */ stw r0, 0x144(r1) -/* 80166F1C 00163E7C DB E1 01 30 */ stfd f31, 0x130(r1) -/* 80166F20 00163E80 F3 E1 01 38 */ psq_st f31, 312(r1), 0, qr0 -/* 80166F24 00163E84 DB C1 01 20 */ stfd f30, 0x120(r1) -/* 80166F28 00163E88 F3 C1 01 28 */ psq_st f30, 296(r1), 0, qr0 -/* 80166F2C 00163E8C DB A1 01 10 */ stfd f29, 0x110(r1) -/* 80166F30 00163E90 F3 A1 01 18 */ psq_st f29, 280(r1), 0, qr0 -/* 80166F34 00163E94 DB 81 01 00 */ stfd f28, 0x100(r1) -/* 80166F38 00163E98 F3 81 01 08 */ psq_st f28, 264(r1), 0, qr0 -/* 80166F3C 00163E9C DB 61 00 F0 */ stfd f27, 0xf0(r1) -/* 80166F40 00163EA0 F3 61 00 F8 */ psq_st f27, 248(r1), 0, qr0 -/* 80166F44 00163EA4 DB 41 00 E0 */ stfd f26, 0xe0(r1) -/* 80166F48 00163EA8 F3 41 00 E8 */ psq_st f26, 232(r1), 0, qr0 -/* 80166F4C 00163EAC DB 21 00 D0 */ stfd f25, 0xd0(r1) -/* 80166F50 00163EB0 F3 21 00 D8 */ psq_st f25, 216(r1), 0, qr0 -/* 80166F54 00163EB4 93 E1 00 CC */ stw r31, 0xcc(r1) -/* 80166F58 00163EB8 93 C1 00 C8 */ stw r30, 0xc8(r1) -/* 80166F5C 00163EBC 93 A1 00 C4 */ stw r29, 0xc4(r1) -/* 80166F60 00163EC0 93 81 00 C0 */ stw r28, 0xc0(r1) -/* 80166F64 00163EC4 88 03 00 30 */ lbz r0, 0x30(r3) -/* 80166F68 00163EC8 FF A0 08 90 */ fmr f29, f1 -/* 80166F6C 00163ECC 7C 7C 1B 78 */ mr r28, r3 -/* 80166F70 00163ED0 7C 9F 23 78 */ mr r31, r4 -/* 80166F74 00163ED4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80166F78 00163ED8 7C BE 2B 78 */ mr r30, r5 -/* 80166F7C 00163EDC 7C DD 33 78 */ mr r29, r6 -/* 80166F80 00163EE0 41 82 02 08 */ beq lbl_80167188 -/* 80166F84 00163EE4 C0 3C 00 EC */ lfs f1, 0xec(r28) -/* 80166F88 00163EE8 38 61 00 44 */ addi r3, r1, 0x44 -/* 80166F8C 00163EEC C0 1C 00 50 */ lfs f0, 0x50(r28) -/* 80166F90 00163EF0 C0 7C 00 F0 */ lfs f3, 0xf0(r28) -/* 80166F94 00163EF4 C0 5C 00 60 */ lfs f2, 0x60(r28) -/* 80166F98 00163EF8 EC 81 00 28 */ fsubs f4, f1, f0 -/* 80166F9C 00163EFC C0 3C 00 E8 */ lfs f1, 0xe8(r28) -/* 80166FA0 00163F00 C0 1C 00 40 */ lfs f0, 0x40(r28) -/* 80166FA4 00163F04 EC 43 10 28 */ fsubs f2, f3, f2 -/* 80166FA8 00163F08 D0 81 00 48 */ stfs f4, 0x48(r1) -/* 80166FAC 00163F0C EC 01 00 28 */ fsubs f0, f1, f0 -/* 80166FB0 00163F10 D0 41 00 4C */ stfs f2, 0x4c(r1) -/* 80166FB4 00163F14 D0 01 00 44 */ stfs f0, 0x44(r1) -/* 80166FB8 00163F18 48 1A D9 01 */ bl Magnitude__9CVector3fCFv -/* 80166FBC 00163F1C C0 7C 00 60 */ lfs f3, 0x60(r28) -/* 80166FC0 00163F20 3C 60 80 5A */ lis r3, lbl_805A66F4@ha -/* 80166FC4 00163F24 C0 5C 00 50 */ lfs f2, 0x50(r28) -/* 80166FC8 00163F28 FF E0 08 90 */ fmr f31, f1 -/* 80166FCC 00163F2C C0 1C 00 40 */ lfs f0, 0x40(r28) -/* 80166FD0 00163F30 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l -/* 80166FD4 00163F34 D0 41 00 30 */ stfs f2, 0x30(r1) -/* 80166FD8 00163F38 38 61 00 50 */ addi r3, r1, 0x50 -/* 80166FDC 00163F3C 38 81 00 2C */ addi r4, r1, 0x2c -/* 80166FE0 00163F40 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 80166FE4 00163F44 38 BC 00 E8 */ addi r5, r28, 0xe8 -/* 80166FE8 00163F48 D0 61 00 34 */ stfs f3, 0x34(r1) -/* 80166FEC 00163F4C 48 1A CB 25 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f -/* 80166FF0 00163F50 38 61 00 80 */ addi r3, r1, 0x80 -/* 80166FF4 00163F54 38 81 00 50 */ addi r4, r1, 0x50 -/* 80166FF8 00163F58 48 1A BB 7D */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80166FFC 00163F5C 48 1A 59 81 */ bl DisableAllLights__9CGraphicsFv -/* 80167000 00163F60 38 60 00 00 */ li r3, 0 -/* 80167004 00163F64 48 1A 1E 11 */ bl SetNumTexGens__3CGXFUc -/* 80167008 00163F68 38 60 00 00 */ li r3, 0 -/* 8016700C 00163F6C 38 80 00 FF */ li r4, 0xff -/* 80167010 00163F70 38 A0 00 FF */ li r5, 0xff -/* 80167014 00163F74 38 C0 00 04 */ li r6, 4 -/* 80167018 00163F78 48 1A 19 35 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID -/* 8016701C 00163F7C 80 8D 9C 68 */ lwz r4, lbl_805A8828@sda21(r13) -/* 80167020 00163F80 38 60 00 00 */ li r3, 0 -/* 80167024 00163F84 48 1A 32 95 */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass -/* 80167028 00163F88 57 A0 06 3F */ clrlwi. r0, r29, 0x18 -/* 8016702C 00163F8C 41 82 00 1C */ beq lbl_80167048 -/* 80167030 00163F90 38 60 00 01 */ li r3, 1 -/* 80167034 00163F94 38 80 00 01 */ li r4, 1 -/* 80167038 00163F98 38 A0 00 01 */ li r5, 1 -/* 8016703C 00163F9C 38 C0 00 00 */ li r6, 0 -/* 80167040 00163FA0 48 1A 4A 11 */ bl SetBlendMode__9CGraphicsF13ERglBlendMode15ERglBlendFactor15ERglBlendFactor11ERglLogicOp -/* 80167044 00163FA4 48 00 00 18 */ b lbl_8016705C -lbl_80167048: -/* 80167048 00163FA8 38 60 00 01 */ li r3, 1 -/* 8016704C 00163FAC 38 80 00 04 */ li r4, 4 -/* 80167050 00163FB0 38 A0 00 01 */ li r5, 1 -/* 80167054 00163FB4 38 C0 00 00 */ li r6, 0 -/* 80167058 00163FB8 48 1A 49 F9 */ bl SetBlendMode__9CGraphicsF13ERglBlendMode15ERglBlendFactor15ERglBlendFactor11ERglLogicOp -lbl_8016705C: -/* 8016705C 00163FBC 38 60 00 00 */ li r3, 0 -/* 80167060 00163FC0 48 1A 4A 11 */ bl SetCullMode__9CGraphicsF12ERglCullMode -/* 80167064 00163FC4 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) -/* 80167068 00163FC8 3C 80 80 5A */ lis r4, skIdentity4f@ha -/* 8016706C 00163FCC 38 84 66 70 */ addi r4, r4, skIdentity4f@l -/* 80167070 00163FD0 81 83 00 00 */ lwz r12, 0(r3) -/* 80167074 00163FD4 81 8C 00 30 */ lwz r12, 0x30(r12) -/* 80167078 00163FD8 7D 89 03 A6 */ mtctr r12 -/* 8016707C 00163FDC 4E 80 04 21 */ bctrl -/* 80167080 00163FE0 38 60 00 98 */ li r3, 0x98 -/* 80167084 00163FE4 48 1A 45 E5 */ bl StreamBegin__9CGraphicsF13ERglPrimitive -/* 80167088 00163FE8 3C 00 43 30 */ lis r0, 0x4330 -/* 8016708C 00163FEC C3 C2 9F 68 */ lfs f30, lbl_805ABC88@sda21(r2) -/* 80167090 00163FF0 93 E1 00 B4 */ stw r31, 0xb4(r1) -/* 80167094 00163FF4 3B FF 00 01 */ addi r31, r31, 1 -/* 80167098 00163FF8 C8 22 A0 48 */ lfd f1, lbl_805ABD68@sda21(r2) -/* 8016709C 00163FFC FF 60 F0 90 */ fmr f27, f30 -/* 801670A0 00164000 90 01 00 B0 */ stw r0, 0xb0(r1) -/* 801670A4 00164004 FF 80 F0 90 */ fmr f28, f30 -/* 801670A8 00164008 C0 42 9F F8 */ lfs f2, lbl_805ABD18@sda21(r2) -/* 801670AC 0016400C 3B A0 00 00 */ li r29, 0 -/* 801670B0 00164010 C8 01 00 B0 */ lfd f0, 0xb0(r1) -/* 801670B4 00164014 83 DE 00 00 */ lwz r30, 0(r30) -/* 801670B8 00164018 EC 00 08 28 */ fsubs f0, f0, f1 -/* 801670BC 0016401C EF 42 00 24 */ fdivs f26, f2, f0 -/* 801670C0 00164020 48 00 00 B4 */ b lbl_80167174 -lbl_801670C4: -/* 801670C4 00164024 FC 20 F0 90 */ fmr f1, f30 -/* 801670C8 00164028 48 1A DC 7D */ bl FastCosR__5CMathFf -/* 801670CC 0016402C FC 00 08 90 */ fmr f0, f1 -/* 801670D0 00164030 FC 20 F0 90 */ fmr f1, f30 -/* 801670D4 00164034 FF 20 00 90 */ fmr f25, f0 -/* 801670D8 00164038 48 1A DD 19 */ bl FastSinR__5CMathFf -/* 801670DC 0016403C EC 59 07 72 */ fmuls f2, f25, f29 -/* 801670E0 00164040 D3 61 00 3C */ stfs f27, 0x3c(r1) -/* 801670E4 00164044 EC 01 07 72 */ fmuls f0, f1, f29 -/* 801670E8 00164048 38 61 00 20 */ addi r3, r1, 0x20 -/* 801670EC 0016404C 38 81 00 80 */ addi r4, r1, 0x80 -/* 801670F0 00164050 38 A1 00 38 */ addi r5, r1, 0x38 -/* 801670F4 00164054 D0 41 00 38 */ stfs f2, 0x38(r1) -/* 801670F8 00164058 D0 01 00 40 */ stfs f0, 0x40(r1) -/* 801670FC 0016405C 48 1A B9 ED */ bl __ml__12CTransform4fCFRC9CVector3f -/* 80167100 00164060 38 61 00 20 */ addi r3, r1, 0x20 -/* 80167104 00164064 48 1A 44 BD */ bl StreamVertex__9CGraphicsFRC9CVector3f -/* 80167108 00164068 7F C3 F3 78 */ mr r3, r30 -/* 8016710C 0016406C 48 1A 44 61 */ bl StreamColor__9CGraphicsFUi -/* 80167110 00164070 FC 40 C8 90 */ fmr f2, f25 -/* 80167114 00164074 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 80167118 00164078 48 1A 43 4D */ bl StreamTexcoord__9CGraphicsFff -/* 8016711C 0016407C C0 41 00 3C */ lfs f2, 0x3c(r1) -/* 80167120 00164080 38 61 00 14 */ addi r3, r1, 0x14 -/* 80167124 00164084 C0 21 00 40 */ lfs f1, 0x40(r1) -/* 80167128 00164088 38 81 00 80 */ addi r4, r1, 0x80 -/* 8016712C 0016408C C0 01 00 38 */ lfs f0, 0x38(r1) -/* 80167130 00164090 EC 5F 10 2A */ fadds f2, f31, f2 -/* 80167134 00164094 EC 3C 08 2A */ fadds f1, f28, f1 -/* 80167138 00164098 38 A1 00 08 */ addi r5, r1, 8 -/* 8016713C 0016409C EC 1C 00 2A */ fadds f0, f28, f0 -/* 80167140 001640A0 D0 41 00 0C */ stfs f2, 0xc(r1) -/* 80167144 001640A4 D0 01 00 08 */ stfs f0, 8(r1) -/* 80167148 001640A8 D0 21 00 10 */ stfs f1, 0x10(r1) -/* 8016714C 001640AC 48 1A B9 9D */ bl __ml__12CTransform4fCFRC9CVector3f -/* 80167150 001640B0 38 61 00 14 */ addi r3, r1, 0x14 -/* 80167154 001640B4 48 1A 44 6D */ bl StreamVertex__9CGraphicsFRC9CVector3f -/* 80167158 001640B8 7F C3 F3 78 */ mr r3, r30 -/* 8016715C 001640BC 48 1A 44 11 */ bl StreamColor__9CGraphicsFUi -/* 80167160 001640C0 FC 20 F8 90 */ fmr f1, f31 -/* 80167164 001640C4 FC 40 C8 90 */ fmr f2, f25 -/* 80167168 001640C8 48 1A 42 FD */ bl StreamTexcoord__9CGraphicsFff -/* 8016716C 001640CC EF DE D0 2A */ fadds f30, f30, f26 -/* 80167170 001640D0 3B BD 00 01 */ addi r29, r29, 1 -lbl_80167174: -/* 80167174 001640D4 7C 1D F8 40 */ cmplw r29, r31 -/* 80167178 001640D8 41 80 FF 4C */ blt lbl_801670C4 -/* 8016717C 001640DC 48 1A 42 95 */ bl StreamEnd__9CGraphicsFv -/* 80167180 001640E0 38 60 00 01 */ li r3, 1 -/* 80167184 001640E4 48 1A 48 ED */ bl SetCullMode__9CGraphicsF12ERglCullMode -lbl_80167188: -/* 80167188 001640E8 E3 E1 01 38 */ psq_l f31, 312(r1), 0, qr0 -/* 8016718C 001640EC CB E1 01 30 */ lfd f31, 0x130(r1) -/* 80167190 001640F0 E3 C1 01 28 */ psq_l f30, 296(r1), 0, qr0 -/* 80167194 001640F4 CB C1 01 20 */ lfd f30, 0x120(r1) -/* 80167198 001640F8 E3 A1 01 18 */ psq_l f29, 280(r1), 0, qr0 -/* 8016719C 001640FC CB A1 01 10 */ lfd f29, 0x110(r1) -/* 801671A0 00164100 E3 81 01 08 */ psq_l f28, 264(r1), 0, qr0 -/* 801671A4 00164104 CB 81 01 00 */ lfd f28, 0x100(r1) -/* 801671A8 00164108 E3 61 00 F8 */ psq_l f27, 248(r1), 0, qr0 -/* 801671AC 0016410C CB 61 00 F0 */ lfd f27, 0xf0(r1) -/* 801671B0 00164110 E3 41 00 E8 */ psq_l f26, 232(r1), 0, qr0 -/* 801671B4 00164114 CB 41 00 E0 */ lfd f26, 0xe0(r1) -/* 801671B8 00164118 E3 21 00 D8 */ psq_l f25, 216(r1), 0, qr0 -/* 801671BC 0016411C CB 21 00 D0 */ lfd f25, 0xd0(r1) -/* 801671C0 00164120 83 E1 00 CC */ lwz r31, 0xcc(r1) -/* 801671C4 00164124 83 C1 00 C8 */ lwz r30, 0xc8(r1) -/* 801671C8 00164128 83 A1 00 C4 */ lwz r29, 0xc4(r1) -/* 801671CC 0016412C 80 01 01 44 */ lwz r0, 0x144(r1) -/* 801671D0 00164130 83 81 00 C0 */ lwz r28, 0xc0(r1) -/* 801671D4 00164134 7C 08 03 A6 */ mtlr r0 -/* 801671D8 00164138 38 21 01 40 */ addi r1, r1, 0x140 -/* 801671DC 0016413C 4E 80 00 20 */ blr - -.global Render__11CDroneLaserCFRC13CStateManager -Render__11CDroneLaserCFRC13CStateManager: -/* 801671E0 00164140 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 801671E4 00164144 7C 08 02 A6 */ mflr r0 -/* 801671E8 00164148 38 80 00 01 */ li r4, 1 -/* 801671EC 0016414C 38 A0 00 01 */ li r5, 1 -/* 801671F0 00164150 90 01 00 24 */ stw r0, 0x24(r1) -/* 801671F4 00164154 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 801671F8 00164158 7C 7F 1B 78 */ mr r31, r3 -/* 801671FC 0016415C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) -/* 80167200 00164160 81 83 00 00 */ lwz r12, 0(r3) -/* 80167204 00164164 81 8C 00 60 */ lwz r12, 0x60(r12) -/* 80167208 00164168 7D 89 03 A6 */ mtctr r12 -/* 8016720C 0016416C 4E 80 04 21 */ bctrl -/* 80167210 00164170 C0 22 9F 7C */ lfs f1, lbl_805ABC9C@sda21(r2) -/* 80167214 00164174 38 61 00 10 */ addi r3, r1, 0x10 -/* 80167218 00164178 C0 42 A0 54 */ lfs f2, lbl_805ABD74@sda21(r2) -/* 8016721C 0016417C FC 80 08 90 */ fmr f4, f1 -/* 80167220 00164180 FC 60 10 90 */ fmr f3, f2 -/* 80167224 00164184 48 1F C1 C9 */ bl __ct__6CColorFffff -/* 80167228 00164188 C0 22 A0 50 */ lfs f1, lbl_805ABD70@sda21(r2) -/* 8016722C 0016418C 7C 65 1B 78 */ mr r5, r3 -/* 80167230 00164190 7F E3 FB 78 */ mr r3, r31 -/* 80167234 00164194 38 80 00 04 */ li r4, 4 -/* 80167238 00164198 38 C0 00 01 */ li r6, 1 -/* 8016723C 0016419C 4B FF FC D5 */ bl sub_80166f10 -/* 80167240 001641A0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) -/* 80167244 001641A4 38 80 00 01 */ li r4, 1 -/* 80167248 001641A8 38 A0 00 00 */ li r5, 0 -/* 8016724C 001641AC 81 83 00 00 */ lwz r12, 0(r3) -/* 80167250 001641B0 81 8C 00 60 */ lwz r12, 0x60(r12) -/* 80167254 001641B4 7D 89 03 A6 */ mtctr r12 -/* 80167258 001641B8 4E 80 04 21 */ bctrl -/* 8016725C 001641BC C0 42 9F 68 */ lfs f2, lbl_805ABC88@sda21(r2) -/* 80167260 001641C0 38 61 00 0C */ addi r3, r1, 0xc -/* 80167264 001641C4 C0 22 A0 5C */ lfs f1, lbl_805ABD7C@sda21(r2) -/* 80167268 001641C8 FC 60 10 90 */ fmr f3, f2 -/* 8016726C 001641CC C0 82 9F 80 */ lfs f4, lbl_805ABCA0@sda21(r2) -/* 80167270 001641D0 48 1F C1 7D */ bl __ct__6CColorFffff -/* 80167274 001641D4 C0 22 A0 58 */ lfs f1, lbl_805ABD78@sda21(r2) -/* 80167278 001641D8 7C 65 1B 78 */ mr r5, r3 -/* 8016727C 001641DC 7F E3 FB 78 */ mr r3, r31 -/* 80167280 001641E0 38 80 00 05 */ li r4, 5 -/* 80167284 001641E4 38 C0 00 00 */ li r6, 0 -/* 80167288 001641E8 4B FF FC 89 */ bl sub_80166f10 -/* 8016728C 001641EC C0 42 9F 8C */ lfs f2, lbl_805ABCAC@sda21(r2) -/* 80167290 001641F0 38 61 00 08 */ addi r3, r1, 8 -/* 80167294 001641F4 C0 22 A0 5C */ lfs f1, lbl_805ABD7C@sda21(r2) -/* 80167298 001641F8 FC 60 10 90 */ fmr f3, f2 -/* 8016729C 001641FC C0 82 9F C0 */ lfs f4, lbl_805ABCE0@sda21(r2) -/* 801672A0 00164200 48 1F C1 4D */ bl __ct__6CColorFffff -/* 801672A4 00164204 C0 22 A0 60 */ lfs f1, lbl_805ABD80@sda21(r2) -/* 801672A8 00164208 7C 65 1B 78 */ mr r5, r3 -/* 801672AC 0016420C 7F E3 FB 78 */ mr r3, r31 -/* 801672B0 00164210 38 80 00 07 */ li r4, 7 -/* 801672B4 00164214 38 C0 00 00 */ li r6, 0 -/* 801672B8 00164218 4B FF FC 59 */ bl sub_80166f10 -/* 801672BC 0016421C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 801672C0 00164220 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 801672C4 00164224 7C 08 03 A6 */ mtlr r0 -/* 801672C8 00164228 38 21 00 20 */ addi r1, r1, 0x20 -/* 801672CC 0016422C 4E 80 00 20 */ blr - -.global AddToRenderer__11CDroneLaserCFRC14CFrustumPlanesRC13CStateManager -AddToRenderer__11CDroneLaserCFRC14CFrustumPlanesRC13CStateManager: -/* 801672D0 00164230 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801672D4 00164234 7C 08 02 A6 */ mflr r0 -/* 801672D8 00164238 90 01 00 14 */ stw r0, 0x14(r1) -/* 801672DC 0016423C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 801672E0 00164240 7C BF 2B 78 */ mr r31, r5 -/* 801672E4 00164244 93 C1 00 08 */ stw r30, 8(r1) -/* 801672E8 00164248 7C 7E 1B 78 */ mr r30, r3 -/* 801672EC 0016424C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) -/* 801672F0 00164250 80 9E 01 04 */ lwz r4, 0x104(r30) -/* 801672F4 00164254 81 83 00 00 */ lwz r12, 0(r3) -/* 801672F8 00164258 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 801672FC 0016425C 7D 89 03 A6 */ mtctr r12 -/* 80167300 00164260 4E 80 04 21 */ bctrl -/* 80167304 00164264 7F C3 F3 78 */ mr r3, r30 -/* 80167308 00164268 7F E4 FB 78 */ mr r4, r31 -/* 8016730C 0016426C 4B EE D6 C1 */ bl EnsureRendered__6CActorCFRC13CStateManager -/* 80167310 00164270 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80167314 00164274 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80167318 00164278 83 C1 00 08 */ lwz r30, 8(r1) -/* 8016731C 0016427C 7C 08 03 A6 */ mtlr r0 -/* 80167320 00164280 38 21 00 10 */ addi r1, r1, 0x10 -/* 80167324 00164284 4E 80 00 20 */ blr - -.global CalculateRenderBounds__11CDroneLaserFv -CalculateRenderBounds__11CDroneLaserFv: -/* 80167328 00164288 94 21 FF 60 */ stwu r1, -0xa0(r1) -/* 8016732C 0016428C 7C 08 02 A6 */ mflr r0 -/* 80167330 00164290 90 01 00 A4 */ stw r0, 0xa4(r1) -/* 80167334 00164294 DB E1 00 90 */ stfd f31, 0x90(r1) -/* 80167338 00164298 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 -/* 8016733C 0016429C 93 E1 00 8C */ stw r31, 0x8c(r1) -/* 80167340 001642A0 3C 80 80 5A */ lis r4, lbl_805A6754@ha -/* 80167344 001642A4 C4 A4 67 54 */ lfsu f5, lbl_805A6754@l(r4) -/* 80167348 001642A8 7C 7F 1B 78 */ mr r31, r3 -/* 8016734C 001642AC 38 61 00 5C */ addi r3, r1, 0x5c -/* 80167350 001642B0 C0 84 00 04 */ lfs f4, 4(r4) -/* 80167354 001642B4 C0 64 00 08 */ lfs f3, 8(r4) -/* 80167358 001642B8 C0 44 00 0C */ lfs f2, 0xc(r4) -/* 8016735C 001642BC C0 24 00 10 */ lfs f1, 0x10(r4) -/* 80167360 001642C0 C0 04 00 14 */ lfs f0, 0x14(r4) -/* 80167364 001642C4 D0 A1 00 68 */ stfs f5, 0x68(r1) -/* 80167368 001642C8 D0 81 00 6C */ stfs f4, 0x6c(r1) -/* 8016736C 001642CC D0 61 00 70 */ stfs f3, 0x70(r1) -/* 80167370 001642D0 D0 41 00 74 */ stfs f2, 0x74(r1) -/* 80167374 001642D4 D0 21 00 78 */ stfs f1, 0x78(r1) -/* 80167378 001642D8 D0 01 00 7C */ stfs f0, 0x7c(r1) -/* 8016737C 001642DC C0 3F 00 EC */ lfs f1, 0xec(r31) -/* 80167380 001642E0 C0 1F 00 50 */ lfs f0, 0x50(r31) -/* 80167384 001642E4 C0 7F 00 F0 */ lfs f3, 0xf0(r31) -/* 80167388 001642E8 EC 81 00 28 */ fsubs f4, f1, f0 -/* 8016738C 001642EC C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 80167390 001642F0 C0 3F 00 E8 */ lfs f1, 0xe8(r31) -/* 80167394 001642F4 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 80167398 001642F8 EC 43 10 28 */ fsubs f2, f3, f2 -/* 8016739C 001642FC EC 01 00 28 */ fsubs f0, f1, f0 -/* 801673A0 00164300 D0 81 00 60 */ stfs f4, 0x60(r1) -/* 801673A4 00164304 D0 41 00 64 */ stfs f2, 0x64(r1) -/* 801673A8 00164308 D0 01 00 5C */ stfs f0, 0x5c(r1) -/* 801673AC 0016430C 48 1A D5 0D */ bl Magnitude__9CVector3fCFv -/* 801673B0 00164310 C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 801673B4 00164314 FF E0 08 90 */ fmr f31, f1 -/* 801673B8 00164318 C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 801673BC 0016431C 38 61 00 68 */ addi r3, r1, 0x68 -/* 801673C0 00164320 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 801673C4 00164324 38 81 00 50 */ addi r4, r1, 0x50 -/* 801673C8 00164328 D0 01 00 50 */ stfs f0, 0x50(r1) -/* 801673CC 0016432C D0 21 00 54 */ stfs f1, 0x54(r1) -/* 801673D0 00164330 D0 41 00 58 */ stfs f2, 0x58(r1) -/* 801673D4 00164334 48 1D 07 35 */ bl AccumulateBounds__6CAABoxFRC9CVector3f -/* 801673D8 00164338 C0 02 9F C0 */ lfs f0, lbl_805ABCE0@sda21(r2) -/* 801673DC 0016433C 38 61 00 68 */ addi r3, r1, 0x68 -/* 801673E0 00164340 C1 1F 00 5C */ lfs f8, 0x5c(r31) -/* 801673E4 00164344 38 81 00 44 */ addi r4, r1, 0x44 -/* 801673E8 00164348 EF E0 07 F2 */ fmuls f31, f0, f31 -/* 801673EC 0016434C C0 FF 00 4C */ lfs f7, 0x4c(r31) -/* 801673F0 00164350 C0 7F 00 3C */ lfs f3, 0x3c(r31) -/* 801673F4 00164354 C0 5F 00 EC */ lfs f2, 0xec(r31) -/* 801673F8 00164358 EC BF 01 F2 */ fmuls f5, f31, f7 -/* 801673FC 0016435C C0 3F 00 F0 */ lfs f1, 0xf0(r31) -/* 80167400 00164360 EC 9F 02 32 */ fmuls f4, f31, f8 -/* 80167404 00164364 C0 1F 00 E8 */ lfs f0, 0xe8(r31) -/* 80167408 00164368 EC DF 00 F2 */ fmuls f6, f31, f3 -/* 8016740C 0016436C D0 61 00 2C */ stfs f3, 0x2c(r1) -/* 80167410 00164370 EC 42 28 2A */ fadds f2, f2, f5 -/* 80167414 00164374 D0 E1 00 30 */ stfs f7, 0x30(r1) -/* 80167418 00164378 EC 21 20 2A */ fadds f1, f1, f4 -/* 8016741C 0016437C EC 00 30 2A */ fadds f0, f0, f6 -/* 80167420 00164380 D1 01 00 34 */ stfs f8, 0x34(r1) -/* 80167424 00164384 D0 C1 00 38 */ stfs f6, 0x38(r1) -/* 80167428 00164388 D0 A1 00 3C */ stfs f5, 0x3c(r1) -/* 8016742C 0016438C D0 81 00 40 */ stfs f4, 0x40(r1) -/* 80167430 00164390 D0 01 00 44 */ stfs f0, 0x44(r1) -/* 80167434 00164394 D0 41 00 48 */ stfs f2, 0x48(r1) -/* 80167438 00164398 D0 21 00 4C */ stfs f1, 0x4c(r1) -/* 8016743C 0016439C 48 1D 06 CD */ bl AccumulateBounds__6CAABoxFRC9CVector3f -/* 80167440 001643A0 C1 1F 00 5C */ lfs f8, 0x5c(r31) -/* 80167444 001643A4 38 61 00 68 */ addi r3, r1, 0x68 -/* 80167448 001643A8 C0 FF 00 4C */ lfs f7, 0x4c(r31) -/* 8016744C 001643AC 38 81 00 20 */ addi r4, r1, 0x20 -/* 80167450 001643B0 C0 9F 00 3C */ lfs f4, 0x3c(r31) -/* 80167454 001643B4 EC BF 02 32 */ fmuls f5, f31, f8 -/* 80167458 001643B8 EC DF 01 F2 */ fmuls f6, f31, f7 -/* 8016745C 001643BC C0 5F 00 EC */ lfs f2, 0xec(r31) -/* 80167460 001643C0 EC 7F 01 32 */ fmuls f3, f31, f4 -/* 80167464 001643C4 C0 3F 00 F0 */ lfs f1, 0xf0(r31) -/* 80167468 001643C8 C0 1F 00 E8 */ lfs f0, 0xe8(r31) -/* 8016746C 001643CC EC 42 30 28 */ fsubs f2, f2, f6 -/* 80167470 001643D0 EC 21 28 28 */ fsubs f1, f1, f5 -/* 80167474 001643D4 D0 81 00 08 */ stfs f4, 8(r1) -/* 80167478 001643D8 EC 00 18 28 */ fsubs f0, f0, f3 -/* 8016747C 001643DC D0 E1 00 0C */ stfs f7, 0xc(r1) -/* 80167480 001643E0 D1 01 00 10 */ stfs f8, 0x10(r1) -/* 80167484 001643E4 D0 61 00 14 */ stfs f3, 0x14(r1) -/* 80167488 001643E8 D0 C1 00 18 */ stfs f6, 0x18(r1) -/* 8016748C 001643EC D0 A1 00 1C */ stfs f5, 0x1c(r1) -/* 80167490 001643F0 D0 01 00 20 */ stfs f0, 0x20(r1) -/* 80167494 001643F4 D0 41 00 24 */ stfs f2, 0x24(r1) -/* 80167498 001643F8 D0 21 00 28 */ stfs f1, 0x28(r1) -/* 8016749C 001643FC 48 1D 06 6D */ bl AccumulateBounds__6CAABoxFRC9CVector3f -/* 801674A0 00164400 80 61 00 68 */ lwz r3, 0x68(r1) -/* 801674A4 00164404 80 01 00 6C */ lwz r0, 0x6c(r1) -/* 801674A8 00164408 90 7F 00 9C */ stw r3, 0x9c(r31) -/* 801674AC 0016440C 90 1F 00 A0 */ stw r0, 0xa0(r31) -/* 801674B0 00164410 80 01 00 70 */ lwz r0, 0x70(r1) -/* 801674B4 00164414 90 1F 00 A4 */ stw r0, 0xa4(r31) -/* 801674B8 00164418 80 61 00 74 */ lwz r3, 0x74(r1) -/* 801674BC 0016441C 80 01 00 78 */ lwz r0, 0x78(r1) -/* 801674C0 00164420 90 7F 00 A8 */ stw r3, 0xa8(r31) -/* 801674C4 00164424 90 1F 00 AC */ stw r0, 0xac(r31) -/* 801674C8 00164428 80 01 00 7C */ lwz r0, 0x7c(r1) -/* 801674CC 0016442C 90 1F 00 B0 */ stw r0, 0xb0(r31) -/* 801674D0 00164430 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 -/* 801674D4 00164434 80 01 00 A4 */ lwz r0, 0xa4(r1) -/* 801674D8 00164438 CB E1 00 90 */ lfd f31, 0x90(r1) -/* 801674DC 0016443C 83 E1 00 8C */ lwz r31, 0x8c(r1) -/* 801674E0 00164440 7C 08 03 A6 */ mtlr r0 -/* 801674E4 00164444 38 21 00 A0 */ addi r1, r1, 0xa0 -/* 801674E8 00164448 4E 80 00 20 */ blr - -.global Accept__11CDroneLaserFR8IVisitor -Accept__11CDroneLaserFR8IVisitor: -/* 801674EC 0016444C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801674F0 00164450 7C 08 02 A6 */ mflr r0 -/* 801674F4 00164454 90 01 00 14 */ stw r0, 0x14(r1) -/* 801674F8 00164458 7C 60 1B 78 */ mr r0, r3 -/* 801674FC 0016445C 7C 83 23 78 */ mr r3, r4 -/* 80167500 00164460 81 84 00 00 */ lwz r12, 0(r4) -/* 80167504 00164464 7C 04 03 78 */ mr r4, r0 -/* 80167508 00164468 81 8C 00 08 */ lwz r12, 8(r12) -/* 8016750C 0016446C 7D 89 03 A6 */ mtctr r12 -/* 80167510 00164470 4E 80 04 21 */ bctrl -/* 80167514 00164474 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80167518 00164478 7C 08 03 A6 */ mtlr r0 -/* 8016751C 0016447C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80167520 00164480 4E 80 00 20 */ blr - -.global AcceptScriptMsg__11CDroneLaserF20EScriptObjectMessage9TUniqueIdR13CStateManager -AcceptScriptMsg__11CDroneLaserF20EScriptObjectMessage9TUniqueIdR13CStateManager: -/* 80167524 00164484 94 21 FF 10 */ stwu r1, -0xf0(r1) -/* 80167528 00164488 7C 08 02 A6 */ mflr r0 -/* 8016752C 0016448C 90 01 00 F4 */ stw r0, 0xf4(r1) -/* 80167530 00164490 93 E1 00 EC */ stw r31, 0xec(r1) -/* 80167534 00164494 7C DF 33 78 */ mr r31, r6 -/* 80167538 00164498 93 C1 00 E8 */ stw r30, 0xe8(r1) -/* 8016753C 0016449C 7C 7E 1B 78 */ mr r30, r3 -/* 80167540 001644A0 93 A1 00 E4 */ stw r29, 0xe4(r1) -/* 80167544 001644A4 7C 9D 23 78 */ mr r29, r4 -/* 80167548 001644A8 93 81 00 E0 */ stw r28, 0xe0(r1) -/* 8016754C 001644AC A0 05 00 00 */ lhz r0, 0(r5) -/* 80167550 001644B0 38 A1 00 24 */ addi r5, r1, 0x24 -/* 80167554 001644B4 B0 01 00 24 */ sth r0, 0x24(r1) -/* 80167558 001644B8 4B EE C0 BD */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager -/* 8016755C 001644BC 2C 1D 00 04 */ cmpwi r29, 4 -/* 80167560 001644C0 41 82 00 58 */ beq lbl_801675B8 -/* 80167564 001644C4 40 80 00 10 */ bge lbl_80167574 -/* 80167568 001644C8 2C 1D 00 01 */ cmpwi r29, 1 -/* 8016756C 001644CC 41 82 00 20 */ beq lbl_8016758C -/* 80167570 001644D0 48 00 01 94 */ b lbl_80167704 -lbl_80167574: -/* 80167574 001644D4 2C 1D 00 22 */ cmpwi r29, 0x22 -/* 80167578 001644D8 41 82 01 60 */ beq lbl_801676D8 -/* 8016757C 001644DC 40 80 01 88 */ bge lbl_80167704 -/* 80167580 001644E0 2C 1D 00 21 */ cmpwi r29, 0x21 -/* 80167584 001644E4 40 80 00 60 */ bge lbl_801675E4 -/* 80167588 001644E8 48 00 01 7C */ b lbl_80167704 -lbl_8016758C: -/* 8016758C 001644EC 7F C3 F3 78 */ mr r3, r30 -/* 80167590 001644F0 7F E4 FB 78 */ mr r4, r31 -/* 80167594 001644F4 38 A0 00 01 */ li r5, 1 -/* 80167598 001644F8 4B FF F9 25 */ bl sub_80166ebc -/* 8016759C 001644FC 80 7E 01 04 */ lwz r3, 0x104(r30) -/* 801675A0 00164500 38 80 00 01 */ li r4, 1 -/* 801675A4 00164504 81 83 00 00 */ lwz r12, 0(r3) -/* 801675A8 00164508 81 8C 00 2C */ lwz r12, 0x2c(r12) -/* 801675AC 0016450C 7D 89 03 A6 */ mtctr r12 -/* 801675B0 00164510 4E 80 04 21 */ bctrl -/* 801675B4 00164514 48 00 01 50 */ b lbl_80167704 -lbl_801675B8: -/* 801675B8 00164518 7F C3 F3 78 */ mr r3, r30 -/* 801675BC 0016451C 7F E4 FB 78 */ mr r4, r31 -/* 801675C0 00164520 38 A0 00 00 */ li r5, 0 -/* 801675C4 00164524 4B FF F8 F9 */ bl sub_80166ebc -/* 801675C8 00164528 80 7E 01 04 */ lwz r3, 0x104(r30) -/* 801675CC 0016452C 38 80 00 00 */ li r4, 0 -/* 801675D0 00164530 81 83 00 00 */ lwz r12, 0(r3) -/* 801675D4 00164534 81 8C 00 2C */ lwz r12, 0x2c(r12) -/* 801675D8 00164538 7D 89 03 A6 */ mtctr r12 -/* 801675DC 0016453C 4E 80 04 21 */ bctrl -/* 801675E0 00164540 48 00 01 24 */ b lbl_80167704 -lbl_801675E4: -/* 801675E4 00164544 7F E4 FB 78 */ mr r4, r31 -/* 801675E8 00164548 38 61 00 20 */ addi r3, r1, 0x20 -/* 801675EC 0016454C 4B EE 5A F1 */ bl AllocateUniqueId__13CStateManagerFv -/* 801675F0 00164550 A0 01 00 20 */ lhz r0, 0x20(r1) -/* 801675F4 00164554 B0 1E 00 F4 */ sth r0, 0xf4(r30) -/* 801675F8 00164558 48 1E 29 A5 */ bl Red__6CColorFv -/* 801675FC 0016455C 3C 80 80 5A */ lis r4, skZero3f@ha -/* 80167600 00164560 7C 65 1B 78 */ mr r5, r3 -/* 80167604 00164564 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 80167608 00164568 38 61 00 40 */ addi r3, r1, 0x40 -/* 8016760C 0016456C 48 19 EE 29 */ bl BuildPoint__6CLightFRC9CVector3fRC6CColor -/* 80167610 00164570 38 61 00 90 */ addi r3, r1, 0x90 -/* 80167614 00164574 38 81 00 40 */ addi r4, r1, 0x40 -/* 80167618 00164578 4B ED 3F 59 */ bl __ct__6CLightFCR6CLight -/* 8016761C 0016457C 3C 60 80 3D */ lis r3, lbl_803D0398@ha -/* 80167620 00164580 3B 80 00 00 */ li r28, 0 -/* 80167624 00164584 38 83 03 98 */ addi r4, r3, lbl_803D0398@l -/* 80167628 00164588 38 60 01 48 */ li r3, 0x148 -/* 8016762C 0016458C 38 84 00 3B */ addi r4, r4, 0x3b -/* 80167630 00164590 38 A0 00 00 */ li r5, 0 -/* 80167634 00164594 48 1A E2 39 */ bl __nw__FUlPCcPCc -/* 80167638 00164598 7C 7D 1B 79 */ or. r29, r3, r3 -/* 8016763C 0016459C 41 82 00 7C */ beq lbl_801676B8 -/* 80167640 001645A0 A0 1E 00 08 */ lhz r0, 8(r30) -/* 80167644 001645A4 3C 60 80 3D */ lis r3, lbl_803D0398@ha -/* 80167648 001645A8 38 83 03 98 */ addi r4, r3, lbl_803D0398@l -/* 8016764C 001645AC 38 61 00 30 */ addi r3, r1, 0x30 -/* 80167650 001645B0 B0 01 00 18 */ sth r0, 0x18(r1) -/* 80167654 001645B4 38 84 00 76 */ addi r4, r4, 0x76 -/* 80167658 001645B8 B0 01 00 1C */ sth r0, 0x1c(r1) -/* 8016765C 001645BC 4B E9 D6 5D */ bl string_l__4rstlFPCc -/* 80167660 001645C0 88 1E 00 30 */ lbz r0, 0x30(r30) -/* 80167664 001645C4 3C 60 80 5A */ lis r3, skIdentity4f@ha -/* 80167668 001645C8 80 9E 00 04 */ lwz r4, 4(r30) -/* 8016766C 001645CC 39 03 66 70 */ addi r8, r3, skIdentity4f@l -/* 80167670 001645D0 54 06 CF FE */ rlwinm r6, r0, 0x19, 0x1f, 0x1f -/* 80167674 001645D4 38 00 00 00 */ li r0, 0 -/* 80167678 001645D8 90 81 00 2C */ stw r4, 0x2c(r1) -/* 8016767C 001645DC 7F A3 EB 78 */ mr r3, r29 -/* 80167680 001645E0 C0 22 9F 68 */ lfs f1, lbl_805ABC88@sda21(r2) -/* 80167684 001645E4 38 A1 00 2C */ addi r5, r1, 0x2c -/* 80167688 001645E8 A1 3E 00 F4 */ lhz r9, 0xf4(r30) -/* 8016768C 001645EC 38 E1 00 30 */ addi r7, r1, 0x30 -/* 80167690 001645F0 90 81 00 28 */ stw r4, 0x28(r1) -/* 80167694 001645F4 38 81 00 14 */ addi r4, r1, 0x14 -/* 80167698 001645F8 39 41 00 90 */ addi r10, r1, 0x90 -/* 8016769C 001645FC 3B 80 00 01 */ li r28, 1 -/* 801676A0 00164600 B1 21 00 14 */ sth r9, 0x14(r1) -/* 801676A4 00164604 39 21 00 1C */ addi r9, r1, 0x1c -/* 801676A8 00164608 90 01 00 08 */ stw r0, 8(r1) -/* 801676AC 0016460C 90 01 00 0C */ stw r0, 0xc(r1) -/* 801676B0 00164610 4B F4 E1 75 */ bl "__ct__10CGameLightF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC12CTransform4f9TUniqueIdRC6CLightUiUif" -/* 801676B4 00164614 7C 7D 1B 78 */ mr r29, r3 -lbl_801676B8: -/* 801676B8 00164618 7F 80 07 75 */ extsb. r0, r28 -/* 801676BC 0016461C 41 82 00 0C */ beq lbl_801676C8 -/* 801676C0 00164620 38 61 00 30 */ addi r3, r1, 0x30 -/* 801676C4 00164624 48 1D 64 1D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -lbl_801676C8: -/* 801676C8 00164628 7F E3 FB 78 */ mr r3, r31 -/* 801676CC 0016462C 7F A4 EB 78 */ mr r4, r29 -/* 801676D0 00164630 4B EE 54 45 */ bl AddObject__13CStateManagerFR7CEntity -/* 801676D4 00164634 48 00 00 30 */ b lbl_80167704 -lbl_801676D8: -/* 801676D8 00164638 A0 7E 00 F4 */ lhz r3, 0xf4(r30) -/* 801676DC 0016463C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 801676E0 00164640 7C 03 00 40 */ cmplw r3, r0 -/* 801676E4 00164644 41 82 00 20 */ beq lbl_80167704 -/* 801676E8 00164648 A0 1E 00 F4 */ lhz r0, 0xf4(r30) -/* 801676EC 0016464C 7F E3 FB 78 */ mr r3, r31 -/* 801676F0 00164650 38 81 00 10 */ addi r4, r1, 0x10 -/* 801676F4 00164654 B0 01 00 10 */ sth r0, 0x10(r1) -/* 801676F8 00164658 4B EE 4B 75 */ bl FreeScriptObject__13CStateManagerF9TUniqueId -/* 801676FC 0016465C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80167700 00164660 B0 1E 00 F4 */ sth r0, 0xf4(r30) -lbl_80167704: -/* 80167704 00164664 80 01 00 F4 */ lwz r0, 0xf4(r1) -/* 80167708 00164668 83 E1 00 EC */ lwz r31, 0xec(r1) -/* 8016770C 0016466C 83 C1 00 E8 */ lwz r30, 0xe8(r1) -/* 80167710 00164670 83 A1 00 E4 */ lwz r29, 0xe4(r1) -/* 80167714 00164674 83 81 00 E0 */ lwz r28, 0xe0(r1) -/* 80167718 00164678 7C 08 03 A6 */ mtlr r0 -/* 8016771C 0016467C 38 21 00 F0 */ addi r1, r1, 0xf0 -/* 80167720 00164680 4E 80 00 20 */ blr - -.global Think__11CDroneLaserFfR13CStateManager -Think__11CDroneLaserFfR13CStateManager: -/* 80167724 00164684 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80167728 00164688 7C 08 02 A6 */ mflr r0 -/* 8016772C 0016468C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80167730 00164690 80 63 01 04 */ lwz r3, 0x104(r3) -/* 80167734 00164694 81 83 00 00 */ lwz r12, 0(r3) -/* 80167738 00164698 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 8016773C 0016469C 7D 89 03 A6 */ mtctr r12 -/* 80167740 001646A0 4E 80 04 21 */ bctrl -/* 80167744 001646A4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80167748 001646A8 7C 08 03 A6 */ mtlr r0 -/* 8016774C 001646AC 38 21 00 10 */ addi r1, r1, 0x10 -/* 80167750 001646B0 4E 80 00 20 */ blr - -.global sub_80167754 -sub_80167754: -/* 80167754 001646B4 94 21 FF 40 */ stwu r1, -0xc0(r1) -/* 80167758 001646B8 7C 08 02 A6 */ mflr r0 -/* 8016775C 001646BC 90 01 00 C4 */ stw r0, 0xc4(r1) -/* 80167760 001646C0 DB E1 00 B0 */ stfd f31, 0xb0(r1) -/* 80167764 001646C4 F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 -/* 80167768 001646C8 DB C1 00 A0 */ stfd f30, 0xa0(r1) -/* 8016776C 001646CC F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 -/* 80167770 001646D0 DB A1 00 90 */ stfd f29, 0x90(r1) -/* 80167774 001646D4 F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0 -/* 80167778 001646D8 93 E1 00 8C */ stw r31, 0x8c(r1) -/* 8016777C 001646DC 93 C1 00 88 */ stw r30, 0x88(r1) -/* 80167780 001646E0 93 A1 00 84 */ stw r29, 0x84(r1) -/* 80167784 001646E4 93 81 00 80 */ stw r28, 0x80(r1) -/* 80167788 001646E8 7C BD 2B 78 */ mr r29, r5 -/* 8016778C 001646EC 7C 7C 1B 78 */ mr r28, r3 -/* 80167790 001646F0 C0 05 00 00 */ lfs f0, 0(r5) -/* 80167794 001646F4 7C 9F 23 78 */ mr r31, r4 -/* 80167798 001646F8 7C DE 33 78 */ mr r30, r6 -/* 8016779C 001646FC 38 61 00 38 */ addi r3, r1, 0x38 -/* 801677A0 00164700 D0 1C 00 E8 */ stfs f0, 0xe8(r28) -/* 801677A4 00164704 38 81 00 2C */ addi r4, r1, 0x2c -/* 801677A8 00164708 C0 05 00 04 */ lfs f0, 4(r5) -/* 801677AC 0016470C D0 1C 00 EC */ stfs f0, 0xec(r28) -/* 801677B0 00164710 C0 05 00 08 */ lfs f0, 8(r5) -/* 801677B4 00164714 D0 1C 00 F0 */ stfs f0, 0xf0(r28) -/* 801677B8 00164718 C0 25 00 04 */ lfs f1, 4(r5) -/* 801677BC 0016471C C0 1C 00 50 */ lfs f0, 0x50(r28) -/* 801677C0 00164720 C0 65 00 08 */ lfs f3, 8(r5) -/* 801677C4 00164724 C0 5C 00 60 */ lfs f2, 0x60(r28) -/* 801677C8 00164728 EC 81 00 28 */ fsubs f4, f1, f0 -/* 801677CC 0016472C C0 1C 00 40 */ lfs f0, 0x40(r28) -/* 801677D0 00164730 C0 25 00 00 */ lfs f1, 0(r5) -/* 801677D4 00164734 EC 43 10 28 */ fsubs f2, f3, f2 -/* 801677D8 00164738 D0 81 00 30 */ stfs f4, 0x30(r1) -/* 801677DC 0016473C EC 01 00 28 */ fsubs f0, f1, f0 -/* 801677E0 00164740 D0 41 00 34 */ stfs f2, 0x34(r1) -/* 801677E4 00164744 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 801677E8 00164748 48 1A D0 69 */ bl AsNormalized__9CVector3fCFv -/* 801677EC 0016474C A0 7C 00 F4 */ lhz r3, 0xf4(r28) -/* 801677F0 00164750 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 801677F4 00164754 C3 E1 00 38 */ lfs f31, 0x38(r1) -/* 801677F8 00164758 7C 03 00 40 */ cmplw r3, r0 -/* 801677FC 0016475C C3 C1 00 3C */ lfs f30, 0x3c(r1) -/* 80167800 00164760 C3 A1 00 40 */ lfs f29, 0x40(r1) -/* 80167804 00164764 41 82 00 78 */ beq lbl_8016787C -/* 80167808 00164768 A0 1C 00 F4 */ lhz r0, 0xf4(r28) -/* 8016780C 0016476C 7F E3 FB 78 */ mr r3, r31 -/* 80167810 00164770 38 81 00 08 */ addi r4, r1, 8 -/* 80167814 00164774 B0 01 00 08 */ sth r0, 8(r1) -/* 80167818 00164778 4B EE 4D 5D */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8016781C 0016477C 7C 64 1B 78 */ mr r4, r3 -/* 80167820 00164780 38 61 00 0C */ addi r3, r1, 0xc -/* 80167824 00164784 4B F4 62 61 */ bl "__ct__24TCastToPtr<10CGameLight>FP7CEntity" -/* 80167828 00164788 80 63 00 04 */ lwz r3, 4(r3) -/* 8016782C 0016478C 28 03 00 00 */ cmplwi r3, 0 -/* 80167830 00164790 41 82 00 4C */ beq lbl_8016787C -/* 80167834 00164794 C0 A2 9F 80 */ lfs f5, lbl_805ABCA0@sda21(r2) -/* 80167838 00164798 38 81 00 20 */ addi r4, r1, 0x20 -/* 8016783C 0016479C C0 5D 00 04 */ lfs f2, 4(r29) -/* 80167840 001647A0 EC 85 07 B2 */ fmuls f4, f5, f30 -/* 80167844 001647A4 C0 3D 00 08 */ lfs f1, 8(r29) -/* 80167848 001647A8 EC 65 07 72 */ fmuls f3, f5, f29 -/* 8016784C 001647AC C0 1D 00 00 */ lfs f0, 0(r29) -/* 80167850 001647B0 EC A5 07 F2 */ fmuls f5, f5, f31 -/* 80167854 001647B4 EC 42 20 28 */ fsubs f2, f2, f4 -/* 80167858 001647B8 EC 21 18 28 */ fsubs f1, f1, f3 -/* 8016785C 001647BC D0 81 00 18 */ stfs f4, 0x18(r1) -/* 80167860 001647C0 EC 00 28 28 */ fsubs f0, f0, f5 -/* 80167864 001647C4 D0 A1 00 14 */ stfs f5, 0x14(r1) -/* 80167868 001647C8 D0 61 00 1C */ stfs f3, 0x1c(r1) -/* 8016786C 001647CC D0 01 00 20 */ stfs f0, 0x20(r1) -/* 80167870 001647D0 D0 41 00 24 */ stfs f2, 0x24(r1) -/* 80167874 001647D4 D0 21 00 28 */ stfs f1, 0x28(r1) -/* 80167878 001647D8 4B EE B6 15 */ bl SetTranslation__6CActorFRC9CVector3f -lbl_8016787C: -/* 8016787C 001647DC 3C 80 80 5A */ lis r4, skZero3f@ha -/* 80167880 001647E0 3C 60 80 5A */ lis r3, lbl_805A66F4@ha -/* 80167884 001647E4 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l -/* 80167888 001647E8 83 FC 01 04 */ lwz r31, 0x104(r28) -/* 8016788C 001647EC 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 80167890 001647F0 7F C5 F3 78 */ mr r5, r30 -/* 80167894 001647F4 38 61 00 44 */ addi r3, r1, 0x44 -/* 80167898 001647F8 48 1A C2 79 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f -/* 8016789C 001647FC 7F E3 FB 78 */ mr r3, r31 -/* 801678A0 00164800 38 81 00 44 */ addi r4, r1, 0x44 -/* 801678A4 00164804 81 9F 00 00 */ lwz r12, 0(r31) -/* 801678A8 00164808 81 8C 00 14 */ lwz r12, 0x14(r12) -/* 801678AC 0016480C 7D 89 03 A6 */ mtctr r12 -/* 801678B0 00164810 4E 80 04 21 */ bctrl -/* 801678B4 00164814 80 7C 01 04 */ lwz r3, 0x104(r28) -/* 801678B8 00164818 7F A4 EB 78 */ mr r4, r29 -/* 801678BC 0016481C 81 83 00 00 */ lwz r12, 0(r3) -/* 801678C0 00164820 81 8C 00 18 */ lwz r12, 0x18(r12) -/* 801678C4 00164824 7D 89 03 A6 */ mtctr r12 -/* 801678C8 00164828 4E 80 04 21 */ bctrl -/* 801678CC 0016482C E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 -/* 801678D0 00164830 CB E1 00 B0 */ lfd f31, 0xb0(r1) -/* 801678D4 00164834 E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 -/* 801678D8 00164838 CB C1 00 A0 */ lfd f30, 0xa0(r1) -/* 801678DC 0016483C E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0 -/* 801678E0 00164840 CB A1 00 90 */ lfd f29, 0x90(r1) -/* 801678E4 00164844 83 E1 00 8C */ lwz r31, 0x8c(r1) -/* 801678E8 00164848 83 C1 00 88 */ lwz r30, 0x88(r1) -/* 801678EC 0016484C 83 A1 00 84 */ lwz r29, 0x84(r1) -/* 801678F0 00164850 80 01 00 C4 */ lwz r0, 0xc4(r1) -/* 801678F4 00164854 83 81 00 80 */ lwz r28, 0x80(r1) -/* 801678F8 00164858 7C 08 03 A6 */ mtlr r0 -/* 801678FC 0016485C 38 21 00 C0 */ addi r1, r1, 0xc0 -/* 80167900 00164860 4E 80 00 20 */ blr - -.global __ct__11CDroneLaserF9TUniqueIdRC12CTransform4fUi -__ct__11CDroneLaserF9TUniqueIdRC12CTransform4fUi: -/* 80167904 00164864 94 21 FE 50 */ stwu r1, -0x1b0(r1) -/* 80167908 00164868 7C 08 02 A6 */ mflr r0 -/* 8016790C 0016486C 3D 00 80 3D */ lis r8, lbl_803D0398@ha -/* 80167910 00164870 90 01 01 B4 */ stw r0, 0x1b4(r1) -/* 80167914 00164874 39 08 03 98 */ addi r8, r8, lbl_803D0398@l -/* 80167918 00164878 BF 61 01 9C */ stmw r27, 0x19c(r1) -/* 8016791C 0016487C 7C 7C 1B 78 */ mr r28, r3 -/* 80167920 00164880 7C 9D 23 78 */ mr r29, r4 -/* 80167924 00164884 7C BB 2B 78 */ mr r27, r5 -/* 80167928 00164888 7C DE 33 78 */ mr r30, r6 -/* 8016792C 0016488C 7C FF 3B 78 */ mr r31, r7 -/* 80167930 00164890 38 61 00 50 */ addi r3, r1, 0x50 -/* 80167934 00164894 38 88 00 83 */ addi r4, r8, 0x83 -/* 80167938 00164898 4B E9 D3 81 */ bl string_l__4rstlFPCc -/* 8016793C 0016489C 80 8D A3 88 */ lwz r4, lbl_805A8F48@sda21(r13) -/* 80167940 001648A0 3C 60 80 57 */ lis r3, lbl_8056D410@ha -/* 80167944 001648A4 80 1B 00 00 */ lwz r0, 0(r27) -/* 80167948 001648A8 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l -/* 8016794C 001648AC 90 81 00 28 */ stw r4, 0x28(r1) -/* 80167950 001648B0 38 61 00 60 */ addi r3, r1, 0x60 -/* 80167954 001648B4 38 81 00 2C */ addi r4, r1, 0x2c -/* 80167958 001648B8 38 C1 00 28 */ addi r6, r1, 0x28 -/* 8016795C 001648BC 90 01 00 2C */ stw r0, 0x2c(r1) -/* 80167960 001648C0 4B EE 9B 25 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" -/* 80167964 001648C4 38 61 01 48 */ addi r3, r1, 0x148 -/* 80167968 001648C8 4B ED 2E 3D */ bl CModelDataNull__10CModelDataFv -/* 8016796C 001648CC 38 61 00 E0 */ addi r3, r1, 0xe0 -/* 80167970 001648D0 4B EB 34 C9 */ bl None__16CActorParametersFv -/* 80167974 001648D4 38 61 00 78 */ addi r3, r1, 0x78 -/* 80167978 001648D8 38 81 00 E0 */ addi r4, r1, 0xe0 -/* 8016797C 001648DC 38 A0 00 01 */ li r5, 1 -/* 80167980 001648E0 4B F9 EE 8D */ bl sub_8010680c -/* 80167984 001648E4 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) -/* 80167988 001648E8 38 00 00 00 */ li r0, 0 -/* 8016798C 001648EC 80 AD 8D 00 */ lwz r5, lbl_805A78C0@sda21(r13) -/* 80167990 001648F0 38 60 00 00 */ li r3, 0 -/* 80167994 001648F4 B0 81 00 10 */ sth r4, 0x10(r1) -/* 80167998 001648F8 38 80 00 01 */ li r4, 1 -/* 8016799C 001648FC 90 01 00 4C */ stw r0, 0x4c(r1) -/* 801679A0 00164900 90 01 00 48 */ stw r0, 0x48(r1) -/* 801679A4 00164904 48 22 25 51 */ bl __shl2i -/* 801679A8 00164908 80 A1 00 48 */ lwz r5, 0x48(r1) -/* 801679AC 0016490C 39 61 00 78 */ addi r11, r1, 0x78 -/* 801679B0 00164910 80 C1 00 4C */ lwz r6, 0x4c(r1) -/* 801679B4 00164914 38 01 00 10 */ addi r0, r1, 0x10 -/* 801679B8 00164918 7C A3 1B 78 */ or r3, r5, r3 -/* 801679BC 0016491C A0 BD 00 00 */ lhz r5, 0(r29) -/* 801679C0 00164920 7C C4 23 78 */ or r4, r6, r4 -/* 801679C4 00164924 90 61 00 48 */ stw r3, 0x48(r1) -/* 801679C8 00164928 7F 83 E3 78 */ mr r3, r28 -/* 801679CC 0016492C 7F C8 F3 78 */ mr r8, r30 -/* 801679D0 00164930 90 81 00 4C */ stw r4, 0x4c(r1) -/* 801679D4 00164934 38 81 00 14 */ addi r4, r1, 0x14 -/* 801679D8 00164938 38 C1 00 50 */ addi r6, r1, 0x50 -/* 801679DC 0016493C 38 E1 00 60 */ addi r7, r1, 0x60 -/* 801679E0 00164940 B0 A1 00 14 */ sth r5, 0x14(r1) -/* 801679E4 00164944 39 21 01 48 */ addi r9, r1, 0x148 -/* 801679E8 00164948 39 41 00 48 */ addi r10, r1, 0x48 -/* 801679EC 0016494C 38 A0 00 01 */ li r5, 1 -/* 801679F0 00164950 91 61 00 08 */ stw r11, 8(r1) -/* 801679F4 00164954 90 01 00 0C */ stw r0, 0xc(r1) -/* 801679F8 00164958 4B EE DE 29 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" -/* 801679FC 0016495C 38 61 00 78 */ addi r3, r1, 0x78 -/* 80167A00 00164960 38 80 FF FF */ li r4, -1 -/* 80167A04 00164964 4B F9 EC 05 */ bl __dt__16CActorParametersFv -/* 80167A08 00164968 38 61 00 E0 */ addi r3, r1, 0xe0 -/* 80167A0C 0016496C 38 80 FF FF */ li r4, -1 -/* 80167A10 00164970 4B F9 EB F9 */ bl __dt__16CActorParametersFv -/* 80167A14 00164974 38 61 01 48 */ addi r3, r1, 0x148 -/* 80167A18 00164978 38 80 FF FF */ li r4, -1 -/* 80167A1C 0016497C 4B FA F0 31 */ bl __dt__10CModelDataFv -/* 80167A20 00164980 80 01 00 68 */ lwz r0, 0x68(r1) -/* 80167A24 00164984 80 61 00 70 */ lwz r3, 0x70(r1) -/* 80167A28 00164988 1C 00 00 0C */ mulli r0, r0, 0xc -/* 80167A2C 0016498C 90 61 00 1C */ stw r3, 0x1c(r1) -/* 80167A30 00164990 7C 64 1B 78 */ mr r4, r3 -/* 80167A34 00164994 7C 03 02 14 */ add r0, r3, r0 -/* 80167A38 00164998 90 61 00 18 */ stw r3, 0x18(r1) -/* 80167A3C 0016499C 90 01 00 24 */ stw r0, 0x24(r1) -/* 80167A40 001649A0 90 01 00 20 */ stw r0, 0x20(r1) -/* 80167A44 001649A4 48 00 00 08 */ b lbl_80167A4C -lbl_80167A48: -/* 80167A48 001649A8 38 84 00 0C */ addi r4, r4, 0xc -lbl_80167A4C: -/* 80167A4C 001649AC 7C 04 00 40 */ cmplw r4, r0 -/* 80167A50 001649B0 40 82 FF F8 */ bne lbl_80167A48 -/* 80167A54 001649B4 28 03 00 00 */ cmplwi r3, 0 -/* 80167A58 001649B8 41 82 00 08 */ beq lbl_80167A60 -/* 80167A5C 001649BC 48 1A DE D5 */ bl Free__7CMemoryFPCv -lbl_80167A60: -/* 80167A60 001649C0 38 61 00 50 */ addi r3, r1, 0x50 -/* 80167A64 001649C4 48 1D 60 7D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 80167A68 001649C8 3C 60 80 3E */ lis r3, lbl_803E3A58@ha -/* 80167A6C 001649CC 3C 80 80 5A */ lis r4, skZero3f@ha -/* 80167A70 001649D0 38 03 3A 58 */ addi r0, r3, lbl_803E3A58@l -/* 80167A74 001649D4 38 A1 00 40 */ addi r5, r1, 0x40 -/* 80167A78 001649D8 90 1C 00 00 */ stw r0, 0(r28) -/* 80167A7C 001649DC 3C 60 50 41 */ lis r3, 0x50415254@ha -/* 80167A80 001649E0 38 03 52 54 */ addi r0, r3, 0x50415254@l -/* 80167A84 001649E4 C4 04 66 A0 */ lfsu f0, skZero3f@l(r4) -/* 80167A88 001649E8 38 61 00 38 */ addi r3, r1, 0x38 -/* 80167A8C 001649EC D0 1C 00 E8 */ stfs f0, 0xe8(r28) -/* 80167A90 001649F0 C0 04 00 04 */ lfs f0, 4(r4) -/* 80167A94 001649F4 D0 1C 00 EC */ stfs f0, 0xec(r28) -/* 80167A98 001649F8 C0 04 00 08 */ lfs f0, 8(r4) -/* 80167A9C 001649FC D0 1C 00 F0 */ stfs f0, 0xf0(r28) -/* 80167AA0 00164A00 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) -/* 80167AA4 00164A04 B0 9C 00 F4 */ sth r4, 0xf4(r28) -/* 80167AA8 00164A08 90 01 00 40 */ stw r0, 0x40(r1) -/* 80167AAC 00164A0C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) -/* 80167AB0 00164A10 93 E1 00 44 */ stw r31, 0x44(r1) -/* 80167AB4 00164A14 81 84 00 00 */ lwz r12, 0(r4) -/* 80167AB8 00164A18 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 80167ABC 00164A1C 7D 89 03 A6 */ mtctr r12 -/* 80167AC0 00164A20 4E 80 04 21 */ bctrl -/* 80167AC4 00164A24 3B 7C 00 F8 */ addi r27, r28, 0xf8 -/* 80167AC8 00164A28 38 81 00 38 */ addi r4, r1, 0x38 -/* 80167ACC 00164A2C 7F 63 DB 78 */ mr r3, r27 -/* 80167AD0 00164A30 48 1D 93 D9 */ bl __ct__6CTokenFRC6CToken -/* 80167AD4 00164A34 7F 63 DB 78 */ mr r3, r27 -/* 80167AD8 00164A38 48 1D 93 35 */ bl GetObj__6CTokenFv -/* 80167ADC 00164A3C 80 03 00 04 */ lwz r0, 4(r3) -/* 80167AE0 00164A40 38 61 00 38 */ addi r3, r1, 0x38 -/* 80167AE4 00164A44 38 80 FF FF */ li r4, -1 -/* 80167AE8 00164A48 90 1B 00 08 */ stw r0, 8(r27) -/* 80167AEC 00164A4C 48 1D 93 55 */ bl __dt__6CTokenFv -/* 80167AF0 00164A50 3C 60 80 3D */ lis r3, lbl_803D0398@ha -/* 80167AF4 00164A54 3B 60 00 00 */ li r27, 0 -/* 80167AF8 00164A58 38 83 03 98 */ addi r4, r3, lbl_803D0398@l -/* 80167AFC 00164A5C 38 60 03 40 */ li r3, 0x340 -/* 80167B00 00164A60 38 84 00 3B */ addi r4, r4, 0x3b -/* 80167B04 00164A64 38 A0 00 00 */ li r5, 0 -/* 80167B08 00164A68 48 1A DD 65 */ bl __nw__FUlPCcPCc -/* 80167B0C 00164A6C 7C 7D 1B 79 */ or. r29, r3, r3 -/* 80167B10 00164A70 41 82 00 2C */ beq lbl_80167B3C -/* 80167B14 00164A74 38 61 00 30 */ addi r3, r1, 0x30 -/* 80167B18 00164A78 38 9C 00 F8 */ addi r4, r28, 0xf8 -/* 80167B1C 00164A7C 48 1D 93 8D */ bl __ct__6CTokenFRC6CToken -/* 80167B20 00164A80 7F A3 EB 78 */ mr r3, r29 -/* 80167B24 00164A84 38 81 00 30 */ addi r4, r1, 0x30 -/* 80167B28 00164A88 3B 60 00 01 */ li r27, 1 -/* 80167B2C 00164A8C 38 A0 00 00 */ li r5, 0 -/* 80167B30 00164A90 38 C0 00 01 */ li r6, 1 -/* 80167B34 00164A94 48 1B 78 AD */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" -/* 80167B38 00164A98 7C 7D 1B 78 */ mr r29, r3 -lbl_80167B3C: -/* 80167B3C 00164A9C 7F 60 07 75 */ extsb. r0, r27 -/* 80167B40 00164AA0 93 BC 01 04 */ stw r29, 0x104(r28) -/* 80167B44 00164AA4 41 82 00 10 */ beq lbl_80167B54 -/* 80167B48 00164AA8 38 61 00 30 */ addi r3, r1, 0x30 -/* 80167B4C 00164AAC 38 80 00 00 */ li r4, 0 -/* 80167B50 00164AB0 48 1D 92 F1 */ bl __dt__6CTokenFv -lbl_80167B54: -/* 80167B54 00164AB4 7F 83 E3 78 */ mr r3, r28 -/* 80167B58 00164AB8 BB 61 01 9C */ lmw r27, 0x19c(r1) -/* 80167B5C 00164ABC 80 01 01 B4 */ lwz r0, 0x1b4(r1) -/* 80167B60 00164AC0 7C 08 03 A6 */ mtlr r0 -/* 80167B64 00164AC4 38 21 01 B0 */ addi r1, r1, 0x1b0 -/* 80167B68 00164AC8 4E 80 00 20 */ blr - -.global __dt__11CDroneLaserFv -__dt__11CDroneLaserFv: -/* 80167B6C 00164ACC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80167B70 00164AD0 7C 08 02 A6 */ mflr r0 -/* 80167B74 00164AD4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80167B78 00164AD8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80167B7C 00164ADC 7C 9F 23 78 */ mr r31, r4 -/* 80167B80 00164AE0 93 C1 00 08 */ stw r30, 8(r1) -/* 80167B84 00164AE4 7C 7E 1B 79 */ or. r30, r3, r3 -/* 80167B88 00164AE8 41 82 00 70 */ beq lbl_80167BF8 -/* 80167B8C 00164AEC 3C 60 80 3E */ lis r3, lbl_803E3A58@ha -/* 80167B90 00164AF0 34 1E 01 04 */ addic. r0, r30, 0x104 -/* 80167B94 00164AF4 38 03 3A 58 */ addi r0, r3, lbl_803E3A58@l -/* 80167B98 00164AF8 90 1E 00 00 */ stw r0, 0(r30) -/* 80167B9C 00164AFC 41 82 00 24 */ beq lbl_80167BC0 -/* 80167BA0 00164B00 80 7E 01 04 */ lwz r3, 0x104(r30) -/* 80167BA4 00164B04 28 03 00 00 */ cmplwi r3, 0 -/* 80167BA8 00164B08 41 82 00 18 */ beq lbl_80167BC0 -/* 80167BAC 00164B0C 81 83 00 00 */ lwz r12, 0(r3) -/* 80167BB0 00164B10 38 80 00 01 */ li r4, 1 -/* 80167BB4 00164B14 81 8C 00 08 */ lwz r12, 8(r12) -/* 80167BB8 00164B18 7D 89 03 A6 */ mtctr r12 -/* 80167BBC 00164B1C 4E 80 04 21 */ bctrl -lbl_80167BC0: -/* 80167BC0 00164B20 34 1E 00 F8 */ addic. r0, r30, 0xf8 -/* 80167BC4 00164B24 41 82 00 18 */ beq lbl_80167BDC -/* 80167BC8 00164B28 34 1E 00 F8 */ addic. r0, r30, 0xf8 -/* 80167BCC 00164B2C 41 82 00 10 */ beq lbl_80167BDC -/* 80167BD0 00164B30 38 7E 00 F8 */ addi r3, r30, 0xf8 -/* 80167BD4 00164B34 38 80 00 00 */ li r4, 0 -/* 80167BD8 00164B38 48 1D 92 69 */ bl __dt__6CTokenFv -lbl_80167BDC: -/* 80167BDC 00164B3C 7F C3 F3 78 */ mr r3, r30 -/* 80167BE0 00164B40 38 80 00 00 */ li r4, 0 -/* 80167BE4 00164B44 4B EE DB 0D */ bl __dt__6CActorFv -/* 80167BE8 00164B48 7F E0 07 35 */ extsh. r0, r31 -/* 80167BEC 00164B4C 40 81 00 0C */ ble lbl_80167BF8 -/* 80167BF0 00164B50 7F C3 F3 78 */ mr r3, r30 -/* 80167BF4 00164B54 48 1A DD 3D */ bl Free__7CMemoryFPCv -lbl_80167BF8: -/* 80167BF8 00164B58 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80167BFC 00164B5C 7F C3 F3 78 */ mr r3, r30 -/* 80167C00 00164B60 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80167C04 00164B64 83 C1 00 08 */ lwz r30, 8(r1) -/* 80167C08 00164B68 7C 08 03 A6 */ mtlr r0 -/* 80167C0C 00164B6C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80167C10 00164B70 4E 80 00 20 */ blr - -.global IsAnythingSet__13CMapWorldInfoFv -IsAnythingSet__13CMapWorldInfoFv: -/* 80167C14 00164B74 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80167C18 00164B78 39 00 00 00 */ li r8, 0 -/* 80167C1C 00164B7C 38 A0 00 01 */ li r5, 1 -/* 80167C20 00164B80 80 03 00 00 */ lwz r0, 0(r3) -/* 80167C24 00164B84 7C 09 03 A6 */ mtctr r0 -/* 80167C28 00164B88 2C 00 00 00 */ cmpwi r0, 0 -/* 80167C2C 00164B8C 40 81 00 5C */ ble lbl_80167C88 -lbl_80167C30: -/* 80167C30 00164B90 7D 04 2E 70 */ srawi r4, r8, 5 -/* 80167C34 00164B94 55 00 D8 08 */ slwi r0, r8, 0x1b -/* 80167C38 00164B98 7C C4 01 94 */ addze r6, r4 -/* 80167C3C 00164B9C 55 04 0F FE */ srwi r4, r8, 0x1f -/* 80167C40 00164BA0 7C 04 00 50 */ subf r0, r4, r0 -/* 80167C44 00164BA4 80 E3 00 10 */ lwz r7, 0x10(r3) -/* 80167C48 00164BA8 54 C6 10 3A */ slwi r6, r6, 2 -/* 80167C4C 00164BAC 7C E7 32 14 */ add r7, r7, r6 -/* 80167C50 00164BB0 54 00 28 3E */ rotlwi r0, r0, 5 -/* 80167C54 00164BB4 7C 80 22 14 */ add r4, r0, r4 -/* 80167C58 00164BB8 80 07 00 00 */ lwz r0, 0(r7) -/* 80167C5C 00164BBC 7C A4 20 30 */ slw r4, r5, r4 -/* 80167C60 00164BC0 90 E1 00 14 */ stw r7, 0x14(r1) -/* 80167C64 00164BC4 7C 80 00 39 */ and. r0, r4, r0 -/* 80167C68 00164BC8 90 E1 00 10 */ stw r7, 0x10(r1) -/* 80167C6C 00164BCC 90 E1 00 20 */ stw r7, 0x20(r1) -/* 80167C70 00164BD0 90 81 00 24 */ stw r4, 0x24(r1) -/* 80167C74 00164BD4 41 82 00 0C */ beq lbl_80167C80 -/* 80167C78 00164BD8 38 60 00 01 */ li r3, 1 -/* 80167C7C 00164BDC 48 00 00 80 */ b lbl_80167CFC -lbl_80167C80: -/* 80167C80 00164BE0 39 08 00 01 */ addi r8, r8, 1 -/* 80167C84 00164BE4 42 00 FF AC */ bdnz lbl_80167C30 -lbl_80167C88: -/* 80167C88 00164BE8 80 03 00 14 */ lwz r0, 0x14(r3) -/* 80167C8C 00164BEC 39 00 00 00 */ li r8, 0 -/* 80167C90 00164BF0 38 A0 00 01 */ li r5, 1 -/* 80167C94 00164BF4 7C 09 03 A6 */ mtctr r0 -/* 80167C98 00164BF8 2C 00 00 00 */ cmpwi r0, 0 -/* 80167C9C 00164BFC 40 81 00 5C */ ble lbl_80167CF8 -lbl_80167CA0: -/* 80167CA0 00164C00 7D 04 2E 70 */ srawi r4, r8, 5 -/* 80167CA4 00164C04 55 00 D8 08 */ slwi r0, r8, 0x1b -/* 80167CA8 00164C08 7C C4 01 94 */ addze r6, r4 -/* 80167CAC 00164C0C 55 04 0F FE */ srwi r4, r8, 0x1f -/* 80167CB0 00164C10 7C 04 00 50 */ subf r0, r4, r0 -/* 80167CB4 00164C14 80 E3 00 24 */ lwz r7, 0x24(r3) -/* 80167CB8 00164C18 54 C6 10 3A */ slwi r6, r6, 2 -/* 80167CBC 00164C1C 7C E7 32 14 */ add r7, r7, r6 -/* 80167CC0 00164C20 54 00 28 3E */ rotlwi r0, r0, 5 -/* 80167CC4 00164C24 7C 80 22 14 */ add r4, r0, r4 -/* 80167CC8 00164C28 80 07 00 00 */ lwz r0, 0(r7) -/* 80167CCC 00164C2C 7C A4 20 30 */ slw r4, r5, r4 -/* 80167CD0 00164C30 90 E1 00 0C */ stw r7, 0xc(r1) -/* 80167CD4 00164C34 7C 80 00 39 */ and. r0, r4, r0 -/* 80167CD8 00164C38 90 E1 00 08 */ stw r7, 8(r1) -/* 80167CDC 00164C3C 90 E1 00 18 */ stw r7, 0x18(r1) -/* 80167CE0 00164C40 90 81 00 1C */ stw r4, 0x1c(r1) -/* 80167CE4 00164C44 41 82 00 0C */ beq lbl_80167CF0 -/* 80167CE8 00164C48 38 60 00 01 */ li r3, 1 -/* 80167CEC 00164C4C 48 00 00 10 */ b lbl_80167CFC -lbl_80167CF0: -/* 80167CF0 00164C50 39 08 00 01 */ addi r8, r8, 1 -/* 80167CF4 00164C54 42 00 FF AC */ bdnz lbl_80167CA0 -lbl_80167CF8: -/* 80167CF8 00164C58 88 63 00 38 */ lbz r3, 0x38(r3) -lbl_80167CFC: -/* 80167CFC 00164C5C 38 21 00 30 */ addi r1, r1, 0x30 -/* 80167D00 00164C60 4E 80 00 20 */ blr - -.global IsAreaVisible__13CMapWorldInfoCF7TAreaId -IsAreaVisible__13CMapWorldInfoCF7TAreaId: -/* 80167D04 00164C64 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80167D08 00164C68 7C 08 02 A6 */ mflr r0 -/* 80167D0C 00164C6C 90 01 00 24 */ stw r0, 0x24(r1) -/* 80167D10 00164C70 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80167D14 00164C74 3B E0 00 01 */ li r31, 1 -/* 80167D18 00164C78 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80167D1C 00164C7C 7C 9E 23 78 */ mr r30, r4 -/* 80167D20 00164C80 93 A1 00 14 */ stw r29, 0x14(r1) -/* 80167D24 00164C84 7C 7D 1B 78 */ mr r29, r3 -/* 80167D28 00164C88 80 04 00 00 */ lwz r0, 0(r4) -/* 80167D2C 00164C8C 38 81 00 0C */ addi r4, r1, 0xc -/* 80167D30 00164C90 90 01 00 0C */ stw r0, 0xc(r1) -/* 80167D34 00164C94 48 00 00 4D */ bl IsAreaVisited__13CMapWorldInfoCF7TAreaId -/* 80167D38 00164C98 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80167D3C 00164C9C 40 82 00 24 */ bne lbl_80167D60 -/* 80167D40 00164CA0 80 1E 00 00 */ lwz r0, 0(r30) -/* 80167D44 00164CA4 7F A3 EB 78 */ mr r3, r29 -/* 80167D48 00164CA8 38 81 00 08 */ addi r4, r1, 8 -/* 80167D4C 00164CAC 90 01 00 08 */ stw r0, 8(r1) -/* 80167D50 00164CB0 48 00 05 D5 */ bl IsMapped__13CMapWorldInfoCF7TAreaId -/* 80167D54 00164CB4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80167D58 00164CB8 40 82 00 08 */ bne lbl_80167D60 -/* 80167D5C 00164CBC 3B E0 00 00 */ li r31, 0 -lbl_80167D60: -/* 80167D60 00164CC0 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80167D64 00164CC4 7F E3 FB 78 */ mr r3, r31 -/* 80167D68 00164CC8 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80167D6C 00164CCC 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 80167D70 00164CD0 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 80167D74 00164CD4 7C 08 03 A6 */ mtlr r0 -/* 80167D78 00164CD8 38 21 00 20 */ addi r1, r1, 0x20 -/* 80167D7C 00164CDC 4E 80 00 20 */ blr - -.global IsAreaVisited__13CMapWorldInfoCF7TAreaId -IsAreaVisited__13CMapWorldInfoCF7TAreaId: -/* 80167D80 00164CE0 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 80167D84 00164CE4 7C 08 02 A6 */ mflr r0 -/* 80167D88 00164CE8 90 01 00 54 */ stw r0, 0x54(r1) -/* 80167D8C 00164CEC 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 80167D90 00164CF0 7C 9F 23 78 */ mr r31, r4 -/* 80167D94 00164CF4 93 C1 00 48 */ stw r30, 0x48(r1) -/* 80167D98 00164CF8 7C 7E 1B 78 */ mr r30, r3 -/* 80167D9C 00164CFC 80 64 00 00 */ lwz r3, 0(r4) -/* 80167DA0 00164D00 80 1E 00 00 */ lwz r0, 0(r30) -/* 80167DA4 00164D04 38 63 00 01 */ addi r3, r3, 1 -/* 80167DA8 00164D08 7C 03 00 00 */ cmpw r3, r0 -/* 80167DAC 00164D0C 40 81 00 80 */ ble lbl_80167E2C -/* 80167DB0 00164D10 54 60 D8 08 */ slwi r0, r3, 0x1b -/* 80167DB4 00164D14 54 64 0F FE */ srwi r4, r3, 0x1f -/* 80167DB8 00164D18 7C 04 00 50 */ subf r0, r4, r0 -/* 80167DBC 00164D1C 7C 65 2E 70 */ srawi r5, r3, 5 -/* 80167DC0 00164D20 54 00 28 3E */ rotlwi r0, r0, 5 -/* 80167DC4 00164D24 38 7E 00 04 */ addi r3, r30, 4 -/* 80167DC8 00164D28 7C 80 22 14 */ add r4, r0, r4 -/* 80167DCC 00164D2C 7C A5 01 94 */ addze r5, r5 -/* 80167DD0 00164D30 7C 04 00 D0 */ neg r0, r4 -/* 80167DD4 00164D34 7C 00 23 78 */ or r0, r0, r4 -/* 80167DD8 00164D38 54 00 0F FE */ srwi r0, r0, 0x1f -/* 80167DDC 00164D3C 7C 85 02 14 */ add r4, r5, r0 -/* 80167DE0 00164D40 4B EF BD 45 */ bl "reserve__Q24rstl37vectorFi" -/* 80167DE4 00164D44 80 1E 00 10 */ lwz r0, 0x10(r30) -/* 80167DE8 00164D48 7F C3 F3 78 */ mr r3, r30 -/* 80167DEC 00164D4C 80 FE 00 00 */ lwz r7, 0(r30) -/* 80167DF0 00164D50 38 81 00 30 */ addi r4, r1, 0x30 -/* 80167DF4 00164D54 80 BF 00 00 */ lwz r5, 0(r31) -/* 80167DF8 00164D58 38 C0 00 00 */ li r6, 0 -/* 80167DFC 00164D5C 90 01 00 18 */ stw r0, 0x18(r1) -/* 80167E00 00164D60 7C A7 28 50 */ subf r5, r7, r5 -/* 80167E04 00164D64 90 01 00 14 */ stw r0, 0x14(r1) -/* 80167E08 00164D68 38 A5 00 01 */ addi r5, r5, 1 -/* 80167E0C 00164D6C 90 01 00 10 */ stw r0, 0x10(r1) -/* 80167E10 00164D70 90 01 00 24 */ stw r0, 0x24(r1) -/* 80167E14 00164D74 90 E1 00 28 */ stw r7, 0x28(r1) -/* 80167E18 00164D78 90 01 00 2C */ stw r0, 0x2c(r1) -/* 80167E1C 00164D7C 90 01 00 30 */ stw r0, 0x30(r1) -/* 80167E20 00164D80 90 E1 00 34 */ stw r7, 0x34(r1) -/* 80167E24 00164D84 90 01 00 38 */ stw r0, 0x38(r1) -/* 80167E28 00164D88 48 00 00 75 */ bl sub_80167e9c -lbl_80167E2C: -/* 80167E2C 00164D8C 80 9F 00 00 */ lwz r4, 0(r31) -/* 80167E30 00164D90 38 A0 00 01 */ li r5, 1 -/* 80167E34 00164D94 80 DE 00 10 */ lwz r6, 0x10(r30) -/* 80167E38 00164D98 7C 83 2E 70 */ srawi r3, r4, 5 -/* 80167E3C 00164D9C 54 80 D8 08 */ slwi r0, r4, 0x1b -/* 80167E40 00164DA0 7C 63 01 94 */ addze r3, r3 -/* 80167E44 00164DA4 54 84 0F FE */ srwi r4, r4, 0x1f -/* 80167E48 00164DA8 54 63 10 3A */ slwi r3, r3, 2 -/* 80167E4C 00164DAC 7C C6 1A 14 */ add r6, r6, r3 -/* 80167E50 00164DB0 7C 04 00 50 */ subf r0, r4, r0 -/* 80167E54 00164DB4 54 03 28 3E */ rotlwi r3, r0, 5 -/* 80167E58 00164DB8 80 06 00 00 */ lwz r0, 0(r6) -/* 80167E5C 00164DBC 7C 63 22 14 */ add r3, r3, r4 -/* 80167E60 00164DC0 90 C1 00 0C */ stw r6, 0xc(r1) -/* 80167E64 00164DC4 7C A4 18 30 */ slw r4, r5, r3 -/* 80167E68 00164DC8 7C 83 00 38 */ and r3, r4, r0 -/* 80167E6C 00164DCC 90 C1 00 08 */ stw r6, 8(r1) -/* 80167E70 00164DD0 7C 03 00 D0 */ neg r0, r3 -/* 80167E74 00164DD4 7C 00 1B 78 */ or r0, r0, r3 -/* 80167E78 00164DD8 90 C1 00 1C */ stw r6, 0x1c(r1) -/* 80167E7C 00164DDC 54 03 0F FE */ srwi r3, r0, 0x1f -/* 80167E80 00164DE0 90 81 00 20 */ stw r4, 0x20(r1) -/* 80167E84 00164DE4 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 80167E88 00164DE8 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 80167E8C 00164DEC 80 01 00 54 */ lwz r0, 0x54(r1) -/* 80167E90 00164DF0 7C 08 03 A6 */ mtlr r0 -/* 80167E94 00164DF4 38 21 00 50 */ addi r1, r1, 0x50 -/* 80167E98 00164DF8 4E 80 00 20 */ blr - -.global sub_80167e9c -sub_80167e9c: -/* 80167E9C 00164DFC 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80167EA0 00164E00 7C 08 02 A6 */ mflr r0 -/* 80167EA4 00164E04 90 01 00 24 */ stw r0, 0x24(r1) -/* 80167EA8 00164E08 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80167EAC 00164E0C 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80167EB0 00164E10 7C 7E 1B 78 */ mr r30, r3 -/* 80167EB4 00164E14 93 A1 00 14 */ stw r29, 0x14(r1) -/* 80167EB8 00164E18 7C DD 33 78 */ mr r29, r6 -/* 80167EBC 00164E1C 93 81 00 10 */ stw r28, 0x10(r1) -/* 80167EC0 00164E20 7C BC 2B 78 */ mr r28, r5 -/* 80167EC4 00164E24 80 84 00 04 */ lwz r4, 4(r4) -/* 80167EC8 00164E28 7C 9F 23 78 */ mr r31, r4 -/* 80167ECC 00164E2C 48 00 02 CD */ bl sub_80168198 -/* 80167ED0 00164E30 57 A0 06 3F */ clrlwi. r0, r29, 0x18 -/* 80167ED4 00164E34 41 82 01 58 */ beq lbl_8016802C -/* 80167ED8 00164E38 2C 1C 00 00 */ cmpwi r28, 0 -/* 80167EDC 00164E3C 7F 83 E3 78 */ mr r3, r28 -/* 80167EE0 00164E40 40 81 02 98 */ ble lbl_80168178 -/* 80167EE4 00164E44 57 80 F0 BF */ rlwinm. r0, r28, 0x1e, 2, 0x1f -/* 80167EE8 00164E48 7C 09 03 A6 */ mtctr r0 -/* 80167EEC 00164E4C 41 82 00 F4 */ beq lbl_80167FE0 -lbl_80167EF0: -/* 80167EF0 00164E50 7F EB 2E 70 */ srawi r11, r31, 5 -/* 80167EF4 00164E54 57 E6 D8 08 */ slwi r6, r31, 0x1b -/* 80167EF8 00164E58 57 E5 0F FE */ srwi r5, r31, 0x1f -/* 80167EFC 00164E5C 81 9E 00 10 */ lwz r12, 0x10(r30) -/* 80167F00 00164E60 7D 4B 01 94 */ addze r10, r11 -/* 80167F04 00164E64 3B FF 00 01 */ addi r31, r31, 1 -/* 80167F08 00164E68 7C 85 30 50 */ subf r4, r5, r6 -/* 80167F0C 00164E6C 38 E0 00 01 */ li r7, 1 -/* 80167F10 00164E70 55 49 10 3A */ slwi r9, r10, 2 -/* 80167F14 00164E74 7F EB 2E 70 */ srawi r11, r31, 5 -/* 80167F18 00164E78 54 84 28 3E */ rotlwi r4, r4, 5 -/* 80167F1C 00164E7C 7D 0C 48 2E */ lwzx r8, r12, r9 -/* 80167F20 00164E80 7C 04 2A 14 */ add r0, r4, r5 -/* 80167F24 00164E84 57 E6 D8 08 */ slwi r6, r31, 0x1b -/* 80167F28 00164E88 57 E5 0F FE */ srwi r5, r31, 0x1f -/* 80167F2C 00164E8C 7D 4B 01 94 */ addze r10, r11 -/* 80167F30 00164E90 7C E0 00 30 */ slw r0, r7, r0 -/* 80167F34 00164E94 3B FF 00 01 */ addi r31, r31, 1 -/* 80167F38 00164E98 7C 85 30 50 */ subf r4, r5, r6 -/* 80167F3C 00164E9C 7D 00 03 78 */ or r0, r8, r0 -/* 80167F40 00164EA0 7F EB 2E 70 */ srawi r11, r31, 5 -/* 80167F44 00164EA4 7C 0C 49 2E */ stwx r0, r12, r9 -/* 80167F48 00164EA8 55 49 10 3A */ slwi r9, r10, 2 -/* 80167F4C 00164EAC 54 84 28 3E */ rotlwi r4, r4, 5 -/* 80167F50 00164EB0 57 E6 D8 08 */ slwi r6, r31, 0x1b -/* 80167F54 00164EB4 7C 04 2A 14 */ add r0, r4, r5 -/* 80167F58 00164EB8 81 9E 00 10 */ lwz r12, 0x10(r30) -/* 80167F5C 00164EBC 57 E5 0F FE */ srwi r5, r31, 0x1f -/* 80167F60 00164EC0 7D 4B 01 94 */ addze r10, r11 -/* 80167F64 00164EC4 7C 85 30 50 */ subf r4, r5, r6 -/* 80167F68 00164EC8 7D 0C 48 2E */ lwzx r8, r12, r9 -/* 80167F6C 00164ECC 7C E0 00 30 */ slw r0, r7, r0 -/* 80167F70 00164ED0 3B FF 00 01 */ addi r31, r31, 1 -/* 80167F74 00164ED4 7D 00 03 78 */ or r0, r8, r0 -/* 80167F78 00164ED8 54 84 28 3E */ rotlwi r4, r4, 5 -/* 80167F7C 00164EDC 7C 0C 49 2E */ stwx r0, r12, r9 -/* 80167F80 00164EE0 7C 04 2A 14 */ add r0, r4, r5 -/* 80167F84 00164EE4 55 49 10 3A */ slwi r9, r10, 2 -/* 80167F88 00164EE8 7F EB 2E 70 */ srawi r11, r31, 5 -/* 80167F8C 00164EEC 81 9E 00 10 */ lwz r12, 0x10(r30) -/* 80167F90 00164EF0 7C E0 00 30 */ slw r0, r7, r0 -/* 80167F94 00164EF4 57 E6 D8 08 */ slwi r6, r31, 0x1b -/* 80167F98 00164EF8 57 E5 0F FE */ srwi r5, r31, 0x1f -/* 80167F9C 00164EFC 7D 0C 48 2E */ lwzx r8, r12, r9 -/* 80167FA0 00164F00 7C 85 30 50 */ subf r4, r5, r6 -/* 80167FA4 00164F04 7D 4B 01 94 */ addze r10, r11 -/* 80167FA8 00164F08 3B FF 00 01 */ addi r31, r31, 1 -/* 80167FAC 00164F0C 7D 00 03 78 */ or r0, r8, r0 -/* 80167FB0 00164F10 54 84 28 3E */ rotlwi r4, r4, 5 -/* 80167FB4 00164F14 7C 0C 49 2E */ stwx r0, r12, r9 -/* 80167FB8 00164F18 7C 04 2A 14 */ add r0, r4, r5 -/* 80167FBC 00164F1C 55 49 10 3A */ slwi r9, r10, 2 -/* 80167FC0 00164F20 81 9E 00 10 */ lwz r12, 0x10(r30) -/* 80167FC4 00164F24 7C E0 00 30 */ slw r0, r7, r0 -/* 80167FC8 00164F28 7D 0C 48 2E */ lwzx r8, r12, r9 -/* 80167FCC 00164F2C 7D 00 03 78 */ or r0, r8, r0 -/* 80167FD0 00164F30 7C 0C 49 2E */ stwx r0, r12, r9 -/* 80167FD4 00164F34 42 00 FF 1C */ bdnz lbl_80167EF0 -/* 80167FD8 00164F38 70 63 00 03 */ andi. r3, r3, 3 -/* 80167FDC 00164F3C 41 82 01 9C */ beq lbl_80168178 -lbl_80167FE0: -/* 80167FE0 00164F40 7C 69 03 A6 */ mtctr r3 -/* 80167FE4 00164F44 38 E0 00 01 */ li r7, 1 -lbl_80167FE8: -/* 80167FE8 00164F48 7F E0 FB 78 */ mr r0, r31 -/* 80167FEC 00164F4C 57 E6 D8 08 */ slwi r6, r31, 0x1b -/* 80167FF0 00164F50 57 E5 0F FE */ srwi r5, r31, 0x1f -/* 80167FF4 00164F54 81 9E 00 10 */ lwz r12, 0x10(r30) -/* 80167FF8 00164F58 7C 0B 2E 70 */ srawi r11, r0, 5 -/* 80167FFC 00164F5C 3B FF 00 01 */ addi r31, r31, 1 -/* 80168000 00164F60 7D 4B 01 94 */ addze r10, r11 -/* 80168004 00164F64 7C 85 30 50 */ subf r4, r5, r6 -/* 80168008 00164F68 55 49 10 3A */ slwi r9, r10, 2 -/* 8016800C 00164F6C 54 84 28 3E */ rotlwi r4, r4, 5 -/* 80168010 00164F70 7D 0C 48 2E */ lwzx r8, r12, r9 -/* 80168014 00164F74 7C 04 2A 14 */ add r0, r4, r5 -/* 80168018 00164F78 7C E0 00 30 */ slw r0, r7, r0 -/* 8016801C 00164F7C 7D 00 03 78 */ or r0, r8, r0 -/* 80168020 00164F80 7C 0C 49 2E */ stwx r0, r12, r9 -/* 80168024 00164F84 42 00 FF C4 */ bdnz lbl_80167FE8 -/* 80168028 00164F88 48 00 01 50 */ b lbl_80168178 -lbl_8016802C: -/* 8016802C 00164F8C 2C 1C 00 00 */ cmpwi r28, 0 -/* 80168030 00164F90 7F 83 E3 78 */ mr r3, r28 -/* 80168034 00164F94 40 81 01 44 */ ble lbl_80168178 -/* 80168038 00164F98 57 80 F0 BF */ rlwinm. r0, r28, 0x1e, 2, 0x1f -/* 8016803C 00164F9C 7C 09 03 A6 */ mtctr r0 -/* 80168040 00164FA0 41 82 00 F4 */ beq lbl_80168134 -lbl_80168044: -/* 80168044 00164FA4 7F EB 2E 70 */ srawi r11, r31, 5 -/* 80168048 00164FA8 57 E6 D8 08 */ slwi r6, r31, 0x1b -/* 8016804C 00164FAC 57 E5 0F FE */ srwi r5, r31, 0x1f -/* 80168050 00164FB0 81 9E 00 10 */ lwz r12, 0x10(r30) -/* 80168054 00164FB4 7D 4B 01 94 */ addze r10, r11 -/* 80168058 00164FB8 3B FF 00 01 */ addi r31, r31, 1 -/* 8016805C 00164FBC 7C 85 30 50 */ subf r4, r5, r6 -/* 80168060 00164FC0 38 E0 00 01 */ li r7, 1 -/* 80168064 00164FC4 55 49 10 3A */ slwi r9, r10, 2 -/* 80168068 00164FC8 7F EB 2E 70 */ srawi r11, r31, 5 -/* 8016806C 00164FCC 54 84 28 3E */ rotlwi r4, r4, 5 -/* 80168070 00164FD0 7D 0C 48 2E */ lwzx r8, r12, r9 -/* 80168074 00164FD4 7C 04 2A 14 */ add r0, r4, r5 -/* 80168078 00164FD8 57 E6 D8 08 */ slwi r6, r31, 0x1b -/* 8016807C 00164FDC 57 E5 0F FE */ srwi r5, r31, 0x1f -/* 80168080 00164FE0 7D 4B 01 94 */ addze r10, r11 -/* 80168084 00164FE4 7C E0 00 30 */ slw r0, r7, r0 -/* 80168088 00164FE8 3B FF 00 01 */ addi r31, r31, 1 -/* 8016808C 00164FEC 7C 85 30 50 */ subf r4, r5, r6 -/* 80168090 00164FF0 7D 00 00 78 */ andc r0, r8, r0 -/* 80168094 00164FF4 7F EB 2E 70 */ srawi r11, r31, 5 -/* 80168098 00164FF8 7C 0C 49 2E */ stwx r0, r12, r9 -/* 8016809C 00164FFC 55 49 10 3A */ slwi r9, r10, 2 -/* 801680A0 00165000 54 84 28 3E */ rotlwi r4, r4, 5 -/* 801680A4 00165004 57 E6 D8 08 */ slwi r6, r31, 0x1b -/* 801680A8 00165008 7C 04 2A 14 */ add r0, r4, r5 -/* 801680AC 0016500C 81 9E 00 10 */ lwz r12, 0x10(r30) -/* 801680B0 00165010 57 E5 0F FE */ srwi r5, r31, 0x1f -/* 801680B4 00165014 7D 4B 01 94 */ addze r10, r11 -/* 801680B8 00165018 7C 85 30 50 */ subf r4, r5, r6 -/* 801680BC 0016501C 7D 0C 48 2E */ lwzx r8, r12, r9 -/* 801680C0 00165020 7C E0 00 30 */ slw r0, r7, r0 -/* 801680C4 00165024 3B FF 00 01 */ addi r31, r31, 1 -/* 801680C8 00165028 7D 00 00 78 */ andc r0, r8, r0 -/* 801680CC 0016502C 54 84 28 3E */ rotlwi r4, r4, 5 -/* 801680D0 00165030 7C 0C 49 2E */ stwx r0, r12, r9 -/* 801680D4 00165034 7C 04 2A 14 */ add r0, r4, r5 -/* 801680D8 00165038 55 49 10 3A */ slwi r9, r10, 2 -/* 801680DC 0016503C 7F EB 2E 70 */ srawi r11, r31, 5 -/* 801680E0 00165040 81 9E 00 10 */ lwz r12, 0x10(r30) -/* 801680E4 00165044 7C E0 00 30 */ slw r0, r7, r0 -/* 801680E8 00165048 57 E6 D8 08 */ slwi r6, r31, 0x1b -/* 801680EC 0016504C 57 E5 0F FE */ srwi r5, r31, 0x1f -/* 801680F0 00165050 7D 0C 48 2E */ lwzx r8, r12, r9 -/* 801680F4 00165054 7C 85 30 50 */ subf r4, r5, r6 -/* 801680F8 00165058 7D 4B 01 94 */ addze r10, r11 -/* 801680FC 0016505C 3B FF 00 01 */ addi r31, r31, 1 -/* 80168100 00165060 7D 00 00 78 */ andc r0, r8, r0 -/* 80168104 00165064 54 84 28 3E */ rotlwi r4, r4, 5 -/* 80168108 00165068 7C 0C 49 2E */ stwx r0, r12, r9 -/* 8016810C 0016506C 7C 04 2A 14 */ add r0, r4, r5 -/* 80168110 00165070 55 49 10 3A */ slwi r9, r10, 2 -/* 80168114 00165074 81 9E 00 10 */ lwz r12, 0x10(r30) -/* 80168118 00165078 7C E0 00 30 */ slw r0, r7, r0 -/* 8016811C 0016507C 7D 0C 48 2E */ lwzx r8, r12, r9 -/* 80168120 00165080 7D 00 00 78 */ andc r0, r8, r0 -/* 80168124 00165084 7C 0C 49 2E */ stwx r0, r12, r9 -/* 80168128 00165088 42 00 FF 1C */ bdnz lbl_80168044 -/* 8016812C 0016508C 70 63 00 03 */ andi. r3, r3, 3 -/* 80168130 00165090 41 82 00 48 */ beq lbl_80168178 -lbl_80168134: -/* 80168134 00165094 7C 69 03 A6 */ mtctr r3 -/* 80168138 00165098 38 E0 00 01 */ li r7, 1 -lbl_8016813C: -/* 8016813C 0016509C 7F EB 2E 70 */ srawi r11, r31, 5 -/* 80168140 001650A0 57 E6 D8 08 */ slwi r6, r31, 0x1b -/* 80168144 001650A4 57 E5 0F FE */ srwi r5, r31, 0x1f -/* 80168148 001650A8 81 9E 00 10 */ lwz r12, 0x10(r30) -/* 8016814C 001650AC 7D 4B 01 94 */ addze r10, r11 -/* 80168150 001650B0 3B FF 00 01 */ addi r31, r31, 1 -/* 80168154 001650B4 7C 85 30 50 */ subf r4, r5, r6 -/* 80168158 001650B8 55 49 10 3A */ slwi r9, r10, 2 -/* 8016815C 001650BC 54 84 28 3E */ rotlwi r4, r4, 5 -/* 80168160 001650C0 7D 0C 48 2E */ lwzx r8, r12, r9 -/* 80168164 001650C4 7C 04 2A 14 */ add r0, r4, r5 -/* 80168168 001650C8 7C E0 00 30 */ slw r0, r7, r0 -/* 8016816C 001650CC 7D 00 00 78 */ andc r0, r8, r0 -/* 80168170 001650D0 7C 0C 49 2E */ stwx r0, r12, r9 -/* 80168174 001650D4 42 00 FF C8 */ bdnz lbl_8016813C -lbl_80168178: -/* 80168178 001650D8 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8016817C 001650DC 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80168180 001650E0 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 80168184 001650E4 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 80168188 001650E8 83 81 00 10 */ lwz r28, 0x10(r1) -/* 8016818C 001650EC 7C 08 03 A6 */ mtlr r0 -/* 80168190 001650F0 38 21 00 20 */ addi r1, r1, 0x20 -/* 80168194 001650F4 4E 80 00 20 */ blr - -.global sub_80168198 -sub_80168198: -/* 80168198 001650F8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8016819C 001650FC 7C 08 02 A6 */ mflr r0 -/* 801681A0 00165100 90 01 00 24 */ stw r0, 0x24(r1) -/* 801681A4 00165104 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 801681A8 00165108 7C BF 2B 78 */ mr r31, r5 -/* 801681AC 0016510C 93 C1 00 18 */ stw r30, 0x18(r1) -/* 801681B0 00165110 7C 9E 23 78 */ mr r30, r4 -/* 801681B4 00165114 93 A1 00 14 */ stw r29, 0x14(r1) -/* 801681B8 00165118 7C 7D 1B 78 */ mr r29, r3 -/* 801681BC 0016511C 93 81 00 10 */ stw r28, 0x10(r1) -/* 801681C0 00165120 80 03 00 08 */ lwz r0, 8(r3) -/* 801681C4 00165124 80 63 00 00 */ lwz r3, 0(r3) -/* 801681C8 00165128 54 00 28 34 */ slwi r0, r0, 5 -/* 801681CC 0016512C 7F 83 00 50 */ subf r28, r3, r0 -/* 801681D0 00165130 48 00 00 58 */ b lbl_80168228 -lbl_801681D4: -/* 801681D4 00165134 80 1D 00 08 */ lwz r0, 8(r29) -/* 801681D8 00165138 80 BD 00 0C */ lwz r5, 0xc(r29) -/* 801681DC 0016513C 7C 00 28 00 */ cmpw r0, r5 -/* 801681E0 00165140 41 80 00 1C */ blt lbl_801681FC -/* 801681E4 00165144 2C 05 00 00 */ cmpwi r5, 0 -/* 801681E8 00165148 38 7D 00 04 */ addi r3, r29, 4 -/* 801681EC 0016514C 38 80 00 04 */ li r4, 4 -/* 801681F0 00165150 41 82 00 08 */ beq lbl_801681F8 -/* 801681F4 00165154 54 A4 08 3C */ slwi r4, r5, 1 -lbl_801681F8: -/* 801681F8 00165158 4B EF B9 2D */ bl "reserve__Q24rstl37vectorFi" -lbl_801681FC: -/* 801681FC 0016515C 80 1D 00 08 */ lwz r0, 8(r29) -/* 80168200 00165160 80 7D 00 10 */ lwz r3, 0x10(r29) -/* 80168204 00165164 54 00 10 3A */ slwi r0, r0, 2 -/* 80168208 00165168 7C 63 02 15 */ add. r3, r3, r0 -/* 8016820C 0016516C 41 82 00 0C */ beq lbl_80168218 -/* 80168210 00165170 80 0D 8D 8C */ lwz r0, lbl_805A794C@sda21(r13) -/* 80168214 00165174 90 03 00 00 */ stw r0, 0(r3) -lbl_80168218: -/* 80168218 00165178 80 7D 00 08 */ lwz r3, 8(r29) -/* 8016821C 0016517C 3B 9C 00 20 */ addi r28, r28, 0x20 -/* 80168220 00165180 38 03 00 01 */ addi r0, r3, 1 -/* 80168224 00165184 90 1D 00 08 */ stw r0, 8(r29) -lbl_80168228: -/* 80168228 00165188 7C 1C F8 00 */ cmpw r28, r31 -/* 8016822C 0016518C 41 80 FF A8 */ blt lbl_801681D4 -/* 80168230 00165190 80 7D 00 00 */ lwz r3, 0(r29) -/* 80168234 00165194 38 83 FF FF */ addi r4, r3, -1 -/* 80168238 00165198 38 04 00 01 */ addi r0, r4, 1 -/* 8016823C 0016519C 7C 1E 00 50 */ subf r0, r30, r0 -/* 80168240 001651A0 7C 09 03 A6 */ mtctr r0 -/* 80168244 001651A4 7C 04 F0 00 */ cmpw r4, r30 -/* 80168248 001651A8 41 80 00 B0 */ blt lbl_801682F8 -lbl_8016824C: -/* 8016824C 001651AC 7C 86 2E 70 */ srawi r6, r4, 5 -/* 80168250 001651B0 54 80 D8 08 */ slwi r0, r4, 0x1b -/* 80168254 001651B4 54 85 0F FE */ srwi r5, r4, 0x1f -/* 80168258 001651B8 80 7D 00 10 */ lwz r3, 0x10(r29) -/* 8016825C 001651BC 7C C6 01 94 */ addze r6, r6 -/* 80168260 001651C0 39 00 00 01 */ li r8, 1 -/* 80168264 001651C4 7C 05 00 50 */ subf r0, r5, r0 -/* 80168268 001651C8 54 C6 10 3A */ slwi r6, r6, 2 -/* 8016826C 001651CC 54 00 28 3E */ rotlwi r0, r0, 5 -/* 80168270 001651D0 7C C3 30 2E */ lwzx r6, r3, r6 -/* 80168274 001651D4 7C 00 2A 14 */ add r0, r0, r5 -/* 80168278 001651D8 7D 00 00 30 */ slw r0, r8, r0 -/* 8016827C 001651DC 7C C0 00 39 */ and. r0, r6, r0 -/* 80168280 001651E0 41 82 00 3C */ beq lbl_801682BC -/* 80168284 001651E4 7C A4 FA 14 */ add r5, r4, r31 -/* 80168288 001651E8 7C A0 2E 70 */ srawi r0, r5, 5 -/* 8016828C 001651EC 7C C0 01 94 */ addze r6, r0 -/* 80168290 001651F0 54 A0 D8 08 */ slwi r0, r5, 0x1b -/* 80168294 001651F4 54 A5 0F FE */ srwi r5, r5, 0x1f -/* 80168298 001651F8 7C 05 00 50 */ subf r0, r5, r0 -/* 8016829C 001651FC 54 C7 10 3A */ slwi r7, r6, 2 -/* 801682A0 00165200 54 00 28 3E */ rotlwi r0, r0, 5 -/* 801682A4 00165204 7C C3 38 2E */ lwzx r6, r3, r7 -/* 801682A8 00165208 7C 00 2A 14 */ add r0, r0, r5 -/* 801682AC 0016520C 7D 00 00 30 */ slw r0, r8, r0 -/* 801682B0 00165210 7C C0 03 78 */ or r0, r6, r0 -/* 801682B4 00165214 7C 03 39 2E */ stwx r0, r3, r7 -/* 801682B8 00165218 48 00 00 38 */ b lbl_801682F0 -lbl_801682BC: -/* 801682BC 0016521C 7C A4 FA 14 */ add r5, r4, r31 -/* 801682C0 00165220 7C A0 2E 70 */ srawi r0, r5, 5 -/* 801682C4 00165224 7C C0 01 94 */ addze r6, r0 -/* 801682C8 00165228 54 A0 D8 08 */ slwi r0, r5, 0x1b -/* 801682CC 0016522C 54 A5 0F FE */ srwi r5, r5, 0x1f -/* 801682D0 00165230 7C 05 00 50 */ subf r0, r5, r0 -/* 801682D4 00165234 54 C7 10 3A */ slwi r7, r6, 2 -/* 801682D8 00165238 54 00 28 3E */ rotlwi r0, r0, 5 -/* 801682DC 0016523C 7C C3 38 2E */ lwzx r6, r3, r7 -/* 801682E0 00165240 7C 00 2A 14 */ add r0, r0, r5 -/* 801682E4 00165244 7D 00 00 30 */ slw r0, r8, r0 -/* 801682E8 00165248 7C C0 00 78 */ andc r0, r6, r0 -/* 801682EC 0016524C 7C 03 39 2E */ stwx r0, r3, r7 -lbl_801682F0: -/* 801682F0 00165250 38 84 FF FF */ addi r4, r4, -1 -/* 801682F4 00165254 42 00 FF 58 */ bdnz lbl_8016824C -lbl_801682F8: -/* 801682F8 00165258 80 1D 00 00 */ lwz r0, 0(r29) -/* 801682FC 0016525C 7C 00 FA 14 */ add r0, r0, r31 -/* 80168300 00165260 90 1D 00 00 */ stw r0, 0(r29) -/* 80168304 00165264 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80168308 00165268 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8016830C 0016526C 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 80168310 00165270 83 81 00 10 */ lwz r28, 0x10(r1) -/* 80168314 00165274 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80168318 00165278 7C 08 03 A6 */ mtlr r0 -/* 8016831C 0016527C 38 21 00 20 */ addi r1, r1, 0x20 -/* 80168320 00165280 4E 80 00 20 */ blr - -.global IsMapped__13CMapWorldInfoCF7TAreaId -IsMapped__13CMapWorldInfoCF7TAreaId: -/* 80168324 00165284 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 80168328 00165288 7C 08 02 A6 */ mflr r0 -/* 8016832C 0016528C 90 01 00 54 */ stw r0, 0x54(r1) -/* 80168330 00165290 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 80168334 00165294 7C 9F 23 78 */ mr r31, r4 -/* 80168338 00165298 93 C1 00 48 */ stw r30, 0x48(r1) -/* 8016833C 0016529C 7C 7E 1B 78 */ mr r30, r3 -/* 80168340 001652A0 80 64 00 00 */ lwz r3, 0(r4) -/* 80168344 001652A4 80 1E 00 14 */ lwz r0, 0x14(r30) -/* 80168348 001652A8 38 63 00 01 */ addi r3, r3, 1 -/* 8016834C 001652AC 7C 03 00 00 */ cmpw r3, r0 -/* 80168350 001652B0 40 81 00 80 */ ble lbl_801683D0 -/* 80168354 001652B4 54 60 D8 08 */ slwi r0, r3, 0x1b -/* 80168358 001652B8 54 64 0F FE */ srwi r4, r3, 0x1f -/* 8016835C 001652BC 7C 04 00 50 */ subf r0, r4, r0 -/* 80168360 001652C0 7C 65 2E 70 */ srawi r5, r3, 5 -/* 80168364 001652C4 54 00 28 3E */ rotlwi r0, r0, 5 -/* 80168368 001652C8 38 7E 00 18 */ addi r3, r30, 0x18 -/* 8016836C 001652CC 7C 80 22 14 */ add r4, r0, r4 -/* 80168370 001652D0 7C A5 01 94 */ addze r5, r5 -/* 80168374 001652D4 7C 04 00 D0 */ neg r0, r4 -/* 80168378 001652D8 7C 00 23 78 */ or r0, r0, r4 -/* 8016837C 001652DC 54 00 0F FE */ srwi r0, r0, 0x1f -/* 80168380 001652E0 7C 85 02 14 */ add r4, r5, r0 -/* 80168384 001652E4 4B EF B7 A1 */ bl "reserve__Q24rstl37vectorFi" -/* 80168388 001652E8 80 1E 00 24 */ lwz r0, 0x24(r30) -/* 8016838C 001652EC 38 7E 00 14 */ addi r3, r30, 0x14 -/* 80168390 001652F0 80 FE 00 14 */ lwz r7, 0x14(r30) -/* 80168394 001652F4 38 81 00 30 */ addi r4, r1, 0x30 -/* 80168398 001652F8 80 BF 00 00 */ lwz r5, 0(r31) -/* 8016839C 001652FC 38 C0 00 00 */ li r6, 0 -/* 801683A0 00165300 90 01 00 18 */ stw r0, 0x18(r1) -/* 801683A4 00165304 7C A7 28 50 */ subf r5, r7, r5 -/* 801683A8 00165308 90 01 00 14 */ stw r0, 0x14(r1) -/* 801683AC 0016530C 38 A5 00 01 */ addi r5, r5, 1 -/* 801683B0 00165310 90 01 00 10 */ stw r0, 0x10(r1) -/* 801683B4 00165314 90 01 00 24 */ stw r0, 0x24(r1) -/* 801683B8 00165318 90 E1 00 28 */ stw r7, 0x28(r1) -/* 801683BC 0016531C 90 01 00 2C */ stw r0, 0x2c(r1) -/* 801683C0 00165320 90 01 00 30 */ stw r0, 0x30(r1) -/* 801683C4 00165324 90 E1 00 34 */ stw r7, 0x34(r1) -/* 801683C8 00165328 90 01 00 38 */ stw r0, 0x38(r1) -/* 801683CC 0016532C 4B FF FA D1 */ bl sub_80167e9c -lbl_801683D0: -/* 801683D0 00165330 80 9F 00 00 */ lwz r4, 0(r31) -/* 801683D4 00165334 38 A0 00 01 */ li r5, 1 -/* 801683D8 00165338 80 DE 00 24 */ lwz r6, 0x24(r30) -/* 801683DC 0016533C 7C 83 2E 70 */ srawi r3, r4, 5 -/* 801683E0 00165340 54 80 D8 08 */ slwi r0, r4, 0x1b -/* 801683E4 00165344 7C 63 01 94 */ addze r3, r3 -/* 801683E8 00165348 54 84 0F FE */ srwi r4, r4, 0x1f -/* 801683EC 0016534C 54 63 10 3A */ slwi r3, r3, 2 -/* 801683F0 00165350 7C C6 1A 14 */ add r6, r6, r3 -/* 801683F4 00165354 7C 04 00 50 */ subf r0, r4, r0 -/* 801683F8 00165358 54 03 28 3E */ rotlwi r3, r0, 5 -/* 801683FC 0016535C 80 06 00 00 */ lwz r0, 0(r6) -/* 80168400 00165360 7C 63 22 14 */ add r3, r3, r4 -/* 80168404 00165364 90 C1 00 0C */ stw r6, 0xc(r1) -/* 80168408 00165368 7C A4 18 30 */ slw r4, r5, r3 -/* 8016840C 0016536C 7C 83 00 38 */ and r3, r4, r0 -/* 80168410 00165370 90 C1 00 08 */ stw r6, 8(r1) -/* 80168414 00165374 7C 03 00 D0 */ neg r0, r3 -/* 80168418 00165378 7C 00 1B 78 */ or r0, r0, r3 -/* 8016841C 0016537C 90 C1 00 1C */ stw r6, 0x1c(r1) -/* 80168420 00165380 54 03 0F FE */ srwi r3, r0, 0x1f -/* 80168424 00165384 90 81 00 20 */ stw r4, 0x20(r1) -/* 80168428 00165388 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 8016842C 0016538C 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 80168430 00165390 80 01 00 54 */ lwz r0, 0x54(r1) -/* 80168434 00165394 7C 08 03 A6 */ mtlr r0 -/* 80168438 00165398 38 21 00 50 */ addi r1, r1, 0x50 -/* 8016843C 0016539C 4E 80 00 20 */ blr - -.global IsWorldVisible__13CMapWorldInfoCF7TAreaId -IsWorldVisible__13CMapWorldInfoCF7TAreaId: -/* 80168440 001653A0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80168444 001653A4 7C 08 02 A6 */ mflr r0 -/* 80168448 001653A8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8016844C 001653AC 88 03 00 38 */ lbz r0, 0x38(r3) -/* 80168450 001653B0 28 00 00 00 */ cmplwi r0, 0 -/* 80168454 001653B4 41 82 00 0C */ beq lbl_80168460 -/* 80168458 001653B8 38 60 00 01 */ li r3, 1 -/* 8016845C 001653BC 48 00 00 14 */ b lbl_80168470 -lbl_80168460: -/* 80168460 001653C0 80 04 00 00 */ lwz r0, 0(r4) -/* 80168464 001653C4 38 81 00 08 */ addi r4, r1, 8 -/* 80168468 001653C8 90 01 00 08 */ stw r0, 8(r1) -/* 8016846C 001653CC 4B FF FE B9 */ bl IsMapped__13CMapWorldInfoCF7TAreaId -lbl_80168470: -/* 80168470 001653D0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80168474 001653D4 7C 08 03 A6 */ mtlr r0 -/* 80168478 001653D8 38 21 00 10 */ addi r1, r1, 0x10 -/* 8016847C 001653DC 4E 80 00 20 */ blr - -.global SetIsMapped__13CMapWorldInfoCF7TAreaId -SetIsMapped__13CMapWorldInfoCF7TAreaId: -/* 80168480 001653E0 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 80168484 001653E4 7C 08 02 A6 */ mflr r0 -/* 80168488 001653E8 90 01 00 54 */ stw r0, 0x54(r1) -/* 8016848C 001653EC 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 80168490 001653F0 7C BF 2B 78 */ mr r31, r5 -/* 80168494 001653F4 93 C1 00 48 */ stw r30, 0x48(r1) -/* 80168498 001653F8 7C 9E 23 78 */ mr r30, r4 -/* 8016849C 001653FC 93 A1 00 44 */ stw r29, 0x44(r1) -/* 801684A0 00165400 7C 7D 1B 78 */ mr r29, r3 -/* 801684A4 00165404 80 64 00 00 */ lwz r3, 0(r4) -/* 801684A8 00165408 80 1D 00 14 */ lwz r0, 0x14(r29) -/* 801684AC 0016540C 38 63 00 01 */ addi r3, r3, 1 -/* 801684B0 00165410 7C 03 00 00 */ cmpw r3, r0 -/* 801684B4 00165414 40 81 00 80 */ ble lbl_80168534 -/* 801684B8 00165418 54 60 D8 08 */ slwi r0, r3, 0x1b -/* 801684BC 0016541C 54 64 0F FE */ srwi r4, r3, 0x1f -/* 801684C0 00165420 7C 04 00 50 */ subf r0, r4, r0 -/* 801684C4 00165424 7C 65 2E 70 */ srawi r5, r3, 5 -/* 801684C8 00165428 54 00 28 3E */ rotlwi r0, r0, 5 -/* 801684CC 0016542C 38 7D 00 18 */ addi r3, r29, 0x18 -/* 801684D0 00165430 7C 80 22 14 */ add r4, r0, r4 -/* 801684D4 00165434 7C A5 01 94 */ addze r5, r5 -/* 801684D8 00165438 7C 04 00 D0 */ neg r0, r4 -/* 801684DC 0016543C 7C 00 23 78 */ or r0, r0, r4 -/* 801684E0 00165440 54 00 0F FE */ srwi r0, r0, 0x1f -/* 801684E4 00165444 7C 85 02 14 */ add r4, r5, r0 -/* 801684E8 00165448 4B EF B6 3D */ bl "reserve__Q24rstl37vectorFi" -/* 801684EC 0016544C 80 1D 00 24 */ lwz r0, 0x24(r29) -/* 801684F0 00165450 38 7D 00 14 */ addi r3, r29, 0x14 -/* 801684F4 00165454 80 FD 00 14 */ lwz r7, 0x14(r29) -/* 801684F8 00165458 38 81 00 30 */ addi r4, r1, 0x30 -/* 801684FC 0016545C 80 BE 00 00 */ lwz r5, 0(r30) -/* 80168500 00165460 38 C0 00 00 */ li r6, 0 -/* 80168504 00165464 90 01 00 18 */ stw r0, 0x18(r1) -/* 80168508 00165468 7C A7 28 50 */ subf r5, r7, r5 -/* 8016850C 0016546C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80168510 00165470 38 A5 00 01 */ addi r5, r5, 1 -/* 80168514 00165474 90 01 00 10 */ stw r0, 0x10(r1) -/* 80168518 00165478 90 01 00 24 */ stw r0, 0x24(r1) -/* 8016851C 0016547C 90 E1 00 28 */ stw r7, 0x28(r1) -/* 80168520 00165480 90 01 00 2C */ stw r0, 0x2c(r1) -/* 80168524 00165484 90 01 00 30 */ stw r0, 0x30(r1) -/* 80168528 00165488 90 E1 00 34 */ stw r7, 0x34(r1) -/* 8016852C 0016548C 90 01 00 38 */ stw r0, 0x38(r1) -/* 80168530 00165490 4B FF F9 6D */ bl sub_80167e9c -lbl_80168534: -/* 80168534 00165494 80 DE 00 00 */ lwz r6, 0(r30) -/* 80168538 00165498 57 E0 06 3F */ clrlwi. r0, r31, 0x18 -/* 8016853C 0016549C 80 FD 00 24 */ lwz r7, 0x24(r29) -/* 80168540 001654A0 38 A0 00 01 */ li r5, 1 -/* 80168544 001654A4 54 C4 D8 08 */ slwi r4, r6, 0x1b -/* 80168548 001654A8 54 C3 0F FE */ srwi r3, r6, 0x1f -/* 8016854C 001654AC 7C 03 20 50 */ subf r0, r3, r4 -/* 80168550 001654B0 7C C6 2E 70 */ srawi r6, r6, 5 -/* 80168554 001654B4 7C 86 01 94 */ addze r4, r6 -/* 80168558 001654B8 54 00 28 3E */ rotlwi r0, r0, 5 -/* 8016855C 001654BC 54 84 10 3A */ slwi r4, r4, 2 -/* 80168560 001654C0 7C E7 22 14 */ add r7, r7, r4 -/* 80168564 001654C4 7C 00 1A 14 */ add r0, r0, r3 -/* 80168568 001654C8 7C A4 00 30 */ slw r4, r5, r0 -/* 8016856C 001654CC 90 E1 00 0C */ stw r7, 0xc(r1) -/* 80168570 001654D0 90 E1 00 08 */ stw r7, 8(r1) -/* 80168574 001654D4 90 E1 00 1C */ stw r7, 0x1c(r1) -/* 80168578 001654D8 90 81 00 20 */ stw r4, 0x20(r1) -/* 8016857C 001654DC 41 82 00 14 */ beq lbl_80168590 -/* 80168580 001654E0 80 07 00 00 */ lwz r0, 0(r7) -/* 80168584 001654E4 7C 00 23 78 */ or r0, r0, r4 -/* 80168588 001654E8 90 07 00 00 */ stw r0, 0(r7) -/* 8016858C 001654EC 48 00 00 10 */ b lbl_8016859C -lbl_80168590: -/* 80168590 001654F0 80 67 00 00 */ lwz r3, 0(r7) -/* 80168594 001654F4 7C 60 20 78 */ andc r0, r3, r4 -/* 80168598 001654F8 90 07 00 00 */ stw r0, 0(r7) -lbl_8016859C: -/* 8016859C 001654FC 80 01 00 54 */ lwz r0, 0x54(r1) -/* 801685A0 00165500 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 801685A4 00165504 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 801685A8 00165508 83 A1 00 44 */ lwz r29, 0x44(r1) -/* 801685AC 0016550C 7C 08 03 A6 */ mtlr r0 -/* 801685B0 00165510 38 21 00 50 */ addi r1, r1, 0x50 -/* 801685B4 00165514 4E 80 00 20 */ blr - -.global SetAreaVisited__13CMapWorldInfoF7TAreaIdb -SetAreaVisited__13CMapWorldInfoF7TAreaIdb: -/* 801685B8 00165518 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 801685BC 0016551C 7C 08 02 A6 */ mflr r0 -/* 801685C0 00165520 90 01 00 54 */ stw r0, 0x54(r1) -/* 801685C4 00165524 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 801685C8 00165528 7C BF 2B 78 */ mr r31, r5 -/* 801685CC 0016552C 93 C1 00 48 */ stw r30, 0x48(r1) -/* 801685D0 00165530 7C 9E 23 78 */ mr r30, r4 -/* 801685D4 00165534 93 A1 00 44 */ stw r29, 0x44(r1) -/* 801685D8 00165538 7C 7D 1B 78 */ mr r29, r3 -/* 801685DC 0016553C 80 64 00 00 */ lwz r3, 0(r4) -/* 801685E0 00165540 80 1D 00 00 */ lwz r0, 0(r29) -/* 801685E4 00165544 38 63 00 01 */ addi r3, r3, 1 -/* 801685E8 00165548 7C 03 00 00 */ cmpw r3, r0 -/* 801685EC 0016554C 40 81 00 80 */ ble lbl_8016866C -/* 801685F0 00165550 54 60 D8 08 */ slwi r0, r3, 0x1b -/* 801685F4 00165554 54 64 0F FE */ srwi r4, r3, 0x1f -/* 801685F8 00165558 7C 04 00 50 */ subf r0, r4, r0 -/* 801685FC 0016555C 7C 65 2E 70 */ srawi r5, r3, 5 -/* 80168600 00165560 54 00 28 3E */ rotlwi r0, r0, 5 -/* 80168604 00165564 38 7D 00 04 */ addi r3, r29, 4 -/* 80168608 00165568 7C 80 22 14 */ add r4, r0, r4 -/* 8016860C 0016556C 7C A5 01 94 */ addze r5, r5 -/* 80168610 00165570 7C 04 00 D0 */ neg r0, r4 -/* 80168614 00165574 7C 00 23 78 */ or r0, r0, r4 -/* 80168618 00165578 54 00 0F FE */ srwi r0, r0, 0x1f -/* 8016861C 0016557C 7C 85 02 14 */ add r4, r5, r0 -/* 80168620 00165580 4B EF B5 05 */ bl "reserve__Q24rstl37vectorFi" -/* 80168624 00165584 80 1D 00 10 */ lwz r0, 0x10(r29) -/* 80168628 00165588 7F A3 EB 78 */ mr r3, r29 -/* 8016862C 0016558C 80 FD 00 00 */ lwz r7, 0(r29) -/* 80168630 00165590 38 81 00 30 */ addi r4, r1, 0x30 -/* 80168634 00165594 80 BE 00 00 */ lwz r5, 0(r30) -/* 80168638 00165598 38 C0 00 00 */ li r6, 0 -/* 8016863C 0016559C 90 01 00 18 */ stw r0, 0x18(r1) -/* 80168640 001655A0 7C A7 28 50 */ subf r5, r7, r5 -/* 80168644 001655A4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80168648 001655A8 38 A5 00 01 */ addi r5, r5, 1 -/* 8016864C 001655AC 90 01 00 10 */ stw r0, 0x10(r1) -/* 80168650 001655B0 90 01 00 24 */ stw r0, 0x24(r1) -/* 80168654 001655B4 90 E1 00 28 */ stw r7, 0x28(r1) -/* 80168658 001655B8 90 01 00 2C */ stw r0, 0x2c(r1) -/* 8016865C 001655BC 90 01 00 30 */ stw r0, 0x30(r1) -/* 80168660 001655C0 90 E1 00 34 */ stw r7, 0x34(r1) -/* 80168664 001655C4 90 01 00 38 */ stw r0, 0x38(r1) -/* 80168668 001655C8 4B FF F8 35 */ bl sub_80167e9c -lbl_8016866C: -/* 8016866C 001655CC 80 DE 00 00 */ lwz r6, 0(r30) -/* 80168670 001655D0 57 E0 06 3F */ clrlwi. r0, r31, 0x18 -/* 80168674 001655D4 80 FD 00 10 */ lwz r7, 0x10(r29) -/* 80168678 001655D8 38 A0 00 01 */ li r5, 1 -/* 8016867C 001655DC 54 C4 D8 08 */ slwi r4, r6, 0x1b -/* 80168680 001655E0 54 C3 0F FE */ srwi r3, r6, 0x1f -/* 80168684 001655E4 7C 03 20 50 */ subf r0, r3, r4 -/* 80168688 001655E8 7C C6 2E 70 */ srawi r6, r6, 5 -/* 8016868C 001655EC 7C 86 01 94 */ addze r4, r6 -/* 80168690 001655F0 54 00 28 3E */ rotlwi r0, r0, 5 -/* 80168694 001655F4 54 84 10 3A */ slwi r4, r4, 2 -/* 80168698 001655F8 7C E7 22 14 */ add r7, r7, r4 -/* 8016869C 001655FC 7C 00 1A 14 */ add r0, r0, r3 -/* 801686A0 00165600 7C A4 00 30 */ slw r4, r5, r0 -/* 801686A4 00165604 90 E1 00 0C */ stw r7, 0xc(r1) -/* 801686A8 00165608 90 E1 00 08 */ stw r7, 8(r1) -/* 801686AC 0016560C 90 E1 00 1C */ stw r7, 0x1c(r1) -/* 801686B0 00165610 90 81 00 20 */ stw r4, 0x20(r1) -/* 801686B4 00165614 41 82 00 14 */ beq lbl_801686C8 -/* 801686B8 00165618 80 07 00 00 */ lwz r0, 0(r7) -/* 801686BC 0016561C 7C 00 23 78 */ or r0, r0, r4 -/* 801686C0 00165620 90 07 00 00 */ stw r0, 0(r7) -/* 801686C4 00165624 48 00 00 10 */ b lbl_801686D4 -lbl_801686C8: -/* 801686C8 00165628 80 67 00 00 */ lwz r3, 0(r7) -/* 801686CC 0016562C 7C 60 20 78 */ andc r0, r3, r4 -/* 801686D0 00165630 90 07 00 00 */ stw r0, 0(r7) -lbl_801686D4: -/* 801686D4 00165634 80 01 00 54 */ lwz r0, 0x54(r1) -/* 801686D8 00165638 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 801686DC 0016563C 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 801686E0 00165640 83 A1 00 44 */ lwz r29, 0x44(r1) -/* 801686E4 00165644 7C 08 03 A6 */ mtlr r0 -/* 801686E8 00165648 38 21 00 50 */ addi r1, r1, 0x50 -/* 801686EC 0016564C 4E 80 00 20 */ blr - -.global IsDoorVisited__13CMapWorldInfoCF9TEditorId -IsDoorVisited__13CMapWorldInfoCF9TEditorId: -/* 801686F0 00165650 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 801686F4 00165654 7C 08 02 A6 */ mflr r0 -/* 801686F8 00165658 90 01 00 34 */ stw r0, 0x34(r1) -/* 801686FC 0016565C 38 E1 00 10 */ addi r7, r1, 0x10 -/* 80168700 00165660 88 A1 00 08 */ lbz r5, 8(r1) -/* 80168704 00165664 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 80168708 00165668 7C 9F 23 78 */ mr r31, r4 -/* 8016870C 0016566C 7F E6 FB 78 */ mr r6, r31 -/* 80168710 00165670 38 81 00 20 */ addi r4, r1, 0x20 -/* 80168714 00165674 93 C1 00 28 */ stw r30, 0x28(r1) -/* 80168718 00165678 7C 7E 1B 78 */ mr r30, r3 -/* 8016871C 0016567C 80 03 00 2C */ lwz r0, 0x2c(r3) -/* 80168720 00165680 81 03 00 34 */ lwz r8, 0x34(r3) -/* 80168724 00165684 38 61 00 24 */ addi r3, r1, 0x24 -/* 80168728 00165688 54 00 18 38 */ slwi r0, r0, 3 -/* 8016872C 0016568C 98 A1 00 0C */ stb r5, 0xc(r1) -/* 80168730 00165690 7C 08 02 14 */ add r0, r8, r0 -/* 80168734 00165694 98 A1 00 10 */ stb r5, 0x10(r1) -/* 80168738 00165698 38 A1 00 18 */ addi r5, r1, 0x18 -/* 8016873C 0016569C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80168740 001656A0 90 01 00 18 */ stw r0, 0x18(r1) -/* 80168744 001656A4 91 01 00 1C */ stw r8, 0x1c(r1) -/* 80168748 001656A8 91 01 00 20 */ stw r8, 0x20(r1) -/* 8016874C 001656AC 48 00 0E 49 */ bl "lower_bound,Q24rstl62vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>,9TEditorId,Q24rstl73pair_sorter_finder,Q24rstl16less<9TEditorId>>>__4rstlFQ24rstl144pointer_iterator,Q24rstl62vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl144pointer_iterator,Q24rstl62vector,Q24rstl17rmemory_allocator>Fi" -/* 801687E4 00165744 89 21 00 08 */ lbz r9, 8(r1) -/* 801687E8 00165748 7F C6 F3 78 */ mr r6, r30 -/* 801687EC 0016574C 38 61 00 2C */ addi r3, r1, 0x2c -/* 801687F0 00165750 38 81 00 28 */ addi r4, r1, 0x28 -/* 801687F4 00165754 99 21 00 10 */ stb r9, 0x10(r1) -/* 801687F8 00165758 38 A1 00 20 */ addi r5, r1, 0x20 -/* 801687FC 0016575C 38 E1 00 10 */ addi r7, r1, 0x10 -/* 80168800 00165760 80 1D 00 2C */ lwz r0, 0x2c(r29) -/* 80168804 00165764 81 1D 00 34 */ lwz r8, 0x34(r29) -/* 80168808 00165768 54 00 18 38 */ slwi r0, r0, 3 -/* 8016880C 0016576C 99 21 00 0C */ stb r9, 0xc(r1) -/* 80168810 00165770 7D 08 02 14 */ add r8, r8, r0 -/* 80168814 00165774 91 01 00 20 */ stw r8, 0x20(r1) -/* 80168818 00165778 80 1D 00 34 */ lwz r0, 0x34(r29) -/* 8016881C 0016577C 91 01 00 1C */ stw r8, 0x1c(r1) -/* 80168820 00165780 90 01 00 24 */ stw r0, 0x24(r1) -/* 80168824 00165784 90 01 00 28 */ stw r0, 0x28(r1) -/* 80168828 00165788 48 00 0D 6D */ bl "lower_bound,Q24rstl62vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>,9TEditorId,Q24rstl73pair_sorter_finder,Q24rstl16less<9TEditorId>>>__4rstlFQ24rstl144pointer_iterator,Q24rstl62vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl144pointer_iterator,Q24rstl62vectorFi" -/* 80168EE4 00165E44 80 FD 00 10 */ lwz r7, 0x10(r29) -/* 80168EE8 00165E48 38 00 00 00 */ li r0, 0 -/* 80168EEC 00165E4C 90 01 00 18 */ stw r0, 0x18(r1) -/* 80168EF0 00165E50 7F A3 EB 78 */ mr r3, r29 -/* 80168EF4 00165E54 7F C5 F3 78 */ mr r5, r30 -/* 80168EF8 00165E58 7F E6 FB 78 */ mr r6, r31 -/* 80168EFC 00165E5C 90 E1 00 10 */ stw r7, 0x10(r1) -/* 80168F00 00165E60 38 81 00 20 */ addi r4, r1, 0x20 -/* 80168F04 00165E64 90 E1 00 0C */ stw r7, 0xc(r1) -/* 80168F08 00165E68 90 E1 00 08 */ stw r7, 8(r1) -/* 80168F0C 00165E6C 90 E1 00 14 */ stw r7, 0x14(r1) -/* 80168F10 00165E70 90 E1 00 1C */ stw r7, 0x1c(r1) -/* 80168F14 00165E74 90 E1 00 20 */ stw r7, 0x20(r1) -/* 80168F18 00165E78 90 01 00 24 */ stw r0, 0x24(r1) -/* 80168F1C 00165E7C 90 E1 00 28 */ stw r7, 0x28(r1) -/* 80168F20 00165E80 4B FF EF 7D */ bl sub_80167e9c -/* 80168F24 00165E84 80 01 00 44 */ lwz r0, 0x44(r1) -/* 80168F28 00165E88 7F A3 EB 78 */ mr r3, r29 -/* 80168F2C 00165E8C 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 80168F30 00165E90 83 C1 00 38 */ lwz r30, 0x38(r1) -/* 80168F34 00165E94 83 A1 00 34 */ lwz r29, 0x34(r1) -/* 80168F38 00165E98 7C 08 03 A6 */ mtlr r0 -/* 80168F3C 00165E9C 38 21 00 40 */ addi r1, r1, 0x40 -/* 80168F40 00165EA0 4E 80 00 20 */ blr - -.global __ct__13CMapWorldInfoFR16CBitStreamReaderRC10CSaveWorldUi -__ct__13CMapWorldInfoFR16CBitStreamReaderRC10CSaveWorldUi: -/* 80168F44 00165EA4 94 21 FF 80 */ stwu r1, -0x80(r1) -/* 80168F48 00165EA8 7C 08 02 A6 */ mflr r0 -/* 80168F4C 00165EAC 90 01 00 84 */ stw r0, 0x84(r1) -/* 80168F50 00165EB0 38 00 00 00 */ li r0, 0 -/* 80168F54 00165EB4 BF 01 00 60 */ stmw r24, 0x60(r1) -/* 80168F58 00165EB8 7C 99 23 78 */ mr r25, r4 -/* 80168F5C 00165EBC 7C 78 1B 78 */ mr r24, r3 -/* 80168F60 00165EC0 7C BA 2B 78 */ mr r26, r5 -/* 80168F64 00165EC4 7C C4 33 78 */ mr r4, r6 -/* 80168F68 00165EC8 90 03 00 00 */ stw r0, 0(r3) -/* 80168F6C 00165ECC 90 03 00 08 */ stw r0, 8(r3) -/* 80168F70 00165ED0 90 03 00 0C */ stw r0, 0xc(r3) -/* 80168F74 00165ED4 90 03 00 10 */ stw r0, 0x10(r3) -/* 80168F78 00165ED8 90 03 00 14 */ stw r0, 0x14(r3) -/* 80168F7C 00165EDC 90 03 00 1C */ stw r0, 0x1c(r3) -/* 80168F80 00165EE0 90 03 00 20 */ stw r0, 0x20(r3) -/* 80168F84 00165EE4 90 03 00 24 */ stw r0, 0x24(r3) -/* 80168F88 00165EE8 90 03 00 2C */ stw r0, 0x2c(r3) -/* 80168F8C 00165EEC 90 03 00 30 */ stw r0, 0x30(r3) -/* 80168F90 00165EF0 90 03 00 34 */ stw r0, 0x34(r3) -/* 80168F94 00165EF4 98 03 00 38 */ stb r0, 0x38(r3) -/* 80168F98 00165EF8 80 6D A0 84 */ lwz r3, gpMemoryCard@sda21(r13) -/* 80168F9C 00165EFC 48 0D FF 71 */ bl GetSaveWorldMemory__14CMemoryCardSysCFi -/* 80168FA0 00165F00 83 83 00 08 */ lwz r28, 8(r3) -/* 80168FA4 00165F04 38 78 00 04 */ addi r3, r24, 4 -/* 80168FA8 00165F08 57 80 D8 08 */ slwi r0, r28, 0x1b -/* 80168FAC 00165F0C 57 85 0F FE */ srwi r5, r28, 0x1f -/* 80168FB0 00165F10 7C 85 00 50 */ subf r4, r5, r0 -/* 80168FB4 00165F14 7F 80 2E 70 */ srawi r0, r28, 5 -/* 80168FB8 00165F18 54 84 28 3E */ rotlwi r4, r4, 5 -/* 80168FBC 00165F1C 7F C4 2A 14 */ add r30, r4, r5 -/* 80168FC0 00165F20 7F A0 01 94 */ addze r29, r0 -/* 80168FC4 00165F24 7C 1E 00 D0 */ neg r0, r30 -/* 80168FC8 00165F28 7C 00 F3 78 */ or r0, r0, r30 -/* 80168FCC 00165F2C 54 00 0F FE */ srwi r0, r0, 0x1f -/* 80168FD0 00165F30 7C 9D 02 14 */ add r4, r29, r0 -/* 80168FD4 00165F34 4B EF AB 51 */ bl "reserve__Q24rstl37vectorFi" -/* 80168FD8 00165F38 3B 60 00 00 */ li r27, 0 -/* 80168FDC 00165F3C 48 00 01 14 */ b lbl_801690F0 -lbl_80168FE0: -/* 80168FE0 00165F40 7F 23 CB 78 */ mr r3, r25 -/* 80168FE4 00165F44 38 80 00 01 */ li r4, 1 -/* 80168FE8 00165F48 48 1D 5D 51 */ bl ReadBits__12CInputStreamFi -/* 80168FEC 00165F4C 80 98 00 00 */ lwz r4, 0(r24) -/* 80168FF0 00165F50 7C 03 00 D0 */ neg r0, r3 -/* 80168FF4 00165F54 7C 05 1B 78 */ or r5, r0, r3 -/* 80168FF8 00165F58 54 80 D8 08 */ slwi r0, r4, 0x1b -/* 80168FFC 00165F5C 54 83 0F FE */ srwi r3, r4, 0x1f -/* 80169000 00165F60 7C 03 00 50 */ subf r0, r3, r0 -/* 80169004 00165F64 54 BF 0F FE */ srwi r31, r5, 0x1f -/* 80169008 00165F68 54 00 28 3E */ rotlwi r0, r0, 5 -/* 8016900C 00165F6C 7C 00 1A 15 */ add. r0, r0, r3 -/* 80169010 00165F70 40 82 00 54 */ bne lbl_80169064 -/* 80169014 00165F74 80 18 00 08 */ lwz r0, 8(r24) -/* 80169018 00165F78 80 B8 00 0C */ lwz r5, 0xc(r24) -/* 8016901C 00165F7C 7C 00 28 00 */ cmpw r0, r5 -/* 80169020 00165F80 41 80 00 1C */ blt lbl_8016903C -/* 80169024 00165F84 2C 05 00 00 */ cmpwi r5, 0 -/* 80169028 00165F88 38 78 00 04 */ addi r3, r24, 4 -/* 8016902C 00165F8C 38 80 00 04 */ li r4, 4 -/* 80169030 00165F90 41 82 00 08 */ beq lbl_80169038 -/* 80169034 00165F94 54 A4 08 3C */ slwi r4, r5, 1 -lbl_80169038: -/* 80169038 00165F98 4B EF AA ED */ bl "reserve__Q24rstl37vectorFi" -lbl_8016903C: -/* 8016903C 00165F9C 80 18 00 08 */ lwz r0, 8(r24) -/* 80169040 00165FA0 80 78 00 10 */ lwz r3, 0x10(r24) -/* 80169044 00165FA4 54 00 10 3A */ slwi r0, r0, 2 -/* 80169048 00165FA8 7C 63 02 15 */ add. r3, r3, r0 -/* 8016904C 00165FAC 41 82 00 0C */ beq lbl_80169058 -/* 80169050 00165FB0 80 0D 8D 88 */ lwz r0, lbl_805A7948@sda21(r13) -/* 80169054 00165FB4 90 03 00 00 */ stw r0, 0(r3) -lbl_80169058: -/* 80169058 00165FB8 80 78 00 08 */ lwz r3, 8(r24) -/* 8016905C 00165FBC 38 03 00 01 */ addi r0, r3, 1 -/* 80169060 00165FC0 90 18 00 08 */ stw r0, 8(r24) -lbl_80169064: -/* 80169064 00165FC4 80 78 00 00 */ lwz r3, 0(r24) -/* 80169068 00165FC8 28 1F 00 00 */ cmplwi r31, 0 -/* 8016906C 00165FCC 38 03 00 01 */ addi r0, r3, 1 -/* 80169070 00165FD0 90 18 00 00 */ stw r0, 0(r24) -/* 80169074 00165FD4 41 82 00 40 */ beq lbl_801690B4 -/* 80169078 00165FD8 7C 64 2E 70 */ srawi r4, r3, 5 -/* 8016907C 00165FDC 54 60 D8 08 */ slwi r0, r3, 0x1b -/* 80169080 00165FE0 54 63 0F FE */ srwi r3, r3, 0x1f -/* 80169084 00165FE4 80 F8 00 10 */ lwz r7, 0x10(r24) -/* 80169088 00165FE8 7C A4 01 94 */ addze r5, r4 -/* 8016908C 00165FEC 38 80 00 01 */ li r4, 1 -/* 80169090 00165FF0 7C 03 00 50 */ subf r0, r3, r0 -/* 80169094 00165FF4 54 A6 10 3A */ slwi r6, r5, 2 -/* 80169098 00165FF8 54 00 28 3E */ rotlwi r0, r0, 5 -/* 8016909C 00165FFC 7C A7 30 2E */ lwzx r5, r7, r6 -/* 801690A0 00166000 7C 00 1A 14 */ add r0, r0, r3 -/* 801690A4 00166004 7C 80 00 30 */ slw r0, r4, r0 -/* 801690A8 00166008 7C A0 03 78 */ or r0, r5, r0 -/* 801690AC 0016600C 7C 07 31 2E */ stwx r0, r7, r6 -/* 801690B0 00166010 48 00 00 3C */ b lbl_801690EC -lbl_801690B4: -/* 801690B4 00166014 7C 64 2E 70 */ srawi r4, r3, 5 -/* 801690B8 00166018 54 60 D8 08 */ slwi r0, r3, 0x1b -/* 801690BC 0016601C 54 63 0F FE */ srwi r3, r3, 0x1f -/* 801690C0 00166020 80 F8 00 10 */ lwz r7, 0x10(r24) -/* 801690C4 00166024 7C A4 01 94 */ addze r5, r4 -/* 801690C8 00166028 38 80 00 01 */ li r4, 1 -/* 801690CC 0016602C 7C 03 00 50 */ subf r0, r3, r0 -/* 801690D0 00166030 54 A6 10 3A */ slwi r6, r5, 2 -/* 801690D4 00166034 54 00 28 3E */ rotlwi r0, r0, 5 -/* 801690D8 00166038 7C A7 30 2E */ lwzx r5, r7, r6 -/* 801690DC 0016603C 7C 00 1A 14 */ add r0, r0, r3 -/* 801690E0 00166040 7C 80 00 30 */ slw r0, r4, r0 -/* 801690E4 00166044 7C A0 00 78 */ andc r0, r5, r0 -/* 801690E8 00166048 7C 07 31 2E */ stwx r0, r7, r6 -lbl_801690EC: -/* 801690EC 0016604C 3B 7B 00 01 */ addi r27, r27, 1 -lbl_801690F0: -/* 801690F0 00166050 7C 1B E0 00 */ cmpw r27, r28 -/* 801690F4 00166054 41 80 FE EC */ blt lbl_80168FE0 -/* 801690F8 00166058 7C 1E 00 D0 */ neg r0, r30 -/* 801690FC 0016605C 38 78 00 18 */ addi r3, r24, 0x18 -/* 80169100 00166060 7C 00 F3 78 */ or r0, r0, r30 -/* 80169104 00166064 54 00 0F FE */ srwi r0, r0, 0x1f -/* 80169108 00166068 7C 9D 02 14 */ add r4, r29, r0 -/* 8016910C 0016606C 4B EF AA 19 */ bl "reserve__Q24rstl37vectorFi" -/* 80169110 00166070 3B 60 00 00 */ li r27, 0 -/* 80169114 00166074 48 00 01 14 */ b lbl_80169228 -lbl_80169118: -/* 80169118 00166078 7F 23 CB 78 */ mr r3, r25 -/* 8016911C 0016607C 38 80 00 01 */ li r4, 1 -/* 80169120 00166080 48 1D 5C 19 */ bl ReadBits__12CInputStreamFi -/* 80169124 00166084 80 98 00 14 */ lwz r4, 0x14(r24) -/* 80169128 00166088 7C 03 00 D0 */ neg r0, r3 -/* 8016912C 0016608C 7C 05 1B 78 */ or r5, r0, r3 -/* 80169130 00166090 54 80 D8 08 */ slwi r0, r4, 0x1b -/* 80169134 00166094 54 83 0F FE */ srwi r3, r4, 0x1f -/* 80169138 00166098 7C 03 00 50 */ subf r0, r3, r0 -/* 8016913C 0016609C 54 BF 0F FE */ srwi r31, r5, 0x1f -/* 80169140 001660A0 54 00 28 3E */ rotlwi r0, r0, 5 -/* 80169144 001660A4 7C 00 1A 15 */ add. r0, r0, r3 -/* 80169148 001660A8 40 82 00 54 */ bne lbl_8016919C -/* 8016914C 001660AC 80 18 00 1C */ lwz r0, 0x1c(r24) -/* 80169150 001660B0 80 B8 00 20 */ lwz r5, 0x20(r24) -/* 80169154 001660B4 7C 00 28 00 */ cmpw r0, r5 -/* 80169158 001660B8 41 80 00 1C */ blt lbl_80169174 -/* 8016915C 001660BC 2C 05 00 00 */ cmpwi r5, 0 -/* 80169160 001660C0 38 78 00 18 */ addi r3, r24, 0x18 -/* 80169164 001660C4 38 80 00 04 */ li r4, 4 -/* 80169168 001660C8 41 82 00 08 */ beq lbl_80169170 -/* 8016916C 001660CC 54 A4 08 3C */ slwi r4, r5, 1 -lbl_80169170: -/* 80169170 001660D0 4B EF A9 B5 */ bl "reserve__Q24rstl37vectorFi" -lbl_80169174: -/* 80169174 001660D4 80 18 00 1C */ lwz r0, 0x1c(r24) -/* 80169178 001660D8 80 78 00 24 */ lwz r3, 0x24(r24) -/* 8016917C 001660DC 54 00 10 3A */ slwi r0, r0, 2 -/* 80169180 001660E0 7C 63 02 15 */ add. r3, r3, r0 -/* 80169184 001660E4 41 82 00 0C */ beq lbl_80169190 -/* 80169188 001660E8 80 0D 8D 88 */ lwz r0, lbl_805A7948@sda21(r13) -/* 8016918C 001660EC 90 03 00 00 */ stw r0, 0(r3) -lbl_80169190: -/* 80169190 001660F0 80 78 00 1C */ lwz r3, 0x1c(r24) -/* 80169194 001660F4 38 03 00 01 */ addi r0, r3, 1 -/* 80169198 001660F8 90 18 00 1C */ stw r0, 0x1c(r24) -lbl_8016919C: -/* 8016919C 001660FC 80 78 00 14 */ lwz r3, 0x14(r24) -/* 801691A0 00166100 28 1F 00 00 */ cmplwi r31, 0 -/* 801691A4 00166104 38 03 00 01 */ addi r0, r3, 1 -/* 801691A8 00166108 90 18 00 14 */ stw r0, 0x14(r24) -/* 801691AC 0016610C 41 82 00 40 */ beq lbl_801691EC -/* 801691B0 00166110 7C 64 2E 70 */ srawi r4, r3, 5 -/* 801691B4 00166114 54 60 D8 08 */ slwi r0, r3, 0x1b -/* 801691B8 00166118 54 63 0F FE */ srwi r3, r3, 0x1f -/* 801691BC 0016611C 80 F8 00 24 */ lwz r7, 0x24(r24) -/* 801691C0 00166120 7C A4 01 94 */ addze r5, r4 -/* 801691C4 00166124 38 80 00 01 */ li r4, 1 -/* 801691C8 00166128 7C 03 00 50 */ subf r0, r3, r0 -/* 801691CC 0016612C 54 A6 10 3A */ slwi r6, r5, 2 -/* 801691D0 00166130 54 00 28 3E */ rotlwi r0, r0, 5 -/* 801691D4 00166134 7C A7 30 2E */ lwzx r5, r7, r6 -/* 801691D8 00166138 7C 00 1A 14 */ add r0, r0, r3 -/* 801691DC 0016613C 7C 80 00 30 */ slw r0, r4, r0 -/* 801691E0 00166140 7C A0 03 78 */ or r0, r5, r0 -/* 801691E4 00166144 7C 07 31 2E */ stwx r0, r7, r6 -/* 801691E8 00166148 48 00 00 3C */ b lbl_80169224 -lbl_801691EC: -/* 801691EC 0016614C 7C 64 2E 70 */ srawi r4, r3, 5 -/* 801691F0 00166150 54 60 D8 08 */ slwi r0, r3, 0x1b -/* 801691F4 00166154 54 63 0F FE */ srwi r3, r3, 0x1f -/* 801691F8 00166158 80 F8 00 24 */ lwz r7, 0x24(r24) -/* 801691FC 0016615C 7C A4 01 94 */ addze r5, r4 -/* 80169200 00166160 38 80 00 01 */ li r4, 1 -/* 80169204 00166164 7C 03 00 50 */ subf r0, r3, r0 -/* 80169208 00166168 54 A6 10 3A */ slwi r6, r5, 2 -/* 8016920C 0016616C 54 00 28 3E */ rotlwi r0, r0, 5 -/* 80169210 00166170 7C A7 30 2E */ lwzx r5, r7, r6 -/* 80169214 00166174 7C 00 1A 14 */ add r0, r0, r3 -/* 80169218 00166178 7C 80 00 30 */ slw r0, r4, r0 -/* 8016921C 0016617C 7C A0 00 78 */ andc r0, r5, r0 -/* 80169220 00166180 7C 07 31 2E */ stwx r0, r7, r6 -lbl_80169224: -/* 80169224 00166184 3B 7B 00 01 */ addi r27, r27, 1 -lbl_80169228: -/* 80169228 00166188 7C 1B E0 00 */ cmpw r27, r28 -/* 8016922C 0016618C 41 80 FE EC */ blt lbl_80169118 -/* 80169230 00166190 80 9A 00 38 */ lwz r4, 0x38(r26) -/* 80169234 00166194 38 61 00 44 */ addi r3, r1, 0x44 -/* 80169238 00166198 38 A0 00 00 */ li r5, 0 -/* 8016923C 0016619C 4B FF FC 3D */ bl sub_80168e78 -/* 80169240 001661A0 3B 60 00 00 */ li r27, 0 -/* 80169244 001661A4 48 00 00 80 */ b lbl_801692C4 -lbl_80169248: -/* 80169248 001661A8 7F 23 CB 78 */ mr r3, r25 -/* 8016924C 001661AC 38 80 00 01 */ li r4, 1 -/* 80169250 001661B0 48 1D 5A E9 */ bl ReadBits__12CInputStreamFi -/* 80169254 001661B4 57 60 D8 08 */ slwi r0, r27, 0x1b -/* 80169258 001661B8 57 64 0F FE */ srwi r4, r27, 0x1f -/* 8016925C 001661BC 7F 65 2E 70 */ srawi r5, r27, 5 -/* 80169260 001661C0 7C C3 00 D0 */ neg r6, r3 -/* 80169264 001661C4 7C 04 00 50 */ subf r0, r4, r0 -/* 80169268 001661C8 80 E1 00 54 */ lwz r7, 0x54(r1) -/* 8016926C 001661CC 7C C6 1B 78 */ or r6, r6, r3 -/* 80169270 001661D0 7C A5 01 94 */ addze r5, r5 -/* 80169274 001661D4 54 00 28 3E */ rotlwi r0, r0, 5 -/* 80169278 001661D8 38 60 00 01 */ li r3, 1 -/* 8016927C 001661DC 54 A5 10 3A */ slwi r5, r5, 2 -/* 80169280 001661E0 54 C6 0F FF */ rlwinm. r6, r6, 1, 0x1f, 0x1f -/* 80169284 001661E4 7C E7 2A 14 */ add r7, r7, r5 -/* 80169288 001661E8 7C 00 22 14 */ add r0, r0, r4 -/* 8016928C 001661EC 7C 64 00 30 */ slw r4, r3, r0 -/* 80169290 001661F0 90 E1 00 18 */ stw r7, 0x18(r1) -/* 80169294 001661F4 90 E1 00 14 */ stw r7, 0x14(r1) -/* 80169298 001661F8 90 E1 00 3C */ stw r7, 0x3c(r1) -/* 8016929C 001661FC 90 81 00 40 */ stw r4, 0x40(r1) -/* 801692A0 00166200 41 82 00 14 */ beq lbl_801692B4 -/* 801692A4 00166204 80 07 00 00 */ lwz r0, 0(r7) -/* 801692A8 00166208 7C 00 23 78 */ or r0, r0, r4 -/* 801692AC 0016620C 90 07 00 00 */ stw r0, 0(r7) -/* 801692B0 00166210 48 00 00 10 */ b lbl_801692C0 -lbl_801692B4: -/* 801692B4 00166214 80 67 00 00 */ lwz r3, 0(r7) -/* 801692B8 00166218 7C 60 20 78 */ andc r0, r3, r4 -/* 801692BC 0016621C 90 07 00 00 */ stw r0, 0(r7) -lbl_801692C0: -/* 801692C0 00166220 3B 7B 00 01 */ addi r27, r27, 1 -lbl_801692C4: -/* 801692C4 00166224 80 01 00 44 */ lwz r0, 0x44(r1) -/* 801692C8 00166228 7C 1B 00 00 */ cmpw r27, r0 -/* 801692CC 0016622C 41 80 FF 7C */ blt lbl_80169248 -/* 801692D0 00166230 7F 23 CB 78 */ mr r3, r25 -/* 801692D4 00166234 38 80 00 01 */ li r4, 1 -/* 801692D8 00166238 48 1D 5A 61 */ bl ReadBits__12CInputStreamFi -/* 801692DC 0016623C 7C 83 00 D0 */ neg r4, r3 -/* 801692E0 00166240 88 01 00 10 */ lbz r0, 0x10(r1) -/* 801692E4 00166244 7C 84 1B 78 */ or r4, r4, r3 -/* 801692E8 00166248 38 61 00 2C */ addi r3, r1, 0x2c -/* 801692EC 0016624C 54 86 0F FE */ srwi r6, r4, 0x1f -/* 801692F0 00166250 98 01 00 0C */ stb r0, 0xc(r1) -/* 801692F4 00166254 38 81 00 34 */ addi r4, r1, 0x34 -/* 801692F8 00166258 38 A1 00 08 */ addi r5, r1, 8 -/* 801692FC 0016625C 98 D8 00 38 */ stb r6, 0x38(r24) -/* 80169300 00166260 98 01 00 08 */ stb r0, 8(r1) -/* 80169304 00166264 80 18 00 2C */ lwz r0, 0x2c(r24) -/* 80169308 00166268 80 D8 00 34 */ lwz r6, 0x34(r24) -/* 8016930C 0016626C 54 00 18 38 */ slwi r0, r0, 3 -/* 80169310 00166270 7C C6 02 14 */ add r6, r6, r0 -/* 80169314 00166274 90 C1 00 34 */ stw r6, 0x34(r1) -/* 80169318 00166278 80 18 00 34 */ lwz r0, 0x34(r24) -/* 8016931C 0016627C 90 C1 00 38 */ stw r6, 0x38(r1) -/* 80169320 00166280 90 01 00 30 */ stw r0, 0x30(r1) -/* 80169324 00166284 90 01 00 2C */ stw r0, 0x2c(r1) -/* 80169328 00166288 48 00 00 95 */ bl sub_801693bc -/* 8016932C 0016628C 80 01 00 4C */ lwz r0, 0x4c(r1) -/* 80169330 00166290 80 61 00 54 */ lwz r3, 0x54(r1) -/* 80169334 00166294 54 00 10 3A */ slwi r0, r0, 2 -/* 80169338 00166298 7C 03 02 14 */ add r0, r3, r0 -/* 8016933C 0016629C 90 61 00 20 */ stw r3, 0x20(r1) -/* 80169340 001662A0 7C 64 1B 78 */ mr r4, r3 -/* 80169344 001662A4 90 01 00 28 */ stw r0, 0x28(r1) -/* 80169348 001662A8 90 01 00 24 */ stw r0, 0x24(r1) -/* 8016934C 001662AC 90 61 00 1C */ stw r3, 0x1c(r1) -/* 80169350 001662B0 48 00 00 08 */ b lbl_80169358 -lbl_80169354: -/* 80169354 001662B4 38 84 00 04 */ addi r4, r4, 4 -lbl_80169358: -/* 80169358 001662B8 7C 04 00 40 */ cmplw r4, r0 -/* 8016935C 001662BC 40 82 FF F8 */ bne lbl_80169354 -/* 80169360 001662C0 28 03 00 00 */ cmplwi r3, 0 -/* 80169364 001662C4 41 82 00 08 */ beq lbl_8016936C -/* 80169368 001662C8 48 1A C5 C9 */ bl Free__7CMemoryFPCv -lbl_8016936C: -/* 8016936C 001662CC 7F 03 C3 78 */ mr r3, r24 -/* 80169370 001662D0 BB 01 00 60 */ lmw r24, 0x60(r1) -/* 80169374 001662D4 80 01 00 84 */ lwz r0, 0x84(r1) -/* 80169378 001662D8 7C 08 03 A6 */ mtlr r0 -/* 8016937C 001662DC 38 21 00 80 */ addi r1, r1, 0x80 -/* 80169380 001662E0 4E 80 00 20 */ blr - -.global __ct__13CMapWorldInfoFv -__ct__13CMapWorldInfoFv: -/* 80169384 001662E4 38 00 00 00 */ li r0, 0 -/* 80169388 001662E8 90 03 00 00 */ stw r0, 0(r3) -/* 8016938C 001662EC 90 03 00 08 */ stw r0, 8(r3) -/* 80169390 001662F0 90 03 00 0C */ stw r0, 0xc(r3) -/* 80169394 001662F4 90 03 00 10 */ stw r0, 0x10(r3) -/* 80169398 001662F8 90 03 00 14 */ stw r0, 0x14(r3) -/* 8016939C 001662FC 90 03 00 1C */ stw r0, 0x1c(r3) -/* 801693A0 00166300 90 03 00 20 */ stw r0, 0x20(r3) -/* 801693A4 00166304 90 03 00 24 */ stw r0, 0x24(r3) -/* 801693A8 00166308 90 03 00 2C */ stw r0, 0x2c(r3) -/* 801693AC 0016630C 90 03 00 30 */ stw r0, 0x30(r3) -/* 801693B0 00166310 90 03 00 34 */ stw r0, 0x34(r3) -/* 801693B4 00166314 98 03 00 38 */ stb r0, 0x38(r3) -/* 801693B8 00166318 4E 80 00 20 */ blr - -.global sub_801693bc -sub_801693bc: -/* 801693BC 0016631C 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 801693C0 00166320 7C 08 02 A6 */ mflr r0 -/* 801693C4 00166324 90 01 00 64 */ stw r0, 0x64(r1) -/* 801693C8 00166328 93 E1 00 5C */ stw r31, 0x5c(r1) -/* 801693CC 0016632C 7C BF 2B 78 */ mr r31, r5 -/* 801693D0 00166330 93 C1 00 58 */ stw r30, 0x58(r1) -/* 801693D4 00166334 7C 9E 23 78 */ mr r30, r4 -/* 801693D8 00166338 93 A1 00 54 */ stw r29, 0x54(r1) -/* 801693DC 0016633C 7C 7D 1B 78 */ mr r29, r3 -/* 801693E0 00166340 93 81 00 50 */ stw r28, 0x50(r1) -/* 801693E4 00166344 80 63 00 00 */ lwz r3, 0(r3) -/* 801693E8 00166348 80 A4 00 00 */ lwz r5, 0(r4) -/* 801693EC 0016634C 7C 03 28 50 */ subf r0, r3, r5 -/* 801693F0 00166350 7C 00 1E 70 */ srawi r0, r0, 3 -/* 801693F4 00166354 7C 80 01 94 */ addze r4, r0 -/* 801693F8 00166358 2C 04 00 01 */ cmpwi r4, 1 -/* 801693FC 0016635C 40 81 01 78 */ ble lbl_80169574 -/* 80169400 00166360 2C 04 00 14 */ cmpwi r4, 0x14 -/* 80169404 00166364 41 81 00 30 */ bgt lbl_80169434 -/* 80169408 00166368 88 FF 00 00 */ lbz r7, 0(r31) -/* 8016940C 0016636C 38 61 00 34 */ addi r3, r1, 0x34 -/* 80169410 00166370 80 DE 00 00 */ lwz r6, 0(r30) -/* 80169414 00166374 38 81 00 30 */ addi r4, r1, 0x30 -/* 80169418 00166378 80 1D 00 00 */ lwz r0, 0(r29) -/* 8016941C 0016637C 38 A1 00 14 */ addi r5, r1, 0x14 -/* 80169420 00166380 98 E1 00 14 */ stb r7, 0x14(r1) -/* 80169424 00166384 90 C1 00 30 */ stw r6, 0x30(r1) -/* 80169428 00166388 90 01 00 34 */ stw r0, 0x34(r1) -/* 8016942C 0016638C 48 00 04 65 */ bl sub_80169890 -/* 80169430 00166390 48 00 01 44 */ b lbl_80169574 -lbl_80169434: -/* 80169434 00166394 54 80 0F FE */ srwi r0, r4, 0x1f -/* 80169438 00166398 38 A5 FF F8 */ addi r5, r5, -8 -/* 8016943C 0016639C 7C 80 22 14 */ add r4, r0, r4 -/* 80169440 001663A0 88 1F 00 00 */ lbz r0, 0(r31) -/* 80169444 001663A4 7C 84 0E 70 */ srawi r4, r4, 1 -/* 80169448 001663A8 90 A1 00 3C */ stw r5, 0x3c(r1) -/* 8016944C 001663AC 54 84 18 38 */ slwi r4, r4, 3 -/* 80169450 001663B0 38 C1 00 10 */ addi r6, r1, 0x10 -/* 80169454 001663B4 7F 83 22 14 */ add r28, r3, r4 -/* 80169458 001663B8 98 01 00 10 */ stb r0, 0x10(r1) -/* 8016945C 001663BC 7F 84 E3 78 */ mr r4, r28 -/* 80169460 001663C0 48 00 03 8D */ bl sub_801697ec -/* 80169464 001663C4 80 9D 00 00 */ lwz r4, 0(r29) -/* 80169468 001663C8 80 61 00 3C */ lwz r3, 0x3c(r1) -/* 8016946C 001663CC 38 84 00 08 */ addi r4, r4, 8 -/* 80169470 001663D0 80 BC 00 00 */ lwz r5, 0(r28) -/* 80169474 001663D4 38 03 FF F8 */ addi r0, r3, -8 -/* 80169478 001663D8 90 81 00 38 */ stw r4, 0x38(r1) -/* 8016947C 001663DC 54 A9 01 BE */ clrlwi r9, r5, 6 -/* 80169480 001663E0 90 01 00 3C */ stw r0, 0x3c(r1) -/* 80169484 001663E4 48 00 00 10 */ b lbl_80169494 -lbl_80169488: -/* 80169488 001663E8 80 61 00 38 */ lwz r3, 0x38(r1) -/* 8016948C 001663EC 38 03 00 08 */ addi r0, r3, 8 -/* 80169490 001663F0 90 01 00 38 */ stw r0, 0x38(r1) -lbl_80169494: -/* 80169494 001663F4 80 61 00 38 */ lwz r3, 0x38(r1) -/* 80169498 001663F8 80 03 00 00 */ lwz r0, 0(r3) -/* 8016949C 001663FC 54 00 01 BE */ clrlwi r0, r0, 6 -/* 801694A0 00166400 7C 00 48 40 */ cmplw r0, r9 -/* 801694A4 00166404 41 80 FF E4 */ blt lbl_80169488 -/* 801694A8 00166408 48 00 00 10 */ b lbl_801694B8 -lbl_801694AC: -/* 801694AC 0016640C 80 61 00 3C */ lwz r3, 0x3c(r1) -/* 801694B0 00166410 38 03 FF F8 */ addi r0, r3, -8 -/* 801694B4 00166414 90 01 00 3C */ stw r0, 0x3c(r1) -lbl_801694B8: -/* 801694B8 00166418 80 61 00 3C */ lwz r3, 0x3c(r1) -/* 801694BC 0016641C 80 03 00 00 */ lwz r0, 0(r3) -/* 801694C0 00166420 54 00 01 BE */ clrlwi r0, r0, 6 -/* 801694C4 00166424 7C 09 00 40 */ cmplw r9, r0 -/* 801694C8 00166428 41 80 FF E4 */ blt lbl_801694AC -/* 801694CC 0016642C 80 01 00 38 */ lwz r0, 0x38(r1) -/* 801694D0 00166430 7C 00 18 40 */ cmplw r0, r3 -/* 801694D4 00166434 40 80 00 50 */ bge lbl_80169524 -/* 801694D8 00166438 80 E1 00 38 */ lwz r7, 0x38(r1) -/* 801694DC 0016643C 81 01 00 3C */ lwz r8, 0x3c(r1) -/* 801694E0 00166440 80 C7 00 00 */ lwz r6, 0(r7) -/* 801694E4 00166444 38 67 00 08 */ addi r3, r7, 8 -/* 801694E8 00166448 88 A7 00 04 */ lbz r5, 4(r7) -/* 801694EC 0016644C 38 08 FF F8 */ addi r0, r8, -8 -/* 801694F0 00166450 80 88 00 00 */ lwz r4, 0(r8) -/* 801694F4 00166454 91 01 00 28 */ stw r8, 0x28(r1) -/* 801694F8 00166458 90 87 00 00 */ stw r4, 0(r7) -/* 801694FC 0016645C 88 88 00 04 */ lbz r4, 4(r8) -/* 80169500 00166460 90 E1 00 2C */ stw r7, 0x2c(r1) -/* 80169504 00166464 98 87 00 04 */ stb r4, 4(r7) -/* 80169508 00166468 90 C8 00 00 */ stw r6, 0(r8) -/* 8016950C 0016646C 90 C1 00 40 */ stw r6, 0x40(r1) -/* 80169510 00166470 98 A1 00 44 */ stb r5, 0x44(r1) -/* 80169514 00166474 98 A8 00 04 */ stb r5, 4(r8) -/* 80169518 00166478 90 61 00 38 */ stw r3, 0x38(r1) -/* 8016951C 0016647C 90 01 00 3C */ stw r0, 0x3c(r1) -/* 80169520 00166480 4B FF FF 74 */ b lbl_80169494 -lbl_80169524: -/* 80169524 00166484 88 FF 00 00 */ lbz r7, 0(r31) -/* 80169528 00166488 38 61 00 24 */ addi r3, r1, 0x24 -/* 8016952C 0016648C 80 C1 00 38 */ lwz r6, 0x38(r1) -/* 80169530 00166490 38 81 00 20 */ addi r4, r1, 0x20 -/* 80169534 00166494 80 1D 00 00 */ lwz r0, 0(r29) -/* 80169538 00166498 38 A1 00 0C */ addi r5, r1, 0xc -/* 8016953C 0016649C 98 E1 00 0C */ stb r7, 0xc(r1) -/* 80169540 001664A0 90 C1 00 20 */ stw r6, 0x20(r1) -/* 80169544 001664A4 90 01 00 24 */ stw r0, 0x24(r1) -/* 80169548 001664A8 4B FF FE 75 */ bl sub_801693bc -/* 8016954C 001664AC 88 FF 00 00 */ lbz r7, 0(r31) -/* 80169550 001664B0 38 61 00 1C */ addi r3, r1, 0x1c -/* 80169554 001664B4 80 DE 00 00 */ lwz r6, 0(r30) -/* 80169558 001664B8 38 81 00 18 */ addi r4, r1, 0x18 -/* 8016955C 001664BC 80 01 00 38 */ lwz r0, 0x38(r1) -/* 80169560 001664C0 38 A1 00 08 */ addi r5, r1, 8 -/* 80169564 001664C4 98 E1 00 08 */ stb r7, 8(r1) -/* 80169568 001664C8 90 C1 00 18 */ stw r6, 0x18(r1) -/* 8016956C 001664CC 90 01 00 1C */ stw r0, 0x1c(r1) -/* 80169570 001664D0 4B FF FE 4D */ bl sub_801693bc -lbl_80169574: -/* 80169574 001664D4 80 01 00 64 */ lwz r0, 0x64(r1) -/* 80169578 001664D8 83 E1 00 5C */ lwz r31, 0x5c(r1) -/* 8016957C 001664DC 83 C1 00 58 */ lwz r30, 0x58(r1) -/* 80169580 001664E0 83 A1 00 54 */ lwz r29, 0x54(r1) -/* 80169584 001664E4 83 81 00 50 */ lwz r28, 0x50(r1) -/* 80169588 001664E8 7C 08 03 A6 */ mtlr r0 -/* 8016958C 001664EC 38 21 00 60 */ addi r1, r1, 0x60 -/* 80169590 001664F0 4E 80 00 20 */ blr - -.global "lower_bound,Q24rstl62vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>,9TEditorId,Q24rstl73pair_sorter_finder,Q24rstl16less<9TEditorId>>>__4rstlFQ24rstl144pointer_iterator,Q24rstl62vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl144pointer_iterator,Q24rstl62vector,Q24rstl62vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>,9TEditorId,Q24rstl73pair_sorter_finder,Q24rstl16less<9TEditorId>>>__4rstlFQ24rstl144pointer_iterator,Q24rstl62vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl144pointer_iterator,Q24rstl62vector,Q24rstl17rmemory_allocator>Fi" -"reserve__Q24rstl62vector,Q24rstl17rmemory_allocator>Fi": -/* 8016965C 001665BC 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80169660 001665C0 7C 08 02 A6 */ mflr r0 -/* 80169664 001665C4 90 01 00 34 */ stw r0, 0x34(r1) -/* 80169668 001665C8 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8016966C 001665CC 7C 9F 23 78 */ mr r31, r4 -/* 80169670 001665D0 93 C1 00 28 */ stw r30, 0x28(r1) -/* 80169674 001665D4 7C 7E 1B 78 */ mr r30, r3 -/* 80169678 001665D8 93 A1 00 24 */ stw r29, 0x24(r1) -/* 8016967C 001665DC 80 03 00 08 */ lwz r0, 8(r3) -/* 80169680 001665E0 7C 1F 00 00 */ cmpw r31, r0 -/* 80169684 001665E4 40 81 00 B0 */ ble lbl_80169734 -/* 80169688 001665E8 57 E3 18 39 */ rlwinm. r3, r31, 3, 0, 0x1c -/* 8016968C 001665EC 40 82 00 0C */ bne lbl_80169698 -/* 80169690 001665F0 3B A0 00 00 */ li r29, 0 -/* 80169694 001665F4 48 00 00 18 */ b lbl_801696AC -lbl_80169698: -/* 80169698 001665F8 3C 80 80 3D */ lis r4, lbl_803D0428@ha -/* 8016969C 001665FC 38 A0 00 00 */ li r5, 0 -/* 801696A0 00166600 38 84 04 28 */ addi r4, r4, lbl_803D0428@l -/* 801696A4 00166604 48 1A C1 75 */ bl __nwa__FUlPCcPCc -/* 801696A8 00166608 7C 7D 1B 78 */ mr r29, r3 -lbl_801696AC: -/* 801696AC 0016660C 80 1E 00 04 */ lwz r0, 4(r30) -/* 801696B0 00166610 7F A4 EB 78 */ mr r4, r29 -/* 801696B4 00166614 80 BE 00 0C */ lwz r5, 0xc(r30) -/* 801696B8 00166618 54 00 18 38 */ slwi r0, r0, 3 -/* 801696BC 0016661C 7C 65 02 14 */ add r3, r5, r0 -/* 801696C0 00166620 90 A1 00 10 */ stw r5, 0x10(r1) -/* 801696C4 00166624 90 61 00 08 */ stw r3, 8(r1) -/* 801696C8 00166628 90 61 00 0C */ stw r3, 0xc(r1) -/* 801696CC 0016662C 90 A1 00 14 */ stw r5, 0x14(r1) -/* 801696D0 00166630 48 00 00 24 */ b lbl_801696F4 -lbl_801696D4: -/* 801696D4 00166634 28 04 00 00 */ cmplwi r4, 0 -/* 801696D8 00166638 41 82 00 14 */ beq lbl_801696EC -/* 801696DC 0016663C 80 05 00 00 */ lwz r0, 0(r5) -/* 801696E0 00166640 90 04 00 00 */ stw r0, 0(r4) -/* 801696E4 00166644 88 05 00 04 */ lbz r0, 4(r5) -/* 801696E8 00166648 98 04 00 04 */ stb r0, 4(r4) -lbl_801696EC: -/* 801696EC 0016664C 38 84 00 08 */ addi r4, r4, 8 -/* 801696F0 00166650 38 A5 00 08 */ addi r5, r5, 8 -lbl_801696F4: -/* 801696F4 00166654 7C 05 18 40 */ cmplw r5, r3 -/* 801696F8 00166658 40 82 FF DC */ bne lbl_801696D4 -/* 801696FC 0016665C 80 1E 00 04 */ lwz r0, 4(r30) -/* 80169700 00166660 80 7E 00 0C */ lwz r3, 0xc(r30) -/* 80169704 00166664 54 00 18 38 */ slwi r0, r0, 3 -/* 80169708 00166668 7C 64 1B 78 */ mr r4, r3 -/* 8016970C 0016666C 7C 03 02 14 */ add r0, r3, r0 -/* 80169710 00166670 48 00 00 08 */ b lbl_80169718 -lbl_80169714: -/* 80169714 00166674 38 84 00 08 */ addi r4, r4, 8 -lbl_80169718: -/* 80169718 00166678 7C 04 00 40 */ cmplw r4, r0 -/* 8016971C 0016667C 40 82 FF F8 */ bne lbl_80169714 -/* 80169720 00166680 28 03 00 00 */ cmplwi r3, 0 -/* 80169724 00166684 41 82 00 08 */ beq lbl_8016972C -/* 80169728 00166688 48 1A C2 09 */ bl Free__7CMemoryFPCv -lbl_8016972C: -/* 8016972C 0016668C 93 BE 00 0C */ stw r29, 0xc(r30) -/* 80169730 00166690 93 FE 00 08 */ stw r31, 8(r30) -lbl_80169734: -/* 80169734 00166694 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80169738 00166698 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8016973C 0016669C 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 80169740 001666A0 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 80169744 001666A4 7C 08 03 A6 */ mtlr r0 -/* 80169748 001666A8 38 21 00 30 */ addi r1, r1, 0x30 -/* 8016974C 001666AC 4E 80 00 20 */ blr - -.global sub_80169750 -sub_80169750: -/* 80169750 001666B0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80169754 001666B4 7C 08 02 A6 */ mflr r0 -/* 80169758 001666B8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8016975C 001666BC 38 A1 00 0C */ addi r5, r1, 0xc -/* 80169760 001666C0 88 01 00 08 */ lbz r0, 8(r1) -/* 80169764 001666C4 98 01 00 0C */ stb r0, 0xc(r1) -/* 80169768 001666C8 48 00 00 15 */ bl sub_8016977c -/* 8016976C 001666CC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80169770 001666D0 7C 08 03 A6 */ mtlr r0 -/* 80169774 001666D4 38 21 00 10 */ addi r1, r1, 0x10 -/* 80169778 001666D8 4E 80 00 20 */ blr - -.global sub_8016977c -sub_8016977c: -/* 8016977C 001666DC 80 A3 00 00 */ lwz r5, 0(r3) -/* 80169780 001666E0 54 80 18 38 */ slwi r0, r4, 3 -/* 80169784 001666E4 7C 05 02 14 */ add r0, r5, r0 -/* 80169788 001666E8 90 03 00 00 */ stw r0, 0(r3) -/* 8016978C 001666EC 4E 80 00 20 */ blr - -.global sub_80169790 -sub_80169790: -/* 80169790 001666F0 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80169794 001666F4 7C 08 02 A6 */ mflr r0 -/* 80169798 001666F8 90 01 00 24 */ stw r0, 0x24(r1) -/* 8016979C 001666FC 38 A1 00 0C */ addi r5, r1, 0xc -/* 801697A0 00166700 88 E1 00 08 */ lbz r7, 8(r1) -/* 801697A4 00166704 80 C4 00 00 */ lwz r6, 0(r4) -/* 801697A8 00166708 38 81 00 10 */ addi r4, r1, 0x10 -/* 801697AC 0016670C 80 03 00 00 */ lwz r0, 0(r3) -/* 801697B0 00166710 38 61 00 14 */ addi r3, r1, 0x14 -/* 801697B4 00166714 90 C1 00 10 */ stw r6, 0x10(r1) -/* 801697B8 00166718 98 E1 00 0C */ stb r7, 0xc(r1) -/* 801697BC 0016671C 90 01 00 14 */ stw r0, 0x14(r1) -/* 801697C0 00166720 48 00 00 15 */ bl sub_801697d4 -/* 801697C4 00166724 80 01 00 24 */ lwz r0, 0x24(r1) -/* 801697C8 00166728 7C 08 03 A6 */ mtlr r0 -/* 801697CC 0016672C 38 21 00 20 */ addi r1, r1, 0x20 -/* 801697D0 00166730 4E 80 00 20 */ blr - -.global sub_801697d4 -sub_801697d4: -/* 801697D4 00166734 80 63 00 00 */ lwz r3, 0(r3) -/* 801697D8 00166738 80 04 00 00 */ lwz r0, 0(r4) -/* 801697DC 0016673C 7C 03 00 50 */ subf r0, r3, r0 -/* 801697E0 00166740 7C 00 1E 70 */ srawi r0, r0, 3 -/* 801697E4 00166744 7C 60 01 94 */ addze r3, r0 -/* 801697E8 00166748 4E 80 00 20 */ blr - -.global sub_801697ec -sub_801697ec: -/* 801697EC 0016674C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 801697F0 00166750 80 E4 00 00 */ lwz r7, 0(r4) -/* 801697F4 00166754 81 03 00 00 */ lwz r8, 0(r3) -/* 801697F8 00166758 54 E6 01 BE */ clrlwi r6, r7, 6 -/* 801697FC 0016675C 55 00 01 BE */ clrlwi r0, r8, 6 -/* 80169800 00166760 7C 06 00 40 */ cmplw r6, r0 -/* 80169804 00166764 40 80 00 24 */ bge lbl_80169828 -/* 80169808 00166768 88 C3 00 04 */ lbz r6, 4(r3) -/* 8016980C 0016676C 91 01 00 08 */ stw r8, 8(r1) -/* 80169810 00166770 90 E3 00 00 */ stw r7, 0(r3) -/* 80169814 00166774 88 04 00 04 */ lbz r0, 4(r4) -/* 80169818 00166778 98 C1 00 0C */ stb r6, 0xc(r1) -/* 8016981C 0016677C 98 03 00 04 */ stb r0, 4(r3) -/* 80169820 00166780 91 04 00 00 */ stw r8, 0(r4) -/* 80169824 00166784 98 C4 00 04 */ stb r6, 4(r4) -lbl_80169828: -/* 80169828 00166788 81 25 00 00 */ lwz r9, 0(r5) -/* 8016982C 0016678C 80 E4 00 00 */ lwz r7, 0(r4) -/* 80169830 00166790 55 28 01 BE */ clrlwi r8, r9, 6 -/* 80169834 00166794 54 E0 01 BE */ clrlwi r0, r7, 6 -/* 80169838 00166798 7C 08 00 40 */ cmplw r8, r0 -/* 8016983C 0016679C 40 80 00 4C */ bge lbl_80169888 -/* 80169840 001667A0 88 C5 00 04 */ lbz r6, 4(r5) -/* 80169844 001667A4 91 21 00 10 */ stw r9, 0x10(r1) -/* 80169848 001667A8 90 E5 00 00 */ stw r7, 0(r5) -/* 8016984C 001667AC 88 04 00 04 */ lbz r0, 4(r4) -/* 80169850 001667B0 98 C1 00 14 */ stb r6, 0x14(r1) -/* 80169854 001667B4 98 05 00 04 */ stb r0, 4(r5) -/* 80169858 001667B8 80 A3 00 00 */ lwz r5, 0(r3) -/* 8016985C 001667BC 54 A0 01 BE */ clrlwi r0, r5, 6 -/* 80169860 001667C0 7C 08 00 40 */ cmplw r8, r0 -/* 80169864 001667C4 40 80 00 1C */ bge lbl_80169880 -/* 80169868 001667C8 90 A4 00 00 */ stw r5, 0(r4) -/* 8016986C 001667CC 88 03 00 04 */ lbz r0, 4(r3) -/* 80169870 001667D0 98 04 00 04 */ stb r0, 4(r4) -/* 80169874 001667D4 91 23 00 00 */ stw r9, 0(r3) -/* 80169878 001667D8 98 C3 00 04 */ stb r6, 4(r3) -/* 8016987C 001667DC 48 00 00 0C */ b lbl_80169888 -lbl_80169880: -/* 80169880 001667E0 91 24 00 00 */ stw r9, 0(r4) -/* 80169884 001667E4 98 C4 00 04 */ stb r6, 4(r4) -lbl_80169888: -/* 80169888 001667E8 38 21 00 20 */ addi r1, r1, 0x20 -/* 8016988C 001667EC 4E 80 00 20 */ blr - -.global sub_80169890 -sub_80169890: -/* 80169890 001667F0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80169894 001667F4 80 C3 00 00 */ lwz r6, 0(r3) -/* 80169898 001667F8 38 C6 00 08 */ addi r6, r6, 8 -/* 8016989C 001667FC 48 00 00 6C */ b lbl_80169908 -lbl_801698A0: -/* 801698A0 00166800 80 A6 00 00 */ lwz r5, 0(r6) -/* 801698A4 00166804 7C C8 33 78 */ mr r8, r6 -/* 801698A8 00166808 88 06 00 04 */ lbz r0, 4(r6) -/* 801698AC 0016680C 38 E6 FF F8 */ addi r7, r6, -8 -/* 801698B0 00166810 90 A1 00 08 */ stw r5, 8(r1) -/* 801698B4 00166814 54 A5 01 BE */ clrlwi r5, r5, 6 -/* 801698B8 00166818 98 01 00 0C */ stb r0, 0xc(r1) -/* 801698BC 0016681C 48 00 00 1C */ b lbl_801698D8 -lbl_801698C0: -/* 801698C0 00166820 80 07 00 00 */ lwz r0, 0(r7) -/* 801698C4 00166824 90 08 00 00 */ stw r0, 0(r8) -/* 801698C8 00166828 88 07 00 04 */ lbz r0, 4(r7) -/* 801698CC 0016682C 38 E7 FF F8 */ addi r7, r7, -8 -/* 801698D0 00166830 98 08 00 04 */ stb r0, 4(r8) -/* 801698D4 00166834 39 08 FF F8 */ addi r8, r8, -8 -lbl_801698D8: -/* 801698D8 00166838 80 03 00 00 */ lwz r0, 0(r3) -/* 801698DC 0016683C 7C 00 40 40 */ cmplw r0, r8 -/* 801698E0 00166840 40 80 00 14 */ bge lbl_801698F4 -/* 801698E4 00166844 80 07 00 00 */ lwz r0, 0(r7) -/* 801698E8 00166848 54 00 01 BE */ clrlwi r0, r0, 6 -/* 801698EC 0016684C 7C 05 00 40 */ cmplw r5, r0 -/* 801698F0 00166850 41 80 FF D0 */ blt lbl_801698C0 -lbl_801698F4: -/* 801698F4 00166854 80 A1 00 08 */ lwz r5, 8(r1) -/* 801698F8 00166858 38 C6 00 08 */ addi r6, r6, 8 -/* 801698FC 0016685C 88 01 00 0C */ lbz r0, 0xc(r1) -/* 80169900 00166860 90 A8 00 00 */ stw r5, 0(r8) -/* 80169904 00166864 98 08 00 04 */ stb r0, 4(r8) -lbl_80169908: -/* 80169908 00166868 80 04 00 00 */ lwz r0, 0(r4) -/* 8016990C 0016686C 7C 06 00 40 */ cmplw r6, r0 -/* 80169910 00166870 41 80 FF 90 */ blt lbl_801698A0 -/* 80169914 00166874 38 21 00 10 */ addi r1, r1, 0x10 -/* 80169918 00166878 4E 80 00 20 */ blr - -.global FScannableObjectInfoFactory__FRC10SObjectTagR12CInputStreamRC15CVParamTransfer -FScannableObjectInfoFactory__FRC10SObjectTagR12CInputStreamRC15CVParamTransfer: -/* 8016991C 0016687C 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80169920 00166880 7C 08 02 A6 */ mflr r0 -/* 80169924 00166884 3C C0 80 3D */ lis r6, lbl_803D0490@ha -/* 80169928 00166888 90 01 00 34 */ stw r0, 0x34(r1) -/* 8016992C 0016688C 38 C6 04 90 */ addi r6, r6, lbl_803D0490@l -/* 80169930 00166890 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 80169934 00166894 7C BF 2B 78 */ mr r31, r5 -/* 80169938 00166898 38 A0 00 00 */ li r5, 0 -/* 8016993C 0016689C 93 C1 00 28 */ stw r30, 0x28(r1) -/* 80169940 001668A0 7C 9E 23 78 */ mr r30, r4 -/* 80169944 001668A4 38 86 00 3C */ addi r4, r6, 0x3c -/* 80169948 001668A8 93 A1 00 24 */ stw r29, 0x24(r1) -/* 8016994C 001668AC 7C 7D 1B 78 */ mr r29, r3 -/* 80169950 001668B0 38 60 00 88 */ li r3, 0x88 -/* 80169954 001668B4 48 1A BF 19 */ bl __nw__FUlPCcPCc -/* 80169958 001668B8 7C 64 1B 79 */ or. r4, r3, r3 -/* 8016995C 001668BC 41 82 00 14 */ beq lbl_80169970 -/* 80169960 001668C0 80 BE 00 04 */ lwz r5, 4(r30) -/* 80169964 001668C4 7F E4 FB 78 */ mr r4, r31 -/* 80169968 001668C8 48 00 04 71 */ bl __ct__20CScannableObjectInfoFR12CInputStreamUi -/* 8016996C 001668CC 7C 64 1B 78 */ mr r4, r3 -lbl_80169970: -/* 80169970 001668D0 7C 04 00 D0 */ neg r0, r4 -/* 80169974 001668D4 90 81 00 0C */ stw r4, 0xc(r1) -/* 80169978 001668D8 7C 00 23 78 */ or r0, r0, r4 -/* 8016997C 001668DC 38 61 00 10 */ addi r3, r1, 0x10 -/* 80169980 001668E0 54 00 0F FE */ srwi r0, r0, 0x1f -/* 80169984 001668E4 38 81 00 08 */ addi r4, r1, 8 -/* 80169988 001668E8 98 01 00 08 */ stb r0, 8(r1) -/* 8016998C 001668EC 48 00 01 D1 */ bl "GetIObjObjectFor__30TToken<20CScannableObjectInfo>FRCQ24rstl32auto_ptr<20CScannableObjectInfo>" -/* 80169990 001668F0 80 61 00 14 */ lwz r3, 0x14(r1) -/* 80169994 001668F4 38 00 00 00 */ li r0, 0 -/* 80169998 001668F8 98 01 00 10 */ stb r0, 0x10(r1) -/* 8016999C 001668FC 7C 03 00 D0 */ neg r0, r3 -/* 801699A0 00166900 7C 00 1B 78 */ or r0, r0, r3 -/* 801699A4 00166904 54 00 0F FE */ srwi r0, r0, 0x1f -/* 801699A8 00166908 98 1D 00 00 */ stb r0, 0(r29) -/* 801699AC 0016690C 90 7D 00 04 */ stw r3, 4(r29) -/* 801699B0 00166910 88 01 00 10 */ lbz r0, 0x10(r1) -/* 801699B4 00166914 28 00 00 00 */ cmplwi r0, 0 -/* 801699B8 00166918 41 82 00 24 */ beq lbl_801699DC -/* 801699BC 0016691C 80 61 00 14 */ lwz r3, 0x14(r1) -/* 801699C0 00166920 28 03 00 00 */ cmplwi r3, 0 -/* 801699C4 00166924 41 82 00 18 */ beq lbl_801699DC -/* 801699C8 00166928 81 83 00 00 */ lwz r12, 0(r3) -/* 801699CC 0016692C 38 80 00 01 */ li r4, 1 -/* 801699D0 00166930 81 8C 00 08 */ lwz r12, 8(r12) -/* 801699D4 00166934 7D 89 03 A6 */ mtctr r12 -/* 801699D8 00166938 4E 80 04 21 */ bctrl -lbl_801699DC: -/* 801699DC 0016693C 88 01 00 08 */ lbz r0, 8(r1) -/* 801699E0 00166940 28 00 00 00 */ cmplwi r0, 0 -/* 801699E4 00166944 41 82 00 70 */ beq lbl_80169A54 -/* 801699E8 00166948 80 61 00 0C */ lwz r3, 0xc(r1) -/* 801699EC 0016694C 28 03 00 00 */ cmplwi r3, 0 -/* 801699F0 00166950 41 82 00 64 */ beq lbl_80169A54 -/* 801699F4 00166954 34 03 00 14 */ addic. r0, r3, 0x14 -/* 801699F8 00166958 41 82 00 58 */ beq lbl_80169A50 -/* 801699FC 0016695C 80 C3 00 14 */ lwz r6, 0x14(r3) -/* 80169A00 00166960 38 80 00 00 */ li r4, 0 -/* 80169A04 00166964 2C 06 00 00 */ cmpwi r6, 0 -/* 80169A08 00166968 40 81 00 40 */ ble lbl_80169A48 -/* 80169A0C 0016696C 2C 06 00 08 */ cmpwi r6, 8 -/* 80169A10 00166970 38 A6 FF F8 */ addi r5, r6, -8 -/* 80169A14 00166974 40 81 00 20 */ ble lbl_80169A34 -/* 80169A18 00166978 38 05 00 07 */ addi r0, r5, 7 -/* 80169A1C 0016697C 54 00 E8 FE */ srwi r0, r0, 3 -/* 80169A20 00166980 7C 09 03 A6 */ mtctr r0 -/* 80169A24 00166984 2C 05 00 00 */ cmpwi r5, 0 -/* 80169A28 00166988 40 81 00 0C */ ble lbl_80169A34 -lbl_80169A2C: -/* 80169A2C 0016698C 38 84 00 08 */ addi r4, r4, 8 -/* 80169A30 00166990 42 00 FF FC */ bdnz lbl_80169A2C -lbl_80169A34: -/* 80169A34 00166994 7C 04 30 50 */ subf r0, r4, r6 -/* 80169A38 00166998 7C 09 03 A6 */ mtctr r0 -/* 80169A3C 0016699C 7C 04 30 00 */ cmpw r4, r6 -/* 80169A40 001669A0 40 80 00 08 */ bge lbl_80169A48 -lbl_80169A44: -/* 80169A44 001669A4 42 00 00 00 */ bdnz lbl_80169A44 -lbl_80169A48: -/* 80169A48 001669A8 38 00 00 00 */ li r0, 0 -/* 80169A4C 001669AC 90 03 00 14 */ stw r0, 0x14(r3) -lbl_80169A50: -/* 80169A50 001669B0 48 1A BE E1 */ bl Free__7CMemoryFPCv -lbl_80169A54: -/* 80169A54 001669B4 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80169A58 001669B8 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 80169A5C 001669BC 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 80169A60 001669C0 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 80169A64 001669C4 7C 08 03 A6 */ mtlr r0 -/* 80169A68 001669C8 38 21 00 30 */ addi r1, r1, 0x30 -/* 80169A6C 001669CC 4E 80 00 20 */ blr - -.global sub_80169a70 -sub_80169a70: -/* 80169A70 001669D0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80169A74 001669D4 7C 08 02 A6 */ mflr r0 -/* 80169A78 001669D8 90 01 00 14 */ stw r0, 0x14(r1) -/* 80169A7C 001669DC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80169A80 001669E0 7C 9F 23 78 */ mr r31, r4 -/* 80169A84 001669E4 93 C1 00 08 */ stw r30, 8(r1) -/* 80169A88 001669E8 7C 7E 1B 79 */ or. r30, r3, r3 -/* 80169A8C 001669EC 41 82 00 B4 */ beq lbl_80169B40 -/* 80169A90 001669F0 3C 60 80 3E */ lis r3, lbl_803E3AC8@ha -/* 80169A94 001669F4 38 03 3A C8 */ addi r0, r3, lbl_803E3AC8@l -/* 80169A98 001669F8 90 1E 00 00 */ stw r0, 0(r30) -/* 80169A9C 001669FC 80 7E 00 04 */ lwz r3, 4(r30) -/* 80169AA0 00166A00 28 03 00 00 */ cmplwi r3, 0 -/* 80169AA4 00166A04 41 82 00 68 */ beq lbl_80169B0C -/* 80169AA8 00166A08 41 82 00 64 */ beq lbl_80169B0C -/* 80169AAC 00166A0C 34 03 00 14 */ addic. r0, r3, 0x14 -/* 80169AB0 00166A10 41 82 00 58 */ beq lbl_80169B08 -/* 80169AB4 00166A14 80 C3 00 14 */ lwz r6, 0x14(r3) -/* 80169AB8 00166A18 38 80 00 00 */ li r4, 0 -/* 80169ABC 00166A1C 2C 06 00 00 */ cmpwi r6, 0 -/* 80169AC0 00166A20 40 81 00 40 */ ble lbl_80169B00 -/* 80169AC4 00166A24 2C 06 00 08 */ cmpwi r6, 8 -/* 80169AC8 00166A28 38 A6 FF F8 */ addi r5, r6, -8 -/* 80169ACC 00166A2C 40 81 00 20 */ ble lbl_80169AEC -/* 80169AD0 00166A30 38 05 00 07 */ addi r0, r5, 7 -/* 80169AD4 00166A34 54 00 E8 FE */ srwi r0, r0, 3 -/* 80169AD8 00166A38 7C 09 03 A6 */ mtctr r0 -/* 80169ADC 00166A3C 2C 05 00 00 */ cmpwi r5, 0 -/* 80169AE0 00166A40 40 81 00 0C */ ble lbl_80169AEC -lbl_80169AE4: -/* 80169AE4 00166A44 38 84 00 08 */ addi r4, r4, 8 -/* 80169AE8 00166A48 42 00 FF FC */ bdnz lbl_80169AE4 -lbl_80169AEC: -/* 80169AEC 00166A4C 7C 04 30 50 */ subf r0, r4, r6 -/* 80169AF0 00166A50 7C 09 03 A6 */ mtctr r0 -/* 80169AF4 00166A54 7C 04 30 00 */ cmpw r4, r6 -/* 80169AF8 00166A58 40 80 00 08 */ bge lbl_80169B00 -lbl_80169AFC: -/* 80169AFC 00166A5C 42 00 00 00 */ bdnz lbl_80169AFC -lbl_80169B00: -/* 80169B00 00166A60 38 00 00 00 */ li r0, 0 -/* 80169B04 00166A64 90 03 00 14 */ stw r0, 0x14(r3) -lbl_80169B08: -/* 80169B08 00166A68 48 1A BE 29 */ bl Free__7CMemoryFPCv -lbl_80169B0C: -/* 80169B0C 00166A6C 28 1E 00 00 */ cmplwi r30, 0 -/* 80169B10 00166A70 41 82 00 20 */ beq lbl_80169B30 -/* 80169B14 00166A74 3C 60 80 3E */ lis r3, lbl_803D8D78@ha -/* 80169B18 00166A78 38 03 8D 78 */ addi r0, r3, lbl_803D8D78@l -/* 80169B1C 00166A7C 90 1E 00 00 */ stw r0, 0(r30) -/* 80169B20 00166A80 41 82 00 10 */ beq lbl_80169B30 -/* 80169B24 00166A84 3C 60 80 3E */ lis r3, lbl_803D8D6C@ha -/* 80169B28 00166A88 38 03 8D 6C */ addi r0, r3, lbl_803D8D6C@l -/* 80169B2C 00166A8C 90 1E 00 00 */ stw r0, 0(r30) -lbl_80169B30: -/* 80169B30 00166A90 7F E0 07 35 */ extsh. r0, r31 -/* 80169B34 00166A94 40 81 00 0C */ ble lbl_80169B40 -/* 80169B38 00166A98 7F C3 F3 78 */ mr r3, r30 -/* 80169B3C 00166A9C 48 1A BD F5 */ bl Free__7CMemoryFPCv -lbl_80169B40: -/* 80169B40 00166AA0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80169B44 00166AA4 7F C3 F3 78 */ mr r3, r30 -/* 80169B48 00166AA8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80169B4C 00166AAC 83 C1 00 08 */ lwz r30, 8(r1) -/* 80169B50 00166AB0 7C 08 03 A6 */ mtlr r0 -/* 80169B54 00166AB4 38 21 00 10 */ addi r1, r1, 0x10 -/* 80169B58 00166AB8 4E 80 00 20 */ blr - -.global "GetIObjObjectFor__30TToken<20CScannableObjectInfo>FRCQ24rstl32auto_ptr<20CScannableObjectInfo>" -"GetIObjObjectFor__30TToken<20CScannableObjectInfo>FRCQ24rstl32auto_ptr<20CScannableObjectInfo>": -/* 80169B5C 00166ABC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80169B60 00166AC0 7C 08 02 A6 */ mflr r0 -/* 80169B64 00166AC4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80169B68 00166AC8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80169B6C 00166ACC 7C 7F 1B 78 */ mr r31, r3 -/* 80169B70 00166AD0 48 00 00 19 */ bl sub_80169b88 -/* 80169B74 00166AD4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80169B78 00166AD8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80169B7C 00166ADC 7C 08 03 A6 */ mtlr r0 -/* 80169B80 00166AE0 38 21 00 10 */ addi r1, r1, 0x10 -/* 80169B84 00166AE4 4E 80 00 20 */ blr - -.global sub_80169b88 -sub_80169b88: -/* 80169B88 00166AE8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80169B8C 00166AEC 7C 08 02 A6 */ mflr r0 -/* 80169B90 00166AF0 3C A0 80 3D */ lis r5, lbl_803D0490@ha -/* 80169B94 00166AF4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80169B98 00166AF8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80169B9C 00166AFC 7C 9F 23 78 */ mr r31, r4 -/* 80169BA0 00166B00 93 C1 00 08 */ stw r30, 8(r1) -/* 80169BA4 00166B04 7C 7E 1B 78 */ mr r30, r3 -/* 80169BA8 00166B08 38 65 04 90 */ addi r3, r5, lbl_803D0490@l -/* 80169BAC 00166B0C 38 A0 00 00 */ li r5, 0 -/* 80169BB0 00166B10 38 83 00 3C */ addi r4, r3, 0x3c -/* 80169BB4 00166B14 38 60 00 08 */ li r3, 8 -/* 80169BB8 00166B18 48 1A BC B5 */ bl __nw__FUlPCcPCc -/* 80169BBC 00166B1C 28 03 00 00 */ cmplwi r3, 0 -/* 80169BC0 00166B20 41 82 00 38 */ beq lbl_80169BF8 -/* 80169BC4 00166B24 3C 80 80 3E */ lis r4, lbl_803D8D6C@ha -/* 80169BC8 00166B28 3C A0 80 3E */ lis r5, lbl_803D8D78@ha -/* 80169BCC 00166B2C 38 04 8D 6C */ addi r0, r4, lbl_803D8D6C@l -/* 80169BD0 00166B30 3C 80 80 3E */ lis r4, lbl_803E3AC8@ha -/* 80169BD4 00166B34 90 03 00 00 */ stw r0, 0(r3) -/* 80169BD8 00166B38 38 C5 8D 78 */ addi r6, r5, lbl_803D8D78@l -/* 80169BDC 00166B3C 38 A0 00 00 */ li r5, 0 -/* 80169BE0 00166B40 38 04 3A C8 */ addi r0, r4, lbl_803E3AC8@l -/* 80169BE4 00166B44 90 C3 00 00 */ stw r6, 0(r3) -/* 80169BE8 00166B48 98 BF 00 00 */ stb r5, 0(r31) -/* 80169BEC 00166B4C 80 9F 00 04 */ lwz r4, 4(r31) -/* 80169BF0 00166B50 90 83 00 04 */ stw r4, 4(r3) -/* 80169BF4 00166B54 90 03 00 00 */ stw r0, 0(r3) -lbl_80169BF8: -/* 80169BF8 00166B58 7C 03 00 D0 */ neg r0, r3 -/* 80169BFC 00166B5C 7C 00 1B 78 */ or r0, r0, r3 -/* 80169C00 00166B60 54 00 0F FE */ srwi r0, r0, 0x1f -/* 80169C04 00166B64 98 1E 00 00 */ stb r0, 0(r30) -/* 80169C08 00166B68 90 7E 00 04 */ stw r3, 4(r30) -/* 80169C0C 00166B6C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80169C10 00166B70 83 C1 00 08 */ lwz r30, 8(r1) -/* 80169C14 00166B74 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80169C18 00166B78 7C 08 03 A6 */ mtlr r0 -/* 80169C1C 00166B7C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80169C20 00166B80 4E 80 00 20 */ blr - -.global LoadVersion4or5__20CScannableObjectInfoFR12CInputStreamUi -LoadVersion4or5__20CScannableObjectInfoFR12CInputStreamUi: -/* 80169C24 00166B84 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 80169C28 00166B88 7C 08 02 A6 */ mflr r0 -/* 80169C2C 00166B8C 90 01 00 64 */ stw r0, 0x64(r1) -/* 80169C30 00166B90 DB E1 00 50 */ stfd f31, 0x50(r1) -/* 80169C34 00166B94 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 -/* 80169C38 00166B98 BF 41 00 38 */ stmw r26, 0x38(r1) -/* 80169C3C 00166B9C 7C 9C 23 78 */ mr r28, r4 -/* 80169C40 00166BA0 7C 7B 1B 78 */ mr r27, r3 -/* 80169C44 00166BA4 7C BD 2B 78 */ mr r29, r5 -/* 80169C48 00166BA8 7F 83 E3 78 */ mr r3, r28 -/* 80169C4C 00166BAC 48 1D 50 39 */ bl ReadLong__12CInputStreamFv -/* 80169C50 00166BB0 7F 83 E3 78 */ mr r3, r28 -/* 80169C54 00166BB4 48 1D 50 31 */ bl ReadLong__12CInputStreamFv -/* 80169C58 00166BB8 7F 83 E3 78 */ mr r3, r28 -/* 80169C5C 00166BBC 48 1D 50 29 */ bl ReadLong__12CInputStreamFv -/* 80169C60 00166BC0 28 1D 00 04 */ cmplwi r29, 4 -/* 80169C64 00166BC4 90 7B 00 04 */ stw r3, 4(r27) -/* 80169C68 00166BC8 40 80 00 14 */ bge lbl_80169C7C -/* 80169C6C 00166BCC 7F 83 E3 78 */ mr r3, r28 -/* 80169C70 00166BD0 48 1D 4F B9 */ bl ReadFloat__12CInputStreamFv -/* 80169C74 00166BD4 D0 3B 00 08 */ stfs f1, 8(r27) -/* 80169C78 00166BD8 48 00 00 20 */ b lbl_80169C98 -lbl_80169C7C: -/* 80169C7C 00166BDC 7F 83 E3 78 */ mr r3, r28 -/* 80169C80 00166BE0 48 1D 50 05 */ bl ReadLong__12CInputStreamFv -/* 80169C84 00166BE4 80 8D A1 38 */ lwz r4, gpTweakGui@sda21(r13) -/* 80169C88 00166BE8 54 60 10 3A */ slwi r0, r3, 2 -/* 80169C8C 00166BEC 7C 64 02 14 */ add r3, r4, r0 -/* 80169C90 00166BF0 C0 03 02 C8 */ lfs f0, 0x2c8(r3) -/* 80169C94 00166BF4 D0 1B 00 08 */ stfs f0, 8(r27) -lbl_80169C98: -/* 80169C98 00166BF8 7F 83 E3 78 */ mr r3, r28 -/* 80169C9C 00166BFC 48 1D 4F E9 */ bl ReadLong__12CInputStreamFv -/* 80169CA0 00166C00 28 1D 00 04 */ cmplwi r29, 4 -/* 80169CA4 00166C04 90 7B 00 0C */ stw r3, 0xc(r27) -/* 80169CA8 00166C08 40 81 00 10 */ ble lbl_80169CB8 -/* 80169CAC 00166C0C 7F 83 E3 78 */ mr r3, r28 -/* 80169CB0 00166C10 48 1D 50 2D */ bl ReadBool__12CInputStreamFv -/* 80169CB4 00166C14 98 7B 00 10 */ stb r3, 0x10(r27) -lbl_80169CB8: -/* 80169CB8 00166C18 3B C0 00 00 */ li r30, 0 -/* 80169CBC 00166C1C 3B FB 00 18 */ addi r31, r27, 0x18 -lbl_80169CC0: -/* 80169CC0 00166C20 7F 83 E3 78 */ mr r3, r28 -/* 80169CC4 00166C24 48 1D 4F C1 */ bl ReadLong__12CInputStreamFv -/* 80169CC8 00166C28 7C 7A 1B 78 */ mr r26, r3 -/* 80169CCC 00166C2C 7F 83 E3 78 */ mr r3, r28 -/* 80169CD0 00166C30 48 1D 4F 59 */ bl ReadFloat__12CInputStreamFv -/* 80169CD4 00166C34 FF E0 08 90 */ fmr f31, f1 -/* 80169CD8 00166C38 7F 83 E3 78 */ mr r3, r28 -/* 80169CDC 00166C3C 48 1D 4F A9 */ bl ReadLong__12CInputStreamFv -/* 80169CE0 00166C40 28 1D 00 01 */ cmplwi r29, 1 -/* 80169CE4 00166C44 90 61 00 20 */ stw r3, 0x20(r1) -/* 80169CE8 00166C48 40 82 00 18 */ bne lbl_80169D00 -/* 80169CEC 00166C4C 38 61 00 08 */ addi r3, r1, 8 -/* 80169CF0 00166C50 38 80 00 00 */ li r4, 0 -/* 80169CF4 00166C54 38 A0 00 00 */ li r5, 0 -/* 80169CF8 00166C58 48 1A A6 55 */ bl __ct__9CVector2iFii -/* 80169CFC 00166C5C 48 00 00 20 */ b lbl_80169D1C -lbl_80169D00: -/* 80169D00 00166C60 7F 83 E3 78 */ mr r3, r28 -/* 80169D04 00166C64 48 1D 4F 81 */ bl ReadLong__12CInputStreamFv -/* 80169D08 00166C68 90 61 00 10 */ stw r3, 0x10(r1) -/* 80169D0C 00166C6C 7F 83 E3 78 */ mr r3, r28 -/* 80169D10 00166C70 48 1D 4F 75 */ bl ReadLong__12CInputStreamFv -/* 80169D14 00166C74 90 61 00 14 */ stw r3, 0x14(r1) -/* 80169D18 00166C78 38 61 00 10 */ addi r3, r1, 0x10 -lbl_80169D1C: -/* 80169D1C 00166C7C 80 83 00 00 */ lwz r4, 0(r3) -/* 80169D20 00166C80 28 1D 00 01 */ cmplwi r29, 1 -/* 80169D24 00166C84 80 03 00 04 */ lwz r0, 4(r3) -/* 80169D28 00166C88 90 81 00 24 */ stw r4, 0x24(r1) -/* 80169D2C 00166C8C 90 01 00 28 */ stw r0, 0x28(r1) -/* 80169D30 00166C90 40 82 00 0C */ bne lbl_80169D3C -/* 80169D34 00166C94 C0 22 A0 68 */ lfs f1, lbl_805ABD88@sda21(r2) -/* 80169D38 00166C98 48 00 00 0C */ b lbl_80169D44 -lbl_80169D3C: -/* 80169D3C 00166C9C 7F 83 E3 78 */ mr r3, r28 -/* 80169D40 00166CA0 48 1D 4E E9 */ bl ReadFloat__12CInputStreamFv -lbl_80169D44: -/* 80169D44 00166CA4 28 1D 00 03 */ cmplwi r29, 3 -/* 80169D48 00166CA8 D0 21 00 2C */ stfs f1, 0x2c(r1) -/* 80169D4C 00166CAC 40 80 00 0C */ bge lbl_80169D58 -/* 80169D50 00166CB0 C0 22 A0 68 */ lfs f1, lbl_805ABD88@sda21(r2) -/* 80169D54 00166CB4 48 00 00 0C */ b lbl_80169D60 -lbl_80169D58: -/* 80169D58 00166CB8 7F 83 E3 78 */ mr r3, r28 -/* 80169D5C 00166CBC 48 1D 4E CD */ bl ReadFloat__12CInputStreamFv -lbl_80169D60: -/* 80169D60 00166CC0 80 1B 00 14 */ lwz r0, 0x14(r27) -/* 80169D64 00166CC4 D0 21 00 30 */ stfs f1, 0x30(r1) -/* 80169D68 00166CC8 1C 00 00 1C */ mulli r0, r0, 0x1c -/* 80169D6C 00166CCC 7C 9F 02 15 */ add. r4, r31, r0 -/* 80169D70 00166CD0 41 82 00 34 */ beq lbl_80169DA4 -/* 80169D74 00166CD4 93 44 00 00 */ stw r26, 0(r4) -/* 80169D78 00166CD8 FC 00 08 18 */ frsp f0, f1 -/* 80169D7C 00166CDC 80 01 00 20 */ lwz r0, 0x20(r1) -/* 80169D80 00166CE0 D3 E4 00 04 */ stfs f31, 4(r4) -/* 80169D84 00166CE4 80 61 00 24 */ lwz r3, 0x24(r1) -/* 80169D88 00166CE8 90 04 00 08 */ stw r0, 8(r4) -/* 80169D8C 00166CEC 80 01 00 28 */ lwz r0, 0x28(r1) -/* 80169D90 00166CF0 90 64 00 0C */ stw r3, 0xc(r4) -/* 80169D94 00166CF4 C0 21 00 2C */ lfs f1, 0x2c(r1) -/* 80169D98 00166CF8 90 04 00 10 */ stw r0, 0x10(r4) -/* 80169D9C 00166CFC D0 24 00 14 */ stfs f1, 0x14(r4) -/* 80169DA0 00166D00 D0 04 00 18 */ stfs f0, 0x18(r4) -lbl_80169DA4: -/* 80169DA4 00166D04 80 7B 00 14 */ lwz r3, 0x14(r27) -/* 80169DA8 00166D08 3B DE 00 01 */ addi r30, r30, 1 -/* 80169DAC 00166D0C 2C 1E 00 04 */ cmpwi r30, 4 -/* 80169DB0 00166D10 38 03 00 01 */ addi r0, r3, 1 -/* 80169DB4 00166D14 90 1B 00 14 */ stw r0, 0x14(r27) -/* 80169DB8 00166D18 41 80 FF 08 */ blt lbl_80169CC0 -/* 80169DBC 00166D1C E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 -/* 80169DC0 00166D20 CB E1 00 50 */ lfd f31, 0x50(r1) -/* 80169DC4 00166D24 BB 41 00 38 */ lmw r26, 0x38(r1) -/* 80169DC8 00166D28 80 01 00 64 */ lwz r0, 0x64(r1) -/* 80169DCC 00166D2C 7C 08 03 A6 */ mtlr r0 -/* 80169DD0 00166D30 38 21 00 60 */ addi r1, r1, 0x60 -/* 80169DD4 00166D34 4E 80 00 20 */ blr - -.global __ct__20CScannableObjectInfoFR12CInputStreamUi -__ct__20CScannableObjectInfoFR12CInputStreamUi: -/* 80169DD8 00166D38 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80169DDC 00166D3C 7C 08 02 A6 */ mflr r0 -/* 80169DE0 00166D40 C0 02 A0 68 */ lfs f0, lbl_805ABD88@sda21(r2) -/* 80169DE4 00166D44 90 01 00 14 */ stw r0, 0x14(r1) -/* 80169DE8 00166D48 38 00 00 00 */ li r0, 0 -/* 80169DEC 00166D4C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80169DF0 00166D50 7C 7F 1B 78 */ mr r31, r3 -/* 80169DF4 00166D54 93 C1 00 08 */ stw r30, 8(r1) -/* 80169DF8 00166D58 7C 9E 23 78 */ mr r30, r4 -/* 80169DFC 00166D5C 90 A3 00 00 */ stw r5, 0(r3) -/* 80169E00 00166D60 38 60 FF FF */ li r3, -1 -/* 80169E04 00166D64 90 7F 00 04 */ stw r3, 4(r31) -/* 80169E08 00166D68 7F C3 F3 78 */ mr r3, r30 -/* 80169E0C 00166D6C D0 1F 00 08 */ stfs f0, 8(r31) -/* 80169E10 00166D70 90 1F 00 0C */ stw r0, 0xc(r31) -/* 80169E14 00166D74 98 1F 00 10 */ stb r0, 0x10(r31) -/* 80169E18 00166D78 90 1F 00 14 */ stw r0, 0x14(r31) -/* 80169E1C 00166D7C 48 1D 4E 69 */ bl ReadLong__12CInputStreamFv -/* 80169E20 00166D80 7C 65 1B 78 */ mr r5, r3 -/* 80169E24 00166D84 7F E3 FB 78 */ mr r3, r31 -/* 80169E28 00166D88 7F C4 F3 78 */ mr r4, r30 -/* 80169E2C 00166D8C 4B FF FD F9 */ bl LoadVersion4or5__20CScannableObjectInfoFR12CInputStreamUi -/* 80169E30 00166D90 38 BF 00 14 */ addi r5, r31, 0x14 -/* 80169E34 00166D94 38 C0 00 00 */ li r6, 0 -/* 80169E38 00166D98 38 80 00 00 */ li r4, 0 -/* 80169E3C 00166D9C 48 00 00 20 */ b lbl_80169E5C -lbl_80169E40: -/* 80169E40 00166DA0 7C 65 22 14 */ add r3, r5, r4 -/* 80169E44 00166DA4 C0 1F 00 08 */ lfs f0, 8(r31) -/* 80169E48 00166DA8 C0 23 00 08 */ lfs f1, 8(r3) -/* 80169E4C 00166DAC 38 84 00 1C */ addi r4, r4, 0x1c -/* 80169E50 00166DB0 38 C6 00 01 */ addi r6, r6, 1 -/* 80169E54 00166DB4 EC 01 00 32 */ fmuls f0, f1, f0 -/* 80169E58 00166DB8 D0 03 00 08 */ stfs f0, 8(r3) -lbl_80169E5C: -/* 80169E5C 00166DBC 80 05 00 00 */ lwz r0, 0(r5) -/* 80169E60 00166DC0 7C 06 00 00 */ cmpw r6, r0 -/* 80169E64 00166DC4 41 80 FF DC */ blt lbl_80169E40 -/* 80169E68 00166DC8 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) -/* 80169E6C 00166DCC 38 DF 00 14 */ addi r6, r31, 0x14 -/* 80169E70 00166DD0 39 00 00 00 */ li r8, 0 -/* 80169E74 00166DD4 38 A0 00 00 */ li r5, 0 -/* 80169E78 00166DD8 C0 23 02 44 */ lfs f1, 0x244(r3) -/* 80169E7C 00166DDC 48 00 00 5C */ b lbl_80169ED8 -lbl_80169E80: -/* 80169E80 00166DE0 7C 66 2A 14 */ add r3, r6, r5 -/* 80169E84 00166DE4 80 03 00 0C */ lwz r0, 0xc(r3) -/* 80169E88 00166DE8 2C 00 FF FF */ cmpwi r0, -1 -/* 80169E8C 00166DEC 41 82 00 44 */ beq lbl_80169ED0 -/* 80169E90 00166DF0 C0 1F 00 08 */ lfs f0, 8(r31) -/* 80169E94 00166DF4 1C 88 00 1C */ mulli r4, r8, 0x1c -/* 80169E98 00166DF8 7D 09 43 78 */ mr r9, r8 -/* 80169E9C 00166DFC EC 00 08 2A */ fadds f0, f0, f1 -/* 80169EA0 00166E00 38 FF 00 14 */ addi r7, r31, 0x14 -/* 80169EA4 00166E04 D0 1F 00 08 */ stfs f0, 8(r31) -/* 80169EA8 00166E08 48 00 00 1C */ b lbl_80169EC4 -lbl_80169EAC: -/* 80169EAC 00166E0C 7C 67 22 14 */ add r3, r7, r4 -/* 80169EB0 00166E10 38 84 00 1C */ addi r4, r4, 0x1c -/* 80169EB4 00166E14 C0 03 00 08 */ lfs f0, 8(r3) -/* 80169EB8 00166E18 39 29 00 01 */ addi r9, r9, 1 -/* 80169EBC 00166E1C EC 00 08 2A */ fadds f0, f0, f1 -/* 80169EC0 00166E20 D0 03 00 08 */ stfs f0, 8(r3) -lbl_80169EC4: -/* 80169EC4 00166E24 80 07 00 00 */ lwz r0, 0(r7) -/* 80169EC8 00166E28 7C 09 00 00 */ cmpw r9, r0 -/* 80169ECC 00166E2C 41 80 FF E0 */ blt lbl_80169EAC -lbl_80169ED0: -/* 80169ED0 00166E30 38 A5 00 1C */ addi r5, r5, 0x1c -/* 80169ED4 00166E34 39 08 00 01 */ addi r8, r8, 1 -lbl_80169ED8: -/* 80169ED8 00166E38 80 06 00 00 */ lwz r0, 0(r6) -/* 80169EDC 00166E3C 7C 08 00 00 */ cmpw r8, r0 -/* 80169EE0 00166E40 41 80 FF A0 */ blt lbl_80169E80 -/* 80169EE4 00166E44 39 1F 00 14 */ addi r8, r31, 0x14 -/* 80169EE8 00166E48 39 40 00 00 */ li r10, 0 -/* 80169EEC 00166E4C 38 E0 00 00 */ li r7, 0 -/* 80169EF0 00166E50 38 80 FF FF */ li r4, -1 -/* 80169EF4 00166E54 48 00 00 50 */ b lbl_80169F44 -lbl_80169EF8: -/* 80169EF8 00166E58 39 6A 00 01 */ addi r11, r10, 1 -/* 80169EFC 00166E5C 7C 68 3A 14 */ add r3, r8, r7 -/* 80169F00 00166E60 1C CB 00 1C */ mulli r6, r11, 0x1c -/* 80169F04 00166E64 48 00 00 2C */ b lbl_80169F30 -lbl_80169F08: -/* 80169F08 00166E68 7C A8 32 14 */ add r5, r8, r6 -/* 80169F0C 00166E6C 81 23 00 0C */ lwz r9, 0xc(r3) -/* 80169F10 00166E70 80 05 00 0C */ lwz r0, 0xc(r5) -/* 80169F14 00166E74 7C 09 00 00 */ cmpw r9, r0 -/* 80169F18 00166E78 40 82 00 10 */ bne lbl_80169F28 -/* 80169F1C 00166E7C 2C 09 FF FF */ cmpwi r9, -1 -/* 80169F20 00166E80 41 82 00 08 */ beq lbl_80169F28 -/* 80169F24 00166E84 90 85 00 0C */ stw r4, 0xc(r5) -lbl_80169F28: -/* 80169F28 00166E88 38 C6 00 1C */ addi r6, r6, 0x1c -/* 80169F2C 00166E8C 39 6B 00 01 */ addi r11, r11, 1 -lbl_80169F30: -/* 80169F30 00166E90 80 08 00 00 */ lwz r0, 0(r8) -/* 80169F34 00166E94 7C 0B 00 00 */ cmpw r11, r0 -/* 80169F38 00166E98 41 80 FF D0 */ blt lbl_80169F08 -/* 80169F3C 00166E9C 38 E7 00 1C */ addi r7, r7, 0x1c -/* 80169F40 00166EA0 39 4A 00 01 */ addi r10, r10, 1 -lbl_80169F44: -/* 80169F44 00166EA4 80 68 00 00 */ lwz r3, 0(r8) -/* 80169F48 00166EA8 38 03 FF FF */ addi r0, r3, -1 -/* 80169F4C 00166EAC 7C 0A 00 00 */ cmpw r10, r0 -/* 80169F50 00166EB0 41 80 FF A8 */ blt lbl_80169EF8 -/* 80169F54 00166EB4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80169F58 00166EB8 7F E3 FB 78 */ mr r3, r31 -/* 80169F5C 00166EBC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80169F60 00166EC0 83 C1 00 08 */ lwz r30, 8(r1) -/* 80169F64 00166EC4 7C 08 03 A6 */ mtlr r0 -/* 80169F68 00166EC8 38 21 00 10 */ addi r1, r1, 0x10 -/* 80169F6C 00166ECC 4E 80 00 20 */ blr - -.global GetImagePaneName__16CPauseScreenBaseFUi -GetImagePaneName__16CPauseScreenBaseFUi: -/* 80169F70 00166ED0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80169F74 00166ED4 7C 08 02 A6 */ mflr r0 -/* 80169F78 00166ED8 3C 80 80 3D */ lis r4, lbl_803D0440@ha -/* 80169F7C 00166EDC 3C C0 80 3D */ lis r6, lbl_803D0490@ha -/* 80169F80 00166EE0 90 01 00 14 */ stw r0, 0x14(r1) -/* 80169F84 00166EE4 54 60 10 3A */ slwi r0, r3, 2 -/* 80169F88 00166EE8 3C A0 80 3D */ lis r5, lbl_803D0430@ha -/* 80169F8C 00166EEC 38 64 04 40 */ addi r3, r4, lbl_803D0440@l -/* 80169F90 00166EF0 38 85 04 30 */ addi r4, r5, lbl_803D0430@l -/* 80169F94 00166EF4 38 C6 04 90 */ addi r6, r6, lbl_803D0490@l -/* 80169F98 00166EF8 7C A3 00 2E */ lwzx r5, r3, r0 -/* 80169F9C 00166EFC 38 66 00 43 */ addi r3, r6, 0x43 -/* 80169FA0 00166F00 4C C6 31 82 */ crclr 6 -/* 80169FA4 00166F04 48 16 C2 0D */ bl Stringize__7CBasicsFPCce -/* 80169FA8 00166F08 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80169FAC 00166F0C 7C 08 03 A6 */ mtlr r0 -/* 80169FB0 00166F10 38 21 00 10 */ addi r1, r1, 0x10 -/* 80169FB4 00166F14 4E 80 00 20 */ blr - -.global GetSearchPath__8CMetroidFv -GetSearchPath__8CMetroidFv: -/* 80169FB8 00166F18 38 63 06 C0 */ addi r3, r3, 0x6c0 -/* 80169FBC 00166F1C 4E 80 00 20 */ blr - -.global IsListening__8CMetroidCFv -IsListening__8CMetroidCFv: -/* 80169FC0 00166F20 38 60 00 01 */ li r3, 1 -/* 80169FC4 00166F24 4E 80 00 20 */ blr - -.global sub_80169fc8 -sub_80169fc8: -/* 80169FC8 00166F28 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80169FCC 00166F2C 7C 08 02 A6 */ mflr r0 -/* 80169FD0 00166F30 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 80169FD4 00166F34 90 01 00 24 */ stw r0, 0x24(r1) -/* 80169FD8 00166F38 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80169FDC 00166F3C 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80169FE0 00166F40 7C 9E 23 78 */ mr r30, r4 -/* 80169FE4 00166F44 93 A1 00 14 */ stw r29, 0x14(r1) -/* 80169FE8 00166F48 7C 7D 1B 78 */ mr r29, r3 -/* 80169FEC 00166F4C C0 23 07 B4 */ lfs f1, 0x7b4(r3) -/* 80169FF0 00166F50 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80169FF4 00166F54 4C 40 13 82 */ cror 2, 0, 2 -/* 80169FF8 00166F58 40 82 00 BC */ bne lbl_8016A0B4 -/* 80169FFC 00166F5C 83 FE 08 4C */ lwz r31, 0x84c(r30) -/* 8016A000 00166F60 A0 BD 07 B0 */ lhz r5, 0x7b0(r29) -/* 8016A004 00166F64 A0 1F 00 08 */ lhz r0, 8(r31) -/* 8016A008 00166F68 7C 05 00 40 */ cmplw r5, r0 -/* 8016A00C 00166F6C 40 82 00 60 */ bne lbl_8016A06C -/* 8016A010 00166F70 48 00 01 71 */ bl sub_8016a180 -/* 8016A014 00166F74 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016A018 00166F78 40 82 00 20 */ bne lbl_8016A038 -/* 8016A01C 00166F7C 80 1F 02 F8 */ lwz r0, 0x2f8(r31) -/* 8016A020 00166F80 2C 00 00 01 */ cmpwi r0, 1 -/* 8016A024 00166F84 40 82 00 1C */ bne lbl_8016A040 -/* 8016A028 00166F88 80 7F 07 68 */ lwz r3, 0x768(r31) -/* 8016A02C 00166F8C 80 03 18 7C */ lwz r0, 0x187c(r3) -/* 8016A030 00166F90 2C 00 00 01 */ cmpwi r0, 1 -/* 8016A034 00166F94 40 82 00 0C */ bne lbl_8016A040 -lbl_8016A038: -/* 8016A038 00166F98 38 60 00 00 */ li r3, 0 -/* 8016A03C 00166F9C 48 00 00 7C */ b lbl_8016A0B8 -lbl_8016A040: -/* 8016A040 00166FA0 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 8016A044 00166FA4 80 03 02 F8 */ lwz r0, 0x2f8(r3) -/* 8016A048 00166FA8 2C 00 00 01 */ cmpwi r0, 1 -/* 8016A04C 00166FAC 41 82 00 20 */ beq lbl_8016A06C -/* 8016A050 00166FB0 7F A3 EB 78 */ mr r3, r29 -/* 8016A054 00166FB4 7F C4 F3 78 */ mr r4, r30 -/* 8016A058 00166FB8 48 00 04 C5 */ bl sub_8016a51c -/* 8016A05C 00166FBC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016A060 00166FC0 41 82 00 0C */ beq lbl_8016A06C -/* 8016A064 00166FC4 38 60 00 00 */ li r3, 0 -/* 8016A068 00166FC8 48 00 00 50 */ b lbl_8016A0B8 -lbl_8016A06C: -/* 8016A06C 00166FCC A0 1D 07 B0 */ lhz r0, 0x7b0(r29) -/* 8016A070 00166FD0 7F C3 F3 78 */ mr r3, r30 -/* 8016A074 00166FD4 38 81 00 08 */ addi r4, r1, 8 -/* 8016A078 00166FD8 B0 01 00 08 */ sth r0, 8(r1) -/* 8016A07C 00166FDC 4B EE 25 29 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8016A080 00166FE0 28 03 00 00 */ cmplwi r3, 0 -/* 8016A084 00166FE4 41 82 00 30 */ beq lbl_8016A0B4 -/* 8016A088 00166FE8 80 63 00 04 */ lwz r3, 4(r3) -/* 8016A08C 00166FEC 80 1D 00 04 */ lwz r0, 4(r29) -/* 8016A090 00166FF0 7C 03 00 00 */ cmpw r3, r0 -/* 8016A094 00166FF4 40 82 00 20 */ bne lbl_8016A0B4 -/* 8016A098 00166FF8 7F A3 EB 78 */ mr r3, r29 -/* 8016A09C 00166FFC 7F C4 F3 78 */ mr r4, r30 -/* 8016A0A0 00167000 48 00 05 49 */ bl sub_8016a5e8 -/* 8016A0A4 00167004 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 8016A0A8 00167008 7C 00 00 34 */ cntlzw r0, r0 -/* 8016A0AC 0016700C 54 03 D9 7E */ srwi r3, r0, 5 -/* 8016A0B0 00167010 48 00 00 08 */ b lbl_8016A0B8 -lbl_8016A0B4: -/* 8016A0B4 00167014 38 60 00 00 */ li r3, 0 -lbl_8016A0B8: -/* 8016A0B8 00167018 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8016A0BC 0016701C 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8016A0C0 00167020 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8016A0C4 00167024 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 8016A0C8 00167028 7C 08 03 A6 */ mtlr r0 -/* 8016A0CC 0016702C 38 21 00 20 */ addi r1, r1, 0x20 -/* 8016A0D0 00167030 4E 80 00 20 */ blr - -.global sub_8016a0d4 -sub_8016a0d4: -/* 8016A0D4 00167034 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8016A0D8 00167038 7C 08 02 A6 */ mflr r0 -/* 8016A0DC 0016703C 90 01 00 24 */ stw r0, 0x24(r1) -/* 8016A0E0 00167040 DB E1 00 10 */ stfd f31, 0x10(r1) -/* 8016A0E4 00167044 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 -/* 8016A0E8 00167048 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8016A0EC 0016704C 93 C1 00 08 */ stw r30, 8(r1) -/* 8016A0F0 00167050 FF E0 08 90 */ fmr f31, f1 -/* 8016A0F4 00167054 7C 7E 1B 78 */ mr r30, r3 -/* 8016A0F8 00167058 7C 9F 23 78 */ mr r31, r4 -/* 8016A0FC 0016705C 48 00 04 ED */ bl sub_8016a5e8 -/* 8016A100 00167060 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016A104 00167064 41 82 00 20 */ beq lbl_8016A124 -/* 8016A108 00167068 80 7F 09 00 */ lwz r3, 0x900(r31) -/* 8016A10C 0016706C 48 1A 83 D1 */ bl Float__9CRandom16Fv -/* 8016A110 00167070 C0 5E 03 08 */ lfs f2, 0x308(r30) -/* 8016A114 00167074 C0 1E 03 04 */ lfs f0, 0x304(r30) -/* 8016A118 00167078 EC 02 00 7A */ fmadds f0, f2, f1, f0 -/* 8016A11C 0016707C D0 1E 07 B4 */ stfs f0, 0x7b4(r30) -/* 8016A120 00167080 48 00 00 40 */ b lbl_8016A160 -lbl_8016A124: -/* 8016A124 00167084 C0 3E 07 B4 */ lfs f1, 0x7b4(r30) -/* 8016A128 00167088 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016A12C 0016708C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8016A130 00167090 40 81 00 30 */ ble lbl_8016A160 -/* 8016A134 00167094 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8016A138 00167098 80 03 02 F8 */ lwz r0, 0x2f8(r3) -/* 8016A13C 0016709C 2C 00 00 01 */ cmpwi r0, 1 -/* 8016A140 001670A0 40 82 00 10 */ bne lbl_8016A150 -/* 8016A144 001670A4 C0 02 A0 84 */ lfs f0, lbl_805ABDA4@sda21(r2) -/* 8016A148 001670A8 EC 20 07 F2 */ fmuls f1, f0, f31 -/* 8016A14C 001670AC 48 00 00 08 */ b lbl_8016A154 -lbl_8016A150: -/* 8016A150 001670B0 FC 20 F8 90 */ fmr f1, f31 -lbl_8016A154: -/* 8016A154 001670B4 C0 1E 07 B4 */ lfs f0, 0x7b4(r30) -/* 8016A158 001670B8 EC 00 08 28 */ fsubs f0, f0, f1 -/* 8016A15C 001670BC D0 1E 07 B4 */ stfs f0, 0x7b4(r30) -lbl_8016A160: -/* 8016A160 001670C0 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 -/* 8016A164 001670C4 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8016A168 001670C8 CB E1 00 10 */ lfd f31, 0x10(r1) -/* 8016A16C 001670CC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8016A170 001670D0 83 C1 00 08 */ lwz r30, 8(r1) -/* 8016A174 001670D4 7C 08 03 A6 */ mtlr r0 -/* 8016A178 001670D8 38 21 00 20 */ addi r1, r1, 0x20 -/* 8016A17C 001670DC 4E 80 00 20 */ blr - -.global sub_8016a180 -sub_8016a180: -/* 8016A180 001670E0 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 8016A184 001670E4 7C 08 02 A6 */ mflr r0 -/* 8016A188 001670E8 90 01 00 64 */ stw r0, 0x64(r1) -/* 8016A18C 001670EC DB E1 00 50 */ stfd f31, 0x50(r1) -/* 8016A190 001670F0 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 -/* 8016A194 001670F4 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 8016A198 001670F8 93 C1 00 48 */ stw r30, 0x48(r1) -/* 8016A19C 001670FC 83 E4 08 4C */ lwz r31, 0x84c(r4) -/* 8016A1A0 00167100 7C 9E 23 78 */ mr r30, r4 -/* 8016A1A4 00167104 88 1F 00 E6 */ lbz r0, 0xe6(r31) -/* 8016A1A8 00167108 54 00 DF 7F */ rlwinm. r0, r0, 0x1b, 0x1d, 0x1f -/* 8016A1AC 0016710C 41 82 00 8C */ beq lbl_8016A238 -/* 8016A1B0 00167110 A0 7F 00 C4 */ lhz r3, 0xc4(r31) -/* 8016A1B4 00167114 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016A1B8 00167118 7C 03 00 40 */ cmplw r3, r0 -/* 8016A1BC 0016711C 41 82 00 74 */ beq lbl_8016A230 -/* 8016A1C0 00167120 7F E4 FB 78 */ mr r4, r31 -/* 8016A1C4 00167124 7F C5 F3 78 */ mr r5, r30 -/* 8016A1C8 00167128 81 9F 00 00 */ lwz r12, 0(r31) -/* 8016A1CC 0016712C 38 61 00 18 */ addi r3, r1, 0x18 -/* 8016A1D0 00167130 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) -/* 8016A1D4 00167134 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 8016A1D8 00167138 7D 89 03 A6 */ mtctr r12 -/* 8016A1DC 0016713C 4E 80 04 21 */ bctrl -/* 8016A1E0 00167140 A0 1F 00 C4 */ lhz r0, 0xc4(r31) -/* 8016A1E4 00167144 7F C3 F3 78 */ mr r3, r30 -/* 8016A1E8 00167148 C3 E1 00 20 */ lfs f31, 0x20(r1) -/* 8016A1EC 0016714C 38 81 00 0C */ addi r4, r1, 0xc -/* 8016A1F0 00167150 B0 01 00 08 */ sth r0, 8(r1) -/* 8016A1F4 00167154 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8016A1F8 00167158 4B EE 23 AD */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8016A1FC 0016715C 7C 64 1B 78 */ mr r4, r3 -/* 8016A200 00167160 38 61 00 10 */ addi r3, r1, 0x10 -/* 8016A204 00167164 4B F3 C6 5D */ bl "__ct__26TCastToPtr<12CScriptWater>FP7CEntity" -/* 8016A208 00167168 80 83 00 04 */ lwz r4, 4(r3) -/* 8016A20C 0016716C 28 04 00 00 */ cmplwi r4, 0 -/* 8016A210 00167170 41 82 00 20 */ beq lbl_8016A230 -/* 8016A214 00167174 38 61 00 24 */ addi r3, r1, 0x24 -/* 8016A218 00167178 4B F0 C4 B5 */ bl GetTriggerBoundsWR__14CScriptTriggerCFv -/* 8016A21C 0016717C C0 01 00 38 */ lfs f0, 0x38(r1) -/* 8016A220 00167180 FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 8016A224 00167184 7C 00 00 26 */ mfcr r0 -/* 8016A228 00167188 54 03 0F FE */ srwi r3, r0, 0x1f -/* 8016A22C 0016718C 48 00 00 10 */ b lbl_8016A23C -lbl_8016A230: -/* 8016A230 00167190 38 60 00 01 */ li r3, 1 -/* 8016A234 00167194 48 00 00 08 */ b lbl_8016A23C -lbl_8016A238: -/* 8016A238 00167198 38 60 00 00 */ li r3, 0 -lbl_8016A23C: -/* 8016A23C 0016719C E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 -/* 8016A240 001671A0 80 01 00 64 */ lwz r0, 0x64(r1) -/* 8016A244 001671A4 CB E1 00 50 */ lfd f31, 0x50(r1) -/* 8016A248 001671A8 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 8016A24C 001671AC 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 8016A250 001671B0 7C 08 03 A6 */ mtlr r0 -/* 8016A254 001671B4 38 21 00 60 */ addi r1, r1, 0x60 -/* 8016A258 001671B8 4E 80 00 20 */ blr - -.global GetOrigin__8CMetroidCFv -GetOrigin__8CMetroidCFv: -/* 8016A25C 001671BC 94 21 FE F0 */ stwu r1, -0x110(r1) -/* 8016A260 001671C0 7C 08 02 A6 */ mflr r0 -/* 8016A264 001671C4 90 01 01 14 */ stw r0, 0x114(r1) -/* 8016A268 001671C8 DB E1 01 00 */ stfd f31, 0x100(r1) -/* 8016A26C 001671CC F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 -/* 8016A270 001671D0 DB C1 00 F0 */ stfd f30, 0xf0(r1) -/* 8016A274 001671D4 F3 C1 00 F8 */ psq_st f30, 248(r1), 0, qr0 -/* 8016A278 001671D8 DB A1 00 E0 */ stfd f29, 0xe0(r1) -/* 8016A27C 001671DC F3 A1 00 E8 */ psq_st f29, 232(r1), 0, qr0 -/* 8016A280 001671E0 DB 81 00 D0 */ stfd f28, 0xd0(r1) -/* 8016A284 001671E4 F3 81 00 D8 */ psq_st f28, 216(r1), 0, qr0 -/* 8016A288 001671E8 93 E1 00 CC */ stw r31, 0xcc(r1) -/* 8016A28C 001671EC 93 C1 00 C8 */ stw r30, 0xc8(r1) -/* 8016A290 001671F0 93 A1 00 C4 */ stw r29, 0xc4(r1) -/* 8016A294 001671F4 C0 24 02 FC */ lfs f1, 0x2fc(r4) -/* 8016A298 001671F8 7C 9E 23 78 */ mr r30, r4 -/* 8016A29C 001671FC C0 04 03 00 */ lfs f0, 0x300(r4) -/* 8016A2A0 00167200 7C 7D 1B 78 */ mr r29, r3 -/* 8016A2A4 00167204 83 E5 08 4C */ lwz r31, 0x84c(r5) -/* 8016A2A8 00167208 EC 01 00 2A */ fadds f0, f1, f0 -/* 8016A2AC 0016720C C0 A2 A0 88 */ lfs f5, lbl_805ABDA8@sda21(r2) -/* 8016A2B0 00167210 A0 C4 07 B0 */ lhz r6, 0x7b0(r4) -/* 8016A2B4 00167214 A0 1F 00 08 */ lhz r0, 8(r31) -/* 8016A2B8 00167218 EF C5 00 32 */ fmuls f30, f5, f0 -/* 8016A2BC 0016721C C3 A4 00 60 */ lfs f29, 0x60(r4) -/* 8016A2C0 00167220 7C 00 30 40 */ cmplw r0, r6 -/* 8016A2C4 00167224 C3 84 00 50 */ lfs f28, 0x50(r4) -/* 8016A2C8 00167228 C3 E4 00 40 */ lfs f31, 0x40(r4) -/* 8016A2CC 0016722C 40 82 01 08 */ bne lbl_8016A3D4 -/* 8016A2D0 00167230 80 1F 02 F8 */ lwz r0, 0x2f8(r31) -/* 8016A2D4 00167234 2C 00 00 01 */ cmpwi r0, 1 -/* 8016A2D8 00167238 40 82 00 D0 */ bne lbl_8016A3A8 -/* 8016A2DC 0016723C C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 8016A2E0 00167240 38 61 00 20 */ addi r3, r1, 0x20 -/* 8016A2E4 00167244 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 8016A2E8 00167248 EC 5C 08 28 */ fsubs f2, f28, f1 -/* 8016A2EC 0016724C C0 7F 00 60 */ lfs f3, 0x60(r31) -/* 8016A2F0 00167250 EC 3F 00 28 */ fsubs f1, f31, f0 -/* 8016A2F4 00167254 D3 E1 00 88 */ stfs f31, 0x88(r1) -/* 8016A2F8 00167258 EC 1D 18 28 */ fsubs f0, f29, f3 -/* 8016A2FC 0016725C D3 81 00 8C */ stfs f28, 0x8c(r1) -/* 8016A300 00167260 D3 A1 00 90 */ stfs f29, 0x90(r1) -/* 8016A304 00167264 D0 21 00 94 */ stfs f1, 0x94(r1) -/* 8016A308 00167268 D0 41 00 98 */ stfs f2, 0x98(r1) -/* 8016A30C 0016726C D0 01 00 9C */ stfs f0, 0x9c(r1) -/* 8016A310 00167270 48 1A 9E F1 */ bl __ct__9CVector2fFff -/* 8016A314 00167274 C0 41 00 20 */ lfs f2, 0x20(r1) -/* 8016A318 00167278 38 61 00 AC */ addi r3, r1, 0xac -/* 8016A31C 0016727C C0 21 00 24 */ lfs f1, 0x24(r1) -/* 8016A320 00167280 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016A324 00167284 D0 41 00 AC */ stfs f2, 0xac(r1) -/* 8016A328 00167288 D0 21 00 B0 */ stfs f1, 0xb0(r1) -/* 8016A32C 0016728C D0 01 00 B4 */ stfs f0, 0xb4(r1) -/* 8016A330 00167290 48 1A A3 C9 */ bl CanBeNormalized__9CVector3fCFv -/* 8016A334 00167294 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016A338 00167298 41 82 00 18 */ beq lbl_8016A350 -/* 8016A33C 0016729C 38 61 00 7C */ addi r3, r1, 0x7c -/* 8016A340 001672A0 38 81 00 AC */ addi r4, r1, 0xac -/* 8016A344 001672A4 48 1A A5 0D */ bl AsNormalized__9CVector3fCFv -/* 8016A348 001672A8 38 61 00 7C */ addi r3, r1, 0x7c -/* 8016A34C 001672AC 48 00 00 20 */ b lbl_8016A36C -lbl_8016A350: -/* 8016A350 001672B0 C0 5F 00 58 */ lfs f2, 0x58(r31) -/* 8016A354 001672B4 38 61 00 70 */ addi r3, r1, 0x70 -/* 8016A358 001672B8 C0 3F 00 48 */ lfs f1, 0x48(r31) -/* 8016A35C 001672BC C0 1F 00 38 */ lfs f0, 0x38(r31) -/* 8016A360 001672C0 D0 01 00 70 */ stfs f0, 0x70(r1) -/* 8016A364 001672C4 D0 21 00 74 */ stfs f1, 0x74(r1) -/* 8016A368 001672C8 D0 41 00 78 */ stfs f2, 0x78(r1) -lbl_8016A36C: -/* 8016A36C 001672CC C0 23 00 00 */ lfs f1, 0(r3) -/* 8016A370 001672D0 C0 03 00 04 */ lfs f0, 4(r3) -/* 8016A374 001672D4 EC 5E 00 72 */ fmuls f2, f30, f1 -/* 8016A378 001672D8 C0 BF 00 40 */ lfs f5, 0x40(r31) -/* 8016A37C 001672DC C0 7F 00 60 */ lfs f3, 0x60(r31) -/* 8016A380 001672E0 EC 3E 00 32 */ fmuls f1, f30, f0 -/* 8016A384 001672E4 C0 9F 00 50 */ lfs f4, 0x50(r31) -/* 8016A388 001672E8 C0 02 A0 88 */ lfs f0, lbl_805ABDA8@sda21(r2) -/* 8016A38C 001672EC EF E5 10 2A */ fadds f31, f5, f2 -/* 8016A390 001672F0 D0 A1 00 64 */ stfs f5, 0x64(r1) -/* 8016A394 001672F4 EF 84 08 2A */ fadds f28, f4, f1 -/* 8016A398 001672F8 EF A0 18 2A */ fadds f29, f0, f3 -/* 8016A39C 001672FC D0 81 00 68 */ stfs f4, 0x68(r1) -/* 8016A3A0 00167300 D0 61 00 6C */ stfs f3, 0x6c(r1) -/* 8016A3A4 00167304 48 00 01 30 */ b lbl_8016A4D4 -lbl_8016A3A8: -/* 8016A3A8 00167308 C0 1F 00 38 */ lfs f0, 0x38(r31) -/* 8016A3AC 0016730C C0 3F 00 48 */ lfs f1, 0x48(r31) -/* 8016A3B0 00167310 EC 7E 00 32 */ fmuls f3, f30, f0 -/* 8016A3B4 00167314 C0 87 00 00 */ lfs f4, 0(r7) -/* 8016A3B8 00167318 C0 07 00 08 */ lfs f0, 8(r7) -/* 8016A3BC 0016731C EC 3E 00 72 */ fmuls f1, f30, f1 -/* 8016A3C0 00167320 C0 47 00 04 */ lfs f2, 4(r7) -/* 8016A3C4 00167324 EF E4 18 2A */ fadds f31, f4, f3 -/* 8016A3C8 00167328 EF 82 08 2A */ fadds f28, f2, f1 -/* 8016A3CC 0016732C EF A5 00 2A */ fadds f29, f5, f0 -/* 8016A3D0 00167330 48 00 01 04 */ b lbl_8016A4D4 -lbl_8016A3D4: -/* 8016A3D4 00167334 B0 C1 00 08 */ sth r6, 8(r1) -/* 8016A3D8 00167338 7C A3 2B 78 */ mr r3, r5 -/* 8016A3DC 0016733C 38 81 00 0C */ addi r4, r1, 0xc -/* 8016A3E0 00167340 B0 C1 00 0C */ sth r6, 0xc(r1) -/* 8016A3E4 00167344 4B EE 21 C1 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8016A3E8 00167348 7C 64 1B 78 */ mr r4, r3 -/* 8016A3EC 0016734C 38 61 00 10 */ addi r3, r1, 0x10 -/* 8016A3F0 00167350 4B F4 58 A1 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8016A3F4 00167354 83 E3 00 04 */ lwz r31, 4(r3) -/* 8016A3F8 00167358 28 1F 00 00 */ cmplwi r31, 0 -/* 8016A3FC 0016735C 41 82 00 D8 */ beq lbl_8016A4D4 -/* 8016A400 00167360 C0 9E 00 50 */ lfs f4, 0x50(r30) -/* 8016A404 00167364 38 61 00 18 */ addi r3, r1, 0x18 -/* 8016A408 00167368 C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 8016A40C 0016736C C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 8016A410 00167370 EC 44 08 28 */ fsubs f2, f4, f1 -/* 8016A414 00167374 C0 3F 00 40 */ lfs f1, 0x40(r31) -/* 8016A418 00167378 C0 BE 00 60 */ lfs f5, 0x60(r30) -/* 8016A41C 0016737C C0 7F 00 60 */ lfs f3, 0x60(r31) -/* 8016A420 00167380 EC 20 08 28 */ fsubs f1, f0, f1 -/* 8016A424 00167384 D0 01 00 4C */ stfs f0, 0x4c(r1) -/* 8016A428 00167388 EC 65 18 28 */ fsubs f3, f5, f3 -/* 8016A42C 0016738C D0 81 00 50 */ stfs f4, 0x50(r1) -/* 8016A430 00167390 D0 A1 00 54 */ stfs f5, 0x54(r1) -/* 8016A434 00167394 D0 21 00 58 */ stfs f1, 0x58(r1) -/* 8016A438 00167398 D0 41 00 5C */ stfs f2, 0x5c(r1) -/* 8016A43C 0016739C D0 61 00 60 */ stfs f3, 0x60(r1) -/* 8016A440 001673A0 48 1A 9D C1 */ bl __ct__9CVector2fFff -/* 8016A444 001673A4 C0 41 00 18 */ lfs f2, 0x18(r1) -/* 8016A448 001673A8 38 61 00 A0 */ addi r3, r1, 0xa0 -/* 8016A44C 001673AC C0 21 00 1C */ lfs f1, 0x1c(r1) -/* 8016A450 001673B0 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016A454 001673B4 D0 41 00 A0 */ stfs f2, 0xa0(r1) -/* 8016A458 001673B8 D0 21 00 A4 */ stfs f1, 0xa4(r1) -/* 8016A45C 001673BC D0 01 00 A8 */ stfs f0, 0xa8(r1) -/* 8016A460 001673C0 48 1A A2 99 */ bl CanBeNormalized__9CVector3fCFv -/* 8016A464 001673C4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016A468 001673C8 41 82 00 18 */ beq lbl_8016A480 -/* 8016A46C 001673CC 38 61 00 40 */ addi r3, r1, 0x40 -/* 8016A470 001673D0 38 81 00 A0 */ addi r4, r1, 0xa0 -/* 8016A474 001673D4 48 1A A3 DD */ bl AsNormalized__9CVector3fCFv -/* 8016A478 001673D8 38 61 00 40 */ addi r3, r1, 0x40 -/* 8016A47C 001673DC 48 00 00 20 */ b lbl_8016A49C -lbl_8016A480: -/* 8016A480 001673E0 C0 5F 00 58 */ lfs f2, 0x58(r31) -/* 8016A484 001673E4 38 61 00 34 */ addi r3, r1, 0x34 -/* 8016A488 001673E8 C0 3F 00 48 */ lfs f1, 0x48(r31) -/* 8016A48C 001673EC C0 1F 00 38 */ lfs f0, 0x38(r31) -/* 8016A490 001673F0 D0 01 00 34 */ stfs f0, 0x34(r1) -/* 8016A494 001673F4 D0 21 00 38 */ stfs f1, 0x38(r1) -/* 8016A498 001673F8 D0 41 00 3C */ stfs f2, 0x3c(r1) -lbl_8016A49C: -/* 8016A49C 001673FC C0 23 00 00 */ lfs f1, 0(r3) -/* 8016A4A0 00167400 C0 03 00 04 */ lfs f0, 4(r3) -/* 8016A4A4 00167404 EC 5E 00 72 */ fmuls f2, f30, f1 -/* 8016A4A8 00167408 C0 BF 00 40 */ lfs f5, 0x40(r31) -/* 8016A4AC 0016740C C0 7F 00 60 */ lfs f3, 0x60(r31) -/* 8016A4B0 00167410 EC 3E 00 32 */ fmuls f1, f30, f0 -/* 8016A4B4 00167414 C0 9F 00 50 */ lfs f4, 0x50(r31) -/* 8016A4B8 00167418 C0 02 A0 88 */ lfs f0, lbl_805ABDA8@sda21(r2) -/* 8016A4BC 0016741C EF E5 10 2A */ fadds f31, f5, f2 -/* 8016A4C0 00167420 D0 A1 00 28 */ stfs f5, 0x28(r1) -/* 8016A4C4 00167424 EF 84 08 2A */ fadds f28, f4, f1 -/* 8016A4C8 00167428 EF A0 18 2A */ fadds f29, f0, f3 -/* 8016A4CC 0016742C D0 81 00 2C */ stfs f4, 0x2c(r1) -/* 8016A4D0 00167430 D0 61 00 30 */ stfs f3, 0x30(r1) -lbl_8016A4D4: -/* 8016A4D4 00167434 D3 FD 00 00 */ stfs f31, 0(r29) -/* 8016A4D8 00167438 D3 9D 00 04 */ stfs f28, 4(r29) -/* 8016A4DC 0016743C D3 BD 00 08 */ stfs f29, 8(r29) -/* 8016A4E0 00167440 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 -/* 8016A4E4 00167444 CB E1 01 00 */ lfd f31, 0x100(r1) -/* 8016A4E8 00167448 E3 C1 00 F8 */ psq_l f30, 248(r1), 0, qr0 -/* 8016A4EC 0016744C CB C1 00 F0 */ lfd f30, 0xf0(r1) -/* 8016A4F0 00167450 E3 A1 00 E8 */ psq_l f29, 232(r1), 0, qr0 -/* 8016A4F4 00167454 CB A1 00 E0 */ lfd f29, 0xe0(r1) -/* 8016A4F8 00167458 E3 81 00 D8 */ psq_l f28, 216(r1), 0, qr0 -/* 8016A4FC 0016745C CB 81 00 D0 */ lfd f28, 0xd0(r1) -/* 8016A500 00167460 83 E1 00 CC */ lwz r31, 0xcc(r1) -/* 8016A504 00167464 83 C1 00 C8 */ lwz r30, 0xc8(r1) -/* 8016A508 00167468 80 01 01 14 */ lwz r0, 0x114(r1) -/* 8016A50C 0016746C 83 A1 00 C4 */ lwz r29, 0xc4(r1) -/* 8016A510 00167470 7C 08 03 A6 */ mtlr r0 -/* 8016A514 00167474 38 21 01 10 */ addi r1, r1, 0x110 -/* 8016A518 00167478 4E 80 00 20 */ blr - -.global sub_8016a51c -sub_8016a51c: -/* 8016A51C 0016747C 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8016A520 00167480 7C 08 02 A6 */ mflr r0 -/* 8016A524 00167484 90 01 00 34 */ stw r0, 0x34(r1) -/* 8016A528 00167488 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8016A52C 0016748C 93 C1 00 28 */ stw r30, 0x28(r1) -/* 8016A530 00167490 93 A1 00 24 */ stw r29, 0x24(r1) -/* 8016A534 00167494 7C 9D 23 78 */ mr r29, r4 -/* 8016A538 00167498 38 81 00 0C */ addi r4, r1, 0xc -/* 8016A53C 0016749C A0 03 06 98 */ lhz r0, 0x698(r3) -/* 8016A540 001674A0 7F A3 EB 78 */ mr r3, r29 -/* 8016A544 001674A4 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8016A548 001674A8 4B EE 20 5D */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8016A54C 001674AC 7C 64 1B 78 */ mr r4, r3 -/* 8016A550 001674B0 38 61 00 14 */ addi r3, r1, 0x14 -/* 8016A554 001674B4 4B F3 D0 21 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" -/* 8016A558 001674B8 83 C3 00 04 */ lwz r30, 4(r3) -/* 8016A55C 001674BC 28 1E 00 00 */ cmplwi r30, 0 -/* 8016A560 001674C0 41 82 00 68 */ beq lbl_8016A5C8 -/* 8016A564 001674C4 80 1E 00 7C */ lwz r0, 0x7c(r30) -/* 8016A568 001674C8 28 00 00 00 */ cmplwi r0, 0 -/* 8016A56C 001674CC 41 82 00 5C */ beq lbl_8016A5C8 -/* 8016A570 001674D0 83 FE 00 84 */ lwz r31, 0x84(r30) -/* 8016A574 001674D4 48 00 00 3C */ b lbl_8016A5B0 -lbl_8016A578: -/* 8016A578 001674D8 A0 1F 00 00 */ lhz r0, 0(r31) -/* 8016A57C 001674DC 7F A3 EB 78 */ mr r3, r29 -/* 8016A580 001674E0 38 81 00 08 */ addi r4, r1, 8 -/* 8016A584 001674E4 B0 01 00 08 */ sth r0, 8(r1) -/* 8016A588 001674E8 4B EE 20 1D */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8016A58C 001674EC 7C 64 1B 78 */ mr r4, r3 -/* 8016A590 001674F0 38 61 00 10 */ addi r3, r1, 0x10 -/* 8016A594 001674F4 4B F3 AF 0D */ bl sub_800a54a0 -/* 8016A598 001674F8 4B F3 AE DD */ bl "CastTo<12CMetroidBeta>__10CPatternedFP7CEntity" -/* 8016A59C 001674FC 28 03 00 00 */ cmplwi r3, 0 -/* 8016A5A0 00167500 41 82 00 0C */ beq lbl_8016A5AC -/* 8016A5A4 00167504 38 60 00 01 */ li r3, 1 -/* 8016A5A8 00167508 48 00 00 24 */ b lbl_8016A5CC -lbl_8016A5AC: -/* 8016A5AC 0016750C 3B FF 00 02 */ addi r31, r31, 2 -lbl_8016A5B0: -/* 8016A5B0 00167510 80 1E 00 7C */ lwz r0, 0x7c(r30) -/* 8016A5B4 00167514 80 7E 00 84 */ lwz r3, 0x84(r30) -/* 8016A5B8 00167518 54 00 08 3C */ slwi r0, r0, 1 -/* 8016A5BC 0016751C 7C 03 02 14 */ add r0, r3, r0 -/* 8016A5C0 00167520 7C 1F 00 40 */ cmplw r31, r0 -/* 8016A5C4 00167524 40 82 FF B4 */ bne lbl_8016A578 -lbl_8016A5C8: -/* 8016A5C8 00167528 38 60 00 00 */ li r3, 0 -lbl_8016A5CC: -/* 8016A5CC 0016752C 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8016A5D0 00167530 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8016A5D4 00167534 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 8016A5D8 00167538 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 8016A5DC 0016753C 7C 08 03 A6 */ mtlr r0 -/* 8016A5E0 00167540 38 21 00 30 */ addi r1, r1, 0x30 -/* 8016A5E4 00167544 4E 80 00 20 */ blr - -.global sub_8016a5e8 -sub_8016a5e8: -/* 8016A5E8 00167548 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8016A5EC 0016754C 7C 08 02 A6 */ mflr r0 -/* 8016A5F0 00167550 90 01 00 34 */ stw r0, 0x34(r1) -/* 8016A5F4 00167554 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8016A5F8 00167558 7C 9F 23 78 */ mr r31, r4 -/* 8016A5FC 0016755C 38 81 00 0C */ addi r4, r1, 0xc -/* 8016A600 00167560 93 C1 00 28 */ stw r30, 0x28(r1) -/* 8016A604 00167564 7C 7E 1B 78 */ mr r30, r3 -/* 8016A608 00167568 A0 03 07 B0 */ lhz r0, 0x7b0(r3) -/* 8016A60C 0016756C 7F E3 FB 78 */ mr r3, r31 -/* 8016A610 00167570 B0 01 00 08 */ sth r0, 8(r1) -/* 8016A614 00167574 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8016A618 00167578 4B EE 1F 8D */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8016A61C 0016757C 7C 64 1B 78 */ mr r4, r3 -/* 8016A620 00167580 38 61 00 14 */ addi r3, r1, 0x14 -/* 8016A624 00167584 4B F4 56 6D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8016A628 00167588 80 83 00 04 */ lwz r4, 4(r3) -/* 8016A62C 0016758C 28 04 00 00 */ cmplwi r4, 0 -/* 8016A630 00167590 41 82 00 74 */ beq lbl_8016A6A4 -/* 8016A634 00167594 80 BF 08 4C */ lwz r5, 0x84c(r31) -/* 8016A638 00167598 A0 1E 07 B0 */ lhz r0, 0x7b0(r30) -/* 8016A63C 0016759C A0 65 00 08 */ lhz r3, 8(r5) -/* 8016A640 001675A0 7C 03 00 40 */ cmplw r3, r0 -/* 8016A644 001675A4 40 82 00 28 */ bne lbl_8016A66C -/* 8016A648 001675A8 A0 65 02 6C */ lhz r3, 0x26c(r5) -/* 8016A64C 001675AC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016A650 001675B0 7C 03 00 40 */ cmplw r3, r0 -/* 8016A654 001675B4 41 82 00 50 */ beq lbl_8016A6A4 -/* 8016A658 001675B8 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8016A65C 001675BC 7C 03 00 40 */ cmplw r3, r0 -/* 8016A660 001675C0 41 82 00 44 */ beq lbl_8016A6A4 -/* 8016A664 001675C4 38 60 00 01 */ li r3, 1 -/* 8016A668 001675C8 48 00 00 40 */ b lbl_8016A6A8 -lbl_8016A66C: -/* 8016A66C 001675CC 38 61 00 10 */ addi r3, r1, 0x10 -/* 8016A670 001675D0 4B F3 AD 61 */ bl sub_800a53d0 -/* 8016A674 001675D4 4B F3 AD 31 */ bl "CastTo<12CSpacePirate>__10CPatternedFP7CEntity" -/* 8016A678 001675D8 28 03 00 00 */ cmplwi r3, 0 -/* 8016A67C 001675DC 41 82 00 28 */ beq lbl_8016A6A4 -/* 8016A680 001675E0 A0 63 07 B4 */ lhz r3, 0x7b4(r3) -/* 8016A684 001675E4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016A688 001675E8 7C 03 00 40 */ cmplw r3, r0 -/* 8016A68C 001675EC 41 82 00 18 */ beq lbl_8016A6A4 -/* 8016A690 001675F0 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8016A694 001675F4 7C 03 00 40 */ cmplw r3, r0 -/* 8016A698 001675F8 41 82 00 0C */ beq lbl_8016A6A4 -/* 8016A69C 001675FC 38 60 00 01 */ li r3, 1 -/* 8016A6A0 00167600 48 00 00 08 */ b lbl_8016A6A8 -lbl_8016A6A4: -/* 8016A6A4 00167604 38 60 00 00 */ li r3, 0 -lbl_8016A6A8: -/* 8016A6A8 00167608 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8016A6AC 0016760C 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8016A6B0 00167610 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 8016A6B4 00167614 7C 08 03 A6 */ mtlr r0 -/* 8016A6B8 00167618 38 21 00 30 */ addi r1, r1, 0x30 -/* 8016A6BC 0016761C 4E 80 00 20 */ blr - -.global sub_8016a6c0 -sub_8016a6c0: -/* 8016A6C0 00167620 94 21 FF 50 */ stwu r1, -0xb0(r1) -/* 8016A6C4 00167624 7C 08 02 A6 */ mflr r0 -/* 8016A6C8 00167628 90 01 00 B4 */ stw r0, 0xb4(r1) -/* 8016A6CC 0016762C DB E1 00 A0 */ stfd f31, 0xa0(r1) -/* 8016A6D0 00167630 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 -/* 8016A6D4 00167634 93 E1 00 9C */ stw r31, 0x9c(r1) -/* 8016A6D8 00167638 93 C1 00 98 */ stw r30, 0x98(r1) -/* 8016A6DC 0016763C 93 A1 00 94 */ stw r29, 0x94(r1) -/* 8016A6E0 00167640 7C 9D 23 78 */ mr r29, r4 -/* 8016A6E4 00167644 C3 E2 A0 80 */ lfs f31, lbl_805ABDA0@sda21(r2) -/* 8016A6E8 00167648 80 84 00 64 */ lwz r4, 0x64(r4) -/* 8016A6EC 0016764C 38 60 00 00 */ li r3, 0 -/* 8016A6F0 00167650 28 04 00 00 */ cmplwi r4, 0 -/* 8016A6F4 00167654 41 82 00 20 */ beq lbl_8016A714 -/* 8016A6F8 00167658 80 04 00 10 */ lwz r0, 0x10(r4) -/* 8016A6FC 0016765C 28 00 00 00 */ cmplwi r0, 0 -/* 8016A700 00167660 40 82 00 10 */ bne lbl_8016A710 -/* 8016A704 00167664 88 04 00 28 */ lbz r0, 0x28(r4) -/* 8016A708 00167668 28 00 00 00 */ cmplwi r0, 0 -/* 8016A70C 0016766C 41 82 00 08 */ beq lbl_8016A714 -lbl_8016A710: -/* 8016A710 00167670 38 60 00 01 */ li r3, 1 -lbl_8016A714: -/* 8016A714 00167674 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016A718 00167678 41 82 00 80 */ beq lbl_8016A798 -/* 8016A71C 0016767C 3C 60 80 3D */ lis r3, lbl_803D04D8@ha -/* 8016A720 00167680 3B C0 00 00 */ li r30, 0 -/* 8016A724 00167684 3B E3 04 D8 */ addi r31, r3, lbl_803D04D8@l -lbl_8016A728: -/* 8016A728 00167688 80 9F 00 00 */ lwz r4, 0(r31) -/* 8016A72C 0016768C 38 61 00 14 */ addi r3, r1, 0x14 -/* 8016A730 00167690 4B E9 A5 89 */ bl string_l__4rstlFPCc -/* 8016A734 00167694 7F A4 EB 78 */ mr r4, r29 -/* 8016A738 00167698 38 61 00 24 */ addi r3, r1, 0x24 -/* 8016A73C 0016769C 38 A1 00 14 */ addi r5, r1, 0x14 -/* 8016A740 001676A0 4B EE 87 C1 */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8016A744 001676A4 38 61 00 54 */ addi r3, r1, 0x54 -/* 8016A748 001676A8 38 81 00 24 */ addi r4, r1, 0x24 -/* 8016A74C 001676AC 48 1A 84 29 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8016A750 001676B0 38 61 00 14 */ addi r3, r1, 0x14 -/* 8016A754 001676B4 48 1D 33 8D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 8016A758 001676B8 80 7D 00 64 */ lwz r3, 0x64(r29) -/* 8016A75C 001676BC C0 21 00 80 */ lfs f1, 0x80(r1) -/* 8016A760 001676C0 C0 03 00 08 */ lfs f0, 8(r3) -/* 8016A764 001676C4 C0 43 00 00 */ lfs f2, 0(r3) -/* 8016A768 001676C8 EC 61 00 32 */ fmuls f3, f1, f0 -/* 8016A76C 001676CC C0 23 00 04 */ lfs f1, 4(r3) -/* 8016A770 001676D0 D0 41 00 08 */ stfs f2, 8(r1) -/* 8016A774 001676D4 FC 03 F8 40 */ fcmpo cr0, f3, f31 -/* 8016A778 001676D8 D0 21 00 0C */ stfs f1, 0xc(r1) -/* 8016A77C 001676DC D0 01 00 10 */ stfs f0, 0x10(r1) -/* 8016A780 001676E0 40 81 00 08 */ ble lbl_8016A788 -/* 8016A784 001676E4 FF E0 18 90 */ fmr f31, f3 -lbl_8016A788: -/* 8016A788 001676E8 3B DE 00 01 */ addi r30, r30, 1 -/* 8016A78C 001676EC 3B FF 00 04 */ addi r31, r31, 4 -/* 8016A790 001676F0 28 1E 00 11 */ cmplwi r30, 0x11 -/* 8016A794 001676F4 41 80 FF 94 */ blt lbl_8016A728 -lbl_8016A798: -/* 8016A798 001676F8 FC 20 F8 90 */ fmr f1, f31 -/* 8016A79C 001676FC E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 -/* 8016A7A0 00167700 80 01 00 B4 */ lwz r0, 0xb4(r1) -/* 8016A7A4 00167704 CB E1 00 A0 */ lfd f31, 0xa0(r1) -/* 8016A7A8 00167708 83 E1 00 9C */ lwz r31, 0x9c(r1) -/* 8016A7AC 0016770C 83 C1 00 98 */ lwz r30, 0x98(r1) -/* 8016A7B0 00167710 83 A1 00 94 */ lwz r29, 0x94(r1) -/* 8016A7B4 00167714 7C 08 03 A6 */ mtlr r0 -/* 8016A7B8 00167718 38 21 00 B0 */ addi r1, r1, 0xb0 -/* 8016A7BC 0016771C 4E 80 00 20 */ blr - -.global sub_8016a7c0 -sub_8016a7c0: -/* 8016A7C0 00167720 94 21 FE 50 */ stwu r1, -0x1b0(r1) -/* 8016A7C4 00167724 7C 08 02 A6 */ mflr r0 -/* 8016A7C8 00167728 90 01 01 B4 */ stw r0, 0x1b4(r1) -/* 8016A7CC 0016772C 93 E1 01 AC */ stw r31, 0x1ac(r1) -/* 8016A7D0 00167730 93 C1 01 A8 */ stw r30, 0x1a8(r1) -/* 8016A7D4 00167734 7C DE 33 78 */ mr r30, r6 -/* 8016A7D8 00167738 93 A1 01 A4 */ stw r29, 0x1a4(r1) -/* 8016A7DC 0016773C 7C BD 2B 78 */ mr r29, r5 -/* 8016A7E0 00167740 A0 03 07 B0 */ lhz r0, 0x7b0(r3) -/* 8016A7E4 00167744 7C 83 23 78 */ mr r3, r4 -/* 8016A7E8 00167748 38 81 00 0C */ addi r4, r1, 0xc -/* 8016A7EC 0016774C B0 01 00 08 */ sth r0, 8(r1) -/* 8016A7F0 00167750 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8016A7F4 00167754 4B EE 1D B1 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8016A7F8 00167758 7C 64 1B 78 */ mr r4, r3 -/* 8016A7FC 0016775C 38 61 00 14 */ addi r3, r1, 0x14 -/* 8016A800 00167760 4B F4 54 91 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8016A804 00167764 83 E3 00 04 */ lwz r31, 4(r3) -/* 8016A808 00167768 28 1F 00 00 */ cmplwi r31, 0 -/* 8016A80C 0016776C 41 82 01 E8 */ beq lbl_8016A9F4 -/* 8016A810 00167770 80 82 A0 78 */ lwz r4, lbl_805ABD98@sda21(r2) -/* 8016A814 00167774 38 61 00 80 */ addi r3, r1, 0x80 -/* 8016A818 00167778 4B E9 A4 A1 */ bl string_l__4rstlFPCc -/* 8016A81C 0016777C 7F E4 FB 78 */ mr r4, r31 -/* 8016A820 00167780 38 61 01 0C */ addi r3, r1, 0x10c -/* 8016A824 00167784 38 A1 00 80 */ addi r5, r1, 0x80 -/* 8016A828 00167788 4B EE 86 D9 */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8016A82C 0016778C 38 61 01 6C */ addi r3, r1, 0x16c -/* 8016A830 00167790 38 81 01 0C */ addi r4, r1, 0x10c -/* 8016A834 00167794 48 1A 83 41 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8016A838 00167798 38 61 00 80 */ addi r3, r1, 0x80 -/* 8016A83C 0016779C 48 1D 32 A5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 8016A840 001677A0 80 82 A0 7C */ lwz r4, lbl_805ABD9C@sda21(r2) -/* 8016A844 001677A4 38 61 00 70 */ addi r3, r1, 0x70 -/* 8016A848 001677A8 4B E9 A4 71 */ bl string_l__4rstlFPCc -/* 8016A84C 001677AC 7F E4 FB 78 */ mr r4, r31 -/* 8016A850 001677B0 38 61 00 DC */ addi r3, r1, 0xdc -/* 8016A854 001677B4 38 A1 00 70 */ addi r5, r1, 0x70 -/* 8016A858 001677B8 4B EE 86 A9 */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8016A85C 001677BC 38 61 01 3C */ addi r3, r1, 0x13c -/* 8016A860 001677C0 38 81 00 DC */ addi r4, r1, 0xdc -/* 8016A864 001677C4 48 1A 83 11 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8016A868 001677C8 38 61 00 70 */ addi r3, r1, 0x70 -/* 8016A86C 001677CC 48 1D 32 75 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 8016A870 001677D0 C0 62 A0 8C */ lfs f3, lbl_805ABDAC@sda21(r2) -/* 8016A874 001677D4 38 61 00 64 */ addi r3, r1, 0x64 -/* 8016A878 001677D8 C0 41 01 64 */ lfs f2, 0x164(r1) -/* 8016A87C 001677DC 38 9F 00 34 */ addi r4, r31, 0x34 -/* 8016A880 001677E0 C0 21 01 54 */ lfs f1, 0x154(r1) -/* 8016A884 001677E4 38 A1 00 A0 */ addi r5, r1, 0xa0 -/* 8016A888 001677E8 C0 01 01 44 */ lfs f0, 0x144(r1) -/* 8016A88C 001677EC EC 83 00 B2 */ fmuls f4, f3, f2 -/* 8016A890 001677F0 80 DF 00 64 */ lwz r6, 0x64(r31) -/* 8016A894 001677F4 EC 43 00 72 */ fmuls f2, f3, f1 -/* 8016A898 001677F8 C0 A1 01 98 */ lfs f5, 0x198(r1) -/* 8016A89C 001677FC EC 03 00 32 */ fmuls f0, f3, f0 -/* 8016A8A0 00167800 C0 61 01 88 */ lfs f3, 0x188(r1) -/* 8016A8A4 00167804 C0 21 01 78 */ lfs f1, 0x178(r1) -/* 8016A8A8 00167808 EC 85 20 2A */ fadds f4, f5, f4 -/* 8016A8AC 0016780C C0 A6 00 08 */ lfs f5, 8(r6) -/* 8016A8B0 00167810 EC 43 10 2A */ fadds f2, f3, f2 -/* 8016A8B4 00167814 C0 66 00 04 */ lfs f3, 4(r6) -/* 8016A8B8 00167818 EC 01 00 2A */ fadds f0, f1, f0 -/* 8016A8BC 0016781C C0 26 00 00 */ lfs f1, 0(r6) -/* 8016A8C0 00167820 EC 85 01 32 */ fmuls f4, f5, f4 -/* 8016A8C4 00167824 EC 43 00 B2 */ fmuls f2, f3, f2 -/* 8016A8C8 00167828 EC 01 00 32 */ fmuls f0, f1, f0 -/* 8016A8CC 0016782C D0 81 00 A8 */ stfs f4, 0xa8(r1) -/* 8016A8D0 00167830 D0 01 00 A0 */ stfs f0, 0xa0(r1) -/* 8016A8D4 00167834 D0 41 00 A4 */ stfs f2, 0xa4(r1) -/* 8016A8D8 00167838 48 1A 81 A9 */ bl Rotate__12CTransform4fCFRC9CVector3f -/* 8016A8DC 0016783C C0 3F 00 40 */ lfs f1, 0x40(r31) -/* 8016A8E0 00167840 38 61 00 58 */ addi r3, r1, 0x58 -/* 8016A8E4 00167844 C0 01 00 64 */ lfs f0, 0x64(r1) -/* 8016A8E8 00167848 38 9F 00 34 */ addi r4, r31, 0x34 -/* 8016A8EC 0016784C C0 9F 00 50 */ lfs f4, 0x50(r31) -/* 8016A8F0 00167850 38 A1 00 4C */ addi r5, r1, 0x4c -/* 8016A8F4 00167854 C0 61 00 68 */ lfs f3, 0x68(r1) -/* 8016A8F8 00167858 EC 01 00 2A */ fadds f0, f1, f0 -/* 8016A8FC 0016785C C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 8016A900 00167860 C0 21 00 6C */ lfs f1, 0x6c(r1) -/* 8016A904 00167864 EC 64 18 2A */ fadds f3, f4, f3 -/* 8016A908 00167868 D0 1D 00 00 */ stfs f0, 0(r29) -/* 8016A90C 0016786C EC 02 08 2A */ fadds f0, f2, f1 -/* 8016A910 00167870 D0 7D 00 04 */ stfs f3, 4(r29) -/* 8016A914 00167874 D0 1D 00 08 */ stfs f0, 8(r29) -/* 8016A918 00167878 C0 41 01 40 */ lfs f2, 0x140(r1) -/* 8016A91C 0016787C C0 21 01 50 */ lfs f1, 0x150(r1) -/* 8016A920 00167880 C0 01 01 60 */ lfs f0, 0x160(r1) -/* 8016A924 00167884 D0 41 00 4C */ stfs f2, 0x4c(r1) -/* 8016A928 00167888 D0 21 00 50 */ stfs f1, 0x50(r1) -/* 8016A92C 0016788C D0 01 00 54 */ stfs f0, 0x54(r1) -/* 8016A930 00167890 48 1A 81 51 */ bl Rotate__12CTransform4fCFRC9CVector3f -/* 8016A934 00167894 C0 82 A0 90 */ lfs f4, lbl_805ABDB0@sda21(r2) -/* 8016A938 00167898 38 61 00 AC */ addi r3, r1, 0xac -/* 8016A93C 0016789C C0 01 00 58 */ lfs f0, 0x58(r1) -/* 8016A940 001678A0 38 9F 00 34 */ addi r4, r31, 0x34 -/* 8016A944 001678A4 C0 61 00 5C */ lfs f3, 0x5c(r1) -/* 8016A948 001678A8 38 A1 01 3C */ addi r5, r1, 0x13c -/* 8016A94C 001678AC EC 04 00 32 */ fmuls f0, f4, f0 -/* 8016A950 001678B0 C0 3D 00 00 */ lfs f1, 0(r29) -/* 8016A954 001678B4 C0 41 00 60 */ lfs f2, 0x60(r1) -/* 8016A958 001678B8 EC 64 00 F2 */ fmuls f3, f4, f3 -/* 8016A95C 001678BC EC 01 00 2A */ fadds f0, f1, f0 -/* 8016A960 001678C0 EC 24 00 B2 */ fmuls f1, f4, f2 -/* 8016A964 001678C4 D0 1D 00 00 */ stfs f0, 0(r29) -/* 8016A968 001678C8 C0 1D 00 04 */ lfs f0, 4(r29) -/* 8016A96C 001678CC EC 00 18 2A */ fadds f0, f0, f3 -/* 8016A970 001678D0 D0 1D 00 04 */ stfs f0, 4(r29) -/* 8016A974 001678D4 C0 1D 00 08 */ lfs f0, 8(r29) -/* 8016A978 001678D8 EC 00 08 2A */ fadds f0, f0, f1 -/* 8016A97C 001678DC D0 1D 00 08 */ stfs f0, 8(r29) -/* 8016A980 001678E0 48 1A 7F D1 */ bl __ml__12CTransform4fCFRC12CTransform4f -/* 8016A984 001678E4 38 61 00 3C */ addi r3, r1, 0x3c -/* 8016A988 001678E8 38 81 00 AC */ addi r4, r1, 0xac -/* 8016A98C 001678EC 48 1A 77 9D */ bl FromMatrix__11CQuaternionFRC12CTransform4f -/* 8016A990 001678F0 C0 81 00 3C */ lfs f4, 0x3c(r1) -/* 8016A994 001678F4 38 61 00 1C */ addi r3, r1, 0x1c -/* 8016A998 001678F8 C0 61 00 40 */ lfs f3, 0x40(r1) -/* 8016A99C 001678FC 38 81 00 10 */ addi r4, r1, 0x10 -/* 8016A9A0 00167900 C0 41 00 44 */ lfs f2, 0x44(r1) -/* 8016A9A4 00167904 C0 21 00 48 */ lfs f1, 0x48(r1) -/* 8016A9A8 00167908 C0 02 A0 94 */ lfs f0, lbl_805ABDB4@sda21(r2) -/* 8016A9AC 0016790C D0 81 00 90 */ stfs f4, 0x90(r1) -/* 8016A9B0 00167910 D0 61 00 94 */ stfs f3, 0x94(r1) -/* 8016A9B4 00167914 D0 41 00 98 */ stfs f2, 0x98(r1) -/* 8016A9B8 00167918 D0 21 00 9C */ stfs f1, 0x9c(r1) -/* 8016A9BC 0016791C D0 01 00 10 */ stfs f0, 0x10(r1) -/* 8016A9C0 00167920 48 1A 67 39 */ bl ZRotation__11CQuaternionFRC9CRelAngle -/* 8016A9C4 00167924 38 61 00 2C */ addi r3, r1, 0x2c -/* 8016A9C8 00167928 38 81 00 90 */ addi r4, r1, 0x90 -/* 8016A9CC 0016792C 38 A1 00 1C */ addi r5, r1, 0x1c -/* 8016A9D0 00167930 48 1A 67 D1 */ bl __ml__11CQuaternionCFRC11CQuaternion -/* 8016A9D4 00167934 C0 01 00 2C */ lfs f0, 0x2c(r1) -/* 8016A9D8 00167938 D0 1E 00 00 */ stfs f0, 0(r30) -/* 8016A9DC 0016793C 80 61 00 30 */ lwz r3, 0x30(r1) -/* 8016A9E0 00167940 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8016A9E4 00167944 90 7E 00 04 */ stw r3, 4(r30) -/* 8016A9E8 00167948 90 1E 00 08 */ stw r0, 8(r30) -/* 8016A9EC 0016794C 80 01 00 38 */ lwz r0, 0x38(r1) -/* 8016A9F0 00167950 90 1E 00 0C */ stw r0, 0xc(r30) -lbl_8016A9F4: -/* 8016A9F4 00167954 80 01 01 B4 */ lwz r0, 0x1b4(r1) -/* 8016A9F8 00167958 83 E1 01 AC */ lwz r31, 0x1ac(r1) -/* 8016A9FC 0016795C 83 C1 01 A8 */ lwz r30, 0x1a8(r1) -/* 8016AA00 00167960 83 A1 01 A4 */ lwz r29, 0x1a4(r1) -/* 8016AA04 00167964 7C 08 03 A6 */ mtlr r0 -/* 8016AA08 00167968 38 21 01 B0 */ addi r1, r1, 0x1b0 -/* 8016AA0C 0016796C 4E 80 00 20 */ blr - -.global sub_8016aa10 -sub_8016aa10: -/* 8016AA10 00167970 94 21 FC A0 */ stwu r1, -0x360(r1) -/* 8016AA14 00167974 7C 08 02 A6 */ mflr r0 -/* 8016AA18 00167978 90 01 03 64 */ stw r0, 0x364(r1) -/* 8016AA1C 0016797C DB E1 03 50 */ stfd f31, 0x350(r1) -/* 8016AA20 00167980 F3 E1 03 58 */ psq_st f31, 856(r1), 0, qr0 -/* 8016AA24 00167984 DB C1 03 40 */ stfd f30, 0x340(r1) -/* 8016AA28 00167988 F3 C1 03 48 */ psq_st f30, 840(r1), 0, qr0 -/* 8016AA2C 0016798C DB A1 03 30 */ stfd f29, 0x330(r1) -/* 8016AA30 00167990 F3 A1 03 38 */ psq_st f29, 824(r1), 0, qr0 -/* 8016AA34 00167994 DB 81 03 20 */ stfd f28, 0x320(r1) -/* 8016AA38 00167998 F3 81 03 28 */ psq_st f28, 808(r1), 0, qr0 -/* 8016AA3C 0016799C DB 61 03 10 */ stfd f27, 0x310(r1) -/* 8016AA40 001679A0 F3 61 03 18 */ psq_st f27, 792(r1), 0, qr0 -/* 8016AA44 001679A4 DB 41 03 00 */ stfd f26, 0x300(r1) -/* 8016AA48 001679A8 F3 41 03 08 */ psq_st f26, 776(r1), 0, qr0 -/* 8016AA4C 001679AC DB 21 02 F0 */ stfd f25, 0x2f0(r1) -/* 8016AA50 001679B0 F3 21 02 F8 */ psq_st f25, 760(r1), 0, qr0 -/* 8016AA54 001679B4 BF 61 02 DC */ stmw r27, 0x2dc(r1) -/* 8016AA58 001679B8 7C 9C 23 78 */ mr r28, r4 -/* 8016AA5C 001679BC 7C BD 2B 78 */ mr r29, r5 -/* 8016AA60 001679C0 83 E4 08 4C */ lwz r31, 0x84c(r4) -/* 8016AA64 001679C4 7C 7B 1B 78 */ mr r27, r3 -/* 8016AA68 001679C8 7C DE 33 78 */ mr r30, r6 -/* 8016AA6C 001679CC C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 8016AA70 001679D0 C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 8016AA74 001679D4 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 8016AA78 001679D8 D0 05 00 00 */ stfs f0, 0(r5) -/* 8016AA7C 001679DC D0 25 00 04 */ stfs f1, 4(r5) -/* 8016AA80 001679E0 D0 45 00 08 */ stfs f2, 8(r5) -/* 8016AA84 001679E4 80 83 00 64 */ lwz r4, 0x64(r3) -/* 8016AA88 001679E8 80 1F 02 F8 */ lwz r0, 0x2f8(r31) -/* 8016AA8C 001679EC C0 24 00 00 */ lfs f1, 0(r4) -/* 8016AA90 001679F0 C3 E4 00 04 */ lfs f31, 4(r4) -/* 8016AA94 001679F4 2C 00 00 02 */ cmpwi r0, 2 -/* 8016AA98 001679F8 C0 04 00 08 */ lfs f0, 8(r4) -/* 8016AA9C 001679FC D0 21 02 08 */ stfs f1, 0x208(r1) -/* 8016AAA0 00167A00 D3 E1 02 0C */ stfs f31, 0x20c(r1) -/* 8016AAA4 00167A04 D0 01 02 10 */ stfs f0, 0x210(r1) -/* 8016AAA8 00167A08 41 82 01 64 */ beq lbl_8016AC0C -/* 8016AAAC 00167A0C 40 80 00 14 */ bge lbl_8016AAC0 -/* 8016AAB0 00167A10 2C 00 00 00 */ cmpwi r0, 0 -/* 8016AAB4 00167A14 41 82 00 18 */ beq lbl_8016AACC -/* 8016AAB8 00167A18 40 80 05 C0 */ bge lbl_8016B078 -/* 8016AABC 00167A1C 48 00 06 E0 */ b lbl_8016B19C -lbl_8016AAC0: -/* 8016AAC0 00167A20 2C 00 00 04 */ cmpwi r0, 4 -/* 8016AAC4 00167A24 40 80 06 D8 */ bge lbl_8016B19C -/* 8016AAC8 00167A28 48 00 02 84 */ b lbl_8016AD4C -lbl_8016AACC: -/* 8016AACC 00167A2C 80 9C 08 70 */ lwz r4, 0x870(r28) -/* 8016AAD0 00167A30 38 61 01 F8 */ addi r3, r1, 0x1f8 -/* 8016AAD4 00167A34 80 84 00 7C */ lwz r4, 0x7c(r4) -/* 8016AAD8 00167A38 38 84 00 34 */ addi r4, r4, 0x34 -/* 8016AADC 00167A3C 48 1A 76 4D */ bl FromMatrix__11CQuaternionFRC12CTransform4f -/* 8016AAE0 00167A40 C0 81 01 F8 */ lfs f4, 0x1f8(r1) -/* 8016AAE4 00167A44 38 61 01 D8 */ addi r3, r1, 0x1d8 -/* 8016AAE8 00167A48 C0 61 01 FC */ lfs f3, 0x1fc(r1) -/* 8016AAEC 00167A4C 38 81 00 34 */ addi r4, r1, 0x34 -/* 8016AAF0 00167A50 C0 41 02 00 */ lfs f2, 0x200(r1) -/* 8016AAF4 00167A54 C0 21 02 04 */ lfs f1, 0x204(r1) -/* 8016AAF8 00167A58 C0 02 A0 94 */ lfs f0, lbl_805ABDB4@sda21(r2) -/* 8016AAFC 00167A5C D0 81 02 34 */ stfs f4, 0x234(r1) -/* 8016AB00 00167A60 D0 61 02 38 */ stfs f3, 0x238(r1) -/* 8016AB04 00167A64 D0 41 02 3C */ stfs f2, 0x23c(r1) -/* 8016AB08 00167A68 D0 21 02 40 */ stfs f1, 0x240(r1) -/* 8016AB0C 00167A6C D0 01 00 34 */ stfs f0, 0x34(r1) -/* 8016AB10 00167A70 48 1A 65 E9 */ bl ZRotation__11CQuaternionFRC9CRelAngle -/* 8016AB14 00167A74 38 61 01 E8 */ addi r3, r1, 0x1e8 -/* 8016AB18 00167A78 38 81 02 34 */ addi r4, r1, 0x234 -/* 8016AB1C 00167A7C 38 A1 01 D8 */ addi r5, r1, 0x1d8 -/* 8016AB20 00167A80 48 1A 66 81 */ bl __ml__11CQuaternionCFRC11CQuaternion -/* 8016AB24 00167A84 C0 01 01 E8 */ lfs f0, 0x1e8(r1) -/* 8016AB28 00167A88 38 61 02 68 */ addi r3, r1, 0x268 -/* 8016AB2C 00167A8C 38 81 02 34 */ addi r4, r1, 0x234 -/* 8016AB30 00167A90 D0 1E 00 00 */ stfs f0, 0(r30) -/* 8016AB34 00167A94 80 A1 01 EC */ lwz r5, 0x1ec(r1) -/* 8016AB38 00167A98 80 01 01 F0 */ lwz r0, 0x1f0(r1) -/* 8016AB3C 00167A9C 90 BE 00 04 */ stw r5, 4(r30) -/* 8016AB40 00167AA0 90 1E 00 08 */ stw r0, 8(r30) -/* 8016AB44 00167AA4 80 01 01 F4 */ lwz r0, 0x1f4(r1) -/* 8016AB48 00167AA8 90 1E 00 0C */ stw r0, 0xc(r30) -/* 8016AB4C 00167AAC 48 1A 75 41 */ bl BuildTransform__11CQuaternionCFv -/* 8016AB50 00167AB0 38 61 02 B0 */ addi r3, r1, 0x2b0 -/* 8016AB54 00167AB4 38 81 02 68 */ addi r4, r1, 0x268 -/* 8016AB58 00167AB8 48 1A 54 CD */ bl __ct__9CMatrix3fFRC9CMatrix3f -/* 8016AB5C 00167ABC 3C 80 80 5A */ lis r4, lbl_805A6724@ha -/* 8016AB60 00167AC0 38 61 01 CC */ addi r3, r1, 0x1cc -/* 8016AB64 00167AC4 38 A4 67 24 */ addi r5, r4, lbl_805A6724@l -/* 8016AB68 00167AC8 38 81 02 B0 */ addi r4, r1, 0x2b0 -/* 8016AB6C 00167ACC 48 1A 57 29 */ bl __ml__9CMatrix3fCFRC9CVector3f -/* 8016AB70 00167AD0 C0 62 A0 98 */ lfs f3, lbl_805ABDB8@sda21(r2) -/* 8016AB74 00167AD4 3C 60 80 5A */ lis r3, lbl_805A66F4@ha -/* 8016AB78 00167AD8 C0 41 01 CC */ lfs f2, 0x1cc(r1) -/* 8016AB7C 00167ADC 38 A3 66 F4 */ addi r5, r3, lbl_805A66F4@l -/* 8016AB80 00167AE0 C0 21 01 D0 */ lfs f1, 0x1d0(r1) -/* 8016AB84 00167AE4 38 61 01 C0 */ addi r3, r1, 0x1c0 -/* 8016AB88 00167AE8 C0 01 01 D4 */ lfs f0, 0x1d4(r1) -/* 8016AB8C 00167AEC EF 83 00 B2 */ fmuls f28, f3, f2 -/* 8016AB90 00167AF0 EF 63 00 72 */ fmuls f27, f3, f1 -/* 8016AB94 00167AF4 38 81 02 B0 */ addi r4, r1, 0x2b0 -/* 8016AB98 00167AF8 EF 43 00 32 */ fmuls f26, f3, f0 -/* 8016AB9C 00167AFC 48 1A 56 F9 */ bl __ml__9CMatrix3fCFRC9CVector3f -/* 8016ABA0 00167B00 C0 02 A0 9C */ lfs f0, lbl_805ABDBC@sda21(r2) -/* 8016ABA4 00167B04 7F E3 FB 78 */ mr r3, r31 -/* 8016ABA8 00167B08 C0 41 01 C0 */ lfs f2, 0x1c0(r1) -/* 8016ABAC 00167B0C EC 60 07 F2 */ fmuls f3, f0, f31 -/* 8016ABB0 00167B10 C0 21 01 C4 */ lfs f1, 0x1c4(r1) -/* 8016ABB4 00167B14 C0 01 01 C8 */ lfs f0, 0x1c8(r1) -/* 8016ABB8 00167B18 EF E3 00 B2 */ fmuls f31, f3, f2 -/* 8016ABBC 00167B1C EF C3 00 72 */ fmuls f30, f3, f1 -/* 8016ABC0 00167B20 EF A3 00 32 */ fmuls f29, f3, f0 -/* 8016ABC4 00167B24 48 11 A2 1D */ bl GetEyeHeight__7CPlayerCFv -/* 8016ABC8 00167B28 C0 62 A0 80 */ lfs f3, lbl_805ABDA0@sda21(r2) -/* 8016ABCC 00167B2C EC 01 E8 2A */ fadds f0, f1, f29 -/* 8016ABD0 00167B30 C0 9D 00 00 */ lfs f4, 0(r29) -/* 8016ABD4 00167B34 EC 43 F8 2A */ fadds f2, f3, f31 -/* 8016ABD8 00167B38 EC 23 F0 2A */ fadds f1, f3, f30 -/* 8016ABDC 00167B3C EC 00 D0 2A */ fadds f0, f0, f26 -/* 8016ABE0 00167B40 EC 42 E0 2A */ fadds f2, f2, f28 -/* 8016ABE4 00167B44 EC 21 D8 2A */ fadds f1, f1, f27 -/* 8016ABE8 00167B48 EC 44 10 2A */ fadds f2, f4, f2 -/* 8016ABEC 00167B4C D0 5D 00 00 */ stfs f2, 0(r29) -/* 8016ABF0 00167B50 C0 5D 00 04 */ lfs f2, 4(r29) -/* 8016ABF4 00167B54 EC 22 08 2A */ fadds f1, f2, f1 -/* 8016ABF8 00167B58 D0 3D 00 04 */ stfs f1, 4(r29) -/* 8016ABFC 00167B5C C0 3D 00 08 */ lfs f1, 8(r29) -/* 8016AC00 00167B60 EC 01 00 2A */ fadds f0, f1, f0 -/* 8016AC04 00167B64 D0 1D 00 08 */ stfs f0, 8(r29) -/* 8016AC08 00167B68 48 00 05 94 */ b lbl_8016B19C -lbl_8016AC0C: -/* 8016AC0C 00167B6C 7F E4 FB 78 */ mr r4, r31 -/* 8016AC10 00167B70 4B FF FA B1 */ bl sub_8016a6c0 -/* 8016AC14 00167B74 C0 5D 00 00 */ lfs f2, 0(r29) -/* 8016AC18 00167B78 C0 62 A0 80 */ lfs f3, lbl_805ABDA0@sda21(r2) -/* 8016AC1C 00167B7C C0 02 A0 A0 */ lfs f0, lbl_805ABDC0@sda21(r2) -/* 8016AC20 00167B80 EC 42 18 2A */ fadds f2, f2, f3 -/* 8016AC24 00167B84 EC 00 08 2A */ fadds f0, f0, f1 -/* 8016AC28 00167B88 D0 5D 00 00 */ stfs f2, 0(r29) -/* 8016AC2C 00167B8C C0 3D 00 04 */ lfs f1, 4(r29) -/* 8016AC30 00167B90 EC 21 18 2A */ fadds f1, f1, f3 -/* 8016AC34 00167B94 D0 3D 00 04 */ stfs f1, 4(r29) -/* 8016AC38 00167B98 C0 3D 00 08 */ lfs f1, 8(r29) -/* 8016AC3C 00167B9C EC 01 00 2A */ fadds f0, f1, f0 -/* 8016AC40 00167BA0 D0 1D 00 08 */ stfs f0, 8(r29) -/* 8016AC44 00167BA4 80 7F 07 68 */ lwz r3, 0x768(r31) -/* 8016AC48 00167BA8 4B F8 E1 BD */ bl GetBallRadius__10CMorphBallCFv -/* 8016AC4C 00167BAC C0 1B 00 3C */ lfs f0, 0x3c(r27) -/* 8016AC50 00167BB0 38 61 00 E8 */ addi r3, r1, 0xe8 -/* 8016AC54 00167BB4 C1 02 A0 88 */ lfs f8, lbl_805ABDA8@sda21(r2) -/* 8016AC58 00167BB8 38 81 00 30 */ addi r4, r1, 0x30 -/* 8016AC5C 00167BBC C0 5F 00 38 */ lfs f2, 0x38(r31) -/* 8016AC60 00167BC0 EC 01 00 32 */ fmuls f0, f1, f0 -/* 8016AC64 00167BC4 C0 9F 00 48 */ lfs f4, 0x48(r31) -/* 8016AC68 00167BC8 EC 48 00 B2 */ fmuls f2, f8, f2 -/* 8016AC6C 00167BCC C0 7B 00 4C */ lfs f3, 0x4c(r27) -/* 8016AC70 00167BD0 C0 DF 00 58 */ lfs f6, 0x58(r31) -/* 8016AC74 00167BD4 EC E8 01 32 */ fmuls f7, f8, f4 -/* 8016AC78 00167BD8 C0 9D 00 00 */ lfs f4, 0(r29) -/* 8016AC7C 00167BDC EC 61 00 F2 */ fmuls f3, f1, f3 -/* 8016AC80 00167BE0 EC 02 00 28 */ fsubs f0, f2, f0 -/* 8016AC84 00167BE4 C0 BB 00 5C */ lfs f5, 0x5c(r27) -/* 8016AC88 00167BE8 EC E7 18 28 */ fsubs f7, f7, f3 -/* 8016AC8C 00167BEC C0 62 A0 94 */ lfs f3, lbl_805ABDB4@sda21(r2) -/* 8016AC90 00167BF0 EC C8 01 B2 */ fmuls f6, f8, f6 -/* 8016AC94 00167BF4 C0 42 A0 A4 */ lfs f2, lbl_805ABDC4@sda21(r2) -/* 8016AC98 00167BF8 EC 84 00 2A */ fadds f4, f4, f0 -/* 8016AC9C 00167BFC C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016ACA0 00167C00 EC 21 01 72 */ fmuls f1, f1, f5 -/* 8016ACA4 00167C04 D0 9D 00 00 */ stfs f4, 0(r29) -/* 8016ACA8 00167C08 EC 86 08 28 */ fsubs f4, f6, f1 -/* 8016ACAC 00167C0C C0 3D 00 04 */ lfs f1, 4(r29) -/* 8016ACB0 00167C10 EC 21 38 2A */ fadds f1, f1, f7 -/* 8016ACB4 00167C14 D0 3D 00 04 */ stfs f1, 4(r29) -/* 8016ACB8 00167C18 C0 3D 00 08 */ lfs f1, 8(r29) -/* 8016ACBC 00167C1C EC 21 20 2A */ fadds f1, f1, f4 -/* 8016ACC0 00167C20 D0 3D 00 08 */ stfs f1, 8(r29) -/* 8016ACC4 00167C24 D0 61 00 28 */ stfs f3, 0x28(r1) -/* 8016ACC8 00167C28 D0 41 00 2C */ stfs f2, 0x2c(r1) -/* 8016ACCC 00167C2C D0 01 00 30 */ stfs f0, 0x30(r1) -/* 8016ACD0 00167C30 48 1A 64 61 */ bl YRotation__11CQuaternionFRC9CRelAngle -/* 8016ACD4 00167C34 38 61 00 D8 */ addi r3, r1, 0xd8 -/* 8016ACD8 00167C38 38 81 00 2C */ addi r4, r1, 0x2c -/* 8016ACDC 00167C3C 48 1A 64 8D */ bl XRotation__11CQuaternionFRC9CRelAngle -/* 8016ACE0 00167C40 38 61 00 C8 */ addi r3, r1, 0xc8 -/* 8016ACE4 00167C44 38 81 00 28 */ addi r4, r1, 0x28 -/* 8016ACE8 00167C48 48 1A 64 11 */ bl ZRotation__11CQuaternionFRC9CRelAngle -/* 8016ACEC 00167C4C 38 61 00 B8 */ addi r3, r1, 0xb8 -/* 8016ACF0 00167C50 38 81 00 C8 */ addi r4, r1, 0xc8 -/* 8016ACF4 00167C54 38 A1 00 D8 */ addi r5, r1, 0xd8 -/* 8016ACF8 00167C58 48 1A 64 A9 */ bl __ml__11CQuaternionCFRC11CQuaternion -/* 8016ACFC 00167C5C 38 61 01 90 */ addi r3, r1, 0x190 -/* 8016AD00 00167C60 38 81 00 B8 */ addi r4, r1, 0xb8 -/* 8016AD04 00167C64 38 A1 00 E8 */ addi r5, r1, 0xe8 -/* 8016AD08 00167C68 48 1A 64 99 */ bl __ml__11CQuaternionCFRC11CQuaternion -/* 8016AD0C 00167C6C 38 61 01 A0 */ addi r3, r1, 0x1a0 -/* 8016AD10 00167C70 38 9F 00 34 */ addi r4, r31, 0x34 -/* 8016AD14 00167C74 48 1A 74 15 */ bl FromMatrix__11CQuaternionFRC12CTransform4f -/* 8016AD18 00167C78 38 61 01 B0 */ addi r3, r1, 0x1b0 -/* 8016AD1C 00167C7C 38 81 01 A0 */ addi r4, r1, 0x1a0 -/* 8016AD20 00167C80 38 A1 01 90 */ addi r5, r1, 0x190 -/* 8016AD24 00167C84 48 1A 64 7D */ bl __ml__11CQuaternionCFRC11CQuaternion -/* 8016AD28 00167C88 C0 01 01 B0 */ lfs f0, 0x1b0(r1) -/* 8016AD2C 00167C8C D0 1E 00 00 */ stfs f0, 0(r30) -/* 8016AD30 00167C90 80 61 01 B4 */ lwz r3, 0x1b4(r1) -/* 8016AD34 00167C94 80 01 01 B8 */ lwz r0, 0x1b8(r1) -/* 8016AD38 00167C98 90 7E 00 04 */ stw r3, 4(r30) -/* 8016AD3C 00167C9C 90 1E 00 08 */ stw r0, 8(r30) -/* 8016AD40 00167CA0 80 01 01 BC */ lwz r0, 0x1bc(r1) -/* 8016AD44 00167CA4 90 1E 00 0C */ stw r0, 0xc(r30) -/* 8016AD48 00167CA8 48 00 04 54 */ b lbl_8016B19C -lbl_8016AD4C: -/* 8016AD4C 00167CAC 7F E4 FB 78 */ mr r4, r31 -/* 8016AD50 00167CB0 4B FF F9 71 */ bl sub_8016a6c0 -/* 8016AD54 00167CB4 C0 5D 00 00 */ lfs f2, 0(r29) -/* 8016AD58 00167CB8 C0 62 A0 80 */ lfs f3, lbl_805ABDA0@sda21(r2) -/* 8016AD5C 00167CBC C0 02 A0 A0 */ lfs f0, lbl_805ABDC0@sda21(r2) -/* 8016AD60 00167CC0 EC 42 18 2A */ fadds f2, f2, f3 -/* 8016AD64 00167CC4 EC 00 08 2A */ fadds f0, f0, f1 -/* 8016AD68 00167CC8 D0 5D 00 00 */ stfs f2, 0(r29) -/* 8016AD6C 00167CCC C0 3D 00 04 */ lfs f1, 4(r29) -/* 8016AD70 00167CD0 EC 21 18 2A */ fadds f1, f1, f3 -/* 8016AD74 00167CD4 D0 3D 00 04 */ stfs f1, 4(r29) -/* 8016AD78 00167CD8 C0 3D 00 08 */ lfs f1, 8(r29) -/* 8016AD7C 00167CDC EC 01 00 2A */ fadds f0, f1, f0 -/* 8016AD80 00167CE0 D0 1D 00 08 */ stfs f0, 8(r29) -/* 8016AD84 00167CE4 80 7F 07 68 */ lwz r3, 0x768(r31) -/* 8016AD88 00167CE8 4B F8 E0 7D */ bl GetBallRadius__10CMorphBallCFv -/* 8016AD8C 00167CEC C0 1B 00 3C */ lfs f0, 0x3c(r27) -/* 8016AD90 00167CF0 38 61 00 A8 */ addi r3, r1, 0xa8 -/* 8016AD94 00167CF4 C1 02 A0 88 */ lfs f8, lbl_805ABDA8@sda21(r2) -/* 8016AD98 00167CF8 38 81 00 24 */ addi r4, r1, 0x24 -/* 8016AD9C 00167CFC C0 5F 00 38 */ lfs f2, 0x38(r31) -/* 8016ADA0 00167D00 EC 01 00 32 */ fmuls f0, f1, f0 -/* 8016ADA4 00167D04 C0 9F 00 48 */ lfs f4, 0x48(r31) -/* 8016ADA8 00167D08 EC 48 00 B2 */ fmuls f2, f8, f2 -/* 8016ADAC 00167D0C C0 7B 00 4C */ lfs f3, 0x4c(r27) -/* 8016ADB0 00167D10 C0 DF 00 58 */ lfs f6, 0x58(r31) -/* 8016ADB4 00167D14 EC E8 01 32 */ fmuls f7, f8, f4 -/* 8016ADB8 00167D18 C0 9D 00 00 */ lfs f4, 0(r29) -/* 8016ADBC 00167D1C EC 61 00 F2 */ fmuls f3, f1, f3 -/* 8016ADC0 00167D20 EC 02 00 28 */ fsubs f0, f2, f0 -/* 8016ADC4 00167D24 C0 BB 00 5C */ lfs f5, 0x5c(r27) -/* 8016ADC8 00167D28 EC E7 18 28 */ fsubs f7, f7, f3 -/* 8016ADCC 00167D2C C0 62 A0 94 */ lfs f3, lbl_805ABDB4@sda21(r2) -/* 8016ADD0 00167D30 EC C8 01 B2 */ fmuls f6, f8, f6 -/* 8016ADD4 00167D34 C0 42 A0 A4 */ lfs f2, lbl_805ABDC4@sda21(r2) -/* 8016ADD8 00167D38 EC 84 00 2A */ fadds f4, f4, f0 -/* 8016ADDC 00167D3C C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016ADE0 00167D40 EC 21 01 72 */ fmuls f1, f1, f5 -/* 8016ADE4 00167D44 D0 9D 00 00 */ stfs f4, 0(r29) -/* 8016ADE8 00167D48 EC 86 08 28 */ fsubs f4, f6, f1 -/* 8016ADEC 00167D4C C0 3D 00 04 */ lfs f1, 4(r29) -/* 8016ADF0 00167D50 EC 21 38 2A */ fadds f1, f1, f7 -/* 8016ADF4 00167D54 D0 3D 00 04 */ stfs f1, 4(r29) -/* 8016ADF8 00167D58 C0 3D 00 08 */ lfs f1, 8(r29) -/* 8016ADFC 00167D5C EC 21 20 2A */ fadds f1, f1, f4 -/* 8016AE00 00167D60 D0 3D 00 08 */ stfs f1, 8(r29) -/* 8016AE04 00167D64 D0 61 00 1C */ stfs f3, 0x1c(r1) -/* 8016AE08 00167D68 D0 41 00 20 */ stfs f2, 0x20(r1) -/* 8016AE0C 00167D6C D0 01 00 24 */ stfs f0, 0x24(r1) -/* 8016AE10 00167D70 48 1A 63 21 */ bl YRotation__11CQuaternionFRC9CRelAngle -/* 8016AE14 00167D74 38 61 00 98 */ addi r3, r1, 0x98 -/* 8016AE18 00167D78 38 81 00 20 */ addi r4, r1, 0x20 -/* 8016AE1C 00167D7C 48 1A 63 4D */ bl XRotation__11CQuaternionFRC9CRelAngle -/* 8016AE20 00167D80 38 61 00 88 */ addi r3, r1, 0x88 -/* 8016AE24 00167D84 38 81 00 1C */ addi r4, r1, 0x1c -/* 8016AE28 00167D88 48 1A 62 D1 */ bl ZRotation__11CQuaternionFRC9CRelAngle -/* 8016AE2C 00167D8C 38 61 00 78 */ addi r3, r1, 0x78 -/* 8016AE30 00167D90 38 81 00 88 */ addi r4, r1, 0x88 -/* 8016AE34 00167D94 38 A1 00 98 */ addi r5, r1, 0x98 -/* 8016AE38 00167D98 48 1A 63 69 */ bl __ml__11CQuaternionCFRC11CQuaternion -/* 8016AE3C 00167D9C 38 61 01 60 */ addi r3, r1, 0x160 -/* 8016AE40 00167DA0 38 81 00 78 */ addi r4, r1, 0x78 -/* 8016AE44 00167DA4 38 A1 00 A8 */ addi r5, r1, 0xa8 -/* 8016AE48 00167DA8 48 1A 63 59 */ bl __ml__11CQuaternionCFRC11CQuaternion -/* 8016AE4C 00167DAC 38 61 01 70 */ addi r3, r1, 0x170 -/* 8016AE50 00167DB0 38 9F 00 34 */ addi r4, r31, 0x34 -/* 8016AE54 00167DB4 48 1A 72 D5 */ bl FromMatrix__11CQuaternionFRC12CTransform4f -/* 8016AE58 00167DB8 38 61 01 80 */ addi r3, r1, 0x180 -/* 8016AE5C 00167DBC 38 81 01 70 */ addi r4, r1, 0x170 -/* 8016AE60 00167DC0 38 A1 01 60 */ addi r5, r1, 0x160 -/* 8016AE64 00167DC4 48 1A 63 3D */ bl __ml__11CQuaternionCFRC11CQuaternion -/* 8016AE68 00167DC8 C0 01 01 80 */ lfs f0, 0x180(r1) -/* 8016AE6C 00167DCC C3 42 A0 80 */ lfs f26, lbl_805ABDA0@sda21(r2) -/* 8016AE70 00167DD0 D0 1E 00 00 */ stfs f0, 0(r30) -/* 8016AE74 00167DD4 80 61 01 84 */ lwz r3, 0x184(r1) -/* 8016AE78 00167DD8 80 01 01 88 */ lwz r0, 0x188(r1) -/* 8016AE7C 00167DDC 90 7E 00 04 */ stw r3, 4(r30) -/* 8016AE80 00167DE0 90 1E 00 08 */ stw r0, 8(r30) -/* 8016AE84 00167DE4 80 01 01 8C */ lwz r0, 0x18c(r1) -/* 8016AE88 00167DE8 90 1E 00 0C */ stw r0, 0xc(r30) -/* 8016AE8C 00167DEC C0 3F 05 78 */ lfs f1, 0x578(r31) -/* 8016AE90 00167DF0 FC 1A 08 00 */ fcmpu cr0, f26, f1 -/* 8016AE94 00167DF4 40 82 00 08 */ bne lbl_8016AE9C -/* 8016AE98 00167DF8 48 00 00 24 */ b lbl_8016AEBC -lbl_8016AE9C: -/* 8016AE9C 00167DFC C0 1F 05 74 */ lfs f0, 0x574(r31) -/* 8016AEA0 00167E00 38 81 00 08 */ addi r4, r1, 8 -/* 8016AEA4 00167E04 38 6D 8D 90 */ addi r3, r13, lbl_805A7950@sda21 -/* 8016AEA8 00167E08 38 AD 8D 94 */ addi r5, r13, lbl_805A7954@sda21 -/* 8016AEAC 00167E0C EC 00 08 24 */ fdivs f0, f0, f1 -/* 8016AEB0 00167E10 D0 01 00 08 */ stfs f0, 8(r1) -/* 8016AEB4 00167E14 4B EA 14 01 */ bl "Clamp__5CMathFRCfRCfRCf" -/* 8016AEB8 00167E18 C3 43 00 00 */ lfs f26, 0(r3) -lbl_8016AEBC: -/* 8016AEBC 00167E1C C0 02 A0 A8 */ lfs f0, lbl_805ABDC8@sda21(r2) -/* 8016AEC0 00167E20 FC 1A 00 40 */ fcmpo cr0, f26, f0 -/* 8016AEC4 00167E24 40 81 02 D8 */ ble lbl_8016B19C -/* 8016AEC8 00167E28 80 9C 08 70 */ lwz r4, 0x870(r28) -/* 8016AECC 00167E2C 38 61 01 50 */ addi r3, r1, 0x150 -/* 8016AED0 00167E30 80 84 00 7C */ lwz r4, 0x7c(r4) -/* 8016AED4 00167E34 38 84 00 34 */ addi r4, r4, 0x34 -/* 8016AED8 00167E38 48 1A 72 51 */ bl FromMatrix__11CQuaternionFRC12CTransform4f -/* 8016AEDC 00167E3C C0 81 01 50 */ lfs f4, 0x150(r1) -/* 8016AEE0 00167E40 38 61 01 30 */ addi r3, r1, 0x130 -/* 8016AEE4 00167E44 C0 61 01 54 */ lfs f3, 0x154(r1) -/* 8016AEE8 00167E48 38 81 00 18 */ addi r4, r1, 0x18 -/* 8016AEEC 00167E4C C0 41 01 58 */ lfs f2, 0x158(r1) -/* 8016AEF0 00167E50 C0 21 01 5C */ lfs f1, 0x15c(r1) -/* 8016AEF4 00167E54 C0 02 A0 94 */ lfs f0, lbl_805ABDB4@sda21(r2) -/* 8016AEF8 00167E58 D0 81 02 24 */ stfs f4, 0x224(r1) -/* 8016AEFC 00167E5C D0 61 02 28 */ stfs f3, 0x228(r1) -/* 8016AF00 00167E60 D0 41 02 2C */ stfs f2, 0x22c(r1) -/* 8016AF04 00167E64 D0 21 02 30 */ stfs f1, 0x230(r1) -/* 8016AF08 00167E68 D0 01 00 18 */ stfs f0, 0x18(r1) -/* 8016AF0C 00167E6C 48 1A 61 ED */ bl ZRotation__11CQuaternionFRC9CRelAngle -/* 8016AF10 00167E70 38 61 01 40 */ addi r3, r1, 0x140 -/* 8016AF14 00167E74 38 81 02 24 */ addi r4, r1, 0x224 -/* 8016AF18 00167E78 38 A1 01 30 */ addi r5, r1, 0x130 -/* 8016AF1C 00167E7C 48 1A 62 85 */ bl __ml__11CQuaternionCFRC11CQuaternion -/* 8016AF20 00167E80 C0 61 01 40 */ lfs f3, 0x140(r1) -/* 8016AF24 00167E84 38 61 02 44 */ addi r3, r1, 0x244 -/* 8016AF28 00167E88 C0 41 01 44 */ lfs f2, 0x144(r1) -/* 8016AF2C 00167E8C 38 81 02 24 */ addi r4, r1, 0x224 -/* 8016AF30 00167E90 C0 21 01 48 */ lfs f1, 0x148(r1) -/* 8016AF34 00167E94 C0 01 01 4C */ lfs f0, 0x14c(r1) -/* 8016AF38 00167E98 D0 61 02 14 */ stfs f3, 0x214(r1) -/* 8016AF3C 00167E9C D0 41 02 18 */ stfs f2, 0x218(r1) -/* 8016AF40 00167EA0 D0 21 02 1C */ stfs f1, 0x21c(r1) -/* 8016AF44 00167EA4 D0 01 02 20 */ stfs f0, 0x220(r1) -/* 8016AF48 00167EA8 48 1A 71 45 */ bl BuildTransform__11CQuaternionCFv -/* 8016AF4C 00167EAC 38 61 02 8C */ addi r3, r1, 0x28c -/* 8016AF50 00167EB0 38 81 02 44 */ addi r4, r1, 0x244 -/* 8016AF54 00167EB4 48 1A 50 D1 */ bl __ct__9CMatrix3fFRC9CMatrix3f -/* 8016AF58 00167EB8 3C 80 80 5A */ lis r4, lbl_805A6724@ha -/* 8016AF5C 00167EBC 38 61 01 24 */ addi r3, r1, 0x124 -/* 8016AF60 00167EC0 38 A4 67 24 */ addi r5, r4, lbl_805A6724@l -/* 8016AF64 00167EC4 38 81 02 8C */ addi r4, r1, 0x28c -/* 8016AF68 00167EC8 48 1A 53 2D */ bl __ml__9CMatrix3fCFRC9CVector3f -/* 8016AF6C 00167ECC C0 62 A0 98 */ lfs f3, lbl_805ABDB8@sda21(r2) -/* 8016AF70 00167ED0 3C 60 80 5A */ lis r3, lbl_805A66F4@ha -/* 8016AF74 00167ED4 C0 41 01 24 */ lfs f2, 0x124(r1) -/* 8016AF78 00167ED8 38 A3 66 F4 */ addi r5, r3, lbl_805A66F4@l -/* 8016AF7C 00167EDC C0 21 01 28 */ lfs f1, 0x128(r1) -/* 8016AF80 00167EE0 38 61 01 18 */ addi r3, r1, 0x118 -/* 8016AF84 00167EE4 C0 01 01 2C */ lfs f0, 0x12c(r1) -/* 8016AF88 00167EE8 EF 83 00 B2 */ fmuls f28, f3, f2 -/* 8016AF8C 00167EEC EF A3 00 72 */ fmuls f29, f3, f1 -/* 8016AF90 00167EF0 38 81 02 8C */ addi r4, r1, 0x28c -/* 8016AF94 00167EF4 EF C3 00 32 */ fmuls f30, f3, f0 -/* 8016AF98 00167EF8 48 1A 52 FD */ bl __ml__9CMatrix3fCFRC9CVector3f -/* 8016AF9C 00167EFC C0 02 A0 9C */ lfs f0, lbl_805ABDBC@sda21(r2) -/* 8016AFA0 00167F00 7F E3 FB 78 */ mr r3, r31 -/* 8016AFA4 00167F04 C0 41 01 18 */ lfs f2, 0x118(r1) -/* 8016AFA8 00167F08 EC 60 07 F2 */ fmuls f3, f0, f31 -/* 8016AFAC 00167F0C C0 21 01 1C */ lfs f1, 0x11c(r1) -/* 8016AFB0 00167F10 C0 01 01 20 */ lfs f0, 0x120(r1) -/* 8016AFB4 00167F14 EF 63 00 B2 */ fmuls f27, f3, f2 -/* 8016AFB8 00167F18 EF E3 00 72 */ fmuls f31, f3, f1 -/* 8016AFBC 00167F1C EF 23 00 32 */ fmuls f25, f3, f0 -/* 8016AFC0 00167F20 48 11 9E 21 */ bl GetEyeHeight__7CPlayerCFv -/* 8016AFC4 00167F24 C0 02 A0 A8 */ lfs f0, lbl_805ABDC8@sda21(r2) -/* 8016AFC8 00167F28 7F C4 F3 78 */ mr r4, r30 -/* 8016AFCC 00167F2C C0 7F 00 60 */ lfs f3, 0x60(r31) -/* 8016AFD0 00167F30 38 61 01 08 */ addi r3, r1, 0x108 -/* 8016AFD4 00167F34 EC 5A 00 28 */ fsubs f2, f26, f0 -/* 8016AFD8 00167F38 C0 02 A0 AC */ lfs f0, lbl_805ABDCC@sda21(r2) -/* 8016AFDC 00167F3C EC 23 08 2A */ fadds f1, f3, f1 -/* 8016AFE0 00167F40 C0 7F 00 40 */ lfs f3, 0x40(r31) -/* 8016AFE4 00167F44 C0 82 A0 80 */ lfs f4, lbl_805ABDA0@sda21(r2) -/* 8016AFE8 00167F48 38 A1 02 14 */ addi r5, r1, 0x214 -/* 8016AFEC 00167F4C EF 42 00 24 */ fdivs f26, f2, f0 -/* 8016AFF0 00167F50 C0 1F 00 50 */ lfs f0, 0x50(r31) -/* 8016AFF4 00167F54 EC 63 20 2A */ fadds f3, f3, f4 -/* 8016AFF8 00167F58 EC 40 20 2A */ fadds f2, f0, f4 -/* 8016AFFC 00167F5C EC 01 C8 2A */ fadds f0, f1, f25 -/* 8016B000 00167F60 EC 63 D8 2A */ fadds f3, f3, f27 -/* 8016B004 00167F64 EC 42 F8 2A */ fadds f2, f2, f31 -/* 8016B008 00167F68 FC 20 D0 90 */ fmr f1, f26 -/* 8016B00C 00167F6C EF 83 E0 2A */ fadds f28, f3, f28 -/* 8016B010 00167F70 EF 62 E8 2A */ fadds f27, f2, f29 -/* 8016B014 00167F74 EF 20 F0 2A */ fadds f25, f0, f30 -/* 8016B018 00167F78 48 1A 65 A1 */ bl SlerpLocal__11CQuaternionFRC11CQuaternionRC11CQuaternionf -/* 8016B01C 00167F7C C0 41 01 08 */ lfs f2, 0x108(r1) -/* 8016B020 00167F80 EC 1C 06 B2 */ fmuls f0, f28, f26 -/* 8016B024 00167F84 C0 22 A0 98 */ lfs f1, lbl_805ABDB8@sda21(r2) -/* 8016B028 00167F88 EC 9B 06 B2 */ fmuls f4, f27, f26 -/* 8016B02C 00167F8C D0 5E 00 00 */ stfs f2, 0(r30) -/* 8016B030 00167F90 EC 59 06 B2 */ fmuls f2, f25, f26 -/* 8016B034 00167F94 EC C1 D0 28 */ fsubs f6, f1, f26 -/* 8016B038 00167F98 80 61 01 0C */ lwz r3, 0x10c(r1) -/* 8016B03C 00167F9C 80 01 01 10 */ lwz r0, 0x110(r1) -/* 8016B040 00167FA0 90 7E 00 04 */ stw r3, 4(r30) -/* 8016B044 00167FA4 90 1E 00 08 */ stw r0, 8(r30) -/* 8016B048 00167FA8 80 01 01 14 */ lwz r0, 0x114(r1) -/* 8016B04C 00167FAC 90 1E 00 0C */ stw r0, 0xc(r30) -/* 8016B050 00167FB0 C0 3D 00 00 */ lfs f1, 0(r29) -/* 8016B054 00167FB4 C0 BD 00 04 */ lfs f5, 4(r29) -/* 8016B058 00167FB8 C0 7D 00 08 */ lfs f3, 8(r29) -/* 8016B05C 00167FBC EC 01 01 BA */ fmadds f0, f1, f6, f0 -/* 8016B060 00167FC0 EC 85 21 BA */ fmadds f4, f5, f6, f4 -/* 8016B064 00167FC4 EC 23 11 BA */ fmadds f1, f3, f6, f2 -/* 8016B068 00167FC8 D0 1D 00 00 */ stfs f0, 0(r29) -/* 8016B06C 00167FCC D0 9D 00 04 */ stfs f4, 4(r29) -/* 8016B070 00167FD0 D0 3D 00 08 */ stfs f1, 8(r29) -/* 8016B074 00167FD4 48 00 01 28 */ b lbl_8016B19C -lbl_8016B078: -/* 8016B078 00167FD8 80 7F 07 68 */ lwz r3, 0x768(r31) -/* 8016B07C 00167FDC 4B F8 DD 89 */ bl GetBallRadius__10CMorphBallCFv -/* 8016B080 00167FE0 C0 62 A0 84 */ lfs f3, lbl_805ABDA4@sda21(r2) -/* 8016B084 00167FE4 3C 60 80 5A */ lis r3, lbl_805A66F4@ha -/* 8016B088 00167FE8 C0 42 A0 AC */ lfs f2, lbl_805ABDCC@sda21(r2) -/* 8016B08C 00167FEC C4 03 66 F4 */ lfsu f0, lbl_805A66F4@l(r3) -/* 8016B090 00167FF0 EC 83 10 7A */ fmadds f4, f3, f1, f2 -/* 8016B094 00167FF4 C0 3D 00 00 */ lfs f1, 0(r29) -/* 8016B098 00167FF8 C0 63 00 04 */ lfs f3, 4(r3) -/* 8016B09C 00167FFC C0 43 00 08 */ lfs f2, 8(r3) -/* 8016B0A0 00168000 EC 04 00 32 */ fmuls f0, f4, f0 -/* 8016B0A4 00168004 EC 64 00 F2 */ fmuls f3, f4, f3 -/* 8016B0A8 00168008 EC 44 00 B2 */ fmuls f2, f4, f2 -/* 8016B0AC 0016800C EC 01 00 2A */ fadds f0, f1, f0 -/* 8016B0B0 00168010 D0 1D 00 00 */ stfs f0, 0(r29) -/* 8016B0B4 00168014 C0 1D 00 04 */ lfs f0, 4(r29) -/* 8016B0B8 00168018 EC 00 18 2A */ fadds f0, f0, f3 -/* 8016B0BC 0016801C D0 1D 00 04 */ stfs f0, 4(r29) -/* 8016B0C0 00168020 C0 1D 00 08 */ lfs f0, 8(r29) -/* 8016B0C4 00168024 EC 00 10 2A */ fadds f0, f0, f2 -/* 8016B0C8 00168028 D0 1D 00 08 */ stfs f0, 8(r29) -/* 8016B0CC 0016802C 80 7F 07 68 */ lwz r3, 0x768(r31) -/* 8016B0D0 00168030 4B F8 DD 35 */ bl GetBallRadius__10CMorphBallCFv -/* 8016B0D4 00168034 C0 1B 00 3C */ lfs f0, 0x3c(r27) -/* 8016B0D8 00168038 7F 63 DB 78 */ mr r3, r27 -/* 8016B0DC 0016803C C0 5B 00 4C */ lfs f2, 0x4c(r27) -/* 8016B0E0 00168040 EC 1F 00 32 */ fmuls f0, f31, f0 -/* 8016B0E4 00168044 C0 7B 00 5C */ lfs f3, 0x5c(r27) -/* 8016B0E8 00168048 EC 9F 00 B2 */ fmuls f4, f31, f2 -/* 8016B0EC 0016804C C0 5D 00 00 */ lfs f2, 0(r29) -/* 8016B0F0 00168050 EC 7F 00 F2 */ fmuls f3, f31, f3 -/* 8016B0F4 00168054 EC 01 00 32 */ fmuls f0, f1, f0 -/* 8016B0F8 00168058 EC 81 01 32 */ fmuls f4, f1, f4 -/* 8016B0FC 0016805C EC 21 00 F2 */ fmuls f1, f1, f3 -/* 8016B100 00168060 EC 02 00 28 */ fsubs f0, f2, f0 -/* 8016B104 00168064 D0 1D 00 00 */ stfs f0, 0(r29) -/* 8016B108 00168068 C0 1D 00 04 */ lfs f0, 4(r29) -/* 8016B10C 0016806C EC 00 20 28 */ fsubs f0, f0, f4 -/* 8016B110 00168070 D0 1D 00 04 */ stfs f0, 4(r29) -/* 8016B114 00168074 C0 1D 00 08 */ lfs f0, 8(r29) -/* 8016B118 00168078 EC 00 08 28 */ fsubs f0, f0, f1 -/* 8016B11C 0016807C D0 1D 00 08 */ stfs f0, 8(r29) -/* 8016B120 00168080 4B EE 93 91 */ bl GetYaw__6CActorCFv -/* 8016B124 00168084 C0 42 A0 A4 */ lfs f2, lbl_805ABDC4@sda21(r2) -/* 8016B128 00168088 38 61 00 68 */ addi r3, r1, 0x68 -/* 8016B12C 0016808C C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016B130 00168090 38 81 00 14 */ addi r4, r1, 0x14 -/* 8016B134 00168094 D0 21 00 0C */ stfs f1, 0xc(r1) -/* 8016B138 00168098 D0 41 00 10 */ stfs f2, 0x10(r1) -/* 8016B13C 0016809C D0 01 00 14 */ stfs f0, 0x14(r1) -/* 8016B140 001680A0 48 1A 5F F1 */ bl YRotation__11CQuaternionFRC9CRelAngle -/* 8016B144 001680A4 38 61 00 58 */ addi r3, r1, 0x58 -/* 8016B148 001680A8 38 81 00 10 */ addi r4, r1, 0x10 -/* 8016B14C 001680AC 48 1A 60 1D */ bl XRotation__11CQuaternionFRC9CRelAngle -/* 8016B150 001680B0 38 61 00 48 */ addi r3, r1, 0x48 -/* 8016B154 001680B4 38 81 00 0C */ addi r4, r1, 0xc -/* 8016B158 001680B8 48 1A 5F A1 */ bl ZRotation__11CQuaternionFRC9CRelAngle -/* 8016B15C 001680BC 38 61 00 38 */ addi r3, r1, 0x38 -/* 8016B160 001680C0 38 81 00 48 */ addi r4, r1, 0x48 -/* 8016B164 001680C4 38 A1 00 58 */ addi r5, r1, 0x58 -/* 8016B168 001680C8 48 1A 60 39 */ bl __ml__11CQuaternionCFRC11CQuaternion -/* 8016B16C 001680CC 38 61 00 F8 */ addi r3, r1, 0xf8 -/* 8016B170 001680D0 38 81 00 38 */ addi r4, r1, 0x38 -/* 8016B174 001680D4 38 A1 00 68 */ addi r5, r1, 0x68 -/* 8016B178 001680D8 48 1A 60 29 */ bl __ml__11CQuaternionCFRC11CQuaternion -/* 8016B17C 001680DC C0 01 00 F8 */ lfs f0, 0xf8(r1) -/* 8016B180 001680E0 D0 1E 00 00 */ stfs f0, 0(r30) -/* 8016B184 001680E4 80 61 00 FC */ lwz r3, 0xfc(r1) -/* 8016B188 001680E8 80 01 01 00 */ lwz r0, 0x100(r1) -/* 8016B18C 001680EC 90 7E 00 04 */ stw r3, 4(r30) -/* 8016B190 001680F0 90 1E 00 08 */ stw r0, 8(r30) -/* 8016B194 001680F4 80 01 01 04 */ lwz r0, 0x104(r1) -/* 8016B198 001680F8 90 1E 00 0C */ stw r0, 0xc(r30) -lbl_8016B19C: -/* 8016B19C 001680FC E3 E1 03 58 */ psq_l f31, 856(r1), 0, qr0 -/* 8016B1A0 00168100 CB E1 03 50 */ lfd f31, 0x350(r1) -/* 8016B1A4 00168104 E3 C1 03 48 */ psq_l f30, 840(r1), 0, qr0 -/* 8016B1A8 00168108 CB C1 03 40 */ lfd f30, 0x340(r1) -/* 8016B1AC 0016810C E3 A1 03 38 */ psq_l f29, 824(r1), 0, qr0 -/* 8016B1B0 00168110 CB A1 03 30 */ lfd f29, 0x330(r1) -/* 8016B1B4 00168114 E3 81 03 28 */ psq_l f28, 808(r1), 0, qr0 -/* 8016B1B8 00168118 CB 81 03 20 */ lfd f28, 0x320(r1) -/* 8016B1BC 0016811C E3 61 03 18 */ psq_l f27, 792(r1), 0, qr0 -/* 8016B1C0 00168120 CB 61 03 10 */ lfd f27, 0x310(r1) -/* 8016B1C4 00168124 E3 41 03 08 */ psq_l f26, 776(r1), 0, qr0 -/* 8016B1C8 00168128 CB 41 03 00 */ lfd f26, 0x300(r1) -/* 8016B1CC 0016812C E3 21 02 F8 */ psq_l f25, 760(r1), 0, qr0 -/* 8016B1D0 00168130 CB 21 02 F0 */ lfd f25, 0x2f0(r1) -/* 8016B1D4 00168134 BB 61 02 DC */ lmw r27, 0x2dc(r1) -/* 8016B1D8 00168138 80 01 03 64 */ lwz r0, 0x364(r1) -/* 8016B1DC 0016813C 7C 08 03 A6 */ mtlr r0 -/* 8016B1E0 00168140 38 21 03 60 */ addi r1, r1, 0x360 -/* 8016B1E4 00168144 4E 80 00 20 */ blr - -.global sub_8016b1e8 -sub_8016b1e8: -/* 8016B1E8 00168148 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8016B1EC 0016814C 7C 08 02 A6 */ mflr r0 -/* 8016B1F0 00168150 90 01 00 34 */ stw r0, 0x34(r1) -/* 8016B1F4 00168154 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8016B1F8 00168158 7C DF 33 78 */ mr r31, r6 -/* 8016B1FC 0016815C 93 C1 00 28 */ stw r30, 0x28(r1) -/* 8016B200 00168160 7C BE 2B 78 */ mr r30, r5 -/* 8016B204 00168164 93 A1 00 24 */ stw r29, 0x24(r1) -/* 8016B208 00168168 7C 9D 23 78 */ mr r29, r4 -/* 8016B20C 0016816C 93 81 00 20 */ stw r28, 0x20(r1) -/* 8016B210 00168170 7C 7C 1B 78 */ mr r28, r3 -/* 8016B214 00168174 38 9C 00 34 */ addi r4, r28, 0x34 -/* 8016B218 00168178 C0 43 00 60 */ lfs f2, 0x60(r3) -/* 8016B21C 0016817C C0 23 00 50 */ lfs f1, 0x50(r3) -/* 8016B220 00168180 C0 03 00 40 */ lfs f0, 0x40(r3) -/* 8016B224 00168184 38 61 00 08 */ addi r3, r1, 8 -/* 8016B228 00168188 D0 05 00 00 */ stfs f0, 0(r5) -/* 8016B22C 0016818C D0 25 00 04 */ stfs f1, 4(r5) -/* 8016B230 00168190 D0 45 00 08 */ stfs f2, 8(r5) -/* 8016B234 00168194 48 1A 6E F5 */ bl FromMatrix__11CQuaternionFRC12CTransform4f -/* 8016B238 00168198 C0 01 00 08 */ lfs f0, 8(r1) -/* 8016B23C 0016819C D0 1F 00 00 */ stfs f0, 0(r31) -/* 8016B240 001681A0 80 61 00 0C */ lwz r3, 0xc(r1) -/* 8016B244 001681A4 80 01 00 10 */ lwz r0, 0x10(r1) -/* 8016B248 001681A8 90 7F 00 04 */ stw r3, 4(r31) -/* 8016B24C 001681AC 90 1F 00 08 */ stw r0, 8(r31) -/* 8016B250 001681B0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8016B254 001681B4 90 1F 00 0C */ stw r0, 0xc(r31) -/* 8016B258 001681B8 80 7D 08 4C */ lwz r3, 0x84c(r29) -/* 8016B25C 001681BC A0 9C 07 B0 */ lhz r4, 0x7b0(r28) -/* 8016B260 001681C0 A0 03 00 08 */ lhz r0, 8(r3) -/* 8016B264 001681C4 7C 04 00 40 */ cmplw r4, r0 -/* 8016B268 001681C8 40 82 00 1C */ bne lbl_8016B284 -/* 8016B26C 001681CC 7F 83 E3 78 */ mr r3, r28 -/* 8016B270 001681D0 7F A4 EB 78 */ mr r4, r29 -/* 8016B274 001681D4 7F C5 F3 78 */ mr r5, r30 -/* 8016B278 001681D8 7F E6 FB 78 */ mr r6, r31 -/* 8016B27C 001681DC 4B FF F7 95 */ bl sub_8016aa10 -/* 8016B280 001681E0 48 00 00 18 */ b lbl_8016B298 -lbl_8016B284: -/* 8016B284 001681E4 7F 83 E3 78 */ mr r3, r28 -/* 8016B288 001681E8 7F A4 EB 78 */ mr r4, r29 -/* 8016B28C 001681EC 7F C5 F3 78 */ mr r5, r30 -/* 8016B290 001681F0 7F E6 FB 78 */ mr r6, r31 -/* 8016B294 001681F4 4B FF F5 2D */ bl sub_8016a7c0 -lbl_8016B298: -/* 8016B298 001681F8 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8016B29C 001681FC 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8016B2A0 00168200 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 8016B2A4 00168204 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 8016B2A8 00168208 83 81 00 20 */ lwz r28, 0x20(r1) -/* 8016B2AC 0016820C 7C 08 03 A6 */ mtlr r0 -/* 8016B2B0 00168210 38 21 00 30 */ addi r1, r1, 0x30 -/* 8016B2B4 00168214 4E 80 00 20 */ blr - -.global sub_8016b2b8 -sub_8016b2b8: -/* 8016B2B8 00168218 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8016B2BC 0016821C 7C 08 02 A6 */ mflr r0 -/* 8016B2C0 00168220 90 01 00 44 */ stw r0, 0x44(r1) -/* 8016B2C4 00168224 38 00 00 00 */ li r0, 0 -/* 8016B2C8 00168228 BF 41 00 28 */ stmw r26, 0x28(r1) -/* 8016B2CC 0016822C 7C 7A 1B 78 */ mr r26, r3 -/* 8016B2D0 00168230 7C 9B 23 78 */ mr r27, r4 -/* 8016B2D4 00168234 7C BC 2B 78 */ mr r28, r5 -/* 8016B2D8 00168238 90 01 00 08 */ stw r0, 8(r1) -/* 8016B2DC 0016823C 3B E1 00 0C */ addi r31, r1, 0xc -/* 8016B2E0 00168240 3B C0 FF FF */ li r30, -1 -/* 8016B2E4 00168244 3B A0 00 01 */ li r29, 1 -lbl_8016B2E8: -/* 8016B2E8 00168248 7F A4 EB 78 */ mr r4, r29 -/* 8016B2EC 0016824C 38 7A 05 6C */ addi r3, r26, 0x56c -/* 8016B2F0 00168250 48 00 72 31 */ bl sub_80172520 -/* 8016B2F4 00168254 88 03 00 0C */ lbz r0, 0xc(r3) -/* 8016B2F8 00168258 28 00 00 00 */ cmplwi r0, 0 -/* 8016B2FC 0016825C 41 82 00 24 */ beq lbl_8016B320 -/* 8016B300 00168260 80 01 00 08 */ lwz r0, 8(r1) -/* 8016B304 00168264 54 00 10 3A */ slwi r0, r0, 2 -/* 8016B308 00168268 7C 7F 02 15 */ add. r3, r31, r0 -/* 8016B30C 0016826C 41 82 00 08 */ beq lbl_8016B314 -/* 8016B310 00168270 93 A3 00 00 */ stw r29, 0(r3) -lbl_8016B314: -/* 8016B314 00168274 80 61 00 08 */ lwz r3, 8(r1) -/* 8016B318 00168278 38 03 00 01 */ addi r0, r3, 1 -/* 8016B31C 0016827C 90 01 00 08 */ stw r0, 8(r1) -lbl_8016B320: -/* 8016B320 00168280 3B BD 00 01 */ addi r29, r29, 1 -/* 8016B324 00168284 2C 1D 00 04 */ cmpwi r29, 4 -/* 8016B328 00168288 40 81 FF C0 */ ble lbl_8016B2E8 -/* 8016B32C 0016828C 80 81 00 08 */ lwz r4, 8(r1) -/* 8016B330 00168290 2C 04 00 00 */ cmpwi r4, 0 -/* 8016B334 00168294 41 82 00 64 */ beq lbl_8016B398 -/* 8016B338 00168298 80 7B 09 00 */ lwz r3, 0x900(r27) -/* 8016B33C 0016829C 38 A4 FF FF */ addi r5, r4, -1 -/* 8016B340 001682A0 38 80 00 00 */ li r4, 0 -/* 8016B344 001682A4 48 1A 72 51 */ bl Range__9CRandom16Fii -/* 8016B348 001682A8 54 60 10 3A */ slwi r0, r3, 2 -/* 8016B34C 001682AC 7C BF 00 2E */ lwzx r5, r31, r0 -/* 8016B350 001682B0 7C 1C 28 00 */ cmpw r28, r5 -/* 8016B354 001682B4 41 82 00 0C */ beq lbl_8016B360 -/* 8016B358 001682B8 7C BE 2B 78 */ mr r30, r5 -/* 8016B35C 001682BC 48 00 00 3C */ b lbl_8016B398 -lbl_8016B360: -/* 8016B360 001682C0 80 01 00 08 */ lwz r0, 8(r1) -/* 8016B364 001682C4 38 83 00 01 */ addi r4, r3, 1 -/* 8016B368 001682C8 7C 04 00 00 */ cmpw r4, r0 -/* 8016B36C 001682CC 40 80 00 10 */ bge lbl_8016B37C -/* 8016B370 001682D0 54 80 10 3A */ slwi r0, r4, 2 -/* 8016B374 001682D4 7F DF 00 2E */ lwzx r30, r31, r0 -/* 8016B378 001682D8 48 00 00 20 */ b lbl_8016B398 -lbl_8016B37C: -/* 8016B37C 001682DC 34 03 FF FF */ addic. r0, r3, -1 -/* 8016B380 001682E0 41 80 00 14 */ blt lbl_8016B394 -/* 8016B384 001682E4 38 03 FF FF */ addi r0, r3, -1 -/* 8016B388 001682E8 54 00 10 3A */ slwi r0, r0, 2 -/* 8016B38C 001682EC 7F DF 00 2E */ lwzx r30, r31, r0 -/* 8016B390 001682F0 48 00 00 08 */ b lbl_8016B398 -lbl_8016B394: -/* 8016B394 001682F4 7C BE 2B 78 */ mr r30, r5 -lbl_8016B398: -/* 8016B398 001682F8 80 C1 00 08 */ lwz r6, 8(r1) -/* 8016B39C 001682FC 7F C3 F3 78 */ mr r3, r30 -/* 8016B3A0 00168300 38 80 00 00 */ li r4, 0 -/* 8016B3A4 00168304 2C 06 00 00 */ cmpwi r6, 0 -/* 8016B3A8 00168308 40 81 00 40 */ ble lbl_8016B3E8 -/* 8016B3AC 0016830C 2C 06 00 08 */ cmpwi r6, 8 -/* 8016B3B0 00168310 38 A6 FF F8 */ addi r5, r6, -8 -/* 8016B3B4 00168314 40 81 00 20 */ ble lbl_8016B3D4 -/* 8016B3B8 00168318 38 05 00 07 */ addi r0, r5, 7 -/* 8016B3BC 0016831C 54 00 E8 FE */ srwi r0, r0, 3 -/* 8016B3C0 00168320 7C 09 03 A6 */ mtctr r0 -/* 8016B3C4 00168324 2C 05 00 00 */ cmpwi r5, 0 -/* 8016B3C8 00168328 40 81 00 0C */ ble lbl_8016B3D4 -lbl_8016B3CC: -/* 8016B3CC 0016832C 38 84 00 08 */ addi r4, r4, 8 -/* 8016B3D0 00168330 42 00 FF FC */ bdnz lbl_8016B3CC -lbl_8016B3D4: -/* 8016B3D4 00168334 7C 04 30 50 */ subf r0, r4, r6 -/* 8016B3D8 00168338 7C 09 03 A6 */ mtctr r0 -/* 8016B3DC 0016833C 7C 04 30 00 */ cmpw r4, r6 -/* 8016B3E0 00168340 40 80 00 08 */ bge lbl_8016B3E8 -lbl_8016B3E4: -/* 8016B3E4 00168344 42 00 00 00 */ bdnz lbl_8016B3E4 -lbl_8016B3E8: -/* 8016B3E8 00168348 BB 41 00 28 */ lmw r26, 0x28(r1) -/* 8016B3EC 0016834C 38 00 00 00 */ li r0, 0 -/* 8016B3F0 00168350 90 01 00 08 */ stw r0, 8(r1) -/* 8016B3F4 00168354 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8016B3F8 00168358 7C 08 03 A6 */ mtlr r0 -/* 8016B3FC 0016835C 38 21 00 40 */ addi r1, r1, 0x40 -/* 8016B400 00168360 4E 80 00 20 */ blr - -.global sub_8016b404 -sub_8016b404: -/* 8016B404 00168364 94 21 FB E0 */ stwu r1, -0x420(r1) -/* 8016B408 00168368 7C 08 02 A6 */ mflr r0 -/* 8016B40C 0016836C 38 A0 FF FF */ li r5, -1 -/* 8016B410 00168370 90 01 04 24 */ stw r0, 0x424(r1) -/* 8016B414 00168374 BF 01 04 00 */ stmw r24, 0x400(r1) -/* 8016B418 00168378 7C 7C 1B 78 */ mr r28, r3 -/* 8016B41C 0016837C 7C 9D 23 78 */ mr r29, r4 -/* 8016B420 00168380 4B FF FE 99 */ bl sub_8016b2b8 -/* 8016B424 00168384 7C 60 1B 78 */ mr r0, r3 -/* 8016B428 00168388 7F 83 E3 78 */ mr r3, r28 -/* 8016B42C 0016838C 7C 1A 03 78 */ mr r26, r0 -/* 8016B430 00168390 7F A4 EB 78 */ mr r4, r29 -/* 8016B434 00168394 7F 45 D3 78 */ mr r5, r26 -/* 8016B438 00168398 4B FF FE 81 */ bl sub_8016b2b8 -/* 8016B43C 0016839C 2C 1A FF FF */ cmpwi r26, -1 -/* 8016B440 001683A0 7C 7E 1B 78 */ mr r30, r3 -/* 8016B444 001683A4 41 82 03 D8 */ beq lbl_8016B81C -/* 8016B448 001683A8 2C 1E FF FF */ cmpwi r30, -1 -/* 8016B44C 001683AC 41 82 03 D0 */ beq lbl_8016B81C -/* 8016B450 001683B0 7F 44 D3 78 */ mr r4, r26 -/* 8016B454 001683B4 38 7C 05 6C */ addi r3, r28, 0x56c -/* 8016B458 001683B8 48 00 70 C9 */ bl sub_80172520 -/* 8016B45C 001683BC 80 E3 00 08 */ lwz r7, 8(r3) -/* 8016B460 001683C0 38 00 00 01 */ li r0, 1 -/* 8016B464 001683C4 80 C3 00 04 */ lwz r6, 4(r3) -/* 8016B468 001683C8 38 81 00 8C */ addi r4, r1, 0x8c -/* 8016B46C 001683CC 80 A3 00 00 */ lwz r5, 0(r3) -/* 8016B470 001683D0 38 61 01 5C */ addi r3, r1, 0x15c -/* 8016B474 001683D4 90 A1 00 8C */ stw r5, 0x8c(r1) -/* 8016B478 001683D8 90 C1 00 90 */ stw r6, 0x90(r1) -/* 8016B47C 001683DC C0 1C 07 E8 */ lfs f0, 0x7e8(r28) -/* 8016B480 001683E0 D0 01 00 94 */ stfs f0, 0x94(r1) -/* 8016B484 001683E4 C0 1C 07 EC */ lfs f0, 0x7ec(r28) -/* 8016B488 001683E8 D0 01 00 98 */ stfs f0, 0x98(r1) -/* 8016B48C 001683EC C0 1C 07 F0 */ lfs f0, 0x7f0(r28) -/* 8016B490 001683F0 D0 01 00 9C */ stfs f0, 0x9c(r1) -/* 8016B494 001683F4 98 01 00 A0 */ stb r0, 0xa0(r1) -/* 8016B498 001683F8 90 E1 00 A4 */ stw r7, 0xa4(r1) -/* 8016B49C 001683FC 4B FA B6 B9 */ bl __ct__10CModelDataFRC8CAnimRes -/* 8016B4A0 00168400 93 5C 07 CC */ stw r26, 0x7cc(r28) -/* 8016B4A4 00168404 38 61 02 D4 */ addi r3, r1, 0x2d4 -/* 8016B4A8 00168408 38 9C 05 6C */ addi r4, r28, 0x56c -/* 8016B4AC 0016840C 48 00 03 85 */ bl sub_8016b830 -/* 8016B4B0 00168410 88 01 03 FC */ lbz r0, 0x3fc(r1) -/* 8016B4B4 00168414 38 60 00 00 */ li r3, 0 -/* 8016B4B8 00168418 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 8016B4BC 0016841C 3C 60 80 3D */ lis r3, lbl_803D051C@ha -/* 8016B4C0 00168420 98 01 03 FC */ stb r0, 0x3fc(r1) -/* 8016B4C4 00168424 38 63 05 1C */ addi r3, r3, lbl_803D051C@l -/* 8016B4C8 00168428 C0 02 A0 84 */ lfs f0, lbl_805ABDA4@sda21(r2) -/* 8016B4CC 0016842C 7F A4 EB 78 */ mr r4, r29 -/* 8016B4D0 00168430 80 1C 07 CC */ lwz r0, 0x7cc(r28) -/* 8016B4D4 00168434 54 00 10 3A */ slwi r0, r0, 2 -/* 8016B4D8 00168438 7C 23 04 2E */ lfsx f1, r3, r0 -/* 8016B4DC 0016843C EC 00 00 72 */ fmuls f0, f0, f1 -/* 8016B4E0 00168440 D0 21 03 B4 */ stfs f1, 0x3b4(r1) -/* 8016B4E4 00168444 D0 01 03 B8 */ stfs f0, 0x3b8(r1) -/* 8016B4E8 00168448 80 7C 00 64 */ lwz r3, 0x64(r28) -/* 8016B4EC 0016844C 80 63 00 10 */ lwz r3, 0x10(r3) -/* 8016B4F0 00168450 38 63 01 20 */ addi r3, r3, 0x120 -/* 8016B4F4 00168454 4B F4 C8 3D */ bl DeleteAllLights__17CParticleDatabaseCFR13CStateManager -/* 8016B4F8 00168458 7F 83 E3 78 */ mr r3, r28 -/* 8016B4FC 0016845C 38 81 01 5C */ addi r4, r1, 0x15c -/* 8016B500 00168460 4B EE 9B 31 */ bl SetModelData__6CActorFRC10CModelData -/* 8016B504 00168464 C0 01 03 B4 */ lfs f0, 0x3b4(r1) -/* 8016B508 00168468 7F 83 E3 78 */ mr r3, r28 -/* 8016B50C 0016846C 7F 84 E3 78 */ mr r4, r28 -/* 8016B510 00168470 D0 1C 07 FC */ stfs f0, 0x7fc(r28) -/* 8016B514 00168474 D0 1C 07 F8 */ stfs f0, 0x7f8(r28) -/* 8016B518 00168478 C0 1C 07 E8 */ lfs f0, 0x7e8(r28) -/* 8016B51C 0016847C D0 1C 07 DC */ stfs f0, 0x7dc(r28) -/* 8016B520 00168480 C0 1C 07 EC */ lfs f0, 0x7ec(r28) -/* 8016B524 00168484 D0 1C 07 E0 */ stfs f0, 0x7e0(r28) -/* 8016B528 00168488 C0 1C 07 F0 */ lfs f0, 0x7f0(r28) -/* 8016B52C 0016848C D0 1C 07 E4 */ stfs f0, 0x7e4(r28) -/* 8016B530 00168490 C0 1C 07 DC */ lfs f0, 0x7dc(r28) -/* 8016B534 00168494 D0 1C 07 D0 */ stfs f0, 0x7d0(r28) -/* 8016B538 00168498 C0 1C 07 E0 */ lfs f0, 0x7e0(r28) -/* 8016B53C 0016849C D0 1C 07 D4 */ stfs f0, 0x7d4(r28) -/* 8016B540 001684A0 C0 1C 07 E4 */ lfs f0, 0x7e4(r28) -/* 8016B544 001684A4 D0 1C 07 D8 */ stfs f0, 0x7d8(r28) -/* 8016B548 001684A8 48 00 0E 61 */ bl sub_8016c3a8 -/* 8016B54C 001684AC 88 1C 09 BF */ lbz r0, 0x9bf(r28) -/* 8016B550 001684B0 38 60 00 01 */ li r3, 1 -/* 8016B554 001684B4 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f -/* 8016B558 001684B8 98 1C 09 BF */ stb r0, 0x9bf(r28) -/* 8016B55C 001684BC 80 7C 04 50 */ lwz r3, 0x450(r28) -/* 8016B560 001684C0 80 03 02 B8 */ lwz r0, 0x2b8(r3) -/* 8016B564 001684C4 2C 00 00 05 */ cmpwi r0, 5 -/* 8016B568 001684C8 41 82 00 10 */ beq lbl_8016B578 -/* 8016B56C 001684CC 38 63 02 A4 */ addi r3, r3, 0x2a4 -/* 8016B570 001684D0 38 80 00 05 */ li r4, 5 -/* 8016B574 001684D4 4B FC 8B 69 */ bl SetState__14CBodyStateInfoFQ23pas15EAnimationState -lbl_8016B578: -/* 8016B578 001684D8 7F C4 F3 78 */ mr r4, r30 -/* 8016B57C 001684DC 38 7C 05 6C */ addi r3, r28, 0x56c -/* 8016B580 001684E0 48 00 6F A1 */ bl sub_80172520 -/* 8016B584 001684E4 7C 7B 1B 78 */ mr r27, r3 -/* 8016B588 001684E8 38 61 01 A8 */ addi r3, r1, 0x1a8 -/* 8016B58C 001684EC 38 81 02 D4 */ addi r4, r1, 0x2d4 -/* 8016B590 001684F0 48 00 02 A1 */ bl sub_8016b830 -/* 8016B594 001684F4 3C 60 80 3D */ lis r3, lbl_803D051C@ha -/* 8016B598 001684F8 57 C0 10 3A */ slwi r0, r30, 2 -/* 8016B59C 001684FC 38 63 05 1C */ addi r3, r3, lbl_803D051C@l -/* 8016B5A0 00168500 C0 02 A0 84 */ lfs f0, lbl_805ABDA4@sda21(r2) -/* 8016B5A4 00168504 7C 23 04 2E */ lfsx f1, r3, r0 -/* 8016B5A8 00168508 38 00 00 01 */ li r0, 1 -/* 8016B5AC 0016850C 38 61 01 10 */ addi r3, r1, 0x110 -/* 8016B5B0 00168510 38 81 00 70 */ addi r4, r1, 0x70 -/* 8016B5B4 00168514 EC 00 00 72 */ fmuls f0, f0, f1 -/* 8016B5B8 00168518 D0 21 02 88 */ stfs f1, 0x288(r1) -/* 8016B5BC 0016851C D0 01 02 8C */ stfs f0, 0x28c(r1) -/* 8016B5C0 00168520 80 FB 00 08 */ lwz r7, 8(r27) -/* 8016B5C4 00168524 80 DB 00 04 */ lwz r6, 4(r27) -/* 8016B5C8 00168528 80 BB 00 00 */ lwz r5, 0(r27) -/* 8016B5CC 0016852C 90 A1 00 70 */ stw r5, 0x70(r1) -/* 8016B5D0 00168530 90 C1 00 74 */ stw r6, 0x74(r1) -/* 8016B5D4 00168534 C0 1C 07 E8 */ lfs f0, 0x7e8(r28) -/* 8016B5D8 00168538 D0 01 00 78 */ stfs f0, 0x78(r1) -/* 8016B5DC 0016853C C0 1C 07 EC */ lfs f0, 0x7ec(r28) -/* 8016B5E0 00168540 D0 01 00 7C */ stfs f0, 0x7c(r1) -/* 8016B5E4 00168544 C0 1C 07 F0 */ lfs f0, 0x7f0(r28) -/* 8016B5E8 00168548 D0 01 00 80 */ stfs f0, 0x80(r1) -/* 8016B5EC 0016854C 98 01 00 84 */ stb r0, 0x84(r1) -/* 8016B5F0 00168550 90 E1 00 88 */ stw r7, 0x88(r1) -/* 8016B5F4 00168554 4B FA B5 61 */ bl __ct__10CModelDataFRC8CAnimRes -/* 8016B5F8 00168558 7F 83 E3 78 */ mr r3, r28 -/* 8016B5FC 0016855C 7F A5 EB 78 */ mr r5, r29 -/* 8016B600 00168560 38 80 00 07 */ li r4, 7 -/* 8016B604 00168564 38 C0 FF FF */ li r6, -1 -/* 8016B608 00168568 4B EE 5A B9 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 8016B60C 0016856C 3C 60 80 3D */ lis r3, lbl_803D0550@ha -/* 8016B610 00168570 3B 60 00 00 */ li r27, 0 -/* 8016B614 00168574 38 63 05 50 */ addi r3, r3, lbl_803D0550@l -/* 8016B618 00168578 3B 20 00 00 */ li r25, 0 -/* 8016B61C 0016857C 38 83 00 B3 */ addi r4, r3, 0xb3 -/* 8016B620 00168580 3B 00 00 00 */ li r24, 0 -/* 8016B624 00168584 38 60 09 C8 */ li r3, 0x9c8 -/* 8016B628 00168588 38 A0 00 00 */ li r5, 0 -/* 8016B62C 0016858C 48 1A A2 41 */ bl __nw__FUlPCcPCc -/* 8016B630 00168590 7C 7F 1B 79 */ or. r31, r3, r3 -/* 8016B634 00168594 41 82 00 C0 */ beq lbl_8016B6F4 -/* 8016B638 00168598 A0 1C 00 08 */ lhz r0, 8(r28) -/* 8016B63C 0016859C 38 61 00 A8 */ addi r3, r1, 0xa8 -/* 8016B640 001685A0 38 9C 09 54 */ addi r4, r28, 0x954 -/* 8016B644 001685A4 B0 01 00 20 */ sth r0, 0x20(r1) -/* 8016B648 001685A8 B0 01 00 24 */ sth r0, 0x24(r1) -/* 8016B64C 001685AC 4B F5 9F D1 */ bl __ct__16CActorParametersFRC16CActorParameters -/* 8016B650 001685B0 80 FC 00 0C */ lwz r7, 0xc(r28) -/* 8016B654 001685B4 38 61 00 58 */ addi r3, r1, 0x58 -/* 8016B658 001685B8 38 81 00 3C */ addi r4, r1, 0x3c -/* 8016B65C 001685BC 38 BC 00 20 */ addi r5, r28, 0x20 -/* 8016B660 001685C0 90 E1 00 44 */ stw r7, 0x44(r1) -/* 8016B664 001685C4 38 C1 00 44 */ addi r6, r1, 0x44 -/* 8016B668 001685C8 3B 60 00 01 */ li r27, 1 -/* 8016B66C 001685CC 80 1C 00 04 */ lwz r0, 4(r28) -/* 8016B670 001685D0 90 E1 00 40 */ stw r7, 0x40(r1) -/* 8016B674 001685D4 90 01 00 38 */ stw r0, 0x38(r1) -/* 8016B678 001685D8 90 01 00 3C */ stw r0, 0x3c(r1) -/* 8016B67C 001685DC 4B EE 5E 09 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" -/* 8016B680 001685E0 3C 60 80 3D */ lis r3, lbl_803D0550@ha -/* 8016B684 001685E4 83 5C 03 FC */ lwz r26, 0x3fc(r28) -/* 8016B688 001685E8 38 83 05 50 */ addi r4, r3, lbl_803D0550@l -/* 8016B68C 001685EC 38 61 00 48 */ addi r3, r1, 0x48 -/* 8016B690 001685F0 38 84 00 BA */ addi r4, r4, 0xba -/* 8016B694 001685F4 3B 20 00 01 */ li r25, 1 -/* 8016B698 001685F8 4B E9 96 21 */ bl string_l__4rstlFPCc -/* 8016B69C 001685FC 7F A4 EB 78 */ mr r4, r29 -/* 8016B6A0 00168600 38 61 00 18 */ addi r3, r1, 0x18 -/* 8016B6A4 00168604 3B 00 00 01 */ li r24, 1 -/* 8016B6A8 00168608 4B EE 1A 35 */ bl AllocateUniqueId__13CStateManagerFv -/* 8016B6AC 0016860C A0 61 00 18 */ lhz r3, 0x18(r1) -/* 8016B6B0 00168610 38 A1 00 A8 */ addi r5, r1, 0xa8 -/* 8016B6B4 00168614 39 21 01 A8 */ addi r9, r1, 0x1a8 -/* 8016B6B8 00168618 38 01 00 24 */ addi r0, r1, 0x24 -/* 8016B6BC 0016861C B0 61 00 1C */ sth r3, 0x1c(r1) -/* 8016B6C0 00168620 7F E3 FB 78 */ mr r3, r31 -/* 8016B6C4 00168624 7F 46 D3 78 */ mr r6, r26 -/* 8016B6C8 00168628 38 81 00 1C */ addi r4, r1, 0x1c -/* 8016B6CC 0016862C 90 A1 00 08 */ stw r5, 8(r1) -/* 8016B6D0 00168630 38 A1 00 48 */ addi r5, r1, 0x48 -/* 8016B6D4 00168634 38 E1 00 58 */ addi r7, r1, 0x58 -/* 8016B6D8 00168638 39 1C 00 34 */ addi r8, r28, 0x34 -/* 8016B6DC 0016863C 91 21 00 0C */ stw r9, 0xc(r1) -/* 8016B6E0 00168640 39 21 01 10 */ addi r9, r1, 0x110 -/* 8016B6E4 00168644 39 5C 08 1C */ addi r10, r28, 0x81c -/* 8016B6E8 00168648 90 01 00 10 */ stw r0, 0x10(r1) -/* 8016B6EC 0016864C 48 00 67 7D */ bl "__ct__8CMetroidF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersRC12CMetroidData" -/* 8016B6F0 00168650 7C 7F 1B 78 */ mr r31, r3 -lbl_8016B6F4: -/* 8016B6F4 00168654 7F 00 07 75 */ extsb. r0, r24 -/* 8016B6F8 00168658 41 82 00 0C */ beq lbl_8016B704 -/* 8016B6FC 0016865C 38 61 00 48 */ addi r3, r1, 0x48 -/* 8016B700 00168660 48 1D 23 E1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -lbl_8016B704: -/* 8016B704 00168664 7F 20 07 75 */ extsb. r0, r25 -/* 8016B708 00168668 41 82 00 44 */ beq lbl_8016B74C -/* 8016B70C 0016866C 80 01 00 60 */ lwz r0, 0x60(r1) -/* 8016B710 00168670 80 61 00 68 */ lwz r3, 0x68(r1) -/* 8016B714 00168674 1C 00 00 0C */ mulli r0, r0, 0xc -/* 8016B718 00168678 90 61 00 2C */ stw r3, 0x2c(r1) -/* 8016B71C 0016867C 7C 64 1B 78 */ mr r4, r3 -/* 8016B720 00168680 7C 03 02 14 */ add r0, r3, r0 -/* 8016B724 00168684 90 61 00 28 */ stw r3, 0x28(r1) -/* 8016B728 00168688 90 01 00 34 */ stw r0, 0x34(r1) -/* 8016B72C 0016868C 90 01 00 30 */ stw r0, 0x30(r1) -/* 8016B730 00168690 48 00 00 08 */ b lbl_8016B738 -lbl_8016B734: -/* 8016B734 00168694 38 84 00 0C */ addi r4, r4, 0xc -lbl_8016B738: -/* 8016B738 00168698 7C 04 00 40 */ cmplw r4, r0 -/* 8016B73C 0016869C 40 82 FF F8 */ bne lbl_8016B734 -/* 8016B740 001686A0 28 03 00 00 */ cmplwi r3, 0 -/* 8016B744 001686A4 41 82 00 08 */ beq lbl_8016B74C -/* 8016B748 001686A8 48 1A A1 E9 */ bl Free__7CMemoryFPCv -lbl_8016B74C: -/* 8016B74C 001686AC 7F 60 07 75 */ extsb. r0, r27 -/* 8016B750 001686B0 41 82 00 10 */ beq lbl_8016B760 -/* 8016B754 001686B4 38 61 00 A8 */ addi r3, r1, 0xa8 -/* 8016B758 001686B8 38 80 FF FF */ li r4, -1 -/* 8016B75C 001686BC 4B F9 AE AD */ bl __dt__16CActorParametersFv -lbl_8016B760: -/* 8016B760 001686C0 28 1F 00 00 */ cmplwi r31, 0 -/* 8016B764 001686C4 41 82 00 88 */ beq lbl_8016B7EC -/* 8016B768 001686C8 7F A3 EB 78 */ mr r3, r29 -/* 8016B76C 001686CC 7F E4 FB 78 */ mr r4, r31 -/* 8016B770 001686D0 4B EE 15 85 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence -/* 8016B774 001686D4 7F 83 E3 78 */ mr r3, r28 -/* 8016B778 001686D8 7F E4 FB 78 */ mr r4, r31 -/* 8016B77C 001686DC 48 00 0C 2D */ bl sub_8016c3a8 -/* 8016B780 001686E0 C0 21 02 88 */ lfs f1, 0x288(r1) -/* 8016B784 001686E4 7F E3 FB 78 */ mr r3, r31 -/* 8016B788 001686E8 7F A4 EB 78 */ mr r4, r29 -/* 8016B78C 001686EC 48 00 25 7D */ bl sub_8016dd08 -/* 8016B790 001686F0 93 DF 07 CC */ stw r30, 0x7cc(r31) -/* 8016B794 001686F4 38 60 00 01 */ li r3, 1 -/* 8016B798 001686F8 88 1F 09 BF */ lbz r0, 0x9bf(r31) -/* 8016B79C 001686FC 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f -/* 8016B7A0 00168700 98 1F 09 BF */ stb r0, 0x9bf(r31) -/* 8016B7A4 00168704 C0 1C 07 E8 */ lfs f0, 0x7e8(r28) -/* 8016B7A8 00168708 D0 1F 07 DC */ stfs f0, 0x7dc(r31) -/* 8016B7AC 0016870C C0 1C 07 EC */ lfs f0, 0x7ec(r28) -/* 8016B7B0 00168710 D0 1F 07 E0 */ stfs f0, 0x7e0(r31) -/* 8016B7B4 00168714 C0 1C 07 F0 */ lfs f0, 0x7f0(r28) -/* 8016B7B8 00168718 D0 1F 07 E4 */ stfs f0, 0x7e4(r31) -/* 8016B7BC 0016871C C0 1F 07 DC */ lfs f0, 0x7dc(r31) -/* 8016B7C0 00168720 D0 1F 07 D0 */ stfs f0, 0x7d0(r31) -/* 8016B7C4 00168724 C0 1F 07 E0 */ lfs f0, 0x7e0(r31) -/* 8016B7C8 00168728 D0 1F 07 D4 */ stfs f0, 0x7d4(r31) -/* 8016B7CC 0016872C C0 1F 07 E4 */ lfs f0, 0x7e4(r31) -/* 8016B7D0 00168730 D0 1F 07 D8 */ stfs f0, 0x7d8(r31) -/* 8016B7D4 00168734 88 1F 09 BF */ lbz r0, 0x9bf(r31) -/* 8016B7D8 00168738 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 8016B7DC 0016873C 98 1F 09 BF */ stb r0, 0x9bf(r31) -/* 8016B7E0 00168740 88 7C 09 BE */ lbz r3, 0x9be(r28) -/* 8016B7E4 00168744 38 03 00 01 */ addi r0, r3, 1 -/* 8016B7E8 00168748 98 1C 09 BE */ stb r0, 0x9be(r28) -lbl_8016B7EC: -/* 8016B7EC 0016874C 38 61 01 10 */ addi r3, r1, 0x110 -/* 8016B7F0 00168750 38 80 FF FF */ li r4, -1 -/* 8016B7F4 00168754 4B FA B2 59 */ bl __dt__10CModelDataFv -/* 8016B7F8 00168758 38 61 01 A8 */ addi r3, r1, 0x1a8 -/* 8016B7FC 0016875C 38 80 FF FF */ li r4, -1 -/* 8016B800 00168760 4B F6 45 19 */ bl sub_800cfd18 -/* 8016B804 00168764 38 61 02 D4 */ addi r3, r1, 0x2d4 -/* 8016B808 00168768 38 80 FF FF */ li r4, -1 -/* 8016B80C 0016876C 4B F6 45 0D */ bl sub_800cfd18 -/* 8016B810 00168770 38 61 01 5C */ addi r3, r1, 0x15c -/* 8016B814 00168774 38 80 FF FF */ li r4, -1 -/* 8016B818 00168778 4B FA B2 35 */ bl __dt__10CModelDataFv -lbl_8016B81C: -/* 8016B81C 0016877C BB 01 04 00 */ lmw r24, 0x400(r1) -/* 8016B820 00168780 80 01 04 24 */ lwz r0, 0x424(r1) -/* 8016B824 00168784 7C 08 03 A6 */ mtlr r0 -/* 8016B828 00168788 38 21 04 20 */ addi r1, r1, 0x420 -/* 8016B82C 0016878C 4E 80 00 20 */ blr - -.global sub_8016b830 -sub_8016b830: -/* 8016B830 00168790 80 A4 00 00 */ lwz r5, 0(r4) -/* 8016B834 00168794 80 04 00 04 */ lwz r0, 4(r4) -/* 8016B838 00168798 90 A3 00 00 */ stw r5, 0(r3) -/* 8016B83C 0016879C 90 03 00 04 */ stw r0, 4(r3) -/* 8016B840 001687A0 80 A4 00 08 */ lwz r5, 8(r4) -/* 8016B844 001687A4 80 04 00 0C */ lwz r0, 0xc(r4) -/* 8016B848 001687A8 90 A3 00 08 */ stw r5, 8(r3) -/* 8016B84C 001687AC 90 03 00 0C */ stw r0, 0xc(r3) -/* 8016B850 001687B0 80 A4 00 10 */ lwz r5, 0x10(r4) -/* 8016B854 001687B4 80 04 00 14 */ lwz r0, 0x14(r4) -/* 8016B858 001687B8 90 A3 00 10 */ stw r5, 0x10(r3) -/* 8016B85C 001687BC 90 03 00 14 */ stw r0, 0x14(r3) -/* 8016B860 001687C0 80 A4 00 18 */ lwz r5, 0x18(r4) -/* 8016B864 001687C4 80 04 00 1C */ lwz r0, 0x1c(r4) -/* 8016B868 001687C8 90 A3 00 18 */ stw r5, 0x18(r3) -/* 8016B86C 001687CC 90 03 00 1C */ stw r0, 0x1c(r3) -/* 8016B870 001687D0 80 A4 00 20 */ lwz r5, 0x20(r4) -/* 8016B874 001687D4 80 04 00 24 */ lwz r0, 0x24(r4) -/* 8016B878 001687D8 90 A3 00 20 */ stw r5, 0x20(r3) -/* 8016B87C 001687DC 90 03 00 24 */ stw r0, 0x24(r3) -/* 8016B880 001687E0 80 A4 00 28 */ lwz r5, 0x28(r4) -/* 8016B884 001687E4 80 04 00 2C */ lwz r0, 0x2c(r4) -/* 8016B888 001687E8 90 A3 00 28 */ stw r5, 0x28(r3) -/* 8016B88C 001687EC 90 03 00 2C */ stw r0, 0x2c(r3) -/* 8016B890 001687F0 80 A4 00 30 */ lwz r5, 0x30(r4) -/* 8016B894 001687F4 80 04 00 34 */ lwz r0, 0x34(r4) -/* 8016B898 001687F8 90 A3 00 30 */ stw r5, 0x30(r3) -/* 8016B89C 001687FC 90 03 00 34 */ stw r0, 0x34(r3) -/* 8016B8A0 00168800 80 04 00 38 */ lwz r0, 0x38(r4) -/* 8016B8A4 00168804 90 03 00 38 */ stw r0, 0x38(r3) -/* 8016B8A8 00168808 80 A4 00 3C */ lwz r5, 0x3c(r4) -/* 8016B8AC 0016880C 80 04 00 40 */ lwz r0, 0x40(r4) -/* 8016B8B0 00168810 90 A3 00 3C */ stw r5, 0x3c(r3) -/* 8016B8B4 00168814 90 03 00 40 */ stw r0, 0x40(r3) -/* 8016B8B8 00168818 80 A4 00 44 */ lwz r5, 0x44(r4) -/* 8016B8BC 0016881C 80 04 00 48 */ lwz r0, 0x48(r4) -/* 8016B8C0 00168820 90 A3 00 44 */ stw r5, 0x44(r3) -/* 8016B8C4 00168824 90 03 00 48 */ stw r0, 0x48(r3) -/* 8016B8C8 00168828 80 A4 00 4C */ lwz r5, 0x4c(r4) -/* 8016B8CC 0016882C 80 04 00 50 */ lwz r0, 0x50(r4) -/* 8016B8D0 00168830 90 A3 00 4C */ stw r5, 0x4c(r3) -/* 8016B8D4 00168834 90 03 00 50 */ stw r0, 0x50(r3) -/* 8016B8D8 00168838 80 A4 00 54 */ lwz r5, 0x54(r4) -/* 8016B8DC 0016883C 80 04 00 58 */ lwz r0, 0x58(r4) -/* 8016B8E0 00168840 90 A3 00 54 */ stw r5, 0x54(r3) -/* 8016B8E4 00168844 90 03 00 58 */ stw r0, 0x58(r3) -/* 8016B8E8 00168848 80 04 00 5C */ lwz r0, 0x5c(r4) -/* 8016B8EC 0016884C 90 03 00 5C */ stw r0, 0x5c(r3) -/* 8016B8F0 00168850 80 04 00 60 */ lwz r0, 0x60(r4) -/* 8016B8F4 00168854 90 03 00 60 */ stw r0, 0x60(r3) -/* 8016B8F8 00168858 80 04 00 64 */ lwz r0, 0x64(r4) -/* 8016B8FC 0016885C 90 03 00 64 */ stw r0, 0x64(r3) -/* 8016B900 00168860 80 A4 00 68 */ lwz r5, 0x68(r4) -/* 8016B904 00168864 80 04 00 6C */ lwz r0, 0x6c(r4) -/* 8016B908 00168868 90 A3 00 68 */ stw r5, 0x68(r3) -/* 8016B90C 0016886C 90 03 00 6C */ stw r0, 0x6c(r3) -/* 8016B910 00168870 80 A4 00 70 */ lwz r5, 0x70(r4) -/* 8016B914 00168874 80 04 00 74 */ lwz r0, 0x74(r4) -/* 8016B918 00168878 90 A3 00 70 */ stw r5, 0x70(r3) -/* 8016B91C 0016887C 90 03 00 74 */ stw r0, 0x74(r3) -/* 8016B920 00168880 80 A4 00 78 */ lwz r5, 0x78(r4) -/* 8016B924 00168884 80 04 00 7C */ lwz r0, 0x7c(r4) -/* 8016B928 00168888 90 A3 00 78 */ stw r5, 0x78(r3) -/* 8016B92C 0016888C 90 03 00 7C */ stw r0, 0x7c(r3) -/* 8016B930 00168890 80 A4 00 80 */ lwz r5, 0x80(r4) -/* 8016B934 00168894 80 04 00 84 */ lwz r0, 0x84(r4) -/* 8016B938 00168898 90 A3 00 80 */ stw r5, 0x80(r3) -/* 8016B93C 0016889C 90 03 00 84 */ stw r0, 0x84(r3) -/* 8016B940 001688A0 80 A4 00 88 */ lwz r5, 0x88(r4) -/* 8016B944 001688A4 80 04 00 8C */ lwz r0, 0x8c(r4) -/* 8016B948 001688A8 90 A3 00 88 */ stw r5, 0x88(r3) -/* 8016B94C 001688AC 90 03 00 8C */ stw r0, 0x8c(r3) -/* 8016B950 001688B0 80 A4 00 90 */ lwz r5, 0x90(r4) -/* 8016B954 001688B4 80 04 00 94 */ lwz r0, 0x94(r4) -/* 8016B958 001688B8 90 A3 00 90 */ stw r5, 0x90(r3) -/* 8016B95C 001688BC 90 03 00 94 */ stw r0, 0x94(r3) -/* 8016B960 001688C0 80 A4 00 98 */ lwz r5, 0x98(r4) -/* 8016B964 001688C4 80 04 00 9C */ lwz r0, 0x9c(r4) -/* 8016B968 001688C8 90 A3 00 98 */ stw r5, 0x98(r3) -/* 8016B96C 001688CC 90 03 00 9C */ stw r0, 0x9c(r3) -/* 8016B970 001688D0 80 04 00 A0 */ lwz r0, 0xa0(r4) -/* 8016B974 001688D4 90 03 00 A0 */ stw r0, 0xa0(r3) -/* 8016B978 001688D8 80 A4 00 A4 */ lwz r5, 0xa4(r4) -/* 8016B97C 001688DC 80 04 00 A8 */ lwz r0, 0xa8(r4) -/* 8016B980 001688E0 90 A3 00 A4 */ stw r5, 0xa4(r3) -/* 8016B984 001688E4 90 03 00 A8 */ stw r0, 0xa8(r3) -/* 8016B988 001688E8 80 A4 00 AC */ lwz r5, 0xac(r4) -/* 8016B98C 001688EC 80 04 00 B0 */ lwz r0, 0xb0(r4) -/* 8016B990 001688F0 90 A3 00 AC */ stw r5, 0xac(r3) -/* 8016B994 001688F4 90 03 00 B0 */ stw r0, 0xb0(r3) -/* 8016B998 001688F8 80 A4 00 B4 */ lwz r5, 0xb4(r4) -/* 8016B99C 001688FC 80 04 00 B8 */ lwz r0, 0xb8(r4) -/* 8016B9A0 00168900 90 A3 00 B4 */ stw r5, 0xb4(r3) -/* 8016B9A4 00168904 90 03 00 B8 */ stw r0, 0xb8(r3) -/* 8016B9A8 00168908 80 A4 00 BC */ lwz r5, 0xbc(r4) -/* 8016B9AC 0016890C 80 04 00 C0 */ lwz r0, 0xc0(r4) -/* 8016B9B0 00168910 90 A3 00 BC */ stw r5, 0xbc(r3) -/* 8016B9B4 00168914 90 03 00 C0 */ stw r0, 0xc0(r3) -/* 8016B9B8 00168918 80 04 00 C4 */ lwz r0, 0xc4(r4) -/* 8016B9BC 0016891C 90 03 00 C4 */ stw r0, 0xc4(r3) -/* 8016B9C0 00168920 80 04 00 C8 */ lwz r0, 0xc8(r4) -/* 8016B9C4 00168924 90 03 00 C8 */ stw r0, 0xc8(r3) -/* 8016B9C8 00168928 80 04 00 CC */ lwz r0, 0xcc(r4) -/* 8016B9CC 0016892C 90 03 00 CC */ stw r0, 0xcc(r3) -/* 8016B9D0 00168930 C0 04 00 D0 */ lfs f0, 0xd0(r4) -/* 8016B9D4 00168934 D0 03 00 D0 */ stfs f0, 0xd0(r3) -/* 8016B9D8 00168938 C0 04 00 D4 */ lfs f0, 0xd4(r4) -/* 8016B9DC 0016893C D0 03 00 D4 */ stfs f0, 0xd4(r3) -/* 8016B9E0 00168940 C0 04 00 D8 */ lfs f0, 0xd8(r4) -/* 8016B9E4 00168944 D0 03 00 D8 */ stfs f0, 0xd8(r3) -/* 8016B9E8 00168948 C0 04 00 DC */ lfs f0, 0xdc(r4) -/* 8016B9EC 0016894C D0 03 00 DC */ stfs f0, 0xdc(r3) -/* 8016B9F0 00168950 C0 04 00 E0 */ lfs f0, 0xe0(r4) -/* 8016B9F4 00168954 D0 03 00 E0 */ stfs f0, 0xe0(r3) -/* 8016B9F8 00168958 C0 04 00 E4 */ lfs f0, 0xe4(r4) -/* 8016B9FC 0016895C D0 03 00 E4 */ stfs f0, 0xe4(r3) -/* 8016BA00 00168960 88 04 00 F4 */ lbz r0, 0xf4(r4) -/* 8016BA04 00168964 98 03 00 F4 */ stb r0, 0xf4(r3) -/* 8016BA08 00168968 88 04 00 F4 */ lbz r0, 0xf4(r4) -/* 8016BA0C 0016896C 28 00 00 00 */ cmplwi r0, 0 -/* 8016BA10 00168970 41 82 00 24 */ beq lbl_8016BA34 -/* 8016BA14 00168974 34 A3 00 E8 */ addic. r5, r3, 0xe8 -/* 8016BA18 00168978 41 82 00 1C */ beq lbl_8016BA34 -/* 8016BA1C 0016897C 80 04 00 E8 */ lwz r0, 0xe8(r4) -/* 8016BA20 00168980 90 05 00 00 */ stw r0, 0(r5) -/* 8016BA24 00168984 80 04 00 EC */ lwz r0, 0xec(r4) -/* 8016BA28 00168988 90 05 00 04 */ stw r0, 4(r5) -/* 8016BA2C 0016898C 80 04 00 F0 */ lwz r0, 0xf0(r4) -/* 8016BA30 00168990 90 05 00 08 */ stw r0, 8(r5) -lbl_8016BA34: -/* 8016BA34 00168994 88 04 01 04 */ lbz r0, 0x104(r4) -/* 8016BA38 00168998 98 03 01 04 */ stb r0, 0x104(r3) -/* 8016BA3C 0016899C 88 04 01 04 */ lbz r0, 0x104(r4) -/* 8016BA40 001689A0 28 00 00 00 */ cmplwi r0, 0 -/* 8016BA44 001689A4 41 82 00 24 */ beq lbl_8016BA68 -/* 8016BA48 001689A8 34 A3 00 F8 */ addic. r5, r3, 0xf8 -/* 8016BA4C 001689AC 41 82 00 1C */ beq lbl_8016BA68 -/* 8016BA50 001689B0 80 04 00 F8 */ lwz r0, 0xf8(r4) -/* 8016BA54 001689B4 90 05 00 00 */ stw r0, 0(r5) -/* 8016BA58 001689B8 80 04 00 FC */ lwz r0, 0xfc(r4) -/* 8016BA5C 001689BC 90 05 00 04 */ stw r0, 4(r5) -/* 8016BA60 001689C0 80 04 01 00 */ lwz r0, 0x100(r4) -/* 8016BA64 001689C4 90 05 00 08 */ stw r0, 8(r5) -lbl_8016BA68: -/* 8016BA68 001689C8 88 04 01 14 */ lbz r0, 0x114(r4) -/* 8016BA6C 001689CC 98 03 01 14 */ stb r0, 0x114(r3) -/* 8016BA70 001689D0 88 04 01 14 */ lbz r0, 0x114(r4) -/* 8016BA74 001689D4 28 00 00 00 */ cmplwi r0, 0 -/* 8016BA78 001689D8 41 82 00 24 */ beq lbl_8016BA9C -/* 8016BA7C 001689DC 34 A3 01 08 */ addic. r5, r3, 0x108 -/* 8016BA80 001689E0 41 82 00 1C */ beq lbl_8016BA9C -/* 8016BA84 001689E4 80 04 01 08 */ lwz r0, 0x108(r4) -/* 8016BA88 001689E8 90 05 00 00 */ stw r0, 0(r5) -/* 8016BA8C 001689EC 80 04 01 0C */ lwz r0, 0x10c(r4) -/* 8016BA90 001689F0 90 05 00 04 */ stw r0, 4(r5) -/* 8016BA94 001689F4 80 04 01 10 */ lwz r0, 0x110(r4) -/* 8016BA98 001689F8 90 05 00 08 */ stw r0, 8(r5) -lbl_8016BA9C: -/* 8016BA9C 001689FC 88 04 01 24 */ lbz r0, 0x124(r4) -/* 8016BAA0 00168A00 98 03 01 24 */ stb r0, 0x124(r3) -/* 8016BAA4 00168A04 88 04 01 24 */ lbz r0, 0x124(r4) -/* 8016BAA8 00168A08 28 00 00 00 */ cmplwi r0, 0 -/* 8016BAAC 00168A0C 41 82 00 24 */ beq lbl_8016BAD0 -/* 8016BAB0 00168A10 34 A3 01 18 */ addic. r5, r3, 0x118 -/* 8016BAB4 00168A14 41 82 00 1C */ beq lbl_8016BAD0 -/* 8016BAB8 00168A18 80 04 01 18 */ lwz r0, 0x118(r4) -/* 8016BABC 00168A1C 90 05 00 00 */ stw r0, 0(r5) -/* 8016BAC0 00168A20 80 04 01 1C */ lwz r0, 0x11c(r4) -/* 8016BAC4 00168A24 90 05 00 04 */ stw r0, 4(r5) -/* 8016BAC8 00168A28 80 04 01 20 */ lwz r0, 0x120(r4) -/* 8016BACC 00168A2C 90 05 00 08 */ stw r0, 8(r5) -lbl_8016BAD0: -/* 8016BAD0 00168A30 88 04 01 28 */ lbz r0, 0x128(r4) -/* 8016BAD4 00168A34 98 03 01 28 */ stb r0, 0x128(r3) -/* 8016BAD8 00168A38 4E 80 00 20 */ blr - -.global sub_8016badc -sub_8016badc: -/* 8016BADC 00168A3C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8016BAE0 00168A40 7C 08 02 A6 */ mflr r0 -/* 8016BAE4 00168A44 90 01 00 14 */ stw r0, 0x14(r1) -/* 8016BAE8 00168A48 80 03 03 FC */ lwz r0, 0x3fc(r3) -/* 8016BAEC 00168A4C 2C 00 00 02 */ cmpwi r0, 2 -/* 8016BAF0 00168A50 40 82 00 68 */ bne lbl_8016BB58 -/* 8016BAF4 00168A54 A0 83 09 BC */ lhz r4, 0x9bc(r3) -/* 8016BAF8 00168A58 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016BAFC 00168A5C 7C 04 00 40 */ cmplw r4, r0 -/* 8016BB00 00168A60 40 82 00 58 */ bne lbl_8016BB58 -/* 8016BB04 00168A64 88 03 09 BE */ lbz r0, 0x9be(r3) -/* 8016BB08 00168A68 28 00 00 00 */ cmplwi r0, 0 -/* 8016BB0C 00168A6C 40 82 00 4C */ bne lbl_8016BB58 -/* 8016BB10 00168A70 C0 63 07 F8 */ lfs f3, 0x7f8(r3) -/* 8016BB14 00168A74 C0 43 07 FC */ lfs f2, 0x7fc(r3) -/* 8016BB18 00168A78 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016BB1C 00168A7C EC 23 10 28 */ fsubs f1, f3, f2 -/* 8016BB20 00168A80 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8016BB24 00168A84 40 81 00 34 */ ble lbl_8016BB58 -/* 8016BB28 00168A88 C0 03 06 4C */ lfs f0, 0x64c(r3) -/* 8016BB2C 00168A8C FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8016BB30 00168A90 40 80 00 28 */ bge lbl_8016BB58 -/* 8016BB34 00168A94 FC 03 00 40 */ fcmpo cr0, f3, f0 -/* 8016BB38 00168A98 4C 41 13 82 */ cror 2, 1, 2 -/* 8016BB3C 00168A9C 40 82 00 1C */ bne lbl_8016BB58 -/* 8016BB40 00168AA0 38 63 05 6C */ addi r3, r3, 0x56c -/* 8016BB44 00168AA4 48 00 6A 2D */ bl sub_80172570 -/* 8016BB48 00168AA8 7C 03 00 D0 */ neg r0, r3 -/* 8016BB4C 00168AAC 7C 00 1B 78 */ or r0, r0, r3 -/* 8016BB50 00168AB0 54 03 0F FE */ srwi r3, r0, 0x1f -/* 8016BB54 00168AB4 48 00 00 08 */ b lbl_8016BB5C -lbl_8016BB58: -/* 8016BB58 00168AB8 38 60 00 00 */ li r3, 0 -lbl_8016BB5C: -/* 8016BB5C 00168ABC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8016BB60 00168AC0 7C 08 03 A6 */ mtlr r0 -/* 8016BB64 00168AC4 38 21 00 10 */ addi r1, r1, 0x10 -/* 8016BB68 00168AC8 4E 80 00 20 */ blr - -.global sub_8016bb6c -sub_8016bb6c: -/* 8016BB6C 00168ACC 94 21 FF 30 */ stwu r1, -0xd0(r1) -/* 8016BB70 00168AD0 7C 08 02 A6 */ mflr r0 -/* 8016BB74 00168AD4 90 01 00 D4 */ stw r0, 0xd4(r1) -/* 8016BB78 00168AD8 DB E1 00 C0 */ stfd f31, 0xc0(r1) -/* 8016BB7C 00168ADC F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 -/* 8016BB80 00168AE0 93 E1 00 BC */ stw r31, 0xbc(r1) -/* 8016BB84 00168AE4 3C C0 80 5A */ lis r6, skZero3f@ha -/* 8016BB88 00168AE8 3C A0 80 5A */ lis r5, lbl_805A6660@ha -/* 8016BB8C 00168AEC 38 E5 66 60 */ addi r7, r5, lbl_805A6660@l -/* 8016BB90 00168AF0 FF E0 08 90 */ fmr f31, f1 -/* 8016BB94 00168AF4 38 A6 66 A0 */ addi r5, r6, skZero3f@l -/* 8016BB98 00168AF8 C0 67 00 00 */ lfs f3, 0(r7) -/* 8016BB9C 00168AFC C0 C5 00 00 */ lfs f6, 0(r5) -/* 8016BBA0 00168B00 7C 7F 1B 78 */ mr r31, r3 -/* 8016BBA4 00168B04 C0 A5 00 04 */ lfs f5, 4(r5) -/* 8016BBA8 00168B08 C0 85 00 08 */ lfs f4, 8(r5) -/* 8016BBAC 00168B0C 38 A1 00 70 */ addi r5, r1, 0x70 -/* 8016BBB0 00168B10 C0 47 00 04 */ lfs f2, 4(r7) -/* 8016BBB4 00168B14 38 C1 00 60 */ addi r6, r1, 0x60 -/* 8016BBB8 00168B18 C0 27 00 08 */ lfs f1, 8(r7) -/* 8016BBBC 00168B1C C0 07 00 0C */ lfs f0, 0xc(r7) -/* 8016BBC0 00168B20 D0 C1 00 70 */ stfs f6, 0x70(r1) -/* 8016BBC4 00168B24 D0 A1 00 74 */ stfs f5, 0x74(r1) -/* 8016BBC8 00168B28 D0 81 00 78 */ stfs f4, 0x78(r1) -/* 8016BBCC 00168B2C D0 61 00 60 */ stfs f3, 0x60(r1) -/* 8016BBD0 00168B30 D0 41 00 64 */ stfs f2, 0x64(r1) -/* 8016BBD4 00168B34 D0 21 00 68 */ stfs f1, 0x68(r1) -/* 8016BBD8 00168B38 D0 01 00 6C */ stfs f0, 0x6c(r1) -/* 8016BBDC 00168B3C 4B FF F6 0D */ bl sub_8016b1e8 -/* 8016BBE0 00168B40 C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) -/* 8016BBE4 00168B44 38 61 00 24 */ addi r3, r1, 0x24 -/* 8016BBE8 00168B48 C0 41 00 74 */ lfs f2, 0x74(r1) -/* 8016BBEC 00168B4C 38 9F 00 34 */ addi r4, r31, 0x34 -/* 8016BBF0 00168B50 C0 21 00 78 */ lfs f1, 0x78(r1) -/* 8016BBF4 00168B54 EC C0 F8 28 */ fsubs f6, f0, f31 -/* 8016BBF8 00168B58 C0 01 00 70 */ lfs f0, 0x70(r1) -/* 8016BBFC 00168B5C EC 82 07 F2 */ fmuls f4, f2, f31 -/* 8016BC00 00168B60 C0 BF 00 50 */ lfs f5, 0x50(r31) -/* 8016BC04 00168B64 EC 41 07 F2 */ fmuls f2, f1, f31 -/* 8016BC08 00168B68 C0 7F 00 60 */ lfs f3, 0x60(r31) -/* 8016BC0C 00168B6C EC 00 07 F2 */ fmuls f0, f0, f31 -/* 8016BC10 00168B70 C0 3F 00 40 */ lfs f1, 0x40(r31) -/* 8016BC14 00168B74 EC 85 21 BA */ fmadds f4, f5, f6, f4 -/* 8016BC18 00168B78 EC 43 11 BA */ fmadds f2, f3, f6, f2 -/* 8016BC1C 00168B7C EC 01 01 BA */ fmadds f0, f1, f6, f0 -/* 8016BC20 00168B80 D0 81 00 58 */ stfs f4, 0x58(r1) -/* 8016BC24 00168B84 D0 01 00 54 */ stfs f0, 0x54(r1) -/* 8016BC28 00168B88 D0 41 00 5C */ stfs f2, 0x5c(r1) -/* 8016BC2C 00168B8C 48 1A 64 FD */ bl FromMatrix__11CQuaternionFRC12CTransform4f -/* 8016BC30 00168B90 FC 20 F8 90 */ fmr f1, f31 -/* 8016BC34 00168B94 38 61 00 34 */ addi r3, r1, 0x34 -/* 8016BC38 00168B98 38 81 00 24 */ addi r4, r1, 0x24 -/* 8016BC3C 00168B9C 38 A1 00 60 */ addi r5, r1, 0x60 -/* 8016BC40 00168BA0 48 1A 59 79 */ bl SlerpLocal__11CQuaternionFRC11CQuaternionRC11CQuaternionf -/* 8016BC44 00168BA4 C0 61 00 34 */ lfs f3, 0x34(r1) -/* 8016BC48 00168BA8 7F E3 FB 78 */ mr r3, r31 -/* 8016BC4C 00168BAC C0 41 00 38 */ lfs f2, 0x38(r1) -/* 8016BC50 00168BB0 38 81 00 54 */ addi r4, r1, 0x54 -/* 8016BC54 00168BB4 C0 21 00 3C */ lfs f1, 0x3c(r1) -/* 8016BC58 00168BB8 C0 01 00 40 */ lfs f0, 0x40(r1) -/* 8016BC5C 00168BBC D0 61 00 44 */ stfs f3, 0x44(r1) -/* 8016BC60 00168BC0 D0 41 00 48 */ stfs f2, 0x48(r1) -/* 8016BC64 00168BC4 D0 21 00 4C */ stfs f1, 0x4c(r1) -/* 8016BC68 00168BC8 D0 01 00 50 */ stfs f0, 0x50(r1) -/* 8016BC6C 00168BCC 4B EE 72 21 */ bl SetTranslation__6CActorFRC9CVector3f -/* 8016BC70 00168BD0 38 61 00 14 */ addi r3, r1, 0x14 -/* 8016BC74 00168BD4 38 81 00 44 */ addi r4, r1, 0x44 -/* 8016BC78 00168BD8 48 1A 57 25 */ bl BuildNormalized__11CQuaternionCFv -/* 8016BC7C 00168BDC C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 8016BC80 00168BE0 38 61 00 7C */ addi r3, r1, 0x7c -/* 8016BC84 00168BE4 C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 8016BC88 00168BE8 38 81 00 14 */ addi r4, r1, 0x14 -/* 8016BC8C 00168BEC C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 8016BC90 00168BF0 38 A1 00 08 */ addi r5, r1, 8 -/* 8016BC94 00168BF4 D0 01 00 08 */ stfs f0, 8(r1) -/* 8016BC98 00168BF8 D0 21 00 0C */ stfs f1, 0xc(r1) -/* 8016BC9C 00168BFC D0 41 00 10 */ stfs f2, 0x10(r1) -/* 8016BCA0 00168C00 48 1A 62 1D */ bl BuildTransform4f__11CQuaternionCFRC9CVector3f -/* 8016BCA4 00168C04 38 7F 00 34 */ addi r3, r31, 0x34 -/* 8016BCA8 00168C08 38 81 00 7C */ addi r4, r1, 0x7c -/* 8016BCAC 00168C0C 48 1A 6E 95 */ bl __as__12CTransform4fFRC12CTransform4f -/* 8016BCB0 00168C10 88 1F 00 E4 */ lbz r0, 0xe4(r31) -/* 8016BCB4 00168C14 38 60 00 01 */ li r3, 1 -/* 8016BCB8 00168C18 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 8016BCBC 00168C1C 98 1F 00 E4 */ stb r0, 0xe4(r31) -/* 8016BCC0 00168C20 88 1F 00 E4 */ lbz r0, 0xe4(r31) -/* 8016BCC4 00168C24 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 8016BCC8 00168C28 98 1F 00 E4 */ stb r0, 0xe4(r31) -/* 8016BCCC 00168C2C 88 1F 00 E4 */ lbz r0, 0xe4(r31) -/* 8016BCD0 00168C30 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d -/* 8016BCD4 00168C34 98 1F 00 E4 */ stb r0, 0xe4(r31) -/* 8016BCD8 00168C38 E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 -/* 8016BCDC 00168C3C 80 01 00 D4 */ lwz r0, 0xd4(r1) -/* 8016BCE0 00168C40 CB E1 00 C0 */ lfd f31, 0xc0(r1) -/* 8016BCE4 00168C44 83 E1 00 BC */ lwz r31, 0xbc(r1) -/* 8016BCE8 00168C48 7C 08 03 A6 */ mtlr r0 -/* 8016BCEC 00168C4C 38 21 00 D0 */ addi r1, r1, 0xd0 -/* 8016BCF0 00168C50 4E 80 00 20 */ blr - -.global sub_8016bcf4 -sub_8016bcf4: -/* 8016BCF4 00168C54 94 21 FE 60 */ stwu r1, -0x1a0(r1) -/* 8016BCF8 00168C58 7C 08 02 A6 */ mflr r0 -/* 8016BCFC 00168C5C 90 01 01 A4 */ stw r0, 0x1a4(r1) -/* 8016BD00 00168C60 DB E1 01 90 */ stfd f31, 0x190(r1) -/* 8016BD04 00168C64 F3 E1 01 98 */ psq_st f31, 408(r1), 0, qr0 -/* 8016BD08 00168C68 DB C1 01 80 */ stfd f30, 0x180(r1) -/* 8016BD0C 00168C6C F3 C1 01 88 */ psq_st f30, 392(r1), 0, qr0 -/* 8016BD10 00168C70 93 E1 01 7C */ stw r31, 0x17c(r1) -/* 8016BD14 00168C74 93 C1 01 78 */ stw r30, 0x178(r1) -/* 8016BD18 00168C78 93 A1 01 74 */ stw r29, 0x174(r1) -/* 8016BD1C 00168C7C 7C 7D 1B 78 */ mr r29, r3 -/* 8016BD20 00168C80 38 A0 00 00 */ li r5, 0 -/* 8016BD24 00168C84 88 03 09 C0 */ lbz r0, 0x9c0(r3) -/* 8016BD28 00168C88 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 -/* 8016BD2C 00168C8C FF E0 08 90 */ fmr f31, f1 -/* 8016BD30 00168C90 7C 9E 23 78 */ mr r30, r4 -/* 8016BD34 00168C94 98 03 09 C0 */ stb r0, 0x9c0(r3) -/* 8016BD38 00168C98 A0 A3 07 B0 */ lhz r5, 0x7b0(r3) -/* 8016BD3C 00168C9C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016BD40 00168CA0 7C 05 00 40 */ cmplw r5, r0 -/* 8016BD44 00168CA4 41 82 04 E8 */ beq lbl_8016C22C -/* 8016BD48 00168CA8 80 1D 07 C8 */ lwz r0, 0x7c8(r29) -/* 8016BD4C 00168CAC 2C 00 00 02 */ cmpwi r0, 2 -/* 8016BD50 00168CB0 41 82 00 80 */ beq lbl_8016BDD0 -/* 8016BD54 00168CB4 40 80 00 14 */ bge lbl_8016BD68 -/* 8016BD58 00168CB8 2C 00 00 00 */ cmpwi r0, 0 -/* 8016BD5C 00168CBC 41 82 04 D0 */ beq lbl_8016C22C -/* 8016BD60 00168CC0 40 80 00 14 */ bge lbl_8016BD74 -/* 8016BD64 00168CC4 48 00 04 C8 */ b lbl_8016C22C -lbl_8016BD68: -/* 8016BD68 00168CC8 2C 00 00 04 */ cmpwi r0, 4 -/* 8016BD6C 00168CCC 40 80 04 C0 */ bge lbl_8016C22C -/* 8016BD70 00168CD0 48 00 03 E0 */ b lbl_8016C150 -lbl_8016BD74: -/* 8016BD74 00168CD4 C0 22 A0 A0 */ lfs f1, lbl_805ABDC0@sda21(r2) -/* 8016BD78 00168CD8 4B FF FD F5 */ bl sub_8016bb6c -/* 8016BD7C 00168CDC 80 9E 08 4C */ lwz r4, 0x84c(r30) -/* 8016BD80 00168CE0 A0 1D 07 B0 */ lhz r0, 0x7b0(r29) -/* 8016BD84 00168CE4 A0 64 00 08 */ lhz r3, 8(r4) -/* 8016BD88 00168CE8 7C 03 00 40 */ cmplw r3, r0 -/* 8016BD8C 00168CEC 40 82 00 38 */ bne lbl_8016BDC4 -/* 8016BD90 00168CF0 88 1D 04 02 */ lbz r0, 0x402(r29) -/* 8016BD94 00168CF4 38 60 00 01 */ li r3, 1 -/* 8016BD98 00168CF8 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 8016BD9C 00168CFC C0 02 A0 B0 */ lfs f0, lbl_805ABDD0@sda21(r2) -/* 8016BDA0 00168D00 98 1D 04 02 */ stb r0, 0x402(r29) -/* 8016BDA4 00168D04 7F C3 F3 78 */ mr r3, r30 -/* 8016BDA8 00168D08 38 A1 00 40 */ addi r5, r1, 0x40 -/* 8016BDAC 00168D0C 38 C0 00 29 */ li r6, 0x29 -/* 8016BDB0 00168D10 D0 1D 05 04 */ stfs f0, 0x504(r29) -/* 8016BDB4 00168D14 A0 1D 00 08 */ lhz r0, 8(r29) -/* 8016BDB8 00168D18 B0 01 00 3C */ sth r0, 0x3c(r1) -/* 8016BDBC 00168D1C B0 01 00 40 */ sth r0, 0x40(r1) -/* 8016BDC0 00168D20 4B ED 81 11 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -lbl_8016BDC4: -/* 8016BDC4 00168D24 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016BDC8 00168D28 D0 1D 07 C0 */ stfs f0, 0x7c0(r29) -/* 8016BDCC 00168D2C 48 00 04 60 */ b lbl_8016C22C -lbl_8016BDD0: -/* 8016BDD0 00168D30 A0 1D 07 B0 */ lhz r0, 0x7b0(r29) -/* 8016BDD4 00168D34 7F C3 F3 78 */ mr r3, r30 -/* 8016BDD8 00168D38 38 81 00 38 */ addi r4, r1, 0x38 -/* 8016BDDC 00168D3C B0 01 00 38 */ sth r0, 0x38(r1) -/* 8016BDE0 00168D40 4B EE 07 95 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8016BDE4 00168D44 7C 64 1B 78 */ mr r4, r3 -/* 8016BDE8 00168D48 38 61 00 5C */ addi r3, r1, 0x5c -/* 8016BDEC 00168D4C 4B F4 3E A5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8016BDF0 00168D50 80 63 00 04 */ lwz r3, 4(r3) -/* 8016BDF4 00168D54 28 03 00 00 */ cmplwi r3, 0 -/* 8016BDF8 00168D58 41 82 02 74 */ beq lbl_8016C06C -/* 8016BDFC 00168D5C 81 83 00 00 */ lwz r12, 0(r3) -/* 8016BE00 00168D60 7F C4 F3 78 */ mr r4, r30 -/* 8016BE04 00168D64 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8016BE08 00168D68 7D 89 03 A6 */ mtctr r12 -/* 8016BE0C 00168D6C 4E 80 04 21 */ bctrl -/* 8016BE10 00168D70 28 03 00 00 */ cmplwi r3, 0 -/* 8016BE14 00168D74 41 82 02 58 */ beq lbl_8016C06C -/* 8016BE18 00168D78 C3 DD 06 3C */ lfs f30, 0x63c(r29) -/* 8016BE1C 00168D7C 7F A3 EB 78 */ mr r3, r29 -/* 8016BE20 00168D80 48 00 21 21 */ bl sub_8016df40 -/* 8016BE24 00168D84 EC 5F 07 B2 */ fmuls f2, f31, f30 -/* 8016BE28 00168D88 C0 1D 07 BC */ lfs f0, 0x7bc(r29) -/* 8016BE2C 00168D8C EF C2 00 72 */ fmuls f30, f2, f1 -/* 8016BE30 00168D90 EC 00 F0 2A */ fadds f0, f0, f30 -/* 8016BE34 00168D94 D0 1D 07 BC */ stfs f0, 0x7bc(r29) -/* 8016BE38 00168D98 83 FE 08 4C */ lwz r31, 0x84c(r30) -/* 8016BE3C 00168D9C A0 7D 07 B0 */ lhz r3, 0x7b0(r29) -/* 8016BE40 00168DA0 A0 1F 00 08 */ lhz r0, 8(r31) -/* 8016BE44 00168DA4 7C 03 00 40 */ cmplw r3, r0 -/* 8016BE48 00168DA8 40 82 01 08 */ bne lbl_8016BF50 -/* 8016BE4C 00168DAC 88 81 00 58 */ lbz r4, 0x58(r1) -/* 8016BE50 00168DB0 38 60 00 00 */ li r3, 0 -/* 8016BE54 00168DB4 50 64 3E 30 */ rlwimi r4, r3, 7, 0x18, 0x18 -/* 8016BE58 00168DB8 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016BE5C 00168DBC 54 87 06 3E */ clrlwi r7, r4, 0x18 -/* 8016BE60 00168DC0 88 01 01 34 */ lbz r0, 0x134(r1) -/* 8016BE64 00168DC4 39 00 00 0A */ li r8, 0xa -/* 8016BE68 00168DC8 38 A0 00 01 */ li r5, 1 -/* 8016BE6C 00168DCC 50 67 36 72 */ rlwimi r7, r3, 6, 0x19, 0x19 -/* 8016BE70 00168DD0 91 01 01 1C */ stw r8, 0x11c(r1) -/* 8016BE74 00168DD4 54 E6 06 3E */ clrlwi r6, r7, 0x18 -/* 8016BE78 00168DD8 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 -/* 8016BE7C 00168DDC 50 66 2E B4 */ rlwimi r6, r3, 5, 0x1a, 0x1a -/* 8016BE80 00168DE0 98 81 00 58 */ stb r4, 0x58(r1) -/* 8016BE84 00168DE4 38 60 00 00 */ li r3, 0 -/* 8016BE88 00168DE8 38 80 00 01 */ li r4, 1 -/* 8016BE8C 00168DEC 98 E1 00 58 */ stb r7, 0x58(r1) -/* 8016BE90 00168DF0 D3 C1 01 24 */ stfs f30, 0x124(r1) -/* 8016BE94 00168DF4 98 C1 01 20 */ stb r6, 0x120(r1) -/* 8016BE98 00168DF8 D3 C1 01 28 */ stfs f30, 0x128(r1) -/* 8016BE9C 00168DFC D0 01 01 2C */ stfs f0, 0x12c(r1) -/* 8016BEA0 00168E00 D0 01 01 30 */ stfs f0, 0x130(r1) -/* 8016BEA4 00168E04 98 01 01 34 */ stb r0, 0x134(r1) -/* 8016BEA8 00168E08 88 1F 09 C7 */ lbz r0, 0x9c7(r31) -/* 8016BEAC 00168E0C 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 -/* 8016BEB0 00168E10 91 01 00 54 */ stw r8, 0x54(r1) -/* 8016BEB4 00168E14 98 1F 09 C7 */ stb r0, 0x9c7(r31) -/* 8016BEB8 00168E18 80 AD 8D 98 */ lwz r5, lbl_805A7958@sda21(r13) -/* 8016BEBC 00168E1C 98 C1 00 58 */ stb r6, 0x58(r1) -/* 8016BEC0 00168E20 48 21 E0 35 */ bl __shl2i -/* 8016BEC4 00168E24 39 40 00 00 */ li r10, 0 -/* 8016BEC8 00168E28 38 00 00 03 */ li r0, 3 -/* 8016BECC 00168E2C 90 81 00 EC */ stw r4, 0xec(r1) -/* 8016BED0 00168E30 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8016BED4 00168E34 39 24 66 A0 */ addi r9, r4, skZero3f@l -/* 8016BED8 00168E38 38 A1 00 2C */ addi r5, r1, 0x2c -/* 8016BEDC 00168E3C 90 61 00 E8 */ stw r3, 0xe8(r1) -/* 8016BEE0 00168E40 38 81 00 34 */ addi r4, r1, 0x34 -/* 8016BEE4 00168E44 7F C3 F3 78 */ mr r3, r30 -/* 8016BEE8 00168E48 38 C1 00 28 */ addi r6, r1, 0x28 -/* 8016BEEC 00168E4C 91 41 00 F4 */ stw r10, 0xf4(r1) -/* 8016BEF0 00168E50 38 E1 01 1C */ addi r7, r1, 0x11c -/* 8016BEF4 00168E54 39 01 00 E8 */ addi r8, r1, 0xe8 -/* 8016BEF8 00168E58 91 41 00 F0 */ stw r10, 0xf0(r1) -/* 8016BEFC 00168E5C 90 01 00 F8 */ stw r0, 0xf8(r1) -/* 8016BF00 00168E60 A1 5D 00 08 */ lhz r10, 8(r29) -/* 8016BF04 00168E64 B1 41 00 28 */ sth r10, 0x28(r1) -/* 8016BF08 00168E68 A0 1D 07 B0 */ lhz r0, 0x7b0(r29) -/* 8016BF0C 00168E6C B1 41 00 24 */ sth r10, 0x24(r1) -/* 8016BF10 00168E70 B0 01 00 2C */ sth r0, 0x2c(r1) -/* 8016BF14 00168E74 A0 1D 00 08 */ lhz r0, 8(r29) -/* 8016BF18 00168E78 B0 01 00 30 */ sth r0, 0x30(r1) -/* 8016BF1C 00168E7C B0 01 00 34 */ sth r0, 0x34(r1) -/* 8016BF20 00168E80 4B ED E1 81 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f -/* 8016BF24 00168E84 88 1F 09 C7 */ lbz r0, 0x9c7(r31) -/* 8016BF28 00168E88 38 60 00 00 */ li r3, 0 -/* 8016BF2C 00168E8C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 8016BF30 00168E90 98 1F 09 C7 */ stb r0, 0x9c7(r31) -/* 8016BF34 00168E94 80 7F 02 F8 */ lwz r3, 0x2f8(r31) -/* 8016BF38 00168E98 88 1D 09 C0 */ lbz r0, 0x9c0(r29) -/* 8016BF3C 00168E9C 20 63 00 01 */ subfic r3, r3, 1 -/* 8016BF40 00168EA0 7C 63 00 34 */ cntlzw r3, r3 -/* 8016BF44 00168EA4 50 60 16 30 */ rlwimi r0, r3, 2, 0x18, 0x18 -/* 8016BF48 00168EA8 98 1D 09 C0 */ stb r0, 0x9c0(r29) -/* 8016BF4C 00168EAC 48 00 00 D8 */ b lbl_8016C024 -lbl_8016BF50: -/* 8016BF50 00168EB0 38 E0 00 00 */ li r7, 0 -/* 8016BF54 00168EB4 88 01 00 50 */ lbz r0, 0x50(r1) -/* 8016BF58 00168EB8 50 E0 3E 30 */ rlwimi r0, r7, 7, 0x18, 0x18 -/* 8016BF5C 00168EBC 88 7D 09 C0 */ lbz r3, 0x9c0(r29) -/* 8016BF60 00168EC0 38 80 00 01 */ li r4, 1 -/* 8016BF64 00168EC4 98 01 00 50 */ stb r0, 0x50(r1) -/* 8016BF68 00168EC8 50 83 3E 30 */ rlwimi r3, r4, 7, 0x18, 0x18 -/* 8016BF6C 00168ECC 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 8016BF70 00168ED0 98 7D 09 C0 */ stb r3, 0x9c0(r29) -/* 8016BF74 00168ED4 50 E0 36 72 */ rlwimi r0, r7, 6, 0x19, 0x19 -/* 8016BF78 00168ED8 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016BF7C 00168EDC 54 06 06 3E */ clrlwi r6, r0, 0x18 -/* 8016BF80 00168EE0 98 01 00 50 */ stb r0, 0x50(r1) -/* 8016BF84 00168EE4 50 E6 2E B4 */ rlwimi r6, r7, 5, 0x1a, 0x1a -/* 8016BF88 00168EE8 88 01 01 18 */ lbz r0, 0x118(r1) -/* 8016BF8C 00168EEC 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 -/* 8016BF90 00168EF0 80 AD 8D 98 */ lwz r5, lbl_805A7958@sda21(r13) -/* 8016BF94 00168EF4 38 60 00 00 */ li r3, 0 -/* 8016BF98 00168EF8 90 E1 00 4C */ stw r7, 0x4c(r1) -/* 8016BF9C 00168EFC 38 80 00 01 */ li r4, 1 -/* 8016BFA0 00168F00 98 C1 00 50 */ stb r6, 0x50(r1) -/* 8016BFA4 00168F04 90 E1 01 00 */ stw r7, 0x100(r1) -/* 8016BFA8 00168F08 98 C1 01 04 */ stb r6, 0x104(r1) -/* 8016BFAC 00168F0C D3 C1 01 08 */ stfs f30, 0x108(r1) -/* 8016BFB0 00168F10 D3 C1 01 0C */ stfs f30, 0x10c(r1) -/* 8016BFB4 00168F14 D0 01 01 10 */ stfs f0, 0x110(r1) -/* 8016BFB8 00168F18 D0 01 01 14 */ stfs f0, 0x114(r1) -/* 8016BFBC 00168F1C 98 01 01 18 */ stb r0, 0x118(r1) -/* 8016BFC0 00168F20 48 21 DF 35 */ bl __shl2i -/* 8016BFC4 00168F24 39 40 00 00 */ li r10, 0 -/* 8016BFC8 00168F28 38 00 00 03 */ li r0, 3 -/* 8016BFCC 00168F2C 90 81 00 D4 */ stw r4, 0xd4(r1) -/* 8016BFD0 00168F30 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8016BFD4 00168F34 39 24 66 A0 */ addi r9, r4, skZero3f@l -/* 8016BFD8 00168F38 38 A1 00 18 */ addi r5, r1, 0x18 -/* 8016BFDC 00168F3C 90 61 00 D0 */ stw r3, 0xd0(r1) -/* 8016BFE0 00168F40 38 81 00 20 */ addi r4, r1, 0x20 -/* 8016BFE4 00168F44 7F C3 F3 78 */ mr r3, r30 -/* 8016BFE8 00168F48 38 C1 00 14 */ addi r6, r1, 0x14 -/* 8016BFEC 00168F4C 91 41 00 DC */ stw r10, 0xdc(r1) -/* 8016BFF0 00168F50 38 E1 01 00 */ addi r7, r1, 0x100 -/* 8016BFF4 00168F54 39 01 00 D0 */ addi r8, r1, 0xd0 -/* 8016BFF8 00168F58 91 41 00 D8 */ stw r10, 0xd8(r1) -/* 8016BFFC 00168F5C 90 01 00 E0 */ stw r0, 0xe0(r1) -/* 8016C000 00168F60 A1 5D 00 08 */ lhz r10, 8(r29) -/* 8016C004 00168F64 B1 41 00 14 */ sth r10, 0x14(r1) -/* 8016C008 00168F68 A0 1D 07 B0 */ lhz r0, 0x7b0(r29) -/* 8016C00C 00168F6C B1 41 00 10 */ sth r10, 0x10(r1) -/* 8016C010 00168F70 B0 01 00 18 */ sth r0, 0x18(r1) -/* 8016C014 00168F74 A0 1D 00 08 */ lhz r0, 8(r29) -/* 8016C018 00168F78 B0 01 00 1C */ sth r0, 0x1c(r1) -/* 8016C01C 00168F7C B0 01 00 20 */ sth r0, 0x20(r1) -/* 8016C020 00168F80 4B ED E0 81 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f -lbl_8016C024: -/* 8016C024 00168F84 7F A3 EB 78 */ mr r3, r29 -/* 8016C028 00168F88 48 00 1F 49 */ bl sub_8016df70 -/* 8016C02C 00168F8C C0 02 A0 84 */ lfs f0, lbl_805ABDA4@sda21(r2) -/* 8016C030 00168F90 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8016C034 00168F94 40 80 00 18 */ bge lbl_8016C04C -/* 8016C038 00168F98 FC 20 F0 90 */ fmr f1, f30 -/* 8016C03C 00168F9C 7F A3 EB 78 */ mr r3, r29 -/* 8016C040 00168FA0 7F C4 F3 78 */ mr r4, r30 -/* 8016C044 00168FA4 48 00 1C C5 */ bl sub_8016dd08 -/* 8016C048 00168FA8 48 00 00 24 */ b lbl_8016C06C -lbl_8016C04C: -/* 8016C04C 00168FAC 81 9D 00 00 */ lwz r12, 0(r29) -/* 8016C050 00168FB0 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8016C054 00168FB4 7F A3 EB 78 */ mr r3, r29 -/* 8016C058 00168FB8 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) -/* 8016C05C 00168FBC 81 8C 00 90 */ lwz r12, 0x90(r12) -/* 8016C060 00168FC0 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 8016C064 00168FC4 7D 89 03 A6 */ mtctr r12 -/* 8016C068 00168FC8 4E 80 04 21 */ bctrl -lbl_8016C06C: -/* 8016C06C 00168FCC 80 9E 08 4C */ lwz r4, 0x84c(r30) -/* 8016C070 00168FD0 A0 1D 07 B0 */ lhz r0, 0x7b0(r29) -/* 8016C074 00168FD4 A0 64 00 08 */ lhz r3, 8(r4) -/* 8016C078 00168FD8 C3 C2 A0 B4 */ lfs f30, lbl_805ABDD4@sda21(r2) -/* 8016C07C 00168FDC 7C 03 00 40 */ cmplw r3, r0 -/* 8016C080 00168FE0 40 82 00 B0 */ bne lbl_8016C130 -/* 8016C084 00168FE4 80 04 02 F8 */ lwz r0, 0x2f8(r4) -/* 8016C088 00168FE8 2C 00 00 00 */ cmpwi r0, 0 -/* 8016C08C 00168FEC 41 82 00 10 */ beq lbl_8016C09C -/* 8016C090 00168FF0 2C 00 00 01 */ cmpwi r0, 1 -/* 8016C094 00168FF4 41 82 00 08 */ beq lbl_8016C09C -/* 8016C098 00168FF8 C3 C2 A0 A0 */ lfs f30, lbl_805ABDC0@sda21(r2) -lbl_8016C09C: -/* 8016C09C 00168FFC 2C 00 00 00 */ cmpwi r0, 0 -/* 8016C0A0 00169000 40 82 00 78 */ bne lbl_8016C118 -/* 8016C0A4 00169004 C0 22 A0 B8 */ lfs f1, lbl_805ABDD8@sda21(r2) -/* 8016C0A8 00169008 C0 1D 07 C0 */ lfs f0, 0x7c0(r29) -/* 8016C0AC 0016900C EC 21 00 32 */ fmuls f1, f1, f0 -/* 8016C0B0 00169010 48 1A 8D 41 */ bl FastSinR__5CMathFf -/* 8016C0B4 00169014 FC 00 0A 10 */ fabs f0, f1 -/* 8016C0B8 00169018 38 81 00 48 */ addi r4, r1, 0x48 -/* 8016C0BC 0016901C 38 6D 8E 14 */ addi r3, r13, lbl_805A79D4@sda21 -/* 8016C0C0 00169020 38 AD 8E 18 */ addi r5, r13, lbl_805A79D8@sda21 -/* 8016C0C4 00169024 FC 00 00 18 */ frsp f0, f0 -/* 8016C0C8 00169028 D0 01 00 48 */ stfs f0, 0x48(r1) -/* 8016C0CC 0016902C 4B EA 01 E9 */ bl "Clamp__5CMathFRCfRCfRCf" -/* 8016C0D0 00169030 A0 1D 00 08 */ lhz r0, 8(r29) -/* 8016C0D4 00169034 38 81 00 0C */ addi r4, r1, 0xc -/* 8016C0D8 00169038 C0 23 00 00 */ lfs f1, 0(r3) -/* 8016C0DC 0016903C C0 42 A0 B0 */ lfs f2, lbl_805ABDD0@sda21(r2) -/* 8016C0E0 00169040 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8016C0E4 00169044 80 7E 08 B8 */ lwz r3, 0x8b8(r30) -/* 8016C0E8 00169048 B0 01 00 08 */ sth r0, 8(r1) -/* 8016C0EC 0016904C 80 63 00 00 */ lwz r3, 0(r3) -/* 8016C0F0 00169050 38 63 01 88 */ addi r3, r3, 0x188 -/* 8016C0F4 00169054 48 05 4A 45 */ bl AddSource__19CStaticInterferenceF9TUniqueId -/* 8016C0F8 00169058 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 8016C0FC 0016905C C0 22 A0 B0 */ lfs f1, lbl_805ABDD0@sda21(r2) -/* 8016C100 00169060 C0 03 07 40 */ lfs f0, 0x740(r3) -/* 8016C104 00169064 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 8016C108 00169068 40 80 00 10 */ bge lbl_8016C118 -/* 8016C10C 0016906C C0 42 80 F8 */ lfs f2, lbl_805A9E18@sda21(r2) -/* 8016C110 00169070 C0 62 80 FC */ lfs f3, lbl_805A9E1C@sda21(r2) -/* 8016C114 00169074 4B EA 6F 59 */ bl SetHudDisable__7CPlayerFfff -lbl_8016C118: -/* 8016C118 00169078 88 1D 04 02 */ lbz r0, 0x402(r29) -/* 8016C11C 0016907C 38 60 00 01 */ li r3, 1 -/* 8016C120 00169080 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 8016C124 00169084 C0 02 A0 B0 */ lfs f0, lbl_805ABDD0@sda21(r2) -/* 8016C128 00169088 98 1D 04 02 */ stb r0, 0x402(r29) -/* 8016C12C 0016908C D0 1D 05 04 */ stfs f0, 0x504(r29) -lbl_8016C130: -/* 8016C130 00169090 FC 20 F0 90 */ fmr f1, f30 -/* 8016C134 00169094 7F A3 EB 78 */ mr r3, r29 -/* 8016C138 00169098 7F C4 F3 78 */ mr r4, r30 -/* 8016C13C 0016909C 4B FF FA 31 */ bl sub_8016bb6c -/* 8016C140 001690A0 C0 1D 07 C0 */ lfs f0, 0x7c0(r29) -/* 8016C144 001690A4 EC 00 F8 2A */ fadds f0, f0, f31 -/* 8016C148 001690A8 D0 1D 07 C0 */ stfs f0, 0x7c0(r29) -/* 8016C14C 001690AC 48 00 00 E0 */ b lbl_8016C22C -lbl_8016C150: -/* 8016C150 001690B0 4B EE 83 61 */ bl GetYaw__6CActorCFv -/* 8016C154 001690B4 D0 21 00 44 */ stfs f1, 0x44(r1) -/* 8016C158 001690B8 38 61 00 A0 */ addi r3, r1, 0xa0 -/* 8016C15C 001690BC 38 81 00 44 */ addi r4, r1, 0x44 -/* 8016C160 001690C0 48 1A 4F 99 */ bl ZRotation__11CQuaternionFRC9CRelAngle -/* 8016C164 001690C4 C0 61 00 A0 */ lfs f3, 0xa0(r1) -/* 8016C168 001690C8 38 61 00 80 */ addi r3, r1, 0x80 -/* 8016C16C 001690CC C0 41 00 A4 */ lfs f2, 0xa4(r1) -/* 8016C170 001690D0 38 9D 00 34 */ addi r4, r29, 0x34 -/* 8016C174 001690D4 C0 21 00 A8 */ lfs f1, 0xa8(r1) -/* 8016C178 001690D8 C0 01 00 AC */ lfs f0, 0xac(r1) -/* 8016C17C 001690DC D0 61 00 C0 */ stfs f3, 0xc0(r1) -/* 8016C180 001690E0 D0 41 00 C4 */ stfs f2, 0xc4(r1) -/* 8016C184 001690E4 D0 21 00 C8 */ stfs f1, 0xc8(r1) -/* 8016C188 001690E8 D0 01 00 CC */ stfs f0, 0xcc(r1) -/* 8016C18C 001690EC 48 1A 5F 9D */ bl FromMatrix__11CQuaternionFRC12CTransform4f -/* 8016C190 001690F0 C0 22 A0 B4 */ lfs f1, lbl_805ABDD4@sda21(r2) -/* 8016C194 001690F4 38 61 00 90 */ addi r3, r1, 0x90 -/* 8016C198 001690F8 38 81 00 80 */ addi r4, r1, 0x80 -/* 8016C19C 001690FC 38 A1 00 C0 */ addi r5, r1, 0xc0 -/* 8016C1A0 00169100 48 1A 54 19 */ bl SlerpLocal__11CQuaternionFRC11CQuaternionRC11CQuaternionf -/* 8016C1A4 00169104 C0 61 00 90 */ lfs f3, 0x90(r1) -/* 8016C1A8 00169108 38 61 00 70 */ addi r3, r1, 0x70 -/* 8016C1AC 0016910C C0 41 00 94 */ lfs f2, 0x94(r1) -/* 8016C1B0 00169110 38 81 00 B0 */ addi r4, r1, 0xb0 -/* 8016C1B4 00169114 C0 21 00 98 */ lfs f1, 0x98(r1) -/* 8016C1B8 00169118 C0 01 00 9C */ lfs f0, 0x9c(r1) -/* 8016C1BC 0016911C D0 61 00 B0 */ stfs f3, 0xb0(r1) -/* 8016C1C0 00169120 D0 41 00 B4 */ stfs f2, 0xb4(r1) -/* 8016C1C4 00169124 D0 21 00 B8 */ stfs f1, 0xb8(r1) -/* 8016C1C8 00169128 D0 01 00 BC */ stfs f0, 0xbc(r1) -/* 8016C1CC 0016912C 48 1A 51 D1 */ bl BuildNormalized__11CQuaternionCFv -/* 8016C1D0 00169130 C0 5D 00 60 */ lfs f2, 0x60(r29) -/* 8016C1D4 00169134 38 61 01 38 */ addi r3, r1, 0x138 -/* 8016C1D8 00169138 C0 3D 00 50 */ lfs f1, 0x50(r29) -/* 8016C1DC 0016913C 38 81 00 70 */ addi r4, r1, 0x70 -/* 8016C1E0 00169140 C0 1D 00 40 */ lfs f0, 0x40(r29) -/* 8016C1E4 00169144 38 A1 00 64 */ addi r5, r1, 0x64 -/* 8016C1E8 00169148 D0 01 00 64 */ stfs f0, 0x64(r1) -/* 8016C1EC 0016914C D0 21 00 68 */ stfs f1, 0x68(r1) -/* 8016C1F0 00169150 D0 41 00 6C */ stfs f2, 0x6c(r1) -/* 8016C1F4 00169154 48 1A 5C C9 */ bl BuildTransform4f__11CQuaternionCFRC9CVector3f -/* 8016C1F8 00169158 38 7D 00 34 */ addi r3, r29, 0x34 -/* 8016C1FC 0016915C 38 81 01 38 */ addi r4, r1, 0x138 -/* 8016C200 00169160 48 1A 69 41 */ bl __as__12CTransform4fFRC12CTransform4f -/* 8016C204 00169164 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 8016C208 00169168 38 60 00 01 */ li r3, 1 -/* 8016C20C 0016916C 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 8016C210 00169170 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 8016C214 00169174 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 8016C218 00169178 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 8016C21C 0016917C 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 8016C220 00169180 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 8016C224 00169184 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d -/* 8016C228 00169188 98 1D 00 E4 */ stb r0, 0xe4(r29) -lbl_8016C22C: -/* 8016C22C 0016918C E3 E1 01 98 */ psq_l f31, 408(r1), 0, qr0 -/* 8016C230 00169190 CB E1 01 90 */ lfd f31, 0x190(r1) -/* 8016C234 00169194 E3 C1 01 88 */ psq_l f30, 392(r1), 0, qr0 -/* 8016C238 00169198 CB C1 01 80 */ lfd f30, 0x180(r1) -/* 8016C23C 0016919C 83 E1 01 7C */ lwz r31, 0x17c(r1) -/* 8016C240 001691A0 83 C1 01 78 */ lwz r30, 0x178(r1) -/* 8016C244 001691A4 80 01 01 A4 */ lwz r0, 0x1a4(r1) -/* 8016C248 001691A8 83 A1 01 74 */ lwz r29, 0x174(r1) -/* 8016C24C 001691AC 7C 08 03 A6 */ mtlr r0 -/* 8016C250 001691B0 38 21 01 A0 */ addi r1, r1, 0x1a0 -/* 8016C254 001691B4 4E 80 00 20 */ blr - -.global sub_8016c258 -sub_8016c258: -/* 8016C258 001691B8 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8016C25C 001691BC 7C 08 02 A6 */ mflr r0 -/* 8016C260 001691C0 90 01 00 34 */ stw r0, 0x34(r1) -/* 8016C264 001691C4 DB E1 00 20 */ stfd f31, 0x20(r1) -/* 8016C268 001691C8 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 -/* 8016C26C 001691CC 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8016C270 001691D0 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8016C274 001691D4 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8016C278 001691D8 7C 9E 23 78 */ mr r30, r4 -/* 8016C27C 001691DC 80 83 04 50 */ lwz r4, 0x450(r3) -/* 8016C280 001691E0 7C 7D 1B 78 */ mr r29, r3 -/* 8016C284 001691E4 88 04 03 00 */ lbz r0, 0x300(r4) -/* 8016C288 001691E8 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f -/* 8016C28C 001691EC 41 82 00 0C */ beq lbl_8016C298 -/* 8016C290 001691F0 38 60 00 01 */ li r3, 1 -/* 8016C294 001691F4 48 00 00 F0 */ b lbl_8016C384 -lbl_8016C298: -/* 8016C298 001691F8 83 FE 08 4C */ lwz r31, 0x84c(r30) -/* 8016C29C 001691FC A0 9D 07 B0 */ lhz r4, 0x7b0(r29) -/* 8016C2A0 00169200 A0 1F 00 08 */ lhz r0, 8(r31) -/* 8016C2A4 00169204 7C 04 00 40 */ cmplw r4, r0 -/* 8016C2A8 00169208 40 82 00 58 */ bne lbl_8016C300 -/* 8016C2AC 0016920C C3 FD 06 40 */ lfs f31, 0x640(r29) -/* 8016C2B0 00169210 48 00 1C 91 */ bl sub_8016df40 -/* 8016C2B4 00169214 EC 3F 00 72 */ fmuls f1, f31, f1 -/* 8016C2B8 00169218 C0 1D 07 BC */ lfs f0, 0x7bc(r29) -/* 8016C2BC 0016921C FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 8016C2C0 00169220 4C 41 13 82 */ cror 2, 1, 2 -/* 8016C2C4 00169224 41 82 00 18 */ beq lbl_8016C2DC -/* 8016C2C8 00169228 7F A3 EB 78 */ mr r3, r29 -/* 8016C2CC 0016922C 7F C4 F3 78 */ mr r4, r30 -/* 8016C2D0 00169230 4B FF DE B1 */ bl sub_8016a180 -/* 8016C2D4 00169234 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016C2D8 00169238 41 82 00 0C */ beq lbl_8016C2E4 -lbl_8016C2DC: -/* 8016C2DC 0016923C 38 60 00 01 */ li r3, 1 -/* 8016C2E0 00169240 48 00 00 A4 */ b lbl_8016C384 -lbl_8016C2E4: -/* 8016C2E4 00169244 80 1F 02 F8 */ lwz r0, 0x2f8(r31) -/* 8016C2E8 00169248 2C 00 00 00 */ cmpwi r0, 0 -/* 8016C2EC 0016924C 41 82 00 94 */ beq lbl_8016C380 -/* 8016C2F0 00169250 7F A3 EB 78 */ mr r3, r29 -/* 8016C2F4 00169254 7F C4 F3 78 */ mr r4, r30 -/* 8016C2F8 00169258 4B FF E2 25 */ bl sub_8016a51c -/* 8016C2FC 0016925C 48 00 00 88 */ b lbl_8016C384 -lbl_8016C300: -/* 8016C300 00169260 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016C304 00169264 7C 04 00 40 */ cmplw r4, r0 -/* 8016C308 00169268 41 82 00 78 */ beq lbl_8016C380 -/* 8016C30C 0016926C A0 1D 07 B0 */ lhz r0, 0x7b0(r29) -/* 8016C310 00169270 7F C3 F3 78 */ mr r3, r30 -/* 8016C314 00169274 38 81 00 08 */ addi r4, r1, 8 -/* 8016C318 00169278 B0 01 00 08 */ sth r0, 8(r1) -/* 8016C31C 0016927C 4B EE 02 89 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8016C320 00169280 7C 64 1B 78 */ mr r4, r3 -/* 8016C324 00169284 38 61 00 0C */ addi r3, r1, 0xc -/* 8016C328 00169288 4B F3 90 A9 */ bl sub_800a53d0 -/* 8016C32C 0016928C 4B F3 90 79 */ bl "CastTo<12CSpacePirate>__10CPatternedFP7CEntity" -/* 8016C330 00169290 28 03 00 00 */ cmplwi r3, 0 -/* 8016C334 00169294 41 82 00 44 */ beq lbl_8016C378 -/* 8016C338 00169298 88 03 06 38 */ lbz r0, 0x638(r3) -/* 8016C33C 0016929C 3B E0 00 01 */ li r31, 1 -/* 8016C340 001692A0 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f -/* 8016C344 001692A4 40 82 00 2C */ bne lbl_8016C370 -/* 8016C348 001692A8 80 63 04 50 */ lwz r3, 0x450(r3) -/* 8016C34C 001692AC 38 63 02 A4 */ addi r3, r3, 0x2a4 -/* 8016C350 001692B0 4B FC 7D 29 */ bl GetCurrentState__14CBodyStateInfoCFv -/* 8016C354 001692B4 81 83 00 00 */ lwz r12, 0(r3) -/* 8016C358 001692B8 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 8016C35C 001692BC 7D 89 03 A6 */ mtctr r12 -/* 8016C360 001692C0 4E 80 04 21 */ bctrl -/* 8016C364 001692C4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016C368 001692C8 40 82 00 08 */ bne lbl_8016C370 -/* 8016C36C 001692CC 3B E0 00 00 */ li r31, 0 -lbl_8016C370: -/* 8016C370 001692D0 7F E3 FB 78 */ mr r3, r31 -/* 8016C374 001692D4 48 00 00 10 */ b lbl_8016C384 -lbl_8016C378: -/* 8016C378 001692D8 38 60 00 01 */ li r3, 1 -/* 8016C37C 001692DC 48 00 00 08 */ b lbl_8016C384 -lbl_8016C380: -/* 8016C380 001692E0 38 60 00 00 */ li r3, 0 -lbl_8016C384: -/* 8016C384 001692E4 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 -/* 8016C388 001692E8 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8016C38C 001692EC CB E1 00 20 */ lfd f31, 0x20(r1) -/* 8016C390 001692F0 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8016C394 001692F4 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8016C398 001692F8 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 8016C39C 001692FC 7C 08 03 A6 */ mtlr r0 -/* 8016C3A0 00169300 38 21 00 30 */ addi r1, r1, 0x30 -/* 8016C3A4 00169304 4E 80 00 20 */ blr - -.global sub_8016c3a8 -sub_8016c3a8: -/* 8016C3A8 00169308 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8016C3AC 0016930C 7C 08 02 A6 */ mflr r0 -/* 8016C3B0 00169310 90 01 00 34 */ stw r0, 0x34(r1) -/* 8016C3B4 00169314 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8016C3B8 00169318 93 C1 00 28 */ stw r30, 0x28(r1) -/* 8016C3BC 0016931C 93 A1 00 24 */ stw r29, 0x24(r1) -/* 8016C3C0 00169320 7C 9D 23 78 */ mr r29, r4 -/* 8016C3C4 00169324 7F A3 EB 78 */ mr r3, r29 -/* 8016C3C8 00169328 4B EE 74 F5 */ bl GetMaterialFilter__6CActorCFv -/* 8016C3CC 0016932C 80 03 00 00 */ lwz r0, 0(r3) -/* 8016C3D0 00169330 38 80 00 01 */ li r4, 1 -/* 8016C3D4 00169334 80 C3 00 04 */ lwz r6, 4(r3) -/* 8016C3D8 00169338 80 AD 8E 0C */ lwz r5, lbl_805A79CC@sda21(r13) -/* 8016C3DC 0016933C 90 C1 00 0C */ stw r6, 0xc(r1) -/* 8016C3E0 00169340 90 01 00 08 */ stw r0, 8(r1) -/* 8016C3E4 00169344 80 03 00 08 */ lwz r0, 8(r3) -/* 8016C3E8 00169348 80 C3 00 0C */ lwz r6, 0xc(r3) -/* 8016C3EC 0016934C 90 C1 00 14 */ stw r6, 0x14(r1) -/* 8016C3F0 00169350 90 01 00 10 */ stw r0, 0x10(r1) -/* 8016C3F4 00169354 80 03 00 10 */ lwz r0, 0x10(r3) -/* 8016C3F8 00169358 38 60 00 00 */ li r3, 0 -/* 8016C3FC 0016935C 90 01 00 18 */ stw r0, 0x18(r1) -/* 8016C400 00169360 48 21 DA F5 */ bl __shl2i -/* 8016C404 00169364 80 AD 8E 10 */ lwz r5, lbl_805A79D0@sda21(r13) -/* 8016C408 00169368 7C 9E 23 78 */ mr r30, r4 -/* 8016C40C 0016936C 7C 7F 1B 78 */ mr r31, r3 -/* 8016C410 00169370 38 60 00 00 */ li r3, 0 -/* 8016C414 00169374 38 80 00 01 */ li r4, 1 -/* 8016C418 00169378 48 21 DA DD */ bl __shl2i -/* 8016C41C 0016937C 80 01 00 10 */ lwz r0, 0x10(r1) -/* 8016C420 00169380 7F FF 1B 78 */ or r31, r31, r3 -/* 8016C424 00169384 7F DE 23 78 */ or r30, r30, r4 -/* 8016C428 00169388 80 81 00 14 */ lwz r4, 0x14(r1) -/* 8016C42C 0016938C 7C 00 FB 78 */ or r0, r0, r31 -/* 8016C430 00169390 7F A3 EB 78 */ mr r3, r29 -/* 8016C434 00169394 7C 85 F3 78 */ or r5, r4, r30 -/* 8016C438 00169398 90 01 00 10 */ stw r0, 0x10(r1) -/* 8016C43C 0016939C 38 81 00 08 */ addi r4, r1, 8 -/* 8016C440 001693A0 90 A1 00 14 */ stw r5, 0x14(r1) -/* 8016C444 001693A4 4B EE 74 5D */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter -/* 8016C448 001693A8 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8016C44C 001693AC 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8016C450 001693B0 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 8016C454 001693B4 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 8016C458 001693B8 7C 08 03 A6 */ mtlr r0 -/* 8016C45C 001693BC 38 21 00 30 */ addi r1, r1, 0x30 -/* 8016C460 001693C0 4E 80 00 20 */ blr - -.global sub_8016c464 -sub_8016c464: -/* 8016C464 001693C4 94 21 F6 E0 */ stwu r1, -0x920(r1) -/* 8016C468 001693C8 7C 08 02 A6 */ mflr r0 -/* 8016C46C 001693CC 90 01 09 24 */ stw r0, 0x924(r1) -/* 8016C470 001693D0 93 E1 09 1C */ stw r31, 0x91c(r1) -/* 8016C474 001693D4 7C 9F 23 78 */ mr r31, r4 -/* 8016C478 001693D8 38 80 00 01 */ li r4, 1 -/* 8016C47C 001693DC 93 C1 09 18 */ stw r30, 0x918(r1) -/* 8016C480 001693E0 7C 7E 1B 78 */ mr r30, r3 -/* 8016C484 001693E4 38 60 00 00 */ li r3, 0 -/* 8016C488 001693E8 93 A1 09 14 */ stw r29, 0x914(r1) -/* 8016C48C 001693EC 93 81 09 10 */ stw r28, 0x910(r1) -/* 8016C490 001693F0 80 AD 8D F0 */ lwz r5, lbl_805A79B0@sda21(r13) -/* 8016C494 001693F4 48 21 DA 61 */ bl __shl2i -/* 8016C498 001693F8 80 AD 8D F4 */ lwz r5, lbl_805A79B4@sda21(r13) -/* 8016C49C 001693FC 7C 9C 23 78 */ mr r28, r4 -/* 8016C4A0 00169400 7C 7D 1B 78 */ mr r29, r3 -/* 8016C4A4 00169404 38 60 00 00 */ li r3, 0 -/* 8016C4A8 00169408 38 80 00 01 */ li r4, 1 -/* 8016C4AC 0016940C 48 21 DA 49 */ bl __shl2i -/* 8016C4B0 00169410 38 A0 00 01 */ li r5, 1 -/* 8016C4B4 00169414 38 00 00 00 */ li r0, 0 -/* 8016C4B8 00169418 7F 9C 23 78 */ or r28, r28, r4 -/* 8016C4BC 0016941C 7F BD 1B 78 */ or r29, r29, r3 -/* 8016C4C0 00169420 93 81 00 C4 */ stw r28, 0xc4(r1) -/* 8016C4C4 00169424 93 A1 00 C0 */ stw r29, 0xc0(r1) -/* 8016C4C8 00169428 90 01 00 CC */ stw r0, 0xcc(r1) -/* 8016C4CC 0016942C 90 01 00 C8 */ stw r0, 0xc8(r1) -/* 8016C4D0 00169430 90 A1 00 D0 */ stw r5, 0xd0(r1) -/* 8016C4D4 00169434 88 1E 09 BF */ lbz r0, 0x9bf(r30) -/* 8016C4D8 00169438 90 A1 00 70 */ stw r5, 0x70(r1) -/* 8016C4DC 0016943C 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f -/* 8016C4E0 00169440 41 82 01 18 */ beq lbl_8016C5F8 -/* 8016C4E4 00169444 7F E3 FB 78 */ mr r3, r31 -/* 8016C4E8 00169448 38 9E 06 A0 */ addi r4, r30, 0x6a0 -/* 8016C4EC 0016944C 38 BE 00 34 */ addi r5, r30, 0x34 -/* 8016C4F0 00169450 38 C1 00 C0 */ addi r6, r1, 0xc0 -/* 8016C4F4 00169454 48 01 6E AD */ bl DetectStaticCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter -/* 8016C4F8 00169458 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016C4FC 0016945C 40 82 00 FC */ bne lbl_8016C5F8 -/* 8016C500 00169460 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) -/* 8016C504 00169464 3B 80 00 01 */ li r28, 1 -/* 8016C508 00169468 C0 5E 08 0C */ lfs f2, 0x80c(r30) -/* 8016C50C 0016946C 38 00 00 00 */ li r0, 0 -/* 8016C510 00169470 FC 01 10 00 */ fcmpu cr0, f1, f2 -/* 8016C514 00169474 40 82 00 1C */ bne lbl_8016C530 -/* 8016C518 00169478 C0 1E 08 10 */ lfs f0, 0x810(r30) -/* 8016C51C 0016947C FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 8016C520 00169480 40 82 00 10 */ bne lbl_8016C530 -/* 8016C524 00169484 C0 1E 08 14 */ lfs f0, 0x814(r30) -/* 8016C528 00169488 FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 8016C52C 0016948C 41 82 00 08 */ beq lbl_8016C534 -lbl_8016C530: -/* 8016C530 00169490 38 00 00 01 */ li r0, 1 -lbl_8016C534: -/* 8016C534 00169494 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 8016C538 00169498 41 82 00 98 */ beq lbl_8016C5D0 -/* 8016C53C 0016949C C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 8016C540 001694A0 38 61 00 38 */ addi r3, r1, 0x38 -/* 8016C544 001694A4 C0 9E 00 50 */ lfs f4, 0x50(r30) -/* 8016C548 001694A8 C0 7E 08 10 */ lfs f3, 0x810(r30) -/* 8016C54C 001694AC EC 00 10 28 */ fsubs f0, f0, f2 -/* 8016C550 001694B0 C0 5E 00 60 */ lfs f2, 0x60(r30) -/* 8016C554 001694B4 C0 3E 08 14 */ lfs f1, 0x814(r30) -/* 8016C558 001694B8 EC 64 18 28 */ fsubs f3, f4, f3 -/* 8016C55C 001694BC EC 22 08 28 */ fsubs f1, f2, f1 -/* 8016C560 001694C0 D0 01 00 38 */ stfs f0, 0x38(r1) -/* 8016C564 001694C4 D0 61 00 3C */ stfs f3, 0x3c(r1) -/* 8016C568 001694C8 D0 21 00 40 */ stfs f1, 0x40(r1) -/* 8016C56C 001694CC 48 1A 83 4D */ bl Magnitude__9CVector3fCFv -/* 8016C570 001694D0 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016C574 001694D4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8016C578 001694D8 40 81 00 58 */ ble lbl_8016C5D0 -/* 8016C57C 001694DC C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) -/* 8016C580 001694E0 7F E4 FB 78 */ mr r4, r31 -/* 8016C584 001694E4 C0 61 00 38 */ lfs f3, 0x38(r1) -/* 8016C588 001694E8 38 61 00 D8 */ addi r3, r1, 0xd8 -/* 8016C58C 001694EC EC 80 08 24 */ fdivs f4, f0, f1 -/* 8016C590 001694F0 C0 41 00 3C */ lfs f2, 0x3c(r1) -/* 8016C594 001694F4 C0 01 00 40 */ lfs f0, 0x40(r1) -/* 8016C598 001694F8 38 BE 08 0C */ addi r5, r30, 0x80c -/* 8016C59C 001694FC 38 C1 00 2C */ addi r6, r1, 0x2c -/* 8016C5A0 00169500 38 E1 00 C0 */ addi r7, r1, 0xc0 -/* 8016C5A4 00169504 EC 64 00 F2 */ fmuls f3, f4, f3 -/* 8016C5A8 00169508 EC 44 00 B2 */ fmuls f2, f4, f2 -/* 8016C5AC 0016950C EC 04 00 32 */ fmuls f0, f4, f0 -/* 8016C5B0 00169510 D0 61 00 2C */ stfs f3, 0x2c(r1) -/* 8016C5B4 00169514 D0 41 00 30 */ stfs f2, 0x30(r1) -/* 8016C5B8 00169518 D0 01 00 34 */ stfs f0, 0x34(r1) -/* 8016C5BC 0016951C 4B EE 09 DD */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter -/* 8016C5C0 00169520 88 01 00 F8 */ lbz r0, 0xf8(r1) -/* 8016C5C4 00169524 7C 00 00 34 */ cntlzw r0, r0 -/* 8016C5C8 00169528 54 00 D9 7E */ srwi r0, r0, 5 -/* 8016C5CC 0016952C 7C 1C 03 78 */ mr r28, r0 -lbl_8016C5D0: -/* 8016C5D0 00169530 57 80 06 3F */ clrlwi. r0, r28, 0x18 -/* 8016C5D4 00169534 41 82 00 24 */ beq lbl_8016C5F8 -/* 8016C5D8 00169538 7F C3 F3 78 */ mr r3, r30 -/* 8016C5DC 0016953C 7F E5 FB 78 */ mr r5, r31 -/* 8016C5E0 00169540 38 80 00 13 */ li r4, 0x13 -/* 8016C5E4 00169544 4B EE 7D 6D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 8016C5E8 00169548 88 1E 09 BF */ lbz r0, 0x9bf(r30) -/* 8016C5EC 0016954C 38 60 00 00 */ li r3, 0 -/* 8016C5F0 00169550 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e -/* 8016C5F4 00169554 98 1E 09 BF */ stb r0, 0x9bf(r30) -lbl_8016C5F8: -/* 8016C5F8 00169558 88 1E 09 BF */ lbz r0, 0x9bf(r30) -/* 8016C5FC 0016955C 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 8016C600 00169560 41 82 02 08 */ beq lbl_8016C808 -/* 8016C604 00169564 38 00 00 00 */ li r0, 0 -/* 8016C608 00169568 80 AD 8D F8 */ lwz r5, lbl_805A79B8@sda21(r13) -/* 8016C60C 0016956C 90 01 01 08 */ stw r0, 0x108(r1) -/* 8016C610 00169570 38 60 00 00 */ li r3, 0 -/* 8016C614 00169574 38 80 00 01 */ li r4, 1 -/* 8016C618 00169578 48 21 D8 DD */ bl __shl2i -/* 8016C61C 0016957C 80 AD 8D FC */ lwz r5, lbl_805A79BC@sda21(r13) -/* 8016C620 00169580 7C 9D 23 78 */ mr r29, r4 -/* 8016C624 00169584 7C 7C 1B 78 */ mr r28, r3 -/* 8016C628 00169588 38 60 00 00 */ li r3, 0 -/* 8016C62C 0016958C 38 80 00 01 */ li r4, 1 -/* 8016C630 00169590 48 21 D8 C5 */ bl __shl2i -/* 8016C634 00169594 80 AD 8E 00 */ lwz r5, lbl_805A79C0@sda21(r13) -/* 8016C638 00169598 7F BD 23 78 */ or r29, r29, r4 -/* 8016C63C 0016959C 7F 9C 1B 78 */ or r28, r28, r3 -/* 8016C640 001695A0 38 60 00 00 */ li r3, 0 -/* 8016C644 001695A4 38 80 00 01 */ li r4, 1 -/* 8016C648 001695A8 48 21 D8 AD */ bl __shl2i -/* 8016C64C 001695AC 7F BD 23 78 */ or r29, r29, r4 -/* 8016C650 001695B0 7F 9C 1B 78 */ or r28, r28, r3 -/* 8016C654 001695B4 38 C0 00 01 */ li r6, 1 -/* 8016C658 001695B8 38 00 00 00 */ li r0, 0 -/* 8016C65C 001695BC 93 A1 00 AC */ stw r29, 0xac(r1) -/* 8016C660 001695C0 38 61 00 90 */ addi r3, r1, 0x90 -/* 8016C664 001695C4 38 81 00 14 */ addi r4, r1, 0x14 -/* 8016C668 001695C8 38 A1 00 08 */ addi r5, r1, 8 -/* 8016C66C 001695CC 93 81 00 A8 */ stw r28, 0xa8(r1) -/* 8016C670 001695D0 90 01 00 B4 */ stw r0, 0xb4(r1) -/* 8016C674 001695D4 90 01 00 B0 */ stw r0, 0xb0(r1) -/* 8016C678 001695D8 90 C1 00 B8 */ stw r6, 0xb8(r1) -/* 8016C67C 001695DC 80 FE 00 64 */ lwz r7, 0x64(r30) -/* 8016C680 001695E0 C0 1E 08 08 */ lfs f0, 0x808(r30) -/* 8016C684 001695E4 C0 A7 00 04 */ lfs f5, 4(r7) -/* 8016C688 001695E8 C0 C7 00 00 */ lfs f6, 0(r7) -/* 8016C68C 001695EC C0 87 00 08 */ lfs f4, 8(r7) -/* 8016C690 001695F0 ED 20 01 72 */ fmuls f9, f0, f5 -/* 8016C694 001695F4 C0 7E 00 50 */ lfs f3, 0x50(r30) -/* 8016C698 001695F8 C0 5E 00 60 */ lfs f2, 0x60(r30) -/* 8016C69C 001695FC C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 8016C6A0 00169600 ED 03 48 2A */ fadds f8, f3, f9 -/* 8016C6A4 00169604 EC E2 48 2A */ fadds f7, f2, f9 -/* 8016C6A8 00169608 90 C1 00 58 */ stw r6, 0x58(r1) -/* 8016C6AC 0016960C EC 20 48 2A */ fadds f1, f0, f9 -/* 8016C6B0 00169610 EC 63 48 28 */ fsubs f3, f3, f9 -/* 8016C6B4 00169614 D0 C1 00 20 */ stfs f6, 0x20(r1) -/* 8016C6B8 00169618 EC 42 48 28 */ fsubs f2, f2, f9 -/* 8016C6BC 0016961C EC 00 48 28 */ fsubs f0, f0, f9 -/* 8016C6C0 00169620 D0 A1 00 24 */ stfs f5, 0x24(r1) -/* 8016C6C4 00169624 D0 81 00 28 */ stfs f4, 0x28(r1) -/* 8016C6C8 00169628 D0 21 00 08 */ stfs f1, 8(r1) -/* 8016C6CC 0016962C D1 01 00 0C */ stfs f8, 0xc(r1) -/* 8016C6D0 00169630 D0 E1 00 10 */ stfs f7, 0x10(r1) -/* 8016C6D4 00169634 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 8016C6D8 00169638 D0 61 00 18 */ stfs f3, 0x18(r1) -/* 8016C6DC 0016963C D0 41 00 1C */ stfs f2, 0x1c(r1) -/* 8016C6E0 00169640 48 1C BE 29 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 8016C6E4 00169644 7F E3 FB 78 */ mr r3, r31 -/* 8016C6E8 00169648 7F C7 F3 78 */ mr r7, r30 -/* 8016C6EC 0016964C 38 81 01 08 */ addi r4, r1, 0x108 -/* 8016C6F0 00169650 38 A1 00 90 */ addi r5, r1, 0x90 -/* 8016C6F4 00169654 38 C1 00 A8 */ addi r6, r1, 0xa8 -/* 8016C6F8 00169658 4B EE 00 29 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" -/* 8016C6FC 0016965C 7F E6 FB 78 */ mr r6, r31 -/* 8016C700 00169660 38 7E 06 A0 */ addi r3, r30, 0x6a0 -/* 8016C704 00169664 38 9E 00 34 */ addi r4, r30, 0x34 -/* 8016C708 00169668 38 A1 01 08 */ addi r5, r1, 0x108 -/* 8016C70C 0016966C 48 01 78 C1 */ bl "DetectDynamicCollisionBoolean__14CGameCollisionFRC19CCollisionPrimitiveRC12CTransform4fRCQ24rstl32reserved_vector<9TUniqueId,1024>RC13CStateManager" -/* 8016C710 00169670 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016C714 00169674 40 82 00 A0 */ bne lbl_8016C7B4 -/* 8016C718 00169678 88 1E 09 BF */ lbz r0, 0x9bf(r30) -/* 8016C71C 0016967C 38 60 00 00 */ li r3, 0 -/* 8016C720 00169680 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f -/* 8016C724 00169684 7F C3 F3 78 */ mr r3, r30 -/* 8016C728 00169688 98 1E 09 BF */ stb r0, 0x9bf(r30) -/* 8016C72C 0016968C 4B EE 71 91 */ bl GetMaterialFilter__6CActorCFv -/* 8016C730 00169690 80 03 00 00 */ lwz r0, 0(r3) -/* 8016C734 00169694 38 80 00 01 */ li r4, 1 -/* 8016C738 00169698 80 C3 00 04 */ lwz r6, 4(r3) -/* 8016C73C 0016969C 80 AD 8E 04 */ lwz r5, lbl_805A79C4@sda21(r13) -/* 8016C740 001696A0 90 C1 00 7C */ stw r6, 0x7c(r1) -/* 8016C744 001696A4 90 01 00 78 */ stw r0, 0x78(r1) -/* 8016C748 001696A8 80 03 00 08 */ lwz r0, 8(r3) -/* 8016C74C 001696AC 80 C3 00 0C */ lwz r6, 0xc(r3) -/* 8016C750 001696B0 90 C1 00 84 */ stw r6, 0x84(r1) -/* 8016C754 001696B4 90 01 00 80 */ stw r0, 0x80(r1) -/* 8016C758 001696B8 80 03 00 10 */ lwz r0, 0x10(r3) -/* 8016C75C 001696BC 38 60 00 00 */ li r3, 0 -/* 8016C760 001696C0 90 01 00 88 */ stw r0, 0x88(r1) -/* 8016C764 001696C4 48 21 D7 91 */ bl __shl2i -/* 8016C768 001696C8 80 AD 8E 08 */ lwz r5, lbl_805A79C8@sda21(r13) -/* 8016C76C 001696CC 7C 9D 23 78 */ mr r29, r4 -/* 8016C770 001696D0 7C 7C 1B 78 */ mr r28, r3 -/* 8016C774 001696D4 38 60 00 00 */ li r3, 0 -/* 8016C778 001696D8 38 80 00 01 */ li r4, 1 -/* 8016C77C 001696DC 48 21 D7 79 */ bl __shl2i -/* 8016C780 001696E0 7F BD 23 78 */ or r29, r29, r4 -/* 8016C784 001696E4 7F 9C 1B 78 */ or r28, r28, r3 -/* 8016C788 001696E8 80 61 00 80 */ lwz r3, 0x80(r1) -/* 8016C78C 001696EC 7F 80 E0 F8 */ nor r0, r28, r28 -/* 8016C790 001696F0 80 A1 00 84 */ lwz r5, 0x84(r1) -/* 8016C794 001696F4 7F A4 E8 F8 */ nor r4, r29, r29 -/* 8016C798 001696F8 7C 60 00 38 */ and r0, r3, r0 -/* 8016C79C 001696FC 7F C3 F3 78 */ mr r3, r30 -/* 8016C7A0 00169700 7C A5 20 38 */ and r5, r5, r4 -/* 8016C7A4 00169704 90 01 00 80 */ stw r0, 0x80(r1) -/* 8016C7A8 00169708 38 81 00 78 */ addi r4, r1, 0x78 -/* 8016C7AC 0016970C 90 A1 00 84 */ stw r5, 0x84(r1) -/* 8016C7B0 00169710 4B EE 70 F1 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter -lbl_8016C7B4: -/* 8016C7B4 00169714 80 A1 01 08 */ lwz r5, 0x108(r1) -/* 8016C7B8 00169718 38 60 00 00 */ li r3, 0 -/* 8016C7BC 0016971C 2C 05 00 00 */ cmpwi r5, 0 -/* 8016C7C0 00169720 40 81 00 40 */ ble lbl_8016C800 -/* 8016C7C4 00169724 2C 05 00 08 */ cmpwi r5, 8 -/* 8016C7C8 00169728 38 85 FF F8 */ addi r4, r5, -8 -/* 8016C7CC 0016972C 40 81 00 20 */ ble lbl_8016C7EC -/* 8016C7D0 00169730 38 04 00 07 */ addi r0, r4, 7 -/* 8016C7D4 00169734 54 00 E8 FE */ srwi r0, r0, 3 -/* 8016C7D8 00169738 7C 09 03 A6 */ mtctr r0 -/* 8016C7DC 0016973C 2C 04 00 00 */ cmpwi r4, 0 -/* 8016C7E0 00169740 40 81 00 0C */ ble lbl_8016C7EC -lbl_8016C7E4: -/* 8016C7E4 00169744 38 63 00 08 */ addi r3, r3, 8 -/* 8016C7E8 00169748 42 00 FF FC */ bdnz lbl_8016C7E4 -lbl_8016C7EC: -/* 8016C7EC 0016974C 7C 03 28 50 */ subf r0, r3, r5 -/* 8016C7F0 00169750 7C 09 03 A6 */ mtctr r0 -/* 8016C7F4 00169754 7C 03 28 00 */ cmpw r3, r5 -/* 8016C7F8 00169758 40 80 00 08 */ bge lbl_8016C800 -lbl_8016C7FC: -/* 8016C7FC 0016975C 42 00 00 00 */ bdnz lbl_8016C7FC -lbl_8016C800: -/* 8016C800 00169760 38 00 00 00 */ li r0, 0 -/* 8016C804 00169764 90 01 01 08 */ stw r0, 0x108(r1) -lbl_8016C808: -/* 8016C808 00169768 80 01 09 24 */ lwz r0, 0x924(r1) -/* 8016C80C 0016976C 83 E1 09 1C */ lwz r31, 0x91c(r1) -/* 8016C810 00169770 83 C1 09 18 */ lwz r30, 0x918(r1) -/* 8016C814 00169774 83 A1 09 14 */ lwz r29, 0x914(r1) -/* 8016C818 00169778 83 81 09 10 */ lwz r28, 0x910(r1) -/* 8016C81C 0016977C 7C 08 03 A6 */ mtlr r0 -/* 8016C820 00169780 38 21 09 20 */ addi r1, r1, 0x920 -/* 8016C824 00169784 4E 80 00 20 */ blr - -.global sub_8016c828 -sub_8016c828: -/* 8016C828 00169788 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 8016C82C 0016978C 7C 08 02 A6 */ mflr r0 -/* 8016C830 00169790 90 01 00 54 */ stw r0, 0x54(r1) -/* 8016C834 00169794 DB E1 00 40 */ stfd f31, 0x40(r1) -/* 8016C838 00169798 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 -/* 8016C83C 0016979C DB C1 00 30 */ stfd f30, 0x30(r1) -/* 8016C840 001697A0 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 -/* 8016C844 001697A4 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8016C848 001697A8 93 C1 00 28 */ stw r30, 0x28(r1) -/* 8016C84C 001697AC 93 A1 00 24 */ stw r29, 0x24(r1) -/* 8016C850 001697B0 7C 7D 1B 78 */ mr r29, r3 -/* 8016C854 001697B4 C0 42 A0 84 */ lfs f2, lbl_805ABDA4@sda21(r2) -/* 8016C858 001697B8 C0 03 06 BC */ lfs f0, 0x6bc(r3) -/* 8016C85C 001697BC FF E0 08 90 */ fmr f31, f1 -/* 8016C860 001697C0 7C 9E 23 78 */ mr r30, r4 -/* 8016C864 001697C4 EF C2 00 32 */ fmuls f30, f2, f0 -/* 8016C868 001697C8 48 00 19 8D */ bl sub_8016e1f4 -/* 8016C86C 001697CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016C870 001697D0 41 82 00 BC */ beq lbl_8016C92C -/* 8016C874 001697D4 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 8016C878 001697D8 A0 1D 07 B0 */ lhz r0, 0x7b0(r29) -/* 8016C87C 001697DC A0 63 00 08 */ lhz r3, 8(r3) -/* 8016C880 001697E0 7C 03 00 40 */ cmplw r3, r0 -/* 8016C884 001697E4 40 82 00 9C */ bne lbl_8016C920 -/* 8016C888 001697E8 A0 1D 07 B0 */ lhz r0, 0x7b0(r29) -/* 8016C88C 001697EC 7F C3 F3 78 */ mr r3, r30 -/* 8016C890 001697F0 38 81 00 08 */ addi r4, r1, 8 -/* 8016C894 001697F4 B0 01 00 08 */ sth r0, 8(r1) -/* 8016C898 001697F8 4B ED FC DD */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8016C89C 001697FC 7C 64 1B 78 */ mr r4, r3 -/* 8016C8A0 00169800 38 61 00 10 */ addi r3, r1, 0x10 -/* 8016C8A4 00169804 4B F3 FE 41 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" -/* 8016C8A8 00169808 83 E3 00 04 */ lwz r31, 4(r3) -/* 8016C8AC 0016980C 28 1F 00 00 */ cmplwi r31, 0 -/* 8016C8B0 00169810 41 82 00 70 */ beq lbl_8016C920 -/* 8016C8B4 00169814 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 8016C8B8 00169818 C0 82 A0 BC */ lfs f4, lbl_805ABDDC@sda21(r2) -/* 8016C8BC 0016981C 80 03 02 F8 */ lwz r0, 0x2f8(r3) -/* 8016C8C0 00169820 2C 00 00 00 */ cmpwi r0, 0 -/* 8016C8C4 00169824 40 82 00 3C */ bne lbl_8016C900 -/* 8016C8C8 00169828 C0 22 A0 C0 */ lfs f1, lbl_805ABDE0@sda21(r2) -/* 8016C8CC 0016982C 38 81 00 0C */ addi r4, r1, 0xc -/* 8016C8D0 00169830 C0 1D 07 C0 */ lfs f0, 0x7c0(r29) -/* 8016C8D4 00169834 38 6D 8D EC */ addi r3, r13, lbl_805A79AC@sda21 -/* 8016C8D8 00169838 EC 01 00 32 */ fmuls f0, f1, f0 -/* 8016C8DC 0016983C D0 01 00 0C */ stfs f0, 0xc(r1) -/* 8016C8E0 00169840 4B F1 15 01 */ bl "Min__5CMathFRCfRCf" -/* 8016C8E4 00169844 C0 63 00 00 */ lfs f3, 0(r3) -/* 8016C8E8 00169848 C0 22 A0 98 */ lfs f1, lbl_805ABDB8@sda21(r2) -/* 8016C8EC 0016984C C0 02 A0 C4 */ lfs f0, lbl_805ABDE4@sda21(r2) -/* 8016C8F0 00169850 EC 21 18 28 */ fsubs f1, f1, f3 -/* 8016C8F4 00169854 C0 42 A0 BC */ lfs f2, lbl_805ABDDC@sda21(r2) -/* 8016C8F8 00169858 EC 00 00 F2 */ fmuls f0, f0, f3 -/* 8016C8FC 0016985C EC 82 00 7A */ fmadds f4, f2, f1, f0 -lbl_8016C900: -/* 8016C900 00169860 FC 20 F8 90 */ fmr f1, f31 -/* 8016C904 00169864 C0 42 A0 AC */ lfs f2, lbl_805ABDCC@sda21(r2) -/* 8016C908 00169868 FC 60 F0 90 */ fmr f3, f30 -/* 8016C90C 0016986C C0 A2 A0 88 */ lfs f5, lbl_805ABDA8@sda21(r2) -/* 8016C910 00169870 7F C3 F3 78 */ mr r3, r30 -/* 8016C914 00169874 7F E4 FB 78 */ mr r4, r31 -/* 8016C918 00169878 38 A0 00 08 */ li r5, 8 -/* 8016C91C 0016987C 48 01 32 69 */ bl sub_8017fb84 -lbl_8016C920: -/* 8016C920 00169880 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016C924 00169884 D0 1D 07 C4 */ stfs f0, 0x7c4(r29) -/* 8016C928 00169888 48 00 00 A8 */ b lbl_8016C9D0 -lbl_8016C92C: -/* 8016C92C 0016988C 88 7D 09 BF */ lbz r3, 0x9bf(r29) -/* 8016C930 00169890 54 60 FF FF */ rlwinm. r0, r3, 0x1f, 0x1f, 0x1f -/* 8016C934 00169894 40 82 00 0C */ bne lbl_8016C940 -/* 8016C938 00169898 54 60 07 FF */ clrlwi. r0, r3, 0x1f -/* 8016C93C 0016989C 41 82 00 8C */ beq lbl_8016C9C8 -lbl_8016C940: -/* 8016C940 001698A0 C0 3D 07 C4 */ lfs f1, 0x7c4(r29) -/* 8016C944 001698A4 C0 02 A0 C8 */ lfs f0, lbl_805ABDE8@sda21(r2) -/* 8016C948 001698A8 EC 21 F8 2A */ fadds f1, f1, f31 -/* 8016C94C 001698AC D0 3D 07 C4 */ stfs f1, 0x7c4(r29) -/* 8016C950 001698B0 C0 3D 07 C4 */ lfs f1, 0x7c4(r29) -/* 8016C954 001698B4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8016C958 001698B8 40 81 00 20 */ ble lbl_8016C978 -/* 8016C95C 001698BC 7F A3 EB 78 */ mr r3, r29 -/* 8016C960 001698C0 7F C4 F3 78 */ mr r4, r30 -/* 8016C964 001698C4 81 9D 00 00 */ lwz r12, 0(r29) -/* 8016C968 001698C8 81 8C 02 98 */ lwz r12, 0x298(r12) -/* 8016C96C 001698CC 7D 89 03 A6 */ mtctr r12 -/* 8016C970 001698D0 4E 80 04 21 */ bctrl -/* 8016C974 001698D4 48 00 00 2C */ b lbl_8016C9A0 -lbl_8016C978: -/* 8016C978 001698D8 88 1D 09 BF */ lbz r0, 0x9bf(r29) -/* 8016C97C 001698DC 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f -/* 8016C980 001698E0 41 82 00 20 */ beq lbl_8016C9A0 -/* 8016C984 001698E4 C0 02 A0 AC */ lfs f0, lbl_805ABDCC@sda21(r2) -/* 8016C988 001698E8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8016C98C 001698EC 40 81 00 14 */ ble lbl_8016C9A0 -/* 8016C990 001698F0 7F A3 EB 78 */ mr r3, r29 -/* 8016C994 001698F4 7F C5 F3 78 */ mr r5, r30 -/* 8016C998 001698F8 38 80 00 13 */ li r4, 0x13 -/* 8016C99C 001698FC 4B EE 75 E5 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager -lbl_8016C9A0: -/* 8016C9A0 00169900 FC 20 F8 90 */ fmr f1, f31 -/* 8016C9A4 00169904 C0 42 A0 AC */ lfs f2, lbl_805ABDCC@sda21(r2) -/* 8016C9A8 00169908 FC 60 F0 90 */ fmr f3, f30 -/* 8016C9AC 0016990C C0 82 A0 CC */ lfs f4, lbl_805ABDEC@sda21(r2) -/* 8016C9B0 00169910 C0 A2 A0 88 */ lfs f5, lbl_805ABDA8@sda21(r2) -/* 8016C9B4 00169914 7F C3 F3 78 */ mr r3, r30 -/* 8016C9B8 00169918 7F A4 EB 78 */ mr r4, r29 -/* 8016C9BC 0016991C 38 A0 00 08 */ li r5, 8 -/* 8016C9C0 00169920 48 01 31 C5 */ bl sub_8017fb84 -/* 8016C9C4 00169924 48 00 00 0C */ b lbl_8016C9D0 -lbl_8016C9C8: -/* 8016C9C8 00169928 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016C9CC 0016992C D0 1D 07 C4 */ stfs f0, 0x7c4(r29) -lbl_8016C9D0: -/* 8016C9D0 00169930 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 -/* 8016C9D4 00169934 CB E1 00 40 */ lfd f31, 0x40(r1) -/* 8016C9D8 00169938 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 -/* 8016C9DC 0016993C CB C1 00 30 */ lfd f30, 0x30(r1) -/* 8016C9E0 00169940 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8016C9E4 00169944 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 8016C9E8 00169948 80 01 00 54 */ lwz r0, 0x54(r1) -/* 8016C9EC 0016994C 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 8016C9F0 00169950 7C 08 03 A6 */ mtlr r0 -/* 8016C9F4 00169954 38 21 00 50 */ addi r1, r1, 0x50 -/* 8016C9F8 00169958 4E 80 00 20 */ blr - -.global sub_8016c9fc -sub_8016c9fc: -/* 8016C9FC 0016995C 94 21 F5 B0 */ stwu r1, -0xa50(r1) -/* 8016CA00 00169960 7C 08 02 A6 */ mflr r0 -/* 8016CA04 00169964 90 01 0A 54 */ stw r0, 0xa54(r1) -/* 8016CA08 00169968 DB E1 0A 40 */ stfd f31, 0xa40(r1) -/* 8016CA0C 0016996C F3 E1 0A 48 */ psq_st f31, -1464(r1), 0, qr0 -/* 8016CA10 00169970 DB C1 0A 30 */ stfd f30, 0xa30(r1) -/* 8016CA14 00169974 F3 C1 0A 38 */ psq_st f30, -1480(r1), 0, qr0 -/* 8016CA18 00169978 DB A1 0A 20 */ stfd f29, 0xa20(r1) -/* 8016CA1C 0016997C F3 A1 0A 28 */ psq_st f29, -1496(r1), 0, qr0 -/* 8016CA20 00169980 DB 81 0A 10 */ stfd f28, 0xa10(r1) -/* 8016CA24 00169984 F3 81 0A 18 */ psq_st f28, -1512(r1), 0, qr0 -/* 8016CA28 00169988 DB 61 0A 00 */ stfd f27, 0xa00(r1) -/* 8016CA2C 0016998C F3 61 0A 08 */ psq_st f27, -1528(r1), 0, qr0 -/* 8016CA30 00169990 DB 41 09 F0 */ stfd f26, 0x9f0(r1) -/* 8016CA34 00169994 F3 41 09 F8 */ psq_st f26, -1544(r1), 0, qr0 -/* 8016CA38 00169998 DB 21 09 E0 */ stfd f25, 0x9e0(r1) -/* 8016CA3C 0016999C F3 21 09 E8 */ psq_st f25, -1560(r1), 0, qr0 -/* 8016CA40 001699A0 DB 01 09 D0 */ stfd f24, 0x9d0(r1) -/* 8016CA44 001699A4 F3 01 09 D8 */ psq_st f24, -1576(r1), 0, qr0 -/* 8016CA48 001699A8 DA E1 09 C0 */ stfd f23, 0x9c0(r1) -/* 8016CA4C 001699AC F2 E1 09 C8 */ psq_st f23, -1592(r1), 0, qr0 -/* 8016CA50 001699B0 BE E1 09 9C */ stmw r23, 0x99c(r1) -/* 8016CA54 001699B4 7C 9A 23 79 */ or. r26, r4, r4 -/* 8016CA58 001699B8 7C 79 1B 78 */ mr r25, r3 -/* 8016CA5C 001699BC 7C BB 2B 78 */ mr r27, r5 -/* 8016CA60 001699C0 7C DC 33 78 */ mr r28, r6 -/* 8016CA64 001699C4 7C FD 3B 78 */ mr r29, r7 -/* 8016CA68 001699C8 41 82 03 F8 */ beq lbl_8016CE60 -/* 8016CA6C 001699CC 80 19 07 C8 */ lwz r0, 0x7c8(r25) -/* 8016CA70 001699D0 2C 00 00 03 */ cmpwi r0, 3 -/* 8016CA74 001699D4 41 82 03 EC */ beq lbl_8016CE60 -/* 8016CA78 001699D8 80 AD 8D E4 */ lwz r5, lbl_805A79A4@sda21(r13) -/* 8016CA7C 001699DC 38 60 00 00 */ li r3, 0 -/* 8016CA80 001699E0 38 80 00 01 */ li r4, 1 -/* 8016CA84 001699E4 48 21 D4 71 */ bl __shl2i -/* 8016CA88 001699E8 80 AD 8D E8 */ lwz r5, lbl_805A79A8@sda21(r13) -/* 8016CA8C 001699EC 7C 9E 23 78 */ mr r30, r4 -/* 8016CA90 001699F0 7C 78 1B 78 */ mr r24, r3 -/* 8016CA94 001699F4 38 60 00 00 */ li r3, 0 -/* 8016CA98 001699F8 38 80 00 01 */ li r4, 1 -/* 8016CA9C 001699FC 48 21 D4 59 */ bl __shl2i -/* 8016CAA0 00169A00 80 AD 8D DC */ lwz r5, lbl_805A799C@sda21(r13) -/* 8016CAA4 00169A04 7F DE 23 78 */ or r30, r30, r4 -/* 8016CAA8 00169A08 7F 18 1B 78 */ or r24, r24, r3 -/* 8016CAAC 00169A0C 38 60 00 00 */ li r3, 0 -/* 8016CAB0 00169A10 38 80 00 01 */ li r4, 1 -/* 8016CAB4 00169A14 48 21 D4 41 */ bl __shl2i -/* 8016CAB8 00169A18 80 AD 8D E0 */ lwz r5, lbl_805A79A0@sda21(r13) -/* 8016CABC 00169A1C 7C 97 23 78 */ mr r23, r4 -/* 8016CAC0 00169A20 7C 7F 1B 78 */ mr r31, r3 -/* 8016CAC4 00169A24 38 60 00 00 */ li r3, 0 -/* 8016CAC8 00169A28 38 80 00 01 */ li r4, 1 -/* 8016CACC 00169A2C 48 21 D4 29 */ bl __shl2i -/* 8016CAD0 00169A30 38 00 00 03 */ li r0, 3 -/* 8016CAD4 00169A34 7F FF 1B 78 */ or r31, r31, r3 -/* 8016CAD8 00169A38 7E F7 23 78 */ or r23, r23, r4 -/* 8016CADC 00169A3C 93 C1 00 EC */ stw r30, 0xec(r1) -/* 8016CAE0 00169A40 3C 60 80 3D */ lis r3, lbl_803D0530@ha -/* 8016CAE4 00169A44 C3 22 A0 80 */ lfs f25, lbl_805ABDA0@sda21(r2) -/* 8016CAE8 00169A48 93 E1 00 E0 */ stw r31, 0xe0(r1) -/* 8016CAEC 00169A4C 3B E3 05 30 */ addi r31, r3, lbl_803D0530@l -/* 8016CAF0 00169A50 FF E0 C8 90 */ fmr f31, f25 -/* 8016CAF4 00169A54 C3 C2 A0 D0 */ lfs f30, lbl_805ABDF0@sda21(r2) -/* 8016CAF8 00169A58 92 E1 00 E4 */ stw r23, 0xe4(r1) -/* 8016CAFC 00169A5C 3B C0 00 00 */ li r30, 0 -/* 8016CB00 00169A60 93 01 00 E8 */ stw r24, 0xe8(r1) -/* 8016CB04 00169A64 90 01 00 F0 */ stw r0, 0xf0(r1) -/* 8016CB08 00169A68 80 79 00 64 */ lwz r3, 0x64(r25) -/* 8016CB0C 00169A6C C0 19 00 38 */ lfs f0, 0x38(r25) -/* 8016CB10 00169A70 C0 63 00 04 */ lfs f3, 4(r3) -/* 8016CB14 00169A74 C0 59 08 08 */ lfs f2, 0x808(r25) -/* 8016CB18 00169A78 FF A0 00 50 */ fneg f29, f0 -/* 8016CB1C 00169A7C C0 39 00 48 */ lfs f1, 0x48(r25) -/* 8016CB20 00169A80 C0 19 00 58 */ lfs f0, 0x58(r25) -/* 8016CB24 00169A84 EF 42 00 F2 */ fmuls f26, f2, f3 -/* 8016CB28 00169A88 C0 43 00 00 */ lfs f2, 0(r3) -/* 8016CB2C 00169A8C FF 80 08 50 */ fneg f28, f1 -/* 8016CB30 00169A90 C0 23 00 08 */ lfs f1, 8(r3) -/* 8016CB34 00169A94 FF 60 00 50 */ fneg f27, f0 -/* 8016CB38 00169A98 90 01 00 D8 */ stw r0, 0xd8(r1) -/* 8016CB3C 00169A9C D0 41 00 88 */ stfs f2, 0x88(r1) -/* 8016CB40 00169AA0 D0 61 00 8C */ stfs f3, 0x8c(r1) -/* 8016CB44 00169AA4 D0 21 00 90 */ stfs f1, 0x90(r1) -lbl_8016CB48: -/* 8016CB48 00169AA8 C0 1F 00 00 */ lfs f0, 0(r31) -/* 8016CB4C 00169AAC EE FE 00 32 */ fmuls f23, f30, f0 -/* 8016CB50 00169AB0 FC 20 B8 90 */ fmr f1, f23 -/* 8016CB54 00169AB4 48 1A 82 9D */ bl FastSinR__5CMathFf -/* 8016CB58 00169AB8 FF 00 08 90 */ fmr f24, f1 -/* 8016CB5C 00169ABC FC 20 B8 90 */ fmr f1, f23 -/* 8016CB60 00169AC0 48 1A 81 E5 */ bl FastCosR__5CMathFf -/* 8016CB64 00169AC4 D0 21 00 BC */ stfs f1, 0xbc(r1) -/* 8016CB68 00169AC8 7F A4 EB 78 */ mr r4, r29 -/* 8016CB6C 00169ACC 38 61 00 70 */ addi r3, r1, 0x70 -/* 8016CB70 00169AD0 38 A1 00 BC */ addi r5, r1, 0xbc -/* 8016CB74 00169AD4 D3 01 00 C0 */ stfs f24, 0xc0(r1) -/* 8016CB78 00169AD8 D3 E1 00 C4 */ stfs f31, 0xc4(r1) -/* 8016CB7C 00169ADC 48 1A 5F 05 */ bl Rotate__12CTransform4fCFRC9CVector3f -/* 8016CB80 00169AE0 38 61 00 7C */ addi r3, r1, 0x7c -/* 8016CB84 00169AE4 38 81 00 70 */ addi r4, r1, 0x70 -/* 8016CB88 00169AE8 48 1A 7C C9 */ bl AsNormalized__9CVector3fCFv -/* 8016CB8C 00169AEC C0 61 00 7C */ lfs f3, 0x7c(r1) -/* 8016CB90 00169AF0 FC 20 D0 90 */ fmr f1, f26 -/* 8016CB94 00169AF4 C0 41 00 80 */ lfs f2, 0x80(r1) -/* 8016CB98 00169AF8 38 00 00 00 */ li r0, 0 -/* 8016CB9C 00169AFC C0 01 00 84 */ lfs f0, 0x84(r1) -/* 8016CBA0 00169B00 7F 63 DB 78 */ mr r3, r27 -/* 8016CBA4 00169B04 D0 61 00 B0 */ stfs f3, 0xb0(r1) -/* 8016CBA8 00169B08 A1 2D A3 8C */ lhz r9, lbl_805A8F4C@sda21(r13) -/* 8016CBAC 00169B0C 7F 28 CB 78 */ mr r8, r25 -/* 8016CBB0 00169B10 D0 41 00 B4 */ stfs f2, 0xb4(r1) -/* 8016CBB4 00169B14 38 81 01 88 */ addi r4, r1, 0x188 -/* 8016CBB8 00169B18 38 A1 00 A4 */ addi r5, r1, 0xa4 -/* 8016CBBC 00169B1C 38 C1 00 B0 */ addi r6, r1, 0xb0 -/* 8016CBC0 00169B20 D0 01 00 B8 */ stfs f0, 0xb8(r1) -/* 8016CBC4 00169B24 38 E1 00 E0 */ addi r7, r1, 0xe0 -/* 8016CBC8 00169B28 C0 7A 00 60 */ lfs f3, 0x60(r26) -/* 8016CBCC 00169B2C C0 5A 00 50 */ lfs f2, 0x50(r26) -/* 8016CBD0 00169B30 C0 1A 00 40 */ lfs f0, 0x40(r26) -/* 8016CBD4 00169B34 D0 01 00 A4 */ stfs f0, 0xa4(r1) -/* 8016CBD8 00169B38 D0 41 00 A8 */ stfs f2, 0xa8(r1) -/* 8016CBDC 00169B3C D0 61 00 AC */ stfs f3, 0xac(r1) -/* 8016CBE0 00169B40 C0 79 00 60 */ lfs f3, 0x60(r25) -/* 8016CBE4 00169B44 C0 59 00 50 */ lfs f2, 0x50(r25) -/* 8016CBE8 00169B48 C0 19 00 40 */ lfs f0, 0x40(r25) -/* 8016CBEC 00169B4C D0 41 00 68 */ stfs f2, 0x68(r1) -/* 8016CBF0 00169B50 D0 01 00 64 */ stfs f0, 0x64(r1) -/* 8016CBF4 00169B54 D0 61 00 6C */ stfs f3, 0x6c(r1) -/* 8016CBF8 00169B58 D0 61 00 AC */ stfs f3, 0xac(r1) -/* 8016CBFC 00169B5C B1 21 00 08 */ sth r9, 8(r1) -/* 8016CC00 00169B60 90 01 01 88 */ stw r0, 0x188(r1) -/* 8016CC04 00169B64 4B ED FA D5 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" -/* 8016CC08 00169B68 FC 20 D0 90 */ fmr f1, f26 -/* 8016CC0C 00169B6C 7F 64 DB 78 */ mr r4, r27 -/* 8016CC10 00169B70 38 61 01 28 */ addi r3, r1, 0x128 -/* 8016CC14 00169B74 38 A1 00 08 */ addi r5, r1, 8 -/* 8016CC18 00169B78 38 C1 00 A4 */ addi r6, r1, 0xa4 -/* 8016CC1C 00169B7C 38 E1 00 B0 */ addi r7, r1, 0xb0 -/* 8016CC20 00169B80 39 01 00 E0 */ addi r8, r1, 0xe0 -/* 8016CC24 00169B84 39 21 01 88 */ addi r9, r1, 0x188 -/* 8016CC28 00169B88 4B EE 03 9D */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 8016CC2C 00169B8C 88 01 01 48 */ lbz r0, 0x148(r1) -/* 8016CC30 00169B90 C0 01 01 28 */ lfs f0, 0x128(r1) -/* 8016CC34 00169B94 28 00 00 00 */ cmplwi r0, 0 -/* 8016CC38 00169B98 40 82 00 D0 */ bne lbl_8016CD08 -/* 8016CC3C 00169B9C FF 20 D0 90 */ fmr f25, f26 -/* 8016CC40 00169BA0 C3 A1 00 B0 */ lfs f29, 0xb0(r1) -/* 8016CC44 00169BA4 C3 81 00 B4 */ lfs f28, 0xb4(r1) -/* 8016CC48 00169BA8 38 61 01 58 */ addi r3, r1, 0x158 -/* 8016CC4C 00169BAC C3 61 00 B8 */ lfs f27, 0xb8(r1) -/* 8016CC50 00169BB0 38 99 00 34 */ addi r4, r25, 0x34 -/* 8016CC54 00169BB4 48 1A 5F 21 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8016CC58 00169BB8 C0 21 00 B4 */ lfs f1, 0xb4(r1) -/* 8016CC5C 00169BBC 7F 63 DB 78 */ mr r3, r27 -/* 8016CC60 00169BC0 C0 01 00 B8 */ lfs f0, 0xb8(r1) -/* 8016CC64 00169BC4 38 99 06 A0 */ addi r4, r25, 0x6a0 -/* 8016CC68 00169BC8 C0 41 00 B0 */ lfs f2, 0xb0(r1) -/* 8016CC6C 00169BCC EC BA 00 72 */ fmuls f5, f26, f1 -/* 8016CC70 00169BD0 C0 21 01 74 */ lfs f1, 0x174(r1) -/* 8016CC74 00169BD4 EC 9A 00 32 */ fmuls f4, f26, f0 -/* 8016CC78 00169BD8 C0 01 01 84 */ lfs f0, 0x184(r1) -/* 8016CC7C 00169BDC EC 5A 00 B2 */ fmuls f2, f26, f2 -/* 8016CC80 00169BE0 C0 61 01 64 */ lfs f3, 0x164(r1) -/* 8016CC84 00169BE4 EC 21 28 2A */ fadds f1, f1, f5 -/* 8016CC88 00169BE8 38 A1 01 58 */ addi r5, r1, 0x158 -/* 8016CC8C 00169BEC EC 43 10 2A */ fadds f2, f3, f2 -/* 8016CC90 00169BF0 38 C1 00 E0 */ addi r6, r1, 0xe0 -/* 8016CC94 00169BF4 EC 00 20 2A */ fadds f0, f0, f4 -/* 8016CC98 00169BF8 D0 21 01 74 */ stfs f1, 0x174(r1) -/* 8016CC9C 00169BFC D0 41 01 64 */ stfs f2, 0x164(r1) -/* 8016CCA0 00169C00 D0 01 01 84 */ stfs f0, 0x184(r1) -/* 8016CCA4 00169C04 48 01 66 FD */ bl DetectStaticCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter -/* 8016CCA8 00169C08 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016CCAC 00169C0C 40 82 00 74 */ bne lbl_8016CD20 -/* 8016CCB0 00169C10 80 A1 01 88 */ lwz r5, 0x188(r1) -/* 8016CCB4 00169C14 38 60 00 00 */ li r3, 0 -/* 8016CCB8 00169C18 2C 05 00 00 */ cmpwi r5, 0 -/* 8016CCBC 00169C1C 40 81 00 40 */ ble lbl_8016CCFC -/* 8016CCC0 00169C20 2C 05 00 08 */ cmpwi r5, 8 -/* 8016CCC4 00169C24 38 85 FF F8 */ addi r4, r5, -8 -/* 8016CCC8 00169C28 40 81 00 20 */ ble lbl_8016CCE8 -/* 8016CCCC 00169C2C 38 04 00 07 */ addi r0, r4, 7 -/* 8016CCD0 00169C30 54 00 E8 FE */ srwi r0, r0, 3 -/* 8016CCD4 00169C34 7C 09 03 A6 */ mtctr r0 -/* 8016CCD8 00169C38 2C 04 00 00 */ cmpwi r4, 0 -/* 8016CCDC 00169C3C 40 81 00 0C */ ble lbl_8016CCE8 -lbl_8016CCE0: -/* 8016CCE0 00169C40 38 63 00 08 */ addi r3, r3, 8 -/* 8016CCE4 00169C44 42 00 FF FC */ bdnz lbl_8016CCE0 -lbl_8016CCE8: -/* 8016CCE8 00169C48 7C 03 28 50 */ subf r0, r3, r5 -/* 8016CCEC 00169C4C 7C 09 03 A6 */ mtctr r0 -/* 8016CCF0 00169C50 7C 03 28 00 */ cmpw r3, r5 -/* 8016CCF4 00169C54 40 80 00 08 */ bge lbl_8016CCFC -lbl_8016CCF8: -/* 8016CCF8 00169C58 42 00 00 00 */ bdnz lbl_8016CCF8 -lbl_8016CCFC: -/* 8016CCFC 00169C5C 38 00 00 00 */ li r0, 0 -/* 8016CD00 00169C60 90 01 01 88 */ stw r0, 0x188(r1) -/* 8016CD04 00169C64 48 00 00 84 */ b lbl_8016CD88 -lbl_8016CD08: -/* 8016CD08 00169C68 FC 00 C8 40 */ fcmpo cr0, f0, f25 -/* 8016CD0C 00169C6C 40 81 00 14 */ ble lbl_8016CD20 -/* 8016CD10 00169C70 FF 20 00 90 */ fmr f25, f0 -/* 8016CD14 00169C74 C3 A1 00 B0 */ lfs f29, 0xb0(r1) -/* 8016CD18 00169C78 C3 81 00 B4 */ lfs f28, 0xb4(r1) -/* 8016CD1C 00169C7C C3 61 00 B8 */ lfs f27, 0xb8(r1) -lbl_8016CD20: -/* 8016CD20 00169C80 80 A1 01 88 */ lwz r5, 0x188(r1) -/* 8016CD24 00169C84 38 60 00 00 */ li r3, 0 -/* 8016CD28 00169C88 2C 05 00 00 */ cmpwi r5, 0 -/* 8016CD2C 00169C8C 40 81 00 44 */ ble lbl_8016CD70 -/* 8016CD30 00169C90 2C 05 00 08 */ cmpwi r5, 8 -/* 8016CD34 00169C94 38 85 FF F8 */ addi r4, r5, -8 -/* 8016CD38 00169C98 40 81 00 20 */ ble lbl_8016CD58 -/* 8016CD3C 00169C9C 38 04 00 07 */ addi r0, r4, 7 -/* 8016CD40 00169CA0 54 00 E8 FE */ srwi r0, r0, 3 -/* 8016CD44 00169CA4 7C 09 03 A6 */ mtctr r0 -/* 8016CD48 00169CA8 2C 04 00 00 */ cmpwi r4, 0 -/* 8016CD4C 00169CAC 40 81 00 0C */ ble lbl_8016CD58 -lbl_8016CD50: -/* 8016CD50 00169CB0 38 63 00 08 */ addi r3, r3, 8 -/* 8016CD54 00169CB4 42 00 FF FC */ bdnz lbl_8016CD50 -lbl_8016CD58: -/* 8016CD58 00169CB8 7C 03 28 50 */ subf r0, r3, r5 -/* 8016CD5C 00169CBC 7C 09 03 A6 */ mtctr r0 -/* 8016CD60 00169CC0 7C 03 28 00 */ cmpw r3, r5 -/* 8016CD64 00169CC4 40 80 00 0C */ bge lbl_8016CD70 -lbl_8016CD68: -/* 8016CD68 00169CC8 38 63 00 01 */ addi r3, r3, 1 -/* 8016CD6C 00169CCC 42 00 FF FC */ bdnz lbl_8016CD68 -lbl_8016CD70: -/* 8016CD70 00169CD0 3B DE 00 01 */ addi r30, r30, 1 -/* 8016CD74 00169CD4 38 00 00 00 */ li r0, 0 -/* 8016CD78 00169CD8 28 1E 00 08 */ cmplwi r30, 8 -/* 8016CD7C 00169CDC 90 01 01 88 */ stw r0, 0x188(r1) -/* 8016CD80 00169CE0 3B FF 00 04 */ addi r31, r31, 4 -/* 8016CD84 00169CE4 41 80 FD C4 */ blt lbl_8016CB48 -lbl_8016CD88: -/* 8016CD88 00169CE8 C0 62 A0 D4 */ lfs f3, lbl_805ABDF4@sda21(r2) -/* 8016CD8C 00169CEC 38 61 00 54 */ addi r3, r1, 0x54 -/* 8016CD90 00169CF0 C0 5C 00 00 */ lfs f2, 0(r28) -/* 8016CD94 00169CF4 38 81 00 48 */ addi r4, r1, 0x48 -/* 8016CD98 00169CF8 C0 3C 00 04 */ lfs f1, 4(r28) -/* 8016CD9C 00169CFC 38 A1 00 3C */ addi r5, r1, 0x3c -/* 8016CDA0 00169D00 C0 1C 00 08 */ lfs f0, 8(r28) -/* 8016CDA4 00169D04 38 C1 00 0C */ addi r6, r1, 0xc -/* 8016CDA8 00169D08 D0 61 00 0C */ stfs f3, 0xc(r1) -/* 8016CDAC 00169D0C D3 A1 00 3C */ stfs f29, 0x3c(r1) -/* 8016CDB0 00169D10 D3 81 00 40 */ stfs f28, 0x40(r1) -/* 8016CDB4 00169D14 D3 61 00 44 */ stfs f27, 0x44(r1) -/* 8016CDB8 00169D18 D0 41 00 48 */ stfs f2, 0x48(r1) -/* 8016CDBC 00169D1C D0 21 00 4C */ stfs f1, 0x4c(r1) -/* 8016CDC0 00169D20 D0 01 00 50 */ stfs f0, 0x50(r1) -/* 8016CDC4 00169D24 48 1A 48 D1 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle -/* 8016CDC8 00169D28 C0 61 00 54 */ lfs f3, 0x54(r1) -/* 8016CDCC 00169D2C 38 61 00 1C */ addi r3, r1, 0x1c -/* 8016CDD0 00169D30 C0 41 00 58 */ lfs f2, 0x58(r1) -/* 8016CDD4 00169D34 38 99 00 34 */ addi r4, r25, 0x34 -/* 8016CDD8 00169D38 C0 21 00 5C */ lfs f1, 0x5c(r1) -/* 8016CDDC 00169D3C C0 01 00 60 */ lfs f0, 0x60(r1) -/* 8016CDE0 00169D40 D0 61 00 94 */ stfs f3, 0x94(r1) -/* 8016CDE4 00169D44 D0 41 00 98 */ stfs f2, 0x98(r1) -/* 8016CDE8 00169D48 D0 21 00 9C */ stfs f1, 0x9c(r1) -/* 8016CDEC 00169D4C D0 01 00 A0 */ stfs f0, 0xa0(r1) -/* 8016CDF0 00169D50 48 1A 53 39 */ bl FromMatrix__11CQuaternionFRC12CTransform4f -/* 8016CDF4 00169D54 38 61 00 2C */ addi r3, r1, 0x2c -/* 8016CDF8 00169D58 38 81 00 1C */ addi r4, r1, 0x1c -/* 8016CDFC 00169D5C 38 A1 00 94 */ addi r5, r1, 0x94 -/* 8016CE00 00169D60 48 1A 43 A1 */ bl __ml__11CQuaternionCFRC11CQuaternion -/* 8016CE04 00169D64 C0 59 00 60 */ lfs f2, 0x60(r25) -/* 8016CE08 00169D68 38 61 00 F8 */ addi r3, r1, 0xf8 -/* 8016CE0C 00169D6C C0 39 00 50 */ lfs f1, 0x50(r25) -/* 8016CE10 00169D70 38 81 00 2C */ addi r4, r1, 0x2c -/* 8016CE14 00169D74 C0 19 00 40 */ lfs f0, 0x40(r25) -/* 8016CE18 00169D78 38 A1 00 10 */ addi r5, r1, 0x10 -/* 8016CE1C 00169D7C D0 01 00 10 */ stfs f0, 0x10(r1) -/* 8016CE20 00169D80 D0 21 00 14 */ stfs f1, 0x14(r1) -/* 8016CE24 00169D84 D0 41 00 18 */ stfs f2, 0x18(r1) -/* 8016CE28 00169D88 48 1A 50 95 */ bl BuildTransform4f__11CQuaternionCFRC9CVector3f -/* 8016CE2C 00169D8C 38 79 00 34 */ addi r3, r25, 0x34 -/* 8016CE30 00169D90 38 81 00 F8 */ addi r4, r1, 0xf8 -/* 8016CE34 00169D94 48 1A 5D 0D */ bl __as__12CTransform4fFRC12CTransform4f -/* 8016CE38 00169D98 88 19 00 E4 */ lbz r0, 0xe4(r25) -/* 8016CE3C 00169D9C 38 60 00 01 */ li r3, 1 -/* 8016CE40 00169DA0 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 8016CE44 00169DA4 98 19 00 E4 */ stb r0, 0xe4(r25) -/* 8016CE48 00169DA8 88 19 00 E4 */ lbz r0, 0xe4(r25) -/* 8016CE4C 00169DAC 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 8016CE50 00169DB0 98 19 00 E4 */ stb r0, 0xe4(r25) -/* 8016CE54 00169DB4 88 19 00 E4 */ lbz r0, 0xe4(r25) -/* 8016CE58 00169DB8 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d -/* 8016CE5C 00169DBC 98 19 00 E4 */ stb r0, 0xe4(r25) -lbl_8016CE60: -/* 8016CE60 00169DC0 E3 E1 0A 48 */ psq_l f31, -1464(r1), 0, qr0 -/* 8016CE64 00169DC4 CB E1 0A 40 */ lfd f31, 0xa40(r1) -/* 8016CE68 00169DC8 E3 C1 0A 38 */ psq_l f30, -1480(r1), 0, qr0 -/* 8016CE6C 00169DCC CB C1 0A 30 */ lfd f30, 0xa30(r1) -/* 8016CE70 00169DD0 E3 A1 0A 28 */ psq_l f29, -1496(r1), 0, qr0 -/* 8016CE74 00169DD4 CB A1 0A 20 */ lfd f29, 0xa20(r1) -/* 8016CE78 00169DD8 E3 81 0A 18 */ psq_l f28, -1512(r1), 0, qr0 -/* 8016CE7C 00169DDC CB 81 0A 10 */ lfd f28, 0xa10(r1) -/* 8016CE80 00169DE0 E3 61 0A 08 */ psq_l f27, -1528(r1), 0, qr0 -/* 8016CE84 00169DE4 CB 61 0A 00 */ lfd f27, 0xa00(r1) -/* 8016CE88 00169DE8 E3 41 09 F8 */ psq_l f26, -1544(r1), 0, qr0 -/* 8016CE8C 00169DEC CB 41 09 F0 */ lfd f26, 0x9f0(r1) -/* 8016CE90 00169DF0 E3 21 09 E8 */ psq_l f25, -1560(r1), 0, qr0 -/* 8016CE94 00169DF4 CB 21 09 E0 */ lfd f25, 0x9e0(r1) -/* 8016CE98 00169DF8 E3 01 09 D8 */ psq_l f24, -1576(r1), 0, qr0 -/* 8016CE9C 00169DFC CB 01 09 D0 */ lfd f24, 0x9d0(r1) -/* 8016CEA0 00169E00 E2 E1 09 C8 */ psq_l f23, -1592(r1), 0, qr0 -/* 8016CEA4 00169E04 CA E1 09 C0 */ lfd f23, 0x9c0(r1) -/* 8016CEA8 00169E08 BA E1 09 9C */ lmw r23, 0x99c(r1) -/* 8016CEAC 00169E0C 80 01 0A 54 */ lwz r0, 0xa54(r1) -/* 8016CEB0 00169E10 7C 08 03 A6 */ mtlr r0 -/* 8016CEB4 00169E14 38 21 0A 50 */ addi r1, r1, 0xa50 -/* 8016CEB8 00169E18 4E 80 00 20 */ blr - -.global sub_8016cebc -sub_8016cebc: -/* 8016CEBC 00169E1C 94 21 FE B0 */ stwu r1, -0x150(r1) -/* 8016CEC0 00169E20 7C 08 02 A6 */ mflr r0 -/* 8016CEC4 00169E24 3C C0 80 5A */ lis r6, lbl_805A6724@ha -/* 8016CEC8 00169E28 3C A0 80 5A */ lis r5, skIdentity4f@ha -/* 8016CECC 00169E2C 90 01 01 54 */ stw r0, 0x154(r1) -/* 8016CED0 00169E30 38 05 66 70 */ addi r0, r5, skIdentity4f@l -/* 8016CED4 00169E34 93 E1 01 4C */ stw r31, 0x14c(r1) -/* 8016CED8 00169E38 3B E0 00 00 */ li r31, 0 -/* 8016CEDC 00169E3C 93 C1 01 48 */ stw r30, 0x148(r1) -/* 8016CEE0 00169E40 7C 9E 23 78 */ mr r30, r4 -/* 8016CEE4 00169E44 7C 04 03 78 */ mr r4, r0 -/* 8016CEE8 00169E48 93 A1 01 44 */ stw r29, 0x144(r1) -/* 8016CEEC 00169E4C 7C 7D 1B 78 */ mr r29, r3 -/* 8016CEF0 00169E50 38 61 01 08 */ addi r3, r1, 0x108 -/* 8016CEF4 00169E54 93 81 01 40 */ stw r28, 0x140(r1) -/* 8016CEF8 00169E58 C4 46 67 24 */ lfsu f2, lbl_805A6724@l(r6) -/* 8016CEFC 00169E5C C0 26 00 04 */ lfs f1, 4(r6) -/* 8016CF00 00169E60 C0 06 00 08 */ lfs f0, 8(r6) -/* 8016CF04 00169E64 D0 41 00 84 */ stfs f2, 0x84(r1) -/* 8016CF08 00169E68 D0 21 00 88 */ stfs f1, 0x88(r1) -/* 8016CF0C 00169E6C D0 01 00 8C */ stfs f0, 0x8c(r1) -/* 8016CF10 00169E70 48 1A 5C 65 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8016CF14 00169E74 83 9E 08 4C */ lwz r28, 0x84c(r30) -/* 8016CF18 00169E78 A0 7D 07 B0 */ lhz r3, 0x7b0(r29) -/* 8016CF1C 00169E7C A0 1C 00 08 */ lhz r0, 8(r28) -/* 8016CF20 00169E80 7C 03 00 40 */ cmplw r3, r0 -/* 8016CF24 00169E84 40 82 01 80 */ bne lbl_8016D0A4 -/* 8016CF28 00169E88 A0 7C 02 6C */ lhz r3, 0x26c(r28) -/* 8016CF2C 00169E8C A0 1D 00 08 */ lhz r0, 8(r29) -/* 8016CF30 00169E90 7C 03 00 40 */ cmplw r3, r0 -/* 8016CF34 00169E94 40 82 01 FC */ bne lbl_8016D130 -/* 8016CF38 00169E98 7F 83 E3 78 */ mr r3, r28 -/* 8016CF3C 00169E9C 4B EA 7A 69 */ bl DetachActorFromPlayer__7CPlayerFv -/* 8016CF40 00169EA0 80 1C 02 F8 */ lwz r0, 0x2f8(r28) -/* 8016CF44 00169EA4 7F 9F E3 78 */ mr r31, r28 -/* 8016CF48 00169EA8 2C 00 00 01 */ cmpwi r0, 1 -/* 8016CF4C 00169EAC 41 82 00 2C */ beq lbl_8016CF78 -/* 8016CF50 00169EB0 C0 5C 00 58 */ lfs f2, 0x58(r28) -/* 8016CF54 00169EB4 38 9C 00 34 */ addi r4, r28, 0x34 -/* 8016CF58 00169EB8 C0 3C 00 48 */ lfs f1, 0x48(r28) -/* 8016CF5C 00169EBC 38 61 01 08 */ addi r3, r1, 0x108 -/* 8016CF60 00169EC0 C0 1C 00 38 */ lfs f0, 0x38(r28) -/* 8016CF64 00169EC4 D0 01 00 84 */ stfs f0, 0x84(r1) -/* 8016CF68 00169EC8 D0 21 00 88 */ stfs f1, 0x88(r1) -/* 8016CF6C 00169ECC D0 41 00 8C */ stfs f2, 0x8c(r1) -/* 8016CF70 00169ED0 48 1A 5B D1 */ bl __as__12CTransform4fFRC12CTransform4f -/* 8016CF74 00169ED4 48 00 00 D8 */ b lbl_8016D04C -lbl_8016CF78: -/* 8016CF78 00169ED8 C0 02 A0 94 */ lfs f0, lbl_805ABDB4@sda21(r2) -/* 8016CF7C 00169EDC 7F A3 EB 78 */ mr r3, r29 -/* 8016CF80 00169EE0 D0 01 00 18 */ stfs f0, 0x18(r1) -/* 8016CF84 00169EE4 4B EE 75 2D */ bl GetYaw__6CActorCFv -/* 8016CF88 00169EE8 D0 21 00 1C */ stfs f1, 0x1c(r1) -/* 8016CF8C 00169EEC 38 61 00 44 */ addi r3, r1, 0x44 -/* 8016CF90 00169EF0 38 81 00 18 */ addi r4, r1, 0x18 -/* 8016CF94 00169EF4 48 1A 41 65 */ bl ZRotation__11CQuaternionFRC9CRelAngle -/* 8016CF98 00169EF8 38 61 00 54 */ addi r3, r1, 0x54 -/* 8016CF9C 00169EFC 38 81 00 1C */ addi r4, r1, 0x1c -/* 8016CFA0 00169F00 48 1A 41 59 */ bl ZRotation__11CQuaternionFRC9CRelAngle -/* 8016CFA4 00169F04 38 61 00 64 */ addi r3, r1, 0x64 -/* 8016CFA8 00169F08 38 81 00 54 */ addi r4, r1, 0x54 -/* 8016CFAC 00169F0C 38 A1 00 44 */ addi r5, r1, 0x44 -/* 8016CFB0 00169F10 48 1A 41 F1 */ bl __ml__11CQuaternionCFRC11CQuaternion -/* 8016CFB4 00169F14 C0 61 00 64 */ lfs f3, 0x64(r1) -/* 8016CFB8 00169F18 38 61 00 C0 */ addi r3, r1, 0xc0 -/* 8016CFBC 00169F1C C0 41 00 68 */ lfs f2, 0x68(r1) -/* 8016CFC0 00169F20 38 81 00 74 */ addi r4, r1, 0x74 -/* 8016CFC4 00169F24 C0 21 00 6C */ lfs f1, 0x6c(r1) -/* 8016CFC8 00169F28 C0 01 00 70 */ lfs f0, 0x70(r1) -/* 8016CFCC 00169F2C D0 61 00 74 */ stfs f3, 0x74(r1) -/* 8016CFD0 00169F30 D0 41 00 78 */ stfs f2, 0x78(r1) -/* 8016CFD4 00169F34 D0 21 00 7C */ stfs f1, 0x7c(r1) -/* 8016CFD8 00169F38 D0 01 00 80 */ stfs f0, 0x80(r1) -/* 8016CFDC 00169F3C 48 1A 50 B1 */ bl BuildTransform__11CQuaternionCFv -/* 8016CFE0 00169F40 38 61 00 E4 */ addi r3, r1, 0xe4 -/* 8016CFE4 00169F44 38 81 00 C0 */ addi r4, r1, 0xc0 -/* 8016CFE8 00169F48 48 1A 30 3D */ bl __ct__9CMatrix3fFRC9CMatrix3f -/* 8016CFEC 00169F4C 3C 80 80 5A */ lis r4, lbl_805A6724@ha -/* 8016CFF0 00169F50 38 61 00 38 */ addi r3, r1, 0x38 -/* 8016CFF4 00169F54 38 A4 67 24 */ addi r5, r4, lbl_805A6724@l -/* 8016CFF8 00169F58 38 81 00 E4 */ addi r4, r1, 0xe4 -/* 8016CFFC 00169F5C 48 1A 32 99 */ bl __ml__9CMatrix3fCFRC9CVector3f -/* 8016D000 00169F60 C0 41 00 38 */ lfs f2, 0x38(r1) -/* 8016D004 00169F64 38 61 00 90 */ addi r3, r1, 0x90 -/* 8016D008 00169F68 C0 21 00 3C */ lfs f1, 0x3c(r1) -/* 8016D00C 00169F6C 38 81 00 E4 */ addi r4, r1, 0xe4 -/* 8016D010 00169F70 C0 01 00 40 */ lfs f0, 0x40(r1) -/* 8016D014 00169F74 38 A1 00 2C */ addi r5, r1, 0x2c -/* 8016D018 00169F78 D0 41 00 84 */ stfs f2, 0x84(r1) -/* 8016D01C 00169F7C D0 21 00 88 */ stfs f1, 0x88(r1) -/* 8016D020 00169F80 D0 01 00 8C */ stfs f0, 0x8c(r1) -/* 8016D024 00169F84 C0 5C 00 60 */ lfs f2, 0x60(r28) -/* 8016D028 00169F88 C0 3C 00 50 */ lfs f1, 0x50(r28) -/* 8016D02C 00169F8C C0 1C 00 40 */ lfs f0, 0x40(r28) -/* 8016D030 00169F90 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 8016D034 00169F94 D0 21 00 30 */ stfs f1, 0x30(r1) -/* 8016D038 00169F98 D0 41 00 34 */ stfs f2, 0x34(r1) -/* 8016D03C 00169F9C 48 1A 62 3D */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f -/* 8016D040 00169FA0 7C 64 1B 78 */ mr r4, r3 -/* 8016D044 00169FA4 38 61 01 08 */ addi r3, r1, 0x108 -/* 8016D048 00169FA8 48 1A 5A F9 */ bl __as__12CTransform4fFRC12CTransform4f -lbl_8016D04C: -/* 8016D04C 00169FAC 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 8016D050 00169FB0 38 81 00 10 */ addi r4, r1, 0x10 -/* 8016D054 00169FB4 A0 1D 00 08 */ lhz r0, 8(r29) -/* 8016D058 00169FB8 38 63 02 74 */ addi r3, r3, 0x274 -/* 8016D05C 00169FBC B0 01 00 0C */ sth r0, 0xc(r1) -/* 8016D060 00169FC0 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8016D064 00169FC4 48 04 76 61 */ bl RemoveEnergyDrainSource__18CPlayerEnergyDrainF9TUniqueId -/* 8016D068 00169FC8 7F 84 E3 78 */ mr r4, r28 -/* 8016D06C 00169FCC 7F C5 F3 78 */ mr r5, r30 -/* 8016D070 00169FD0 81 9C 00 00 */ lwz r12, 0(r28) -/* 8016D074 00169FD4 38 61 00 20 */ addi r3, r1, 0x20 -/* 8016D078 00169FD8 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) -/* 8016D07C 00169FDC 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 8016D080 00169FE0 7D 89 03 A6 */ mtctr r12 -/* 8016D084 00169FE4 4E 80 04 21 */ bctrl -/* 8016D088 00169FE8 C0 01 00 20 */ lfs f0, 0x20(r1) -/* 8016D08C 00169FEC D0 1D 08 0C */ stfs f0, 0x80c(r29) -/* 8016D090 00169FF0 C0 01 00 24 */ lfs f0, 0x24(r1) -/* 8016D094 00169FF4 D0 1D 08 10 */ stfs f0, 0x810(r29) -/* 8016D098 00169FF8 C0 01 00 28 */ lfs f0, 0x28(r1) -/* 8016D09C 00169FFC D0 1D 08 14 */ stfs f0, 0x814(r29) -/* 8016D0A0 0016A000 48 00 00 90 */ b lbl_8016D130 -lbl_8016D0A4: -/* 8016D0A4 0016A004 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016D0A8 0016A008 7C 03 00 40 */ cmplw r3, r0 -/* 8016D0AC 0016A00C 41 82 00 84 */ beq lbl_8016D130 -/* 8016D0B0 0016A010 A0 1D 07 B0 */ lhz r0, 0x7b0(r29) -/* 8016D0B4 0016A014 7F C3 F3 78 */ mr r3, r30 -/* 8016D0B8 0016A018 38 81 00 08 */ addi r4, r1, 8 -/* 8016D0BC 0016A01C B0 01 00 08 */ sth r0, 8(r1) -/* 8016D0C0 0016A020 4B ED F4 B5 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8016D0C4 0016A024 7C 64 1B 78 */ mr r4, r3 -/* 8016D0C8 0016A028 38 61 00 14 */ addi r3, r1, 0x14 -/* 8016D0CC 0016A02C 4B F3 83 05 */ bl sub_800a53d0 -/* 8016D0D0 0016A030 4B F3 82 D5 */ bl "CastTo<12CSpacePirate>__10CPatternedFP7CEntity" -/* 8016D0D4 0016A034 7C 7C 1B 79 */ or. r28, r3, r3 -/* 8016D0D8 0016A038 41 82 00 58 */ beq lbl_8016D130 -/* 8016D0DC 0016A03C A0 9C 07 B4 */ lhz r4, 0x7b4(r28) -/* 8016D0E0 0016A040 A0 1D 00 08 */ lhz r0, 8(r29) -/* 8016D0E4 0016A044 7C 04 00 40 */ cmplw r4, r0 -/* 8016D0E8 0016A048 40 82 00 48 */ bne lbl_8016D130 -/* 8016D0EC 0016A04C 4B FB C7 21 */ bl DetachActorFromPirate__12CSpacePirateFv -/* 8016D0F0 0016A050 C0 5C 00 58 */ lfs f2, 0x58(r28) -/* 8016D0F4 0016A054 38 9C 00 34 */ addi r4, r28, 0x34 -/* 8016D0F8 0016A058 C0 3C 00 48 */ lfs f1, 0x48(r28) -/* 8016D0FC 0016A05C 7F 9F E3 78 */ mr r31, r28 -/* 8016D100 0016A060 C0 1C 00 38 */ lfs f0, 0x38(r28) -/* 8016D104 0016A064 38 61 01 08 */ addi r3, r1, 0x108 -/* 8016D108 0016A068 D0 01 00 84 */ stfs f0, 0x84(r1) -/* 8016D10C 0016A06C D0 21 00 88 */ stfs f1, 0x88(r1) -/* 8016D110 0016A070 D0 41 00 8C */ stfs f2, 0x8c(r1) -/* 8016D114 0016A074 48 1A 5A 2D */ bl __as__12CTransform4fFRC12CTransform4f -/* 8016D118 0016A078 C0 5D 00 60 */ lfs f2, 0x60(r29) -/* 8016D11C 0016A07C C0 3D 00 50 */ lfs f1, 0x50(r29) -/* 8016D120 0016A080 C0 1D 00 40 */ lfs f0, 0x40(r29) -/* 8016D124 0016A084 D0 1D 08 0C */ stfs f0, 0x80c(r29) -/* 8016D128 0016A088 D0 3D 08 10 */ stfs f1, 0x810(r29) -/* 8016D12C 0016A08C D0 5D 08 14 */ stfs f2, 0x814(r29) -lbl_8016D130: -/* 8016D130 0016A090 7F A3 EB 78 */ mr r3, r29 -/* 8016D134 0016A094 7F E4 FB 78 */ mr r4, r31 -/* 8016D138 0016A098 7F C5 F3 78 */ mr r5, r30 -/* 8016D13C 0016A09C 38 C1 00 84 */ addi r6, r1, 0x84 -/* 8016D140 0016A0A0 38 E1 01 08 */ addi r7, r1, 0x108 -/* 8016D144 0016A0A4 4B FF F8 B9 */ bl sub_8016c9fc -/* 8016D148 0016A0A8 88 1D 09 BF */ lbz r0, 0x9bf(r29) -/* 8016D14C 0016A0AC 38 60 00 01 */ li r3, 1 -/* 8016D150 0016A0B0 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f -/* 8016D154 0016A0B4 98 1D 09 BF */ stb r0, 0x9bf(r29) -/* 8016D158 0016A0B8 54 03 07 FE */ clrlwi r3, r0, 0x1f -/* 8016D15C 0016A0BC 88 1D 09 BF */ lbz r0, 0x9bf(r29) -/* 8016D160 0016A0C0 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e -/* 8016D164 0016A0C4 98 1D 09 BF */ stb r0, 0x9bf(r29) -/* 8016D168 0016A0C8 83 E1 01 4C */ lwz r31, 0x14c(r1) -/* 8016D16C 0016A0CC 83 C1 01 48 */ lwz r30, 0x148(r1) -/* 8016D170 0016A0D0 83 A1 01 44 */ lwz r29, 0x144(r1) -/* 8016D174 0016A0D4 83 81 01 40 */ lwz r28, 0x140(r1) -/* 8016D178 0016A0D8 80 01 01 54 */ lwz r0, 0x154(r1) -/* 8016D17C 0016A0DC 7C 08 03 A6 */ mtlr r0 -/* 8016D180 0016A0E0 38 21 01 50 */ addi r1, r1, 0x150 -/* 8016D184 0016A0E4 4E 80 00 20 */ blr - -.global sub_8016d188 -sub_8016d188: -/* 8016D188 0016A0E8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8016D18C 0016A0EC 7C 08 02 A6 */ mflr r0 -/* 8016D190 0016A0F0 90 01 00 24 */ stw r0, 0x24(r1) -/* 8016D194 0016A0F4 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8016D198 0016A0F8 7C 9F 23 78 */ mr r31, r4 -/* 8016D19C 0016A0FC 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8016D1A0 0016A100 7C 7E 1B 78 */ mr r30, r3 -/* 8016D1A4 0016A104 80 A4 08 4C */ lwz r5, 0x84c(r4) -/* 8016D1A8 0016A108 A0 C3 07 B0 */ lhz r6, 0x7b0(r3) -/* 8016D1AC 0016A10C A0 05 00 08 */ lhz r0, 8(r5) -/* 8016D1B0 0016A110 7C 06 00 40 */ cmplw r6, r0 -/* 8016D1B4 0016A114 40 82 00 50 */ bne lbl_8016D204 -/* 8016D1B8 0016A118 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8016D1BC 0016A11C 38 81 00 14 */ addi r4, r1, 0x14 -/* 8016D1C0 0016A120 38 A0 00 00 */ li r5, 0 -/* 8016D1C4 0016A124 B0 01 00 14 */ sth r0, 0x14(r1) -/* 8016D1C8 0016A128 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8016D1CC 0016A12C 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8016D1D0 0016A130 4B EA 78 01 */ bl AttachActorToPlayer__7CPlayerF9TUniqueId -/* 8016D1D4 0016A134 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016D1D8 0016A138 41 82 00 34 */ beq lbl_8016D20C -/* 8016D1DC 0016A13C 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8016D1E0 0016A140 38 81 00 0C */ addi r4, r1, 0xc -/* 8016D1E4 0016A144 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8016D1E8 0016A148 C0 22 A0 98 */ lfs f1, lbl_805ABDB8@sda21(r2) -/* 8016D1EC 0016A14C 38 63 02 74 */ addi r3, r3, 0x274 -/* 8016D1F0 0016A150 B0 01 00 08 */ sth r0, 8(r1) -/* 8016D1F4 0016A154 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8016D1F8 0016A158 48 04 76 9D */ bl sub_801b4894 -/* 8016D1FC 0016A15C 38 60 00 01 */ li r3, 1 -/* 8016D200 0016A160 48 00 00 10 */ b lbl_8016D210 -lbl_8016D204: -/* 8016D204 0016A164 48 00 0B AD */ bl sub_8016ddb0 -/* 8016D208 0016A168 48 00 00 08 */ b lbl_8016D210 -lbl_8016D20C: -/* 8016D20C 0016A16C 38 60 00 00 */ li r3, 0 -lbl_8016D210: -/* 8016D210 0016A170 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8016D214 0016A174 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8016D218 0016A178 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8016D21C 0016A17C 7C 08 03 A6 */ mtlr r0 -/* 8016D220 0016A180 38 21 00 20 */ addi r1, r1, 0x20 -/* 8016D224 0016A184 4E 80 00 20 */ blr - -.global sub_8016d228 -sub_8016d228: -/* 8016D228 0016A188 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8016D22C 0016A18C 7C 08 02 A6 */ mflr r0 -/* 8016D230 0016A190 90 01 00 34 */ stw r0, 0x34(r1) -/* 8016D234 0016A194 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8016D238 0016A198 93 C1 00 28 */ stw r30, 0x28(r1) -/* 8016D23C 0016A19C 7C 7E 1B 78 */ mr r30, r3 -/* 8016D240 0016A1A0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016D244 0016A1A4 A0 63 06 98 */ lhz r3, 0x698(r3) -/* 8016D248 0016A1A8 7C 03 00 40 */ cmplw r3, r0 -/* 8016D24C 0016A1AC 41 82 00 68 */ beq lbl_8016D2B4 -/* 8016D250 0016A1B0 A0 1E 06 98 */ lhz r0, 0x698(r30) -/* 8016D254 0016A1B4 7C 83 23 78 */ mr r3, r4 -/* 8016D258 0016A1B8 38 81 00 18 */ addi r4, r1, 0x18 -/* 8016D25C 0016A1BC B0 01 00 18 */ sth r0, 0x18(r1) -/* 8016D260 0016A1C0 4B ED F3 15 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8016D264 0016A1C4 7C 64 1B 78 */ mr r4, r3 -/* 8016D268 0016A1C8 38 61 00 1C */ addi r3, r1, 0x1c -/* 8016D26C 0016A1CC 4B F3 A3 09 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" -/* 8016D270 0016A1D0 83 E3 00 04 */ lwz r31, 4(r3) -/* 8016D274 0016A1D4 28 1F 00 00 */ cmplwi r31, 0 -/* 8016D278 0016A1D8 41 82 00 3C */ beq lbl_8016D2B4 -/* 8016D27C 0016A1DC A0 1E 00 08 */ lhz r0, 8(r30) -/* 8016D280 0016A1E0 7F E3 FB 78 */ mr r3, r31 -/* 8016D284 0016A1E4 38 81 00 14 */ addi r4, r1, 0x14 -/* 8016D288 0016A1E8 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8016D28C 0016A1EC B0 01 00 14 */ sth r0, 0x14(r1) -/* 8016D290 0016A1F0 48 0C BD 61 */ bl IsPartOfTeam__10CTeamAiMgrCF9TUniqueId -/* 8016D294 0016A1F4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016D298 0016A1F8 41 82 00 1C */ beq lbl_8016D2B4 -/* 8016D29C 0016A1FC A0 1E 00 08 */ lhz r0, 8(r30) -/* 8016D2A0 0016A200 7F E3 FB 78 */ mr r3, r31 -/* 8016D2A4 0016A204 38 81 00 0C */ addi r4, r1, 0xc -/* 8016D2A8 0016A208 B0 01 00 08 */ sth r0, 8(r1) -/* 8016D2AC 0016A20C B0 01 00 0C */ sth r0, 0xc(r1) -/* 8016D2B0 0016A210 48 0C C2 45 */ bl RemoveTeamAiRole__10CTeamAiMgrF9TUniqueId -lbl_8016D2B4: -/* 8016D2B4 0016A214 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8016D2B8 0016A218 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8016D2BC 0016A21C 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 8016D2C0 0016A220 7C 08 03 A6 */ mtlr r0 -/* 8016D2C4 0016A224 38 21 00 30 */ addi r1, r1, 0x30 -/* 8016D2C8 0016A228 4E 80 00 20 */ blr - -.global sub_8016d2cc -sub_8016d2cc: -/* 8016D2CC 0016A22C 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8016D2D0 0016A230 7C 08 02 A6 */ mflr r0 -/* 8016D2D4 0016A234 90 01 00 34 */ stw r0, 0x34(r1) -/* 8016D2D8 0016A238 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8016D2DC 0016A23C 93 C1 00 28 */ stw r30, 0x28(r1) -/* 8016D2E0 0016A240 7C 7E 1B 78 */ mr r30, r3 -/* 8016D2E4 0016A244 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016D2E8 0016A248 A0 63 06 98 */ lhz r3, 0x698(r3) -/* 8016D2EC 0016A24C 7C 03 00 40 */ cmplw r3, r0 -/* 8016D2F0 0016A250 41 82 00 68 */ beq lbl_8016D358 -/* 8016D2F4 0016A254 A0 1E 06 98 */ lhz r0, 0x698(r30) -/* 8016D2F8 0016A258 7C 83 23 78 */ mr r3, r4 -/* 8016D2FC 0016A25C 38 81 00 10 */ addi r4, r1, 0x10 -/* 8016D300 0016A260 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8016D304 0016A264 4B ED F2 71 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8016D308 0016A268 7C 64 1B 78 */ mr r4, r3 -/* 8016D30C 0016A26C 38 61 00 14 */ addi r3, r1, 0x14 -/* 8016D310 0016A270 4B F3 A2 65 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" -/* 8016D314 0016A274 83 E3 00 04 */ lwz r31, 4(r3) -/* 8016D318 0016A278 28 1F 00 00 */ cmplwi r31, 0 -/* 8016D31C 0016A27C 41 82 00 3C */ beq lbl_8016D358 -/* 8016D320 0016A280 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8016D324 0016A284 7F E3 FB 78 */ mr r3, r31 -/* 8016D328 0016A288 38 81 00 0C */ addi r4, r1, 0xc -/* 8016D32C 0016A28C B0 01 00 08 */ sth r0, 8(r1) -/* 8016D330 0016A290 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8016D334 0016A294 48 0C BC BD */ bl IsPartOfTeam__10CTeamAiMgrCF9TUniqueId -/* 8016D338 0016A298 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016D33C 0016A29C 40 82 00 1C */ bne lbl_8016D358 -/* 8016D340 0016A2A0 7F E3 FB 78 */ mr r3, r31 -/* 8016D344 0016A2A4 7F C4 F3 78 */ mr r4, r30 -/* 8016D348 0016A2A8 38 A0 00 01 */ li r5, 1 -/* 8016D34C 0016A2AC 38 C0 FF FF */ li r6, -1 -/* 8016D350 0016A2B0 38 E0 FF FF */ li r7, -1 -/* 8016D354 0016A2B4 48 0C C4 59 */ bl AssignTeamAiRole__10CTeamAiMgrFRC3CAiiii -lbl_8016D358: -/* 8016D358 0016A2B8 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8016D35C 0016A2BC 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8016D360 0016A2C0 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 8016D364 0016A2C4 7C 08 03 A6 */ mtlr r0 -/* 8016D368 0016A2C8 38 21 00 30 */ addi r1, r1, 0x30 -/* 8016D36C 0016A2CC 4E 80 00 20 */ blr - -.global sub_8016d370 -sub_8016d370: -/* 8016D370 0016A2D0 94 21 FF 20 */ stwu r1, -0xe0(r1) -/* 8016D374 0016A2D4 7C 08 02 A6 */ mflr r0 -/* 8016D378 0016A2D8 90 01 00 E4 */ stw r0, 0xe4(r1) -/* 8016D37C 0016A2DC DB E1 00 D0 */ stfd f31, 0xd0(r1) -/* 8016D380 0016A2E0 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 -/* 8016D384 0016A2E4 DB C1 00 C0 */ stfd f30, 0xc0(r1) -/* 8016D388 0016A2E8 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 -/* 8016D38C 0016A2EC DB A1 00 B0 */ stfd f29, 0xb0(r1) -/* 8016D390 0016A2F0 F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0 -/* 8016D394 0016A2F4 DB 81 00 A0 */ stfd f28, 0xa0(r1) -/* 8016D398 0016A2F8 F3 81 00 A8 */ psq_st f28, 168(r1), 0, qr0 -/* 8016D39C 0016A2FC DB 61 00 90 */ stfd f27, 0x90(r1) -/* 8016D3A0 0016A300 F3 61 00 98 */ psq_st f27, 152(r1), 0, qr0 -/* 8016D3A4 0016A304 93 E1 00 8C */ stw r31, 0x8c(r1) -/* 8016D3A8 0016A308 93 C1 00 88 */ stw r30, 0x88(r1) -/* 8016D3AC 0016A30C A0 03 09 BC */ lhz r0, 0x9bc(r3) -/* 8016D3B0 0016A310 7C 7E 1B 78 */ mr r30, r3 -/* 8016D3B4 0016A314 FF E0 08 90 */ fmr f31, f1 -/* 8016D3B8 0016A318 7C 83 23 78 */ mr r3, r4 -/* 8016D3BC 0016A31C B0 01 00 08 */ sth r0, 8(r1) -/* 8016D3C0 0016A320 38 81 00 08 */ addi r4, r1, 8 -/* 8016D3C4 0016A324 4B ED F1 B1 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8016D3C8 0016A328 7C 64 1B 78 */ mr r4, r3 -/* 8016D3CC 0016A32C 38 61 00 0C */ addi r3, r1, 0xc -/* 8016D3D0 0016A330 4B F3 81 05 */ bl sub_800a54d4 -/* 8016D3D4 0016A334 4B F3 80 D5 */ bl "CastTo<8CMetroid>__10CPatternedFP7CEntity" -/* 8016D3D8 0016A338 7C 7F 1B 79 */ or. r31, r3, r3 -/* 8016D3DC 0016A33C 41 82 01 60 */ beq lbl_8016D53C -/* 8016D3E0 0016A340 C0 3E 00 50 */ lfs f1, 0x50(r30) -/* 8016D3E4 0016A344 38 61 00 70 */ addi r3, r1, 0x70 -/* 8016D3E8 0016A348 C0 1F 00 50 */ lfs f0, 0x50(r31) -/* 8016D3EC 0016A34C C0 7E 00 60 */ lfs f3, 0x60(r30) -/* 8016D3F0 0016A350 C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 8016D3F4 0016A354 EC 81 00 28 */ fsubs f4, f1, f0 -/* 8016D3F8 0016A358 C0 3E 00 40 */ lfs f1, 0x40(r30) -/* 8016D3FC 0016A35C C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 8016D400 0016A360 EC 43 10 28 */ fsubs f2, f3, f2 -/* 8016D404 0016A364 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8016D408 0016A368 D0 81 00 74 */ stfs f4, 0x74(r1) -/* 8016D40C 0016A36C D0 41 00 78 */ stfs f2, 0x78(r1) -/* 8016D410 0016A370 D0 01 00 70 */ stfs f0, 0x70(r1) -/* 8016D414 0016A374 C3 9E 00 54 */ lfs f28, 0x54(r30) -/* 8016D418 0016A378 C3 BE 00 44 */ lfs f29, 0x44(r30) -/* 8016D41C 0016A37C C3 DE 00 34 */ lfs f30, 0x34(r30) -/* 8016D420 0016A380 C3 7E 06 BC */ lfs f27, 0x6bc(r30) -/* 8016D424 0016A384 48 1A 74 95 */ bl Magnitude__9CVector3fCFv -/* 8016D428 0016A388 C0 02 A0 D8 */ lfs f0, lbl_805ABDF8@sda21(r2) -/* 8016D42C 0016A38C EC 00 06 F2 */ fmuls f0, f0, f27 -/* 8016D430 0016A390 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8016D434 0016A394 40 80 01 08 */ bge lbl_8016D53C -/* 8016D438 0016A398 EF 60 08 28 */ fsubs f27, f0, f1 -/* 8016D43C 0016A39C 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 8016D440 0016A3A0 4B FC D4 79 */ bl GetAnimTimeRemaining__15CBodyControllerCFv -/* 8016D444 0016A3A4 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016D448 0016A3A8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8016D44C 0016A3AC 40 81 00 10 */ ble lbl_8016D45C -/* 8016D450 0016A3B0 EC 1B 07 F2 */ fmuls f0, f27, f31 -/* 8016D454 0016A3B4 EC 00 08 24 */ fdivs f0, f0, f1 -/* 8016D458 0016A3B8 48 00 00 08 */ b lbl_8016D460 -lbl_8016D45C: -/* 8016D45C 0016A3BC FC 00 D8 90 */ fmr f0, f27 -lbl_8016D460: -/* 8016D460 0016A3C0 EC 40 07 B2 */ fmuls f2, f0, f30 -/* 8016D464 0016A3C4 38 61 00 34 */ addi r3, r1, 0x34 -/* 8016D468 0016A3C8 EC 20 07 72 */ fmuls f1, f0, f29 -/* 8016D46C 0016A3CC 38 9E 00 34 */ addi r4, r30, 0x34 -/* 8016D470 0016A3D0 EC 00 07 32 */ fmuls f0, f0, f28 -/* 8016D474 0016A3D4 38 A1 00 64 */ addi r5, r1, 0x64 -/* 8016D478 0016A3D8 D0 41 00 64 */ stfs f2, 0x64(r1) -/* 8016D47C 0016A3DC D0 21 00 68 */ stfs f1, 0x68(r1) -/* 8016D480 0016A3E0 D0 01 00 6C */ stfs f0, 0x6c(r1) -/* 8016D484 0016A3E4 48 1A 55 A1 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f -/* 8016D488 0016A3E8 FC 20 F8 90 */ fmr f1, f31 -/* 8016D48C 0016A3EC 7F C4 F3 78 */ mr r4, r30 -/* 8016D490 0016A3F0 38 61 00 40 */ addi r3, r1, 0x40 -/* 8016D494 0016A3F4 38 A1 00 34 */ addi r5, r1, 0x34 -/* 8016D498 0016A3F8 4B FA DB 71 */ bl GetMoveToORImpulseWR__13CPhysicsActorCFRC9CVector3ff -/* 8016D49C 0016A3FC C0 41 00 40 */ lfs f2, 0x40(r1) -/* 8016D4A0 0016A400 C0 21 00 44 */ lfs f1, 0x44(r1) -/* 8016D4A4 0016A404 C0 01 00 48 */ lfs f0, 0x48(r1) -/* 8016D4A8 0016A408 D0 41 00 58 */ stfs f2, 0x58(r1) -/* 8016D4AC 0016A40C D0 21 00 5C */ stfs f1, 0x5c(r1) -/* 8016D4B0 0016A410 D0 01 00 60 */ stfs f0, 0x60(r1) -/* 8016D4B4 0016A414 4B EA E0 81 */ bl Identity__10CAxisAngleFv -/* 8016D4B8 0016A418 7C 65 1B 78 */ mr r5, r3 -/* 8016D4BC 0016A41C 7F C3 F3 78 */ mr r3, r30 -/* 8016D4C0 0016A420 38 81 00 58 */ addi r4, r1, 0x58 -/* 8016D4C4 0016A424 4B FA EE D5 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle -/* 8016D4C8 0016A428 C0 41 00 64 */ lfs f2, 0x64(r1) -/* 8016D4CC 0016A42C 38 61 00 1C */ addi r3, r1, 0x1c -/* 8016D4D0 0016A430 C0 21 00 68 */ lfs f1, 0x68(r1) -/* 8016D4D4 0016A434 38 9F 00 34 */ addi r4, r31, 0x34 -/* 8016D4D8 0016A438 C0 01 00 6C */ lfs f0, 0x6c(r1) -/* 8016D4DC 0016A43C FC 40 10 50 */ fneg f2, f2 -/* 8016D4E0 0016A440 FC 20 08 50 */ fneg f1, f1 -/* 8016D4E4 0016A444 38 A1 00 10 */ addi r5, r1, 0x10 -/* 8016D4E8 0016A448 FC 00 00 50 */ fneg f0, f0 -/* 8016D4EC 0016A44C D0 41 00 10 */ stfs f2, 0x10(r1) -/* 8016D4F0 0016A450 D0 21 00 14 */ stfs f1, 0x14(r1) -/* 8016D4F4 0016A454 D0 01 00 18 */ stfs f0, 0x18(r1) -/* 8016D4F8 0016A458 48 1A 55 2D */ bl TransposeRotate__12CTransform4fCFRC9CVector3f -/* 8016D4FC 0016A45C FC 20 F8 90 */ fmr f1, f31 -/* 8016D500 0016A460 7F E4 FB 78 */ mr r4, r31 -/* 8016D504 0016A464 38 61 00 28 */ addi r3, r1, 0x28 -/* 8016D508 0016A468 38 A1 00 1C */ addi r5, r1, 0x1c -/* 8016D50C 0016A46C 4B FA DA FD */ bl GetMoveToORImpulseWR__13CPhysicsActorCFRC9CVector3ff -/* 8016D510 0016A470 C0 41 00 28 */ lfs f2, 0x28(r1) -/* 8016D514 0016A474 C0 21 00 2C */ lfs f1, 0x2c(r1) -/* 8016D518 0016A478 C0 01 00 30 */ lfs f0, 0x30(r1) -/* 8016D51C 0016A47C D0 41 00 4C */ stfs f2, 0x4c(r1) -/* 8016D520 0016A480 D0 21 00 50 */ stfs f1, 0x50(r1) -/* 8016D524 0016A484 D0 01 00 54 */ stfs f0, 0x54(r1) -/* 8016D528 0016A488 4B EA E0 0D */ bl Identity__10CAxisAngleFv -/* 8016D52C 0016A48C 7C 65 1B 78 */ mr r5, r3 -/* 8016D530 0016A490 7F E3 FB 78 */ mr r3, r31 -/* 8016D534 0016A494 38 81 00 4C */ addi r4, r1, 0x4c -/* 8016D538 0016A498 4B FA EE 61 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle -lbl_8016D53C: -/* 8016D53C 0016A49C E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 -/* 8016D540 0016A4A0 CB E1 00 D0 */ lfd f31, 0xd0(r1) -/* 8016D544 0016A4A4 E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 -/* 8016D548 0016A4A8 CB C1 00 C0 */ lfd f30, 0xc0(r1) -/* 8016D54C 0016A4AC E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0 -/* 8016D550 0016A4B0 CB A1 00 B0 */ lfd f29, 0xb0(r1) -/* 8016D554 0016A4B4 E3 81 00 A8 */ psq_l f28, 168(r1), 0, qr0 -/* 8016D558 0016A4B8 CB 81 00 A0 */ lfd f28, 0xa0(r1) -/* 8016D55C 0016A4BC E3 61 00 98 */ psq_l f27, 152(r1), 0, qr0 -/* 8016D560 0016A4C0 CB 61 00 90 */ lfd f27, 0x90(r1) -/* 8016D564 0016A4C4 83 E1 00 8C */ lwz r31, 0x8c(r1) -/* 8016D568 0016A4C8 80 01 00 E4 */ lwz r0, 0xe4(r1) -/* 8016D56C 0016A4CC 83 C1 00 88 */ lwz r30, 0x88(r1) -/* 8016D570 0016A4D0 7C 08 03 A6 */ mtlr r0 -/* 8016D574 0016A4D4 38 21 00 E0 */ addi r1, r1, 0xe0 -/* 8016D578 0016A4D8 4E 80 00 20 */ blr - -.global sub_8016d57c -sub_8016d57c: -/* 8016D57C 0016A4DC 94 21 FF 00 */ stwu r1, -0x100(r1) -/* 8016D580 0016A4E0 7C 08 02 A6 */ mflr r0 -/* 8016D584 0016A4E4 90 01 01 04 */ stw r0, 0x104(r1) -/* 8016D588 0016A4E8 93 E1 00 FC */ stw r31, 0xfc(r1) -/* 8016D58C 0016A4EC 7C 7F 1B 78 */ mr r31, r3 -/* 8016D590 0016A4F0 93 C1 00 F8 */ stw r30, 0xf8(r1) -/* 8016D594 0016A4F4 7C BE 2B 78 */ mr r30, r5 -/* 8016D598 0016A4F8 93 A1 00 F4 */ stw r29, 0xf4(r1) -/* 8016D59C 0016A4FC 7C 9D 23 78 */ mr r29, r4 -/* 8016D5A0 0016A500 C0 C3 00 50 */ lfs f6, 0x50(r3) -/* 8016D5A4 0016A504 C0 05 00 04 */ lfs f0, 4(r5) -/* 8016D5A8 0016A508 C0 E3 00 40 */ lfs f7, 0x40(r3) -/* 8016D5AC 0016A50C EC 20 30 28 */ fsubs f1, f0, f6 -/* 8016D5B0 0016A510 C0 05 00 00 */ lfs f0, 0(r5) -/* 8016D5B4 0016A514 C0 A3 00 60 */ lfs f5, 0x60(r3) -/* 8016D5B8 0016A518 EC 60 38 28 */ fsubs f3, f0, f7 -/* 8016D5BC 0016A51C C0 85 00 08 */ lfs f4, 8(r5) -/* 8016D5C0 0016A520 EC 21 00 72 */ fmuls f1, f1, f1 -/* 8016D5C4 0016A524 EC 44 28 28 */ fsubs f2, f4, f5 -/* 8016D5C8 0016A528 C0 02 A0 DC */ lfs f0, lbl_805ABDFC@sda21(r2) -/* 8016D5CC 0016A52C EC 23 08 FA */ fmadds f1, f3, f3, f1 -/* 8016D5D0 0016A530 EC 22 08 BA */ fmadds f1, f2, f2, f1 -/* 8016D5D4 0016A534 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8016D5D8 0016A538 40 81 01 90 */ ble lbl_8016D768 -/* 8016D5DC 0016A53C D0 E1 00 50 */ stfs f7, 0x50(r1) -/* 8016D5E0 0016A540 7F E5 FB 78 */ mr r5, r31 -/* 8016D5E4 0016A544 C0 22 A0 88 */ lfs f1, lbl_805ABDA8@sda21(r2) -/* 8016D5E8 0016A548 38 61 00 44 */ addi r3, r1, 0x44 -/* 8016D5EC 0016A54C D0 C1 00 54 */ stfs f6, 0x54(r1) -/* 8016D5F0 0016A550 38 9F 04 5C */ addi r4, r31, 0x45c -/* 8016D5F4 0016A554 38 C1 00 68 */ addi r6, r1, 0x68 -/* 8016D5F8 0016A558 D0 A1 00 58 */ stfs f5, 0x58(r1) -/* 8016D5FC 0016A55C D0 E1 00 68 */ stfs f7, 0x68(r1) -/* 8016D600 0016A560 D0 C1 00 6C */ stfs f6, 0x6c(r1) -/* 8016D604 0016A564 D0 81 00 70 */ stfs f4, 0x70(r1) -/* 8016D608 0016A568 4B FD 15 15 */ bl Arrival__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff -/* 8016D60C 0016A56C C0 81 00 48 */ lfs f4, 0x48(r1) -/* 8016D610 0016A570 C0 41 00 44 */ lfs f2, 0x44(r1) -/* 8016D614 0016A574 EC 24 01 32 */ fmuls f1, f4, f4 -/* 8016D618 0016A578 C0 A1 00 4C */ lfs f5, 0x4c(r1) -/* 8016D61C 0016A57C C0 02 A0 E0 */ lfs f0, lbl_805ABE00@sda21(r2) -/* 8016D620 0016A580 EC 22 08 BA */ fmadds f1, f2, f2, f1 -/* 8016D624 0016A584 EC 25 09 7A */ fmadds f1, f5, f5, f1 -/* 8016D628 0016A588 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8016D62C 0016A58C 40 81 00 44 */ ble lbl_8016D670 -/* 8016D630 0016A590 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8016D634 0016A594 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) -/* 8016D638 0016A598 C0 02 A0 D8 */ lfs f0, lbl_805ABDF8@sda21(r2) -/* 8016D63C 0016A59C 38 81 00 C8 */ addi r4, r1, 0xc8 -/* 8016D640 0016A5A0 D0 41 00 C8 */ stfs f2, 0xc8(r1) -/* 8016D644 0016A5A4 C0 43 00 04 */ lfs f2, 4(r3) -/* 8016D648 0016A5A8 C0 23 00 08 */ lfs f1, 8(r3) -/* 8016D64C 0016A5AC D0 81 00 CC */ stfs f4, 0xcc(r1) -/* 8016D650 0016A5B0 D0 A1 00 D0 */ stfs f5, 0xd0(r1) -/* 8016D654 0016A5B4 D0 61 00 D4 */ stfs f3, 0xd4(r1) -/* 8016D658 0016A5B8 D0 41 00 D8 */ stfs f2, 0xd8(r1) -/* 8016D65C 0016A5BC D0 21 00 DC */ stfs f1, 0xdc(r1) -/* 8016D660 0016A5C0 D0 01 00 E0 */ stfs f0, 0xe0(r1) -/* 8016D664 0016A5C4 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8016D668 0016A5C8 38 63 00 04 */ addi r3, r3, 4 -/* 8016D66C 0016A5CC 4B FC 40 AD */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd -lbl_8016D670: -/* 8016D670 0016A5D0 A0 1F 07 B0 */ lhz r0, 0x7b0(r31) -/* 8016D674 0016A5D4 7F A3 EB 78 */ mr r3, r29 -/* 8016D678 0016A5D8 38 81 00 0C */ addi r4, r1, 0xc -/* 8016D67C 0016A5DC B0 01 00 0C */ sth r0, 0xc(r1) -/* 8016D680 0016A5E0 4B ED EF 25 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8016D684 0016A5E4 7C 64 1B 78 */ mr r4, r3 -/* 8016D688 0016A5E8 38 61 00 18 */ addi r3, r1, 0x18 -/* 8016D68C 0016A5EC 4B F3 F0 59 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" -/* 8016D690 0016A5F0 80 E3 00 04 */ lwz r7, 4(r3) -/* 8016D694 0016A5F4 28 07 00 00 */ cmplwi r7, 0 -/* 8016D698 0016A5F8 41 82 00 6C */ beq lbl_8016D704 -/* 8016D69C 0016A5FC 7F E5 FB 78 */ mr r5, r31 -/* 8016D6A0 0016A600 7F C6 F3 78 */ mr r6, r30 -/* 8016D6A4 0016A604 38 61 00 38 */ addi r3, r1, 0x38 -/* 8016D6A8 0016A608 38 9F 04 5C */ addi r4, r31, 0x45c -/* 8016D6AC 0016A60C 38 E7 01 38 */ addi r7, r7, 0x138 -/* 8016D6B0 0016A610 4B FD 13 6D */ bl Pursuit__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3fRC9CVector3f -/* 8016D6B4 0016A614 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8016D6B8 0016A618 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) -/* 8016D6BC 0016A61C C0 C1 00 38 */ lfs f6, 0x38(r1) -/* 8016D6C0 0016A620 38 81 00 AC */ addi r4, r1, 0xac -/* 8016D6C4 0016A624 C0 A1 00 3C */ lfs f5, 0x3c(r1) -/* 8016D6C8 0016A628 C0 81 00 40 */ lfs f4, 0x40(r1) -/* 8016D6CC 0016A62C C0 43 00 04 */ lfs f2, 4(r3) -/* 8016D6D0 0016A630 C0 23 00 08 */ lfs f1, 8(r3) -/* 8016D6D4 0016A634 C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) -/* 8016D6D8 0016A638 D0 C1 00 AC */ stfs f6, 0xac(r1) -/* 8016D6DC 0016A63C D0 A1 00 B0 */ stfs f5, 0xb0(r1) -/* 8016D6E0 0016A640 D0 81 00 B4 */ stfs f4, 0xb4(r1) -/* 8016D6E4 0016A644 D0 61 00 B8 */ stfs f3, 0xb8(r1) -/* 8016D6E8 0016A648 D0 41 00 BC */ stfs f2, 0xbc(r1) -/* 8016D6EC 0016A64C D0 21 00 C0 */ stfs f1, 0xc0(r1) -/* 8016D6F0 0016A650 D0 01 00 C4 */ stfs f0, 0xc4(r1) -/* 8016D6F4 0016A654 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8016D6F8 0016A658 38 63 00 04 */ addi r3, r3, 4 -/* 8016D6FC 0016A65C 4B FC 40 1D */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd -/* 8016D700 0016A660 48 00 01 58 */ b lbl_8016D858 -lbl_8016D704: -/* 8016D704 0016A664 7F E5 FB 78 */ mr r5, r31 -/* 8016D708 0016A668 7F C6 F3 78 */ mr r6, r30 -/* 8016D70C 0016A66C 38 61 00 2C */ addi r3, r1, 0x2c -/* 8016D710 0016A670 38 9F 04 5C */ addi r4, r31, 0x45c -/* 8016D714 0016A674 4B FD 15 0D */ bl Seek__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3f -/* 8016D718 0016A678 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8016D71C 0016A67C C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) -/* 8016D720 0016A680 C0 C1 00 2C */ lfs f6, 0x2c(r1) -/* 8016D724 0016A684 38 81 00 90 */ addi r4, r1, 0x90 -/* 8016D728 0016A688 C0 A1 00 30 */ lfs f5, 0x30(r1) -/* 8016D72C 0016A68C C0 81 00 34 */ lfs f4, 0x34(r1) -/* 8016D730 0016A690 C0 43 00 04 */ lfs f2, 4(r3) -/* 8016D734 0016A694 C0 23 00 08 */ lfs f1, 8(r3) -/* 8016D738 0016A698 C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) -/* 8016D73C 0016A69C D0 C1 00 90 */ stfs f6, 0x90(r1) -/* 8016D740 0016A6A0 D0 A1 00 94 */ stfs f5, 0x94(r1) -/* 8016D744 0016A6A4 D0 81 00 98 */ stfs f4, 0x98(r1) -/* 8016D748 0016A6A8 D0 61 00 9C */ stfs f3, 0x9c(r1) -/* 8016D74C 0016A6AC D0 41 00 A0 */ stfs f2, 0xa0(r1) -/* 8016D750 0016A6B0 D0 21 00 A4 */ stfs f1, 0xa4(r1) -/* 8016D754 0016A6B4 D0 01 00 A8 */ stfs f0, 0xa8(r1) -/* 8016D758 0016A6B8 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8016D75C 0016A6BC 38 63 00 04 */ addi r3, r3, 4 -/* 8016D760 0016A6C0 4B FC 3F B9 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd -/* 8016D764 0016A6C4 48 00 00 F4 */ b lbl_8016D858 -lbl_8016D768: -/* 8016D768 0016A6C8 81 83 00 00 */ lwz r12, 0(r3) -/* 8016D76C 0016A6CC C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) -/* 8016D770 0016A6D0 81 8C 01 E8 */ lwz r12, 0x1e8(r12) -/* 8016D774 0016A6D4 7D 89 03 A6 */ mtctr r12 -/* 8016D778 0016A6D8 4E 80 04 21 */ bctrl -/* 8016D77C 0016A6DC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016D780 0016A6E0 41 82 00 D8 */ beq lbl_8016D858 -/* 8016D784 0016A6E4 A0 7F 07 B0 */ lhz r3, 0x7b0(r31) -/* 8016D788 0016A6E8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016D78C 0016A6EC 7C 03 00 40 */ cmplw r3, r0 -/* 8016D790 0016A6F0 41 82 00 C8 */ beq lbl_8016D858 -/* 8016D794 0016A6F4 A0 1F 07 B0 */ lhz r0, 0x7b0(r31) -/* 8016D798 0016A6F8 7F A3 EB 78 */ mr r3, r29 -/* 8016D79C 0016A6FC 38 81 00 08 */ addi r4, r1, 8 -/* 8016D7A0 0016A700 B0 01 00 08 */ sth r0, 8(r1) -/* 8016D7A4 0016A704 4B ED EE 01 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8016D7A8 0016A708 7C 64 1B 78 */ mr r4, r3 -/* 8016D7AC 0016A70C 38 61 00 10 */ addi r3, r1, 0x10 -/* 8016D7B0 0016A710 4B F4 24 E1 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8016D7B4 0016A714 80 83 00 04 */ lwz r4, 4(r3) -/* 8016D7B8 0016A718 28 04 00 00 */ cmplwi r4, 0 -/* 8016D7BC 0016A71C 41 82 00 9C */ beq lbl_8016D858 -/* 8016D7C0 0016A720 C0 24 00 50 */ lfs f1, 0x50(r4) -/* 8016D7C4 0016A724 38 61 00 5C */ addi r3, r1, 0x5c -/* 8016D7C8 0016A728 C0 1F 00 50 */ lfs f0, 0x50(r31) -/* 8016D7CC 0016A72C C0 64 00 60 */ lfs f3, 0x60(r4) -/* 8016D7D0 0016A730 C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 8016D7D4 0016A734 EC 81 00 28 */ fsubs f4, f1, f0 -/* 8016D7D8 0016A738 C0 24 00 40 */ lfs f1, 0x40(r4) -/* 8016D7DC 0016A73C C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 8016D7E0 0016A740 EC 43 10 28 */ fsubs f2, f3, f2 -/* 8016D7E4 0016A744 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8016D7E8 0016A748 D0 81 00 60 */ stfs f4, 0x60(r1) -/* 8016D7EC 0016A74C D0 41 00 64 */ stfs f2, 0x64(r1) -/* 8016D7F0 0016A750 D0 01 00 5C */ stfs f0, 0x5c(r1) -/* 8016D7F4 0016A754 48 1A 6F 05 */ bl CanBeNormalized__9CVector3fCFv -/* 8016D7F8 0016A758 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016D7FC 0016A75C 41 82 00 5C */ beq lbl_8016D858 -/* 8016D800 0016A760 38 61 00 20 */ addi r3, r1, 0x20 -/* 8016D804 0016A764 38 81 00 5C */ addi r4, r1, 0x5c -/* 8016D808 0016A768 48 1A 70 49 */ bl AsNormalized__9CVector3fCFv -/* 8016D80C 0016A76C 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8016D810 0016A770 C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) -/* 8016D814 0016A774 C0 61 00 20 */ lfs f3, 0x20(r1) -/* 8016D818 0016A778 38 81 00 74 */ addi r4, r1, 0x74 -/* 8016D81C 0016A77C C0 41 00 24 */ lfs f2, 0x24(r1) -/* 8016D820 0016A780 C0 A3 00 04 */ lfs f5, 4(r3) -/* 8016D824 0016A784 C0 83 00 08 */ lfs f4, 8(r3) -/* 8016D828 0016A788 C0 21 00 28 */ lfs f1, 0x28(r1) -/* 8016D82C 0016A78C C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) -/* 8016D830 0016A790 D0 C1 00 74 */ stfs f6, 0x74(r1) -/* 8016D834 0016A794 D0 A1 00 78 */ stfs f5, 0x78(r1) -/* 8016D838 0016A798 D0 81 00 7C */ stfs f4, 0x7c(r1) -/* 8016D83C 0016A79C D0 61 00 80 */ stfs f3, 0x80(r1) -/* 8016D840 0016A7A0 D0 41 00 84 */ stfs f2, 0x84(r1) -/* 8016D844 0016A7A4 D0 21 00 88 */ stfs f1, 0x88(r1) -/* 8016D848 0016A7A8 D0 01 00 8C */ stfs f0, 0x8c(r1) -/* 8016D84C 0016A7AC 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8016D850 0016A7B0 38 63 00 04 */ addi r3, r3, 4 -/* 8016D854 0016A7B4 4B FC 3E C5 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd -lbl_8016D858: -/* 8016D858 0016A7B8 80 01 01 04 */ lwz r0, 0x104(r1) -/* 8016D85C 0016A7BC 83 E1 00 FC */ lwz r31, 0xfc(r1) -/* 8016D860 0016A7C0 83 C1 00 F8 */ lwz r30, 0xf8(r1) -/* 8016D864 0016A7C4 83 A1 00 F4 */ lwz r29, 0xf4(r1) -/* 8016D868 0016A7C8 7C 08 03 A6 */ mtlr r0 -/* 8016D86C 0016A7CC 38 21 01 00 */ addi r1, r1, 0x100 -/* 8016D870 0016A7D0 4E 80 00 20 */ blr - -.global sub_8016d874 -sub_8016d874: -/* 8016D874 0016A7D4 94 21 FF 90 */ stwu r1, -0x70(r1) -/* 8016D878 0016A7D8 7C 08 02 A6 */ mflr r0 -/* 8016D87C 0016A7DC 90 01 00 74 */ stw r0, 0x74(r1) -/* 8016D880 0016A7E0 DB E1 00 60 */ stfd f31, 0x60(r1) -/* 8016D884 0016A7E4 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 -/* 8016D888 0016A7E8 93 E1 00 5C */ stw r31, 0x5c(r1) -/* 8016D88C 0016A7EC 93 C1 00 58 */ stw r30, 0x58(r1) -/* 8016D890 0016A7F0 93 A1 00 54 */ stw r29, 0x54(r1) -/* 8016D894 0016A7F4 93 81 00 50 */ stw r28, 0x50(r1) -/* 8016D898 0016A7F8 7C 7F 1B 78 */ mr r31, r3 -/* 8016D89C 0016A7FC 7C 9C 23 78 */ mr r28, r4 -/* 8016D8A0 0016A800 A0 03 06 98 */ lhz r0, 0x698(r3) -/* 8016D8A4 0016A804 FF E0 08 90 */ fmr f31, f1 -/* 8016D8A8 0016A808 7F 83 E3 78 */ mr r3, r28 -/* 8016D8AC 0016A80C 38 81 00 08 */ addi r4, r1, 8 -/* 8016D8B0 0016A810 B0 01 00 08 */ sth r0, 8(r1) -/* 8016D8B4 0016A814 4B ED EC C1 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8016D8B8 0016A818 7C 64 1B 78 */ mr r4, r3 -/* 8016D8BC 0016A81C 38 61 00 14 */ addi r3, r1, 0x14 -/* 8016D8C0 0016A820 4B F3 9C B5 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" -/* 8016D8C4 0016A824 80 03 00 04 */ lwz r0, 4(r3) -/* 8016D8C8 0016A828 28 00 00 00 */ cmplwi r0, 0 -/* 8016D8CC 0016A82C 41 82 01 28 */ beq lbl_8016D9F4 -/* 8016D8D0 0016A830 C0 02 A0 84 */ lfs f0, lbl_805ABDA4@sda21(r2) -/* 8016D8D4 0016A834 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8016D8D8 0016A838 83 BC 08 38 */ lwz r29, 0x838(r28) -/* 8016D8DC 0016A83C 3B C3 66 A0 */ addi r30, r3, skZero3f@l -/* 8016D8E0 0016A840 EF E0 07 F2 */ fmuls f31, f0, f31 -/* 8016D8E4 0016A844 AB 9D 20 08 */ lha r28, 0x2008(r29) -/* 8016D8E8 0016A848 48 00 01 04 */ b lbl_8016D9EC -lbl_8016D8EC: -/* 8016D8EC 0016A84C 7F A3 EB 78 */ mr r3, r29 -/* 8016D8F0 0016A850 7F 84 E3 78 */ mr r4, r28 -/* 8016D8F4 0016A854 4B EA 23 E9 */ bl __vc__11CObjectListCFi -/* 8016D8F8 0016A858 7C 64 1B 78 */ mr r4, r3 -/* 8016D8FC 0016A85C 38 61 00 0C */ addi r3, r1, 0xc -/* 8016D900 0016A860 4B F3 F1 5D */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" -/* 8016D904 0016A864 80 83 00 04 */ lwz r4, 4(r3) -/* 8016D908 0016A868 28 04 00 00 */ cmplwi r4, 0 -/* 8016D90C 0016A86C 41 82 00 C4 */ beq lbl_8016D9D0 -/* 8016D910 0016A870 7C 04 F8 40 */ cmplw r4, r31 -/* 8016D914 0016A874 41 82 00 BC */ beq lbl_8016D9D0 -/* 8016D918 0016A878 80 64 00 04 */ lwz r3, 4(r4) -/* 8016D91C 0016A87C 80 1F 00 04 */ lwz r0, 4(r31) -/* 8016D920 0016A880 7C 03 00 00 */ cmpw r3, r0 -/* 8016D924 0016A884 40 82 00 AC */ bne lbl_8016D9D0 -/* 8016D928 0016A888 C0 64 00 60 */ lfs f3, 0x60(r4) -/* 8016D92C 0016A88C FC 20 F8 90 */ fmr f1, f31 -/* 8016D930 0016A890 C0 44 00 50 */ lfs f2, 0x50(r4) -/* 8016D934 0016A894 7F E5 FB 78 */ mr r5, r31 -/* 8016D938 0016A898 C0 04 00 40 */ lfs f0, 0x40(r4) -/* 8016D93C 0016A89C 38 61 00 28 */ addi r3, r1, 0x28 -/* 8016D940 0016A8A0 38 9F 04 5C */ addi r4, r31, 0x45c -/* 8016D944 0016A8A4 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 8016D948 0016A8A8 38 C1 00 1C */ addi r6, r1, 0x1c -/* 8016D94C 0016A8AC D0 41 00 20 */ stfs f2, 0x20(r1) -/* 8016D950 0016A8B0 D0 61 00 24 */ stfs f3, 0x24(r1) -/* 8016D954 0016A8B4 4B FD 0F 9D */ bl Separation__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3ff -/* 8016D958 0016A8B8 C0 C1 00 28 */ lfs f6, 0x28(r1) -/* 8016D95C 0016A8BC 38 00 00 00 */ li r0, 0 -/* 8016D960 0016A8C0 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016D964 0016A8C4 C0 81 00 2C */ lfs f4, 0x2c(r1) -/* 8016D968 0016A8C8 FC 00 30 00 */ fcmpu cr0, f0, f6 -/* 8016D96C 0016A8CC C0 A1 00 30 */ lfs f5, 0x30(r1) -/* 8016D970 0016A8D0 40 82 00 14 */ bne lbl_8016D984 -/* 8016D974 0016A8D4 FC 00 20 00 */ fcmpu cr0, f0, f4 -/* 8016D978 0016A8D8 40 82 00 0C */ bne lbl_8016D984 -/* 8016D97C 0016A8DC FC 00 28 00 */ fcmpu cr0, f0, f5 -/* 8016D980 0016A8E0 41 82 00 08 */ beq lbl_8016D988 -lbl_8016D984: -/* 8016D984 0016A8E4 38 00 00 01 */ li r0, 1 -lbl_8016D988: -/* 8016D988 0016A8E8 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 8016D98C 0016A8EC 41 82 00 44 */ beq lbl_8016D9D0 -/* 8016D990 0016A8F0 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8016D994 0016A8F4 C0 5E 00 04 */ lfs f2, 4(r30) -/* 8016D998 0016A8F8 C0 3E 00 08 */ lfs f1, 8(r30) -/* 8016D99C 0016A8FC 38 81 00 34 */ addi r4, r1, 0x34 -/* 8016D9A0 0016A900 C0 63 66 A0 */ lfs f3, skZero3f@l(r3) -/* 8016D9A4 0016A904 C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) -/* 8016D9A8 0016A908 D0 C1 00 34 */ stfs f6, 0x34(r1) -/* 8016D9AC 0016A90C D0 81 00 38 */ stfs f4, 0x38(r1) -/* 8016D9B0 0016A910 D0 A1 00 3C */ stfs f5, 0x3c(r1) -/* 8016D9B4 0016A914 D0 61 00 40 */ stfs f3, 0x40(r1) -/* 8016D9B8 0016A918 D0 41 00 44 */ stfs f2, 0x44(r1) -/* 8016D9BC 0016A91C D0 21 00 48 */ stfs f1, 0x48(r1) -/* 8016D9C0 0016A920 D0 01 00 4C */ stfs f0, 0x4c(r1) -/* 8016D9C4 0016A924 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8016D9C8 0016A928 38 63 00 04 */ addi r3, r3, 4 -/* 8016D9CC 0016A92C 4B FC 3D 4D */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd -lbl_8016D9D0: -/* 8016D9D0 0016A930 2C 1C FF FF */ cmpwi r28, -1 -/* 8016D9D4 0016A934 41 82 00 14 */ beq lbl_8016D9E8 -/* 8016D9D8 0016A938 57 83 18 38 */ slwi r3, r28, 3 -/* 8016D9DC 0016A93C 38 03 00 08 */ addi r0, r3, 8 -/* 8016D9E0 0016A940 7F 9D 02 AE */ lhax r28, r29, r0 -/* 8016D9E4 0016A944 48 00 00 08 */ b lbl_8016D9EC -lbl_8016D9E8: -/* 8016D9E8 0016A948 3B 80 FF FF */ li r28, -1 -lbl_8016D9EC: -/* 8016D9EC 0016A94C 2C 1C FF FF */ cmpwi r28, -1 -/* 8016D9F0 0016A950 40 82 FE FC */ bne lbl_8016D8EC -lbl_8016D9F4: -/* 8016D9F4 0016A954 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 -/* 8016D9F8 0016A958 80 01 00 74 */ lwz r0, 0x74(r1) -/* 8016D9FC 0016A95C CB E1 00 60 */ lfd f31, 0x60(r1) -/* 8016DA00 0016A960 83 E1 00 5C */ lwz r31, 0x5c(r1) -/* 8016DA04 0016A964 83 C1 00 58 */ lwz r30, 0x58(r1) -/* 8016DA08 0016A968 83 A1 00 54 */ lwz r29, 0x54(r1) -/* 8016DA0C 0016A96C 83 81 00 50 */ lwz r28, 0x50(r1) -/* 8016DA10 0016A970 7C 08 03 A6 */ mtlr r0 -/* 8016DA14 0016A974 38 21 00 70 */ addi r1, r1, 0x70 -/* 8016DA18 0016A978 4E 80 00 20 */ blr - -.global sub_8016da1c -sub_8016da1c: -/* 8016DA1C 0016A97C 94 21 FF 00 */ stwu r1, -0x100(r1) -/* 8016DA20 0016A980 7C 08 02 A6 */ mflr r0 -/* 8016DA24 0016A984 38 A0 00 00 */ li r5, 0 -/* 8016DA28 0016A988 90 01 01 04 */ stw r0, 0x104(r1) -/* 8016DA2C 0016A98C 93 E1 00 FC */ stw r31, 0xfc(r1) -/* 8016DA30 0016A990 7C 9F 23 78 */ mr r31, r4 -/* 8016DA34 0016A994 93 C1 00 F8 */ stw r30, 0xf8(r1) -/* 8016DA38 0016A998 7C 7E 1B 78 */ mr r30, r3 -/* 8016DA3C 0016A99C 93 A1 00 F4 */ stw r29, 0xf4(r1) -/* 8016DA40 0016A9A0 93 81 00 F0 */ stw r28, 0xf0(r1) -/* 8016DA44 0016A9A4 88 03 09 BF */ lbz r0, 0x9bf(r3) -/* 8016DA48 0016A9A8 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c -/* 8016DA4C 0016A9AC 98 03 09 BF */ stb r0, 0x9bf(r3) -/* 8016DA50 0016A9B0 81 83 00 00 */ lwz r12, 0(r3) -/* 8016DA54 0016A9B4 81 8C 02 AC */ lwz r12, 0x2ac(r12) -/* 8016DA58 0016A9B8 7D 89 03 A6 */ mtctr r12 -/* 8016DA5C 0016A9BC 4E 80 04 21 */ bctrl -/* 8016DA60 0016A9C0 28 03 00 00 */ cmplwi r3, 0 -/* 8016DA64 0016A9C4 41 82 02 84 */ beq lbl_8016DCE8 -/* 8016DA68 0016A9C8 A0 DE 00 08 */ lhz r6, 8(r30) -/* 8016DA6C 0016A9CC 7F E3 FB 78 */ mr r3, r31 -/* 8016DA70 0016A9D0 38 81 00 18 */ addi r4, r1, 0x18 -/* 8016DA74 0016A9D4 38 A1 00 14 */ addi r5, r1, 0x14 -/* 8016DA78 0016A9D8 B0 C1 00 14 */ sth r6, 0x14(r1) -/* 8016DA7C 0016A9DC A0 1E 06 98 */ lhz r0, 0x698(r30) -/* 8016DA80 0016A9E0 B0 C1 00 10 */ sth r6, 0x10(r1) -/* 8016DA84 0016A9E4 B0 01 00 18 */ sth r0, 0x18(r1) -/* 8016DA88 0016A9E8 48 0C C6 F9 */ bl GetTeamAiRole__10CTeamAiMgrCFRC13CStateManager9TUniqueId9TUniqueId -/* 8016DA8C 0016A9EC 28 03 00 00 */ cmplwi r3, 0 -/* 8016DA90 0016A9F0 41 82 00 20 */ beq lbl_8016DAB0 -/* 8016DA94 0016A9F4 C0 03 00 1C */ lfs f0, 0x1c(r3) -/* 8016DA98 0016A9F8 D0 1E 02 E0 */ stfs f0, 0x2e0(r30) -/* 8016DA9C 0016A9FC C0 03 00 20 */ lfs f0, 0x20(r3) -/* 8016DAA0 0016AA00 D0 1E 02 E4 */ stfs f0, 0x2e4(r30) -/* 8016DAA4 0016AA04 C0 03 00 24 */ lfs f0, 0x24(r3) -/* 8016DAA8 0016AA08 D0 1E 02 E8 */ stfs f0, 0x2e8(r30) -/* 8016DAAC 0016AA0C 48 00 00 AC */ b lbl_8016DB58 -lbl_8016DAB0: -/* 8016DAB0 0016AA10 80 BF 08 4C */ lwz r5, 0x84c(r31) -/* 8016DAB4 0016AA14 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8016DAB8 0016AA18 39 03 66 A0 */ addi r8, r3, skZero3f@l -/* 8016DABC 0016AA1C 39 20 FF FF */ li r9, -1 -/* 8016DAC0 0016AA20 C0 85 00 60 */ lfs f4, 0x60(r5) -/* 8016DAC4 0016AA24 38 00 00 00 */ li r0, 0 -/* 8016DAC8 0016AA28 C0 65 00 50 */ lfs f3, 0x50(r5) -/* 8016DACC 0016AA2C 7F C4 F3 78 */ mr r4, r30 -/* 8016DAD0 0016AA30 C0 05 00 40 */ lfs f0, 0x40(r5) -/* 8016DAD4 0016AA34 7F E5 FB 78 */ mr r5, r31 -/* 8016DAD8 0016AA38 C0 48 00 00 */ lfs f2, 0(r8) -/* 8016DADC 0016AA3C 38 61 00 34 */ addi r3, r1, 0x34 -/* 8016DAE0 0016AA40 D0 01 00 28 */ stfs f0, 0x28(r1) -/* 8016DAE4 0016AA44 38 C1 00 C8 */ addi r6, r1, 0xc8 -/* 8016DAE8 0016AA48 C0 28 00 04 */ lfs f1, 4(r8) -/* 8016DAEC 0016AA4C 38 E1 00 28 */ addi r7, r1, 0x28 -/* 8016DAF0 0016AA50 D0 61 00 2C */ stfs f3, 0x2c(r1) -/* 8016DAF4 0016AA54 C0 08 00 08 */ lfs f0, 8(r8) -/* 8016DAF8 0016AA58 D0 81 00 30 */ stfs f4, 0x30(r1) -/* 8016DAFC 0016AA5C A1 1E 00 08 */ lhz r8, 8(r30) -/* 8016DB00 0016AA60 B1 01 00 C8 */ sth r8, 0xc8(r1) -/* 8016DB04 0016AA64 91 21 00 CC */ stw r9, 0xcc(r1) -/* 8016DB08 0016AA68 91 21 00 D0 */ stw r9, 0xd0(r1) -/* 8016DB0C 0016AA6C 91 21 00 D4 */ stw r9, 0xd4(r1) -/* 8016DB10 0016AA70 91 21 00 D8 */ stw r9, 0xd8(r1) -/* 8016DB14 0016AA74 91 21 00 DC */ stw r9, 0xdc(r1) -/* 8016DB18 0016AA78 90 01 00 E0 */ stw r0, 0xe0(r1) -/* 8016DB1C 0016AA7C D0 41 00 E4 */ stfs f2, 0xe4(r1) -/* 8016DB20 0016AA80 D0 21 00 E8 */ stfs f1, 0xe8(r1) -/* 8016DB24 0016AA84 D0 01 00 EC */ stfs f0, 0xec(r1) -/* 8016DB28 0016AA88 81 9E 00 00 */ lwz r12, 0(r30) -/* 8016DB2C 0016AA8C B1 01 00 08 */ sth r8, 8(r1) -/* 8016DB30 0016AA90 81 8C 00 A0 */ lwz r12, 0xa0(r12) -/* 8016DB34 0016AA94 B1 01 00 0C */ sth r8, 0xc(r1) -/* 8016DB38 0016AA98 7D 89 03 A6 */ mtctr r12 -/* 8016DB3C 0016AA9C 4E 80 04 21 */ bctrl -/* 8016DB40 0016AAA0 C0 01 00 34 */ lfs f0, 0x34(r1) -/* 8016DB44 0016AAA4 D0 1E 02 E0 */ stfs f0, 0x2e0(r30) -/* 8016DB48 0016AAA8 C0 01 00 38 */ lfs f0, 0x38(r1) -/* 8016DB4C 0016AAAC D0 1E 02 E4 */ stfs f0, 0x2e4(r30) -/* 8016DB50 0016AAB0 C0 01 00 3C */ lfs f0, 0x3c(r1) -/* 8016DB54 0016AAB4 D0 1E 02 E8 */ stfs f0, 0x2e8(r30) -lbl_8016DB58: -/* 8016DB58 0016AAB8 7F C4 F3 78 */ mr r4, r30 -/* 8016DB5C 0016AABC 7F E5 FB 78 */ mr r5, r31 -/* 8016DB60 0016AAC0 38 61 00 1C */ addi r3, r1, 0x1c -/* 8016DB64 0016AAC4 48 00 04 59 */ bl sub_8016dfbc -/* 8016DB68 0016AAC8 C0 A1 00 1C */ lfs f5, 0x1c(r1) -/* 8016DB6C 0016AACC 38 61 00 4C */ addi r3, r1, 0x4c -/* 8016DB70 0016AAD0 C0 81 00 20 */ lfs f4, 0x20(r1) -/* 8016DB74 0016AAD4 C0 61 00 24 */ lfs f3, 0x24(r1) -/* 8016DB78 0016AAD8 D0 A1 00 58 */ stfs f5, 0x58(r1) -/* 8016DB7C 0016AADC D0 81 00 5C */ stfs f4, 0x5c(r1) -/* 8016DB80 0016AAE0 D0 61 00 60 */ stfs f3, 0x60(r1) -/* 8016DB84 0016AAE4 C0 5E 02 E4 */ lfs f2, 0x2e4(r30) -/* 8016DB88 0016AAE8 C0 3E 02 E8 */ lfs f1, 0x2e8(r30) -/* 8016DB8C 0016AAEC C0 1E 02 E0 */ lfs f0, 0x2e0(r30) -/* 8016DB90 0016AAF0 EC 42 20 28 */ fsubs f2, f2, f4 -/* 8016DB94 0016AAF4 EC 21 18 28 */ fsubs f1, f1, f3 -/* 8016DB98 0016AAF8 EC 00 28 28 */ fsubs f0, f0, f5 -/* 8016DB9C 0016AAFC D0 41 00 50 */ stfs f2, 0x50(r1) -/* 8016DBA0 0016AB00 D0 01 00 4C */ stfs f0, 0x4c(r1) -/* 8016DBA4 0016AB04 D0 21 00 54 */ stfs f1, 0x54(r1) -/* 8016DBA8 0016AB08 48 1A 6B 51 */ bl CanBeNormalized__9CVector3fCFv -/* 8016DBAC 0016AB0C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016DBB0 0016AB10 41 82 01 0C */ beq lbl_8016DCBC -/* 8016DBB4 0016AB14 80 AD 8D D4 */ lwz r5, lbl_805A7994@sda21(r13) -/* 8016DBB8 0016AB18 38 60 00 00 */ li r3, 0 -/* 8016DBBC 0016AB1C 38 80 00 01 */ li r4, 1 -/* 8016DBC0 0016AB20 48 21 C3 35 */ bl __shl2i -/* 8016DBC4 0016AB24 80 AD 8D D8 */ lwz r5, lbl_805A7998@sda21(r13) -/* 8016DBC8 0016AB28 7C 9C 23 78 */ mr r28, r4 -/* 8016DBCC 0016AB2C 7C 7D 1B 78 */ mr r29, r3 -/* 8016DBD0 0016AB30 38 60 00 00 */ li r3, 0 -/* 8016DBD4 0016AB34 38 80 00 01 */ li r4, 1 -/* 8016DBD8 0016AB38 48 21 C3 1D */ bl __shl2i -/* 8016DBDC 0016AB3C 7F BD 1B 78 */ or r29, r29, r3 -/* 8016DBE0 0016AB40 38 A0 00 01 */ li r5, 1 -/* 8016DBE4 0016AB44 38 00 00 00 */ li r0, 0 -/* 8016DBE8 0016AB48 7F 9C 23 78 */ or r28, r28, r4 -/* 8016DBEC 0016AB4C 90 A1 00 78 */ stw r5, 0x78(r1) -/* 8016DBF0 0016AB50 38 61 00 4C */ addi r3, r1, 0x4c -/* 8016DBF4 0016AB54 93 81 00 84 */ stw r28, 0x84(r1) -/* 8016DBF8 0016AB58 93 A1 00 80 */ stw r29, 0x80(r1) -/* 8016DBFC 0016AB5C 90 01 00 8C */ stw r0, 0x8c(r1) -/* 8016DC00 0016AB60 90 01 00 88 */ stw r0, 0x88(r1) -/* 8016DC04 0016AB64 90 A1 00 90 */ stw r5, 0x90(r1) -/* 8016DC08 0016AB68 48 1A 6C B1 */ bl Magnitude__9CVector3fCFv -/* 8016DC0C 0016AB6C C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) -/* 8016DC10 0016AB70 7F E4 FB 78 */ mr r4, r31 -/* 8016DC14 0016AB74 C0 61 00 4C */ lfs f3, 0x4c(r1) -/* 8016DC18 0016AB78 38 61 00 98 */ addi r3, r1, 0x98 -/* 8016DC1C 0016AB7C EC 80 08 24 */ fdivs f4, f0, f1 -/* 8016DC20 0016AB80 C0 41 00 50 */ lfs f2, 0x50(r1) -/* 8016DC24 0016AB84 C0 01 00 54 */ lfs f0, 0x54(r1) -/* 8016DC28 0016AB88 38 A1 00 58 */ addi r5, r1, 0x58 -/* 8016DC2C 0016AB8C 38 C1 00 40 */ addi r6, r1, 0x40 -/* 8016DC30 0016AB90 38 E1 00 80 */ addi r7, r1, 0x80 -/* 8016DC34 0016AB94 EC 64 00 F2 */ fmuls f3, f4, f3 -/* 8016DC38 0016AB98 EC 44 00 B2 */ fmuls f2, f4, f2 -/* 8016DC3C 0016AB9C EC 04 00 32 */ fmuls f0, f4, f0 -/* 8016DC40 0016ABA0 D0 61 00 40 */ stfs f3, 0x40(r1) -/* 8016DC44 0016ABA4 D0 41 00 44 */ stfs f2, 0x44(r1) -/* 8016DC48 0016ABA8 D0 01 00 48 */ stfs f0, 0x48(r1) -/* 8016DC4C 0016ABAC 4B ED F3 4D */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter -/* 8016DC50 0016ABB0 88 01 00 B8 */ lbz r0, 0xb8(r1) -/* 8016DC54 0016ABB4 C0 81 00 98 */ lfs f4, 0x98(r1) -/* 8016DC58 0016ABB8 28 00 00 00 */ cmplwi r0, 0 -/* 8016DC5C 0016ABBC 41 82 00 60 */ beq lbl_8016DCBC -/* 8016DC60 0016ABC0 C0 01 00 40 */ lfs f0, 0x40(r1) -/* 8016DC64 0016ABC4 38 60 00 01 */ li r3, 1 -/* 8016DC68 0016ABC8 C0 21 00 44 */ lfs f1, 0x44(r1) -/* 8016DC6C 0016ABCC EC 04 00 32 */ fmuls f0, f4, f0 -/* 8016DC70 0016ABD0 C0 A2 A0 88 */ lfs f5, lbl_805ABDA8@sda21(r2) -/* 8016DC74 0016ABD4 EC 64 00 72 */ fmuls f3, f4, f1 -/* 8016DC78 0016ABD8 C0 41 00 48 */ lfs f2, 0x48(r1) -/* 8016DC7C 0016ABDC C0 21 00 58 */ lfs f1, 0x58(r1) -/* 8016DC80 0016ABE0 EC 05 00 32 */ fmuls f0, f5, f0 -/* 8016DC84 0016ABE4 EC 44 00 B2 */ fmuls f2, f4, f2 -/* 8016DC88 0016ABE8 C0 C1 00 5C */ lfs f6, 0x5c(r1) -/* 8016DC8C 0016ABEC EC 85 00 F2 */ fmuls f4, f5, f3 -/* 8016DC90 0016ABF0 C0 61 00 60 */ lfs f3, 0x60(r1) -/* 8016DC94 0016ABF4 EC 01 00 2A */ fadds f0, f1, f0 -/* 8016DC98 0016ABF8 EC 25 00 B2 */ fmuls f1, f5, f2 -/* 8016DC9C 0016ABFC EC 46 20 2A */ fadds f2, f6, f4 -/* 8016DCA0 0016AC00 D0 1E 02 E0 */ stfs f0, 0x2e0(r30) -/* 8016DCA4 0016AC04 EC 03 08 2A */ fadds f0, f3, f1 -/* 8016DCA8 0016AC08 D0 5E 02 E4 */ stfs f2, 0x2e4(r30) -/* 8016DCAC 0016AC0C D0 1E 02 E8 */ stfs f0, 0x2e8(r30) -/* 8016DCB0 0016AC10 88 1E 09 BF */ lbz r0, 0x9bf(r30) -/* 8016DCB4 0016AC14 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 8016DCB8 0016AC18 98 1E 09 BF */ stb r0, 0x9bf(r30) -lbl_8016DCBC: -/* 8016DCBC 0016AC1C C0 1E 02 E0 */ lfs f0, 0x2e0(r30) -/* 8016DCC0 0016AC20 7F C3 F3 78 */ mr r3, r30 -/* 8016DCC4 0016AC24 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) -/* 8016DCC8 0016AC28 7F E4 FB 78 */ mr r4, r31 -/* 8016DCCC 0016AC2C D0 1E 07 A4 */ stfs f0, 0x7a4(r30) -/* 8016DCD0 0016AC30 38 A0 00 00 */ li r5, 0 -/* 8016DCD4 0016AC34 C0 1E 02 E4 */ lfs f0, 0x2e4(r30) -/* 8016DCD8 0016AC38 D0 1E 07 A8 */ stfs f0, 0x7a8(r30) -/* 8016DCDC 0016AC3C C0 1E 02 E8 */ lfs f0, 0x2e8(r30) -/* 8016DCE0 0016AC40 D0 1E 07 AC */ stfs f0, 0x7ac(r30) -/* 8016DCE4 0016AC44 48 08 89 E9 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf -lbl_8016DCE8: -/* 8016DCE8 0016AC48 80 01 01 04 */ lwz r0, 0x104(r1) -/* 8016DCEC 0016AC4C 83 E1 00 FC */ lwz r31, 0xfc(r1) -/* 8016DCF0 0016AC50 83 C1 00 F8 */ lwz r30, 0xf8(r1) -/* 8016DCF4 0016AC54 83 A1 00 F4 */ lwz r29, 0xf4(r1) -/* 8016DCF8 0016AC58 83 81 00 F0 */ lwz r28, 0xf0(r1) -/* 8016DCFC 0016AC5C 7C 08 03 A6 */ mtlr r0 -/* 8016DD00 0016AC60 38 21 01 00 */ addi r1, r1, 0x100 -/* 8016DD04 0016AC64 4E 80 00 20 */ blr - -.global sub_8016dd08 -sub_8016dd08: -/* 8016DD08 0016AC68 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8016DD0C 0016AC6C 7C 08 02 A6 */ mflr r0 -/* 8016DD10 0016AC70 90 01 00 34 */ stw r0, 0x34(r1) -/* 8016DD14 0016AC74 DB E1 00 20 */ stfd f31, 0x20(r1) -/* 8016DD18 0016AC78 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 -/* 8016DD1C 0016AC7C 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8016DD20 0016AC80 7C 7F 1B 78 */ mr r31, r3 -/* 8016DD24 0016AC84 38 81 00 08 */ addi r4, r1, 8 -/* 8016DD28 0016AC88 C0 03 07 F8 */ lfs f0, 0x7f8(r3) -/* 8016DD2C 0016AC8C 38 6D 8D CC */ addi r3, r13, lbl_805A798C@sda21 -/* 8016DD30 0016AC90 38 AD 8D D0 */ addi r5, r13, lbl_805A7990@sda21 -/* 8016DD34 0016AC94 EC 00 08 2A */ fadds f0, f0, f1 -/* 8016DD38 0016AC98 D0 1F 07 F8 */ stfs f0, 0x7f8(r31) -/* 8016DD3C 0016AC9C C0 3F 07 F8 */ lfs f1, 0x7f8(r31) -/* 8016DD40 0016ACA0 C0 1F 06 4C */ lfs f0, 0x64c(r31) -/* 8016DD44 0016ACA4 C0 5F 06 48 */ lfs f2, 0x648(r31) -/* 8016DD48 0016ACA8 EC 01 00 24 */ fdivs f0, f1, f0 -/* 8016DD4C 0016ACAC C0 3F 07 EC */ lfs f1, 0x7ec(r31) -/* 8016DD50 0016ACB0 EF E2 08 28 */ fsubs f31, f2, f1 -/* 8016DD54 0016ACB4 D0 01 00 08 */ stfs f0, 8(r1) -/* 8016DD58 0016ACB8 4B E9 E5 5D */ bl "Clamp__5CMathFRCfRCfRCf" -/* 8016DD5C 0016ACBC C0 43 00 00 */ lfs f2, 0(r3) -/* 8016DD60 0016ACC0 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8016DD64 0016ACC4 C0 1F 07 EC */ lfs f0, 0x7ec(r31) -/* 8016DD68 0016ACC8 38 83 66 A0 */ addi r4, r3, skZero3f@l -/* 8016DD6C 0016ACCC 7F E3 FB 78 */ mr r3, r31 -/* 8016DD70 0016ACD0 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) -/* 8016DD74 0016ACD4 EC 02 07 FA */ fmadds f0, f2, f31, f0 -/* 8016DD78 0016ACD8 D0 1F 07 D0 */ stfs f0, 0x7d0(r31) -/* 8016DD7C 0016ACDC D0 1F 07 D4 */ stfs f0, 0x7d4(r31) -/* 8016DD80 0016ACE0 D0 1F 07 D8 */ stfs f0, 0x7d8(r31) -/* 8016DD84 0016ACE4 81 9F 00 00 */ lwz r12, 0(r31) -/* 8016DD88 0016ACE8 81 8C 00 90 */ lwz r12, 0x90(r12) -/* 8016DD8C 0016ACEC 7D 89 03 A6 */ mtctr r12 -/* 8016DD90 0016ACF0 4E 80 04 21 */ bctrl -/* 8016DD94 0016ACF4 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 -/* 8016DD98 0016ACF8 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8016DD9C 0016ACFC CB E1 00 20 */ lfd f31, 0x20(r1) -/* 8016DDA0 0016AD00 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8016DDA4 0016AD04 7C 08 03 A6 */ mtlr r0 -/* 8016DDA8 0016AD08 38 21 00 30 */ addi r1, r1, 0x30 -/* 8016DDAC 0016AD0C 4E 80 00 20 */ blr - -.global sub_8016ddb0 -sub_8016ddb0: -/* 8016DDB0 0016AD10 94 21 FF 80 */ stwu r1, -0x80(r1) -/* 8016DDB4 0016AD14 7C 08 02 A6 */ mflr r0 -/* 8016DDB8 0016AD18 90 01 00 84 */ stw r0, 0x84(r1) -/* 8016DDBC 0016AD1C 93 E1 00 7C */ stw r31, 0x7c(r1) -/* 8016DDC0 0016AD20 7C 9F 23 78 */ mr r31, r4 -/* 8016DDC4 0016AD24 93 C1 00 78 */ stw r30, 0x78(r1) -/* 8016DDC8 0016AD28 7C 7E 1B 78 */ mr r30, r3 -/* 8016DDCC 0016AD2C 93 A1 00 74 */ stw r29, 0x74(r1) -/* 8016DDD0 0016AD30 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016DDD4 0016AD34 A0 63 07 B0 */ lhz r3, 0x7b0(r3) -/* 8016DDD8 0016AD38 7C 03 00 40 */ cmplw r3, r0 -/* 8016DDDC 0016AD3C 41 82 01 44 */ beq lbl_8016DF20 -/* 8016DDE0 0016AD40 A0 1E 07 B0 */ lhz r0, 0x7b0(r30) -/* 8016DDE4 0016AD44 7F E3 FB 78 */ mr r3, r31 -/* 8016DDE8 0016AD48 38 81 00 24 */ addi r4, r1, 0x24 -/* 8016DDEC 0016AD4C B0 01 00 24 */ sth r0, 0x24(r1) -/* 8016DDF0 0016AD50 4B ED E7 85 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8016DDF4 0016AD54 7C 64 1B 78 */ mr r4, r3 -/* 8016DDF8 0016AD58 38 61 00 28 */ addi r3, r1, 0x28 -/* 8016DDFC 0016AD5C 4B F3 75 D5 */ bl sub_800a53d0 -/* 8016DE00 0016AD60 4B F3 75 A5 */ bl "CastTo<12CSpacePirate>__10CPatternedFP7CEntity" -/* 8016DE04 0016AD64 7C 7D 1B 79 */ or. r29, r3, r3 -/* 8016DE08 0016AD68 41 82 01 18 */ beq lbl_8016DF20 -/* 8016DE0C 0016AD6C 7F C3 F3 78 */ mr r3, r30 -/* 8016DE10 0016AD70 7F A4 EB 78 */ mr r4, r29 -/* 8016DE14 0016AD74 7F E5 FB 78 */ mr r5, r31 -/* 8016DE18 0016AD78 48 00 03 61 */ bl sub_8016e178 -/* 8016DE1C 0016AD7C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016DE20 0016AD80 41 82 01 00 */ beq lbl_8016DF20 -/* 8016DE24 0016AD84 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8016DE28 0016AD88 7F A3 EB 78 */ mr r3, r29 -/* 8016DE2C 0016AD8C 38 81 00 20 */ addi r4, r1, 0x20 -/* 8016DE30 0016AD90 B0 01 00 1C */ sth r0, 0x1c(r1) -/* 8016DE34 0016AD94 B0 01 00 20 */ sth r0, 0x20(r1) -/* 8016DE38 0016AD98 4B FB B9 E1 */ bl AttachActorToPirate__12CSpacePirateF9TUniqueId -/* 8016DE3C 0016AD9C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016DE40 0016ADA0 41 82 00 E0 */ beq lbl_8016DF20 -/* 8016DE44 0016ADA4 38 E0 00 00 */ li r7, 0 -/* 8016DE48 0016ADA8 88 61 00 30 */ lbz r3, 0x30(r1) -/* 8016DE4C 0016ADAC 50 E3 3E 30 */ rlwimi r3, r7, 7, 0x18, 0x18 -/* 8016DE50 0016ADB0 C0 3D 03 D8 */ lfs f1, 0x3d8(r29) -/* 8016DE54 0016ADB4 C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) -/* 8016DE58 0016ADB8 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 8016DE5C 0016ADBC 98 61 00 30 */ stb r3, 0x30(r1) -/* 8016DE60 0016ADC0 50 E0 36 72 */ rlwimi r0, r7, 6, 0x19, 0x19 -/* 8016DE64 0016ADC4 EC 21 00 28 */ fsubs f1, f1, f0 -/* 8016DE68 0016ADC8 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016DE6C 0016ADCC 54 06 06 3E */ clrlwi r6, r0, 0x18 -/* 8016DE70 0016ADD0 98 01 00 30 */ stb r0, 0x30(r1) -/* 8016DE74 0016ADD4 50 E6 2E B4 */ rlwimi r6, r7, 5, 0x1a, 0x1a -/* 8016DE78 0016ADD8 88 01 00 68 */ lbz r0, 0x68(r1) -/* 8016DE7C 0016ADDC 38 60 00 01 */ li r3, 1 -/* 8016DE80 0016ADE0 80 AD 8D 98 */ lwz r5, lbl_805A7958@sda21(r13) -/* 8016DE84 0016ADE4 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 8016DE88 0016ADE8 90 E1 00 2C */ stw r7, 0x2c(r1) -/* 8016DE8C 0016ADEC 38 60 00 00 */ li r3, 0 -/* 8016DE90 0016ADF0 38 80 00 01 */ li r4, 1 -/* 8016DE94 0016ADF4 98 C1 00 30 */ stb r6, 0x30(r1) -/* 8016DE98 0016ADF8 90 E1 00 50 */ stw r7, 0x50(r1) -/* 8016DE9C 0016ADFC 98 C1 00 54 */ stb r6, 0x54(r1) -/* 8016DEA0 0016AE00 D0 21 00 58 */ stfs f1, 0x58(r1) -/* 8016DEA4 0016AE04 D0 21 00 5C */ stfs f1, 0x5c(r1) -/* 8016DEA8 0016AE08 D0 01 00 60 */ stfs f0, 0x60(r1) -/* 8016DEAC 0016AE0C D0 01 00 64 */ stfs f0, 0x64(r1) -/* 8016DEB0 0016AE10 98 01 00 68 */ stb r0, 0x68(r1) -/* 8016DEB4 0016AE14 48 21 C0 41 */ bl __shl2i -/* 8016DEB8 0016AE18 39 40 00 00 */ li r10, 0 -/* 8016DEBC 0016AE1C 38 00 00 03 */ li r0, 3 -/* 8016DEC0 0016AE20 90 81 00 3C */ stw r4, 0x3c(r1) -/* 8016DEC4 0016AE24 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8016DEC8 0016AE28 39 24 66 A0 */ addi r9, r4, skZero3f@l -/* 8016DECC 0016AE2C 38 A1 00 10 */ addi r5, r1, 0x10 -/* 8016DED0 0016AE30 90 61 00 38 */ stw r3, 0x38(r1) -/* 8016DED4 0016AE34 38 81 00 18 */ addi r4, r1, 0x18 -/* 8016DED8 0016AE38 7F E3 FB 78 */ mr r3, r31 -/* 8016DEDC 0016AE3C 38 C1 00 0C */ addi r6, r1, 0xc -/* 8016DEE0 0016AE40 91 41 00 44 */ stw r10, 0x44(r1) -/* 8016DEE4 0016AE44 38 E1 00 50 */ addi r7, r1, 0x50 -/* 8016DEE8 0016AE48 39 01 00 38 */ addi r8, r1, 0x38 -/* 8016DEEC 0016AE4C 91 41 00 40 */ stw r10, 0x40(r1) -/* 8016DEF0 0016AE50 90 01 00 48 */ stw r0, 0x48(r1) -/* 8016DEF4 0016AE54 A1 5E 00 08 */ lhz r10, 8(r30) -/* 8016DEF8 0016AE58 B1 41 00 0C */ sth r10, 0xc(r1) -/* 8016DEFC 0016AE5C A0 1E 07 B0 */ lhz r0, 0x7b0(r30) -/* 8016DF00 0016AE60 B1 41 00 08 */ sth r10, 8(r1) -/* 8016DF04 0016AE64 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8016DF08 0016AE68 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8016DF0C 0016AE6C B0 01 00 14 */ sth r0, 0x14(r1) -/* 8016DF10 0016AE70 B0 01 00 18 */ sth r0, 0x18(r1) -/* 8016DF14 0016AE74 4B ED C1 8D */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f -/* 8016DF18 0016AE78 38 60 00 01 */ li r3, 1 -/* 8016DF1C 0016AE7C 48 00 00 08 */ b lbl_8016DF24 -lbl_8016DF20: -/* 8016DF20 0016AE80 38 60 00 00 */ li r3, 0 -lbl_8016DF24: -/* 8016DF24 0016AE84 80 01 00 84 */ lwz r0, 0x84(r1) -/* 8016DF28 0016AE88 83 E1 00 7C */ lwz r31, 0x7c(r1) -/* 8016DF2C 0016AE8C 83 C1 00 78 */ lwz r30, 0x78(r1) -/* 8016DF30 0016AE90 83 A1 00 74 */ lwz r29, 0x74(r1) -/* 8016DF34 0016AE94 7C 08 03 A6 */ mtlr r0 -/* 8016DF38 0016AE98 38 21 00 80 */ addi r1, r1, 0x80 -/* 8016DF3C 0016AE9C 4E 80 00 20 */ blr - -.global sub_8016df40 -sub_8016df40: -/* 8016DF40 0016AEA0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8016DF44 0016AEA4 7C 08 02 A6 */ mflr r0 -/* 8016DF48 0016AEA8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8016DF4C 0016AEAC 48 00 00 25 */ bl sub_8016df70 -/* 8016DF50 0016AEB0 C0 42 A0 98 */ lfs f2, lbl_805ABDB8@sda21(r2) -/* 8016DF54 0016AEB4 C0 02 A0 88 */ lfs f0, lbl_805ABDA8@sda21(r2) -/* 8016DF58 0016AEB8 EC 21 10 28 */ fsubs f1, f1, f2 -/* 8016DF5C 0016AEBC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8016DF60 0016AEC0 EC 20 10 7A */ fmadds f1, f0, f1, f2 -/* 8016DF64 0016AEC4 7C 08 03 A6 */ mtlr r0 -/* 8016DF68 0016AEC8 38 21 00 10 */ addi r1, r1, 0x10 -/* 8016DF6C 0016AECC 4E 80 00 20 */ blr - -.global sub_8016df70 -sub_8016df70: -/* 8016DF70 0016AED0 C0 23 07 F8 */ lfs f1, 0x7f8(r3) -/* 8016DF74 0016AED4 C0 03 06 4C */ lfs f0, 0x64c(r3) -/* 8016DF78 0016AED8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8016DF7C 0016AEDC 40 80 00 14 */ bge lbl_8016DF90 -/* 8016DF80 0016AEE0 EC 01 00 24 */ fdivs f0, f1, f0 -/* 8016DF84 0016AEE4 C0 22 A0 98 */ lfs f1, lbl_805ABDB8@sda21(r2) -/* 8016DF88 0016AEE8 EC 21 00 2A */ fadds f1, f1, f0 -/* 8016DF8C 0016AEEC 4E 80 00 20 */ blr -lbl_8016DF90: -/* 8016DF90 0016AEF0 C0 63 06 50 */ lfs f3, 0x650(r3) -/* 8016DF94 0016AEF4 FC 01 18 40 */ fcmpo cr0, f1, f3 -/* 8016DF98 0016AEF8 40 80 00 1C */ bge lbl_8016DFB4 -/* 8016DF9C 0016AEFC EC 21 00 28 */ fsubs f1, f1, f0 -/* 8016DFA0 0016AF00 C0 42 A0 84 */ lfs f2, lbl_805ABDA4@sda21(r2) -/* 8016DFA4 0016AF04 EC 03 00 28 */ fsubs f0, f3, f0 -/* 8016DFA8 0016AF08 EC 01 00 24 */ fdivs f0, f1, f0 -/* 8016DFAC 0016AF0C EC 22 00 2A */ fadds f1, f2, f0 -/* 8016DFB0 0016AF10 4E 80 00 20 */ blr -lbl_8016DFB4: -/* 8016DFB4 0016AF14 C0 22 A0 D8 */ lfs f1, lbl_805ABDF8@sda21(r2) -/* 8016DFB8 0016AF18 4E 80 00 20 */ blr - -.global sub_8016dfbc -sub_8016dfbc: -/* 8016DFBC 0016AF1C 94 21 FE F0 */ stwu r1, -0x110(r1) -/* 8016DFC0 0016AF20 7C 08 02 A6 */ mflr r0 -/* 8016DFC4 0016AF24 90 01 01 14 */ stw r0, 0x114(r1) -/* 8016DFC8 0016AF28 DB E1 01 00 */ stfd f31, 0x100(r1) -/* 8016DFCC 0016AF2C F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 -/* 8016DFD0 0016AF30 DB C1 00 F0 */ stfd f30, 0xf0(r1) -/* 8016DFD4 0016AF34 F3 C1 00 F8 */ psq_st f30, 248(r1), 0, qr0 -/* 8016DFD8 0016AF38 DB A1 00 E0 */ stfd f29, 0xe0(r1) -/* 8016DFDC 0016AF3C F3 A1 00 E8 */ psq_st f29, 232(r1), 0, qr0 -/* 8016DFE0 0016AF40 93 E1 00 DC */ stw r31, 0xdc(r1) -/* 8016DFE4 0016AF44 93 C1 00 D8 */ stw r30, 0xd8(r1) -/* 8016DFE8 0016AF48 93 A1 00 D4 */ stw r29, 0xd4(r1) -/* 8016DFEC 0016AF4C A0 C4 07 B0 */ lhz r6, 0x7b0(r4) -/* 8016DFF0 0016AF50 7C 7D 1B 78 */ mr r29, r3 -/* 8016DFF4 0016AF54 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016DFF8 0016AF58 7C BE 2B 78 */ mr r30, r5 -/* 8016DFFC 0016AF5C 7C 06 00 40 */ cmplw r6, r0 -/* 8016E000 0016AF60 41 82 01 24 */ beq lbl_8016E124 -/* 8016E004 0016AF64 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 8016E008 0016AF68 A0 03 00 08 */ lhz r0, 8(r3) -/* 8016E00C 0016AF6C 7C 06 00 40 */ cmplw r6, r0 -/* 8016E010 0016AF70 41 82 00 B4 */ beq lbl_8016E0C4 -/* 8016E014 0016AF74 B0 C1 00 08 */ sth r6, 8(r1) -/* 8016E018 0016AF78 7F C3 F3 78 */ mr r3, r30 -/* 8016E01C 0016AF7C 38 81 00 0C */ addi r4, r1, 0xc -/* 8016E020 0016AF80 B0 C1 00 0C */ sth r6, 0xc(r1) -/* 8016E024 0016AF84 4B ED E5 81 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8016E028 0016AF88 7C 64 1B 78 */ mr r4, r3 -/* 8016E02C 0016AF8C 38 61 00 10 */ addi r3, r1, 0x10 -/* 8016E030 0016AF90 4B F4 1C 61 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8016E034 0016AF94 83 E3 00 04 */ lwz r31, 4(r3) -/* 8016E038 0016AF98 28 1F 00 00 */ cmplwi r31, 0 -/* 8016E03C 0016AF9C 41 82 00 E8 */ beq lbl_8016E124 -/* 8016E040 0016AFA0 80 82 A0 78 */ lwz r4, lbl_805ABD98@sda21(r2) -/* 8016E044 0016AFA4 38 61 00 24 */ addi r3, r1, 0x24 -/* 8016E048 0016AFA8 4B E9 6C 71 */ bl string_l__4rstlFPCc -/* 8016E04C 0016AFAC 7F E4 FB 78 */ mr r4, r31 -/* 8016E050 0016AFB0 38 61 00 64 */ addi r3, r1, 0x64 -/* 8016E054 0016AFB4 38 A1 00 24 */ addi r5, r1, 0x24 -/* 8016E058 0016AFB8 4B EE 4E A9 */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8016E05C 0016AFBC 38 61 00 94 */ addi r3, r1, 0x94 -/* 8016E060 0016AFC0 38 81 00 64 */ addi r4, r1, 0x64 -/* 8016E064 0016AFC4 48 1A 4B 11 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8016E068 0016AFC8 38 61 00 24 */ addi r3, r1, 0x24 -/* 8016E06C 0016AFCC 48 1C FA 75 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 8016E070 0016AFD0 80 7F 00 64 */ lwz r3, 0x64(r31) -/* 8016E074 0016AFD4 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) -/* 8016E078 0016AFD8 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 8016E07C 0016AFDC C0 63 00 08 */ lfs f3, 8(r3) -/* 8016E080 0016AFE0 C0 5F 00 50 */ lfs f2, 0x50(r31) -/* 8016E084 0016AFE4 EC 00 08 2A */ fadds f0, f0, f1 -/* 8016E088 0016AFE8 C0 A3 00 00 */ lfs f5, 0(r3) -/* 8016E08C 0016AFEC C0 83 00 04 */ lfs f4, 4(r3) -/* 8016E090 0016AFF0 EC C2 08 2A */ fadds f6, f2, f1 -/* 8016E094 0016AFF4 C0 E1 00 C0 */ lfs f7, 0xc0(r1) -/* 8016E098 0016AFF8 C0 22 A0 A0 */ lfs f1, lbl_805ABDC0@sda21(r2) -/* 8016E09C 0016AFFC C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 8016E0A0 0016B000 EC 27 08 FA */ fmadds f1, f7, f3, f1 -/* 8016E0A4 0016B004 D0 A1 00 18 */ stfs f5, 0x18(r1) -/* 8016E0A8 0016B008 D0 1D 00 00 */ stfs f0, 0(r29) -/* 8016E0AC 0016B00C EC 02 08 2A */ fadds f0, f2, f1 -/* 8016E0B0 0016B010 D0 DD 00 04 */ stfs f6, 4(r29) -/* 8016E0B4 0016B014 D0 81 00 1C */ stfs f4, 0x1c(r1) -/* 8016E0B8 0016B018 D0 61 00 20 */ stfs f3, 0x20(r1) -/* 8016E0BC 0016B01C D0 1D 00 08 */ stfs f0, 8(r29) -/* 8016E0C0 0016B020 48 00 00 84 */ b lbl_8016E144 -lbl_8016E0C4: -/* 8016E0C4 0016B024 80 03 02 F8 */ lwz r0, 0x2f8(r3) -/* 8016E0C8 0016B028 C3 E3 00 40 */ lfs f31, 0x40(r3) -/* 8016E0CC 0016B02C 2C 00 00 01 */ cmpwi r0, 1 -/* 8016E0D0 0016B030 C3 C3 00 50 */ lfs f30, 0x50(r3) -/* 8016E0D4 0016B034 C3 A3 00 60 */ lfs f29, 0x60(r3) -/* 8016E0D8 0016B038 41 82 00 24 */ beq lbl_8016E0FC -/* 8016E0DC 0016B03C 48 11 6D 05 */ bl GetEyeHeight__7CPlayerCFv -/* 8016E0E0 0016B040 C0 42 A0 9C */ lfs f2, lbl_805ABDBC@sda21(r2) -/* 8016E0E4 0016B044 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016E0E8 0016B048 EC 22 08 2A */ fadds f1, f2, f1 -/* 8016E0EC 0016B04C EF FF 00 2A */ fadds f31, f31, f0 -/* 8016E0F0 0016B050 EF DE 00 2A */ fadds f30, f30, f0 -/* 8016E0F4 0016B054 EF BD 08 2A */ fadds f29, f29, f1 -/* 8016E0F8 0016B058 48 00 00 1C */ b lbl_8016E114 -lbl_8016E0FC: -/* 8016E0FC 0016B05C 80 83 07 68 */ lwz r4, 0x768(r3) -/* 8016E100 0016B060 38 61 00 34 */ addi r3, r1, 0x34 -/* 8016E104 0016B064 4B F8 85 F1 */ bl GetBallToWorld__10CMorphBallCFv -/* 8016E108 0016B068 C3 E1 00 40 */ lfs f31, 0x40(r1) -/* 8016E10C 0016B06C C3 C1 00 50 */ lfs f30, 0x50(r1) -/* 8016E110 0016B070 C3 A1 00 60 */ lfs f29, 0x60(r1) -lbl_8016E114: -/* 8016E114 0016B074 D3 FD 00 00 */ stfs f31, 0(r29) -/* 8016E118 0016B078 D3 DD 00 04 */ stfs f30, 4(r29) -/* 8016E11C 0016B07C D3 BD 00 08 */ stfs f29, 8(r29) -/* 8016E120 0016B080 48 00 00 24 */ b lbl_8016E144 -lbl_8016E124: -/* 8016E124 0016B084 80 9E 08 4C */ lwz r4, 0x84c(r30) -/* 8016E128 0016B088 7F A3 EB 78 */ mr r3, r29 -/* 8016E12C 0016B08C 7F C5 F3 78 */ mr r5, r30 -/* 8016E130 0016B090 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) -/* 8016E134 0016B094 81 84 00 00 */ lwz r12, 0(r4) -/* 8016E138 0016B098 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 8016E13C 0016B09C 7D 89 03 A6 */ mtctr r12 -/* 8016E140 0016B0A0 4E 80 04 21 */ bctrl -lbl_8016E144: -/* 8016E144 0016B0A4 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 -/* 8016E148 0016B0A8 CB E1 01 00 */ lfd f31, 0x100(r1) -/* 8016E14C 0016B0AC E3 C1 00 F8 */ psq_l f30, 248(r1), 0, qr0 -/* 8016E150 0016B0B0 CB C1 00 F0 */ lfd f30, 0xf0(r1) -/* 8016E154 0016B0B4 E3 A1 00 E8 */ psq_l f29, 232(r1), 0, qr0 -/* 8016E158 0016B0B8 CB A1 00 E0 */ lfd f29, 0xe0(r1) -/* 8016E15C 0016B0BC 83 E1 00 DC */ lwz r31, 0xdc(r1) -/* 8016E160 0016B0C0 83 C1 00 D8 */ lwz r30, 0xd8(r1) -/* 8016E164 0016B0C4 80 01 01 14 */ lwz r0, 0x114(r1) -/* 8016E168 0016B0C8 83 A1 00 D4 */ lwz r29, 0xd4(r1) -/* 8016E16C 0016B0CC 7C 08 03 A6 */ mtlr r0 -/* 8016E170 0016B0D0 38 21 01 10 */ addi r1, r1, 0x110 -/* 8016E174 0016B0D4 4E 80 00 20 */ blr - -.global sub_8016e178 -sub_8016e178: -/* 8016E178 0016B0D8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8016E17C 0016B0DC 7C 08 02 A6 */ mflr r0 -/* 8016E180 0016B0E0 90 01 00 14 */ stw r0, 0x14(r1) -/* 8016E184 0016B0E4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016E188 0016B0E8 A0 64 07 B4 */ lhz r3, 0x7b4(r4) -/* 8016E18C 0016B0EC 7C 03 00 40 */ cmplw r3, r0 -/* 8016E190 0016B0F0 40 82 00 50 */ bne lbl_8016E1E0 -/* 8016E194 0016B0F4 88 04 06 36 */ lbz r0, 0x636(r4) -/* 8016E198 0016B0F8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8016E19C 0016B0FC 40 82 00 44 */ bne lbl_8016E1E0 -/* 8016E1A0 0016B100 7C 83 23 78 */ mr r3, r4 -/* 8016E1A4 0016B104 7C A4 2B 78 */ mr r4, r5 -/* 8016E1A8 0016B108 81 83 00 00 */ lwz r12, 0(r3) -/* 8016E1AC 0016B10C 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8016E1B0 0016B110 7D 89 03 A6 */ mtctr r12 -/* 8016E1B4 0016B114 4E 80 04 21 */ bctrl -/* 8016E1B8 0016B118 28 03 00 00 */ cmplwi r3, 0 -/* 8016E1BC 0016B11C 38 00 00 00 */ li r0, 0 -/* 8016E1C0 0016B120 41 82 00 18 */ beq lbl_8016E1D8 -/* 8016E1C4 0016B124 C0 23 00 00 */ lfs f1, 0(r3) -/* 8016E1C8 0016B128 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016E1CC 0016B12C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8016E1D0 0016B130 40 81 00 08 */ ble lbl_8016E1D8 -/* 8016E1D4 0016B134 38 00 00 01 */ li r0, 1 -lbl_8016E1D8: -/* 8016E1D8 0016B138 7C 03 03 78 */ mr r3, r0 -/* 8016E1DC 0016B13C 48 00 00 08 */ b lbl_8016E1E4 -lbl_8016E1E0: -/* 8016E1E0 0016B140 38 60 00 00 */ li r3, 0 -lbl_8016E1E4: -/* 8016E1E4 0016B144 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8016E1E8 0016B148 7C 08 03 A6 */ mtlr r0 -/* 8016E1EC 0016B14C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8016E1F0 0016B150 4E 80 00 20 */ blr - -.global sub_8016e1f4 -sub_8016e1f4: -/* 8016E1F4 0016B154 80 03 07 C8 */ lwz r0, 0x7c8(r3) -/* 8016E1F8 0016B158 38 80 00 00 */ li r4, 0 -/* 8016E1FC 0016B15C 2C 00 00 02 */ cmpwi r0, 2 -/* 8016E200 0016B160 40 82 00 18 */ bne lbl_8016E218 -/* 8016E204 0016B164 80 63 04 50 */ lwz r3, 0x450(r3) -/* 8016E208 0016B168 88 03 03 00 */ lbz r0, 0x300(r3) -/* 8016E20C 0016B16C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f -/* 8016E210 0016B170 40 82 00 08 */ bne lbl_8016E218 -/* 8016E214 0016B174 38 80 00 01 */ li r4, 1 -lbl_8016E218: -/* 8016E218 0016B178 7C 83 23 78 */ mr r3, r4 -/* 8016E21C 0016B17C 4E 80 00 20 */ blr - -.global Dodge__8CMetroidFR13CStateManager9EStateMsgf -Dodge__8CMetroidFR13CStateManager9EStateMsgf: -/* 8016E220 0016B180 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8016E224 0016B184 7C 08 02 A6 */ mflr r0 -/* 8016E228 0016B188 2C 05 00 01 */ cmpwi r5, 1 -/* 8016E22C 0016B18C 90 01 00 34 */ stw r0, 0x34(r1) -/* 8016E230 0016B190 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8016E234 0016B194 7C 7F 1B 78 */ mr r31, r3 -/* 8016E238 0016B198 93 C1 00 28 */ stw r30, 0x28(r1) -/* 8016E23C 0016B19C 41 82 00 A4 */ beq lbl_8016E2E0 -/* 8016E240 0016B1A0 40 80 00 10 */ bge lbl_8016E250 -/* 8016E244 0016B1A4 2C 05 00 00 */ cmpwi r5, 0 -/* 8016E248 0016B1A8 40 80 00 14 */ bge lbl_8016E25C -/* 8016E24C 0016B1AC 48 00 01 2C */ b lbl_8016E378 -lbl_8016E250: -/* 8016E250 0016B1B0 2C 05 00 03 */ cmpwi r5, 3 -/* 8016E254 0016B1B4 40 80 01 24 */ bge lbl_8016E378 -/* 8016E258 0016B1B8 48 00 01 18 */ b lbl_8016E370 -lbl_8016E25C: -/* 8016E25C 0016B1BC 80 DF 08 18 */ lwz r6, 0x818(r31) -/* 8016E260 0016B1C0 2C 06 FF FF */ cmpwi r6, -1 -/* 8016E264 0016B1C4 41 82 01 14 */ beq lbl_8016E378 -/* 8016E268 0016B1C8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 8016E26C 0016B1CC 38 A0 00 01 */ li r5, 1 -/* 8016E270 0016B1D0 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 8016E274 0016B1D4 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8016E278 0016B1D8 3C 80 80 3E */ lis r4, lbl_803DA9E4@ha -/* 8016E27C 0016B1DC 90 01 00 14 */ stw r0, 0x14(r1) -/* 8016E280 0016B1E0 38 04 A9 E4 */ addi r0, r4, lbl_803DA9E4@l -/* 8016E284 0016B1E4 3B C3 00 04 */ addi r30, r3, 4 -/* 8016E288 0016B1E8 90 A1 00 18 */ stw r5, 0x18(r1) -/* 8016E28C 0016B1EC 7F C3 F3 78 */ mr r3, r30 -/* 8016E290 0016B1F0 38 80 00 01 */ li r4, 1 -/* 8016E294 0016B1F4 90 01 00 14 */ stw r0, 0x14(r1) -/* 8016E298 0016B1F8 90 C1 00 1C */ stw r6, 0x1c(r1) -/* 8016E29C 0016B1FC 90 A1 00 20 */ stw r5, 0x20(r1) -/* 8016E2A0 0016B200 4B FC 31 99 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8016E2A4 0016B204 80 01 00 18 */ lwz r0, 0x18(r1) -/* 8016E2A8 0016B208 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha -/* 8016E2AC 0016B20C 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l -/* 8016E2B0 0016B210 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 8016E2B4 0016B214 90 1E 00 C8 */ stw r0, 0xc8(r30) -/* 8016E2B8 0016B218 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l -/* 8016E2BC 0016B21C 80 C1 00 1C */ lwz r6, 0x1c(r1) -/* 8016E2C0 0016B220 38 00 00 02 */ li r0, 2 -/* 8016E2C4 0016B224 80 A1 00 20 */ lwz r5, 0x20(r1) -/* 8016E2C8 0016B228 90 DE 00 CC */ stw r6, 0xcc(r30) -/* 8016E2CC 0016B22C 90 BE 00 D0 */ stw r5, 0xd0(r30) -/* 8016E2D0 0016B230 90 81 00 14 */ stw r4, 0x14(r1) -/* 8016E2D4 0016B234 90 61 00 14 */ stw r3, 0x14(r1) -/* 8016E2D8 0016B238 90 1F 05 68 */ stw r0, 0x568(r31) -/* 8016E2DC 0016B23C 48 00 00 9C */ b lbl_8016E378 -lbl_8016E2E0: -/* 8016E2E0 0016B240 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8016E2E4 0016B244 80 03 02 B8 */ lwz r0, 0x2b8(r3) -/* 8016E2E8 0016B248 2C 00 00 03 */ cmpwi r0, 3 -/* 8016E2EC 0016B24C 41 82 00 10 */ beq lbl_8016E2FC -/* 8016E2F0 0016B250 38 00 00 03 */ li r0, 3 -/* 8016E2F4 0016B254 90 1F 05 68 */ stw r0, 0x568(r31) -/* 8016E2F8 0016B258 48 00 00 80 */ b lbl_8016E378 -lbl_8016E2FC: -/* 8016E2FC 0016B25C A0 7F 07 B0 */ lhz r3, 0x7b0(r31) -/* 8016E300 0016B260 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016E304 0016B264 7C 03 00 40 */ cmplw r3, r0 -/* 8016E308 0016B268 41 82 00 70 */ beq lbl_8016E378 -/* 8016E30C 0016B26C A0 1F 07 B0 */ lhz r0, 0x7b0(r31) -/* 8016E310 0016B270 7C 83 23 78 */ mr r3, r4 -/* 8016E314 0016B274 38 81 00 08 */ addi r4, r1, 8 -/* 8016E318 0016B278 B0 01 00 08 */ sth r0, 8(r1) -/* 8016E31C 0016B27C 4B ED E2 89 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8016E320 0016B280 7C 64 1B 78 */ mr r4, r3 -/* 8016E324 0016B284 38 61 00 0C */ addi r3, r1, 0xc -/* 8016E328 0016B288 4B F4 19 69 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8016E32C 0016B28C 80 63 00 04 */ lwz r3, 4(r3) -/* 8016E330 0016B290 28 03 00 00 */ cmplwi r3, 0 -/* 8016E334 0016B294 41 82 00 44 */ beq lbl_8016E378 -/* 8016E338 0016B298 C0 23 00 40 */ lfs f1, 0x40(r3) -/* 8016E33C 0016B29C C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 8016E340 0016B2A0 C0 83 00 50 */ lfs f4, 0x50(r3) -/* 8016E344 0016B2A4 C0 7F 00 50 */ lfs f3, 0x50(r31) -/* 8016E348 0016B2A8 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8016E34C 0016B2AC C0 43 00 60 */ lfs f2, 0x60(r3) -/* 8016E350 0016B2B0 C0 3F 00 60 */ lfs f1, 0x60(r31) -/* 8016E354 0016B2B4 EC 64 18 28 */ fsubs f3, f4, f3 -/* 8016E358 0016B2B8 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8016E35C 0016B2BC EC 22 08 28 */ fsubs f1, f2, f1 -/* 8016E360 0016B2C0 D0 03 00 1C */ stfs f0, 0x1c(r3) -/* 8016E364 0016B2C4 D0 63 00 20 */ stfs f3, 0x20(r3) -/* 8016E368 0016B2C8 D0 23 00 24 */ stfs f1, 0x24(r3) -/* 8016E36C 0016B2CC 48 00 00 0C */ b lbl_8016E378 -lbl_8016E370: -/* 8016E370 0016B2D0 38 00 FF FF */ li r0, -1 -/* 8016E374 0016B2D4 90 1F 08 18 */ stw r0, 0x818(r31) -lbl_8016E378: -/* 8016E378 0016B2D8 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8016E37C 0016B2DC 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8016E380 0016B2E0 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 8016E384 0016B2E4 7C 08 03 A6 */ mtlr r0 -/* 8016E388 0016B2E8 38 21 00 30 */ addi r1, r1, 0x30 -/* 8016E38C 0016B2EC 4E 80 00 20 */ blr - -.global WallHang__8CMetroidFR13CStateManager9EStateMsgf -WallHang__8CMetroidFR13CStateManager9EStateMsgf: -/* 8016E390 0016B2F0 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8016E394 0016B2F4 7C 08 02 A6 */ mflr r0 -/* 8016E398 0016B2F8 2C 05 00 01 */ cmpwi r5, 1 -/* 8016E39C 0016B2FC 90 01 00 34 */ stw r0, 0x34(r1) -/* 8016E3A0 0016B300 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8016E3A4 0016B304 7C 7F 1B 78 */ mr r31, r3 -/* 8016E3A8 0016B308 93 C1 00 28 */ stw r30, 0x28(r1) -/* 8016E3AC 0016B30C 7C 9E 23 78 */ mr r30, r4 -/* 8016E3B0 0016B310 41 82 00 58 */ beq lbl_8016E408 -/* 8016E3B4 0016B314 40 80 00 10 */ bge lbl_8016E3C4 -/* 8016E3B8 0016B318 2C 05 00 00 */ cmpwi r5, 0 -/* 8016E3BC 0016B31C 40 80 00 14 */ bge lbl_8016E3D0 -/* 8016E3C0 0016B320 48 00 01 CC */ b lbl_8016E58C -lbl_8016E3C4: -/* 8016E3C4 0016B324 2C 05 00 03 */ cmpwi r5, 3 -/* 8016E3C8 0016B328 40 80 01 C4 */ bge lbl_8016E58C -/* 8016E3CC 0016B32C 48 00 01 A4 */ b lbl_8016E570 -lbl_8016E3D0: -/* 8016E3D0 0016B330 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8016E3D4 0016B334 38 80 00 00 */ li r4, 0 -/* 8016E3D8 0016B338 4B FC C6 01 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -/* 8016E3DC 0016B33C 38 00 00 00 */ li r0, 0 -/* 8016E3E0 0016B340 7F E3 FB 78 */ mr r3, r31 -/* 8016E3E4 0016B344 90 1F 05 68 */ stw r0, 0x568(r31) -/* 8016E3E8 0016B348 7F C5 F3 78 */ mr r5, r30 -/* 8016E3EC 0016B34C 38 80 00 13 */ li r4, 0x13 -/* 8016E3F0 0016B350 4B EE 5B 91 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 8016E3F4 0016B354 88 1F 09 BF */ lbz r0, 0x9bf(r31) -/* 8016E3F8 0016B358 38 60 00 00 */ li r3, 0 -/* 8016E3FC 0016B35C 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e -/* 8016E400 0016B360 98 1F 09 BF */ stb r0, 0x9bf(r31) -/* 8016E404 0016B364 48 00 01 88 */ b lbl_8016E58C -lbl_8016E408: -/* 8016E408 0016B368 80 1F 05 68 */ lwz r0, 0x568(r31) -/* 8016E40C 0016B36C 2C 00 00 01 */ cmpwi r0, 1 -/* 8016E410 0016B370 41 82 00 60 */ beq lbl_8016E470 -/* 8016E414 0016B374 40 80 00 10 */ bge lbl_8016E424 -/* 8016E418 0016B378 2C 00 00 00 */ cmpwi r0, 0 -/* 8016E41C 0016B37C 40 80 00 14 */ bge lbl_8016E430 -/* 8016E420 0016B380 48 00 01 6C */ b lbl_8016E58C -lbl_8016E424: -/* 8016E424 0016B384 2C 00 00 03 */ cmpwi r0, 3 -/* 8016E428 0016B388 40 80 01 64 */ bge lbl_8016E58C -/* 8016E42C 0016B38C 48 00 01 28 */ b lbl_8016E554 -lbl_8016E430: -/* 8016E430 0016B390 88 1F 09 BF */ lbz r0, 0x9bf(r31) -/* 8016E434 0016B394 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8016E438 0016B398 41 82 01 54 */ beq lbl_8016E58C -/* 8016E43C 0016B39C 38 80 00 01 */ li r4, 1 -/* 8016E440 0016B3A0 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8016E444 0016B3A4 90 9F 05 68 */ stw r4, 0x568(r31) -/* 8016E448 0016B3A8 88 1F 09 BF */ lbz r0, 0x9bf(r31) -/* 8016E44C 0016B3AC 50 80 0F BC */ rlwimi r0, r4, 1, 0x1e, 0x1e -/* 8016E450 0016B3B0 98 1F 09 BF */ stb r0, 0x9bf(r31) -/* 8016E454 0016B3B4 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) -/* 8016E458 0016B3B8 D0 1F 08 0C */ stfs f0, 0x80c(r31) -/* 8016E45C 0016B3BC C0 03 00 04 */ lfs f0, 4(r3) -/* 8016E460 0016B3C0 D0 1F 08 10 */ stfs f0, 0x810(r31) -/* 8016E464 0016B3C4 C0 03 00 08 */ lfs f0, 8(r3) -/* 8016E468 0016B3C8 D0 1F 08 14 */ stfs f0, 0x814(r31) -/* 8016E46C 0016B3CC 48 00 01 20 */ b lbl_8016E58C -lbl_8016E470: -/* 8016E470 0016B3D0 81 5F 04 50 */ lwz r10, 0x450(r31) -/* 8016E474 0016B3D4 80 0A 02 B8 */ lwz r0, 0x2b8(r10) -/* 8016E478 0016B3D8 2C 00 00 0C */ cmpwi r0, 0xc -/* 8016E47C 0016B3DC 40 82 00 10 */ bne lbl_8016E48C -/* 8016E480 0016B3E0 38 00 00 02 */ li r0, 2 -/* 8016E484 0016B3E4 90 1F 05 68 */ stw r0, 0x568(r31) -/* 8016E488 0016B3E8 48 00 01 04 */ b lbl_8016E58C -lbl_8016E48C: -/* 8016E48C 0016B3EC 3C A0 80 3E */ lis r5, lbl_803DAA68@ha -/* 8016E490 0016B3F0 38 C0 00 00 */ li r6, 0 -/* 8016E494 0016B3F4 39 25 AA 68 */ addi r9, r5, lbl_803DAA68@l -/* 8016E498 0016B3F8 80 61 00 24 */ lwz r3, 0x24(r1) -/* 8016E49C 0016B3FC 50 C3 F8 00 */ rlwimi r3, r6, 0x1f, 0, 0 -/* 8016E4A0 0016B400 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8016E4A4 0016B404 C4 44 66 A0 */ lfsu f2, skZero3f@l(r4) -/* 8016E4A8 0016B408 3C E0 80 3E */ lis r7, lbl_803DA9F0@ha -/* 8016E4AC 0016B40C 7C 60 1B 78 */ mr r0, r3 -/* 8016E4B0 0016B410 39 00 00 0E */ li r8, 0xe -/* 8016E4B4 0016B414 C0 24 00 04 */ lfs f1, 4(r4) -/* 8016E4B8 0016B418 38 A0 FF FF */ li r5, -1 -/* 8016E4BC 0016B41C C0 04 00 08 */ lfs f0, 8(r4) -/* 8016E4C0 0016B420 38 E7 A9 F0 */ addi r7, r7, lbl_803DA9F0@l -/* 8016E4C4 0016B424 91 21 00 08 */ stw r9, 8(r1) -/* 8016E4C8 0016B428 50 C0 F0 42 */ rlwimi r0, r6, 0x1e, 1, 1 -/* 8016E4CC 0016B42C 3B EA 00 04 */ addi r31, r10, 4 -/* 8016E4D0 0016B430 38 80 00 0E */ li r4, 0xe -/* 8016E4D4 0016B434 90 61 00 24 */ stw r3, 0x24(r1) -/* 8016E4D8 0016B438 7F E3 FB 78 */ mr r3, r31 -/* 8016E4DC 0016B43C 91 01 00 0C */ stw r8, 0xc(r1) -/* 8016E4E0 0016B440 90 E1 00 08 */ stw r7, 8(r1) -/* 8016E4E4 0016B444 90 C1 00 10 */ stw r6, 0x10(r1) -/* 8016E4E8 0016B448 D0 41 00 14 */ stfs f2, 0x14(r1) -/* 8016E4EC 0016B44C D0 21 00 18 */ stfs f1, 0x18(r1) -/* 8016E4F0 0016B450 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 8016E4F4 0016B454 90 A1 00 20 */ stw r5, 0x20(r1) -/* 8016E4F8 0016B458 90 01 00 24 */ stw r0, 0x24(r1) -/* 8016E4FC 0016B45C 4B FC 2F 3D */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8016E500 0016B460 80 01 00 0C */ lwz r0, 0xc(r1) -/* 8016E504 0016B464 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha -/* 8016E508 0016B468 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l -/* 8016E50C 0016B46C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 8016E510 0016B470 90 1F 01 90 */ stw r0, 0x190(r31) -/* 8016E514 0016B474 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 8016E518 0016B478 80 A1 00 10 */ lwz r5, 0x10(r1) -/* 8016E51C 0016B47C 80 61 00 14 */ lwz r3, 0x14(r1) -/* 8016E520 0016B480 90 BF 01 94 */ stw r5, 0x194(r31) -/* 8016E524 0016B484 80 A1 00 18 */ lwz r5, 0x18(r1) -/* 8016E528 0016B488 90 7F 01 98 */ stw r3, 0x198(r31) -/* 8016E52C 0016B48C 80 61 00 1C */ lwz r3, 0x1c(r1) -/* 8016E530 0016B490 90 BF 01 9C */ stw r5, 0x19c(r31) -/* 8016E534 0016B494 80 A1 00 20 */ lwz r5, 0x20(r1) -/* 8016E538 0016B498 90 7F 01 A0 */ stw r3, 0x1a0(r31) -/* 8016E53C 0016B49C 80 61 00 24 */ lwz r3, 0x24(r1) -/* 8016E540 0016B4A0 90 BF 01 A4 */ stw r5, 0x1a4(r31) -/* 8016E544 0016B4A4 90 81 00 08 */ stw r4, 8(r1) -/* 8016E548 0016B4A8 90 7F 01 A8 */ stw r3, 0x1a8(r31) -/* 8016E54C 0016B4AC 90 01 00 08 */ stw r0, 8(r1) -/* 8016E550 0016B4B0 48 00 00 3C */ b lbl_8016E58C -lbl_8016E554: -/* 8016E554 0016B4B4 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8016E558 0016B4B8 80 03 02 B8 */ lwz r0, 0x2b8(r3) -/* 8016E55C 0016B4BC 2C 00 00 0C */ cmpwi r0, 0xc -/* 8016E560 0016B4C0 41 82 00 2C */ beq lbl_8016E58C -/* 8016E564 0016B4C4 38 00 00 03 */ li r0, 3 -/* 8016E568 0016B4C8 90 1F 05 68 */ stw r0, 0x568(r31) -/* 8016E56C 0016B4CC 48 00 00 20 */ b lbl_8016E58C -lbl_8016E570: -/* 8016E570 0016B4D0 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8016E574 0016B4D4 38 80 00 01 */ li r4, 1 -/* 8016E578 0016B4D8 4B FC C4 61 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -/* 8016E57C 0016B4DC 88 1F 09 BF */ lbz r0, 0x9bf(r31) -/* 8016E580 0016B4E0 38 60 00 01 */ li r3, 1 -/* 8016E584 0016B4E4 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 8016E588 0016B4E8 98 1F 09 BF */ stb r0, 0x9bf(r31) -lbl_8016E58C: -/* 8016E58C 0016B4EC 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8016E590 0016B4F0 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8016E594 0016B4F4 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 8016E598 0016B4F8 7C 08 03 A6 */ mtlr r0 -/* 8016E59C 0016B4FC 38 21 00 30 */ addi r1, r1, 0x30 -/* 8016E5A0 0016B500 4E 80 00 20 */ blr - -.global TelegraphAttack__8CMetroidFR13CStateManager9EStateMsgf -TelegraphAttack__8CMetroidFR13CStateManager9EStateMsgf: -/* 8016E5A4 0016B504 94 21 FF 10 */ stwu r1, -0xf0(r1) -/* 8016E5A8 0016B508 7C 08 02 A6 */ mflr r0 -/* 8016E5AC 0016B50C 90 01 00 F4 */ stw r0, 0xf4(r1) -/* 8016E5B0 0016B510 DB E1 00 E0 */ stfd f31, 0xe0(r1) -/* 8016E5B4 0016B514 F3 E1 00 E8 */ psq_st f31, 232(r1), 0, qr0 -/* 8016E5B8 0016B518 DB C1 00 D0 */ stfd f30, 0xd0(r1) -/* 8016E5BC 0016B51C F3 C1 00 D8 */ psq_st f30, 216(r1), 0, qr0 -/* 8016E5C0 0016B520 DB A1 00 C0 */ stfd f29, 0xc0(r1) -/* 8016E5C4 0016B524 F3 A1 00 C8 */ psq_st f29, 200(r1), 0, qr0 -/* 8016E5C8 0016B528 93 E1 00 BC */ stw r31, 0xbc(r1) -/* 8016E5CC 0016B52C 93 C1 00 B8 */ stw r30, 0xb8(r1) -/* 8016E5D0 0016B530 2C 05 00 01 */ cmpwi r5, 1 -/* 8016E5D4 0016B534 7C 7F 1B 78 */ mr r31, r3 -/* 8016E5D8 0016B538 7C 9E 23 78 */ mr r30, r4 -/* 8016E5DC 0016B53C 41 82 00 54 */ beq lbl_8016E630 -/* 8016E5E0 0016B540 40 80 00 10 */ bge lbl_8016E5F0 -/* 8016E5E4 0016B544 2C 05 00 00 */ cmpwi r5, 0 -/* 8016E5E8 0016B548 40 80 00 14 */ bge lbl_8016E5FC -/* 8016E5EC 0016B54C 48 00 03 28 */ b lbl_8016E914 -lbl_8016E5F0: -/* 8016E5F0 0016B550 2C 05 00 03 */ cmpwi r5, 3 -/* 8016E5F4 0016B554 40 80 03 20 */ bge lbl_8016E914 -/* 8016E5F8 0016B558 48 00 02 9C */ b lbl_8016E894 -lbl_8016E5FC: -/* 8016E5FC 0016B55C 38 00 00 00 */ li r0, 0 -/* 8016E600 0016B560 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016E604 0016B564 90 1F 05 68 */ stw r0, 0x568(r31) -/* 8016E608 0016B568 C0 3F 06 44 */ lfs f1, 0x644(r31) -/* 8016E60C 0016B56C D0 3F 07 B8 */ stfs f1, 0x7b8(r31) -/* 8016E610 0016B570 D0 1F 08 00 */ stfs f0, 0x800(r31) -/* 8016E614 0016B574 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8016E618 0016B578 38 63 00 04 */ addi r3, r3, 4 -/* 8016E61C 0016B57C 4B FC 2E 8D */ bl ClearLocomotionCmds__16CBodyStateCmdMgrFv -/* 8016E620 0016B580 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8016E624 0016B584 38 80 00 03 */ li r4, 3 -/* 8016E628 0016B588 4B FC C3 B1 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -/* 8016E62C 0016B58C 48 00 02 E8 */ b lbl_8016E914 -lbl_8016E630: -/* 8016E630 0016B590 80 1F 05 68 */ lwz r0, 0x568(r31) -/* 8016E634 0016B594 2C 00 00 01 */ cmpwi r0, 1 -/* 8016E638 0016B598 41 82 02 DC */ beq lbl_8016E914 -/* 8016E63C 0016B59C 40 80 00 10 */ bge lbl_8016E64C -/* 8016E640 0016B5A0 2C 00 00 00 */ cmpwi r0, 0 -/* 8016E644 0016B5A4 40 80 00 14 */ bge lbl_8016E658 -/* 8016E648 0016B5A8 48 00 02 CC */ b lbl_8016E914 -lbl_8016E64C: -/* 8016E64C 0016B5AC 2C 00 00 03 */ cmpwi r0, 3 -/* 8016E650 0016B5B0 40 80 02 C4 */ bge lbl_8016E914 -/* 8016E654 0016B5B4 48 00 01 A8 */ b lbl_8016E7FC -lbl_8016E658: -/* 8016E658 0016B5B8 C0 5F 07 B8 */ lfs f2, 0x7b8(r31) -/* 8016E65C 0016B5BC C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016E660 0016B5C0 EC 22 08 28 */ fsubs f1, f2, f1 -/* 8016E664 0016B5C4 D0 3F 07 B8 */ stfs f1, 0x7b8(r31) -/* 8016E668 0016B5C8 C0 3F 07 B8 */ lfs f1, 0x7b8(r31) -/* 8016E66C 0016B5CC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8016E670 0016B5D0 40 80 00 B4 */ bge lbl_8016E724 -/* 8016E674 0016B5D4 38 00 00 02 */ li r0, 2 -/* 8016E678 0016B5D8 7F E4 FB 78 */ mr r4, r31 -/* 8016E67C 0016B5DC 90 1F 05 68 */ stw r0, 0x568(r31) -/* 8016E680 0016B5E0 7F C5 F3 78 */ mr r5, r30 -/* 8016E684 0016B5E4 38 61 00 44 */ addi r3, r1, 0x44 -/* 8016E688 0016B5E8 C3 BF 00 60 */ lfs f29, 0x60(r31) -/* 8016E68C 0016B5EC C3 DF 00 50 */ lfs f30, 0x50(r31) -/* 8016E690 0016B5F0 C3 FF 00 40 */ lfs f31, 0x40(r31) -/* 8016E694 0016B5F4 4B FF F9 29 */ bl sub_8016dfbc -/* 8016E698 0016B5F8 C0 41 00 44 */ lfs f2, 0x44(r1) -/* 8016E69C 0016B5FC 38 61 00 68 */ addi r3, r1, 0x68 -/* 8016E6A0 0016B600 C0 21 00 48 */ lfs f1, 0x48(r1) -/* 8016E6A4 0016B604 C0 01 00 4C */ lfs f0, 0x4c(r1) -/* 8016E6A8 0016B608 EC 42 F8 28 */ fsubs f2, f2, f31 -/* 8016E6AC 0016B60C EC 21 F0 28 */ fsubs f1, f1, f30 -/* 8016E6B0 0016B610 EC 00 E8 28 */ fsubs f0, f0, f29 -/* 8016E6B4 0016B614 D0 41 00 68 */ stfs f2, 0x68(r1) -/* 8016E6B8 0016B618 D0 21 00 6C */ stfs f1, 0x6c(r1) -/* 8016E6BC 0016B61C D0 01 00 70 */ stfs f0, 0x70(r1) -/* 8016E6C0 0016B620 48 1A 61 F9 */ bl Magnitude__9CVector3fCFv -/* 8016E6C4 0016B624 C0 02 A0 E4 */ lfs f0, lbl_805ABE04@sda21(r2) -/* 8016E6C8 0016B628 C3 BF 03 B4 */ lfs f29, 0x3b4(r31) -/* 8016E6CC 0016B62C C3 C2 A0 80 */ lfs f30, lbl_805ABDA0@sda21(r2) -/* 8016E6D0 0016B630 EF E0 00 72 */ fmuls f31, f0, f1 -/* 8016E6D4 0016B634 FC 1D F0 40 */ fcmpo cr0, f29, f30 -/* 8016E6D8 0016B638 40 81 00 0C */ ble lbl_8016E6E4 -/* 8016E6DC 0016B63C C0 02 A0 E8 */ lfs f0, lbl_805ABE08@sda21(r2) -/* 8016E6E0 0016B640 EF C0 E8 24 */ fdivs f30, f0, f29 -lbl_8016E6E4: -/* 8016E6E4 0016B644 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8016E6E8 0016B648 38 63 02 A4 */ addi r3, r3, 0x2a4 -/* 8016E6EC 0016B64C 4B FC 57 C1 */ bl GetMaxSpeed__14CBodyStateInfoCFv -/* 8016E6F0 0016B650 EC 3F 08 24 */ fdivs f1, f31, f1 -/* 8016E6F4 0016B654 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016E6F8 0016B658 EC 3E 08 2A */ fadds f1, f30, f1 -/* 8016E6FC 0016B65C FC 1D 00 40 */ fcmpo cr0, f29, f0 -/* 8016E700 0016B660 D0 3F 08 04 */ stfs f1, 0x804(r31) -/* 8016E704 0016B664 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8016E708 0016B668 40 81 00 10 */ ble lbl_8016E718 -/* 8016E70C 0016B66C C0 02 A0 EC */ lfs f0, lbl_805ABE0C@sda21(r2) -/* 8016E710 0016B670 EC 20 E8 24 */ fdivs f1, f0, f29 -/* 8016E714 0016B674 48 00 00 08 */ b lbl_8016E71C -lbl_8016E718: -/* 8016E718 0016B678 C0 22 A0 EC */ lfs f1, lbl_805ABE0C@sda21(r2) -lbl_8016E71C: -/* 8016E71C 0016B67C 4B FC C2 89 */ bl SetTurnSpeed__15CBodyControllerFf -/* 8016E720 0016B680 48 00 01 F4 */ b lbl_8016E914 -lbl_8016E724: -/* 8016E724 0016B684 A0 7F 07 B0 */ lhz r3, 0x7b0(r31) -/* 8016E728 0016B688 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016E72C 0016B68C 7C 03 00 40 */ cmplw r3, r0 -/* 8016E730 0016B690 41 82 01 E4 */ beq lbl_8016E914 -/* 8016E734 0016B694 A0 1F 07 B0 */ lhz r0, 0x7b0(r31) -/* 8016E738 0016B698 7F C3 F3 78 */ mr r3, r30 -/* 8016E73C 0016B69C 38 81 00 14 */ addi r4, r1, 0x14 -/* 8016E740 0016B6A0 B0 01 00 14 */ sth r0, 0x14(r1) -/* 8016E744 0016B6A4 4B ED DE 61 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8016E748 0016B6A8 7C 64 1B 78 */ mr r4, r3 -/* 8016E74C 0016B6AC 38 61 00 18 */ addi r3, r1, 0x18 -/* 8016E750 0016B6B0 4B F4 15 41 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8016E754 0016B6B4 80 83 00 04 */ lwz r4, 4(r3) -/* 8016E758 0016B6B8 28 04 00 00 */ cmplwi r4, 0 -/* 8016E75C 0016B6BC 41 82 01 B8 */ beq lbl_8016E914 -/* 8016E760 0016B6C0 C0 24 00 50 */ lfs f1, 0x50(r4) -/* 8016E764 0016B6C4 38 61 00 5C */ addi r3, r1, 0x5c -/* 8016E768 0016B6C8 C0 1F 00 50 */ lfs f0, 0x50(r31) -/* 8016E76C 0016B6CC C0 64 00 60 */ lfs f3, 0x60(r4) -/* 8016E770 0016B6D0 C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 8016E774 0016B6D4 EC 81 00 28 */ fsubs f4, f1, f0 -/* 8016E778 0016B6D8 C0 24 00 40 */ lfs f1, 0x40(r4) -/* 8016E77C 0016B6DC C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 8016E780 0016B6E0 EC 43 10 28 */ fsubs f2, f3, f2 -/* 8016E784 0016B6E4 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8016E788 0016B6E8 D0 81 00 60 */ stfs f4, 0x60(r1) -/* 8016E78C 0016B6EC D0 41 00 64 */ stfs f2, 0x64(r1) -/* 8016E790 0016B6F0 D0 01 00 5C */ stfs f0, 0x5c(r1) -/* 8016E794 0016B6F4 48 1A 5F 65 */ bl CanBeNormalized__9CVector3fCFv -/* 8016E798 0016B6F8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016E79C 0016B6FC 41 82 01 78 */ beq lbl_8016E914 -/* 8016E7A0 0016B700 38 61 00 38 */ addi r3, r1, 0x38 -/* 8016E7A4 0016B704 38 81 00 5C */ addi r4, r1, 0x5c -/* 8016E7A8 0016B708 48 1A 60 A9 */ bl AsNormalized__9CVector3fCFv -/* 8016E7AC 0016B70C 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8016E7B0 0016B710 C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) -/* 8016E7B4 0016B714 C0 61 00 38 */ lfs f3, 0x38(r1) -/* 8016E7B8 0016B718 38 81 00 90 */ addi r4, r1, 0x90 -/* 8016E7BC 0016B71C C0 41 00 3C */ lfs f2, 0x3c(r1) -/* 8016E7C0 0016B720 C0 A3 00 04 */ lfs f5, 4(r3) -/* 8016E7C4 0016B724 C0 83 00 08 */ lfs f4, 8(r3) -/* 8016E7C8 0016B728 C0 21 00 40 */ lfs f1, 0x40(r1) -/* 8016E7CC 0016B72C C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) -/* 8016E7D0 0016B730 D0 C1 00 90 */ stfs f6, 0x90(r1) -/* 8016E7D4 0016B734 D0 A1 00 94 */ stfs f5, 0x94(r1) -/* 8016E7D8 0016B738 D0 81 00 98 */ stfs f4, 0x98(r1) -/* 8016E7DC 0016B73C D0 61 00 9C */ stfs f3, 0x9c(r1) -/* 8016E7E0 0016B740 D0 41 00 A0 */ stfs f2, 0xa0(r1) -/* 8016E7E4 0016B744 D0 21 00 A4 */ stfs f1, 0xa4(r1) -/* 8016E7E8 0016B748 D0 01 00 A8 */ stfs f0, 0xa8(r1) -/* 8016E7EC 0016B74C 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8016E7F0 0016B750 38 63 00 04 */ addi r3, r3, 4 -/* 8016E7F4 0016B754 4B FC 2F 25 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd -/* 8016E7F8 0016B758 48 00 01 1C */ b lbl_8016E914 -lbl_8016E7FC: -/* 8016E7FC 0016B75C C0 1F 08 00 */ lfs f0, 0x800(r31) -/* 8016E800 0016B760 7F E4 FB 78 */ mr r4, r31 -/* 8016E804 0016B764 7F C5 F3 78 */ mr r5, r30 -/* 8016E808 0016B768 38 61 00 2C */ addi r3, r1, 0x2c -/* 8016E80C 0016B76C EC 00 08 2A */ fadds f0, f0, f1 -/* 8016E810 0016B770 D0 1F 08 00 */ stfs f0, 0x800(r31) -/* 8016E814 0016B774 4B FF F7 A9 */ bl sub_8016dfbc -/* 8016E818 0016B778 C0 41 00 2C */ lfs f2, 0x2c(r1) -/* 8016E81C 0016B77C 7F E5 FB 78 */ mr r5, r31 -/* 8016E820 0016B780 C0 21 00 30 */ lfs f1, 0x30(r1) -/* 8016E824 0016B784 38 61 00 20 */ addi r3, r1, 0x20 -/* 8016E828 0016B788 C0 01 00 34 */ lfs f0, 0x34(r1) -/* 8016E82C 0016B78C 38 9F 04 5C */ addi r4, r31, 0x45c -/* 8016E830 0016B790 D0 41 00 50 */ stfs f2, 0x50(r1) -/* 8016E834 0016B794 38 C1 00 50 */ addi r6, r1, 0x50 -/* 8016E838 0016B798 D0 21 00 54 */ stfs f1, 0x54(r1) -/* 8016E83C 0016B79C D0 01 00 58 */ stfs f0, 0x58(r1) -/* 8016E840 0016B7A0 4B FD 03 E1 */ bl Seek__18CSteeringBehaviorsCFRC13CPhysicsActorRC9CVector3f -/* 8016E844 0016B7A4 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8016E848 0016B7A8 C4 63 66 A0 */ lfsu f3, skZero3f@l(r3) -/* 8016E84C 0016B7AC C0 C1 00 20 */ lfs f6, 0x20(r1) -/* 8016E850 0016B7B0 38 81 00 74 */ addi r4, r1, 0x74 -/* 8016E854 0016B7B4 C0 A1 00 24 */ lfs f5, 0x24(r1) -/* 8016E858 0016B7B8 C0 81 00 28 */ lfs f4, 0x28(r1) -/* 8016E85C 0016B7BC C0 43 00 04 */ lfs f2, 4(r3) -/* 8016E860 0016B7C0 C0 23 00 08 */ lfs f1, 8(r3) -/* 8016E864 0016B7C4 C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) -/* 8016E868 0016B7C8 D0 C1 00 74 */ stfs f6, 0x74(r1) -/* 8016E86C 0016B7CC D0 A1 00 78 */ stfs f5, 0x78(r1) -/* 8016E870 0016B7D0 D0 81 00 7C */ stfs f4, 0x7c(r1) -/* 8016E874 0016B7D4 D0 61 00 80 */ stfs f3, 0x80(r1) -/* 8016E878 0016B7D8 D0 41 00 84 */ stfs f2, 0x84(r1) -/* 8016E87C 0016B7DC D0 21 00 88 */ stfs f1, 0x88(r1) -/* 8016E880 0016B7E0 D0 01 00 8C */ stfs f0, 0x8c(r1) -/* 8016E884 0016B7E4 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8016E888 0016B7E8 38 63 00 04 */ addi r3, r3, 4 -/* 8016E88C 0016B7EC 4B FC 2E 8D */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd -/* 8016E890 0016B7F0 48 00 00 84 */ b lbl_8016E914 -lbl_8016E894: -/* 8016E894 0016B7F4 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8016E898 0016B7F8 C0 3F 03 B8 */ lfs f1, 0x3b8(r31) -/* 8016E89C 0016B7FC 4B FC C1 09 */ bl SetTurnSpeed__15CBodyControllerFf -/* 8016E8A0 0016B800 7F E3 FB 78 */ mr r3, r31 -/* 8016E8A4 0016B804 7F C4 F3 78 */ mr r4, r30 -/* 8016E8A8 0016B808 81 9F 00 00 */ lwz r12, 0(r31) -/* 8016E8AC 0016B80C C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) -/* 8016E8B0 0016B810 81 8C 01 8C */ lwz r12, 0x18c(r12) -/* 8016E8B4 0016B814 7D 89 03 A6 */ mtctr r12 -/* 8016E8B8 0016B818 4E 80 04 21 */ bctrl -/* 8016E8BC 0016B81C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016E8C0 0016B820 40 82 00 28 */ bne lbl_8016E8E8 -/* 8016E8C4 0016B824 7F E3 FB 78 */ mr r3, r31 -/* 8016E8C8 0016B828 7F C4 F3 78 */ mr r4, r30 -/* 8016E8CC 0016B82C 81 9F 00 00 */ lwz r12, 0(r31) -/* 8016E8D0 0016B830 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) -/* 8016E8D4 0016B834 81 8C 01 B8 */ lwz r12, 0x1b8(r12) -/* 8016E8D8 0016B838 7D 89 03 A6 */ mtctr r12 -/* 8016E8DC 0016B83C 4E 80 04 21 */ bctrl -/* 8016E8E0 0016B840 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016E8E4 0016B844 41 82 00 30 */ beq lbl_8016E914 -lbl_8016E8E8: -/* 8016E8E8 0016B848 A1 1F 00 08 */ lhz r8, 8(r31) -/* 8016E8EC 0016B84C 7F C4 F3 78 */ mr r4, r30 -/* 8016E8F0 0016B850 38 A1 00 10 */ addi r5, r1, 0x10 -/* 8016E8F4 0016B854 38 C1 00 0C */ addi r6, r1, 0xc -/* 8016E8F8 0016B858 B1 01 00 0C */ sth r8, 0xc(r1) -/* 8016E8FC 0016B85C 38 60 00 00 */ li r3, 0 -/* 8016E900 0016B860 38 E0 00 00 */ li r7, 0 -/* 8016E904 0016B864 A0 1F 06 98 */ lhz r0, 0x698(r31) -/* 8016E908 0016B868 B1 01 00 08 */ sth r8, 8(r1) -/* 8016E90C 0016B86C B0 01 00 10 */ sth r0, 0x10(r1) -/* 8016E910 0016B870 48 0C B5 C1 */ bl ResetTeamAiRole__10CTeamAiMgrF11EAttackTypeR13CStateManager9TUniqueId9TUniqueIdb -lbl_8016E914: -/* 8016E914 0016B874 E3 E1 00 E8 */ psq_l f31, 232(r1), 0, qr0 -/* 8016E918 0016B878 CB E1 00 E0 */ lfd f31, 0xe0(r1) -/* 8016E91C 0016B87C E3 C1 00 D8 */ psq_l f30, 216(r1), 0, qr0 -/* 8016E920 0016B880 CB C1 00 D0 */ lfd f30, 0xd0(r1) -/* 8016E924 0016B884 E3 A1 00 C8 */ psq_l f29, 200(r1), 0, qr0 -/* 8016E928 0016B888 CB A1 00 C0 */ lfd f29, 0xc0(r1) -/* 8016E92C 0016B88C 83 E1 00 BC */ lwz r31, 0xbc(r1) -/* 8016E930 0016B890 80 01 00 F4 */ lwz r0, 0xf4(r1) -/* 8016E934 0016B894 83 C1 00 B8 */ lwz r30, 0xb8(r1) -/* 8016E938 0016B898 7C 08 03 A6 */ mtlr r0 -/* 8016E93C 0016B89C 38 21 00 F0 */ addi r1, r1, 0xf0 -/* 8016E940 0016B8A0 4E 80 00 20 */ blr - -.global Attack__8CMetroidFR13CStateManager9EStateMsgf -Attack__8CMetroidFR13CStateManager9EStateMsgf: -/* 8016E944 0016B8A4 94 21 FF 60 */ stwu r1, -0xa0(r1) -/* 8016E948 0016B8A8 7C 08 02 A6 */ mflr r0 -/* 8016E94C 0016B8AC 2C 05 00 01 */ cmpwi r5, 1 -/* 8016E950 0016B8B0 90 01 00 A4 */ stw r0, 0xa4(r1) -/* 8016E954 0016B8B4 93 E1 00 9C */ stw r31, 0x9c(r1) -/* 8016E958 0016B8B8 7C 9F 23 78 */ mr r31, r4 -/* 8016E95C 0016B8BC 93 C1 00 98 */ stw r30, 0x98(r1) -/* 8016E960 0016B8C0 7C 7E 1B 78 */ mr r30, r3 -/* 8016E964 0016B8C4 41 82 00 AC */ beq lbl_8016EA10 -/* 8016E968 0016B8C8 40 80 00 10 */ bge lbl_8016E978 -/* 8016E96C 0016B8CC 2C 05 00 00 */ cmpwi r5, 0 -/* 8016E970 0016B8D0 40 80 00 14 */ bge lbl_8016E984 -/* 8016E974 0016B8D4 48 00 03 54 */ b lbl_8016ECC8 -lbl_8016E978: -/* 8016E978 0016B8D8 2C 05 00 03 */ cmpwi r5, 3 -/* 8016E97C 0016B8DC 40 80 03 4C */ bge lbl_8016ECC8 -/* 8016E980 0016B8E0 48 00 02 2C */ b lbl_8016EBAC -lbl_8016E984: -/* 8016E984 0016B8E4 4B FF E8 05 */ bl sub_8016d188 -/* 8016E988 0016B8E8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016E98C 0016B8EC 41 82 00 78 */ beq lbl_8016EA04 -/* 8016E990 0016B8F0 38 E0 00 01 */ li r7, 1 -/* 8016E994 0016B8F4 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016E998 0016B8F8 90 FE 05 68 */ stw r7, 0x568(r30) -/* 8016E99C 0016B8FC 7F C3 F3 78 */ mr r3, r30 -/* 8016E9A0 0016B900 7F E6 FB 78 */ mr r6, r31 -/* 8016E9A4 0016B904 38 80 00 29 */ li r4, 0x29 -/* 8016E9A8 0016B908 D0 1E 07 BC */ stfs f0, 0x7bc(r30) -/* 8016E9AC 0016B90C 38 A0 00 28 */ li r5, 0x28 -/* 8016E9B0 0016B910 90 FE 07 C8 */ stw r7, 0x7c8(r30) -/* 8016E9B4 0016B914 88 1E 09 BF */ lbz r0, 0x9bf(r30) -/* 8016E9B8 0016B918 50 E0 17 7A */ rlwimi r0, r7, 2, 0x1d, 0x1d -/* 8016E9BC 0016B91C 98 1E 09 BF */ stb r0, 0x9bf(r30) -/* 8016E9C0 0016B920 4B EE 55 15 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager -/* 8016E9C4 0016B924 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8016E9C8 0016B928 7F E6 FB 78 */ mr r6, r31 -/* 8016E9CC 0016B92C 38 81 00 18 */ addi r4, r1, 0x18 -/* 8016E9D0 0016B930 38 A0 00 08 */ li r5, 8 -/* 8016E9D4 0016B934 B0 01 00 18 */ sth r0, 0x18(r1) -/* 8016E9D8 0016B938 B0 01 00 14 */ sth r0, 0x14(r1) -/* 8016E9DC 0016B93C 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8016E9E0 0016B940 48 00 C8 75 */ bl SetOrbitRequestForTarget__7CPlayerF9TUniqueId19EPlayerOrbitRequestR13CStateManager -/* 8016E9E4 0016B944 7F C3 F3 78 */ mr r3, r30 -/* 8016E9E8 0016B948 7F C4 F3 78 */ mr r4, r30 -/* 8016E9EC 0016B94C 4B FF D9 BD */ bl sub_8016c3a8 -/* 8016E9F0 0016B950 7F C3 F3 78 */ mr r3, r30 -/* 8016E9F4 0016B954 7F E5 FB 78 */ mr r5, r31 -/* 8016E9F8 0016B958 38 80 00 22 */ li r4, 0x22 -/* 8016E9FC 0016B95C 4B EE 59 55 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 8016EA00 0016B960 48 00 02 C8 */ b lbl_8016ECC8 -lbl_8016EA04: -/* 8016EA04 0016B964 38 00 00 03 */ li r0, 3 -/* 8016EA08 0016B968 90 1E 05 68 */ stw r0, 0x568(r30) -/* 8016EA0C 0016B96C 48 00 02 BC */ b lbl_8016ECC8 -lbl_8016EA10: -/* 8016EA10 0016B970 80 1E 05 68 */ lwz r0, 0x568(r30) -/* 8016EA14 0016B974 2C 00 00 02 */ cmpwi r0, 2 -/* 8016EA18 0016B978 41 82 00 A4 */ beq lbl_8016EABC -/* 8016EA1C 0016B97C 40 80 02 AC */ bge lbl_8016ECC8 -/* 8016EA20 0016B980 2C 00 00 01 */ cmpwi r0, 1 -/* 8016EA24 0016B984 40 80 00 08 */ bge lbl_8016EA2C -/* 8016EA28 0016B988 48 00 02 A0 */ b lbl_8016ECC8 -lbl_8016EA2C: -/* 8016EA2C 0016B98C 80 FE 04 50 */ lwz r7, 0x450(r30) -/* 8016EA30 0016B990 80 07 02 B8 */ lwz r0, 0x2b8(r7) -/* 8016EA34 0016B994 2C 00 00 09 */ cmpwi r0, 9 -/* 8016EA38 0016B998 40 82 00 10 */ bne lbl_8016EA48 -/* 8016EA3C 0016B99C 38 00 00 02 */ li r0, 2 -/* 8016EA40 0016B9A0 90 1E 05 68 */ stw r0, 0x568(r30) -/* 8016EA44 0016B9A4 48 00 02 84 */ b lbl_8016ECC8 -lbl_8016EA48: -/* 8016EA48 0016B9A8 3C 80 80 3E */ lis r4, lbl_803DAA68@ha -/* 8016EA4C 0016B9AC 3C 60 80 3E */ lis r3, lbl_803E10B0@ha -/* 8016EA50 0016B9B0 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@l -/* 8016EA54 0016B9B4 38 80 00 07 */ li r4, 7 -/* 8016EA58 0016B9B8 90 01 00 44 */ stw r0, 0x44(r1) -/* 8016EA5C 0016B9BC 38 C3 10 B0 */ addi r6, r3, lbl_803E10B0@l -/* 8016EA60 0016B9C0 38 A0 00 03 */ li r5, 3 -/* 8016EA64 0016B9C4 38 00 00 00 */ li r0, 0 -/* 8016EA68 0016B9C8 3B C7 00 04 */ addi r30, r7, 4 -/* 8016EA6C 0016B9CC 90 81 00 48 */ stw r4, 0x48(r1) -/* 8016EA70 0016B9D0 7F C3 F3 78 */ mr r3, r30 -/* 8016EA74 0016B9D4 38 80 00 07 */ li r4, 7 -/* 8016EA78 0016B9D8 90 C1 00 44 */ stw r6, 0x44(r1) -/* 8016EA7C 0016B9DC 90 A1 00 4C */ stw r5, 0x4c(r1) -/* 8016EA80 0016B9E0 90 01 00 50 */ stw r0, 0x50(r1) -/* 8016EA84 0016B9E4 4B FC 29 B5 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8016EA88 0016B9E8 80 01 00 48 */ lwz r0, 0x48(r1) -/* 8016EA8C 0016B9EC 3C 60 80 3E */ lis r3, lbl_803E10B0@ha -/* 8016EA90 0016B9F0 38 83 10 B0 */ addi r4, r3, lbl_803E10B0@l -/* 8016EA94 0016B9F4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 8016EA98 0016B9F8 90 1E 01 48 */ stw r0, 0x148(r30) -/* 8016EA9C 0016B9FC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 8016EAA0 0016BA00 80 A1 00 4C */ lwz r5, 0x4c(r1) -/* 8016EAA4 0016BA04 90 81 00 44 */ stw r4, 0x44(r1) -/* 8016EAA8 0016BA08 80 61 00 50 */ lwz r3, 0x50(r1) -/* 8016EAAC 0016BA0C 90 BE 01 4C */ stw r5, 0x14c(r30) -/* 8016EAB0 0016BA10 90 7E 01 50 */ stw r3, 0x150(r30) -/* 8016EAB4 0016BA14 90 01 00 44 */ stw r0, 0x44(r1) -/* 8016EAB8 0016BA18 48 00 02 10 */ b lbl_8016ECC8 -lbl_8016EABC: -/* 8016EABC 0016BA1C 80 7E 00 64 */ lwz r3, 0x64(r30) -/* 8016EAC0 0016BA20 80 63 00 10 */ lwz r3, 0x10(r3) -/* 8016EAC4 0016BA24 88 03 02 20 */ lbz r0, 0x220(r3) -/* 8016EAC8 0016BA28 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 8016EACC 0016BA2C 41 82 00 0C */ beq lbl_8016EAD8 -/* 8016EAD0 0016BA30 38 00 00 02 */ li r0, 2 -/* 8016EAD4 0016BA34 90 1E 07 C8 */ stw r0, 0x7c8(r30) -lbl_8016EAD8: -/* 8016EAD8 0016BA38 80 9F 08 4C */ lwz r4, 0x84c(r31) -/* 8016EADC 0016BA3C A0 7E 07 B0 */ lhz r3, 0x7b0(r30) -/* 8016EAE0 0016BA40 A0 04 00 08 */ lhz r0, 8(r4) -/* 8016EAE4 0016BA44 7C 03 00 40 */ cmplw r3, r0 -/* 8016EAE8 0016BA48 40 82 00 44 */ bne lbl_8016EB2C -/* 8016EAEC 0016BA4C A0 64 02 6C */ lhz r3, 0x26c(r4) -/* 8016EAF0 0016BA50 A0 1E 00 08 */ lhz r0, 8(r30) -/* 8016EAF4 0016BA54 7C 03 00 40 */ cmplw r3, r0 -/* 8016EAF8 0016BA58 40 82 00 34 */ bne lbl_8016EB2C -/* 8016EAFC 0016BA5C 80 64 00 04 */ lwz r3, 4(r4) -/* 8016EB00 0016BA60 80 1E 00 04 */ lwz r0, 4(r30) -/* 8016EB04 0016BA64 7C 03 00 00 */ cmpw r3, r0 -/* 8016EB08 0016BA68 41 82 00 24 */ beq lbl_8016EB2C -/* 8016EB0C 0016BA6C 7F C3 F3 78 */ mr r3, r30 -/* 8016EB10 0016BA70 7F E4 FB 78 */ mr r4, r31 -/* 8016EB14 0016BA74 4B FF E3 A9 */ bl sub_8016cebc -/* 8016EB18 0016BA78 88 1E 04 01 */ lbz r0, 0x401(r30) -/* 8016EB1C 0016BA7C 38 60 00 01 */ li r3, 1 -/* 8016EB20 0016BA80 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e -/* 8016EB24 0016BA84 98 1E 04 01 */ stb r0, 0x401(r30) -/* 8016EB28 0016BA88 48 00 01 A0 */ b lbl_8016ECC8 -lbl_8016EB2C: -/* 8016EB2C 0016BA8C 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 8016EB30 0016BA90 80 03 02 B8 */ lwz r0, 0x2b8(r3) -/* 8016EB34 0016BA94 2C 00 00 09 */ cmpwi r0, 9 -/* 8016EB38 0016BA98 41 82 00 10 */ beq lbl_8016EB48 -/* 8016EB3C 0016BA9C 38 00 00 03 */ li r0, 3 -/* 8016EB40 0016BAA0 90 1E 05 68 */ stw r0, 0x568(r30) -/* 8016EB44 0016BAA4 48 00 01 84 */ b lbl_8016ECC8 -lbl_8016EB48: -/* 8016EB48 0016BAA8 7F C3 F3 78 */ mr r3, r30 -/* 8016EB4C 0016BAAC 7F E4 FB 78 */ mr r4, r31 -/* 8016EB50 0016BAB0 4B FF D7 09 */ bl sub_8016c258 -/* 8016EB54 0016BAB4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016EB58 0016BAB8 41 82 01 70 */ beq lbl_8016ECC8 -/* 8016EB5C 0016BABC 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 8016EB60 0016BAC0 38 00 00 0A */ li r0, 0xa -/* 8016EB64 0016BAC4 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l -/* 8016EB68 0016BAC8 90 01 00 24 */ stw r0, 0x24(r1) -/* 8016EB6C 0016BACC 38 81 00 20 */ addi r4, r1, 0x20 -/* 8016EB70 0016BAD0 90 61 00 20 */ stw r3, 0x20(r1) -/* 8016EB74 0016BAD4 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 8016EB78 0016BAD8 38 63 00 04 */ addi r3, r3, 4 -/* 8016EB7C 0016BADC 4B FC 2C 3D */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd -/* 8016EB80 0016BAE0 34 01 00 20 */ addic. r0, r1, 0x20 -/* 8016EB84 0016BAE4 41 82 00 10 */ beq lbl_8016EB94 -/* 8016EB88 0016BAE8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 8016EB8C 0016BAEC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 8016EB90 0016BAF0 90 01 00 20 */ stw r0, 0x20(r1) -lbl_8016EB94: -/* 8016EB94 0016BAF4 7F C3 F3 78 */ mr r3, r30 -/* 8016EB98 0016BAF8 7F E4 FB 78 */ mr r4, r31 -/* 8016EB9C 0016BAFC 4B FF E3 21 */ bl sub_8016cebc -/* 8016EBA0 0016BB00 38 00 00 03 */ li r0, 3 -/* 8016EBA4 0016BB04 90 1E 07 C8 */ stw r0, 0x7c8(r30) -/* 8016EBA8 0016BB08 48 00 01 20 */ b lbl_8016ECC8 -lbl_8016EBAC: -/* 8016EBAC 0016BB0C A1 1E 00 08 */ lhz r8, 8(r30) -/* 8016EBB0 0016BB10 38 A1 00 10 */ addi r5, r1, 0x10 -/* 8016EBB4 0016BB14 38 C1 00 0C */ addi r6, r1, 0xc -/* 8016EBB8 0016BB18 38 60 00 00 */ li r3, 0 -/* 8016EBBC 0016BB1C B1 01 00 0C */ sth r8, 0xc(r1) -/* 8016EBC0 0016BB20 38 E0 00 00 */ li r7, 0 -/* 8016EBC4 0016BB24 A0 1E 06 98 */ lhz r0, 0x698(r30) -/* 8016EBC8 0016BB28 B1 01 00 08 */ sth r8, 8(r1) -/* 8016EBCC 0016BB2C B0 01 00 10 */ sth r0, 0x10(r1) -/* 8016EBD0 0016BB30 48 0C B3 01 */ bl ResetTeamAiRole__10CTeamAiMgrF11EAttackTypeR13CStateManager9TUniqueId9TUniqueIdb -/* 8016EBD4 0016BB34 80 7F 09 00 */ lwz r3, 0x900(r31) -/* 8016EBD8 0016BB38 48 1A 39 05 */ bl Float__9CRandom16Fv -/* 8016EBDC 0016BB3C C0 5E 03 08 */ lfs f2, 0x308(r30) -/* 8016EBE0 0016BB40 38 00 00 00 */ li r0, 0 -/* 8016EBE4 0016BB44 C0 1E 03 04 */ lfs f0, 0x304(r30) -/* 8016EBE8 0016BB48 7F C3 F3 78 */ mr r3, r30 -/* 8016EBEC 0016BB4C 7F E4 FB 78 */ mr r4, r31 -/* 8016EBF0 0016BB50 EC 02 00 7A */ fmadds f0, f2, f1, f0 -/* 8016EBF4 0016BB54 D0 1E 07 B4 */ stfs f0, 0x7b4(r30) -/* 8016EBF8 0016BB58 90 1E 07 C8 */ stw r0, 0x7c8(r30) -/* 8016EBFC 0016BB5C 4B FF E2 C1 */ bl sub_8016cebc -/* 8016EC00 0016BB60 88 1E 09 BF */ lbz r0, 0x9bf(r30) -/* 8016EC04 0016BB64 38 60 00 00 */ li r3, 0 -/* 8016EC08 0016BB68 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d -/* 8016EC0C 0016BB6C 7F C3 F3 78 */ mr r3, r30 -/* 8016EC10 0016BB70 98 1E 09 BF */ stb r0, 0x9bf(r30) -/* 8016EC14 0016BB74 4B EE 58 9D */ bl GetYaw__6CActorCFv -/* 8016EC18 0016BB78 D0 21 00 1C */ stfs f1, 0x1c(r1) -/* 8016EC1C 0016BB7C 38 61 00 34 */ addi r3, r1, 0x34 -/* 8016EC20 0016BB80 38 81 00 1C */ addi r4, r1, 0x1c -/* 8016EC24 0016BB84 48 1A 24 D5 */ bl ZRotation__11CQuaternionFRC9CRelAngle -/* 8016EC28 0016BB88 C0 61 00 34 */ lfs f3, 0x34(r1) -/* 8016EC2C 0016BB8C 38 61 00 64 */ addi r3, r1, 0x64 -/* 8016EC30 0016BB90 C0 41 00 38 */ lfs f2, 0x38(r1) -/* 8016EC34 0016BB94 38 81 00 54 */ addi r4, r1, 0x54 -/* 8016EC38 0016BB98 C0 21 00 3C */ lfs f1, 0x3c(r1) -/* 8016EC3C 0016BB9C 38 A1 00 28 */ addi r5, r1, 0x28 -/* 8016EC40 0016BBA0 C0 01 00 40 */ lfs f0, 0x40(r1) -/* 8016EC44 0016BBA4 D0 61 00 54 */ stfs f3, 0x54(r1) -/* 8016EC48 0016BBA8 D0 41 00 58 */ stfs f2, 0x58(r1) -/* 8016EC4C 0016BBAC D0 21 00 5C */ stfs f1, 0x5c(r1) -/* 8016EC50 0016BBB0 D0 01 00 60 */ stfs f0, 0x60(r1) -/* 8016EC54 0016BBB4 C0 5E 00 60 */ lfs f2, 0x60(r30) -/* 8016EC58 0016BBB8 C0 3E 00 50 */ lfs f1, 0x50(r30) -/* 8016EC5C 0016BBBC C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 8016EC60 0016BBC0 D0 01 00 28 */ stfs f0, 0x28(r1) -/* 8016EC64 0016BBC4 D0 21 00 2C */ stfs f1, 0x2c(r1) -/* 8016EC68 0016BBC8 D0 41 00 30 */ stfs f2, 0x30(r1) -/* 8016EC6C 0016BBCC 48 1A 32 51 */ bl BuildTransform4f__11CQuaternionCFRC9CVector3f -/* 8016EC70 0016BBD0 38 7E 00 34 */ addi r3, r30, 0x34 -/* 8016EC74 0016BBD4 38 81 00 64 */ addi r4, r1, 0x64 -/* 8016EC78 0016BBD8 48 1A 3E C9 */ bl __as__12CTransform4fFRC12CTransform4f -/* 8016EC7C 0016BBDC 88 1E 00 E4 */ lbz r0, 0xe4(r30) -/* 8016EC80 0016BBE0 38 E0 00 01 */ li r7, 1 -/* 8016EC84 0016BBE4 50 E0 26 F6 */ rlwimi r0, r7, 4, 0x1b, 0x1b -/* 8016EC88 0016BBE8 7F C3 F3 78 */ mr r3, r30 -/* 8016EC8C 0016BBEC 98 1E 00 E4 */ stb r0, 0xe4(r30) -/* 8016EC90 0016BBF0 7F E6 FB 78 */ mr r6, r31 -/* 8016EC94 0016BBF4 38 80 00 29 */ li r4, 0x29 -/* 8016EC98 0016BBF8 38 A0 00 28 */ li r5, 0x28 -/* 8016EC9C 0016BBFC 88 1E 00 E4 */ lbz r0, 0xe4(r30) -/* 8016ECA0 0016BC00 50 E0 1F 38 */ rlwimi r0, r7, 3, 0x1c, 0x1c -/* 8016ECA4 0016BC04 98 1E 00 E4 */ stb r0, 0xe4(r30) -/* 8016ECA8 0016BC08 88 1E 00 E4 */ lbz r0, 0xe4(r30) -/* 8016ECAC 0016BC0C 50 E0 17 7A */ rlwimi r0, r7, 2, 0x1d, 0x1d -/* 8016ECB0 0016BC10 98 1E 00 E4 */ stb r0, 0xe4(r30) -/* 8016ECB4 0016BC14 4B EE 56 01 */ bl AddMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager -/* 8016ECB8 0016BC18 7F C3 F3 78 */ mr r3, r30 -/* 8016ECBC 0016BC1C 7F E5 FB 78 */ mr r5, r31 -/* 8016ECC0 0016BC20 38 80 00 22 */ li r4, 0x22 -/* 8016ECC4 0016BC24 4B EE 52 BD */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager -lbl_8016ECC8: -/* 8016ECC8 0016BC28 80 01 00 A4 */ lwz r0, 0xa4(r1) -/* 8016ECCC 0016BC2C 83 E1 00 9C */ lwz r31, 0x9c(r1) -/* 8016ECD0 0016BC30 83 C1 00 98 */ lwz r30, 0x98(r1) -/* 8016ECD4 0016BC34 7C 08 03 A6 */ mtlr r0 -/* 8016ECD8 0016BC38 38 21 00 A0 */ addi r1, r1, 0xa0 -/* 8016ECDC 0016BC3C 4E 80 00 20 */ blr - -.global TurnAround__8CMetroidFR13CStateManager9EStateMsgf -TurnAround__8CMetroidFR13CStateManager9EStateMsgf: -/* 8016ECE0 0016BC40 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 8016ECE4 0016BC44 7C 08 02 A6 */ mflr r0 -/* 8016ECE8 0016BC48 2C 05 00 01 */ cmpwi r5, 1 -/* 8016ECEC 0016BC4C 90 01 00 54 */ stw r0, 0x54(r1) -/* 8016ECF0 0016BC50 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 8016ECF4 0016BC54 7C 9F 23 78 */ mr r31, r4 -/* 8016ECF8 0016BC58 93 C1 00 48 */ stw r30, 0x48(r1) -/* 8016ECFC 0016BC5C 7C 7E 1B 78 */ mr r30, r3 -/* 8016ED00 0016BC60 41 82 00 08 */ beq lbl_8016ED08 -/* 8016ED04 0016BC64 48 00 00 FC */ b lbl_8016EE00 -lbl_8016ED08: -/* 8016ED08 0016BC68 A0 7E 07 B0 */ lhz r3, 0x7b0(r30) -/* 8016ED0C 0016BC6C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016ED10 0016BC70 7C 03 00 40 */ cmplw r3, r0 -/* 8016ED14 0016BC74 41 82 00 EC */ beq lbl_8016EE00 -/* 8016ED18 0016BC78 A0 1E 07 B0 */ lhz r0, 0x7b0(r30) -/* 8016ED1C 0016BC7C 7F E3 FB 78 */ mr r3, r31 -/* 8016ED20 0016BC80 38 81 00 08 */ addi r4, r1, 8 -/* 8016ED24 0016BC84 B0 01 00 08 */ sth r0, 8(r1) -/* 8016ED28 0016BC88 4B ED D8 7D */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8016ED2C 0016BC8C 7C 64 1B 78 */ mr r4, r3 -/* 8016ED30 0016BC90 38 61 00 0C */ addi r3, r1, 0xc -/* 8016ED34 0016BC94 4B F4 0F 5D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8016ED38 0016BC98 80 A3 00 04 */ lwz r5, 4(r3) -/* 8016ED3C 0016BC9C 28 05 00 00 */ cmplwi r5, 0 -/* 8016ED40 0016BCA0 41 82 00 C0 */ beq lbl_8016EE00 -/* 8016ED44 0016BCA4 C0 45 00 50 */ lfs f2, 0x50(r5) -/* 8016ED48 0016BCA8 7F C3 F3 78 */ mr r3, r30 -/* 8016ED4C 0016BCAC C0 1E 00 50 */ lfs f0, 0x50(r30) -/* 8016ED50 0016BCB0 7F E4 FB 78 */ mr r4, r31 -/* 8016ED54 0016BCB4 C0 65 00 60 */ lfs f3, 0x60(r5) -/* 8016ED58 0016BCB8 C0 3E 00 60 */ lfs f1, 0x60(r30) -/* 8016ED5C 0016BCBC EC 82 00 28 */ fsubs f4, f2, f0 -/* 8016ED60 0016BCC0 C0 45 00 40 */ lfs f2, 0x40(r5) -/* 8016ED64 0016BCC4 C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 8016ED68 0016BCC8 EC 63 08 28 */ fsubs f3, f3, f1 -/* 8016ED6C 0016BCCC C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) -/* 8016ED70 0016BCD0 EC 02 00 28 */ fsubs f0, f2, f0 -/* 8016ED74 0016BCD4 D0 81 00 24 */ stfs f4, 0x24(r1) -/* 8016ED78 0016BCD8 D0 61 00 28 */ stfs f3, 0x28(r1) -/* 8016ED7C 0016BCDC D0 01 00 20 */ stfs f0, 0x20(r1) -/* 8016ED80 0016BCE0 81 9E 00 00 */ lwz r12, 0(r30) -/* 8016ED84 0016BCE4 81 8C 01 E8 */ lwz r12, 0x1e8(r12) -/* 8016ED88 0016BCE8 7D 89 03 A6 */ mtctr r12 -/* 8016ED8C 0016BCEC 4E 80 04 21 */ bctrl -/* 8016ED90 0016BCF0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016ED94 0016BCF4 41 82 00 6C */ beq lbl_8016EE00 -/* 8016ED98 0016BCF8 38 61 00 20 */ addi r3, r1, 0x20 -/* 8016ED9C 0016BCFC 48 1A 59 5D */ bl CanBeNormalized__9CVector3fCFv -/* 8016EDA0 0016BD00 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016EDA4 0016BD04 41 82 00 5C */ beq lbl_8016EE00 -/* 8016EDA8 0016BD08 38 61 00 14 */ addi r3, r1, 0x14 -/* 8016EDAC 0016BD0C 38 81 00 20 */ addi r4, r1, 0x20 -/* 8016EDB0 0016BD10 48 1A 5A A1 */ bl AsNormalized__9CVector3fCFv -/* 8016EDB4 0016BD14 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8016EDB8 0016BD18 C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) -/* 8016EDBC 0016BD1C C0 61 00 14 */ lfs f3, 0x14(r1) -/* 8016EDC0 0016BD20 38 81 00 2C */ addi r4, r1, 0x2c -/* 8016EDC4 0016BD24 C0 41 00 18 */ lfs f2, 0x18(r1) -/* 8016EDC8 0016BD28 C0 A3 00 04 */ lfs f5, 4(r3) -/* 8016EDCC 0016BD2C C0 83 00 08 */ lfs f4, 8(r3) -/* 8016EDD0 0016BD30 C0 21 00 1C */ lfs f1, 0x1c(r1) -/* 8016EDD4 0016BD34 C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) -/* 8016EDD8 0016BD38 D0 C1 00 2C */ stfs f6, 0x2c(r1) -/* 8016EDDC 0016BD3C D0 A1 00 30 */ stfs f5, 0x30(r1) -/* 8016EDE0 0016BD40 D0 81 00 34 */ stfs f4, 0x34(r1) -/* 8016EDE4 0016BD44 D0 61 00 38 */ stfs f3, 0x38(r1) -/* 8016EDE8 0016BD48 D0 41 00 3C */ stfs f2, 0x3c(r1) -/* 8016EDEC 0016BD4C D0 21 00 40 */ stfs f1, 0x40(r1) -/* 8016EDF0 0016BD50 D0 01 00 44 */ stfs f0, 0x44(r1) -/* 8016EDF4 0016BD54 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 8016EDF8 0016BD58 38 63 00 04 */ addi r3, r3, 4 -/* 8016EDFC 0016BD5C 4B FC 29 1D */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd -lbl_8016EE00: -/* 8016EE00 0016BD60 80 01 00 54 */ lwz r0, 0x54(r1) -/* 8016EE04 0016BD64 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 8016EE08 0016BD68 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 8016EE0C 0016BD6C 7C 08 03 A6 */ mtlr r0 -/* 8016EE10 0016BD70 38 21 00 50 */ addi r1, r1, 0x50 -/* 8016EE14 0016BD74 4E 80 00 20 */ blr - -.global PathFind__8CMetroidFR13CStateManager9EStateMsgf -PathFind__8CMetroidFR13CStateManager9EStateMsgf: -/* 8016EE18 0016BD78 94 21 FF 70 */ stwu r1, -0x90(r1) -/* 8016EE1C 0016BD7C 7C 08 02 A6 */ mflr r0 -/* 8016EE20 0016BD80 90 01 00 94 */ stw r0, 0x94(r1) -/* 8016EE24 0016BD84 DB E1 00 80 */ stfd f31, 0x80(r1) -/* 8016EE28 0016BD88 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 -/* 8016EE2C 0016BD8C 93 E1 00 7C */ stw r31, 0x7c(r1) -/* 8016EE30 0016BD90 93 C1 00 78 */ stw r30, 0x78(r1) -/* 8016EE34 0016BD94 93 A1 00 74 */ stw r29, 0x74(r1) -/* 8016EE38 0016BD98 7C BF 2B 78 */ mr r31, r5 -/* 8016EE3C 0016BD9C FF E0 08 90 */ fmr f31, f1 -/* 8016EE40 0016BDA0 2C 1F 00 01 */ cmpwi r31, 1 -/* 8016EE44 0016BDA4 7C 7D 1B 78 */ mr r29, r3 -/* 8016EE48 0016BDA8 7C 9E 23 78 */ mr r30, r4 -/* 8016EE4C 0016BDAC 41 82 00 5C */ beq lbl_8016EEA8 -/* 8016EE50 0016BDB0 40 80 00 10 */ bge lbl_8016EE60 -/* 8016EE54 0016BDB4 2C 1F 00 00 */ cmpwi r31, 0 -/* 8016EE58 0016BDB8 40 80 00 14 */ bge lbl_8016EE6C -/* 8016EE5C 0016BDBC 48 00 01 F0 */ b lbl_8016F04C -lbl_8016EE60: -/* 8016EE60 0016BDC0 2C 1F 00 03 */ cmpwi r31, 3 -/* 8016EE64 0016BDC4 40 80 01 E8 */ bge lbl_8016F04C -/* 8016EE68 0016BDC8 48 00 01 D8 */ b lbl_8016F040 -lbl_8016EE6C: -/* 8016EE6C 0016BDCC 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 8016EE70 0016BDD0 38 80 00 02 */ li r4, 2 -/* 8016EE74 0016BDD4 4B FC BB 65 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -/* 8016EE78 0016BDD8 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 8016EE7C 0016BDDC 38 00 00 01 */ li r0, 1 -/* 8016EE80 0016BDE0 C0 22 A0 98 */ lfs f1, lbl_805ABDB8@sda21(r2) -/* 8016EE84 0016BDE4 90 03 00 34 */ stw r0, 0x34(r3) -/* 8016EE88 0016BDE8 FC 40 08 90 */ fmr f2, f1 -/* 8016EE8C 0016BDEC 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 8016EE90 0016BDF0 38 63 00 04 */ addi r3, r3, 4 -/* 8016EE94 0016BDF4 4B FC 29 55 */ bl SetSteeringSpeedRange__16CBodyStateCmdMgrFff -/* 8016EE98 0016BDF8 7F A3 EB 78 */ mr r3, r29 -/* 8016EE9C 0016BDFC 7F C4 F3 78 */ mr r4, r30 -/* 8016EEA0 0016BE00 4B FF EB 7D */ bl sub_8016da1c -/* 8016EEA4 0016BE04 48 00 01 A8 */ b lbl_8016F04C -lbl_8016EEA8: -/* 8016EEA8 0016BE08 81 83 00 00 */ lwz r12, 0(r3) -/* 8016EEAC 0016BE0C 81 8C 02 AC */ lwz r12, 0x2ac(r12) -/* 8016EEB0 0016BE10 7D 89 03 A6 */ mtctr r12 -/* 8016EEB4 0016BE14 4E 80 04 21 */ bctrl -/* 8016EEB8 0016BE18 28 03 00 00 */ cmplwi r3, 0 -/* 8016EEBC 0016BE1C 41 82 00 64 */ beq lbl_8016EF20 -/* 8016EEC0 0016BE20 7F A3 EB 78 */ mr r3, r29 -/* 8016EEC4 0016BE24 7F C4 F3 78 */ mr r4, r30 -/* 8016EEC8 0016BE28 81 9D 00 00 */ lwz r12, 0(r29) -/* 8016EECC 0016BE2C C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) -/* 8016EED0 0016BE30 81 8C 01 90 */ lwz r12, 0x190(r12) -/* 8016EED4 0016BE34 7D 89 03 A6 */ mtctr r12 -/* 8016EED8 0016BE38 4E 80 04 21 */ bctrl -/* 8016EEDC 0016BE3C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016EEE0 0016BE40 40 82 00 40 */ bne lbl_8016EF20 -/* 8016EEE4 0016BE44 7F A3 EB 78 */ mr r3, r29 -/* 8016EEE8 0016BE48 7F C4 F3 78 */ mr r4, r30 -/* 8016EEEC 0016BE4C 81 9D 00 00 */ lwz r12, 0(r29) -/* 8016EEF0 0016BE50 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) -/* 8016EEF4 0016BE54 81 8C 01 94 */ lwz r12, 0x194(r12) -/* 8016EEF8 0016BE58 7D 89 03 A6 */ mtctr r12 -/* 8016EEFC 0016BE5C 4E 80 04 21 */ bctrl -/* 8016EF00 0016BE60 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016EF04 0016BE64 40 82 00 1C */ bne lbl_8016EF20 -/* 8016EF08 0016BE68 FC 20 F8 90 */ fmr f1, f31 -/* 8016EF0C 0016BE6C 7F A3 EB 78 */ mr r3, r29 -/* 8016EF10 0016BE70 7F C4 F3 78 */ mr r4, r30 -/* 8016EF14 0016BE74 7F E5 FB 78 */ mr r5, r31 -/* 8016EF18 0016BE78 48 08 77 B5 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf -/* 8016EF1C 0016BE7C 48 00 01 10 */ b lbl_8016F02C -lbl_8016EF20: -/* 8016EF20 0016BE80 A0 DD 00 08 */ lhz r6, 8(r29) -/* 8016EF24 0016BE84 7F C3 F3 78 */ mr r3, r30 -/* 8016EF28 0016BE88 38 81 00 18 */ addi r4, r1, 0x18 -/* 8016EF2C 0016BE8C 38 A1 00 14 */ addi r5, r1, 0x14 -/* 8016EF30 0016BE90 B0 C1 00 14 */ sth r6, 0x14(r1) -/* 8016EF34 0016BE94 A0 1D 06 98 */ lhz r0, 0x698(r29) -/* 8016EF38 0016BE98 B0 C1 00 10 */ sth r6, 0x10(r1) -/* 8016EF3C 0016BE9C B0 01 00 18 */ sth r0, 0x18(r1) -/* 8016EF40 0016BEA0 48 0C B2 41 */ bl GetTeamAiRole__10CTeamAiMgrCFRC13CStateManager9TUniqueId9TUniqueId -/* 8016EF44 0016BEA4 28 03 00 00 */ cmplwi r3, 0 -/* 8016EF48 0016BEA8 41 82 00 20 */ beq lbl_8016EF68 -/* 8016EF4C 0016BEAC C0 03 00 1C */ lfs f0, 0x1c(r3) -/* 8016EF50 0016BEB0 D0 1D 07 A4 */ stfs f0, 0x7a4(r29) -/* 8016EF54 0016BEB4 C0 03 00 20 */ lfs f0, 0x20(r3) -/* 8016EF58 0016BEB8 D0 1D 07 A8 */ stfs f0, 0x7a8(r29) -/* 8016EF5C 0016BEBC C0 03 00 24 */ lfs f0, 0x24(r3) -/* 8016EF60 0016BEC0 D0 1D 07 AC */ stfs f0, 0x7ac(r29) -/* 8016EF64 0016BEC4 48 00 00 B8 */ b lbl_8016F01C -lbl_8016EF68: -/* 8016EF68 0016BEC8 7F A4 EB 78 */ mr r4, r29 -/* 8016EF6C 0016BECC 7F C5 F3 78 */ mr r5, r30 -/* 8016EF70 0016BED0 38 61 00 28 */ addi r3, r1, 0x28 -/* 8016EF74 0016BED4 4B FF F0 49 */ bl sub_8016dfbc -/* 8016EF78 0016BED8 C0 41 00 28 */ lfs f2, 0x28(r1) -/* 8016EF7C 0016BEDC 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8016EF80 0016BEE0 C0 21 00 2C */ lfs f1, 0x2c(r1) -/* 8016EF84 0016BEE4 38 E3 66 A0 */ addi r7, r3, skZero3f@l -/* 8016EF88 0016BEE8 C0 01 00 30 */ lfs f0, 0x30(r1) -/* 8016EF8C 0016BEEC 39 00 FF FF */ li r8, -1 -/* 8016EF90 0016BEF0 D0 41 00 34 */ stfs f2, 0x34(r1) -/* 8016EF94 0016BEF4 38 00 00 00 */ li r0, 0 -/* 8016EF98 0016BEF8 C0 47 00 00 */ lfs f2, 0(r7) -/* 8016EF9C 0016BEFC 7F A4 EB 78 */ mr r4, r29 -/* 8016EFA0 0016BF00 D0 21 00 38 */ stfs f1, 0x38(r1) -/* 8016EFA4 0016BF04 7F C5 F3 78 */ mr r5, r30 -/* 8016EFA8 0016BF08 C0 27 00 04 */ lfs f1, 4(r7) -/* 8016EFAC 0016BF0C 38 61 00 1C */ addi r3, r1, 0x1c -/* 8016EFB0 0016BF10 D0 01 00 3C */ stfs f0, 0x3c(r1) -/* 8016EFB4 0016BF14 38 C1 00 40 */ addi r6, r1, 0x40 -/* 8016EFB8 0016BF18 C0 07 00 08 */ lfs f0, 8(r7) -/* 8016EFBC 0016BF1C 38 E1 00 34 */ addi r7, r1, 0x34 -/* 8016EFC0 0016BF20 A1 3D 00 08 */ lhz r9, 8(r29) -/* 8016EFC4 0016BF24 B1 21 00 40 */ sth r9, 0x40(r1) -/* 8016EFC8 0016BF28 91 01 00 44 */ stw r8, 0x44(r1) -/* 8016EFCC 0016BF2C 91 01 00 48 */ stw r8, 0x48(r1) -/* 8016EFD0 0016BF30 91 01 00 4C */ stw r8, 0x4c(r1) -/* 8016EFD4 0016BF34 91 01 00 50 */ stw r8, 0x50(r1) -/* 8016EFD8 0016BF38 91 01 00 54 */ stw r8, 0x54(r1) -/* 8016EFDC 0016BF3C 90 01 00 58 */ stw r0, 0x58(r1) -/* 8016EFE0 0016BF40 D0 41 00 5C */ stfs f2, 0x5c(r1) -/* 8016EFE4 0016BF44 D0 21 00 60 */ stfs f1, 0x60(r1) -/* 8016EFE8 0016BF48 D0 01 00 64 */ stfs f0, 0x64(r1) -/* 8016EFEC 0016BF4C 81 9D 00 00 */ lwz r12, 0(r29) -/* 8016EFF0 0016BF50 B1 21 00 08 */ sth r9, 8(r1) -/* 8016EFF4 0016BF54 81 8C 00 A0 */ lwz r12, 0xa0(r12) -/* 8016EFF8 0016BF58 B1 21 00 0C */ sth r9, 0xc(r1) -/* 8016EFFC 0016BF5C 7D 89 03 A6 */ mtctr r12 -/* 8016F000 0016BF60 4E 80 04 21 */ bctrl -/* 8016F004 0016BF64 C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 8016F008 0016BF68 D0 1D 07 A4 */ stfs f0, 0x7a4(r29) -/* 8016F00C 0016BF6C C0 01 00 20 */ lfs f0, 0x20(r1) -/* 8016F010 0016BF70 D0 1D 07 A8 */ stfs f0, 0x7a8(r29) -/* 8016F014 0016BF74 C0 01 00 24 */ lfs f0, 0x24(r1) -/* 8016F018 0016BF78 D0 1D 07 AC */ stfs f0, 0x7ac(r29) -lbl_8016F01C: -/* 8016F01C 0016BF7C 7F A3 EB 78 */ mr r3, r29 -/* 8016F020 0016BF80 7F C4 F3 78 */ mr r4, r30 -/* 8016F024 0016BF84 38 BD 07 A4 */ addi r5, r29, 0x7a4 -/* 8016F028 0016BF88 4B FF E5 55 */ bl sub_8016d57c -lbl_8016F02C: -/* 8016F02C 0016BF8C C0 22 A0 F0 */ lfs f1, lbl_805ABE10@sda21(r2) -/* 8016F030 0016BF90 7F A3 EB 78 */ mr r3, r29 -/* 8016F034 0016BF94 7F C4 F3 78 */ mr r4, r30 -/* 8016F038 0016BF98 4B FF E8 3D */ bl sub_8016d874 -/* 8016F03C 0016BF9C 48 00 00 10 */ b lbl_8016F04C -lbl_8016F040: -/* 8016F040 0016BFA0 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 8016F044 0016BFA4 38 00 00 00 */ li r0, 0 -/* 8016F048 0016BFA8 90 03 00 34 */ stw r0, 0x34(r3) -lbl_8016F04C: -/* 8016F04C 0016BFAC E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 -/* 8016F050 0016BFB0 80 01 00 94 */ lwz r0, 0x94(r1) -/* 8016F054 0016BFB4 CB E1 00 80 */ lfd f31, 0x80(r1) -/* 8016F058 0016BFB8 83 E1 00 7C */ lwz r31, 0x7c(r1) -/* 8016F05C 0016BFBC 83 C1 00 78 */ lwz r30, 0x78(r1) -/* 8016F060 0016BFC0 83 A1 00 74 */ lwz r29, 0x74(r1) -/* 8016F064 0016BFC4 7C 08 03 A6 */ mtlr r0 -/* 8016F068 0016BFC8 38 21 00 90 */ addi r1, r1, 0x90 -/* 8016F06C 0016BFCC 4E 80 00 20 */ blr - -.global SelectTarget__8CMetroidFR13CStateManager9EStateMsgf -SelectTarget__8CMetroidFR13CStateManager9EStateMsgf: -/* 8016F070 0016BFD0 94 21 F7 10 */ stwu r1, -0x8f0(r1) -/* 8016F074 0016BFD4 7C 08 02 A6 */ mflr r0 -/* 8016F078 0016BFD8 90 01 08 F4 */ stw r0, 0x8f4(r1) -/* 8016F07C 0016BFDC DB E1 08 E0 */ stfd f31, 0x8e0(r1) -/* 8016F080 0016BFE0 F3 E1 08 E8 */ psq_st f31, -1816(r1), 0, qr0 -/* 8016F084 0016BFE4 BF 41 08 C8 */ stmw r26, 0x8c8(r1) -/* 8016F088 0016BFE8 2C 05 00 01 */ cmpwi r5, 1 -/* 8016F08C 0016BFEC 7C 7E 1B 78 */ mr r30, r3 -/* 8016F090 0016BFF0 7C 9F 23 78 */ mr r31, r4 -/* 8016F094 0016BFF4 41 82 02 C8 */ beq lbl_8016F35C -/* 8016F098 0016BFF8 40 80 04 58 */ bge lbl_8016F4F0 -/* 8016F09C 0016BFFC 2C 05 00 00 */ cmpwi r5, 0 -/* 8016F0A0 0016C000 40 80 00 0C */ bge lbl_8016F0AC -/* 8016F0A4 0016C004 48 00 04 4C */ b lbl_8016F4F0 -/* 8016F0A8 0016C008 48 00 04 48 */ b lbl_8016F4F0 -lbl_8016F0AC: -/* 8016F0AC 0016C00C 88 1E 09 BF */ lbz r0, 0x9bf(r30) -/* 8016F0B0 0016C010 38 60 00 01 */ li r3, 1 -/* 8016F0B4 0016C014 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f -/* 8016F0B8 0016C018 41 82 00 08 */ beq lbl_8016F0C0 -/* 8016F0BC 0016C01C 38 60 00 03 */ li r3, 3 -lbl_8016F0C0: -/* 8016F0C0 0016C020 90 7E 05 68 */ stw r3, 0x568(r30) -/* 8016F0C4 0016C024 A0 7E 07 B0 */ lhz r3, 0x7b0(r30) -/* 8016F0C8 0016C028 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016F0CC 0016C02C 7C 03 00 40 */ cmplw r3, r0 -/* 8016F0D0 0016C030 40 82 02 40 */ bne lbl_8016F310 -/* 8016F0D4 0016C034 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8016F0D8 0016C038 C0 1E 00 50 */ lfs f0, 0x50(r30) -/* 8016F0DC 0016C03C C0 23 00 50 */ lfs f1, 0x50(r3) -/* 8016F0E0 0016C040 C0 63 00 40 */ lfs f3, 0x40(r3) -/* 8016F0E4 0016C044 EC 81 00 28 */ fsubs f4, f1, f0 -/* 8016F0E8 0016C048 C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 8016F0EC 0016C04C C0 43 00 60 */ lfs f2, 0x60(r3) -/* 8016F0F0 0016C050 EC 63 00 28 */ fsubs f3, f3, f0 -/* 8016F0F4 0016C054 C0 3E 00 60 */ lfs f1, 0x60(r30) -/* 8016F0F8 0016C058 EC 04 01 32 */ fmuls f0, f4, f4 -/* 8016F0FC 0016C05C A0 03 00 08 */ lhz r0, 8(r3) -/* 8016F100 0016C060 EC 22 08 28 */ fsubs f1, f2, f1 -/* 8016F104 0016C064 B0 1E 07 B0 */ sth r0, 0x7b0(r30) -/* 8016F108 0016C068 EC 03 00 FA */ fmadds f0, f3, f3, f0 -/* 8016F10C 0016C06C 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 8016F110 0016C070 EC 21 00 7A */ fmadds f1, f1, f1, f0 -/* 8016F114 0016C074 88 03 03 00 */ lbz r0, 0x300(r3) -/* 8016F118 0016C078 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f -/* 8016F11C 0016C07C FF E0 08 90 */ fmr f31, f1 -/* 8016F120 0016C080 40 82 01 F0 */ bne lbl_8016F310 -/* 8016F124 0016C084 48 1A 63 DD */ bl SqrtF__5CMathFf -/* 8016F128 0016C088 D0 21 00 2C */ stfs f1, 0x2c(r1) -/* 8016F12C 0016C08C 38 61 00 30 */ addi r3, r1, 0x30 -/* 8016F130 0016C090 38 81 00 2C */ addi r4, r1, 0x2c -/* 8016F134 0016C094 C0 1E 03 BC */ lfs f0, 0x3bc(r30) -/* 8016F138 0016C098 D0 01 00 30 */ stfs f0, 0x30(r1) -/* 8016F13C 0016C09C 4B EE 05 F5 */ bl "Max__5CMathFRCfRCf" -/* 8016F140 0016C0A0 C0 E3 00 00 */ lfs f7, 0(r3) -/* 8016F144 0016C0A4 38 61 00 A8 */ addi r3, r1, 0xa8 -/* 8016F148 0016C0A8 C0 DE 00 60 */ lfs f6, 0x60(r30) -/* 8016F14C 0016C0AC 38 81 00 48 */ addi r4, r1, 0x48 -/* 8016F150 0016C0B0 C0 BE 00 50 */ lfs f5, 0x50(r30) -/* 8016F154 0016C0B4 38 A1 00 3C */ addi r5, r1, 0x3c -/* 8016F158 0016C0B8 C0 3E 00 40 */ lfs f1, 0x40(r30) -/* 8016F15C 0016C0BC EC 06 38 2A */ fadds f0, f6, f7 -/* 8016F160 0016C0C0 EC 65 38 2A */ fadds f3, f5, f7 -/* 8016F164 0016C0C4 EC 81 38 2A */ fadds f4, f1, f7 -/* 8016F168 0016C0C8 EC 41 38 28 */ fsubs f2, f1, f7 -/* 8016F16C 0016C0CC D0 01 00 44 */ stfs f0, 0x44(r1) -/* 8016F170 0016C0D0 EC 25 38 28 */ fsubs f1, f5, f7 -/* 8016F174 0016C0D4 EC 06 38 28 */ fsubs f0, f6, f7 -/* 8016F178 0016C0D8 D0 81 00 3C */ stfs f4, 0x3c(r1) -/* 8016F17C 0016C0DC D0 61 00 40 */ stfs f3, 0x40(r1) -/* 8016F180 0016C0E0 D0 41 00 48 */ stfs f2, 0x48(r1) -/* 8016F184 0016C0E4 D0 21 00 4C */ stfs f1, 0x4c(r1) -/* 8016F188 0016C0E8 D0 01 00 50 */ stfs f0, 0x50(r1) -/* 8016F18C 0016C0EC 48 1C 93 7D */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 8016F190 0016C0F0 80 AD 8D C8 */ lwz r5, lbl_805A7988@sda21(r13) -/* 8016F194 0016C0F4 38 60 00 00 */ li r3, 0 -/* 8016F198 0016C0F8 38 80 00 01 */ li r4, 1 -/* 8016F19C 0016C0FC 48 21 AD 59 */ bl __shl2i -/* 8016F1A0 0016C100 38 00 00 00 */ li r0, 0 -/* 8016F1A4 0016C104 39 00 00 01 */ li r8, 1 -/* 8016F1A8 0016C108 90 81 00 94 */ stw r4, 0x94(r1) -/* 8016F1AC 0016C10C 38 81 00 C0 */ addi r4, r1, 0xc0 -/* 8016F1B0 0016C110 38 A1 00 A8 */ addi r5, r1, 0xa8 -/* 8016F1B4 0016C114 38 C1 00 90 */ addi r6, r1, 0x90 -/* 8016F1B8 0016C118 90 61 00 90 */ stw r3, 0x90(r1) -/* 8016F1BC 0016C11C 7F E3 FB 78 */ mr r3, r31 -/* 8016F1C0 0016C120 38 E0 00 00 */ li r7, 0 -/* 8016F1C4 0016C124 91 01 00 88 */ stw r8, 0x88(r1) -/* 8016F1C8 0016C128 90 01 00 9C */ stw r0, 0x9c(r1) -/* 8016F1CC 0016C12C 90 01 00 98 */ stw r0, 0x98(r1) -/* 8016F1D0 0016C130 91 01 00 A0 */ stw r8, 0xa0(r1) -/* 8016F1D4 0016C134 90 01 00 C0 */ stw r0, 0xc0(r1) -/* 8016F1D8 0016C138 4B ED D5 49 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" -/* 8016F1DC 0016C13C 80 01 00 C0 */ lwz r0, 0xc0(r1) -/* 8016F1E0 0016C140 2C 00 00 00 */ cmpwi r0, 0 -/* 8016F1E4 0016C144 41 82 00 D8 */ beq lbl_8016F2BC -/* 8016F1E8 0016C148 3B A1 00 C4 */ addi r29, r1, 0xc4 -/* 8016F1EC 0016C14C 3B 80 00 00 */ li r28, 0 -/* 8016F1F0 0016C150 7F BB EB 78 */ mr r27, r29 -/* 8016F1F4 0016C154 48 00 00 8C */ b lbl_8016F280 -lbl_8016F1F8: -/* 8016F1F8 0016C158 A0 1B 00 00 */ lhz r0, 0(r27) -/* 8016F1FC 0016C15C 7F E3 FB 78 */ mr r3, r31 -/* 8016F200 0016C160 38 81 00 20 */ addi r4, r1, 0x20 -/* 8016F204 0016C164 B0 01 00 20 */ sth r0, 0x20(r1) -/* 8016F208 0016C168 4B ED D3 6D */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8016F20C 0016C16C 7C 64 1B 78 */ mr r4, r3 -/* 8016F210 0016C170 38 61 00 28 */ addi r3, r1, 0x28 -/* 8016F214 0016C174 4B F3 61 BD */ bl sub_800a53d0 -/* 8016F218 0016C178 4B F3 61 8D */ bl "CastTo<12CSpacePirate>__10CPatternedFP7CEntity" -/* 8016F21C 0016C17C 7C 7A 1B 79 */ or. r26, r3, r3 -/* 8016F220 0016C180 41 82 00 5C */ beq lbl_8016F27C -/* 8016F224 0016C184 7F C3 F3 78 */ mr r3, r30 -/* 8016F228 0016C188 7F 44 D3 78 */ mr r4, r26 -/* 8016F22C 0016C18C 7F E5 FB 78 */ mr r5, r31 -/* 8016F230 0016C190 4B FF EF 49 */ bl sub_8016e178 -/* 8016F234 0016C194 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016F238 0016C198 41 82 00 44 */ beq lbl_8016F27C -/* 8016F23C 0016C19C C0 3A 00 50 */ lfs f1, 0x50(r26) -/* 8016F240 0016C1A0 C0 1E 00 50 */ lfs f0, 0x50(r30) -/* 8016F244 0016C1A4 C0 7A 00 40 */ lfs f3, 0x40(r26) -/* 8016F248 0016C1A8 EC 81 00 28 */ fsubs f4, f1, f0 -/* 8016F24C 0016C1AC C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 8016F250 0016C1B0 C0 5A 00 60 */ lfs f2, 0x60(r26) -/* 8016F254 0016C1B4 EC 63 00 28 */ fsubs f3, f3, f0 -/* 8016F258 0016C1B8 C0 3E 00 60 */ lfs f1, 0x60(r30) -/* 8016F25C 0016C1BC EC 04 01 32 */ fmuls f0, f4, f4 -/* 8016F260 0016C1C0 EC 22 08 28 */ fsubs f1, f2, f1 -/* 8016F264 0016C1C4 EC 03 00 FA */ fmadds f0, f3, f3, f0 -/* 8016F268 0016C1C8 EC 01 00 7A */ fmadds f0, f1, f1, f0 -/* 8016F26C 0016C1CC FC 00 F8 40 */ fcmpo cr0, f0, f31 -/* 8016F270 0016C1D0 40 80 00 0C */ bge lbl_8016F27C -/* 8016F274 0016C1D4 7F 5C D3 78 */ mr r28, r26 -/* 8016F278 0016C1D8 FF E0 00 90 */ fmr f31, f0 -lbl_8016F27C: -/* 8016F27C 0016C1DC 3B 7B 00 02 */ addi r27, r27, 2 -lbl_8016F280: -/* 8016F280 0016C1E0 80 01 00 C0 */ lwz r0, 0xc0(r1) -/* 8016F284 0016C1E4 54 00 08 3C */ slwi r0, r0, 1 -/* 8016F288 0016C1E8 7C 1D 02 14 */ add r0, r29, r0 -/* 8016F28C 0016C1EC 7C 1B 00 40 */ cmplw r27, r0 -/* 8016F290 0016C1F0 40 82 FF 68 */ bne lbl_8016F1F8 -/* 8016F294 0016C1F4 28 1C 00 00 */ cmplwi r28, 0 -/* 8016F298 0016C1F8 41 82 00 24 */ beq lbl_8016F2BC -/* 8016F29C 0016C1FC A0 1C 00 08 */ lhz r0, 8(r28) -/* 8016F2A0 0016C200 7F 83 E3 78 */ mr r3, r28 -/* 8016F2A4 0016C204 38 81 00 1C */ addi r4, r1, 0x1c -/* 8016F2A8 0016C208 B0 1E 07 B0 */ sth r0, 0x7b0(r30) -/* 8016F2AC 0016C20C A0 1E 00 08 */ lhz r0, 8(r30) -/* 8016F2B0 0016C210 B0 01 00 18 */ sth r0, 0x18(r1) -/* 8016F2B4 0016C214 B0 01 00 1C */ sth r0, 0x1c(r1) -/* 8016F2B8 0016C218 4B FB A5 89 */ bl SetAttackTarget__12CSpacePirateF9TUniqueId -lbl_8016F2BC: -/* 8016F2BC 0016C21C 80 A1 00 C0 */ lwz r5, 0xc0(r1) -/* 8016F2C0 0016C220 38 60 00 00 */ li r3, 0 -/* 8016F2C4 0016C224 2C 05 00 00 */ cmpwi r5, 0 -/* 8016F2C8 0016C228 40 81 00 40 */ ble lbl_8016F308 -/* 8016F2CC 0016C22C 2C 05 00 08 */ cmpwi r5, 8 -/* 8016F2D0 0016C230 38 85 FF F8 */ addi r4, r5, -8 -/* 8016F2D4 0016C234 40 81 00 20 */ ble lbl_8016F2F4 -/* 8016F2D8 0016C238 38 04 00 07 */ addi r0, r4, 7 -/* 8016F2DC 0016C23C 54 00 E8 FE */ srwi r0, r0, 3 -/* 8016F2E0 0016C240 7C 09 03 A6 */ mtctr r0 -/* 8016F2E4 0016C244 2C 04 00 00 */ cmpwi r4, 0 -/* 8016F2E8 0016C248 40 81 00 0C */ ble lbl_8016F2F4 -lbl_8016F2EC: -/* 8016F2EC 0016C24C 38 63 00 08 */ addi r3, r3, 8 -/* 8016F2F0 0016C250 42 00 FF FC */ bdnz lbl_8016F2EC -lbl_8016F2F4: -/* 8016F2F4 0016C254 7C 03 28 50 */ subf r0, r3, r5 -/* 8016F2F8 0016C258 7C 09 03 A6 */ mtctr r0 -/* 8016F2FC 0016C25C 7C 03 28 00 */ cmpw r3, r5 -/* 8016F300 0016C260 40 80 00 08 */ bge lbl_8016F308 -lbl_8016F304: -/* 8016F304 0016C264 42 00 00 00 */ bdnz lbl_8016F304 -lbl_8016F308: -/* 8016F308 0016C268 38 00 00 00 */ li r0, 0 -/* 8016F30C 0016C26C 90 01 00 C0 */ stw r0, 0xc0(r1) -lbl_8016F310: -/* 8016F310 0016C270 A0 1E 07 B0 */ lhz r0, 0x7b0(r30) -/* 8016F314 0016C274 7F E3 FB 78 */ mr r3, r31 -/* 8016F318 0016C278 38 81 00 14 */ addi r4, r1, 0x14 -/* 8016F31C 0016C27C B0 01 00 14 */ sth r0, 0x14(r1) -/* 8016F320 0016C280 4B ED D2 55 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8016F324 0016C284 7C 64 1B 78 */ mr r4, r3 -/* 8016F328 0016C288 38 61 00 24 */ addi r3, r1, 0x24 -/* 8016F32C 0016C28C 4B F3 60 A5 */ bl sub_800a53d0 -/* 8016F330 0016C290 4B F3 60 75 */ bl "CastTo<12CSpacePirate>__10CPatternedFP7CEntity" -/* 8016F334 0016C294 7C 64 1B 79 */ or. r4, r3, r3 -/* 8016F338 0016C298 41 82 01 B8 */ beq lbl_8016F4F0 -/* 8016F33C 0016C29C A0 1E 00 08 */ lhz r0, 8(r30) -/* 8016F340 0016C2A0 7F E3 FB 78 */ mr r3, r31 -/* 8016F344 0016C2A4 38 A1 00 10 */ addi r5, r1, 0x10 -/* 8016F348 0016C2A8 38 C0 00 15 */ li r6, 0x15 -/* 8016F34C 0016C2AC B0 01 00 0C */ sth r0, 0xc(r1) -/* 8016F350 0016C2B0 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8016F354 0016C2B4 4B ED 4B 7D */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -/* 8016F358 0016C2B8 48 00 01 98 */ b lbl_8016F4F0 -lbl_8016F35C: -/* 8016F35C 0016C2BC 80 1E 05 68 */ lwz r0, 0x568(r30) -/* 8016F360 0016C2C0 2C 00 00 02 */ cmpwi r0, 2 -/* 8016F364 0016C2C4 41 82 01 00 */ beq lbl_8016F464 -/* 8016F368 0016C2C8 40 80 01 88 */ bge lbl_8016F4F0 -/* 8016F36C 0016C2CC 2C 00 00 01 */ cmpwi r0, 1 -/* 8016F370 0016C2D0 40 80 00 08 */ bge lbl_8016F378 -/* 8016F374 0016C2D4 48 00 01 7C */ b lbl_8016F4F0 -lbl_8016F378: -/* 8016F378 0016C2D8 81 5E 04 50 */ lwz r10, 0x450(r30) -/* 8016F37C 0016C2DC 80 0A 02 B8 */ lwz r0, 0x2b8(r10) -/* 8016F380 0016C2E0 2C 00 00 0C */ cmpwi r0, 0xc -/* 8016F384 0016C2E4 40 82 00 10 */ bne lbl_8016F394 -/* 8016F388 0016C2E8 38 00 00 02 */ li r0, 2 -/* 8016F38C 0016C2EC 90 1E 05 68 */ stw r0, 0x568(r30) -/* 8016F390 0016C2F0 48 00 01 60 */ b lbl_8016F4F0 -lbl_8016F394: -/* 8016F394 0016C2F4 3C C0 80 3E */ lis r6, lbl_803DAA68@ha -/* 8016F398 0016C2F8 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8016F39C 0016C2FC 38 A3 66 A0 */ addi r5, r3, skZero3f@l -/* 8016F3A0 0016C300 80 81 00 70 */ lwz r4, 0x70(r1) -/* 8016F3A4 0016C304 38 60 00 00 */ li r3, 0 -/* 8016F3A8 0016C308 39 26 AA 68 */ addi r9, r6, lbl_803DAA68@l -/* 8016F3AC 0016C30C 50 64 F8 00 */ rlwimi r4, r3, 0x1f, 0, 0 -/* 8016F3B0 0016C310 C0 45 00 00 */ lfs f2, 0(r5) -/* 8016F3B4 0016C314 C0 25 00 04 */ lfs f1, 4(r5) -/* 8016F3B8 0016C318 3C E0 80 3E */ lis r7, lbl_803DA9F0@ha -/* 8016F3BC 0016C31C C0 05 00 08 */ lfs f0, 8(r5) -/* 8016F3C0 0016C320 7C 80 23 78 */ mr r0, r4 -/* 8016F3C4 0016C324 39 00 00 0E */ li r8, 0xe -/* 8016F3C8 0016C328 38 C0 00 03 */ li r6, 3 -/* 8016F3CC 0016C32C 38 A0 FF FF */ li r5, -1 -/* 8016F3D0 0016C330 3B EA 00 04 */ addi r31, r10, 4 -/* 8016F3D4 0016C334 91 21 00 54 */ stw r9, 0x54(r1) -/* 8016F3D8 0016C338 38 E7 A9 F0 */ addi r7, r7, lbl_803DA9F0@l -/* 8016F3DC 0016C33C 50 60 F0 42 */ rlwimi r0, r3, 0x1e, 1, 1 -/* 8016F3E0 0016C340 7F E3 FB 78 */ mr r3, r31 -/* 8016F3E4 0016C344 90 81 00 70 */ stw r4, 0x70(r1) -/* 8016F3E8 0016C348 38 80 00 0E */ li r4, 0xe -/* 8016F3EC 0016C34C 91 01 00 58 */ stw r8, 0x58(r1) -/* 8016F3F0 0016C350 90 E1 00 54 */ stw r7, 0x54(r1) -/* 8016F3F4 0016C354 90 C1 00 5C */ stw r6, 0x5c(r1) -/* 8016F3F8 0016C358 D0 41 00 60 */ stfs f2, 0x60(r1) -/* 8016F3FC 0016C35C D0 21 00 64 */ stfs f1, 0x64(r1) -/* 8016F400 0016C360 D0 01 00 68 */ stfs f0, 0x68(r1) -/* 8016F404 0016C364 90 A1 00 6C */ stw r5, 0x6c(r1) -/* 8016F408 0016C368 90 01 00 70 */ stw r0, 0x70(r1) -/* 8016F40C 0016C36C 4B FC 20 2D */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8016F410 0016C370 80 01 00 58 */ lwz r0, 0x58(r1) -/* 8016F414 0016C374 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha -/* 8016F418 0016C378 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l -/* 8016F41C 0016C37C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 8016F420 0016C380 90 1F 01 90 */ stw r0, 0x190(r31) -/* 8016F424 0016C384 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 8016F428 0016C388 80 A1 00 5C */ lwz r5, 0x5c(r1) -/* 8016F42C 0016C38C 80 61 00 60 */ lwz r3, 0x60(r1) -/* 8016F430 0016C390 90 BF 01 94 */ stw r5, 0x194(r31) -/* 8016F434 0016C394 80 A1 00 64 */ lwz r5, 0x64(r1) -/* 8016F438 0016C398 90 7F 01 98 */ stw r3, 0x198(r31) -/* 8016F43C 0016C39C 80 61 00 68 */ lwz r3, 0x68(r1) -/* 8016F440 0016C3A0 90 BF 01 9C */ stw r5, 0x19c(r31) -/* 8016F444 0016C3A4 80 A1 00 6C */ lwz r5, 0x6c(r1) -/* 8016F448 0016C3A8 90 7F 01 A0 */ stw r3, 0x1a0(r31) -/* 8016F44C 0016C3AC 80 61 00 70 */ lwz r3, 0x70(r1) -/* 8016F450 0016C3B0 90 BF 01 A4 */ stw r5, 0x1a4(r31) -/* 8016F454 0016C3B4 90 81 00 54 */ stw r4, 0x54(r1) -/* 8016F458 0016C3B8 90 7F 01 A8 */ stw r3, 0x1a8(r31) -/* 8016F45C 0016C3BC 90 01 00 54 */ stw r0, 0x54(r1) -/* 8016F460 0016C3C0 48 00 00 90 */ b lbl_8016F4F0 -lbl_8016F464: -/* 8016F464 0016C3C4 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 8016F468 0016C3C8 80 03 02 B8 */ lwz r0, 0x2b8(r3) -/* 8016F46C 0016C3CC 2C 00 00 0C */ cmpwi r0, 0xc -/* 8016F470 0016C3D0 41 82 00 10 */ beq lbl_8016F480 -/* 8016F474 0016C3D4 38 00 00 03 */ li r0, 3 -/* 8016F478 0016C3D8 90 1E 05 68 */ stw r0, 0x568(r30) -/* 8016F47C 0016C3DC 48 00 00 74 */ b lbl_8016F4F0 -lbl_8016F480: -/* 8016F480 0016C3E0 A0 7E 07 B0 */ lhz r3, 0x7b0(r30) -/* 8016F484 0016C3E4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016F488 0016C3E8 7C 03 00 40 */ cmplw r3, r0 -/* 8016F48C 0016C3EC 41 82 00 64 */ beq lbl_8016F4F0 -/* 8016F490 0016C3F0 A0 1E 07 B0 */ lhz r0, 0x7b0(r30) -/* 8016F494 0016C3F4 7F E3 FB 78 */ mr r3, r31 -/* 8016F498 0016C3F8 38 81 00 08 */ addi r4, r1, 8 -/* 8016F49C 0016C3FC B0 01 00 08 */ sth r0, 8(r1) -/* 8016F4A0 0016C400 4B ED D1 05 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8016F4A4 0016C404 7C 64 1B 78 */ mr r4, r3 -/* 8016F4A8 0016C408 38 61 00 34 */ addi r3, r1, 0x34 -/* 8016F4AC 0016C40C 4B F4 07 E5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8016F4B0 0016C410 80 63 00 04 */ lwz r3, 4(r3) -/* 8016F4B4 0016C414 28 03 00 00 */ cmplwi r3, 0 -/* 8016F4B8 0016C418 41 82 00 38 */ beq lbl_8016F4F0 -/* 8016F4BC 0016C41C C0 23 00 40 */ lfs f1, 0x40(r3) -/* 8016F4C0 0016C420 C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 8016F4C4 0016C424 C0 83 00 50 */ lfs f4, 0x50(r3) -/* 8016F4C8 0016C428 C0 7E 00 50 */ lfs f3, 0x50(r30) -/* 8016F4CC 0016C42C EC 01 00 28 */ fsubs f0, f1, f0 -/* 8016F4D0 0016C430 C0 43 00 60 */ lfs f2, 0x60(r3) -/* 8016F4D4 0016C434 C0 3E 00 60 */ lfs f1, 0x60(r30) -/* 8016F4D8 0016C438 EC 64 18 28 */ fsubs f3, f4, f3 -/* 8016F4DC 0016C43C 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 8016F4E0 0016C440 EC 22 08 28 */ fsubs f1, f2, f1 -/* 8016F4E4 0016C444 D0 03 00 1C */ stfs f0, 0x1c(r3) -/* 8016F4E8 0016C448 D0 63 00 20 */ stfs f3, 0x20(r3) -/* 8016F4EC 0016C44C D0 23 00 24 */ stfs f1, 0x24(r3) -lbl_8016F4F0: -/* 8016F4F0 0016C450 E3 E1 08 E8 */ psq_l f31, -1816(r1), 0, qr0 -/* 8016F4F4 0016C454 CB E1 08 E0 */ lfd f31, 0x8e0(r1) -/* 8016F4F8 0016C458 BB 41 08 C8 */ lmw r26, 0x8c8(r1) -/* 8016F4FC 0016C45C 80 01 08 F4 */ lwz r0, 0x8f4(r1) -/* 8016F500 0016C460 7C 08 03 A6 */ mtlr r0 -/* 8016F504 0016C464 38 21 08 F0 */ addi r1, r1, 0x8f0 -/* 8016F508 0016C468 4E 80 00 20 */ blr - -.global Generate__8CMetroidFR13CStateManager9EStateMsgf -Generate__8CMetroidFR13CStateManager9EStateMsgf: -/* 8016F50C 0016C46C 94 21 FF 60 */ stwu r1, -0xa0(r1) -/* 8016F510 0016C470 7C 08 02 A6 */ mflr r0 -/* 8016F514 0016C474 90 01 00 A4 */ stw r0, 0xa4(r1) -/* 8016F518 0016C478 DB E1 00 90 */ stfd f31, 0x90(r1) -/* 8016F51C 0016C47C F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 -/* 8016F520 0016C480 DB C1 00 80 */ stfd f30, 0x80(r1) -/* 8016F524 0016C484 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 -/* 8016F528 0016C488 DB A1 00 70 */ stfd f29, 0x70(r1) -/* 8016F52C 0016C48C F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0 -/* 8016F530 0016C490 DB 81 00 60 */ stfd f28, 0x60(r1) -/* 8016F534 0016C494 F3 81 00 68 */ psq_st f28, 104(r1), 0, qr0 -/* 8016F538 0016C498 93 E1 00 5C */ stw r31, 0x5c(r1) -/* 8016F53C 0016C49C 93 C1 00 58 */ stw r30, 0x58(r1) -/* 8016F540 0016C4A0 93 A1 00 54 */ stw r29, 0x54(r1) -/* 8016F544 0016C4A4 FF C0 08 90 */ fmr f30, f1 -/* 8016F548 0016C4A8 2C 05 00 01 */ cmpwi r5, 1 -/* 8016F54C 0016C4AC 7C 7F 1B 78 */ mr r31, r3 -/* 8016F550 0016C4B0 7C 9D 23 78 */ mr r29, r4 -/* 8016F554 0016C4B4 41 82 00 9C */ beq lbl_8016F5F0 -/* 8016F558 0016C4B8 40 80 00 10 */ bge lbl_8016F568 -/* 8016F55C 0016C4BC 2C 05 00 00 */ cmpwi r5, 0 -/* 8016F560 0016C4C0 40 80 00 14 */ bge lbl_8016F574 -/* 8016F564 0016C4C4 48 00 04 94 */ b lbl_8016F9F8 -lbl_8016F568: -/* 8016F568 0016C4C8 2C 05 00 03 */ cmpwi r5, 3 -/* 8016F56C 0016C4CC 40 80 04 8C */ bge lbl_8016F9F8 -/* 8016F570 0016C4D0 48 00 04 2C */ b lbl_8016F99C -lbl_8016F574: -/* 8016F574 0016C4D4 4B FF C5 69 */ bl sub_8016badc -/* 8016F578 0016C4D8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016F57C 0016C4DC 41 82 00 14 */ beq lbl_8016F590 -/* 8016F580 0016C4E0 7F E3 FB 78 */ mr r3, r31 -/* 8016F584 0016C4E4 7F A4 EB 78 */ mr r4, r29 -/* 8016F588 0016C4E8 4B FF BE 7D */ bl sub_8016b404 -/* 8016F58C 0016C4EC 48 00 00 30 */ b lbl_8016F5BC -lbl_8016F590: -/* 8016F590 0016C4F0 C0 3F 07 F8 */ lfs f1, 0x7f8(r31) -/* 8016F594 0016C4F4 C0 1F 06 50 */ lfs f0, 0x650(r31) -/* 8016F598 0016C4F8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8016F59C 0016C4FC 4C 41 13 82 */ cror 2, 1, 2 -/* 8016F5A0 0016C500 40 82 00 1C */ bne lbl_8016F5BC -/* 8016F5A4 0016C504 7F E3 FB 78 */ mr r3, r31 -/* 8016F5A8 0016C508 7F A4 EB 78 */ mr r4, r29 -/* 8016F5AC 0016C50C 81 9F 00 00 */ lwz r12, 0(r31) -/* 8016F5B0 0016C510 81 8C 02 98 */ lwz r12, 0x298(r12) -/* 8016F5B4 0016C514 7D 89 03 A6 */ mtctr r12 -/* 8016F5B8 0016C518 4E 80 04 21 */ bctrl -lbl_8016F5BC: -/* 8016F5BC 0016C51C 38 60 00 01 */ li r3, 1 -/* 8016F5C0 0016C520 90 7F 05 68 */ stw r3, 0x568(r31) -/* 8016F5C4 0016C524 80 9F 00 64 */ lwz r4, 0x64(r31) -/* 8016F5C8 0016C528 C0 24 00 04 */ lfs f1, 4(r4) -/* 8016F5CC 0016C52C C0 44 00 08 */ lfs f2, 8(r4) -/* 8016F5D0 0016C530 C0 04 00 00 */ lfs f0, 0(r4) -/* 8016F5D4 0016C534 D0 1F 07 DC */ stfs f0, 0x7dc(r31) -/* 8016F5D8 0016C538 D0 3F 07 E0 */ stfs f1, 0x7e0(r31) -/* 8016F5DC 0016C53C D0 5F 07 E4 */ stfs f2, 0x7e4(r31) -/* 8016F5E0 0016C540 88 1F 09 BF */ lbz r0, 0x9bf(r31) -/* 8016F5E4 0016C544 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 8016F5E8 0016C548 98 1F 09 BF */ stb r0, 0x9bf(r31) -/* 8016F5EC 0016C54C 48 00 04 0C */ b lbl_8016F9F8 -lbl_8016F5F0: -/* 8016F5F0 0016C550 80 1F 05 68 */ lwz r0, 0x568(r31) -/* 8016F5F4 0016C554 2C 00 00 02 */ cmpwi r0, 2 -/* 8016F5F8 0016C558 41 82 02 10 */ beq lbl_8016F808 -/* 8016F5FC 0016C55C 40 80 03 FC */ bge lbl_8016F9F8 -/* 8016F600 0016C560 2C 00 00 01 */ cmpwi r0, 1 -/* 8016F604 0016C564 40 80 00 08 */ bge lbl_8016F60C -/* 8016F608 0016C568 48 00 03 F0 */ b lbl_8016F9F8 -lbl_8016F60C: -/* 8016F60C 0016C56C 80 BF 04 50 */ lwz r5, 0x450(r31) -/* 8016F610 0016C570 80 05 02 B8 */ lwz r0, 0x2b8(r5) -/* 8016F614 0016C574 2C 00 00 0C */ cmpwi r0, 0xc -/* 8016F618 0016C578 40 82 00 34 */ bne lbl_8016F64C -/* 8016F61C 0016C57C 7C A3 2B 78 */ mr r3, r5 -/* 8016F620 0016C580 4B FC B2 99 */ bl GetAnimTimeRemaining__15CBodyControllerCFv -/* 8016F624 0016C584 D0 3F 07 F4 */ stfs f1, 0x7f4(r31) -/* 8016F628 0016C588 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016F62C 0016C58C C0 3F 07 F4 */ lfs f1, 0x7f4(r31) -/* 8016F630 0016C590 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8016F634 0016C594 40 81 00 0C */ ble lbl_8016F640 -/* 8016F638 0016C598 38 00 00 02 */ li r0, 2 -/* 8016F63C 0016C59C 48 00 00 08 */ b lbl_8016F644 -lbl_8016F640: -/* 8016F640 0016C5A0 38 00 00 03 */ li r0, 3 -lbl_8016F644: -/* 8016F644 0016C5A4 90 1F 05 68 */ stw r0, 0x568(r31) -/* 8016F648 0016C5A8 48 00 03 B0 */ b lbl_8016F9F8 -lbl_8016F64C: -/* 8016F64C 0016C5AC 81 83 00 00 */ lwz r12, 0(r3) -/* 8016F650 0016C5B0 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) -/* 8016F654 0016C5B4 81 8C 01 8C */ lwz r12, 0x18c(r12) -/* 8016F658 0016C5B8 7D 89 03 A6 */ mtctr r12 -/* 8016F65C 0016C5BC 4E 80 04 21 */ bctrl -/* 8016F660 0016C5C0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016F664 0016C5C4 41 82 00 D4 */ beq lbl_8016F738 -/* 8016F668 0016C5C8 3C C0 80 3E */ lis r6, lbl_803DAA68@ha -/* 8016F66C 0016C5CC 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8016F670 0016C5D0 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) -/* 8016F674 0016C5D4 39 46 AA 68 */ addi r10, r6, lbl_803DAA68@l -/* 8016F678 0016C5D8 3D 00 80 3E */ lis r8, lbl_803DA9F0@ha -/* 8016F67C 0016C5DC 80 81 00 4C */ lwz r4, 0x4c(r1) -/* 8016F680 0016C5E0 38 A0 00 00 */ li r5, 0 -/* 8016F684 0016C5E4 C0 23 00 04 */ lfs f1, 4(r3) -/* 8016F688 0016C5E8 50 A4 F8 00 */ rlwimi r4, r5, 0x1f, 0, 0 -/* 8016F68C 0016C5EC C0 03 00 08 */ lfs f0, 8(r3) -/* 8016F690 0016C5F0 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8016F694 0016C5F4 7C 80 23 78 */ mr r0, r4 -/* 8016F698 0016C5F8 90 81 00 4C */ stw r4, 0x4c(r1) -/* 8016F69C 0016C5FC 39 20 00 0E */ li r9, 0xe -/* 8016F6A0 0016C600 38 E0 00 02 */ li r7, 2 -/* 8016F6A4 0016C604 38 C0 FF FF */ li r6, -1 -/* 8016F6A8 0016C608 50 A0 F0 42 */ rlwimi r0, r5, 0x1e, 1, 1 -/* 8016F6AC 0016C60C 3B E3 00 04 */ addi r31, r3, 4 -/* 8016F6B0 0016C610 91 41 00 30 */ stw r10, 0x30(r1) -/* 8016F6B4 0016C614 39 08 A9 F0 */ addi r8, r8, lbl_803DA9F0@l -/* 8016F6B8 0016C618 7F E3 FB 78 */ mr r3, r31 -/* 8016F6BC 0016C61C 38 80 00 0E */ li r4, 0xe -/* 8016F6C0 0016C620 91 21 00 34 */ stw r9, 0x34(r1) -/* 8016F6C4 0016C624 91 01 00 30 */ stw r8, 0x30(r1) -/* 8016F6C8 0016C628 90 E1 00 38 */ stw r7, 0x38(r1) -/* 8016F6CC 0016C62C D0 41 00 3C */ stfs f2, 0x3c(r1) -/* 8016F6D0 0016C630 D0 21 00 40 */ stfs f1, 0x40(r1) -/* 8016F6D4 0016C634 D0 01 00 44 */ stfs f0, 0x44(r1) -/* 8016F6D8 0016C638 90 C1 00 48 */ stw r6, 0x48(r1) -/* 8016F6DC 0016C63C 90 01 00 4C */ stw r0, 0x4c(r1) -/* 8016F6E0 0016C640 4B FC 1D 59 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8016F6E4 0016C644 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8016F6E8 0016C648 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha -/* 8016F6EC 0016C64C 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l -/* 8016F6F0 0016C650 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 8016F6F4 0016C654 90 1F 01 90 */ stw r0, 0x190(r31) -/* 8016F6F8 0016C658 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 8016F6FC 0016C65C 80 A1 00 38 */ lwz r5, 0x38(r1) -/* 8016F700 0016C660 80 61 00 3C */ lwz r3, 0x3c(r1) -/* 8016F704 0016C664 90 BF 01 94 */ stw r5, 0x194(r31) -/* 8016F708 0016C668 80 A1 00 40 */ lwz r5, 0x40(r1) -/* 8016F70C 0016C66C 90 7F 01 98 */ stw r3, 0x198(r31) -/* 8016F710 0016C670 80 61 00 44 */ lwz r3, 0x44(r1) -/* 8016F714 0016C674 90 BF 01 9C */ stw r5, 0x19c(r31) -/* 8016F718 0016C678 80 A1 00 48 */ lwz r5, 0x48(r1) -/* 8016F71C 0016C67C 90 7F 01 A0 */ stw r3, 0x1a0(r31) -/* 8016F720 0016C680 80 61 00 4C */ lwz r3, 0x4c(r1) -/* 8016F724 0016C684 90 BF 01 A4 */ stw r5, 0x1a4(r31) -/* 8016F728 0016C688 90 81 00 30 */ stw r4, 0x30(r1) -/* 8016F72C 0016C68C 90 7F 01 A8 */ stw r3, 0x1a8(r31) -/* 8016F730 0016C690 90 01 00 30 */ stw r0, 0x30(r1) -/* 8016F734 0016C694 48 00 02 C4 */ b lbl_8016F9F8 -lbl_8016F738: -/* 8016F738 0016C698 3C C0 80 3E */ lis r6, lbl_803DAA68@ha -/* 8016F73C 0016C69C 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8016F740 0016C6A0 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) -/* 8016F744 0016C6A4 39 46 AA 68 */ addi r10, r6, lbl_803DAA68@l -/* 8016F748 0016C6A8 3D 00 80 3E */ lis r8, lbl_803DA9F0@ha -/* 8016F74C 0016C6AC 80 81 00 2C */ lwz r4, 0x2c(r1) -/* 8016F750 0016C6B0 38 A0 00 00 */ li r5, 0 -/* 8016F754 0016C6B4 C0 23 00 04 */ lfs f1, 4(r3) -/* 8016F758 0016C6B8 50 A4 F8 00 */ rlwimi r4, r5, 0x1f, 0, 0 -/* 8016F75C 0016C6BC C0 03 00 08 */ lfs f0, 8(r3) -/* 8016F760 0016C6C0 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8016F764 0016C6C4 7C 80 23 78 */ mr r0, r4 -/* 8016F768 0016C6C8 90 81 00 2C */ stw r4, 0x2c(r1) -/* 8016F76C 0016C6CC 39 20 00 0E */ li r9, 0xe -/* 8016F770 0016C6D0 38 E0 00 07 */ li r7, 7 -/* 8016F774 0016C6D4 38 C0 FF FF */ li r6, -1 -/* 8016F778 0016C6D8 50 A0 F0 42 */ rlwimi r0, r5, 0x1e, 1, 1 -/* 8016F77C 0016C6DC 3B E3 00 04 */ addi r31, r3, 4 -/* 8016F780 0016C6E0 91 41 00 10 */ stw r10, 0x10(r1) -/* 8016F784 0016C6E4 39 08 A9 F0 */ addi r8, r8, lbl_803DA9F0@l -/* 8016F788 0016C6E8 7F E3 FB 78 */ mr r3, r31 -/* 8016F78C 0016C6EC 38 80 00 0E */ li r4, 0xe -/* 8016F790 0016C6F0 91 21 00 14 */ stw r9, 0x14(r1) -/* 8016F794 0016C6F4 91 01 00 10 */ stw r8, 0x10(r1) -/* 8016F798 0016C6F8 90 E1 00 18 */ stw r7, 0x18(r1) -/* 8016F79C 0016C6FC D0 41 00 1C */ stfs f2, 0x1c(r1) -/* 8016F7A0 0016C700 D0 21 00 20 */ stfs f1, 0x20(r1) -/* 8016F7A4 0016C704 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 8016F7A8 0016C708 90 C1 00 28 */ stw r6, 0x28(r1) -/* 8016F7AC 0016C70C 90 01 00 2C */ stw r0, 0x2c(r1) -/* 8016F7B0 0016C710 4B FC 1C 89 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8016F7B4 0016C714 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8016F7B8 0016C718 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha -/* 8016F7BC 0016C71C 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l -/* 8016F7C0 0016C720 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 8016F7C4 0016C724 90 1F 01 90 */ stw r0, 0x190(r31) -/* 8016F7C8 0016C728 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 8016F7CC 0016C72C 80 A1 00 18 */ lwz r5, 0x18(r1) -/* 8016F7D0 0016C730 80 61 00 1C */ lwz r3, 0x1c(r1) -/* 8016F7D4 0016C734 90 BF 01 94 */ stw r5, 0x194(r31) -/* 8016F7D8 0016C738 80 A1 00 20 */ lwz r5, 0x20(r1) -/* 8016F7DC 0016C73C 90 7F 01 98 */ stw r3, 0x198(r31) -/* 8016F7E0 0016C740 80 61 00 24 */ lwz r3, 0x24(r1) -/* 8016F7E4 0016C744 90 BF 01 9C */ stw r5, 0x19c(r31) -/* 8016F7E8 0016C748 80 A1 00 28 */ lwz r5, 0x28(r1) -/* 8016F7EC 0016C74C 90 7F 01 A0 */ stw r3, 0x1a0(r31) -/* 8016F7F0 0016C750 80 61 00 2C */ lwz r3, 0x2c(r1) -/* 8016F7F4 0016C754 90 BF 01 A4 */ stw r5, 0x1a4(r31) -/* 8016F7F8 0016C758 90 81 00 10 */ stw r4, 0x10(r1) -/* 8016F7FC 0016C75C 90 7F 01 A8 */ stw r3, 0x1a8(r31) -/* 8016F800 0016C760 90 01 00 10 */ stw r0, 0x10(r1) -/* 8016F804 0016C764 48 00 01 F4 */ b lbl_8016F9F8 -lbl_8016F808: -/* 8016F808 0016C768 80 BF 04 50 */ lwz r5, 0x450(r31) -/* 8016F80C 0016C76C 80 05 02 B8 */ lwz r0, 0x2b8(r5) -/* 8016F810 0016C770 2C 00 00 0C */ cmpwi r0, 0xc -/* 8016F814 0016C774 41 82 00 10 */ beq lbl_8016F824 -/* 8016F818 0016C778 38 00 00 03 */ li r0, 3 -/* 8016F81C 0016C77C 90 1F 05 68 */ stw r0, 0x568(r31) -/* 8016F820 0016C780 48 00 01 D8 */ b lbl_8016F9F8 -lbl_8016F824: -/* 8016F824 0016C784 88 05 03 00 */ lbz r0, 0x300(r5) -/* 8016F828 0016C788 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f -/* 8016F82C 0016C78C 40 82 01 CC */ bne lbl_8016F9F8 -/* 8016F830 0016C790 81 83 00 00 */ lwz r12, 0(r3) -/* 8016F834 0016C794 C0 22 A0 D8 */ lfs f1, lbl_805ABDF8@sda21(r2) -/* 8016F838 0016C798 81 8C 02 30 */ lwz r12, 0x230(r12) -/* 8016F83C 0016C79C 7D 89 03 A6 */ mtctr r12 -/* 8016F840 0016C7A0 4E 80 04 21 */ bctrl -/* 8016F844 0016C7A4 7C 7E 1B 78 */ mr r30, r3 -/* 8016F848 0016C7A8 7F E3 FB 78 */ mr r3, r31 -/* 8016F84C 0016C7AC 81 9F 00 00 */ lwz r12, 0(r31) -/* 8016F850 0016C7B0 7F A4 EB 78 */ mr r4, r29 -/* 8016F854 0016C7B4 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) -/* 8016F858 0016C7B8 81 8C 01 8C */ lwz r12, 0x18c(r12) -/* 8016F85C 0016C7BC 7D 89 03 A6 */ mtctr r12 -/* 8016F860 0016C7C0 4E 80 04 21 */ bctrl -/* 8016F864 0016C7C4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016F868 0016C7C8 40 82 00 0C */ bne lbl_8016F874 -/* 8016F86C 0016C7CC 57 C0 06 3F */ clrlwi. r0, r30, 0x18 -/* 8016F870 0016C7D0 41 82 01 88 */ beq lbl_8016F9F8 -lbl_8016F874: -/* 8016F874 0016C7D4 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8016F878 0016C7D8 4B FC B0 41 */ bl GetAnimTimeRemaining__15CBodyControllerCFv -/* 8016F87C 0016C7DC FF E0 08 90 */ fmr f31, f1 -/* 8016F880 0016C7E0 C0 1F 07 F4 */ lfs f0, 0x7f4(r31) -/* 8016F884 0016C7E4 C0 22 A0 98 */ lfs f1, lbl_805ABDB8@sda21(r2) -/* 8016F888 0016C7E8 38 81 00 0C */ addi r4, r1, 0xc -/* 8016F88C 0016C7EC 38 6D 8D B8 */ addi r3, r13, lbl_805A7978@sda21 -/* 8016F890 0016C7F0 38 AD 8D BC */ addi r5, r13, lbl_805A797C@sda21 -/* 8016F894 0016C7F4 EC 1F 00 24 */ fdivs f0, f31, f0 -/* 8016F898 0016C7F8 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8016F89C 0016C7FC D0 01 00 0C */ stfs f0, 0xc(r1) -/* 8016F8A0 0016C800 4B E9 CA 15 */ bl "Clamp__5CMathFRCfRCfRCf" -/* 8016F8A4 0016C804 C0 23 00 00 */ lfs f1, 0(r3) -/* 8016F8A8 0016C808 C0 02 A0 AC */ lfs f0, lbl_805ABDCC@sda21(r2) -/* 8016F8AC 0016C80C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8016F8B0 0016C810 40 80 00 48 */ bge lbl_8016F8F8 -/* 8016F8B4 0016C814 EC 21 00 24 */ fdivs f1, f1, f0 -/* 8016F8B8 0016C818 C0 42 A0 88 */ lfs f2, lbl_805ABDA8@sda21(r2) -/* 8016F8BC 0016C81C C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) -/* 8016F8C0 0016C820 38 81 00 08 */ addi r4, r1, 8 -/* 8016F8C4 0016C824 38 6D 8D C0 */ addi r3, r13, lbl_805A7980@sda21 -/* 8016F8C8 0016C828 38 AD 8D C4 */ addi r5, r13, lbl_805A7984@sda21 -/* 8016F8CC 0016C82C EC 02 00 7C */ fnmsubs f0, f2, f1, f0 -/* 8016F8D0 0016C830 D0 01 00 08 */ stfs f0, 8(r1) -/* 8016F8D4 0016C834 4B E9 C9 E1 */ bl "Clamp__5CMathFRCfRCfRCf" -/* 8016F8D8 0016C838 C0 63 00 00 */ lfs f3, 0(r3) -/* 8016F8DC 0016C83C C0 5F 07 DC */ lfs f2, 0x7dc(r31) -/* 8016F8E0 0016C840 C0 3F 07 E0 */ lfs f1, 0x7e0(r31) -/* 8016F8E4 0016C844 C0 1F 07 E4 */ lfs f0, 0x7e4(r31) -/* 8016F8E8 0016C848 EF E3 00 B2 */ fmuls f31, f3, f2 -/* 8016F8EC 0016C84C EF A3 00 72 */ fmuls f29, f3, f1 -/* 8016F8F0 0016C850 EF 83 00 32 */ fmuls f28, f3, f0 -/* 8016F8F4 0016C854 48 00 00 74 */ b lbl_8016F968 -lbl_8016F8F8: -/* 8016F8F8 0016C858 C0 42 A0 A8 */ lfs f2, lbl_805ABDC8@sda21(r2) -/* 8016F8FC 0016C85C C0 3F 07 F4 */ lfs f1, 0x7f4(r31) -/* 8016F900 0016C860 C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) -/* 8016F904 0016C864 ED 02 00 72 */ fmuls f8, f2, f1 -/* 8016F908 0016C868 C0 C2 A0 88 */ lfs f6, lbl_805ABDA8@sda21(r2) -/* 8016F90C 0016C86C C0 BF 07 DC */ lfs f5, 0x7dc(r31) -/* 8016F910 0016C870 C0 9F 07 E0 */ lfs f4, 0x7e0(r31) -/* 8016F914 0016C874 EC E0 40 24 */ fdivs f7, f0, f8 -/* 8016F918 0016C878 C0 7F 07 E4 */ lfs f3, 0x7e4(r31) -/* 8016F91C 0016C87C C0 5F 07 D0 */ lfs f2, 0x7d0(r31) -/* 8016F920 0016C880 C0 3F 07 D4 */ lfs f1, 0x7d4(r31) -/* 8016F924 0016C884 C0 1F 07 D8 */ lfs f0, 0x7d8(r31) -/* 8016F928 0016C888 EC A6 01 72 */ fmuls f5, f6, f5 -/* 8016F92C 0016C88C EC 86 01 32 */ fmuls f4, f6, f4 -/* 8016F930 0016C890 EC 66 00 F2 */ fmuls f3, f6, f3 -/* 8016F934 0016C894 EC 42 28 28 */ fsubs f2, f2, f5 -/* 8016F938 0016C898 EC 21 20 28 */ fsubs f1, f1, f4 -/* 8016F93C 0016C89C EC 00 18 28 */ fsubs f0, f0, f3 -/* 8016F940 0016C8A0 EC C8 F8 28 */ fsubs f6, f8, f31 -/* 8016F944 0016C8A4 EC 47 00 B2 */ fmuls f2, f7, f2 -/* 8016F948 0016C8A8 EC 27 00 72 */ fmuls f1, f7, f1 -/* 8016F94C 0016C8AC EC 07 00 32 */ fmuls f0, f7, f0 -/* 8016F950 0016C8B0 EC 46 00 B2 */ fmuls f2, f6, f2 -/* 8016F954 0016C8B4 EC 26 00 72 */ fmuls f1, f6, f1 -/* 8016F958 0016C8B8 EC 06 00 32 */ fmuls f0, f6, f0 -/* 8016F95C 0016C8BC EF E5 10 2A */ fadds f31, f5, f2 -/* 8016F960 0016C8C0 EF A4 08 2A */ fadds f29, f4, f1 -/* 8016F964 0016C8C4 EF 83 00 2A */ fadds f28, f3, f0 -lbl_8016F968: -/* 8016F968 0016C8C8 57 C0 06 3F */ clrlwi. r0, r30, 0x18 -/* 8016F96C 0016C8CC 41 82 00 14 */ beq lbl_8016F980 -/* 8016F970 0016C8D0 FC 20 F0 90 */ fmr f1, f30 -/* 8016F974 0016C8D4 7F E3 FB 78 */ mr r3, r31 -/* 8016F978 0016C8D8 7F A4 EB 78 */ mr r4, r29 -/* 8016F97C 0016C8DC 4B FF D9 F5 */ bl sub_8016d370 -lbl_8016F980: -/* 8016F980 0016C8E0 80 9F 00 64 */ lwz r4, 0x64(r31) -/* 8016F984 0016C8E4 7F E3 FB 78 */ mr r3, r31 -/* 8016F988 0016C8E8 D3 E4 00 00 */ stfs f31, 0(r4) -/* 8016F98C 0016C8EC D3 A4 00 04 */ stfs f29, 4(r4) -/* 8016F990 0016C8F0 D3 84 00 08 */ stfs f28, 8(r4) -/* 8016F994 0016C8F4 48 00 1D 31 */ bl sub_801716c4 -/* 8016F998 0016C8F8 48 00 00 60 */ b lbl_8016F9F8 -lbl_8016F99C: -/* 8016F99C 0016C8FC C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) -/* 8016F9A0 0016C900 38 A0 00 00 */ li r5, 0 -/* 8016F9A4 0016C904 D0 3F 07 F4 */ stfs f1, 0x7f4(r31) -/* 8016F9A8 0016C908 88 1F 09 BF */ lbz r0, 0x9bf(r31) -/* 8016F9AC 0016C90C 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 -/* 8016F9B0 0016C910 98 1F 09 BF */ stb r0, 0x9bf(r31) -/* 8016F9B4 0016C914 81 83 00 00 */ lwz r12, 0(r3) -/* 8016F9B8 0016C918 81 8C 01 8C */ lwz r12, 0x18c(r12) -/* 8016F9BC 0016C91C 7D 89 03 A6 */ mtctr r12 -/* 8016F9C0 0016C920 4E 80 04 21 */ bctrl -/* 8016F9C4 0016C924 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016F9C8 0016C928 41 82 00 28 */ beq lbl_8016F9F0 -/* 8016F9CC 0016C92C C0 1F 07 F8 */ lfs f0, 0x7f8(r31) -/* 8016F9D0 0016C930 D0 1F 07 FC */ stfs f0, 0x7fc(r31) -/* 8016F9D4 0016C934 80 7F 00 64 */ lwz r3, 0x64(r31) -/* 8016F9D8 0016C938 C0 1F 07 D0 */ lfs f0, 0x7d0(r31) -/* 8016F9DC 0016C93C D0 03 00 00 */ stfs f0, 0(r3) -/* 8016F9E0 0016C940 C0 1F 07 D4 */ lfs f0, 0x7d4(r31) -/* 8016F9E4 0016C944 D0 03 00 04 */ stfs f0, 4(r3) -/* 8016F9E8 0016C948 C0 1F 07 D8 */ lfs f0, 0x7d8(r31) -/* 8016F9EC 0016C94C D0 03 00 08 */ stfs f0, 8(r3) -lbl_8016F9F0: -/* 8016F9F0 0016C950 7F E3 FB 78 */ mr r3, r31 -/* 8016F9F4 0016C954 48 00 1C D1 */ bl sub_801716c4 -lbl_8016F9F8: -/* 8016F9F8 0016C958 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 -/* 8016F9FC 0016C95C CB E1 00 90 */ lfd f31, 0x90(r1) -/* 8016FA00 0016C960 E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 -/* 8016FA04 0016C964 CB C1 00 80 */ lfd f30, 0x80(r1) -/* 8016FA08 0016C968 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0 -/* 8016FA0C 0016C96C CB A1 00 70 */ lfd f29, 0x70(r1) -/* 8016FA10 0016C970 E3 81 00 68 */ psq_l f28, 104(r1), 0, qr0 -/* 8016FA14 0016C974 CB 81 00 60 */ lfd f28, 0x60(r1) -/* 8016FA18 0016C978 83 E1 00 5C */ lwz r31, 0x5c(r1) -/* 8016FA1C 0016C97C 83 C1 00 58 */ lwz r30, 0x58(r1) -/* 8016FA20 0016C980 80 01 00 A4 */ lwz r0, 0xa4(r1) -/* 8016FA24 0016C984 83 A1 00 54 */ lwz r29, 0x54(r1) -/* 8016FA28 0016C988 7C 08 03 A6 */ mtlr r0 -/* 8016FA2C 0016C98C 38 21 00 A0 */ addi r1, r1, 0xa0 -/* 8016FA30 0016C990 4E 80 00 20 */ blr - -.global TargetPatrol__8CMetroidFR13CStateManager9EStateMsgf -TargetPatrol__8CMetroidFR13CStateManager9EStateMsgf: -/* 8016FA34 0016C994 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8016FA38 0016C998 7C 08 02 A6 */ mflr r0 -/* 8016FA3C 0016C99C 90 01 00 34 */ stw r0, 0x34(r1) -/* 8016FA40 0016C9A0 DB E1 00 20 */ stfd f31, 0x20(r1) -/* 8016FA44 0016C9A4 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 -/* 8016FA48 0016C9A8 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8016FA4C 0016C9AC 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8016FA50 0016C9B0 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8016FA54 0016C9B4 7C BF 2B 78 */ mr r31, r5 -/* 8016FA58 0016C9B8 FF E0 08 90 */ fmr f31, f1 -/* 8016FA5C 0016C9BC 2C 1F 00 01 */ cmpwi r31, 1 -/* 8016FA60 0016C9C0 7C 7D 1B 78 */ mr r29, r3 -/* 8016FA64 0016C9C4 7C 9E 23 78 */ mr r30, r4 -/* 8016FA68 0016C9C8 41 82 00 D8 */ beq lbl_8016FB40 -/* 8016FA6C 0016C9CC 40 80 01 4C */ bge lbl_8016FBB8 -/* 8016FA70 0016C9D0 2C 1F 00 00 */ cmpwi r31, 0 -/* 8016FA74 0016C9D4 40 80 00 08 */ bge lbl_8016FA7C -/* 8016FA78 0016C9D8 48 00 01 40 */ b lbl_8016FBB8 -lbl_8016FA7C: -/* 8016FA7C 0016C9DC 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 8016FA80 0016C9E0 38 80 00 01 */ li r4, 1 -/* 8016FA84 0016C9E4 4B FC AF 55 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -/* 8016FA88 0016C9E8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016FA8C 0016C9EC 38 A0 00 00 */ li r5, 0 -/* 8016FA90 0016C9F0 7F A3 EB 78 */ mr r3, r29 -/* 8016FA94 0016C9F4 7F C4 F3 78 */ mr r4, r30 -/* 8016FA98 0016C9F8 B0 1D 07 B0 */ sth r0, 0x7b0(r29) -/* 8016FA9C 0016C9FC C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) -/* 8016FAA0 0016CA00 88 1D 09 BF */ lbz r0, 0x9bf(r29) -/* 8016FAA4 0016CA04 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a -/* 8016FAA8 0016CA08 98 1D 09 BF */ stb r0, 0x9bf(r29) -/* 8016FAAC 0016CA0C 81 9D 00 00 */ lwz r12, 0(r29) -/* 8016FAB0 0016CA10 81 8C 01 C0 */ lwz r12, 0x1c0(r12) -/* 8016FAB4 0016CA14 7D 89 03 A6 */ mtctr r12 -/* 8016FAB8 0016CA18 4E 80 04 21 */ bctrl -/* 8016FABC 0016CA1C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016FAC0 0016CA20 41 82 00 28 */ beq lbl_8016FAE8 -/* 8016FAC4 0016CA24 FC 20 F8 90 */ fmr f1, f31 -/* 8016FAC8 0016CA28 7F A3 EB 78 */ mr r3, r29 -/* 8016FACC 0016CA2C 7F C4 F3 78 */ mr r4, r30 -/* 8016FAD0 0016CA30 7F E5 FB 78 */ mr r5, r31 -/* 8016FAD4 0016CA34 48 08 73 A1 */ bl Patrol__10CPatternedFR13CStateManager9EStateMsgf -/* 8016FAD8 0016CA38 7F A3 EB 78 */ mr r3, r29 -/* 8016FADC 0016CA3C 7F C4 F3 78 */ mr r4, r30 -/* 8016FAE0 0016CA40 48 08 57 B1 */ bl UpdateDest__10CPatternedFR13CStateManager -/* 8016FAE4 0016CA44 48 00 00 10 */ b lbl_8016FAF4 -lbl_8016FAE8: -/* 8016FAE8 0016CA48 7F A3 EB 78 */ mr r3, r29 -/* 8016FAEC 0016CA4C 38 9D 03 A0 */ addi r4, r29, 0x3a0 -/* 8016FAF0 0016CA50 4B F0 D0 6D */ bl SetDestPos__10CPatternedFRC9CVector3f -lbl_8016FAF4: -/* 8016FAF4 0016CA54 C0 1D 02 E0 */ lfs f0, 0x2e0(r29) -/* 8016FAF8 0016CA58 7F A3 EB 78 */ mr r3, r29 -/* 8016FAFC 0016CA5C D0 1D 07 A4 */ stfs f0, 0x7a4(r29) -/* 8016FB00 0016CA60 C0 1D 02 E4 */ lfs f0, 0x2e4(r29) -/* 8016FB04 0016CA64 D0 1D 07 A8 */ stfs f0, 0x7a8(r29) -/* 8016FB08 0016CA68 C0 1D 02 E8 */ lfs f0, 0x2e8(r29) -/* 8016FB0C 0016CA6C D0 1D 07 AC */ stfs f0, 0x7ac(r29) -/* 8016FB10 0016CA70 81 9D 00 00 */ lwz r12, 0(r29) -/* 8016FB14 0016CA74 81 8C 02 AC */ lwz r12, 0x2ac(r12) -/* 8016FB18 0016CA78 7D 89 03 A6 */ mtctr r12 -/* 8016FB1C 0016CA7C 4E 80 04 21 */ bctrl -/* 8016FB20 0016CA80 28 03 00 00 */ cmplwi r3, 0 -/* 8016FB24 0016CA84 41 82 00 94 */ beq lbl_8016FBB8 -/* 8016FB28 0016CA88 FC 20 F8 90 */ fmr f1, f31 -/* 8016FB2C 0016CA8C 7F A3 EB 78 */ mr r3, r29 -/* 8016FB30 0016CA90 7F C4 F3 78 */ mr r4, r30 -/* 8016FB34 0016CA94 7F E5 FB 78 */ mr r5, r31 -/* 8016FB38 0016CA98 48 08 6B 95 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf -/* 8016FB3C 0016CA9C 48 00 00 7C */ b lbl_8016FBB8 -lbl_8016FB40: -/* 8016FB40 0016CAA0 81 83 00 00 */ lwz r12, 0(r3) -/* 8016FB44 0016CAA4 81 8C 02 AC */ lwz r12, 0x2ac(r12) -/* 8016FB48 0016CAA8 7D 89 03 A6 */ mtctr r12 -/* 8016FB4C 0016CAAC 4E 80 04 21 */ bctrl -/* 8016FB50 0016CAB0 28 03 00 00 */ cmplwi r3, 0 -/* 8016FB54 0016CAB4 41 82 00 40 */ beq lbl_8016FB94 -/* 8016FB58 0016CAB8 7F A3 EB 78 */ mr r3, r29 -/* 8016FB5C 0016CABC 7F C4 F3 78 */ mr r4, r30 -/* 8016FB60 0016CAC0 81 9D 00 00 */ lwz r12, 0(r29) -/* 8016FB64 0016CAC4 C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) -/* 8016FB68 0016CAC8 81 8C 01 90 */ lwz r12, 0x190(r12) -/* 8016FB6C 0016CACC 7D 89 03 A6 */ mtctr r12 -/* 8016FB70 0016CAD0 4E 80 04 21 */ bctrl -/* 8016FB74 0016CAD4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8016FB78 0016CAD8 40 82 00 1C */ bne lbl_8016FB94 -/* 8016FB7C 0016CADC FC 20 F8 90 */ fmr f1, f31 -/* 8016FB80 0016CAE0 7F A3 EB 78 */ mr r3, r29 -/* 8016FB84 0016CAE4 7F C4 F3 78 */ mr r4, r30 -/* 8016FB88 0016CAE8 7F E5 FB 78 */ mr r5, r31 -/* 8016FB8C 0016CAEC 48 08 6B 41 */ bl PathFind__10CPatternedFR13CStateManager9EStateMsgf -/* 8016FB90 0016CAF0 48 00 00 18 */ b lbl_8016FBA8 -lbl_8016FB94: -/* 8016FB94 0016CAF4 FC 20 F8 90 */ fmr f1, f31 -/* 8016FB98 0016CAF8 7F A3 EB 78 */ mr r3, r29 -/* 8016FB9C 0016CAFC 7F C4 F3 78 */ mr r4, r30 -/* 8016FBA0 0016CB00 7F E5 FB 78 */ mr r5, r31 -/* 8016FBA4 0016CB04 48 08 72 D1 */ bl Patrol__10CPatternedFR13CStateManager9EStateMsgf -lbl_8016FBA8: -/* 8016FBA8 0016CB08 C0 22 A0 F0 */ lfs f1, lbl_805ABE10@sda21(r2) -/* 8016FBAC 0016CB0C 7F A3 EB 78 */ mr r3, r29 -/* 8016FBB0 0016CB10 7F C4 F3 78 */ mr r4, r30 -/* 8016FBB4 0016CB14 4B FF DC C1 */ bl sub_8016d874 -lbl_8016FBB8: -/* 8016FBB8 0016CB18 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 -/* 8016FBBC 0016CB1C 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8016FBC0 0016CB20 CB E1 00 20 */ lfd f31, 0x20(r1) -/* 8016FBC4 0016CB24 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8016FBC8 0016CB28 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8016FBCC 0016CB2C 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 8016FBD0 0016CB30 7C 08 03 A6 */ mtlr r0 -/* 8016FBD4 0016CB34 38 21 00 30 */ addi r1, r1, 0x30 -/* 8016FBD8 0016CB38 4E 80 00 20 */ blr - -.global Patrol__8CMetroidFR13CStateManager9EStateMsgf -Patrol__8CMetroidFR13CStateManager9EStateMsgf: -/* 8016FBDC 0016CB3C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8016FBE0 0016CB40 7C 08 02 A6 */ mflr r0 -/* 8016FBE4 0016CB44 90 01 00 24 */ stw r0, 0x24(r1) -/* 8016FBE8 0016CB48 DB E1 00 18 */ stfd f31, 0x18(r1) -/* 8016FBEC 0016CB4C FF E0 08 90 */ fmr f31, f1 -/* 8016FBF0 0016CB50 93 E1 00 14 */ stw r31, 0x14(r1) -/* 8016FBF4 0016CB54 7C BF 2B 79 */ or. r31, r5, r5 -/* 8016FBF8 0016CB58 93 C1 00 10 */ stw r30, 0x10(r1) -/* 8016FBFC 0016CB5C 7C 9E 23 78 */ mr r30, r4 -/* 8016FC00 0016CB60 93 A1 00 0C */ stw r29, 0xc(r1) -/* 8016FC04 0016CB64 7C 7D 1B 78 */ mr r29, r3 -/* 8016FC08 0016CB68 41 82 00 08 */ beq lbl_8016FC10 -/* 8016FC0C 0016CB6C 48 00 00 28 */ b lbl_8016FC34 -lbl_8016FC10: -/* 8016FC10 0016CB70 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 8016FC14 0016CB74 38 80 00 01 */ li r4, 1 -/* 8016FC18 0016CB78 4B FC AD C1 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -/* 8016FC1C 0016CB7C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016FC20 0016CB80 38 60 00 00 */ li r3, 0 -/* 8016FC24 0016CB84 B0 1D 07 B0 */ sth r0, 0x7b0(r29) -/* 8016FC28 0016CB88 88 1D 09 BF */ lbz r0, 0x9bf(r29) -/* 8016FC2C 0016CB8C 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 8016FC30 0016CB90 98 1D 09 BF */ stb r0, 0x9bf(r29) -lbl_8016FC34: -/* 8016FC34 0016CB94 FC 20 F8 90 */ fmr f1, f31 -/* 8016FC38 0016CB98 7F A3 EB 78 */ mr r3, r29 -/* 8016FC3C 0016CB9C 7F C4 F3 78 */ mr r4, r30 -/* 8016FC40 0016CBA0 7F E5 FB 78 */ mr r5, r31 -/* 8016FC44 0016CBA4 48 08 72 31 */ bl Patrol__10CPatternedFR13CStateManager9EStateMsgf -/* 8016FC48 0016CBA8 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8016FC4C 0016CBAC CB E1 00 18 */ lfd f31, 0x18(r1) -/* 8016FC50 0016CBB0 83 E1 00 14 */ lwz r31, 0x14(r1) -/* 8016FC54 0016CBB4 83 C1 00 10 */ lwz r30, 0x10(r1) -/* 8016FC58 0016CBB8 83 A1 00 0C */ lwz r29, 0xc(r1) -/* 8016FC5C 0016CBBC 7C 08 03 A6 */ mtlr r0 -/* 8016FC60 0016CBC0 38 21 00 20 */ addi r1, r1, 0x20 -/* 8016FC64 0016CBC4 4E 80 00 20 */ blr - -.global ShouldDodge__8CMetroidFR13CStateManagerf -ShouldDodge__8CMetroidFR13CStateManagerf: -/* 8016FC68 0016CBC8 94 21 F7 50 */ stwu r1, -0x8b0(r1) -/* 8016FC6C 0016CBCC 7C 08 02 A6 */ mflr r0 -/* 8016FC70 0016CBD0 90 01 08 B4 */ stw r0, 0x8b4(r1) -/* 8016FC74 0016CBD4 93 E1 08 AC */ stw r31, 0x8ac(r1) -/* 8016FC78 0016CBD8 7C 9F 23 78 */ mr r31, r4 -/* 8016FC7C 0016CBDC 93 C1 08 A8 */ stw r30, 0x8a8(r1) -/* 8016FC80 0016CBE0 7C 7E 1B 78 */ mr r30, r3 -/* 8016FC84 0016CBE4 93 A1 08 A4 */ stw r29, 0x8a4(r1) -/* 8016FC88 0016CBE8 93 81 08 A0 */ stw r28, 0x8a0(r1) -/* 8016FC8C 0016CBEC 80 03 03 FC */ lwz r0, 0x3fc(r3) -/* 8016FC90 0016CBF0 2C 00 00 02 */ cmpwi r0, 2 -/* 8016FC94 0016CBF4 41 82 02 BC */ beq lbl_8016FF50 -/* 8016FC98 0016CBF8 80 9F 08 4C */ lwz r4, 0x84c(r31) -/* 8016FC9C 0016CBFC A0 7E 07 B0 */ lhz r3, 0x7b0(r30) -/* 8016FCA0 0016CC00 A0 04 00 08 */ lhz r0, 8(r4) -/* 8016FCA4 0016CC04 7C 03 00 40 */ cmplw r3, r0 -/* 8016FCA8 0016CC08 40 82 02 A8 */ bne lbl_8016FF50 -/* 8016FCAC 0016CC0C 80 7E 00 04 */ lwz r3, 4(r30) -/* 8016FCB0 0016CC10 80 04 00 04 */ lwz r0, 4(r4) -/* 8016FCB4 0016CC14 7C 03 00 00 */ cmpw r3, r0 -/* 8016FCB8 0016CC18 40 82 02 98 */ bne lbl_8016FF50 -/* 8016FCBC 0016CC1C A0 DE 00 08 */ lhz r6, 8(r30) -/* 8016FCC0 0016CC20 7F E3 FB 78 */ mr r3, r31 -/* 8016FCC4 0016CC24 38 81 00 14 */ addi r4, r1, 0x14 -/* 8016FCC8 0016CC28 38 A1 00 10 */ addi r5, r1, 0x10 -/* 8016FCCC 0016CC2C B0 C1 00 10 */ sth r6, 0x10(r1) -/* 8016FCD0 0016CC30 A0 1E 06 98 */ lhz r0, 0x698(r30) -/* 8016FCD4 0016CC34 B0 C1 00 0C */ sth r6, 0xc(r1) -/* 8016FCD8 0016CC38 B0 01 00 14 */ sth r0, 0x14(r1) -/* 8016FCDC 0016CC3C 48 0C A4 A5 */ bl GetTeamAiRole__10CTeamAiMgrCFRC13CStateManager9TUniqueId9TUniqueId -/* 8016FCE0 0016CC40 28 03 00 00 */ cmplwi r3, 0 -/* 8016FCE4 0016CC44 41 82 02 6C */ beq lbl_8016FF50 -/* 8016FCE8 0016CC48 80 03 00 10 */ lwz r0, 0x10(r3) -/* 8016FCEC 0016CC4C 2C 00 00 01 */ cmpwi r0, 1 -/* 8016FCF0 0016CC50 40 82 02 60 */ bne lbl_8016FF50 -/* 8016FCF4 0016CC54 C0 FE 00 60 */ lfs f7, 0x60(r30) -/* 8016FCF8 0016CC58 38 61 00 80 */ addi r3, r1, 0x80 -/* 8016FCFC 0016CC5C C0 A2 A0 F0 */ lfs f5, lbl_805ABE10@sda21(r2) -/* 8016FD00 0016CC60 38 81 00 2C */ addi r4, r1, 0x2c -/* 8016FD04 0016CC64 C0 DE 00 50 */ lfs f6, 0x50(r30) -/* 8016FD08 0016CC68 38 A1 00 20 */ addi r5, r1, 0x20 -/* 8016FD0C 0016CC6C C0 3E 00 40 */ lfs f1, 0x40(r30) -/* 8016FD10 0016CC70 EC 07 28 2A */ fadds f0, f7, f5 -/* 8016FD14 0016CC74 EC 66 28 2A */ fadds f3, f6, f5 -/* 8016FD18 0016CC78 EC 81 28 2A */ fadds f4, f1, f5 -/* 8016FD1C 0016CC7C EC 41 28 28 */ fsubs f2, f1, f5 -/* 8016FD20 0016CC80 D0 01 00 28 */ stfs f0, 0x28(r1) -/* 8016FD24 0016CC84 EC 26 28 28 */ fsubs f1, f6, f5 -/* 8016FD28 0016CC88 EC 07 28 28 */ fsubs f0, f7, f5 -/* 8016FD2C 0016CC8C D0 81 00 20 */ stfs f4, 0x20(r1) -/* 8016FD30 0016CC90 D0 61 00 24 */ stfs f3, 0x24(r1) -/* 8016FD34 0016CC94 D0 41 00 2C */ stfs f2, 0x2c(r1) -/* 8016FD38 0016CC98 D0 21 00 30 */ stfs f1, 0x30(r1) -/* 8016FD3C 0016CC9C D0 01 00 34 */ stfs f0, 0x34(r1) -/* 8016FD40 0016CCA0 48 1C 87 C9 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 8016FD44 0016CCA4 38 00 00 00 */ li r0, 0 -/* 8016FD48 0016CCA8 80 AD 8D B4 */ lwz r5, lbl_805A7974@sda21(r13) -/* 8016FD4C 0016CCAC 90 01 00 98 */ stw r0, 0x98(r1) -/* 8016FD50 0016CCB0 38 60 00 00 */ li r3, 0 -/* 8016FD54 0016CCB4 38 80 00 01 */ li r4, 1 -/* 8016FD58 0016CCB8 48 21 A1 9D */ bl __shl2i -/* 8016FD5C 0016CCBC 39 00 00 01 */ li r8, 1 -/* 8016FD60 0016CCC0 38 00 00 00 */ li r0, 0 -/* 8016FD64 0016CCC4 90 81 00 6C */ stw r4, 0x6c(r1) -/* 8016FD68 0016CCC8 38 81 00 98 */ addi r4, r1, 0x98 -/* 8016FD6C 0016CCCC 38 A1 00 80 */ addi r5, r1, 0x80 -/* 8016FD70 0016CCD0 38 C1 00 68 */ addi r6, r1, 0x68 -/* 8016FD74 0016CCD4 90 61 00 68 */ stw r3, 0x68(r1) -/* 8016FD78 0016CCD8 7F E3 FB 78 */ mr r3, r31 -/* 8016FD7C 0016CCDC 38 E0 00 00 */ li r7, 0 -/* 8016FD80 0016CCE0 91 01 00 60 */ stw r8, 0x60(r1) -/* 8016FD84 0016CCE4 90 01 00 74 */ stw r0, 0x74(r1) -/* 8016FD88 0016CCE8 90 01 00 70 */ stw r0, 0x70(r1) -/* 8016FD8C 0016CCEC 91 01 00 78 */ stw r8, 0x78(r1) -/* 8016FD90 0016CCF0 4B ED C9 91 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" -/* 8016FD94 0016CCF4 80 01 00 98 */ lwz r0, 0x98(r1) -/* 8016FD98 0016CCF8 2C 00 00 00 */ cmpwi r0, 0 -/* 8016FD9C 0016CCFC 40 81 01 60 */ ble lbl_8016FEFC -/* 8016FDA0 0016CD00 C0 5E 00 58 */ lfs f2, 0x58(r30) -/* 8016FDA4 0016CD04 3B A1 00 9C */ addi r29, r1, 0x9c -/* 8016FDA8 0016CD08 C0 3E 00 48 */ lfs f1, 0x48(r30) -/* 8016FDAC 0016CD0C 7F BC EB 78 */ mr r28, r29 -/* 8016FDB0 0016CD10 C0 1E 00 38 */ lfs f0, 0x38(r30) -/* 8016FDB4 0016CD14 D0 01 00 44 */ stfs f0, 0x44(r1) -/* 8016FDB8 0016CD18 D0 21 00 48 */ stfs f1, 0x48(r1) -/* 8016FDBC 0016CD1C D0 41 00 4C */ stfs f2, 0x4c(r1) -/* 8016FDC0 0016CD20 48 00 01 28 */ b lbl_8016FEE8 -lbl_8016FDC4: -/* 8016FDC4 0016CD24 A0 1C 00 00 */ lhz r0, 0(r28) -/* 8016FDC8 0016CD28 7F E3 FB 78 */ mr r3, r31 -/* 8016FDCC 0016CD2C 38 81 00 08 */ addi r4, r1, 8 -/* 8016FDD0 0016CD30 B0 01 00 08 */ sth r0, 8(r1) -/* 8016FDD4 0016CD34 4B ED C7 D1 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8016FDD8 0016CD38 7C 64 1B 78 */ mr r4, r3 -/* 8016FDDC 0016CD3C 38 61 00 18 */ addi r3, r1, 0x18 -/* 8016FDE0 0016CD40 4B F3 D9 2D */ bl "__ct__29TCastToPtr<15CGameProjectile>FP7CEntity" -/* 8016FDE4 0016CD44 80 A3 00 04 */ lwz r5, 4(r3) -/* 8016FDE8 0016CD48 28 05 00 00 */ cmplwi r5, 0 -/* 8016FDEC 0016CD4C 41 82 00 F8 */ beq lbl_8016FEE4 -/* 8016FDF0 0016CD50 80 05 00 E8 */ lwz r0, 0xe8(r5) -/* 8016FDF4 0016CD54 54 00 07 38 */ rlwinm r0, r0, 0, 0x1c, 0x1c -/* 8016FDF8 0016CD58 2C 00 00 08 */ cmpwi r0, 8 -/* 8016FDFC 0016CD5C 40 82 00 E8 */ bne lbl_8016FEE4 -/* 8016FE00 0016CD60 C0 25 00 50 */ lfs f1, 0x50(r5) -/* 8016FE04 0016CD64 38 61 00 44 */ addi r3, r1, 0x44 -/* 8016FE08 0016CD68 C0 1E 00 50 */ lfs f0, 0x50(r30) -/* 8016FE0C 0016CD6C 38 81 00 38 */ addi r4, r1, 0x38 -/* 8016FE10 0016CD70 C0 65 00 60 */ lfs f3, 0x60(r5) -/* 8016FE14 0016CD74 C0 5E 00 60 */ lfs f2, 0x60(r30) -/* 8016FE18 0016CD78 EC 81 00 28 */ fsubs f4, f1, f0 -/* 8016FE1C 0016CD7C C0 25 00 40 */ lfs f1, 0x40(r5) -/* 8016FE20 0016CD80 C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 8016FE24 0016CD84 EC 43 10 28 */ fsubs f2, f3, f2 -/* 8016FE28 0016CD88 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8016FE2C 0016CD8C D0 81 00 3C */ stfs f4, 0x3c(r1) -/* 8016FE30 0016CD90 D0 41 00 40 */ stfs f2, 0x40(r1) -/* 8016FE34 0016CD94 D0 01 00 38 */ stfs f0, 0x38(r1) -/* 8016FE38 0016CD98 48 1A 47 F9 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f -/* 8016FE3C 0016CD9C C0 02 A0 F4 */ lfs f0, lbl_805ABE14@sda21(r2) -/* 8016FE40 0016CDA0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8016FE44 0016CDA4 40 80 00 A0 */ bge lbl_8016FEE4 -/* 8016FE48 0016CDA8 C0 3E 00 44 */ lfs f1, 0x44(r30) -/* 8016FE4C 0016CDAC C0 01 00 3C */ lfs f0, 0x3c(r1) -/* 8016FE50 0016CDB0 C0 5E 00 34 */ lfs f2, 0x34(r30) -/* 8016FE54 0016CDB4 EC 01 00 32 */ fmuls f0, f1, f0 -/* 8016FE58 0016CDB8 C0 21 00 38 */ lfs f1, 0x38(r1) -/* 8016FE5C 0016CDBC C0 9E 00 54 */ lfs f4, 0x54(r30) -/* 8016FE60 0016CDC0 C0 61 00 40 */ lfs f3, 0x40(r1) -/* 8016FE64 0016CDC4 EC 22 00 7A */ fmadds f1, f2, f1, f0 -/* 8016FE68 0016CDC8 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016FE6C 0016CDCC EC 24 08 FA */ fmadds f1, f4, f3, f1 -/* 8016FE70 0016CDD0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8016FE74 0016CDD4 40 81 00 0C */ ble lbl_8016FE80 -/* 8016FE78 0016CDD8 38 00 00 03 */ li r0, 3 -/* 8016FE7C 0016CDDC 48 00 00 08 */ b lbl_8016FE84 -lbl_8016FE80: -/* 8016FE80 0016CDE0 38 00 00 02 */ li r0, 2 -lbl_8016FE84: -/* 8016FE84 0016CDE4 90 1E 08 18 */ stw r0, 0x818(r30) -/* 8016FE88 0016CDE8 38 60 00 00 */ li r3, 0 -/* 8016FE8C 0016CDEC 80 A1 00 98 */ lwz r5, 0x98(r1) -/* 8016FE90 0016CDF0 2C 05 00 00 */ cmpwi r5, 0 -/* 8016FE94 0016CDF4 40 81 00 40 */ ble lbl_8016FED4 -/* 8016FE98 0016CDF8 2C 05 00 08 */ cmpwi r5, 8 -/* 8016FE9C 0016CDFC 38 85 FF F8 */ addi r4, r5, -8 -/* 8016FEA0 0016CE00 40 81 00 20 */ ble lbl_8016FEC0 -/* 8016FEA4 0016CE04 38 04 00 07 */ addi r0, r4, 7 -/* 8016FEA8 0016CE08 54 00 E8 FE */ srwi r0, r0, 3 -/* 8016FEAC 0016CE0C 7C 09 03 A6 */ mtctr r0 -/* 8016FEB0 0016CE10 2C 04 00 00 */ cmpwi r4, 0 -/* 8016FEB4 0016CE14 40 81 00 0C */ ble lbl_8016FEC0 -lbl_8016FEB8: -/* 8016FEB8 0016CE18 38 63 00 08 */ addi r3, r3, 8 -/* 8016FEBC 0016CE1C 42 00 FF FC */ bdnz lbl_8016FEB8 -lbl_8016FEC0: -/* 8016FEC0 0016CE20 7C 03 28 50 */ subf r0, r3, r5 -/* 8016FEC4 0016CE24 7C 09 03 A6 */ mtctr r0 -/* 8016FEC8 0016CE28 7C 03 28 00 */ cmpw r3, r5 -/* 8016FECC 0016CE2C 40 80 00 08 */ bge lbl_8016FED4 -lbl_8016FED0: -/* 8016FED0 0016CE30 42 00 00 00 */ bdnz lbl_8016FED0 -lbl_8016FED4: -/* 8016FED4 0016CE34 38 00 00 00 */ li r0, 0 -/* 8016FED8 0016CE38 38 60 00 01 */ li r3, 1 -/* 8016FEDC 0016CE3C 90 01 00 98 */ stw r0, 0x98(r1) -/* 8016FEE0 0016CE40 48 00 00 74 */ b lbl_8016FF54 -lbl_8016FEE4: -/* 8016FEE4 0016CE44 3B 9C 00 02 */ addi r28, r28, 2 -lbl_8016FEE8: -/* 8016FEE8 0016CE48 80 01 00 98 */ lwz r0, 0x98(r1) -/* 8016FEEC 0016CE4C 54 00 08 3C */ slwi r0, r0, 1 -/* 8016FEF0 0016CE50 7C 1D 02 14 */ add r0, r29, r0 -/* 8016FEF4 0016CE54 7C 1C 00 40 */ cmplw r28, r0 -/* 8016FEF8 0016CE58 40 82 FE CC */ bne lbl_8016FDC4 -lbl_8016FEFC: -/* 8016FEFC 0016CE5C 80 A1 00 98 */ lwz r5, 0x98(r1) -/* 8016FF00 0016CE60 38 60 00 00 */ li r3, 0 -/* 8016FF04 0016CE64 2C 05 00 00 */ cmpwi r5, 0 -/* 8016FF08 0016CE68 40 81 00 40 */ ble lbl_8016FF48 -/* 8016FF0C 0016CE6C 2C 05 00 08 */ cmpwi r5, 8 -/* 8016FF10 0016CE70 38 85 FF F8 */ addi r4, r5, -8 -/* 8016FF14 0016CE74 40 81 00 20 */ ble lbl_8016FF34 -/* 8016FF18 0016CE78 38 04 00 07 */ addi r0, r4, 7 -/* 8016FF1C 0016CE7C 54 00 E8 FE */ srwi r0, r0, 3 -/* 8016FF20 0016CE80 7C 09 03 A6 */ mtctr r0 -/* 8016FF24 0016CE84 2C 04 00 00 */ cmpwi r4, 0 -/* 8016FF28 0016CE88 40 81 00 0C */ ble lbl_8016FF34 -lbl_8016FF2C: -/* 8016FF2C 0016CE8C 38 63 00 08 */ addi r3, r3, 8 -/* 8016FF30 0016CE90 42 00 FF FC */ bdnz lbl_8016FF2C -lbl_8016FF34: -/* 8016FF34 0016CE94 7C 03 28 50 */ subf r0, r3, r5 -/* 8016FF38 0016CE98 7C 09 03 A6 */ mtctr r0 -/* 8016FF3C 0016CE9C 7C 03 28 00 */ cmpw r3, r5 -/* 8016FF40 0016CEA0 40 80 00 08 */ bge lbl_8016FF48 -lbl_8016FF44: -/* 8016FF44 0016CEA4 42 00 00 00 */ bdnz lbl_8016FF44 -lbl_8016FF48: -/* 8016FF48 0016CEA8 38 00 00 00 */ li r0, 0 -/* 8016FF4C 0016CEAC 90 01 00 98 */ stw r0, 0x98(r1) -lbl_8016FF50: -/* 8016FF50 0016CEB0 38 60 00 00 */ li r3, 0 -lbl_8016FF54: -/* 8016FF54 0016CEB4 80 01 08 B4 */ lwz r0, 0x8b4(r1) -/* 8016FF58 0016CEB8 83 E1 08 AC */ lwz r31, 0x8ac(r1) -/* 8016FF5C 0016CEBC 83 C1 08 A8 */ lwz r30, 0x8a8(r1) -/* 8016FF60 0016CEC0 83 A1 08 A4 */ lwz r29, 0x8a4(r1) -/* 8016FF64 0016CEC4 83 81 08 A0 */ lwz r28, 0x8a0(r1) -/* 8016FF68 0016CEC8 7C 08 03 A6 */ mtlr r0 -/* 8016FF6C 0016CECC 38 21 08 B0 */ addi r1, r1, 0x8b0 -/* 8016FF70 0016CED0 4E 80 00 20 */ blr - -.global Inside__8CMetroidFR13CStateManagerf -Inside__8CMetroidFR13CStateManagerf: -/* 8016FF74 0016CED4 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8016FF78 0016CED8 7C 08 02 A6 */ mflr r0 -/* 8016FF7C 0016CEDC 90 01 00 34 */ stw r0, 0x34(r1) -/* 8016FF80 0016CEE0 DB E1 00 20 */ stfd f31, 0x20(r1) -/* 8016FF84 0016CEE4 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 -/* 8016FF88 0016CEE8 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8016FF8C 0016CEEC 7C 7F 1B 78 */ mr r31, r3 -/* 8016FF90 0016CEF0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8016FF94 0016CEF4 A0 63 09 BC */ lhz r3, 0x9bc(r3) -/* 8016FF98 0016CEF8 FF E0 08 90 */ fmr f31, f1 -/* 8016FF9C 0016CEFC 7C 03 00 40 */ cmplw r3, r0 -/* 8016FFA0 0016CF00 41 82 00 90 */ beq lbl_80170030 -/* 8016FFA4 0016CF04 A0 1F 09 BC */ lhz r0, 0x9bc(r31) -/* 8016FFA8 0016CF08 7C 83 23 78 */ mr r3, r4 -/* 8016FFAC 0016CF0C 38 81 00 08 */ addi r4, r1, 8 -/* 8016FFB0 0016CF10 B0 01 00 08 */ sth r0, 8(r1) -/* 8016FFB4 0016CF14 4B ED C5 F1 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8016FFB8 0016CF18 7C 64 1B 78 */ mr r4, r3 -/* 8016FFBC 0016CF1C 38 61 00 0C */ addi r3, r1, 0xc -/* 8016FFC0 0016CF20 4B F3 55 15 */ bl sub_800a54d4 -/* 8016FFC4 0016CF24 4B F3 54 E5 */ bl "CastTo<8CMetroid>__10CPatternedFP7CEntity" -/* 8016FFC8 0016CF28 28 03 00 00 */ cmplwi r3, 0 -/* 8016FFCC 0016CF2C 41 82 00 64 */ beq lbl_80170030 -/* 8016FFD0 0016CF30 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8016FFD4 0016CF34 FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 8016FFD8 0016CF38 40 81 00 10 */ ble lbl_8016FFE8 -/* 8016FFDC 0016CF3C C0 1F 06 BC */ lfs f0, 0x6bc(r31) -/* 8016FFE0 0016CF40 EC 1F 00 32 */ fmuls f0, f31, f0 -/* 8016FFE4 0016CF44 48 00 00 08 */ b lbl_8016FFEC -lbl_8016FFE8: -/* 8016FFE8 0016CF48 C0 1F 06 BC */ lfs f0, 0x6bc(r31) -lbl_8016FFEC: -/* 8016FFEC 0016CF4C C0 43 00 50 */ lfs f2, 0x50(r3) -/* 8016FFF0 0016CF50 EC 00 00 32 */ fmuls f0, f0, f0 -/* 8016FFF4 0016CF54 C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 8016FFF8 0016CF58 C0 83 00 40 */ lfs f4, 0x40(r3) -/* 8016FFFC 0016CF5C EC A2 08 28 */ fsubs f5, f2, f1 -/* 80170000 0016CF60 C0 3F 00 40 */ lfs f1, 0x40(r31) -/* 80170004 0016CF64 C0 63 00 60 */ lfs f3, 0x60(r3) -/* 80170008 0016CF68 EC 84 08 28 */ fsubs f4, f4, f1 -/* 8017000C 0016CF6C C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 80170010 0016CF70 EC 25 01 72 */ fmuls f1, f5, f5 -/* 80170014 0016CF74 EC 43 10 28 */ fsubs f2, f3, f2 -/* 80170018 0016CF78 EC 24 09 3A */ fmadds f1, f4, f4, f1 -/* 8017001C 0016CF7C EC 22 08 BA */ fmadds f1, f2, f2, f1 -/* 80170020 0016CF80 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80170024 0016CF84 40 80 00 0C */ bge lbl_80170030 -/* 80170028 0016CF88 38 60 00 01 */ li r3, 1 -/* 8017002C 0016CF8C 48 00 00 08 */ b lbl_80170034 -lbl_80170030: -/* 80170030 0016CF90 38 60 00 00 */ li r3, 0 -lbl_80170034: -/* 80170034 0016CF94 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 -/* 80170038 0016CF98 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8017003C 0016CF9C CB E1 00 20 */ lfd f31, 0x20(r1) -/* 80170040 0016CFA0 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80170044 0016CFA4 7C 08 03 A6 */ mtlr r0 -/* 80170048 0016CFA8 38 21 00 30 */ addi r1, r1, 0x30 - -.global sub_8017004c -sub_8017004c: -/* 8017004C 0016CFAC 4E 80 00 20 */ blr - -.global ShouldWallHang__8CMetroidFR13CStateManagerf -ShouldWallHang__8CMetroidFR13CStateManagerf: -/* 80170050 0016CFB0 88 03 06 94 */ lbz r0, 0x694(r3) -/* 80170054 0016CFB4 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f -/* 80170058 0016CFB8 4E 80 00 20 */ blr - -.global Leash__8CMetroidFR13CStateManagerf -Leash__8CMetroidFR13CStateManagerf: -/* 8017005C 0016CFBC 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80170060 0016CFC0 7C 08 02 A6 */ mflr r0 -/* 80170064 0016CFC4 90 01 00 24 */ stw r0, 0x24(r1) -/* 80170068 0016CFC8 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8017006C 0016CFCC 7C 9F 23 78 */ mr r31, r4 -/* 80170070 0016CFD0 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80170074 0016CFD4 7C 7E 1B 78 */ mr r30, r3 -/* 80170078 0016CFD8 80 A4 08 4C */ lwz r5, 0x84c(r4) -/* 8017007C 0016CFDC A0 C3 07 B0 */ lhz r6, 0x7b0(r3) -/* 80170080 0016CFE0 A0 05 00 08 */ lhz r0, 8(r5) -/* 80170084 0016CFE4 7C 06 00 40 */ cmplw r6, r0 -/* 80170088 0016CFE8 40 82 00 18 */ bne lbl_801700A0 -/* 8017008C 0016CFEC 4B FF A0 F5 */ bl sub_8016a180 -/* 80170090 0016CFF0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80170094 0016CFF4 41 82 00 0C */ beq lbl_801700A0 -/* 80170098 0016CFF8 38 60 00 01 */ li r3, 1 -/* 8017009C 0016CFFC 48 00 00 E8 */ b lbl_80170184 -lbl_801700A0: -/* 801700A0 0016D000 C0 3E 03 A4 */ lfs f1, 0x3a4(r30) -/* 801700A4 0016D004 C0 1E 00 50 */ lfs f0, 0x50(r30) -/* 801700A8 0016D008 C0 5E 03 C8 */ lfs f2, 0x3c8(r30) -/* 801700AC 0016D00C EC A1 00 28 */ fsubs f5, f1, f0 -/* 801700B0 0016D010 C0 9E 03 A0 */ lfs f4, 0x3a0(r30) -/* 801700B4 0016D014 C0 3E 00 40 */ lfs f1, 0x40(r30) -/* 801700B8 0016D018 EC 02 00 B2 */ fmuls f0, f2, f2 -/* 801700BC 0016D01C C0 7E 03 A8 */ lfs f3, 0x3a8(r30) -/* 801700C0 0016D020 C0 5E 00 60 */ lfs f2, 0x60(r30) -/* 801700C4 0016D024 EC 84 08 28 */ fsubs f4, f4, f1 -/* 801700C8 0016D028 EC 25 01 72 */ fmuls f1, f5, f5 -/* 801700CC 0016D02C EC 43 10 28 */ fsubs f2, f3, f2 -/* 801700D0 0016D030 EC 24 09 3A */ fmadds f1, f4, f4, f1 -/* 801700D4 0016D034 EC 22 08 BA */ fmadds f1, f2, f2, f1 -/* 801700D8 0016D038 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801700DC 0016D03C 40 81 00 A4 */ ble lbl_80170180 -/* 801700E0 0016D040 A0 7E 07 B0 */ lhz r3, 0x7b0(r30) -/* 801700E4 0016D044 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 801700E8 0016D048 7C 03 00 40 */ cmplw r3, r0 -/* 801700EC 0016D04C 41 82 00 8C */ beq lbl_80170178 -/* 801700F0 0016D050 A0 1E 07 B0 */ lhz r0, 0x7b0(r30) -/* 801700F4 0016D054 7F E3 FB 78 */ mr r3, r31 -/* 801700F8 0016D058 38 81 00 08 */ addi r4, r1, 8 -/* 801700FC 0016D05C B0 01 00 08 */ sth r0, 8(r1) -/* 80170100 0016D060 4B ED C4 A5 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 80170104 0016D064 7C 64 1B 78 */ mr r4, r3 -/* 80170108 0016D068 38 61 00 0C */ addi r3, r1, 0xc -/* 8017010C 0016D06C 4B F3 FB 85 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 80170110 0016D070 80 83 00 04 */ lwz r4, 4(r3) -/* 80170114 0016D074 28 04 00 00 */ cmplwi r4, 0 -/* 80170118 0016D078 41 82 00 60 */ beq lbl_80170178 -/* 8017011C 0016D07C C0 24 00 50 */ lfs f1, 0x50(r4) -/* 80170120 0016D080 38 60 00 00 */ li r3, 0 -/* 80170124 0016D084 C0 1E 00 50 */ lfs f0, 0x50(r30) -/* 80170128 0016D088 C0 5E 03 CC */ lfs f2, 0x3cc(r30) -/* 8017012C 0016D08C EC A1 00 28 */ fsubs f5, f1, f0 -/* 80170130 0016D090 C0 84 00 40 */ lfs f4, 0x40(r4) -/* 80170134 0016D094 C0 3E 00 40 */ lfs f1, 0x40(r30) -/* 80170138 0016D098 EC 02 00 B2 */ fmuls f0, f2, f2 -/* 8017013C 0016D09C C0 64 00 60 */ lfs f3, 0x60(r4) -/* 80170140 0016D0A0 C0 5E 00 60 */ lfs f2, 0x60(r30) -/* 80170144 0016D0A4 EC 84 08 28 */ fsubs f4, f4, f1 -/* 80170148 0016D0A8 EC 25 01 72 */ fmuls f1, f5, f5 -/* 8017014C 0016D0AC EC 43 10 28 */ fsubs f2, f3, f2 -/* 80170150 0016D0B0 EC 24 09 3A */ fmadds f1, f4, f4, f1 -/* 80170154 0016D0B4 EC 22 08 BA */ fmadds f1, f2, f2, f1 -/* 80170158 0016D0B8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017015C 0016D0BC 40 81 00 28 */ ble lbl_80170184 -/* 80170160 0016D0C0 C0 3E 03 D4 */ lfs f1, 0x3d4(r30) -/* 80170164 0016D0C4 C0 1E 03 D0 */ lfs f0, 0x3d0(r30) -/* 80170168 0016D0C8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017016C 0016D0CC 40 81 00 18 */ ble lbl_80170184 -/* 80170170 0016D0D0 38 60 00 01 */ li r3, 1 -/* 80170174 0016D0D4 48 00 00 10 */ b lbl_80170184 -lbl_80170178: -/* 80170178 0016D0D8 38 60 00 01 */ li r3, 1 -/* 8017017C 0016D0DC 48 00 00 08 */ b lbl_80170184 -lbl_80170180: -/* 80170180 0016D0E0 38 60 00 00 */ li r3, 0 -lbl_80170184: -/* 80170184 0016D0E4 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80170188 0016D0E8 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8017018C 0016D0EC 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 80170190 0016D0F0 7C 08 03 A6 */ mtlr r0 -/* 80170194 0016D0F4 38 21 00 20 */ addi r1, r1, 0x20 -/* 80170198 0016D0F8 4E 80 00 20 */ blr - -.global ShouldTurn__8CMetroidFR13CStateManagerf -ShouldTurn__8CMetroidFR13CStateManagerf: -/* 8017019C 0016D0FC 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 801701A0 0016D100 7C 08 02 A6 */ mflr r0 -/* 801701A4 0016D104 90 01 00 64 */ stw r0, 0x64(r1) -/* 801701A8 0016D108 93 E1 00 5C */ stw r31, 0x5c(r1) -/* 801701AC 0016D10C 7C 7F 1B 78 */ mr r31, r3 -/* 801701B0 0016D110 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 801701B4 0016D114 A0 63 07 B0 */ lhz r3, 0x7b0(r3) -/* 801701B8 0016D118 7C 03 00 40 */ cmplw r3, r0 -/* 801701BC 0016D11C 41 82 00 D4 */ beq lbl_80170290 -/* 801701C0 0016D120 A0 1F 07 B0 */ lhz r0, 0x7b0(r31) -/* 801701C4 0016D124 7C 83 23 78 */ mr r3, r4 -/* 801701C8 0016D128 38 81 00 08 */ addi r4, r1, 8 -/* 801701CC 0016D12C B0 01 00 08 */ sth r0, 8(r1) -/* 801701D0 0016D130 4B ED C3 D5 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 801701D4 0016D134 7C 64 1B 78 */ mr r4, r3 -/* 801701D8 0016D138 38 61 00 0C */ addi r3, r1, 0xc -/* 801701DC 0016D13C 4B F3 FA B5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 801701E0 0016D140 80 83 00 04 */ lwz r4, 4(r3) -/* 801701E4 0016D144 28 04 00 00 */ cmplwi r4, 0 -/* 801701E8 0016D148 41 82 00 A8 */ beq lbl_80170290 -/* 801701EC 0016D14C C0 84 00 50 */ lfs f4, 0x50(r4) -/* 801701F0 0016D150 38 61 00 1C */ addi r3, r1, 0x1c -/* 801701F4 0016D154 C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 801701F8 0016D158 C0 04 00 40 */ lfs f0, 0x40(r4) -/* 801701FC 0016D15C EC 44 08 28 */ fsubs f2, f4, f1 -/* 80170200 0016D160 C0 3F 00 40 */ lfs f1, 0x40(r31) -/* 80170204 0016D164 C0 A4 00 60 */ lfs f5, 0x60(r4) -/* 80170208 0016D168 C0 7F 00 60 */ lfs f3, 0x60(r31) -/* 8017020C 0016D16C EC 20 08 28 */ fsubs f1, f0, f1 -/* 80170210 0016D170 D0 01 00 40 */ stfs f0, 0x40(r1) -/* 80170214 0016D174 EC 65 18 28 */ fsubs f3, f5, f3 -/* 80170218 0016D178 D0 81 00 44 */ stfs f4, 0x44(r1) -/* 8017021C 0016D17C D0 A1 00 48 */ stfs f5, 0x48(r1) -/* 80170220 0016D180 D0 21 00 4C */ stfs f1, 0x4c(r1) -/* 80170224 0016D184 D0 41 00 50 */ stfs f2, 0x50(r1) -/* 80170228 0016D188 D0 61 00 54 */ stfs f3, 0x54(r1) -/* 8017022C 0016D18C 48 1A 3F D5 */ bl __ct__9CVector2fFff -/* 80170230 0016D190 C0 21 00 1C */ lfs f1, 0x1c(r1) -/* 80170234 0016D194 38 61 00 14 */ addi r3, r1, 0x14 -/* 80170238 0016D198 C0 01 00 20 */ lfs f0, 0x20(r1) -/* 8017023C 0016D19C D0 21 00 2C */ stfs f1, 0x2c(r1) -/* 80170240 0016D1A0 D0 01 00 30 */ stfs f0, 0x30(r1) -/* 80170244 0016D1A4 C0 5F 00 48 */ lfs f2, 0x48(r31) -/* 80170248 0016D1A8 C0 3F 00 38 */ lfs f1, 0x38(r31) -/* 8017024C 0016D1AC C0 1F 00 58 */ lfs f0, 0x58(r31) -/* 80170250 0016D1B0 D0 21 00 34 */ stfs f1, 0x34(r1) -/* 80170254 0016D1B4 D0 41 00 38 */ stfs f2, 0x38(r1) -/* 80170258 0016D1B8 D0 01 00 3C */ stfs f0, 0x3c(r1) -/* 8017025C 0016D1BC 48 1A 3F A5 */ bl __ct__9CVector2fFff -/* 80170260 0016D1C0 C0 21 00 14 */ lfs f1, 0x14(r1) -/* 80170264 0016D1C4 38 61 00 24 */ addi r3, r1, 0x24 -/* 80170268 0016D1C8 C0 01 00 18 */ lfs f0, 0x18(r1) -/* 8017026C 0016D1CC 38 81 00 2C */ addi r4, r1, 0x2c -/* 80170270 0016D1D0 D0 21 00 24 */ stfs f1, 0x24(r1) -/* 80170274 0016D1D4 D0 01 00 28 */ stfs f0, 0x28(r1) -/* 80170278 0016D1D8 48 1A 3D 4D */ bl GetAngleDiff__9CVector2fFRC9CVector2fRC9CVector2f -/* 8017027C 0016D1DC C0 02 A0 F8 */ lfs f0, lbl_805ABE18@sda21(r2) -/* 80170280 0016D1E0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80170284 0016D1E4 7C 00 00 26 */ mfcr r0 -/* 80170288 0016D1E8 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f -/* 8017028C 0016D1EC 48 00 00 08 */ b lbl_80170294 -lbl_80170290: -/* 80170290 0016D1F0 38 60 00 00 */ li r3, 0 -lbl_80170294: -/* 80170294 0016D1F4 80 01 00 64 */ lwz r0, 0x64(r1) -/* 80170298 0016D1F8 83 E1 00 5C */ lwz r31, 0x5c(r1) -/* 8017029C 0016D1FC 7C 08 03 A6 */ mtlr r0 -/* 801702A0 0016D200 38 21 00 60 */ addi r1, r1, 0x60 -/* 801702A4 0016D204 4E 80 00 20 */ blr - -.global AggressionCheck__8CMetroidFR13CStateManagerf -AggressionCheck__8CMetroidFR13CStateManagerf: -/* 801702A8 0016D208 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 801702AC 0016D20C 7C 08 02 A6 */ mflr r0 -/* 801702B0 0016D210 90 01 00 34 */ stw r0, 0x34(r1) -/* 801702B4 0016D214 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 801702B8 0016D218 93 C1 00 28 */ stw r30, 0x28(r1) -/* 801702BC 0016D21C 7C 9E 23 78 */ mr r30, r4 -/* 801702C0 0016D220 93 A1 00 24 */ stw r29, 0x24(r1) -/* 801702C4 0016D224 7C 7D 1B 78 */ mr r29, r3 -/* 801702C8 0016D228 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 801702CC 0016D22C A0 63 07 B0 */ lhz r3, 0x7b0(r3) -/* 801702D0 0016D230 7C 03 00 40 */ cmplw r3, r0 -/* 801702D4 0016D234 41 82 00 E4 */ beq lbl_801703B8 -/* 801702D8 0016D238 A0 1D 07 B0 */ lhz r0, 0x7b0(r29) -/* 801702DC 0016D23C 7F C3 F3 78 */ mr r3, r30 -/* 801702E0 0016D240 38 81 00 08 */ addi r4, r1, 8 -/* 801702E4 0016D244 B0 01 00 08 */ sth r0, 8(r1) -/* 801702E8 0016D248 4B ED C2 BD */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 801702EC 0016D24C 7C 64 1B 78 */ mr r4, r3 -/* 801702F0 0016D250 38 61 00 10 */ addi r3, r1, 0x10 -/* 801702F4 0016D254 4B F3 F9 9D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 801702F8 0016D258 83 E3 00 04 */ lwz r31, 4(r3) -/* 801702FC 0016D25C 38 61 00 0C */ addi r3, r1, 0xc -/* 80170300 0016D260 7F E4 FB 78 */ mr r4, r31 -/* 80170304 0016D264 4B F3 50 CD */ bl sub_800a53d0 -/* 80170308 0016D268 4B F3 50 9D */ bl "CastTo<12CSpacePirate>__10CPatternedFP7CEntity" -/* 8017030C 0016D26C 7C 64 1B 79 */ or. r4, r3, r3 -/* 80170310 0016D270 41 82 00 28 */ beq lbl_80170338 -/* 80170314 0016D274 7F A3 EB 78 */ mr r3, r29 -/* 80170318 0016D278 7F C5 F3 78 */ mr r5, r30 -/* 8017031C 0016D27C 4B FF DE 5D */ bl sub_8016e178 -/* 80170320 0016D280 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80170324 0016D284 40 82 00 14 */ bne lbl_80170338 -/* 80170328 0016D288 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017032C 0016D28C 38 60 00 00 */ li r3, 0 -/* 80170330 0016D290 B0 1D 07 B0 */ sth r0, 0x7b0(r29) -/* 80170334 0016D294 48 00 00 88 */ b lbl_801703BC -lbl_80170338: -/* 80170338 0016D298 28 1F 00 00 */ cmplwi r31, 0 -/* 8017033C 0016D29C 41 82 00 74 */ beq lbl_801703B0 -/* 80170340 0016D2A0 C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 80170344 0016D2A4 C0 1D 00 50 */ lfs f0, 0x50(r29) -/* 80170348 0016D2A8 C0 5D 03 BC */ lfs f2, 0x3bc(r29) -/* 8017034C 0016D2AC EC A1 00 28 */ fsubs f5, f1, f0 -/* 80170350 0016D2B0 C0 9F 00 40 */ lfs f4, 0x40(r31) -/* 80170354 0016D2B4 C0 7D 00 40 */ lfs f3, 0x40(r29) -/* 80170358 0016D2B8 EC 02 00 B2 */ fmuls f0, f2, f2 -/* 8017035C 0016D2BC C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 80170360 0016D2C0 C0 3D 00 60 */ lfs f1, 0x60(r29) -/* 80170364 0016D2C4 EC 64 18 28 */ fsubs f3, f4, f3 -/* 80170368 0016D2C8 EC 42 08 28 */ fsubs f2, f2, f1 -/* 8017036C 0016D2CC EC 25 01 72 */ fmuls f1, f5, f5 -/* 80170370 0016D2D0 EC 42 00 B2 */ fmuls f2, f2, f2 -/* 80170374 0016D2D4 EC 23 08 FA */ fmadds f1, f3, f3, f1 -/* 80170378 0016D2D8 EC 22 08 2A */ fadds f1, f2, f1 -/* 8017037C 0016D2DC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80170380 0016D2E0 40 80 00 38 */ bge lbl_801703B8 -/* 80170384 0016D2E4 C0 3D 03 C0 */ lfs f1, 0x3c0(r29) -/* 80170388 0016D2E8 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8017038C 0016D2EC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80170390 0016D2F0 40 81 00 18 */ ble lbl_801703A8 -/* 80170394 0016D2F4 EC 01 00 72 */ fmuls f0, f1, f1 -/* 80170398 0016D2F8 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8017039C 0016D2FC 7C 00 00 26 */ mfcr r0 -/* 801703A0 0016D300 54 03 0F FE */ srwi r3, r0, 0x1f -/* 801703A4 0016D304 48 00 00 18 */ b lbl_801703BC -lbl_801703A8: -/* 801703A8 0016D308 38 60 00 01 */ li r3, 1 -/* 801703AC 0016D30C 48 00 00 10 */ b lbl_801703BC -lbl_801703B0: -/* 801703B0 0016D310 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 801703B4 0016D314 B0 1D 07 B0 */ sth r0, 0x7b0(r29) -lbl_801703B8: -/* 801703B8 0016D318 38 60 00 00 */ li r3, 0 -lbl_801703BC: -/* 801703BC 0016D31C 80 01 00 34 */ lwz r0, 0x34(r1) -/* 801703C0 0016D320 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 801703C4 0016D324 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 801703C8 0016D328 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 801703CC 0016D32C 7C 08 03 A6 */ mtlr r0 -/* 801703D0 0016D330 38 21 00 30 */ addi r1, r1, 0x30 -/* 801703D4 0016D334 4E 80 00 20 */ blr - -.global SpotPlayer__8CMetroidFR13CStateManagerf -SpotPlayer__8CMetroidFR13CStateManagerf: -/* 801703D8 0016D338 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 801703DC 0016D33C 7C 08 02 A6 */ mflr r0 -/* 801703E0 0016D340 90 01 00 54 */ stw r0, 0x54(r1) -/* 801703E4 0016D344 DB E1 00 40 */ stfd f31, 0x40(r1) -/* 801703E8 0016D348 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 -/* 801703EC 0016D34C BF 61 00 2C */ stmw r27, 0x2c(r1) -/* 801703F0 0016D350 7C 7E 1B 78 */ mr r30, r3 -/* 801703F4 0016D354 7C 9F 23 78 */ mr r31, r4 -/* 801703F8 0016D358 4B FF 9D 89 */ bl sub_8016a180 -/* 801703FC 0016D35C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80170400 0016D360 40 82 01 28 */ bne lbl_80170528 -/* 80170404 0016D364 80 9F 08 4C */ lwz r4, 0x84c(r31) -/* 80170408 0016D368 80 1E 00 04 */ lwz r0, 4(r30) -/* 8017040C 0016D36C 80 64 00 04 */ lwz r3, 4(r4) -/* 80170410 0016D370 7C 03 00 00 */ cmpw r3, r0 -/* 80170414 0016D374 40 82 01 14 */ bne lbl_80170528 -/* 80170418 0016D378 A0 7E 07 B0 */ lhz r3, 0x7b0(r30) -/* 8017041C 0016D37C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80170420 0016D380 7C 03 00 40 */ cmplw r3, r0 -/* 80170424 0016D384 40 82 00 F0 */ bne lbl_80170514 -/* 80170428 0016D388 C0 1E 03 BC */ lfs f0, 0x3bc(r30) -/* 8017042C 0016D38C 7F E3 FB 78 */ mr r3, r31 -/* 80170430 0016D390 A3 A4 00 08 */ lhz r29, 8(r4) -/* 80170434 0016D394 38 81 00 10 */ addi r4, r1, 0x10 -/* 80170438 0016D398 A0 1E 06 98 */ lhz r0, 0x698(r30) -/* 8017043C 0016D39C EF E0 00 32 */ fmuls f31, f0, f0 -/* 80170440 0016D3A0 B0 01 00 10 */ sth r0, 0x10(r1) -/* 80170444 0016D3A4 4B ED C1 31 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80170448 0016D3A8 7C 64 1B 78 */ mr r4, r3 -/* 8017044C 0016D3AC 38 61 00 18 */ addi r3, r1, 0x18 -/* 80170450 0016D3B0 4B F3 71 25 */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" -/* 80170454 0016D3B4 83 63 00 04 */ lwz r27, 4(r3) -/* 80170458 0016D3B8 28 1B 00 00 */ cmplwi r27, 0 -/* 8017045C 0016D3BC 41 82 00 B0 */ beq lbl_8017050C -/* 80170460 0016D3C0 83 9B 00 64 */ lwz r28, 0x64(r27) -/* 80170464 0016D3C4 48 00 00 90 */ b lbl_801704F4 -lbl_80170468: -/* 80170468 0016D3C8 A0 BC 00 00 */ lhz r5, 0(r28) -/* 8017046C 0016D3CC A0 1E 00 08 */ lhz r0, 8(r30) -/* 80170470 0016D3D0 7C 05 00 40 */ cmplw r5, r0 -/* 80170474 0016D3D4 41 82 00 7C */ beq lbl_801704F0 -/* 80170478 0016D3D8 B0 A1 00 08 */ sth r5, 8(r1) -/* 8017047C 0016D3DC 7F E3 FB 78 */ mr r3, r31 -/* 80170480 0016D3E0 38 81 00 0C */ addi r4, r1, 0xc -/* 80170484 0016D3E4 B0 A1 00 0C */ sth r5, 0xc(r1) -/* 80170488 0016D3E8 4B ED C1 1D */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017048C 0016D3EC 7C 64 1B 78 */ mr r4, r3 -/* 80170490 0016D3F0 38 61 00 14 */ addi r3, r1, 0x14 -/* 80170494 0016D3F4 4B F3 50 41 */ bl sub_800a54d4 -/* 80170498 0016D3F8 4B F3 50 11 */ bl "CastTo<8CMetroid>__10CPatternedFP7CEntity" -/* 8017049C 0016D3FC 28 03 00 00 */ cmplwi r3, 0 -/* 801704A0 0016D400 41 82 00 50 */ beq lbl_801704F0 -/* 801704A4 0016D404 A0 03 07 B0 */ lhz r0, 0x7b0(r3) -/* 801704A8 0016D408 7C 00 E8 40 */ cmplw r0, r29 -/* 801704AC 0016D40C 40 82 00 44 */ bne lbl_801704F0 -/* 801704B0 0016D410 C0 23 00 50 */ lfs f1, 0x50(r3) -/* 801704B4 0016D414 C0 1E 00 50 */ lfs f0, 0x50(r30) -/* 801704B8 0016D418 C0 63 00 40 */ lfs f3, 0x40(r3) -/* 801704BC 0016D41C EC 81 00 28 */ fsubs f4, f1, f0 -/* 801704C0 0016D420 C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 801704C4 0016D424 C0 43 00 60 */ lfs f2, 0x60(r3) -/* 801704C8 0016D428 EC 63 00 28 */ fsubs f3, f3, f0 -/* 801704CC 0016D42C C0 3E 00 60 */ lfs f1, 0x60(r30) -/* 801704D0 0016D430 EC 04 01 32 */ fmuls f0, f4, f4 -/* 801704D4 0016D434 EC 22 08 28 */ fsubs f1, f2, f1 -/* 801704D8 0016D438 EC 03 00 FA */ fmadds f0, f3, f3, f0 -/* 801704DC 0016D43C EC 01 00 7A */ fmadds f0, f1, f1, f0 -/* 801704E0 0016D440 FC 00 F8 40 */ fcmpo cr0, f0, f31 -/* 801704E4 0016D444 40 80 00 0C */ bge lbl_801704F0 -/* 801704E8 0016D448 38 60 00 01 */ li r3, 1 -/* 801704EC 0016D44C 48 00 00 40 */ b lbl_8017052C -lbl_801704F0: -/* 801704F0 0016D450 3B 9C 00 28 */ addi r28, r28, 0x28 -lbl_801704F4: -/* 801704F4 0016D454 80 1B 00 5C */ lwz r0, 0x5c(r27) -/* 801704F8 0016D458 80 7B 00 64 */ lwz r3, 0x64(r27) -/* 801704FC 0016D45C 1C 00 00 28 */ mulli r0, r0, 0x28 -/* 80170500 0016D460 7C 03 02 14 */ add r0, r3, r0 -/* 80170504 0016D464 7C 1C 00 40 */ cmplw r28, r0 -/* 80170508 0016D468 40 82 FF 60 */ bne lbl_80170468 -lbl_8017050C: -/* 8017050C 0016D46C 38 60 00 00 */ li r3, 0 -/* 80170510 0016D470 48 00 00 1C */ b lbl_8017052C -lbl_80170514: -/* 80170514 0016D474 A0 04 00 08 */ lhz r0, 8(r4) -/* 80170518 0016D478 7C 00 18 50 */ subf r0, r0, r3 -/* 8017051C 0016D47C 7C 00 00 34 */ cntlzw r0, r0 -/* 80170520 0016D480 54 03 D9 7E */ srwi r3, r0, 5 -/* 80170524 0016D484 48 00 00 08 */ b lbl_8017052C -lbl_80170528: -/* 80170528 0016D488 38 60 00 00 */ li r3, 0 -lbl_8017052C: -/* 8017052C 0016D48C E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 -/* 80170530 0016D490 CB E1 00 40 */ lfd f31, 0x40(r1) -/* 80170534 0016D494 BB 61 00 2C */ lmw r27, 0x2c(r1) -/* 80170538 0016D498 80 01 00 54 */ lwz r0, 0x54(r1) -/* 8017053C 0016D49C 7C 08 03 A6 */ mtlr r0 -/* 80170540 0016D4A0 38 21 00 50 */ addi r1, r1, 0x50 -/* 80170544 0016D4A4 4E 80 00 20 */ blr - -.global InDetectionRange__8CMetroidFR13CStateManagerf -InDetectionRange__8CMetroidFR13CStateManagerf: -/* 80170548 0016D4A8 94 21 F7 50 */ stwu r1, -0x8b0(r1) -/* 8017054C 0016D4AC 7C 08 02 A6 */ mflr r0 -/* 80170550 0016D4B0 90 01 08 B4 */ stw r0, 0x8b4(r1) -/* 80170554 0016D4B4 BF 61 08 9C */ stmw r27, 0x89c(r1) -/* 80170558 0016D4B8 7C 7E 1B 78 */ mr r30, r3 -/* 8017055C 0016D4BC 7C 9F 23 78 */ mr r31, r4 -/* 80170560 0016D4C0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80170564 0016D4C4 A0 C3 07 B0 */ lhz r6, 0x7b0(r3) -/* 80170568 0016D4C8 7C 06 00 40 */ cmplw r6, r0 -/* 8017056C 0016D4CC 40 82 02 28 */ bne lbl_80170794 -/* 80170570 0016D4D0 88 1E 09 BF */ lbz r0, 0x9bf(r30) -/* 80170574 0016D4D4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80170578 0016D4D8 40 82 00 10 */ bne lbl_80170588 -/* 8017057C 0016D4DC 48 08 5D F1 */ bl InDetectionRange__10CPatternedFR13CStateManagerf -/* 80170580 0016D4E0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80170584 0016D4E4 41 82 00 34 */ beq lbl_801705B8 -lbl_80170588: -/* 80170588 0016D4E8 7F C3 F3 78 */ mr r3, r30 -/* 8017058C 0016D4EC 7F E4 FB 78 */ mr r4, r31 -/* 80170590 0016D4F0 4B FF 9B F1 */ bl sub_8016a180 -/* 80170594 0016D4F4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80170598 0016D4F8 40 82 00 20 */ bne lbl_801705B8 -/* 8017059C 0016D4FC 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 801705A0 0016D500 80 1E 00 04 */ lwz r0, 4(r30) -/* 801705A4 0016D504 80 63 00 04 */ lwz r3, 4(r3) -/* 801705A8 0016D508 7C 03 00 00 */ cmpw r3, r0 -/* 801705AC 0016D50C 40 82 00 0C */ bne lbl_801705B8 -/* 801705B0 0016D510 38 60 00 01 */ li r3, 1 -/* 801705B4 0016D514 48 00 02 B0 */ b lbl_80170864 -lbl_801705B8: -/* 801705B8 0016D518 C0 FE 03 BC */ lfs f7, 0x3bc(r30) -/* 801705BC 0016D51C 38 61 00 70 */ addi r3, r1, 0x70 -/* 801705C0 0016D520 C0 DE 00 60 */ lfs f6, 0x60(r30) -/* 801705C4 0016D524 38 81 00 30 */ addi r4, r1, 0x30 -/* 801705C8 0016D528 C0 BE 00 50 */ lfs f5, 0x50(r30) -/* 801705CC 0016D52C 38 A1 00 24 */ addi r5, r1, 0x24 -/* 801705D0 0016D530 C0 3E 00 40 */ lfs f1, 0x40(r30) -/* 801705D4 0016D534 EC 06 38 2A */ fadds f0, f6, f7 -/* 801705D8 0016D538 EC 65 38 2A */ fadds f3, f5, f7 -/* 801705DC 0016D53C EC 81 38 2A */ fadds f4, f1, f7 -/* 801705E0 0016D540 EC 41 38 28 */ fsubs f2, f1, f7 -/* 801705E4 0016D544 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 801705E8 0016D548 EC 25 38 28 */ fsubs f1, f5, f7 -/* 801705EC 0016D54C EC 06 38 28 */ fsubs f0, f6, f7 -/* 801705F0 0016D550 D0 81 00 24 */ stfs f4, 0x24(r1) -/* 801705F4 0016D554 D0 61 00 28 */ stfs f3, 0x28(r1) -/* 801705F8 0016D558 D0 41 00 30 */ stfs f2, 0x30(r1) -/* 801705FC 0016D55C D0 21 00 34 */ stfs f1, 0x34(r1) -/* 80170600 0016D560 D0 01 00 38 */ stfs f0, 0x38(r1) -/* 80170604 0016D564 48 1C 7F 05 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 80170608 0016D568 80 AD 8D B0 */ lwz r5, lbl_805A7970@sda21(r13) -/* 8017060C 0016D56C 38 60 00 00 */ li r3, 0 -/* 80170610 0016D570 38 80 00 01 */ li r4, 1 -/* 80170614 0016D574 48 21 98 E1 */ bl __shl2i -/* 80170618 0016D578 38 00 00 00 */ li r0, 0 -/* 8017061C 0016D57C 39 00 00 01 */ li r8, 1 -/* 80170620 0016D580 90 81 00 5C */ stw r4, 0x5c(r1) -/* 80170624 0016D584 38 81 00 88 */ addi r4, r1, 0x88 -/* 80170628 0016D588 38 A1 00 70 */ addi r5, r1, 0x70 -/* 8017062C 0016D58C 38 C1 00 58 */ addi r6, r1, 0x58 -/* 80170630 0016D590 90 61 00 58 */ stw r3, 0x58(r1) -/* 80170634 0016D594 7F E3 FB 78 */ mr r3, r31 -/* 80170638 0016D598 38 E0 00 00 */ li r7, 0 -/* 8017063C 0016D59C 91 01 00 50 */ stw r8, 0x50(r1) -/* 80170640 0016D5A0 90 01 00 64 */ stw r0, 0x64(r1) -/* 80170644 0016D5A4 90 01 00 60 */ stw r0, 0x60(r1) -/* 80170648 0016D5A8 91 01 00 68 */ stw r8, 0x68(r1) -/* 8017064C 0016D5AC 90 01 00 88 */ stw r0, 0x88(r1) -/* 80170650 0016D5B0 4B ED C0 D1 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" -/* 80170654 0016D5B4 80 01 00 88 */ lwz r0, 0x88(r1) -/* 80170658 0016D5B8 2C 00 00 00 */ cmpwi r0, 0 -/* 8017065C 0016D5BC 41 82 00 E0 */ beq lbl_8017073C -/* 80170660 0016D5C0 3B A1 00 8C */ addi r29, r1, 0x8c -/* 80170664 0016D5C4 7F BC EB 78 */ mr r28, r29 -/* 80170668 0016D5C8 48 00 00 C0 */ b lbl_80170728 -lbl_8017066C: -/* 8017066C 0016D5CC A0 1C 00 00 */ lhz r0, 0(r28) -/* 80170670 0016D5D0 7F E3 FB 78 */ mr r3, r31 -/* 80170674 0016D5D4 38 81 00 14 */ addi r4, r1, 0x14 -/* 80170678 0016D5D8 B0 01 00 14 */ sth r0, 0x14(r1) -/* 8017067C 0016D5DC 4B ED BE F9 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80170680 0016D5E0 7C 64 1B 78 */ mr r4, r3 -/* 80170684 0016D5E4 38 61 00 18 */ addi r3, r1, 0x18 -/* 80170688 0016D5E8 4B F3 4D 49 */ bl sub_800a53d0 -/* 8017068C 0016D5EC 4B F3 4D 19 */ bl "CastTo<12CSpacePirate>__10CPatternedFP7CEntity" -/* 80170690 0016D5F0 7C 7B 1B 79 */ or. r27, r3, r3 -/* 80170694 0016D5F4 41 82 00 90 */ beq lbl_80170724 -/* 80170698 0016D5F8 7F C3 F3 78 */ mr r3, r30 -/* 8017069C 0016D5FC 7F 64 DB 78 */ mr r4, r27 -/* 801706A0 0016D600 7F E5 FB 78 */ mr r5, r31 -/* 801706A4 0016D604 4B FF DA D5 */ bl sub_8016e178 -/* 801706A8 0016D608 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801706AC 0016D60C 41 82 00 78 */ beq lbl_80170724 -/* 801706B0 0016D610 A0 1E 00 08 */ lhz r0, 8(r30) -/* 801706B4 0016D614 7F 63 DB 78 */ mr r3, r27 -/* 801706B8 0016D618 38 81 00 10 */ addi r4, r1, 0x10 -/* 801706BC 0016D61C B0 01 00 0C */ sth r0, 0xc(r1) -/* 801706C0 0016D620 B0 01 00 10 */ sth r0, 0x10(r1) -/* 801706C4 0016D624 4B FB 91 7D */ bl SetAttackTarget__12CSpacePirateF9TUniqueId -/* 801706C8 0016D628 80 A1 00 88 */ lwz r5, 0x88(r1) -/* 801706CC 0016D62C 38 60 00 00 */ li r3, 0 -/* 801706D0 0016D630 2C 05 00 00 */ cmpwi r5, 0 -/* 801706D4 0016D634 40 81 00 40 */ ble lbl_80170714 -/* 801706D8 0016D638 2C 05 00 08 */ cmpwi r5, 8 -/* 801706DC 0016D63C 38 85 FF F8 */ addi r4, r5, -8 -/* 801706E0 0016D640 40 81 00 20 */ ble lbl_80170700 -/* 801706E4 0016D644 38 04 00 07 */ addi r0, r4, 7 -/* 801706E8 0016D648 54 00 E8 FE */ srwi r0, r0, 3 -/* 801706EC 0016D64C 7C 09 03 A6 */ mtctr r0 -/* 801706F0 0016D650 2C 04 00 00 */ cmpwi r4, 0 -/* 801706F4 0016D654 40 81 00 0C */ ble lbl_80170700 -lbl_801706F8: -/* 801706F8 0016D658 38 63 00 08 */ addi r3, r3, 8 -/* 801706FC 0016D65C 42 00 FF FC */ bdnz lbl_801706F8 -lbl_80170700: -/* 80170700 0016D660 7C 03 28 50 */ subf r0, r3, r5 -/* 80170704 0016D664 7C 09 03 A6 */ mtctr r0 -/* 80170708 0016D668 7C 03 28 00 */ cmpw r3, r5 -/* 8017070C 0016D66C 40 80 00 08 */ bge lbl_80170714 -lbl_80170710: -/* 80170710 0016D670 42 00 00 00 */ bdnz lbl_80170710 -lbl_80170714: -/* 80170714 0016D674 38 00 00 00 */ li r0, 0 -/* 80170718 0016D678 38 60 00 01 */ li r3, 1 -/* 8017071C 0016D67C 90 01 00 88 */ stw r0, 0x88(r1) -/* 80170720 0016D680 48 00 01 44 */ b lbl_80170864 -lbl_80170724: -/* 80170724 0016D684 3B 9C 00 02 */ addi r28, r28, 2 -lbl_80170728: -/* 80170728 0016D688 80 01 00 88 */ lwz r0, 0x88(r1) -/* 8017072C 0016D68C 54 00 08 3C */ slwi r0, r0, 1 -/* 80170730 0016D690 7C 1D 02 14 */ add r0, r29, r0 -/* 80170734 0016D694 7C 1C 00 40 */ cmplw r28, r0 -/* 80170738 0016D698 40 82 FF 34 */ bne lbl_8017066C -lbl_8017073C: -/* 8017073C 0016D69C 80 A1 00 88 */ lwz r5, 0x88(r1) -/* 80170740 0016D6A0 38 60 00 00 */ li r3, 0 -/* 80170744 0016D6A4 2C 05 00 00 */ cmpwi r5, 0 -/* 80170748 0016D6A8 40 81 00 40 */ ble lbl_80170788 -/* 8017074C 0016D6AC 2C 05 00 08 */ cmpwi r5, 8 -/* 80170750 0016D6B0 38 85 FF F8 */ addi r4, r5, -8 -/* 80170754 0016D6B4 40 81 00 20 */ ble lbl_80170774 -/* 80170758 0016D6B8 38 04 00 07 */ addi r0, r4, 7 -/* 8017075C 0016D6BC 54 00 E8 FE */ srwi r0, r0, 3 -/* 80170760 0016D6C0 7C 09 03 A6 */ mtctr r0 -/* 80170764 0016D6C4 2C 04 00 00 */ cmpwi r4, 0 -/* 80170768 0016D6C8 40 81 00 0C */ ble lbl_80170774 -lbl_8017076C: -/* 8017076C 0016D6CC 38 63 00 08 */ addi r3, r3, 8 -/* 80170770 0016D6D0 42 00 FF FC */ bdnz lbl_8017076C -lbl_80170774: -/* 80170774 0016D6D4 7C 03 28 50 */ subf r0, r3, r5 -/* 80170778 0016D6D8 7C 09 03 A6 */ mtctr r0 -/* 8017077C 0016D6DC 7C 03 28 00 */ cmpw r3, r5 -/* 80170780 0016D6E0 40 80 00 08 */ bge lbl_80170788 -lbl_80170784: -/* 80170784 0016D6E4 42 00 00 00 */ bdnz lbl_80170784 -lbl_80170788: -/* 80170788 0016D6E8 38 00 00 00 */ li r0, 0 -/* 8017078C 0016D6EC 90 01 00 88 */ stw r0, 0x88(r1) -/* 80170790 0016D6F0 48 00 00 D0 */ b lbl_80170860 -lbl_80170794: -/* 80170794 0016D6F4 80 BF 08 4C */ lwz r5, 0x84c(r31) -/* 80170798 0016D6F8 A0 05 00 08 */ lhz r0, 8(r5) -/* 8017079C 0016D6FC 7C 06 00 40 */ cmplw r6, r0 -/* 801707A0 0016D700 40 82 00 2C */ bne lbl_801707CC -/* 801707A4 0016D704 4B FF 99 DD */ bl sub_8016a180 -/* 801707A8 0016D708 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801707AC 0016D70C 40 82 00 18 */ bne lbl_801707C4 -/* 801707B0 0016D710 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 801707B4 0016D714 80 1E 00 04 */ lwz r0, 4(r30) -/* 801707B8 0016D718 80 63 00 04 */ lwz r3, 4(r3) -/* 801707BC 0016D71C 7C 03 00 00 */ cmpw r3, r0 -/* 801707C0 0016D720 41 82 00 0C */ beq lbl_801707CC -lbl_801707C4: -/* 801707C4 0016D724 38 60 00 00 */ li r3, 0 -/* 801707C8 0016D728 48 00 00 9C */ b lbl_80170864 -lbl_801707CC: -/* 801707CC 0016D72C A0 1E 07 B0 */ lhz r0, 0x7b0(r30) -/* 801707D0 0016D730 7F E3 FB 78 */ mr r3, r31 -/* 801707D4 0016D734 38 81 00 08 */ addi r4, r1, 8 -/* 801707D8 0016D738 B0 01 00 08 */ sth r0, 8(r1) -/* 801707DC 0016D73C 4B ED BD C9 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 801707E0 0016D740 7C 64 1B 78 */ mr r4, r3 -/* 801707E4 0016D744 38 61 00 1C */ addi r3, r1, 0x1c -/* 801707E8 0016D748 4B F3 F4 A9 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 801707EC 0016D74C 80 63 00 04 */ lwz r3, 4(r3) -/* 801707F0 0016D750 28 03 00 00 */ cmplwi r3, 0 -/* 801707F4 0016D754 41 82 00 6C */ beq lbl_80170860 -/* 801707F8 0016D758 C0 23 00 50 */ lfs f1, 0x50(r3) -/* 801707FC 0016D75C C0 1E 00 50 */ lfs f0, 0x50(r30) -/* 80170800 0016D760 C0 5E 03 BC */ lfs f2, 0x3bc(r30) -/* 80170804 0016D764 EC A1 00 28 */ fsubs f5, f1, f0 -/* 80170808 0016D768 C0 83 00 40 */ lfs f4, 0x40(r3) -/* 8017080C 0016D76C C0 7E 00 40 */ lfs f3, 0x40(r30) -/* 80170810 0016D770 EC 02 00 B2 */ fmuls f0, f2, f2 -/* 80170814 0016D774 C0 43 00 60 */ lfs f2, 0x60(r3) -/* 80170818 0016D778 C0 3E 00 60 */ lfs f1, 0x60(r30) -/* 8017081C 0016D77C EC 64 18 28 */ fsubs f3, f4, f3 -/* 80170820 0016D780 C0 9E 03 C0 */ lfs f4, 0x3c0(r30) -/* 80170824 0016D784 EC 42 08 28 */ fsubs f2, f2, f1 -/* 80170828 0016D788 EC 25 01 72 */ fmuls f1, f5, f5 -/* 8017082C 0016D78C EC 42 00 B2 */ fmuls f2, f2, f2 -/* 80170830 0016D790 EC 23 08 FA */ fmadds f1, f3, f3, f1 -/* 80170834 0016D794 EC 22 08 2A */ fadds f1, f2, f1 -/* 80170838 0016D798 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017083C 0016D79C 40 80 00 24 */ bge lbl_80170860 -/* 80170840 0016D7A0 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 80170844 0016D7A4 FC 04 00 40 */ fcmpo cr0, f4, f0 -/* 80170848 0016D7A8 40 81 00 18 */ ble lbl_80170860 -/* 8017084C 0016D7AC EC 04 01 32 */ fmuls f0, f4, f4 -/* 80170850 0016D7B0 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 80170854 0016D7B4 7C 00 00 26 */ mfcr r0 -/* 80170858 0016D7B8 54 03 0F FE */ srwi r3, r0, 0x1f -/* 8017085C 0016D7BC 48 00 00 08 */ b lbl_80170864 -lbl_80170860: -/* 80170860 0016D7C0 38 60 00 00 */ li r3, 0 -lbl_80170864: -/* 80170864 0016D7C4 BB 61 08 9C */ lmw r27, 0x89c(r1) -/* 80170868 0016D7C8 80 01 08 B4 */ lwz r0, 0x8b4(r1) -/* 8017086C 0016D7CC 7C 08 03 A6 */ mtlr r0 -/* 80170870 0016D7D0 38 21 08 B0 */ addi r1, r1, 0x8b0 -/* 80170874 0016D7D4 4E 80 00 20 */ blr - -.global InRange__8CMetroidFR13CStateManagerf -InRange__8CMetroidFR13CStateManagerf: -/* 80170878 0016D7D8 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8017087C 0016D7DC 7C 08 02 A6 */ mflr r0 -/* 80170880 0016D7E0 90 01 00 44 */ stw r0, 0x44(r1) -/* 80170884 0016D7E4 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 80170888 0016D7E8 93 C1 00 38 */ stw r30, 0x38(r1) -/* 8017088C 0016D7EC 7C 9E 23 78 */ mr r30, r4 -/* 80170890 0016D7F0 93 A1 00 34 */ stw r29, 0x34(r1) -/* 80170894 0016D7F4 7C 7D 1B 78 */ mr r29, r3 -/* 80170898 0016D7F8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017089C 0016D7FC A0 63 07 B0 */ lhz r3, 0x7b0(r3) -/* 801708A0 0016D800 7C 03 00 40 */ cmplw r3, r0 -/* 801708A4 0016D804 41 82 00 CC */ beq lbl_80170970 -/* 801708A8 0016D808 A0 1D 07 B0 */ lhz r0, 0x7b0(r29) -/* 801708AC 0016D80C 7F C3 F3 78 */ mr r3, r30 -/* 801708B0 0016D810 38 81 00 08 */ addi r4, r1, 8 -/* 801708B4 0016D814 B0 01 00 08 */ sth r0, 8(r1) -/* 801708B8 0016D818 4B ED BC ED */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 801708BC 0016D81C 7C 64 1B 78 */ mr r4, r3 -/* 801708C0 0016D820 38 61 00 10 */ addi r3, r1, 0x10 -/* 801708C4 0016D824 4B F3 F3 CD */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 801708C8 0016D828 83 E3 00 04 */ lwz r31, 4(r3) -/* 801708CC 0016D82C 28 1F 00 00 */ cmplwi r31, 0 -/* 801708D0 0016D830 41 82 00 A0 */ beq lbl_80170970 -/* 801708D4 0016D834 7F E4 FB 78 */ mr r4, r31 -/* 801708D8 0016D838 38 61 00 0C */ addi r3, r1, 0xc -/* 801708DC 0016D83C 4B F3 4A F5 */ bl sub_800a53d0 -/* 801708E0 0016D840 4B F3 4A C5 */ bl "CastTo<12CSpacePirate>__10CPatternedFP7CEntity" -/* 801708E4 0016D844 7C 64 1B 79 */ or. r4, r3, r3 -/* 801708E8 0016D848 41 82 00 20 */ beq lbl_80170908 -/* 801708EC 0016D84C 7F A3 EB 78 */ mr r3, r29 -/* 801708F0 0016D850 7F C5 F3 78 */ mr r5, r30 -/* 801708F4 0016D854 4B FF D8 85 */ bl sub_8016e178 -/* 801708F8 0016D858 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801708FC 0016D85C 40 82 00 0C */ bne lbl_80170908 -/* 80170900 0016D860 38 60 00 00 */ li r3, 0 -/* 80170904 0016D864 48 00 00 70 */ b lbl_80170974 -lbl_80170908: -/* 80170908 0016D868 C0 FF 00 50 */ lfs f7, 0x50(r31) -/* 8017090C 0016D86C C0 1D 00 50 */ lfs f0, 0x50(r29) -/* 80170910 0016D870 C0 7F 00 40 */ lfs f3, 0x40(r31) -/* 80170914 0016D874 EC C7 00 28 */ fsubs f6, f7, f0 -/* 80170918 0016D878 C0 1D 00 40 */ lfs f0, 0x40(r29) -/* 8017091C 0016D87C C1 1F 00 60 */ lfs f8, 0x60(r31) -/* 80170920 0016D880 EC 83 00 28 */ fsubs f4, f3, f0 -/* 80170924 0016D884 C0 1D 00 60 */ lfs f0, 0x60(r29) -/* 80170928 0016D888 EC 26 01 B2 */ fmuls f1, f6, f6 -/* 8017092C 0016D88C EC A8 00 28 */ fsubs f5, f8, f0 -/* 80170930 0016D890 C0 1D 03 00 */ lfs f0, 0x300(r29) -/* 80170934 0016D894 EC 44 01 32 */ fmuls f2, f4, f4 -/* 80170938 0016D898 EC 00 00 32 */ fmuls f0, f0, f0 -/* 8017093C 0016D89C D0 61 00 18 */ stfs f3, 0x18(r1) -/* 80170940 0016D8A0 EC 65 01 72 */ fmuls f3, f5, f5 -/* 80170944 0016D8A4 EC 22 08 2A */ fadds f1, f2, f1 -/* 80170948 0016D8A8 D0 E1 00 1C */ stfs f7, 0x1c(r1) -/* 8017094C 0016D8AC D1 01 00 20 */ stfs f8, 0x20(r1) -/* 80170950 0016D8B0 EC 23 08 2A */ fadds f1, f3, f1 -/* 80170954 0016D8B4 D0 81 00 24 */ stfs f4, 0x24(r1) -/* 80170958 0016D8B8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017095C 0016D8BC D0 C1 00 28 */ stfs f6, 0x28(r1) -/* 80170960 0016D8C0 D0 A1 00 2C */ stfs f5, 0x2c(r1) -/* 80170964 0016D8C4 7C 00 00 26 */ mfcr r0 -/* 80170968 0016D8C8 54 03 0F FE */ srwi r3, r0, 0x1f -/* 8017096C 0016D8CC 48 00 00 08 */ b lbl_80170974 -lbl_80170970: -/* 80170970 0016D8D0 38 60 00 00 */ li r3, 0 -lbl_80170974: -/* 80170974 0016D8D4 80 01 00 44 */ lwz r0, 0x44(r1) -/* 80170978 0016D8D8 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 8017097C 0016D8DC 83 C1 00 38 */ lwz r30, 0x38(r1) -/* 80170980 0016D8E0 83 A1 00 34 */ lwz r29, 0x34(r1) -/* 80170984 0016D8E4 7C 08 03 A6 */ mtlr r0 -/* 80170988 0016D8E8 38 21 00 40 */ addi r1, r1, 0x40 -/* 8017098C 0016D8EC 4E 80 00 20 */ blr - -.global InPosition__8CMetroidFR13CStateManagerf -InPosition__8CMetroidFR13CStateManagerf: -/* 80170990 0016D8F0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80170994 0016D8F4 7C 08 02 A6 */ mflr r0 -/* 80170998 0016D8F8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8017099C 0016D8FC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 801709A0 0016D900 7C 7F 1B 78 */ mr r31, r3 -/* 801709A4 0016D904 81 83 00 00 */ lwz r12, 0(r3) -/* 801709A8 0016D908 81 8C 02 AC */ lwz r12, 0x2ac(r12) -/* 801709AC 0016D90C 7D 89 03 A6 */ mtctr r12 -/* 801709B0 0016D910 4E 80 04 21 */ bctrl -/* 801709B4 0016D914 28 03 00 00 */ cmplwi r3, 0 -/* 801709B8 0016D918 41 82 00 38 */ beq lbl_801709F0 -/* 801709BC 0016D91C 7F E3 FB 78 */ mr r3, r31 -/* 801709C0 0016D920 81 9F 00 00 */ lwz r12, 0(r31) -/* 801709C4 0016D924 81 8C 02 AC */ lwz r12, 0x2ac(r12) -/* 801709C8 0016D928 7D 89 03 A6 */ mtctr r12 -/* 801709CC 0016D92C 4E 80 04 21 */ bctrl -/* 801709D0 0016D930 80 A3 00 C8 */ lwz r5, 0xc8(r3) -/* 801709D4 0016D934 80 63 00 04 */ lwz r3, 4(r3) -/* 801709D8 0016D938 7C A4 FE 70 */ srawi r4, r5, 0x1f -/* 801709DC 0016D93C 38 03 FF FF */ addi r0, r3, -1 -/* 801709E0 0016D940 54 03 0F FE */ srwi r3, r0, 0x1f -/* 801709E4 0016D944 7C 00 28 10 */ subfc r0, r0, r5 -/* 801709E8 0016D948 7C 64 19 14 */ adde r3, r4, r3 -/* 801709EC 0016D94C 48 00 00 44 */ b lbl_80170A30 -lbl_801709F0: -/* 801709F0 0016D950 C0 3F 07 A8 */ lfs f1, 0x7a8(r31) -/* 801709F4 0016D954 C0 1F 00 50 */ lfs f0, 0x50(r31) -/* 801709F8 0016D958 C0 7F 07 A4 */ lfs f3, 0x7a4(r31) -/* 801709FC 0016D95C EC 21 00 28 */ fsubs f1, f1, f0 -/* 80170A00 0016D960 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 80170A04 0016D964 C0 5F 07 AC */ lfs f2, 0x7ac(r31) -/* 80170A08 0016D968 EC 63 00 28 */ fsubs f3, f3, f0 -/* 80170A0C 0016D96C C0 1F 00 60 */ lfs f0, 0x60(r31) -/* 80170A10 0016D970 EC 21 00 72 */ fmuls f1, f1, f1 -/* 80170A14 0016D974 EC 42 00 28 */ fsubs f2, f2, f0 -/* 80170A18 0016D978 C0 02 A0 DC */ lfs f0, lbl_805ABDFC@sda21(r2) -/* 80170A1C 0016D97C EC 23 08 FA */ fmadds f1, f3, f3, f1 -/* 80170A20 0016D980 EC 22 08 BA */ fmadds f1, f2, f2, f1 -/* 80170A24 0016D984 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80170A28 0016D988 7C 00 00 26 */ mfcr r0 -/* 80170A2C 0016D98C 54 03 0F FE */ srwi r3, r0, 0x1f -lbl_80170A30: -/* 80170A30 0016D990 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80170A34 0016D994 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80170A38 0016D998 7C 08 03 A6 */ mtlr r0 -/* 80170A3C 0016D99C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80170A40 0016D9A0 4E 80 00 20 */ blr - -.global InAttackPosition__8CMetroidFR13CStateManagerf -InAttackPosition__8CMetroidFR13CStateManagerf: -/* 80170A44 0016D9A4 94 21 FE B0 */ stwu r1, -0x150(r1) -/* 80170A48 0016D9A8 7C 08 02 A6 */ mflr r0 -/* 80170A4C 0016D9AC 90 01 01 54 */ stw r0, 0x154(r1) -/* 80170A50 0016D9B0 DB E1 01 40 */ stfd f31, 0x140(r1) -/* 80170A54 0016D9B4 F3 E1 01 48 */ psq_st f31, 328(r1), 0, qr0 -/* 80170A58 0016D9B8 DB C1 01 30 */ stfd f30, 0x130(r1) -/* 80170A5C 0016D9BC F3 C1 01 38 */ psq_st f30, 312(r1), 0, qr0 -/* 80170A60 0016D9C0 DB A1 01 20 */ stfd f29, 0x120(r1) -/* 80170A64 0016D9C4 F3 A1 01 28 */ psq_st f29, 296(r1), 0, qr0 -/* 80170A68 0016D9C8 DB 81 01 10 */ stfd f28, 0x110(r1) -/* 80170A6C 0016D9CC F3 81 01 18 */ psq_st f28, 280(r1), 0, qr0 -/* 80170A70 0016D9D0 DB 61 01 00 */ stfd f27, 0x100(r1) -/* 80170A74 0016D9D4 F3 61 01 08 */ psq_st f27, 264(r1), 0, qr0 -/* 80170A78 0016D9D8 DB 41 00 F0 */ stfd f26, 0xf0(r1) -/* 80170A7C 0016D9DC F3 41 00 F8 */ psq_st f26, 248(r1), 0, qr0 -/* 80170A80 0016D9E0 93 E1 00 EC */ stw r31, 0xec(r1) -/* 80170A84 0016D9E4 93 C1 00 E8 */ stw r30, 0xe8(r1) -/* 80170A88 0016D9E8 93 A1 00 E4 */ stw r29, 0xe4(r1) -/* 80170A8C 0016D9EC 93 81 00 E0 */ stw r28, 0xe0(r1) -/* 80170A90 0016D9F0 7C 7E 1B 78 */ mr r30, r3 -/* 80170A94 0016D9F4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80170A98 0016D9F8 A0 63 07 B0 */ lhz r3, 0x7b0(r3) -/* 80170A9C 0016D9FC 7C 9F 23 78 */ mr r31, r4 -/* 80170AA0 0016DA00 7C 03 00 40 */ cmplw r3, r0 -/* 80170AA4 0016DA04 41 82 02 DC */ beq lbl_80170D80 -/* 80170AA8 0016DA08 A0 1E 07 B0 */ lhz r0, 0x7b0(r30) -/* 80170AAC 0016DA0C 7F E3 FB 78 */ mr r3, r31 -/* 80170AB0 0016DA10 38 81 00 08 */ addi r4, r1, 8 -/* 80170AB4 0016DA14 B0 01 00 08 */ sth r0, 8(r1) -/* 80170AB8 0016DA18 4B ED BA ED */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 80170ABC 0016DA1C 7C 7D 1B 79 */ or. r29, r3, r3 -/* 80170AC0 0016DA20 41 82 02 C0 */ beq lbl_80170D80 -/* 80170AC4 0016DA24 80 7D 00 04 */ lwz r3, 4(r29) -/* 80170AC8 0016DA28 80 1E 00 04 */ lwz r0, 4(r30) -/* 80170ACC 0016DA2C 7C 03 00 00 */ cmpw r3, r0 -/* 80170AD0 0016DA30 40 82 02 B0 */ bne lbl_80170D80 -/* 80170AD4 0016DA34 83 9F 08 4C */ lwz r28, 0x84c(r31) -/* 80170AD8 0016DA38 C0 3E 00 40 */ lfs f1, 0x40(r30) -/* 80170ADC 0016DA3C C0 1D 00 40 */ lfs f0, 0x40(r29) -/* 80170AE0 0016DA40 C0 7E 00 50 */ lfs f3, 0x50(r30) -/* 80170AE4 0016DA44 C0 5D 00 50 */ lfs f2, 0x50(r29) -/* 80170AE8 0016DA48 EF A1 00 28 */ fsubs f29, f1, f0 -/* 80170AEC 0016DA4C C0 3E 00 60 */ lfs f1, 0x60(r30) -/* 80170AF0 0016DA50 C0 1D 00 60 */ lfs f0, 0x60(r29) -/* 80170AF4 0016DA54 EF C3 10 28 */ fsubs f30, f3, f2 -/* 80170AF8 0016DA58 A0 7C 00 08 */ lhz r3, 8(r28) -/* 80170AFC 0016DA5C A0 1E 07 B0 */ lhz r0, 0x7b0(r30) -/* 80170B00 0016DA60 EF E1 00 28 */ fsubs f31, f1, f0 -/* 80170B04 0016DA64 C3 7D 00 48 */ lfs f27, 0x48(r29) -/* 80170B08 0016DA68 7C 03 00 40 */ cmplw r3, r0 -/* 80170B0C 0016DA6C C3 9D 00 38 */ lfs f28, 0x38(r29) -/* 80170B10 0016DA70 C3 42 A0 94 */ lfs f26, lbl_805ABDB4@sda21(r2) -/* 80170B14 0016DA74 40 82 00 3C */ bne lbl_80170B50 -/* 80170B18 0016DA78 7F C3 F3 78 */ mr r3, r30 -/* 80170B1C 0016DA7C 7F E4 FB 78 */ mr r4, r31 -/* 80170B20 0016DA80 4B FF 96 61 */ bl sub_8016a180 -/* 80170B24 0016DA84 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80170B28 0016DA88 41 82 00 0C */ beq lbl_80170B34 -/* 80170B2C 0016DA8C 38 60 00 00 */ li r3, 0 -/* 80170B30 0016DA90 48 00 02 54 */ b lbl_80170D84 -lbl_80170B34: -/* 80170B34 0016DA94 80 1C 02 F8 */ lwz r0, 0x2f8(r28) -/* 80170B38 0016DA98 2C 00 00 01 */ cmpwi r0, 1 -/* 80170B3C 0016DA9C 41 82 00 14 */ beq lbl_80170B50 -/* 80170B40 0016DAA0 88 1E 09 BF */ lbz r0, 0x9bf(r30) -/* 80170B44 0016DAA4 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f -/* 80170B48 0016DAA8 40 82 00 08 */ bne lbl_80170B50 -/* 80170B4C 0016DAAC C3 42 A0 FC */ lfs f26, lbl_805ABE1C@sda21(r2) -lbl_80170B50: -/* 80170B50 0016DAB0 FC 20 E0 90 */ fmr f1, f28 -/* 80170B54 0016DAB4 38 61 00 0C */ addi r3, r1, 0xc -/* 80170B58 0016DAB8 FC 40 D8 90 */ fmr f2, f27 -/* 80170B5C 0016DABC 48 1A 36 A5 */ bl __ct__9CVector2fFff -/* 80170B60 0016DAC0 FC 20 E8 90 */ fmr f1, f29 -/* 80170B64 0016DAC4 38 61 00 14 */ addi r3, r1, 0x14 -/* 80170B68 0016DAC8 FC 40 F0 90 */ fmr f2, f30 -/* 80170B6C 0016DACC 48 1A 36 95 */ bl __ct__9CVector2fFff -/* 80170B70 0016DAD0 38 61 00 14 */ addi r3, r1, 0x14 -/* 80170B74 0016DAD4 38 81 00 0C */ addi r4, r1, 0xc -/* 80170B78 0016DAD8 48 1A 34 4D */ bl GetAngleDiff__9CVector2fFRC9CVector2fRC9CVector2f -/* 80170B7C 0016DADC FC 01 D0 40 */ fcmpo cr0, f1, f26 -/* 80170B80 0016DAE0 40 80 02 00 */ bge lbl_80170D80 -/* 80170B84 0016DAE4 C0 7E 00 48 */ lfs f3, 0x48(r30) -/* 80170B88 0016DAE8 C0 5E 00 38 */ lfs f2, 0x38(r30) -/* 80170B8C 0016DAEC EC 3E 00 F2 */ fmuls f1, f30, f3 -/* 80170B90 0016DAF0 C0 9E 00 58 */ lfs f4, 0x58(r30) -/* 80170B94 0016DAF4 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 80170B98 0016DAF8 D0 41 00 4C */ stfs f2, 0x4c(r1) -/* 80170B9C 0016DAFC EC 3D 08 BA */ fmadds f1, f29, f2, f1 -/* 80170BA0 0016DB00 D0 61 00 50 */ stfs f3, 0x50(r1) -/* 80170BA4 0016DB04 EC 3F 09 3A */ fmadds f1, f31, f4, f1 -/* 80170BA8 0016DB08 D0 81 00 54 */ stfs f4, 0x54(r1) -/* 80170BAC 0016DB0C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80170BB0 0016DB10 40 80 01 D0 */ bge lbl_80170D80 -/* 80170BB4 0016DB14 C0 FE 00 50 */ lfs f7, 0x50(r30) -/* 80170BB8 0016DB18 C0 1E 07 A8 */ lfs f0, 0x7a8(r30) -/* 80170BBC 0016DB1C C1 1E 00 40 */ lfs f8, 0x40(r30) -/* 80170BC0 0016DB20 EC A0 38 28 */ fsubs f5, f0, f7 -/* 80170BC4 0016DB24 C0 1E 07 A4 */ lfs f0, 0x7a4(r30) -/* 80170BC8 0016DB28 C0 DE 00 60 */ lfs f6, 0x60(r30) -/* 80170BCC 0016DB2C EC 60 40 28 */ fsubs f3, f0, f8 -/* 80170BD0 0016DB30 C0 1E 07 AC */ lfs f0, 0x7ac(r30) -/* 80170BD4 0016DB34 EC 25 01 72 */ fmuls f1, f5, f5 -/* 80170BD8 0016DB38 EC 80 30 28 */ fsubs f4, f0, f6 -/* 80170BDC 0016DB3C C0 1E 03 00 */ lfs f0, 0x300(r30) -/* 80170BE0 0016DB40 EC 43 00 F2 */ fmuls f2, f3, f3 -/* 80170BE4 0016DB44 D0 61 00 40 */ stfs f3, 0x40(r1) -/* 80170BE8 0016DB48 EC 00 00 32 */ fmuls f0, f0, f0 -/* 80170BEC 0016DB4C EC 64 01 32 */ fmuls f3, f4, f4 -/* 80170BF0 0016DB50 EC 22 08 2A */ fadds f1, f2, f1 -/* 80170BF4 0016DB54 D0 A1 00 44 */ stfs f5, 0x44(r1) -/* 80170BF8 0016DB58 D0 81 00 48 */ stfs f4, 0x48(r1) -/* 80170BFC 0016DB5C EC 23 08 2A */ fadds f1, f3, f1 -/* 80170C00 0016DB60 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80170C04 0016DB64 7C 00 00 26 */ mfcr r0 -/* 80170C08 0016DB68 54 1C 0F FF */ rlwinm. r28, r0, 1, 0x1f, 0x1f -/* 80170C0C 0016DB6C 41 82 01 6C */ beq lbl_80170D78 -/* 80170C10 0016DB70 C0 5D 00 60 */ lfs f2, 0x60(r29) -/* 80170C14 0016DB74 38 60 00 00 */ li r3, 0 -/* 80170C18 0016DB78 C0 3D 00 50 */ lfs f1, 0x50(r29) -/* 80170C1C 0016DB7C C0 1D 00 40 */ lfs f0, 0x40(r29) -/* 80170C20 0016DB80 FC 06 10 40 */ fcmpo cr0, f6, f2 -/* 80170C24 0016DB84 D1 01 00 34 */ stfs f8, 0x34(r1) -/* 80170C28 0016DB88 D0 E1 00 38 */ stfs f7, 0x38(r1) -/* 80170C2C 0016DB8C D0 C1 00 3C */ stfs f6, 0x3c(r1) -/* 80170C30 0016DB90 D0 01 00 28 */ stfs f0, 0x28(r1) -/* 80170C34 0016DB94 D0 21 00 2C */ stfs f1, 0x2c(r1) -/* 80170C38 0016DB98 D0 41 00 30 */ stfs f2, 0x30(r1) -/* 80170C3C 0016DB9C 40 81 00 1C */ ble lbl_80170C58 -/* 80170C40 0016DBA0 C0 22 A0 88 */ lfs f1, lbl_805ABDA8@sda21(r2) -/* 80170C44 0016DBA4 C0 1E 07 AC */ lfs f0, 0x7ac(r30) -/* 80170C48 0016DBA8 EC 01 00 2A */ fadds f0, f1, f0 -/* 80170C4C 0016DBAC FC 06 00 40 */ fcmpo cr0, f6, f0 -/* 80170C50 0016DBB0 40 80 00 08 */ bge lbl_80170C58 -/* 80170C54 0016DBB4 38 60 00 01 */ li r3, 1 -lbl_80170C58: -/* 80170C58 0016DBB8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80170C5C 0016DBBC 7C 7C 1B 78 */ mr r28, r3 -/* 80170C60 0016DBC0 41 82 01 18 */ beq lbl_80170D78 -/* 80170C64 0016DBC4 C0 5E 00 60 */ lfs f2, 0x60(r30) -/* 80170C68 0016DBC8 7F C4 F3 78 */ mr r4, r30 -/* 80170C6C 0016DBCC C0 3E 00 50 */ lfs f1, 0x50(r30) -/* 80170C70 0016DBD0 7F E5 FB 78 */ mr r5, r31 -/* 80170C74 0016DBD4 C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 80170C78 0016DBD8 38 61 00 1C */ addi r3, r1, 0x1c -/* 80170C7C 0016DBDC D0 01 00 70 */ stfs f0, 0x70(r1) -/* 80170C80 0016DBE0 D0 21 00 74 */ stfs f1, 0x74(r1) -/* 80170C84 0016DBE4 D0 41 00 78 */ stfs f2, 0x78(r1) -/* 80170C88 0016DBE8 4B FF D3 35 */ bl sub_8016dfbc -/* 80170C8C 0016DBEC C0 21 00 20 */ lfs f1, 0x20(r1) -/* 80170C90 0016DBF0 38 61 00 64 */ addi r3, r1, 0x64 -/* 80170C94 0016DBF4 C0 01 00 74 */ lfs f0, 0x74(r1) -/* 80170C98 0016DBF8 C0 61 00 24 */ lfs f3, 0x24(r1) -/* 80170C9C 0016DBFC C0 41 00 78 */ lfs f2, 0x78(r1) -/* 80170CA0 0016DC00 EC 81 00 28 */ fsubs f4, f1, f0 -/* 80170CA4 0016DC04 C0 21 00 1C */ lfs f1, 0x1c(r1) -/* 80170CA8 0016DC08 C0 01 00 70 */ lfs f0, 0x70(r1) -/* 80170CAC 0016DC0C EC 43 10 28 */ fsubs f2, f3, f2 -/* 80170CB0 0016DC10 D0 81 00 68 */ stfs f4, 0x68(r1) -/* 80170CB4 0016DC14 EC 01 00 28 */ fsubs f0, f1, f0 -/* 80170CB8 0016DC18 D0 41 00 6C */ stfs f2, 0x6c(r1) -/* 80170CBC 0016DC1C D0 01 00 64 */ stfs f0, 0x64(r1) -/* 80170CC0 0016DC20 48 1A 3A 39 */ bl CanBeNormalized__9CVector3fCFv -/* 80170CC4 0016DC24 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80170CC8 0016DC28 41 82 00 B0 */ beq lbl_80170D78 -/* 80170CCC 0016DC2C 80 AD 8D A8 */ lwz r5, lbl_805A7968@sda21(r13) -/* 80170CD0 0016DC30 38 60 00 00 */ li r3, 0 -/* 80170CD4 0016DC34 38 80 00 01 */ li r4, 1 -/* 80170CD8 0016DC38 48 21 92 1D */ bl __shl2i -/* 80170CDC 0016DC3C 80 AD 8D AC */ lwz r5, lbl_805A796C@sda21(r13) -/* 80170CE0 0016DC40 7C 9D 23 78 */ mr r29, r4 -/* 80170CE4 0016DC44 7C 7C 1B 78 */ mr r28, r3 -/* 80170CE8 0016DC48 38 60 00 00 */ li r3, 0 -/* 80170CEC 0016DC4C 38 80 00 01 */ li r4, 1 -/* 80170CF0 0016DC50 48 21 92 05 */ bl __shl2i -/* 80170CF4 0016DC54 7F 9C 1B 78 */ or r28, r28, r3 -/* 80170CF8 0016DC58 38 A0 00 01 */ li r5, 1 -/* 80170CFC 0016DC5C 38 00 00 00 */ li r0, 0 -/* 80170D00 0016DC60 7F BD 23 78 */ or r29, r29, r4 -/* 80170D04 0016DC64 90 A1 00 90 */ stw r5, 0x90(r1) -/* 80170D08 0016DC68 38 61 00 64 */ addi r3, r1, 0x64 -/* 80170D0C 0016DC6C 93 A1 00 9C */ stw r29, 0x9c(r1) -/* 80170D10 0016DC70 93 81 00 98 */ stw r28, 0x98(r1) -/* 80170D14 0016DC74 90 01 00 A4 */ stw r0, 0xa4(r1) -/* 80170D18 0016DC78 90 01 00 A0 */ stw r0, 0xa0(r1) -/* 80170D1C 0016DC7C 90 A1 00 A8 */ stw r5, 0xa8(r1) -/* 80170D20 0016DC80 48 1A 3B 99 */ bl Magnitude__9CVector3fCFv -/* 80170D24 0016DC84 C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) -/* 80170D28 0016DC88 7F E4 FB 78 */ mr r4, r31 -/* 80170D2C 0016DC8C C0 61 00 64 */ lfs f3, 0x64(r1) -/* 80170D30 0016DC90 38 61 00 B0 */ addi r3, r1, 0xb0 -/* 80170D34 0016DC94 EC 80 08 24 */ fdivs f4, f0, f1 -/* 80170D38 0016DC98 C0 41 00 68 */ lfs f2, 0x68(r1) -/* 80170D3C 0016DC9C C0 01 00 6C */ lfs f0, 0x6c(r1) -/* 80170D40 0016DCA0 38 A1 00 70 */ addi r5, r1, 0x70 -/* 80170D44 0016DCA4 38 C1 00 58 */ addi r6, r1, 0x58 -/* 80170D48 0016DCA8 38 E1 00 98 */ addi r7, r1, 0x98 -/* 80170D4C 0016DCAC EC 64 00 F2 */ fmuls f3, f4, f3 -/* 80170D50 0016DCB0 EC 44 00 B2 */ fmuls f2, f4, f2 -/* 80170D54 0016DCB4 EC 04 00 32 */ fmuls f0, f4, f0 -/* 80170D58 0016DCB8 D0 61 00 58 */ stfs f3, 0x58(r1) -/* 80170D5C 0016DCBC D0 41 00 5C */ stfs f2, 0x5c(r1) -/* 80170D60 0016DCC0 D0 01 00 60 */ stfs f0, 0x60(r1) -/* 80170D64 0016DCC4 4B ED C2 35 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter -/* 80170D68 0016DCC8 88 01 00 D0 */ lbz r0, 0xd0(r1) -/* 80170D6C 0016DCCC 7C 00 00 34 */ cntlzw r0, r0 -/* 80170D70 0016DCD0 54 00 D9 7E */ srwi r0, r0, 5 -/* 80170D74 0016DCD4 7C 1C 03 78 */ mr r28, r0 -lbl_80170D78: -/* 80170D78 0016DCD8 7F 83 E3 78 */ mr r3, r28 -/* 80170D7C 0016DCDC 48 00 00 08 */ b lbl_80170D84 -lbl_80170D80: -/* 80170D80 0016DCE0 38 60 00 00 */ li r3, 0 -lbl_80170D84: -/* 80170D84 0016DCE4 E3 E1 01 48 */ psq_l f31, 328(r1), 0, qr0 -/* 80170D88 0016DCE8 CB E1 01 40 */ lfd f31, 0x140(r1) -/* 80170D8C 0016DCEC E3 C1 01 38 */ psq_l f30, 312(r1), 0, qr0 -/* 80170D90 0016DCF0 CB C1 01 30 */ lfd f30, 0x130(r1) -/* 80170D94 0016DCF4 E3 A1 01 28 */ psq_l f29, 296(r1), 0, qr0 -/* 80170D98 0016DCF8 CB A1 01 20 */ lfd f29, 0x120(r1) -/* 80170D9C 0016DCFC E3 81 01 18 */ psq_l f28, 280(r1), 0, qr0 -/* 80170DA0 0016DD00 CB 81 01 10 */ lfd f28, 0x110(r1) -/* 80170DA4 0016DD04 E3 61 01 08 */ psq_l f27, 264(r1), 0, qr0 -/* 80170DA8 0016DD08 CB 61 01 00 */ lfd f27, 0x100(r1) -/* 80170DAC 0016DD0C E3 41 00 F8 */ psq_l f26, 248(r1), 0, qr0 -/* 80170DB0 0016DD10 CB 41 00 F0 */ lfd f26, 0xf0(r1) -/* 80170DB4 0016DD14 83 E1 00 EC */ lwz r31, 0xec(r1) -/* 80170DB8 0016DD18 83 C1 00 E8 */ lwz r30, 0xe8(r1) -/* 80170DBC 0016DD1C 83 A1 00 E4 */ lwz r29, 0xe4(r1) -/* 80170DC0 0016DD20 80 01 01 54 */ lwz r0, 0x154(r1) -/* 80170DC4 0016DD24 83 81 00 E0 */ lwz r28, 0xe0(r1) -/* 80170DC8 0016DD28 7C 08 03 A6 */ mtlr r0 -/* 80170DCC 0016DD2C 38 21 01 50 */ addi r1, r1, 0x150 -/* 80170DD0 0016DD30 4E 80 00 20 */ blr - -.global ShouldAttack__8CMetroidFR13CStateManagerf -ShouldAttack__8CMetroidFR13CStateManagerf: -/* 80170DD4 0016DD34 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80170DD8 0016DD38 7C 08 02 A6 */ mflr r0 -/* 80170DDC 0016DD3C 90 01 00 34 */ stw r0, 0x34(r1) -/* 80170DE0 0016DD40 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 80170DE4 0016DD44 7C 9F 23 78 */ mr r31, r4 -/* 80170DE8 0016DD48 93 C1 00 28 */ stw r30, 0x28(r1) -/* 80170DEC 0016DD4C 7C 7E 1B 78 */ mr r30, r3 -/* 80170DF0 0016DD50 4B FF 91 D9 */ bl sub_80169fc8 -/* 80170DF4 0016DD54 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80170DF8 0016DD58 41 82 00 50 */ beq lbl_80170E48 -/* 80170DFC 0016DD5C A0 1E 06 98 */ lhz r0, 0x698(r30) -/* 80170E00 0016DD60 7F E3 FB 78 */ mr r3, r31 -/* 80170E04 0016DD64 38 81 00 10 */ addi r4, r1, 0x10 -/* 80170E08 0016DD68 B0 01 00 10 */ sth r0, 0x10(r1) -/* 80170E0C 0016DD6C 4B ED B7 69 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80170E10 0016DD70 7C 64 1B 78 */ mr r4, r3 -/* 80170E14 0016DD74 38 61 00 14 */ addi r3, r1, 0x14 -/* 80170E18 0016DD78 4B F3 67 5D */ bl "__ct__24TCastToPtr<10CTeamAiMgr>FP7CEntity" -/* 80170E1C 0016DD7C 80 63 00 04 */ lwz r3, 4(r3) -/* 80170E20 0016DD80 28 03 00 00 */ cmplwi r3, 0 -/* 80170E24 0016DD84 41 82 00 1C */ beq lbl_80170E40 -/* 80170E28 0016DD88 A0 1E 00 08 */ lhz r0, 8(r30) -/* 80170E2C 0016DD8C 38 81 00 0C */ addi r4, r1, 0xc -/* 80170E30 0016DD90 B0 01 00 08 */ sth r0, 8(r1) -/* 80170E34 0016DD94 B0 01 00 0C */ sth r0, 0xc(r1) -/* 80170E38 0016DD98 48 0C 7E 75 */ bl AddMeleeAttacker__10CTeamAiMgrF9TUniqueId -/* 80170E3C 0016DD9C 48 00 00 10 */ b lbl_80170E4C -lbl_80170E40: -/* 80170E40 0016DDA0 38 60 00 01 */ li r3, 1 -/* 80170E44 0016DDA4 48 00 00 08 */ b lbl_80170E4C -lbl_80170E48: -/* 80170E48 0016DDA8 38 60 00 00 */ li r3, 0 -lbl_80170E4C: -/* 80170E4C 0016DDAC 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80170E50 0016DDB0 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 80170E54 0016DDB4 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 80170E58 0016DDB8 7C 08 03 A6 */ mtlr r0 -/* 80170E5C 0016DDBC 38 21 00 30 */ addi r1, r1, 0x30 -/* 80170E60 0016DDC0 4E 80 00 20 */ blr - -.global ShotAt__8CMetroidFR13CStateManagerf -ShotAt__8CMetroidFR13CStateManagerf: -/* 80170E64 0016DDC4 88 03 09 BF */ lbz r0, 0x9bf(r3) -/* 80170E68 0016DDC8 54 03 DF FE */ rlwinm r3, r0, 0x1b, 0x1f, 0x1f -/* 80170E6C 0016DDCC 4E 80 00 20 */ blr - -.global Attacked__8CMetroidFR13CStateManagerf -Attacked__8CMetroidFR13CStateManagerf: -/* 80170E70 0016DDD0 C0 63 07 F8 */ lfs f3, 0x7f8(r3) -/* 80170E74 0016DDD4 C0 43 07 FC */ lfs f2, 0x7fc(r3) -/* 80170E78 0016DDD8 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 80170E7C 0016DDDC EC 23 10 28 */ fsubs f1, f3, f2 -/* 80170E80 0016DDE0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80170E84 0016DDE4 40 81 00 3C */ ble lbl_80170EC0 -/* 80170E88 0016DDE8 C0 03 06 4C */ lfs f0, 0x64c(r3) -/* 80170E8C 0016DDEC FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 80170E90 0016DDF0 40 80 00 18 */ bge lbl_80170EA8 -/* 80170E94 0016DDF4 FC 03 00 40 */ fcmpo cr0, f3, f0 -/* 80170E98 0016DDF8 4C 41 13 82 */ cror 2, 1, 2 -/* 80170E9C 0016DDFC 7C 00 00 26 */ mfcr r0 -/* 80170EA0 0016DE00 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f -/* 80170EA4 0016DE04 4E 80 00 20 */ blr -lbl_80170EA8: -/* 80170EA8 0016DE08 C0 03 06 50 */ lfs f0, 0x650(r3) -/* 80170EAC 0016DE0C FC 03 00 40 */ fcmpo cr0, f3, f0 -/* 80170EB0 0016DE10 4C 41 13 82 */ cror 2, 1, 2 -/* 80170EB4 0016DE14 40 82 00 0C */ bne lbl_80170EC0 -/* 80170EB8 0016DE18 38 60 00 01 */ li r3, 1 -/* 80170EBC 0016DE1C 4E 80 00 20 */ blr -lbl_80170EC0: -/* 80170EC0 0016DE20 38 60 00 00 */ li r3, 0 -/* 80170EC4 0016DE24 4E 80 00 20 */ blr - -.global PatternShagged__8CMetroidFR13CStateManagerf -PatternShagged__8CMetroidFR13CStateManagerf: -/* 80170EC8 0016DE28 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80170ECC 0016DE2C 7C 08 02 A6 */ mflr r0 -/* 80170ED0 0016DE30 90 01 00 24 */ stw r0, 0x24(r1) -/* 80170ED4 0016DE34 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80170ED8 0016DE38 7C 9F 23 78 */ mr r31, r4 -/* 80170EDC 0016DE3C 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80170EE0 0016DE40 7C 7E 1B 78 */ mr r30, r3 -/* 80170EE4 0016DE44 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80170EE8 0016DE48 A0 63 07 B0 */ lhz r3, 0x7b0(r3) -/* 80170EEC 0016DE4C 7C 03 00 40 */ cmplw r3, r0 -/* 80170EF0 0016DE50 41 82 00 90 */ beq lbl_80170F80 -/* 80170EF4 0016DE54 A0 1E 07 B0 */ lhz r0, 0x7b0(r30) -/* 80170EF8 0016DE58 7F E3 FB 78 */ mr r3, r31 -/* 80170EFC 0016DE5C 38 81 00 08 */ addi r4, r1, 8 -/* 80170F00 0016DE60 B0 01 00 08 */ sth r0, 8(r1) -/* 80170F04 0016DE64 4B ED B6 A1 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 80170F08 0016DE68 7C 64 1B 78 */ mr r4, r3 -/* 80170F0C 0016DE6C 38 61 00 0C */ addi r3, r1, 0xc -/* 80170F10 0016DE70 4B F3 44 C1 */ bl sub_800a53d0 -/* 80170F14 0016DE74 4B F3 44 91 */ bl "CastTo<12CSpacePirate>__10CPatternedFP7CEntity" -/* 80170F18 0016DE78 28 03 00 00 */ cmplwi r3, 0 -/* 80170F1C 0016DE7C 41 82 00 18 */ beq lbl_80170F34 -/* 80170F20 0016DE80 88 03 04 00 */ lbz r0, 0x400(r3) -/* 80170F24 0016DE84 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 80170F28 0016DE88 40 82 00 0C */ bne lbl_80170F34 -/* 80170F2C 0016DE8C 38 60 00 01 */ li r3, 1 -/* 80170F30 0016DE90 48 00 00 54 */ b lbl_80170F84 -lbl_80170F34: -/* 80170F34 0016DE94 7F C3 F3 78 */ mr r3, r30 -/* 80170F38 0016DE98 7F E4 FB 78 */ mr r4, r31 -/* 80170F3C 0016DE9C 4B FF 90 8D */ bl sub_80169fc8 -/* 80170F40 0016DEA0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80170F44 0016DEA4 40 82 00 0C */ bne lbl_80170F50 -/* 80170F48 0016DEA8 38 60 00 01 */ li r3, 1 -/* 80170F4C 0016DEAC 48 00 00 38 */ b lbl_80170F84 -lbl_80170F50: -/* 80170F50 0016DEB0 80 1E 05 68 */ lwz r0, 0x568(r30) -/* 80170F54 0016DEB4 2C 00 00 02 */ cmpwi r0, 2 -/* 80170F58 0016DEB8 40 82 00 20 */ bne lbl_80170F78 -/* 80170F5C 0016DEBC C0 3E 08 00 */ lfs f1, 0x800(r30) -/* 80170F60 0016DEC0 C0 1E 08 04 */ lfs f0, 0x804(r30) -/* 80170F64 0016DEC4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80170F68 0016DEC8 4C 41 13 82 */ cror 2, 1, 2 -/* 80170F6C 0016DECC 7C 00 00 26 */ mfcr r0 -/* 80170F70 0016DED0 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f -/* 80170F74 0016DED4 48 00 00 10 */ b lbl_80170F84 -lbl_80170F78: -/* 80170F78 0016DED8 38 60 00 00 */ li r3, 0 -/* 80170F7C 0016DEDC 48 00 00 08 */ b lbl_80170F84 -lbl_80170F80: -/* 80170F80 0016DEE0 38 60 00 01 */ li r3, 1 -lbl_80170F84: -/* 80170F84 0016DEE4 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80170F88 0016DEE8 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80170F8C 0016DEEC 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 80170F90 0016DEF0 7C 08 03 A6 */ mtlr r0 -/* 80170F94 0016DEF4 38 21 00 20 */ addi r1, r1, 0x20 -/* 80170F98 0016DEF8 4E 80 00 20 */ blr - -.global LostInterest__8CMetroidFR13CStateManagerf -LostInterest__8CMetroidFR13CStateManagerf: -/* 80170F9C 0016DEFC 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80170FA0 0016DF00 7C 08 02 A6 */ mflr r0 -/* 80170FA4 0016DF04 90 01 00 24 */ stw r0, 0x24(r1) -/* 80170FA8 0016DF08 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80170FAC 0016DF0C 7C 9F 23 78 */ mr r31, r4 -/* 80170FB0 0016DF10 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80170FB4 0016DF14 7C 7E 1B 78 */ mr r30, r3 -/* 80170FB8 0016DF18 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80170FBC 0016DF1C A0 63 07 B0 */ lhz r3, 0x7b0(r3) -/* 80170FC0 0016DF20 7C 03 00 40 */ cmplw r3, r0 -/* 80170FC4 0016DF24 41 82 00 B8 */ beq lbl_8017107C -/* 80170FC8 0016DF28 A0 1E 07 B0 */ lhz r0, 0x7b0(r30) -/* 80170FCC 0016DF2C 7F E3 FB 78 */ mr r3, r31 -/* 80170FD0 0016DF30 38 81 00 08 */ addi r4, r1, 8 -/* 80170FD4 0016DF34 B0 01 00 08 */ sth r0, 8(r1) -/* 80170FD8 0016DF38 4B ED B5 CD */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 80170FDC 0016DF3C 7C 64 1B 78 */ mr r4, r3 -/* 80170FE0 0016DF40 38 61 00 10 */ addi r3, r1, 0x10 -/* 80170FE4 0016DF44 4B F3 EC AD */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 80170FE8 0016DF48 80 83 00 04 */ lwz r4, 4(r3) -/* 80170FEC 0016DF4C 28 04 00 00 */ cmplwi r4, 0 -/* 80170FF0 0016DF50 41 82 00 8C */ beq lbl_8017107C -/* 80170FF4 0016DF54 38 61 00 0C */ addi r3, r1, 0xc -/* 80170FF8 0016DF58 4B F3 43 D9 */ bl sub_800a53d0 -/* 80170FFC 0016DF5C 4B F3 43 A9 */ bl "CastTo<12CSpacePirate>__10CPatternedFP7CEntity" -/* 80171000 0016DF60 28 03 00 00 */ cmplwi r3, 0 -/* 80171004 0016DF64 41 82 00 2C */ beq lbl_80171030 -/* 80171008 0016DF68 A0 63 07 B4 */ lhz r3, 0x7b4(r3) -/* 8017100C 0016DF6C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80171010 0016DF70 7C 03 00 40 */ cmplw r3, r0 -/* 80171014 0016DF74 40 82 00 14 */ bne lbl_80171028 -/* 80171018 0016DF78 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 8017101C 0016DF7C 88 03 03 00 */ lbz r0, 0x300(r3) -/* 80171020 0016DF80 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f -/* 80171024 0016DF84 41 82 00 50 */ beq lbl_80171074 -lbl_80171028: -/* 80171028 0016DF88 38 60 00 01 */ li r3, 1 -/* 8017102C 0016DF8C 48 00 00 54 */ b lbl_80171080 -lbl_80171030: -/* 80171030 0016DF90 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 80171034 0016DF94 A0 9E 07 B0 */ lhz r4, 0x7b0(r30) -/* 80171038 0016DF98 A0 03 00 08 */ lhz r0, 8(r3) -/* 8017103C 0016DF9C 7C 04 00 40 */ cmplw r4, r0 -/* 80171040 0016DFA0 40 82 00 34 */ bne lbl_80171074 -/* 80171044 0016DFA4 7F C3 F3 78 */ mr r3, r30 -/* 80171048 0016DFA8 7F E4 FB 78 */ mr r4, r31 -/* 8017104C 0016DFAC 4B FF 91 35 */ bl sub_8016a180 -/* 80171050 0016DFB0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80171054 0016DFB4 40 82 00 18 */ bne lbl_8017106C -/* 80171058 0016DFB8 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8017105C 0016DFBC 80 1E 00 04 */ lwz r0, 4(r30) -/* 80171060 0016DFC0 80 63 00 04 */ lwz r3, 4(r3) -/* 80171064 0016DFC4 7C 03 00 00 */ cmpw r3, r0 -/* 80171068 0016DFC8 41 82 00 0C */ beq lbl_80171074 -lbl_8017106C: -/* 8017106C 0016DFCC 38 60 00 01 */ li r3, 1 -/* 80171070 0016DFD0 48 00 00 10 */ b lbl_80171080 -lbl_80171074: -/* 80171074 0016DFD4 38 60 00 00 */ li r3, 0 -/* 80171078 0016DFD8 48 00 00 08 */ b lbl_80171080 -lbl_8017107C: -/* 8017107C 0016DFDC 38 60 00 01 */ li r3, 1 -lbl_80171080: -/* 80171080 0016DFE0 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80171084 0016DFE4 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80171088 0016DFE8 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8017108C 0016DFEC 7C 08 03 A6 */ mtlr r0 -/* 80171090 0016DFF0 38 21 00 20 */ addi r1, r1, 0x20 -/* 80171094 0016DFF4 4E 80 00 20 */ blr - -.global AttackOver__8CMetroidFR13CStateManagerf -AttackOver__8CMetroidFR13CStateManagerf: -/* 80171098 0016DFF8 94 21 FF 20 */ stwu r1, -0xe0(r1) -/* 8017109C 0016DFFC 7C 08 02 A6 */ mflr r0 -/* 801710A0 0016E000 90 01 00 E4 */ stw r0, 0xe4(r1) -/* 801710A4 0016E004 DB E1 00 D0 */ stfd f31, 0xd0(r1) -/* 801710A8 0016E008 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 -/* 801710AC 0016E00C 93 E1 00 CC */ stw r31, 0xcc(r1) -/* 801710B0 0016E010 93 C1 00 C8 */ stw r30, 0xc8(r1) -/* 801710B4 0016E014 7C 7E 1B 78 */ mr r30, r3 -/* 801710B8 0016E018 7C 9F 23 78 */ mr r31, r4 -/* 801710BC 0016E01C 80 03 05 68 */ lwz r0, 0x568(r3) -/* 801710C0 0016E020 2C 00 00 02 */ cmpwi r0, 2 -/* 801710C4 0016E024 40 82 01 64 */ bne lbl_80171228 -/* 801710C8 0016E028 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 801710CC 0016E02C 88 03 03 00 */ lbz r0, 0x300(r3) -/* 801710D0 0016E030 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f -/* 801710D4 0016E034 40 82 01 54 */ bne lbl_80171228 -/* 801710D8 0016E038 C3 FE 00 60 */ lfs f31, 0x60(r30) -/* 801710DC 0016E03C 7F C4 F3 78 */ mr r4, r30 -/* 801710E0 0016E040 7F E5 FB 78 */ mr r5, r31 -/* 801710E4 0016E044 38 61 00 20 */ addi r3, r1, 0x20 -/* 801710E8 0016E048 4B FF CE D5 */ bl sub_8016dfbc -/* 801710EC 0016E04C C0 01 00 28 */ lfs f0, 0x28(r1) -/* 801710F0 0016E050 80 7E 00 64 */ lwz r3, 0x64(r30) -/* 801710F4 0016E054 EC 20 F8 28 */ fsubs f1, f0, f31 -/* 801710F8 0016E058 C0 02 A1 00 */ lfs f0, lbl_805ABE20@sda21(r2) -/* 801710FC 0016E05C C0 43 00 04 */ lfs f2, 4(r3) -/* 80171100 0016E060 C0 63 00 00 */ lfs f3, 0(r3) -/* 80171104 0016E064 FC 80 0A 10 */ fabs f4, f1 -/* 80171108 0016E068 C0 23 00 08 */ lfs f1, 8(r3) -/* 8017110C 0016E06C EF E0 00 B2 */ fmuls f31, f0, f2 -/* 80171110 0016E070 D0 61 00 14 */ stfs f3, 0x14(r1) -/* 80171114 0016E074 FC 00 20 18 */ frsp f0, f4 -/* 80171118 0016E078 D0 41 00 18 */ stfs f2, 0x18(r1) -/* 8017111C 0016E07C D0 21 00 1C */ stfs f1, 0x1c(r1) -/* 80171120 0016E080 FC 00 F8 40 */ fcmpo cr0, f0, f31 -/* 80171124 0016E084 40 80 01 04 */ bge lbl_80171228 -/* 80171128 0016E088 A0 1E 07 B0 */ lhz r0, 0x7b0(r30) -/* 8017112C 0016E08C 7F E3 FB 78 */ mr r3, r31 -/* 80171130 0016E090 38 81 00 08 */ addi r4, r1, 8 -/* 80171134 0016E094 B0 01 00 08 */ sth r0, 8(r1) -/* 80171138 0016E098 4B ED B4 6D */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017113C 0016E09C 7C 64 1B 78 */ mr r4, r3 -/* 80171140 0016E0A0 38 61 00 0C */ addi r3, r1, 0xc -/* 80171144 0016E0A4 4B F3 B5 A1 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" -/* 80171148 0016E0A8 80 83 00 04 */ lwz r4, 4(r3) -/* 8017114C 0016E0AC 28 04 00 00 */ cmplwi r4, 0 -/* 80171150 0016E0B0 41 82 00 D8 */ beq lbl_80171228 -/* 80171154 0016E0B4 38 61 00 5C */ addi r3, r1, 0x5c -/* 80171158 0016E0B8 4B FA 97 D5 */ bl GetBoundingBox__13CPhysicsActorCFv -/* 8017115C 0016E0BC C0 A1 00 5C */ lfs f5, 0x5c(r1) -/* 80171160 0016E0C0 38 9E 06 A0 */ addi r4, r30, 0x6a0 -/* 80171164 0016E0C4 C0 81 00 60 */ lfs f4, 0x60(r1) -/* 80171168 0016E0C8 38 61 00 44 */ addi r3, r1, 0x44 -/* 8017116C 0016E0CC C0 61 00 64 */ lfs f3, 0x64(r1) -/* 80171170 0016E0D0 38 BE 00 34 */ addi r5, r30, 0x34 -/* 80171174 0016E0D4 C0 41 00 68 */ lfs f2, 0x68(r1) -/* 80171178 0016E0D8 C0 21 00 6C */ lfs f1, 0x6c(r1) -/* 8017117C 0016E0DC C0 01 00 70 */ lfs f0, 0x70(r1) -/* 80171180 0016E0E0 D0 A1 00 A4 */ stfs f5, 0xa4(r1) -/* 80171184 0016E0E4 D0 81 00 A8 */ stfs f4, 0xa8(r1) -/* 80171188 0016E0E8 D0 61 00 AC */ stfs f3, 0xac(r1) -/* 8017118C 0016E0EC D0 41 00 B0 */ stfs f2, 0xb0(r1) -/* 80171190 0016E0F0 D0 21 00 B4 */ stfs f1, 0xb4(r1) -/* 80171194 0016E0F4 D0 01 00 B8 */ stfs f0, 0xb8(r1) -/* 80171198 0016E0F8 81 9E 06 A0 */ lwz r12, 0x6a0(r30) -/* 8017119C 0016E0FC 81 8C 00 14 */ lwz r12, 0x14(r12) -/* 801711A0 0016E100 7D 89 03 A6 */ mtctr r12 -/* 801711A4 0016E104 4E 80 04 21 */ bctrl -/* 801711A8 0016E108 C0 01 00 44 */ lfs f0, 0x44(r1) -/* 801711AC 0016E10C 38 61 00 74 */ addi r3, r1, 0x74 -/* 801711B0 0016E110 C0 C1 00 48 */ lfs f6, 0x48(r1) -/* 801711B4 0016E114 38 81 00 38 */ addi r4, r1, 0x38 -/* 801711B8 0016E118 C0 A1 00 4C */ lfs f5, 0x4c(r1) -/* 801711BC 0016E11C EC 20 F8 28 */ fsubs f1, f0, f31 -/* 801711C0 0016E120 C0 81 00 50 */ lfs f4, 0x50(r1) -/* 801711C4 0016E124 ED 06 F8 28 */ fsubs f8, f6, f31 -/* 801711C8 0016E128 C0 61 00 54 */ lfs f3, 0x54(r1) -/* 801711CC 0016E12C EC E5 F8 28 */ fsubs f7, f5, f31 -/* 801711D0 0016E130 C0 41 00 58 */ lfs f2, 0x58(r1) -/* 801711D4 0016E134 ED 43 F8 2A */ fadds f10, f3, f31 -/* 801711D8 0016E138 D0 01 00 8C */ stfs f0, 0x8c(r1) -/* 801711DC 0016E13C ED 22 F8 2A */ fadds f9, f2, f31 -/* 801711E0 0016E140 38 A1 00 2C */ addi r5, r1, 0x2c -/* 801711E4 0016E144 EC 04 F8 2A */ fadds f0, f4, f31 -/* 801711E8 0016E148 D0 C1 00 90 */ stfs f6, 0x90(r1) -/* 801711EC 0016E14C D0 A1 00 94 */ stfs f5, 0x94(r1) -/* 801711F0 0016E150 D0 81 00 98 */ stfs f4, 0x98(r1) -/* 801711F4 0016E154 D0 61 00 9C */ stfs f3, 0x9c(r1) -/* 801711F8 0016E158 D0 41 00 A0 */ stfs f2, 0xa0(r1) -/* 801711FC 0016E15C D0 21 00 38 */ stfs f1, 0x38(r1) -/* 80171200 0016E160 D1 01 00 3C */ stfs f8, 0x3c(r1) -/* 80171204 0016E164 D0 E1 00 40 */ stfs f7, 0x40(r1) -/* 80171208 0016E168 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 8017120C 0016E16C D1 41 00 30 */ stfs f10, 0x30(r1) -/* 80171210 0016E170 D1 21 00 34 */ stfs f9, 0x34(r1) -/* 80171214 0016E174 48 1C 72 F5 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 80171218 0016E178 38 61 00 74 */ addi r3, r1, 0x74 -/* 8017121C 0016E17C 38 81 00 A4 */ addi r4, r1, 0xa4 -/* 80171220 0016E180 48 1C 69 65 */ bl DoBoundsOverlap__6CAABoxCFRC6CAABox -/* 80171224 0016E184 48 00 00 08 */ b lbl_8017122C -lbl_80171228: -/* 80171228 0016E188 38 60 00 00 */ li r3, 0 -lbl_8017122C: -/* 8017122C 0016E18C E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 -/* 80171230 0016E190 80 01 00 E4 */ lwz r0, 0xe4(r1) -/* 80171234 0016E194 CB E1 00 D0 */ lfd f31, 0xd0(r1) -/* 80171238 0016E198 83 E1 00 CC */ lwz r31, 0xcc(r1) -/* 8017123C 0016E19C 83 C1 00 C8 */ lwz r30, 0xc8(r1) -/* 80171240 0016E1A0 7C 08 03 A6 */ mtlr r0 -/* 80171244 0016E1A4 38 21 00 E0 */ addi r1, r1, 0xe0 -/* 80171248 0016E1A8 4E 80 00 20 */ blr - -.global AnimOver__8CMetroidFR13CStateManagerf -AnimOver__8CMetroidFR13CStateManagerf: -/* 8017124C 0016E1AC 80 03 05 68 */ lwz r0, 0x568(r3) -/* 80171250 0016E1B0 20 00 00 03 */ subfic r0, r0, 3 -/* 80171254 0016E1B4 7C 00 00 34 */ cntlzw r0, r0 -/* 80171258 0016E1B8 54 03 D9 7E */ srwi r3, r0, 5 -/* 8017125C 0016E1BC 4E 80 00 20 */ blr - -.global Death__8CMetroidFRC9CVector3fR13CStateManager -Death__8CMetroidFRC9CVector3fR13CStateManager: -/* 80171260 0016E1C0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80171264 0016E1C4 7C 08 02 A6 */ mflr r0 -/* 80171268 0016E1C8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8017126C 0016E1CC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80171270 0016E1D0 7C 9F 23 78 */ mr r31, r4 -/* 80171274 0016E1D4 93 C1 00 08 */ stw r30, 8(r1) -/* 80171278 0016E1D8 7C 7E 1B 78 */ mr r30, r3 -/* 8017127C 0016E1DC 4B F0 A1 29 */ bl Death__10CPatternedFR13CStateManagerRC9CVector3f18EScriptObjectState -/* 80171280 0016E1E0 88 1E 03 28 */ lbz r0, 0x328(r30) -/* 80171284 0016E1E4 38 60 00 00 */ li r3, 0 -/* 80171288 0016E1E8 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 8017128C 0016E1EC 7F C3 F3 78 */ mr r3, r30 -/* 80171290 0016E1F0 98 1E 03 28 */ stb r0, 0x328(r30) -/* 80171294 0016E1F4 38 80 00 01 */ li r4, 1 -/* 80171298 0016E1F8 4B EE 21 55 */ bl SetMuted__6CActorFb -/* 8017129C 0016E1FC 7F C3 F3 78 */ mr r3, r30 -/* 801712A0 0016E200 7F E4 FB 78 */ mr r4, r31 -/* 801712A4 0016E204 4B FF BF 85 */ bl sub_8016d228 -/* 801712A8 0016E208 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801712AC 0016E20C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 801712B0 0016E210 83 C1 00 08 */ lwz r30, 8(r1) -/* 801712B4 0016E214 7C 08 03 A6 */ mtlr r0 -/* 801712B8 0016E218 38 21 00 10 */ addi r1, r1, 0x10 -/* 801712BC 0016E21C 4E 80 00 20 */ blr - -.global KnockBack__8CMetroidFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef -KnockBack__8CMetroidFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef: -/* 801712C0 0016E220 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 801712C4 0016E224 7C 08 02 A6 */ mflr r0 -/* 801712C8 0016E228 90 01 00 44 */ stw r0, 0x44(r1) -/* 801712CC 0016E22C DB E1 00 30 */ stfd f31, 0x30(r1) -/* 801712D0 0016E230 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 -/* 801712D4 0016E234 BF 01 00 10 */ stmw r24, 0x10(r1) -/* 801712D8 0016E238 88 03 04 00 */ lbz r0, 0x400(r3) -/* 801712DC 0016E23C FF E0 08 90 */ fmr f31, f1 -/* 801712E0 0016E240 7C 7C 1B 78 */ mr r28, r3 -/* 801712E4 0016E244 7C 9D 23 78 */ mr r29, r4 -/* 801712E8 0016E248 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 801712EC 0016E24C 7C BE 2B 78 */ mr r30, r5 -/* 801712F0 0016E250 7C DF 33 78 */ mr r31, r6 -/* 801712F4 0016E254 7C F8 3B 78 */ mr r24, r7 -/* 801712F8 0016E258 7D 19 43 78 */ mr r25, r8 -/* 801712FC 0016E25C 41 82 01 4C */ beq lbl_80171448 -/* 80171300 0016E260 81 83 00 00 */ lwz r12, 0(r3) -/* 80171304 0016E264 81 8C 00 38 */ lwz r12, 0x38(r12) -/* 80171308 0016E268 7D 89 03 A6 */ mtctr r12 -/* 8017130C 0016E26C 4E 80 04 21 */ bctrl -/* 80171310 0016E270 7C 60 1B 78 */ mr r0, r3 -/* 80171314 0016E274 80 7C 04 50 */ lwz r3, 0x450(r28) -/* 80171318 0016E278 7C 1B 03 78 */ mr r27, r0 -/* 8017131C 0016E27C 4B FC 8D B1 */ bl GetPercentageFrozen__15CBodyControllerCFv -/* 80171320 0016E280 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 80171324 0016E284 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80171328 0016E288 7C 60 00 26 */ mfcr r3 -/* 8017132C 0016E28C 80 1C 07 C8 */ lwz r0, 0x7c8(r28) -/* 80171330 0016E290 54 7A 17 FE */ rlwinm r26, r3, 2, 0x1f, 0x1f -/* 80171334 0016E294 2C 00 00 02 */ cmpwi r0, 2 -/* 80171338 0016E298 40 82 00 34 */ bne lbl_8017136C -/* 8017133C 0016E29C 7F 63 DB 78 */ mr r3, r27 -/* 80171340 0016E2A0 7F E4 FB 78 */ mr r4, r31 -/* 80171344 0016E2A4 38 A0 00 00 */ li r5, 0 -/* 80171348 0016E2A8 4B F9 12 3D */ bl WeaponHits__20CDamageVulnerabilityCFRC11CWeaponModei -/* 8017134C 0016E2AC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80171350 0016E2B0 41 82 00 F8 */ beq lbl_80171448 -/* 80171354 0016E2B4 C3 FC 06 40 */ lfs f31, 0x640(r28) -/* 80171358 0016E2B8 7F 83 E3 78 */ mr r3, r28 -/* 8017135C 0016E2BC 4B FF CB E5 */ bl sub_8016df40 -/* 80171360 0016E2C0 EC 1F 00 72 */ fmuls f0, f31, f1 -/* 80171364 0016E2C4 D0 1C 07 BC */ stfs f0, 0x7bc(r28) -/* 80171368 0016E2C8 48 00 00 E0 */ b lbl_80171448 -lbl_8017136C: -/* 8017136C 0016E2CC 7F 63 DB 78 */ mr r3, r27 -/* 80171370 0016E2D0 7F E4 FB 78 */ mr r4, r31 -/* 80171374 0016E2D4 38 A0 00 00 */ li r5, 0 -/* 80171378 0016E2D8 4B F9 13 91 */ bl WeaponHurts__20CDamageVulnerabilityCFRC11CWeaponMode -/* 8017137C 0016E2DC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80171380 0016E2E0 41 82 00 50 */ beq lbl_801713D0 -/* 80171384 0016E2E4 80 7E 09 00 */ lwz r3, 0x900(r30) -/* 80171388 0016E2E8 48 1A 11 55 */ bl Float__9CRandom16Fv -/* 8017138C 0016E2EC C0 5C 03 08 */ lfs f2, 0x308(r28) -/* 80171390 0016E2F0 28 1A 00 00 */ cmplwi r26, 0 -/* 80171394 0016E2F4 C0 1C 03 04 */ lfs f0, 0x304(r28) -/* 80171398 0016E2F8 EC 02 00 7A */ fmadds f0, f2, f1, f0 -/* 8017139C 0016E2FC D0 1C 07 B4 */ stfs f0, 0x7b4(r28) -/* 801713A0 0016E300 41 82 00 0C */ beq lbl_801713AC -/* 801713A4 0016E304 80 7C 04 50 */ lwz r3, 0x450(r28) -/* 801713A8 0016E308 4B FC 8D AD */ bl UnFreeze__15CBodyControllerFv -lbl_801713AC: -/* 801713AC 0016E30C FC 20 F8 90 */ fmr f1, f31 -/* 801713B0 0016E310 7F 83 E3 78 */ mr r3, r28 -/* 801713B4 0016E314 7F A4 EB 78 */ mr r4, r29 -/* 801713B8 0016E318 7F C5 F3 78 */ mr r5, r30 -/* 801713BC 0016E31C 7F E6 FB 78 */ mr r6, r31 -/* 801713C0 0016E320 7F 07 C3 78 */ mr r7, r24 -/* 801713C4 0016E324 7F 28 CB 78 */ mr r8, r25 -/* 801713C8 0016E328 4B F0 93 B5 */ bl KnockBack__10CPatternedFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef -/* 801713CC 0016E32C 48 00 00 7C */ b lbl_80171448 -lbl_801713D0: -/* 801713D0 0016E330 28 1A 00 00 */ cmplwi r26, 0 -/* 801713D4 0016E334 40 82 00 74 */ bne lbl_80171448 -/* 801713D8 0016E338 7F 63 DB 78 */ mr r3, r27 -/* 801713DC 0016E33C 7F E4 FB 78 */ mr r4, r31 -/* 801713E0 0016E340 38 A0 00 00 */ li r5, 0 -/* 801713E4 0016E344 4B F9 11 A1 */ bl WeaponHits__20CDamageVulnerabilityCFRC11CWeaponModei -/* 801713E8 0016E348 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801713EC 0016E34C 41 82 00 5C */ beq lbl_80171448 -/* 801713F0 0016E350 88 7F 00 04 */ lbz r3, 4(r31) -/* 801713F4 0016E354 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f -/* 801713F8 0016E358 40 82 00 18 */ bne lbl_80171410 -/* 801713FC 0016E35C 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f -/* 80171400 0016E360 40 82 00 10 */ bne lbl_80171410 -/* 80171404 0016E364 80 1F 00 00 */ lwz r0, 0(r31) -/* 80171408 0016E368 2C 00 00 06 */ cmpwi r0, 6 -/* 8017140C 0016E36C 40 82 00 3C */ bne lbl_80171448 -lbl_80171410: -/* 80171410 0016E370 7F 83 E3 78 */ mr r3, r28 -/* 80171414 0016E374 4B FF A6 C9 */ bl sub_8016badc -/* 80171418 0016E378 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017141C 0016E37C 40 82 00 2C */ bne lbl_80171448 -/* 80171420 0016E380 FC 20 F8 90 */ fmr f1, f31 -/* 80171424 0016E384 7F 83 E3 78 */ mr r3, r28 -/* 80171428 0016E388 7F A4 EB 78 */ mr r4, r29 -/* 8017142C 0016E38C 7F C5 F3 78 */ mr r5, r30 -/* 80171430 0016E390 7F E6 FB 78 */ mr r6, r31 -/* 80171434 0016E394 7F 07 C3 78 */ mr r7, r24 -/* 80171438 0016E398 39 00 00 00 */ li r8, 0 -/* 8017143C 0016E39C 4B F0 93 41 */ bl KnockBack__10CPatternedFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef -/* 80171440 0016E3A0 C0 1C 08 04 */ lfs f0, 0x804(r28) -/* 80171444 0016E3A4 D0 1C 08 00 */ stfs f0, 0x800(r28) -lbl_80171448: -/* 80171448 0016E3A8 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 -/* 8017144C 0016E3AC CB E1 00 30 */ lfd f31, 0x30(r1) -/* 80171450 0016E3B0 BB 01 00 10 */ lmw r24, 0x10(r1) -/* 80171454 0016E3B4 80 01 00 44 */ lwz r0, 0x44(r1) -/* 80171458 0016E3B8 7C 08 03 A6 */ mtlr r0 -/* 8017145C 0016E3BC 38 21 00 40 */ addi r1, r1, 0x40 -/* 80171460 0016E3C0 4E 80 00 20 */ blr - -.global DoUserAnimEvent__8CMetroidFR13CStateManagerRC13CInt32POINode14EUserEventType -DoUserAnimEvent__8CMetroidFR13CStateManagerRC13CInt32POINode14EUserEventType: -/* 80171464 0016E3C4 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80171468 0016E3C8 7C 08 02 A6 */ mflr r0 -/* 8017146C 0016E3CC 90 01 00 24 */ stw r0, 0x24(r1) -/* 80171470 0016E3D0 38 00 00 00 */ li r0, 0 -/* 80171474 0016E3D4 DB E1 00 18 */ stfd f31, 0x18(r1) -/* 80171478 0016E3D8 FF E0 08 90 */ fmr f31, f1 -/* 8017147C 0016E3DC 93 E1 00 14 */ stw r31, 0x14(r1) -/* 80171480 0016E3E0 7C DF 33 78 */ mr r31, r6 -/* 80171484 0016E3E4 2C 1F 00 07 */ cmpwi r31, 7 -/* 80171488 0016E3E8 93 C1 00 10 */ stw r30, 0x10(r1) -/* 8017148C 0016E3EC 7C BE 2B 78 */ mr r30, r5 -/* 80171490 0016E3F0 93 A1 00 0C */ stw r29, 0xc(r1) -/* 80171494 0016E3F4 7C 9D 23 78 */ mr r29, r4 -/* 80171498 0016E3F8 93 81 00 08 */ stw r28, 8(r1) -/* 8017149C 0016E3FC 7C 7C 1B 78 */ mr r28, r3 -/* 801714A0 0016E400 41 82 00 08 */ beq lbl_801714A8 -/* 801714A4 0016E404 48 00 00 14 */ b lbl_801714B8 -lbl_801714A8: -/* 801714A8 0016E408 7F A5 EB 78 */ mr r5, r29 -/* 801714AC 0016E40C 38 80 00 13 */ li r4, 0x13 -/* 801714B0 0016E410 4B EE 2E A1 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 801714B4 0016E414 38 00 00 01 */ li r0, 1 -lbl_801714B8: -/* 801714B8 0016E418 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 801714BC 0016E41C 40 82 00 1C */ bne lbl_801714D8 -/* 801714C0 0016E420 FC 20 F8 90 */ fmr f1, f31 -/* 801714C4 0016E424 7F 83 E3 78 */ mr r3, r28 -/* 801714C8 0016E428 7F A4 EB 78 */ mr r4, r29 -/* 801714CC 0016E42C 7F C5 F3 78 */ mr r5, r30 -/* 801714D0 0016E430 7F E6 FB 78 */ mr r6, r31 -/* 801714D4 0016E434 4B F0 79 DD */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType -lbl_801714D8: -/* 801714D8 0016E438 80 01 00 24 */ lwz r0, 0x24(r1) -/* 801714DC 0016E43C CB E1 00 18 */ lfd f31, 0x18(r1) -/* 801714E0 0016E440 83 E1 00 14 */ lwz r31, 0x14(r1) -/* 801714E4 0016E444 83 C1 00 10 */ lwz r30, 0x10(r1) -/* 801714E8 0016E448 83 A1 00 0C */ lwz r29, 0xc(r1) -/* 801714EC 0016E44C 83 81 00 08 */ lwz r28, 8(r1) -/* 801714F0 0016E450 7C 08 03 A6 */ mtlr r0 -/* 801714F4 0016E454 38 21 00 20 */ addi r1, r1, 0x20 -/* 801714F8 0016E458 4E 80 00 20 */ blr - -.global GetCollisionResponseType__8CMetroidCFRC9CVector3fRC9CVector3fRC11CWeaponModei -GetCollisionResponseType__8CMetroidCFRC9CVector3fRC9CVector3fRC11CWeaponModei: -/* 801714FC 0016E45C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80171500 0016E460 7C 08 02 A6 */ mflr r0 -/* 80171504 0016E464 90 01 00 24 */ stw r0, 0x24(r1) -/* 80171508 0016E468 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8017150C 0016E46C 3B E0 00 21 */ li r31, 0x21 -/* 80171510 0016E470 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80171514 0016E474 7C 7E 1B 78 */ mr r30, r3 -/* 80171518 0016E478 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8017151C 0016E47C 7C DD 33 78 */ mr r29, r6 -/* 80171520 0016E480 80 63 04 50 */ lwz r3, 0x450(r3) -/* 80171524 0016E484 4B FC 8B A9 */ bl GetPercentageFrozen__15CBodyControllerCFv -/* 80171528 0016E488 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 8017152C 0016E48C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80171530 0016E490 7C 00 00 26 */ mfcr r0 -/* 80171534 0016E494 7F C3 F3 78 */ mr r3, r30 -/* 80171538 0016E498 81 9E 00 00 */ lwz r12, 0(r30) -/* 8017153C 0016E49C 54 1E 17 FE */ rlwinm r30, r0, 2, 0x1f, 0x1f -/* 80171540 0016E4A0 81 8C 00 38 */ lwz r12, 0x38(r12) -/* 80171544 0016E4A4 7D 89 03 A6 */ mtctr r12 -/* 80171548 0016E4A8 4E 80 04 21 */ bctrl -/* 8017154C 0016E4AC 7F A4 EB 78 */ mr r4, r29 -/* 80171550 0016E4B0 38 A0 00 00 */ li r5, 0 -/* 80171554 0016E4B4 4B F9 11 B5 */ bl WeaponHurts__20CDamageVulnerabilityCFRC11CWeaponMode -/* 80171558 0016E4B8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017155C 0016E4BC 40 82 00 10 */ bne lbl_8017156C -/* 80171560 0016E4C0 28 1E 00 00 */ cmplwi r30, 0 -/* 80171564 0016E4C4 40 82 00 08 */ bne lbl_8017156C -/* 80171568 0016E4C8 3B E0 00 3A */ li r31, 0x3a -lbl_8017156C: -/* 8017156C 0016E4CC 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80171570 0016E4D0 7F E3 FB 78 */ mr r3, r31 -/* 80171574 0016E4D4 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80171578 0016E4D8 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8017157C 0016E4DC 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 80171580 0016E4E0 7C 08 03 A6 */ mtlr r0 -/* 80171584 0016E4E4 38 21 00 20 */ addi r1, r1, 0x20 -/* 80171588 0016E4E8 4E 80 00 20 */ blr - -.global GetDamageVulnerability__8CMetroidCFRC9CVector3fRC9CVector3fRC11CDamageInfo -GetDamageVulnerability__8CMetroidCFRC9CVector3fRC9CVector3fRC11CDamageInfo: -/* 8017158C 0016E4EC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80171590 0016E4F0 7C 08 02 A6 */ mflr r0 -/* 80171594 0016E4F4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80171598 0016E4F8 81 83 00 00 */ lwz r12, 0(r3) -/* 8017159C 0016E4FC 81 8C 00 38 */ lwz r12, 0x38(r12) -/* 801715A0 0016E500 7D 89 03 A6 */ mtctr r12 -/* 801715A4 0016E504 4E 80 04 21 */ bctrl -/* 801715A8 0016E508 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801715AC 0016E50C 7C 08 03 A6 */ mtlr r0 -/* 801715B0 0016E510 38 21 00 10 */ addi r1, r1, 0x10 -/* 801715B4 0016E514 4E 80 00 20 */ blr - -.global GetDamageVulnerability__8CMetroidCFv -GetDamageVulnerability__8CMetroidCFv: -/* 801715B8 0016E518 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801715BC 0016E51C 7C 08 02 A6 */ mflr r0 -/* 801715C0 0016E520 90 01 00 14 */ stw r0, 0x14(r1) -/* 801715C4 0016E524 93 E1 00 0C */ stw r31, 0xc(r1) -/* 801715C8 0016E528 7C 7F 1B 78 */ mr r31, r3 -/* 801715CC 0016E52C 4B FF CC 29 */ bl sub_8016e1f4 -/* 801715D0 0016E530 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801715D4 0016E534 41 82 00 24 */ beq lbl_801715F8 -/* 801715D8 0016E538 88 1F 09 C0 */ lbz r0, 0x9c0(r31) -/* 801715DC 0016E53C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 801715E0 0016E540 41 82 00 0C */ beq lbl_801715EC -/* 801715E4 0016E544 38 7F 05 D4 */ addi r3, r31, 0x5d4 -/* 801715E8 0016E548 48 00 00 C0 */ b lbl_801716A8 -lbl_801715EC: -/* 801715EC 0016E54C 3C 60 80 57 */ lis r3, lbl_80571FA4@ha -/* 801715F0 0016E550 38 63 1F A4 */ addi r3, r3, lbl_80571FA4@l -/* 801715F4 0016E554 48 00 00 B4 */ b lbl_801716A8 -lbl_801715F8: -/* 801715F8 0016E558 88 1F 09 BF */ lbz r0, 0x9bf(r31) -/* 801715FC 0016E55C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 80171600 0016E560 41 82 00 1C */ beq lbl_8017161C -/* 80171604 0016E564 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 80171608 0016E568 88 03 03 00 */ lbz r0, 0x300(r3) -/* 8017160C 0016E56C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f -/* 80171610 0016E570 40 82 00 0C */ bne lbl_8017161C -/* 80171614 0016E574 38 7F 05 D4 */ addi r3, r31, 0x5d4 -/* 80171618 0016E578 48 00 00 90 */ b lbl_801716A8 -lbl_8017161C: -/* 8017161C 0016E57C 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 80171620 0016E580 4B FC 8A AD */ bl GetPercentageFrozen__15CBodyControllerCFv -/* 80171624 0016E584 C0 02 A0 80 */ lfs f0, lbl_805ABDA0@sda21(r2) -/* 80171628 0016E588 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017162C 0016E58C 40 81 00 0C */ ble lbl_80171638 -/* 80171630 0016E590 38 7F 05 6C */ addi r3, r31, 0x56c -/* 80171634 0016E594 48 00 00 74 */ b lbl_801716A8 -lbl_80171638: -/* 80171638 0016E598 80 1F 03 FC */ lwz r0, 0x3fc(r31) -/* 8017163C 0016E59C 2C 00 00 02 */ cmpwi r0, 2 -/* 80171640 0016E5A0 40 82 00 60 */ bne lbl_801716A0 -/* 80171644 0016E5A4 80 1F 07 CC */ lwz r0, 0x7cc(r31) -/* 80171648 0016E5A8 2C 00 00 03 */ cmpwi r0, 3 -/* 8017164C 0016E5AC 41 82 00 3C */ beq lbl_80171688 -/* 80171650 0016E5B0 40 80 00 14 */ bge lbl_80171664 -/* 80171654 0016E5B4 2C 00 00 01 */ cmpwi r0, 1 -/* 80171658 0016E5B8 41 82 00 18 */ beq lbl_80171670 -/* 8017165C 0016E5BC 40 80 00 20 */ bge lbl_8017167C -/* 80171660 0016E5C0 48 00 00 40 */ b lbl_801716A0 -lbl_80171664: -/* 80171664 0016E5C4 2C 00 00 05 */ cmpwi r0, 5 -/* 80171668 0016E5C8 40 80 00 38 */ bge lbl_801716A0 -/* 8017166C 0016E5CC 48 00 00 28 */ b lbl_80171694 -lbl_80171670: -/* 80171670 0016E5D0 3C 60 80 57 */ lis r3, lbl_80571C64@ha -/* 80171674 0016E5D4 38 63 1C 64 */ addi r3, r3, lbl_80571C64@l -/* 80171678 0016E5D8 48 00 00 30 */ b lbl_801716A8 -lbl_8017167C: -/* 8017167C 0016E5DC 3C 60 80 57 */ lis r3, lbl_80571E6C@ha -/* 80171680 0016E5E0 38 63 1E 6C */ addi r3, r3, lbl_80571E6C@l -/* 80171684 0016E5E4 48 00 00 24 */ b lbl_801716A8 -lbl_80171688: -/* 80171688 0016E5E8 3C 60 80 57 */ lis r3, lbl_80571ED4@ha -/* 8017168C 0016E5EC 38 63 1E D4 */ addi r3, r3, lbl_80571ED4@l -/* 80171690 0016E5F0 48 00 00 18 */ b lbl_801716A8 -lbl_80171694: -/* 80171694 0016E5F4 3C 60 80 57 */ lis r3, lbl_80571F3C@ha -/* 80171698 0016E5F8 38 63 1F 3C */ addi r3, r3, lbl_80571F3C@l -/* 8017169C 0016E5FC 48 00 00 0C */ b lbl_801716A8 -lbl_801716A0: -/* 801716A0 0016E600 7F E3 FB 78 */ mr r3, r31 -/* 801716A4 0016E604 4B F3 16 CD */ bl GetDamageVulnerability__3CAiCFv -lbl_801716A8: -/* 801716A8 0016E608 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801716AC 0016E60C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 801716B0 0016E610 7C 08 03 A6 */ mtlr r0 -/* 801716B4 0016E614 38 21 00 10 */ addi r1, r1, 0x10 -/* 801716B8 0016E618 4E 80 00 20 */ blr - -.global GetCollisionPrimitive__8CMetroidCFv -GetCollisionPrimitive__8CMetroidCFv: -/* 801716BC 0016E61C 38 63 06 A0 */ addi r3, r3, 0x6a0 -/* 801716C0 0016E620 4E 80 00 20 */ blr - -.global sub_801716c4 -sub_801716c4: -/* 801716C4 0016E624 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 801716C8 0016E628 7C 08 02 A6 */ mflr r0 -/* 801716CC 0016E62C 90 01 00 34 */ stw r0, 0x34(r1) -/* 801716D0 0016E630 DB E1 00 20 */ stfd f31, 0x20(r1) -/* 801716D4 0016E634 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 -/* 801716D8 0016E638 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 801716DC 0016E63C 7C 7F 1B 78 */ mr r31, r3 -/* 801716E0 0016E640 4B FF C8 91 */ bl sub_8016df70 -/* 801716E4 0016E644 C0 02 A0 98 */ lfs f0, lbl_805ABDB8@sda21(r2) -/* 801716E8 0016E648 38 81 00 0C */ addi r4, r1, 0xc -/* 801716EC 0016E64C 38 6D 8D 9C */ addi r3, r13, lbl_805A795C@sda21 -/* 801716F0 0016E650 38 AD 8D A0 */ addi r5, r13, lbl_805A7960@sda21 -/* 801716F4 0016E654 EC 01 00 28 */ fsubs f0, f1, f0 -/* 801716F8 0016E658 D0 01 00 0C */ stfs f0, 0xc(r1) -/* 801716FC 0016E65C 4B E9 AB B9 */ bl "Clamp__5CMathFRCfRCfRCf" -/* 80171700 0016E660 C0 63 00 00 */ lfs f3, 0(r3) -/* 80171704 0016E664 C0 22 A0 AC */ lfs f1, lbl_805ABDCC@sda21(r2) -/* 80171708 0016E668 C0 02 A0 A8 */ lfs f0, lbl_805ABDC8@sda21(r2) -/* 8017170C 0016E66C C0 42 A1 04 */ lfs f2, lbl_805ABE24@sda21(r2) -/* 80171710 0016E670 EC 01 00 FA */ fmadds f0, f1, f3, f0 -/* 80171714 0016E674 EF E2 00 32 */ fmuls f31, f2, f0 -/* 80171718 0016E678 F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 -/* 8017171C 0016E67C 38 81 00 09 */ addi r4, r1, 9 -/* 80171720 0016E680 38 6D 8D A4 */ addi r3, r13, lbl_805A7964@sda21 -/* 80171724 0016E684 38 AD 8D A5 */ addi r5, r13, lbl_805A7965@sda21 -/* 80171728 0016E688 88 01 00 08 */ lbz r0, 8(r1) -/* 8017172C 0016E68C 98 01 00 09 */ stb r0, 9(r1) -/* 80171730 0016E690 48 00 10 E1 */ bl sub_80172810 -/* 80171734 0016E694 88 83 00 00 */ lbz r4, 0(r3) -/* 80171738 0016E698 7F E3 FB 78 */ mr r3, r31 -/* 8017173C 0016E69C 4B EE 1C 35 */ bl SetVolume__6CActorFUc -/* 80171740 0016E6A0 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 -/* 80171744 0016E6A4 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80171748 0016E6A8 CB E1 00 20 */ lfd f31, 0x20(r1) -/* 8017174C 0016E6AC 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80171750 0016E6B0 7C 08 03 A6 */ mtlr r0 -/* 80171754 0016E6B4 38 21 00 30 */ addi r1, r1, 0x30 -/* 80171758 0016E6B8 4E 80 00 20 */ blr - -.global sub_8017175c -sub_8017175c: -/* 8017175C 0016E6BC 94 21 FF 70 */ stwu r1, -0x90(r1) -/* 80171760 0016E6C0 7C 08 02 A6 */ mflr r0 -/* 80171764 0016E6C4 80 82 A0 74 */ lwz r4, lbl_805ABD94@sda21(r2) -/* 80171768 0016E6C8 90 01 00 94 */ stw r0, 0x94(r1) -/* 8017176C 0016E6CC 93 E1 00 8C */ stw r31, 0x8c(r1) -/* 80171770 0016E6D0 7C 7F 1B 78 */ mr r31, r3 -/* 80171774 0016E6D4 38 61 00 18 */ addi r3, r1, 0x18 -/* 80171778 0016E6D8 4B E9 35 41 */ bl string_l__4rstlFPCc -/* 8017177C 0016E6DC 7F E4 FB 78 */ mr r4, r31 -/* 80171780 0016E6E0 38 61 00 28 */ addi r3, r1, 0x28 -/* 80171784 0016E6E4 38 A1 00 18 */ addi r5, r1, 0x18 -/* 80171788 0016E6E8 4B EE 17 79 */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8017178C 0016E6EC 38 61 00 58 */ addi r3, r1, 0x58 -/* 80171790 0016E6F0 38 81 00 28 */ addi r4, r1, 0x28 -/* 80171794 0016E6F4 48 1A 13 E1 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80171798 0016E6F8 38 61 00 18 */ addi r3, r1, 0x18 -/* 8017179C 0016E6FC 48 1C C3 45 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 801717A0 0016E700 80 7F 00 64 */ lwz r3, 0x64(r31) -/* 801717A4 0016E704 C0 9F 06 BC */ lfs f4, 0x6bc(r31) -/* 801717A8 0016E708 C0 21 00 64 */ lfs f1, 0x64(r1) -/* 801717AC 0016E70C C0 03 00 00 */ lfs f0, 0(r3) -/* 801717B0 0016E710 C0 41 00 74 */ lfs f2, 0x74(r1) -/* 801717B4 0016E714 EC 01 00 32 */ fmuls f0, f1, f0 -/* 801717B8 0016E718 C0 23 00 04 */ lfs f1, 4(r3) -/* 801717BC 0016E71C C0 61 00 84 */ lfs f3, 0x84(r1) -/* 801717C0 0016E720 EC 42 00 72 */ fmuls f2, f2, f1 -/* 801717C4 0016E724 C0 23 00 08 */ lfs f1, 8(r3) -/* 801717C8 0016E728 D0 01 00 08 */ stfs f0, 8(r1) -/* 801717CC 0016E72C EC 03 00 72 */ fmuls f0, f3, f1 -/* 801717D0 0016E730 D0 41 00 0C */ stfs f2, 0xc(r1) -/* 801717D4 0016E734 80 01 00 08 */ lwz r0, 8(r1) -/* 801717D8 0016E738 D0 01 00 10 */ stfs f0, 0x10(r1) -/* 801717DC 0016E73C 80 61 00 0C */ lwz r3, 0xc(r1) -/* 801717E0 0016E740 90 1F 06 B0 */ stw r0, 0x6b0(r31) -/* 801717E4 0016E744 80 01 00 10 */ lwz r0, 0x10(r1) -/* 801717E8 0016E748 90 7F 06 B4 */ stw r3, 0x6b4(r31) -/* 801717EC 0016E74C 90 1F 06 B8 */ stw r0, 0x6b8(r31) -/* 801717F0 0016E750 D0 81 00 14 */ stfs f4, 0x14(r1) -/* 801717F4 0016E754 D0 9F 06 BC */ stfs f4, 0x6bc(r31) -/* 801717F8 0016E758 83 E1 00 8C */ lwz r31, 0x8c(r1) -/* 801717FC 0016E75C 80 01 00 94 */ lwz r0, 0x94(r1) -/* 80171800 0016E760 7C 08 03 A6 */ mtlr r0 -/* 80171804 0016E764 38 21 00 90 */ addi r1, r1, 0x90 -/* 80171808 0016E768 4E 80 00 20 */ blr - -.global GetTouchBounds__8CMetroidCFv -GetTouchBounds__8CMetroidCFv: -/* 8017180C 0016E76C 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80171810 0016E770 7C 08 02 A6 */ mflr r0 -/* 80171814 0016E774 7C 85 23 78 */ mr r5, r4 -/* 80171818 0016E778 90 01 00 34 */ stw r0, 0x34(r1) -/* 8017181C 0016E77C 38 85 06 A0 */ addi r4, r5, 0x6a0 -/* 80171820 0016E780 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 80171824 0016E784 7C 7F 1B 78 */ mr r31, r3 -/* 80171828 0016E788 38 61 00 08 */ addi r3, r1, 8 -/* 8017182C 0016E78C 81 85 06 A0 */ lwz r12, 0x6a0(r5) -/* 80171830 0016E790 38 A5 00 34 */ addi r5, r5, 0x34 -/* 80171834 0016E794 81 8C 00 14 */ lwz r12, 0x14(r12) -/* 80171838 0016E798 7D 89 03 A6 */ mtctr r12 -/* 8017183C 0016E79C 4E 80 04 21 */ bctrl -/* 80171840 0016E7A0 38 00 00 01 */ li r0, 1 -/* 80171844 0016E7A4 28 1F 00 00 */ cmplwi r31, 0 -/* 80171848 0016E7A8 98 1F 00 18 */ stb r0, 0x18(r31) -/* 8017184C 0016E7AC 41 82 00 34 */ beq lbl_80171880 -/* 80171850 0016E7B0 C0 01 00 08 */ lfs f0, 8(r1) -/* 80171854 0016E7B4 D0 1F 00 00 */ stfs f0, 0(r31) -/* 80171858 0016E7B8 C0 01 00 0C */ lfs f0, 0xc(r1) -/* 8017185C 0016E7BC D0 1F 00 04 */ stfs f0, 4(r31) -/* 80171860 0016E7C0 C0 01 00 10 */ lfs f0, 0x10(r1) -/* 80171864 0016E7C4 D0 1F 00 08 */ stfs f0, 8(r31) -/* 80171868 0016E7C8 C0 01 00 14 */ lfs f0, 0x14(r1) -/* 8017186C 0016E7CC D0 1F 00 0C */ stfs f0, 0xc(r31) -/* 80171870 0016E7D0 C0 01 00 18 */ lfs f0, 0x18(r1) -/* 80171874 0016E7D4 D0 1F 00 10 */ stfs f0, 0x10(r31) -/* 80171878 0016E7D8 C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 8017187C 0016E7DC D0 1F 00 14 */ stfs f0, 0x14(r31) -lbl_80171880: -/* 80171880 0016E7E0 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80171884 0016E7E4 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 80171888 0016E7E8 7C 08 03 A6 */ mtlr r0 -/* 8017188C 0016E7EC 38 21 00 30 */ addi r1, r1, 0x30 -/* 80171890 0016E7F0 4E 80 00 20 */ blr - -.global Touch__8CMetroidFR6CActorR13CStateManager -Touch__8CMetroidFR6CActorR13CStateManager: -/* 80171894 0016E7F4 94 21 FF 80 */ stwu r1, -0x80(r1) -/* 80171898 0016E7F8 7C 08 02 A6 */ mflr r0 -/* 8017189C 0016E7FC 90 01 00 84 */ stw r0, 0x84(r1) -/* 801718A0 0016E800 DB E1 00 70 */ stfd f31, 0x70(r1) -/* 801718A4 0016E804 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 -/* 801718A8 0016E808 93 E1 00 6C */ stw r31, 0x6c(r1) -/* 801718AC 0016E80C 93 C1 00 68 */ stw r30, 0x68(r1) -/* 801718B0 0016E810 93 A1 00 64 */ stw r29, 0x64(r1) -/* 801718B4 0016E814 93 81 00 60 */ stw r28, 0x60(r1) -/* 801718B8 0016E818 88 03 04 00 */ lbz r0, 0x400(r3) -/* 801718BC 0016E81C 7C 7C 1B 78 */ mr r28, r3 -/* 801718C0 0016E820 7C 9D 23 78 */ mr r29, r4 -/* 801718C4 0016E824 7C BE 2B 78 */ mr r30, r5 -/* 801718C8 0016E828 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 801718CC 0016E82C 41 82 01 88 */ beq lbl_80171A54 -/* 801718D0 0016E830 38 61 00 10 */ addi r3, r1, 0x10 -/* 801718D4 0016E834 4B F3 BE A5 */ bl "__ct__29TCastToPtr<15CGameProjectile>FR7CEntity" -/* 801718D8 0016E838 83 E3 00 04 */ lwz r31, 4(r3) -/* 801718DC 0016E83C 28 1F 00 00 */ cmplwi r31, 0 -/* 801718E0 0016E840 41 82 01 64 */ beq lbl_80171A44 -/* 801718E4 0016E844 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 801718E8 0016E848 A0 9F 00 EC */ lhz r4, 0xec(r31) -/* 801718EC 0016E84C A0 03 00 08 */ lhz r0, 8(r3) -/* 801718F0 0016E850 7C 04 00 40 */ cmplw r4, r0 -/* 801718F4 0016E854 40 82 01 40 */ bne lbl_80171A34 -/* 801718F8 0016E858 7F 83 E3 78 */ mr r3, r28 -/* 801718FC 0016E85C 81 9C 00 00 */ lwz r12, 0(r28) -/* 80171900 0016E860 81 8C 00 38 */ lwz r12, 0x38(r12) -/* 80171904 0016E864 7D 89 03 A6 */ mtctr r12 -/* 80171908 0016E868 4E 80 04 21 */ bctrl -/* 8017190C 0016E86C 80 1C 03 FC */ lwz r0, 0x3fc(r28) -/* 80171910 0016E870 2C 00 00 02 */ cmpwi r0, 2 -/* 80171914 0016E874 41 82 01 20 */ beq lbl_80171A34 -/* 80171918 0016E878 80 1F 00 E8 */ lwz r0, 0xe8(r31) -/* 8017191C 0016E87C 54 00 07 38 */ rlwinm r0, r0, 0, 0x1c, 0x1c -/* 80171920 0016E880 2C 00 00 08 */ cmpwi r0, 8 -/* 80171924 0016E884 40 82 01 10 */ bne lbl_80171A34 -/* 80171928 0016E888 88 01 00 0C */ lbz r0, 0xc(r1) -/* 8017192C 0016E88C 38 A0 00 00 */ li r5, 0 -/* 80171930 0016E890 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 -/* 80171934 0016E894 38 C0 00 01 */ li r6, 1 -/* 80171938 0016E898 98 01 00 0C */ stb r0, 0xc(r1) -/* 8017193C 0016E89C 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 80171940 0016E8A0 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 -/* 80171944 0016E8A4 38 81 00 08 */ addi r4, r1, 8 -/* 80171948 0016E8A8 98 01 00 0C */ stb r0, 0xc(r1) -/* 8017194C 0016E8AC 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 80171950 0016E8B0 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a -/* 80171954 0016E8B4 38 A0 00 00 */ li r5, 0 -/* 80171958 0016E8B8 90 C1 00 08 */ stw r6, 8(r1) -/* 8017195C 0016E8BC 98 01 00 0C */ stb r0, 0xc(r1) -/* 80171960 0016E8C0 4B F9 0C 25 */ bl WeaponHits__20CDamageVulnerabilityCFRC11CWeaponModei -/* 80171964 0016E8C4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80171968 0016E8C8 41 82 00 CC */ beq lbl_80171A34 -/* 8017196C 0016E8CC 80 1F 00 E8 */ lwz r0, 0xe8(r31) -/* 80171970 0016E8D0 C3 E2 A0 98 */ lfs f31, lbl_805ABDB8@sda21(r2) -/* 80171974 0016E8D4 54 00 07 7A */ rlwinm r0, r0, 0, 0x1d, 0x1d -/* 80171978 0016E8D8 2C 00 00 04 */ cmpwi r0, 4 -/* 8017197C 0016E8DC 40 82 00 08 */ bne lbl_80171984 -/* 80171980 0016E8E0 C3 E2 A0 84 */ lfs f31, lbl_805ABDA4@sda21(r2) -lbl_80171984: -/* 80171984 0016E8E4 C0 BF 00 50 */ lfs f5, 0x50(r31) -/* 80171988 0016E8E8 38 61 00 30 */ addi r3, r1, 0x30 -/* 8017198C 0016E8EC C0 1C 00 50 */ lfs f0, 0x50(r28) -/* 80171990 0016E8F0 38 9C 00 34 */ addi r4, r28, 0x34 -/* 80171994 0016E8F4 C0 9F 00 60 */ lfs f4, 0x60(r31) -/* 80171998 0016E8F8 38 A1 00 24 */ addi r5, r1, 0x24 -/* 8017199C 0016E8FC C0 3C 00 60 */ lfs f1, 0x60(r28) -/* 801719A0 0016E900 EC 45 00 28 */ fsubs f2, f5, f0 -/* 801719A4 0016E904 C0 7F 00 40 */ lfs f3, 0x40(r31) -/* 801719A8 0016E908 C0 1C 00 40 */ lfs f0, 0x40(r28) -/* 801719AC 0016E90C EC 24 08 28 */ fsubs f1, f4, f1 -/* 801719B0 0016E910 EC 03 00 28 */ fsubs f0, f3, f0 -/* 801719B4 0016E914 D0 41 00 4C */ stfs f2, 0x4c(r1) -/* 801719B8 0016E918 D0 21 00 50 */ stfs f1, 0x50(r1) -/* 801719BC 0016E91C D0 01 00 48 */ stfs f0, 0x48(r1) -/* 801719C0 0016E920 C0 5F 02 9C */ lfs f2, 0x29c(r31) -/* 801719C4 0016E924 C0 3F 02 A0 */ lfs f1, 0x2a0(r31) -/* 801719C8 0016E928 C0 1F 02 98 */ lfs f0, 0x298(r31) -/* 801719CC 0016E92C EC 45 10 28 */ fsubs f2, f5, f2 -/* 801719D0 0016E930 EC 24 08 28 */ fsubs f1, f4, f1 -/* 801719D4 0016E934 EC 03 00 28 */ fsubs f0, f3, f0 -/* 801719D8 0016E938 D0 41 00 28 */ stfs f2, 0x28(r1) -/* 801719DC 0016E93C D0 01 00 24 */ stfs f0, 0x24(r1) -/* 801719E0 0016E940 D0 21 00 2C */ stfs f1, 0x2c(r1) -/* 801719E4 0016E944 48 1A 10 41 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f -/* 801719E8 0016E948 38 61 00 3C */ addi r3, r1, 0x3c -/* 801719EC 0016E94C 38 81 00 30 */ addi r4, r1, 0x30 -/* 801719F0 0016E950 48 1A 23 E1 */ bl __ct__11CUnitVectorFRC9CVector3f -/* 801719F4 0016E954 C0 1C 04 FC */ lfs f0, 0x4fc(r28) -/* 801719F8 0016E958 7F 83 E3 78 */ mr r3, r28 -/* 801719FC 0016E95C 80 C1 00 3C */ lwz r6, 0x3c(r1) -/* 80171A00 0016E960 7F C4 F3 78 */ mr r4, r30 -/* 80171A04 0016E964 80 E1 00 40 */ lwz r7, 0x40(r1) -/* 80171A08 0016E968 EC 3F 00 32 */ fmuls f1, f31, f0 -/* 80171A0C 0016E96C 80 01 00 44 */ lwz r0, 0x44(r1) -/* 80171A10 0016E970 38 A1 00 48 */ addi r5, r1, 0x48 -/* 80171A14 0016E974 90 C1 00 18 */ stw r6, 0x18(r1) -/* 80171A18 0016E978 38 C1 00 18 */ addi r6, r1, 0x18 -/* 80171A1C 0016E97C 90 E1 00 1C */ stw r7, 0x1c(r1) -/* 80171A20 0016E980 90 01 00 20 */ stw r0, 0x20(r1) -/* 80171A24 0016E984 81 9C 00 00 */ lwz r12, 0(r28) -/* 80171A28 0016E988 81 8C 02 90 */ lwz r12, 0x290(r12) -/* 80171A2C 0016E98C 7D 89 03 A6 */ mtctr r12 -/* 80171A30 0016E990 4E 80 04 21 */ bctrl -lbl_80171A34: -/* 80171A34 0016E994 88 1C 09 BF */ lbz r0, 0x9bf(r28) -/* 80171A38 0016E998 38 60 00 01 */ li r3, 1 -/* 80171A3C 0016E99C 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 80171A40 0016E9A0 98 1C 09 BF */ stb r0, 0x9bf(r28) -lbl_80171A44: -/* 80171A44 0016E9A4 7F 83 E3 78 */ mr r3, r28 -/* 80171A48 0016E9A8 7F A4 EB 78 */ mr r4, r29 -/* 80171A4C 0016E9AC 7F C5 F3 78 */ mr r5, r30 -/* 80171A50 0016E9B0 4B F0 80 51 */ bl Touch__10CPatternedFR6CActorR13CStateManager -lbl_80171A54: -/* 80171A54 0016E9B4 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 -/* 80171A58 0016E9B8 80 01 00 84 */ lwz r0, 0x84(r1) -/* 80171A5C 0016E9BC CB E1 00 70 */ lfd f31, 0x70(r1) -/* 80171A60 0016E9C0 83 E1 00 6C */ lwz r31, 0x6c(r1) -/* 80171A64 0016E9C4 83 C1 00 68 */ lwz r30, 0x68(r1) -/* 80171A68 0016E9C8 83 A1 00 64 */ lwz r29, 0x64(r1) -/* 80171A6C 0016E9CC 83 81 00 60 */ lwz r28, 0x60(r1) -/* 80171A70 0016E9D0 7C 08 03 A6 */ mtlr r0 -/* 80171A74 0016E9D4 38 21 00 80 */ addi r1, r1, 0x80 -/* 80171A78 0016E9D8 4E 80 00 20 */ blr - -.global Render__8CMetroidCFRC13CStateManager -Render__8CMetroidCFRC13CStateManager: -/* 80171A7C 0016E9DC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80171A80 0016E9E0 7C 08 02 A6 */ mflr r0 -/* 80171A84 0016E9E4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80171A88 0016E9E8 4B F0 65 A5 */ bl Render__10CPatternedCFRC13CStateManager -/* 80171A8C 0016E9EC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80171A90 0016E9F0 7C 08 03 A6 */ mtlr r0 -/* 80171A94 0016E9F4 38 21 00 10 */ addi r1, r1, 0x10 -/* 80171A98 0016E9F8 4E 80 00 20 */ blr - -.global AcceptScriptMsg__8CMetroidF20EScriptObjectMessage9TUniqueIdR13CStateManager -AcceptScriptMsg__8CMetroidF20EScriptObjectMessage9TUniqueIdR13CStateManager: -/* 80171A9C 0016E9FC 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 80171AA0 0016EA00 7C 08 02 A6 */ mflr r0 -/* 80171AA4 0016EA04 90 01 00 44 */ stw r0, 0x44(r1) -/* 80171AA8 0016EA08 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 80171AAC 0016EA0C 7C 7F 1B 78 */ mr r31, r3 -/* 80171AB0 0016EA10 93 C1 00 38 */ stw r30, 0x38(r1) -/* 80171AB4 0016EA14 7C BE 2B 78 */ mr r30, r5 -/* 80171AB8 0016EA18 93 A1 00 34 */ stw r29, 0x34(r1) -/* 80171ABC 0016EA1C 7C DD 33 78 */ mr r29, r6 -/* 80171AC0 0016EA20 93 81 00 30 */ stw r28, 0x30(r1) -/* 80171AC4 0016EA24 7C 9C 23 78 */ mr r28, r4 -/* 80171AC8 0016EA28 A0 05 00 00 */ lhz r0, 0(r5) -/* 80171ACC 0016EA2C 38 A1 00 10 */ addi r5, r1, 0x10 -/* 80171AD0 0016EA30 B0 01 00 10 */ sth r0, 0x10(r1) -/* 80171AD4 0016EA34 4B F0 B0 A5 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager -/* 80171AD8 0016EA38 2C 1C 00 21 */ cmpwi r28, 0x21 -/* 80171ADC 0016EA3C 41 82 00 44 */ beq lbl_80171B20 -/* 80171AE0 0016EA40 40 80 00 1C */ bge lbl_80171AFC -/* 80171AE4 0016EA44 2C 1C 00 15 */ cmpwi r28, 0x15 -/* 80171AE8 0016EA48 41 82 00 D8 */ beq lbl_80171BC0 -/* 80171AEC 0016EA4C 40 80 01 3C */ bge lbl_80171C28 -/* 80171AF0 0016EA50 2C 1C 00 04 */ cmpwi r28, 4 -/* 80171AF4 0016EA54 41 82 00 44 */ beq lbl_80171B38 -/* 80171AF8 0016EA58 48 00 01 30 */ b lbl_80171C28 -lbl_80171AFC: -/* 80171AFC 0016EA5C 2C 1C 00 29 */ cmpwi r28, 0x29 -/* 80171B00 0016EA60 40 80 00 14 */ bge lbl_80171B14 -/* 80171B04 0016EA64 2C 1C 00 23 */ cmpwi r28, 0x23 -/* 80171B08 0016EA68 41 82 00 CC */ beq lbl_80171BD4 -/* 80171B0C 0016EA6C 40 80 01 1C */ bge lbl_80171C28 -/* 80171B10 0016EA70 48 00 00 28 */ b lbl_80171B38 -lbl_80171B14: -/* 80171B14 0016EA74 2C 1C 00 2B */ cmpwi r28, 0x2b -/* 80171B18 0016EA78 40 80 01 10 */ bge lbl_80171C28 -/* 80171B1C 0016EA7C 48 00 00 2C */ b lbl_80171B48 -lbl_80171B20: -/* 80171B20 0016EA80 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 80171B24 0016EA84 7F A4 EB 78 */ mr r4, r29 -/* 80171B28 0016EA88 4B FC 91 C9 */ bl Activate__15CBodyControllerFR13CStateManager -/* 80171B2C 0016EA8C 7F E3 FB 78 */ mr r3, r31 -/* 80171B30 0016EA90 4B FF FB 95 */ bl sub_801716c4 -/* 80171B34 0016EA94 48 00 00 F4 */ b lbl_80171C28 -lbl_80171B38: -/* 80171B38 0016EA98 7F E3 FB 78 */ mr r3, r31 -/* 80171B3C 0016EA9C 7F A4 EB 78 */ mr r4, r29 -/* 80171B40 0016EAA0 4B FF B6 E9 */ bl sub_8016d228 -/* 80171B44 0016EAA4 48 00 00 E4 */ b lbl_80171C28 -lbl_80171B48: -/* 80171B48 0016EAA8 A0 1E 00 00 */ lhz r0, 0(r30) -/* 80171B4C 0016EAAC 7F A3 EB 78 */ mr r3, r29 -/* 80171B50 0016EAB0 38 81 00 0C */ addi r4, r1, 0xc -/* 80171B54 0016EAB4 B0 01 00 0C */ sth r0, 0xc(r1) -/* 80171B58 0016EAB8 4B ED AA 4D */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 80171B5C 0016EABC 7C 64 1B 78 */ mr r4, r3 -/* 80171B60 0016EAC0 38 61 00 1C */ addi r3, r1, 0x1c -/* 80171B64 0016EAC4 4B F3 BB A9 */ bl "__ct__29TCastToPtr<15CGameProjectile>FP7CEntity" -/* 80171B68 0016EAC8 83 C3 00 04 */ lwz r30, 4(r3) -/* 80171B6C 0016EACC 28 1E 00 00 */ cmplwi r30, 0 -/* 80171B70 0016EAD0 41 82 00 3C */ beq lbl_80171BAC -/* 80171B74 0016EAD4 7F E3 FB 78 */ mr r3, r31 -/* 80171B78 0016EAD8 81 9F 00 00 */ lwz r12, 0(r31) -/* 80171B7C 0016EADC 81 8C 00 38 */ lwz r12, 0x38(r12) -/* 80171B80 0016EAE0 7D 89 03 A6 */ mtctr r12 -/* 80171B84 0016EAE4 4E 80 04 21 */ bctrl -/* 80171B88 0016EAE8 38 9E 01 2C */ addi r4, r30, 0x12c -/* 80171B8C 0016EAEC 38 A0 00 00 */ li r5, 0 -/* 80171B90 0016EAF0 4B F9 09 F5 */ bl WeaponHits__20CDamageVulnerabilityCFRC11CWeaponModei -/* 80171B94 0016EAF4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80171B98 0016EAF8 41 82 00 14 */ beq lbl_80171BAC -/* 80171B9C 0016EAFC C0 3E 01 34 */ lfs f1, 0x134(r30) -/* 80171BA0 0016EB00 7F E3 FB 78 */ mr r3, r31 -/* 80171BA4 0016EB04 7F A4 EB 78 */ mr r4, r29 -/* 80171BA8 0016EB08 4B FF C1 61 */ bl sub_8016dd08 -lbl_80171BAC: -/* 80171BAC 0016EB0C 88 1F 09 BF */ lbz r0, 0x9bf(r31) -/* 80171BB0 0016EB10 38 60 00 01 */ li r3, 1 -/* 80171BB4 0016EB14 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80171BB8 0016EB18 98 1F 09 BF */ stb r0, 0x9bf(r31) -/* 80171BBC 0016EB1C 48 00 00 6C */ b lbl_80171C28 -lbl_80171BC0: -/* 80171BC0 0016EB20 88 1F 09 BF */ lbz r0, 0x9bf(r31) -/* 80171BC4 0016EB24 38 60 00 01 */ li r3, 1 -/* 80171BC8 0016EB28 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80171BCC 0016EB2C 98 1F 09 BF */ stb r0, 0x9bf(r31) -/* 80171BD0 0016EB30 48 00 00 58 */ b lbl_80171C28 -lbl_80171BD4: -/* 80171BD4 0016EB34 A0 7F 06 98 */ lhz r3, 0x698(r31) -/* 80171BD8 0016EB38 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80171BDC 0016EB3C 7C 03 00 40 */ cmplw r3, r0 -/* 80171BE0 0016EB40 40 82 00 1C */ bne lbl_80171BFC -/* 80171BE4 0016EB44 7F E4 FB 78 */ mr r4, r31 -/* 80171BE8 0016EB48 7F A5 EB 78 */ mr r5, r29 -/* 80171BEC 0016EB4C 38 61 00 08 */ addi r3, r1, 8 -/* 80171BF0 0016EB50 48 0C 85 F9 */ bl GetTeamAiMgr__10CTeamAiMgrF3CAiRC13CStateManager -/* 80171BF4 0016EB54 A0 01 00 08 */ lhz r0, 8(r1) -/* 80171BF8 0016EB58 B0 1F 06 98 */ sth r0, 0x698(r31) -lbl_80171BFC: -/* 80171BFC 0016EB5C 80 BF 00 04 */ lwz r5, 4(r31) -/* 80171C00 0016EB60 80 9D 08 50 */ lwz r4, 0x850(r29) -/* 80171C04 0016EB64 54 A3 18 38 */ slwi r3, r5, 3 -/* 80171C08 0016EB68 90 A1 00 18 */ stw r5, 0x18(r1) -/* 80171C0C 0016EB6C 80 84 00 20 */ lwz r4, 0x20(r4) -/* 80171C10 0016EB70 38 03 00 04 */ addi r0, r3, 4 -/* 80171C14 0016EB74 90 A1 00 14 */ stw r5, 0x14(r1) -/* 80171C18 0016EB78 7C 64 00 2E */ lwzx r3, r4, r0 -/* 80171C1C 0016EB7C 80 63 01 2C */ lwz r3, 0x12c(r3) -/* 80171C20 0016EB80 80 03 10 BC */ lwz r0, 0x10bc(r3) -/* 80171C24 0016EB84 90 1F 06 C0 */ stw r0, 0x6c0(r31) -lbl_80171C28: -/* 80171C28 0016EB88 80 01 00 44 */ lwz r0, 0x44(r1) -/* 80171C2C 0016EB8C 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 80171C30 0016EB90 83 C1 00 38 */ lwz r30, 0x38(r1) -/* 80171C34 0016EB94 83 A1 00 34 */ lwz r29, 0x34(r1) -/* 80171C38 0016EB98 83 81 00 30 */ lwz r28, 0x30(r1) -/* 80171C3C 0016EB9C 7C 08 03 A6 */ mtlr r0 -/* 80171C40 0016EBA0 38 21 00 40 */ addi r1, r1, 0x40 -/* 80171C44 0016EBA4 4E 80 00 20 */ blr - -.global Think__8CMetroidFfR13CStateManager -Think__8CMetroidFfR13CStateManager: -/* 80171C48 0016EBA8 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80171C4C 0016EBAC 7C 08 02 A6 */ mflr r0 -/* 80171C50 0016EBB0 90 01 00 34 */ stw r0, 0x34(r1) -/* 80171C54 0016EBB4 DB E1 00 28 */ stfd f31, 0x28(r1) -/* 80171C58 0016EBB8 FF E0 08 90 */ fmr f31, f1 -/* 80171C5C 0016EBBC 93 E1 00 24 */ stw r31, 0x24(r1) -/* 80171C60 0016EBC0 7C 9F 23 78 */ mr r31, r4 -/* 80171C64 0016EBC4 93 C1 00 20 */ stw r30, 0x20(r1) -/* 80171C68 0016EBC8 7C 7E 1B 78 */ mr r30, r3 -/* 80171C6C 0016EBCC 88 03 00 30 */ lbz r0, 0x30(r3) -/* 80171C70 0016EBD0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80171C74 0016EBD4 41 82 00 90 */ beq lbl_80171D04 -/* 80171C78 0016EBD8 A0 DE 00 08 */ lhz r6, 8(r30) -/* 80171C7C 0016EBDC 7F E3 FB 78 */ mr r3, r31 -/* 80171C80 0016EBE0 38 81 00 10 */ addi r4, r1, 0x10 -/* 80171C84 0016EBE4 38 A1 00 0C */ addi r5, r1, 0xc -/* 80171C88 0016EBE8 B0 C1 00 0C */ sth r6, 0xc(r1) -/* 80171C8C 0016EBEC A0 1E 06 98 */ lhz r0, 0x698(r30) -/* 80171C90 0016EBF0 B0 C1 00 08 */ sth r6, 8(r1) -/* 80171C94 0016EBF4 B0 01 00 10 */ sth r0, 0x10(r1) -/* 80171C98 0016EBF8 48 0C 84 E9 */ bl GetTeamAiRole__10CTeamAiMgrCFRC13CStateManager9TUniqueId9TUniqueId -/* 80171C9C 0016EBFC 28 03 00 00 */ cmplwi r3, 0 -/* 80171CA0 0016EC00 40 82 00 10 */ bne lbl_80171CB0 -/* 80171CA4 0016EC04 7F C3 F3 78 */ mr r3, r30 -/* 80171CA8 0016EC08 7F E4 FB 78 */ mr r4, r31 -/* 80171CAC 0016EC0C 4B FF B6 21 */ bl sub_8016d2cc -lbl_80171CB0: -/* 80171CB0 0016EC10 FC 20 F8 90 */ fmr f1, f31 -/* 80171CB4 0016EC14 7F C3 F3 78 */ mr r3, r30 -/* 80171CB8 0016EC18 7F E4 FB 78 */ mr r4, r31 -/* 80171CBC 0016EC1C 4B FF 84 19 */ bl sub_8016a0d4 -/* 80171CC0 0016EC20 FC 20 F8 90 */ fmr f1, f31 -/* 80171CC4 0016EC24 7F C3 F3 78 */ mr r3, r30 -/* 80171CC8 0016EC28 7F E4 FB 78 */ mr r4, r31 -/* 80171CCC 0016EC2C 4B FF A0 29 */ bl sub_8016bcf4 -/* 80171CD0 0016EC30 FC 20 F8 90 */ fmr f1, f31 -/* 80171CD4 0016EC34 7F C3 F3 78 */ mr r3, r30 -/* 80171CD8 0016EC38 7F E4 FB 78 */ mr r4, r31 -/* 80171CDC 0016EC3C 4B FF AB 4D */ bl sub_8016c828 -/* 80171CE0 0016EC40 7F C3 F3 78 */ mr r3, r30 -/* 80171CE4 0016EC44 4B FF FA 79 */ bl sub_8017175c -/* 80171CE8 0016EC48 7F C3 F3 78 */ mr r3, r30 -/* 80171CEC 0016EC4C 7F E4 FB 78 */ mr r4, r31 -/* 80171CF0 0016EC50 4B FF A7 75 */ bl sub_8016c464 -/* 80171CF4 0016EC54 FC 20 F8 90 */ fmr f1, f31 -/* 80171CF8 0016EC58 7F C3 F3 78 */ mr r3, r30 -/* 80171CFC 0016EC5C 7F E4 FB 78 */ mr r4, r31 -/* 80171D00 0016EC60 4B F0 7E 19 */ bl Think__10CPatternedFfR13CStateManager -lbl_80171D04: -/* 80171D04 0016EC64 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80171D08 0016EC68 CB E1 00 28 */ lfd f31, 0x28(r1) -/* 80171D0C 0016EC6C 83 E1 00 24 */ lwz r31, 0x24(r1) -/* 80171D10 0016EC70 83 C1 00 20 */ lwz r30, 0x20(r1) -/* 80171D14 0016EC74 7C 08 03 A6 */ mtlr r0 -/* 80171D18 0016EC78 38 21 00 30 */ addi r1, r1, 0x30 -/* 80171D1C 0016EC7C 4E 80 00 20 */ blr - -.global Accept__8CMetroidFR8IVisitor -Accept__8CMetroidFR8IVisitor: -/* 80171D20 0016EC80 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80171D24 0016EC84 7C 08 02 A6 */ mflr r0 -/* 80171D28 0016EC88 90 01 00 14 */ stw r0, 0x14(r1) -/* 80171D2C 0016EC8C 7C 60 1B 78 */ mr r0, r3 -/* 80171D30 0016EC90 7C 83 23 78 */ mr r3, r4 -/* 80171D34 0016EC94 81 84 00 00 */ lwz r12, 0(r4) -/* 80171D38 0016EC98 7C 04 03 78 */ mr r4, r0 -/* 80171D3C 0016EC9C 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 80171D40 0016ECA0 7D 89 03 A6 */ mtctr r12 -/* 80171D44 0016ECA4 4E 80 04 21 */ bctrl -/* 80171D48 0016ECA8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80171D4C 0016ECAC 7C 08 03 A6 */ mtlr r0 -/* 80171D50 0016ECB0 38 21 00 10 */ addi r1, r1, 0x10 -/* 80171D54 0016ECB4 4E 80 00 20 */ blr - -.global __dt__8CMetroid -__dt__8CMetroid: -/* 80171D58 0016ECB8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80171D5C 0016ECBC 7C 08 02 A6 */ mflr r0 -/* 80171D60 0016ECC0 90 01 00 14 */ stw r0, 0x14(r1) -/* 80171D64 0016ECC4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80171D68 0016ECC8 7C 9F 23 78 */ mr r31, r4 -/* 80171D6C 0016ECCC 93 C1 00 08 */ stw r30, 8(r1) -/* 80171D70 0016ECD0 7C 7E 1B 79 */ or. r30, r3, r3 -/* 80171D74 0016ECD4 41 82 00 D8 */ beq lbl_80171E4C -/* 80171D78 0016ECD8 3C 60 80 3E */ lis r3, lbl_803E3AD8@ha -/* 80171D7C 0016ECDC 34 1E 09 54 */ addic. r0, r30, 0x954 -/* 80171D80 0016ECE0 38 03 3A D8 */ addi r0, r3, lbl_803E3AD8@l -/* 80171D84 0016ECE4 90 1E 00 00 */ stw r0, 0(r30) -/* 80171D88 0016ECE8 41 82 00 10 */ beq lbl_80171D98 -/* 80171D8C 0016ECEC 38 7E 09 54 */ addi r3, r30, 0x954 -/* 80171D90 0016ECF0 38 80 FF FF */ li r4, -1 -/* 80171D94 0016ECF4 4B F9 48 75 */ bl __dt__16CActorParametersFv -lbl_80171D98: -/* 80171D98 0016ECF8 34 1E 06 C0 */ addic. r0, r30, 0x6c0 -/* 80171D9C 0016ECFC 41 82 00 60 */ beq lbl_80171DFC -/* 80171DA0 0016ED00 34 1E 06 C4 */ addic. r0, r30, 0x6c4 -/* 80171DA4 0016ED04 41 82 00 58 */ beq lbl_80171DFC -/* 80171DA8 0016ED08 80 BE 06 C4 */ lwz r5, 0x6c4(r30) -/* 80171DAC 0016ED0C 38 60 00 00 */ li r3, 0 -/* 80171DB0 0016ED10 2C 05 00 00 */ cmpwi r5, 0 -/* 80171DB4 0016ED14 40 81 00 40 */ ble lbl_80171DF4 -/* 80171DB8 0016ED18 2C 05 00 08 */ cmpwi r5, 8 -/* 80171DBC 0016ED1C 38 85 FF F8 */ addi r4, r5, -8 -/* 80171DC0 0016ED20 40 81 00 20 */ ble lbl_80171DE0 -/* 80171DC4 0016ED24 38 04 00 07 */ addi r0, r4, 7 -/* 80171DC8 0016ED28 54 00 E8 FE */ srwi r0, r0, 3 -/* 80171DCC 0016ED2C 7C 09 03 A6 */ mtctr r0 -/* 80171DD0 0016ED30 2C 04 00 00 */ cmpwi r4, 0 -/* 80171DD4 0016ED34 40 81 00 0C */ ble lbl_80171DE0 -lbl_80171DD8: -/* 80171DD8 0016ED38 38 63 00 08 */ addi r3, r3, 8 -/* 80171DDC 0016ED3C 42 00 FF FC */ bdnz lbl_80171DD8 -lbl_80171DE0: -/* 80171DE0 0016ED40 7C 03 28 50 */ subf r0, r3, r5 -/* 80171DE4 0016ED44 7C 09 03 A6 */ mtctr r0 -/* 80171DE8 0016ED48 7C 03 28 00 */ cmpw r3, r5 -/* 80171DEC 0016ED4C 40 80 00 08 */ bge lbl_80171DF4 -lbl_80171DF0: -/* 80171DF0 0016ED50 42 00 00 00 */ bdnz lbl_80171DF0 -lbl_80171DF4: -/* 80171DF4 0016ED54 38 00 00 00 */ li r0, 0 -/* 80171DF8 0016ED58 90 1E 06 C4 */ stw r0, 0x6c4(r30) -lbl_80171DFC: -/* 80171DFC 0016ED5C 34 1E 06 A0 */ addic. r0, r30, 0x6a0 -/* 80171E00 0016ED60 41 82 00 24 */ beq lbl_80171E24 -/* 80171E04 0016ED64 3C 60 80 3F */ lis r3, lbl_803ECAF8@ha -/* 80171E08 0016ED68 34 1E 06 A0 */ addic. r0, r30, 0x6a0 -/* 80171E0C 0016ED6C 38 03 CA F8 */ addi r0, r3, lbl_803ECAF8@l -/* 80171E10 0016ED70 90 1E 06 A0 */ stw r0, 0x6a0(r30) -/* 80171E14 0016ED74 41 82 00 10 */ beq lbl_80171E24 -/* 80171E18 0016ED78 3C 60 80 3E */ lis r3, lbl_803D97E4@ha -/* 80171E1C 0016ED7C 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l -/* 80171E20 0016ED80 90 1E 06 A0 */ stw r0, 0x6a0(r30) -lbl_80171E24: -/* 80171E24 0016ED84 38 7E 05 6C */ addi r3, r30, 0x56c -/* 80171E28 0016ED88 38 80 FF FF */ li r4, -1 -/* 80171E2C 0016ED8C 4B F5 DE ED */ bl sub_800cfd18 -/* 80171E30 0016ED90 7F C3 F3 78 */ mr r3, r30 -/* 80171E34 0016ED94 38 80 00 00 */ li r4, 0 -/* 80171E38 0016ED98 4B F0 57 39 */ bl __dt__10CPatternedFv -/* 80171E3C 0016ED9C 7F E0 07 35 */ extsh. r0, r31 -/* 80171E40 0016EDA0 40 81 00 0C */ ble lbl_80171E4C -/* 80171E44 0016EDA4 7F C3 F3 78 */ mr r3, r30 -/* 80171E48 0016EDA8 48 1A 3A E9 */ bl Free__7CMemoryFPCv -lbl_80171E4C: -/* 80171E4C 0016EDAC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80171E50 0016EDB0 7F C3 F3 78 */ mr r3, r30 -/* 80171E54 0016EDB4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80171E58 0016EDB8 83 C1 00 08 */ lwz r30, 8(r1) -/* 80171E5C 0016EDBC 7C 08 03 A6 */ mtlr r0 -/* 80171E60 0016EDC0 38 21 00 10 */ addi r1, r1, 0x10 -/* 80171E64 0016EDC4 4E 80 00 20 */ blr - -.global "__ct__8CMetroidF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersRC12CMetroidData" -"__ct__8CMetroidF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersRC12CMetroidData": -/* 80171E68 0016EDC8 94 21 FE E0 */ stwu r1, -0x120(r1) -/* 80171E6C 0016EDCC 7C 08 02 A6 */ mflr r0 -/* 80171E70 0016EDD0 90 01 01 24 */ stw r0, 0x124(r1) -/* 80171E74 0016EDD4 DB E1 01 10 */ stfd f31, 0x110(r1) -/* 80171E78 0016EDD8 F3 E1 01 18 */ psq_st f31, 280(r1), 0, qr0 -/* 80171E7C 0016EDDC DB C1 01 00 */ stfd f30, 0x100(r1) -/* 80171E80 0016EDE0 F3 C1 01 08 */ psq_st f30, 264(r1), 0, qr0 -/* 80171E84 0016EDE4 DB A1 00 F0 */ stfd f29, 0xf0(r1) -/* 80171E88 0016EDE8 F3 A1 00 F8 */ psq_st f29, 248(r1), 0, qr0 -/* 80171E8C 0016EDEC DB 81 00 E0 */ stfd f28, 0xe0(r1) -/* 80171E90 0016EDF0 F3 81 00 E8 */ psq_st f28, 232(r1), 0, qr0 -/* 80171E94 0016EDF4 BF 21 00 C4 */ stmw r25, 0xc4(r1) -/* 80171E98 0016EDF8 A0 04 00 00 */ lhz r0, 0(r4) -/* 80171E9C 0016EDFC 7D 5C 53 78 */ mr r28, r10 -/* 80171EA0 0016EE00 7C DB 33 78 */ mr r27, r6 -/* 80171EA4 0016EE04 7C EC 3B 78 */ mr r12, r7 -/* 80171EA8 0016EE08 B0 01 00 20 */ sth r0, 0x20(r1) -/* 80171EAC 0016EE0C 7D 04 43 78 */ mr r4, r8 -/* 80171EB0 0016EE10 7D 2A 4B 78 */ mr r10, r9 -/* 80171EB4 0016EE14 7C A6 2B 78 */ mr r6, r5 -/* 80171EB8 0016EE18 93 81 00 08 */ stw r28, 8(r1) -/* 80171EBC 0016EE1C 39 60 00 01 */ li r11, 1 -/* 80171EC0 0016EE20 7C 89 23 78 */ mr r9, r4 -/* 80171EC4 0016EE24 38 00 00 03 */ li r0, 3 -/* 80171EC8 0016EE28 91 61 00 0C */ stw r11, 0xc(r1) -/* 80171ECC 0016EE2C 7C 7A 1B 78 */ mr r26, r3 -/* 80171ED0 0016EE30 83 A1 01 28 */ lwz r29, 0x128(r1) -/* 80171ED4 0016EE34 7F 67 DB 78 */ mr r7, r27 -/* 80171ED8 0016EE38 91 61 00 10 */ stw r11, 0x10(r1) -/* 80171EDC 0016EE3C 7D 88 63 78 */ mr r8, r12 -/* 80171EE0 0016EE40 83 E1 01 2C */ lwz r31, 0x12c(r1) -/* 80171EE4 0016EE44 38 A1 00 20 */ addi r5, r1, 0x20 -/* 80171EE8 0016EE48 90 01 00 14 */ stw r0, 0x14(r1) -/* 80171EEC 0016EE4C 38 80 00 13 */ li r4, 0x13 -/* 80171EF0 0016EE50 83 C1 01 30 */ lwz r30, 0x130(r1) -/* 80171EF4 0016EE54 93 A1 00 18 */ stw r29, 0x18(r1) -/* 80171EF8 0016EE58 91 61 00 1C */ stw r11, 0x1c(r1) -/* 80171EFC 0016EE5C 4B F0 B5 55 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" -/* 80171F00 0016EE60 3C 60 80 3E */ lis r3, lbl_803E3AD8@ha -/* 80171F04 0016EE64 38 00 FF FF */ li r0, -1 -/* 80171F08 0016EE68 38 63 3A D8 */ addi r3, r3, lbl_803E3AD8@l -/* 80171F0C 0016EE6C 7F E4 FB 78 */ mr r4, r31 -/* 80171F10 0016EE70 90 7A 00 00 */ stw r3, 0(r26) -/* 80171F14 0016EE74 38 7A 05 6C */ addi r3, r26, 0x56c -/* 80171F18 0016EE78 90 1A 05 68 */ stw r0, 0x568(r26) -/* 80171F1C 0016EE7C 4B FF 99 15 */ bl sub_8016b830 -/* 80171F20 0016EE80 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80171F24 0016EE84 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80171F28 0016EE88 C0 02 A1 08 */ lfs f0, lbl_805ABE28@sda21(r2) -/* 80171F2C 0016EE8C 3B E3 66 A0 */ addi r31, r3, skZero3f@l -/* 80171F30 0016EE90 B0 1A 06 98 */ sth r0, 0x698(r26) -/* 80171F34 0016EE94 3B 3A 06 A0 */ addi r25, r26, 0x6a0 -/* 80171F38 0016EE98 38 9A 00 68 */ addi r4, r26, 0x68 -/* 80171F3C 0016EE9C 80 BA 00 64 */ lwz r5, 0x64(r26) -/* 80171F40 0016EEA0 7F 23 CB 78 */ mr r3, r25 -/* 80171F44 0016EEA4 C3 FF 00 00 */ lfs f31, 0(r31) -/* 80171F48 0016EEA8 C0 45 00 04 */ lfs f2, 4(r5) -/* 80171F4C 0016EEAC C0 65 00 00 */ lfs f3, 0(r5) -/* 80171F50 0016EEB0 C0 25 00 08 */ lfs f1, 8(r5) -/* 80171F54 0016EEB4 EF 80 00 B2 */ fmuls f28, f0, f2 -/* 80171F58 0016EEB8 D0 61 00 64 */ stfs f3, 0x64(r1) -/* 80171F5C 0016EEBC C3 DF 00 04 */ lfs f30, 4(r31) -/* 80171F60 0016EEC0 D0 41 00 68 */ stfs f2, 0x68(r1) -/* 80171F64 0016EEC4 C3 BF 00 08 */ lfs f29, 8(r31) -/* 80171F68 0016EEC8 D0 21 00 6C */ stfs f1, 0x6c(r1) -/* 80171F6C 0016EECC 48 15 D9 49 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList -/* 80171F70 0016EED0 3C 60 80 3F */ lis r3, lbl_803ECAF8@ha -/* 80171F74 0016EED4 C0 22 A0 98 */ lfs f1, lbl_805ABDB8@sda21(r2) -/* 80171F78 0016EED8 38 03 CA F8 */ addi r0, r3, lbl_803ECAF8@l -/* 80171F7C 0016EEDC 38 7A 06 C0 */ addi r3, r26, 0x6c0 -/* 80171F80 0016EEE0 90 19 00 00 */ stw r0, 0(r25) -/* 80171F84 0016EEE4 FC 40 08 90 */ fmr f2, f1 -/* 80171F88 0016EEE8 38 80 00 00 */ li r4, 0 -/* 80171F8C 0016EEEC 38 A0 00 03 */ li r5, 3 -/* 80171F90 0016EEF0 D3 F9 00 10 */ stfs f31, 0x10(r25) -/* 80171F94 0016EEF4 D3 D9 00 14 */ stfs f30, 0x14(r25) -/* 80171F98 0016EEF8 D3 B9 00 18 */ stfs f29, 0x18(r25) -/* 80171F9C 0016EEFC D3 99 00 1C */ stfs f28, 0x1c(r25) -/* 80171FA0 0016EF00 80 DC 01 0C */ lwz r6, 0x10c(r28) -/* 80171FA4 0016EF04 48 05 6D F1 */ bl __ct__15CPathFindSearchFP7CPFAreaUiff -/* 80171FA8 0016EF08 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80171FAC 0016EF0C C0 22 A0 80 */ lfs f1, lbl_805ABDA0@sda21(r2) -/* 80171FB0 0016EF10 39 03 66 A0 */ addi r8, r3, skZero3f@l -/* 80171FB4 0016EF14 38 7B FF FE */ addi r3, r27, -2 -/* 80171FB8 0016EF18 C0 08 00 00 */ lfs f0, 0(r8) -/* 80171FBC 0016EF1C 20 1B 00 02 */ subfic r0, r27, 2 -/* 80171FC0 0016EF20 7C 60 03 78 */ or r0, r3, r0 -/* 80171FC4 0016EF24 38 C0 00 00 */ li r6, 0 -/* 80171FC8 0016EF28 D0 1A 07 A4 */ stfs f0, 0x7a4(r26) -/* 80171FCC 0016EF2C 7C 05 FE 70 */ srawi r5, r0, 0x1f -/* 80171FD0 0016EF30 38 00 FF FF */ li r0, -1 -/* 80171FD4 0016EF34 7F 84 E3 78 */ mr r4, r28 -/* 80171FD8 0016EF38 C0 1F 00 04 */ lfs f0, 4(r31) -/* 80171FDC 0016EF3C 38 7A 08 1C */ addi r3, r26, 0x81c -/* 80171FE0 0016EF40 D0 1A 07 A8 */ stfs f0, 0x7a8(r26) -/* 80171FE4 0016EF44 C0 1F 00 08 */ lfs f0, 8(r31) -/* 80171FE8 0016EF48 D0 1A 07 AC */ stfs f0, 0x7ac(r26) -/* 80171FEC 0016EF4C A0 ED A3 8C */ lhz r7, lbl_805A8F4C@sda21(r13) -/* 80171FF0 0016EF50 B0 FA 07 B0 */ sth r7, 0x7b0(r26) -/* 80171FF4 0016EF54 D0 3A 07 B4 */ stfs f1, 0x7b4(r26) -/* 80171FF8 0016EF58 D0 3A 07 B8 */ stfs f1, 0x7b8(r26) -/* 80171FFC 0016EF5C D0 3A 07 BC */ stfs f1, 0x7bc(r26) -/* 80172000 0016EF60 D0 3A 07 C0 */ stfs f1, 0x7c0(r26) -/* 80172004 0016EF64 D0 3A 07 C4 */ stfs f1, 0x7c4(r26) -/* 80172008 0016EF68 90 DA 07 C8 */ stw r6, 0x7c8(r26) -/* 8017200C 0016EF6C 90 BA 07 CC */ stw r5, 0x7cc(r26) -/* 80172010 0016EF70 80 BA 00 64 */ lwz r5, 0x64(r26) -/* 80172014 0016EF74 C0 45 00 04 */ lfs f2, 4(r5) -/* 80172018 0016EF78 C0 65 00 08 */ lfs f3, 8(r5) -/* 8017201C 0016EF7C C0 05 00 00 */ lfs f0, 0(r5) -/* 80172020 0016EF80 D0 1A 07 D0 */ stfs f0, 0x7d0(r26) -/* 80172024 0016EF84 D0 5A 07 D4 */ stfs f2, 0x7d4(r26) -/* 80172028 0016EF88 D0 7A 07 D8 */ stfs f3, 0x7d8(r26) -/* 8017202C 0016EF8C 80 BA 00 64 */ lwz r5, 0x64(r26) -/* 80172030 0016EF90 C0 45 00 04 */ lfs f2, 4(r5) -/* 80172034 0016EF94 C0 65 00 08 */ lfs f3, 8(r5) -/* 80172038 0016EF98 C0 05 00 00 */ lfs f0, 0(r5) -/* 8017203C 0016EF9C D0 1A 07 DC */ stfs f0, 0x7dc(r26) -/* 80172040 0016EFA0 D0 5A 07 E0 */ stfs f2, 0x7e0(r26) -/* 80172044 0016EFA4 D0 7A 07 E4 */ stfs f3, 0x7e4(r26) -/* 80172048 0016EFA8 80 BA 00 64 */ lwz r5, 0x64(r26) -/* 8017204C 0016EFAC C0 45 00 04 */ lfs f2, 4(r5) -/* 80172050 0016EFB0 C0 65 00 08 */ lfs f3, 8(r5) -/* 80172054 0016EFB4 C0 05 00 00 */ lfs f0, 0(r5) -/* 80172058 0016EFB8 D0 1A 07 E8 */ stfs f0, 0x7e8(r26) -/* 8017205C 0016EFBC D0 5A 07 EC */ stfs f2, 0x7ec(r26) -/* 80172060 0016EFC0 D0 7A 07 F0 */ stfs f3, 0x7f0(r26) -/* 80172064 0016EFC4 D0 3A 07 F4 */ stfs f1, 0x7f4(r26) -/* 80172068 0016EFC8 D0 3A 07 F8 */ stfs f1, 0x7f8(r26) -/* 8017206C 0016EFCC D0 3A 07 FC */ stfs f1, 0x7fc(r26) -/* 80172070 0016EFD0 D0 3A 08 00 */ stfs f1, 0x800(r26) -/* 80172074 0016EFD4 D0 3A 08 04 */ stfs f1, 0x804(r26) -/* 80172078 0016EFD8 D0 3A 08 08 */ stfs f1, 0x808(r26) -/* 8017207C 0016EFDC C0 08 00 00 */ lfs f0, 0(r8) -/* 80172080 0016EFE0 D0 1A 08 0C */ stfs f0, 0x80c(r26) -/* 80172084 0016EFE4 C0 1F 00 04 */ lfs f0, 4(r31) -/* 80172088 0016EFE8 D0 1A 08 10 */ stfs f0, 0x810(r26) -/* 8017208C 0016EFEC C0 1F 00 08 */ lfs f0, 8(r31) -/* 80172090 0016EFF0 D0 1A 08 14 */ stfs f0, 0x814(r26) -/* 80172094 0016EFF4 90 1A 08 18 */ stw r0, 0x818(r26) -/* 80172098 0016EFF8 48 00 02 15 */ bl sub_801722ac -/* 8017209C 0016EFFC 7F A4 EB 78 */ mr r4, r29 -/* 801720A0 0016F000 38 7A 09 54 */ addi r3, r26, 0x954 -/* 801720A4 0016F004 4B F5 35 79 */ bl __ct__16CActorParametersFRC16CActorParameters -/* 801720A8 0016F008 A0 1E 00 00 */ lhz r0, 0(r30) -/* 801720AC 0016F00C 38 80 00 00 */ li r4, 0 -/* 801720B0 0016F010 38 61 00 24 */ addi r3, r1, 0x24 -/* 801720B4 0016F014 B0 1A 09 BC */ sth r0, 0x9bc(r26) -/* 801720B8 0016F018 98 9A 09 BE */ stb r4, 0x9be(r26) -/* 801720BC 0016F01C 88 1A 09 BF */ lbz r0, 0x9bf(r26) -/* 801720C0 0016F020 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 -/* 801720C4 0016F024 98 1A 09 BF */ stb r0, 0x9bf(r26) -/* 801720C8 0016F028 88 1A 09 BF */ lbz r0, 0x9bf(r26) -/* 801720CC 0016F02C 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 -/* 801720D0 0016F030 98 1A 09 BF */ stb r0, 0x9bf(r26) -/* 801720D4 0016F034 88 1A 09 BF */ lbz r0, 0x9bf(r26) -/* 801720D8 0016F038 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a -/* 801720DC 0016F03C 98 1A 09 BF */ stb r0, 0x9bf(r26) -/* 801720E0 0016F040 88 1A 09 BF */ lbz r0, 0x9bf(r26) -/* 801720E4 0016F044 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b -/* 801720E8 0016F048 98 1A 09 BF */ stb r0, 0x9bf(r26) -/* 801720EC 0016F04C 88 1A 09 BF */ lbz r0, 0x9bf(r26) -/* 801720F0 0016F050 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c -/* 801720F4 0016F054 98 1A 09 BF */ stb r0, 0x9bf(r26) -/* 801720F8 0016F058 88 1A 09 BF */ lbz r0, 0x9bf(r26) -/* 801720FC 0016F05C 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d -/* 80172100 0016F060 98 1A 09 BF */ stb r0, 0x9bf(r26) -/* 80172104 0016F064 88 1A 09 BF */ lbz r0, 0x9bf(r26) -/* 80172108 0016F068 50 80 0F BC */ rlwimi r0, r4, 1, 0x1e, 0x1e -/* 8017210C 0016F06C 98 1A 09 BF */ stb r0, 0x9bf(r26) -/* 80172110 0016F070 88 1A 09 BF */ lbz r0, 0x9bf(r26) -/* 80172114 0016F074 50 80 07 FE */ rlwimi r0, r4, 0, 0x1f, 0x1f -/* 80172118 0016F078 98 1A 09 BF */ stb r0, 0x9bf(r26) -/* 8017211C 0016F07C 88 1A 09 C0 */ lbz r0, 0x9c0(r26) -/* 80172120 0016F080 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 -/* 80172124 0016F084 98 1A 09 C0 */ stb r0, 0x9c0(r26) -/* 80172128 0016F088 48 17 0F 55 */ bl NoParameter__12CPASAnimParmFv -/* 8017212C 0016F08C 38 61 00 2C */ addi r3, r1, 0x2c -/* 80172130 0016F090 48 17 0F 4D */ bl NoParameter__12CPASAnimParmFv -/* 80172134 0016F094 38 61 00 34 */ addi r3, r1, 0x34 -/* 80172138 0016F098 48 17 0F 45 */ bl NoParameter__12CPASAnimParmFv -/* 8017213C 0016F09C 38 61 00 3C */ addi r3, r1, 0x3c -/* 80172140 0016F0A0 48 17 0F 3D */ bl NoParameter__12CPASAnimParmFv -/* 80172144 0016F0A4 38 61 00 44 */ addi r3, r1, 0x44 -/* 80172148 0016F0A8 48 17 0F 35 */ bl NoParameter__12CPASAnimParmFv -/* 8017214C 0016F0AC 38 61 00 4C */ addi r3, r1, 0x4c -/* 80172150 0016F0B0 48 17 0F 2D */ bl NoParameter__12CPASAnimParmFv -/* 80172154 0016F0B4 38 61 00 54 */ addi r3, r1, 0x54 -/* 80172158 0016F0B8 38 80 00 03 */ li r4, 3 -/* 8017215C 0016F0BC 48 17 0E 29 */ bl FromEnum__12CPASAnimParmFi -/* 80172160 0016F0C0 38 61 00 5C */ addi r3, r1, 0x5c -/* 80172164 0016F0C4 38 80 00 02 */ li r4, 2 -/* 80172168 0016F0C8 48 17 0E 1D */ bl FromEnum__12CPASAnimParmFi -/* 8017216C 0016F0CC 38 61 00 2C */ addi r3, r1, 0x2c -/* 80172170 0016F0D0 38 01 00 24 */ addi r0, r1, 0x24 -/* 80172174 0016F0D4 90 61 00 08 */ stw r3, 8(r1) -/* 80172178 0016F0D8 38 61 00 70 */ addi r3, r1, 0x70 -/* 8017217C 0016F0DC 38 A1 00 5C */ addi r5, r1, 0x5c -/* 80172180 0016F0E0 38 C1 00 54 */ addi r6, r1, 0x54 -/* 80172184 0016F0E4 90 01 00 0C */ stw r0, 0xc(r1) -/* 80172188 0016F0E8 38 E1 00 4C */ addi r7, r1, 0x4c -/* 8017218C 0016F0EC 39 01 00 44 */ addi r8, r1, 0x44 -/* 80172190 0016F0F0 39 21 00 3C */ addi r9, r1, 0x3c -/* 80172194 0016F0F4 39 41 00 34 */ addi r10, r1, 0x34 -/* 80172198 0016F0F8 38 80 00 09 */ li r4, 9 -/* 8017219C 0016F0FC 4B F0 B1 29 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm -/* 801721A0 0016F100 7F 43 D3 78 */ mr r3, r26 -/* 801721A4 0016F104 38 81 00 70 */ addi r4, r1, 0x70 -/* 801721A8 0016F108 4B F0 A8 59 */ bl func_8007CA00 -/* 801721AC 0016F10C D0 3A 08 08 */ stfs f1, 0x808(r26) -/* 801721B0 0016F110 7F 43 D3 78 */ mr r3, r26 -/* 801721B4 0016F114 4B FF F5 A9 */ bl sub_8017175c -/* 801721B8 0016F118 C0 22 A1 08 */ lfs f1, lbl_805ABE28@sda21(r2) -/* 801721BC 0016F11C 7F 43 D3 78 */ mr r3, r26 -/* 801721C0 0016F120 4B FA 83 21 */ bl SetCoefficientOfRestitutionModifier__13CPhysicsActorFf -/* 801721C4 0016F124 88 1A 04 E2 */ lbz r0, 0x4e2(r26) -/* 801721C8 0016F128 38 60 00 00 */ li r3, 0 -/* 801721CC 0016F12C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 801721D0 0016F130 98 1A 04 E2 */ stb r0, 0x4e2(r26) -/* 801721D4 0016F134 88 1A 04 E1 */ lbz r0, 0x4e1(r26) -/* 801721D8 0016F138 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 801721DC 0016F13C 98 1A 04 E1 */ stb r0, 0x4e1(r26) -/* 801721E0 0016F140 88 1A 04 E1 */ lbz r0, 0x4e1(r26) -/* 801721E4 0016F144 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 801721E8 0016F148 98 1A 04 E1 */ stb r0, 0x4e1(r26) -/* 801721EC 0016F14C 88 1A 04 E1 */ lbz r0, 0x4e1(r26) -/* 801721F0 0016F150 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 801721F4 0016F154 98 1A 04 E1 */ stb r0, 0x4e1(r26) -/* 801721F8 0016F158 80 1A 03 FC */ lwz r0, 0x3fc(r26) -/* 801721FC 0016F15C 2C 00 00 02 */ cmpwi r0, 2 -/* 80172200 0016F160 40 82 00 10 */ bne lbl_80172210 -/* 80172204 0016F164 88 1A 04 E1 */ lbz r0, 0x4e1(r26) -/* 80172208 0016F168 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 8017220C 0016F16C 98 1A 04 E1 */ stb r0, 0x4e1(r26) -lbl_80172210: -/* 80172210 0016F170 38 00 00 01 */ li r0, 1 -/* 80172214 0016F174 34 A1 00 74 */ addic. r5, r1, 0x74 -/* 80172218 0016F178 98 1A 09 14 */ stb r0, 0x914(r26) -/* 8017221C 0016F17C 41 82 00 58 */ beq lbl_80172274 -/* 80172220 0016F180 80 C5 00 00 */ lwz r6, 0(r5) -/* 80172224 0016F184 38 60 00 00 */ li r3, 0 -/* 80172228 0016F188 2C 06 00 00 */ cmpwi r6, 0 -/* 8017222C 0016F18C 40 81 00 40 */ ble lbl_8017226C -/* 80172230 0016F190 2C 06 00 08 */ cmpwi r6, 8 -/* 80172234 0016F194 38 86 FF F8 */ addi r4, r6, -8 -/* 80172238 0016F198 40 81 00 20 */ ble lbl_80172258 -/* 8017223C 0016F19C 38 04 00 07 */ addi r0, r4, 7 -/* 80172240 0016F1A0 54 00 E8 FE */ srwi r0, r0, 3 -/* 80172244 0016F1A4 7C 09 03 A6 */ mtctr r0 -/* 80172248 0016F1A8 2C 04 00 00 */ cmpwi r4, 0 -/* 8017224C 0016F1AC 40 81 00 0C */ ble lbl_80172258 -lbl_80172250: -/* 80172250 0016F1B0 38 63 00 08 */ addi r3, r3, 8 -/* 80172254 0016F1B4 42 00 FF FC */ bdnz lbl_80172250 -lbl_80172258: -/* 80172258 0016F1B8 7C 03 30 50 */ subf r0, r3, r6 -/* 8017225C 0016F1BC 7C 09 03 A6 */ mtctr r0 -/* 80172260 0016F1C0 7C 03 30 00 */ cmpw r3, r6 -/* 80172264 0016F1C4 40 80 00 08 */ bge lbl_8017226C -lbl_80172268: -/* 80172268 0016F1C8 42 00 00 00 */ bdnz lbl_80172268 -lbl_8017226C: -/* 8017226C 0016F1CC 38 00 00 00 */ li r0, 0 -/* 80172270 0016F1D0 90 05 00 00 */ stw r0, 0(r5) -lbl_80172274: -/* 80172274 0016F1D4 7F 43 D3 78 */ mr r3, r26 -/* 80172278 0016F1D8 E3 E1 01 18 */ psq_l f31, 280(r1), 0, qr0 -/* 8017227C 0016F1DC CB E1 01 10 */ lfd f31, 0x110(r1) -/* 80172280 0016F1E0 E3 C1 01 08 */ psq_l f30, 264(r1), 0, qr0 -/* 80172284 0016F1E4 CB C1 01 00 */ lfd f30, 0x100(r1) -/* 80172288 0016F1E8 E3 A1 00 F8 */ psq_l f29, 248(r1), 0, qr0 -/* 8017228C 0016F1EC CB A1 00 F0 */ lfd f29, 0xf0(r1) -/* 80172290 0016F1F0 E3 81 00 E8 */ psq_l f28, 232(r1), 0, qr0 -/* 80172294 0016F1F4 CB 81 00 E0 */ lfd f28, 0xe0(r1) -/* 80172298 0016F1F8 BB 21 00 C4 */ lmw r25, 0xc4(r1) -/* 8017229C 0016F1FC 80 01 01 24 */ lwz r0, 0x124(r1) -/* 801722A0 0016F200 7C 08 03 A6 */ mtlr r0 -/* 801722A4 0016F204 38 21 01 20 */ addi r1, r1, 0x120 -/* 801722A8 0016F208 4E 80 00 20 */ blr - -.global sub_801722ac -sub_801722ac: -/* 801722AC 0016F20C C0 04 00 00 */ lfs f0, 0(r4) -/* 801722B0 0016F210 D0 03 00 00 */ stfs f0, 0(r3) -/* 801722B4 0016F214 C0 04 00 04 */ lfs f0, 4(r4) -/* 801722B8 0016F218 D0 03 00 04 */ stfs f0, 4(r3) -/* 801722BC 0016F21C C0 04 00 08 */ lfs f0, 8(r4) -/* 801722C0 0016F220 D0 03 00 08 */ stfs f0, 8(r3) -/* 801722C4 0016F224 C0 04 00 0C */ lfs f0, 0xc(r4) -/* 801722C8 0016F228 D0 03 00 0C */ stfs f0, 0xc(r3) -/* 801722CC 0016F22C C0 04 00 10 */ lfs f0, 0x10(r4) -/* 801722D0 0016F230 D0 03 00 10 */ stfs f0, 0x10(r3) -/* 801722D4 0016F234 C0 04 00 14 */ lfs f0, 0x14(r4) -/* 801722D8 0016F238 D0 03 00 14 */ stfs f0, 0x14(r3) -/* 801722DC 0016F23C C0 04 00 18 */ lfs f0, 0x18(r4) -/* 801722E0 0016F240 D0 03 00 18 */ stfs f0, 0x18(r3) -/* 801722E4 0016F244 C0 04 00 1C */ lfs f0, 0x1c(r4) -/* 801722E8 0016F248 D0 03 00 1C */ stfs f0, 0x1c(r3) -/* 801722EC 0016F24C C0 04 00 20 */ lfs f0, 0x20(r4) -/* 801722F0 0016F250 D0 03 00 20 */ stfs f0, 0x20(r3) -/* 801722F4 0016F254 C0 04 00 24 */ lfs f0, 0x24(r4) -/* 801722F8 0016F258 D0 03 00 24 */ stfs f0, 0x24(r3) -/* 801722FC 0016F25C C0 04 00 28 */ lfs f0, 0x28(r4) -/* 80172300 0016F260 D0 03 00 28 */ stfs f0, 0x28(r3) -/* 80172304 0016F264 C0 04 00 2C */ lfs f0, 0x2c(r4) -/* 80172308 0016F268 D0 03 00 2C */ stfs f0, 0x2c(r3) -/* 8017230C 0016F26C C0 04 00 30 */ lfs f0, 0x30(r4) -/* 80172310 0016F270 D0 03 00 30 */ stfs f0, 0x30(r3) -/* 80172314 0016F274 80 04 00 34 */ lwz r0, 0x34(r4) -/* 80172318 0016F278 90 03 00 34 */ stw r0, 0x34(r3) -/* 8017231C 0016F27C 88 04 00 38 */ lbz r0, 0x38(r4) -/* 80172320 0016F280 98 03 00 38 */ stb r0, 0x38(r3) -/* 80172324 0016F284 C0 04 00 3C */ lfs f0, 0x3c(r4) -/* 80172328 0016F288 D0 03 00 3C */ stfs f0, 0x3c(r3) -/* 8017232C 0016F28C C0 04 00 40 */ lfs f0, 0x40(r4) -/* 80172330 0016F290 D0 03 00 40 */ stfs f0, 0x40(r3) -/* 80172334 0016F294 C0 04 00 44 */ lfs f0, 0x44(r4) -/* 80172338 0016F298 D0 03 00 44 */ stfs f0, 0x44(r3) -/* 8017233C 0016F29C C0 04 00 48 */ lfs f0, 0x48(r4) -/* 80172340 0016F2A0 D0 03 00 48 */ stfs f0, 0x48(r3) -/* 80172344 0016F2A4 88 04 00 4C */ lbz r0, 0x4c(r4) -/* 80172348 0016F2A8 98 03 00 4C */ stb r0, 0x4c(r3) -/* 8017234C 0016F2AC C0 04 00 50 */ lfs f0, 0x50(r4) -/* 80172350 0016F2B0 D0 03 00 50 */ stfs f0, 0x50(r3) -/* 80172354 0016F2B4 C0 04 00 54 */ lfs f0, 0x54(r4) -/* 80172358 0016F2B8 D0 03 00 54 */ stfs f0, 0x54(r3) -/* 8017235C 0016F2BC C0 04 00 58 */ lfs f0, 0x58(r4) -/* 80172360 0016F2C0 D0 03 00 58 */ stfs f0, 0x58(r3) -/* 80172364 0016F2C4 80 A4 00 5C */ lwz r5, 0x5c(r4) -/* 80172368 0016F2C8 80 04 00 60 */ lwz r0, 0x60(r4) -/* 8017236C 0016F2CC 90 A3 00 5C */ stw r5, 0x5c(r3) -/* 80172370 0016F2D0 90 03 00 60 */ stw r0, 0x60(r3) -/* 80172374 0016F2D4 80 A4 00 64 */ lwz r5, 0x64(r4) -/* 80172378 0016F2D8 80 04 00 68 */ lwz r0, 0x68(r4) -/* 8017237C 0016F2DC 90 A3 00 64 */ stw r5, 0x64(r3) -/* 80172380 0016F2E0 90 03 00 68 */ stw r0, 0x68(r3) -/* 80172384 0016F2E4 80 A4 00 6C */ lwz r5, 0x6c(r4) -/* 80172388 0016F2E8 80 04 00 70 */ lwz r0, 0x70(r4) -/* 8017238C 0016F2EC 90 A3 00 6C */ stw r5, 0x6c(r3) -/* 80172390 0016F2F0 90 03 00 70 */ stw r0, 0x70(r3) -/* 80172394 0016F2F4 80 A4 00 74 */ lwz r5, 0x74(r4) -/* 80172398 0016F2F8 80 04 00 78 */ lwz r0, 0x78(r4) -/* 8017239C 0016F2FC 90 A3 00 74 */ stw r5, 0x74(r3) -/* 801723A0 0016F300 90 03 00 78 */ stw r0, 0x78(r3) -/* 801723A4 0016F304 80 A4 00 7C */ lwz r5, 0x7c(r4) -/* 801723A8 0016F308 80 04 00 80 */ lwz r0, 0x80(r4) -/* 801723AC 0016F30C 90 A3 00 7C */ stw r5, 0x7c(r3) -/* 801723B0 0016F310 90 03 00 80 */ stw r0, 0x80(r3) -/* 801723B4 0016F314 80 A4 00 84 */ lwz r5, 0x84(r4) -/* 801723B8 0016F318 80 04 00 88 */ lwz r0, 0x88(r4) -/* 801723BC 0016F31C 90 A3 00 84 */ stw r5, 0x84(r3) -/* 801723C0 0016F320 90 03 00 88 */ stw r0, 0x88(r3) -/* 801723C4 0016F324 80 A4 00 8C */ lwz r5, 0x8c(r4) -/* 801723C8 0016F328 80 04 00 90 */ lwz r0, 0x90(r4) -/* 801723CC 0016F32C 90 A3 00 8C */ stw r5, 0x8c(r3) -/* 801723D0 0016F330 90 03 00 90 */ stw r0, 0x90(r3) -/* 801723D4 0016F334 80 04 00 94 */ lwz r0, 0x94(r4) -/* 801723D8 0016F338 90 03 00 94 */ stw r0, 0x94(r3) -/* 801723DC 0016F33C 80 A4 00 98 */ lwz r5, 0x98(r4) -/* 801723E0 0016F340 80 04 00 9C */ lwz r0, 0x9c(r4) -/* 801723E4 0016F344 90 A3 00 98 */ stw r5, 0x98(r3) -/* 801723E8 0016F348 90 03 00 9C */ stw r0, 0x9c(r3) -/* 801723EC 0016F34C 80 A4 00 A0 */ lwz r5, 0xa0(r4) -/* 801723F0 0016F350 80 04 00 A4 */ lwz r0, 0xa4(r4) -/* 801723F4 0016F354 90 A3 00 A0 */ stw r5, 0xa0(r3) -/* 801723F8 0016F358 90 03 00 A4 */ stw r0, 0xa4(r3) -/* 801723FC 0016F35C 80 A4 00 A8 */ lwz r5, 0xa8(r4) -/* 80172400 0016F360 80 04 00 AC */ lwz r0, 0xac(r4) -/* 80172404 0016F364 90 A3 00 A8 */ stw r5, 0xa8(r3) -/* 80172408 0016F368 90 03 00 AC */ stw r0, 0xac(r3) -/* 8017240C 0016F36C 80 A4 00 B0 */ lwz r5, 0xb0(r4) -/* 80172410 0016F370 80 04 00 B4 */ lwz r0, 0xb4(r4) -/* 80172414 0016F374 90 A3 00 B0 */ stw r5, 0xb0(r3) -/* 80172418 0016F378 90 03 00 B4 */ stw r0, 0xb4(r3) -/* 8017241C 0016F37C 80 04 00 B8 */ lwz r0, 0xb8(r4) -/* 80172420 0016F380 90 03 00 B8 */ stw r0, 0xb8(r3) -/* 80172424 0016F384 80 04 00 BC */ lwz r0, 0xbc(r4) -/* 80172428 0016F388 90 03 00 BC */ stw r0, 0xbc(r3) -/* 8017242C 0016F38C 80 04 00 C0 */ lwz r0, 0xc0(r4) -/* 80172430 0016F390 90 03 00 C0 */ stw r0, 0xc0(r3) -/* 80172434 0016F394 C0 04 00 C4 */ lfs f0, 0xc4(r4) -/* 80172438 0016F398 D0 03 00 C4 */ stfs f0, 0xc4(r3) -/* 8017243C 0016F39C C0 04 00 C8 */ lfs f0, 0xc8(r4) -/* 80172440 0016F3A0 D0 03 00 C8 */ stfs f0, 0xc8(r3) -/* 80172444 0016F3A4 C0 04 00 CC */ lfs f0, 0xcc(r4) -/* 80172448 0016F3A8 D0 03 00 CC */ stfs f0, 0xcc(r3) -/* 8017244C 0016F3AC C0 04 00 D0 */ lfs f0, 0xd0(r4) -/* 80172450 0016F3B0 D0 03 00 D0 */ stfs f0, 0xd0(r3) -/* 80172454 0016F3B4 C0 04 00 D4 */ lfs f0, 0xd4(r4) -/* 80172458 0016F3B8 D0 03 00 D4 */ stfs f0, 0xd4(r3) -/* 8017245C 0016F3BC C0 04 00 D8 */ lfs f0, 0xd8(r4) -/* 80172460 0016F3C0 D0 03 00 D8 */ stfs f0, 0xd8(r3) -/* 80172464 0016F3C4 C0 04 00 DC */ lfs f0, 0xdc(r4) -/* 80172468 0016F3C8 D0 03 00 DC */ stfs f0, 0xdc(r3) -/* 8017246C 0016F3CC C0 04 00 E0 */ lfs f0, 0xe0(r4) -/* 80172470 0016F3D0 D0 03 00 E0 */ stfs f0, 0xe0(r3) -/* 80172474 0016F3D4 C0 04 00 E4 */ lfs f0, 0xe4(r4) -/* 80172478 0016F3D8 D0 03 00 E4 */ stfs f0, 0xe4(r3) -/* 8017247C 0016F3DC 80 04 00 E8 */ lwz r0, 0xe8(r4) -/* 80172480 0016F3E0 90 03 00 E8 */ stw r0, 0xe8(r3) -/* 80172484 0016F3E4 80 04 00 EC */ lwz r0, 0xec(r4) -/* 80172488 0016F3E8 90 03 00 EC */ stw r0, 0xec(r3) -/* 8017248C 0016F3EC 80 04 00 F0 */ lwz r0, 0xf0(r4) -/* 80172490 0016F3F0 90 03 00 F0 */ stw r0, 0xf0(r3) -/* 80172494 0016F3F4 80 04 00 F4 */ lwz r0, 0xf4(r4) -/* 80172498 0016F3F8 90 03 00 F4 */ stw r0, 0xf4(r3) -/* 8017249C 0016F3FC 88 04 00 F8 */ lbz r0, 0xf8(r4) -/* 801724A0 0016F400 98 03 00 F8 */ stb r0, 0xf8(r3) -/* 801724A4 0016F404 80 04 00 FC */ lwz r0, 0xfc(r4) -/* 801724A8 0016F408 90 03 00 FC */ stw r0, 0xfc(r3) -/* 801724AC 0016F40C C0 04 01 00 */ lfs f0, 0x100(r4) -/* 801724B0 0016F410 D0 03 01 00 */ stfs f0, 0x100(r3) -/* 801724B4 0016F414 C0 04 01 04 */ lfs f0, 0x104(r4) -/* 801724B8 0016F418 D0 03 01 04 */ stfs f0, 0x104(r3) -/* 801724BC 0016F41C C0 04 01 08 */ lfs f0, 0x108(r4) -/* 801724C0 0016F420 D0 03 01 08 */ stfs f0, 0x108(r3) -/* 801724C4 0016F424 80 04 01 0C */ lwz r0, 0x10c(r4) -/* 801724C8 0016F428 90 03 01 0C */ stw r0, 0x10c(r3) -/* 801724CC 0016F42C C0 04 01 10 */ lfs f0, 0x110(r4) -/* 801724D0 0016F430 D0 03 01 10 */ stfs f0, 0x110(r3) -/* 801724D4 0016F434 C0 04 01 14 */ lfs f0, 0x114(r4) -/* 801724D8 0016F438 D0 03 01 14 */ stfs f0, 0x114(r3) -/* 801724DC 0016F43C C0 04 01 18 */ lfs f0, 0x118(r4) -/* 801724E0 0016F440 D0 03 01 18 */ stfs f0, 0x118(r3) -/* 801724E4 0016F444 80 04 01 1C */ lwz r0, 0x11c(r4) -/* 801724E8 0016F448 90 03 01 1C */ stw r0, 0x11c(r3) -/* 801724EC 0016F44C 80 04 01 20 */ lwz r0, 0x120(r4) -/* 801724F0 0016F450 90 03 01 20 */ stw r0, 0x120(r3) -/* 801724F4 0016F454 C0 04 01 24 */ lfs f0, 0x124(r4) -/* 801724F8 0016F458 D0 03 01 24 */ stfs f0, 0x124(r3) -/* 801724FC 0016F45C C0 04 01 28 */ lfs f0, 0x128(r4) -/* 80172500 0016F460 D0 03 01 28 */ stfs f0, 0x128(r3) -/* 80172504 0016F464 C0 04 01 2C */ lfs f0, 0x12c(r4) -/* 80172508 0016F468 D0 03 01 2C */ stfs f0, 0x12c(r3) -/* 8017250C 0016F46C 80 04 01 30 */ lwz r0, 0x130(r4) -/* 80172510 0016F470 90 03 01 30 */ stw r0, 0x130(r3) -/* 80172514 0016F474 80 04 01 34 */ lwz r0, 0x134(r4) -/* 80172518 0016F478 90 03 01 34 */ stw r0, 0x134(r3) -/* 8017251C 0016F47C 4E 80 00 20 */ blr - -.global sub_80172520 -sub_80172520: -/* 80172520 0016F480 2C 04 00 03 */ cmpwi r4, 3 -/* 80172524 0016F484 41 82 00 34 */ beq lbl_80172558 -/* 80172528 0016F488 40 80 00 14 */ bge lbl_8017253C -/* 8017252C 0016F48C 2C 04 00 01 */ cmpwi r4, 1 -/* 80172530 0016F490 41 82 00 18 */ beq lbl_80172548 -/* 80172534 0016F494 40 80 00 1C */ bge lbl_80172550 -/* 80172538 0016F498 48 00 00 30 */ b lbl_80172568 -lbl_8017253C: -/* 8017253C 0016F49C 2C 04 00 05 */ cmpwi r4, 5 -/* 80172540 0016F4A0 40 80 00 28 */ bge lbl_80172568 -/* 80172544 0016F4A4 48 00 00 1C */ b lbl_80172560 -lbl_80172548: -/* 80172548 0016F4A8 38 63 00 E8 */ addi r3, r3, 0xe8 -/* 8017254C 0016F4AC 4E 80 00 20 */ blr -lbl_80172550: -/* 80172550 0016F4B0 38 63 00 F8 */ addi r3, r3, 0xf8 -/* 80172554 0016F4B4 4E 80 00 20 */ blr -lbl_80172558: -/* 80172558 0016F4B8 38 63 01 08 */ addi r3, r3, 0x108 -/* 8017255C 0016F4BC 4E 80 00 20 */ blr -lbl_80172560: -/* 80172560 0016F4C0 38 63 01 18 */ addi r3, r3, 0x118 -/* 80172564 0016F4C4 4E 80 00 20 */ blr -lbl_80172568: -/* 80172568 0016F4C8 38 63 00 E8 */ addi r3, r3, 0xe8 -/* 8017256C 0016F4CC 4E 80 00 20 */ blr - -.global sub_80172570 -sub_80172570: -/* 80172570 0016F4D0 88 03 00 F4 */ lbz r0, 0xf4(r3) -/* 80172574 0016F4D4 38 80 00 00 */ li r4, 0 -/* 80172578 0016F4D8 28 00 00 00 */ cmplwi r0, 0 -/* 8017257C 0016F4DC 41 82 00 08 */ beq lbl_80172584 -/* 80172580 0016F4E0 38 80 00 01 */ li r4, 1 -lbl_80172584: -/* 80172584 0016F4E4 88 03 01 04 */ lbz r0, 0x104(r3) -/* 80172588 0016F4E8 28 00 00 00 */ cmplwi r0, 0 -/* 8017258C 0016F4EC 41 82 00 08 */ beq lbl_80172594 -/* 80172590 0016F4F0 38 84 00 01 */ addi r4, r4, 1 -lbl_80172594: -/* 80172594 0016F4F4 88 03 01 14 */ lbz r0, 0x114(r3) -/* 80172598 0016F4F8 28 00 00 00 */ cmplwi r0, 0 -/* 8017259C 0016F4FC 41 82 00 08 */ beq lbl_801725A4 -/* 801725A0 0016F500 38 84 00 01 */ addi r4, r4, 1 -lbl_801725A4: -/* 801725A4 0016F504 88 03 01 24 */ lbz r0, 0x124(r3) -/* 801725A8 0016F508 28 00 00 00 */ cmplwi r0, 0 -/* 801725AC 0016F50C 41 82 00 08 */ beq lbl_801725B4 -/* 801725B0 0016F510 38 84 00 01 */ addi r4, r4, 1 -lbl_801725B4: -/* 801725B4 0016F514 7C 83 23 78 */ mr r3, r4 -/* 801725B8 0016F518 4E 80 00 20 */ blr - -.global __ct__12CMetroidDataFR12CInputStream -__ct__12CMetroidDataFR12CInputStream: -/* 801725BC 0016F51C 94 21 FF 80 */ stwu r1, -0x80(r1) -/* 801725C0 0016F520 7C 08 02 A6 */ mflr r0 -/* 801725C4 0016F524 90 01 00 84 */ stw r0, 0x84(r1) -/* 801725C8 0016F528 93 E1 00 7C */ stw r31, 0x7c(r1) -/* 801725CC 0016F52C 7C 9F 23 78 */ mr r31, r4 -/* 801725D0 0016F530 93 C1 00 78 */ stw r30, 0x78(r1) -/* 801725D4 0016F534 7C 7E 1B 78 */ mr r30, r3 -/* 801725D8 0016F538 4B F9 05 81 */ bl __ct__20CDamageVulnerabilityFR12CInputStream -/* 801725DC 0016F53C 7F E4 FB 78 */ mr r4, r31 -/* 801725E0 0016F540 38 7E 00 68 */ addi r3, r30, 0x68 -/* 801725E4 0016F544 4B F9 05 75 */ bl __ct__20CDamageVulnerabilityFR12CInputStream -/* 801725E8 0016F548 7F E3 FB 78 */ mr r3, r31 -/* 801725EC 0016F54C 48 1C C6 3D */ bl ReadFloat__12CInputStreamFv -/* 801725F0 0016F550 D0 3E 00 D0 */ stfs f1, 0xd0(r30) -/* 801725F4 0016F554 7F E3 FB 78 */ mr r3, r31 -/* 801725F8 0016F558 48 1C C6 31 */ bl ReadFloat__12CInputStreamFv -/* 801725FC 0016F55C D0 3E 00 D4 */ stfs f1, 0xd4(r30) -/* 80172600 0016F560 7F E3 FB 78 */ mr r3, r31 -/* 80172604 0016F564 48 1C C6 25 */ bl ReadFloat__12CInputStreamFv -/* 80172608 0016F568 D0 3E 00 D8 */ stfs f1, 0xd8(r30) -/* 8017260C 0016F56C 7F E3 FB 78 */ mr r3, r31 -/* 80172610 0016F570 48 1C C6 19 */ bl ReadFloat__12CInputStreamFv -/* 80172614 0016F574 D0 3E 00 DC */ stfs f1, 0xdc(r30) -/* 80172618 0016F578 7F E3 FB 78 */ mr r3, r31 -/* 8017261C 0016F57C 48 1C C6 0D */ bl ReadFloat__12CInputStreamFv -/* 80172620 0016F580 D0 3E 00 E0 */ stfs f1, 0xe0(r30) -/* 80172624 0016F584 7F E3 FB 78 */ mr r3, r31 -/* 80172628 0016F588 48 1C C6 01 */ bl ReadFloat__12CInputStreamFv -/* 8017262C 0016F58C D0 3E 00 E4 */ stfs f1, 0xe4(r30) -/* 80172630 0016F590 7F E4 FB 78 */ mr r4, r31 -/* 80172634 0016F594 38 61 00 6C */ addi r3, r1, 0x6c -/* 80172638 0016F598 4B F6 7D D5 */ bl LoadAnimationParameters__FR12CInputStream -/* 8017263C 0016F59C 38 00 00 01 */ li r0, 1 -/* 80172640 0016F5A0 34 61 00 5C */ addic. r3, r1, 0x5c -/* 80172644 0016F5A4 98 01 00 68 */ stb r0, 0x68(r1) -/* 80172648 0016F5A8 41 82 00 1C */ beq lbl_80172664 -/* 8017264C 0016F5AC 80 01 00 6C */ lwz r0, 0x6c(r1) -/* 80172650 0016F5B0 90 03 00 00 */ stw r0, 0(r3) -/* 80172654 0016F5B4 80 01 00 70 */ lwz r0, 0x70(r1) -/* 80172658 0016F5B8 90 03 00 04 */ stw r0, 4(r3) -/* 8017265C 0016F5BC 80 01 00 74 */ lwz r0, 0x74(r1) -/* 80172660 0016F5C0 90 03 00 08 */ stw r0, 8(r3) -lbl_80172664: -/* 80172664 0016F5C4 88 01 00 68 */ lbz r0, 0x68(r1) -/* 80172668 0016F5C8 28 00 00 00 */ cmplwi r0, 0 -/* 8017266C 0016F5CC 98 1E 00 F4 */ stb r0, 0xf4(r30) -/* 80172670 0016F5D0 41 82 00 24 */ beq lbl_80172694 -/* 80172674 0016F5D4 34 9E 00 E8 */ addic. r4, r30, 0xe8 -/* 80172678 0016F5D8 41 82 00 1C */ beq lbl_80172694 -/* 8017267C 0016F5DC 80 01 00 5C */ lwz r0, 0x5c(r1) -/* 80172680 0016F5E0 80 61 00 60 */ lwz r3, 0x60(r1) -/* 80172684 0016F5E4 90 04 00 00 */ stw r0, 0(r4) -/* 80172688 0016F5E8 80 01 00 64 */ lwz r0, 0x64(r1) -/* 8017268C 0016F5EC 90 64 00 04 */ stw r3, 4(r4) -/* 80172690 0016F5F0 90 04 00 08 */ stw r0, 8(r4) -lbl_80172694: -/* 80172694 0016F5F4 38 00 00 00 */ li r0, 0 -/* 80172698 0016F5F8 7F E4 FB 78 */ mr r4, r31 -/* 8017269C 0016F5FC 98 01 00 68 */ stb r0, 0x68(r1) -/* 801726A0 0016F600 38 61 00 50 */ addi r3, r1, 0x50 -/* 801726A4 0016F604 4B F6 7D 69 */ bl LoadAnimationParameters__FR12CInputStream -/* 801726A8 0016F608 38 00 00 01 */ li r0, 1 -/* 801726AC 0016F60C 34 61 00 40 */ addic. r3, r1, 0x40 -/* 801726B0 0016F610 98 01 00 4C */ stb r0, 0x4c(r1) -/* 801726B4 0016F614 41 82 00 1C */ beq lbl_801726D0 -/* 801726B8 0016F618 80 01 00 50 */ lwz r0, 0x50(r1) -/* 801726BC 0016F61C 90 03 00 00 */ stw r0, 0(r3) -/* 801726C0 0016F620 80 01 00 54 */ lwz r0, 0x54(r1) -/* 801726C4 0016F624 90 03 00 04 */ stw r0, 4(r3) -/* 801726C8 0016F628 80 01 00 58 */ lwz r0, 0x58(r1) -/* 801726CC 0016F62C 90 03 00 08 */ stw r0, 8(r3) -lbl_801726D0: -/* 801726D0 0016F630 88 01 00 4C */ lbz r0, 0x4c(r1) -/* 801726D4 0016F634 28 00 00 00 */ cmplwi r0, 0 -/* 801726D8 0016F638 98 1E 01 04 */ stb r0, 0x104(r30) -/* 801726DC 0016F63C 41 82 00 24 */ beq lbl_80172700 -/* 801726E0 0016F640 34 9E 00 F8 */ addic. r4, r30, 0xf8 -/* 801726E4 0016F644 41 82 00 1C */ beq lbl_80172700 -/* 801726E8 0016F648 80 01 00 40 */ lwz r0, 0x40(r1) -/* 801726EC 0016F64C 80 61 00 44 */ lwz r3, 0x44(r1) -/* 801726F0 0016F650 90 04 00 00 */ stw r0, 0(r4) -/* 801726F4 0016F654 80 01 00 48 */ lwz r0, 0x48(r1) -/* 801726F8 0016F658 90 64 00 04 */ stw r3, 4(r4) -/* 801726FC 0016F65C 90 04 00 08 */ stw r0, 8(r4) -lbl_80172700: -/* 80172700 0016F660 38 00 00 00 */ li r0, 0 -/* 80172704 0016F664 7F E4 FB 78 */ mr r4, r31 -/* 80172708 0016F668 98 01 00 4C */ stb r0, 0x4c(r1) -/* 8017270C 0016F66C 38 61 00 34 */ addi r3, r1, 0x34 -/* 80172710 0016F670 4B F6 7C FD */ bl LoadAnimationParameters__FR12CInputStream -/* 80172714 0016F674 38 00 00 01 */ li r0, 1 -/* 80172718 0016F678 34 61 00 24 */ addic. r3, r1, 0x24 -/* 8017271C 0016F67C 98 01 00 30 */ stb r0, 0x30(r1) -/* 80172720 0016F680 41 82 00 1C */ beq lbl_8017273C -/* 80172724 0016F684 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80172728 0016F688 90 03 00 00 */ stw r0, 0(r3) -/* 8017272C 0016F68C 80 01 00 38 */ lwz r0, 0x38(r1) -/* 80172730 0016F690 90 03 00 04 */ stw r0, 4(r3) -/* 80172734 0016F694 80 01 00 3C */ lwz r0, 0x3c(r1) -/* 80172738 0016F698 90 03 00 08 */ stw r0, 8(r3) -lbl_8017273C: -/* 8017273C 0016F69C 88 01 00 30 */ lbz r0, 0x30(r1) -/* 80172740 0016F6A0 28 00 00 00 */ cmplwi r0, 0 -/* 80172744 0016F6A4 98 1E 01 14 */ stb r0, 0x114(r30) -/* 80172748 0016F6A8 41 82 00 24 */ beq lbl_8017276C -/* 8017274C 0016F6AC 34 9E 01 08 */ addic. r4, r30, 0x108 -/* 80172750 0016F6B0 41 82 00 1C */ beq lbl_8017276C -/* 80172754 0016F6B4 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80172758 0016F6B8 80 61 00 28 */ lwz r3, 0x28(r1) -/* 8017275C 0016F6BC 90 04 00 00 */ stw r0, 0(r4) -/* 80172760 0016F6C0 80 01 00 2C */ lwz r0, 0x2c(r1) -/* 80172764 0016F6C4 90 64 00 04 */ stw r3, 4(r4) -/* 80172768 0016F6C8 90 04 00 08 */ stw r0, 8(r4) -lbl_8017276C: -/* 8017276C 0016F6CC 38 00 00 00 */ li r0, 0 -/* 80172770 0016F6D0 7F E4 FB 78 */ mr r4, r31 -/* 80172774 0016F6D4 98 01 00 30 */ stb r0, 0x30(r1) -/* 80172778 0016F6D8 38 61 00 18 */ addi r3, r1, 0x18 -/* 8017277C 0016F6DC 4B F6 7C 91 */ bl LoadAnimationParameters__FR12CInputStream -/* 80172780 0016F6E0 38 00 00 01 */ li r0, 1 -/* 80172784 0016F6E4 34 61 00 08 */ addic. r3, r1, 8 -/* 80172788 0016F6E8 98 01 00 14 */ stb r0, 0x14(r1) -/* 8017278C 0016F6EC 41 82 00 1C */ beq lbl_801727A8 -/* 80172790 0016F6F0 80 01 00 18 */ lwz r0, 0x18(r1) -/* 80172794 0016F6F4 90 03 00 00 */ stw r0, 0(r3) -/* 80172798 0016F6F8 80 01 00 1C */ lwz r0, 0x1c(r1) -/* 8017279C 0016F6FC 90 03 00 04 */ stw r0, 4(r3) -/* 801727A0 0016F700 80 01 00 20 */ lwz r0, 0x20(r1) -/* 801727A4 0016F704 90 03 00 08 */ stw r0, 8(r3) -lbl_801727A8: -/* 801727A8 0016F708 88 01 00 14 */ lbz r0, 0x14(r1) -/* 801727AC 0016F70C 28 00 00 00 */ cmplwi r0, 0 -/* 801727B0 0016F710 98 1E 01 24 */ stb r0, 0x124(r30) -/* 801727B4 0016F714 41 82 00 24 */ beq lbl_801727D8 -/* 801727B8 0016F718 34 9E 01 18 */ addic. r4, r30, 0x118 -/* 801727BC 0016F71C 41 82 00 1C */ beq lbl_801727D8 -/* 801727C0 0016F720 80 01 00 08 */ lwz r0, 8(r1) -/* 801727C4 0016F724 80 61 00 0C */ lwz r3, 0xc(r1) -/* 801727C8 0016F728 90 04 00 00 */ stw r0, 0(r4) -/* 801727CC 0016F72C 80 01 00 10 */ lwz r0, 0x10(r1) -/* 801727D0 0016F730 90 64 00 04 */ stw r3, 4(r4) -/* 801727D4 0016F734 90 04 00 08 */ stw r0, 8(r4) -lbl_801727D8: -/* 801727D8 0016F738 38 00 00 00 */ li r0, 0 -/* 801727DC 0016F73C 7F E3 FB 78 */ mr r3, r31 -/* 801727E0 0016F740 98 01 00 14 */ stb r0, 0x14(r1) -/* 801727E4 0016F744 48 1C C4 F9 */ bl ReadBool__12CInputStreamFv -/* 801727E8 0016F748 88 1E 01 28 */ lbz r0, 0x128(r30) -/* 801727EC 0016F74C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 801727F0 0016F750 7F C3 F3 78 */ mr r3, r30 -/* 801727F4 0016F754 98 1E 01 28 */ stb r0, 0x128(r30) -/* 801727F8 0016F758 83 E1 00 7C */ lwz r31, 0x7c(r1) -/* 801727FC 0016F75C 83 C1 00 78 */ lwz r30, 0x78(r1) -/* 80172800 0016F760 80 01 00 84 */ lwz r0, 0x84(r1) -/* 80172804 0016F764 7C 08 03 A6 */ mtlr r0 -/* 80172808 0016F768 38 21 00 80 */ addi r1, r1, 0x80 -/* 8017280C 0016F76C 4E 80 00 20 */ blr - -.global sub_80172810 -sub_80172810: -/* 80172810 0016F770 88 03 00 00 */ lbz r0, 0(r3) -/* 80172814 0016F774 88 C4 00 00 */ lbz r6, 0(r4) -/* 80172818 0016F778 7C 00 30 40 */ cmplw r0, r6 -/* 8017281C 0016F77C 4D 81 00 20 */ bgtlr -/* 80172820 0016F780 88 05 00 00 */ lbz r0, 0(r5) -/* 80172824 0016F784 7C 00 30 40 */ cmplw r0, r6 -/* 80172828 0016F788 40 80 00 0C */ bge lbl_80172834 -/* 8017282C 0016F78C 7C A3 2B 78 */ mr r3, r5 -/* 80172830 0016F790 4E 80 00 20 */ blr -lbl_80172834: -/* 80172834 0016F794 7C 83 23 78 */ mr r3, r4 -/* 80172838 0016F798 4E 80 00 20 */ blr - -.global __sinit_CMetroid_cpp -__sinit_CMetroid_cpp: -/* 8017283C 0016F79C 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 80172840 0016F7A0 7C 08 02 A6 */ mflr r0 -/* 80172844 0016F7A4 3C 60 80 57 */ lis r3, lbl_80571C64@ha -/* 80172848 0016F7A8 39 60 00 02 */ li r11, 2 -/* 8017284C 0016F7AC 90 01 00 44 */ stw r0, 0x44(r1) -/* 80172850 0016F7B0 38 80 00 01 */ li r4, 1 -/* 80172854 0016F7B4 38 00 00 00 */ li r0, 0 -/* 80172858 0016F7B8 38 63 1C 64 */ addi r3, r3, lbl_80571C64@l -/* 8017285C 0016F7BC 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 80172860 0016F7C0 38 A0 00 02 */ li r5, 2 -/* 80172864 0016F7C4 38 C0 00 02 */ li r6, 2 -/* 80172868 0016F7C8 38 E0 00 03 */ li r7, 3 -/* 8017286C 0016F7CC 93 C1 00 38 */ stw r30, 0x38(r1) -/* 80172870 0016F7D0 39 00 00 02 */ li r8, 2 -/* 80172874 0016F7D4 39 20 00 01 */ li r9, 1 -/* 80172878 0016F7D8 39 40 00 02 */ li r10, 2 -/* 8017287C 0016F7DC 93 A1 00 34 */ stw r29, 0x34(r1) -/* 80172880 0016F7E0 91 61 00 08 */ stw r11, 8(r1) -/* 80172884 0016F7E4 90 81 00 0C */ stw r4, 0xc(r1) -/* 80172888 0016F7E8 38 80 00 02 */ li r4, 2 -/* 8017288C 0016F7EC 91 61 00 10 */ stw r11, 0x10(r1) -/* 80172890 0016F7F0 91 61 00 14 */ stw r11, 0x14(r1) -/* 80172894 0016F7F4 91 61 00 18 */ stw r11, 0x18(r1) -/* 80172898 0016F7F8 91 61 00 1C */ stw r11, 0x1c(r1) -/* 8017289C 0016F7FC 91 61 00 20 */ stw r11, 0x20(r1) -/* 801728A0 0016F800 91 61 00 24 */ stw r11, 0x24(r1) -/* 801728A4 0016F804 90 01 00 28 */ stw r0, 0x28(r1) -/* 801728A8 0016F808 4B F9 00 8D */ bl __ct__20CDamageVulnerabilityF14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability15EDeflectionType -/* 801728AC 0016F80C 39 60 00 02 */ li r11, 2 -/* 801728B0 0016F810 3C 60 80 57 */ lis r3, lbl_80571E6C@ha -/* 801728B4 0016F814 91 61 00 08 */ stw r11, 8(r1) -/* 801728B8 0016F818 38 80 00 01 */ li r4, 1 -/* 801728BC 0016F81C 38 00 00 00 */ li r0, 0 -/* 801728C0 0016F820 38 63 1E 6C */ addi r3, r3, lbl_80571E6C@l -/* 801728C4 0016F824 90 81 00 0C */ stw r4, 0xc(r1) -/* 801728C8 0016F828 38 80 00 02 */ li r4, 2 -/* 801728CC 0016F82C 38 A0 00 03 */ li r5, 3 -/* 801728D0 0016F830 38 C0 00 02 */ li r6, 2 -/* 801728D4 0016F834 91 61 00 10 */ stw r11, 0x10(r1) -/* 801728D8 0016F838 38 E0 00 02 */ li r7, 2 -/* 801728DC 0016F83C 39 00 00 02 */ li r8, 2 -/* 801728E0 0016F840 39 20 00 01 */ li r9, 1 -/* 801728E4 0016F844 91 61 00 14 */ stw r11, 0x14(r1) -/* 801728E8 0016F848 39 40 00 02 */ li r10, 2 -/* 801728EC 0016F84C 91 61 00 18 */ stw r11, 0x18(r1) -/* 801728F0 0016F850 91 61 00 1C */ stw r11, 0x1c(r1) -/* 801728F4 0016F854 91 61 00 20 */ stw r11, 0x20(r1) -/* 801728F8 0016F858 91 61 00 24 */ stw r11, 0x24(r1) -/* 801728FC 0016F85C 90 01 00 28 */ stw r0, 0x28(r1) -/* 80172900 0016F860 4B F9 00 35 */ bl __ct__20CDamageVulnerabilityF14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability15EDeflectionType -/* 80172904 0016F864 39 60 00 02 */ li r11, 2 -/* 80172908 0016F868 3C 60 80 57 */ lis r3, lbl_80571ED4@ha -/* 8017290C 0016F86C 91 61 00 08 */ stw r11, 8(r1) -/* 80172910 0016F870 38 80 00 01 */ li r4, 1 -/* 80172914 0016F874 38 00 00 00 */ li r0, 0 -/* 80172918 0016F878 38 63 1E D4 */ addi r3, r3, lbl_80571ED4@l -/* 8017291C 0016F87C 90 81 00 0C */ stw r4, 0xc(r1) -/* 80172920 0016F880 38 80 00 02 */ li r4, 2 -/* 80172924 0016F884 38 A0 00 02 */ li r5, 2 -/* 80172928 0016F888 38 C0 00 03 */ li r6, 3 -/* 8017292C 0016F88C 91 61 00 10 */ stw r11, 0x10(r1) -/* 80172930 0016F890 38 E0 00 02 */ li r7, 2 -/* 80172934 0016F894 39 00 00 02 */ li r8, 2 -/* 80172938 0016F898 39 20 00 01 */ li r9, 1 -/* 8017293C 0016F89C 91 61 00 14 */ stw r11, 0x14(r1) -/* 80172940 0016F8A0 39 40 00 02 */ li r10, 2 -/* 80172944 0016F8A4 91 61 00 18 */ stw r11, 0x18(r1) -/* 80172948 0016F8A8 91 61 00 1C */ stw r11, 0x1c(r1) -/* 8017294C 0016F8AC 91 61 00 20 */ stw r11, 0x20(r1) -/* 80172950 0016F8B0 91 61 00 24 */ stw r11, 0x24(r1) -/* 80172954 0016F8B4 90 01 00 28 */ stw r0, 0x28(r1) -/* 80172958 0016F8B8 4B F8 FF DD */ bl __ct__20CDamageVulnerabilityF14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability15EDeflectionType -/* 8017295C 0016F8BC 39 60 00 02 */ li r11, 2 -/* 80172960 0016F8C0 3C 60 80 57 */ lis r3, lbl_80571F3C@ha -/* 80172964 0016F8C4 91 61 00 08 */ stw r11, 8(r1) -/* 80172968 0016F8C8 38 80 00 01 */ li r4, 1 -/* 8017296C 0016F8CC 38 00 00 00 */ li r0, 0 -/* 80172970 0016F8D0 38 63 1F 3C */ addi r3, r3, lbl_80571F3C@l -/* 80172974 0016F8D4 90 81 00 0C */ stw r4, 0xc(r1) -/* 80172978 0016F8D8 38 80 00 03 */ li r4, 3 -/* 8017297C 0016F8DC 38 A0 00 02 */ li r5, 2 -/* 80172980 0016F8E0 38 C0 00 02 */ li r6, 2 -/* 80172984 0016F8E4 91 61 00 10 */ stw r11, 0x10(r1) -/* 80172988 0016F8E8 38 E0 00 02 */ li r7, 2 -/* 8017298C 0016F8EC 39 00 00 02 */ li r8, 2 -/* 80172990 0016F8F0 39 20 00 01 */ li r9, 1 -/* 80172994 0016F8F4 91 61 00 14 */ stw r11, 0x14(r1) -/* 80172998 0016F8F8 39 40 00 02 */ li r10, 2 -/* 8017299C 0016F8FC 91 61 00 18 */ stw r11, 0x18(r1) -/* 801729A0 0016F900 91 61 00 1C */ stw r11, 0x1c(r1) -/* 801729A4 0016F904 91 61 00 20 */ stw r11, 0x20(r1) -/* 801729A8 0016F908 91 61 00 24 */ stw r11, 0x24(r1) -/* 801729AC 0016F90C 90 01 00 28 */ stw r0, 0x28(r1) -/* 801729B0 0016F910 4B F8 FF 85 */ bl __ct__20CDamageVulnerabilityF14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability15EDeflectionType -/* 801729B4 0016F914 39 60 00 02 */ li r11, 2 -/* 801729B8 0016F918 3C 60 80 57 */ lis r3, lbl_80571FA4@ha -/* 801729BC 0016F91C 91 61 00 08 */ stw r11, 8(r1) -/* 801729C0 0016F920 38 00 00 00 */ li r0, 0 -/* 801729C4 0016F924 38 63 1F A4 */ addi r3, r3, lbl_80571FA4@l -/* 801729C8 0016F928 38 80 00 02 */ li r4, 2 -/* 801729CC 0016F92C 91 61 00 0C */ stw r11, 0xc(r1) -/* 801729D0 0016F930 38 A0 00 02 */ li r5, 2 -/* 801729D4 0016F934 38 C0 00 02 */ li r6, 2 -/* 801729D8 0016F938 38 E0 00 02 */ li r7, 2 -/* 801729DC 0016F93C 91 61 00 10 */ stw r11, 0x10(r1) -/* 801729E0 0016F940 39 00 00 02 */ li r8, 2 -/* 801729E4 0016F944 39 20 00 01 */ li r9, 1 -/* 801729E8 0016F948 39 40 00 02 */ li r10, 2 -/* 801729EC 0016F94C 91 61 00 14 */ stw r11, 0x14(r1) -/* 801729F0 0016F950 91 61 00 18 */ stw r11, 0x18(r1) -/* 801729F4 0016F954 91 61 00 1C */ stw r11, 0x1c(r1) -/* 801729F8 0016F958 91 61 00 20 */ stw r11, 0x20(r1) -/* 801729FC 0016F95C 91 61 00 24 */ stw r11, 0x24(r1) -/* 80172A00 0016F960 90 01 00 28 */ stw r0, 0x28(r1) -/* 80172A04 0016F964 4B F8 FF 31 */ bl __ct__20CDamageVulnerabilityF14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability14EVulnerability15EDeflectionType -/* 80172A08 0016F968 3B A0 00 FE */ li r29, 0xfe -/* 80172A0C 0016F96C 39 40 00 D8 */ li r10, 0xd8 -/* 80172A10 0016F970 39 2D A4 2C */ addi r9, r13, lbl_805A8FEC@sda21 -/* 80172A14 0016F974 39 60 00 FF */ li r11, 0xff -/* 80172A18 0016F978 38 CD A4 30 */ addi r6, r13, lbl_805A8FF0@sda21 -/* 80172A1C 0016F97C 3B ED A4 28 */ addi r31, r13, lbl_805A8FE8@sda21 -/* 80172A20 0016F980 3B C0 00 00 */ li r30, 0 -/* 80172A24 0016F984 39 80 00 28 */ li r12, 0x28 -/* 80172A28 0016F988 39 00 00 C6 */ li r8, 0xc6 -/* 80172A2C 0016F98C 38 E0 00 0E */ li r7, 0xe -/* 80172A30 0016F990 38 A0 00 FD */ li r5, 0xfd -/* 80172A34 0016F994 38 6D A4 34 */ addi r3, r13, lbl_805A8FF4@sda21 -/* 80172A38 0016F998 38 80 00 EF */ li r4, 0xef -/* 80172A3C 0016F99C 38 00 00 56 */ li r0, 0x56 -/* 80172A40 0016F9A0 9B AD A4 28 */ stb r29, lbl_805A8FE8@sda21(r13) -/* 80172A44 0016F9A4 9B DF 00 01 */ stb r30, 1(r31) -/* 80172A48 0016F9A8 99 9F 00 02 */ stb r12, 2(r31) -/* 80172A4C 0016F9AC 99 7F 00 03 */ stb r11, 3(r31) -/* 80172A50 0016F9B0 99 4D A4 2C */ stb r10, lbl_805A8FEC@sda21(r13) -/* 80172A54 0016F9B4 99 49 00 01 */ stb r10, 1(r9) -/* 80172A58 0016F9B8 99 49 00 02 */ stb r10, 2(r9) -/* 80172A5C 0016F9BC 99 69 00 03 */ stb r11, 3(r9) -/* 80172A60 0016F9C0 99 0D A4 30 */ stb r8, lbl_805A8FF0@sda21(r13) -/* 80172A64 0016F9C4 98 E6 00 01 */ stb r7, 1(r6) -/* 80172A68 0016F9C8 99 66 00 02 */ stb r11, 2(r6) -/* 80172A6C 0016F9CC 99 66 00 03 */ stb r11, 3(r6) -/* 80172A70 0016F9D0 98 AD A4 34 */ stb r5, lbl_805A8FF4@sda21(r13) -/* 80172A74 0016F9D4 98 83 00 01 */ stb r4, 1(r3) -/* 80172A78 0016F9D8 98 03 00 02 */ stb r0, 2(r3) -/* 80172A7C 0016F9DC 99 63 00 03 */ stb r11, 3(r3) -/* 80172A80 0016F9E0 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 80172A84 0016F9E4 83 C1 00 38 */ lwz r30, 0x38(r1) -/* 80172A88 0016F9E8 83 A1 00 34 */ lwz r29, 0x34(r1) -/* 80172A8C 0016F9EC 80 01 00 44 */ lwz r0, 0x44(r1) -/* 80172A90 0016F9F0 7C 08 03 A6 */ mtlr r0 -/* 80172A94 0016F9F4 38 21 00 40 */ addi r1, r1, 0x40 -/* 80172A98 0016F9F8 4E 80 00 20 */ blr - -.global GetDownloadFraction__12CScanDisplayFif -GetDownloadFraction__12CScanDisplayFif: -/* 80172A9C 0016F9FC 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80172AA0 0016FA00 7C 08 02 A6 */ mflr r0 -/* 80172AA4 0016FA04 90 01 00 34 */ stw r0, 0x34(r1) -/* 80172AA8 0016FA08 DB E1 00 20 */ stfd f31, 0x20(r1) -/* 80172AAC 0016FA0C F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 -/* 80172AB0 0016FA10 DB C1 00 10 */ stfd f30, 0x10(r1) -/* 80172AB4 0016FA14 F3 C1 00 18 */ psq_st f30, 24(r1), 0, qr0 -/* 80172AB8 0016FA18 88 03 00 9C */ lbz r0, 0x9c(r3) -/* 80172ABC 0016FA1C FF C0 08 90 */ fmr f30, f1 -/* 80172AC0 0016FA20 28 00 00 00 */ cmplwi r0, 0 -/* 80172AC4 0016FA24 40 82 00 0C */ bne lbl_80172AD0 -/* 80172AC8 0016FA28 C0 22 A1 10 */ lfs f1, lbl_805ABE30@sda21(r2) -/* 80172ACC 0016FA2C 48 00 00 48 */ b lbl_80172B14 -lbl_80172AD0: -/* 80172AD0 0016FA30 1C 04 00 1C */ mulli r0, r4, 0x1c -/* 80172AD4 0016FA34 7C A3 02 14 */ add r5, r3, r0 -/* 80172AD8 0016FA38 C3 E5 00 30 */ lfs f31, 0x30(r5) -/* 80172ADC 0016FA3C 48 00 00 59 */ bl GetDownloadStartTime__12CScanDisplayFi -/* 80172AE0 0016FA40 FC 01 F8 00 */ fcmpu cr0, f1, f31 -/* 80172AE4 0016FA44 40 82 00 0C */ bne lbl_80172AF0 -/* 80172AE8 0016FA48 C0 22 A1 14 */ lfs f1, lbl_805ABE34@sda21(r2) -/* 80172AEC 0016FA4C 48 00 00 28 */ b lbl_80172B14 -lbl_80172AF0: -/* 80172AF0 0016FA50 EC 5E 08 28 */ fsubs f2, f30, f1 -/* 80172AF4 0016FA54 38 81 00 08 */ addi r4, r1, 8 -/* 80172AF8 0016FA58 EC 1F 08 28 */ fsubs f0, f31, f1 -/* 80172AFC 0016FA5C 38 6D 8E 38 */ addi r3, r13, lbl_805A79F8@sda21 -/* 80172B00 0016FA60 38 AD 8E 3C */ addi r5, r13, lbl_805A79FC@sda21 -/* 80172B04 0016FA64 EC 02 00 24 */ fdivs f0, f2, f0 -/* 80172B08 0016FA68 D0 01 00 08 */ stfs f0, 8(r1) -/* 80172B0C 0016FA6C 4B E9 97 A9 */ bl "Clamp__5CMathFRCfRCfRCf" -/* 80172B10 0016FA70 C0 23 00 00 */ lfs f1, 0(r3) -lbl_80172B14: -/* 80172B14 0016FA74 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 -/* 80172B18 0016FA78 CB E1 00 20 */ lfd f31, 0x20(r1) -/* 80172B1C 0016FA7C E3 C1 00 18 */ psq_l f30, 24(r1), 0, qr0 -/* 80172B20 0016FA80 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80172B24 0016FA84 CB C1 00 10 */ lfd f30, 0x10(r1) -/* 80172B28 0016FA88 7C 08 03 A6 */ mtlr r0 -/* 80172B2C 0016FA8C 38 21 00 30 */ addi r1, r1, 0x30 -/* 80172B30 0016FA90 4E 80 00 20 */ blr - -.global GetDownloadStartTime__12CScanDisplayFi -GetDownloadStartTime__12CScanDisplayFi: -/* 80172B34 0016FA94 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80172B38 0016FA98 88 03 00 9C */ lbz r0, 0x9c(r3) -/* 80172B3C 0016FA9C 28 00 00 00 */ cmplwi r0, 0 -/* 80172B40 0016FAA0 40 82 00 0C */ bne lbl_80172B4C -/* 80172B44 0016FAA4 C0 22 A1 10 */ lfs f1, lbl_805ABE30@sda21(r2) -/* 80172B48 0016FAA8 48 00 00 F0 */ b lbl_80172C38 -lbl_80172B4C: -/* 80172B4C 0016FAAC 1C 84 00 1C */ mulli r4, r4, 0x1c -/* 80172B50 0016FAB0 38 A3 00 2C */ addi r5, r3, 0x2c -/* 80172B54 0016FAB4 C0 23 00 30 */ lfs f1, 0x30(r3) -/* 80172B58 0016FAB8 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) -/* 80172B5C 0016FABC 38 04 00 04 */ addi r0, r4, 4 -/* 80172B60 0016FAC0 D0 21 00 08 */ stfs f1, 8(r1) -/* 80172B64 0016FAC4 7C 45 04 2E */ lfsx f2, r5, r0 -/* 80172B68 0016FAC8 D0 01 00 0C */ stfs f0, 0xc(r1) -/* 80172B6C 0016FACC FC 01 10 40 */ fcmpo cr0, f1, f2 -/* 80172B70 0016FAD0 40 80 00 24 */ bge lbl_80172B94 -/* 80172B74 0016FAD4 FC 00 00 18 */ frsp f0, f0 -/* 80172B78 0016FAD8 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 80172B7C 0016FADC 40 80 00 0C */ bge lbl_80172B88 -/* 80172B80 0016FAE0 38 61 00 08 */ addi r3, r1, 8 -/* 80172B84 0016FAE4 48 00 00 08 */ b lbl_80172B8C -lbl_80172B88: -/* 80172B88 0016FAE8 38 61 00 0C */ addi r3, r1, 0xc -lbl_80172B8C: -/* 80172B8C 0016FAEC C0 03 00 00 */ lfs f0, 0(r3) -/* 80172B90 0016FAF0 D0 01 00 0C */ stfs f0, 0xc(r1) -lbl_80172B94: -/* 80172B94 0016FAF4 C0 25 00 20 */ lfs f1, 0x20(r5) -/* 80172B98 0016FAF8 FC 01 10 40 */ fcmpo cr0, f1, f2 -/* 80172B9C 0016FAFC D0 21 00 08 */ stfs f1, 8(r1) -/* 80172BA0 0016FB00 40 80 00 24 */ bge lbl_80172BC4 -/* 80172BA4 0016FB04 C0 01 00 0C */ lfs f0, 0xc(r1) -/* 80172BA8 0016FB08 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 80172BAC 0016FB0C 40 80 00 0C */ bge lbl_80172BB8 -/* 80172BB0 0016FB10 38 61 00 08 */ addi r3, r1, 8 -/* 80172BB4 0016FB14 48 00 00 08 */ b lbl_80172BBC -lbl_80172BB8: -/* 80172BB8 0016FB18 38 61 00 0C */ addi r3, r1, 0xc -lbl_80172BBC: -/* 80172BBC 0016FB1C C0 03 00 00 */ lfs f0, 0(r3) -/* 80172BC0 0016FB20 D0 01 00 0C */ stfs f0, 0xc(r1) -lbl_80172BC4: -/* 80172BC4 0016FB24 C0 25 00 3C */ lfs f1, 0x3c(r5) -/* 80172BC8 0016FB28 FC 01 10 40 */ fcmpo cr0, f1, f2 -/* 80172BCC 0016FB2C D0 21 00 08 */ stfs f1, 8(r1) -/* 80172BD0 0016FB30 40 80 00 24 */ bge lbl_80172BF4 -/* 80172BD4 0016FB34 C0 01 00 0C */ lfs f0, 0xc(r1) -/* 80172BD8 0016FB38 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 80172BDC 0016FB3C 40 80 00 0C */ bge lbl_80172BE8 -/* 80172BE0 0016FB40 38 61 00 08 */ addi r3, r1, 8 -/* 80172BE4 0016FB44 48 00 00 08 */ b lbl_80172BEC -lbl_80172BE8: -/* 80172BE8 0016FB48 38 61 00 0C */ addi r3, r1, 0xc -lbl_80172BEC: -/* 80172BEC 0016FB4C C0 03 00 00 */ lfs f0, 0(r3) -/* 80172BF0 0016FB50 D0 01 00 0C */ stfs f0, 0xc(r1) -lbl_80172BF4: -/* 80172BF4 0016FB54 C0 25 00 58 */ lfs f1, 0x58(r5) -/* 80172BF8 0016FB58 FC 01 10 40 */ fcmpo cr0, f1, f2 -/* 80172BFC 0016FB5C D0 21 00 08 */ stfs f1, 8(r1) -/* 80172C00 0016FB60 40 80 00 24 */ bge lbl_80172C24 -/* 80172C04 0016FB64 C0 01 00 0C */ lfs f0, 0xc(r1) -/* 80172C08 0016FB68 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 80172C0C 0016FB6C 40 80 00 0C */ bge lbl_80172C18 -/* 80172C10 0016FB70 38 61 00 08 */ addi r3, r1, 8 -/* 80172C14 0016FB74 48 00 00 08 */ b lbl_80172C1C -lbl_80172C18: -/* 80172C18 0016FB78 38 61 00 0C */ addi r3, r1, 0xc -lbl_80172C1C: -/* 80172C1C 0016FB7C C0 03 00 00 */ lfs f0, 0(r3) -/* 80172C20 0016FB80 D0 01 00 0C */ stfs f0, 0xc(r1) -lbl_80172C24: -/* 80172C24 0016FB84 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) -/* 80172C28 0016FB88 C0 21 00 0C */ lfs f1, 0xc(r1) -/* 80172C2C 0016FB8C C0 03 02 44 */ lfs f0, 0x244(r3) -/* 80172C30 0016FB90 EC 21 00 2A */ fadds f1, f1, f0 -/* 80172C34 0016FB94 D0 21 00 0C */ stfs f1, 0xc(r1) -lbl_80172C38: -/* 80172C38 0016FB98 38 21 00 10 */ addi r1, r1, 0x10 -/* 80172C3C 0016FB9C 4E 80 00 20 */ blr - -.global Draw__12CScanDisplayCFv -Draw__12CScanDisplayCFv: -/* 80172C40 0016FBA0 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 80172C44 0016FBA4 7C 08 02 A6 */ mflr r0 -/* 80172C48 0016FBA8 90 01 00 44 */ stw r0, 0x44(r1) -/* 80172C4C 0016FBAC DB E1 00 30 */ stfd f31, 0x30(r1) -/* 80172C50 0016FBB0 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 -/* 80172C54 0016FBB4 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 80172C58 0016FBB8 93 C1 00 28 */ stw r30, 0x28(r1) -/* 80172C5C 0016FBBC 93 A1 00 24 */ stw r29, 0x24(r1) -/* 80172C60 0016FBC0 7C 7D 1B 78 */ mr r29, r3 -/* 80172C64 0016FBC4 83 C3 00 08 */ lwz r30, 8(r3) -/* 80172C68 0016FBC8 28 1E 00 00 */ cmplwi r30, 0 -/* 80172C6C 0016FBCC 41 82 00 B4 */ beq lbl_80172D20 -/* 80172C70 0016FBD0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) -/* 80172C74 0016FBD4 38 80 00 00 */ li r4, 0 -/* 80172C78 0016FBD8 38 A0 00 00 */ li r5, 0 -/* 80172C7C 0016FBDC 81 83 00 00 */ lwz r12, 0(r3) -/* 80172C80 0016FBE0 81 8C 00 60 */ lwz r12, 0x60(r12) -/* 80172C84 0016FBE4 7D 89 03 A6 */ mtctr r12 -/* 80172C88 0016FBE8 4E 80 04 21 */ bctrl -/* 80172C8C 0016FBEC 80 8D A0 68 */ lwz r4, gpRender@sda21(r13) -/* 80172C90 0016FBF0 38 61 00 0C */ addi r3, r1, 0xc -/* 80172C94 0016FBF4 C0 22 A1 18 */ lfs f1, lbl_805ABE38@sda21(r2) -/* 80172C98 0016FBF8 38 A0 00 01 */ li r5, 1 -/* 80172C9C 0016FBFC 81 84 00 00 */ lwz r12, 0(r4) -/* 80172CA0 0016FC00 C0 42 A1 1C */ lfs f2, lbl_805ABE3C@sda21(r2) -/* 80172CA4 0016FC04 81 8C 00 54 */ lwz r12, 0x54(r12) -/* 80172CA8 0016FC08 7D 89 03 A6 */ mtctr r12 -/* 80172CAC 0016FC0C 4E 80 04 21 */ bctrl -/* 80172CB0 0016FC10 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) -/* 80172CB4 0016FC14 81 83 00 00 */ lwz r12, 0(r3) -/* 80172CB8 0016FC18 81 8C 00 64 */ lwz r12, 0x64(r12) -/* 80172CBC 0016FC1C 7D 89 03 A6 */ mtctr r12 -/* 80172CC0 0016FC20 4E 80 04 21 */ bctrl -/* 80172CC4 0016FC24 3C 80 80 5A */ lis r4, lbl_805A5EBC@ha -/* 80172CC8 0016FC28 38 60 00 00 */ li r3, 0 -/* 80172CCC 0016FC2C 38 84 5E BC */ addi r4, r4, lbl_805A5EBC@l -/* 80172CD0 0016FC30 48 19 75 E9 */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass -/* 80172CD4 0016FC34 7F C3 F3 78 */ mr r3, r30 -/* 80172CD8 0016FC38 38 80 00 00 */ li r4, 0 -/* 80172CDC 0016FC3C 38 A0 00 01 */ li r5, 1 -/* 80172CE0 0016FC40 48 19 CA 5D */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode -/* 80172CE4 0016FC44 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) -/* 80172CE8 0016FC48 3B DD 00 C0 */ addi r30, r29, 0xc0 -/* 80172CEC 0016FC4C 83 ED A1 3C */ lwz r31, gpTweakGuiColors@sda21(r13) -/* 80172CF0 0016FC50 3B A0 00 00 */ li r29, 0 -/* 80172CF4 0016FC54 C3 E3 02 2C */ lfs f31, 0x22c(r3) -lbl_80172CF8: -/* 80172CF8 0016FC58 80 1F 01 38 */ lwz r0, 0x138(r31) -/* 80172CFC 0016FC5C FC 20 F8 90 */ fmr f1, f31 -/* 80172D00 0016FC60 7F C3 F3 78 */ mr r3, r30 -/* 80172D04 0016FC64 38 81 00 08 */ addi r4, r1, 8 -/* 80172D08 0016FC68 90 01 00 08 */ stw r0, 8(r1) -/* 80172D0C 0016FC6C 48 00 1B E1 */ bl Draw__Q212CScanDisplay8CDataDotCF6CColorf -/* 80172D10 0016FC70 3B BD 00 01 */ addi r29, r29, 1 -/* 80172D14 0016FC74 3B DE 00 2C */ addi r30, r30, 0x2c -/* 80172D18 0016FC78 2C 1D 00 04 */ cmpwi r29, 4 -/* 80172D1C 0016FC7C 41 80 FF DC */ blt lbl_80172CF8 -lbl_80172D20: -/* 80172D20 0016FC80 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 -/* 80172D24 0016FC84 80 01 00 44 */ lwz r0, 0x44(r1) -/* 80172D28 0016FC88 CB E1 00 30 */ lfd f31, 0x30(r1) -/* 80172D2C 0016FC8C 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 80172D30 0016FC90 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 80172D34 0016FC94 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 80172D38 0016FC98 7C 08 03 A6 */ mtlr r0 -/* 80172D3C 0016FC9C 38 21 00 40 */ addi r1, r1, 0x40 -/* 80172D40 0016FCA0 4E 80 00 20 */ blr - -.global ProcessInput__12CScanDisplayFRC11CFinalInput -ProcessInput__12CScanDisplayFRC11CFinalInput: -/* 80172D44 0016FCA4 94 21 FF 60 */ stwu r1, -0xa0(r1) -/* 80172D48 0016FCA8 7C 08 02 A6 */ mflr r0 -/* 80172D4C 0016FCAC 90 01 00 A4 */ stw r0, 0xa4(r1) -/* 80172D50 0016FCB0 DB E1 00 90 */ stfd f31, 0x90(r1) -/* 80172D54 0016FCB4 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 -/* 80172D58 0016FCB8 DB C1 00 80 */ stfd f30, 0x80(r1) -/* 80172D5C 0016FCBC F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 -/* 80172D60 0016FCC0 DB A1 00 70 */ stfd f29, 0x70(r1) -/* 80172D64 0016FCC4 F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0 -/* 80172D68 0016FCC8 DB 81 00 60 */ stfd f28, 0x60(r1) -/* 80172D6C 0016FCCC F3 81 00 68 */ psq_st f28, 104(r1), 0, qr0 -/* 80172D70 0016FCD0 DB 61 00 50 */ stfd f27, 0x50(r1) -/* 80172D74 0016FCD4 F3 61 00 58 */ psq_st f27, 88(r1), 0, qr0 -/* 80172D78 0016FCD8 DB 41 00 40 */ stfd f26, 0x40(r1) -/* 80172D7C 0016FCDC F3 41 00 48 */ psq_st f26, 72(r1), 0, qr0 -/* 80172D80 0016FCE0 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 80172D84 0016FCE4 93 C1 00 38 */ stw r30, 0x38(r1) -/* 80172D88 0016FCE8 93 A1 00 34 */ stw r29, 0x34(r1) -/* 80172D8C 0016FCEC 93 81 00 30 */ stw r28, 0x30(r1) -/* 80172D90 0016FCF0 7C 7F 1B 78 */ mr r31, r3 -/* 80172D94 0016FCF4 7C 9D 23 78 */ mr r29, r4 -/* 80172D98 0016FCF8 80 63 00 0C */ lwz r3, 0xc(r3) -/* 80172D9C 0016FCFC 38 00 00 00 */ li r0, 0 -/* 80172DA0 0016FD00 2C 03 00 00 */ cmpwi r3, 0 -/* 80172DA4 0016FD04 41 82 00 0C */ beq lbl_80172DB0 -/* 80172DA8 0016FD08 2C 03 00 04 */ cmpwi r3, 4 -/* 80172DAC 0016FD0C 40 82 00 08 */ bne lbl_80172DB4 -lbl_80172DB0: -/* 80172DB0 0016FD10 38 00 00 01 */ li r0, 1 -lbl_80172DB4: -/* 80172DB4 0016FD14 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 80172DB8 0016FD18 40 82 03 4C */ bne lbl_80173104 -/* 80172DBC 0016FD1C 80 1F 00 0C */ lwz r0, 0xc(r31) -/* 80172DC0 0016FD20 2C 00 00 02 */ cmpwi r0, 2 -/* 80172DC4 0016FD24 40 82 00 84 */ bne lbl_80172E48 -/* 80172DC8 0016FD28 C0 22 A1 10 */ lfs f1, lbl_805ABE30@sda21(r2) -/* 80172DCC 0016FD2C C0 1F 01 A4 */ lfs f0, 0x1a4(r31) -/* 80172DD0 0016FD30 FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 80172DD4 0016FD34 40 82 00 74 */ bne lbl_80172E48 -/* 80172DD8 0016FD38 88 1D 00 2D */ lbz r0, 0x2d(r29) -/* 80172DDC 0016FD3C 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f -/* 80172DE0 0016FD40 41 82 01 A0 */ beq lbl_80172F80 -/* 80172DE4 0016FD44 80 7F 00 A8 */ lwz r3, 0xa8(r31) -/* 80172DE8 0016FD48 3B C3 00 D4 */ addi r30, r3, 0xd4 -/* 80172DEC 0016FD4C C3 83 01 10 */ lfs f28, 0x110(r3) -/* 80172DF0 0016FD50 7F C3 F3 78 */ mr r3, r30 -/* 80172DF4 0016FD54 48 15 52 B5 */ bl GetTotalAnimationTime__15CGuiTextSupportCFv -/* 80172DF8 0016FD58 FC 1C 08 40 */ fcmpo cr0, f28, f1 -/* 80172DFC 0016FD5C 40 80 00 14 */ bge lbl_80172E10 -/* 80172E00 0016FD60 7F C3 F3 78 */ mr r3, r30 -/* 80172E04 0016FD64 48 15 52 A5 */ bl GetTotalAnimationTime__15CGuiTextSupportCFv -/* 80172E08 0016FD68 D0 3E 00 3C */ stfs f1, 0x3c(r30) -/* 80172E0C 0016FD6C 48 00 01 74 */ b lbl_80172F80 -lbl_80172E10: -/* 80172E10 0016FD70 38 00 00 03 */ li r0, 3 -/* 80172E14 0016FD74 C0 02 A1 14 */ lfs f0, lbl_805ABE34@sda21(r2) -/* 80172E18 0016FD78 90 1F 00 0C */ stw r0, 0xc(r31) -/* 80172E1C 0016FD7C 38 61 00 2C */ addi r3, r1, 0x2c -/* 80172E20 0016FD80 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) -/* 80172E24 0016FD84 38 80 05 9F */ li r4, 0x59f -/* 80172E28 0016FD88 D0 1F 01 A4 */ stfs f0, 0x1a4(r31) -/* 80172E2C 0016FD8C 38 A0 00 7F */ li r5, 0x7f -/* 80172E30 0016FD90 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) -/* 80172E34 0016FD94 38 C0 00 40 */ li r6, 0x40 -/* 80172E38 0016FD98 38 E0 00 00 */ li r7, 0 -/* 80172E3C 0016FD9C 39 20 00 00 */ li r9, 0 -/* 80172E40 0016FDA0 48 17 6F 35 */ bl SfxStart__11CSfxManagerFUsssbsbi -/* 80172E44 0016FDA4 48 00 01 3C */ b lbl_80172F80 -lbl_80172E48: -/* 80172E48 0016FDA8 2C 00 00 03 */ cmpwi r0, 3 -/* 80172E4C 0016FDAC 40 82 01 34 */ bne lbl_80172F80 -/* 80172E50 0016FDB0 80 7F 00 AC */ lwz r3, 0xac(r31) -/* 80172E54 0016FDB4 83 9F 01 AC */ lwz r28, 0x1ac(r31) -/* 80172E58 0016FDB8 38 63 00 D4 */ addi r3, r3, 0xd4 -/* 80172E5C 0016FDBC 48 15 4F FD */ bl GetTotalPageCount__15CGuiTextSupportFv -/* 80172E60 0016FDC0 88 1D 00 2D */ lbz r0, 0x2d(r29) -/* 80172E64 0016FDC4 7C 7E 1B 78 */ mr r30, r3 -/* 80172E68 0016FDC8 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f -/* 80172E6C 0016FDCC 41 82 00 74 */ beq lbl_80172EE0 -/* 80172E70 0016FDD0 2C 1E FF FF */ cmpwi r30, -1 -/* 80172E74 0016FDD4 41 82 00 6C */ beq lbl_80172EE0 -/* 80172E78 0016FDD8 2C 1C 00 00 */ cmpwi r28, 0 -/* 80172E7C 0016FDDC 40 82 00 10 */ bne lbl_80172E8C -/* 80172E80 0016FDE0 80 7F 00 A8 */ lwz r3, 0xa8(r31) -/* 80172E84 0016FDE4 3B A3 00 D4 */ addi r29, r3, 0xd4 -/* 80172E88 0016FDE8 48 00 00 0C */ b lbl_80172E94 -lbl_80172E8C: -/* 80172E8C 0016FDEC 80 7F 00 AC */ lwz r3, 0xac(r31) -/* 80172E90 0016FDF0 3B A3 00 D4 */ addi r29, r3, 0xd4 -lbl_80172E94: -/* 80172E94 0016FDF4 C3 9D 00 3C */ lfs f28, 0x3c(r29) -/* 80172E98 0016FDF8 7F A3 EB 78 */ mr r3, r29 -/* 80172E9C 0016FDFC 48 15 52 0D */ bl GetTotalAnimationTime__15CGuiTextSupportCFv -/* 80172EA0 0016FE00 FC 1C 08 40 */ fcmpo cr0, f28, f1 -/* 80172EA4 0016FE04 40 80 00 14 */ bge lbl_80172EB8 -/* 80172EA8 0016FE08 7F A3 EB 78 */ mr r3, r29 -/* 80172EAC 0016FE0C 48 15 51 FD */ bl GetTotalAnimationTime__15CGuiTextSupportCFv -/* 80172EB0 0016FE10 D0 3D 00 3C */ stfs f1, 0x3c(r29) -/* 80172EB4 0016FE14 48 00 00 2C */ b lbl_80172EE0 -lbl_80172EB8: -/* 80172EB8 0016FE18 93 C1 00 24 */ stw r30, 0x24(r1) -/* 80172EBC 0016FE1C 38 61 00 28 */ addi r3, r1, 0x28 -/* 80172EC0 0016FE20 80 9F 01 AC */ lwz r4, 0x1ac(r31) -/* 80172EC4 0016FE24 38 04 00 01 */ addi r0, r4, 1 -/* 80172EC8 0016FE28 7C 1E 00 00 */ cmpw r30, r0 -/* 80172ECC 0016FE2C 90 01 00 28 */ stw r0, 0x28(r1) -/* 80172ED0 0016FE30 40 80 00 08 */ bge lbl_80172ED8 -/* 80172ED4 0016FE34 38 61 00 24 */ addi r3, r1, 0x24 -lbl_80172ED8: -/* 80172ED8 0016FE38 80 03 00 00 */ lwz r0, 0(r3) -/* 80172EDC 0016FE3C 90 1F 01 AC */ stw r0, 0x1ac(r31) -lbl_80172EE0: -/* 80172EE0 0016FE40 80 1F 01 AC */ lwz r0, 0x1ac(r31) -/* 80172EE4 0016FE44 7C 00 E0 00 */ cmpw r0, r28 -/* 80172EE8 0016FE48 41 82 00 98 */ beq lbl_80172F80 -/* 80172EEC 0016FE4C A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) -/* 80172EF0 0016FE50 38 61 00 20 */ addi r3, r1, 0x20 -/* 80172EF4 0016FE54 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) -/* 80172EF8 0016FE58 38 80 05 9F */ li r4, 0x59f -/* 80172EFC 0016FE5C 38 A0 00 7F */ li r5, 0x7f -/* 80172F00 0016FE60 38 C0 00 40 */ li r6, 0x40 -/* 80172F04 0016FE64 38 E0 00 00 */ li r7, 0 -/* 80172F08 0016FE68 39 20 00 00 */ li r9, 0 -/* 80172F0C 0016FE6C 48 17 6E 69 */ bl SfxStart__11CSfxManagerFUsssbsbi -/* 80172F10 0016FE70 80 1F 01 AC */ lwz r0, 0x1ac(r31) -/* 80172F14 0016FE74 2C 00 00 00 */ cmpwi r0, 0 -/* 80172F18 0016FE78 40 82 00 20 */ bne lbl_80172F38 -/* 80172F1C 0016FE7C 80 7F 00 A8 */ lwz r3, 0xa8(r31) -/* 80172F20 0016FE80 38 80 00 01 */ li r4, 1 -/* 80172F24 0016FE84 48 15 77 09 */ bl SetIsVisible__10CGuiWidgetFb -/* 80172F28 0016FE88 80 7F 00 AC */ lwz r3, 0xac(r31) -/* 80172F2C 0016FE8C 38 80 00 00 */ li r4, 0 -/* 80172F30 0016FE90 48 15 76 FD */ bl SetIsVisible__10CGuiWidgetFb -/* 80172F34 0016FE94 48 00 00 4C */ b lbl_80172F80 -lbl_80172F38: -/* 80172F38 0016FE98 2C 1C 00 00 */ cmpwi r28, 0 -/* 80172F3C 0016FE9C 40 82 00 1C */ bne lbl_80172F58 -/* 80172F40 0016FEA0 80 7F 00 A8 */ lwz r3, 0xa8(r31) -/* 80172F44 0016FEA4 38 80 00 00 */ li r4, 0 -/* 80172F48 0016FEA8 48 15 76 E5 */ bl SetIsVisible__10CGuiWidgetFb -/* 80172F4C 0016FEAC 80 7F 00 AC */ lwz r3, 0xac(r31) -/* 80172F50 0016FEB0 38 80 00 01 */ li r4, 1 -/* 80172F54 0016FEB4 48 15 76 D9 */ bl SetIsVisible__10CGuiWidgetFb -lbl_80172F58: -/* 80172F58 0016FEB8 80 7F 00 AC */ lwz r3, 0xac(r31) -/* 80172F5C 0016FEBC 80 9F 01 AC */ lwz r4, 0x1ac(r31) -/* 80172F60 0016FEC0 38 63 00 D4 */ addi r3, r3, 0xd4 -/* 80172F64 0016FEC4 38 84 FF FF */ addi r4, r4, -1 -/* 80172F68 0016FEC8 48 15 4E A1 */ bl SetPage__15CGuiTextSupportFi -/* 80172F6C 0016FECC 88 1F 01 B4 */ lbz r0, 0x1b4(r31) -/* 80172F70 0016FED0 80 7F 00 AC */ lwz r3, 0xac(r31) -/* 80172F74 0016FED4 7C 00 00 34 */ cntlzw r0, r0 -/* 80172F78 0016FED8 54 04 D9 7E */ srwi r4, r0, 5 -/* 80172F7C 0016FEDC 48 00 1B 45 */ bl SetScanMessageTypeEffect__12CScanDisplayFP12CGuiTextPaneb -lbl_80172F80: -/* 80172F80 0016FEE0 C3 62 A1 10 */ lfs f27, lbl_805ABE30@sda21(r2) -/* 80172F84 0016FEE4 80 1F 00 0C */ lwz r0, 0xc(r31) -/* 80172F88 0016FEE8 FF 40 D8 90 */ fmr f26, f27 -/* 80172F8C 0016FEEC FF 80 D8 90 */ fmr f28, f27 -/* 80172F90 0016FEF0 2C 00 00 02 */ cmpwi r0, 2 -/* 80172F94 0016FEF4 40 82 00 4C */ bne lbl_80172FE0 -/* 80172F98 0016FEF8 C0 42 A1 20 */ lfs f2, lbl_805ABE40@sda21(r2) -/* 80172F9C 0016FEFC C0 3F 01 A4 */ lfs f1, 0x1a4(r31) -/* 80172FA0 0016FF00 C0 0D 8E 34 */ lfs f0, lbl_805A79F4@sda21(r13) -/* 80172FA4 0016FF04 EC 22 00 72 */ fmuls f1, f2, f1 -/* 80172FA8 0016FF08 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80172FAC 0016FF0C D0 21 00 1C */ stfs f1, 0x1c(r1) -/* 80172FB0 0016FF10 40 80 00 0C */ bge lbl_80172FBC -/* 80172FB4 0016FF14 38 61 00 1C */ addi r3, r1, 0x1c -/* 80172FB8 0016FF18 48 00 00 08 */ b lbl_80172FC0 -lbl_80172FBC: -/* 80172FBC 0016FF1C 38 6D 8E 34 */ addi r3, r13, lbl_805A79F4@sda21 -lbl_80172FC0: -/* 80172FC0 0016FF20 C0 1F 01 B0 */ lfs f0, 0x1b0(r31) -/* 80172FC4 0016FF24 C3 63 00 00 */ lfs f27, 0(r3) -/* 80172FC8 0016FF28 FC 40 02 10 */ fabs f2, f0 -/* 80172FCC 0016FF2C C0 02 A1 14 */ lfs f0, lbl_805ABE34@sda21(r2) -/* 80172FD0 0016FF30 EC 20 D8 28 */ fsubs f1, f0, f27 -/* 80172FD4 0016FF34 FC 00 10 18 */ frsp f0, f2 -/* 80172FD8 0016FF38 EF 41 00 32 */ fmuls f26, f1, f0 -/* 80172FDC 0016FF3C 48 00 00 38 */ b lbl_80173014 -lbl_80172FE0: -/* 80172FE0 0016FF40 2C 00 00 03 */ cmpwi r0, 3 -/* 80172FE4 0016FF44 40 82 00 30 */ bne lbl_80173014 -/* 80172FE8 0016FF48 80 7F 00 AC */ lwz r3, 0xac(r31) -/* 80172FEC 0016FF4C 38 63 00 D4 */ addi r3, r3, 0xd4 -/* 80172FF0 0016FF50 48 15 4E 69 */ bl GetTotalPageCount__15CGuiTextSupportFv -/* 80172FF4 0016FF54 80 1F 01 AC */ lwz r0, 0x1ac(r31) -/* 80172FF8 0016FF58 7C 00 18 00 */ cmpw r0, r3 -/* 80172FFC 0016FF5C 40 80 00 14 */ bge lbl_80173010 -/* 80173000 0016FF60 C0 1F 01 B0 */ lfs f0, 0x1b0(r31) -/* 80173004 0016FF64 FC 00 02 10 */ fabs f0, f0 -/* 80173008 0016FF68 FF 40 00 18 */ frsp f26, f0 -/* 8017300C 0016FF6C 48 00 00 08 */ b lbl_80173014 -lbl_80173010: -/* 80173010 0016FF70 C3 82 A1 14 */ lfs f28, lbl_805ABE34@sda21(r2) -lbl_80173014: -/* 80173014 0016FF74 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) -/* 80173018 0016FF78 80 7F 00 B0 */ lwz r3, 0xb0(r31) -/* 8017301C 0016FF7C FC 1B 00 40 */ fcmpo cr0, f27, f0 -/* 80173020 0016FF80 7C 00 00 26 */ mfcr r0 -/* 80173024 0016FF84 38 A0 00 01 */ li r5, 1 -/* 80173028 0016FF88 54 04 17 FE */ rlwinm r4, r0, 2, 0x1f, 0x1f -/* 8017302C 0016FF8C 48 15 76 BD */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode -/* 80173030 0016FF90 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) -/* 80173034 0016FF94 80 7F 00 B4 */ lwz r3, 0xb4(r31) -/* 80173038 0016FF98 FC 1A 00 40 */ fcmpo cr0, f26, f0 -/* 8017303C 0016FF9C 7C 00 00 26 */ mfcr r0 -/* 80173040 0016FFA0 38 A0 00 01 */ li r5, 1 -/* 80173044 0016FFA4 54 04 17 FE */ rlwinm r4, r0, 2, 0x1f, 0x1f -/* 80173048 0016FFA8 48 15 76 A1 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode -/* 8017304C 0016FFAC C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) -/* 80173050 0016FFB0 80 7F 00 B8 */ lwz r3, 0xb8(r31) -/* 80173054 0016FFB4 FC 1C 00 40 */ fcmpo cr0, f28, f0 -/* 80173058 0016FFB8 7C 00 00 26 */ mfcr r0 -/* 8017305C 0016FFBC 38 A0 00 01 */ li r5, 1 -/* 80173060 0016FFC0 54 04 17 FE */ rlwinm r4, r0, 2, 0x1f, 0x1f -/* 80173064 0016FFC4 48 15 76 85 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode -/* 80173068 0016FFC8 48 1D 6F 45 */ bl White__6CColorFv -/* 8017306C 0016FFCC C0 02 A1 24 */ lfs f0, lbl_805ABE44@sda21(r2) -/* 80173070 0016FFD0 EF E0 06 F2 */ fmuls f31, f0, f27 -/* 80173074 0016FFD4 F3 E1 A0 0A */ psq_st f31, 10(r1), 1, qr2 -/* 80173078 0016FFD8 38 81 00 18 */ addi r4, r1, 0x18 -/* 8017307C 0016FFDC 80 63 00 00 */ lwz r3, 0(r3) -/* 80173080 0016FFE0 88 01 00 0A */ lbz r0, 0xa(r1) -/* 80173084 0016FFE4 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 -/* 80173088 0016FFE8 90 01 00 18 */ stw r0, 0x18(r1) -/* 8017308C 0016FFEC 80 7F 00 B0 */ lwz r3, 0xb0(r31) -/* 80173090 0016FFF0 48 15 77 DD */ bl SetColor__10CGuiWidgetFRC6CColor -/* 80173094 0016FFF4 48 1D 6F 19 */ bl White__6CColorFv -/* 80173098 0016FFF8 C0 02 A1 24 */ lfs f0, lbl_805ABE44@sda21(r2) -/* 8017309C 0016FFFC EF C0 06 B2 */ fmuls f30, f0, f26 -/* 801730A0 00170000 F3 C1 A0 09 */ psq_st f30, 9(r1), 1, qr2 -/* 801730A4 00170004 38 81 00 14 */ addi r4, r1, 0x14 -/* 801730A8 00170008 80 63 00 00 */ lwz r3, 0(r3) -/* 801730AC 0017000C 88 01 00 09 */ lbz r0, 9(r1) -/* 801730B0 00170010 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 -/* 801730B4 00170014 90 01 00 14 */ stw r0, 0x14(r1) -/* 801730B8 00170018 80 7F 00 B4 */ lwz r3, 0xb4(r31) -/* 801730BC 0017001C 48 15 77 B1 */ bl SetColor__10CGuiWidgetFRC6CColor -/* 801730C0 00170020 C0 02 A1 24 */ lfs f0, lbl_805ABE44@sda21(r2) -/* 801730C4 00170024 38 00 00 FF */ li r0, 0xff -/* 801730C8 00170028 38 80 00 89 */ li r4, 0x89 -/* 801730CC 0017002C 38 60 00 D6 */ li r3, 0xd6 -/* 801730D0 00170030 EF A0 07 32 */ fmuls f29, f0, f28 -/* 801730D4 00170034 98 81 00 0C */ stb r4, 0xc(r1) -/* 801730D8 00170038 98 61 00 0D */ stb r3, 0xd(r1) -/* 801730DC 0017003C 98 01 00 0E */ stb r0, 0xe(r1) -/* 801730E0 00170040 98 01 00 0F */ stb r0, 0xf(r1) -/* 801730E4 00170044 F3 A1 A0 08 */ psq_st f29, 8(r1), 1, qr2 -/* 801730E8 00170048 38 81 00 10 */ addi r4, r1, 0x10 -/* 801730EC 0017004C 80 61 00 0C */ lwz r3, 0xc(r1) -/* 801730F0 00170050 88 01 00 08 */ lbz r0, 8(r1) -/* 801730F4 00170054 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 -/* 801730F8 00170058 90 01 00 10 */ stw r0, 0x10(r1) -/* 801730FC 0017005C 80 7F 00 B8 */ lwz r3, 0xb8(r31) -/* 80173100 00170060 48 15 77 6D */ bl SetColor__10CGuiWidgetFRC6CColor -lbl_80173104: -/* 80173104 00170064 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 -/* 80173108 00170068 CB E1 00 90 */ lfd f31, 0x90(r1) -/* 8017310C 0017006C E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 -/* 80173110 00170070 CB C1 00 80 */ lfd f30, 0x80(r1) -/* 80173114 00170074 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0 -/* 80173118 00170078 CB A1 00 70 */ lfd f29, 0x70(r1) -/* 8017311C 0017007C E3 81 00 68 */ psq_l f28, 104(r1), 0, qr0 -/* 80173120 00170080 CB 81 00 60 */ lfd f28, 0x60(r1) -/* 80173124 00170084 E3 61 00 58 */ psq_l f27, 88(r1), 0, qr0 -/* 80173128 00170088 CB 61 00 50 */ lfd f27, 0x50(r1) -/* 8017312C 0017008C E3 41 00 48 */ psq_l f26, 72(r1), 0, qr0 -/* 80173130 00170090 CB 41 00 40 */ lfd f26, 0x40(r1) -/* 80173134 00170094 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 80173138 00170098 83 C1 00 38 */ lwz r30, 0x38(r1) -/* 8017313C 0017009C 83 A1 00 34 */ lwz r29, 0x34(r1) -/* 80173140 001700A0 80 01 00 A4 */ lwz r0, 0xa4(r1) -/* 80173144 001700A4 83 81 00 30 */ lwz r28, 0x30(r1) -/* 80173148 001700A8 7C 08 03 A6 */ mtlr r0 -/* 8017314C 001700AC 38 21 00 A0 */ addi r1, r1, 0xa0 -/* 80173150 001700B0 4E 80 00 20 */ blr - -.global Update__12CScanDisplayFff -Update__12CScanDisplayFff: -/* 80173154 001700B4 94 21 FD F0 */ stwu r1, -0x210(r1) -/* 80173158 001700B8 7C 08 02 A6 */ mflr r0 -/* 8017315C 001700BC 90 01 02 14 */ stw r0, 0x214(r1) -/* 80173160 001700C0 DB E1 02 00 */ stfd f31, 0x200(r1) -/* 80173164 001700C4 F3 E1 02 08 */ psq_st f31, 520(r1), 0, qr0 -/* 80173168 001700C8 DB C1 01 F0 */ stfd f30, 0x1f0(r1) -/* 8017316C 001700CC F3 C1 01 F8 */ psq_st f30, 504(r1), 0, qr0 -/* 80173170 001700D0 DB A1 01 E0 */ stfd f29, 0x1e0(r1) -/* 80173174 001700D4 F3 A1 01 E8 */ psq_st f29, 488(r1), 0, qr0 -/* 80173178 001700D8 DB 81 01 D0 */ stfd f28, 0x1d0(r1) -/* 8017317C 001700DC F3 81 01 D8 */ psq_st f28, 472(r1), 0, qr0 -/* 80173180 001700E0 DB 61 01 C0 */ stfd f27, 0x1c0(r1) -/* 80173184 001700E4 F3 61 01 C8 */ psq_st f27, 456(r1), 0, qr0 -/* 80173188 001700E8 DB 41 01 B0 */ stfd f26, 0x1b0(r1) -/* 8017318C 001700EC F3 41 01 B8 */ psq_st f26, 440(r1), 0, qr0 -/* 80173190 001700F0 BE E1 01 8C */ stmw r23, 0x18c(r1) -/* 80173194 001700F4 7C 7F 1B 78 */ mr r31, r3 -/* 80173198 001700F8 FF 60 08 90 */ fmr f27, f1 -/* 8017319C 001700FC 80 03 00 0C */ lwz r0, 0xc(r3) -/* 801731A0 00170100 FF 80 10 90 */ fmr f28, f2 -/* 801731A4 00170104 2C 00 00 00 */ cmpwi r0, 0 -/* 801731A8 00170108 40 82 00 14 */ bne lbl_801731BC -/* 801731AC 0017010C 38 00 00 00 */ li r0, 0 -/* 801731B0 00170110 90 1F 00 08 */ stw r0, 8(r31) -/* 801731B4 00170114 48 1C DB 8D */ bl Unlock__6CTokenFv -/* 801731B8 00170118 48 00 0B 9C */ b lbl_80173D54 -lbl_801731BC: -/* 801731BC 0017011C 48 1C DB C9 */ bl Lock__6CTokenFv -/* 801731C0 00170120 80 1F 00 08 */ lwz r0, 8(r31) -/* 801731C4 00170124 28 00 00 00 */ cmplwi r0, 0 -/* 801731C8 00170128 40 82 00 30 */ bne lbl_801731F8 -/* 801731CC 0017012C 88 1F 00 04 */ lbz r0, 4(r31) -/* 801731D0 00170130 28 00 00 00 */ cmplwi r0, 0 -/* 801731D4 00170134 41 82 00 24 */ beq lbl_801731F8 -/* 801731D8 00170138 80 7F 00 00 */ lwz r3, 0(r31) -/* 801731DC 0017013C 80 03 00 10 */ lwz r0, 0x10(r3) -/* 801731E0 00170140 28 00 00 00 */ cmplwi r0, 0 -/* 801731E4 00170144 41 82 00 14 */ beq lbl_801731F8 -/* 801731E8 00170148 7F E3 FB 78 */ mr r3, r31 -/* 801731EC 0017014C 48 1C DC 21 */ bl GetObj__6CTokenFv -/* 801731F0 00170150 80 03 00 04 */ lwz r0, 4(r3) -/* 801731F4 00170154 90 1F 00 08 */ stw r0, 8(r31) -lbl_801731F8: -/* 801731F8 00170158 80 1F 00 0C */ lwz r0, 0xc(r31) -/* 801731FC 0017015C 3B C0 00 00 */ li r30, 0 -/* 80173200 00170160 2C 00 00 04 */ cmpwi r0, 4 -/* 80173204 00170164 40 82 00 4C */ bne lbl_80173250 -/* 80173208 00170168 C0 42 A1 20 */ lfs f2, lbl_805ABE40@sda21(r2) -/* 8017320C 0017016C C0 3F 01 A8 */ lfs f1, 0x1a8(r31) -/* 80173210 00170170 C0 0D 8E 24 */ lfs f0, lbl_805A79E4@sda21(r13) -/* 80173214 00170174 EC 22 0E FC */ fnmsubs f1, f2, f27, f1 -/* 80173218 00170178 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 8017321C 0017017C D0 21 00 34 */ stfs f1, 0x34(r1) -/* 80173220 00170180 40 80 00 0C */ bge lbl_8017322C -/* 80173224 00170184 38 61 00 34 */ addi r3, r1, 0x34 -/* 80173228 00170188 48 00 00 08 */ b lbl_80173230 -lbl_8017322C: -/* 8017322C 0017018C 38 6D 8E 24 */ addi r3, r13, lbl_805A79E4@sda21 -lbl_80173230: -/* 80173230 00170190 C0 23 00 00 */ lfs f1, 0(r3) -/* 80173234 00170194 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) -/* 80173238 00170198 D0 3F 01 A8 */ stfs f1, 0x1a8(r31) -/* 8017323C 0017019C C0 3F 01 A8 */ lfs f1, 0x1a8(r31) -/* 80173240 001701A0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80173244 001701A4 40 81 03 54 */ ble lbl_80173598 -/* 80173248 001701A8 3B C0 00 01 */ li r30, 1 -/* 8017324C 001701AC 48 00 03 4C */ b lbl_80173598 -lbl_80173250: -/* 80173250 001701B0 C0 02 A1 20 */ lfs f0, lbl_805ABE40@sda21(r2) -/* 80173254 001701B4 3B C0 00 01 */ li r30, 1 -/* 80173258 001701B8 C0 3F 01 A8 */ lfs f1, 0x1a8(r31) -/* 8017325C 001701BC EF A0 06 F2 */ fmuls f29, f0, f27 -/* 80173260 001701C0 C0 0D 8E 28 */ lfs f0, lbl_805A79E8@sda21(r13) -/* 80173264 001701C4 EC 21 E8 2A */ fadds f1, f1, f29 -/* 80173268 001701C8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017326C 001701CC D0 21 00 30 */ stfs f1, 0x30(r1) -/* 80173270 001701D0 40 80 00 0C */ bge lbl_8017327C -/* 80173274 001701D4 38 61 00 30 */ addi r3, r1, 0x30 -/* 80173278 001701D8 48 00 00 08 */ b lbl_80173280 -lbl_8017327C: -/* 8017327C 001701DC 38 6D 8E 28 */ addi r3, r13, lbl_805A79E8@sda21 -lbl_80173280: -/* 80173280 001701E0 C0 03 00 00 */ lfs f0, 0(r3) -/* 80173284 001701E4 D0 1F 01 A8 */ stfs f0, 0x1a8(r31) -/* 80173288 001701E8 80 1F 00 0C */ lwz r0, 0xc(r31) -/* 8017328C 001701EC 2C 00 00 02 */ cmpwi r0, 2 -/* 80173290 001701F0 40 82 00 80 */ bne lbl_80173310 -/* 80173294 001701F4 80 7F 00 AC */ lwz r3, 0xac(r31) -/* 80173298 001701F8 38 63 00 D4 */ addi r3, r3, 0xd4 -/* 8017329C 001701FC 48 15 69 C9 */ bl GetIsTextSupportFinishedLoading__15CGuiTextSupportCFv -/* 801732A0 00170200 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801732A4 00170204 41 82 00 30 */ beq lbl_801732D4 -/* 801732A8 00170208 C0 3F 01 A4 */ lfs f1, 0x1a4(r31) -/* 801732AC 0017020C C0 0D 8E 2C */ lfs f0, lbl_805A79EC@sda21(r13) -/* 801732B0 00170210 EC 21 D8 28 */ fsubs f1, f1, f27 -/* 801732B4 00170214 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 801732B8 00170218 D0 21 00 2C */ stfs f1, 0x2c(r1) -/* 801732BC 0017021C 40 80 00 0C */ bge lbl_801732C8 -/* 801732C0 00170220 38 61 00 2C */ addi r3, r1, 0x2c -/* 801732C4 00170224 48 00 00 08 */ b lbl_801732CC -lbl_801732C8: -/* 801732C8 00170228 38 6D 8E 2C */ addi r3, r13, lbl_805A79EC@sda21 -lbl_801732CC: -/* 801732CC 0017022C C0 03 00 00 */ lfs f0, 0(r3) -/* 801732D0 00170230 D0 1F 01 A4 */ stfs f0, 0x1a4(r31) -lbl_801732D4: -/* 801732D4 00170234 C0 3F 01 A4 */ lfs f1, 0x1a4(r31) -/* 801732D8 00170238 C0 02 A1 28 */ lfs f0, lbl_805ABE48@sda21(r2) -/* 801732DC 0017023C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801732E0 00170240 40 80 02 B8 */ bge lbl_80173598 -/* 801732E4 00170244 C0 3F 01 B0 */ lfs f1, 0x1b0(r31) -/* 801732E8 00170248 C0 02 A1 14 */ lfs f0, lbl_805ABE34@sda21(r2) -/* 801732EC 0017024C EC 21 E8 2A */ fadds f1, f1, f29 -/* 801732F0 00170250 D0 3F 01 B0 */ stfs f1, 0x1b0(r31) -/* 801732F4 00170254 C0 3F 01 B0 */ lfs f1, 0x1b0(r31) -/* 801732F8 00170258 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801732FC 0017025C 40 81 02 9C */ ble lbl_80173598 -/* 80173300 00170260 C0 02 A1 20 */ lfs f0, lbl_805ABE40@sda21(r2) -/* 80173304 00170264 EC 01 00 28 */ fsubs f0, f1, f0 -/* 80173308 00170268 D0 1F 01 B0 */ stfs f0, 0x1b0(r31) -/* 8017330C 0017026C 48 00 02 8C */ b lbl_80173598 -lbl_80173310: -/* 80173310 00170270 2C 00 00 03 */ cmpwi r0, 3 -/* 80173314 00170274 40 82 00 90 */ bne lbl_801733A4 -/* 80173318 00170278 C0 3F 01 B0 */ lfs f1, 0x1b0(r31) -/* 8017331C 0017027C C0 02 A1 14 */ lfs f0, lbl_805ABE34@sda21(r2) -/* 80173320 00170280 EC 21 E8 2A */ fadds f1, f1, f29 -/* 80173324 00170284 D0 3F 01 B0 */ stfs f1, 0x1b0(r31) -/* 80173328 00170288 C0 3F 01 B0 */ lfs f1, 0x1b0(r31) -/* 8017332C 0017028C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80173330 00170290 40 81 00 10 */ ble lbl_80173340 -/* 80173334 00170294 C0 02 A1 20 */ lfs f0, lbl_805ABE40@sda21(r2) -/* 80173338 00170298 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8017333C 0017029C D0 1F 01 B0 */ stfs f0, 0x1b0(r31) -lbl_80173340: -/* 80173340 001702A0 C0 22 A1 14 */ lfs f1, lbl_805ABE34@sda21(r2) -/* 80173344 001702A4 C0 1F 01 A4 */ lfs f0, 0x1a4(r31) -/* 80173348 001702A8 FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 8017334C 001702AC 40 82 02 4C */ bne lbl_80173598 -/* 80173350 001702B0 80 7F 01 9C */ lwz r3, 0x19c(r31) -/* 80173354 001702B4 38 80 00 00 */ li r4, 0 -/* 80173358 001702B8 48 1E 33 A5 */ bl GetString__12CStringTableCFi -/* 8017335C 001702BC 7C 64 1B 78 */ mr r4, r3 -/* 80173360 001702C0 38 61 00 98 */ addi r3, r1, 0x98 -/* 80173364 001702C4 38 C1 00 14 */ addi r6, r1, 0x14 -/* 80173368 001702C8 38 A0 FF FF */ li r5, -1 -/* 8017336C 001702CC 48 1C A4 51 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" -/* 80173370 001702D0 80 7F 00 A8 */ lwz r3, 0xa8(r31) -/* 80173374 001702D4 38 81 00 98 */ addi r4, r1, 0x98 -/* 80173378 001702D8 38 A0 00 00 */ li r5, 0 -/* 8017337C 001702DC 38 63 00 D4 */ addi r3, r3, 0xd4 -/* 80173380 001702E0 48 15 65 05 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80173384 001702E4 38 61 00 98 */ addi r3, r1, 0x98 -/* 80173388 001702E8 48 1C 9D AD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 8017338C 001702EC 88 1F 01 B4 */ lbz r0, 0x1b4(r31) -/* 80173390 001702F0 80 7F 00 A8 */ lwz r3, 0xa8(r31) -/* 80173394 001702F4 7C 00 00 34 */ cntlzw r0, r0 -/* 80173398 001702F8 54 04 D9 7E */ srwi r4, r0, 5 -/* 8017339C 001702FC 48 00 17 25 */ bl SetScanMessageTypeEffect__12CScanDisplayFP12CGuiTextPaneb -/* 801733A0 00170300 48 00 01 F8 */ b lbl_80173598 -lbl_801733A4: -/* 801733A4 00170304 2C 00 00 01 */ cmpwi r0, 1 -/* 801733A8 00170308 40 82 01 F0 */ bne lbl_80173598 -/* 801733AC 0017030C C0 1F 00 1C */ lfs f0, 0x1c(r31) -/* 801733B0 00170310 FC 1C 00 40 */ fcmpo cr0, f28, f0 -/* 801733B4 00170314 4C 41 13 82 */ cror 2, 1, 2 -/* 801733B8 00170318 40 82 01 E0 */ bne lbl_80173598 -/* 801733BC 0017031C 88 1F 01 A0 */ lbz r0, 0x1a0(r31) -/* 801733C0 00170320 28 00 00 00 */ cmplwi r0, 0 -/* 801733C4 00170324 41 82 01 D4 */ beq lbl_80173598 -/* 801733C8 00170328 3A FF 01 94 */ addi r23, r31, 0x194 -/* 801733CC 0017032C 80 1F 01 9C */ lwz r0, 0x19c(r31) -/* 801733D0 00170330 28 00 00 00 */ cmplwi r0, 0 -/* 801733D4 00170334 41 82 00 0C */ beq lbl_801733E0 -/* 801733D8 00170338 38 60 00 01 */ li r3, 1 -/* 801733DC 0017033C 48 00 00 3C */ b lbl_80173418 -lbl_801733E0: -/* 801733E0 00170340 88 17 00 04 */ lbz r0, 4(r23) -/* 801733E4 00170344 28 00 00 00 */ cmplwi r0, 0 -/* 801733E8 00170348 41 82 00 2C */ beq lbl_80173414 -/* 801733EC 0017034C 80 77 00 00 */ lwz r3, 0(r23) -/* 801733F0 00170350 80 03 00 10 */ lwz r0, 0x10(r3) -/* 801733F4 00170354 28 00 00 00 */ cmplwi r0, 0 -/* 801733F8 00170358 41 82 00 1C */ beq lbl_80173414 -/* 801733FC 0017035C 7E E3 BB 78 */ mr r3, r23 -/* 80173400 00170360 48 1C DA 0D */ bl GetObj__6CTokenFv -/* 80173404 00170364 80 03 00 04 */ lwz r0, 4(r3) -/* 80173408 00170368 38 60 00 01 */ li r3, 1 -/* 8017340C 0017036C 90 17 00 08 */ stw r0, 8(r23) -/* 80173410 00170370 48 00 00 08 */ b lbl_80173418 -lbl_80173414: -/* 80173414 00170374 38 60 00 00 */ li r3, 0 -lbl_80173418: -/* 80173418 00170378 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017341C 0017037C 41 82 01 7C */ beq lbl_80173598 -/* 80173420 00170380 88 1F 01 B4 */ lbz r0, 0x1b4(r31) -/* 80173424 00170384 28 00 00 00 */ cmplwi r0, 0 -/* 80173428 00170388 40 82 00 10 */ bne lbl_80173438 -/* 8017342C 0017038C 80 1F 00 20 */ lwz r0, 0x20(r31) -/* 80173430 00170390 2C 00 00 00 */ cmpwi r0, 0 -/* 80173434 00170394 40 82 00 40 */ bne lbl_80173474 -lbl_80173438: -/* 80173438 00170398 38 00 00 03 */ li r0, 3 -/* 8017343C 0017039C C0 02 A1 14 */ lfs f0, lbl_805ABE34@sda21(r2) -/* 80173440 001703A0 90 1F 00 0C */ stw r0, 0xc(r31) -/* 80173444 001703A4 38 61 00 28 */ addi r3, r1, 0x28 -/* 80173448 001703A8 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) -/* 8017344C 001703AC 38 80 05 89 */ li r4, 0x589 -/* 80173450 001703B0 D0 1F 01 A4 */ stfs f0, 0x1a4(r31) -/* 80173454 001703B4 38 A0 00 7F */ li r5, 0x7f -/* 80173458 001703B8 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) -/* 8017345C 001703BC 38 C0 00 40 */ li r6, 0x40 -/* 80173460 001703C0 D0 1F 01 B0 */ stfs f0, 0x1b0(r31) -/* 80173464 001703C4 38 E0 00 00 */ li r7, 0 -/* 80173468 001703C8 39 20 00 00 */ li r9, 0 -/* 8017346C 001703CC 48 17 69 09 */ bl SfxStart__11CSfxManagerFUsssbsbi -/* 80173470 001703D0 48 00 00 C0 */ b lbl_80173530 -lbl_80173474: -/* 80173474 001703D4 38 00 00 02 */ li r0, 2 -/* 80173478 001703D8 C0 02 A1 14 */ lfs f0, lbl_805ABE34@sda21(r2) -/* 8017347C 001703DC 90 1F 00 0C */ stw r0, 0xc(r31) -/* 80173480 001703E0 38 80 00 1D */ li r4, 0x1d -/* 80173484 001703E4 D0 1F 01 A4 */ stfs f0, 0x1a4(r31) -/* 80173488 001703E8 D0 1F 01 B0 */ stfs f0, 0x1b0(r31) -/* 8017348C 001703EC 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) -/* 80173490 001703F0 48 1E 32 6D */ bl GetString__12CStringTableCFi -/* 80173494 001703F4 7C 64 1B 78 */ mr r4, r3 -/* 80173498 001703F8 38 61 00 B4 */ addi r3, r1, 0xb4 -/* 8017349C 001703FC 38 C1 00 10 */ addi r6, r1, 0x10 -/* 801734A0 00170400 38 A0 FF FF */ li r5, -1 -/* 801734A4 00170404 48 1C A3 19 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" -/* 801734A8 00170408 80 9F 00 20 */ lwz r4, 0x20(r31) -/* 801734AC 0017040C 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) -/* 801734B0 00170410 38 84 00 1E */ addi r4, r4, 0x1e -/* 801734B4 00170414 48 1E 32 49 */ bl GetString__12CStringTableCFi -/* 801734B8 00170418 7C 64 1B 78 */ mr r4, r3 -/* 801734BC 0017041C 38 61 00 B4 */ addi r3, r1, 0xb4 -/* 801734C0 00170420 38 A0 FF FF */ li r5, -1 -/* 801734C4 00170424 48 1C A0 21 */ bl sub_8033d4e4 -/* 801734C8 00170428 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) -/* 801734CC 0017042C 38 80 00 1E */ li r4, 0x1e -/* 801734D0 00170430 48 1E 32 2D */ bl GetString__12CStringTableCFi -/* 801734D4 00170434 7C 64 1B 78 */ mr r4, r3 -/* 801734D8 00170438 38 61 00 B4 */ addi r3, r1, 0xb4 -/* 801734DC 0017043C 38 A0 FF FF */ li r5, -1 -/* 801734E0 00170440 48 1C A0 05 */ bl sub_8033d4e4 -/* 801734E4 00170444 80 7F 00 A8 */ lwz r3, 0xa8(r31) -/* 801734E8 00170448 38 81 00 B4 */ addi r4, r1, 0xb4 -/* 801734EC 0017044C 38 A0 00 00 */ li r5, 0 -/* 801734F0 00170450 38 63 00 D4 */ addi r3, r3, 0xd4 -/* 801734F4 00170454 48 15 63 91 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 801734F8 00170458 80 7F 00 A8 */ lwz r3, 0xa8(r31) -/* 801734FC 0017045C 38 80 00 01 */ li r4, 1 -/* 80173500 00170460 48 00 15 C1 */ bl SetScanMessageTypeEffect__12CScanDisplayFP12CGuiTextPaneb -/* 80173504 00170464 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) -/* 80173508 00170468 38 61 00 24 */ addi r3, r1, 0x24 -/* 8017350C 0017046C 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) -/* 80173510 00170470 38 80 05 91 */ li r4, 0x591 -/* 80173514 00170474 38 A0 00 7F */ li r5, 0x7f -/* 80173518 00170478 38 C0 00 40 */ li r6, 0x40 -/* 8017351C 0017047C 38 E0 00 00 */ li r7, 0 -/* 80173520 00170480 39 20 00 00 */ li r9, 0 -/* 80173524 00170484 48 17 68 51 */ bl SfxStart__11CSfxManagerFUsssbsbi -/* 80173528 00170488 38 61 00 B4 */ addi r3, r1, 0xb4 -/* 8017352C 0017048C 48 1C 9C 09 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -lbl_80173530: -/* 80173530 00170490 80 7F 01 9C */ lwz r3, 0x19c(r31) -/* 80173534 00170494 80 03 00 00 */ lwz r0, 0(r3) -/* 80173538 00170498 2C 00 00 02 */ cmpwi r0, 2 -/* 8017353C 0017049C 40 81 00 50 */ ble lbl_8017358C -/* 80173540 001704A0 38 80 00 02 */ li r4, 2 -/* 80173544 001704A4 48 1E 31 B9 */ bl GetString__12CStringTableCFi -/* 80173548 001704A8 7C 64 1B 78 */ mr r4, r3 -/* 8017354C 001704AC 38 61 00 88 */ addi r3, r1, 0x88 -/* 80173550 001704B0 38 C1 00 0C */ addi r6, r1, 0xc -/* 80173554 001704B4 38 A0 FF FF */ li r5, -1 -/* 80173558 001704B8 48 1C A2 65 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" -/* 8017355C 001704BC 80 7F 00 AC */ lwz r3, 0xac(r31) -/* 80173560 001704C0 38 81 00 88 */ addi r4, r1, 0x88 -/* 80173564 001704C4 38 A0 00 01 */ li r5, 1 -/* 80173568 001704C8 38 63 00 D4 */ addi r3, r3, 0xd4 -/* 8017356C 001704CC 48 15 63 19 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80173570 001704D0 38 61 00 88 */ addi r3, r1, 0x88 -/* 80173574 001704D4 48 1C 9B C1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 80173578 001704D8 88 1F 01 B4 */ lbz r0, 0x1b4(r31) -/* 8017357C 001704DC 80 7F 00 AC */ lwz r3, 0xac(r31) -/* 80173580 001704E0 7C 00 00 34 */ cntlzw r0, r0 -/* 80173584 001704E4 54 04 D9 7E */ srwi r4, r0, 5 -/* 80173588 001704E8 48 00 15 39 */ bl SetScanMessageTypeEffect__12CScanDisplayFP12CGuiTextPaneb -lbl_8017358C: -/* 8017358C 001704EC 80 7F 00 AC */ lwz r3, 0xac(r31) -/* 80173590 001704F0 38 80 00 00 */ li r4, 0 -/* 80173594 001704F4 48 15 70 99 */ bl SetIsVisible__10CGuiWidgetFb -lbl_80173598: -/* 80173598 001704F8 3B 5F 01 74 */ addi r26, r31, 0x174 -/* 8017359C 001704FC 3B 7F 00 C0 */ addi r27, r31, 0xc0 -/* 801735A0 00170500 3B 20 00 00 */ li r25, 0 -/* 801735A4 00170504 7F 5D D3 78 */ mr r29, r26 -/* 801735A8 00170508 7F 7C DB 78 */ mr r28, r27 -lbl_801735AC: -/* 801735AC 0017050C 83 1D 00 04 */ lwz r24, 4(r29) -/* 801735B0 00170510 28 18 00 00 */ cmplwi r24, 0 -/* 801735B4 00170514 41 82 01 C8 */ beq lbl_8017377C -/* 801735B8 00170518 80 1F 00 0C */ lwz r0, 0xc(r31) -/* 801735BC 0017051C 2C 00 00 01 */ cmpwi r0, 1 -/* 801735C0 00170520 40 82 00 18 */ bne lbl_801735D8 -/* 801735C4 00170524 FC 20 E0 90 */ fmr f1, f28 -/* 801735C8 00170528 7F E3 FB 78 */ mr r3, r31 -/* 801735CC 0017052C 7F 24 CB 78 */ mr r4, r25 -/* 801735D0 00170530 4B FF F4 CD */ bl GetDownloadFraction__12CScanDisplayFif -/* 801735D4 00170534 48 00 00 08 */ b lbl_801735DC -lbl_801735D8: -/* 801735D8 00170538 C0 22 A1 14 */ lfs f1, lbl_805ABE34@sda21(r2) -lbl_801735DC: -/* 801735DC 0017053C C0 5D 00 00 */ lfs f2, 0(r29) -/* 801735E0 00170540 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) -/* 801735E4 00170544 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 801735E8 00170548 40 81 00 70 */ ble lbl_80173658 -/* 801735EC 0017054C 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) -/* 801735F0 00170550 EC 42 D8 28 */ fsubs f2, f2, f27 -/* 801735F4 00170554 C0 0D 8E 30 */ lfs f0, lbl_805A79F0@sda21(r13) -/* 801735F8 00170558 C0 63 02 4C */ lfs f3, 0x24c(r3) -/* 801735FC 0017055C C0 83 02 50 */ lfs f4, 0x250(r3) -/* 80173600 00170560 FC 00 10 40 */ fcmpo cr0, f0, f2 -/* 80173604 00170564 C0 A3 02 48 */ lfs f5, 0x248(r3) -/* 80173608 00170568 D0 41 00 20 */ stfs f2, 0x20(r1) -/* 8017360C 0017056C 40 80 00 0C */ bge lbl_80173618 -/* 80173610 00170570 38 61 00 20 */ addi r3, r1, 0x20 -/* 80173614 00170574 48 00 00 08 */ b lbl_8017361C -lbl_80173618: -/* 80173618 00170578 38 6D 8E 30 */ addi r3, r13, lbl_805A79F0@sda21 -lbl_8017361C: -/* 8017361C 0017057C C0 03 00 00 */ lfs f0, 0(r3) -/* 80173620 00170580 D0 1D 00 00 */ stfs f0, 0(r29) -/* 80173624 00170584 C0 1D 00 00 */ lfs f0, 0(r29) -/* 80173628 00170588 FC 00 20 40 */ fcmpo cr0, f0, f4 -/* 8017362C 0017058C 40 81 00 18 */ ble lbl_80173644 -/* 80173630 00170590 EC 00 20 28 */ fsubs f0, f0, f4 -/* 80173634 00170594 C0 42 A1 14 */ lfs f2, lbl_805ABE34@sda21(r2) -/* 80173638 00170598 EC 00 18 24 */ fdivs f0, f0, f3 -/* 8017363C 0017059C EC 02 00 28 */ fsubs f0, f2, f0 -/* 80173640 001705A0 48 00 00 08 */ b lbl_80173648 -lbl_80173644: -/* 80173644 001705A4 EC 00 20 24 */ fdivs f0, f0, f4 -lbl_80173648: -/* 80173648 001705A8 EC 00 01 72 */ fmuls f0, f0, f5 -/* 8017364C 001705AC C0 5F 01 A8 */ lfs f2, 0x1a8(r31) -/* 80173650 001705B0 EC 02 00 32 */ fmuls f0, f2, f0 -/* 80173654 001705B4 D0 18 01 50 */ stfs f0, 0x150(r24) -lbl_80173658: -/* 80173658 001705B8 80 8D A1 3C */ lwz r4, gpTweakGuiColors@sda21(r13) -/* 8017365C 001705BC 3C 00 43 30 */ lis r0, 0x4330 -/* 80173660 001705C0 C0 1F 01 A8 */ lfs f0, 0x1a8(r31) -/* 80173664 001705C4 88 64 01 77 */ lbz r3, 0x177(r4) -/* 80173668 001705C8 EF 41 00 32 */ fmuls f26, f1, f0 -/* 8017366C 001705CC 90 01 01 78 */ stw r0, 0x178(r1) -/* 80173670 001705D0 C8 22 A1 30 */ lfd f1, lbl_805ABE50@sda21(r2) -/* 80173674 001705D4 90 61 01 7C */ stw r3, 0x17c(r1) -/* 80173678 001705D8 C8 01 01 78 */ lfd f0, 0x178(r1) -/* 8017367C 001705DC EC 00 08 28 */ fsubs f0, f0, f1 -/* 80173680 001705E0 EF FA 00 32 */ fmuls f31, f26, f0 -/* 80173684 001705E4 F3 E1 A0 09 */ psq_st f31, 9(r1), 1, qr2 -/* 80173688 001705E8 7F 03 C3 78 */ mr r3, r24 -/* 8017368C 001705EC 80 A4 01 74 */ lwz r5, 0x174(r4) -/* 80173690 001705F0 38 81 00 1C */ addi r4, r1, 0x1c -/* 80173694 001705F4 88 01 00 09 */ lbz r0, 9(r1) -/* 80173698 001705F8 50 A0 00 2E */ rlwimi r0, r5, 0, 0, 0x17 -/* 8017369C 001705FC 90 01 00 1C */ stw r0, 0x1c(r1) -/* 801736A0 00170600 48 15 71 CD */ bl SetColor__10CGuiWidgetFRC6CColor -/* 801736A4 00170604 C0 02 A1 14 */ lfs f0, lbl_805ABE34@sda21(r2) -/* 801736A8 00170608 7F E3 FB 78 */ mr r3, r31 -/* 801736AC 0017060C 7F 24 CB 78 */ mr r4, r25 -/* 801736B0 00170610 EC 00 D0 28 */ fsubs f0, f0, f26 -/* 801736B4 00170614 D0 18 01 4C */ stfs f0, 0x14c(r24) -/* 801736B8 00170618 4B FF F4 7D */ bl GetDownloadStartTime__12CScanDisplayFi -/* 801736BC 0017061C 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) -/* 801736C0 00170620 C0 03 02 44 */ lfs f0, 0x244(r3) -/* 801736C4 00170624 EC 01 00 28 */ fsubs f0, f1, f0 -/* 801736C8 00170628 FC 00 E0 40 */ fcmpo cr0, f0, f28 -/* 801736CC 0017062C 40 80 00 B0 */ bge lbl_8017377C -/* 801736D0 00170630 80 1C 00 00 */ lwz r0, 0(r28) -/* 801736D4 00170634 2C 00 00 03 */ cmpwi r0, 3 -/* 801736D8 00170638 41 82 00 3C */ beq lbl_80173714 -/* 801736DC 0017063C 40 80 00 A0 */ bge lbl_8017377C -/* 801736E0 00170640 2C 00 00 00 */ cmpwi r0, 0 -/* 801736E4 00170644 41 82 00 98 */ beq lbl_8017377C -/* 801736E8 00170648 40 80 00 0C */ bge lbl_801736F4 -/* 801736EC 0017064C 48 00 00 90 */ b lbl_8017377C -/* 801736F0 00170650 48 00 00 8C */ b lbl_8017377C -lbl_801736F4: -/* 801736F4 00170654 38 00 00 03 */ li r0, 3 -/* 801736F8 00170658 7F 83 E3 78 */ mr r3, r28 -/* 801736FC 0017065C 90 1C 00 00 */ stw r0, 0(r28) -/* 80173700 00170660 38 8D A8 98 */ addi r4, r13, lbl_805A9458@sda21 -/* 80173704 00170664 80 AD A1 38 */ lwz r5, gpTweakGui@sda21(r13) -/* 80173708 00170668 C0 25 02 44 */ lfs f1, 0x244(r5) -/* 8017370C 0017066C 48 00 11 B5 */ bl StartTransitionTo__Q212CScanDisplay8CDataDotFRC9CVector2ff -/* 80173710 00170670 48 00 00 6C */ b lbl_8017377C -lbl_80173714: -/* 80173714 00170674 C0 5C 00 1C */ lfs f2, 0x1c(r28) -/* 80173718 00170678 C0 22 A1 10 */ lfs f1, lbl_805ABE30@sda21(r2) -/* 8017371C 0017067C FC 02 08 40 */ fcmpo cr0, f2, f1 -/* 80173720 00170680 40 81 00 0C */ ble lbl_8017372C -/* 80173724 00170684 C0 1C 00 20 */ lfs f0, 0x20(r28) -/* 80173728 00170688 EC 20 10 24 */ fdivs f1, f0, f2 -lbl_8017372C: -/* 8017372C 0017068C C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) -/* 80173730 00170690 FC 00 08 00 */ fcmpu cr0, f0, f1 -/* 80173734 00170694 40 82 00 48 */ bne lbl_8017377C -/* 80173738 00170698 38 00 00 04 */ li r0, 4 -/* 8017373C 0017069C A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) -/* 80173740 001706A0 90 1C 00 00 */ stw r0, 0(r28) -/* 80173744 001706A4 38 61 00 18 */ addi r3, r1, 0x18 -/* 80173748 001706A8 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) -/* 8017374C 001706AC 38 80 05 86 */ li r4, 0x586 -/* 80173750 001706B0 D0 1C 00 28 */ stfs f0, 0x28(r28) -/* 80173754 001706B4 38 A0 00 7F */ li r5, 0x7f -/* 80173758 001706B8 38 C0 00 40 */ li r6, 0x40 -/* 8017375C 001706BC 38 E0 00 00 */ li r7, 0 -/* 80173760 001706C0 39 20 00 00 */ li r9, 0 -/* 80173764 001706C4 48 17 66 11 */ bl SfxStart__11CSfxManagerFUsssbsbi -/* 80173768 001706C8 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) -/* 8017376C 001706CC C0 23 02 50 */ lfs f1, 0x250(r3) -/* 80173770 001706D0 C0 03 02 4C */ lfs f0, 0x24c(r3) -/* 80173774 001706D4 EC 01 00 2A */ fadds f0, f1, f0 -/* 80173778 001706D8 D0 1D 00 00 */ stfs f0, 0(r29) -lbl_8017377C: -/* 8017377C 001706DC 3B 39 00 01 */ addi r25, r25, 1 -/* 80173780 001706E0 3B 9C 00 2C */ addi r28, r28, 0x2c -/* 80173784 001706E4 2C 19 00 04 */ cmpwi r25, 4 -/* 80173788 001706E8 3B BD 00 08 */ addi r29, r29, 8 -/* 8017378C 001706EC 41 80 FE 20 */ blt lbl_801735AC -/* 80173790 001706F0 3C 60 80 3F */ lis r3, lbl_803ED910@ha -/* 80173794 001706F4 7F 5C D3 78 */ mr r28, r26 -/* 80173798 001706F8 3B 00 00 00 */ li r24, 0 -/* 8017379C 001706FC 3B A3 D9 10 */ addi r29, r3, lbl_803ED910@l -lbl_801737A0: -/* 801737A0 00170700 80 1B 00 00 */ lwz r0, 0(r27) -/* 801737A4 00170704 2C 00 00 03 */ cmpwi r0, 3 -/* 801737A8 00170708 40 80 00 14 */ bge lbl_801737BC -/* 801737AC 0017070C 2C 00 00 00 */ cmpwi r0, 0 -/* 801737B0 00170710 41 82 02 0C */ beq lbl_801739BC -/* 801737B4 00170714 40 80 00 14 */ bge lbl_801737C8 -/* 801737B8 00170718 48 00 01 F8 */ b lbl_801739B0 -lbl_801737BC: -/* 801737BC 0017071C 2C 00 00 05 */ cmpwi r0, 5 -/* 801737C0 00170720 40 80 01 F0 */ bge lbl_801739B0 -/* 801737C4 00170724 48 00 01 54 */ b lbl_80173918 -lbl_801737C8: -/* 801737C8 00170728 C0 5B 00 1C */ lfs f2, 0x1c(r27) -/* 801737CC 0017072C C0 22 A1 10 */ lfs f1, lbl_805ABE30@sda21(r2) -/* 801737D0 00170730 FC 02 08 40 */ fcmpo cr0, f2, f1 -/* 801737D4 00170734 40 81 00 0C */ ble lbl_801737E0 -/* 801737D8 00170738 C0 1B 00 20 */ lfs f0, 0x20(r27) -/* 801737DC 0017073C EC 20 10 24 */ fdivs f1, f0, f2 -lbl_801737E0: -/* 801737E0 00170740 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) -/* 801737E4 00170744 FC 00 08 00 */ fcmpu cr0, f0, f1 -/* 801737E8 00170748 40 82 01 C8 */ bne lbl_801739B0 -/* 801737EC 0017074C 20 00 00 02 */ subfic r0, r0, 2 -/* 801737F0 00170750 80 8D A1 38 */ lwz r4, gpTweakGui@sda21(r13) -/* 801737F4 00170754 7C 03 00 34 */ cntlzw r3, r0 -/* 801737F8 00170758 54 60 DE 3F */ rlwinm. r0, r3, 0x1b, 0x18, 0x1f -/* 801737FC 0017075C C3 84 02 30 */ lfs f28, 0x230(r4) -/* 80173800 00170760 54 79 D9 7E */ srwi r25, r3, 5 -/* 80173804 00170764 41 82 00 0C */ beq lbl_80173810 -/* 80173808 00170768 C3 E4 02 3C */ lfs f31, 0x23c(r4) -/* 8017380C 0017076C 48 00 00 08 */ b lbl_80173814 -lbl_80173810: -/* 80173810 00170770 C3 E4 02 34 */ lfs f31, 0x234(r4) -lbl_80173814: -/* 80173814 00170774 57 20 06 3F */ clrlwi. r0, r25, 0x18 -/* 80173818 00170778 41 82 00 0C */ beq lbl_80173824 -/* 8017381C 0017077C C3 A4 02 40 */ lfs f29, 0x240(r4) -/* 80173820 00170780 48 00 00 08 */ b lbl_80173828 -lbl_80173824: -/* 80173824 00170784 C3 A4 02 38 */ lfs f29, 0x238(r4) -lbl_80173828: -/* 80173828 00170788 57 20 06 3F */ clrlwi. r0, r25, 0x18 -/* 8017382C 0017078C 41 82 00 0C */ beq lbl_80173838 -/* 80173830 00170790 C3 5B 00 0C */ lfs f26, 0xc(r27) -/* 80173834 00170794 48 00 00 38 */ b lbl_8017386C -lbl_80173838: -/* 80173838 00170798 48 21 C6 45 */ bl rand -/* 8017383C 0017079C 6C 63 80 00 */ xoris r3, r3, 0x8000 -/* 80173840 001707A0 3C 00 43 30 */ lis r0, 0x4330 -/* 80173844 001707A4 90 61 01 7C */ stw r3, 0x17c(r1) -/* 80173848 001707A8 C0 02 A1 28 */ lfs f0, lbl_805ABE48@sda21(r2) -/* 8017384C 001707AC 90 01 01 78 */ stw r0, 0x178(r1) -/* 80173850 001707B0 C8 62 A1 38 */ lfd f3, lbl_805ABE58@sda21(r2) -/* 80173854 001707B4 EC 00 07 32 */ fmuls f0, f0, f28 -/* 80173858 001707B8 C8 41 01 78 */ lfd f2, 0x178(r1) -/* 8017385C 001707BC C0 22 A1 2C */ lfs f1, lbl_805ABE4C@sda21(r2) -/* 80173860 001707C0 EC 42 18 28 */ fsubs f2, f2, f3 -/* 80173864 001707C4 EC 22 08 24 */ fdivs f1, f2, f1 -/* 80173868 001707C8 EF 5C 00 78 */ fmsubs f26, f28, f1, f0 -lbl_8017386C: -/* 8017386C 001707CC 57 20 06 3F */ clrlwi. r0, r25, 0x18 -/* 80173870 001707D0 41 82 00 0C */ beq lbl_8017387C -/* 80173874 001707D4 C3 9B 00 10 */ lfs f28, 0x10(r27) -/* 80173878 001707D8 48 00 00 38 */ b lbl_801738B0 -lbl_8017387C: -/* 8017387C 001707DC 48 21 C6 01 */ bl rand -/* 80173880 001707E0 6C 63 80 00 */ xoris r3, r3, 0x8000 -/* 80173884 001707E4 3C 00 43 30 */ lis r0, 0x4330 -/* 80173888 001707E8 90 61 01 7C */ stw r3, 0x17c(r1) -/* 8017388C 001707EC C0 02 A1 28 */ lfs f0, lbl_805ABE48@sda21(r2) -/* 80173890 001707F0 90 01 01 78 */ stw r0, 0x178(r1) -/* 80173894 001707F4 C8 62 A1 38 */ lfd f3, lbl_805ABE58@sda21(r2) -/* 80173898 001707F8 EC 00 07 32 */ fmuls f0, f0, f28 -/* 8017389C 001707FC C8 41 01 78 */ lfd f2, 0x178(r1) -/* 801738A0 00170800 C0 22 A1 2C */ lfs f1, lbl_805ABE4C@sda21(r2) -/* 801738A4 00170804 EC 42 18 28 */ fsubs f2, f2, f3 -/* 801738A8 00170808 EC 22 08 24 */ fdivs f1, f2, f1 -/* 801738AC 0017080C EF 9C 00 78 */ fmsubs f28, f28, f1, f0 -lbl_801738B0: -/* 801738B0 00170810 48 21 C5 CD */ bl rand -/* 801738B4 00170814 FC 20 D0 90 */ fmr f1, f26 -/* 801738B8 00170818 7C 77 1B 78 */ mr r23, r3 -/* 801738BC 0017081C FC 40 E0 90 */ fmr f2, f28 -/* 801738C0 00170820 38 61 00 3C */ addi r3, r1, 0x3c -/* 801738C4 00170824 48 1A 09 3D */ bl __ct__9CVector2fFff -/* 801738C8 00170828 6E E4 80 00 */ xoris r4, r23, 0x8000 -/* 801738CC 0017082C 3C 00 43 30 */ lis r0, 0x4330 -/* 801738D0 00170830 90 81 01 7C */ stw r4, 0x17c(r1) -/* 801738D4 00170834 7C 64 1B 78 */ mr r4, r3 -/* 801738D8 00170838 C8 42 A1 38 */ lfd f2, lbl_805ABE58@sda21(r2) -/* 801738DC 0017083C EC 7D F8 28 */ fsubs f3, f29, f31 -/* 801738E0 00170840 90 01 01 78 */ stw r0, 0x178(r1) -/* 801738E4 00170844 7F 63 DB 78 */ mr r3, r27 -/* 801738E8 00170848 C0 02 A1 2C */ lfs f0, lbl_805ABE4C@sda21(r2) -/* 801738EC 0017084C C8 21 01 78 */ lfd f1, 0x178(r1) -/* 801738F0 00170850 EC 21 10 28 */ fsubs f1, f1, f2 -/* 801738F4 00170854 EC 01 00 24 */ fdivs f0, f1, f0 -/* 801738F8 00170858 EC 23 F8 3A */ fmadds f1, f3, f0, f31 -/* 801738FC 0017085C 48 00 0F C5 */ bl StartTransitionTo__Q212CScanDisplay8CDataDotFRC9CVector2ff -/* 80173900 00170860 57 20 06 3F */ clrlwi. r0, r25, 0x18 -/* 80173904 00170864 38 60 00 02 */ li r3, 2 -/* 80173908 00170868 41 82 00 08 */ beq lbl_80173910 -/* 8017390C 0017086C 38 60 00 01 */ li r3, 1 -lbl_80173910: -/* 80173910 00170870 90 7B 00 00 */ stw r3, 0(r27) -/* 80173914 00170874 48 00 00 9C */ b lbl_801739B0 -lbl_80173918: -/* 80173918 00170878 80 DC 00 04 */ lwz r6, 4(r28) -/* 8017391C 0017087C 38 61 00 7C */ addi r3, r1, 0x7c -/* 80173920 00170880 80 9F 00 A0 */ lwz r4, 0xa0(r31) -/* 80173924 00170884 38 A1 00 A8 */ addi r5, r1, 0xa8 -/* 80173928 00170888 C0 46 00 60 */ lfs f2, 0x60(r6) -/* 8017392C 0017088C 80 84 00 14 */ lwz r4, 0x14(r4) -/* 80173930 00170890 C0 26 00 50 */ lfs f1, 0x50(r6) -/* 80173934 00170894 C0 06 00 40 */ lfs f0, 0x40(r6) -/* 80173938 00170898 D0 01 00 A8 */ stfs f0, 0xa8(r1) -/* 8017393C 0017089C D0 21 00 AC */ stfs f1, 0xac(r1) -/* 80173940 001708A0 D0 41 00 B0 */ stfs f2, 0xb0(r1) -/* 80173944 001708A4 48 14 DB 75 */ bl ConvertToScreenSpace__10CGuiCameraCFRC9CVector3f -/* 80173948 001708A8 80 BD 00 08 */ lwz r5, 8(r29) -/* 8017394C 001708AC 3C 80 43 30 */ lis r4, 0x4330 -/* 80173950 001708B0 80 1D 00 0C */ lwz r0, 0xc(r29) -/* 80173954 001708B4 38 61 00 44 */ addi r3, r1, 0x44 -/* 80173958 001708B8 6C A5 80 00 */ xoris r5, r5, 0x8000 -/* 8017395C 001708BC 90 81 01 78 */ stw r4, 0x178(r1) -/* 80173960 001708C0 6C 00 80 00 */ xoris r0, r0, 0x8000 -/* 80173964 001708C4 C8 62 A1 38 */ lfd f3, lbl_805ABE58@sda21(r2) -/* 80173968 001708C8 90 A1 01 7C */ stw r5, 0x17c(r1) -/* 8017396C 001708CC C0 81 00 7C */ lfs f4, 0x7c(r1) -/* 80173970 001708D0 C8 01 01 78 */ lfd f0, 0x178(r1) -/* 80173974 001708D4 90 01 01 84 */ stw r0, 0x184(r1) -/* 80173978 001708D8 EC 20 18 28 */ fsubs f1, f0, f3 -/* 8017397C 001708DC C0 41 00 80 */ lfs f2, 0x80(r1) -/* 80173980 001708E0 90 81 01 80 */ stw r4, 0x180(r1) -/* 80173984 001708E4 C0 A2 A1 28 */ lfs f5, lbl_805ABE48@sda21(r2) -/* 80173988 001708E8 C8 01 01 80 */ lfd f0, 0x180(r1) -/* 8017398C 001708EC EC 24 00 72 */ fmuls f1, f4, f1 -/* 80173990 001708F0 EC 00 18 28 */ fsubs f0, f0, f3 -/* 80173994 001708F4 EC 25 00 72 */ fmuls f1, f5, f1 -/* 80173998 001708F8 EC 02 00 32 */ fmuls f0, f2, f0 -/* 8017399C 001708FC EC 45 00 32 */ fmuls f2, f5, f0 -/* 801739A0 00170900 48 1A 08 61 */ bl __ct__9CVector2fFff -/* 801739A4 00170904 7F 63 DB 78 */ mr r3, r27 -/* 801739A8 00170908 38 81 00 44 */ addi r4, r1, 0x44 -/* 801739AC 0017090C 48 00 0D A1 */ bl SetDestPosition__Q212CScanDisplay8CDataDotFRC9CVector2f -lbl_801739B0: -/* 801739B0 00170910 FC 20 D8 90 */ fmr f1, f27 -/* 801739B4 00170914 7F 63 DB 78 */ mr r3, r27 -/* 801739B8 00170918 48 00 0D CD */ bl Update__Q212CScanDisplay8CDataDotFf -lbl_801739BC: -/* 801739BC 0017091C 3B 18 00 01 */ addi r24, r24, 1 -/* 801739C0 00170920 3B 9C 00 08 */ addi r28, r28, 8 -/* 801739C4 00170924 2C 18 00 04 */ cmpwi r24, 4 -/* 801739C8 00170928 3B 7B 00 2C */ addi r27, r27, 0x2c -/* 801739CC 0017092C 41 80 FD D4 */ blt lbl_801737A0 -/* 801739D0 00170930 57 C0 06 3F */ clrlwi. r0, r30, 0x18 -/* 801739D4 00170934 40 82 03 50 */ bne lbl_80173D24 -/* 801739D8 00170938 38 A0 00 00 */ li r5, 0 -/* 801739DC 0017093C 38 7F 00 14 */ addi r3, r31, 0x14 -/* 801739E0 00170940 90 BF 00 0C */ stw r5, 0xc(r31) -/* 801739E4 00170944 38 81 00 E8 */ addi r4, r1, 0xe8 -/* 801739E8 00170948 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 801739EC 0017094C B0 1F 00 10 */ sth r0, 0x10(r31) -/* 801739F0 00170950 98 A1 01 70 */ stb r5, 0x170(r1) -/* 801739F4 00170954 48 00 03 A5 */ bl sub_80173d98 -/* 801739F8 00170958 88 01 01 70 */ lbz r0, 0x170(r1) -/* 801739FC 0017095C 28 00 00 00 */ cmplwi r0, 0 -/* 80173A00 00170960 41 82 00 68 */ beq lbl_80173A68 -/* 80173A04 00170964 34 61 00 E8 */ addic. r3, r1, 0xe8 -/* 80173A08 00170968 41 82 00 60 */ beq lbl_80173A68 -/* 80173A0C 0017096C 34 03 00 14 */ addic. r0, r3, 0x14 -/* 80173A10 00170970 41 82 00 58 */ beq lbl_80173A68 -/* 80173A14 00170974 80 C3 00 14 */ lwz r6, 0x14(r3) -/* 80173A18 00170978 38 80 00 00 */ li r4, 0 -/* 80173A1C 0017097C 2C 06 00 00 */ cmpwi r6, 0 -/* 80173A20 00170980 40 81 00 40 */ ble lbl_80173A60 -/* 80173A24 00170984 2C 06 00 08 */ cmpwi r6, 8 -/* 80173A28 00170988 38 A6 FF F8 */ addi r5, r6, -8 -/* 80173A2C 0017098C 40 81 00 20 */ ble lbl_80173A4C -/* 80173A30 00170990 38 05 00 07 */ addi r0, r5, 7 -/* 80173A34 00170994 54 00 E8 FE */ srwi r0, r0, 3 -/* 80173A38 00170998 7C 09 03 A6 */ mtctr r0 -/* 80173A3C 0017099C 2C 05 00 00 */ cmpwi r5, 0 -/* 80173A40 001709A0 40 81 00 0C */ ble lbl_80173A4C -lbl_80173A44: -/* 80173A44 001709A4 38 84 00 08 */ addi r4, r4, 8 -/* 80173A48 001709A8 42 00 FF FC */ bdnz lbl_80173A44 -lbl_80173A4C: -/* 80173A4C 001709AC 7C 04 30 50 */ subf r0, r4, r6 -/* 80173A50 001709B0 7C 09 03 A6 */ mtctr r0 -/* 80173A54 001709B4 7C 04 30 00 */ cmpw r4, r6 -/* 80173A58 001709B8 40 80 00 08 */ bge lbl_80173A60 -lbl_80173A5C: -/* 80173A5C 001709BC 42 00 00 00 */ bdnz lbl_80173A5C -lbl_80173A60: -/* 80173A60 001709C0 38 00 00 00 */ li r0, 0 -/* 80173A64 001709C4 90 03 00 14 */ stw r0, 0x14(r3) -lbl_80173A68: -/* 80173A68 001709C8 38 00 00 00 */ li r0, 0 -/* 80173A6C 001709CC 38 61 00 6C */ addi r3, r1, 0x6c -/* 80173A70 001709D0 98 01 01 70 */ stb r0, 0x170(r1) -/* 80173A74 001709D4 38 8D 8E 40 */ addi r4, r13, lbl_805A7A00@sda21 -/* 80173A78 001709D8 4B EA 1F 79 */ bl wstring_l__4rstlFPCw -/* 80173A7C 001709DC 80 7F 00 A8 */ lwz r3, 0xa8(r31) -/* 80173A80 001709E0 38 81 00 6C */ addi r4, r1, 0x6c -/* 80173A84 001709E4 38 A0 00 00 */ li r5, 0 -/* 80173A88 001709E8 38 63 00 D4 */ addi r3, r3, 0xd4 -/* 80173A8C 001709EC 48 15 5D F9 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80173A90 001709F0 38 61 00 6C */ addi r3, r1, 0x6c -/* 80173A94 001709F4 48 1C 96 A1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 80173A98 001709F8 38 61 00 5C */ addi r3, r1, 0x5c -/* 80173A9C 001709FC 38 8D 8E 40 */ addi r4, r13, lbl_805A7A00@sda21 -/* 80173AA0 00170A00 4B EA 1F 51 */ bl wstring_l__4rstlFPCw -/* 80173AA4 00170A04 80 7F 00 AC */ lwz r3, 0xac(r31) -/* 80173AA8 00170A08 38 81 00 5C */ addi r4, r1, 0x5c -/* 80173AAC 00170A0C 38 A0 00 00 */ li r5, 0 -/* 80173AB0 00170A10 38 63 00 D4 */ addi r3, r3, 0xd4 -/* 80173AB4 00170A14 48 15 5D D1 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80173AB8 00170A18 38 61 00 5C */ addi r3, r1, 0x5c -/* 80173ABC 00170A1C 48 1C 96 79 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 80173AC0 00170A20 80 7F 00 A4 */ lwz r3, 0xa4(r31) -/* 80173AC4 00170A24 38 80 00 00 */ li r4, 0 -/* 80173AC8 00170A28 38 A0 00 01 */ li r5, 1 -/* 80173ACC 00170A2C 48 15 6C 1D */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode -/* 80173AD0 00170A30 80 7F 00 B0 */ lwz r3, 0xb0(r31) -/* 80173AD4 00170A34 38 80 00 00 */ li r4, 0 -/* 80173AD8 00170A38 38 A0 00 01 */ li r5, 1 -/* 80173ADC 00170A3C 48 15 6C 0D */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode -/* 80173AE0 00170A40 80 7F 00 B4 */ lwz r3, 0xb4(r31) -/* 80173AE4 00170A44 38 80 00 00 */ li r4, 0 -/* 80173AE8 00170A48 38 A0 00 01 */ li r5, 1 -/* 80173AEC 00170A4C 48 15 6B FD */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode -/* 80173AF0 00170A50 80 7F 00 B8 */ lwz r3, 0xb8(r31) -/* 80173AF4 00170A54 38 80 00 00 */ li r4, 0 -/* 80173AF8 00170A58 38 A0 00 01 */ li r5, 1 -/* 80173AFC 00170A5C 48 15 6B ED */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode -/* 80173B00 00170A60 38 60 00 00 */ li r3, 0 -/* 80173B04 00170A64 34 C1 00 C8 */ addic. r6, r1, 0xc8 -/* 80173B08 00170A68 90 7F 00 A8 */ stw r3, 0xa8(r31) -/* 80173B0C 00170A6C 38 00 00 04 */ li r0, 4 -/* 80173B10 00170A70 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) -/* 80173B14 00170A74 90 7F 00 AC */ stw r3, 0xac(r31) -/* 80173B18 00170A78 90 7F 00 A4 */ stw r3, 0xa4(r31) -/* 80173B1C 00170A7C 90 7F 00 B0 */ stw r3, 0xb0(r31) -/* 80173B20 00170A80 90 7F 00 B4 */ stw r3, 0xb4(r31) -/* 80173B24 00170A84 90 7F 00 B8 */ stw r3, 0xb8(r31) -/* 80173B28 00170A88 90 01 00 C4 */ stw r0, 0xc4(r1) -/* 80173B2C 00170A8C 41 82 00 0C */ beq lbl_80173B38 -/* 80173B30 00170A90 D0 01 00 C8 */ stfs f0, 0xc8(r1) -/* 80173B34 00170A94 90 61 00 CC */ stw r3, 0xcc(r1) -lbl_80173B38: -/* 80173B38 00170A98 34 86 00 08 */ addic. r4, r6, 8 -/* 80173B3C 00170A9C 41 82 00 0C */ beq lbl_80173B48 -/* 80173B40 00170AA0 D0 04 00 00 */ stfs f0, 0(r4) -/* 80173B44 00170AA4 90 64 00 04 */ stw r3, 4(r4) -lbl_80173B48: -/* 80173B48 00170AA8 34 84 00 08 */ addic. r4, r4, 8 -/* 80173B4C 00170AAC 41 82 00 0C */ beq lbl_80173B58 -/* 80173B50 00170AB0 D0 04 00 00 */ stfs f0, 0(r4) -/* 80173B54 00170AB4 90 64 00 04 */ stw r3, 4(r4) -lbl_80173B58: -/* 80173B58 00170AB8 34 84 00 08 */ addic. r4, r4, 8 -/* 80173B5C 00170ABC 41 82 00 0C */ beq lbl_80173B68 -/* 80173B60 00170AC0 D0 04 00 00 */ stfs f0, 0(r4) -/* 80173B64 00170AC4 90 64 00 04 */ stw r3, 4(r4) -lbl_80173B68: -/* 80173B68 00170AC8 38 7F 01 70 */ addi r3, r31, 0x170 -/* 80173B6C 00170ACC 38 01 00 C4 */ addi r0, r1, 0xc4 -/* 80173B70 00170AD0 7C 03 00 40 */ cmplw r3, r0 -/* 80173B74 00170AD4 41 82 00 98 */ beq lbl_80173C0C -/* 80173B78 00170AD8 80 BF 01 70 */ lwz r5, 0x170(r31) -/* 80173B7C 00170ADC 38 60 00 00 */ li r3, 0 -/* 80173B80 00170AE0 2C 05 00 00 */ cmpwi r5, 0 -/* 80173B84 00170AE4 40 81 00 40 */ ble lbl_80173BC4 -/* 80173B88 00170AE8 2C 05 00 08 */ cmpwi r5, 8 -/* 80173B8C 00170AEC 38 85 FF F8 */ addi r4, r5, -8 -/* 80173B90 00170AF0 40 81 00 20 */ ble lbl_80173BB0 -/* 80173B94 00170AF4 38 04 00 07 */ addi r0, r4, 7 -/* 80173B98 00170AF8 54 00 E8 FE */ srwi r0, r0, 3 -/* 80173B9C 00170AFC 7C 09 03 A6 */ mtctr r0 -/* 80173BA0 00170B00 2C 04 00 00 */ cmpwi r4, 0 -/* 80173BA4 00170B04 40 81 00 0C */ ble lbl_80173BB0 -lbl_80173BA8: -/* 80173BA8 00170B08 38 63 00 08 */ addi r3, r3, 8 -/* 80173BAC 00170B0C 42 00 FF FC */ bdnz lbl_80173BA8 -lbl_80173BB0: -/* 80173BB0 00170B10 7C 03 28 50 */ subf r0, r3, r5 -/* 80173BB4 00170B14 7C 09 03 A6 */ mtctr r0 -/* 80173BB8 00170B18 7C 03 28 00 */ cmpw r3, r5 -/* 80173BBC 00170B1C 40 80 00 08 */ bge lbl_80173BC4 -lbl_80173BC0: -/* 80173BC0 00170B20 42 00 00 00 */ bdnz lbl_80173BC0 -lbl_80173BC4: -/* 80173BC4 00170B24 38 00 00 00 */ li r0, 0 -/* 80173BC8 00170B28 90 1F 01 70 */ stw r0, 0x170(r31) -/* 80173BCC 00170B2C 80 01 00 C4 */ lwz r0, 0xc4(r1) -/* 80173BD0 00170B30 54 00 18 38 */ slwi r0, r0, 3 -/* 80173BD4 00170B34 7C 66 02 14 */ add r3, r6, r0 -/* 80173BD8 00170B38 48 00 00 24 */ b lbl_80173BFC -lbl_80173BDC: -/* 80173BDC 00170B3C 28 1A 00 00 */ cmplwi r26, 0 -/* 80173BE0 00170B40 41 82 00 14 */ beq lbl_80173BF4 -/* 80173BE4 00170B44 C0 06 00 00 */ lfs f0, 0(r6) -/* 80173BE8 00170B48 D0 1A 00 00 */ stfs f0, 0(r26) -/* 80173BEC 00170B4C 80 06 00 04 */ lwz r0, 4(r6) -/* 80173BF0 00170B50 90 1A 00 04 */ stw r0, 4(r26) -lbl_80173BF4: -/* 80173BF4 00170B54 3B 5A 00 08 */ addi r26, r26, 8 -/* 80173BF8 00170B58 38 C6 00 08 */ addi r6, r6, 8 -lbl_80173BFC: -/* 80173BFC 00170B5C 7C 06 18 40 */ cmplw r6, r3 -/* 80173C00 00170B60 40 82 FF DC */ bne lbl_80173BDC -/* 80173C04 00170B64 80 01 00 C4 */ lwz r0, 0xc4(r1) -/* 80173C08 00170B68 90 1F 01 70 */ stw r0, 0x170(r31) -lbl_80173C0C: -/* 80173C0C 00170B6C 80 A1 00 C4 */ lwz r5, 0xc4(r1) -/* 80173C10 00170B70 38 60 00 00 */ li r3, 0 -/* 80173C14 00170B74 2C 05 00 00 */ cmpwi r5, 0 -/* 80173C18 00170B78 40 81 00 40 */ ble lbl_80173C58 -/* 80173C1C 00170B7C 2C 05 00 08 */ cmpwi r5, 8 -/* 80173C20 00170B80 38 85 FF F8 */ addi r4, r5, -8 -/* 80173C24 00170B84 40 81 00 20 */ ble lbl_80173C44 -/* 80173C28 00170B88 38 04 00 07 */ addi r0, r4, 7 -/* 80173C2C 00170B8C 54 00 E8 FE */ srwi r0, r0, 3 -/* 80173C30 00170B90 7C 09 03 A6 */ mtctr r0 -/* 80173C34 00170B94 2C 04 00 00 */ cmpwi r4, 0 -/* 80173C38 00170B98 40 81 00 0C */ ble lbl_80173C44 -lbl_80173C3C: -/* 80173C3C 00170B9C 38 63 00 08 */ addi r3, r3, 8 -/* 80173C40 00170BA0 42 00 FF FC */ bdnz lbl_80173C3C -lbl_80173C44: -/* 80173C44 00170BA4 7C 03 28 50 */ subf r0, r3, r5 -/* 80173C48 00170BA8 7C 09 03 A6 */ mtctr r0 -/* 80173C4C 00170BAC 7C 03 28 00 */ cmpw r3, r5 -/* 80173C50 00170BB0 40 80 00 08 */ bge lbl_80173C58 -lbl_80173C54: -/* 80173C54 00170BB4 42 00 00 00 */ bdnz lbl_80173C54 -lbl_80173C58: -/* 80173C58 00170BB8 3B 1F 01 94 */ addi r24, r31, 0x194 -/* 80173C5C 00170BBC 38 81 00 4C */ addi r4, r1, 0x4c -/* 80173C60 00170BC0 38 00 00 00 */ li r0, 0 -/* 80173C64 00170BC4 7C 18 20 40 */ cmplw r24, r4 -/* 80173C68 00170BC8 90 01 00 C4 */ stw r0, 0xc4(r1) -/* 80173C6C 00170BCC 98 01 00 58 */ stb r0, 0x58(r1) -/* 80173C70 00170BD0 41 82 00 7C */ beq lbl_80173CEC -/* 80173C74 00170BD4 28 00 00 00 */ cmplwi r0, 0 -/* 80173C78 00170BD8 41 82 00 48 */ beq lbl_80173CC0 -/* 80173C7C 00170BDC 88 1F 01 A0 */ lbz r0, 0x1a0(r31) -/* 80173C80 00170BE0 28 00 00 00 */ cmplwi r0, 0 -/* 80173C84 00170BE4 40 82 00 28 */ bne lbl_80173CAC -/* 80173C88 00170BE8 36 FF 01 94 */ addic. r23, r31, 0x194 -/* 80173C8C 00170BEC 41 82 00 14 */ beq lbl_80173CA0 -/* 80173C90 00170BF0 7E E3 BB 78 */ mr r3, r23 -/* 80173C94 00170BF4 48 1C D2 15 */ bl __ct__6CTokenFRC6CToken -/* 80173C98 00170BF8 80 01 00 54 */ lwz r0, 0x54(r1) -/* 80173C9C 00170BFC 90 17 00 08 */ stw r0, 8(r23) -lbl_80173CA0: -/* 80173CA0 00170C00 38 00 00 01 */ li r0, 1 -/* 80173CA4 00170C04 98 1F 01 A0 */ stb r0, 0x1a0(r31) -/* 80173CA8 00170C08 48 00 00 44 */ b lbl_80173CEC -lbl_80173CAC: -/* 80173CAC 00170C0C 7F 03 C3 78 */ mr r3, r24 -/* 80173CB0 00170C10 48 1C D0 15 */ bl __as__6CTokenFRC6CToken -/* 80173CB4 00170C14 80 01 00 54 */ lwz r0, 0x54(r1) -/* 80173CB8 00170C18 90 18 00 08 */ stw r0, 8(r24) -/* 80173CBC 00170C1C 48 00 00 30 */ b lbl_80173CEC -lbl_80173CC0: -/* 80173CC0 00170C20 88 1F 01 A0 */ lbz r0, 0x1a0(r31) -/* 80173CC4 00170C24 28 00 00 00 */ cmplwi r0, 0 -/* 80173CC8 00170C28 41 82 00 1C */ beq lbl_80173CE4 -/* 80173CCC 00170C2C 34 7F 01 94 */ addic. r3, r31, 0x194 -/* 80173CD0 00170C30 41 82 00 14 */ beq lbl_80173CE4 -/* 80173CD4 00170C34 28 03 00 00 */ cmplwi r3, 0 -/* 80173CD8 00170C38 41 82 00 0C */ beq lbl_80173CE4 -/* 80173CDC 00170C3C 38 80 00 00 */ li r4, 0 -/* 80173CE0 00170C40 48 1C D1 61 */ bl __dt__6CTokenFv -lbl_80173CE4: -/* 80173CE4 00170C44 38 00 00 00 */ li r0, 0 -/* 80173CE8 00170C48 98 1F 01 A0 */ stb r0, 0x1a0(r31) -lbl_80173CEC: -/* 80173CEC 00170C4C 88 01 00 58 */ lbz r0, 0x58(r1) -/* 80173CF0 00170C50 28 00 00 00 */ cmplwi r0, 0 -/* 80173CF4 00170C54 41 82 00 1C */ beq lbl_80173D10 -/* 80173CF8 00170C58 34 61 00 4C */ addic. r3, r1, 0x4c -/* 80173CFC 00170C5C 41 82 00 14 */ beq lbl_80173D10 -/* 80173D00 00170C60 28 03 00 00 */ cmplwi r3, 0 -/* 80173D04 00170C64 41 82 00 0C */ beq lbl_80173D10 -/* 80173D08 00170C68 38 80 00 00 */ li r4, 0 -/* 80173D0C 00170C6C 48 1C D1 35 */ bl __dt__6CTokenFv -lbl_80173D10: -/* 80173D10 00170C70 38 00 00 00 */ li r0, 0 -/* 80173D14 00170C74 98 01 00 58 */ stb r0, 0x58(r1) -/* 80173D18 00170C78 90 1F 01 AC */ stw r0, 0x1ac(r31) -/* 80173D1C 00170C7C 98 1F 01 B4 */ stb r0, 0x1b4(r31) -/* 80173D20 00170C80 48 00 00 34 */ b lbl_80173D54 -lbl_80173D24: -/* 80173D24 00170C84 C3 7F 01 A8 */ lfs f27, 0x1a8(r31) -/* 80173D28 00170C88 48 1D 62 85 */ bl White__6CColorFv -/* 80173D2C 00170C8C C0 02 A1 24 */ lfs f0, lbl_805ABE44@sda21(r2) -/* 80173D30 00170C90 EF C0 06 F2 */ fmuls f30, f0, f27 -/* 80173D34 00170C94 F3 C1 A0 08 */ psq_st f30, 8(r1), 1, qr2 -/* 80173D38 00170C98 38 81 00 38 */ addi r4, r1, 0x38 -/* 80173D3C 00170C9C 80 63 00 00 */ lwz r3, 0(r3) -/* 80173D40 00170CA0 88 01 00 08 */ lbz r0, 8(r1) -/* 80173D44 00170CA4 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 -/* 80173D48 00170CA8 90 01 00 38 */ stw r0, 0x38(r1) -/* 80173D4C 00170CAC 80 7F 00 A4 */ lwz r3, 0xa4(r31) -/* 80173D50 00170CB0 48 15 6B 1D */ bl SetColor__10CGuiWidgetFRC6CColor -lbl_80173D54: -/* 80173D54 00170CB4 E3 E1 02 08 */ psq_l f31, 520(r1), 0, qr0 -/* 80173D58 00170CB8 CB E1 02 00 */ lfd f31, 0x200(r1) -/* 80173D5C 00170CBC E3 C1 01 F8 */ psq_l f30, 504(r1), 0, qr0 -/* 80173D60 00170CC0 CB C1 01 F0 */ lfd f30, 0x1f0(r1) -/* 80173D64 00170CC4 E3 A1 01 E8 */ psq_l f29, 488(r1), 0, qr0 -/* 80173D68 00170CC8 CB A1 01 E0 */ lfd f29, 0x1e0(r1) -/* 80173D6C 00170CCC E3 81 01 D8 */ psq_l f28, 472(r1), 0, qr0 -/* 80173D70 00170CD0 CB 81 01 D0 */ lfd f28, 0x1d0(r1) -/* 80173D74 00170CD4 E3 61 01 C8 */ psq_l f27, 456(r1), 0, qr0 -/* 80173D78 00170CD8 CB 61 01 C0 */ lfd f27, 0x1c0(r1) -/* 80173D7C 00170CDC E3 41 01 B8 */ psq_l f26, 440(r1), 0, qr0 -/* 80173D80 00170CE0 CB 41 01 B0 */ lfd f26, 0x1b0(r1) -/* 80173D84 00170CE4 BA E1 01 8C */ lmw r23, 0x18c(r1) -/* 80173D88 00170CE8 80 01 02 14 */ lwz r0, 0x214(r1) -/* 80173D8C 00170CEC 7C 08 03 A6 */ mtlr r0 -/* 80173D90 00170CF0 38 21 02 10 */ addi r1, r1, 0x210 -/* 80173D94 00170CF4 4E 80 00 20 */ blr - -.global sub_80173d98 -sub_80173d98: -/* 80173D98 00170CF8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80173D9C 00170CFC 7C 08 02 A6 */ mflr r0 -/* 80173DA0 00170D00 90 01 00 14 */ stw r0, 0x14(r1) -/* 80173DA4 00170D04 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80173DA8 00170D08 7C 7F 1B 78 */ mr r31, r3 -/* 80173DAC 00170D0C 7C 1F 20 40 */ cmplw r31, r4 -/* 80173DB0 00170D10 40 82 00 08 */ bne lbl_80173DB8 -/* 80173DB4 00170D14 48 00 00 94 */ b lbl_80173E48 -lbl_80173DB8: -/* 80173DB8 00170D18 88 04 00 88 */ lbz r0, 0x88(r4) -/* 80173DBC 00170D1C 28 00 00 00 */ cmplwi r0, 0 -/* 80173DC0 00170D20 41 82 00 0C */ beq lbl_80173DCC -/* 80173DC4 00170D24 48 00 00 99 */ bl sub_80173e5c -/* 80173DC8 00170D28 48 00 00 7C */ b lbl_80173E44 -lbl_80173DCC: -/* 80173DCC 00170D2C 88 1F 00 88 */ lbz r0, 0x88(r31) -/* 80173DD0 00170D30 28 00 00 00 */ cmplwi r0, 0 -/* 80173DD4 00170D34 41 82 00 68 */ beq lbl_80173E3C -/* 80173DD8 00170D38 28 1F 00 00 */ cmplwi r31, 0 -/* 80173DDC 00170D3C 41 82 00 60 */ beq lbl_80173E3C -/* 80173DE0 00170D40 34 1F 00 14 */ addic. r0, r31, 0x14 -/* 80173DE4 00170D44 41 82 00 58 */ beq lbl_80173E3C -/* 80173DE8 00170D48 80 BF 00 14 */ lwz r5, 0x14(r31) -/* 80173DEC 00170D4C 38 60 00 00 */ li r3, 0 -/* 80173DF0 00170D50 2C 05 00 00 */ cmpwi r5, 0 -/* 80173DF4 00170D54 40 81 00 40 */ ble lbl_80173E34 -/* 80173DF8 00170D58 2C 05 00 08 */ cmpwi r5, 8 -/* 80173DFC 00170D5C 38 85 FF F8 */ addi r4, r5, -8 -/* 80173E00 00170D60 40 81 00 20 */ ble lbl_80173E20 -/* 80173E04 00170D64 38 04 00 07 */ addi r0, r4, 7 -/* 80173E08 00170D68 54 00 E8 FE */ srwi r0, r0, 3 -/* 80173E0C 00170D6C 7C 09 03 A6 */ mtctr r0 -/* 80173E10 00170D70 2C 04 00 00 */ cmpwi r4, 0 -/* 80173E14 00170D74 40 81 00 0C */ ble lbl_80173E20 -lbl_80173E18: -/* 80173E18 00170D78 38 63 00 08 */ addi r3, r3, 8 -/* 80173E1C 00170D7C 42 00 FF FC */ bdnz lbl_80173E18 -lbl_80173E20: -/* 80173E20 00170D80 7C 03 28 50 */ subf r0, r3, r5 -/* 80173E24 00170D84 7C 09 03 A6 */ mtctr r0 -/* 80173E28 00170D88 7C 03 28 00 */ cmpw r3, r5 -/* 80173E2C 00170D8C 40 80 00 08 */ bge lbl_80173E34 -lbl_80173E30: -/* 80173E30 00170D90 42 00 00 00 */ bdnz lbl_80173E30 -lbl_80173E34: -/* 80173E34 00170D94 38 00 00 00 */ li r0, 0 -/* 80173E38 00170D98 90 1F 00 14 */ stw r0, 0x14(r31) -lbl_80173E3C: -/* 80173E3C 00170D9C 38 00 00 00 */ li r0, 0 -/* 80173E40 00170DA0 98 1F 00 88 */ stb r0, 0x88(r31) -lbl_80173E44: -/* 80173E44 00170DA4 7F E3 FB 78 */ mr r3, r31 -lbl_80173E48: -/* 80173E48 00170DA8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80173E4C 00170DAC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80173E50 00170DB0 7C 08 03 A6 */ mtlr r0 -/* 80173E54 00170DB4 38 21 00 10 */ addi r1, r1, 0x10 -/* 80173E58 00170DB8 4E 80 00 20 */ blr - -.global sub_80173e5c -sub_80173e5c: -/* 80173E5C 00170DBC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80173E60 00170DC0 7C 08 02 A6 */ mflr r0 -/* 80173E64 00170DC4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80173E68 00170DC8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80173E6C 00170DCC 7C 7F 1B 78 */ mr r31, r3 -/* 80173E70 00170DD0 88 03 00 88 */ lbz r0, 0x88(r3) -/* 80173E74 00170DD4 28 00 00 00 */ cmplwi r0, 0 -/* 80173E78 00170DD8 40 82 00 14 */ bne lbl_80173E8C -/* 80173E7C 00170DDC 48 00 01 61 */ bl sub_80173fdc -/* 80173E80 00170DE0 38 00 00 01 */ li r0, 1 -/* 80173E84 00170DE4 98 1F 00 88 */ stb r0, 0x88(r31) -/* 80173E88 00170DE8 48 00 00 08 */ b lbl_80173E90 -lbl_80173E8C: -/* 80173E8C 00170DEC 48 00 00 19 */ bl sub_80173ea4 -lbl_80173E90: -/* 80173E90 00170DF0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80173E94 00170DF4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80173E98 00170DF8 7C 08 03 A6 */ mtlr r0 -/* 80173E9C 00170DFC 38 21 00 10 */ addi r1, r1, 0x10 -/* 80173EA0 00170E00 4E 80 00 20 */ blr - -.global sub_80173ea4 -sub_80173ea4: -/* 80173EA4 00170E04 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80173EA8 00170E08 7C 08 02 A6 */ mflr r0 -/* 80173EAC 00170E0C 7C 85 23 78 */ mr r5, r4 -/* 80173EB0 00170E10 90 01 00 14 */ stw r0, 0x14(r1) -/* 80173EB4 00170E14 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80173EB8 00170E18 7C 7F 1B 78 */ mr r31, r3 -/* 80173EBC 00170E1C 38 7F 00 14 */ addi r3, r31, 0x14 -/* 80173EC0 00170E20 80 04 00 00 */ lwz r0, 0(r4) -/* 80173EC4 00170E24 38 85 00 14 */ addi r4, r5, 0x14 -/* 80173EC8 00170E28 90 1F 00 00 */ stw r0, 0(r31) -/* 80173ECC 00170E2C 80 05 00 04 */ lwz r0, 4(r5) -/* 80173ED0 00170E30 90 1F 00 04 */ stw r0, 4(r31) -/* 80173ED4 00170E34 C0 05 00 08 */ lfs f0, 8(r5) -/* 80173ED8 00170E38 D0 1F 00 08 */ stfs f0, 8(r31) -/* 80173EDC 00170E3C 80 05 00 0C */ lwz r0, 0xc(r5) -/* 80173EE0 00170E40 90 1F 00 0C */ stw r0, 0xc(r31) -/* 80173EE4 00170E44 88 05 00 10 */ lbz r0, 0x10(r5) -/* 80173EE8 00170E48 98 1F 00 10 */ stb r0, 0x10(r31) -/* 80173EEC 00170E4C 48 00 00 1D */ bl sub_80173f08 -/* 80173EF0 00170E50 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80173EF4 00170E54 7F E3 FB 78 */ mr r3, r31 -/* 80173EF8 00170E58 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80173EFC 00170E5C 7C 08 03 A6 */ mtlr r0 -/* 80173F00 00170E60 38 21 00 10 */ addi r1, r1, 0x10 -/* 80173F04 00170E64 4E 80 00 20 */ blr - -.global sub_80173f08 -sub_80173f08: -/* 80173F08 00170E68 7C 03 20 40 */ cmplw r3, r4 -/* 80173F0C 00170E6C 4D 82 00 20 */ beqlr -/* 80173F10 00170E70 80 E3 00 00 */ lwz r7, 0(r3) -/* 80173F14 00170E74 38 A0 00 00 */ li r5, 0 -/* 80173F18 00170E78 2C 07 00 00 */ cmpwi r7, 0 -/* 80173F1C 00170E7C 40 81 00 40 */ ble lbl_80173F5C -/* 80173F20 00170E80 2C 07 00 08 */ cmpwi r7, 8 -/* 80173F24 00170E84 38 C7 FF F8 */ addi r6, r7, -8 -/* 80173F28 00170E88 40 81 00 20 */ ble lbl_80173F48 -/* 80173F2C 00170E8C 38 06 00 07 */ addi r0, r6, 7 -/* 80173F30 00170E90 54 00 E8 FE */ srwi r0, r0, 3 -/* 80173F34 00170E94 7C 09 03 A6 */ mtctr r0 -/* 80173F38 00170E98 2C 06 00 00 */ cmpwi r6, 0 -/* 80173F3C 00170E9C 40 81 00 0C */ ble lbl_80173F48 -lbl_80173F40: -/* 80173F40 00170EA0 38 A5 00 08 */ addi r5, r5, 8 -/* 80173F44 00170EA4 42 00 FF FC */ bdnz lbl_80173F40 -lbl_80173F48: -/* 80173F48 00170EA8 7C 05 38 50 */ subf r0, r5, r7 -/* 80173F4C 00170EAC 7C 09 03 A6 */ mtctr r0 -/* 80173F50 00170EB0 7C 05 38 00 */ cmpw r5, r7 -/* 80173F54 00170EB4 40 80 00 08 */ bge lbl_80173F5C -lbl_80173F58: -/* 80173F58 00170EB8 42 00 00 00 */ bdnz lbl_80173F58 -lbl_80173F5C: -/* 80173F5C 00170EBC 38 00 00 00 */ li r0, 0 -/* 80173F60 00170EC0 38 C3 00 04 */ addi r6, r3, 4 -/* 80173F64 00170EC4 90 03 00 00 */ stw r0, 0(r3) -/* 80173F68 00170EC8 38 A4 00 04 */ addi r5, r4, 4 -/* 80173F6C 00170ECC 80 04 00 00 */ lwz r0, 0(r4) -/* 80173F70 00170ED0 1C 00 00 1C */ mulli r0, r0, 0x1c -/* 80173F74 00170ED4 7C E4 02 14 */ add r7, r4, r0 -/* 80173F78 00170ED8 38 E7 00 04 */ addi r7, r7, 4 -/* 80173F7C 00170EDC 48 00 00 4C */ b lbl_80173FC8 -lbl_80173F80: -/* 80173F80 00170EE0 28 06 00 00 */ cmplwi r6, 0 -/* 80173F84 00170EE4 41 82 00 3C */ beq lbl_80173FC0 -/* 80173F88 00170EE8 80 05 00 00 */ lwz r0, 0(r5) -/* 80173F8C 00170EEC 90 06 00 00 */ stw r0, 0(r6) -/* 80173F90 00170EF0 C0 05 00 04 */ lfs f0, 4(r5) -/* 80173F94 00170EF4 D0 06 00 04 */ stfs f0, 4(r6) -/* 80173F98 00170EF8 80 05 00 08 */ lwz r0, 8(r5) -/* 80173F9C 00170EFC 90 06 00 08 */ stw r0, 8(r6) -/* 80173FA0 00170F00 80 05 00 0C */ lwz r0, 0xc(r5) -/* 80173FA4 00170F04 90 06 00 0C */ stw r0, 0xc(r6) -/* 80173FA8 00170F08 80 05 00 10 */ lwz r0, 0x10(r5) -/* 80173FAC 00170F0C 90 06 00 10 */ stw r0, 0x10(r6) -/* 80173FB0 00170F10 C0 05 00 14 */ lfs f0, 0x14(r5) -/* 80173FB4 00170F14 D0 06 00 14 */ stfs f0, 0x14(r6) -/* 80173FB8 00170F18 C0 05 00 18 */ lfs f0, 0x18(r5) -/* 80173FBC 00170F1C D0 06 00 18 */ stfs f0, 0x18(r6) -lbl_80173FC0: -/* 80173FC0 00170F20 38 C6 00 1C */ addi r6, r6, 0x1c -/* 80173FC4 00170F24 38 A5 00 1C */ addi r5, r5, 0x1c -lbl_80173FC8: -/* 80173FC8 00170F28 7C 05 38 40 */ cmplw r5, r7 -/* 80173FCC 00170F2C 40 82 FF B4 */ bne lbl_80173F80 -/* 80173FD0 00170F30 80 04 00 00 */ lwz r0, 0(r4) -/* 80173FD4 00170F34 90 03 00 00 */ stw r0, 0(r3) -/* 80173FD8 00170F38 4E 80 00 20 */ blr - -.global sub_80173fdc -sub_80173fdc: -/* 80173FDC 00170F3C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80173FE0 00170F40 7C 08 02 A6 */ mflr r0 -/* 80173FE4 00170F44 28 03 00 00 */ cmplwi r3, 0 -/* 80173FE8 00170F48 90 01 00 14 */ stw r0, 0x14(r1) -/* 80173FEC 00170F4C 41 82 00 08 */ beq lbl_80173FF4 -/* 80173FF0 00170F50 48 00 00 15 */ bl sub_80174004 -lbl_80173FF4: -/* 80173FF4 00170F54 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80173FF8 00170F58 7C 08 03 A6 */ mtlr r0 -/* 80173FFC 00170F5C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80174000 00170F60 4E 80 00 20 */ blr - -.global sub_80174004 -sub_80174004: -/* 80174004 00170F64 80 04 00 00 */ lwz r0, 0(r4) -/* 80174008 00170F68 38 C4 00 18 */ addi r6, r4, 0x18 -/* 8017400C 00170F6C 38 A3 00 18 */ addi r5, r3, 0x18 -/* 80174010 00170F70 90 03 00 00 */ stw r0, 0(r3) -/* 80174014 00170F74 80 04 00 04 */ lwz r0, 4(r4) -/* 80174018 00170F78 90 03 00 04 */ stw r0, 4(r3) -/* 8017401C 00170F7C C0 04 00 08 */ lfs f0, 8(r4) -/* 80174020 00170F80 D0 03 00 08 */ stfs f0, 8(r3) -/* 80174024 00170F84 80 04 00 0C */ lwz r0, 0xc(r4) -/* 80174028 00170F88 90 03 00 0C */ stw r0, 0xc(r3) -/* 8017402C 00170F8C 88 04 00 10 */ lbz r0, 0x10(r4) -/* 80174030 00170F90 98 03 00 10 */ stb r0, 0x10(r3) -/* 80174034 00170F94 80 04 00 14 */ lwz r0, 0x14(r4) -/* 80174038 00170F98 90 03 00 14 */ stw r0, 0x14(r3) -/* 8017403C 00170F9C 80 03 00 14 */ lwz r0, 0x14(r3) -/* 80174040 00170FA0 7C 09 03 A6 */ mtctr r0 -/* 80174044 00170FA4 2C 00 00 00 */ cmpwi r0, 0 -/* 80174048 00170FA8 4C 81 00 20 */ blelr -lbl_8017404C: -/* 8017404C 00170FAC 28 05 00 00 */ cmplwi r5, 0 -/* 80174050 00170FB0 41 82 00 3C */ beq lbl_8017408C -/* 80174054 00170FB4 80 06 00 00 */ lwz r0, 0(r6) -/* 80174058 00170FB8 90 05 00 00 */ stw r0, 0(r5) -/* 8017405C 00170FBC C0 06 00 04 */ lfs f0, 4(r6) -/* 80174060 00170FC0 D0 05 00 04 */ stfs f0, 4(r5) -/* 80174064 00170FC4 80 06 00 08 */ lwz r0, 8(r6) -/* 80174068 00170FC8 90 05 00 08 */ stw r0, 8(r5) -/* 8017406C 00170FCC 80 06 00 0C */ lwz r0, 0xc(r6) -/* 80174070 00170FD0 90 05 00 0C */ stw r0, 0xc(r5) -/* 80174074 00170FD4 80 06 00 10 */ lwz r0, 0x10(r6) -/* 80174078 00170FD8 90 05 00 10 */ stw r0, 0x10(r5) -/* 8017407C 00170FDC C0 06 00 14 */ lfs f0, 0x14(r6) -/* 80174080 00170FE0 D0 05 00 14 */ stfs f0, 0x14(r5) -/* 80174084 00170FE4 C0 06 00 18 */ lfs f0, 0x18(r6) -/* 80174088 00170FE8 D0 05 00 18 */ stfs f0, 0x18(r5) -lbl_8017408C: -/* 8017408C 00170FEC 38 A5 00 1C */ addi r5, r5, 0x1c -/* 80174090 00170FF0 38 C6 00 1C */ addi r6, r6, 0x1c -/* 80174094 00170FF4 42 00 FF B8 */ bdnz lbl_8017404C - -.global sub_80174098 -sub_80174098: -/* 80174098 00170FF8 4E 80 00 20 */ blr - -.global StopScan__12CScanDisplayFv -StopScan__12CScanDisplayFv: -/* 8017409C 00170FFC 80 03 00 0C */ lwz r0, 0xc(r3) -/* 801740A0 00171000 2C 00 00 04 */ cmpwi r0, 4 -/* 801740A4 00171004 4D 82 00 20 */ beqlr -/* 801740A8 00171008 4C 80 00 20 */ bgelr -/* 801740AC 0017100C 2C 00 00 00 */ cmpwi r0, 0 -/* 801740B0 00171010 4D 82 00 20 */ beqlr -/* 801740B4 00171014 40 80 00 0C */ bge lbl_801740C0 - -.global sub_801740b8 -sub_801740b8: -/* 801740B8 00171018 4E 80 00 20 */ blr - -.global sub_801740bc -sub_801740bc: -/* 801740BC 0017101C 4E 80 00 20 */ blr -lbl_801740C0: -/* 801740C0 00171020 38 00 00 04 */ li r0, 4 -/* 801740C4 00171024 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) -/* 801740C8 00171028 90 03 00 0C */ stw r0, 0xc(r3) -/* 801740CC 0017102C D0 03 00 E8 */ stfs f0, 0xe8(r3) -/* 801740D0 00171030 D0 03 01 14 */ stfs f0, 0x114(r3) -/* 801740D4 00171034 D0 03 01 40 */ stfs f0, 0x140(r3) -/* 801740D8 00171038 D0 03 01 6C */ stfs f0, 0x16c(r3) -/* 801740DC 0017103C 4E 80 00 20 */ blr - -.global StartScan__12CScanDisplayF9TUniqueIdRC20CScannableObjectInfoP12CGuiTextPaneP10CGuiWidgetf -StartScan__12CScanDisplayF9TUniqueIdRC20CScannableObjectInfoP12CGuiTextPaneP10CGuiWidgetf: -/* 801740E0 00171040 94 21 FF 50 */ stwu r1, -0xb0(r1) -/* 801740E4 00171044 7C 08 02 A6 */ mflr r0 -/* 801740E8 00171048 90 01 00 B4 */ stw r0, 0xb4(r1) -/* 801740EC 0017104C DB E1 00 A0 */ stfd f31, 0xa0(r1) -/* 801740F0 00171050 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 -/* 801740F4 00171054 DB C1 00 90 */ stfd f30, 0x90(r1) -/* 801740F8 00171058 F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0 -/* 801740FC 0017105C DB A1 00 80 */ stfd f29, 0x80(r1) -/* 80174100 00171060 F3 A1 00 88 */ psq_st f29, 136(r1), 0, qr0 -/* 80174104 00171064 BF 21 00 64 */ stmw r25, 0x64(r1) -/* 80174108 00171068 FF A0 08 90 */ fmr f29, f1 -/* 8017410C 0017106C C0 05 00 08 */ lfs f0, 8(r5) -/* 80174110 00171070 7C 7E 1B 78 */ mr r30, r3 -/* 80174114 00171074 7C D9 33 78 */ mr r25, r6 -/* 80174118 00171078 7C FF 3B 78 */ mr r31, r7 -/* 8017411C 0017107C 7D 1D 43 78 */ mr r29, r8 -/* 80174120 00171080 FC 1D 00 40 */ fcmpo cr0, f29, f0 -/* 80174124 00171084 7D 3C 4B 78 */ mr r28, r9 -/* 80174128 00171088 7D 5B 53 78 */ mr r27, r10 -/* 8017412C 0017108C 83 41 00 B8 */ lwz r26, 0xb8(r1) -/* 80174130 00171090 4C 41 13 82 */ cror 2, 1, 2 -/* 80174134 00171094 7C 00 00 26 */ mfcr r0 -/* 80174138 00171098 38 7E 00 14 */ addi r3, r30, 0x14 -/* 8017413C 0017109C 54 00 1F FE */ rlwinm r0, r0, 3, 0x1f, 0x1f -/* 80174140 001710A0 98 1E 01 B4 */ stb r0, 0x1b4(r30) -/* 80174144 001710A4 A0 04 00 00 */ lhz r0, 0(r4) -/* 80174148 001710A8 7C A4 2B 78 */ mr r4, r5 -/* 8017414C 001710AC B0 1E 00 10 */ sth r0, 0x10(r30) -/* 80174150 001710B0 48 00 03 C5 */ bl sub_80174514 -/* 80174154 001710B4 38 60 00 01 */ li r3, 1 -/* 80174158 001710B8 38 00 00 00 */ li r0, 0 -/* 8017415C 001710BC 90 7E 00 0C */ stw r3, 0xc(r30) -/* 80174160 001710C0 38 80 00 01 */ li r4, 1 -/* 80174164 001710C4 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) -/* 80174168 001710C8 38 A0 00 01 */ li r5, 1 -/* 8017416C 001710CC 90 1E 01 AC */ stw r0, 0x1ac(r30) -/* 80174170 001710D0 D0 1E 01 A4 */ stfs f0, 0x1a4(r30) -/* 80174174 001710D4 93 3E 00 A8 */ stw r25, 0xa8(r30) -/* 80174178 001710D8 93 FE 00 AC */ stw r31, 0xac(r30) -/* 8017417C 001710DC 93 BE 00 A4 */ stw r29, 0xa4(r30) -/* 80174180 001710E0 93 9E 00 B0 */ stw r28, 0xb0(r30) -/* 80174184 001710E4 93 7E 00 B4 */ stw r27, 0xb4(r30) -/* 80174188 001710E8 93 5E 00 B8 */ stw r26, 0xb8(r30) -/* 8017418C 001710EC 80 7E 00 A4 */ lwz r3, 0xa4(r30) -/* 80174190 001710F0 48 15 65 59 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode -/* 80174194 001710F4 48 1D 5E 19 */ bl White__6CColorFv -/* 80174198 001710F8 C3 E2 A1 10 */ lfs f31, lbl_805ABE30@sda21(r2) -/* 8017419C 001710FC F3 E1 A0 09 */ psq_st f31, 9(r1), 1, qr2 -/* 801741A0 00171100 38 81 00 14 */ addi r4, r1, 0x14 -/* 801741A4 00171104 80 63 00 00 */ lwz r3, 0(r3) -/* 801741A8 00171108 88 01 00 09 */ lbz r0, 9(r1) -/* 801741AC 0017110C 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17 -/* 801741B0 00171110 90 01 00 14 */ stw r0, 0x14(r1) -/* 801741B4 00171114 80 7E 00 A4 */ lwz r3, 0xa4(r30) -/* 801741B8 00171118 48 15 66 B5 */ bl SetColor__10CGuiWidgetFRC6CColor -/* 801741BC 0017111C 3B 80 00 00 */ li r28, 0 -/* 801741C0 00171120 3B FE 01 74 */ addi r31, r30, 0x174 -lbl_801741C4: -/* 801741C4 00171124 7F 83 E3 78 */ mr r3, r28 -/* 801741C8 00171128 4B FF 5D A9 */ bl GetImagePaneName__16CPauseScreenBaseFUi -/* 801741CC 0017112C 7C 64 1B 78 */ mr r4, r3 -/* 801741D0 00171130 38 61 00 3C */ addi r3, r1, 0x3c -/* 801741D4 00171134 38 C1 00 0C */ addi r6, r1, 0xc -/* 801741D8 00171138 38 A0 FF FF */ li r5, -1 -/* 801741DC 0017113C 48 1C 9F B9 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" -/* 801741E0 00171140 80 7E 00 A0 */ lwz r3, 0xa0(r30) -/* 801741E4 00171144 38 81 00 3C */ addi r4, r1, 0x3c -/* 801741E8 00171148 48 14 DF ED */ bl "FindWidget__9CGuiFrameCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 801741EC 0017114C C3 C2 A1 10 */ lfs f30, lbl_805ABE30@sda21(r2) -/* 801741F0 00171150 7C 7D 1B 78 */ mr r29, r3 -/* 801741F4 00171154 80 AD A1 3C */ lwz r5, gpTweakGuiColors@sda21(r13) -/* 801741F8 00171158 F3 C1 A0 08 */ psq_st f30, 8(r1), 1, qr2 -/* 801741FC 0017115C 38 81 00 10 */ addi r4, r1, 0x10 -/* 80174200 00171160 80 A5 01 74 */ lwz r5, 0x174(r5) -/* 80174204 00171164 88 01 00 08 */ lbz r0, 8(r1) -/* 80174208 00171168 50 A0 00 2E */ rlwimi r0, r5, 0, 0, 0x17 -/* 8017420C 0017116C 90 01 00 10 */ stw r0, 0x10(r1) -/* 80174210 00171170 48 15 66 5D */ bl SetColor__10CGuiWidgetFRC6CColor -/* 80174214 00171174 80 AD A0 64 */ lwz r5, gpSimplePool@sda21(r13) -/* 80174218 00171178 7F A3 EB 78 */ mr r3, r29 -/* 8017421C 0017117C 38 80 FF FF */ li r4, -1 -/* 80174220 00171180 48 15 7C AD */ bl SetTextureID0__13CAuiImagePaneFUib -/* 80174224 00171184 C0 22 A1 10 */ lfs f1, lbl_805ABE30@sda21(r2) -/* 80174228 00171188 7F A3 EB 78 */ mr r3, r29 -/* 8017422C 0017118C 38 8D A8 98 */ addi r4, r13, lbl_805A9458@sda21 -/* 80174230 00171190 FC 40 08 90 */ fmr f2, f1 -/* 80174234 00171194 48 15 8C 75 */ bl SetAnimationParms__13CAuiImagePaneFRC9CVector2fff -/* 80174238 00171198 80 1E 00 34 */ lwz r0, 0x34(r30) -/* 8017423C 0017119C 7C 1C 00 00 */ cmpw r28, r0 -/* 80174240 001711A0 40 82 00 0C */ bne lbl_8017424C -/* 80174244 001711A4 38 00 00 00 */ li r0, 0 -/* 80174248 001711A8 48 00 00 44 */ b lbl_8017428C -lbl_8017424C: -/* 8017424C 001711AC 80 1E 00 50 */ lwz r0, 0x50(r30) -/* 80174250 001711B0 7C 1C 00 00 */ cmpw r28, r0 -/* 80174254 001711B4 40 82 00 0C */ bne lbl_80174260 -/* 80174258 001711B8 38 00 00 01 */ li r0, 1 -/* 8017425C 001711BC 48 00 00 30 */ b lbl_8017428C -lbl_80174260: -/* 80174260 001711C0 80 1E 00 6C */ lwz r0, 0x6c(r30) -/* 80174264 001711C4 7C 1C 00 00 */ cmpw r28, r0 -/* 80174268 001711C8 40 82 00 0C */ bne lbl_80174274 -/* 8017426C 001711CC 38 00 00 02 */ li r0, 2 -/* 80174270 001711D0 48 00 00 1C */ b lbl_8017428C -lbl_80174274: -/* 80174274 001711D4 80 1E 00 88 */ lwz r0, 0x88(r30) -/* 80174278 001711D8 7C 1C 00 00 */ cmpw r28, r0 -/* 8017427C 001711DC 40 82 00 0C */ bne lbl_80174288 -/* 80174280 001711E0 38 00 00 03 */ li r0, 3 -/* 80174284 001711E4 48 00 00 08 */ b lbl_8017428C -lbl_80174288: -/* 80174288 001711E8 38 00 FF FF */ li r0, -1 -lbl_8017428C: -/* 8017428C 001711EC 2C 00 00 00 */ cmpwi r0, 0 -/* 80174290 001711F0 41 80 00 10 */ blt lbl_801742A0 -/* 80174294 001711F4 54 03 18 38 */ slwi r3, r0, 3 -/* 80174298 001711F8 38 03 00 04 */ addi r0, r3, 4 -/* 8017429C 001711FC 7F BF 01 2E */ stwx r29, r31, r0 -lbl_801742A0: -/* 801742A0 00171200 38 61 00 3C */ addi r3, r1, 0x3c -/* 801742A4 00171204 48 1C 98 3D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 801742A8 00171208 3B 9C 00 01 */ addi r28, r28, 1 -/* 801742AC 0017120C 2C 1C 00 14 */ cmpwi r28, 0x14 -/* 801742B0 00171210 41 80 FF 14 */ blt lbl_801741C4 -/* 801742B4 00171214 3B 60 00 00 */ li r27, 0 -/* 801742B8 00171218 3B 80 00 00 */ li r28, 0 -/* 801742BC 0017121C 48 00 00 C8 */ b lbl_80174384 -lbl_801742C0: -/* 801742C0 00171220 83 5F 00 04 */ lwz r26, 4(r31) -/* 801742C4 00171224 28 1A 00 00 */ cmplwi r26, 0 -/* 801742C8 00171228 41 82 00 B0 */ beq lbl_80174378 -/* 801742CC 0017122C 7F BE E2 14 */ add r29, r30, r28 -/* 801742D0 00171230 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) -/* 801742D4 00171234 C3 DD 00 40 */ lfs f30, 0x40(r29) -/* 801742D8 00171238 FC 1E 00 40 */ fcmpo cr0, f30, f0 -/* 801742DC 0017123C 40 81 00 58 */ ble lbl_80174334 -/* 801742E0 00171240 80 BD 00 38 */ lwz r5, 0x38(r29) -/* 801742E4 00171244 3C 80 43 30 */ lis r4, 0x4330 -/* 801742E8 00171248 80 1D 00 3C */ lwz r0, 0x3c(r29) -/* 801742EC 0017124C 38 61 00 28 */ addi r3, r1, 0x28 -/* 801742F0 00171250 6C A5 80 00 */ xoris r5, r5, 0x8000 -/* 801742F4 00171254 90 81 00 50 */ stw r4, 0x50(r1) -/* 801742F8 00171258 6C 00 80 00 */ xoris r0, r0, 0x8000 -/* 801742FC 0017125C C8 42 A1 38 */ lfd f2, lbl_805ABE58@sda21(r2) -/* 80174300 00171260 90 A1 00 54 */ stw r5, 0x54(r1) -/* 80174304 00171264 C8 01 00 50 */ lfd f0, 0x50(r1) -/* 80174308 00171268 90 01 00 5C */ stw r0, 0x5c(r1) -/* 8017430C 0017126C EC 20 10 28 */ fsubs f1, f0, f2 -/* 80174310 00171270 90 81 00 58 */ stw r4, 0x58(r1) -/* 80174314 00171274 C8 01 00 58 */ lfd f0, 0x58(r1) -/* 80174318 00171278 EC 40 10 28 */ fsubs f2, f0, f2 -/* 8017431C 0017127C 48 19 FE E5 */ bl __ct__9CVector2fFff -/* 80174320 00171280 FC 20 F0 90 */ fmr f1, f30 -/* 80174324 00171284 7C 64 1B 78 */ mr r4, r3 -/* 80174328 00171288 C0 5D 00 44 */ lfs f2, 0x44(r29) -/* 8017432C 0017128C 7F 43 D3 78 */ mr r3, r26 -/* 80174330 00171290 48 15 8B 79 */ bl SetAnimationParms__13CAuiImagePaneFRC9CVector2fff -lbl_80174334: -/* 80174334 00171294 80 9D 00 2C */ lwz r4, 0x2c(r29) -/* 80174338 00171298 7F 43 D3 78 */ mr r3, r26 -/* 8017433C 0017129C 80 AD A0 64 */ lwz r5, gpSimplePool@sda21(r13) -/* 80174340 001712A0 48 15 7B 8D */ bl SetTextureID0__13CAuiImagePaneFUib -/* 80174344 001712A4 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) -/* 80174348 001712A8 7F C3 F3 78 */ mr r3, r30 -/* 8017434C 001712AC 7F 64 DB 78 */ mr r4, r27 -/* 80174350 001712B0 D0 1A 01 50 */ stfs f0, 0x150(r26) -/* 80174354 001712B4 4B FF E7 E1 */ bl GetDownloadStartTime__12CScanDisplayFi -/* 80174358 001712B8 FC 1D 08 40 */ fcmpo cr0, f29, f1 -/* 8017435C 001712BC 4C 41 13 82 */ cror 2, 1, 2 -/* 80174360 001712C0 40 82 00 10 */ bne lbl_80174370 -/* 80174364 001712C4 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) -/* 80174368 001712C8 D0 1F 00 00 */ stfs f0, 0(r31) -/* 8017436C 001712CC 48 00 00 0C */ b lbl_80174378 -lbl_80174370: -/* 80174370 001712D0 C0 02 A1 40 */ lfs f0, lbl_805ABE60@sda21(r2) -/* 80174374 001712D4 D0 1F 00 00 */ stfs f0, 0(r31) -lbl_80174378: -/* 80174378 001712D8 3B FF 00 08 */ addi r31, r31, 8 -/* 8017437C 001712DC 3B 9C 00 1C */ addi r28, r28, 0x1c -/* 80174380 001712E0 3B 7B 00 01 */ addi r27, r27, 1 -lbl_80174384: -/* 80174384 001712E4 80 1E 01 70 */ lwz r0, 0x170(r30) -/* 80174388 001712E8 7C 1B 00 00 */ cmpw r27, r0 -/* 8017438C 001712EC 41 80 FF 34 */ blt lbl_801742C0 -/* 80174390 001712F0 80 9E 00 18 */ lwz r4, 0x18(r30) -/* 80174394 001712F4 3C 04 00 01 */ addis r0, r4, 1 -/* 80174398 001712F8 28 00 FF FF */ cmplwi r0, 0xffff -/* 8017439C 001712FC 41 82 00 B0 */ beq lbl_8017444C -/* 801743A0 00171300 3C 60 53 54 */ lis r3, 0x53545247@ha -/* 801743A4 00171304 90 81 00 24 */ stw r4, 0x24(r1) -/* 801743A8 00171308 38 03 52 47 */ addi r0, r3, 0x53545247@l -/* 801743AC 0017130C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) -/* 801743B0 00171310 90 01 00 20 */ stw r0, 0x20(r1) -/* 801743B4 00171314 38 61 00 18 */ addi r3, r1, 0x18 -/* 801743B8 00171318 38 A1 00 20 */ addi r5, r1, 0x20 -/* 801743BC 0017131C 81 84 00 00 */ lwz r12, 0(r4) -/* 801743C0 00171320 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 801743C4 00171324 7D 89 03 A6 */ mtctr r12 -/* 801743C8 00171328 4E 80 04 21 */ bctrl -/* 801743CC 0017132C 38 61 00 30 */ addi r3, r1, 0x30 -/* 801743D0 00171330 38 81 00 18 */ addi r4, r1, 0x18 -/* 801743D4 00171334 48 1C CA D5 */ bl __ct__6CTokenFRC6CToken -/* 801743D8 00171338 38 00 00 00 */ li r0, 0 -/* 801743DC 0017133C 90 01 00 38 */ stw r0, 0x38(r1) -/* 801743E0 00171340 88 1E 01 A0 */ lbz r0, 0x1a0(r30) -/* 801743E4 00171344 28 00 00 00 */ cmplwi r0, 0 -/* 801743E8 00171348 40 82 00 2C */ bne lbl_80174414 -/* 801743EC 0017134C 37 FE 01 94 */ addic. r31, r30, 0x194 -/* 801743F0 00171350 41 82 00 18 */ beq lbl_80174408 -/* 801743F4 00171354 7F E3 FB 78 */ mr r3, r31 -/* 801743F8 00171358 38 81 00 30 */ addi r4, r1, 0x30 -/* 801743FC 0017135C 48 1C CA AD */ bl __ct__6CTokenFRC6CToken -/* 80174400 00171360 80 01 00 38 */ lwz r0, 0x38(r1) -/* 80174404 00171364 90 1F 00 08 */ stw r0, 8(r31) -lbl_80174408: -/* 80174408 00171368 38 00 00 01 */ li r0, 1 -/* 8017440C 0017136C 98 1E 01 A0 */ stb r0, 0x1a0(r30) -/* 80174410 00171370 48 00 00 1C */ b lbl_8017442C -lbl_80174414: -/* 80174414 00171374 3B BE 01 94 */ addi r29, r30, 0x194 -/* 80174418 00171378 38 81 00 30 */ addi r4, r1, 0x30 -/* 8017441C 0017137C 7F A3 EB 78 */ mr r3, r29 -/* 80174420 00171380 48 1C C8 A5 */ bl __as__6CTokenFRC6CToken -/* 80174424 00171384 80 01 00 38 */ lwz r0, 0x38(r1) -/* 80174428 00171388 90 1D 00 08 */ stw r0, 8(r29) -lbl_8017442C: -/* 8017442C 0017138C 38 61 00 30 */ addi r3, r1, 0x30 -/* 80174430 00171390 38 80 00 00 */ li r4, 0 -/* 80174434 00171394 48 1C CA 0D */ bl __dt__6CTokenFv -/* 80174438 00171398 38 61 00 18 */ addi r3, r1, 0x18 -/* 8017443C 0017139C 38 80 FF FF */ li r4, -1 -/* 80174440 001713A0 48 1C CA 01 */ bl __dt__6CTokenFv -/* 80174444 001713A4 38 7E 01 94 */ addi r3, r30, 0x194 -/* 80174448 001713A8 48 1C C9 3D */ bl Lock__6CTokenFv -lbl_8017444C: -/* 8017444C 001713AC 3B 9E 00 C0 */ addi r28, r30, 0xc0 -/* 80174450 001713B0 3B 40 00 00 */ li r26, 0 -/* 80174454 001713B4 3B A0 00 00 */ li r29, 0 -lbl_80174458: -/* 80174458 001713B8 7C 7E EA 14 */ add r3, r30, r29 -/* 8017445C 001713BC 80 03 00 34 */ lwz r0, 0x34(r3) -/* 80174460 001713C0 2C 00 FF FF */ cmpwi r0, -1 -/* 80174464 001713C4 41 82 00 68 */ beq lbl_801744CC -/* 80174468 001713C8 7F C3 F3 78 */ mr r3, r30 -/* 8017446C 001713CC 7F 44 D3 78 */ mr r4, r26 -/* 80174470 001713D0 4B FF E6 C5 */ bl GetDownloadStartTime__12CScanDisplayFi -/* 80174474 001713D4 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) -/* 80174478 001713D8 C0 03 02 44 */ lfs f0, 0x244(r3) -/* 8017447C 001713DC EC 01 00 28 */ fsubs f0, f1, f0 -/* 80174480 001713E0 FC 00 E8 40 */ fcmpo cr0, f0, f29 -/* 80174484 001713E4 40 80 00 18 */ bge lbl_8017449C -/* 80174488 001713E8 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) -/* 8017448C 001713EC 38 00 00 04 */ li r0, 4 -/* 80174490 001713F0 D0 1C 00 24 */ stfs f0, 0x24(r28) -/* 80174494 001713F4 90 1C 00 00 */ stw r0, 0(r28) -/* 80174498 001713F8 48 00 00 3C */ b lbl_801744D4 -lbl_8017449C: -/* 8017449C 001713FC C0 02 A1 14 */ lfs f0, lbl_805ABE34@sda21(r2) -/* 801744A0 00171400 38 00 00 01 */ li r0, 1 -/* 801744A4 00171404 C0 22 A1 44 */ lfs f1, lbl_805ABE64@sda21(r2) -/* 801744A8 00171408 7F 83 E3 78 */ mr r3, r28 -/* 801744AC 0017140C D0 1C 00 28 */ stfs f0, 0x28(r28) -/* 801744B0 00171410 38 8D A8 98 */ addi r4, r13, lbl_805A9458@sda21 -/* 801744B4 00171414 90 1C 00 00 */ stw r0, 0(r28) -/* 801744B8 00171418 48 00 04 09 */ bl StartTransitionTo__Q212CScanDisplay8CDataDotFRC9CVector2ff -/* 801744BC 0017141C C0 22 A1 44 */ lfs f1, lbl_805ABE64@sda21(r2) -/* 801744C0 00171420 7F 83 E3 78 */ mr r3, r28 -/* 801744C4 00171424 48 00 02 C1 */ bl Update__Q212CScanDisplay8CDataDotFf -/* 801744C8 00171428 48 00 00 0C */ b lbl_801744D4 -lbl_801744CC: -/* 801744CC 0017142C 38 00 00 00 */ li r0, 0 -/* 801744D0 00171430 90 1C 00 00 */ stw r0, 0(r28) -lbl_801744D4: -/* 801744D4 00171434 3B 5A 00 01 */ addi r26, r26, 1 -/* 801744D8 00171438 3B BD 00 1C */ addi r29, r29, 0x1c -/* 801744DC 0017143C 2C 1A 00 04 */ cmpwi r26, 4 -/* 801744E0 00171440 3B 9C 00 2C */ addi r28, r28, 0x2c -/* 801744E4 00171444 41 80 FF 74 */ blt lbl_80174458 -/* 801744E8 00171448 E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 -/* 801744EC 0017144C CB E1 00 A0 */ lfd f31, 0xa0(r1) -/* 801744F0 00171450 E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0 -/* 801744F4 00171454 CB C1 00 90 */ lfd f30, 0x90(r1) -/* 801744F8 00171458 E3 A1 00 88 */ psq_l f29, 136(r1), 0, qr0 -/* 801744FC 0017145C CB A1 00 80 */ lfd f29, 0x80(r1) -/* 80174500 00171460 BB 21 00 64 */ lmw r25, 0x64(r1) -/* 80174504 00171464 80 01 00 B4 */ lwz r0, 0xb4(r1) -/* 80174508 00171468 7C 08 03 A6 */ mtlr r0 -/* 8017450C 0017146C 38 21 00 B0 */ addi r1, r1, 0xb0 -/* 80174510 00171470 4E 80 00 20 */ blr - -.global sub_80174514 -sub_80174514: -/* 80174514 00171474 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80174518 00171478 7C 08 02 A6 */ mflr r0 -/* 8017451C 0017147C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80174520 00171480 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80174524 00171484 7C 7F 1B 78 */ mr r31, r3 -/* 80174528 00171488 4B FF F9 35 */ bl sub_80173e5c -/* 8017452C 0017148C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80174530 00171490 7F E3 FB 78 */ mr r3, r31 -/* 80174534 00171494 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80174538 00171498 7C 08 03 A6 */ mtlr r0 -/* 8017453C 0017149C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80174540 001714A0 4E 80 00 20 */ blr - -.global __ct__12CScanDisplayFv -__ct__12CScanDisplayFv: -/* 80174544 001714A4 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 80174548 001714A8 7C 08 02 A6 */ mflr r0 -/* 8017454C 001714AC 3C A0 80 3D */ lis r5, lbl_803D0620@ha -/* 80174550 001714B0 90 01 00 54 */ stw r0, 0x54(r1) -/* 80174554 001714B4 38 A5 06 20 */ addi r5, r5, lbl_803D0620@l -/* 80174558 001714B8 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 8017455C 001714BC 7C 9F 23 78 */ mr r31, r4 -/* 80174560 001714C0 93 C1 00 48 */ stw r30, 0x48(r1) -/* 80174564 001714C4 7C 7E 1B 78 */ mr r30, r3 -/* 80174568 001714C8 38 61 00 08 */ addi r3, r1, 8 -/* 8017456C 001714CC 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) -/* 80174570 001714D0 81 84 00 00 */ lwz r12, 0(r4) -/* 80174574 001714D4 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 80174578 001714D8 7D 89 03 A6 */ mtctr r12 -/* 8017457C 001714DC 4E 80 04 21 */ bctrl -/* 80174580 001714E0 7F C3 F3 78 */ mr r3, r30 -/* 80174584 001714E4 38 81 00 08 */ addi r4, r1, 8 -/* 80174588 001714E8 48 1C C9 21 */ bl __ct__6CTokenFRC6CToken -/* 8017458C 001714EC 38 00 00 00 */ li r0, 0 -/* 80174590 001714F0 38 61 00 08 */ addi r3, r1, 8 -/* 80174594 001714F4 90 1E 00 08 */ stw r0, 8(r30) -/* 80174598 001714F8 38 80 FF FF */ li r4, -1 -/* 8017459C 001714FC 48 1C C8 A5 */ bl __dt__6CTokenFv -/* 801745A0 00171500 38 80 00 00 */ li r4, 0 -/* 801745A4 00171504 38 61 00 10 */ addi r3, r1, 0x10 -/* 801745A8 00171508 90 9E 00 0C */ stw r4, 0xc(r30) -/* 801745AC 0017150C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 801745B0 00171510 B0 1E 00 10 */ sth r0, 0x10(r30) -/* 801745B4 00171514 98 9E 00 9C */ stb r4, 0x9c(r30) -/* 801745B8 00171518 93 FE 00 A0 */ stw r31, 0xa0(r30) -/* 801745BC 0017151C 90 9E 00 A4 */ stw r4, 0xa4(r30) -/* 801745C0 00171520 90 9E 00 A8 */ stw r4, 0xa8(r30) -/* 801745C4 00171524 90 9E 00 AC */ stw r4, 0xac(r30) -/* 801745C8 00171528 90 9E 00 B0 */ stw r4, 0xb0(r30) -/* 801745CC 0017152C 90 9E 00 B4 */ stw r4, 0xb4(r30) -/* 801745D0 00171530 90 9E 00 B8 */ stw r4, 0xb8(r30) -/* 801745D4 00171534 48 00 04 99 */ bl __ct__Q212CScanDisplay8CDataDotFv -/* 801745D8 00171538 38 60 00 04 */ li r3, 4 -/* 801745DC 0017153C 38 00 00 02 */ li r0, 2 -/* 801745E0 00171540 90 7E 00 BC */ stw r3, 0xbc(r30) -/* 801745E4 00171544 38 9E 00 C0 */ addi r4, r30, 0xc0 -/* 801745E8 00171548 38 60 00 00 */ li r3, 0 -/* 801745EC 0017154C 7C 09 03 A6 */ mtctr r0 -lbl_801745F0: -/* 801745F0 00171550 28 04 00 00 */ cmplwi r4, 0 -/* 801745F4 00171554 41 82 00 5C */ beq lbl_80174650 -/* 801745F8 00171558 80 01 00 10 */ lwz r0, 0x10(r1) -/* 801745FC 0017155C 90 04 00 00 */ stw r0, 0(r4) -/* 80174600 00171560 C0 01 00 14 */ lfs f0, 0x14(r1) -/* 80174604 00171564 D0 04 00 04 */ stfs f0, 4(r4) -/* 80174608 00171568 C0 01 00 18 */ lfs f0, 0x18(r1) -/* 8017460C 0017156C D0 04 00 08 */ stfs f0, 8(r4) -/* 80174610 00171570 C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 80174614 00171574 D0 04 00 0C */ stfs f0, 0xc(r4) -/* 80174618 00171578 C0 01 00 20 */ lfs f0, 0x20(r1) -/* 8017461C 0017157C D0 04 00 10 */ stfs f0, 0x10(r4) -/* 80174620 00171580 C0 01 00 24 */ lfs f0, 0x24(r1) -/* 80174624 00171584 D0 04 00 14 */ stfs f0, 0x14(r4) -/* 80174628 00171588 C0 01 00 28 */ lfs f0, 0x28(r1) -/* 8017462C 0017158C D0 04 00 18 */ stfs f0, 0x18(r4) -/* 80174630 00171590 C0 01 00 2C */ lfs f0, 0x2c(r1) -/* 80174634 00171594 D0 04 00 1C */ stfs f0, 0x1c(r4) -/* 80174638 00171598 C0 01 00 30 */ lfs f0, 0x30(r1) -/* 8017463C 0017159C D0 04 00 20 */ stfs f0, 0x20(r4) -/* 80174640 001715A0 C0 01 00 34 */ lfs f0, 0x34(r1) -/* 80174644 001715A4 D0 04 00 24 */ stfs f0, 0x24(r4) -/* 80174648 001715A8 C0 01 00 38 */ lfs f0, 0x38(r1) -/* 8017464C 001715AC D0 04 00 28 */ stfs f0, 0x28(r4) -lbl_80174650: -/* 80174650 001715B0 34 84 00 2C */ addic. r4, r4, 0x2c -/* 80174654 001715B4 41 82 00 5C */ beq lbl_801746B0 -/* 80174658 001715B8 80 01 00 10 */ lwz r0, 0x10(r1) -/* 8017465C 001715BC 90 04 00 00 */ stw r0, 0(r4) -/* 80174660 001715C0 C0 01 00 14 */ lfs f0, 0x14(r1) -/* 80174664 001715C4 D0 04 00 04 */ stfs f0, 4(r4) -/* 80174668 001715C8 C0 01 00 18 */ lfs f0, 0x18(r1) -/* 8017466C 001715CC D0 04 00 08 */ stfs f0, 8(r4) -/* 80174670 001715D0 C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 80174674 001715D4 D0 04 00 0C */ stfs f0, 0xc(r4) -/* 80174678 001715D8 C0 01 00 20 */ lfs f0, 0x20(r1) -/* 8017467C 001715DC D0 04 00 10 */ stfs f0, 0x10(r4) -/* 80174680 001715E0 C0 01 00 24 */ lfs f0, 0x24(r1) -/* 80174684 001715E4 D0 04 00 14 */ stfs f0, 0x14(r4) -/* 80174688 001715E8 C0 01 00 28 */ lfs f0, 0x28(r1) -/* 8017468C 001715EC D0 04 00 18 */ stfs f0, 0x18(r4) -/* 80174690 001715F0 C0 01 00 2C */ lfs f0, 0x2c(r1) -/* 80174694 001715F4 D0 04 00 1C */ stfs f0, 0x1c(r4) -/* 80174698 001715F8 C0 01 00 30 */ lfs f0, 0x30(r1) -/* 8017469C 001715FC D0 04 00 20 */ stfs f0, 0x20(r4) -/* 801746A0 00171600 C0 01 00 34 */ lfs f0, 0x34(r1) -/* 801746A4 00171604 D0 04 00 24 */ stfs f0, 0x24(r4) -/* 801746A8 00171608 C0 01 00 38 */ lfs f0, 0x38(r1) -/* 801746AC 0017160C D0 04 00 28 */ stfs f0, 0x28(r4) -lbl_801746B0: -/* 801746B0 00171610 38 63 00 01 */ addi r3, r3, 1 -/* 801746B4 00171614 38 84 00 2C */ addi r4, r4, 0x2c -/* 801746B8 00171618 42 00 FF 38 */ bdnz lbl_801745F0 -/* 801746BC 0017161C 38 00 00 04 */ li r0, 4 -/* 801746C0 00171620 34 7E 01 74 */ addic. r3, r30, 0x174 -/* 801746C4 00171624 90 1E 01 70 */ stw r0, 0x170(r30) -/* 801746C8 00171628 38 00 00 00 */ li r0, 0 -/* 801746CC 0017162C C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) -/* 801746D0 00171630 41 82 00 0C */ beq lbl_801746DC -/* 801746D4 00171634 D0 03 00 00 */ stfs f0, 0(r3) -/* 801746D8 00171638 90 03 00 04 */ stw r0, 4(r3) -lbl_801746DC: -/* 801746DC 0017163C 34 63 00 08 */ addic. r3, r3, 8 -/* 801746E0 00171640 41 82 00 0C */ beq lbl_801746EC -/* 801746E4 00171644 D0 03 00 00 */ stfs f0, 0(r3) -/* 801746E8 00171648 90 03 00 04 */ stw r0, 4(r3) -lbl_801746EC: -/* 801746EC 0017164C 34 63 00 08 */ addic. r3, r3, 8 -/* 801746F0 00171650 41 82 00 0C */ beq lbl_801746FC -/* 801746F4 00171654 D0 03 00 00 */ stfs f0, 0(r3) -/* 801746F8 00171658 90 03 00 04 */ stw r0, 4(r3) -lbl_801746FC: -/* 801746FC 0017165C 34 63 00 08 */ addic. r3, r3, 8 -/* 80174700 00171660 41 82 00 0C */ beq lbl_8017470C -/* 80174704 00171664 D0 03 00 00 */ stfs f0, 0(r3) -/* 80174708 00171668 90 03 00 04 */ stw r0, 4(r3) -lbl_8017470C: -/* 8017470C 0017166C 38 00 00 00 */ li r0, 0 -/* 80174710 00171670 C0 22 A1 10 */ lfs f1, lbl_805ABE30@sda21(r2) -/* 80174714 00171674 98 1E 01 A0 */ stb r0, 0x1a0(r30) -/* 80174718 00171678 7F C3 F3 78 */ mr r3, r30 -/* 8017471C 0017167C C0 02 A1 14 */ lfs f0, lbl_805ABE34@sda21(r2) -/* 80174720 00171680 D0 3E 01 A4 */ stfs f1, 0x1a4(r30) -/* 80174724 00171684 D0 3E 01 A8 */ stfs f1, 0x1a8(r30) -/* 80174728 00171688 90 1E 01 AC */ stw r0, 0x1ac(r30) -/* 8017472C 0017168C D0 1E 01 B0 */ stfs f0, 0x1b0(r30) -/* 80174730 00171690 98 1E 01 B4 */ stb r0, 0x1b4(r30) -/* 80174734 00171694 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 80174738 00171698 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 8017473C 0017169C 80 01 00 54 */ lwz r0, 0x54(r1) -/* 80174740 001716A0 7C 08 03 A6 */ mtlr r0 -/* 80174744 001716A4 38 21 00 50 */ addi r1, r1, 0x50 -/* 80174748 001716A8 4E 80 00 20 */ blr - -.global SetDestPosition__Q212CScanDisplay8CDataDotFRC9CVector2f -SetDestPosition__Q212CScanDisplay8CDataDotFRC9CVector2f: -/* 8017474C 001716AC C0 23 00 20 */ lfs f1, 0x20(r3) -/* 80174750 001716B0 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) -/* 80174754 001716B4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80174758 001716B8 40 81 00 18 */ ble lbl_80174770 -/* 8017475C 001716BC C0 04 00 00 */ lfs f0, 0(r4) -/* 80174760 001716C0 D0 03 00 14 */ stfs f0, 0x14(r3) -/* 80174764 001716C4 C0 04 00 04 */ lfs f0, 4(r4) -/* 80174768 001716C8 D0 03 00 18 */ stfs f0, 0x18(r3) -/* 8017476C 001716CC 4E 80 00 20 */ blr -lbl_80174770: -/* 80174770 001716D0 C0 04 00 00 */ lfs f0, 0(r4) -/* 80174774 001716D4 D0 03 00 0C */ stfs f0, 0xc(r3) -/* 80174778 001716D8 C0 04 00 04 */ lfs f0, 4(r4) -/* 8017477C 001716DC D0 03 00 10 */ stfs f0, 0x10(r3) -/* 80174780 001716E0 4E 80 00 20 */ blr - -.global Update__Q212CScanDisplay8CDataDotFf -Update__Q212CScanDisplay8CDataDotFf: -/* 80174784 001716E4 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 80174788 001716E8 7C 08 02 A6 */ mflr r0 -/* 8017478C 001716EC 90 01 00 44 */ stw r0, 0x44(r1) -/* 80174790 001716F0 DB E1 00 30 */ stfd f31, 0x30(r1) -/* 80174794 001716F4 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 -/* 80174798 001716F8 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8017479C 001716FC 7C 7F 1B 78 */ mr r31, r3 -/* 801747A0 00171700 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) -/* 801747A4 00171704 C0 43 00 20 */ lfs f2, 0x20(r3) -/* 801747A8 00171708 FF E0 08 90 */ fmr f31, f1 -/* 801747AC 0017170C FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 801747B0 00171710 40 81 00 84 */ ble lbl_80174834 -/* 801747B4 00171714 EC 22 F8 28 */ fsubs f1, f2, f31 -/* 801747B8 00171718 C0 0D 8E 20 */ lfs f0, lbl_805A79E0@sda21(r13) -/* 801747BC 0017171C FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 801747C0 00171720 D0 21 00 10 */ stfs f1, 0x10(r1) -/* 801747C4 00171724 40 80 00 0C */ bge lbl_801747D0 -/* 801747C8 00171728 38 61 00 10 */ addi r3, r1, 0x10 -/* 801747CC 0017172C 48 00 00 08 */ b lbl_801747D4 -lbl_801747D0: -/* 801747D0 00171730 38 6D 8E 20 */ addi r3, r13, lbl_805A79E0@sda21 -lbl_801747D4: -/* 801747D4 00171734 C0 03 00 00 */ lfs f0, 0(r3) -/* 801747D8 00171738 C0 A2 A1 10 */ lfs f5, lbl_805ABE30@sda21(r2) -/* 801747DC 0017173C D0 1F 00 20 */ stfs f0, 0x20(r31) -/* 801747E0 00171740 C0 3F 00 1C */ lfs f1, 0x1c(r31) -/* 801747E4 00171744 FC 01 28 40 */ fcmpo cr0, f1, f5 -/* 801747E8 00171748 40 81 00 0C */ ble lbl_801747F4 -/* 801747EC 0017174C C0 1F 00 20 */ lfs f0, 0x20(r31) -/* 801747F0 00171750 EC A0 08 24 */ fdivs f5, f0, f1 -lbl_801747F4: -/* 801747F4 00171754 C0 42 A1 14 */ lfs f2, lbl_805ABE34@sda21(r2) -/* 801747F8 00171758 38 61 00 14 */ addi r3, r1, 0x14 -/* 801747FC 0017175C C0 3F 00 04 */ lfs f1, 4(r31) -/* 80174800 00171760 C0 1F 00 08 */ lfs f0, 8(r31) -/* 80174804 00171764 EC 82 28 28 */ fsubs f4, f2, f5 -/* 80174808 00171768 EC 21 01 72 */ fmuls f1, f1, f5 -/* 8017480C 0017176C C0 7F 00 14 */ lfs f3, 0x14(r31) -/* 80174810 00171770 EC 00 01 72 */ fmuls f0, f0, f5 -/* 80174814 00171774 C0 5F 00 18 */ lfs f2, 0x18(r31) -/* 80174818 00171778 EC 23 09 3A */ fmadds f1, f3, f4, f1 -/* 8017481C 0017177C EC 42 01 3A */ fmadds f2, f2, f4, f0 -/* 80174820 00171780 48 19 F9 E1 */ bl __ct__9CVector2fFff -/* 80174824 00171784 C0 01 00 14 */ lfs f0, 0x14(r1) -/* 80174828 00171788 D0 1F 00 0C */ stfs f0, 0xc(r31) -/* 8017482C 0017178C C0 01 00 18 */ lfs f0, 0x18(r1) -/* 80174830 00171790 D0 1F 00 10 */ stfs f0, 0x10(r31) -lbl_80174834: -/* 80174834 00171794 C0 3F 00 24 */ lfs f1, 0x24(r31) -/* 80174838 00171798 C0 1F 00 28 */ lfs f0, 0x28(r31) -/* 8017483C 0017179C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80174840 001717A0 40 80 00 34 */ bge lbl_80174874 -/* 80174844 001717A4 C0 02 A1 20 */ lfs f0, lbl_805ABE40@sda21(r2) -/* 80174848 001717A8 EC 20 0F FA */ fmadds f1, f0, f31, f1 -/* 8017484C 001717AC D0 21 00 0C */ stfs f1, 0xc(r1) -/* 80174850 001717B0 C0 1F 00 28 */ lfs f0, 0x28(r31) -/* 80174854 001717B4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80174858 001717B8 40 80 00 0C */ bge lbl_80174864 -/* 8017485C 001717BC 38 61 00 0C */ addi r3, r1, 0xc -/* 80174860 001717C0 48 00 00 08 */ b lbl_80174868 -lbl_80174864: -/* 80174864 001717C4 38 7F 00 28 */ addi r3, r31, 0x28 -lbl_80174868: -/* 80174868 001717C8 C0 03 00 00 */ lfs f0, 0(r3) -/* 8017486C 001717CC D0 1F 00 24 */ stfs f0, 0x24(r31) -/* 80174870 001717D0 48 00 00 34 */ b lbl_801748A4 -lbl_80174874: -/* 80174874 001717D4 40 81 00 30 */ ble lbl_801748A4 -/* 80174878 001717D8 C0 02 A1 20 */ lfs f0, lbl_805ABE40@sda21(r2) -/* 8017487C 001717DC EC 20 0F FC */ fnmsubs f1, f0, f31, f1 -/* 80174880 001717E0 D0 21 00 08 */ stfs f1, 8(r1) -/* 80174884 001717E4 C0 1F 00 28 */ lfs f0, 0x28(r31) -/* 80174888 001717E8 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 8017488C 001717EC 40 80 00 0C */ bge lbl_80174898 -/* 80174890 001717F0 38 61 00 08 */ addi r3, r1, 8 -/* 80174894 001717F4 48 00 00 08 */ b lbl_8017489C -lbl_80174898: -/* 80174898 001717F8 38 7F 00 28 */ addi r3, r31, 0x28 -lbl_8017489C: -/* 8017489C 001717FC C0 03 00 00 */ lfs f0, 0(r3) -/* 801748A0 00171800 D0 1F 00 24 */ stfs f0, 0x24(r31) -lbl_801748A4: -/* 801748A4 00171804 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 -/* 801748A8 00171808 80 01 00 44 */ lwz r0, 0x44(r1) -/* 801748AC 0017180C CB E1 00 30 */ lfd f31, 0x30(r1) -/* 801748B0 00171810 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 801748B4 00171814 7C 08 03 A6 */ mtlr r0 -/* 801748B8 00171818 38 21 00 40 */ addi r1, r1, 0x40 -/* 801748BC 0017181C 4E 80 00 20 */ blr - -.global StartTransitionTo__Q212CScanDisplay8CDataDotFRC9CVector2ff -StartTransitionTo__Q212CScanDisplay8CDataDotFRC9CVector2ff: -/* 801748C0 00171820 D0 23 00 20 */ stfs f1, 0x20(r3) -/* 801748C4 00171824 D0 23 00 1C */ stfs f1, 0x1c(r3) -/* 801748C8 00171828 C0 03 00 0C */ lfs f0, 0xc(r3) -/* 801748CC 0017182C D0 03 00 04 */ stfs f0, 4(r3) -/* 801748D0 00171830 C0 03 00 10 */ lfs f0, 0x10(r3) -/* 801748D4 00171834 D0 03 00 08 */ stfs f0, 8(r3) -/* 801748D8 00171838 C0 04 00 00 */ lfs f0, 0(r4) -/* 801748DC 0017183C D0 03 00 14 */ stfs f0, 0x14(r3) -/* 801748E0 00171840 C0 04 00 04 */ lfs f0, 4(r4) -/* 801748E4 00171844 D0 03 00 18 */ stfs f0, 0x18(r3) -/* 801748E8 00171848 4E 80 00 20 */ blr - -.global Draw__Q212CScanDisplay8CDataDotCF6CColorf -Draw__Q212CScanDisplay8CDataDotCF6CColorf: -/* 801748EC 0017184C 94 21 FF 60 */ stwu r1, -0xa0(r1) -/* 801748F0 00171850 7C 08 02 A6 */ mflr r0 -/* 801748F4 00171854 90 01 00 A4 */ stw r0, 0xa4(r1) -/* 801748F8 00171858 DB E1 00 90 */ stfd f31, 0x90(r1) -/* 801748FC 0017185C F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 -/* 80174900 00171860 DB C1 00 80 */ stfd f30, 0x80(r1) -/* 80174904 00171864 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 -/* 80174908 00171868 93 E1 00 7C */ stw r31, 0x7c(r1) -/* 8017490C 0017186C 93 C1 00 78 */ stw r30, 0x78(r1) -/* 80174910 00171870 7C 7E 1B 78 */ mr r30, r3 -/* 80174914 00171874 C0 42 A1 10 */ lfs f2, lbl_805ABE30@sda21(r2) -/* 80174918 00171878 C0 03 00 24 */ lfs f0, 0x24(r3) -/* 8017491C 0017187C FF C0 08 90 */ fmr f30, f1 -/* 80174920 00171880 7C 9F 23 78 */ mr r31, r4 -/* 80174924 00171884 FC 02 00 00 */ fcmpu cr0, f2, f0 -/* 80174928 00171888 41 82 01 1C */ beq lbl_80174A44 -/* 8017492C 0017188C 80 1E 00 00 */ lwz r0, 0(r30) -/* 80174930 00171890 2C 00 00 00 */ cmpwi r0, 0 -/* 80174934 00171894 40 82 00 08 */ bne lbl_8017493C -/* 80174938 00171898 48 00 01 0C */ b lbl_80174A44 -lbl_8017493C: -/* 8017493C 0017189C C0 3E 00 0C */ lfs f1, 0xc(r30) -/* 80174940 001718A0 38 61 00 40 */ addi r3, r1, 0x40 -/* 80174944 001718A4 C0 7E 00 10 */ lfs f3, 0x10(r30) -/* 80174948 001718A8 48 19 E8 41 */ bl Translate__12CTransform4fFfff -/* 8017494C 001718AC 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) -/* 80174950 001718B0 38 81 00 40 */ addi r4, r1, 0x40 -/* 80174954 001718B4 81 83 00 00 */ lwz r12, 0(r3) -/* 80174958 001718B8 81 8C 00 30 */ lwz r12, 0x30(r12) -/* 8017495C 001718BC 7D 89 03 A6 */ mtctr r12 -/* 80174960 001718C0 4E 80 04 21 */ bctrl -/* 80174964 001718C4 38 60 00 98 */ li r3, 0x98 -/* 80174968 001718C8 48 19 6D 01 */ bl StreamBegin__9CGraphicsF13ERglPrimitive -/* 8017496C 001718CC 88 7F 00 03 */ lbz r3, 3(r31) -/* 80174970 001718D0 3C 00 43 30 */ lis r0, 0x4330 -/* 80174974 001718D4 90 01 00 70 */ stw r0, 0x70(r1) -/* 80174978 001718D8 C8 22 A1 30 */ lfd f1, lbl_805ABE50@sda21(r2) -/* 8017497C 001718DC 90 61 00 74 */ stw r3, 0x74(r1) -/* 80174980 001718E0 C0 5E 00 24 */ lfs f2, 0x24(r30) -/* 80174984 001718E4 C8 01 00 70 */ lfd f0, 0x70(r1) -/* 80174988 001718E8 EC 00 08 28 */ fsubs f0, f0, f1 -/* 8017498C 001718EC EF E2 00 32 */ fmuls f31, f2, f0 -/* 80174990 001718F0 F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 -/* 80174994 001718F4 38 61 00 0C */ addi r3, r1, 0xc -/* 80174998 001718F8 80 9F 00 00 */ lwz r4, 0(r31) -/* 8017499C 001718FC 88 01 00 08 */ lbz r0, 8(r1) -/* 801749A0 00171900 50 80 00 2E */ rlwimi r0, r4, 0, 0, 0x17 -/* 801749A4 00171904 90 01 00 0C */ stw r0, 0xc(r1) -/* 801749A8 00171908 48 19 6B A1 */ bl StreamColor__9CGraphicsFRC6CColor -/* 801749AC 0017190C C0 22 A1 10 */ lfs f1, lbl_805ABE30@sda21(r2) -/* 801749B0 00171910 C0 42 A1 14 */ lfs f2, lbl_805ABE34@sda21(r2) -/* 801749B4 00171914 48 19 6A B1 */ bl StreamTexcoord__9CGraphicsFff -/* 801749B8 00171918 FF E0 F0 50 */ fneg f31, f30 -/* 801749BC 0017191C C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) -/* 801749C0 00171920 D3 C1 00 3C */ stfs f30, 0x3c(r1) -/* 801749C4 00171924 38 61 00 34 */ addi r3, r1, 0x34 -/* 801749C8 00171928 D3 E1 00 34 */ stfs f31, 0x34(r1) -/* 801749CC 0017192C D0 01 00 38 */ stfs f0, 0x38(r1) -/* 801749D0 00171930 48 19 6B F1 */ bl StreamVertex__9CGraphicsFRC9CVector3f -/* 801749D4 00171934 C0 22 A1 10 */ lfs f1, lbl_805ABE30@sda21(r2) -/* 801749D8 00171938 FC 40 08 90 */ fmr f2, f1 -/* 801749DC 0017193C 48 19 6A 89 */ bl StreamTexcoord__9CGraphicsFff -/* 801749E0 00171940 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) -/* 801749E4 00171944 38 61 00 28 */ addi r3, r1, 0x28 -/* 801749E8 00171948 D3 E1 00 28 */ stfs f31, 0x28(r1) -/* 801749EC 0017194C D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 801749F0 00171950 D3 E1 00 30 */ stfs f31, 0x30(r1) -/* 801749F4 00171954 48 19 6B CD */ bl StreamVertex__9CGraphicsFRC9CVector3f -/* 801749F8 00171958 C0 22 A1 14 */ lfs f1, lbl_805ABE34@sda21(r2) -/* 801749FC 0017195C FC 40 08 90 */ fmr f2, f1 -/* 80174A00 00171960 48 19 6A 65 */ bl StreamTexcoord__9CGraphicsFff -/* 80174A04 00171964 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) -/* 80174A08 00171968 38 61 00 1C */ addi r3, r1, 0x1c -/* 80174A0C 0017196C D3 C1 00 1C */ stfs f30, 0x1c(r1) -/* 80174A10 00171970 D0 01 00 20 */ stfs f0, 0x20(r1) -/* 80174A14 00171974 D3 C1 00 24 */ stfs f30, 0x24(r1) -/* 80174A18 00171978 48 19 6B A9 */ bl StreamVertex__9CGraphicsFRC9CVector3f -/* 80174A1C 0017197C C0 22 A1 14 */ lfs f1, lbl_805ABE34@sda21(r2) -/* 80174A20 00171980 C0 42 A1 10 */ lfs f2, lbl_805ABE30@sda21(r2) -/* 80174A24 00171984 48 19 6A 41 */ bl StreamTexcoord__9CGraphicsFff -/* 80174A28 00171988 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) -/* 80174A2C 0017198C 38 61 00 10 */ addi r3, r1, 0x10 -/* 80174A30 00171990 D3 C1 00 10 */ stfs f30, 0x10(r1) -/* 80174A34 00171994 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 80174A38 00171998 D3 E1 00 18 */ stfs f31, 0x18(r1) -/* 80174A3C 0017199C 48 19 6B 85 */ bl StreamVertex__9CGraphicsFRC9CVector3f -/* 80174A40 001719A0 48 19 69 D1 */ bl StreamEnd__9CGraphicsFv -lbl_80174A44: -/* 80174A44 001719A4 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 -/* 80174A48 001719A8 CB E1 00 90 */ lfd f31, 0x90(r1) -/* 80174A4C 001719AC E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 -/* 80174A50 001719B0 CB C1 00 80 */ lfd f30, 0x80(r1) -/* 80174A54 001719B4 83 E1 00 7C */ lwz r31, 0x7c(r1) -/* 80174A58 001719B8 80 01 00 A4 */ lwz r0, 0xa4(r1) -/* 80174A5C 001719BC 83 C1 00 78 */ lwz r30, 0x78(r1) -/* 80174A60 001719C0 7C 08 03 A6 */ mtlr r0 -/* 80174A64 001719C4 38 21 00 A0 */ addi r1, r1, 0xa0 -/* 80174A68 001719C8 4E 80 00 20 */ blr - -.global __ct__Q212CScanDisplay8CDataDotFv -__ct__Q212CScanDisplay8CDataDotFv: -/* 80174A6C 001719CC 38 00 00 00 */ li r0, 0 -/* 80174A70 001719D0 38 8D A8 98 */ addi r4, r13, lbl_805A9458@sda21 -/* 80174A74 001719D4 90 03 00 00 */ stw r0, 0(r3) -/* 80174A78 001719D8 C0 02 A1 10 */ lfs f0, lbl_805ABE30@sda21(r2) -/* 80174A7C 001719DC C0 2D A8 98 */ lfs f1, lbl_805A9458@sda21(r13) -/* 80174A80 001719E0 D0 23 00 04 */ stfs f1, 4(r3) -/* 80174A84 001719E4 C0 24 00 04 */ lfs f1, 4(r4) -/* 80174A88 001719E8 D0 23 00 08 */ stfs f1, 8(r3) -/* 80174A8C 001719EC C0 23 00 04 */ lfs f1, 4(r3) -/* 80174A90 001719F0 D0 23 00 0C */ stfs f1, 0xc(r3) -/* 80174A94 001719F4 C0 23 00 08 */ lfs f1, 8(r3) -/* 80174A98 001719F8 D0 23 00 10 */ stfs f1, 0x10(r3) -/* 80174A9C 001719FC C0 23 00 04 */ lfs f1, 4(r3) -/* 80174AA0 00171A00 D0 23 00 14 */ stfs f1, 0x14(r3) -/* 80174AA4 00171A04 C0 23 00 08 */ lfs f1, 8(r3) -/* 80174AA8 00171A08 D0 23 00 18 */ stfs f1, 0x18(r3) -/* 80174AAC 00171A0C D0 03 00 1C */ stfs f0, 0x1c(r3) -/* 80174AB0 00171A10 D0 03 00 20 */ stfs f0, 0x20(r3) -/* 80174AB4 00171A14 D0 03 00 24 */ stfs f0, 0x24(r3) -/* 80174AB8 00171A18 D0 03 00 28 */ stfs f0, 0x28(r3) -/* 80174ABC 00171A1C 4E 80 00 20 */ blr - -.global SetScanMessageTypeEffect__12CScanDisplayFP12CGuiTextPaneb -SetScanMessageTypeEffect__12CScanDisplayFP12CGuiTextPaneb: -/* 80174AC0 00171A20 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80174AC4 00171A24 7C 08 02 A6 */ mflr r0 -/* 80174AC8 00171A28 90 01 00 14 */ stw r0, 0x14(r1) -/* 80174ACC 00171A2C 54 80 06 3F */ clrlwi. r0, r4, 0x18 -/* 80174AD0 00171A30 41 82 00 1C */ beq lbl_80174AEC -/* 80174AD4 00171A34 C0 22 A1 48 */ lfs f1, lbl_805ABE68@sda21(r2) -/* 80174AD8 00171A38 38 63 00 D4 */ addi r3, r3, 0xd4 -/* 80174ADC 00171A3C C0 42 A1 4C */ lfs f2, lbl_805ABE6C@sda21(r2) -/* 80174AE0 00171A40 38 80 00 01 */ li r4, 1 -/* 80174AE4 00171A44 48 15 36 35 */ bl SetTypeWriteEffectOptions__15CGuiTextSupportFbff -/* 80174AE8 00171A48 48 00 00 18 */ b lbl_80174B00 -lbl_80174AEC: -/* 80174AEC 00171A4C C0 22 A1 10 */ lfs f1, lbl_805ABE30@sda21(r2) -/* 80174AF0 00171A50 38 63 00 D4 */ addi r3, r3, 0xd4 -/* 80174AF4 00171A54 38 80 00 00 */ li r4, 0 -/* 80174AF8 00171A58 FC 40 08 90 */ fmr f2, f1 -/* 80174AFC 00171A5C 48 15 36 1D */ bl SetTypeWriteEffectOptions__15CGuiTextSupportFbff -lbl_80174B00: -/* 80174B00 00171A60 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80174B04 00171A64 7C 08 03 A6 */ mtlr r0 -/* 80174B08 00171A68 38 21 00 10 */ addi r1, r1, 0x10 -/* 80174B0C 00171A6C 4E 80 00 20 */ blr - -.global Accept__12CScriptSteamFR8IVisitor -Accept__12CScriptSteamFR8IVisitor: -/* 80174B10 00171A70 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80174B14 00171A74 7C 08 02 A6 */ mflr r0 -/* 80174B18 00171A78 90 01 00 14 */ stw r0, 0x14(r1) -/* 80174B1C 00171A7C 7C 60 1B 78 */ mr r0, r3 -/* 80174B20 00171A80 7C 83 23 78 */ mr r3, r4 -/* 80174B24 00171A84 81 84 00 00 */ lwz r12, 0(r4) -/* 80174B28 00171A88 7C 04 03 78 */ mr r4, r0 -/* 80174B2C 00171A8C 81 8C 00 CC */ lwz r12, 0xcc(r12) -/* 80174B30 00171A90 7D 89 03 A6 */ mtctr r12 -/* 80174B34 00171A94 4E 80 04 21 */ bctrl -/* 80174B38 00171A98 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80174B3C 00171A9C 7C 08 03 A6 */ mtlr r0 -/* 80174B40 00171AA0 38 21 00 10 */ addi r1, r1, 0x10 -/* 80174B44 00171AA4 4E 80 00 20 */ blr - -.global Think__12CScriptSteamFfR13CStateManager -Think__12CScriptSteamFfR13CStateManager: -/* 80174B48 00171AA8 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 80174B4C 00171AAC 7C 08 02 A6 */ mflr r0 -/* 80174B50 00171AB0 90 01 00 44 */ stw r0, 0x44(r1) -/* 80174B54 00171AB4 DB E1 00 30 */ stfd f31, 0x30(r1) -/* 80174B58 00171AB8 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 -/* 80174B5C 00171ABC 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 80174B60 00171AC0 93 C1 00 28 */ stw r30, 0x28(r1) -/* 80174B64 00171AC4 88 03 00 30 */ lbz r0, 0x30(r3) -/* 80174B68 00171AC8 7C 7E 1B 78 */ mr r30, r3 -/* 80174B6C 00171ACC 7C 9F 23 78 */ mr r31, r4 -/* 80174B70 00171AD0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80174B74 00171AD4 41 82 01 04 */ beq lbl_80174C78 -/* 80174B78 00171AD8 4B F0 19 55 */ bl Think__14CScriptTriggerFfR13CStateManager -/* 80174B7C 00171ADC 88 1E 01 48 */ lbz r0, 0x148(r30) -/* 80174B80 00171AE0 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f -/* 80174B84 00171AE4 41 82 00 D0 */ beq lbl_80174C54 -/* 80174B88 00171AE8 80 7F 08 70 */ lwz r3, 0x870(r31) -/* 80174B8C 00171AEC 80 03 00 74 */ lwz r0, 0x74(r3) -/* 80174B90 00171AF0 2C 00 00 00 */ cmpwi r0, 0 -/* 80174B94 00171AF4 40 82 00 C0 */ bne lbl_80174C54 -/* 80174B98 00171AF8 80 9F 08 4C */ lwz r4, 0x84c(r31) -/* 80174B9C 00171AFC 38 61 00 14 */ addi r3, r1, 0x14 -/* 80174BA0 00171B00 48 11 01 DD */ bl GetEyePosition__7CPlayerCFv -/* 80174BA4 00171B04 C0 3E 00 50 */ lfs f1, 0x50(r30) -/* 80174BA8 00171B08 38 61 00 08 */ addi r3, r1, 8 -/* 80174BAC 00171B0C C0 01 00 18 */ lfs f0, 0x18(r1) -/* 80174BB0 00171B10 C0 7E 00 60 */ lfs f3, 0x60(r30) -/* 80174BB4 00171B14 C0 41 00 1C */ lfs f2, 0x1c(r1) -/* 80174BB8 00171B18 EC 81 00 28 */ fsubs f4, f1, f0 -/* 80174BBC 00171B1C C0 3E 00 40 */ lfs f1, 0x40(r30) -/* 80174BC0 00171B20 C0 01 00 14 */ lfs f0, 0x14(r1) -/* 80174BC4 00171B24 EC 43 10 28 */ fsubs f2, f3, f2 -/* 80174BC8 00171B28 D0 81 00 0C */ stfs f4, 0xc(r1) -/* 80174BCC 00171B2C EC 01 00 28 */ fsubs f0, f1, f0 -/* 80174BD0 00171B30 D0 41 00 10 */ stfs f2, 0x10(r1) -/* 80174BD4 00171B34 D0 01 00 08 */ stfs f0, 8(r1) -/* 80174BD8 00171B38 48 19 FC E1 */ bl Magnitude__9CVector3fCFv -/* 80174BDC 00171B3C C0 1E 01 64 */ lfs f0, 0x164(r30) -/* 80174BE0 00171B40 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80174BE4 00171B44 4C 41 13 82 */ cror 2, 1, 2 -/* 80174BE8 00171B48 40 82 00 0C */ bne lbl_80174BF4 -/* 80174BEC 00171B4C C3 E2 A1 50 */ lfs f31, lbl_805ABE70@sda21(r2) -/* 80174BF0 00171B50 48 00 00 20 */ b lbl_80174C10 -lbl_80174BF4: -/* 80174BF4 00171B54 C0 42 A1 54 */ lfs f2, lbl_805ABE74@sda21(r2) -/* 80174BF8 00171B58 C0 1E 01 68 */ lfs f0, 0x168(r30) -/* 80174BFC 00171B5C EC 22 00 72 */ fmuls f1, f2, f1 -/* 80174C00 00171B60 C3 FE 01 58 */ lfs f31, 0x158(r30) -/* 80174C04 00171B64 EC 21 00 32 */ fmuls f1, f1, f0 -/* 80174C08 00171B68 48 1A 01 3D */ bl FastCosR__5CMathFf -/* 80174C0C 00171B6C EF E1 07 F2 */ fmuls f31, f1, f31 -lbl_80174C10: -/* 80174C10 00171B70 88 1E 01 50 */ lbz r0, 0x150(r30) -/* 80174C14 00171B74 FC 20 F8 90 */ fmr f1, f31 -/* 80174C18 00171B78 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 80174C1C 00171B7C 7C 00 00 34 */ cntlzw r0, r0 -/* 80174C20 00171B80 C0 5E 01 5C */ lfs f2, 0x15c(r30) -/* 80174C24 00171B84 C0 7E 01 60 */ lfs f3, 0x160(r30) -/* 80174C28 00171B88 54 05 D9 7E */ srwi r5, r0, 5 -/* 80174C2C 00171B8C 80 9E 01 54 */ lwz r4, 0x154(r30) -/* 80174C30 00171B90 4B EA 2E 85 */ bl SetVisorSteam__7CPlayerFfffUib -/* 80174C34 00171B94 88 1E 01 50 */ lbz r0, 0x150(r30) -/* 80174C38 00171B98 28 00 00 00 */ cmplwi r0, 0 -/* 80174C3C 00171B9C 41 82 00 3C */ beq lbl_80174C78 -/* 80174C40 00171BA0 C0 02 A1 58 */ lfs f0, lbl_805ABE78@sda21(r2) -/* 80174C44 00171BA4 80 7F 08 80 */ lwz r3, 0x880(r31) -/* 80174C48 00171BA8 EC 00 07 F2 */ fmuls f0, f0, f31 -/* 80174C4C 00171BAC D0 03 0B 54 */ stfs f0, 0xb54(r3) -/* 80174C50 00171BB0 48 00 00 28 */ b lbl_80174C78 -lbl_80174C54: -/* 80174C54 00171BB4 88 1E 01 50 */ lbz r0, 0x150(r30) -/* 80174C58 00171BB8 38 80 FF FF */ li r4, -1 -/* 80174C5C 00171BBC 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 80174C60 00171BC0 7C 00 00 34 */ cntlzw r0, r0 -/* 80174C64 00171BC4 C0 22 A1 50 */ lfs f1, lbl_805ABE70@sda21(r2) -/* 80174C68 00171BC8 C0 5E 01 5C */ lfs f2, 0x15c(r30) -/* 80174C6C 00171BCC 54 05 D9 7E */ srwi r5, r0, 5 -/* 80174C70 00171BD0 C0 7E 01 60 */ lfs f3, 0x160(r30) -/* 80174C74 00171BD4 4B EA 2E 41 */ bl SetVisorSteam__7CPlayerFfffUib -lbl_80174C78: -/* 80174C78 00171BD8 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 -/* 80174C7C 00171BDC 80 01 00 44 */ lwz r0, 0x44(r1) -/* 80174C80 00171BE0 CB E1 00 30 */ lfd f31, 0x30(r1) -/* 80174C84 00171BE4 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 80174C88 00171BE8 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 80174C8C 00171BEC 7C 08 03 A6 */ mtlr r0 -/* 80174C90 00171BF0 38 21 00 40 */ addi r1, r1, 0x40 -/* 80174C94 00171BF4 4E 80 00 20 */ blr - -.global AcceptScriptMsg__12CScriptSteamF20EScriptObjectMessage9TUniqueIdR13CStateManager -AcceptScriptMsg__12CScriptSteamF20EScriptObjectMessage9TUniqueIdR13CStateManager: -/* 80174C98 00171BF8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80174C9C 00171BFC 7C 08 02 A6 */ mflr r0 -/* 80174CA0 00171C00 90 01 00 24 */ stw r0, 0x24(r1) -/* 80174CA4 00171C04 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80174CA8 00171C08 7C DF 33 78 */ mr r31, r6 -/* 80174CAC 00171C0C 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80174CB0 00171C10 7C BE 2B 78 */ mr r30, r5 -/* 80174CB4 00171C14 93 A1 00 14 */ stw r29, 0x14(r1) -/* 80174CB8 00171C18 7C 9D 23 78 */ mr r29, r4 -/* 80174CBC 00171C1C 2C 1D 00 04 */ cmpwi r29, 4 -/* 80174CC0 00171C20 93 81 00 10 */ stw r28, 0x10(r1) -/* 80174CC4 00171C24 7C 7C 1B 78 */ mr r28, r3 -/* 80174CC8 00171C28 41 82 00 08 */ beq lbl_80174CD0 -/* 80174CCC 00171C2C 48 00 00 28 */ b lbl_80174CF4 -lbl_80174CD0: -/* 80174CD0 00171C30 88 1C 01 50 */ lbz r0, 0x150(r28) -/* 80174CD4 00171C34 38 80 FF FF */ li r4, -1 -/* 80174CD8 00171C38 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 80174CDC 00171C3C 7C 00 00 34 */ cntlzw r0, r0 -/* 80174CE0 00171C40 C0 22 A1 50 */ lfs f1, lbl_805ABE70@sda21(r2) -/* 80174CE4 00171C44 C0 5C 01 5C */ lfs f2, 0x15c(r28) -/* 80174CE8 00171C48 54 05 D9 7E */ srwi r5, r0, 5 -/* 80174CEC 00171C4C C0 7C 01 60 */ lfs f3, 0x160(r28) -/* 80174CF0 00171C50 4B EA 2D C5 */ bl SetVisorSteam__7CPlayerFfffUib -lbl_80174CF4: -/* 80174CF4 00171C54 A0 1E 00 00 */ lhz r0, 0(r30) -/* 80174CF8 00171C58 7F 83 E3 78 */ mr r3, r28 -/* 80174CFC 00171C5C 7F A4 EB 78 */ mr r4, r29 -/* 80174D00 00171C60 7F E6 FB 78 */ mr r6, r31 -/* 80174D04 00171C64 B0 01 00 08 */ sth r0, 8(r1) -/* 80174D08 00171C68 38 A1 00 08 */ addi r5, r1, 8 -/* 80174D0C 00171C6C 4B F0 17 ED */ bl AcceptScriptMsg__14CScriptTriggerF20EScriptObjectMessage9TUniqueIdR13CStateManager -/* 80174D10 00171C70 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80174D14 00171C74 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80174D18 00171C78 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 80174D1C 00171C7C 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 80174D20 00171C80 83 81 00 10 */ lwz r28, 0x10(r1) -/* 80174D24 00171C84 7C 08 03 A6 */ mtlr r0 -/* 80174D28 00171C88 38 21 00 20 */ addi r1, r1, 0x20 -/* 80174D2C 00171C8C 4E 80 00 20 */ blr - -.global __dt__12CScriptSteamFv -__dt__12CScriptSteamFv: -/* 80174D30 00171C90 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80174D34 00171C94 7C 08 02 A6 */ mflr r0 -/* 80174D38 00171C98 90 01 00 14 */ stw r0, 0x14(r1) -/* 80174D3C 00171C9C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80174D40 00171CA0 7C 9F 23 78 */ mr r31, r4 -/* 80174D44 00171CA4 93 C1 00 08 */ stw r30, 8(r1) -/* 80174D48 00171CA8 7C 7E 1B 79 */ or. r30, r3, r3 -/* 80174D4C 00171CAC 41 82 00 28 */ beq lbl_80174D74 -/* 80174D50 00171CB0 3C A0 80 3E */ lis r5, lbl_803E3DA8@ha -/* 80174D54 00171CB4 38 80 00 00 */ li r4, 0 -/* 80174D58 00171CB8 38 05 3D A8 */ addi r0, r5, lbl_803E3DA8@l -/* 80174D5C 00171CBC 90 1E 00 00 */ stw r0, 0(r30) -/* 80174D60 00171CC0 4B F0 1F 21 */ bl __dt__14CScriptTriggerFv -/* 80174D64 00171CC4 7F E0 07 35 */ extsh. r0, r31 -/* 80174D68 00171CC8 40 81 00 0C */ ble lbl_80174D74 -/* 80174D6C 00171CCC 7F C3 F3 78 */ mr r3, r30 -/* 80174D70 00171CD0 48 1A 0B C1 */ bl Free__7CMemoryFPCv -lbl_80174D74: -/* 80174D74 00171CD4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80174D78 00171CD8 7F C3 F3 78 */ mr r3, r30 -/* 80174D7C 00171CDC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80174D80 00171CE0 83 C1 00 08 */ lwz r30, 8(r1) -/* 80174D84 00171CE4 7C 08 03 A6 */ mtlr r0 -/* 80174D88 00171CE8 38 21 00 10 */ addi r1, r1, 0x10 -/* 80174D8C 00171CEC 4E 80 00 20 */ blr - -.global "__ct__12CScriptSteamF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fRC6CAABoxRC11CDamageInfoRC9CVector3fUibUiffff" -"__ct__12CScriptSteamF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fRC6CAABoxRC11CDamageInfoRC9CVector3fUibUiffff": -/* 80174D90 00171CF0 94 21 FF 90 */ stwu r1, -0x70(r1) -/* 80174D94 00171CF4 7C 08 02 A6 */ mflr r0 -/* 80174D98 00171CF8 90 01 00 74 */ stw r0, 0x74(r1) -/* 80174D9C 00171CFC DB E1 00 60 */ stfd f31, 0x60(r1) -/* 80174DA0 00171D00 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 -/* 80174DA4 00171D04 DB C1 00 50 */ stfd f30, 0x50(r1) -/* 80174DA8 00171D08 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 -/* 80174DAC 00171D0C DB A1 00 40 */ stfd f29, 0x40(r1) -/* 80174DB0 00171D10 F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 -/* 80174DB4 00171D14 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 80174DB8 00171D18 93 C1 00 38 */ stw r30, 0x38(r1) -/* 80174DBC 00171D1C 93 A1 00 34 */ stw r29, 0x34(r1) -/* 80174DC0 00171D20 93 81 00 30 */ stw r28, 0x30(r1) -/* 80174DC4 00171D24 A0 84 00 00 */ lhz r4, 0(r4) -/* 80174DC8 00171D28 38 00 00 00 */ li r0, 0 -/* 80174DCC 00171D2C D0 81 00 18 */ stfs f4, 0x18(r1) -/* 80174DD0 00171D30 FF A0 08 90 */ fmr f29, f1 -/* 80174DD4 00171D34 81 61 00 78 */ lwz r11, 0x78(r1) -/* 80174DD8 00171D38 FF C0 10 90 */ fmr f30, f2 -/* 80174DDC 00171D3C B0 81 00 1C */ sth r4, 0x1c(r1) -/* 80174DE0 00171D40 FF E0 18 90 */ fmr f31, f3 -/* 80174DE4 00171D44 88 81 00 7F */ lbz r4, 0x7f(r1) -/* 80174DE8 00171D48 91 61 00 08 */ stw r11, 8(r1) -/* 80174DEC 00171D4C 7C 7C 1B 78 */ mr r28, r3 -/* 80174DF0 00171D50 83 C1 00 80 */ lwz r30, 0x80(r1) -/* 80174DF4 00171D54 7D 1D 43 78 */ mr r29, r8 -/* 80174DF8 00171D58 90 81 00 0C */ stw r4, 0xc(r1) -/* 80174DFC 00171D5C 38 81 00 1C */ addi r4, r1, 0x1c -/* 80174E00 00171D60 8B E1 00 87 */ lbz r31, 0x87(r1) -/* 80174E04 00171D64 90 01 00 10 */ stw r0, 0x10(r1) -/* 80174E08 00171D68 90 01 00 14 */ stw r0, 0x14(r1) -/* 80174E0C 00171D6C 4B F0 1F 4D */ bl "__ct__14CScriptTriggerF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fRC6CAABoxRC11CDamageInfoRC9CVector3fUibbb" -/* 80174E10 00171D70 EC 5E E8 24 */ fdivs f2, f30, f29 -/* 80174E14 00171D74 3C 60 80 3E */ lis r3, lbl_803E3DA8@ha -/* 80174E18 00171D78 38 03 3D A8 */ addi r0, r3, lbl_803E3DA8@l -/* 80174E1C 00171D7C C0 02 A1 50 */ lfs f0, lbl_805ABE70@sda21(r2) -/* 80174E20 00171D80 90 1C 00 00 */ stw r0, 0(r28) -/* 80174E24 00171D84 9B FC 01 50 */ stb r31, 0x150(r28) -/* 80174E28 00171D88 93 DC 01 54 */ stw r30, 0x154(r28) -/* 80174E2C 00171D8C EC 3F E8 24 */ fdivs f1, f31, f29 -/* 80174E30 00171D90 D3 BC 01 58 */ stfs f29, 0x158(r28) -/* 80174E34 00171D94 D0 5C 01 5C */ stfs f2, 0x15c(r28) -/* 80174E38 00171D98 D0 3C 01 60 */ stfs f1, 0x160(r28) -/* 80174E3C 00171D9C D0 1C 01 64 */ stfs f0, 0x164(r28) -/* 80174E40 00171DA0 D0 1C 01 68 */ stfs f0, 0x168(r28) -/* 80174E44 00171DA4 C0 1D 00 14 */ lfs f0, 0x14(r29) -/* 80174E48 00171DA8 C0 3D 00 10 */ lfs f1, 0x10(r29) -/* 80174E4C 00171DAC D0 01 00 20 */ stfs f0, 0x20(r1) -/* 80174E50 00171DB0 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 80174E54 00171DB4 D0 21 00 24 */ stfs f1, 0x24(r1) -/* 80174E58 00171DB8 40 80 00 0C */ bge lbl_80174E64 -/* 80174E5C 00171DBC 38 61 00 20 */ addi r3, r1, 0x20 -/* 80174E60 00171DC0 48 00 00 08 */ b lbl_80174E68 -lbl_80174E64: -/* 80174E64 00171DC4 38 61 00 24 */ addi r3, r1, 0x24 -lbl_80174E68: -/* 80174E68 00171DC8 C0 3D 00 0C */ lfs f1, 0xc(r29) -/* 80174E6C 00171DCC D0 21 00 28 */ stfs f1, 0x28(r1) -/* 80174E70 00171DD0 C0 03 00 00 */ lfs f0, 0(r3) -/* 80174E74 00171DD4 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 80174E78 00171DD8 40 80 00 08 */ bge lbl_80174E80 -/* 80174E7C 00171DDC 48 00 00 08 */ b lbl_80174E84 -lbl_80174E80: -/* 80174E80 00171DE0 38 61 00 28 */ addi r3, r1, 0x28 -lbl_80174E84: -/* 80174E84 00171DE4 C0 41 00 18 */ lfs f2, 0x18(r1) -/* 80174E88 00171DE8 C0 02 A1 50 */ lfs f0, lbl_805ABE70@sda21(r2) -/* 80174E8C 00171DEC C0 63 00 00 */ lfs f3, 0(r3) -/* 80174E90 00171DF0 EC 22 00 28 */ fsubs f1, f2, f0 -/* 80174E94 00171DF4 C8 02 A1 60 */ lfd f0, lbl_805ABE80@sda21(r2) -/* 80174E98 00171DF8 D0 61 00 2C */ stfs f3, 0x2c(r1) -/* 80174E9C 00171DFC FC 20 0A 10 */ fabs f1, f1 -/* 80174EA0 00171E00 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80174EA4 00171E04 40 80 00 08 */ bge lbl_80174EAC -/* 80174EA8 00171E08 48 00 00 1C */ b lbl_80174EC4 -lbl_80174EAC: -/* 80174EAC 00171E0C FC 03 10 40 */ fcmpo cr0, f3, f2 -/* 80174EB0 00171E10 40 80 00 0C */ bge lbl_80174EBC -/* 80174EB4 00171E14 38 61 00 2C */ addi r3, r1, 0x2c -/* 80174EB8 00171E18 48 00 00 08 */ b lbl_80174EC0 -lbl_80174EBC: -/* 80174EBC 00171E1C 38 61 00 18 */ addi r3, r1, 0x18 -lbl_80174EC0: -/* 80174EC0 00171E20 C0 63 00 00 */ lfs f3, 0(r3) -lbl_80174EC4: -/* 80174EC4 00171E24 D0 7C 01 64 */ stfs f3, 0x164(r28) -/* 80174EC8 00171E28 7F 83 E3 78 */ mr r3, r28 -/* 80174ECC 00171E2C C0 22 A1 68 */ lfs f1, lbl_805ABE88@sda21(r2) -/* 80174ED0 00171E30 C0 1C 01 64 */ lfs f0, 0x164(r28) -/* 80174ED4 00171E34 EC 01 00 24 */ fdivs f0, f1, f0 -/* 80174ED8 00171E38 D0 1C 01 68 */ stfs f0, 0x168(r28) -/* 80174EDC 00171E3C E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 -/* 80174EE0 00171E40 CB E1 00 60 */ lfd f31, 0x60(r1) -/* 80174EE4 00171E44 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 -/* 80174EE8 00171E48 CB C1 00 50 */ lfd f30, 0x50(r1) -/* 80174EEC 00171E4C E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 -/* 80174EF0 00171E50 CB A1 00 40 */ lfd f29, 0x40(r1) -/* 80174EF4 00171E54 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 80174EF8 00171E58 83 C1 00 38 */ lwz r30, 0x38(r1) -/* 80174EFC 00171E5C 83 A1 00 34 */ lwz r29, 0x34(r1) -/* 80174F00 00171E60 80 01 00 74 */ lwz r0, 0x74(r1) -/* 80174F04 00171E64 83 81 00 30 */ lwz r28, 0x30(r1) -/* 80174F08 00171E68 7C 08 03 A6 */ mtlr r0 -/* 80174F0C 00171E6C 38 21 00 70 */ addi r1, r1, 0x70 -/* 80174F10 00171E70 4E 80 00 20 */ blr - -.global Accept__13CScriptRippleFR8IVisitor -Accept__13CScriptRippleFR8IVisitor: -/* 80174F14 00171E74 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80174F18 00171E78 7C 08 02 A6 */ mflr r0 -/* 80174F1C 00171E7C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80174F20 00171E80 7C 60 1B 78 */ mr r0, r3 -/* 80174F24 00171E84 7C 83 23 78 */ mr r3, r4 -/* 80174F28 00171E88 81 84 00 00 */ lwz r12, 0(r4) -/* 80174F2C 00171E8C 7C 04 03 78 */ mr r4, r0 -/* 80174F30 00171E90 81 8C 00 24 */ lwz r12, 0x24(r12) -/* 80174F34 00171E94 7D 89 03 A6 */ mtctr r12 -/* 80174F38 00171E98 4E 80 04 21 */ bctrl -/* 80174F3C 00171E9C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80174F40 00171EA0 7C 08 03 A6 */ mtlr r0 -/* 80174F44 00171EA4 38 21 00 10 */ addi r1, r1, 0x10 -/* 80174F48 00171EA8 4E 80 00 20 */ blr - -.global Think__13CScriptRippleFfR13CStateManager -Think__13CScriptRippleFfR13CStateManager: -/* 80174F4C 00171EAC 4E 80 00 20 */ blr - -.global AcceptScriptMsg__13CScriptRippleF20EScriptObjectMessage9TUniqueIdR13CStateManager -AcceptScriptMsg__13CScriptRippleF20EScriptObjectMessage9TUniqueIdR13CStateManager: -/* 80174F50 00171EB0 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 80174F54 00171EB4 7C 08 02 A6 */ mflr r0 -/* 80174F58 00171EB8 2C 04 00 14 */ cmpwi r4, 0x14 -/* 80174F5C 00171EBC 90 01 00 54 */ stw r0, 0x54(r1) -/* 80174F60 00171EC0 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 80174F64 00171EC4 7C DF 33 78 */ mr r31, r6 -/* 80174F68 00171EC8 93 C1 00 48 */ stw r30, 0x48(r1) -/* 80174F6C 00171ECC 7C 7E 1B 78 */ mr r30, r3 -/* 80174F70 00171ED0 93 A1 00 44 */ stw r29, 0x44(r1) -/* 80174F74 00171ED4 41 82 00 08 */ beq lbl_80174F7C -/* 80174F78 00171ED8 48 00 00 F4 */ b lbl_8017506C -lbl_80174F7C: -/* 80174F7C 00171EDC 88 1E 00 30 */ lbz r0, 0x30(r30) -/* 80174F80 00171EE0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80174F84 00171EE4 41 82 00 F8 */ beq lbl_8017507C -/* 80174F88 00171EE8 83 BE 00 2C */ lwz r29, 0x2c(r30) -/* 80174F8C 00171EEC 48 00 00 C4 */ b lbl_80175050 -lbl_80174F90: -/* 80174F90 00171EF0 80 1D 00 00 */ lwz r0, 0(r29) -/* 80174F94 00171EF4 2C 00 00 00 */ cmpwi r0, 0 -/* 80174F98 00171EF8 40 82 00 B4 */ bne lbl_8017504C -/* 80174F9C 00171EFC 80 1D 00 04 */ lwz r0, 4(r29) -/* 80174FA0 00171F00 2C 00 00 08 */ cmpwi r0, 8 -/* 80174FA4 00171F04 40 82 00 A8 */ bne lbl_8017504C -/* 80174FA8 00171F08 80 1D 00 08 */ lwz r0, 8(r29) -/* 80174FAC 00171F0C 7F E4 FB 78 */ mr r4, r31 -/* 80174FB0 00171F10 38 61 00 24 */ addi r3, r1, 0x24 -/* 80174FB4 00171F14 38 A1 00 18 */ addi r5, r1, 0x18 -/* 80174FB8 00171F18 90 01 00 18 */ stw r0, 0x18(r1) -/* 80174FBC 00171F1C 4B ED 30 0D */ bl GetIdListForScript__13CStateManagerCF9TEditorId -/* 80174FC0 00171F20 80 A1 00 24 */ lwz r5, 0x24(r1) -/* 80174FC4 00171F24 38 60 00 00 */ li r3, 0 -/* 80174FC8 00171F28 80 01 00 2C */ lwz r0, 0x2c(r1) -/* 80174FCC 00171F2C 80 81 00 28 */ lwz r4, 0x28(r1) -/* 80174FD0 00171F30 7C 05 00 40 */ cmplw r5, r0 -/* 80174FD4 00171F34 80 01 00 30 */ lwz r0, 0x30(r1) -/* 80174FD8 00171F38 40 82 00 0C */ bne lbl_80174FE4 -/* 80174FDC 00171F3C 7C 04 00 40 */ cmplw r4, r0 -/* 80174FE0 00171F40 41 82 00 08 */ beq lbl_80174FE8 -lbl_80174FE4: -/* 80174FE4 00171F44 38 60 00 01 */ li r3, 1 -lbl_80174FE8: -/* 80174FE8 00171F48 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80174FEC 00171F4C 41 82 00 60 */ beq lbl_8017504C -/* 80174FF0 00171F50 A0 05 00 14 */ lhz r0, 0x14(r5) -/* 80174FF4 00171F54 7F E3 FB 78 */ mr r3, r31 -/* 80174FF8 00171F58 38 81 00 14 */ addi r4, r1, 0x14 -/* 80174FFC 00171F5C B0 01 00 14 */ sth r0, 0x14(r1) -/* 80175000 00171F60 4B ED 75 75 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80175004 00171F64 7C 64 1B 78 */ mr r4, r3 -/* 80175008 00171F68 38 61 00 1C */ addi r3, r1, 0x1c -/* 8017500C 00171F6C 4B F3 18 55 */ bl "__ct__26TCastToPtr<12CScriptWater>FP7CEntity" -/* 80175010 00171F70 80 C3 00 04 */ lwz r6, 4(r3) -/* 80175014 00171F74 28 06 00 00 */ cmplwi r6, 0 -/* 80175018 00171F78 41 82 00 34 */ beq lbl_8017504C -/* 8017501C 00171F7C A0 1E 00 08 */ lhz r0, 8(r30) -/* 80175020 00171F80 7F E7 FB 78 */ mr r7, r31 -/* 80175024 00171F84 38 81 00 10 */ addi r4, r1, 0x10 -/* 80175028 00171F88 38 BE 00 38 */ addi r5, r30, 0x38 -/* 8017502C 00171F8C B0 01 00 10 */ sth r0, 0x10(r1) -/* 80175030 00171F90 80 66 01 B4 */ lwz r3, 0x1b4(r6) -/* 80175034 00171F94 B0 01 00 0C */ sth r0, 0xc(r1) -/* 80175038 00171F98 81 83 00 00 */ lwz r12, 0(r3) -/* 8017503C 00171F9C C0 3E 00 34 */ lfs f1, 0x34(r30) -/* 80175040 00171FA0 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 80175044 00171FA4 7D 89 03 A6 */ mtctr r12 -/* 80175048 00171FA8 4E 80 04 21 */ bctrl -lbl_8017504C: -/* 8017504C 00171FAC 3B BD 00 0C */ addi r29, r29, 0xc -lbl_80175050: -/* 80175050 00171FB0 80 1E 00 24 */ lwz r0, 0x24(r30) -/* 80175054 00171FB4 80 7E 00 2C */ lwz r3, 0x2c(r30) -/* 80175058 00171FB8 1C 00 00 0C */ mulli r0, r0, 0xc -/* 8017505C 00171FBC 7C 03 02 14 */ add r0, r3, r0 -/* 80175060 00171FC0 7C 1D 00 40 */ cmplw r29, r0 -/* 80175064 00171FC4 40 82 FF 2C */ bne lbl_80174F90 -/* 80175068 00171FC8 48 00 00 14 */ b lbl_8017507C -lbl_8017506C: -/* 8017506C 00171FCC A0 05 00 00 */ lhz r0, 0(r5) -/* 80175070 00171FD0 38 A1 00 08 */ addi r5, r1, 8 -/* 80175074 00171FD4 B0 01 00 08 */ sth r0, 8(r1) -/* 80175078 00171FD8 4B ED C0 E5 */ bl AcceptScriptMsg__7CEntityF20EScriptObjectMessage9TUniqueIdR13CStateManager -lbl_8017507C: -/* 8017507C 00171FDC 80 01 00 54 */ lwz r0, 0x54(r1) -/* 80175080 00171FE0 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 80175084 00171FE4 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 80175088 00171FE8 83 A1 00 44 */ lwz r29, 0x44(r1) -/* 8017508C 00171FEC 7C 08 03 A6 */ mtlr r0 -/* 80175090 00171FF0 38 21 00 50 */ addi r1, r1, 0x50 -/* 80175094 00171FF4 4E 80 00 20 */ blr - -.global __dt__13CScriptRippleFv -__dt__13CScriptRippleFv: -/* 80175098 00171FF8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8017509C 00171FFC 7C 08 02 A6 */ mflr r0 -/* 801750A0 00172000 90 01 00 14 */ stw r0, 0x14(r1) -/* 801750A4 00172004 93 E1 00 0C */ stw r31, 0xc(r1) -/* 801750A8 00172008 7C 9F 23 78 */ mr r31, r4 -/* 801750AC 0017200C 93 C1 00 08 */ stw r30, 8(r1) -/* 801750B0 00172010 7C 7E 1B 79 */ or. r30, r3, r3 -/* 801750B4 00172014 41 82 00 28 */ beq lbl_801750DC -/* 801750B8 00172018 3C A0 80 3E */ lis r5, lbl_803E3E28@ha -/* 801750BC 0017201C 38 80 00 00 */ li r4, 0 -/* 801750C0 00172020 38 05 3E 28 */ addi r0, r5, lbl_803E3E28@l -/* 801750C4 00172024 90 1E 00 00 */ stw r0, 0(r30) -/* 801750C8 00172028 4B ED C1 AD */ bl __dt__7CEntityFv -/* 801750CC 0017202C 7F E0 07 35 */ extsh. r0, r31 -/* 801750D0 00172030 40 81 00 0C */ ble lbl_801750DC -/* 801750D4 00172034 7F C3 F3 78 */ mr r3, r30 -/* 801750D8 00172038 48 1A 08 59 */ bl Free__7CMemoryFPCv -lbl_801750DC: -/* 801750DC 0017203C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801750E0 00172040 7F C3 F3 78 */ mr r3, r30 -/* 801750E4 00172044 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 801750E8 00172048 83 C1 00 08 */ lwz r30, 8(r1) -/* 801750EC 0017204C 7C 08 03 A6 */ mtlr r0 -/* 801750F0 00172050 38 21 00 10 */ addi r1, r1, 0x10 -/* 801750F4 00172054 4E 80 00 20 */ blr - -.global "__ct__13CScriptRippleF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fbffff" -"__ct__13CScriptRippleF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fbffff": -/* 801750F8 00172058 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 801750FC 0017205C 7C 08 02 A6 */ mflr r0 -/* 80175100 00172060 90 01 00 34 */ stw r0, 0x34(r1) -/* 80175104 00172064 DB E1 00 20 */ stfd f31, 0x20(r1) -/* 80175108 00172068 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 -/* 8017510C 0017206C 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80175110 00172070 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80175114 00172074 A0 04 00 00 */ lhz r0, 0(r4) -/* 80175118 00172078 7C A4 2B 78 */ mr r4, r5 -/* 8017511C 0017207C FF E0 08 90 */ fmr f31, f1 -/* 80175120 00172080 7C FF 3B 78 */ mr r31, r7 -/* 80175124 00172084 B0 01 00 08 */ sth r0, 8(r1) -/* 80175128 00172088 7C C5 33 78 */ mr r5, r6 -/* 8017512C 0017208C 7C 87 23 78 */ mr r7, r4 -/* 80175130 00172090 7C 7E 1B 78 */ mr r30, r3 -/* 80175134 00172094 7D 06 43 78 */ mr r6, r8 -/* 80175138 00172098 38 81 00 08 */ addi r4, r1, 8 -/* 8017513C 0017209C 4B ED C1 E9 */ bl "__ct__7CEntityF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80175140 001720A0 C0 02 A1 70 */ lfs f0, lbl_805ABE90@sda21(r2) -/* 80175144 001720A4 3C 60 80 3E */ lis r3, lbl_803E3E28@ha -/* 80175148 001720A8 38 03 3E 28 */ addi r0, r3, lbl_803E3E28@l -/* 8017514C 001720AC FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 80175150 001720B0 90 1E 00 00 */ stw r0, 0(r30) -/* 80175154 001720B4 4C 41 13 82 */ cror 2, 1, 2 -/* 80175158 001720B8 40 82 00 0C */ bne lbl_80175164 -/* 8017515C 001720BC FC 00 F8 90 */ fmr f0, f31 -/* 80175160 001720C0 48 00 00 08 */ b lbl_80175168 -lbl_80175164: -/* 80175164 001720C4 C0 02 96 D0 */ lfs f0, lbl_805AB3F0@sda21(r2) -lbl_80175168: -/* 80175168 001720C8 D0 1E 00 34 */ stfs f0, 0x34(r30) -/* 8017516C 001720CC 7F C3 F3 78 */ mr r3, r30 -/* 80175170 001720D0 C0 1F 00 00 */ lfs f0, 0(r31) -/* 80175174 001720D4 D0 1E 00 38 */ stfs f0, 0x38(r30) -/* 80175178 001720D8 C0 1F 00 04 */ lfs f0, 4(r31) -/* 8017517C 001720DC D0 1E 00 3C */ stfs f0, 0x3c(r30) -/* 80175180 001720E0 C0 1F 00 08 */ lfs f0, 8(r31) -/* 80175184 001720E4 D0 1E 00 40 */ stfs f0, 0x40(r30) -/* 80175188 001720E8 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 -/* 8017518C 001720EC 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80175190 001720F0 CB E1 00 20 */ lfd f31, 0x20(r1) -/* 80175194 001720F4 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80175198 001720F8 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8017519C 001720FC 7C 08 03 A6 */ mtlr r0 -/* 801751A0 00172100 38 21 00 30 */ addi r1, r1, 0x30 -/* 801751A4 00172104 4E 80 00 20 */ blr - -.global SetNoHorizontalAim__13CBoneTrackingFb -SetNoHorizontalAim__13CBoneTrackingFb: -/* 801751A8 00172108 88 03 00 36 */ lbz r0, 0x36(r3) -/* 801751AC 0017210C 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c -/* 801751B0 00172110 98 03 00 36 */ stb r0, 0x36(r3) -/* 801751B4 00172114 4E 80 00 20 */ blr - -.global SetTargetPosition__13CBoneTrackingFRC9CVector3f -SetTargetPosition__13CBoneTrackingFRC9CVector3f: -/* 801751B8 00172118 88 03 00 30 */ lbz r0, 0x30(r3) -/* 801751BC 0017211C 28 00 00 00 */ cmplwi r0, 0 -/* 801751C0 00172120 40 82 00 30 */ bne lbl_801751F0 -/* 801751C4 00172124 34 A3 00 24 */ addic. r5, r3, 0x24 -/* 801751C8 00172128 41 82 00 1C */ beq lbl_801751E4 -/* 801751CC 0017212C C0 04 00 00 */ lfs f0, 0(r4) -/* 801751D0 00172130 D0 05 00 00 */ stfs f0, 0(r5) -/* 801751D4 00172134 C0 04 00 04 */ lfs f0, 4(r4) -/* 801751D8 00172138 D0 05 00 04 */ stfs f0, 4(r5) -/* 801751DC 0017213C C0 04 00 08 */ lfs f0, 8(r4) -/* 801751E0 00172140 D0 05 00 08 */ stfs f0, 8(r5) -lbl_801751E4: -/* 801751E4 00172144 38 00 00 01 */ li r0, 1 -/* 801751E8 00172148 98 03 00 30 */ stb r0, 0x30(r3) -/* 801751EC 0017214C 4E 80 00 20 */ blr -lbl_801751F0: -/* 801751F0 00172150 C0 04 00 00 */ lfs f0, 0(r4) -/* 801751F4 00172154 D0 03 00 24 */ stfs f0, 0x24(r3) -/* 801751F8 00172158 C0 04 00 04 */ lfs f0, 4(r4) -/* 801751FC 0017215C D0 03 00 28 */ stfs f0, 0x28(r3) -/* 80175200 00172160 C0 04 00 08 */ lfs f0, 8(r4) -/* 80175204 00172164 D0 03 00 2C */ stfs f0, 0x2c(r3) -/* 80175208 00172168 4E 80 00 20 */ blr - -.global UnsetTarget__13CBoneTrackingFv -UnsetTarget__13CBoneTrackingFv: -/* 8017520C 0017216C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80175210 00172170 B0 03 00 34 */ sth r0, 0x34(r3) -/* 80175214 00172174 4E 80 00 20 */ blr - -.global SetTarget__13CBoneTrackingF9TUniqueId -SetTarget__13CBoneTrackingF9TUniqueId: -/* 80175218 00172178 A0 04 00 00 */ lhz r0, 0(r4) -/* 8017521C 0017217C B0 03 00 34 */ sth r0, 0x34(r3) -/* 80175220 00172180 4E 80 00 20 */ blr - -.global SetActive__13CBoneTrackingFb -SetActive__13CBoneTrackingFb: -/* 80175224 00172184 88 03 00 36 */ lbz r0, 0x36(r3) -/* 80175228 00172188 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 -/* 8017522C 0017218C 98 03 00 36 */ stb r0, 0x36(r3) -/* 80175230 00172190 4E 80 00 20 */ blr - -.global PreRender__13CBoneTrackingFRC13CStateManagerR9CAnimDataRC12CTransform4fRC9CVector3fb -PreRender__13CBoneTrackingFRC13CStateManagerR9CAnimDataRC12CTransform4fRC9CVector3fb: -/* 80175234 00172194 94 21 FD A0 */ stwu r1, -0x260(r1) -/* 80175238 00172198 7C 08 02 A6 */ mflr r0 -/* 8017523C 0017219C 90 01 02 64 */ stw r0, 0x264(r1) -/* 80175240 001721A0 DB E1 02 50 */ stfd f31, 0x250(r1) -/* 80175244 001721A4 F3 E1 02 58 */ psq_st f31, 600(r1), 0, qr0 -/* 80175248 001721A8 BF 01 02 30 */ stmw r24, 0x230(r1) -/* 8017524C 001721AC 7C 7E 1B 78 */ mr r30, r3 -/* 80175250 001721B0 7C 99 23 78 */ mr r25, r4 -/* 80175254 001721B4 88 03 00 14 */ lbz r0, 0x14(r3) -/* 80175258 001721B8 7C BF 2B 78 */ mr r31, r5 -/* 8017525C 001721BC 7C DA 33 78 */ mr r26, r6 -/* 80175260 001721C0 7C FB 3B 78 */ mr r27, r7 -/* 80175264 001721C4 28 00 00 00 */ cmplwi r0, 0 -/* 80175268 001721C8 7D 18 43 78 */ mr r24, r8 -/* 8017526C 001721CC 41 82 06 80 */ beq lbl_801758EC -/* 80175270 001721D0 A0 1E 00 34 */ lhz r0, 0x34(r30) -/* 80175274 001721D4 7F 23 CB 78 */ mr r3, r25 -/* 80175278 001721D8 3B BF 02 FC */ addi r29, r31, 0x2fc -/* 8017527C 001721DC 38 81 00 10 */ addi r4, r1, 0x10 -/* 80175280 001721E0 B0 01 00 10 */ sth r0, 0x10(r1) -/* 80175284 001721E4 4B ED 73 21 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 80175288 001721E8 7C 64 1B 78 */ mr r4, r3 -/* 8017528C 001721EC 38 61 00 38 */ addi r3, r1, 0x38 -/* 80175290 001721F0 4B F3 AA 01 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 80175294 001721F4 88 1E 00 36 */ lbz r0, 0x36(r30) -/* 80175298 001721F8 83 83 00 04 */ lwz r28, 4(r3) -/* 8017529C 001721FC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 801752A0 00172200 41 82 04 48 */ beq lbl_801756E8 -/* 801752A4 00172204 57 00 06 3F */ clrlwi. r0, r24, 0x18 -/* 801752A8 00172208 41 82 04 40 */ beq lbl_801756E8 -/* 801752AC 0017220C 28 1C 00 00 */ cmplwi r28, 0 -/* 801752B0 00172210 40 82 00 10 */ bne lbl_801752C0 -/* 801752B4 00172214 88 1E 00 30 */ lbz r0, 0x30(r30) -/* 801752B8 00172218 28 00 00 00 */ cmplwi r0, 0 -/* 801752BC 0017221C 41 82 04 2C */ beq lbl_801756E8 -lbl_801752C0: -/* 801752C0 00172220 88 1E 00 36 */ lbz r0, 0x36(r30) -/* 801752C4 00172224 38 60 00 01 */ li r3, 1 -/* 801752C8 00172228 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 801752CC 0017222C 98 1E 00 36 */ stb r0, 0x36(r30) -/* 801752D0 00172230 88 1D 00 2C */ lbz r0, 0x2c(r29) -/* 801752D4 00172234 28 00 00 00 */ cmplwi r0, 0 -/* 801752D8 00172238 41 82 00 0C */ beq lbl_801752E4 -/* 801752DC 0017223C 38 7D 00 0C */ addi r3, r29, 0xc -/* 801752E0 00172240 48 00 00 08 */ b lbl_801752E8 -lbl_801752E4: -/* 801752E4 00172244 7F A3 EB 78 */ mr r3, r29 -lbl_801752E8: -/* 801752E8 00172248 88 1E 00 36 */ lbz r0, 0x36(r30) -/* 801752EC 0017224C 80 63 00 08 */ lwz r3, 8(r3) -/* 801752F0 00172250 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f -/* 801752F4 00172254 41 82 00 0C */ beq lbl_80175300 -/* 801752F8 00172258 38 BE 00 14 */ addi r5, r30, 0x14 -/* 801752FC 0017225C 48 00 00 2C */ b lbl_80175328 -lbl_80175300: -/* 80175300 00172260 88 1E 00 14 */ lbz r0, 0x14(r30) -/* 80175304 00172264 38 A1 00 08 */ addi r5, r1, 8 -/* 80175308 00172268 80 83 00 00 */ lwz r4, 0(r3) -/* 8017530C 0017226C 54 00 08 3C */ slwi r0, r0, 1 -/* 80175310 00172270 7C 64 02 14 */ add r3, r4, r0 -/* 80175314 00172274 80 84 00 D0 */ lwz r4, 0xd0(r4) -/* 80175318 00172278 88 03 00 09 */ lbz r0, 9(r3) -/* 8017531C 0017227C 54 00 2C F4 */ rlwinm r0, r0, 5, 0x13, 0x1a -/* 80175320 00172280 7C 04 00 AE */ lbzx r0, r4, r0 -/* 80175324 00172284 98 01 00 08 */ stb r0, 8(r1) -lbl_80175328: -/* 80175328 00172288 88 05 00 00 */ lbz r0, 0(r5) -/* 8017532C 0017228C 3C 60 80 5A */ lis r3, skIdentity4f@ha -/* 80175330 00172290 38 83 66 70 */ addi r4, r3, skIdentity4f@l -/* 80175334 00172294 98 01 00 0C */ stb r0, 0xc(r1) -/* 80175338 00172298 38 61 01 FC */ addi r3, r1, 0x1fc -/* 8017533C 0017229C 48 19 D8 39 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80175340 001722A0 7F A3 EB 78 */ mr r3, r29 -/* 80175344 001722A4 38 81 00 0C */ addi r4, r1, 0xc -/* 80175348 001722A8 38 A1 01 FC */ addi r5, r1, 0x1fc -/* 8017534C 001722AC 48 18 70 1D */ bl BuildTransform__21CHierarchyPoseBuilderCFRC6CSegIdR12CTransform4f -/* 80175350 001722B0 88 7E 00 36 */ lbz r3, 0x36(r30) -/* 80175354 001722B4 C0 A1 02 28 */ lfs f5, 0x228(r1) -/* 80175358 001722B8 54 60 E7 FF */ rlwinm. r0, r3, 0x1c, 0x1f, 0x1f -/* 8017535C 001722BC C0 81 02 18 */ lfs f4, 0x218(r1) -/* 80175360 001722C0 C0 61 02 08 */ lfs f3, 0x208(r1) -/* 80175364 001722C4 41 82 00 38 */ beq lbl_8017539C -/* 80175368 001722C8 54 60 DF FF */ rlwinm. r0, r3, 0x1b, 0x1f, 0x1f -/* 8017536C 001722CC 40 82 00 30 */ bne lbl_8017539C -/* 80175370 001722D0 3C 80 80 5A */ lis r4, skIdentity4f@ha -/* 80175374 001722D4 38 61 01 CC */ addi r3, r1, 0x1cc -/* 80175378 001722D8 38 84 66 70 */ addi r4, r4, skIdentity4f@l -/* 8017537C 001722DC 48 19 D7 F9 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80175380 001722E0 7F A3 EB 78 */ mr r3, r29 -/* 80175384 001722E4 38 9E 00 14 */ addi r4, r30, 0x14 -/* 80175388 001722E8 38 A1 01 CC */ addi r5, r1, 0x1cc -/* 8017538C 001722EC 48 18 6F DD */ bl BuildTransform__21CHierarchyPoseBuilderCFRC6CSegIdR12CTransform4f -/* 80175390 001722F0 C0 61 01 D8 */ lfs f3, 0x1d8(r1) -/* 80175394 001722F4 C0 81 01 E8 */ lfs f4, 0x1e8(r1) -/* 80175398 001722F8 C0 A1 01 F8 */ lfs f5, 0x1f8(r1) -lbl_8017539C: -/* 8017539C 001722FC C0 5B 00 08 */ lfs f2, 8(r27) -/* 801753A0 00172300 7F 44 D3 78 */ mr r4, r26 -/* 801753A4 00172304 C0 3B 00 04 */ lfs f1, 4(r27) -/* 801753A8 00172308 38 61 01 6C */ addi r3, r1, 0x16c -/* 801753AC 0017230C C0 1B 00 00 */ lfs f0, 0(r27) -/* 801753B0 00172310 EC 42 01 72 */ fmuls f2, f2, f5 -/* 801753B4 00172314 EC 21 01 32 */ fmuls f1, f1, f4 -/* 801753B8 00172318 38 A1 01 FC */ addi r5, r1, 0x1fc -/* 801753BC 0017231C EC 00 00 F2 */ fmuls f0, f0, f3 -/* 801753C0 00172320 D0 41 02 28 */ stfs f2, 0x228(r1) -/* 801753C4 00172324 D0 01 02 08 */ stfs f0, 0x208(r1) -/* 801753C8 00172328 D0 21 02 18 */ stfs f1, 0x218(r1) -/* 801753CC 0017232C 48 19 D5 85 */ bl __ml__12CTransform4fCFRC12CTransform4f -/* 801753D0 00172330 38 61 01 9C */ addi r3, r1, 0x19c -/* 801753D4 00172334 38 81 01 6C */ addi r4, r1, 0x16c -/* 801753D8 00172338 48 19 D7 9D */ bl __ct__12CTransform4fFRC12CTransform4f -/* 801753DC 0017233C 28 1C 00 00 */ cmplwi r28, 0 -/* 801753E0 00172340 41 82 00 2C */ beq lbl_8017540C -/* 801753E4 00172344 7F 84 E3 78 */ mr r4, r28 -/* 801753E8 00172348 7F 25 CB 78 */ mr r5, r25 -/* 801753EC 0017234C 81 9C 00 00 */ lwz r12, 0(r28) -/* 801753F0 00172350 38 61 01 04 */ addi r3, r1, 0x104 -/* 801753F4 00172354 C0 22 A1 78 */ lfs f1, lbl_805ABE98@sda21(r2) -/* 801753F8 00172358 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 801753FC 0017235C 7D 89 03 A6 */ mtctr r12 -/* 80175400 00172360 4E 80 04 21 */ bctrl -/* 80175404 00172364 38 C1 01 04 */ addi r6, r1, 0x104 -/* 80175408 00172368 48 00 00 08 */ b lbl_80175410 -lbl_8017540C: -/* 8017540C 0017236C 38 DE 00 24 */ addi r6, r30, 0x24 -lbl_80175410: -/* 80175410 00172370 C0 46 00 04 */ lfs f2, 4(r6) -/* 80175414 00172374 38 61 00 EC */ addi r3, r1, 0xec -/* 80175418 00172378 C0 21 01 B8 */ lfs f1, 0x1b8(r1) -/* 8017541C 0017237C 38 81 01 9C */ addi r4, r1, 0x19c -/* 80175420 00172380 C0 86 00 08 */ lfs f4, 8(r6) -/* 80175424 00172384 38 A1 00 40 */ addi r5, r1, 0x40 -/* 80175428 00172388 C0 01 01 C8 */ lfs f0, 0x1c8(r1) -/* 8017542C 0017238C EC 22 08 28 */ fsubs f1, f2, f1 -/* 80175430 00172390 C0 66 00 00 */ lfs f3, 0(r6) -/* 80175434 00172394 C0 41 01 A8 */ lfs f2, 0x1a8(r1) -/* 80175438 00172398 EC 04 00 28 */ fsubs f0, f4, f0 -/* 8017543C 0017239C D0 21 00 44 */ stfs f1, 0x44(r1) -/* 80175440 001723A0 EC 23 10 28 */ fsubs f1, f3, f2 -/* 80175444 001723A4 D0 01 00 48 */ stfs f0, 0x48(r1) -/* 80175448 001723A8 D0 21 00 40 */ stfs f1, 0x40(r1) -/* 8017544C 001723AC 48 19 D5 D9 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f -/* 80175450 001723B0 38 61 00 F8 */ addi r3, r1, 0xf8 -/* 80175454 001723B4 38 81 00 EC */ addi r4, r1, 0xec -/* 80175458 001723B8 48 19 F3 F9 */ bl AsNormalized__9CVector3fCFv -/* 8017545C 001723BC C0 21 00 F8 */ lfs f1, 0xf8(r1) -/* 80175460 001723C0 C0 41 00 FC */ lfs f2, 0xfc(r1) -/* 80175464 001723C4 C0 01 01 00 */ lfs f0, 0x100(r1) -/* 80175468 001723C8 D0 21 01 60 */ stfs f1, 0x160(r1) -/* 8017546C 001723CC D0 41 01 64 */ stfs f2, 0x164(r1) -/* 80175470 001723D0 D0 01 01 68 */ stfs f0, 0x168(r1) -/* 80175474 001723D4 88 1E 00 36 */ lbz r0, 0x36(r30) -/* 80175478 001723D8 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f -/* 8017547C 001723DC 41 82 00 28 */ beq lbl_801754A4 -/* 80175480 001723E0 EC 21 00 72 */ fmuls f1, f1, f1 -/* 80175484 001723E4 EC 02 00 B2 */ fmuls f0, f2, f2 -/* 80175488 001723E8 EC 21 00 2A */ fadds f1, f1, f0 -/* 8017548C 001723EC 48 1A 00 75 */ bl SqrtF__5CMathFf -/* 80175490 001723F0 C0 41 01 68 */ lfs f2, 0x168(r1) -/* 80175494 001723F4 C0 02 A1 78 */ lfs f0, lbl_805ABE98@sda21(r2) -/* 80175498 001723F8 D0 21 01 64 */ stfs f1, 0x164(r1) -/* 8017549C 001723FC D0 01 01 60 */ stfs f0, 0x160(r1) -/* 801754A0 00172400 D0 41 01 68 */ stfs f2, 0x168(r1) -lbl_801754A4: -/* 801754A4 00172404 88 1E 00 36 */ lbz r0, 0x36(r30) -/* 801754A8 00172408 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f -/* 801754AC 0017240C 41 82 00 94 */ beq lbl_80175540 -/* 801754B0 00172410 C0 41 02 20 */ lfs f2, 0x220(r1) -/* 801754B4 00172414 C0 21 02 00 */ lfs f1, 0x200(r1) -/* 801754B8 00172418 FF E0 10 50 */ fneg f31, f2 -/* 801754BC 0017241C C0 02 A1 7C */ lfs f0, lbl_805ABE9C@sda21(r2) -/* 801754C0 00172420 C0 61 02 10 */ lfs f3, 0x210(r1) -/* 801754C4 00172424 D0 21 00 E0 */ stfs f1, 0xe0(r1) -/* 801754C8 00172428 EC 3F 07 FC */ fnmsubs f1, f31, f31, f0 -/* 801754CC 0017242C D0 61 00 E4 */ stfs f3, 0xe4(r1) -/* 801754D0 00172430 D0 41 00 E8 */ stfs f2, 0xe8(r1) -/* 801754D4 00172434 48 1A 00 2D */ bl SqrtF__5CMathFf -/* 801754D8 00172438 C0 02 A1 78 */ lfs f0, lbl_805ABE98@sda21(r2) -/* 801754DC 0017243C 38 61 01 54 */ addi r3, r1, 0x154 -/* 801754E0 00172440 D0 21 01 58 */ stfs f1, 0x158(r1) -/* 801754E4 00172444 38 81 01 60 */ addi r4, r1, 0x160 -/* 801754E8 00172448 D0 01 01 54 */ stfs f0, 0x154(r1) -/* 801754EC 0017244C D3 E1 01 5C */ stfs f31, 0x15c(r1) -/* 801754F0 00172450 48 19 F1 41 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f -/* 801754F4 00172454 D0 21 00 34 */ stfs f1, 0x34(r1) -/* 801754F8 00172458 38 61 00 34 */ addi r3, r1, 0x34 -/* 801754FC 0017245C 38 9E 00 1C */ addi r4, r30, 0x1c -/* 80175500 00172460 4B F0 88 E1 */ bl "Min__5CMathFRCfRCf" -/* 80175504 00172464 C0 03 00 00 */ lfs f0, 0(r3) -/* 80175508 00172468 38 61 00 D4 */ addi r3, r1, 0xd4 -/* 8017550C 0017246C 38 81 01 54 */ addi r4, r1, 0x154 -/* 80175510 00172470 38 A1 01 60 */ addi r5, r1, 0x160 -/* 80175514 00172474 D0 01 00 34 */ stfs f0, 0x34(r1) -/* 80175518 00172478 38 C1 00 1C */ addi r6, r1, 0x1c -/* 8017551C 0017247C D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 80175520 00172480 48 19 F4 35 */ bl Slerp__9CVector3fFRC9CVector3fRC9CVector3fRC9CRelAngle -/* 80175524 00172484 C0 41 00 D4 */ lfs f2, 0xd4(r1) -/* 80175528 00172488 C0 21 00 D8 */ lfs f1, 0xd8(r1) -/* 8017552C 0017248C C0 01 00 DC */ lfs f0, 0xdc(r1) -/* 80175530 00172490 D0 41 01 60 */ stfs f2, 0x160(r1) -/* 80175534 00172494 D0 21 01 64 */ stfs f1, 0x164(r1) -/* 80175538 00172498 D0 01 01 68 */ stfs f0, 0x168(r1) -/* 8017553C 0017249C 48 00 00 60 */ b lbl_8017559C -lbl_80175540: -/* 80175540 001724A0 3C 60 80 5A */ lis r3, lbl_805A6724@ha -/* 80175544 001724A4 38 81 01 60 */ addi r4, r1, 0x160 -/* 80175548 001724A8 38 63 67 24 */ addi r3, r3, lbl_805A6724@l -/* 8017554C 001724AC 48 19 F0 E5 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f -/* 80175550 001724B0 D0 21 00 30 */ stfs f1, 0x30(r1) -/* 80175554 001724B4 38 61 00 30 */ addi r3, r1, 0x30 -/* 80175558 001724B8 38 9E 00 1C */ addi r4, r30, 0x1c -/* 8017555C 001724BC 4B F0 88 85 */ bl "Min__5CMathFRCfRCf" -/* 80175560 001724C0 C0 03 00 00 */ lfs f0, 0(r3) -/* 80175564 001724C4 3C 60 80 5A */ lis r3, lbl_805A6724@ha -/* 80175568 001724C8 38 83 67 24 */ addi r4, r3, lbl_805A6724@l -/* 8017556C 001724CC 38 A1 01 60 */ addi r5, r1, 0x160 -/* 80175570 001724D0 D0 01 00 30 */ stfs f0, 0x30(r1) -/* 80175574 001724D4 38 61 00 C8 */ addi r3, r1, 0xc8 -/* 80175578 001724D8 38 C1 00 18 */ addi r6, r1, 0x18 -/* 8017557C 001724DC D0 01 00 18 */ stfs f0, 0x18(r1) -/* 80175580 001724E0 48 19 F3 D5 */ bl Slerp__9CVector3fFRC9CVector3fRC9CVector3fRC9CRelAngle -/* 80175584 001724E4 C0 41 00 C8 */ lfs f2, 0xc8(r1) -/* 80175588 001724E8 C0 21 00 CC */ lfs f1, 0xcc(r1) -/* 8017558C 001724EC C0 01 00 D0 */ lfs f0, 0xd0(r1) -/* 80175590 001724F0 D0 41 01 60 */ stfs f2, 0x160(r1) -/* 80175594 001724F4 D0 21 01 64 */ stfs f1, 0x164(r1) -/* 80175598 001724F8 D0 01 01 68 */ stfs f0, 0x168(r1) -lbl_8017559C: -/* 8017559C 001724FC 3C 60 80 5A */ lis r3, lbl_805A6724@ha -/* 801755A0 00172500 7F C4 F3 78 */ mr r4, r30 -/* 801755A4 00172504 38 A3 67 24 */ addi r5, r3, lbl_805A6724@l -/* 801755A8 00172508 38 61 00 BC */ addi r3, r1, 0xbc -/* 801755AC 0017250C 48 19 BC B9 */ bl Transform__11CQuaternionCFRC9CVector3f -/* 801755B0 00172510 C0 41 00 BC */ lfs f2, 0xbc(r1) -/* 801755B4 00172514 38 61 01 48 */ addi r3, r1, 0x148 -/* 801755B8 00172518 C0 21 00 C0 */ lfs f1, 0xc0(r1) -/* 801755BC 0017251C 38 81 01 60 */ addi r4, r1, 0x160 -/* 801755C0 00172520 C0 01 00 C4 */ lfs f0, 0xc4(r1) -/* 801755C4 00172524 D0 41 01 48 */ stfs f2, 0x148(r1) -/* 801755C8 00172528 D0 21 01 4C */ stfs f1, 0x14c(r1) -/* 801755CC 0017252C D0 01 01 50 */ stfs f0, 0x150(r1) -/* 801755D0 00172530 48 19 F0 61 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f -/* 801755D4 00172534 C0 5E 00 18 */ lfs f2, 0x18(r30) -/* 801755D8 00172538 38 61 00 2C */ addi r3, r1, 0x2c -/* 801755DC 0017253C C0 1E 00 20 */ lfs f0, 0x20(r30) -/* 801755E0 00172540 38 81 00 28 */ addi r4, r1, 0x28 -/* 801755E4 00172544 D0 21 00 2C */ stfs f1, 0x2c(r1) -/* 801755E8 00172548 EC 02 00 32 */ fmuls f0, f2, f0 -/* 801755EC 0017254C D0 01 00 28 */ stfs f0, 0x28(r1) -/* 801755F0 00172550 4B F0 87 F1 */ bl "Min__5CMathFRCfRCf" -/* 801755F4 00172554 C3 E3 00 00 */ lfs f31, 0(r3) -/* 801755F8 00172558 C0 02 A1 80 */ lfs f0, lbl_805ABEA0@sda21(r2) -/* 801755FC 0017255C FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 80175600 00172560 40 81 00 98 */ ble lbl_80175698 -/* 80175604 00172564 C0 02 A1 84 */ lfs f0, lbl_805ABEA4@sda21(r2) -/* 80175608 00172568 38 61 00 94 */ addi r3, r1, 0x94 -/* 8017560C 0017256C 38 81 01 60 */ addi r4, r1, 0x160 -/* 80175610 00172570 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 80175614 00172574 48 19 E7 BD */ bl __ct__11CUnitVectorFRC9CVector3f -/* 80175618 00172578 3C 80 80 5A */ lis r4, lbl_805A6724@ha -/* 8017561C 0017257C 7C 79 1B 78 */ mr r25, r3 -/* 80175620 00172580 38 84 67 24 */ addi r4, r4, lbl_805A6724@l -/* 80175624 00172584 38 61 00 A0 */ addi r3, r1, 0xa0 -/* 80175628 00172588 48 19 E7 A9 */ bl __ct__11CUnitVectorFRC9CVector3f -/* 8017562C 0017258C 7C 64 1B 78 */ mr r4, r3 -/* 80175630 00172590 7F 25 CB 78 */ mr r5, r25 -/* 80175634 00172594 38 61 00 AC */ addi r3, r1, 0xac -/* 80175638 00172598 38 C1 00 14 */ addi r6, r1, 0x14 -/* 8017563C 0017259C 48 19 C0 59 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle -/* 80175640 001725A0 C0 01 00 2C */ lfs f0, 0x2c(r1) -/* 80175644 001725A4 7F C4 F3 78 */ mr r4, r30 -/* 80175648 001725A8 C0 81 00 AC */ lfs f4, 0xac(r1) -/* 8017564C 001725AC 38 61 00 84 */ addi r3, r1, 0x84 -/* 80175650 001725B0 EC 3F 00 24 */ fdivs f1, f31, f0 -/* 80175654 001725B4 C0 61 00 B0 */ lfs f3, 0xb0(r1) -/* 80175658 001725B8 C0 41 00 B4 */ lfs f2, 0xb4(r1) -/* 8017565C 001725BC 38 A1 01 38 */ addi r5, r1, 0x138 -/* 80175660 001725C0 C0 01 00 B8 */ lfs f0, 0xb8(r1) -/* 80175664 001725C4 D0 81 01 38 */ stfs f4, 0x138(r1) -/* 80175668 001725C8 D0 61 01 3C */ stfs f3, 0x13c(r1) -/* 8017566C 001725CC D0 41 01 40 */ stfs f2, 0x140(r1) -/* 80175670 001725D0 D0 01 01 44 */ stfs f0, 0x144(r1) -/* 80175674 001725D4 48 19 BF 45 */ bl SlerpLocal__11CQuaternionFRC11CQuaternionRC11CQuaternionf -/* 80175678 001725D8 C0 01 00 84 */ lfs f0, 0x84(r1) -/* 8017567C 001725DC D0 1E 00 00 */ stfs f0, 0(r30) -/* 80175680 001725E0 80 61 00 88 */ lwz r3, 0x88(r1) -/* 80175684 001725E4 80 01 00 8C */ lwz r0, 0x8c(r1) -/* 80175688 001725E8 90 7E 00 04 */ stw r3, 4(r30) -/* 8017568C 001725EC 90 1E 00 08 */ stw r0, 8(r30) -/* 80175690 001725F0 80 01 00 90 */ lwz r0, 0x90(r1) -/* 80175694 001725F4 90 1E 00 0C */ stw r0, 0xc(r30) -lbl_80175698: -/* 80175698 001725F8 88 1E 00 14 */ lbz r0, 0x14(r30) -/* 8017569C 001725FC 38 60 00 00 */ li r3, 0 -/* 801756A0 00172600 80 BD 01 08 */ lwz r5, 0x108(r29) -/* 801756A4 00172604 54 00 08 3C */ slwi r0, r0, 1 -/* 801756A8 00172608 C0 1E 00 00 */ lfs f0, 0(r30) -/* 801756AC 0017260C 7C 9D 02 14 */ add r4, r29, r0 -/* 801756B0 00172610 88 04 00 41 */ lbz r0, 0x41(r4) -/* 801756B4 00172614 54 00 2C F4 */ rlwinm r0, r0, 5, 0x13, 0x1a -/* 801756B8 00172618 7C A5 02 14 */ add r5, r5, r0 -/* 801756BC 0017261C D0 05 00 04 */ stfs f0, 4(r5) -/* 801756C0 00172620 80 9E 00 04 */ lwz r4, 4(r30) -/* 801756C4 00172624 80 1E 00 08 */ lwz r0, 8(r30) -/* 801756C8 00172628 90 85 00 08 */ stw r4, 8(r5) -/* 801756CC 0017262C 90 05 00 0C */ stw r0, 0xc(r5) -/* 801756D0 00172630 80 1E 00 0C */ lwz r0, 0xc(r30) -/* 801756D4 00172634 90 05 00 10 */ stw r0, 0x10(r5) -/* 801756D8 00172638 88 1F 02 20 */ lbz r0, 0x220(r31) -/* 801756DC 0017263C 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e -/* 801756E0 00172640 98 1F 02 20 */ stb r0, 0x220(r31) -/* 801756E4 00172644 48 00 02 08 */ b lbl_801758EC -lbl_801756E8: -/* 801756E8 00172648 88 1E 00 36 */ lbz r0, 0x36(r30) -/* 801756EC 0017264C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 801756F0 00172650 41 82 01 A0 */ beq lbl_80175890 -/* 801756F4 00172654 3C 60 80 5A */ lis r3, lbl_805A6724@ha -/* 801756F8 00172658 7F C4 F3 78 */ mr r4, r30 -/* 801756FC 0017265C 38 A3 67 24 */ addi r5, r3, lbl_805A6724@l -/* 80175700 00172660 38 61 00 78 */ addi r3, r1, 0x78 -/* 80175704 00172664 48 19 BB 61 */ bl Transform__11CQuaternionCFRC9CVector3f -/* 80175708 00172668 C0 41 00 78 */ lfs f2, 0x78(r1) -/* 8017570C 0017266C 3C 60 80 5A */ lis r3, lbl_805A6724@ha -/* 80175710 00172670 C0 21 00 7C */ lfs f1, 0x7c(r1) -/* 80175714 00172674 38 A3 67 24 */ addi r5, r3, lbl_805A6724@l -/* 80175718 00172678 C0 01 00 80 */ lfs f0, 0x80(r1) -/* 8017571C 0017267C 3B 9D 00 40 */ addi r28, r29, 0x40 -/* 80175720 00172680 D0 41 01 2C */ stfs f2, 0x12c(r1) -/* 80175724 00172684 38 61 00 6C */ addi r3, r1, 0x6c -/* 80175728 00172688 38 81 01 1C */ addi r4, r1, 0x11c -/* 8017572C 0017268C D0 21 01 30 */ stfs f1, 0x130(r1) -/* 80175730 00172690 D0 01 01 34 */ stfs f0, 0x134(r1) -/* 80175734 00172694 88 1E 00 14 */ lbz r0, 0x14(r30) -/* 80175738 00172698 80 FD 01 08 */ lwz r7, 0x108(r29) -/* 8017573C 0017269C 54 00 08 3C */ slwi r0, r0, 1 -/* 80175740 001726A0 7C DC 02 14 */ add r6, r28, r0 -/* 80175744 001726A4 88 06 00 01 */ lbz r0, 1(r6) -/* 80175748 001726A8 54 06 2C F4 */ rlwinm r6, r0, 5, 0x13, 0x1a -/* 8017574C 001726AC 38 C6 00 04 */ addi r6, r6, 4 -/* 80175750 001726B0 7C C7 32 14 */ add r6, r7, r6 -/* 80175754 001726B4 C0 26 00 04 */ lfs f1, 4(r6) -/* 80175758 001726B8 C0 46 00 08 */ lfs f2, 8(r6) -/* 8017575C 001726BC C0 66 00 0C */ lfs f3, 0xc(r6) -/* 80175760 001726C0 C0 06 00 00 */ lfs f0, 0(r6) -/* 80175764 001726C4 D0 01 01 1C */ stfs f0, 0x11c(r1) -/* 80175768 001726C8 D0 21 01 20 */ stfs f1, 0x120(r1) -/* 8017576C 001726CC D0 41 01 24 */ stfs f2, 0x124(r1) -/* 80175770 001726D0 D0 61 01 28 */ stfs f3, 0x128(r1) -/* 80175774 001726D4 48 19 BA F1 */ bl Transform__11CQuaternionCFRC9CVector3f -/* 80175778 001726D8 C0 41 00 6C */ lfs f2, 0x6c(r1) -/* 8017577C 001726DC 38 61 01 2C */ addi r3, r1, 0x12c -/* 80175780 001726E0 C0 21 00 70 */ lfs f1, 0x70(r1) -/* 80175784 001726E4 38 81 01 10 */ addi r4, r1, 0x110 -/* 80175788 001726E8 C0 01 00 74 */ lfs f0, 0x74(r1) -/* 8017578C 001726EC D0 41 01 10 */ stfs f2, 0x110(r1) -/* 80175790 001726F0 D0 21 01 14 */ stfs f1, 0x114(r1) -/* 80175794 001726F4 D0 01 01 18 */ stfs f0, 0x118(r1) -/* 80175798 001726F8 48 19 EE 99 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f -/* 8017579C 001726FC C0 5E 00 18 */ lfs f2, 0x18(r30) -/* 801757A0 00172700 38 61 00 24 */ addi r3, r1, 0x24 -/* 801757A4 00172704 C0 1E 00 20 */ lfs f0, 0x20(r30) -/* 801757A8 00172708 38 81 00 20 */ addi r4, r1, 0x20 -/* 801757AC 0017270C D0 21 00 24 */ stfs f1, 0x24(r1) -/* 801757B0 00172710 EC 02 00 32 */ fmuls f0, f2, f0 -/* 801757B4 00172714 D0 01 00 20 */ stfs f0, 0x20(r1) -/* 801757B8 00172718 4B F0 86 29 */ bl "Min__5CMathFRCfRCf" -/* 801757BC 0017271C C0 22 A1 88 */ lfs f1, lbl_805ABEA8@sda21(r2) -/* 801757C0 00172720 C0 01 00 20 */ lfs f0, 0x20(r1) -/* 801757C4 00172724 C0 43 00 00 */ lfs f2, 0(r3) -/* 801757C8 00172728 EC 01 00 32 */ fmuls f0, f1, f0 -/* 801757CC 0017272C FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 801757D0 00172730 40 81 00 8C */ ble lbl_8017585C -/* 801757D4 00172734 C0 01 00 24 */ lfs f0, 0x24(r1) -/* 801757D8 00172738 7F C4 F3 78 */ mr r4, r30 -/* 801757DC 0017273C 38 61 00 5C */ addi r3, r1, 0x5c -/* 801757E0 00172740 38 A1 01 1C */ addi r5, r1, 0x11c -/* 801757E4 00172744 EC 22 00 24 */ fdivs f1, f2, f0 -/* 801757E8 00172748 48 19 BD D1 */ bl SlerpLocal__11CQuaternionFRC11CQuaternionRC11CQuaternionf -/* 801757EC 0017274C C0 01 00 5C */ lfs f0, 0x5c(r1) -/* 801757F0 00172750 38 60 00 00 */ li r3, 0 -/* 801757F4 00172754 D0 1E 00 00 */ stfs f0, 0(r30) -/* 801757F8 00172758 80 81 00 60 */ lwz r4, 0x60(r1) -/* 801757FC 0017275C 80 01 00 64 */ lwz r0, 0x64(r1) -/* 80175800 00172760 90 9E 00 04 */ stw r4, 4(r30) -/* 80175804 00172764 90 1E 00 08 */ stw r0, 8(r30) -/* 80175808 00172768 80 01 00 68 */ lwz r0, 0x68(r1) -/* 8017580C 0017276C 90 1E 00 0C */ stw r0, 0xc(r30) -/* 80175810 00172770 88 1E 00 14 */ lbz r0, 0x14(r30) -/* 80175814 00172774 80 BD 01 08 */ lwz r5, 0x108(r29) -/* 80175818 00172778 54 04 08 3C */ slwi r4, r0, 1 -/* 8017581C 0017277C C0 1E 00 00 */ lfs f0, 0(r30) -/* 80175820 00172780 38 04 00 01 */ addi r0, r4, 1 -/* 80175824 00172784 7C 1C 00 AE */ lbzx r0, r28, r0 -/* 80175828 00172788 54 00 2C F4 */ rlwinm r0, r0, 5, 0x13, 0x1a -/* 8017582C 0017278C 7C A5 02 14 */ add r5, r5, r0 -/* 80175830 00172790 D0 05 00 04 */ stfs f0, 4(r5) -/* 80175834 00172794 80 9E 00 04 */ lwz r4, 4(r30) -/* 80175838 00172798 80 1E 00 08 */ lwz r0, 8(r30) -/* 8017583C 0017279C 90 85 00 08 */ stw r4, 8(r5) -/* 80175840 001727A0 90 05 00 0C */ stw r0, 0xc(r5) -/* 80175844 001727A4 80 1E 00 0C */ lwz r0, 0xc(r30) -/* 80175848 001727A8 90 05 00 10 */ stw r0, 0x10(r5) -/* 8017584C 001727AC 88 1F 02 20 */ lbz r0, 0x220(r31) -/* 80175850 001727B0 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e -/* 80175854 001727B4 98 1F 02 20 */ stb r0, 0x220(r31) -/* 80175858 001727B8 48 00 00 94 */ b lbl_801758EC -lbl_8017585C: -/* 8017585C 001727BC 88 1E 00 36 */ lbz r0, 0x36(r30) -/* 80175860 001727C0 38 60 00 00 */ li r3, 0 -/* 80175864 001727C4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 80175868 001727C8 98 1E 00 36 */ stb r0, 0x36(r30) -/* 8017586C 001727CC C0 01 01 1C */ lfs f0, 0x11c(r1) -/* 80175870 001727D0 D0 1E 00 00 */ stfs f0, 0(r30) -/* 80175874 001727D4 80 61 01 20 */ lwz r3, 0x120(r1) -/* 80175878 001727D8 80 01 01 24 */ lwz r0, 0x124(r1) -/* 8017587C 001727DC 90 7E 00 04 */ stw r3, 4(r30) -/* 80175880 001727E0 90 1E 00 08 */ stw r0, 8(r30) -/* 80175884 001727E4 80 01 01 28 */ lwz r0, 0x128(r1) -/* 80175888 001727E8 90 1E 00 0C */ stw r0, 0xc(r30) -/* 8017588C 001727EC 48 00 00 60 */ b lbl_801758EC -lbl_80175890: -/* 80175890 001727F0 88 1E 00 14 */ lbz r0, 0x14(r30) -/* 80175894 001727F4 80 9D 01 08 */ lwz r4, 0x108(r29) -/* 80175898 001727F8 54 00 08 3C */ slwi r0, r0, 1 -/* 8017589C 001727FC 7C 7D 02 14 */ add r3, r29, r0 -/* 801758A0 00172800 88 03 00 41 */ lbz r0, 0x41(r3) -/* 801758A4 00172804 54 03 2C F4 */ rlwinm r3, r0, 5, 0x13, 0x1a -/* 801758A8 00172808 38 63 00 04 */ addi r3, r3, 4 -/* 801758AC 0017280C 7C 64 1A 14 */ add r3, r4, r3 -/* 801758B0 00172810 C0 03 00 04 */ lfs f0, 4(r3) -/* 801758B4 00172814 C0 43 00 00 */ lfs f2, 0(r3) -/* 801758B8 00172818 D0 01 00 50 */ stfs f0, 0x50(r1) -/* 801758BC 0017281C C0 23 00 08 */ lfs f1, 8(r3) -/* 801758C0 00172820 C0 03 00 0C */ lfs f0, 0xc(r3) -/* 801758C4 00172824 D0 21 00 54 */ stfs f1, 0x54(r1) -/* 801758C8 00172828 80 01 00 50 */ lwz r0, 0x50(r1) -/* 801758CC 0017282C D0 5E 00 00 */ stfs f2, 0(r30) -/* 801758D0 00172830 80 61 00 54 */ lwz r3, 0x54(r1) -/* 801758D4 00172834 D0 01 00 58 */ stfs f0, 0x58(r1) -/* 801758D8 00172838 90 1E 00 04 */ stw r0, 4(r30) -/* 801758DC 0017283C 80 01 00 58 */ lwz r0, 0x58(r1) -/* 801758E0 00172840 90 7E 00 08 */ stw r3, 8(r30) -/* 801758E4 00172844 D0 41 00 4C */ stfs f2, 0x4c(r1) -/* 801758E8 00172848 90 1E 00 0C */ stw r0, 0xc(r30) -lbl_801758EC: -/* 801758EC 0017284C C0 02 A1 78 */ lfs f0, lbl_805ABE98@sda21(r2) -/* 801758F0 00172850 D0 1E 00 18 */ stfs f0, 0x18(r30) -/* 801758F4 00172854 E3 E1 02 58 */ psq_l f31, 600(r1), 0, qr0 -/* 801758F8 00172858 CB E1 02 50 */ lfd f31, 0x250(r1) -/* 801758FC 0017285C BB 01 02 30 */ lmw r24, 0x230(r1) -/* 80175900 00172860 80 01 02 64 */ lwz r0, 0x264(r1) -/* 80175904 00172864 7C 08 03 A6 */ mtlr r0 -/* 80175908 00172868 38 21 02 60 */ addi r1, r1, 0x260 -/* 8017590C 0017286C 4E 80 00 20 */ blr - -.global PreRender__13CBoneTrackingFRC13CStateManagerR9CAnimDataRC12CTransform4fRC9CVector3fRC15CBodyController -PreRender__13CBoneTrackingFRC13CStateManagerR9CAnimDataRC12CTransform4fRC9CVector3fRC15CBodyController: -/* 80175910 00172870 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80175914 00172874 7C 08 02 A6 */ mflr r0 -/* 80175918 00172878 90 01 00 34 */ stw r0, 0x34(r1) -/* 8017591C 0017287C BF 21 00 14 */ stmw r25, 0x14(r1) -/* 80175920 00172880 7C 9A 23 78 */ mr r26, r4 -/* 80175924 00172884 7C 79 1B 78 */ mr r25, r3 -/* 80175928 00172888 7D 1F 43 78 */ mr r31, r8 -/* 8017592C 0017288C 7C BB 2B 78 */ mr r27, r5 -/* 80175930 00172890 7C DC 33 78 */ mr r28, r6 -/* 80175934 00172894 7C FD 3B 78 */ mr r29, r7 -/* 80175938 00172898 38 61 00 08 */ addi r3, r1, 8 -/* 8017593C 0017289C 80 88 00 00 */ lwz r4, 0(r8) -/* 80175940 001728A0 4B F3 71 89 */ bl "__ct__16TCastToPtr<10CPatterned>FR7CEntity" -/* 80175944 001728A4 83 C3 00 04 */ lwz r30, 4(r3) -/* 80175948 001728A8 38 7F 02 A4 */ addi r3, r31, 0x2a4 -/* 8017594C 001728AC 3B E0 00 00 */ li r31, 0 -/* 80175950 001728B0 4B FB E6 79 */ bl ApplyHeadTracking__14CBodyStateInfoCFv -/* 80175954 001728B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80175958 001728B8 41 82 00 20 */ beq lbl_80175978 -/* 8017595C 001728BC 28 1E 00 00 */ cmplwi r30, 0 -/* 80175960 001728C0 41 82 00 14 */ beq lbl_80175974 -/* 80175964 001728C4 7F C3 F3 78 */ mr r3, r30 -/* 80175968 001728C8 4B F0 71 39 */ bl ApplyBoneTracking__10CPatternedCFv -/* 8017596C 001728CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80175970 001728D0 41 82 00 08 */ beq lbl_80175978 -lbl_80175974: -/* 80175974 001728D4 3B E0 00 01 */ li r31, 1 -lbl_80175978: -/* 80175978 001728D8 7F 23 CB 78 */ mr r3, r25 -/* 8017597C 001728DC 7F 44 D3 78 */ mr r4, r26 -/* 80175980 001728E0 7F 65 DB 78 */ mr r5, r27 -/* 80175984 001728E4 7F 86 E3 78 */ mr r6, r28 -/* 80175988 001728E8 7F A7 EB 78 */ mr r7, r29 -/* 8017598C 001728EC 7F E8 FB 78 */ mr r8, r31 -/* 80175990 001728F0 4B FF F8 A5 */ bl PreRender__13CBoneTrackingFRC13CStateManagerR9CAnimDataRC12CTransform4fRC9CVector3fb -/* 80175994 001728F4 BB 21 00 14 */ lmw r25, 0x14(r1) -/* 80175998 001728F8 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8017599C 001728FC 7C 08 03 A6 */ mtlr r0 -/* 801759A0 00172900 38 21 00 30 */ addi r1, r1, 0x30 -/* 801759A4 00172904 4E 80 00 20 */ blr - -.global Update__13CBoneTrackingFf -Update__13CBoneTrackingFf: -/* 801759A8 00172908 C0 03 00 18 */ lfs f0, 0x18(r3) -/* 801759AC 0017290C EC 00 08 2A */ fadds f0, f0, f1 -/* 801759B0 00172910 D0 03 00 18 */ stfs f0, 0x18(r3) -/* 801759B4 00172914 4E 80 00 20 */ blr - -.global "__ct__13CBoneTrackingFRC9CAnimDataRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>ffb" -"__ct__13CBoneTrackingFRC9CAnimDataRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>ffb": -/* 801759B8 00172918 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 801759BC 0017291C 7C 08 02 A6 */ mflr r0 -/* 801759C0 00172920 90 01 00 44 */ stw r0, 0x44(r1) -/* 801759C4 00172924 DB E1 00 30 */ stfd f31, 0x30(r1) -/* 801759C8 00172928 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 -/* 801759CC 0017292C DB C1 00 20 */ stfd f30, 0x20(r1) -/* 801759D0 00172930 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 -/* 801759D4 00172934 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 801759D8 00172938 93 C1 00 18 */ stw r30, 0x18(r1) -/* 801759DC 0017293C 3C E0 80 5A */ lis r7, lbl_805A6660@ha -/* 801759E0 00172940 C4 67 66 60 */ lfsu f3, lbl_805A6660@l(r7) -/* 801759E4 00172944 FF C0 08 90 */ fmr f30, f1 -/* 801759E8 00172948 7C 7F 1B 78 */ mr r31, r3 -/* 801759EC 0017294C D0 63 00 00 */ stfs f3, 0(r3) -/* 801759F0 00172950 FF E0 10 90 */ fmr f31, f2 -/* 801759F4 00172954 C0 02 A1 78 */ lfs f0, lbl_805ABE98@sda21(r2) -/* 801759F8 00172958 7C DE 33 78 */ mr r30, r6 -/* 801759FC 0017295C C0 27 00 04 */ lfs f1, 4(r7) -/* 80175A00 00172960 38 61 00 08 */ addi r3, r1, 8 -/* 80175A04 00172964 D0 3F 00 04 */ stfs f1, 4(r31) -/* 80175A08 00172968 C0 27 00 08 */ lfs f1, 8(r7) -/* 80175A0C 0017296C D0 3F 00 08 */ stfs f1, 8(r31) -/* 80175A10 00172970 C0 27 00 0C */ lfs f1, 0xc(r7) -/* 80175A14 00172974 D0 3F 00 0C */ stfs f1, 0xc(r31) -/* 80175A18 00172978 D0 1F 00 10 */ stfs f0, 0x10(r31) -/* 80175A1C 0017297C 80 84 00 D4 */ lwz r4, 0xd4(r4) -/* 80175A20 00172980 48 18 22 45 */ bl "GetSegIdFromString__15CCharLayoutInfoCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 80175A24 00172984 88 01 00 08 */ lbz r0, 8(r1) -/* 80175A28 00172988 39 00 00 00 */ li r8, 0 -/* 80175A2C 0017298C C0 02 A1 78 */ lfs f0, lbl_805ABE98@sda21(r2) -/* 80175A30 00172990 7F E3 FB 78 */ mr r3, r31 -/* 80175A34 00172994 98 1F 00 14 */ stb r0, 0x14(r31) -/* 80175A38 00172998 D0 1F 00 18 */ stfs f0, 0x18(r31) -/* 80175A3C 0017299C D3 DF 00 1C */ stfs f30, 0x1c(r31) -/* 80175A40 001729A0 D3 FF 00 20 */ stfs f31, 0x20(r31) -/* 80175A44 001729A4 99 1F 00 30 */ stb r8, 0x30(r31) -/* 80175A48 001729A8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80175A4C 001729AC B0 1F 00 34 */ sth r0, 0x34(r31) -/* 80175A50 001729B0 88 1F 00 36 */ lbz r0, 0x36(r31) -/* 80175A54 001729B4 51 00 3E 30 */ rlwimi r0, r8, 7, 0x18, 0x18 -/* 80175A58 001729B8 98 1F 00 36 */ stb r0, 0x36(r31) -/* 80175A5C 001729BC 88 1F 00 36 */ lbz r0, 0x36(r31) -/* 80175A60 001729C0 51 00 36 72 */ rlwimi r0, r8, 6, 0x19, 0x19 -/* 80175A64 001729C4 98 1F 00 36 */ stb r0, 0x36(r31) -/* 80175A68 001729C8 88 1F 00 36 */ lbz r0, 0x36(r31) -/* 80175A6C 001729CC 53 C0 2E B4 */ rlwimi r0, r30, 5, 0x1a, 0x1a -/* 80175A70 001729D0 98 1F 00 36 */ stb r0, 0x36(r31) -/* 80175A74 001729D4 88 1F 00 36 */ lbz r0, 0x36(r31) -/* 80175A78 001729D8 53 C0 1E F6 */ rlwimi r0, r30, 3, 0x1b, 0x1b -/* 80175A7C 001729DC 98 1F 00 36 */ stb r0, 0x36(r31) -/* 80175A80 001729E0 88 1F 00 36 */ lbz r0, 0x36(r31) -/* 80175A84 001729E4 53 C0 0F 38 */ rlwimi r0, r30, 1, 0x1c, 0x1c -/* 80175A88 001729E8 98 1F 00 36 */ stb r0, 0x36(r31) -/* 80175A8C 001729EC 88 1F 00 36 */ lbz r0, 0x36(r31) -/* 80175A90 001729F0 53 C0 FF 7A */ rlwimi r0, r30, 0x1f, 0x1d, 0x1d -/* 80175A94 001729F4 98 1F 00 36 */ stb r0, 0x36(r31) -/* 80175A98 001729F8 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 -/* 80175A9C 001729FC CB E1 00 30 */ lfd f31, 0x30(r1) -/* 80175AA0 00172A00 E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 -/* 80175AA4 00172A04 CB C1 00 20 */ lfd f30, 0x20(r1) -/* 80175AA8 00172A08 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80175AAC 00172A0C 80 01 00 44 */ lwz r0, 0x44(r1) -/* 80175AB0 00172A10 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 80175AB4 00172A14 7C 08 03 A6 */ mtlr r0 -/* 80175AB8 00172A18 38 21 00 40 */ addi r1, r1, 0x40 -/* 80175ABC 00172A1C 4E 80 00 20 */ blr - -.global Draw__20CFaceplateDecorationCFRC13CStateManager -Draw__20CFaceplateDecorationCFRC13CStateManager: -/* 80175AC0 00172A20 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 80175AC4 00172A24 7C 08 02 A6 */ mflr r0 -/* 80175AC8 00172A28 90 01 00 54 */ stw r0, 0x54(r1) -/* 80175ACC 00172A2C DB E1 00 40 */ stfd f31, 0x40(r1) -/* 80175AD0 00172A30 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 -/* 80175AD4 00172A34 DB C1 00 30 */ stfd f30, 0x30(r1) -/* 80175AD8 00172A38 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 -/* 80175ADC 00172A3C 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 80175AE0 00172A40 93 C1 00 28 */ stw r30, 0x28(r1) -/* 80175AE4 00172A44 88 03 00 0C */ lbz r0, 0xc(r3) -/* 80175AE8 00172A48 7C 9E 23 78 */ mr r30, r4 -/* 80175AEC 00172A4C 28 00 00 00 */ cmplwi r0, 0 -/* 80175AF0 00172A50 41 82 00 98 */ beq lbl_80175B88 -/* 80175AF4 00172A54 80 83 00 04 */ lwz r4, 4(r3) -/* 80175AF8 00172A58 80 04 00 10 */ lwz r0, 0x10(r4) -/* 80175AFC 00172A5C 28 00 00 00 */ cmplwi r0, 0 -/* 80175B00 00172A60 41 82 00 88 */ beq lbl_80175B88 -/* 80175B04 00172A64 3B E1 00 10 */ addi r31, r1, 0x10 -/* 80175B08 00172A68 38 83 00 04 */ addi r4, r3, 4 -/* 80175B0C 00172A6C 7F E3 FB 78 */ mr r3, r31 -/* 80175B10 00172A70 48 1C B3 99 */ bl __ct__6CTokenFRC6CToken -/* 80175B14 00172A74 7F E3 FB 78 */ mr r3, r31 -/* 80175B18 00172A78 48 1C B2 F5 */ bl GetObj__6CTokenFv -/* 80175B1C 00172A7C 83 E3 00 04 */ lwz r31, 4(r3) -/* 80175B20 00172A80 38 61 00 10 */ addi r3, r1, 0x10 -/* 80175B24 00172A84 38 80 00 00 */ li r4, 0 -/* 80175B28 00172A88 93 E1 00 18 */ stw r31, 0x18(r1) -/* 80175B2C 00172A8C 48 1C B3 15 */ bl __dt__6CTokenFv -/* 80175B30 00172A90 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 80175B34 00172A94 C0 22 A1 90 */ lfs f1, lbl_805ABEB0@sda21(r2) -/* 80175B38 00172A98 C3 C3 07 C0 */ lfs f30, 0x7c0(r3) -/* 80175B3C 00172A9C C0 02 A1 94 */ lfs f0, lbl_805ABEB4@sda21(r2) -/* 80175B40 00172AA0 EC 3E 08 28 */ fsubs f1, f30, f1 -/* 80175B44 00172AA4 FC 20 0A 10 */ fabs f1, f1 -/* 80175B48 00172AA8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80175B4C 00172AAC 41 80 00 3C */ blt lbl_80175B88 -/* 80175B50 00172AB0 48 1D 44 5D */ bl White__6CColorFv -/* 80175B54 00172AB4 C0 02 A1 98 */ lfs f0, lbl_805ABEB8@sda21(r2) -/* 80175B58 00172AB8 EF E0 07 B2 */ fmuls f31, f0, f30 -/* 80175B5C 00172ABC F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 -/* 80175B60 00172AC0 7F E6 FB 78 */ mr r6, r31 -/* 80175B64 00172AC4 80 E3 00 00 */ lwz r7, 0(r3) -/* 80175B68 00172AC8 38 A1 00 0C */ addi r5, r1, 0xc -/* 80175B6C 00172ACC 88 01 00 08 */ lbz r0, 8(r1) -/* 80175B70 00172AD0 38 60 00 05 */ li r3, 5 -/* 80175B74 00172AD4 50 E0 00 2E */ rlwimi r0, r7, 0, 0, 0x17 -/* 80175B78 00172AD8 C0 22 A1 9C */ lfs f1, lbl_805ABEBC@sda21(r2) -/* 80175B7C 00172ADC 90 01 00 0C */ stw r0, 0xc(r1) -/* 80175B80 00172AE0 38 80 00 03 */ li r4, 3 -/* 80175B84 00172AE4 4B F7 65 C5 */ bl DrawFilter__17CCameraFilterPassFQ217CCameraFilterPass11EFilterTypeQ217CCameraFilterPass12EFilterShapeRC6CColorPC8CTexturef -lbl_80175B88: -/* 80175B88 00172AE8 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 -/* 80175B8C 00172AEC CB E1 00 40 */ lfd f31, 0x40(r1) -/* 80175B90 00172AF0 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 -/* 80175B94 00172AF4 CB C1 00 30 */ lfd f30, 0x30(r1) -/* 80175B98 00172AF8 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 80175B9C 00172AFC 80 01 00 54 */ lwz r0, 0x54(r1) -/* 80175BA0 00172B00 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 80175BA4 00172B04 7C 08 03 A6 */ mtlr r0 -/* 80175BA8 00172B08 38 21 00 50 */ addi r1, r1, 0x50 -/* 80175BAC 00172B0C 4E 80 00 20 */ blr - -.global Update__20CFaceplateDecorationFfRC13CStateManager -Update__20CFaceplateDecorationFfRC13CStateManager: -/* 80175BB0 00172B10 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80175BB4 00172B14 7C 08 02 A6 */ mflr r0 -/* 80175BB8 00172B18 90 01 00 34 */ stw r0, 0x34(r1) -/* 80175BBC 00172B1C 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 80175BC0 00172B20 93 C1 00 28 */ stw r30, 0x28(r1) -/* 80175BC4 00172B24 7C 7E 1B 78 */ mr r30, r3 -/* 80175BC8 00172B28 80 84 08 4C */ lwz r4, 0x84c(r4) -/* 80175BCC 00172B2C 83 E4 07 AC */ lwz r31, 0x7ac(r4) -/* 80175BD0 00172B30 3C 1F 00 01 */ addis r0, r31, 1 -/* 80175BD4 00172B34 28 00 FF FF */ cmplwi r0, 0xffff -/* 80175BD8 00172B38 40 82 00 1C */ bne lbl_80175BF4 -/* 80175BDC 00172B3C 88 1E 00 0C */ lbz r0, 0xc(r30) -/* 80175BE0 00172B40 28 00 00 00 */ cmplwi r0, 0 -/* 80175BE4 00172B44 41 82 00 10 */ beq lbl_80175BF4 -/* 80175BE8 00172B48 38 7E 00 04 */ addi r3, r30, 4 -/* 80175BEC 00172B4C 48 1C B1 55 */ bl Unlock__6CTokenFv -/* 80175BF0 00172B50 93 FE 00 00 */ stw r31, 0(r30) -lbl_80175BF4: -/* 80175BF4 00172B54 80 1E 00 00 */ lwz r0, 0(r30) -/* 80175BF8 00172B58 7C 1F 00 40 */ cmplw r31, r0 -/* 80175BFC 00172B5C 41 82 00 B0 */ beq lbl_80175CAC -/* 80175C00 00172B60 3C 1F 00 01 */ addis r0, r31, 1 -/* 80175C04 00172B64 28 00 FF FF */ cmplwi r0, 0xffff -/* 80175C08 00172B68 41 82 00 A4 */ beq lbl_80175CAC -/* 80175C0C 00172B6C 93 FE 00 00 */ stw r31, 0(r30) -/* 80175C10 00172B70 3C 60 54 58 */ lis r3, 0x54585452@ha -/* 80175C14 00172B74 38 03 54 52 */ addi r0, r3, 0x54585452@l -/* 80175C18 00172B78 38 61 00 10 */ addi r3, r1, 0x10 -/* 80175C1C 00172B7C 80 DE 00 00 */ lwz r6, 0(r30) -/* 80175C20 00172B80 38 A1 00 18 */ addi r5, r1, 0x18 -/* 80175C24 00172B84 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) -/* 80175C28 00172B88 90 01 00 18 */ stw r0, 0x18(r1) -/* 80175C2C 00172B8C 90 C1 00 1C */ stw r6, 0x1c(r1) -/* 80175C30 00172B90 81 84 00 00 */ lwz r12, 0(r4) -/* 80175C34 00172B94 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 80175C38 00172B98 7D 89 03 A6 */ mtctr r12 -/* 80175C3C 00172B9C 4E 80 04 21 */ bctrl -/* 80175C40 00172BA0 38 61 00 08 */ addi r3, r1, 8 -/* 80175C44 00172BA4 38 81 00 10 */ addi r4, r1, 0x10 -/* 80175C48 00172BA8 48 1C B2 61 */ bl __ct__6CTokenFRC6CToken -/* 80175C4C 00172BAC 88 1E 00 0C */ lbz r0, 0xc(r30) -/* 80175C50 00172BB0 28 00 00 00 */ cmplwi r0, 0 -/* 80175C54 00172BB4 40 82 00 20 */ bne lbl_80175C74 -/* 80175C58 00172BB8 34 7E 00 04 */ addic. r3, r30, 4 -/* 80175C5C 00172BBC 41 82 00 0C */ beq lbl_80175C68 -/* 80175C60 00172BC0 38 81 00 08 */ addi r4, r1, 8 -/* 80175C64 00172BC4 48 1C B2 45 */ bl __ct__6CTokenFRC6CToken -lbl_80175C68: -/* 80175C68 00172BC8 38 00 00 01 */ li r0, 1 -/* 80175C6C 00172BCC 98 1E 00 0C */ stb r0, 0xc(r30) -/* 80175C70 00172BD0 48 00 00 10 */ b lbl_80175C80 -lbl_80175C74: -/* 80175C74 00172BD4 38 7E 00 04 */ addi r3, r30, 4 -/* 80175C78 00172BD8 38 81 00 08 */ addi r4, r1, 8 -/* 80175C7C 00172BDC 48 1C B0 49 */ bl __as__6CTokenFRC6CToken -lbl_80175C80: -/* 80175C80 00172BE0 38 61 00 08 */ addi r3, r1, 8 -/* 80175C84 00172BE4 38 80 00 00 */ li r4, 0 -/* 80175C88 00172BE8 48 1C B1 B9 */ bl __dt__6CTokenFv -/* 80175C8C 00172BEC 38 61 00 10 */ addi r3, r1, 0x10 -/* 80175C90 00172BF0 38 80 FF FF */ li r4, -1 -/* 80175C94 00172BF4 48 1C B1 AD */ bl __dt__6CTokenFv -/* 80175C98 00172BF8 88 1E 00 0C */ lbz r0, 0xc(r30) -/* 80175C9C 00172BFC 28 00 00 00 */ cmplwi r0, 0 -/* 80175CA0 00172C00 41 82 00 0C */ beq lbl_80175CAC -/* 80175CA4 00172C04 38 7E 00 04 */ addi r3, r30, 4 -/* 80175CA8 00172C08 48 1C B0 DD */ bl Lock__6CTokenFv -lbl_80175CAC: -/* 80175CAC 00172C0C 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80175CB0 00172C10 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 80175CB4 00172C14 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 80175CB8 00172C18 7C 08 03 A6 */ mtlr r0 -/* 80175CBC 00172C1C 38 21 00 30 */ addi r1, r1, 0x30 -/* 80175CC0 00172C20 4E 80 00 20 */ blr - -.global __ct__20CFaceplateDecorationFR13CStateManager -__ct__20CFaceplateDecorationFR13CStateManager: -/* 80175CC4 00172C24 38 00 FF FF */ li r0, -1 -/* 80175CC8 00172C28 90 03 00 00 */ stw r0, 0(r3) -/* 80175CCC 00172C2C 38 00 00 00 */ li r0, 0 -/* 80175CD0 00172C30 98 03 00 0C */ stb r0, 0xc(r3) -/* 80175CD4 00172C34 4E 80 00 20 */ blr - -.global __dt__8CBSCoverFv -__dt__8CBSCoverFv: -/* 80175CD8 00172C38 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80175CDC 00172C3C 7C 08 02 A6 */ mflr r0 -/* 80175CE0 00172C40 90 01 00 14 */ stw r0, 0x14(r1) -/* 80175CE4 00172C44 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80175CE8 00172C48 7C 7F 1B 79 */ or. r31, r3, r3 -/* 80175CEC 00172C4C 41 82 00 30 */ beq lbl_80175D1C -/* 80175CF0 00172C50 3C 60 80 3E */ lis r3, lbl_803E3E48@ha -/* 80175CF4 00172C54 38 03 3E 48 */ addi r0, r3, lbl_803E3E48@l -/* 80175CF8 00172C58 90 1F 00 00 */ stw r0, 0(r31) -/* 80175CFC 00172C5C 41 82 00 10 */ beq lbl_80175D0C -/* 80175D00 00172C60 3C 60 80 3E */ lis r3, lbl_803E1318@ha -/* 80175D04 00172C64 38 03 13 18 */ addi r0, r3, lbl_803E1318@l -/* 80175D08 00172C68 90 1F 00 00 */ stw r0, 0(r31) -lbl_80175D0C: -/* 80175D0C 00172C6C 7C 80 07 35 */ extsh. r0, r4 -/* 80175D10 00172C70 40 81 00 0C */ ble lbl_80175D1C -/* 80175D14 00172C74 7F E3 FB 78 */ mr r3, r31 -/* 80175D18 00172C78 48 19 FC 19 */ bl Free__7CMemoryFPCv -lbl_80175D1C: -/* 80175D1C 00172C7C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80175D20 00172C80 7F E3 FB 78 */ mr r3, r31 -/* 80175D24 00172C84 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80175D28 00172C88 7C 08 03 A6 */ mtlr r0 -/* 80175D2C 00172C8C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80175D30 00172C90 4E 80 00 20 */ blr - -.global IsMoving__8CBSCoverCFv -IsMoving__8CBSCoverCFv: -/* 80175D34 00172C94 38 60 00 01 */ li r3, 1 -/* 80175D38 00172C98 4E 80 00 20 */ blr - -.global ApplyHeadTracking__8CBSCoverCFv -ApplyHeadTracking__8CBSCoverCFv: -/* 80175D3C 00172C9C 38 60 00 00 */ li r3, 0 -/* 80175D40 00172CA0 4E 80 00 20 */ blr - -.global GetBodyStateTransition__8CBSCoverFfR15CBodyController -GetBodyStateTransition__8CBSCoverFfR15CBodyController: -/* 80175D44 00172CA4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80175D48 00172CA8 7C 08 02 A6 */ mflr r0 -/* 80175D4C 00172CAC 90 01 00 14 */ stw r0, 0x14(r1) -/* 80175D50 00172CB0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80175D54 00172CB4 3B E4 00 04 */ addi r31, r4, 4 -/* 80175D58 00172CB8 38 80 00 0F */ li r4, 0xf -/* 80175D5C 00172CBC 7F E3 FB 78 */ mr r3, r31 -/* 80175D60 00172CC0 4B FB B6 F1 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80175D64 00172CC4 28 03 00 00 */ cmplwi r3, 0 -/* 80175D68 00172CC8 41 82 00 0C */ beq lbl_80175D74 -/* 80175D6C 00172CCC 38 60 00 0E */ li r3, 0xe -/* 80175D70 00172CD0 48 00 00 74 */ b lbl_80175DE4 -lbl_80175D74: -/* 80175D74 00172CD4 7F E3 FB 78 */ mr r3, r31 -/* 80175D78 00172CD8 38 80 00 03 */ li r4, 3 -/* 80175D7C 00172CDC 4B FB B6 D5 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80175D80 00172CE0 28 03 00 00 */ cmplwi r3, 0 -/* 80175D84 00172CE4 41 82 00 0C */ beq lbl_80175D90 -/* 80175D88 00172CE8 38 60 00 00 */ li r3, 0 -/* 80175D8C 00172CEC 48 00 00 58 */ b lbl_80175DE4 -lbl_80175D90: -/* 80175D90 00172CF0 7F E3 FB 78 */ mr r3, r31 -/* 80175D94 00172CF4 38 80 00 09 */ li r4, 9 -/* 80175D98 00172CF8 4B FB B6 B9 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80175D9C 00172CFC 28 03 00 00 */ cmplwi r3, 0 -/* 80175DA0 00172D00 41 82 00 0C */ beq lbl_80175DAC -/* 80175DA4 00172D04 38 60 00 0A */ li r3, 0xa -/* 80175DA8 00172D08 48 00 00 3C */ b lbl_80175DE4 -lbl_80175DAC: -/* 80175DAC 00172D0C 7F E3 FB 78 */ mr r3, r31 -/* 80175DB0 00172D10 38 80 00 04 */ li r4, 4 -/* 80175DB4 00172D14 4B FB B6 9D */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80175DB8 00172D18 28 03 00 00 */ cmplwi r3, 0 -/* 80175DBC 00172D1C 41 82 00 0C */ beq lbl_80175DC8 -/* 80175DC0 00172D20 38 60 00 06 */ li r3, 6 -/* 80175DC4 00172D24 48 00 00 20 */ b lbl_80175DE4 -lbl_80175DC8: -/* 80175DC8 00172D28 7F E3 FB 78 */ mr r3, r31 -/* 80175DCC 00172D2C 38 80 00 16 */ li r4, 0x16 -/* 80175DD0 00172D30 4B FB B6 81 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80175DD4 00172D34 28 03 00 00 */ cmplwi r3, 0 -/* 80175DD8 00172D38 38 60 FF FF */ li r3, -1 -/* 80175DDC 00172D3C 41 82 00 08 */ beq lbl_80175DE4 -/* 80175DE0 00172D40 38 60 00 05 */ li r3, 5 -lbl_80175DE4: -/* 80175DE4 00172D44 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80175DE8 00172D48 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80175DEC 00172D4C 7C 08 03 A6 */ mtlr r0 -/* 80175DF0 00172D50 38 21 00 10 */ addi r1, r1, 0x10 -/* 80175DF4 00172D54 4E 80 00 20 */ blr - -.global Shutdown__8CBSCoverFR15CBodyController -Shutdown__8CBSCoverFR15CBodyController: -/* 80175DF8 00172D58 4E 80 00 20 */ blr - -.global UpdateBody__8CBSCoverFfR15CBodyControllerR13CStateManager -UpdateBody__8CBSCoverFfR15CBodyControllerR13CStateManager: -/* 80175DFC 00172D5C 94 21 FE 30 */ stwu r1, -0x1d0(r1) -/* 80175E00 00172D60 7C 08 02 A6 */ mflr r0 -/* 80175E04 00172D64 90 01 01 D4 */ stw r0, 0x1d4(r1) -/* 80175E08 00172D68 DB E1 01 C0 */ stfd f31, 0x1c0(r1) -/* 80175E0C 00172D6C F3 E1 01 C8 */ psq_st f31, 456(r1), 0, qr0 -/* 80175E10 00172D70 BF 61 01 AC */ stmw r27, 0x1ac(r1) -/* 80175E14 00172D74 FF E0 08 90 */ fmr f31, f1 -/* 80175E18 00172D78 7C 7C 1B 78 */ mr r28, r3 -/* 80175E1C 00172D7C 7C 9D 23 78 */ mr r29, r4 -/* 80175E20 00172D80 7C BE 2B 78 */ mr r30, r5 -/* 80175E24 00172D84 4B FF FF 21 */ bl GetBodyStateTransition__8CBSCoverFfR15CBodyController -/* 80175E28 00172D88 7C 7F 1B 78 */ mr r31, r3 -/* 80175E2C 00172D8C 2C 1F FF FF */ cmpwi r31, -1 -/* 80175E30 00172D90 40 82 03 E0 */ bne lbl_80176210 -/* 80175E34 00172D94 80 1C 00 04 */ lwz r0, 4(r28) -/* 80175E38 00172D98 2C 00 00 02 */ cmpwi r0, 2 -/* 80175E3C 00172D9C 41 82 00 24 */ beq lbl_80175E60 -/* 80175E40 00172DA0 40 80 00 14 */ bge lbl_80175E54 -/* 80175E44 00172DA4 2C 00 00 00 */ cmpwi r0, 0 -/* 80175E48 00172DA8 41 82 00 18 */ beq lbl_80175E60 -/* 80175E4C 00172DAC 40 80 01 34 */ bge lbl_80175F80 -/* 80175E50 00172DB0 48 00 03 C0 */ b lbl_80176210 -lbl_80175E54: -/* 80175E54 00172DB4 2C 00 00 04 */ cmpwi r0, 4 -/* 80175E58 00172DB8 40 80 03 B8 */ bge lbl_80176210 -/* 80175E5C 00172DBC 48 00 03 9C */ b lbl_801761F8 -lbl_80175E60: -/* 80175E60 00172DC0 88 1D 03 00 */ lbz r0, 0x300(r29) -/* 80175E64 00172DC4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80175E68 00172DC8 41 82 00 F8 */ beq lbl_80175F60 -/* 80175E6C 00172DCC 38 00 00 01 */ li r0, 1 -/* 80175E70 00172DD0 38 61 00 90 */ addi r3, r1, 0x90 -/* 80175E74 00172DD4 90 1C 00 04 */ stw r0, 4(r28) -/* 80175E78 00172DD8 83 7C 00 08 */ lwz r27, 8(r28) -/* 80175E7C 00172DDC 48 16 D2 01 */ bl NoParameter__12CPASAnimParmFv -/* 80175E80 00172DE0 38 61 00 98 */ addi r3, r1, 0x98 -/* 80175E84 00172DE4 48 16 D1 F9 */ bl NoParameter__12CPASAnimParmFv -/* 80175E88 00172DE8 38 61 00 A0 */ addi r3, r1, 0xa0 -/* 80175E8C 00172DEC 48 16 D1 F1 */ bl NoParameter__12CPASAnimParmFv -/* 80175E90 00172DF0 38 61 00 A8 */ addi r3, r1, 0xa8 -/* 80175E94 00172DF4 48 16 D1 E9 */ bl NoParameter__12CPASAnimParmFv -/* 80175E98 00172DF8 38 61 00 B0 */ addi r3, r1, 0xb0 -/* 80175E9C 00172DFC 48 16 D1 E1 */ bl NoParameter__12CPASAnimParmFv -/* 80175EA0 00172E00 38 61 00 B8 */ addi r3, r1, 0xb8 -/* 80175EA4 00172E04 48 16 D1 D9 */ bl NoParameter__12CPASAnimParmFv -/* 80175EA8 00172E08 7F 64 DB 78 */ mr r4, r27 -/* 80175EAC 00172E0C 38 61 00 C0 */ addi r3, r1, 0xc0 -/* 80175EB0 00172E10 48 16 D0 D5 */ bl FromEnum__12CPASAnimParmFi -/* 80175EB4 00172E14 80 9C 00 04 */ lwz r4, 4(r28) -/* 80175EB8 00172E18 38 61 00 C8 */ addi r3, r1, 0xc8 -/* 80175EBC 00172E1C 48 16 D0 C9 */ bl FromEnum__12CPASAnimParmFi -/* 80175EC0 00172E20 38 61 00 98 */ addi r3, r1, 0x98 -/* 80175EC4 00172E24 38 01 00 90 */ addi r0, r1, 0x90 -/* 80175EC8 00172E28 90 61 00 08 */ stw r3, 8(r1) -/* 80175ECC 00172E2C 38 61 01 60 */ addi r3, r1, 0x160 -/* 80175ED0 00172E30 38 A1 00 C8 */ addi r5, r1, 0xc8 -/* 80175ED4 00172E34 38 C1 00 C0 */ addi r6, r1, 0xc0 -/* 80175ED8 00172E38 90 01 00 0C */ stw r0, 0xc(r1) -/* 80175EDC 00172E3C 38 E1 00 B8 */ addi r7, r1, 0xb8 -/* 80175EE0 00172E40 39 01 00 B0 */ addi r8, r1, 0xb0 -/* 80175EE4 00172E44 39 21 00 A8 */ addi r9, r1, 0xa8 -/* 80175EE8 00172E48 39 41 00 A0 */ addi r10, r1, 0xa0 -/* 80175EEC 00172E4C 38 80 00 13 */ li r4, 0x13 -/* 80175EF0 00172E50 4B F0 73 D5 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm -/* 80175EF4 00172E54 80 BE 09 00 */ lwz r5, 0x900(r30) -/* 80175EF8 00172E58 7F A3 EB 78 */ mr r3, r29 -/* 80175EFC 00172E5C 38 81 01 60 */ addi r4, r1, 0x160 -/* 80175F00 00172E60 4B FC 43 FD */ bl LoopBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16 -/* 80175F04 00172E64 34 A1 01 64 */ addic. r5, r1, 0x164 -/* 80175F08 00172E68 41 82 00 58 */ beq lbl_80175F60 -/* 80175F0C 00172E6C 80 C5 00 00 */ lwz r6, 0(r5) -/* 80175F10 00172E70 38 60 00 00 */ li r3, 0 -/* 80175F14 00172E74 2C 06 00 00 */ cmpwi r6, 0 -/* 80175F18 00172E78 40 81 00 40 */ ble lbl_80175F58 -/* 80175F1C 00172E7C 2C 06 00 08 */ cmpwi r6, 8 -/* 80175F20 00172E80 38 86 FF F8 */ addi r4, r6, -8 -/* 80175F24 00172E84 40 81 00 20 */ ble lbl_80175F44 -/* 80175F28 00172E88 38 04 00 07 */ addi r0, r4, 7 -/* 80175F2C 00172E8C 54 00 E8 FE */ srwi r0, r0, 3 -/* 80175F30 00172E90 7C 09 03 A6 */ mtctr r0 -/* 80175F34 00172E94 2C 04 00 00 */ cmpwi r4, 0 -/* 80175F38 00172E98 40 81 00 0C */ ble lbl_80175F44 -lbl_80175F3C: -/* 80175F3C 00172E9C 38 63 00 08 */ addi r3, r3, 8 -/* 80175F40 00172EA0 42 00 FF FC */ bdnz lbl_80175F3C -lbl_80175F44: -/* 80175F44 00172EA4 7C 03 30 50 */ subf r0, r3, r6 -/* 80175F48 00172EA8 7C 09 03 A6 */ mtctr r0 -/* 80175F4C 00172EAC 7C 03 30 00 */ cmpw r3, r6 -/* 80175F50 00172EB0 40 80 00 08 */ bge lbl_80175F58 -lbl_80175F54: -/* 80175F54 00172EB4 42 00 00 00 */ bdnz lbl_80175F54 -lbl_80175F58: -/* 80175F58 00172EB8 38 00 00 00 */ li r0, 0 -/* 80175F5C 00172EBC 90 05 00 00 */ stw r0, 0(r5) -lbl_80175F60: -/* 80175F60 00172EC0 38 7D 00 04 */ addi r3, r29, 4 -/* 80175F64 00172EC4 38 80 00 0A */ li r4, 0xa -/* 80175F68 00172EC8 4B FB B4 E9 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80175F6C 00172ECC 28 03 00 00 */ cmplwi r3, 0 -/* 80175F70 00172ED0 41 82 02 A0 */ beq lbl_80176210 -/* 80175F74 00172ED4 38 00 00 01 */ li r0, 1 -/* 80175F78 00172ED8 98 1C 00 0C */ stb r0, 0xc(r28) -/* 80175F7C 00172EDC 48 00 02 94 */ b lbl_80176210 -lbl_80175F80: -/* 80175F80 00172EE0 3B 7D 00 04 */ addi r27, r29, 4 -/* 80175F84 00172EE4 C0 22 A1 A0 */ lfs f1, lbl_805ABEC0@sda21(r2) -/* 80175F88 00172EE8 C0 1D 00 1C */ lfs f0, 0x1c(r29) -/* 80175F8C 00172EEC 38 00 00 00 */ li r0, 0 -/* 80175F90 00172EF0 FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 80175F94 00172EF4 40 82 00 1C */ bne lbl_80175FB0 -/* 80175F98 00172EF8 C0 1B 00 1C */ lfs f0, 0x1c(r27) -/* 80175F9C 00172EFC FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 80175FA0 00172F00 40 82 00 10 */ bne lbl_80175FB0 -/* 80175FA4 00172F04 C0 1B 00 20 */ lfs f0, 0x20(r27) -/* 80175FA8 00172F08 FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 80175FAC 00172F0C 41 82 00 08 */ beq lbl_80175FB4 -lbl_80175FB0: -/* 80175FB0 00172F10 38 00 00 01 */ li r0, 1 -lbl_80175FB4: -/* 80175FB4 00172F14 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 80175FB8 00172F18 41 82 00 14 */ beq lbl_80175FCC -/* 80175FBC 00172F1C FC 20 F8 90 */ fmr f1, f31 -/* 80175FC0 00172F20 7F A3 EB 78 */ mr r3, r29 -/* 80175FC4 00172F24 38 9B 00 18 */ addi r4, r27, 0x18 -/* 80175FC8 00172F28 4B FC 46 DD */ bl FaceDirection__15CBodyControllerFRC9CVector3ff -lbl_80175FCC: -/* 80175FCC 00172F2C 7F 63 DB 78 */ mr r3, r27 -/* 80175FD0 00172F30 38 80 00 0A */ li r4, 0xa -/* 80175FD4 00172F34 4B FB B4 7D */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80175FD8 00172F38 28 03 00 00 */ cmplwi r3, 0 -/* 80175FDC 00172F3C 40 82 00 10 */ bne lbl_80175FEC -/* 80175FE0 00172F40 88 1C 00 0C */ lbz r0, 0xc(r28) -/* 80175FE4 00172F44 28 00 00 00 */ cmplwi r0, 0 -/* 80175FE8 00172F48 41 82 01 04 */ beq lbl_801760EC -lbl_80175FEC: -/* 80175FEC 00172F4C 38 60 00 00 */ li r3, 0 -/* 80175FF0 00172F50 38 00 00 03 */ li r0, 3 -/* 80175FF4 00172F54 98 7C 00 0C */ stb r3, 0xc(r28) -/* 80175FF8 00172F58 38 61 00 50 */ addi r3, r1, 0x50 -/* 80175FFC 00172F5C 90 1C 00 04 */ stw r0, 4(r28) -/* 80176000 00172F60 83 7C 00 08 */ lwz r27, 8(r28) -/* 80176004 00172F64 48 16 D0 79 */ bl NoParameter__12CPASAnimParmFv -/* 80176008 00172F68 38 61 00 58 */ addi r3, r1, 0x58 -/* 8017600C 00172F6C 48 16 D0 71 */ bl NoParameter__12CPASAnimParmFv -/* 80176010 00172F70 38 61 00 60 */ addi r3, r1, 0x60 -/* 80176014 00172F74 48 16 D0 69 */ bl NoParameter__12CPASAnimParmFv -/* 80176018 00172F78 38 61 00 68 */ addi r3, r1, 0x68 -/* 8017601C 00172F7C 48 16 D0 61 */ bl NoParameter__12CPASAnimParmFv -/* 80176020 00172F80 38 61 00 70 */ addi r3, r1, 0x70 -/* 80176024 00172F84 48 16 D0 59 */ bl NoParameter__12CPASAnimParmFv -/* 80176028 00172F88 38 61 00 78 */ addi r3, r1, 0x78 -/* 8017602C 00172F8C 48 16 D0 51 */ bl NoParameter__12CPASAnimParmFv -/* 80176030 00172F90 7F 64 DB 78 */ mr r4, r27 -/* 80176034 00172F94 38 61 00 80 */ addi r3, r1, 0x80 -/* 80176038 00172F98 48 16 CF 4D */ bl FromEnum__12CPASAnimParmFi -/* 8017603C 00172F9C 80 9C 00 04 */ lwz r4, 4(r28) -/* 80176040 00172FA0 38 61 00 88 */ addi r3, r1, 0x88 -/* 80176044 00172FA4 48 16 CF 41 */ bl FromEnum__12CPASAnimParmFi -/* 80176048 00172FA8 38 61 00 58 */ addi r3, r1, 0x58 -/* 8017604C 00172FAC 38 01 00 50 */ addi r0, r1, 0x50 -/* 80176050 00172FB0 90 61 00 08 */ stw r3, 8(r1) -/* 80176054 00172FB4 38 61 01 18 */ addi r3, r1, 0x118 -/* 80176058 00172FB8 38 A1 00 88 */ addi r5, r1, 0x88 -/* 8017605C 00172FBC 38 C1 00 80 */ addi r6, r1, 0x80 -/* 80176060 00172FC0 90 01 00 0C */ stw r0, 0xc(r1) -/* 80176064 00172FC4 38 E1 00 78 */ addi r7, r1, 0x78 -/* 80176068 00172FC8 39 01 00 70 */ addi r8, r1, 0x70 -/* 8017606C 00172FCC 39 21 00 68 */ addi r9, r1, 0x68 -/* 80176070 00172FD0 39 41 00 60 */ addi r10, r1, 0x60 -/* 80176074 00172FD4 38 80 00 13 */ li r4, 0x13 -/* 80176078 00172FD8 4B F0 72 4D */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm -/* 8017607C 00172FDC 80 BE 09 00 */ lwz r5, 0x900(r30) -/* 80176080 00172FE0 7F A3 EB 78 */ mr r3, r29 -/* 80176084 00172FE4 38 81 01 18 */ addi r4, r1, 0x118 -/* 80176088 00172FE8 4B FC 43 21 */ bl PlayBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16 -/* 8017608C 00172FEC 34 A1 01 1C */ addic. r5, r1, 0x11c -/* 80176090 00172FF0 41 82 01 80 */ beq lbl_80176210 -/* 80176094 00172FF4 80 C5 00 00 */ lwz r6, 0(r5) -/* 80176098 00172FF8 38 60 00 00 */ li r3, 0 -/* 8017609C 00172FFC 2C 06 00 00 */ cmpwi r6, 0 -/* 801760A0 00173000 40 81 00 40 */ ble lbl_801760E0 -/* 801760A4 00173004 2C 06 00 08 */ cmpwi r6, 8 -/* 801760A8 00173008 38 86 FF F8 */ addi r4, r6, -8 -/* 801760AC 0017300C 40 81 00 20 */ ble lbl_801760CC -/* 801760B0 00173010 38 04 00 07 */ addi r0, r4, 7 -/* 801760B4 00173014 54 00 E8 FE */ srwi r0, r0, 3 -/* 801760B8 00173018 7C 09 03 A6 */ mtctr r0 -/* 801760BC 0017301C 2C 04 00 00 */ cmpwi r4, 0 -/* 801760C0 00173020 40 81 00 0C */ ble lbl_801760CC -lbl_801760C4: -/* 801760C4 00173024 38 63 00 08 */ addi r3, r3, 8 -/* 801760C8 00173028 42 00 FF FC */ bdnz lbl_801760C4 -lbl_801760CC: -/* 801760CC 0017302C 7C 03 30 50 */ subf r0, r3, r6 -/* 801760D0 00173030 7C 09 03 A6 */ mtctr r0 -/* 801760D4 00173034 7C 03 30 00 */ cmpw r3, r6 -/* 801760D8 00173038 40 80 00 08 */ bge lbl_801760E0 -lbl_801760DC: -/* 801760DC 0017303C 42 00 00 00 */ bdnz lbl_801760DC -lbl_801760E0: -/* 801760E0 00173040 38 00 00 00 */ li r0, 0 -/* 801760E4 00173044 90 05 00 00 */ stw r0, 0(r5) -/* 801760E8 00173048 48 00 01 28 */ b lbl_80176210 -lbl_801760EC: -/* 801760EC 0017304C 7F 63 DB 78 */ mr r3, r27 -/* 801760F0 00173050 38 80 00 0B */ li r4, 0xb -/* 801760F4 00173054 4B FB B3 5D */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 801760F8 00173058 28 03 00 00 */ cmplwi r3, 0 -/* 801760FC 0017305C 41 82 01 14 */ beq lbl_80176210 -/* 80176100 00173060 38 00 00 02 */ li r0, 2 -/* 80176104 00173064 38 61 00 10 */ addi r3, r1, 0x10 -/* 80176108 00173068 90 1C 00 04 */ stw r0, 4(r28) -/* 8017610C 0017306C 83 7C 00 08 */ lwz r27, 8(r28) -/* 80176110 00173070 48 16 CF 6D */ bl NoParameter__12CPASAnimParmFv -/* 80176114 00173074 38 61 00 18 */ addi r3, r1, 0x18 -/* 80176118 00173078 48 16 CF 65 */ bl NoParameter__12CPASAnimParmFv -/* 8017611C 0017307C 38 61 00 20 */ addi r3, r1, 0x20 -/* 80176120 00173080 48 16 CF 5D */ bl NoParameter__12CPASAnimParmFv -/* 80176124 00173084 38 61 00 28 */ addi r3, r1, 0x28 -/* 80176128 00173088 48 16 CF 55 */ bl NoParameter__12CPASAnimParmFv -/* 8017612C 0017308C 38 61 00 30 */ addi r3, r1, 0x30 -/* 80176130 00173090 48 16 CF 4D */ bl NoParameter__12CPASAnimParmFv -/* 80176134 00173094 38 61 00 38 */ addi r3, r1, 0x38 -/* 80176138 00173098 48 16 CF 45 */ bl NoParameter__12CPASAnimParmFv -/* 8017613C 0017309C 7F 64 DB 78 */ mr r4, r27 -/* 80176140 001730A0 38 61 00 40 */ addi r3, r1, 0x40 -/* 80176144 001730A4 48 16 CE 41 */ bl FromEnum__12CPASAnimParmFi -/* 80176148 001730A8 80 9C 00 04 */ lwz r4, 4(r28) -/* 8017614C 001730AC 38 61 00 48 */ addi r3, r1, 0x48 -/* 80176150 001730B0 48 16 CE 35 */ bl FromEnum__12CPASAnimParmFi -/* 80176154 001730B4 38 61 00 18 */ addi r3, r1, 0x18 -/* 80176158 001730B8 38 01 00 10 */ addi r0, r1, 0x10 -/* 8017615C 001730BC 90 61 00 08 */ stw r3, 8(r1) -/* 80176160 001730C0 38 61 00 D0 */ addi r3, r1, 0xd0 -/* 80176164 001730C4 38 A1 00 48 */ addi r5, r1, 0x48 -/* 80176168 001730C8 38 C1 00 40 */ addi r6, r1, 0x40 -/* 8017616C 001730CC 90 01 00 0C */ stw r0, 0xc(r1) -/* 80176170 001730D0 38 E1 00 38 */ addi r7, r1, 0x38 -/* 80176174 001730D4 39 01 00 30 */ addi r8, r1, 0x30 -/* 80176178 001730D8 39 21 00 28 */ addi r9, r1, 0x28 -/* 8017617C 001730DC 39 41 00 20 */ addi r10, r1, 0x20 -/* 80176180 001730E0 38 80 00 13 */ li r4, 0x13 -/* 80176184 001730E4 4B F0 71 41 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm -/* 80176188 001730E8 80 BE 09 00 */ lwz r5, 0x900(r30) -/* 8017618C 001730EC 7F A3 EB 78 */ mr r3, r29 -/* 80176190 001730F0 38 81 00 D0 */ addi r4, r1, 0xd0 -/* 80176194 001730F4 4B FC 42 15 */ bl PlayBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16 -/* 80176198 001730F8 34 A1 00 D4 */ addic. r5, r1, 0xd4 -/* 8017619C 001730FC 41 82 00 74 */ beq lbl_80176210 -/* 801761A0 00173100 80 C5 00 00 */ lwz r6, 0(r5) -/* 801761A4 00173104 38 60 00 00 */ li r3, 0 -/* 801761A8 00173108 2C 06 00 00 */ cmpwi r6, 0 -/* 801761AC 0017310C 40 81 00 40 */ ble lbl_801761EC -/* 801761B0 00173110 2C 06 00 08 */ cmpwi r6, 8 -/* 801761B4 00173114 38 86 FF F8 */ addi r4, r6, -8 -/* 801761B8 00173118 40 81 00 20 */ ble lbl_801761D8 -/* 801761BC 0017311C 38 04 00 07 */ addi r0, r4, 7 -/* 801761C0 00173120 54 00 E8 FE */ srwi r0, r0, 3 -/* 801761C4 00173124 7C 09 03 A6 */ mtctr r0 -/* 801761C8 00173128 2C 04 00 00 */ cmpwi r4, 0 -/* 801761CC 0017312C 40 81 00 0C */ ble lbl_801761D8 -lbl_801761D0: -/* 801761D0 00173130 38 63 00 08 */ addi r3, r3, 8 -/* 801761D4 00173134 42 00 FF FC */ bdnz lbl_801761D0 -lbl_801761D8: -/* 801761D8 00173138 7C 03 30 50 */ subf r0, r3, r6 -/* 801761DC 0017313C 7C 09 03 A6 */ mtctr r0 -/* 801761E0 00173140 7C 03 30 00 */ cmpw r3, r6 -/* 801761E4 00173144 40 80 00 08 */ bge lbl_801761EC -lbl_801761E8: -/* 801761E8 00173148 42 00 00 00 */ bdnz lbl_801761E8 -lbl_801761EC: -/* 801761EC 0017314C 38 00 00 00 */ li r0, 0 -/* 801761F0 00173150 90 05 00 00 */ stw r0, 0(r5) -/* 801761F4 00173154 48 00 00 1C */ b lbl_80176210 -lbl_801761F8: -/* 801761F8 00173158 88 1D 03 00 */ lbz r0, 0x300(r29) -/* 801761FC 0017315C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80176200 00173160 41 82 00 10 */ beq lbl_80176210 -/* 80176204 00173164 38 00 FF FF */ li r0, -1 -/* 80176208 00173168 3B E0 00 05 */ li r31, 5 -/* 8017620C 0017316C 90 1C 00 04 */ stw r0, 4(r28) -lbl_80176210: -/* 80176210 00173170 7F E3 FB 78 */ mr r3, r31 -/* 80176214 00173174 E3 E1 01 C8 */ psq_l f31, 456(r1), 0, qr0 -/* 80176218 00173178 CB E1 01 C0 */ lfd f31, 0x1c0(r1) -/* 8017621C 0017317C BB 61 01 AC */ lmw r27, 0x1ac(r1) -/* 80176220 00173180 80 01 01 D4 */ lwz r0, 0x1d4(r1) -/* 80176224 00173184 7C 08 03 A6 */ mtlr r0 -/* 80176228 00173188 38 21 01 D0 */ addi r1, r1, 0x1d0 -/* 8017622C 0017318C 4E 80 00 20 */ blr - -.global Start__8CBSCoverFR15CBodyControllerR13CStateManager -Start__8CBSCoverFR15CBodyControllerR13CStateManager: -/* 80176230 00173190 94 21 FE D0 */ stwu r1, -0x130(r1) -/* 80176234 00173194 7C 08 02 A6 */ mflr r0 -/* 80176238 00173198 90 01 01 34 */ stw r0, 0x134(r1) -/* 8017623C 0017319C BF 61 01 1C */ stmw r27, 0x11c(r1) -/* 80176240 001731A0 7C 9F 23 78 */ mr r31, r4 -/* 80176244 001731A4 7C 7E 1B 78 */ mr r30, r3 -/* 80176248 001731A8 7C BB 2B 78 */ mr r27, r5 -/* 8017624C 001731AC 38 80 00 14 */ li r4, 0x14 -/* 80176250 001731B0 38 7F 00 04 */ addi r3, r31, 4 -/* 80176254 001731B4 4B FB B1 FD */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80176258 001731B8 7C 7D 1B 78 */ mr r29, r3 -/* 8017625C 001731BC 38 00 00 00 */ li r0, 0 -/* 80176260 001731C0 80 83 00 08 */ lwz r4, 8(r3) -/* 80176264 001731C4 38 61 00 1C */ addi r3, r1, 0x1c -/* 80176268 001731C8 90 9E 00 08 */ stw r4, 8(r30) -/* 8017626C 001731CC 90 1E 00 04 */ stw r0, 4(r30) -/* 80176270 001731D0 83 9E 00 08 */ lwz r28, 8(r30) -/* 80176274 001731D4 48 16 CE 09 */ bl NoParameter__12CPASAnimParmFv -/* 80176278 001731D8 38 61 00 24 */ addi r3, r1, 0x24 -/* 8017627C 001731DC 48 16 CE 01 */ bl NoParameter__12CPASAnimParmFv -/* 80176280 001731E0 38 61 00 2C */ addi r3, r1, 0x2c -/* 80176284 001731E4 48 16 CD F9 */ bl NoParameter__12CPASAnimParmFv -/* 80176288 001731E8 38 61 00 34 */ addi r3, r1, 0x34 -/* 8017628C 001731EC 48 16 CD F1 */ bl NoParameter__12CPASAnimParmFv -/* 80176290 001731F0 38 61 00 3C */ addi r3, r1, 0x3c -/* 80176294 001731F4 48 16 CD E9 */ bl NoParameter__12CPASAnimParmFv -/* 80176298 001731F8 38 61 00 44 */ addi r3, r1, 0x44 -/* 8017629C 001731FC 48 16 CD E1 */ bl NoParameter__12CPASAnimParmFv -/* 801762A0 00173200 7F 84 E3 78 */ mr r4, r28 -/* 801762A4 00173204 38 61 00 4C */ addi r3, r1, 0x4c -/* 801762A8 00173208 48 16 CC DD */ bl FromEnum__12CPASAnimParmFi -/* 801762AC 0017320C 80 9E 00 04 */ lwz r4, 4(r30) -/* 801762B0 00173210 38 61 00 54 */ addi r3, r1, 0x54 -/* 801762B4 00173214 48 16 CC D1 */ bl FromEnum__12CPASAnimParmFi -/* 801762B8 00173218 38 61 00 24 */ addi r3, r1, 0x24 -/* 801762BC 0017321C 38 01 00 1C */ addi r0, r1, 0x1c -/* 801762C0 00173220 90 61 00 08 */ stw r3, 8(r1) -/* 801762C4 00173224 38 61 00 C8 */ addi r3, r1, 0xc8 -/* 801762C8 00173228 38 A1 00 54 */ addi r5, r1, 0x54 -/* 801762CC 0017322C 38 C1 00 4C */ addi r6, r1, 0x4c -/* 801762D0 00173230 90 01 00 0C */ stw r0, 0xc(r1) -/* 801762D4 00173234 38 E1 00 44 */ addi r7, r1, 0x44 -/* 801762D8 00173238 39 01 00 3C */ addi r8, r1, 0x3c -/* 801762DC 0017323C 39 21 00 34 */ addi r9, r1, 0x34 -/* 801762E0 00173240 39 41 00 2C */ addi r10, r1, 0x2c -/* 801762E4 00173244 38 80 00 13 */ li r4, 0x13 -/* 801762E8 00173248 4B F0 6F DD */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm -/* 801762EC 0017324C 7F E3 FB 78 */ mr r3, r31 -/* 801762F0 00173250 4B FC 41 65 */ bl GetPASDatabase__15CBodyControllerCFv -/* 801762F4 00173254 80 DB 09 00 */ lwz r6, 0x900(r27) -/* 801762F8 00173258 7C 64 1B 78 */ mr r4, r3 -/* 801762FC 0017325C 38 61 00 14 */ addi r3, r1, 0x14 -/* 80176300 00173260 38 A1 00 C8 */ addi r5, r1, 0xc8 -/* 80176304 00173264 38 E0 FF FF */ li r7, -1 -/* 80176308 00173268 48 16 ED 59 */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i -/* 8017630C 0017326C 80 9F 00 00 */ lwz r4, 0(r31) -/* 80176310 00173270 3C 60 80 5A */ lis r3, lbl_805A6724@ha -/* 80176314 00173274 38 E3 67 24 */ addi r7, r3, lbl_805A6724@l -/* 80176318 00173278 C0 62 A1 A4 */ lfs f3, lbl_805ABEC4@sda21(r2) -/* 8017631C 0017327C 81 04 00 64 */ lwz r8, 0x64(r4) -/* 80176320 00173280 38 61 00 74 */ addi r3, r1, 0x74 -/* 80176324 00173284 C0 47 00 00 */ lfs f2, 0(r7) -/* 80176328 00173288 38 81 00 68 */ addi r4, r1, 0x68 -/* 8017632C 0017328C C0 88 00 04 */ lfs f4, 4(r8) -/* 80176330 00173290 38 A1 00 5C */ addi r5, r1, 0x5c -/* 80176334 00173294 C0 A8 00 08 */ lfs f5, 8(r8) -/* 80176338 00173298 38 C1 00 10 */ addi r6, r1, 0x10 -/* 8017633C 0017329C C0 08 00 00 */ lfs f0, 0(r8) -/* 80176340 001732A0 C0 27 00 04 */ lfs f1, 4(r7) -/* 80176344 001732A4 D0 01 00 94 */ stfs f0, 0x94(r1) -/* 80176348 001732A8 C0 07 00 08 */ lfs f0, 8(r7) -/* 8017634C 001732AC D0 81 00 98 */ stfs f4, 0x98(r1) -/* 80176350 001732B0 83 81 00 18 */ lwz r28, 0x18(r1) -/* 80176354 001732B4 D0 A1 00 9C */ stfs f5, 0x9c(r1) -/* 80176358 001732B8 D0 61 00 10 */ stfs f3, 0x10(r1) -/* 8017635C 001732BC C0 7D 00 18 */ lfs f3, 0x18(r29) -/* 80176360 001732C0 D0 61 00 5C */ stfs f3, 0x5c(r1) -/* 80176364 001732C4 C0 7D 00 1C */ lfs f3, 0x1c(r29) -/* 80176368 001732C8 D0 61 00 60 */ stfs f3, 0x60(r1) -/* 8017636C 001732CC C0 7D 00 20 */ lfs f3, 0x20(r29) -/* 80176370 001732D0 D0 61 00 64 */ stfs f3, 0x64(r1) -/* 80176374 001732D4 D0 41 00 68 */ stfs f2, 0x68(r1) -/* 80176378 001732D8 D0 21 00 6C */ stfs f1, 0x6c(r1) -/* 8017637C 001732DC D0 01 00 70 */ stfs f0, 0x70(r1) -/* 80176380 001732E0 48 19 B3 15 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle -/* 80176384 001732E4 C0 01 00 74 */ lfs f0, 0x74(r1) -/* 80176388 001732E8 39 1D 00 0C */ addi r8, r29, 0xc -/* 8017638C 001732EC C0 61 00 78 */ lfs f3, 0x78(r1) -/* 80176390 001732F0 38 E1 00 84 */ addi r7, r1, 0x84 -/* 80176394 001732F4 C0 41 00 7C */ lfs f2, 0x7c(r1) -/* 80176398 001732F8 38 01 00 94 */ addi r0, r1, 0x94 -/* 8017639C 001732FC C0 21 00 80 */ lfs f1, 0x80(r1) -/* 801763A0 00173300 39 60 FF FF */ li r11, -1 -/* 801763A4 00173304 D0 01 00 84 */ stfs f0, 0x84(r1) -/* 801763A8 00173308 39 40 00 01 */ li r10, 1 -/* 801763AC 0017330C C0 02 A1 A8 */ lfs f0, lbl_805ABEC8@sda21(r2) -/* 801763B0 00173310 39 20 00 00 */ li r9, 0 -/* 801763B4 00173314 D0 61 00 88 */ stfs f3, 0x88(r1) -/* 801763B8 00173318 7F E3 FB 78 */ mr r3, r31 -/* 801763BC 0017331C 38 81 00 A0 */ addi r4, r1, 0xa0 -/* 801763C0 00173320 38 A0 00 00 */ li r5, 0 -/* 801763C4 00173324 D0 41 00 8C */ stfs f2, 0x8c(r1) -/* 801763C8 00173328 38 C0 00 00 */ li r6, 0 -/* 801763CC 0017332C D0 21 00 90 */ stfs f1, 0x90(r1) -/* 801763D0 00173330 81 9F 00 00 */ lwz r12, 0(r31) -/* 801763D4 00173334 39 8C 00 34 */ addi r12, r12, 0x34 -/* 801763D8 00173338 93 81 00 A0 */ stw r28, 0xa0(r1) -/* 801763DC 0017333C 91 61 00 A4 */ stw r11, 0xa4(r1) -/* 801763E0 00173340 D0 01 00 A8 */ stfs f0, 0xa8(r1) -/* 801763E4 00173344 99 41 00 AC */ stb r10, 0xac(r1) -/* 801763E8 00173348 91 21 00 B0 */ stw r9, 0xb0(r1) -/* 801763EC 0017334C 91 01 00 B4 */ stw r8, 0xb4(r1) -/* 801763F0 00173350 99 21 00 B8 */ stb r9, 0xb8(r1) -/* 801763F4 00173354 90 E1 00 BC */ stw r7, 0xbc(r1) -/* 801763F8 00173358 91 81 00 C0 */ stw r12, 0xc0(r1) -/* 801763FC 0017335C 90 01 00 C4 */ stw r0, 0xc4(r1) -/* 80176400 00173360 4B FC 45 1D */ bl SetCurrentAnimation__15CBodyControllerFRC18CAnimPlaybackParmsbb -/* 80176404 00173364 38 00 00 00 */ li r0, 0 -/* 80176408 00173368 38 7F 00 04 */ addi r3, r31, 4 -/* 8017640C 0017336C 98 1E 00 0C */ stb r0, 0xc(r30) -/* 80176410 00173370 38 80 00 0A */ li r4, 0xa -/* 80176414 00173374 4B FB B0 3D */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 80176418 00173378 28 03 00 00 */ cmplwi r3, 0 -/* 8017641C 0017337C 41 82 00 0C */ beq lbl_80176428 -/* 80176420 00173380 38 00 00 01 */ li r0, 1 -/* 80176424 00173384 98 1E 00 0C */ stb r0, 0xc(r30) -lbl_80176428: -/* 80176428 00173388 34 A1 00 CC */ addic. r5, r1, 0xcc -/* 8017642C 0017338C 41 82 00 58 */ beq lbl_80176484 -/* 80176430 00173390 80 C5 00 00 */ lwz r6, 0(r5) -/* 80176434 00173394 38 60 00 00 */ li r3, 0 -/* 80176438 00173398 2C 06 00 00 */ cmpwi r6, 0 -/* 8017643C 0017339C 40 81 00 40 */ ble lbl_8017647C -/* 80176440 001733A0 2C 06 00 08 */ cmpwi r6, 8 -/* 80176444 001733A4 38 86 FF F8 */ addi r4, r6, -8 -/* 80176448 001733A8 40 81 00 20 */ ble lbl_80176468 -/* 8017644C 001733AC 38 04 00 07 */ addi r0, r4, 7 -/* 80176450 001733B0 54 00 E8 FE */ srwi r0, r0, 3 -/* 80176454 001733B4 7C 09 03 A6 */ mtctr r0 -/* 80176458 001733B8 2C 04 00 00 */ cmpwi r4, 0 -/* 8017645C 001733BC 40 81 00 0C */ ble lbl_80176468 -lbl_80176460: -/* 80176460 001733C0 38 63 00 08 */ addi r3, r3, 8 -/* 80176464 001733C4 42 00 FF FC */ bdnz lbl_80176460 -lbl_80176468: -/* 80176468 001733C8 7C 03 30 50 */ subf r0, r3, r6 -/* 8017646C 001733CC 7C 09 03 A6 */ mtctr r0 -/* 80176470 001733D0 7C 03 30 00 */ cmpw r3, r6 -/* 80176474 001733D4 40 80 00 08 */ bge lbl_8017647C -lbl_80176478: -/* 80176478 001733D8 42 00 00 00 */ bdnz lbl_80176478 -lbl_8017647C: -/* 8017647C 001733DC 38 00 00 00 */ li r0, 0 -/* 80176480 001733E0 90 05 00 00 */ stw r0, 0(r5) -lbl_80176484: -/* 80176484 001733E4 BB 61 01 1C */ lmw r27, 0x11c(r1) -/* 80176488 001733E8 80 01 01 34 */ lwz r0, 0x134(r1) -/* 8017648C 001733EC 7C 08 03 A6 */ mtlr r0 -/* 80176490 001733F0 38 21 01 30 */ addi r1, r1, 0x130 -/* 80176494 001733F4 4E 80 00 20 */ blr - -.global __ct__8CBSCoverFv -__ct__8CBSCoverFv: -/* 80176498 001733F8 3C C0 80 3E */ lis r6, lbl_803E1318@ha -/* 8017649C 001733FC 3C A0 80 3E */ lis r5, lbl_803E3E48@ha -/* 801764A0 00173400 38 06 13 18 */ addi r0, r6, lbl_803E1318@l -/* 801764A4 00173404 38 80 FF FF */ li r4, -1 -/* 801764A8 00173408 90 03 00 00 */ stw r0, 0(r3) -/* 801764AC 0017340C 38 A5 3E 48 */ addi r5, r5, lbl_803E3E48@l -/* 801764B0 00173410 38 00 00 00 */ li r0, 0 -/* 801764B4 00173414 90 A3 00 00 */ stw r5, 0(r3) -/* 801764B8 00173418 90 83 00 04 */ stw r4, 4(r3) -/* 801764BC 0017341C 90 83 00 08 */ stw r4, 8(r3) -/* 801764C0 00173420 98 03 00 0C */ stb r0, 0xc(r3) -/* 801764C4 00173424 4E 80 00 20 */ blr - -.global CanShoot__8CBSCoverCFv -CanShoot__8CBSCoverCFv: -/* 801764C8 00173428 80 03 00 04 */ lwz r0, 4(r3) -/* 801764CC 0017342C 20 00 00 02 */ subfic r0, r0, 2 -/* 801764D0 00173430 7C 00 00 34 */ cntlzw r0, r0 -/* 801764D4 00173434 54 03 D9 7E */ srwi r3, r0, 5 -/* 801764D8 00173438 4E 80 00 20 */ blr - -.global AcceptScriptMsg__18CScriptBallTriggerF20EScriptObjectMessage9TUniqueIdR13CStateManager -AcceptScriptMsg__18CScriptBallTriggerF20EScriptObjectMessage9TUniqueIdR13CStateManager: -/* 801764DC 0017343C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 801764E0 00173440 7C 08 02 A6 */ mflr r0 -/* 801764E4 00173444 90 01 00 24 */ stw r0, 0x24(r1) -/* 801764E8 00173448 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 801764EC 0017344C 7C DF 33 78 */ mr r31, r6 -/* 801764F0 00173450 93 C1 00 18 */ stw r30, 0x18(r1) -/* 801764F4 00173454 7C BE 2B 78 */ mr r30, r5 -/* 801764F8 00173458 93 A1 00 14 */ stw r29, 0x14(r1) -/* 801764FC 0017345C 7C 9D 23 78 */ mr r29, r4 -/* 80176500 00173460 2C 1D 00 04 */ cmpwi r29, 4 -/* 80176504 00173464 93 81 00 10 */ stw r28, 0x10(r1) -/* 80176508 00173468 7C 7C 1B 78 */ mr r28, r3 -/* 8017650C 0017346C 40 82 00 30 */ bne lbl_8017653C -/* 80176510 00173470 88 1C 00 30 */ lbz r0, 0x30(r28) -/* 80176514 00173474 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80176518 00173478 41 82 00 24 */ beq lbl_8017653C -/* 8017651C 0017347C 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 80176520 00173480 38 80 00 00 */ li r4, 0 -/* 80176524 00173484 80 63 07 68 */ lwz r3, 0x768(r3) -/* 80176528 00173488 4B F7 8A 79 */ bl SetBallBoostState__10CMorphBallFQ210CMorphBall15EBallBoostState -/* 8017652C 0017348C 88 1C 01 68 */ lbz r0, 0x168(r28) -/* 80176530 00173490 38 60 00 00 */ li r3, 0 -/* 80176534 00173494 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80176538 00173498 98 1C 01 68 */ stb r0, 0x168(r28) -lbl_8017653C: -/* 8017653C 0017349C A0 1E 00 00 */ lhz r0, 0(r30) -/* 80176540 001734A0 7F 83 E3 78 */ mr r3, r28 -/* 80176544 001734A4 7F A4 EB 78 */ mr r4, r29 -/* 80176548 001734A8 7F E6 FB 78 */ mr r6, r31 -/* 8017654C 001734AC B0 01 00 08 */ sth r0, 8(r1) -/* 80176550 001734B0 38 A1 00 08 */ addi r5, r1, 8 -/* 80176554 001734B4 4B EF FF A5 */ bl AcceptScriptMsg__14CScriptTriggerF20EScriptObjectMessage9TUniqueIdR13CStateManager -/* 80176558 001734B8 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8017655C 001734BC 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80176560 001734C0 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 80176564 001734C4 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 80176568 001734C8 83 81 00 10 */ lwz r28, 0x10(r1) -/* 8017656C 001734CC 7C 08 03 A6 */ mtlr r0 -/* 80176570 001734D0 38 21 00 20 */ addi r1, r1, 0x20 -/* 80176574 001734D4 4E 80 00 20 */ blr - -.global Accept__18CScriptBallTriggerFR8IVisitor -Accept__18CScriptBallTriggerFR8IVisitor: -/* 80176578 001734D8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8017657C 001734DC 7C 08 02 A6 */ mflr r0 -/* 80176580 001734E0 90 01 00 14 */ stw r0, 0x14(r1) -/* 80176584 001734E4 7C 60 1B 78 */ mr r0, r3 -/* 80176588 001734E8 7C 83 23 78 */ mr r3, r4 -/* 8017658C 001734EC 81 84 00 00 */ lwz r12, 0(r4) -/* 80176590 001734F0 7C 04 03 78 */ mr r4, r0 -/* 80176594 001734F4 81 8C 00 CC */ lwz r12, 0xcc(r12) -/* 80176598 001734F8 7D 89 03 A6 */ mtctr r12 -/* 8017659C 001734FC 4E 80 04 21 */ bctrl -/* 801765A0 00173500 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801765A4 00173504 7C 08 03 A6 */ mtlr r0 -/* 801765A8 00173508 38 21 00 10 */ addi r1, r1, 0x10 -/* 801765AC 0017350C 4E 80 00 20 */ blr - -.global Think__18CScriptBallTriggerFfR13CStateManager -Think__18CScriptBallTriggerFfR13CStateManager: -/* 801765B0 00173510 94 21 FF 40 */ stwu r1, -0xc0(r1) -/* 801765B4 00173514 7C 08 02 A6 */ mflr r0 -/* 801765B8 00173518 90 01 00 C4 */ stw r0, 0xc4(r1) -/* 801765BC 0017351C DB E1 00 B0 */ stfd f31, 0xb0(r1) -/* 801765C0 00173520 F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 -/* 801765C4 00173524 DB C1 00 A0 */ stfd f30, 0xa0(r1) -/* 801765C8 00173528 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 -/* 801765CC 0017352C DB A1 00 90 */ stfd f29, 0x90(r1) -/* 801765D0 00173530 F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0 -/* 801765D4 00173534 DB 81 00 80 */ stfd f28, 0x80(r1) -/* 801765D8 00173538 F3 81 00 88 */ psq_st f28, 136(r1), 0, qr0 -/* 801765DC 0017353C DB 61 00 70 */ stfd f27, 0x70(r1) -/* 801765E0 00173540 F3 61 00 78 */ psq_st f27, 120(r1), 0, qr0 -/* 801765E4 00173544 DB 41 00 60 */ stfd f26, 0x60(r1) -/* 801765E8 00173548 F3 41 00 68 */ psq_st f26, 104(r1), 0, qr0 -/* 801765EC 0017354C 93 E1 00 5C */ stw r31, 0x5c(r1) -/* 801765F0 00173550 93 C1 00 58 */ stw r30, 0x58(r1) -/* 801765F4 00173554 88 03 00 30 */ lbz r0, 0x30(r3) -/* 801765F8 00173558 FF 40 08 90 */ fmr f26, f1 -/* 801765FC 0017355C 7C 7E 1B 78 */ mr r30, r3 -/* 80176600 00173560 7C 9F 23 78 */ mr r31, r4 -/* 80176604 00173564 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80176608 00173568 41 82 01 E8 */ beq lbl_801767F0 -/* 8017660C 0017356C 4B EF FE C1 */ bl Think__14CScriptTriggerFfR13CStateManager -/* 80176610 00173570 83 FF 08 4C */ lwz r31, 0x84c(r31) -/* 80176614 00173574 80 7F 07 68 */ lwz r3, 0x768(r31) -/* 80176618 00173578 4B F8 27 ED */ bl GetBallRadius__10CMorphBallCFv -/* 8017661C 0017357C FF C0 08 90 */ fmr f30, f1 -/* 80176620 00173580 C0 1F 00 60 */ lfs f0, 0x60(r31) -/* 80176624 00173584 80 1F 02 F8 */ lwz r0, 0x2f8(r31) -/* 80176628 00173588 C0 7F 00 40 */ lfs f3, 0x40(r31) -/* 8017662C 0017358C C0 42 A1 B0 */ lfs f2, lbl_805ABED0@sda21(r2) -/* 80176630 00173590 2C 00 00 01 */ cmpwi r0, 1 -/* 80176634 00173594 C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 80176638 00173598 EC 80 F0 2A */ fadds f4, f0, f30 -/* 8017663C 0017359C EC A3 10 2A */ fadds f5, f3, f2 -/* 80176640 001735A0 EC 61 10 2A */ fadds f3, f1, f2 -/* 80176644 001735A4 40 82 01 9C */ bne lbl_801767E0 -/* 80176648 001735A8 C0 5E 00 50 */ lfs f2, 0x50(r30) -/* 8017664C 001735AC 38 61 00 40 */ addi r3, r1, 0x40 -/* 80176650 001735B0 C0 3E 00 60 */ lfs f1, 0x60(r30) -/* 80176654 001735B4 C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 80176658 001735B8 EC 42 18 28 */ fsubs f2, f2, f3 -/* 8017665C 001735BC EC 21 20 28 */ fsubs f1, f1, f4 -/* 80176660 001735C0 EC 00 28 28 */ fsubs f0, f0, f5 -/* 80176664 001735C4 D0 41 00 44 */ stfs f2, 0x44(r1) -/* 80176668 001735C8 D0 01 00 40 */ stfs f0, 0x40(r1) -/* 8017666C 001735CC D0 21 00 48 */ stfs f1, 0x48(r1) -/* 80176670 001735D0 48 19 E2 49 */ bl Magnitude__9CVector3fCFv -/* 80176674 001735D4 88 7E 01 68 */ lbz r3, 0x168(r30) -/* 80176678 001735D8 FF E0 08 90 */ fmr f31, f1 -/* 8017667C 001735DC 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f -/* 80176680 001735E0 40 82 01 04 */ bne lbl_80176784 -/* 80176684 001735E4 FC 1F F0 40 */ fcmpo cr0, f31, f30 -/* 80176688 001735E8 40 80 00 14 */ bge lbl_8017669C -/* 8017668C 001735EC 38 00 00 01 */ li r0, 1 -/* 80176690 001735F0 50 03 3E 30 */ rlwimi r3, r0, 7, 0x18, 0x18 -/* 80176694 001735F4 98 7E 01 68 */ stb r3, 0x168(r30) -/* 80176698 001735F8 48 00 00 EC */ b lbl_80176784 -lbl_8017669C: -/* 8017669C 001735FC 38 61 00 28 */ addi r3, r1, 0x28 -/* 801766A0 00173600 38 81 00 40 */ addi r4, r1, 0x40 -/* 801766A4 00173604 48 19 E1 AD */ bl AsNormalized__9CVector3fCFv -/* 801766A8 00173608 C0 22 A1 B4 */ lfs f1, lbl_805ABED4@sda21(r2) -/* 801766AC 0017360C C0 1E 01 54 */ lfs f0, 0x154(r30) -/* 801766B0 00173610 C3 A1 00 28 */ lfs f29, 0x28(r1) -/* 801766B4 00173614 EC 21 00 32 */ fmuls f1, f1, f0 -/* 801766B8 00173618 C3 81 00 2C */ lfs f28, 0x2c(r1) -/* 801766BC 0017361C C3 61 00 30 */ lfs f27, 0x30(r1) -/* 801766C0 00173620 48 21 DD 31 */ bl cos -/* 801766C4 00173624 FC 40 E0 50 */ fneg f2, f28 -/* 801766C8 00173628 C0 1E 01 60 */ lfs f0, 0x160(r30) -/* 801766CC 0017362C FC 80 E8 50 */ fneg f4, f29 -/* 801766D0 00173630 C0 7E 01 5C */ lfs f3, 0x15c(r30) -/* 801766D4 00173634 FC C0 D8 50 */ fneg f6, f27 -/* 801766D8 00173638 C0 BE 01 64 */ lfs f5, 0x164(r30) -/* 801766DC 0017363C EC 02 00 32 */ fmuls f0, f2, f0 -/* 801766E0 00173640 FC 20 08 18 */ frsp f1, f1 -/* 801766E4 00173644 EC 04 00 FA */ fmadds f0, f4, f3, f0 -/* 801766E8 00173648 EC 06 01 7A */ fmadds f0, f6, f5, f0 -/* 801766EC 0017364C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801766F0 00173650 40 80 00 94 */ bge lbl_80176784 -/* 801766F4 00173654 C0 7E 01 58 */ lfs f3, 0x158(r30) -/* 801766F8 00173658 FC 1F 18 40 */ fcmpo cr0, f31, f3 -/* 801766FC 0017365C 40 80 00 88 */ bge lbl_80176784 -/* 80176700 00173660 EC 3F 07 F2 */ fmuls f1, f31, f31 -/* 80176704 00173664 C0 02 A1 B8 */ lfs f0, lbl_805ABED8@sda21(r2) -/* 80176708 00173668 C0 5E 01 50 */ lfs f2, 0x150(r30) -/* 8017670C 0017366C EC 00 D0 24 */ fdivs f0, f0, f26 -/* 80176710 00173670 EC 23 08 24 */ fdivs f1, f3, f1 -/* 80176714 00173674 EC 22 00 72 */ fmuls f1, f2, f1 -/* 80176718 00173678 EC 00 07 F2 */ fmuls f0, f0, f31 -/* 8017671C 0017367C D0 21 00 0C */ stfs f1, 0xc(r1) -/* 80176720 00173680 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 80176724 00173684 D0 01 00 08 */ stfs f0, 8(r1) -/* 80176728 00173688 40 80 00 0C */ bge lbl_80176734 -/* 8017672C 0017368C 38 61 00 08 */ addi r3, r1, 8 -/* 80176730 00173690 48 00 00 08 */ b lbl_80176738 -lbl_80176734: -/* 80176734 00173694 38 61 00 0C */ addi r3, r1, 0xc -lbl_80176738: -/* 80176738 00173698 C0 1F 00 E8 */ lfs f0, 0xe8(r31) -/* 8017673C 0017369C C0 A3 00 00 */ lfs f5, 0(r3) -/* 80176740 001736A0 EC 60 07 72 */ fmuls f3, f0, f29 -/* 80176744 001736A4 EC 40 07 32 */ fmuls f2, f0, f28 -/* 80176748 001736A8 EC 20 06 F2 */ fmuls f1, f0, f27 -/* 8017674C 001736AC EC 05 00 F2 */ fmuls f0, f5, f3 -/* 80176750 001736B0 D0 61 00 10 */ stfs f3, 0x10(r1) -/* 80176754 001736B4 EC 85 00 B2 */ fmuls f4, f5, f2 -/* 80176758 001736B8 EC 65 00 72 */ fmuls f3, f5, f1 -/* 8017675C 001736BC D0 41 00 14 */ stfs f2, 0x14(r1) -/* 80176760 001736C0 D0 21 00 18 */ stfs f1, 0x18(r1) -/* 80176764 001736C4 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 80176768 001736C8 D0 81 00 20 */ stfs f4, 0x20(r1) -/* 8017676C 001736CC D0 61 00 24 */ stfs f3, 0x24(r1) -/* 80176770 001736D0 4B EA 4D C5 */ bl Identity__10CAxisAngleFv -/* 80176774 001736D4 7C 65 1B 78 */ mr r5, r3 -/* 80176778 001736D8 7F E3 FB 78 */ mr r3, r31 -/* 8017677C 001736DC 38 81 00 1C */ addi r4, r1, 0x1c -/* 80176780 001736E0 4B FA 5B 45 */ bl ApplyForceWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle -lbl_80176784: -/* 80176784 001736E4 88 1E 01 48 */ lbz r0, 0x148(r30) -/* 80176788 001736E8 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f -/* 8017678C 001736EC 41 82 00 64 */ beq lbl_801767F0 -/* 80176790 001736F0 C0 1E 00 60 */ lfs f0, 0x60(r30) -/* 80176794 001736F4 C0 5E 00 50 */ lfs f2, 0x50(r30) -/* 80176798 001736F8 C0 22 A1 B0 */ lfs f1, lbl_805ABED0@sda21(r2) -/* 8017679C 001736FC EC 60 F0 28 */ fsubs f3, f0, f30 -/* 801767A0 00173700 C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 801767A4 00173704 EC 42 08 28 */ fsubs f2, f2, f1 -/* 801767A8 00173708 EC 00 08 28 */ fsubs f0, f0, f1 -/* 801767AC 0017370C D0 61 00 3C */ stfs f3, 0x3c(r1) -/* 801767B0 00173710 D0 41 00 38 */ stfs f2, 0x38(r1) -/* 801767B4 00173714 D0 01 00 34 */ stfs f0, 0x34(r1) -/* 801767B8 00173718 88 1E 01 68 */ lbz r0, 0x168(r30) -/* 801767BC 0017371C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 801767C0 00173720 41 82 00 0C */ beq lbl_801767CC -/* 801767C4 00173724 7F E3 FB 78 */ mr r3, r31 -/* 801767C8 00173728 4B FA 4B B1 */ bl Stop__13CPhysicsActorFv -lbl_801767CC: -/* 801767CC 0017372C FC 20 D0 90 */ fmr f1, f26 -/* 801767D0 00173730 7F E3 FB 78 */ mr r3, r31 -/* 801767D4 00173734 38 81 00 34 */ addi r4, r1, 0x34 -/* 801767D8 00173738 4B FA 49 31 */ bl MoveToWR__13CPhysicsActorFRC9CVector3ff -/* 801767DC 0017373C 48 00 00 14 */ b lbl_801767F0 -lbl_801767E0: -/* 801767E0 00173740 88 1E 01 68 */ lbz r0, 0x168(r30) -/* 801767E4 00173744 38 60 00 00 */ li r3, 0 -/* 801767E8 00173748 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 801767EC 0017374C 98 1E 01 68 */ stb r0, 0x168(r30) -lbl_801767F0: -/* 801767F0 00173750 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 -/* 801767F4 00173754 CB E1 00 B0 */ lfd f31, 0xb0(r1) -/* 801767F8 00173758 E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 -/* 801767FC 0017375C CB C1 00 A0 */ lfd f30, 0xa0(r1) -/* 80176800 00173760 E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0 -/* 80176804 00173764 CB A1 00 90 */ lfd f29, 0x90(r1) -/* 80176808 00173768 E3 81 00 88 */ psq_l f28, 136(r1), 0, qr0 -/* 8017680C 0017376C CB 81 00 80 */ lfd f28, 0x80(r1) -/* 80176810 00173770 E3 61 00 78 */ psq_l f27, 120(r1), 0, qr0 -/* 80176814 00173774 CB 61 00 70 */ lfd f27, 0x70(r1) -/* 80176818 00173778 E3 41 00 68 */ psq_l f26, 104(r1), 0, qr0 -/* 8017681C 0017377C CB 41 00 60 */ lfd f26, 0x60(r1) -/* 80176820 00173780 83 E1 00 5C */ lwz r31, 0x5c(r1) -/* 80176824 00173784 80 01 00 C4 */ lwz r0, 0xc4(r1) -/* 80176828 00173788 83 C1 00 58 */ lwz r30, 0x58(r1) -/* 8017682C 0017378C 7C 08 03 A6 */ mtlr r0 -/* 80176830 00173790 38 21 00 C0 */ addi r1, r1, 0xc0 -/* 80176834 00173794 4E 80 00 20 */ blr - -.global InhabitantExited__18CScriptBallTriggerFR6CActorR13CStateManager -InhabitantExited__18CScriptBallTriggerFR6CActorR13CStateManager: -/* 80176838 00173798 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8017683C 0017379C 7C 08 02 A6 */ mflr r0 -/* 80176840 001737A0 90 01 00 24 */ stw r0, 0x24(r1) -/* 80176844 001737A4 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80176848 001737A8 7C 7F 1B 78 */ mr r31, r3 -/* 8017684C 001737AC 38 61 00 08 */ addi r3, r1, 8 -/* 80176850 001737B0 4B F3 5B B1 */ bl "__ct__20TCastToPtr<7CPlayer>FR7CEntity" -/* 80176854 001737B4 80 63 00 04 */ lwz r3, 4(r3) -/* 80176858 001737B8 28 03 00 00 */ cmplwi r3, 0 -/* 8017685C 001737BC 41 82 00 20 */ beq lbl_8017687C -/* 80176860 001737C0 80 63 07 68 */ lwz r3, 0x768(r3) -/* 80176864 001737C4 38 80 00 00 */ li r4, 0 -/* 80176868 001737C8 4B F7 87 39 */ bl SetBallBoostState__10CMorphBallFQ210CMorphBall15EBallBoostState -/* 8017686C 001737CC 88 1F 01 68 */ lbz r0, 0x168(r31) -/* 80176870 001737D0 38 60 00 00 */ li r3, 0 -/* 80176874 001737D4 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 80176878 001737D8 98 1F 01 68 */ stb r0, 0x168(r31) -lbl_8017687C: -/* 8017687C 001737DC 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80176880 001737E0 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80176884 001737E4 7C 08 03 A6 */ mtlr r0 -/* 80176888 001737E8 38 21 00 20 */ addi r1, r1, 0x20 -/* 8017688C 001737EC 4E 80 00 20 */ blr - -.global InhabitantAdded__18CScriptBallTriggerFR6CActorR13CStateManager -InhabitantAdded__18CScriptBallTriggerFR6CActorR13CStateManager: -/* 80176890 001737F0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80176894 001737F4 7C 08 02 A6 */ mflr r0 -/* 80176898 001737F8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8017689C 001737FC 38 61 00 08 */ addi r3, r1, 8 -/* 801768A0 00173800 4B F3 5B 61 */ bl "__ct__20TCastToPtr<7CPlayer>FR7CEntity" -/* 801768A4 00173804 80 63 00 04 */ lwz r3, 4(r3) -/* 801768A8 00173808 28 03 00 00 */ cmplwi r3, 0 -/* 801768AC 0017380C 41 82 00 10 */ beq lbl_801768BC -/* 801768B0 00173810 80 63 07 68 */ lwz r3, 0x768(r3) -/* 801768B4 00173814 38 80 00 01 */ li r4, 1 -/* 801768B8 00173818 4B F7 86 E9 */ bl SetBallBoostState__10CMorphBallFQ210CMorphBall15EBallBoostState -lbl_801768BC: -/* 801768BC 0017381C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801768C0 00173820 7C 08 03 A6 */ mtlr r0 -/* 801768C4 00173824 38 21 00 10 */ addi r1, r1, 0x10 -/* 801768C8 00173828 4E 80 00 20 */ blr - -.global __dt__18CScriptBallTriggerFv -__dt__18CScriptBallTriggerFv: -/* 801768CC 0017382C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801768D0 00173830 7C 08 02 A6 */ mflr r0 -/* 801768D4 00173834 90 01 00 14 */ stw r0, 0x14(r1) -/* 801768D8 00173838 93 E1 00 0C */ stw r31, 0xc(r1) -/* 801768DC 0017383C 7C 9F 23 78 */ mr r31, r4 -/* 801768E0 00173840 93 C1 00 08 */ stw r30, 8(r1) -/* 801768E4 00173844 7C 7E 1B 79 */ or. r30, r3, r3 -/* 801768E8 00173848 41 82 00 28 */ beq lbl_80176910 -/* 801768EC 0017384C 3C A0 80 3E */ lis r5, lbl_803E3E80@ha -/* 801768F0 00173850 38 80 00 00 */ li r4, 0 -/* 801768F4 00173854 38 05 3E 80 */ addi r0, r5, lbl_803E3E80@l -/* 801768F8 00173858 90 1E 00 00 */ stw r0, 0(r30) -/* 801768FC 0017385C 4B F0 03 85 */ bl __dt__14CScriptTriggerFv -/* 80176900 00173860 7F E0 07 35 */ extsh. r0, r31 -/* 80176904 00173864 40 81 00 0C */ ble lbl_80176910 -/* 80176908 00173868 7F C3 F3 78 */ mr r3, r30 -/* 8017690C 0017386C 48 19 F0 25 */ bl Free__7CMemoryFPCv -lbl_80176910: -/* 80176910 00173870 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80176914 00173874 7F C3 F3 78 */ mr r3, r30 -/* 80176918 00173878 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8017691C 0017387C 83 C1 00 08 */ lwz r30, 8(r1) -/* 80176920 00173880 7C 08 03 A6 */ mtlr r0 -/* 80176924 00173884 38 21 00 10 */ addi r1, r1, 0x10 -/* 80176928 00173888 4E 80 00 20 */ blr - -.global "__ct__18CScriptBallTriggerF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fRC9CVector3fbfff9CVector3f" -"__ct__18CScriptBallTriggerF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fRC9CVector3fbfff9CVector3f": -/* 8017692C 0017388C 94 21 FF 40 */ stwu r1, -0xc0(r1) -/* 80176930 00173890 7C 08 02 A6 */ mflr r0 -/* 80176934 00173894 90 01 00 C4 */ stw r0, 0xc4(r1) -/* 80176938 00173898 DB E1 00 B0 */ stfd f31, 0xb0(r1) -/* 8017693C 0017389C F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 -/* 80176940 001738A0 DB C1 00 A0 */ stfd f30, 0xa0(r1) -/* 80176944 001738A4 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 -/* 80176948 001738A8 DB A1 00 90 */ stfd f29, 0x90(r1) -/* 8017694C 001738AC F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0 -/* 80176950 001738B0 BF 21 00 74 */ stmw r25, 0x74(r1) -/* 80176954 001738B4 39 80 00 00 */ li r12, 0 -/* 80176958 001738B8 88 01 00 20 */ lbz r0, 0x20(r1) -/* 8017695C 001738BC 51 80 3E 30 */ rlwimi r0, r12, 7, 0x18, 0x18 -/* 80176960 001738C0 C0 02 A1 B0 */ lfs f0, lbl_805ABED0@sda21(r2) -/* 80176964 001738C4 98 01 00 20 */ stb r0, 0x20(r1) -/* 80176968 001738C8 54 0B 06 3E */ clrlwi r11, r0, 0x18 -/* 8017696C 001738CC 51 8B 36 72 */ rlwimi r11, r12, 6, 0x19, 0x19 -/* 80176970 001738D0 A0 04 00 00 */ lhz r0, 0(r4) -/* 80176974 001738D4 89 01 00 48 */ lbz r8, 0x48(r1) -/* 80176978 001738D8 55 64 06 3E */ clrlwi r4, r11, 0x18 -/* 8017697C 001738DC 51 84 2E B4 */ rlwimi r4, r12, 5, 0x1a, 0x1a -/* 80176980 001738E0 99 61 00 20 */ stb r11, 0x20(r1) -/* 80176984 001738E4 51 88 3E 30 */ rlwimi r8, r12, 7, 0x18, 0x18 -/* 80176988 001738E8 FF A0 08 90 */ fmr f29, f1 -/* 8017698C 001738EC 7C 7D 1B 78 */ mr r29, r3 -/* 80176990 001738F0 FF C0 10 90 */ fmr f30, f2 -/* 80176994 001738F4 FF E0 18 90 */ fmr f31, f3 -/* 80176998 001738F8 91 81 00 1C */ stw r12, 0x1c(r1) -/* 8017699C 001738FC 8B E1 00 CB */ lbz r31, 0xcb(r1) -/* 801769A0 00173900 98 81 00 20 */ stb r4, 0x20(r1) -/* 801769A4 00173904 7C B9 2B 78 */ mr r25, r5 -/* 801769A8 00173908 7C DA 33 78 */ mr r26, r6 -/* 801769AC 0017390C 91 81 00 30 */ stw r12, 0x30(r1) -/* 801769B0 00173910 7C FB 3B 78 */ mr r27, r7 -/* 801769B4 00173914 7D 3C 4B 78 */ mr r28, r9 -/* 801769B8 00173918 7D 5E 53 78 */ mr r30, r10 -/* 801769BC 0017391C 98 81 00 34 */ stb r4, 0x34(r1) -/* 801769C0 00173920 38 61 00 4C */ addi r3, r1, 0x4c -/* 801769C4 00173924 D0 01 00 38 */ stfs f0, 0x38(r1) -/* 801769C8 00173928 D0 01 00 3C */ stfs f0, 0x3c(r1) -/* 801769CC 0017392C D0 01 00 40 */ stfs f0, 0x40(r1) -/* 801769D0 00173930 D0 01 00 44 */ stfs f0, 0x44(r1) -/* 801769D4 00173934 99 01 00 48 */ stb r8, 0x48(r1) -/* 801769D8 00173938 B0 01 00 18 */ sth r0, 0x18(r1) -/* 801769DC 0017393C 48 00 00 FD */ bl calculate_ball_aabox__Fv -/* 801769E0 00173940 38 00 10 00 */ li r0, 0x1000 -/* 801769E4 00173944 3C 60 80 5A */ lis r3, skZero3f@ha -/* 801769E8 00173948 90 01 00 08 */ stw r0, 8(r1) -/* 801769EC 0017394C 39 43 66 A0 */ addi r10, r3, skZero3f@l -/* 801769F0 00173950 38 00 00 00 */ li r0, 0 -/* 801769F4 00173954 7F A3 EB 78 */ mr r3, r29 -/* 801769F8 00173958 93 81 00 0C */ stw r28, 0xc(r1) -/* 801769FC 0017395C 7F 25 CB 78 */ mr r5, r25 -/* 80176A00 00173960 7F 46 D3 78 */ mr r6, r26 -/* 80176A04 00173964 7F 67 DB 78 */ mr r7, r27 -/* 80176A08 00173968 90 01 00 10 */ stw r0, 0x10(r1) -/* 80176A0C 0017396C 38 81 00 18 */ addi r4, r1, 0x18 -/* 80176A10 00173970 39 01 00 4C */ addi r8, r1, 0x4c -/* 80176A14 00173974 39 21 00 30 */ addi r9, r1, 0x30 -/* 80176A18 00173978 90 01 00 14 */ stw r0, 0x14(r1) -/* 80176A1C 0017397C 4B F0 03 3D */ bl "__ct__14CScriptTriggerF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fRC6CAABoxRC11CDamageInfoRC9CVector3fUibbb" -/* 80176A20 00173980 3C 80 80 3E */ lis r4, lbl_803E3E80@ha -/* 80176A24 00173984 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80176A28 00173988 38 04 3E 80 */ addi r0, r4, lbl_803E3E80@l -/* 80176A2C 0017398C 38 80 00 00 */ li r4, 0 -/* 80176A30 00173990 90 1D 00 00 */ stw r0, 0(r29) -/* 80176A34 00173994 38 A3 66 A0 */ addi r5, r3, skZero3f@l -/* 80176A38 00173998 7F C3 F3 78 */ mr r3, r30 -/* 80176A3C 0017399C D3 BD 01 50 */ stfs f29, 0x150(r29) -/* 80176A40 001739A0 D3 DD 01 54 */ stfs f30, 0x154(r29) -/* 80176A44 001739A4 D3 FD 01 58 */ stfs f31, 0x158(r29) -/* 80176A48 001739A8 C0 05 00 00 */ lfs f0, 0(r5) -/* 80176A4C 001739AC D0 1D 01 5C */ stfs f0, 0x15c(r29) -/* 80176A50 001739B0 C0 05 00 04 */ lfs f0, 4(r5) -/* 80176A54 001739B4 D0 1D 01 60 */ stfs f0, 0x160(r29) -/* 80176A58 001739B8 C0 05 00 08 */ lfs f0, 8(r5) -/* 80176A5C 001739BC D0 1D 01 64 */ stfs f0, 0x164(r29) -/* 80176A60 001739C0 88 1D 01 68 */ lbz r0, 0x168(r29) -/* 80176A64 001739C4 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 -/* 80176A68 001739C8 98 1D 01 68 */ stb r0, 0x168(r29) -/* 80176A6C 001739CC 88 1D 01 68 */ lbz r0, 0x168(r29) -/* 80176A70 001739D0 53 E0 36 72 */ rlwimi r0, r31, 6, 0x19, 0x19 -/* 80176A74 001739D4 98 1D 01 68 */ stb r0, 0x168(r29) -/* 80176A78 001739D8 48 19 DC 81 */ bl CanBeNormalized__9CVector3fCFv -/* 80176A7C 001739DC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80176A80 001739E0 41 82 00 28 */ beq lbl_80176AA8 -/* 80176A84 001739E4 7F C4 F3 78 */ mr r4, r30 -/* 80176A88 001739E8 38 61 00 24 */ addi r3, r1, 0x24 -/* 80176A8C 001739EC 48 19 DD C5 */ bl AsNormalized__9CVector3fCFv -/* 80176A90 001739F0 C0 01 00 24 */ lfs f0, 0x24(r1) -/* 80176A94 001739F4 D0 1D 01 5C */ stfs f0, 0x15c(r29) -/* 80176A98 001739F8 C0 01 00 28 */ lfs f0, 0x28(r1) -/* 80176A9C 001739FC D0 1D 01 60 */ stfs f0, 0x160(r29) -/* 80176AA0 00173A00 C0 01 00 2C */ lfs f0, 0x2c(r1) -/* 80176AA4 00173A04 D0 1D 01 64 */ stfs f0, 0x164(r29) -lbl_80176AA8: -/* 80176AA8 00173A08 7F A3 EB 78 */ mr r3, r29 -/* 80176AAC 00173A0C E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 -/* 80176AB0 00173A10 CB E1 00 B0 */ lfd f31, 0xb0(r1) -/* 80176AB4 00173A14 E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 -/* 80176AB8 00173A18 CB C1 00 A0 */ lfd f30, 0xa0(r1) -/* 80176ABC 00173A1C E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0 -/* 80176AC0 00173A20 CB A1 00 90 */ lfd f29, 0x90(r1) -/* 80176AC4 00173A24 BB 21 00 74 */ lmw r25, 0x74(r1) -/* 80176AC8 00173A28 80 01 00 C4 */ lwz r0, 0xc4(r1) -/* 80176ACC 00173A2C 7C 08 03 A6 */ mtlr r0 -/* 80176AD0 00173A30 38 21 00 C0 */ addi r1, r1, 0xc0 -/* 80176AD4 00173A34 4E 80 00 20 */ blr - -.global calculate_ball_aabox__Fv -calculate_ball_aabox__Fv: -/* 80176AD8 00173A38 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80176ADC 00173A3C 7C 08 02 A6 */ mflr r0 -/* 80176AE0 00173A40 C0 22 A1 BC */ lfs f1, lbl_805ABEDC@sda21(r2) -/* 80176AE4 00173A44 90 01 00 24 */ stw r0, 0x24(r1) -/* 80176AE8 00173A48 38 81 00 14 */ addi r4, r1, 0x14 -/* 80176AEC 00173A4C 38 A1 00 08 */ addi r5, r1, 8 -/* 80176AF0 00173A50 80 CD A1 18 */ lwz r6, gpTweakPlayer@sda21(r13) -/* 80176AF4 00173A54 C0 06 02 7C */ lfs f0, 0x27c(r6) -/* 80176AF8 00173A58 EC 21 00 32 */ fmuls f1, f1, f0 -/* 80176AFC 00173A5C FC 00 08 50 */ fneg f0, f1 -/* 80176B00 00173A60 D0 21 00 08 */ stfs f1, 8(r1) -/* 80176B04 00173A64 D0 21 00 0C */ stfs f1, 0xc(r1) -/* 80176B08 00173A68 D0 21 00 10 */ stfs f1, 0x10(r1) -/* 80176B0C 00173A6C D0 01 00 14 */ stfs f0, 0x14(r1) -/* 80176B10 00173A70 D0 01 00 18 */ stfs f0, 0x18(r1) -/* 80176B14 00173A74 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 80176B18 00173A78 48 1C 19 F1 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 80176B1C 00173A7C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80176B20 00173A80 7C 08 03 A6 */ mtlr r0 -/* 80176B24 00173A84 38 21 00 20 */ addi r1, r1, 0x20 -/* 80176B28 00173A88 4E 80 00 20 */ blr - -.global __dt__17CPlasmaProjectileFv -__dt__17CPlasmaProjectileFv: -/* 80176B2C 00173A8C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80176B30 00173A90 7C 08 02 A6 */ mflr r0 -/* 80176B34 00173A94 90 01 00 24 */ stw r0, 0x24(r1) -/* 80176B38 00173A98 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80176B3C 00173A9C 7C 9F 23 78 */ mr r31, r4 -/* 80176B40 00173AA0 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80176B44 00173AA4 7C 7E 1B 79 */ or. r30, r3, r3 -/* 80176B48 00173AA8 41 82 01 B4 */ beq lbl_80176CFC -/* 80176B4C 00173AAC 3C 60 80 3E */ lis r3, lbl_803E3F00@ha -/* 80176B50 00173AB0 34 1E 05 38 */ addic. r0, r30, 0x538 -/* 80176B54 00173AB4 38 03 3F 00 */ addi r0, r3, lbl_803E3F00@l -/* 80176B58 00173AB8 90 1E 00 00 */ stw r0, 0(r30) -/* 80176B5C 00173ABC 41 82 00 28 */ beq lbl_80176B84 -/* 80176B60 00173AC0 88 1E 05 40 */ lbz r0, 0x540(r30) -/* 80176B64 00173AC4 28 00 00 00 */ cmplwi r0, 0 -/* 80176B68 00173AC8 41 82 00 14 */ beq lbl_80176B7C -/* 80176B6C 00173ACC 34 7E 05 38 */ addic. r3, r30, 0x538 -/* 80176B70 00173AD0 41 82 00 0C */ beq lbl_80176B7C -/* 80176B74 00173AD4 38 80 00 00 */ li r4, 0 -/* 80176B78 00173AD8 48 1C A2 C9 */ bl __dt__6CTokenFv -lbl_80176B7C: -/* 80176B7C 00173ADC 38 00 00 00 */ li r0, 0 -/* 80176B80 00173AE0 98 1E 05 40 */ stb r0, 0x540(r30) -lbl_80176B84: -/* 80176B84 00173AE4 34 1E 05 2C */ addic. r0, r30, 0x52c -/* 80176B88 00173AE8 41 82 00 28 */ beq lbl_80176BB0 -/* 80176B8C 00173AEC 88 1E 05 34 */ lbz r0, 0x534(r30) -/* 80176B90 00173AF0 28 00 00 00 */ cmplwi r0, 0 -/* 80176B94 00173AF4 41 82 00 14 */ beq lbl_80176BA8 -/* 80176B98 00173AF8 34 7E 05 2C */ addic. r3, r30, 0x52c -/* 80176B9C 00173AFC 41 82 00 0C */ beq lbl_80176BA8 -/* 80176BA0 00173B00 38 80 00 00 */ li r4, 0 -/* 80176BA4 00173B04 48 1C A2 9D */ bl __dt__6CTokenFv -lbl_80176BA8: -/* 80176BA8 00173B08 38 00 00 00 */ li r0, 0 -/* 80176BAC 00173B0C 98 1E 05 34 */ stb r0, 0x534(r30) -lbl_80176BB0: -/* 80176BB0 00173B10 34 1E 05 20 */ addic. r0, r30, 0x520 -/* 80176BB4 00173B14 41 82 00 24 */ beq lbl_80176BD8 -/* 80176BB8 00173B18 80 7E 05 20 */ lwz r3, 0x520(r30) -/* 80176BBC 00173B1C 28 03 00 00 */ cmplwi r3, 0 -/* 80176BC0 00173B20 41 82 00 18 */ beq lbl_80176BD8 -/* 80176BC4 00173B24 81 83 00 00 */ lwz r12, 0(r3) -/* 80176BC8 00173B28 38 80 00 01 */ li r4, 1 -/* 80176BCC 00173B2C 81 8C 00 08 */ lwz r12, 8(r12) -/* 80176BD0 00173B30 7D 89 03 A6 */ mtctr r12 -/* 80176BD4 00173B34 4E 80 04 21 */ bctrl -lbl_80176BD8: -/* 80176BD8 00173B38 34 1E 05 1C */ addic. r0, r30, 0x51c -/* 80176BDC 00173B3C 41 82 00 24 */ beq lbl_80176C00 -/* 80176BE0 00173B40 80 7E 05 1C */ lwz r3, 0x51c(r30) -/* 80176BE4 00173B44 28 03 00 00 */ cmplwi r3, 0 -/* 80176BE8 00173B48 41 82 00 18 */ beq lbl_80176C00 -/* 80176BEC 00173B4C 81 83 00 00 */ lwz r12, 0(r3) -/* 80176BF0 00173B50 38 80 00 01 */ li r4, 1 -/* 80176BF4 00173B54 81 8C 00 08 */ lwz r12, 8(r12) -/* 80176BF8 00173B58 7D 89 03 A6 */ mtctr r12 -/* 80176BFC 00173B5C 4E 80 04 21 */ bctrl -lbl_80176C00: -/* 80176C00 00173B60 34 1E 05 18 */ addic. r0, r30, 0x518 -/* 80176C04 00173B64 41 82 00 24 */ beq lbl_80176C28 -/* 80176C08 00173B68 80 7E 05 18 */ lwz r3, 0x518(r30) -/* 80176C0C 00173B6C 28 03 00 00 */ cmplwi r3, 0 -/* 80176C10 00173B70 41 82 00 18 */ beq lbl_80176C28 -/* 80176C14 00173B74 81 83 00 00 */ lwz r12, 0(r3) -/* 80176C18 00173B78 38 80 00 01 */ li r4, 1 -/* 80176C1C 00173B7C 81 8C 00 08 */ lwz r12, 8(r12) -/* 80176C20 00173B80 7D 89 03 A6 */ mtctr r12 -/* 80176C24 00173B84 4E 80 04 21 */ bctrl -lbl_80176C28: -/* 80176C28 00173B88 34 1E 05 0C */ addic. r0, r30, 0x50c -/* 80176C2C 00173B8C 41 82 00 18 */ beq lbl_80176C44 -/* 80176C30 00173B90 34 1E 05 0C */ addic. r0, r30, 0x50c -/* 80176C34 00173B94 41 82 00 10 */ beq lbl_80176C44 -/* 80176C38 00173B98 38 7E 05 0C */ addi r3, r30, 0x50c -/* 80176C3C 00173B9C 38 80 00 00 */ li r4, 0 -/* 80176C40 00173BA0 48 1C A2 01 */ bl __dt__6CTokenFv -lbl_80176C44: -/* 80176C44 00173BA4 34 1E 05 00 */ addic. r0, r30, 0x500 -/* 80176C48 00173BA8 41 82 00 18 */ beq lbl_80176C60 -/* 80176C4C 00173BAC 34 1E 05 00 */ addic. r0, r30, 0x500 -/* 80176C50 00173BB0 41 82 00 10 */ beq lbl_80176C60 -/* 80176C54 00173BB4 38 7E 05 00 */ addi r3, r30, 0x500 -/* 80176C58 00173BB8 38 80 00 00 */ li r4, 0 -/* 80176C5C 00173BBC 48 1C A1 E5 */ bl __dt__6CTokenFv -lbl_80176C60: -/* 80176C60 00173BC0 34 1E 04 F4 */ addic. r0, r30, 0x4f4 -/* 80176C64 00173BC4 41 82 00 18 */ beq lbl_80176C7C -/* 80176C68 00173BC8 34 1E 04 F4 */ addic. r0, r30, 0x4f4 -/* 80176C6C 00173BCC 41 82 00 10 */ beq lbl_80176C7C -/* 80176C70 00173BD0 38 7E 04 F4 */ addi r3, r30, 0x4f4 -/* 80176C74 00173BD4 38 80 00 00 */ li r4, 0 -/* 80176C78 00173BD8 48 1C A1 C9 */ bl __dt__6CTokenFv -lbl_80176C7C: -/* 80176C7C 00173BDC 34 1E 04 E8 */ addic. r0, r30, 0x4e8 -/* 80176C80 00173BE0 41 82 00 18 */ beq lbl_80176C98 -/* 80176C84 00173BE4 34 1E 04 E8 */ addic. r0, r30, 0x4e8 -/* 80176C88 00173BE8 41 82 00 10 */ beq lbl_80176C98 -/* 80176C8C 00173BEC 38 7E 04 E8 */ addi r3, r30, 0x4e8 -/* 80176C90 00173BF0 38 80 00 00 */ li r4, 0 -/* 80176C94 00173BF4 48 1C A1 AD */ bl __dt__6CTokenFv -lbl_80176C98: -/* 80176C98 00173BF8 34 1E 04 68 */ addic. r0, r30, 0x468 -/* 80176C9C 00173BFC 41 82 00 44 */ beq lbl_80176CE0 -/* 80176CA0 00173C00 80 1E 04 6C */ lwz r0, 0x46c(r30) -/* 80176CA4 00173C04 80 7E 04 74 */ lwz r3, 0x474(r30) -/* 80176CA8 00173C08 54 00 08 3C */ slwi r0, r0, 1 -/* 80176CAC 00173C0C 7C 03 02 14 */ add r0, r3, r0 -/* 80176CB0 00173C10 90 61 00 0C */ stw r3, 0xc(r1) -/* 80176CB4 00173C14 7C 64 1B 78 */ mr r4, r3 -/* 80176CB8 00173C18 90 01 00 14 */ stw r0, 0x14(r1) -/* 80176CBC 00173C1C 90 01 00 10 */ stw r0, 0x10(r1) -/* 80176CC0 00173C20 90 61 00 08 */ stw r3, 8(r1) -/* 80176CC4 00173C24 48 00 00 08 */ b lbl_80176CCC -lbl_80176CC8: -/* 80176CC8 00173C28 38 84 00 02 */ addi r4, r4, 2 -lbl_80176CCC: -/* 80176CCC 00173C2C 7C 04 00 40 */ cmplw r4, r0 -/* 80176CD0 00173C30 40 82 FF F8 */ bne lbl_80176CC8 -/* 80176CD4 00173C34 28 03 00 00 */ cmplwi r3, 0 -/* 80176CD8 00173C38 41 82 00 08 */ beq lbl_80176CE0 -/* 80176CDC 00173C3C 48 19 EC 55 */ bl Free__7CMemoryFPCv -lbl_80176CE0: -/* 80176CE0 00173C40 7F C3 F3 78 */ mr r3, r30 -/* 80176CE4 00173C44 38 80 00 00 */ li r4, 0 -/* 80176CE8 00173C48 48 00 00 31 */ bl __dt__15CBeamProjectileFv -/* 80176CEC 00173C4C 7F E0 07 35 */ extsh. r0, r31 -/* 80176CF0 00173C50 40 81 00 0C */ ble lbl_80176CFC -/* 80176CF4 00173C54 7F C3 F3 78 */ mr r3, r30 -/* 80176CF8 00173C58 48 19 EC 39 */ bl Free__7CMemoryFPCv -lbl_80176CFC: -/* 80176CFC 00173C5C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80176D00 00173C60 7F C3 F3 78 */ mr r3, r30 -/* 80176D04 00173C64 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80176D08 00173C68 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 80176D0C 00173C6C 7C 08 03 A6 */ mtlr r0 -/* 80176D10 00173C70 38 21 00 20 */ addi r1, r1, 0x20 -/* 80176D14 00173C74 4E 80 00 20 */ blr - -.global __dt__15CBeamProjectileFv -__dt__15CBeamProjectileFv: -/* 80176D18 00173C78 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80176D1C 00173C7C 7C 08 02 A6 */ mflr r0 -/* 80176D20 00173C80 90 01 00 14 */ stw r0, 0x14(r1) -/* 80176D24 00173C84 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80176D28 00173C88 7C 7F 1B 79 */ or. r31, r3, r3 -/* 80176D2C 00173C8C 93 C1 00 08 */ stw r30, 8(r1) -/* 80176D30 00173C90 7C 9E 23 78 */ mr r30, r4 -/* 80176D34 00173C94 41 82 00 E4 */ beq lbl_80176E18 -/* 80176D38 00173C98 3C 60 80 3E */ lis r3, lbl_803E4648@ha -/* 80176D3C 00173C9C 34 1F 04 00 */ addic. r0, r31, 0x400 -/* 80176D40 00173CA0 38 03 46 48 */ addi r0, r3, lbl_803E4648@l -/* 80176D44 00173CA4 90 1F 00 00 */ stw r0, 0(r31) -/* 80176D48 00173CA8 41 82 00 58 */ beq lbl_80176DA0 -/* 80176D4C 00173CAC 80 BF 04 00 */ lwz r5, 0x400(r31) -/* 80176D50 00173CB0 38 60 00 00 */ li r3, 0 -/* 80176D54 00173CB4 2C 05 00 00 */ cmpwi r5, 0 -/* 80176D58 00173CB8 40 81 00 40 */ ble lbl_80176D98 -/* 80176D5C 00173CBC 2C 05 00 08 */ cmpwi r5, 8 -/* 80176D60 00173CC0 38 85 FF F8 */ addi r4, r5, -8 -/* 80176D64 00173CC4 40 81 00 20 */ ble lbl_80176D84 -/* 80176D68 00173CC8 38 04 00 07 */ addi r0, r4, 7 -/* 80176D6C 00173CCC 54 00 E8 FE */ srwi r0, r0, 3 -/* 80176D70 00173CD0 7C 09 03 A6 */ mtctr r0 -/* 80176D74 00173CD4 2C 04 00 00 */ cmpwi r4, 0 -/* 80176D78 00173CD8 40 81 00 0C */ ble lbl_80176D84 -lbl_80176D7C: -/* 80176D7C 00173CDC 38 63 00 08 */ addi r3, r3, 8 -/* 80176D80 00173CE0 42 00 FF FC */ bdnz lbl_80176D7C -lbl_80176D84: -/* 80176D84 00173CE4 7C 03 28 50 */ subf r0, r3, r5 -/* 80176D88 00173CE8 7C 09 03 A6 */ mtctr r0 -/* 80176D8C 00173CEC 7C 03 28 00 */ cmpw r3, r5 -/* 80176D90 00173CF0 40 80 00 08 */ bge lbl_80176D98 -lbl_80176D94: -/* 80176D94 00173CF4 42 00 00 00 */ bdnz lbl_80176D94 -lbl_80176D98: -/* 80176D98 00173CF8 38 00 00 00 */ li r0, 0 -/* 80176D9C 00173CFC 90 1F 04 00 */ stw r0, 0x400(r31) -lbl_80176DA0: -/* 80176DA0 00173D00 34 1F 03 84 */ addic. r0, r31, 0x384 -/* 80176DA4 00173D04 41 82 00 58 */ beq lbl_80176DFC -/* 80176DA8 00173D08 80 BF 03 84 */ lwz r5, 0x384(r31) -/* 80176DAC 00173D0C 38 60 00 00 */ li r3, 0 -/* 80176DB0 00173D10 2C 05 00 00 */ cmpwi r5, 0 -/* 80176DB4 00173D14 40 81 00 40 */ ble lbl_80176DF4 -/* 80176DB8 00173D18 2C 05 00 08 */ cmpwi r5, 8 -/* 80176DBC 00173D1C 38 85 FF F8 */ addi r4, r5, -8 -/* 80176DC0 00173D20 40 81 00 20 */ ble lbl_80176DE0 -/* 80176DC4 00173D24 38 04 00 07 */ addi r0, r4, 7 -/* 80176DC8 00173D28 54 00 E8 FE */ srwi r0, r0, 3 -/* 80176DCC 00173D2C 7C 09 03 A6 */ mtctr r0 -/* 80176DD0 00173D30 2C 04 00 00 */ cmpwi r4, 0 -/* 80176DD4 00173D34 40 81 00 0C */ ble lbl_80176DE0 -lbl_80176DD8: -/* 80176DD8 00173D38 38 63 00 08 */ addi r3, r3, 8 -/* 80176DDC 00173D3C 42 00 FF FC */ bdnz lbl_80176DD8 -lbl_80176DE0: -/* 80176DE0 00173D40 7C 03 28 50 */ subf r0, r3, r5 -/* 80176DE4 00173D44 7C 09 03 A6 */ mtctr r0 -/* 80176DE8 00173D48 7C 03 28 00 */ cmpw r3, r5 -/* 80176DEC 00173D4C 40 80 00 08 */ bge lbl_80176DF4 -lbl_80176DF0: -/* 80176DF0 00173D50 42 00 00 00 */ bdnz lbl_80176DF0 -lbl_80176DF4: -/* 80176DF4 00173D54 38 00 00 00 */ li r0, 0 -/* 80176DF8 00173D58 90 1F 03 84 */ stw r0, 0x384(r31) -lbl_80176DFC: -/* 80176DFC 00173D5C 7F E3 FB 78 */ mr r3, r31 -/* 80176E00 00173D60 38 80 00 00 */ li r4, 0 -/* 80176E04 00173D64 4B EC 05 FD */ bl __dt__15CGameProjectileFv -/* 80176E08 00173D68 7F C0 07 35 */ extsh. r0, r30 -/* 80176E0C 00173D6C 40 81 00 0C */ ble lbl_80176E18 -/* 80176E10 00173D70 7F E3 FB 78 */ mr r3, r31 -/* 80176E14 00173D74 48 19 EB 1D */ bl Free__7CMemoryFPCv -lbl_80176E18: -/* 80176E18 00173D78 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80176E1C 00173D7C 7F E3 FB 78 */ mr r3, r31 -/* 80176E20 00173D80 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80176E24 00173D84 83 C1 00 08 */ lwz r30, 8(r1) -/* 80176E28 00173D88 7C 08 03 A6 */ mtlr r0 -/* 80176E2C 00173D8C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80176E30 00173D90 4E 80 00 20 */ blr - -.global sub_80176e34 -sub_80176e34: -/* 80176E34 00173D94 C0 02 A1 C0 */ lfs f0, lbl_805ABEE0@sda21(r2) -/* 80176E38 00173D98 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80176E3C 00173D9C 40 81 00 50 */ ble lbl_80176E8C -/* 80176E40 00173DA0 80 03 04 78 */ lwz r0, 0x478(r3) -/* 80176E44 00173DA4 60 00 00 08 */ ori r0, r0, 8 -/* 80176E48 00173DA8 90 03 04 78 */ stw r0, 0x478(r3) -/* 80176E4C 00173DAC D0 23 04 E0 */ stfs f1, 0x4e0(r3) -/* 80176E50 00173DB0 80 A4 00 00 */ lwz r5, 0(r4) -/* 80176E54 00173DB4 80 04 00 04 */ lwz r0, 4(r4) -/* 80176E58 00173DB8 90 A3 04 98 */ stw r5, 0x498(r3) -/* 80176E5C 00173DBC 90 03 04 9C */ stw r0, 0x49c(r3) -/* 80176E60 00173DC0 C0 04 00 08 */ lfs f0, 8(r4) -/* 80176E64 00173DC4 D0 03 04 A0 */ stfs f0, 0x4a0(r3) -/* 80176E68 00173DC8 C0 04 00 0C */ lfs f0, 0xc(r4) -/* 80176E6C 00173DCC D0 03 04 A4 */ stfs f0, 0x4a4(r3) -/* 80176E70 00173DD0 C0 04 00 10 */ lfs f0, 0x10(r4) -/* 80176E74 00173DD4 D0 03 04 A8 */ stfs f0, 0x4a8(r3) -/* 80176E78 00173DD8 C0 04 00 14 */ lfs f0, 0x14(r4) -/* 80176E7C 00173DDC D0 03 04 AC */ stfs f0, 0x4ac(r3) -/* 80176E80 00173DE0 88 04 00 18 */ lbz r0, 0x18(r4) -/* 80176E84 00173DE4 98 03 04 B0 */ stb r0, 0x4b0(r3) -/* 80176E88 00173DE8 4E 80 00 20 */ blr -lbl_80176E8C: -/* 80176E8C 00173DEC 80 03 04 78 */ lwz r0, 0x478(r3) -/* 80176E90 00173DF0 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b -/* 80176E94 00173DF4 90 03 04 78 */ stw r0, 0x478(r3) -/* 80176E98 00173DF8 4E 80 00 20 */ blr - -.global UpdateLights__17CPlasmaProjectileFffR13CStateManager -UpdateLights__17CPlasmaProjectileFffR13CStateManager: -/* 80176E9C 00173DFC 94 21 FF 00 */ stwu r1, -0x100(r1) -/* 80176EA0 00173E00 7C 08 02 A6 */ mflr r0 -/* 80176EA4 00173E04 90 01 01 04 */ stw r0, 0x104(r1) -/* 80176EA8 00173E08 DB E1 00 F0 */ stfd f31, 0xf0(r1) -/* 80176EAC 00173E0C F3 E1 00 F8 */ psq_st f31, 248(r1), 0, qr0 -/* 80176EB0 00173E10 DB C1 00 E0 */ stfd f30, 0xe0(r1) -/* 80176EB4 00173E14 F3 C1 00 E8 */ psq_st f30, 232(r1), 0, qr0 -/* 80176EB8 00173E18 93 E1 00 DC */ stw r31, 0xdc(r1) -/* 80176EBC 00173E1C 93 C1 00 D8 */ stw r30, 0xd8(r1) -/* 80176EC0 00173E20 93 A1 00 D4 */ stw r29, 0xd4(r1) -/* 80176EC4 00173E24 93 81 00 D0 */ stw r28, 0xd0(r1) -/* 80176EC8 00173E28 7C 7E 1B 78 */ mr r30, r3 -/* 80176ECC 00173E2C FF E0 08 90 */ fmr f31, f1 -/* 80176ED0 00173E30 80 63 05 20 */ lwz r3, 0x520(r3) -/* 80176ED4 00173E34 FF C0 10 90 */ fmr f30, f2 -/* 80176ED8 00173E38 7C 9F 23 78 */ mr r31, r4 -/* 80176EDC 00173E3C 28 03 00 00 */ cmplwi r3, 0 -/* 80176EE0 00173E40 41 82 01 4C */ beq lbl_8017702C -/* 80176EE4 00173E44 81 83 00 00 */ lwz r12, 0(r3) -/* 80176EE8 00173E48 81 8C 00 64 */ lwz r12, 0x64(r12) -/* 80176EEC 00173E4C 7D 89 03 A6 */ mtctr r12 -/* 80176EF0 00173E50 4E 80 04 21 */ bctrl -/* 80176EF4 00173E54 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80176EF8 00173E58 41 82 01 34 */ beq lbl_8017702C -/* 80176EFC 00173E5C 80 7E 05 20 */ lwz r3, 0x520(r30) -/* 80176F00 00173E60 FC 20 F0 90 */ fmr f1, f30 -/* 80176F04 00173E64 81 83 00 00 */ lwz r12, 0(r3) -/* 80176F08 00173E68 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 80176F0C 00173E6C 7D 89 03 A6 */ mtctr r12 -/* 80176F10 00173E70 4E 80 04 21 */ bctrl -/* 80176F14 00173E74 80 9E 05 20 */ lwz r4, 0x520(r30) -/* 80176F18 00173E78 38 61 00 30 */ addi r3, r1, 0x30 -/* 80176F1C 00173E7C 81 84 00 00 */ lwz r12, 0(r4) -/* 80176F20 00173E80 81 8C 00 68 */ lwz r12, 0x68(r12) -/* 80176F24 00173E84 7D 89 03 A6 */ mtctr r12 -/* 80176F28 00173E88 4E 80 04 21 */ bctrl -/* 80176F2C 00173E8C 38 61 00 80 */ addi r3, r1, 0x80 -/* 80176F30 00173E90 38 81 00 30 */ addi r4, r1, 0x30 -/* 80176F34 00173E94 4B EC 46 3D */ bl __ct__6CLightFCR6CLight -/* 80176F38 00173E98 FC 20 F8 90 */ fmr f1, f31 -/* 80176F3C 00173E9C 80 81 00 98 */ lwz r4, 0x98(r1) -/* 80176F40 00173EA0 38 60 00 00 */ li r3, 0 -/* 80176F44 00173EA4 48 1E C2 D1 */ bl Lerp__6CColorFUiUif -/* 80176F48 00173EA8 90 61 00 0C */ stw r3, 0xc(r1) -/* 80176F4C 00173EAC 38 61 00 80 */ addi r3, r1, 0x80 -/* 80176F50 00173EB0 38 81 00 0C */ addi r4, r1, 0xc -/* 80176F54 00173EB4 48 18 F4 09 */ bl SetColor__6CLightFRC6CColor -/* 80176F58 00173EB8 C0 2D A4 38 */ lfs f1, lbl_805A8FF8@sda21(r13) -/* 80176F5C 00173EBC C0 1E 03 04 */ lfs f0, 0x304(r30) -/* 80176F60 00173EC0 C3 C2 A1 C0 */ lfs f30, lbl_805ABEE0@sda21(r2) -/* 80176F64 00173EC4 EF E1 00 32 */ fmuls f31, f1, f0 -/* 80176F68 00173EC8 83 9E 04 74 */ lwz r28, 0x474(r30) -/* 80176F6C 00173ECC 48 00 00 A8 */ b lbl_80177014 -lbl_80176F70: -/* 80176F70 00173ED0 A0 1C 00 00 */ lhz r0, 0(r28) -/* 80176F74 00173ED4 7F E3 FB 78 */ mr r3, r31 -/* 80176F78 00173ED8 38 81 00 08 */ addi r4, r1, 8 -/* 80176F7C 00173EDC B0 01 00 08 */ sth r0, 8(r1) -/* 80176F80 00173EE0 4B ED 55 F5 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80176F84 00173EE4 7C 64 1B 78 */ mr r4, r3 -/* 80176F88 00173EE8 38 61 00 10 */ addi r3, r1, 0x10 -/* 80176F8C 00173EEC 4B F3 6A F9 */ bl "__ct__24TCastToPtr<10CGameLight>FP7CEntity" -/* 80176F90 00173EF0 83 A3 00 04 */ lwz r29, 4(r3) -/* 80176F94 00173EF4 28 1D 00 00 */ cmplwi r29, 0 -/* 80176F98 00173EF8 41 82 00 74 */ beq lbl_8017700C -/* 80176F9C 00173EFC C0 02 A1 C0 */ lfs f0, lbl_805ABEE0@sda21(r2) -/* 80176FA0 00173F00 3C 60 80 5A */ lis r3, skIdentity4f@ha -/* 80176FA4 00173F04 38 83 66 70 */ addi r4, r3, skIdentity4f@l -/* 80176FA8 00173F08 D3 C1 00 28 */ stfs f30, 0x28(r1) -/* 80176FAC 00173F0C 38 7D 00 34 */ addi r3, r29, 0x34 -/* 80176FB0 00173F10 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 80176FB4 00173F14 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 80176FB8 00173F18 48 19 BB 89 */ bl __as__12CTransform4fFRC12CTransform4f -/* 80176FBC 00173F1C 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 80176FC0 00173F20 38 C0 00 01 */ li r6, 1 -/* 80176FC4 00173F24 50 C0 26 F6 */ rlwimi r0, r6, 4, 0x1b, 0x1b -/* 80176FC8 00173F28 38 61 00 18 */ addi r3, r1, 0x18 -/* 80176FCC 00173F2C 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 80176FD0 00173F30 38 9E 03 24 */ addi r4, r30, 0x324 -/* 80176FD4 00173F34 38 A1 00 24 */ addi r5, r1, 0x24 -/* 80176FD8 00173F38 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 80176FDC 00173F3C 50 C0 1F 38 */ rlwimi r0, r6, 3, 0x1c, 0x1c -/* 80176FE0 00173F40 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 80176FE4 00173F44 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 80176FE8 00173F48 50 C0 17 7A */ rlwimi r0, r6, 2, 0x1d, 0x1d -/* 80176FEC 00173F4C 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 80176FF0 00173F50 48 19 BA F9 */ bl __ml__12CTransform4fCFRC9CVector3f -/* 80176FF4 00173F54 7F A3 EB 78 */ mr r3, r29 -/* 80176FF8 00173F58 38 81 00 18 */ addi r4, r1, 0x18 -/* 80176FFC 00173F5C 4B ED BE 91 */ bl SetTranslation__6CActorFRC9CVector3f -/* 80177000 00173F60 7F A3 EB 78 */ mr r3, r29 -/* 80177004 00173F64 38 81 00 80 */ addi r4, r1, 0x80 -/* 80177008 00173F68 4B F3 E7 3D */ bl SetLight__10CGameLightFRC6CLight -lbl_8017700C: -/* 8017700C 00173F6C EF DE F8 2A */ fadds f30, f30, f31 -/* 80177010 00173F70 3B 9C 00 02 */ addi r28, r28, 2 -lbl_80177014: -/* 80177014 00173F74 80 1E 04 6C */ lwz r0, 0x46c(r30) -/* 80177018 00173F78 80 7E 04 74 */ lwz r3, 0x474(r30) -/* 8017701C 00173F7C 54 00 08 3C */ slwi r0, r0, 1 -/* 80177020 00173F80 7C 03 02 14 */ add r0, r3, r0 -/* 80177024 00173F84 7C 1C 00 40 */ cmplw r28, r0 -/* 80177028 00173F88 40 82 FF 48 */ bne lbl_80176F70 -lbl_8017702C: -/* 8017702C 00173F8C E3 E1 00 F8 */ psq_l f31, 248(r1), 0, qr0 -/* 80177030 00173F90 CB E1 00 F0 */ lfd f31, 0xf0(r1) -/* 80177034 00173F94 E3 C1 00 E8 */ psq_l f30, 232(r1), 0, qr0 -/* 80177038 00173F98 CB C1 00 E0 */ lfd f30, 0xe0(r1) -/* 8017703C 00173F9C 83 E1 00 DC */ lwz r31, 0xdc(r1) -/* 80177040 00173FA0 83 C1 00 D8 */ lwz r30, 0xd8(r1) -/* 80177044 00173FA4 83 A1 00 D4 */ lwz r29, 0xd4(r1) -/* 80177048 00173FA8 80 01 01 04 */ lwz r0, 0x104(r1) -/* 8017704C 00173FAC 83 81 00 D0 */ lwz r28, 0xd0(r1) -/* 80177050 00173FB0 7C 08 03 A6 */ mtlr r0 -/* 80177054 00173FB4 38 21 01 00 */ addi r1, r1, 0x100 -/* 80177058 00173FB8 4E 80 00 20 */ blr - -.global DeletePlasmaLights__17CPlasmaProjectileFR13CStateManager -DeletePlasmaLights__17CPlasmaProjectileFR13CStateManager: -/* 8017705C 00173FBC 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 80177060 00173FC0 7C 08 02 A6 */ mflr r0 -/* 80177064 00173FC4 90 01 00 44 */ stw r0, 0x44(r1) -/* 80177068 00173FC8 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 8017706C 00173FCC 93 C1 00 38 */ stw r30, 0x38(r1) -/* 80177070 00173FD0 7C 9E 23 78 */ mr r30, r4 -/* 80177074 00173FD4 93 A1 00 34 */ stw r29, 0x34(r1) -/* 80177078 00173FD8 7C 7D 1B 78 */ mr r29, r3 -/* 8017707C 00173FDC 83 E3 04 74 */ lwz r31, 0x474(r3) -/* 80177080 00173FE0 48 00 00 28 */ b lbl_801770A8 -lbl_80177084: -/* 80177084 00173FE4 A0 7F 00 00 */ lhz r3, 0(r31) -/* 80177088 00173FE8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017708C 00173FEC 7C 03 00 40 */ cmplw r3, r0 -/* 80177090 00173FF0 41 82 00 14 */ beq lbl_801770A4 -/* 80177094 00173FF4 B0 61 00 08 */ sth r3, 8(r1) -/* 80177098 00173FF8 7F C3 F3 78 */ mr r3, r30 -/* 8017709C 00173FFC 38 81 00 08 */ addi r4, r1, 8 -/* 801770A0 00174000 4B ED 51 CD */ bl FreeScriptObject__13CStateManagerF9TUniqueId -lbl_801770A4: -/* 801770A4 00174004 3B FF 00 02 */ addi r31, r31, 2 -lbl_801770A8: -/* 801770A8 00174008 80 1D 04 6C */ lwz r0, 0x46c(r29) -/* 801770AC 0017400C 80 7D 04 74 */ lwz r3, 0x474(r29) -/* 801770B0 00174010 54 00 08 3C */ slwi r0, r0, 1 -/* 801770B4 00174014 7C 03 02 14 */ add r0, r3, r0 -/* 801770B8 00174018 7C 1F 00 40 */ cmplw r31, r0 -/* 801770BC 0017401C 40 82 FF C8 */ bne lbl_80177084 -/* 801770C0 00174020 38 00 00 00 */ li r0, 0 -/* 801770C4 00174024 38 7D 04 68 */ addi r3, r29, 0x468 -/* 801770C8 00174028 90 01 00 20 */ stw r0, 0x20(r1) -/* 801770CC 0017402C 38 81 00 1C */ addi r4, r1, 0x1c -/* 801770D0 00174030 90 01 00 24 */ stw r0, 0x24(r1) -/* 801770D4 00174034 90 01 00 28 */ stw r0, 0x28(r1) -/* 801770D8 00174038 4B EE 63 D9 */ bl sub_8005d4b0 -/* 801770DC 0017403C 80 01 00 20 */ lwz r0, 0x20(r1) -/* 801770E0 00174040 80 61 00 28 */ lwz r3, 0x28(r1) -/* 801770E4 00174044 54 00 08 3C */ slwi r0, r0, 1 -/* 801770E8 00174048 7C 03 02 14 */ add r0, r3, r0 -/* 801770EC 0017404C 90 61 00 10 */ stw r3, 0x10(r1) -/* 801770F0 00174050 7C 64 1B 78 */ mr r4, r3 -/* 801770F4 00174054 90 01 00 18 */ stw r0, 0x18(r1) -/* 801770F8 00174058 90 01 00 14 */ stw r0, 0x14(r1) -/* 801770FC 0017405C 90 61 00 0C */ stw r3, 0xc(r1) -/* 80177100 00174060 48 00 00 08 */ b lbl_80177108 -lbl_80177104: -/* 80177104 00174064 38 84 00 02 */ addi r4, r4, 2 -lbl_80177108: -/* 80177108 00174068 7C 04 00 40 */ cmplw r4, r0 -/* 8017710C 0017406C 40 82 FF F8 */ bne lbl_80177104 -/* 80177110 00174070 28 03 00 00 */ cmplwi r3, 0 -/* 80177114 00174074 41 82 00 08 */ beq lbl_8017711C -/* 80177118 00174078 48 19 E8 19 */ bl Free__7CMemoryFPCv -lbl_8017711C: -/* 8017711C 0017407C 80 01 00 44 */ lwz r0, 0x44(r1) -/* 80177120 00174080 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 80177124 00174084 83 C1 00 38 */ lwz r30, 0x38(r1) -/* 80177128 00174088 83 A1 00 34 */ lwz r29, 0x34(r1) -/* 8017712C 0017408C 7C 08 03 A6 */ mtlr r0 -/* 80177130 00174090 38 21 00 40 */ addi r1, r1, 0x40 -/* 80177134 00174094 4E 80 00 20 */ blr - -.global CreatePlasmaLights__17CPlasmaProjectileFUiRC6CLightR13CStateManager -CreatePlasmaLights__17CPlasmaProjectileFUiRC6CLightR13CStateManager: -/* 80177138 00174098 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 8017713C 0017409C 7C 08 02 A6 */ mflr r0 -/* 80177140 001740A0 90 01 00 64 */ stw r0, 0x64(r1) -/* 80177144 001740A4 BF 01 00 40 */ stmw r24, 0x40(r1) -/* 80177148 001740A8 7C DD 33 78 */ mr r29, r6 -/* 8017714C 001740AC 7C 9B 23 78 */ mr r27, r4 -/* 80177150 001740B0 7C 7A 1B 78 */ mr r26, r3 -/* 80177154 001740B4 7C BC 2B 78 */ mr r28, r5 -/* 80177158 001740B8 7F A4 EB 78 */ mr r4, r29 -/* 8017715C 001740BC 4B FF FF 01 */ bl DeletePlasmaLights__17CPlasmaProjectileFR13CStateManager -/* 80177160 001740C0 38 7A 04 68 */ addi r3, r26, 0x468 -/* 80177164 001740C4 38 80 00 03 */ li r4, 3 -/* 80177168 001740C8 4B E9 52 A1 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" -/* 8017716C 001740CC 3C 60 80 3D */ lis r3, lbl_803D0668@ha -/* 80177170 001740D0 3B C0 00 00 */ li r30, 0 -/* 80177174 001740D4 3B E3 06 68 */ addi r31, r3, lbl_803D0668@l -lbl_80177178: -/* 80177178 001740D8 38 00 00 00 */ li r0, 0 -/* 8017717C 001740DC 38 6D A9 18 */ addi r3, r13, "_EmptyString__Q24rstl66basic_string,Q24rstl17rmemory_allocator>"@sda21 -/* 80177180 001740E0 90 61 00 2C */ stw r3, 0x2c(r1) -/* 80177184 001740E4 7F A4 EB 78 */ mr r4, r29 -/* 80177188 001740E8 38 61 00 1C */ addi r3, r1, 0x1c -/* 8017718C 001740EC 90 01 00 30 */ stw r0, 0x30(r1) -/* 80177190 001740F0 90 01 00 34 */ stw r0, 0x34(r1) -/* 80177194 001740F4 4B ED 5F 49 */ bl AllocateUniqueId__13CStateManagerFv -/* 80177198 001740F8 A0 01 00 1C */ lhz r0, 0x1c(r1) -/* 8017719C 001740FC 7F E4 FB 78 */ mr r4, r31 -/* 801771A0 00174100 38 60 01 48 */ li r3, 0x148 -/* 801771A4 00174104 38 A0 00 00 */ li r5, 0 -/* 801771A8 00174108 B0 01 00 20 */ sth r0, 0x20(r1) -/* 801771AC 0017410C 48 19 E6 C1 */ bl __nw__FUlPCcPCc -/* 801771B0 00174110 7C 79 1B 79 */ or. r25, r3, r3 -/* 801771B4 00174114 41 82 00 6C */ beq lbl_80177220 -/* 801771B8 00174118 A0 BA 00 08 */ lhz r5, 8(r26) -/* 801771BC 0017411C 7F 44 D3 78 */ mr r4, r26 -/* 801771C0 00174120 38 61 00 24 */ addi r3, r1, 0x24 -/* 801771C4 00174124 B0 A1 00 18 */ sth r5, 0x18(r1) -/* 801771C8 00174128 88 1A 00 30 */ lbz r0, 0x30(r26) -/* 801771CC 0017412C B0 A1 00 14 */ sth r5, 0x14(r1) -/* 801771D0 00174130 54 18 CF FE */ rlwinm r24, r0, 0x19, 0x1f, 0x1f -/* 801771D4 00174134 4B ED 9E B1 */ bl GetAreaId__7CEntityCFv -/* 801771D8 00174138 80 A1 00 24 */ lwz r5, 0x24(r1) -/* 801771DC 0017413C 38 00 00 00 */ li r0, 0 -/* 801771E0 00174140 A0 81 00 20 */ lhz r4, 0x20(r1) -/* 801771E4 00174144 7F 23 CB 78 */ mr r3, r25 -/* 801771E8 00174148 90 A1 00 28 */ stw r5, 0x28(r1) -/* 801771EC 0017414C 7F 06 C3 78 */ mr r6, r24 -/* 801771F0 00174150 C0 22 A1 C0 */ lfs f1, lbl_805ABEE0@sda21(r2) -/* 801771F4 00174154 7F 8A E3 78 */ mr r10, r28 -/* 801771F8 00174158 B0 81 00 10 */ sth r4, 0x10(r1) -/* 801771FC 0017415C 38 81 00 10 */ addi r4, r1, 0x10 -/* 80177200 00174160 38 A1 00 28 */ addi r5, r1, 0x28 -/* 80177204 00174164 38 E1 00 2C */ addi r7, r1, 0x2c -/* 80177208 00174168 93 61 00 08 */ stw r27, 8(r1) -/* 8017720C 0017416C 39 1A 00 34 */ addi r8, r26, 0x34 -/* 80177210 00174170 39 21 00 18 */ addi r9, r1, 0x18 -/* 80177214 00174174 90 01 00 0C */ stw r0, 0xc(r1) -/* 80177218 00174178 4B F3 E6 0D */ bl "__ct__10CGameLightF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC12CTransform4f9TUniqueIdRC6CLightUiUif" -/* 8017721C 0017417C 7C 79 1B 78 */ mr r25, r3 -lbl_80177220: -/* 80177220 00174180 7F A3 EB 78 */ mr r3, r29 -/* 80177224 00174184 7F 24 CB 78 */ mr r4, r25 -/* 80177228 00174188 4B ED 5A CD */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence -/* 8017722C 0017418C 80 1A 04 6C */ lwz r0, 0x46c(r26) -/* 80177230 00174190 80 BA 04 70 */ lwz r5, 0x470(r26) -/* 80177234 00174194 7C 00 28 00 */ cmpw r0, r5 -/* 80177238 00174198 41 80 00 1C */ blt lbl_80177254 -/* 8017723C 0017419C 2C 05 00 00 */ cmpwi r5, 0 -/* 80177240 001741A0 38 7A 04 68 */ addi r3, r26, 0x468 -/* 80177244 001741A4 38 80 00 04 */ li r4, 4 -/* 80177248 001741A8 41 82 00 08 */ beq lbl_80177250 -/* 8017724C 001741AC 54 A4 08 3C */ slwi r4, r5, 1 -lbl_80177250: -/* 80177250 001741B0 4B E9 51 B9 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" -lbl_80177254: -/* 80177254 001741B4 80 1A 04 6C */ lwz r0, 0x46c(r26) -/* 80177258 001741B8 80 7A 04 74 */ lwz r3, 0x474(r26) -/* 8017725C 001741BC 54 00 08 3C */ slwi r0, r0, 1 -/* 80177260 001741C0 7C 63 02 15 */ add. r3, r3, r0 -/* 80177264 001741C4 41 82 00 0C */ beq lbl_80177270 -/* 80177268 001741C8 A0 01 00 20 */ lhz r0, 0x20(r1) -/* 8017726C 001741CC B0 03 00 00 */ sth r0, 0(r3) -lbl_80177270: -/* 80177270 001741D0 80 9A 04 6C */ lwz r4, 0x46c(r26) -/* 80177274 001741D4 38 61 00 2C */ addi r3, r1, 0x2c -/* 80177278 001741D8 38 04 00 01 */ addi r0, r4, 1 -/* 8017727C 001741DC 90 1A 04 6C */ stw r0, 0x46c(r26) -/* 80177280 001741E0 48 1C 68 61 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 80177284 001741E4 3B DE 00 01 */ addi r30, r30, 1 -/* 80177288 001741E8 2C 1E 00 03 */ cmpwi r30, 3 -/* 8017728C 001741EC 41 80 FE EC */ blt lbl_80177178 -/* 80177290 001741F0 BB 01 00 40 */ lmw r24, 0x40(r1) -/* 80177294 001741F4 80 01 00 64 */ lwz r0, 0x64(r1) -/* 80177298 001741F8 7C 08 03 A6 */ mtlr r0 -/* 8017729C 001741FC 38 21 00 60 */ addi r1, r1, 0x60 -/* 801772A0 00174200 4E 80 00 20 */ blr - -.global SetLightsActive__17CPlasmaProjectileFbR13CStateManager -SetLightsActive__17CPlasmaProjectileFbR13CStateManager: -/* 801772A4 00174204 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 801772A8 00174208 7C 08 02 A6 */ mflr r0 -/* 801772AC 0017420C 90 01 00 34 */ stw r0, 0x34(r1) -/* 801772B0 00174210 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 801772B4 00174214 93 C1 00 28 */ stw r30, 0x28(r1) -/* 801772B8 00174218 54 9E 06 3E */ clrlwi r30, r4, 0x18 -/* 801772BC 0017421C 93 A1 00 24 */ stw r29, 0x24(r1) -/* 801772C0 00174220 7C BD 2B 78 */ mr r29, r5 -/* 801772C4 00174224 93 81 00 20 */ stw r28, 0x20(r1) -/* 801772C8 00174228 7C 7C 1B 78 */ mr r28, r3 -/* 801772CC 0017422C 83 E3 04 74 */ lwz r31, 0x474(r3) -/* 801772D0 00174230 48 00 00 54 */ b lbl_80177324 -lbl_801772D4: -/* 801772D4 00174234 A0 7F 00 00 */ lhz r3, 0(r31) -/* 801772D8 00174238 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 801772DC 0017423C 7C 03 00 40 */ cmplw r3, r0 -/* 801772E0 00174240 41 82 00 40 */ beq lbl_80177320 -/* 801772E4 00174244 B0 61 00 08 */ sth r3, 8(r1) -/* 801772E8 00174248 7F A3 EB 78 */ mr r3, r29 -/* 801772EC 0017424C 38 81 00 08 */ addi r4, r1, 8 -/* 801772F0 00174250 4B ED 52 85 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 801772F4 00174254 7C 64 1B 78 */ mr r4, r3 -/* 801772F8 00174258 38 61 00 0C */ addi r3, r1, 0xc -/* 801772FC 0017425C 4B F3 67 89 */ bl "__ct__24TCastToPtr<10CGameLight>FP7CEntity" -/* 80177300 00174260 80 63 00 04 */ lwz r3, 4(r3) -/* 80177304 00174264 28 03 00 00 */ cmplwi r3, 0 -/* 80177308 00174268 41 82 00 18 */ beq lbl_80177320 -/* 8017730C 0017426C 81 83 00 00 */ lwz r12, 0(r3) -/* 80177310 00174270 7F C4 F3 78 */ mr r4, r30 -/* 80177314 00174274 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 80177318 00174278 7D 89 03 A6 */ mtctr r12 -/* 8017731C 0017427C 4E 80 04 21 */ bctrl -lbl_80177320: -/* 80177320 00174280 3B FF 00 02 */ addi r31, r31, 2 -lbl_80177324: -/* 80177324 00174284 80 1C 04 6C */ lwz r0, 0x46c(r28) -/* 80177328 00174288 80 7C 04 74 */ lwz r3, 0x474(r28) -/* 8017732C 0017428C 54 00 08 3C */ slwi r0, r0, 1 -/* 80177330 00174290 7C 03 02 14 */ add r0, r3, r0 -/* 80177334 00174294 7C 1F 00 40 */ cmplw r31, r0 -/* 80177338 00174298 40 82 FF 9C */ bne lbl_801772D4 -/* 8017733C 0017429C 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80177340 001742A0 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 80177344 001742A4 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 80177348 001742A8 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 8017734C 001742AC 83 81 00 20 */ lwz r28, 0x20(r1) -/* 80177350 001742B0 7C 08 03 A6 */ mtlr r0 -/* 80177354 001742B4 38 21 00 30 */ addi r1, r1, 0x30 -/* 80177358 001742B8 4E 80 00 20 */ blr - -.global AcceptScriptMsg__17CPlasmaProjectileF20EScriptObjectMessage9TUniqueIdR13CStateManager -AcceptScriptMsg__17CPlasmaProjectileF20EScriptObjectMessage9TUniqueIdR13CStateManager: -/* 8017735C 001742BC 94 21 FF 60 */ stwu r1, -0xa0(r1) -/* 80177360 001742C0 7C 08 02 A6 */ mflr r0 -/* 80177364 001742C4 90 01 00 A4 */ stw r0, 0xa4(r1) -/* 80177368 001742C8 BF 41 00 88 */ stmw r26, 0x88(r1) -/* 8017736C 001742CC 7C 9D 23 78 */ mr r29, r4 -/* 80177370 001742D0 2C 1D 00 22 */ cmpwi r29, 0x22 -/* 80177374 001742D4 7C 7C 1B 78 */ mr r28, r3 -/* 80177378 001742D8 7C BE 2B 78 */ mr r30, r5 -/* 8017737C 001742DC 7C DF 33 78 */ mr r31, r6 -/* 80177380 001742E0 41 82 01 90 */ beq lbl_80177510 -/* 80177384 001742E4 40 80 01 D8 */ bge lbl_8017755C -/* 80177388 001742E8 2C 1D 00 21 */ cmpwi r29, 0x21 -/* 8017738C 001742EC 40 80 00 08 */ bge lbl_80177394 -/* 80177390 001742F0 48 00 01 CC */ b lbl_8017755C -lbl_80177394: -/* 80177394 001742F4 88 1C 00 E6 */ lbz r0, 0xe6(r28) -/* 80177398 001742F8 38 60 00 02 */ li r3, 2 -/* 8017739C 001742FC 50 60 1E F8 */ rlwimi r0, r3, 3, 0x1b, 0x1c -/* 801773A0 00174300 38 61 00 2C */ addi r3, r1, 0x2c -/* 801773A4 00174304 98 1C 00 E6 */ stb r0, 0xe6(r28) -/* 801773A8 00174308 38 9C 01 70 */ addi r4, r28, 0x170 -/* 801773AC 0017430C 4B EC 11 D5 */ bl GetWeaponDescription__17CProjectileWeaponCFv -/* 801773B0 00174310 80 61 00 34 */ lwz r3, 0x34(r1) -/* 801773B4 00174314 88 03 00 40 */ lbz r0, 0x40(r3) -/* 801773B8 00174318 28 00 00 00 */ cmplwi r0, 0 -/* 801773BC 0017431C 41 82 00 88 */ beq lbl_80177444 -/* 801773C0 00174320 3C 60 80 3D */ lis r3, lbl_803D0668@ha -/* 801773C4 00174324 3B 40 00 00 */ li r26, 0 -/* 801773C8 00174328 38 83 06 68 */ addi r4, r3, lbl_803D0668@l -/* 801773CC 0017432C 38 A0 00 00 */ li r5, 0 -/* 801773D0 00174330 38 60 03 40 */ li r3, 0x340 -/* 801773D4 00174334 48 19 E4 99 */ bl __nw__FUlPCcPCc -/* 801773D8 00174338 7C 7B 1B 79 */ or. r27, r3, r3 -/* 801773DC 0017433C 41 82 00 30 */ beq lbl_8017740C -/* 801773E0 00174340 80 81 00 34 */ lwz r4, 0x34(r1) -/* 801773E4 00174344 38 61 00 24 */ addi r3, r1, 0x24 -/* 801773E8 00174348 38 84 00 34 */ addi r4, r4, 0x34 -/* 801773EC 0017434C 48 1C 9A BD */ bl __ct__6CTokenFRC6CToken -/* 801773F0 00174350 7F 63 DB 78 */ mr r3, r27 -/* 801773F4 00174354 38 81 00 24 */ addi r4, r1, 0x24 -/* 801773F8 00174358 3B 40 00 01 */ li r26, 1 -/* 801773FC 0017435C 38 A0 00 00 */ li r5, 0 -/* 80177400 00174360 38 C0 00 01 */ li r6, 1 -/* 80177404 00174364 48 1A 7F DD */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" -/* 80177408 00174368 7C 7B 1B 78 */ mr r27, r3 -lbl_8017740C: -/* 8017740C 0017436C 80 7C 05 20 */ lwz r3, 0x520(r28) -/* 80177410 00174370 28 03 00 00 */ cmplwi r3, 0 -/* 80177414 00174374 41 82 00 18 */ beq lbl_8017742C -/* 80177418 00174378 81 83 00 00 */ lwz r12, 0(r3) -/* 8017741C 0017437C 38 80 00 01 */ li r4, 1 -/* 80177420 00174380 81 8C 00 08 */ lwz r12, 8(r12) -/* 80177424 00174384 7D 89 03 A6 */ mtctr r12 -/* 80177428 00174388 4E 80 04 21 */ bctrl -lbl_8017742C: -/* 8017742C 0017438C 7F 40 07 75 */ extsb. r0, r26 -/* 80177430 00174390 93 7C 05 20 */ stw r27, 0x520(r28) -/* 80177434 00174394 41 82 00 10 */ beq lbl_80177444 -/* 80177438 00174398 38 61 00 24 */ addi r3, r1, 0x24 -/* 8017743C 0017439C 38 80 00 00 */ li r4, 0 -/* 80177440 001743A0 48 1C 9A 01 */ bl __dt__6CTokenFv -lbl_80177444: -/* 80177444 001743A4 80 7C 05 20 */ lwz r3, 0x520(r28) -/* 80177448 001743A8 28 03 00 00 */ cmplwi r3, 0 -/* 8017744C 001743AC 41 82 00 54 */ beq lbl_801774A0 -/* 80177450 001743B0 81 83 00 00 */ lwz r12, 0(r3) -/* 80177454 001743B4 81 8C 00 64 */ lwz r12, 0x64(r12) -/* 80177458 001743B8 7D 89 03 A6 */ mtctr r12 -/* 8017745C 001743BC 4E 80 04 21 */ bctrl -/* 80177460 001743C0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80177464 001743C4 41 82 00 3C */ beq lbl_801774A0 -/* 80177468 001743C8 80 9C 05 20 */ lwz r4, 0x520(r28) -/* 8017746C 001743CC 38 61 00 38 */ addi r3, r1, 0x38 -/* 80177470 001743D0 80 A1 00 2C */ lwz r5, 0x2c(r1) -/* 80177474 001743D4 81 84 00 00 */ lwz r12, 0(r4) -/* 80177478 001743D8 83 65 00 08 */ lwz r27, 8(r5) -/* 8017747C 001743DC 81 8C 00 68 */ lwz r12, 0x68(r12) -/* 80177480 001743E0 7D 89 03 A6 */ mtctr r12 -/* 80177484 001743E4 4E 80 04 21 */ bctrl -/* 80177488 001743E8 7F 83 E3 78 */ mr r3, r28 -/* 8017748C 001743EC 7F 64 DB 78 */ mr r4, r27 -/* 80177490 001743F0 7F E6 FB 78 */ mr r6, r31 -/* 80177494 001743F4 38 A1 00 38 */ addi r5, r1, 0x38 -/* 80177498 001743F8 4B FF FC A1 */ bl CreatePlasmaLights__17CPlasmaProjectileFUiRC6CLightR13CStateManager -/* 8017749C 001743FC 48 00 00 2C */ b lbl_801774C8 -lbl_801774A0: -/* 801774A0 00174400 80 7C 05 20 */ lwz r3, 0x520(r28) -/* 801774A4 00174404 28 03 00 00 */ cmplwi r3, 0 -/* 801774A8 00174408 41 82 00 18 */ beq lbl_801774C0 -/* 801774AC 0017440C 81 83 00 00 */ lwz r12, 0(r3) -/* 801774B0 00174410 38 80 00 01 */ li r4, 1 -/* 801774B4 00174414 81 8C 00 08 */ lwz r12, 8(r12) -/* 801774B8 00174418 7D 89 03 A6 */ mtctr r12 -/* 801774BC 0017441C 4E 80 04 21 */ bctrl -lbl_801774C0: -/* 801774C0 00174420 38 00 00 00 */ li r0, 0 -/* 801774C4 00174424 90 1C 05 20 */ stw r0, 0x520(r28) -lbl_801774C8: -/* 801774C8 00174428 88 1C 05 48 */ lbz r0, 0x548(r28) -/* 801774CC 0017442C 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f -/* 801774D0 00174430 41 82 00 14 */ beq lbl_801774E4 -/* 801774D4 00174434 A0 1C 00 EC */ lhz r0, 0xec(r28) -/* 801774D8 00174438 B0 01 00 1C */ sth r0, 0x1c(r1) -/* 801774DC 0017443C B0 01 00 20 */ sth r0, 0x20(r1) -/* 801774E0 00174440 B0 1C 00 C6 */ sth r0, 0xc6(r28) -lbl_801774E4: -/* 801774E4 00174444 A0 1C 00 EC */ lhz r0, 0xec(r28) -/* 801774E8 00174448 7F E3 FB 78 */ mr r3, r31 -/* 801774EC 0017444C 80 BC 00 F0 */ lwz r5, 0xf0(r28) -/* 801774F0 00174450 38 81 00 18 */ addi r4, r1, 0x18 -/* 801774F4 00174454 B0 01 00 14 */ sth r0, 0x14(r1) -/* 801774F8 00174458 B0 01 00 18 */ sth r0, 0x18(r1) -/* 801774FC 0017445C 4B EC D8 0D */ bl AddWeaponId__13CStateManagerF9TUniqueId11EWeaponType -/* 80177500 00174460 38 61 00 2C */ addi r3, r1, 0x2c -/* 80177504 00174464 38 80 00 00 */ li r4, 0 -/* 80177508 00174468 48 1C 99 39 */ bl __dt__6CTokenFv -/* 8017750C 0017446C 48 00 00 50 */ b lbl_8017755C -lbl_80177510: -/* 80177510 00174470 A0 1C 00 EC */ lhz r0, 0xec(r28) -/* 80177514 00174474 7F E3 FB 78 */ mr r3, r31 -/* 80177518 00174478 80 BC 00 F0 */ lwz r5, 0xf0(r28) -/* 8017751C 0017447C 38 81 00 10 */ addi r4, r1, 0x10 -/* 80177520 00174480 B0 01 00 0C */ sth r0, 0xc(r1) -/* 80177524 00174484 B0 01 00 10 */ sth r0, 0x10(r1) -/* 80177528 00174488 4B EC D7 B1 */ bl RemoveWeaponId__13CStateManagerF9TUniqueId11EWeaponType -/* 8017752C 0017448C 7F 83 E3 78 */ mr r3, r28 -/* 80177530 00174490 7F E4 FB 78 */ mr r4, r31 -/* 80177534 00174494 4B FF FB 29 */ bl DeletePlasmaLights__17CPlasmaProjectileFR13CStateManager -/* 80177538 00174498 88 1C 05 48 */ lbz r0, 0x548(r28) -/* 8017753C 0017449C 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f -/* 80177540 001744A0 41 82 00 1C */ beq lbl_8017755C -/* 80177544 001744A4 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 80177548 001744A8 4B E9 A3 FD */ bl DecrementPhazon__7CPlayerFv -/* 8017754C 001744AC 88 1C 05 48 */ lbz r0, 0x548(r28) -/* 80177550 001744B0 38 60 00 00 */ li r3, 0 -/* 80177554 001744B4 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d -/* 80177558 001744B8 98 1C 05 48 */ stb r0, 0x548(r28) -lbl_8017755C: -/* 8017755C 001744BC A0 1E 00 00 */ lhz r0, 0(r30) -/* 80177560 001744C0 7F 83 E3 78 */ mr r3, r28 -/* 80177564 001744C4 7F A4 EB 78 */ mr r4, r29 -/* 80177568 001744C8 7F E6 FB 78 */ mr r6, r31 -/* 8017756C 001744CC B0 01 00 08 */ sth r0, 8(r1) -/* 80177570 001744D0 38 A1 00 08 */ addi r5, r1, 8 -/* 80177574 001744D4 4B EC 10 59 */ bl AcceptScriptMsg__15CGameProjectileF20EScriptObjectMessage9TUniqueIdR13CStateManager -/* 80177578 001744D8 BB 41 00 88 */ lmw r26, 0x88(r1) -/* 8017757C 001744DC 80 01 00 A4 */ lwz r0, 0xa4(r1) -/* 80177580 001744E0 7C 08 03 A6 */ mtlr r0 -/* 80177584 001744E4 38 21 00 A0 */ addi r1, r1, 0xa0 -/* 80177588 001744E8 4E 80 00 20 */ blr - -.global RenderMotionBlur__17CPlasmaProjectileCFv -RenderMotionBlur__17CPlasmaProjectileCFv: -/* 8017758C 001744EC 94 21 FF 80 */ stwu r1, -0x80(r1) -/* 80177590 001744F0 7C 08 02 A6 */ mflr r0 -/* 80177594 001744F4 90 01 00 84 */ stw r0, 0x84(r1) -/* 80177598 001744F8 DB E1 00 70 */ stfd f31, 0x70(r1) -/* 8017759C 001744FC F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 -/* 801775A0 00174500 DB C1 00 60 */ stfd f30, 0x60(r1) -/* 801775A4 00174504 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 -/* 801775A8 00174508 DB A1 00 50 */ stfd f29, 0x50(r1) -/* 801775AC 0017450C F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 -/* 801775B0 00174510 DB 81 00 40 */ stfd f28, 0x40(r1) -/* 801775B4 00174514 F3 81 00 48 */ psq_st f28, 72(r1), 0, qr0 -/* 801775B8 00174518 DB 61 00 30 */ stfd f27, 0x30(r1) -/* 801775BC 0017451C F3 61 00 38 */ psq_st f27, 56(r1), 0, qr0 -/* 801775C0 00174520 BF 41 00 18 */ stmw r26, 0x18(r1) -/* 801775C4 00174524 7C 7A 1B 78 */ mr r26, r3 -/* 801775C8 00174528 38 60 00 00 */ li r3, 0 -/* 801775CC 0017452C 48 19 44 A5 */ bl SetCullMode__9CGraphicsF12ERglCullMode -/* 801775D0 00174530 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) -/* 801775D4 00174534 3C 80 80 5A */ lis r4, skIdentity4f@ha -/* 801775D8 00174538 38 84 66 70 */ addi r4, r4, skIdentity4f@l -/* 801775DC 0017453C 81 83 00 00 */ lwz r12, 0(r3) -/* 801775E0 00174540 81 8C 00 30 */ lwz r12, 0x30(r12) -/* 801775E4 00174544 7D 89 03 A6 */ mtctr r12 -/* 801775E8 00174548 4E 80 04 21 */ bctrl -/* 801775EC 0017454C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) -/* 801775F0 00174550 81 83 00 00 */ lwz r12, 0(r3) -/* 801775F4 00174554 81 8C 00 68 */ lwz r12, 0x68(r12) -/* 801775F8 00174558 7D 89 03 A6 */ mtctr r12 -/* 801775FC 0017455C 4E 80 04 21 */ bctrl -/* 80177600 00174560 C0 22 A1 C4 */ lfs f1, lbl_805ABEE4@sda21(r2) -/* 80177604 00174564 C0 1A 04 C4 */ lfs f0, 0x4c4(r26) -/* 80177608 00174568 80 1A 04 94 */ lwz r0, 0x494(r26) -/* 8017760C 0017456C EF C1 00 32 */ fmuls f30, f1, f0 -/* 80177610 00174570 C3 BA 03 30 */ lfs f29, 0x330(r26) -/* 80177614 00174574 90 01 00 0C */ stw r0, 0xc(r1) -/* 80177618 00174578 C3 9A 03 40 */ lfs f28, 0x340(r26) -/* 8017761C 0017457C C3 7A 03 50 */ lfs f27, 0x350(r26) -/* 80177620 00174580 F3 C1 A0 08 */ psq_st f30, 8(r1), 1, qr2 -/* 80177624 00174584 3C 60 80 3D */ lis r3, lbl_803D0650@ha -/* 80177628 00174588 38 63 06 50 */ addi r3, r3, lbl_803D0650@l -/* 8017762C 0017458C 88 01 00 08 */ lbz r0, 8(r1) -/* 80177630 00174590 98 01 00 0F */ stb r0, 0xf(r1) -/* 80177634 00174594 80 01 00 0C */ lwz r0, 0xc(r1) -/* 80177638 00174598 54 1C 00 2E */ rlwinm r28, r0, 0, 0, 0x17 -/* 8017763C 0017459C 63 9B 00 3F */ ori r27, r28, 0x3f -/* 80177640 001745A0 48 19 07 E9 */ bl SetVtxDescv__3CGXFPC14_GXVtxDescList -/* 80177644 001745A4 38 60 00 01 */ li r3, 1 -/* 80177648 001745A8 48 19 18 09 */ bl SetNumChans__3CGXFUc -/* 8017764C 001745AC 38 60 00 01 */ li r3, 1 -/* 80177650 001745B0 48 19 16 41 */ bl SetNumTevStages__3CGXFUc -/* 80177654 001745B4 38 60 00 00 */ li r3, 0 -/* 80177658 001745B8 38 80 00 00 */ li r4, 0 -/* 8017765C 001745BC 38 A0 00 00 */ li r5, 0 -/* 80177660 001745C0 38 C0 00 01 */ li r6, 1 -/* 80177664 001745C4 38 E0 00 00 */ li r7, 0 -/* 80177668 001745C8 39 00 00 00 */ li r8, 0 -/* 8017766C 001745CC 39 20 00 02 */ li r9, 2 -/* 80177670 001745D0 48 19 16 5D */ bl SetChanCtrl__3CGXFQ23CGX10EChannelIdUc11_GXColorSrc11_GXColorSrc10_GXLightID12_GXDiffuseFn9_GXAttnFn -/* 80177674 001745D4 38 60 00 00 */ li r3, 0 -/* 80177678 001745D8 48 19 17 9D */ bl SetNumTexGens__3CGXFUc -/* 8017767C 001745DC 38 60 00 00 */ li r3, 0 -/* 80177680 001745E0 38 80 00 FF */ li r4, 0xff -/* 80177684 001745E4 38 A0 00 FF */ li r5, 0xff -/* 80177688 001745E8 38 C0 00 04 */ li r6, 4 -/* 8017768C 001745EC 48 19 12 C1 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID -/* 80177690 001745F0 80 8D 9C 68 */ lwz r4, lbl_805A8828@sda21(r13) -/* 80177694 001745F4 38 60 00 00 */ li r3, 0 -/* 80177698 001745F8 48 19 2C 21 */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass -/* 8017769C 001745FC 80 8D 9C 68 */ lwz r4, lbl_805A8828@sda21(r13) -/* 801776A0 00174600 38 60 00 01 */ li r3, 1 -/* 801776A4 00174604 48 19 2C 15 */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass -/* 801776A8 00174608 38 60 00 98 */ li r3, 0x98 -/* 801776AC 0017460C 38 80 00 00 */ li r4, 0 -/* 801776B0 00174610 38 A0 00 10 */ li r5, 0x10 -/* 801776B4 00174614 48 19 0E D1 */ bl Begin__3CGXF12_GXPrimitive9_GXVtxFmtUs -/* 801776B8 00174618 C3 C2 A1 C8 */ lfs f30, lbl_805ABEE8@sda21(r2) -/* 801776BC 0017461C 3B BA 04 04 */ addi r29, r26, 0x404 -/* 801776C0 00174620 CB E2 A1 D0 */ lfd f31, lbl_805ABEF0@sda21(r2) -/* 801776C4 00174624 3B 40 00 00 */ li r26, 0 -/* 801776C8 00174628 3F C0 43 30 */ lis r30, 0x4330 -/* 801776CC 0017462C 3F E0 CC 01 */ lis r31, 0xcc01 -lbl_801776D0: -/* 801776D0 00174630 6F 40 80 00 */ xoris r0, r26, 0x8000 -/* 801776D4 00174634 93 C1 00 10 */ stw r30, 0x10(r1) -/* 801776D8 00174638 7F 63 DB 78 */ mr r3, r27 -/* 801776DC 0017463C 7F 84 E3 78 */ mr r4, r28 -/* 801776E0 00174640 90 01 00 14 */ stw r0, 0x14(r1) -/* 801776E4 00174644 C8 01 00 10 */ lfd f0, 0x10(r1) -/* 801776E8 00174648 EC 00 F8 28 */ fsubs f0, f0, f31 -/* 801776EC 0017464C EC 3E 00 32 */ fmuls f1, f30, f0 -/* 801776F0 00174650 48 1E BB 25 */ bl Lerp__6CColorFUiUif -/* 801776F4 00174654 D3 BF 80 00 */ stfs f29, 0xCC008000@l(r31) -/* 801776F8 00174658 3B 5A 00 01 */ addi r26, r26, 1 -/* 801776FC 0017465C 2C 1A 00 08 */ cmpwi r26, 8 -/* 80177700 00174660 D3 9F 80 00 */ stfs f28, 0xCC008000@l(r31) -/* 80177704 00174664 D3 7F 80 00 */ stfs f27, 0xCC008000@l(r31) -/* 80177708 00174668 90 7F 80 00 */ stw r3, 0xCC008000@l(r31) -/* 8017770C 0017466C C0 5D 00 08 */ lfs f2, 8(r29) -/* 80177710 00174670 C0 3D 00 04 */ lfs f1, 4(r29) -/* 80177714 00174674 C0 1D 00 00 */ lfs f0, 0(r29) -/* 80177718 00174678 3B BD 00 0C */ addi r29, r29, 0xc -/* 8017771C 0017467C D0 1F 80 00 */ stfs f0, 0xCC008000@l(r31) -/* 80177720 00174680 D0 3F 80 00 */ stfs f1, 0xCC008000@l(r31) -/* 80177724 00174684 D0 5F 80 00 */ stfs f2, 0xCC008000@l(r31) -/* 80177728 00174688 90 7F 80 00 */ stw r3, 0xCC008000@l(r31) -/* 8017772C 0017468C 41 80 FF A4 */ blt lbl_801776D0 -/* 80177730 00174690 48 19 0E 51 */ bl End__3CGXFv -/* 80177734 00174694 38 60 00 01 */ li r3, 1 -/* 80177738 00174698 48 19 43 39 */ bl SetCullMode__9CGraphicsF12ERglCullMode -/* 8017773C 0017469C E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 -/* 80177740 001746A0 CB E1 00 70 */ lfd f31, 0x70(r1) -/* 80177744 001746A4 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 -/* 80177748 001746A8 CB C1 00 60 */ lfd f30, 0x60(r1) -/* 8017774C 001746AC E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0 -/* 80177750 001746B0 CB A1 00 50 */ lfd f29, 0x50(r1) -/* 80177754 001746B4 E3 81 00 48 */ psq_l f28, 72(r1), 0, qr0 -/* 80177758 001746B8 CB 81 00 40 */ lfd f28, 0x40(r1) -/* 8017775C 001746BC E3 61 00 38 */ psq_l f27, 56(r1), 0, qr0 -/* 80177760 001746C0 CB 61 00 30 */ lfd f27, 0x30(r1) -/* 80177764 001746C4 BB 41 00 18 */ lmw r26, 0x18(r1) -/* 80177768 001746C8 80 01 00 84 */ lwz r0, 0x84(r1) -/* 8017776C 001746CC 7C 08 03 A6 */ mtlr r0 -/* 80177770 001746D0 38 21 00 80 */ addi r1, r1, 0x80 -/* 80177774 001746D4 4E 80 00 20 */ blr - -.global UpdateEnergyPulse__17CPlasmaProjectileFf -UpdateEnergyPulse__17CPlasmaProjectileFf: -/* 80177778 001746D8 94 21 FF 90 */ stwu r1, -0x70(r1) -/* 8017777C 001746DC 7C 08 02 A6 */ mflr r0 -/* 80177780 001746E0 90 01 00 74 */ stw r0, 0x74(r1) -/* 80177784 001746E4 DB E1 00 60 */ stfd f31, 0x60(r1) -/* 80177788 001746E8 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 -/* 8017778C 001746EC DB C1 00 50 */ stfd f30, 0x50(r1) -/* 80177790 001746F0 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 -/* 80177794 001746F4 DB A1 00 40 */ stfd f29, 0x40(r1) -/* 80177798 001746F8 F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 -/* 8017779C 001746FC DB 81 00 30 */ stfd f28, 0x30(r1) -/* 801777A0 00174700 F3 81 00 38 */ psq_st f28, 56(r1), 0, qr0 -/* 801777A4 00174704 DB 61 00 20 */ stfd f27, 0x20(r1) -/* 801777A8 00174708 F3 61 00 28 */ psq_st f27, 40(r1), 0, qr0 -/* 801777AC 0017470C 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 801777B0 00174710 7C 7F 1B 78 */ mr r31, r3 -/* 801777B4 00174714 FF 60 08 90 */ fmr f27, f1 -/* 801777B8 00174718 80 03 02 F8 */ lwz r0, 0x2f8(r3) -/* 801777BC 0017471C 2C 00 00 00 */ cmpwi r0, 0 -/* 801777C0 00174720 41 82 00 10 */ beq lbl_801777D0 -/* 801777C4 00174724 88 1F 05 48 */ lbz r0, 0x548(r31) -/* 801777C8 00174728 54 00 D7 FE */ rlwinm r0, r0, 0x1a, 0x1f, 0x1f -/* 801777CC 0017472C 48 00 00 08 */ b lbl_801777D4 -lbl_801777D0: -/* 801777D0 00174730 38 00 00 00 */ li r0, 0 -lbl_801777D4: -/* 801777D4 00174734 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 801777D8 00174738 41 82 00 E0 */ beq lbl_801778B8 -/* 801777DC 0017473C C0 3F 04 D8 */ lfs f1, 0x4d8(r31) -/* 801777E0 00174740 C0 02 A1 C0 */ lfs f0, lbl_805ABEE0@sda21(r2) -/* 801777E4 00174744 EC 21 D8 28 */ fsubs f1, f1, f27 -/* 801777E8 00174748 D0 3F 04 D8 */ stfs f1, 0x4d8(r31) -/* 801777EC 0017474C C0 3F 04 D8 */ lfs f1, 0x4d8(r31) -/* 801777F0 00174750 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801777F4 00174754 4C 40 13 82 */ cror 2, 0, 2 -/* 801777F8 00174758 40 82 00 C0 */ bne lbl_801778B8 -/* 801777FC 0017475C C0 02 A1 D8 */ lfs f0, lbl_805ABEF8@sda21(r2) -/* 80177800 00174760 38 80 00 01 */ li r4, 1 -/* 80177804 00174764 EC 00 06 F2 */ fmuls f0, f0, f27 -/* 80177808 00174768 D0 1F 04 D8 */ stfs f0, 0x4d8(r31) -/* 8017780C 0017476C 80 7F 05 1C */ lwz r3, 0x51c(r31) -/* 80177810 00174770 81 83 00 00 */ lwz r12, 0(r3) -/* 80177814 00174774 81 8C 00 2C */ lwz r12, 0x2c(r12) -/* 80177818 00174778 7D 89 03 A6 */ mtctr r12 -/* 8017781C 0017477C 4E 80 04 21 */ bctrl -/* 80177820 00174780 C0 3F 03 04 */ lfs f1, 0x304(r31) -/* 80177824 00174784 C0 1F 02 EC */ lfs f0, 0x2ec(r31) -/* 80177828 00174788 C3 82 A1 C0 */ lfs f28, lbl_805ABEE0@sda21(r2) -/* 8017782C 0017478C EF A1 00 24 */ fdivs f29, f1, f0 -/* 80177830 00174790 C3 E2 A1 DC */ lfs f31, lbl_805ABEFC@sda21(r2) -/* 80177834 00174794 FF C0 E0 90 */ fmr f30, f28 -/* 80177838 00174798 48 00 00 50 */ b lbl_80177888 -lbl_8017783C: -/* 8017783C 0017479C C0 5F 02 EC */ lfs f2, 0x2ec(r31) -/* 80177840 001747A0 C0 3F 04 CC */ lfs f1, 0x4cc(r31) -/* 80177844 001747A4 C0 1F 03 04 */ lfs f0, 0x304(r31) -/* 80177848 001747A8 EC 3C 08 BA */ fmadds f1, f28, f2, f1 -/* 8017784C 001747AC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80177850 001747B0 41 81 00 34 */ bgt lbl_80177884 -/* 80177854 001747B4 D3 C1 00 08 */ stfs f30, 8(r1) -/* 80177858 001747B8 38 81 00 08 */ addi r4, r1, 8 -/* 8017785C 001747BC D0 21 00 0C */ stfs f1, 0xc(r1) -/* 80177860 001747C0 D3 C1 00 10 */ stfs f30, 0x10(r1) -/* 80177864 001747C4 80 7F 05 1C */ lwz r3, 0x51c(r31) -/* 80177868 001747C8 81 83 00 00 */ lwz r12, 0(r3) -/* 8017786C 001747CC 81 8C 00 18 */ lwz r12, 0x18(r12) -/* 80177870 001747D0 7D 89 03 A6 */ mtctr r12 -/* 80177874 001747D4 4E 80 04 21 */ bctrl -/* 80177878 001747D8 80 7F 05 1C */ lwz r3, 0x51c(r31) -/* 8017787C 001747DC 38 80 00 01 */ li r4, 1 -/* 80177880 001747E0 48 1A 50 41 */ bl ForceParticleCreation__11CElementGenFi -lbl_80177884: -/* 80177884 001747E4 EF 9C F8 2A */ fadds f28, f28, f31 -lbl_80177888: -/* 80177888 001747E8 FC 1C E8 40 */ fcmpo cr0, f28, f29 -/* 8017788C 001747EC 4C 40 13 82 */ cror 2, 0, 2 -/* 80177890 001747F0 41 82 FF AC */ beq lbl_8017783C -/* 80177894 001747F4 80 7F 05 1C */ lwz r3, 0x51c(r31) -/* 80177898 001747F8 38 9F 03 24 */ addi r4, r31, 0x324 -/* 8017789C 001747FC 48 1A 72 E9 */ bl SetGlobalOrientAndTrans__11CElementGenFRC12CTransform4f -/* 801778A0 00174800 80 7F 05 1C */ lwz r3, 0x51c(r31) -/* 801778A4 00174804 38 80 00 00 */ li r4, 0 -/* 801778A8 00174808 81 83 00 00 */ lwz r12, 0(r3) -/* 801778AC 0017480C 81 8C 00 2C */ lwz r12, 0x2c(r12) -/* 801778B0 00174810 7D 89 03 A6 */ mtctr r12 -/* 801778B4 00174814 4E 80 04 21 */ bctrl -lbl_801778B8: -/* 801778B8 00174818 80 7F 05 1C */ lwz r3, 0x51c(r31) -/* 801778BC 0017481C FC 20 D8 90 */ fmr f1, f27 -/* 801778C0 00174820 81 83 00 00 */ lwz r12, 0(r3) -/* 801778C4 00174824 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 801778C8 00174828 7D 89 03 A6 */ mtctr r12 -/* 801778CC 0017482C 4E 80 04 21 */ bctrl -/* 801778D0 00174830 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 -/* 801778D4 00174834 CB E1 00 60 */ lfd f31, 0x60(r1) -/* 801778D8 00174838 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 -/* 801778DC 0017483C CB C1 00 50 */ lfd f30, 0x50(r1) -/* 801778E0 00174840 E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 -/* 801778E4 00174844 CB A1 00 40 */ lfd f29, 0x40(r1) -/* 801778E8 00174848 E3 81 00 38 */ psq_l f28, 56(r1), 0, qr0 -/* 801778EC 0017484C CB 81 00 30 */ lfd f28, 0x30(r1) -/* 801778F0 00174850 E3 61 00 28 */ psq_l f27, 40(r1), 0, qr0 -/* 801778F4 00174854 CB 61 00 20 */ lfd f27, 0x20(r1) -/* 801778F8 00174858 80 01 00 74 */ lwz r0, 0x74(r1) -/* 801778FC 0017485C 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80177900 00174860 7C 08 03 A6 */ mtlr r0 -/* 80177904 00174864 38 21 00 70 */ addi r1, r1, 0x70 -/* 80177908 00174868 4E 80 00 20 */ blr - -.global RenderBeam__17CPlasmaProjectileCFifRC6CColori -RenderBeam__17CPlasmaProjectileCFifRC6CColori: -/* 8017790C 0017486C 94 21 FF 30 */ stwu r1, -0xd0(r1) -/* 80177910 00174870 7C 08 02 A6 */ mflr r0 -/* 80177914 00174874 90 01 00 D4 */ stw r0, 0xd4(r1) -/* 80177918 00174878 DB E1 00 C0 */ stfd f31, 0xc0(r1) -/* 8017791C 0017487C F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 -/* 80177920 00174880 DB C1 00 B0 */ stfd f30, 0xb0(r1) -/* 80177924 00174884 F3 C1 00 B8 */ psq_st f30, 184(r1), 0, qr0 -/* 80177928 00174888 DB A1 00 A0 */ stfd f29, 0xa0(r1) -/* 8017792C 0017488C F3 A1 00 A8 */ psq_st f29, 168(r1), 0, qr0 -/* 80177930 00174890 DB 81 00 90 */ stfd f28, 0x90(r1) -/* 80177934 00174894 F3 81 00 98 */ psq_st f28, 152(r1), 0, qr0 -/* 80177938 00174898 DB 61 00 80 */ stfd f27, 0x80(r1) -/* 8017793C 0017489C F3 61 00 88 */ psq_st f27, 136(r1), 0, qr0 -/* 80177940 001748A0 DB 41 00 70 */ stfd f26, 0x70(r1) -/* 80177944 001748A4 F3 41 00 78 */ psq_st f26, 120(r1), 0, qr0 -/* 80177948 001748A8 DB 21 00 60 */ stfd f25, 0x60(r1) -/* 8017794C 001748AC F3 21 00 68 */ psq_st f25, 104(r1), 0, qr0 -/* 80177950 001748B0 DB 01 00 50 */ stfd f24, 0x50(r1) -/* 80177954 001748B4 F3 01 00 58 */ psq_st f24, 88(r1), 0, qr0 -/* 80177958 001748B8 BF 41 00 38 */ stmw r26, 0x38(r1) -/* 8017795C 001748BC FF A0 08 90 */ fmr f29, f1 -/* 80177960 001748C0 54 DF 07 FF */ clrlwi. r31, r6, 0x1f -/* 80177964 001748C4 7C DB 33 78 */ mr r27, r6 -/* 80177968 001748C8 7C BA 2B 78 */ mr r26, r5 -/* 8017796C 001748CC 3B C0 00 00 */ li r30, 0 -/* 80177970 001748D0 41 82 00 28 */ beq lbl_80177998 -/* 80177974 001748D4 57 60 07 39 */ rlwinm. r0, r27, 0, 0x1c, 0x1c -/* 80177978 001748D8 80 A3 04 F0 */ lwz r5, 0x4f0(r3) -/* 8017797C 001748DC 80 03 04 FC */ lwz r0, 0x4fc(r3) -/* 80177980 001748E0 41 82 00 0C */ beq lbl_8017798C -/* 80177984 001748E4 7C 1E 03 78 */ mr r30, r0 -/* 80177988 001748E8 48 00 00 08 */ b lbl_80177990 -lbl_8017798C: -/* 8017798C 001748EC 7C BE 2B 78 */ mr r30, r5 -lbl_80177990: -/* 80177990 001748F0 28 1E 00 00 */ cmplwi r30, 0 -/* 80177994 001748F4 41 82 02 E8 */ beq lbl_80177C7C -lbl_80177998: -/* 80177998 001748F8 3C C0 43 30 */ lis r6, 0x4330 -/* 8017799C 001748FC 6C 80 80 00 */ xoris r0, r4, 0x8000 -/* 801779A0 00174900 90 01 00 2C */ stw r0, 0x2c(r1) -/* 801779A4 00174904 57 65 07 BE */ clrlwi r5, r27, 0x1e -/* 801779A8 00174908 38 05 FF FD */ addi r0, r5, -3 -/* 801779AC 0017490C C8 42 A1 D0 */ lfd f2, lbl_805ABEF0@sda21(r2) -/* 801779B0 00174910 90 C1 00 28 */ stw r6, 0x28(r1) -/* 801779B4 00174914 7C 00 00 34 */ cntlzw r0, r0 -/* 801779B8 00174918 54 00 DE 3E */ rlwinm r0, r0, 0x1b, 0x18, 0x1f -/* 801779BC 0017491C C0 A2 A1 E0 */ lfs f5, lbl_805ABF00@sda21(r2) -/* 801779C0 00174920 C8 01 00 28 */ lfd f0, 0x28(r1) -/* 801779C4 00174924 3B 84 00 01 */ addi r28, r4, 1 -/* 801779C8 00174928 C0 22 A1 E4 */ lfs f1, lbl_805ABF04@sda21(r2) -/* 801779CC 0017492C 3B A0 00 00 */ li r29, 0 -/* 801779D0 00174930 EC 80 10 28 */ fsubs f4, f0, f2 -/* 801779D4 00174934 C0 03 04 CC */ lfs f0, 0x4cc(r3) -/* 801779D8 00174938 90 01 00 34 */ stw r0, 0x34(r1) -/* 801779DC 0017493C EC 61 00 32 */ fmuls f3, f1, f0 -/* 801779E0 00174940 C8 42 A1 F0 */ lfd f2, lbl_805ABF10@sda21(r2) -/* 801779E4 00174944 EF E5 20 24 */ fdivs f31, f5, f4 -/* 801779E8 00174948 90 C1 00 30 */ stw r6, 0x30(r1) -/* 801779EC 0017494C C0 02 A1 C0 */ lfs f0, lbl_805ABEE0@sda21(r2) -/* 801779F0 00174950 C8 21 00 30 */ lfd f1, 0x30(r1) -/* 801779F4 00174954 FF C0 18 50 */ fneg f30, f3 -/* 801779F8 00174958 EC 21 10 28 */ fsubs f1, f1, f2 -/* 801779FC 0017495C EC 3E 08 2A */ fadds f1, f30, f1 -/* 80177A00 00174960 FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 80177A04 00174964 41 82 00 0C */ beq lbl_80177A10 -/* 80177A08 00174968 C3 42 A1 D8 */ lfs f26, lbl_805ABEF8@sda21(r2) -/* 80177A0C 0017496C 48 00 00 10 */ b lbl_80177A1C -lbl_80177A10: -/* 80177A10 00174970 C0 22 A1 E8 */ lfs f1, lbl_805ABF08@sda21(r2) -/* 80177A14 00174974 C0 03 03 04 */ lfs f0, 0x304(r3) -/* 80177A18 00174978 EF 41 00 32 */ fmuls f26, f1, f0 -lbl_80177A1C: -/* 80177A1C 0017497C C3 83 03 04 */ lfs f28, 0x304(r3) -/* 80177A20 00174980 38 60 00 07 */ li r3, 7 -/* 80177A24 00174984 C3 02 A1 C0 */ lfs f24, lbl_805ABEE0@sda21(r2) -/* 80177A28 00174988 38 80 00 00 */ li r4, 0 -/* 80177A2C 0017498C 38 A0 00 00 */ li r5, 0 -/* 80177A30 00174990 38 C0 00 07 */ li r6, 7 -/* 80177A34 00174994 38 E0 00 00 */ li r7, 0 -/* 80177A38 00174998 48 19 3F F1 */ bl SetAlphaCompare__9CGraphicsF13ERglAlphaFuncUc11ERglAlphaOp13ERglAlphaFuncUc -/* 80177A3C 0017499C 3C 80 80 3D */ lis r4, lbl_803D0630@ha -/* 80177A40 001749A0 38 61 00 08 */ addi r3, r1, 8 -/* 80177A44 001749A4 39 64 06 30 */ addi r11, r4, lbl_803D0630@l -/* 80177A48 001749A8 81 4B 00 00 */ lwz r10, 0(r11) -/* 80177A4C 001749AC 81 2B 00 04 */ lwz r9, 4(r11) -/* 80177A50 001749B0 81 0B 00 08 */ lwz r8, 8(r11) -/* 80177A54 001749B4 80 EB 00 0C */ lwz r7, 0xc(r11) -/* 80177A58 001749B8 80 CB 00 10 */ lwz r6, 0x10(r11) -/* 80177A5C 001749BC 80 AB 00 14 */ lwz r5, 0x14(r11) -/* 80177A60 001749C0 80 8B 00 18 */ lwz r4, 0x18(r11) -/* 80177A64 001749C4 80 0B 00 1C */ lwz r0, 0x1c(r11) -/* 80177A68 001749C8 91 41 00 08 */ stw r10, 8(r1) -/* 80177A6C 001749CC 91 21 00 0C */ stw r9, 0xc(r1) -/* 80177A70 001749D0 91 01 00 10 */ stw r8, 0x10(r1) -/* 80177A74 001749D4 90 E1 00 14 */ stw r7, 0x14(r1) -/* 80177A78 001749D8 90 C1 00 18 */ stw r6, 0x18(r1) -/* 80177A7C 001749DC 90 A1 00 1C */ stw r5, 0x1c(r1) -/* 80177A80 001749E0 90 81 00 20 */ stw r4, 0x20(r1) -/* 80177A84 001749E4 90 01 00 24 */ stw r0, 0x24(r1) -/* 80177A88 001749E8 48 19 03 A1 */ bl SetVtxDescv__3CGXFPC14_GXVtxDescList -/* 80177A8C 001749EC 38 60 00 01 */ li r3, 1 -/* 80177A90 001749F0 48 19 13 C1 */ bl SetNumChans__3CGXFUc -/* 80177A94 001749F4 38 60 00 01 */ li r3, 1 -/* 80177A98 001749F8 48 19 11 F9 */ bl SetNumTevStages__3CGXFUc -/* 80177A9C 001749FC 38 60 00 00 */ li r3, 0 -/* 80177AA0 00174A00 38 80 00 00 */ li r4, 0 -/* 80177AA4 00174A04 38 A0 00 00 */ li r5, 0 -/* 80177AA8 00174A08 38 C0 00 01 */ li r6, 1 -/* 80177AAC 00174A0C 38 E0 00 00 */ li r7, 0 -/* 80177AB0 00174A10 39 00 00 00 */ li r8, 0 -/* 80177AB4 00174A14 39 20 00 02 */ li r9, 2 -/* 80177AB8 00174A18 48 19 12 15 */ bl SetChanCtrl__3CGXFQ23CGX10EChannelIdUc11_GXColorSrc11_GXColorSrc10_GXLightID12_GXDiffuseFn9_GXAttnFn -/* 80177ABC 00174A1C 57 60 06 F7 */ rlwinm. r0, r27, 0, 0x1b, 0x1b -/* 80177AC0 00174A20 41 82 00 1C */ beq lbl_80177ADC -/* 80177AC4 00174A24 38 60 00 03 */ li r3, 3 -/* 80177AC8 00174A28 38 80 00 01 */ li r4, 1 -/* 80177ACC 00174A2C 38 A0 00 01 */ li r5, 1 -/* 80177AD0 00174A30 38 C0 00 00 */ li r6, 0 -/* 80177AD4 00174A34 48 19 0D FD */ bl SetBlendMode__3CGXF12_GXBlendMode14_GXBlendFactor14_GXBlendFactor10_GXLogicOp -/* 80177AD8 00174A38 48 00 00 38 */ b lbl_80177B10 -lbl_80177ADC: -/* 80177ADC 00174A3C 57 60 07 7B */ rlwinm. r0, r27, 0, 0x1d, 0x1d -/* 80177AE0 00174A40 41 82 00 1C */ beq lbl_80177AFC -/* 80177AE4 00174A44 38 60 00 01 */ li r3, 1 -/* 80177AE8 00174A48 38 80 00 04 */ li r4, 4 -/* 80177AEC 00174A4C 38 A0 00 01 */ li r5, 1 -/* 80177AF0 00174A50 38 C0 00 00 */ li r6, 0 -/* 80177AF4 00174A54 48 19 0D DD */ bl SetBlendMode__3CGXF12_GXBlendMode14_GXBlendFactor14_GXBlendFactor10_GXLogicOp -/* 80177AF8 00174A58 48 00 00 18 */ b lbl_80177B10 -lbl_80177AFC: -/* 80177AFC 00174A5C 38 60 00 01 */ li r3, 1 -/* 80177B00 00174A60 38 80 00 01 */ li r4, 1 -/* 80177B04 00174A64 38 A0 00 01 */ li r5, 1 -/* 80177B08 00174A68 38 C0 00 00 */ li r6, 0 -/* 80177B0C 00174A6C 48 19 0D C5 */ bl SetBlendMode__3CGXF12_GXBlendMode14_GXBlendFactor14_GXBlendFactor10_GXLogicOp -lbl_80177B10: -/* 80177B10 00174A70 38 60 00 00 */ li r3, 0 -/* 80177B14 00174A74 38 80 00 00 */ li r4, 0 -/* 80177B18 00174A78 38 A0 00 0C */ li r5, 0xc -/* 80177B1C 00174A7C 38 C0 00 3C */ li r6, 0x3c -/* 80177B20 00174A80 38 E0 00 00 */ li r7, 0 -/* 80177B24 00174A84 39 00 00 7D */ li r8, 0x7d -/* 80177B28 00174A88 48 19 0B A5 */ bl SetTexCoordGen__3CGXF13_GXTexCoordID13_GXTexGenType12_GXTexGenSrc9_GXTexMtxUc11_GXPTTexMtx -/* 80177B2C 00174A8C 2C 1F 00 00 */ cmpwi r31, 0 -/* 80177B30 00174A90 41 82 00 44 */ beq lbl_80177B74 -/* 80177B34 00174A94 38 60 00 01 */ li r3, 1 -/* 80177B38 00174A98 48 19 12 DD */ bl SetNumTexGens__3CGXFUc -/* 80177B3C 00174A9C 38 60 00 00 */ li r3, 0 -/* 80177B40 00174AA0 38 80 00 00 */ li r4, 0 -/* 80177B44 00174AA4 38 A0 00 00 */ li r5, 0 -/* 80177B48 00174AA8 38 C0 00 04 */ li r6, 4 -/* 80177B4C 00174AAC 48 19 0E 01 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID -/* 80177B50 00174AB0 3C 80 80 5A */ lis r4, lbl_805A5EBC@ha -/* 80177B54 00174AB4 38 60 00 00 */ li r3, 0 -/* 80177B58 00174AB8 38 84 5E BC */ addi r4, r4, lbl_805A5EBC@l -/* 80177B5C 00174ABC 48 19 27 5D */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass -/* 80177B60 00174AC0 7F C3 F3 78 */ mr r3, r30 -/* 80177B64 00174AC4 38 80 00 00 */ li r4, 0 -/* 80177B68 00174AC8 38 A0 00 01 */ li r5, 1 -/* 80177B6C 00174ACC 48 19 7B D1 */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode -/* 80177B70 00174AD0 48 00 00 2C */ b lbl_80177B9C -lbl_80177B74: -/* 80177B74 00174AD4 38 60 00 00 */ li r3, 0 -/* 80177B78 00174AD8 48 19 12 9D */ bl SetNumTexGens__3CGXFUc -/* 80177B7C 00174ADC 38 60 00 00 */ li r3, 0 -/* 80177B80 00174AE0 38 80 00 FF */ li r4, 0xff -/* 80177B84 00174AE4 38 A0 00 FF */ li r5, 0xff -/* 80177B88 00174AE8 38 C0 00 04 */ li r6, 4 -/* 80177B8C 00174AEC 48 19 0D C1 */ bl SetTevOrder__3CGXF13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID -/* 80177B90 00174AF0 80 8D 9C 68 */ lwz r4, lbl_805A8828@sda21(r13) -/* 80177B94 00174AF4 38 60 00 00 */ li r3, 0 -/* 80177B98 00174AF8 48 19 27 21 */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass -lbl_80177B9C: -/* 80177B9C 00174AFC 80 8D 9C 68 */ lwz r4, lbl_805A8828@sda21(r13) -/* 80177BA0 00174B00 38 60 00 01 */ li r3, 1 -/* 80177BA4 00174B04 48 19 27 15 */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass -/* 80177BA8 00174B08 83 DA 00 00 */ lwz r30, 0(r26) -/* 80177BAC 00174B0C 57 85 0C 3C */ rlwinm r5, r28, 1, 0x10, 0x1e -/* 80177BB0 00174B10 38 60 00 98 */ li r3, 0x98 -/* 80177BB4 00174B14 38 80 00 00 */ li r4, 0 -/* 80177BB8 00174B18 48 19 09 CD */ bl Begin__3CGXF12_GXPrimitive9_GXVtxFmtUs -/* 80177BBC 00174B1C C3 62 A1 C0 */ lfs f27, lbl_805ABEE0@sda21(r2) -/* 80177BC0 00174B20 57 7B 07 38 */ rlwinm r27, r27, 0, 0x1c, 0x1c -/* 80177BC4 00174B24 3B E0 00 00 */ li r31, 0 -/* 80177BC8 00174B28 3F 40 CC 01 */ lis r26, 0xcc01 -/* 80177BCC 00174B2C EF 3B E0 2A */ fadds f25, f27, f28 -/* 80177BD0 00174B30 48 00 00 90 */ b lbl_80177C60 -lbl_80177BD4: -/* 80177BD4 00174B34 FC 20 C0 90 */ fmr f1, f24 -/* 80177BD8 00174B38 48 19 D1 6D */ bl FastCosR__5CMathFf -/* 80177BDC 00174B3C FF 80 08 90 */ fmr f28, f1 -/* 80177BE0 00174B40 FC 20 C0 90 */ fmr f1, f24 -/* 80177BE4 00174B44 48 19 D2 0D */ bl FastSinR__5CMathFf -/* 80177BE8 00174B48 2C 1B 00 00 */ cmpwi r27, 0 -/* 80177BEC 00174B4C 41 82 00 10 */ beq lbl_80177BFC -/* 80177BF0 00174B50 C0 02 A1 E8 */ lfs f0, lbl_805ABF08@sda21(r2) -/* 80177BF4 00174B54 EC 40 00 72 */ fmuls f2, f0, f1 -/* 80177BF8 00174B58 48 00 00 18 */ b lbl_80177C10 -lbl_80177BFC: -/* 80177BFC 00174B5C 57 A0 06 3F */ clrlwi. r0, r29, 0x18 -/* 80177C00 00174B60 41 82 00 0C */ beq lbl_80177C0C -/* 80177C04 00174B64 FC 40 E8 90 */ fmr f2, f29 -/* 80177C08 00174B68 48 00 00 08 */ b lbl_80177C10 -lbl_80177C0C: -/* 80177C0C 00174B6C C0 42 A1 C0 */ lfs f2, lbl_805ABEE0@sda21(r2) -lbl_80177C10: -/* 80177C10 00174B70 EC 1D 07 32 */ fmuls f0, f29, f28 -/* 80177C14 00174B74 6B A0 00 01 */ xori r0, r29, 1 -/* 80177C18 00174B78 EC 7D 00 72 */ fmuls f3, f29, f1 -/* 80177C1C 00174B7C 54 1D 06 3E */ clrlwi r29, r0, 0x18 -/* 80177C20 00174B80 EF 18 F8 2A */ fadds f24, f24, f31 -/* 80177C24 00174B84 3B FF 00 01 */ addi r31, r31, 1 -/* 80177C28 00174B88 D0 1A 80 00 */ stfs f0, 0xCC008000@l(r26) -/* 80177C2C 00174B8C EC 20 D8 2A */ fadds f1, f0, f27 -/* 80177C30 00174B90 EC 03 D8 2A */ fadds f0, f3, f27 -/* 80177C34 00174B94 D3 7A 80 00 */ stfs f27, 0xCC008000@l(r26) -/* 80177C38 00174B98 D0 7A 80 00 */ stfs f3, 0xCC008000@l(r26) -/* 80177C3C 00174B9C 93 DA 80 00 */ stw r30, 0xCC008000@l(r26) -/* 80177C40 00174BA0 D0 5A 80 00 */ stfs f2, 0xCC008000@l(r26) -/* 80177C44 00174BA4 D3 DA 80 00 */ stfs f30, 0xCC008000@l(r26) -/* 80177C48 00174BA8 D0 3A 80 00 */ stfs f1, 0xCC008000@l(r26) -/* 80177C4C 00174BAC D3 3A 80 00 */ stfs f25, 0xCC008000@l(r26) -/* 80177C50 00174BB0 D0 1A 80 00 */ stfs f0, 0xCC008000@l(r26) -/* 80177C54 00174BB4 93 DA 80 00 */ stw r30, 0xCC008000@l(r26) -/* 80177C58 00174BB8 D0 5A 80 00 */ stfs f2, 0xCC008000@l(r26) -/* 80177C5C 00174BBC D3 5A 80 00 */ stfs f26, 0xCC008000@l(r26) -lbl_80177C60: -/* 80177C60 00174BC0 7C 1F E0 00 */ cmpw r31, r28 -/* 80177C64 00174BC4 41 80 FF 70 */ blt lbl_80177BD4 -/* 80177C68 00174BC8 48 19 09 19 */ bl End__3CGXFv -/* 80177C6C 00174BCC 2C 1B 00 00 */ cmpwi r27, 0 -/* 80177C70 00174BD0 41 82 00 0C */ beq lbl_80177C7C -/* 80177C74 00174BD4 38 60 00 01 */ li r3, 1 -/* 80177C78 00174BD8 48 19 3D F9 */ bl SetCullMode__9CGraphicsF12ERglCullMode -lbl_80177C7C: -/* 80177C7C 00174BDC E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 -/* 80177C80 00174BE0 CB E1 00 C0 */ lfd f31, 0xc0(r1) -/* 80177C84 00174BE4 E3 C1 00 B8 */ psq_l f30, 184(r1), 0, qr0 -/* 80177C88 00174BE8 CB C1 00 B0 */ lfd f30, 0xb0(r1) -/* 80177C8C 00174BEC E3 A1 00 A8 */ psq_l f29, 168(r1), 0, qr0 -/* 80177C90 00174BF0 CB A1 00 A0 */ lfd f29, 0xa0(r1) -/* 80177C94 00174BF4 E3 81 00 98 */ psq_l f28, 152(r1), 0, qr0 -/* 80177C98 00174BF8 CB 81 00 90 */ lfd f28, 0x90(r1) -/* 80177C9C 00174BFC E3 61 00 88 */ psq_l f27, 136(r1), 0, qr0 -/* 80177CA0 00174C00 CB 61 00 80 */ lfd f27, 0x80(r1) -/* 80177CA4 00174C04 E3 41 00 78 */ psq_l f26, 120(r1), 0, qr0 -/* 80177CA8 00174C08 CB 41 00 70 */ lfd f26, 0x70(r1) -/* 80177CAC 00174C0C E3 21 00 68 */ psq_l f25, 104(r1), 0, qr0 -/* 80177CB0 00174C10 CB 21 00 60 */ lfd f25, 0x60(r1) -/* 80177CB4 00174C14 E3 01 00 58 */ psq_l f24, 88(r1), 0, qr0 -/* 80177CB8 00174C18 CB 01 00 50 */ lfd f24, 0x50(r1) -/* 80177CBC 00174C1C BB 41 00 38 */ lmw r26, 0x38(r1) -/* 80177CC0 00174C20 80 01 00 D4 */ lwz r0, 0xd4(r1) -/* 80177CC4 00174C24 7C 08 03 A6 */ mtlr r0 -/* 80177CC8 00174C28 38 21 00 D0 */ addi r1, r1, 0xd0 -/* 80177CCC 00174C2C 4E 80 00 20 */ blr - -.global ResetBeam__17CPlasmaProjectileFR13CStateManagerb -ResetBeam__17CPlasmaProjectileFR13CStateManagerb: -/* 80177CD0 00174C30 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80177CD4 00174C34 7C 08 02 A6 */ mflr r0 -/* 80177CD8 00174C38 90 01 00 14 */ stw r0, 0x14(r1) -/* 80177CDC 00174C3C 54 A0 06 3F */ clrlwi. r0, r5, 0x18 -/* 80177CE0 00174C40 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80177CE4 00174C44 7C 9F 23 78 */ mr r31, r4 -/* 80177CE8 00174C48 93 C1 00 08 */ stw r30, 8(r1) -/* 80177CEC 00174C4C 7C 7E 1B 78 */ mr r30, r3 -/* 80177CF0 00174C50 41 82 00 94 */ beq lbl_80177D84 -/* 80177CF4 00174C54 81 83 00 00 */ lwz r12, 0(r3) -/* 80177CF8 00174C58 38 80 00 00 */ li r4, 0 -/* 80177CFC 00174C5C 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 80177D00 00174C60 7D 89 03 A6 */ mtctr r12 -/* 80177D04 00174C64 4E 80 04 21 */ bctrl -/* 80177D08 00174C68 7F C3 F3 78 */ mr r3, r30 -/* 80177D0C 00174C6C 7F E5 FB 78 */ mr r5, r31 -/* 80177D10 00174C70 38 80 00 00 */ li r4, 0 -/* 80177D14 00174C74 4B FF F5 91 */ bl SetLightsActive__17CPlasmaProjectileFbR13CStateManager -/* 80177D18 00174C78 C0 02 A1 C0 */ lfs f0, lbl_805ABEE0@sda21(r2) -/* 80177D1C 00174C7C 38 60 00 00 */ li r3, 0 -/* 80177D20 00174C80 38 80 00 00 */ li r4, 0 -/* 80177D24 00174C84 D0 1E 04 BC */ stfs f0, 0x4bc(r30) -/* 80177D28 00174C88 D0 1E 04 C0 */ stfs f0, 0x4c0(r30) -/* 80177D2C 00174C8C D0 1E 04 C8 */ stfs f0, 0x4c8(r30) -/* 80177D30 00174C90 D0 1E 04 D0 */ stfs f0, 0x4d0(r30) -/* 80177D34 00174C94 D0 1E 04 C8 */ stfs f0, 0x4c8(r30) -/* 80177D38 00174C98 D0 1E 04 D4 */ stfs f0, 0x4d4(r30) -/* 80177D3C 00174C9C D0 1E 04 D8 */ stfs f0, 0x4d8(r30) -/* 80177D40 00174CA0 D0 1E 04 DC */ stfs f0, 0x4dc(r30) -/* 80177D44 00174CA4 90 7E 04 B4 */ stw r3, 0x4b4(r30) -/* 80177D48 00174CA8 88 1E 05 48 */ lbz r0, 0x548(r30) -/* 80177D4C 00174CAC 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a -/* 80177D50 00174CB0 98 1E 05 48 */ stb r0, 0x548(r30) -/* 80177D54 00174CB4 80 7E 05 18 */ lwz r3, 0x518(r30) -/* 80177D58 00174CB8 81 83 00 00 */ lwz r12, 0(r3) -/* 80177D5C 00174CBC 81 8C 00 2C */ lwz r12, 0x2c(r12) -/* 80177D60 00174CC0 7D 89 03 A6 */ mtctr r12 -/* 80177D64 00174CC4 4E 80 04 21 */ bctrl -/* 80177D68 00174CC8 80 7E 05 1C */ lwz r3, 0x51c(r30) -/* 80177D6C 00174CCC 38 80 00 00 */ li r4, 0 -/* 80177D70 00174CD0 81 83 00 00 */ lwz r12, 0(r3) -/* 80177D74 00174CD4 81 8C 00 2C */ lwz r12, 0x2c(r12) -/* 80177D78 00174CD8 7D 89 03 A6 */ mtctr r12 -/* 80177D7C 00174CDC 4E 80 04 21 */ bctrl -/* 80177D80 00174CE0 48 00 00 4C */ b lbl_80177DCC -lbl_80177D84: -/* 80177D84 00174CE4 88 7E 05 48 */ lbz r3, 0x548(r30) -/* 80177D88 00174CE8 38 00 00 00 */ li r0, 0 -/* 80177D8C 00174CEC 50 03 2E B4 */ rlwimi r3, r0, 5, 0x1a, 0x1a -/* 80177D90 00174CF0 38 00 00 03 */ li r0, 3 -/* 80177D94 00174CF4 98 7E 05 48 */ stb r3, 0x548(r30) -/* 80177D98 00174CF8 38 80 00 00 */ li r4, 0 -/* 80177D9C 00174CFC 90 1E 04 B4 */ stw r0, 0x4b4(r30) -/* 80177DA0 00174D00 80 7E 05 18 */ lwz r3, 0x518(r30) -/* 80177DA4 00174D04 81 83 00 00 */ lwz r12, 0(r3) -/* 80177DA8 00174D08 81 8C 00 2C */ lwz r12, 0x2c(r12) -/* 80177DAC 00174D0C 7D 89 03 A6 */ mtctr r12 -/* 80177DB0 00174D10 4E 80 04 21 */ bctrl -/* 80177DB4 00174D14 80 7E 05 1C */ lwz r3, 0x51c(r30) -/* 80177DB8 00174D18 38 80 00 00 */ li r4, 0 -/* 80177DBC 00174D1C 81 83 00 00 */ lwz r12, 0(r3) -/* 80177DC0 00174D20 81 8C 00 2C */ lwz r12, 0x2c(r12) -/* 80177DC4 00174D24 7D 89 03 A6 */ mtctr r12 -/* 80177DC8 00174D28 4E 80 04 21 */ bctrl -lbl_80177DCC: -/* 80177DCC 00174D2C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80177DD0 00174D30 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80177DD4 00174D34 83 C1 00 08 */ lwz r30, 8(r1) -/* 80177DD8 00174D38 7C 08 03 A6 */ mtlr r0 -/* 80177DDC 00174D3C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80177DE0 00174D40 4E 80 00 20 */ blr - -.global Fire__17CPlasmaProjectileFRC12CTransform4fR13CStateManagerb -Fire__17CPlasmaProjectileFRC12CTransform4fR13CStateManagerb: -/* 80177DE4 00174D44 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80177DE8 00174D48 7C 08 02 A6 */ mflr r0 -/* 80177DEC 00174D4C 90 01 00 24 */ stw r0, 0x24(r1) -/* 80177DF0 00174D50 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80177DF4 00174D54 7C DF 33 78 */ mr r31, r6 -/* 80177DF8 00174D58 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80177DFC 00174D5C 7C BE 2B 78 */ mr r30, r5 -/* 80177E00 00174D60 93 A1 00 14 */ stw r29, 0x14(r1) -/* 80177E04 00174D64 7C 9D 23 78 */ mr r29, r4 -/* 80177E08 00174D68 38 80 00 01 */ li r4, 1 -/* 80177E0C 00174D6C 93 81 00 10 */ stw r28, 0x10(r1) -/* 80177E10 00174D70 7C 7C 1B 78 */ mr r28, r3 -/* 80177E14 00174D74 81 83 00 00 */ lwz r12, 0(r3) -/* 80177E18 00174D78 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 80177E1C 00174D7C 7D 89 03 A6 */ mtctr r12 -/* 80177E20 00174D80 4E 80 04 21 */ bctrl -/* 80177E24 00174D84 7F 83 E3 78 */ mr r3, r28 -/* 80177E28 00174D88 7F C5 F3 78 */ mr r5, r30 -/* 80177E2C 00174D8C 38 80 00 01 */ li r4, 1 -/* 80177E30 00174D90 4B FF F4 75 */ bl SetLightsActive__17CPlasmaProjectileFbR13CStateManager -/* 80177E34 00174D94 88 1C 05 48 */ lbz r0, 0x548(r28) -/* 80177E38 00174D98 38 80 00 01 */ li r4, 1 -/* 80177E3C 00174D9C 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 -/* 80177E40 00174DA0 98 1C 05 48 */ stb r0, 0x548(r28) -/* 80177E44 00174DA4 88 1C 05 48 */ lbz r0, 0x548(r28) -/* 80177E48 00174DA8 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a -/* 80177E4C 00174DAC 98 1C 05 48 */ stb r0, 0x548(r28) -/* 80177E50 00174DB0 88 1C 05 48 */ lbz r0, 0x548(r28) -/* 80177E54 00174DB4 53 E0 3E 30 */ rlwimi r0, r31, 7, 0x18, 0x18 -/* 80177E58 00174DB8 98 1C 05 48 */ stb r0, 0x548(r28) -/* 80177E5C 00174DBC 90 9C 04 B4 */ stw r4, 0x4b4(r28) -/* 80177E60 00174DC0 80 1C 04 78 */ lwz r0, 0x478(r28) -/* 80177E64 00174DC4 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 80177E68 00174DC8 41 82 00 C4 */ beq lbl_80177F2C -/* 80177E6C 00174DCC C0 5D 00 2C */ lfs f2, 0x2c(r29) -/* 80177E70 00174DD0 C0 3D 00 1C */ lfs f1, 0x1c(r29) -/* 80177E74 00174DD4 C0 1D 00 0C */ lfs f0, 0xc(r29) -/* 80177E78 00174DD8 D0 1C 04 04 */ stfs f0, 0x404(r28) -/* 80177E7C 00174DDC D0 3C 04 08 */ stfs f1, 0x408(r28) -/* 80177E80 00174DE0 D0 5C 04 0C */ stfs f2, 0x40c(r28) -/* 80177E84 00174DE4 C0 5D 00 2C */ lfs f2, 0x2c(r29) -/* 80177E88 00174DE8 C0 3D 00 1C */ lfs f1, 0x1c(r29) -/* 80177E8C 00174DEC C0 1D 00 0C */ lfs f0, 0xc(r29) -/* 80177E90 00174DF0 D0 1C 04 10 */ stfs f0, 0x410(r28) -/* 80177E94 00174DF4 D0 3C 04 14 */ stfs f1, 0x414(r28) -/* 80177E98 00174DF8 D0 5C 04 18 */ stfs f2, 0x418(r28) -/* 80177E9C 00174DFC C0 5D 00 2C */ lfs f2, 0x2c(r29) -/* 80177EA0 00174E00 C0 3D 00 1C */ lfs f1, 0x1c(r29) -/* 80177EA4 00174E04 C0 1D 00 0C */ lfs f0, 0xc(r29) -/* 80177EA8 00174E08 D0 1C 04 1C */ stfs f0, 0x41c(r28) -/* 80177EAC 00174E0C D0 3C 04 20 */ stfs f1, 0x420(r28) -/* 80177EB0 00174E10 D0 5C 04 24 */ stfs f2, 0x424(r28) -/* 80177EB4 00174E14 C0 5D 00 2C */ lfs f2, 0x2c(r29) -/* 80177EB8 00174E18 C0 3D 00 1C */ lfs f1, 0x1c(r29) -/* 80177EBC 00174E1C C0 1D 00 0C */ lfs f0, 0xc(r29) -/* 80177EC0 00174E20 D0 1C 04 28 */ stfs f0, 0x428(r28) -/* 80177EC4 00174E24 D0 3C 04 2C */ stfs f1, 0x42c(r28) -/* 80177EC8 00174E28 D0 5C 04 30 */ stfs f2, 0x430(r28) -/* 80177ECC 00174E2C C0 5D 00 2C */ lfs f2, 0x2c(r29) -/* 80177ED0 00174E30 C0 3D 00 1C */ lfs f1, 0x1c(r29) -/* 80177ED4 00174E34 C0 1D 00 0C */ lfs f0, 0xc(r29) -/* 80177ED8 00174E38 D0 1C 04 34 */ stfs f0, 0x434(r28) -/* 80177EDC 00174E3C D0 3C 04 38 */ stfs f1, 0x438(r28) -/* 80177EE0 00174E40 D0 5C 04 3C */ stfs f2, 0x43c(r28) -/* 80177EE4 00174E44 C0 5D 00 2C */ lfs f2, 0x2c(r29) -/* 80177EE8 00174E48 C0 3D 00 1C */ lfs f1, 0x1c(r29) -/* 80177EEC 00174E4C C0 1D 00 0C */ lfs f0, 0xc(r29) -/* 80177EF0 00174E50 D0 1C 04 40 */ stfs f0, 0x440(r28) -/* 80177EF4 00174E54 D0 3C 04 44 */ stfs f1, 0x444(r28) -/* 80177EF8 00174E58 D0 5C 04 48 */ stfs f2, 0x448(r28) -/* 80177EFC 00174E5C C0 5D 00 2C */ lfs f2, 0x2c(r29) -/* 80177F00 00174E60 C0 3D 00 1C */ lfs f1, 0x1c(r29) -/* 80177F04 00174E64 C0 1D 00 0C */ lfs f0, 0xc(r29) -/* 80177F08 00174E68 D0 1C 04 4C */ stfs f0, 0x44c(r28) -/* 80177F0C 00174E6C D0 3C 04 50 */ stfs f1, 0x450(r28) -/* 80177F10 00174E70 D0 5C 04 54 */ stfs f2, 0x454(r28) -/* 80177F14 00174E74 C0 5D 00 2C */ lfs f2, 0x2c(r29) -/* 80177F18 00174E78 C0 3D 00 1C */ lfs f1, 0x1c(r29) -/* 80177F1C 00174E7C C0 1D 00 0C */ lfs f0, 0xc(r29) -/* 80177F20 00174E80 D0 1C 04 58 */ stfs f0, 0x458(r28) -/* 80177F24 00174E84 D0 3C 04 5C */ stfs f1, 0x45c(r28) -/* 80177F28 00174E88 D0 5C 04 60 */ stfs f2, 0x460(r28) -lbl_80177F2C: -/* 80177F2C 00174E8C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80177F30 00174E90 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80177F34 00174E94 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 80177F38 00174E98 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 80177F3C 00174E9C 83 81 00 10 */ lwz r28, 0x10(r1) -/* 80177F40 00174EA0 7C 08 03 A6 */ mtlr r0 -/* 80177F44 00174EA4 38 21 00 20 */ addi r1, r1, 0x20 -/* 80177F48 00174EA8 4E 80 00 20 */ blr - -.global Render__17CPlasmaProjectileCFRC13CStateManager -Render__17CPlasmaProjectileCFRC13CStateManager: -/* 80177F4C 00174EAC 94 21 FE E0 */ stwu r1, -0x120(r1) -/* 80177F50 00174EB0 7C 08 02 A6 */ mflr r0 -/* 80177F54 00174EB4 90 01 01 24 */ stw r0, 0x124(r1) -/* 80177F58 00174EB8 93 E1 01 1C */ stw r31, 0x11c(r1) -/* 80177F5C 00174EBC 93 C1 01 18 */ stw r30, 0x118(r1) -/* 80177F60 00174EC0 7C 9E 23 78 */ mr r30, r4 -/* 80177F64 00174EC4 93 A1 01 14 */ stw r29, 0x114(r1) -/* 80177F68 00174EC8 7C 7D 1B 78 */ mr r29, r3 -/* 80177F6C 00174ECC 88 03 00 30 */ lbz r0, 0x30(r3) -/* 80177F70 00174ED0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80177F74 00174ED4 41 82 02 10 */ beq lbl_80178184 -/* 80177F78 00174ED8 38 61 00 E0 */ addi r3, r1, 0xe0 -/* 80177F7C 00174EDC 38 9D 03 24 */ addi r4, r29, 0x324 -/* 80177F80 00174EE0 48 19 AB F5 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80177F84 00174EE4 80 7E 08 B8 */ lwz r3, 0x8b8(r30) -/* 80177F88 00174EE8 7F C4 F3 78 */ mr r4, r30 -/* 80177F8C 00174EEC 3B E0 00 00 */ li r31, 0 -/* 80177F90 00174EF0 80 63 00 00 */ lwz r3, 0(r3) -/* 80177F94 00174EF4 4B F1 95 C5 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager -/* 80177F98 00174EF8 2C 03 00 01 */ cmpwi r3, 1 -/* 80177F9C 00174EFC 40 82 00 08 */ bne lbl_80177FA4 -/* 80177FA0 00174F00 3B E0 00 10 */ li r31, 0x10 -lbl_80177FA4: -/* 80177FA4 00174F04 80 1D 04 78 */ lwz r0, 0x478(r29) -/* 80177FA8 00174F08 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 80177FAC 00174F0C 40 82 00 44 */ bne lbl_80177FF0 -/* 80177FB0 00174F10 80 9E 08 70 */ lwz r4, 0x870(r30) -/* 80177FB4 00174F14 7F C5 F3 78 */ mr r5, r30 -/* 80177FB8 00174F18 38 61 00 14 */ addi r3, r1, 0x14 -/* 80177FBC 00174F1C 4B E9 29 59 */ bl GetGlobalCameraTranslation__14CCameraManagerCFRC13CStateManager -/* 80177FC0 00174F20 C0 21 00 EC */ lfs f1, 0xec(r1) -/* 80177FC4 00174F24 C0 01 00 14 */ lfs f0, 0x14(r1) -/* 80177FC8 00174F28 C0 61 00 FC */ lfs f3, 0xfc(r1) -/* 80177FCC 00174F2C C0 41 00 18 */ lfs f2, 0x18(r1) -/* 80177FD0 00174F30 EC 81 00 2A */ fadds f4, f1, f0 -/* 80177FD4 00174F34 C0 21 01 0C */ lfs f1, 0x10c(r1) -/* 80177FD8 00174F38 C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 80177FDC 00174F3C EC 43 10 2A */ fadds f2, f3, f2 -/* 80177FE0 00174F40 D0 81 00 EC */ stfs f4, 0xec(r1) -/* 80177FE4 00174F44 EC 01 00 2A */ fadds f0, f1, f0 -/* 80177FE8 00174F48 D0 41 00 FC */ stfs f2, 0xfc(r1) -/* 80177FEC 00174F4C D0 01 01 0C */ stfs f0, 0x10c(r1) -lbl_80177FF0: -/* 80177FF0 00174F50 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) -/* 80177FF4 00174F54 38 80 00 01 */ li r4, 1 -/* 80177FF8 00174F58 38 A0 00 00 */ li r5, 0 -/* 80177FFC 00174F5C 81 83 00 00 */ lwz r12, 0(r3) -/* 80178000 00174F60 81 8C 00 60 */ lwz r12, 0x60(r12) -/* 80178004 00174F64 7D 89 03 A6 */ mtctr r12 -/* 80178008 00174F68 4E 80 04 21 */ bctrl -/* 8017800C 00174F6C 80 1D 04 78 */ lwz r0, 0x478(r29) -/* 80178010 00174F70 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 80178014 00174F74 41 82 00 24 */ beq lbl_80178038 -/* 80178018 00174F78 88 1D 05 48 */ lbz r0, 0x548(r29) -/* 8017801C 00174F7C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 80178020 00174F80 41 82 00 18 */ beq lbl_80178038 -/* 80178024 00174F84 80 1D 04 B4 */ lwz r0, 0x4b4(r29) -/* 80178028 00174F88 2C 00 00 01 */ cmpwi r0, 1 -/* 8017802C 00174F8C 41 82 00 0C */ beq lbl_80178038 -/* 80178030 00174F90 7F A3 EB 78 */ mr r3, r29 -/* 80178034 00174F94 4B FF F5 59 */ bl RenderMotionBlur__17CPlasmaProjectileCFv -lbl_80178038: -/* 80178038 00174F98 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) -/* 8017803C 00174F9C 38 81 00 E0 */ addi r4, r1, 0xe0 -/* 80178040 00174FA0 81 83 00 00 */ lwz r12, 0(r3) -/* 80178044 00174FA4 81 8C 00 30 */ lwz r12, 0x30(r12) -/* 80178048 00174FA8 7D 89 03 A6 */ mtctr r12 -/* 8017804C 00174FAC 4E 80 04 21 */ bctrl -/* 80178050 00174FB0 C0 22 A1 FC */ lfs f1, lbl_805ABF1C@sda21(r2) -/* 80178054 00174FB4 38 61 00 10 */ addi r3, r1, 0x10 -/* 80178058 00174FB8 C0 82 A2 00 */ lfs f4, lbl_805ABF20@sda21(r2) -/* 8017805C 00174FBC FC 40 08 90 */ fmr f2, f1 -/* 80178060 00174FC0 FC 60 08 90 */ fmr f3, f1 -/* 80178064 00174FC4 48 1E B3 89 */ bl __ct__6CColorFffff -/* 80178068 00174FC8 C0 22 A1 F8 */ lfs f1, lbl_805ABF18@sda21(r2) -/* 8017806C 00174FCC 7C 65 1B 78 */ mr r5, r3 -/* 80178070 00174FD0 C0 1D 04 B8 */ lfs f0, 0x4b8(r29) -/* 80178074 00174FD4 7F A3 EB 78 */ mr r3, r29 -/* 80178078 00174FD8 63 E6 00 04 */ ori r6, r31, 4 -/* 8017807C 00174FDC 38 80 00 03 */ li r4, 3 -/* 80178080 00174FE0 EC 21 00 32 */ fmuls f1, f1, f0 -/* 80178084 00174FE4 4B FF F8 89 */ bl RenderBeam__17CPlasmaProjectileCFifRC6CColori -/* 80178088 00174FE8 C0 22 A2 04 */ lfs f1, lbl_805ABF24@sda21(r2) -/* 8017808C 00174FEC 38 61 00 80 */ addi r3, r1, 0x80 -/* 80178090 00174FF0 C0 1D 04 C8 */ lfs f0, 0x4c8(r29) -/* 80178094 00174FF4 38 81 00 0C */ addi r4, r1, 0xc -/* 80178098 00174FF8 EC 01 00 32 */ fmuls f0, f1, f0 -/* 8017809C 00174FFC D0 01 00 0C */ stfs f0, 0xc(r1) -/* 801780A0 00175000 48 19 B8 09 */ bl RotateY__12CTransform4fFRC9CRelAngle -/* 801780A4 00175004 38 61 00 B0 */ addi r3, r1, 0xb0 -/* 801780A8 00175008 38 81 00 E0 */ addi r4, r1, 0xe0 -/* 801780AC 0017500C 38 A1 00 80 */ addi r5, r1, 0x80 -/* 801780B0 00175010 48 19 A8 A1 */ bl __ml__12CTransform4fCFRC12CTransform4f -/* 801780B4 00175014 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) -/* 801780B8 00175018 38 81 00 B0 */ addi r4, r1, 0xb0 -/* 801780BC 0017501C 81 83 00 00 */ lwz r12, 0(r3) -/* 801780C0 00175020 81 8C 00 30 */ lwz r12, 0x30(r12) -/* 801780C4 00175024 7D 89 03 A6 */ mtctr r12 -/* 801780C8 00175028 4E 80 04 21 */ bctrl -/* 801780CC 0017502C C0 22 A1 E8 */ lfs f1, lbl_805ABF08@sda21(r2) -/* 801780D0 00175030 7F A3 EB 78 */ mr r3, r29 -/* 801780D4 00175034 C0 1D 04 B8 */ lfs f0, 0x4b8(r29) -/* 801780D8 00175038 38 BD 04 90 */ addi r5, r29, 0x490 -/* 801780DC 0017503C 63 E6 00 01 */ ori r6, r31, 1 -/* 801780E0 00175040 38 80 00 04 */ li r4, 4 -/* 801780E4 00175044 EC 21 00 32 */ fmuls f1, f1, f0 -/* 801780E8 00175048 4B FF F8 25 */ bl RenderBeam__17CPlasmaProjectileCFifRC6CColori -/* 801780EC 0017504C C0 1D 04 C8 */ lfs f0, 0x4c8(r29) -/* 801780F0 00175050 38 61 00 20 */ addi r3, r1, 0x20 -/* 801780F4 00175054 C0 22 A2 04 */ lfs f1, lbl_805ABF24@sda21(r2) -/* 801780F8 00175058 38 81 00 08 */ addi r4, r1, 8 -/* 801780FC 0017505C FC 00 00 50 */ fneg f0, f0 -/* 80178100 00175060 EC 01 00 32 */ fmuls f0, f1, f0 -/* 80178104 00175064 D0 01 00 08 */ stfs f0, 8(r1) -/* 80178108 00175068 48 19 B7 A1 */ bl RotateY__12CTransform4fFRC9CRelAngle -/* 8017810C 0017506C 38 61 00 50 */ addi r3, r1, 0x50 -/* 80178110 00175070 38 81 00 E0 */ addi r4, r1, 0xe0 -/* 80178114 00175074 38 A1 00 20 */ addi r5, r1, 0x20 -/* 80178118 00175078 48 19 A8 39 */ bl __ml__12CTransform4fCFRC12CTransform4f -/* 8017811C 0017507C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) -/* 80178120 00175080 38 81 00 50 */ addi r4, r1, 0x50 -/* 80178124 00175084 81 83 00 00 */ lwz r12, 0(r3) -/* 80178128 00175088 81 8C 00 30 */ lwz r12, 0x30(r12) -/* 8017812C 0017508C 7D 89 03 A6 */ mtctr r12 -/* 80178130 00175090 4E 80 04 21 */ bctrl -/* 80178134 00175094 C0 3D 04 B8 */ lfs f1, 0x4b8(r29) -/* 80178138 00175098 7F A3 EB 78 */ mr r3, r29 -/* 8017813C 0017509C 38 BD 04 94 */ addi r5, r29, 0x494 -/* 80178140 001750A0 63 E6 00 03 */ ori r6, r31, 3 -/* 80178144 001750A4 38 80 00 08 */ li r4, 8 -/* 80178148 001750A8 4B FF F7 C5 */ bl RenderBeam__17CPlasmaProjectileCFifRC6CColori -/* 8017814C 001750AC 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) -/* 80178150 001750B0 38 81 00 E0 */ addi r4, r1, 0xe0 -/* 80178154 001750B4 81 83 00 00 */ lwz r12, 0(r3) -/* 80178158 001750B8 81 8C 00 30 */ lwz r12, 0x30(r12) -/* 8017815C 001750BC 7D 89 03 A6 */ mtctr r12 -/* 80178160 001750C0 4E 80 04 21 */ bctrl -/* 80178164 001750C4 C0 22 A2 08 */ lfs f1, lbl_805ABF28@sda21(r2) -/* 80178168 001750C8 7F A3 EB 78 */ mr r3, r29 -/* 8017816C 001750CC C0 1D 04 B8 */ lfs f0, 0x4b8(r29) -/* 80178170 001750D0 38 BD 04 94 */ addi r5, r29, 0x494 -/* 80178174 001750D4 63 E6 00 0D */ ori r6, r31, 0xd -/* 80178178 001750D8 38 80 00 06 */ li r4, 6 -/* 8017817C 001750DC EC 21 00 32 */ fmuls f1, f1, f0 -/* 80178180 001750E0 4B FF F7 8D */ bl RenderBeam__17CPlasmaProjectileCFifRC6CColori -lbl_80178184: -/* 80178184 001750E4 80 01 01 24 */ lwz r0, 0x124(r1) -/* 80178188 001750E8 83 E1 01 1C */ lwz r31, 0x11c(r1) -/* 8017818C 001750EC 83 C1 01 18 */ lwz r30, 0x118(r1) -/* 80178190 001750F0 83 A1 01 14 */ lwz r29, 0x114(r1) -/* 80178194 001750F4 7C 08 03 A6 */ mtlr r0 -/* 80178198 001750F8 38 21 01 20 */ addi r1, r1, 0x120 -/* 8017819C 001750FC 4E 80 00 20 */ blr - -.global AddToRenderer__17CPlasmaProjectileCFRC14CFrustumPlanesRC13CStateManager -AddToRenderer__17CPlasmaProjectileCFRC14CFrustumPlanesRC13CStateManager: -/* 801781A0 00175100 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 801781A4 00175104 7C 08 02 A6 */ mflr r0 -/* 801781A8 00175108 90 01 00 44 */ stw r0, 0x44(r1) -/* 801781AC 0017510C 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 801781B0 00175110 7C BF 2B 78 */ mr r31, r5 -/* 801781B4 00175114 93 C1 00 38 */ stw r30, 0x38(r1) -/* 801781B8 00175118 7C 7E 1B 78 */ mr r30, r3 -/* 801781BC 0017511C 88 03 00 30 */ lbz r0, 0x30(r3) -/* 801781C0 00175120 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 801781C4 00175124 41 82 00 40 */ beq lbl_80178204 -/* 801781C8 00175128 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) -/* 801781CC 0017512C 80 9E 05 18 */ lwz r4, 0x518(r30) -/* 801781D0 00175130 81 83 00 00 */ lwz r12, 0(r3) -/* 801781D4 00175134 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 801781D8 00175138 7D 89 03 A6 */ mtctr r12 -/* 801781DC 0017513C 4E 80 04 21 */ bctrl -/* 801781E0 00175140 80 1E 04 78 */ lwz r0, 0x478(r30) -/* 801781E4 00175144 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e -/* 801781E8 00175148 41 82 00 1C */ beq lbl_80178204 -/* 801781EC 0017514C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) -/* 801781F0 00175150 80 9E 05 1C */ lwz r4, 0x51c(r30) -/* 801781F4 00175154 81 83 00 00 */ lwz r12, 0(r3) -/* 801781F8 00175158 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 801781FC 0017515C 7D 89 03 A6 */ mtctr r12 -/* 80178200 00175160 4E 80 04 21 */ bctrl -lbl_80178204: -/* 80178204 00175164 C0 5E 03 50 */ lfs f2, 0x350(r30) -/* 80178208 00175168 7F C4 F3 78 */ mr r4, r30 -/* 8017820C 0017516C C0 3E 03 40 */ lfs f1, 0x340(r30) -/* 80178210 00175170 7F E5 FB 78 */ mr r5, r31 -/* 80178214 00175174 C0 1E 03 30 */ lfs f0, 0x330(r30) -/* 80178218 00175178 38 61 00 14 */ addi r3, r1, 0x14 -/* 8017821C 0017517C D0 21 00 0C */ stfs f1, 0xc(r1) -/* 80178220 00175180 D0 01 00 08 */ stfs f0, 8(r1) -/* 80178224 00175184 D0 41 00 10 */ stfs f2, 0x10(r1) -/* 80178228 00175188 81 9E 00 00 */ lwz r12, 0(r30) -/* 8017822C 0017518C 81 8C 00 64 */ lwz r12, 0x64(r12) -/* 80178230 00175190 7D 89 03 A6 */ mtctr r12 -/* 80178234 00175194 4E 80 04 21 */ bctrl -/* 80178238 00175198 7F C3 F3 78 */ mr r3, r30 -/* 8017823C 0017519C 7F E4 FB 78 */ mr r4, r31 -/* 80178240 001751A0 38 A1 00 08 */ addi r5, r1, 8 -/* 80178244 001751A4 38 C1 00 14 */ addi r6, r1, 0x14 -/* 80178248 001751A8 4B ED C8 61 */ bl EnsureRendered__6CActorCFRC13CStateManagerRC9CVector3f -/* 8017824C 001751AC 80 01 00 44 */ lwz r0, 0x44(r1) -/* 80178250 001751B0 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 80178254 001751B4 83 C1 00 38 */ lwz r30, 0x38(r1) -/* 80178258 001751B8 7C 08 03 A6 */ mtlr r0 -/* 8017825C 001751BC 38 21 00 40 */ addi r1, r1, 0x40 -/* 80178260 001751C0 4E 80 00 20 */ blr - -.global CanRenderUnsorted__17CPlasmaProjectileCFRC13CStateManager -CanRenderUnsorted__17CPlasmaProjectileCFRC13CStateManager: -/* 80178264 001751C4 38 60 00 00 */ li r3, 0 -/* 80178268 001751C8 4E 80 00 20 */ blr - -.global UpdateFx__17CPlasmaProjectileFRC12CTransform4ffR13CStateManager -UpdateFx__17CPlasmaProjectileFRC12CTransform4ffR13CStateManager: -/* 8017826C 001751CC 94 21 FF 80 */ stwu r1, -0x80(r1) -/* 80178270 001751D0 7C 08 02 A6 */ mflr r0 -/* 80178274 001751D4 90 01 00 84 */ stw r0, 0x84(r1) -/* 80178278 001751D8 DB E1 00 70 */ stfd f31, 0x70(r1) -/* 8017827C 001751DC F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 -/* 80178280 001751E0 DB C1 00 60 */ stfd f30, 0x60(r1) -/* 80178284 001751E4 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 -/* 80178288 001751E8 93 E1 00 5C */ stw r31, 0x5c(r1) -/* 8017828C 001751EC 93 C1 00 58 */ stw r30, 0x58(r1) -/* 80178290 001751F0 93 A1 00 54 */ stw r29, 0x54(r1) -/* 80178294 001751F4 88 03 00 30 */ lbz r0, 0x30(r3) -/* 80178298 001751F8 FF E0 08 90 */ fmr f31, f1 -/* 8017829C 001751FC 7C 7D 1B 78 */ mr r29, r3 -/* 801782A0 00175200 7C 9E 23 78 */ mr r30, r4 -/* 801782A4 00175204 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 801782A8 00175208 7C BF 2B 78 */ mr r31, r5 -/* 801782AC 0017520C 41 82 03 44 */ beq lbl_801785F0 -/* 801782B0 00175210 80 1D 04 F0 */ lwz r0, 0x4f0(r29) -/* 801782B4 00175214 28 00 00 00 */ cmplwi r0, 0 -/* 801782B8 00175218 41 82 00 0C */ beq lbl_801782C4 -/* 801782BC 0017521C 38 80 00 01 */ li r4, 1 -/* 801782C0 00175220 48 00 00 3C */ b lbl_801782FC -lbl_801782C4: -/* 801782C4 00175224 88 1D 04 EC */ lbz r0, 0x4ec(r29) -/* 801782C8 00175228 28 00 00 00 */ cmplwi r0, 0 -/* 801782CC 0017522C 41 82 00 2C */ beq lbl_801782F8 -/* 801782D0 00175230 80 7D 04 E8 */ lwz r3, 0x4e8(r29) -/* 801782D4 00175234 80 03 00 10 */ lwz r0, 0x10(r3) -/* 801782D8 00175238 28 00 00 00 */ cmplwi r0, 0 -/* 801782DC 0017523C 41 82 00 1C */ beq lbl_801782F8 -/* 801782E0 00175240 38 7D 04 E8 */ addi r3, r29, 0x4e8 -/* 801782E4 00175244 48 1C 8B 29 */ bl GetObj__6CTokenFv -/* 801782E8 00175248 80 03 00 04 */ lwz r0, 4(r3) -/* 801782EC 0017524C 38 80 00 01 */ li r4, 1 -/* 801782F0 00175250 90 1D 04 F0 */ stw r0, 0x4f0(r29) -/* 801782F4 00175254 48 00 00 08 */ b lbl_801782FC -lbl_801782F8: -/* 801782F8 00175258 38 80 00 00 */ li r4, 0 -lbl_801782FC: -/* 801782FC 0017525C 54 80 06 3F */ clrlwi. r0, r4, 0x18 -/* 80178300 00175260 41 82 00 50 */ beq lbl_80178350 -/* 80178304 00175264 80 1D 04 FC */ lwz r0, 0x4fc(r29) -/* 80178308 00175268 28 00 00 00 */ cmplwi r0, 0 -/* 8017830C 0017526C 41 82 00 0C */ beq lbl_80178318 -/* 80178310 00175270 38 80 00 01 */ li r4, 1 -/* 80178314 00175274 48 00 00 3C */ b lbl_80178350 -lbl_80178318: -/* 80178318 00175278 88 1D 04 F8 */ lbz r0, 0x4f8(r29) -/* 8017831C 0017527C 28 00 00 00 */ cmplwi r0, 0 -/* 80178320 00175280 41 82 00 2C */ beq lbl_8017834C -/* 80178324 00175284 80 7D 04 F4 */ lwz r3, 0x4f4(r29) -/* 80178328 00175288 80 03 00 10 */ lwz r0, 0x10(r3) -/* 8017832C 0017528C 28 00 00 00 */ cmplwi r0, 0 -/* 80178330 00175290 41 82 00 1C */ beq lbl_8017834C -/* 80178334 00175294 38 7D 04 F4 */ addi r3, r29, 0x4f4 -/* 80178338 00175298 48 1C 8A D5 */ bl GetObj__6CTokenFv -/* 8017833C 0017529C 80 03 00 04 */ lwz r0, 4(r3) -/* 80178340 001752A0 38 80 00 01 */ li r4, 1 -/* 80178344 001752A4 90 1D 04 FC */ stw r0, 0x4fc(r29) -/* 80178348 001752A8 48 00 00 08 */ b lbl_80178350 -lbl_8017834C: -/* 8017834C 001752AC 38 80 00 00 */ li r4, 0 -lbl_80178350: -/* 80178350 001752B0 88 7D 05 48 */ lbz r3, 0x548(r29) -/* 80178354 001752B4 50 83 26 F6 */ rlwimi r3, r4, 4, 0x1b, 0x1b -/* 80178358 001752B8 38 00 00 00 */ li r0, 0 -/* 8017835C 001752BC 98 7D 05 48 */ stb r3, 0x548(r29) -/* 80178360 001752C0 80 7D 04 B4 */ lwz r3, 0x4b4(r29) -/* 80178364 001752C4 2C 03 00 01 */ cmpwi r3, 1 -/* 80178368 001752C8 41 82 00 0C */ beq lbl_80178374 -/* 8017836C 001752CC 2C 03 00 02 */ cmpwi r3, 2 -/* 80178370 001752D0 40 82 00 08 */ bne lbl_80178378 -lbl_80178374: -/* 80178374 001752D4 38 00 00 01 */ li r0, 1 -lbl_80178378: -/* 80178378 001752D8 54 03 06 3E */ clrlwi r3, r0, 0x18 -/* 8017837C 001752DC 88 1D 04 64 */ lbz r0, 0x464(r29) -/* 80178380 001752E0 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 80178384 001752E4 FC 20 F8 90 */ fmr f1, f31 -/* 80178388 001752E8 98 1D 04 64 */ stb r0, 0x464(r29) -/* 8017838C 001752EC 7F A3 EB 78 */ mr r3, r29 -/* 80178390 001752F0 7F C4 F3 78 */ mr r4, r30 -/* 80178394 001752F4 7F E5 FB 78 */ mr r5, r31 -/* 80178398 001752F8 48 02 0A 49 */ bl UpdateFx__15CBeamProjectileFRC12CTransform4ffR13CStateManager -/* 8017839C 001752FC FC 20 F8 90 */ fmr f1, f31 -/* 801783A0 00175300 7F A3 EB 78 */ mr r3, r29 -/* 801783A4 00175304 7F E4 FB 78 */ mr r4, r31 -/* 801783A8 00175308 48 00 02 75 */ bl UpdatePlayerEffects__17CPlasmaProjectileFfR13CStateManager -/* 801783AC 0017530C 80 1D 04 78 */ lwz r0, 0x478(r29) -/* 801783B0 00175310 38 9D 04 00 */ addi r4, r29, 0x400 -/* 801783B4 00175314 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 801783B8 00175318 41 82 00 60 */ beq lbl_80178418 -/* 801783BC 0017531C 38 00 00 07 */ li r0, 7 -/* 801783C0 00175320 38 C0 00 01 */ li r6, 1 -/* 801783C4 00175324 7C 09 03 A6 */ mtctr r0 -lbl_801783C8: -/* 801783C8 00175328 20 A6 00 08 */ subfic r5, r6, 8 -/* 801783CC 0017532C 38 C6 00 01 */ addi r6, r6, 1 -/* 801783D0 00175330 38 05 FF FF */ addi r0, r5, -1 -/* 801783D4 00175334 1C 60 00 0C */ mulli r3, r0, 0xc -/* 801783D8 00175338 1C 05 00 0C */ mulli r0, r5, 0xc -/* 801783DC 0017533C 7C 64 1A 14 */ add r3, r4, r3 -/* 801783E0 00175340 C0 03 00 04 */ lfs f0, 4(r3) -/* 801783E4 00175344 7C A4 02 14 */ add r5, r4, r0 -/* 801783E8 00175348 D0 05 00 04 */ stfs f0, 4(r5) -/* 801783EC 0017534C C0 03 00 08 */ lfs f0, 8(r3) -/* 801783F0 00175350 D0 05 00 08 */ stfs f0, 8(r5) -/* 801783F4 00175354 C0 03 00 0C */ lfs f0, 0xc(r3) -/* 801783F8 00175358 D0 05 00 0C */ stfs f0, 0xc(r5) -/* 801783FC 0017535C 42 00 FF CC */ bdnz lbl_801783C8 -/* 80178400 00175360 C0 1D 03 18 */ lfs f0, 0x318(r29) -/* 80178404 00175364 D0 04 00 04 */ stfs f0, 4(r4) -/* 80178408 00175368 C0 1D 03 1C */ lfs f0, 0x31c(r29) -/* 8017840C 0017536C D0 04 00 08 */ stfs f0, 8(r4) -/* 80178410 00175370 C0 1D 03 20 */ lfs f0, 0x320(r29) -/* 80178414 00175374 D0 04 00 0C */ stfs f0, 0xc(r4) -lbl_80178418: -/* 80178418 00175378 80 1D 02 F8 */ lwz r0, 0x2f8(r29) -/* 8017841C 0017537C 2C 00 00 00 */ cmpwi r0, 0 -/* 80178420 00175380 41 82 00 10 */ beq lbl_80178430 -/* 80178424 00175384 88 1D 05 48 */ lbz r0, 0x548(r29) -/* 80178428 00175388 54 03 D7 FE */ rlwinm r3, r0, 0x1a, 0x1f, 0x1f -/* 8017842C 0017538C 48 00 00 08 */ b lbl_80178434 -lbl_80178430: -/* 80178430 00175390 38 60 00 00 */ li r3, 0 -lbl_80178434: -/* 80178434 00175394 80 1D 05 18 */ lwz r0, 0x518(r29) -/* 80178438 00175398 28 00 00 00 */ cmplwi r0, 0 -/* 8017843C 0017539C 41 82 01 1C */ beq lbl_80178558 -/* 80178440 001753A0 C0 1D 04 D4 */ lfs f0, 0x4d4(r29) -/* 80178444 001753A4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80178448 001753A8 EC 00 F8 28 */ fsubs f0, f0, f31 -/* 8017844C 001753AC D0 1D 04 D4 */ stfs f0, 0x4d4(r29) -/* 80178450 001753B0 41 82 00 D8 */ beq lbl_80178528 -/* 80178454 001753B4 C0 3D 04 D4 */ lfs f1, 0x4d4(r29) -/* 80178458 001753B8 C0 02 A1 C0 */ lfs f0, lbl_805ABEE0@sda21(r2) -/* 8017845C 001753BC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80178460 001753C0 4C 40 13 82 */ cror 2, 0, 2 -/* 80178464 001753C4 40 82 00 C4 */ bne lbl_80178528 -/* 80178468 001753C8 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8017846C 001753CC 3C 60 80 5A */ lis r3, lbl_805A66F4@ha -/* 80178470 001753D0 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l -/* 80178474 001753D4 83 DD 05 18 */ lwz r30, 0x518(r29) -/* 80178478 001753D8 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 8017847C 001753DC 38 61 00 20 */ addi r3, r1, 0x20 -/* 80178480 001753E0 38 BD 03 0C */ addi r5, r29, 0x30c -/* 80178484 001753E4 48 19 B6 8D */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f -/* 80178488 001753E8 7F C3 F3 78 */ mr r3, r30 -/* 8017848C 001753EC 38 81 00 20 */ addi r4, r1, 0x20 -/* 80178490 001753F0 81 9E 00 00 */ lwz r12, 0(r30) -/* 80178494 001753F4 81 8C 00 14 */ lwz r12, 0x14(r12) -/* 80178498 001753F8 7D 89 03 A6 */ mtctr r12 -/* 8017849C 001753FC 4E 80 04 21 */ bctrl -/* 801784A0 00175400 C0 62 A2 0C */ lfs f3, lbl_805ABF2C@sda21(r2) -/* 801784A4 00175404 38 81 00 14 */ addi r4, r1, 0x14 -/* 801784A8 00175408 C0 5D 03 10 */ lfs f2, 0x310(r29) -/* 801784AC 0017540C C0 3D 03 14 */ lfs f1, 0x314(r29) -/* 801784B0 00175410 C0 1D 03 0C */ lfs f0, 0x30c(r29) -/* 801784B4 00175414 EC A3 00 B2 */ fmuls f5, f3, f2 -/* 801784B8 00175418 EC 83 00 72 */ fmuls f4, f3, f1 -/* 801784BC 0017541C C0 5D 03 1C */ lfs f2, 0x31c(r29) -/* 801784C0 00175420 EC 63 00 32 */ fmuls f3, f3, f0 -/* 801784C4 00175424 C0 3D 03 20 */ lfs f1, 0x320(r29) -/* 801784C8 00175428 C0 1D 03 18 */ lfs f0, 0x318(r29) -/* 801784CC 0017542C EC 42 28 2A */ fadds f2, f2, f5 -/* 801784D0 00175430 EC 21 20 2A */ fadds f1, f1, f4 -/* 801784D4 00175434 D0 61 00 08 */ stfs f3, 8(r1) -/* 801784D8 00175438 EC 00 18 2A */ fadds f0, f0, f3 -/* 801784DC 0017543C D0 41 00 18 */ stfs f2, 0x18(r1) -/* 801784E0 00175440 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 801784E4 00175444 D0 21 00 1C */ stfs f1, 0x1c(r1) -/* 801784E8 00175448 80 7D 05 18 */ lwz r3, 0x518(r29) -/* 801784EC 0017544C D0 A1 00 0C */ stfs f5, 0xc(r1) -/* 801784F0 00175450 81 83 00 00 */ lwz r12, 0(r3) -/* 801784F4 00175454 D0 81 00 10 */ stfs f4, 0x10(r1) -/* 801784F8 00175458 81 8C 00 18 */ lwz r12, 0x18(r12) -/* 801784FC 0017545C 7D 89 03 A6 */ mtctr r12 -/* 80178500 00175460 4E 80 04 21 */ bctrl -/* 80178504 00175464 80 7D 05 18 */ lwz r3, 0x518(r29) -/* 80178508 00175468 38 80 00 01 */ li r4, 1 -/* 8017850C 0017546C 81 83 00 00 */ lwz r12, 0(r3) -/* 80178510 00175470 81 8C 00 2C */ lwz r12, 0x2c(r12) -/* 80178514 00175474 7D 89 03 A6 */ mtctr r12 -/* 80178518 00175478 4E 80 04 21 */ bctrl -/* 8017851C 0017547C C0 02 A1 E4 */ lfs f0, lbl_805ABF04@sda21(r2) -/* 80178520 00175480 D0 1D 04 D4 */ stfs f0, 0x4d4(r29) -/* 80178524 00175484 48 00 00 1C */ b lbl_80178540 -lbl_80178528: -/* 80178528 00175488 80 7D 05 18 */ lwz r3, 0x518(r29) -/* 8017852C 0017548C 38 80 00 00 */ li r4, 0 -/* 80178530 00175490 81 83 00 00 */ lwz r12, 0(r3) -/* 80178534 00175494 81 8C 00 2C */ lwz r12, 0x2c(r12) -/* 80178538 00175498 7D 89 03 A6 */ mtctr r12 -/* 8017853C 0017549C 4E 80 04 21 */ bctrl -lbl_80178540: -/* 80178540 001754A0 80 7D 05 18 */ lwz r3, 0x518(r29) -/* 80178544 001754A4 FC 20 F8 90 */ fmr f1, f31 -/* 80178548 001754A8 81 83 00 00 */ lwz r12, 0(r3) -/* 8017854C 001754AC 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 80178550 001754B0 7D 89 03 A6 */ mtctr r12 -/* 80178554 001754B4 4E 80 04 21 */ bctrl -lbl_80178558: -/* 80178558 001754B8 FC 20 F8 90 */ fmr f1, f31 -/* 8017855C 001754BC 7F A3 EB 78 */ mr r3, r29 -/* 80178560 001754C0 7F E4 FB 78 */ mr r4, r31 -/* 80178564 001754C4 48 00 05 05 */ bl UpdateBeamState__17CPlasmaProjectileFfR13CStateManager -/* 80178568 001754C8 FC 00 08 90 */ fmr f0, f1 -/* 8017856C 001754CC 7F A3 EB 78 */ mr r3, r29 -/* 80178570 001754D0 FC 20 F8 90 */ fmr f1, f31 -/* 80178574 001754D4 FF C0 00 90 */ fmr f30, f0 -/* 80178578 001754D8 4B FF F2 01 */ bl UpdateEnergyPulse__17CPlasmaProjectileFf -/* 8017857C 001754DC C0 42 A2 10 */ lfs f2, lbl_805ABF30@sda21(r2) -/* 80178580 001754E0 C0 3D 04 C8 */ lfs f1, 0x4c8(r29) -/* 80178584 001754E4 C0 02 A2 14 */ lfs f0, lbl_805ABF34@sda21(r2) -/* 80178588 001754E8 EC 22 0F FA */ fmadds f1, f2, f31, f1 -/* 8017858C 001754EC D0 3D 04 C8 */ stfs f1, 0x4c8(r29) -/* 80178590 001754F0 C0 3D 04 C8 */ lfs f1, 0x4c8(r29) -/* 80178594 001754F4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80178598 001754F8 40 81 00 0C */ ble lbl_801785A4 -/* 8017859C 001754FC C0 02 A1 C0 */ lfs f0, lbl_805ABEE0@sda21(r2) -/* 801785A0 00175500 D0 1D 04 C8 */ stfs f0, 0x4c8(r29) -lbl_801785A4: -/* 801785A4 00175504 C0 3D 02 F4 */ lfs f1, 0x2f4(r29) -/* 801785A8 00175508 C0 02 A2 18 */ lfs f0, lbl_805ABF38@sda21(r2) -/* 801785AC 0017550C EC 3E 00 72 */ fmuls f1, f30, f1 -/* 801785B0 00175510 D0 3D 04 B8 */ stfs f1, 0x4b8(r29) -/* 801785B4 00175514 D3 DD 04 C4 */ stfs f30, 0x4c4(r29) -/* 801785B8 00175518 C0 5D 04 80 */ lfs f2, 0x480(r29) -/* 801785BC 0017551C C0 3D 04 CC */ lfs f1, 0x4cc(r29) -/* 801785C0 00175520 EC 3F 08 BA */ fmadds f1, f31, f2, f1 -/* 801785C4 00175524 D0 3D 04 CC */ stfs f1, 0x4cc(r29) -/* 801785C8 00175528 C0 3D 04 CC */ lfs f1, 0x4cc(r29) -/* 801785CC 0017552C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801785D0 00175530 40 81 00 0C */ ble lbl_801785DC -/* 801785D4 00175534 C0 02 A1 C0 */ lfs f0, lbl_805ABEE0@sda21(r2) -/* 801785D8 00175538 D0 1D 04 CC */ stfs f0, 0x4cc(r29) -lbl_801785DC: -/* 801785DC 0017553C FC 20 F0 90 */ fmr f1, f30 -/* 801785E0 00175540 7F A3 EB 78 */ mr r3, r29 -/* 801785E4 00175544 FC 40 F8 90 */ fmr f2, f31 -/* 801785E8 00175548 7F E4 FB 78 */ mr r4, r31 -/* 801785EC 0017554C 4B FF E8 B1 */ bl UpdateLights__17CPlasmaProjectileFffR13CStateManager -lbl_801785F0: -/* 801785F0 00175550 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 -/* 801785F4 00175554 CB E1 00 70 */ lfd f31, 0x70(r1) -/* 801785F8 00175558 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 -/* 801785FC 0017555C CB C1 00 60 */ lfd f30, 0x60(r1) -/* 80178600 00175560 83 E1 00 5C */ lwz r31, 0x5c(r1) -/* 80178604 00175564 83 C1 00 58 */ lwz r30, 0x58(r1) -/* 80178608 00175568 80 01 00 84 */ lwz r0, 0x84(r1) -/* 8017860C 0017556C 83 A1 00 54 */ lwz r29, 0x54(r1) -/* 80178610 00175570 7C 08 03 A6 */ mtlr r0 -/* 80178614 00175574 38 21 00 80 */ addi r1, r1, 0x80 -/* 80178618 00175578 4E 80 00 20 */ blr - -.global UpdatePlayerEffects__17CPlasmaProjectileFfR13CStateManager -UpdatePlayerEffects__17CPlasmaProjectileFfR13CStateManager: -/* 8017861C 0017557C 94 21 FF 30 */ stwu r1, -0xd0(r1) -/* 80178620 00175580 7C 08 02 A6 */ mflr r0 -/* 80178624 00175584 90 01 00 D4 */ stw r0, 0xd4(r1) -/* 80178628 00175588 DB E1 00 C0 */ stfd f31, 0xc0(r1) -/* 8017862C 0017558C F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 -/* 80178630 00175590 93 E1 00 BC */ stw r31, 0xbc(r1) -/* 80178634 00175594 93 C1 00 B8 */ stw r30, 0xb8(r1) -/* 80178638 00175598 93 A1 00 B4 */ stw r29, 0xb4(r1) -/* 8017863C 0017559C 7C 7D 1B 78 */ mr r29, r3 -/* 80178640 001755A0 FF E0 08 90 */ fmr f31, f1 -/* 80178644 001755A4 C0 03 04 DC */ lfs f0, 0x4dc(r3) -/* 80178648 001755A8 7C 9E 23 78 */ mr r30, r4 -/* 8017864C 001755AC 83 E4 08 4C */ lwz r31, 0x84c(r4) -/* 80178650 001755B0 EC 00 F8 28 */ fsubs f0, f0, f31 -/* 80178654 001755B4 D0 03 04 DC */ stfs f0, 0x4dc(r3) -/* 80178658 001755B8 80 03 04 B4 */ lwz r0, 0x4b4(r3) -/* 8017865C 001755BC 2C 00 00 01 */ cmpwi r0, 1 -/* 80178660 001755C0 41 82 00 0C */ beq lbl_8017866C -/* 80178664 001755C4 2C 00 00 02 */ cmpwi r0, 2 -/* 80178668 001755C8 40 82 02 14 */ bne lbl_8017887C -lbl_8017866C: -/* 8017866C 001755CC C0 3D 04 DC */ lfs f1, 0x4dc(r29) -/* 80178670 001755D0 C0 02 A1 C0 */ lfs f0, lbl_805ABEE0@sda21(r2) -/* 80178674 001755D4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80178678 001755D8 4C 40 13 82 */ cror 2, 0, 2 -/* 8017867C 001755DC 40 82 02 00 */ bne lbl_8017887C -/* 80178680 001755E0 80 1D 02 F8 */ lwz r0, 0x2f8(r29) -/* 80178684 001755E4 2C 00 00 01 */ cmpwi r0, 1 -/* 80178688 001755E8 40 82 01 F4 */ bne lbl_8017887C -/* 8017868C 001755EC A0 7D 02 FE */ lhz r3, 0x2fe(r29) -/* 80178690 001755F0 A0 1F 00 08 */ lhz r0, 8(r31) -/* 80178694 001755F4 7C 03 00 40 */ cmplw r3, r0 -/* 80178698 001755F8 40 82 01 E4 */ bne lbl_8017887C -/* 8017869C 001755FC 80 1D 04 78 */ lwz r0, 0x478(r29) -/* 801786A0 00175600 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c -/* 801786A4 00175604 41 82 00 2C */ beq lbl_801786D0 -/* 801786A8 00175608 88 9D 05 48 */ lbz r4, 0x548(r29) -/* 801786AC 0017560C 54 80 F7 FE */ rlwinm r0, r4, 0x1e, 0x1f, 0x1f -/* 801786B0 00175610 28 00 00 01 */ cmplwi r0, 1 -/* 801786B4 00175614 41 82 00 1C */ beq lbl_801786D0 -/* 801786B8 00175618 38 00 00 01 */ li r0, 1 -/* 801786BC 0017561C 7F E3 FB 78 */ mr r3, r31 -/* 801786C0 00175620 50 04 17 7A */ rlwimi r4, r0, 2, 0x1d, 0x1d -/* 801786C4 00175624 98 9D 05 48 */ stb r4, 0x548(r29) -/* 801786C8 00175628 D0 1D 04 E4 */ stfs f0, 0x4e4(r29) -/* 801786CC 0017562C 4B E9 92 91 */ bl IncrementPhazon__7CPlayerFv -lbl_801786D0: -/* 801786D0 00175630 80 1D 00 F0 */ lwz r0, 0xf0(r29) -/* 801786D4 00175634 2C 00 00 02 */ cmpwi r0, 2 -/* 801786D8 00175638 41 82 00 3C */ beq lbl_80178714 -/* 801786DC 0017563C 40 80 00 10 */ bge lbl_801786EC -/* 801786E0 00175640 2C 00 00 01 */ cmpwi r0, 1 -/* 801786E4 00175644 40 80 00 14 */ bge lbl_801786F8 -/* 801786E8 00175648 48 00 01 8C */ b lbl_80178874 -lbl_801786EC: -/* 801786EC 0017564C 2C 00 00 04 */ cmpwi r0, 4 -/* 801786F0 00175650 40 80 01 84 */ bge lbl_80178874 -/* 801786F4 00175654 48 00 01 14 */ b lbl_80178808 -lbl_801786F8: -/* 801786F8 00175658 A0 DD 05 44 */ lhz r6, 0x544(r29) -/* 801786FC 0017565C 7F E3 FB 78 */ mr r3, r31 -/* 80178700 00175660 80 BD 05 24 */ lwz r5, 0x524(r29) -/* 80178704 00175664 7F C4 F3 78 */ mr r4, r30 -/* 80178708 00175668 80 FD 05 28 */ lwz r7, 0x528(r29) -/* 8017870C 0017566C 4B E9 D6 09 */ bl Freeze__7CPlayerFR13CStateManagerUiUsUi -/* 80178710 00175670 48 00 01 64 */ b lbl_80178874 -lbl_80178714: -/* 80178714 00175674 88 1D 05 34 */ lbz r0, 0x534(r29) -/* 80178718 00175678 28 00 00 00 */ cmplwi r0, 0 -/* 8017871C 0017567C 41 82 01 58 */ beq lbl_80178874 -/* 80178720 00175680 38 00 00 00 */ li r0, 0 -/* 80178724 00175684 3C 60 80 3D */ lis r3, lbl_803D0668@ha -/* 80178728 00175688 38 83 06 68 */ addi r4, r3, lbl_803D0668@l -/* 8017872C 0017568C 98 01 00 68 */ stb r0, 0x68(r1) -/* 80178730 00175690 38 61 00 50 */ addi r3, r1, 0x50 -/* 80178734 00175694 38 84 00 07 */ addi r4, r4, 7 -/* 80178738 00175698 4B E8 C5 81 */ bl string_l__4rstlFPCc -/* 8017873C 0017569C 7F A3 EB 78 */ mr r3, r29 -/* 80178740 001756A0 7F C7 F3 78 */ mr r7, r30 -/* 80178744 001756A4 38 81 00 60 */ addi r4, r1, 0x60 -/* 80178748 001756A8 38 BD 05 2C */ addi r5, r29, 0x52c -/* 8017874C 001756AC 38 C1 00 50 */ addi r6, r1, 0x50 -/* 80178750 001756B0 48 00 02 1D */ bl "MakeBillboardEffect__17CPlasmaProjectileFRCQ24rstl44optional_object<25TToken<15CGenDescription>>RCQ24rstl49optional_object<30TToken<20CElectricDescription>>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>R13CStateManager" -/* 80178754 001756B4 38 61 00 50 */ addi r3, r1, 0x50 -/* 80178758 001756B8 48 1C 53 89 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 8017875C 001756BC 88 01 00 68 */ lbz r0, 0x68(r1) -/* 80178760 001756C0 28 00 00 00 */ cmplwi r0, 0 -/* 80178764 001756C4 41 82 00 14 */ beq lbl_80178778 -/* 80178768 001756C8 34 61 00 60 */ addic. r3, r1, 0x60 -/* 8017876C 001756CC 41 82 00 0C */ beq lbl_80178778 -/* 80178770 001756D0 38 80 00 00 */ li r4, 0 -/* 80178774 001756D4 48 1C 86 CD */ bl __dt__6CTokenFv -lbl_80178778: -/* 80178778 001756D8 38 00 00 00 */ li r0, 0 -/* 8017877C 001756DC A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) -/* 80178780 001756E0 98 01 00 68 */ stb r0, 0x68(r1) -/* 80178784 001756E4 38 61 00 30 */ addi r3, r1, 0x30 -/* 80178788 001756E8 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) -/* 8017878C 001756EC 38 A0 00 7F */ li r5, 0x7f -/* 80178790 001756F0 A0 9D 05 46 */ lhz r4, 0x546(r29) -/* 80178794 001756F4 38 C0 00 40 */ li r6, 0x40 -/* 80178798 001756F8 38 E0 00 00 */ li r7, 0 -/* 8017879C 001756FC 39 20 00 00 */ li r9, 0 -/* 801787A0 00175700 48 17 15 D5 */ bl SfxStart__11CSfxManagerFUsssbsbi -/* 801787A4 00175704 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 801787A8 00175708 C0 22 A2 1C */ lfs f1, lbl_805ABF3C@sda21(r2) -/* 801787AC 0017570C C0 42 80 F8 */ lfs f2, lbl_805A9E18@sda21(r2) -/* 801787B0 00175710 C0 62 80 FC */ lfs f3, lbl_805A9E1C@sda21(r2) -/* 801787B4 00175714 4B E9 A8 B9 */ bl SetHudDisable__7CPlayerFfff -/* 801787B8 00175718 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 801787BC 0017571C 7F C6 F3 78 */ mr r6, r30 -/* 801787C0 00175720 38 81 00 2C */ addi r4, r1, 0x2c -/* 801787C4 00175724 38 A0 00 08 */ li r5, 8 -/* 801787C8 00175728 A0 03 03 10 */ lhz r0, 0x310(r3) -/* 801787CC 0017572C B0 01 00 2C */ sth r0, 0x2c(r1) -/* 801787D0 00175730 B0 01 00 28 */ sth r0, 0x28(r1) -/* 801787D4 00175734 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 801787D8 00175738 48 00 2A 7D */ bl SetOrbitRequestForTarget__7CPlayerF9TUniqueId19EPlayerOrbitRequestR13CStateManager -/* 801787DC 0017573C A0 1D 00 08 */ lhz r0, 8(r29) -/* 801787E0 00175740 38 81 00 24 */ addi r4, r1, 0x24 -/* 801787E4 00175744 C0 22 A2 20 */ lfs f1, lbl_805ABF40@sda21(r2) -/* 801787E8 00175748 B0 01 00 24 */ sth r0, 0x24(r1) -/* 801787EC 0017574C C0 42 A2 1C */ lfs f2, lbl_805ABF3C@sda21(r2) -/* 801787F0 00175750 80 7E 08 B8 */ lwz r3, 0x8b8(r30) -/* 801787F4 00175754 B0 01 00 20 */ sth r0, 0x20(r1) -/* 801787F8 00175758 80 63 00 00 */ lwz r3, 0(r3) -/* 801787FC 0017575C 38 63 01 88 */ addi r3, r3, 0x188 -/* 80178800 00175760 48 04 83 39 */ bl AddSource__19CStaticInterferenceF9TUniqueId -/* 80178804 00175764 48 00 00 70 */ b lbl_80178874 -lbl_80178808: -/* 80178808 00175768 88 1D 05 40 */ lbz r0, 0x540(r29) -/* 8017880C 0017576C 28 00 00 00 */ cmplwi r0, 0 -/* 80178810 00175770 41 82 00 64 */ beq lbl_80178874 -/* 80178814 00175774 38 00 00 00 */ li r0, 0 -/* 80178818 00175778 3C 60 80 3D */ lis r3, lbl_803D0668@ha -/* 8017881C 0017577C 38 83 06 68 */ addi r4, r3, lbl_803D0668@l -/* 80178820 00175780 98 01 00 4C */ stb r0, 0x4c(r1) -/* 80178824 00175784 38 61 00 34 */ addi r3, r1, 0x34 -/* 80178828 00175788 38 84 00 18 */ addi r4, r4, 0x18 -/* 8017882C 0017578C 4B E8 C4 8D */ bl string_l__4rstlFPCc -/* 80178830 00175790 7F A3 EB 78 */ mr r3, r29 -/* 80178834 00175794 7F C7 F3 78 */ mr r7, r30 -/* 80178838 00175798 38 9D 05 38 */ addi r4, r29, 0x538 -/* 8017883C 0017579C 38 A1 00 44 */ addi r5, r1, 0x44 -/* 80178840 001757A0 38 C1 00 34 */ addi r6, r1, 0x34 -/* 80178844 001757A4 48 00 01 29 */ bl "MakeBillboardEffect__17CPlasmaProjectileFRCQ24rstl44optional_object<25TToken<15CGenDescription>>RCQ24rstl49optional_object<30TToken<20CElectricDescription>>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>R13CStateManager" -/* 80178848 001757A8 38 61 00 34 */ addi r3, r1, 0x34 -/* 8017884C 001757AC 48 1C 52 95 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 80178850 001757B0 88 01 00 4C */ lbz r0, 0x4c(r1) -/* 80178854 001757B4 28 00 00 00 */ cmplwi r0, 0 -/* 80178858 001757B8 41 82 00 14 */ beq lbl_8017886C -/* 8017885C 001757BC 34 61 00 44 */ addic. r3, r1, 0x44 -/* 80178860 001757C0 41 82 00 0C */ beq lbl_8017886C -/* 80178864 001757C4 38 80 00 00 */ li r4, 0 -/* 80178868 001757C8 48 1C 85 D9 */ bl __dt__6CTokenFv -lbl_8017886C: -/* 8017886C 001757CC 38 00 00 00 */ li r0, 0 -/* 80178870 001757D0 98 01 00 4C */ stb r0, 0x4c(r1) -lbl_80178874: -/* 80178874 001757D4 C0 02 A2 24 */ lfs f0, lbl_805ABF44@sda21(r2) -/* 80178878 001757D8 D0 1D 04 DC */ stfs f0, 0x4dc(r29) -lbl_8017887C: -/* 8017887C 001757DC 88 1D 05 48 */ lbz r0, 0x548(r29) -/* 80178880 001757E0 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f -/* 80178884 001757E4 41 82 00 C4 */ beq lbl_80178948 -/* 80178888 001757E8 80 1D 00 F8 */ lwz r0, 0xf8(r29) -/* 8017888C 001757EC FC 20 F8 90 */ fmr f1, f31 -/* 80178890 001757F0 80 BD 00 FC */ lwz r5, 0xfc(r29) -/* 80178894 001757F4 38 61 00 88 */ addi r3, r1, 0x88 -/* 80178898 001757F8 38 9D 04 98 */ addi r4, r29, 0x498 -/* 8017889C 001757FC 90 A1 00 74 */ stw r5, 0x74(r1) -/* 801788A0 00175800 90 01 00 70 */ stw r0, 0x70(r1) -/* 801788A4 00175804 80 1D 01 00 */ lwz r0, 0x100(r29) -/* 801788A8 00175808 80 BD 01 04 */ lwz r5, 0x104(r29) -/* 801788AC 0017580C 90 A1 00 7C */ stw r5, 0x7c(r1) -/* 801788B0 00175810 90 01 00 78 */ stw r0, 0x78(r1) -/* 801788B4 00175814 80 1D 01 08 */ lwz r0, 0x108(r29) -/* 801788B8 00175818 90 01 00 80 */ stw r0, 0x80(r1) -/* 801788BC 0017581C A0 1D 00 EC */ lhz r0, 0xec(r29) -/* 801788C0 00175820 B0 01 00 0C */ sth r0, 0xc(r1) -/* 801788C4 00175824 A0 BF 00 08 */ lhz r5, 8(r31) -/* 801788C8 00175828 B0 01 00 08 */ sth r0, 8(r1) -/* 801788CC 0017582C B0 A1 00 14 */ sth r5, 0x14(r1) -/* 801788D0 00175830 A0 1D 00 08 */ lhz r0, 8(r29) -/* 801788D4 00175834 B0 A1 00 10 */ sth r5, 0x10(r1) -/* 801788D8 00175838 B0 01 00 18 */ sth r0, 0x18(r1) -/* 801788DC 0017583C B0 01 00 1C */ sth r0, 0x1c(r1) -/* 801788E0 00175840 4B F4 AB 69 */ bl __ct__11CDamageInfoFRC11CDamageInfof -/* 801788E4 00175844 3C 80 80 5A */ lis r4, skZero3f@ha -/* 801788E8 00175848 7F C3 F3 78 */ mr r3, r30 -/* 801788EC 0017584C 39 24 66 A0 */ addi r9, r4, skZero3f@l -/* 801788F0 00175850 38 A1 00 14 */ addi r5, r1, 0x14 -/* 801788F4 00175854 38 81 00 1C */ addi r4, r1, 0x1c -/* 801788F8 00175858 38 C1 00 0C */ addi r6, r1, 0xc -/* 801788FC 0017585C 38 E1 00 88 */ addi r7, r1, 0x88 -/* 80178900 00175860 39 01 00 70 */ addi r8, r1, 0x70 -/* 80178904 00175864 4B ED 17 9D */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f -/* 80178908 00175868 C0 1D 04 E4 */ lfs f0, 0x4e4(r29) -/* 8017890C 0017586C EC 00 F8 2A */ fadds f0, f0, f31 -/* 80178910 00175870 D0 1D 04 E4 */ stfs f0, 0x4e4(r29) -/* 80178914 00175874 C0 3D 04 E4 */ lfs f1, 0x4e4(r29) -/* 80178918 00175878 C0 1D 04 E0 */ lfs f0, 0x4e0(r29) -/* 8017891C 0017587C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80178920 00175880 4C 41 13 82 */ cror 2, 1, 2 -/* 80178924 00175884 40 82 00 24 */ bne lbl_80178948 -/* 80178928 00175888 7F E3 FB 78 */ mr r3, r31 -/* 8017892C 0017588C 4B E9 90 19 */ bl DecrementPhazon__7CPlayerFv -/* 80178930 00175890 C0 02 A1 C0 */ lfs f0, lbl_805ABEE0@sda21(r2) -/* 80178934 00175894 38 60 00 00 */ li r3, 0 -/* 80178938 00175898 D0 1D 04 E4 */ stfs f0, 0x4e4(r29) -/* 8017893C 0017589C 88 1D 05 48 */ lbz r0, 0x548(r29) -/* 80178940 001758A0 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d -/* 80178944 001758A4 98 1D 05 48 */ stb r0, 0x548(r29) -lbl_80178948: -/* 80178948 001758A8 E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 -/* 8017894C 001758AC 80 01 00 D4 */ lwz r0, 0xd4(r1) -/* 80178950 001758B0 CB E1 00 C0 */ lfd f31, 0xc0(r1) -/* 80178954 001758B4 83 E1 00 BC */ lwz r31, 0xbc(r1) -/* 80178958 001758B8 83 C1 00 B8 */ lwz r30, 0xb8(r1) -/* 8017895C 001758BC 83 A1 00 B4 */ lwz r29, 0xb4(r1) -/* 80178960 001758C0 7C 08 03 A6 */ mtlr r0 -/* 80178964 001758C4 38 21 00 D0 */ addi r1, r1, 0xd0 -/* 80178968 001758C8 4E 80 00 20 */ blr - -.global "MakeBillboardEffect__17CPlasmaProjectileFRCQ24rstl44optional_object<25TToken<15CGenDescription>>RCQ24rstl49optional_object<30TToken<20CElectricDescription>>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>R13CStateManager" -"MakeBillboardEffect__17CPlasmaProjectileFRCQ24rstl44optional_object<25TToken<15CGenDescription>>RCQ24rstl49optional_object<30TToken<20CElectricDescription>>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>R13CStateManager": -/* 8017896C 001758CC 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 80178970 001758D0 7C 08 02 A6 */ mflr r0 -/* 80178974 001758D4 3C 60 80 3D */ lis r3, lbl_803D0668@ha -/* 80178978 001758D8 90 01 00 64 */ stw r0, 0x64(r1) -/* 8017897C 001758DC 38 03 06 68 */ addi r0, r3, lbl_803D0668@l -/* 80178980 001758E0 38 60 01 10 */ li r3, 0x110 -/* 80178984 001758E4 BF 21 00 44 */ stmw r25, 0x44(r1) -/* 80178988 001758E8 7C BA 2B 78 */ mr r26, r5 -/* 8017898C 001758EC 7C 99 23 78 */ mr r25, r4 -/* 80178990 001758F0 7C DB 33 78 */ mr r27, r6 -/* 80178994 001758F4 7C FC 3B 78 */ mr r28, r7 -/* 80178998 001758F8 7C 04 03 78 */ mr r4, r0 -/* 8017899C 001758FC 38 A0 00 00 */ li r5, 0 -/* 801789A0 00175900 48 19 CE CD */ bl __nw__FUlPCcPCc -/* 801789A4 00175904 7C 7D 1B 79 */ or. r29, r3, r3 -/* 801789A8 00175908 41 82 00 A0 */ beq lbl_80178A48 -/* 801789AC 0017590C C0 22 A1 C0 */ lfs f1, lbl_805ABEE0@sda21(r2) -/* 801789B0 00175910 7F 84 E3 78 */ mr r4, r28 -/* 801789B4 00175914 C0 02 A1 FC */ lfs f0, lbl_805ABF1C@sda21(r2) -/* 801789B8 00175918 38 61 00 10 */ addi r3, r1, 0x10 -/* 801789BC 0017591C D0 21 00 28 */ stfs f1, 0x28(r1) -/* 801789C0 00175920 D0 21 00 2C */ stfs f1, 0x2c(r1) -/* 801789C4 00175924 D0 21 00 30 */ stfs f1, 0x30(r1) -/* 801789C8 00175928 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 801789CC 0017592C D0 01 00 20 */ stfs f0, 0x20(r1) -/* 801789D0 00175930 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 801789D4 00175934 4B ED 47 09 */ bl AllocateUniqueId__13CStateManagerFv -/* 801789D8 00175938 C0 22 A1 FC */ lfs f1, lbl_805ABF1C@sda21(r2) -/* 801789DC 0017593C 38 61 00 18 */ addi r3, r1, 0x18 -/* 801789E0 00175940 A0 01 00 10 */ lhz r0, 0x10(r1) -/* 801789E4 00175944 FC 40 08 90 */ fmr f2, f1 -/* 801789E8 00175948 FC 60 08 90 */ fmr f3, f1 -/* 801789EC 0017594C B0 01 00 14 */ sth r0, 0x14(r1) -/* 801789F0 00175950 FC 80 08 90 */ fmr f4, f1 -/* 801789F4 00175954 48 1E A9 F9 */ bl __ct__6CColorFffff -/* 801789F8 00175958 7C 7E 1B 78 */ mr r30, r3 -/* 801789FC 0017595C 7F 83 E3 78 */ mr r3, r28 -/* 80178A00 00175960 4B FB 78 2D */ bl GetScaleForPOV__19CHUDBillboardEffectFRC13CStateManager -/* 80178A04 00175964 7C 7F 1B 78 */ mr r31, r3 -/* 80178A08 00175968 7F 83 E3 78 */ mr r3, r28 -/* 80178A0C 0017596C 4B FB 77 ED */ bl GetNearClipDistance__19CHUDBillboardEffectFRC13CStateManager -/* 80178A10 00175970 38 61 00 1C */ addi r3, r1, 0x1c -/* 80178A14 00175974 38 01 00 28 */ addi r0, r1, 0x28 -/* 80178A18 00175978 90 61 00 08 */ stw r3, 8(r1) -/* 80178A1C 0017597C 7F A3 EB 78 */ mr r3, r29 -/* 80178A20 00175980 7F 24 CB 78 */ mr r4, r25 -/* 80178A24 00175984 7F 45 D3 78 */ mr r5, r26 -/* 80178A28 00175988 90 01 00 0C */ stw r0, 0xc(r1) -/* 80178A2C 0017598C 7F 68 DB 78 */ mr r8, r27 -/* 80178A30 00175990 7F E9 FB 78 */ mr r9, r31 -/* 80178A34 00175994 7F CA F3 78 */ mr r10, r30 -/* 80178A38 00175998 38 C1 00 14 */ addi r6, r1, 0x14 -/* 80178A3C 0017599C 38 E0 00 01 */ li r7, 1 -/* 80178A40 001759A0 4B FB 74 B9 */ bl "__ct__19CHUDBillboardEffectFRCQ24rstl44optional_object<25TToken<15CGenDescription>>RCQ24rstl49optional_object<30TToken<20CElectricDescription>>9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>fRC9CVector3fRC6CColorRC9CVector3fRC9CVector3f" -/* 80178A44 001759A4 7C 7D 1B 78 */ mr r29, r3 -lbl_80178A48: -/* 80178A48 001759A8 7F 83 E3 78 */ mr r3, r28 -/* 80178A4C 001759AC 7F A4 EB 78 */ mr r4, r29 -/* 80178A50 001759B0 4B ED 42 A5 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence -/* 80178A54 001759B4 BB 21 00 44 */ lmw r25, 0x44(r1) -/* 80178A58 001759B8 80 01 00 64 */ lwz r0, 0x64(r1) -/* 80178A5C 001759BC 7C 08 03 A6 */ mtlr r0 -/* 80178A60 001759C0 38 21 00 60 */ addi r1, r1, 0x60 -/* 80178A64 001759C4 4E 80 00 20 */ blr - -.global UpdateBeamState__17CPlasmaProjectileFfR13CStateManager -UpdateBeamState__17CPlasmaProjectileFfR13CStateManager: -/* 80178A68 001759C8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80178A6C 001759CC 7C 08 02 A6 */ mflr r0 -/* 80178A70 001759D0 90 01 00 14 */ stw r0, 0x14(r1) -/* 80178A74 001759D4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80178A78 001759D8 7C 9F 23 78 */ mr r31, r4 -/* 80178A7C 001759DC 93 C1 00 08 */ stw r30, 8(r1) -/* 80178A80 001759E0 7C 7E 1B 78 */ mr r30, r3 -/* 80178A84 001759E4 80 03 04 B4 */ lwz r0, 0x4b4(r3) -/* 80178A88 001759E8 2C 00 00 03 */ cmpwi r0, 3 -/* 80178A8C 001759EC 41 82 00 84 */ beq lbl_80178B10 -/* 80178A90 001759F0 40 80 00 14 */ bge lbl_80178AA4 -/* 80178A94 001759F4 2C 00 00 01 */ cmpwi r0, 1 -/* 80178A98 001759F8 41 82 00 18 */ beq lbl_80178AB0 -/* 80178A9C 001759FC 40 80 00 40 */ bge lbl_80178ADC -/* 80178AA0 00175A00 48 00 01 1C */ b lbl_80178BBC -lbl_80178AA4: -/* 80178AA4 00175A04 2C 00 00 05 */ cmpwi r0, 5 -/* 80178AA8 00175A08 40 80 01 14 */ bge lbl_80178BBC -/* 80178AAC 00175A0C 48 00 00 A4 */ b lbl_80178B50 -lbl_80178AB0: -/* 80178AB0 00175A10 C0 5E 04 C0 */ lfs f2, 0x4c0(r30) -/* 80178AB4 00175A14 C0 02 A1 E8 */ lfs f0, lbl_805ABF08@sda21(r2) -/* 80178AB8 00175A18 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 80178ABC 00175A1C 40 81 00 10 */ ble lbl_80178ACC -/* 80178AC0 00175A20 38 00 00 02 */ li r0, 2 -/* 80178AC4 00175A24 90 1E 04 B4 */ stw r0, 0x4b4(r30) -/* 80178AC8 00175A28 48 00 00 F4 */ b lbl_80178BBC -lbl_80178ACC: -/* 80178ACC 00175A2C C0 1E 04 88 */ lfs f0, 0x488(r30) -/* 80178AD0 00175A30 EC 01 10 3A */ fmadds f0, f1, f0, f2 -/* 80178AD4 00175A34 D0 1E 04 C0 */ stfs f0, 0x4c0(r30) -/* 80178AD8 00175A38 48 00 00 E4 */ b lbl_80178BBC -lbl_80178ADC: -/* 80178ADC 00175A3C 80 1E 04 78 */ lwz r0, 0x478(r30) -/* 80178AE0 00175A40 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d -/* 80178AE4 00175A44 41 82 00 D8 */ beq lbl_80178BBC -/* 80178AE8 00175A48 C0 5E 04 BC */ lfs f2, 0x4bc(r30) -/* 80178AEC 00175A4C C0 1E 04 7C */ lfs f0, 0x47c(r30) -/* 80178AF0 00175A50 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 80178AF4 00175A54 40 81 00 10 */ ble lbl_80178B04 -/* 80178AF8 00175A58 38 00 00 03 */ li r0, 3 -/* 80178AFC 00175A5C 90 1E 04 B4 */ stw r0, 0x4b4(r30) -/* 80178B00 00175A60 48 00 00 BC */ b lbl_80178BBC -lbl_80178B04: -/* 80178B04 00175A64 EC 02 08 2A */ fadds f0, f2, f1 -/* 80178B08 00175A68 D0 1E 04 BC */ stfs f0, 0x4bc(r30) -/* 80178B0C 00175A6C 48 00 00 B0 */ b lbl_80178BBC -lbl_80178B10: -/* 80178B10 00175A70 C0 7E 04 88 */ lfs f3, 0x488(r30) -/* 80178B14 00175A74 C0 5E 04 C0 */ lfs f2, 0x4c0(r30) -/* 80178B18 00175A78 C0 02 A1 FC */ lfs f0, lbl_805ABF1C@sda21(r2) -/* 80178B1C 00175A7C EC 21 10 FA */ fmadds f1, f1, f3, f2 -/* 80178B20 00175A80 D0 3E 04 C0 */ stfs f1, 0x4c0(r30) -/* 80178B24 00175A84 C0 3E 04 C0 */ lfs f1, 0x4c0(r30) -/* 80178B28 00175A88 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80178B2C 00175A8C 40 81 00 90 */ ble lbl_80178BBC -/* 80178B30 00175A90 D0 1E 04 C0 */ stfs f0, 0x4c0(r30) -/* 80178B34 00175A94 38 00 00 04 */ li r0, 4 -/* 80178B38 00175A98 38 60 00 00 */ li r3, 0 -/* 80178B3C 00175A9C 90 1E 04 B4 */ stw r0, 0x4b4(r30) -/* 80178B40 00175AA0 88 1E 05 48 */ lbz r0, 0x548(r30) -/* 80178B44 00175AA4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 80178B48 00175AA8 98 1E 05 48 */ stb r0, 0x548(r30) -/* 80178B4C 00175AAC 48 00 00 70 */ b lbl_80178BBC -lbl_80178B50: -/* 80178B50 00175AB0 C0 1E 04 D0 */ lfs f0, 0x4d0(r30) -/* 80178B54 00175AB4 EC 00 08 2A */ fadds f0, f0, f1 -/* 80178B58 00175AB8 D0 1E 04 D0 */ stfs f0, 0x4d0(r30) -/* 80178B5C 00175ABC C0 3E 04 D0 */ lfs f1, 0x4d0(r30) -/* 80178B60 00175AC0 C0 1E 04 84 */ lfs f0, 0x484(r30) -/* 80178B64 00175AC4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80178B68 00175AC8 40 81 00 54 */ ble lbl_80178BBC -/* 80178B6C 00175ACC 80 7E 05 18 */ lwz r3, 0x518(r30) -/* 80178B70 00175AD0 28 03 00 00 */ cmplwi r3, 0 -/* 80178B74 00175AD4 41 82 00 18 */ beq lbl_80178B8C -/* 80178B78 00175AD8 48 19 F3 75 */ bl GetParticleCountAll__11CElementGenCFv -/* 80178B7C 00175ADC 7C 60 00 34 */ cntlzw r0, r3 -/* 80178B80 00175AE0 38 60 00 01 */ li r3, 1 -/* 80178B84 00175AE4 5C 60 07 FE */ rlwnm r0, r3, r0, 0x1f, 0x1f -/* 80178B88 00175AE8 48 00 00 08 */ b lbl_80178B90 -lbl_80178B8C: -/* 80178B8C 00175AEC 38 00 00 01 */ li r0, 1 -lbl_80178B90: -/* 80178B90 00175AF0 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 80178B94 00175AF4 41 82 00 28 */ beq lbl_80178BBC -/* 80178B98 00175AF8 38 00 00 00 */ li r0, 0 -/* 80178B9C 00175AFC 7F C3 F3 78 */ mr r3, r30 -/* 80178BA0 00175B00 90 1E 04 B4 */ stw r0, 0x4b4(r30) -/* 80178BA4 00175B04 7F E4 FB 78 */ mr r4, r31 -/* 80178BA8 00175B08 38 A0 00 01 */ li r5, 1 -/* 80178BAC 00175B0C 81 9E 00 00 */ lwz r12, 0(r30) -/* 80178BB0 00175B10 81 8C 00 74 */ lwz r12, 0x74(r12) -/* 80178BB4 00175B14 7D 89 03 A6 */ mtctr r12 -/* 80178BB8 00175B18 4E 80 04 21 */ bctrl -lbl_80178BBC: -/* 80178BBC 00175B1C C0 5E 04 C0 */ lfs f2, 0x4c0(r30) -/* 80178BC0 00175B20 C0 22 A2 28 */ lfs f1, lbl_805ABF48@sda21(r2) -/* 80178BC4 00175B24 C0 02 A1 FC */ lfs f0, lbl_805ABF1C@sda21(r2) -/* 80178BC8 00175B28 EC 21 00 B2 */ fmuls f1, f1, f2 -/* 80178BCC 00175B2C EC 02 00 28 */ fsubs f0, f2, f0 -/* 80178BD0 00175B30 EC 21 00 32 */ fmuls f1, f1, f0 -/* 80178BD4 00175B34 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80178BD8 00175B38 83 C1 00 08 */ lwz r30, 8(r1) -/* 80178BDC 00175B3C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80178BE0 00175B40 7C 08 03 A6 */ mtlr r0 -/* 80178BE4 00175B44 38 21 00 10 */ addi r1, r1, 0x10 -/* 80178BE8 00175B48 4E 80 00 20 */ blr - -.global Touch__17CPlasmaProjectileFR6CActorR13CStateManager -Touch__17CPlasmaProjectileFR6CActorR13CStateManager: -/* 80178BEC 00175B4C 4E 80 00 20 */ blr - -.global Accept__17CPlasmaProjectileFR8IVisitor -Accept__17CPlasmaProjectileFR8IVisitor: -/* 80178BF0 00175B50 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80178BF4 00175B54 7C 08 02 A6 */ mflr r0 -/* 80178BF8 00175B58 90 01 00 14 */ stw r0, 0x14(r1) -/* 80178BFC 00175B5C 7C 60 1B 78 */ mr r0, r3 -/* 80178C00 00175B60 7C 83 23 78 */ mr r3, r4 -/* 80178C04 00175B64 81 84 00 00 */ lwz r12, 0(r4) -/* 80178C08 00175B68 7C 04 03 78 */ mr r4, r0 -/* 80178C0C 00175B6C 81 8C 00 3C */ lwz r12, 0x3c(r12) -/* 80178C10 00175B70 7D 89 03 A6 */ mtctr r12 -/* 80178C14 00175B74 4E 80 04 21 */ bctrl -/* 80178C18 00175B78 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80178C1C 00175B7C 7C 08 03 A6 */ mtlr r0 -/* 80178C20 00175B80 38 21 00 10 */ addi r1, r1, 0x10 -/* 80178C24 00175B84 4E 80 00 20 */ blr - -.global "__ct__17CPlasmaProjectileFRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC9CBeamInfoRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId9TUniqueIdbUi" -"__ct__17CPlasmaProjectileFRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC9CBeamInfoRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId9TUniqueIdbUi": -/* 80178C28 00175B88 94 21 FE C0 */ stwu r1, -0x140(r1) -/* 80178C2C 00175B8C 7C 08 02 A6 */ mflr r0 -/* 80178C30 00175B90 90 01 01 44 */ stw r0, 0x144(r1) -/* 80178C34 00175B94 39 81 00 24 */ addi r12, r1, 0x24 -/* 80178C38 00175B98 39 61 00 28 */ addi r11, r1, 0x28 -/* 80178C3C 00175B9C 38 01 00 20 */ addi r0, r1, 0x20 -/* 80178C40 00175BA0 BF 01 01 20 */ stmw r24, 0x120(r1) -/* 80178C44 00175BA4 7C FE 3B 78 */ mr r30, r7 -/* 80178C48 00175BA8 83 01 01 50 */ lwz r24, 0x150(r1) -/* 80178C4C 00175BAC 7D 07 43 78 */ mr r7, r8 -/* 80178C50 00175BB0 83 41 01 4C */ lwz r26, 0x14c(r1) -/* 80178C54 00175BB4 7C 7F 1B 78 */ mr r31, r3 -/* 80178C58 00175BB8 83 61 01 48 */ lwz r27, 0x148(r1) -/* 80178C5C 00175BBC 83 21 01 5C */ lwz r25, 0x15c(r1) -/* 80178C60 00175BC0 8B 81 01 5B */ lbz r28, 0x15b(r1) -/* 80178C64 00175BC4 83 A1 01 54 */ lwz r29, 0x154(r1) -/* 80178C68 00175BC8 A3 18 00 00 */ lhz r24, 0(r24) -/* 80178C6C 00175BCC B3 01 00 20 */ sth r24, 0x20(r1) -/* 80178C70 00175BD0 83 1A 00 00 */ lwz r24, 0(r26) -/* 80178C74 00175BD4 93 01 00 28 */ stw r24, 0x28(r1) -/* 80178C78 00175BD8 A1 1B 00 00 */ lhz r8, 0(r27) -/* 80178C7C 00175BDC B1 01 00 24 */ sth r8, 0x24(r1) -/* 80178C80 00175BE0 91 81 00 08 */ stw r12, 8(r1) -/* 80178C84 00175BE4 91 61 00 0C */ stw r11, 0xc(r1) -/* 80178C88 00175BE8 90 01 00 10 */ stw r0, 0x10(r1) -/* 80178C8C 00175BEC 93 21 00 14 */ stw r25, 0x14(r1) -/* 80178C90 00175BF0 93 81 00 18 */ stw r28, 0x18(r1) -/* 80178C94 00175BF4 81 1E 00 18 */ lwz r8, 0x18(r30) -/* 80178C98 00175BF8 C0 3E 00 1C */ lfs f1, 0x1c(r30) -/* 80178C9C 00175BFC C0 5E 00 38 */ lfs f2, 0x38(r30) -/* 80178CA0 00175C00 48 02 07 ED */ bl "__ct__15CBeamProjectileFRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC12CTransform4fiff14EMaterialTypesRC11CDamageInfo9TUniqueId9TUniqueIdUib" -/* 80178CA4 00175C04 3C 60 80 3E */ lis r3, lbl_803E3F00@ha -/* 80178CA8 00175C08 C0 22 A1 C0 */ lfs f1, lbl_805ABEE0@sda21(r2) -/* 80178CAC 00175C0C 38 03 3F 00 */ addi r0, r3, lbl_803E3F00@l -/* 80178CB0 00175C10 39 00 FF FF */ li r8, -1 -/* 80178CB4 00175C14 90 1F 00 00 */ stw r0, 0(r31) -/* 80178CB8 00175C18 39 40 00 00 */ li r10, 0 -/* 80178CBC 00175C1C 88 01 00 30 */ lbz r0, 0x30(r1) -/* 80178CC0 00175C20 51 40 3E 30 */ rlwimi r0, r10, 7, 0x18, 0x18 -/* 80178CC4 00175C24 91 5F 04 6C */ stw r10, 0x46c(r31) -/* 80178CC8 00175C28 3D 20 43 30 */ lis r9, 0x4330 -/* 80178CCC 00175C2C 54 07 06 3E */ clrlwi r7, r0, 0x18 -/* 80178CD0 00175C30 88 81 01 14 */ lbz r4, 0x114(r1) -/* 80178CD4 00175C34 91 5F 04 70 */ stw r10, 0x470(r31) -/* 80178CD8 00175C38 51 47 36 72 */ rlwimi r7, r10, 6, 0x19, 0x19 -/* 80178CDC 00175C3C 54 E6 06 3E */ clrlwi r6, r7, 0x18 -/* 80178CE0 00175C40 51 44 3E 30 */ rlwimi r4, r10, 7, 0x18, 0x18 -/* 80178CE4 00175C44 91 5F 04 74 */ stw r10, 0x474(r31) -/* 80178CE8 00175C48 51 46 2E B4 */ rlwimi r6, r10, 5, 0x1a, 0x1a -/* 80178CEC 00175C4C C8 62 A1 D0 */ lfd f3, lbl_805ABEF0@sda21(r2) -/* 80178CF0 00175C50 FC 00 08 18 */ frsp f0, f1 -/* 80178CF4 00175C54 80 BE 00 04 */ lwz r5, 4(r30) -/* 80178CF8 00175C58 3C 60 54 58 */ lis r3, 0x54585452@ha -/* 80178CFC 00175C5C 98 01 00 30 */ stb r0, 0x30(r1) -/* 80178D00 00175C60 38 03 54 52 */ addi r0, r3, 0x54585452@l -/* 80178D04 00175C64 C0 82 A2 2C */ lfs f4, lbl_805ABF4C@sda21(r2) -/* 80178D08 00175C68 90 BF 04 78 */ stw r5, 0x478(r31) -/* 80178D0C 00175C6C 38 61 00 A4 */ addi r3, r1, 0xa4 -/* 80178D10 00175C70 38 A1 00 AC */ addi r5, r1, 0xac -/* 80178D14 00175C74 C0 5E 00 24 */ lfs f2, 0x24(r30) -/* 80178D18 00175C78 98 E1 00 30 */ stb r7, 0x30(r1) -/* 80178D1C 00175C7C D0 5F 04 7C */ stfs f2, 0x47c(r31) -/* 80178D20 00175C80 C0 5E 00 28 */ lfs f2, 0x28(r30) -/* 80178D24 00175C84 91 21 01 18 */ stw r9, 0x118(r1) -/* 80178D28 00175C88 D0 5F 04 80 */ stfs f2, 0x480(r31) -/* 80178D2C 00175C8C C0 5E 00 2C */ lfs f2, 0x2c(r30) -/* 80178D30 00175C90 98 C1 00 30 */ stb r6, 0x30(r1) -/* 80178D34 00175C94 D0 5F 04 84 */ stfs f2, 0x484(r31) -/* 80178D38 00175C98 C0 5E 00 20 */ lfs f2, 0x20(r30) -/* 80178D3C 00175C9C 98 C1 01 00 */ stb r6, 0x100(r1) -/* 80178D40 00175CA0 D0 5F 04 88 */ stfs f2, 0x488(r31) -/* 80178D44 00175CA4 80 FE 00 18 */ lwz r7, 0x18(r30) -/* 80178D48 00175CA8 98 81 01 14 */ stb r4, 0x114(r1) -/* 80178D4C 00175CAC 6C E7 80 00 */ xoris r7, r7, 0x8000 -/* 80178D50 00175CB0 90 E1 01 1C */ stw r7, 0x11c(r1) -/* 80178D54 00175CB4 C8 41 01 18 */ lfd f2, 0x118(r1) -/* 80178D58 00175CB8 91 01 00 2C */ stw r8, 0x2c(r1) -/* 80178D5C 00175CBC EC 42 18 28 */ fsubs f2, f2, f3 -/* 80178D60 00175CC0 91 01 00 FC */ stw r8, 0xfc(r1) -/* 80178D64 00175CC4 EC 44 00 B2 */ fmuls f2, f4, f2 -/* 80178D68 00175CC8 D0 21 01 04 */ stfs f1, 0x104(r1) -/* 80178D6C 00175CCC D0 21 01 08 */ stfs f1, 0x108(r1) -/* 80178D70 00175CD0 D0 5F 04 8C */ stfs f2, 0x48c(r31) -/* 80178D74 00175CD4 80 FE 00 3C */ lwz r7, 0x3c(r30) -/* 80178D78 00175CD8 D0 21 01 0C */ stfs f1, 0x10c(r1) -/* 80178D7C 00175CDC 90 FF 04 90 */ stw r7, 0x490(r31) -/* 80178D80 00175CE0 80 FE 00 40 */ lwz r7, 0x40(r30) -/* 80178D84 00175CE4 D0 21 01 10 */ stfs f1, 0x110(r1) -/* 80178D88 00175CE8 90 FF 04 94 */ stw r7, 0x494(r31) -/* 80178D8C 00175CEC 91 1F 04 98 */ stw r8, 0x498(r31) -/* 80178D90 00175CF0 98 DF 04 9C */ stb r6, 0x49c(r31) -/* 80178D94 00175CF4 D0 3F 04 A0 */ stfs f1, 0x4a0(r31) -/* 80178D98 00175CF8 D0 1F 04 A4 */ stfs f0, 0x4a4(r31) -/* 80178D9C 00175CFC D0 3F 04 A8 */ stfs f1, 0x4a8(r31) -/* 80178DA0 00175D00 D0 3F 04 AC */ stfs f1, 0x4ac(r31) -/* 80178DA4 00175D04 98 9F 04 B0 */ stb r4, 0x4b0(r31) -/* 80178DA8 00175D08 91 5F 04 B4 */ stw r10, 0x4b4(r31) -/* 80178DAC 00175D0C D0 3F 04 B8 */ stfs f1, 0x4b8(r31) -/* 80178DB0 00175D10 D0 3F 04 BC */ stfs f1, 0x4bc(r31) -/* 80178DB4 00175D14 D0 3F 04 C0 */ stfs f1, 0x4c0(r31) -/* 80178DB8 00175D18 D0 3F 04 C4 */ stfs f1, 0x4c4(r31) -/* 80178DBC 00175D1C D0 3F 04 C8 */ stfs f1, 0x4c8(r31) -/* 80178DC0 00175D20 D0 3F 04 CC */ stfs f1, 0x4cc(r31) -/* 80178DC4 00175D24 D0 3F 04 D0 */ stfs f1, 0x4d0(r31) -/* 80178DC8 00175D28 D0 3F 04 D4 */ stfs f1, 0x4d4(r31) -/* 80178DCC 00175D2C D0 3F 04 D8 */ stfs f1, 0x4d8(r31) -/* 80178DD0 00175D30 D0 3F 04 DC */ stfs f1, 0x4dc(r31) -/* 80178DD4 00175D34 D0 3F 04 E0 */ stfs f1, 0x4e0(r31) -/* 80178DD8 00175D38 D0 3F 04 E4 */ stfs f1, 0x4e4(r31) -/* 80178DDC 00175D3C 80 DE 00 10 */ lwz r6, 0x10(r30) -/* 80178DE0 00175D40 90 01 00 AC */ stw r0, 0xac(r1) -/* 80178DE4 00175D44 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) -/* 80178DE8 00175D48 90 C1 00 B0 */ stw r6, 0xb0(r1) -/* 80178DEC 00175D4C 81 84 00 00 */ lwz r12, 0(r4) -/* 80178DF0 00175D50 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 80178DF4 00175D54 7D 89 03 A6 */ mtctr r12 -/* 80178DF8 00175D58 4E 80 04 21 */ bctrl -/* 80178DFC 00175D5C 3B 1F 04 E8 */ addi r24, r31, 0x4e8 -/* 80178E00 00175D60 38 81 00 A4 */ addi r4, r1, 0xa4 -/* 80178E04 00175D64 7F 03 C3 78 */ mr r3, r24 -/* 80178E08 00175D68 48 1C 80 A1 */ bl __ct__6CTokenFRC6CToken -/* 80178E0C 00175D6C 38 00 00 00 */ li r0, 0 -/* 80178E10 00175D70 38 61 00 A4 */ addi r3, r1, 0xa4 -/* 80178E14 00175D74 90 18 00 08 */ stw r0, 8(r24) -/* 80178E18 00175D78 38 80 FF FF */ li r4, -1 -/* 80178E1C 00175D7C 48 1C 80 25 */ bl __dt__6CTokenFv -/* 80178E20 00175D80 80 DE 00 14 */ lwz r6, 0x14(r30) -/* 80178E24 00175D84 3C 60 54 58 */ lis r3, 0x54585452@ha -/* 80178E28 00175D88 38 03 54 52 */ addi r0, r3, 0x54585452@l -/* 80178E2C 00175D8C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) -/* 80178E30 00175D90 90 01 00 9C */ stw r0, 0x9c(r1) -/* 80178E34 00175D94 38 61 00 94 */ addi r3, r1, 0x94 -/* 80178E38 00175D98 38 A1 00 9C */ addi r5, r1, 0x9c -/* 80178E3C 00175D9C 90 C1 00 A0 */ stw r6, 0xa0(r1) -/* 80178E40 00175DA0 81 84 00 00 */ lwz r12, 0(r4) -/* 80178E44 00175DA4 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 80178E48 00175DA8 7D 89 03 A6 */ mtctr r12 -/* 80178E4C 00175DAC 4E 80 04 21 */ bctrl -/* 80178E50 00175DB0 3B 1F 04 F4 */ addi r24, r31, 0x4f4 -/* 80178E54 00175DB4 38 81 00 94 */ addi r4, r1, 0x94 -/* 80178E58 00175DB8 7F 03 C3 78 */ mr r3, r24 -/* 80178E5C 00175DBC 48 1C 80 4D */ bl __ct__6CTokenFRC6CToken -/* 80178E60 00175DC0 38 00 00 00 */ li r0, 0 -/* 80178E64 00175DC4 38 61 00 94 */ addi r3, r1, 0x94 -/* 80178E68 00175DC8 90 18 00 08 */ stw r0, 8(r24) -/* 80178E6C 00175DCC 38 80 FF FF */ li r4, -1 -/* 80178E70 00175DD0 48 1C 7F D1 */ bl __dt__6CTokenFv -/* 80178E74 00175DD4 80 DE 00 08 */ lwz r6, 8(r30) -/* 80178E78 00175DD8 3C 60 50 41 */ lis r3, 0x50415254@ha -/* 80178E7C 00175DDC 38 03 52 54 */ addi r0, r3, 0x50415254@l -/* 80178E80 00175DE0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) -/* 80178E84 00175DE4 90 01 00 8C */ stw r0, 0x8c(r1) -/* 80178E88 00175DE8 38 61 00 84 */ addi r3, r1, 0x84 -/* 80178E8C 00175DEC 38 A1 00 8C */ addi r5, r1, 0x8c -/* 80178E90 00175DF0 90 C1 00 90 */ stw r6, 0x90(r1) -/* 80178E94 00175DF4 81 84 00 00 */ lwz r12, 0(r4) -/* 80178E98 00175DF8 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 80178E9C 00175DFC 7D 89 03 A6 */ mtctr r12 -/* 80178EA0 00175E00 4E 80 04 21 */ bctrl -/* 80178EA4 00175E04 3B 1F 05 00 */ addi r24, r31, 0x500 -/* 80178EA8 00175E08 38 81 00 84 */ addi r4, r1, 0x84 -/* 80178EAC 00175E0C 7F 03 C3 78 */ mr r3, r24 -/* 80178EB0 00175E10 48 1C 7F F9 */ bl __ct__6CTokenFRC6CToken -/* 80178EB4 00175E14 7F 03 C3 78 */ mr r3, r24 -/* 80178EB8 00175E18 48 1C 7F 55 */ bl GetObj__6CTokenFv -/* 80178EBC 00175E1C 80 03 00 04 */ lwz r0, 4(r3) -/* 80178EC0 00175E20 38 61 00 84 */ addi r3, r1, 0x84 -/* 80178EC4 00175E24 38 80 FF FF */ li r4, -1 -/* 80178EC8 00175E28 90 18 00 08 */ stw r0, 8(r24) -/* 80178ECC 00175E2C 48 1C 7F 75 */ bl __dt__6CTokenFv -/* 80178ED0 00175E30 80 DE 00 0C */ lwz r6, 0xc(r30) -/* 80178ED4 00175E34 3C 60 50 41 */ lis r3, 0x50415254@ha -/* 80178ED8 00175E38 38 03 52 54 */ addi r0, r3, 0x50415254@l -/* 80178EDC 00175E3C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) -/* 80178EE0 00175E40 90 01 00 7C */ stw r0, 0x7c(r1) -/* 80178EE4 00175E44 38 61 00 74 */ addi r3, r1, 0x74 -/* 80178EE8 00175E48 38 A1 00 7C */ addi r5, r1, 0x7c -/* 80178EEC 00175E4C 90 C1 00 80 */ stw r6, 0x80(r1) -/* 80178EF0 00175E50 81 84 00 00 */ lwz r12, 0(r4) -/* 80178EF4 00175E54 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 80178EF8 00175E58 7D 89 03 A6 */ mtctr r12 -/* 80178EFC 00175E5C 4E 80 04 21 */ bctrl -/* 80178F00 00175E60 3B 1F 05 0C */ addi r24, r31, 0x50c -/* 80178F04 00175E64 38 81 00 74 */ addi r4, r1, 0x74 -/* 80178F08 00175E68 7F 03 C3 78 */ mr r3, r24 -/* 80178F0C 00175E6C 48 1C 7F 9D */ bl __ct__6CTokenFRC6CToken -/* 80178F10 00175E70 7F 03 C3 78 */ mr r3, r24 -/* 80178F14 00175E74 48 1C 7E F9 */ bl GetObj__6CTokenFv -/* 80178F18 00175E78 80 03 00 04 */ lwz r0, 4(r3) -/* 80178F1C 00175E7C 38 61 00 74 */ addi r3, r1, 0x74 -/* 80178F20 00175E80 38 80 FF FF */ li r4, -1 -/* 80178F24 00175E84 90 18 00 08 */ stw r0, 8(r24) -/* 80178F28 00175E88 48 1C 7F 19 */ bl __dt__6CTokenFv -/* 80178F2C 00175E8C 3C 60 80 3D */ lis r3, lbl_803D0668@ha -/* 80178F30 00175E90 3B 20 00 00 */ li r25, 0 -/* 80178F34 00175E94 38 83 06 68 */ addi r4, r3, lbl_803D0668@l -/* 80178F38 00175E98 38 A0 00 00 */ li r5, 0 -/* 80178F3C 00175E9C 38 60 03 40 */ li r3, 0x340 -/* 80178F40 00175EA0 48 19 C9 2D */ bl __nw__FUlPCcPCc -/* 80178F44 00175EA4 7C 78 1B 79 */ or. r24, r3, r3 -/* 80178F48 00175EA8 41 82 00 2C */ beq lbl_80178F74 -/* 80178F4C 00175EAC 38 61 00 6C */ addi r3, r1, 0x6c -/* 80178F50 00175EB0 38 9F 05 00 */ addi r4, r31, 0x500 -/* 80178F54 00175EB4 48 1C 7F 55 */ bl __ct__6CTokenFRC6CToken -/* 80178F58 00175EB8 7F 03 C3 78 */ mr r3, r24 -/* 80178F5C 00175EBC 38 81 00 6C */ addi r4, r1, 0x6c -/* 80178F60 00175EC0 3B 20 00 01 */ li r25, 1 -/* 80178F64 00175EC4 38 A0 00 01 */ li r5, 1 -/* 80178F68 00175EC8 38 C0 00 01 */ li r6, 1 -/* 80178F6C 00175ECC 48 1A 64 75 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" -/* 80178F70 00175ED0 7C 78 1B 78 */ mr r24, r3 -lbl_80178F74: -/* 80178F74 00175ED4 7F 20 07 75 */ extsb. r0, r25 -/* 80178F78 00175ED8 93 1F 05 18 */ stw r24, 0x518(r31) -/* 80178F7C 00175EDC 41 82 00 10 */ beq lbl_80178F8C -/* 80178F80 00175EE0 38 61 00 6C */ addi r3, r1, 0x6c -/* 80178F84 00175EE4 38 80 00 00 */ li r4, 0 -/* 80178F88 00175EE8 48 1C 7E B9 */ bl __dt__6CTokenFv -lbl_80178F8C: -/* 80178F8C 00175EEC 3C 60 80 3D */ lis r3, lbl_803D0668@ha -/* 80178F90 00175EF0 3B 20 00 00 */ li r25, 0 -/* 80178F94 00175EF4 38 83 06 68 */ addi r4, r3, lbl_803D0668@l -/* 80178F98 00175EF8 38 A0 00 00 */ li r5, 0 -/* 80178F9C 00175EFC 38 60 03 40 */ li r3, 0x340 -/* 80178FA0 00175F00 48 19 C8 CD */ bl __nw__FUlPCcPCc -/* 80178FA4 00175F04 7C 78 1B 79 */ or. r24, r3, r3 -/* 80178FA8 00175F08 41 82 00 2C */ beq lbl_80178FD4 -/* 80178FAC 00175F0C 38 61 00 64 */ addi r3, r1, 0x64 -/* 80178FB0 00175F10 38 9F 05 0C */ addi r4, r31, 0x50c -/* 80178FB4 00175F14 48 1C 7E F5 */ bl __ct__6CTokenFRC6CToken -/* 80178FB8 00175F18 7F 03 C3 78 */ mr r3, r24 -/* 80178FBC 00175F1C 38 81 00 64 */ addi r4, r1, 0x64 -/* 80178FC0 00175F20 3B 20 00 01 */ li r25, 1 -/* 80178FC4 00175F24 38 A0 00 00 */ li r5, 0 -/* 80178FC8 00175F28 38 C0 00 01 */ li r6, 1 -/* 80178FCC 00175F2C 48 1A 64 15 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" -/* 80178FD0 00175F30 7C 78 1B 78 */ mr r24, r3 -lbl_80178FD4: -/* 80178FD4 00175F34 7F 20 07 75 */ extsb. r0, r25 -/* 80178FD8 00175F38 93 1F 05 1C */ stw r24, 0x51c(r31) -/* 80178FDC 00175F3C 41 82 00 10 */ beq lbl_80178FEC -/* 80178FE0 00175F40 38 61 00 64 */ addi r3, r1, 0x64 -/* 80178FE4 00175F44 38 80 00 00 */ li r4, 0 -/* 80178FE8 00175F48 48 1C 7E 59 */ bl __dt__6CTokenFv -lbl_80178FEC: -/* 80178FEC 00175F4C 38 60 00 00 */ li r3, 0 -/* 80178FF0 00175F50 3B 60 00 00 */ li r27, 0 -/* 80178FF4 00175F54 90 7F 05 20 */ stw r3, 0x520(r31) -/* 80178FF8 00175F58 3B 40 00 00 */ li r26, 0 -/* 80178FFC 00175F5C 3B 20 00 00 */ li r25, 0 -/* 80179000 00175F60 3B 00 00 00 */ li r24, 0 -/* 80179004 00175F64 80 1D 00 04 */ lwz r0, 4(r29) -/* 80179008 00175F68 90 1F 05 24 */ stw r0, 0x524(r31) -/* 8017900C 00175F6C 80 1D 00 08 */ lwz r0, 8(r29) -/* 80179010 00175F70 90 1F 05 28 */ stw r0, 0x528(r31) -/* 80179014 00175F74 80 9D 00 0C */ lwz r4, 0xc(r29) -/* 80179018 00175F78 3C 04 00 01 */ addis r0, r4, 1 -/* 8017901C 00175F7C 28 00 FF FF */ cmplwi r0, 0xffff -/* 80179020 00175F80 41 82 00 68 */ beq lbl_80179088 -/* 80179024 00175F84 3C 60 45 4C */ lis r3, 0x454C5343@ha -/* 80179028 00175F88 90 81 00 60 */ stw r4, 0x60(r1) -/* 8017902C 00175F8C 38 03 53 43 */ addi r0, r3, 0x454C5343@l -/* 80179030 00175F90 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) -/* 80179034 00175F94 90 01 00 5C */ stw r0, 0x5c(r1) -/* 80179038 00175F98 38 61 00 54 */ addi r3, r1, 0x54 -/* 8017903C 00175F9C 38 A1 00 5C */ addi r5, r1, 0x5c -/* 80179040 00175FA0 81 84 00 00 */ lwz r12, 0(r4) -/* 80179044 00175FA4 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 80179048 00175FA8 7D 89 03 A6 */ mtctr r12 -/* 8017904C 00175FAC 4E 80 04 21 */ bctrl -/* 80179050 00175FB0 38 61 00 4C */ addi r3, r1, 0x4c -/* 80179054 00175FB4 38 81 00 54 */ addi r4, r1, 0x54 -/* 80179058 00175FB8 3B 60 00 01 */ li r27, 1 -/* 8017905C 00175FBC 48 1C 7E 4D */ bl __ct__6CTokenFRC6CToken -/* 80179060 00175FC0 38 00 00 01 */ li r0, 1 -/* 80179064 00175FC4 34 61 00 F0 */ addic. r3, r1, 0xf0 -/* 80179068 00175FC8 98 01 00 F8 */ stb r0, 0xf8(r1) -/* 8017906C 00175FCC 3B 40 00 01 */ li r26, 1 -/* 80179070 00175FD0 41 82 00 0C */ beq lbl_8017907C -/* 80179074 00175FD4 38 81 00 4C */ addi r4, r1, 0x4c -/* 80179078 00175FD8 48 1C 7E 31 */ bl __ct__6CTokenFRC6CToken -lbl_8017907C: -/* 8017907C 00175FDC 38 81 00 F0 */ addi r4, r1, 0xf0 -/* 80179080 00175FE0 3B 20 00 01 */ li r25, 1 -/* 80179084 00175FE4 48 00 00 10 */ b lbl_80179094 -lbl_80179088: -/* 80179088 00175FE8 98 61 00 EC */ stb r3, 0xec(r1) -/* 8017908C 00175FEC 38 81 00 E4 */ addi r4, r1, 0xe4 -/* 80179090 00175FF0 3B 00 00 01 */ li r24, 1 -lbl_80179094: -/* 80179094 00175FF4 88 04 00 08 */ lbz r0, 8(r4) -/* 80179098 00175FF8 98 1F 05 34 */ stb r0, 0x534(r31) -/* 8017909C 00175FFC 88 04 00 08 */ lbz r0, 8(r4) -/* 801790A0 00176000 28 00 00 00 */ cmplwi r0, 0 -/* 801790A4 00176004 41 82 00 10 */ beq lbl_801790B4 -/* 801790A8 00176008 34 7F 05 2C */ addic. r3, r31, 0x52c -/* 801790AC 0017600C 41 82 00 08 */ beq lbl_801790B4 -/* 801790B0 00176010 48 1C 7D F9 */ bl __ct__6CTokenFRC6CToken -lbl_801790B4: -/* 801790B4 00176014 7F 00 07 75 */ extsb. r0, r24 -/* 801790B8 00176018 41 82 00 28 */ beq lbl_801790E0 -/* 801790BC 0017601C 88 01 00 EC */ lbz r0, 0xec(r1) -/* 801790C0 00176020 28 00 00 00 */ cmplwi r0, 0 -/* 801790C4 00176024 41 82 00 14 */ beq lbl_801790D8 -/* 801790C8 00176028 34 61 00 E4 */ addic. r3, r1, 0xe4 -/* 801790CC 0017602C 41 82 00 0C */ beq lbl_801790D8 -/* 801790D0 00176030 38 80 00 00 */ li r4, 0 -/* 801790D4 00176034 48 1C 7D 6D */ bl __dt__6CTokenFv -lbl_801790D8: -/* 801790D8 00176038 38 00 00 00 */ li r0, 0 -/* 801790DC 0017603C 98 01 00 EC */ stb r0, 0xec(r1) -lbl_801790E0: -/* 801790E0 00176040 7F 20 07 75 */ extsb. r0, r25 -/* 801790E4 00176044 41 82 00 28 */ beq lbl_8017910C -/* 801790E8 00176048 88 01 00 F8 */ lbz r0, 0xf8(r1) -/* 801790EC 0017604C 28 00 00 00 */ cmplwi r0, 0 -/* 801790F0 00176050 41 82 00 14 */ beq lbl_80179104 -/* 801790F4 00176054 34 61 00 F0 */ addic. r3, r1, 0xf0 -/* 801790F8 00176058 41 82 00 0C */ beq lbl_80179104 -/* 801790FC 0017605C 38 80 00 00 */ li r4, 0 -/* 80179100 00176060 48 1C 7D 41 */ bl __dt__6CTokenFv -lbl_80179104: -/* 80179104 00176064 38 00 00 00 */ li r0, 0 -/* 80179108 00176068 98 01 00 F8 */ stb r0, 0xf8(r1) -lbl_8017910C: -/* 8017910C 0017606C 7F 40 07 75 */ extsb. r0, r26 -/* 80179110 00176070 41 82 00 10 */ beq lbl_80179120 -/* 80179114 00176074 38 61 00 4C */ addi r3, r1, 0x4c -/* 80179118 00176078 38 80 00 00 */ li r4, 0 -/* 8017911C 0017607C 48 1C 7D 25 */ bl __dt__6CTokenFv -lbl_80179120: -/* 80179120 00176080 7F 60 07 75 */ extsb. r0, r27 -/* 80179124 00176084 41 82 00 10 */ beq lbl_80179134 -/* 80179128 00176088 38 61 00 54 */ addi r3, r1, 0x54 -/* 8017912C 0017608C 38 80 FF FF */ li r4, -1 -/* 80179130 00176090 48 1C 7D 11 */ bl __dt__6CTokenFv -lbl_80179134: -/* 80179134 00176094 80 9D 00 10 */ lwz r4, 0x10(r29) -/* 80179138 00176098 3B 00 00 00 */ li r24, 0 -/* 8017913C 0017609C 3B 20 00 00 */ li r25, 0 -/* 80179140 001760A0 3B 40 00 00 */ li r26, 0 -/* 80179144 001760A4 3C 04 00 01 */ addis r0, r4, 1 -/* 80179148 001760A8 3B 60 00 00 */ li r27, 0 -/* 8017914C 001760AC 28 00 FF FF */ cmplwi r0, 0xffff -/* 80179150 001760B0 41 82 00 68 */ beq lbl_801791B8 -/* 80179154 001760B4 3C 60 50 41 */ lis r3, 0x50415254@ha -/* 80179158 001760B8 90 81 00 48 */ stw r4, 0x48(r1) -/* 8017915C 001760BC 38 03 52 54 */ addi r0, r3, 0x50415254@l -/* 80179160 001760C0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) -/* 80179164 001760C4 90 01 00 44 */ stw r0, 0x44(r1) -/* 80179168 001760C8 38 61 00 3C */ addi r3, r1, 0x3c -/* 8017916C 001760CC 38 A1 00 44 */ addi r5, r1, 0x44 -/* 80179170 001760D0 81 84 00 00 */ lwz r12, 0(r4) -/* 80179174 001760D4 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 80179178 001760D8 7D 89 03 A6 */ mtctr r12 -/* 8017917C 001760DC 4E 80 04 21 */ bctrl -/* 80179180 001760E0 38 61 00 34 */ addi r3, r1, 0x34 -/* 80179184 001760E4 38 81 00 3C */ addi r4, r1, 0x3c -/* 80179188 001760E8 3B 00 00 01 */ li r24, 1 -/* 8017918C 001760EC 48 1C 7D 1D */ bl __ct__6CTokenFRC6CToken -/* 80179190 001760F0 38 00 00 01 */ li r0, 1 -/* 80179194 001760F4 34 61 00 D8 */ addic. r3, r1, 0xd8 -/* 80179198 001760F8 98 01 00 E0 */ stb r0, 0xe0(r1) -/* 8017919C 001760FC 3B 20 00 01 */ li r25, 1 -/* 801791A0 00176100 41 82 00 0C */ beq lbl_801791AC -/* 801791A4 00176104 38 81 00 34 */ addi r4, r1, 0x34 -/* 801791A8 00176108 48 1C 7D 01 */ bl __ct__6CTokenFRC6CToken -lbl_801791AC: -/* 801791AC 0017610C 38 81 00 D8 */ addi r4, r1, 0xd8 -/* 801791B0 00176110 3B 40 00 01 */ li r26, 1 -/* 801791B4 00176114 48 00 00 14 */ b lbl_801791C8 -lbl_801791B8: -/* 801791B8 00176118 38 00 00 00 */ li r0, 0 -/* 801791BC 0017611C 38 81 00 CC */ addi r4, r1, 0xcc -/* 801791C0 00176120 98 01 00 D4 */ stb r0, 0xd4(r1) -/* 801791C4 00176124 3B 60 00 01 */ li r27, 1 -lbl_801791C8: -/* 801791C8 00176128 88 04 00 08 */ lbz r0, 8(r4) -/* 801791CC 0017612C 98 1F 05 40 */ stb r0, 0x540(r31) -/* 801791D0 00176130 88 04 00 08 */ lbz r0, 8(r4) -/* 801791D4 00176134 28 00 00 00 */ cmplwi r0, 0 -/* 801791D8 00176138 41 82 00 10 */ beq lbl_801791E8 -/* 801791DC 0017613C 34 7F 05 38 */ addic. r3, r31, 0x538 -/* 801791E0 00176140 41 82 00 08 */ beq lbl_801791E8 -/* 801791E4 00176144 48 1C 7C C5 */ bl __ct__6CTokenFRC6CToken -lbl_801791E8: -/* 801791E8 00176148 7F 60 07 75 */ extsb. r0, r27 -/* 801791EC 0017614C 41 82 00 28 */ beq lbl_80179214 -/* 801791F0 00176150 88 01 00 D4 */ lbz r0, 0xd4(r1) -/* 801791F4 00176154 28 00 00 00 */ cmplwi r0, 0 -/* 801791F8 00176158 41 82 00 14 */ beq lbl_8017920C -/* 801791FC 0017615C 34 61 00 CC */ addic. r3, r1, 0xcc -/* 80179200 00176160 41 82 00 0C */ beq lbl_8017920C -/* 80179204 00176164 38 80 00 00 */ li r4, 0 -/* 80179208 00176168 48 1C 7C 39 */ bl __dt__6CTokenFv -lbl_8017920C: -/* 8017920C 0017616C 38 00 00 00 */ li r0, 0 -/* 80179210 00176170 98 01 00 D4 */ stb r0, 0xd4(r1) -lbl_80179214: -/* 80179214 00176174 7F 40 07 75 */ extsb. r0, r26 -/* 80179218 00176178 41 82 00 28 */ beq lbl_80179240 -/* 8017921C 0017617C 88 01 00 E0 */ lbz r0, 0xe0(r1) -/* 80179220 00176180 28 00 00 00 */ cmplwi r0, 0 -/* 80179224 00176184 41 82 00 14 */ beq lbl_80179238 -/* 80179228 00176188 34 61 00 D8 */ addic. r3, r1, 0xd8 -/* 8017922C 0017618C 41 82 00 0C */ beq lbl_80179238 -/* 80179230 00176190 38 80 00 00 */ li r4, 0 -/* 80179234 00176194 48 1C 7C 0D */ bl __dt__6CTokenFv -lbl_80179238: -/* 80179238 00176198 38 00 00 00 */ li r0, 0 -/* 8017923C 0017619C 98 01 00 E0 */ stb r0, 0xe0(r1) -lbl_80179240: -/* 80179240 001761A0 7F 20 07 75 */ extsb. r0, r25 -/* 80179244 001761A4 41 82 00 10 */ beq lbl_80179254 -/* 80179248 001761A8 38 61 00 34 */ addi r3, r1, 0x34 -/* 8017924C 001761AC 38 80 00 00 */ li r4, 0 -/* 80179250 001761B0 48 1C 7B F1 */ bl __dt__6CTokenFv -lbl_80179254: -/* 80179254 001761B4 7F 00 07 75 */ extsb. r0, r24 -/* 80179258 001761B8 41 82 00 10 */ beq lbl_80179268 -/* 8017925C 001761BC 38 61 00 3C */ addi r3, r1, 0x3c -/* 80179260 001761C0 38 80 FF FF */ li r4, -1 -/* 80179264 001761C4 48 1C 7B DD */ bl __dt__6CTokenFv -lbl_80179268: -/* 80179268 001761C8 80 1D 00 14 */ lwz r0, 0x14(r29) -/* 8017926C 001761CC 54 03 04 3E */ clrlwi r3, r0, 0x10 -/* 80179270 001761D0 48 16 F7 41 */ bl TranslateSFXID__11CSfxManagerFUs -/* 80179274 001761D4 B0 7F 05 44 */ sth r3, 0x544(r31) -/* 80179278 001761D8 80 1D 00 18 */ lwz r0, 0x18(r29) -/* 8017927C 001761DC 54 03 04 3E */ clrlwi r3, r0, 0x10 -/* 80179280 001761E0 48 16 F7 31 */ bl TranslateSFXID__11CSfxManagerFUs -/* 80179284 001761E4 B0 7F 05 46 */ sth r3, 0x546(r31) -/* 80179288 001761E8 38 A0 00 00 */ li r5, 0 -/* 8017928C 001761EC 38 80 00 01 */ li r4, 1 -/* 80179290 001761F0 38 7F 04 E8 */ addi r3, r31, 0x4e8 -/* 80179294 001761F4 88 1F 05 48 */ lbz r0, 0x548(r31) -/* 80179298 001761F8 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 -/* 8017929C 001761FC 98 1F 05 48 */ stb r0, 0x548(r31) -/* 801792A0 00176200 88 1F 05 48 */ lbz r0, 0x548(r31) -/* 801792A4 00176204 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 -/* 801792A8 00176208 98 1F 05 48 */ stb r0, 0x548(r31) -/* 801792AC 0017620C 88 1F 05 48 */ lbz r0, 0x548(r31) -/* 801792B0 00176210 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a -/* 801792B4 00176214 98 1F 05 48 */ stb r0, 0x548(r31) -/* 801792B8 00176218 88 1F 05 48 */ lbz r0, 0x548(r31) -/* 801792BC 0017621C 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b -/* 801792C0 00176220 98 1F 05 48 */ stb r0, 0x548(r31) -/* 801792C4 00176224 88 1F 05 48 */ lbz r0, 0x548(r31) -/* 801792C8 00176228 53 80 1F 38 */ rlwimi r0, r28, 3, 0x1c, 0x1c -/* 801792CC 0017622C 98 1F 05 48 */ stb r0, 0x548(r31) -/* 801792D0 00176230 88 1F 05 48 */ lbz r0, 0x548(r31) -/* 801792D4 00176234 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d -/* 801792D8 00176238 98 1F 05 48 */ stb r0, 0x548(r31) -/* 801792DC 0017623C 48 1C 7A A9 */ bl Lock__6CTokenFv -/* 801792E0 00176240 38 7F 04 F4 */ addi r3, r31, 0x4f4 -/* 801792E4 00176244 48 1C 7A A1 */ bl Lock__6CTokenFv -/* 801792E8 00176248 C0 1E 00 30 */ lfs f0, 0x30(r30) -/* 801792EC 0017624C 38 81 00 C0 */ addi r4, r1, 0xc0 -/* 801792F0 00176250 D0 01 00 C0 */ stfs f0, 0xc0(r1) -/* 801792F4 00176254 D0 01 00 C4 */ stfs f0, 0xc4(r1) -/* 801792F8 00176258 D0 01 00 C8 */ stfs f0, 0xc8(r1) -/* 801792FC 0017625C 80 7F 05 18 */ lwz r3, 0x518(r31) -/* 80179300 00176260 81 83 00 00 */ lwz r12, 0(r3) -/* 80179304 00176264 81 8C 00 24 */ lwz r12, 0x24(r12) -/* 80179308 00176268 7D 89 03 A6 */ mtctr r12 -/* 8017930C 0017626C 4E 80 04 21 */ bctrl -/* 80179310 00176270 C0 1E 00 34 */ lfs f0, 0x34(r30) -/* 80179314 00176274 38 81 00 B4 */ addi r4, r1, 0xb4 -/* 80179318 00176278 D0 01 00 B4 */ stfs f0, 0xb4(r1) -/* 8017931C 0017627C D0 01 00 B8 */ stfs f0, 0xb8(r1) -/* 80179320 00176280 D0 01 00 BC */ stfs f0, 0xbc(r1) -/* 80179324 00176284 80 7F 05 1C */ lwz r3, 0x51c(r31) -/* 80179328 00176288 81 83 00 00 */ lwz r12, 0(r3) -/* 8017932C 0017628C 81 8C 00 24 */ lwz r12, 0x24(r12) -/* 80179330 00176290 7D 89 03 A6 */ mtctr r12 -/* 80179334 00176294 4E 80 04 21 */ bctrl -/* 80179338 00176298 80 7F 05 18 */ lwz r3, 0x518(r31) -/* 8017933C 0017629C 38 80 00 00 */ li r4, 0 -/* 80179340 001762A0 81 83 00 00 */ lwz r12, 0(r3) -/* 80179344 001762A4 81 8C 00 2C */ lwz r12, 0x2c(r12) -/* 80179348 001762A8 7D 89 03 A6 */ mtctr r12 -/* 8017934C 001762AC 4E 80 04 21 */ bctrl -/* 80179350 001762B0 80 7F 05 1C */ lwz r3, 0x51c(r31) -/* 80179354 001762B4 38 80 00 00 */ li r4, 0 -/* 80179358 001762B8 81 83 00 00 */ lwz r12, 0(r3) -/* 8017935C 001762BC 81 8C 00 2C */ lwz r12, 0x2c(r12) -/* 80179360 001762C0 7D 89 03 A6 */ mtctr r12 -/* 80179364 001762C4 4E 80 04 21 */ bctrl -/* 80179368 001762C8 7F E3 FB 78 */ mr r3, r31 -/* 8017936C 001762CC BB 01 01 20 */ lmw r24, 0x120(r1) -/* 80179370 001762D0 80 01 01 44 */ lwz r0, 0x144(r1) -/* 80179374 001762D4 7C 08 03 A6 */ mtlr r0 -/* 80179378 001762D8 38 21 01 40 */ addi r1, r1, 0x140 -/* 8017937C 001762DC 4E 80 00 20 */ blr - -.global __sinit_CPlasmaProjectile_cpp -__sinit_CPlasmaProjectile_cpp: -/* 80179380 001762E0 C0 02 A1 E8 */ lfs f0, lbl_805ABF08@sda21(r2) -/* 80179384 001762E4 D0 0D A4 38 */ stfs f0, lbl_805A8FF8@sda21(r13) -/* 80179388 001762E8 4E 80 00 20 */ blr - -.global UpdateGrappleArmTransform__7CPlayerFRC9CVector3fR13CStateManagerf -UpdateGrappleArmTransform__7CPlayerFRC9CVector3fR13CStateManagerf: -/* 8017938C 001762EC 94 21 FE 60 */ stwu r1, -0x1a0(r1) -/* 80179390 001762F0 7C 08 02 A6 */ mflr r0 -/* 80179394 001762F4 90 01 01 A4 */ stw r0, 0x1a4(r1) -/* 80179398 001762F8 DB E1 01 90 */ stfd f31, 0x190(r1) -/* 8017939C 001762FC F3 E1 01 98 */ psq_st f31, 408(r1), 0, qr0 -/* 801793A0 00176300 DB C1 01 80 */ stfd f30, 0x180(r1) -/* 801793A4 00176304 F3 C1 01 88 */ psq_st f30, 392(r1), 0, qr0 -/* 801793A8 00176308 DB A1 01 70 */ stfd f29, 0x170(r1) -/* 801793AC 0017630C F3 A1 01 78 */ psq_st f29, 376(r1), 0, qr0 -/* 801793B0 00176310 93 E1 01 6C */ stw r31, 0x16c(r1) -/* 801793B4 00176314 93 C1 01 68 */ stw r30, 0x168(r1) -/* 801793B8 00176318 93 A1 01 64 */ stw r29, 0x164(r1) -/* 801793BC 0017631C 7C 7F 1B 78 */ mr r31, r3 -/* 801793C0 00176320 7C 9D 23 78 */ mr r29, r4 -/* 801793C4 00176324 7C BE 2B 78 */ mr r30, r5 -/* 801793C8 00176328 38 61 01 2C */ addi r3, r1, 0x12c -/* 801793CC 0017632C 38 9F 00 34 */ addi r4, r31, 0x34 -/* 801793D0 00176330 48 19 97 A5 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 801793D4 00176334 C3 FF 00 60 */ lfs f31, 0x60(r31) -/* 801793D8 00176338 7F A5 EB 78 */ mr r5, r29 -/* 801793DC 0017633C C3 DF 00 50 */ lfs f30, 0x50(r31) -/* 801793E0 00176340 38 61 00 5C */ addi r3, r1, 0x5c -/* 801793E4 00176344 C3 BF 00 40 */ lfs f29, 0x40(r31) -/* 801793E8 00176348 38 9F 00 34 */ addi r4, r31, 0x34 -/* 801793EC 0017634C 48 19 96 95 */ bl Rotate__12CTransform4fCFRC9CVector3f -/* 801793F0 00176350 C0 41 00 5C */ lfs f2, 0x5c(r1) -/* 801793F4 00176354 C0 21 00 60 */ lfs f1, 0x60(r1) -/* 801793F8 00176358 C0 01 00 64 */ lfs f0, 0x64(r1) -/* 801793FC 0017635C EF A2 E8 2A */ fadds f29, f2, f29 -/* 80179400 00176360 EF C1 F0 2A */ fadds f30, f1, f30 -/* 80179404 00176364 EF E0 F8 2A */ fadds f31, f0, f31 -/* 80179408 00176368 D3 A1 01 38 */ stfs f29, 0x138(r1) -/* 8017940C 0017636C D3 C1 01 48 */ stfs f30, 0x148(r1) -/* 80179410 00176370 D3 E1 01 58 */ stfs f31, 0x158(r1) -/* 80179414 00176374 80 1F 02 F8 */ lwz r0, 0x2f8(r31) -/* 80179418 00176378 2C 00 00 00 */ cmpwi r0, 0 -/* 8017941C 0017637C 41 82 00 1C */ beq lbl_80179438 -/* 80179420 00176380 80 7F 04 90 */ lwz r3, 0x490(r31) -/* 80179424 00176384 38 81 01 2C */ addi r4, r1, 0x12c -/* 80179428 00176388 80 63 07 40 */ lwz r3, 0x740(r3) -/* 8017942C 0017638C 38 63 02 20 */ addi r3, r3, 0x220 -/* 80179430 00176390 48 19 97 11 */ bl __as__12CTransform4fFRC12CTransform4f -/* 80179434 00176394 48 00 02 44 */ b lbl_80179678 -lbl_80179438: -/* 80179438 00176398 80 7F 04 90 */ lwz r3, 0x490(r31) -/* 8017943C 0017639C 80 83 07 40 */ lwz r4, 0x740(r3) -/* 80179440 001763A0 88 04 03 B2 */ lbz r0, 0x3b2(r4) -/* 80179444 001763A4 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f -/* 80179448 001763A8 40 82 02 30 */ bne lbl_80179678 -/* 8017944C 001763AC C0 5F 00 58 */ lfs f2, 0x58(r31) -/* 80179450 001763B0 38 61 00 FC */ addi r3, r1, 0xfc -/* 80179454 001763B4 C0 3F 00 48 */ lfs f1, 0x48(r31) -/* 80179458 001763B8 38 84 02 20 */ addi r4, r4, 0x220 -/* 8017945C 001763BC C0 1F 00 38 */ lfs f0, 0x38(r31) -/* 80179460 001763C0 D0 01 00 90 */ stfs f0, 0x90(r1) -/* 80179464 001763C4 D0 21 00 94 */ stfs f1, 0x94(r1) -/* 80179468 001763C8 D0 41 00 98 */ stfs f2, 0x98(r1) -/* 8017946C 001763CC 48 19 97 09 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80179470 001763D0 C0 41 01 20 */ lfs f2, 0x120(r1) -/* 80179474 001763D4 38 61 00 90 */ addi r3, r1, 0x90 -/* 80179478 001763D8 C0 21 01 00 */ lfs f1, 0x100(r1) -/* 8017947C 001763DC C0 01 01 10 */ lfs f0, 0x110(r1) -/* 80179480 001763E0 D0 21 00 84 */ stfs f1, 0x84(r1) -/* 80179484 001763E4 D0 01 00 88 */ stfs f0, 0x88(r1) -/* 80179488 001763E8 D0 41 00 8C */ stfs f2, 0x8c(r1) -/* 8017948C 001763EC 48 19 B2 6D */ bl CanBeNormalized__9CVector3fCFv -/* 80179490 001763F0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80179494 001763F4 41 82 01 E4 */ beq lbl_80179678 -/* 80179498 001763F8 38 61 00 90 */ addi r3, r1, 0x90 -/* 8017949C 001763FC 48 19 B4 5D */ bl Normalize__9CVector3fFv -/* 801794A0 00176400 80 1F 03 B8 */ lwz r0, 0x3b8(r31) -/* 801794A4 00176404 2C 00 00 00 */ cmpwi r0, 0 -/* 801794A8 00176408 41 82 01 88 */ beq lbl_80179630 -/* 801794AC 0017640C A0 1F 03 10 */ lhz r0, 0x310(r31) -/* 801794B0 00176410 7F C3 F3 78 */ mr r3, r30 -/* 801794B4 00176414 38 81 00 0C */ addi r4, r1, 0xc -/* 801794B8 00176418 B0 01 00 08 */ sth r0, 8(r1) -/* 801794BC 0017641C B0 01 00 0C */ sth r0, 0xc(r1) -/* 801794C0 00176420 4B ED 30 E5 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 801794C4 00176424 7C 64 1B 78 */ mr r4, r3 -/* 801794C8 00176428 38 61 00 14 */ addi r3, r1, 0x14 -/* 801794CC 0017642C 4B F3 67 C5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 801794D0 00176430 80 83 00 04 */ lwz r4, 4(r3) -/* 801794D4 00176434 28 04 00 00 */ cmplwi r4, 0 -/* 801794D8 00176438 41 82 01 58 */ beq lbl_80179630 -/* 801794DC 0017643C C0 04 00 60 */ lfs f0, 0x60(r4) -/* 801794E0 00176440 38 61 00 84 */ addi r3, r1, 0x84 -/* 801794E4 00176444 C0 44 00 50 */ lfs f2, 0x50(r4) -/* 801794E8 00176448 C0 24 00 40 */ lfs f1, 0x40(r4) -/* 801794EC 0017644C EC 60 F8 28 */ fsubs f3, f0, f31 -/* 801794F0 00176450 EC 42 F0 28 */ fsubs f2, f2, f30 -/* 801794F4 00176454 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 801794F8 00176458 EC 21 E8 28 */ fsubs f1, f1, f29 -/* 801794FC 0017645C D0 61 00 80 */ stfs f3, 0x80(r1) -/* 80179500 00176460 D0 21 00 84 */ stfs f1, 0x84(r1) -/* 80179504 00176464 D0 41 00 88 */ stfs f2, 0x88(r1) -/* 80179508 00176468 D0 61 00 8C */ stfs f3, 0x8c(r1) -/* 8017950C 0017646C D0 21 00 78 */ stfs f1, 0x78(r1) -/* 80179510 00176470 D0 41 00 7C */ stfs f2, 0x7c(r1) -/* 80179514 00176474 D0 01 00 80 */ stfs f0, 0x80(r1) -/* 80179518 00176478 48 19 B1 E1 */ bl CanBeNormalized__9CVector3fCFv -/* 8017951C 0017647C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80179520 00176480 41 82 00 0C */ beq lbl_8017952C -/* 80179524 00176484 38 61 00 84 */ addi r3, r1, 0x84 -/* 80179528 00176488 48 19 B3 D1 */ bl Normalize__9CVector3fFv -lbl_8017952C: -/* 8017952C 0017648C 38 61 00 78 */ addi r3, r1, 0x78 -/* 80179530 00176490 48 19 B1 C9 */ bl CanBeNormalized__9CVector3fCFv -/* 80179534 00176494 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80179538 00176498 41 82 00 F8 */ beq lbl_80179630 -/* 8017953C 0017649C 80 1F 03 B8 */ lwz r0, 0x3b8(r31) -/* 80179540 001764A0 2C 00 00 01 */ cmpwi r0, 1 -/* 80179544 001764A4 41 82 00 EC */ beq lbl_80179630 -/* 80179548 001764A8 C0 02 A2 34 */ lfs f0, lbl_805ABF54@sda21(r2) -/* 8017954C 001764AC 38 61 00 28 */ addi r3, r1, 0x28 -/* 80179550 001764B0 38 81 00 90 */ addi r4, r1, 0x90 -/* 80179554 001764B4 D0 01 00 10 */ stfs f0, 0x10(r1) -/* 80179558 001764B8 48 19 A8 79 */ bl __ct__11CUnitVectorFRC9CVector3f -/* 8017955C 001764BC 7C 7E 1B 78 */ mr r30, r3 -/* 80179560 001764C0 38 61 00 34 */ addi r3, r1, 0x34 -/* 80179564 001764C4 38 81 00 78 */ addi r4, r1, 0x78 -/* 80179568 001764C8 48 19 B2 E9 */ bl AsNormalized__9CVector3fCFv -/* 8017956C 001764CC 38 61 00 40 */ addi r3, r1, 0x40 -/* 80179570 001764D0 38 81 00 34 */ addi r4, r1, 0x34 -/* 80179574 001764D4 48 19 A8 5D */ bl __ct__11CUnitVectorFRC9CVector3f -/* 80179578 001764D8 7C 64 1B 78 */ mr r4, r3 -/* 8017957C 001764DC 7F C5 F3 78 */ mr r5, r30 -/* 80179580 001764E0 38 61 00 4C */ addi r3, r1, 0x4c -/* 80179584 001764E4 38 C1 00 10 */ addi r6, r1, 0x10 -/* 80179588 001764E8 48 19 81 0D */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle -/* 8017958C 001764EC C0 61 00 4C */ lfs f3, 0x4c(r1) -/* 80179590 001764F0 38 61 00 1C */ addi r3, r1, 0x1c -/* 80179594 001764F4 C0 41 00 50 */ lfs f2, 0x50(r1) -/* 80179598 001764F8 38 81 00 68 */ addi r4, r1, 0x68 -/* 8017959C 001764FC C0 21 00 54 */ lfs f1, 0x54(r1) -/* 801795A0 00176500 38 A1 00 84 */ addi r5, r1, 0x84 -/* 801795A4 00176504 C0 01 00 58 */ lfs f0, 0x58(r1) -/* 801795A8 00176508 D0 61 00 68 */ stfs f3, 0x68(r1) -/* 801795AC 0017650C D0 41 00 6C */ stfs f2, 0x6c(r1) -/* 801795B0 00176510 D0 21 00 70 */ stfs f1, 0x70(r1) -/* 801795B4 00176514 D0 01 00 74 */ stfs f0, 0x74(r1) -/* 801795B8 00176518 48 19 7C AD */ bl Transform__11CQuaternionCFRC9CVector3f -/* 801795BC 0017651C C0 41 00 1C */ lfs f2, 0x1c(r1) -/* 801795C0 00176520 C0 01 00 20 */ lfs f0, 0x20(r1) -/* 801795C4 00176524 C0 21 00 24 */ lfs f1, 0x24(r1) -/* 801795C8 00176528 D0 41 00 84 */ stfs f2, 0x84(r1) -/* 801795CC 0017652C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 801795D0 00176530 D0 01 00 88 */ stfs f0, 0x88(r1) -/* 801795D4 00176534 C0 02 A2 38 */ lfs f0, lbl_805ABF58@sda21(r2) -/* 801795D8 00176538 D0 21 00 8C */ stfs f1, 0x8c(r1) -/* 801795DC 0017653C C0 23 02 A8 */ lfs f1, 0x2a8(r3) -/* 801795E0 00176540 C0 5F 03 BC */ lfs f2, 0x3bc(r31) -/* 801795E4 00176544 EC 00 00 72 */ fmuls f0, f0, f1 -/* 801795E8 00176548 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 801795EC 0017654C 4C 41 13 82 */ cror 2, 1, 2 -/* 801795F0 00176550 40 82 00 40 */ bne lbl_80179630 -/* 801795F4 00176554 C0 02 A2 3C */ lfs f0, lbl_805ABF5C@sda21(r2) -/* 801795F8 00176558 EC 00 00 72 */ fmuls f0, f0, f1 -/* 801795FC 0017655C FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 80179600 00176560 40 80 00 30 */ bge lbl_80179630 -/* 80179604 00176564 80 9F 04 90 */ lwz r4, 0x490(r31) -/* 80179608 00176568 38 61 00 CC */ addi r3, r1, 0xcc -/* 8017960C 0017656C 80 84 07 40 */ lwz r4, 0x740(r4) -/* 80179610 00176570 38 84 02 20 */ addi r4, r4, 0x220 -/* 80179614 00176574 48 19 95 61 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80179618 00176578 C0 41 00 F0 */ lfs f2, 0xf0(r1) -/* 8017961C 0017657C C0 21 00 D0 */ lfs f1, 0xd0(r1) -/* 80179620 00176580 C0 01 00 E0 */ lfs f0, 0xe0(r1) -/* 80179624 00176584 D0 21 00 84 */ stfs f1, 0x84(r1) -/* 80179628 00176588 D0 01 00 88 */ stfs f0, 0x88(r1) -/* 8017962C 0017658C D0 41 00 8C */ stfs f2, 0x8c(r1) -lbl_80179630: -/* 80179630 00176590 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80179634 00176594 3C A0 80 5A */ lis r5, lbl_805A66F4@ha -/* 80179638 00176598 38 83 66 A0 */ addi r4, r3, skZero3f@l -/* 8017963C 0017659C 38 C5 66 F4 */ addi r6, r5, lbl_805A66F4@l -/* 80179640 001765A0 38 61 00 9C */ addi r3, r1, 0x9c -/* 80179644 001765A4 38 A1 00 84 */ addi r5, r1, 0x84 -/* 80179648 001765A8 48 19 A4 C9 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f -/* 8017964C 001765AC 38 61 01 2C */ addi r3, r1, 0x12c -/* 80179650 001765B0 38 81 00 9C */ addi r4, r1, 0x9c -/* 80179654 001765B4 48 19 94 ED */ bl __as__12CTransform4fFRC12CTransform4f -/* 80179658 001765B8 D3 A1 01 38 */ stfs f29, 0x138(r1) -/* 8017965C 001765BC 38 81 01 2C */ addi r4, r1, 0x12c -/* 80179660 001765C0 D3 C1 01 48 */ stfs f30, 0x148(r1) -/* 80179664 001765C4 D3 E1 01 58 */ stfs f31, 0x158(r1) -/* 80179668 001765C8 80 7F 04 90 */ lwz r3, 0x490(r31) -/* 8017966C 001765CC 80 63 07 40 */ lwz r3, 0x740(r3) -/* 80179670 001765D0 38 63 02 20 */ addi r3, r3, 0x220 -/* 80179674 001765D4 48 19 94 CD */ bl __as__12CTransform4fFRC12CTransform4f -lbl_80179678: -/* 80179678 001765D8 E3 E1 01 98 */ psq_l f31, 408(r1), 0, qr0 -/* 8017967C 001765DC CB E1 01 90 */ lfd f31, 0x190(r1) -/* 80179680 001765E0 E3 C1 01 88 */ psq_l f30, 392(r1), 0, qr0 -/* 80179684 001765E4 CB C1 01 80 */ lfd f30, 0x180(r1) -/* 80179688 001765E8 E3 A1 01 78 */ psq_l f29, 376(r1), 0, qr0 -/* 8017968C 001765EC CB A1 01 70 */ lfd f29, 0x170(r1) -/* 80179690 001765F0 83 E1 01 6C */ lwz r31, 0x16c(r1) -/* 80179694 001765F4 83 C1 01 68 */ lwz r30, 0x168(r1) -/* 80179698 001765F8 80 01 01 A4 */ lwz r0, 0x1a4(r1) -/* 8017969C 001765FC 83 A1 01 64 */ lwz r29, 0x164(r1) -/* 801796A0 00176600 7C 08 03 A6 */ mtlr r0 -/* 801796A4 00176604 38 21 01 A0 */ addi r1, r1, 0x1a0 -/* 801796A8 00176608 4E 80 00 20 */ blr - -.global ApplyGrappleForces__7CPlayerFRC11CFinalInputR13CStateManagerf -ApplyGrappleForces__7CPlayerFRC11CFinalInputR13CStateManagerf: -/* 801796AC 0017660C 94 21 FC 30 */ stwu r1, -0x3d0(r1) -/* 801796B0 00176610 7C 08 02 A6 */ mflr r0 -/* 801796B4 00176614 90 01 03 D4 */ stw r0, 0x3d4(r1) -/* 801796B8 00176618 DB E1 03 C0 */ stfd f31, 0x3c0(r1) -/* 801796BC 0017661C F3 E1 03 C8 */ psq_st f31, 968(r1), 0, qr0 -/* 801796C0 00176620 DB C1 03 B0 */ stfd f30, 0x3b0(r1) -/* 801796C4 00176624 F3 C1 03 B8 */ psq_st f30, 952(r1), 0, qr0 -/* 801796C8 00176628 DB A1 03 A0 */ stfd f29, 0x3a0(r1) -/* 801796CC 0017662C F3 A1 03 A8 */ psq_st f29, 936(r1), 0, qr0 -/* 801796D0 00176630 DB 81 03 90 */ stfd f28, 0x390(r1) -/* 801796D4 00176634 F3 81 03 98 */ psq_st f28, 920(r1), 0, qr0 -/* 801796D8 00176638 DB 61 03 80 */ stfd f27, 0x380(r1) -/* 801796DC 0017663C F3 61 03 88 */ psq_st f27, 904(r1), 0, qr0 -/* 801796E0 00176640 DB 41 03 70 */ stfd f26, 0x370(r1) -/* 801796E4 00176644 F3 41 03 78 */ psq_st f26, 888(r1), 0, qr0 -/* 801796E8 00176648 DB 21 03 60 */ stfd f25, 0x360(r1) -/* 801796EC 0017664C F3 21 03 68 */ psq_st f25, 872(r1), 0, qr0 -/* 801796F0 00176650 DB 01 03 50 */ stfd f24, 0x350(r1) -/* 801796F4 00176654 F3 01 03 58 */ psq_st f24, 856(r1), 0, qr0 -/* 801796F8 00176658 DA E1 03 40 */ stfd f23, 0x340(r1) -/* 801796FC 0017665C F2 E1 03 48 */ psq_st f23, 840(r1), 0, qr0 -/* 80179700 00176660 DA C1 03 30 */ stfd f22, 0x330(r1) -/* 80179704 00176664 F2 C1 03 38 */ psq_st f22, 824(r1), 0, qr0 -/* 80179708 00176668 DA A1 03 20 */ stfd f21, 0x320(r1) -/* 8017970C 0017666C F2 A1 03 28 */ psq_st f21, 808(r1), 0, qr0 -/* 80179710 00176670 DA 81 03 10 */ stfd f20, 0x310(r1) -/* 80179714 00176674 F2 81 03 18 */ psq_st f20, 792(r1), 0, qr0 -/* 80179718 00176678 DA 61 03 00 */ stfd f19, 0x300(r1) -/* 8017971C 0017667C F2 61 03 08 */ psq_st f19, 776(r1), 0, qr0 -/* 80179720 00176680 DA 41 02 F0 */ stfd f18, 0x2f0(r1) -/* 80179724 00176684 F2 41 02 F8 */ psq_st f18, 760(r1), 0, qr0 -/* 80179728 00176688 BF 61 02 DC */ stmw r27, 0x2dc(r1) -/* 8017972C 0017668C 7C 7D 1B 78 */ mr r29, r3 -/* 80179730 00176690 7C BE 2B 78 */ mr r30, r5 -/* 80179734 00176694 A0 03 03 10 */ lhz r0, 0x310(r3) -/* 80179738 00176698 7C 9B 23 78 */ mr r27, r4 -/* 8017973C 0017669C C3 63 00 60 */ lfs f27, 0x60(r3) -/* 80179740 001766A0 FF E0 08 90 */ fmr f31, f1 -/* 80179744 001766A4 C3 83 00 50 */ lfs f28, 0x50(r3) -/* 80179748 001766A8 7F C3 F3 78 */ mr r3, r30 -/* 8017974C 001766AC C3 BD 00 40 */ lfs f29, 0x40(r29) -/* 80179750 001766B0 38 81 00 0C */ addi r4, r1, 0xc -/* 80179754 001766B4 B0 01 00 08 */ sth r0, 8(r1) -/* 80179758 001766B8 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8017975C 001766BC 4B ED 2E 49 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 80179760 001766C0 7C 64 1B 78 */ mr r4, r3 -/* 80179764 001766C4 38 61 00 1C */ addi r3, r1, 0x1c -/* 80179768 001766C8 4B F3 03 61 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" -/* 8017976C 001766CC 83 E3 00 04 */ lwz r31, 4(r3) -/* 80179770 001766D0 28 1F 00 00 */ cmplwi r31, 0 -/* 80179774 001766D4 41 82 0B 38 */ beq lbl_8017A2AC -/* 80179778 001766D8 80 1D 03 B8 */ lwz r0, 0x3b8(r29) -/* 8017977C 001766DC C3 DF 00 60 */ lfs f30, 0x60(r31) -/* 80179780 001766E0 2C 00 00 03 */ cmpwi r0, 3 -/* 80179784 001766E4 C3 3F 00 50 */ lfs f25, 0x50(r31) -/* 80179788 001766E8 C3 5F 00 40 */ lfs f26, 0x40(r31) -/* 8017978C 001766EC 41 82 03 B4 */ beq lbl_80179B40 -/* 80179790 001766F0 40 80 00 10 */ bge lbl_801797A0 -/* 80179794 001766F4 2C 00 00 02 */ cmpwi r0, 2 -/* 80179798 001766F8 40 80 00 14 */ bge lbl_801797AC -/* 8017979C 001766FC 48 00 0B 10 */ b lbl_8017A2AC -lbl_801797A0: -/* 801797A0 00176700 2C 00 00 05 */ cmpwi r0, 5 -/* 801797A4 00176704 40 80 0B 08 */ bge lbl_8017A2AC -/* 801797A8 00176708 48 00 0A D0 */ b lbl_8017A278 -lbl_801797AC: -/* 801797AC 0017670C 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) -/* 801797B0 00176710 38 61 02 00 */ addi r3, r1, 0x200 -/* 801797B4 00176714 C0 82 A2 30 */ lfs f4, lbl_805ABF50@sda21(r2) -/* 801797B8 00176718 C0 04 02 A4 */ lfs f0, 0x2a4(r4) -/* 801797BC 0017671C C0 5D 00 50 */ lfs f2, 0x50(r29) -/* 801797C0 00176720 EE 9A 20 2A */ fadds f20, f26, f4 -/* 801797C4 00176724 C0 3D 00 60 */ lfs f1, 0x60(r29) -/* 801797C8 00176728 FC 60 00 50 */ fneg f3, f0 -/* 801797CC 0017672C C0 1D 00 40 */ lfs f0, 0x40(r29) -/* 801797D0 00176730 EC 59 10 28 */ fsubs f2, f25, f2 -/* 801797D4 00176734 EC 3E 08 28 */ fsubs f1, f30, f1 -/* 801797D8 00176738 EC 1A 00 28 */ fsubs f0, f26, f0 -/* 801797DC 0017673C EE 79 20 2A */ fadds f19, f25, f4 -/* 801797E0 00176740 D0 41 02 04 */ stfs f2, 0x204(r1) -/* 801797E4 00176744 EE 5E 18 2A */ fadds f18, f30, f3 -/* 801797E8 00176748 D0 01 02 00 */ stfs f0, 0x200(r1) -/* 801797EC 0017674C D0 21 02 08 */ stfs f1, 0x208(r1) -/* 801797F0 00176750 48 19 AF 09 */ bl CanBeNormalized__9CVector3fCFv -/* 801797F4 00176754 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801797F8 00176758 41 82 0A B4 */ beq lbl_8017A2AC -/* 801797FC 0017675C EC 54 E8 28 */ fsubs f2, f20, f29 -/* 80179800 00176760 38 61 01 F4 */ addi r3, r1, 0x1f4 -/* 80179804 00176764 EC 33 E0 28 */ fsubs f1, f19, f28 -/* 80179808 00176768 EC 12 D8 28 */ fsubs f0, f18, f27 -/* 8017980C 0017676C D0 41 01 F4 */ stfs f2, 0x1f4(r1) -/* 80179810 00176770 D0 21 01 F8 */ stfs f1, 0x1f8(r1) -/* 80179814 00176774 D0 01 01 FC */ stfs f0, 0x1fc(r1) -/* 80179818 00176778 48 19 AE E1 */ bl CanBeNormalized__9CVector3fCFv -/* 8017981C 0017677C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80179820 00176780 41 82 02 F8 */ beq lbl_80179B18 -/* 80179824 00176784 38 61 01 F4 */ addi r3, r1, 0x1f4 -/* 80179828 00176788 48 19 B0 91 */ bl Magnitude__9CVector3fCFv -/* 8017982C 0017678C FE 40 08 90 */ fmr f18, f1 -/* 80179830 00176790 38 61 01 F4 */ addi r3, r1, 0x1f4 -/* 80179834 00176794 48 19 B0 C5 */ bl Normalize__9CVector3fFv -/* 80179838 00176798 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017983C 0017679C C8 02 A2 40 */ lfd f0, lbl_805ABF60@sda21(r2) -/* 80179840 001767A0 C0 23 02 B8 */ lfs f1, 0x2b8(r3) -/* 80179844 001767A4 EC 92 08 24 */ fdivs f4, f18, f1 -/* 80179848 001767A8 FC 20 22 10 */ fabs f1, f4 -/* 8017984C 001767AC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80179850 001767B0 40 81 00 14 */ ble lbl_80179864 -/* 80179854 001767B4 C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) -/* 80179858 001767B8 C0 22 A2 4C */ lfs f1, lbl_805ABF6C@sda21(r2) -/* 8017985C 001767BC FC 04 00 6E */ fsel f0, f4, f1, f0 -/* 80179860 001767C0 EC 81 00 32 */ fmuls f4, f1, f0 -lbl_80179864: -/* 80179864 001767C4 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) -/* 80179868 001767C8 7F A3 EB 78 */ mr r3, r29 -/* 8017986C 001767CC C0 41 01 F8 */ lfs f2, 0x1f8(r1) -/* 80179870 001767D0 38 81 01 E8 */ addi r4, r1, 0x1e8 -/* 80179874 001767D4 C0 A5 02 AC */ lfs f5, 0x2ac(r5) -/* 80179878 001767D8 C0 05 02 BC */ lfs f0, 0x2bc(r5) -/* 8017987C 001767DC C0 21 01 FC */ lfs f1, 0x1fc(r1) -/* 80179880 001767E0 EC 60 28 28 */ fsubs f3, f0, f5 -/* 80179884 001767E4 C0 01 01 F4 */ lfs f0, 0x1f4(r1) -/* 80179888 001767E8 EC 64 28 FA */ fmadds f3, f4, f3, f5 -/* 8017988C 001767EC EC 43 00 B2 */ fmuls f2, f3, f2 -/* 80179890 001767F0 EC 23 00 72 */ fmuls f1, f3, f1 -/* 80179894 001767F4 EC 03 00 32 */ fmuls f0, f3, f0 -/* 80179898 001767F8 D0 41 01 EC */ stfs f2, 0x1ec(r1) -/* 8017989C 001767FC D0 01 01 E8 */ stfs f0, 0x1e8(r1) -/* 801798A0 00176800 D0 21 01 F0 */ stfs f1, 0x1f0(r1) -/* 801798A4 00176804 4B FA 13 FD */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -/* 801798A8 00176808 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 801798AC 0017680C C0 03 02 B4 */ lfs f0, 0x2b4(r3) -/* 801798B0 00176810 FC 12 00 40 */ fcmpo cr0, f18, f0 -/* 801798B4 00176814 40 80 00 3C */ bge lbl_801798F0 -/* 801798B8 00176818 38 00 00 03 */ li r0, 3 -/* 801798BC 0017681C C0 42 A2 38 */ lfs f2, lbl_805ABF58@sda21(r2) -/* 801798C0 00176820 90 1D 03 B8 */ stw r0, 0x3b8(r29) -/* 801798C4 00176824 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 801798C8 00176828 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 801798CC 0017682C C0 23 02 A8 */ lfs f1, 0x2a8(r3) -/* 801798D0 00176830 EC 22 00 72 */ fmuls f1, f2, f1 -/* 801798D4 00176834 D0 3D 03 BC */ stfs f1, 0x3bc(r29) -/* 801798D8 00176838 D0 1D 03 D8 */ stfs f0, 0x3d8(r29) -/* 801798DC 0017683C 88 7F 01 2C */ lbz r3, 0x12c(r31) -/* 801798E0 00176840 88 1D 09 C6 */ lbz r0, 0x9c6(r29) -/* 801798E4 00176844 50 60 E7 38 */ rlwimi r0, r3, 0x1c, 0x1c, 0x1c -/* 801798E8 00176848 98 1D 09 C6 */ stb r0, 0x9c6(r29) -/* 801798EC 0017684C 48 00 09 C0 */ b lbl_8017A2AC -lbl_801798F0: -/* 801798F0 00176850 FC 20 F8 90 */ fmr f1, f31 -/* 801798F4 00176854 7F A4 EB 78 */ mr r4, r29 -/* 801798F8 00176858 38 61 02 70 */ addi r3, r1, 0x270 -/* 801798FC 0017685C 4B FA 23 B5 */ bl PredictMotion__13CPhysicsActorCFf -/* 80179900 00176860 C0 5D 00 58 */ lfs f2, 0x58(r29) -/* 80179904 00176864 38 61 01 DC */ addi r3, r1, 0x1dc -/* 80179908 00176868 C0 3D 00 48 */ lfs f1, 0x48(r29) -/* 8017990C 0017686C C0 1D 00 38 */ lfs f0, 0x38(r29) -/* 80179910 00176870 C0 A1 02 74 */ lfs f5, 0x274(r1) -/* 80179914 00176874 D0 01 01 DC */ stfs f0, 0x1dc(r1) -/* 80179918 00176878 C0 C1 02 78 */ lfs f6, 0x278(r1) -/* 8017991C 0017687C D0 21 01 E0 */ stfs f1, 0x1e0(r1) -/* 80179920 00176880 C0 21 02 70 */ lfs f1, 0x270(r1) -/* 80179924 00176884 D0 41 01 E4 */ stfs f2, 0x1e4(r1) -/* 80179928 00176888 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017992C 0017688C C0 9D 00 50 */ lfs f4, 0x50(r29) -/* 80179930 00176890 C0 7D 00 60 */ lfs f3, 0x60(r29) -/* 80179934 00176894 C0 5D 00 40 */ lfs f2, 0x40(r29) -/* 80179938 00176898 EC 84 28 2A */ fadds f4, f4, f5 -/* 8017993C 0017689C EC 63 30 2A */ fadds f3, f3, f6 -/* 80179940 001768A0 EC 22 08 2A */ fadds f1, f2, f1 -/* 80179944 001768A4 D0 01 01 E4 */ stfs f0, 0x1e4(r1) -/* 80179948 001768A8 EC 99 20 28 */ fsubs f4, f25, f4 -/* 8017994C 001768AC EC 5E 18 28 */ fsubs f2, f30, f3 -/* 80179950 001768B0 EC 1A 08 28 */ fsubs f0, f26, f1 -/* 80179954 001768B4 D0 81 01 D4 */ stfs f4, 0x1d4(r1) -/* 80179958 001768B8 D0 01 01 D0 */ stfs f0, 0x1d0(r1) -/* 8017995C 001768BC D0 41 01 D8 */ stfs f2, 0x1d8(r1) -/* 80179960 001768C0 48 19 AD 99 */ bl CanBeNormalized__9CVector3fCFv -/* 80179964 001768C4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80179968 001768C8 41 82 00 0C */ beq lbl_80179974 -/* 8017996C 001768CC 38 61 01 DC */ addi r3, r1, 0x1dc -/* 80179970 001768D0 48 19 AF 89 */ bl Normalize__9CVector3fFv -lbl_80179974: -/* 80179974 001768D4 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 80179978 001768D8 38 61 01 D0 */ addi r3, r1, 0x1d0 -/* 8017997C 001768DC D0 01 01 D8 */ stfs f0, 0x1d8(r1) -/* 80179980 001768E0 48 19 AD 79 */ bl CanBeNormalized__9CVector3fCFv -/* 80179984 001768E4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80179988 001768E8 41 82 09 24 */ beq lbl_8017A2AC -/* 8017998C 001768EC 38 61 01 D0 */ addi r3, r1, 0x1d0 -/* 80179990 001768F0 48 19 AF 69 */ bl Normalize__9CVector3fFv -/* 80179994 001768F4 C0 21 01 E0 */ lfs f1, 0x1e0(r1) -/* 80179998 001768F8 C0 01 01 D4 */ lfs f0, 0x1d4(r1) -/* 8017999C 001768FC C0 41 01 DC */ lfs f2, 0x1dc(r1) -/* 801799A0 00176900 EC 01 00 32 */ fmuls f0, f1, f0 -/* 801799A4 00176904 C0 21 01 D0 */ lfs f1, 0x1d0(r1) -/* 801799A8 00176908 C0 81 01 E4 */ lfs f4, 0x1e4(r1) -/* 801799AC 0017690C C0 61 01 D8 */ lfs f3, 0x1d8(r1) -/* 801799B0 00176910 EC 22 00 7A */ fmadds f1, f2, f1, f0 -/* 801799B4 00176914 C8 02 A2 40 */ lfd f0, lbl_805ABF60@sda21(r2) -/* 801799B8 00176918 EC 24 08 FA */ fmadds f1, f4, f3, f1 -/* 801799BC 0017691C FC 40 0A 10 */ fabs f2, f1 -/* 801799C0 00176920 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 801799C4 00176924 40 81 00 14 */ ble lbl_801799D8 -/* 801799C8 00176928 C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) -/* 801799CC 0017692C C0 42 A2 4C */ lfs f2, lbl_805ABF6C@sda21(r2) -/* 801799D0 00176930 FC 01 00 AE */ fsel f0, f1, f2, f0 -/* 801799D4 00176934 EC 22 00 32 */ fmuls f1, f2, f0 -lbl_801799D8: -/* 801799D8 00176938 48 21 B2 55 */ bl acos -/* 801799DC 0017693C C8 42 A2 50 */ lfd f2, lbl_805ABF70@sda21(r2) -/* 801799E0 00176940 FC 01 10 40 */ fcmpo cr0, f1, f2 -/* 801799E4 00176944 40 81 01 04 */ ble lbl_80179AE8 -/* 801799E8 00176948 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 801799EC 0017694C C0 03 02 C0 */ lfs f0, 0x2c0(r3) -/* 801799F0 00176950 EE 9F 00 32 */ fmuls f20, f31, f0 -/* 801799F4 00176954 FC 01 A0 40 */ fcmpo cr0, f1, f20 -/* 801799F8 00176958 4C 41 13 82 */ cror 2, 1, 2 -/* 801799FC 0017695C 40 82 00 B4 */ bne lbl_80179AB0 -/* 80179A00 00176960 C0 01 01 DC */ lfs f0, 0x1dc(r1) -/* 80179A04 00176964 38 61 01 C4 */ addi r3, r1, 0x1c4 -/* 80179A08 00176968 C0 21 01 E0 */ lfs f1, 0x1e0(r1) -/* 80179A0C 0017696C FC 40 00 50 */ fneg f2, f0 -/* 80179A10 00176970 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 80179A14 00176974 D0 21 01 C4 */ stfs f1, 0x1c4(r1) -/* 80179A18 00176978 D0 41 01 C8 */ stfs f2, 0x1c8(r1) -/* 80179A1C 0017697C D0 01 01 CC */ stfs f0, 0x1cc(r1) -/* 80179A20 00176980 48 19 AC D9 */ bl CanBeNormalized__9CVector3fCFv -/* 80179A24 00176984 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80179A28 00176988 41 82 00 0C */ beq lbl_80179A34 -/* 80179A2C 0017698C 38 61 01 C4 */ addi r3, r1, 0x1c4 -/* 80179A30 00176990 48 19 AE C9 */ bl Normalize__9CVector3fFv -lbl_80179A34: -/* 80179A34 00176994 C0 21 01 D4 */ lfs f1, 0x1d4(r1) -/* 80179A38 00176998 C0 01 01 C8 */ lfs f0, 0x1c8(r1) -/* 80179A3C 0017699C C0 41 01 D0 */ lfs f2, 0x1d0(r1) -/* 80179A40 001769A0 EC 01 00 32 */ fmuls f0, f1, f0 -/* 80179A44 001769A4 C0 21 01 C4 */ lfs f1, 0x1c4(r1) -/* 80179A48 001769A8 C0 81 01 D8 */ lfs f4, 0x1d8(r1) -/* 80179A4C 001769AC C0 61 01 CC */ lfs f3, 0x1cc(r1) -/* 80179A50 001769B0 EC 22 00 7A */ fmadds f1, f2, f1, f0 -/* 80179A54 001769B4 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 80179A58 001769B8 EC 24 08 FA */ fmadds f1, f4, f3, f1 -/* 80179A5C 001769BC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80179A60 001769C0 4C 41 13 82 */ cror 2, 1, 2 -/* 80179A64 001769C4 40 82 00 08 */ bne lbl_80179A6C -/* 80179A68 001769C8 FE 80 A0 50 */ fneg f20, f20 -lbl_80179A6C: -/* 80179A6C 001769CC C0 22 A2 30 */ lfs f1, lbl_805ABF50@sda21(r2) -/* 80179A70 001769D0 38 61 01 38 */ addi r3, r1, 0x138 -/* 80179A74 001769D4 C0 02 A2 4C */ lfs f0, lbl_805ABF6C@sda21(r2) -/* 80179A78 001769D8 D2 81 00 18 */ stfs f20, 0x18(r1) -/* 80179A7C 001769DC D0 21 01 38 */ stfs f1, 0x138(r1) -/* 80179A80 001769E0 D0 21 01 3C */ stfs f1, 0x13c(r1) -/* 80179A84 001769E4 D0 01 01 40 */ stfs f0, 0x140(r1) -/* 80179A88 001769E8 48 19 AE 71 */ bl Normalize__9CVector3fFv -/* 80179A8C 001769EC 38 61 01 44 */ addi r3, r1, 0x144 -/* 80179A90 001769F0 38 81 01 38 */ addi r4, r1, 0x138 -/* 80179A94 001769F4 38 A1 00 18 */ addi r5, r1, 0x18 -/* 80179A98 001769F8 48 19 78 5D */ bl AxisAngle__11CQuaternionFRC13CUnitVector3fRC9CRelAngle -/* 80179A9C 001769FC FC 20 F8 90 */ fmr f1, f31 -/* 80179AA0 00176A00 7F A3 EB 78 */ mr r3, r29 -/* 80179AA4 00176A04 38 81 01 44 */ addi r4, r1, 0x144 -/* 80179AA8 00176A08 4B FA 13 6D */ bl RotateToOR__13CPhysicsActorFRC11CQuaternionf -/* 80179AAC 00176A0C 48 00 08 00 */ b lbl_8017A2AC -lbl_80179AB0: -/* 80179AB0 00176A10 C8 02 A2 58 */ lfd f0, lbl_805ABF78@sda21(r2) -/* 80179AB4 00176A14 FC 01 00 28 */ fsub f0, f1, f0 -/* 80179AB8 00176A18 FC 00 02 10 */ fabs f0, f0 -/* 80179ABC 00176A1C FC 00 10 40 */ fcmpo cr0, f0, f2 -/* 80179AC0 00176A20 40 81 07 EC */ ble lbl_8017A2AC -/* 80179AC4 00176A24 38 61 01 28 */ addi r3, r1, 0x128 -/* 80179AC8 00176A28 38 81 01 DC */ addi r4, r1, 0x1dc -/* 80179ACC 00176A2C 38 A1 01 D0 */ addi r5, r1, 0x1d0 -/* 80179AD0 00176A30 48 19 7F E9 */ bl ShortestRotationArc__11CQuaternionFRC9CVector3fRC9CVector3f -/* 80179AD4 00176A34 FC 20 F8 90 */ fmr f1, f31 -/* 80179AD8 00176A38 7F A3 EB 78 */ mr r3, r29 -/* 80179ADC 00176A3C 38 81 01 28 */ addi r4, r1, 0x128 -/* 80179AE0 00176A40 4B FA 13 35 */ bl RotateToOR__13CPhysicsActorFRC11CQuaternionf -/* 80179AE4 00176A44 48 00 07 C8 */ b lbl_8017A2AC -lbl_80179AE8: -/* 80179AE8 00176A48 4B EA 1A 4D */ bl Identity__10CAxisAngleFv -/* 80179AEC 00176A4C 7C 64 1B 78 */ mr r4, r3 -/* 80179AF0 00176A50 7F A3 EB 78 */ mr r3, r29 -/* 80179AF4 00176A54 4B FA 11 09 */ bl SetAngularVelocityWR__13CPhysicsActorFRC10CAxisAngle -/* 80179AF8 00176A58 4B EA 1A 3D */ bl Identity__10CAxisAngleFv -/* 80179AFC 00176A5C 80 83 00 00 */ lwz r4, 0(r3) -/* 80179B00 00176A60 80 03 00 04 */ lwz r0, 4(r3) -/* 80179B04 00176A64 90 9D 01 74 */ stw r4, 0x174(r29) -/* 80179B08 00176A68 90 1D 01 78 */ stw r0, 0x178(r29) -/* 80179B0C 00176A6C 80 03 00 08 */ lwz r0, 8(r3) -/* 80179B10 00176A70 90 1D 01 7C */ stw r0, 0x17c(r29) -/* 80179B14 00176A74 48 00 07 98 */ b lbl_8017A2AC -lbl_80179B18: -/* 80179B18 00176A78 38 00 00 03 */ li r0, 3 -/* 80179B1C 00176A7C C0 42 A2 38 */ lfs f2, lbl_805ABF58@sda21(r2) -/* 80179B20 00176A80 90 1D 03 B8 */ stw r0, 0x3b8(r29) -/* 80179B24 00176A84 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 80179B28 00176A88 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 80179B2C 00176A8C C0 23 02 A8 */ lfs f1, 0x2a8(r3) -/* 80179B30 00176A90 EC 22 00 72 */ fmuls f1, f2, f1 -/* 80179B34 00176A94 D0 3D 03 BC */ stfs f1, 0x3bc(r29) -/* 80179B38 00176A98 D0 1D 03 D8 */ stfs f0, 0x3d8(r29) -/* 80179B3C 00176A9C 48 00 07 70 */ b lbl_8017A2AC -lbl_80179B40: -/* 80179B40 00176AA0 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 80179B44 00176AA4 C0 02 A2 60 */ lfs f0, lbl_805ABF80@sda21(r2) -/* 80179B48 00176AA8 C0 23 02 C4 */ lfs f1, 0x2c4(r3) -/* 80179B4C 00176AAC 88 03 02 D5 */ lbz r0, 0x2d5(r3) -/* 80179B50 00176AB0 EE 60 00 72 */ fmuls f19, f0, f1 -/* 80179B54 00176AB4 28 00 00 00 */ cmplwi r0, 0 -/* 80179B58 00176AB8 41 82 00 0C */ beq lbl_80179B64 -/* 80179B5C 00176ABC C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) -/* 80179B60 00176AC0 EE 73 00 32 */ fmuls f19, f19, f0 -lbl_80179B64: -/* 80179B64 00176AC4 EE BD D0 28 */ fsubs f21, f29, f26 -/* 80179B68 00176AC8 38 61 01 B8 */ addi r3, r1, 0x1b8 -/* 80179B6C 00176ACC EE 9C C8 28 */ fsubs f20, f28, f25 -/* 80179B70 00176AD0 EE 5B F0 28 */ fsubs f18, f27, f30 -/* 80179B74 00176AD4 D2 A1 01 B8 */ stfs f21, 0x1b8(r1) -/* 80179B78 00176AD8 D2 81 01 BC */ stfs f20, 0x1bc(r1) -/* 80179B7C 00176ADC D2 41 01 C0 */ stfs f18, 0x1c0(r1) -/* 80179B80 00176AE0 48 19 AD 39 */ bl Magnitude__9CVector3fCFv -/* 80179B84 00176AE4 EC 32 08 24 */ fdivs f1, f18, f1 -/* 80179B88 00176AE8 C8 02 A2 40 */ lfd f0, lbl_805ABF60@sda21(r2) -/* 80179B8C 00176AEC FC 20 0A 10 */ fabs f1, f1 -/* 80179B90 00176AF0 FF C0 08 18 */ frsp f30, f1 -/* 80179B94 00176AF4 FC 20 F2 10 */ fabs f1, f30 -/* 80179B98 00176AF8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80179B9C 00176AFC 40 81 00 14 */ ble lbl_80179BB0 -/* 80179BA0 00176B00 C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) -/* 80179BA4 00176B04 C0 22 A2 4C */ lfs f1, lbl_805ABF6C@sda21(r2) -/* 80179BA8 00176B08 FC 1E 00 6E */ fsel f0, f30, f1, f0 -/* 80179BAC 00176B0C EF C1 00 32 */ fmuls f30, f1, f0 -lbl_80179BB0: -/* 80179BB0 00176B10 88 1F 01 2C */ lbz r0, 0x12c(r31) -/* 80179BB4 00176B14 3B 80 00 00 */ li r28, 0 -/* 80179BB8 00176B18 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80179BBC 00176B1C 40 82 00 64 */ bne lbl_80179C20 -/* 80179BC0 00176B20 7F 64 DB 78 */ mr r4, r27 -/* 80179BC4 00176B24 38 60 00 02 */ li r3, 2 -/* 80179BC8 00176B28 4B E9 2D 51 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput -/* 80179BCC 00176B2C C0 02 A2 64 */ lfs f0, lbl_805ABF84@sda21(r2) -/* 80179BD0 00176B30 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80179BD4 00176B34 40 81 00 1C */ ble lbl_80179BF0 -/* 80179BD8 00176B38 7F 64 DB 78 */ mr r4, r27 -/* 80179BDC 00176B3C 3B 80 00 01 */ li r28, 1 -/* 80179BE0 00176B40 38 60 00 02 */ li r3, 2 -/* 80179BE4 00176B44 4B E9 2D 35 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput -/* 80179BE8 00176B48 FC 00 08 50 */ fneg f0, f1 -/* 80179BEC 00176B4C EE 73 00 32 */ fmuls f19, f19, f0 -lbl_80179BF0: -/* 80179BF0 00176B50 7F 64 DB 78 */ mr r4, r27 -/* 80179BF4 00176B54 38 60 00 03 */ li r3, 3 -/* 80179BF8 00176B58 4B E9 2D 21 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput -/* 80179BFC 00176B5C C0 02 A2 64 */ lfs f0, lbl_805ABF84@sda21(r2) -/* 80179C00 00176B60 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80179C04 00176B64 40 81 00 2C */ ble lbl_80179C30 -/* 80179C08 00176B68 7F 64 DB 78 */ mr r4, r27 -/* 80179C0C 00176B6C 3B 80 00 01 */ li r28, 1 -/* 80179C10 00176B70 38 60 00 03 */ li r3, 3 -/* 80179C14 00176B74 4B E9 2D 05 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput -/* 80179C18 00176B78 EE 73 00 72 */ fmuls f19, f19, f1 -/* 80179C1C 00176B7C 48 00 00 14 */ b lbl_80179C30 -lbl_80179C20: -/* 80179C20 00176B80 88 1D 09 C6 */ lbz r0, 0x9c6(r29) -/* 80179C24 00176B84 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f -/* 80179C28 00176B88 41 82 00 08 */ beq lbl_80179C30 -/* 80179C2C 00176B8C 3B 80 00 01 */ li r28, 1 -lbl_80179C30: -/* 80179C30 00176B90 C0 1D 03 BC */ lfs f0, 0x3bc(r29) -/* 80179C34 00176B94 EC 00 F8 2A */ fadds f0, f0, f31 -/* 80179C38 00176B98 D0 1D 03 BC */ stfs f0, 0x3bc(r29) -/* 80179C3C 00176B9C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 80179C40 00176BA0 C0 1D 03 BC */ lfs f0, 0x3bc(r29) -/* 80179C44 00176BA4 C0 23 02 A8 */ lfs f1, 0x2a8(r3) -/* 80179C48 00176BA8 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 80179C4C 00176BAC 40 81 00 0C */ ble lbl_80179C58 -/* 80179C50 00176BB0 EC 00 08 28 */ fsubs f0, f0, f1 -/* 80179C54 00176BB4 D0 1D 03 BC */ stfs f0, 0x3bc(r29) -lbl_80179C58: -/* 80179C58 00176BB8 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 80179C5C 00176BBC C0 02 A2 68 */ lfs f0, lbl_805ABF88@sda21(r2) -/* 80179C60 00176BC0 C0 23 02 A8 */ lfs f1, 0x2a8(r3) -/* 80179C64 00176BC4 C0 5D 03 BC */ lfs f2, 0x3bc(r29) -/* 80179C68 00176BC8 EC 00 00 72 */ fmuls f0, f0, f1 -/* 80179C6C 00176BCC C3 1D 03 C0 */ lfs f24, 0x3c0(r29) -/* 80179C70 00176BD0 C2 FD 03 C4 */ lfs f23, 0x3c4(r29) -/* 80179C74 00176BD4 C2 DD 03 C8 */ lfs f22, 0x3c8(r29) -/* 80179C78 00176BD8 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 80179C7C 00176BDC 40 80 00 14 */ bge lbl_80179C90 -/* 80179C80 00176BE0 C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) -/* 80179C84 00176BE4 EF 18 00 32 */ fmuls f24, f24, f0 -/* 80179C88 00176BE8 EE F7 00 32 */ fmuls f23, f23, f0 -/* 80179C8C 00176BEC EE D6 00 32 */ fmuls f22, f22, f0 -lbl_80179C90: -/* 80179C90 00176BF0 EC 22 08 24 */ fdivs f1, f2, f1 -/* 80179C94 00176BF4 C0 42 A2 34 */ lfs f2, lbl_805ABF54@sda21(r2) -/* 80179C98 00176BF8 C0 02 A2 6C */ lfs f0, lbl_805ABF8C@sda21(r2) -/* 80179C9C 00176BFC EC 22 00 7A */ fmadds f1, f2, f1, f0 -/* 80179CA0 00176C00 48 21 A7 51 */ bl cos -/* 80179CA4 00176C04 FC 40 08 18 */ frsp f2, f1 -/* 80179CA8 00176C08 C8 02 A2 40 */ lfd f0, lbl_805ABF60@sda21(r2) -/* 80179CAC 00176C0C FC 20 12 10 */ fabs f1, f2 -/* 80179CB0 00176C10 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80179CB4 00176C14 40 81 00 14 */ ble lbl_80179CC8 -/* 80179CB8 00176C18 C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) -/* 80179CBC 00176C1C C0 22 A2 4C */ lfs f1, lbl_805ABF6C@sda21(r2) -/* 80179CC0 00176C20 FC 02 00 6E */ fsel f0, f2, f1, f0 -/* 80179CC4 00176C24 EC 41 00 32 */ fmuls f2, f1, f0 -lbl_80179CC8: -/* 80179CC8 00176C28 FC 20 12 10 */ fabs f1, f2 -/* 80179CCC 00176C2C 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) -/* 80179CD0 00176C30 38 61 01 1C */ addi r3, r1, 0x11c -/* 80179CD4 00176C34 38 81 01 B8 */ addi r4, r1, 0x1b8 -/* 80179CD8 00176C38 C0 05 02 AC */ lfs f0, 0x2ac(r5) -/* 80179CDC 00176C3C FC 20 08 18 */ frsp f1, f1 -/* 80179CE0 00176C40 EE 41 00 32 */ fmuls f18, f1, f0 -/* 80179CE4 00176C44 48 19 AB 6D */ bl AsNormalized__9CVector3fCFv -/* 80179CE8 00176C48 C0 81 01 20 */ lfs f4, 0x120(r1) -/* 80179CEC 00176C4C 38 61 01 B8 */ addi r3, r1, 0x1b8 -/* 80179CF0 00176C50 C0 A1 01 24 */ lfs f5, 0x124(r1) -/* 80179CF4 00176C54 C0 61 01 1C */ lfs f3, 0x11c(r1) -/* 80179CF8 00176C58 EC 58 01 32 */ fmuls f2, f24, f4 -/* 80179CFC 00176C5C EC 37 01 72 */ fmuls f1, f23, f5 -/* 80179D00 00176C60 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) -/* 80179D04 00176C64 EC 16 00 F2 */ fmuls f0, f22, f3 -/* 80179D08 00176C68 EC 63 15 F8 */ fmsubs f3, f3, f23, f2 -/* 80179D0C 00176C6C EC 44 0D B8 */ fmsubs f2, f4, f22, f1 -/* 80179D10 00176C70 EC 25 06 38 */ fmsubs f1, f5, f24, f0 -/* 80179D14 00176C74 EC 12 00 F2 */ fmuls f0, f18, f3 -/* 80179D18 00176C78 EC 52 00 B2 */ fmuls f2, f18, f2 -/* 80179D1C 00176C7C EC 32 00 72 */ fmuls f1, f18, f1 -/* 80179D20 00176C80 D0 01 01 B4 */ stfs f0, 0x1b4(r1) -/* 80179D24 00176C84 D0 41 01 AC */ stfs f2, 0x1ac(r1) -/* 80179D28 00176C88 D0 21 01 B0 */ stfs f1, 0x1b0(r1) -/* 80179D2C 00176C8C C2 44 02 A4 */ lfs f18, 0x2a4(r4) -/* 80179D30 00176C90 48 19 AB 89 */ bl Magnitude__9CVector3fCFv -/* 80179D34 00176C94 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 80179D38 00176C98 EC 41 90 28 */ fsubs f2, f1, f18 -/* 80179D3C 00176C9C C8 02 A2 40 */ lfd f0, lbl_805ABF60@sda21(r2) -/* 80179D40 00176CA0 C0 23 02 A4 */ lfs f1, 0x2a4(r3) -/* 80179D44 00176CA4 EC 62 08 24 */ fdivs f3, f2, f1 -/* 80179D48 00176CA8 FC 20 1A 10 */ fabs f1, f3 -/* 80179D4C 00176CAC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80179D50 00176CB0 40 81 00 14 */ ble lbl_80179D64 -/* 80179D54 00176CB4 C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) -/* 80179D58 00176CB8 C0 22 A2 4C */ lfs f1, lbl_805ABF6C@sda21(r2) -/* 80179D5C 00176CBC FC 03 00 6E */ fsel f0, f3, f1, f0 -/* 80179D60 00176CC0 EC 61 00 32 */ fmuls f3, f1, f0 -lbl_80179D64: -/* 80179D64 00176CC4 C0 41 01 BC */ lfs f2, 0x1bc(r1) -/* 80179D68 00176CC8 7F A3 EB 78 */ mr r3, r29 -/* 80179D6C 00176CCC C0 21 01 C0 */ lfs f1, 0x1c0(r1) -/* 80179D70 00176CD0 38 81 01 AC */ addi r4, r1, 0x1ac -/* 80179D74 00176CD4 C0 01 01 B8 */ lfs f0, 0x1b8(r1) -/* 80179D78 00176CD8 EC 43 00 B2 */ fmuls f2, f3, f2 -/* 80179D7C 00176CDC C0 C2 A2 70 */ lfs f6, lbl_805ABF90@sda21(r2) -/* 80179D80 00176CE0 EC 23 00 72 */ fmuls f1, f3, f1 -/* 80179D84 00176CE4 EC 03 00 32 */ fmuls f0, f3, f0 -/* 80179D88 00176CE8 C0 61 01 AC */ lfs f3, 0x1ac(r1) -/* 80179D8C 00176CEC EC A6 00 B2 */ fmuls f5, f6, f2 -/* 80179D90 00176CF0 EC 86 00 72 */ fmuls f4, f6, f1 -/* 80179D94 00176CF4 C0 21 01 B0 */ lfs f1, 0x1b0(r1) -/* 80179D98 00176CF8 EC 46 00 32 */ fmuls f2, f6, f0 -/* 80179D9C 00176CFC EC BE 01 72 */ fmuls f5, f30, f5 -/* 80179DA0 00176D00 C0 01 01 B4 */ lfs f0, 0x1b4(r1) -/* 80179DA4 00176D04 EC 9E 01 32 */ fmuls f4, f30, f4 -/* 80179DA8 00176D08 EC 5E 00 B2 */ fmuls f2, f30, f2 -/* 80179DAC 00176D0C EC 21 28 2A */ fadds f1, f1, f5 -/* 80179DB0 00176D10 EC 00 20 2A */ fadds f0, f0, f4 -/* 80179DB4 00176D14 EC 43 10 2A */ fadds f2, f3, f2 -/* 80179DB8 00176D18 D0 21 01 B0 */ stfs f1, 0x1b0(r1) -/* 80179DBC 00176D1C D0 41 01 AC */ stfs f2, 0x1ac(r1) -/* 80179DC0 00176D20 D0 01 01 B4 */ stfs f0, 0x1b4(r1) -/* 80179DC4 00176D24 C0 1D 01 38 */ lfs f0, 0x138(r29) -/* 80179DC8 00176D28 D0 01 01 A0 */ stfs f0, 0x1a0(r1) -/* 80179DCC 00176D2C C0 1D 01 3C */ lfs f0, 0x13c(r29) -/* 80179DD0 00176D30 D0 01 01 A4 */ stfs f0, 0x1a4(r1) -/* 80179DD4 00176D34 C0 1D 01 40 */ lfs f0, 0x140(r29) -/* 80179DD8 00176D38 D0 01 01 A8 */ stfs f0, 0x1a8(r1) -/* 80179DDC 00176D3C 4B FA 0E C5 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -/* 80179DE0 00176D40 38 61 02 A4 */ addi r3, r1, 0x2a4 -/* 80179DE4 00176D44 38 9D 00 34 */ addi r4, r29, 0x34 -/* 80179DE8 00176D48 48 19 8D 8D */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80179DEC 00176D4C FC 20 F8 90 */ fmr f1, f31 -/* 80179DF0 00176D50 7F A4 EB 78 */ mr r4, r29 -/* 80179DF4 00176D54 38 61 02 3C */ addi r3, r1, 0x23c -/* 80179DF8 00176D58 4B FA 1E B9 */ bl PredictMotion__13CPhysicsActorCFf -/* 80179DFC 00176D5C C0 3D 00 40 */ lfs f1, 0x40(r29) -/* 80179E00 00176D60 7F A3 EB 78 */ mr r3, r29 -/* 80179E04 00176D64 C0 01 02 3C */ lfs f0, 0x23c(r1) -/* 80179E08 00176D68 7F C5 F3 78 */ mr r5, r30 -/* 80179E0C 00176D6C C0 7D 00 50 */ lfs f3, 0x50(r29) -/* 80179E10 00176D70 38 81 01 10 */ addi r4, r1, 0x110 -/* 80179E14 00176D74 C0 41 02 40 */ lfs f2, 0x240(r1) -/* 80179E18 00176D78 EC 81 00 2A */ fadds f4, f1, f0 -/* 80179E1C 00176D7C C0 3D 00 60 */ lfs f1, 0x60(r29) -/* 80179E20 00176D80 C0 01 02 44 */ lfs f0, 0x244(r1) -/* 80179E24 00176D84 EC 43 10 2A */ fadds f2, f3, f2 -/* 80179E28 00176D88 D0 81 01 04 */ stfs f4, 0x104(r1) -/* 80179E2C 00176D8C EC 01 00 2A */ fadds f0, f1, f0 -/* 80179E30 00176D90 D0 41 01 08 */ stfs f2, 0x108(r1) -/* 80179E34 00176D94 80 E1 01 04 */ lwz r7, 0x104(r1) -/* 80179E38 00176D98 D0 01 01 0C */ stfs f0, 0x10c(r1) -/* 80179E3C 00176D9C 80 C1 01 08 */ lwz r6, 0x108(r1) -/* 80179E40 00176DA0 80 01 01 0C */ lwz r0, 0x10c(r1) -/* 80179E44 00176DA4 90 E1 01 10 */ stw r7, 0x110(r1) -/* 80179E48 00176DA8 90 C1 01 14 */ stw r6, 0x114(r1) -/* 80179E4C 00176DAC 90 01 01 18 */ stw r0, 0x118(r1) -/* 80179E50 00176DB0 48 00 05 29 */ bl ValidateFPPosition__7CPlayerF9CVector3fR13CStateManager -/* 80179E54 00176DB4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80179E58 00176DB8 41 82 04 0C */ beq lbl_8017A264 -/* 80179E5C 00176DBC 57 80 06 3F */ clrlwi. r0, r28, 0x18 -/* 80179E60 00176DC0 41 82 04 4C */ beq lbl_8017A2AC -/* 80179E64 00176DC4 EC 13 07 F2 */ fmuls f0, f19, f31 -/* 80179E68 00176DC8 38 61 00 F4 */ addi r3, r1, 0xf4 -/* 80179E6C 00176DCC 38 81 00 14 */ addi r4, r1, 0x14 -/* 80179E70 00176DD0 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 80179E74 00176DD4 48 19 72 85 */ bl ZRotation__11CQuaternionFRC9CRelAngle -/* 80179E78 00176DD8 C0 61 00 F4 */ lfs f3, 0xf4(r1) -/* 80179E7C 00176DDC C0 41 00 F8 */ lfs f2, 0xf8(r1) -/* 80179E80 00176DE0 C0 21 00 FC */ lfs f1, 0xfc(r1) -/* 80179E84 00176DE4 C0 01 01 00 */ lfs f0, 0x100(r1) -/* 80179E88 00176DE8 D0 61 01 90 */ stfs f3, 0x190(r1) -/* 80179E8C 00176DEC D0 41 01 94 */ stfs f2, 0x194(r1) -/* 80179E90 00176DF0 D0 21 01 98 */ stfs f1, 0x198(r1) -/* 80179E94 00176DF4 D0 01 01 9C */ stfs f0, 0x19c(r1) -/* 80179E98 00176DF8 88 1F 01 2C */ lbz r0, 0x12c(r31) -/* 80179E9C 00176DFC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80179EA0 00176E00 41 82 01 84 */ beq lbl_8017A024 -/* 80179EA4 00176E04 88 1D 09 C6 */ lbz r0, 0x9c6(r29) -/* 80179EA8 00176E08 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f -/* 80179EAC 00176E0C 41 82 01 78 */ beq lbl_8017A024 -/* 80179EB0 00176E10 C0 5D 00 58 */ lfs f2, 0x58(r29) -/* 80179EB4 00176E14 38 61 00 E8 */ addi r3, r1, 0xe8 -/* 80179EB8 00176E18 C0 3D 00 48 */ lfs f1, 0x48(r29) -/* 80179EBC 00176E1C 38 81 00 DC */ addi r4, r1, 0xdc -/* 80179EC0 00176E20 C0 1D 00 38 */ lfs f0, 0x38(r29) -/* 80179EC4 00176E24 D0 01 01 84 */ stfs f0, 0x184(r1) -/* 80179EC8 00176E28 D0 21 01 88 */ stfs f1, 0x188(r1) -/* 80179ECC 00176E2C D0 41 01 8C */ stfs f2, 0x18c(r1) -/* 80179ED0 00176E30 C0 5F 00 58 */ lfs f2, 0x58(r31) -/* 80179ED4 00176E34 C0 3F 00 48 */ lfs f1, 0x48(r31) -/* 80179ED8 00176E38 C0 1F 00 38 */ lfs f0, 0x38(r31) -/* 80179EDC 00176E3C D0 01 00 DC */ stfs f0, 0xdc(r1) -/* 80179EE0 00176E40 D0 21 00 E0 */ stfs f1, 0xe0(r1) -/* 80179EE4 00176E44 D0 41 00 E4 */ stfs f2, 0xe4(r1) -/* 80179EE8 00176E48 48 19 A9 69 */ bl AsNormalized__9CVector3fCFv -/* 80179EEC 00176E4C C0 41 00 E8 */ lfs f2, 0xe8(r1) -/* 80179EF0 00176E50 38 61 00 D0 */ addi r3, r1, 0xd0 -/* 80179EF4 00176E54 C0 21 00 EC */ lfs f1, 0xec(r1) -/* 80179EF8 00176E58 38 81 01 84 */ addi r4, r1, 0x184 -/* 80179EFC 00176E5C C0 01 00 F0 */ lfs f0, 0xf0(r1) -/* 80179F00 00176E60 D0 41 01 78 */ stfs f2, 0x178(r1) -/* 80179F04 00176E64 D0 21 01 7C */ stfs f1, 0x17c(r1) -/* 80179F08 00176E68 D0 01 01 80 */ stfs f0, 0x180(r1) -/* 80179F0C 00176E6C 48 19 A9 45 */ bl AsNormalized__9CVector3fCFv -/* 80179F10 00176E70 C0 21 00 D4 */ lfs f1, 0xd4(r1) -/* 80179F14 00176E74 C0 01 01 7C */ lfs f0, 0x17c(r1) -/* 80179F18 00176E78 C0 41 00 D0 */ lfs f2, 0xd0(r1) -/* 80179F1C 00176E7C EC 01 00 32 */ fmuls f0, f1, f0 -/* 80179F20 00176E80 C0 21 01 78 */ lfs f1, 0x178(r1) -/* 80179F24 00176E84 C0 81 00 D8 */ lfs f4, 0xd8(r1) -/* 80179F28 00176E88 C0 61 01 80 */ lfs f3, 0x180(r1) -/* 80179F2C 00176E8C EC 22 00 7A */ fmadds f1, f2, f1, f0 -/* 80179F30 00176E90 C8 02 A2 40 */ lfd f0, lbl_805ABF60@sda21(r2) -/* 80179F34 00176E94 EC 84 08 FA */ fmadds f4, f4, f3, f1 -/* 80179F38 00176E98 FC 20 22 10 */ fabs f1, f4 -/* 80179F3C 00176E9C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80179F40 00176EA0 40 81 00 14 */ ble lbl_80179F54 -/* 80179F44 00176EA4 C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) -/* 80179F48 00176EA8 C0 22 A2 4C */ lfs f1, lbl_805ABF6C@sda21(r2) -/* 80179F4C 00176EAC FC 04 00 6E */ fsel f0, f4, f1, f0 -/* 80179F50 00176EB0 EC 81 00 32 */ fmuls f4, f1, f0 -lbl_80179F54: -/* 80179F54 00176EB4 FC 00 22 10 */ fabs f0, f4 -/* 80179F58 00176EB8 C0 42 A2 4C */ lfs f2, lbl_805ABF6C@sda21(r2) -/* 80179F5C 00176EBC FC 20 20 90 */ fmr f1, f4 -/* 80179F60 00176EC0 FC 00 00 18 */ frsp f0, f0 -/* 80179F64 00176EC4 FC 02 00 00 */ fcmpu cr0, f2, f0 -/* 80179F68 00176EC8 40 82 00 14 */ bne lbl_80179F7C -/* 80179F6C 00176ECC 88 1D 09 C6 */ lbz r0, 0x9c6(r29) -/* 80179F70 00176ED0 38 60 00 00 */ li r3, 0 -/* 80179F74 00176ED4 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 80179F78 00176ED8 98 1D 09 C6 */ stb r0, 0x9c6(r29) -lbl_80179F7C: -/* 80179F7C 00176EDC C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 80179F80 00176EE0 FC 04 00 40 */ fcmpo cr0, f4, f0 -/* 80179F84 00176EE4 40 80 00 2C */ bge lbl_80179FB0 -/* 80179F88 00176EE8 C0 61 01 80 */ lfs f3, 0x180(r1) -/* 80179F8C 00176EEC FC 20 20 50 */ fneg f1, f4 -/* 80179F90 00176EF0 C0 41 01 7C */ lfs f2, 0x17c(r1) -/* 80179F94 00176EF4 C0 01 01 78 */ lfs f0, 0x178(r1) -/* 80179F98 00176EF8 FC 60 18 50 */ fneg f3, f3 -/* 80179F9C 00176EFC FC 40 10 50 */ fneg f2, f2 -/* 80179FA0 00176F00 FC 00 00 50 */ fneg f0, f0 -/* 80179FA4 00176F04 D0 61 01 80 */ stfs f3, 0x180(r1) -/* 80179FA8 00176F08 D0 01 01 78 */ stfs f0, 0x178(r1) -/* 80179FAC 00176F0C D0 41 01 7C */ stfs f2, 0x17c(r1) -lbl_80179FB0: -/* 80179FB0 00176F10 48 21 AC 7D */ bl acos -/* 80179FB4 00176F14 FC 00 08 18 */ frsp f0, f1 -/* 80179FB8 00176F18 C0 22 A2 30 */ lfs f1, lbl_805ABF50@sda21(r2) -/* 80179FBC 00176F1C 38 61 00 9C */ addi r3, r1, 0x9c -/* 80179FC0 00176F20 38 81 01 78 */ addi r4, r1, 0x178 -/* 80179FC4 00176F24 D0 21 01 8C */ stfs f1, 0x18c(r1) -/* 80179FC8 00176F28 EC 00 07 F2 */ fmuls f0, f0, f31 -/* 80179FCC 00176F2C D0 01 00 10 */ stfs f0, 0x10(r1) -/* 80179FD0 00176F30 48 19 9E 01 */ bl __ct__11CUnitVectorFRC9CVector3f -/* 80179FD4 00176F34 7C 7F 1B 78 */ mr r31, r3 -/* 80179FD8 00176F38 38 61 00 A8 */ addi r3, r1, 0xa8 -/* 80179FDC 00176F3C 38 81 01 84 */ addi r4, r1, 0x184 -/* 80179FE0 00176F40 48 19 A8 71 */ bl AsNormalized__9CVector3fCFv -/* 80179FE4 00176F44 38 61 00 B4 */ addi r3, r1, 0xb4 -/* 80179FE8 00176F48 38 81 00 A8 */ addi r4, r1, 0xa8 -/* 80179FEC 00176F4C 48 19 9D E5 */ bl __ct__11CUnitVectorFRC9CVector3f -/* 80179FF0 00176F50 7C 64 1B 78 */ mr r4, r3 -/* 80179FF4 00176F54 7F E5 FB 78 */ mr r5, r31 -/* 80179FF8 00176F58 38 61 00 C0 */ addi r3, r1, 0xc0 -/* 80179FFC 00176F5C 38 C1 00 10 */ addi r6, r1, 0x10 -/* 8017A000 00176F60 48 19 76 95 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle -/* 8017A004 00176F64 C0 01 00 C0 */ lfs f0, 0xc0(r1) -/* 8017A008 00176F68 80 81 00 C4 */ lwz r4, 0xc4(r1) -/* 8017A00C 00176F6C 80 61 00 C8 */ lwz r3, 0xc8(r1) -/* 8017A010 00176F70 80 01 00 CC */ lwz r0, 0xcc(r1) -/* 8017A014 00176F74 D0 01 01 90 */ stfs f0, 0x190(r1) -/* 8017A018 00176F78 90 81 01 94 */ stw r4, 0x194(r1) -/* 8017A01C 00176F7C 90 61 01 98 */ stw r3, 0x198(r1) -/* 8017A020 00176F80 90 01 01 9C */ stw r0, 0x19c(r1) -lbl_8017A024: -/* 8017A024 00176F84 C0 21 01 B8 */ lfs f1, 0x1b8(r1) -/* 8017A028 00176F88 C0 01 01 BC */ lfs f0, 0x1bc(r1) -/* 8017A02C 00176F8C EC 41 00 72 */ fmuls f2, f1, f1 -/* 8017A030 00176F90 C0 61 01 C0 */ lfs f3, 0x1c0(r1) -/* 8017A034 00176F94 EC 20 00 32 */ fmuls f1, f0, f0 -/* 8017A038 00176F98 C0 02 A2 74 */ lfs f0, lbl_805ABF94@sda21(r2) -/* 8017A03C 00176F9C EC 63 00 F2 */ fmuls f3, f3, f3 -/* 8017A040 00176FA0 EC 22 08 2A */ fadds f1, f2, f1 -/* 8017A044 00176FA4 EC 23 08 2A */ fadds f1, f3, f1 -/* 8017A048 00176FA8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017A04C 00176FAC 40 81 00 A8 */ ble lbl_8017A0F4 -/* 8017A050 00176FB0 EC 1B D8 28 */ fsubs f0, f27, f27 -/* 8017A054 00176FB4 D2 A1 01 6C */ stfs f21, 0x16c(r1) -/* 8017A058 00176FB8 38 61 00 90 */ addi r3, r1, 0x90 -/* 8017A05C 00176FBC 38 81 01 90 */ addi r4, r1, 0x190 -/* 8017A060 00176FC0 D2 81 01 70 */ stfs f20, 0x170(r1) -/* 8017A064 00176FC4 38 A1 01 6C */ addi r5, r1, 0x16c -/* 8017A068 00176FC8 D0 01 01 74 */ stfs f0, 0x174(r1) -/* 8017A06C 00176FCC 48 19 71 F9 */ bl Transform__11CQuaternionCFRC9CVector3f -/* 8017A070 00176FD0 C0 41 00 98 */ lfs f2, 0x98(r1) -/* 8017A074 00176FD4 38 61 01 60 */ addi r3, r1, 0x160 -/* 8017A078 00176FD8 C0 21 00 90 */ lfs f1, 0x90(r1) -/* 8017A07C 00176FDC C0 01 00 94 */ lfs f0, 0x94(r1) -/* 8017A080 00176FE0 EC 5B 10 2A */ fadds f2, f27, f2 -/* 8017A084 00176FE4 EC 3A 08 2A */ fadds f1, f26, f1 -/* 8017A088 00176FE8 EC 19 00 2A */ fadds f0, f25, f0 -/* 8017A08C 00176FEC EC 42 D8 28 */ fsubs f2, f2, f27 -/* 8017A090 00176FF0 EC 21 E8 28 */ fsubs f1, f1, f29 -/* 8017A094 00176FF4 EC 00 E0 28 */ fsubs f0, f0, f28 -/* 8017A098 00176FF8 D0 41 01 68 */ stfs f2, 0x168(r1) -/* 8017A09C 00176FFC D0 21 01 60 */ stfs f1, 0x160(r1) -/* 8017A0A0 00177000 D0 01 01 64 */ stfs f0, 0x164(r1) -/* 8017A0A4 00177004 48 19 A6 55 */ bl CanBeNormalized__9CVector3fCFv -/* 8017A0A8 00177008 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017A0AC 0017700C 41 82 00 48 */ beq lbl_8017A0F4 -/* 8017A0B0 00177010 C0 02 A2 4C */ lfs f0, lbl_805ABF6C@sda21(r2) -/* 8017A0B4 00177014 C0 A1 01 60 */ lfs f5, 0x160(r1) -/* 8017A0B8 00177018 EC C0 F8 24 */ fdivs f6, f0, f31 -/* 8017A0BC 0017701C C0 81 01 64 */ lfs f4, 0x164(r1) -/* 8017A0C0 00177020 C0 61 01 68 */ lfs f3, 0x168(r1) -/* 8017A0C4 00177024 C0 41 01 AC */ lfs f2, 0x1ac(r1) -/* 8017A0C8 00177028 C0 21 01 B0 */ lfs f1, 0x1b0(r1) -/* 8017A0CC 0017702C C0 01 01 B4 */ lfs f0, 0x1b4(r1) -/* 8017A0D0 00177030 EC A6 01 72 */ fmuls f5, f6, f5 -/* 8017A0D4 00177034 EC 86 01 32 */ fmuls f4, f6, f4 -/* 8017A0D8 00177038 EC 66 00 F2 */ fmuls f3, f6, f3 -/* 8017A0DC 0017703C EC 42 28 2A */ fadds f2, f2, f5 -/* 8017A0E0 00177040 EC 21 20 2A */ fadds f1, f1, f4 -/* 8017A0E4 00177044 EC 00 18 2A */ fadds f0, f0, f3 -/* 8017A0E8 00177048 D0 41 01 AC */ stfs f2, 0x1ac(r1) -/* 8017A0EC 0017704C D0 21 01 B0 */ stfs f1, 0x1b0(r1) -/* 8017A0F0 00177050 D0 01 01 B4 */ stfs f0, 0x1b4(r1) -lbl_8017A0F4: -/* 8017A0F4 00177054 C2 5D 03 C0 */ lfs f18, 0x3c0(r29) -/* 8017A0F8 00177058 38 61 00 84 */ addi r3, r1, 0x84 -/* 8017A0FC 0017705C C2 7D 03 C4 */ lfs f19, 0x3c4(r29) -/* 8017A100 00177060 38 81 01 90 */ addi r4, r1, 0x190 -/* 8017A104 00177064 C2 9D 03 C8 */ lfs f20, 0x3c8(r29) -/* 8017A108 00177068 38 BD 03 C0 */ addi r5, r29, 0x3c0 -/* 8017A10C 0017706C 48 19 71 59 */ bl Transform__11CQuaternionCFRC9CVector3f -/* 8017A110 00177070 C0 01 00 84 */ lfs f0, 0x84(r1) -/* 8017A114 00177074 38 7D 03 C0 */ addi r3, r29, 0x3c0 -/* 8017A118 00177078 D0 1D 03 C0 */ stfs f0, 0x3c0(r29) -/* 8017A11C 0017707C C0 01 00 88 */ lfs f0, 0x88(r1) -/* 8017A120 00177080 D0 1D 03 C4 */ stfs f0, 0x3c4(r29) -/* 8017A124 00177084 C0 01 00 8C */ lfs f0, 0x8c(r1) -/* 8017A128 00177088 D0 1D 03 C8 */ stfs f0, 0x3c8(r29) -/* 8017A12C 0017708C 48 19 A7 CD */ bl Normalize__9CVector3fFv -/* 8017A130 00177090 C0 1D 03 C4 */ lfs f0, 0x3c4(r29) -/* 8017A134 00177094 38 61 02 0C */ addi r3, r1, 0x20c -/* 8017A138 00177098 C0 7D 03 C0 */ lfs f3, 0x3c0(r29) -/* 8017A13C 0017709C 38 9D 03 C0 */ addi r4, r29, 0x3c0 -/* 8017A140 001770A0 FC 20 00 50 */ fneg f1, f0 -/* 8017A144 001770A4 C0 42 A2 30 */ lfs f2, lbl_805ABF50@sda21(r2) -/* 8017A148 001770A8 D0 61 01 58 */ stfs f3, 0x158(r1) -/* 8017A14C 001770AC 38 A1 01 54 */ addi r5, r1, 0x154 -/* 8017A150 001770B0 C0 02 A2 4C */ lfs f0, lbl_805ABF6C@sda21(r2) -/* 8017A154 001770B4 38 C1 00 78 */ addi r6, r1, 0x78 -/* 8017A158 001770B8 D0 21 01 54 */ stfs f1, 0x154(r1) -/* 8017A15C 001770BC 38 E1 00 6C */ addi r7, r1, 0x6c -/* 8017A160 001770C0 D0 41 01 5C */ stfs f2, 0x15c(r1) -/* 8017A164 001770C4 C0 9D 00 60 */ lfs f4, 0x60(r29) -/* 8017A168 001770C8 C0 7D 00 50 */ lfs f3, 0x50(r29) -/* 8017A16C 001770CC C0 3D 00 40 */ lfs f1, 0x40(r29) -/* 8017A170 001770D0 D0 21 00 6C */ stfs f1, 0x6c(r1) -/* 8017A174 001770D4 D0 61 00 70 */ stfs f3, 0x70(r1) -/* 8017A178 001770D8 D0 81 00 74 */ stfs f4, 0x74(r1) -/* 8017A17C 001770DC D0 41 00 78 */ stfs f2, 0x78(r1) -/* 8017A180 001770E0 D0 41 00 7C */ stfs f2, 0x7c(r1) -/* 8017A184 001770E4 D0 01 00 80 */ stfs f0, 0x80(r1) -/* 8017A188 001770E8 48 19 8C D5 */ bl __ct__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3fRC9CVector3f_0 -/* 8017A18C 001770EC 38 7D 00 34 */ addi r3, r29, 0x34 -/* 8017A190 001770F0 38 81 02 0C */ addi r4, r1, 0x20c -/* 8017A194 001770F4 48 19 89 AD */ bl __as__12CTransform4fFRC12CTransform4f -/* 8017A198 001770F8 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 8017A19C 001770FC 38 A0 00 01 */ li r5, 1 -/* 8017A1A0 00177100 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b -/* 8017A1A4 00177104 7F A3 EB 78 */ mr r3, r29 -/* 8017A1A8 00177108 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 8017A1AC 0017710C 38 81 01 AC */ addi r4, r1, 0x1ac -/* 8017A1B0 00177110 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 8017A1B4 00177114 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c -/* 8017A1B8 00177118 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 8017A1BC 0017711C 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 8017A1C0 00177120 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d -/* 8017A1C4 00177124 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 8017A1C8 00177128 4B FA 0A D9 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -/* 8017A1CC 0017712C C0 5D 00 40 */ lfs f2, 0x40(r29) -/* 8017A1D0 00177130 7F A3 EB 78 */ mr r3, r29 -/* 8017A1D4 00177134 C0 3D 00 50 */ lfs f1, 0x50(r29) -/* 8017A1D8 00177138 7F C5 F3 78 */ mr r5, r30 -/* 8017A1DC 0017713C C0 1D 00 60 */ lfs f0, 0x60(r29) -/* 8017A1E0 00177140 38 81 00 60 */ addi r4, r1, 0x60 -/* 8017A1E4 00177144 D0 41 00 54 */ stfs f2, 0x54(r1) -/* 8017A1E8 00177148 D0 21 00 58 */ stfs f1, 0x58(r1) -/* 8017A1EC 0017714C 80 E1 00 54 */ lwz r7, 0x54(r1) -/* 8017A1F0 00177150 D0 01 00 5C */ stfs f0, 0x5c(r1) -/* 8017A1F4 00177154 80 C1 00 58 */ lwz r6, 0x58(r1) -/* 8017A1F8 00177158 80 01 00 5C */ lwz r0, 0x5c(r1) -/* 8017A1FC 0017715C 90 E1 00 60 */ stw r7, 0x60(r1) -/* 8017A200 00177160 90 C1 00 64 */ stw r6, 0x64(r1) -/* 8017A204 00177164 90 01 00 68 */ stw r0, 0x68(r1) -/* 8017A208 00177168 48 00 01 71 */ bl ValidateFPPosition__7CPlayerF9CVector3fR13CStateManager -/* 8017A20C 0017716C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017A210 00177170 40 82 00 9C */ bne lbl_8017A2AC -/* 8017A214 00177174 D2 5D 03 C0 */ stfs f18, 0x3c0(r29) -/* 8017A218 00177178 38 7D 00 34 */ addi r3, r29, 0x34 -/* 8017A21C 0017717C 38 81 02 A4 */ addi r4, r1, 0x2a4 -/* 8017A220 00177180 D2 7D 03 C4 */ stfs f19, 0x3c4(r29) -/* 8017A224 00177184 D2 9D 03 C8 */ stfs f20, 0x3c8(r29) -/* 8017A228 00177188 48 19 89 19 */ bl __as__12CTransform4fFRC12CTransform4f -/* 8017A22C 0017718C 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 8017A230 00177190 38 A0 00 01 */ li r5, 1 -/* 8017A234 00177194 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b -/* 8017A238 00177198 7F A3 EB 78 */ mr r3, r29 -/* 8017A23C 0017719C 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 8017A240 001771A0 38 81 01 A0 */ addi r4, r1, 0x1a0 -/* 8017A244 001771A4 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 8017A248 001771A8 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c -/* 8017A24C 001771AC 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 8017A250 001771B0 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 8017A254 001771B4 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d -/* 8017A258 001771B8 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 8017A25C 001771BC 4B FA 0A 45 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -/* 8017A260 001771C0 48 00 00 4C */ b lbl_8017A2AC -lbl_8017A264: -/* 8017A264 001771C4 7F A3 EB 78 */ mr r3, r29 -/* 8017A268 001771C8 7F C5 F3 78 */ mr r5, r30 -/* 8017A26C 001771CC 38 80 00 06 */ li r4, 6 -/* 8017A270 001771D0 48 00 0E 55 */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager -/* 8017A274 001771D4 48 00 00 38 */ b lbl_8017A2AC -lbl_8017A278: -/* 8017A278 001771D8 C2 5D 00 E8 */ lfs f18, 0xe8(r29) -/* 8017A27C 001771DC 7F A3 EB 78 */ mr r3, r29 -/* 8017A280 001771E0 48 10 E0 DD */ bl GetGravity__7CPlayerCFv -/* 8017A284 001771E4 EC 21 04 B2 */ fmuls f1, f1, f18 -/* 8017A288 001771E8 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017A28C 001771EC D0 01 00 48 */ stfs f0, 0x48(r1) -/* 8017A290 001771F0 D0 01 00 4C */ stfs f0, 0x4c(r1) -/* 8017A294 001771F4 D0 21 00 50 */ stfs f1, 0x50(r1) -/* 8017A298 001771F8 4B EA 12 9D */ bl Identity__10CAxisAngleFv -/* 8017A29C 001771FC 7C 65 1B 78 */ mr r5, r3 -/* 8017A2A0 00177200 7F A3 EB 78 */ mr r3, r29 -/* 8017A2A4 00177204 38 81 00 48 */ addi r4, r1, 0x48 -/* 8017A2A8 00177208 4B FA 1E 9D */ bl ApplyForceOR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle -lbl_8017A2AC: -/* 8017A2AC 0017720C 7F A4 EB 78 */ mr r4, r29 -/* 8017A2B0 00177210 38 61 00 24 */ addi r3, r1, 0x24 -/* 8017A2B4 00177214 4B FA 08 F1 */ bl GetAngularVelocityOR__13CPhysicsActorCFv -/* 8017A2B8 00177218 38 61 00 24 */ addi r3, r1, 0x24 -/* 8017A2BC 0017721C 4B EA 12 75 */ bl GetVector__10CAxisAngleCFv -/* 8017A2C0 00177220 C0 43 00 08 */ lfs f2, 8(r3) -/* 8017A2C4 00177224 38 61 00 3C */ addi r3, r1, 0x3c -/* 8017A2C8 00177228 C0 02 A2 78 */ lfs f0, lbl_805ABF98@sda21(r2) -/* 8017A2CC 0017722C 38 81 00 30 */ addi r4, r1, 0x30 -/* 8017A2D0 00177230 C0 22 A2 30 */ lfs f1, lbl_805ABF50@sda21(r2) -/* 8017A2D4 00177234 EC 00 00 B2 */ fmuls f0, f0, f2 -/* 8017A2D8 00177238 D0 21 00 30 */ stfs f1, 0x30(r1) -/* 8017A2DC 0017723C D0 21 00 34 */ stfs f1, 0x34(r1) -/* 8017A2E0 00177240 D0 01 00 38 */ stfs f0, 0x38(r1) -/* 8017A2E4 00177244 4B EA 12 A1 */ bl __ct__10CAxisAngleFRC9CVector3f -/* 8017A2E8 00177248 7F A3 EB 78 */ mr r3, r29 -/* 8017A2EC 0017724C 38 81 00 3C */ addi r4, r1, 0x3c -/* 8017A2F0 00177250 4B FA 07 ED */ bl SetAngularVelocityOR__13CPhysicsActorFRC10CAxisAngle -/* 8017A2F4 00177254 E3 E1 03 C8 */ psq_l f31, 968(r1), 0, qr0 -/* 8017A2F8 00177258 CB E1 03 C0 */ lfd f31, 0x3c0(r1) -/* 8017A2FC 0017725C E3 C1 03 B8 */ psq_l f30, 952(r1), 0, qr0 -/* 8017A300 00177260 CB C1 03 B0 */ lfd f30, 0x3b0(r1) -/* 8017A304 00177264 E3 A1 03 A8 */ psq_l f29, 936(r1), 0, qr0 -/* 8017A308 00177268 CB A1 03 A0 */ lfd f29, 0x3a0(r1) -/* 8017A30C 0017726C E3 81 03 98 */ psq_l f28, 920(r1), 0, qr0 -/* 8017A310 00177270 CB 81 03 90 */ lfd f28, 0x390(r1) -/* 8017A314 00177274 E3 61 03 88 */ psq_l f27, 904(r1), 0, qr0 -/* 8017A318 00177278 CB 61 03 80 */ lfd f27, 0x380(r1) -/* 8017A31C 0017727C E3 41 03 78 */ psq_l f26, 888(r1), 0, qr0 -/* 8017A320 00177280 CB 41 03 70 */ lfd f26, 0x370(r1) -/* 8017A324 00177284 E3 21 03 68 */ psq_l f25, 872(r1), 0, qr0 -/* 8017A328 00177288 CB 21 03 60 */ lfd f25, 0x360(r1) -/* 8017A32C 0017728C E3 01 03 58 */ psq_l f24, 856(r1), 0, qr0 -/* 8017A330 00177290 CB 01 03 50 */ lfd f24, 0x350(r1) -/* 8017A334 00177294 E2 E1 03 48 */ psq_l f23, 840(r1), 0, qr0 -/* 8017A338 00177298 CA E1 03 40 */ lfd f23, 0x340(r1) -/* 8017A33C 0017729C E2 C1 03 38 */ psq_l f22, 824(r1), 0, qr0 -/* 8017A340 001772A0 CA C1 03 30 */ lfd f22, 0x330(r1) -/* 8017A344 001772A4 E2 A1 03 28 */ psq_l f21, 808(r1), 0, qr0 -/* 8017A348 001772A8 CA A1 03 20 */ lfd f21, 0x320(r1) -/* 8017A34C 001772AC E2 81 03 18 */ psq_l f20, 792(r1), 0, qr0 -/* 8017A350 001772B0 CA 81 03 10 */ lfd f20, 0x310(r1) -/* 8017A354 001772B4 E2 61 03 08 */ psq_l f19, 776(r1), 0, qr0 -/* 8017A358 001772B8 CA 61 03 00 */ lfd f19, 0x300(r1) -/* 8017A35C 001772BC E2 41 02 F8 */ psq_l f18, 760(r1), 0, qr0 -/* 8017A360 001772C0 CA 41 02 F0 */ lfd f18, 0x2f0(r1) -/* 8017A364 001772C4 BB 61 02 DC */ lmw r27, 0x2dc(r1) -/* 8017A368 001772C8 80 01 03 D4 */ lwz r0, 0x3d4(r1) -/* 8017A36C 001772CC 7C 08 03 A6 */ mtlr r0 -/* 8017A370 001772D0 38 21 03 D0 */ addi r1, r1, 0x3d0 -/* 8017A374 001772D4 4E 80 00 20 */ blr - -.global ValidateFPPosition__7CPlayerF9CVector3fR13CStateManager -ValidateFPPosition__7CPlayerF9CVector3fR13CStateManager: -/* 8017A378 001772D8 94 21 F7 00 */ stwu r1, -0x900(r1) -/* 8017A37C 001772DC 7C 08 02 A6 */ mflr r0 -/* 8017A380 001772E0 90 01 09 04 */ stw r0, 0x904(r1) -/* 8017A384 001772E4 38 00 00 00 */ li r0, 0 -/* 8017A388 001772E8 93 E1 08 FC */ stw r31, 0x8fc(r1) -/* 8017A38C 001772EC 7C BF 2B 78 */ mr r31, r5 -/* 8017A390 001772F0 93 C1 08 F8 */ stw r30, 0x8f8(r1) -/* 8017A394 001772F4 7C 9E 23 78 */ mr r30, r4 -/* 8017A398 001772F8 38 80 00 01 */ li r4, 1 -/* 8017A39C 001772FC 93 A1 08 F4 */ stw r29, 0x8f4(r1) -/* 8017A3A0 00177300 7C 7D 1B 78 */ mr r29, r3 -/* 8017A3A4 00177304 38 60 00 00 */ li r3, 0 -/* 8017A3A8 00177308 80 CD 8E 7C */ lwz r6, lbl_805A7A3C@sda21(r13) -/* 8017A3AC 0017730C 90 01 00 E0 */ stw r0, 0xe0(r1) -/* 8017A3B0 00177310 7C C5 33 78 */ mr r5, r6 -/* 8017A3B4 00177314 48 20 FB 41 */ bl __shl2i -/* 8017A3B8 00177318 38 C0 00 01 */ li r6, 1 -/* 8017A3BC 0017731C 38 00 00 00 */ li r0, 0 -/* 8017A3C0 00177320 90 81 00 A4 */ stw r4, 0xa4(r1) -/* 8017A3C4 00177324 38 81 00 4C */ addi r4, r1, 0x4c -/* 8017A3C8 00177328 C0 C2 A2 4C */ lfs f6, lbl_805ABF6C@sda21(r2) -/* 8017A3CC 0017732C 38 A1 00 34 */ addi r5, r1, 0x34 -/* 8017A3D0 00177330 90 61 00 A0 */ stw r3, 0xa0(r1) -/* 8017A3D4 00177334 38 61 00 70 */ addi r3, r1, 0x70 -/* 8017A3D8 00177338 C0 9E 00 04 */ lfs f4, 4(r30) -/* 8017A3DC 0017733C 90 01 00 AC */ stw r0, 0xac(r1) -/* 8017A3E0 00177340 C0 7E 00 08 */ lfs f3, 8(r30) -/* 8017A3E4 00177344 90 01 00 A8 */ stw r0, 0xa8(r1) -/* 8017A3E8 00177348 C0 5E 00 00 */ lfs f2, 0(r30) -/* 8017A3EC 0017734C 90 C1 00 B0 */ stw r6, 0xb0(r1) -/* 8017A3F0 00177350 C0 1D 02 E8 */ lfs f0, 0x2e8(r29) -/* 8017A3F4 00177354 C0 3D 02 EC */ lfs f1, 0x2ec(r29) -/* 8017A3F8 00177358 EC E0 30 2A */ fadds f7, f0, f6 -/* 8017A3FC 0017735C C0 1D 02 E4 */ lfs f0, 0x2e4(r29) -/* 8017A400 00177360 ED 21 30 2A */ fadds f9, f1, f6 -/* 8017A404 00177364 90 C1 00 98 */ stw r6, 0x98(r1) -/* 8017A408 00177368 EC A0 30 2A */ fadds f5, f0, f6 -/* 8017A40C 0017736C ED 07 20 2A */ fadds f8, f7, f4 -/* 8017A410 00177370 EC 29 18 2A */ fadds f1, f9, f3 -/* 8017A414 00177374 D0 E1 00 2C */ stfs f7, 0x2c(r1) -/* 8017A418 00177378 EC 05 10 2A */ fadds f0, f5, f2 -/* 8017A41C 0017737C D1 01 00 38 */ stfs f8, 0x38(r1) -/* 8017A420 00177380 D0 01 00 34 */ stfs f0, 0x34(r1) -/* 8017A424 00177384 D0 21 00 3C */ stfs f1, 0x3c(r1) -/* 8017A428 00177388 C0 1D 02 DC */ lfs f0, 0x2dc(r29) -/* 8017A42C 0017738C C0 3D 02 E0 */ lfs f1, 0x2e0(r29) -/* 8017A430 00177390 ED 00 30 28 */ fsubs f8, f0, f6 -/* 8017A434 00177394 C0 1D 02 D8 */ lfs f0, 0x2d8(r29) -/* 8017A438 00177398 EC E1 30 28 */ fsubs f7, f1, f6 -/* 8017A43C 0017739C D0 A1 00 28 */ stfs f5, 0x28(r1) -/* 8017A440 001773A0 EC 20 30 28 */ fsubs f1, f0, f6 -/* 8017A444 001773A4 EC 88 20 2A */ fadds f4, f8, f4 -/* 8017A448 001773A8 EC 67 18 2A */ fadds f3, f7, f3 -/* 8017A44C 001773AC D1 21 00 30 */ stfs f9, 0x30(r1) -/* 8017A450 001773B0 EC 01 10 2A */ fadds f0, f1, f2 -/* 8017A454 001773B4 D0 21 00 40 */ stfs f1, 0x40(r1) -/* 8017A458 001773B8 D1 01 00 44 */ stfs f8, 0x44(r1) -/* 8017A45C 001773BC D0 E1 00 48 */ stfs f7, 0x48(r1) -/* 8017A460 001773C0 D0 01 00 4C */ stfs f0, 0x4c(r1) -/* 8017A464 001773C4 D0 81 00 50 */ stfs f4, 0x50(r1) -/* 8017A468 001773C8 D0 61 00 54 */ stfs f3, 0x54(r1) -/* 8017A46C 001773CC 48 1B E0 9D */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 8017A470 001773D0 7C 66 1B 78 */ mr r6, r3 -/* 8017A474 001773D4 7F E3 FB 78 */ mr r3, r31 -/* 8017A478 001773D8 7F A5 EB 78 */ mr r5, r29 -/* 8017A47C 001773DC 38 81 00 E0 */ addi r4, r1, 0xe0 -/* 8017A480 001773E0 4B ED 22 7D */ bl "BuildColliderList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CActorRC6CAABox" -/* 8017A484 001773E4 7F A3 EB 78 */ mr r3, r29 -/* 8017A488 001773E8 4B FA 05 39 */ bl GetBaseBoundingBox__13CPhysicsActorCFv -/* 8017A48C 001773EC 38 00 00 00 */ li r0, 0 -/* 8017A490 001773F0 C0 BE 00 04 */ lfs f5, 4(r30) -/* 8017A494 001773F4 90 01 00 0C */ stw r0, 0xc(r1) -/* 8017A498 001773F8 38 81 00 1C */ addi r4, r1, 0x1c -/* 8017A49C 001773FC C0 9E 00 08 */ lfs f4, 8(r30) -/* 8017A4A0 00177400 38 A1 00 10 */ addi r5, r1, 0x10 -/* 8017A4A4 00177404 90 01 00 08 */ stw r0, 8(r1) -/* 8017A4A8 00177408 C0 7E 00 00 */ lfs f3, 0(r30) -/* 8017A4AC 0017740C C0 43 00 10 */ lfs f2, 0x10(r3) -/* 8017A4B0 00177410 C0 23 00 14 */ lfs f1, 0x14(r3) -/* 8017A4B4 00177414 C0 03 00 0C */ lfs f0, 0xc(r3) -/* 8017A4B8 00177418 EC 42 28 2A */ fadds f2, f2, f5 -/* 8017A4BC 0017741C EC 21 20 2A */ fadds f1, f1, f4 -/* 8017A4C0 00177420 EC 00 18 2A */ fadds f0, f0, f3 -/* 8017A4C4 00177424 D0 41 00 14 */ stfs f2, 0x14(r1) -/* 8017A4C8 00177428 D0 01 00 10 */ stfs f0, 0x10(r1) -/* 8017A4CC 0017742C D0 21 00 18 */ stfs f1, 0x18(r1) -/* 8017A4D0 00177430 C0 43 00 04 */ lfs f2, 4(r3) -/* 8017A4D4 00177434 C0 23 00 08 */ lfs f1, 8(r3) -/* 8017A4D8 00177438 C0 03 00 00 */ lfs f0, 0(r3) -/* 8017A4DC 0017743C EC 42 28 2A */ fadds f2, f2, f5 -/* 8017A4E0 00177440 EC 21 20 2A */ fadds f1, f1, f4 -/* 8017A4E4 00177444 38 61 00 58 */ addi r3, r1, 0x58 -/* 8017A4E8 00177448 EC 00 18 2A */ fadds f0, f0, f3 -/* 8017A4EC 0017744C D0 41 00 20 */ stfs f2, 0x20(r1) -/* 8017A4F0 00177450 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 8017A4F4 00177454 D0 21 00 24 */ stfs f1, 0x24(r1) -/* 8017A4F8 00177458 48 1B E0 11 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 8017A4FC 0017745C 38 61 00 B8 */ addi r3, r1, 0xb8 -/* 8017A500 00177460 38 81 00 08 */ addi r4, r1, 8 -/* 8017A504 00177464 48 15 53 B1 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList -/* 8017A508 00177468 C0 A1 00 58 */ lfs f5, 0x58(r1) -/* 8017A50C 0017746C 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha -/* 8017A510 00177470 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l -/* 8017A514 00177474 C0 81 00 5C */ lfs f4, 0x5c(r1) -/* 8017A518 00177478 C0 61 00 60 */ lfs f3, 0x60(r1) -/* 8017A51C 0017747C 3C 60 80 5A */ lis r3, skIdentity4f@ha -/* 8017A520 00177480 C0 41 00 64 */ lfs f2, 0x64(r1) -/* 8017A524 00177484 38 A3 66 70 */ addi r5, r3, skIdentity4f@l -/* 8017A528 00177488 C0 21 00 68 */ lfs f1, 0x68(r1) -/* 8017A52C 0017748C 7F E3 FB 78 */ mr r3, r31 -/* 8017A530 00177490 C0 01 00 6C */ lfs f0, 0x6c(r1) -/* 8017A534 00177494 38 81 00 B8 */ addi r4, r1, 0xb8 -/* 8017A538 00177498 90 01 00 B8 */ stw r0, 0xb8(r1) -/* 8017A53C 0017749C 38 C1 00 A0 */ addi r6, r1, 0xa0 -/* 8017A540 001774A0 38 E1 00 E0 */ addi r7, r1, 0xe0 -/* 8017A544 001774A4 D0 A1 00 C8 */ stfs f5, 0xc8(r1) -/* 8017A548 001774A8 D0 81 00 CC */ stfs f4, 0xcc(r1) -/* 8017A54C 001774AC D0 61 00 D0 */ stfs f3, 0xd0(r1) -/* 8017A550 001774B0 D0 41 00 D4 */ stfs f2, 0xd4(r1) -/* 8017A554 001774B4 D0 21 00 D8 */ stfs f1, 0xd8(r1) -/* 8017A558 001774B8 D0 01 00 DC */ stfs f0, 0xdc(r1) -/* 8017A55C 001774BC 48 00 A0 B9 */ bl "DetectCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 8017A560 001774C0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017A564 001774C4 40 82 00 78 */ bne lbl_8017A5DC -/* 8017A568 001774C8 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha -/* 8017A56C 001774CC 80 A1 00 E0 */ lwz r5, 0xe0(r1) -/* 8017A570 001774D0 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l -/* 8017A574 001774D4 3C 60 80 3E */ lis r3, lbl_803D97E4@ha -/* 8017A578 001774D8 90 01 00 B8 */ stw r0, 0xb8(r1) -/* 8017A57C 001774DC 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l -/* 8017A580 001774E0 2C 05 00 00 */ cmpwi r5, 0 -/* 8017A584 001774E4 38 60 00 00 */ li r3, 0 -/* 8017A588 001774E8 90 01 00 B8 */ stw r0, 0xb8(r1) -/* 8017A58C 001774EC 40 81 00 40 */ ble lbl_8017A5CC -/* 8017A590 001774F0 2C 05 00 08 */ cmpwi r5, 8 -/* 8017A594 001774F4 38 85 FF F8 */ addi r4, r5, -8 -/* 8017A598 001774F8 40 81 00 20 */ ble lbl_8017A5B8 -/* 8017A59C 001774FC 38 04 00 07 */ addi r0, r4, 7 -/* 8017A5A0 00177500 54 00 E8 FE */ srwi r0, r0, 3 -/* 8017A5A4 00177504 7C 09 03 A6 */ mtctr r0 -/* 8017A5A8 00177508 2C 04 00 00 */ cmpwi r4, 0 -/* 8017A5AC 0017750C 40 81 00 0C */ ble lbl_8017A5B8 -lbl_8017A5B0: -/* 8017A5B0 00177510 38 63 00 08 */ addi r3, r3, 8 -/* 8017A5B4 00177514 42 00 FF FC */ bdnz lbl_8017A5B0 -lbl_8017A5B8: -/* 8017A5B8 00177518 7C 03 28 50 */ subf r0, r3, r5 -/* 8017A5BC 0017751C 7C 09 03 A6 */ mtctr r0 -/* 8017A5C0 00177520 7C 03 28 00 */ cmpw r3, r5 -/* 8017A5C4 00177524 40 80 00 08 */ bge lbl_8017A5CC -lbl_8017A5C8: -/* 8017A5C8 00177528 42 00 00 00 */ bdnz lbl_8017A5C8 -lbl_8017A5CC: -/* 8017A5CC 0017752C 38 00 00 00 */ li r0, 0 -/* 8017A5D0 00177530 38 60 00 01 */ li r3, 1 -/* 8017A5D4 00177534 90 01 00 E0 */ stw r0, 0xe0(r1) -/* 8017A5D8 00177538 48 00 00 74 */ b lbl_8017A64C -lbl_8017A5DC: -/* 8017A5DC 0017753C 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha -/* 8017A5E0 00177540 80 A1 00 E0 */ lwz r5, 0xe0(r1) -/* 8017A5E4 00177544 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l -/* 8017A5E8 00177548 3C 60 80 3E */ lis r3, lbl_803D97E4@ha -/* 8017A5EC 0017754C 90 01 00 B8 */ stw r0, 0xb8(r1) -/* 8017A5F0 00177550 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l -/* 8017A5F4 00177554 2C 05 00 00 */ cmpwi r5, 0 -/* 8017A5F8 00177558 38 60 00 00 */ li r3, 0 -/* 8017A5FC 0017755C 90 01 00 B8 */ stw r0, 0xb8(r1) -/* 8017A600 00177560 40 81 00 40 */ ble lbl_8017A640 -/* 8017A604 00177564 2C 05 00 08 */ cmpwi r5, 8 -/* 8017A608 00177568 38 85 FF F8 */ addi r4, r5, -8 -/* 8017A60C 0017756C 40 81 00 20 */ ble lbl_8017A62C -/* 8017A610 00177570 38 04 00 07 */ addi r0, r4, 7 -/* 8017A614 00177574 54 00 E8 FE */ srwi r0, r0, 3 -/* 8017A618 00177578 7C 09 03 A6 */ mtctr r0 -/* 8017A61C 0017757C 2C 04 00 00 */ cmpwi r4, 0 -/* 8017A620 00177580 40 81 00 0C */ ble lbl_8017A62C -lbl_8017A624: -/* 8017A624 00177584 38 63 00 08 */ addi r3, r3, 8 -/* 8017A628 00177588 42 00 FF FC */ bdnz lbl_8017A624 -lbl_8017A62C: -/* 8017A62C 0017758C 7C 03 28 50 */ subf r0, r3, r5 -/* 8017A630 00177590 7C 09 03 A6 */ mtctr r0 -/* 8017A634 00177594 7C 03 28 00 */ cmpw r3, r5 -/* 8017A638 00177598 40 80 00 08 */ bge lbl_8017A640 -lbl_8017A63C: -/* 8017A63C 0017759C 42 00 00 00 */ bdnz lbl_8017A63C -lbl_8017A640: -/* 8017A640 001775A0 38 00 00 00 */ li r0, 0 -/* 8017A644 001775A4 38 60 00 00 */ li r3, 0 -/* 8017A648 001775A8 90 01 00 E0 */ stw r0, 0xe0(r1) -lbl_8017A64C: -/* 8017A64C 001775AC 80 01 09 04 */ lwz r0, 0x904(r1) -/* 8017A650 001775B0 83 E1 08 FC */ lwz r31, 0x8fc(r1) -/* 8017A654 001775B4 83 C1 08 F8 */ lwz r30, 0x8f8(r1) -/* 8017A658 001775B8 83 A1 08 F4 */ lwz r29, 0x8f4(r1) -/* 8017A65C 001775BC 7C 08 03 A6 */ mtlr r0 -/* 8017A660 001775C0 38 21 09 00 */ addi r1, r1, 0x900 -/* 8017A664 001775C4 4E 80 00 20 */ blr - -.global UpdateGrappleState__7CPlayerFRC11CFinalInputR13CStateManager -UpdateGrappleState__7CPlayerFRC11CFinalInputR13CStateManager: -/* 8017A668 001775C8 94 21 FE E0 */ stwu r1, -0x120(r1) -/* 8017A66C 001775CC 7C 08 02 A6 */ mflr r0 -/* 8017A670 001775D0 90 01 01 24 */ stw r0, 0x124(r1) -/* 8017A674 001775D4 DB E1 01 10 */ stfd f31, 0x110(r1) -/* 8017A678 001775D8 F3 E1 01 18 */ psq_st f31, 280(r1), 0, qr0 -/* 8017A67C 001775DC 93 E1 01 0C */ stw r31, 0x10c(r1) -/* 8017A680 001775E0 93 C1 01 08 */ stw r30, 0x108(r1) -/* 8017A684 001775E4 93 A1 01 04 */ stw r29, 0x104(r1) -/* 8017A688 001775E8 93 81 01 00 */ stw r28, 0x100(r1) -/* 8017A68C 001775EC 7C BE 2B 78 */ mr r30, r5 -/* 8017A690 001775F0 7C 9D 23 78 */ mr r29, r4 -/* 8017A694 001775F4 80 A5 08 B8 */ lwz r5, 0x8b8(r5) -/* 8017A698 001775F8 7C 7C 1B 78 */ mr r28, r3 -/* 8017A69C 001775FC 38 80 00 0C */ li r4, 0xc -/* 8017A6A0 00177600 80 65 00 00 */ lwz r3, 0(r5) -/* 8017A6A4 00177604 4B F1 74 1D */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType -/* 8017A6A8 00177608 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017A6AC 0017760C 41 82 07 18 */ beq lbl_8017ADC4 -/* 8017A6B0 00177610 80 1C 02 F8 */ lwz r0, 0x2f8(r28) -/* 8017A6B4 00177614 2C 00 00 01 */ cmpwi r0, 1 -/* 8017A6B8 00177618 41 82 07 0C */ beq lbl_8017ADC4 -/* 8017A6BC 0017761C 80 7E 08 B8 */ lwz r3, 0x8b8(r30) -/* 8017A6C0 00177620 80 63 00 00 */ lwz r3, 0(r3) -/* 8017A6C4 00177624 80 03 00 14 */ lwz r0, 0x14(r3) -/* 8017A6C8 00177628 2C 00 00 02 */ cmpwi r0, 2 -/* 8017A6CC 0017762C 41 82 06 F8 */ beq lbl_8017ADC4 -/* 8017A6D0 00177630 80 03 00 18 */ lwz r0, 0x18(r3) -/* 8017A6D4 00177634 2C 00 00 02 */ cmpwi r0, 2 -/* 8017A6D8 00177638 40 82 00 08 */ bne lbl_8017A6E0 -/* 8017A6DC 0017763C 48 00 06 E8 */ b lbl_8017ADC4 -lbl_8017A6E0: -/* 8017A6E0 00177640 A0 BC 03 10 */ lhz r5, 0x310(r28) -/* 8017A6E4 00177644 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017A6E8 00177648 7C 05 00 40 */ cmplw r5, r0 -/* 8017A6EC 0017764C 40 82 00 20 */ bne lbl_8017A70C -/* 8017A6F0 00177650 38 00 00 00 */ li r0, 0 -/* 8017A6F4 00177654 7F 83 E3 78 */ mr r3, r28 -/* 8017A6F8 00177658 90 1C 03 B8 */ stw r0, 0x3b8(r28) -/* 8017A6FC 0017765C 7F C5 F3 78 */ mr r5, r30 -/* 8017A700 00177660 38 80 00 25 */ li r4, 0x25 -/* 8017A704 00177664 4B ED 9C 4D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 8017A708 00177668 48 00 06 BC */ b lbl_8017ADC4 -lbl_8017A70C: -/* 8017A70C 0017766C B0 A1 00 14 */ sth r5, 0x14(r1) -/* 8017A710 00177670 7F C3 F3 78 */ mr r3, r30 -/* 8017A714 00177674 38 81 00 18 */ addi r4, r1, 0x18 -/* 8017A718 00177678 B0 A1 00 18 */ sth r5, 0x18(r1) -/* 8017A71C 0017767C 4B ED 1E 89 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017A720 00177680 7C 64 1B 78 */ mr r4, r3 -/* 8017A724 00177684 38 61 00 24 */ addi r3, r1, 0x24 -/* 8017A728 00177688 4B F2 F3 A1 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" -/* 8017A72C 0017768C 83 E3 00 04 */ lwz r31, 4(r3) -/* 8017A730 00177690 28 1F 00 00 */ cmplwi r31, 0 -/* 8017A734 00177694 41 82 03 D0 */ beq lbl_8017AB04 -/* 8017A738 00177698 7F 84 E3 78 */ mr r4, r28 -/* 8017A73C 0017769C 38 61 00 50 */ addi r3, r1, 0x50 -/* 8017A740 001776A0 48 10 A6 3D */ bl GetEyePosition__7CPlayerCFv -/* 8017A744 001776A4 C0 C1 00 50 */ lfs f6, 0x50(r1) -/* 8017A748 001776A8 38 61 00 80 */ addi r3, r1, 0x80 -/* 8017A74C 001776AC C0 A1 00 54 */ lfs f5, 0x54(r1) -/* 8017A750 001776B0 C0 81 00 58 */ lfs f4, 0x58(r1) -/* 8017A754 001776B4 D0 C1 00 8C */ stfs f6, 0x8c(r1) -/* 8017A758 001776B8 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017A75C 001776BC D0 A1 00 90 */ stfs f5, 0x90(r1) -/* 8017A760 001776C0 D0 81 00 94 */ stfs f4, 0x94(r1) -/* 8017A764 001776C4 C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 8017A768 001776C8 C0 7F 00 50 */ lfs f3, 0x50(r31) -/* 8017A76C 001776CC C0 3F 00 40 */ lfs f1, 0x40(r31) -/* 8017A770 001776D0 EC 42 20 28 */ fsubs f2, f2, f4 -/* 8017A774 001776D4 EC 63 28 28 */ fsubs f3, f3, f5 -/* 8017A778 001776D8 EC 21 30 28 */ fsubs f1, f1, f6 -/* 8017A77C 001776DC D0 41 00 7C */ stfs f2, 0x7c(r1) -/* 8017A780 001776E0 D0 21 00 80 */ stfs f1, 0x80(r1) -/* 8017A784 001776E4 D0 61 00 84 */ stfs f3, 0x84(r1) -/* 8017A788 001776E8 D0 41 00 88 */ stfs f2, 0x88(r1) -/* 8017A78C 001776EC D0 21 00 74 */ stfs f1, 0x74(r1) -/* 8017A790 001776F0 D0 61 00 78 */ stfs f3, 0x78(r1) -/* 8017A794 001776F4 D0 01 00 7C */ stfs f0, 0x7c(r1) -/* 8017A798 001776F8 48 19 9F 61 */ bl CanBeNormalized__9CVector3fCFv -/* 8017A79C 001776FC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017A7A0 00177700 41 82 03 64 */ beq lbl_8017AB04 -/* 8017A7A4 00177704 38 61 00 74 */ addi r3, r1, 0x74 -/* 8017A7A8 00177708 48 19 9F 51 */ bl CanBeNormalized__9CVector3fCFv -/* 8017A7AC 0017770C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017A7B0 00177710 41 82 03 54 */ beq lbl_8017AB04 -/* 8017A7B4 00177714 38 61 00 74 */ addi r3, r1, 0x74 -/* 8017A7B8 00177718 48 19 A1 01 */ bl Magnitude__9CVector3fCFv -/* 8017A7BC 0017771C C0 02 A2 7C */ lfs f0, lbl_805ABF9C@sda21(r2) -/* 8017A7C0 00177720 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017A7C4 00177724 40 81 03 40 */ ble lbl_8017AB04 -/* 8017A7C8 00177728 80 1C 03 04 */ lwz r0, 0x304(r28) -/* 8017A7CC 0017772C 2C 00 00 05 */ cmpwi r0, 5 -/* 8017A7D0 00177730 41 82 00 14 */ beq lbl_8017A7E4 -/* 8017A7D4 00177734 40 80 03 30 */ bge lbl_8017AB04 -/* 8017A7D8 00177738 2C 00 00 01 */ cmpwi r0, 1 -/* 8017A7DC 0017773C 41 82 01 60 */ beq lbl_8017A93C -/* 8017A7E0 00177740 48 00 03 24 */ b lbl_8017AB04 -lbl_8017A7E4: -/* 8017A7E4 00177744 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017A7E8 00177748 80 03 02 D0 */ lwz r0, 0x2d0(r3) -/* 8017A7EC 0017774C 2C 00 00 02 */ cmpwi r0, 2 -/* 8017A7F0 00177750 41 82 03 14 */ beq lbl_8017AB04 -/* 8017A7F4 00177754 40 80 03 10 */ bge lbl_8017AB04 -/* 8017A7F8 00177758 2C 00 00 00 */ cmpwi r0, 0 -/* 8017A7FC 0017775C 40 80 00 08 */ bge lbl_8017A804 -/* 8017A800 00177760 48 00 03 04 */ b lbl_8017AB04 -lbl_8017A804: -/* 8017A804 00177764 7F A4 EB 78 */ mr r4, r29 -/* 8017A808 00177768 38 60 00 0B */ li r3, 0xb -/* 8017A80C 0017776C 4B E9 1F C5 */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput -/* 8017A810 00177770 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017A814 00177774 41 82 02 F0 */ beq lbl_8017AB04 -/* 8017A818 00177778 A0 1C 03 3C */ lhz r0, 0x33c(r28) -/* 8017A81C 0017777C 7F C3 F3 78 */ mr r3, r30 -/* 8017A820 00177780 38 81 00 10 */ addi r4, r1, 0x10 -/* 8017A824 00177784 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8017A828 00177788 4B ED 1D 7D */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017A82C 0017778C 7C 64 1B 78 */ mr r4, r3 -/* 8017A830 00177790 38 61 00 1C */ addi r3, r1, 0x1c -/* 8017A834 00177794 4B F2 F2 95 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" -/* 8017A838 00177798 80 83 00 04 */ lwz r4, 4(r3) -/* 8017A83C 0017779C 28 04 00 00 */ cmplwi r4, 0 -/* 8017A840 001777A0 41 82 00 B8 */ beq lbl_8017A8F8 -/* 8017A844 001777A4 C0 24 00 60 */ lfs f1, 0x60(r4) -/* 8017A848 001777A8 38 61 00 80 */ addi r3, r1, 0x80 -/* 8017A84C 001777AC C0 01 00 94 */ lfs f0, 0x94(r1) -/* 8017A850 001777B0 C0 64 00 50 */ lfs f3, 0x50(r4) -/* 8017A854 001777B4 C0 41 00 90 */ lfs f2, 0x90(r1) -/* 8017A858 001777B8 EC 81 00 28 */ fsubs f4, f1, f0 -/* 8017A85C 001777BC C0 24 00 40 */ lfs f1, 0x40(r4) -/* 8017A860 001777C0 C0 01 00 8C */ lfs f0, 0x8c(r1) -/* 8017A864 001777C4 EC 43 10 28 */ fsubs f2, f3, f2 -/* 8017A868 001777C8 D0 81 00 88 */ stfs f4, 0x88(r1) -/* 8017A86C 001777CC EC 21 00 28 */ fsubs f1, f1, f0 -/* 8017A870 001777D0 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017A874 001777D4 D0 41 00 84 */ stfs f2, 0x84(r1) -/* 8017A878 001777D8 D0 21 00 80 */ stfs f1, 0x80(r1) -/* 8017A87C 001777DC D0 01 00 88 */ stfs f0, 0x88(r1) -/* 8017A880 001777E0 48 19 9E 79 */ bl CanBeNormalized__9CVector3fCFv -/* 8017A884 001777E4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017A888 001777E8 41 82 02 7C */ beq lbl_8017AB04 -/* 8017A88C 001777EC 80 7C 04 90 */ lwz r3, 0x490(r28) -/* 8017A890 001777F0 80 63 07 40 */ lwz r3, 0x740(r3) -/* 8017A894 001777F4 4B FA 38 45 */ bl GrappleBeamDisconnected__11CGrappleArmFv -/* 8017A898 001777F8 C0 01 00 84 */ lfs f0, 0x84(r1) -/* 8017A89C 001777FC 38 7C 03 C0 */ addi r3, r28, 0x3c0 -/* 8017A8A0 00177800 D0 1C 03 C0 */ stfs f0, 0x3c0(r28) -/* 8017A8A4 00177804 C0 01 00 80 */ lfs f0, 0x80(r1) -/* 8017A8A8 00177808 FC 00 00 50 */ fneg f0, f0 -/* 8017A8AC 0017780C D0 1C 03 C4 */ stfs f0, 0x3c4(r28) -/* 8017A8B0 00177810 48 19 A0 49 */ bl Normalize__9CVector3fFv -/* 8017A8B4 00177814 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017A8B8 00177818 7F 83 E3 78 */ mr r3, r28 -/* 8017A8BC 0017781C 7F C5 F3 78 */ mr r5, r30 -/* 8017A8C0 00177820 38 81 00 0C */ addi r4, r1, 0xc -/* 8017A8C4 00177824 D0 1C 03 BC */ stfs f0, 0x3bc(r28) -/* 8017A8C8 00177828 A0 1C 03 3C */ lhz r0, 0x33c(r28) -/* 8017A8CC 0017782C B0 01 00 0C */ sth r0, 0xc(r1) -/* 8017A8D0 00177830 48 00 0D 1D */ bl SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager -/* 8017A8D4 00177834 38 00 00 02 */ li r0, 2 -/* 8017A8D8 00177838 90 1C 03 B8 */ stw r0, 0x3b8(r28) -/* 8017A8DC 0017783C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017A8E0 00177840 B0 1C 03 3C */ sth r0, 0x33c(r28) -/* 8017A8E4 00177844 80 7C 04 90 */ lwz r3, 0x490(r28) -/* 8017A8E8 00177848 B0 01 00 08 */ sth r0, 8(r1) -/* 8017A8EC 0017784C 80 63 07 40 */ lwz r3, 0x740(r3) -/* 8017A8F0 00177850 4B FA 38 35 */ bl GrappleBeamConnected__11CGrappleArmFv -/* 8017A8F4 00177854 48 00 02 10 */ b lbl_8017AB04 -lbl_8017A8F8: -/* 8017A8F8 00177858 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017A8FC 0017785C 80 03 02 D0 */ lwz r0, 0x2d0(r3) -/* 8017A900 00177860 2C 00 00 00 */ cmpwi r0, 0 -/* 8017A904 00177864 40 82 00 24 */ bne lbl_8017A928 -/* 8017A908 00177868 C0 3C 03 D8 */ lfs f1, 0x3d8(r28) -/* 8017A90C 0017786C C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017A910 00177870 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017A914 00177874 4C 40 13 82 */ cror 2, 0, 2 -/* 8017A918 00177878 40 82 00 10 */ bne lbl_8017A928 -/* 8017A91C 0017787C 7F 83 E3 78 */ mr r3, r28 -/* 8017A920 00177880 7F C4 F3 78 */ mr r4, r30 -/* 8017A924 00177884 48 00 04 C9 */ bl ApplyGrappleJump__7CPlayerFR13CStateManager -lbl_8017A928: -/* 8017A928 00177888 7F 83 E3 78 */ mr r3, r28 -/* 8017A92C 0017788C 7F C5 F3 78 */ mr r5, r30 -/* 8017A930 00177890 38 80 00 00 */ li r4, 0 -/* 8017A934 00177894 48 00 07 91 */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager -/* 8017A938 00177898 48 00 01 CC */ b lbl_8017AB04 -lbl_8017A93C: -/* 8017A93C 0017789C 38 61 00 80 */ addi r3, r1, 0x80 -/* 8017A940 001778A0 48 19 9D B9 */ bl CanBeNormalized__9CVector3fCFv -/* 8017A944 001778A4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017A948 001778A8 41 82 01 BC */ beq lbl_8017AB04 -/* 8017A94C 001778AC 38 61 00 80 */ addi r3, r1, 0x80 -/* 8017A950 001778B0 48 19 9F 69 */ bl Magnitude__9CVector3fCFv -/* 8017A954 001778B4 FF E0 08 90 */ fmr f31, f1 -/* 8017A958 001778B8 38 61 00 44 */ addi r3, r1, 0x44 -/* 8017A95C 001778BC 38 81 00 80 */ addi r4, r1, 0x80 -/* 8017A960 001778C0 48 19 9E F1 */ bl AsNormalized__9CVector3fCFv -/* 8017A964 001778C4 FC 20 F8 90 */ fmr f1, f31 -/* 8017A968 001778C8 3C 60 80 47 */ lis r3, lbl_8046C8C0@ha -/* 8017A96C 001778CC 38 E3 C8 C0 */ addi r7, r3, lbl_8046C8C0@l -/* 8017A970 001778D0 7F C4 F3 78 */ mr r4, r30 -/* 8017A974 001778D4 38 61 00 C8 */ addi r3, r1, 0xc8 -/* 8017A978 001778D8 38 A1 00 8C */ addi r5, r1, 0x8c -/* 8017A97C 001778DC 38 C1 00 44 */ addi r6, r1, 0x44 -/* 8017A980 001778E0 4B ED 26 19 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter -/* 8017A984 001778E4 88 01 00 E8 */ lbz r0, 0xe8(r1) -/* 8017A988 001778E8 28 00 00 00 */ cmplwi r0, 0 -/* 8017A98C 001778EC 40 82 01 78 */ bne lbl_8017AB04 -/* 8017A990 001778F0 7F 83 E3 78 */ mr r3, r28 -/* 8017A994 001778F4 7F C4 F3 78 */ mr r4, r30 -/* 8017A998 001778F8 4B E9 F7 D5 */ bl HolsterGun__7CPlayerFR13CStateManager -/* 8017A99C 001778FC 80 1C 03 B8 */ lwz r0, 0x3b8(r28) -/* 8017A9A0 00177900 2C 00 00 02 */ cmpwi r0, 2 -/* 8017A9A4 00177904 41 82 01 60 */ beq lbl_8017AB04 -/* 8017A9A8 00177908 40 80 00 14 */ bge lbl_8017A9BC -/* 8017A9AC 0017790C 2C 00 00 00 */ cmpwi r0, 0 -/* 8017A9B0 00177910 41 82 01 3C */ beq lbl_8017AAEC -/* 8017A9B4 00177914 40 80 00 10 */ bge lbl_8017A9C4 -/* 8017A9B8 00177918 48 00 01 4C */ b lbl_8017AB04 -lbl_8017A9BC: -/* 8017A9BC 0017791C 2C 00 00 04 */ cmpwi r0, 4 -/* 8017A9C0 00177920 40 80 01 44 */ bge lbl_8017AB04 -lbl_8017A9C4: -/* 8017A9C4 00177924 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017A9C8 00177928 80 03 02 D0 */ lwz r0, 0x2d0(r3) -/* 8017A9CC 0017792C 2C 00 00 01 */ cmpwi r0, 1 -/* 8017A9D0 00177930 41 82 00 80 */ beq lbl_8017AA50 -/* 8017A9D4 00177934 40 80 00 10 */ bge lbl_8017A9E4 -/* 8017A9D8 00177938 2C 00 00 00 */ cmpwi r0, 0 -/* 8017A9DC 0017793C 40 80 00 14 */ bge lbl_8017A9F0 -/* 8017A9E0 00177940 48 00 01 24 */ b lbl_8017AB04 -lbl_8017A9E4: -/* 8017A9E4 00177944 2C 00 00 03 */ cmpwi r0, 3 -/* 8017A9E8 00177948 40 80 01 1C */ bge lbl_8017AB04 -/* 8017A9EC 0017794C 48 00 00 BC */ b lbl_8017AAA8 -lbl_8017A9F0: -/* 8017A9F0 00177950 80 7C 04 90 */ lwz r3, 0x490(r28) -/* 8017A9F4 00177954 80 63 07 40 */ lwz r3, 0x740(r3) -/* 8017A9F8 00177958 80 03 03 34 */ lwz r0, 0x334(r3) -/* 8017A9FC 0017795C 2C 00 00 06 */ cmpwi r0, 6 -/* 8017AA00 00177960 41 82 00 3C */ beq lbl_8017AA3C -/* 8017AA04 00177964 40 80 01 00 */ bge lbl_8017AB04 -/* 8017AA08 00177968 2C 00 00 01 */ cmpwi r0, 1 -/* 8017AA0C 0017796C 41 82 00 08 */ beq lbl_8017AA14 -/* 8017AA10 00177970 48 00 00 F4 */ b lbl_8017AB04 -lbl_8017AA14: -/* 8017AA14 00177974 7F A4 EB 78 */ mr r4, r29 -/* 8017AA18 00177978 38 60 00 0B */ li r3, 0xb -/* 8017AA1C 0017797C 4B E9 1E 59 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput -/* 8017AA20 00177980 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017AA24 00177984 41 82 00 E0 */ beq lbl_8017AB04 -/* 8017AA28 00177988 80 7C 04 90 */ lwz r3, 0x490(r28) -/* 8017AA2C 0017798C 38 80 00 02 */ li r4, 2 -/* 8017AA30 00177990 80 63 07 40 */ lwz r3, 0x740(r3) -/* 8017AA34 00177994 4B FA 3B 2D */ bl SetAnimState__11CGrappleArmFQ211CGrappleArm9EArmState -/* 8017AA38 00177998 48 00 00 CC */ b lbl_8017AB04 -lbl_8017AA3C: -/* 8017AA3C 0017799C 7F 83 E3 78 */ mr r3, r28 -/* 8017AA40 001779A0 7F C5 F3 78 */ mr r5, r30 -/* 8017AA44 001779A4 38 81 00 80 */ addi r4, r1, 0x80 -/* 8017AA48 001779A8 48 00 05 D9 */ bl BeginGrapple__7CPlayerFR9CVector3fR13CStateManager -/* 8017AA4C 001779AC 48 00 00 B8 */ b lbl_8017AB04 -lbl_8017AA50: -/* 8017AA50 001779B0 7F A4 EB 78 */ mr r4, r29 -/* 8017AA54 001779B4 38 60 00 0B */ li r3, 0xb -/* 8017AA58 001779B8 4B E9 1E 1D */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput -/* 8017AA5C 001779BC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017AA60 001779C0 41 82 00 A4 */ beq lbl_8017AB04 -/* 8017AA64 001779C4 80 7C 04 90 */ lwz r3, 0x490(r28) -/* 8017AA68 001779C8 80 63 07 40 */ lwz r3, 0x740(r3) -/* 8017AA6C 001779CC 80 03 03 34 */ lwz r0, 0x334(r3) -/* 8017AA70 001779D0 2C 00 00 06 */ cmpwi r0, 6 -/* 8017AA74 001779D4 41 82 00 20 */ beq lbl_8017AA94 -/* 8017AA78 001779D8 40 80 00 8C */ bge lbl_8017AB04 -/* 8017AA7C 001779DC 2C 00 00 01 */ cmpwi r0, 1 -/* 8017AA80 001779E0 41 82 00 08 */ beq lbl_8017AA88 -/* 8017AA84 001779E4 48 00 00 80 */ b lbl_8017AB04 -lbl_8017AA88: -/* 8017AA88 001779E8 38 80 00 02 */ li r4, 2 -/* 8017AA8C 001779EC 4B FA 3A D5 */ bl SetAnimState__11CGrappleArmFQ211CGrappleArm9EArmState -/* 8017AA90 001779F0 48 00 00 74 */ b lbl_8017AB04 -lbl_8017AA94: -/* 8017AA94 001779F4 7F 83 E3 78 */ mr r3, r28 -/* 8017AA98 001779F8 7F C5 F3 78 */ mr r5, r30 -/* 8017AA9C 001779FC 38 81 00 80 */ addi r4, r1, 0x80 -/* 8017AAA0 00177A00 48 00 05 81 */ bl BeginGrapple__7CPlayerFR9CVector3fR13CStateManager -/* 8017AAA4 00177A04 48 00 00 60 */ b lbl_8017AB04 -lbl_8017AAA8: -/* 8017AAA8 00177A08 80 7C 04 90 */ lwz r3, 0x490(r28) -/* 8017AAAC 00177A0C 80 63 07 40 */ lwz r3, 0x740(r3) -/* 8017AAB0 00177A10 80 03 03 34 */ lwz r0, 0x334(r3) -/* 8017AAB4 00177A14 2C 00 00 06 */ cmpwi r0, 6 -/* 8017AAB8 00177A18 41 82 00 20 */ beq lbl_8017AAD8 -/* 8017AABC 00177A1C 40 80 00 48 */ bge lbl_8017AB04 -/* 8017AAC0 00177A20 2C 00 00 01 */ cmpwi r0, 1 -/* 8017AAC4 00177A24 41 82 00 08 */ beq lbl_8017AACC -/* 8017AAC8 00177A28 48 00 00 3C */ b lbl_8017AB04 -lbl_8017AACC: -/* 8017AACC 00177A2C 38 80 00 02 */ li r4, 2 -/* 8017AAD0 00177A30 4B FA 3A 91 */ bl SetAnimState__11CGrappleArmFQ211CGrappleArm9EArmState -/* 8017AAD4 00177A34 48 00 00 30 */ b lbl_8017AB04 -lbl_8017AAD8: -/* 8017AAD8 00177A38 7F 83 E3 78 */ mr r3, r28 -/* 8017AADC 00177A3C 7F C5 F3 78 */ mr r5, r30 -/* 8017AAE0 00177A40 38 81 00 80 */ addi r4, r1, 0x80 -/* 8017AAE4 00177A44 48 00 05 3D */ bl BeginGrapple__7CPlayerFR9CVector3fR13CStateManager -/* 8017AAE8 00177A48 48 00 00 1C */ b lbl_8017AB04 -lbl_8017AAEC: -/* 8017AAEC 00177A4C 38 00 00 01 */ li r0, 1 -/* 8017AAF0 00177A50 38 80 00 01 */ li r4, 1 -/* 8017AAF4 00177A54 90 1C 03 B8 */ stw r0, 0x3b8(r28) -/* 8017AAF8 00177A58 80 7C 04 90 */ lwz r3, 0x490(r28) -/* 8017AAFC 00177A5C 80 63 07 40 */ lwz r3, 0x740(r3) -/* 8017AB00 00177A60 4B FA 3D 01 */ bl Activate__11CGrappleArmFb -lbl_8017AB04: -/* 8017AB04 00177A64 80 1C 03 04 */ lwz r0, 0x304(r28) -/* 8017AB08 00177A68 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017AB0C 00177A6C 2C 00 00 05 */ cmpwi r0, 5 -/* 8017AB10 00177A70 80 83 02 D0 */ lwz r4, 0x2d0(r3) -/* 8017AB14 00177A74 41 82 00 14 */ beq lbl_8017AB28 -/* 8017AB18 00177A78 40 80 02 AC */ bge lbl_8017ADC4 -/* 8017AB1C 00177A7C 2C 00 00 01 */ cmpwi r0, 1 -/* 8017AB20 00177A80 41 82 02 64 */ beq lbl_8017AD84 -/* 8017AB24 00177A84 48 00 02 A0 */ b lbl_8017ADC4 -lbl_8017AB28: -/* 8017AB28 00177A88 28 1F 00 00 */ cmplwi r31, 0 -/* 8017AB2C 00177A8C 40 82 00 18 */ bne lbl_8017AB44 -/* 8017AB30 00177A90 7F 83 E3 78 */ mr r3, r28 -/* 8017AB34 00177A94 7F C5 F3 78 */ mr r5, r30 -/* 8017AB38 00177A98 38 80 00 03 */ li r4, 3 -/* 8017AB3C 00177A9C 48 00 05 89 */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager -/* 8017AB40 00177AA0 48 00 02 84 */ b lbl_8017ADC4 -lbl_8017AB44: -/* 8017AB44 00177AA4 2C 04 00 01 */ cmpwi r4, 1 -/* 8017AB48 00177AA8 41 82 00 90 */ beq lbl_8017ABD8 -/* 8017AB4C 00177AAC 40 80 00 10 */ bge lbl_8017AB5C -/* 8017AB50 00177AB0 2C 04 00 00 */ cmpwi r4, 0 -/* 8017AB54 00177AB4 40 80 00 10 */ bge lbl_8017AB64 -/* 8017AB58 00177AB8 48 00 01 7C */ b lbl_8017ACD4 -lbl_8017AB5C: -/* 8017AB5C 00177ABC 2C 04 00 03 */ cmpwi r4, 3 -/* 8017AB60 00177AC0 40 80 01 74 */ bge lbl_8017ACD4 -lbl_8017AB64: -/* 8017AB64 00177AC4 80 1C 03 B8 */ lwz r0, 0x3b8(r28) -/* 8017AB68 00177AC8 2C 00 00 04 */ cmpwi r0, 4 -/* 8017AB6C 00177ACC 41 82 00 08 */ beq lbl_8017AB74 -/* 8017AB70 00177AD0 48 00 01 64 */ b lbl_8017ACD4 -lbl_8017AB74: -/* 8017AB74 00177AD4 C0 5C 03 D8 */ lfs f2, 0x3d8(r28) -/* 8017AB78 00177AD8 C0 3D 00 00 */ lfs f1, 0(r29) -/* 8017AB7C 00177ADC C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017AB80 00177AE0 EC 22 08 28 */ fsubs f1, f2, f1 -/* 8017AB84 00177AE4 D0 3C 03 D8 */ stfs f1, 0x3d8(r28) -/* 8017AB88 00177AE8 C0 3C 03 D8 */ lfs f1, 0x3d8(r28) -/* 8017AB8C 00177AEC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017AB90 00177AF0 4C 40 13 82 */ cror 2, 0, 2 -/* 8017AB94 00177AF4 40 82 01 40 */ bne lbl_8017ACD4 -/* 8017AB98 00177AF8 7F 83 E3 78 */ mr r3, r28 -/* 8017AB9C 00177AFC 7F C5 F3 78 */ mr r5, r30 -/* 8017ABA0 00177B00 38 80 00 00 */ li r4, 0 -/* 8017ABA4 00177B04 48 00 05 21 */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager -/* 8017ABA8 00177B08 7F 83 E3 78 */ mr r3, r28 -/* 8017ABAC 00177B0C 7F C5 F3 78 */ mr r5, r30 -/* 8017ABB0 00177B10 38 80 00 02 */ li r4, 2 -/* 8017ABB4 00177B14 48 10 B8 39 */ bl SetMoveState__7CPlayerFQ27NPlayer20EPlayerMovementStateR13CStateManager -/* 8017ABB8 00177B18 C0 3D 00 00 */ lfs f1, 0(r29) -/* 8017ABBC 00177B1C 7F 83 E3 78 */ mr r3, r28 -/* 8017ABC0 00177B20 7F A4 EB 78 */ mr r4, r29 -/* 8017ABC4 00177B24 7F C5 F3 78 */ mr r5, r30 -/* 8017ABC8 00177B28 48 10 C3 AD */ bl ComputeMovement__7CPlayerFRC11CFinalInputR13CStateManagerf -/* 8017ABCC 00177B2C 7F 83 E3 78 */ mr r3, r28 -/* 8017ABD0 00177B30 48 00 07 11 */ bl PreventFallingCameraPitch__7CPlayerFv -/* 8017ABD4 00177B34 48 00 01 00 */ b lbl_8017ACD4 -lbl_8017ABD8: -/* 8017ABD8 00177B38 80 1C 03 B8 */ lwz r0, 0x3b8(r28) -/* 8017ABDC 00177B3C 2C 00 00 03 */ cmpwi r0, 3 -/* 8017ABE0 00177B40 41 82 00 20 */ beq lbl_8017AC00 -/* 8017ABE4 00177B44 40 80 00 10 */ bge lbl_8017ABF4 -/* 8017ABE8 00177B48 2C 00 00 01 */ cmpwi r0, 1 -/* 8017ABEC 00177B4C 40 80 00 C4 */ bge lbl_8017ACB0 -/* 8017ABF0 00177B50 48 00 00 E4 */ b lbl_8017ACD4 -lbl_8017ABF4: -/* 8017ABF4 00177B54 2C 00 00 05 */ cmpwi r0, 5 -/* 8017ABF8 00177B58 40 80 00 DC */ bge lbl_8017ACD4 -/* 8017ABFC 00177B5C 48 00 00 50 */ b lbl_8017AC4C -lbl_8017AC00: -/* 8017AC00 00177B60 7F A4 EB 78 */ mr r4, r29 -/* 8017AC04 00177B64 38 60 00 0B */ li r3, 0xb -/* 8017AC08 00177B68 4B E9 1C 6D */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput -/* 8017AC0C 00177B6C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017AC10 00177B70 40 82 00 C4 */ bne lbl_8017ACD4 -/* 8017AC14 00177B74 C0 3C 03 D8 */ lfs f1, 0x3d8(r28) -/* 8017AC18 00177B78 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017AC1C 00177B7C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017AC20 00177B80 4C 40 13 82 */ cror 2, 0, 2 -/* 8017AC24 00177B84 40 82 00 B0 */ bne lbl_8017ACD4 -/* 8017AC28 00177B88 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) -/* 8017AC2C 00177B8C 38 00 00 04 */ li r0, 4 -/* 8017AC30 00177B90 7F 83 E3 78 */ mr r3, r28 -/* 8017AC34 00177B94 7F C4 F3 78 */ mr r4, r30 -/* 8017AC38 00177B98 C0 05 02 CC */ lfs f0, 0x2cc(r5) -/* 8017AC3C 00177B9C D0 1C 03 D8 */ stfs f0, 0x3d8(r28) -/* 8017AC40 00177BA0 90 1C 03 B8 */ stw r0, 0x3b8(r28) -/* 8017AC44 00177BA4 48 00 01 A9 */ bl ApplyGrappleJump__7CPlayerFR13CStateManager -/* 8017AC48 00177BA8 48 00 00 8C */ b lbl_8017ACD4 -lbl_8017AC4C: -/* 8017AC4C 00177BAC C0 5C 03 D8 */ lfs f2, 0x3d8(r28) -/* 8017AC50 00177BB0 C0 3D 00 00 */ lfs f1, 0(r29) -/* 8017AC54 00177BB4 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017AC58 00177BB8 EC 22 08 28 */ fsubs f1, f2, f1 -/* 8017AC5C 00177BBC D0 3C 03 D8 */ stfs f1, 0x3d8(r28) -/* 8017AC60 00177BC0 C0 3C 03 D8 */ lfs f1, 0x3d8(r28) -/* 8017AC64 00177BC4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017AC68 00177BC8 4C 40 13 82 */ cror 2, 0, 2 -/* 8017AC6C 00177BCC 40 82 00 68 */ bne lbl_8017ACD4 -/* 8017AC70 00177BD0 7F 83 E3 78 */ mr r3, r28 -/* 8017AC74 00177BD4 7F C5 F3 78 */ mr r5, r30 -/* 8017AC78 00177BD8 38 80 00 02 */ li r4, 2 -/* 8017AC7C 00177BDC 48 10 B7 71 */ bl SetMoveState__7CPlayerFQ27NPlayer20EPlayerMovementStateR13CStateManager -/* 8017AC80 00177BE0 C0 3D 00 00 */ lfs f1, 0(r29) -/* 8017AC84 00177BE4 7F 83 E3 78 */ mr r3, r28 -/* 8017AC88 00177BE8 7F A4 EB 78 */ mr r4, r29 -/* 8017AC8C 00177BEC 7F C5 F3 78 */ mr r5, r30 -/* 8017AC90 00177BF0 48 10 C2 E5 */ bl ComputeMovement__7CPlayerFRC11CFinalInputR13CStateManagerf -/* 8017AC94 00177BF4 7F 83 E3 78 */ mr r3, r28 -/* 8017AC98 00177BF8 7F C5 F3 78 */ mr r5, r30 -/* 8017AC9C 00177BFC 38 80 00 00 */ li r4, 0 -/* 8017ACA0 00177C00 48 00 04 25 */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager -/* 8017ACA4 00177C04 7F 83 E3 78 */ mr r3, r28 -/* 8017ACA8 00177C08 48 00 06 39 */ bl PreventFallingCameraPitch__7CPlayerFv -/* 8017ACAC 00177C0C 48 00 00 28 */ b lbl_8017ACD4 -lbl_8017ACB0: -/* 8017ACB0 00177C10 7F A4 EB 78 */ mr r4, r29 -/* 8017ACB4 00177C14 38 60 00 0B */ li r3, 0xb -/* 8017ACB8 00177C18 4B E9 1B BD */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput -/* 8017ACBC 00177C1C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017ACC0 00177C20 40 82 00 14 */ bne lbl_8017ACD4 -/* 8017ACC4 00177C24 7F 83 E3 78 */ mr r3, r28 -/* 8017ACC8 00177C28 7F C5 F3 78 */ mr r5, r30 -/* 8017ACCC 00177C2C 38 80 00 00 */ li r4, 0 -/* 8017ACD0 00177C30 48 00 03 F5 */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager -lbl_8017ACD4: -/* 8017ACD4 00177C34 7F 84 E3 78 */ mr r4, r28 -/* 8017ACD8 00177C38 38 61 00 38 */ addi r3, r1, 0x38 -/* 8017ACDC 00177C3C 48 10 A0 A1 */ bl GetEyePosition__7CPlayerCFv -/* 8017ACE0 00177C40 C0 A1 00 38 */ lfs f5, 0x38(r1) -/* 8017ACE4 00177C44 38 61 00 5C */ addi r3, r1, 0x5c -/* 8017ACE8 00177C48 C0 81 00 3C */ lfs f4, 0x3c(r1) -/* 8017ACEC 00177C4C C0 61 00 40 */ lfs f3, 0x40(r1) -/* 8017ACF0 00177C50 D0 A1 00 68 */ stfs f5, 0x68(r1) -/* 8017ACF4 00177C54 D0 81 00 6C */ stfs f4, 0x6c(r1) -/* 8017ACF8 00177C58 D0 61 00 70 */ stfs f3, 0x70(r1) -/* 8017ACFC 00177C5C C0 5F 00 50 */ lfs f2, 0x50(r31) -/* 8017AD00 00177C60 C0 3F 00 60 */ lfs f1, 0x60(r31) -/* 8017AD04 00177C64 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 8017AD08 00177C68 EC 42 20 28 */ fsubs f2, f2, f4 -/* 8017AD0C 00177C6C EC 21 18 28 */ fsubs f1, f1, f3 -/* 8017AD10 00177C70 EC 00 28 28 */ fsubs f0, f0, f5 -/* 8017AD14 00177C74 D0 41 00 60 */ stfs f2, 0x60(r1) -/* 8017AD18 00177C78 D0 01 00 5C */ stfs f0, 0x5c(r1) -/* 8017AD1C 00177C7C D0 21 00 64 */ stfs f1, 0x64(r1) -/* 8017AD20 00177C80 48 19 99 D9 */ bl CanBeNormalized__9CVector3fCFv -/* 8017AD24 00177C84 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017AD28 00177C88 41 82 00 9C */ beq lbl_8017ADC4 -/* 8017AD2C 00177C8C 38 61 00 5C */ addi r3, r1, 0x5c -/* 8017AD30 00177C90 48 19 9B 89 */ bl Magnitude__9CVector3fCFv -/* 8017AD34 00177C94 FF E0 08 90 */ fmr f31, f1 -/* 8017AD38 00177C98 38 61 00 2C */ addi r3, r1, 0x2c -/* 8017AD3C 00177C9C 38 81 00 5C */ addi r4, r1, 0x5c -/* 8017AD40 00177CA0 48 19 9B 11 */ bl AsNormalized__9CVector3fCFv -/* 8017AD44 00177CA4 FC 20 F8 90 */ fmr f1, f31 -/* 8017AD48 00177CA8 3C 60 80 47 */ lis r3, lbl_8046C8C0@ha -/* 8017AD4C 00177CAC 38 E3 C8 C0 */ addi r7, r3, lbl_8046C8C0@l -/* 8017AD50 00177CB0 7F C4 F3 78 */ mr r4, r30 -/* 8017AD54 00177CB4 38 61 00 98 */ addi r3, r1, 0x98 -/* 8017AD58 00177CB8 38 A1 00 68 */ addi r5, r1, 0x68 -/* 8017AD5C 00177CBC 38 C1 00 2C */ addi r6, r1, 0x2c -/* 8017AD60 00177CC0 4B ED 22 39 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter -/* 8017AD64 00177CC4 88 01 00 B8 */ lbz r0, 0xb8(r1) -/* 8017AD68 00177CC8 28 00 00 00 */ cmplwi r0, 0 -/* 8017AD6C 00177CCC 41 82 00 58 */ beq lbl_8017ADC4 -/* 8017AD70 00177CD0 7F 83 E3 78 */ mr r3, r28 -/* 8017AD74 00177CD4 7F C5 F3 78 */ mr r5, r30 -/* 8017AD78 00177CD8 38 80 00 0C */ li r4, 0xc -/* 8017AD7C 00177CDC 48 00 03 49 */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager -/* 8017AD80 00177CE0 48 00 00 44 */ b lbl_8017ADC4 -lbl_8017AD84: -/* 8017AD84 00177CE4 80 7C 04 90 */ lwz r3, 0x490(r28) -/* 8017AD88 00177CE8 80 63 07 40 */ lwz r3, 0x740(r3) -/* 8017AD8C 00177CEC 88 03 03 B2 */ lbz r0, 0x3b2(r3) -/* 8017AD90 00177CF0 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 8017AD94 00177CF4 41 82 00 30 */ beq lbl_8017ADC4 -/* 8017AD98 00177CF8 2C 04 00 01 */ cmpwi r4, 1 -/* 8017AD9C 00177CFC 40 82 00 28 */ bne lbl_8017ADC4 -/* 8017ADA0 00177D00 7F A4 EB 78 */ mr r4, r29 -/* 8017ADA4 00177D04 38 60 00 0B */ li r3, 0xb -/* 8017ADA8 00177D08 4B E9 1A CD */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput -/* 8017ADAC 00177D0C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017ADB0 00177D10 40 82 00 14 */ bne lbl_8017ADC4 -/* 8017ADB4 00177D14 7F 83 E3 78 */ mr r3, r28 -/* 8017ADB8 00177D18 7F C5 F3 78 */ mr r5, r30 -/* 8017ADBC 00177D1C 38 80 00 00 */ li r4, 0 -/* 8017ADC0 00177D20 48 00 03 05 */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager -lbl_8017ADC4: -/* 8017ADC4 00177D24 E3 E1 01 18 */ psq_l f31, 280(r1), 0, qr0 -/* 8017ADC8 00177D28 80 01 01 24 */ lwz r0, 0x124(r1) -/* 8017ADCC 00177D2C CB E1 01 10 */ lfd f31, 0x110(r1) -/* 8017ADD0 00177D30 83 E1 01 0C */ lwz r31, 0x10c(r1) -/* 8017ADD4 00177D34 83 C1 01 08 */ lwz r30, 0x108(r1) -/* 8017ADD8 00177D38 83 A1 01 04 */ lwz r29, 0x104(r1) -/* 8017ADDC 00177D3C 83 81 01 00 */ lwz r28, 0x100(r1) -/* 8017ADE0 00177D40 7C 08 03 A6 */ mtlr r0 -/* 8017ADE4 00177D44 38 21 01 20 */ addi r1, r1, 0x120 -/* 8017ADE8 00177D48 4E 80 00 20 */ blr - -.global ApplyGrappleJump__7CPlayerFR13CStateManager -ApplyGrappleJump__7CPlayerFR13CStateManager: -/* 8017ADEC 00177D4C 94 21 FF 50 */ stwu r1, -0xb0(r1) -/* 8017ADF0 00177D50 7C 08 02 A6 */ mflr r0 -/* 8017ADF4 00177D54 90 01 00 B4 */ stw r0, 0xb4(r1) -/* 8017ADF8 00177D58 DB E1 00 A0 */ stfd f31, 0xa0(r1) -/* 8017ADFC 00177D5C F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 -/* 8017AE00 00177D60 DB C1 00 90 */ stfd f30, 0x90(r1) -/* 8017AE04 00177D64 F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0 -/* 8017AE08 00177D68 DB A1 00 80 */ stfd f29, 0x80(r1) -/* 8017AE0C 00177D6C F3 A1 00 88 */ psq_st f29, 136(r1), 0, qr0 -/* 8017AE10 00177D70 93 E1 00 7C */ stw r31, 0x7c(r1) -/* 8017AE14 00177D74 A0 03 03 10 */ lhz r0, 0x310(r3) -/* 8017AE18 00177D78 7C 7F 1B 78 */ mr r31, r3 -/* 8017AE1C 00177D7C 7C 83 23 78 */ mr r3, r4 -/* 8017AE20 00177D80 38 81 00 0C */ addi r4, r1, 0xc -/* 8017AE24 00177D84 B0 01 00 08 */ sth r0, 8(r1) -/* 8017AE28 00177D88 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8017AE2C 00177D8C 4B ED 17 79 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017AE30 00177D90 7C 64 1B 78 */ mr r4, r3 -/* 8017AE34 00177D94 38 61 00 10 */ addi r3, r1, 0x10 -/* 8017AE38 00177D98 4B F2 EC 91 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" -/* 8017AE3C 00177D9C 80 A3 00 04 */ lwz r5, 4(r3) -/* 8017AE40 00177DA0 28 05 00 00 */ cmplwi r5, 0 -/* 8017AE44 00177DA4 41 82 01 B0 */ beq lbl_8017AFF4 -/* 8017AE48 00177DA8 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017AE4C 00177DAC C0 22 A2 68 */ lfs f1, lbl_805ABF88@sda21(r2) -/* 8017AE50 00177DB0 C0 03 02 A8 */ lfs f0, 0x2a8(r3) -/* 8017AE54 00177DB4 C0 5F 03 BC */ lfs f2, 0x3bc(r31) -/* 8017AE58 00177DB8 EC 01 00 32 */ fmuls f0, f1, f0 -/* 8017AE5C 00177DBC C3 FF 03 C0 */ lfs f31, 0x3c0(r31) -/* 8017AE60 00177DC0 C3 DF 03 C4 */ lfs f30, 0x3c4(r31) -/* 8017AE64 00177DC4 C3 BF 03 C8 */ lfs f29, 0x3c8(r31) -/* 8017AE68 00177DC8 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8017AE6C 00177DCC 40 80 00 14 */ bge lbl_8017AE80 -/* 8017AE70 00177DD0 C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) -/* 8017AE74 00177DD4 EF FF 00 32 */ fmuls f31, f31, f0 -/* 8017AE78 00177DD8 EF DE 00 32 */ fmuls f30, f30, f0 -/* 8017AE7C 00177DDC EF BD 00 32 */ fmuls f29, f29, f0 -lbl_8017AE80: -/* 8017AE80 00177DE0 C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 8017AE84 00177DE4 38 61 00 30 */ addi r3, r1, 0x30 -/* 8017AE88 00177DE8 C0 05 00 50 */ lfs f0, 0x50(r5) -/* 8017AE8C 00177DEC 38 81 00 60 */ addi r4, r1, 0x60 -/* 8017AE90 00177DF0 C0 7F 00 60 */ lfs f3, 0x60(r31) -/* 8017AE94 00177DF4 C0 45 00 60 */ lfs f2, 0x60(r5) -/* 8017AE98 00177DF8 EC 81 00 28 */ fsubs f4, f1, f0 -/* 8017AE9C 00177DFC C0 3F 00 40 */ lfs f1, 0x40(r31) -/* 8017AEA0 00177E00 C0 05 00 40 */ lfs f0, 0x40(r5) -/* 8017AEA4 00177E04 EC 43 10 28 */ fsubs f2, f3, f2 -/* 8017AEA8 00177E08 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8017AEAC 00177E0C D0 81 00 64 */ stfs f4, 0x64(r1) -/* 8017AEB0 00177E10 D0 41 00 68 */ stfs f2, 0x68(r1) -/* 8017AEB4 00177E14 D0 01 00 60 */ stfs f0, 0x60(r1) -/* 8017AEB8 00177E18 48 19 99 99 */ bl AsNormalized__9CVector3fCFv -/* 8017AEBC 00177E1C C0 C1 00 34 */ lfs f6, 0x34(r1) -/* 8017AEC0 00177E20 38 61 00 48 */ addi r3, r1, 0x48 -/* 8017AEC4 00177E24 C0 E1 00 38 */ lfs f7, 0x38(r1) -/* 8017AEC8 00177E28 C0 A1 00 30 */ lfs f5, 0x30(r1) -/* 8017AECC 00177E2C EC 9F 01 B2 */ fmuls f4, f31, f6 -/* 8017AED0 00177E30 EC 7E 01 F2 */ fmuls f3, f30, f7 -/* 8017AED4 00177E34 C0 01 00 68 */ lfs f0, 0x68(r1) -/* 8017AED8 00177E38 EC 3D 01 72 */ fmuls f1, f29, f5 -/* 8017AEDC 00177E3C C0 41 00 60 */ lfs f2, 0x60(r1) -/* 8017AEE0 00177E40 EC A5 27 B8 */ fmsubs f5, f5, f30, f4 -/* 8017AEE4 00177E44 EC 86 1F 78 */ fmsubs f4, f6, f29, f3 -/* 8017AEE8 00177E48 EC 67 0F F8 */ fmsubs f3, f7, f31, f1 -/* 8017AEEC 00177E4C C0 21 00 64 */ lfs f1, 0x64(r1) -/* 8017AEF0 00177E50 D0 01 00 50 */ stfs f0, 0x50(r1) -/* 8017AEF4 00177E54 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017AEF8 00177E58 D0 81 00 54 */ stfs f4, 0x54(r1) -/* 8017AEFC 00177E5C C3 A2 A2 4C */ lfs f29, lbl_805ABF6C@sda21(r2) -/* 8017AF00 00177E60 D0 61 00 58 */ stfs f3, 0x58(r1) -/* 8017AF04 00177E64 D0 A1 00 5C */ stfs f5, 0x5c(r1) -/* 8017AF08 00177E68 D0 41 00 48 */ stfs f2, 0x48(r1) -/* 8017AF0C 00177E6C D0 21 00 4C */ stfs f1, 0x4c(r1) -/* 8017AF10 00177E70 D0 01 00 50 */ stfs f0, 0x50(r1) -/* 8017AF14 00177E74 48 19 97 E5 */ bl CanBeNormalized__9CVector3fCFv -/* 8017AF18 00177E78 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017AF1C 00177E7C 41 82 00 7C */ beq lbl_8017AF98 -/* 8017AF20 00177E80 38 61 00 54 */ addi r3, r1, 0x54 -/* 8017AF24 00177E84 48 19 97 D5 */ bl CanBeNormalized__9CVector3fCFv -/* 8017AF28 00177E88 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017AF2C 00177E8C 41 82 00 6C */ beq lbl_8017AF98 -/* 8017AF30 00177E90 38 61 00 18 */ addi r3, r1, 0x18 -/* 8017AF34 00177E94 38 81 00 48 */ addi r4, r1, 0x48 -/* 8017AF38 00177E98 48 19 99 19 */ bl AsNormalized__9CVector3fCFv -/* 8017AF3C 00177E9C 38 61 00 24 */ addi r3, r1, 0x24 -/* 8017AF40 00177EA0 38 81 00 54 */ addi r4, r1, 0x54 -/* 8017AF44 00177EA4 48 19 99 0D */ bl AsNormalized__9CVector3fCFv -/* 8017AF48 00177EA8 C0 21 00 28 */ lfs f1, 0x28(r1) -/* 8017AF4C 00177EAC C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 8017AF50 00177EB0 C0 41 00 24 */ lfs f2, 0x24(r1) -/* 8017AF54 00177EB4 EC 01 00 32 */ fmuls f0, f1, f0 -/* 8017AF58 00177EB8 C0 21 00 18 */ lfs f1, 0x18(r1) -/* 8017AF5C 00177EBC C0 81 00 2C */ lfs f4, 0x2c(r1) -/* 8017AF60 00177EC0 C0 61 00 20 */ lfs f3, 0x20(r1) -/* 8017AF64 00177EC4 EC 22 00 7A */ fmadds f1, f2, f1, f0 -/* 8017AF68 00177EC8 C8 02 A2 40 */ lfd f0, lbl_805ABF60@sda21(r2) -/* 8017AF6C 00177ECC EC 24 08 FA */ fmadds f1, f4, f3, f1 -/* 8017AF70 00177ED0 FC 20 0A 10 */ fabs f1, f1 -/* 8017AF74 00177ED4 FC 40 08 18 */ frsp f2, f1 -/* 8017AF78 00177ED8 FC 20 12 10 */ fabs f1, f2 -/* 8017AF7C 00177EDC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017AF80 00177EE0 40 81 00 14 */ ble lbl_8017AF94 -/* 8017AF84 00177EE4 C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) -/* 8017AF88 00177EE8 C0 22 A2 4C */ lfs f1, lbl_805ABF6C@sda21(r2) -/* 8017AF8C 00177EEC FC 02 00 6E */ fsel f0, f2, f1, f0 -/* 8017AF90 00177EF0 EC 41 00 32 */ fmuls f2, f1, f0 -lbl_8017AF94: -/* 8017AF94 00177EF4 FF A0 10 90 */ fmr f29, f2 -lbl_8017AF98: -/* 8017AF98 00177EF8 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017AF9C 00177EFC C0 41 00 58 */ lfs f2, 0x58(r1) -/* 8017AFA0 00177F00 C0 83 02 C8 */ lfs f4, 0x2c8(r3) -/* 8017AFA4 00177F04 C0 21 00 5C */ lfs f1, 0x5c(r1) -/* 8017AFA8 00177F08 C0 01 00 54 */ lfs f0, 0x54(r1) -/* 8017AFAC 00177F0C EC 44 00 B2 */ fmuls f2, f4, f2 -/* 8017AFB0 00177F10 C0 62 A2 80 */ lfs f3, lbl_805ABFA0@sda21(r2) -/* 8017AFB4 00177F14 EC 24 00 72 */ fmuls f1, f4, f1 -/* 8017AFB8 00177F18 EC 04 00 32 */ fmuls f0, f4, f0 -/* 8017AFBC 00177F1C EC 43 00 B2 */ fmuls f2, f3, f2 -/* 8017AFC0 00177F20 EC 23 00 72 */ fmuls f1, f3, f1 -/* 8017AFC4 00177F24 EC 03 00 32 */ fmuls f0, f3, f0 -/* 8017AFC8 00177F28 EC 5D 00 B2 */ fmuls f2, f29, f2 -/* 8017AFCC 00177F2C EC 3D 00 72 */ fmuls f1, f29, f1 -/* 8017AFD0 00177F30 EC 1D 00 32 */ fmuls f0, f29, f0 -/* 8017AFD4 00177F34 D0 41 00 40 */ stfs f2, 0x40(r1) -/* 8017AFD8 00177F38 D0 01 00 3C */ stfs f0, 0x3c(r1) -/* 8017AFDC 00177F3C D0 21 00 44 */ stfs f1, 0x44(r1) -/* 8017AFE0 00177F40 4B EA 05 55 */ bl Identity__10CAxisAngleFv -/* 8017AFE4 00177F44 7C 65 1B 78 */ mr r5, r3 -/* 8017AFE8 00177F48 7F E3 FB 78 */ mr r3, r31 -/* 8017AFEC 00177F4C 38 81 00 3C */ addi r4, r1, 0x3c -/* 8017AFF0 00177F50 4B FA 12 D5 */ bl ApplyForceWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle -lbl_8017AFF4: -/* 8017AFF4 00177F54 E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 -/* 8017AFF8 00177F58 CB E1 00 A0 */ lfd f31, 0xa0(r1) -/* 8017AFFC 00177F5C E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0 -/* 8017B000 00177F60 CB C1 00 90 */ lfd f30, 0x90(r1) -/* 8017B004 00177F64 E3 A1 00 88 */ psq_l f29, 136(r1), 0, qr0 -/* 8017B008 00177F68 CB A1 00 80 */ lfd f29, 0x80(r1) -/* 8017B00C 00177F6C 80 01 00 B4 */ lwz r0, 0xb4(r1) -/* 8017B010 00177F70 83 E1 00 7C */ lwz r31, 0x7c(r1) -/* 8017B014 00177F74 7C 08 03 A6 */ mtlr r0 -/* 8017B018 00177F78 38 21 00 B0 */ addi r1, r1, 0xb0 -/* 8017B01C 00177F7C 4E 80 00 20 */ blr - -.global BeginGrapple__7CPlayerFR9CVector3fR13CStateManager -BeginGrapple__7CPlayerFR9CVector3fR13CStateManager: -/* 8017B020 00177F80 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8017B024 00177F84 7C 08 02 A6 */ mflr r0 -/* 8017B028 00177F88 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017B02C 00177F8C 90 01 00 24 */ stw r0, 0x24(r1) -/* 8017B030 00177F90 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8017B034 00177F94 7C BF 2B 78 */ mr r31, r5 -/* 8017B038 00177F98 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8017B03C 00177F9C 7C 9E 23 78 */ mr r30, r4 -/* 8017B040 00177FA0 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8017B044 00177FA4 7C 7D 1B 78 */ mr r29, r3 -/* 8017B048 00177FA8 7F C3 F3 78 */ mr r3, r30 -/* 8017B04C 00177FAC D0 04 00 08 */ stfs f0, 8(r4) -/* 8017B050 00177FB0 48 19 96 A9 */ bl CanBeNormalized__9CVector3fCFv -/* 8017B054 00177FB4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017B058 00177FB8 41 82 00 50 */ beq lbl_8017B0A8 -/* 8017B05C 00177FBC C0 1E 00 04 */ lfs f0, 4(r30) -/* 8017B060 00177FC0 38 7D 03 C0 */ addi r3, r29, 0x3c0 -/* 8017B064 00177FC4 D0 1D 03 C0 */ stfs f0, 0x3c0(r29) -/* 8017B068 00177FC8 C0 1E 00 00 */ lfs f0, 0(r30) -/* 8017B06C 00177FCC FC 00 00 50 */ fneg f0, f0 -/* 8017B070 00177FD0 D0 1D 03 C4 */ stfs f0, 0x3c4(r29) -/* 8017B074 00177FD4 48 19 98 85 */ bl Normalize__9CVector3fFv -/* 8017B078 00177FD8 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017B07C 00177FDC 7F A3 EB 78 */ mr r3, r29 -/* 8017B080 00177FE0 7F E5 FB 78 */ mr r5, r31 -/* 8017B084 00177FE4 38 80 00 05 */ li r4, 5 -/* 8017B088 00177FE8 D0 1D 03 BC */ stfs f0, 0x3bc(r29) -/* 8017B08C 00177FEC 48 00 04 09 */ bl SetOrbitState__7CPlayerFQ27CPlayer17EPlayerOrbitStateR13CStateManager -/* 8017B090 00177FF0 38 00 00 02 */ li r0, 2 -/* 8017B094 00177FF4 7F A3 EB 78 */ mr r3, r29 -/* 8017B098 00177FF8 90 1D 03 B8 */ stw r0, 0x3b8(r29) -/* 8017B09C 00177FFC 7F E5 FB 78 */ mr r5, r31 -/* 8017B0A0 00178000 38 80 00 25 */ li r4, 0x25 -/* 8017B0A4 00178004 4B ED 8E DD */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager -lbl_8017B0A8: -/* 8017B0A8 00178008 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8017B0AC 0017800C 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8017B0B0 00178010 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8017B0B4 00178014 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 8017B0B8 00178018 7C 08 03 A6 */ mtlr r0 -/* 8017B0BC 0017801C 38 21 00 20 */ addi r1, r1, 0x20 -/* 8017B0C0 00178020 4E 80 00 20 */ blr - -.global BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager -BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager: -/* 8017B0C4 00178024 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8017B0C8 00178028 7C 08 02 A6 */ mflr r0 -/* 8017B0CC 0017802C C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017B0D0 00178030 90 01 00 24 */ stw r0, 0x24(r1) -/* 8017B0D4 00178034 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8017B0D8 00178038 7C BF 2B 78 */ mr r31, r5 -/* 8017B0DC 0017803C 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8017B0E0 00178040 7C 9E 23 78 */ mr r30, r4 -/* 8017B0E4 00178044 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8017B0E8 00178048 7C 7D 1B 78 */ mr r29, r3 -/* 8017B0EC 0017804C D0 03 02 94 */ stfs f0, 0x294(r3) -/* 8017B0F0 00178050 D0 03 02 9C */ stfs f0, 0x29c(r3) -/* 8017B0F4 00178054 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) -/* 8017B0F8 00178058 80 04 02 D0 */ lwz r0, 0x2d0(r4) -/* 8017B0FC 0017805C 2C 00 00 02 */ cmpwi r0, 2 -/* 8017B100 00178060 40 82 00 20 */ bne lbl_8017B120 -/* 8017B104 00178064 80 1D 03 B8 */ lwz r0, 0x3b8(r29) -/* 8017B108 00178068 2C 00 00 03 */ cmpwi r0, 3 -/* 8017B10C 0017806C 40 82 00 14 */ bne lbl_8017B120 -/* 8017B110 00178070 7F E4 FB 78 */ mr r4, r31 -/* 8017B114 00178074 4B FF FC D9 */ bl ApplyGrappleJump__7CPlayerFR13CStateManager -/* 8017B118 00178078 7F A3 EB 78 */ mr r3, r29 -/* 8017B11C 0017807C 48 00 01 C5 */ bl PreventFallingCameraPitch__7CPlayerFv -lbl_8017B120: -/* 8017B120 00178080 7F A3 EB 78 */ mr r3, r29 -/* 8017B124 00178084 7F C4 F3 78 */ mr r4, r30 -/* 8017B128 00178088 7F E5 FB 78 */ mr r5, r31 -/* 8017B12C 0017808C 48 00 00 71 */ bl SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager -/* 8017B130 00178090 38 00 00 00 */ li r0, 0 -/* 8017B134 00178094 7F A3 EB 78 */ mr r3, r29 -/* 8017B138 00178098 90 1D 03 B8 */ stw r0, 0x3b8(r29) -/* 8017B13C 0017809C 7F E5 FB 78 */ mr r5, r31 -/* 8017B140 001780A0 38 80 00 25 */ li r4, 0x25 -/* 8017B144 001780A4 4B ED 92 0D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 8017B148 001780A8 80 7D 04 90 */ lwz r3, 0x490(r29) -/* 8017B14C 001780AC 38 80 00 08 */ li r4, 8 -/* 8017B150 001780B0 80 63 07 40 */ lwz r3, 0x740(r3) -/* 8017B154 001780B4 4B FA 34 0D */ bl SetAnimState__11CGrappleArmFQ211CGrappleArm9EArmState -/* 8017B158 001780B8 7F A3 EB 78 */ mr r3, r29 -/* 8017B15C 001780BC 48 00 01 4D */ bl InGrappleJumpCooldown__7CPlayerCFv -/* 8017B160 001780C0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017B164 001780C4 40 82 00 1C */ bne lbl_8017B180 -/* 8017B168 001780C8 80 1D 03 B8 */ lwz r0, 0x3b8(r29) -/* 8017B16C 001780CC 2C 00 00 04 */ cmpwi r0, 4 -/* 8017B170 001780D0 41 82 00 10 */ beq lbl_8017B180 -/* 8017B174 001780D4 7F A3 EB 78 */ mr r3, r29 -/* 8017B178 001780D8 7F E4 FB 78 */ mr r4, r31 -/* 8017B17C 001780DC 4B E9 EF 31 */ bl DrawGun__7CPlayerFR13CStateManager -lbl_8017B180: -/* 8017B180 001780E0 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8017B184 001780E4 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8017B188 001780E8 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8017B18C 001780EC 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 8017B190 001780F0 7C 08 03 A6 */ mtlr r0 -/* 8017B194 001780F4 38 21 00 20 */ addi r1, r1, 0x20 -/* 8017B198 001780F8 4E 80 00 20 */ blr - -.global SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager -SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager: -/* 8017B19C 001780FC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8017B1A0 00178100 7C 08 02 A6 */ mflr r0 -/* 8017B1A4 00178104 2C 04 00 08 */ cmpwi r4, 8 -/* 8017B1A8 00178108 90 01 00 14 */ stw r0, 0x14(r1) -/* 8017B1AC 0017810C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8017B1B0 00178110 7C 7F 1B 78 */ mr r31, r3 -/* 8017B1B4 00178114 90 83 03 0C */ stw r4, 0x30c(r3) -/* 8017B1B8 00178118 41 82 00 14 */ beq lbl_8017B1CC -/* 8017B1BC 0017811C 40 80 00 78 */ bge lbl_8017B234 -/* 8017B1C0 00178120 2C 04 00 07 */ cmpwi r4, 7 -/* 8017B1C4 00178124 40 80 00 14 */ bge lbl_8017B1D8 -/* 8017B1C8 00178128 48 00 00 6C */ b lbl_8017B234 -lbl_8017B1CC: -/* 8017B1CC 0017812C 7C A4 2B 78 */ mr r4, r5 -/* 8017B1D0 00178130 48 00 37 15 */ bl ActivateOrbitSource__7CPlayerFR13CStateManager -/* 8017B1D4 00178134 48 00 00 6C */ b lbl_8017B240 -lbl_8017B1D8: -/* 8017B1D8 00178138 38 80 00 02 */ li r4, 2 -/* 8017B1DC 0017813C 48 00 02 B9 */ bl SetOrbitState__7CPlayerFQ27CPlayer17EPlayerOrbitStateR13CStateManager -/* 8017B1E0 00178140 80 1F 03 08 */ lwz r0, 0x308(r31) -/* 8017B1E4 00178144 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017B1E8 00178148 54 00 10 3A */ slwi r0, r0, 2 -/* 8017B1EC 0017814C C0 1F 00 38 */ lfs f0, 0x38(r31) -/* 8017B1F0 00178150 7C 63 02 14 */ add r3, r3, r0 -/* 8017B1F4 00178154 C0 7F 00 48 */ lfs f3, 0x48(r31) -/* 8017B1F8 00178158 C0 C3 01 64 */ lfs f6, 0x164(r3) -/* 8017B1FC 0017815C C0 5F 00 58 */ lfs f2, 0x58(r31) -/* 8017B200 00178160 EC 06 00 32 */ fmuls f0, f6, f0 -/* 8017B204 00178164 C0 3F 00 40 */ lfs f1, 0x40(r31) -/* 8017B208 00178168 EC 86 00 F2 */ fmuls f4, f6, f3 -/* 8017B20C 0017816C C0 BF 00 50 */ lfs f5, 0x50(r31) -/* 8017B210 00178170 EC 46 00 B2 */ fmuls f2, f6, f2 -/* 8017B214 00178174 C0 7F 00 60 */ lfs f3, 0x60(r31) -/* 8017B218 00178178 EC 01 00 2A */ fadds f0, f1, f0 -/* 8017B21C 0017817C EC 85 20 2A */ fadds f4, f5, f4 -/* 8017B220 00178180 EC 23 10 2A */ fadds f1, f3, f2 -/* 8017B224 00178184 D0 1F 03 14 */ stfs f0, 0x314(r31) -/* 8017B228 00178188 D0 9F 03 18 */ stfs f4, 0x318(r31) -/* 8017B22C 0017818C D0 3F 03 1C */ stfs f1, 0x31c(r31) -/* 8017B230 00178190 48 00 00 10 */ b lbl_8017B240 -lbl_8017B234: -/* 8017B234 00178194 7F E3 FB 78 */ mr r3, r31 -/* 8017B238 00178198 38 80 00 00 */ li r4, 0 -/* 8017B23C 0017819C 48 00 02 59 */ bl SetOrbitState__7CPlayerFQ27CPlayer17EPlayerOrbitStateR13CStateManager -lbl_8017B240: -/* 8017B240 001781A0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8017B244 001781A4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8017B248 001781A8 7C 08 03 A6 */ mtlr r0 -/* 8017B24C 001781AC 38 21 00 10 */ addi r1, r1, 0x10 -/* 8017B250 001781B0 4E 80 00 20 */ blr - -.global SetOrbitRequestForTarget__7CPlayerF9TUniqueId19EPlayerOrbitRequestR13CStateManager -SetOrbitRequestForTarget__7CPlayerF9TUniqueId19EPlayerOrbitRequestR13CStateManager: -/* 8017B254 001781B4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8017B258 001781B8 7C 08 02 A6 */ mflr r0 -/* 8017B25C 001781BC 90 01 00 14 */ stw r0, 0x14(r1) -/* 8017B260 001781C0 80 03 03 04 */ lwz r0, 0x304(r3) -/* 8017B264 001781C4 2C 00 00 01 */ cmpwi r0, 1 -/* 8017B268 001781C8 41 82 00 14 */ beq lbl_8017B27C -/* 8017B26C 001781CC 2C 00 00 05 */ cmpwi r0, 5 -/* 8017B270 001781D0 41 82 00 0C */ beq lbl_8017B27C -/* 8017B274 001781D4 2C 00 00 04 */ cmpwi r0, 4 -/* 8017B278 001781D8 40 82 00 20 */ bne lbl_8017B298 -lbl_8017B27C: -/* 8017B27C 001781DC A0 84 00 00 */ lhz r4, 0(r4) -/* 8017B280 001781E0 A0 03 03 10 */ lhz r0, 0x310(r3) -/* 8017B284 001781E4 7C 04 00 40 */ cmplw r4, r0 -/* 8017B288 001781E8 40 82 00 10 */ bne lbl_8017B298 -/* 8017B28C 001781EC 7C A4 2B 78 */ mr r4, r5 -/* 8017B290 001781F0 7C C5 33 78 */ mr r5, r6 -/* 8017B294 001781F4 4B FF FF 09 */ bl SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager -lbl_8017B298: -/* 8017B298 001781F8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8017B29C 001781FC 7C 08 03 A6 */ mtlr r0 -/* 8017B2A0 00178200 38 21 00 10 */ addi r1, r1, 0x10 -/* 8017B2A4 00178204 4E 80 00 20 */ blr - -.global InGrappleJumpCooldown__7CPlayerCFv -InGrappleJumpCooldown__7CPlayerCFv: -/* 8017B2A8 00178208 80 03 02 58 */ lwz r0, 0x258(r3) -/* 8017B2AC 0017820C 2C 00 00 00 */ cmpwi r0, 0 -/* 8017B2B0 00178210 41 82 00 28 */ beq lbl_8017B2D8 -/* 8017B2B4 00178214 C0 03 03 D8 */ lfs f0, 0x3d8(r3) -/* 8017B2B8 00178218 C0 22 A2 30 */ lfs f1, lbl_805ABF50@sda21(r2) -/* 8017B2BC 0017821C FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 8017B2C0 00178220 41 81 00 10 */ bgt lbl_8017B2D0 -/* 8017B2C4 00178224 C0 03 02 94 */ lfs f0, 0x294(r3) -/* 8017B2C8 00178228 FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 8017B2CC 0017822C 40 82 00 0C */ bne lbl_8017B2D8 -lbl_8017B2D0: -/* 8017B2D0 00178230 38 60 00 01 */ li r3, 1 -/* 8017B2D4 00178234 4E 80 00 20 */ blr -lbl_8017B2D8: -/* 8017B2D8 00178238 38 60 00 00 */ li r3, 0 -/* 8017B2DC 0017823C 4E 80 00 20 */ blr - -.global PreventFallingCameraPitch__7CPlayerFv -PreventFallingCameraPitch__7CPlayerFv: -/* 8017B2E0 00178240 C0 22 A2 30 */ lfs f1, lbl_805ABF50@sda21(r2) -/* 8017B2E4 00178244 38 00 00 01 */ li r0, 1 -/* 8017B2E8 00178248 C0 02 A2 84 */ lfs f0, lbl_805ABFA4@sda21(r2) -/* 8017B2EC 0017824C D0 23 02 94 */ stfs f1, 0x294(r3) -/* 8017B2F0 00178250 D0 03 02 9C */ stfs f0, 0x29c(r3) -/* 8017B2F4 00178254 98 03 02 A4 */ stb r0, 0x2a4(r3) -/* 8017B2F8 00178258 4E 80 00 20 */ blr - -.global OrbitCarcass__7CPlayerFR13CStateManager -OrbitCarcass__7CPlayerFR13CStateManager: -/* 8017B2FC 0017825C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8017B300 00178260 7C 08 02 A6 */ mflr r0 -/* 8017B304 00178264 90 01 00 14 */ stw r0, 0x14(r1) -/* 8017B308 00178268 80 03 03 04 */ lwz r0, 0x304(r3) -/* 8017B30C 0017826C 2C 00 00 01 */ cmpwi r0, 1 -/* 8017B310 00178270 40 82 00 18 */ bne lbl_8017B328 -/* 8017B314 00178274 38 00 00 02 */ li r0, 2 -/* 8017B318 00178278 7C 85 23 78 */ mr r5, r4 -/* 8017B31C 0017827C 90 03 03 08 */ stw r0, 0x308(r3) -/* 8017B320 00178280 38 80 00 03 */ li r4, 3 -/* 8017B324 00178284 48 00 01 71 */ bl SetOrbitState__7CPlayerFQ27CPlayer17EPlayerOrbitStateR13CStateManager -lbl_8017B328: -/* 8017B328 00178288 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8017B32C 0017828C 7C 08 03 A6 */ mtlr r0 -/* 8017B330 00178290 38 21 00 10 */ addi r1, r1, 0x10 -/* 8017B334 00178294 4E 80 00 20 */ blr - -.global OrbitPoint__7CPlayerFQ27CPlayer16EPlayerOrbitTypeR13CStateManager -OrbitPoint__7CPlayerFQ27CPlayer16EPlayerOrbitTypeR13CStateManager: -/* 8017B338 00178298 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8017B33C 0017829C 7C 08 02 A6 */ mflr r0 -/* 8017B340 001782A0 90 01 00 14 */ stw r0, 0x14(r1) -/* 8017B344 001782A4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8017B348 001782A8 7C BF 2B 78 */ mr r31, r5 -/* 8017B34C 001782AC 93 C1 00 08 */ stw r30, 8(r1) -/* 8017B350 001782B0 7C 7E 1B 78 */ mr r30, r3 -/* 8017B354 001782B4 90 83 03 08 */ stw r4, 0x308(r3) -/* 8017B358 001782B8 38 80 00 02 */ li r4, 2 -/* 8017B35C 001782BC 48 00 01 39 */ bl SetOrbitState__7CPlayerFQ27CPlayer17EPlayerOrbitStateR13CStateManager -/* 8017B360 001782C0 80 1E 03 08 */ lwz r0, 0x308(r30) -/* 8017B364 001782C4 7F C3 F3 78 */ mr r3, r30 -/* 8017B368 001782C8 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) -/* 8017B36C 001782CC 7F E4 FB 78 */ mr r4, r31 -/* 8017B370 001782D0 54 00 10 3A */ slwi r0, r0, 2 -/* 8017B374 001782D4 7C A5 02 14 */ add r5, r5, r0 -/* 8017B378 001782D8 C0 25 01 64 */ lfs f1, 0x164(r5) -/* 8017B37C 001782DC 48 00 05 9D */ bl SetOrbitPosition__7CPlayerFfR13CStateManager -/* 8017B380 001782E0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8017B384 001782E4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8017B388 001782E8 83 C1 00 08 */ lwz r30, 8(r1) -/* 8017B38C 001782EC 7C 08 03 A6 */ mtlr r0 -/* 8017B390 001782F0 38 21 00 10 */ addi r1, r1, 0x10 -/* 8017B394 001782F4 4E 80 00 20 */ blr - -.global CalculateOrbitZBasedDistance__7CPlayerF16EPlayerOrbitType -CalculateOrbitZBasedDistance__7CPlayerF16EPlayerOrbitType: -/* 8017B398 001782F8 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8017B39C 001782FC 7C 08 02 A6 */ mflr r0 -/* 8017B3A0 00178300 90 01 00 34 */ stw r0, 0x34(r1) -/* 8017B3A4 00178304 DB E1 00 20 */ stfd f31, 0x20(r1) -/* 8017B3A8 00178308 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 -/* 8017B3AC 0017830C C0 83 00 60 */ lfs f4, 0x60(r3) -/* 8017B3B0 00178310 54 80 10 3A */ slwi r0, r4, 2 -/* 8017B3B4 00178314 C0 03 03 1C */ lfs f0, 0x31c(r3) -/* 8017B3B8 00178318 38 81 00 08 */ addi r4, r1, 8 -/* 8017B3BC 0017831C 80 CD A1 18 */ lwz r6, gpTweakPlayer@sda21(r13) -/* 8017B3C0 00178320 38 A2 A2 88 */ addi r5, r2, lbl_805ABFA8@sda21 -/* 8017B3C4 00178324 EC 20 20 28 */ fsubs f1, f0, f4 -/* 8017B3C8 00178328 C0 63 00 50 */ lfs f3, 0x50(r3) -/* 8017B3CC 0017832C C0 43 00 40 */ lfs f2, 0x40(r3) -/* 8017B3D0 00178330 7C C6 02 14 */ add r6, r6, r0 -/* 8017B3D4 00178334 C0 02 A2 8C */ lfs f0, lbl_805ABFAC@sda21(r2) -/* 8017B3D8 00178338 38 6D 8E 78 */ addi r3, r13, lbl_805A7A38@sda21 -/* 8017B3DC 0017833C FC 20 0A 10 */ fabs f1, f1 -/* 8017B3E0 00178340 C3 E6 01 58 */ lfs f31, 0x158(r6) -/* 8017B3E4 00178344 D0 41 00 0C */ stfs f2, 0xc(r1) -/* 8017B3E8 00178348 FC 20 08 18 */ frsp f1, f1 -/* 8017B3EC 0017834C D0 61 00 10 */ stfs f3, 0x10(r1) -/* 8017B3F0 00178350 D0 81 00 14 */ stfs f4, 0x14(r1) -/* 8017B3F4 00178354 EC 01 00 24 */ fdivs f0, f1, f0 -/* 8017B3F8 00178358 D0 01 00 08 */ stfs f0, 8(r1) -/* 8017B3FC 0017835C 4B E9 0E B9 */ bl "Clamp__5CMathFRCfRCfRCf" -/* 8017B400 00178360 C0 03 00 00 */ lfs f0, 0(r3) -/* 8017B404 00178364 EF FF 00 32 */ fmuls f31, f31, f0 -/* 8017B408 00178368 FC 20 F8 90 */ fmr f1, f31 -/* 8017B40C 0017836C E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 -/* 8017B410 00178370 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8017B414 00178374 CB E1 00 20 */ lfd f31, 0x20(r1) -/* 8017B418 00178378 7C 08 03 A6 */ mtlr r0 -/* 8017B41C 0017837C 38 21 00 30 */ addi r1, r1, 0x30 -/* 8017B420 00178380 4E 80 00 20 */ blr - -.global GetHUDOrbitTargetPosition__7CPlayerCFv -GetHUDOrbitTargetPosition__7CPlayerCFv: -/* 8017B424 00178384 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8017B428 00178388 7C 08 02 A6 */ mflr r0 -/* 8017B42C 0017838C 90 01 00 44 */ stw r0, 0x44(r1) -/* 8017B430 00178390 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 8017B434 00178394 7C 9F 23 78 */ mr r31, r4 -/* 8017B438 00178398 93 C1 00 38 */ stw r30, 0x38(r1) -/* 8017B43C 0017839C 7C 7E 1B 78 */ mr r30, r3 -/* 8017B440 001783A0 38 61 00 08 */ addi r3, r1, 8 -/* 8017B444 001783A4 80 84 07 6C */ lwz r4, 0x76c(r4) -/* 8017B448 001783A8 4B F6 E9 5D */ bl GetCameraBobTransformation__16CPlayerCameraBobCFv -/* 8017B44C 001783AC C0 3F 03 14 */ lfs f1, 0x314(r31) -/* 8017B450 001783B0 C0 01 00 14 */ lfs f0, 0x14(r1) -/* 8017B454 001783B4 C0 9F 03 18 */ lfs f4, 0x318(r31) -/* 8017B458 001783B8 C0 61 00 24 */ lfs f3, 0x24(r1) -/* 8017B45C 001783BC EC 01 00 2A */ fadds f0, f1, f0 -/* 8017B460 001783C0 C0 5F 03 1C */ lfs f2, 0x31c(r31) -/* 8017B464 001783C4 C0 21 00 34 */ lfs f1, 0x34(r1) -/* 8017B468 001783C8 EC 64 18 2A */ fadds f3, f4, f3 -/* 8017B46C 001783CC D0 1E 00 00 */ stfs f0, 0(r30) -/* 8017B470 001783D0 EC 02 08 2A */ fadds f0, f2, f1 -/* 8017B474 001783D4 D0 7E 00 04 */ stfs f3, 4(r30) -/* 8017B478 001783D8 D0 1E 00 08 */ stfs f0, 8(r30) -/* 8017B47C 001783DC 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 8017B480 001783E0 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8017B484 001783E4 83 C1 00 38 */ lwz r30, 0x38(r1) -/* 8017B488 001783E8 7C 08 03 A6 */ mtlr r0 -/* 8017B48C 001783EC 38 21 00 40 */ addi r1, r1, 0x40 -/* 8017B490 001783F0 4E 80 00 20 */ blr - -.global SetOrbitState__7CPlayerFQ27CPlayer17EPlayerOrbitStateR13CStateManager -SetOrbitState__7CPlayerFQ27CPlayer17EPlayerOrbitStateR13CStateManager: -/* 8017B494 001783F4 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8017B498 001783F8 7C 08 02 A6 */ mflr r0 -/* 8017B49C 001783FC 90 01 00 44 */ stw r0, 0x44(r1) -/* 8017B4A0 00178400 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 8017B4A4 00178404 7C BF 2B 78 */ mr r31, r5 -/* 8017B4A8 00178408 93 C1 00 38 */ stw r30, 0x38(r1) -/* 8017B4AC 0017840C 7C 7E 1B 78 */ mr r30, r3 -/* 8017B4B0 00178410 90 83 03 04 */ stw r4, 0x304(r3) -/* 8017B4B4 00178414 80 03 03 04 */ lwz r0, 0x304(r3) -/* 8017B4B8 00178418 80 85 08 70 */ lwz r4, 0x870(r5) -/* 8017B4BC 0017841C 2C 00 00 02 */ cmpwi r0, 2 -/* 8017B4C0 00178420 80 84 00 7C */ lwz r4, 0x7c(r4) -/* 8017B4C4 00178424 41 82 00 F4 */ beq lbl_8017B5B8 -/* 8017B4C8 00178428 40 80 00 14 */ bge lbl_8017B4DC -/* 8017B4CC 0017842C 2C 00 00 00 */ cmpwi r0, 0 -/* 8017B4D0 00178430 41 82 00 B4 */ beq lbl_8017B584 -/* 8017B4D4 00178434 40 80 00 14 */ bge lbl_8017B4E8 -/* 8017B4D8 00178438 48 00 00 FC */ b lbl_8017B5D4 -lbl_8017B4DC: -/* 8017B4DC 0017843C 2C 00 00 04 */ cmpwi r0, 4 -/* 8017B4E0 00178440 40 80 00 F4 */ bge lbl_8017B5D4 -/* 8017B4E4 00178444 48 00 00 10 */ b lbl_8017B4F4 -lbl_8017B4E8: -/* 8017B4E8 00178448 38 00 00 00 */ li r0, 0 -/* 8017B4EC 0017844C 98 04 01 8C */ stb r0, 0x18c(r4) -/* 8017B4F0 00178450 48 00 00 E4 */ b lbl_8017B5D4 -lbl_8017B4F4: -/* 8017B4F4 00178454 38 00 00 01 */ li r0, 1 -/* 8017B4F8 00178458 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017B4FC 0017845C 98 04 01 8C */ stb r0, 0x18c(r4) -/* 8017B500 00178460 38 61 00 20 */ addi r3, r1, 0x20 -/* 8017B504 00178464 C0 5E 03 1C */ lfs f2, 0x31c(r30) -/* 8017B508 00178468 C0 3E 00 60 */ lfs f1, 0x60(r30) -/* 8017B50C 0017846C C0 9E 03 18 */ lfs f4, 0x318(r30) -/* 8017B510 00178470 C0 7E 00 50 */ lfs f3, 0x50(r30) -/* 8017B514 00178474 EC A2 08 28 */ fsubs f5, f2, f1 -/* 8017B518 00178478 C0 5E 03 14 */ lfs f2, 0x314(r30) -/* 8017B51C 0017847C C0 3E 00 40 */ lfs f1, 0x40(r30) -/* 8017B520 00178480 EC 64 18 28 */ fsubs f3, f4, f3 -/* 8017B524 00178484 EC 22 08 28 */ fsubs f1, f2, f1 -/* 8017B528 00178488 D0 A1 00 28 */ stfs f5, 0x28(r1) -/* 8017B52C 0017848C D0 61 00 24 */ stfs f3, 0x24(r1) -/* 8017B530 00178490 D0 21 00 20 */ stfs f1, 0x20(r1) -/* 8017B534 00178494 D0 01 00 28 */ stfs f0, 0x28(r1) -/* 8017B538 00178498 48 19 91 C1 */ bl CanBeNormalized__9CVector3fCFv -/* 8017B53C 0017849C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017B540 001784A0 41 82 00 14 */ beq lbl_8017B554 -/* 8017B544 001784A4 38 61 00 20 */ addi r3, r1, 0x20 -/* 8017B548 001784A8 48 19 93 71 */ bl Magnitude__9CVector3fCFv -/* 8017B54C 001784AC D0 3E 03 40 */ stfs f1, 0x340(r30) -/* 8017B550 001784B0 48 00 00 0C */ b lbl_8017B55C -lbl_8017B554: -/* 8017B554 001784B4 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017B558 001784B8 D0 1E 03 40 */ stfs f0, 0x340(r30) -lbl_8017B55C: -/* 8017B55C 001784BC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017B560 001784C0 7F C3 F3 78 */ mr r3, r30 -/* 8017B564 001784C4 7F E5 FB 78 */ mr r5, r31 -/* 8017B568 001784C8 38 81 00 1C */ addi r4, r1, 0x1c -/* 8017B56C 001784CC B0 01 00 1C */ sth r0, 0x1c(r1) -/* 8017B570 001784D0 48 00 00 7D */ bl SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager -/* 8017B574 001784D4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017B578 001784D8 B0 01 00 18 */ sth r0, 0x18(r1) -/* 8017B57C 001784DC B0 1E 03 3C */ sth r0, 0x33c(r30) -/* 8017B580 001784E0 48 00 00 54 */ b lbl_8017B5D4 -lbl_8017B584: -/* 8017B584 001784E4 80 CD A1 18 */ lwz r6, gpTweakPlayer@sda21(r13) -/* 8017B588 001784E8 38 81 00 14 */ addi r4, r1, 0x14 -/* 8017B58C 001784EC C0 02 A2 90 */ lfs f0, lbl_805ABFB0@sda21(r2) -/* 8017B590 001784F0 C0 26 01 80 */ lfs f1, 0x180(r6) -/* 8017B594 001784F4 D0 3E 03 2C */ stfs f1, 0x32c(r30) -/* 8017B598 001784F8 D0 1E 03 2C */ stfs f0, 0x32c(r30) -/* 8017B59C 001784FC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017B5A0 00178500 B0 01 00 14 */ sth r0, 0x14(r1) -/* 8017B5A4 00178504 48 00 00 49 */ bl SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager -/* 8017B5A8 00178508 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017B5AC 0017850C B0 01 00 10 */ sth r0, 0x10(r1) -/* 8017B5B0 00178510 B0 1E 03 3C */ sth r0, 0x33c(r30) -/* 8017B5B4 00178514 48 00 00 20 */ b lbl_8017B5D4 -lbl_8017B5B8: -/* 8017B5B8 00178518 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017B5BC 0017851C 38 81 00 0C */ addi r4, r1, 0xc -/* 8017B5C0 00178520 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8017B5C4 00178524 48 00 00 29 */ bl SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager -/* 8017B5C8 00178528 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017B5CC 0017852C B0 01 00 08 */ sth r0, 8(r1) -/* 8017B5D0 00178530 B0 1E 03 3C */ sth r0, 0x33c(r30) -lbl_8017B5D4: -/* 8017B5D4 00178534 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8017B5D8 00178538 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 8017B5DC 0017853C 83 C1 00 38 */ lwz r30, 0x38(r1) -/* 8017B5E0 00178540 7C 08 03 A6 */ mtlr r0 -/* 8017B5E4 00178544 38 21 00 40 */ addi r1, r1, 0x40 -/* 8017B5E8 00178548 4E 80 00 20 */ blr - -.global SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager -SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager: -/* 8017B5EC 0017854C 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 8017B5F0 00178550 7C 08 02 A6 */ mflr r0 -/* 8017B5F4 00178554 90 01 00 54 */ stw r0, 0x54(r1) -/* 8017B5F8 00178558 BF 41 00 38 */ stmw r26, 0x38(r1) -/* 8017B5FC 0017855C 7C 9E 23 78 */ mr r30, r4 -/* 8017B600 00178560 7C 7D 1B 78 */ mr r29, r3 -/* 8017B604 00178564 7C BF 2B 78 */ mr r31, r5 -/* 8017B608 00178568 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017B60C 0017856C A0 84 00 00 */ lhz r4, 0(r4) -/* 8017B610 00178570 7C 04 00 40 */ cmplw r4, r0 -/* 8017B614 00178574 41 82 00 CC */ beq lbl_8017B6E0 -/* 8017B618 00178578 A0 1E 00 00 */ lhz r0, 0(r30) -/* 8017B61C 0017857C 7F E3 FB 78 */ mr r3, r31 -/* 8017B620 00178580 38 81 00 14 */ addi r4, r1, 0x14 -/* 8017B624 00178584 B0 01 00 14 */ sth r0, 0x14(r1) -/* 8017B628 00178588 4B ED 0F 7D */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017B62C 0017858C 7C 64 1B 78 */ mr r4, r3 -/* 8017B630 00178590 38 61 00 2C */ addi r3, r1, 0x2c -/* 8017B634 00178594 4B F3 14 29 */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" -/* 8017B638 00178598 83 63 00 04 */ lwz r27, 4(r3) -/* 8017B63C 0017859C 7F E3 FB 78 */ mr r3, r31 -/* 8017B640 001785A0 A0 1E 00 00 */ lhz r0, 0(r30) -/* 8017B644 001785A4 38 81 00 10 */ addi r4, r1, 0x10 -/* 8017B648 001785A8 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8017B64C 001785AC 4B ED 0F 59 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017B650 001785B0 7C 64 1B 78 */ mr r4, r3 -/* 8017B654 001785B4 38 61 00 24 */ addi r3, r1, 0x24 -/* 8017B658 001785B8 4B F2 A5 B9 */ bl "__ct__31TCastToPtr<17CWallCrawlerSwarm>FP7CEntity" -/* 8017B65C 001785BC 83 43 00 04 */ lwz r26, 4(r3) -/* 8017B660 001785C0 7F E3 FB 78 */ mr r3, r31 -/* 8017B664 001785C4 A0 1E 00 00 */ lhz r0, 0(r30) -/* 8017B668 001785C8 38 81 00 0C */ addi r4, r1, 0xc -/* 8017B66C 001785CC B0 01 00 0C */ sth r0, 0xc(r1) -/* 8017B670 001785D0 4B ED 0F 35 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017B674 001785D4 7C 64 1B 78 */ mr r4, r3 -/* 8017B678 001785D8 38 61 00 18 */ addi r3, r1, 0x18 -/* 8017B67C 001785DC 4B F2 9D 21 */ bl sub_800a539c -/* 8017B680 001785E0 4B F2 9C F1 */ bl "CastTo<22CThardusRockProjectile>__10CPatternedFP7CEntity" -/* 8017B684 001785E4 A0 1E 00 00 */ lhz r0, 0(r30) -/* 8017B688 001785E8 7C 7C 1B 78 */ mr r28, r3 -/* 8017B68C 001785EC 7F E3 FB 78 */ mr r3, r31 -/* 8017B690 001785F0 38 81 00 08 */ addi r4, r1, 8 -/* 8017B694 001785F4 B0 01 00 08 */ sth r0, 8(r1) -/* 8017B698 001785F8 4B ED 0F 0D */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017B69C 001785FC 7C 64 1B 78 */ mr r4, r3 -/* 8017B6A0 00178600 38 61 00 1C */ addi r3, r1, 0x1c -/* 8017B6A4 00178604 4B F2 E1 11 */ bl "__ct__30TCastToPtr<16CScriptGunTurret>FP7CEntity" -/* 8017B6A8 00178608 28 1B 00 00 */ cmplwi r27, 0 -/* 8017B6AC 0017860C 80 03 00 04 */ lwz r0, 4(r3) -/* 8017B6B0 00178610 40 82 00 1C */ bne lbl_8017B6CC -/* 8017B6B4 00178614 28 1A 00 00 */ cmplwi r26, 0 -/* 8017B6B8 00178618 40 82 00 14 */ bne lbl_8017B6CC -/* 8017B6BC 0017861C 28 1C 00 00 */ cmplwi r28, 0 -/* 8017B6C0 00178620 40 82 00 0C */ bne lbl_8017B6CC -/* 8017B6C4 00178624 28 00 00 00 */ cmplwi r0, 0 -/* 8017B6C8 00178628 41 82 00 10 */ beq lbl_8017B6D8 -lbl_8017B6CC: -/* 8017B6CC 0017862C 38 00 00 01 */ li r0, 1 -/* 8017B6D0 00178630 98 1D 03 94 */ stb r0, 0x394(r29) -/* 8017B6D4 00178634 48 00 00 0C */ b lbl_8017B6E0 -lbl_8017B6D8: -/* 8017B6D8 00178638 38 00 00 00 */ li r0, 0 -/* 8017B6DC 0017863C 98 1D 03 94 */ stb r0, 0x394(r29) -lbl_8017B6E0: -/* 8017B6E0 00178640 A0 1E 00 00 */ lhz r0, 0(r30) -/* 8017B6E4 00178644 B0 1D 03 10 */ sth r0, 0x310(r29) -/* 8017B6E8 00178648 A0 7D 03 10 */ lhz r3, 0x310(r29) -/* 8017B6EC 0017864C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017B6F0 00178650 7C 03 00 40 */ cmplw r3, r0 -/* 8017B6F4 00178654 40 82 00 0C */ bne lbl_8017B700 -/* 8017B6F8 00178658 38 00 00 00 */ li r0, 0 -/* 8017B6FC 0017865C 98 1D 03 74 */ stb r0, 0x374(r29) -lbl_8017B700: -/* 8017B700 00178660 BB 41 00 38 */ lmw r26, 0x38(r1) -/* 8017B704 00178664 80 01 00 54 */ lwz r0, 0x54(r1) -/* 8017B708 00178668 7C 08 03 A6 */ mtlr r0 -/* 8017B70C 0017866C 38 21 00 50 */ addi r1, r1, 0x50 -/* 8017B710 00178670 4E 80 00 20 */ blr - -.global UpdateOrbitPosition__7CPlayerFfR13CStateManager -UpdateOrbitPosition__7CPlayerFfR13CStateManager: -/* 8017B714 00178674 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8017B718 00178678 7C 08 02 A6 */ mflr r0 -/* 8017B71C 0017867C 90 01 00 34 */ stw r0, 0x34(r1) -/* 8017B720 00178680 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8017B724 00178684 7C 9F 23 78 */ mr r31, r4 -/* 8017B728 00178688 93 C1 00 28 */ stw r30, 0x28(r1) -/* 8017B72C 0017868C 7C 7E 1B 78 */ mr r30, r3 -/* 8017B730 00178690 80 03 03 04 */ lwz r0, 0x304(r3) -/* 8017B734 00178694 2C 00 00 01 */ cmpwi r0, 1 -/* 8017B738 00178698 41 82 00 24 */ beq lbl_8017B75C -/* 8017B73C 0017869C 40 80 00 08 */ bge lbl_8017B744 -/* 8017B740 001786A0 48 00 00 8C */ b lbl_8017B7CC -lbl_8017B744: -/* 8017B744 001786A4 2C 00 00 06 */ cmpwi r0, 6 -/* 8017B748 001786A8 40 80 00 84 */ bge lbl_8017B7CC -/* 8017B74C 001786AC 2C 00 00 04 */ cmpwi r0, 4 -/* 8017B750 001786B0 40 80 00 0C */ bge lbl_8017B75C -/* 8017B754 001786B4 48 00 01 C5 */ bl SetOrbitPosition__7CPlayerFfR13CStateManager -/* 8017B758 001786B8 48 00 00 74 */ b lbl_8017B7CC -lbl_8017B75C: -/* 8017B75C 001786BC A0 1E 03 10 */ lhz r0, 0x310(r30) -/* 8017B760 001786C0 7F E3 FB 78 */ mr r3, r31 -/* 8017B764 001786C4 38 81 00 0C */ addi r4, r1, 0xc -/* 8017B768 001786C8 B0 01 00 08 */ sth r0, 8(r1) -/* 8017B76C 001786CC B0 01 00 0C */ sth r0, 0xc(r1) -/* 8017B770 001786D0 4B ED 0E 35 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017B774 001786D4 7C 64 1B 78 */ mr r4, r3 -/* 8017B778 001786D8 38 61 00 10 */ addi r3, r1, 0x10 -/* 8017B77C 001786DC 4B F3 45 15 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8017B780 001786E0 80 83 00 04 */ lwz r4, 4(r3) -/* 8017B784 001786E4 28 04 00 00 */ cmplwi r4, 0 -/* 8017B788 001786E8 41 82 00 44 */ beq lbl_8017B7CC -/* 8017B78C 001786EC A0 7E 03 10 */ lhz r3, 0x310(r30) -/* 8017B790 001786F0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017B794 001786F4 7C 03 00 40 */ cmplw r3, r0 -/* 8017B798 001786F8 41 82 00 34 */ beq lbl_8017B7CC -/* 8017B79C 001786FC 81 84 00 00 */ lwz r12, 0(r4) -/* 8017B7A0 00178700 7F E5 FB 78 */ mr r5, r31 -/* 8017B7A4 00178704 38 61 00 18 */ addi r3, r1, 0x18 -/* 8017B7A8 00178708 81 8C 00 48 */ lwz r12, 0x48(r12) -/* 8017B7AC 0017870C 7D 89 03 A6 */ mtctr r12 -/* 8017B7B0 00178710 4E 80 04 21 */ bctrl -/* 8017B7B4 00178714 C0 01 00 18 */ lfs f0, 0x18(r1) -/* 8017B7B8 00178718 D0 1E 03 14 */ stfs f0, 0x314(r30) -/* 8017B7BC 0017871C C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 8017B7C0 00178720 D0 1E 03 18 */ stfs f0, 0x318(r30) -/* 8017B7C4 00178724 C0 01 00 20 */ lfs f0, 0x20(r1) -/* 8017B7C8 00178728 D0 1E 03 1C */ stfs f0, 0x31c(r30) -lbl_8017B7CC: -/* 8017B7CC 0017872C 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8017B7D0 00178730 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8017B7D4 00178734 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 8017B7D8 00178738 7C 08 03 A6 */ mtlr r0 -/* 8017B7DC 0017873C 38 21 00 30 */ addi r1, r1, 0x30 -/* 8017B7E0 00178740 4E 80 00 20 */ blr - -.global UpdateOrbitZPosition__7CPlayerFv -UpdateOrbitZPosition__7CPlayerFv: -/* 8017B7E4 00178744 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8017B7E8 00178748 7C 08 02 A6 */ mflr r0 -/* 8017B7EC 0017874C 90 01 00 34 */ stw r0, 0x34(r1) -/* 8017B7F0 00178750 DB E1 00 20 */ stfd f31, 0x20(r1) -/* 8017B7F4 00178754 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 -/* 8017B7F8 00178758 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8017B7FC 0017875C 7C 7F 1B 78 */ mr r31, r3 -/* 8017B800 00178760 80 03 03 04 */ lwz r0, 0x304(r3) -/* 8017B804 00178764 2C 00 00 02 */ cmpwi r0, 2 -/* 8017B808 00178768 41 82 00 08 */ beq lbl_8017B810 -/* 8017B80C 0017876C 48 00 00 4C */ b lbl_8017B858 -lbl_8017B810: -/* 8017B810 00178770 C0 1F 03 28 */ lfs f0, 0x328(r31) -/* 8017B814 00178774 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) -/* 8017B818 00178778 FC 20 02 10 */ fabs f1, f0 -/* 8017B81C 0017877C C0 04 01 EC */ lfs f0, 0x1ec(r4) -/* 8017B820 00178780 FC 20 08 18 */ frsp f1, f1 -/* 8017B824 00178784 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017B828 00178788 40 80 00 30 */ bge lbl_8017B858 -/* 8017B82C 0017878C C3 FF 00 60 */ lfs f31, 0x60(r31) -/* 8017B830 00178790 C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 8017B834 00178794 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 8017B838 00178798 D0 21 00 0C */ stfs f1, 0xc(r1) -/* 8017B83C 0017879C D0 01 00 08 */ stfs f0, 8(r1) -/* 8017B840 001787A0 D3 E1 00 10 */ stfs f31, 0x10(r1) -/* 8017B844 001787A4 48 10 95 9D */ bl GetEyeHeight__7CPlayerCFv -/* 8017B848 001787A8 EC 3F 08 2A */ fadds f1, f31, f1 -/* 8017B84C 001787AC C0 1F 03 28 */ lfs f0, 0x328(r31) -/* 8017B850 001787B0 EC 00 08 2A */ fadds f0, f0, f1 -/* 8017B854 001787B4 D0 1F 03 1C */ stfs f0, 0x31c(r31) -lbl_8017B858: -/* 8017B858 001787B8 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 -/* 8017B85C 001787BC 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8017B860 001787C0 CB E1 00 20 */ lfd f31, 0x20(r1) -/* 8017B864 001787C4 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8017B868 001787C8 7C 08 03 A6 */ mtlr r0 -/* 8017B86C 001787CC 38 21 00 30 */ addi r1, r1, 0x30 -/* 8017B870 001787D0 4E 80 00 20 */ blr - -.global UpdateOrbitFixedPosition__7CPlayerFv -UpdateOrbitFixedPosition__7CPlayerFv: -/* 8017B874 001787D4 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 8017B878 001787D8 7C 08 02 A6 */ mflr r0 -/* 8017B87C 001787DC 90 01 00 64 */ stw r0, 0x64(r1) -/* 8017B880 001787E0 DB E1 00 50 */ stfd f31, 0x50(r1) -/* 8017B884 001787E4 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 -/* 8017B888 001787E8 DB C1 00 40 */ stfd f30, 0x40(r1) -/* 8017B88C 001787EC F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 -/* 8017B890 001787F0 DB A1 00 30 */ stfd f29, 0x30(r1) -/* 8017B894 001787F4 F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0 -/* 8017B898 001787F8 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8017B89C 001787FC 7C 7F 1B 78 */ mr r31, r3 -/* 8017B8A0 00178800 38 61 00 14 */ addi r3, r1, 0x14 -/* 8017B8A4 00178804 7F E4 FB 78 */ mr r4, r31 -/* 8017B8A8 00178808 48 10 94 D5 */ bl GetEyePosition__7CPlayerCFv -/* 8017B8AC 0017880C C3 E1 00 14 */ lfs f31, 0x14(r1) -/* 8017B8B0 00178810 38 61 00 08 */ addi r3, r1, 8 -/* 8017B8B4 00178814 C3 C1 00 18 */ lfs f30, 0x18(r1) -/* 8017B8B8 00178818 38 9F 00 34 */ addi r4, r31, 0x34 -/* 8017B8BC 0017881C C3 A1 00 1C */ lfs f29, 0x1c(r1) -/* 8017B8C0 00178820 38 BF 03 20 */ addi r5, r31, 0x320 -/* 8017B8C4 00178824 48 19 71 BD */ bl Rotate__12CTransform4fCFRC9CVector3f -/* 8017B8C8 00178828 C0 01 00 08 */ lfs f0, 8(r1) -/* 8017B8CC 0017882C C0 41 00 0C */ lfs f2, 0xc(r1) -/* 8017B8D0 00178830 EC 1F 00 2A */ fadds f0, f31, f0 -/* 8017B8D4 00178834 C0 21 00 10 */ lfs f1, 0x10(r1) -/* 8017B8D8 00178838 EC 5E 10 2A */ fadds f2, f30, f2 -/* 8017B8DC 0017883C EC 3D 08 2A */ fadds f1, f29, f1 -/* 8017B8E0 00178840 D0 1F 03 14 */ stfs f0, 0x314(r31) -/* 8017B8E4 00178844 D0 5F 03 18 */ stfs f2, 0x318(r31) -/* 8017B8E8 00178848 D0 3F 03 1C */ stfs f1, 0x31c(r31) -/* 8017B8EC 0017884C E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 -/* 8017B8F0 00178850 CB E1 00 50 */ lfd f31, 0x50(r1) -/* 8017B8F4 00178854 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 -/* 8017B8F8 00178858 CB C1 00 40 */ lfd f30, 0x40(r1) -/* 8017B8FC 0017885C E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0 -/* 8017B900 00178860 CB A1 00 30 */ lfd f29, 0x30(r1) -/* 8017B904 00178864 80 01 00 64 */ lwz r0, 0x64(r1) -/* 8017B908 00178868 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8017B90C 0017886C 7C 08 03 A6 */ mtlr r0 -/* 8017B910 00178870 38 21 00 60 */ addi r1, r1, 0x60 -/* 8017B914 00178874 4E 80 00 20 */ blr - -.global SetOrbitPosition__7CPlayerFfR13CStateManager -SetOrbitPosition__7CPlayerFfR13CStateManager: -/* 8017B918 00178878 94 21 FF 40 */ stwu r1, -0xc0(r1) -/* 8017B91C 0017887C 7C 08 02 A6 */ mflr r0 -/* 8017B920 00178880 90 01 00 C4 */ stw r0, 0xc4(r1) -/* 8017B924 00178884 DB E1 00 B0 */ stfd f31, 0xb0(r1) -/* 8017B928 00178888 F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 -/* 8017B92C 0017888C DB C1 00 A0 */ stfd f30, 0xa0(r1) -/* 8017B930 00178890 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 -/* 8017B934 00178894 DB A1 00 90 */ stfd f29, 0x90(r1) -/* 8017B938 00178898 F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0 -/* 8017B93C 0017889C DB 81 00 80 */ stfd f28, 0x80(r1) -/* 8017B940 001788A0 F3 81 00 88 */ psq_st f28, 136(r1), 0, qr0 -/* 8017B944 001788A4 93 E1 00 7C */ stw r31, 0x7c(r1) -/* 8017B948 001788A8 7C 7F 1B 78 */ mr r31, r3 -/* 8017B94C 001788AC FF E0 08 90 */ fmr f31, f1 -/* 8017B950 001788B0 4B E9 D7 7D */ bl GetFirstPersonCameraTransform__7CPlayerCFR13CStateManager -/* 8017B954 001788B4 7C 64 1B 78 */ mr r4, r3 -/* 8017B958 001788B8 38 61 00 44 */ addi r3, r1, 0x44 -/* 8017B95C 001788BC 48 19 72 19 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8017B960 001788C0 80 1F 03 04 */ lwz r0, 0x304(r31) -/* 8017B964 001788C4 2C 00 00 02 */ cmpwi r0, 2 -/* 8017B968 001788C8 40 82 00 1C */ bne lbl_8017B984 -/* 8017B96C 001788CC 80 1F 03 0C */ lwz r0, 0x30c(r31) -/* 8017B970 001788D0 2C 00 00 07 */ cmpwi r0, 7 -/* 8017B974 001788D4 40 82 00 10 */ bne lbl_8017B984 -/* 8017B978 001788D8 38 61 00 44 */ addi r3, r1, 0x44 -/* 8017B97C 001788DC 38 9F 00 34 */ addi r4, r31, 0x34 -/* 8017B980 001788E0 48 19 71 C1 */ bl __as__12CTransform4fFRC12CTransform4f -lbl_8017B984: -/* 8017B984 001788E4 C3 C1 00 68 */ lfs f30, 0x68(r1) -/* 8017B988 001788E8 38 61 00 20 */ addi r3, r1, 0x20 -/* 8017B98C 001788EC C3 A1 00 58 */ lfs f29, 0x58(r1) -/* 8017B990 001788F0 38 81 00 38 */ addi r4, r1, 0x38 -/* 8017B994 001788F4 C3 81 00 48 */ lfs f28, 0x48(r1) -/* 8017B998 001788F8 D3 C1 00 40 */ stfs f30, 0x40(r1) -/* 8017B99C 001788FC C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017B9A0 00178900 D3 81 00 38 */ stfs f28, 0x38(r1) -/* 8017B9A4 00178904 D3 A1 00 3C */ stfs f29, 0x3c(r1) -/* 8017B9A8 00178908 D0 01 00 40 */ stfs f0, 0x40(r1) -/* 8017B9AC 0017890C 48 19 8E A5 */ bl AsNormalized__9CVector3fCFv -/* 8017B9B0 00178910 C0 01 00 24 */ lfs f0, 0x24(r1) -/* 8017B9B4 00178914 C0 41 00 20 */ lfs f2, 0x20(r1) -/* 8017B9B8 00178918 EC 20 07 72 */ fmuls f1, f0, f29 -/* 8017B9BC 0017891C C0 61 00 28 */ lfs f3, 0x28(r1) -/* 8017B9C0 00178920 C8 02 A2 40 */ lfd f0, lbl_805ABF60@sda21(r2) -/* 8017B9C4 00178924 EC 22 0F 3A */ fmadds f1, f2, f28, f1 -/* 8017B9C8 00178928 EC 43 0F BA */ fmadds f2, f3, f30, f1 -/* 8017B9CC 0017892C FC 20 12 10 */ fabs f1, f2 -/* 8017B9D0 00178930 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017B9D4 00178934 40 81 00 14 */ ble lbl_8017B9E8 -/* 8017B9D8 00178938 C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) -/* 8017B9DC 0017893C C0 22 A2 4C */ lfs f1, lbl_805ABF6C@sda21(r2) -/* 8017B9E0 00178940 FC 02 00 6E */ fsel f0, f2, f1, f0 -/* 8017B9E4 00178944 EC 41 00 32 */ fmuls f2, f1, f0 -lbl_8017B9E8: -/* 8017B9E8 00178948 EC 1F 10 24 */ fdivs f0, f31, f2 -/* 8017B9EC 0017894C C0 22 A2 30 */ lfs f1, lbl_805ABF50@sda21(r2) -/* 8017B9F0 00178950 38 61 00 14 */ addi r3, r1, 0x14 -/* 8017B9F4 00178954 38 81 00 44 */ addi r4, r1, 0x44 -/* 8017B9F8 00178958 D0 21 00 2C */ stfs f1, 0x2c(r1) -/* 8017B9FC 0017895C 38 A1 00 2C */ addi r5, r1, 0x2c -/* 8017BA00 00178960 D0 01 00 30 */ stfs f0, 0x30(r1) -/* 8017BA04 00178964 D0 21 00 34 */ stfs f1, 0x34(r1) -/* 8017BA08 00178968 48 19 70 79 */ bl Rotate__12CTransform4fCFRC9CVector3f -/* 8017BA0C 0017896C C0 21 00 50 */ lfs f1, 0x50(r1) -/* 8017BA10 00178970 C0 01 00 14 */ lfs f0, 0x14(r1) -/* 8017BA14 00178974 C0 81 00 60 */ lfs f4, 0x60(r1) -/* 8017BA18 00178978 C0 61 00 18 */ lfs f3, 0x18(r1) -/* 8017BA1C 0017897C EC 21 00 2A */ fadds f1, f1, f0 -/* 8017BA20 00178980 C0 A1 00 70 */ lfs f5, 0x70(r1) -/* 8017BA24 00178984 C0 41 00 1C */ lfs f2, 0x1c(r1) -/* 8017BA28 00178988 EC 64 18 2A */ fadds f3, f4, f3 -/* 8017BA2C 0017898C C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017BA30 00178990 D0 3F 03 14 */ stfs f1, 0x314(r31) -/* 8017BA34 00178994 EC 25 10 2A */ fadds f1, f5, f2 -/* 8017BA38 00178998 D0 7F 03 18 */ stfs f3, 0x318(r31) -/* 8017BA3C 0017899C D0 3F 03 1C */ stfs f1, 0x31c(r31) -/* 8017BA40 001789A0 C0 81 00 50 */ lfs f4, 0x50(r1) -/* 8017BA44 001789A4 C0 61 00 60 */ lfs f3, 0x60(r1) -/* 8017BA48 001789A8 C0 41 00 70 */ lfs f2, 0x70(r1) -/* 8017BA4C 001789AC C0 3F 03 1C */ lfs f1, 0x31c(r31) -/* 8017BA50 001789B0 D0 81 00 08 */ stfs f4, 8(r1) -/* 8017BA54 001789B4 EC 21 10 28 */ fsubs f1, f1, f2 -/* 8017BA58 001789B8 D0 1F 03 20 */ stfs f0, 0x320(r31) -/* 8017BA5C 001789BC D3 FF 03 24 */ stfs f31, 0x324(r31) -/* 8017BA60 001789C0 D0 61 00 0C */ stfs f3, 0xc(r1) -/* 8017BA64 001789C4 D0 41 00 10 */ stfs f2, 0x10(r1) -/* 8017BA68 001789C8 D0 3F 03 28 */ stfs f1, 0x328(r31) -/* 8017BA6C 001789CC E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 -/* 8017BA70 001789D0 CB E1 00 B0 */ lfd f31, 0xb0(r1) -/* 8017BA74 001789D4 E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 -/* 8017BA78 001789D8 CB C1 00 A0 */ lfd f30, 0xa0(r1) -/* 8017BA7C 001789DC E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0 -/* 8017BA80 001789E0 CB A1 00 90 */ lfd f29, 0x90(r1) -/* 8017BA84 001789E4 E3 81 00 88 */ psq_l f28, 136(r1), 0, qr0 -/* 8017BA88 001789E8 CB 81 00 80 */ lfd f28, 0x80(r1) -/* 8017BA8C 001789EC 80 01 00 C4 */ lwz r0, 0xc4(r1) -/* 8017BA90 001789F0 83 E1 00 7C */ lwz r31, 0x7c(r1) -/* 8017BA94 001789F4 7C 08 03 A6 */ mtlr r0 -/* 8017BA98 001789F8 38 21 00 C0 */ addi r1, r1, 0xc0 -/* 8017BA9C 001789FC 4E 80 00 20 */ blr - -.global UpdateAimTarget__7CPlayerFR13CStateManager -UpdateAimTarget__7CPlayerFR13CStateManager: -/* 8017BAA0 00178A00 94 21 FF 80 */ stwu r1, -0x80(r1) -/* 8017BAA4 00178A04 7C 08 02 A6 */ mflr r0 -/* 8017BAA8 00178A08 90 01 00 84 */ stw r0, 0x84(r1) -/* 8017BAAC 00178A0C 93 E1 00 7C */ stw r31, 0x7c(r1) -/* 8017BAB0 00178A10 93 C1 00 78 */ stw r30, 0x78(r1) -/* 8017BAB4 00178A14 93 A1 00 74 */ stw r29, 0x74(r1) -/* 8017BAB8 00178A18 7C 9D 23 78 */ mr r29, r4 -/* 8017BABC 00178A1C 7F A5 EB 78 */ mr r5, r29 -/* 8017BAC0 00178A20 38 81 00 5C */ addi r4, r1, 0x5c -/* 8017BAC4 00178A24 93 81 00 70 */ stw r28, 0x70(r1) -/* 8017BAC8 00178A28 7C 7C 1B 78 */ mr r28, r3 -/* 8017BACC 00178A2C A0 03 03 F4 */ lhz r0, 0x3f4(r3) -/* 8017BAD0 00178A30 B0 01 00 58 */ sth r0, 0x58(r1) -/* 8017BAD4 00178A34 B0 01 00 5C */ sth r0, 0x5c(r1) -/* 8017BAD8 00178A38 48 00 02 A9 */ bl ValidateAimTargetId__7CPlayerF9TUniqueIdR13CStateManager -/* 8017BADC 00178A3C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017BAE0 00178A40 40 82 00 18 */ bne lbl_8017BAF8 -/* 8017BAE4 00178A44 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017BAE8 00178A48 7F 83 E3 78 */ mr r3, r28 -/* 8017BAEC 00178A4C 38 81 00 54 */ addi r4, r1, 0x54 -/* 8017BAF0 00178A50 B0 01 00 54 */ sth r0, 0x54(r1) -/* 8017BAF4 00178A54 4B E9 E2 B1 */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId -lbl_8017BAF8: -/* 8017BAF8 00178A58 7F 83 E3 78 */ mr r3, r28 -/* 8017BAFC 00178A5C 4B E9 7D 4D */ bl GetCombatMode__7CPlayerCFv -/* 8017BB00 00178A60 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017BB04 00178A64 40 82 00 24 */ bne lbl_8017BB28 -/* 8017BB08 00178A68 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017BB0C 00178A6C 7F 83 E3 78 */ mr r3, r28 -/* 8017BB10 00178A70 38 81 00 50 */ addi r4, r1, 0x50 -/* 8017BB14 00178A74 B0 01 00 50 */ sth r0, 0x50(r1) -/* 8017BB18 00178A78 4B E9 E2 8D */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId -/* 8017BB1C 00178A7C C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017BB20 00178A80 D0 1C 04 8C */ stfs f0, 0x48c(r28) -/* 8017BB24 00178A84 48 00 02 10 */ b lbl_8017BD34 -lbl_8017BB28: -/* 8017BB28 00178A88 88 02 80 E0 */ lbz r0, lbl_805A9E00@sda21(r2) -/* 8017BB2C 00178A8C 28 00 00 00 */ cmplwi r0, 0 -/* 8017BB30 00178A90 40 82 00 80 */ bne lbl_8017BBB0 -/* 8017BB34 00178A94 88 02 80 E1 */ lbz r0, lbl_805A9E01@sda21(r2) -/* 8017BB38 00178A98 28 00 00 00 */ cmplwi r0, 0 -/* 8017BB3C 00178A9C 41 82 00 74 */ beq lbl_8017BBB0 -/* 8017BB40 00178AA0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017BB44 00178AA4 7F 83 E3 78 */ mr r3, r28 -/* 8017BB48 00178AA8 38 81 00 4C */ addi r4, r1, 0x4c -/* 8017BB4C 00178AAC B0 01 00 4C */ sth r0, 0x4c(r1) -/* 8017BB50 00178AB0 4B E9 E2 55 */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId -/* 8017BB54 00178AB4 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017BB58 00178AB8 D0 1C 04 8C */ stfs f0, 0x48c(r28) -/* 8017BB5C 00178ABC 80 1C 03 04 */ lwz r0, 0x304(r28) -/* 8017BB60 00178AC0 2C 00 00 01 */ cmpwi r0, 1 -/* 8017BB64 00178AC4 41 82 00 0C */ beq lbl_8017BB70 -/* 8017BB68 00178AC8 2C 00 00 04 */ cmpwi r0, 4 -/* 8017BB6C 00178ACC 40 82 01 C8 */ bne lbl_8017BD34 -lbl_8017BB70: -/* 8017BB70 00178AD0 A0 1C 03 10 */ lhz r0, 0x310(r28) -/* 8017BB74 00178AD4 7F 83 E3 78 */ mr r3, r28 -/* 8017BB78 00178AD8 7F A5 EB 78 */ mr r5, r29 -/* 8017BB7C 00178ADC 38 81 00 48 */ addi r4, r1, 0x48 -/* 8017BB80 00178AE0 B0 01 00 44 */ sth r0, 0x44(r1) -/* 8017BB84 00178AE4 B0 01 00 48 */ sth r0, 0x48(r1) -/* 8017BB88 00178AE8 48 00 34 F5 */ bl ValidateOrbitTargetId__7CPlayerCF9TUniqueIdR13CStateManager -/* 8017BB8C 00178AEC 2C 03 00 00 */ cmpwi r3, 0 -/* 8017BB90 00178AF0 40 82 01 A4 */ bne lbl_8017BD34 -/* 8017BB94 00178AF4 A0 1C 03 10 */ lhz r0, 0x310(r28) -/* 8017BB98 00178AF8 7F 83 E3 78 */ mr r3, r28 -/* 8017BB9C 00178AFC 38 81 00 40 */ addi r4, r1, 0x40 -/* 8017BBA0 00178B00 B0 01 00 3C */ sth r0, 0x3c(r1) -/* 8017BBA4 00178B04 B0 01 00 40 */ sth r0, 0x40(r1) -/* 8017BBA8 00178B08 4B E9 E1 FD */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId -/* 8017BBAC 00178B0C 48 00 01 88 */ b lbl_8017BD34 -lbl_8017BBB0: -/* 8017BBB0 00178B10 A0 1C 03 F4 */ lhz r0, 0x3f4(r28) -/* 8017BBB4 00178B14 7F A3 EB 78 */ mr r3, r29 -/* 8017BBB8 00178B18 38 81 00 38 */ addi r4, r1, 0x38 -/* 8017BBBC 00178B1C 3B E0 00 00 */ li r31, 0 -/* 8017BBC0 00178B20 B0 01 00 34 */ sth r0, 0x34(r1) -/* 8017BBC4 00178B24 B0 01 00 38 */ sth r0, 0x38(r1) -/* 8017BBC8 00178B28 4B ED 09 DD */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017BBCC 00178B2C 7C 64 1B 78 */ mr r4, r3 -/* 8017BBD0 00178B30 38 61 00 60 */ addi r3, r1, 0x60 -/* 8017BBD4 00178B34 4B F3 40 BD */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8017BBD8 00178B38 80 83 00 04 */ lwz r4, 4(r3) -/* 8017BBDC 00178B3C 28 04 00 00 */ cmplwi r4, 0 -/* 8017BBE0 00178B40 7C 9E 23 78 */ mr r30, r4 -/* 8017BBE4 00178B44 41 82 00 30 */ beq lbl_8017BC14 -/* 8017BBE8 00178B48 80 64 00 68 */ lwz r3, 0x68(r4) -/* 8017BBEC 00178B4C 38 00 01 00 */ li r0, 0x100 -/* 8017BBF0 00178B50 80 A4 00 6C */ lwz r5, 0x6c(r4) -/* 8017BBF4 00178B54 38 80 00 00 */ li r4, 0 -/* 8017BBF8 00178B58 7C 60 00 38 */ and r0, r3, r0 -/* 8017BBFC 00178B5C 7C A3 20 38 */ and r3, r5, r4 -/* 8017BC00 00178B60 7C 63 22 78 */ xor r3, r3, r4 -/* 8017BC04 00178B64 7C 00 22 78 */ xor r0, r0, r4 -/* 8017BC08 00178B68 7C 60 03 79 */ or. r0, r3, r0 -/* 8017BC0C 00178B6C 40 82 00 08 */ bne lbl_8017BC14 -/* 8017BC10 00178B70 3B C0 00 00 */ li r30, 0 -lbl_8017BC14: -/* 8017BC14 00178B74 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017BC18 00178B78 88 03 02 29 */ lbz r0, 0x229(r3) -/* 8017BC1C 00178B7C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 8017BC20 00178B80 41 82 00 70 */ beq lbl_8017BC90 -/* 8017BC24 00178B84 80 1C 03 04 */ lwz r0, 0x304(r28) -/* 8017BC28 00178B88 2C 00 00 04 */ cmpwi r0, 4 -/* 8017BC2C 00178B8C 41 82 00 14 */ beq lbl_8017BC40 -/* 8017BC30 00178B90 40 80 00 58 */ bge lbl_8017BC88 -/* 8017BC34 00178B94 2C 00 00 01 */ cmpwi r0, 1 -/* 8017BC38 00178B98 41 82 00 08 */ beq lbl_8017BC40 -/* 8017BC3C 00178B9C 48 00 00 4C */ b lbl_8017BC88 -lbl_8017BC40: -/* 8017BC40 00178BA0 A0 1C 03 10 */ lhz r0, 0x310(r28) -/* 8017BC44 00178BA4 7F 83 E3 78 */ mr r3, r28 -/* 8017BC48 00178BA8 7F A5 EB 78 */ mr r5, r29 -/* 8017BC4C 00178BAC 38 81 00 30 */ addi r4, r1, 0x30 -/* 8017BC50 00178BB0 B0 01 00 2C */ sth r0, 0x2c(r1) -/* 8017BC54 00178BB4 B0 01 00 30 */ sth r0, 0x30(r1) -/* 8017BC58 00178BB8 48 00 34 25 */ bl ValidateOrbitTargetId__7CPlayerCF9TUniqueIdR13CStateManager -/* 8017BC5C 00178BBC 2C 03 00 00 */ cmpwi r3, 0 -/* 8017BC60 00178BC0 40 82 00 20 */ bne lbl_8017BC80 -/* 8017BC64 00178BC4 A0 1C 03 10 */ lhz r0, 0x310(r28) -/* 8017BC68 00178BC8 7F 83 E3 78 */ mr r3, r28 -/* 8017BC6C 00178BCC 38 81 00 28 */ addi r4, r1, 0x28 -/* 8017BC70 00178BD0 B0 01 00 24 */ sth r0, 0x24(r1) -/* 8017BC74 00178BD4 B0 01 00 28 */ sth r0, 0x28(r1) -/* 8017BC78 00178BD8 4B E9 E1 2D */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId -/* 8017BC7C 00178BDC 48 00 00 24 */ b lbl_8017BCA0 -lbl_8017BC80: -/* 8017BC80 00178BE0 3B E0 00 01 */ li r31, 1 -/* 8017BC84 00178BE4 48 00 00 1C */ b lbl_8017BCA0 -lbl_8017BC88: -/* 8017BC88 00178BE8 3B E0 00 01 */ li r31, 1 -/* 8017BC8C 00178BEC 48 00 00 14 */ b lbl_8017BCA0 -lbl_8017BC90: -/* 8017BC90 00178BF0 80 1C 03 04 */ lwz r0, 0x304(r28) -/* 8017BC94 00178BF4 2C 00 00 00 */ cmpwi r0, 0 -/* 8017BC98 00178BF8 40 82 00 08 */ bne lbl_8017BCA0 -/* 8017BC9C 00178BFC 3B E0 00 01 */ li r31, 1 -lbl_8017BCA0: -/* 8017BCA0 00178C00 57 E0 06 3F */ clrlwi. r0, r31, 0x18 -/* 8017BCA4 00178C04 41 82 00 90 */ beq lbl_8017BD34 -/* 8017BCA8 00178C08 A0 1C 03 F4 */ lhz r0, 0x3f4(r28) -/* 8017BCAC 00178C0C 7F 83 E3 78 */ mr r3, r28 -/* 8017BCB0 00178C10 7F A5 EB 78 */ mr r5, r29 -/* 8017BCB4 00178C14 38 81 00 20 */ addi r4, r1, 0x20 -/* 8017BCB8 00178C18 B0 01 00 1C */ sth r0, 0x1c(r1) -/* 8017BCBC 00178C1C B0 01 00 20 */ sth r0, 0x20(r1) -/* 8017BCC0 00178C20 48 00 00 C1 */ bl ValidateAimTargetId__7CPlayerF9TUniqueIdR13CStateManager -/* 8017BCC4 00178C24 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017BCC8 00178C28 40 82 00 6C */ bne lbl_8017BD34 -/* 8017BCCC 00178C2C 28 1E 00 00 */ cmplwi r30, 0 -/* 8017BCD0 00178C30 41 82 00 40 */ beq lbl_8017BD10 -/* 8017BCD4 00178C34 A0 1C 03 F4 */ lhz r0, 0x3f4(r28) -/* 8017BCD8 00178C38 7F 83 E3 78 */ mr r3, r28 -/* 8017BCDC 00178C3C 7F A5 EB 78 */ mr r5, r29 -/* 8017BCE0 00178C40 38 81 00 18 */ addi r4, r1, 0x18 -/* 8017BCE4 00178C44 B0 01 00 14 */ sth r0, 0x14(r1) -/* 8017BCE8 00178C48 B0 01 00 18 */ sth r0, 0x18(r1) -/* 8017BCEC 00178C4C 48 00 05 75 */ bl ValidateObjectForMode__7CPlayerCF9TUniqueIdR13CStateManager -/* 8017BCF0 00178C50 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017BCF4 00178C54 41 82 00 1C */ beq lbl_8017BD10 -/* 8017BCF8 00178C58 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017BCFC 00178C5C 7F 83 E3 78 */ mr r3, r28 -/* 8017BD00 00178C60 38 81 00 10 */ addi r4, r1, 0x10 -/* 8017BD04 00178C64 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8017BD08 00178C68 4B E9 E0 9D */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId -/* 8017BD0C 00178C6C 48 00 00 28 */ b lbl_8017BD34 -lbl_8017BD10: -/* 8017BD10 00178C70 7F 84 E3 78 */ mr r4, r28 -/* 8017BD14 00178C74 7F A5 EB 78 */ mr r5, r29 -/* 8017BD18 00178C78 38 61 00 08 */ addi r3, r1, 8 -/* 8017BD1C 00178C7C 48 00 08 29 */ bl FindAimTargetId__7CPlayerFR13CStateManager -/* 8017BD20 00178C80 A0 01 00 08 */ lhz r0, 8(r1) -/* 8017BD24 00178C84 7F 83 E3 78 */ mr r3, r28 -/* 8017BD28 00178C88 38 81 00 0C */ addi r4, r1, 0xc -/* 8017BD2C 00178C8C B0 01 00 0C */ sth r0, 0xc(r1) -/* 8017BD30 00178C90 4B E9 E0 75 */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId -lbl_8017BD34: -/* 8017BD34 00178C94 80 01 00 84 */ lwz r0, 0x84(r1) -/* 8017BD38 00178C98 83 E1 00 7C */ lwz r31, 0x7c(r1) -/* 8017BD3C 00178C9C 83 C1 00 78 */ lwz r30, 0x78(r1) -/* 8017BD40 00178CA0 83 A1 00 74 */ lwz r29, 0x74(r1) -/* 8017BD44 00178CA4 83 81 00 70 */ lwz r28, 0x70(r1) -/* 8017BD48 00178CA8 7C 08 03 A6 */ mtlr r0 -/* 8017BD4C 00178CAC 38 21 00 80 */ addi r1, r1, 0x80 -/* 8017BD50 00178CB0 4E 80 00 20 */ blr - -.global UpdateAimTargetTimer__7CPlayerFf -UpdateAimTargetTimer__7CPlayerFf: -/* 8017BD54 00178CB4 A0 83 03 F4 */ lhz r4, 0x3f4(r3) -/* 8017BD58 00178CB8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017BD5C 00178CBC 7C 04 00 40 */ cmplw r4, r0 -/* 8017BD60 00178CC0 4D 82 00 20 */ beqlr -/* 8017BD64 00178CC4 C0 43 04 8C */ lfs f2, 0x48c(r3) -/* 8017BD68 00178CC8 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017BD6C 00178CCC FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8017BD70 00178CD0 4C 81 00 20 */ blelr -/* 8017BD74 00178CD4 EC 02 08 28 */ fsubs f0, f2, f1 -/* 8017BD78 00178CD8 D0 03 04 8C */ stfs f0, 0x48c(r3) -/* 8017BD7C 00178CDC 4E 80 00 20 */ blr - -.global ValidateAimTargetId__7CPlayerF9TUniqueIdR13CStateManager -ValidateAimTargetId__7CPlayerF9TUniqueIdR13CStateManager: -/* 8017BD80 00178CE0 94 21 F7 00 */ stwu r1, -0x900(r1) -/* 8017BD84 00178CE4 7C 08 02 A6 */ mflr r0 -/* 8017BD88 00178CE8 90 01 09 04 */ stw r0, 0x904(r1) -/* 8017BD8C 00178CEC DB E1 08 F0 */ stfd f31, 0x8f0(r1) -/* 8017BD90 00178CF0 F3 E1 08 F8 */ psq_st f31, -1800(r1), 0, qr0 -/* 8017BD94 00178CF4 93 E1 08 EC */ stw r31, 0x8ec(r1) -/* 8017BD98 00178CF8 93 C1 08 E8 */ stw r30, 0x8e8(r1) -/* 8017BD9C 00178CFC 93 A1 08 E4 */ stw r29, 0x8e4(r1) -/* 8017BDA0 00178D00 93 81 08 E0 */ stw r28, 0x8e0(r1) -/* 8017BDA4 00178D04 7C 9D 23 78 */ mr r29, r4 -/* 8017BDA8 00178D08 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017BDAC 00178D0C A0 84 00 00 */ lhz r4, 0(r4) -/* 8017BDB0 00178D10 7C 7C 1B 78 */ mr r28, r3 -/* 8017BDB4 00178D14 7C BE 2B 78 */ mr r30, r5 -/* 8017BDB8 00178D18 7C 04 00 40 */ cmplw r4, r0 -/* 8017BDBC 00178D1C 40 82 00 68 */ bne lbl_8017BE24 -/* 8017BDC0 00178D20 80 BC 04 04 */ lwz r5, 0x404(r28) -/* 8017BDC4 00178D24 38 60 00 00 */ li r3, 0 -/* 8017BDC8 00178D28 2C 05 00 00 */ cmpwi r5, 0 -/* 8017BDCC 00178D2C 40 81 00 40 */ ble lbl_8017BE0C -/* 8017BDD0 00178D30 2C 05 00 08 */ cmpwi r5, 8 -/* 8017BDD4 00178D34 38 85 FF F8 */ addi r4, r5, -8 -/* 8017BDD8 00178D38 40 81 00 20 */ ble lbl_8017BDF8 -/* 8017BDDC 00178D3C 38 04 00 07 */ addi r0, r4, 7 -/* 8017BDE0 00178D40 54 00 E8 FE */ srwi r0, r0, 3 -/* 8017BDE4 00178D44 7C 09 03 A6 */ mtctr r0 -/* 8017BDE8 00178D48 2C 04 00 00 */ cmpwi r4, 0 -/* 8017BDEC 00178D4C 40 81 00 0C */ ble lbl_8017BDF8 -lbl_8017BDF0: -/* 8017BDF0 00178D50 38 63 00 08 */ addi r3, r3, 8 -/* 8017BDF4 00178D54 42 00 FF FC */ bdnz lbl_8017BDF0 -lbl_8017BDF8: -/* 8017BDF8 00178D58 7C 03 28 50 */ subf r0, r3, r5 -/* 8017BDFC 00178D5C 7C 09 03 A6 */ mtctr r0 -/* 8017BE00 00178D60 7C 03 28 00 */ cmpw r3, r5 -/* 8017BE04 00178D64 40 80 00 08 */ bge lbl_8017BE0C -lbl_8017BE08: -/* 8017BE08 00178D68 42 00 00 00 */ bdnz lbl_8017BE08 -lbl_8017BE0C: -/* 8017BE0C 00178D6C 38 00 00 00 */ li r0, 0 -/* 8017BE10 00178D70 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017BE14 00178D74 90 1C 04 04 */ stw r0, 0x404(r28) -/* 8017BE18 00178D78 38 60 00 00 */ li r3, 0 -/* 8017BE1C 00178D7C D0 1C 04 8C */ stfs f0, 0x48c(r28) -/* 8017BE20 00178D80 48 00 04 18 */ b lbl_8017C238 -lbl_8017BE24: -/* 8017BE24 00178D84 B0 81 00 1C */ sth r4, 0x1c(r1) -/* 8017BE28 00178D88 7F C3 F3 78 */ mr r3, r30 -/* 8017BE2C 00178D8C 38 81 00 1C */ addi r4, r1, 0x1c -/* 8017BE30 00178D90 4B ED 07 75 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017BE34 00178D94 7C 64 1B 78 */ mr r4, r3 -/* 8017BE38 00178D98 38 61 00 24 */ addi r3, r1, 0x24 -/* 8017BE3C 00178D9C 4B F3 3E 55 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8017BE40 00178DA0 83 E3 00 04 */ lwz r31, 4(r3) -/* 8017BE44 00178DA4 28 1F 00 00 */ cmplwi r31, 0 -/* 8017BE48 00178DA8 41 82 00 44 */ beq lbl_8017BE8C -/* 8017BE4C 00178DAC 80 7F 00 68 */ lwz r3, 0x68(r31) -/* 8017BE50 00178DB0 38 00 01 00 */ li r0, 0x100 -/* 8017BE54 00178DB4 80 9F 00 6C */ lwz r4, 0x6c(r31) -/* 8017BE58 00178DB8 38 A0 00 00 */ li r5, 0 -/* 8017BE5C 00178DBC 7C 66 00 38 */ and r6, r3, r0 -/* 8017BE60 00178DC0 7C 84 28 38 */ and r4, r4, r5 -/* 8017BE64 00178DC4 7C 83 2A 78 */ xor r3, r4, r5 -/* 8017BE68 00178DC8 7C C0 2A 78 */ xor r0, r6, r5 -/* 8017BE6C 00178DCC 7C 60 03 79 */ or. r0, r3, r0 -/* 8017BE70 00178DD0 41 82 00 08 */ beq lbl_8017BE78 -/* 8017BE74 00178DD4 38 A0 00 01 */ li r5, 1 -lbl_8017BE78: -/* 8017BE78 00178DD8 54 A0 06 3F */ clrlwi. r0, r5, 0x18 -/* 8017BE7C 00178DDC 41 82 00 10 */ beq lbl_8017BE8C -/* 8017BE80 00178DE0 88 1F 00 E7 */ lbz r0, 0xe7(r31) -/* 8017BE84 00178DE4 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 8017BE88 00178DE8 40 82 00 0C */ bne lbl_8017BE94 -lbl_8017BE8C: -/* 8017BE8C 00178DEC 38 60 00 00 */ li r3, 0 -/* 8017BE90 00178DF0 48 00 03 A8 */ b lbl_8017C238 -lbl_8017BE94: -/* 8017BE94 00178DF4 80 1C 03 04 */ lwz r0, 0x304(r28) -/* 8017BE98 00178DF8 2C 00 00 01 */ cmpwi r0, 1 -/* 8017BE9C 00178DFC 41 82 00 0C */ beq lbl_8017BEA8 -/* 8017BEA0 00178E00 2C 00 00 04 */ cmpwi r0, 4 -/* 8017BEA4 00178E04 40 82 00 54 */ bne lbl_8017BEF8 -lbl_8017BEA8: -/* 8017BEA8 00178E08 A0 1C 03 10 */ lhz r0, 0x310(r28) -/* 8017BEAC 00178E0C 7F 83 E3 78 */ mr r3, r28 -/* 8017BEB0 00178E10 7F C5 F3 78 */ mr r5, r30 -/* 8017BEB4 00178E14 38 81 00 18 */ addi r4, r1, 0x18 -/* 8017BEB8 00178E18 B0 01 00 14 */ sth r0, 0x14(r1) -/* 8017BEBC 00178E1C B0 01 00 18 */ sth r0, 0x18(r1) -/* 8017BEC0 00178E20 48 00 31 BD */ bl ValidateOrbitTargetId__7CPlayerCF9TUniqueIdR13CStateManager -/* 8017BEC4 00178E24 2C 03 00 00 */ cmpwi r3, 0 -/* 8017BEC8 00178E28 41 82 00 28 */ beq lbl_8017BEF0 -/* 8017BECC 00178E2C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017BED0 00178E30 7F 83 E3 78 */ mr r3, r28 -/* 8017BED4 00178E34 38 81 00 10 */ addi r4, r1, 0x10 -/* 8017BED8 00178E38 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8017BEDC 00178E3C 4B E9 DE C9 */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId -/* 8017BEE0 00178E40 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017BEE4 00178E44 38 60 00 00 */ li r3, 0 -/* 8017BEE8 00178E48 D0 1C 04 8C */ stfs f0, 0x48c(r28) -/* 8017BEEC 00178E4C 48 00 03 4C */ b lbl_8017C238 -lbl_8017BEF0: -/* 8017BEF0 00178E50 38 60 00 01 */ li r3, 1 -/* 8017BEF4 00178E54 48 00 03 44 */ b lbl_8017C238 -lbl_8017BEF8: -/* 8017BEF8 00178E58 38 00 00 00 */ li r0, 0 -/* 8017BEFC 00178E5C 7C 83 02 78 */ xor r3, r4, r0 -/* 8017BF00 00178E60 7C C0 02 78 */ xor r0, r6, r0 -/* 8017BF04 00178E64 7C 60 03 79 */ or. r0, r3, r0 -/* 8017BF08 00178E68 41 82 03 10 */ beq lbl_8017C218 -/* 8017BF0C 00178E6C A0 7D 00 00 */ lhz r3, 0(r29) -/* 8017BF10 00178E70 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017BF14 00178E74 7C 03 00 40 */ cmplw r3, r0 -/* 8017BF18 00178E78 41 82 03 00 */ beq lbl_8017C218 -/* 8017BF1C 00178E7C B0 61 00 0C */ sth r3, 0xc(r1) -/* 8017BF20 00178E80 7F 83 E3 78 */ mr r3, r28 -/* 8017BF24 00178E84 7F C5 F3 78 */ mr r5, r30 -/* 8017BF28 00178E88 38 81 00 0C */ addi r4, r1, 0xc -/* 8017BF2C 00178E8C 48 00 03 35 */ bl ValidateObjectForMode__7CPlayerCF9TUniqueIdR13CStateManager -/* 8017BF30 00178E90 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017BF34 00178E94 41 82 02 E4 */ beq lbl_8017C218 -/* 8017BF38 00178E98 7F E4 FB 78 */ mr r4, r31 -/* 8017BF3C 00178E9C 7F C5 F3 78 */ mr r5, r30 -/* 8017BF40 00178EA0 81 9F 00 00 */ lwz r12, 0(r31) -/* 8017BF44 00178EA4 38 61 00 44 */ addi r3, r1, 0x44 -/* 8017BF48 00178EA8 C0 22 A2 30 */ lfs f1, lbl_805ABF50@sda21(r2) -/* 8017BF4C 00178EAC 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 8017BF50 00178EB0 7D 89 03 A6 */ mtctr r12 -/* 8017BF54 00178EB4 4E 80 04 21 */ bctrl -/* 8017BF58 00178EB8 C0 41 00 44 */ lfs f2, 0x44(r1) -/* 8017BF5C 00178EBC 7F 84 E3 78 */ mr r4, r28 -/* 8017BF60 00178EC0 C0 21 00 48 */ lfs f1, 0x48(r1) -/* 8017BF64 00178EC4 38 61 00 38 */ addi r3, r1, 0x38 -/* 8017BF68 00178EC8 C0 01 00 4C */ lfs f0, 0x4c(r1) -/* 8017BF6C 00178ECC D0 41 00 74 */ stfs f2, 0x74(r1) -/* 8017BF70 00178ED0 D0 21 00 78 */ stfs f1, 0x78(r1) -/* 8017BF74 00178ED4 D0 01 00 7C */ stfs f0, 0x7c(r1) -/* 8017BF78 00178ED8 48 10 8E 05 */ bl GetEyePosition__7CPlayerCFv -/* 8017BF7C 00178EDC C0 A1 00 38 */ lfs f5, 0x38(r1) -/* 8017BF80 00178EE0 38 61 00 2C */ addi r3, r1, 0x2c -/* 8017BF84 00178EE4 C0 81 00 3C */ lfs f4, 0x3c(r1) -/* 8017BF88 00178EE8 38 A1 00 74 */ addi r5, r1, 0x74 -/* 8017BF8C 00178EEC C0 61 00 40 */ lfs f3, 0x40(r1) -/* 8017BF90 00178EF0 C0 41 00 78 */ lfs f2, 0x78(r1) -/* 8017BF94 00178EF4 C0 21 00 7C */ lfs f1, 0x7c(r1) -/* 8017BF98 00178EF8 C0 01 00 74 */ lfs f0, 0x74(r1) -/* 8017BF9C 00178EFC EC 42 20 28 */ fsubs f2, f2, f4 -/* 8017BFA0 00178F00 EC 21 18 28 */ fsubs f1, f1, f3 -/* 8017BFA4 00178F04 D0 A1 00 68 */ stfs f5, 0x68(r1) -/* 8017BFA8 00178F08 EC 00 28 28 */ fsubs f0, f0, f5 -/* 8017BFAC 00178F0C D0 81 00 6C */ stfs f4, 0x6c(r1) -/* 8017BFB0 00178F10 D0 61 00 70 */ stfs f3, 0x70(r1) -/* 8017BFB4 00178F14 D0 01 00 5C */ stfs f0, 0x5c(r1) -/* 8017BFB8 00178F18 D0 41 00 60 */ stfs f2, 0x60(r1) -/* 8017BFBC 00178F1C D0 21 00 64 */ stfs f1, 0x64(r1) -/* 8017BFC0 00178F20 80 9E 08 70 */ lwz r4, 0x870(r30) -/* 8017BFC4 00178F24 80 84 00 7C */ lwz r4, 0x7c(r4) -/* 8017BFC8 00178F28 4B EE 18 C9 */ bl ConvertToScreenSpace__11CGameCameraCFRC9CVector3f -/* 8017BFCC 00178F2C 3C 60 80 3F */ lis r3, lbl_803ED910@ha -/* 8017BFD0 00178F30 3C A0 43 30 */ lis r5, 0x4330 -/* 8017BFD4 00178F34 38 83 D9 10 */ addi r4, r3, lbl_803ED910@l -/* 8017BFD8 00178F38 C1 01 00 2C */ lfs f8, 0x2c(r1) -/* 8017BFDC 00178F3C 80 04 00 08 */ lwz r0, 8(r4) -/* 8017BFE0 00178F40 7F 83 E3 78 */ mr r3, r28 -/* 8017BFE4 00178F44 80 E4 00 0C */ lwz r7, 0xc(r4) -/* 8017BFE8 00178F48 38 81 00 50 */ addi r4, r1, 0x50 -/* 8017BFEC 00178F4C 6C 06 80 00 */ xoris r6, r0, 0x8000 -/* 8017BFF0 00178F50 C0 E1 00 30 */ lfs f7, 0x30(r1) -/* 8017BFF4 00178F54 6C E0 80 00 */ xoris r0, r7, 0x8000 -/* 8017BFF8 00178F58 90 C1 08 C4 */ stw r6, 0x8c4(r1) -/* 8017BFFC 00178F5C C0 C1 00 34 */ lfs f6, 0x34(r1) -/* 8017C000 00178F60 90 A1 08 C0 */ stw r5, 0x8c0(r1) -/* 8017C004 00178F64 C8 A2 A2 98 */ lfd f5, lbl_805ABFB8@sda21(r2) -/* 8017C008 00178F68 C8 01 08 C0 */ lfd f0, 0x8c0(r1) -/* 8017C00C 00178F6C 90 01 08 D4 */ stw r0, 0x8d4(r1) -/* 8017C010 00178F70 EC 20 28 28 */ fsubs f1, f0, f5 -/* 8017C014 00178F74 C0 62 A2 68 */ lfs f3, lbl_805ABF88@sda21(r2) -/* 8017C018 00178F78 90 A1 08 D0 */ stw r5, 0x8d0(r1) -/* 8017C01C 00178F7C C8 01 08 D0 */ lfd f0, 0x8d0(r1) -/* 8017C020 00178F80 EC 28 00 72 */ fmuls f1, f8, f1 -/* 8017C024 00178F84 90 C1 08 BC */ stw r6, 0x8bc(r1) -/* 8017C028 00178F88 EC 00 28 28 */ fsubs f0, f0, f5 -/* 8017C02C 00178F8C 90 A1 08 B8 */ stw r5, 0x8b8(r1) -/* 8017C030 00178F90 EC 41 00 F2 */ fmuls f2, f1, f3 -/* 8017C034 00178F94 EC 07 00 32 */ fmuls f0, f7, f0 -/* 8017C038 00178F98 C8 21 08 B8 */ lfd f1, 0x8b8(r1) -/* 8017C03C 00178F9C 90 01 08 CC */ stw r0, 0x8cc(r1) -/* 8017C040 00178FA0 EC 81 28 28 */ fsubs f4, f1, f5 -/* 8017C044 00178FA4 90 A1 08 C8 */ stw r5, 0x8c8(r1) -/* 8017C048 00178FA8 EC 00 00 F2 */ fmuls f0, f0, f3 -/* 8017C04C 00178FAC C8 21 08 C8 */ lfd f1, 0x8c8(r1) -/* 8017C050 00178FB0 EC 44 10 FA */ fmadds f2, f4, f3, f2 -/* 8017C054 00178FB4 D1 01 00 50 */ stfs f8, 0x50(r1) -/* 8017C058 00178FB8 EC 21 28 28 */ fsubs f1, f1, f5 -/* 8017C05C 00178FBC D0 E1 00 54 */ stfs f7, 0x54(r1) -/* 8017C060 00178FC0 EC 01 00 FA */ fmadds f0, f1, f3, f0 -/* 8017C064 00178FC4 D0 C1 00 58 */ stfs f6, 0x58(r1) -/* 8017C068 00178FC8 D0 41 00 50 */ stfs f2, 0x50(r1) -/* 8017C06C 00178FCC D0 01 00 54 */ stfs f0, 0x54(r1) -/* 8017C070 00178FD0 80 BC 03 30 */ lwz r5, 0x330(r28) -/* 8017C074 00178FD4 80 DC 03 34 */ lwz r6, 0x334(r28) -/* 8017C078 00178FD8 48 00 1C 55 */ bl WithinOrbitScreenBox__7CPlayerCFRC9CVector3fQ27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneType -/* 8017C07C 00178FDC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017C080 00178FE0 40 82 00 2C */ bne lbl_8017C0AC -/* 8017C084 00178FE4 80 1C 03 30 */ lwz r0, 0x330(r28) -/* 8017C088 00178FE8 2C 00 00 00 */ cmpwi r0, 0 -/* 8017C08C 00178FEC 41 82 01 74 */ beq lbl_8017C200 -/* 8017C090 00178FF0 80 DC 03 34 */ lwz r6, 0x334(r28) -/* 8017C094 00178FF4 7F 83 E3 78 */ mr r3, r28 -/* 8017C098 00178FF8 38 81 00 50 */ addi r4, r1, 0x50 -/* 8017C09C 00178FFC 38 A0 00 00 */ li r5, 0 -/* 8017C0A0 00179000 48 00 1C 2D */ bl WithinOrbitScreenBox__7CPlayerCFRC9CVector3fQ27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneType -/* 8017C0A4 00179004 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017C0A8 00179008 41 82 01 58 */ beq lbl_8017C200 -lbl_8017C0AC: -/* 8017C0AC 0017900C 38 61 00 5C */ addi r3, r1, 0x5c -/* 8017C0B0 00179010 48 19 88 09 */ bl Magnitude__9CVector3fCFv -/* 8017C0B4 00179014 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017C0B8 00179018 FF E0 08 90 */ fmr f31, f1 -/* 8017C0BC 0017901C C0 03 02 34 */ lfs f0, 0x234(r3) -/* 8017C0C0 00179020 FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 8017C0C4 00179024 4C 40 13 82 */ cror 2, 0, 2 -/* 8017C0C8 00179028 40 82 01 38 */ bne lbl_8017C200 -/* 8017C0CC 0017902C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017C0D0 00179030 38 60 00 00 */ li r3, 0 -/* 8017C0D4 00179034 90 61 00 B0 */ stw r3, 0xb0(r1) -/* 8017C0D8 00179038 38 61 00 5C */ addi r3, r1, 0x5c -/* 8017C0DC 0017903C B0 01 00 20 */ sth r0, 0x20(r1) -/* 8017C0E0 00179040 48 19 88 19 */ bl Normalize__9CVector3fFv -/* 8017C0E4 00179044 FC 20 F8 90 */ fmr f1, f31 -/* 8017C0E8 00179048 3C 80 80 47 */ lis r4, lbl_8046C8D8@ha -/* 8017C0EC 0017904C 7C 66 1B 78 */ mr r6, r3 -/* 8017C0F0 00179050 7F C3 F3 78 */ mr r3, r30 -/* 8017C0F4 00179054 38 E4 C8 D8 */ addi r7, r4, lbl_8046C8D8@l -/* 8017C0F8 00179058 38 81 00 B0 */ addi r4, r1, 0xb0 -/* 8017C0FC 0017905C 38 A1 00 68 */ addi r5, r1, 0x68 -/* 8017C100 00179060 39 00 00 00 */ li r8, 0 -/* 8017C104 00179064 4B ED 05 D5 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" -/* 8017C108 00179068 38 61 00 5C */ addi r3, r1, 0x5c -/* 8017C10C 0017906C 48 19 87 ED */ bl Normalize__9CVector3fFv -/* 8017C110 00179070 FC 20 F8 90 */ fmr f1, f31 -/* 8017C114 00179074 3C A0 80 47 */ lis r5, lbl_8046C8C0@ha -/* 8017C118 00179078 7C 67 1B 78 */ mr r7, r3 -/* 8017C11C 0017907C 7F C4 F3 78 */ mr r4, r30 -/* 8017C120 00179080 39 05 C8 C0 */ addi r8, r5, lbl_8046C8C0@l -/* 8017C124 00179084 38 61 00 80 */ addi r3, r1, 0x80 -/* 8017C128 00179088 38 A1 00 20 */ addi r5, r1, 0x20 -/* 8017C12C 0017908C 38 C1 00 68 */ addi r6, r1, 0x68 -/* 8017C130 00179090 39 21 00 B0 */ addi r9, r1, 0xb0 -/* 8017C134 00179094 4B ED 0E 91 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 8017C138 00179098 88 01 00 A0 */ lbz r0, 0xa0(r1) -/* 8017C13C 0017909C 28 00 00 00 */ cmplwi r0, 0 -/* 8017C140 001790A0 40 82 00 6C */ bne lbl_8017C1AC -/* 8017C144 001790A4 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017C148 001790A8 38 80 00 00 */ li r4, 0 -/* 8017C14C 001790AC C0 03 02 60 */ lfs f0, 0x260(r3) -/* 8017C150 001790B0 D0 1C 04 8C */ stfs f0, 0x48c(r28) -/* 8017C154 001790B4 80 A1 00 B0 */ lwz r5, 0xb0(r1) -/* 8017C158 001790B8 2C 05 00 00 */ cmpwi r5, 0 -/* 8017C15C 001790BC 40 81 00 40 */ ble lbl_8017C19C -/* 8017C160 001790C0 2C 05 00 08 */ cmpwi r5, 8 -/* 8017C164 001790C4 38 65 FF F8 */ addi r3, r5, -8 -/* 8017C168 001790C8 40 81 00 20 */ ble lbl_8017C188 -/* 8017C16C 001790CC 38 03 00 07 */ addi r0, r3, 7 -/* 8017C170 001790D0 54 00 E8 FE */ srwi r0, r0, 3 -/* 8017C174 001790D4 7C 09 03 A6 */ mtctr r0 -/* 8017C178 001790D8 2C 03 00 00 */ cmpwi r3, 0 -/* 8017C17C 001790DC 40 81 00 0C */ ble lbl_8017C188 -lbl_8017C180: -/* 8017C180 001790E0 38 84 00 08 */ addi r4, r4, 8 -/* 8017C184 001790E4 42 00 FF FC */ bdnz lbl_8017C180 -lbl_8017C188: -/* 8017C188 001790E8 7C 04 28 50 */ subf r0, r4, r5 -/* 8017C18C 001790EC 7C 09 03 A6 */ mtctr r0 -/* 8017C190 001790F0 7C 04 28 00 */ cmpw r4, r5 -/* 8017C194 001790F4 40 80 00 08 */ bge lbl_8017C19C -lbl_8017C198: -/* 8017C198 001790F8 42 00 00 00 */ bdnz lbl_8017C198 -lbl_8017C19C: -/* 8017C19C 001790FC 38 00 00 00 */ li r0, 0 -/* 8017C1A0 00179100 38 60 00 01 */ li r3, 1 -/* 8017C1A4 00179104 90 01 00 B0 */ stw r0, 0xb0(r1) -/* 8017C1A8 00179108 48 00 00 90 */ b lbl_8017C238 -lbl_8017C1AC: -/* 8017C1AC 0017910C 80 A1 00 B0 */ lwz r5, 0xb0(r1) -/* 8017C1B0 00179110 38 60 00 00 */ li r3, 0 -/* 8017C1B4 00179114 2C 05 00 00 */ cmpwi r5, 0 -/* 8017C1B8 00179118 40 81 00 40 */ ble lbl_8017C1F8 -/* 8017C1BC 0017911C 2C 05 00 08 */ cmpwi r5, 8 -/* 8017C1C0 00179120 38 85 FF F8 */ addi r4, r5, -8 -/* 8017C1C4 00179124 40 81 00 20 */ ble lbl_8017C1E4 -/* 8017C1C8 00179128 38 04 00 07 */ addi r0, r4, 7 -/* 8017C1CC 0017912C 54 00 E8 FE */ srwi r0, r0, 3 -/* 8017C1D0 00179130 7C 09 03 A6 */ mtctr r0 -/* 8017C1D4 00179134 2C 04 00 00 */ cmpwi r4, 0 -/* 8017C1D8 00179138 40 81 00 0C */ ble lbl_8017C1E4 -lbl_8017C1DC: -/* 8017C1DC 0017913C 38 63 00 08 */ addi r3, r3, 8 -/* 8017C1E0 00179140 42 00 FF FC */ bdnz lbl_8017C1DC -lbl_8017C1E4: -/* 8017C1E4 00179144 7C 03 28 50 */ subf r0, r3, r5 -/* 8017C1E8 00179148 7C 09 03 A6 */ mtctr r0 -/* 8017C1EC 0017914C 7C 03 28 00 */ cmpw r3, r5 -/* 8017C1F0 00179150 40 80 00 08 */ bge lbl_8017C1F8 -lbl_8017C1F4: -/* 8017C1F4 00179154 42 00 00 00 */ bdnz lbl_8017C1F4 -lbl_8017C1F8: -/* 8017C1F8 00179158 38 00 00 00 */ li r0, 0 -/* 8017C1FC 0017915C 90 01 00 B0 */ stw r0, 0xb0(r1) -lbl_8017C200: -/* 8017C200 00179160 C0 3C 04 8C */ lfs f1, 0x48c(r28) -/* 8017C204 00179164 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017C208 00179168 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017C20C 0017916C 40 81 00 0C */ ble lbl_8017C218 -/* 8017C210 00179170 38 60 00 01 */ li r3, 1 -/* 8017C214 00179174 48 00 00 24 */ b lbl_8017C238 -lbl_8017C218: -/* 8017C218 00179178 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017C21C 0017917C 7F 83 E3 78 */ mr r3, r28 -/* 8017C220 00179180 38 81 00 08 */ addi r4, r1, 8 -/* 8017C224 00179184 B0 01 00 08 */ sth r0, 8(r1) -/* 8017C228 00179188 4B E9 DB 7D */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId -/* 8017C22C 0017918C C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017C230 00179190 38 60 00 00 */ li r3, 0 -/* 8017C234 00179194 D0 1C 04 8C */ stfs f0, 0x48c(r28) -lbl_8017C238: -/* 8017C238 00179198 E3 E1 08 F8 */ psq_l f31, -1800(r1), 0, qr0 -/* 8017C23C 0017919C 80 01 09 04 */ lwz r0, 0x904(r1) -/* 8017C240 001791A0 CB E1 08 F0 */ lfd f31, 0x8f0(r1) -/* 8017C244 001791A4 83 E1 08 EC */ lwz r31, 0x8ec(r1) -/* 8017C248 001791A8 83 C1 08 E8 */ lwz r30, 0x8e8(r1) -/* 8017C24C 001791AC 83 A1 08 E4 */ lwz r29, 0x8e4(r1) -/* 8017C250 001791B0 83 81 08 E0 */ lwz r28, 0x8e0(r1) -/* 8017C254 001791B4 7C 08 03 A6 */ mtlr r0 -/* 8017C258 001791B8 38 21 09 00 */ addi r1, r1, 0x900 -/* 8017C25C 001791BC 4E 80 00 20 */ blr - -.global ValidateObjectForMode__7CPlayerCF9TUniqueIdR13CStateManager -ValidateObjectForMode__7CPlayerCF9TUniqueIdR13CStateManager: -/* 8017C260 001791C0 94 21 FF 90 */ stwu r1, -0x70(r1) -/* 8017C264 001791C4 7C 08 02 A6 */ mflr r0 -/* 8017C268 001791C8 90 01 00 74 */ stw r0, 0x74(r1) -/* 8017C26C 001791CC DB E1 00 60 */ stfd f31, 0x60(r1) -/* 8017C270 001791D0 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 -/* 8017C274 001791D4 93 E1 00 5C */ stw r31, 0x5c(r1) -/* 8017C278 001791D8 93 C1 00 58 */ stw r30, 0x58(r1) -/* 8017C27C 001791DC 93 A1 00 54 */ stw r29, 0x54(r1) -/* 8017C280 001791E0 93 81 00 50 */ stw r28, 0x50(r1) -/* 8017C284 001791E4 7C 9D 23 78 */ mr r29, r4 -/* 8017C288 001791E8 7C BE 2B 78 */ mr r30, r5 -/* 8017C28C 001791EC A0 04 00 00 */ lhz r0, 0(r4) -/* 8017C290 001791F0 7C 7C 1B 78 */ mr r28, r3 -/* 8017C294 001791F4 7F C3 F3 78 */ mr r3, r30 -/* 8017C298 001791F8 38 81 00 14 */ addi r4, r1, 0x14 -/* 8017C29C 001791FC B0 01 00 14 */ sth r0, 0x14(r1) -/* 8017C2A0 00179200 4B ED 03 05 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017C2A4 00179204 7C 64 1B 78 */ mr r4, r3 -/* 8017C2A8 00179208 38 61 00 30 */ addi r3, r1, 0x30 -/* 8017C2AC 0017920C 4B F3 39 E5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8017C2B0 00179210 83 E3 00 04 */ lwz r31, 4(r3) -/* 8017C2B4 00179214 28 1F 00 00 */ cmplwi r31, 0 -/* 8017C2B8 00179218 41 82 00 14 */ beq lbl_8017C2CC -/* 8017C2BC 0017921C A0 7D 00 00 */ lhz r3, 0(r29) -/* 8017C2C0 00179220 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017C2C4 00179224 7C 03 00 40 */ cmplw r3, r0 -/* 8017C2C8 00179228 40 82 00 0C */ bne lbl_8017C2D4 -lbl_8017C2CC: -/* 8017C2CC 0017922C 38 60 00 00 */ li r3, 0 -/* 8017C2D0 00179230 48 00 02 4C */ b lbl_8017C51C -lbl_8017C2D4: -/* 8017C2D4 00179234 B0 61 00 10 */ sth r3, 0x10(r1) -/* 8017C2D8 00179238 7F C3 F3 78 */ mr r3, r30 -/* 8017C2DC 0017923C 38 81 00 10 */ addi r4, r1, 0x10 -/* 8017C2E0 00179240 4B ED 02 C5 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017C2E4 00179244 7C 64 1B 78 */ mr r4, r3 -/* 8017C2E8 00179248 38 61 00 28 */ addi r3, r1, 0x28 -/* 8017C2EC 0017924C 4B F2 DE 05 */ bl "__ct__25TCastToPtr<11CScriptDoor>FP7CEntity" -/* 8017C2F0 00179250 80 03 00 04 */ lwz r0, 4(r3) -/* 8017C2F4 00179254 28 00 00 00 */ cmplwi r0, 0 -/* 8017C2F8 00179258 41 82 00 0C */ beq lbl_8017C304 -/* 8017C2FC 0017925C 38 60 00 01 */ li r3, 1 -/* 8017C300 00179260 48 00 02 1C */ b lbl_8017C51C -lbl_8017C304: -/* 8017C304 00179264 7F 83 E3 78 */ mr r3, r28 -/* 8017C308 00179268 4B E9 75 41 */ bl GetCombatMode__7CPlayerCFv -/* 8017C30C 0017926C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017C310 00179270 41 82 01 3C */ beq lbl_8017C44C -/* 8017C314 00179274 7F E3 FB 78 */ mr r3, r31 -/* 8017C318 00179278 7F C4 F3 78 */ mr r4, r30 -/* 8017C31C 0017927C 81 9F 00 00 */ lwz r12, 0(r31) -/* 8017C320 00179280 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8017C324 00179284 7D 89 03 A6 */ mtctr r12 -/* 8017C328 00179288 4E 80 04 21 */ bctrl -/* 8017C32C 0017928C 28 03 00 00 */ cmplwi r3, 0 -/* 8017C330 00179290 41 82 00 34 */ beq lbl_8017C364 -/* 8017C334 00179294 7F E3 FB 78 */ mr r3, r31 -/* 8017C338 00179298 7F C4 F3 78 */ mr r4, r30 -/* 8017C33C 0017929C 81 9F 00 00 */ lwz r12, 0(r31) -/* 8017C340 001792A0 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8017C344 001792A4 7D 89 03 A6 */ mtctr r12 -/* 8017C348 001792A8 4E 80 04 21 */ bctrl -/* 8017C34C 001792AC C0 23 00 00 */ lfs f1, 0(r3) -/* 8017C350 001792B0 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017C354 001792B4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017C358 001792B8 40 81 00 F4 */ ble lbl_8017C44C -/* 8017C35C 001792BC 38 60 00 01 */ li r3, 1 -/* 8017C360 001792C0 48 00 01 BC */ b lbl_8017C51C -lbl_8017C364: -/* 8017C364 001792C4 80 BF 00 68 */ lwz r5, 0x68(r31) -/* 8017C368 001792C8 38 00 00 08 */ li r0, 8 -/* 8017C36C 001792CC 80 DF 00 6C */ lwz r6, 0x6c(r31) -/* 8017C370 001792D0 38 80 00 00 */ li r4, 0 -/* 8017C374 001792D4 7C A0 00 38 */ and r0, r5, r0 -/* 8017C378 001792D8 7C C3 20 38 */ and r3, r6, r4 -/* 8017C37C 001792DC 7C 63 22 78 */ xor r3, r3, r4 -/* 8017C380 001792E0 7C 00 22 78 */ xor r0, r0, r4 -/* 8017C384 001792E4 7C 60 03 79 */ or. r0, r3, r0 -/* 8017C388 001792E8 41 82 00 08 */ beq lbl_8017C390 -/* 8017C38C 001792EC 38 80 00 01 */ li r4, 1 -lbl_8017C390: -/* 8017C390 001792F0 54 80 06 3F */ clrlwi. r0, r4, 0x18 -/* 8017C394 001792F4 40 82 00 24 */ bne lbl_8017C3B8 -/* 8017C398 001792F8 38 80 00 00 */ li r4, 0 -/* 8017C39C 001792FC 38 00 00 80 */ li r0, 0x80 -/* 8017C3A0 00179300 7C C3 20 38 */ and r3, r6, r4 -/* 8017C3A4 00179304 7C A0 00 38 */ and r0, r5, r0 -/* 8017C3A8 00179308 7C 63 22 78 */ xor r3, r3, r4 -/* 8017C3AC 0017930C 7C 00 22 78 */ xor r0, r0, r4 -/* 8017C3B0 00179310 7C 60 03 79 */ or. r0, r3, r0 -/* 8017C3B4 00179314 41 82 00 0C */ beq lbl_8017C3C0 -lbl_8017C3B8: -/* 8017C3B8 00179318 38 60 00 01 */ li r3, 1 -/* 8017C3BC 0017931C 48 00 01 60 */ b lbl_8017C51C -lbl_8017C3C0: -/* 8017C3C0 00179320 A0 1D 00 00 */ lhz r0, 0(r29) -/* 8017C3C4 00179324 7F C3 F3 78 */ mr r3, r30 -/* 8017C3C8 00179328 38 81 00 0C */ addi r4, r1, 0xc -/* 8017C3CC 0017932C B0 01 00 0C */ sth r0, 0xc(r1) -/* 8017C3D0 00179330 4B ED 01 D5 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017C3D4 00179334 7C 64 1B 78 */ mr r4, r3 -/* 8017C3D8 00179338 38 61 00 20 */ addi r3, r1, 0x20 -/* 8017C3DC 0017933C 4B F2 D6 ED */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" -/* 8017C3E0 00179340 80 83 00 04 */ lwz r4, 4(r3) -/* 8017C3E4 00179344 28 04 00 00 */ cmplwi r4, 0 -/* 8017C3E8 00179348 41 82 00 64 */ beq lbl_8017C44C -/* 8017C3EC 0017934C C0 24 00 50 */ lfs f1, 0x50(r4) -/* 8017C3F0 00179350 38 61 00 44 */ addi r3, r1, 0x44 -/* 8017C3F4 00179354 C0 1C 00 50 */ lfs f0, 0x50(r28) -/* 8017C3F8 00179358 C0 64 00 60 */ lfs f3, 0x60(r4) -/* 8017C3FC 0017935C C0 5C 00 60 */ lfs f2, 0x60(r28) -/* 8017C400 00179360 EC 81 00 28 */ fsubs f4, f1, f0 -/* 8017C404 00179364 C0 24 00 40 */ lfs f1, 0x40(r4) -/* 8017C408 00179368 C0 1C 00 40 */ lfs f0, 0x40(r28) -/* 8017C40C 0017936C EC 43 10 28 */ fsubs f2, f3, f2 -/* 8017C410 00179370 D0 81 00 48 */ stfs f4, 0x48(r1) -/* 8017C414 00179374 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8017C418 00179378 D0 41 00 4C */ stfs f2, 0x4c(r1) -/* 8017C41C 0017937C D0 01 00 44 */ stfs f0, 0x44(r1) -/* 8017C420 00179380 48 19 82 D9 */ bl CanBeNormalized__9CVector3fCFv -/* 8017C424 00179384 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017C428 00179388 41 82 00 24 */ beq lbl_8017C44C -/* 8017C42C 0017938C 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) -/* 8017C430 00179390 38 61 00 44 */ addi r3, r1, 0x44 -/* 8017C434 00179394 C3 E4 02 A0 */ lfs f31, 0x2a0(r4) -/* 8017C438 00179398 48 19 84 81 */ bl Magnitude__9CVector3fCFv -/* 8017C43C 0017939C FC 01 F8 40 */ fcmpo cr0, f1, f31 -/* 8017C440 001793A0 40 80 00 0C */ bge lbl_8017C44C -/* 8017C444 001793A4 38 60 00 01 */ li r3, 1 -/* 8017C448 001793A8 48 00 00 D4 */ b lbl_8017C51C -lbl_8017C44C: -/* 8017C44C 001793AC 7F 83 E3 78 */ mr r3, r28 -/* 8017C450 001793B0 4B E9 73 C1 */ bl GetExplorationMode__7CPlayerCFv -/* 8017C454 001793B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017C458 001793B8 41 82 00 C0 */ beq lbl_8017C518 -/* 8017C45C 001793BC 7F E3 FB 78 */ mr r3, r31 -/* 8017C460 001793C0 7F C4 F3 78 */ mr r4, r30 -/* 8017C464 001793C4 81 9F 00 00 */ lwz r12, 0(r31) -/* 8017C468 001793C8 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8017C46C 001793CC 7D 89 03 A6 */ mtctr r12 -/* 8017C470 001793D0 4E 80 04 21 */ bctrl -/* 8017C474 001793D4 28 03 00 00 */ cmplwi r3, 0 -/* 8017C478 001793D8 40 82 00 98 */ bne lbl_8017C510 -/* 8017C47C 001793DC A0 1D 00 00 */ lhz r0, 0(r29) -/* 8017C480 001793E0 7F C3 F3 78 */ mr r3, r30 -/* 8017C484 001793E4 38 81 00 08 */ addi r4, r1, 8 -/* 8017C488 001793E8 B0 01 00 08 */ sth r0, 8(r1) -/* 8017C48C 001793EC 4B ED 01 19 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017C490 001793F0 7C 64 1B 78 */ mr r4, r3 -/* 8017C494 001793F4 38 61 00 18 */ addi r3, r1, 0x18 -/* 8017C498 001793F8 4B F2 D6 31 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" -/* 8017C49C 001793FC 80 83 00 04 */ lwz r4, 4(r3) -/* 8017C4A0 00179400 28 04 00 00 */ cmplwi r4, 0 -/* 8017C4A4 00179404 41 82 00 64 */ beq lbl_8017C508 -/* 8017C4A8 00179408 C0 24 00 50 */ lfs f1, 0x50(r4) -/* 8017C4AC 0017940C 38 61 00 38 */ addi r3, r1, 0x38 -/* 8017C4B0 00179410 C0 1C 00 50 */ lfs f0, 0x50(r28) -/* 8017C4B4 00179414 C0 64 00 60 */ lfs f3, 0x60(r4) -/* 8017C4B8 00179418 C0 5C 00 60 */ lfs f2, 0x60(r28) -/* 8017C4BC 0017941C EC 81 00 28 */ fsubs f4, f1, f0 -/* 8017C4C0 00179420 C0 24 00 40 */ lfs f1, 0x40(r4) -/* 8017C4C4 00179424 C0 1C 00 40 */ lfs f0, 0x40(r28) -/* 8017C4C8 00179428 EC 43 10 28 */ fsubs f2, f3, f2 -/* 8017C4CC 0017942C D0 81 00 3C */ stfs f4, 0x3c(r1) -/* 8017C4D0 00179430 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8017C4D4 00179434 D0 41 00 40 */ stfs f2, 0x40(r1) -/* 8017C4D8 00179438 D0 01 00 38 */ stfs f0, 0x38(r1) -/* 8017C4DC 0017943C 48 19 82 1D */ bl CanBeNormalized__9CVector3fCFv -/* 8017C4E0 00179440 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017C4E4 00179444 41 82 00 34 */ beq lbl_8017C518 -/* 8017C4E8 00179448 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) -/* 8017C4EC 0017944C 38 61 00 38 */ addi r3, r1, 0x38 -/* 8017C4F0 00179450 C3 E4 02 A0 */ lfs f31, 0x2a0(r4) -/* 8017C4F4 00179454 48 19 83 C5 */ bl Magnitude__9CVector3fCFv -/* 8017C4F8 00179458 FC 01 F8 40 */ fcmpo cr0, f1, f31 -/* 8017C4FC 0017945C 40 80 00 1C */ bge lbl_8017C518 -/* 8017C500 00179460 38 60 00 01 */ li r3, 1 -/* 8017C504 00179464 48 00 00 18 */ b lbl_8017C51C -lbl_8017C508: -/* 8017C508 00179468 38 60 00 01 */ li r3, 1 -/* 8017C50C 0017946C 48 00 00 10 */ b lbl_8017C51C -lbl_8017C510: -/* 8017C510 00179470 38 60 00 01 */ li r3, 1 -/* 8017C514 00179474 48 00 00 08 */ b lbl_8017C51C -lbl_8017C518: -/* 8017C518 00179478 38 60 00 00 */ li r3, 0 -lbl_8017C51C: -/* 8017C51C 0017947C E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 -/* 8017C520 00179480 80 01 00 74 */ lwz r0, 0x74(r1) -/* 8017C524 00179484 CB E1 00 60 */ lfd f31, 0x60(r1) -/* 8017C528 00179488 83 E1 00 5C */ lwz r31, 0x5c(r1) -/* 8017C52C 0017948C 83 C1 00 58 */ lwz r30, 0x58(r1) -/* 8017C530 00179490 83 A1 00 54 */ lwz r29, 0x54(r1) -/* 8017C534 00179494 83 81 00 50 */ lwz r28, 0x50(r1) -/* 8017C538 00179498 7C 08 03 A6 */ mtlr r0 -/* 8017C53C 0017949C 38 21 00 70 */ addi r1, r1, 0x70 -/* 8017C540 001794A0 4E 80 00 20 */ blr - -.global FindAimTargetId__7CPlayerFR13CStateManager -FindAimTargetId__7CPlayerFR13CStateManager: -/* 8017C544 001794A4 94 21 F7 80 */ stwu r1, -0x880(r1) -/* 8017C548 001794A8 7C 08 02 A6 */ mflr r0 -/* 8017C54C 001794AC 90 01 08 84 */ stw r0, 0x884(r1) -/* 8017C550 001794B0 93 E1 08 7C */ stw r31, 0x87c(r1) -/* 8017C554 001794B4 7C BF 2B 78 */ mr r31, r5 -/* 8017C558 001794B8 93 C1 08 78 */ stw r30, 0x878(r1) -/* 8017C55C 001794BC 7C 9E 23 78 */ mr r30, r4 -/* 8017C560 001794C0 7F E4 FB 78 */ mr r4, r31 -/* 8017C564 001794C4 93 A1 08 74 */ stw r29, 0x874(r1) -/* 8017C568 001794C8 7C 7D 1B 78 */ mr r29, r3 -/* 8017C56C 001794CC 7F C3 F3 78 */ mr r3, r30 -/* 8017C570 001794D0 4B E9 CB 5D */ bl GetFirstPersonCameraTransform__7CPlayerCFR13CStateManager -/* 8017C574 001794D4 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) -/* 8017C578 001794D8 88 1E 09 C6 */ lbz r0, 0x9c6(r30) -/* 8017C57C 001794DC C0 24 02 34 */ lfs f1, 0x234(r4) -/* 8017C580 001794E0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8017C584 001794E4 FC 60 08 90 */ fmr f3, f1 -/* 8017C588 001794E8 41 82 00 0C */ beq lbl_8017C594 -/* 8017C58C 001794EC C0 02 A2 A0 */ lfs f0, lbl_805ABFC0@sda21(r2) -/* 8017C590 001794F0 EC 61 00 32 */ fmuls f3, f1, f0 -lbl_8017C594: -/* 8017C594 001794F4 C0 24 02 58 */ lfs f1, 0x258(r4) -/* 8017C598 001794F8 7C 65 1B 78 */ mr r5, r3 -/* 8017C59C 001794FC C0 44 02 5C */ lfs f2, 0x25c(r4) -/* 8017C5A0 00179500 38 61 00 20 */ addi r3, r1, 0x20 -/* 8017C5A4 00179504 38 80 00 01 */ li r4, 1 -/* 8017C5A8 00179508 48 00 33 C9 */ bl BuildNearListBox__FbRC12CTransform4ffff -/* 8017C5AC 0017950C C0 A1 00 20 */ lfs f5, 0x20(r1) -/* 8017C5B0 00179510 38 60 00 00 */ li r3, 0 -/* 8017C5B4 00179514 C0 81 00 24 */ lfs f4, 0x24(r1) -/* 8017C5B8 00179518 38 80 00 01 */ li r4, 1 -/* 8017C5BC 0017951C C0 61 00 28 */ lfs f3, 0x28(r1) -/* 8017C5C0 00179520 C0 41 00 2C */ lfs f2, 0x2c(r1) -/* 8017C5C4 00179524 C0 21 00 30 */ lfs f1, 0x30(r1) -/* 8017C5C8 00179528 C0 01 00 34 */ lfs f0, 0x34(r1) -/* 8017C5CC 0017952C 80 AD 8E 74 */ lwz r5, lbl_805A7A34@sda21(r13) -/* 8017C5D0 00179530 D0 A1 00 50 */ stfs f5, 0x50(r1) -/* 8017C5D4 00179534 D0 81 00 54 */ stfs f4, 0x54(r1) -/* 8017C5D8 00179538 D0 61 00 58 */ stfs f3, 0x58(r1) -/* 8017C5DC 0017953C D0 41 00 5C */ stfs f2, 0x5c(r1) -/* 8017C5E0 00179540 D0 21 00 60 */ stfs f1, 0x60(r1) -/* 8017C5E4 00179544 D0 01 00 64 */ stfs f0, 0x64(r1) -/* 8017C5E8 00179548 48 20 D9 0D */ bl __shl2i -/* 8017C5EC 0017954C 38 00 00 00 */ li r0, 0 -/* 8017C5F0 00179550 39 00 00 01 */ li r8, 1 -/* 8017C5F4 00179554 90 81 00 3C */ stw r4, 0x3c(r1) -/* 8017C5F8 00179558 7F C7 F3 78 */ mr r7, r30 -/* 8017C5FC 0017955C 38 81 00 68 */ addi r4, r1, 0x68 -/* 8017C600 00179560 38 A1 00 50 */ addi r5, r1, 0x50 -/* 8017C604 00179564 90 61 00 38 */ stw r3, 0x38(r1) -/* 8017C608 00179568 7F E3 FB 78 */ mr r3, r31 -/* 8017C60C 0017956C 38 C1 00 38 */ addi r6, r1, 0x38 -/* 8017C610 00179570 91 01 00 18 */ stw r8, 0x18(r1) -/* 8017C614 00179574 90 01 00 44 */ stw r0, 0x44(r1) -/* 8017C618 00179578 90 01 00 40 */ stw r0, 0x40(r1) -/* 8017C61C 0017957C 91 01 00 48 */ stw r8, 0x48(r1) -/* 8017C620 00179580 90 01 00 68 */ stw r0, 0x68(r1) -/* 8017C624 00179584 4B ED 00 FD */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" -/* 8017C628 00179588 7F A3 EB 78 */ mr r3, r29 -/* 8017C62C 0017958C 7F C4 F3 78 */ mr r4, r30 -/* 8017C630 00179590 7F E8 FB 78 */ mr r8, r31 -/* 8017C634 00179594 38 A1 00 68 */ addi r5, r1, 0x68 -/* 8017C638 00179598 38 C0 00 00 */ li r6, 0 -/* 8017C63C 0017959C 38 E0 00 01 */ li r7, 1 -/* 8017C640 001795A0 48 00 00 75 */ bl "CheckEnemiesAgainstOrbitZone__7CPlayerCFRCQ24rstl32reserved_vector<9TUniqueId,1024>Q27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneTypeR13CStateManager" -/* 8017C644 001795A4 80 A1 00 68 */ lwz r5, 0x68(r1) -/* 8017C648 001795A8 38 60 00 00 */ li r3, 0 -/* 8017C64C 001795AC 2C 05 00 00 */ cmpwi r5, 0 -/* 8017C650 001795B0 40 81 00 40 */ ble lbl_8017C690 -/* 8017C654 001795B4 2C 05 00 08 */ cmpwi r5, 8 -/* 8017C658 001795B8 38 85 FF F8 */ addi r4, r5, -8 -/* 8017C65C 001795BC 40 81 00 20 */ ble lbl_8017C67C -/* 8017C660 001795C0 38 04 00 07 */ addi r0, r4, 7 -/* 8017C664 001795C4 54 00 E8 FE */ srwi r0, r0, 3 -/* 8017C668 001795C8 7C 09 03 A6 */ mtctr r0 -/* 8017C66C 001795CC 2C 04 00 00 */ cmpwi r4, 0 -/* 8017C670 001795D0 40 81 00 0C */ ble lbl_8017C67C -lbl_8017C674: -/* 8017C674 001795D4 38 63 00 08 */ addi r3, r3, 8 -/* 8017C678 001795D8 42 00 FF FC */ bdnz lbl_8017C674 -lbl_8017C67C: -/* 8017C67C 001795DC 7C 03 28 50 */ subf r0, r3, r5 -/* 8017C680 001795E0 7C 09 03 A6 */ mtctr r0 -/* 8017C684 001795E4 7C 03 28 00 */ cmpw r3, r5 -/* 8017C688 001795E8 40 80 00 08 */ bge lbl_8017C690 -lbl_8017C68C: -/* 8017C68C 001795EC 42 00 00 00 */ bdnz lbl_8017C68C -lbl_8017C690: -/* 8017C690 001795F0 38 00 00 00 */ li r0, 0 -/* 8017C694 001795F4 90 01 00 68 */ stw r0, 0x68(r1) -/* 8017C698 001795F8 80 01 08 84 */ lwz r0, 0x884(r1) -/* 8017C69C 001795FC 83 E1 08 7C */ lwz r31, 0x87c(r1) -/* 8017C6A0 00179600 83 C1 08 78 */ lwz r30, 0x878(r1) -/* 8017C6A4 00179604 83 A1 08 74 */ lwz r29, 0x874(r1) -/* 8017C6A8 00179608 7C 08 03 A6 */ mtlr r0 -/* 8017C6AC 0017960C 38 21 08 80 */ addi r1, r1, 0x880 -/* 8017C6B0 00179610 4E 80 00 20 */ blr - -.global "CheckEnemiesAgainstOrbitZone__7CPlayerCFRCQ24rstl32reserved_vector<9TUniqueId,1024>Q27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneTypeR13CStateManager" -"CheckEnemiesAgainstOrbitZone__7CPlayerCFRCQ24rstl32reserved_vector<9TUniqueId,1024>Q27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneTypeR13CStateManager": -/* 8017C6B4 00179614 94 21 EE 50 */ stwu r1, -0x11b0(r1) -/* 8017C6B8 00179618 7C 08 02 A6 */ mflr r0 -/* 8017C6BC 0017961C 90 01 11 B4 */ stw r0, 0x11b4(r1) -/* 8017C6C0 00179620 38 00 11 A8 */ li r0, 0x11a8 -/* 8017C6C4 00179624 DB E1 11 A0 */ stfd f31, 0x11a0(r1) -/* 8017C6C8 00179628 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 -/* 8017C6CC 0017962C 38 00 11 98 */ li r0, 0x1198 -/* 8017C6D0 00179630 DB C1 11 90 */ stfd f30, 0x1190(r1) -/* 8017C6D4 00179634 13 C1 00 0E */ psq_stx f30, r1, r0, 0, qr0 -/* 8017C6D8 00179638 38 00 11 88 */ li r0, 0x1188 -/* 8017C6DC 0017963C DB A1 11 80 */ stfd f29, 0x1180(r1) -/* 8017C6E0 00179640 13 A1 00 0E */ psq_stx f29, r1, r0, 0, qr0 -/* 8017C6E4 00179644 38 00 11 78 */ li r0, 0x1178 -/* 8017C6E8 00179648 DB 81 11 70 */ stfd f28, 0x1170(r1) -/* 8017C6EC 0017964C 13 81 00 0E */ psq_stx f28, r1, r0, 0, qr0 -/* 8017C6F0 00179650 38 00 11 68 */ li r0, 0x1168 -/* 8017C6F4 00179654 DB 61 11 60 */ stfd f27, 0x1160(r1) -/* 8017C6F8 00179658 13 61 00 0E */ psq_stx f27, r1, r0, 0, qr0 -/* 8017C6FC 0017965C 38 00 11 58 */ li r0, 0x1158 -/* 8017C700 00179660 DB 41 11 50 */ stfd f26, 0x1150(r1) -/* 8017C704 00179664 13 41 00 0E */ psq_stx f26, r1, r0, 0, qr0 -/* 8017C708 00179668 BE A1 11 24 */ stmw r21, 0x1124(r1) -/* 8017C70C 0017966C 7C 75 1B 78 */ mr r21, r3 -/* 8017C710 00179670 7C 9B 23 78 */ mr r27, r4 -/* 8017C714 00179674 7C BC 2B 78 */ mr r28, r5 -/* 8017C718 00179678 7C DD 33 78 */ mr r29, r6 -/* 8017C71C 0017967C 7C FE 3B 78 */ mr r30, r7 -/* 8017C720 00179680 7D 1F 43 78 */ mr r31, r8 -/* 8017C724 00179684 38 61 00 34 */ addi r3, r1, 0x34 -/* 8017C728 00179688 48 10 86 55 */ bl GetEyePosition__7CPlayerCFv -/* 8017C72C 0017968C C0 61 00 34 */ lfs f3, 0x34(r1) -/* 8017C730 00179690 38 61 00 64 */ addi r3, r1, 0x64 -/* 8017C734 00179694 C0 41 00 38 */ lfs f2, 0x38(r1) -/* 8017C738 00179698 C0 21 00 3C */ lfs f1, 0x3c(r1) -/* 8017C73C 0017969C C0 BB 00 58 */ lfs f5, 0x58(r27) -/* 8017C740 001796A0 C0 9B 00 48 */ lfs f4, 0x48(r27) -/* 8017C744 001796A4 C0 1B 00 38 */ lfs f0, 0x38(r27) -/* 8017C748 001796A8 D0 61 00 70 */ stfs f3, 0x70(r1) -/* 8017C74C 001796AC D0 41 00 74 */ stfs f2, 0x74(r1) -/* 8017C750 001796B0 D0 21 00 78 */ stfs f1, 0x78(r1) -/* 8017C754 001796B4 D0 01 00 64 */ stfs f0, 0x64(r1) -/* 8017C758 001796B8 D0 81 00 68 */ stfs f4, 0x68(r1) -/* 8017C75C 001796BC D0 A1 00 6C */ stfs f5, 0x6c(r1) -/* 8017C760 001796C0 48 19 81 99 */ bl Normalize__9CVector3fFv -/* 8017C764 001796C4 3C 60 80 3F */ lis r3, lbl_803ED910@ha -/* 8017C768 001796C8 3C E0 43 30 */ lis r7, 0x4330 -/* 8017C76C 001796CC 3B 43 D9 10 */ addi r26, r3, lbl_803ED910@l -/* 8017C770 001796D0 C3 E2 A2 80 */ lfs f31, lbl_805ABFA0@sda21(r2) -/* 8017C774 001796D4 80 BA 00 08 */ lwz r5, 8(r26) -/* 8017C778 001796D8 57 A3 10 3A */ slwi r3, r29, 2 -/* 8017C77C 001796DC 80 CD A1 18 */ lwz r6, gpTweakPlayer@sda21(r13) -/* 8017C780 001796E0 FF C0 F8 90 */ fmr f30, f31 -/* 8017C784 001796E4 80 9A 00 0C */ lwz r4, 0xc(r26) -/* 8017C788 001796E8 54 A0 0F FE */ srwi r0, r5, 0x1f -/* 8017C78C 001796EC 7C C6 1A 14 */ add r6, r6, r3 -/* 8017C790 001796F0 80 7F 08 70 */ lwz r3, 0x870(r31) -/* 8017C794 001796F4 7C A0 2A 14 */ add r5, r0, r5 -/* 8017C798 001796F8 54 80 0F FE */ srwi r0, r4, 0x1f -/* 8017C79C 001796FC 81 06 01 C8 */ lwz r8, 0x1c8(r6) -/* 8017C7A0 00179700 7C A9 0E 70 */ srawi r9, r5, 1 -/* 8017C7A4 00179704 80 A6 01 D0 */ lwz r5, 0x1d0(r6) -/* 8017C7A8 00179708 6D 26 80 00 */ xoris r6, r9, 0x8000 -/* 8017C7AC 0017970C 7C 00 22 14 */ add r0, r0, r4 -/* 8017C7B0 00179710 7C 00 0E 70 */ srawi r0, r0, 1 -/* 8017C7B4 00179714 6D 08 80 00 */ xoris r8, r8, 0x8000 -/* 8017C7B8 00179718 6C 00 80 00 */ xoris r0, r0, 0x8000 -/* 8017C7BC 0017971C 6C A4 80 00 */ xoris r4, r5, 0x8000 -/* 8017C7C0 00179720 91 01 10 EC */ stw r8, 0x10ec(r1) -/* 8017C7C4 00179724 3B 1C 00 04 */ addi r24, r28, 4 -/* 8017C7C8 00179728 C8 62 A2 98 */ lfd f3, lbl_805ABFB8@sda21(r2) -/* 8017C7CC 0017972C 90 E1 10 E8 */ stw r7, 0x10e8(r1) -/* 8017C7D0 00179730 A3 2D A3 8C */ lhz r25, lbl_805A8F4C@sda21(r13) -/* 8017C7D4 00179734 C8 01 10 E8 */ lfd f0, 0x10e8(r1) -/* 8017C7D8 00179738 90 C1 10 F4 */ stw r6, 0x10f4(r1) -/* 8017C7DC 0017973C EC 40 18 28 */ fsubs f2, f0, f3 -/* 8017C7E0 00179740 82 C3 00 7C */ lwz r22, 0x7c(r3) -/* 8017C7E4 00179744 90 E1 10 F0 */ stw r7, 0x10f0(r1) -/* 8017C7E8 00179748 C8 01 10 F0 */ lfd f0, 0x10f0(r1) -/* 8017C7EC 0017974C 90 81 11 04 */ stw r4, 0x1104(r1) -/* 8017C7F0 00179750 EC 20 18 28 */ fsubs f1, f0, f3 -/* 8017C7F4 00179754 90 E1 11 00 */ stw r7, 0x1100(r1) -/* 8017C7F8 00179758 C8 01 11 00 */ lfd f0, 0x1100(r1) -/* 8017C7FC 0017975C EF A2 08 28 */ fsubs f29, f2, f1 -/* 8017C800 00179760 90 01 11 0C */ stw r0, 0x110c(r1) -/* 8017C804 00179764 EC 20 18 28 */ fsubs f1, f0, f3 -/* 8017C808 00179768 90 E1 11 08 */ stw r7, 0x1108(r1) -/* 8017C80C 0017976C C8 01 11 08 */ lfd f0, 0x1108(r1) -/* 8017C810 00179770 90 C1 10 FC */ stw r6, 0x10fc(r1) -/* 8017C814 00179774 EC 00 18 28 */ fsubs f0, f0, f3 -/* 8017C818 00179778 90 E1 10 F8 */ stw r7, 0x10f8(r1) -/* 8017C81C 0017977C C8 41 10 F8 */ lfd f2, 0x10f8(r1) -/* 8017C820 00179780 EF 81 00 28 */ fsubs f28, f1, f0 -/* 8017C824 00179784 90 01 11 14 */ stw r0, 0x1114(r1) -/* 8017C828 00179788 EC 22 18 28 */ fsubs f1, f2, f3 -/* 8017C82C 0017978C 90 E1 11 10 */ stw r7, 0x1110(r1) -/* 8017C830 00179790 C8 01 11 10 */ lfd f0, 0x1110(r1) -/* 8017C834 00179794 EF BD 08 24 */ fdivs f29, f29, f1 -/* 8017C838 00179798 EC 00 18 28 */ fsubs f0, f0, f3 -/* 8017C83C 0017979C EF 9C 00 24 */ fdivs f28, f28, f0 -/* 8017C840 001797A0 48 00 03 B8 */ b lbl_8017CBF8 -lbl_8017C844: -/* 8017C844 001797A4 A0 18 00 00 */ lhz r0, 0(r24) -/* 8017C848 001797A8 7F E3 FB 78 */ mr r3, r31 -/* 8017C84C 001797AC 38 81 00 10 */ addi r4, r1, 0x10 -/* 8017C850 001797B0 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8017C854 001797B4 4B EC FD 51 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017C858 001797B8 7C 77 1B 79 */ or. r23, r3, r3 -/* 8017C85C 001797BC 41 82 03 98 */ beq lbl_8017CBF4 -/* 8017C860 001797C0 A0 D7 00 08 */ lhz r6, 8(r23) -/* 8017C864 001797C4 A0 1B 00 08 */ lhz r0, 8(r27) -/* 8017C868 001797C8 7C 06 00 40 */ cmplw r6, r0 -/* 8017C86C 001797CC 41 82 03 88 */ beq lbl_8017CBF4 -/* 8017C870 001797D0 B0 C1 00 08 */ sth r6, 8(r1) -/* 8017C874 001797D4 7F 63 DB 78 */ mr r3, r27 -/* 8017C878 001797D8 7F E5 FB 78 */ mr r5, r31 -/* 8017C87C 001797DC 38 81 00 0C */ addi r4, r1, 0xc -/* 8017C880 001797E0 B0 C1 00 0C */ sth r6, 0xc(r1) -/* 8017C884 001797E4 4B FF F9 DD */ bl ValidateObjectForMode__7CPlayerCF9TUniqueIdR13CStateManager -/* 8017C888 001797E8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017C88C 001797EC 41 82 03 68 */ beq lbl_8017CBF4 -/* 8017C890 001797F0 7E E4 BB 78 */ mr r4, r23 -/* 8017C894 001797F4 7F E5 FB 78 */ mr r5, r31 -/* 8017C898 001797F8 81 97 00 00 */ lwz r12, 0(r23) -/* 8017C89C 001797FC 38 61 00 28 */ addi r3, r1, 0x28 -/* 8017C8A0 00179800 C0 22 A2 30 */ lfs f1, lbl_805ABF50@sda21(r2) -/* 8017C8A4 00179804 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 8017C8A8 00179808 7D 89 03 A6 */ mtctr r12 -/* 8017C8AC 0017980C 4E 80 04 21 */ bctrl -/* 8017C8B0 00179810 C0 41 00 28 */ lfs f2, 0x28(r1) -/* 8017C8B4 00179814 7E C4 B3 78 */ mr r4, r22 -/* 8017C8B8 00179818 C0 21 00 2C */ lfs f1, 0x2c(r1) -/* 8017C8BC 0017981C 38 61 00 1C */ addi r3, r1, 0x1c -/* 8017C8C0 00179820 C0 01 00 30 */ lfs f0, 0x30(r1) -/* 8017C8C4 00179824 38 A1 00 58 */ addi r5, r1, 0x58 -/* 8017C8C8 00179828 D0 41 00 58 */ stfs f2, 0x58(r1) -/* 8017C8CC 0017982C D0 21 00 5C */ stfs f1, 0x5c(r1) -/* 8017C8D0 00179830 D0 01 00 60 */ stfs f0, 0x60(r1) -/* 8017C8D4 00179834 4B EE 0F BD */ bl ConvertToScreenSpace__11CGameCameraCFRC9CVector3f -/* 8017C8D8 00179838 80 1A 00 08 */ lwz r0, 8(r26) -/* 8017C8DC 0017983C 3C E0 43 30 */ lis r7, 0x4330 -/* 8017C8E0 00179840 80 9A 00 0C */ lwz r4, 0xc(r26) -/* 8017C8E4 00179844 7F 63 DB 78 */ mr r3, r27 -/* 8017C8E8 00179848 6C 08 80 00 */ xoris r8, r0, 0x8000 -/* 8017C8EC 0017984C C1 01 00 1C */ lfs f8, 0x1c(r1) -/* 8017C8F0 00179850 6C 80 80 00 */ xoris r0, r4, 0x8000 -/* 8017C8F4 00179854 91 01 11 0C */ stw r8, 0x110c(r1) -/* 8017C8F8 00179858 C0 E1 00 20 */ lfs f7, 0x20(r1) -/* 8017C8FC 0017985C 7F A5 EB 78 */ mr r5, r29 -/* 8017C900 00179860 90 E1 11 08 */ stw r7, 0x1108(r1) -/* 8017C904 00179864 7F C6 F3 78 */ mr r6, r30 -/* 8017C908 00179868 C8 A2 A2 98 */ lfd f5, lbl_805ABFB8@sda21(r2) -/* 8017C90C 0017986C 38 81 00 4C */ addi r4, r1, 0x4c -/* 8017C910 00179870 C8 01 11 08 */ lfd f0, 0x1108(r1) -/* 8017C914 00179874 90 01 10 FC */ stw r0, 0x10fc(r1) -/* 8017C918 00179878 EC 20 28 28 */ fsubs f1, f0, f5 -/* 8017C91C 0017987C C0 C1 00 24 */ lfs f6, 0x24(r1) -/* 8017C920 00179880 90 E1 10 F8 */ stw r7, 0x10f8(r1) -/* 8017C924 00179884 C0 62 A2 68 */ lfs f3, lbl_805ABF88@sda21(r2) -/* 8017C928 00179888 C8 01 10 F8 */ lfd f0, 0x10f8(r1) -/* 8017C92C 0017988C EC 28 00 72 */ fmuls f1, f8, f1 -/* 8017C930 00179890 91 01 11 14 */ stw r8, 0x1114(r1) -/* 8017C934 00179894 EC 00 28 28 */ fsubs f0, f0, f5 -/* 8017C938 00179898 90 E1 11 10 */ stw r7, 0x1110(r1) -/* 8017C93C 0017989C EC 41 00 F2 */ fmuls f2, f1, f3 -/* 8017C940 001798A0 EC 07 00 32 */ fmuls f0, f7, f0 -/* 8017C944 001798A4 C8 21 11 10 */ lfd f1, 0x1110(r1) -/* 8017C948 001798A8 90 01 11 04 */ stw r0, 0x1104(r1) -/* 8017C94C 001798AC EC 81 28 28 */ fsubs f4, f1, f5 -/* 8017C950 001798B0 90 E1 11 00 */ stw r7, 0x1100(r1) -/* 8017C954 001798B4 EC 00 00 F2 */ fmuls f0, f0, f3 -/* 8017C958 001798B8 C8 21 11 00 */ lfd f1, 0x1100(r1) -/* 8017C95C 001798BC EC 44 10 FA */ fmadds f2, f4, f3, f2 -/* 8017C960 001798C0 D1 01 00 4C */ stfs f8, 0x4c(r1) -/* 8017C964 001798C4 EC 21 28 28 */ fsubs f1, f1, f5 -/* 8017C968 001798C8 D0 E1 00 50 */ stfs f7, 0x50(r1) -/* 8017C96C 001798CC EC 01 00 FA */ fmadds f0, f1, f3, f0 -/* 8017C970 001798D0 D0 C1 00 54 */ stfs f6, 0x54(r1) -/* 8017C974 001798D4 D0 41 00 4C */ stfs f2, 0x4c(r1) -/* 8017C978 001798D8 D0 01 00 50 */ stfs f0, 0x50(r1) -/* 8017C97C 001798DC 48 00 13 51 */ bl WithinOrbitScreenBox__7CPlayerCFRC9CVector3fQ27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneType -/* 8017C980 001798E0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017C984 001798E4 41 82 02 70 */ beq lbl_8017CBF4 -/* 8017C988 001798E8 C0 21 00 5C */ lfs f1, 0x5c(r1) -/* 8017C98C 001798EC 38 61 00 40 */ addi r3, r1, 0x40 -/* 8017C990 001798F0 C0 01 00 74 */ lfs f0, 0x74(r1) -/* 8017C994 001798F4 C0 61 00 60 */ lfs f3, 0x60(r1) -/* 8017C998 001798F8 C0 41 00 78 */ lfs f2, 0x78(r1) -/* 8017C99C 001798FC EC 81 00 28 */ fsubs f4, f1, f0 -/* 8017C9A0 00179900 C0 21 00 58 */ lfs f1, 0x58(r1) -/* 8017C9A4 00179904 C0 01 00 70 */ lfs f0, 0x70(r1) -/* 8017C9A8 00179908 EC 43 10 28 */ fsubs f2, f3, f2 -/* 8017C9AC 0017990C D0 81 00 44 */ stfs f4, 0x44(r1) -/* 8017C9B0 00179910 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8017C9B4 00179914 D0 41 00 48 */ stfs f2, 0x48(r1) -/* 8017C9B8 00179918 D0 01 00 40 */ stfs f0, 0x40(r1) -/* 8017C9BC 0017991C 48 19 7E FD */ bl Magnitude__9CVector3fCFv -/* 8017C9C0 00179920 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017C9C4 00179924 FF 60 08 90 */ fmr f27, f1 -/* 8017C9C8 00179928 C0 03 02 34 */ lfs f0, 0x234(r3) -/* 8017C9CC 0017992C FC 1B 00 40 */ fcmpo cr0, f27, f0 -/* 8017C9D0 00179930 4C 40 13 82 */ cror 2, 0, 2 -/* 8017C9D4 00179934 40 82 02 20 */ bne lbl_8017CBF4 -/* 8017C9D8 00179938 EC 1F D8 28 */ fsubs f0, f31, f27 -/* 8017C9DC 0017993C C0 23 02 4C */ lfs f1, 0x24c(r3) -/* 8017C9E0 00179940 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 8017C9E4 00179944 40 81 00 FC */ ble lbl_8017CAE0 -/* 8017C9E8 00179948 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017C9EC 0017994C 38 60 00 00 */ li r3, 0 -/* 8017C9F0 00179950 90 61 08 E4 */ stw r3, 0x8e4(r1) -/* 8017C9F4 00179954 38 61 00 40 */ addi r3, r1, 0x40 -/* 8017C9F8 00179958 B0 01 00 18 */ sth r0, 0x18(r1) -/* 8017C9FC 0017995C 48 19 7E FD */ bl Normalize__9CVector3fFv -/* 8017CA00 00179960 FC 20 D8 90 */ fmr f1, f27 -/* 8017CA04 00179964 3C 80 80 47 */ lis r4, lbl_8046C8D8@ha -/* 8017CA08 00179968 7C 66 1B 78 */ mr r6, r3 -/* 8017CA0C 0017996C 7F E3 FB 78 */ mr r3, r31 -/* 8017CA10 00179970 38 E4 C8 D8 */ addi r7, r4, lbl_8046C8D8@l -/* 8017CA14 00179974 7E E8 BB 78 */ mr r8, r23 -/* 8017CA18 00179978 38 81 08 E4 */ addi r4, r1, 0x8e4 -/* 8017CA1C 0017997C 38 A1 00 70 */ addi r5, r1, 0x70 -/* 8017CA20 00179980 4B EC FC B9 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" -/* 8017CA24 00179984 38 61 00 40 */ addi r3, r1, 0x40 -/* 8017CA28 00179988 48 19 7E D1 */ bl Normalize__9CVector3fFv -/* 8017CA2C 0017998C FC 20 D8 90 */ fmr f1, f27 -/* 8017CA30 00179990 3C A0 80 47 */ lis r5, lbl_8046C8C0@ha -/* 8017CA34 00179994 7C 67 1B 78 */ mr r7, r3 -/* 8017CA38 00179998 7F E4 FB 78 */ mr r4, r31 -/* 8017CA3C 0017999C 39 05 C8 C0 */ addi r8, r5, lbl_8046C8C0@l -/* 8017CA40 001799A0 38 61 00 B0 */ addi r3, r1, 0xb0 -/* 8017CA44 001799A4 38 A1 00 18 */ addi r5, r1, 0x18 -/* 8017CA48 001799A8 38 C1 00 70 */ addi r6, r1, 0x70 -/* 8017CA4C 001799AC 39 21 08 E4 */ addi r9, r1, 0x8e4 -/* 8017CA50 001799B0 4B ED 05 75 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 8017CA54 001799B4 88 01 00 D0 */ lbz r0, 0xd0(r1) -/* 8017CA58 001799B8 28 00 00 00 */ cmplwi r0, 0 -/* 8017CA5C 001799BC 40 82 00 28 */ bne lbl_8017CA84 -/* 8017CA60 001799C0 C0 21 00 4C */ lfs f1, 0x4c(r1) -/* 8017CA64 001799C4 FF E0 D8 90 */ fmr f31, f27 -/* 8017CA68 001799C8 C0 01 00 50 */ lfs f0, 0x50(r1) -/* 8017CA6C 001799CC EC 21 E8 28 */ fsubs f1, f1, f29 -/* 8017CA70 001799D0 A3 37 00 08 */ lhz r25, 8(r23) -/* 8017CA74 001799D4 EC 00 E0 28 */ fsubs f0, f0, f28 -/* 8017CA78 001799D8 EC 21 00 72 */ fmuls f1, f1, f1 -/* 8017CA7C 001799DC EC 00 00 32 */ fmuls f0, f0, f0 -/* 8017CA80 001799E0 EF C1 00 2A */ fadds f30, f1, f0 -lbl_8017CA84: -/* 8017CA84 001799E4 80 A1 08 E4 */ lwz r5, 0x8e4(r1) -/* 8017CA88 001799E8 38 60 00 00 */ li r3, 0 -/* 8017CA8C 001799EC 2C 05 00 00 */ cmpwi r5, 0 -/* 8017CA90 001799F0 40 81 00 44 */ ble lbl_8017CAD4 -/* 8017CA94 001799F4 2C 05 00 08 */ cmpwi r5, 8 -/* 8017CA98 001799F8 38 85 FF F8 */ addi r4, r5, -8 -/* 8017CA9C 001799FC 40 81 00 20 */ ble lbl_8017CABC -/* 8017CAA0 00179A00 38 04 00 07 */ addi r0, r4, 7 -/* 8017CAA4 00179A04 54 00 E8 FE */ srwi r0, r0, 3 -/* 8017CAA8 00179A08 7C 09 03 A6 */ mtctr r0 -/* 8017CAAC 00179A0C 2C 04 00 00 */ cmpwi r4, 0 -/* 8017CAB0 00179A10 40 81 00 0C */ ble lbl_8017CABC -lbl_8017CAB4: -/* 8017CAB4 00179A14 38 63 00 08 */ addi r3, r3, 8 -/* 8017CAB8 00179A18 42 00 FF FC */ bdnz lbl_8017CAB4 -lbl_8017CABC: -/* 8017CABC 00179A1C 7C 03 28 50 */ subf r0, r3, r5 -/* 8017CAC0 00179A20 7C 09 03 A6 */ mtctr r0 -/* 8017CAC4 00179A24 7C 03 28 00 */ cmpw r3, r5 -/* 8017CAC8 00179A28 40 80 00 0C */ bge lbl_8017CAD4 -lbl_8017CACC: -/* 8017CACC 00179A2C 38 63 00 01 */ addi r3, r3, 1 -/* 8017CAD0 00179A30 42 00 FF FC */ bdnz lbl_8017CACC -lbl_8017CAD4: -/* 8017CAD4 00179A34 38 00 00 00 */ li r0, 0 -/* 8017CAD8 00179A38 90 01 08 E4 */ stw r0, 0x8e4(r1) -/* 8017CADC 00179A3C 48 00 01 18 */ b lbl_8017CBF4 -lbl_8017CAE0: -/* 8017CAE0 00179A40 EC 1B F8 28 */ fsubs f0, f27, f31 -/* 8017CAE4 00179A44 FC 00 02 10 */ fabs f0, f0 -/* 8017CAE8 00179A48 FC 00 00 18 */ frsp f0, f0 -/* 8017CAEC 00179A4C FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 8017CAF0 00179A50 40 80 01 04 */ bge lbl_8017CBF4 -/* 8017CAF4 00179A54 C0 21 00 4C */ lfs f1, 0x4c(r1) -/* 8017CAF8 00179A58 C0 01 00 50 */ lfs f0, 0x50(r1) -/* 8017CAFC 00179A5C EC 21 E8 28 */ fsubs f1, f1, f29 -/* 8017CB00 00179A60 EC 00 E0 28 */ fsubs f0, f0, f28 -/* 8017CB04 00179A64 EC 21 00 72 */ fmuls f1, f1, f1 -/* 8017CB08 00179A68 EC 00 00 32 */ fmuls f0, f0, f0 -/* 8017CB0C 00179A6C EF 41 00 2A */ fadds f26, f1, f0 -/* 8017CB10 00179A70 FC 1A F0 40 */ fcmpo cr0, f26, f30 -/* 8017CB14 00179A74 40 80 00 E0 */ bge lbl_8017CBF4 -/* 8017CB18 00179A78 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017CB1C 00179A7C 38 60 00 00 */ li r3, 0 -/* 8017CB20 00179A80 90 61 00 E0 */ stw r3, 0xe0(r1) -/* 8017CB24 00179A84 38 61 00 40 */ addi r3, r1, 0x40 -/* 8017CB28 00179A88 B0 01 00 14 */ sth r0, 0x14(r1) -/* 8017CB2C 00179A8C 48 19 7D CD */ bl Normalize__9CVector3fFv -/* 8017CB30 00179A90 FC 20 D8 90 */ fmr f1, f27 -/* 8017CB34 00179A94 3C 80 80 47 */ lis r4, lbl_8046C8D8@ha -/* 8017CB38 00179A98 7C 66 1B 78 */ mr r6, r3 -/* 8017CB3C 00179A9C 7F E3 FB 78 */ mr r3, r31 -/* 8017CB40 00179AA0 38 E4 C8 D8 */ addi r7, r4, lbl_8046C8D8@l -/* 8017CB44 00179AA4 7E E8 BB 78 */ mr r8, r23 -/* 8017CB48 00179AA8 38 81 00 E0 */ addi r4, r1, 0xe0 -/* 8017CB4C 00179AAC 38 A1 00 70 */ addi r5, r1, 0x70 -/* 8017CB50 00179AB0 4B EC FB 89 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" -/* 8017CB54 00179AB4 38 61 00 40 */ addi r3, r1, 0x40 -/* 8017CB58 00179AB8 48 19 7D A1 */ bl Normalize__9CVector3fFv -/* 8017CB5C 00179ABC FC 20 D8 90 */ fmr f1, f27 -/* 8017CB60 00179AC0 3C A0 80 47 */ lis r5, lbl_8046C8C0@ha -/* 8017CB64 00179AC4 7C 67 1B 78 */ mr r7, r3 -/* 8017CB68 00179AC8 7F E4 FB 78 */ mr r4, r31 -/* 8017CB6C 00179ACC 39 05 C8 C0 */ addi r8, r5, lbl_8046C8C0@l -/* 8017CB70 00179AD0 38 61 00 80 */ addi r3, r1, 0x80 -/* 8017CB74 00179AD4 38 A1 00 14 */ addi r5, r1, 0x14 -/* 8017CB78 00179AD8 38 C1 00 70 */ addi r6, r1, 0x70 -/* 8017CB7C 00179ADC 39 21 00 E0 */ addi r9, r1, 0xe0 -/* 8017CB80 00179AE0 4B ED 04 45 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 8017CB84 00179AE4 88 01 00 A0 */ lbz r0, 0xa0(r1) -/* 8017CB88 00179AE8 28 00 00 00 */ cmplwi r0, 0 -/* 8017CB8C 00179AEC 40 82 00 10 */ bne lbl_8017CB9C -/* 8017CB90 00179AF0 FF C0 D0 90 */ fmr f30, f26 -/* 8017CB94 00179AF4 A3 37 00 08 */ lhz r25, 8(r23) -/* 8017CB98 00179AF8 FF E0 D8 90 */ fmr f31, f27 -lbl_8017CB9C: -/* 8017CB9C 00179AFC 80 A1 00 E0 */ lwz r5, 0xe0(r1) -/* 8017CBA0 00179B00 38 60 00 00 */ li r3, 0 -/* 8017CBA4 00179B04 2C 05 00 00 */ cmpwi r5, 0 -/* 8017CBA8 00179B08 40 81 00 44 */ ble lbl_8017CBEC -/* 8017CBAC 00179B0C 2C 05 00 08 */ cmpwi r5, 8 -/* 8017CBB0 00179B10 38 85 FF F8 */ addi r4, r5, -8 -/* 8017CBB4 00179B14 40 81 00 20 */ ble lbl_8017CBD4 -/* 8017CBB8 00179B18 38 04 00 07 */ addi r0, r4, 7 -/* 8017CBBC 00179B1C 54 00 E8 FE */ srwi r0, r0, 3 -/* 8017CBC0 00179B20 7C 09 03 A6 */ mtctr r0 -/* 8017CBC4 00179B24 2C 04 00 00 */ cmpwi r4, 0 -/* 8017CBC8 00179B28 40 81 00 0C */ ble lbl_8017CBD4 -lbl_8017CBCC: -/* 8017CBCC 00179B2C 38 63 00 08 */ addi r3, r3, 8 -/* 8017CBD0 00179B30 42 00 FF FC */ bdnz lbl_8017CBCC -lbl_8017CBD4: -/* 8017CBD4 00179B34 7C 03 28 50 */ subf r0, r3, r5 -/* 8017CBD8 00179B38 7C 09 03 A6 */ mtctr r0 -/* 8017CBDC 00179B3C 7C 03 28 00 */ cmpw r3, r5 -/* 8017CBE0 00179B40 40 80 00 0C */ bge lbl_8017CBEC -lbl_8017CBE4: -/* 8017CBE4 00179B44 38 63 00 01 */ addi r3, r3, 1 -/* 8017CBE8 00179B48 42 00 FF FC */ bdnz lbl_8017CBE4 -lbl_8017CBEC: -/* 8017CBEC 00179B4C 38 00 00 00 */ li r0, 0 -/* 8017CBF0 00179B50 90 01 00 E0 */ stw r0, 0xe0(r1) -lbl_8017CBF4: -/* 8017CBF4 00179B54 3B 18 00 02 */ addi r24, r24, 2 -lbl_8017CBF8: -/* 8017CBF8 00179B58 80 1C 00 00 */ lwz r0, 0(r28) -/* 8017CBFC 00179B5C 54 00 08 3C */ slwi r0, r0, 1 -/* 8017CC00 00179B60 7C 7C 02 14 */ add r3, r28, r0 -/* 8017CC04 00179B64 38 03 00 04 */ addi r0, r3, 4 -/* 8017CC08 00179B68 7C 18 00 40 */ cmplw r24, r0 -/* 8017CC0C 00179B6C 40 82 FC 38 */ bne lbl_8017C844 -/* 8017CC10 00179B70 B3 35 00 00 */ sth r25, 0(r21) -/* 8017CC14 00179B74 38 00 11 A8 */ li r0, 0x11a8 -/* 8017CC18 00179B78 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 -/* 8017CC1C 00179B7C CB E1 11 A0 */ lfd f31, 0x11a0(r1) -/* 8017CC20 00179B80 38 00 11 98 */ li r0, 0x1198 -/* 8017CC24 00179B84 13 C1 00 0C */ psq_lx f30, r1, r0, 0, qr0 -/* 8017CC28 00179B88 CB C1 11 90 */ lfd f30, 0x1190(r1) -/* 8017CC2C 00179B8C 38 00 11 88 */ li r0, 0x1188 -/* 8017CC30 00179B90 13 A1 00 0C */ psq_lx f29, r1, r0, 0, qr0 -/* 8017CC34 00179B94 CB A1 11 80 */ lfd f29, 0x1180(r1) -/* 8017CC38 00179B98 38 00 11 78 */ li r0, 0x1178 -/* 8017CC3C 00179B9C 13 81 00 0C */ psq_lx f28, r1, r0, 0, qr0 -/* 8017CC40 00179BA0 CB 81 11 70 */ lfd f28, 0x1170(r1) -/* 8017CC44 00179BA4 38 00 11 68 */ li r0, 0x1168 -/* 8017CC48 00179BA8 13 61 00 0C */ psq_lx f27, r1, r0, 0, qr0 -/* 8017CC4C 00179BAC CB 61 11 60 */ lfd f27, 0x1160(r1) -/* 8017CC50 00179BB0 38 00 11 58 */ li r0, 0x1158 -/* 8017CC54 00179BB4 13 41 00 0C */ psq_lx f26, r1, r0, 0, qr0 -/* 8017CC58 00179BB8 CB 41 11 50 */ lfd f26, 0x1150(r1) -/* 8017CC5C 00179BBC BA A1 11 24 */ lmw r21, 0x1124(r1) -/* 8017CC60 00179BC0 80 01 11 B4 */ lwz r0, 0x11b4(r1) -/* 8017CC64 00179BC4 7C 08 03 A6 */ mtlr r0 -/* 8017CC68 00179BC8 38 21 11 B0 */ addi r1, r1, 0x11b0 -/* 8017CC6C 00179BCC 4E 80 00 20 */ blr - -.global FindOrbitTargetId__7CPlayerFR13CStateManager -FindOrbitTargetId__7CPlayerFR13CStateManager: -/* 8017CC70 00179BD0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8017CC74 00179BD4 7C 08 02 A6 */ mflr r0 -/* 8017CC78 00179BD8 7C A7 2B 78 */ mr r7, r5 -/* 8017CC7C 00179BDC 38 A4 03 54 */ addi r5, r4, 0x354 -/* 8017CC80 00179BE0 90 01 00 14 */ stw r0, 0x14(r1) -/* 8017CC84 00179BE4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8017CC88 00179BE8 7C 7F 1B 78 */ mr r31, r3 -/* 8017CC8C 00179BEC 80 C4 03 30 */ lwz r6, 0x330(r4) -/* 8017CC90 00179BF0 48 00 03 25 */ bl "FindBestOrbitableObject__7CPlayerCFRCQ24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Q27CPlayer15EPlayerZoneInfoR13CStateManager" -/* 8017CC94 00179BF4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8017CC98 00179BF8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8017CC9C 00179BFC 7C 08 03 A6 */ mtlr r0 -/* 8017CCA0 00179C00 38 21 00 10 */ addi r1, r1, 0x10 -/* 8017CCA4 00179C04 4E 80 00 20 */ blr - -.global UpdateOrbitableObjects__7CPlayerFR13CStateManager -UpdateOrbitableObjects__7CPlayerFR13CStateManager: -/* 8017CCA8 00179C08 94 21 F7 30 */ stwu r1, -0x8d0(r1) -/* 8017CCAC 00179C0C 7C 08 02 A6 */ mflr r0 -/* 8017CCB0 00179C10 90 01 08 D4 */ stw r0, 0x8d4(r1) -/* 8017CCB4 00179C14 93 E1 08 CC */ stw r31, 0x8cc(r1) -/* 8017CCB8 00179C18 7C 9F 23 78 */ mr r31, r4 -/* 8017CCBC 00179C1C 93 C1 08 C8 */ stw r30, 0x8c8(r1) -/* 8017CCC0 00179C20 7C 7E 1B 78 */ mr r30, r3 -/* 8017CCC4 00179C24 93 A1 08 C4 */ stw r29, 0x8c4(r1) -/* 8017CCC8 00179C28 80 03 03 58 */ lwz r0, 0x358(r3) -/* 8017CCCC 00179C2C 80 63 03 60 */ lwz r3, 0x360(r3) -/* 8017CCD0 00179C30 54 00 08 3C */ slwi r0, r0, 1 -/* 8017CCD4 00179C34 7C 03 02 14 */ add r0, r3, r0 -/* 8017CCD8 00179C38 90 61 00 2C */ stw r3, 0x2c(r1) -/* 8017CCDC 00179C3C 90 01 00 34 */ stw r0, 0x34(r1) -/* 8017CCE0 00179C40 90 01 00 30 */ stw r0, 0x30(r1) -/* 8017CCE4 00179C44 90 61 00 28 */ stw r3, 0x28(r1) -/* 8017CCE8 00179C48 48 00 00 08 */ b lbl_8017CCF0 -lbl_8017CCEC: -/* 8017CCEC 00179C4C 38 63 00 02 */ addi r3, r3, 2 -lbl_8017CCF0: -/* 8017CCF0 00179C50 7C 03 00 40 */ cmplw r3, r0 -/* 8017CCF4 00179C54 40 82 FF F8 */ bne lbl_8017CCEC -/* 8017CCF8 00179C58 38 00 00 00 */ li r0, 0 -/* 8017CCFC 00179C5C 90 1E 03 58 */ stw r0, 0x358(r30) -/* 8017CD00 00179C60 80 1E 03 48 */ lwz r0, 0x348(r30) -/* 8017CD04 00179C64 80 7E 03 50 */ lwz r3, 0x350(r30) -/* 8017CD08 00179C68 54 00 08 3C */ slwi r0, r0, 1 -/* 8017CD0C 00179C6C 7C 03 02 14 */ add r0, r3, r0 -/* 8017CD10 00179C70 90 61 00 1C */ stw r3, 0x1c(r1) -/* 8017CD14 00179C74 90 01 00 24 */ stw r0, 0x24(r1) -/* 8017CD18 00179C78 90 01 00 20 */ stw r0, 0x20(r1) -/* 8017CD1C 00179C7C 90 61 00 18 */ stw r3, 0x18(r1) -/* 8017CD20 00179C80 48 00 00 08 */ b lbl_8017CD28 -lbl_8017CD24: -/* 8017CD24 00179C84 38 63 00 02 */ addi r3, r3, 2 -lbl_8017CD28: -/* 8017CD28 00179C88 7C 03 00 40 */ cmplw r3, r0 -/* 8017CD2C 00179C8C 40 82 FF F8 */ bne lbl_8017CD24 -/* 8017CD30 00179C90 38 00 00 00 */ li r0, 0 -/* 8017CD34 00179C94 90 1E 03 48 */ stw r0, 0x348(r30) -/* 8017CD38 00179C98 80 1E 03 68 */ lwz r0, 0x368(r30) -/* 8017CD3C 00179C9C 80 7E 03 70 */ lwz r3, 0x370(r30) -/* 8017CD40 00179CA0 54 00 08 3C */ slwi r0, r0, 1 -/* 8017CD44 00179CA4 7C 03 02 14 */ add r0, r3, r0 -/* 8017CD48 00179CA8 90 61 00 0C */ stw r3, 0xc(r1) -/* 8017CD4C 00179CAC 90 01 00 14 */ stw r0, 0x14(r1) -/* 8017CD50 00179CB0 90 01 00 10 */ stw r0, 0x10(r1) -/* 8017CD54 00179CB4 90 61 00 08 */ stw r3, 8(r1) -/* 8017CD58 00179CB8 48 00 00 08 */ b lbl_8017CD60 -lbl_8017CD5C: -/* 8017CD5C 00179CBC 38 63 00 02 */ addi r3, r3, 2 -lbl_8017CD60: -/* 8017CD60 00179CC0 7C 03 00 40 */ cmplw r3, r0 -/* 8017CD64 00179CC4 40 82 FF F8 */ bne lbl_8017CD5C -/* 8017CD68 00179CC8 38 00 00 00 */ li r0, 0 -/* 8017CD6C 00179CCC 7F C3 F3 78 */ mr r3, r30 -/* 8017CD70 00179CD0 90 1E 03 68 */ stw r0, 0x368(r30) -/* 8017CD74 00179CD4 7F E4 FB 78 */ mr r4, r31 -/* 8017CD78 00179CD8 48 00 11 5D */ bl CheckOrbitDisableSourceList__7CPlayerFRC13CStateManager -/* 8017CD7C 00179CDC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017CD80 00179CE0 40 82 02 18 */ bne lbl_8017CF98 -/* 8017CD84 00179CE4 7F C3 F3 78 */ mr r3, r30 -/* 8017CD88 00179CE8 7F E4 FB 78 */ mr r4, r31 -/* 8017CD8C 00179CEC 4B E9 C3 41 */ bl GetFirstPersonCameraTransform__7CPlayerCFR13CStateManager -/* 8017CD90 00179CF0 7C 60 1B 78 */ mr r0, r3 -/* 8017CD94 00179CF4 7F C3 F3 78 */ mr r3, r30 -/* 8017CD98 00179CF8 7C 1D 03 78 */ mr r29, r0 -/* 8017CD9C 00179CFC 7F E4 FB 78 */ mr r4, r31 -/* 8017CDA0 00179D00 48 00 22 B9 */ bl GetOrbitMaxTargetDistance__7CPlayerCFRC13CStateManager -/* 8017CDA4 00179D04 88 1E 09 C6 */ lbz r0, 0x9c6(r30) -/* 8017CDA8 00179D08 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8017CDAC 00179D0C 41 82 00 0C */ beq lbl_8017CDB8 -/* 8017CDB0 00179D10 C0 02 A2 A0 */ lfs f0, lbl_805ABFC0@sda21(r2) -/* 8017CDB4 00179D14 EC 21 00 32 */ fmuls f1, f1, f0 -lbl_8017CDB8: -/* 8017CDB8 00179D18 80 CD A1 18 */ lwz r6, gpTweakPlayer@sda21(r13) -/* 8017CDBC 00179D1C FC 60 08 90 */ fmr f3, f1 -/* 8017CDC0 00179D20 7F A5 EB 78 */ mr r5, r29 -/* 8017CDC4 00179D24 38 61 00 68 */ addi r3, r1, 0x68 -/* 8017CDC8 00179D28 C0 46 01 DC */ lfs f2, 0x1dc(r6) -/* 8017CDCC 00179D2C 38 80 00 01 */ li r4, 1 -/* 8017CDD0 00179D30 C0 26 01 D8 */ lfs f1, 0x1d8(r6) -/* 8017CDD4 00179D34 48 00 2B 9D */ bl BuildNearListBox__FbRC12CTransform4ffff -/* 8017CDD8 00179D38 C0 A1 00 68 */ lfs f5, 0x68(r1) -/* 8017CDDC 00179D3C 3C 60 80 47 */ lis r3, lbl_8046C8F0@ha -/* 8017CDE0 00179D40 C0 81 00 6C */ lfs f4, 0x6c(r1) -/* 8017CDE4 00179D44 39 63 C8 F0 */ addi r11, r3, lbl_8046C8F0@l -/* 8017CDE8 00179D48 C0 61 00 70 */ lfs f3, 0x70(r1) -/* 8017CDEC 00179D4C 38 60 00 00 */ li r3, 0 -/* 8017CDF0 00179D50 C0 41 00 74 */ lfs f2, 0x74(r1) -/* 8017CDF4 00179D54 38 80 00 01 */ li r4, 1 -/* 8017CDF8 00179D58 C0 21 00 78 */ lfs f1, 0x78(r1) -/* 8017CDFC 00179D5C C0 01 00 7C */ lfs f0, 0x7c(r1) -/* 8017CE00 00179D60 D0 A1 00 98 */ stfs f5, 0x98(r1) -/* 8017CE04 00179D64 80 AD 8E 6C */ lwz r5, lbl_805A7A2C@sda21(r13) -/* 8017CE08 00179D68 D0 81 00 9C */ stfs f4, 0x9c(r1) -/* 8017CE0C 00179D6C 81 41 00 98 */ lwz r10, 0x98(r1) -/* 8017CE10 00179D70 D0 61 00 A0 */ stfs f3, 0xa0(r1) -/* 8017CE14 00179D74 81 21 00 9C */ lwz r9, 0x9c(r1) -/* 8017CE18 00179D78 D0 41 00 A4 */ stfs f2, 0xa4(r1) -/* 8017CE1C 00179D7C 81 01 00 A0 */ lwz r8, 0xa0(r1) -/* 8017CE20 00179D80 D0 21 00 A8 */ stfs f1, 0xa8(r1) -/* 8017CE24 00179D84 80 E1 00 A4 */ lwz r7, 0xa4(r1) -/* 8017CE28 00179D88 D0 01 00 AC */ stfs f0, 0xac(r1) -/* 8017CE2C 00179D8C 80 C1 00 A8 */ lwz r6, 0xa8(r1) -/* 8017CE30 00179D90 80 01 00 AC */ lwz r0, 0xac(r1) -/* 8017CE34 00179D94 91 4B 00 00 */ stw r10, 0(r11) -/* 8017CE38 00179D98 91 2B 00 04 */ stw r9, 4(r11) -/* 8017CE3C 00179D9C 91 0B 00 08 */ stw r8, 8(r11) -/* 8017CE40 00179DA0 90 EB 00 0C */ stw r7, 0xc(r11) -/* 8017CE44 00179DA4 90 CB 00 10 */ stw r6, 0x10(r11) -/* 8017CE48 00179DA8 90 0B 00 14 */ stw r0, 0x14(r11) -/* 8017CE4C 00179DAC 48 20 D0 A9 */ bl __shl2i -/* 8017CE50 00179DB0 38 A0 00 01 */ li r5, 1 -/* 8017CE54 00179DB4 38 00 00 00 */ li r0, 0 -/* 8017CE58 00179DB8 90 81 00 84 */ stw r4, 0x84(r1) -/* 8017CE5C 00179DBC 90 61 00 80 */ stw r3, 0x80(r1) -/* 8017CE60 00179DC0 90 01 00 8C */ stw r0, 0x8c(r1) -/* 8017CE64 00179DC4 90 01 00 88 */ stw r0, 0x88(r1) -/* 8017CE68 00179DC8 90 A1 00 90 */ stw r5, 0x90(r1) -/* 8017CE6C 00179DCC 80 7F 08 B8 */ lwz r3, 0x8b8(r31) -/* 8017CE70 00179DD0 90 A1 00 60 */ stw r5, 0x60(r1) -/* 8017CE74 00179DD4 80 63 00 00 */ lwz r3, 0(r3) -/* 8017CE78 00179DD8 80 03 00 14 */ lwz r0, 0x14(r3) -/* 8017CE7C 00179DDC 2C 00 00 02 */ cmpwi r0, 2 -/* 8017CE80 00179DE0 40 82 00 44 */ bne lbl_8017CEC4 -/* 8017CE84 00179DE4 80 AD 8E 70 */ lwz r5, lbl_805A7A30@sda21(r13) -/* 8017CE88 00179DE8 38 60 00 00 */ li r3, 0 -/* 8017CE8C 00179DEC 38 80 00 01 */ li r4, 1 -/* 8017CE90 00179DF0 48 20 D0 65 */ bl __shl2i -/* 8017CE94 00179DF4 38 A0 00 00 */ li r5, 0 -/* 8017CE98 00179DF8 38 00 00 01 */ li r0, 1 -/* 8017CE9C 00179DFC 90 81 00 3C */ stw r4, 0x3c(r1) -/* 8017CEA0 00179E00 90 61 00 38 */ stw r3, 0x38(r1) -/* 8017CEA4 00179E04 C8 21 00 38 */ lfd f1, 0x38(r1) -/* 8017CEA8 00179E08 90 A1 00 44 */ stw r5, 0x44(r1) -/* 8017CEAC 00179E0C 90 A1 00 40 */ stw r5, 0x40(r1) -/* 8017CEB0 00179E10 C8 01 00 40 */ lfd f0, 0x40(r1) -/* 8017CEB4 00179E14 90 01 00 48 */ stw r0, 0x48(r1) -/* 8017CEB8 00179E18 D8 21 00 80 */ stfd f1, 0x80(r1) -/* 8017CEBC 00179E1C D8 01 00 88 */ stfd f0, 0x88(r1) -/* 8017CEC0 00179E20 90 01 00 90 */ stw r0, 0x90(r1) -lbl_8017CEC4: -/* 8017CEC4 00179E24 38 00 00 00 */ li r0, 0 -/* 8017CEC8 00179E28 7F E3 FB 78 */ mr r3, r31 -/* 8017CECC 00179E2C 90 01 00 B0 */ stw r0, 0xb0(r1) -/* 8017CED0 00179E30 38 81 00 B0 */ addi r4, r1, 0xb0 -/* 8017CED4 00179E34 38 A1 00 98 */ addi r5, r1, 0x98 -/* 8017CED8 00179E38 38 C1 00 80 */ addi r6, r1, 0x80 -/* 8017CEDC 00179E3C 38 E0 00 00 */ li r7, 0 -/* 8017CEE0 00179E40 4B EC F8 41 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" -/* 8017CEE4 00179E44 80 DE 03 30 */ lwz r6, 0x330(r30) -/* 8017CEE8 00179E48 7F C3 F3 78 */ mr r3, r30 -/* 8017CEEC 00179E4C 7F E8 FB 78 */ mr r8, r31 -/* 8017CEF0 00179E50 38 81 00 B0 */ addi r4, r1, 0xb0 -/* 8017CEF4 00179E54 38 BE 03 44 */ addi r5, r30, 0x344 -/* 8017CEF8 00179E58 38 E0 FF FF */ li r7, -1 -/* 8017CEFC 00179E5C 39 20 00 01 */ li r9, 1 -/* 8017CF00 00179E60 48 00 0A A5 */ bl "FindOrbitableObjects__7CPlayerCFRCQ24rstl32reserved_vector<9TUniqueId,1024>RQ24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Q27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneTypeR13CStateManagerb" -/* 8017CF04 00179E64 80 DE 03 30 */ lwz r6, 0x330(r30) -/* 8017CF08 00179E68 7F C3 F3 78 */ mr r3, r30 -/* 8017CF0C 00179E6C 80 FE 03 34 */ lwz r7, 0x334(r30) -/* 8017CF10 00179E70 7F E8 FB 78 */ mr r8, r31 -/* 8017CF14 00179E74 38 81 00 B0 */ addi r4, r1, 0xb0 -/* 8017CF18 00179E78 38 BE 03 54 */ addi r5, r30, 0x354 -/* 8017CF1C 00179E7C 39 20 00 01 */ li r9, 1 -/* 8017CF20 00179E80 48 00 0A 85 */ bl "FindOrbitableObjects__7CPlayerCFRCQ24rstl32reserved_vector<9TUniqueId,1024>RQ24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Q27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneTypeR13CStateManagerb" -/* 8017CF24 00179E84 80 DE 03 30 */ lwz r6, 0x330(r30) -/* 8017CF28 00179E88 7F C3 F3 78 */ mr r3, r30 -/* 8017CF2C 00179E8C 80 FE 03 34 */ lwz r7, 0x334(r30) -/* 8017CF30 00179E90 7F E8 FB 78 */ mr r8, r31 -/* 8017CF34 00179E94 38 81 00 B0 */ addi r4, r1, 0xb0 -/* 8017CF38 00179E98 38 BE 03 64 */ addi r5, r30, 0x364 -/* 8017CF3C 00179E9C 39 20 00 00 */ li r9, 0 -/* 8017CF40 00179EA0 48 00 0A 65 */ bl "FindOrbitableObjects__7CPlayerCFRCQ24rstl32reserved_vector<9TUniqueId,1024>RQ24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Q27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneTypeR13CStateManagerb" -/* 8017CF44 00179EA4 80 A1 00 B0 */ lwz r5, 0xb0(r1) -/* 8017CF48 00179EA8 38 60 00 00 */ li r3, 0 -/* 8017CF4C 00179EAC 2C 05 00 00 */ cmpwi r5, 0 -/* 8017CF50 00179EB0 40 81 00 40 */ ble lbl_8017CF90 -/* 8017CF54 00179EB4 2C 05 00 08 */ cmpwi r5, 8 -/* 8017CF58 00179EB8 38 85 FF F8 */ addi r4, r5, -8 -/* 8017CF5C 00179EBC 40 81 00 20 */ ble lbl_8017CF7C -/* 8017CF60 00179EC0 38 04 00 07 */ addi r0, r4, 7 -/* 8017CF64 00179EC4 54 00 E8 FE */ srwi r0, r0, 3 -/* 8017CF68 00179EC8 7C 09 03 A6 */ mtctr r0 -/* 8017CF6C 00179ECC 2C 04 00 00 */ cmpwi r4, 0 -/* 8017CF70 00179ED0 40 81 00 0C */ ble lbl_8017CF7C -lbl_8017CF74: -/* 8017CF74 00179ED4 38 63 00 08 */ addi r3, r3, 8 -/* 8017CF78 00179ED8 42 00 FF FC */ bdnz lbl_8017CF74 -lbl_8017CF7C: -/* 8017CF7C 00179EDC 7C 03 28 50 */ subf r0, r3, r5 -/* 8017CF80 00179EE0 7C 09 03 A6 */ mtctr r0 -/* 8017CF84 00179EE4 7C 03 28 00 */ cmpw r3, r5 -/* 8017CF88 00179EE8 40 80 00 08 */ bge lbl_8017CF90 -lbl_8017CF8C: -/* 8017CF8C 00179EEC 42 00 00 00 */ bdnz lbl_8017CF8C -lbl_8017CF90: -/* 8017CF90 00179EF0 38 00 00 00 */ li r0, 0 -/* 8017CF94 00179EF4 90 01 00 B0 */ stw r0, 0xb0(r1) -lbl_8017CF98: -/* 8017CF98 00179EF8 80 01 08 D4 */ lwz r0, 0x8d4(r1) -/* 8017CF9C 00179EFC 83 E1 08 CC */ lwz r31, 0x8cc(r1) -/* 8017CFA0 00179F00 83 C1 08 C8 */ lwz r30, 0x8c8(r1) -/* 8017CFA4 00179F04 83 A1 08 C4 */ lwz r29, 0x8c4(r1) -/* 8017CFA8 00179F08 7C 08 03 A6 */ mtlr r0 -/* 8017CFAC 00179F0C 38 21 08 D0 */ addi r1, r1, 0x8d0 -/* 8017CFB0 00179F10 4E 80 00 20 */ blr - -.global "FindBestOrbitableObject__7CPlayerCFRCQ24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Q27CPlayer15EPlayerZoneInfoR13CStateManager" -"FindBestOrbitableObject__7CPlayerCFRCQ24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Q27CPlayer15EPlayerZoneInfoR13CStateManager": -/* 8017CFB4 00179F14 94 21 E5 90 */ stwu r1, -0x1a70(r1) -/* 8017CFB8 00179F18 7C 08 02 A6 */ mflr r0 -/* 8017CFBC 00179F1C 90 01 1A 74 */ stw r0, 0x1a74(r1) -/* 8017CFC0 00179F20 38 00 1A 68 */ li r0, 0x1a68 -/* 8017CFC4 00179F24 DB E1 1A 60 */ stfd f31, 0x1a60(r1) -/* 8017CFC8 00179F28 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 -/* 8017CFCC 00179F2C 38 00 1A 58 */ li r0, 0x1a58 -/* 8017CFD0 00179F30 DB C1 1A 50 */ stfd f30, 0x1a50(r1) -/* 8017CFD4 00179F34 13 C1 00 0E */ psq_stx f30, r1, r0, 0, qr0 -/* 8017CFD8 00179F38 38 00 1A 48 */ li r0, 0x1a48 -/* 8017CFDC 00179F3C DB A1 1A 40 */ stfd f29, 0x1a40(r1) -/* 8017CFE0 00179F40 13 A1 00 0E */ psq_stx f29, r1, r0, 0, qr0 -/* 8017CFE4 00179F44 38 00 1A 38 */ li r0, 0x1a38 -/* 8017CFE8 00179F48 DB 81 1A 30 */ stfd f28, 0x1a30(r1) -/* 8017CFEC 00179F4C 13 81 00 0E */ psq_stx f28, r1, r0, 0, qr0 -/* 8017CFF0 00179F50 38 00 1A 28 */ li r0, 0x1a28 -/* 8017CFF4 00179F54 DB 61 1A 20 */ stfd f27, 0x1a20(r1) -/* 8017CFF8 00179F58 13 61 00 0E */ psq_stx f27, r1, r0, 0, qr0 -/* 8017CFFC 00179F5C 38 00 1A 18 */ li r0, 0x1a18 -/* 8017D000 00179F60 DB 41 1A 10 */ stfd f26, 0x1a10(r1) -/* 8017D004 00179F64 13 41 00 0E */ psq_stx f26, r1, r0, 0, qr0 -/* 8017D008 00179F68 38 00 1A 08 */ li r0, 0x1a08 -/* 8017D00C 00179F6C DB 21 1A 00 */ stfd f25, 0x1a00(r1) -/* 8017D010 00179F70 13 21 00 0E */ psq_stx f25, r1, r0, 0, qr0 -/* 8017D014 00179F74 38 00 19 F8 */ li r0, 0x19f8 -/* 8017D018 00179F78 DB 01 19 F0 */ stfd f24, 0x19f0(r1) -/* 8017D01C 00179F7C 13 01 00 0E */ psq_stx f24, r1, r0, 0, qr0 -/* 8017D020 00179F80 38 00 19 E8 */ li r0, 0x19e8 -/* 8017D024 00179F84 DA E1 19 E0 */ stfd f23, 0x19e0(r1) -/* 8017D028 00179F88 12 E1 00 0E */ psq_stx f23, r1, r0, 0, qr0 -/* 8017D02C 00179F8C 38 00 19 D8 */ li r0, 0x19d8 -/* 8017D030 00179F90 DA C1 19 D0 */ stfd f22, 0x19d0(r1) -/* 8017D034 00179F94 12 C1 00 0E */ psq_stx f22, r1, r0, 0, qr0 -/* 8017D038 00179F98 BE A1 19 A4 */ stmw r21, 0x19a4(r1) -/* 8017D03C 00179F9C 7C 76 1B 78 */ mr r22, r3 -/* 8017D040 00179FA0 7C 9C 23 78 */ mr r28, r4 -/* 8017D044 00179FA4 7C B9 2B 78 */ mr r25, r5 -/* 8017D048 00179FA8 7C D5 33 78 */ mr r21, r6 -/* 8017D04C 00179FAC 7C FD 3B 78 */ mr r29, r7 -/* 8017D050 00179FB0 38 61 00 7C */ addi r3, r1, 0x7c -/* 8017D054 00179FB4 48 10 7D 29 */ bl GetEyePosition__7CPlayerCFv -/* 8017D058 00179FB8 C0 61 00 7C */ lfs f3, 0x7c(r1) -/* 8017D05C 00179FBC 38 61 00 AC */ addi r3, r1, 0xac -/* 8017D060 00179FC0 C0 41 00 80 */ lfs f2, 0x80(r1) -/* 8017D064 00179FC4 C0 21 00 84 */ lfs f1, 0x84(r1) -/* 8017D068 00179FC8 C0 BC 00 58 */ lfs f5, 0x58(r28) -/* 8017D06C 00179FCC C0 9C 00 48 */ lfs f4, 0x48(r28) -/* 8017D070 00179FD0 C0 1C 00 38 */ lfs f0, 0x38(r28) -/* 8017D074 00179FD4 D0 61 00 B8 */ stfs f3, 0xb8(r1) -/* 8017D078 00179FD8 D0 41 00 BC */ stfs f2, 0xbc(r1) -/* 8017D07C 00179FDC D0 21 00 C0 */ stfs f1, 0xc0(r1) -/* 8017D080 00179FE0 D0 01 00 AC */ stfs f0, 0xac(r1) -/* 8017D084 00179FE4 D0 81 00 B0 */ stfs f4, 0xb0(r1) -/* 8017D088 00179FE8 D0 A1 00 B4 */ stfs f5, 0xb4(r1) -/* 8017D08C 00179FEC 48 19 78 6D */ bl Normalize__9CVector3fFv -/* 8017D090 00179FF0 3C 60 80 3F */ lis r3, lbl_803ED910@ha -/* 8017D094 00179FF4 3C E0 43 30 */ lis r7, 0x4330 -/* 8017D098 00179FF8 38 63 D9 10 */ addi r3, r3, lbl_803ED910@l -/* 8017D09C 00179FFC C3 A2 A2 80 */ lfs f29, lbl_805ABFA0@sda21(r2) -/* 8017D0A0 0017A000 80 A3 00 08 */ lwz r5, 8(r3) -/* 8017D0A4 0017A004 56 A6 10 3A */ slwi r6, r21, 2 -/* 8017D0A8 0017A008 81 0D A1 18 */ lwz r8, gpTweakPlayer@sda21(r13) -/* 8017D0AC 0017A00C FF 80 E8 90 */ fmr f28, f29 -/* 8017D0B0 0017A010 80 83 00 0C */ lwz r4, 0xc(r3) -/* 8017D0B4 0017A014 54 A0 0F FE */ srwi r0, r5, 0x1f -/* 8017D0B8 0017A018 7C C8 32 14 */ add r6, r8, r6 -/* 8017D0BC 0017A01C 80 7D 08 70 */ lwz r3, 0x870(r29) -/* 8017D0C0 0017A020 7C A0 2A 14 */ add r5, r0, r5 -/* 8017D0C4 0017A024 54 80 0F FE */ srwi r0, r4, 0x1f -/* 8017D0C8 0017A028 81 06 01 C8 */ lwz r8, 0x1c8(r6) -/* 8017D0CC 0017A02C 7C A9 0E 70 */ srawi r9, r5, 1 -/* 8017D0D0 0017A030 80 A6 01 D0 */ lwz r5, 0x1d0(r6) -/* 8017D0D4 0017A034 6D 26 80 00 */ xoris r6, r9, 0x8000 -/* 8017D0D8 0017A038 7C 00 22 14 */ add r0, r0, r4 -/* 8017D0DC 0017A03C 7C 00 0E 70 */ srawi r0, r0, 1 -/* 8017D0E0 0017A040 6D 08 80 00 */ xoris r8, r8, 0x8000 -/* 8017D0E4 0017A044 6C 00 80 00 */ xoris r0, r0, 0x8000 -/* 8017D0E8 0017A048 6C A4 80 00 */ xoris r4, r5, 0x8000 -/* 8017D0EC 0017A04C 91 01 19 6C */ stw r8, 0x196c(r1) -/* 8017D0F0 0017A050 3B E1 09 60 */ addi r31, r1, 0x960 -/* 8017D0F4 0017A054 C8 62 A2 98 */ lfd f3, lbl_805ABFB8@sda21(r2) -/* 8017D0F8 0017A058 3B C1 01 5C */ addi r30, r1, 0x15c -/* 8017D0FC 0017A05C 90 E1 19 68 */ stw r7, 0x1968(r1) -/* 8017D100 0017A060 A3 0D A3 8C */ lhz r24, lbl_805A8F4C@sda21(r13) -/* 8017D104 0017A064 C8 01 19 68 */ lfd f0, 0x1968(r1) -/* 8017D108 0017A068 90 C1 19 74 */ stw r6, 0x1974(r1) -/* 8017D10C 0017A06C EC 40 18 28 */ fsubs f2, f0, f3 -/* 8017D110 0017A070 82 E3 00 7C */ lwz r23, 0x7c(r3) -/* 8017D114 0017A074 90 E1 19 70 */ stw r7, 0x1970(r1) -/* 8017D118 0017A078 83 59 00 0C */ lwz r26, 0xc(r25) -/* 8017D11C 0017A07C C8 01 19 70 */ lfd f0, 0x1970(r1) -/* 8017D120 0017A080 90 81 19 84 */ stw r4, 0x1984(r1) -/* 8017D124 0017A084 EC 20 18 28 */ fsubs f1, f0, f3 -/* 8017D128 0017A088 90 E1 19 80 */ stw r7, 0x1980(r1) -/* 8017D12C 0017A08C C8 01 19 80 */ lfd f0, 0x1980(r1) -/* 8017D130 0017A090 EF 62 08 28 */ fsubs f27, f2, f1 -/* 8017D134 0017A094 90 01 19 8C */ stw r0, 0x198c(r1) -/* 8017D138 0017A098 EC 20 18 28 */ fsubs f1, f0, f3 -/* 8017D13C 0017A09C 90 E1 19 88 */ stw r7, 0x1988(r1) -/* 8017D140 0017A0A0 C8 01 19 88 */ lfd f0, 0x1988(r1) -/* 8017D144 0017A0A4 90 C1 19 7C */ stw r6, 0x197c(r1) -/* 8017D148 0017A0A8 EC 00 18 28 */ fsubs f0, f0, f3 -/* 8017D14C 0017A0AC 90 E1 19 78 */ stw r7, 0x1978(r1) -/* 8017D150 0017A0B0 C8 41 19 78 */ lfd f2, 0x1978(r1) -/* 8017D154 0017A0B4 EF 41 00 28 */ fsubs f26, f1, f0 -/* 8017D158 0017A0B8 90 01 19 94 */ stw r0, 0x1994(r1) -/* 8017D15C 0017A0BC EC 22 18 28 */ fsubs f1, f2, f3 -/* 8017D160 0017A0C0 90 E1 19 90 */ stw r7, 0x1990(r1) -/* 8017D164 0017A0C4 C8 01 19 90 */ lfd f0, 0x1990(r1) -/* 8017D168 0017A0C8 EF 7B 08 24 */ fdivs f27, f27, f1 -/* 8017D16C 0017A0CC EC 00 18 28 */ fsubs f0, f0, f3 -/* 8017D170 0017A0D0 EF 5A 00 24 */ fdivs f26, f26, f0 -/* 8017D174 0017A0D4 48 00 07 88 */ b lbl_8017D8FC -lbl_8017D178: -/* 8017D178 0017A0D8 A0 1A 00 00 */ lhz r0, 0(r26) -/* 8017D17C 0017A0DC 7F A3 EB 78 */ mr r3, r29 -/* 8017D180 0017A0E0 38 81 00 10 */ addi r4, r1, 0x10 -/* 8017D184 0017A0E4 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8017D188 0017A0E8 4B EC F4 1D */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017D18C 0017A0EC 7C 64 1B 78 */ mr r4, r3 -/* 8017D190 0017A0F0 38 61 00 38 */ addi r3, r1, 0x38 -/* 8017D194 0017A0F4 4B F3 2A FD */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8017D198 0017A0F8 83 63 00 04 */ lwz r27, 4(r3) -/* 8017D19C 0017A0FC 28 1B 00 00 */ cmplwi r27, 0 -/* 8017D1A0 0017A100 41 82 07 58 */ beq lbl_8017D8F8 -/* 8017D1A4 0017A104 7F 64 DB 78 */ mr r4, r27 -/* 8017D1A8 0017A108 7F A5 EB 78 */ mr r5, r29 -/* 8017D1AC 0017A10C 81 9B 00 00 */ lwz r12, 0(r27) -/* 8017D1B0 0017A110 38 61 00 70 */ addi r3, r1, 0x70 -/* 8017D1B4 0017A114 81 8C 00 48 */ lwz r12, 0x48(r12) -/* 8017D1B8 0017A118 7D 89 03 A6 */ mtctr r12 -/* 8017D1BC 0017A11C 4E 80 04 21 */ bctrl -/* 8017D1C0 0017A120 C0 A1 00 70 */ lfs f5, 0x70(r1) -/* 8017D1C4 0017A124 38 61 00 94 */ addi r3, r1, 0x94 -/* 8017D1C8 0017A128 C0 81 00 74 */ lfs f4, 0x74(r1) -/* 8017D1CC 0017A12C C0 61 00 78 */ lfs f3, 0x78(r1) -/* 8017D1D0 0017A130 C0 41 00 BC */ lfs f2, 0xbc(r1) -/* 8017D1D4 0017A134 C0 21 00 C0 */ lfs f1, 0xc0(r1) -/* 8017D1D8 0017A138 C0 01 00 B8 */ lfs f0, 0xb8(r1) -/* 8017D1DC 0017A13C EC 44 10 28 */ fsubs f2, f4, f2 -/* 8017D1E0 0017A140 EC 23 08 28 */ fsubs f1, f3, f1 -/* 8017D1E4 0017A144 D0 A1 00 A0 */ stfs f5, 0xa0(r1) -/* 8017D1E8 0017A148 EC 05 00 28 */ fsubs f0, f5, f0 -/* 8017D1EC 0017A14C D0 81 00 A4 */ stfs f4, 0xa4(r1) -/* 8017D1F0 0017A150 D0 61 00 A8 */ stfs f3, 0xa8(r1) -/* 8017D1F4 0017A154 D0 01 00 94 */ stfs f0, 0x94(r1) -/* 8017D1F8 0017A158 D0 41 00 98 */ stfs f2, 0x98(r1) -/* 8017D1FC 0017A15C D0 21 00 9C */ stfs f1, 0x9c(r1) -/* 8017D200 0017A160 48 19 76 B9 */ bl Magnitude__9CVector3fCFv -/* 8017D204 0017A164 FF 20 08 90 */ fmr f25, f1 -/* 8017D208 0017A168 7E E4 BB 78 */ mr r4, r23 -/* 8017D20C 0017A16C 38 61 00 64 */ addi r3, r1, 0x64 -/* 8017D210 0017A170 38 A1 00 A0 */ addi r5, r1, 0xa0 -/* 8017D214 0017A174 4B EE 06 7D */ bl ConvertToScreenSpace__11CGameCameraCFRC9CVector3f -/* 8017D218 0017A178 C0 21 00 6C */ lfs f1, 0x6c(r1) -/* 8017D21C 0017A17C C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017D220 0017A180 C3 E1 00 64 */ lfs f31, 0x64(r1) -/* 8017D224 0017A184 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017D228 0017A188 C3 C1 00 68 */ lfs f30, 0x68(r1) -/* 8017D22C 0017A18C 4C 41 13 82 */ cror 2, 1, 2 -/* 8017D230 0017A190 40 82 06 C8 */ bne lbl_8017D8F8 -/* 8017D234 0017A194 A0 7A 00 00 */ lhz r3, 0(r26) -/* 8017D238 0017A198 A0 1C 03 10 */ lhz r0, 0x310(r28) -/* 8017D23C 0017A19C 7C 03 00 40 */ cmplw r3, r0 -/* 8017D240 0017A1A0 41 82 06 B8 */ beq lbl_8017D8F8 -/* 8017D244 0017A1A4 7F 64 DB 78 */ mr r4, r27 -/* 8017D248 0017A1A8 38 61 00 30 */ addi r3, r1, 0x30 -/* 8017D24C 0017A1AC 4B F2 C8 7D */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" -/* 8017D250 0017A1B0 82 A3 00 04 */ lwz r21, 4(r3) -/* 8017D254 0017A1B4 28 15 00 00 */ cmplwi r21, 0 -/* 8017D258 0017A1B8 41 82 02 50 */ beq lbl_8017D4A8 -/* 8017D25C 0017A1BC A0 75 00 08 */ lhz r3, 8(r21) -/* 8017D260 0017A1C0 A0 1C 03 10 */ lhz r0, 0x310(r28) -/* 8017D264 0017A1C4 7C 03 00 40 */ cmplw r3, r0 -/* 8017D268 0017A1C8 41 82 02 40 */ beq lbl_8017D4A8 -/* 8017D26C 0017A1CC 80 7D 08 B8 */ lwz r3, 0x8b8(r29) -/* 8017D270 0017A1D0 38 80 00 0C */ li r4, 0xc -/* 8017D274 0017A1D4 80 63 00 00 */ lwz r3, 0(r3) -/* 8017D278 0017A1D8 4B F1 48 49 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType -/* 8017D27C 0017A1DC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017D280 0017A1E0 41 82 06 78 */ beq lbl_8017D8F8 -/* 8017D284 0017A1E4 FC 19 E8 40 */ fcmpo cr0, f25, f29 -/* 8017D288 0017A1E8 40 80 06 70 */ bge lbl_8017D8F8 -/* 8017D28C 0017A1EC 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017D290 0017A1F0 C0 03 02 A0 */ lfs f0, 0x2a0(r3) -/* 8017D294 0017A1F4 FC 19 00 40 */ fcmpo cr0, f25, f0 -/* 8017D298 0017A1F8 40 80 06 60 */ bge lbl_8017D8F8 -/* 8017D29C 0017A1FC A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) -/* 8017D2A0 0017A200 38 00 00 00 */ li r0, 0 -/* 8017D2A4 0017A204 90 01 11 60 */ stw r0, 0x1160(r1) -/* 8017D2A8 0017A208 38 61 00 94 */ addi r3, r1, 0x94 -/* 8017D2AC 0017A20C B0 81 00 1C */ sth r4, 0x1c(r1) -/* 8017D2B0 0017A210 48 19 76 49 */ bl Normalize__9CVector3fFv -/* 8017D2B4 0017A214 FC 20 C8 90 */ fmr f1, f25 -/* 8017D2B8 0017A218 3C 80 80 47 */ lis r4, lbl_8046C8D8@ha -/* 8017D2BC 0017A21C 7C 66 1B 78 */ mr r6, r3 -/* 8017D2C0 0017A220 7F A3 EB 78 */ mr r3, r29 -/* 8017D2C4 0017A224 38 E4 C8 D8 */ addi r7, r4, lbl_8046C8D8@l -/* 8017D2C8 0017A228 7F 68 DB 78 */ mr r8, r27 -/* 8017D2CC 0017A22C 38 81 11 60 */ addi r4, r1, 0x1160 -/* 8017D2D0 0017A230 38 A1 00 B8 */ addi r5, r1, 0xb8 -/* 8017D2D4 0017A234 4B EC F4 05 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" -/* 8017D2D8 0017A238 38 61 00 94 */ addi r3, r1, 0x94 -/* 8017D2DC 0017A23C 48 19 76 1D */ bl Normalize__9CVector3fFv -/* 8017D2E0 0017A240 FC 20 C8 90 */ fmr f1, f25 -/* 8017D2E4 0017A244 3C A0 80 47 */ lis r5, lbl_8046C8C0@ha -/* 8017D2E8 0017A248 7C 67 1B 78 */ mr r7, r3 -/* 8017D2EC 0017A24C 7F A4 EB 78 */ mr r4, r29 -/* 8017D2F0 0017A250 39 05 C8 C0 */ addi r8, r5, lbl_8046C8C0@l -/* 8017D2F4 0017A254 38 61 01 28 */ addi r3, r1, 0x128 -/* 8017D2F8 0017A258 38 A1 00 1C */ addi r5, r1, 0x1c -/* 8017D2FC 0017A25C 38 C1 00 B8 */ addi r6, r1, 0xb8 -/* 8017D300 0017A260 39 21 11 60 */ addi r9, r1, 0x1160 -/* 8017D304 0017A264 4B EC FC C1 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 8017D308 0017A268 88 01 01 48 */ lbz r0, 0x148(r1) -/* 8017D30C 0017A26C 28 00 00 00 */ cmplwi r0, 0 -/* 8017D310 0017A270 40 82 01 3C */ bne lbl_8017D44C -/* 8017D314 0017A274 88 15 01 2C */ lbz r0, 0x12c(r21) -/* 8017D318 0017A278 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8017D31C 0017A27C 41 82 01 14 */ beq lbl_8017D430 -/* 8017D320 0017A280 C0 3C 00 50 */ lfs f1, 0x50(r28) -/* 8017D324 0017A284 38 61 00 88 */ addi r3, r1, 0x88 -/* 8017D328 0017A288 C0 15 00 50 */ lfs f0, 0x50(r21) -/* 8017D32C 0017A28C C0 7C 00 60 */ lfs f3, 0x60(r28) -/* 8017D330 0017A290 C0 55 00 60 */ lfs f2, 0x60(r21) -/* 8017D334 0017A294 EC 81 00 28 */ fsubs f4, f1, f0 -/* 8017D338 0017A298 C0 15 00 40 */ lfs f0, 0x40(r21) -/* 8017D33C 0017A29C C0 3C 00 40 */ lfs f1, 0x40(r28) -/* 8017D340 0017A2A0 EC 43 10 28 */ fsubs f2, f3, f2 -/* 8017D344 0017A2A4 D0 81 00 8C */ stfs f4, 0x8c(r1) -/* 8017D348 0017A2A8 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8017D34C 0017A2AC D0 41 00 90 */ stfs f2, 0x90(r1) -/* 8017D350 0017A2B0 D0 01 00 88 */ stfs f0, 0x88(r1) -/* 8017D354 0017A2B4 48 19 73 A5 */ bl CanBeNormalized__9CVector3fCFv -/* 8017D358 0017A2B8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017D35C 0017A2BC 41 82 00 D4 */ beq lbl_8017D430 -/* 8017D360 0017A2C0 C0 55 00 58 */ lfs f2, 0x58(r21) -/* 8017D364 0017A2C4 38 61 00 58 */ addi r3, r1, 0x58 -/* 8017D368 0017A2C8 C0 35 00 48 */ lfs f1, 0x48(r21) -/* 8017D36C 0017A2CC 38 81 00 4C */ addi r4, r1, 0x4c -/* 8017D370 0017A2D0 C0 15 00 38 */ lfs f0, 0x38(r21) -/* 8017D374 0017A2D4 D0 01 00 4C */ stfs f0, 0x4c(r1) -/* 8017D378 0017A2D8 D0 21 00 50 */ stfs f1, 0x50(r1) -/* 8017D37C 0017A2DC D0 41 00 54 */ stfs f2, 0x54(r1) -/* 8017D380 0017A2E0 48 19 74 D1 */ bl AsNormalized__9CVector3fCFv -/* 8017D384 0017A2E4 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017D388 0017A2E8 38 61 00 40 */ addi r3, r1, 0x40 -/* 8017D38C 0017A2EC C3 01 00 58 */ lfs f24, 0x58(r1) -/* 8017D390 0017A2F0 38 81 00 88 */ addi r4, r1, 0x88 -/* 8017D394 0017A2F4 D0 01 00 90 */ stfs f0, 0x90(r1) -/* 8017D398 0017A2F8 C2 E1 00 5C */ lfs f23, 0x5c(r1) -/* 8017D39C 0017A2FC C2 C1 00 60 */ lfs f22, 0x60(r1) -/* 8017D3A0 0017A300 48 19 74 B1 */ bl AsNormalized__9CVector3fCFv -/* 8017D3A4 0017A304 C0 01 00 44 */ lfs f0, 0x44(r1) -/* 8017D3A8 0017A308 C0 41 00 40 */ lfs f2, 0x40(r1) -/* 8017D3AC 0017A30C EC 37 00 32 */ fmuls f1, f23, f0 -/* 8017D3B0 0017A310 C0 61 00 48 */ lfs f3, 0x48(r1) -/* 8017D3B4 0017A314 C0 02 A2 A4 */ lfs f0, lbl_805ABFC4@sda21(r2) -/* 8017D3B8 0017A318 EC 38 08 BA */ fmadds f1, f24, f2, f1 -/* 8017D3BC 0017A31C EC 36 08 FA */ fmadds f1, f22, f3, f1 -/* 8017D3C0 0017A320 FC 20 0A 10 */ fabs f1, f1 -/* 8017D3C4 0017A324 FC 20 08 18 */ frsp f1, f1 -/* 8017D3C8 0017A328 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017D3CC 0017A32C 4C 40 13 82 */ cror 2, 0, 2 -/* 8017D3D0 0017A330 40 82 00 60 */ bne lbl_8017D430 -/* 8017D3D4 0017A334 80 A1 11 60 */ lwz r5, 0x1160(r1) -/* 8017D3D8 0017A338 38 60 00 00 */ li r3, 0 -/* 8017D3DC 0017A33C 2C 05 00 00 */ cmpwi r5, 0 -/* 8017D3E0 0017A340 40 81 00 44 */ ble lbl_8017D424 -/* 8017D3E4 0017A344 2C 05 00 08 */ cmpwi r5, 8 -/* 8017D3E8 0017A348 38 85 FF F8 */ addi r4, r5, -8 -/* 8017D3EC 0017A34C 40 81 00 20 */ ble lbl_8017D40C -/* 8017D3F0 0017A350 38 04 00 07 */ addi r0, r4, 7 -/* 8017D3F4 0017A354 54 00 E8 FE */ srwi r0, r0, 3 -/* 8017D3F8 0017A358 7C 09 03 A6 */ mtctr r0 -/* 8017D3FC 0017A35C 2C 04 00 00 */ cmpwi r4, 0 -/* 8017D400 0017A360 40 81 00 0C */ ble lbl_8017D40C -lbl_8017D404: -/* 8017D404 0017A364 38 63 00 08 */ addi r3, r3, 8 -/* 8017D408 0017A368 42 00 FF FC */ bdnz lbl_8017D404 -lbl_8017D40C: -/* 8017D40C 0017A36C 7C 03 28 50 */ subf r0, r3, r5 -/* 8017D410 0017A370 7C 09 03 A6 */ mtctr r0 -/* 8017D414 0017A374 7C 03 28 00 */ cmpw r3, r5 -/* 8017D418 0017A378 40 80 00 0C */ bge lbl_8017D424 -lbl_8017D41C: -/* 8017D41C 0017A37C 38 63 00 01 */ addi r3, r3, 1 -/* 8017D420 0017A380 42 00 FF FC */ bdnz lbl_8017D41C -lbl_8017D424: -/* 8017D424 0017A384 38 00 00 00 */ li r0, 0 -/* 8017D428 0017A388 90 01 11 60 */ stw r0, 0x1160(r1) -/* 8017D42C 0017A38C 48 00 04 CC */ b lbl_8017D8F8 -lbl_8017D430: -/* 8017D430 0017A390 EC 3F D8 28 */ fsubs f1, f31, f27 -/* 8017D434 0017A394 A3 1B 00 08 */ lhz r24, 8(r27) -/* 8017D438 0017A398 EC 1E D0 28 */ fsubs f0, f30, f26 -/* 8017D43C 0017A39C FF A0 C8 90 */ fmr f29, f25 -/* 8017D440 0017A3A0 EC 21 00 72 */ fmuls f1, f1, f1 -/* 8017D444 0017A3A4 EC 00 00 32 */ fmuls f0, f0, f0 -/* 8017D448 0017A3A8 EF 81 00 2A */ fadds f28, f1, f0 -lbl_8017D44C: -/* 8017D44C 0017A3AC 80 A1 11 60 */ lwz r5, 0x1160(r1) -/* 8017D450 0017A3B0 38 60 00 00 */ li r3, 0 -/* 8017D454 0017A3B4 2C 05 00 00 */ cmpwi r5, 0 -/* 8017D458 0017A3B8 40 81 00 44 */ ble lbl_8017D49C -/* 8017D45C 0017A3BC 2C 05 00 08 */ cmpwi r5, 8 -/* 8017D460 0017A3C0 38 85 FF F8 */ addi r4, r5, -8 -/* 8017D464 0017A3C4 40 81 00 20 */ ble lbl_8017D484 -/* 8017D468 0017A3C8 38 04 00 07 */ addi r0, r4, 7 -/* 8017D46C 0017A3CC 54 00 E8 FE */ srwi r0, r0, 3 -/* 8017D470 0017A3D0 7C 09 03 A6 */ mtctr r0 -/* 8017D474 0017A3D4 2C 04 00 00 */ cmpwi r4, 0 -/* 8017D478 0017A3D8 40 81 00 0C */ ble lbl_8017D484 -lbl_8017D47C: -/* 8017D47C 0017A3DC 38 63 00 08 */ addi r3, r3, 8 -/* 8017D480 0017A3E0 42 00 FF FC */ bdnz lbl_8017D47C -lbl_8017D484: -/* 8017D484 0017A3E4 7C 03 28 50 */ subf r0, r3, r5 -/* 8017D488 0017A3E8 7C 09 03 A6 */ mtctr r0 -/* 8017D48C 0017A3EC 7C 03 28 00 */ cmpw r3, r5 -/* 8017D490 0017A3F0 40 80 00 0C */ bge lbl_8017D49C -lbl_8017D494: -/* 8017D494 0017A3F4 38 63 00 01 */ addi r3, r3, 1 -/* 8017D498 0017A3F8 42 00 FF FC */ bdnz lbl_8017D494 -lbl_8017D49C: -/* 8017D49C 0017A3FC 38 00 00 00 */ li r0, 0 -/* 8017D4A0 0017A400 90 01 11 60 */ stw r0, 0x1160(r1) -/* 8017D4A4 0017A404 48 00 04 54 */ b lbl_8017D8F8 -lbl_8017D4A8: -/* 8017D4A8 0017A408 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017D4AC 0017A40C EC 3D C8 28 */ fsubs f1, f29, f25 -/* 8017D4B0 0017A410 C0 03 01 A4 */ lfs f0, 0x1a4(r3) -/* 8017D4B4 0017A414 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017D4B8 0017A418 40 81 02 10 */ ble lbl_8017D6C8 -/* 8017D4BC 0017A41C 80 7D 08 B8 */ lwz r3, 0x8b8(r29) -/* 8017D4C0 0017A420 80 63 00 00 */ lwz r3, 0(r3) -/* 8017D4C4 0017A424 80 03 00 14 */ lwz r0, 0x14(r3) -/* 8017D4C8 0017A428 2C 00 00 02 */ cmpwi r0, 2 -/* 8017D4CC 0017A42C 41 82 01 FC */ beq lbl_8017D6C8 -/* 8017D4D0 0017A430 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017D4D4 0017A434 38 60 00 00 */ li r3, 0 -/* 8017D4D8 0017A438 90 61 09 5C */ stw r3, 0x95c(r1) -/* 8017D4DC 0017A43C 38 61 00 94 */ addi r3, r1, 0x94 -/* 8017D4E0 0017A440 B0 01 00 18 */ sth r0, 0x18(r1) -/* 8017D4E4 0017A444 48 19 74 15 */ bl Normalize__9CVector3fFv -/* 8017D4E8 0017A448 FC 20 C8 90 */ fmr f1, f25 -/* 8017D4EC 0017A44C 3C 80 80 47 */ lis r4, lbl_8046C8D8@ha -/* 8017D4F0 0017A450 7C 66 1B 78 */ mr r6, r3 -/* 8017D4F4 0017A454 7F A3 EB 78 */ mr r3, r29 -/* 8017D4F8 0017A458 38 E4 C8 D8 */ addi r7, r4, lbl_8046C8D8@l -/* 8017D4FC 0017A45C 7F 68 DB 78 */ mr r8, r27 -/* 8017D500 0017A460 38 81 09 5C */ addi r4, r1, 0x95c -/* 8017D504 0017A464 38 A1 00 B8 */ addi r5, r1, 0xb8 -/* 8017D508 0017A468 4B EC F1 D1 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" -/* 8017D50C 0017A46C 7F F5 FB 78 */ mr r21, r31 -/* 8017D510 0017A470 48 00 00 F0 */ b lbl_8017D600 -lbl_8017D514: -/* 8017D514 0017A474 A0 15 00 00 */ lhz r0, 0(r21) -/* 8017D518 0017A478 7F A3 EB 78 */ mr r3, r29 -/* 8017D51C 0017A47C 38 81 00 0C */ addi r4, r1, 0xc -/* 8017D520 0017A480 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8017D524 0017A484 4B EC F0 81 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017D528 0017A488 28 03 00 00 */ cmplwi r3, 0 -/* 8017D52C 0017A48C 41 82 00 D0 */ beq lbl_8017D5FC -/* 8017D530 0017A490 80 A3 00 04 */ lwz r5, 4(r3) -/* 8017D534 0017A494 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) -/* 8017D538 0017A498 90 A1 00 2C */ stw r5, 0x2c(r1) -/* 8017D53C 0017A49C 7C 05 00 00 */ cmpw r5, r0 -/* 8017D540 0017A4A0 41 82 00 50 */ beq lbl_8017D590 -/* 8017D544 0017A4A4 41 82 00 B8 */ beq lbl_8017D5FC -/* 8017D548 0017A4A8 80 1D 08 CC */ lwz r0, 0x8cc(r29) -/* 8017D54C 0017A4AC 7C 05 00 00 */ cmpw r5, r0 -/* 8017D550 0017A4B0 41 82 00 AC */ beq lbl_8017D5FC -/* 8017D554 0017A4B4 80 9D 08 50 */ lwz r4, 0x850(r29) -/* 8017D558 0017A4B8 54 A3 18 38 */ slwi r3, r5, 3 -/* 8017D55C 0017A4BC 38 03 00 04 */ addi r0, r3, 4 -/* 8017D560 0017A4C0 90 A1 00 24 */ stw r5, 0x24(r1) -/* 8017D564 0017A4C4 80 64 00 20 */ lwz r3, 0x20(r4) -/* 8017D568 0017A4C8 7C 63 00 2E */ lwzx r3, r3, r0 -/* 8017D56C 0017A4CC 88 03 00 F0 */ lbz r0, 0xf0(r3) -/* 8017D570 0017A4D0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8017D574 0017A4D4 41 82 00 10 */ beq lbl_8017D584 -/* 8017D578 0017A4D8 80 63 01 2C */ lwz r3, 0x12c(r3) -/* 8017D57C 0017A4DC 80 03 10 DC */ lwz r0, 0x10dc(r3) -/* 8017D580 0017A4E0 48 00 00 08 */ b lbl_8017D588 -lbl_8017D584: -/* 8017D584 0017A4E4 38 00 00 00 */ li r0, 0 -lbl_8017D588: -/* 8017D588 0017A4E8 2C 00 00 00 */ cmpwi r0, 0 -/* 8017D58C 0017A4EC 40 82 00 70 */ bne lbl_8017D5FC -lbl_8017D590: -/* 8017D590 0017A4F0 7C 15 F8 40 */ cmplw r21, r31 -/* 8017D594 0017A4F4 41 80 00 54 */ blt lbl_8017D5E8 -/* 8017D598 0017A4F8 80 01 09 5C */ lwz r0, 0x95c(r1) -/* 8017D59C 0017A4FC 54 00 08 3C */ slwi r0, r0, 1 -/* 8017D5A0 0017A500 7C 1F 02 14 */ add r0, r31, r0 -/* 8017D5A4 0017A504 7C 15 00 40 */ cmplw r21, r0 -/* 8017D5A8 0017A508 40 80 00 40 */ bge lbl_8017D5E8 -/* 8017D5AC 0017A50C 7E A5 AB 78 */ mr r5, r21 -/* 8017D5B0 0017A510 48 00 00 10 */ b lbl_8017D5C0 -lbl_8017D5B4: -/* 8017D5B4 0017A514 A0 05 00 02 */ lhz r0, 2(r5) -/* 8017D5B8 0017A518 B0 05 00 00 */ sth r0, 0(r5) -/* 8017D5BC 0017A51C 38 A5 00 02 */ addi r5, r5, 2 -lbl_8017D5C0: -/* 8017D5C0 0017A520 80 81 09 5C */ lwz r4, 0x95c(r1) -/* 8017D5C4 0017A524 54 83 08 3C */ slwi r3, r4, 1 -/* 8017D5C8 0017A528 38 03 FF FE */ addi r0, r3, -2 -/* 8017D5CC 0017A52C 7C 1F 02 14 */ add r0, r31, r0 -/* 8017D5D0 0017A530 7C 05 00 40 */ cmplw r5, r0 -/* 8017D5D4 0017A534 41 80 FF E0 */ blt lbl_8017D5B4 -/* 8017D5D8 0017A538 38 04 FF FF */ addi r0, r4, -1 -/* 8017D5DC 0017A53C 7E A3 AB 78 */ mr r3, r21 -/* 8017D5E0 0017A540 90 01 09 5C */ stw r0, 0x95c(r1) -/* 8017D5E4 0017A544 48 00 00 10 */ b lbl_8017D5F4 -lbl_8017D5E8: -/* 8017D5E8 0017A548 80 01 09 5C */ lwz r0, 0x95c(r1) -/* 8017D5EC 0017A54C 54 00 08 3C */ slwi r0, r0, 1 -/* 8017D5F0 0017A550 7C 7F 02 14 */ add r3, r31, r0 -lbl_8017D5F4: -/* 8017D5F4 0017A554 7C 75 1B 78 */ mr r21, r3 -/* 8017D5F8 0017A558 48 00 00 08 */ b lbl_8017D600 -lbl_8017D5FC: -/* 8017D5FC 0017A55C 3A B5 00 02 */ addi r21, r21, 2 -lbl_8017D600: -/* 8017D600 0017A560 80 01 09 5C */ lwz r0, 0x95c(r1) -/* 8017D604 0017A564 54 00 08 3C */ slwi r0, r0, 1 -/* 8017D608 0017A568 7C 1F 02 14 */ add r0, r31, r0 -/* 8017D60C 0017A56C 7C 15 00 40 */ cmplw r21, r0 -/* 8017D610 0017A570 40 82 FF 04 */ bne lbl_8017D514 -/* 8017D614 0017A574 38 61 00 94 */ addi r3, r1, 0x94 -/* 8017D618 0017A578 48 19 72 E1 */ bl Normalize__9CVector3fFv -/* 8017D61C 0017A57C FC 20 C8 90 */ fmr f1, f25 -/* 8017D620 0017A580 3C A0 80 47 */ lis r5, lbl_8046C8C0@ha -/* 8017D624 0017A584 7C 67 1B 78 */ mr r7, r3 -/* 8017D628 0017A588 7F A4 EB 78 */ mr r4, r29 -/* 8017D62C 0017A58C 39 05 C8 C0 */ addi r8, r5, lbl_8046C8C0@l -/* 8017D630 0017A590 38 61 00 F8 */ addi r3, r1, 0xf8 -/* 8017D634 0017A594 38 A1 00 18 */ addi r5, r1, 0x18 -/* 8017D638 0017A598 38 C1 00 B8 */ addi r6, r1, 0xb8 -/* 8017D63C 0017A59C 39 21 09 5C */ addi r9, r1, 0x95c -/* 8017D640 0017A5A0 4B EC F9 85 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 8017D644 0017A5A4 88 01 01 18 */ lbz r0, 0x118(r1) -/* 8017D648 0017A5A8 28 00 00 00 */ cmplwi r0, 0 -/* 8017D64C 0017A5AC 40 82 00 20 */ bne lbl_8017D66C -/* 8017D650 0017A5B0 EC 3F D8 28 */ fsubs f1, f31, f27 -/* 8017D654 0017A5B4 A3 1B 00 08 */ lhz r24, 8(r27) -/* 8017D658 0017A5B8 EC 1E D0 28 */ fsubs f0, f30, f26 -/* 8017D65C 0017A5BC FF A0 C8 90 */ fmr f29, f25 -/* 8017D660 0017A5C0 EC 21 00 72 */ fmuls f1, f1, f1 -/* 8017D664 0017A5C4 EC 00 00 32 */ fmuls f0, f0, f0 -/* 8017D668 0017A5C8 EF 81 00 2A */ fadds f28, f1, f0 -lbl_8017D66C: -/* 8017D66C 0017A5CC 80 A1 09 5C */ lwz r5, 0x95c(r1) -/* 8017D670 0017A5D0 38 60 00 00 */ li r3, 0 -/* 8017D674 0017A5D4 2C 05 00 00 */ cmpwi r5, 0 -/* 8017D678 0017A5D8 40 81 00 44 */ ble lbl_8017D6BC -/* 8017D67C 0017A5DC 2C 05 00 08 */ cmpwi r5, 8 -/* 8017D680 0017A5E0 38 85 FF F8 */ addi r4, r5, -8 -/* 8017D684 0017A5E4 40 81 00 20 */ ble lbl_8017D6A4 -/* 8017D688 0017A5E8 38 04 00 07 */ addi r0, r4, 7 -/* 8017D68C 0017A5EC 54 00 E8 FE */ srwi r0, r0, 3 -/* 8017D690 0017A5F0 7C 09 03 A6 */ mtctr r0 -/* 8017D694 0017A5F4 2C 04 00 00 */ cmpwi r4, 0 -/* 8017D698 0017A5F8 40 81 00 0C */ ble lbl_8017D6A4 -lbl_8017D69C: -/* 8017D69C 0017A5FC 38 63 00 08 */ addi r3, r3, 8 -/* 8017D6A0 0017A600 42 00 FF FC */ bdnz lbl_8017D69C -lbl_8017D6A4: -/* 8017D6A4 0017A604 7C 03 28 50 */ subf r0, r3, r5 -/* 8017D6A8 0017A608 7C 09 03 A6 */ mtctr r0 -/* 8017D6AC 0017A60C 7C 03 28 00 */ cmpw r3, r5 -/* 8017D6B0 0017A610 40 80 00 0C */ bge lbl_8017D6BC -lbl_8017D6B4: -/* 8017D6B4 0017A614 38 63 00 01 */ addi r3, r3, 1 -/* 8017D6B8 0017A618 42 00 FF FC */ bdnz lbl_8017D6B4 -lbl_8017D6BC: -/* 8017D6BC 0017A61C 38 00 00 00 */ li r0, 0 -/* 8017D6C0 0017A620 90 01 09 5C */ stw r0, 0x95c(r1) -/* 8017D6C4 0017A624 48 00 02 34 */ b lbl_8017D8F8 -lbl_8017D6C8: -/* 8017D6C8 0017A628 EC 39 E8 28 */ fsubs f1, f25, f29 -/* 8017D6CC 0017A62C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017D6D0 0017A630 C0 03 01 A4 */ lfs f0, 0x1a4(r3) -/* 8017D6D4 0017A634 FC 20 0A 10 */ fabs f1, f1 -/* 8017D6D8 0017A638 FC 20 08 18 */ frsp f1, f1 -/* 8017D6DC 0017A63C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017D6E0 0017A640 41 80 00 18 */ blt lbl_8017D6F8 -/* 8017D6E4 0017A644 80 7D 08 B8 */ lwz r3, 0x8b8(r29) -/* 8017D6E8 0017A648 80 63 00 00 */ lwz r3, 0(r3) -/* 8017D6EC 0017A64C 80 03 00 14 */ lwz r0, 0x14(r3) -/* 8017D6F0 0017A650 2C 00 00 02 */ cmpwi r0, 2 -/* 8017D6F4 0017A654 40 82 02 04 */ bne lbl_8017D8F8 -lbl_8017D6F8: -/* 8017D6F8 0017A658 EC 3F D8 28 */ fsubs f1, f31, f27 -/* 8017D6FC 0017A65C EC 1E D0 28 */ fsubs f0, f30, f26 -/* 8017D700 0017A660 EC 21 00 72 */ fmuls f1, f1, f1 -/* 8017D704 0017A664 EC 00 00 32 */ fmuls f0, f0, f0 -/* 8017D708 0017A668 EE C1 00 2A */ fadds f22, f1, f0 -/* 8017D70C 0017A66C FC 16 E0 40 */ fcmpo cr0, f22, f28 -/* 8017D710 0017A670 40 80 01 E8 */ bge lbl_8017D8F8 -/* 8017D714 0017A674 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) -/* 8017D718 0017A678 38 00 00 00 */ li r0, 0 -/* 8017D71C 0017A67C 90 01 01 58 */ stw r0, 0x158(r1) -/* 8017D720 0017A680 38 61 00 94 */ addi r3, r1, 0x94 -/* 8017D724 0017A684 B0 81 00 14 */ sth r4, 0x14(r1) -/* 8017D728 0017A688 48 19 71 D1 */ bl Normalize__9CVector3fFv -/* 8017D72C 0017A68C FC 20 C8 90 */ fmr f1, f25 -/* 8017D730 0017A690 3C 80 80 47 */ lis r4, lbl_8046C8D8@ha -/* 8017D734 0017A694 7C 66 1B 78 */ mr r6, r3 -/* 8017D738 0017A698 7F A3 EB 78 */ mr r3, r29 -/* 8017D73C 0017A69C 38 E4 C8 D8 */ addi r7, r4, lbl_8046C8D8@l -/* 8017D740 0017A6A0 7F 68 DB 78 */ mr r8, r27 -/* 8017D744 0017A6A4 38 81 01 58 */ addi r4, r1, 0x158 -/* 8017D748 0017A6A8 38 A1 00 B8 */ addi r5, r1, 0xb8 -/* 8017D74C 0017A6AC 4B EC EF 8D */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" -/* 8017D750 0017A6B0 7F D5 F3 78 */ mr r21, r30 -/* 8017D754 0017A6B4 48 00 00 F0 */ b lbl_8017D844 -lbl_8017D758: -/* 8017D758 0017A6B8 A0 15 00 00 */ lhz r0, 0(r21) -/* 8017D75C 0017A6BC 7F A3 EB 78 */ mr r3, r29 -/* 8017D760 0017A6C0 38 81 00 08 */ addi r4, r1, 8 -/* 8017D764 0017A6C4 B0 01 00 08 */ sth r0, 8(r1) -/* 8017D768 0017A6C8 4B EC EE 3D */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017D76C 0017A6CC 28 03 00 00 */ cmplwi r3, 0 -/* 8017D770 0017A6D0 41 82 00 D0 */ beq lbl_8017D840 -/* 8017D774 0017A6D4 80 A3 00 04 */ lwz r5, 4(r3) -/* 8017D778 0017A6D8 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) -/* 8017D77C 0017A6DC 90 A1 00 28 */ stw r5, 0x28(r1) -/* 8017D780 0017A6E0 7C 05 00 00 */ cmpw r5, r0 -/* 8017D784 0017A6E4 41 82 00 50 */ beq lbl_8017D7D4 -/* 8017D788 0017A6E8 41 82 00 B8 */ beq lbl_8017D840 -/* 8017D78C 0017A6EC 80 1D 08 CC */ lwz r0, 0x8cc(r29) -/* 8017D790 0017A6F0 7C 05 00 00 */ cmpw r5, r0 -/* 8017D794 0017A6F4 41 82 00 AC */ beq lbl_8017D840 -/* 8017D798 0017A6F8 80 9D 08 50 */ lwz r4, 0x850(r29) -/* 8017D79C 0017A6FC 54 A3 18 38 */ slwi r3, r5, 3 -/* 8017D7A0 0017A700 38 03 00 04 */ addi r0, r3, 4 -/* 8017D7A4 0017A704 90 A1 00 20 */ stw r5, 0x20(r1) -/* 8017D7A8 0017A708 80 64 00 20 */ lwz r3, 0x20(r4) -/* 8017D7AC 0017A70C 7C 63 00 2E */ lwzx r3, r3, r0 -/* 8017D7B0 0017A710 88 03 00 F0 */ lbz r0, 0xf0(r3) -/* 8017D7B4 0017A714 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8017D7B8 0017A718 41 82 00 10 */ beq lbl_8017D7C8 -/* 8017D7BC 0017A71C 80 63 01 2C */ lwz r3, 0x12c(r3) -/* 8017D7C0 0017A720 80 03 10 DC */ lwz r0, 0x10dc(r3) -/* 8017D7C4 0017A724 48 00 00 08 */ b lbl_8017D7CC -lbl_8017D7C8: -/* 8017D7C8 0017A728 38 00 00 00 */ li r0, 0 -lbl_8017D7CC: -/* 8017D7CC 0017A72C 2C 00 00 00 */ cmpwi r0, 0 -/* 8017D7D0 0017A730 40 82 00 70 */ bne lbl_8017D840 -lbl_8017D7D4: -/* 8017D7D4 0017A734 7C 15 F0 40 */ cmplw r21, r30 -/* 8017D7D8 0017A738 41 80 00 54 */ blt lbl_8017D82C -/* 8017D7DC 0017A73C 80 01 01 58 */ lwz r0, 0x158(r1) -/* 8017D7E0 0017A740 54 00 08 3C */ slwi r0, r0, 1 -/* 8017D7E4 0017A744 7C 1E 02 14 */ add r0, r30, r0 -/* 8017D7E8 0017A748 7C 15 00 40 */ cmplw r21, r0 -/* 8017D7EC 0017A74C 40 80 00 40 */ bge lbl_8017D82C -/* 8017D7F0 0017A750 7E A5 AB 78 */ mr r5, r21 -/* 8017D7F4 0017A754 48 00 00 10 */ b lbl_8017D804 -lbl_8017D7F8: -/* 8017D7F8 0017A758 A0 05 00 02 */ lhz r0, 2(r5) -/* 8017D7FC 0017A75C B0 05 00 00 */ sth r0, 0(r5) -/* 8017D800 0017A760 38 A5 00 02 */ addi r5, r5, 2 -lbl_8017D804: -/* 8017D804 0017A764 80 81 01 58 */ lwz r4, 0x158(r1) -/* 8017D808 0017A768 54 83 08 3C */ slwi r3, r4, 1 -/* 8017D80C 0017A76C 38 03 FF FE */ addi r0, r3, -2 -/* 8017D810 0017A770 7C 1E 02 14 */ add r0, r30, r0 -/* 8017D814 0017A774 7C 05 00 40 */ cmplw r5, r0 -/* 8017D818 0017A778 41 80 FF E0 */ blt lbl_8017D7F8 -/* 8017D81C 0017A77C 38 04 FF FF */ addi r0, r4, -1 -/* 8017D820 0017A780 7E A3 AB 78 */ mr r3, r21 -/* 8017D824 0017A784 90 01 01 58 */ stw r0, 0x158(r1) -/* 8017D828 0017A788 48 00 00 10 */ b lbl_8017D838 -lbl_8017D82C: -/* 8017D82C 0017A78C 80 01 01 58 */ lwz r0, 0x158(r1) -/* 8017D830 0017A790 54 00 08 3C */ slwi r0, r0, 1 -/* 8017D834 0017A794 7C 7E 02 14 */ add r3, r30, r0 -lbl_8017D838: -/* 8017D838 0017A798 7C 75 1B 78 */ mr r21, r3 -/* 8017D83C 0017A79C 48 00 00 08 */ b lbl_8017D844 -lbl_8017D840: -/* 8017D840 0017A7A0 3A B5 00 02 */ addi r21, r21, 2 -lbl_8017D844: -/* 8017D844 0017A7A4 80 01 01 58 */ lwz r0, 0x158(r1) -/* 8017D848 0017A7A8 54 00 08 3C */ slwi r0, r0, 1 -/* 8017D84C 0017A7AC 7C 1E 02 14 */ add r0, r30, r0 -/* 8017D850 0017A7B0 7C 15 00 40 */ cmplw r21, r0 -/* 8017D854 0017A7B4 40 82 FF 04 */ bne lbl_8017D758 -/* 8017D858 0017A7B8 38 61 00 94 */ addi r3, r1, 0x94 -/* 8017D85C 0017A7BC 48 19 70 9D */ bl Normalize__9CVector3fFv -/* 8017D860 0017A7C0 FC 20 C8 90 */ fmr f1, f25 -/* 8017D864 0017A7C4 3C A0 80 47 */ lis r5, lbl_8046C8C0@ha -/* 8017D868 0017A7C8 7C 67 1B 78 */ mr r7, r3 -/* 8017D86C 0017A7CC 7F A4 EB 78 */ mr r4, r29 -/* 8017D870 0017A7D0 39 05 C8 C0 */ addi r8, r5, lbl_8046C8C0@l -/* 8017D874 0017A7D4 38 61 00 C8 */ addi r3, r1, 0xc8 -/* 8017D878 0017A7D8 38 A1 00 14 */ addi r5, r1, 0x14 -/* 8017D87C 0017A7DC 38 C1 00 B8 */ addi r6, r1, 0xb8 -/* 8017D880 0017A7E0 39 21 01 58 */ addi r9, r1, 0x158 -/* 8017D884 0017A7E4 4B EC F7 41 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 8017D888 0017A7E8 88 01 00 E8 */ lbz r0, 0xe8(r1) -/* 8017D88C 0017A7EC 28 00 00 00 */ cmplwi r0, 0 -/* 8017D890 0017A7F0 40 82 00 10 */ bne lbl_8017D8A0 -/* 8017D894 0017A7F4 FF 80 B0 90 */ fmr f28, f22 -/* 8017D898 0017A7F8 A3 1B 00 08 */ lhz r24, 8(r27) -/* 8017D89C 0017A7FC FF A0 C8 90 */ fmr f29, f25 -lbl_8017D8A0: -/* 8017D8A0 0017A800 80 A1 01 58 */ lwz r5, 0x158(r1) -/* 8017D8A4 0017A804 38 60 00 00 */ li r3, 0 -/* 8017D8A8 0017A808 2C 05 00 00 */ cmpwi r5, 0 -/* 8017D8AC 0017A80C 40 81 00 44 */ ble lbl_8017D8F0 -/* 8017D8B0 0017A810 2C 05 00 08 */ cmpwi r5, 8 -/* 8017D8B4 0017A814 38 85 FF F8 */ addi r4, r5, -8 -/* 8017D8B8 0017A818 40 81 00 20 */ ble lbl_8017D8D8 -/* 8017D8BC 0017A81C 38 04 00 07 */ addi r0, r4, 7 -/* 8017D8C0 0017A820 54 00 E8 FE */ srwi r0, r0, 3 -/* 8017D8C4 0017A824 7C 09 03 A6 */ mtctr r0 -/* 8017D8C8 0017A828 2C 04 00 00 */ cmpwi r4, 0 -/* 8017D8CC 0017A82C 40 81 00 0C */ ble lbl_8017D8D8 -lbl_8017D8D0: -/* 8017D8D0 0017A830 38 63 00 08 */ addi r3, r3, 8 -/* 8017D8D4 0017A834 42 00 FF FC */ bdnz lbl_8017D8D0 -lbl_8017D8D8: -/* 8017D8D8 0017A838 7C 03 28 50 */ subf r0, r3, r5 -/* 8017D8DC 0017A83C 7C 09 03 A6 */ mtctr r0 -/* 8017D8E0 0017A840 7C 03 28 00 */ cmpw r3, r5 -/* 8017D8E4 0017A844 40 80 00 0C */ bge lbl_8017D8F0 -lbl_8017D8E8: -/* 8017D8E8 0017A848 38 63 00 01 */ addi r3, r3, 1 -/* 8017D8EC 0017A84C 42 00 FF FC */ bdnz lbl_8017D8E8 -lbl_8017D8F0: -/* 8017D8F0 0017A850 38 00 00 00 */ li r0, 0 -/* 8017D8F4 0017A854 90 01 01 58 */ stw r0, 0x158(r1) -lbl_8017D8F8: -/* 8017D8F8 0017A858 3B 5A 00 02 */ addi r26, r26, 2 -lbl_8017D8FC: -/* 8017D8FC 0017A85C 80 19 00 04 */ lwz r0, 4(r25) -/* 8017D900 0017A860 80 79 00 0C */ lwz r3, 0xc(r25) -/* 8017D904 0017A864 54 00 08 3C */ slwi r0, r0, 1 -/* 8017D908 0017A868 7C 03 02 14 */ add r0, r3, r0 -/* 8017D90C 0017A86C 7C 1A 00 40 */ cmplw r26, r0 -/* 8017D910 0017A870 40 82 F8 68 */ bne lbl_8017D178 -/* 8017D914 0017A874 B3 16 00 00 */ sth r24, 0(r22) -/* 8017D918 0017A878 38 00 1A 68 */ li r0, 0x1a68 -/* 8017D91C 0017A87C 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 -/* 8017D920 0017A880 CB E1 1A 60 */ lfd f31, 0x1a60(r1) -/* 8017D924 0017A884 38 00 1A 58 */ li r0, 0x1a58 -/* 8017D928 0017A888 13 C1 00 0C */ psq_lx f30, r1, r0, 0, qr0 -/* 8017D92C 0017A88C CB C1 1A 50 */ lfd f30, 0x1a50(r1) -/* 8017D930 0017A890 38 00 1A 48 */ li r0, 0x1a48 -/* 8017D934 0017A894 13 A1 00 0C */ psq_lx f29, r1, r0, 0, qr0 -/* 8017D938 0017A898 CB A1 1A 40 */ lfd f29, 0x1a40(r1) -/* 8017D93C 0017A89C 38 00 1A 38 */ li r0, 0x1a38 -/* 8017D940 0017A8A0 13 81 00 0C */ psq_lx f28, r1, r0, 0, qr0 -/* 8017D944 0017A8A4 CB 81 1A 30 */ lfd f28, 0x1a30(r1) -/* 8017D948 0017A8A8 38 00 1A 28 */ li r0, 0x1a28 -/* 8017D94C 0017A8AC 13 61 00 0C */ psq_lx f27, r1, r0, 0, qr0 -/* 8017D950 0017A8B0 CB 61 1A 20 */ lfd f27, 0x1a20(r1) -/* 8017D954 0017A8B4 38 00 1A 18 */ li r0, 0x1a18 -/* 8017D958 0017A8B8 13 41 00 0C */ psq_lx f26, r1, r0, 0, qr0 -/* 8017D95C 0017A8BC CB 41 1A 10 */ lfd f26, 0x1a10(r1) -/* 8017D960 0017A8C0 38 00 1A 08 */ li r0, 0x1a08 -/* 8017D964 0017A8C4 13 21 00 0C */ psq_lx f25, r1, r0, 0, qr0 -/* 8017D968 0017A8C8 CB 21 1A 00 */ lfd f25, 0x1a00(r1) -/* 8017D96C 0017A8CC 38 00 19 F8 */ li r0, 0x19f8 -/* 8017D970 0017A8D0 13 01 00 0C */ psq_lx f24, r1, r0, 0, qr0 -/* 8017D974 0017A8D4 CB 01 19 F0 */ lfd f24, 0x19f0(r1) -/* 8017D978 0017A8D8 38 00 19 E8 */ li r0, 0x19e8 -/* 8017D97C 0017A8DC 12 E1 00 0C */ psq_lx f23, r1, r0, 0, qr0 -/* 8017D980 0017A8E0 CA E1 19 E0 */ lfd f23, 0x19e0(r1) -/* 8017D984 0017A8E4 38 00 19 D8 */ li r0, 0x19d8 -/* 8017D988 0017A8E8 12 C1 00 0C */ psq_lx f22, r1, r0, 0, qr0 -/* 8017D98C 0017A8EC CA C1 19 D0 */ lfd f22, 0x19d0(r1) -/* 8017D990 0017A8F0 BA A1 19 A4 */ lmw r21, 0x19a4(r1) -/* 8017D994 0017A8F4 80 01 1A 74 */ lwz r0, 0x1a74(r1) -/* 8017D998 0017A8F8 7C 08 03 A6 */ mtlr r0 -/* 8017D99C 0017A8FC 38 21 1A 70 */ addi r1, r1, 0x1a70 -/* 8017D9A0 0017A900 4E 80 00 20 */ blr - -.global "FindOrbitableObjects__7CPlayerCFRCQ24rstl32reserved_vector<9TUniqueId,1024>RQ24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Q27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneTypeR13CStateManagerb" -"FindOrbitableObjects__7CPlayerCFRCQ24rstl32reserved_vector<9TUniqueId,1024>RQ24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Q27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneTypeR13CStateManagerb": -/* 8017D9A4 0017A904 94 21 FF 00 */ stwu r1, -0x100(r1) -/* 8017D9A8 0017A908 7C 08 02 A6 */ mflr r0 -/* 8017D9AC 0017A90C 90 01 01 04 */ stw r0, 0x104(r1) -/* 8017D9B0 0017A910 DB E1 00 F0 */ stfd f31, 0xf0(r1) -/* 8017D9B4 0017A914 F3 E1 00 F8 */ psq_st f31, 248(r1), 0, qr0 -/* 8017D9B8 0017A918 DB C1 00 E0 */ stfd f30, 0xe0(r1) -/* 8017D9BC 0017A91C F3 C1 00 E8 */ psq_st f30, 232(r1), 0, qr0 -/* 8017D9C0 0017A920 DB A1 00 D0 */ stfd f29, 0xd0(r1) -/* 8017D9C4 0017A924 F3 A1 00 D8 */ psq_st f29, 216(r1), 0, qr0 -/* 8017D9C8 0017A928 DB 81 00 C0 */ stfd f28, 0xc0(r1) -/* 8017D9CC 0017A92C F3 81 00 C8 */ psq_st f28, 200(r1), 0, qr0 -/* 8017D9D0 0017A930 BE 81 00 90 */ stmw r20, 0x90(r1) -/* 8017D9D4 0017A934 7C 74 1B 78 */ mr r20, r3 -/* 8017D9D8 0017A938 7C 95 23 78 */ mr r21, r4 -/* 8017D9DC 0017A93C 7C B6 2B 78 */ mr r22, r5 -/* 8017D9E0 0017A940 7C D7 33 78 */ mr r23, r6 -/* 8017D9E4 0017A944 7C F8 3B 78 */ mr r24, r7 -/* 8017D9E8 0017A948 7D 19 43 78 */ mr r25, r8 -/* 8017D9EC 0017A94C 7D 3A 4B 78 */ mr r26, r9 -/* 8017D9F0 0017A950 7E 84 A3 78 */ mr r4, r20 -/* 8017D9F4 0017A954 38 61 00 34 */ addi r3, r1, 0x34 -/* 8017D9F8 0017A958 48 10 73 85 */ bl GetEyePosition__7CPlayerCFv -/* 8017D9FC 0017A95C C0 54 00 58 */ lfs f2, 0x58(r20) -/* 8017DA00 0017A960 38 61 00 64 */ addi r3, r1, 0x64 -/* 8017DA04 0017A964 C0 34 00 48 */ lfs f1, 0x48(r20) -/* 8017DA08 0017A968 C0 14 00 38 */ lfs f0, 0x38(r20) -/* 8017DA0C 0017A96C D0 21 00 68 */ stfs f1, 0x68(r1) -/* 8017DA10 0017A970 C3 E1 00 34 */ lfs f31, 0x34(r1) -/* 8017DA14 0017A974 D0 01 00 64 */ stfs f0, 0x64(r1) -/* 8017DA18 0017A978 C3 C1 00 38 */ lfs f30, 0x38(r1) -/* 8017DA1C 0017A97C D0 41 00 6C */ stfs f2, 0x6c(r1) -/* 8017DA20 0017A980 C3 A1 00 3C */ lfs f29, 0x3c(r1) -/* 8017DA24 0017A984 48 19 6E D5 */ bl Normalize__9CVector3fFv -/* 8017DA28 0017A988 80 99 08 70 */ lwz r4, 0x870(r25) -/* 8017DA2C 0017A98C 3C 60 80 3F */ lis r3, lbl_803ED910@ha -/* 8017DA30 0017A990 3B B5 00 04 */ addi r29, r21, 4 -/* 8017DA34 0017A994 83 C4 00 7C */ lwz r30, 0x7c(r4) -/* 8017DA38 0017A998 3B E3 D9 10 */ addi r31, r3, lbl_803ED910@l -/* 8017DA3C 0017A99C 48 00 02 44 */ b lbl_8017DC80 -lbl_8017DA40: -/* 8017DA40 0017A9A0 A0 1D 00 00 */ lhz r0, 0(r29) -/* 8017DA44 0017A9A4 7F 23 CB 78 */ mr r3, r25 -/* 8017DA48 0017A9A8 38 81 00 10 */ addi r4, r1, 0x10 -/* 8017DA4C 0017A9AC B0 01 00 10 */ sth r0, 0x10(r1) -/* 8017DA50 0017A9B0 4B EC EB 55 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017DA54 0017A9B4 7C 64 1B 78 */ mr r4, r3 -/* 8017DA58 0017A9B8 38 61 00 14 */ addi r3, r1, 0x14 -/* 8017DA5C 0017A9BC 4B F3 22 35 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8017DA60 0017A9C0 83 83 00 04 */ lwz r28, 4(r3) -/* 8017DA64 0017A9C4 28 1C 00 00 */ cmplwi r28, 0 -/* 8017DA68 0017A9C8 41 82 02 14 */ beq lbl_8017DC7C -/* 8017DA6C 0017A9CC A0 DC 00 08 */ lhz r6, 8(r28) -/* 8017DA70 0017A9D0 A0 14 00 08 */ lhz r0, 8(r20) -/* 8017DA74 0017A9D4 7C 06 00 40 */ cmplw r6, r0 -/* 8017DA78 0017A9D8 41 82 02 04 */ beq lbl_8017DC7C -/* 8017DA7C 0017A9DC B0 C1 00 08 */ sth r6, 8(r1) -/* 8017DA80 0017A9E0 7E 83 A3 78 */ mr r3, r20 -/* 8017DA84 0017A9E4 7F 25 CB 78 */ mr r5, r25 -/* 8017DA88 0017A9E8 38 81 00 0C */ addi r4, r1, 0xc -/* 8017DA8C 0017A9EC B0 C1 00 0C */ sth r6, 0xc(r1) -/* 8017DA90 0017A9F0 48 00 15 ED */ bl ValidateOrbitTargetId__7CPlayerCF9TUniqueIdR13CStateManager -/* 8017DA94 0017A9F4 2C 03 00 00 */ cmpwi r3, 0 -/* 8017DA98 0017A9F8 40 82 01 E4 */ bne lbl_8017DC7C -/* 8017DA9C 0017A9FC 7F 84 E3 78 */ mr r4, r28 -/* 8017DAA0 0017AA00 7F 25 CB 78 */ mr r5, r25 -/* 8017DAA4 0017AA04 81 9C 00 00 */ lwz r12, 0(r28) -/* 8017DAA8 0017AA08 38 61 00 28 */ addi r3, r1, 0x28 -/* 8017DAAC 0017AA0C 81 8C 00 48 */ lwz r12, 0x48(r12) -/* 8017DAB0 0017AA10 7D 89 03 A6 */ mtctr r12 -/* 8017DAB4 0017AA14 4E 80 04 21 */ bctrl -/* 8017DAB8 0017AA18 C0 41 00 28 */ lfs f2, 0x28(r1) -/* 8017DABC 0017AA1C 7F C4 F3 78 */ mr r4, r30 -/* 8017DAC0 0017AA20 C0 21 00 2C */ lfs f1, 0x2c(r1) -/* 8017DAC4 0017AA24 38 61 00 1C */ addi r3, r1, 0x1c -/* 8017DAC8 0017AA28 C0 01 00 30 */ lfs f0, 0x30(r1) -/* 8017DACC 0017AA2C 38 A1 00 58 */ addi r5, r1, 0x58 -/* 8017DAD0 0017AA30 D0 41 00 58 */ stfs f2, 0x58(r1) -/* 8017DAD4 0017AA34 D0 21 00 5C */ stfs f1, 0x5c(r1) -/* 8017DAD8 0017AA38 D0 01 00 60 */ stfs f0, 0x60(r1) -/* 8017DADC 0017AA3C 4B ED FD B5 */ bl ConvertToScreenSpace__11CGameCameraCFRC9CVector3f -/* 8017DAE0 0017AA40 80 7F 00 08 */ lwz r3, 8(r31) -/* 8017DAE4 0017AA44 3C 80 43 30 */ lis r4, 0x4330 -/* 8017DAE8 0017AA48 C1 01 00 1C */ lfs f8, 0x1c(r1) -/* 8017DAEC 0017AA4C 57 40 06 3F */ clrlwi. r0, r26, 0x18 -/* 8017DAF0 0017AA50 6C 65 80 00 */ xoris r5, r3, 0x8000 -/* 8017DAF4 0017AA54 80 DF 00 0C */ lwz r6, 0xc(r31) -/* 8017DAF8 0017AA58 90 A1 00 7C */ stw r5, 0x7c(r1) -/* 8017DAFC 0017AA5C 3B 60 00 00 */ li r27, 0 -/* 8017DB00 0017AA60 6C C3 80 00 */ xoris r3, r6, 0x8000 -/* 8017DB04 0017AA64 C0 E1 00 20 */ lfs f7, 0x20(r1) -/* 8017DB08 0017AA68 90 81 00 78 */ stw r4, 0x78(r1) -/* 8017DB0C 0017AA6C C8 A2 A2 98 */ lfd f5, lbl_805ABFB8@sda21(r2) -/* 8017DB10 0017AA70 C8 01 00 78 */ lfd f0, 0x78(r1) -/* 8017DB14 0017AA74 90 61 00 8C */ stw r3, 0x8c(r1) -/* 8017DB18 0017AA78 EC 20 28 28 */ fsubs f1, f0, f5 -/* 8017DB1C 0017AA7C C0 C1 00 24 */ lfs f6, 0x24(r1) -/* 8017DB20 0017AA80 90 81 00 88 */ stw r4, 0x88(r1) -/* 8017DB24 0017AA84 C0 62 A2 68 */ lfs f3, lbl_805ABF88@sda21(r2) -/* 8017DB28 0017AA88 C8 01 00 88 */ lfd f0, 0x88(r1) -/* 8017DB2C 0017AA8C EC 28 00 72 */ fmuls f1, f8, f1 -/* 8017DB30 0017AA90 90 A1 00 74 */ stw r5, 0x74(r1) -/* 8017DB34 0017AA94 EC 00 28 28 */ fsubs f0, f0, f5 -/* 8017DB38 0017AA98 90 81 00 70 */ stw r4, 0x70(r1) -/* 8017DB3C 0017AA9C EC 41 00 F2 */ fmuls f2, f1, f3 -/* 8017DB40 0017AAA0 C8 21 00 70 */ lfd f1, 0x70(r1) -/* 8017DB44 0017AAA4 EC 07 00 32 */ fmuls f0, f7, f0 -/* 8017DB48 0017AAA8 90 61 00 84 */ stw r3, 0x84(r1) -/* 8017DB4C 0017AAAC EC 81 28 28 */ fsubs f4, f1, f5 -/* 8017DB50 0017AAB0 90 81 00 80 */ stw r4, 0x80(r1) -/* 8017DB54 0017AAB4 EC 00 00 F2 */ fmuls f0, f0, f3 -/* 8017DB58 0017AAB8 C8 21 00 80 */ lfd f1, 0x80(r1) -/* 8017DB5C 0017AABC EC 44 10 FA */ fmadds f2, f4, f3, f2 -/* 8017DB60 0017AAC0 D1 01 00 4C */ stfs f8, 0x4c(r1) -/* 8017DB64 0017AAC4 EC 21 28 28 */ fsubs f1, f1, f5 -/* 8017DB68 0017AAC8 D0 E1 00 50 */ stfs f7, 0x50(r1) -/* 8017DB6C 0017AACC EC 01 00 FA */ fmadds f0, f1, f3, f0 -/* 8017DB70 0017AAD0 D0 C1 00 54 */ stfs f6, 0x54(r1) -/* 8017DB74 0017AAD4 D0 41 00 4C */ stfs f2, 0x4c(r1) -/* 8017DB78 0017AAD8 D0 01 00 50 */ stfs f0, 0x50(r1) -/* 8017DB7C 0017AADC 41 82 00 28 */ beq lbl_8017DBA4 -/* 8017DB80 0017AAE0 7E 83 A3 78 */ mr r3, r20 -/* 8017DB84 0017AAE4 7E E5 BB 78 */ mr r5, r23 -/* 8017DB88 0017AAE8 7F 06 C3 78 */ mr r6, r24 -/* 8017DB8C 0017AAEC 38 81 00 4C */ addi r4, r1, 0x4c -/* 8017DB90 0017AAF0 48 00 01 3D */ bl WithinOrbitScreenBox__7CPlayerCFRC9CVector3fQ27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneType -/* 8017DB94 0017AAF4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017DB98 0017AAF8 41 82 00 0C */ beq lbl_8017DBA4 -/* 8017DB9C 0017AAFC 3B 60 00 01 */ li r27, 1 -/* 8017DBA0 0017AB00 48 00 00 2C */ b lbl_8017DBCC -lbl_8017DBA4: -/* 8017DBA4 0017AB04 57 40 06 3F */ clrlwi. r0, r26, 0x18 -/* 8017DBA8 0017AB08 40 82 00 24 */ bne lbl_8017DBCC -/* 8017DBAC 0017AB0C 7E 83 A3 78 */ mr r3, r20 -/* 8017DBB0 0017AB10 7E E5 BB 78 */ mr r5, r23 -/* 8017DBB4 0017AB14 7F 06 C3 78 */ mr r6, r24 -/* 8017DBB8 0017AB18 38 81 00 4C */ addi r4, r1, 0x4c -/* 8017DBBC 0017AB1C 48 00 01 11 */ bl WithinOrbitScreenBox__7CPlayerCFRC9CVector3fQ27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneType -/* 8017DBC0 0017AB20 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017DBC4 0017AB24 40 82 00 08 */ bne lbl_8017DBCC -/* 8017DBC8 0017AB28 3B 60 00 01 */ li r27, 1 -lbl_8017DBCC: -/* 8017DBCC 0017AB2C 57 60 06 3F */ clrlwi. r0, r27, 0x18 -/* 8017DBD0 0017AB30 41 82 00 AC */ beq lbl_8017DC7C -/* 8017DBD4 0017AB34 C0 41 00 5C */ lfs f2, 0x5c(r1) -/* 8017DBD8 0017AB38 38 61 00 40 */ addi r3, r1, 0x40 -/* 8017DBDC 0017AB3C C0 21 00 60 */ lfs f1, 0x60(r1) -/* 8017DBE0 0017AB40 C0 01 00 58 */ lfs f0, 0x58(r1) -/* 8017DBE4 0017AB44 EC 42 F0 28 */ fsubs f2, f2, f30 -/* 8017DBE8 0017AB48 EC 21 E8 28 */ fsubs f1, f1, f29 -/* 8017DBEC 0017AB4C EC 00 F8 28 */ fsubs f0, f0, f31 -/* 8017DBF0 0017AB50 D0 41 00 44 */ stfs f2, 0x44(r1) -/* 8017DBF4 0017AB54 D0 01 00 40 */ stfs f0, 0x40(r1) -/* 8017DBF8 0017AB58 D0 21 00 48 */ stfs f1, 0x48(r1) -/* 8017DBFC 0017AB5C 48 19 6C BD */ bl Magnitude__9CVector3fCFv -/* 8017DC00 0017AB60 88 1C 00 E7 */ lbz r0, 0xe7(r28) -/* 8017DC04 0017AB64 FF 80 08 90 */ fmr f28, f1 -/* 8017DC08 0017AB68 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f -/* 8017DC0C 0017AB6C 41 82 00 1C */ beq lbl_8017DC28 -/* 8017DC10 0017AB70 7E 83 A3 78 */ mr r3, r20 -/* 8017DC14 0017AB74 7F 24 CB 78 */ mr r4, r25 -/* 8017DC18 0017AB78 48 00 14 41 */ bl GetOrbitMaxTargetDistance__7CPlayerCFRC13CStateManager -/* 8017DC1C 0017AB7C FC 1C 08 40 */ fcmpo cr0, f28, f1 -/* 8017DC20 0017AB80 4C 40 13 82 */ cror 2, 0, 2 -/* 8017DC24 0017AB84 40 82 00 58 */ bne lbl_8017DC7C -lbl_8017DC28: -/* 8017DC28 0017AB88 80 76 00 04 */ lwz r3, 4(r22) -/* 8017DC2C 0017AB8C 80 16 00 08 */ lwz r0, 8(r22) -/* 8017DC30 0017AB90 7C 03 00 00 */ cmpw r3, r0 -/* 8017DC34 0017AB94 41 82 00 48 */ beq lbl_8017DC7C -/* 8017DC38 0017AB98 A3 7C 00 08 */ lhz r27, 8(r28) -/* 8017DC3C 0017AB9C 41 80 00 1C */ blt lbl_8017DC58 -/* 8017DC40 0017ABA0 2C 00 00 00 */ cmpwi r0, 0 -/* 8017DC44 0017ABA4 7E C3 B3 78 */ mr r3, r22 -/* 8017DC48 0017ABA8 38 80 00 04 */ li r4, 4 -/* 8017DC4C 0017ABAC 41 82 00 08 */ beq lbl_8017DC54 -/* 8017DC50 0017ABB0 54 04 08 3C */ slwi r4, r0, 1 -lbl_8017DC54: -/* 8017DC54 0017ABB4 4B E8 E7 B5 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" -lbl_8017DC58: -/* 8017DC58 0017ABB8 80 16 00 04 */ lwz r0, 4(r22) -/* 8017DC5C 0017ABBC 80 76 00 0C */ lwz r3, 0xc(r22) -/* 8017DC60 0017ABC0 54 00 08 3C */ slwi r0, r0, 1 -/* 8017DC64 0017ABC4 7C 63 02 15 */ add. r3, r3, r0 -/* 8017DC68 0017ABC8 41 82 00 08 */ beq lbl_8017DC70 -/* 8017DC6C 0017ABCC B3 63 00 00 */ sth r27, 0(r3) -lbl_8017DC70: -/* 8017DC70 0017ABD0 80 76 00 04 */ lwz r3, 4(r22) -/* 8017DC74 0017ABD4 38 03 00 01 */ addi r0, r3, 1 -/* 8017DC78 0017ABD8 90 16 00 04 */ stw r0, 4(r22) -lbl_8017DC7C: -/* 8017DC7C 0017ABDC 3B BD 00 02 */ addi r29, r29, 2 -lbl_8017DC80: -/* 8017DC80 0017ABE0 80 15 00 00 */ lwz r0, 0(r21) -/* 8017DC84 0017ABE4 54 00 08 3C */ slwi r0, r0, 1 -/* 8017DC88 0017ABE8 7C 75 02 14 */ add r3, r21, r0 -/* 8017DC8C 0017ABEC 38 03 00 04 */ addi r0, r3, 4 -/* 8017DC90 0017ABF0 7C 1D 00 40 */ cmplw r29, r0 -/* 8017DC94 0017ABF4 40 82 FD AC */ bne lbl_8017DA40 -/* 8017DC98 0017ABF8 E3 E1 00 F8 */ psq_l f31, 248(r1), 0, qr0 -/* 8017DC9C 0017ABFC CB E1 00 F0 */ lfd f31, 0xf0(r1) -/* 8017DCA0 0017AC00 E3 C1 00 E8 */ psq_l f30, 232(r1), 0, qr0 -/* 8017DCA4 0017AC04 CB C1 00 E0 */ lfd f30, 0xe0(r1) -/* 8017DCA8 0017AC08 E3 A1 00 D8 */ psq_l f29, 216(r1), 0, qr0 -/* 8017DCAC 0017AC0C CB A1 00 D0 */ lfd f29, 0xd0(r1) -/* 8017DCB0 0017AC10 E3 81 00 C8 */ psq_l f28, 200(r1), 0, qr0 -/* 8017DCB4 0017AC14 CB 81 00 C0 */ lfd f28, 0xc0(r1) -/* 8017DCB8 0017AC18 BA 81 00 90 */ lmw r20, 0x90(r1) -/* 8017DCBC 0017AC1C 80 01 01 04 */ lwz r0, 0x104(r1) -/* 8017DCC0 0017AC20 7C 08 03 A6 */ mtlr r0 -/* 8017DCC4 0017AC24 38 21 01 00 */ addi r1, r1, 0x100 -/* 8017DCC8 0017AC28 4E 80 00 20 */ blr - -.global WithinOrbitScreenBox__7CPlayerCFRC9CVector3fQ27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneType -WithinOrbitScreenBox__7CPlayerCFRC9CVector3fQ27CPlayer15EPlayerZoneInfoQ27CPlayer15EPlayerZoneType: -/* 8017DCCC 0017AC2C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8017DCD0 0017AC30 7C 08 02 A6 */ mflr r0 -/* 8017DCD4 0017AC34 C0 62 A2 4C */ lfs f3, lbl_805ABF6C@sda21(r2) -/* 8017DCD8 0017AC38 90 01 00 24 */ stw r0, 0x24(r1) -/* 8017DCDC 0017AC3C C0 84 00 08 */ lfs f4, 8(r4) -/* 8017DCE0 0017AC40 FC 04 18 40 */ fcmpo cr0, f4, f3 -/* 8017DCE4 0017AC44 4C 41 13 82 */ cror 2, 1, 2 -/* 8017DCE8 0017AC48 40 82 00 0C */ bne lbl_8017DCF4 -/* 8017DCEC 0017AC4C 38 60 00 00 */ li r3, 0 -/* 8017DCF0 0017AC50 48 00 00 EC */ b lbl_8017DDDC -lbl_8017DCF4: -/* 8017DCF4 0017AC54 2C 06 00 01 */ cmpwi r6, 1 -/* 8017DCF8 0017AC58 41 82 00 D0 */ beq lbl_8017DDC8 -/* 8017DCFC 0017AC5C 40 80 00 D4 */ bge lbl_8017DDD0 -/* 8017DD00 0017AC60 2C 06 00 00 */ cmpwi r6, 0 -/* 8017DD04 0017AC64 40 80 00 08 */ bge lbl_8017DD0C -/* 8017DD08 0017AC68 48 00 00 C8 */ b lbl_8017DDD0 -lbl_8017DD0C: -/* 8017DD0C 0017AC6C 80 0D A1 18 */ lwz r0, gpTweakPlayer@sda21(r13) -/* 8017DD10 0017AC70 3C C0 43 30 */ lis r6, 0x4330 -/* 8017DD14 0017AC74 54 A3 10 3A */ slwi r3, r5, 2 -/* 8017DD18 0017AC78 90 C1 00 08 */ stw r6, 8(r1) -/* 8017DD1C 0017AC7C 7C A0 1A 14 */ add r5, r0, r3 -/* 8017DD20 0017AC80 C8 42 A2 98 */ lfd f2, lbl_805ABFB8@sda21(r2) -/* 8017DD24 0017AC84 80 05 01 B8 */ lwz r0, 0x1b8(r5) -/* 8017DD28 0017AC88 80 65 01 A8 */ lwz r3, 0x1a8(r5) -/* 8017DD2C 0017AC8C 6C 00 80 00 */ xoris r0, r0, 0x8000 -/* 8017DD30 0017AC90 C0 24 00 00 */ lfs f1, 0(r4) -/* 8017DD34 0017AC94 90 01 00 0C */ stw r0, 0xc(r1) -/* 8017DD38 0017AC98 6C 60 80 00 */ xoris r0, r3, 0x8000 -/* 8017DD3C 0017AC9C C8 01 00 08 */ lfd f0, 8(r1) -/* 8017DD40 0017ACA0 90 01 00 14 */ stw r0, 0x14(r1) -/* 8017DD44 0017ACA4 EC 00 10 28 */ fsubs f0, f0, f2 -/* 8017DD48 0017ACA8 90 C1 00 10 */ stw r6, 0x10(r1) -/* 8017DD4C 0017ACAC EC 21 00 28 */ fsubs f1, f1, f0 -/* 8017DD50 0017ACB0 C8 01 00 10 */ lfd f0, 0x10(r1) -/* 8017DD54 0017ACB4 EC 00 10 28 */ fsubs f0, f0, f2 -/* 8017DD58 0017ACB8 FC 20 0A 10 */ fabs f1, f1 -/* 8017DD5C 0017ACBC FC 20 08 18 */ frsp f1, f1 -/* 8017DD60 0017ACC0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017DD64 0017ACC4 4C 40 13 82 */ cror 2, 0, 2 -/* 8017DD68 0017ACC8 40 82 00 70 */ bne lbl_8017DDD8 -/* 8017DD6C 0017ACCC 80 65 01 C0 */ lwz r3, 0x1c0(r5) -/* 8017DD70 0017ACD0 80 05 01 B0 */ lwz r0, 0x1b0(r5) -/* 8017DD74 0017ACD4 6C 63 80 00 */ xoris r3, r3, 0x8000 -/* 8017DD78 0017ACD8 90 C1 00 10 */ stw r6, 0x10(r1) -/* 8017DD7C 0017ACDC 6C 00 80 00 */ xoris r0, r0, 0x8000 -/* 8017DD80 0017ACE0 C0 24 00 04 */ lfs f1, 4(r4) -/* 8017DD84 0017ACE4 90 61 00 14 */ stw r3, 0x14(r1) -/* 8017DD88 0017ACE8 C8 01 00 10 */ lfd f0, 0x10(r1) -/* 8017DD8C 0017ACEC 90 01 00 0C */ stw r0, 0xc(r1) -/* 8017DD90 0017ACF0 EC 00 10 28 */ fsubs f0, f0, f2 -/* 8017DD94 0017ACF4 90 C1 00 08 */ stw r6, 8(r1) -/* 8017DD98 0017ACF8 EC 21 00 28 */ fsubs f1, f1, f0 -/* 8017DD9C 0017ACFC C8 01 00 08 */ lfd f0, 8(r1) -/* 8017DDA0 0017AD00 EC 00 10 28 */ fsubs f0, f0, f2 -/* 8017DDA4 0017AD04 FC 20 0A 10 */ fabs f1, f1 -/* 8017DDA8 0017AD08 FC 20 08 18 */ frsp f1, f1 -/* 8017DDAC 0017AD0C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017DDB0 0017AD10 4C 40 13 82 */ cror 2, 0, 2 -/* 8017DDB4 0017AD14 40 82 00 24 */ bne lbl_8017DDD8 -/* 8017DDB8 0017AD18 FC 04 18 40 */ fcmpo cr0, f4, f3 -/* 8017DDBC 0017AD1C 40 80 00 1C */ bge lbl_8017DDD8 -/* 8017DDC0 0017AD20 38 60 00 01 */ li r3, 1 -/* 8017DDC4 0017AD24 48 00 00 18 */ b lbl_8017DDDC -lbl_8017DDC8: -/* 8017DDC8 0017AD28 48 00 00 25 */ bl WithinOrbitScreenEllipse__7CPlayerCFRC9CVector3fQ27CPlayer15EPlayerZoneInfo -/* 8017DDCC 0017AD2C 48 00 00 10 */ b lbl_8017DDDC -lbl_8017DDD0: -/* 8017DDD0 0017AD30 38 60 00 01 */ li r3, 1 -/* 8017DDD4 0017AD34 48 00 00 08 */ b lbl_8017DDDC -lbl_8017DDD8: -/* 8017DDD8 0017AD38 38 60 00 00 */ li r3, 0 -lbl_8017DDDC: -/* 8017DDDC 0017AD3C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8017DDE0 0017AD40 7C 08 03 A6 */ mtlr r0 -/* 8017DDE4 0017AD44 38 21 00 20 */ addi r1, r1, 0x20 -/* 8017DDE8 0017AD48 4E 80 00 20 */ blr - -.global WithinOrbitScreenEllipse__7CPlayerCFRC9CVector3fQ27CPlayer15EPlayerZoneInfo -WithinOrbitScreenEllipse__7CPlayerCFRC9CVector3fQ27CPlayer15EPlayerZoneInfo: -/* 8017DDEC 0017AD4C 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8017DDF0 0017AD50 C0 A2 A2 4C */ lfs f5, lbl_805ABF6C@sda21(r2) -/* 8017DDF4 0017AD54 C0 04 00 08 */ lfs f0, 8(r4) -/* 8017DDF8 0017AD58 FC 00 28 40 */ fcmpo cr0, f0, f5 -/* 8017DDFC 0017AD5C 4C 41 13 82 */ cror 2, 1, 2 -/* 8017DE00 0017AD60 40 82 00 0C */ bne lbl_8017DE0C -/* 8017DE04 0017AD64 38 60 00 00 */ li r3, 0 -/* 8017DE08 0017AD68 48 00 00 C4 */ b lbl_8017DECC -lbl_8017DE0C: -/* 8017DE0C 0017AD6C 80 0D A1 18 */ lwz r0, gpTweakPlayer@sda21(r13) -/* 8017DE10 0017AD70 3C C0 43 30 */ lis r6, 0x4330 -/* 8017DE14 0017AD74 54 A3 10 3A */ slwi r3, r5, 2 -/* 8017DE18 0017AD78 90 C1 00 10 */ stw r6, 0x10(r1) -/* 8017DE1C 0017AD7C 7C 60 1A 14 */ add r3, r0, r3 -/* 8017DE20 0017AD80 C8 62 A2 98 */ lfd f3, lbl_805ABFB8@sda21(r2) -/* 8017DE24 0017AD84 80 03 01 C0 */ lwz r0, 0x1c0(r3) -/* 8017DE28 0017AD88 80 A3 01 B8 */ lwz r5, 0x1b8(r3) -/* 8017DE2C 0017AD8C 6C 00 80 00 */ xoris r0, r0, 0x8000 -/* 8017DE30 0017AD90 80 E3 01 B0 */ lwz r7, 0x1b0(r3) -/* 8017DE34 0017AD94 90 01 00 14 */ stw r0, 0x14(r1) -/* 8017DE38 0017AD98 6C A5 80 00 */ xoris r5, r5, 0x8000 -/* 8017DE3C 0017AD9C 7C 07 39 D6 */ mullw r0, r7, r7 -/* 8017DE40 0017ADA0 80 63 01 A8 */ lwz r3, 0x1a8(r3) -/* 8017DE44 0017ADA4 C8 01 00 10 */ lfd f0, 0x10(r1) -/* 8017DE48 0017ADA8 C0 24 00 04 */ lfs f1, 4(r4) -/* 8017DE4C 0017ADAC EC 00 18 28 */ fsubs f0, f0, f3 -/* 8017DE50 0017ADB0 90 C1 00 20 */ stw r6, 0x20(r1) -/* 8017DE54 0017ADB4 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8017DE58 0017ADB8 6C 00 80 00 */ xoris r0, r0, 0x8000 -/* 8017DE5C 0017ADBC 90 01 00 24 */ stw r0, 0x24(r1) -/* 8017DE60 0017ADC0 7C 63 19 D6 */ mullw r3, r3, r3 -/* 8017DE64 0017ADC4 C0 84 00 00 */ lfs f4, 0(r4) -/* 8017DE68 0017ADC8 FC 20 02 10 */ fabs f1, f0 -/* 8017DE6C 0017ADCC C8 01 00 20 */ lfd f0, 0x20(r1) -/* 8017DE70 0017ADD0 90 A1 00 0C */ stw r5, 0xc(r1) -/* 8017DE74 0017ADD4 FC 20 08 18 */ frsp f1, f1 -/* 8017DE78 0017ADD8 90 C1 00 08 */ stw r6, 8(r1) -/* 8017DE7C 0017ADDC 6C 60 80 00 */ xoris r0, r3, 0x8000 -/* 8017DE80 0017ADE0 EC 00 18 28 */ fsubs f0, f0, f3 -/* 8017DE84 0017ADE4 EC 21 00 72 */ fmuls f1, f1, f1 -/* 8017DE88 0017ADE8 C8 41 00 08 */ lfd f2, 8(r1) -/* 8017DE8C 0017ADEC 90 01 00 1C */ stw r0, 0x1c(r1) -/* 8017DE90 0017ADF0 EC 42 18 28 */ fsubs f2, f2, f3 -/* 8017DE94 0017ADF4 EC 01 00 24 */ fdivs f0, f1, f0 -/* 8017DE98 0017ADF8 90 C1 00 18 */ stw r6, 0x18(r1) -/* 8017DE9C 0017ADFC C8 21 00 18 */ lfd f1, 0x18(r1) -/* 8017DEA0 0017AE00 EC 44 10 28 */ fsubs f2, f4, f2 -/* 8017DEA4 0017AE04 EC 21 18 28 */ fsubs f1, f1, f3 -/* 8017DEA8 0017AE08 EC 05 00 28 */ fsubs f0, f5, f0 -/* 8017DEAC 0017AE0C FC 40 12 10 */ fabs f2, f2 -/* 8017DEB0 0017AE10 EC 01 00 32 */ fmuls f0, f1, f0 -/* 8017DEB4 0017AE14 FC 20 10 18 */ frsp f1, f2 -/* 8017DEB8 0017AE18 EC 21 00 72 */ fmuls f1, f1, f1 -/* 8017DEBC 0017AE1C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017DEC0 0017AE20 4C 40 13 82 */ cror 2, 0, 2 -/* 8017DEC4 0017AE24 7C 00 00 26 */ mfcr r0 -/* 8017DEC8 0017AE28 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f -lbl_8017DECC: -/* 8017DECC 0017AE2C 38 21 00 30 */ addi r1, r1, 0x30 -/* 8017DED0 0017AE30 4E 80 00 20 */ blr - -.global CheckOrbitDisableSourceList__7CPlayerFRC13CStateManager -CheckOrbitDisableSourceList__7CPlayerFRC13CStateManager: -/* 8017DED4 0017AE34 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8017DED8 0017AE38 7C 08 02 A6 */ mflr r0 -/* 8017DEDC 0017AE3C 90 01 00 24 */ stw r0, 0x24(r1) -/* 8017DEE0 0017AE40 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8017DEE4 0017AE44 7C 9F 23 78 */ mr r31, r4 -/* 8017DEE8 0017AE48 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8017DEEC 0017AE4C 7C 7E 1B 78 */ mr r30, r3 -/* 8017DEF0 0017AE50 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8017DEF4 0017AE54 3B BE 09 E8 */ addi r29, r30, 0x9e8 -/* 8017DEF8 0017AE58 93 81 00 10 */ stw r28, 0x10(r1) -/* 8017DEFC 0017AE5C 7F BC EB 78 */ mr r28, r29 -/* 8017DF00 0017AE60 48 00 00 7C */ b lbl_8017DF7C -lbl_8017DF04: -/* 8017DF04 0017AE64 A0 1C 00 00 */ lhz r0, 0(r28) -/* 8017DF08 0017AE68 7F E3 FB 78 */ mr r3, r31 -/* 8017DF0C 0017AE6C 38 81 00 08 */ addi r4, r1, 8 -/* 8017DF10 0017AE70 B0 01 00 08 */ sth r0, 8(r1) -/* 8017DF14 0017AE74 4B EC E6 91 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017DF18 0017AE78 28 03 00 00 */ cmplwi r3, 0 -/* 8017DF1C 0017AE7C 40 82 00 5C */ bne lbl_8017DF78 -/* 8017DF20 0017AE80 7C 1C E8 40 */ cmplw r28, r29 -/* 8017DF24 0017AE84 41 80 00 4C */ blt lbl_8017DF70 -/* 8017DF28 0017AE88 80 1E 09 E4 */ lwz r0, 0x9e4(r30) -/* 8017DF2C 0017AE8C 54 00 08 3C */ slwi r0, r0, 1 -/* 8017DF30 0017AE90 7C 1D 02 14 */ add r0, r29, r0 -/* 8017DF34 0017AE94 7C 1C 00 40 */ cmplw r28, r0 -/* 8017DF38 0017AE98 40 80 00 38 */ bge lbl_8017DF70 -/* 8017DF3C 0017AE9C 7F 85 E3 78 */ mr r5, r28 -/* 8017DF40 0017AEA0 48 00 00 10 */ b lbl_8017DF50 -lbl_8017DF44: -/* 8017DF44 0017AEA4 A0 05 00 02 */ lhz r0, 2(r5) -/* 8017DF48 0017AEA8 B0 05 00 00 */ sth r0, 0(r5) -/* 8017DF4C 0017AEAC 38 A5 00 02 */ addi r5, r5, 2 -lbl_8017DF50: -/* 8017DF50 0017AEB0 80 9E 09 E4 */ lwz r4, 0x9e4(r30) -/* 8017DF54 0017AEB4 54 83 08 3C */ slwi r3, r4, 1 -/* 8017DF58 0017AEB8 38 03 FF FE */ addi r0, r3, -2 -/* 8017DF5C 0017AEBC 7C 1D 02 14 */ add r0, r29, r0 -/* 8017DF60 0017AEC0 7C 05 00 40 */ cmplw r5, r0 -/* 8017DF64 0017AEC4 41 80 FF E0 */ blt lbl_8017DF44 -/* 8017DF68 0017AEC8 38 04 FF FF */ addi r0, r4, -1 -/* 8017DF6C 0017AECC 90 1E 09 E4 */ stw r0, 0x9e4(r30) -lbl_8017DF70: -/* 8017DF70 0017AED0 7F BC EB 78 */ mr r28, r29 -/* 8017DF74 0017AED4 48 00 00 08 */ b lbl_8017DF7C -lbl_8017DF78: -/* 8017DF78 0017AED8 3B 9C 00 02 */ addi r28, r28, 2 -lbl_8017DF7C: -/* 8017DF7C 0017AEDC 80 7E 09 E4 */ lwz r3, 0x9e4(r30) -/* 8017DF80 0017AEE0 54 60 08 3C */ slwi r0, r3, 1 -/* 8017DF84 0017AEE4 7C 1D 02 14 */ add r0, r29, r0 -/* 8017DF88 0017AEE8 7C 1C 00 40 */ cmplw r28, r0 -/* 8017DF8C 0017AEEC 40 82 FF 78 */ bne lbl_8017DF04 -/* 8017DF90 0017AEF0 7C 03 00 D0 */ neg r0, r3 -/* 8017DF94 0017AEF4 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8017DF98 0017AEF8 7C 00 1B 78 */ or r0, r0, r3 -/* 8017DF9C 0017AEFC 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8017DFA0 0017AF00 54 03 0F FE */ srwi r3, r0, 0x1f -/* 8017DFA4 0017AF04 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8017DFA8 0017AF08 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 8017DFAC 0017AF0C 83 81 00 10 */ lwz r28, 0x10(r1) -/* 8017DFB0 0017AF10 7C 08 03 A6 */ mtlr r0 -/* 8017DFB4 0017AF14 38 21 00 20 */ addi r1, r1, 0x20 -/* 8017DFB8 0017AF18 4E 80 00 20 */ blr - -.global CheckOrbitDisableSourceList__7CPlayerCFv -CheckOrbitDisableSourceList__7CPlayerCFv: -/* 8017DFBC 0017AF1C 80 63 09 E4 */ lwz r3, 0x9e4(r3) -/* 8017DFC0 0017AF20 7C 03 00 D0 */ neg r0, r3 -/* 8017DFC4 0017AF24 7C 00 1B 78 */ or r0, r0, r3 -/* 8017DFC8 0017AF28 54 03 0F FE */ srwi r3, r0, 0x1f -/* 8017DFCC 0017AF2C 4E 80 00 20 */ blr - -.global RemoveOrbitDisableSource__7CPlayerF9TUniqueId -RemoveOrbitDisableSource__7CPlayerF9TUniqueId: -/* 8017DFD0 0017AF30 80 03 09 E4 */ lwz r0, 0x9e4(r3) -/* 8017DFD4 0017AF34 38 E3 09 E8 */ addi r7, r3, 0x9e8 -/* 8017DFD8 0017AF38 7C E8 3B 78 */ mr r8, r7 -/* 8017DFDC 0017AF3C 54 00 08 3C */ slwi r0, r0, 1 -/* 8017DFE0 0017AF40 7C C7 02 14 */ add r6, r7, r0 -/* 8017DFE4 0017AF44 48 00 00 60 */ b lbl_8017E044 -lbl_8017DFE8: -/* 8017DFE8 0017AF48 A0 A8 00 00 */ lhz r5, 0(r8) -/* 8017DFEC 0017AF4C A0 04 00 00 */ lhz r0, 0(r4) -/* 8017DFF0 0017AF50 7C 05 00 40 */ cmplw r5, r0 -/* 8017DFF4 0017AF54 40 82 00 4C */ bne lbl_8017E040 -/* 8017DFF8 0017AF58 7C 08 38 40 */ cmplw r8, r7 -/* 8017DFFC 0017AF5C 4D 80 00 20 */ bltlr -/* 8017E000 0017AF60 7C 08 30 40 */ cmplw r8, r6 -/* 8017E004 0017AF64 4C 80 00 20 */ bgelr -/* 8017E008 0017AF68 7D 06 43 78 */ mr r6, r8 -/* 8017E00C 0017AF6C 48 00 00 10 */ b lbl_8017E01C -lbl_8017E010: -/* 8017E010 0017AF70 A0 06 00 02 */ lhz r0, 2(r6) -/* 8017E014 0017AF74 B0 06 00 00 */ sth r0, 0(r6) -/* 8017E018 0017AF78 38 C6 00 02 */ addi r6, r6, 2 -lbl_8017E01C: -/* 8017E01C 0017AF7C 80 A3 09 E4 */ lwz r5, 0x9e4(r3) -/* 8017E020 0017AF80 54 A4 08 3C */ slwi r4, r5, 1 -/* 8017E024 0017AF84 38 04 FF FE */ addi r0, r4, -2 -/* 8017E028 0017AF88 7C 07 02 14 */ add r0, r7, r0 -/* 8017E02C 0017AF8C 7C 06 00 40 */ cmplw r6, r0 -/* 8017E030 0017AF90 41 80 FF E0 */ blt lbl_8017E010 -/* 8017E034 0017AF94 38 05 FF FF */ addi r0, r5, -1 -/* 8017E038 0017AF98 90 03 09 E4 */ stw r0, 0x9e4(r3) -/* 8017E03C 0017AF9C 4E 80 00 20 */ blr -lbl_8017E040: -/* 8017E040 0017AFA0 39 08 00 02 */ addi r8, r8, 2 -lbl_8017E044: -/* 8017E044 0017AFA4 7C 08 30 40 */ cmplw r8, r6 -/* 8017E048 0017AFA8 40 82 FF A0 */ bne lbl_8017DFE8 - -.global sub_8017e04c -sub_8017e04c: -/* 8017E04C 0017AFAC 4E 80 00 20 */ blr - -.global AddOrbitDisableSource__7CPlayerFR13CStateManager9TUniqueId -AddOrbitDisableSource__7CPlayerFR13CStateManager9TUniqueId: -/* 8017E050 0017AFB0 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8017E054 0017AFB4 7C 08 02 A6 */ mflr r0 -/* 8017E058 0017AFB8 90 01 00 34 */ stw r0, 0x34(r1) -/* 8017E05C 0017AFBC 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8017E060 0017AFC0 7C 9F 23 78 */ mr r31, r4 -/* 8017E064 0017AFC4 93 C1 00 28 */ stw r30, 0x28(r1) -/* 8017E068 0017AFC8 7C 7E 1B 78 */ mr r30, r3 -/* 8017E06C 0017AFCC 80 03 09 E4 */ lwz r0, 0x9e4(r3) -/* 8017E070 0017AFD0 2C 00 00 05 */ cmpwi r0, 5 -/* 8017E074 0017AFD4 40 80 00 AC */ bge lbl_8017E120 -/* 8017E078 0017AFD8 38 7E 09 E8 */ addi r3, r30, 0x9e8 -/* 8017E07C 0017AFDC 54 00 08 3C */ slwi r0, r0, 1 -/* 8017E080 0017AFE0 7C 66 1B 78 */ mr r6, r3 -/* 8017E084 0017AFE4 7C 83 02 14 */ add r4, r3, r0 -/* 8017E088 0017AFE8 48 00 00 18 */ b lbl_8017E0A0 -lbl_8017E08C: -/* 8017E08C 0017AFEC A0 66 00 00 */ lhz r3, 0(r6) -/* 8017E090 0017AFF0 A0 05 00 00 */ lhz r0, 0(r5) -/* 8017E094 0017AFF4 7C 03 00 40 */ cmplw r3, r0 -/* 8017E098 0017AFF8 41 82 00 88 */ beq lbl_8017E120 -/* 8017E09C 0017AFFC 38 C6 00 02 */ addi r6, r6, 2 -lbl_8017E0A0: -/* 8017E0A0 0017B000 7C 06 20 40 */ cmplw r6, r4 -/* 8017E0A4 0017B004 40 82 FF E8 */ bne lbl_8017E08C -/* 8017E0A8 0017B008 28 04 00 00 */ cmplwi r4, 0 -/* 8017E0AC 0017B00C 41 82 00 0C */ beq lbl_8017E0B8 -/* 8017E0B0 0017B010 A0 05 00 00 */ lhz r0, 0(r5) -/* 8017E0B4 0017B014 B0 04 00 00 */ sth r0, 0(r4) -lbl_8017E0B8: -/* 8017E0B8 0017B018 80 BE 09 E4 */ lwz r5, 0x9e4(r30) -/* 8017E0BC 0017B01C 7F C3 F3 78 */ mr r3, r30 -/* 8017E0C0 0017B020 38 81 00 10 */ addi r4, r1, 0x10 -/* 8017E0C4 0017B024 38 05 00 01 */ addi r0, r5, 1 -/* 8017E0C8 0017B028 90 1E 09 E4 */ stw r0, 0x9e4(r30) -/* 8017E0CC 0017B02C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017E0D0 0017B030 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8017E0D4 0017B034 4B E9 BC D1 */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId -/* 8017E0D8 0017B038 A0 1E 03 10 */ lhz r0, 0x310(r30) -/* 8017E0DC 0017B03C 7F E3 FB 78 */ mr r3, r31 -/* 8017E0E0 0017B040 38 81 00 0C */ addi r4, r1, 0xc -/* 8017E0E4 0017B044 B0 01 00 14 */ sth r0, 0x14(r1) -/* 8017E0E8 0017B048 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8017E0EC 0017B04C 4B EC E4 B9 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017E0F0 0017B050 7C 64 1B 78 */ mr r4, r3 -/* 8017E0F4 0017B054 38 61 00 18 */ addi r3, r1, 0x18 -/* 8017E0F8 0017B058 4B F2 B9 D1 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" -/* 8017E0FC 0017B05C 80 03 00 04 */ lwz r0, 4(r3) -/* 8017E100 0017B060 28 00 00 00 */ cmplwi r0, 0 -/* 8017E104 0017B064 40 82 00 1C */ bne lbl_8017E120 -/* 8017E108 0017B068 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017E10C 0017B06C 7F C3 F3 78 */ mr r3, r30 -/* 8017E110 0017B070 7F E5 FB 78 */ mr r5, r31 -/* 8017E114 0017B074 38 81 00 08 */ addi r4, r1, 8 -/* 8017E118 0017B078 B0 01 00 08 */ sth r0, 8(r1) -/* 8017E11C 0017B07C 4B FF D4 D1 */ bl SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager -lbl_8017E120: -/* 8017E120 0017B080 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8017E124 0017B084 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8017E128 0017B088 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 8017E12C 0017B08C 7C 08 03 A6 */ mtlr r0 -/* 8017E130 0017B090 38 21 00 30 */ addi r1, r1, 0x30 -/* 8017E134 0017B094 4E 80 00 20 */ blr - -.global UpdateOrbitPreventionTimer__7CPlayerFf -UpdateOrbitPreventionTimer__7CPlayerFf: -/* 8017E138 0017B098 C0 43 03 78 */ lfs f2, 0x378(r3) -/* 8017E13C 0017B09C C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017E140 0017B0A0 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8017E144 0017B0A4 4C 81 00 20 */ blelr -/* 8017E148 0017B0A8 EC 02 08 28 */ fsubs f0, f2, f1 -/* 8017E14C 0017B0AC D0 03 03 78 */ stfs f0, 0x378(r3) -/* 8017E150 0017B0B0 4E 80 00 20 */ blr - -.global UpdateOrbitModeTimer__7CPlayerFf -UpdateOrbitModeTimer__7CPlayerFf: -/* 8017E154 0017B0B4 80 03 03 04 */ lwz r0, 0x304(r3) -/* 8017E158 0017B0B8 2C 00 00 00 */ cmpwi r0, 0 -/* 8017E15C 0017B0BC 40 82 00 20 */ bne lbl_8017E17C -/* 8017E160 0017B0C0 C0 43 03 2C */ lfs f2, 0x32c(r3) -/* 8017E164 0017B0C4 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017E168 0017B0C8 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8017E16C 0017B0CC 40 81 00 10 */ ble lbl_8017E17C -/* 8017E170 0017B0D0 EC 02 08 28 */ fsubs f0, f2, f1 -/* 8017E174 0017B0D4 D0 03 03 2C */ stfs f0, 0x32c(r3) -/* 8017E178 0017B0D8 4E 80 00 20 */ blr -lbl_8017E17C: -/* 8017E17C 0017B0DC C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017E180 0017B0E0 D0 03 03 2C */ stfs f0, 0x32c(r3) -/* 8017E184 0017B0E4 4E 80 00 20 */ blr - -.global UpdateOrbitZone__7CPlayerFR13CStateManager -UpdateOrbitZone__7CPlayerFR13CStateManager: -/* 8017E188 0017B0E8 80 84 08 B8 */ lwz r4, 0x8b8(r4) -/* 8017E18C 0017B0EC 80 84 00 00 */ lwz r4, 0(r4) -/* 8017E190 0017B0F0 80 04 00 14 */ lwz r0, 0x14(r4) -/* 8017E194 0017B0F4 2C 00 00 02 */ cmpwi r0, 2 -/* 8017E198 0017B0F8 41 82 00 1C */ beq lbl_8017E1B4 -/* 8017E19C 0017B0FC 38 80 00 01 */ li r4, 1 -/* 8017E1A0 0017B100 38 00 00 00 */ li r0, 0 -/* 8017E1A4 0017B104 90 83 03 34 */ stw r4, 0x334(r3) -/* 8017E1A8 0017B108 90 83 03 38 */ stw r4, 0x338(r3) -/* 8017E1AC 0017B10C 90 03 03 30 */ stw r0, 0x330(r3) -/* 8017E1B0 0017B110 4E 80 00 20 */ blr -lbl_8017E1B4: -/* 8017E1B4 0017B114 38 00 00 00 */ li r0, 0 -/* 8017E1B8 0017B118 38 80 00 02 */ li r4, 2 -/* 8017E1BC 0017B11C 90 03 03 34 */ stw r0, 0x334(r3) -/* 8017E1C0 0017B120 38 00 00 01 */ li r0, 1 -/* 8017E1C4 0017B124 90 83 03 38 */ stw r4, 0x338(r3) -/* 8017E1C8 0017B128 90 03 03 30 */ stw r0, 0x330(r3) -/* 8017E1CC 0017B12C 4E 80 00 20 */ blr - -.global UpdateOrbitInput__7CPlayerFRC11CFinalInputR13CStateManager -UpdateOrbitInput__7CPlayerFRC11CFinalInputR13CStateManager: -/* 8017E1D0 0017B130 94 21 FF 70 */ stwu r1, -0x90(r1) -/* 8017E1D4 0017B134 7C 08 02 A6 */ mflr r0 -/* 8017E1D8 0017B138 90 01 00 94 */ stw r0, 0x94(r1) -/* 8017E1DC 0017B13C 93 E1 00 8C */ stw r31, 0x8c(r1) -/* 8017E1E0 0017B140 7C BF 2B 78 */ mr r31, r5 -/* 8017E1E4 0017B144 93 C1 00 88 */ stw r30, 0x88(r1) -/* 8017E1E8 0017B148 7C 9E 23 78 */ mr r30, r4 -/* 8017E1EC 0017B14C 93 A1 00 84 */ stw r29, 0x84(r1) -/* 8017E1F0 0017B150 7C 7D 1B 78 */ mr r29, r3 -/* 8017E1F4 0017B154 80 03 02 F8 */ lwz r0, 0x2f8(r3) -/* 8017E1F8 0017B158 2C 00 00 00 */ cmpwi r0, 0 -/* 8017E1FC 0017B15C 40 82 06 CC */ bne lbl_8017E8C8 -/* 8017E200 0017B160 C0 3D 03 78 */ lfs f1, 0x378(r29) -/* 8017E204 0017B164 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017E208 0017B168 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017E20C 0017B16C 41 81 06 BC */ bgt lbl_8017E8C8 -/* 8017E210 0017B170 7F E4 FB 78 */ mr r4, r31 -/* 8017E214 0017B174 4B FF EA 95 */ bl UpdateOrbitableObjects__7CPlayerFR13CStateManager -/* 8017E218 0017B178 80 1D 03 04 */ lwz r0, 0x304(r29) -/* 8017E21C 0017B17C 2C 00 00 00 */ cmpwi r0, 0 -/* 8017E220 0017B180 40 82 00 20 */ bne lbl_8017E240 -/* 8017E224 0017B184 7F A4 EB 78 */ mr r4, r29 -/* 8017E228 0017B188 7F E5 FB 78 */ mr r5, r31 -/* 8017E22C 0017B18C 38 61 00 68 */ addi r3, r1, 0x68 -/* 8017E230 0017B190 4B FF EA 41 */ bl FindOrbitTargetId__7CPlayerFR13CStateManager -/* 8017E234 0017B194 A0 01 00 68 */ lhz r0, 0x68(r1) -/* 8017E238 0017B198 B0 01 00 6C */ sth r0, 0x6c(r1) -/* 8017E23C 0017B19C B0 1D 03 3C */ sth r0, 0x33c(r29) -lbl_8017E240: -/* 8017E240 0017B1A0 7F C4 F3 78 */ mr r4, r30 -/* 8017E244 0017B1A4 38 60 00 18 */ li r3, 0x18 -/* 8017E248 0017B1A8 4B E8 E6 2D */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput -/* 8017E24C 0017B1AC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017E250 0017B1B0 40 82 00 2C */ bne lbl_8017E27C -/* 8017E254 0017B1B4 7F C4 F3 78 */ mr r4, r30 -/* 8017E258 0017B1B8 38 60 00 19 */ li r3, 0x19 -/* 8017E25C 0017B1BC 4B E8 E6 19 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput -/* 8017E260 0017B1C0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017E264 0017B1C4 40 82 00 18 */ bne lbl_8017E27C -/* 8017E268 0017B1C8 7F C4 F3 78 */ mr r4, r30 -/* 8017E26C 0017B1CC 38 60 00 1A */ li r3, 0x1a -/* 8017E270 0017B1D0 4B E8 E6 05 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput -/* 8017E274 0017B1D4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017E278 0017B1D8 41 82 05 28 */ beq lbl_8017E7A0 -lbl_8017E27C: -/* 8017E27C 0017B1DC 80 1D 03 04 */ lwz r0, 0x304(r29) -/* 8017E280 0017B1E0 2C 00 00 03 */ cmpwi r0, 3 -/* 8017E284 0017B1E4 41 82 03 E4 */ beq lbl_8017E668 -/* 8017E288 0017B1E8 40 80 00 1C */ bge lbl_8017E2A4 -/* 8017E28C 0017B1EC 2C 00 00 01 */ cmpwi r0, 1 -/* 8017E290 0017B1F0 41 82 01 40 */ beq lbl_8017E3D0 -/* 8017E294 0017B1F4 40 80 02 48 */ bge lbl_8017E4DC -/* 8017E298 0017B1F8 2C 00 00 00 */ cmpwi r0, 0 -/* 8017E29C 0017B1FC 40 80 00 18 */ bge lbl_8017E2B4 -/* 8017E2A0 0017B200 48 00 04 C0 */ b lbl_8017E760 -lbl_8017E2A4: -/* 8017E2A4 0017B204 2C 00 00 05 */ cmpwi r0, 5 -/* 8017E2A8 0017B208 41 82 01 04 */ beq lbl_8017E3AC -/* 8017E2AC 0017B20C 40 80 04 B4 */ bge lbl_8017E760 -/* 8017E2B0 0017B210 48 00 04 80 */ b lbl_8017E730 -lbl_8017E2B4: -/* 8017E2B4 0017B214 7F C4 F3 78 */ mr r4, r30 -/* 8017E2B8 0017B218 38 60 00 1A */ li r3, 0x1a -/* 8017E2BC 0017B21C 4B E8 E5 15 */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput -/* 8017E2C0 0017B220 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017E2C4 0017B224 41 82 00 9C */ beq lbl_8017E360 -/* 8017E2C8 0017B228 A0 1D 03 3C */ lhz r0, 0x33c(r29) -/* 8017E2CC 0017B22C 7F A3 EB 78 */ mr r3, r29 -/* 8017E2D0 0017B230 7F E5 FB 78 */ mr r5, r31 -/* 8017E2D4 0017B234 38 81 00 64 */ addi r4, r1, 0x64 -/* 8017E2D8 0017B238 B0 01 00 60 */ sth r0, 0x60(r1) -/* 8017E2DC 0017B23C B0 01 00 64 */ sth r0, 0x64(r1) -/* 8017E2E0 0017B240 4B FF D3 0D */ bl SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager -/* 8017E2E4 0017B244 A0 DD 03 10 */ lhz r6, 0x310(r29) -/* 8017E2E8 0017B248 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017E2EC 0017B24C 7C 06 00 40 */ cmplw r6, r0 -/* 8017E2F0 0017B250 41 82 04 70 */ beq lbl_8017E760 -/* 8017E2F4 0017B254 B0 C1 00 58 */ sth r6, 0x58(r1) -/* 8017E2F8 0017B258 7F A3 EB 78 */ mr r3, r29 -/* 8017E2FC 0017B25C 7F E5 FB 78 */ mr r5, r31 -/* 8017E300 0017B260 38 81 00 5C */ addi r4, r1, 0x5c -/* 8017E304 0017B264 B0 C1 00 5C */ sth r6, 0x5c(r1) -/* 8017E308 0017B268 4B FF DA 79 */ bl ValidateAimTargetId__7CPlayerF9TUniqueIdR13CStateManager -/* 8017E30C 0017B26C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017E310 0017B270 41 82 00 1C */ beq lbl_8017E32C -/* 8017E314 0017B274 A0 1D 03 10 */ lhz r0, 0x310(r29) -/* 8017E318 0017B278 7F A3 EB 78 */ mr r3, r29 -/* 8017E31C 0017B27C 38 81 00 54 */ addi r4, r1, 0x54 -/* 8017E320 0017B280 B0 01 00 50 */ sth r0, 0x50(r1) -/* 8017E324 0017B284 B0 01 00 54 */ sth r0, 0x54(r1) -/* 8017E328 0017B288 4B E9 BA 7D */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId -lbl_8017E32C: -/* 8017E32C 0017B28C 7F A3 EB 78 */ mr r3, r29 -/* 8017E330 0017B290 7F E5 FB 78 */ mr r5, r31 -/* 8017E334 0017B294 38 80 00 01 */ li r4, 1 -/* 8017E338 0017B298 4B FF D1 5D */ bl SetOrbitState__7CPlayerFQ27CPlayer17EPlayerOrbitStateR13CStateManager -/* 8017E33C 0017B29C 80 1D 03 08 */ lwz r0, 0x308(r29) -/* 8017E340 0017B2A0 7F A3 EB 78 */ mr r3, r29 -/* 8017E344 0017B2A4 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) -/* 8017E348 0017B2A8 7F E4 FB 78 */ mr r4, r31 -/* 8017E34C 0017B2AC 54 00 10 3A */ slwi r0, r0, 2 -/* 8017E350 0017B2B0 7C A5 02 14 */ add r5, r5, r0 -/* 8017E354 0017B2B4 C0 25 01 64 */ lfs f1, 0x164(r5) -/* 8017E358 0017B2B8 4B FF D3 BD */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager -/* 8017E35C 0017B2BC 48 00 04 04 */ b lbl_8017E760 -lbl_8017E360: -/* 8017E360 0017B2C0 7F C4 F3 78 */ mr r4, r30 -/* 8017E364 0017B2C4 38 60 00 19 */ li r3, 0x19 -/* 8017E368 0017B2C8 4B E8 E4 69 */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput -/* 8017E36C 0017B2CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017E370 0017B2D0 41 82 00 14 */ beq lbl_8017E384 -/* 8017E374 0017B2D4 7F A3 EB 78 */ mr r3, r29 -/* 8017E378 0017B2D8 7F E5 FB 78 */ mr r5, r31 -/* 8017E37C 0017B2DC 38 80 00 01 */ li r4, 1 -/* 8017E380 0017B2E0 4B FF CF B9 */ bl OrbitPoint__7CPlayerFQ27CPlayer16EPlayerOrbitTypeR13CStateManager -lbl_8017E384: -/* 8017E384 0017B2E4 7F C4 F3 78 */ mr r4, r30 -/* 8017E388 0017B2E8 38 60 00 18 */ li r3, 0x18 -/* 8017E38C 0017B2EC 4B E8 E4 45 */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput -/* 8017E390 0017B2F0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017E394 0017B2F4 41 82 03 CC */ beq lbl_8017E760 -/* 8017E398 0017B2F8 7F A3 EB 78 */ mr r3, r29 -/* 8017E39C 0017B2FC 7F E5 FB 78 */ mr r5, r31 -/* 8017E3A0 0017B300 38 80 00 00 */ li r4, 0 -/* 8017E3A4 0017B304 4B FF CF 95 */ bl OrbitPoint__7CPlayerFQ27CPlayer16EPlayerOrbitTypeR13CStateManager -/* 8017E3A8 0017B308 48 00 03 B8 */ b lbl_8017E760 -lbl_8017E3AC: -/* 8017E3AC 0017B30C A0 7D 03 10 */ lhz r3, 0x310(r29) -/* 8017E3B0 0017B310 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017E3B4 0017B314 7C 03 00 40 */ cmplw r3, r0 -/* 8017E3B8 0017B318 40 82 03 A8 */ bne lbl_8017E760 -/* 8017E3BC 0017B31C 7F A3 EB 78 */ mr r3, r29 -/* 8017E3C0 0017B320 7F E5 FB 78 */ mr r5, r31 -/* 8017E3C4 0017B324 38 80 00 00 */ li r4, 0 -/* 8017E3C8 0017B328 4B FF CC FD */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager -/* 8017E3CC 0017B32C 48 00 03 94 */ b lbl_8017E760 -lbl_8017E3D0: -/* 8017E3D0 0017B330 A0 1D 03 10 */ lhz r0, 0x310(r29) -/* 8017E3D4 0017B334 7F E3 FB 78 */ mr r3, r31 -/* 8017E3D8 0017B338 38 81 00 4C */ addi r4, r1, 0x4c -/* 8017E3DC 0017B33C B0 01 00 48 */ sth r0, 0x48(r1) -/* 8017E3E0 0017B340 B0 01 00 4C */ sth r0, 0x4c(r1) -/* 8017E3E4 0017B344 4B EC E1 C1 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017E3E8 0017B348 7C 64 1B 78 */ mr r4, r3 -/* 8017E3EC 0017B34C 38 61 00 78 */ addi r3, r1, 0x78 -/* 8017E3F0 0017B350 4B F2 B6 D9 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" -/* 8017E3F4 0017B354 80 03 00 04 */ lwz r0, 4(r3) -/* 8017E3F8 0017B358 28 00 00 00 */ cmplwi r0, 0 -/* 8017E3FC 0017B35C 41 82 00 50 */ beq lbl_8017E44C -/* 8017E400 0017B360 7F A3 EB 78 */ mr r3, r29 -/* 8017E404 0017B364 7F E4 FB 78 */ mr r4, r31 -/* 8017E408 0017B368 48 00 0F 1D */ bl ValidateCurrentOrbitTargetId__7CPlayerFR13CStateManager -/* 8017E40C 0017B36C 2C 03 00 00 */ cmpwi r3, 0 -/* 8017E410 0017B370 40 82 00 28 */ bne lbl_8017E438 -/* 8017E414 0017B374 80 1D 03 08 */ lwz r0, 0x308(r29) -/* 8017E418 0017B378 7F A3 EB 78 */ mr r3, r29 -/* 8017E41C 0017B37C 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) -/* 8017E420 0017B380 7F E4 FB 78 */ mr r4, r31 -/* 8017E424 0017B384 54 00 10 3A */ slwi r0, r0, 2 -/* 8017E428 0017B388 7C A5 02 14 */ add r5, r5, r0 -/* 8017E42C 0017B38C C0 25 01 64 */ lfs f1, 0x164(r5) -/* 8017E430 0017B390 4B FF D2 E5 */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager -/* 8017E434 0017B394 48 00 00 94 */ b lbl_8017E4C8 -lbl_8017E438: -/* 8017E438 0017B398 7F A3 EB 78 */ mr r3, r29 -/* 8017E43C 0017B39C 7F E5 FB 78 */ mr r5, r31 -/* 8017E440 0017B3A0 38 80 00 06 */ li r4, 6 -/* 8017E444 0017B3A4 4B FF CC 81 */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager -/* 8017E448 0017B3A8 48 00 00 80 */ b lbl_8017E4C8 -lbl_8017E44C: -/* 8017E44C 0017B3AC 7F A3 EB 78 */ mr r3, r29 -/* 8017E450 0017B3B0 7F E4 FB 78 */ mr r4, r31 -/* 8017E454 0017B3B4 48 00 0E D1 */ bl ValidateCurrentOrbitTargetId__7CPlayerFR13CStateManager -/* 8017E458 0017B3B8 2C 03 00 00 */ cmpwi r3, 0 -/* 8017E45C 0017B3BC 40 82 00 28 */ bne lbl_8017E484 -/* 8017E460 0017B3C0 80 1D 03 08 */ lwz r0, 0x308(r29) -/* 8017E464 0017B3C4 7F A3 EB 78 */ mr r3, r29 -/* 8017E468 0017B3C8 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) -/* 8017E46C 0017B3CC 7F E4 FB 78 */ mr r4, r31 -/* 8017E470 0017B3D0 54 00 10 3A */ slwi r0, r0, 2 -/* 8017E474 0017B3D4 7C A5 02 14 */ add r5, r5, r0 -/* 8017E478 0017B3D8 C0 25 01 64 */ lfs f1, 0x164(r5) -/* 8017E47C 0017B3DC 4B FF D2 99 */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager -/* 8017E480 0017B3E0 48 00 00 48 */ b lbl_8017E4C8 -lbl_8017E484: -/* 8017E484 0017B3E4 2C 03 00 05 */ cmpwi r3, 5 -/* 8017E488 0017B3E8 40 82 00 18 */ bne lbl_8017E4A0 -/* 8017E48C 0017B3EC 7F A3 EB 78 */ mr r3, r29 -/* 8017E490 0017B3F0 7F E5 FB 78 */ mr r5, r31 -/* 8017E494 0017B3F4 38 80 00 01 */ li r4, 1 -/* 8017E498 0017B3F8 4B FF CE A1 */ bl OrbitPoint__7CPlayerFQ27CPlayer16EPlayerOrbitTypeR13CStateManager -/* 8017E49C 0017B3FC 48 00 00 2C */ b lbl_8017E4C8 -lbl_8017E4A0: -/* 8017E4A0 0017B400 2C 03 00 04 */ cmpwi r3, 4 -/* 8017E4A4 0017B404 40 82 00 18 */ bne lbl_8017E4BC -/* 8017E4A8 0017B408 7F A3 EB 78 */ mr r3, r29 -/* 8017E4AC 0017B40C 7F E5 FB 78 */ mr r5, r31 -/* 8017E4B0 0017B410 38 80 00 07 */ li r4, 7 -/* 8017E4B4 0017B414 4B FF CC E9 */ bl SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager -/* 8017E4B8 0017B418 48 00 00 10 */ b lbl_8017E4C8 -lbl_8017E4BC: -/* 8017E4BC 0017B41C 7F A3 EB 78 */ mr r3, r29 -/* 8017E4C0 0017B420 7F E4 FB 78 */ mr r4, r31 -/* 8017E4C4 0017B424 48 00 04 21 */ bl ActivateOrbitSource__7CPlayerFR13CStateManager -lbl_8017E4C8: -/* 8017E4C8 0017B428 7F A3 EB 78 */ mr r3, r29 -/* 8017E4CC 0017B42C 7F C4 F3 78 */ mr r4, r30 -/* 8017E4D0 0017B430 7F E5 FB 78 */ mr r5, r31 -/* 8017E4D4 0017B434 48 00 04 85 */ bl UpdateOrbitSelection__7CPlayerFRC11CFinalInputR13CStateManager -/* 8017E4D8 0017B438 48 00 02 88 */ b lbl_8017E760 -lbl_8017E4DC: -/* 8017E4DC 0017B43C 7F C4 F3 78 */ mr r4, r30 -/* 8017E4E0 0017B440 38 60 00 1A */ li r3, 0x1a -/* 8017E4E4 0017B444 4B E8 E2 ED */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput -/* 8017E4E8 0017B448 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017E4EC 0017B44C 41 82 00 A8 */ beq lbl_8017E594 -/* 8017E4F0 0017B450 7F A4 EB 78 */ mr r4, r29 -/* 8017E4F4 0017B454 7F E5 FB 78 */ mr r5, r31 -/* 8017E4F8 0017B458 38 61 00 40 */ addi r3, r1, 0x40 -/* 8017E4FC 0017B45C 4B FF E7 75 */ bl FindOrbitTargetId__7CPlayerFR13CStateManager -/* 8017E500 0017B460 A0 01 00 40 */ lhz r0, 0x40(r1) -/* 8017E504 0017B464 7F A3 EB 78 */ mr r3, r29 -/* 8017E508 0017B468 7F E5 FB 78 */ mr r5, r31 -/* 8017E50C 0017B46C 38 81 00 44 */ addi r4, r1, 0x44 -/* 8017E510 0017B470 B0 01 00 44 */ sth r0, 0x44(r1) -/* 8017E514 0017B474 4B FF D0 D9 */ bl SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager -/* 8017E518 0017B478 A0 DD 03 10 */ lhz r6, 0x310(r29) -/* 8017E51C 0017B47C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017E520 0017B480 7C 06 00 40 */ cmplw r6, r0 -/* 8017E524 0017B484 41 82 01 20 */ beq lbl_8017E644 -/* 8017E528 0017B488 B0 C1 00 38 */ sth r6, 0x38(r1) -/* 8017E52C 0017B48C 7F A3 EB 78 */ mr r3, r29 -/* 8017E530 0017B490 7F E5 FB 78 */ mr r5, r31 -/* 8017E534 0017B494 38 81 00 3C */ addi r4, r1, 0x3c -/* 8017E538 0017B498 B0 C1 00 3C */ sth r6, 0x3c(r1) -/* 8017E53C 0017B49C 4B FF D8 45 */ bl ValidateAimTargetId__7CPlayerF9TUniqueIdR13CStateManager -/* 8017E540 0017B4A0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017E544 0017B4A4 41 82 00 1C */ beq lbl_8017E560 -/* 8017E548 0017B4A8 A0 1D 03 10 */ lhz r0, 0x310(r29) -/* 8017E54C 0017B4AC 7F A3 EB 78 */ mr r3, r29 -/* 8017E550 0017B4B0 38 81 00 34 */ addi r4, r1, 0x34 -/* 8017E554 0017B4B4 B0 01 00 30 */ sth r0, 0x30(r1) -/* 8017E558 0017B4B8 B0 01 00 34 */ sth r0, 0x34(r1) -/* 8017E55C 0017B4BC 4B E9 B8 49 */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId -lbl_8017E560: -/* 8017E560 0017B4C0 7F A3 EB 78 */ mr r3, r29 -/* 8017E564 0017B4C4 7F E5 FB 78 */ mr r5, r31 -/* 8017E568 0017B4C8 38 80 00 01 */ li r4, 1 -/* 8017E56C 0017B4CC 4B FF CF 29 */ bl SetOrbitState__7CPlayerFQ27CPlayer17EPlayerOrbitStateR13CStateManager -/* 8017E570 0017B4D0 80 1D 03 08 */ lwz r0, 0x308(r29) -/* 8017E574 0017B4D4 7F A3 EB 78 */ mr r3, r29 -/* 8017E578 0017B4D8 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) -/* 8017E57C 0017B4DC 7F E4 FB 78 */ mr r4, r31 -/* 8017E580 0017B4E0 54 00 10 3A */ slwi r0, r0, 2 -/* 8017E584 0017B4E4 7C A5 02 14 */ add r5, r5, r0 -/* 8017E588 0017B4E8 C0 25 01 64 */ lfs f1, 0x164(r5) -/* 8017E58C 0017B4EC 4B FF D1 89 */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager -/* 8017E590 0017B4F0 48 00 00 B4 */ b lbl_8017E644 -lbl_8017E594: -/* 8017E594 0017B4F4 80 1D 03 08 */ lwz r0, 0x308(r29) -/* 8017E598 0017B4F8 2C 00 00 01 */ cmpwi r0, 1 -/* 8017E59C 0017B4FC 41 82 00 18 */ beq lbl_8017E5B4 -/* 8017E5A0 0017B500 40 80 00 A4 */ bge lbl_8017E644 -/* 8017E5A4 0017B504 2C 00 00 00 */ cmpwi r0, 0 -/* 8017E5A8 0017B508 40 80 00 4C */ bge lbl_8017E5F4 -/* 8017E5AC 0017B50C 48 00 00 98 */ b lbl_8017E644 -/* 8017E5B0 0017B510 48 00 00 94 */ b lbl_8017E644 -lbl_8017E5B4: -/* 8017E5B4 0017B514 7F C4 F3 78 */ mr r4, r30 -/* 8017E5B8 0017B518 38 60 00 18 */ li r3, 0x18 -/* 8017E5BC 0017B51C 4B E8 E2 B9 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput -/* 8017E5C0 0017B520 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017E5C4 0017B524 41 82 00 80 */ beq lbl_8017E644 -/* 8017E5C8 0017B528 38 00 00 00 */ li r0, 0 -/* 8017E5CC 0017B52C 7F A3 EB 78 */ mr r3, r29 -/* 8017E5D0 0017B530 90 1D 03 08 */ stw r0, 0x308(r29) -/* 8017E5D4 0017B534 7F E4 FB 78 */ mr r4, r31 -/* 8017E5D8 0017B538 80 1D 03 08 */ lwz r0, 0x308(r29) -/* 8017E5DC 0017B53C 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) -/* 8017E5E0 0017B540 54 00 10 3A */ slwi r0, r0, 2 -/* 8017E5E4 0017B544 7C A5 02 14 */ add r5, r5, r0 -/* 8017E5E8 0017B548 C0 25 01 64 */ lfs f1, 0x164(r5) -/* 8017E5EC 0017B54C 4B FF D3 2D */ bl SetOrbitPosition__7CPlayerFfR13CStateManager -/* 8017E5F0 0017B550 48 00 00 54 */ b lbl_8017E644 -lbl_8017E5F4: -/* 8017E5F4 0017B554 7F C4 F3 78 */ mr r4, r30 -/* 8017E5F8 0017B558 38 60 00 19 */ li r3, 0x19 -/* 8017E5FC 0017B55C 4B E8 E2 79 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput -/* 8017E600 0017B560 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017E604 0017B564 41 82 00 40 */ beq lbl_8017E644 -/* 8017E608 0017B568 7F C4 F3 78 */ mr r4, r30 -/* 8017E60C 0017B56C 38 60 00 18 */ li r3, 0x18 -/* 8017E610 0017B570 4B E8 E2 65 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput -/* 8017E614 0017B574 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017E618 0017B578 40 82 00 2C */ bne lbl_8017E644 -/* 8017E61C 0017B57C 38 00 00 01 */ li r0, 1 -/* 8017E620 0017B580 7F A3 EB 78 */ mr r3, r29 -/* 8017E624 0017B584 90 1D 03 08 */ stw r0, 0x308(r29) -/* 8017E628 0017B588 7F E4 FB 78 */ mr r4, r31 -/* 8017E62C 0017B58C 80 1D 03 08 */ lwz r0, 0x308(r29) -/* 8017E630 0017B590 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) -/* 8017E634 0017B594 54 00 10 3A */ slwi r0, r0, 2 -/* 8017E638 0017B598 7C A5 02 14 */ add r5, r5, r0 -/* 8017E63C 0017B59C C0 25 01 64 */ lfs f1, 0x164(r5) -/* 8017E640 0017B5A0 4B FF D2 D9 */ bl SetOrbitPosition__7CPlayerFfR13CStateManager -lbl_8017E644: -/* 8017E644 0017B5A4 80 1D 03 08 */ lwz r0, 0x308(r29) -/* 8017E648 0017B5A8 7F A3 EB 78 */ mr r3, r29 -/* 8017E64C 0017B5AC 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) -/* 8017E650 0017B5B0 7F E4 FB 78 */ mr r4, r31 -/* 8017E654 0017B5B4 54 00 10 3A */ slwi r0, r0, 2 -/* 8017E658 0017B5B8 7C A5 02 14 */ add r5, r5, r0 -/* 8017E65C 0017B5BC C0 25 01 64 */ lfs f1, 0x164(r5) -/* 8017E660 0017B5C0 4B FF D0 B5 */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager -/* 8017E664 0017B5C4 48 00 00 FC */ b lbl_8017E760 -lbl_8017E668: -/* 8017E668 0017B5C8 7F C4 F3 78 */ mr r4, r30 -/* 8017E66C 0017B5CC 38 60 00 1A */ li r3, 0x1a -/* 8017E670 0017B5D0 4B E8 E1 61 */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput -/* 8017E674 0017B5D4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017E678 0017B5D8 41 82 00 A4 */ beq lbl_8017E71C -/* 8017E67C 0017B5DC 7F A4 EB 78 */ mr r4, r29 -/* 8017E680 0017B5E0 7F E5 FB 78 */ mr r5, r31 -/* 8017E684 0017B5E4 38 61 00 28 */ addi r3, r1, 0x28 -/* 8017E688 0017B5E8 4B FF E5 E9 */ bl FindOrbitTargetId__7CPlayerFR13CStateManager -/* 8017E68C 0017B5EC A0 01 00 28 */ lhz r0, 0x28(r1) -/* 8017E690 0017B5F0 7F A3 EB 78 */ mr r3, r29 -/* 8017E694 0017B5F4 7F E5 FB 78 */ mr r5, r31 -/* 8017E698 0017B5F8 38 81 00 2C */ addi r4, r1, 0x2c -/* 8017E69C 0017B5FC B0 01 00 2C */ sth r0, 0x2c(r1) -/* 8017E6A0 0017B600 4B FF CF 4D */ bl SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager -/* 8017E6A4 0017B604 A0 DD 03 10 */ lhz r6, 0x310(r29) -/* 8017E6A8 0017B608 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017E6AC 0017B60C 7C 06 00 40 */ cmplw r6, r0 -/* 8017E6B0 0017B610 41 82 00 6C */ beq lbl_8017E71C -/* 8017E6B4 0017B614 B0 C1 00 20 */ sth r6, 0x20(r1) -/* 8017E6B8 0017B618 7F A3 EB 78 */ mr r3, r29 -/* 8017E6BC 0017B61C 7F E5 FB 78 */ mr r5, r31 -/* 8017E6C0 0017B620 38 81 00 24 */ addi r4, r1, 0x24 -/* 8017E6C4 0017B624 B0 C1 00 24 */ sth r6, 0x24(r1) -/* 8017E6C8 0017B628 4B FF D6 B9 */ bl ValidateAimTargetId__7CPlayerF9TUniqueIdR13CStateManager -/* 8017E6CC 0017B62C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017E6D0 0017B630 41 82 00 1C */ beq lbl_8017E6EC -/* 8017E6D4 0017B634 A0 1D 03 10 */ lhz r0, 0x310(r29) -/* 8017E6D8 0017B638 7F A3 EB 78 */ mr r3, r29 -/* 8017E6DC 0017B63C 38 81 00 1C */ addi r4, r1, 0x1c -/* 8017E6E0 0017B640 B0 01 00 18 */ sth r0, 0x18(r1) -/* 8017E6E4 0017B644 B0 01 00 1C */ sth r0, 0x1c(r1) -/* 8017E6E8 0017B648 4B E9 B6 BD */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId -lbl_8017E6EC: -/* 8017E6EC 0017B64C 7F A3 EB 78 */ mr r3, r29 -/* 8017E6F0 0017B650 7F E5 FB 78 */ mr r5, r31 -/* 8017E6F4 0017B654 38 80 00 01 */ li r4, 1 -/* 8017E6F8 0017B658 4B FF CD 9D */ bl SetOrbitState__7CPlayerFQ27CPlayer17EPlayerOrbitStateR13CStateManager -/* 8017E6FC 0017B65C 80 1D 03 08 */ lwz r0, 0x308(r29) -/* 8017E700 0017B660 7F A3 EB 78 */ mr r3, r29 -/* 8017E704 0017B664 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) -/* 8017E708 0017B668 7F E4 FB 78 */ mr r4, r31 -/* 8017E70C 0017B66C 54 00 10 3A */ slwi r0, r0, 2 -/* 8017E710 0017B670 7C A5 02 14 */ add r5, r5, r0 -/* 8017E714 0017B674 C0 25 01 64 */ lfs f1, 0x164(r5) -/* 8017E718 0017B678 4B FF CF FD */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager -lbl_8017E71C: -/* 8017E71C 0017B67C 7F A3 EB 78 */ mr r3, r29 -/* 8017E720 0017B680 7F C4 F3 78 */ mr r4, r30 -/* 8017E724 0017B684 7F E5 FB 78 */ mr r5, r31 -/* 8017E728 0017B688 48 00 02 31 */ bl UpdateOrbitSelection__7CPlayerFRC11CFinalInputR13CStateManager -/* 8017E72C 0017B68C 48 00 00 34 */ b lbl_8017E760 -lbl_8017E730: -/* 8017E730 0017B690 80 1D 03 08 */ lwz r0, 0x308(r29) -/* 8017E734 0017B694 7F A3 EB 78 */ mr r3, r29 -/* 8017E738 0017B698 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) -/* 8017E73C 0017B69C 7F E4 FB 78 */ mr r4, r31 -/* 8017E740 0017B6A0 54 00 10 3A */ slwi r0, r0, 2 -/* 8017E744 0017B6A4 7C A5 02 14 */ add r5, r5, r0 -/* 8017E748 0017B6A8 C0 25 01 64 */ lfs f1, 0x164(r5) -/* 8017E74C 0017B6AC 4B FF CF C9 */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager -/* 8017E750 0017B6B0 7F A3 EB 78 */ mr r3, r29 -/* 8017E754 0017B6B4 7F C4 F3 78 */ mr r4, r30 -/* 8017E758 0017B6B8 7F E5 FB 78 */ mr r5, r31 -/* 8017E75C 0017B6BC 48 00 01 FD */ bl UpdateOrbitSelection__7CPlayerFRC11CFinalInputR13CStateManager -lbl_8017E760: -/* 8017E760 0017B6C0 80 1D 03 04 */ lwz r0, 0x304(r29) -/* 8017E764 0017B6C4 2C 00 00 05 */ cmpwi r0, 5 -/* 8017E768 0017B6C8 40 82 01 60 */ bne lbl_8017E8C8 -/* 8017E76C 0017B6CC 7F A4 EB 78 */ mr r4, r29 -/* 8017E770 0017B6D0 7F E5 FB 78 */ mr r5, r31 -/* 8017E774 0017B6D4 38 61 00 14 */ addi r3, r1, 0x14 -/* 8017E778 0017B6D8 4B FF E4 F9 */ bl FindOrbitTargetId__7CPlayerFR13CStateManager -/* 8017E77C 0017B6DC A0 01 00 14 */ lhz r0, 0x14(r1) -/* 8017E780 0017B6E0 B0 1D 03 3C */ sth r0, 0x33c(r29) -/* 8017E784 0017B6E4 A0 7D 03 3C */ lhz r3, 0x33c(r29) -/* 8017E788 0017B6E8 A0 1D 03 10 */ lhz r0, 0x310(r29) -/* 8017E78C 0017B6EC 7C 03 00 40 */ cmplw r3, r0 -/* 8017E790 0017B6F0 40 82 01 38 */ bne lbl_8017E8C8 -/* 8017E794 0017B6F4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017E798 0017B6F8 B0 1D 03 3C */ sth r0, 0x33c(r29) -/* 8017E79C 0017B6FC 48 00 01 2C */ b lbl_8017E8C8 -lbl_8017E7A0: -/* 8017E7A0 0017B700 80 1D 03 04 */ lwz r0, 0x304(r29) -/* 8017E7A4 0017B704 2C 00 00 04 */ cmpwi r0, 4 -/* 8017E7A8 0017B708 41 82 00 DC */ beq lbl_8017E884 -/* 8017E7AC 0017B70C 40 80 00 1C */ bge lbl_8017E7C8 -/* 8017E7B0 0017B710 2C 00 00 01 */ cmpwi r0, 1 -/* 8017E7B4 0017B714 41 82 00 20 */ beq lbl_8017E7D4 -/* 8017E7B8 0017B718 40 80 01 00 */ bge lbl_8017E8B8 -/* 8017E7BC 0017B71C 2C 00 00 00 */ cmpwi r0, 0 -/* 8017E7C0 0017B720 40 80 01 08 */ bge lbl_8017E8C8 -/* 8017E7C4 0017B724 48 00 00 F4 */ b lbl_8017E8B8 -lbl_8017E7C8: -/* 8017E7C8 0017B728 2C 00 00 06 */ cmpwi r0, 6 -/* 8017E7CC 0017B72C 40 80 00 EC */ bge lbl_8017E8B8 -/* 8017E7D0 0017B730 48 00 00 5C */ b lbl_8017E82C -lbl_8017E7D4: -/* 8017E7D4 0017B734 A0 1D 03 10 */ lhz r0, 0x310(r29) -/* 8017E7D8 0017B738 7F E3 FB 78 */ mr r3, r31 -/* 8017E7DC 0017B73C 38 81 00 10 */ addi r4, r1, 0x10 -/* 8017E7E0 0017B740 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8017E7E4 0017B744 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8017E7E8 0017B748 4B EC DD BD */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017E7EC 0017B74C 7C 64 1B 78 */ mr r4, r3 -/* 8017E7F0 0017B750 38 61 00 70 */ addi r3, r1, 0x70 -/* 8017E7F4 0017B754 4B F2 B2 D5 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" -/* 8017E7F8 0017B758 80 03 00 04 */ lwz r0, 4(r3) -/* 8017E7FC 0017B75C 28 00 00 00 */ cmplwi r0, 0 -/* 8017E800 0017B760 41 82 00 18 */ beq lbl_8017E818 -/* 8017E804 0017B764 7F A3 EB 78 */ mr r3, r29 -/* 8017E808 0017B768 7F E5 FB 78 */ mr r5, r31 -/* 8017E80C 0017B76C 38 80 00 03 */ li r4, 3 -/* 8017E810 0017B770 4B FF C8 B5 */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager -/* 8017E814 0017B774 48 00 00 B4 */ b lbl_8017E8C8 -lbl_8017E818: -/* 8017E818 0017B778 7F A3 EB 78 */ mr r3, r29 -/* 8017E81C 0017B77C 7F E5 FB 78 */ mr r5, r31 -/* 8017E820 0017B780 38 80 00 00 */ li r4, 0 -/* 8017E824 0017B784 4B FF C9 79 */ bl SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager -/* 8017E828 0017B788 48 00 00 A0 */ b lbl_8017E8C8 -lbl_8017E82C: -/* 8017E82C 0017B78C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017E830 0017B790 88 03 02 D4 */ lbz r0, 0x2d4(r3) -/* 8017E834 0017B794 28 00 00 00 */ cmplwi r0, 0 -/* 8017E838 0017B798 40 82 00 38 */ bne lbl_8017E870 -/* 8017E83C 0017B79C 7F A4 EB 78 */ mr r4, r29 -/* 8017E840 0017B7A0 7F E5 FB 78 */ mr r5, r31 -/* 8017E844 0017B7A4 38 61 00 08 */ addi r3, r1, 8 -/* 8017E848 0017B7A8 4B FF E4 29 */ bl FindOrbitTargetId__7CPlayerFR13CStateManager -/* 8017E84C 0017B7AC A0 01 00 08 */ lhz r0, 8(r1) -/* 8017E850 0017B7B0 B0 1D 03 3C */ sth r0, 0x33c(r29) -/* 8017E854 0017B7B4 A0 7D 03 3C */ lhz r3, 0x33c(r29) -/* 8017E858 0017B7B8 A0 1D 03 10 */ lhz r0, 0x310(r29) -/* 8017E85C 0017B7BC 7C 03 00 40 */ cmplw r3, r0 -/* 8017E860 0017B7C0 40 82 00 68 */ bne lbl_8017E8C8 -/* 8017E864 0017B7C4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017E868 0017B7C8 B0 1D 03 3C */ sth r0, 0x33c(r29) -/* 8017E86C 0017B7CC 48 00 00 5C */ b lbl_8017E8C8 -lbl_8017E870: -/* 8017E870 0017B7D0 7F A3 EB 78 */ mr r3, r29 -/* 8017E874 0017B7D4 7F E5 FB 78 */ mr r5, r31 -/* 8017E878 0017B7D8 38 80 00 00 */ li r4, 0 -/* 8017E87C 0017B7DC 4B FF C8 49 */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager -/* 8017E880 0017B7E0 48 00 00 48 */ b lbl_8017E8C8 -lbl_8017E884: -/* 8017E884 0017B7E4 80 1D 03 08 */ lwz r0, 0x308(r29) -/* 8017E888 0017B7E8 7F A3 EB 78 */ mr r3, r29 -/* 8017E88C 0017B7EC 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) -/* 8017E890 0017B7F0 7F E4 FB 78 */ mr r4, r31 -/* 8017E894 0017B7F4 54 00 10 3A */ slwi r0, r0, 2 -/* 8017E898 0017B7F8 7C A5 02 14 */ add r5, r5, r0 -/* 8017E89C 0017B7FC C0 25 01 64 */ lfs f1, 0x164(r5) -/* 8017E8A0 0017B800 4B FF CE 75 */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager -/* 8017E8A4 0017B804 7F A3 EB 78 */ mr r3, r29 -/* 8017E8A8 0017B808 7F C4 F3 78 */ mr r4, r30 -/* 8017E8AC 0017B80C 7F E5 FB 78 */ mr r5, r31 -/* 8017E8B0 0017B810 48 00 00 A9 */ bl UpdateOrbitSelection__7CPlayerFRC11CFinalInputR13CStateManager -/* 8017E8B4 0017B814 48 00 00 14 */ b lbl_8017E8C8 -lbl_8017E8B8: -/* 8017E8B8 0017B818 7F A3 EB 78 */ mr r3, r29 -/* 8017E8BC 0017B81C 7F E5 FB 78 */ mr r5, r31 -/* 8017E8C0 0017B820 38 80 00 00 */ li r4, 0 -/* 8017E8C4 0017B824 4B FF C8 D9 */ bl SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager -lbl_8017E8C8: -/* 8017E8C8 0017B828 80 01 00 94 */ lwz r0, 0x94(r1) -/* 8017E8CC 0017B82C 83 E1 00 8C */ lwz r31, 0x8c(r1) -/* 8017E8D0 0017B830 83 C1 00 88 */ lwz r30, 0x88(r1) -/* 8017E8D4 0017B834 83 A1 00 84 */ lwz r29, 0x84(r1) -/* 8017E8D8 0017B838 7C 08 03 A6 */ mtlr r0 -/* 8017E8DC 0017B83C 38 21 00 90 */ addi r1, r1, 0x90 -/* 8017E8E0 0017B840 4E 80 00 20 */ blr - -.global ActivateOrbitSource__7CPlayerFR13CStateManager -ActivateOrbitSource__7CPlayerFR13CStateManager: -/* 8017E8E4 0017B844 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8017E8E8 0017B848 7C 08 02 A6 */ mflr r0 -/* 8017E8EC 0017B84C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8017E8F0 0017B850 80 03 03 90 */ lwz r0, 0x390(r3) -/* 8017E8F4 0017B854 2C 00 00 01 */ cmpwi r0, 1 -/* 8017E8F8 0017B858 41 82 00 20 */ beq lbl_8017E918 -/* 8017E8FC 0017B85C 40 80 00 08 */ bge lbl_8017E904 -/* 8017E900 0017B860 48 00 00 10 */ b lbl_8017E910 -lbl_8017E904: -/* 8017E904 0017B864 2C 00 00 03 */ cmpwi r0, 3 -/* 8017E908 0017B868 40 80 00 08 */ bge lbl_8017E910 -/* 8017E90C 0017B86C 48 00 00 1C */ b lbl_8017E928 -lbl_8017E910: -/* 8017E910 0017B870 4B FF C9 ED */ bl OrbitCarcass__7CPlayerFR13CStateManager -/* 8017E914 0017B874 48 00 00 34 */ b lbl_8017E948 -lbl_8017E918: -/* 8017E918 0017B878 7C 85 23 78 */ mr r5, r4 -/* 8017E91C 0017B87C 38 80 00 06 */ li r4, 6 -/* 8017E920 0017B880 4B FF C8 7D */ bl SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager -/* 8017E924 0017B884 48 00 00 24 */ b lbl_8017E948 -lbl_8017E928: -/* 8017E928 0017B888 88 03 03 94 */ lbz r0, 0x394(r3) -/* 8017E92C 0017B88C 28 00 00 00 */ cmplwi r0, 0 -/* 8017E930 0017B890 41 82 00 14 */ beq lbl_8017E944 -/* 8017E934 0017B894 7C 85 23 78 */ mr r5, r4 -/* 8017E938 0017B898 38 80 00 01 */ li r4, 1 -/* 8017E93C 0017B89C 4B FF C9 FD */ bl OrbitPoint__7CPlayerFQ27CPlayer16EPlayerOrbitTypeR13CStateManager -/* 8017E940 0017B8A0 48 00 00 08 */ b lbl_8017E948 -lbl_8017E944: -/* 8017E944 0017B8A4 4B FF C9 B9 */ bl OrbitCarcass__7CPlayerFR13CStateManager -lbl_8017E948: -/* 8017E948 0017B8A8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8017E94C 0017B8AC 7C 08 03 A6 */ mtlr r0 -/* 8017E950 0017B8B0 38 21 00 10 */ addi r1, r1, 0x10 -/* 8017E954 0017B8B4 4E 80 00 20 */ blr - -.global UpdateOrbitSelection__7CPlayerFRC11CFinalInputR13CStateManager -UpdateOrbitSelection__7CPlayerFRC11CFinalInputR13CStateManager: -/* 8017E958 0017B8B8 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 8017E95C 0017B8BC 7C 08 02 A6 */ mflr r0 -/* 8017E960 0017B8C0 90 01 00 54 */ stw r0, 0x54(r1) -/* 8017E964 0017B8C4 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 8017E968 0017B8C8 7C BF 2B 78 */ mr r31, r5 -/* 8017E96C 0017B8CC 93 C1 00 48 */ stw r30, 0x48(r1) -/* 8017E970 0017B8D0 7C 7E 1B 78 */ mr r30, r3 -/* 8017E974 0017B8D4 38 61 00 24 */ addi r3, r1, 0x24 -/* 8017E978 0017B8D8 93 A1 00 44 */ stw r29, 0x44(r1) -/* 8017E97C 0017B8DC 93 81 00 40 */ stw r28, 0x40(r1) -/* 8017E980 0017B8E0 7C 9C 23 78 */ mr r28, r4 -/* 8017E984 0017B8E4 7F C4 F3 78 */ mr r4, r30 -/* 8017E988 0017B8E8 4B FF E2 E9 */ bl FindOrbitTargetId__7CPlayerFR13CStateManager -/* 8017E98C 0017B8EC A0 01 00 24 */ lhz r0, 0x24(r1) -/* 8017E990 0017B8F0 7F E3 FB 78 */ mr r3, r31 -/* 8017E994 0017B8F4 38 81 00 20 */ addi r4, r1, 0x20 -/* 8017E998 0017B8F8 B0 1E 03 3C */ sth r0, 0x33c(r30) -/* 8017E99C 0017B8FC A0 1E 03 10 */ lhz r0, 0x310(r30) -/* 8017E9A0 0017B900 B0 01 00 20 */ sth r0, 0x20(r1) -/* 8017E9A4 0017B904 4B EC DC 01 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017E9A8 0017B908 7C 64 1B 78 */ mr r4, r3 -/* 8017E9AC 0017B90C 38 61 00 30 */ addi r3, r1, 0x30 -/* 8017E9B0 0017B910 4B F2 B1 19 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" -/* 8017E9B4 0017B914 83 A3 00 04 */ lwz r29, 4(r3) -/* 8017E9B8 0017B918 7F E3 FB 78 */ mr r3, r31 -/* 8017E9BC 0017B91C A0 1E 03 3C */ lhz r0, 0x33c(r30) -/* 8017E9C0 0017B920 38 81 00 1C */ addi r4, r1, 0x1c -/* 8017E9C4 0017B924 B0 01 00 1C */ sth r0, 0x1c(r1) -/* 8017E9C8 0017B928 4B EC DB DD */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017E9CC 0017B92C 7C 64 1B 78 */ mr r4, r3 -/* 8017E9D0 0017B930 38 61 00 28 */ addi r3, r1, 0x28 -/* 8017E9D4 0017B934 4B F2 B0 F5 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" -/* 8017E9D8 0017B938 28 1D 00 00 */ cmplwi r29, 0 -/* 8017E9DC 0017B93C 80 63 00 04 */ lwz r3, 4(r3) -/* 8017E9E0 0017B940 40 82 00 18 */ bne lbl_8017E9F8 -/* 8017E9E4 0017B944 80 1E 03 04 */ lwz r0, 0x304(r30) -/* 8017E9E8 0017B948 2C 00 00 05 */ cmpwi r0, 5 -/* 8017E9EC 0017B94C 40 82 00 18 */ bne lbl_8017EA04 -/* 8017E9F0 0017B950 28 03 00 00 */ cmplwi r3, 0 -/* 8017E9F4 0017B954 40 82 00 10 */ bne lbl_8017EA04 -lbl_8017E9F8: -/* 8017E9F8 0017B958 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017E9FC 0017B95C B0 1E 03 3C */ sth r0, 0x33c(r30) -/* 8017EA00 0017B960 48 00 00 AC */ b lbl_8017EAAC -lbl_8017EA04: -/* 8017EA04 0017B964 7F 84 E3 78 */ mr r4, r28 -/* 8017EA08 0017B968 38 60 00 1A */ li r3, 0x1a -/* 8017EA0C 0017B96C 4B E8 DD C5 */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput -/* 8017EA10 0017B970 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017EA14 0017B974 41 82 00 98 */ beq lbl_8017EAAC -/* 8017EA18 0017B978 A0 7E 03 3C */ lhz r3, 0x33c(r30) -/* 8017EA1C 0017B97C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017EA20 0017B980 7C 03 00 40 */ cmplw r3, r0 -/* 8017EA24 0017B984 41 82 00 88 */ beq lbl_8017EAAC -/* 8017EA28 0017B988 A0 1E 03 3C */ lhz r0, 0x33c(r30) -/* 8017EA2C 0017B98C 7F C3 F3 78 */ mr r3, r30 -/* 8017EA30 0017B990 7F E5 FB 78 */ mr r5, r31 -/* 8017EA34 0017B994 38 81 00 18 */ addi r4, r1, 0x18 -/* 8017EA38 0017B998 B0 01 00 18 */ sth r0, 0x18(r1) -/* 8017EA3C 0017B99C 4B FF CB B1 */ bl SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager -/* 8017EA40 0017B9A0 A0 1E 03 10 */ lhz r0, 0x310(r30) -/* 8017EA44 0017B9A4 7F C3 F3 78 */ mr r3, r30 -/* 8017EA48 0017B9A8 7F E5 FB 78 */ mr r5, r31 -/* 8017EA4C 0017B9AC 38 81 00 14 */ addi r4, r1, 0x14 -/* 8017EA50 0017B9B0 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8017EA54 0017B9B4 B0 01 00 14 */ sth r0, 0x14(r1) -/* 8017EA58 0017B9B8 4B FF D3 29 */ bl ValidateAimTargetId__7CPlayerF9TUniqueIdR13CStateManager -/* 8017EA5C 0017B9BC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017EA60 0017B9C0 41 82 00 1C */ beq lbl_8017EA7C -/* 8017EA64 0017B9C4 A0 1E 03 10 */ lhz r0, 0x310(r30) -/* 8017EA68 0017B9C8 7F C3 F3 78 */ mr r3, r30 -/* 8017EA6C 0017B9CC 38 81 00 0C */ addi r4, r1, 0xc -/* 8017EA70 0017B9D0 B0 01 00 08 */ sth r0, 8(r1) -/* 8017EA74 0017B9D4 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8017EA78 0017B9D8 4B E9 B3 2D */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId -lbl_8017EA7C: -/* 8017EA7C 0017B9DC 7F C3 F3 78 */ mr r3, r30 -/* 8017EA80 0017B9E0 7F E5 FB 78 */ mr r5, r31 -/* 8017EA84 0017B9E4 38 80 00 01 */ li r4, 1 -/* 8017EA88 0017B9E8 4B FF CA 0D */ bl SetOrbitState__7CPlayerFQ27CPlayer17EPlayerOrbitStateR13CStateManager -/* 8017EA8C 0017B9EC 80 1E 03 08 */ lwz r0, 0x308(r30) -/* 8017EA90 0017B9F0 7F C3 F3 78 */ mr r3, r30 -/* 8017EA94 0017B9F4 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) -/* 8017EA98 0017B9F8 7F E4 FB 78 */ mr r4, r31 -/* 8017EA9C 0017B9FC 54 00 10 3A */ slwi r0, r0, 2 -/* 8017EAA0 0017BA00 7C A5 02 14 */ add r5, r5, r0 -/* 8017EAA4 0017BA04 C0 25 01 64 */ lfs f1, 0x164(r5) -/* 8017EAA8 0017BA08 4B FF CC 6D */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager -lbl_8017EAAC: -/* 8017EAAC 0017BA0C 80 01 00 54 */ lwz r0, 0x54(r1) -/* 8017EAB0 0017BA10 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 8017EAB4 0017BA14 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 8017EAB8 0017BA18 83 A1 00 44 */ lwz r29, 0x44(r1) -/* 8017EABC 0017BA1C 83 81 00 40 */ lwz r28, 0x40(r1) -/* 8017EAC0 0017BA20 7C 08 03 A6 */ mtlr r0 -/* 8017EAC4 0017BA24 38 21 00 50 */ addi r1, r1, 0x50 -/* 8017EAC8 0017BA28 4E 80 00 20 */ blr - -.global UpdateOrbitOrientation__7CPlayerFR13CStateManager -UpdateOrbitOrientation__7CPlayerFR13CStateManager: -/* 8017EACC 0017BA2C 94 21 FF 80 */ stwu r1, -0x80(r1) -/* 8017EAD0 0017BA30 7C 08 02 A6 */ mflr r0 -/* 8017EAD4 0017BA34 90 01 00 84 */ stw r0, 0x84(r1) -/* 8017EAD8 0017BA38 93 E1 00 7C */ stw r31, 0x7c(r1) -/* 8017EADC 0017BA3C 7C 7F 1B 78 */ mr r31, r3 -/* 8017EAE0 0017BA40 80 03 02 F8 */ lwz r0, 0x2f8(r3) -/* 8017EAE4 0017BA44 2C 00 00 00 */ cmpwi r0, 0 -/* 8017EAE8 0017BA48 40 82 01 2C */ bne lbl_8017EC14 -/* 8017EAEC 0017BA4C 80 1F 03 04 */ lwz r0, 0x304(r31) -/* 8017EAF0 0017BA50 2C 00 00 02 */ cmpwi r0, 2 -/* 8017EAF4 0017BA54 41 82 00 2C */ beq lbl_8017EB20 -/* 8017EAF8 0017BA58 40 80 00 14 */ bge lbl_8017EB0C -/* 8017EAFC 0017BA5C 2C 00 00 00 */ cmpwi r0, 0 -/* 8017EB00 0017BA60 41 82 01 14 */ beq lbl_8017EC14 -/* 8017EB04 0017BA64 40 80 00 28 */ bge lbl_8017EB2C -/* 8017EB08 0017BA68 48 00 01 0C */ b lbl_8017EC14 -lbl_8017EB0C: -/* 8017EB0C 0017BA6C 2C 00 00 05 */ cmpwi r0, 5 -/* 8017EB10 0017BA70 41 82 01 04 */ beq lbl_8017EC14 -/* 8017EB14 0017BA74 40 80 01 00 */ bge lbl_8017EC14 -/* 8017EB18 0017BA78 48 00 00 14 */ b lbl_8017EB2C -/* 8017EB1C 0017BA7C 48 00 00 F8 */ b lbl_8017EC14 -lbl_8017EB20: -/* 8017EB20 0017BA80 88 1F 03 DC */ lbz r0, 0x3dc(r31) -/* 8017EB24 0017BA84 28 00 00 00 */ cmplwi r0, 0 -/* 8017EB28 0017BA88 40 82 00 EC */ bne lbl_8017EC14 -lbl_8017EB2C: -/* 8017EB2C 0017BA8C C0 3F 03 18 */ lfs f1, 0x318(r31) -/* 8017EB30 0017BA90 C0 1F 00 50 */ lfs f0, 0x50(r31) -/* 8017EB34 0017BA94 C0 7F 03 1C */ lfs f3, 0x31c(r31) -/* 8017EB38 0017BA98 C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 8017EB3C 0017BA9C EC 81 00 28 */ fsubs f4, f1, f0 -/* 8017EB40 0017BAA0 C0 3F 03 14 */ lfs f1, 0x314(r31) -/* 8017EB44 0017BAA4 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 8017EB48 0017BAA8 EC 43 10 28 */ fsubs f2, f3, f2 -/* 8017EB4C 0017BAAC EC 01 00 28 */ fsubs f0, f1, f0 -/* 8017EB50 0017BAB0 D0 81 00 0C */ stfs f4, 0xc(r1) -/* 8017EB54 0017BAB4 D0 41 00 10 */ stfs f2, 0x10(r1) -/* 8017EB58 0017BAB8 D0 01 00 08 */ stfs f0, 8(r1) -/* 8017EB5C 0017BABC 88 1F 03 74 */ lbz r0, 0x374(r31) -/* 8017EB60 0017BAC0 28 00 00 00 */ cmplwi r0, 0 -/* 8017EB64 0017BAC4 40 82 00 24 */ bne lbl_8017EB88 -/* 8017EB68 0017BAC8 80 64 08 70 */ lwz r3, 0x870(r4) -/* 8017EB6C 0017BACC 80 63 00 7C */ lwz r3, 0x7c(r3) -/* 8017EB70 0017BAD0 C0 43 00 58 */ lfs f2, 0x58(r3) -/* 8017EB74 0017BAD4 C0 23 00 48 */ lfs f1, 0x48(r3) -/* 8017EB78 0017BAD8 C0 03 00 38 */ lfs f0, 0x38(r3) -/* 8017EB7C 0017BADC D0 01 00 08 */ stfs f0, 8(r1) -/* 8017EB80 0017BAE0 D0 21 00 0C */ stfs f1, 0xc(r1) -/* 8017EB84 0017BAE4 D0 41 00 10 */ stfs f2, 0x10(r1) -lbl_8017EB88: -/* 8017EB88 0017BAE8 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017EB8C 0017BAEC 38 61 00 08 */ addi r3, r1, 8 -/* 8017EB90 0017BAF0 D0 01 00 10 */ stfs f0, 0x10(r1) -/* 8017EB94 0017BAF4 48 19 5B 65 */ bl CanBeNormalized__9CVector3fCFv -/* 8017EB98 0017BAF8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017EB9C 0017BAFC 41 82 00 78 */ beq lbl_8017EC14 -/* 8017EBA0 0017BB00 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8017EBA4 0017BB04 3C A0 80 5A */ lis r5, lbl_805A66F4@ha -/* 8017EBA8 0017BB08 38 83 66 A0 */ addi r4, r3, skZero3f@l -/* 8017EBAC 0017BB0C 38 C5 66 F4 */ addi r6, r5, lbl_805A66F4@l -/* 8017EBB0 0017BB10 38 61 00 14 */ addi r3, r1, 0x14 -/* 8017EBB4 0017BB14 38 A1 00 08 */ addi r5, r1, 8 -/* 8017EBB8 0017BB18 48 19 4F 59 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f -/* 8017EBBC 0017BB1C 38 61 00 44 */ addi r3, r1, 0x44 -/* 8017EBC0 0017BB20 38 81 00 14 */ addi r4, r1, 0x14 -/* 8017EBC4 0017BB24 48 19 3F B1 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8017EBC8 0017BB28 C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 8017EBCC 0017BB2C 38 7F 00 34 */ addi r3, r31, 0x34 -/* 8017EBD0 0017BB30 C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 8017EBD4 0017BB34 38 81 00 44 */ addi r4, r1, 0x44 -/* 8017EBD8 0017BB38 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 8017EBDC 0017BB3C D0 01 00 50 */ stfs f0, 0x50(r1) -/* 8017EBE0 0017BB40 D0 21 00 60 */ stfs f1, 0x60(r1) -/* 8017EBE4 0017BB44 D0 41 00 70 */ stfs f2, 0x70(r1) -/* 8017EBE8 0017BB48 48 19 3F 59 */ bl __as__12CTransform4fFRC12CTransform4f -/* 8017EBEC 0017BB4C 88 1F 00 E4 */ lbz r0, 0xe4(r31) -/* 8017EBF0 0017BB50 38 60 00 01 */ li r3, 1 -/* 8017EBF4 0017BB54 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b -/* 8017EBF8 0017BB58 98 1F 00 E4 */ stb r0, 0xe4(r31) -/* 8017EBFC 0017BB5C 88 1F 00 E4 */ lbz r0, 0xe4(r31) -/* 8017EC00 0017BB60 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 8017EC04 0017BB64 98 1F 00 E4 */ stb r0, 0xe4(r31) -/* 8017EC08 0017BB68 88 1F 00 E4 */ lbz r0, 0xe4(r31) -/* 8017EC0C 0017BB6C 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d -/* 8017EC10 0017BB70 98 1F 00 E4 */ stb r0, 0xe4(r31) -lbl_8017EC14: -/* 8017EC14 0017BB74 80 01 00 84 */ lwz r0, 0x84(r1) -/* 8017EC18 0017BB78 83 E1 00 7C */ lwz r31, 0x7c(r1) -/* 8017EC1C 0017BB7C 7C 08 03 A6 */ mtlr r0 -/* 8017EC20 0017BB80 38 21 00 80 */ addi r1, r1, 0x80 -/* 8017EC24 0017BB84 4E 80 00 20 */ blr - -.global UpdateOrbitTarget__7CPlayerFR13CStateManager -UpdateOrbitTarget__7CPlayerFR13CStateManager: -/* 8017EC28 0017BB88 94 21 FF 90 */ stwu r1, -0x70(r1) -/* 8017EC2C 0017BB8C 7C 08 02 A6 */ mflr r0 -/* 8017EC30 0017BB90 90 01 00 74 */ stw r0, 0x74(r1) -/* 8017EC34 0017BB94 DB E1 00 60 */ stfd f31, 0x60(r1) -/* 8017EC38 0017BB98 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 -/* 8017EC3C 0017BB9C 93 E1 00 5C */ stw r31, 0x5c(r1) -/* 8017EC40 0017BBA0 93 C1 00 58 */ stw r30, 0x58(r1) -/* 8017EC44 0017BBA4 7C 7E 1B 78 */ mr r30, r3 -/* 8017EC48 0017BBA8 7C 9F 23 78 */ mr r31, r4 -/* 8017EC4C 0017BBAC A0 03 03 10 */ lhz r0, 0x310(r3) -/* 8017EC50 0017BBB0 7F E5 FB 78 */ mr r5, r31 -/* 8017EC54 0017BBB4 38 81 00 28 */ addi r4, r1, 0x28 -/* 8017EC58 0017BBB8 B0 01 00 24 */ sth r0, 0x24(r1) -/* 8017EC5C 0017BBBC B0 01 00 28 */ sth r0, 0x28(r1) -/* 8017EC60 0017BBC0 48 00 0C B1 */ bl ValidateOrbitTargetIdAndPointer__7CPlayerCF9TUniqueIdR13CStateManager -/* 8017EC64 0017BBC4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017EC68 0017BBC8 40 82 00 1C */ bne lbl_8017EC84 -/* 8017EC6C 0017BBCC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017EC70 0017BBD0 7F C3 F3 78 */ mr r3, r30 -/* 8017EC74 0017BBD4 7F E5 FB 78 */ mr r5, r31 -/* 8017EC78 0017BBD8 38 81 00 20 */ addi r4, r1, 0x20 -/* 8017EC7C 0017BBDC B0 01 00 20 */ sth r0, 0x20(r1) -/* 8017EC80 0017BBE0 4B FF C9 6D */ bl SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager -lbl_8017EC84: -/* 8017EC84 0017BBE4 A0 1E 03 3C */ lhz r0, 0x33c(r30) -/* 8017EC88 0017BBE8 7F C3 F3 78 */ mr r3, r30 -/* 8017EC8C 0017BBEC 7F E5 FB 78 */ mr r5, r31 -/* 8017EC90 0017BBF0 38 81 00 1C */ addi r4, r1, 0x1c -/* 8017EC94 0017BBF4 B0 01 00 18 */ sth r0, 0x18(r1) -/* 8017EC98 0017BBF8 B0 01 00 1C */ sth r0, 0x1c(r1) -/* 8017EC9C 0017BBFC 48 00 0C 75 */ bl ValidateOrbitTargetIdAndPointer__7CPlayerCF9TUniqueIdR13CStateManager -/* 8017ECA0 0017BC00 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017ECA4 0017BC04 40 82 00 10 */ bne lbl_8017ECB4 -/* 8017ECA8 0017BC08 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017ECAC 0017BC0C B0 01 00 14 */ sth r0, 0x14(r1) -/* 8017ECB0 0017BC10 B0 1E 03 3C */ sth r0, 0x33c(r30) -lbl_8017ECB4: -/* 8017ECB4 0017BC14 C0 3E 03 1C */ lfs f1, 0x31c(r30) -/* 8017ECB8 0017BC18 38 61 00 44 */ addi r3, r1, 0x44 -/* 8017ECBC 0017BC1C C0 1E 00 60 */ lfs f0, 0x60(r30) -/* 8017ECC0 0017BC20 C0 9E 03 18 */ lfs f4, 0x318(r30) -/* 8017ECC4 0017BC24 C0 7E 00 50 */ lfs f3, 0x50(r30) -/* 8017ECC8 0017BC28 EC A1 00 28 */ fsubs f5, f1, f0 -/* 8017ECCC 0017BC2C C0 5E 03 14 */ lfs f2, 0x314(r30) -/* 8017ECD0 0017BC30 C0 3E 00 40 */ lfs f1, 0x40(r30) -/* 8017ECD4 0017BC34 EC 64 18 28 */ fsubs f3, f4, f3 -/* 8017ECD8 0017BC38 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017ECDC 0017BC3C EC 22 08 28 */ fsubs f1, f2, f1 -/* 8017ECE0 0017BC40 D0 A1 00 4C */ stfs f5, 0x4c(r1) -/* 8017ECE4 0017BC44 D0 61 00 48 */ stfs f3, 0x48(r1) -/* 8017ECE8 0017BC48 D0 21 00 44 */ stfs f1, 0x44(r1) -/* 8017ECEC 0017BC4C D0 01 00 4C */ stfs f0, 0x4c(r1) -/* 8017ECF0 0017BC50 48 19 5B C9 */ bl Magnitude__9CVector3fCFv -/* 8017ECF4 0017BC54 80 1E 03 04 */ lwz r0, 0x304(r30) -/* 8017ECF8 0017BC58 FF E0 08 90 */ fmr f31, f1 -/* 8017ECFC 0017BC5C 2C 00 00 02 */ cmpwi r0, 2 -/* 8017ED00 0017BC60 41 82 00 D0 */ beq lbl_8017EDD0 -/* 8017ED04 0017BC64 40 80 00 14 */ bge lbl_8017ED18 -/* 8017ED08 0017BC68 2C 00 00 00 */ cmpwi r0, 0 -/* 8017ED0C 0017BC6C 41 82 02 E8 */ beq lbl_8017EFF4 -/* 8017ED10 0017BC70 40 80 00 1C */ bge lbl_8017ED2C -/* 8017ED14 0017BC74 48 00 02 F8 */ b lbl_8017F00C -lbl_8017ED18: -/* 8017ED18 0017BC78 2C 00 00 06 */ cmpwi r0, 6 -/* 8017ED1C 0017BC7C 40 80 02 F0 */ bge lbl_8017F00C -/* 8017ED20 0017BC80 2C 00 00 04 */ cmpwi r0, 4 -/* 8017ED24 0017BC84 40 80 02 E8 */ bge lbl_8017F00C -/* 8017ED28 0017BC88 48 00 02 30 */ b lbl_8017EF58 -lbl_8017ED2C: -/* 8017ED2C 0017BC8C A0 1E 03 10 */ lhz r0, 0x310(r30) -/* 8017ED30 0017BC90 7F E3 FB 78 */ mr r3, r31 -/* 8017ED34 0017BC94 38 81 00 10 */ addi r4, r1, 0x10 -/* 8017ED38 0017BC98 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8017ED3C 0017BC9C B0 01 00 10 */ sth r0, 0x10(r1) -/* 8017ED40 0017BCA0 4B EC D8 65 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017ED44 0017BCA4 28 03 00 00 */ cmplwi r3, 0 -/* 8017ED48 0017BCA8 41 82 00 64 */ beq lbl_8017EDAC -/* 8017ED4C 0017BCAC 88 03 00 E7 */ lbz r0, 0xe7(r3) -/* 8017ED50 0017BCB0 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f -/* 8017ED54 0017BCB4 41 82 00 58 */ beq lbl_8017EDAC -/* 8017ED58 0017BCB8 7F C3 F3 78 */ mr r3, r30 -/* 8017ED5C 0017BCBC 7F E4 FB 78 */ mr r4, r31 -/* 8017ED60 0017BCC0 48 00 02 D5 */ bl GetOrbitMaxLockDistance__7CPlayerCFRC13CStateManager -/* 8017ED64 0017BCC4 FC 1F 08 40 */ fcmpo cr0, f31, f1 -/* 8017ED68 0017BCC8 4C 41 13 82 */ cror 2, 1, 2 -/* 8017ED6C 0017BCCC 41 82 00 10 */ beq lbl_8017ED7C -/* 8017ED70 0017BCD0 C0 02 A2 68 */ lfs f0, lbl_805ABF88@sda21(r2) -/* 8017ED74 0017BCD4 FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 8017ED78 0017BCD8 40 80 00 34 */ bge lbl_8017EDAC -lbl_8017ED7C: -/* 8017ED7C 0017BCDC C0 02 A2 68 */ lfs f0, lbl_805ABF88@sda21(r2) -/* 8017ED80 0017BCE0 FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 8017ED84 0017BCE4 40 80 00 18 */ bge lbl_8017ED9C -/* 8017ED88 0017BCE8 7F C3 F3 78 */ mr r3, r30 -/* 8017ED8C 0017BCEC 7F E5 FB 78 */ mr r5, r31 -/* 8017ED90 0017BCF0 38 80 00 07 */ li r4, 7 -/* 8017ED94 0017BCF4 4B FF C4 09 */ bl SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager -/* 8017ED98 0017BCF8 48 00 02 74 */ b lbl_8017F00C -lbl_8017ED9C: -/* 8017ED9C 0017BCFC 7F C3 F3 78 */ mr r3, r30 -/* 8017EDA0 0017BD00 7F E4 FB 78 */ mr r4, r31 -/* 8017EDA4 0017BD04 4B FF FB 41 */ bl ActivateOrbitSource__7CPlayerFR13CStateManager -/* 8017EDA8 0017BD08 48 00 02 64 */ b lbl_8017F00C -lbl_8017EDAC: -/* 8017EDAC 0017BD0C 80 1E 03 08 */ lwz r0, 0x308(r30) -/* 8017EDB0 0017BD10 7F C3 F3 78 */ mr r3, r30 -/* 8017EDB4 0017BD14 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) -/* 8017EDB8 0017BD18 7F E4 FB 78 */ mr r4, r31 -/* 8017EDBC 0017BD1C 54 00 10 3A */ slwi r0, r0, 2 -/* 8017EDC0 0017BD20 7C A5 02 14 */ add r5, r5, r0 -/* 8017EDC4 0017BD24 C0 25 01 64 */ lfs f1, 0x164(r5) -/* 8017EDC8 0017BD28 4B FF C9 4D */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager -/* 8017EDCC 0017BD2C 48 00 02 40 */ b lbl_8017F00C -lbl_8017EDD0: -/* 8017EDD0 0017BD30 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017EDD4 0017BD34 88 03 02 29 */ lbz r0, 0x229(r3) -/* 8017EDD8 0017BD38 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f -/* 8017EDDC 0017BD3C 41 82 00 28 */ beq lbl_8017EE04 -/* 8017EDE0 0017BD40 C0 3E 03 28 */ lfs f1, 0x328(r30) -/* 8017EDE4 0017BD44 C0 03 01 E8 */ lfs f0, 0x1e8(r3) -/* 8017EDE8 0017BD48 FC 20 0A 10 */ fabs f1, f1 -/* 8017EDEC 0017BD4C FC 20 08 18 */ frsp f1, f1 -/* 8017EDF0 0017BD50 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017EDF4 0017BD54 40 81 00 10 */ ble lbl_8017EE04 -/* 8017EDF8 0017BD58 7F C3 F3 78 */ mr r3, r30 -/* 8017EDFC 0017BD5C 4B FF CA 79 */ bl UpdateOrbitFixedPosition__7CPlayerFv -/* 8017EE00 0017BD60 48 00 02 14 */ b lbl_8017F014 -lbl_8017EE04: -/* 8017EE04 0017BD64 80 9E 03 08 */ lwz r4, 0x308(r30) -/* 8017EE08 0017BD68 7F C3 F3 78 */ mr r3, r30 -/* 8017EE0C 0017BD6C 4B FF C5 8D */ bl CalculateOrbitZBasedDistance__7CPlayerF16EPlayerOrbitType -/* 8017EE10 0017BD70 FC 1F 08 40 */ fcmpo cr0, f31, f1 -/* 8017EE14 0017BD74 40 80 00 1C */ bge lbl_8017EE30 -/* 8017EE18 0017BD78 80 9E 03 08 */ lwz r4, 0x308(r30) -/* 8017EE1C 0017BD7C 7F C3 F3 78 */ mr r3, r30 -/* 8017EE20 0017BD80 4B FF C5 79 */ bl CalculateOrbitZBasedDistance__7CPlayerF16EPlayerOrbitType -/* 8017EE24 0017BD84 7F C3 F3 78 */ mr r3, r30 -/* 8017EE28 0017BD88 7F E4 FB 78 */ mr r4, r31 -/* 8017EE2C 0017BD8C 4B FF C8 E9 */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager -lbl_8017EE30: -/* 8017EE30 0017BD90 80 1E 03 08 */ lwz r0, 0x308(r30) -/* 8017EE34 0017BD94 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017EE38 0017BD98 54 00 10 3A */ slwi r0, r0, 2 -/* 8017EE3C 0017BD9C 7C 63 02 14 */ add r3, r3, r0 -/* 8017EE40 0017BDA0 C0 23 01 70 */ lfs f1, 0x170(r3) -/* 8017EE44 0017BDA4 FC 1F 08 40 */ fcmpo cr0, f31, f1 -/* 8017EE48 0017BDA8 40 81 00 10 */ ble lbl_8017EE58 -/* 8017EE4C 0017BDAC 7F C3 F3 78 */ mr r3, r30 -/* 8017EE50 0017BDB0 7F E4 FB 78 */ mr r4, r31 -/* 8017EE54 0017BDB4 4B FF C8 C1 */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager -lbl_8017EE58: -/* 8017EE58 0017BDB8 88 1E 03 DD */ lbz r0, 0x3dd(r30) -/* 8017EE5C 0017BDBC 28 00 00 00 */ cmplwi r0, 0 -/* 8017EE60 0017BDC0 41 82 00 24 */ beq lbl_8017EE84 -/* 8017EE64 0017BDC4 80 1E 03 08 */ lwz r0, 0x308(r30) -/* 8017EE68 0017BDC8 7F C3 F3 78 */ mr r3, r30 -/* 8017EE6C 0017BDCC 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) -/* 8017EE70 0017BDD0 7F E4 FB 78 */ mr r4, r31 -/* 8017EE74 0017BDD4 54 00 10 3A */ slwi r0, r0, 2 -/* 8017EE78 0017BDD8 7C A5 02 14 */ add r5, r5, r0 -/* 8017EE7C 0017BDDC C0 25 01 64 */ lfs f1, 0x164(r5) -/* 8017EE80 0017BDE0 4B FF CA 99 */ bl SetOrbitPosition__7CPlayerFfR13CStateManager -lbl_8017EE84: -/* 8017EE84 0017BDE4 7F C4 F3 78 */ mr r4, r30 -/* 8017EE88 0017BDE8 38 61 00 2C */ addi r3, r1, 0x2c -/* 8017EE8C 0017BDEC 48 10 5E F1 */ bl GetEyePosition__7CPlayerCFv -/* 8017EE90 0017BDF0 C0 3E 03 1C */ lfs f1, 0x31c(r30) -/* 8017EE94 0017BDF4 38 61 00 38 */ addi r3, r1, 0x38 -/* 8017EE98 0017BDF8 C0 01 00 34 */ lfs f0, 0x34(r1) -/* 8017EE9C 0017BDFC C0 7E 03 18 */ lfs f3, 0x318(r30) -/* 8017EEA0 0017BE00 C0 41 00 30 */ lfs f2, 0x30(r1) -/* 8017EEA4 0017BE04 EC 81 00 28 */ fsubs f4, f1, f0 -/* 8017EEA8 0017BE08 C0 3E 03 14 */ lfs f1, 0x314(r30) -/* 8017EEAC 0017BE0C C0 01 00 2C */ lfs f0, 0x2c(r1) -/* 8017EEB0 0017BE10 EC 43 10 28 */ fsubs f2, f3, f2 -/* 8017EEB4 0017BE14 FF E0 22 10 */ fabs f31, f4 -/* 8017EEB8 0017BE18 D0 81 00 40 */ stfs f4, 0x40(r1) -/* 8017EEBC 0017BE1C EC 01 00 28 */ fsubs f0, f1, f0 -/* 8017EEC0 0017BE20 D0 41 00 3C */ stfs f2, 0x3c(r1) -/* 8017EEC4 0017BE24 D0 01 00 38 */ stfs f0, 0x38(r1) -/* 8017EEC8 0017BE28 48 19 59 F1 */ bl Magnitude__9CVector3fCFv -/* 8017EECC 0017BE2C FC 40 F8 18 */ frsp f2, f31 -/* 8017EED0 0017BE30 C8 02 A2 40 */ lfd f0, lbl_805ABF60@sda21(r2) -/* 8017EED4 0017BE34 EC 22 08 24 */ fdivs f1, f2, f1 -/* 8017EED8 0017BE38 FC 40 0A 10 */ fabs f2, f1 -/* 8017EEDC 0017BE3C FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8017EEE0 0017BE40 40 81 00 14 */ ble lbl_8017EEF4 -/* 8017EEE4 0017BE44 C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) -/* 8017EEE8 0017BE48 C0 42 A2 4C */ lfs f2, lbl_805ABF6C@sda21(r2) -/* 8017EEEC 0017BE4C FC 01 00 AE */ fsel f0, f1, f2, f0 -/* 8017EEF0 0017BE50 EC 22 00 32 */ fmuls f1, f2, f0 -lbl_8017EEF4: -/* 8017EEF4 0017BE54 48 21 5D 59 */ bl asin -/* 8017EEF8 0017BE58 C0 41 00 40 */ lfs f2, 0x40(r1) -/* 8017EEFC 0017BE5C FC 20 08 18 */ frsp f1, f1 -/* 8017EF00 0017BE60 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017EF04 0017BE64 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8017EF08 0017BE68 4C 41 13 82 */ cror 2, 1, 2 -/* 8017EF0C 0017BE6C 40 82 00 18 */ bne lbl_8017EF24 -/* 8017EF10 0017BE70 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017EF14 0017BE74 C0 03 01 88 */ lfs f0, 0x188(r3) -/* 8017EF18 0017BE78 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017EF1C 0017BE7C 4C 41 13 82 */ cror 2, 1, 2 -/* 8017EF20 0017BE80 41 82 00 24 */ beq lbl_8017EF44 -lbl_8017EF24: -/* 8017EF24 0017BE84 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017EF28 0017BE88 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8017EF2C 0017BE8C 40 80 00 E0 */ bge lbl_8017F00C -/* 8017EF30 0017BE90 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017EF34 0017BE94 C0 03 01 8C */ lfs f0, 0x18c(r3) -/* 8017EF38 0017BE98 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017EF3C 0017BE9C 4C 41 13 82 */ cror 2, 1, 2 -/* 8017EF40 0017BEA0 40 82 00 CC */ bne lbl_8017F00C -lbl_8017EF44: -/* 8017EF44 0017BEA4 7F C3 F3 78 */ mr r3, r30 -/* 8017EF48 0017BEA8 7F E5 FB 78 */ mr r5, r31 -/* 8017EF4C 0017BEAC 38 80 00 07 */ li r4, 7 -/* 8017EF50 0017BEB0 4B FF C2 4D */ bl SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager -/* 8017EF54 0017BEB4 48 00 00 B8 */ b lbl_8017F00C -lbl_8017EF58: -/* 8017EF58 0017BEB8 88 1E 03 DD */ lbz r0, 0x3dd(r30) -/* 8017EF5C 0017BEBC 28 00 00 00 */ cmplwi r0, 0 -/* 8017EF60 0017BEC0 41 82 00 14 */ beq lbl_8017EF74 -/* 8017EF64 0017BEC4 C0 3E 03 40 */ lfs f1, 0x340(r30) -/* 8017EF68 0017BEC8 7F C3 F3 78 */ mr r3, r30 -/* 8017EF6C 0017BECC 7F E4 FB 78 */ mr r4, r31 -/* 8017EF70 0017BED0 4B FF C9 A9 */ bl SetOrbitPosition__7CPlayerFfR13CStateManager -lbl_8017EF74: -/* 8017EF74 0017BED4 80 9E 03 08 */ lwz r4, 0x308(r30) -/* 8017EF78 0017BED8 7F C3 F3 78 */ mr r3, r30 -/* 8017EF7C 0017BEDC 4B FF C4 1D */ bl CalculateOrbitZBasedDistance__7CPlayerF16EPlayerOrbitType -/* 8017EF80 0017BEE0 FC 1F 08 40 */ fcmpo cr0, f31, f1 -/* 8017EF84 0017BEE4 40 80 00 2C */ bge lbl_8017EFB0 -/* 8017EF88 0017BEE8 80 9E 03 08 */ lwz r4, 0x308(r30) -/* 8017EF8C 0017BEEC 7F C3 F3 78 */ mr r3, r30 -/* 8017EF90 0017BEF0 4B FF C4 09 */ bl CalculateOrbitZBasedDistance__7CPlayerF16EPlayerOrbitType -/* 8017EF94 0017BEF4 7F C3 F3 78 */ mr r3, r30 -/* 8017EF98 0017BEF8 7F E4 FB 78 */ mr r4, r31 -/* 8017EF9C 0017BEFC 4B FF C7 79 */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager -/* 8017EFA0 0017BF00 80 9E 03 08 */ lwz r4, 0x308(r30) -/* 8017EFA4 0017BF04 7F C3 F3 78 */ mr r3, r30 -/* 8017EFA8 0017BF08 4B FF C3 F1 */ bl CalculateOrbitZBasedDistance__7CPlayerF16EPlayerOrbitType -/* 8017EFAC 0017BF0C D0 3E 03 40 */ stfs f1, 0x340(r30) -lbl_8017EFB0: -/* 8017EFB0 0017BF10 80 1E 03 08 */ lwz r0, 0x308(r30) -/* 8017EFB4 0017BF14 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017EFB8 0017BF18 54 00 10 3A */ slwi r0, r0, 2 -/* 8017EFBC 0017BF1C 7C 63 02 14 */ add r3, r3, r0 -/* 8017EFC0 0017BF20 C0 23 01 70 */ lfs f1, 0x170(r3) -/* 8017EFC4 0017BF24 FC 1F 08 40 */ fcmpo cr0, f31, f1 -/* 8017EFC8 0017BF28 40 81 00 44 */ ble lbl_8017F00C -/* 8017EFCC 0017BF2C 7F C3 F3 78 */ mr r3, r30 -/* 8017EFD0 0017BF30 7F E4 FB 78 */ mr r4, r31 -/* 8017EFD4 0017BF34 4B FF C7 41 */ bl UpdateOrbitPosition__7CPlayerFfR13CStateManager -/* 8017EFD8 0017BF38 80 1E 03 08 */ lwz r0, 0x308(r30) -/* 8017EFDC 0017BF3C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017EFE0 0017BF40 54 00 10 3A */ slwi r0, r0, 2 -/* 8017EFE4 0017BF44 7C 63 02 14 */ add r3, r3, r0 -/* 8017EFE8 0017BF48 C0 03 01 70 */ lfs f0, 0x170(r3) -/* 8017EFEC 0017BF4C D0 1E 03 40 */ stfs f0, 0x340(r30) -/* 8017EFF0 0017BF50 48 00 00 1C */ b lbl_8017F00C -lbl_8017EFF4: -/* 8017EFF4 0017BF54 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017EFF8 0017BF58 7F C3 F3 78 */ mr r3, r30 -/* 8017EFFC 0017BF5C 7F E5 FB 78 */ mr r5, r31 -/* 8017F000 0017BF60 38 81 00 08 */ addi r4, r1, 8 -/* 8017F004 0017BF64 B0 01 00 08 */ sth r0, 8(r1) -/* 8017F008 0017BF68 4B FF C5 E5 */ bl SetOrbitTargetId__7CPlayerF9TUniqueIdR13CStateManager -lbl_8017F00C: -/* 8017F00C 0017BF6C 7F C3 F3 78 */ mr r3, r30 -/* 8017F010 0017BF70 4B FF C7 D5 */ bl UpdateOrbitZPosition__7CPlayerFv -lbl_8017F014: -/* 8017F014 0017BF74 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 -/* 8017F018 0017BF78 80 01 00 74 */ lwz r0, 0x74(r1) -/* 8017F01C 0017BF7C CB E1 00 60 */ lfd f31, 0x60(r1) -/* 8017F020 0017BF80 83 E1 00 5C */ lwz r31, 0x5c(r1) -/* 8017F024 0017BF84 83 C1 00 58 */ lwz r30, 0x58(r1) -/* 8017F028 0017BF88 7C 08 03 A6 */ mtlr r0 -/* 8017F02C 0017BF8C 38 21 00 70 */ addi r1, r1, 0x70 -/* 8017F030 0017BF90 4E 80 00 20 */ blr - -.global GetOrbitMaxLockDistance__7CPlayerCFRC13CStateManager -GetOrbitMaxLockDistance__7CPlayerCFRC13CStateManager: -/* 8017F034 0017BF94 80 64 08 B8 */ lwz r3, 0x8b8(r4) -/* 8017F038 0017BF98 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) -/* 8017F03C 0017BF9C 80 63 00 00 */ lwz r3, 0(r3) -/* 8017F040 0017BFA0 C0 24 01 A0 */ lfs f1, 0x1a0(r4) -/* 8017F044 0017BFA4 80 03 00 14 */ lwz r0, 0x14(r3) -/* 8017F048 0017BFA8 2C 00 00 02 */ cmpwi r0, 2 -/* 8017F04C 0017BFAC 4C 82 00 20 */ bnelr -/* 8017F050 0017BFB0 C0 24 02 24 */ lfs f1, 0x224(r4) -/* 8017F054 0017BFB4 4E 80 00 20 */ blr - -.global GetOrbitMaxTargetDistance__7CPlayerCFRC13CStateManager -GetOrbitMaxTargetDistance__7CPlayerCFRC13CStateManager: -/* 8017F058 0017BFB8 80 64 08 B8 */ lwz r3, 0x8b8(r4) -/* 8017F05C 0017BFBC 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) -/* 8017F060 0017BFC0 80 63 00 00 */ lwz r3, 0(r3) -/* 8017F064 0017BFC4 C0 24 01 9C */ lfs f1, 0x19c(r4) -/* 8017F068 0017BFC8 80 03 00 14 */ lwz r0, 0x14(r3) -/* 8017F06C 0017BFCC 2C 00 00 02 */ cmpwi r0, 2 -/* 8017F070 0017BFD0 4C 82 00 20 */ bnelr -/* 8017F074 0017BFD4 C0 24 02 20 */ lfs f1, 0x220(r4) -/* 8017F078 0017BFD8 4E 80 00 20 */ blr - -.global ValidateOrbitTargetId__7CPlayerCF9TUniqueIdR13CStateManager -ValidateOrbitTargetId__7CPlayerCF9TUniqueIdR13CStateManager: -/* 8017F07C 0017BFDC 94 21 FF 70 */ stwu r1, -0x90(r1) -/* 8017F080 0017BFE0 7C 08 02 A6 */ mflr r0 -/* 8017F084 0017BFE4 90 01 00 94 */ stw r0, 0x94(r1) -/* 8017F088 0017BFE8 DB E1 00 80 */ stfd f31, 0x80(r1) -/* 8017F08C 0017BFEC F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 -/* 8017F090 0017BFF0 DB C1 00 70 */ stfd f30, 0x70(r1) -/* 8017F094 0017BFF4 F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0 -/* 8017F098 0017BFF8 DB A1 00 60 */ stfd f29, 0x60(r1) -/* 8017F09C 0017BFFC F3 A1 00 68 */ psq_st f29, 104(r1), 0, qr0 -/* 8017F0A0 0017C000 93 E1 00 5C */ stw r31, 0x5c(r1) -/* 8017F0A4 0017C004 93 C1 00 58 */ stw r30, 0x58(r1) -/* 8017F0A8 0017C008 93 A1 00 54 */ stw r29, 0x54(r1) -/* 8017F0AC 0017C00C A0 84 00 00 */ lhz r4, 0(r4) -/* 8017F0B0 0017C010 7C 7E 1B 78 */ mr r30, r3 -/* 8017F0B4 0017C014 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017F0B8 0017C018 7C BD 2B 78 */ mr r29, r5 -/* 8017F0BC 0017C01C 7C 04 00 40 */ cmplw r4, r0 -/* 8017F0C0 0017C020 40 82 00 0C */ bne lbl_8017F0CC -/* 8017F0C4 0017C024 38 60 00 01 */ li r3, 1 -/* 8017F0C8 0017C028 48 00 02 28 */ b lbl_8017F2F0 -lbl_8017F0CC: -/* 8017F0CC 0017C02C B0 81 00 08 */ sth r4, 8(r1) -/* 8017F0D0 0017C030 7F A3 EB 78 */ mr r3, r29 -/* 8017F0D4 0017C034 38 81 00 08 */ addi r4, r1, 8 -/* 8017F0D8 0017C038 4B EC D4 CD */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017F0DC 0017C03C 7C 64 1B 78 */ mr r4, r3 -/* 8017F0E0 0017C040 38 61 00 0C */ addi r3, r1, 0xc -/* 8017F0E4 0017C044 4B F3 0B AD */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8017F0E8 0017C048 83 E3 00 04 */ lwz r31, 4(r3) -/* 8017F0EC 0017C04C 28 1F 00 00 */ cmplwi r31, 0 -/* 8017F0F0 0017C050 41 82 00 1C */ beq lbl_8017F10C -/* 8017F0F4 0017C054 88 1F 00 E7 */ lbz r0, 0xe7(r31) -/* 8017F0F8 0017C058 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 8017F0FC 0017C05C 41 82 00 10 */ beq lbl_8017F10C -/* 8017F100 0017C060 88 1F 00 30 */ lbz r0, 0x30(r31) -/* 8017F104 0017C064 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8017F108 0017C068 40 82 00 0C */ bne lbl_8017F114 -lbl_8017F10C: -/* 8017F10C 0017C06C 38 60 00 01 */ li r3, 1 -/* 8017F110 0017C070 48 00 01 E0 */ b lbl_8017F2F0 -lbl_8017F114: -/* 8017F114 0017C074 C0 3E 07 40 */ lfs f1, 0x740(r30) -/* 8017F118 0017C078 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017F11C 0017C07C FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 8017F120 0017C080 41 82 00 0C */ beq lbl_8017F12C -/* 8017F124 0017C084 38 60 00 02 */ li r3, 2 -/* 8017F128 0017C088 48 00 01 C8 */ b lbl_8017F2F0 -lbl_8017F12C: -/* 8017F12C 0017C08C 7F E4 FB 78 */ mr r4, r31 -/* 8017F130 0017C090 7F A5 EB 78 */ mr r5, r29 -/* 8017F134 0017C094 81 9F 00 00 */ lwz r12, 0(r31) -/* 8017F138 0017C098 38 61 00 20 */ addi r3, r1, 0x20 -/* 8017F13C 0017C09C 81 8C 00 48 */ lwz r12, 0x48(r12) -/* 8017F140 0017C0A0 7D 89 03 A6 */ mtctr r12 -/* 8017F144 0017C0A4 4E 80 04 21 */ bctrl -/* 8017F148 0017C0A8 C3 E1 00 20 */ lfs f31, 0x20(r1) -/* 8017F14C 0017C0AC 7F C4 F3 78 */ mr r4, r30 -/* 8017F150 0017C0B0 C3 C1 00 24 */ lfs f30, 0x24(r1) -/* 8017F154 0017C0B4 38 61 00 14 */ addi r3, r1, 0x14 -/* 8017F158 0017C0B8 C3 A1 00 28 */ lfs f29, 0x28(r1) -/* 8017F15C 0017C0BC 48 10 5C 21 */ bl GetEyePosition__7CPlayerCFv -/* 8017F160 0017C0C0 C0 21 00 1C */ lfs f1, 0x1c(r1) -/* 8017F164 0017C0C4 38 61 00 2C */ addi r3, r1, 0x2c -/* 8017F168 0017C0C8 C0 01 00 14 */ lfs f0, 0x14(r1) -/* 8017F16C 0017C0CC EC 7D 08 28 */ fsubs f3, f29, f1 -/* 8017F170 0017C0D0 C0 21 00 18 */ lfs f1, 0x18(r1) -/* 8017F174 0017C0D4 EC 5F 00 28 */ fsubs f2, f31, f0 -/* 8017F178 0017C0D8 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017F17C 0017C0DC EC 3E 08 28 */ fsubs f1, f30, f1 -/* 8017F180 0017C0E0 D0 61 00 34 */ stfs f3, 0x34(r1) -/* 8017F184 0017C0E4 D0 41 00 38 */ stfs f2, 0x38(r1) -/* 8017F188 0017C0E8 D0 21 00 3C */ stfs f1, 0x3c(r1) -/* 8017F18C 0017C0EC D0 61 00 40 */ stfs f3, 0x40(r1) -/* 8017F190 0017C0F0 D0 41 00 2C */ stfs f2, 0x2c(r1) -/* 8017F194 0017C0F4 D0 21 00 30 */ stfs f1, 0x30(r1) -/* 8017F198 0017C0F8 D0 01 00 34 */ stfs f0, 0x34(r1) -/* 8017F19C 0017C0FC 48 19 55 5D */ bl CanBeNormalized__9CVector3fCFv -/* 8017F1A0 0017C100 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017F1A4 0017C104 41 82 00 A8 */ beq lbl_8017F24C -/* 8017F1A8 0017C108 38 61 00 2C */ addi r3, r1, 0x2c -/* 8017F1AC 0017C10C 48 19 57 0D */ bl Magnitude__9CVector3fCFv -/* 8017F1B0 0017C110 C0 02 A2 4C */ lfs f0, lbl_805ABF6C@sda21(r2) -/* 8017F1B4 0017C114 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017F1B8 0017C118 40 81 00 94 */ ble lbl_8017F24C -/* 8017F1BC 0017C11C C0 01 00 40 */ lfs f0, 0x40(r1) -/* 8017F1C0 0017C120 38 61 00 38 */ addi r3, r1, 0x38 -/* 8017F1C4 0017C124 FF E0 02 10 */ fabs f31, f0 -/* 8017F1C8 0017C128 48 19 56 F1 */ bl Magnitude__9CVector3fCFv -/* 8017F1CC 0017C12C FC 40 F8 18 */ frsp f2, f31 -/* 8017F1D0 0017C130 C8 02 A2 40 */ lfd f0, lbl_805ABF60@sda21(r2) -/* 8017F1D4 0017C134 EC 22 08 24 */ fdivs f1, f2, f1 -/* 8017F1D8 0017C138 FC 40 0A 10 */ fabs f2, f1 -/* 8017F1DC 0017C13C FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8017F1E0 0017C140 40 81 00 14 */ ble lbl_8017F1F4 -/* 8017F1E4 0017C144 C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) -/* 8017F1E8 0017C148 C0 42 A2 4C */ lfs f2, lbl_805ABF6C@sda21(r2) -/* 8017F1EC 0017C14C FC 01 00 AE */ fsel f0, f1, f2, f0 -/* 8017F1F0 0017C150 EC 22 00 32 */ fmuls f1, f2, f0 -lbl_8017F1F4: -/* 8017F1F4 0017C154 48 21 5A 59 */ bl asin -/* 8017F1F8 0017C158 C0 41 00 40 */ lfs f2, 0x40(r1) -/* 8017F1FC 0017C15C FC 20 08 18 */ frsp f1, f1 -/* 8017F200 0017C160 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017F204 0017C164 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8017F208 0017C168 4C 41 13 82 */ cror 2, 1, 2 -/* 8017F20C 0017C16C 40 82 00 18 */ bne lbl_8017F224 -/* 8017F210 0017C170 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017F214 0017C174 C0 03 01 88 */ lfs f0, 0x188(r3) -/* 8017F218 0017C178 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017F21C 0017C17C 4C 41 13 82 */ cror 2, 1, 2 -/* 8017F220 0017C180 41 82 00 24 */ beq lbl_8017F244 -lbl_8017F224: -/* 8017F224 0017C184 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017F228 0017C188 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8017F22C 0017C18C 40 80 00 28 */ bge lbl_8017F254 -/* 8017F230 0017C190 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017F234 0017C194 C0 03 01 8C */ lfs f0, 0x18c(r3) -/* 8017F238 0017C198 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017F23C 0017C19C 4C 41 13 82 */ cror 2, 1, 2 -/* 8017F240 0017C1A0 40 82 00 14 */ bne lbl_8017F254 -lbl_8017F244: -/* 8017F244 0017C1A4 38 60 00 04 */ li r3, 4 -/* 8017F248 0017C1A8 48 00 00 A8 */ b lbl_8017F2F0 -lbl_8017F24C: -/* 8017F24C 0017C1AC 38 60 00 04 */ li r3, 4 -/* 8017F250 0017C1B0 48 00 00 A0 */ b lbl_8017F2F0 -lbl_8017F254: -/* 8017F254 0017C1B4 80 7D 08 B8 */ lwz r3, 0x8b8(r29) -/* 8017F258 0017C1B8 A0 1F 00 E6 */ lhz r0, 0xe6(r31) -/* 8017F25C 0017C1BC 80 83 00 00 */ lwz r4, 0(r3) -/* 8017F260 0017C1C0 54 03 DF 3E */ rlwinm r3, r0, 0x1b, 0x1c, 0x1f -/* 8017F264 0017C1C4 80 04 00 14 */ lwz r0, 0x14(r4) -/* 8017F268 0017C1C8 2C 00 00 00 */ cmpwi r0, 0 -/* 8017F26C 0017C1CC 40 82 00 14 */ bne lbl_8017F280 -/* 8017F270 0017C1D0 54 60 07 FF */ clrlwi. r0, r3, 0x1f -/* 8017F274 0017C1D4 40 82 00 0C */ bne lbl_8017F280 -/* 8017F278 0017C1D8 38 60 00 02 */ li r3, 2 -/* 8017F27C 0017C1DC 48 00 00 74 */ b lbl_8017F2F0 -lbl_8017F280: -/* 8017F280 0017C1E0 80 84 00 14 */ lwz r4, 0x14(r4) -/* 8017F284 0017C1E4 2C 04 00 02 */ cmpwi r4, 2 -/* 8017F288 0017C1E8 40 82 00 14 */ bne lbl_8017F29C -/* 8017F28C 0017C1EC 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e -/* 8017F290 0017C1F0 40 82 00 0C */ bne lbl_8017F29C -/* 8017F294 0017C1F4 38 60 00 02 */ li r3, 2 -/* 8017F298 0017C1F8 48 00 00 58 */ b lbl_8017F2F0 -lbl_8017F29C: -/* 8017F29C 0017C1FC 2C 04 00 03 */ cmpwi r4, 3 -/* 8017F2A0 0017C200 40 82 00 14 */ bne lbl_8017F2B4 -/* 8017F2A4 0017C204 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d -/* 8017F2A8 0017C208 40 82 00 0C */ bne lbl_8017F2B4 -/* 8017F2AC 0017C20C 38 60 00 02 */ li r3, 2 -/* 8017F2B0 0017C210 48 00 00 40 */ b lbl_8017F2F0 -lbl_8017F2B4: -/* 8017F2B4 0017C214 2C 04 00 01 */ cmpwi r4, 1 -/* 8017F2B8 0017C218 40 82 00 14 */ bne lbl_8017F2CC -/* 8017F2BC 0017C21C 54 60 07 39 */ rlwinm. r0, r3, 0, 0x1c, 0x1c -/* 8017F2C0 0017C220 40 82 00 0C */ bne lbl_8017F2CC -/* 8017F2C4 0017C224 38 60 00 02 */ li r3, 2 -/* 8017F2C8 0017C228 48 00 00 28 */ b lbl_8017F2F0 -lbl_8017F2CC: -/* 8017F2CC 0017C22C 2C 04 00 02 */ cmpwi r4, 2 -/* 8017F2D0 0017C230 40 82 00 1C */ bne lbl_8017F2EC -/* 8017F2D4 0017C234 80 7F 00 04 */ lwz r3, 4(r31) -/* 8017F2D8 0017C238 80 1E 00 04 */ lwz r0, 4(r30) -/* 8017F2DC 0017C23C 7C 03 00 00 */ cmpw r3, r0 -/* 8017F2E0 0017C240 41 82 00 0C */ beq lbl_8017F2EC -/* 8017F2E4 0017C244 38 60 00 06 */ li r3, 6 -/* 8017F2E8 0017C248 48 00 00 08 */ b lbl_8017F2F0 -lbl_8017F2EC: -/* 8017F2EC 0017C24C 38 60 00 00 */ li r3, 0 -lbl_8017F2F0: -/* 8017F2F0 0017C250 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 -/* 8017F2F4 0017C254 CB E1 00 80 */ lfd f31, 0x80(r1) -/* 8017F2F8 0017C258 E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0 -/* 8017F2FC 0017C25C CB C1 00 70 */ lfd f30, 0x70(r1) -/* 8017F300 0017C260 E3 A1 00 68 */ psq_l f29, 104(r1), 0, qr0 -/* 8017F304 0017C264 CB A1 00 60 */ lfd f29, 0x60(r1) -/* 8017F308 0017C268 83 E1 00 5C */ lwz r31, 0x5c(r1) -/* 8017F30C 0017C26C 83 C1 00 58 */ lwz r30, 0x58(r1) -/* 8017F310 0017C270 80 01 00 94 */ lwz r0, 0x94(r1) -/* 8017F314 0017C274 83 A1 00 54 */ lwz r29, 0x54(r1) -/* 8017F318 0017C278 7C 08 03 A6 */ mtlr r0 -/* 8017F31C 0017C27C 38 21 00 90 */ addi r1, r1, 0x90 -/* 8017F320 0017C280 4E 80 00 20 */ blr - -.global ValidateCurrentOrbitTargetId__7CPlayerFR13CStateManager -ValidateCurrentOrbitTargetId__7CPlayerFR13CStateManager: -/* 8017F324 0017C284 94 21 F6 B0 */ stwu r1, -0x950(r1) -/* 8017F328 0017C288 7C 08 02 A6 */ mflr r0 -/* 8017F32C 0017C28C 90 01 09 54 */ stw r0, 0x954(r1) -/* 8017F330 0017C290 DB E1 09 40 */ stfd f31, 0x940(r1) -/* 8017F334 0017C294 F3 E1 09 48 */ psq_st f31, -1720(r1), 0, qr0 -/* 8017F338 0017C298 DB C1 09 30 */ stfd f30, 0x930(r1) -/* 8017F33C 0017C29C F3 C1 09 38 */ psq_st f30, -1736(r1), 0, qr0 -/* 8017F340 0017C2A0 DB A1 09 20 */ stfd f29, 0x920(r1) -/* 8017F344 0017C2A4 F3 A1 09 28 */ psq_st f29, -1752(r1), 0, qr0 -/* 8017F348 0017C2A8 BF 41 09 08 */ stmw r26, 0x908(r1) -/* 8017F34C 0017C2AC 7C 7A 1B 78 */ mr r26, r3 -/* 8017F350 0017C2B0 7C 9B 23 78 */ mr r27, r4 -/* 8017F354 0017C2B4 A0 03 03 10 */ lhz r0, 0x310(r3) -/* 8017F358 0017C2B8 7F 63 DB 78 */ mr r3, r27 -/* 8017F35C 0017C2BC 38 81 00 24 */ addi r4, r1, 0x24 -/* 8017F360 0017C2C0 B0 01 00 20 */ sth r0, 0x20(r1) -/* 8017F364 0017C2C4 B0 01 00 24 */ sth r0, 0x24(r1) -/* 8017F368 0017C2C8 4B EC D2 3D */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017F36C 0017C2CC 7C 64 1B 78 */ mr r4, r3 -/* 8017F370 0017C2D0 38 61 00 44 */ addi r3, r1, 0x44 -/* 8017F374 0017C2D4 4B F3 09 1D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8017F378 0017C2D8 83 C3 00 04 */ lwz r30, 4(r3) -/* 8017F37C 0017C2DC 28 1E 00 00 */ cmplwi r30, 0 -/* 8017F380 0017C2E0 41 82 00 1C */ beq lbl_8017F39C -/* 8017F384 0017C2E4 88 1E 00 E7 */ lbz r0, 0xe7(r30) -/* 8017F388 0017C2E8 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 8017F38C 0017C2EC 41 82 00 10 */ beq lbl_8017F39C -/* 8017F390 0017C2F0 88 1E 00 30 */ lbz r0, 0x30(r30) -/* 8017F394 0017C2F4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8017F398 0017C2F8 40 82 00 0C */ bne lbl_8017F3A4 -lbl_8017F39C: -/* 8017F39C 0017C2FC 38 60 00 01 */ li r3, 1 -/* 8017F3A0 0017C300 48 00 05 44 */ b lbl_8017F8E4 -lbl_8017F3A4: -/* 8017F3A4 0017C304 80 BE 00 68 */ lwz r5, 0x68(r30) -/* 8017F3A8 0017C308 38 00 02 00 */ li r0, 0x200 -/* 8017F3AC 0017C30C 80 DE 00 6C */ lwz r6, 0x6c(r30) -/* 8017F3B0 0017C310 38 80 00 00 */ li r4, 0 -/* 8017F3B4 0017C314 7C A0 00 38 */ and r0, r5, r0 -/* 8017F3B8 0017C318 7C C3 20 38 */ and r3, r6, r4 -/* 8017F3BC 0017C31C 7C 63 22 78 */ xor r3, r3, r4 -/* 8017F3C0 0017C320 7C 00 22 78 */ xor r0, r0, r4 -/* 8017F3C4 0017C324 7C 60 03 79 */ or. r0, r3, r0 -/* 8017F3C8 0017C328 41 82 00 08 */ beq lbl_8017F3D0 -/* 8017F3CC 0017C32C 38 80 00 01 */ li r4, 1 -lbl_8017F3D0: -/* 8017F3D0 0017C330 54 80 06 3F */ clrlwi. r0, r4, 0x18 -/* 8017F3D4 0017C334 40 82 00 48 */ bne lbl_8017F41C -/* 8017F3D8 0017C338 38 80 00 00 */ li r4, 0 -/* 8017F3DC 0017C33C 38 00 00 80 */ li r0, 0x80 -/* 8017F3E0 0017C340 7C C3 20 38 */ and r3, r6, r4 -/* 8017F3E4 0017C344 7C A0 00 38 */ and r0, r5, r0 -/* 8017F3E8 0017C348 7C 63 22 78 */ xor r3, r3, r4 -/* 8017F3EC 0017C34C 7C 00 22 78 */ xor r0, r0, r4 -/* 8017F3F0 0017C350 7C 60 03 79 */ or. r0, r3, r0 -/* 8017F3F4 0017C354 40 82 00 0C */ bne lbl_8017F400 -/* 8017F3F8 0017C358 38 60 00 03 */ li r3, 3 -/* 8017F3FC 0017C35C 48 00 04 E8 */ b lbl_8017F8E4 -lbl_8017F400: -/* 8017F400 0017C360 80 7B 08 B8 */ lwz r3, 0x8b8(r27) -/* 8017F404 0017C364 80 63 00 00 */ lwz r3, 0(r3) -/* 8017F408 0017C368 80 03 00 14 */ lwz r0, 0x14(r3) -/* 8017F40C 0017C36C 2C 00 00 02 */ cmpwi r0, 2 -/* 8017F410 0017C370 41 82 00 0C */ beq lbl_8017F41C -/* 8017F414 0017C374 38 60 00 03 */ li r3, 3 -/* 8017F418 0017C378 48 00 04 CC */ b lbl_8017F8E4 -lbl_8017F41C: -/* 8017F41C 0017C37C A0 1A 03 10 */ lhz r0, 0x310(r26) -/* 8017F420 0017C380 7F 43 D3 78 */ mr r3, r26 -/* 8017F424 0017C384 7F 65 DB 78 */ mr r5, r27 -/* 8017F428 0017C388 38 81 00 1C */ addi r4, r1, 0x1c -/* 8017F42C 0017C38C B0 01 00 18 */ sth r0, 0x18(r1) -/* 8017F430 0017C390 B0 01 00 1C */ sth r0, 0x1c(r1) -/* 8017F434 0017C394 4B FF FC 49 */ bl ValidateOrbitTargetId__7CPlayerCF9TUniqueIdR13CStateManager -/* 8017F438 0017C398 2C 03 00 00 */ cmpwi r3, 0 -/* 8017F43C 0017C39C 41 82 00 08 */ beq lbl_8017F444 -/* 8017F440 0017C3A0 48 00 04 A4 */ b lbl_8017F8E4 -lbl_8017F444: -/* 8017F444 0017C3A4 80 7B 08 B8 */ lwz r3, 0x8b8(r27) -/* 8017F448 0017C3A8 80 63 00 00 */ lwz r3, 0(r3) -/* 8017F44C 0017C3AC 80 03 00 14 */ lwz r0, 0x14(r3) -/* 8017F450 0017C3B0 2C 00 00 02 */ cmpwi r0, 2 -/* 8017F454 0017C3B4 40 82 00 1C */ bne lbl_8017F470 -/* 8017F458 0017C3B8 80 7E 00 04 */ lwz r3, 4(r30) -/* 8017F45C 0017C3BC 80 1A 00 04 */ lwz r0, 4(r26) -/* 8017F460 0017C3C0 7C 03 00 00 */ cmpw r3, r0 -/* 8017F464 0017C3C4 41 82 00 0C */ beq lbl_8017F470 -/* 8017F468 0017C3C8 38 60 00 06 */ li r3, 6 -/* 8017F46C 0017C3CC 48 00 04 78 */ b lbl_8017F8E4 -lbl_8017F470: -/* 8017F470 0017C3D0 A0 1A 03 10 */ lhz r0, 0x310(r26) -/* 8017F474 0017C3D4 7F 63 DB 78 */ mr r3, r27 -/* 8017F478 0017C3D8 38 81 00 14 */ addi r4, r1, 0x14 -/* 8017F47C 0017C3DC B0 01 00 10 */ sth r0, 0x10(r1) -/* 8017F480 0017C3E0 B0 01 00 14 */ sth r0, 0x14(r1) -/* 8017F484 0017C3E4 4B EC D1 21 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017F488 0017C3E8 7C 64 1B 78 */ mr r4, r3 -/* 8017F48C 0017C3EC 38 61 00 3C */ addi r3, r1, 0x3c -/* 8017F490 0017C3F0 4B F2 A6 39 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" -/* 8017F494 0017C3F4 80 9B 08 B8 */ lwz r4, 0x8b8(r27) -/* 8017F498 0017C3F8 83 A3 00 04 */ lwz r29, 4(r3) -/* 8017F49C 0017C3FC 80 64 00 00 */ lwz r3, 0(r4) -/* 8017F4A0 0017C400 80 03 00 14 */ lwz r0, 0x14(r3) -/* 8017F4A4 0017C404 2C 00 00 02 */ cmpwi r0, 2 -/* 8017F4A8 0017C408 40 82 00 14 */ bne lbl_8017F4BC -/* 8017F4AC 0017C40C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017F4B0 0017C410 88 03 02 1C */ lbz r0, 0x21c(r3) -/* 8017F4B4 0017C414 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f -/* 8017F4B8 0017C418 40 82 00 1C */ bne lbl_8017F4D4 -lbl_8017F4BC: -/* 8017F4BC 0017C41C 28 1D 00 00 */ cmplwi r29, 0 -/* 8017F4C0 0017C420 40 82 00 14 */ bne lbl_8017F4D4 -/* 8017F4C4 0017C424 80 7E 00 04 */ lwz r3, 4(r30) -/* 8017F4C8 0017C428 80 1A 00 04 */ lwz r0, 4(r26) -/* 8017F4CC 0017C42C 7C 03 00 00 */ cmpw r3, r0 -/* 8017F4D0 0017C430 41 82 02 FC */ beq lbl_8017F7CC -lbl_8017F4D4: -/* 8017F4D4 0017C434 7F 44 D3 78 */ mr r4, r26 -/* 8017F4D8 0017C438 38 61 00 94 */ addi r3, r1, 0x94 -/* 8017F4DC 0017C43C 48 10 58 A1 */ bl GetEyePosition__7CPlayerCFv -/* 8017F4E0 0017C440 C0 41 00 94 */ lfs f2, 0x94(r1) -/* 8017F4E4 0017C444 38 C0 00 00 */ li r6, 0 -/* 8017F4E8 0017C448 C0 21 00 98 */ lfs f1, 0x98(r1) -/* 8017F4EC 0017C44C 7F C4 F3 78 */ mr r4, r30 -/* 8017F4F0 0017C450 C0 01 00 9C */ lfs f0, 0x9c(r1) -/* 8017F4F4 0017C454 7F 65 DB 78 */ mr r5, r27 -/* 8017F4F8 0017C458 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017F4FC 0017C45C 38 61 00 88 */ addi r3, r1, 0x88 -/* 8017F500 0017C460 D0 41 00 B8 */ stfs f2, 0xb8(r1) -/* 8017F504 0017C464 D0 21 00 BC */ stfs f1, 0xbc(r1) -/* 8017F508 0017C468 D0 01 00 C0 */ stfs f0, 0xc0(r1) -/* 8017F50C 0017C46C 90 C1 00 F8 */ stw r6, 0xf8(r1) -/* 8017F510 0017C470 B0 01 00 28 */ sth r0, 0x28(r1) -/* 8017F514 0017C474 81 9E 00 00 */ lwz r12, 0(r30) -/* 8017F518 0017C478 81 8C 00 48 */ lwz r12, 0x48(r12) -/* 8017F51C 0017C47C 7D 89 03 A6 */ mtctr r12 -/* 8017F520 0017C480 4E 80 04 21 */ bctrl -/* 8017F524 0017C484 C0 21 00 8C */ lfs f1, 0x8c(r1) -/* 8017F528 0017C488 38 61 00 AC */ addi r3, r1, 0xac -/* 8017F52C 0017C48C C0 01 00 BC */ lfs f0, 0xbc(r1) -/* 8017F530 0017C490 C0 61 00 90 */ lfs f3, 0x90(r1) -/* 8017F534 0017C494 C0 41 00 C0 */ lfs f2, 0xc0(r1) -/* 8017F538 0017C498 EC 81 00 28 */ fsubs f4, f1, f0 -/* 8017F53C 0017C49C C0 21 00 88 */ lfs f1, 0x88(r1) -/* 8017F540 0017C4A0 C0 01 00 B8 */ lfs f0, 0xb8(r1) -/* 8017F544 0017C4A4 EC 43 10 28 */ fsubs f2, f3, f2 -/* 8017F548 0017C4A8 D0 81 00 B0 */ stfs f4, 0xb0(r1) -/* 8017F54C 0017C4AC EC 01 00 28 */ fsubs f0, f1, f0 -/* 8017F550 0017C4B0 D0 41 00 B4 */ stfs f2, 0xb4(r1) -/* 8017F554 0017C4B4 D0 01 00 AC */ stfs f0, 0xac(r1) -/* 8017F558 0017C4B8 48 19 51 A1 */ bl CanBeNormalized__9CVector3fCFv -/* 8017F55C 0017C4BC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017F560 0017C4C0 41 82 02 18 */ beq lbl_8017F778 -/* 8017F564 0017C4C4 38 61 00 AC */ addi r3, r1, 0xac -/* 8017F568 0017C4C8 48 19 53 51 */ bl Magnitude__9CVector3fCFv -/* 8017F56C 0017C4CC FF E0 08 90 */ fmr f31, f1 -/* 8017F570 0017C4D0 38 61 00 7C */ addi r3, r1, 0x7c -/* 8017F574 0017C4D4 38 81 00 AC */ addi r4, r1, 0xac -/* 8017F578 0017C4D8 48 19 52 D9 */ bl AsNormalized__9CVector3fCFv -/* 8017F57C 0017C4DC FC 20 F8 90 */ fmr f1, f31 -/* 8017F580 0017C4E0 3C 60 80 47 */ lis r3, lbl_8046C8D8@ha -/* 8017F584 0017C4E4 38 E3 C8 D8 */ addi r7, r3, lbl_8046C8D8@l -/* 8017F588 0017C4E8 7F C8 F3 78 */ mr r8, r30 -/* 8017F58C 0017C4EC 7F 63 DB 78 */ mr r3, r27 -/* 8017F590 0017C4F0 38 81 00 F8 */ addi r4, r1, 0xf8 -/* 8017F594 0017C4F4 38 A1 00 B8 */ addi r5, r1, 0xb8 -/* 8017F598 0017C4F8 38 C1 00 7C */ addi r6, r1, 0x7c -/* 8017F59C 0017C4FC 4B EC D1 3D */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor" -/* 8017F5A0 0017C500 3B E1 00 FC */ addi r31, r1, 0xfc -/* 8017F5A4 0017C504 7F FC FB 78 */ mr r28, r31 -/* 8017F5A8 0017C508 48 00 00 E0 */ b lbl_8017F688 -lbl_8017F5AC: -/* 8017F5AC 0017C50C A0 1C 00 00 */ lhz r0, 0(r28) -/* 8017F5B0 0017C510 7F 63 DB 78 */ mr r3, r27 -/* 8017F5B4 0017C514 38 81 00 0C */ addi r4, r1, 0xc -/* 8017F5B8 0017C518 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8017F5BC 0017C51C 4B EC CF E9 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017F5C0 0017C520 28 03 00 00 */ cmplwi r3, 0 -/* 8017F5C4 0017C524 41 82 00 C0 */ beq lbl_8017F684 -/* 8017F5C8 0017C528 80 A3 00 04 */ lwz r5, 4(r3) -/* 8017F5CC 0017C52C 80 1B 08 CC */ lwz r0, 0x8cc(r27) -/* 8017F5D0 0017C530 7C 05 00 00 */ cmpw r5, r0 -/* 8017F5D4 0017C534 41 82 00 B0 */ beq lbl_8017F684 -/* 8017F5D8 0017C538 80 9B 08 50 */ lwz r4, 0x850(r27) -/* 8017F5DC 0017C53C 54 A3 18 38 */ slwi r3, r5, 3 -/* 8017F5E0 0017C540 38 03 00 04 */ addi r0, r3, 4 -/* 8017F5E4 0017C544 90 A1 00 2C */ stw r5, 0x2c(r1) -/* 8017F5E8 0017C548 80 64 00 20 */ lwz r3, 0x20(r4) -/* 8017F5EC 0017C54C 90 A1 00 30 */ stw r5, 0x30(r1) -/* 8017F5F0 0017C550 7C 63 00 2E */ lwzx r3, r3, r0 -/* 8017F5F4 0017C554 88 03 00 F0 */ lbz r0, 0xf0(r3) -/* 8017F5F8 0017C558 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8017F5FC 0017C55C 41 82 00 10 */ beq lbl_8017F60C -/* 8017F600 0017C560 80 63 01 2C */ lwz r3, 0x12c(r3) -/* 8017F604 0017C564 80 03 10 DC */ lwz r0, 0x10dc(r3) -/* 8017F608 0017C568 48 00 00 08 */ b lbl_8017F610 -lbl_8017F60C: -/* 8017F60C 0017C56C 38 00 00 00 */ li r0, 0 -lbl_8017F610: -/* 8017F610 0017C570 2C 00 00 00 */ cmpwi r0, 0 -/* 8017F614 0017C574 40 82 00 70 */ bne lbl_8017F684 -/* 8017F618 0017C578 7C 1C F8 40 */ cmplw r28, r31 -/* 8017F61C 0017C57C 41 80 00 54 */ blt lbl_8017F670 -/* 8017F620 0017C580 80 01 00 F8 */ lwz r0, 0xf8(r1) -/* 8017F624 0017C584 54 00 08 3C */ slwi r0, r0, 1 -/* 8017F628 0017C588 7C 1F 02 14 */ add r0, r31, r0 -/* 8017F62C 0017C58C 7C 1C 00 40 */ cmplw r28, r0 -/* 8017F630 0017C590 40 80 00 40 */ bge lbl_8017F670 -/* 8017F634 0017C594 7F 85 E3 78 */ mr r5, r28 -/* 8017F638 0017C598 48 00 00 10 */ b lbl_8017F648 -lbl_8017F63C: -/* 8017F63C 0017C59C A0 05 00 02 */ lhz r0, 2(r5) -/* 8017F640 0017C5A0 B0 05 00 00 */ sth r0, 0(r5) -/* 8017F644 0017C5A4 38 A5 00 02 */ addi r5, r5, 2 -lbl_8017F648: -/* 8017F648 0017C5A8 80 81 00 F8 */ lwz r4, 0xf8(r1) -/* 8017F64C 0017C5AC 54 83 08 3C */ slwi r3, r4, 1 -/* 8017F650 0017C5B0 38 03 FF FE */ addi r0, r3, -2 -/* 8017F654 0017C5B4 7C 1F 02 14 */ add r0, r31, r0 -/* 8017F658 0017C5B8 7C 05 00 40 */ cmplw r5, r0 -/* 8017F65C 0017C5BC 41 80 FF E0 */ blt lbl_8017F63C -/* 8017F660 0017C5C0 38 04 FF FF */ addi r0, r4, -1 -/* 8017F664 0017C5C4 7F 83 E3 78 */ mr r3, r28 -/* 8017F668 0017C5C8 90 01 00 F8 */ stw r0, 0xf8(r1) -/* 8017F66C 0017C5CC 48 00 00 10 */ b lbl_8017F67C -lbl_8017F670: -/* 8017F670 0017C5D0 80 01 00 F8 */ lwz r0, 0xf8(r1) -/* 8017F674 0017C5D4 54 00 08 3C */ slwi r0, r0, 1 -/* 8017F678 0017C5D8 7C 7F 02 14 */ add r3, r31, r0 -lbl_8017F67C: -/* 8017F67C 0017C5DC 7C 7C 1B 78 */ mr r28, r3 -/* 8017F680 0017C5E0 48 00 00 08 */ b lbl_8017F688 -lbl_8017F684: -/* 8017F684 0017C5E4 3B 9C 00 02 */ addi r28, r28, 2 -lbl_8017F688: -/* 8017F688 0017C5E8 80 01 00 F8 */ lwz r0, 0xf8(r1) -/* 8017F68C 0017C5EC 54 00 08 3C */ slwi r0, r0, 1 -/* 8017F690 0017C5F0 7C 1F 02 14 */ add r0, r31, r0 -/* 8017F694 0017C5F4 7C 1C 00 40 */ cmplw r28, r0 -/* 8017F698 0017C5F8 40 82 FF 14 */ bne lbl_8017F5AC -/* 8017F69C 0017C5FC 38 61 00 AC */ addi r3, r1, 0xac -/* 8017F6A0 0017C600 48 19 52 19 */ bl Magnitude__9CVector3fCFv -/* 8017F6A4 0017C604 FF E0 08 90 */ fmr f31, f1 -/* 8017F6A8 0017C608 38 61 00 70 */ addi r3, r1, 0x70 -/* 8017F6AC 0017C60C 38 81 00 AC */ addi r4, r1, 0xac -/* 8017F6B0 0017C610 48 19 51 A1 */ bl AsNormalized__9CVector3fCFv -/* 8017F6B4 0017C614 FC 20 F8 90 */ fmr f1, f31 -/* 8017F6B8 0017C618 3C 60 80 47 */ lis r3, lbl_8046C8C0@ha -/* 8017F6BC 0017C61C 39 03 C8 C0 */ addi r8, r3, lbl_8046C8C0@l -/* 8017F6C0 0017C620 7F 64 DB 78 */ mr r4, r27 -/* 8017F6C4 0017C624 38 61 00 C8 */ addi r3, r1, 0xc8 -/* 8017F6C8 0017C628 38 A1 00 28 */ addi r5, r1, 0x28 -/* 8017F6CC 0017C62C 38 C1 00 B8 */ addi r6, r1, 0xb8 -/* 8017F6D0 0017C630 38 E1 00 70 */ addi r7, r1, 0x70 -/* 8017F6D4 0017C634 39 21 00 F8 */ addi r9, r1, 0xf8 -/* 8017F6D8 0017C638 4B EC D8 ED */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 8017F6DC 0017C63C 88 01 00 E8 */ lbz r0, 0xe8(r1) -/* 8017F6E0 0017C640 28 00 00 00 */ cmplwi r0, 0 -/* 8017F6E4 0017C644 41 82 00 94 */ beq lbl_8017F778 -/* 8017F6E8 0017C648 A0 01 00 28 */ lhz r0, 0x28(r1) -/* 8017F6EC 0017C64C 7F 63 DB 78 */ mr r3, r27 -/* 8017F6F0 0017C650 38 81 00 08 */ addi r4, r1, 8 -/* 8017F6F4 0017C654 B0 01 00 08 */ sth r0, 8(r1) -/* 8017F6F8 0017C658 4B EC CE AD */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017F6FC 0017C65C 7C 64 1B 78 */ mr r4, r3 -/* 8017F700 0017C660 38 61 00 34 */ addi r3, r1, 0x34 -/* 8017F704 0017C664 4B F2 A9 ED */ bl "__ct__25TCastToPtr<11CScriptDoor>FP7CEntity" -/* 8017F708 0017C668 80 03 00 04 */ lwz r0, 4(r3) -/* 8017F70C 0017C66C 28 00 00 00 */ cmplwi r0, 0 -/* 8017F710 0017C670 40 82 00 0C */ bne lbl_8017F71C -/* 8017F714 0017C674 28 1D 00 00 */ cmplwi r29, 0 -/* 8017F718 0017C678 41 82 00 60 */ beq lbl_8017F778 -lbl_8017F71C: -/* 8017F71C 0017C67C 80 A1 00 F8 */ lwz r5, 0xf8(r1) -/* 8017F720 0017C680 38 60 00 00 */ li r3, 0 -/* 8017F724 0017C684 2C 05 00 00 */ cmpwi r5, 0 -/* 8017F728 0017C688 40 81 00 40 */ ble lbl_8017F768 -/* 8017F72C 0017C68C 2C 05 00 08 */ cmpwi r5, 8 -/* 8017F730 0017C690 38 85 FF F8 */ addi r4, r5, -8 -/* 8017F734 0017C694 40 81 00 20 */ ble lbl_8017F754 -/* 8017F738 0017C698 38 04 00 07 */ addi r0, r4, 7 -/* 8017F73C 0017C69C 54 00 E8 FE */ srwi r0, r0, 3 -/* 8017F740 0017C6A0 7C 09 03 A6 */ mtctr r0 -/* 8017F744 0017C6A4 2C 04 00 00 */ cmpwi r4, 0 -/* 8017F748 0017C6A8 40 81 00 0C */ ble lbl_8017F754 -lbl_8017F74C: -/* 8017F74C 0017C6AC 38 63 00 08 */ addi r3, r3, 8 -/* 8017F750 0017C6B0 42 00 FF FC */ bdnz lbl_8017F74C -lbl_8017F754: -/* 8017F754 0017C6B4 7C 03 28 50 */ subf r0, r3, r5 -/* 8017F758 0017C6B8 7C 09 03 A6 */ mtctr r0 -/* 8017F75C 0017C6BC 7C 03 28 00 */ cmpw r3, r5 -/* 8017F760 0017C6C0 40 80 00 08 */ bge lbl_8017F768 -lbl_8017F764: -/* 8017F764 0017C6C4 42 00 00 00 */ bdnz lbl_8017F764 -lbl_8017F768: -/* 8017F768 0017C6C8 38 00 00 00 */ li r0, 0 -/* 8017F76C 0017C6CC 38 60 00 06 */ li r3, 6 -/* 8017F770 0017C6D0 90 01 00 F8 */ stw r0, 0xf8(r1) -/* 8017F774 0017C6D4 48 00 01 70 */ b lbl_8017F8E4 -lbl_8017F778: -/* 8017F778 0017C6D8 80 A1 00 F8 */ lwz r5, 0xf8(r1) -/* 8017F77C 0017C6DC 38 60 00 00 */ li r3, 0 -/* 8017F780 0017C6E0 2C 05 00 00 */ cmpwi r5, 0 -/* 8017F784 0017C6E4 40 81 00 40 */ ble lbl_8017F7C4 -/* 8017F788 0017C6E8 2C 05 00 08 */ cmpwi r5, 8 -/* 8017F78C 0017C6EC 38 85 FF F8 */ addi r4, r5, -8 -/* 8017F790 0017C6F0 40 81 00 20 */ ble lbl_8017F7B0 -/* 8017F794 0017C6F4 38 04 00 07 */ addi r0, r4, 7 -/* 8017F798 0017C6F8 54 00 E8 FE */ srwi r0, r0, 3 -/* 8017F79C 0017C6FC 7C 09 03 A6 */ mtctr r0 -/* 8017F7A0 0017C700 2C 04 00 00 */ cmpwi r4, 0 -/* 8017F7A4 0017C704 40 81 00 0C */ ble lbl_8017F7B0 -lbl_8017F7A8: -/* 8017F7A8 0017C708 38 63 00 08 */ addi r3, r3, 8 -/* 8017F7AC 0017C70C 42 00 FF FC */ bdnz lbl_8017F7A8 -lbl_8017F7B0: -/* 8017F7B0 0017C710 7C 03 28 50 */ subf r0, r3, r5 -/* 8017F7B4 0017C714 7C 09 03 A6 */ mtctr r0 -/* 8017F7B8 0017C718 7C 03 28 00 */ cmpw r3, r5 -/* 8017F7BC 0017C71C 40 80 00 08 */ bge lbl_8017F7C4 -lbl_8017F7C0: -/* 8017F7C0 0017C720 42 00 00 00 */ bdnz lbl_8017F7C0 -lbl_8017F7C4: -/* 8017F7C4 0017C724 38 00 00 00 */ li r0, 0 -/* 8017F7C8 0017C728 90 01 00 F8 */ stw r0, 0xf8(r1) -lbl_8017F7CC: -/* 8017F7CC 0017C72C 7F C4 F3 78 */ mr r4, r30 -/* 8017F7D0 0017C730 7F 65 DB 78 */ mr r5, r27 -/* 8017F7D4 0017C734 81 9E 00 00 */ lwz r12, 0(r30) -/* 8017F7D8 0017C738 38 61 00 64 */ addi r3, r1, 0x64 -/* 8017F7DC 0017C73C 81 8C 00 48 */ lwz r12, 0x48(r12) -/* 8017F7E0 0017C740 7D 89 03 A6 */ mtctr r12 -/* 8017F7E4 0017C744 4E 80 04 21 */ bctrl -/* 8017F7E8 0017C748 C3 A1 00 64 */ lfs f29, 0x64(r1) -/* 8017F7EC 0017C74C 7F 44 D3 78 */ mr r4, r26 -/* 8017F7F0 0017C750 C3 C1 00 68 */ lfs f30, 0x68(r1) -/* 8017F7F4 0017C754 38 61 00 58 */ addi r3, r1, 0x58 -/* 8017F7F8 0017C758 C3 E1 00 6C */ lfs f31, 0x6c(r1) -/* 8017F7FC 0017C75C 48 10 55 81 */ bl GetEyePosition__7CPlayerCFv -/* 8017F800 0017C760 C0 01 00 60 */ lfs f0, 0x60(r1) -/* 8017F804 0017C764 38 61 00 A0 */ addi r3, r1, 0xa0 -/* 8017F808 0017C768 C0 61 00 58 */ lfs f3, 0x58(r1) -/* 8017F80C 0017C76C EC 3F 00 28 */ fsubs f1, f31, f0 -/* 8017F810 0017C770 C0 41 00 5C */ lfs f2, 0x5c(r1) -/* 8017F814 0017C774 EC 7D 18 28 */ fsubs f3, f29, f3 -/* 8017F818 0017C778 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017F81C 0017C77C EC 5E 10 28 */ fsubs f2, f30, f2 -/* 8017F820 0017C780 D0 21 00 A8 */ stfs f1, 0xa8(r1) -/* 8017F824 0017C784 D0 61 00 A0 */ stfs f3, 0xa0(r1) -/* 8017F828 0017C788 D0 41 00 A4 */ stfs f2, 0xa4(r1) -/* 8017F82C 0017C78C D0 01 00 A8 */ stfs f0, 0xa8(r1) -/* 8017F830 0017C790 48 19 4E C9 */ bl CanBeNormalized__9CVector3fCFv -/* 8017F834 0017C794 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017F838 0017C798 41 82 00 A0 */ beq lbl_8017F8D8 -/* 8017F83C 0017C79C C3 BA 00 58 */ lfs f29, 0x58(r26) -/* 8017F840 0017C7A0 38 61 00 4C */ addi r3, r1, 0x4c -/* 8017F844 0017C7A4 C3 DA 00 48 */ lfs f30, 0x48(r26) -/* 8017F848 0017C7A8 38 81 00 A0 */ addi r4, r1, 0xa0 -/* 8017F84C 0017C7AC C3 FA 00 38 */ lfs f31, 0x38(r26) -/* 8017F850 0017C7B0 48 19 50 01 */ bl AsNormalized__9CVector3fCFv -/* 8017F854 0017C7B4 C0 01 00 50 */ lfs f0, 0x50(r1) -/* 8017F858 0017C7B8 C0 41 00 4C */ lfs f2, 0x4c(r1) -/* 8017F85C 0017C7BC EC 20 07 B2 */ fmuls f1, f0, f30 -/* 8017F860 0017C7C0 C0 61 00 54 */ lfs f3, 0x54(r1) -/* 8017F864 0017C7C4 C8 02 A2 40 */ lfd f0, lbl_805ABF60@sda21(r2) -/* 8017F868 0017C7C8 EC 22 0F FA */ fmadds f1, f2, f31, f1 -/* 8017F86C 0017C7CC EC 23 0F 7A */ fmadds f1, f3, f29, f1 -/* 8017F870 0017C7D0 FC 40 0A 10 */ fabs f2, f1 -/* 8017F874 0017C7D4 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8017F878 0017C7D8 40 81 00 14 */ ble lbl_8017F88C -/* 8017F87C 0017C7DC C0 02 A2 48 */ lfs f0, lbl_805ABF68@sda21(r2) -/* 8017F880 0017C7E0 C0 42 A2 4C */ lfs f2, lbl_805ABF6C@sda21(r2) -/* 8017F884 0017C7E4 FC 01 00 AE */ fsel f0, f1, f2, f0 -/* 8017F888 0017C7E8 EC 22 00 32 */ fmuls f1, f2, f0 -lbl_8017F88C: -/* 8017F88C 0017C7EC 48 21 53 A1 */ bl acos -/* 8017F890 0017C7F0 88 1A 03 74 */ lbz r0, 0x374(r26) -/* 8017F894 0017C7F4 FC 20 08 18 */ frsp f1, f1 -/* 8017F898 0017C7F8 28 00 00 00 */ cmplwi r0, 0 -/* 8017F89C 0017C7FC 41 82 00 20 */ beq lbl_8017F8BC -/* 8017F8A0 0017C800 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) -/* 8017F8A4 0017C804 C0 03 01 90 */ lfs f0, 0x190(r3) -/* 8017F8A8 0017C808 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017F8AC 0017C80C 4C 41 13 82 */ cror 2, 1, 2 -/* 8017F8B0 0017C810 40 82 00 30 */ bne lbl_8017F8E0 -/* 8017F8B4 0017C814 38 60 00 05 */ li r3, 5 -/* 8017F8B8 0017C818 48 00 00 2C */ b lbl_8017F8E4 -lbl_8017F8BC: -/* 8017F8BC 0017C81C C0 02 A2 60 */ lfs f0, lbl_805ABF80@sda21(r2) -/* 8017F8C0 0017C820 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8017F8C4 0017C824 4C 40 13 82 */ cror 2, 0, 2 -/* 8017F8C8 0017C828 40 82 00 18 */ bne lbl_8017F8E0 -/* 8017F8CC 0017C82C 38 00 00 01 */ li r0, 1 -/* 8017F8D0 0017C830 98 1A 03 74 */ stb r0, 0x374(r26) -/* 8017F8D4 0017C834 48 00 00 0C */ b lbl_8017F8E0 -lbl_8017F8D8: -/* 8017F8D8 0017C838 38 60 00 05 */ li r3, 5 -/* 8017F8DC 0017C83C 48 00 00 08 */ b lbl_8017F8E4 -lbl_8017F8E0: -/* 8017F8E0 0017C840 38 60 00 00 */ li r3, 0 -lbl_8017F8E4: -/* 8017F8E4 0017C844 E3 E1 09 48 */ psq_l f31, -1720(r1), 0, qr0 -/* 8017F8E8 0017C848 CB E1 09 40 */ lfd f31, 0x940(r1) -/* 8017F8EC 0017C84C E3 C1 09 38 */ psq_l f30, -1736(r1), 0, qr0 -/* 8017F8F0 0017C850 CB C1 09 30 */ lfd f30, 0x930(r1) -/* 8017F8F4 0017C854 E3 A1 09 28 */ psq_l f29, -1752(r1), 0, qr0 -/* 8017F8F8 0017C858 CB A1 09 20 */ lfd f29, 0x920(r1) -/* 8017F8FC 0017C85C BB 41 09 08 */ lmw r26, 0x908(r1) -/* 8017F900 0017C860 80 01 09 54 */ lwz r0, 0x954(r1) -/* 8017F904 0017C864 7C 08 03 A6 */ mtlr r0 -/* 8017F908 0017C868 38 21 09 50 */ addi r1, r1, 0x950 -/* 8017F90C 0017C86C 4E 80 00 20 */ blr - -.global ValidateOrbitTargetIdAndPointer__7CPlayerCF9TUniqueIdR13CStateManager -ValidateOrbitTargetIdAndPointer__7CPlayerCF9TUniqueIdR13CStateManager: -/* 8017F910 0017C870 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8017F914 0017C874 7C 08 02 A6 */ mflr r0 -/* 8017F918 0017C878 90 01 00 24 */ stw r0, 0x24(r1) -/* 8017F91C 0017C87C A0 64 00 00 */ lhz r3, 0(r4) -/* 8017F920 0017C880 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8017F924 0017C884 7C 03 00 40 */ cmplw r3, r0 -/* 8017F928 0017C888 40 82 00 0C */ bne lbl_8017F934 -/* 8017F92C 0017C88C 38 60 00 00 */ li r3, 0 -/* 8017F930 0017C890 48 00 00 30 */ b lbl_8017F960 -lbl_8017F934: -/* 8017F934 0017C894 B0 61 00 08 */ sth r3, 8(r1) -/* 8017F938 0017C898 7C A3 2B 78 */ mr r3, r5 -/* 8017F93C 0017C89C 38 81 00 08 */ addi r4, r1, 8 -/* 8017F940 0017C8A0 4B EC CC 65 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8017F944 0017C8A4 7C 64 1B 78 */ mr r4, r3 -/* 8017F948 0017C8A8 38 61 00 0C */ addi r3, r1, 0xc -/* 8017F94C 0017C8AC 4B F3 03 45 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8017F950 0017C8B0 80 63 00 04 */ lwz r3, 4(r3) -/* 8017F954 0017C8B4 7C 03 00 D0 */ neg r0, r3 -/* 8017F958 0017C8B8 7C 00 1B 78 */ or r0, r0, r3 -/* 8017F95C 0017C8BC 54 03 0F FE */ srwi r3, r0, 0x1f -lbl_8017F960: -/* 8017F960 0017C8C0 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8017F964 0017C8C4 7C 08 03 A6 */ mtlr r0 -/* 8017F968 0017C8C8 38 21 00 20 */ addi r1, r1, 0x20 -/* 8017F96C 0017C8CC 4E 80 00 20 */ blr - -.global BuildNearListBox__FbRC12CTransform4ffff -BuildNearListBox__FbRC12CTransform4ffff: -/* 8017F970 0017C8D0 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8017F974 0017C8D4 7C 08 02 A6 */ mflr r0 -/* 8017F978 0017C8D8 FC 00 08 50 */ fneg f0, f1 -/* 8017F97C 0017C8DC 90 01 00 34 */ stw r0, 0x34(r1) -/* 8017F980 0017C8E0 54 80 06 3F */ clrlwi. r0, r4, 0x18 -/* 8017F984 0017C8E4 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8017F988 0017C8E8 7C 7F 1B 78 */ mr r31, r3 -/* 8017F98C 0017C8EC D0 01 00 08 */ stfs f0, 8(r1) -/* 8017F990 0017C8F0 41 82 00 0C */ beq lbl_8017F99C -/* 8017F994 0017C8F4 C0 82 A2 30 */ lfs f4, lbl_805ABF50@sda21(r2) -/* 8017F998 0017C8F8 48 00 00 08 */ b lbl_8017F9A0 -lbl_8017F99C: -/* 8017F99C 0017C8FC FC 80 18 50 */ fneg f4, f3 -lbl_8017F9A0: -/* 8017F9A0 0017C900 FC 00 10 50 */ fneg f0, f2 -/* 8017F9A4 0017C904 D0 81 00 0C */ stfs f4, 0xc(r1) -/* 8017F9A8 0017C908 7F E3 FB 78 */ mr r3, r31 -/* 8017F9AC 0017C90C 38 81 00 08 */ addi r4, r1, 8 -/* 8017F9B0 0017C910 D0 21 00 14 */ stfs f1, 0x14(r1) -/* 8017F9B4 0017C914 D0 01 00 10 */ stfs f0, 0x10(r1) -/* 8017F9B8 0017C918 D0 61 00 18 */ stfs f3, 0x18(r1) -/* 8017F9BC 0017C91C D0 41 00 1C */ stfs f2, 0x1c(r1) -/* 8017F9C0 0017C920 48 1B 7F 3D */ bl GetTransformedAABox__6CAABoxCFRC12CTransform4f -/* 8017F9C4 0017C924 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8017F9C8 0017C928 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8017F9CC 0017C92C 7C 08 03 A6 */ mtlr r0 -/* 8017F9D0 0017C930 38 21 00 30 */ addi r1, r1, 0x30 -/* 8017F9D4 0017C934 4E 80 00 20 */ blr - -.global __sinit_CPlayerOrbit_cpp -__sinit_CPlayerOrbit_cpp: -/* 8017F9D8 0017C938 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 8017F9DC 0017C93C 7C 08 02 A6 */ mflr r0 -/* 8017F9E0 0017C940 3C 60 80 47 */ lis r3, lbl_8046C8C0@ha -/* 8017F9E4 0017C944 38 80 00 01 */ li r4, 1 -/* 8017F9E8 0017C948 90 01 00 64 */ stw r0, 0x64(r1) -/* 8017F9EC 0017C94C 93 E1 00 5C */ stw r31, 0x5c(r1) -/* 8017F9F0 0017C950 3B E3 C8 C0 */ addi r31, r3, lbl_8046C8C0@l -/* 8017F9F4 0017C954 38 60 00 00 */ li r3, 0 -/* 8017F9F8 0017C958 93 C1 00 58 */ stw r30, 0x58(r1) -/* 8017F9FC 0017C95C 93 A1 00 54 */ stw r29, 0x54(r1) -/* 8017FA00 0017C960 80 AD 8E 48 */ lwz r5, lbl_805A7A08@sda21(r13) -/* 8017FA04 0017C964 48 20 A4 F1 */ bl __shl2i -/* 8017FA08 0017C968 90 8D A4 44 */ stw r4, lbl_805A9004@sda21(r13) -/* 8017FA0C 0017C96C 38 80 00 01 */ li r4, 1 -/* 8017FA10 0017C970 80 AD 8E 4C */ lwz r5, lbl_805A7A0C@sda21(r13) -/* 8017FA14 0017C974 90 6D A4 40 */ stw r3, lbl_805A9000@sda21(r13) -/* 8017FA18 0017C978 38 60 00 00 */ li r3, 0 -/* 8017FA1C 0017C97C 48 20 A4 D9 */ bl __shl2i -/* 8017FA20 0017C980 80 AD 8E 50 */ lwz r5, lbl_805A7A10@sda21(r13) -/* 8017FA24 0017C984 7C 9D 23 78 */ mr r29, r4 -/* 8017FA28 0017C988 7C 7E 1B 78 */ mr r30, r3 -/* 8017FA2C 0017C98C 38 60 00 00 */ li r3, 0 -/* 8017FA30 0017C990 38 80 00 01 */ li r4, 1 -/* 8017FA34 0017C994 48 20 A4 C1 */ bl __shl2i -/* 8017FA38 0017C998 80 AD 8E 54 */ lwz r5, lbl_805A7A14@sda21(r13) -/* 8017FA3C 0017C99C 7F BD 23 78 */ or r29, r29, r4 -/* 8017FA40 0017C9A0 7F DE 1B 78 */ or r30, r30, r3 -/* 8017FA44 0017C9A4 38 60 00 00 */ li r3, 0 -/* 8017FA48 0017C9A8 38 80 00 01 */ li r4, 1 -/* 8017FA4C 0017C9AC 48 20 A4 A9 */ bl __shl2i -/* 8017FA50 0017C9B0 80 0D A4 40 */ lwz r0, lbl_805A9000@sda21(r13) -/* 8017FA54 0017C9B4 7F BD 23 78 */ or r29, r29, r4 -/* 8017FA58 0017C9B8 7F DE 1B 78 */ or r30, r30, r3 -/* 8017FA5C 0017C9BC 38 DF 00 00 */ addi r6, r31, 0 -/* 8017FA60 0017C9C0 39 00 00 03 */ li r8, 3 -/* 8017FA64 0017C9C4 80 ED A4 44 */ lwz r7, lbl_805A9004@sda21(r13) -/* 8017FA68 0017C9C8 80 AD 8E 58 */ lwz r5, lbl_805A7A18@sda21(r13) -/* 8017FA6C 0017C9CC 38 60 00 00 */ li r3, 0 -/* 8017FA70 0017C9D0 93 AD A4 4C */ stw r29, lbl_805A900C@sda21(r13) -/* 8017FA74 0017C9D4 38 80 00 01 */ li r4, 1 -/* 8017FA78 0017C9D8 93 CD A4 48 */ stw r30, lbl_805A9008@sda21(r13) -/* 8017FA7C 0017C9DC 91 01 00 48 */ stw r8, 0x48(r1) -/* 8017FA80 0017C9E0 90 FF 00 04 */ stw r7, 4(r31) -/* 8017FA84 0017C9E4 90 1F 00 00 */ stw r0, 0(r31) -/* 8017FA88 0017C9E8 93 A6 00 0C */ stw r29, 0xc(r6) -/* 8017FA8C 0017C9EC 93 C6 00 08 */ stw r30, 8(r6) -/* 8017FA90 0017C9F0 91 06 00 10 */ stw r8, 0x10(r6) -/* 8017FA94 0017C9F4 48 20 A4 61 */ bl __shl2i -/* 8017FA98 0017C9F8 80 AD 8E 5C */ lwz r5, lbl_805A7A1C@sda21(r13) -/* 8017FA9C 0017C9FC 7C 9E 23 78 */ mr r30, r4 -/* 8017FAA0 0017CA00 7C 7D 1B 78 */ mr r29, r3 -/* 8017FAA4 0017CA04 38 60 00 00 */ li r3, 0 -/* 8017FAA8 0017CA08 38 80 00 01 */ li r4, 1 -/* 8017FAAC 0017CA0C 48 20 A4 49 */ bl __shl2i -/* 8017FAB0 0017CA10 7F DE 23 78 */ or r30, r30, r4 -/* 8017FAB4 0017CA14 7F BD 1B 78 */ or r29, r29, r3 -/* 8017FAB8 0017CA18 80 AD 8E 60 */ lwz r5, lbl_805A7A20@sda21(r13) -/* 8017FABC 0017CA1C 38 60 00 00 */ li r3, 0 -/* 8017FAC0 0017CA20 93 CD A4 54 */ stw r30, lbl_805A9014@sda21(r13) -/* 8017FAC4 0017CA24 38 80 00 01 */ li r4, 1 -/* 8017FAC8 0017CA28 93 AD A4 50 */ stw r29, lbl_805A9010@sda21(r13) -/* 8017FACC 0017CA2C 48 20 A4 29 */ bl __shl2i -/* 8017FAD0 0017CA30 80 AD 8E 64 */ lwz r5, lbl_805A7A24@sda21(r13) -/* 8017FAD4 0017CA34 7C 9E 23 78 */ mr r30, r4 -/* 8017FAD8 0017CA38 7C 7D 1B 78 */ mr r29, r3 -/* 8017FADC 0017CA3C 38 60 00 00 */ li r3, 0 -/* 8017FAE0 0017CA40 38 80 00 01 */ li r4, 1 -/* 8017FAE4 0017CA44 48 20 A4 11 */ bl __shl2i -/* 8017FAE8 0017CA48 80 AD 8E 68 */ lwz r5, lbl_805A7A28@sda21(r13) -/* 8017FAEC 0017CA4C 7F DE 23 78 */ or r30, r30, r4 -/* 8017FAF0 0017CA50 7F BD 1B 78 */ or r29, r29, r3 -/* 8017FAF4 0017CA54 38 60 00 00 */ li r3, 0 -/* 8017FAF8 0017CA58 38 80 00 01 */ li r4, 1 -/* 8017FAFC 0017CA5C 48 20 A3 F9 */ bl __shl2i -/* 8017FB00 0017CA60 C0 22 A2 4C */ lfs f1, lbl_805ABF6C@sda21(r2) -/* 8017FB04 0017CA64 7F DE 23 78 */ or r30, r30, r4 -/* 8017FB08 0017CA68 C0 02 A2 30 */ lfs f0, lbl_805ABF50@sda21(r2) -/* 8017FB0C 0017CA6C 7F BD 1B 78 */ or r29, r29, r3 -/* 8017FB10 0017CA70 38 DF 00 18 */ addi r6, r31, 0x18 -/* 8017FB14 0017CA74 39 00 00 03 */ li r8, 3 -/* 8017FB18 0017CA78 80 0D A4 50 */ lwz r0, lbl_805A9010@sda21(r13) -/* 8017FB1C 0017CA7C 38 7F 00 30 */ addi r3, r31, 0x30 -/* 8017FB20 0017CA80 80 ED A4 54 */ lwz r7, lbl_805A9014@sda21(r13) -/* 8017FB24 0017CA84 38 81 00 14 */ addi r4, r1, 0x14 -/* 8017FB28 0017CA88 93 CD A4 5C */ stw r30, lbl_805A901C@sda21(r13) -/* 8017FB2C 0017CA8C 38 A1 00 08 */ addi r5, r1, 8 -/* 8017FB30 0017CA90 93 AD A4 58 */ stw r29, lbl_805A9018@sda21(r13) -/* 8017FB34 0017CA94 91 01 00 30 */ stw r8, 0x30(r1) -/* 8017FB38 0017CA98 90 FF 00 1C */ stw r7, 0x1c(r31) -/* 8017FB3C 0017CA9C 90 1F 00 18 */ stw r0, 0x18(r31) -/* 8017FB40 0017CAA0 93 C6 00 0C */ stw r30, 0xc(r6) -/* 8017FB44 0017CAA4 93 A6 00 08 */ stw r29, 8(r6) -/* 8017FB48 0017CAA8 91 06 00 10 */ stw r8, 0x10(r6) -/* 8017FB4C 0017CAAC D0 21 00 08 */ stfs f1, 8(r1) -/* 8017FB50 0017CAB0 D0 21 00 0C */ stfs f1, 0xc(r1) -/* 8017FB54 0017CAB4 D0 21 00 10 */ stfs f1, 0x10(r1) -/* 8017FB58 0017CAB8 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 8017FB5C 0017CABC D0 01 00 18 */ stfs f0, 0x18(r1) -/* 8017FB60 0017CAC0 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 8017FB64 0017CAC4 48 1B 89 A5 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 8017FB68 0017CAC8 80 01 00 64 */ lwz r0, 0x64(r1) -/* 8017FB6C 0017CACC 83 E1 00 5C */ lwz r31, 0x5c(r1) -/* 8017FB70 0017CAD0 83 C1 00 58 */ lwz r30, 0x58(r1) -/* 8017FB74 0017CAD4 83 A1 00 54 */ lwz r29, 0x54(r1) -/* 8017FB78 0017CAD8 7C 08 03 A6 */ mtlr r0 -/* 8017FB7C 0017CADC 38 21 00 60 */ addi r1, r1, 0x60 -/* 8017FB80 0017CAE0 4E 80 00 20 */ blr - -.global sub_8017fb84 -sub_8017fb84: -/* 8017FB84 0017CAE4 94 21 E1 C0 */ stwu r1, -0x1e40(r1) -/* 8017FB88 0017CAE8 7C 08 02 A6 */ mflr r0 -/* 8017FB8C 0017CAEC 90 01 1E 44 */ stw r0, 0x1e44(r1) -/* 8017FB90 0017CAF0 38 00 1E 38 */ li r0, 0x1e38 -/* 8017FB94 0017CAF4 DB E1 1E 30 */ stfd f31, 0x1e30(r1) -/* 8017FB98 0017CAF8 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 -/* 8017FB9C 0017CAFC 38 00 1E 28 */ li r0, 0x1e28 -/* 8017FBA0 0017CB00 DB C1 1E 20 */ stfd f30, 0x1e20(r1) -/* 8017FBA4 0017CB04 13 C1 00 0E */ psq_stx f30, r1, r0, 0, qr0 -/* 8017FBA8 0017CB08 38 00 1E 18 */ li r0, 0x1e18 -/* 8017FBAC 0017CB0C DB A1 1E 10 */ stfd f29, 0x1e10(r1) -/* 8017FBB0 0017CB10 13 A1 00 0E */ psq_stx f29, r1, r0, 0, qr0 -/* 8017FBB4 0017CB14 38 00 1E 08 */ li r0, 0x1e08 -/* 8017FBB8 0017CB18 DB 81 1E 00 */ stfd f28, 0x1e00(r1) -/* 8017FBBC 0017CB1C 13 81 00 0E */ psq_stx f28, r1, r0, 0, qr0 -/* 8017FBC0 0017CB20 38 00 1D F8 */ li r0, 0x1df8 -/* 8017FBC4 0017CB24 DB 61 1D F0 */ stfd f27, 0x1df0(r1) -/* 8017FBC8 0017CB28 13 61 00 0E */ psq_stx f27, r1, r0, 0, qr0 -/* 8017FBCC 0017CB2C 38 00 1D E8 */ li r0, 0x1de8 -/* 8017FBD0 0017CB30 DB 41 1D E0 */ stfd f26, 0x1de0(r1) -/* 8017FBD4 0017CB34 13 41 00 0E */ psq_stx f26, r1, r0, 0, qr0 -/* 8017FBD8 0017CB38 38 00 1D D8 */ li r0, 0x1dd8 -/* 8017FBDC 0017CB3C DB 21 1D D0 */ stfd f25, 0x1dd0(r1) -/* 8017FBE0 0017CB40 13 21 00 0E */ psq_stx f25, r1, r0, 0, qr0 -/* 8017FBE4 0017CB44 38 00 1D C8 */ li r0, 0x1dc8 -/* 8017FBE8 0017CB48 DB 01 1D C0 */ stfd f24, 0x1dc0(r1) -/* 8017FBEC 0017CB4C 13 01 00 0E */ psq_stx f24, r1, r0, 0, qr0 -/* 8017FBF0 0017CB50 38 00 1D B8 */ li r0, 0x1db8 -/* 8017FBF4 0017CB54 DA E1 1D B0 */ stfd f23, 0x1db0(r1) -/* 8017FBF8 0017CB58 12 E1 00 0E */ psq_stx f23, r1, r0, 0, qr0 -/* 8017FBFC 0017CB5C 38 00 1D A8 */ li r0, 0x1da8 -/* 8017FC00 0017CB60 DA C1 1D A0 */ stfd f22, 0x1da0(r1) -/* 8017FC04 0017CB64 12 C1 00 0E */ psq_stx f22, r1, r0, 0, qr0 -/* 8017FC08 0017CB68 38 00 1D 98 */ li r0, 0x1d98 -/* 8017FC0C 0017CB6C DA A1 1D 90 */ stfd f21, 0x1d90(r1) -/* 8017FC10 0017CB70 12 A1 00 0E */ psq_stx f21, r1, r0, 0, qr0 -/* 8017FC14 0017CB74 38 00 1D 88 */ li r0, 0x1d88 -/* 8017FC18 0017CB78 DA 81 1D 80 */ stfd f20, 0x1d80(r1) -/* 8017FC1C 0017CB7C 12 81 00 0E */ psq_stx f20, r1, r0, 0, qr0 -/* 8017FC20 0017CB80 38 00 1D 78 */ li r0, 0x1d78 -/* 8017FC24 0017CB84 DA 61 1D 70 */ stfd f19, 0x1d70(r1) -/* 8017FC28 0017CB88 12 61 00 0E */ psq_stx f19, r1, r0, 0, qr0 -/* 8017FC2C 0017CB8C 38 00 1D 68 */ li r0, 0x1d68 -/* 8017FC30 0017CB90 DA 41 1D 60 */ stfd f18, 0x1d60(r1) -/* 8017FC34 0017CB94 12 41 00 0E */ psq_stx f18, r1, r0, 0, qr0 -/* 8017FC38 0017CB98 38 00 1D 58 */ li r0, 0x1d58 -/* 8017FC3C 0017CB9C DA 21 1D 50 */ stfd f17, 0x1d50(r1) -/* 8017FC40 0017CBA0 12 21 00 0E */ psq_stx f17, r1, r0, 0, qr0 -/* 8017FC44 0017CBA4 38 00 1D 48 */ li r0, 0x1d48 -/* 8017FC48 0017CBA8 DA 01 1D 40 */ stfd f16, 0x1d40(r1) -/* 8017FC4C 0017CBAC 12 01 00 0E */ psq_stx f16, r1, r0, 0, qr0 -/* 8017FC50 0017CBB0 38 00 1D 38 */ li r0, 0x1d38 -/* 8017FC54 0017CBB4 D9 E1 1D 30 */ stfd f15, 0x1d30(r1) -/* 8017FC58 0017CBB8 11 E1 00 0E */ psq_stx f15, r1, r0, 0, qr0 -/* 8017FC5C 0017CBBC 38 00 1D 28 */ li r0, 0x1d28 -/* 8017FC60 0017CBC0 D9 C1 1D 20 */ stfd f14, 0x1d20(r1) -/* 8017FC64 0017CBC4 11 C1 00 0E */ psq_stx f14, r1, r0, 0, qr0 -/* 8017FC68 0017CBC8 BE E1 1C FC */ stmw r23, 0x1cfc(r1) -/* 8017FC6C 0017CBCC FE 60 28 90 */ fmr f19, f5 -/* 8017FC70 0017CBD0 7C 99 23 78 */ mr r25, r4 -/* 8017FC74 0017CBD4 C0 02 A2 AC */ lfs f0, lbl_805ABFCC@sda21(r2) -/* 8017FC78 0017CBD8 7C 78 1B 78 */ mr r24, r3 -/* 8017FC7C 0017CBDC C3 64 00 60 */ lfs f27, 0x60(r4) -/* 8017FC80 0017CBE0 7C BA 2B 78 */ mr r26, r5 -/* 8017FC84 0017CBE4 FE 20 18 90 */ fmr f17, f3 -/* 8017FC88 0017CBE8 C3 84 00 50 */ lfs f28, 0x50(r4) -/* 8017FC8C 0017CBEC ED 20 04 F2 */ fmuls f9, f0, f19 -/* 8017FC90 0017CBF0 C0 A2 A2 A8 */ lfs f5, lbl_805ABFC8@sda21(r2) -/* 8017FC94 0017CBF4 EC 1B 10 2A */ fadds f0, f27, f2 -/* 8017FC98 0017CBF8 C3 A4 00 40 */ lfs f29, 0x40(r4) -/* 8017FC9C 0017CBFC EC 7D 28 2A */ fadds f3, f29, f5 -/* 8017FCA0 0017CC00 38 61 01 30 */ addi r3, r1, 0x130 -/* 8017FCA4 0017CC04 ED 11 48 2A */ fadds f8, f17, f9 -/* 8017FCA8 0017CC08 D0 01 00 88 */ stfs f0, 0x88(r1) -/* 8017FCAC 0017CC0C EC 5C 28 2A */ fadds f2, f28, f5 -/* 8017FCB0 0017CC10 38 81 00 68 */ addi r4, r1, 0x68 -/* 8017FCB4 0017CC14 EC E3 40 2A */ fadds f7, f3, f8 -/* 8017FCB8 0017CC18 D0 61 00 80 */ stfs f3, 0x80(r1) -/* 8017FCBC 0017CC1C EC C2 40 2A */ fadds f6, f2, f8 -/* 8017FCC0 0017CC20 38 A1 00 5C */ addi r5, r1, 0x5c -/* 8017FCC4 0017CC24 EC A0 48 2A */ fadds f5, f0, f9 -/* 8017FCC8 0017CC28 D0 41 00 84 */ stfs f2, 0x84(r1) -/* 8017FCCC 0017CC2C EC 63 40 28 */ fsubs f3, f3, f8 -/* 8017FCD0 0017CC30 D0 E1 00 5C */ stfs f7, 0x5c(r1) -/* 8017FCD4 0017CC34 EC 42 40 28 */ fsubs f2, f2, f8 -/* 8017FCD8 0017CC38 EC 00 48 28 */ fsubs f0, f0, f9 -/* 8017FCDC 0017CC3C D0 C1 00 60 */ stfs f6, 0x60(r1) -/* 8017FCE0 0017CC40 FE 00 08 90 */ fmr f16, f1 -/* 8017FCE4 0017CC44 FE 40 20 90 */ fmr f18, f4 -/* 8017FCE8 0017CC48 D0 A1 00 64 */ stfs f5, 0x64(r1) -/* 8017FCEC 0017CC4C D0 61 00 68 */ stfs f3, 0x68(r1) -/* 8017FCF0 0017CC50 D0 41 00 6C */ stfs f2, 0x6c(r1) -/* 8017FCF4 0017CC54 D0 01 00 70 */ stfs f0, 0x70(r1) -/* 8017FCF8 0017CC58 48 1B 88 11 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 8017FCFC 0017CC5C 38 61 01 A8 */ addi r3, r1, 0x1a8 -/* 8017FD00 0017CC60 38 81 01 30 */ addi r4, r1, 0x130 -/* 8017FD04 0017CC64 48 12 3D 8D */ bl __ct__19CAreaCollisionCacheFRC6CAABox -/* 8017FD08 0017CC68 7F 03 C3 78 */ mr r3, r24 -/* 8017FD0C 0017CC6C 38 81 01 A8 */ addi r4, r1, 0x1a8 -/* 8017FD10 0017CC70 48 00 49 B5 */ bl BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache -/* 8017FD14 0017CC74 38 00 00 00 */ li r0, 0 -/* 8017FD18 0017CC78 88 81 1C E8 */ lbz r4, 0x1ce8(r1) -/* 8017FD1C 0017CC7C 80 AD 8E 94 */ lwz r5, lbl_805A7A54@sda21(r13) -/* 8017FD20 0017CC80 38 60 00 00 */ li r3, 0 -/* 8017FD24 0017CC84 54 9C CF FE */ rlwinm r28, r4, 0x19, 0x1f, 0x1f -/* 8017FD28 0017CC88 90 01 00 14 */ stw r0, 0x14(r1) -/* 8017FD2C 0017CC8C C3 41 00 80 */ lfs f26, 0x80(r1) -/* 8017FD30 0017CC90 38 80 00 01 */ li r4, 1 -/* 8017FD34 0017CC94 90 01 00 10 */ stw r0, 0x10(r1) -/* 8017FD38 0017CC98 C3 21 00 84 */ lfs f25, 0x84(r1) -/* 8017FD3C 0017CC9C C3 01 00 88 */ lfs f24, 0x88(r1) -/* 8017FD40 0017CCA0 48 20 A1 B5 */ bl __shl2i -/* 8017FD44 0017CCA4 80 01 00 10 */ lwz r0, 0x10(r1) -/* 8017FD48 0017CCA8 80 A1 00 14 */ lwz r5, 0x14(r1) -/* 8017FD4C 0017CCAC 7C 00 1B 78 */ or r0, r0, r3 -/* 8017FD50 0017CCB0 38 61 00 F8 */ addi r3, r1, 0xf8 -/* 8017FD54 0017CCB4 7C A5 23 78 */ or r5, r5, r4 -/* 8017FD58 0017CCB8 90 01 00 10 */ stw r0, 0x10(r1) -/* 8017FD5C 0017CCBC 38 81 00 10 */ addi r4, r1, 0x10 -/* 8017FD60 0017CCC0 90 A1 00 14 */ stw r5, 0x14(r1) -/* 8017FD64 0017CCC4 48 14 FB 51 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList -/* 8017FD68 0017CCC8 3C 60 80 3F */ lis r3, lbl_803ECAF8@ha -/* 8017FD6C 0017CCCC 80 AD 8E 98 */ lwz r5, lbl_805A7A58@sda21(r13) -/* 8017FD70 0017CCD0 38 03 CA F8 */ addi r0, r3, lbl_803ECAF8@l -/* 8017FD74 0017CCD4 D3 41 01 08 */ stfs f26, 0x108(r1) -/* 8017FD78 0017CCD8 38 60 00 00 */ li r3, 0 -/* 8017FD7C 0017CCDC 38 80 00 01 */ li r4, 1 -/* 8017FD80 0017CCE0 90 01 00 F8 */ stw r0, 0xf8(r1) -/* 8017FD84 0017CCE4 D3 21 01 0C */ stfs f25, 0x10c(r1) -/* 8017FD88 0017CCE8 D3 01 01 10 */ stfs f24, 0x110(r1) -/* 8017FD8C 0017CCEC D2 61 01 14 */ stfs f19, 0x114(r1) -/* 8017FD90 0017CCF0 48 20 A1 65 */ bl __shl2i -/* 8017FD94 0017CCF4 39 20 FF FF */ li r9, -1 -/* 8017FD98 0017CCF8 39 00 00 00 */ li r8, 0 -/* 8017FD9C 0017CCFC 38 00 00 02 */ li r0, 2 -/* 8017FDA0 0017CD00 3C A0 80 5A */ lis r5, skIdentity4f@ha -/* 8017FDA4 0017CD04 90 81 00 EC */ stw r4, 0xec(r1) -/* 8017FDA8 0017CD08 38 C5 66 70 */ addi r6, r5, skIdentity4f@l -/* 8017FDAC 0017CD0C 38 81 01 A8 */ addi r4, r1, 0x1a8 -/* 8017FDB0 0017CD10 38 A1 00 F8 */ addi r5, r1, 0xf8 -/* 8017FDB4 0017CD14 90 61 00 E8 */ stw r3, 0xe8(r1) -/* 8017FDB8 0017CD18 7F 03 C3 78 */ mr r3, r24 -/* 8017FDBC 0017CD1C 38 E1 00 E0 */ addi r7, r1, 0xe0 -/* 8017FDC0 0017CD20 91 21 00 E4 */ stw r9, 0xe4(r1) -/* 8017FDC4 0017CD24 91 01 00 E0 */ stw r8, 0xe0(r1) -/* 8017FDC8 0017CD28 90 01 00 F0 */ stw r0, 0xf0(r1) -/* 8017FDCC 0017CD2C 48 00 38 2D */ bl DetectStaticCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter -/* 8017FDD0 0017CD30 3C 80 80 3F */ lis r4, lbl_803ECAF8@ha -/* 8017FDD4 0017CD34 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8017FDD8 0017CD38 3B A4 CA F8 */ addi r29, r4, lbl_803ECAF8@l -/* 8017FDDC 0017CD3C 3C 60 80 3E */ lis r3, lbl_803D97E4@ha -/* 8017FDE0 0017CD40 93 A1 00 F8 */ stw r29, 0xf8(r1) -/* 8017FDE4 0017CD44 3B C3 97 E4 */ addi r30, r3, lbl_803D97E4@l -/* 8017FDE8 0017CD48 93 C1 00 F8 */ stw r30, 0xf8(r1) -/* 8017FDEC 0017CD4C 41 82 00 A0 */ beq lbl_8017FE8C -/* 8017FDF0 0017CD50 34 E1 01 C0 */ addic. r7, r1, 0x1c0 -/* 8017FDF4 0017CD54 41 82 04 2C */ beq lbl_80180220 -/* 8017FDF8 0017CD58 38 C7 00 04 */ addi r6, r7, 4 -/* 8017FDFC 0017CD5C 38 60 00 00 */ li r3, 0 -/* 8017FE00 0017CD60 48 00 00 74 */ b lbl_8017FE74 -lbl_8017FE04: -/* 8017FE04 0017CD64 28 06 00 00 */ cmplwi r6, 0 -/* 8017FE08 0017CD68 41 82 00 64 */ beq lbl_8017FE6C -/* 8017FE0C 0017CD6C 34 06 00 04 */ addic. r0, r6, 4 -/* 8017FE10 0017CD70 41 82 00 5C */ beq lbl_8017FE6C -/* 8017FE14 0017CD74 81 06 00 04 */ lwz r8, 4(r6) -/* 8017FE18 0017CD78 38 80 00 00 */ li r4, 0 -/* 8017FE1C 0017CD7C 2C 08 00 00 */ cmpwi r8, 0 -/* 8017FE20 0017CD80 40 81 00 44 */ ble lbl_8017FE64 -/* 8017FE24 0017CD84 2C 08 00 08 */ cmpwi r8, 8 -/* 8017FE28 0017CD88 38 A8 FF F8 */ addi r5, r8, -8 -/* 8017FE2C 0017CD8C 40 81 00 20 */ ble lbl_8017FE4C -/* 8017FE30 0017CD90 38 05 00 07 */ addi r0, r5, 7 -/* 8017FE34 0017CD94 54 00 E8 FE */ srwi r0, r0, 3 -/* 8017FE38 0017CD98 7C 09 03 A6 */ mtctr r0 -/* 8017FE3C 0017CD9C 2C 05 00 00 */ cmpwi r5, 0 -/* 8017FE40 0017CDA0 40 81 00 0C */ ble lbl_8017FE4C -lbl_8017FE44: -/* 8017FE44 0017CDA4 38 84 00 08 */ addi r4, r4, 8 -/* 8017FE48 0017CDA8 42 00 FF FC */ bdnz lbl_8017FE44 -lbl_8017FE4C: -/* 8017FE4C 0017CDAC 7C 04 40 50 */ subf r0, r4, r8 -/* 8017FE50 0017CDB0 7C 09 03 A6 */ mtctr r0 -/* 8017FE54 0017CDB4 7C 04 40 00 */ cmpw r4, r8 -/* 8017FE58 0017CDB8 40 80 00 0C */ bge lbl_8017FE64 -lbl_8017FE5C: -/* 8017FE5C 0017CDBC 38 84 00 01 */ addi r4, r4, 1 -/* 8017FE60 0017CDC0 42 00 FF FC */ bdnz lbl_8017FE5C -lbl_8017FE64: -/* 8017FE64 0017CDC4 38 00 00 00 */ li r0, 0 -/* 8017FE68 0017CDC8 90 06 00 04 */ stw r0, 4(r6) -lbl_8017FE6C: -/* 8017FE6C 0017CDCC 38 C6 09 0C */ addi r6, r6, 0x90c -/* 8017FE70 0017CDD0 38 63 00 01 */ addi r3, r3, 1 -lbl_8017FE74: -/* 8017FE74 0017CDD4 80 07 00 00 */ lwz r0, 0(r7) -/* 8017FE78 0017CDD8 7C 03 00 00 */ cmpw r3, r0 -/* 8017FE7C 0017CDDC 41 80 FF 88 */ blt lbl_8017FE04 -/* 8017FE80 0017CDE0 38 00 00 00 */ li r0, 0 -/* 8017FE84 0017CDE4 90 07 00 00 */ stw r0, 0(r7) -/* 8017FE88 0017CDE8 48 00 03 98 */ b lbl_80180220 -lbl_8017FE8C: -/* 8017FE8C 0017CDEC 6F 40 80 00 */ xoris r0, r26, 0x8000 -/* 8017FE90 0017CDF0 3F E0 43 30 */ lis r31, 0x4330 -/* 8017FE94 0017CDF4 90 01 1C F4 */ stw r0, 0x1cf4(r1) -/* 8017FE98 0017CDF8 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8017FE9C 0017CDFC 38 83 66 A0 */ addi r4, r3, skZero3f@l -/* 8017FEA0 0017CE00 3C 60 80 5A */ lis r3, skIdentity4f@ha -/* 8017FEA4 0017CE04 93 E1 1C F0 */ stw r31, 0x1cf0(r1) -/* 8017FEA8 0017CE08 3A E3 66 70 */ addi r23, r3, skIdentity4f@l -/* 8017FEAC 0017CE0C CB C2 A2 B8 */ lfd f30, lbl_805ABFD8@sda21(r2) -/* 8017FEB0 0017CE10 3B 60 00 00 */ li r27, 0 -/* 8017FEB4 0017CE14 C8 01 1C F0 */ lfd f0, 0x1cf0(r1) -/* 8017FEB8 0017CE18 C0 22 A2 B0 */ lfs f1, lbl_805ABFD0@sda21(r2) -/* 8017FEBC 0017CE1C EC 00 F0 28 */ fsubs f0, f0, f30 -/* 8017FEC0 0017CE20 C2 E4 00 00 */ lfs f23, 0(r4) -/* 8017FEC4 0017CE24 C2 C4 00 04 */ lfs f22, 4(r4) -/* 8017FEC8 0017CE28 C2 A4 00 08 */ lfs f21, 8(r4) -/* 8017FECC 0017CE2C EE 81 00 24 */ fdivs f20, f1, f0 -/* 8017FED0 0017CE30 C3 E2 A2 A8 */ lfs f31, lbl_805ABFC8@sda21(r2) -/* 8017FED4 0017CE34 48 00 02 64 */ b lbl_80180138 -lbl_8017FED8: -/* 8017FED8 0017CE38 6F 60 80 00 */ xoris r0, r27, 0x8000 -/* 8017FEDC 0017CE3C 93 E1 1C F0 */ stw r31, 0x1cf0(r1) -/* 8017FEE0 0017CE40 90 01 1C F4 */ stw r0, 0x1cf4(r1) -/* 8017FEE4 0017CE44 C8 01 1C F0 */ lfd f0, 0x1cf0(r1) -/* 8017FEE8 0017CE48 EC 00 F0 28 */ fsubs f0, f0, f30 -/* 8017FEEC 0017CE4C ED D4 00 32 */ fmuls f14, f20, f0 -/* 8017FEF0 0017CE50 FC 20 70 90 */ fmr f1, f14 -/* 8017FEF4 0017CE54 48 19 53 F1 */ bl SlowCosineR__5CMathFf -/* 8017FEF8 0017CE58 FD E0 08 90 */ fmr f15, f1 -/* 8017FEFC 0017CE5C FC 20 70 90 */ fmr f1, f14 -/* 8017FF00 0017CE60 48 19 54 09 */ bl SlowSineR__5CMathFf -/* 8017FF04 0017CE64 D0 21 00 74 */ stfs f1, 0x74(r1) -/* 8017FF08 0017CE68 38 61 01 48 */ addi r3, r1, 0x148 -/* 8017FF0C 0017CE6C 38 80 00 00 */ li r4, 0 -/* 8017FF10 0017CE70 D1 E1 00 78 */ stfs f15, 0x78(r1) -/* 8017FF14 0017CE74 D3 E1 00 7C */ stfs f31, 0x7c(r1) -/* 8017FF18 0017CE78 DA 21 00 18 */ stfd f17, 0x18(r1) -/* 8017FF1C 0017CE7C 48 14 E2 6D */ bl __ct__14CCollisionInfoFQ214CCollisionInfo8EInvalid -/* 8017FF20 0017CE80 28 1C 00 00 */ cmplwi r28, 0 -/* 8017FF24 0017CE84 41 82 00 EC */ beq lbl_80180010 -/* 8017FF28 0017CE88 38 61 01 A8 */ addi r3, r1, 0x1a8 -/* 8017FF2C 0017CE8C 48 12 39 0D */ bl ClearCache__19CAreaCollisionCacheFv -/* 8017FF30 0017CE90 38 81 00 80 */ addi r4, r1, 0x80 -/* 8017FF34 0017CE94 38 61 01 18 */ addi r3, r1, 0x118 -/* 8017FF38 0017CE98 7C 85 23 78 */ mr r5, r4 -/* 8017FF3C 0017CE9C 48 1B 85 CD */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 8017FF40 0017CEA0 FC 40 78 18 */ frsp f2, f15 -/* 8017FF44 0017CEA4 C0 01 00 74 */ lfs f0, 0x74(r1) -/* 8017FF48 0017CEA8 FC 20 F8 18 */ frsp f1, f31 -/* 8017FF4C 0017CEAC 38 61 01 18 */ addi r3, r1, 0x118 -/* 8017FF50 0017CEB0 EC 11 00 32 */ fmuls f0, f17, f0 -/* 8017FF54 0017CEB4 38 81 00 50 */ addi r4, r1, 0x50 -/* 8017FF58 0017CEB8 EC 51 00 B2 */ fmuls f2, f17, f2 -/* 8017FF5C 0017CEBC EC 31 00 72 */ fmuls f1, f17, f1 -/* 8017FF60 0017CEC0 EC 1D 00 2A */ fadds f0, f29, f0 -/* 8017FF64 0017CEC4 EC 5C 10 2A */ fadds f2, f28, f2 -/* 8017FF68 0017CEC8 EC 3B 08 2A */ fadds f1, f27, f1 -/* 8017FF6C 0017CECC D0 01 00 50 */ stfs f0, 0x50(r1) -/* 8017FF70 0017CED0 D0 41 00 54 */ stfs f2, 0x54(r1) -/* 8017FF74 0017CED4 D0 21 00 58 */ stfs f1, 0x58(r1) -/* 8017FF78 0017CED8 48 1B 7B 91 */ bl AccumulateBounds__6CAABoxFRC9CVector3f -/* 8017FF7C 0017CEDC C0 61 01 1C */ lfs f3, 0x11c(r1) -/* 8017FF80 0017CEE0 38 61 00 C8 */ addi r3, r1, 0xc8 -/* 8017FF84 0017CEE4 C0 41 01 20 */ lfs f2, 0x120(r1) -/* 8017FF88 0017CEE8 38 81 00 44 */ addi r4, r1, 0x44 -/* 8017FF8C 0017CEEC C0 01 01 18 */ lfs f0, 0x118(r1) -/* 8017FF90 0017CEF0 EC A3 98 2A */ fadds f5, f3, f19 -/* 8017FF94 0017CEF4 EC 82 98 2A */ fadds f4, f2, f19 -/* 8017FF98 0017CEF8 38 A1 00 38 */ addi r5, r1, 0x38 -/* 8017FF9C 0017CEFC EC 20 98 2A */ fadds f1, f0, f19 -/* 8017FFA0 0017CF00 EC 63 98 28 */ fsubs f3, f3, f19 -/* 8017FFA4 0017CF04 D0 A1 00 3C */ stfs f5, 0x3c(r1) -/* 8017FFA8 0017CF08 EC 42 98 28 */ fsubs f2, f2, f19 -/* 8017FFAC 0017CF0C EC 00 98 28 */ fsubs f0, f0, f19 -/* 8017FFB0 0017CF10 D0 21 00 38 */ stfs f1, 0x38(r1) -/* 8017FFB4 0017CF14 D0 81 00 40 */ stfs f4, 0x40(r1) -/* 8017FFB8 0017CF18 D0 01 00 44 */ stfs f0, 0x44(r1) -/* 8017FFBC 0017CF1C D0 61 00 48 */ stfs f3, 0x48(r1) -/* 8017FFC0 0017CF20 D0 41 00 4C */ stfs f2, 0x4c(r1) -/* 8017FFC4 0017CF24 48 1B 85 45 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 8017FFC8 0017CF28 81 21 00 C8 */ lwz r9, 0xc8(r1) -/* 8017FFCC 0017CF2C 38 61 01 A8 */ addi r3, r1, 0x1a8 -/* 8017FFD0 0017CF30 81 01 00 CC */ lwz r8, 0xcc(r1) -/* 8017FFD4 0017CF34 38 81 01 18 */ addi r4, r1, 0x118 -/* 8017FFD8 0017CF38 80 E1 00 D0 */ lwz r7, 0xd0(r1) -/* 8017FFDC 0017CF3C 80 C1 00 D4 */ lwz r6, 0xd4(r1) -/* 8017FFE0 0017CF40 80 A1 00 D8 */ lwz r5, 0xd8(r1) -/* 8017FFE4 0017CF44 80 01 00 DC */ lwz r0, 0xdc(r1) -/* 8017FFE8 0017CF48 91 21 01 18 */ stw r9, 0x118(r1) -/* 8017FFEC 0017CF4C 91 01 01 1C */ stw r8, 0x11c(r1) -/* 8017FFF0 0017CF50 90 E1 01 20 */ stw r7, 0x120(r1) -/* 8017FFF4 0017CF54 90 C1 01 24 */ stw r6, 0x124(r1) -/* 8017FFF8 0017CF58 90 A1 01 28 */ stw r5, 0x128(r1) -/* 8017FFFC 0017CF5C 90 01 01 2C */ stw r0, 0x12c(r1) -/* 80180000 0017CF60 48 12 38 E5 */ bl SetCacheBounds__19CAreaCollisionCacheFRC6CAABox -/* 80180004 0017CF64 7F 03 C3 78 */ mr r3, r24 -/* 80180008 0017CF68 38 81 01 A8 */ addi r4, r1, 0x1a8 -/* 8018000C 0017CF6C 48 00 46 B9 */ bl BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache -lbl_80180010: -/* 80180010 0017CF70 38 00 00 00 */ li r0, 0 -/* 80180014 0017CF74 80 AD 8E 9C */ lwz r5, lbl_805A7A5C@sda21(r13) -/* 80180018 0017CF78 90 01 00 0C */ stw r0, 0xc(r1) -/* 8018001C 0017CF7C 38 60 00 00 */ li r3, 0 -/* 80180020 0017CF80 38 80 00 01 */ li r4, 1 -/* 80180024 0017CF84 90 01 00 08 */ stw r0, 8(r1) -/* 80180028 0017CF88 48 20 9E CD */ bl __shl2i -/* 8018002C 0017CF8C 80 01 00 08 */ lwz r0, 8(r1) -/* 80180030 0017CF90 80 A1 00 0C */ lwz r5, 0xc(r1) -/* 80180034 0017CF94 7C 00 1B 78 */ or r0, r0, r3 -/* 80180038 0017CF98 38 61 00 A8 */ addi r3, r1, 0xa8 -/* 8018003C 0017CF9C 7C A5 23 78 */ or r5, r5, r4 -/* 80180040 0017CFA0 90 01 00 08 */ stw r0, 8(r1) -/* 80180044 0017CFA4 38 81 00 08 */ addi r4, r1, 8 -/* 80180048 0017CFA8 90 A1 00 0C */ stw r5, 0xc(r1) -/* 8018004C 0017CFAC 48 14 F8 69 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList -/* 80180050 0017CFB0 80 E1 00 74 */ lwz r7, 0x74(r1) -/* 80180054 0017CFB4 38 60 00 00 */ li r3, 0 -/* 80180058 0017CFB8 80 C1 00 78 */ lwz r6, 0x78(r1) -/* 8018005C 0017CFBC 38 80 00 01 */ li r4, 1 -/* 80180060 0017CFC0 80 01 00 7C */ lwz r0, 0x7c(r1) -/* 80180064 0017CFC4 80 AD 8E A0 */ lwz r5, lbl_805A7A60@sda21(r13) -/* 80180068 0017CFC8 93 A1 00 A8 */ stw r29, 0xa8(r1) -/* 8018006C 0017CFCC D3 41 00 B8 */ stfs f26, 0xb8(r1) -/* 80180070 0017CFD0 D3 21 00 BC */ stfs f25, 0xbc(r1) -/* 80180074 0017CFD4 D3 01 00 C0 */ stfs f24, 0xc0(r1) -/* 80180078 0017CFD8 D2 61 00 C4 */ stfs f19, 0xc4(r1) -/* 8018007C 0017CFDC 90 E1 00 2C */ stw r7, 0x2c(r1) -/* 80180080 0017CFE0 90 C1 00 30 */ stw r6, 0x30(r1) -/* 80180084 0017CFE4 90 01 00 34 */ stw r0, 0x34(r1) -/* 80180088 0017CFE8 48 20 9E 6D */ bl __shl2i -/* 8018008C 0017CFEC 39 00 FF FF */ li r8, -1 -/* 80180090 0017CFF0 39 60 00 00 */ li r11, 0 -/* 80180094 0017CFF4 38 00 00 02 */ li r0, 2 -/* 80180098 0017CFF8 90 81 00 9C */ stw r4, 0x9c(r1) -/* 8018009C 0017CFFC 7E E6 BB 78 */ mr r6, r23 -/* 801800A0 0017D000 38 81 01 A8 */ addi r4, r1, 0x1a8 -/* 801800A4 0017D004 90 61 00 98 */ stw r3, 0x98(r1) -/* 801800A8 0017D008 7F 03 C3 78 */ mr r3, r24 -/* 801800AC 0017D00C 38 A1 00 A8 */ addi r5, r1, 0xa8 -/* 801800B0 0017D010 38 E1 00 90 */ addi r7, r1, 0x90 -/* 801800B4 0017D014 91 01 00 94 */ stw r8, 0x94(r1) -/* 801800B8 0017D018 39 01 00 2C */ addi r8, r1, 0x2c -/* 801800BC 0017D01C 39 21 01 48 */ addi r9, r1, 0x148 -/* 801800C0 0017D020 39 41 00 18 */ addi r10, r1, 0x18 -/* 801800C4 0017D024 91 61 00 90 */ stw r11, 0x90(r1) -/* 801800C8 0017D028 90 01 00 A0 */ stw r0, 0xa0(r1) -/* 801800CC 0017D02C 48 00 2D 39 */ bl DetectStaticCollision_Cached_Moving__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter9CVector3fR14CCollisionInfoRd -/* 801800D0 0017D030 93 A1 00 A8 */ stw r29, 0xa8(r1) -/* 801800D4 0017D034 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801800D8 0017D038 93 C1 00 A8 */ stw r30, 0xa8(r1) -/* 801800DC 0017D03C 41 82 00 58 */ beq lbl_80180134 -/* 801800E0 0017D040 C8 01 00 18 */ lfd f0, 0x18(r1) -/* 801800E4 0017D044 6F 43 80 00 */ xoris r3, r26, 0x8000 -/* 801800E8 0017D048 3C 00 43 30 */ lis r0, 0x4330 -/* 801800EC 0017D04C 90 61 1C F4 */ stw r3, 0x1cf4(r1) -/* 801800F0 0017D050 FC 11 00 28 */ fsub f0, f17, f0 -/* 801800F4 0017D054 C8 62 A2 B8 */ lfd f3, lbl_805ABFD8@sda21(r2) -/* 801800F8 0017D058 90 01 1C F0 */ stw r0, 0x1cf0(r1) -/* 801800FC 0017D05C C0 41 00 74 */ lfs f2, 0x74(r1) -/* 80180100 0017D060 FC 80 00 18 */ frsp f4, f0 -/* 80180104 0017D064 C8 01 1C F0 */ lfd f0, 0x1cf0(r1) -/* 80180108 0017D068 C0 21 00 78 */ lfs f1, 0x78(r1) -/* 8018010C 0017D06C EC 60 18 28 */ fsubs f3, f0, f3 -/* 80180110 0017D070 C0 01 00 7C */ lfs f0, 0x7c(r1) -/* 80180114 0017D074 EC 84 88 24 */ fdivs f4, f4, f17 -/* 80180118 0017D078 EC 64 18 24 */ fdivs f3, f4, f3 -/* 8018011C 0017D07C EC 43 00 B2 */ fmuls f2, f3, f2 -/* 80180120 0017D080 EC 23 00 72 */ fmuls f1, f3, f1 -/* 80180124 0017D084 EC 03 00 32 */ fmuls f0, f3, f0 -/* 80180128 0017D088 EE F7 10 28 */ fsubs f23, f23, f2 -/* 8018012C 0017D08C EE D6 08 28 */ fsubs f22, f22, f1 -/* 80180130 0017D090 EE B5 00 28 */ fsubs f21, f21, f0 -lbl_80180134: -/* 80180134 0017D094 3B 7B 00 01 */ addi r27, r27, 1 -lbl_80180138: -/* 80180138 0017D098 7C 1B D0 00 */ cmpw r27, r26 -/* 8018013C 0017D09C 41 80 FD 9C */ blt lbl_8017FED8 -/* 80180140 0017D0A0 EC 92 05 B2 */ fmuls f4, f18, f22 -/* 80180144 0017D0A4 C0 B9 01 3C */ lfs f5, 0x13c(r25) -/* 80180148 0017D0A8 EC 52 05 72 */ fmuls f2, f18, f21 -/* 8018014C 0017D0AC C0 79 01 40 */ lfs f3, 0x140(r25) -/* 80180150 0017D0B0 EC 12 05 F2 */ fmuls f0, f18, f23 -/* 80180154 0017D0B4 C0 39 01 38 */ lfs f1, 0x138(r25) -/* 80180158 0017D0B8 EC 90 01 32 */ fmuls f4, f16, f4 -/* 8018015C 0017D0BC 7F 23 CB 78 */ mr r3, r25 -/* 80180160 0017D0C0 EC 50 00 B2 */ fmuls f2, f16, f2 -/* 80180164 0017D0C4 38 81 00 20 */ addi r4, r1, 0x20 -/* 80180168 0017D0C8 EC 10 00 32 */ fmuls f0, f16, f0 -/* 8018016C 0017D0CC EC 85 20 2A */ fadds f4, f5, f4 -/* 80180170 0017D0D0 EC 43 10 2A */ fadds f2, f3, f2 -/* 80180174 0017D0D4 EC 01 00 2A */ fadds f0, f1, f0 -/* 80180178 0017D0D8 D0 81 00 24 */ stfs f4, 0x24(r1) -/* 8018017C 0017D0DC D0 01 00 20 */ stfs f0, 0x20(r1) -/* 80180180 0017D0E0 D0 41 00 28 */ stfs f2, 0x28(r1) -/* 80180184 0017D0E4 4B F9 AB 1D */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -/* 80180188 0017D0E8 34 E1 01 C0 */ addic. r7, r1, 0x1c0 -/* 8018018C 0017D0EC 41 82 00 94 */ beq lbl_80180220 -/* 80180190 0017D0F0 38 C7 00 04 */ addi r6, r7, 4 -/* 80180194 0017D0F4 38 60 00 00 */ li r3, 0 -/* 80180198 0017D0F8 48 00 00 74 */ b lbl_8018020C -lbl_8018019C: -/* 8018019C 0017D0FC 28 06 00 00 */ cmplwi r6, 0 -/* 801801A0 0017D100 41 82 00 64 */ beq lbl_80180204 -/* 801801A4 0017D104 34 06 00 04 */ addic. r0, r6, 4 -/* 801801A8 0017D108 41 82 00 5C */ beq lbl_80180204 -/* 801801AC 0017D10C 81 06 00 04 */ lwz r8, 4(r6) -/* 801801B0 0017D110 38 80 00 00 */ li r4, 0 -/* 801801B4 0017D114 2C 08 00 00 */ cmpwi r8, 0 -/* 801801B8 0017D118 40 81 00 44 */ ble lbl_801801FC -/* 801801BC 0017D11C 2C 08 00 08 */ cmpwi r8, 8 -/* 801801C0 0017D120 38 A8 FF F8 */ addi r5, r8, -8 -/* 801801C4 0017D124 40 81 00 20 */ ble lbl_801801E4 -/* 801801C8 0017D128 38 05 00 07 */ addi r0, r5, 7 -/* 801801CC 0017D12C 54 00 E8 FE */ srwi r0, r0, 3 -/* 801801D0 0017D130 7C 09 03 A6 */ mtctr r0 -/* 801801D4 0017D134 2C 05 00 00 */ cmpwi r5, 0 -/* 801801D8 0017D138 40 81 00 0C */ ble lbl_801801E4 -lbl_801801DC: -/* 801801DC 0017D13C 38 84 00 08 */ addi r4, r4, 8 -/* 801801E0 0017D140 42 00 FF FC */ bdnz lbl_801801DC -lbl_801801E4: -/* 801801E4 0017D144 7C 04 40 50 */ subf r0, r4, r8 -/* 801801E8 0017D148 7C 09 03 A6 */ mtctr r0 -/* 801801EC 0017D14C 7C 04 40 00 */ cmpw r4, r8 -/* 801801F0 0017D150 40 80 00 0C */ bge lbl_801801FC -lbl_801801F4: -/* 801801F4 0017D154 38 84 00 01 */ addi r4, r4, 1 -/* 801801F8 0017D158 42 00 FF FC */ bdnz lbl_801801F4 -lbl_801801FC: -/* 801801FC 0017D15C 38 00 00 00 */ li r0, 0 -/* 80180200 0017D160 90 06 00 04 */ stw r0, 4(r6) -lbl_80180204: -/* 80180204 0017D164 38 C6 09 0C */ addi r6, r6, 0x90c -/* 80180208 0017D168 38 63 00 01 */ addi r3, r3, 1 -lbl_8018020C: -/* 8018020C 0017D16C 80 07 00 00 */ lwz r0, 0(r7) -/* 80180210 0017D170 7C 03 00 00 */ cmpw r3, r0 -/* 80180214 0017D174 41 80 FF 88 */ blt lbl_8018019C -/* 80180218 0017D178 38 00 00 00 */ li r0, 0 -/* 8018021C 0017D17C 90 07 00 00 */ stw r0, 0(r7) -lbl_80180220: -/* 80180220 0017D180 38 00 1E 38 */ li r0, 0x1e38 -/* 80180224 0017D184 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 -/* 80180228 0017D188 CB E1 1E 30 */ lfd f31, 0x1e30(r1) -/* 8018022C 0017D18C 38 00 1E 28 */ li r0, 0x1e28 -/* 80180230 0017D190 13 C1 00 0C */ psq_lx f30, r1, r0, 0, qr0 -/* 80180234 0017D194 CB C1 1E 20 */ lfd f30, 0x1e20(r1) -/* 80180238 0017D198 38 00 1E 18 */ li r0, 0x1e18 -/* 8018023C 0017D19C 13 A1 00 0C */ psq_lx f29, r1, r0, 0, qr0 -/* 80180240 0017D1A0 CB A1 1E 10 */ lfd f29, 0x1e10(r1) -/* 80180244 0017D1A4 38 00 1E 08 */ li r0, 0x1e08 -/* 80180248 0017D1A8 13 81 00 0C */ psq_lx f28, r1, r0, 0, qr0 -/* 8018024C 0017D1AC CB 81 1E 00 */ lfd f28, 0x1e00(r1) -/* 80180250 0017D1B0 38 00 1D F8 */ li r0, 0x1df8 -/* 80180254 0017D1B4 13 61 00 0C */ psq_lx f27, r1, r0, 0, qr0 -/* 80180258 0017D1B8 CB 61 1D F0 */ lfd f27, 0x1df0(r1) -/* 8018025C 0017D1BC 38 00 1D E8 */ li r0, 0x1de8 -/* 80180260 0017D1C0 13 41 00 0C */ psq_lx f26, r1, r0, 0, qr0 -/* 80180264 0017D1C4 CB 41 1D E0 */ lfd f26, 0x1de0(r1) -/* 80180268 0017D1C8 38 00 1D D8 */ li r0, 0x1dd8 -/* 8018026C 0017D1CC 13 21 00 0C */ psq_lx f25, r1, r0, 0, qr0 -/* 80180270 0017D1D0 CB 21 1D D0 */ lfd f25, 0x1dd0(r1) -/* 80180274 0017D1D4 38 00 1D C8 */ li r0, 0x1dc8 -/* 80180278 0017D1D8 13 01 00 0C */ psq_lx f24, r1, r0, 0, qr0 -/* 8018027C 0017D1DC CB 01 1D C0 */ lfd f24, 0x1dc0(r1) -/* 80180280 0017D1E0 38 00 1D B8 */ li r0, 0x1db8 -/* 80180284 0017D1E4 12 E1 00 0C */ psq_lx f23, r1, r0, 0, qr0 -/* 80180288 0017D1E8 CA E1 1D B0 */ lfd f23, 0x1db0(r1) -/* 8018028C 0017D1EC 38 00 1D A8 */ li r0, 0x1da8 -/* 80180290 0017D1F0 12 C1 00 0C */ psq_lx f22, r1, r0, 0, qr0 -/* 80180294 0017D1F4 CA C1 1D A0 */ lfd f22, 0x1da0(r1) -/* 80180298 0017D1F8 38 00 1D 98 */ li r0, 0x1d98 -/* 8018029C 0017D1FC 12 A1 00 0C */ psq_lx f21, r1, r0, 0, qr0 -/* 801802A0 0017D200 CA A1 1D 90 */ lfd f21, 0x1d90(r1) -/* 801802A4 0017D204 38 00 1D 88 */ li r0, 0x1d88 -/* 801802A8 0017D208 12 81 00 0C */ psq_lx f20, r1, r0, 0, qr0 -/* 801802AC 0017D20C CA 81 1D 80 */ lfd f20, 0x1d80(r1) -/* 801802B0 0017D210 38 00 1D 78 */ li r0, 0x1d78 -/* 801802B4 0017D214 12 61 00 0C */ psq_lx f19, r1, r0, 0, qr0 -/* 801802B8 0017D218 CA 61 1D 70 */ lfd f19, 0x1d70(r1) -/* 801802BC 0017D21C 38 00 1D 68 */ li r0, 0x1d68 -/* 801802C0 0017D220 12 41 00 0C */ psq_lx f18, r1, r0, 0, qr0 -/* 801802C4 0017D224 CA 41 1D 60 */ lfd f18, 0x1d60(r1) -/* 801802C8 0017D228 38 00 1D 58 */ li r0, 0x1d58 -/* 801802CC 0017D22C 12 21 00 0C */ psq_lx f17, r1, r0, 0, qr0 -/* 801802D0 0017D230 CA 21 1D 50 */ lfd f17, 0x1d50(r1) -/* 801802D4 0017D234 38 00 1D 48 */ li r0, 0x1d48 -/* 801802D8 0017D238 12 01 00 0C */ psq_lx f16, r1, r0, 0, qr0 -/* 801802DC 0017D23C CA 01 1D 40 */ lfd f16, 0x1d40(r1) -/* 801802E0 0017D240 38 00 1D 38 */ li r0, 0x1d38 -/* 801802E4 0017D244 11 E1 00 0C */ psq_lx f15, r1, r0, 0, qr0 -/* 801802E8 0017D248 C9 E1 1D 30 */ lfd f15, 0x1d30(r1) -/* 801802EC 0017D24C 38 00 1D 28 */ li r0, 0x1d28 -/* 801802F0 0017D250 11 C1 00 0C */ psq_lx f14, r1, r0, 0, qr0 -/* 801802F4 0017D254 C9 C1 1D 20 */ lfd f14, 0x1d20(r1) -/* 801802F8 0017D258 BA E1 1C FC */ lmw r23, 0x1cfc(r1) -/* 801802FC 0017D25C 80 01 1E 44 */ lwz r0, 0x1e44(r1) -/* 80180300 0017D260 7C 08 03 A6 */ mtlr r0 -/* 80180304 0017D264 38 21 1E 40 */ addi r1, r1, 0x1e40 -/* 80180308 0017D268 4E 80 00 20 */ blr - -.global GetActorRelativeVelocities__14CGameCollisionFPC13CPhysicsActorPC13CPhysicsActor -GetActorRelativeVelocities__14CGameCollisionFPC13CPhysicsActorPC13CPhysicsActor: -/* 8018030C 0017D26C 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 80180310 0017D270 7C 08 02 A6 */ mflr r0 -/* 80180314 0017D274 90 01 00 64 */ stw r0, 0x64(r1) -/* 80180318 0017D278 DB E1 00 50 */ stfd f31, 0x50(r1) -/* 8018031C 0017D27C F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 -/* 80180320 0017D280 DB C1 00 40 */ stfd f30, 0x40(r1) -/* 80180324 0017D284 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 -/* 80180328 0017D288 DB A1 00 30 */ stfd f29, 0x30(r1) -/* 8018032C 0017D28C F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0 -/* 80180330 0017D290 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 80180334 0017D294 93 C1 00 28 */ stw r30, 0x28(r1) -/* 80180338 0017D298 93 A1 00 24 */ stw r29, 0x24(r1) -/* 8018033C 0017D29C 7C BF 2B 79 */ or. r31, r5, r5 -/* 80180340 0017D2A0 C3 E4 01 38 */ lfs f31, 0x138(r4) -/* 80180344 0017D2A4 C3 C4 01 3C */ lfs f30, 0x13c(r4) -/* 80180348 0017D2A8 7C 9E 23 78 */ mr r30, r4 -/* 8018034C 0017D2AC C3 A4 01 40 */ lfs f29, 0x140(r4) -/* 80180350 0017D2B0 7C 7D 1B 78 */ mr r29, r3 -/* 80180354 0017D2B4 41 82 00 58 */ beq lbl_801803AC -/* 80180358 0017D2B8 7F E4 FB 78 */ mr r4, r31 -/* 8018035C 0017D2BC 38 61 00 10 */ addi r3, r1, 0x10 -/* 80180360 0017D2C0 4B F2 8A B5 */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" -/* 80180364 0017D2C4 80 63 00 04 */ lwz r3, 4(r3) -/* 80180368 0017D2C8 38 00 00 00 */ li r0, 0 -/* 8018036C 0017D2CC 28 03 00 00 */ cmplwi r3, 0 -/* 80180370 0017D2D0 41 82 00 1C */ beq lbl_8018038C -/* 80180374 0017D2D4 A0 1E 00 08 */ lhz r0, 8(r30) -/* 80180378 0017D2D8 38 81 00 0C */ addi r4, r1, 0xc -/* 8018037C 0017D2DC B0 01 00 08 */ sth r0, 8(r1) -/* 80180380 0017D2E0 B0 01 00 0C */ sth r0, 0xc(r1) -/* 80180384 0017D2E4 4B F3 19 CD */ bl IsRider__15CScriptPlatformCF9TUniqueId -/* 80180388 0017D2E8 7C 60 1B 78 */ mr r0, r3 -lbl_8018038C: -/* 8018038C 0017D2EC 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 80180390 0017D2F0 40 82 00 1C */ bne lbl_801803AC -/* 80180394 0017D2F4 C0 5F 01 38 */ lfs f2, 0x138(r31) -/* 80180398 0017D2F8 C0 3F 01 3C */ lfs f1, 0x13c(r31) -/* 8018039C 0017D2FC C0 1F 01 40 */ lfs f0, 0x140(r31) -/* 801803A0 0017D300 EF FF 10 28 */ fsubs f31, f31, f2 -/* 801803A4 0017D304 EF DE 08 28 */ fsubs f30, f30, f1 -/* 801803A8 0017D308 EF BD 00 28 */ fsubs f29, f29, f0 -lbl_801803AC: -/* 801803AC 0017D30C D3 FD 00 00 */ stfs f31, 0(r29) -/* 801803B0 0017D310 D3 DD 00 04 */ stfs f30, 4(r29) -/* 801803B4 0017D314 D3 BD 00 08 */ stfs f29, 8(r29) -/* 801803B8 0017D318 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 -/* 801803BC 0017D31C CB E1 00 50 */ lfd f31, 0x50(r1) -/* 801803C0 0017D320 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 -/* 801803C4 0017D324 CB C1 00 40 */ lfd f30, 0x40(r1) -/* 801803C8 0017D328 E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0 -/* 801803CC 0017D32C CB A1 00 30 */ lfd f29, 0x30(r1) -/* 801803D0 0017D330 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 801803D4 0017D334 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 801803D8 0017D338 80 01 00 64 */ lwz r0, 0x64(r1) -/* 801803DC 0017D33C 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 801803E0 0017D340 7C 08 03 A6 */ mtlr r0 -/* 801803E4 0017D344 38 21 00 60 */ addi r1, r1, 0x60 -/* 801803E8 0017D348 4E 80 00 20 */ blr - -.global "FindNonIntersectingVector__14CGameCollisionFR13CStateManagerRC19CAreaCollisionCacheRC13CPhysicsActorRC19CCollisionPrimitiveRCQ24rstl32reserved_vector<9TUniqueId,1024>" -"FindNonIntersectingVector__14CGameCollisionFR13CStateManagerRC19CAreaCollisionCacheRC13CPhysicsActorRC19CCollisionPrimitiveRCQ24rstl32reserved_vector<9TUniqueId,1024>": -/* 801803EC 0017D34C 94 21 FE 40 */ stwu r1, -0x1c0(r1) -/* 801803F0 0017D350 7C 08 02 A6 */ mflr r0 -/* 801803F4 0017D354 90 01 01 C4 */ stw r0, 0x1c4(r1) -/* 801803F8 0017D358 DB E1 01 B0 */ stfd f31, 0x1b0(r1) -/* 801803FC 0017D35C F3 E1 01 B8 */ psq_st f31, 440(r1), 0, qr0 -/* 80180400 0017D360 DB C1 01 A0 */ stfd f30, 0x1a0(r1) -/* 80180404 0017D364 F3 C1 01 A8 */ psq_st f30, 424(r1), 0, qr0 -/* 80180408 0017D368 DB A1 01 90 */ stfd f29, 0x190(r1) -/* 8018040C 0017D36C F3 A1 01 98 */ psq_st f29, 408(r1), 0, qr0 -/* 80180410 0017D370 DB 81 01 80 */ stfd f28, 0x180(r1) -/* 80180414 0017D374 F3 81 01 88 */ psq_st f28, 392(r1), 0, qr0 -/* 80180418 0017D378 DB 61 01 70 */ stfd f27, 0x170(r1) -/* 8018041C 0017D37C F3 61 01 78 */ psq_st f27, 376(r1), 0, qr0 -/* 80180420 0017D380 DB 41 01 60 */ stfd f26, 0x160(r1) -/* 80180424 0017D384 F3 41 01 68 */ psq_st f26, 360(r1), 0, qr0 -/* 80180428 0017D388 DB 21 01 50 */ stfd f25, 0x150(r1) -/* 8018042C 0017D38C F3 21 01 58 */ psq_st f25, 344(r1), 0, qr0 -/* 80180430 0017D390 DB 01 01 40 */ stfd f24, 0x140(r1) -/* 80180434 0017D394 F3 01 01 48 */ psq_st f24, 328(r1), 0, qr0 -/* 80180438 0017D398 DA E1 01 30 */ stfd f23, 0x130(r1) -/* 8018043C 0017D39C F2 E1 01 38 */ psq_st f23, 312(r1), 0, qr0 -/* 80180440 0017D3A0 DA C1 01 20 */ stfd f22, 0x120(r1) -/* 80180444 0017D3A4 F2 C1 01 28 */ psq_st f22, 296(r1), 0, qr0 -/* 80180448 0017D3A8 DA A1 01 10 */ stfd f21, 0x110(r1) -/* 8018044C 0017D3AC F2 A1 01 18 */ psq_st f21, 280(r1), 0, qr0 -/* 80180450 0017D3B0 DA 81 01 00 */ stfd f20, 0x100(r1) -/* 80180454 0017D3B4 F2 81 01 08 */ psq_st f20, 264(r1), 0, qr0 -/* 80180458 0017D3B8 DA 61 00 F0 */ stfd f19, 0xf0(r1) -/* 8018045C 0017D3BC F2 61 00 F8 */ psq_st f19, 248(r1), 0, qr0 -/* 80180460 0017D3C0 BE A1 00 C4 */ stmw r21, 0xc4(r1) -/* 80180464 0017D3C4 7C D9 33 78 */ mr r25, r6 -/* 80180468 0017D3C8 7C 97 23 78 */ mr r23, r4 -/* 8018046C 0017D3CC 7F 24 CB 78 */ mr r4, r25 -/* 80180470 0017D3D0 7C 76 1B 78 */ mr r22, r3 -/* 80180474 0017D3D4 81 99 00 00 */ lwz r12, 0(r25) -/* 80180478 0017D3D8 7C B8 2B 78 */ mr r24, r5 -/* 8018047C 0017D3DC 7C FA 3B 78 */ mr r26, r7 -/* 80180480 0017D3E0 7D 1B 43 78 */ mr r27, r8 -/* 80180484 0017D3E4 81 8C 00 70 */ lwz r12, 0x70(r12) -/* 80180488 0017D3E8 38 61 00 58 */ addi r3, r1, 0x58 -/* 8018048C 0017D3EC 7D 89 03 A6 */ mtctr r12 -/* 80180490 0017D3F0 4E 80 04 21 */ bctrl -/* 80180494 0017D3F4 38 61 00 88 */ addi r3, r1, 0x88 -/* 80180498 0017D3F8 38 81 00 58 */ addi r4, r1, 0x58 -/* 8018049C 0017D3FC 48 19 26 D9 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 801804A0 0017D400 7F 44 D3 78 */ mr r4, r26 -/* 801804A4 0017D404 38 61 00 40 */ addi r3, r1, 0x40 -/* 801804A8 0017D408 81 9A 00 00 */ lwz r12, 0(r26) -/* 801804AC 0017D40C 38 A1 00 88 */ addi r5, r1, 0x88 -/* 801804B0 0017D410 C3 61 00 B4 */ lfs f27, 0xb4(r1) -/* 801804B4 0017D414 81 8C 00 14 */ lwz r12, 0x14(r12) -/* 801804B8 0017D418 C3 81 00 A4 */ lfs f28, 0xa4(r1) -/* 801804BC 0017D41C C3 A1 00 94 */ lfs f29, 0x94(r1) -/* 801804C0 0017D420 7D 89 03 A6 */ mtctr r12 -/* 801804C4 0017D424 4E 80 04 21 */ bctrl -/* 801804C8 0017D428 38 61 00 28 */ addi r3, r1, 0x28 -/* 801804CC 0017D42C 38 81 00 40 */ addi r4, r1, 0x40 -/* 801804D0 0017D430 48 1B 71 3D */ bl GetCenterPoint__6CAABoxCFv -/* 801804D4 0017D434 C0 41 00 28 */ lfs f2, 0x28(r1) -/* 801804D8 0017D438 3C 60 80 5A */ lis r3, skZero3f@ha -/* 801804DC 0017D43C C0 21 00 2C */ lfs f1, 0x2c(r1) -/* 801804E0 0017D440 3B C3 66 A0 */ addi r30, r3, skZero3f@l -/* 801804E4 0017D444 C0 01 00 30 */ lfs f0, 0x30(r1) -/* 801804E8 0017D448 3B A0 00 02 */ li r29, 2 -/* 801804EC 0017D44C D0 41 00 34 */ stfs f2, 0x34(r1) -/* 801804F0 0017D450 3F E0 43 30 */ lis r31, 0x4330 -/* 801804F4 0017D454 C3 C2 A2 C0 */ lfs f30, lbl_805ABFE0@sda21(r2) -/* 801804F8 0017D458 D0 21 00 38 */ stfs f1, 0x38(r1) -/* 801804FC 0017D45C CB E2 A2 B8 */ lfd f31, lbl_805ABFD8@sda21(r2) -/* 80180500 0017D460 D0 01 00 3C */ stfs f0, 0x3c(r1) -/* 80180504 0017D464 48 00 02 FC */ b lbl_80180800 -lbl_80180508: -/* 80180508 0017D468 6F A0 80 00 */ xoris r0, r29, 0x8000 -/* 8018050C 0017D46C 93 E1 00 B8 */ stw r31, 0xb8(r1) -/* 80180510 0017D470 3B 80 00 00 */ li r28, 0 -/* 80180514 0017D474 3A A0 00 00 */ li r21, 0 -/* 80180518 0017D478 90 01 00 BC */ stw r0, 0xbc(r1) -/* 8018051C 0017D47C C8 01 00 B8 */ lfd f0, 0xb8(r1) -/* 80180520 0017D480 EC 00 F8 28 */ fsubs f0, f0, f31 -/* 80180524 0017D484 EE 7E 00 32 */ fmuls f19, f30, f0 -/* 80180528 0017D488 FE E0 98 50 */ fneg f23, f19 -lbl_8018052C: -/* 8018052C 0017D48C 28 1C 00 19 */ cmplwi r28, 0x19 -/* 80180530 0017D490 C3 5E 00 00 */ lfs f26, 0(r30) -/* 80180534 0017D494 C3 3E 00 04 */ lfs f25, 4(r30) -/* 80180538 0017D498 C3 1E 00 08 */ lfs f24, 8(r30) -/* 8018053C 0017D49C 41 81 01 B4 */ bgt lbl_801806F0 -/* 80180540 0017D4A0 3C 60 80 3E */ lis r3, lbl_803E3F80@ha -/* 80180544 0017D4A4 38 63 3F 80 */ addi r3, r3, lbl_803E3F80@l -/* 80180548 0017D4A8 7C 03 A8 2E */ lwzx r0, r3, r21 -/* 8018054C 0017D4AC 7C 09 03 A6 */ mtctr r0 -/* 80180550 0017D4B0 4E 80 04 20 */ bctr -/* 80180554 0017D4B4 C3 42 A2 A8 */ lfs f26, lbl_805ABFC8@sda21(r2) -/* 80180558 0017D4B8 FF 20 98 90 */ fmr f25, f19 -/* 8018055C 0017D4BC FF 00 D0 90 */ fmr f24, f26 -/* 80180560 0017D4C0 48 00 01 90 */ b lbl_801806F0 -/* 80180564 0017D4C4 C3 42 A2 A8 */ lfs f26, lbl_805ABFC8@sda21(r2) -/* 80180568 0017D4C8 FF 20 B8 90 */ fmr f25, f23 -/* 8018056C 0017D4CC FF 00 D0 90 */ fmr f24, f26 -/* 80180570 0017D4D0 48 00 01 80 */ b lbl_801806F0 -/* 80180574 0017D4D4 C3 22 A2 A8 */ lfs f25, lbl_805ABFC8@sda21(r2) -/* 80180578 0017D4D8 FF 40 98 90 */ fmr f26, f19 -/* 8018057C 0017D4DC FF 00 C8 90 */ fmr f24, f25 -/* 80180580 0017D4E0 48 00 01 70 */ b lbl_801806F0 -/* 80180584 0017D4E4 C3 22 A2 A8 */ lfs f25, lbl_805ABFC8@sda21(r2) -/* 80180588 0017D4E8 FF 40 B8 90 */ fmr f26, f23 -/* 8018058C 0017D4EC FF 00 C8 90 */ fmr f24, f25 -/* 80180590 0017D4F0 48 00 01 60 */ b lbl_801806F0 -/* 80180594 0017D4F4 C3 42 A2 A8 */ lfs f26, lbl_805ABFC8@sda21(r2) -/* 80180598 0017D4F8 FF 00 98 90 */ fmr f24, f19 -/* 8018059C 0017D4FC FF 20 D0 90 */ fmr f25, f26 -/* 801805A0 0017D500 48 00 01 50 */ b lbl_801806F0 -/* 801805A4 0017D504 C3 42 A2 A8 */ lfs f26, lbl_805ABFC8@sda21(r2) -/* 801805A8 0017D508 FF 00 B8 90 */ fmr f24, f23 -/* 801805AC 0017D50C FF 20 D0 90 */ fmr f25, f26 -/* 801805B0 0017D510 48 00 01 40 */ b lbl_801806F0 -/* 801805B4 0017D514 FF 20 98 90 */ fmr f25, f19 -/* 801805B8 0017D518 C3 42 A2 A8 */ lfs f26, lbl_805ABFC8@sda21(r2) -/* 801805BC 0017D51C FF 00 98 90 */ fmr f24, f19 -/* 801805C0 0017D520 48 00 01 30 */ b lbl_801806F0 -/* 801805C4 0017D524 FF 20 B8 90 */ fmr f25, f23 -/* 801805C8 0017D528 C3 42 A2 A8 */ lfs f26, lbl_805ABFC8@sda21(r2) -/* 801805CC 0017D52C FF 00 B8 90 */ fmr f24, f23 -/* 801805D0 0017D530 48 00 01 20 */ b lbl_801806F0 -/* 801805D4 0017D534 FF 20 B8 90 */ fmr f25, f23 -/* 801805D8 0017D538 C3 42 A2 A8 */ lfs f26, lbl_805ABFC8@sda21(r2) -/* 801805DC 0017D53C FF 00 98 90 */ fmr f24, f19 -/* 801805E0 0017D540 48 00 01 10 */ b lbl_801806F0 -/* 801805E4 0017D544 FF 20 98 90 */ fmr f25, f19 -/* 801805E8 0017D548 C3 42 A2 A8 */ lfs f26, lbl_805ABFC8@sda21(r2) -/* 801805EC 0017D54C FF 00 B8 90 */ fmr f24, f23 -/* 801805F0 0017D550 48 00 01 00 */ b lbl_801806F0 -/* 801805F4 0017D554 FF 40 98 90 */ fmr f26, f19 -/* 801805F8 0017D558 C3 22 A2 A8 */ lfs f25, lbl_805ABFC8@sda21(r2) -/* 801805FC 0017D55C FF 00 98 90 */ fmr f24, f19 -/* 80180600 0017D560 48 00 00 F0 */ b lbl_801806F0 -/* 80180604 0017D564 FF 40 B8 90 */ fmr f26, f23 -/* 80180608 0017D568 C3 22 A2 A8 */ lfs f25, lbl_805ABFC8@sda21(r2) -/* 8018060C 0017D56C FF 00 B8 90 */ fmr f24, f23 -/* 80180610 0017D570 48 00 00 E0 */ b lbl_801806F0 -/* 80180614 0017D574 FF 40 B8 90 */ fmr f26, f23 -/* 80180618 0017D578 C3 22 A2 A8 */ lfs f25, lbl_805ABFC8@sda21(r2) -/* 8018061C 0017D57C FF 00 98 90 */ fmr f24, f19 -/* 80180620 0017D580 48 00 00 D0 */ b lbl_801806F0 -/* 80180624 0017D584 FF 40 98 90 */ fmr f26, f19 -/* 80180628 0017D588 C3 22 A2 A8 */ lfs f25, lbl_805ABFC8@sda21(r2) -/* 8018062C 0017D58C FF 00 B8 90 */ fmr f24, f23 -/* 80180630 0017D590 48 00 00 C0 */ b lbl_801806F0 -/* 80180634 0017D594 FF 40 98 90 */ fmr f26, f19 -/* 80180638 0017D598 C3 02 A2 A8 */ lfs f24, lbl_805ABFC8@sda21(r2) -/* 8018063C 0017D59C FF 20 98 90 */ fmr f25, f19 -/* 80180640 0017D5A0 48 00 00 B0 */ b lbl_801806F0 -/* 80180644 0017D5A4 FF 40 B8 90 */ fmr f26, f23 -/* 80180648 0017D5A8 C3 02 A2 A8 */ lfs f24, lbl_805ABFC8@sda21(r2) -/* 8018064C 0017D5AC FF 20 B8 90 */ fmr f25, f23 -/* 80180650 0017D5B0 48 00 00 A0 */ b lbl_801806F0 -/* 80180654 0017D5B4 FF 40 B8 90 */ fmr f26, f23 -/* 80180658 0017D5B8 C3 02 A2 A8 */ lfs f24, lbl_805ABFC8@sda21(r2) -/* 8018065C 0017D5BC FF 20 98 90 */ fmr f25, f19 -/* 80180660 0017D5C0 48 00 00 90 */ b lbl_801806F0 -/* 80180664 0017D5C4 FF 40 98 90 */ fmr f26, f19 -/* 80180668 0017D5C8 C3 02 A2 A8 */ lfs f24, lbl_805ABFC8@sda21(r2) -/* 8018066C 0017D5CC FF 20 B8 90 */ fmr f25, f23 -/* 80180670 0017D5D0 48 00 00 80 */ b lbl_801806F0 -/* 80180674 0017D5D4 FF 40 98 90 */ fmr f26, f19 -/* 80180678 0017D5D8 FF 20 98 90 */ fmr f25, f19 -/* 8018067C 0017D5DC FF 00 98 90 */ fmr f24, f19 -/* 80180680 0017D5E0 48 00 00 70 */ b lbl_801806F0 -/* 80180684 0017D5E4 FF 40 B8 90 */ fmr f26, f23 -/* 80180688 0017D5E8 FF 20 98 90 */ fmr f25, f19 -/* 8018068C 0017D5EC FF 00 98 90 */ fmr f24, f19 -/* 80180690 0017D5F0 48 00 00 60 */ b lbl_801806F0 -/* 80180694 0017D5F4 FF 40 98 90 */ fmr f26, f19 -/* 80180698 0017D5F8 FF 20 B8 90 */ fmr f25, f23 -/* 8018069C 0017D5FC FF 00 98 90 */ fmr f24, f19 -/* 801806A0 0017D600 48 00 00 50 */ b lbl_801806F0 -/* 801806A4 0017D604 FF 40 B8 90 */ fmr f26, f23 -/* 801806A8 0017D608 FF 20 B8 90 */ fmr f25, f23 -/* 801806AC 0017D60C FF 00 98 90 */ fmr f24, f19 -/* 801806B0 0017D610 48 00 00 40 */ b lbl_801806F0 -/* 801806B4 0017D614 FF 40 98 90 */ fmr f26, f19 -/* 801806B8 0017D618 FF 20 98 90 */ fmr f25, f19 -/* 801806BC 0017D61C FF 00 B8 90 */ fmr f24, f23 -/* 801806C0 0017D620 48 00 00 30 */ b lbl_801806F0 -/* 801806C4 0017D624 FF 40 B8 90 */ fmr f26, f23 -/* 801806C8 0017D628 FF 20 98 90 */ fmr f25, f19 -/* 801806CC 0017D62C FF 00 B8 90 */ fmr f24, f23 -/* 801806D0 0017D630 48 00 00 20 */ b lbl_801806F0 -/* 801806D4 0017D634 FF 40 98 90 */ fmr f26, f19 -/* 801806D8 0017D638 FF 20 B8 90 */ fmr f25, f23 -/* 801806DC 0017D63C FF 00 B8 90 */ fmr f24, f23 -/* 801806E0 0017D640 48 00 00 10 */ b lbl_801806F0 -/* 801806E4 0017D644 FF 40 B8 90 */ fmr f26, f23 -/* 801806E8 0017D648 FF 20 B8 90 */ fmr f25, f23 -/* 801806EC 0017D64C FF 00 B8 90 */ fmr f24, f23 -lbl_801806F0: -/* 801806F0 0017D650 EE DD D0 2A */ fadds f22, f29, f26 -/* 801806F4 0017D654 80 D7 08 CC */ lwz r6, 0x8cc(r23) -/* 801806F8 0017D658 EE BC C8 2A */ fadds f21, f28, f25 -/* 801806FC 0017D65C 80 B7 08 50 */ lwz r5, 0x850(r23) -/* 80180700 0017D660 EE 9B C0 2A */ fadds f20, f27, f24 -/* 80180704 0017D664 54 C3 18 38 */ slwi r3, r6, 3 -/* 80180708 0017D668 D2 C1 00 1C */ stfs f22, 0x1c(r1) -/* 8018070C 0017D66C 38 03 00 04 */ addi r0, r3, 4 -/* 80180710 0017D670 38 81 00 1C */ addi r4, r1, 0x1c -/* 80180714 0017D674 D2 A1 00 20 */ stfs f21, 0x20(r1) -/* 80180718 0017D678 D2 81 00 24 */ stfs f20, 0x24(r1) -/* 8018071C 0017D67C 80 65 00 20 */ lwz r3, 0x20(r5) -/* 80180720 0017D680 90 C1 00 08 */ stw r6, 8(r1) -/* 80180724 0017D684 7C 63 00 2E */ lwzx r3, r3, r0 -/* 80180728 0017D688 90 C1 00 0C */ stw r6, 0xc(r1) -/* 8018072C 0017D68C 38 63 00 6C */ addi r3, r3, 0x6c -/* 80180730 0017D690 48 1B 6E 05 */ bl PointInside__6CAABoxCFRC9CVector3f -/* 80180734 0017D694 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80180738 0017D698 41 82 00 A8 */ beq lbl_801807E0 -/* 8018073C 0017D69C C0 41 00 38 */ lfs f2, 0x38(r1) -/* 80180740 0017D6A0 3C 60 80 5A */ lis r3, lbl_8059FD18@ha -/* 80180744 0017D6A4 C0 21 00 3C */ lfs f1, 0x3c(r1) -/* 80180748 0017D6A8 38 E3 FD 18 */ addi r7, r3, lbl_8059FD18@l -/* 8018074C 0017D6AC C0 01 00 34 */ lfs f0, 0x34(r1) -/* 80180750 0017D6B0 EC 42 C8 2A */ fadds f2, f2, f25 -/* 80180754 0017D6B4 EC 21 C0 2A */ fadds f1, f1, f24 -/* 80180758 0017D6B8 7E E3 BB 78 */ mr r3, r23 -/* 8018075C 0017D6BC EC 00 D0 2A */ fadds f0, f0, f26 -/* 80180760 0017D6C0 7F 66 DB 78 */ mr r6, r27 -/* 80180764 0017D6C4 D0 41 00 14 */ stfs f2, 0x14(r1) -/* 80180768 0017D6C8 7F 28 CB 78 */ mr r8, r25 -/* 8018076C 0017D6CC D0 01 00 10 */ stfs f0, 0x10(r1) -/* 80180770 0017D6D0 38 81 00 34 */ addi r4, r1, 0x34 -/* 80180774 0017D6D4 38 A1 00 10 */ addi r5, r1, 0x10 -/* 80180778 0017D6D8 D0 21 00 18 */ stfs f1, 0x18(r1) -/* 8018077C 0017D6DC 4B EC C7 F1 */ bl "RayCollideWorld__13CStateManagerRC9CVector3fRC9CVector3fRCQ24rstl49reserved_vector<9TUniqueId,1024>RC15CMaterialFilterPC6CActor" -/* 80180780 0017D6E0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80180784 0017D6E4 41 82 00 5C */ beq lbl_801807E0 -/* 80180788 0017D6E8 D2 C1 00 94 */ stfs f22, 0x94(r1) -/* 8018078C 0017D6EC 7F 23 CB 78 */ mr r3, r25 -/* 80180790 0017D6F0 D2 A1 00 A4 */ stfs f21, 0xa4(r1) -/* 80180794 0017D6F4 D2 81 00 B4 */ stfs f20, 0xb4(r1) -/* 80180798 0017D6F8 4B ED 31 25 */ bl GetMaterialFilter__6CActorCFv -/* 8018079C 0017D6FC 7C 67 1B 78 */ mr r7, r3 -/* 801807A0 0017D700 7E E3 BB 78 */ mr r3, r23 -/* 801807A4 0017D704 7F 04 C3 78 */ mr r4, r24 -/* 801807A8 0017D708 7F 45 D3 78 */ mr r5, r26 -/* 801807AC 0017D70C 7F 68 DB 78 */ mr r8, r27 -/* 801807B0 0017D710 38 C1 00 88 */ addi r6, r1, 0x88 -/* 801807B4 0017D714 48 00 3D B1 */ bl "DetectCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 801807B8 0017D718 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801807BC 0017D71C 40 82 00 24 */ bne lbl_801807E0 -/* 801807C0 0017D720 38 00 00 01 */ li r0, 1 -/* 801807C4 0017D724 28 16 00 00 */ cmplwi r22, 0 -/* 801807C8 0017D728 98 16 00 0C */ stb r0, 0xc(r22) -/* 801807CC 0017D72C 41 82 00 44 */ beq lbl_80180810 -/* 801807D0 0017D730 D3 56 00 00 */ stfs f26, 0(r22) -/* 801807D4 0017D734 D3 36 00 04 */ stfs f25, 4(r22) -/* 801807D8 0017D738 D3 16 00 08 */ stfs f24, 8(r22) -/* 801807DC 0017D73C 48 00 00 34 */ b lbl_80180810 -lbl_801807E0: -/* 801807E0 0017D740 3B 9C 00 01 */ addi r28, r28, 1 -/* 801807E4 0017D744 3A B5 00 04 */ addi r21, r21, 4 -/* 801807E8 0017D748 2C 1C 00 1A */ cmpwi r28, 0x1a -/* 801807EC 0017D74C 41 80 FD 40 */ blt lbl_8018052C -/* 801807F0 0017D750 57 A0 0F FE */ srwi r0, r29, 0x1f -/* 801807F4 0017D754 7C 00 EA 14 */ add r0, r0, r29 -/* 801807F8 0017D758 7C 00 0E 70 */ srawi r0, r0, 1 -/* 801807FC 0017D75C 7F BD 02 14 */ add r29, r29, r0 -lbl_80180800: -/* 80180800 0017D760 2C 1D 03 E8 */ cmpwi r29, 0x3e8 -/* 80180804 0017D764 41 80 FD 04 */ blt lbl_80180508 -/* 80180808 0017D768 38 00 00 00 */ li r0, 0 -/* 8018080C 0017D76C 98 16 00 0C */ stb r0, 0xc(r22) -lbl_80180810: -/* 80180810 0017D770 E3 E1 01 B8 */ psq_l f31, 440(r1), 0, qr0 -/* 80180814 0017D774 CB E1 01 B0 */ lfd f31, 0x1b0(r1) -/* 80180818 0017D778 E3 C1 01 A8 */ psq_l f30, 424(r1), 0, qr0 -/* 8018081C 0017D77C CB C1 01 A0 */ lfd f30, 0x1a0(r1) -/* 80180820 0017D780 E3 A1 01 98 */ psq_l f29, 408(r1), 0, qr0 -/* 80180824 0017D784 CB A1 01 90 */ lfd f29, 0x190(r1) -/* 80180828 0017D788 E3 81 01 88 */ psq_l f28, 392(r1), 0, qr0 -/* 8018082C 0017D78C CB 81 01 80 */ lfd f28, 0x180(r1) -/* 80180830 0017D790 E3 61 01 78 */ psq_l f27, 376(r1), 0, qr0 -/* 80180834 0017D794 CB 61 01 70 */ lfd f27, 0x170(r1) -/* 80180838 0017D798 E3 41 01 68 */ psq_l f26, 360(r1), 0, qr0 -/* 8018083C 0017D79C CB 41 01 60 */ lfd f26, 0x160(r1) -/* 80180840 0017D7A0 E3 21 01 58 */ psq_l f25, 344(r1), 0, qr0 -/* 80180844 0017D7A4 CB 21 01 50 */ lfd f25, 0x150(r1) -/* 80180848 0017D7A8 E3 01 01 48 */ psq_l f24, 328(r1), 0, qr0 -/* 8018084C 0017D7AC CB 01 01 40 */ lfd f24, 0x140(r1) -/* 80180850 0017D7B0 E2 E1 01 38 */ psq_l f23, 312(r1), 0, qr0 -/* 80180854 0017D7B4 CA E1 01 30 */ lfd f23, 0x130(r1) -/* 80180858 0017D7B8 E2 C1 01 28 */ psq_l f22, 296(r1), 0, qr0 -/* 8018085C 0017D7BC CA C1 01 20 */ lfd f22, 0x120(r1) -/* 80180860 0017D7C0 E2 A1 01 18 */ psq_l f21, 280(r1), 0, qr0 -/* 80180864 0017D7C4 CA A1 01 10 */ lfd f21, 0x110(r1) -/* 80180868 0017D7C8 E2 81 01 08 */ psq_l f20, 264(r1), 0, qr0 -/* 8018086C 0017D7CC CA 81 01 00 */ lfd f20, 0x100(r1) -/* 80180870 0017D7D0 E2 61 00 F8 */ psq_l f19, 248(r1), 0, qr0 -/* 80180874 0017D7D4 CA 61 00 F0 */ lfd f19, 0xf0(r1) -/* 80180878 0017D7D8 BA A1 00 C4 */ lmw r21, 0xc4(r1) -/* 8018087C 0017D7DC 80 01 01 C4 */ lwz r0, 0x1c4(r1) -/* 80180880 0017D7E0 7C 08 03 A6 */ mtlr r0 -/* 80180884 0017D7E4 38 21 01 C0 */ addi r1, r1, 0x1c0 -/* 80180888 0017D7E8 4E 80 00 20 */ blr - -.global "CollisionFailsafe__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheR13CPhysicsActorRC19CCollisionPrimitiveRCQ24rstl32reserved_vector<9TUniqueId,1024>fUi" -"CollisionFailsafe__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheR13CPhysicsActorRC19CCollisionPrimitiveRCQ24rstl32reserved_vector<9TUniqueId,1024>fUi": -/* 8018088C 0017D7EC 94 21 FD 50 */ stwu r1, -0x2b0(r1) -/* 80180890 0017D7F0 7C 08 02 A6 */ mflr r0 -/* 80180894 0017D7F4 90 01 02 B4 */ stw r0, 0x2b4(r1) -/* 80180898 0017D7F8 DB E1 02 A0 */ stfd f31, 0x2a0(r1) -/* 8018089C 0017D7FC F3 E1 02 A8 */ psq_st f31, 680(r1), 0, qr0 -/* 801808A0 0017D800 BF 21 02 84 */ stmw r25, 0x284(r1) -/* 801808A4 0017D804 3D 20 80 5A */ lis r9, skZero3f@ha -/* 801808A8 0017D808 FF E0 08 90 */ fmr f31, f1 -/* 801808AC 0017D80C 7C BD 2B 78 */ mr r29, r5 -/* 801808B0 0017D810 7C 7B 1B 78 */ mr r27, r3 -/* 801808B4 0017D814 38 09 66 A0 */ addi r0, r9, skZero3f@l -/* 801808B8 0017D818 7C 9C 23 78 */ mr r28, r4 -/* 801808BC 0017D81C 7C DE 33 78 */ mr r30, r6 -/* 801808C0 0017D820 7C FF 3B 78 */ mr r31, r7 -/* 801808C4 0017D824 7D 19 43 78 */ mr r25, r8 -/* 801808C8 0017D828 7F A3 EB 78 */ mr r3, r29 -/* 801808CC 0017D82C 7C 04 03 78 */ mr r4, r0 -/* 801808D0 0017D830 4B F9 A1 69 */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f -/* 801808D4 0017D834 C0 02 A2 C4 */ lfs f0, lbl_805ABFE4@sda21(r2) -/* 801808D8 0017D838 FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 801808DC 0017D83C 40 81 00 10 */ ble lbl_801808EC -/* 801808E0 0017D840 80 7D 02 50 */ lwz r3, 0x250(r29) -/* 801808E4 0017D844 38 03 00 01 */ addi r0, r3, 1 -/* 801808E8 0017D848 90 1D 02 50 */ stw r0, 0x250(r29) -lbl_801808EC: -/* 801808EC 0017D84C 80 1D 02 50 */ lwz r0, 0x250(r29) -/* 801808F0 0017D850 28 00 00 01 */ cmplwi r0, 1 -/* 801808F4 0017D854 41 81 00 4C */ bgt lbl_80180940 -/* 801808F8 0017D858 7F A3 EB 78 */ mr r3, r29 -/* 801808FC 0017D85C 4B ED 2F C1 */ bl GetMaterialFilter__6CActorCFv -/* 80180900 0017D860 7F A4 EB 78 */ mr r4, r29 -/* 80180904 0017D864 7C 7A 1B 78 */ mr r26, r3 -/* 80180908 0017D868 81 9D 00 00 */ lwz r12, 0(r29) -/* 8018090C 0017D86C 38 61 02 50 */ addi r3, r1, 0x250 -/* 80180910 0017D870 81 8C 00 70 */ lwz r12, 0x70(r12) -/* 80180914 0017D874 7D 89 03 A6 */ mtctr r12 -/* 80180918 0017D878 4E 80 04 21 */ bctrl -/* 8018091C 0017D87C 7F 63 DB 78 */ mr r3, r27 -/* 80180920 0017D880 7F 84 E3 78 */ mr r4, r28 -/* 80180924 0017D884 7F C5 F3 78 */ mr r5, r30 -/* 80180928 0017D888 7F 47 D3 78 */ mr r7, r26 -/* 8018092C 0017D88C 7F E8 FB 78 */ mr r8, r31 -/* 80180930 0017D890 38 C1 02 50 */ addi r6, r1, 0x250 -/* 80180934 0017D894 48 00 3C 31 */ bl "DetectCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 80180938 0017D898 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8018093C 0017D89C 41 82 05 20 */ beq lbl_80180E5C -lbl_80180940: -/* 80180940 0017D8A0 38 00 00 00 */ li r0, 0 -/* 80180944 0017D8A4 90 1D 02 50 */ stw r0, 0x250(r29) -/* 80180948 0017D8A8 80 7D 02 4C */ lwz r3, 0x24c(r29) -/* 8018094C 0017D8AC 38 03 00 01 */ addi r0, r3, 1 -/* 80180950 0017D8B0 90 1D 02 4C */ stw r0, 0x24c(r29) -/* 80180954 0017D8B4 80 1D 02 4C */ lwz r0, 0x24c(r29) -/* 80180958 0017D8B8 7C 00 C8 40 */ cmplw r0, r25 -/* 8018095C 0017D8BC 41 80 05 7C */ blt lbl_80180ED8 -/* 80180960 0017D8C0 7F A4 EB 78 */ mr r4, r29 -/* 80180964 0017D8C4 38 61 02 1C */ addi r3, r1, 0x21c -/* 80180968 0017D8C8 4B F9 AD 0D */ bl GetMotionState__13CPhysicsActorCFv -/* 8018096C 0017D8CC C1 9D 01 F4 */ lfs f12, 0x1f4(r29) -/* 80180970 0017D8D0 7F A3 EB 78 */ mr r3, r29 -/* 80180974 0017D8D4 38 81 01 B4 */ addi r4, r1, 0x1b4 -/* 80180978 0017D8D8 D1 81 01 E8 */ stfs f12, 0x1e8(r1) -/* 8018097C 0017D8DC C1 7D 01 F8 */ lfs f11, 0x1f8(r29) -/* 80180980 0017D8E0 D1 61 01 EC */ stfs f11, 0x1ec(r1) -/* 80180984 0017D8E4 C1 5D 01 FC */ lfs f10, 0x1fc(r29) -/* 80180988 0017D8E8 D1 41 01 F0 */ stfs f10, 0x1f0(r1) -/* 8018098C 0017D8EC C1 3D 02 00 */ lfs f9, 0x200(r29) -/* 80180990 0017D8F0 D1 21 01 F4 */ stfs f9, 0x1f4(r1) -/* 80180994 0017D8F4 C1 1D 02 04 */ lfs f8, 0x204(r29) -/* 80180998 0017D8F8 D1 01 01 F8 */ stfs f8, 0x1f8(r1) -/* 8018099C 0017D8FC C0 FD 02 08 */ lfs f7, 0x208(r29) -/* 801809A0 0017D900 D0 E1 01 FC */ stfs f7, 0x1fc(r1) -/* 801809A4 0017D904 C0 DD 02 0C */ lfs f6, 0x20c(r29) -/* 801809A8 0017D908 D0 C1 02 00 */ stfs f6, 0x200(r1) -/* 801809AC 0017D90C C0 BD 02 10 */ lfs f5, 0x210(r29) -/* 801809B0 0017D910 D0 A1 02 04 */ stfs f5, 0x204(r1) -/* 801809B4 0017D914 C0 9D 02 14 */ lfs f4, 0x214(r29) -/* 801809B8 0017D918 D0 81 02 08 */ stfs f4, 0x208(r1) -/* 801809BC 0017D91C C0 7D 02 18 */ lfs f3, 0x218(r29) -/* 801809C0 0017D920 D0 61 02 0C */ stfs f3, 0x20c(r1) -/* 801809C4 0017D924 C0 5D 02 1C */ lfs f2, 0x21c(r29) -/* 801809C8 0017D928 D0 41 02 10 */ stfs f2, 0x210(r1) -/* 801809CC 0017D92C C0 3D 02 20 */ lfs f1, 0x220(r29) -/* 801809D0 0017D930 D0 21 02 14 */ stfs f1, 0x214(r1) -/* 801809D4 0017D934 C0 1D 02 24 */ lfs f0, 0x224(r29) -/* 801809D8 0017D938 D0 01 02 18 */ stfs f0, 0x218(r1) -/* 801809DC 0017D93C D1 81 01 B4 */ stfs f12, 0x1b4(r1) -/* 801809E0 0017D940 D1 61 01 B8 */ stfs f11, 0x1b8(r1) -/* 801809E4 0017D944 D1 41 01 BC */ stfs f10, 0x1bc(r1) -/* 801809E8 0017D948 D1 21 01 C0 */ stfs f9, 0x1c0(r1) -/* 801809EC 0017D94C D1 01 01 C4 */ stfs f8, 0x1c4(r1) -/* 801809F0 0017D950 D0 E1 01 C8 */ stfs f7, 0x1c8(r1) -/* 801809F4 0017D954 D0 C1 01 CC */ stfs f6, 0x1cc(r1) -/* 801809F8 0017D958 D0 A1 01 D0 */ stfs f5, 0x1d0(r1) -/* 801809FC 0017D95C D0 81 01 D4 */ stfs f4, 0x1d4(r1) -/* 80180A00 0017D960 D0 61 01 D8 */ stfs f3, 0x1d8(r1) -/* 80180A04 0017D964 D0 41 01 DC */ stfs f2, 0x1dc(r1) -/* 80180A08 0017D968 D0 21 01 E0 */ stfs f1, 0x1e0(r1) -/* 80180A0C 0017D96C D0 01 01 E4 */ stfs f0, 0x1e4(r1) -/* 80180A10 0017D970 4B F9 AD 19 */ bl SetMotionState__13CPhysicsActorFRC12CMotionState -/* 80180A14 0017D974 7F A3 EB 78 */ mr r3, r29 -/* 80180A18 0017D978 4B ED 2E A5 */ bl GetMaterialFilter__6CActorCFv -/* 80180A1C 0017D97C 7F A4 EB 78 */ mr r4, r29 -/* 80180A20 0017D980 7C 7A 1B 78 */ mr r26, r3 -/* 80180A24 0017D984 81 9D 00 00 */ lwz r12, 0(r29) -/* 80180A28 0017D988 38 61 01 84 */ addi r3, r1, 0x184 -/* 80180A2C 0017D98C 81 8C 00 70 */ lwz r12, 0x70(r12) -/* 80180A30 0017D990 7D 89 03 A6 */ mtctr r12 -/* 80180A34 0017D994 4E 80 04 21 */ bctrl -/* 80180A38 0017D998 7F 63 DB 78 */ mr r3, r27 -/* 80180A3C 0017D99C 7F 84 E3 78 */ mr r4, r28 -/* 80180A40 0017D9A0 7F C5 F3 78 */ mr r5, r30 -/* 80180A44 0017D9A4 7F 47 D3 78 */ mr r7, r26 -/* 80180A48 0017D9A8 7F E8 FB 78 */ mr r8, r31 -/* 80180A4C 0017D9AC 38 C1 01 84 */ addi r6, r1, 0x184 -/* 80180A50 0017D9B0 48 00 3B 15 */ bl "DetectCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 80180A54 0017D9B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80180A58 0017D9B8 40 82 01 0C */ bne lbl_80180B64 -/* 80180A5C 0017D9BC 38 61 00 30 */ addi r3, r1, 0x30 -/* 80180A60 0017D9C0 38 81 02 10 */ addi r4, r1, 0x210 -/* 80180A64 0017D9C4 38 AD 8E 8C */ addi r5, r13, lbl_805A7A4C@sda21 -/* 80180A68 0017D9C8 4B E9 AA 1D */ bl __ml__FRC10CAxisAngleRCf -/* 80180A6C 0017D9CC C0 21 01 E8 */ lfs f1, 0x1e8(r1) -/* 80180A70 0017D9D0 38 00 00 00 */ li r0, 0 -/* 80180A74 0017D9D4 C0 01 01 EC */ lfs f0, 0x1ec(r1) -/* 80180A78 0017D9D8 D0 21 01 50 */ stfs f1, 0x150(r1) -/* 80180A7C 0017D9DC C0 E1 01 F0 */ lfs f7, 0x1f0(r1) -/* 80180A80 0017D9E0 D0 01 01 54 */ stfs f0, 0x154(r1) -/* 80180A84 0017D9E4 C0 C1 01 F4 */ lfs f6, 0x1f4(r1) -/* 80180A88 0017D9E8 C0 A1 01 F8 */ lfs f5, 0x1f8(r1) -/* 80180A8C 0017D9EC C0 81 01 FC */ lfs f4, 0x1fc(r1) -/* 80180A90 0017D9F0 C0 61 02 00 */ lfs f3, 0x200(r1) -/* 80180A94 0017D9F4 C0 41 00 30 */ lfs f2, 0x30(r1) -/* 80180A98 0017D9F8 C0 21 00 34 */ lfs f1, 0x34(r1) -/* 80180A9C 0017D9FC C0 01 00 38 */ lfs f0, 0x38(r1) -/* 80180AA0 0017DA00 D0 E1 01 58 */ stfs f7, 0x158(r1) -/* 80180AA4 0017DA04 C1 01 02 04 */ lfs f8, 0x204(r1) -/* 80180AA8 0017DA08 D0 C1 01 5C */ stfs f6, 0x15c(r1) -/* 80180AAC 0017DA0C C1 22 A2 C4 */ lfs f9, lbl_805ABFE4@sda21(r2) -/* 80180AB0 0017DA10 C0 E1 02 08 */ lfs f7, 0x208(r1) -/* 80180AB4 0017DA14 C0 C1 02 0C */ lfs f6, 0x20c(r1) -/* 80180AB8 0017DA18 ED 09 02 32 */ fmuls f8, f9, f8 -/* 80180ABC 0017DA1C 80 61 01 50 */ lwz r3, 0x150(r1) -/* 80180AC0 0017DA20 EC E9 01 F2 */ fmuls f7, f9, f7 -/* 80180AC4 0017DA24 D0 A1 01 60 */ stfs f5, 0x160(r1) -/* 80180AC8 0017DA28 EC A9 01 B2 */ fmuls f5, f9, f6 -/* 80180ACC 0017DA2C 80 81 01 54 */ lwz r4, 0x154(r1) -/* 80180AD0 0017DA30 90 7D 01 F4 */ stw r3, 0x1f4(r29) -/* 80180AD4 0017DA34 80 61 01 58 */ lwz r3, 0x158(r1) -/* 80180AD8 0017DA38 90 9D 01 F8 */ stw r4, 0x1f8(r29) -/* 80180ADC 0017DA3C 80 81 01 5C */ lwz r4, 0x15c(r1) -/* 80180AE0 0017DA40 90 7D 01 FC */ stw r3, 0x1fc(r29) -/* 80180AE4 0017DA44 80 61 01 60 */ lwz r3, 0x160(r1) -/* 80180AE8 0017DA48 D0 81 01 64 */ stfs f4, 0x164(r1) -/* 80180AEC 0017DA4C 90 9D 02 00 */ stw r4, 0x200(r29) -/* 80180AF0 0017DA50 80 81 01 64 */ lwz r4, 0x164(r1) -/* 80180AF4 0017DA54 D0 61 01 68 */ stfs f3, 0x168(r1) -/* 80180AF8 0017DA58 90 7D 02 04 */ stw r3, 0x204(r29) -/* 80180AFC 0017DA5C 80 61 01 68 */ lwz r3, 0x168(r1) -/* 80180B00 0017DA60 D1 01 01 6C */ stfs f8, 0x16c(r1) -/* 80180B04 0017DA64 90 9D 02 08 */ stw r4, 0x208(r29) -/* 80180B08 0017DA68 80 81 01 6C */ lwz r4, 0x16c(r1) -/* 80180B0C 0017DA6C D0 E1 01 70 */ stfs f7, 0x170(r1) -/* 80180B10 0017DA70 90 7D 02 0C */ stw r3, 0x20c(r29) -/* 80180B14 0017DA74 80 61 01 70 */ lwz r3, 0x170(r1) -/* 80180B18 0017DA78 D0 A1 01 74 */ stfs f5, 0x174(r1) -/* 80180B1C 0017DA7C 90 9D 02 10 */ stw r4, 0x210(r29) -/* 80180B20 0017DA80 80 81 01 74 */ lwz r4, 0x174(r1) -/* 80180B24 0017DA84 D0 41 01 78 */ stfs f2, 0x178(r1) -/* 80180B28 0017DA88 90 7D 02 14 */ stw r3, 0x214(r29) -/* 80180B2C 0017DA8C 80 61 01 78 */ lwz r3, 0x178(r1) -/* 80180B30 0017DA90 D0 21 01 7C */ stfs f1, 0x17c(r1) -/* 80180B34 0017DA94 90 9D 02 18 */ stw r4, 0x218(r29) -/* 80180B38 0017DA98 80 81 01 7C */ lwz r4, 0x17c(r1) -/* 80180B3C 0017DA9C D0 01 01 80 */ stfs f0, 0x180(r1) -/* 80180B40 0017DAA0 90 7D 02 1C */ stw r3, 0x21c(r29) -/* 80180B44 0017DAA4 80 61 01 80 */ lwz r3, 0x180(r1) -/* 80180B48 0017DAA8 90 9D 02 20 */ stw r4, 0x220(r29) -/* 80180B4C 0017DAAC 90 7D 02 24 */ stw r3, 0x224(r29) -/* 80180B50 0017DAB0 80 6D A4 60 */ lwz r3, lbl_805A9020@sda21(r13) -/* 80180B54 0017DAB4 38 63 00 01 */ addi r3, r3, 1 -/* 80180B58 0017DAB8 90 6D A4 60 */ stw r3, lbl_805A9020@sda21(r13) -/* 80180B5C 0017DABC 90 1D 02 4C */ stw r0, 0x24c(r29) -/* 80180B60 0017DAC0 48 00 03 78 */ b lbl_80180ED8 -lbl_80180B64: -/* 80180B64 0017DAC4 C1 81 02 1C */ lfs f12, 0x21c(r1) -/* 80180B68 0017DAC8 7F A3 EB 78 */ mr r3, r29 -/* 80180B6C 0017DACC C1 61 02 20 */ lfs f11, 0x220(r1) -/* 80180B70 0017DAD0 38 81 01 1C */ addi r4, r1, 0x11c -/* 80180B74 0017DAD4 C1 41 02 24 */ lfs f10, 0x224(r1) -/* 80180B78 0017DAD8 C1 21 02 28 */ lfs f9, 0x228(r1) -/* 80180B7C 0017DADC C1 01 02 2C */ lfs f8, 0x22c(r1) -/* 80180B80 0017DAE0 C0 E1 02 30 */ lfs f7, 0x230(r1) -/* 80180B84 0017DAE4 C0 C1 02 34 */ lfs f6, 0x234(r1) -/* 80180B88 0017DAE8 C0 A1 02 38 */ lfs f5, 0x238(r1) -/* 80180B8C 0017DAEC C0 81 02 3C */ lfs f4, 0x23c(r1) -/* 80180B90 0017DAF0 C0 61 02 40 */ lfs f3, 0x240(r1) -/* 80180B94 0017DAF4 C0 41 02 44 */ lfs f2, 0x244(r1) -/* 80180B98 0017DAF8 C0 21 02 48 */ lfs f1, 0x248(r1) -/* 80180B9C 0017DAFC C0 01 02 4C */ lfs f0, 0x24c(r1) -/* 80180BA0 0017DB00 D1 81 01 1C */ stfs f12, 0x11c(r1) -/* 80180BA4 0017DB04 D1 61 01 20 */ stfs f11, 0x120(r1) -/* 80180BA8 0017DB08 D1 41 01 24 */ stfs f10, 0x124(r1) -/* 80180BAC 0017DB0C D1 21 01 28 */ stfs f9, 0x128(r1) -/* 80180BB0 0017DB10 D1 01 01 2C */ stfs f8, 0x12c(r1) -/* 80180BB4 0017DB14 D0 E1 01 30 */ stfs f7, 0x130(r1) -/* 80180BB8 0017DB18 D0 C1 01 34 */ stfs f6, 0x134(r1) -/* 80180BBC 0017DB1C D0 A1 01 38 */ stfs f5, 0x138(r1) -/* 80180BC0 0017DB20 D0 81 01 3C */ stfs f4, 0x13c(r1) -/* 80180BC4 0017DB24 D0 61 01 40 */ stfs f3, 0x140(r1) -/* 80180BC8 0017DB28 D0 41 01 44 */ stfs f2, 0x144(r1) -/* 80180BCC 0017DB2C D0 21 01 48 */ stfs f1, 0x148(r1) -/* 80180BD0 0017DB30 D0 01 01 4C */ stfs f0, 0x14c(r1) -/* 80180BD4 0017DB34 4B F9 AB 55 */ bl SetMotionState__13CPhysicsActorFRC12CMotionState -/* 80180BD8 0017DB38 7F 64 DB 78 */ mr r4, r27 -/* 80180BDC 0017DB3C 7F 85 E3 78 */ mr r5, r28 -/* 80180BE0 0017DB40 7F A6 EB 78 */ mr r6, r29 -/* 80180BE4 0017DB44 7F C7 F3 78 */ mr r7, r30 -/* 80180BE8 0017DB48 7F E8 FB 78 */ mr r8, r31 -/* 80180BEC 0017DB4C 38 61 00 20 */ addi r3, r1, 0x20 -/* 80180BF0 0017DB50 4B FF F7 FD */ bl "FindNonIntersectingVector__14CGameCollisionFR13CStateManagerRC19CAreaCollisionCacheRC13CPhysicsActorRC19CCollisionPrimitiveRCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 80180BF4 0017DB54 88 01 00 2C */ lbz r0, 0x2c(r1) -/* 80180BF8 0017DB58 28 00 00 00 */ cmplwi r0, 0 -/* 80180BFC 0017DB5C 98 01 00 48 */ stb r0, 0x48(r1) -/* 80180C00 0017DB60 41 82 00 24 */ beq lbl_80180C24 -/* 80180C04 0017DB64 34 61 00 3C */ addic. r3, r1, 0x3c -/* 80180C08 0017DB68 41 82 00 1C */ beq lbl_80180C24 -/* 80180C0C 0017DB6C C0 01 00 20 */ lfs f0, 0x20(r1) -/* 80180C10 0017DB70 D0 03 00 00 */ stfs f0, 0(r3) -/* 80180C14 0017DB74 C0 01 00 24 */ lfs f0, 0x24(r1) -/* 80180C18 0017DB78 D0 03 00 04 */ stfs f0, 4(r3) -/* 80180C1C 0017DB7C C0 01 00 28 */ lfs f0, 0x28(r1) -/* 80180C20 0017DB80 D0 03 00 08 */ stfs f0, 8(r3) -lbl_80180C24: -/* 80180C24 0017DB84 88 01 00 48 */ lbz r0, 0x48(r1) -/* 80180C28 0017DB88 38 60 00 00 */ li r3, 0 -/* 80180C2C 0017DB8C 98 61 00 2C */ stb r3, 0x2c(r1) -/* 80180C30 0017DB90 28 00 00 00 */ cmplwi r0, 0 -/* 80180C34 0017DB94 41 82 01 20 */ beq lbl_80180D54 -/* 80180C38 0017DB98 C0 41 02 20 */ lfs f2, 0x220(r1) -/* 80180C3C 0017DB9C 7F A3 EB 78 */ mr r3, r29 -/* 80180C40 0017DBA0 C0 01 00 40 */ lfs f0, 0x40(r1) -/* 80180C44 0017DBA4 38 81 00 E8 */ addi r4, r1, 0xe8 -/* 80180C48 0017DBA8 C0 21 02 24 */ lfs f1, 0x224(r1) -/* 80180C4C 0017DBAC ED A2 00 2A */ fadds f13, f2, f0 -/* 80180C50 0017DBB0 C0 01 00 44 */ lfs f0, 0x44(r1) -/* 80180C54 0017DBB4 C1 21 02 28 */ lfs f9, 0x228(r1) -/* 80180C58 0017DBB8 ED 81 00 2A */ fadds f12, f1, f0 -/* 80180C5C 0017DBBC C1 01 02 2C */ lfs f8, 0x22c(r1) -/* 80180C60 0017DBC0 C0 E1 02 30 */ lfs f7, 0x230(r1) -/* 80180C64 0017DBC4 C0 C1 02 34 */ lfs f6, 0x234(r1) -/* 80180C68 0017DBC8 C0 A1 02 38 */ lfs f5, 0x238(r1) -/* 80180C6C 0017DBCC C0 81 02 3C */ lfs f4, 0x23c(r1) -/* 80180C70 0017DBD0 C0 61 02 40 */ lfs f3, 0x240(r1) -/* 80180C74 0017DBD4 C0 41 02 44 */ lfs f2, 0x244(r1) -/* 80180C78 0017DBD8 C0 21 02 48 */ lfs f1, 0x248(r1) -/* 80180C7C 0017DBDC C0 01 02 4C */ lfs f0, 0x24c(r1) -/* 80180C80 0017DBE0 C1 61 02 1C */ lfs f11, 0x21c(r1) -/* 80180C84 0017DBE4 C1 41 00 3C */ lfs f10, 0x3c(r1) -/* 80180C88 0017DBE8 D1 A1 00 18 */ stfs f13, 0x18(r1) -/* 80180C8C 0017DBEC ED 4B 50 2A */ fadds f10, f11, f10 -/* 80180C90 0017DBF0 D1 81 00 1C */ stfs f12, 0x1c(r1) -/* 80180C94 0017DBF4 D1 41 00 14 */ stfs f10, 0x14(r1) -/* 80180C98 0017DBF8 D1 41 00 E8 */ stfs f10, 0xe8(r1) -/* 80180C9C 0017DBFC D1 A1 00 EC */ stfs f13, 0xec(r1) -/* 80180CA0 0017DC00 D1 81 00 F0 */ stfs f12, 0xf0(r1) -/* 80180CA4 0017DC04 D1 21 00 F4 */ stfs f9, 0xf4(r1) -/* 80180CA8 0017DC08 D1 01 00 F8 */ stfs f8, 0xf8(r1) -/* 80180CAC 0017DC0C D0 E1 00 FC */ stfs f7, 0xfc(r1) -/* 80180CB0 0017DC10 D0 C1 01 00 */ stfs f6, 0x100(r1) -/* 80180CB4 0017DC14 D0 A1 01 04 */ stfs f5, 0x104(r1) -/* 80180CB8 0017DC18 D0 81 01 08 */ stfs f4, 0x108(r1) -/* 80180CBC 0017DC1C D0 61 01 0C */ stfs f3, 0x10c(r1) -/* 80180CC0 0017DC20 D0 41 01 10 */ stfs f2, 0x110(r1) -/* 80180CC4 0017DC24 D0 21 01 14 */ stfs f1, 0x114(r1) -/* 80180CC8 0017DC28 D0 01 01 18 */ stfs f0, 0x118(r1) -/* 80180CCC 0017DC2C 4B F9 AA 5D */ bl SetMotionState__13CPhysicsActorFRC12CMotionState -/* 80180CD0 0017DC30 7F A4 EB 78 */ mr r4, r29 -/* 80180CD4 0017DC34 38 61 00 B4 */ addi r3, r1, 0xb4 -/* 80180CD8 0017DC38 4B F9 A9 9D */ bl GetMotionState__13CPhysicsActorCFv -/* 80180CDC 0017DC3C 80 61 00 B4 */ lwz r3, 0xb4(r1) -/* 80180CE0 0017DC40 80 01 00 B8 */ lwz r0, 0xb8(r1) -/* 80180CE4 0017DC44 90 7D 01 F4 */ stw r3, 0x1f4(r29) -/* 80180CE8 0017DC48 90 1D 01 F8 */ stw r0, 0x1f8(r29) -/* 80180CEC 0017DC4C 80 01 00 BC */ lwz r0, 0xbc(r1) -/* 80180CF0 0017DC50 90 1D 01 FC */ stw r0, 0x1fc(r29) -/* 80180CF4 0017DC54 80 61 00 C0 */ lwz r3, 0xc0(r1) -/* 80180CF8 0017DC58 80 01 00 C4 */ lwz r0, 0xc4(r1) -/* 80180CFC 0017DC5C 90 7D 02 00 */ stw r3, 0x200(r29) -/* 80180D00 0017DC60 90 1D 02 04 */ stw r0, 0x204(r29) -/* 80180D04 0017DC64 80 61 00 C8 */ lwz r3, 0xc8(r1) -/* 80180D08 0017DC68 80 01 00 CC */ lwz r0, 0xcc(r1) -/* 80180D0C 0017DC6C 90 7D 02 08 */ stw r3, 0x208(r29) -/* 80180D10 0017DC70 90 1D 02 0C */ stw r0, 0x20c(r29) -/* 80180D14 0017DC74 80 61 00 D0 */ lwz r3, 0xd0(r1) -/* 80180D18 0017DC78 80 01 00 D4 */ lwz r0, 0xd4(r1) -/* 80180D1C 0017DC7C 90 7D 02 10 */ stw r3, 0x210(r29) -/* 80180D20 0017DC80 90 1D 02 14 */ stw r0, 0x214(r29) -/* 80180D24 0017DC84 80 01 00 D8 */ lwz r0, 0xd8(r1) -/* 80180D28 0017DC88 90 1D 02 18 */ stw r0, 0x218(r29) -/* 80180D2C 0017DC8C 80 61 00 DC */ lwz r3, 0xdc(r1) -/* 80180D30 0017DC90 80 01 00 E0 */ lwz r0, 0xe0(r1) -/* 80180D34 0017DC94 90 7D 02 1C */ stw r3, 0x21c(r29) -/* 80180D38 0017DC98 90 1D 02 20 */ stw r0, 0x220(r29) -/* 80180D3C 0017DC9C 80 01 00 E4 */ lwz r0, 0xe4(r1) -/* 80180D40 0017DCA0 90 1D 02 24 */ stw r0, 0x224(r29) -/* 80180D44 0017DCA4 80 6D A4 60 */ lwz r3, lbl_805A9020@sda21(r13) -/* 80180D48 0017DCA8 38 03 00 01 */ addi r0, r3, 1 -/* 80180D4C 0017DCAC 90 0D A4 60 */ stw r0, lbl_805A9020@sda21(r13) -/* 80180D50 0017DCB0 48 00 01 00 */ b lbl_80180E50 -lbl_80180D54: -/* 80180D54 0017DCB4 80 CD A4 60 */ lwz r6, lbl_805A9020@sda21(r13) -/* 80180D58 0017DCB8 38 61 00 08 */ addi r3, r1, 8 -/* 80180D5C 0017DCBC 38 81 02 10 */ addi r4, r1, 0x210 -/* 80180D60 0017DCC0 38 AD 8E 90 */ addi r5, r13, lbl_805A7A50@sda21 -/* 80180D64 0017DCC4 38 06 00 01 */ addi r0, r6, 1 -/* 80180D68 0017DCC8 90 0D A4 60 */ stw r0, lbl_805A9020@sda21(r13) -/* 80180D6C 0017DCCC 4B E9 A7 19 */ bl __ml__FRC10CAxisAngleRCf -/* 80180D70 0017DCD0 C0 21 01 E8 */ lfs f1, 0x1e8(r1) -/* 80180D74 0017DCD4 C0 01 01 EC */ lfs f0, 0x1ec(r1) -/* 80180D78 0017DCD8 D0 21 00 80 */ stfs f1, 0x80(r1) -/* 80180D7C 0017DCDC C0 E1 01 F0 */ lfs f7, 0x1f0(r1) -/* 80180D80 0017DCE0 D0 01 00 84 */ stfs f0, 0x84(r1) -/* 80180D84 0017DCE4 C0 C1 01 F4 */ lfs f6, 0x1f4(r1) -/* 80180D88 0017DCE8 C0 A1 01 F8 */ lfs f5, 0x1f8(r1) -/* 80180D8C 0017DCEC C0 81 01 FC */ lfs f4, 0x1fc(r1) -/* 80180D90 0017DCF0 C0 61 02 00 */ lfs f3, 0x200(r1) -/* 80180D94 0017DCF4 C0 41 00 08 */ lfs f2, 8(r1) -/* 80180D98 0017DCF8 C0 21 00 0C */ lfs f1, 0xc(r1) -/* 80180D9C 0017DCFC C0 01 00 10 */ lfs f0, 0x10(r1) -/* 80180DA0 0017DD00 D0 E1 00 88 */ stfs f7, 0x88(r1) -/* 80180DA4 0017DD04 C1 01 02 04 */ lfs f8, 0x204(r1) -/* 80180DA8 0017DD08 D0 C1 00 8C */ stfs f6, 0x8c(r1) -/* 80180DAC 0017DD0C C1 22 A2 C4 */ lfs f9, lbl_805ABFE4@sda21(r2) -/* 80180DB0 0017DD10 C0 E1 02 08 */ lfs f7, 0x208(r1) -/* 80180DB4 0017DD14 C0 C1 02 0C */ lfs f6, 0x20c(r1) -/* 80180DB8 0017DD18 ED 09 02 32 */ fmuls f8, f9, f8 -/* 80180DBC 0017DD1C 80 01 00 80 */ lwz r0, 0x80(r1) -/* 80180DC0 0017DD20 EC E9 01 F2 */ fmuls f7, f9, f7 -/* 80180DC4 0017DD24 D0 A1 00 90 */ stfs f5, 0x90(r1) -/* 80180DC8 0017DD28 EC A9 01 B2 */ fmuls f5, f9, f6 -/* 80180DCC 0017DD2C 80 61 00 84 */ lwz r3, 0x84(r1) -/* 80180DD0 0017DD30 90 1D 01 F4 */ stw r0, 0x1f4(r29) -/* 80180DD4 0017DD34 80 01 00 88 */ lwz r0, 0x88(r1) -/* 80180DD8 0017DD38 90 7D 01 F8 */ stw r3, 0x1f8(r29) -/* 80180DDC 0017DD3C 80 61 00 8C */ lwz r3, 0x8c(r1) -/* 80180DE0 0017DD40 90 1D 01 FC */ stw r0, 0x1fc(r29) -/* 80180DE4 0017DD44 80 01 00 90 */ lwz r0, 0x90(r1) -/* 80180DE8 0017DD48 D0 81 00 94 */ stfs f4, 0x94(r1) -/* 80180DEC 0017DD4C 90 7D 02 00 */ stw r3, 0x200(r29) -/* 80180DF0 0017DD50 80 61 00 94 */ lwz r3, 0x94(r1) -/* 80180DF4 0017DD54 D0 61 00 98 */ stfs f3, 0x98(r1) -/* 80180DF8 0017DD58 90 1D 02 04 */ stw r0, 0x204(r29) -/* 80180DFC 0017DD5C 80 01 00 98 */ lwz r0, 0x98(r1) -/* 80180E00 0017DD60 D1 01 00 9C */ stfs f8, 0x9c(r1) -/* 80180E04 0017DD64 90 7D 02 08 */ stw r3, 0x208(r29) -/* 80180E08 0017DD68 80 61 00 9C */ lwz r3, 0x9c(r1) -/* 80180E0C 0017DD6C D0 E1 00 A0 */ stfs f7, 0xa0(r1) -/* 80180E10 0017DD70 90 1D 02 0C */ stw r0, 0x20c(r29) -/* 80180E14 0017DD74 80 01 00 A0 */ lwz r0, 0xa0(r1) -/* 80180E18 0017DD78 D0 A1 00 A4 */ stfs f5, 0xa4(r1) -/* 80180E1C 0017DD7C 90 7D 02 10 */ stw r3, 0x210(r29) -/* 80180E20 0017DD80 80 61 00 A4 */ lwz r3, 0xa4(r1) -/* 80180E24 0017DD84 D0 41 00 A8 */ stfs f2, 0xa8(r1) -/* 80180E28 0017DD88 90 1D 02 14 */ stw r0, 0x214(r29) -/* 80180E2C 0017DD8C 80 01 00 A8 */ lwz r0, 0xa8(r1) -/* 80180E30 0017DD90 D0 21 00 AC */ stfs f1, 0xac(r1) -/* 80180E34 0017DD94 90 7D 02 18 */ stw r3, 0x218(r29) -/* 80180E38 0017DD98 80 61 00 AC */ lwz r3, 0xac(r1) -/* 80180E3C 0017DD9C D0 01 00 B0 */ stfs f0, 0xb0(r1) -/* 80180E40 0017DDA0 90 1D 02 1C */ stw r0, 0x21c(r29) -/* 80180E44 0017DDA4 80 01 00 B0 */ lwz r0, 0xb0(r1) -/* 80180E48 0017DDA8 90 7D 02 20 */ stw r3, 0x220(r29) -/* 80180E4C 0017DDAC 90 1D 02 24 */ stw r0, 0x224(r29) -lbl_80180E50: -/* 80180E50 0017DDB0 38 00 00 00 */ li r0, 0 -/* 80180E54 0017DDB4 98 01 00 48 */ stb r0, 0x48(r1) -/* 80180E58 0017DDB8 48 00 00 80 */ b lbl_80180ED8 -lbl_80180E5C: -/* 80180E5C 0017DDBC 7F A4 EB 78 */ mr r4, r29 -/* 80180E60 0017DDC0 38 61 00 4C */ addi r3, r1, 0x4c -/* 80180E64 0017DDC4 4B F9 A8 11 */ bl GetMotionState__13CPhysicsActorCFv -/* 80180E68 0017DDC8 80 81 00 4C */ lwz r4, 0x4c(r1) -/* 80180E6C 0017DDCC 38 00 00 00 */ li r0, 0 -/* 80180E70 0017DDD0 80 61 00 50 */ lwz r3, 0x50(r1) -/* 80180E74 0017DDD4 90 9D 01 F4 */ stw r4, 0x1f4(r29) -/* 80180E78 0017DDD8 90 7D 01 F8 */ stw r3, 0x1f8(r29) -/* 80180E7C 0017DDDC 80 61 00 54 */ lwz r3, 0x54(r1) -/* 80180E80 0017DDE0 90 7D 01 FC */ stw r3, 0x1fc(r29) -/* 80180E84 0017DDE4 80 81 00 58 */ lwz r4, 0x58(r1) -/* 80180E88 0017DDE8 80 61 00 5C */ lwz r3, 0x5c(r1) -/* 80180E8C 0017DDEC 90 9D 02 00 */ stw r4, 0x200(r29) -/* 80180E90 0017DDF0 90 7D 02 04 */ stw r3, 0x204(r29) -/* 80180E94 0017DDF4 80 81 00 60 */ lwz r4, 0x60(r1) -/* 80180E98 0017DDF8 80 61 00 64 */ lwz r3, 0x64(r1) -/* 80180E9C 0017DDFC 90 9D 02 08 */ stw r4, 0x208(r29) -/* 80180EA0 0017DE00 90 7D 02 0C */ stw r3, 0x20c(r29) -/* 80180EA4 0017DE04 80 81 00 68 */ lwz r4, 0x68(r1) -/* 80180EA8 0017DE08 80 61 00 6C */ lwz r3, 0x6c(r1) -/* 80180EAC 0017DE0C 90 9D 02 10 */ stw r4, 0x210(r29) -/* 80180EB0 0017DE10 90 7D 02 14 */ stw r3, 0x214(r29) -/* 80180EB4 0017DE14 80 61 00 70 */ lwz r3, 0x70(r1) -/* 80180EB8 0017DE18 90 7D 02 18 */ stw r3, 0x218(r29) -/* 80180EBC 0017DE1C 80 81 00 74 */ lwz r4, 0x74(r1) -/* 80180EC0 0017DE20 80 61 00 78 */ lwz r3, 0x78(r1) -/* 80180EC4 0017DE24 90 9D 02 1C */ stw r4, 0x21c(r29) -/* 80180EC8 0017DE28 90 7D 02 20 */ stw r3, 0x220(r29) -/* 80180ECC 0017DE2C 80 61 00 7C */ lwz r3, 0x7c(r1) -/* 80180ED0 0017DE30 90 7D 02 24 */ stw r3, 0x224(r29) -/* 80180ED4 0017DE34 90 1D 02 4C */ stw r0, 0x24c(r29) -lbl_80180ED8: -/* 80180ED8 0017DE38 E3 E1 02 A8 */ psq_l f31, 680(r1), 0, qr0 -/* 80180EDC 0017DE3C CB E1 02 A0 */ lfd f31, 0x2a0(r1) -/* 80180EE0 0017DE40 BB 21 02 84 */ lmw r25, 0x284(r1) -/* 80180EE4 0017DE44 80 01 02 B4 */ lwz r0, 0x2b4(r1) -/* 80180EE8 0017DE48 7C 08 03 A6 */ mtlr r0 -/* 80180EEC 0017DE4C 38 21 02 B0 */ addi r1, r1, 0x2b0 -/* 80180EF0 0017DE50 4E 80 00 20 */ blr - -.global "MoveAndCollide__14CGameCollisionFR13CStateManagerR13CPhysicsActorfRC16ICollisionFilterPCQ24rstl32reserved_vector<9TUniqueId,1024>" -"MoveAndCollide__14CGameCollisionFR13CStateManagerR13CPhysicsActorfRC16ICollisionFilterPCQ24rstl32reserved_vector<9TUniqueId,1024>": -/* 80180EF4 0017DE54 94 21 B5 10 */ stwu r1, -0x4af0(r1) -/* 80180EF8 0017DE58 7C 08 02 A6 */ mflr r0 -/* 80180EFC 0017DE5C 90 01 4A F4 */ stw r0, 0x4af4(r1) -/* 80180F00 0017DE60 38 00 4A E8 */ li r0, 0x4ae8 -/* 80180F04 0017DE64 DB E1 4A E0 */ stfd f31, 0x4ae0(r1) -/* 80180F08 0017DE68 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 -/* 80180F0C 0017DE6C 38 00 4A D8 */ li r0, 0x4ad8 -/* 80180F10 0017DE70 DB C1 4A D0 */ stfd f30, 0x4ad0(r1) -/* 80180F14 0017DE74 13 C1 00 0E */ psq_stx f30, r1, r0, 0, qr0 -/* 80180F18 0017DE78 38 00 4A C8 */ li r0, 0x4ac8 -/* 80180F1C 0017DE7C DB A1 4A C0 */ stfd f29, 0x4ac0(r1) -/* 80180F20 0017DE80 13 A1 00 0E */ psq_stx f29, r1, r0, 0, qr0 -/* 80180F24 0017DE84 38 00 4A B8 */ li r0, 0x4ab8 -/* 80180F28 0017DE88 DB 81 4A B0 */ stfd f28, 0x4ab0(r1) -/* 80180F2C 0017DE8C 13 81 00 0E */ psq_stx f28, r1, r0, 0, qr0 -/* 80180F30 0017DE90 38 00 4A A8 */ li r0, 0x4aa8 -/* 80180F34 0017DE94 DB 61 4A A0 */ stfd f27, 0x4aa0(r1) -/* 80180F38 0017DE98 13 61 00 0E */ psq_stx f27, r1, r0, 0, qr0 -/* 80180F3C 0017DE9C BE 81 4A 70 */ stmw r20, 0x4a70(r1) -/* 80180F40 0017DEA0 7C 9E 23 78 */ mr r30, r4 -/* 80180F44 0017DEA4 80 84 00 6C */ lwz r4, 0x6c(r4) -/* 80180F48 0017DEA8 81 1E 00 68 */ lwz r8, 0x68(r30) -/* 80180F4C 0017DEAC 38 E0 00 00 */ li r7, 0 -/* 80180F50 0017DEB0 38 00 00 01 */ li r0, 1 -/* 80180F54 0017DEB4 7C 7D 1B 78 */ mr r29, r3 -/* 80180F58 0017DEB8 7C 84 38 38 */ and r4, r4, r7 -/* 80180F5C 0017DEBC FF 80 08 90 */ fmr f28, f1 -/* 80180F60 0017DEC0 7D 00 00 38 */ and r0, r8, r0 -/* 80180F64 0017DEC4 7C BF 2B 78 */ mr r31, r5 -/* 80180F68 0017DEC8 7C 83 3A 78 */ xor r3, r4, r7 -/* 80180F6C 0017DECC 7C D6 33 78 */ mr r22, r6 -/* 80180F70 0017DED0 7C 00 3A 78 */ xor r0, r0, r7 -/* 80180F74 0017DED4 7C 60 03 79 */ or. r0, r3, r0 -/* 80180F78 0017DED8 3B 80 00 00 */ li r28, 0 -/* 80180F7C 0017DEDC 3B 60 00 00 */ li r27, 0 -/* 80180F80 0017DEE0 3B 00 00 00 */ li r24, 0 -/* 80180F84 0017DEE4 3B 40 00 00 */ li r26, 0 -/* 80180F88 0017DEE8 41 82 00 08 */ beq lbl_80180F90 -/* 80180F8C 0017DEEC 3B 00 00 01 */ li r24, 1 -lbl_80180F90: -/* 80180F90 0017DEF0 38 00 00 00 */ li r0, 0 -/* 80180F94 0017DEF4 FF E0 E0 90 */ fmr f31, f28 -/* 80180F98 0017DEF8 FC 20 E0 90 */ fmr f1, f28 -/* 80180F9C 0017DEFC D3 81 00 2C */ stfs f28, 0x2c(r1) -/* 80180FA0 0017DF00 7F C4 F3 78 */ mr r4, r30 -/* 80180FA4 0017DF04 38 61 02 B0 */ addi r3, r1, 0x2b0 -/* 80180FA8 0017DF08 D3 81 00 28 */ stfs f28, 0x28(r1) -/* 80180FAC 0017DF0C 90 01 3E 68 */ stw r0, 0x3e68(r1) -/* 80180FB0 0017DF10 4B F9 A8 59 */ bl PredictMotion_Internal__13CPhysicsActorCFf -/* 80180FB4 0017DF14 C1 81 02 B0 */ lfs f12, 0x2b0(r1) -/* 80180FB8 0017DF18 38 61 02 E4 */ addi r3, r1, 0x2e4 -/* 80180FBC 0017DF1C C1 61 02 B4 */ lfs f11, 0x2b4(r1) -/* 80180FC0 0017DF20 C1 41 02 B8 */ lfs f10, 0x2b8(r1) -/* 80180FC4 0017DF24 C1 21 02 BC */ lfs f9, 0x2bc(r1) -/* 80180FC8 0017DF28 C1 01 02 C0 */ lfs f8, 0x2c0(r1) -/* 80180FCC 0017DF2C C0 E1 02 C4 */ lfs f7, 0x2c4(r1) -/* 80180FD0 0017DF30 C0 C1 02 C8 */ lfs f6, 0x2c8(r1) -/* 80180FD4 0017DF34 C0 A1 02 CC */ lfs f5, 0x2cc(r1) -/* 80180FD8 0017DF38 C0 81 02 D0 */ lfs f4, 0x2d0(r1) -/* 80180FDC 0017DF3C C0 61 02 D4 */ lfs f3, 0x2d4(r1) -/* 80180FE0 0017DF40 C0 41 02 D8 */ lfs f2, 0x2d8(r1) -/* 80180FE4 0017DF44 C0 21 02 DC */ lfs f1, 0x2dc(r1) -/* 80180FE8 0017DF48 C0 01 02 E0 */ lfs f0, 0x2e0(r1) -/* 80180FEC 0017DF4C D1 81 02 E4 */ stfs f12, 0x2e4(r1) -/* 80180FF0 0017DF50 D1 61 02 E8 */ stfs f11, 0x2e8(r1) -/* 80180FF4 0017DF54 D1 41 02 EC */ stfs f10, 0x2ec(r1) -/* 80180FF8 0017DF58 D1 21 02 F0 */ stfs f9, 0x2f0(r1) -/* 80180FFC 0017DF5C D1 01 02 F4 */ stfs f8, 0x2f4(r1) -/* 80181000 0017DF60 D0 E1 02 F8 */ stfs f7, 0x2f8(r1) -/* 80181004 0017DF64 D0 C1 02 FC */ stfs f6, 0x2fc(r1) -/* 80181008 0017DF68 D0 A1 03 00 */ stfs f5, 0x300(r1) -/* 8018100C 0017DF6C D0 81 03 04 */ stfs f4, 0x304(r1) -/* 80181010 0017DF70 D0 61 03 08 */ stfs f3, 0x308(r1) -/* 80181014 0017DF74 D0 41 03 0C */ stfs f2, 0x30c(r1) -/* 80181018 0017DF78 D0 21 03 10 */ stfs f1, 0x310(r1) -/* 8018101C 0017DF7C D0 01 03 14 */ stfs f0, 0x314(r1) -/* 80181020 0017DF80 48 19 38 99 */ bl Magnitude__9CVector3fCFv -/* 80181024 0017DF84 FF C0 08 90 */ fmr f30, f1 -/* 80181028 0017DF88 7F C3 F3 78 */ mr r3, r30 -/* 8018102C 0017DF8C 4B F9 94 9D */ bl GetCollisionAccuracyModifier__13CPhysicsActorCFv -/* 80181030 0017DF90 C0 02 A2 C8 */ lfs f0, lbl_805ABFE8@sda21(r2) -/* 80181034 0017DF94 7F C3 F3 78 */ mr r3, r30 -/* 80181038 0017DF98 EC 00 08 24 */ fdivs f0, f0, f1 -/* 8018103C 0017DF9C D0 01 00 18 */ stfs f0, 0x18(r1) -/* 80181040 0017DFA0 4B F9 94 89 */ bl GetCollisionAccuracyModifier__13CPhysicsActorCFv -/* 80181044 0017DFA4 C0 42 A2 CC */ lfs f2, lbl_805ABFEC@sda21(r2) -/* 80181048 0017DFA8 C0 01 00 18 */ lfs f0, 0x18(r1) -/* 8018104C 0017DFAC EC 22 00 72 */ fmuls f1, f2, f1 -/* 80181050 0017DFB0 EC 3E 08 24 */ fdivs f1, f30, f1 -/* 80181054 0017DFB4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80181058 0017DFB8 D0 21 00 1C */ stfs f1, 0x1c(r1) -/* 8018105C 0017DFBC 40 80 00 0C */ bge lbl_80181068 -/* 80181060 0017DFC0 38 61 00 18 */ addi r3, r1, 0x18 -/* 80181064 0017DFC4 48 00 00 08 */ b lbl_8018106C -lbl_80181068: -/* 80181068 0017DFC8 38 61 00 1C */ addi r3, r1, 0x1c -lbl_8018106C: -/* 8018106C 0017DFCC C0 03 00 00 */ lfs f0, 0(r3) -/* 80181070 0017DFD0 7F C3 F3 78 */ mr r3, r30 -/* 80181074 0017DFD4 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 80181078 0017DFD8 4B F9 94 51 */ bl GetCollisionAccuracyModifier__13CPhysicsActorCFv -/* 8018107C 0017DFDC C0 02 A2 D0 */ lfs f0, lbl_805ABFF0@sda21(r2) -/* 80181080 0017DFE0 7F C3 F3 78 */ mr r3, r30 -/* 80181084 0017DFE4 EF A0 08 24 */ fdivs f29, f0, f1 -/* 80181088 0017DFE8 4B ED 28 35 */ bl GetMaterialFilter__6CActorCFv -/* 8018108C 0017DFEC 38 00 00 00 */ li r0, 0 -/* 80181090 0017DFF0 FC 20 E0 90 */ fmr f1, f28 -/* 80181094 0017DFF4 90 01 36 64 */ stw r0, 0x3664(r1) -/* 80181098 0017DFF8 7C 79 1B 78 */ mr r25, r3 -/* 8018109C 0017DFFC 7F C4 F3 78 */ mr r4, r30 -/* 801810A0 0017E000 38 61 00 D4 */ addi r3, r1, 0xd4 -/* 801810A4 0017E004 4B F9 96 11 */ bl GetMotionVolume__13CPhysicsActorCFf -/* 801810A8 0017E008 C0 C1 00 D4 */ lfs f6, 0xd4(r1) -/* 801810AC 0017E00C 28 16 00 00 */ cmplwi r22, 0 -/* 801810B0 0017E010 C0 A1 00 D8 */ lfs f5, 0xd8(r1) -/* 801810B4 0017E014 C0 81 00 DC */ lfs f4, 0xdc(r1) -/* 801810B8 0017E018 C0 61 00 E0 */ lfs f3, 0xe0(r1) -/* 801810BC 0017E01C C0 41 00 E4 */ lfs f2, 0xe4(r1) -/* 801810C0 0017E020 C0 21 00 E8 */ lfs f1, 0xe8(r1) -/* 801810C4 0017E024 D0 C1 01 04 */ stfs f6, 0x104(r1) -/* 801810C8 0017E028 D0 A1 01 08 */ stfs f5, 0x108(r1) -/* 801810CC 0017E02C D0 81 01 0C */ stfs f4, 0x10c(r1) -/* 801810D0 0017E030 D0 61 01 10 */ stfs f3, 0x110(r1) -/* 801810D4 0017E034 D0 41 01 14 */ stfs f2, 0x114(r1) -/* 801810D8 0017E038 D0 21 01 18 */ stfs f1, 0x118(r1) -/* 801810DC 0017E03C 41 82 00 AC */ beq lbl_80181188 -/* 801810E0 0017E040 38 01 36 64 */ addi r0, r1, 0x3664 -/* 801810E4 0017E044 7C 00 B0 40 */ cmplw r0, r22 -/* 801810E8 0017E048 41 82 00 F8 */ beq lbl_801811E0 -/* 801810EC 0017E04C 80 A1 36 64 */ lwz r5, 0x3664(r1) -/* 801810F0 0017E050 38 C1 36 68 */ addi r6, r1, 0x3668 -/* 801810F4 0017E054 38 60 00 00 */ li r3, 0 -/* 801810F8 0017E058 2C 05 00 00 */ cmpwi r5, 0 -/* 801810FC 0017E05C 40 81 00 40 */ ble lbl_8018113C -/* 80181100 0017E060 2C 05 00 08 */ cmpwi r5, 8 -/* 80181104 0017E064 38 85 FF F8 */ addi r4, r5, -8 -/* 80181108 0017E068 40 81 00 20 */ ble lbl_80181128 -/* 8018110C 0017E06C 38 04 00 07 */ addi r0, r4, 7 -/* 80181110 0017E070 54 00 E8 FE */ srwi r0, r0, 3 -/* 80181114 0017E074 7C 09 03 A6 */ mtctr r0 -/* 80181118 0017E078 2C 04 00 00 */ cmpwi r4, 0 -/* 8018111C 0017E07C 40 81 00 0C */ ble lbl_80181128 -lbl_80181120: -/* 80181120 0017E080 38 63 00 08 */ addi r3, r3, 8 -/* 80181124 0017E084 42 00 FF FC */ bdnz lbl_80181120 -lbl_80181128: -/* 80181128 0017E088 7C 03 28 50 */ subf r0, r3, r5 -/* 8018112C 0017E08C 7C 09 03 A6 */ mtctr r0 -/* 80181130 0017E090 7C 03 28 00 */ cmpw r3, r5 -/* 80181134 0017E094 40 80 00 08 */ bge lbl_8018113C -lbl_80181138: -/* 80181138 0017E098 42 00 00 00 */ bdnz lbl_80181138 -lbl_8018113C: -/* 8018113C 0017E09C 80 16 00 00 */ lwz r0, 0(r22) -/* 80181140 0017E0A0 38 60 00 00 */ li r3, 0 -/* 80181144 0017E0A4 90 61 36 64 */ stw r3, 0x3664(r1) -/* 80181148 0017E0A8 38 76 00 04 */ addi r3, r22, 4 -/* 8018114C 0017E0AC 54 00 08 3C */ slwi r0, r0, 1 -/* 80181150 0017E0B0 7C 96 02 14 */ add r4, r22, r0 -/* 80181154 0017E0B4 38 84 00 04 */ addi r4, r4, 4 -/* 80181158 0017E0B8 48 00 00 1C */ b lbl_80181174 -lbl_8018115C: -/* 8018115C 0017E0BC 28 06 00 00 */ cmplwi r6, 0 -/* 80181160 0017E0C0 41 82 00 0C */ beq lbl_8018116C -/* 80181164 0017E0C4 A0 03 00 00 */ lhz r0, 0(r3) -/* 80181168 0017E0C8 B0 06 00 00 */ sth r0, 0(r6) -lbl_8018116C: -/* 8018116C 0017E0CC 38 C6 00 02 */ addi r6, r6, 2 -/* 80181170 0017E0D0 38 63 00 02 */ addi r3, r3, 2 -lbl_80181174: -/* 80181174 0017E0D4 7C 03 20 40 */ cmplw r3, r4 -/* 80181178 0017E0D8 40 82 FF E4 */ bne lbl_8018115C -/* 8018117C 0017E0DC 80 16 00 00 */ lwz r0, 0(r22) -/* 80181180 0017E0E0 90 01 36 64 */ stw r0, 0x3664(r1) -/* 80181184 0017E0E4 48 00 00 5C */ b lbl_801811E0 -lbl_80181188: -/* 80181188 0017E0E8 C0 02 A2 D4 */ lfs f0, lbl_805ABFF4@sda21(r2) -/* 8018118C 0017E0EC 38 61 00 BC */ addi r3, r1, 0xbc -/* 80181190 0017E0F0 38 81 00 74 */ addi r4, r1, 0x74 -/* 80181194 0017E0F4 38 A1 00 68 */ addi r5, r1, 0x68 -/* 80181198 0017E0F8 EC 42 00 2A */ fadds f2, f2, f0 -/* 8018119C 0017E0FC EC E1 00 2A */ fadds f7, f1, f0 -/* 801811A0 0017E100 EC 23 00 2A */ fadds f1, f3, f0 -/* 801811A4 0017E104 EC 65 00 28 */ fsubs f3, f5, f0 -/* 801811A8 0017E108 D0 41 00 6C */ stfs f2, 0x6c(r1) -/* 801811AC 0017E10C EC 44 00 28 */ fsubs f2, f4, f0 -/* 801811B0 0017E110 EC 06 00 28 */ fsubs f0, f6, f0 -/* 801811B4 0017E114 D0 21 00 68 */ stfs f1, 0x68(r1) -/* 801811B8 0017E118 D0 E1 00 70 */ stfs f7, 0x70(r1) -/* 801811BC 0017E11C D0 01 00 74 */ stfs f0, 0x74(r1) -/* 801811C0 0017E120 D0 61 00 78 */ stfs f3, 0x78(r1) -/* 801811C4 0017E124 D0 41 00 7C */ stfs f2, 0x7c(r1) -/* 801811C8 0017E128 48 1B 73 41 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 801811CC 0017E12C 7C 66 1B 78 */ mr r6, r3 -/* 801811D0 0017E130 7F A3 EB 78 */ mr r3, r29 -/* 801811D4 0017E134 7F C5 F3 78 */ mr r5, r30 -/* 801811D8 0017E138 38 81 36 64 */ addi r4, r1, 0x3664 -/* 801811DC 0017E13C 4B EC B5 21 */ bl "BuildColliderList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CActorRC6CAABox" -lbl_801811E0: -/* 801811E0 0017E140 38 61 1B 20 */ addi r3, r1, 0x1b20 -/* 801811E4 0017E144 38 81 01 04 */ addi r4, r1, 0x104 -/* 801811E8 0017E148 48 12 28 A9 */ bl __ct__19CAreaCollisionCacheFRC6CAABox -/* 801811EC 0017E14C 7F C3 F3 78 */ mr r3, r30 -/* 801811F0 0017E150 3A E0 00 01 */ li r23, 1 -/* 801811F4 0017E154 81 9E 00 00 */ lwz r12, 0(r30) -/* 801811F8 0017E158 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 801811FC 0017E15C 7D 89 03 A6 */ mtctr r12 -/* 80181200 0017E160 4E 80 04 21 */ bctrl -/* 80181204 0017E164 81 83 00 00 */ lwz r12, 0(r3) -/* 80181208 0017E168 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 8018120C 0017E16C 7D 89 03 A6 */ mtctr r12 -/* 80181210 0017E170 4E 80 04 21 */ bctrl -/* 80181214 0017E174 3C 03 B0 BE */ addis r0, r3, 0xb0be -/* 80181218 0017E178 28 00 54 47 */ cmplwi r0, 0x5447 -/* 8018121C 0017E17C 41 82 00 30 */ beq lbl_8018124C -/* 80181220 0017E180 80 79 00 08 */ lwz r3, 8(r25) -/* 80181224 0017E184 38 00 00 40 */ li r0, 0x40 -/* 80181228 0017E188 80 B9 00 0C */ lwz r5, 0xc(r25) -/* 8018122C 0017E18C 38 80 00 00 */ li r4, 0 -/* 80181230 0017E190 7C 60 00 38 */ and r0, r3, r0 -/* 80181234 0017E194 7C A3 20 38 */ and r3, r5, r4 -/* 80181238 0017E198 7C 63 22 78 */ xor r3, r3, r4 -/* 8018123C 0017E19C 7C 00 22 78 */ xor r0, r0, r4 -/* 80181240 0017E1A0 7C 60 03 79 */ or. r0, r3, r0 -/* 80181244 0017E1A4 40 82 00 08 */ bne lbl_8018124C -/* 80181248 0017E1A8 7C 97 23 78 */ mr r23, r4 -lbl_8018124C: -/* 8018124C 0017E1AC 56 E0 06 3F */ clrlwi. r0, r23, 0x18 -/* 80181250 0017E1B0 40 82 01 F0 */ bne lbl_80181440 -/* 80181254 0017E1B4 7F A3 EB 78 */ mr r3, r29 -/* 80181258 0017E1B8 38 81 1B 20 */ addi r4, r1, 0x1b20 -/* 8018125C 0017E1BC 48 00 34 69 */ bl BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache -/* 80181260 0017E1C0 7F C4 F3 78 */ mr r4, r30 -/* 80181264 0017E1C4 38 61 02 80 */ addi r3, r1, 0x280 -/* 80181268 0017E1C8 81 9E 00 00 */ lwz r12, 0(r30) -/* 8018126C 0017E1CC 81 8C 00 70 */ lwz r12, 0x70(r12) -/* 80181270 0017E1D0 7D 89 03 A6 */ mtctr r12 -/* 80181274 0017E1D4 4E 80 04 21 */ bctrl -/* 80181278 0017E1D8 7F C3 F3 78 */ mr r3, r30 -/* 8018127C 0017E1DC 81 9E 00 00 */ lwz r12, 0(r30) -/* 80181280 0017E1E0 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 80181284 0017E1E4 7D 89 03 A6 */ mtctr r12 -/* 80181288 0017E1E8 4E 80 04 21 */ bctrl -/* 8018128C 0017E1EC 7C 64 1B 78 */ mr r4, r3 -/* 80181290 0017E1F0 38 61 00 A4 */ addi r3, r1, 0xa4 -/* 80181294 0017E1F4 81 84 00 00 */ lwz r12, 0(r4) -/* 80181298 0017E1F8 38 A1 02 80 */ addi r5, r1, 0x280 -/* 8018129C 0017E1FC 81 8C 00 14 */ lwz r12, 0x14(r12) -/* 801812A0 0017E200 7D 89 03 A6 */ mtctr r12 -/* 801812A4 0017E204 4E 80 04 21 */ bctrl -/* 801812A8 0017E208 C0 A1 00 A4 */ lfs f5, 0xa4(r1) -/* 801812AC 0017E20C 38 61 00 5C */ addi r3, r1, 0x5c -/* 801812B0 0017E210 C0 81 00 A8 */ lfs f4, 0xa8(r1) -/* 801812B4 0017E214 38 81 00 EC */ addi r4, r1, 0xec -/* 801812B8 0017E218 C0 61 00 AC */ lfs f3, 0xac(r1) -/* 801812BC 0017E21C C0 41 00 B0 */ lfs f2, 0xb0(r1) -/* 801812C0 0017E220 C0 21 00 B4 */ lfs f1, 0xb4(r1) -/* 801812C4 0017E224 C0 01 00 B8 */ lfs f0, 0xb8(r1) -/* 801812C8 0017E228 D0 A1 00 EC */ stfs f5, 0xec(r1) -/* 801812CC 0017E22C D0 81 00 F0 */ stfs f4, 0xf0(r1) -/* 801812D0 0017E230 D0 61 00 F4 */ stfs f3, 0xf4(r1) -/* 801812D4 0017E234 D0 41 00 F8 */ stfs f2, 0xf8(r1) -/* 801812D8 0017E238 D0 21 00 FC */ stfs f1, 0xfc(r1) -/* 801812DC 0017E23C D0 01 01 00 */ stfs f0, 0x100(r1) -/* 801812E0 0017E240 48 1B 63 2D */ bl GetCenterPoint__6CAABoxCFv -/* 801812E4 0017E244 C0 41 00 5C */ lfs f2, 0x5c(r1) -/* 801812E8 0017E248 7F C3 F3 78 */ mr r3, r30 -/* 801812EC 0017E24C C0 21 00 60 */ lfs f1, 0x60(r1) -/* 801812F0 0017E250 C0 01 00 64 */ lfs f0, 0x64(r1) -/* 801812F4 0017E254 D0 41 00 98 */ stfs f2, 0x98(r1) -/* 801812F8 0017E258 D0 21 00 9C */ stfs f1, 0x9c(r1) -/* 801812FC 0017E25C D0 01 00 A0 */ stfs f0, 0xa0(r1) -/* 80181300 0017E260 81 9E 00 00 */ lwz r12, 0(r30) -/* 80181304 0017E264 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 80181308 0017E268 7D 89 03 A6 */ mtctr r12 -/* 8018130C 0017E26C 4E 80 04 21 */ bctrl -/* 80181310 0017E270 48 00 13 BD */ bl GetMinExtentForCollisionPrimitive__14CGameCollisionFRC19CCollisionPrimitive -/* 80181314 0017E274 C0 02 A2 C4 */ lfs f0, lbl_805ABFE4@sda21(r2) -/* 80181318 0017E278 EC 00 00 72 */ fmuls f0, f0, f1 -/* 8018131C 0017E27C FC 1E 00 40 */ fcmpo cr0, f30, f0 -/* 80181320 0017E280 D0 01 00 20 */ stfs f0, 0x20(r1) -/* 80181324 0017E284 40 81 01 1C */ ble lbl_80181440 -/* 80181328 0017E288 C0 02 A2 D4 */ lfs f0, lbl_805ABFF4@sda21(r2) -/* 8018132C 0017E28C FC 20 F0 90 */ fmr f1, f30 -/* 80181330 0017E290 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80181334 0017E294 7F A4 EB 78 */ mr r4, r29 -/* 80181338 0017E298 EC 80 F0 24 */ fdivs f4, f0, f30 -/* 8018133C 0017E29C C0 61 02 E8 */ lfs f3, 0x2e8(r1) -/* 80181340 0017E2A0 C0 41 02 EC */ lfs f2, 0x2ec(r1) -/* 80181344 0017E2A4 C0 01 02 E4 */ lfs f0, 0x2e4(r1) -/* 80181348 0017E2A8 7F 28 CB 78 */ mr r8, r25 -/* 8018134C 0017E2AC B0 01 00 14 */ sth r0, 0x14(r1) -/* 80181350 0017E2B0 EC 64 00 F2 */ fmuls f3, f4, f3 -/* 80181354 0017E2B4 38 61 02 50 */ addi r3, r1, 0x250 -/* 80181358 0017E2B8 EC 44 00 B2 */ fmuls f2, f4, f2 -/* 8018135C 0017E2BC 38 A1 00 14 */ addi r5, r1, 0x14 -/* 80181360 0017E2C0 EC 04 00 32 */ fmuls f0, f4, f0 -/* 80181364 0017E2C4 38 C1 00 98 */ addi r6, r1, 0x98 -/* 80181368 0017E2C8 D0 61 00 90 */ stfs f3, 0x90(r1) -/* 8018136C 0017E2CC 38 E1 00 8C */ addi r7, r1, 0x8c -/* 80181370 0017E2D0 39 21 36 64 */ addi r9, r1, 0x3664 -/* 80181374 0017E2D4 D0 01 00 8C */ stfs f0, 0x8c(r1) -/* 80181378 0017E2D8 D0 41 00 94 */ stfs f2, 0x94(r1) -/* 8018137C 0017E2DC 4B EC BC 49 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 80181380 0017E2E0 88 01 02 70 */ lbz r0, 0x270(r1) -/* 80181384 0017E2E4 C0 01 02 50 */ lfs f0, 0x250(r1) -/* 80181388 0017E2E8 28 00 00 00 */ cmplwi r0, 0 -/* 8018138C 0017E2EC 41 82 00 B4 */ beq lbl_80181440 -/* 80181390 0017E2F0 EC 00 F0 24 */ fdivs f0, f0, f30 -/* 80181394 0017E2F4 7F C4 F3 78 */ mr r4, r30 -/* 80181398 0017E2F8 38 61 02 18 */ addi r3, r1, 0x218 -/* 8018139C 0017E2FC EF FC 00 32 */ fmuls f31, f28, f0 -/* 801813A0 0017E300 FC 20 F8 90 */ fmr f1, f31 -/* 801813A4 0017E304 4B F9 A4 65 */ bl PredictMotion_Internal__13CPhysicsActorCFf -/* 801813A8 0017E308 EC 3C F0 24 */ fdivs f1, f28, f30 -/* 801813AC 0017E30C C0 41 00 20 */ lfs f2, 0x20(r1) -/* 801813B0 0017E310 C0 01 00 24 */ lfs f0, 0x24(r1) -/* 801813B4 0017E314 82 A1 02 18 */ lwz r21, 0x218(r1) -/* 801813B8 0017E318 82 81 02 1C */ lwz r20, 0x21c(r1) -/* 801813BC 0017E31C 81 81 02 20 */ lwz r12, 0x220(r1) -/* 801813C0 0017E320 EC 22 00 72 */ fmuls f1, f2, f1 -/* 801813C4 0017E324 81 61 02 24 */ lwz r11, 0x224(r1) -/* 801813C8 0017E328 81 41 02 28 */ lwz r10, 0x228(r1) -/* 801813CC 0017E32C FC 00 10 40 */ fcmpo cr0, f0, f2 -/* 801813D0 0017E330 81 21 02 2C */ lwz r9, 0x22c(r1) -/* 801813D4 0017E334 81 01 02 30 */ lwz r8, 0x230(r1) -/* 801813D8 0017E338 80 E1 02 34 */ lwz r7, 0x234(r1) -/* 801813DC 0017E33C 80 C1 02 38 */ lwz r6, 0x238(r1) -/* 801813E0 0017E340 80 A1 02 3C */ lwz r5, 0x23c(r1) -/* 801813E4 0017E344 80 81 02 40 */ lwz r4, 0x240(r1) -/* 801813E8 0017E348 80 61 02 44 */ lwz r3, 0x244(r1) -/* 801813EC 0017E34C 80 01 02 48 */ lwz r0, 0x248(r1) -/* 801813F0 0017E350 92 A1 02 E4 */ stw r21, 0x2e4(r1) -/* 801813F4 0017E354 92 81 02 E8 */ stw r20, 0x2e8(r1) -/* 801813F8 0017E358 91 81 02 EC */ stw r12, 0x2ec(r1) -/* 801813FC 0017E35C 91 61 02 F0 */ stw r11, 0x2f0(r1) -/* 80181400 0017E360 91 41 02 F4 */ stw r10, 0x2f4(r1) -/* 80181404 0017E364 91 21 02 F8 */ stw r9, 0x2f8(r1) -/* 80181408 0017E368 91 01 02 FC */ stw r8, 0x2fc(r1) -/* 8018140C 0017E36C 90 E1 03 00 */ stw r7, 0x300(r1) -/* 80181410 0017E370 90 C1 03 04 */ stw r6, 0x304(r1) -/* 80181414 0017E374 90 A1 03 08 */ stw r5, 0x308(r1) -/* 80181418 0017E378 90 81 03 0C */ stw r4, 0x30c(r1) -/* 8018141C 0017E37C 90 61 03 10 */ stw r3, 0x310(r1) -/* 80181420 0017E380 90 01 03 14 */ stw r0, 0x314(r1) -/* 80181424 0017E384 D0 21 00 28 */ stfs f1, 0x28(r1) -/* 80181428 0017E388 40 80 00 0C */ bge lbl_80181434 -/* 8018142C 0017E38C 38 61 00 24 */ addi r3, r1, 0x24 -/* 80181430 0017E390 48 00 00 08 */ b lbl_80181438 -lbl_80181434: -/* 80181434 0017E394 38 61 00 20 */ addi r3, r1, 0x20 -lbl_80181438: -/* 80181438 0017E398 C0 03 00 00 */ lfs f0, 0(r3) -/* 8018143C 0017E39C D0 01 00 24 */ stfs f0, 0x24(r1) -lbl_80181440: -/* 80181440 0017E3A0 FF 60 F8 90 */ fmr f27, f31 -/* 80181444 0017E3A4 C3 C2 A2 A8 */ lfs f30, lbl_805ABFC8@sda21(r2) -/* 80181448 0017E3A8 3A E1 01 AC */ addi r23, r1, 0x1ac -/* 8018144C 0017E3AC 3A C0 00 01 */ li r22, 1 -/* 80181450 0017E3B0 48 00 05 48 */ b lbl_80181998 -lbl_80181454: -/* 80181454 0017E3B4 7F C3 F3 78 */ mr r3, r30 -/* 80181458 0017E3B8 38 81 02 E4 */ addi r4, r1, 0x2e4 -/* 8018145C 0017E3BC 4B F9 95 DD */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f -/* 80181460 0017E3C0 7F C4 F3 78 */ mr r4, r30 -/* 80181464 0017E3C4 38 61 01 E8 */ addi r3, r1, 0x1e8 -/* 80181468 0017E3C8 81 9E 00 00 */ lwz r12, 0(r30) -/* 8018146C 0017E3CC 81 8C 00 70 */ lwz r12, 0x70(r12) -/* 80181470 0017E3D0 7D 89 03 A6 */ mtctr r12 -/* 80181474 0017E3D4 4E 80 04 21 */ bctrl -/* 80181478 0017E3D8 7F C3 F3 78 */ mr r3, r30 -/* 8018147C 0017E3DC 81 9E 00 00 */ lwz r12, 0(r30) -/* 80181480 0017E3E0 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 80181484 0017E3E4 7D 89 03 A6 */ mtctr r12 -/* 80181488 0017E3E8 4E 80 04 21 */ bctrl -/* 8018148C 0017E3EC 7C 65 1B 78 */ mr r5, r3 -/* 80181490 0017E3F0 7F A3 EB 78 */ mr r3, r29 -/* 80181494 0017E3F4 7F 27 CB 78 */ mr r7, r25 -/* 80181498 0017E3F8 38 81 1B 20 */ addi r4, r1, 0x1b20 -/* 8018149C 0017E3FC 38 C1 01 E8 */ addi r6, r1, 0x1e8 -/* 801814A0 0017E400 39 01 36 64 */ addi r8, r1, 0x3664 -/* 801814A4 0017E404 48 00 30 C1 */ bl "DetectCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 801814A8 0017E408 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801814AC 0017E40C 41 82 03 F0 */ beq lbl_8018189C -/* 801814B0 0017E410 38 61 02 E4 */ addi r3, r1, 0x2e4 -/* 801814B4 0017E414 3B 80 00 01 */ li r28, 1 -/* 801814B8 0017E418 48 19 34 01 */ bl Magnitude__9CVector3fCFv -/* 801814BC 0017E41C C0 01 00 24 */ lfs f0, 0x24(r1) -/* 801814C0 0017E420 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801814C4 0017E424 40 80 03 C8 */ bge lbl_8018188C -/* 801814C8 0017E428 80 A1 3E 68 */ lwz r5, 0x3e68(r1) -/* 801814CC 0017E42C 3B 60 00 01 */ li r27, 1 -/* 801814D0 0017E430 38 60 00 00 */ li r3, 0 -/* 801814D4 0017E434 2C 05 00 00 */ cmpwi r5, 0 -/* 801814D8 0017E438 40 81 00 44 */ ble lbl_8018151C -/* 801814DC 0017E43C 2C 05 00 08 */ cmpwi r5, 8 -/* 801814E0 0017E440 38 85 FF F8 */ addi r4, r5, -8 -/* 801814E4 0017E444 40 81 00 20 */ ble lbl_80181504 -/* 801814E8 0017E448 38 04 00 07 */ addi r0, r4, 7 -/* 801814EC 0017E44C 54 00 E8 FE */ srwi r0, r0, 3 -/* 801814F0 0017E450 7C 09 03 A6 */ mtctr r0 -/* 801814F4 0017E454 2C 04 00 00 */ cmpwi r4, 0 -/* 801814F8 0017E458 40 81 00 0C */ ble lbl_80181504 -lbl_801814FC: -/* 801814FC 0017E45C 38 63 00 08 */ addi r3, r3, 8 -/* 80181500 0017E460 42 00 FF FC */ bdnz lbl_801814FC -lbl_80181504: -/* 80181504 0017E464 7C 03 28 50 */ subf r0, r3, r5 -/* 80181508 0017E468 7C 09 03 A6 */ mtctr r0 -/* 8018150C 0017E46C 7C 03 28 00 */ cmpw r3, r5 -/* 80181510 0017E470 40 80 00 0C */ bge lbl_8018151C -lbl_80181514: -/* 80181514 0017E474 38 63 00 01 */ addi r3, r3, 1 -/* 80181518 0017E478 42 00 FF FC */ bdnz lbl_80181514 -lbl_8018151C: -/* 8018151C 0017E47C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80181520 0017E480 38 60 00 00 */ li r3, 0 -/* 80181524 0017E484 90 61 3E 68 */ stw r3, 0x3e68(r1) -/* 80181528 0017E488 7F C4 F3 78 */ mr r4, r30 -/* 8018152C 0017E48C 38 61 01 B8 */ addi r3, r1, 0x1b8 -/* 80181530 0017E490 B0 01 00 10 */ sth r0, 0x10(r1) -/* 80181534 0017E494 81 9E 00 00 */ lwz r12, 0(r30) -/* 80181538 0017E498 81 8C 00 70 */ lwz r12, 0x70(r12) -/* 8018153C 0017E49C 7D 89 03 A6 */ mtctr r12 -/* 80181540 0017E4A0 4E 80 04 21 */ bctrl -/* 80181544 0017E4A4 7F C3 F3 78 */ mr r3, r30 -/* 80181548 0017E4A8 81 9E 00 00 */ lwz r12, 0(r30) -/* 8018154C 0017E4AC 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 80181550 0017E4B0 7D 89 03 A6 */ mtctr r12 -/* 80181554 0017E4B4 4E 80 04 21 */ bctrl -/* 80181558 0017E4B8 7C 65 1B 78 */ mr r5, r3 -/* 8018155C 0017E4BC 7F A3 EB 78 */ mr r3, r29 -/* 80181560 0017E4C0 7F 27 CB 78 */ mr r7, r25 -/* 80181564 0017E4C4 38 81 1B 20 */ addi r4, r1, 0x1b20 -/* 80181568 0017E4C8 38 C1 01 B8 */ addi r6, r1, 0x1b8 -/* 8018156C 0017E4CC 39 01 36 64 */ addi r8, r1, 0x3664 -/* 80181570 0017E4D0 39 21 00 10 */ addi r9, r1, 0x10 -/* 80181574 0017E4D4 39 41 3E 68 */ addi r10, r1, 0x3e68 -/* 80181578 0017E4D8 48 00 2E 6D */ bl "DetectCollision_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>R9TUniqueIdR18CCollisionInfoList" -/* 8018157C 0017E4DC A0 01 00 10 */ lhz r0, 0x10(r1) -/* 80181580 0017E4E0 7F A3 EB 78 */ mr r3, r29 -/* 80181584 0017E4E4 38 81 00 0C */ addi r4, r1, 0xc -/* 80181588 0017E4E8 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8018158C 0017E4EC 4B EC AF E9 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80181590 0017E4F0 7C 64 1B 78 */ mr r4, r3 -/* 80181594 0017E4F4 38 61 00 30 */ addi r3, r1, 0x30 -/* 80181598 0017E4F8 4B F2 B1 4D */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" -/* 8018159C 0017E4FC 3C 80 80 5A */ lis r4, skZero3f@ha -/* 801815A0 0017E500 82 C3 00 04 */ lwz r22, 4(r3) -/* 801815A4 0017E504 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 801815A8 0017E508 7F C3 F3 78 */ mr r3, r30 -/* 801815AC 0017E50C 4B F9 94 8D */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f -/* 801815B0 0017E510 38 00 00 00 */ li r0, 0 -/* 801815B4 0017E514 7F C4 F3 78 */ mr r4, r30 -/* 801815B8 0017E518 90 01 0F 1C */ stw r0, 0xf1c(r1) -/* 801815BC 0017E51C 7E C5 B3 78 */ mr r5, r22 -/* 801815C0 0017E520 38 61 00 50 */ addi r3, r1, 0x50 -/* 801815C4 0017E524 90 01 03 18 */ stw r0, 0x318(r1) -/* 801815C8 0017E528 4B FF ED 45 */ bl GetActorRelativeVelocities__14CGameCollisionFPC13CPhysicsActorPC13CPhysicsActor -/* 801815CC 0017E52C C0 41 00 50 */ lfs f2, 0x50(r1) -/* 801815D0 0017E530 38 61 00 80 */ addi r3, r1, 0x80 -/* 801815D4 0017E534 C0 21 00 54 */ lfs f1, 0x54(r1) -/* 801815D8 0017E538 38 81 3E 68 */ addi r4, r1, 0x3e68 -/* 801815DC 0017E53C C0 01 00 58 */ lfs f0, 0x58(r1) -/* 801815E0 0017E540 38 A1 03 18 */ addi r5, r1, 0x318 -/* 801815E4 0017E544 D0 41 00 80 */ stfs f2, 0x80(r1) -/* 801815E8 0017E548 D0 21 00 84 */ stfs f1, 0x84(r1) -/* 801815EC 0017E54C D0 01 00 88 */ stfs f0, 0x88(r1) -/* 801815F0 0017E550 48 15 0D 59 */ bl FilterOutBackfaces__13CollisionUtilFRC9CVector3fRC18CCollisionInfoListR18CCollisionInfoList -/* 801815F4 0017E554 80 01 03 18 */ lwz r0, 0x318(r1) -/* 801815F8 0017E558 2C 00 00 00 */ cmpwi r0, 0 -/* 801815FC 0017E55C 40 81 01 5C */ ble lbl_80181758 -/* 80181600 0017E560 7F E3 FB 78 */ mr r3, r31 -/* 80181604 0017E564 38 81 03 18 */ addi r4, r1, 0x318 -/* 80181608 0017E568 81 9F 00 00 */ lwz r12, 0(r31) -/* 8018160C 0017E56C 38 A1 0F 1C */ addi r5, r1, 0xf1c -/* 80181610 0017E570 81 8C 00 08 */ lwz r12, 8(r12) -/* 80181614 0017E574 7D 89 03 A6 */ mtctr r12 -/* 80181618 0017E578 4E 80 04 21 */ bctrl -/* 8018161C 0017E57C 80 01 0F 1C */ lwz r0, 0xf1c(r1) -/* 80181620 0017E580 2C 00 00 00 */ cmpwi r0, 0 -/* 80181624 0017E584 40 82 01 34 */ bne lbl_80181758 -/* 80181628 0017E588 80 7E 00 68 */ lwz r3, 0x68(r30) -/* 8018162C 0017E58C 38 00 00 01 */ li r0, 1 -/* 80181630 0017E590 80 BE 00 6C */ lwz r5, 0x6c(r30) -/* 80181634 0017E594 38 80 00 00 */ li r4, 0 -/* 80181638 0017E598 7C 60 00 38 */ and r0, r3, r0 -/* 8018163C 0017E59C 7C A3 20 38 */ and r3, r5, r4 -/* 80181640 0017E5A0 7C 63 22 78 */ xor r3, r3, r4 -/* 80181644 0017E5A4 7C 00 22 78 */ xor r0, r0, r4 -/* 80181648 0017E5A8 7C 60 03 79 */ or. r0, r3, r0 -/* 8018164C 0017E5AC 41 82 01 0C */ beq lbl_80181758 -/* 80181650 0017E5B0 C0 1E 01 F4 */ lfs f0, 0x1f4(r30) -/* 80181654 0017E5B4 7E E4 BB 78 */ mr r4, r23 -/* 80181658 0017E5B8 38 61 00 38 */ addi r3, r1, 0x38 -/* 8018165C 0017E5BC 38 AD 8E 88 */ addi r5, r13, lbl_805A7A48@sda21 -/* 80181660 0017E5C0 D0 01 01 84 */ stfs f0, 0x184(r1) -/* 80181664 0017E5C4 C0 1E 01 F8 */ lfs f0, 0x1f8(r30) -/* 80181668 0017E5C8 D0 01 01 88 */ stfs f0, 0x188(r1) -/* 8018166C 0017E5CC C0 1E 01 FC */ lfs f0, 0x1fc(r30) -/* 80181670 0017E5D0 D0 01 01 8C */ stfs f0, 0x18c(r1) -/* 80181674 0017E5D4 C0 1E 02 00 */ lfs f0, 0x200(r30) -/* 80181678 0017E5D8 D0 01 01 90 */ stfs f0, 0x190(r1) -/* 8018167C 0017E5DC C0 1E 02 04 */ lfs f0, 0x204(r30) -/* 80181680 0017E5E0 D0 01 01 94 */ stfs f0, 0x194(r1) -/* 80181684 0017E5E4 C0 1E 02 08 */ lfs f0, 0x208(r30) -/* 80181688 0017E5E8 D0 01 01 98 */ stfs f0, 0x198(r1) -/* 8018168C 0017E5EC C0 1E 02 0C */ lfs f0, 0x20c(r30) -/* 80181690 0017E5F0 D0 01 01 9C */ stfs f0, 0x19c(r1) -/* 80181694 0017E5F4 C0 1E 02 10 */ lfs f0, 0x210(r30) -/* 80181698 0017E5F8 D0 01 01 A0 */ stfs f0, 0x1a0(r1) -/* 8018169C 0017E5FC C0 1E 02 14 */ lfs f0, 0x214(r30) -/* 801816A0 0017E600 D0 01 01 A4 */ stfs f0, 0x1a4(r1) -/* 801816A4 0017E604 C0 1E 02 18 */ lfs f0, 0x218(r30) -/* 801816A8 0017E608 D0 01 01 A8 */ stfs f0, 0x1a8(r1) -/* 801816AC 0017E60C C0 1E 02 1C */ lfs f0, 0x21c(r30) -/* 801816B0 0017E610 D0 01 01 AC */ stfs f0, 0x1ac(r1) -/* 801816B4 0017E614 C0 1E 02 20 */ lfs f0, 0x220(r30) -/* 801816B8 0017E618 D0 01 01 B0 */ stfs f0, 0x1b0(r1) -/* 801816BC 0017E61C C0 1E 02 24 */ lfs f0, 0x224(r30) -/* 801816C0 0017E620 D0 01 01 B4 */ stfs f0, 0x1b4(r1) -/* 801816C4 0017E624 4B E9 9D C1 */ bl __ml__FRC10CAxisAngleRCf -/* 801816C8 0017E628 C0 42 A2 C4 */ lfs f2, lbl_805ABFE4@sda21(r2) -/* 801816CC 0017E62C 7F C3 F3 78 */ mr r3, r30 -/* 801816D0 0017E630 C0 01 01 A4 */ lfs f0, 0x1a4(r1) -/* 801816D4 0017E634 38 81 01 50 */ addi r4, r1, 0x150 -/* 801816D8 0017E638 C0 21 01 A8 */ lfs f1, 0x1a8(r1) -/* 801816DC 0017E63C ED 82 00 32 */ fmuls f12, f2, f0 -/* 801816E0 0017E640 C0 01 01 A0 */ lfs f0, 0x1a0(r1) -/* 801816E4 0017E644 ED 62 00 72 */ fmuls f11, f2, f1 -/* 801816E8 0017E648 C1 21 01 84 */ lfs f9, 0x184(r1) -/* 801816EC 0017E64C ED 42 00 32 */ fmuls f10, f2, f0 -/* 801816F0 0017E650 C1 01 01 88 */ lfs f8, 0x188(r1) -/* 801816F4 0017E654 C0 E1 01 8C */ lfs f7, 0x18c(r1) -/* 801816F8 0017E658 C0 C1 01 90 */ lfs f6, 0x190(r1) -/* 801816FC 0017E65C C0 A1 01 94 */ lfs f5, 0x194(r1) -/* 80181700 0017E660 C0 81 01 98 */ lfs f4, 0x198(r1) -/* 80181704 0017E664 C0 61 01 9C */ lfs f3, 0x19c(r1) -/* 80181708 0017E668 C0 41 00 38 */ lfs f2, 0x38(r1) -/* 8018170C 0017E66C C0 21 00 3C */ lfs f1, 0x3c(r1) -/* 80181710 0017E670 C0 01 00 40 */ lfs f0, 0x40(r1) -/* 80181714 0017E674 D1 41 00 44 */ stfs f10, 0x44(r1) -/* 80181718 0017E678 D1 81 00 48 */ stfs f12, 0x48(r1) -/* 8018171C 0017E67C D1 61 00 4C */ stfs f11, 0x4c(r1) -/* 80181720 0017E680 D1 21 01 50 */ stfs f9, 0x150(r1) -/* 80181724 0017E684 D1 01 01 54 */ stfs f8, 0x154(r1) -/* 80181728 0017E688 D0 E1 01 58 */ stfs f7, 0x158(r1) -/* 8018172C 0017E68C D0 C1 01 5C */ stfs f6, 0x15c(r1) -/* 80181730 0017E690 D0 A1 01 60 */ stfs f5, 0x160(r1) -/* 80181734 0017E694 D0 81 01 64 */ stfs f4, 0x164(r1) -/* 80181738 0017E698 D0 61 01 68 */ stfs f3, 0x168(r1) -/* 8018173C 0017E69C D1 41 01 6C */ stfs f10, 0x16c(r1) -/* 80181740 0017E6A0 D1 81 01 70 */ stfs f12, 0x170(r1) -/* 80181744 0017E6A4 D1 61 01 74 */ stfs f11, 0x174(r1) -/* 80181748 0017E6A8 D0 41 01 78 */ stfs f2, 0x178(r1) -/* 8018174C 0017E6AC D0 21 01 7C */ stfs f1, 0x17c(r1) -/* 80181750 0017E6B0 D0 01 01 80 */ stfs f0, 0x180(r1) -/* 80181754 0017E6B4 4B F9 9F D5 */ bl SetMotionState__13CPhysicsActorFRC12CMotionState -lbl_80181758: -/* 80181758 0017E6B8 7F A3 EB 78 */ mr r3, r29 -/* 8018175C 0017E6BC 7F C4 F3 78 */ mr r4, r30 -/* 80181760 0017E6C0 38 A1 00 10 */ addi r5, r1, 0x10 -/* 80181764 0017E6C4 38 C1 0F 1C */ addi r6, r1, 0xf1c -/* 80181768 0017E6C8 48 00 14 51 */ bl MakeCollisionCallbacks__14CGameCollisionFR13CStateManagerR13CPhysicsActorRC9TUniqueIdRC18CCollisionInfoList -/* 8018176C 0017E6CC 38 60 00 00 */ li r3, 0 -/* 80181770 0017E6D0 4B F3 2D 89 */ bl IsUser__Fi -/* 80181774 0017E6D4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80181778 0017E6D8 41 82 00 14 */ beq lbl_8018178C -/* 8018177C 0017E6DC 48 1C 88 29 */ bl Grey__6CColorFv -/* 80181780 0017E6E0 7C 64 1B 78 */ mr r4, r3 -/* 80181784 0017E6E4 38 61 0F 1C */ addi r3, r1, 0xf1c -/* 80181788 0017E6E8 48 00 11 CD */ bl ShowCollisionResults__14CGameCollisionFR18CCollisionInfoListRC6CColor -lbl_8018178C: -/* 8018178C 0017E6EC 7F A3 EB 78 */ mr r3, r29 -/* 80181790 0017E6F0 7F C4 F3 78 */ mr r4, r30 -/* 80181794 0017E6F4 7E C5 B3 78 */ mr r5, r22 -/* 80181798 0017E6F8 38 C1 0F 1C */ addi r6, r1, 0xf1c -/* 8018179C 0017E6FC 48 00 12 55 */ bl SendScriptMessages__14CGameCollisionFR13CStateManagerR6CActorP6CActorRC18CCollisionInfoList -/* 801817A0 0017E700 7F C3 F3 78 */ mr r3, r30 -/* 801817A4 0017E704 7E C4 B3 78 */ mr r4, r22 -/* 801817A8 0017E708 38 A1 0F 1C */ addi r5, r1, 0xf1c -/* 801817AC 0017E70C 48 00 0E 45 */ bl ResolveCollisions__14CGameCollisionFR13CPhysicsActorP13CPhysicsActorRC18CCollisionInfoList -/* 801817B0 0017E710 C0 21 00 2C */ lfs f1, 0x2c(r1) -/* 801817B4 0017E714 C0 01 00 28 */ lfs f0, 0x28(r1) -/* 801817B8 0017E718 EC 21 F8 28 */ fsubs f1, f1, f31 -/* 801817BC 0017E71C FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 801817C0 0017E720 D0 21 00 2C */ stfs f1, 0x2c(r1) -/* 801817C4 0017E724 40 80 00 0C */ bge lbl_801817D0 -/* 801817C8 0017E728 38 61 00 28 */ addi r3, r1, 0x28 -/* 801817CC 0017E72C 48 00 00 08 */ b lbl_801817D4 -lbl_801817D0: -/* 801817D0 0017E730 38 61 00 2C */ addi r3, r1, 0x2c -lbl_801817D4: -/* 801817D4 0017E734 C3 63 00 00 */ lfs f27, 0(r3) -/* 801817D8 0017E738 38 60 00 00 */ li r3, 0 -/* 801817DC 0017E73C 80 A1 03 18 */ lwz r5, 0x318(r1) -/* 801817E0 0017E740 FF E0 D8 90 */ fmr f31, f27 -/* 801817E4 0017E744 2C 05 00 00 */ cmpwi r5, 0 -/* 801817E8 0017E748 40 81 00 44 */ ble lbl_8018182C -/* 801817EC 0017E74C 2C 05 00 08 */ cmpwi r5, 8 -/* 801817F0 0017E750 38 85 FF F8 */ addi r4, r5, -8 -/* 801817F4 0017E754 40 81 00 20 */ ble lbl_80181814 -/* 801817F8 0017E758 38 04 00 07 */ addi r0, r4, 7 -/* 801817FC 0017E75C 54 00 E8 FE */ srwi r0, r0, 3 -/* 80181800 0017E760 7C 09 03 A6 */ mtctr r0 -/* 80181804 0017E764 2C 04 00 00 */ cmpwi r4, 0 -/* 80181808 0017E768 40 81 00 0C */ ble lbl_80181814 -lbl_8018180C: -/* 8018180C 0017E76C 38 63 00 08 */ addi r3, r3, 8 -/* 80181810 0017E770 42 00 FF FC */ bdnz lbl_8018180C -lbl_80181814: -/* 80181814 0017E774 7C 03 28 50 */ subf r0, r3, r5 -/* 80181818 0017E778 7C 09 03 A6 */ mtctr r0 -/* 8018181C 0017E77C 7C 03 28 00 */ cmpw r3, r5 -/* 80181820 0017E780 40 80 00 0C */ bge lbl_8018182C -lbl_80181824: -/* 80181824 0017E784 38 63 00 01 */ addi r3, r3, 1 -/* 80181828 0017E788 42 00 FF FC */ bdnz lbl_80181824 -lbl_8018182C: -/* 8018182C 0017E78C 80 A1 0F 1C */ lwz r5, 0xf1c(r1) -/* 80181830 0017E790 38 60 00 00 */ li r3, 0 -/* 80181834 0017E794 90 61 03 18 */ stw r3, 0x318(r1) -/* 80181838 0017E798 2C 05 00 00 */ cmpwi r5, 0 -/* 8018183C 0017E79C 40 81 00 44 */ ble lbl_80181880 -/* 80181840 0017E7A0 2C 05 00 08 */ cmpwi r5, 8 -/* 80181844 0017E7A4 38 85 FF F8 */ addi r4, r5, -8 -/* 80181848 0017E7A8 40 81 00 20 */ ble lbl_80181868 -/* 8018184C 0017E7AC 38 04 00 07 */ addi r0, r4, 7 -/* 80181850 0017E7B0 54 00 E8 FE */ srwi r0, r0, 3 -/* 80181854 0017E7B4 7C 09 03 A6 */ mtctr r0 -/* 80181858 0017E7B8 2C 04 00 00 */ cmpwi r4, 0 -/* 8018185C 0017E7BC 40 81 00 0C */ ble lbl_80181868 -lbl_80181860: -/* 80181860 0017E7C0 38 63 00 08 */ addi r3, r3, 8 -/* 80181864 0017E7C4 42 00 FF FC */ bdnz lbl_80181860 -lbl_80181868: -/* 80181868 0017E7C8 7C 03 28 50 */ subf r0, r3, r5 -/* 8018186C 0017E7CC 7C 09 03 A6 */ mtctr r0 -/* 80181870 0017E7D0 7C 03 28 00 */ cmpw r3, r5 -/* 80181874 0017E7D4 40 80 00 0C */ bge lbl_80181880 -lbl_80181878: -/* 80181878 0017E7D8 38 63 00 01 */ addi r3, r3, 1 -/* 8018187C 0017E7DC 42 00 FF FC */ bdnz lbl_80181878 -lbl_80181880: -/* 80181880 0017E7E0 38 00 00 00 */ li r0, 0 -/* 80181884 0017E7E4 90 01 0F 1C */ stw r0, 0xf1c(r1) -/* 80181888 0017E7E8 48 00 00 48 */ b lbl_801818D0 -lbl_8018188C: -/* 8018188C 0017E7EC C0 02 A2 C4 */ lfs f0, lbl_805ABFE4@sda21(r2) -/* 80181890 0017E7F0 EF 7B 00 32 */ fmuls f27, f27, f0 -/* 80181894 0017E7F4 EF FF 00 32 */ fmuls f31, f31, f0 -/* 80181898 0017E7F8 48 00 00 38 */ b lbl_801818D0 -lbl_8018189C: -/* 8018189C 0017E7FC 7F C3 F3 78 */ mr r3, r30 -/* 801818A0 0017E800 38 81 02 E4 */ addi r4, r1, 0x2e4 -/* 801818A4 0017E804 4B F9 9C 71 */ bl AddMotionState__13CPhysicsActorFRC12CMotionState -/* 801818A8 0017E808 C0 01 00 2C */ lfs f0, 0x2c(r1) -/* 801818AC 0017E80C 7F C3 F3 78 */ mr r3, r30 -/* 801818B0 0017E810 EC 00 F8 28 */ fsubs f0, f0, f31 -/* 801818B4 0017E814 FF E0 D8 90 */ fmr f31, f27 -/* 801818B8 0017E818 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 801818BC 0017E81C 4B F9 99 65 */ bl ClearImpulses__13CPhysicsActorFv -/* 801818C0 0017E820 3C 80 80 5A */ lis r4, skZero3f@ha -/* 801818C4 0017E824 7F C3 F3 78 */ mr r3, r30 -/* 801818C8 0017E828 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 801818CC 0017E82C 4B F9 91 6D */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f -lbl_801818D0: -/* 801818D0 0017E830 C0 01 00 2C */ lfs f0, 0x2c(r1) -/* 801818D4 0017E834 3A 80 00 00 */ li r20, 0 -/* 801818D8 0017E838 3B 5A 00 01 */ addi r26, r26, 1 -/* 801818DC 0017E83C FC 00 F0 40 */ fcmpo cr0, f0, f30 -/* 801818E0 0017E840 40 81 00 28 */ ble lbl_80181908 -/* 801818E4 0017E844 38 61 02 E4 */ addi r3, r1, 0x2e4 -/* 801818E8 0017E848 48 19 2F D1 */ bl Magnitude__9CVector3fCFv -/* 801818EC 0017E84C FC 01 E8 40 */ fcmpo cr0, f1, f29 -/* 801818F0 0017E850 40 81 00 0C */ ble lbl_801818FC -/* 801818F4 0017E854 57 60 06 3F */ clrlwi. r0, r27, 0x18 -/* 801818F8 0017E858 40 82 00 0C */ bne lbl_80181904 -lbl_801818FC: -/* 801818FC 0017E85C 57 60 06 3F */ clrlwi. r0, r27, 0x18 -/* 80181900 0017E860 40 82 00 08 */ bne lbl_80181908 -lbl_80181904: -/* 80181904 0017E864 3A 80 00 01 */ li r20, 1 -lbl_80181908: -/* 80181908 0017E868 28 1A 03 E8 */ cmplwi r26, 0x3e8 -/* 8018190C 0017E86C 7E 96 A3 78 */ mr r22, r20 -/* 80181910 0017E870 40 81 00 08 */ ble lbl_80181918 -/* 80181914 0017E874 3A C0 00 00 */ li r22, 0 -lbl_80181918: -/* 80181918 0017E878 56 C0 06 3F */ clrlwi. r0, r22, 0x18 -/* 8018191C 0017E87C 41 82 00 7C */ beq lbl_80181998 -/* 80181920 0017E880 FC 20 F8 90 */ fmr f1, f31 -/* 80181924 0017E884 7F C4 F3 78 */ mr r4, r30 -/* 80181928 0017E888 38 61 01 1C */ addi r3, r1, 0x11c -/* 8018192C 0017E88C 4B F9 9E DD */ bl PredictMotion_Internal__13CPhysicsActorCFf -/* 80181930 0017E890 82 81 01 1C */ lwz r20, 0x11c(r1) -/* 80181934 0017E894 82 A1 01 20 */ lwz r21, 0x120(r1) -/* 80181938 0017E898 81 81 01 24 */ lwz r12, 0x124(r1) -/* 8018193C 0017E89C 81 61 01 28 */ lwz r11, 0x128(r1) -/* 80181940 0017E8A0 81 41 01 2C */ lwz r10, 0x12c(r1) -/* 80181944 0017E8A4 81 21 01 30 */ lwz r9, 0x130(r1) -/* 80181948 0017E8A8 81 01 01 34 */ lwz r8, 0x134(r1) -/* 8018194C 0017E8AC 80 E1 01 38 */ lwz r7, 0x138(r1) -/* 80181950 0017E8B0 80 C1 01 3C */ lwz r6, 0x13c(r1) -/* 80181954 0017E8B4 80 A1 01 40 */ lwz r5, 0x140(r1) -/* 80181958 0017E8B8 80 81 01 44 */ lwz r4, 0x144(r1) -/* 8018195C 0017E8BC 80 61 01 48 */ lwz r3, 0x148(r1) -/* 80181960 0017E8C0 80 01 01 4C */ lwz r0, 0x14c(r1) -/* 80181964 0017E8C4 92 81 02 E4 */ stw r20, 0x2e4(r1) -/* 80181968 0017E8C8 92 A1 02 E8 */ stw r21, 0x2e8(r1) -/* 8018196C 0017E8CC 91 81 02 EC */ stw r12, 0x2ec(r1) -/* 80181970 0017E8D0 91 61 02 F0 */ stw r11, 0x2f0(r1) -/* 80181974 0017E8D4 91 41 02 F4 */ stw r10, 0x2f4(r1) -/* 80181978 0017E8D8 91 21 02 F8 */ stw r9, 0x2f8(r1) -/* 8018197C 0017E8DC 91 01 02 FC */ stw r8, 0x2fc(r1) -/* 80181980 0017E8E0 90 E1 03 00 */ stw r7, 0x300(r1) -/* 80181984 0017E8E4 90 C1 03 04 */ stw r6, 0x304(r1) -/* 80181988 0017E8E8 90 A1 03 08 */ stw r5, 0x308(r1) -/* 8018198C 0017E8EC 90 81 03 0C */ stw r4, 0x30c(r1) -/* 80181990 0017E8F0 90 61 03 10 */ stw r3, 0x310(r1) -/* 80181994 0017E8F4 90 01 03 14 */ stw r0, 0x314(r1) -lbl_80181998: -/* 80181998 0017E8F8 56 C0 06 3F */ clrlwi. r0, r22, 0x18 -/* 8018199C 0017E8FC 40 82 FA B8 */ bne lbl_80181454 -/* 801819A0 0017E900 C0 01 00 2C */ lfs f0, 0x2c(r1) -/* 801819A4 0017E904 57 80 06 3F */ clrlwi. r0, r28, 0x18 -/* 801819A8 0017E908 EF 60 E0 24 */ fdivs f27, f0, f28 -/* 801819AC 0017E90C 40 82 00 48 */ bne lbl_801819F4 -/* 801819B0 0017E910 80 7E 00 68 */ lwz r3, 0x68(r30) -/* 801819B4 0017E914 38 00 00 20 */ li r0, 0x20 -/* 801819B8 0017E918 80 BE 00 6C */ lwz r5, 0x6c(r30) -/* 801819BC 0017E91C 38 80 00 00 */ li r4, 0 -/* 801819C0 0017E920 7C 60 00 38 */ and r0, r3, r0 -/* 801819C4 0017E924 7C A3 20 38 */ and r3, r5, r4 -/* 801819C8 0017E928 7C 63 22 78 */ xor r3, r3, r4 -/* 801819CC 0017E92C 7C 00 22 78 */ xor r0, r0, r4 -/* 801819D0 0017E930 7C 60 03 79 */ or. r0, r3, r0 -/* 801819D4 0017E934 40 82 00 20 */ bne lbl_801819F4 -/* 801819D8 0017E938 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 801819DC 0017E93C 7F A3 EB 78 */ mr r3, r29 -/* 801819E0 0017E940 7F C4 F3 78 */ mr r4, r30 -/* 801819E4 0017E944 38 A1 00 08 */ addi r5, r1, 8 -/* 801819E8 0017E948 B0 01 00 08 */ sth r0, 8(r1) -/* 801819EC 0017E94C 38 C0 00 1A */ li r6, 0x1a -/* 801819F0 0017E950 4B EC 24 E1 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -lbl_801819F4: -/* 801819F4 0017E954 57 00 06 3F */ clrlwi. r0, r24, 0x18 -/* 801819F8 0017E958 41 82 00 38 */ beq lbl_80181A30 -/* 801819FC 0017E95C 7F C3 F3 78 */ mr r3, r30 -/* 80181A00 0017E960 81 9E 00 00 */ lwz r12, 0(r30) -/* 80181A04 0017E964 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 80181A08 0017E968 7D 89 03 A6 */ mtctr r12 -/* 80181A0C 0017E96C 4E 80 04 21 */ bctrl -/* 80181A10 0017E970 FC 20 D8 90 */ fmr f1, f27 -/* 80181A14 0017E974 7C 66 1B 78 */ mr r6, r3 -/* 80181A18 0017E978 7F A3 EB 78 */ mr r3, r29 -/* 80181A1C 0017E97C 7F C5 F3 78 */ mr r5, r30 -/* 80181A20 0017E980 38 81 1B 20 */ addi r4, r1, 0x1b20 -/* 80181A24 0017E984 38 E1 36 64 */ addi r7, r1, 0x3664 -/* 80181A28 0017E988 39 00 00 02 */ li r8, 2 -/* 80181A2C 0017E98C 4B FF EE 61 */ bl "CollisionFailsafe__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheR13CPhysicsActorRC19CCollisionPrimitiveRCQ24rstl32reserved_vector<9TUniqueId,1024>fUi" -lbl_80181A30: -/* 80181A30 0017E990 7F C3 F3 78 */ mr r3, r30 -/* 80181A34 0017E994 4B F9 98 81 */ bl ClearForcesAndTorques__13CPhysicsActorFv -/* 80181A38 0017E998 3C 80 80 5A */ lis r4, skZero3f@ha -/* 80181A3C 0017E99C 7F C3 F3 78 */ mr r3, r30 -/* 80181A40 0017E9A0 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 80181A44 0017E9A4 4B F9 8F F5 */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f -/* 80181A48 0017E9A8 38 60 00 00 */ li r3, 0 -/* 80181A4C 0017E9AC 4B F3 2A AD */ bl IsUser__Fi -/* 80181A50 0017E9B0 34 E1 1B 38 */ addic. r7, r1, 0x1b38 -/* 80181A54 0017E9B4 41 82 00 94 */ beq lbl_80181AE8 -/* 80181A58 0017E9B8 38 C7 00 04 */ addi r6, r7, 4 -/* 80181A5C 0017E9BC 38 60 00 00 */ li r3, 0 -/* 80181A60 0017E9C0 48 00 00 74 */ b lbl_80181AD4 -lbl_80181A64: -/* 80181A64 0017E9C4 28 06 00 00 */ cmplwi r6, 0 -/* 80181A68 0017E9C8 41 82 00 64 */ beq lbl_80181ACC -/* 80181A6C 0017E9CC 34 06 00 04 */ addic. r0, r6, 4 -/* 80181A70 0017E9D0 41 82 00 5C */ beq lbl_80181ACC -/* 80181A74 0017E9D4 81 06 00 04 */ lwz r8, 4(r6) -/* 80181A78 0017E9D8 38 80 00 00 */ li r4, 0 -/* 80181A7C 0017E9DC 2C 08 00 00 */ cmpwi r8, 0 -/* 80181A80 0017E9E0 40 81 00 44 */ ble lbl_80181AC4 -/* 80181A84 0017E9E4 2C 08 00 08 */ cmpwi r8, 8 -/* 80181A88 0017E9E8 38 A8 FF F8 */ addi r5, r8, -8 -/* 80181A8C 0017E9EC 40 81 00 20 */ ble lbl_80181AAC -/* 80181A90 0017E9F0 38 05 00 07 */ addi r0, r5, 7 -/* 80181A94 0017E9F4 54 00 E8 FE */ srwi r0, r0, 3 -/* 80181A98 0017E9F8 7C 09 03 A6 */ mtctr r0 -/* 80181A9C 0017E9FC 2C 05 00 00 */ cmpwi r5, 0 -/* 80181AA0 0017EA00 40 81 00 0C */ ble lbl_80181AAC -lbl_80181AA4: -/* 80181AA4 0017EA04 38 84 00 08 */ addi r4, r4, 8 -/* 80181AA8 0017EA08 42 00 FF FC */ bdnz lbl_80181AA4 -lbl_80181AAC: -/* 80181AAC 0017EA0C 7C 04 40 50 */ subf r0, r4, r8 -/* 80181AB0 0017EA10 7C 09 03 A6 */ mtctr r0 -/* 80181AB4 0017EA14 7C 04 40 00 */ cmpw r4, r8 -/* 80181AB8 0017EA18 40 80 00 0C */ bge lbl_80181AC4 -lbl_80181ABC: -/* 80181ABC 0017EA1C 38 84 00 01 */ addi r4, r4, 1 -/* 80181AC0 0017EA20 42 00 FF FC */ bdnz lbl_80181ABC -lbl_80181AC4: -/* 80181AC4 0017EA24 38 00 00 00 */ li r0, 0 -/* 80181AC8 0017EA28 90 06 00 04 */ stw r0, 4(r6) -lbl_80181ACC: -/* 80181ACC 0017EA2C 38 C6 09 0C */ addi r6, r6, 0x90c -/* 80181AD0 0017EA30 38 63 00 01 */ addi r3, r3, 1 -lbl_80181AD4: -/* 80181AD4 0017EA34 80 07 00 00 */ lwz r0, 0(r7) -/* 80181AD8 0017EA38 7C 03 00 00 */ cmpw r3, r0 -/* 80181ADC 0017EA3C 41 80 FF 88 */ blt lbl_80181A64 -/* 80181AE0 0017EA40 38 00 00 00 */ li r0, 0 -/* 80181AE4 0017EA44 90 07 00 00 */ stw r0, 0(r7) -lbl_80181AE8: -/* 80181AE8 0017EA48 80 A1 36 64 */ lwz r5, 0x3664(r1) -/* 80181AEC 0017EA4C 38 60 00 00 */ li r3, 0 -/* 80181AF0 0017EA50 2C 05 00 00 */ cmpwi r5, 0 -/* 80181AF4 0017EA54 40 81 00 40 */ ble lbl_80181B34 -/* 80181AF8 0017EA58 2C 05 00 08 */ cmpwi r5, 8 -/* 80181AFC 0017EA5C 38 85 FF F8 */ addi r4, r5, -8 -/* 80181B00 0017EA60 40 81 00 20 */ ble lbl_80181B20 -/* 80181B04 0017EA64 38 04 00 07 */ addi r0, r4, 7 -/* 80181B08 0017EA68 54 00 E8 FE */ srwi r0, r0, 3 -/* 80181B0C 0017EA6C 7C 09 03 A6 */ mtctr r0 -/* 80181B10 0017EA70 2C 04 00 00 */ cmpwi r4, 0 -/* 80181B14 0017EA74 40 81 00 0C */ ble lbl_80181B20 -lbl_80181B18: -/* 80181B18 0017EA78 38 63 00 08 */ addi r3, r3, 8 -/* 80181B1C 0017EA7C 42 00 FF FC */ bdnz lbl_80181B18 -lbl_80181B20: -/* 80181B20 0017EA80 7C 03 28 50 */ subf r0, r3, r5 -/* 80181B24 0017EA84 7C 09 03 A6 */ mtctr r0 -/* 80181B28 0017EA88 7C 03 28 00 */ cmpw r3, r5 -/* 80181B2C 0017EA8C 40 80 00 08 */ bge lbl_80181B34 -lbl_80181B30: -/* 80181B30 0017EA90 42 00 00 00 */ bdnz lbl_80181B30 -lbl_80181B34: -/* 80181B34 0017EA94 80 A1 3E 68 */ lwz r5, 0x3e68(r1) -/* 80181B38 0017EA98 38 60 00 00 */ li r3, 0 -/* 80181B3C 0017EA9C 90 61 36 64 */ stw r3, 0x3664(r1) -/* 80181B40 0017EAA0 2C 05 00 00 */ cmpwi r5, 0 -/* 80181B44 0017EAA4 40 81 00 40 */ ble lbl_80181B84 -/* 80181B48 0017EAA8 2C 05 00 08 */ cmpwi r5, 8 -/* 80181B4C 0017EAAC 38 85 FF F8 */ addi r4, r5, -8 -/* 80181B50 0017EAB0 40 81 00 20 */ ble lbl_80181B70 -/* 80181B54 0017EAB4 38 04 00 07 */ addi r0, r4, 7 -/* 80181B58 0017EAB8 54 00 E8 FE */ srwi r0, r0, 3 -/* 80181B5C 0017EABC 7C 09 03 A6 */ mtctr r0 -/* 80181B60 0017EAC0 2C 04 00 00 */ cmpwi r4, 0 -/* 80181B64 0017EAC4 40 81 00 0C */ ble lbl_80181B70 -lbl_80181B68: -/* 80181B68 0017EAC8 38 63 00 08 */ addi r3, r3, 8 -/* 80181B6C 0017EACC 42 00 FF FC */ bdnz lbl_80181B68 -lbl_80181B70: -/* 80181B70 0017EAD0 7C 03 28 50 */ subf r0, r3, r5 -/* 80181B74 0017EAD4 7C 09 03 A6 */ mtctr r0 -/* 80181B78 0017EAD8 7C 03 28 00 */ cmpw r3, r5 -/* 80181B7C 0017EADC 40 80 00 08 */ bge lbl_80181B84 -lbl_80181B80: -/* 80181B80 0017EAE0 42 00 00 00 */ bdnz lbl_80181B80 -lbl_80181B84: -/* 80181B84 0017EAE4 38 00 00 00 */ li r0, 0 -/* 80181B88 0017EAE8 90 01 3E 68 */ stw r0, 0x3e68(r1) -/* 80181B8C 0017EAEC 38 00 4A E8 */ li r0, 0x4ae8 -/* 80181B90 0017EAF0 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 -/* 80181B94 0017EAF4 CB E1 4A E0 */ lfd f31, 0x4ae0(r1) -/* 80181B98 0017EAF8 38 00 4A D8 */ li r0, 0x4ad8 -/* 80181B9C 0017EAFC 13 C1 00 0C */ psq_lx f30, r1, r0, 0, qr0 -/* 80181BA0 0017EB00 CB C1 4A D0 */ lfd f30, 0x4ad0(r1) -/* 80181BA4 0017EB04 38 00 4A C8 */ li r0, 0x4ac8 -/* 80181BA8 0017EB08 13 A1 00 0C */ psq_lx f29, r1, r0, 0, qr0 -/* 80181BAC 0017EB0C CB A1 4A C0 */ lfd f29, 0x4ac0(r1) -/* 80181BB0 0017EB10 38 00 4A B8 */ li r0, 0x4ab8 -/* 80181BB4 0017EB14 13 81 00 0C */ psq_lx f28, r1, r0, 0, qr0 -/* 80181BB8 0017EB18 CB 81 4A B0 */ lfd f28, 0x4ab0(r1) -/* 80181BBC 0017EB1C 38 00 4A A8 */ li r0, 0x4aa8 -/* 80181BC0 0017EB20 13 61 00 0C */ psq_lx f27, r1, r0, 0, qr0 -/* 80181BC4 0017EB24 CB 61 4A A0 */ lfd f27, 0x4aa0(r1) -/* 80181BC8 0017EB28 BA 81 4A 70 */ lmw r20, 0x4a70(r1) -/* 80181BCC 0017EB2C 80 01 4A F4 */ lwz r0, 0x4af4(r1) -/* 80181BD0 0017EB30 7C 08 03 A6 */ mtlr r0 -/* 80181BD4 0017EB34 38 21 4A F0 */ addi r1, r1, 0x4af0 -/* 80181BD8 0017EB38 4E 80 00 20 */ blr - -.global "MovePlayer__14CGameCollisionFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>" -"MovePlayer__14CGameCollisionFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>": -/* 80181BDC 0017EB3C 94 21 FF 90 */ stwu r1, -0x70(r1) -/* 80181BE0 0017EB40 7C 08 02 A6 */ mflr r0 -/* 80181BE4 0017EB44 90 01 00 74 */ stw r0, 0x74(r1) -/* 80181BE8 0017EB48 DB E1 00 68 */ stfd f31, 0x68(r1) -/* 80181BEC 0017EB4C FF E0 08 90 */ fmr f31, f1 -/* 80181BF0 0017EB50 93 E1 00 64 */ stw r31, 0x64(r1) -/* 80181BF4 0017EB54 7C BF 2B 78 */ mr r31, r5 -/* 80181BF8 0017EB58 93 C1 00 60 */ stw r30, 0x60(r1) -/* 80181BFC 0017EB5C 7C 9E 23 78 */ mr r30, r4 -/* 80181C00 0017EB60 93 A1 00 5C */ stw r29, 0x5c(r1) -/* 80181C04 0017EB64 7C 7D 1B 78 */ mr r29, r3 -/* 80181C08 0017EB68 38 60 00 01 */ li r3, 1 -/* 80181C0C 0017EB6C 88 04 00 F8 */ lbz r0, 0xf8(r4) -/* 80181C10 0017EB70 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 80181C14 0017EB74 38 61 00 18 */ addi r3, r1, 0x18 -/* 80181C18 0017EB78 98 04 00 F8 */ stb r0, 0xf8(r4) -/* 80181C1C 0017EB7C 4B F9 9E 95 */ bl PredictAngularMotion__13CPhysicsActorCFf -/* 80181C20 0017EB80 7F C3 F3 78 */ mr r3, r30 -/* 80181C24 0017EB84 38 81 00 18 */ addi r4, r1, 0x18 -/* 80181C28 0017EB88 4B F9 98 ED */ bl AddMotionState__13CPhysicsActorFRC12CMotionState -/* 80181C2C 0017EB8C 88 1E 00 F9 */ lbz r0, 0xf9(r30) -/* 80181C30 0017EB90 28 00 00 00 */ cmplwi r0, 0 -/* 80181C34 0017EB94 41 82 00 3C */ beq lbl_80181C70 -/* 80181C38 0017EB98 3C 80 80 3E */ lis r4, lbl_803E3FE8@ha -/* 80181C3C 0017EB9C 3C 60 80 3E */ lis r3, lbl_803E3FF8@ha -/* 80181C40 0017EBA0 38 04 3F E8 */ addi r0, r4, lbl_803E3FE8@l -/* 80181C44 0017EBA4 FC 20 F8 90 */ fmr f1, f31 -/* 80181C48 0017EBA8 90 01 00 10 */ stw r0, 0x10(r1) -/* 80181C4C 0017EBAC 38 03 3F F8 */ addi r0, r3, lbl_803E3FF8@l -/* 80181C50 0017EBB0 7F A3 EB 78 */ mr r3, r29 -/* 80181C54 0017EBB4 7F C4 F3 78 */ mr r4, r30 -/* 80181C58 0017EBB8 90 01 00 10 */ stw r0, 0x10(r1) -/* 80181C5C 0017EBBC 7F E6 FB 78 */ mr r6, r31 -/* 80181C60 0017EBC0 38 A1 00 10 */ addi r5, r1, 0x10 -/* 80181C64 0017EBC4 93 C1 00 14 */ stw r30, 0x14(r1) -/* 80181C68 0017EBC8 4B FF F2 8D */ bl "MoveAndCollide__14CGameCollisionFR13CStateManagerR13CPhysicsActorfRC16ICollisionFilterPCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 80181C6C 0017EBCC 48 00 00 9C */ b lbl_80181D08 -lbl_80181C70: -/* 80181C70 0017EBD0 80 7E 00 68 */ lwz r3, 0x68(r30) -/* 80181C74 0017EBD4 38 00 00 20 */ li r0, 0x20 -/* 80181C78 0017EBD8 80 BE 00 6C */ lwz r5, 0x6c(r30) -/* 80181C7C 0017EBDC 38 80 00 00 */ li r4, 0 -/* 80181C80 0017EBE0 7C 60 00 38 */ and r0, r3, r0 -/* 80181C84 0017EBE4 7C A3 20 38 */ and r3, r5, r4 -/* 80181C88 0017EBE8 7C 63 22 78 */ xor r3, r3, r4 -/* 80181C8C 0017EBEC 7C 00 22 78 */ xor r0, r0, r4 -/* 80181C90 0017EBF0 7C 60 03 79 */ or. r0, r3, r0 -/* 80181C94 0017EBF4 41 82 00 40 */ beq lbl_80181CD4 -/* 80181C98 0017EBF8 88 02 80 E9 */ lbz r0, lbl_805A9E09@sda21(r2) -/* 80181C9C 0017EBFC 28 00 00 00 */ cmplwi r0, 0 -/* 80181CA0 0017EC00 41 82 00 1C */ beq lbl_80181CBC -/* 80181CA4 0017EC04 FC 20 F8 90 */ fmr f1, f31 -/* 80181CA8 0017EC08 7F A3 EB 78 */ mr r3, r29 -/* 80181CAC 0017EC0C 7F C4 F3 78 */ mr r4, r30 -/* 80181CB0 0017EC10 7F E5 FB 78 */ mr r5, r31 -/* 80181CB4 0017EC14 48 00 4A 49 */ bl "MoveGroundCollider_New__15CGroundMovementFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 80181CB8 0017EC18 48 00 00 50 */ b lbl_80181D08 -lbl_80181CBC: -/* 80181CBC 0017EC1C FC 20 F8 90 */ fmr f1, f31 -/* 80181CC0 0017EC20 7F A3 EB 78 */ mr r3, r29 -/* 80181CC4 0017EC24 7F C4 F3 78 */ mr r4, r30 -/* 80181CC8 0017EC28 7F E5 FB 78 */ mr r5, r31 -/* 80181CCC 0017EC2C 48 00 75 CD */ bl "MoveGroundCollider__15CGroundMovementFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 80181CD0 0017EC30 48 00 00 38 */ b lbl_80181D08 -lbl_80181CD4: -/* 80181CD4 0017EC34 3C 80 80 3E */ lis r4, lbl_803E3FE8@ha -/* 80181CD8 0017EC38 3C 60 80 3E */ lis r3, lbl_803E3FF8@ha -/* 80181CDC 0017EC3C 38 04 3F E8 */ addi r0, r4, lbl_803E3FE8@l -/* 80181CE0 0017EC40 FC 20 F8 90 */ fmr f1, f31 -/* 80181CE4 0017EC44 90 01 00 08 */ stw r0, 8(r1) -/* 80181CE8 0017EC48 38 03 3F F8 */ addi r0, r3, lbl_803E3FF8@l -/* 80181CEC 0017EC4C 7F A3 EB 78 */ mr r3, r29 -/* 80181CF0 0017EC50 7F C4 F3 78 */ mr r4, r30 -/* 80181CF4 0017EC54 90 01 00 08 */ stw r0, 8(r1) -/* 80181CF8 0017EC58 7F E6 FB 78 */ mr r6, r31 -/* 80181CFC 0017EC5C 38 A1 00 08 */ addi r5, r1, 8 -/* 80181D00 0017EC60 93 C1 00 0C */ stw r30, 0xc(r1) -/* 80181D04 0017EC64 4B FF F1 F1 */ bl "MoveAndCollide__14CGameCollisionFR13CStateManagerR13CPhysicsActorfRC16ICollisionFilterPCQ24rstl32reserved_vector<9TUniqueId,1024>" -lbl_80181D08: -/* 80181D08 0017EC68 88 1E 00 F8 */ lbz r0, 0xf8(r30) -/* 80181D0C 0017EC6C 38 60 00 00 */ li r3, 0 -/* 80181D10 0017EC70 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 80181D14 0017EC74 98 1E 00 F8 */ stb r0, 0xf8(r30) -/* 80181D18 0017EC78 CB E1 00 68 */ lfd f31, 0x68(r1) -/* 80181D1C 0017EC7C 83 E1 00 64 */ lwz r31, 0x64(r1) -/* 80181D20 0017EC80 83 C1 00 60 */ lwz r30, 0x60(r1) -/* 80181D24 0017EC84 83 A1 00 5C */ lwz r29, 0x5c(r1) -/* 80181D28 0017EC88 80 01 00 74 */ lwz r0, 0x74(r1) -/* 80181D2C 0017EC8C 7C 08 03 A6 */ mtlr r0 -/* 80181D30 0017EC90 38 21 00 70 */ addi r1, r1, 0x70 -/* 80181D34 0017EC94 4E 80 00 20 */ blr - -.global "Move__14CGameCollisionFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>" -"Move__14CGameCollisionFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>": -/* 80181D38 0017EC98 94 21 FF 30 */ stwu r1, -0xd0(r1) -/* 80181D3C 0017EC9C 7C 08 02 A6 */ mflr r0 -/* 80181D40 0017ECA0 90 01 00 D4 */ stw r0, 0xd4(r1) -/* 80181D44 0017ECA4 DB E1 00 C0 */ stfd f31, 0xc0(r1) -/* 80181D48 0017ECA8 F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 -/* 80181D4C 0017ECAC 93 E1 00 BC */ stw r31, 0xbc(r1) -/* 80181D50 0017ECB0 93 C1 00 B8 */ stw r30, 0xb8(r1) -/* 80181D54 0017ECB4 93 A1 00 B4 */ stw r29, 0xb4(r1) -/* 80181D58 0017ECB8 88 04 00 F8 */ lbz r0, 0xf8(r4) -/* 80181D5C 0017ECBC FF E0 08 90 */ fmr f31, f1 -/* 80181D60 0017ECC0 7C 9E 23 78 */ mr r30, r4 -/* 80181D64 0017ECC4 7C 7D 1B 78 */ mr r29, r3 -/* 80181D68 0017ECC8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80181D6C 0017ECCC 7C BF 2B 78 */ mr r31, r5 -/* 80181D70 0017ECD0 41 82 01 D8 */ beq lbl_80181F48 -/* 80181D74 0017ECD4 80 7E 00 68 */ lwz r3, 0x68(r30) -/* 80181D78 0017ECD8 38 00 00 20 */ li r0, 0x20 -/* 80181D7C 0017ECDC 80 BE 00 6C */ lwz r5, 0x6c(r30) -/* 80181D80 0017ECE0 38 80 00 00 */ li r4, 0 -/* 80181D84 0017ECE4 7C 60 00 38 */ and r0, r3, r0 -/* 80181D88 0017ECE8 7C A3 20 38 */ and r3, r5, r4 -/* 80181D8C 0017ECEC 7C 63 22 78 */ xor r3, r3, r4 -/* 80181D90 0017ECF0 7C 00 22 78 */ xor r0, r0, r4 -/* 80181D94 0017ECF4 7C 60 03 79 */ or. r0, r3, r0 -/* 80181D98 0017ECF8 40 82 00 18 */ bne lbl_80181DB0 -/* 80181D9C 0017ECFC 7F C3 F3 78 */ mr r3, r30 -/* 80181DA0 0017ED00 7F A4 EB 78 */ mr r4, r29 -/* 80181DA4 0017ED04 4B F9 96 41 */ bl WillMove__13CPhysicsActorFRC13CStateManager -/* 80181DA8 0017ED08 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80181DAC 0017ED0C 41 82 01 9C */ beq lbl_80181F48 -lbl_80181DB0: -/* 80181DB0 0017ED10 88 1E 00 F8 */ lbz r0, 0xf8(r30) -/* 80181DB4 0017ED14 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 80181DB8 0017ED18 41 82 00 20 */ beq lbl_80181DD8 -/* 80181DBC 0017ED1C FC 20 F8 90 */ fmr f1, f31 -/* 80181DC0 0017ED20 7F C4 F3 78 */ mr r4, r30 -/* 80181DC4 0017ED24 38 61 00 44 */ addi r3, r1, 0x44 -/* 80181DC8 0017ED28 4B F9 9C E9 */ bl PredictAngularMotion__13CPhysicsActorCFf -/* 80181DCC 0017ED2C 7F C3 F3 78 */ mr r3, r30 -/* 80181DD0 0017ED30 38 81 00 44 */ addi r4, r1, 0x44 -/* 80181DD4 0017ED34 4B F9 97 41 */ bl AddMotionState__13CPhysicsActorFRC12CMotionState -lbl_80181DD8: -/* 80181DD8 0017ED38 7F C3 F3 78 */ mr r3, r30 -/* 80181DDC 0017ED3C 4B F9 93 A1 */ bl UseCollisionImpulses__13CPhysicsActorFv -/* 80181DE0 0017ED40 80 BE 00 68 */ lwz r5, 0x68(r30) -/* 80181DE4 0017ED44 38 80 00 00 */ li r4, 0 -/* 80181DE8 0017ED48 80 DE 00 6C */ lwz r6, 0x6c(r30) -/* 80181DEC 0017ED4C 3C 60 00 08 */ lis r3, 8 -/* 80181DF0 0017ED50 7C A0 20 38 */ and r0, r5, r4 -/* 80181DF4 0017ED54 7C C3 18 38 */ and r3, r6, r3 -/* 80181DF8 0017ED58 7C 63 22 78 */ xor r3, r3, r4 -/* 80181DFC 0017ED5C 7C 00 22 78 */ xor r0, r0, r4 -/* 80181E00 0017ED60 7C 60 03 79 */ or. r0, r3, r0 -/* 80181E04 0017ED64 41 82 00 08 */ beq lbl_80181E0C -/* 80181E08 0017ED68 38 80 00 01 */ li r4, 1 -lbl_80181E0C: -/* 80181E0C 0017ED6C 54 80 06 3F */ clrlwi. r0, r4, 0x18 -/* 80181E10 0017ED70 41 82 00 A0 */ beq lbl_80181EB0 -/* 80181E14 0017ED74 38 80 00 00 */ li r4, 0 -/* 80181E18 0017ED78 38 00 00 01 */ li r0, 1 -/* 80181E1C 0017ED7C 7C C3 20 38 */ and r3, r6, r4 -/* 80181E20 0017ED80 7C A0 00 38 */ and r0, r5, r0 -/* 80181E24 0017ED84 7C 63 22 78 */ xor r3, r3, r4 -/* 80181E28 0017ED88 7C 00 22 78 */ xor r0, r0, r4 -/* 80181E2C 0017ED8C 7C 60 03 79 */ or. r0, r3, r0 -/* 80181E30 0017ED90 41 82 00 1C */ beq lbl_80181E4C -/* 80181E34 0017ED94 FC 20 F8 90 */ fmr f1, f31 -/* 80181E38 0017ED98 7F A3 EB 78 */ mr r3, r29 -/* 80181E3C 0017ED9C 7F C4 F3 78 */ mr r4, r30 -/* 80181E40 0017EDA0 7F E5 FB 78 */ mr r5, r31 -/* 80181E44 0017EDA4 4B FF FD 99 */ bl "MovePlayer__14CGameCollisionFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 80181E48 0017EDA8 48 00 00 F4 */ b lbl_80181F3C -lbl_80181E4C: -/* 80181E4C 0017EDAC 38 00 00 20 */ li r0, 0x20 -/* 80181E50 0017EDB0 7C A0 00 38 */ and r0, r5, r0 -/* 80181E54 0017EDB4 7C 00 22 78 */ xor r0, r0, r4 -/* 80181E58 0017EDB8 7C 60 03 79 */ or. r0, r3, r0 -/* 80181E5C 0017EDBC 41 82 00 1C */ beq lbl_80181E78 -/* 80181E60 0017EDC0 FC 20 F8 90 */ fmr f1, f31 -/* 80181E64 0017EDC4 7F A3 EB 78 */ mr r3, r29 -/* 80181E68 0017EDC8 7F C4 F3 78 */ mr r4, r30 -/* 80181E6C 0017EDCC 7F E5 FB 78 */ mr r5, r31 -/* 80181E70 0017EDD0 48 00 74 29 */ bl "MoveGroundCollider__15CGroundMovementFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 80181E74 0017EDD4 48 00 00 C8 */ b lbl_80181F3C -lbl_80181E78: -/* 80181E78 0017EDD8 3C 80 80 3E */ lis r4, lbl_803E3FE8@ha -/* 80181E7C 0017EDDC 3C 60 80 3E */ lis r3, lbl_803E4008@ha -/* 80181E80 0017EDE0 38 04 3F E8 */ addi r0, r4, lbl_803E3FE8@l -/* 80181E84 0017EDE4 FC 20 F8 90 */ fmr f1, f31 -/* 80181E88 0017EDE8 90 01 00 08 */ stw r0, 8(r1) -/* 80181E8C 0017EDEC 38 03 40 08 */ addi r0, r3, lbl_803E4008@l -/* 80181E90 0017EDF0 7F A3 EB 78 */ mr r3, r29 -/* 80181E94 0017EDF4 7F C4 F3 78 */ mr r4, r30 -/* 80181E98 0017EDF8 90 01 00 08 */ stw r0, 8(r1) -/* 80181E9C 0017EDFC 7F E6 FB 78 */ mr r6, r31 -/* 80181EA0 0017EE00 38 A1 00 08 */ addi r5, r1, 8 -/* 80181EA4 0017EE04 93 C1 00 0C */ stw r30, 0xc(r1) -/* 80181EA8 0017EE08 4B FF F0 4D */ bl "MoveAndCollide__14CGameCollisionFR13CStateManagerR13CPhysicsActorfRC16ICollisionFilterPCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 80181EAC 0017EE0C 48 00 00 90 */ b lbl_80181F3C -lbl_80181EB0: -/* 80181EB0 0017EE10 FC 20 F8 90 */ fmr f1, f31 -/* 80181EB4 0017EE14 7F C4 F3 78 */ mr r4, r30 -/* 80181EB8 0017EE18 38 61 00 10 */ addi r3, r1, 0x10 -/* 80181EBC 0017EE1C 4B F9 99 4D */ bl PredictMotion_Internal__13CPhysicsActorCFf -/* 80181EC0 0017EE20 C1 81 00 10 */ lfs f12, 0x10(r1) -/* 80181EC4 0017EE24 7F C3 F3 78 */ mr r3, r30 -/* 80181EC8 0017EE28 C1 61 00 14 */ lfs f11, 0x14(r1) -/* 80181ECC 0017EE2C 38 81 00 78 */ addi r4, r1, 0x78 -/* 80181ED0 0017EE30 C1 41 00 18 */ lfs f10, 0x18(r1) -/* 80181ED4 0017EE34 C1 21 00 1C */ lfs f9, 0x1c(r1) -/* 80181ED8 0017EE38 C1 01 00 20 */ lfs f8, 0x20(r1) -/* 80181EDC 0017EE3C C0 E1 00 24 */ lfs f7, 0x24(r1) -/* 80181EE0 0017EE40 C0 C1 00 28 */ lfs f6, 0x28(r1) -/* 80181EE4 0017EE44 C0 A1 00 2C */ lfs f5, 0x2c(r1) -/* 80181EE8 0017EE48 C0 81 00 30 */ lfs f4, 0x30(r1) -/* 80181EEC 0017EE4C C0 61 00 34 */ lfs f3, 0x34(r1) -/* 80181EF0 0017EE50 C0 41 00 38 */ lfs f2, 0x38(r1) -/* 80181EF4 0017EE54 C0 21 00 3C */ lfs f1, 0x3c(r1) -/* 80181EF8 0017EE58 C0 01 00 40 */ lfs f0, 0x40(r1) -/* 80181EFC 0017EE5C D1 81 00 78 */ stfs f12, 0x78(r1) -/* 80181F00 0017EE60 D1 61 00 7C */ stfs f11, 0x7c(r1) -/* 80181F04 0017EE64 D1 41 00 80 */ stfs f10, 0x80(r1) -/* 80181F08 0017EE68 D1 21 00 84 */ stfs f9, 0x84(r1) -/* 80181F0C 0017EE6C D1 01 00 88 */ stfs f8, 0x88(r1) -/* 80181F10 0017EE70 D0 E1 00 8C */ stfs f7, 0x8c(r1) -/* 80181F14 0017EE74 D0 C1 00 90 */ stfs f6, 0x90(r1) -/* 80181F18 0017EE78 D0 A1 00 94 */ stfs f5, 0x94(r1) -/* 80181F1C 0017EE7C D0 81 00 98 */ stfs f4, 0x98(r1) -/* 80181F20 0017EE80 D0 61 00 9C */ stfs f3, 0x9c(r1) -/* 80181F24 0017EE84 D0 41 00 A0 */ stfs f2, 0xa0(r1) -/* 80181F28 0017EE88 D0 21 00 A4 */ stfs f1, 0xa4(r1) -/* 80181F2C 0017EE8C D0 01 00 A8 */ stfs f0, 0xa8(r1) -/* 80181F30 0017EE90 4B F9 95 E5 */ bl AddMotionState__13CPhysicsActorFRC12CMotionState -/* 80181F34 0017EE94 7F C3 F3 78 */ mr r3, r30 -/* 80181F38 0017EE98 4B F9 93 7D */ bl ClearForcesAndTorques__13CPhysicsActorFv -lbl_80181F3C: -/* 80181F3C 0017EE9C 7F A3 EB 78 */ mr r3, r29 -/* 80181F40 0017EEA0 7F C4 F3 78 */ mr r4, r30 -/* 80181F44 0017EEA4 4B EC A8 01 */ bl UpdateActorInSortedLists__13CStateManagerFR6CActor -lbl_80181F48: -/* 80181F48 0017EEA8 E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 -/* 80181F4C 0017EEAC 80 01 00 D4 */ lwz r0, 0xd4(r1) -/* 80181F50 0017EEB0 CB E1 00 C0 */ lfd f31, 0xc0(r1) -/* 80181F54 0017EEB4 83 E1 00 BC */ lwz r31, 0xbc(r1) -/* 80181F58 0017EEB8 83 C1 00 B8 */ lwz r30, 0xb8(r1) -/* 80181F5C 0017EEBC 83 A1 00 B4 */ lwz r29, 0xb4(r1) -/* 80181F60 0017EEC0 7C 08 03 A6 */ mtlr r0 -/* 80181F64 0017EEC4 38 21 00 D0 */ addi r1, r1, 0xd0 -/* 80181F68 0017EEC8 4E 80 00 20 */ blr - -.global CollideWithStaticBodyNoRot__14CGameCollisionFR13CPhysicsActorRC13CMaterialListRC13CMaterialListRC13CUnitVector3ffb -CollideWithStaticBodyNoRot__14CGameCollisionFR13CPhysicsActorRC13CMaterialListRC13CMaterialListRC13CUnitVector3ffb: -/* 80181F6C 0017EECC 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 80181F70 0017EED0 7C 08 02 A6 */ mflr r0 -/* 80181F74 0017EED4 90 01 00 54 */ stw r0, 0x54(r1) -/* 80181F78 0017EED8 DB E1 00 40 */ stfd f31, 0x40(r1) -/* 80181F7C 0017EEDC F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 -/* 80181F80 0017EEE0 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 80181F84 0017EEE4 C0 66 00 00 */ lfs f3, 0(r6) -/* 80181F88 0017EEE8 54 E0 06 3F */ clrlwi. r0, r7, 0x18 -/* 80181F8C 0017EEEC C0 46 00 04 */ lfs f2, 4(r6) -/* 80181F90 0017EEF0 FF E0 08 90 */ fmr f31, f1 -/* 80181F94 0017EEF4 C0 06 00 08 */ lfs f0, 8(r6) -/* 80181F98 0017EEF8 7C 7F 1B 78 */ mr r31, r3 -/* 80181F9C 0017EEFC D0 61 00 20 */ stfs f3, 0x20(r1) -/* 80181FA0 0017EF00 D0 41 00 24 */ stfs f2, 0x24(r1) -/* 80181FA4 0017EF04 D0 01 00 28 */ stfs f0, 0x28(r1) -/* 80181FA8 0017EF08 41 82 00 58 */ beq lbl_80182000 -/* 80181FAC 0017EF0C 80 64 00 00 */ lwz r3, 0(r4) -/* 80181FB0 0017EF10 38 00 00 01 */ li r0, 1 -/* 80181FB4 0017EF14 80 84 00 04 */ lwz r4, 4(r4) -/* 80181FB8 0017EF18 38 C0 00 00 */ li r6, 0 -/* 80181FBC 0017EF1C 7C 60 00 38 */ and r0, r3, r0 -/* 80181FC0 0017EF20 7C 83 30 38 */ and r3, r4, r6 -/* 80181FC4 0017EF24 7C 63 32 78 */ xor r3, r3, r6 -/* 80181FC8 0017EF28 7C 00 32 78 */ xor r0, r0, r6 -/* 80181FCC 0017EF2C 7C 60 03 79 */ or. r0, r3, r0 -/* 80181FD0 0017EF30 41 82 00 30 */ beq lbl_80182000 -/* 80181FD4 0017EF34 80 05 00 00 */ lwz r0, 0(r5) -/* 80181FD8 0017EF38 3C 60 80 00 */ lis r3, 0x8000 -/* 80181FDC 0017EF3C 80 85 00 04 */ lwz r4, 4(r5) -/* 80181FE0 0017EF40 7C 00 30 38 */ and r0, r0, r6 -/* 80181FE4 0017EF44 7C 83 18 38 */ and r3, r4, r3 -/* 80181FE8 0017EF48 7C 63 32 78 */ xor r3, r3, r6 -/* 80181FEC 0017EF4C 7C 00 32 78 */ xor r0, r0, r6 -/* 80181FF0 0017EF50 7C 60 03 79 */ or. r0, r3, r0 -/* 80181FF4 0017EF54 40 82 00 0C */ bne lbl_80182000 -/* 80181FF8 0017EF58 C0 02 A2 A8 */ lfs f0, lbl_805ABFC8@sda21(r2) -/* 80181FFC 0017EF5C D0 01 00 28 */ stfs f0, 0x28(r1) -lbl_80182000: -/* 80182000 0017EF60 38 61 00 20 */ addi r3, r1, 0x20 -/* 80182004 0017EF64 48 19 26 F5 */ bl CanBeNormalized__9CVector3fCFv -/* 80182008 0017EF68 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8018200C 0017EF6C 41 82 00 D8 */ beq lbl_801820E4 -/* 80182010 0017EF70 38 61 00 20 */ addi r3, r1, 0x20 -/* 80182014 0017EF74 48 19 28 E5 */ bl Normalize__9CVector3fFv -/* 80182018 0017EF78 C0 1F 01 3C */ lfs f0, 0x13c(r31) -/* 8018201C 0017EF7C C0 81 00 24 */ lfs f4, 0x24(r1) -/* 80182020 0017EF80 C0 3F 01 38 */ lfs f1, 0x138(r31) -/* 80182024 0017EF84 EC 00 01 32 */ fmuls f0, f0, f4 -/* 80182028 0017EF88 C0 61 00 20 */ lfs f3, 0x20(r1) -/* 8018202C 0017EF8C C0 5F 01 40 */ lfs f2, 0x140(r31) -/* 80182030 0017EF90 C0 A1 00 28 */ lfs f5, 0x28(r1) -/* 80182034 0017EF94 EC 21 00 FA */ fmadds f1, f1, f3, f0 -/* 80182038 0017EF98 C0 02 A2 D8 */ lfs f0, lbl_805ABFF8@sda21(r2) -/* 8018203C 0017EF9C EC 42 09 7A */ fmadds f2, f2, f5, f1 -/* 80182040 0017EFA0 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 80182044 0017EFA4 40 80 00 54 */ bge lbl_80182098 -/* 80182048 0017EFA8 FC 60 F8 90 */ fmr f3, f31 -/* 8018204C 0017EFAC C0 3F 00 E8 */ lfs f1, 0xe8(r31) -/* 80182050 0017EFB0 48 00 08 C1 */ bl CollisionImpulseFiniteVsInfinite__Ffff -/* 80182054 0017EFB4 C0 61 00 24 */ lfs f3, 0x24(r1) -/* 80182058 0017EFB8 C0 41 00 28 */ lfs f2, 0x28(r1) -/* 8018205C 0017EFBC C0 01 00 20 */ lfs f0, 0x20(r1) -/* 80182060 0017EFC0 EC 61 00 F2 */ fmuls f3, f1, f3 -/* 80182064 0017EFC4 EC 41 00 B2 */ fmuls f2, f1, f2 -/* 80182068 0017EFC8 EC 01 00 32 */ fmuls f0, f1, f0 -/* 8018206C 0017EFCC D0 61 00 18 */ stfs f3, 0x18(r1) -/* 80182070 0017EFD0 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 80182074 0017EFD4 D0 41 00 1C */ stfs f2, 0x1c(r1) -/* 80182078 0017EFD8 4B E9 94 BD */ bl Identity__10CAxisAngleFv -/* 8018207C 0017EFDC 7C 65 1B 78 */ mr r5, r3 -/* 80182080 0017EFE0 7F E3 FB 78 */ mr r3, r31 -/* 80182084 0017EFE4 38 81 00 14 */ addi r4, r1, 0x14 -/* 80182088 0017EFE8 4B F9 A3 11 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle -/* 8018208C 0017EFEC 7F E3 FB 78 */ mr r3, r31 -/* 80182090 0017EFF0 4B F9 90 ED */ bl UseCollisionImpulses__13CPhysicsActorFv -/* 80182094 0017EFF4 48 00 00 50 */ b lbl_801820E4 -lbl_80182098: -/* 80182098 0017EFF8 C0 02 A2 D0 */ lfs f0, lbl_805ABFF0@sda21(r2) -/* 8018209C 0017EFFC FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 801820A0 0017F000 40 80 00 44 */ bge lbl_801820E4 -/* 801820A4 0017F004 C0 22 A2 DC */ lfs f1, lbl_805ABFFC@sda21(r2) -/* 801820A8 0017F008 C0 1F 00 E8 */ lfs f0, 0xe8(r31) -/* 801820AC 0017F00C EC 01 00 32 */ fmuls f0, f1, f0 -/* 801820B0 0017F010 EC 40 00 F2 */ fmuls f2, f0, f3 -/* 801820B4 0017F014 EC 20 01 32 */ fmuls f1, f0, f4 -/* 801820B8 0017F018 EC 00 01 72 */ fmuls f0, f0, f5 -/* 801820BC 0017F01C D0 41 00 08 */ stfs f2, 8(r1) -/* 801820C0 0017F020 D0 21 00 0C */ stfs f1, 0xc(r1) -/* 801820C4 0017F024 D0 01 00 10 */ stfs f0, 0x10(r1) -/* 801820C8 0017F028 4B E9 94 6D */ bl Identity__10CAxisAngleFv -/* 801820CC 0017F02C 7C 65 1B 78 */ mr r5, r3 -/* 801820D0 0017F030 7F E3 FB 78 */ mr r3, r31 -/* 801820D4 0017F034 38 81 00 08 */ addi r4, r1, 8 -/* 801820D8 0017F038 4B F9 A2 C1 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle -/* 801820DC 0017F03C 7F E3 FB 78 */ mr r3, r31 -/* 801820E0 0017F040 4B F9 90 9D */ bl UseCollisionImpulses__13CPhysicsActorFv -lbl_801820E4: -/* 801820E4 0017F044 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 -/* 801820E8 0017F048 80 01 00 54 */ lwz r0, 0x54(r1) -/* 801820EC 0017F04C CB E1 00 40 */ lfd f31, 0x40(r1) -/* 801820F0 0017F050 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 801820F4 0017F054 7C 08 03 A6 */ mtlr r0 -/* 801820F8 0017F058 38 21 00 50 */ addi r1, r1, 0x50 -/* 801820FC 0017F05C 4E 80 00 20 */ blr - -.global CollideWithDynamicBodyNoRot__14CGameCollisionFR13CPhysicsActorR13CPhysicsActorRC14CCollisionInfofb -CollideWithDynamicBodyNoRot__14CGameCollisionFR13CPhysicsActorR13CPhysicsActorRC14CCollisionInfofb: -/* 80182100 0017F060 94 21 FE C0 */ stwu r1, -0x140(r1) -/* 80182104 0017F064 7C 08 02 A6 */ mflr r0 -/* 80182108 0017F068 90 01 01 44 */ stw r0, 0x144(r1) -/* 8018210C 0017F06C DB E1 01 30 */ stfd f31, 0x130(r1) -/* 80182110 0017F070 F3 E1 01 38 */ psq_st f31, 312(r1), 0, qr0 -/* 80182114 0017F074 DB C1 01 20 */ stfd f30, 0x120(r1) -/* 80182118 0017F078 F3 C1 01 28 */ psq_st f30, 296(r1), 0, qr0 -/* 8018211C 0017F07C DB A1 01 10 */ stfd f29, 0x110(r1) -/* 80182120 0017F080 F3 A1 01 18 */ psq_st f29, 280(r1), 0, qr0 -/* 80182124 0017F084 DB 81 01 00 */ stfd f28, 0x100(r1) -/* 80182128 0017F088 F3 81 01 08 */ psq_st f28, 264(r1), 0, qr0 -/* 8018212C 0017F08C DB 61 00 F0 */ stfd f27, 0xf0(r1) -/* 80182130 0017F090 F3 61 00 F8 */ psq_st f27, 248(r1), 0, qr0 -/* 80182134 0017F094 DB 41 00 E0 */ stfd f26, 0xe0(r1) -/* 80182138 0017F098 F3 41 00 E8 */ psq_st f26, 232(r1), 0, qr0 -/* 8018213C 0017F09C DB 21 00 D0 */ stfd f25, 0xd0(r1) -/* 80182140 0017F0A0 F3 21 00 D8 */ psq_st f25, 216(r1), 0, qr0 -/* 80182144 0017F0A4 DB 01 00 C0 */ stfd f24, 0xc0(r1) -/* 80182148 0017F0A8 F3 01 00 C8 */ psq_st f24, 200(r1), 0, qr0 -/* 8018214C 0017F0AC DA E1 00 B0 */ stfd f23, 0xb0(r1) -/* 80182150 0017F0B0 F2 E1 00 B8 */ psq_st f23, 184(r1), 0, qr0 -/* 80182154 0017F0B4 93 E1 00 AC */ stw r31, 0xac(r1) -/* 80182158 0017F0B8 93 C1 00 A8 */ stw r30, 0xa8(r1) -/* 8018215C 0017F0BC 93 A1 00 A4 */ stw r29, 0xa4(r1) -/* 80182160 0017F0C0 54 C0 06 3F */ clrlwi. r0, r6, 0x18 -/* 80182164 0017F0C4 FF 00 08 90 */ fmr f24, f1 -/* 80182168 0017F0C8 C3 A5 00 48 */ lfs f29, 0x48(r5) -/* 8018216C 0017F0CC 7C 7E 1B 78 */ mr r30, r3 -/* 80182170 0017F0D0 C3 85 00 4C */ lfs f28, 0x4c(r5) -/* 80182174 0017F0D4 7C 9F 23 78 */ mr r31, r4 -/* 80182178 0017F0D8 C3 65 00 50 */ lfs f27, 0x50(r5) -/* 8018217C 0017F0DC 41 82 00 08 */ beq lbl_80182184 -/* 80182180 0017F0E0 C3 62 A2 A8 */ lfs f27, lbl_805ABFC8@sda21(r2) -lbl_80182184: -/* 80182184 0017F0E4 7F C4 F3 78 */ mr r4, r30 -/* 80182188 0017F0E8 7F E5 FB 78 */ mr r5, r31 -/* 8018218C 0017F0EC 38 61 00 6C */ addi r3, r1, 0x6c -/* 80182190 0017F0F0 4B FF E1 7D */ bl GetActorRelativeVelocities__14CGameCollisionFPC13CPhysicsActorPC13CPhysicsActor -/* 80182194 0017F0F4 C0 01 00 70 */ lfs f0, 0x70(r1) -/* 80182198 0017F0F8 7F C3 F3 78 */ mr r3, r30 -/* 8018219C 0017F0FC C0 21 00 6C */ lfs f1, 0x6c(r1) -/* 801821A0 0017F100 EC 00 07 32 */ fmuls f0, f0, f28 -/* 801821A4 0017F104 C0 41 00 74 */ lfs f2, 0x74(r1) -/* 801821A8 0017F108 C3 FE 00 E8 */ lfs f31, 0xe8(r30) -/* 801821AC 0017F10C C3 DF 00 E8 */ lfs f30, 0xe8(r31) -/* 801821B0 0017F110 EC 01 07 7A */ fmadds f0, f1, f29, f0 -/* 801821B4 0017F114 EE E2 06 FA */ fmadds f23, f2, f27, f0 -/* 801821B8 0017F118 4B F9 83 01 */ bl GetMaximumCollisionVelocity__13CPhysicsActorCFv -/* 801821BC 0017F11C D0 21 00 10 */ stfs f1, 0x10(r1) -/* 801821C0 0017F120 38 7E 01 38 */ addi r3, r30, 0x138 -/* 801821C4 0017F124 48 19 26 F5 */ bl Magnitude__9CVector3fCFv -/* 801821C8 0017F128 FC 40 08 18 */ frsp f2, f1 -/* 801821CC 0017F12C C0 01 00 10 */ lfs f0, 0x10(r1) -/* 801821D0 0017F130 D0 21 00 14 */ stfs f1, 0x14(r1) -/* 801821D4 0017F134 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 801821D8 0017F138 40 80 00 0C */ bge lbl_801821E4 -/* 801821DC 0017F13C 38 61 00 10 */ addi r3, r1, 0x10 -/* 801821E0 0017F140 48 00 00 08 */ b lbl_801821E8 -lbl_801821E4: -/* 801821E4 0017F144 38 61 00 14 */ addi r3, r1, 0x14 -lbl_801821E8: -/* 801821E8 0017F148 C3 43 00 00 */ lfs f26, 0(r3) -/* 801821EC 0017F14C 7F E3 FB 78 */ mr r3, r31 -/* 801821F0 0017F150 4B F9 82 C9 */ bl GetMaximumCollisionVelocity__13CPhysicsActorCFv -/* 801821F4 0017F154 D0 21 00 08 */ stfs f1, 8(r1) -/* 801821F8 0017F158 38 7F 01 38 */ addi r3, r31, 0x138 -/* 801821FC 0017F15C 48 19 26 BD */ bl Magnitude__9CVector3fCFv -/* 80182200 0017F160 FC 40 08 18 */ frsp f2, f1 -/* 80182204 0017F164 C0 01 00 08 */ lfs f0, 8(r1) -/* 80182208 0017F168 D0 21 00 0C */ stfs f1, 0xc(r1) -/* 8018220C 0017F16C FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 80182210 0017F170 40 80 00 0C */ bge lbl_8018221C -/* 80182214 0017F174 38 C1 00 08 */ addi r6, r1, 8 -/* 80182218 0017F178 48 00 00 08 */ b lbl_80182220 -lbl_8018221C: -/* 8018221C 0017F17C 38 C1 00 0C */ addi r6, r1, 0xc -lbl_80182220: -/* 80182220 0017F180 80 7E 00 68 */ lwz r3, 0x68(r30) -/* 80182224 0017F184 38 00 08 00 */ li r0, 0x800 -/* 80182228 0017F188 80 BE 00 6C */ lwz r5, 0x6c(r30) -/* 8018222C 0017F18C 38 80 00 00 */ li r4, 0 -/* 80182230 0017F190 7C 60 00 38 */ and r0, r3, r0 -/* 80182234 0017F194 C3 26 00 00 */ lfs f25, 0(r6) -/* 80182238 0017F198 7C A3 20 38 */ and r3, r5, r4 -/* 8018223C 0017F19C 38 C0 00 01 */ li r6, 1 -/* 80182240 0017F1A0 7C 63 22 78 */ xor r3, r3, r4 -/* 80182244 0017F1A4 7C 00 22 78 */ xor r0, r0, r4 -/* 80182248 0017F1A8 7C 60 03 79 */ or. r0, r3, r0 -/* 8018224C 0017F1AC 40 82 00 14 */ bne lbl_80182260 -/* 80182250 0017F1B0 C0 02 A2 A8 */ lfs f0, lbl_805ABFC8@sda21(r2) -/* 80182254 0017F1B4 FC 00 F8 00 */ fcmpu cr0, f0, f31 -/* 80182258 0017F1B8 41 82 00 08 */ beq lbl_80182260 -/* 8018225C 0017F1BC 7C 86 23 78 */ mr r6, r4 -lbl_80182260: -/* 80182260 0017F1C0 80 7F 00 68 */ lwz r3, 0x68(r31) -/* 80182264 0017F1C4 38 00 08 00 */ li r0, 0x800 -/* 80182268 0017F1C8 80 BF 00 6C */ lwz r5, 0x6c(r31) -/* 8018226C 0017F1CC 38 80 00 00 */ li r4, 0 -/* 80182270 0017F1D0 7C 60 00 38 */ and r0, r3, r0 -/* 80182274 0017F1D4 3B A0 00 01 */ li r29, 1 -/* 80182278 0017F1D8 7C A3 20 38 */ and r3, r5, r4 -/* 8018227C 0017F1DC 7C 63 22 78 */ xor r3, r3, r4 -/* 80182280 0017F1E0 7C 00 22 78 */ xor r0, r0, r4 -/* 80182284 0017F1E4 7C 60 03 79 */ or. r0, r3, r0 -/* 80182288 0017F1E8 40 82 00 14 */ bne lbl_8018229C -/* 8018228C 0017F1EC C0 02 A2 A8 */ lfs f0, lbl_805ABFC8@sda21(r2) -/* 80182290 0017F1F0 FC 00 F0 00 */ fcmpu cr0, f0, f30 -/* 80182294 0017F1F4 41 82 00 08 */ beq lbl_8018229C -/* 80182298 0017F1F8 7C 9D 23 78 */ mr r29, r4 -lbl_8018229C: -/* 8018229C 0017F1FC C0 02 A2 D8 */ lfs f0, lbl_805ABFF8@sda21(r2) -/* 801822A0 0017F200 FC 17 00 40 */ fcmpo cr0, f23, f0 -/* 801822A4 0017F204 40 80 01 4C */ bge lbl_801823F0 -/* 801822A8 0017F208 54 C0 06 3F */ clrlwi. r0, r6, 0x18 -/* 801822AC 0017F20C 40 82 00 C4 */ bne lbl_80182370 -/* 801822B0 0017F210 57 A0 06 3F */ clrlwi. r0, r29, 0x18 -/* 801822B4 0017F214 40 82 00 7C */ bne lbl_80182330 -/* 801822B8 0017F218 FC 20 F8 90 */ fmr f1, f31 -/* 801822BC 0017F21C FC 40 F0 90 */ fmr f2, f30 -/* 801822C0 0017F220 FC 60 B8 90 */ fmr f3, f23 -/* 801822C4 0017F224 FC 80 C0 90 */ fmr f4, f24 -/* 801822C8 0017F228 48 00 06 61 */ bl CollisionImpulseFiniteVsFinite__Fffff -/* 801822CC 0017F22C FF 00 08 90 */ fmr f24, f1 -/* 801822D0 0017F230 EC 58 07 72 */ fmuls f2, f24, f29 -/* 801822D4 0017F234 EC 38 07 32 */ fmuls f1, f24, f28 -/* 801822D8 0017F238 EC 18 06 F2 */ fmuls f0, f24, f27 -/* 801822DC 0017F23C D0 41 00 60 */ stfs f2, 0x60(r1) -/* 801822E0 0017F240 D0 21 00 64 */ stfs f1, 0x64(r1) -/* 801822E4 0017F244 D0 01 00 68 */ stfs f0, 0x68(r1) -/* 801822E8 0017F248 4B E9 92 4D */ bl Identity__10CAxisAngleFv -/* 801822EC 0017F24C 7C 65 1B 78 */ mr r5, r3 -/* 801822F0 0017F250 7F C3 F3 78 */ mr r3, r30 -/* 801822F4 0017F254 38 81 00 60 */ addi r4, r1, 0x60 -/* 801822F8 0017F258 4B F9 A0 A1 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle -/* 801822FC 0017F25C FC 00 C0 50 */ fneg f0, f24 -/* 80182300 0017F260 EC 40 07 72 */ fmuls f2, f0, f29 -/* 80182304 0017F264 EC 20 07 32 */ fmuls f1, f0, f28 -/* 80182308 0017F268 EC 00 06 F2 */ fmuls f0, f0, f27 -/* 8018230C 0017F26C D0 41 00 54 */ stfs f2, 0x54(r1) -/* 80182310 0017F270 D0 21 00 58 */ stfs f1, 0x58(r1) -/* 80182314 0017F274 D0 01 00 5C */ stfs f0, 0x5c(r1) -/* 80182318 0017F278 4B E9 92 1D */ bl Identity__10CAxisAngleFv -/* 8018231C 0017F27C 7C 65 1B 78 */ mr r5, r3 -/* 80182320 0017F280 7F E3 FB 78 */ mr r3, r31 -/* 80182324 0017F284 38 81 00 54 */ addi r4, r1, 0x54 -/* 80182328 0017F288 4B F9 A0 71 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle -/* 8018232C 0017F28C 48 00 00 B0 */ b lbl_801823DC -lbl_80182330: -/* 80182330 0017F290 FC 20 F8 90 */ fmr f1, f31 -/* 80182334 0017F294 FC 40 B8 90 */ fmr f2, f23 -/* 80182338 0017F298 FC 60 C0 90 */ fmr f3, f24 -/* 8018233C 0017F29C 48 00 05 D5 */ bl CollisionImpulseFiniteVsInfinite__Ffff -/* 80182340 0017F2A0 EC 61 07 72 */ fmuls f3, f1, f29 -/* 80182344 0017F2A4 EC 41 07 32 */ fmuls f2, f1, f28 -/* 80182348 0017F2A8 EC 01 06 F2 */ fmuls f0, f1, f27 -/* 8018234C 0017F2AC D0 61 00 90 */ stfs f3, 0x90(r1) -/* 80182350 0017F2B0 D0 41 00 94 */ stfs f2, 0x94(r1) -/* 80182354 0017F2B4 D0 01 00 98 */ stfs f0, 0x98(r1) -/* 80182358 0017F2B8 4B E9 91 DD */ bl Identity__10CAxisAngleFv -/* 8018235C 0017F2BC 7C 65 1B 78 */ mr r5, r3 -/* 80182360 0017F2C0 7F C3 F3 78 */ mr r3, r30 -/* 80182364 0017F2C4 38 81 00 90 */ addi r4, r1, 0x90 -/* 80182368 0017F2C8 4B F9 A0 31 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle -/* 8018236C 0017F2CC 48 00 00 70 */ b lbl_801823DC -lbl_80182370: -/* 80182370 0017F2D0 57 A0 06 3F */ clrlwi. r0, r29, 0x18 -/* 80182374 0017F2D4 40 82 00 48 */ bne lbl_801823BC -/* 80182378 0017F2D8 FC 20 F0 90 */ fmr f1, f30 -/* 8018237C 0017F2DC FC 40 B8 90 */ fmr f2, f23 -/* 80182380 0017F2E0 FC 60 C0 90 */ fmr f3, f24 -/* 80182384 0017F2E4 48 00 05 8D */ bl CollisionImpulseFiniteVsInfinite__Ffff -/* 80182388 0017F2E8 FC 00 08 50 */ fneg f0, f1 -/* 8018238C 0017F2EC EC 40 07 72 */ fmuls f2, f0, f29 -/* 80182390 0017F2F0 EC 20 07 32 */ fmuls f1, f0, f28 -/* 80182394 0017F2F4 EC 00 06 F2 */ fmuls f0, f0, f27 -/* 80182398 0017F2F8 D0 41 00 48 */ stfs f2, 0x48(r1) -/* 8018239C 0017F2FC D0 21 00 4C */ stfs f1, 0x4c(r1) -/* 801823A0 0017F300 D0 01 00 50 */ stfs f0, 0x50(r1) -/* 801823A4 0017F304 4B E9 91 91 */ bl Identity__10CAxisAngleFv -/* 801823A8 0017F308 7C 65 1B 78 */ mr r5, r3 -/* 801823AC 0017F30C 7F E3 FB 78 */ mr r3, r31 -/* 801823B0 0017F310 38 81 00 48 */ addi r4, r1, 0x48 -/* 801823B4 0017F314 4B F9 9F E5 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle -/* 801823B8 0017F318 48 00 00 24 */ b lbl_801823DC -lbl_801823BC: -/* 801823BC 0017F31C 3C 80 80 5A */ lis r4, skZero3f@ha -/* 801823C0 0017F320 7F C3 F3 78 */ mr r3, r30 -/* 801823C4 0017F324 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 801823C8 0017F328 4B F9 88 D9 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -/* 801823CC 0017F32C 3C 80 80 5A */ lis r4, skZero3f@ha -/* 801823D0 0017F330 7F E3 FB 78 */ mr r3, r31 -/* 801823D4 0017F334 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 801823D8 0017F338 4B F9 88 C9 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -lbl_801823DC: -/* 801823DC 0017F33C 7F C3 F3 78 */ mr r3, r30 -/* 801823E0 0017F340 4B F9 8D 9D */ bl UseCollisionImpulses__13CPhysicsActorFv -/* 801823E4 0017F344 7F E3 FB 78 */ mr r3, r31 -/* 801823E8 0017F348 4B F9 8D 95 */ bl UseCollisionImpulses__13CPhysicsActorFv -/* 801823EC 0017F34C 48 00 00 D0 */ b lbl_801824BC -lbl_801823F0: -/* 801823F0 0017F350 C0 02 A2 E0 */ lfs f0, lbl_805AC000@sda21(r2) -/* 801823F4 0017F354 FC 17 00 40 */ fcmpo cr0, f23, f0 -/* 801823F8 0017F358 40 80 00 C4 */ bge lbl_801824BC -/* 801823FC 0017F35C 54 C0 06 3F */ clrlwi. r0, r6, 0x18 -/* 80182400 0017F360 40 82 00 5C */ bne lbl_8018245C -/* 80182404 0017F364 38 60 00 00 */ li r3, 0 -/* 80182408 0017F368 4B F3 20 F1 */ bl IsUser__Fi -/* 8018240C 0017F36C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80182410 0017F370 41 82 00 10 */ beq lbl_80182420 -/* 80182414 0017F374 80 6D A4 60 */ lwz r3, lbl_805A9020@sda21(r13) -/* 80182418 0017F378 38 03 00 01 */ addi r0, r3, 1 -/* 8018241C 0017F37C 90 0D A4 60 */ stw r0, lbl_805A9020@sda21(r13) -lbl_80182420: -/* 80182420 0017F380 C0 02 A2 DC */ lfs f0, lbl_805ABFFC@sda21(r2) -/* 80182424 0017F384 EC 00 07 F2 */ fmuls f0, f0, f31 -/* 80182428 0017F388 EC 40 07 72 */ fmuls f2, f0, f29 -/* 8018242C 0017F38C EC 20 07 32 */ fmuls f1, f0, f28 -/* 80182430 0017F390 EC 00 06 F2 */ fmuls f0, f0, f27 -/* 80182434 0017F394 D0 41 00 84 */ stfs f2, 0x84(r1) -/* 80182438 0017F398 D0 21 00 88 */ stfs f1, 0x88(r1) -/* 8018243C 0017F39C D0 01 00 8C */ stfs f0, 0x8c(r1) -/* 80182440 0017F3A0 4B E9 90 F5 */ bl Identity__10CAxisAngleFv -/* 80182444 0017F3A4 7C 65 1B 78 */ mr r5, r3 -/* 80182448 0017F3A8 7F C3 F3 78 */ mr r3, r30 -/* 8018244C 0017F3AC 38 81 00 84 */ addi r4, r1, 0x84 -/* 80182450 0017F3B0 4B F9 9F 49 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle -/* 80182454 0017F3B4 7F C3 F3 78 */ mr r3, r30 -/* 80182458 0017F3B8 4B F9 8D 25 */ bl UseCollisionImpulses__13CPhysicsActorFv -lbl_8018245C: -/* 8018245C 0017F3BC 57 A0 06 3F */ clrlwi. r0, r29, 0x18 -/* 80182460 0017F3C0 40 82 00 5C */ bne lbl_801824BC -/* 80182464 0017F3C4 38 60 00 00 */ li r3, 0 -/* 80182468 0017F3C8 4B F3 20 91 */ bl IsUser__Fi -/* 8018246C 0017F3CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80182470 0017F3D0 41 82 00 10 */ beq lbl_80182480 -/* 80182474 0017F3D4 80 6D A4 60 */ lwz r3, lbl_805A9020@sda21(r13) -/* 80182478 0017F3D8 38 03 00 01 */ addi r0, r3, 1 -/* 8018247C 0017F3DC 90 0D A4 60 */ stw r0, lbl_805A9020@sda21(r13) -lbl_80182480: -/* 80182480 0017F3E0 C0 02 A2 E4 */ lfs f0, lbl_805AC004@sda21(r2) -/* 80182484 0017F3E4 EC 00 07 B2 */ fmuls f0, f0, f30 -/* 80182488 0017F3E8 EC 40 07 72 */ fmuls f2, f0, f29 -/* 8018248C 0017F3EC EC 20 07 32 */ fmuls f1, f0, f28 -/* 80182490 0017F3F0 EC 00 06 F2 */ fmuls f0, f0, f27 -/* 80182494 0017F3F4 D0 41 00 78 */ stfs f2, 0x78(r1) -/* 80182498 0017F3F8 D0 21 00 7C */ stfs f1, 0x7c(r1) -/* 8018249C 0017F3FC D0 01 00 80 */ stfs f0, 0x80(r1) -/* 801824A0 0017F400 4B E9 90 95 */ bl Identity__10CAxisAngleFv -/* 801824A4 0017F404 7C 65 1B 78 */ mr r5, r3 -/* 801824A8 0017F408 7F E3 FB 78 */ mr r3, r31 -/* 801824AC 0017F40C 38 81 00 78 */ addi r4, r1, 0x78 -/* 801824B0 0017F410 4B F9 9E E9 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle -/* 801824B4 0017F414 7F E3 FB 78 */ mr r3, r31 -/* 801824B8 0017F418 4B F9 8C C5 */ bl UseCollisionImpulses__13CPhysicsActorFv -lbl_801824BC: -/* 801824BC 0017F41C 38 7E 01 38 */ addi r3, r30, 0x138 -/* 801824C0 0017F420 48 19 23 F9 */ bl Magnitude__9CVector3fCFv -/* 801824C4 0017F424 FC 01 D0 40 */ fcmpo cr0, f1, f26 -/* 801824C8 0017F428 40 81 00 5C */ ble lbl_80182524 -/* 801824CC 0017F42C C0 02 A2 D4 */ lfs f0, lbl_805ABFF4@sda21(r2) -/* 801824D0 0017F430 7F C3 F3 78 */ mr r3, r30 -/* 801824D4 0017F434 C0 5E 01 3C */ lfs f2, 0x13c(r30) -/* 801824D8 0017F438 38 81 00 3C */ addi r4, r1, 0x3c -/* 801824DC 0017F43C EC 80 08 24 */ fdivs f4, f0, f1 -/* 801824E0 0017F440 C0 3E 01 40 */ lfs f1, 0x140(r30) -/* 801824E4 0017F444 C0 1E 01 38 */ lfs f0, 0x138(r30) -/* 801824E8 0017F448 EC 64 00 B2 */ fmuls f3, f4, f2 -/* 801824EC 0017F44C EC 44 00 72 */ fmuls f2, f4, f1 -/* 801824F0 0017F450 EC 24 00 32 */ fmuls f1, f4, f0 -/* 801824F4 0017F454 EC 9A 00 F2 */ fmuls f4, f26, f3 -/* 801824F8 0017F458 D0 61 00 34 */ stfs f3, 0x34(r1) -/* 801824FC 0017F45C EC 7A 00 B2 */ fmuls f3, f26, f2 -/* 80182500 0017F460 EC 1A 00 72 */ fmuls f0, f26, f1 -/* 80182504 0017F464 D0 21 00 30 */ stfs f1, 0x30(r1) -/* 80182508 0017F468 D0 41 00 38 */ stfs f2, 0x38(r1) -/* 8018250C 0017F46C D0 01 00 3C */ stfs f0, 0x3c(r1) -/* 80182510 0017F470 D0 81 00 40 */ stfs f4, 0x40(r1) -/* 80182514 0017F474 D0 61 00 44 */ stfs f3, 0x44(r1) -/* 80182518 0017F478 4B F9 87 89 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -/* 8018251C 0017F47C 38 60 00 00 */ li r3, 0 -/* 80182520 0017F480 4B F3 1F D9 */ bl IsUser__Fi -lbl_80182524: -/* 80182524 0017F484 38 7F 01 38 */ addi r3, r31, 0x138 -/* 80182528 0017F488 48 19 23 91 */ bl Magnitude__9CVector3fCFv -/* 8018252C 0017F48C FC 01 C8 40 */ fcmpo cr0, f1, f25 -/* 80182530 0017F490 40 81 00 5C */ ble lbl_8018258C -/* 80182534 0017F494 C0 02 A2 D4 */ lfs f0, lbl_805ABFF4@sda21(r2) -/* 80182538 0017F498 7F E3 FB 78 */ mr r3, r31 -/* 8018253C 0017F49C C0 5F 01 3C */ lfs f2, 0x13c(r31) -/* 80182540 0017F4A0 38 81 00 24 */ addi r4, r1, 0x24 -/* 80182544 0017F4A4 EC 80 08 24 */ fdivs f4, f0, f1 -/* 80182548 0017F4A8 C0 3F 01 40 */ lfs f1, 0x140(r31) -/* 8018254C 0017F4AC C0 1F 01 38 */ lfs f0, 0x138(r31) -/* 80182550 0017F4B0 EC 64 00 B2 */ fmuls f3, f4, f2 -/* 80182554 0017F4B4 EC 44 00 72 */ fmuls f2, f4, f1 -/* 80182558 0017F4B8 EC 24 00 32 */ fmuls f1, f4, f0 -/* 8018255C 0017F4BC EC 99 00 F2 */ fmuls f4, f25, f3 -/* 80182560 0017F4C0 D0 61 00 1C */ stfs f3, 0x1c(r1) -/* 80182564 0017F4C4 EC 79 00 B2 */ fmuls f3, f25, f2 -/* 80182568 0017F4C8 EC 19 00 72 */ fmuls f0, f25, f1 -/* 8018256C 0017F4CC D0 21 00 18 */ stfs f1, 0x18(r1) -/* 80182570 0017F4D0 D0 41 00 20 */ stfs f2, 0x20(r1) -/* 80182574 0017F4D4 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 80182578 0017F4D8 D0 81 00 28 */ stfs f4, 0x28(r1) -/* 8018257C 0017F4DC D0 61 00 2C */ stfs f3, 0x2c(r1) -/* 80182580 0017F4E0 4B F9 87 21 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -/* 80182584 0017F4E4 38 60 00 00 */ li r3, 0 -/* 80182588 0017F4E8 4B F3 1F 71 */ bl IsUser__Fi -lbl_8018258C: -/* 8018258C 0017F4EC E3 E1 01 38 */ psq_l f31, 312(r1), 0, qr0 -/* 80182590 0017F4F0 CB E1 01 30 */ lfd f31, 0x130(r1) -/* 80182594 0017F4F4 E3 C1 01 28 */ psq_l f30, 296(r1), 0, qr0 -/* 80182598 0017F4F8 CB C1 01 20 */ lfd f30, 0x120(r1) -/* 8018259C 0017F4FC E3 A1 01 18 */ psq_l f29, 280(r1), 0, qr0 -/* 801825A0 0017F500 CB A1 01 10 */ lfd f29, 0x110(r1) -/* 801825A4 0017F504 E3 81 01 08 */ psq_l f28, 264(r1), 0, qr0 -/* 801825A8 0017F508 CB 81 01 00 */ lfd f28, 0x100(r1) -/* 801825AC 0017F50C E3 61 00 F8 */ psq_l f27, 248(r1), 0, qr0 -/* 801825B0 0017F510 CB 61 00 F0 */ lfd f27, 0xf0(r1) -/* 801825B4 0017F514 E3 41 00 E8 */ psq_l f26, 232(r1), 0, qr0 -/* 801825B8 0017F518 CB 41 00 E0 */ lfd f26, 0xe0(r1) -/* 801825BC 0017F51C E3 21 00 D8 */ psq_l f25, 216(r1), 0, qr0 -/* 801825C0 0017F520 CB 21 00 D0 */ lfd f25, 0xd0(r1) -/* 801825C4 0017F524 E3 01 00 C8 */ psq_l f24, 200(r1), 0, qr0 -/* 801825C8 0017F528 CB 01 00 C0 */ lfd f24, 0xc0(r1) -/* 801825CC 0017F52C E2 E1 00 B8 */ psq_l f23, 184(r1), 0, qr0 -/* 801825D0 0017F530 CA E1 00 B0 */ lfd f23, 0xb0(r1) -/* 801825D4 0017F534 83 E1 00 AC */ lwz r31, 0xac(r1) -/* 801825D8 0017F538 83 C1 00 A8 */ lwz r30, 0xa8(r1) -/* 801825DC 0017F53C 80 01 01 44 */ lwz r0, 0x144(r1) -/* 801825E0 0017F540 83 A1 00 A4 */ lwz r29, 0xa4(r1) -/* 801825E4 0017F544 7C 08 03 A6 */ mtlr r0 -/* 801825E8 0017F548 38 21 01 40 */ addi r1, r1, 0x140 -/* 801825EC 0017F54C 4E 80 00 20 */ blr - -.global ResolveCollisions__14CGameCollisionFR13CPhysicsActorP13CPhysicsActorRC18CCollisionInfoList -ResolveCollisions__14CGameCollisionFR13CPhysicsActorP13CPhysicsActorRC18CCollisionInfoList: -/* 801825F0 0017F550 94 21 FF 50 */ stwu r1, -0xb0(r1) -/* 801825F4 0017F554 7C 08 02 A6 */ mflr r0 -/* 801825F8 0017F558 90 01 00 B4 */ stw r0, 0xb4(r1) -/* 801825FC 0017F55C DB E1 00 A0 */ stfd f31, 0xa0(r1) -/* 80182600 0017F560 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 -/* 80182604 0017F564 BF 01 00 80 */ stmw r24, 0x80(r1) -/* 80182608 0017F568 7C BA 2B 78 */ mr r26, r5 -/* 8018260C 0017F56C 7C 78 1B 78 */ mr r24, r3 -/* 80182610 0017F570 7C 99 23 78 */ mr r25, r4 -/* 80182614 0017F574 3B C1 00 60 */ addi r30, r1, 0x60 -/* 80182618 0017F578 3B FA 00 04 */ addi r31, r26, 4 -/* 8018261C 0017F57C 3B A1 00 58 */ addi r29, r1, 0x58 -/* 80182620 0017F580 3B 81 00 50 */ addi r28, r1, 0x50 -/* 80182624 0017F584 3B 60 00 00 */ li r27, 0 -/* 80182628 0017F588 48 00 00 7C */ b lbl_801826A4 -lbl_8018262C: -/* 8018262C 0017F58C 7F E4 FB 78 */ mr r4, r31 -/* 80182630 0017F590 38 61 00 18 */ addi r3, r1, 0x18 -/* 80182634 0017F594 4B F6 EE 6D */ bl __ct__14CCollisionInfoFRC14CCollisionInfo -/* 80182638 0017F598 7F 03 C3 78 */ mr r3, r24 -/* 8018263C 0017F59C 4B F9 7E 9D */ bl GetCoefficientOfRestitutionModifier__13CPhysicsActorCFv -/* 80182640 0017F5A0 FF E0 08 90 */ fmr f31, f1 -/* 80182644 0017F5A4 38 61 00 18 */ addi r3, r1, 0x18 -/* 80182648 0017F5A8 48 00 03 05 */ bl GetCoefficientOfRestitution__14CGameCollisionFRC14CCollisionInfo -/* 8018264C 0017F5AC 28 19 00 00 */ cmplwi r25, 0 -/* 80182650 0017F5B0 EF E1 F8 2A */ fadds f31, f1, f31 -/* 80182654 0017F5B4 41 82 00 20 */ beq lbl_80182674 -/* 80182658 0017F5B8 FC 20 F8 90 */ fmr f1, f31 -/* 8018265C 0017F5BC 7F 03 C3 78 */ mr r3, r24 -/* 80182660 0017F5C0 7F 24 CB 78 */ mr r4, r25 -/* 80182664 0017F5C4 38 A1 00 18 */ addi r5, r1, 0x18 -/* 80182668 0017F5C8 38 C0 00 00 */ li r6, 0 -/* 8018266C 0017F5CC 4B FF FA 95 */ bl CollideWithDynamicBodyNoRot__14CGameCollisionFR13CPhysicsActorR13CPhysicsActorRC14CCollisionInfofb -/* 80182670 0017F5D0 48 00 00 2C */ b lbl_8018269C -lbl_80182674: -/* 80182674 0017F5D4 7F C4 F3 78 */ mr r4, r30 -/* 80182678 0017F5D8 38 61 00 08 */ addi r3, r1, 8 -/* 8018267C 0017F5DC 48 19 17 55 */ bl __ct__11CUnitVectorFRC9CVector3f -/* 80182680 0017F5E0 FC 20 F8 90 */ fmr f1, f31 -/* 80182684 0017F5E4 7C 66 1B 78 */ mr r6, r3 -/* 80182688 0017F5E8 7F 03 C3 78 */ mr r3, r24 -/* 8018268C 0017F5EC 7F 84 E3 78 */ mr r4, r28 -/* 80182690 0017F5F0 7F A5 EB 78 */ mr r5, r29 -/* 80182694 0017F5F4 38 E0 00 00 */ li r7, 0 -/* 80182698 0017F5F8 4B FF F8 D5 */ bl CollideWithStaticBodyNoRot__14CGameCollisionFR13CPhysicsActorRC13CMaterialListRC13CMaterialListRC13CUnitVector3ffb -lbl_8018269C: -/* 8018269C 0017F5FC 3B FF 00 60 */ addi r31, r31, 0x60 -/* 801826A0 0017F600 3B 7B 00 01 */ addi r27, r27, 1 -lbl_801826A4: -/* 801826A4 0017F604 80 1A 00 00 */ lwz r0, 0(r26) -/* 801826A8 0017F608 7C 1B 00 00 */ cmpw r27, r0 -/* 801826AC 0017F60C 41 80 FF 80 */ blt lbl_8018262C -/* 801826B0 0017F610 E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 -/* 801826B4 0017F614 CB E1 00 A0 */ lfd f31, 0xa0(r1) -/* 801826B8 0017F618 BB 01 00 80 */ lmw r24, 0x80(r1) -/* 801826BC 0017F61C 80 01 00 B4 */ lwz r0, 0xb4(r1) -/* 801826C0 0017F620 7C 08 03 A6 */ mtlr r0 -/* 801826C4 0017F624 38 21 00 B0 */ addi r1, r1, 0xb0 -/* 801826C8 0017F628 4E 80 00 20 */ blr - -.global GetMinExtentForCollisionPrimitive__14CGameCollisionFRC19CCollisionPrimitive -GetMinExtentForCollisionPrimitive__14CGameCollisionFRC19CCollisionPrimitive: -/* 801826CC 0017F62C 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 801826D0 0017F630 7C 08 02 A6 */ mflr r0 -/* 801826D4 0017F634 90 01 00 34 */ stw r0, 0x34(r1) -/* 801826D8 0017F638 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 801826DC 0017F63C 7C 7F 1B 78 */ mr r31, r3 -/* 801826E0 0017F640 81 83 00 00 */ lwz r12, 0(r3) -/* 801826E4 0017F644 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 801826E8 0017F648 7D 89 03 A6 */ mtctr r12 -/* 801826EC 0017F64C 4E 80 04 21 */ bctrl -/* 801826F0 0017F650 3C 03 AC B0 */ addis r0, r3, 0xacb0 -/* 801826F4 0017F654 28 00 48 52 */ cmplwi r0, 0x4852 -/* 801826F8 0017F658 40 82 00 14 */ bne lbl_8018270C -/* 801826FC 0017F65C C0 22 A2 E8 */ lfs f1, lbl_805AC008@sda21(r2) -/* 80182700 0017F660 C0 1F 00 1C */ lfs f0, 0x1c(r31) -/* 80182704 0017F664 EC 21 00 32 */ fmuls f1, f1, f0 -/* 80182708 0017F668 48 00 00 EC */ b lbl_801827F4 -lbl_8018270C: -/* 8018270C 0017F66C 7F E3 FB 78 */ mr r3, r31 -/* 80182710 0017F670 81 9F 00 00 */ lwz r12, 0(r31) -/* 80182714 0017F674 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 80182718 0017F678 7D 89 03 A6 */ mtctr r12 -/* 8018271C 0017F67C 4E 80 04 21 */ bctrl -/* 80182720 0017F680 3C 03 BE BF */ addis r0, r3, 0xbebf -/* 80182724 0017F684 28 00 42 58 */ cmplwi r0, 0x4258 -/* 80182728 0017F688 40 82 00 6C */ bne lbl_80182794 -/* 8018272C 0017F68C C0 7F 00 20 */ lfs f3, 0x20(r31) -/* 80182730 0017F690 38 61 00 14 */ addi r3, r1, 0x14 -/* 80182734 0017F694 C0 5F 00 14 */ lfs f2, 0x14(r31) -/* 80182738 0017F698 C0 3F 00 1C */ lfs f1, 0x1c(r31) -/* 8018273C 0017F69C C0 1F 00 10 */ lfs f0, 0x10(r31) -/* 80182740 0017F6A0 EC 63 10 28 */ fsubs f3, f3, f2 -/* 80182744 0017F6A4 C0 5F 00 24 */ lfs f2, 0x24(r31) -/* 80182748 0017F6A8 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8018274C 0017F6AC C0 3F 00 18 */ lfs f1, 0x18(r31) -/* 80182750 0017F6B0 D0 61 00 14 */ stfs f3, 0x14(r1) -/* 80182754 0017F6B4 EC 22 08 28 */ fsubs f1, f2, f1 -/* 80182758 0017F6B8 FC 03 00 40 */ fcmpo cr0, f3, f0 -/* 8018275C 0017F6BC D0 01 00 10 */ stfs f0, 0x10(r1) -/* 80182760 0017F6C0 D0 21 00 18 */ stfs f1, 0x18(r1) -/* 80182764 0017F6C4 40 80 00 08 */ bge lbl_8018276C -/* 80182768 0017F6C8 48 00 00 08 */ b lbl_80182770 -lbl_8018276C: -/* 8018276C 0017F6CC 38 61 00 10 */ addi r3, r1, 0x10 -lbl_80182770: -/* 80182770 0017F6D0 C0 21 00 18 */ lfs f1, 0x18(r1) -/* 80182774 0017F6D4 38 81 00 18 */ addi r4, r1, 0x18 -/* 80182778 0017F6D8 C0 03 00 00 */ lfs f0, 0(r3) -/* 8018277C 0017F6DC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80182780 0017F6E0 40 80 00 08 */ bge lbl_80182788 -/* 80182784 0017F6E4 48 00 00 08 */ b lbl_8018278C -lbl_80182788: -/* 80182788 0017F6E8 7C 64 1B 78 */ mr r4, r3 -lbl_8018278C: -/* 8018278C 0017F6EC C0 24 00 00 */ lfs f1, 0(r4) -/* 80182790 0017F6F0 48 00 00 64 */ b lbl_801827F4 -lbl_80182794: -/* 80182794 0017F6F4 7F E3 FB 78 */ mr r3, r31 -/* 80182798 0017F6F8 81 9F 00 00 */ lwz r12, 0(r31) -/* 8018279C 0017F6FC 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 801827A0 0017F700 7D 89 03 A6 */ mtctr r12 -/* 801827A4 0017F704 4E 80 04 21 */ bctrl -/* 801827A8 0017F708 3C 03 BE BE */ addis r0, r3, 0xbebe -/* 801827AC 0017F70C 28 00 53 48 */ cmplwi r0, 0x5348 -/* 801827B0 0017F710 40 82 00 40 */ bne lbl_801827F0 -/* 801827B4 0017F714 38 7F 00 38 */ addi r3, r31, 0x38 -/* 801827B8 0017F718 4B FF FF 15 */ bl GetMinExtentForCollisionPrimitive__14CGameCollisionFRC19CCollisionPrimitive -/* 801827BC 0017F71C D0 21 00 08 */ stfs f1, 8(r1) -/* 801827C0 0017F720 38 7F 00 10 */ addi r3, r31, 0x10 -/* 801827C4 0017F724 4B FF FF 09 */ bl GetMinExtentForCollisionPrimitive__14CGameCollisionFRC19CCollisionPrimitive -/* 801827C8 0017F728 FC 00 08 18 */ frsp f0, f1 -/* 801827CC 0017F72C C0 41 00 08 */ lfs f2, 8(r1) -/* 801827D0 0017F730 D0 21 00 0C */ stfs f1, 0xc(r1) -/* 801827D4 0017F734 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 801827D8 0017F738 40 80 00 0C */ bge lbl_801827E4 -/* 801827DC 0017F73C 38 61 00 08 */ addi r3, r1, 8 -/* 801827E0 0017F740 48 00 00 08 */ b lbl_801827E8 -lbl_801827E4: -/* 801827E4 0017F744 38 61 00 0C */ addi r3, r1, 0xc -lbl_801827E8: -/* 801827E8 0017F748 C0 23 00 00 */ lfs f1, 0(r3) -/* 801827EC 0017F74C 48 00 00 08 */ b lbl_801827F4 -lbl_801827F0: -/* 801827F0 0017F750 C0 22 A2 D4 */ lfs f1, lbl_805ABFF4@sda21(r2) -lbl_801827F4: -/* 801827F4 0017F754 80 01 00 34 */ lwz r0, 0x34(r1) -/* 801827F8 0017F758 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 801827FC 0017F75C 7C 08 03 A6 */ mtlr r0 -/* 80182800 0017F760 38 21 00 30 */ addi r1, r1, 0x30 -/* 80182804 0017F764 4E 80 00 20 */ blr - -.global CanBlock__14CGameCollisionFRC13CMaterialListRC9CVector3f -CanBlock__14CGameCollisionFRC13CMaterialListRC9CVector3f: -/* 80182808 0017F768 80 C3 00 00 */ lwz r6, 0(r3) -/* 8018280C 0017F76C 38 00 00 02 */ li r0, 2 -/* 80182810 0017F770 80 E3 00 04 */ lwz r7, 4(r3) -/* 80182814 0017F774 38 A0 00 00 */ li r5, 0 -/* 80182818 0017F778 7C C0 00 38 */ and r0, r6, r0 -/* 8018281C 0017F77C 7C E3 28 38 */ and r3, r7, r5 -/* 80182820 0017F780 7C 63 2A 78 */ xor r3, r3, r5 -/* 80182824 0017F784 7C 00 2A 78 */ xor r0, r0, r5 -/* 80182828 0017F788 7C 60 03 79 */ or. r0, r3, r0 -/* 8018282C 0017F78C 41 82 00 08 */ beq lbl_80182834 -/* 80182830 0017F790 38 A0 00 01 */ li r5, 1 -lbl_80182834: -/* 80182834 0017F794 54 A0 06 3F */ clrlwi. r0, r5, 0x18 -/* 80182838 0017F798 41 82 00 2C */ beq lbl_80182864 -/* 8018283C 0017F79C 38 A0 00 00 */ li r5, 0 -/* 80182840 0017F7A0 3C 00 00 80 */ lis r0, 0x80 -/* 80182844 0017F7A4 7C E3 28 38 */ and r3, r7, r5 -/* 80182848 0017F7A8 7C C0 00 38 */ and r0, r6, r0 -/* 8018284C 0017F7AC 7C 63 2A 78 */ xor r3, r3, r5 -/* 80182850 0017F7B0 7C 00 2A 78 */ xor r0, r0, r5 -/* 80182854 0017F7B4 7C 60 03 79 */ or. r0, r3, r0 -/* 80182858 0017F7B8 40 82 00 0C */ bne lbl_80182864 -/* 8018285C 0017F7BC 38 60 00 00 */ li r3, 0 -/* 80182860 0017F7C0 4E 80 00 20 */ blr -lbl_80182864: -/* 80182864 0017F7C4 38 A0 00 00 */ li r5, 0 -/* 80182868 0017F7C8 3C 00 04 00 */ lis r0, 0x400 -/* 8018286C 0017F7CC 7C E3 28 38 */ and r3, r7, r5 -/* 80182870 0017F7D0 7C C0 00 38 */ and r0, r6, r0 -/* 80182874 0017F7D4 7C 63 2A 78 */ xor r3, r3, r5 -/* 80182878 0017F7D8 7C 00 2A 78 */ xor r0, r0, r5 -/* 8018287C 0017F7DC 7C 60 03 79 */ or. r0, r3, r0 -/* 80182880 0017F7E0 41 82 00 0C */ beq lbl_8018288C -/* 80182884 0017F7E4 38 60 00 00 */ li r3, 0 -/* 80182888 0017F7E8 4E 80 00 20 */ blr -lbl_8018288C: -/* 8018288C 0017F7EC 3C 60 80 00 */ lis r3, 0x8000 -/* 80182890 0017F7F0 7C C0 28 38 */ and r0, r6, r5 -/* 80182894 0017F7F4 7C E3 18 38 */ and r3, r7, r3 -/* 80182898 0017F7F8 7C 63 2A 78 */ xor r3, r3, r5 -/* 8018289C 0017F7FC 7C 00 2A 78 */ xor r0, r0, r5 -/* 801828A0 0017F800 7C 60 03 79 */ or. r0, r3, r0 -/* 801828A4 0017F804 41 82 00 0C */ beq lbl_801828B0 -/* 801828A8 0017F808 38 60 00 01 */ li r3, 1 -/* 801828AC 0017F80C 4E 80 00 20 */ blr -lbl_801828B0: -/* 801828B0 0017F810 C0 24 00 08 */ lfs f1, 8(r4) -/* 801828B4 0017F814 C0 02 A2 EC */ lfs f0, lbl_805AC00C@sda21(r2) -/* 801828B8 0017F818 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801828BC 0017F81C 7C 00 00 26 */ mfcr r0 -/* 801828C0 0017F820 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f -/* 801828C4 0017F824 4E 80 00 20 */ blr - -.global IsFloor__14CGameCollisionFRC13CMaterialListRC9CVector3f -IsFloor__14CGameCollisionFRC13CMaterialListRC9CVector3f: -/* 801828C8 0017F828 80 03 00 00 */ lwz r0, 0(r3) -/* 801828CC 0017F82C 38 A0 00 00 */ li r5, 0 -/* 801828D0 0017F830 80 C3 00 04 */ lwz r6, 4(r3) -/* 801828D4 0017F834 3C 60 80 00 */ lis r3, 0x8000 -/* 801828D8 0017F838 7C 00 28 38 */ and r0, r0, r5 -/* 801828DC 0017F83C 7C C3 18 38 */ and r3, r6, r3 -/* 801828E0 0017F840 7C 63 2A 78 */ xor r3, r3, r5 -/* 801828E4 0017F844 7C 00 2A 78 */ xor r0, r0, r5 -/* 801828E8 0017F848 7C 60 03 79 */ or. r0, r3, r0 -/* 801828EC 0017F84C 41 82 00 0C */ beq lbl_801828F8 -/* 801828F0 0017F850 38 60 00 01 */ li r3, 1 -/* 801828F4 0017F854 4E 80 00 20 */ blr -lbl_801828F8: -/* 801828F8 0017F858 C0 24 00 08 */ lfs f1, 8(r4) -/* 801828FC 0017F85C C0 02 A2 EC */ lfs f0, lbl_805AC00C@sda21(r2) -/* 80182900 0017F860 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80182904 0017F864 7C 00 00 26 */ mfcr r0 -/* 80182908 0017F868 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f -/* 8018290C 0017F86C 4E 80 00 20 */ blr - -.global CollisionImpulseFiniteVsInfinite__Ffff -CollisionImpulseFiniteVsInfinite__Ffff: -/* 80182910 0017F870 C0 02 A2 D4 */ lfs f0, lbl_805ABFF4@sda21(r2) -/* 80182914 0017F874 EC 00 18 2A */ fadds f0, f0, f3 -/* 80182918 0017F878 FC 00 00 50 */ fneg f0, f0 -/* 8018291C 0017F87C EC 00 00 B2 */ fmuls f0, f0, f2 -/* 80182920 0017F880 EC 21 00 32 */ fmuls f1, f1, f0 -/* 80182924 0017F884 4E 80 00 20 */ blr - -.global CollisionImpulseFiniteVsFinite__Fffff -CollisionImpulseFiniteVsFinite__Fffff: -/* 80182928 0017F888 C0 A2 A2 D4 */ lfs f5, lbl_805ABFF4@sda21(r2) -/* 8018292C 0017F88C EC 25 08 24 */ fdivs f1, f5, f1 -/* 80182930 0017F890 EC 05 10 24 */ fdivs f0, f5, f2 -/* 80182934 0017F894 EC 45 20 2A */ fadds f2, f5, f4 -/* 80182938 0017F898 EC 01 00 2A */ fadds f0, f1, f0 -/* 8018293C 0017F89C FC 20 10 50 */ fneg f1, f2 -/* 80182940 0017F8A0 EC 21 00 F2 */ fmuls f1, f1, f3 -/* 80182944 0017F8A4 EC 21 00 24 */ fdivs f1, f1, f0 -/* 80182948 0017F8A8 4E 80 00 20 */ blr - -.global GetCoefficientOfRestitution__14CGameCollisionFRC14CCollisionInfo -GetCoefficientOfRestitution__14CGameCollisionFRC14CCollisionInfo: -/* 8018294C 0017F8AC C0 22 A2 A8 */ lfs f1, lbl_805ABFC8@sda21(r2) -/* 80182950 0017F8B0 4E 80 00 20 */ blr - -.global ShowCollisionResults__14CGameCollisionFR18CCollisionInfoListRC6CColor -ShowCollisionResults__14CGameCollisionFR18CCollisionInfoListRC6CColor: -/* 80182954 0017F8B4 4E 80 00 20 */ blr - -.global SendMaterialMessage__14CGameCollisionFR13CStateManagerRC13CMaterialListR6CActor -SendMaterialMessage__14CGameCollisionFR13CStateManagerRC13CMaterialListR6CActor: -/* 80182958 0017F8B8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8018295C 0017F8BC 7C 08 02 A6 */ mflr r0 -/* 80182960 0017F8C0 38 C0 00 00 */ li r6, 0 -/* 80182964 0017F8C4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80182968 0017F8C8 80 E4 00 00 */ lwz r7, 0(r4) -/* 8018296C 0017F8CC 81 04 00 04 */ lwz r8, 4(r4) -/* 80182970 0017F8D0 38 80 00 10 */ li r4, 0x10 -/* 80182974 0017F8D4 7C E0 30 38 */ and r0, r7, r6 -/* 80182978 0017F8D8 7D 04 20 38 */ and r4, r8, r4 -/* 8018297C 0017F8DC 7C 84 32 78 */ xor r4, r4, r6 -/* 80182980 0017F8E0 7C 00 32 78 */ xor r0, r0, r6 -/* 80182984 0017F8E4 7C 80 03 79 */ or. r0, r4, r0 -/* 80182988 0017F8E8 41 82 00 08 */ beq lbl_80182990 -/* 8018298C 0017F8EC 38 C0 00 01 */ li r6, 1 -lbl_80182990: -/* 80182990 0017F8F0 54 C0 06 3F */ clrlwi. r0, r6, 0x18 -/* 80182994 0017F8F4 41 82 00 0C */ beq lbl_801829A0 -/* 80182998 0017F8F8 38 C0 00 1B */ li r6, 0x1b -/* 8018299C 0017F8FC 48 00 00 30 */ b lbl_801829CC -lbl_801829A0: -/* 801829A0 0017F900 38 00 10 00 */ li r0, 0x1000 -/* 801829A4 0017F904 38 C0 00 00 */ li r6, 0 -/* 801829A8 0017F908 7D 04 00 38 */ and r4, r8, r0 -/* 801829AC 0017F90C 7C E0 30 38 */ and r0, r7, r6 -/* 801829B0 0017F910 7C 84 32 78 */ xor r4, r4, r6 -/* 801829B4 0017F914 7C 00 32 78 */ xor r0, r0, r6 -/* 801829B8 0017F918 7C 80 03 79 */ or. r0, r4, r0 -/* 801829BC 0017F91C 41 82 00 0C */ beq lbl_801829C8 -/* 801829C0 0017F920 38 C0 00 1C */ li r6, 0x1c -/* 801829C4 0017F924 48 00 00 08 */ b lbl_801829CC -lbl_801829C8: -/* 801829C8 0017F928 38 C0 00 1D */ li r6, 0x1d -lbl_801829CC: -/* 801829CC 0017F92C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 801829D0 0017F930 7C A4 2B 78 */ mr r4, r5 -/* 801829D4 0017F934 38 A1 00 08 */ addi r5, r1, 8 -/* 801829D8 0017F938 B0 01 00 08 */ sth r0, 8(r1) -/* 801829DC 0017F93C 4B EC 14 F5 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -/* 801829E0 0017F940 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801829E4 0017F944 7C 08 03 A6 */ mtlr r0 -/* 801829E8 0017F948 38 21 00 10 */ addi r1, r1, 0x10 -/* 801829EC 0017F94C 4E 80 00 20 */ blr - -.global SendScriptMessages__14CGameCollisionFR13CStateManagerR6CActorP6CActorRC18CCollisionInfoList -SendScriptMessages__14CGameCollisionFR13CStateManagerR6CActorP6CActorRC18CCollisionInfoList: -/* 801829F0 0017F950 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 801829F4 0017F954 7C 08 02 A6 */ mflr r0 -/* 801829F8 0017F958 90 01 00 64 */ stw r0, 0x64(r1) -/* 801829FC 0017F95C BE C1 00 38 */ stmw r22, 0x38(r1) -/* 80182A00 0017F960 7C DA 33 78 */ mr r26, r6 -/* 80182A04 0017F964 3B DA 00 04 */ addi r30, r26, 4 -/* 80182A08 0017F968 7C 77 1B 78 */ mr r23, r3 -/* 80182A0C 0017F96C 7C 98 23 78 */ mr r24, r4 -/* 80182A10 0017F970 7C B9 2B 78 */ mr r25, r5 -/* 80182A14 0017F974 3B A0 00 00 */ li r29, 0 -/* 80182A18 0017F978 7F DF F3 78 */ mr r31, r30 -/* 80182A1C 0017F97C 3B 80 00 00 */ li r28, 0 -/* 80182A20 0017F980 3B 60 00 00 */ li r27, 0 -/* 80182A24 0017F984 48 00 00 64 */ b lbl_80182A88 -lbl_80182A28: -/* 80182A28 0017F988 3A DF 00 38 */ addi r22, r31, 0x38 -/* 80182A2C 0017F98C 38 9F 00 48 */ addi r4, r31, 0x48 -/* 80182A30 0017F990 7E C3 B3 78 */ mr r3, r22 -/* 80182A34 0017F994 4B FF FE 95 */ bl IsFloor__14CGameCollisionFRC13CMaterialListRC9CVector3f -/* 80182A38 0017F998 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80182A3C 0017F99C 41 82 00 44 */ beq lbl_80182A80 -/* 80182A40 0017F9A0 80 76 00 00 */ lwz r3, 0(r22) -/* 80182A44 0017F9A4 3C 00 00 02 */ lis r0, 2 -/* 80182A48 0017F9A8 80 B6 00 04 */ lwz r5, 4(r22) -/* 80182A4C 0017F9AC 38 80 00 00 */ li r4, 0 -/* 80182A50 0017F9B0 7C 60 00 38 */ and r0, r3, r0 -/* 80182A54 0017F9B4 3B 80 00 01 */ li r28, 1 -/* 80182A58 0017F9B8 7C A3 20 38 */ and r3, r5, r4 -/* 80182A5C 0017F9BC 7C 63 22 78 */ xor r3, r3, r4 -/* 80182A60 0017F9C0 7C 00 22 78 */ xor r0, r0, r4 -/* 80182A64 0017F9C4 7C 60 03 79 */ or. r0, r3, r0 -/* 80182A68 0017F9C8 41 82 00 08 */ beq lbl_80182A70 -/* 80182A6C 0017F9CC 3B A0 00 01 */ li r29, 1 -lbl_80182A70: -/* 80182A70 0017F9D0 7E E3 BB 78 */ mr r3, r23 -/* 80182A74 0017F9D4 7F 05 C3 78 */ mr r5, r24 -/* 80182A78 0017F9D8 38 9F 00 38 */ addi r4, r31, 0x38 -/* 80182A7C 0017F9DC 4B FF FE DD */ bl SendMaterialMessage__14CGameCollisionFR13CStateManagerRC13CMaterialListR6CActor -lbl_80182A80: -/* 80182A80 0017F9E0 3B FF 00 60 */ addi r31, r31, 0x60 -/* 80182A84 0017F9E4 3B 7B 00 01 */ addi r27, r27, 1 -lbl_80182A88: -/* 80182A88 0017F9E8 80 1A 00 00 */ lwz r0, 0(r26) -/* 80182A8C 0017F9EC 7C 1B 00 00 */ cmpw r27, r0 -/* 80182A90 0017F9F0 41 80 FF 98 */ blt lbl_80182A28 -/* 80182A94 0017F9F4 57 80 06 3F */ clrlwi. r0, r28, 0x18 -/* 80182A98 0017F9F8 41 82 00 60 */ beq lbl_80182AF8 -/* 80182A9C 0017F9FC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80182AA0 0017FA00 7E E3 BB 78 */ mr r3, r23 -/* 80182AA4 0017FA04 7F 04 C3 78 */ mr r4, r24 -/* 80182AA8 0017FA08 38 A1 00 18 */ addi r5, r1, 0x18 -/* 80182AAC 0017FA0C B0 01 00 18 */ sth r0, 0x18(r1) -/* 80182AB0 0017FA10 38 C0 00 17 */ li r6, 0x17 -/* 80182AB4 0017FA14 4B EC 14 1D */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -/* 80182AB8 0017FA18 57 A0 06 3F */ clrlwi. r0, r29, 0x18 -/* 80182ABC 0017FA1C 41 82 00 E8 */ beq lbl_80182BA4 -/* 80182AC0 0017FA20 7F 24 CB 78 */ mr r4, r25 -/* 80182AC4 0017FA24 38 61 00 24 */ addi r3, r1, 0x24 -/* 80182AC8 0017FA28 4B F2 63 4D */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" -/* 80182ACC 0017FA2C 80 83 00 04 */ lwz r4, 4(r3) -/* 80182AD0 0017FA30 28 04 00 00 */ cmplwi r4, 0 -/* 80182AD4 0017FA34 41 82 00 D0 */ beq lbl_80182BA4 -/* 80182AD8 0017FA38 A0 18 00 08 */ lhz r0, 8(r24) -/* 80182ADC 0017FA3C 7E E3 BB 78 */ mr r3, r23 -/* 80182AE0 0017FA40 38 A1 00 14 */ addi r5, r1, 0x14 -/* 80182AE4 0017FA44 38 C0 00 1F */ li r6, 0x1f -/* 80182AE8 0017FA48 B0 01 00 10 */ sth r0, 0x10(r1) -/* 80182AEC 0017FA4C B0 01 00 14 */ sth r0, 0x14(r1) -/* 80182AF0 0017FA50 4B EC 13 E1 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -/* 80182AF4 0017FA54 48 00 00 B0 */ b lbl_80182BA4 -lbl_80182AF8: -/* 80182AF8 0017FA58 28 19 00 00 */ cmplwi r25, 0 -/* 80182AFC 0017FA5C 41 82 00 A8 */ beq lbl_80182BA4 -/* 80182B00 0017FA60 7F 04 C3 78 */ mr r4, r24 -/* 80182B04 0017FA64 38 61 00 1C */ addi r3, r1, 0x1c -/* 80182B08 0017FA68 4B F2 63 0D */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" -/* 80182B0C 0017FA6C 83 63 00 04 */ lwz r27, 4(r3) -/* 80182B10 0017FA70 28 1B 00 00 */ cmplwi r27, 0 -/* 80182B14 0017FA74 41 82 00 90 */ beq lbl_80182BA4 -/* 80182B18 0017FA78 3B 80 00 00 */ li r28, 0 -/* 80182B1C 0017FA7C 3B E0 00 00 */ li r31, 0 -/* 80182B20 0017FA80 3F 00 00 02 */ lis r24, 2 -/* 80182B24 0017FA84 48 00 00 4C */ b lbl_80182B70 -lbl_80182B28: -/* 80182B28 0017FA88 3A DE 00 40 */ addi r22, r30, 0x40 -/* 80182B2C 0017FA8C 38 9E 00 54 */ addi r4, r30, 0x54 -/* 80182B30 0017FA90 7E C3 B3 78 */ mr r3, r22 -/* 80182B34 0017FA94 4B FF FD 95 */ bl IsFloor__14CGameCollisionFRC13CMaterialListRC9CVector3f -/* 80182B38 0017FA98 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80182B3C 0017FA9C 41 82 00 2C */ beq lbl_80182B68 -/* 80182B40 0017FAA0 80 16 00 00 */ lwz r0, 0(r22) -/* 80182B44 0017FAA4 80 76 00 04 */ lwz r3, 4(r22) -/* 80182B48 0017FAA8 7C 00 C0 38 */ and r0, r0, r24 -/* 80182B4C 0017FAAC 7C 63 F8 38 */ and r3, r3, r31 -/* 80182B50 0017FAB0 7C 63 FA 78 */ xor r3, r3, r31 -/* 80182B54 0017FAB4 7C 00 FA 78 */ xor r0, r0, r31 -/* 80182B58 0017FAB8 7C 60 03 79 */ or. r0, r3, r0 -/* 80182B5C 0017FABC 41 82 00 0C */ beq lbl_80182B68 -/* 80182B60 0017FAC0 3B A0 00 01 */ li r29, 1 -/* 80182B64 0017FAC4 48 00 00 18 */ b lbl_80182B7C -lbl_80182B68: -/* 80182B68 0017FAC8 3B DE 00 60 */ addi r30, r30, 0x60 -/* 80182B6C 0017FACC 3B 9C 00 01 */ addi r28, r28, 1 -lbl_80182B70: -/* 80182B70 0017FAD0 80 1A 00 00 */ lwz r0, 0(r26) -/* 80182B74 0017FAD4 7C 1C 00 00 */ cmpw r28, r0 -/* 80182B78 0017FAD8 41 80 FF B0 */ blt lbl_80182B28 -lbl_80182B7C: -/* 80182B7C 0017FADC 57 A0 06 3F */ clrlwi. r0, r29, 0x18 -/* 80182B80 0017FAE0 41 82 00 24 */ beq lbl_80182BA4 -/* 80182B84 0017FAE4 A0 19 00 08 */ lhz r0, 8(r25) -/* 80182B88 0017FAE8 7E E3 BB 78 */ mr r3, r23 -/* 80182B8C 0017FAEC 7F 64 DB 78 */ mr r4, r27 -/* 80182B90 0017FAF0 38 A1 00 0C */ addi r5, r1, 0xc -/* 80182B94 0017FAF4 B0 01 00 08 */ sth r0, 8(r1) -/* 80182B98 0017FAF8 38 C0 00 1F */ li r6, 0x1f -/* 80182B9C 0017FAFC B0 01 00 0C */ sth r0, 0xc(r1) -/* 80182BA0 0017FB00 4B EC 13 31 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -lbl_80182BA4: -/* 80182BA4 0017FB04 BA C1 00 38 */ lmw r22, 0x38(r1) -/* 80182BA8 0017FB08 80 01 00 64 */ lwz r0, 0x64(r1) -/* 80182BAC 0017FB0C 7C 08 03 A6 */ mtlr r0 -/* 80182BB0 0017FB10 38 21 00 60 */ addi r1, r1, 0x60 -/* 80182BB4 0017FB14 4E 80 00 20 */ blr - -.global MakeCollisionCallbacks__14CGameCollisionFR13CStateManagerR13CPhysicsActorRC9TUniqueIdRC18CCollisionInfoList -MakeCollisionCallbacks__14CGameCollisionFR13CStateManagerR13CPhysicsActorRC9TUniqueIdRC18CCollisionInfoList: -/* 80182BB8 0017FB18 94 21 F3 C0 */ stwu r1, -0xc40(r1) -/* 80182BBC 0017FB1C 7C 08 02 A6 */ mflr r0 -/* 80182BC0 0017FB20 90 01 0C 44 */ stw r0, 0xc44(r1) -/* 80182BC4 0017FB24 BF 41 0C 28 */ stmw r26, 0xc28(r1) -/* 80182BC8 0017FB28 7C 9B 23 78 */ mr r27, r4 -/* 80182BCC 0017FB2C 7C 7A 1B 78 */ mr r26, r3 -/* 80182BD0 0017FB30 7C BD 2B 78 */ mr r29, r5 -/* 80182BD4 0017FB34 7C DC 33 78 */ mr r28, r6 -/* 80182BD8 0017FB38 7F 63 DB 78 */ mr r3, r27 -/* 80182BDC 0017FB3C 7F A4 EB 78 */ mr r4, r29 -/* 80182BE0 0017FB40 7F 46 D3 78 */ mr r6, r26 -/* 80182BE4 0017FB44 7F 85 E3 78 */ mr r5, r28 -/* 80182BE8 0017FB48 81 9B 00 00 */ lwz r12, 0(r27) -/* 80182BEC 0017FB4C 81 8C 00 74 */ lwz r12, 0x74(r12) -/* 80182BF0 0017FB50 7D 89 03 A6 */ mtctr r12 -/* 80182BF4 0017FB54 4E 80 04 21 */ bctrl -/* 80182BF8 0017FB58 A0 7D 00 00 */ lhz r3, 0(r29) -/* 80182BFC 0017FB5C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80182C00 0017FB60 7C 03 00 40 */ cmplw r3, r0 -/* 80182C04 0017FB64 41 82 00 DC */ beq lbl_80182CE0 -/* 80182C08 0017FB68 B0 61 00 0C */ sth r3, 0xc(r1) -/* 80182C0C 0017FB6C 7F 43 D3 78 */ mr r3, r26 -/* 80182C10 0017FB70 38 81 00 0C */ addi r4, r1, 0xc -/* 80182C14 0017FB74 4B EC 99 61 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80182C18 0017FB78 7C 64 1B 78 */ mr r4, r3 -/* 80182C1C 0017FB7C 38 61 00 10 */ addi r3, r1, 0x10 -/* 80182C20 0017FB80 4B F2 9A C5 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" -/* 80182C24 0017FB84 83 C3 00 04 */ lwz r30, 4(r3) -/* 80182C28 0017FB88 28 1E 00 00 */ cmplwi r30, 0 -/* 80182C2C 0017FB8C 41 82 00 B4 */ beq lbl_80182CE0 -/* 80182C30 0017FB90 7F 84 E3 78 */ mr r4, r28 -/* 80182C34 0017FB94 38 61 00 18 */ addi r3, r1, 0x18 -/* 80182C38 0017FB98 48 00 00 BD */ bl __ct__18CCollisionInfoListFRC18CCollisionInfoList -/* 80182C3C 0017FB9C 3B A1 00 1C */ addi r29, r1, 0x1c -/* 80182C40 0017FBA0 3B E0 00 00 */ li r31, 0 -/* 80182C44 0017FBA4 48 00 00 14 */ b lbl_80182C58 -lbl_80182C48: -/* 80182C48 0017FBA8 7F A3 EB 78 */ mr r3, r29 -/* 80182C4C 0017FBAC 48 14 B4 6D */ bl Swap__14CCollisionInfoFv -/* 80182C50 0017FBB0 3B BD 00 60 */ addi r29, r29, 0x60 -/* 80182C54 0017FBB4 3B FF 00 01 */ addi r31, r31, 1 -lbl_80182C58: -/* 80182C58 0017FBB8 80 01 00 18 */ lwz r0, 0x18(r1) -/* 80182C5C 0017FBBC 7C 1F 00 00 */ cmpw r31, r0 -/* 80182C60 0017FBC0 41 80 FF E8 */ blt lbl_80182C48 -/* 80182C64 0017FBC4 A0 1B 00 08 */ lhz r0, 8(r27) -/* 80182C68 0017FBC8 7F C3 F3 78 */ mr r3, r30 -/* 80182C6C 0017FBCC 7F 85 E3 78 */ mr r5, r28 -/* 80182C70 0017FBD0 7F 46 D3 78 */ mr r6, r26 -/* 80182C74 0017FBD4 B0 01 00 08 */ sth r0, 8(r1) -/* 80182C78 0017FBD8 38 81 00 08 */ addi r4, r1, 8 -/* 80182C7C 0017FBDC 81 9E 00 00 */ lwz r12, 0(r30) -/* 80182C80 0017FBE0 81 8C 00 74 */ lwz r12, 0x74(r12) -/* 80182C84 0017FBE4 7D 89 03 A6 */ mtctr r12 -/* 80182C88 0017FBE8 4E 80 04 21 */ bctrl -/* 80182C8C 0017FBEC 80 A1 00 18 */ lwz r5, 0x18(r1) -/* 80182C90 0017FBF0 38 60 00 00 */ li r3, 0 -/* 80182C94 0017FBF4 2C 05 00 00 */ cmpwi r5, 0 -/* 80182C98 0017FBF8 40 81 00 40 */ ble lbl_80182CD8 -/* 80182C9C 0017FBFC 2C 05 00 08 */ cmpwi r5, 8 -/* 80182CA0 0017FC00 38 85 FF F8 */ addi r4, r5, -8 -/* 80182CA4 0017FC04 40 81 00 20 */ ble lbl_80182CC4 -/* 80182CA8 0017FC08 38 04 00 07 */ addi r0, r4, 7 -/* 80182CAC 0017FC0C 54 00 E8 FE */ srwi r0, r0, 3 -/* 80182CB0 0017FC10 7C 09 03 A6 */ mtctr r0 -/* 80182CB4 0017FC14 2C 04 00 00 */ cmpwi r4, 0 -/* 80182CB8 0017FC18 40 81 00 0C */ ble lbl_80182CC4 -lbl_80182CBC: -/* 80182CBC 0017FC1C 38 63 00 08 */ addi r3, r3, 8 -/* 80182CC0 0017FC20 42 00 FF FC */ bdnz lbl_80182CBC -lbl_80182CC4: -/* 80182CC4 0017FC24 7C 03 28 50 */ subf r0, r3, r5 -/* 80182CC8 0017FC28 7C 09 03 A6 */ mtctr r0 -/* 80182CCC 0017FC2C 7C 03 28 00 */ cmpw r3, r5 -/* 80182CD0 0017FC30 40 80 00 08 */ bge lbl_80182CD8 -lbl_80182CD4: -/* 80182CD4 0017FC34 42 00 00 00 */ bdnz lbl_80182CD4 -lbl_80182CD8: -/* 80182CD8 0017FC38 38 00 00 00 */ li r0, 0 -/* 80182CDC 0017FC3C 90 01 00 18 */ stw r0, 0x18(r1) -lbl_80182CE0: -/* 80182CE0 0017FC40 BB 41 0C 28 */ lmw r26, 0xc28(r1) -/* 80182CE4 0017FC44 80 01 0C 44 */ lwz r0, 0xc44(r1) -/* 80182CE8 0017FC48 7C 08 03 A6 */ mtlr r0 -/* 80182CEC 0017FC4C 38 21 0C 40 */ addi r1, r1, 0xc40 -/* 80182CF0 0017FC50 4E 80 00 20 */ blr - -.global __ct__18CCollisionInfoListFRC18CCollisionInfoList -__ct__18CCollisionInfoListFRC18CCollisionInfoList: -/* 80182CF4 0017FC54 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80182CF8 0017FC58 7C 08 02 A6 */ mflr r0 -/* 80182CFC 0017FC5C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80182D00 0017FC60 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80182D04 0017FC64 7C 7F 1B 78 */ mr r31, r3 -/* 80182D08 0017FC68 48 00 00 1D */ bl sub_80182d24 -/* 80182D0C 0017FC6C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80182D10 0017FC70 7F E3 FB 78 */ mr r3, r31 -/* 80182D14 0017FC74 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80182D18 0017FC78 7C 08 03 A6 */ mtlr r0 -/* 80182D1C 0017FC7C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80182D20 0017FC80 4E 80 00 20 */ blr - -.global sub_80182d24 -sub_80182d24: -/* 80182D24 0017FC84 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80182D28 0017FC88 7C 08 02 A6 */ mflr r0 -/* 80182D2C 0017FC8C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80182D30 0017FC90 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80182D34 0017FC94 7C 7F 1B 78 */ mr r31, r3 -/* 80182D38 0017FC98 38 64 00 04 */ addi r3, r4, 4 -/* 80182D3C 0017FC9C 80 04 00 00 */ lwz r0, 0(r4) -/* 80182D40 0017FCA0 38 BF 00 04 */ addi r5, r31, 4 -/* 80182D44 0017FCA4 90 1F 00 00 */ stw r0, 0(r31) -/* 80182D48 0017FCA8 80 9F 00 00 */ lwz r4, 0(r31) -/* 80182D4C 0017FCAC 48 00 00 1D */ bl sub_80182d68 -/* 80182D50 0017FCB0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80182D54 0017FCB4 7F E3 FB 78 */ mr r3, r31 -/* 80182D58 0017FCB8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80182D5C 0017FCBC 7C 08 03 A6 */ mtlr r0 -/* 80182D60 0017FCC0 38 21 00 10 */ addi r1, r1, 0x10 -/* 80182D64 0017FCC4 4E 80 00 20 */ blr - -.global sub_80182d68 -sub_80182d68: -/* 80182D68 0017FCC8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80182D6C 0017FCCC 7C 08 02 A6 */ mflr r0 -/* 80182D70 0017FCD0 90 01 00 24 */ stw r0, 0x24(r1) -/* 80182D74 0017FCD4 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80182D78 0017FCD8 7C 7F 1B 78 */ mr r31, r3 -/* 80182D7C 0017FCDC 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80182D80 0017FCE0 7C BE 2B 78 */ mr r30, r5 -/* 80182D84 0017FCE4 93 A1 00 14 */ stw r29, 0x14(r1) -/* 80182D88 0017FCE8 3B A0 00 00 */ li r29, 0 -/* 80182D8C 0017FCEC 93 81 00 10 */ stw r28, 0x10(r1) -/* 80182D90 0017FCF0 7C 9C 23 78 */ mr r28, r4 -/* 80182D94 0017FCF4 48 00 00 1C */ b lbl_80182DB0 -lbl_80182D98: -/* 80182D98 0017FCF8 7F C3 F3 78 */ mr r3, r30 -/* 80182D9C 0017FCFC 7F E4 FB 78 */ mr r4, r31 -/* 80182DA0 0017FD00 48 00 00 3D */ bl sub_80182ddc -/* 80182DA4 0017FD04 3B DE 00 60 */ addi r30, r30, 0x60 -/* 80182DA8 0017FD08 3B BD 00 01 */ addi r29, r29, 1 -/* 80182DAC 0017FD0C 3B FF 00 60 */ addi r31, r31, 0x60 -lbl_80182DB0: -/* 80182DB0 0017FD10 7C 1D E0 00 */ cmpw r29, r28 -/* 80182DB4 0017FD14 41 80 FF E4 */ blt lbl_80182D98 -/* 80182DB8 0017FD18 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80182DBC 0017FD1C 7F C3 F3 78 */ mr r3, r30 -/* 80182DC0 0017FD20 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80182DC4 0017FD24 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 80182DC8 0017FD28 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 80182DCC 0017FD2C 83 81 00 10 */ lwz r28, 0x10(r1) -/* 80182DD0 0017FD30 7C 08 03 A6 */ mtlr r0 -/* 80182DD4 0017FD34 38 21 00 20 */ addi r1, r1, 0x20 -/* 80182DD8 0017FD38 4E 80 00 20 */ blr - -.global sub_80182ddc -sub_80182ddc: -/* 80182DDC 0017FD3C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80182DE0 0017FD40 7C 08 02 A6 */ mflr r0 -/* 80182DE4 0017FD44 28 03 00 00 */ cmplwi r3, 0 -/* 80182DE8 0017FD48 90 01 00 14 */ stw r0, 0x14(r1) -/* 80182DEC 0017FD4C 41 82 00 08 */ beq lbl_80182DF4 -/* 80182DF0 0017FD50 4B F6 E6 B1 */ bl __ct__14CCollisionInfoFRC14CCollisionInfo -lbl_80182DF4: -/* 80182DF4 0017FD54 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80182DF8 0017FD58 7C 08 03 A6 */ mtlr r0 -/* 80182DFC 0017FD5C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80182E00 0017FD60 4E 80 00 20 */ blr - -.global DetectStaticCollision_Cached_Moving__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter9CVector3fR14CCollisionInfoRd -DetectStaticCollision_Cached_Moving__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter9CVector3fR14CCollisionInfoRd: -/* 80182E04 0017FD64 94 21 FD F0 */ stwu r1, -0x210(r1) -/* 80182E08 0017FD68 7C 08 02 A6 */ mflr r0 -/* 80182E0C 0017FD6C 90 01 02 14 */ stw r0, 0x214(r1) -/* 80182E10 0017FD70 DB E1 02 00 */ stfd f31, 0x200(r1) -/* 80182E14 0017FD74 F3 E1 02 08 */ psq_st f31, 520(r1), 0, qr0 -/* 80182E18 0017FD78 DB C1 01 F0 */ stfd f30, 0x1f0(r1) -/* 80182E1C 0017FD7C F3 C1 01 F8 */ psq_st f30, 504(r1), 0, qr0 -/* 80182E20 0017FD80 DB A1 01 E0 */ stfd f29, 0x1e0(r1) -/* 80182E24 0017FD84 F3 A1 01 E8 */ psq_st f29, 488(r1), 0, qr0 -/* 80182E28 0017FD88 BE E1 01 BC */ stmw r23, 0x1bc(r1) -/* 80182E2C 0017FD8C 7C BD 2B 78 */ mr r29, r5 -/* 80182E30 0017FD90 7C 7E 1B 78 */ mr r30, r3 -/* 80182E34 0017FD94 7F A3 EB 78 */ mr r3, r29 -/* 80182E38 0017FD98 7C 97 23 78 */ mr r23, r4 -/* 80182E3C 0017FD9C 81 9D 00 00 */ lwz r12, 0(r29) -/* 80182E40 0017FDA0 7C D8 33 78 */ mr r24, r6 -/* 80182E44 0017FDA4 7C F9 3B 78 */ mr r25, r7 -/* 80182E48 0017FDA8 7D 1A 43 78 */ mr r26, r8 -/* 80182E4C 0017FDAC 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 80182E50 0017FDB0 7D 3B 4B 78 */ mr r27, r9 -/* 80182E54 0017FDB4 7D 5C 53 78 */ mr r28, r10 -/* 80182E58 0017FDB8 7D 89 03 A6 */ mtctr r12 -/* 80182E5C 0017FDBC 4E 80 04 21 */ bctrl -/* 80182E60 0017FDC0 3C 03 B0 BE */ addis r0, r3, 0xb0be -/* 80182E64 0017FDC4 28 00 54 47 */ cmplwi r0, 0x5447 -/* 80182E68 0017FDC8 40 82 00 0C */ bne lbl_80182E74 -/* 80182E6C 0017FDCC 38 60 00 00 */ li r3, 0 -/* 80182E70 0017FDD0 48 00 05 04 */ b lbl_80183374 -lbl_80182E74: -/* 80182E74 0017FDD4 C8 7C 00 00 */ lfd f3, 0(r28) -/* 80182E78 0017FDD8 7F A4 EB 78 */ mr r4, r29 -/* 80182E7C 0017FDDC 81 9D 00 00 */ lwz r12, 0(r29) -/* 80182E80 0017FDE0 7F 05 C3 78 */ mr r5, r24 -/* 80182E84 0017FDE4 FC 60 18 18 */ frsp f3, f3 -/* 80182E88 0017FDE8 C0 5A 00 00 */ lfs f2, 0(r26) -/* 80182E8C 0017FDEC C0 3A 00 04 */ lfs f1, 4(r26) -/* 80182E90 0017FDF0 38 61 00 8C */ addi r3, r1, 0x8c -/* 80182E94 0017FDF4 C0 1A 00 08 */ lfs f0, 8(r26) -/* 80182E98 0017FDF8 81 8C 00 14 */ lwz r12, 0x14(r12) -/* 80182E9C 0017FDFC EF E3 00 B2 */ fmuls f31, f3, f2 -/* 80182EA0 0017FE00 EF A3 00 72 */ fmuls f29, f3, f1 -/* 80182EA4 0017FE04 EF C3 00 32 */ fmuls f30, f3, f0 -/* 80182EA8 0017FE08 7D 89 03 A6 */ mtctr r12 -/* 80182EAC 0017FE0C 4E 80 04 21 */ bctrl -/* 80182EB0 0017FE10 C1 01 00 8C */ lfs f8, 0x8c(r1) -/* 80182EB4 0017FE14 38 61 00 BC */ addi r3, r1, 0xbc -/* 80182EB8 0017FE18 C0 E1 00 90 */ lfs f7, 0x90(r1) -/* 80182EBC 0017FE1C 38 81 00 80 */ addi r4, r1, 0x80 -/* 80182EC0 0017FE20 C0 C1 00 94 */ lfs f6, 0x94(r1) -/* 80182EC4 0017FE24 EC 48 F8 2A */ fadds f2, f8, f31 -/* 80182EC8 0017FE28 C0 A1 00 98 */ lfs f5, 0x98(r1) -/* 80182ECC 0017FE2C EC 27 E8 2A */ fadds f1, f7, f29 -/* 80182ED0 0017FE30 C0 81 00 9C */ lfs f4, 0x9c(r1) -/* 80182ED4 0017FE34 EC 06 F0 2A */ fadds f0, f6, f30 -/* 80182ED8 0017FE38 C0 61 00 A0 */ lfs f3, 0xa0(r1) -/* 80182EDC 0017FE3C D1 01 00 D4 */ stfs f8, 0xd4(r1) -/* 80182EE0 0017FE40 D0 E1 00 D8 */ stfs f7, 0xd8(r1) -/* 80182EE4 0017FE44 D0 C1 00 DC */ stfs f6, 0xdc(r1) -/* 80182EE8 0017FE48 D0 A1 00 E0 */ stfs f5, 0xe0(r1) -/* 80182EEC 0017FE4C D0 81 00 E4 */ stfs f4, 0xe4(r1) -/* 80182EF0 0017FE50 D0 61 00 E8 */ stfs f3, 0xe8(r1) -/* 80182EF4 0017FE54 D1 01 00 BC */ stfs f8, 0xbc(r1) -/* 80182EF8 0017FE58 D0 E1 00 C0 */ stfs f7, 0xc0(r1) -/* 80182EFC 0017FE5C D0 C1 00 C4 */ stfs f6, 0xc4(r1) -/* 80182F00 0017FE60 D0 A1 00 C8 */ stfs f5, 0xc8(r1) -/* 80182F04 0017FE64 D0 81 00 CC */ stfs f4, 0xcc(r1) -/* 80182F08 0017FE68 D0 61 00 D0 */ stfs f3, 0xd0(r1) -/* 80182F0C 0017FE6C D0 41 00 80 */ stfs f2, 0x80(r1) -/* 80182F10 0017FE70 D0 21 00 84 */ stfs f1, 0x84(r1) -/* 80182F14 0017FE74 D0 01 00 88 */ stfs f0, 0x88(r1) -/* 80182F18 0017FE78 48 1B 4B F1 */ bl AccumulateBounds__6CAABoxFRC9CVector3f -/* 80182F1C 0017FE7C C0 41 00 E4 */ lfs f2, 0xe4(r1) -/* 80182F20 0017FE80 38 61 00 BC */ addi r3, r1, 0xbc -/* 80182F24 0017FE84 C0 21 00 E8 */ lfs f1, 0xe8(r1) -/* 80182F28 0017FE88 38 81 00 74 */ addi r4, r1, 0x74 -/* 80182F2C 0017FE8C C0 01 00 E0 */ lfs f0, 0xe0(r1) -/* 80182F30 0017FE90 EC 42 E8 2A */ fadds f2, f2, f29 -/* 80182F34 0017FE94 EC 21 F0 2A */ fadds f1, f1, f30 -/* 80182F38 0017FE98 EC 00 F8 2A */ fadds f0, f0, f31 -/* 80182F3C 0017FE9C D0 41 00 78 */ stfs f2, 0x78(r1) -/* 80182F40 0017FEA0 D0 01 00 74 */ stfs f0, 0x74(r1) -/* 80182F44 0017FEA4 D0 21 00 7C */ stfs f1, 0x7c(r1) -/* 80182F48 0017FEA8 48 1B 4B C1 */ bl AccumulateBounds__6CAABoxFRC9CVector3f -/* 80182F4C 0017FEAC 7E E4 BB 78 */ mr r4, r23 -/* 80182F50 0017FEB0 38 61 00 BC */ addi r3, r1, 0xbc -/* 80182F54 0017FEB4 48 1B 4B 2D */ bl Inside__6CAABoxCFRC6CAABox -/* 80182F58 0017FEB8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80182F5C 0017FEBC 40 82 00 98 */ bne lbl_80182FF4 -/* 80182F60 0017FEC0 C0 41 00 CC */ lfs f2, 0xcc(r1) -/* 80182F64 0017FEC4 38 61 00 A4 */ addi r3, r1, 0xa4 -/* 80182F68 0017FEC8 C0 82 A2 F0 */ lfs f4, lbl_805AC010@sda21(r2) -/* 80182F6C 0017FECC 38 81 00 68 */ addi r4, r1, 0x68 -/* 80182F70 0017FED0 C0 21 00 D0 */ lfs f1, 0xd0(r1) -/* 80182F74 0017FED4 38 A1 00 5C */ addi r5, r1, 0x5c -/* 80182F78 0017FED8 C0 01 00 C8 */ lfs f0, 0xc8(r1) -/* 80182F7C 0017FEDC EC C2 20 2A */ fadds f6, f2, f4 -/* 80182F80 0017FEE0 C0 41 00 C0 */ lfs f2, 0xc0(r1) -/* 80182F84 0017FEE4 EC A1 20 2A */ fadds f5, f1, f4 -/* 80182F88 0017FEE8 C0 21 00 C4 */ lfs f1, 0xc4(r1) -/* 80182F8C 0017FEEC EC 60 20 2A */ fadds f3, f0, f4 -/* 80182F90 0017FEF0 C0 01 00 BC */ lfs f0, 0xbc(r1) -/* 80182F94 0017FEF4 EC 42 20 28 */ fsubs f2, f2, f4 -/* 80182F98 0017FEF8 D0 C1 00 60 */ stfs f6, 0x60(r1) -/* 80182F9C 0017FEFC EC 21 20 28 */ fsubs f1, f1, f4 -/* 80182FA0 0017FF00 EC 00 20 28 */ fsubs f0, f0, f4 -/* 80182FA4 0017FF04 D0 61 00 5C */ stfs f3, 0x5c(r1) -/* 80182FA8 0017FF08 D0 A1 00 64 */ stfs f5, 0x64(r1) -/* 80182FAC 0017FF0C D0 01 00 68 */ stfs f0, 0x68(r1) -/* 80182FB0 0017FF10 D0 41 00 6C */ stfs f2, 0x6c(r1) -/* 80182FB4 0017FF14 D0 21 00 70 */ stfs f1, 0x70(r1) -/* 80182FB8 0017FF18 48 1B 55 51 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 80182FBC 0017FF1C 7E E4 BB 78 */ mr r4, r23 -/* 80182FC0 0017FF20 38 61 00 A4 */ addi r3, r1, 0xa4 -/* 80182FC4 0017FF24 48 1B 4B 45 */ bl AccumulateBounds__6CAABoxFRC9CVector3f -/* 80182FC8 0017FF28 38 61 00 A4 */ addi r3, r1, 0xa4 -/* 80182FCC 0017FF2C 38 97 00 0C */ addi r4, r23, 0xc -/* 80182FD0 0017FF30 48 1B 4B 39 */ bl AccumulateBounds__6CAABoxFRC9CVector3f -/* 80182FD4 0017FF34 7E E3 BB 78 */ mr r3, r23 -/* 80182FD8 0017FF38 38 81 00 A4 */ addi r4, r1, 0xa4 -/* 80182FDC 0017FF3C 48 12 09 09 */ bl SetCacheBounds__19CAreaCollisionCacheFRC6CAABox -/* 80182FE0 0017FF40 7F C3 F3 78 */ mr r3, r30 -/* 80182FE4 0017FF44 7E E4 BB 78 */ mr r4, r23 -/* 80182FE8 0017FF48 48 00 16 DD */ bl BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache -/* 80182FEC 0017FF4C 38 60 00 00 */ li r3, 0 -/* 80182FF0 0017FF50 4B F3 15 09 */ bl IsUser__Fi -lbl_80182FF4: -/* 80182FF4 0017FF54 7F A3 EB 78 */ mr r3, r29 -/* 80182FF8 0017FF58 81 9D 00 00 */ lwz r12, 0(r29) -/* 80182FFC 0017FF5C 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 80183000 0017FF60 7D 89 03 A6 */ mtctr r12 -/* 80183004 0017FF64 4E 80 04 21 */ bctrl -/* 80183008 0017FF68 3C 03 BE BF */ addis r0, r3, 0xbebf -/* 8018300C 0017FF6C 28 00 42 58 */ cmplwi r0, 0x4258 -/* 80183010 0017FF70 40 82 01 88 */ bne lbl_80183198 -/* 80183014 0017FF74 3B F7 00 1C */ addi r31, r23, 0x1c -/* 80183018 0017FF78 3B C0 00 00 */ li r30, 0 -/* 8018301C 0017FF7C 48 00 01 6C */ b lbl_80183188 -lbl_80183020: -/* 80183020 0017FF80 38 61 01 50 */ addi r3, r1, 0x150 -/* 80183024 0017FF84 38 80 00 00 */ li r4, 0 -/* 80183028 0017FF88 48 14 B1 61 */ bl __ct__14CCollisionInfoFQ214CCollisionInfo8EInvalid -/* 8018302C 0017FF8C C8 1C 00 00 */ lfd f0, 0(r28) -/* 80183030 0017FF90 38 00 00 00 */ li r0, 0 -/* 80183034 0017FF94 81 1A 00 00 */ lwz r8, 0(r26) -/* 80183038 0017FF98 38 60 00 00 */ li r3, 0 -/* 8018303C 0017FF9C D8 01 00 20 */ stfd f0, 0x20(r1) -/* 80183040 0017FFA0 38 80 00 01 */ li r4, 1 -/* 80183044 0017FFA4 80 FA 00 04 */ lwz r7, 4(r26) -/* 80183048 0017FFA8 CB BC 00 00 */ lfd f29, 0(r28) -/* 8018304C 0017FFAC 80 DA 00 08 */ lwz r6, 8(r26) -/* 80183050 0017FFB0 FF A0 E8 18 */ frsp f29, f29 -/* 80183054 0017FFB4 80 AD 8E 80 */ lwz r5, lbl_805A7A40@sda21(r13) -/* 80183058 0017FFB8 91 01 00 50 */ stw r8, 0x50(r1) -/* 8018305C 0017FFBC 90 E1 00 54 */ stw r7, 0x54(r1) -/* 80183060 0017FFC0 90 C1 00 58 */ stw r6, 0x58(r1) -/* 80183064 0017FFC4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80183068 0017FFC8 90 01 00 10 */ stw r0, 0x10(r1) -/* 8018306C 0017FFCC 48 20 6E 89 */ bl __shl2i -/* 80183070 0017FFD0 80 01 00 10 */ lwz r0, 0x10(r1) -/* 80183074 0017FFD4 FC 20 E8 90 */ fmr f1, f29 -/* 80183078 0017FFD8 80 C1 00 14 */ lwz r6, 0x14(r1) -/* 8018307C 0017FFDC 7F 25 CB 78 */ mr r5, r25 -/* 80183080 0017FFE0 7C 00 1B 78 */ or r0, r0, r3 -/* 80183084 0017FFE4 7F E3 FB 78 */ mr r3, r31 -/* 80183088 0017FFE8 7C C4 23 78 */ or r4, r6, r4 -/* 8018308C 0017FFEC 90 81 00 14 */ stw r4, 0x14(r1) -/* 80183090 0017FFF0 38 81 00 D4 */ addi r4, r1, 0xd4 -/* 80183094 0017FFF4 38 C1 00 10 */ addi r6, r1, 0x10 -/* 80183098 0017FFF8 38 E1 00 50 */ addi r7, r1, 0x50 -/* 8018309C 0017FFFC 90 01 00 10 */ stw r0, 0x10(r1) -/* 801830A0 00180000 39 01 01 50 */ addi r8, r1, 0x150 -/* 801830A4 00180004 39 21 00 20 */ addi r9, r1, 0x20 -/* 801830A8 00180008 48 12 11 75 */ bl MovingAABoxCollisionCheck_Cached__20CMetroidAreaColliderFRCQ220CMetroidAreaCollider16COctreeLeafCacheRC6CAABoxRC15CMaterialFilterRC13CMaterialList9CVector3ffR14CCollisionInfoRd -/* 801830AC 0018000C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801830B0 00180010 41 82 00 D0 */ beq lbl_80183180 -/* 801830B4 00180014 C8 21 00 20 */ lfd f1, 0x20(r1) -/* 801830B8 00180018 C8 1C 00 00 */ lfd f0, 0(r28) -/* 801830BC 0018001C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801830C0 00180020 40 80 00 C0 */ bge lbl_80183180 -/* 801830C4 00180024 80 61 01 50 */ lwz r3, 0x150(r1) -/* 801830C8 00180028 80 01 01 54 */ lwz r0, 0x154(r1) -/* 801830CC 0018002C 90 7B 00 00 */ stw r3, 0(r27) -/* 801830D0 00180030 90 1B 00 04 */ stw r0, 4(r27) -/* 801830D4 00180034 80 01 01 58 */ lwz r0, 0x158(r1) -/* 801830D8 00180038 90 1B 00 08 */ stw r0, 8(r27) -/* 801830DC 0018003C 80 61 01 5C */ lwz r3, 0x15c(r1) -/* 801830E0 00180040 80 01 01 60 */ lwz r0, 0x160(r1) -/* 801830E4 00180044 90 7B 00 0C */ stw r3, 0xc(r27) -/* 801830E8 00180048 90 1B 00 10 */ stw r0, 0x10(r27) -/* 801830EC 0018004C 80 01 01 64 */ lwz r0, 0x164(r1) -/* 801830F0 00180050 90 1B 00 14 */ stw r0, 0x14(r27) -/* 801830F4 00180054 80 61 01 68 */ lwz r3, 0x168(r1) -/* 801830F8 00180058 80 01 01 6C */ lwz r0, 0x16c(r1) -/* 801830FC 0018005C 90 7B 00 18 */ stw r3, 0x18(r27) -/* 80183100 00180060 90 1B 00 1C */ stw r0, 0x1c(r27) -/* 80183104 00180064 80 01 01 70 */ lwz r0, 0x170(r1) -/* 80183108 00180068 90 1B 00 20 */ stw r0, 0x20(r27) -/* 8018310C 0018006C 80 61 01 74 */ lwz r3, 0x174(r1) -/* 80183110 00180070 80 01 01 78 */ lwz r0, 0x178(r1) -/* 80183114 00180074 90 7B 00 24 */ stw r3, 0x24(r27) -/* 80183118 00180078 90 1B 00 28 */ stw r0, 0x28(r27) -/* 8018311C 0018007C 80 01 01 7C */ lwz r0, 0x17c(r1) -/* 80183120 00180080 90 1B 00 2C */ stw r0, 0x2c(r27) -/* 80183124 00180084 88 01 01 80 */ lbz r0, 0x180(r1) -/* 80183128 00180088 98 1B 00 30 */ stb r0, 0x30(r27) -/* 8018312C 0018008C 88 01 01 81 */ lbz r0, 0x181(r1) -/* 80183130 00180090 98 1B 00 31 */ stb r0, 0x31(r27) -/* 80183134 00180094 C8 01 01 88 */ lfd f0, 0x188(r1) -/* 80183138 00180098 D8 1B 00 38 */ stfd f0, 0x38(r27) -/* 8018313C 0018009C C8 01 01 90 */ lfd f0, 0x190(r1) -/* 80183140 001800A0 D8 1B 00 40 */ stfd f0, 0x40(r27) -/* 80183144 001800A4 80 61 01 98 */ lwz r3, 0x198(r1) -/* 80183148 001800A8 80 01 01 9C */ lwz r0, 0x19c(r1) -/* 8018314C 001800AC 90 7B 00 48 */ stw r3, 0x48(r27) -/* 80183150 001800B0 90 1B 00 4C */ stw r0, 0x4c(r27) -/* 80183154 001800B4 80 01 01 A0 */ lwz r0, 0x1a0(r1) -/* 80183158 001800B8 90 1B 00 50 */ stw r0, 0x50(r27) -/* 8018315C 001800BC 80 61 01 A4 */ lwz r3, 0x1a4(r1) -/* 80183160 001800C0 80 01 01 A8 */ lwz r0, 0x1a8(r1) -/* 80183164 001800C4 90 7B 00 54 */ stw r3, 0x54(r27) -/* 80183168 001800C8 90 1B 00 58 */ stw r0, 0x58(r27) -/* 8018316C 001800CC 80 01 01 AC */ lwz r0, 0x1ac(r1) -/* 80183170 001800D0 90 1B 00 5C */ stw r0, 0x5c(r27) -/* 80183174 001800D4 C8 01 00 20 */ lfd f0, 0x20(r1) -/* 80183178 001800D8 FC 00 00 18 */ frsp f0, f0 -/* 8018317C 001800DC D8 1C 00 00 */ stfd f0, 0(r28) -lbl_80183180: -/* 80183180 001800E0 3B FF 09 0C */ addi r31, r31, 0x90c -/* 80183184 001800E4 3B DE 00 01 */ addi r30, r30, 1 -lbl_80183188: -/* 80183188 001800E8 80 17 00 18 */ lwz r0, 0x18(r23) -/* 8018318C 001800EC 7C 1E 00 00 */ cmpw r30, r0 -/* 80183190 001800F0 41 80 FE 90 */ blt lbl_80183020 -/* 80183194 001800F4 48 00 01 DC */ b lbl_80183370 -lbl_80183198: -/* 80183198 001800F8 7F A3 EB 78 */ mr r3, r29 -/* 8018319C 001800FC 81 9D 00 00 */ lwz r12, 0(r29) -/* 801831A0 00180100 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 801831A4 00180104 7D 89 03 A6 */ mtctr r12 -/* 801831A8 00180108 4E 80 04 21 */ bctrl -/* 801831AC 0018010C 3C 03 AC B0 */ addis r0, r3, 0xacb0 -/* 801831B0 00180110 28 00 48 52 */ cmplwi r0, 0x4852 -/* 801831B4 00180114 40 82 01 BC */ bne lbl_80183370 -/* 801831B8 00180118 3B FD 00 10 */ addi r31, r29, 0x10 -/* 801831BC 0018011C 3B D7 00 1C */ addi r30, r23, 0x1c -/* 801831C0 00180120 3B A0 00 00 */ li r29, 0 -/* 801831C4 00180124 48 00 01 A0 */ b lbl_80183364 -lbl_801831C8: -/* 801831C8 00180128 38 61 00 F0 */ addi r3, r1, 0xf0 -/* 801831CC 0018012C 38 80 00 00 */ li r4, 0 -/* 801831D0 00180130 48 14 AF B9 */ bl __ct__14CCollisionInfoFQ214CCollisionInfo8EInvalid -/* 801831D4 00180134 C8 1C 00 00 */ lfd f0, 0(r28) -/* 801831D8 00180138 38 00 00 00 */ li r0, 0 -/* 801831DC 0018013C 81 1A 00 00 */ lwz r8, 0(r26) -/* 801831E0 00180140 38 60 00 00 */ li r3, 0 -/* 801831E4 00180144 D8 01 00 18 */ stfd f0, 0x18(r1) -/* 801831E8 00180148 38 80 00 01 */ li r4, 1 -/* 801831EC 0018014C 80 FA 00 04 */ lwz r7, 4(r26) -/* 801831F0 00180150 CB BC 00 00 */ lfd f29, 0(r28) -/* 801831F4 00180154 80 DA 00 08 */ lwz r6, 8(r26) -/* 801831F8 00180158 FF A0 E8 18 */ frsp f29, f29 -/* 801831FC 0018015C 80 AD 8E 84 */ lwz r5, lbl_805A7A44@sda21(r13) -/* 80183200 00180160 91 01 00 28 */ stw r8, 0x28(r1) -/* 80183204 00180164 90 E1 00 2C */ stw r7, 0x2c(r1) -/* 80183208 00180168 90 C1 00 30 */ stw r6, 0x30(r1) -/* 8018320C 0018016C 90 01 00 0C */ stw r0, 0xc(r1) -/* 80183210 00180170 90 01 00 08 */ stw r0, 8(r1) -/* 80183214 00180174 48 20 6C E1 */ bl __shl2i -/* 80183218 00180178 80 01 00 08 */ lwz r0, 8(r1) -/* 8018321C 0018017C 7F E5 FB 78 */ mr r5, r31 -/* 80183220 00180180 80 C1 00 0C */ lwz r6, 0xc(r1) -/* 80183224 00180184 7C 00 1B 78 */ or r0, r0, r3 -/* 80183228 00180188 C3 DF 00 0C */ lfs f30, 0xc(r31) -/* 8018322C 0018018C 7C C6 23 78 */ or r6, r6, r4 -/* 80183230 00180190 90 01 00 08 */ stw r0, 8(r1) -/* 80183234 00180194 7F 04 C3 78 */ mr r4, r24 -/* 80183238 00180198 38 61 00 34 */ addi r3, r1, 0x34 -/* 8018323C 0018019C 90 C1 00 0C */ stw r6, 0xc(r1) -/* 80183240 001801A0 48 18 F8 A9 */ bl __ml__12CTransform4fCFRC9CVector3f -/* 80183244 001801A4 C0 61 00 34 */ lfs f3, 0x34(r1) -/* 80183248 001801A8 FC 20 E8 90 */ fmr f1, f29 -/* 8018324C 001801AC C0 41 00 38 */ lfs f2, 0x38(r1) -/* 80183250 001801B0 7F C3 F3 78 */ mr r3, r30 -/* 80183254 001801B4 C0 01 00 3C */ lfs f0, 0x3c(r1) -/* 80183258 001801B8 7F 26 CB 78 */ mr r6, r25 -/* 8018325C 001801BC D0 61 00 40 */ stfs f3, 0x40(r1) -/* 80183260 001801C0 38 81 00 D4 */ addi r4, r1, 0xd4 -/* 80183264 001801C4 38 A1 00 40 */ addi r5, r1, 0x40 -/* 80183268 001801C8 D0 41 00 44 */ stfs f2, 0x44(r1) -/* 8018326C 001801CC 38 E1 00 08 */ addi r7, r1, 8 -/* 80183270 001801D0 39 01 00 28 */ addi r8, r1, 0x28 -/* 80183274 001801D4 39 21 00 F0 */ addi r9, r1, 0xf0 -/* 80183278 001801D8 D0 01 00 48 */ stfs f0, 0x48(r1) -/* 8018327C 001801DC 39 41 00 18 */ addi r10, r1, 0x18 -/* 80183280 001801E0 D3 C1 00 4C */ stfs f30, 0x4c(r1) -/* 80183284 001801E4 48 12 19 99 */ bl MovingSphereCollisionCheck_Cached__20CMetroidAreaColliderFRCQ220CMetroidAreaCollider16COctreeLeafCacheRC6CAABoxRC7CSphereRC15CMaterialFilterRC13CMaterialList9CVector3ffR14CCollisionInfoRd -/* 80183288 001801E8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8018328C 001801EC 41 82 00 D0 */ beq lbl_8018335C -/* 80183290 001801F0 C8 21 00 18 */ lfd f1, 0x18(r1) -/* 80183294 001801F4 C8 1C 00 00 */ lfd f0, 0(r28) -/* 80183298 001801F8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8018329C 001801FC 40 80 00 C0 */ bge lbl_8018335C -/* 801832A0 00180200 80 61 00 F0 */ lwz r3, 0xf0(r1) -/* 801832A4 00180204 80 01 00 F4 */ lwz r0, 0xf4(r1) -/* 801832A8 00180208 90 7B 00 00 */ stw r3, 0(r27) -/* 801832AC 0018020C 90 1B 00 04 */ stw r0, 4(r27) -/* 801832B0 00180210 80 01 00 F8 */ lwz r0, 0xf8(r1) -/* 801832B4 00180214 90 1B 00 08 */ stw r0, 8(r27) -/* 801832B8 00180218 80 61 00 FC */ lwz r3, 0xfc(r1) -/* 801832BC 0018021C 80 01 01 00 */ lwz r0, 0x100(r1) -/* 801832C0 00180220 90 7B 00 0C */ stw r3, 0xc(r27) -/* 801832C4 00180224 90 1B 00 10 */ stw r0, 0x10(r27) -/* 801832C8 00180228 80 01 01 04 */ lwz r0, 0x104(r1) -/* 801832CC 0018022C 90 1B 00 14 */ stw r0, 0x14(r27) -/* 801832D0 00180230 80 61 01 08 */ lwz r3, 0x108(r1) -/* 801832D4 00180234 80 01 01 0C */ lwz r0, 0x10c(r1) -/* 801832D8 00180238 90 7B 00 18 */ stw r3, 0x18(r27) -/* 801832DC 0018023C 90 1B 00 1C */ stw r0, 0x1c(r27) -/* 801832E0 00180240 80 01 01 10 */ lwz r0, 0x110(r1) -/* 801832E4 00180244 90 1B 00 20 */ stw r0, 0x20(r27) -/* 801832E8 00180248 80 61 01 14 */ lwz r3, 0x114(r1) -/* 801832EC 0018024C 80 01 01 18 */ lwz r0, 0x118(r1) -/* 801832F0 00180250 90 7B 00 24 */ stw r3, 0x24(r27) -/* 801832F4 00180254 90 1B 00 28 */ stw r0, 0x28(r27) -/* 801832F8 00180258 80 01 01 1C */ lwz r0, 0x11c(r1) -/* 801832FC 0018025C 90 1B 00 2C */ stw r0, 0x2c(r27) -/* 80183300 00180260 88 01 01 20 */ lbz r0, 0x120(r1) -/* 80183304 00180264 98 1B 00 30 */ stb r0, 0x30(r27) -/* 80183308 00180268 88 01 01 21 */ lbz r0, 0x121(r1) -/* 8018330C 0018026C 98 1B 00 31 */ stb r0, 0x31(r27) -/* 80183310 00180270 C8 01 01 28 */ lfd f0, 0x128(r1) -/* 80183314 00180274 D8 1B 00 38 */ stfd f0, 0x38(r27) -/* 80183318 00180278 C8 01 01 30 */ lfd f0, 0x130(r1) -/* 8018331C 0018027C D8 1B 00 40 */ stfd f0, 0x40(r27) -/* 80183320 00180280 80 61 01 38 */ lwz r3, 0x138(r1) -/* 80183324 00180284 80 01 01 3C */ lwz r0, 0x13c(r1) -/* 80183328 00180288 90 7B 00 48 */ stw r3, 0x48(r27) -/* 8018332C 0018028C 90 1B 00 4C */ stw r0, 0x4c(r27) -/* 80183330 00180290 80 01 01 40 */ lwz r0, 0x140(r1) -/* 80183334 00180294 90 1B 00 50 */ stw r0, 0x50(r27) -/* 80183338 00180298 80 61 01 44 */ lwz r3, 0x144(r1) -/* 8018333C 0018029C 80 01 01 48 */ lwz r0, 0x148(r1) -/* 80183340 001802A0 90 7B 00 54 */ stw r3, 0x54(r27) -/* 80183344 001802A4 90 1B 00 58 */ stw r0, 0x58(r27) -/* 80183348 001802A8 80 01 01 4C */ lwz r0, 0x14c(r1) -/* 8018334C 001802AC 90 1B 00 5C */ stw r0, 0x5c(r27) -/* 80183350 001802B0 C8 01 00 18 */ lfd f0, 0x18(r1) -/* 80183354 001802B4 FC 00 00 18 */ frsp f0, f0 -/* 80183358 001802B8 D8 1C 00 00 */ stfd f0, 0(r28) -lbl_8018335C: -/* 8018335C 001802BC 3B DE 09 0C */ addi r30, r30, 0x90c -/* 80183360 001802C0 3B BD 00 01 */ addi r29, r29, 1 -lbl_80183364: -/* 80183364 001802C4 80 17 00 18 */ lwz r0, 0x18(r23) -/* 80183368 001802C8 7C 1D 00 00 */ cmpw r29, r0 -/* 8018336C 001802CC 41 80 FE 5C */ blt lbl_801831C8 -lbl_80183370: -/* 80183370 001802D0 88 7B 00 30 */ lbz r3, 0x30(r27) -lbl_80183374: -/* 80183374 001802D4 E3 E1 02 08 */ psq_l f31, 520(r1), 0, qr0 -/* 80183378 001802D8 CB E1 02 00 */ lfd f31, 0x200(r1) -/* 8018337C 001802DC E3 C1 01 F8 */ psq_l f30, 504(r1), 0, qr0 -/* 80183380 001802E0 CB C1 01 F0 */ lfd f30, 0x1f0(r1) -/* 80183384 001802E4 E3 A1 01 E8 */ psq_l f29, 488(r1), 0, qr0 -/* 80183388 001802E8 CB A1 01 E0 */ lfd f29, 0x1e0(r1) -/* 8018338C 001802EC BA E1 01 BC */ lmw r23, 0x1bc(r1) -/* 80183390 001802F0 80 01 02 14 */ lwz r0, 0x214(r1) -/* 80183394 001802F4 7C 08 03 A6 */ mtlr r0 -/* 80183398 001802F8 38 21 02 10 */ addi r1, r1, 0x210 -/* 8018339C 001802FC 4E 80 00 20 */ blr - -.global DetectStaticCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter -DetectStaticCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter: -/* 801833A0 00180300 94 21 FF 60 */ stwu r1, -0xa0(r1) -/* 801833A4 00180304 7C 08 02 A6 */ mflr r0 -/* 801833A8 00180308 90 01 00 A4 */ stw r0, 0xa4(r1) -/* 801833AC 0018030C BF 61 00 8C */ stmw r27, 0x8c(r1) -/* 801833B0 00180310 7C 9C 23 78 */ mr r28, r4 -/* 801833B4 00180314 7C 7B 1B 78 */ mr r27, r3 -/* 801833B8 00180318 7C BD 2B 78 */ mr r29, r5 -/* 801833BC 0018031C 7F 83 E3 78 */ mr r3, r28 -/* 801833C0 00180320 7C DE 33 78 */ mr r30, r6 -/* 801833C4 00180324 81 9C 00 00 */ lwz r12, 0(r28) -/* 801833C8 00180328 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 801833CC 0018032C 7D 89 03 A6 */ mtctr r12 -/* 801833D0 00180330 4E 80 04 21 */ bctrl -/* 801833D4 00180334 3C 03 B0 BE */ addis r0, r3, 0xb0be -/* 801833D8 00180338 28 00 54 47 */ cmplwi r0, 0x5447 -/* 801833DC 0018033C 40 82 00 0C */ bne lbl_801833E8 -/* 801833E0 00180340 38 60 00 00 */ li r3, 0 -/* 801833E4 00180344 48 00 02 00 */ b lbl_801835E4 -lbl_801833E8: -/* 801833E8 00180348 7F 83 E3 78 */ mr r3, r28 -/* 801833EC 0018034C 83 FB 08 50 */ lwz r31, 0x850(r27) -/* 801833F0 00180350 81 9C 00 00 */ lwz r12, 0(r28) -/* 801833F4 00180354 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 801833F8 00180358 7D 89 03 A6 */ mtctr r12 -/* 801833FC 0018035C 4E 80 04 21 */ bctrl -/* 80183400 00180360 3C 03 BE BF */ addis r0, r3, 0xbebf -/* 80183404 00180364 28 00 42 58 */ cmplwi r0, 0x4258 -/* 80183408 00180368 40 82 00 90 */ bne lbl_80183498 -/* 8018340C 0018036C 7F 84 E3 78 */ mr r4, r28 -/* 80183410 00180370 7F A5 EB 78 */ mr r5, r29 -/* 80183414 00180374 81 9C 00 00 */ lwz r12, 0(r28) -/* 80183418 00180378 38 61 00 40 */ addi r3, r1, 0x40 -/* 8018341C 0018037C 81 8C 00 14 */ lwz r12, 0x14(r12) -/* 80183420 00180380 7D 89 03 A6 */ mtctr r12 -/* 80183424 00180384 4E 80 04 21 */ bctrl -/* 80183428 00180388 C0 A1 00 40 */ lfs f5, 0x40(r1) -/* 8018342C 0018038C C0 81 00 44 */ lfs f4, 0x44(r1) -/* 80183430 00180390 C0 61 00 48 */ lfs f3, 0x48(r1) -/* 80183434 00180394 C0 41 00 4C */ lfs f2, 0x4c(r1) -/* 80183438 00180398 C0 21 00 50 */ lfs f1, 0x50(r1) -/* 8018343C 0018039C C0 01 00 54 */ lfs f0, 0x54(r1) -/* 80183440 001803A0 D0 A1 00 70 */ stfs f5, 0x70(r1) -/* 80183444 001803A4 D0 81 00 74 */ stfs f4, 0x74(r1) -/* 80183448 001803A8 D0 61 00 78 */ stfs f3, 0x78(r1) -/* 8018344C 001803AC D0 41 00 7C */ stfs f2, 0x7c(r1) -/* 80183450 001803B0 D0 21 00 80 */ stfs f1, 0x80(r1) -/* 80183454 001803B4 D0 01 00 84 */ stfs f0, 0x84(r1) -/* 80183458 001803B8 83 FF 00 58 */ lwz r31, 0x58(r31) -/* 8018345C 001803BC 48 00 00 2C */ b lbl_80183488 -lbl_80183460: -/* 80183460 001803C0 80 7F 01 2C */ lwz r3, 0x12c(r31) -/* 80183464 001803C4 7F C5 F3 78 */ mr r5, r30 -/* 80183468 001803C8 38 81 00 70 */ addi r4, r1, 0x70 -/* 8018346C 001803CC 80 63 00 04 */ lwz r3, 4(r3) -/* 80183470 001803D0 48 12 2F 71 */ bl AABoxCollisionCheckBoolean__20CMetroidAreaColliderFRC12CAreaOctTreeRC6CAABoxRC15CMaterialFilter -/* 80183474 001803D4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80183478 001803D8 41 82 00 0C */ beq lbl_80183484 -/* 8018347C 001803DC 38 60 00 01 */ li r3, 1 -/* 80183480 001803E0 48 00 01 64 */ b lbl_801835E4 -lbl_80183484: -/* 80183484 001803E4 83 FF 01 30 */ lwz r31, 0x130(r31) -lbl_80183488: -/* 80183488 001803E8 80 0D A2 18 */ lwz r0, lbl_805A8DD8@sda21(r13) -/* 8018348C 001803EC 7C 1F 00 40 */ cmplw r31, r0 -/* 80183490 001803F0 40 82 FF D0 */ bne lbl_80183460 -/* 80183494 001803F4 48 00 01 4C */ b lbl_801835E0 -lbl_80183498: -/* 80183498 001803F8 7F 83 E3 78 */ mr r3, r28 -/* 8018349C 001803FC 81 9C 00 00 */ lwz r12, 0(r28) -/* 801834A0 00180400 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 801834A4 00180404 7D 89 03 A6 */ mtctr r12 -/* 801834A8 00180408 4E 80 04 21 */ bctrl -/* 801834AC 0018040C 3C 03 AC B0 */ addis r0, r3, 0xacb0 -/* 801834B0 00180410 28 00 48 52 */ cmplwi r0, 0x4852 -/* 801834B4 00180414 40 82 00 C4 */ bne lbl_80183578 -/* 801834B8 00180418 7F 84 E3 78 */ mr r4, r28 -/* 801834BC 0018041C 7F A5 EB 78 */ mr r5, r29 -/* 801834C0 00180420 81 9C 00 00 */ lwz r12, 0(r28) -/* 801834C4 00180424 38 61 00 28 */ addi r3, r1, 0x28 -/* 801834C8 00180428 81 8C 00 14 */ lwz r12, 0x14(r12) -/* 801834CC 0018042C 7D 89 03 A6 */ mtctr r12 -/* 801834D0 00180430 4E 80 04 21 */ bctrl -/* 801834D4 00180434 C0 A1 00 28 */ lfs f5, 0x28(r1) -/* 801834D8 00180438 7F 84 E3 78 */ mr r4, r28 -/* 801834DC 0018043C C0 81 00 2C */ lfs f4, 0x2c(r1) -/* 801834E0 00180440 7F A5 EB 78 */ mr r5, r29 -/* 801834E4 00180444 C0 61 00 30 */ lfs f3, 0x30(r1) -/* 801834E8 00180448 38 61 00 08 */ addi r3, r1, 8 -/* 801834EC 0018044C C0 41 00 34 */ lfs f2, 0x34(r1) -/* 801834F0 00180450 C0 21 00 38 */ lfs f1, 0x38(r1) -/* 801834F4 00180454 C0 01 00 3C */ lfs f0, 0x3c(r1) -/* 801834F8 00180458 D0 A1 00 58 */ stfs f5, 0x58(r1) -/* 801834FC 0018045C D0 81 00 5C */ stfs f4, 0x5c(r1) -/* 80183500 00180460 D0 61 00 60 */ stfs f3, 0x60(r1) -/* 80183504 00180464 D0 41 00 64 */ stfs f2, 0x64(r1) -/* 80183508 00180468 D0 21 00 68 */ stfs f1, 0x68(r1) -/* 8018350C 0018046C D0 01 00 6C */ stfs f0, 0x6c(r1) -/* 80183510 00180470 48 15 0E 45 */ bl Transform__17CCollidableSphereCFRC12CTransform4f -/* 80183514 00180474 C0 61 00 08 */ lfs f3, 8(r1) -/* 80183518 00180478 C0 41 00 0C */ lfs f2, 0xc(r1) -/* 8018351C 0018047C C0 21 00 10 */ lfs f1, 0x10(r1) -/* 80183520 00180480 C0 01 00 14 */ lfs f0, 0x14(r1) -/* 80183524 00180484 D0 61 00 18 */ stfs f3, 0x18(r1) -/* 80183528 00180488 D0 41 00 1C */ stfs f2, 0x1c(r1) -/* 8018352C 0018048C D0 21 00 20 */ stfs f1, 0x20(r1) -/* 80183530 00180490 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 80183534 00180494 83 FF 00 58 */ lwz r31, 0x58(r31) -/* 80183538 00180498 48 00 00 30 */ b lbl_80183568 -lbl_8018353C: -/* 8018353C 0018049C 80 7F 01 2C */ lwz r3, 0x12c(r31) -/* 80183540 001804A0 7F C6 F3 78 */ mr r6, r30 -/* 80183544 001804A4 38 81 00 58 */ addi r4, r1, 0x58 -/* 80183548 001804A8 38 A1 00 18 */ addi r5, r1, 0x18 -/* 8018354C 001804AC 80 63 00 04 */ lwz r3, 4(r3) -/* 80183550 001804B0 48 12 27 45 */ bl SphereCollisionCheckBoolean__20CMetroidAreaColliderFRC12CAreaOctTreeRC6CAABoxRC7CSphereRC15CMaterialFilter -/* 80183554 001804B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80183558 001804B8 41 82 00 0C */ beq lbl_80183564 -/* 8018355C 001804BC 38 60 00 01 */ li r3, 1 -/* 80183560 001804C0 48 00 00 84 */ b lbl_801835E4 -lbl_80183564: -/* 80183564 001804C4 83 FF 01 30 */ lwz r31, 0x130(r31) -lbl_80183568: -/* 80183568 001804C8 80 0D A2 18 */ lwz r0, lbl_805A8DD8@sda21(r13) -/* 8018356C 001804CC 7C 1F 00 40 */ cmplw r31, r0 -/* 80183570 001804D0 40 82 FF CC */ bne lbl_8018353C -/* 80183574 001804D4 48 00 00 6C */ b lbl_801835E0 -lbl_80183578: -/* 80183578 001804D8 7F 83 E3 78 */ mr r3, r28 -/* 8018357C 001804DC 81 9C 00 00 */ lwz r12, 0(r28) -/* 80183580 001804E0 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 80183584 001804E4 7D 89 03 A6 */ mtctr r12 -/* 80183588 001804E8 4E 80 04 21 */ bctrl -/* 8018358C 001804EC 3C 03 BE BE */ addis r0, r3, 0xbebe -/* 80183590 001804F0 28 00 53 48 */ cmplwi r0, 0x5348 -/* 80183594 001804F4 40 82 00 4C */ bne lbl_801835E0 -/* 80183598 001804F8 7F 63 DB 78 */ mr r3, r27 -/* 8018359C 001804FC 7F A5 EB 78 */ mr r5, r29 -/* 801835A0 00180500 7F C6 F3 78 */ mr r6, r30 -/* 801835A4 00180504 38 9C 00 10 */ addi r4, r28, 0x10 -/* 801835A8 00180508 4B FF FD F9 */ bl DetectStaticCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter -/* 801835AC 0018050C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801835B0 00180510 41 82 00 0C */ beq lbl_801835BC -/* 801835B4 00180514 38 60 00 01 */ li r3, 1 -/* 801835B8 00180518 48 00 00 2C */ b lbl_801835E4 -lbl_801835BC: -/* 801835BC 0018051C 7F 63 DB 78 */ mr r3, r27 -/* 801835C0 00180520 7F A5 EB 78 */ mr r5, r29 -/* 801835C4 00180524 7F C6 F3 78 */ mr r6, r30 -/* 801835C8 00180528 38 9C 00 38 */ addi r4, r28, 0x38 -/* 801835CC 0018052C 4B FF FD D5 */ bl DetectStaticCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter -/* 801835D0 00180530 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801835D4 00180534 41 82 00 0C */ beq lbl_801835E0 -/* 801835D8 00180538 38 60 00 01 */ li r3, 1 -/* 801835DC 0018053C 48 00 00 08 */ b lbl_801835E4 -lbl_801835E0: -/* 801835E0 00180540 38 60 00 00 */ li r3, 0 -lbl_801835E4: -/* 801835E4 00180544 BB 61 00 8C */ lmw r27, 0x8c(r1) -/* 801835E8 00180548 80 01 00 A4 */ lwz r0, 0xa4(r1) -/* 801835EC 0018054C 7C 08 03 A6 */ mtlr r0 -/* 801835F0 00180550 38 21 00 A0 */ addi r1, r1, 0xa0 -/* 801835F4 00180554 4E 80 00 20 */ blr - -.global DetectStaticCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter -DetectStaticCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter: -/* 801835F8 00180558 94 21 FF 60 */ stwu r1, -0xa0(r1) -/* 801835FC 0018055C 7C 08 02 A6 */ mflr r0 -/* 80183600 00180560 90 01 00 A4 */ stw r0, 0xa4(r1) -/* 80183604 00180564 BF 41 00 88 */ stmw r26, 0x88(r1) -/* 80183608 00180568 7C BD 2B 78 */ mr r29, r5 -/* 8018360C 0018056C 7C 7A 1B 78 */ mr r26, r3 -/* 80183610 00180570 7C 9E 23 78 */ mr r30, r4 -/* 80183614 00180574 7F A3 EB 78 */ mr r3, r29 -/* 80183618 00180578 7C DB 33 78 */ mr r27, r6 -/* 8018361C 0018057C 7C FF 3B 78 */ mr r31, r7 -/* 80183620 00180580 81 9D 00 00 */ lwz r12, 0(r29) -/* 80183624 00180584 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 80183628 00180588 7D 89 03 A6 */ mtctr r12 -/* 8018362C 0018058C 4E 80 04 21 */ bctrl -/* 80183630 00180590 3C 03 B0 BE */ addis r0, r3, 0xb0be -/* 80183634 00180594 28 00 54 47 */ cmplwi r0, 0x5447 -/* 80183638 00180598 40 82 00 0C */ bne lbl_80183644 -/* 8018363C 0018059C 38 60 00 00 */ li r3, 0 -/* 80183640 001805A0 48 00 02 8C */ b lbl_801838CC -lbl_80183644: -/* 80183644 001805A4 7F A4 EB 78 */ mr r4, r29 -/* 80183648 001805A8 7F 65 DB 78 */ mr r5, r27 -/* 8018364C 001805AC 81 9D 00 00 */ lwz r12, 0(r29) -/* 80183650 001805B0 38 61 00 40 */ addi r3, r1, 0x40 -/* 80183654 001805B4 3B 80 00 00 */ li r28, 0 -/* 80183658 001805B8 81 8C 00 14 */ lwz r12, 0x14(r12) -/* 8018365C 001805BC 7D 89 03 A6 */ mtctr r12 -/* 80183660 001805C0 4E 80 04 21 */ bctrl -/* 80183664 001805C4 C0 A1 00 40 */ lfs f5, 0x40(r1) -/* 80183668 001805C8 7F C4 F3 78 */ mr r4, r30 -/* 8018366C 001805CC C0 81 00 44 */ lfs f4, 0x44(r1) -/* 80183670 001805D0 38 61 00 70 */ addi r3, r1, 0x70 -/* 80183674 001805D4 C0 61 00 48 */ lfs f3, 0x48(r1) -/* 80183678 001805D8 C0 41 00 4C */ lfs f2, 0x4c(r1) -/* 8018367C 001805DC C0 21 00 50 */ lfs f1, 0x50(r1) -/* 80183680 001805E0 C0 01 00 54 */ lfs f0, 0x54(r1) -/* 80183684 001805E4 D0 A1 00 70 */ stfs f5, 0x70(r1) -/* 80183688 001805E8 D0 81 00 74 */ stfs f4, 0x74(r1) -/* 8018368C 001805EC D0 61 00 78 */ stfs f3, 0x78(r1) -/* 80183690 001805F0 D0 41 00 7C */ stfs f2, 0x7c(r1) -/* 80183694 001805F4 D0 21 00 80 */ stfs f1, 0x80(r1) -/* 80183698 001805F8 D0 01 00 84 */ stfs f0, 0x84(r1) -/* 8018369C 001805FC 48 1B 43 E5 */ bl Inside__6CAABoxCFRC6CAABox -/* 801836A0 00180600 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801836A4 00180604 40 82 00 98 */ bne lbl_8018373C -/* 801836A8 00180608 C0 41 00 80 */ lfs f2, 0x80(r1) -/* 801836AC 0018060C 38 61 00 58 */ addi r3, r1, 0x58 -/* 801836B0 00180610 C0 82 A2 F0 */ lfs f4, lbl_805AC010@sda21(r2) -/* 801836B4 00180614 38 81 00 24 */ addi r4, r1, 0x24 -/* 801836B8 00180618 C0 21 00 84 */ lfs f1, 0x84(r1) -/* 801836BC 0018061C 38 A1 00 18 */ addi r5, r1, 0x18 -/* 801836C0 00180620 C0 01 00 7C */ lfs f0, 0x7c(r1) -/* 801836C4 00180624 EC C2 20 2A */ fadds f6, f2, f4 -/* 801836C8 00180628 C0 41 00 74 */ lfs f2, 0x74(r1) -/* 801836CC 0018062C EC A1 20 2A */ fadds f5, f1, f4 -/* 801836D0 00180630 C0 21 00 78 */ lfs f1, 0x78(r1) -/* 801836D4 00180634 EC 60 20 2A */ fadds f3, f0, f4 -/* 801836D8 00180638 C0 01 00 70 */ lfs f0, 0x70(r1) -/* 801836DC 0018063C EC 42 20 28 */ fsubs f2, f2, f4 -/* 801836E0 00180640 D0 C1 00 1C */ stfs f6, 0x1c(r1) -/* 801836E4 00180644 EC 21 20 28 */ fsubs f1, f1, f4 -/* 801836E8 00180648 EC 00 20 28 */ fsubs f0, f0, f4 -/* 801836EC 0018064C D0 61 00 18 */ stfs f3, 0x18(r1) -/* 801836F0 00180650 D0 A1 00 20 */ stfs f5, 0x20(r1) -/* 801836F4 00180654 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 801836F8 00180658 D0 41 00 28 */ stfs f2, 0x28(r1) -/* 801836FC 0018065C D0 21 00 2C */ stfs f1, 0x2c(r1) -/* 80183700 00180660 48 1B 4E 09 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 80183704 00180664 7F C4 F3 78 */ mr r4, r30 -/* 80183708 00180668 38 61 00 58 */ addi r3, r1, 0x58 -/* 8018370C 0018066C 48 1B 43 FD */ bl AccumulateBounds__6CAABoxFRC9CVector3f -/* 80183710 00180670 38 61 00 58 */ addi r3, r1, 0x58 -/* 80183714 00180674 38 9E 00 0C */ addi r4, r30, 0xc -/* 80183718 00180678 48 1B 43 F1 */ bl AccumulateBounds__6CAABoxFRC9CVector3f -/* 8018371C 0018067C 7F C3 F3 78 */ mr r3, r30 -/* 80183720 00180680 38 81 00 58 */ addi r4, r1, 0x58 -/* 80183724 00180684 48 12 01 C1 */ bl SetCacheBounds__19CAreaCollisionCacheFRC6CAABox -/* 80183728 00180688 7F 43 D3 78 */ mr r3, r26 -/* 8018372C 0018068C 7F C4 F3 78 */ mr r4, r30 -/* 80183730 00180690 48 00 0F 95 */ bl BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache -/* 80183734 00180694 38 60 00 00 */ li r3, 0 -/* 80183738 00180698 4B F3 0D C1 */ bl IsUser__Fi -lbl_8018373C: -/* 8018373C 0018069C 88 1E 1B 40 */ lbz r0, 0x1b40(r30) -/* 80183740 001806A0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80183744 001806A4 41 82 00 1C */ beq lbl_80183760 -/* 80183748 001806A8 7F 43 D3 78 */ mr r3, r26 -/* 8018374C 001806AC 7F A4 EB 78 */ mr r4, r29 -/* 80183750 001806B0 7F 65 DB 78 */ mr r5, r27 -/* 80183754 001806B4 7F E6 FB 78 */ mr r6, r31 -/* 80183758 001806B8 4B FF FC 49 */ bl DetectStaticCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter -/* 8018375C 001806BC 48 00 01 70 */ b lbl_801838CC -lbl_80183760: -/* 80183760 001806C0 7F A3 EB 78 */ mr r3, r29 -/* 80183764 001806C4 81 9D 00 00 */ lwz r12, 0(r29) -/* 80183768 001806C8 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 8018376C 001806CC 7D 89 03 A6 */ mtctr r12 -/* 80183770 001806D0 4E 80 04 21 */ bctrl -/* 80183774 001806D4 3C 03 BE BF */ addis r0, r3, 0xbebf -/* 80183778 001806D8 28 00 42 58 */ cmplwi r0, 0x4258 -/* 8018377C 001806DC 40 82 00 48 */ bne lbl_801837C4 -/* 80183780 001806E0 3B BE 00 1C */ addi r29, r30, 0x1c -/* 80183784 001806E4 3B 60 00 00 */ li r27, 0 -/* 80183788 001806E8 48 00 00 2C */ b lbl_801837B4 -lbl_8018378C: -/* 8018378C 001806EC 7F A3 EB 78 */ mr r3, r29 -/* 80183790 001806F0 7F E5 FB 78 */ mr r5, r31 -/* 80183794 001806F4 38 81 00 70 */ addi r4, r1, 0x70 -/* 80183798 001806F8 48 12 2D 69 */ bl AABoxCollisionCheckBoolean_Cached__20CMetroidAreaColliderFRCQ220CMetroidAreaCollider16COctreeLeafCacheRC6CAABoxRC15CMaterialFilter -/* 8018379C 001806FC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801837A0 00180700 41 82 00 0C */ beq lbl_801837AC -/* 801837A4 00180704 3B 80 00 01 */ li r28, 1 -/* 801837A8 00180708 48 00 01 20 */ b lbl_801838C8 -lbl_801837AC: -/* 801837AC 0018070C 3B BD 09 0C */ addi r29, r29, 0x90c -/* 801837B0 00180710 3B 7B 00 01 */ addi r27, r27, 1 -lbl_801837B4: -/* 801837B4 00180714 80 1E 00 18 */ lwz r0, 0x18(r30) -/* 801837B8 00180718 7C 1B 00 00 */ cmpw r27, r0 -/* 801837BC 0018071C 41 80 FF D0 */ blt lbl_8018378C -/* 801837C0 00180720 48 00 01 08 */ b lbl_801838C8 -lbl_801837C4: -/* 801837C4 00180724 7F A3 EB 78 */ mr r3, r29 -/* 801837C8 00180728 81 9D 00 00 */ lwz r12, 0(r29) -/* 801837CC 0018072C 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 801837D0 00180730 7D 89 03 A6 */ mtctr r12 -/* 801837D4 00180734 4E 80 04 21 */ bctrl -/* 801837D8 00180738 3C 03 AC B0 */ addis r0, r3, 0xacb0 -/* 801837DC 0018073C 28 00 48 52 */ cmplwi r0, 0x4852 -/* 801837E0 00180740 40 82 00 7C */ bne lbl_8018385C -/* 801837E4 00180744 7F A4 EB 78 */ mr r4, r29 -/* 801837E8 00180748 7F 65 DB 78 */ mr r5, r27 -/* 801837EC 0018074C 38 61 00 08 */ addi r3, r1, 8 -/* 801837F0 00180750 48 15 0B 65 */ bl Transform__17CCollidableSphereCFRC12CTransform4f -/* 801837F4 00180754 C0 61 00 08 */ lfs f3, 8(r1) -/* 801837F8 00180758 3B BE 00 1C */ addi r29, r30, 0x1c -/* 801837FC 0018075C C0 41 00 0C */ lfs f2, 0xc(r1) -/* 80183800 00180760 3B 60 00 00 */ li r27, 0 -/* 80183804 00180764 C0 21 00 10 */ lfs f1, 0x10(r1) -/* 80183808 00180768 C0 01 00 14 */ lfs f0, 0x14(r1) -/* 8018380C 0018076C D0 61 00 30 */ stfs f3, 0x30(r1) -/* 80183810 00180770 D0 41 00 34 */ stfs f2, 0x34(r1) -/* 80183814 00180774 D0 21 00 38 */ stfs f1, 0x38(r1) -/* 80183818 00180778 D0 01 00 3C */ stfs f0, 0x3c(r1) -/* 8018381C 0018077C 48 00 00 30 */ b lbl_8018384C -lbl_80183820: -/* 80183820 00180780 7F A3 EB 78 */ mr r3, r29 -/* 80183824 00180784 7F E6 FB 78 */ mr r6, r31 -/* 80183828 00180788 38 81 00 70 */ addi r4, r1, 0x70 -/* 8018382C 0018078C 38 A1 00 30 */ addi r5, r1, 0x30 -/* 80183830 00180790 48 12 24 DD */ bl SphereCollisionCheckBoolean_Cached__20CMetroidAreaColliderFRCQ220CMetroidAreaCollider16COctreeLeafCacheRC6CAABoxRC7CSphereRC15CMaterialFilter -/* 80183834 00180794 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80183838 00180798 41 82 00 0C */ beq lbl_80183844 -/* 8018383C 0018079C 3B 80 00 01 */ li r28, 1 -/* 80183840 001807A0 48 00 00 88 */ b lbl_801838C8 -lbl_80183844: -/* 80183844 001807A4 3B BD 09 0C */ addi r29, r29, 0x90c -/* 80183848 001807A8 3B 7B 00 01 */ addi r27, r27, 1 -lbl_8018384C: -/* 8018384C 001807AC 80 1E 00 18 */ lwz r0, 0x18(r30) -/* 80183850 001807B0 7C 1B 00 00 */ cmpw r27, r0 -/* 80183854 001807B4 41 80 FF CC */ blt lbl_80183820 -/* 80183858 001807B8 48 00 00 70 */ b lbl_801838C8 -lbl_8018385C: -/* 8018385C 001807BC 7F A3 EB 78 */ mr r3, r29 -/* 80183860 001807C0 81 9D 00 00 */ lwz r12, 0(r29) -/* 80183864 001807C4 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 80183868 001807C8 7D 89 03 A6 */ mtctr r12 -/* 8018386C 001807CC 4E 80 04 21 */ bctrl -/* 80183870 001807D0 3C 03 BE BE */ addis r0, r3, 0xbebe -/* 80183874 001807D4 28 00 53 48 */ cmplwi r0, 0x5348 -/* 80183878 001807D8 40 82 00 50 */ bne lbl_801838C8 -/* 8018387C 001807DC 7F 43 D3 78 */ mr r3, r26 -/* 80183880 001807E0 7F C4 F3 78 */ mr r4, r30 -/* 80183884 001807E4 7F 66 DB 78 */ mr r6, r27 -/* 80183888 001807E8 7F E7 FB 78 */ mr r7, r31 -/* 8018388C 001807EC 38 BD 00 10 */ addi r5, r29, 0x10 -/* 80183890 001807F0 4B FF FD 69 */ bl DetectStaticCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter -/* 80183894 001807F4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80183898 001807F8 41 82 00 0C */ beq lbl_801838A4 -/* 8018389C 001807FC 3B 80 00 01 */ li r28, 1 -/* 801838A0 00180800 48 00 00 28 */ b lbl_801838C8 -lbl_801838A4: -/* 801838A4 00180804 7F 43 D3 78 */ mr r3, r26 -/* 801838A8 00180808 7F C4 F3 78 */ mr r4, r30 -/* 801838AC 0018080C 7F 66 DB 78 */ mr r6, r27 -/* 801838B0 00180810 7F E7 FB 78 */ mr r7, r31 -/* 801838B4 00180814 38 BD 00 38 */ addi r5, r29, 0x38 -/* 801838B8 00180818 4B FF FD 41 */ bl DetectStaticCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter -/* 801838BC 0018081C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801838C0 00180820 41 82 00 08 */ beq lbl_801838C8 -/* 801838C4 00180824 3B 80 00 01 */ li r28, 1 -lbl_801838C8: -/* 801838C8 00180828 7F 83 E3 78 */ mr r3, r28 -lbl_801838CC: -/* 801838CC 0018082C BB 41 00 88 */ lmw r26, 0x88(r1) -/* 801838D0 00180830 80 01 00 A4 */ lwz r0, 0xa4(r1) -/* 801838D4 00180834 7C 08 03 A6 */ mtlr r0 -/* 801838D8 00180838 38 21 00 A0 */ addi r1, r1, 0xa0 -/* 801838DC 0018083C 4E 80 00 20 */ blr - -.global DetectStaticCollision__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterR18CCollisionInfoList -DetectStaticCollision__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterR18CCollisionInfoList: -/* 801838E0 00180840 94 21 FF 50 */ stwu r1, -0xb0(r1) -/* 801838E4 00180844 7C 08 02 A6 */ mflr r0 -/* 801838E8 00180848 90 01 00 B4 */ stw r0, 0xb4(r1) -/* 801838EC 0018084C BF 21 00 94 */ stmw r25, 0x94(r1) -/* 801838F0 00180850 7C 9A 23 78 */ mr r26, r4 -/* 801838F4 00180854 7C 79 1B 78 */ mr r25, r3 -/* 801838F8 00180858 7C BB 2B 78 */ mr r27, r5 -/* 801838FC 0018085C 7F 43 D3 78 */ mr r3, r26 -/* 80183900 00180860 7C DD 33 78 */ mr r29, r6 -/* 80183904 00180864 7C FE 3B 78 */ mr r30, r7 -/* 80183908 00180868 81 9A 00 00 */ lwz r12, 0(r26) -/* 8018390C 0018086C 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 80183910 00180870 7D 89 03 A6 */ mtctr r12 -/* 80183914 00180874 4E 80 04 21 */ bctrl -/* 80183918 00180878 3C 03 B0 BE */ addis r0, r3, 0xb0be -/* 8018391C 0018087C 28 00 54 47 */ cmplwi r0, 0x5447 -/* 80183920 00180880 40 82 00 0C */ bne lbl_8018392C -/* 80183924 00180884 38 60 00 00 */ li r3, 0 -/* 80183928 00180888 48 00 02 3C */ b lbl_80183B64 -lbl_8018392C: -/* 8018392C 0018088C 7F 43 D3 78 */ mr r3, r26 -/* 80183930 00180890 83 99 08 50 */ lwz r28, 0x850(r25) -/* 80183934 00180894 81 9A 00 00 */ lwz r12, 0(r26) -/* 80183938 00180898 3B E0 00 00 */ li r31, 0 -/* 8018393C 0018089C 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 80183940 001808A0 7D 89 03 A6 */ mtctr r12 -/* 80183944 001808A4 4E 80 04 21 */ bctrl -/* 80183948 001808A8 3C 03 BE BF */ addis r0, r3, 0xbebf -/* 8018394C 001808AC 28 00 42 58 */ cmplwi r0, 0x4258 -/* 80183950 001808B0 40 82 00 AC */ bne lbl_801839FC -/* 80183954 001808B4 81 9A 00 00 */ lwz r12, 0(r26) -/* 80183958 001808B8 7F 44 D3 78 */ mr r4, r26 -/* 8018395C 001808BC 7F 65 DB 78 */ mr r5, r27 -/* 80183960 001808C0 38 61 00 40 */ addi r3, r1, 0x40 -/* 80183964 001808C4 81 8C 00 14 */ lwz r12, 0x14(r12) -/* 80183968 001808C8 7D 89 03 A6 */ mtctr r12 -/* 8018396C 001808CC 4E 80 04 21 */ bctrl -/* 80183970 001808D0 C0 A1 00 40 */ lfs f5, 0x40(r1) -/* 80183974 001808D4 C0 81 00 44 */ lfs f4, 0x44(r1) -/* 80183978 001808D8 C0 61 00 48 */ lfs f3, 0x48(r1) -/* 8018397C 001808DC C0 41 00 4C */ lfs f2, 0x4c(r1) -/* 80183980 001808E0 C0 21 00 50 */ lfs f1, 0x50(r1) -/* 80183984 001808E4 C0 01 00 54 */ lfs f0, 0x54(r1) -/* 80183988 001808E8 D0 A1 00 70 */ stfs f5, 0x70(r1) -/* 8018398C 001808EC D0 81 00 74 */ stfs f4, 0x74(r1) -/* 80183990 001808F0 D0 61 00 78 */ stfs f3, 0x78(r1) -/* 80183994 001808F4 D0 41 00 7C */ stfs f2, 0x7c(r1) -/* 80183998 001808F8 D0 21 00 80 */ stfs f1, 0x80(r1) -/* 8018399C 001808FC D0 01 00 84 */ stfs f0, 0x84(r1) -/* 801839A0 00180900 83 7C 00 58 */ lwz r27, 0x58(r28) -/* 801839A4 00180904 48 00 00 48 */ b lbl_801839EC -lbl_801839A8: -/* 801839A8 00180908 7F 43 D3 78 */ mr r3, r26 -/* 801839AC 0018090C 80 9B 01 2C */ lwz r4, 0x12c(r27) -/* 801839B0 00180910 81 9A 00 00 */ lwz r12, 0(r26) -/* 801839B4 00180914 83 84 00 04 */ lwz r28, 4(r4) -/* 801839B8 00180918 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 801839BC 0018091C 7D 89 03 A6 */ mtctr r12 -/* 801839C0 00180920 4E 80 04 21 */ bctrl -/* 801839C4 00180924 7C 66 1B 78 */ mr r6, r3 -/* 801839C8 00180928 7F 83 E3 78 */ mr r3, r28 -/* 801839CC 0018092C 7F A5 EB 78 */ mr r5, r29 -/* 801839D0 00180930 7F C7 F3 78 */ mr r7, r30 -/* 801839D4 00180934 38 81 00 70 */ addi r4, r1, 0x70 -/* 801839D8 00180938 48 12 2E 25 */ bl AABoxCollisionCheck__20CMetroidAreaColliderFRC12CAreaOctTreeRC6CAABoxRC15CMaterialFilterRC13CMaterialListR18CCollisionInfoList -/* 801839DC 0018093C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801839E0 00180940 41 82 00 08 */ beq lbl_801839E8 -/* 801839E4 00180944 3B E0 00 01 */ li r31, 1 -lbl_801839E8: -/* 801839E8 00180948 83 7B 01 30 */ lwz r27, 0x130(r27) -lbl_801839EC: -/* 801839EC 0018094C 80 0D A2 18 */ lwz r0, lbl_805A8DD8@sda21(r13) -/* 801839F0 00180950 7C 1B 00 40 */ cmplw r27, r0 -/* 801839F4 00180954 40 82 FF B4 */ bne lbl_801839A8 -/* 801839F8 00180958 48 00 01 68 */ b lbl_80183B60 -lbl_801839FC: -/* 801839FC 0018095C 7F 43 D3 78 */ mr r3, r26 -/* 80183A00 00180960 81 9A 00 00 */ lwz r12, 0(r26) -/* 80183A04 00180964 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 80183A08 00180968 7D 89 03 A6 */ mtctr r12 -/* 80183A0C 0018096C 4E 80 04 21 */ bctrl -/* 80183A10 00180970 3C 03 AC B0 */ addis r0, r3, 0xacb0 -/* 80183A14 00180974 28 00 48 52 */ cmplwi r0, 0x4852 -/* 80183A18 00180978 40 82 00 E0 */ bne lbl_80183AF8 -/* 80183A1C 0018097C 81 9A 00 00 */ lwz r12, 0(r26) -/* 80183A20 00180980 7F 44 D3 78 */ mr r4, r26 -/* 80183A24 00180984 7F 65 DB 78 */ mr r5, r27 -/* 80183A28 00180988 38 61 00 28 */ addi r3, r1, 0x28 -/* 80183A2C 0018098C 81 8C 00 14 */ lwz r12, 0x14(r12) -/* 80183A30 00180990 7D 89 03 A6 */ mtctr r12 -/* 80183A34 00180994 4E 80 04 21 */ bctrl -/* 80183A38 00180998 C0 A1 00 28 */ lfs f5, 0x28(r1) -/* 80183A3C 0018099C 7F 44 D3 78 */ mr r4, r26 -/* 80183A40 001809A0 C0 81 00 2C */ lfs f4, 0x2c(r1) -/* 80183A44 001809A4 7F 65 DB 78 */ mr r5, r27 -/* 80183A48 001809A8 C0 61 00 30 */ lfs f3, 0x30(r1) -/* 80183A4C 001809AC 38 61 00 08 */ addi r3, r1, 8 -/* 80183A50 001809B0 C0 41 00 34 */ lfs f2, 0x34(r1) -/* 80183A54 001809B4 C0 21 00 38 */ lfs f1, 0x38(r1) -/* 80183A58 001809B8 C0 01 00 3C */ lfs f0, 0x3c(r1) -/* 80183A5C 001809BC D0 A1 00 58 */ stfs f5, 0x58(r1) -/* 80183A60 001809C0 D0 81 00 5C */ stfs f4, 0x5c(r1) -/* 80183A64 001809C4 D0 61 00 60 */ stfs f3, 0x60(r1) -/* 80183A68 001809C8 D0 41 00 64 */ stfs f2, 0x64(r1) -/* 80183A6C 001809CC D0 21 00 68 */ stfs f1, 0x68(r1) -/* 80183A70 001809D0 D0 01 00 6C */ stfs f0, 0x6c(r1) -/* 80183A74 001809D4 48 15 08 E1 */ bl Transform__17CCollidableSphereCFRC12CTransform4f -/* 80183A78 001809D8 C0 61 00 08 */ lfs f3, 8(r1) -/* 80183A7C 001809DC C0 41 00 0C */ lfs f2, 0xc(r1) -/* 80183A80 001809E0 C0 21 00 10 */ lfs f1, 0x10(r1) -/* 80183A84 001809E4 C0 01 00 14 */ lfs f0, 0x14(r1) -/* 80183A88 001809E8 D0 61 00 18 */ stfs f3, 0x18(r1) -/* 80183A8C 001809EC D0 41 00 1C */ stfs f2, 0x1c(r1) -/* 80183A90 001809F0 D0 21 00 20 */ stfs f1, 0x20(r1) -/* 80183A94 001809F4 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 80183A98 001809F8 83 7C 00 58 */ lwz r27, 0x58(r28) -/* 80183A9C 001809FC 48 00 00 4C */ b lbl_80183AE8 -lbl_80183AA0: -/* 80183AA0 00180A00 7F 43 D3 78 */ mr r3, r26 -/* 80183AA4 00180A04 80 9B 01 2C */ lwz r4, 0x12c(r27) -/* 80183AA8 00180A08 81 9A 00 00 */ lwz r12, 0(r26) -/* 80183AAC 00180A0C 83 84 00 04 */ lwz r28, 4(r4) -/* 80183AB0 00180A10 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 80183AB4 00180A14 7D 89 03 A6 */ mtctr r12 -/* 80183AB8 00180A18 4E 80 04 21 */ bctrl -/* 80183ABC 00180A1C 7C 66 1B 78 */ mr r6, r3 -/* 80183AC0 00180A20 7F 83 E3 78 */ mr r3, r28 -/* 80183AC4 00180A24 7F A7 EB 78 */ mr r7, r29 -/* 80183AC8 00180A28 7F C8 F3 78 */ mr r8, r30 -/* 80183ACC 00180A2C 38 81 00 58 */ addi r4, r1, 0x58 -/* 80183AD0 00180A30 38 A1 00 18 */ addi r5, r1, 0x18 -/* 80183AD4 00180A34 48 12 24 D1 */ bl SphereCollisionCheck__20CMetroidAreaColliderFRC12CAreaOctTreeRC6CAABoxRC7CSphereRC13CMaterialListRC15CMaterialFilterR18CCollisionInfoList -/* 80183AD8 00180A38 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80183ADC 00180A3C 41 82 00 08 */ beq lbl_80183AE4 -/* 80183AE0 00180A40 3B E0 00 01 */ li r31, 1 -lbl_80183AE4: -/* 80183AE4 00180A44 83 7B 01 30 */ lwz r27, 0x130(r27) -lbl_80183AE8: -/* 80183AE8 00180A48 80 0D A2 18 */ lwz r0, lbl_805A8DD8@sda21(r13) -/* 80183AEC 00180A4C 7C 1B 00 40 */ cmplw r27, r0 -/* 80183AF0 00180A50 40 82 FF B0 */ bne lbl_80183AA0 -/* 80183AF4 00180A54 48 00 00 6C */ b lbl_80183B60 -lbl_80183AF8: -/* 80183AF8 00180A58 7F 43 D3 78 */ mr r3, r26 -/* 80183AFC 00180A5C 81 9A 00 00 */ lwz r12, 0(r26) -/* 80183B00 00180A60 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 80183B04 00180A64 7D 89 03 A6 */ mtctr r12 -/* 80183B08 00180A68 4E 80 04 21 */ bctrl -/* 80183B0C 00180A6C 3C 03 BE BE */ addis r0, r3, 0xbebe -/* 80183B10 00180A70 28 00 53 48 */ cmplwi r0, 0x5348 -/* 80183B14 00180A74 40 82 00 4C */ bne lbl_80183B60 -/* 80183B18 00180A78 7F 23 CB 78 */ mr r3, r25 -/* 80183B1C 00180A7C 7F 65 DB 78 */ mr r5, r27 -/* 80183B20 00180A80 7F A6 EB 78 */ mr r6, r29 -/* 80183B24 00180A84 7F C7 F3 78 */ mr r7, r30 -/* 80183B28 00180A88 38 9A 00 10 */ addi r4, r26, 0x10 -/* 80183B2C 00180A8C 4B FF FD B5 */ bl DetectStaticCollision__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterR18CCollisionInfoList -/* 80183B30 00180A90 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80183B34 00180A94 41 82 00 08 */ beq lbl_80183B3C -/* 80183B38 00180A98 3B E0 00 01 */ li r31, 1 -lbl_80183B3C: -/* 80183B3C 00180A9C 7F 23 CB 78 */ mr r3, r25 -/* 80183B40 00180AA0 7F 65 DB 78 */ mr r5, r27 -/* 80183B44 00180AA4 7F A6 EB 78 */ mr r6, r29 -/* 80183B48 00180AA8 7F C7 F3 78 */ mr r7, r30 -/* 80183B4C 00180AAC 38 9A 00 38 */ addi r4, r26, 0x38 -/* 80183B50 00180AB0 4B FF FD 91 */ bl DetectStaticCollision__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterR18CCollisionInfoList -/* 80183B54 00180AB4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80183B58 00180AB8 41 82 00 08 */ beq lbl_80183B60 -/* 80183B5C 00180ABC 3B E0 00 01 */ li r31, 1 -lbl_80183B60: -/* 80183B60 00180AC0 7F E3 FB 78 */ mr r3, r31 -lbl_80183B64: -/* 80183B64 00180AC4 BB 21 00 94 */ lmw r25, 0x94(r1) -/* 80183B68 00180AC8 80 01 00 B4 */ lwz r0, 0xb4(r1) -/* 80183B6C 00180ACC 7C 08 03 A6 */ mtlr r0 -/* 80183B70 00180AD0 38 21 00 B0 */ addi r1, r1, 0xb0 -/* 80183B74 00180AD4 4E 80 00 20 */ blr - -.global DetectStaticCollision_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterR18CCollisionInfoList -DetectStaticCollision_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterR18CCollisionInfoList: -/* 80183B78 00180AD8 94 21 FF 50 */ stwu r1, -0xb0(r1) -/* 80183B7C 00180ADC 7C 08 02 A6 */ mflr r0 -/* 80183B80 00180AE0 90 01 00 B4 */ stw r0, 0xb4(r1) -/* 80183B84 00180AE4 BF 21 00 94 */ stmw r25, 0x94(r1) -/* 80183B88 00180AE8 7C B9 2B 78 */ mr r25, r5 -/* 80183B8C 00180AEC 7C 7B 1B 78 */ mr r27, r3 -/* 80183B90 00180AF0 7C 9C 23 78 */ mr r28, r4 -/* 80183B94 00180AF4 7F 23 CB 78 */ mr r3, r25 -/* 80183B98 00180AF8 7C DA 33 78 */ mr r26, r6 -/* 80183B9C 00180AFC 7C FD 3B 78 */ mr r29, r7 -/* 80183BA0 00180B00 7D 1E 43 78 */ mr r30, r8 -/* 80183BA4 00180B04 81 99 00 00 */ lwz r12, 0(r25) -/* 80183BA8 00180B08 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 80183BAC 00180B0C 7D 89 03 A6 */ mtctr r12 -/* 80183BB0 00180B10 4E 80 04 21 */ bctrl -/* 80183BB4 00180B14 3C 03 B0 BE */ addis r0, r3, 0xb0be -/* 80183BB8 00180B18 28 00 54 47 */ cmplwi r0, 0x5447 -/* 80183BBC 00180B1C 40 82 00 0C */ bne lbl_80183BC8 -/* 80183BC0 00180B20 38 60 00 00 */ li r3, 0 -/* 80183BC4 00180B24 48 00 02 C8 */ b lbl_80183E8C -lbl_80183BC8: -/* 80183BC8 00180B28 7F 24 CB 78 */ mr r4, r25 -/* 80183BCC 00180B2C 7F 45 D3 78 */ mr r5, r26 -/* 80183BD0 00180B30 81 99 00 00 */ lwz r12, 0(r25) -/* 80183BD4 00180B34 38 61 00 40 */ addi r3, r1, 0x40 -/* 80183BD8 00180B38 3B E0 00 00 */ li r31, 0 -/* 80183BDC 00180B3C 81 8C 00 14 */ lwz r12, 0x14(r12) -/* 80183BE0 00180B40 7D 89 03 A6 */ mtctr r12 -/* 80183BE4 00180B44 4E 80 04 21 */ bctrl -/* 80183BE8 00180B48 C0 A1 00 40 */ lfs f5, 0x40(r1) -/* 80183BEC 00180B4C 7F 84 E3 78 */ mr r4, r28 -/* 80183BF0 00180B50 C0 81 00 44 */ lfs f4, 0x44(r1) -/* 80183BF4 00180B54 38 61 00 70 */ addi r3, r1, 0x70 -/* 80183BF8 00180B58 C0 61 00 48 */ lfs f3, 0x48(r1) -/* 80183BFC 00180B5C C0 41 00 4C */ lfs f2, 0x4c(r1) -/* 80183C00 00180B60 C0 21 00 50 */ lfs f1, 0x50(r1) -/* 80183C04 00180B64 C0 01 00 54 */ lfs f0, 0x54(r1) -/* 80183C08 00180B68 D0 A1 00 70 */ stfs f5, 0x70(r1) -/* 80183C0C 00180B6C D0 81 00 74 */ stfs f4, 0x74(r1) -/* 80183C10 00180B70 D0 61 00 78 */ stfs f3, 0x78(r1) -/* 80183C14 00180B74 D0 41 00 7C */ stfs f2, 0x7c(r1) -/* 80183C18 00180B78 D0 21 00 80 */ stfs f1, 0x80(r1) -/* 80183C1C 00180B7C D0 01 00 84 */ stfs f0, 0x84(r1) -/* 80183C20 00180B80 48 1B 3E 61 */ bl Inside__6CAABoxCFRC6CAABox -/* 80183C24 00180B84 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80183C28 00180B88 40 82 00 98 */ bne lbl_80183CC0 -/* 80183C2C 00180B8C C0 41 00 80 */ lfs f2, 0x80(r1) -/* 80183C30 00180B90 38 61 00 58 */ addi r3, r1, 0x58 -/* 80183C34 00180B94 C0 82 A2 F0 */ lfs f4, lbl_805AC010@sda21(r2) -/* 80183C38 00180B98 38 81 00 24 */ addi r4, r1, 0x24 -/* 80183C3C 00180B9C C0 21 00 84 */ lfs f1, 0x84(r1) -/* 80183C40 00180BA0 38 A1 00 18 */ addi r5, r1, 0x18 -/* 80183C44 00180BA4 C0 01 00 7C */ lfs f0, 0x7c(r1) -/* 80183C48 00180BA8 EC C2 20 2A */ fadds f6, f2, f4 -/* 80183C4C 00180BAC C0 41 00 74 */ lfs f2, 0x74(r1) -/* 80183C50 00180BB0 EC A1 20 2A */ fadds f5, f1, f4 -/* 80183C54 00180BB4 C0 21 00 78 */ lfs f1, 0x78(r1) -/* 80183C58 00180BB8 EC 60 20 2A */ fadds f3, f0, f4 -/* 80183C5C 00180BBC C0 01 00 70 */ lfs f0, 0x70(r1) -/* 80183C60 00180BC0 EC 42 20 28 */ fsubs f2, f2, f4 -/* 80183C64 00180BC4 D0 C1 00 1C */ stfs f6, 0x1c(r1) -/* 80183C68 00180BC8 EC 21 20 28 */ fsubs f1, f1, f4 -/* 80183C6C 00180BCC EC 00 20 28 */ fsubs f0, f0, f4 -/* 80183C70 00180BD0 D0 61 00 18 */ stfs f3, 0x18(r1) -/* 80183C74 00180BD4 D0 A1 00 20 */ stfs f5, 0x20(r1) -/* 80183C78 00180BD8 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 80183C7C 00180BDC D0 41 00 28 */ stfs f2, 0x28(r1) -/* 80183C80 00180BE0 D0 21 00 2C */ stfs f1, 0x2c(r1) -/* 80183C84 00180BE4 48 1B 48 85 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 80183C88 00180BE8 7F 84 E3 78 */ mr r4, r28 -/* 80183C8C 00180BEC 38 61 00 58 */ addi r3, r1, 0x58 -/* 80183C90 00180BF0 48 1B 3E 79 */ bl AccumulateBounds__6CAABoxFRC9CVector3f -/* 80183C94 00180BF4 38 61 00 58 */ addi r3, r1, 0x58 -/* 80183C98 00180BF8 38 9C 00 0C */ addi r4, r28, 0xc -/* 80183C9C 00180BFC 48 1B 3E 6D */ bl AccumulateBounds__6CAABoxFRC9CVector3f -/* 80183CA0 00180C00 7F 83 E3 78 */ mr r3, r28 -/* 80183CA4 00180C04 38 81 00 58 */ addi r4, r1, 0x58 -/* 80183CA8 00180C08 48 11 FC 3D */ bl SetCacheBounds__19CAreaCollisionCacheFRC6CAABox -/* 80183CAC 00180C0C 7F 63 DB 78 */ mr r3, r27 -/* 80183CB0 00180C10 7F 84 E3 78 */ mr r4, r28 -/* 80183CB4 00180C14 48 00 0A 11 */ bl BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache -/* 80183CB8 00180C18 38 60 00 00 */ li r3, 0 -/* 80183CBC 00180C1C 4B F3 08 3D */ bl IsUser__Fi -lbl_80183CC0: -/* 80183CC0 00180C20 88 1C 1B 40 */ lbz r0, 0x1b40(r28) -/* 80183CC4 00180C24 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 80183CC8 00180C28 41 82 00 20 */ beq lbl_80183CE8 -/* 80183CCC 00180C2C 7F 63 DB 78 */ mr r3, r27 -/* 80183CD0 00180C30 7F 24 CB 78 */ mr r4, r25 -/* 80183CD4 00180C34 7F 45 D3 78 */ mr r5, r26 -/* 80183CD8 00180C38 7F A6 EB 78 */ mr r6, r29 -/* 80183CDC 00180C3C 7F C7 F3 78 */ mr r7, r30 -/* 80183CE0 00180C40 4B FF FC 01 */ bl DetectStaticCollision__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterR18CCollisionInfoList -/* 80183CE4 00180C44 48 00 01 A8 */ b lbl_80183E8C -lbl_80183CE8: -/* 80183CE8 00180C48 7F 23 CB 78 */ mr r3, r25 -/* 80183CEC 00180C4C 81 99 00 00 */ lwz r12, 0(r25) -/* 80183CF0 00180C50 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 80183CF4 00180C54 7D 89 03 A6 */ mtctr r12 -/* 80183CF8 00180C58 4E 80 04 21 */ bctrl -/* 80183CFC 00180C5C 3C 03 BE BF */ addis r0, r3, 0xbebf -/* 80183D00 00180C60 28 00 42 58 */ cmplwi r0, 0x4258 -/* 80183D04 00180C64 40 82 00 64 */ bne lbl_80183D68 -/* 80183D08 00180C68 7F 3A CB 78 */ mr r26, r25 -/* 80183D0C 00180C6C 3B 7C 00 1C */ addi r27, r28, 0x1c -/* 80183D10 00180C70 3B 20 00 00 */ li r25, 0 -/* 80183D14 00180C74 48 00 00 44 */ b lbl_80183D58 -lbl_80183D18: -/* 80183D18 00180C78 7F 43 D3 78 */ mr r3, r26 -/* 80183D1C 00180C7C 81 9A 00 00 */ lwz r12, 0(r26) -/* 80183D20 00180C80 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 80183D24 00180C84 7D 89 03 A6 */ mtctr r12 -/* 80183D28 00180C88 4E 80 04 21 */ bctrl -/* 80183D2C 00180C8C 7C 66 1B 78 */ mr r6, r3 -/* 80183D30 00180C90 7F 63 DB 78 */ mr r3, r27 -/* 80183D34 00180C94 7F A5 EB 78 */ mr r5, r29 -/* 80183D38 00180C98 7F C7 F3 78 */ mr r7, r30 -/* 80183D3C 00180C9C 38 81 00 70 */ addi r4, r1, 0x70 -/* 80183D40 00180CA0 48 12 2C FD */ bl AABoxCollisionCheck_Cached__20CMetroidAreaColliderFRCQ220CMetroidAreaCollider16COctreeLeafCacheRC6CAABoxRC15CMaterialFilterRC13CMaterialListR18CCollisionInfoList -/* 80183D44 00180CA4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80183D48 00180CA8 41 82 00 08 */ beq lbl_80183D50 -/* 80183D4C 00180CAC 3B E0 00 01 */ li r31, 1 -lbl_80183D50: -/* 80183D50 00180CB0 3B 7B 09 0C */ addi r27, r27, 0x90c -/* 80183D54 00180CB4 3B 39 00 01 */ addi r25, r25, 1 -lbl_80183D58: -/* 80183D58 00180CB8 80 1C 00 18 */ lwz r0, 0x18(r28) -/* 80183D5C 00180CBC 7C 19 00 00 */ cmpw r25, r0 -/* 80183D60 00180CC0 41 80 FF B8 */ blt lbl_80183D18 -/* 80183D64 00180CC4 48 00 01 24 */ b lbl_80183E88 -lbl_80183D68: -/* 80183D68 00180CC8 7F 23 CB 78 */ mr r3, r25 -/* 80183D6C 00180CCC 81 99 00 00 */ lwz r12, 0(r25) -/* 80183D70 00180CD0 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 80183D74 00180CD4 7D 89 03 A6 */ mtctr r12 -/* 80183D78 00180CD8 4E 80 04 21 */ bctrl -/* 80183D7C 00180CDC 3C 03 AC B0 */ addis r0, r3, 0xacb0 -/* 80183D80 00180CE0 28 00 48 52 */ cmplwi r0, 0x4852 -/* 80183D84 00180CE4 40 82 00 94 */ bne lbl_80183E18 -/* 80183D88 00180CE8 7F 24 CB 78 */ mr r4, r25 -/* 80183D8C 00180CEC 7F 45 D3 78 */ mr r5, r26 -/* 80183D90 00180CF0 38 61 00 08 */ addi r3, r1, 8 -/* 80183D94 00180CF4 48 15 05 C1 */ bl Transform__17CCollidableSphereCFRC12CTransform4f -/* 80183D98 00180CF8 C0 61 00 08 */ lfs f3, 8(r1) -/* 80183D9C 00180CFC 3B 7C 00 1C */ addi r27, r28, 0x1c -/* 80183DA0 00180D00 C0 41 00 0C */ lfs f2, 0xc(r1) -/* 80183DA4 00180D04 3B 40 00 00 */ li r26, 0 -/* 80183DA8 00180D08 C0 21 00 10 */ lfs f1, 0x10(r1) -/* 80183DAC 00180D0C C0 01 00 14 */ lfs f0, 0x14(r1) -/* 80183DB0 00180D10 D0 61 00 30 */ stfs f3, 0x30(r1) -/* 80183DB4 00180D14 D0 41 00 34 */ stfs f2, 0x34(r1) -/* 80183DB8 00180D18 D0 21 00 38 */ stfs f1, 0x38(r1) -/* 80183DBC 00180D1C D0 01 00 3C */ stfs f0, 0x3c(r1) -/* 80183DC0 00180D20 48 00 00 48 */ b lbl_80183E08 -lbl_80183DC4: -/* 80183DC4 00180D24 7F 23 CB 78 */ mr r3, r25 -/* 80183DC8 00180D28 81 99 00 00 */ lwz r12, 0(r25) -/* 80183DCC 00180D2C 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 80183DD0 00180D30 7D 89 03 A6 */ mtctr r12 -/* 80183DD4 00180D34 4E 80 04 21 */ bctrl -/* 80183DD8 00180D38 7C 66 1B 78 */ mr r6, r3 -/* 80183DDC 00180D3C 7F 63 DB 78 */ mr r3, r27 -/* 80183DE0 00180D40 7F A7 EB 78 */ mr r7, r29 -/* 80183DE4 00180D44 7F C8 F3 78 */ mr r8, r30 -/* 80183DE8 00180D48 38 81 00 70 */ addi r4, r1, 0x70 -/* 80183DEC 00180D4C 38 A1 00 30 */ addi r5, r1, 0x30 -/* 80183DF0 00180D50 48 12 22 45 */ bl SphereCollisionCheck_Cached__20CMetroidAreaColliderFRCQ220CMetroidAreaCollider16COctreeLeafCacheRC6CAABoxRC7CSphereRC13CMaterialListRC15CMaterialFilterR18CCollisionInfoList -/* 80183DF4 00180D54 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80183DF8 00180D58 41 82 00 08 */ beq lbl_80183E00 -/* 80183DFC 00180D5C 3B E0 00 01 */ li r31, 1 -lbl_80183E00: -/* 80183E00 00180D60 3B 7B 09 0C */ addi r27, r27, 0x90c -/* 80183E04 00180D64 3B 5A 00 01 */ addi r26, r26, 1 -lbl_80183E08: -/* 80183E08 00180D68 80 1C 00 18 */ lwz r0, 0x18(r28) -/* 80183E0C 00180D6C 7C 1A 00 00 */ cmpw r26, r0 -/* 80183E10 00180D70 41 80 FF B4 */ blt lbl_80183DC4 -/* 80183E14 00180D74 48 00 00 74 */ b lbl_80183E88 -lbl_80183E18: -/* 80183E18 00180D78 7F 23 CB 78 */ mr r3, r25 -/* 80183E1C 00180D7C 81 99 00 00 */ lwz r12, 0(r25) -/* 80183E20 00180D80 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 80183E24 00180D84 7D 89 03 A6 */ mtctr r12 -/* 80183E28 00180D88 4E 80 04 21 */ bctrl -/* 80183E2C 00180D8C 3C 03 BE BE */ addis r0, r3, 0xbebe -/* 80183E30 00180D90 28 00 53 48 */ cmplwi r0, 0x5348 -/* 80183E34 00180D94 40 82 00 54 */ bne lbl_80183E88 -/* 80183E38 00180D98 7F 63 DB 78 */ mr r3, r27 -/* 80183E3C 00180D9C 7F 84 E3 78 */ mr r4, r28 -/* 80183E40 00180DA0 7F 46 D3 78 */ mr r6, r26 -/* 80183E44 00180DA4 7F A7 EB 78 */ mr r7, r29 -/* 80183E48 00180DA8 7F C8 F3 78 */ mr r8, r30 -/* 80183E4C 00180DAC 38 B9 00 10 */ addi r5, r25, 0x10 -/* 80183E50 00180DB0 4B FF FD 29 */ bl DetectStaticCollision_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterR18CCollisionInfoList -/* 80183E54 00180DB4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80183E58 00180DB8 41 82 00 08 */ beq lbl_80183E60 -/* 80183E5C 00180DBC 3B E0 00 01 */ li r31, 1 -lbl_80183E60: -/* 80183E60 00180DC0 7F 63 DB 78 */ mr r3, r27 -/* 80183E64 00180DC4 7F 84 E3 78 */ mr r4, r28 -/* 80183E68 00180DC8 7F 46 D3 78 */ mr r6, r26 -/* 80183E6C 00180DCC 7F A7 EB 78 */ mr r7, r29 -/* 80183E70 00180DD0 7F C8 F3 78 */ mr r8, r30 -/* 80183E74 00180DD4 38 B9 00 38 */ addi r5, r25, 0x38 -/* 80183E78 00180DD8 4B FF FD 01 */ bl DetectStaticCollision_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterR18CCollisionInfoList -/* 80183E7C 00180DDC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80183E80 00180DE0 41 82 00 08 */ beq lbl_80183E88 -/* 80183E84 00180DE4 3B E0 00 01 */ li r31, 1 -lbl_80183E88: -/* 80183E88 00180DE8 7F E3 FB 78 */ mr r3, r31 -lbl_80183E8C: -/* 80183E8C 00180DEC BB 21 00 94 */ lmw r25, 0x94(r1) -/* 80183E90 00180DF0 80 01 00 B4 */ lwz r0, 0xb4(r1) -/* 80183E94 00180DF4 7C 08 03 A6 */ mtlr r0 -/* 80183E98 00180DF8 38 21 00 B0 */ addi r1, r1, 0xb0 -/* 80183E9C 00180DFC 4E 80 00 20 */ blr - -.global "DetectDynamicCollision__14CGameCollisionFRC19CCollisionPrimitiveRC12CTransform4fRCQ24rstl32reserved_vector<9TUniqueId,1024>R9TUniqueIdR18CCollisionInfoListRC13CStateManager" -"DetectDynamicCollision__14CGameCollisionFRC19CCollisionPrimitiveRC12CTransform4fRCQ24rstl32reserved_vector<9TUniqueId,1024>R9TUniqueIdR18CCollisionInfoListRC13CStateManager": -/* 80183EA0 00180E00 94 21 FF 20 */ stwu r1, -0xe0(r1) -/* 80183EA4 00180E04 7C 08 02 A6 */ mflr r0 -/* 80183EA8 00180E08 90 01 00 E4 */ stw r0, 0xe4(r1) -/* 80183EAC 00180E0C BE C1 00 B8 */ stmw r22, 0xb8(r1) -/* 80183EB0 00180E10 7C B9 2B 78 */ mr r25, r5 -/* 80183EB4 00180E14 7C 77 1B 78 */ mr r23, r3 -/* 80183EB8 00180E18 7C 98 23 78 */ mr r24, r4 -/* 80183EBC 00180E1C 7C DA 33 78 */ mr r26, r6 -/* 80183EC0 00180E20 7C FB 3B 78 */ mr r27, r7 -/* 80183EC4 00180E24 7D 1C 43 78 */ mr r28, r8 -/* 80183EC8 00180E28 3B B9 00 04 */ addi r29, r25, 4 -/* 80183ECC 00180E2C 3B E1 00 4C */ addi r31, r1, 0x4c -/* 80183ED0 00180E30 3B C1 00 84 */ addi r30, r1, 0x84 -/* 80183ED4 00180E34 48 00 00 C0 */ b lbl_80183F94 -lbl_80183ED8: -/* 80183ED8 00180E38 A0 1D 00 00 */ lhz r0, 0(r29) -/* 80183EDC 00180E3C 7F 83 E3 78 */ mr r3, r28 -/* 80183EE0 00180E40 38 81 00 08 */ addi r4, r1, 8 -/* 80183EE4 00180E44 B0 01 00 08 */ sth r0, 8(r1) -/* 80183EE8 00180E48 4B EC 86 BD */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 80183EEC 00180E4C 7C 64 1B 78 */ mr r4, r3 -/* 80183EF0 00180E50 38 61 00 0C */ addi r3, r1, 0xc -/* 80183EF4 00180E54 4B F2 87 F1 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" -/* 80183EF8 00180E58 82 C3 00 04 */ lwz r22, 4(r3) -/* 80183EFC 00180E5C 28 16 00 00 */ cmplwi r22, 0 -/* 80183F00 00180E60 41 82 00 90 */ beq lbl_80183F90 -/* 80183F04 00180E64 7E C4 B3 78 */ mr r4, r22 -/* 80183F08 00180E68 38 61 00 14 */ addi r3, r1, 0x14 -/* 80183F0C 00180E6C 81 96 00 00 */ lwz r12, 0(r22) -/* 80183F10 00180E70 81 8C 00 70 */ lwz r12, 0x70(r12) -/* 80183F14 00180E74 7D 89 03 A6 */ mtctr r12 -/* 80183F18 00180E78 4E 80 04 21 */ bctrl -/* 80183F1C 00180E7C 7E C3 B3 78 */ mr r3, r22 -/* 80183F20 00180E80 81 96 00 00 */ lwz r12, 0(r22) -/* 80183F24 00180E84 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 80183F28 00180E88 7D 89 03 A6 */ mtctr r12 -/* 80183F2C 00180E8C 4E 80 04 21 */ bctrl -/* 80183F30 00180E90 3C 80 80 5A */ lis r4, lbl_8059FD18@ha -/* 80183F34 00180E94 90 61 00 44 */ stw r3, 0x44(r1) -/* 80183F38 00180E98 38 04 FD 18 */ addi r0, r4, lbl_8059FD18@l -/* 80183F3C 00180E9C 7F E3 FB 78 */ mr r3, r31 -/* 80183F40 00180EA0 90 01 00 48 */ stw r0, 0x48(r1) -/* 80183F44 00180EA4 38 81 00 14 */ addi r4, r1, 0x14 -/* 80183F48 00180EA8 48 18 EC 2D */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80183F4C 00180EAC 3C 60 80 5A */ lis r3, lbl_8059FD18@ha -/* 80183F50 00180EB0 92 E1 00 7C */ stw r23, 0x7c(r1) -/* 80183F54 00180EB4 38 03 FD 18 */ addi r0, r3, lbl_8059FD18@l -/* 80183F58 00180EB8 7F C3 F3 78 */ mr r3, r30 -/* 80183F5C 00180EBC 90 01 00 80 */ stw r0, 0x80(r1) -/* 80183F60 00180EC0 7F 04 C3 78 */ mr r4, r24 -/* 80183F64 00180EC4 48 18 EC 11 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80183F68 00180EC8 7F 65 DB 78 */ mr r5, r27 -/* 80183F6C 00180ECC 38 61 00 7C */ addi r3, r1, 0x7c -/* 80183F70 00180ED0 38 81 00 44 */ addi r4, r1, 0x44 -/* 80183F74 00180ED4 48 14 A8 3D */ bl Collide__19CCollisionPrimitiveFRCQ227CInternalCollisionStructure9CPrimDescRCQ227CInternalCollisionStructure9CPrimDescR18CCollisionInfoList -/* 80183F78 00180ED8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80183F7C 00180EDC 41 82 00 14 */ beq lbl_80183F90 -/* 80183F80 00180EE0 A0 16 00 08 */ lhz r0, 8(r22) -/* 80183F84 00180EE4 38 60 00 01 */ li r3, 1 -/* 80183F88 00180EE8 B0 1A 00 00 */ sth r0, 0(r26) -/* 80183F8C 00180EEC 48 00 00 2C */ b lbl_80183FB8 -lbl_80183F90: -/* 80183F90 00180EF0 3B BD 00 02 */ addi r29, r29, 2 -lbl_80183F94: -/* 80183F94 00180EF4 80 19 00 00 */ lwz r0, 0(r25) -/* 80183F98 00180EF8 54 00 08 3C */ slwi r0, r0, 1 -/* 80183F9C 00180EFC 7C 79 02 14 */ add r3, r25, r0 -/* 80183FA0 00180F00 38 03 00 04 */ addi r0, r3, 4 -/* 80183FA4 00180F04 7C 1D 00 40 */ cmplw r29, r0 -/* 80183FA8 00180F08 40 82 FF 30 */ bne lbl_80183ED8 -/* 80183FAC 00180F0C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80183FB0 00180F10 38 60 00 00 */ li r3, 0 -/* 80183FB4 00180F14 B0 1A 00 00 */ sth r0, 0(r26) -lbl_80183FB8: -/* 80183FB8 00180F18 BA C1 00 B8 */ lmw r22, 0xb8(r1) -/* 80183FBC 00180F1C 80 01 00 E4 */ lwz r0, 0xe4(r1) -/* 80183FC0 00180F20 7C 08 03 A6 */ mtlr r0 -/* 80183FC4 00180F24 38 21 00 E0 */ addi r1, r1, 0xe0 -/* 80183FC8 00180F28 4E 80 00 20 */ blr - -.global "DetectDynamicCollisionBoolean__14CGameCollisionFRC19CCollisionPrimitiveRC12CTransform4fRCQ24rstl32reserved_vector<9TUniqueId,1024>RC13CStateManager" -"DetectDynamicCollisionBoolean__14CGameCollisionFRC19CCollisionPrimitiveRC12CTransform4fRCQ24rstl32reserved_vector<9TUniqueId,1024>RC13CStateManager": -/* 80183FCC 00180F2C 94 21 FF 20 */ stwu r1, -0xe0(r1) -/* 80183FD0 00180F30 7C 08 02 A6 */ mflr r0 -/* 80183FD4 00180F34 90 01 00 E4 */ stw r0, 0xe4(r1) -/* 80183FD8 00180F38 BF 01 00 C0 */ stmw r24, 0xc0(r1) -/* 80183FDC 00180F3C 7C BB 2B 78 */ mr r27, r5 -/* 80183FE0 00180F40 7C 79 1B 78 */ mr r25, r3 -/* 80183FE4 00180F44 7C 9A 23 78 */ mr r26, r4 -/* 80183FE8 00180F48 7C DC 33 78 */ mr r28, r6 -/* 80183FEC 00180F4C 3B BB 00 04 */ addi r29, r27, 4 -/* 80183FF0 00180F50 3B E1 00 4C */ addi r31, r1, 0x4c -/* 80183FF4 00180F54 3B C1 00 84 */ addi r30, r1, 0x84 -/* 80183FF8 00180F58 48 00 00 B4 */ b lbl_801840AC -lbl_80183FFC: -/* 80183FFC 00180F5C A0 1D 00 00 */ lhz r0, 0(r29) -/* 80184000 00180F60 7F 83 E3 78 */ mr r3, r28 -/* 80184004 00180F64 38 81 00 08 */ addi r4, r1, 8 -/* 80184008 00180F68 B0 01 00 08 */ sth r0, 8(r1) -/* 8018400C 00180F6C 4B EC 85 99 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 80184010 00180F70 7C 64 1B 78 */ mr r4, r3 -/* 80184014 00180F74 38 61 00 0C */ addi r3, r1, 0xc -/* 80184018 00180F78 4B F2 86 CD */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" -/* 8018401C 00180F7C 83 03 00 04 */ lwz r24, 4(r3) -/* 80184020 00180F80 28 18 00 00 */ cmplwi r24, 0 -/* 80184024 00180F84 41 82 00 84 */ beq lbl_801840A8 -/* 80184028 00180F88 7F 04 C3 78 */ mr r4, r24 -/* 8018402C 00180F8C 38 61 00 14 */ addi r3, r1, 0x14 -/* 80184030 00180F90 81 98 00 00 */ lwz r12, 0(r24) -/* 80184034 00180F94 81 8C 00 70 */ lwz r12, 0x70(r12) -/* 80184038 00180F98 7D 89 03 A6 */ mtctr r12 -/* 8018403C 00180F9C 4E 80 04 21 */ bctrl -/* 80184040 00180FA0 7F 03 C3 78 */ mr r3, r24 -/* 80184044 00180FA4 81 98 00 00 */ lwz r12, 0(r24) -/* 80184048 00180FA8 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 8018404C 00180FAC 7D 89 03 A6 */ mtctr r12 -/* 80184050 00180FB0 4E 80 04 21 */ bctrl -/* 80184054 00180FB4 3C 80 80 5A */ lis r4, lbl_8059FD18@ha -/* 80184058 00180FB8 90 61 00 44 */ stw r3, 0x44(r1) -/* 8018405C 00180FBC 38 04 FD 18 */ addi r0, r4, lbl_8059FD18@l -/* 80184060 00180FC0 7F E3 FB 78 */ mr r3, r31 -/* 80184064 00180FC4 90 01 00 48 */ stw r0, 0x48(r1) -/* 80184068 00180FC8 38 81 00 14 */ addi r4, r1, 0x14 -/* 8018406C 00180FCC 48 18 EB 09 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80184070 00180FD0 3C 60 80 5A */ lis r3, lbl_8059FD18@ha -/* 80184074 00180FD4 93 21 00 7C */ stw r25, 0x7c(r1) -/* 80184078 00180FD8 38 03 FD 18 */ addi r0, r3, lbl_8059FD18@l -/* 8018407C 00180FDC 7F C3 F3 78 */ mr r3, r30 -/* 80184080 00180FE0 90 01 00 80 */ stw r0, 0x80(r1) -/* 80184084 00180FE4 7F 44 D3 78 */ mr r4, r26 -/* 80184088 00180FE8 48 18 EA ED */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8018408C 00180FEC 38 61 00 7C */ addi r3, r1, 0x7c -/* 80184090 00180FF0 38 81 00 44 */ addi r4, r1, 0x44 -/* 80184094 00180FF4 48 14 A7 99 */ bl CollideBoolean__19CCollisionPrimitiveFRCQ227CInternalCollisionStructure9CPrimDescRCQ227CInternalCollisionStructure9CPrimDesc -/* 80184098 00180FF8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8018409C 00180FFC 41 82 00 0C */ beq lbl_801840A8 -/* 801840A0 00181000 38 60 00 01 */ li r3, 1 -/* 801840A4 00181004 48 00 00 24 */ b lbl_801840C8 -lbl_801840A8: -/* 801840A8 00181008 3B BD 00 02 */ addi r29, r29, 2 -lbl_801840AC: -/* 801840AC 0018100C 80 1B 00 00 */ lwz r0, 0(r27) -/* 801840B0 00181010 54 00 08 3C */ slwi r0, r0, 1 -/* 801840B4 00181014 7C 7B 02 14 */ add r3, r27, r0 -/* 801840B8 00181018 38 03 00 04 */ addi r0, r3, 4 -/* 801840BC 0018101C 7C 1D 00 40 */ cmplw r29, r0 -/* 801840C0 00181020 40 82 FF 3C */ bne lbl_80183FFC -/* 801840C4 00181024 38 60 00 00 */ li r3, 0 -lbl_801840C8: -/* 801840C8 00181028 BB 01 00 C0 */ lmw r24, 0xc0(r1) -/* 801840CC 0018102C 80 01 00 E4 */ lwz r0, 0xe4(r1) -/* 801840D0 00181030 7C 08 03 A6 */ mtlr r0 -/* 801840D4 00181034 38 21 00 E0 */ addi r1, r1, 0xe0 -/* 801840D8 00181038 4E 80 00 20 */ blr - -.global "DetectDynamicCollisionMoving__14CGameCollisionFRC19CCollisionPrimitiveRC12CTransform4fRCQ24rstl32reserved_vector<9TUniqueId,1024>9CVector3fR9TUniqueIdR14CCollisionInfoRdRC13CStateManager" -"DetectDynamicCollisionMoving__14CGameCollisionFRC19CCollisionPrimitiveRC12CTransform4fRCQ24rstl32reserved_vector<9TUniqueId,1024>9CVector3fR9TUniqueIdR14CCollisionInfoRdRC13CStateManager": -/* 801840DC 0018103C 94 21 FE A0 */ stwu r1, -0x160(r1) -/* 801840E0 00181040 7C 08 02 A6 */ mflr r0 -/* 801840E4 00181044 90 01 01 64 */ stw r0, 0x164(r1) -/* 801840E8 00181048 BE 61 01 2C */ stmw r19, 0x12c(r1) -/* 801840EC 0018104C 7C B5 2B 78 */ mr r21, r5 -/* 801840F0 00181050 7C 73 1B 78 */ mr r19, r3 -/* 801840F4 00181054 7C 94 23 78 */ mr r20, r4 -/* 801840F8 00181058 7C D6 33 78 */ mr r22, r6 -/* 801840FC 0018105C 7C F7 3B 78 */ mr r23, r7 -/* 80184100 00181060 7D 18 43 78 */ mr r24, r8 -/* 80184104 00181064 7D 39 4B 78 */ mr r25, r9 -/* 80184108 00181068 7D 5A 53 78 */ mr r26, r10 -/* 8018410C 0018106C 3B 95 00 04 */ addi r28, r21, 4 -/* 80184110 00181070 3B E1 00 58 */ addi r31, r1, 0x58 -/* 80184114 00181074 3B C1 00 90 */ addi r30, r1, 0x90 -/* 80184118 00181078 3B A0 00 00 */ li r29, 0 -/* 8018411C 0018107C 48 00 01 A0 */ b lbl_801842BC -lbl_80184120: -/* 80184120 00181080 A0 1C 00 00 */ lhz r0, 0(r28) -/* 80184124 00181084 7F 43 D3 78 */ mr r3, r26 -/* 80184128 00181088 38 81 00 08 */ addi r4, r1, 8 -/* 8018412C 0018108C B0 01 00 08 */ sth r0, 8(r1) -/* 80184130 00181090 4B EC 84 75 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 80184134 00181094 7C 64 1B 78 */ mr r4, r3 -/* 80184138 00181098 38 61 00 0C */ addi r3, r1, 0xc -/* 8018413C 0018109C 4B F2 85 A9 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" -/* 80184140 001810A0 83 63 00 04 */ lwz r27, 4(r3) -/* 80184144 001810A4 38 61 00 C0 */ addi r3, r1, 0xc0 -/* 80184148 001810A8 C8 19 00 00 */ lfd f0, 0(r25) -/* 8018414C 001810AC 38 80 00 00 */ li r4, 0 -/* 80184150 001810B0 D8 01 00 18 */ stfd f0, 0x18(r1) -/* 80184154 001810B4 48 14 A0 35 */ bl __ct__14CCollisionInfoFQ214CCollisionInfo8EInvalid -/* 80184158 001810B8 28 1B 00 00 */ cmplwi r27, 0 -/* 8018415C 001810BC 41 82 01 5C */ beq lbl_801842B8 -/* 80184160 001810C0 7F 64 DB 78 */ mr r4, r27 -/* 80184164 001810C4 38 61 00 20 */ addi r3, r1, 0x20 -/* 80184168 001810C8 81 9B 00 00 */ lwz r12, 0(r27) -/* 8018416C 001810CC 81 8C 00 70 */ lwz r12, 0x70(r12) -/* 80184170 001810D0 7D 89 03 A6 */ mtctr r12 -/* 80184174 001810D4 4E 80 04 21 */ bctrl -/* 80184178 001810D8 7F 63 DB 78 */ mr r3, r27 -/* 8018417C 001810DC 81 9B 00 00 */ lwz r12, 0(r27) -/* 80184180 001810E0 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 80184184 001810E4 7D 89 03 A6 */ mtctr r12 -/* 80184188 001810E8 4E 80 04 21 */ bctrl -/* 8018418C 001810EC 3C 80 80 5A */ lis r4, lbl_8059FD18@ha -/* 80184190 001810F0 90 61 00 50 */ stw r3, 0x50(r1) -/* 80184194 001810F4 38 04 FD 18 */ addi r0, r4, lbl_8059FD18@l -/* 80184198 001810F8 7F E3 FB 78 */ mr r3, r31 -/* 8018419C 001810FC 90 01 00 54 */ stw r0, 0x54(r1) -/* 801841A0 00181100 38 81 00 20 */ addi r4, r1, 0x20 -/* 801841A4 00181104 48 18 E9 D1 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 801841A8 00181108 3C 60 80 5A */ lis r3, lbl_8059FD18@ha -/* 801841AC 0018110C 92 61 00 88 */ stw r19, 0x88(r1) -/* 801841B0 00181110 38 03 FD 18 */ addi r0, r3, lbl_8059FD18@l -/* 801841B4 00181114 7F C3 F3 78 */ mr r3, r30 -/* 801841B8 00181118 90 01 00 8C */ stw r0, 0x8c(r1) -/* 801841BC 0018111C 7E 84 A3 78 */ mr r4, r20 -/* 801841C0 00181120 48 18 E9 B5 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 801841C4 00181124 7E C5 B3 78 */ mr r5, r22 -/* 801841C8 00181128 38 61 00 88 */ addi r3, r1, 0x88 -/* 801841CC 0018112C 38 81 00 50 */ addi r4, r1, 0x50 -/* 801841D0 00181130 38 C1 00 18 */ addi r6, r1, 0x18 -/* 801841D4 00181134 38 E1 00 C0 */ addi r7, r1, 0xc0 -/* 801841D8 00181138 48 14 A5 3D */ bl CollideMoving__19CCollisionPrimitiveFRCQ227CInternalCollisionStructure9CPrimDescRCQ227CInternalCollisionStructure9CPrimDescRC9CVector3fRdR14CCollisionInfo -/* 801841DC 0018113C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801841E0 00181140 41 82 00 D8 */ beq lbl_801842B8 -/* 801841E4 00181144 C8 21 00 18 */ lfd f1, 0x18(r1) -/* 801841E8 00181148 C8 19 00 00 */ lfd f0, 0(r25) -/* 801841EC 0018114C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801841F0 00181150 40 80 00 C8 */ bge lbl_801842B8 -/* 801841F4 00181154 80 61 00 C0 */ lwz r3, 0xc0(r1) -/* 801841F8 00181158 3B A0 00 01 */ li r29, 1 -/* 801841FC 0018115C 80 01 00 C4 */ lwz r0, 0xc4(r1) -/* 80184200 00181160 90 78 00 00 */ stw r3, 0(r24) -/* 80184204 00181164 90 18 00 04 */ stw r0, 4(r24) -/* 80184208 00181168 80 01 00 C8 */ lwz r0, 0xc8(r1) -/* 8018420C 0018116C 90 18 00 08 */ stw r0, 8(r24) -/* 80184210 00181170 80 61 00 CC */ lwz r3, 0xcc(r1) -/* 80184214 00181174 80 01 00 D0 */ lwz r0, 0xd0(r1) -/* 80184218 00181178 90 78 00 0C */ stw r3, 0xc(r24) -/* 8018421C 0018117C 90 18 00 10 */ stw r0, 0x10(r24) -/* 80184220 00181180 80 01 00 D4 */ lwz r0, 0xd4(r1) -/* 80184224 00181184 90 18 00 14 */ stw r0, 0x14(r24) -/* 80184228 00181188 80 61 00 D8 */ lwz r3, 0xd8(r1) -/* 8018422C 0018118C 80 01 00 DC */ lwz r0, 0xdc(r1) -/* 80184230 00181190 90 78 00 18 */ stw r3, 0x18(r24) -/* 80184234 00181194 90 18 00 1C */ stw r0, 0x1c(r24) -/* 80184238 00181198 80 01 00 E0 */ lwz r0, 0xe0(r1) -/* 8018423C 0018119C 90 18 00 20 */ stw r0, 0x20(r24) -/* 80184240 001811A0 80 61 00 E4 */ lwz r3, 0xe4(r1) -/* 80184244 001811A4 80 01 00 E8 */ lwz r0, 0xe8(r1) -/* 80184248 001811A8 90 78 00 24 */ stw r3, 0x24(r24) -/* 8018424C 001811AC 90 18 00 28 */ stw r0, 0x28(r24) -/* 80184250 001811B0 80 01 00 EC */ lwz r0, 0xec(r1) -/* 80184254 001811B4 90 18 00 2C */ stw r0, 0x2c(r24) -/* 80184258 001811B8 88 01 00 F0 */ lbz r0, 0xf0(r1) -/* 8018425C 001811BC 98 18 00 30 */ stb r0, 0x30(r24) -/* 80184260 001811C0 88 01 00 F1 */ lbz r0, 0xf1(r1) -/* 80184264 001811C4 98 18 00 31 */ stb r0, 0x31(r24) -/* 80184268 001811C8 C8 01 00 F8 */ lfd f0, 0xf8(r1) -/* 8018426C 001811CC D8 18 00 38 */ stfd f0, 0x38(r24) -/* 80184270 001811D0 C8 01 01 00 */ lfd f0, 0x100(r1) -/* 80184274 001811D4 D8 18 00 40 */ stfd f0, 0x40(r24) -/* 80184278 001811D8 80 61 01 08 */ lwz r3, 0x108(r1) -/* 8018427C 001811DC 80 01 01 0C */ lwz r0, 0x10c(r1) -/* 80184280 001811E0 90 78 00 48 */ stw r3, 0x48(r24) -/* 80184284 001811E4 90 18 00 4C */ stw r0, 0x4c(r24) -/* 80184288 001811E8 80 01 01 10 */ lwz r0, 0x110(r1) -/* 8018428C 001811EC 90 18 00 50 */ stw r0, 0x50(r24) -/* 80184290 001811F0 80 61 01 14 */ lwz r3, 0x114(r1) -/* 80184294 001811F4 80 01 01 18 */ lwz r0, 0x118(r1) -/* 80184298 001811F8 90 78 00 54 */ stw r3, 0x54(r24) -/* 8018429C 001811FC 90 18 00 58 */ stw r0, 0x58(r24) -/* 801842A0 00181200 80 01 01 1C */ lwz r0, 0x11c(r1) -/* 801842A4 00181204 90 18 00 5C */ stw r0, 0x5c(r24) -/* 801842A8 00181208 C8 01 00 18 */ lfd f0, 0x18(r1) -/* 801842AC 0018120C D8 19 00 00 */ stfd f0, 0(r25) -/* 801842B0 00181210 A0 1B 00 08 */ lhz r0, 8(r27) -/* 801842B4 00181214 B0 17 00 00 */ sth r0, 0(r23) -lbl_801842B8: -/* 801842B8 00181218 3B 9C 00 02 */ addi r28, r28, 2 -lbl_801842BC: -/* 801842BC 0018121C 80 15 00 00 */ lwz r0, 0(r21) -/* 801842C0 00181220 54 00 08 3C */ slwi r0, r0, 1 -/* 801842C4 00181224 7C 75 02 14 */ add r3, r21, r0 -/* 801842C8 00181228 38 03 00 04 */ addi r0, r3, 4 -/* 801842CC 0018122C 7C 1C 00 40 */ cmplw r28, r0 -/* 801842D0 00181230 40 82 FE 50 */ bne lbl_80184120 -/* 801842D4 00181234 7F A3 EB 78 */ mr r3, r29 -/* 801842D8 00181238 BA 61 01 2C */ lmw r19, 0x12c(r1) -/* 801842DC 0018123C 80 01 01 64 */ lwz r0, 0x164(r1) -/* 801842E0 00181240 7C 08 03 A6 */ mtlr r0 -/* 801842E4 00181244 38 21 01 60 */ addi r1, r1, 0x160 -/* 801842E8 00181248 4E 80 00 20 */ blr - -.global "DetectCollision_Cached_Moving__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>9CVector3fR9TUniqueIdR14CCollisionInfoRd" -"DetectCollision_Cached_Moving__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>9CVector3fR9TUniqueIdR14CCollisionInfoRd": -/* 801842EC 0018124C 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 801842F0 00181250 7C 08 02 A6 */ mflr r0 -/* 801842F4 00181254 90 01 00 54 */ stw r0, 0x54(r1) -/* 801842F8 00181258 38 00 00 40 */ li r0, 0x40 -/* 801842FC 0018125C BE E1 00 2C */ stmw r23, 0x2c(r1) -/* 80184300 00181260 7D 5C 53 78 */ mr r28, r10 -/* 80184304 00181264 39 40 00 00 */ li r10, 0 -/* 80184308 00181268 7D 1A 43 78 */ mr r26, r8 -/* 8018430C 0018126C 83 A1 00 58 */ lwz r29, 0x58(r1) -/* 80184310 00181270 7C 77 1B 78 */ mr r23, r3 -/* 80184314 00181274 83 C1 00 5C */ lwz r30, 0x5c(r1) -/* 80184318 00181278 7C B8 2B 78 */ mr r24, r5 -/* 8018431C 0018127C 7C D9 33 78 */ mr r25, r6 -/* 80184320 00181280 7D 3B 4B 78 */ mr r27, r9 -/* 80184324 00181284 3B E0 00 00 */ li r31, 0 -/* 80184328 00181288 A1 6D A3 8C */ lhz r11, lbl_805A8F4C@sda21(r13) -/* 8018432C 0018128C B1 7C 00 00 */ sth r11, 0(r28) -/* 80184330 00181290 81 67 00 08 */ lwz r11, 8(r7) -/* 80184334 00181294 81 87 00 0C */ lwz r12, 0xc(r7) -/* 80184338 00181298 7D 60 00 38 */ and r0, r11, r0 -/* 8018433C 0018129C 7D 88 50 38 */ and r8, r12, r10 -/* 80184340 001812A0 7D 08 52 78 */ xor r8, r8, r10 -/* 80184344 001812A4 7C 00 52 78 */ xor r0, r0, r10 -/* 80184348 001812A8 7D 00 03 79 */ or. r0, r8, r0 -/* 8018434C 001812AC 40 82 00 38 */ bne lbl_80184384 -/* 80184350 001812B0 81 9B 00 00 */ lwz r12, 0(r27) -/* 80184354 001812B4 7F A9 EB 78 */ mr r9, r29 -/* 80184358 001812B8 81 7B 00 04 */ lwz r11, 4(r27) -/* 8018435C 001812BC 7F CA F3 78 */ mr r10, r30 -/* 80184360 001812C0 80 1B 00 08 */ lwz r0, 8(r27) -/* 80184364 001812C4 39 01 00 14 */ addi r8, r1, 0x14 -/* 80184368 001812C8 91 81 00 14 */ stw r12, 0x14(r1) -/* 8018436C 001812CC 91 61 00 18 */ stw r11, 0x18(r1) -/* 80184370 001812D0 90 01 00 1C */ stw r0, 0x1c(r1) -/* 80184374 001812D4 4B FF EA 91 */ bl DetectStaticCollision_Cached_Moving__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter9CVector3fR14CCollisionInfoRd -/* 80184378 001812D8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8018437C 001812DC 41 82 00 08 */ beq lbl_80184384 -/* 80184380 001812E0 3B E0 00 01 */ li r31, 1 -lbl_80184384: -/* 80184384 001812E4 80 FB 00 00 */ lwz r7, 0(r27) -/* 80184388 001812E8 7F 03 C3 78 */ mr r3, r24 -/* 8018438C 001812EC 80 DB 00 04 */ lwz r6, 4(r27) -/* 80184390 001812F0 7F 24 CB 78 */ mr r4, r25 -/* 80184394 001812F4 80 1B 00 08 */ lwz r0, 8(r27) -/* 80184398 001812F8 7F 45 D3 78 */ mr r5, r26 -/* 8018439C 001812FC 90 E1 00 08 */ stw r7, 8(r1) -/* 801843A0 00181300 7F 87 E3 78 */ mr r7, r28 -/* 801843A4 00181304 7F A8 EB 78 */ mr r8, r29 -/* 801843A8 00181308 7F C9 F3 78 */ mr r9, r30 -/* 801843AC 0018130C 90 C1 00 0C */ stw r6, 0xc(r1) -/* 801843B0 00181310 7E EA BB 78 */ mr r10, r23 -/* 801843B4 00181314 38 C1 00 08 */ addi r6, r1, 8 -/* 801843B8 00181318 90 01 00 10 */ stw r0, 0x10(r1) -/* 801843BC 0018131C 4B FF FD 21 */ bl "DetectDynamicCollisionMoving__14CGameCollisionFRC19CCollisionPrimitiveRC12CTransform4fRCQ24rstl32reserved_vector<9TUniqueId,1024>9CVector3fR9TUniqueIdR14CCollisionInfoRdRC13CStateManager" -/* 801843C0 00181320 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801843C4 00181324 41 82 00 08 */ beq lbl_801843CC -/* 801843C8 00181328 3B E0 00 01 */ li r31, 1 -lbl_801843CC: -/* 801843CC 0018132C 7F E3 FB 78 */ mr r3, r31 -/* 801843D0 00181330 BA E1 00 2C */ lmw r23, 0x2c(r1) -/* 801843D4 00181334 80 01 00 54 */ lwz r0, 0x54(r1) -/* 801843D8 00181338 7C 08 03 A6 */ mtlr r0 -/* 801843DC 0018133C 38 21 00 50 */ addi r1, r1, 0x50 -/* 801843E0 00181340 4E 80 00 20 */ blr - -.global "DetectCollision_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>R9TUniqueIdR18CCollisionInfoList" -"DetectCollision_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>R9TUniqueIdR18CCollisionInfoList": -/* 801843E4 00181344 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 801843E8 00181348 7C 08 02 A6 */ mflr r0 -/* 801843EC 0018134C 90 01 00 34 */ stw r0, 0x34(r1) -/* 801843F0 00181350 38 00 00 40 */ li r0, 0x40 -/* 801843F4 00181354 BF 21 00 14 */ stmw r25, 0x14(r1) -/* 801843F8 00181358 7D 3D 4B 78 */ mr r29, r9 -/* 801843FC 0018135C 7D 1C 43 78 */ mr r28, r8 -/* 80184400 00181360 39 20 00 00 */ li r9, 0 -/* 80184404 00181364 7C 79 1B 78 */ mr r25, r3 -/* 80184408 00181368 7C BA 2B 78 */ mr r26, r5 -/* 8018440C 0018136C 7C DB 33 78 */ mr r27, r6 -/* 80184410 00181370 7D 5E 53 78 */ mr r30, r10 -/* 80184414 00181374 3B E0 00 00 */ li r31, 0 -/* 80184418 00181378 A1 6D A3 8C */ lhz r11, lbl_805A8F4C@sda21(r13) -/* 8018441C 0018137C B1 7D 00 00 */ sth r11, 0(r29) -/* 80184420 00181380 81 67 00 08 */ lwz r11, 8(r7) -/* 80184424 00181384 81 07 00 0C */ lwz r8, 0xc(r7) -/* 80184428 00181388 7D 60 00 38 */ and r0, r11, r0 -/* 8018442C 0018138C 7D 08 48 38 */ and r8, r8, r9 -/* 80184430 00181390 7D 08 4A 78 */ xor r8, r8, r9 -/* 80184434 00181394 7C 00 4A 78 */ xor r0, r0, r9 -/* 80184438 00181398 7D 00 03 79 */ or. r0, r8, r0 -/* 8018443C 0018139C 40 82 00 18 */ bne lbl_80184454 -/* 80184440 001813A0 7F C8 F3 78 */ mr r8, r30 -/* 80184444 001813A4 4B FF F7 35 */ bl DetectStaticCollision_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterR18CCollisionInfoList -/* 80184448 001813A8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8018444C 001813AC 41 82 00 08 */ beq lbl_80184454 -/* 80184450 001813B0 3B E0 00 01 */ li r31, 1 -lbl_80184454: -/* 80184454 001813B4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80184458 001813B8 7F 43 D3 78 */ mr r3, r26 -/* 8018445C 001813BC 7F 64 DB 78 */ mr r4, r27 -/* 80184460 001813C0 7F 85 E3 78 */ mr r5, r28 -/* 80184464 001813C4 B0 01 00 08 */ sth r0, 8(r1) -/* 80184468 001813C8 7F C7 F3 78 */ mr r7, r30 -/* 8018446C 001813CC 7F 28 CB 78 */ mr r8, r25 -/* 80184470 001813D0 38 C1 00 08 */ addi r6, r1, 8 -/* 80184474 001813D4 4B FF FA 2D */ bl "DetectDynamicCollision__14CGameCollisionFRC19CCollisionPrimitiveRC12CTransform4fRCQ24rstl32reserved_vector<9TUniqueId,1024>R9TUniqueIdR18CCollisionInfoListRC13CStateManager" -/* 80184478 001813D8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8018447C 001813DC 41 82 00 10 */ beq lbl_8018448C -/* 80184480 001813E0 A0 01 00 08 */ lhz r0, 8(r1) -/* 80184484 001813E4 3B E0 00 01 */ li r31, 1 -/* 80184488 001813E8 B0 1D 00 00 */ sth r0, 0(r29) -lbl_8018448C: -/* 8018448C 001813EC 7F E3 FB 78 */ mr r3, r31 -/* 80184490 001813F0 BB 21 00 14 */ lmw r25, 0x14(r1) -/* 80184494 001813F4 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80184498 001813F8 7C 08 03 A6 */ mtlr r0 -/* 8018449C 001813FC 38 21 00 30 */ addi r1, r1, 0x30 -/* 801844A0 00181400 4E 80 00 20 */ blr - -.global "DetectCollision__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>R9TUniqueIdR18CCollisionInfoList" -"DetectCollision__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>R9TUniqueIdR18CCollisionInfoList": -/* 801844A4 00181404 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 801844A8 00181408 7C 08 02 A6 */ mflr r0 -/* 801844AC 0018140C 90 01 00 34 */ stw r0, 0x34(r1) -/* 801844B0 00181410 38 00 00 40 */ li r0, 0x40 -/* 801844B4 00181414 BF 21 00 14 */ stmw r25, 0x14(r1) -/* 801844B8 00181418 7D 1D 43 78 */ mr r29, r8 -/* 801844BC 0018141C 7C FC 3B 78 */ mr r28, r7 -/* 801844C0 00181420 39 00 00 00 */ li r8, 0 -/* 801844C4 00181424 7C 79 1B 78 */ mr r25, r3 -/* 801844C8 00181428 7C 9A 23 78 */ mr r26, r4 -/* 801844CC 0018142C 7C BB 2B 78 */ mr r27, r5 -/* 801844D0 00181430 7D 3E 4B 78 */ mr r30, r9 -/* 801844D4 00181434 3B E0 00 00 */ li r31, 0 -/* 801844D8 00181438 A1 4D A3 8C */ lhz r10, lbl_805A8F4C@sda21(r13) -/* 801844DC 0018143C B1 5D 00 00 */ sth r10, 0(r29) -/* 801844E0 00181440 81 46 00 08 */ lwz r10, 8(r6) -/* 801844E4 00181444 80 E6 00 0C */ lwz r7, 0xc(r6) -/* 801844E8 00181448 7D 40 00 38 */ and r0, r10, r0 -/* 801844EC 0018144C 7C E7 40 38 */ and r7, r7, r8 -/* 801844F0 00181450 7C E7 42 78 */ xor r7, r7, r8 -/* 801844F4 00181454 7C 00 42 78 */ xor r0, r0, r8 -/* 801844F8 00181458 7C E0 03 79 */ or. r0, r7, r0 -/* 801844FC 0018145C 40 82 00 18 */ bne lbl_80184514 -/* 80184500 00181460 7F C7 F3 78 */ mr r7, r30 -/* 80184504 00181464 4B FF F3 DD */ bl DetectStaticCollision__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterR18CCollisionInfoList -/* 80184508 00181468 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8018450C 0018146C 41 82 00 08 */ beq lbl_80184514 -/* 80184510 00181470 3B E0 00 01 */ li r31, 1 -lbl_80184514: -/* 80184514 00181474 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80184518 00181478 7F 43 D3 78 */ mr r3, r26 -/* 8018451C 0018147C 7F 64 DB 78 */ mr r4, r27 -/* 80184520 00181480 7F 85 E3 78 */ mr r5, r28 -/* 80184524 00181484 B0 01 00 08 */ sth r0, 8(r1) -/* 80184528 00181488 7F C7 F3 78 */ mr r7, r30 -/* 8018452C 0018148C 7F 28 CB 78 */ mr r8, r25 -/* 80184530 00181490 38 C1 00 08 */ addi r6, r1, 8 -/* 80184534 00181494 4B FF F9 6D */ bl "DetectDynamicCollision__14CGameCollisionFRC19CCollisionPrimitiveRC12CTransform4fRCQ24rstl32reserved_vector<9TUniqueId,1024>R9TUniqueIdR18CCollisionInfoListRC13CStateManager" -/* 80184538 00181498 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8018453C 0018149C 41 82 00 10 */ beq lbl_8018454C -/* 80184540 001814A0 A0 01 00 08 */ lhz r0, 8(r1) -/* 80184544 001814A4 3B E0 00 01 */ li r31, 1 -/* 80184548 001814A8 B0 1D 00 00 */ sth r0, 0(r29) -lbl_8018454C: -/* 8018454C 001814AC 7F E3 FB 78 */ mr r3, r31 -/* 80184550 001814B0 BB 21 00 14 */ lmw r25, 0x14(r1) -/* 80184554 001814B4 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80184558 001814B8 7C 08 03 A6 */ mtlr r0 -/* 8018455C 001814BC 38 21 00 30 */ addi r1, r1, 0x30 -/* 80184560 001814C0 4E 80 00 20 */ blr - -.global "DetectCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -"DetectCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>": -/* 80184564 001814C4 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80184568 001814C8 7C 08 02 A6 */ mflr r0 -/* 8018456C 001814CC 39 40 00 00 */ li r10, 0 -/* 80184570 001814D0 90 01 00 24 */ stw r0, 0x24(r1) -/* 80184574 001814D4 38 00 00 40 */ li r0, 0x40 -/* 80184578 001814D8 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8018457C 001814DC 7D 1F 43 78 */ mr r31, r8 -/* 80184580 001814E0 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80184584 001814E4 7C DE 33 78 */ mr r30, r6 -/* 80184588 001814E8 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8018458C 001814EC 7C BD 2B 78 */ mr r29, r5 -/* 80184590 001814F0 93 81 00 10 */ stw r28, 0x10(r1) -/* 80184594 001814F4 7C 7C 1B 78 */ mr r28, r3 -/* 80184598 001814F8 81 27 00 08 */ lwz r9, 8(r7) -/* 8018459C 001814FC 81 67 00 0C */ lwz r11, 0xc(r7) -/* 801845A0 00181500 7D 20 00 38 */ and r0, r9, r0 -/* 801845A4 00181504 7D 69 50 38 */ and r9, r11, r10 -/* 801845A8 00181508 7D 29 52 78 */ xor r9, r9, r10 -/* 801845AC 0018150C 7C 00 52 78 */ xor r0, r0, r10 -/* 801845B0 00181510 7D 20 03 79 */ or. r0, r9, r0 -/* 801845B4 00181514 40 82 00 18 */ bne lbl_801845CC -/* 801845B8 00181518 4B FF F0 41 */ bl DetectStaticCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter -/* 801845BC 0018151C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801845C0 00181520 41 82 00 0C */ beq lbl_801845CC -/* 801845C4 00181524 38 60 00 01 */ li r3, 1 -/* 801845C8 00181528 48 00 00 2C */ b lbl_801845F4 -lbl_801845CC: -/* 801845CC 0018152C 7F A3 EB 78 */ mr r3, r29 -/* 801845D0 00181530 7F C4 F3 78 */ mr r4, r30 -/* 801845D4 00181534 7F E5 FB 78 */ mr r5, r31 -/* 801845D8 00181538 7F 86 E3 78 */ mr r6, r28 -/* 801845DC 0018153C 4B FF F9 F1 */ bl "DetectDynamicCollisionBoolean__14CGameCollisionFRC19CCollisionPrimitiveRC12CTransform4fRCQ24rstl32reserved_vector<9TUniqueId,1024>RC13CStateManager" -/* 801845E0 00181540 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801845E4 00181544 41 82 00 0C */ beq lbl_801845F0 -/* 801845E8 00181548 38 60 00 01 */ li r3, 1 -/* 801845EC 0018154C 48 00 00 08 */ b lbl_801845F4 -lbl_801845F0: -/* 801845F0 00181550 38 60 00 00 */ li r3, 0 -lbl_801845F4: -/* 801845F4 00181554 80 01 00 24 */ lwz r0, 0x24(r1) -/* 801845F8 00181558 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 801845FC 0018155C 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 80184600 00181560 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 80184604 00181564 83 81 00 10 */ lwz r28, 0x10(r1) -/* 80184608 00181568 7C 08 03 A6 */ mtlr r0 -/* 8018460C 0018156C 38 21 00 20 */ addi r1, r1, 0x20 -/* 80184610 00181570 4E 80 00 20 */ blr - -.global "DetectCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -"DetectCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>": -/* 80184614 00181574 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80184618 00181578 7C 08 02 A6 */ mflr r0 -/* 8018461C 0018157C 39 20 00 00 */ li r9, 0 -/* 80184620 00181580 90 01 00 24 */ stw r0, 0x24(r1) -/* 80184624 00181584 38 00 00 40 */ li r0, 0x40 -/* 80184628 00181588 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8018462C 0018158C 7C FF 3B 78 */ mr r31, r7 -/* 80184630 00181590 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80184634 00181594 7C BE 2B 78 */ mr r30, r5 -/* 80184638 00181598 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8018463C 0018159C 7C 9D 23 78 */ mr r29, r4 -/* 80184640 001815A0 93 81 00 10 */ stw r28, 0x10(r1) -/* 80184644 001815A4 7C 7C 1B 78 */ mr r28, r3 -/* 80184648 001815A8 81 06 00 08 */ lwz r8, 8(r6) -/* 8018464C 001815AC 81 46 00 0C */ lwz r10, 0xc(r6) -/* 80184650 001815B0 7D 00 00 38 */ and r0, r8, r0 -/* 80184654 001815B4 7D 48 48 38 */ and r8, r10, r9 -/* 80184658 001815B8 7D 08 4A 78 */ xor r8, r8, r9 -/* 8018465C 001815BC 7C 00 4A 78 */ xor r0, r0, r9 -/* 80184660 001815C0 7D 00 03 79 */ or. r0, r8, r0 -/* 80184664 001815C4 40 82 00 18 */ bne lbl_8018467C -/* 80184668 001815C8 4B FF ED 39 */ bl DetectStaticCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter -/* 8018466C 001815CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80184670 001815D0 41 82 00 0C */ beq lbl_8018467C -/* 80184674 001815D4 38 60 00 01 */ li r3, 1 -/* 80184678 001815D8 48 00 00 2C */ b lbl_801846A4 -lbl_8018467C: -/* 8018467C 001815DC 7F A3 EB 78 */ mr r3, r29 -/* 80184680 001815E0 7F C4 F3 78 */ mr r4, r30 -/* 80184684 001815E4 7F E5 FB 78 */ mr r5, r31 -/* 80184688 001815E8 7F 86 E3 78 */ mr r6, r28 -/* 8018468C 001815EC 4B FF F9 41 */ bl "DetectDynamicCollisionBoolean__14CGameCollisionFRC19CCollisionPrimitiveRC12CTransform4fRCQ24rstl32reserved_vector<9TUniqueId,1024>RC13CStateManager" -/* 80184690 001815F0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80184694 001815F4 41 82 00 0C */ beq lbl_801846A0 -/* 80184698 001815F8 38 60 00 01 */ li r3, 1 -/* 8018469C 001815FC 48 00 00 08 */ b lbl_801846A4 -lbl_801846A0: -/* 801846A0 00181600 38 60 00 00 */ li r3, 0 -lbl_801846A4: -/* 801846A4 00181604 80 01 00 24 */ lwz r0, 0x24(r1) -/* 801846A8 00181608 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 801846AC 0018160C 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 801846B0 00181610 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 801846B4 00181614 83 81 00 10 */ lwz r28, 0x10(r1) -/* 801846B8 00181618 7C 08 03 A6 */ mtlr r0 -/* 801846BC 0018161C 38 21 00 20 */ addi r1, r1, 0x20 -/* 801846C0 00181620 4E 80 00 20 */ blr - -.global BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache -BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache: -/* 801846C4 00181624 94 21 F6 B0 */ stwu r1, -0x950(r1) -/* 801846C8 00181628 7C 08 02 A6 */ mflr r0 -/* 801846CC 0018162C 90 01 09 54 */ stw r0, 0x954(r1) -/* 801846D0 00181630 93 E1 09 4C */ stw r31, 0x94c(r1) -/* 801846D4 00181634 93 C1 09 48 */ stw r30, 0x948(r1) -/* 801846D8 00181638 7C 7E 1B 78 */ mr r30, r3 -/* 801846DC 0018163C 93 A1 09 44 */ stw r29, 0x944(r1) -/* 801846E0 00181640 7C 9D 23 78 */ mr r29, r4 -/* 801846E4 00181644 7F A3 EB 78 */ mr r3, r29 -/* 801846E8 00181648 48 11 F1 51 */ bl ClearCache__19CAreaCollisionCacheFv -/* 801846EC 0018164C 80 7E 08 50 */ lwz r3, 0x850(r30) -/* 801846F0 00181650 3B C1 00 30 */ addi r30, r1, 0x30 -/* 801846F4 00181654 83 E3 00 58 */ lwz r31, 0x58(r3) -/* 801846F8 00181658 48 00 00 E0 */ b lbl_801847D8 -lbl_801846FC: -/* 801846FC 0018165C 80 9F 01 2C */ lwz r4, 0x12c(r31) -/* 80184700 00181660 38 61 00 2C */ addi r3, r1, 0x2c -/* 80184704 00181664 80 84 00 04 */ lwz r4, 4(r4) -/* 80184708 00181668 48 11 F4 65 */ bl __ct__Q220CMetroidAreaCollider16COctreeLeafCacheFRC12CAreaOctTree -/* 8018470C 0018166C 80 DF 01 2C */ lwz r6, 0x12c(r31) -/* 80184710 00181670 7F A4 EB 78 */ mr r4, r29 -/* 80184714 00181674 38 61 00 08 */ addi r3, r1, 8 -/* 80184718 00181678 38 A1 00 2C */ addi r5, r1, 0x2c -/* 8018471C 0018167C 80 C6 00 04 */ lwz r6, 4(r6) -/* 80184720 00181680 80 06 00 18 */ lwz r0, 0x18(r6) -/* 80184724 00181684 80 E6 00 20 */ lwz r7, 0x20(r6) -/* 80184728 00181688 C0 06 00 00 */ lfs f0, 0(r6) -/* 8018472C 0018168C D0 01 00 08 */ stfs f0, 8(r1) -/* 80184730 00181690 C0 06 00 04 */ lfs f0, 4(r6) -/* 80184734 00181694 D0 01 00 0C */ stfs f0, 0xc(r1) -/* 80184738 00181698 C0 06 00 08 */ lfs f0, 8(r6) -/* 8018473C 0018169C D0 01 00 10 */ stfs f0, 0x10(r1) -/* 80184740 001816A0 C0 06 00 0C */ lfs f0, 0xc(r6) -/* 80184744 001816A4 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 80184748 001816A8 C0 06 00 10 */ lfs f0, 0x10(r6) -/* 8018474C 001816AC D0 01 00 18 */ stfs f0, 0x18(r1) -/* 80184750 001816B0 C0 06 00 14 */ lfs f0, 0x14(r6) -/* 80184754 001816B4 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 80184758 001816B8 90 E1 00 20 */ stw r7, 0x20(r1) -/* 8018475C 001816BC 90 C1 00 24 */ stw r6, 0x24(r1) -/* 80184760 001816C0 90 01 00 28 */ stw r0, 0x28(r1) -/* 80184764 001816C4 48 11 EF E5 */ bl BuildOctreeLeafCache__20CMetroidAreaColliderFRCQ212CAreaOctTree4NodeRC6CAABoxRQ220CMetroidAreaCollider16COctreeLeafCache -/* 80184768 001816C8 7F A3 EB 78 */ mr r3, r29 -/* 8018476C 001816CC 38 81 00 2C */ addi r4, r1, 0x2c -/* 80184770 001816D0 48 11 F1 A9 */ bl AddOctreeLeafCache__19CAreaCollisionCacheFRCQ220CMetroidAreaCollider16COctreeLeafCache -/* 80184774 001816D4 28 1E 00 00 */ cmplwi r30, 0 -/* 80184778 001816D8 41 82 00 5C */ beq lbl_801847D4 -/* 8018477C 001816DC 80 A1 00 30 */ lwz r5, 0x30(r1) -/* 80184780 001816E0 38 60 00 00 */ li r3, 0 -/* 80184784 001816E4 2C 05 00 00 */ cmpwi r5, 0 -/* 80184788 001816E8 40 81 00 44 */ ble lbl_801847CC -/* 8018478C 001816EC 2C 05 00 08 */ cmpwi r5, 8 -/* 80184790 001816F0 38 85 FF F8 */ addi r4, r5, -8 -/* 80184794 001816F4 40 81 00 20 */ ble lbl_801847B4 -/* 80184798 001816F8 38 04 00 07 */ addi r0, r4, 7 -/* 8018479C 001816FC 54 00 E8 FE */ srwi r0, r0, 3 -/* 801847A0 00181700 7C 09 03 A6 */ mtctr r0 -/* 801847A4 00181704 2C 04 00 00 */ cmpwi r4, 0 -/* 801847A8 00181708 40 81 00 0C */ ble lbl_801847B4 -lbl_801847AC: -/* 801847AC 0018170C 38 63 00 08 */ addi r3, r3, 8 -/* 801847B0 00181710 42 00 FF FC */ bdnz lbl_801847AC -lbl_801847B4: -/* 801847B4 00181714 7C 03 28 50 */ subf r0, r3, r5 -/* 801847B8 00181718 7C 09 03 A6 */ mtctr r0 -/* 801847BC 0018171C 7C 03 28 00 */ cmpw r3, r5 -/* 801847C0 00181720 40 80 00 0C */ bge lbl_801847CC -lbl_801847C4: -/* 801847C4 00181724 38 63 00 01 */ addi r3, r3, 1 -/* 801847C8 00181728 42 00 FF FC */ bdnz lbl_801847C4 -lbl_801847CC: -/* 801847CC 0018172C 38 00 00 00 */ li r0, 0 -/* 801847D0 00181730 90 01 00 30 */ stw r0, 0x30(r1) -lbl_801847D4: -/* 801847D4 00181734 83 FF 01 30 */ lwz r31, 0x130(r31) -lbl_801847D8: -/* 801847D8 00181738 80 0D A2 18 */ lwz r0, lbl_805A8DD8@sda21(r13) -/* 801847DC 0018173C 7C 1F 00 40 */ cmplw r31, r0 -/* 801847E0 00181740 40 82 FF 1C */ bne lbl_801846FC -/* 801847E4 00181744 38 60 00 00 */ li r3, 0 -/* 801847E8 00181748 4B F2 FD 11 */ bl IsUser__Fi -/* 801847EC 0018174C 80 01 09 54 */ lwz r0, 0x954(r1) -/* 801847F0 00181750 83 E1 09 4C */ lwz r31, 0x94c(r1) -/* 801847F4 00181754 83 C1 09 48 */ lwz r30, 0x948(r1) -/* 801847F8 00181758 83 A1 09 44 */ lwz r29, 0x944(r1) -/* 801847FC 0018175C 7C 08 03 A6 */ mtlr r0 -/* 80184800 00181760 38 21 09 50 */ addi r1, r1, 0x950 -/* 80184804 00181764 4E 80 00 20 */ blr - -.global RayStaticIntersection__14CGameCollisionFRC13CStateManagerRC9CVector3fRC9CVector3ffRC15CMaterialFilter -RayStaticIntersection__14CGameCollisionFRC13CStateManagerRC9CVector3fRC9CVector3ffRC15CMaterialFilter: -/* 80184808 00181768 94 21 FE B0 */ stwu r1, -0x150(r1) -/* 8018480C 0018176C 7C 08 02 A6 */ mflr r0 -/* 80184810 00181770 90 01 01 54 */ stw r0, 0x154(r1) -/* 80184814 00181774 DB E1 01 40 */ stfd f31, 0x140(r1) -/* 80184818 00181778 F3 E1 01 48 */ psq_st f31, 328(r1), 0, qr0 -/* 8018481C 0018177C DB C1 01 30 */ stfd f30, 0x130(r1) -/* 80184820 00181780 F3 C1 01 38 */ psq_st f30, 312(r1), 0, qr0 -/* 80184824 00181784 DB A1 01 20 */ stfd f29, 0x120(r1) -/* 80184828 00181788 F3 A1 01 28 */ psq_st f29, 296(r1), 0, qr0 -/* 8018482C 0018178C DB 81 01 10 */ stfd f28, 0x110(r1) -/* 80184830 00181790 F3 81 01 18 */ psq_st f28, 280(r1), 0, qr0 -/* 80184834 00181794 BF 41 00 F8 */ stmw r26, 0xf8(r1) -/* 80184838 00181798 7C BB 2B 78 */ mr r27, r5 -/* 8018483C 0018179C 7C DC 33 78 */ mr r28, r6 -/* 80184840 001817A0 C0 42 A2 A8 */ lfs f2, lbl_805ABFC8@sda21(r2) -/* 80184844 001817A4 7C 7A 1B 78 */ mr r26, r3 -/* 80184848 001817A8 C0 A6 00 00 */ lfs f5, 0(r6) -/* 8018484C 001817AC FF 80 08 90 */ fmr f28, f1 -/* 80184850 001817B0 C0 C6 00 04 */ lfs f6, 4(r6) -/* 80184854 001817B4 7C FD 3B 78 */ mr r29, r7 -/* 80184858 001817B8 C0 E6 00 08 */ lfs f7, 8(r6) -/* 8018485C 001817BC 38 61 00 08 */ addi r3, r1, 8 -/* 80184860 001817C0 C0 85 00 00 */ lfs f4, 0(r5) -/* 80184864 001817C4 C0 65 00 04 */ lfs f3, 4(r5) -/* 80184868 001817C8 C0 25 00 08 */ lfs f1, 8(r5) -/* 8018486C 001817CC C0 02 A2 D4 */ lfs f0, lbl_805ABFF4@sda21(r2) -/* 80184870 001817D0 D0 81 00 14 */ stfs f4, 0x14(r1) -/* 80184874 001817D4 83 C4 08 50 */ lwz r30, 0x850(r4) -/* 80184878 001817D8 D0 61 00 18 */ stfs f3, 0x18(r1) -/* 8018487C 001817DC D0 21 00 1C */ stfs f1, 0x1c(r1) -/* 80184880 001817E0 D0 A1 00 20 */ stfs f5, 0x20(r1) -/* 80184884 001817E4 D0 C1 00 24 */ stfs f6, 0x24(r1) -/* 80184888 001817E8 D0 E1 00 28 */ stfs f7, 0x28(r1) -/* 8018488C 001817EC D0 41 00 C8 */ stfs f2, 0xc8(r1) -/* 80184890 001817F0 D0 41 00 CC */ stfs f2, 0xcc(r1) -/* 80184894 001817F4 D0 41 00 D0 */ stfs f2, 0xd0(r1) -/* 80184898 001817F8 D0 41 00 D4 */ stfs f2, 0xd4(r1) -/* 8018489C 001817FC D0 01 00 08 */ stfs f0, 8(r1) -/* 801848A0 00181800 D0 41 00 0C */ stfs f2, 0xc(r1) -/* 801848A4 00181804 D0 41 00 10 */ stfs f2, 0x10(r1) -/* 801848A8 00181808 48 19 00 51 */ bl Normalize__9CVector3fFv -/* 801848AC 0018180C C0 02 A2 A8 */ lfs f0, lbl_805ABFC8@sda21(r2) -/* 801848B0 00181810 38 00 00 00 */ li r0, 0 -/* 801848B4 00181814 C0 61 00 08 */ lfs f3, 8(r1) -/* 801848B8 00181818 C0 41 00 0C */ lfs f2, 0xc(r1) -/* 801848BC 0018181C FC 1C 00 40 */ fcmpo cr0, f28, f0 -/* 801848C0 00181820 C0 21 00 10 */ lfs f1, 0x10(r1) -/* 801848C4 00181824 D0 61 00 D8 */ stfs f3, 0xd8(r1) -/* 801848C8 00181828 D0 41 00 DC */ stfs f2, 0xdc(r1) -/* 801848CC 0018182C D0 21 00 E0 */ stfs f1, 0xe0(r1) -/* 801848D0 00181830 D0 01 00 E4 */ stfs f0, 0xe4(r1) -/* 801848D4 00181834 98 01 00 E8 */ stb r0, 0xe8(r1) -/* 801848D8 00181838 90 01 00 F4 */ stw r0, 0xf4(r1) -/* 801848DC 0018183C 90 01 00 F0 */ stw r0, 0xf0(r1) -/* 801848E0 00181840 40 81 00 0C */ ble lbl_801848EC -/* 801848E4 00181844 FF A0 E0 90 */ fmr f29, f28 -/* 801848E8 00181848 48 00 00 08 */ b lbl_801848F0 -lbl_801848EC: -/* 801848EC 0018184C C3 A2 A2 F4 */ lfs f29, lbl_805AC014@sda21(r2) -lbl_801848F0: -/* 801848F0 00181850 83 FE 00 58 */ lwz r31, 0x58(r30) -/* 801848F4 00181854 3B C1 00 94 */ addi r30, r1, 0x94 -/* 801848F8 00181858 C3 C2 A2 D4 */ lfs f30, lbl_805ABFF4@sda21(r2) -/* 801848FC 0018185C C3 E2 A2 A8 */ lfs f31, lbl_805ABFC8@sda21(r2) -/* 80184900 00181860 48 00 01 90 */ b lbl_80184A90 -lbl_80184904: -/* 80184904 00181864 38 00 00 00 */ li r0, 0 -/* 80184908 00181868 D3 C1 00 84 */ stfs f30, 0x84(r1) -/* 8018490C 0018186C FC 20 E0 90 */ fmr f1, f28 -/* 80184910 00181870 7F A5 EB 78 */ mr r5, r29 -/* 80184914 00181874 D3 E1 00 88 */ stfs f31, 0x88(r1) -/* 80184918 00181878 38 61 00 60 */ addi r3, r1, 0x60 -/* 8018491C 0018187C 38 81 00 14 */ addi r4, r1, 0x14 -/* 80184920 00181880 38 C1 00 84 */ addi r6, r1, 0x84 -/* 80184924 00181884 D3 E1 00 8C */ stfs f31, 0x8c(r1) -/* 80184928 00181888 D3 E1 00 90 */ stfs f31, 0x90(r1) -/* 8018492C 0018188C 98 01 00 BC */ stb r0, 0xbc(r1) -/* 80184930 00181890 D3 E1 00 C0 */ stfs f31, 0xc0(r1) -/* 80184934 00181894 80 FF 01 2C */ lwz r7, 0x12c(r31) -/* 80184938 00181898 80 E7 00 04 */ lwz r7, 4(r7) -/* 8018493C 0018189C 80 07 00 18 */ lwz r0, 0x18(r7) -/* 80184940 001818A0 81 07 00 20 */ lwz r8, 0x20(r7) -/* 80184944 001818A4 C0 07 00 00 */ lfs f0, 0(r7) -/* 80184948 001818A8 D0 01 00 60 */ stfs f0, 0x60(r1) -/* 8018494C 001818AC C0 07 00 04 */ lfs f0, 4(r7) -/* 80184950 001818B0 D0 01 00 64 */ stfs f0, 0x64(r1) -/* 80184954 001818B4 C0 07 00 08 */ lfs f0, 8(r7) -/* 80184958 001818B8 D0 01 00 68 */ stfs f0, 0x68(r1) -/* 8018495C 001818BC C0 07 00 0C */ lfs f0, 0xc(r7) -/* 80184960 001818C0 D0 01 00 6C */ stfs f0, 0x6c(r1) -/* 80184964 001818C4 C0 07 00 10 */ lfs f0, 0x10(r7) -/* 80184968 001818C8 D0 01 00 70 */ stfs f0, 0x70(r1) -/* 8018496C 001818CC C0 07 00 14 */ lfs f0, 0x14(r7) -/* 80184970 001818D0 D0 01 00 74 */ stfs f0, 0x74(r1) -/* 80184974 001818D4 91 01 00 78 */ stw r8, 0x78(r1) -/* 80184978 001818D8 90 E1 00 7C */ stw r7, 0x7c(r1) -/* 8018497C 001818DC 90 01 00 80 */ stw r0, 0x80(r1) -/* 80184980 001818E0 48 11 DA 11 */ bl LineTestEx__Q212CAreaOctTree4NodeCFRC5CLineRC15CMaterialFilterRQ212CAreaOctTree10SRayResultf -/* 80184984 001818E4 88 01 00 BC */ lbz r0, 0xbc(r1) -/* 80184988 001818E8 28 00 00 00 */ cmplwi r0, 0 -/* 8018498C 001818EC 41 82 00 1C */ beq lbl_801849A8 -/* 80184990 001818F0 C0 02 A2 A8 */ lfs f0, lbl_805ABFC8@sda21(r2) -/* 80184994 001818F4 FC 00 E0 00 */ fcmpu cr0, f0, f28 -/* 80184998 001818F8 41 82 00 24 */ beq lbl_801849BC -/* 8018499C 001818FC C0 01 00 C0 */ lfs f0, 0xc0(r1) -/* 801849A0 00181900 FC 1C 00 40 */ fcmpo cr0, f28, f0 -/* 801849A4 00181904 40 80 00 18 */ bge lbl_801849BC -lbl_801849A8: -/* 801849A8 00181908 28 1E 00 00 */ cmplwi r30, 0 -/* 801849AC 0018190C 41 82 00 E0 */ beq lbl_80184A8C -/* 801849B0 00181910 38 00 00 00 */ li r0, 0 -/* 801849B4 00181914 98 01 00 BC */ stb r0, 0xbc(r1) -/* 801849B8 00181918 48 00 00 D4 */ b lbl_80184A8C -lbl_801849BC: -/* 801849BC 0018191C C0 E1 00 C0 */ lfs f7, 0xc0(r1) -/* 801849C0 00181920 FC 07 E8 40 */ fcmpo cr0, f7, f29 -/* 801849C4 00181924 40 80 00 B8 */ bge lbl_80184A7C -/* 801849C8 00181928 C0 5C 00 00 */ lfs f2, 0(r28) -/* 801849CC 0018192C 38 A0 00 01 */ li r5, 1 -/* 801849D0 00181930 C0 3C 00 04 */ lfs f1, 4(r28) -/* 801849D4 00181934 38 00 00 00 */ li r0, 0 -/* 801849D8 00181938 C0 1C 00 08 */ lfs f0, 8(r28) -/* 801849DC 0018193C EC 87 00 B2 */ fmuls f4, f7, f2 -/* 801849E0 00181940 C0 BB 00 00 */ lfs f5, 0(r27) -/* 801849E4 00181944 EC 47 00 72 */ fmuls f2, f7, f1 -/* 801849E8 00181948 C0 7B 00 04 */ lfs f3, 4(r27) -/* 801849EC 0018194C EC 07 00 32 */ fmuls f0, f7, f0 -/* 801849F0 00181950 C0 3B 00 08 */ lfs f1, 8(r27) -/* 801849F4 00181954 EC C5 20 2A */ fadds f6, f5, f4 -/* 801849F8 00181958 80 61 00 B8 */ lwz r3, 0xb8(r1) -/* 801849FC 0018195C EC A3 10 2A */ fadds f5, f3, f2 -/* 80184A00 00181960 C0 81 00 84 */ lfs f4, 0x84(r1) -/* 80184A04 00181964 EC 01 00 2A */ fadds f0, f1, f0 -/* 80184A08 00181968 90 61 00 5C */ stw r3, 0x5c(r1) -/* 80184A0C 0018196C C0 61 00 88 */ lfs f3, 0x88(r1) -/* 80184A10 00181970 FF A0 38 90 */ fmr f29, f7 -/* 80184A14 00181974 C0 41 00 8C */ lfs f2, 0x8c(r1) -/* 80184A18 00181978 C0 21 00 90 */ lfs f1, 0x90(r1) -/* 80184A1C 0018197C D0 C1 00 34 */ stfs f6, 0x34(r1) -/* 80184A20 00181980 D0 A1 00 38 */ stfs f5, 0x38(r1) -/* 80184A24 00181984 80 81 00 34 */ lwz r4, 0x34(r1) -/* 80184A28 00181988 D0 01 00 3C */ stfs f0, 0x3c(r1) -/* 80184A2C 0018198C 80 61 00 38 */ lwz r3, 0x38(r1) -/* 80184A30 00181990 90 01 00 58 */ stw r0, 0x58(r1) -/* 80184A34 00181994 80 01 00 3C */ lwz r0, 0x3c(r1) -/* 80184A38 00181998 C8 01 00 58 */ lfd f0, 0x58(r1) -/* 80184A3C 0018199C D0 E1 00 30 */ stfs f7, 0x30(r1) -/* 80184A40 001819A0 D0 81 00 40 */ stfs f4, 0x40(r1) -/* 80184A44 001819A4 D0 61 00 44 */ stfs f3, 0x44(r1) -/* 80184A48 001819A8 D0 41 00 48 */ stfs f2, 0x48(r1) -/* 80184A4C 001819AC D0 21 00 4C */ stfs f1, 0x4c(r1) -/* 80184A50 001819B0 98 A1 00 50 */ stb r5, 0x50(r1) -/* 80184A54 001819B4 D0 E1 00 C8 */ stfs f7, 0xc8(r1) -/* 80184A58 001819B8 90 81 00 CC */ stw r4, 0xcc(r1) -/* 80184A5C 001819BC 90 61 00 D0 */ stw r3, 0xd0(r1) -/* 80184A60 001819C0 90 01 00 D4 */ stw r0, 0xd4(r1) -/* 80184A64 001819C4 D0 81 00 D8 */ stfs f4, 0xd8(r1) -/* 80184A68 001819C8 D0 61 00 DC */ stfs f3, 0xdc(r1) -/* 80184A6C 001819CC D0 41 00 E0 */ stfs f2, 0xe0(r1) -/* 80184A70 001819D0 D0 21 00 E4 */ stfs f1, 0xe4(r1) -/* 80184A74 001819D4 98 A1 00 E8 */ stb r5, 0xe8(r1) -/* 80184A78 001819D8 D8 01 00 F0 */ stfd f0, 0xf0(r1) -lbl_80184A7C: -/* 80184A7C 001819DC 28 1E 00 00 */ cmplwi r30, 0 -/* 80184A80 001819E0 41 82 00 0C */ beq lbl_80184A8C -/* 80184A84 001819E4 38 00 00 00 */ li r0, 0 -/* 80184A88 001819E8 98 01 00 BC */ stb r0, 0xbc(r1) -lbl_80184A8C: -/* 80184A8C 001819EC 83 FF 01 30 */ lwz r31, 0x130(r31) -lbl_80184A90: -/* 80184A90 001819F0 80 0D A2 18 */ lwz r0, lbl_805A8DD8@sda21(r13) -/* 80184A94 001819F4 7C 1F 00 40 */ cmplw r31, r0 -/* 80184A98 001819F8 40 82 FE 6C */ bne lbl_80184904 -/* 80184A9C 001819FC C0 21 00 C8 */ lfs f1, 0xc8(r1) -/* 80184AA0 00181A00 C0 01 00 CC */ lfs f0, 0xcc(r1) -/* 80184AA4 00181A04 D0 3A 00 00 */ stfs f1, 0(r26) -/* 80184AA8 00181A08 C0 21 00 D0 */ lfs f1, 0xd0(r1) -/* 80184AAC 00181A0C D0 1A 00 04 */ stfs f0, 4(r26) -/* 80184AB0 00181A10 C0 01 00 D4 */ lfs f0, 0xd4(r1) -/* 80184AB4 00181A14 D0 3A 00 08 */ stfs f1, 8(r26) -/* 80184AB8 00181A18 C0 21 00 D8 */ lfs f1, 0xd8(r1) -/* 80184ABC 00181A1C D0 1A 00 0C */ stfs f0, 0xc(r26) -/* 80184AC0 00181A20 C0 01 00 DC */ lfs f0, 0xdc(r1) -/* 80184AC4 00181A24 D0 3A 00 10 */ stfs f1, 0x10(r26) -/* 80184AC8 00181A28 C0 21 00 E0 */ lfs f1, 0xe0(r1) -/* 80184ACC 00181A2C D0 1A 00 14 */ stfs f0, 0x14(r26) -/* 80184AD0 00181A30 C0 01 00 E4 */ lfs f0, 0xe4(r1) -/* 80184AD4 00181A34 D0 3A 00 18 */ stfs f1, 0x18(r26) -/* 80184AD8 00181A38 88 01 00 E8 */ lbz r0, 0xe8(r1) -/* 80184ADC 00181A3C D0 1A 00 1C */ stfs f0, 0x1c(r26) -/* 80184AE0 00181A40 80 61 00 F4 */ lwz r3, 0xf4(r1) -/* 80184AE4 00181A44 98 1A 00 20 */ stb r0, 0x20(r26) -/* 80184AE8 00181A48 80 01 00 F0 */ lwz r0, 0xf0(r1) -/* 80184AEC 00181A4C 90 7A 00 2C */ stw r3, 0x2c(r26) -/* 80184AF0 00181A50 90 1A 00 28 */ stw r0, 0x28(r26) -/* 80184AF4 00181A54 E3 E1 01 48 */ psq_l f31, 328(r1), 0, qr0 -/* 80184AF8 00181A58 CB E1 01 40 */ lfd f31, 0x140(r1) -/* 80184AFC 00181A5C E3 C1 01 38 */ psq_l f30, 312(r1), 0, qr0 -/* 80184B00 00181A60 CB C1 01 30 */ lfd f30, 0x130(r1) -/* 80184B04 00181A64 E3 A1 01 28 */ psq_l f29, 296(r1), 0, qr0 -/* 80184B08 00181A68 CB A1 01 20 */ lfd f29, 0x120(r1) -/* 80184B0C 00181A6C E3 81 01 18 */ psq_l f28, 280(r1), 0, qr0 -/* 80184B10 00181A70 CB 81 01 10 */ lfd f28, 0x110(r1) -/* 80184B14 00181A74 BB 41 00 F8 */ lmw r26, 0xf8(r1) -/* 80184B18 00181A78 80 01 01 54 */ lwz r0, 0x154(r1) -/* 80184B1C 00181A7C 7C 08 03 A6 */ mtlr r0 -/* 80184B20 00181A80 38 21 01 50 */ addi r1, r1, 0x150 -/* 80184B24 00181A84 4E 80 00 20 */ blr - -.global RayStaticIntersectionArea__14CGameCollisionFRC9CGameAreaRC9CVector3fRC9CVector3fRC15CMaterialFilter -RayStaticIntersectionArea__14CGameCollisionFRC9CGameAreaRC9CVector3fRC9CVector3fRC15CMaterialFilter: -/* 80184B28 00181A88 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 80184B2C 00181A8C 7C 08 02 A6 */ mflr r0 -/* 80184B30 00181A90 C0 02 A2 A8 */ lfs f0, lbl_805ABFC8@sda21(r2) -/* 80184B34 00181A94 90 01 00 54 */ stw r0, 0x54(r1) -/* 80184B38 00181A98 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80184B3C 00181A9C C0 85 00 00 */ lfs f4, 0(r5) -/* 80184B40 00181AA0 C0 A5 00 04 */ lfs f5, 4(r5) -/* 80184B44 00181AA4 C0 C5 00 08 */ lfs f6, 8(r5) -/* 80184B48 00181AA8 C0 64 00 00 */ lfs f3, 0(r4) -/* 80184B4C 00181AAC C0 44 00 04 */ lfs f2, 4(r4) -/* 80184B50 00181AB0 C0 04 00 08 */ lfs f0, 8(r4) -/* 80184B54 00181AB4 D0 61 00 08 */ stfs f3, 8(r1) -/* 80184B58 00181AB8 D0 41 00 0C */ stfs f2, 0xc(r1) -/* 80184B5C 00181ABC D0 01 00 10 */ stfs f0, 0x10(r1) -/* 80184B60 00181AC0 D0 81 00 14 */ stfs f4, 0x14(r1) -/* 80184B64 00181AC4 D0 A1 00 18 */ stfs f5, 0x18(r1) -/* 80184B68 00181AC8 D0 C1 00 1C */ stfs f6, 0x1c(r1) -/* 80184B6C 00181ACC 40 81 00 08 */ ble lbl_80184B74 -/* 80184B70 00181AD0 48 00 00 08 */ b lbl_80184B78 -lbl_80184B74: -/* 80184B74 00181AD4 C0 22 A2 F4 */ lfs f1, lbl_805AC014@sda21(r2) -lbl_80184B78: -/* 80184B78 00181AD8 80 83 01 2C */ lwz r4, 0x12c(r3) -/* 80184B7C 00181ADC 7C C5 33 78 */ mr r5, r6 -/* 80184B80 00181AE0 38 61 00 20 */ addi r3, r1, 0x20 -/* 80184B84 00181AE4 80 C4 00 04 */ lwz r6, 4(r4) -/* 80184B88 00181AE8 38 81 00 08 */ addi r4, r1, 8 -/* 80184B8C 00181AEC 80 06 00 18 */ lwz r0, 0x18(r6) -/* 80184B90 00181AF0 80 E6 00 20 */ lwz r7, 0x20(r6) -/* 80184B94 00181AF4 C0 06 00 00 */ lfs f0, 0(r6) -/* 80184B98 00181AF8 D0 01 00 20 */ stfs f0, 0x20(r1) -/* 80184B9C 00181AFC C0 06 00 04 */ lfs f0, 4(r6) -/* 80184BA0 00181B00 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 80184BA4 00181B04 C0 06 00 08 */ lfs f0, 8(r6) -/* 80184BA8 00181B08 D0 01 00 28 */ stfs f0, 0x28(r1) -/* 80184BAC 00181B0C C0 06 00 0C */ lfs f0, 0xc(r6) -/* 80184BB0 00181B10 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 80184BB4 00181B14 C0 06 00 10 */ lfs f0, 0x10(r6) -/* 80184BB8 00181B18 D0 01 00 30 */ stfs f0, 0x30(r1) -/* 80184BBC 00181B1C C0 06 00 14 */ lfs f0, 0x14(r6) -/* 80184BC0 00181B20 D0 01 00 34 */ stfs f0, 0x34(r1) -/* 80184BC4 00181B24 90 E1 00 38 */ stw r7, 0x38(r1) -/* 80184BC8 00181B28 90 C1 00 3C */ stw r6, 0x3c(r1) -/* 80184BCC 00181B2C 90 01 00 40 */ stw r0, 0x40(r1) -/* 80184BD0 00181B30 48 11 D6 DD */ bl LineTest__Q212CAreaOctTree4NodeCFRC5CLineRC15CMaterialFilterf -/* 80184BD4 00181B34 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80184BD8 00181B38 40 82 00 0C */ bne lbl_80184BE4 -/* 80184BDC 00181B3C 38 60 00 00 */ li r3, 0 -/* 80184BE0 00181B40 48 00 00 08 */ b lbl_80184BE8 -lbl_80184BE4: -/* 80184BE4 00181B44 38 60 00 01 */ li r3, 1 -lbl_80184BE8: -/* 80184BE8 00181B48 80 01 00 54 */ lwz r0, 0x54(r1) -/* 80184BEC 00181B4C 7C 08 03 A6 */ mtlr r0 -/* 80184BF0 00181B50 38 21 00 50 */ addi r1, r1, 0x50 -/* 80184BF4 00181B54 4E 80 00 20 */ blr - -.global RayStaticIntersectionBool__14CGameCollisionFRC13CStateManagerRC9CVector3fRC9CVector3ffRC15CMaterialFilter -RayStaticIntersectionBool__14CGameCollisionFRC13CStateManagerRC9CVector3fRC9CVector3ffRC15CMaterialFilter: -/* 80184BF8 00181B58 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 80184BFC 00181B5C 7C 08 02 A6 */ mflr r0 -/* 80184C00 00181B60 90 01 00 64 */ stw r0, 0x64(r1) -/* 80184C04 00181B64 DB E1 00 50 */ stfd f31, 0x50(r1) -/* 80184C08 00181B68 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 -/* 80184C0C 00181B6C 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 80184C10 00181B70 93 C1 00 48 */ stw r30, 0x48(r1) -/* 80184C14 00181B74 C0 02 A2 A8 */ lfs f0, lbl_805ABFC8@sda21(r2) -/* 80184C18 00181B78 7C DE 33 78 */ mr r30, r6 -/* 80184C1C 00181B7C C0 85 00 00 */ lfs f4, 0(r5) -/* 80184C20 00181B80 C0 A5 00 04 */ lfs f5, 4(r5) -/* 80184C24 00181B84 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80184C28 00181B88 C0 C5 00 08 */ lfs f6, 8(r5) -/* 80184C2C 00181B8C C0 64 00 00 */ lfs f3, 0(r4) -/* 80184C30 00181B90 C0 44 00 04 */ lfs f2, 4(r4) -/* 80184C34 00181B94 C0 04 00 08 */ lfs f0, 8(r4) -/* 80184C38 00181B98 D0 61 00 08 */ stfs f3, 8(r1) -/* 80184C3C 00181B9C 80 63 08 50 */ lwz r3, 0x850(r3) -/* 80184C40 00181BA0 D0 41 00 0C */ stfs f2, 0xc(r1) -/* 80184C44 00181BA4 D0 01 00 10 */ stfs f0, 0x10(r1) -/* 80184C48 00181BA8 D0 81 00 14 */ stfs f4, 0x14(r1) -/* 80184C4C 00181BAC D0 A1 00 18 */ stfs f5, 0x18(r1) -/* 80184C50 00181BB0 D0 C1 00 1C */ stfs f6, 0x1c(r1) -/* 80184C54 00181BB4 40 81 00 0C */ ble lbl_80184C60 -/* 80184C58 00181BB8 FF E0 08 90 */ fmr f31, f1 -/* 80184C5C 00181BBC 48 00 00 08 */ b lbl_80184C64 -lbl_80184C60: -/* 80184C60 00181BC0 C3 E2 A2 F4 */ lfs f31, lbl_805AC014@sda21(r2) -lbl_80184C64: -/* 80184C64 00181BC4 83 E3 00 58 */ lwz r31, 0x58(r3) -/* 80184C68 00181BC8 48 00 00 78 */ b lbl_80184CE0 -lbl_80184C6C: -/* 80184C6C 00181BCC 80 9F 01 2C */ lwz r4, 0x12c(r31) -/* 80184C70 00181BD0 FC 20 F8 90 */ fmr f1, f31 -/* 80184C74 00181BD4 7F C5 F3 78 */ mr r5, r30 -/* 80184C78 00181BD8 38 61 00 20 */ addi r3, r1, 0x20 -/* 80184C7C 00181BDC 80 C4 00 04 */ lwz r6, 4(r4) -/* 80184C80 00181BE0 38 81 00 08 */ addi r4, r1, 8 -/* 80184C84 00181BE4 80 06 00 18 */ lwz r0, 0x18(r6) -/* 80184C88 00181BE8 80 E6 00 20 */ lwz r7, 0x20(r6) -/* 80184C8C 00181BEC C0 06 00 00 */ lfs f0, 0(r6) -/* 80184C90 00181BF0 D0 01 00 20 */ stfs f0, 0x20(r1) -/* 80184C94 00181BF4 C0 06 00 04 */ lfs f0, 4(r6) -/* 80184C98 00181BF8 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 80184C9C 00181BFC C0 06 00 08 */ lfs f0, 8(r6) -/* 80184CA0 00181C00 D0 01 00 28 */ stfs f0, 0x28(r1) -/* 80184CA4 00181C04 C0 06 00 0C */ lfs f0, 0xc(r6) -/* 80184CA8 00181C08 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 80184CAC 00181C0C C0 06 00 10 */ lfs f0, 0x10(r6) -/* 80184CB0 00181C10 D0 01 00 30 */ stfs f0, 0x30(r1) -/* 80184CB4 00181C14 C0 06 00 14 */ lfs f0, 0x14(r6) -/* 80184CB8 00181C18 D0 01 00 34 */ stfs f0, 0x34(r1) -/* 80184CBC 00181C1C 90 E1 00 38 */ stw r7, 0x38(r1) -/* 80184CC0 00181C20 90 C1 00 3C */ stw r6, 0x3c(r1) -/* 80184CC4 00181C24 90 01 00 40 */ stw r0, 0x40(r1) -/* 80184CC8 00181C28 48 11 D5 E5 */ bl LineTest__Q212CAreaOctTree4NodeCFRC5CLineRC15CMaterialFilterf -/* 80184CCC 00181C2C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80184CD0 00181C30 40 82 00 0C */ bne lbl_80184CDC -/* 80184CD4 00181C34 38 60 00 00 */ li r3, 0 -/* 80184CD8 00181C38 48 00 00 18 */ b lbl_80184CF0 -lbl_80184CDC: -/* 80184CDC 00181C3C 83 FF 01 30 */ lwz r31, 0x130(r31) -lbl_80184CE0: -/* 80184CE0 00181C40 80 0D A2 18 */ lwz r0, lbl_805A8DD8@sda21(r13) -/* 80184CE4 00181C44 7C 1F 00 40 */ cmplw r31, r0 -/* 80184CE8 00181C48 40 82 FF 84 */ bne lbl_80184C6C -/* 80184CEC 00181C4C 38 60 00 01 */ li r3, 1 -lbl_80184CF0: -/* 80184CF0 00181C50 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 -/* 80184CF4 00181C54 80 01 00 64 */ lwz r0, 0x64(r1) -/* 80184CF8 00181C58 CB E1 00 50 */ lfd f31, 0x50(r1) -/* 80184CFC 00181C5C 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 80184D00 00181C60 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 80184D04 00181C64 7C 08 03 A6 */ mtlr r0 -/* 80184D08 00181C68 38 21 00 60 */ addi r1, r1, 0x60 -/* 80184D0C 00181C6C 4E 80 00 20 */ blr - -.global "RayDynamicIntersectionBool__14CGameCollisionFRC13CStateManagerRC9CVector3fRC9CVector3fRC15CMaterialFilterQ24rstl49reserved_vector<9TUniqueId,1024>PC6CActorf" -"RayDynamicIntersectionBool__14CGameCollisionFRC13CStateManagerRC9CVector3fRC9CVector3fRC15CMaterialFilterQ24rstl49reserved_vector<9TUniqueId,1024>PC6CActorf": -/* 80184D10 00181C70 94 21 FE E0 */ stwu r1, -0x120(r1) -/* 80184D14 00181C74 7C 08 02 A6 */ mflr r0 -/* 80184D18 00181C78 90 01 01 24 */ stw r0, 0x124(r1) -/* 80184D1C 00181C7C DB E1 01 10 */ stfd f31, 0x110(r1) -/* 80184D20 00181C80 F3 E1 01 18 */ psq_st f31, 280(r1), 0, qr0 -/* 80184D24 00181C84 BE E1 00 EC */ stmw r23, 0xec(r1) -/* 80184D28 00181C88 C0 02 A2 A8 */ lfs f0, lbl_805ABFC8@sda21(r2) -/* 80184D2C 00181C8C 7C 78 1B 78 */ mr r24, r3 -/* 80184D30 00181C90 7C 99 23 78 */ mr r25, r4 -/* 80184D34 00181C94 7C BA 2B 78 */ mr r26, r5 -/* 80184D38 00181C98 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80184D3C 00181C9C 7C DB 33 78 */ mr r27, r6 -/* 80184D40 00181CA0 7C FC 3B 78 */ mr r28, r7 -/* 80184D44 00181CA4 7D 1D 43 78 */ mr r29, r8 -/* 80184D48 00181CA8 40 81 00 0C */ ble lbl_80184D54 -/* 80184D4C 00181CAC FF E0 08 90 */ fmr f31, f1 -/* 80184D50 00181CB0 48 00 00 08 */ b lbl_80184D58 -lbl_80184D54: -/* 80184D54 00181CB4 C3 E2 A2 F4 */ lfs f31, lbl_805AC014@sda21(r2) -lbl_80184D58: -/* 80184D58 00181CB8 3B DC 00 04 */ addi r30, r28, 4 -/* 80184D5C 00181CBC 3B E1 00 B4 */ addi r31, r1, 0xb4 -/* 80184D60 00181CC0 48 00 00 D4 */ b lbl_80184E34 -lbl_80184D64: -/* 80184D64 00181CC4 A0 1E 00 00 */ lhz r0, 0(r30) -/* 80184D68 00181CC8 7F 03 C3 78 */ mr r3, r24 -/* 80184D6C 00181CCC 38 81 00 08 */ addi r4, r1, 8 -/* 80184D70 00181CD0 B0 01 00 08 */ sth r0, 8(r1) -/* 80184D74 00181CD4 4B EC 78 31 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 80184D78 00181CD8 7C 64 1B 78 */ mr r4, r3 -/* 80184D7C 00181CDC 38 61 00 0C */ addi r3, r1, 0xc -/* 80184D80 00181CE0 4B F2 79 65 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" -/* 80184D84 00181CE4 82 E3 00 04 */ lwz r23, 4(r3) -/* 80184D88 00181CE8 28 17 00 00 */ cmplwi r23, 0 -/* 80184D8C 00181CEC 41 82 00 A4 */ beq lbl_80184E30 -/* 80184D90 00181CF0 28 1D 00 00 */ cmplwi r29, 0 -/* 80184D94 00181CF4 41 82 00 14 */ beq lbl_80184DA8 -/* 80184D98 00181CF8 A0 77 00 08 */ lhz r3, 8(r23) -/* 80184D9C 00181CFC A0 1D 00 08 */ lhz r0, 8(r29) -/* 80184DA0 00181D00 7C 03 00 40 */ cmplw r3, r0 -/* 80184DA4 00181D04 41 82 00 8C */ beq lbl_80184E30 -lbl_80184DA8: -/* 80184DA8 00181D08 7E E4 BB 78 */ mr r4, r23 -/* 80184DAC 00181D0C 38 61 00 14 */ addi r3, r1, 0x14 -/* 80184DB0 00181D10 81 97 00 00 */ lwz r12, 0(r23) -/* 80184DB4 00181D14 81 8C 00 70 */ lwz r12, 0x70(r12) -/* 80184DB8 00181D18 7D 89 03 A6 */ mtctr r12 -/* 80184DBC 00181D1C 4E 80 04 21 */ bctrl -/* 80184DC0 00181D20 7E E3 BB 78 */ mr r3, r23 -/* 80184DC4 00181D24 81 97 00 00 */ lwz r12, 0(r23) -/* 80184DC8 00181D28 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 80184DCC 00181D2C 7D 89 03 A6 */ mtctr r12 -/* 80184DD0 00181D30 4E 80 04 21 */ bctrl -/* 80184DD4 00181D34 FC 20 F8 90 */ fmr f1, f31 -/* 80184DD8 00181D38 7C 77 1B 78 */ mr r23, r3 -/* 80184DDC 00181D3C 7F 24 CB 78 */ mr r4, r25 -/* 80184DE0 00181D40 7F 45 D3 78 */ mr r5, r26 -/* 80184DE4 00181D44 38 61 00 78 */ addi r3, r1, 0x78 -/* 80184DE8 00181D48 48 15 12 85 */ bl __ct__5CMRayFRC9CVector3fRC9CVector3ff -/* 80184DEC 00181D4C D3 E1 00 B0 */ stfs f31, 0xb0(r1) -/* 80184DF0 00181D50 7F E3 FB 78 */ mr r3, r31 -/* 80184DF4 00181D54 38 81 00 14 */ addi r4, r1, 0x14 -/* 80184DF8 00181D58 48 18 DD 7D */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80184DFC 00181D5C 93 61 00 E4 */ stw r27, 0xe4(r1) -/* 80184E00 00181D60 7E E4 BB 78 */ mr r4, r23 -/* 80184E04 00181D64 38 61 00 48 */ addi r3, r1, 0x48 -/* 80184E08 00181D68 38 A1 00 78 */ addi r5, r1, 0x78 -/* 80184E0C 00181D6C 81 97 00 00 */ lwz r12, 0(r23) -/* 80184E10 00181D70 81 8C 00 24 */ lwz r12, 0x24(r12) -/* 80184E14 00181D74 7D 89 03 A6 */ mtctr r12 -/* 80184E18 00181D78 4E 80 04 21 */ bctrl -/* 80184E1C 00181D7C 88 01 00 68 */ lbz r0, 0x68(r1) -/* 80184E20 00181D80 28 00 00 00 */ cmplwi r0, 0 -/* 80184E24 00181D84 41 82 00 0C */ beq lbl_80184E30 -/* 80184E28 00181D88 38 60 00 00 */ li r3, 0 -/* 80184E2C 00181D8C 48 00 00 24 */ b lbl_80184E50 -lbl_80184E30: -/* 80184E30 00181D90 3B DE 00 02 */ addi r30, r30, 2 -lbl_80184E34: -/* 80184E34 00181D94 80 1C 00 00 */ lwz r0, 0(r28) -/* 80184E38 00181D98 54 00 08 3C */ slwi r0, r0, 1 -/* 80184E3C 00181D9C 7C 7C 02 14 */ add r3, r28, r0 -/* 80184E40 00181DA0 38 03 00 04 */ addi r0, r3, 4 -/* 80184E44 00181DA4 7C 1E 00 40 */ cmplw r30, r0 -/* 80184E48 00181DA8 40 82 FF 1C */ bne lbl_80184D64 -/* 80184E4C 00181DAC 38 60 00 01 */ li r3, 1 -lbl_80184E50: -/* 80184E50 00181DB0 E3 E1 01 18 */ psq_l f31, 280(r1), 0, qr0 -/* 80184E54 00181DB4 CB E1 01 10 */ lfd f31, 0x110(r1) -/* 80184E58 00181DB8 BA E1 00 EC */ lmw r23, 0xec(r1) -/* 80184E5C 00181DBC 80 01 01 24 */ lwz r0, 0x124(r1) -/* 80184E60 00181DC0 7C 08 03 A6 */ mtlr r0 -/* 80184E64 00181DC4 38 21 01 20 */ addi r1, r1, 0x120 -/* 80184E68 00181DC8 4E 80 00 20 */ blr - -.global "RayDynamicIntersection__14CGameCollisionFRC13CStateManagerR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -"RayDynamicIntersection__14CGameCollisionFRC13CStateManagerR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>": -/* 80184E6C 00181DCC 94 21 FE 70 */ stwu r1, -0x190(r1) -/* 80184E70 00181DD0 7C 08 02 A6 */ mflr r0 -/* 80184E74 00181DD4 90 01 01 94 */ stw r0, 0x194(r1) -/* 80184E78 00181DD8 DB E1 01 80 */ stfd f31, 0x180(r1) -/* 80184E7C 00181DDC F3 E1 01 88 */ psq_st f31, 392(r1), 0, qr0 -/* 80184E80 00181DE0 BE A1 01 54 */ stmw r21, 0x154(r1) -/* 80184E84 00181DE4 C0 02 A2 A8 */ lfs f0, lbl_805ABFC8@sda21(r2) -/* 80184E88 00181DE8 7C 76 1B 78 */ mr r22, r3 -/* 80184E8C 00181DEC 7C 97 23 78 */ mr r23, r4 -/* 80184E90 00181DF0 7C B8 2B 78 */ mr r24, r5 -/* 80184E94 00181DF4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80184E98 00181DF8 7C D9 33 78 */ mr r25, r6 -/* 80184E9C 00181DFC 7C FA 3B 78 */ mr r26, r7 -/* 80184EA0 00181E00 7D 1B 43 78 */ mr r27, r8 -/* 80184EA4 00181E04 7D 3C 4B 78 */ mr r28, r9 -/* 80184EA8 00181E08 40 81 00 0C */ ble lbl_80184EB4 -/* 80184EAC 00181E0C FF E0 08 90 */ fmr f31, f1 -/* 80184EB0 00181E10 48 00 00 08 */ b lbl_80184EB8 -lbl_80184EB4: -/* 80184EB4 00181E14 C3 E2 A2 F4 */ lfs f31, lbl_805AC014@sda21(r2) -lbl_80184EB8: -/* 80184EB8 00181E18 C0 22 A2 A8 */ lfs f1, lbl_805ABFC8@sda21(r2) -/* 80184EBC 00181E1C 38 61 00 14 */ addi r3, r1, 0x14 -/* 80184EC0 00181E20 C0 02 A2 D4 */ lfs f0, lbl_805ABFF4@sda21(r2) -/* 80184EC4 00181E24 D0 21 00 B0 */ stfs f1, 0xb0(r1) -/* 80184EC8 00181E28 D0 21 00 B4 */ stfs f1, 0xb4(r1) -/* 80184ECC 00181E2C D0 21 00 B8 */ stfs f1, 0xb8(r1) -/* 80184ED0 00181E30 D0 21 00 BC */ stfs f1, 0xbc(r1) -/* 80184ED4 00181E34 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 80184ED8 00181E38 D0 21 00 18 */ stfs f1, 0x18(r1) -/* 80184EDC 00181E3C D0 21 00 1C */ stfs f1, 0x1c(r1) -/* 80184EE0 00181E40 48 18 FA 19 */ bl Normalize__9CVector3fFv -/* 80184EE4 00181E44 C0 61 00 14 */ lfs f3, 0x14(r1) -/* 80184EE8 00181E48 38 00 00 00 */ li r0, 0 -/* 80184EEC 00181E4C C0 41 00 18 */ lfs f2, 0x18(r1) -/* 80184EF0 00181E50 3B DC 00 04 */ addi r30, r28, 4 -/* 80184EF4 00181E54 C0 21 00 1C */ lfs f1, 0x1c(r1) -/* 80184EF8 00181E58 3B E1 01 1C */ addi r31, r1, 0x11c -/* 80184EFC 00181E5C C0 02 A2 A8 */ lfs f0, lbl_805ABFC8@sda21(r2) -/* 80184F00 00181E60 D0 61 00 C0 */ stfs f3, 0xc0(r1) -/* 80184F04 00181E64 D0 41 00 C4 */ stfs f2, 0xc4(r1) -/* 80184F08 00181E68 D0 21 00 C8 */ stfs f1, 0xc8(r1) -/* 80184F0C 00181E6C D0 01 00 CC */ stfs f0, 0xcc(r1) -/* 80184F10 00181E70 98 01 00 D0 */ stb r0, 0xd0(r1) -/* 80184F14 00181E74 90 01 00 DC */ stw r0, 0xdc(r1) -/* 80184F18 00181E78 90 01 00 D8 */ stw r0, 0xd8(r1) -/* 80184F1C 00181E7C 48 00 01 54 */ b lbl_80185070 -lbl_80184F20: -/* 80184F20 00181E80 A0 1E 00 00 */ lhz r0, 0(r30) -/* 80184F24 00181E84 7E E3 BB 78 */ mr r3, r23 -/* 80184F28 00181E88 38 81 00 08 */ addi r4, r1, 8 -/* 80184F2C 00181E8C B0 01 00 08 */ sth r0, 8(r1) -/* 80184F30 00181E90 4B EC 76 75 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 80184F34 00181E94 7C 64 1B 78 */ mr r4, r3 -/* 80184F38 00181E98 38 61 00 0C */ addi r3, r1, 0xc -/* 80184F3C 00181E9C 4B F2 77 A9 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" -/* 80184F40 00181EA0 83 A3 00 04 */ lwz r29, 4(r3) -/* 80184F44 00181EA4 28 1D 00 00 */ cmplwi r29, 0 -/* 80184F48 00181EA8 41 82 01 24 */ beq lbl_8018506C -/* 80184F4C 00181EAC 7F A4 EB 78 */ mr r4, r29 -/* 80184F50 00181EB0 38 61 00 20 */ addi r3, r1, 0x20 -/* 80184F54 00181EB4 81 9D 00 00 */ lwz r12, 0(r29) -/* 80184F58 00181EB8 81 8C 00 70 */ lwz r12, 0x70(r12) -/* 80184F5C 00181EBC 7D 89 03 A6 */ mtctr r12 -/* 80184F60 00181EC0 4E 80 04 21 */ bctrl -/* 80184F64 00181EC4 7F A3 EB 78 */ mr r3, r29 -/* 80184F68 00181EC8 81 9D 00 00 */ lwz r12, 0(r29) -/* 80184F6C 00181ECC 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 80184F70 00181ED0 7D 89 03 A6 */ mtctr r12 -/* 80184F74 00181ED4 4E 80 04 21 */ bctrl -/* 80184F78 00181ED8 FC 20 F8 90 */ fmr f1, f31 -/* 80184F7C 00181EDC 7C 75 1B 78 */ mr r21, r3 -/* 80184F80 00181EE0 7F 24 CB 78 */ mr r4, r25 -/* 80184F84 00181EE4 7F 45 D3 78 */ mr r5, r26 -/* 80184F88 00181EE8 38 61 00 E0 */ addi r3, r1, 0xe0 -/* 80184F8C 00181EEC 48 15 10 E1 */ bl __ct__5CMRayFRC9CVector3fRC9CVector3ff -/* 80184F90 00181EF0 D3 E1 01 18 */ stfs f31, 0x118(r1) -/* 80184F94 00181EF4 7F E3 FB 78 */ mr r3, r31 -/* 80184F98 00181EF8 38 81 00 20 */ addi r4, r1, 0x20 -/* 80184F9C 00181EFC 48 18 DB D9 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80184FA0 00181F00 93 61 01 4C */ stw r27, 0x14c(r1) -/* 80184FA4 00181F04 7E A4 AB 78 */ mr r4, r21 -/* 80184FA8 00181F08 38 61 00 50 */ addi r3, r1, 0x50 -/* 80184FAC 00181F0C 38 A1 00 E0 */ addi r5, r1, 0xe0 -/* 80184FB0 00181F10 81 95 00 00 */ lwz r12, 0(r21) -/* 80184FB4 00181F14 81 8C 00 24 */ lwz r12, 0x24(r12) -/* 80184FB8 00181F18 7D 89 03 A6 */ mtctr r12 -/* 80184FBC 00181F1C 4E 80 04 21 */ bctrl -/* 80184FC0 00181F20 88 C1 00 70 */ lbz r6, 0x70(r1) -/* 80184FC4 00181F24 C0 E1 00 50 */ lfs f7, 0x50(r1) -/* 80184FC8 00181F28 C0 C1 00 54 */ lfs f6, 0x54(r1) -/* 80184FCC 00181F2C 28 06 00 00 */ cmplwi r6, 0 -/* 80184FD0 00181F30 C0 A1 00 58 */ lfs f5, 0x58(r1) -/* 80184FD4 00181F34 C0 01 00 5C */ lfs f0, 0x5c(r1) -/* 80184FD8 00181F38 C0 81 00 60 */ lfs f4, 0x60(r1) -/* 80184FDC 00181F3C C0 61 00 64 */ lfs f3, 0x64(r1) -/* 80184FE0 00181F40 C0 41 00 68 */ lfs f2, 0x68(r1) -/* 80184FE4 00181F44 C0 21 00 6C */ lfs f1, 0x6c(r1) -/* 80184FE8 00181F48 80 01 00 78 */ lwz r0, 0x78(r1) -/* 80184FEC 00181F4C 80 61 00 7C */ lwz r3, 0x7c(r1) -/* 80184FF0 00181F50 D0 E1 00 80 */ stfs f7, 0x80(r1) -/* 80184FF4 00181F54 D0 C1 00 84 */ stfs f6, 0x84(r1) -/* 80184FF8 00181F58 D0 A1 00 88 */ stfs f5, 0x88(r1) -/* 80184FFC 00181F5C D0 01 00 8C */ stfs f0, 0x8c(r1) -/* 80185000 00181F60 D0 81 00 90 */ stfs f4, 0x90(r1) -/* 80185004 00181F64 D0 61 00 94 */ stfs f3, 0x94(r1) -/* 80185008 00181F68 D0 41 00 98 */ stfs f2, 0x98(r1) -/* 8018500C 00181F6C D0 21 00 9C */ stfs f1, 0x9c(r1) -/* 80185010 00181F70 98 C1 00 A0 */ stb r6, 0xa0(r1) -/* 80185014 00181F74 90 61 00 AC */ stw r3, 0xac(r1) -/* 80185018 00181F78 90 01 00 A8 */ stw r0, 0xa8(r1) -/* 8018501C 00181F7C 41 82 00 50 */ beq lbl_8018506C -/* 80185020 00181F80 FC 07 F8 40 */ fcmpo cr0, f7, f31 -/* 80185024 00181F84 40 80 00 48 */ bge lbl_8018506C -/* 80185028 00181F88 80 A1 00 84 */ lwz r5, 0x84(r1) -/* 8018502C 00181F8C FF E0 38 90 */ fmr f31, f7 -/* 80185030 00181F90 80 81 00 88 */ lwz r4, 0x88(r1) -/* 80185034 00181F94 80 61 00 8C */ lwz r3, 0x8c(r1) -/* 80185038 00181F98 C8 01 00 A8 */ lfd f0, 0xa8(r1) -/* 8018503C 00181F9C A0 1D 00 08 */ lhz r0, 8(r29) -/* 80185040 00181FA0 D0 E1 00 B0 */ stfs f7, 0xb0(r1) -/* 80185044 00181FA4 90 A1 00 B4 */ stw r5, 0xb4(r1) -/* 80185048 00181FA8 90 81 00 B8 */ stw r4, 0xb8(r1) -/* 8018504C 00181FAC 90 61 00 BC */ stw r3, 0xbc(r1) -/* 80185050 00181FB0 D0 81 00 C0 */ stfs f4, 0xc0(r1) -/* 80185054 00181FB4 D0 61 00 C4 */ stfs f3, 0xc4(r1) -/* 80185058 00181FB8 D0 41 00 C8 */ stfs f2, 0xc8(r1) -/* 8018505C 00181FBC D0 21 00 CC */ stfs f1, 0xcc(r1) -/* 80185060 00181FC0 98 C1 00 D0 */ stb r6, 0xd0(r1) -/* 80185064 00181FC4 D8 01 00 D8 */ stfd f0, 0xd8(r1) -/* 80185068 00181FC8 B0 18 00 00 */ sth r0, 0(r24) -lbl_8018506C: -/* 8018506C 00181FCC 3B DE 00 02 */ addi r30, r30, 2 -lbl_80185070: -/* 80185070 00181FD0 80 1C 00 00 */ lwz r0, 0(r28) -/* 80185074 00181FD4 54 00 08 3C */ slwi r0, r0, 1 -/* 80185078 00181FD8 7C 7C 02 14 */ add r3, r28, r0 -/* 8018507C 00181FDC 38 03 00 04 */ addi r0, r3, 4 -/* 80185080 00181FE0 7C 1E 00 40 */ cmplw r30, r0 -/* 80185084 00181FE4 40 82 FE 9C */ bne lbl_80184F20 -/* 80185088 00181FE8 C0 21 00 B0 */ lfs f1, 0xb0(r1) -/* 8018508C 00181FEC C0 01 00 B4 */ lfs f0, 0xb4(r1) -/* 80185090 00181FF0 D0 36 00 00 */ stfs f1, 0(r22) -/* 80185094 00181FF4 C0 21 00 B8 */ lfs f1, 0xb8(r1) -/* 80185098 00181FF8 D0 16 00 04 */ stfs f0, 4(r22) -/* 8018509C 00181FFC C0 01 00 BC */ lfs f0, 0xbc(r1) -/* 801850A0 00182000 D0 36 00 08 */ stfs f1, 8(r22) -/* 801850A4 00182004 C0 21 00 C0 */ lfs f1, 0xc0(r1) -/* 801850A8 00182008 D0 16 00 0C */ stfs f0, 0xc(r22) -/* 801850AC 0018200C C0 01 00 C4 */ lfs f0, 0xc4(r1) -/* 801850B0 00182010 D0 36 00 10 */ stfs f1, 0x10(r22) -/* 801850B4 00182014 C0 21 00 C8 */ lfs f1, 0xc8(r1) -/* 801850B8 00182018 D0 16 00 14 */ stfs f0, 0x14(r22) -/* 801850BC 0018201C C0 01 00 CC */ lfs f0, 0xcc(r1) -/* 801850C0 00182020 D0 36 00 18 */ stfs f1, 0x18(r22) -/* 801850C4 00182024 88 01 00 D0 */ lbz r0, 0xd0(r1) -/* 801850C8 00182028 D0 16 00 1C */ stfs f0, 0x1c(r22) -/* 801850CC 0018202C 80 61 00 DC */ lwz r3, 0xdc(r1) -/* 801850D0 00182030 98 16 00 20 */ stb r0, 0x20(r22) -/* 801850D4 00182034 80 01 00 D8 */ lwz r0, 0xd8(r1) -/* 801850D8 00182038 90 76 00 2C */ stw r3, 0x2c(r22) -/* 801850DC 0018203C 90 16 00 28 */ stw r0, 0x28(r22) -/* 801850E0 00182040 E3 E1 01 88 */ psq_l f31, 392(r1), 0, qr0 -/* 801850E4 00182044 CB E1 01 80 */ lfd f31, 0x180(r1) -/* 801850E8 00182048 BA A1 01 54 */ lmw r21, 0x154(r1) -/* 801850EC 0018204C 80 01 01 94 */ lwz r0, 0x194(r1) -/* 801850F0 00182050 7C 08 03 A6 */ mtlr r0 -/* 801850F4 00182054 38 21 01 90 */ addi r1, r1, 0x190 -/* 801850F8 00182058 4E 80 00 20 */ blr - -.global "RayWorldIntersection__14CGameCollisionFRC13CStateManagerR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -"RayWorldIntersection__14CGameCollisionFRC13CStateManagerR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>": -/* 801850FC 0018205C 94 21 FE F0 */ stwu r1, -0x110(r1) -/* 80185100 00182060 7C 08 02 A6 */ mflr r0 -/* 80185104 00182064 90 01 01 14 */ stw r0, 0x114(r1) -/* 80185108 00182068 DB E1 01 00 */ stfd f31, 0x100(r1) -/* 8018510C 0018206C F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 -/* 80185110 00182070 DB C1 00 F0 */ stfd f30, 0xf0(r1) -/* 80185114 00182074 F3 C1 00 F8 */ psq_st f30, 248(r1), 0, qr0 -/* 80185118 00182078 DB A1 00 E0 */ stfd f29, 0xe0(r1) -/* 8018511C 0018207C F3 A1 00 E8 */ psq_st f29, 232(r1), 0, qr0 -/* 80185120 00182080 DB 81 00 D0 */ stfd f28, 0xd0(r1) -/* 80185124 00182084 F3 81 00 D8 */ psq_st f28, 216(r1), 0, qr0 -/* 80185128 00182088 DB 61 00 C0 */ stfd f27, 0xc0(r1) -/* 8018512C 0018208C F3 61 00 C8 */ psq_st f27, 200(r1), 0, qr0 -/* 80185130 00182090 DB 41 00 B0 */ stfd f26, 0xb0(r1) -/* 80185134 00182094 F3 41 00 B8 */ psq_st f26, 184(r1), 0, qr0 -/* 80185138 00182098 DB 21 00 A0 */ stfd f25, 0xa0(r1) -/* 8018513C 0018209C F3 21 00 A8 */ psq_st f25, 168(r1), 0, qr0 -/* 80185140 001820A0 DB 01 00 90 */ stfd f24, 0x90(r1) -/* 80185144 001820A4 F3 01 00 98 */ psq_st f24, 152(r1), 0, qr0 -/* 80185148 001820A8 BF 21 00 74 */ stmw r25, 0x74(r1) -/* 8018514C 001820AC FF 00 08 90 */ fmr f24, f1 -/* 80185150 001820B0 7C 79 1B 78 */ mr r25, r3 -/* 80185154 001820B4 7C DC 33 78 */ mr r28, r6 -/* 80185158 001820B8 7C FF 3B 78 */ mr r31, r7 -/* 8018515C 001820BC 7D 1E 43 78 */ mr r30, r8 -/* 80185160 001820C0 7C BB 2B 78 */ mr r27, r5 -/* 80185164 001820C4 7C 9A 23 78 */ mr r26, r4 -/* 80185168 001820C8 7D 3D 4B 78 */ mr r29, r9 -/* 8018516C 001820CC 7F 85 E3 78 */ mr r5, r28 -/* 80185170 001820D0 7F E6 FB 78 */ mr r6, r31 -/* 80185174 001820D4 7F C7 F3 78 */ mr r7, r30 -/* 80185178 001820D8 38 61 00 38 */ addi r3, r1, 0x38 -/* 8018517C 001820DC 4B FF F6 8D */ bl RayStaticIntersection__14CGameCollisionFRC13CStateManagerRC9CVector3fRC9CVector3ffRC15CMaterialFilter -/* 80185180 001820E0 FC 20 C0 90 */ fmr f1, f24 -/* 80185184 001820E4 C3 E1 00 38 */ lfs f31, 0x38(r1) -/* 80185188 001820E8 C3 C1 00 3C */ lfs f30, 0x3c(r1) -/* 8018518C 001820EC 7F 44 D3 78 */ mr r4, r26 -/* 80185190 001820F0 C3 A1 00 40 */ lfs f29, 0x40(r1) -/* 80185194 001820F4 7F 65 DB 78 */ mr r5, r27 -/* 80185198 001820F8 C3 81 00 44 */ lfs f28, 0x44(r1) -/* 8018519C 001820FC 7F 86 E3 78 */ mr r6, r28 -/* 801851A0 00182100 C3 61 00 48 */ lfs f27, 0x48(r1) -/* 801851A4 00182104 7F E7 FB 78 */ mr r7, r31 -/* 801851A8 00182108 C3 41 00 4C */ lfs f26, 0x4c(r1) -/* 801851AC 0018210C 7F C8 F3 78 */ mr r8, r30 -/* 801851B0 00182110 C3 21 00 50 */ lfs f25, 0x50(r1) -/* 801851B4 00182114 7F A9 EB 78 */ mr r9, r29 -/* 801851B8 00182118 C3 01 00 54 */ lfs f24, 0x54(r1) -/* 801851BC 0018211C 38 61 00 08 */ addi r3, r1, 8 -/* 801851C0 00182120 8B E1 00 58 */ lbz r31, 0x58(r1) -/* 801851C4 00182124 83 C1 00 60 */ lwz r30, 0x60(r1) -/* 801851C8 00182128 83 A1 00 64 */ lwz r29, 0x64(r1) -/* 801851CC 0018212C 4B FF FC A1 */ bl "RayDynamicIntersection__14CGameCollisionFRC13CStateManagerR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 801851D0 00182130 88 01 00 28 */ lbz r0, 0x28(r1) -/* 801851D4 00182134 C0 01 00 08 */ lfs f0, 8(r1) -/* 801851D8 00182138 28 00 00 00 */ cmplwi r0, 0 -/* 801851DC 0018213C C0 21 00 0C */ lfs f1, 0xc(r1) -/* 801851E0 00182140 C0 41 00 10 */ lfs f2, 0x10(r1) -/* 801851E4 00182144 C0 61 00 14 */ lfs f3, 0x14(r1) -/* 801851E8 00182148 C0 81 00 18 */ lfs f4, 0x18(r1) -/* 801851EC 0018214C C0 A1 00 1C */ lfs f5, 0x1c(r1) -/* 801851F0 00182150 C0 C1 00 20 */ lfs f6, 0x20(r1) -/* 801851F4 00182154 C0 E1 00 24 */ lfs f7, 0x24(r1) -/* 801851F8 00182158 80 61 00 30 */ lwz r3, 0x30(r1) -/* 801851FC 0018215C 80 81 00 34 */ lwz r4, 0x34(r1) -/* 80185200 00182160 41 82 00 78 */ beq lbl_80185278 -/* 80185204 00182164 28 1F 00 00 */ cmplwi r31, 0 -/* 80185208 00182168 40 82 00 34 */ bne lbl_8018523C -/* 8018520C 0018216C D0 19 00 00 */ stfs f0, 0(r25) -/* 80185210 00182170 D0 39 00 04 */ stfs f1, 4(r25) -/* 80185214 00182174 D0 59 00 08 */ stfs f2, 8(r25) -/* 80185218 00182178 D0 79 00 0C */ stfs f3, 0xc(r25) -/* 8018521C 0018217C D0 99 00 10 */ stfs f4, 0x10(r25) -/* 80185220 00182180 D0 B9 00 14 */ stfs f5, 0x14(r25) -/* 80185224 00182184 D0 D9 00 18 */ stfs f6, 0x18(r25) -/* 80185228 00182188 D0 F9 00 1C */ stfs f7, 0x1c(r25) -/* 8018522C 0018218C 98 19 00 20 */ stb r0, 0x20(r25) -/* 80185230 00182190 90 99 00 2C */ stw r4, 0x2c(r25) -/* 80185234 00182194 90 79 00 28 */ stw r3, 0x28(r25) -/* 80185238 00182198 48 00 00 6C */ b lbl_801852A4 -lbl_8018523C: -/* 8018523C 0018219C FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 80185240 001821A0 4C 41 13 82 */ cror 2, 1, 2 -/* 80185244 001821A4 40 82 00 34 */ bne lbl_80185278 -/* 80185248 001821A8 D0 19 00 00 */ stfs f0, 0(r25) -/* 8018524C 001821AC D0 39 00 04 */ stfs f1, 4(r25) -/* 80185250 001821B0 D0 59 00 08 */ stfs f2, 8(r25) -/* 80185254 001821B4 D0 79 00 0C */ stfs f3, 0xc(r25) -/* 80185258 001821B8 D0 99 00 10 */ stfs f4, 0x10(r25) -/* 8018525C 001821BC D0 B9 00 14 */ stfs f5, 0x14(r25) -/* 80185260 001821C0 D0 D9 00 18 */ stfs f6, 0x18(r25) -/* 80185264 001821C4 D0 F9 00 1C */ stfs f7, 0x1c(r25) -/* 80185268 001821C8 98 19 00 20 */ stb r0, 0x20(r25) -/* 8018526C 001821CC 90 99 00 2C */ stw r4, 0x2c(r25) -/* 80185270 001821D0 90 79 00 28 */ stw r3, 0x28(r25) -/* 80185274 001821D4 48 00 00 30 */ b lbl_801852A4 -lbl_80185278: -/* 80185278 001821D8 D3 F9 00 00 */ stfs f31, 0(r25) -/* 8018527C 001821DC D3 D9 00 04 */ stfs f30, 4(r25) -/* 80185280 001821E0 D3 B9 00 08 */ stfs f29, 8(r25) -/* 80185284 001821E4 D3 99 00 0C */ stfs f28, 0xc(r25) -/* 80185288 001821E8 D3 79 00 10 */ stfs f27, 0x10(r25) -/* 8018528C 001821EC D3 59 00 14 */ stfs f26, 0x14(r25) -/* 80185290 001821F0 D3 39 00 18 */ stfs f25, 0x18(r25) -/* 80185294 001821F4 D3 19 00 1C */ stfs f24, 0x1c(r25) -/* 80185298 001821F8 9B F9 00 20 */ stb r31, 0x20(r25) -/* 8018529C 001821FC 93 B9 00 2C */ stw r29, 0x2c(r25) -/* 801852A0 00182200 93 D9 00 28 */ stw r30, 0x28(r25) -lbl_801852A4: -/* 801852A4 00182204 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 -/* 801852A8 00182208 CB E1 01 00 */ lfd f31, 0x100(r1) -/* 801852AC 0018220C E3 C1 00 F8 */ psq_l f30, 248(r1), 0, qr0 -/* 801852B0 00182210 CB C1 00 F0 */ lfd f30, 0xf0(r1) -/* 801852B4 00182214 E3 A1 00 E8 */ psq_l f29, 232(r1), 0, qr0 -/* 801852B8 00182218 CB A1 00 E0 */ lfd f29, 0xe0(r1) -/* 801852BC 0018221C E3 81 00 D8 */ psq_l f28, 216(r1), 0, qr0 -/* 801852C0 00182220 CB 81 00 D0 */ lfd f28, 0xd0(r1) -/* 801852C4 00182224 E3 61 00 C8 */ psq_l f27, 200(r1), 0, qr0 -/* 801852C8 00182228 CB 61 00 C0 */ lfd f27, 0xc0(r1) -/* 801852CC 0018222C E3 41 00 B8 */ psq_l f26, 184(r1), 0, qr0 -/* 801852D0 00182230 CB 41 00 B0 */ lfd f26, 0xb0(r1) -/* 801852D4 00182234 E3 21 00 A8 */ psq_l f25, 168(r1), 0, qr0 -/* 801852D8 00182238 CB 21 00 A0 */ lfd f25, 0xa0(r1) -/* 801852DC 0018223C E3 01 00 98 */ psq_l f24, 152(r1), 0, qr0 -/* 801852E0 00182240 CB 01 00 90 */ lfd f24, 0x90(r1) -/* 801852E4 00182244 BB 21 00 74 */ lmw r25, 0x74(r1) -/* 801852E8 00182248 80 01 01 14 */ lwz r0, 0x114(r1) -/* 801852EC 0018224C 7C 08 03 A6 */ mtlr r0 -/* 801852F0 00182250 38 21 01 10 */ addi r1, r1, 0x110 -/* 801852F4 00182254 4E 80 00 20 */ blr - -.global NullMovingCollider__14CGameCollisionFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo -NullMovingCollider__14CGameCollisionFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo: -/* 801852F8 00182258 38 60 00 00 */ li r3, 0 -/* 801852FC 0018225C 4E 80 00 20 */ blr - -.global NullBooleanCollider__14CGameCollisionFRC27CInternalCollisionStructure -NullBooleanCollider__14CGameCollisionFRC27CInternalCollisionStructure: -/* 80185300 00182260 38 60 00 00 */ li r3, 0 -/* 80185304 00182264 4E 80 00 20 */ blr - -.global NullCollisionCollider__14CGameCollisionFRC27CInternalCollisionStructureR18CCollisionInfoList -NullCollisionCollider__14CGameCollisionFRC27CInternalCollisionStructureR18CCollisionInfoList: -/* 80185308 00182268 38 60 00 00 */ li r3, 0 -/* 8018530C 0018226C 4E 80 00 20 */ blr - -.global InitCollision__14CGameCollisionFv -InitCollision__14CGameCollisionFv: -/* 80185310 00182270 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80185314 00182274 7C 08 02 A6 */ mflr r0 -/* 80185318 00182278 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018531C 0018227C 48 14 A4 CD */ bl InitBeginTypes__19CCollisionPrimitiveFv -/* 80185320 00182280 38 61 00 08 */ addi r3, r1, 8 -/* 80185324 00182284 48 12 86 91 */ bl GetType__23CCollidableOBBTreeGroupFv -/* 80185328 00182288 38 61 00 08 */ addi r3, r1, 8 -/* 8018532C 0018228C 48 14 A4 0D */ bl InitAddType__19CCollisionPrimitiveFRCQ219CCollisionPrimitive4Type -/* 80185330 00182290 48 14 A1 E9 */ bl InitEndTypes__19CCollisionPrimitiveFv -/* 80185334 00182294 48 14 A1 01 */ bl InitBeginColliders__19CCollisionPrimitiveFv -/* 80185338 00182298 3C 60 80 3D */ lis r3, lbl_803D0690@ha -/* 8018533C 0018229C 3C A0 80 2B */ lis r5, SphereCollide__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructureR18CCollisionInfoList@ha -/* 80185340 001822A0 38 83 06 90 */ addi r4, r3, lbl_803D0690@l -/* 80185344 001822A4 38 65 CF 40 */ addi r3, r5, SphereCollide__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructureR18CCollisionInfoList@l -/* 80185348 001822A8 38 A4 00 12 */ addi r5, r4, 0x12 -/* 8018534C 001822AC 48 14 93 99 */ bl InitAddCollider__19CCollisionPrimitiveFPFRC27CInternalCollisionStructureR18CCollisionInfoList_bPCcPCc -/* 80185350 001822B0 3C 60 80 3D */ lis r3, lbl_803D0690@ha -/* 80185354 001822B4 3C 80 80 2B */ lis r4, AABoxCollide__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructureR18CCollisionInfoList@ha -/* 80185358 001822B8 38 A3 06 90 */ addi r5, r3, lbl_803D0690@l -/* 8018535C 001822BC 38 64 D2 8C */ addi r3, r4, AABoxCollide__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructureR18CCollisionInfoList@l -/* 80185360 001822C0 38 85 00 2A */ addi r4, r5, 0x2a -/* 80185364 001822C4 38 A5 00 12 */ addi r5, r5, 0x12 -/* 80185368 001822C8 48 14 93 7D */ bl InitAddCollider__19CCollisionPrimitiveFPFRC27CInternalCollisionStructureR18CCollisionInfoList_bPCcPCc -/* 8018536C 001822CC 3C 60 80 3D */ lis r3, lbl_803D0690@ha -/* 80185370 001822D0 3C A0 80 2B */ lis r5, SphereCollideBoolean__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructure@ha -/* 80185374 001822D4 38 83 06 90 */ addi r4, r3, lbl_803D0690@l -/* 80185378 001822D8 38 65 CD AC */ addi r3, r5, SphereCollideBoolean__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructure@l -/* 8018537C 001822DC 38 A4 00 12 */ addi r5, r4, 0x12 -/* 80185380 001822E0 48 14 93 35 */ bl InitAddBooleanCollider__19CCollisionPrimitiveFPFRC27CInternalCollisionStructure_bPCcPCc -/* 80185384 001822E4 3C 60 80 3D */ lis r3, lbl_803D0690@ha -/* 80185388 001822E8 3C 80 80 2B */ lis r4, AABoxCollideBoolean__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructure@ha -/* 8018538C 001822EC 38 A3 06 90 */ addi r5, r3, lbl_803D0690@l -/* 80185390 001822F0 38 64 D0 E0 */ addi r3, r4, AABoxCollideBoolean__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructure@l -/* 80185394 001822F4 38 85 00 2A */ addi r4, r5, 0x2a -/* 80185398 001822F8 38 A5 00 12 */ addi r5, r5, 0x12 -/* 8018539C 001822FC 48 14 93 19 */ bl InitAddBooleanCollider__19CCollisionPrimitiveFPFRC27CInternalCollisionStructure_bPCcPCc -/* 801853A0 00182300 3C 60 80 3D */ lis r3, lbl_803D0690@ha -/* 801853A4 00182304 3C 80 80 2B */ lis r4, CollideMovingAABox__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo@ha -/* 801853A8 00182308 38 A3 06 90 */ addi r5, r3, lbl_803D0690@l -/* 801853AC 0018230C 38 64 CA 48 */ addi r3, r4, CollideMovingAABox__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo@l -/* 801853B0 00182310 38 85 00 2A */ addi r4, r5, 0x2a -/* 801853B4 00182314 38 A5 00 12 */ addi r5, r5, 0x12 -/* 801853B8 00182318 48 14 92 CD */ bl InitAddMovingCollider__19CCollisionPrimitiveFPFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo_bPCcPCc -/* 801853BC 0018231C 3C 60 80 3D */ lis r3, lbl_803D0690@ha -/* 801853C0 00182320 3C A0 80 2B */ lis r5, CollideMovingSphere__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo@ha -/* 801853C4 00182324 38 83 06 90 */ addi r4, r3, lbl_803D0690@l -/* 801853C8 00182328 38 65 C7 C4 */ addi r3, r5, CollideMovingSphere__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo@l -/* 801853CC 0018232C 38 A4 00 12 */ addi r5, r4, 0x12 -/* 801853D0 00182330 48 14 92 B5 */ bl InitAddMovingCollider__19CCollisionPrimitiveFPFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo_bPCcPCc -/* 801853D4 00182334 3C 60 80 3D */ lis r3, lbl_803D0690@ha -/* 801853D8 00182338 3C A0 80 18 */ lis r5, NullCollisionCollider__14CGameCollisionFRC27CInternalCollisionStructureR18CCollisionInfoList@ha -/* 801853DC 0018233C 38 83 06 90 */ addi r4, r3, lbl_803D0690@l -/* 801853E0 00182340 38 84 00 12 */ addi r4, r4, 0x12 -/* 801853E4 00182344 38 65 53 08 */ addi r3, r5, NullCollisionCollider__14CGameCollisionFRC27CInternalCollisionStructureR18CCollisionInfoList@l -/* 801853E8 00182348 7C 85 23 78 */ mr r5, r4 -/* 801853EC 0018234C 48 14 92 F9 */ bl InitAddCollider__19CCollisionPrimitiveFPFRC27CInternalCollisionStructureR18CCollisionInfoList_bPCcPCc -/* 801853F0 00182350 3C 60 80 3D */ lis r3, lbl_803D0690@ha -/* 801853F4 00182354 3C A0 80 18 */ lis r5, NullBooleanCollider__14CGameCollisionFRC27CInternalCollisionStructure@ha -/* 801853F8 00182358 38 83 06 90 */ addi r4, r3, lbl_803D0690@l -/* 801853FC 0018235C 38 84 00 12 */ addi r4, r4, 0x12 -/* 80185400 00182360 38 65 53 00 */ addi r3, r5, NullBooleanCollider__14CGameCollisionFRC27CInternalCollisionStructure@l -/* 80185404 00182364 7C 85 23 78 */ mr r5, r4 -/* 80185408 00182368 48 14 92 AD */ bl InitAddBooleanCollider__19CCollisionPrimitiveFPFRC27CInternalCollisionStructure_bPCcPCc -/* 8018540C 0018236C 3C 60 80 3D */ lis r3, lbl_803D0690@ha -/* 80185410 00182370 3C A0 80 18 */ lis r5, NullMovingCollider__14CGameCollisionFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo@ha -/* 80185414 00182374 38 83 06 90 */ addi r4, r3, lbl_803D0690@l -/* 80185418 00182378 38 84 00 12 */ addi r4, r4, 0x12 -/* 8018541C 0018237C 38 65 52 F8 */ addi r3, r5, NullMovingCollider__14CGameCollisionFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo@l -/* 80185420 00182380 7C 85 23 78 */ mr r5, r4 -/* 80185424 00182384 48 14 92 61 */ bl InitAddMovingCollider__19CCollisionPrimitiveFPFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo_bPCcPCc -/* 80185428 00182388 48 14 9F 79 */ bl InitEndColliders__19CCollisionPrimitiveFv -/* 8018542C 0018238C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80185430 00182390 7C 08 03 A6 */ mtlr r0 -/* 80185434 00182394 38 21 00 10 */ addi r1, r1, 0x10 -/* 80185438 00182398 4E 80 00 20 */ blr - -.global sub_8018543c -sub_8018543c: -/* 8018543C 0018239C 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 80185440 001823A0 7C 08 02 A6 */ mflr r0 -/* 80185444 001823A4 90 01 00 44 */ stw r0, 0x44(r1) -/* 80185448 001823A8 BF 21 00 24 */ stmw r25, 0x24(r1) -/* 8018544C 001823AC 7C 7A 1B 78 */ mr r26, r3 -/* 80185450 001823B0 7C 9B 23 78 */ mr r27, r4 -/* 80185454 001823B4 3B A0 00 00 */ li r29, 0 -/* 80185458 001823B8 3B DA 00 04 */ addi r30, r26, 4 -/* 8018545C 001823BC 48 00 01 3C */ b lbl_80185598 -lbl_80185460: -/* 80185460 001823C0 3B FB 00 04 */ addi r31, r27, 4 -/* 80185464 001823C4 3B 80 00 00 */ li r28, 0 -/* 80185468 001823C8 3B 20 00 00 */ li r25, 0 -/* 8018546C 001823CC 48 00 01 00 */ b lbl_8018556C -lbl_80185470: -/* 80185470 001823D0 C0 22 A2 F8 */ lfs f1, lbl_805AC018@sda21(r2) -/* 80185474 001823D4 7F E3 FB 78 */ mr r3, r31 -/* 80185478 001823D8 7F C4 F3 78 */ mr r4, r30 -/* 8018547C 001823DC 48 18 AA E9 */ bl close_enough__FRC9CVector3fRC9CVector3ff -/* 80185480 001823E0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80185484 001823E4 41 82 00 E0 */ beq lbl_80185564 -/* 80185488 001823E8 38 61 00 14 */ addi r3, r1, 0x14 -/* 8018548C 001823EC 38 9F 00 48 */ addi r4, r31, 0x48 -/* 80185490 001823F0 48 18 F3 C1 */ bl AsNormalized__9CVector3fCFv -/* 80185494 001823F4 C0 22 A2 FC */ lfs f1, lbl_805AC01C@sda21(r2) -/* 80185498 001823F8 38 61 00 14 */ addi r3, r1, 0x14 -/* 8018549C 001823FC 38 9E 00 48 */ addi r4, r30, 0x48 -/* 801854A0 00182400 48 18 AA C5 */ bl close_enough__FRC9CVector3fRC9CVector3ff -/* 801854A4 00182404 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801854A8 00182408 41 82 00 BC */ beq lbl_80185564 -/* 801854AC 0018240C C0 3F 00 00 */ lfs f1, 0(r31) -/* 801854B0 00182410 3B 80 00 01 */ li r28, 1 -/* 801854B4 00182414 C0 1E 00 00 */ lfs f0, 0(r30) -/* 801854B8 00182418 C0 7F 00 04 */ lfs f3, 4(r31) -/* 801854BC 0018241C C0 5E 00 04 */ lfs f2, 4(r30) -/* 801854C0 00182420 EC 01 00 2A */ fadds f0, f1, f0 -/* 801854C4 00182424 C0 82 A3 00 */ lfs f4, lbl_805AC020@sda21(r2) -/* 801854C8 00182428 EC 63 10 2A */ fadds f3, f3, f2 -/* 801854CC 0018242C C0 5F 00 08 */ lfs f2, 8(r31) -/* 801854D0 00182430 C0 3E 00 08 */ lfs f1, 8(r30) -/* 801854D4 00182434 EC 04 00 32 */ fmuls f0, f4, f0 -/* 801854D8 00182438 EC 22 08 2A */ fadds f1, f2, f1 -/* 801854DC 0018243C EC 44 00 F2 */ fmuls f2, f4, f3 -/* 801854E0 00182440 D0 1F 00 00 */ stfs f0, 0(r31) -/* 801854E4 00182444 EC 04 00 72 */ fmuls f0, f4, f1 -/* 801854E8 00182448 D0 5F 00 04 */ stfs f2, 4(r31) -/* 801854EC 0018244C D0 1F 00 08 */ stfs f0, 8(r31) -/* 801854F0 00182450 80 BF 00 3C */ lwz r5, 0x3c(r31) -/* 801854F4 00182454 80 1E 00 3C */ lwz r0, 0x3c(r30) -/* 801854F8 00182458 80 9F 00 38 */ lwz r4, 0x38(r31) -/* 801854FC 0018245C 80 7E 00 38 */ lwz r3, 0x38(r30) -/* 80185500 00182460 7C A0 03 78 */ or r0, r5, r0 -/* 80185504 00182464 90 1F 00 3C */ stw r0, 0x3c(r31) -/* 80185508 00182468 7C 80 1B 78 */ or r0, r4, r3 -/* 8018550C 0018246C 90 1F 00 38 */ stw r0, 0x38(r31) -/* 80185510 00182470 80 BF 00 44 */ lwz r5, 0x44(r31) -/* 80185514 00182474 80 1E 00 44 */ lwz r0, 0x44(r30) -/* 80185518 00182478 80 9F 00 40 */ lwz r4, 0x40(r31) -/* 8018551C 0018247C 80 7E 00 40 */ lwz r3, 0x40(r30) -/* 80185520 00182480 7C A0 03 78 */ or r0, r5, r0 -/* 80185524 00182484 90 1F 00 3C */ stw r0, 0x3c(r31) -/* 80185528 00182488 7C 80 1B 78 */ or r0, r4, r3 -/* 8018552C 0018248C 90 1F 00 38 */ stw r0, 0x38(r31) -/* 80185530 00182490 C0 3F 00 48 */ lfs f1, 0x48(r31) -/* 80185534 00182494 C0 1E 00 48 */ lfs f0, 0x48(r30) -/* 80185538 00182498 C0 9F 00 4C */ lfs f4, 0x4c(r31) -/* 8018553C 0018249C C0 7E 00 4C */ lfs f3, 0x4c(r30) -/* 80185540 001824A0 EC 01 00 2A */ fadds f0, f1, f0 -/* 80185544 001824A4 C0 5F 00 50 */ lfs f2, 0x50(r31) -/* 80185548 001824A8 C0 3E 00 50 */ lfs f1, 0x50(r30) -/* 8018554C 001824AC EC 64 18 2A */ fadds f3, f4, f3 -/* 80185550 001824B0 D0 1F 00 48 */ stfs f0, 0x48(r31) -/* 80185554 001824B4 EC 02 08 2A */ fadds f0, f2, f1 -/* 80185558 001824B8 D0 7F 00 4C */ stfs f3, 0x4c(r31) -/* 8018555C 001824BC D0 1F 00 50 */ stfs f0, 0x50(r31) -/* 80185560 001824C0 48 00 00 18 */ b lbl_80185578 -lbl_80185564: -/* 80185564 001824C4 3B FF 00 60 */ addi r31, r31, 0x60 -/* 80185568 001824C8 3B 39 00 01 */ addi r25, r25, 1 -lbl_8018556C: -/* 8018556C 001824CC 80 1B 00 00 */ lwz r0, 0(r27) -/* 80185570 001824D0 7C 19 00 00 */ cmpw r25, r0 -/* 80185574 001824D4 41 80 FE FC */ blt lbl_80185470 -lbl_80185578: -/* 80185578 001824D8 57 80 06 3F */ clrlwi. r0, r28, 0x18 -/* 8018557C 001824DC 40 82 00 14 */ bne lbl_80185590 -/* 80185580 001824E0 7F 63 DB 78 */ mr r3, r27 -/* 80185584 001824E4 7F C4 F3 78 */ mr r4, r30 -/* 80185588 001824E8 38 A0 00 00 */ li r5, 0 -/* 8018558C 001824EC 48 00 00 95 */ bl Add__18CCollisionInfoListFRC14CCollisionInfob -lbl_80185590: -/* 80185590 001824F0 3B DE 00 60 */ addi r30, r30, 0x60 -/* 80185594 001824F4 3B BD 00 01 */ addi r29, r29, 1 -lbl_80185598: -/* 80185598 001824F8 80 1A 00 00 */ lwz r0, 0(r26) -/* 8018559C 001824FC 7C 1D 00 00 */ cmpw r29, r0 -/* 801855A0 00182500 41 80 FE C0 */ blt lbl_80185460 -/* 801855A4 00182504 3B 5B 00 04 */ addi r26, r27, 4 -/* 801855A8 00182508 3B 20 00 00 */ li r25, 0 -/* 801855AC 0018250C 48 00 00 54 */ b lbl_80185600 -lbl_801855B0: -/* 801855B0 00182510 38 61 00 08 */ addi r3, r1, 8 -/* 801855B4 00182514 38 9A 00 48 */ addi r4, r26, 0x48 -/* 801855B8 00182518 48 18 F2 99 */ bl AsNormalized__9CVector3fCFv -/* 801855BC 0018251C C0 01 00 08 */ lfs f0, 8(r1) -/* 801855C0 00182520 3B 39 00 01 */ addi r25, r25, 1 -/* 801855C4 00182524 D0 1A 00 48 */ stfs f0, 0x48(r26) -/* 801855C8 00182528 C0 01 00 0C */ lfs f0, 0xc(r1) -/* 801855CC 0018252C D0 1A 00 4C */ stfs f0, 0x4c(r26) -/* 801855D0 00182530 C0 01 00 10 */ lfs f0, 0x10(r1) -/* 801855D4 00182534 D0 1A 00 50 */ stfs f0, 0x50(r26) -/* 801855D8 00182538 C0 1A 00 48 */ lfs f0, 0x48(r26) -/* 801855DC 0018253C C0 3A 00 4C */ lfs f1, 0x4c(r26) -/* 801855E0 00182540 FC 00 00 50 */ fneg f0, f0 -/* 801855E4 00182544 C0 5A 00 50 */ lfs f2, 0x50(r26) -/* 801855E8 00182548 FC 20 08 50 */ fneg f1, f1 -/* 801855EC 0018254C FC 40 10 50 */ fneg f2, f2 -/* 801855F0 00182550 D0 1A 00 54 */ stfs f0, 0x54(r26) -/* 801855F4 00182554 D0 3A 00 58 */ stfs f1, 0x58(r26) -/* 801855F8 00182558 D0 5A 00 5C */ stfs f2, 0x5c(r26) -/* 801855FC 0018255C 3B 5A 00 60 */ addi r26, r26, 0x60 -lbl_80185600: -/* 80185600 00182560 80 1B 00 00 */ lwz r0, 0(r27) -/* 80185604 00182564 7C 19 00 00 */ cmpw r25, r0 -/* 80185608 00182568 41 80 FF A8 */ blt lbl_801855B0 -/* 8018560C 0018256C BB 21 00 24 */ lmw r25, 0x24(r1) -/* 80185610 00182570 80 01 00 44 */ lwz r0, 0x44(r1) -/* 80185614 00182574 7C 08 03 A6 */ mtlr r0 -/* 80185618 00182578 38 21 00 40 */ addi r1, r1, 0x40 -/* 8018561C 0018257C 4E 80 00 20 */ blr - -.global Add__18CCollisionInfoListFRC14CCollisionInfob -Add__18CCollisionInfoListFRC14CCollisionInfob: -/* 80185620 00182580 94 21 FF 90 */ stwu r1, -0x70(r1) -/* 80185624 00182584 7C 08 02 A6 */ mflr r0 -/* 80185628 00182588 90 01 00 74 */ stw r0, 0x74(r1) -/* 8018562C 0018258C 93 E1 00 6C */ stw r31, 0x6c(r1) -/* 80185630 00182590 7C 7F 1B 78 */ mr r31, r3 -/* 80185634 00182594 80 63 00 00 */ lwz r3, 0(r3) -/* 80185638 00182598 2C 03 00 20 */ cmpwi r3, 0x20 -/* 8018563C 0018259C 41 82 01 D8 */ beq lbl_80185814 -/* 80185640 001825A0 54 A0 06 3F */ clrlwi. r0, r5, 0x18 -/* 80185644 001825A4 40 82 00 E4 */ bne lbl_80185728 -/* 80185648 001825A8 1C 03 00 60 */ mulli r0, r3, 0x60 -/* 8018564C 001825AC 7C BF 02 14 */ add r5, r31, r0 -/* 80185650 001825B0 34 A5 00 04 */ addic. r5, r5, 4 -/* 80185654 001825B4 41 82 00 C4 */ beq lbl_80185718 -/* 80185658 001825B8 C0 04 00 00 */ lfs f0, 0(r4) -/* 8018565C 001825BC D0 05 00 00 */ stfs f0, 0(r5) -/* 80185660 001825C0 C0 04 00 04 */ lfs f0, 4(r4) -/* 80185664 001825C4 D0 05 00 04 */ stfs f0, 4(r5) -/* 80185668 001825C8 C0 04 00 08 */ lfs f0, 8(r4) -/* 8018566C 001825CC D0 05 00 08 */ stfs f0, 8(r5) -/* 80185670 001825D0 C0 04 00 0C */ lfs f0, 0xc(r4) -/* 80185674 001825D4 D0 05 00 0C */ stfs f0, 0xc(r5) -/* 80185678 001825D8 C0 04 00 10 */ lfs f0, 0x10(r4) -/* 8018567C 001825DC D0 05 00 10 */ stfs f0, 0x10(r5) -/* 80185680 001825E0 C0 04 00 14 */ lfs f0, 0x14(r4) -/* 80185684 001825E4 D0 05 00 14 */ stfs f0, 0x14(r5) -/* 80185688 001825E8 C0 04 00 18 */ lfs f0, 0x18(r4) -/* 8018568C 001825EC D0 05 00 18 */ stfs f0, 0x18(r5) -/* 80185690 001825F0 C0 04 00 1C */ lfs f0, 0x1c(r4) -/* 80185694 001825F4 D0 05 00 1C */ stfs f0, 0x1c(r5) -/* 80185698 001825F8 C0 04 00 20 */ lfs f0, 0x20(r4) -/* 8018569C 001825FC D0 05 00 20 */ stfs f0, 0x20(r5) -/* 801856A0 00182600 C0 04 00 24 */ lfs f0, 0x24(r4) -/* 801856A4 00182604 D0 05 00 24 */ stfs f0, 0x24(r5) -/* 801856A8 00182608 C0 04 00 28 */ lfs f0, 0x28(r4) -/* 801856AC 0018260C D0 05 00 28 */ stfs f0, 0x28(r5) -/* 801856B0 00182610 C0 04 00 2C */ lfs f0, 0x2c(r4) -/* 801856B4 00182614 D0 05 00 2C */ stfs f0, 0x2c(r5) -/* 801856B8 00182618 88 04 00 30 */ lbz r0, 0x30(r4) -/* 801856BC 0018261C 98 05 00 30 */ stb r0, 0x30(r5) -/* 801856C0 00182620 88 04 00 31 */ lbz r0, 0x31(r4) -/* 801856C4 00182624 98 05 00 31 */ stb r0, 0x31(r5) -/* 801856C8 00182628 80 04 00 38 */ lwz r0, 0x38(r4) -/* 801856CC 0018262C 80 64 00 3C */ lwz r3, 0x3c(r4) -/* 801856D0 00182630 90 65 00 3C */ stw r3, 0x3c(r5) -/* 801856D4 00182634 90 05 00 38 */ stw r0, 0x38(r5) -/* 801856D8 00182638 80 04 00 40 */ lwz r0, 0x40(r4) -/* 801856DC 0018263C 80 64 00 44 */ lwz r3, 0x44(r4) -/* 801856E0 00182640 90 65 00 44 */ stw r3, 0x44(r5) -/* 801856E4 00182644 90 05 00 40 */ stw r0, 0x40(r5) -/* 801856E8 00182648 C0 04 00 48 */ lfs f0, 0x48(r4) -/* 801856EC 0018264C D0 05 00 48 */ stfs f0, 0x48(r5) -/* 801856F0 00182650 C0 04 00 4C */ lfs f0, 0x4c(r4) -/* 801856F4 00182654 D0 05 00 4C */ stfs f0, 0x4c(r5) -/* 801856F8 00182658 C0 04 00 50 */ lfs f0, 0x50(r4) -/* 801856FC 0018265C D0 05 00 50 */ stfs f0, 0x50(r5) -/* 80185700 00182660 C0 04 00 54 */ lfs f0, 0x54(r4) -/* 80185704 00182664 D0 05 00 54 */ stfs f0, 0x54(r5) -/* 80185708 00182668 C0 04 00 58 */ lfs f0, 0x58(r4) -/* 8018570C 0018266C D0 05 00 58 */ stfs f0, 0x58(r5) -/* 80185710 00182670 C0 04 00 5C */ lfs f0, 0x5c(r4) -/* 80185714 00182674 D0 05 00 5C */ stfs f0, 0x5c(r5) -lbl_80185718: -/* 80185718 00182678 80 7F 00 00 */ lwz r3, 0(r31) -/* 8018571C 0018267C 38 03 00 01 */ addi r0, r3, 1 -/* 80185720 00182680 90 1F 00 00 */ stw r0, 0(r31) -/* 80185724 00182684 48 00 00 F0 */ b lbl_80185814 -lbl_80185728: -/* 80185728 00182688 38 61 00 08 */ addi r3, r1, 8 -/* 8018572C 0018268C 38 A0 00 00 */ li r5, 0 -/* 80185730 00182690 48 14 8A C5 */ bl GetSwapped__14CCollisionInfoCFv -/* 80185734 00182694 80 1F 00 00 */ lwz r0, 0(r31) -/* 80185738 00182698 1C 00 00 60 */ mulli r0, r0, 0x60 -/* 8018573C 0018269C 7C 9F 02 14 */ add r4, r31, r0 -/* 80185740 001826A0 34 84 00 04 */ addic. r4, r4, 4 -/* 80185744 001826A4 41 82 00 C4 */ beq lbl_80185808 -/* 80185748 001826A8 C0 01 00 08 */ lfs f0, 8(r1) -/* 8018574C 001826AC D0 04 00 00 */ stfs f0, 0(r4) -/* 80185750 001826B0 C0 01 00 0C */ lfs f0, 0xc(r1) -/* 80185754 001826B4 D0 04 00 04 */ stfs f0, 4(r4) -/* 80185758 001826B8 C0 01 00 10 */ lfs f0, 0x10(r1) -/* 8018575C 001826BC D0 04 00 08 */ stfs f0, 8(r4) -/* 80185760 001826C0 C0 01 00 14 */ lfs f0, 0x14(r1) -/* 80185764 001826C4 D0 04 00 0C */ stfs f0, 0xc(r4) -/* 80185768 001826C8 C0 01 00 18 */ lfs f0, 0x18(r1) -/* 8018576C 001826CC D0 04 00 10 */ stfs f0, 0x10(r4) -/* 80185770 001826D0 C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 80185774 001826D4 D0 04 00 14 */ stfs f0, 0x14(r4) -/* 80185778 001826D8 C0 01 00 20 */ lfs f0, 0x20(r1) -/* 8018577C 001826DC D0 04 00 18 */ stfs f0, 0x18(r4) -/* 80185780 001826E0 C0 01 00 24 */ lfs f0, 0x24(r1) -/* 80185784 001826E4 D0 04 00 1C */ stfs f0, 0x1c(r4) -/* 80185788 001826E8 C0 01 00 28 */ lfs f0, 0x28(r1) -/* 8018578C 001826EC D0 04 00 20 */ stfs f0, 0x20(r4) -/* 80185790 001826F0 C0 01 00 2C */ lfs f0, 0x2c(r1) -/* 80185794 001826F4 D0 04 00 24 */ stfs f0, 0x24(r4) -/* 80185798 001826F8 C0 01 00 30 */ lfs f0, 0x30(r1) -/* 8018579C 001826FC D0 04 00 28 */ stfs f0, 0x28(r4) -/* 801857A0 00182700 C0 01 00 34 */ lfs f0, 0x34(r1) -/* 801857A4 00182704 D0 04 00 2C */ stfs f0, 0x2c(r4) -/* 801857A8 00182708 88 01 00 38 */ lbz r0, 0x38(r1) -/* 801857AC 0018270C 98 04 00 30 */ stb r0, 0x30(r4) -/* 801857B0 00182710 88 01 00 39 */ lbz r0, 0x39(r1) -/* 801857B4 00182714 98 04 00 31 */ stb r0, 0x31(r4) -/* 801857B8 00182718 80 01 00 40 */ lwz r0, 0x40(r1) -/* 801857BC 0018271C 80 61 00 44 */ lwz r3, 0x44(r1) -/* 801857C0 00182720 90 64 00 3C */ stw r3, 0x3c(r4) -/* 801857C4 00182724 90 04 00 38 */ stw r0, 0x38(r4) -/* 801857C8 00182728 80 01 00 48 */ lwz r0, 0x48(r1) -/* 801857CC 0018272C 80 61 00 4C */ lwz r3, 0x4c(r1) -/* 801857D0 00182730 90 64 00 44 */ stw r3, 0x44(r4) -/* 801857D4 00182734 90 04 00 40 */ stw r0, 0x40(r4) -/* 801857D8 00182738 C0 01 00 50 */ lfs f0, 0x50(r1) -/* 801857DC 0018273C D0 04 00 48 */ stfs f0, 0x48(r4) -/* 801857E0 00182740 C0 01 00 54 */ lfs f0, 0x54(r1) -/* 801857E4 00182744 D0 04 00 4C */ stfs f0, 0x4c(r4) -/* 801857E8 00182748 C0 01 00 58 */ lfs f0, 0x58(r1) -/* 801857EC 0018274C D0 04 00 50 */ stfs f0, 0x50(r4) -/* 801857F0 00182750 C0 01 00 5C */ lfs f0, 0x5c(r1) -/* 801857F4 00182754 D0 04 00 54 */ stfs f0, 0x54(r4) -/* 801857F8 00182758 C0 01 00 60 */ lfs f0, 0x60(r1) -/* 801857FC 0018275C D0 04 00 58 */ stfs f0, 0x58(r4) -/* 80185800 00182760 C0 01 00 64 */ lfs f0, 0x64(r1) -/* 80185804 00182764 D0 04 00 5C */ stfs f0, 0x5c(r4) -lbl_80185808: -/* 80185808 00182768 80 7F 00 00 */ lwz r3, 0(r31) -/* 8018580C 0018276C 38 03 00 01 */ addi r0, r3, 1 -/* 80185810 00182770 90 1F 00 00 */ stw r0, 0(r31) -lbl_80185814: -/* 80185814 00182774 80 01 00 74 */ lwz r0, 0x74(r1) -/* 80185818 00182778 83 E1 00 6C */ lwz r31, 0x6c(r1) -/* 8018581C 0018277C 7C 08 03 A6 */ mtlr r0 -/* 80185820 00182780 38 21 00 70 */ addi r1, r1, 0x70 -/* 80185824 00182784 4E 80 00 20 */ blr - -.global Filter__11CBallFilterCFRC18CCollisionInfoListR18CCollisionInfoList -Filter__11CBallFilterCFRC18CCollisionInfoListR18CCollisionInfoList: -/* 80185828 00182788 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8018582C 0018278C 7C 08 02 A6 */ mflr r0 -/* 80185830 00182790 7C 83 23 78 */ mr r3, r4 -/* 80185834 00182794 7C A4 2B 78 */ mr r4, r5 -/* 80185838 00182798 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018583C 0018279C 48 14 C8 79 */ bl AddAverageToFront__13CollisionUtilFRC18CCollisionInfoListR18CCollisionInfoList -/* 80185840 001827A0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80185844 001827A4 7C 08 03 A6 */ mtlr r0 -/* 80185848 001827A8 38 21 00 10 */ addi r1, r1, 0x10 -/* 8018584C 001827AC 4E 80 00 20 */ blr - -.global Filter__12CAABoxFilterCFRC18CCollisionInfoListR18CCollisionInfoList -Filter__12CAABoxFilterCFRC18CCollisionInfoListR18CCollisionInfoList: -/* 80185850 001827B0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80185854 001827B4 7C 08 02 A6 */ mflr r0 -/* 80185858 001827B8 7C 83 23 78 */ mr r3, r4 -/* 8018585C 001827BC 7C A4 2B 78 */ mr r4, r5 -/* 80185860 001827C0 90 01 00 14 */ stw r0, 0x14(r1) -/* 80185864 001827C4 48 00 00 15 */ bl FilterBoxFloorCollisions__12CAABoxFilterFRC18CCollisionInfoListR18CCollisionInfoList -/* 80185868 001827C8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8018586C 001827CC 7C 08 03 A6 */ mtlr r0 -/* 80185870 001827D0 38 21 00 10 */ addi r1, r1, 0x10 -/* 80185874 001827D4 4E 80 00 20 */ blr - -.global FilterBoxFloorCollisions__12CAABoxFilterFRC18CCollisionInfoListR18CCollisionInfoList -FilterBoxFloorCollisions__12CAABoxFilterFRC18CCollisionInfoListR18CCollisionInfoList: -/* 80185878 001827D8 94 21 F3 D0 */ stwu r1, -0xc30(r1) -/* 8018587C 001827DC 7C 08 02 A6 */ mflr r0 -/* 80185880 001827E0 90 01 0C 34 */ stw r0, 0xc34(r1) -/* 80185884 001827E4 DB E1 0C 20 */ stfd f31, 0xc20(r1) -/* 80185888 001827E8 F3 E1 0C 28 */ psq_st f31, -984(r1), 0, qr0 -/* 8018588C 001827EC 93 E1 0C 1C */ stw r31, 0xc1c(r1) -/* 80185890 001827F0 93 C1 0C 18 */ stw r30, 0xc18(r1) -/* 80185894 001827F4 93 A1 0C 14 */ stw r29, 0xc14(r1) -/* 80185898 001827F8 93 81 0C 10 */ stw r28, 0xc10(r1) -/* 8018589C 001827FC 7C 7E 1B 78 */ mr r30, r3 -/* 801858A0 00182800 C3 E2 A3 08 */ lfs f31, lbl_805AC028@sda21(r2) -/* 801858A4 00182804 80 03 00 00 */ lwz r0, 0(r3) -/* 801858A8 00182808 7C 9F 23 78 */ mr r31, r4 -/* 801858AC 0018280C 38 FE 00 04 */ addi r7, r30, 4 -/* 801858B0 00182810 3C A0 40 00 */ lis r5, 0x4000 -/* 801858B4 00182814 1C 00 00 60 */ mulli r0, r0, 0x60 -/* 801858B8 00182818 38 80 00 00 */ li r4, 0 -/* 801858BC 0018281C 7C DE 02 14 */ add r6, r30, r0 -/* 801858C0 00182820 38 C6 00 04 */ addi r6, r6, 4 -/* 801858C4 00182824 48 00 00 38 */ b lbl_801858FC -lbl_801858C8: -/* 801858C8 00182828 80 07 00 38 */ lwz r0, 0x38(r7) -/* 801858CC 0018282C 80 67 00 3C */ lwz r3, 0x3c(r7) -/* 801858D0 00182830 7C 00 20 38 */ and r0, r0, r4 -/* 801858D4 00182834 7C 63 28 38 */ and r3, r3, r5 -/* 801858D8 00182838 7C 63 22 78 */ xor r3, r3, r4 -/* 801858DC 0018283C 7C 00 22 78 */ xor r0, r0, r4 -/* 801858E0 00182840 7C 60 03 79 */ or. r0, r3, r0 -/* 801858E4 00182844 41 82 00 14 */ beq lbl_801858F8 -/* 801858E8 00182848 C0 07 00 08 */ lfs f0, 8(r7) -/* 801858EC 0018284C FC 00 F8 40 */ fcmpo cr0, f0, f31 -/* 801858F0 00182850 40 80 00 08 */ bge lbl_801858F8 -/* 801858F4 00182854 FF E0 00 90 */ fmr f31, f0 -lbl_801858F8: -/* 801858F8 00182858 38 E7 00 60 */ addi r7, r7, 0x60 -lbl_801858FC: -/* 801858FC 0018285C 7C 07 30 40 */ cmplw r7, r6 -/* 80185900 00182860 40 82 FF C8 */ bne lbl_801858C8 -/* 80185904 00182864 38 00 00 00 */ li r0, 0 -/* 80185908 00182868 3B 9E 00 04 */ addi r28, r30, 4 -/* 8018590C 0018286C 90 01 00 08 */ stw r0, 8(r1) -/* 80185910 00182870 3F A0 80 00 */ lis r29, 0x8000 -/* 80185914 00182874 48 00 00 5C */ b lbl_80185970 -lbl_80185918: -/* 80185918 00182878 80 7C 00 3C */ lwz r3, 0x3c(r28) -/* 8018591C 0018287C 38 80 00 00 */ li r4, 0 -/* 80185920 00182880 80 1C 00 38 */ lwz r0, 0x38(r28) -/* 80185924 00182884 7C 63 E8 38 */ and r3, r3, r29 -/* 80185928 00182888 7C 00 20 38 */ and r0, r0, r4 -/* 8018592C 0018288C 7C 63 22 78 */ xor r3, r3, r4 -/* 80185930 00182890 7C 00 22 78 */ xor r0, r0, r4 -/* 80185934 00182894 7C 60 03 79 */ or. r0, r3, r0 -/* 80185938 00182898 41 82 00 24 */ beq lbl_8018595C -/* 8018593C 0018289C C0 1C 00 08 */ lfs f0, 8(r28) -/* 80185940 001828A0 FC 00 F8 40 */ fcmpo cr0, f0, f31 -/* 80185944 001828A4 40 80 00 28 */ bge lbl_8018596C -/* 80185948 001828A8 7F 84 E3 78 */ mr r4, r28 -/* 8018594C 001828AC 38 61 00 08 */ addi r3, r1, 8 -/* 80185950 001828B0 38 A0 00 00 */ li r5, 0 -/* 80185954 001828B4 4B FF FC CD */ bl Add__18CCollisionInfoListFRC14CCollisionInfob -/* 80185958 001828B8 48 00 00 14 */ b lbl_8018596C -lbl_8018595C: -/* 8018595C 001828BC 7F 84 E3 78 */ mr r4, r28 -/* 80185960 001828C0 38 61 00 08 */ addi r3, r1, 8 -/* 80185964 001828C4 38 A0 00 00 */ li r5, 0 -/* 80185968 001828C8 4B FF FC B9 */ bl Add__18CCollisionInfoListFRC14CCollisionInfob -lbl_8018596C: -/* 8018596C 001828CC 3B 9C 00 60 */ addi r28, r28, 0x60 -lbl_80185970: -/* 80185970 001828D0 80 1E 00 00 */ lwz r0, 0(r30) -/* 80185974 001828D4 1C 00 00 60 */ mulli r0, r0, 0x60 -/* 80185978 001828D8 7C 7E 02 14 */ add r3, r30, r0 -/* 8018597C 001828DC 38 03 00 04 */ addi r0, r3, 4 -/* 80185980 001828E0 7C 1C 00 40 */ cmplw r28, r0 -/* 80185984 001828E4 40 82 FF 94 */ bne lbl_80185918 -/* 80185988 001828E8 7F E4 FB 78 */ mr r4, r31 -/* 8018598C 001828EC 38 61 00 08 */ addi r3, r1, 8 -/* 80185990 001828F0 48 14 C7 25 */ bl AddAverageToFront__13CollisionUtilFRC18CCollisionInfoListR18CCollisionInfoList -/* 80185994 001828F4 80 A1 00 08 */ lwz r5, 8(r1) -/* 80185998 001828F8 38 60 00 00 */ li r3, 0 -/* 8018599C 001828FC 2C 05 00 00 */ cmpwi r5, 0 -/* 801859A0 00182900 40 81 00 40 */ ble lbl_801859E0 -/* 801859A4 00182904 2C 05 00 08 */ cmpwi r5, 8 -/* 801859A8 00182908 38 85 FF F8 */ addi r4, r5, -8 -/* 801859AC 0018290C 40 81 00 20 */ ble lbl_801859CC -/* 801859B0 00182910 38 04 00 07 */ addi r0, r4, 7 -/* 801859B4 00182914 54 00 E8 FE */ srwi r0, r0, 3 -/* 801859B8 00182918 7C 09 03 A6 */ mtctr r0 -/* 801859BC 0018291C 2C 04 00 00 */ cmpwi r4, 0 -/* 801859C0 00182920 40 81 00 0C */ ble lbl_801859CC -lbl_801859C4: -/* 801859C4 00182924 38 63 00 08 */ addi r3, r3, 8 -/* 801859C8 00182928 42 00 FF FC */ bdnz lbl_801859C4 -lbl_801859CC: -/* 801859CC 0018292C 7C 03 28 50 */ subf r0, r3, r5 -/* 801859D0 00182930 7C 09 03 A6 */ mtctr r0 -/* 801859D4 00182934 7C 03 28 00 */ cmpw r3, r5 -/* 801859D8 00182938 40 80 00 08 */ bge lbl_801859E0 -lbl_801859DC: -/* 801859DC 0018293C 42 00 00 00 */ bdnz lbl_801859DC -lbl_801859E0: -/* 801859E0 00182940 38 00 00 00 */ li r0, 0 -/* 801859E4 00182944 90 01 00 08 */ stw r0, 8(r1) -/* 801859E8 00182948 E3 E1 0C 28 */ psq_l f31, -984(r1), 0, qr0 -/* 801859EC 0018294C 80 01 0C 34 */ lwz r0, 0xc34(r1) -/* 801859F0 00182950 CB E1 0C 20 */ lfd f31, 0xc20(r1) -/* 801859F4 00182954 83 E1 0C 1C */ lwz r31, 0xc1c(r1) -/* 801859F8 00182958 83 C1 0C 18 */ lwz r30, 0xc18(r1) -/* 801859FC 0018295C 83 A1 0C 14 */ lwz r29, 0xc14(r1) -/* 80185A00 00182960 83 81 0C 10 */ lwz r28, 0xc10(r1) -/* 80185A04 00182964 7C 08 03 A6 */ mtlr r0 -/* 80185A08 00182968 38 21 0C 30 */ addi r1, r1, 0xc30 -/* 80185A0C 0018296C 4E 80 00 20 */ blr - -.global "MoveObjectAnalytical__15CGroundMovementFR13CStateManagerR13CPhysicsActorfRCQ24rstl32reserved_vector<9TUniqueId,1024>R19CAreaCollisionCacheRfRCQ215CGroundMovement16SMovementOptions" -"MoveObjectAnalytical__15CGroundMovementFR13CStateManagerR13CPhysicsActorfRCQ24rstl32reserved_vector<9TUniqueId,1024>R19CAreaCollisionCacheRfRCQ215CGroundMovement16SMovementOptions": -/* 80185A10 00182970 94 21 FD 00 */ stwu r1, -0x300(r1) -/* 80185A14 00182974 7C 08 02 A6 */ mflr r0 -/* 80185A18 00182978 90 01 03 04 */ stw r0, 0x304(r1) -/* 80185A1C 0018297C DB E1 02 F0 */ stfd f31, 0x2f0(r1) -/* 80185A20 00182980 F3 E1 02 F8 */ psq_st f31, 760(r1), 0, qr0 -/* 80185A24 00182984 DB C1 02 E0 */ stfd f30, 0x2e0(r1) -/* 80185A28 00182988 F3 C1 02 E8 */ psq_st f30, 744(r1), 0, qr0 -/* 80185A2C 0018298C DB A1 02 D0 */ stfd f29, 0x2d0(r1) -/* 80185A30 00182990 F3 A1 02 D8 */ psq_st f29, 728(r1), 0, qr0 -/* 80185A34 00182994 DB 81 02 C0 */ stfd f28, 0x2c0(r1) -/* 80185A38 00182998 F3 81 02 C8 */ psq_st f28, 712(r1), 0, qr0 -/* 80185A3C 0018299C DB 61 02 B0 */ stfd f27, 0x2b0(r1) -/* 80185A40 001829A0 F3 61 02 B8 */ psq_st f27, 696(r1), 0, qr0 -/* 80185A44 001829A4 DB 41 02 A0 */ stfd f26, 0x2a0(r1) -/* 80185A48 001829A8 F3 41 02 A8 */ psq_st f26, 680(r1), 0, qr0 -/* 80185A4C 001829AC DB 21 02 90 */ stfd f25, 0x290(r1) -/* 80185A50 001829B0 F3 21 02 98 */ psq_st f25, 664(r1), 0, qr0 -/* 80185A54 001829B4 BE 01 02 50 */ stmw r16, 0x250(r1) -/* 80185A58 001829B8 3A 60 00 00 */ li r19, 0 -/* 80185A5C 001829BC 7D 3D 4B 78 */ mr r29, r9 -/* 80185A60 001829C0 92 69 00 6C */ stw r19, 0x6c(r9) -/* 80185A64 001829C4 FF 40 08 90 */ fmr f26, f1 -/* 80185A68 001829C8 7D 1C 43 78 */ mr r28, r8 -/* 80185A6C 001829CC 7C 77 1B 78 */ mr r23, r3 -/* 80185A70 001829D0 88 08 00 48 */ lbz r0, 0x48(r8) -/* 80185A74 001829D4 7C 98 23 78 */ mr r24, r4 -/* 80185A78 001829D8 FF 80 D0 90 */ fmr f28, f26 -/* 80185A7C 001829DC 28 00 00 00 */ cmplwi r0, 0 -/* 80185A80 001829E0 7C B9 2B 78 */ mr r25, r5 -/* 80185A84 001829E4 7C DA 33 78 */ mr r26, r6 -/* 80185A88 001829E8 7C FB 3B 78 */ mr r27, r7 -/* 80185A8C 001829EC 7E 74 9B 78 */ mr r20, r19 -/* 80185A90 001829F0 7C 1E 03 78 */ mr r30, r0 -/* 80185A94 001829F4 3B E0 00 00 */ li r31, 0 -/* 80185A98 001829F8 41 82 00 0C */ beq lbl_80185AA4 -/* 80185A9C 001829FC 38 7C 00 3C */ addi r3, r28, 0x3c -/* 80185AA0 00182A00 48 00 00 0C */ b lbl_80185AAC -lbl_80185AA4: -/* 80185AA4 00182A04 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80185AA8 00182A08 38 63 66 A0 */ addi r3, r3, skZero3f@l -lbl_80185AAC: -/* 80185AAC 00182A0C C0 03 00 00 */ lfs f0, 0(r3) -/* 80185AB0 00182A10 3A 41 02 28 */ addi r18, r1, 0x228 -/* 80185AB4 00182A14 C3 A2 A3 10 */ lfs f29, lbl_805AC030@sda21(r2) -/* 80185AB8 00182A18 D0 01 00 D0 */ stfs f0, 0xd0(r1) -/* 80185ABC 00182A1C C3 C2 A3 14 */ lfs f30, lbl_805AC034@sda21(r2) -/* 80185AC0 00182A20 C0 03 00 04 */ lfs f0, 4(r3) -/* 80185AC4 00182A24 C3 E2 A3 18 */ lfs f31, lbl_805AC038@sda21(r2) -/* 80185AC8 00182A28 D0 01 00 D4 */ stfs f0, 0xd4(r1) -/* 80185ACC 00182A2C C0 03 00 08 */ lfs f0, 8(r3) -/* 80185AD0 00182A30 D0 01 00 D8 */ stfs f0, 0xd8(r1) -/* 80185AD4 00182A34 48 00 07 C0 */ b lbl_80186294 -lbl_80185AD8: -/* 80185AD8 00182A38 FF 60 E0 90 */ fmr f27, f28 -/* 80185ADC 00182A3C 7F 24 CB 78 */ mr r4, r25 -/* 80185AE0 00182A40 FC 20 E0 90 */ fmr f1, f28 -/* 80185AE4 00182A44 38 61 01 88 */ addi r3, r1, 0x188 -/* 80185AE8 00182A48 4B F9 5D 21 */ bl PredictMotion_Internal__13CPhysicsActorCFf -/* 80185AEC 00182A4C C1 81 01 88 */ lfs f12, 0x188(r1) -/* 80185AF0 00182A50 38 61 01 BC */ addi r3, r1, 0x1bc -/* 80185AF4 00182A54 C1 61 01 8C */ lfs f11, 0x18c(r1) -/* 80185AF8 00182A58 C1 41 01 90 */ lfs f10, 0x190(r1) -/* 80185AFC 00182A5C C1 21 01 94 */ lfs f9, 0x194(r1) -/* 80185B00 00182A60 C1 01 01 98 */ lfs f8, 0x198(r1) -/* 80185B04 00182A64 C0 E1 01 9C */ lfs f7, 0x19c(r1) -/* 80185B08 00182A68 C0 C1 01 A0 */ lfs f6, 0x1a0(r1) -/* 80185B0C 00182A6C C0 A1 01 A4 */ lfs f5, 0x1a4(r1) -/* 80185B10 00182A70 C0 81 01 A8 */ lfs f4, 0x1a8(r1) -/* 80185B14 00182A74 C0 61 01 AC */ lfs f3, 0x1ac(r1) -/* 80185B18 00182A78 C0 41 01 B0 */ lfs f2, 0x1b0(r1) -/* 80185B1C 00182A7C C0 21 01 B4 */ lfs f1, 0x1b4(r1) -/* 80185B20 00182A80 C0 01 01 B8 */ lfs f0, 0x1b8(r1) -/* 80185B24 00182A84 D1 81 01 BC */ stfs f12, 0x1bc(r1) -/* 80185B28 00182A88 D1 61 01 C0 */ stfs f11, 0x1c0(r1) -/* 80185B2C 00182A8C D1 41 01 C4 */ stfs f10, 0x1c4(r1) -/* 80185B30 00182A90 D1 21 01 C8 */ stfs f9, 0x1c8(r1) -/* 80185B34 00182A94 D1 01 01 CC */ stfs f8, 0x1cc(r1) -/* 80185B38 00182A98 D0 E1 01 D0 */ stfs f7, 0x1d0(r1) -/* 80185B3C 00182A9C D0 C1 01 D4 */ stfs f6, 0x1d4(r1) -/* 80185B40 00182AA0 D0 A1 01 D8 */ stfs f5, 0x1d8(r1) -/* 80185B44 00182AA4 D0 81 01 DC */ stfs f4, 0x1dc(r1) -/* 80185B48 00182AA8 D0 61 01 E0 */ stfs f3, 0x1e0(r1) -/* 80185B4C 00182AAC D0 41 01 E4 */ stfs f2, 0x1e4(r1) -/* 80185B50 00182AB0 D0 21 01 E8 */ stfs f1, 0x1e8(r1) -/* 80185B54 00182AB4 D0 01 01 EC */ stfs f0, 0x1ec(r1) -/* 80185B58 00182AB8 48 18 ED 61 */ bl Magnitude__9CVector3fCFv -/* 80185B5C 00182ABC FF 20 08 90 */ fmr f25, f1 -/* 80185B60 00182AC0 FC 19 F0 40 */ fcmpo cr0, f25, f30 -/* 80185B64 00182AC4 40 81 00 0C */ ble lbl_80185B70 -/* 80185B68 00182AC8 FC 00 C8 90 */ fmr f0, f25 -/* 80185B6C 00182ACC 48 00 00 08 */ b lbl_80185B74 -lbl_80185B70: -/* 80185B70 00182AD0 FC 00 E8 90 */ fmr f0, f29 -lbl_80185B74: -/* 80185B74 00182AD4 EC 7D 00 24 */ fdivs f3, f29, f0 -/* 80185B78 00182AD8 C0 41 01 C0 */ lfs f2, 0x1c0(r1) -/* 80185B7C 00182ADC C0 21 01 C4 */ lfs f1, 0x1c4(r1) -/* 80185B80 00182AE0 7F 24 CB 78 */ mr r4, r25 -/* 80185B84 00182AE4 C0 01 01 BC */ lfs f0, 0x1bc(r1) -/* 80185B88 00182AE8 38 61 01 58 */ addi r3, r1, 0x158 -/* 80185B8C 00182AEC EC 43 00 B2 */ fmuls f2, f3, f2 -/* 80185B90 00182AF0 EC 23 00 72 */ fmuls f1, f3, f1 -/* 80185B94 00182AF4 EC 03 00 32 */ fmuls f0, f3, f0 -/* 80185B98 00182AF8 D0 41 00 C8 */ stfs f2, 0xc8(r1) -/* 80185B9C 00182AFC D0 01 00 C4 */ stfs f0, 0xc4(r1) -/* 80185BA0 00182B00 D0 21 00 CC */ stfs f1, 0xcc(r1) -/* 80185BA4 00182B04 81 99 00 00 */ lwz r12, 0(r25) -/* 80185BA8 00182B08 81 8C 00 70 */ lwz r12, 0x70(r12) -/* 80185BAC 00182B0C 7D 89 03 A6 */ mtctr r12 -/* 80185BB0 00182B10 4E 80 04 21 */ bctrl -/* 80185BB4 00182B14 7F 23 CB 78 */ mr r3, r25 -/* 80185BB8 00182B18 81 99 00 00 */ lwz r12, 0(r25) -/* 80185BBC 00182B1C 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 80185BC0 00182B20 7D 89 03 A6 */ mtctr r12 -/* 80185BC4 00182B24 4E 80 04 21 */ bctrl -/* 80185BC8 00182B28 7C 64 1B 78 */ mr r4, r3 -/* 80185BCC 00182B2C 38 61 00 DC */ addi r3, r1, 0xdc -/* 80185BD0 00182B30 81 84 00 00 */ lwz r12, 0(r4) -/* 80185BD4 00182B34 38 A1 01 58 */ addi r5, r1, 0x158 -/* 80185BD8 00182B38 81 8C 00 14 */ lwz r12, 0x14(r12) -/* 80185BDC 00182B3C 7D 89 03 A6 */ mtctr r12 -/* 80185BE0 00182B40 4E 80 04 21 */ bctrl -/* 80185BE4 00182B44 DB 21 00 20 */ stfd f25, 0x20(r1) -/* 80185BE8 00182B48 38 61 01 F0 */ addi r3, r1, 0x1f0 -/* 80185BEC 00182B4C 38 80 00 00 */ li r4, 0 -/* 80185BF0 00182B50 48 14 85 99 */ bl __ct__14CCollisionInfoFQ214CCollisionInfo8EInvalid -/* 80185BF4 00182B54 C0 1C 00 20 */ lfs f0, 0x20(r28) -/* 80185BF8 00182B58 FC 19 00 40 */ fcmpo cr0, f25, f0 -/* 80185BFC 00182B5C 40 81 00 E4 */ ble lbl_80185CE0 -/* 80185C00 00182B60 A0 CD A3 8C */ lhz r6, lbl_805A8F4C@sda21(r13) -/* 80185C04 00182B64 7F 23 CB 78 */ mr r3, r25 -/* 80185C08 00182B68 80 A1 00 C4 */ lwz r5, 0xc4(r1) -/* 80185C0C 00182B6C 80 81 00 C8 */ lwz r4, 0xc8(r1) -/* 80185C10 00182B70 80 01 00 CC */ lwz r0, 0xcc(r1) -/* 80185C14 00182B74 B0 C1 00 10 */ sth r6, 0x10(r1) -/* 80185C18 00182B78 90 A1 00 70 */ stw r5, 0x70(r1) -/* 80185C1C 00182B7C 90 81 00 74 */ stw r4, 0x74(r1) -/* 80185C20 00182B80 90 01 00 78 */ stw r0, 0x78(r1) -/* 80185C24 00182B84 4B EC DC 99 */ bl GetMaterialFilter__6CActorCFv -/* 80185C28 00182B88 7F 24 CB 78 */ mr r4, r25 -/* 80185C2C 00182B8C 7C 70 1B 78 */ mr r16, r3 -/* 80185C30 00182B90 81 99 00 00 */ lwz r12, 0(r25) -/* 80185C34 00182B94 38 61 01 28 */ addi r3, r1, 0x128 -/* 80185C38 00182B98 81 8C 00 70 */ lwz r12, 0x70(r12) -/* 80185C3C 00182B9C 7D 89 03 A6 */ mtctr r12 -/* 80185C40 00182BA0 4E 80 04 21 */ bctrl -/* 80185C44 00182BA4 7F 23 CB 78 */ mr r3, r25 -/* 80185C48 00182BA8 81 99 00 00 */ lwz r12, 0(r25) -/* 80185C4C 00182BAC 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 80185C50 00182BB0 7D 89 03 A6 */ mtctr r12 -/* 80185C54 00182BB4 4E 80 04 21 */ bctrl -/* 80185C58 00182BB8 38 01 01 F0 */ addi r0, r1, 0x1f0 -/* 80185C5C 00182BBC 7C 65 1B 78 */ mr r5, r3 -/* 80185C60 00182BC0 90 01 00 08 */ stw r0, 8(r1) -/* 80185C64 00182BC4 38 01 00 20 */ addi r0, r1, 0x20 -/* 80185C68 00182BC8 7F 03 C3 78 */ mr r3, r24 -/* 80185C6C 00182BCC 7F 64 DB 78 */ mr r4, r27 -/* 80185C70 00182BD0 90 01 00 0C */ stw r0, 0xc(r1) -/* 80185C74 00182BD4 7E 07 83 78 */ mr r7, r16 -/* 80185C78 00182BD8 7F 48 D3 78 */ mr r8, r26 -/* 80185C7C 00182BDC 38 C1 01 28 */ addi r6, r1, 0x128 -/* 80185C80 00182BE0 39 21 00 70 */ addi r9, r1, 0x70 -/* 80185C84 00182BE4 39 41 00 10 */ addi r10, r1, 0x10 -/* 80185C88 00182BE8 4B FF E6 65 */ bl "DetectCollision_Cached_Moving__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>9CVector3fR9TUniqueIdR14CCollisionInfoRd" -/* 80185C8C 00182BEC A0 61 00 10 */ lhz r3, 0x10(r1) -/* 80185C90 00182BF0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80185C94 00182BF4 7C 03 00 40 */ cmplw r3, r0 -/* 80185C98 00182BF8 41 82 00 38 */ beq lbl_80185CD0 -/* 80185C9C 00182BFC 88 1D 00 04 */ lbz r0, 4(r29) -/* 80185CA0 00182C00 28 00 00 00 */ cmplwi r0, 0 -/* 80185CA4 00182C04 40 82 00 1C */ bne lbl_80185CC0 -/* 80185CA8 00182C08 28 1D 00 00 */ cmplwi r29, 0 -/* 80185CAC 00182C0C 41 82 00 08 */ beq lbl_80185CB4 -/* 80185CB0 00182C10 B0 7D 00 00 */ sth r3, 0(r29) -lbl_80185CB4: -/* 80185CB4 00182C14 38 00 00 01 */ li r0, 1 -/* 80185CB8 00182C18 98 1D 00 04 */ stb r0, 4(r29) -/* 80185CBC 00182C1C 48 00 00 08 */ b lbl_80185CC4 -lbl_80185CC0: -/* 80185CC0 00182C20 B0 7D 00 00 */ sth r3, 0(r29) -lbl_80185CC4: -/* 80185CC4 00182C24 38 7D 00 08 */ addi r3, r29, 8 -/* 80185CC8 00182C28 38 81 01 F0 */ addi r4, r1, 0x1f0 -/* 80185CCC 00182C2C 48 00 06 2D */ bl sub_801862f8 -lbl_80185CD0: -/* 80185CD0 00182C30 C8 01 00 20 */ lfd f0, 0x20(r1) -/* 80185CD4 00182C34 FC 00 C8 24 */ fdiv f0, f0, f25 -/* 80185CD8 00182C38 FC 00 00 18 */ frsp f0, f0 -/* 80185CDC 00182C3C EF 7C 00 32 */ fmuls f27, f28, f0 -lbl_80185CE0: -/* 80185CE0 00182C40 C8 41 00 20 */ lfd f2, 0x20(r1) -/* 80185CE4 00182C44 C0 3C 00 20 */ lfs f1, 0x20(r28) -/* 80185CE8 00182C48 C0 0D 8E D8 */ lfs f0, lbl_805A7A98@sda21(r13) -/* 80185CEC 00182C4C FC 22 08 28 */ fsub f1, f2, f1 -/* 80185CF0 00182C50 FC 20 08 18 */ frsp f1, f1 -/* 80185CF4 00182C54 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80185CF8 00182C58 D0 21 00 18 */ stfs f1, 0x18(r1) -/* 80185CFC 00182C5C 40 80 00 0C */ bge lbl_80185D08 -/* 80185D00 00182C60 38 6D 8E D8 */ addi r3, r13, lbl_805A7A98@sda21 -/* 80185D04 00182C64 48 00 00 08 */ b lbl_80185D0C -lbl_80185D08: -/* 80185D08 00182C68 38 61 00 18 */ addi r3, r1, 0x18 -lbl_80185D0C: -/* 80185D0C 00182C6C C3 23 00 00 */ lfs f25, 0(r3) -/* 80185D10 00182C70 7E 43 93 78 */ mr r3, r18 -/* 80185D14 00182C74 C0 41 02 38 */ lfs f2, 0x238(r1) -/* 80185D18 00182C78 38 81 00 B8 */ addi r4, r1, 0xb8 -/* 80185D1C 00182C7C C0 21 02 3C */ lfs f1, 0x23c(r1) -/* 80185D20 00182C80 C0 01 02 40 */ lfs f0, 0x240(r1) -/* 80185D24 00182C84 D0 41 00 B8 */ stfs f2, 0xb8(r1) -/* 80185D28 00182C88 D0 21 00 BC */ stfs f1, 0xbc(r1) -/* 80185D2C 00182C8C D0 01 00 C0 */ stfs f0, 0xc0(r1) -/* 80185D30 00182C90 4B FF CA D9 */ bl CanBlock__14CGameCollisionFRC13CMaterialListRC9CVector3f -/* 80185D34 00182C94 88 1C 00 19 */ lbz r0, 0x19(r28) -/* 80185D38 00182C98 7C 76 1B 78 */ mr r22, r3 -/* 80185D3C 00182C9C 3A A0 00 01 */ li r21, 1 -/* 80185D40 00182CA0 28 00 00 00 */ cmplwi r0, 0 -/* 80185D44 00182CA4 40 82 00 2C */ bne lbl_80185D70 -/* 80185D48 00182CA8 88 1C 00 1A */ lbz r0, 0x1a(r28) -/* 80185D4C 00182CAC 38 60 00 00 */ li r3, 0 -/* 80185D50 00182CB0 28 00 00 00 */ cmplwi r0, 0 -/* 80185D54 00182CB4 41 82 00 10 */ beq lbl_80185D64 -/* 80185D58 00182CB8 56 C0 06 3F */ clrlwi. r0, r22, 0x18 -/* 80185D5C 00182CBC 40 82 00 08 */ bne lbl_80185D64 -/* 80185D60 00182CC0 7E A3 AB 78 */ mr r3, r21 -lbl_80185D64: -/* 80185D64 00182CC4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80185D68 00182CC8 40 82 00 08 */ bne lbl_80185D70 -/* 80185D6C 00182CCC 3A A0 00 00 */ li r21, 0 -lbl_80185D70: -/* 80185D70 00182CD0 88 01 02 20 */ lbz r0, 0x220(r1) -/* 80185D74 00182CD4 D3 E1 00 1C */ stfs f31, 0x1c(r1) -/* 80185D78 00182CD8 28 00 00 00 */ cmplwi r0, 0 -/* 80185D7C 00182CDC 41 82 01 0C */ beq lbl_80185E88 -/* 80185D80 00182CE0 80 7D 00 6C */ lwz r3, 0x6c(r29) -/* 80185D84 00182CE4 56 C0 06 3F */ clrlwi. r0, r22, 0x18 -/* 80185D88 00182CE8 38 03 00 01 */ addi r0, r3, 1 -/* 80185D8C 00182CEC 90 1D 00 6C */ stw r0, 0x6c(r29) -/* 80185D90 00182CF0 41 82 00 2C */ beq lbl_80185DBC -/* 80185D94 00182CF4 C0 41 02 38 */ lfs f2, 0x238(r1) -/* 80185D98 00182CF8 3C 00 80 00 */ lis r0, 0x8000 -/* 80185D9C 00182CFC C0 21 02 3C */ lfs f1, 0x23c(r1) -/* 80185DA0 00182D00 7E 73 03 78 */ or r19, r19, r0 -/* 80185DA4 00182D04 C0 01 02 40 */ lfs f0, 0x240(r1) -/* 80185DA8 00182D08 3B C0 00 01 */ li r30, 1 -/* 80185DAC 00182D0C D0 41 00 D0 */ stfs f2, 0xd0(r1) -/* 80185DB0 00182D10 D0 21 00 D4 */ stfs f1, 0xd4(r1) -/* 80185DB4 00182D14 D0 01 00 D8 */ stfs f0, 0xd8(r1) -/* 80185DB8 00182D18 48 00 00 0C */ b lbl_80185DC4 -lbl_80185DBC: -/* 80185DBC 00182D1C 3C 00 40 00 */ lis r0, 0x4000 -/* 80185DC0 00182D20 7E 73 03 78 */ or r19, r19, r0 -lbl_80185DC4: -/* 80185DC4 00182D24 56 A0 06 3F */ clrlwi. r0, r21, 0x18 -/* 80185DC8 00182D28 41 82 00 48 */ beq lbl_80185E10 -/* 80185DCC 00182D2C 57 C0 06 3F */ clrlwi. r0, r30, 0x18 -/* 80185DD0 00182D30 41 82 00 38 */ beq lbl_80185E08 -/* 80185DD4 00182D34 38 61 00 D0 */ addi r3, r1, 0xd0 -/* 80185DD8 00182D38 38 81 00 C4 */ addi r4, r1, 0xc4 -/* 80185DDC 00182D3C 38 A1 00 B8 */ addi r5, r1, 0xb8 -/* 80185DE0 00182D40 38 C1 00 1C */ addi r6, r1, 0x1c -/* 80185DE4 00182D44 48 00 06 D9 */ bl RemoveNormalComponent__15CGroundMovementFRC9CVector3fRC9CVector3fR9CVector3fRf -/* 80185DE8 00182D48 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80185DEC 00182D4C 40 82 00 10 */ bne lbl_80185DFC -/* 80185DF0 00182D50 38 61 00 B8 */ addi r3, r1, 0xb8 -/* 80185DF4 00182D54 48 00 08 81 */ bl RemovePositiveZComponentFromNormal__FR9CVector3f -/* 80185DF8 00182D58 48 00 00 18 */ b lbl_80185E10 -lbl_80185DFC: -/* 80185DFC 00182D5C 38 61 00 B8 */ addi r3, r1, 0xb8 -/* 80185E00 00182D60 48 18 EA F9 */ bl Normalize__9CVector3fFv -/* 80185E04 00182D64 48 00 00 0C */ b lbl_80185E10 -lbl_80185E08: -/* 80185E08 00182D68 38 61 00 B8 */ addi r3, r1, 0xb8 -/* 80185E0C 00182D6C 48 00 08 69 */ bl RemovePositiveZComponentFromNormal__FR9CVector3f -lbl_80185E10: -/* 80185E10 00182D70 FC 20 D8 90 */ fmr f1, f27 -/* 80185E14 00182D74 7F 24 CB 78 */ mr r4, r25 -/* 80185E18 00182D78 38 61 00 F4 */ addi r3, r1, 0xf4 -/* 80185E1C 00182D7C 4B F9 59 ED */ bl PredictMotion_Internal__13CPhysicsActorCFf -/* 80185E20 00182D80 82 01 00 F4 */ lwz r16, 0xf4(r1) -/* 80185E24 00182D84 82 21 00 F8 */ lwz r17, 0xf8(r1) -/* 80185E28 00182D88 81 81 00 FC */ lwz r12, 0xfc(r1) -/* 80185E2C 00182D8C 81 61 01 00 */ lwz r11, 0x100(r1) -/* 80185E30 00182D90 81 41 01 04 */ lwz r10, 0x104(r1) -/* 80185E34 00182D94 81 21 01 08 */ lwz r9, 0x108(r1) -/* 80185E38 00182D98 81 01 01 0C */ lwz r8, 0x10c(r1) -/* 80185E3C 00182D9C 80 E1 01 10 */ lwz r7, 0x110(r1) -/* 80185E40 00182DA0 80 C1 01 14 */ lwz r6, 0x114(r1) -/* 80185E44 00182DA4 80 A1 01 18 */ lwz r5, 0x118(r1) -/* 80185E48 00182DA8 80 81 01 1C */ lwz r4, 0x11c(r1) -/* 80185E4C 00182DAC 80 61 01 20 */ lwz r3, 0x120(r1) -/* 80185E50 00182DB0 80 01 01 24 */ lwz r0, 0x124(r1) -/* 80185E54 00182DB4 92 01 01 BC */ stw r16, 0x1bc(r1) -/* 80185E58 00182DB8 92 21 01 C0 */ stw r17, 0x1c0(r1) -/* 80185E5C 00182DBC 91 81 01 C4 */ stw r12, 0x1c4(r1) -/* 80185E60 00182DC0 91 61 01 C8 */ stw r11, 0x1c8(r1) -/* 80185E64 00182DC4 91 41 01 CC */ stw r10, 0x1cc(r1) -/* 80185E68 00182DC8 91 21 01 D0 */ stw r9, 0x1d0(r1) -/* 80185E6C 00182DCC 91 01 01 D4 */ stw r8, 0x1d4(r1) -/* 80185E70 00182DD0 90 E1 01 D8 */ stw r7, 0x1d8(r1) -/* 80185E74 00182DD4 90 C1 01 DC */ stw r6, 0x1dc(r1) -/* 80185E78 00182DD8 90 A1 01 E0 */ stw r5, 0x1e0(r1) -/* 80185E7C 00182DDC 90 81 01 E4 */ stw r4, 0x1e4(r1) -/* 80185E80 00182DE0 90 61 01 E8 */ stw r3, 0x1e8(r1) -/* 80185E84 00182DE4 90 01 01 EC */ stw r0, 0x1ec(r1) -lbl_80185E88: -/* 80185E88 00182DE8 C0 41 00 C8 */ lfs f2, 0xc8(r1) -/* 80185E8C 00182DEC 7F 23 CB 78 */ mr r3, r25 -/* 80185E90 00182DF0 C0 21 00 CC */ lfs f1, 0xcc(r1) -/* 80185E94 00182DF4 38 81 01 BC */ addi r4, r1, 0x1bc -/* 80185E98 00182DF8 C0 01 00 C4 */ lfs f0, 0xc4(r1) -/* 80185E9C 00182DFC EC 59 00 B2 */ fmuls f2, f25, f2 -/* 80185EA0 00182E00 EC 39 00 72 */ fmuls f1, f25, f1 -/* 80185EA4 00182E04 EC 19 00 32 */ fmuls f0, f25, f0 -/* 80185EA8 00182E08 D0 41 01 C0 */ stfs f2, 0x1c0(r1) -/* 80185EAC 00182E0C D0 01 01 BC */ stfs f0, 0x1bc(r1) -/* 80185EB0 00182E10 D0 21 01 C4 */ stfs f1, 0x1c4(r1) -/* 80185EB4 00182E14 4B F9 56 61 */ bl AddMotionState__13CPhysicsActorFRC12CMotionState -/* 80185EB8 00182E18 88 01 02 20 */ lbz r0, 0x220(r1) -/* 80185EBC 00182E1C 28 00 00 00 */ cmplwi r0, 0 -/* 80185EC0 00182E20 41 82 03 6C */ beq lbl_8018622C -/* 80185EC4 00182E24 C0 19 01 38 */ lfs f0, 0x138(r25) -/* 80185EC8 00182E28 38 61 00 AC */ addi r3, r1, 0xac -/* 80185ECC 00182E2C D0 01 00 AC */ stfs f0, 0xac(r1) -/* 80185ED0 00182E30 C0 19 01 3C */ lfs f0, 0x13c(r25) -/* 80185ED4 00182E34 D0 01 00 B0 */ stfs f0, 0xb0(r1) -/* 80185ED8 00182E38 C0 19 01 40 */ lfs f0, 0x140(r25) -/* 80185EDC 00182E3C D0 01 00 B4 */ stfs f0, 0xb4(r1) -/* 80185EE0 00182E40 48 18 E8 19 */ bl CanBeNormalized__9CVector3fCFv -/* 80185EE4 00182E44 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80185EE8 00182E48 41 82 00 34 */ beq lbl_80185F1C -/* 80185EEC 00182E4C 38 61 00 64 */ addi r3, r1, 0x64 -/* 80185EF0 00182E50 38 81 00 AC */ addi r4, r1, 0xac -/* 80185EF4 00182E54 48 18 E9 5D */ bl AsNormalized__9CVector3fCFv -/* 80185EF8 00182E58 C0 3C 00 24 */ lfs f1, 0x24(r28) -/* 80185EFC 00182E5C 38 61 00 58 */ addi r3, r1, 0x58 -/* 80185F00 00182E60 C0 5C 00 28 */ lfs f2, 0x28(r28) -/* 80185F04 00182E64 38 81 00 AC */ addi r4, r1, 0xac -/* 80185F08 00182E68 38 A1 00 64 */ addi r5, r1, 0x64 -/* 80185F0C 00182E6C 38 C1 00 B8 */ addi r6, r1, 0xb8 -/* 80185F10 00182E70 48 00 20 FD */ bl CollisionDamping__15CGroundMovementFRC9CVector3fRC9CVector3fRC9CVector3fff -/* 80185F14 00182E74 38 61 00 58 */ addi r3, r1, 0x58 -/* 80185F18 00182E78 48 00 00 0C */ b lbl_80185F24 -lbl_80185F1C: -/* 80185F1C 00182E7C 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80185F20 00182E80 38 63 66 A0 */ addi r3, r3, skZero3f@l -lbl_80185F24: -/* 80185F24 00182E84 C0 03 00 00 */ lfs f0, 0(r3) -/* 80185F28 00182E88 56 C0 06 3F */ clrlwi. r0, r22, 0x18 -/* 80185F2C 00182E8C D0 01 00 A0 */ stfs f0, 0xa0(r1) -/* 80185F30 00182E90 C0 03 00 04 */ lfs f0, 4(r3) -/* 80185F34 00182E94 D0 01 00 A4 */ stfs f0, 0xa4(r1) -/* 80185F38 00182E98 C0 03 00 08 */ lfs f0, 8(r3) -/* 80185F3C 00182E9C D0 01 00 A8 */ stfs f0, 0xa8(r1) -/* 80185F40 00182EA0 41 82 00 0C */ beq lbl_80185F4C -/* 80185F44 00182EA4 C0 7C 00 2C */ lfs f3, 0x2c(r28) -/* 80185F48 00182EA8 48 00 00 14 */ b lbl_80185F5C -lbl_80185F4C: -/* 80185F4C 00182EAC C0 5C 00 34 */ lfs f2, 0x34(r28) -/* 80185F50 00182EB0 C0 21 00 1C */ lfs f1, 0x1c(r1) -/* 80185F54 00182EB4 C0 1C 00 30 */ lfs f0, 0x30(r28) -/* 80185F58 00182EB8 EC 62 00 7A */ fmadds f3, f2, f1, f0 -lbl_80185F5C: -/* 80185F5C 00182EBC C0 C1 00 BC */ lfs f6, 0xbc(r1) -/* 80185F60 00182EC0 C0 01 00 A4 */ lfs f0, 0xa4(r1) -/* 80185F64 00182EC4 C0 A1 00 B8 */ lfs f5, 0xb8(r1) -/* 80185F68 00182EC8 EC 06 00 32 */ fmuls f0, f6, f0 -/* 80185F6C 00182ECC C0 21 00 A0 */ lfs f1, 0xa0(r1) -/* 80185F70 00182ED0 C0 E1 00 C0 */ lfs f7, 0xc0(r1) -/* 80185F74 00182ED4 C0 41 00 A8 */ lfs f2, 0xa8(r1) -/* 80185F78 00182ED8 EC 05 00 7A */ fmadds f0, f5, f1, f0 -/* 80185F7C 00182EDC EC 07 00 BA */ fmadds f0, f7, f2, f0 -/* 80185F80 00182EE0 FC 00 18 40 */ fcmpo cr0, f0, f3 -/* 80185F84 00182EE4 40 80 00 38 */ bge lbl_80185FBC -/* 80185F88 00182EE8 EC 03 00 28 */ fsubs f0, f3, f0 -/* 80185F8C 00182EEC C0 81 00 A0 */ lfs f4, 0xa0(r1) -/* 80185F90 00182EF0 C0 61 00 A4 */ lfs f3, 0xa4(r1) -/* 80185F94 00182EF4 C0 21 00 A8 */ lfs f1, 0xa8(r1) -/* 80185F98 00182EF8 EC A0 01 72 */ fmuls f5, f0, f5 -/* 80185F9C 00182EFC EC 40 01 B2 */ fmuls f2, f0, f6 -/* 80185FA0 00182F00 EC 00 01 F2 */ fmuls f0, f0, f7 -/* 80185FA4 00182F04 EC 84 28 2A */ fadds f4, f4, f5 -/* 80185FA8 00182F08 EC 43 10 2A */ fadds f2, f3, f2 -/* 80185FAC 00182F0C EC 01 00 2A */ fadds f0, f1, f0 -/* 80185FB0 00182F10 D0 81 00 A0 */ stfs f4, 0xa0(r1) -/* 80185FB4 00182F14 D0 41 00 A4 */ stfs f2, 0xa4(r1) -/* 80185FB8 00182F18 D0 01 00 A8 */ stfs f0, 0xa8(r1) -lbl_80185FBC: -/* 80185FBC 00182F1C 56 A0 06 3F */ clrlwi. r0, r21, 0x18 -/* 80185FC0 00182F20 41 82 00 28 */ beq lbl_80185FE8 -/* 80185FC4 00182F24 57 C0 06 3F */ clrlwi. r0, r30, 0x18 -/* 80185FC8 00182F28 41 82 00 20 */ beq lbl_80185FE8 -/* 80185FCC 00182F2C 38 61 00 D0 */ addi r3, r1, 0xd0 -/* 80185FD0 00182F30 38 81 00 A0 */ addi r4, r1, 0xa0 -/* 80185FD4 00182F34 48 00 04 71 */ bl RemoveNormalComponent__15CGroundMovementFRC9CVector3fR9CVector3f -/* 80185FD8 00182F38 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80185FDC 00182F3C 40 82 00 0C */ bne lbl_80185FE8 -/* 80185FE0 00182F40 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) -/* 80185FE4 00182F44 D0 01 00 A8 */ stfs f0, 0xa8(r1) -lbl_80185FE8: -/* 80185FE8 00182F48 C0 61 00 A8 */ lfs f3, 0xa8(r1) -/* 80185FEC 00182F4C C0 1C 00 38 */ lfs f0, 0x38(r28) -/* 80185FF0 00182F50 FC 03 00 40 */ fcmpo cr0, f3, f0 -/* 80185FF4 00182F54 40 81 00 28 */ ble lbl_8018601C -/* 80185FF8 00182F58 EC 80 18 24 */ fdivs f4, f0, f3 -/* 80185FFC 00182F5C C0 21 00 A0 */ lfs f1, 0xa0(r1) -/* 80186000 00182F60 C0 01 00 A4 */ lfs f0, 0xa4(r1) -/* 80186004 00182F64 EC 41 01 32 */ fmuls f2, f1, f4 -/* 80186008 00182F68 EC 20 01 32 */ fmuls f1, f0, f4 -/* 8018600C 00182F6C EC 03 01 32 */ fmuls f0, f3, f4 -/* 80186010 00182F70 D0 41 00 A0 */ stfs f2, 0xa0(r1) -/* 80186014 00182F74 D0 21 00 A4 */ stfs f1, 0xa4(r1) -/* 80186018 00182F78 D0 01 00 A8 */ stfs f0, 0xa8(r1) -lbl_8018601C: -/* 8018601C 00182F7C 88 1C 00 18 */ lbz r0, 0x18(r28) -/* 80186020 00182F80 28 00 00 00 */ cmplwi r0, 0 -/* 80186024 00182F84 41 82 00 FC */ beq lbl_80186120 -/* 80186028 00182F88 C0 19 01 5C */ lfs f0, 0x15c(r25) -/* 8018602C 00182F8C 38 61 00 94 */ addi r3, r1, 0x94 -/* 80186030 00182F90 D0 01 00 94 */ stfs f0, 0x94(r1) -/* 80186034 00182F94 C0 19 01 60 */ lfs f0, 0x160(r25) -/* 80186038 00182F98 D0 01 00 98 */ stfs f0, 0x98(r1) -/* 8018603C 00182F9C C0 19 01 64 */ lfs f0, 0x164(r25) -/* 80186040 00182FA0 D0 01 00 9C */ stfs f0, 0x9c(r1) -/* 80186044 00182FA4 48 18 E6 B5 */ bl CanBeNormalized__9CVector3fCFv -/* 80186048 00182FA8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8018604C 00182FAC 41 82 00 58 */ beq lbl_801860A4 -/* 80186050 00182FB0 38 61 00 40 */ addi r3, r1, 0x40 -/* 80186054 00182FB4 38 81 00 94 */ addi r4, r1, 0x94 -/* 80186058 00182FB8 48 18 E7 F9 */ bl AsNormalized__9CVector3fCFv -/* 8018605C 00182FBC C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) -/* 80186060 00182FC0 38 61 00 4C */ addi r3, r1, 0x4c -/* 80186064 00182FC4 C0 42 A3 10 */ lfs f2, lbl_805AC030@sda21(r2) -/* 80186068 00182FC8 38 81 00 94 */ addi r4, r1, 0x94 -/* 8018606C 00182FCC 38 A1 00 40 */ addi r5, r1, 0x40 -/* 80186070 00182FD0 38 C1 00 B8 */ addi r6, r1, 0xb8 -/* 80186074 00182FD4 48 00 1F 99 */ bl CollisionDamping__15CGroundMovementFRC9CVector3fRC9CVector3fRC9CVector3fff -/* 80186078 00182FD8 C0 41 00 4C */ lfs f2, 0x4c(r1) -/* 8018607C 00182FDC C0 21 00 50 */ lfs f1, 0x50(r1) -/* 80186080 00182FE0 C0 01 00 54 */ lfs f0, 0x54(r1) -/* 80186084 00182FE4 D0 41 00 94 */ stfs f2, 0x94(r1) -/* 80186088 00182FE8 D0 21 00 98 */ stfs f1, 0x98(r1) -/* 8018608C 00182FEC D0 01 00 9C */ stfs f0, 0x9c(r1) -/* 80186090 00182FF0 D0 59 01 5C */ stfs f2, 0x15c(r25) -/* 80186094 00182FF4 C0 01 00 98 */ lfs f0, 0x98(r1) -/* 80186098 00182FF8 D0 19 01 60 */ stfs f0, 0x160(r25) -/* 8018609C 00182FFC C0 01 00 9C */ lfs f0, 0x9c(r1) -/* 801860A0 00183000 D0 19 01 64 */ stfs f0, 0x164(r25) -lbl_801860A4: -/* 801860A4 00183004 C0 19 01 50 */ lfs f0, 0x150(r25) -/* 801860A8 00183008 38 61 00 88 */ addi r3, r1, 0x88 -/* 801860AC 0018300C D0 01 00 88 */ stfs f0, 0x88(r1) -/* 801860B0 00183010 C0 19 01 54 */ lfs f0, 0x154(r25) -/* 801860B4 00183014 D0 01 00 8C */ stfs f0, 0x8c(r1) -/* 801860B8 00183018 C0 19 01 58 */ lfs f0, 0x158(r25) -/* 801860BC 0018301C D0 01 00 90 */ stfs f0, 0x90(r1) -/* 801860C0 00183020 48 18 E6 39 */ bl CanBeNormalized__9CVector3fCFv -/* 801860C4 00183024 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801860C8 00183028 41 82 00 58 */ beq lbl_80186120 -/* 801860CC 0018302C 38 61 00 28 */ addi r3, r1, 0x28 -/* 801860D0 00183030 38 81 00 88 */ addi r4, r1, 0x88 -/* 801860D4 00183034 48 18 E7 7D */ bl AsNormalized__9CVector3fCFv -/* 801860D8 00183038 C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) -/* 801860DC 0018303C 38 61 00 34 */ addi r3, r1, 0x34 -/* 801860E0 00183040 C0 42 A3 10 */ lfs f2, lbl_805AC030@sda21(r2) -/* 801860E4 00183044 38 81 00 88 */ addi r4, r1, 0x88 -/* 801860E8 00183048 38 A1 00 28 */ addi r5, r1, 0x28 -/* 801860EC 0018304C 38 C1 00 B8 */ addi r6, r1, 0xb8 -/* 801860F0 00183050 48 00 1F 1D */ bl CollisionDamping__15CGroundMovementFRC9CVector3fRC9CVector3fRC9CVector3fff -/* 801860F4 00183054 C0 41 00 34 */ lfs f2, 0x34(r1) -/* 801860F8 00183058 C0 21 00 38 */ lfs f1, 0x38(r1) -/* 801860FC 0018305C C0 01 00 3C */ lfs f0, 0x3c(r1) -/* 80186100 00183060 D0 41 00 88 */ stfs f2, 0x88(r1) -/* 80186104 00183064 D0 21 00 8C */ stfs f1, 0x8c(r1) -/* 80186108 00183068 D0 01 00 90 */ stfs f0, 0x90(r1) -/* 8018610C 0018306C D0 59 01 50 */ stfs f2, 0x150(r25) -/* 80186110 00183070 C0 01 00 8C */ lfs f0, 0x8c(r1) -/* 80186114 00183074 D0 19 01 54 */ stfs f0, 0x154(r25) -/* 80186118 00183078 C0 01 00 90 */ lfs f0, 0x90(r1) -/* 8018611C 0018307C D0 19 01 58 */ stfs f0, 0x158(r25) -lbl_80186120: -/* 80186120 00183080 88 1C 00 00 */ lbz r0, 0(r28) -/* 80186124 00183084 28 00 00 00 */ cmplwi r0, 0 -/* 80186128 00183088 41 82 00 F4 */ beq lbl_8018621C -/* 8018612C 0018308C 56 C0 06 3F */ clrlwi. r0, r22, 0x18 -/* 80186130 00183090 40 82 00 EC */ bne lbl_8018621C -/* 80186134 00183094 C0 21 02 40 */ lfs f1, 0x240(r1) -/* 80186138 00183098 C0 02 A3 1C */ lfs f0, lbl_805AC03C@sda21(r2) -/* 8018613C 0018309C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80186140 001830A0 40 80 00 20 */ bge lbl_80186160 -/* 80186144 001830A4 C0 21 00 A8 */ lfs f1, 0xa8(r1) -/* 80186148 001830A8 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) -/* 8018614C 001830AC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80186150 001830B0 40 81 00 10 */ ble lbl_80186160 -/* 80186154 001830B4 C0 02 A3 20 */ lfs f0, lbl_805AC040@sda21(r2) -/* 80186158 001830B8 EC 00 00 72 */ fmuls f0, f0, f1 -/* 8018615C 001830BC D0 01 00 A8 */ stfs f0, 0xa8(r1) -lbl_80186160: -/* 80186160 001830C0 C0 21 02 40 */ lfs f1, 0x240(r1) -/* 80186164 001830C4 C0 1C 00 10 */ lfs f0, 0x10(r28) -/* 80186168 001830C8 FC 20 0A 10 */ fabs f1, f1 -/* 8018616C 001830CC FC 40 08 18 */ frsp f2, f1 -/* 80186170 001830D0 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 80186174 001830D4 40 81 00 14 */ ble lbl_80186188 -/* 80186178 001830D8 C0 21 00 A8 */ lfs f1, 0xa8(r1) -/* 8018617C 001830DC C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) -/* 80186180 001830E0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80186184 001830E4 41 80 00 10 */ blt lbl_80186194 -lbl_80186188: -/* 80186188 001830E8 C0 1C 00 0C */ lfs f0, 0xc(r28) -/* 8018618C 001830EC FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 80186190 001830F0 40 81 00 8C */ ble lbl_8018621C -lbl_80186194: -/* 80186194 001830F4 C0 3C 00 04 */ lfs f1, 4(r28) -/* 80186198 001830F8 C0 1C 00 08 */ lfs f0, 8(r28) -/* 8018619C 001830FC EC 21 00 B2 */ fmuls f1, f1, f2 -/* 801861A0 00183100 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801861A4 00183104 D0 21 00 14 */ stfs f1, 0x14(r1) -/* 801861A8 00183108 40 80 00 0C */ bge lbl_801861B4 -/* 801861AC 0018310C 38 9C 00 08 */ addi r4, r28, 8 -/* 801861B0 00183110 48 00 00 08 */ b lbl_801861B8 -lbl_801861B4: -/* 801861B4 00183114 38 81 00 14 */ addi r4, r1, 0x14 -lbl_801861B8: -/* 801861B8 00183118 7F 23 CB 78 */ mr r3, r25 -/* 801861BC 0018311C C3 24 00 00 */ lfs f25, 0(r4) -/* 801861C0 00183120 81 99 00 00 */ lwz r12, 0(r25) -/* 801861C4 00183124 81 8C 00 80 */ lwz r12, 0x80(r12) -/* 801861C8 00183128 7D 89 03 A6 */ mtctr r12 -/* 801861CC 0018312C 4E 80 04 21 */ bctrl -/* 801861D0 00183130 C0 62 A3 10 */ lfs f3, lbl_805AC030@sda21(r2) -/* 801861D4 00183134 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) -/* 801861D8 00183138 EC 43 C8 2A */ fadds f2, f3, f25 -/* 801861DC 0018313C D0 19 01 5C */ stfs f0, 0x15c(r25) -/* 801861E0 00183140 FC 40 10 50 */ fneg f2, f2 -/* 801861E4 00183144 D0 19 01 60 */ stfs f0, 0x160(r25) -/* 801861E8 00183148 EC 02 00 72 */ fmuls f0, f2, f1 -/* 801861EC 0018314C D0 19 01 64 */ stfs f0, 0x164(r25) -/* 801861F0 00183150 C0 1C 00 14 */ lfs f0, 0x14(r28) -/* 801861F4 00183154 C0 41 00 A0 */ lfs f2, 0xa0(r1) -/* 801861F8 00183158 EC 63 00 28 */ fsubs f3, f3, f0 -/* 801861FC 0018315C C0 21 00 A4 */ lfs f1, 0xa4(r1) -/* 80186200 00183160 C0 01 00 A8 */ lfs f0, 0xa8(r1) -/* 80186204 00183164 EC 42 00 F2 */ fmuls f2, f2, f3 -/* 80186208 00183168 EC 21 00 F2 */ fmuls f1, f1, f3 -/* 8018620C 0018316C EC 00 00 F2 */ fmuls f0, f0, f3 -/* 80186210 00183170 D0 41 00 A0 */ stfs f2, 0xa0(r1) -/* 80186214 00183174 D0 21 00 A4 */ stfs f1, 0xa4(r1) -/* 80186218 00183178 D0 01 00 A8 */ stfs f0, 0xa8(r1) -lbl_8018621C: -/* 8018621C 0018317C 7F 23 CB 78 */ mr r3, r25 -/* 80186220 00183180 38 81 00 A0 */ addi r4, r1, 0xa0 -/* 80186224 00183184 4B F9 4A 7D */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -/* 80186228 00183188 48 00 00 50 */ b lbl_80186278 -lbl_8018622C: -/* 8018622C 0018318C C0 59 01 38 */ lfs f2, 0x138(r25) -/* 80186230 00183190 C0 7C 00 38 */ lfs f3, 0x38(r28) -/* 80186234 00183194 D0 41 00 7C */ stfs f2, 0x7c(r1) -/* 80186238 00183198 C0 39 01 3C */ lfs f1, 0x13c(r25) -/* 8018623C 0018319C D0 21 00 80 */ stfs f1, 0x80(r1) -/* 80186240 001831A0 C0 19 01 40 */ lfs f0, 0x140(r25) -/* 80186244 001831A4 FC 00 18 40 */ fcmpo cr0, f0, f3 -/* 80186248 001831A8 D0 01 00 84 */ stfs f0, 0x84(r1) -/* 8018624C 001831AC 40 81 00 20 */ ble lbl_8018626C -/* 80186250 001831B0 EC 63 00 24 */ fdivs f3, f3, f0 -/* 80186254 001831B4 EC 42 00 F2 */ fmuls f2, f2, f3 -/* 80186258 001831B8 EC 21 00 F2 */ fmuls f1, f1, f3 -/* 8018625C 001831BC EC 00 00 F2 */ fmuls f0, f0, f3 -/* 80186260 001831C0 D0 41 00 7C */ stfs f2, 0x7c(r1) -/* 80186264 001831C4 D0 21 00 80 */ stfs f1, 0x80(r1) -/* 80186268 001831C8 D0 01 00 84 */ stfs f0, 0x84(r1) -lbl_8018626C: -/* 8018626C 001831CC 7F 23 CB 78 */ mr r3, r25 -/* 80186270 001831D0 38 81 00 7C */ addi r4, r1, 0x7c -/* 80186274 001831D4 4B F9 4A 2D */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -lbl_80186278: -/* 80186278 001831D8 7F 23 CB 78 */ mr r3, r25 -/* 8018627C 001831DC 4B F9 4F A5 */ bl ClearImpulses__13CPhysicsActorFv -/* 80186280 001831E0 80 1C 00 1C */ lwz r0, 0x1c(r28) -/* 80186284 001831E4 3B FF 00 01 */ addi r31, r31, 1 -/* 80186288 001831E8 EF 9C D8 28 */ fsubs f28, f28, f27 -/* 8018628C 001831EC 7C 1F 00 40 */ cmplw r31, r0 -/* 80186290 001831F0 40 80 00 0C */ bge lbl_8018629C -lbl_80186294: -/* 80186294 001831F4 FC 1C F8 40 */ fcmpo cr0, f28, f31 -/* 80186298 001831F8 41 81 F8 40 */ bgt lbl_80185AD8 -lbl_8018629C: -/* 8018629C 001831FC EC 1A E0 28 */ fsubs f0, f26, f28 -/* 801862A0 00183200 D0 1D 00 70 */ stfs f0, 0x70(r29) -/* 801862A4 00183204 92 77 00 04 */ stw r19, 4(r23) -/* 801862A8 00183208 92 97 00 00 */ stw r20, 0(r23) -/* 801862AC 0018320C E3 E1 02 F8 */ psq_l f31, 760(r1), 0, qr0 -/* 801862B0 00183210 CB E1 02 F0 */ lfd f31, 0x2f0(r1) -/* 801862B4 00183214 E3 C1 02 E8 */ psq_l f30, 744(r1), 0, qr0 -/* 801862B8 00183218 CB C1 02 E0 */ lfd f30, 0x2e0(r1) -/* 801862BC 0018321C E3 A1 02 D8 */ psq_l f29, 728(r1), 0, qr0 -/* 801862C0 00183220 CB A1 02 D0 */ lfd f29, 0x2d0(r1) -/* 801862C4 00183224 E3 81 02 C8 */ psq_l f28, 712(r1), 0, qr0 -/* 801862C8 00183228 CB 81 02 C0 */ lfd f28, 0x2c0(r1) -/* 801862CC 0018322C E3 61 02 B8 */ psq_l f27, 696(r1), 0, qr0 -/* 801862D0 00183230 CB 61 02 B0 */ lfd f27, 0x2b0(r1) -/* 801862D4 00183234 E3 41 02 A8 */ psq_l f26, 680(r1), 0, qr0 -/* 801862D8 00183238 CB 41 02 A0 */ lfd f26, 0x2a0(r1) -/* 801862DC 0018323C E3 21 02 98 */ psq_l f25, 664(r1), 0, qr0 -/* 801862E0 00183240 CB 21 02 90 */ lfd f25, 0x290(r1) -/* 801862E4 00183244 BA 01 02 50 */ lmw r16, 0x250(r1) -/* 801862E8 00183248 80 01 03 04 */ lwz r0, 0x304(r1) -/* 801862EC 0018324C 7C 08 03 A6 */ mtlr r0 -/* 801862F0 00183250 38 21 03 00 */ addi r1, r1, 0x300 -/* 801862F4 00183254 4E 80 00 20 */ blr - -.global sub_801862f8 -sub_801862f8: -/* 801862F8 00183258 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801862FC 0018325C 7C 08 02 A6 */ mflr r0 -/* 80186300 00183260 90 01 00 14 */ stw r0, 0x14(r1) -/* 80186304 00183264 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80186308 00183268 7C 7F 1B 78 */ mr r31, r3 -/* 8018630C 0018326C 48 00 00 1D */ bl sub_80186328 -/* 80186310 00183270 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80186314 00183274 7F E3 FB 78 */ mr r3, r31 -/* 80186318 00183278 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8018631C 0018327C 7C 08 03 A6 */ mtlr r0 -/* 80186320 00183280 38 21 00 10 */ addi r1, r1, 0x10 -/* 80186324 00183284 4E 80 00 20 */ blr - -.global sub_80186328 -sub_80186328: -/* 80186328 00183288 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8018632C 0018328C 7C 08 02 A6 */ mflr r0 -/* 80186330 00183290 90 01 00 14 */ stw r0, 0x14(r1) -/* 80186334 00183294 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80186338 00183298 7C 7F 1B 78 */ mr r31, r3 -/* 8018633C 0018329C 88 03 00 60 */ lbz r0, 0x60(r3) -/* 80186340 001832A0 28 00 00 00 */ cmplwi r0, 0 -/* 80186344 001832A4 40 82 00 14 */ bne lbl_80186358 -/* 80186348 001832A8 48 00 00 D5 */ bl sub_8018641c -/* 8018634C 001832AC 38 00 00 01 */ li r0, 1 -/* 80186350 001832B0 98 1F 00 60 */ stb r0, 0x60(r31) -/* 80186354 001832B4 48 00 00 B4 */ b lbl_80186408 -lbl_80186358: -/* 80186358 001832B8 80 64 00 00 */ lwz r3, 0(r4) -/* 8018635C 001832BC 80 04 00 04 */ lwz r0, 4(r4) -/* 80186360 001832C0 90 7F 00 00 */ stw r3, 0(r31) -/* 80186364 001832C4 90 1F 00 04 */ stw r0, 4(r31) -/* 80186368 001832C8 80 04 00 08 */ lwz r0, 8(r4) -/* 8018636C 001832CC 90 1F 00 08 */ stw r0, 8(r31) -/* 80186370 001832D0 80 64 00 0C */ lwz r3, 0xc(r4) -/* 80186374 001832D4 80 04 00 10 */ lwz r0, 0x10(r4) -/* 80186378 001832D8 90 7F 00 0C */ stw r3, 0xc(r31) -/* 8018637C 001832DC 90 1F 00 10 */ stw r0, 0x10(r31) -/* 80186380 001832E0 80 04 00 14 */ lwz r0, 0x14(r4) -/* 80186384 001832E4 90 1F 00 14 */ stw r0, 0x14(r31) -/* 80186388 001832E8 80 64 00 18 */ lwz r3, 0x18(r4) -/* 8018638C 001832EC 80 04 00 1C */ lwz r0, 0x1c(r4) -/* 80186390 001832F0 90 7F 00 18 */ stw r3, 0x18(r31) -/* 80186394 001832F4 90 1F 00 1C */ stw r0, 0x1c(r31) -/* 80186398 001832F8 80 04 00 20 */ lwz r0, 0x20(r4) -/* 8018639C 001832FC 90 1F 00 20 */ stw r0, 0x20(r31) -/* 801863A0 00183300 80 64 00 24 */ lwz r3, 0x24(r4) -/* 801863A4 00183304 80 04 00 28 */ lwz r0, 0x28(r4) -/* 801863A8 00183308 90 7F 00 24 */ stw r3, 0x24(r31) -/* 801863AC 0018330C 90 1F 00 28 */ stw r0, 0x28(r31) -/* 801863B0 00183310 80 04 00 2C */ lwz r0, 0x2c(r4) -/* 801863B4 00183314 90 1F 00 2C */ stw r0, 0x2c(r31) -/* 801863B8 00183318 88 04 00 30 */ lbz r0, 0x30(r4) -/* 801863BC 0018331C 98 1F 00 30 */ stb r0, 0x30(r31) -/* 801863C0 00183320 88 04 00 31 */ lbz r0, 0x31(r4) -/* 801863C4 00183324 98 1F 00 31 */ stb r0, 0x31(r31) -/* 801863C8 00183328 C8 04 00 38 */ lfd f0, 0x38(r4) -/* 801863CC 0018332C D8 1F 00 38 */ stfd f0, 0x38(r31) -/* 801863D0 00183330 C8 04 00 40 */ lfd f0, 0x40(r4) -/* 801863D4 00183334 D8 1F 00 40 */ stfd f0, 0x40(r31) -/* 801863D8 00183338 80 64 00 48 */ lwz r3, 0x48(r4) -/* 801863DC 0018333C 80 04 00 4C */ lwz r0, 0x4c(r4) -/* 801863E0 00183340 90 7F 00 48 */ stw r3, 0x48(r31) -/* 801863E4 00183344 90 1F 00 4C */ stw r0, 0x4c(r31) -/* 801863E8 00183348 80 04 00 50 */ lwz r0, 0x50(r4) -/* 801863EC 0018334C 90 1F 00 50 */ stw r0, 0x50(r31) -/* 801863F0 00183350 80 64 00 54 */ lwz r3, 0x54(r4) -/* 801863F4 00183354 80 04 00 58 */ lwz r0, 0x58(r4) -/* 801863F8 00183358 90 7F 00 54 */ stw r3, 0x54(r31) -/* 801863FC 0018335C 90 1F 00 58 */ stw r0, 0x58(r31) -/* 80186400 00183360 80 04 00 5C */ lwz r0, 0x5c(r4) -/* 80186404 00183364 90 1F 00 5C */ stw r0, 0x5c(r31) -lbl_80186408: -/* 80186408 00183368 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8018640C 0018336C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80186410 00183370 7C 08 03 A6 */ mtlr r0 -/* 80186414 00183374 38 21 00 10 */ addi r1, r1, 0x10 -/* 80186418 00183378 4E 80 00 20 */ blr - -.global sub_8018641c -sub_8018641c: -/* 8018641C 0018337C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80186420 00183380 7C 08 02 A6 */ mflr r0 -/* 80186424 00183384 28 03 00 00 */ cmplwi r3, 0 -/* 80186428 00183388 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018642C 0018338C 41 82 00 08 */ beq lbl_80186434 -/* 80186430 00183390 4B F6 B0 71 */ bl __ct__14CCollisionInfoFRC14CCollisionInfo -lbl_80186434: -/* 80186434 00183394 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80186438 00183398 7C 08 03 A6 */ mtlr r0 -/* 8018643C 0018339C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80186440 001833A0 4E 80 00 20 */ blr - -.global RemoveNormalComponent__15CGroundMovementFRC9CVector3fR9CVector3f -RemoveNormalComponent__15CGroundMovementFRC9CVector3fR9CVector3f: -/* 80186444 001833A4 C0 43 00 04 */ lfs f2, 4(r3) -/* 80186448 001833A8 C0 04 00 04 */ lfs f0, 4(r4) -/* 8018644C 001833AC C0 63 00 00 */ lfs f3, 0(r3) -/* 80186450 001833B0 EC 02 00 32 */ fmuls f0, f2, f0 -/* 80186454 001833B4 C0 24 00 00 */ lfs f1, 0(r4) -/* 80186458 001833B8 C0 A3 00 08 */ lfs f5, 8(r3) -/* 8018645C 001833BC C0 84 00 08 */ lfs f4, 8(r4) -/* 80186460 001833C0 EC 23 00 7A */ fmadds f1, f3, f1, f0 -/* 80186464 001833C4 C0 02 A3 24 */ lfs f0, lbl_805AC044@sda21(r2) -/* 80186468 001833C8 EC 85 09 3A */ fmadds f4, f5, f4, f1 -/* 8018646C 001833CC FC 20 22 10 */ fabs f1, f4 -/* 80186470 001833D0 FC 20 08 18 */ frsp f1, f1 -/* 80186474 001833D4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80186478 001833D8 40 81 00 0C */ ble lbl_80186484 -/* 8018647C 001833DC 38 60 00 00 */ li r3, 0 -/* 80186480 001833E0 4E 80 00 20 */ blr -lbl_80186484: -/* 80186484 001833E4 EC 04 00 F2 */ fmuls f0, f4, f3 -/* 80186488 001833E8 C0 24 00 00 */ lfs f1, 0(r4) -/* 8018648C 001833EC EC 64 00 B2 */ fmuls f3, f4, f2 -/* 80186490 001833F0 38 60 00 01 */ li r3, 1 -/* 80186494 001833F4 EC 44 01 72 */ fmuls f2, f4, f5 -/* 80186498 001833F8 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8018649C 001833FC D0 04 00 00 */ stfs f0, 0(r4) -/* 801864A0 00183400 C0 04 00 04 */ lfs f0, 4(r4) -/* 801864A4 00183404 EC 00 18 28 */ fsubs f0, f0, f3 -/* 801864A8 00183408 D0 04 00 04 */ stfs f0, 4(r4) -/* 801864AC 0018340C C0 04 00 08 */ lfs f0, 8(r4) -/* 801864B0 00183410 EC 00 10 28 */ fsubs f0, f0, f2 -/* 801864B4 00183414 D0 04 00 08 */ stfs f0, 8(r4) -/* 801864B8 00183418 4E 80 00 20 */ blr - -.global RemoveNormalComponent__15CGroundMovementFRC9CVector3fRC9CVector3fR9CVector3fRf -RemoveNormalComponent__15CGroundMovementFRC9CVector3fRC9CVector3fR9CVector3fRf: -/* 801864BC 0018341C 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 801864C0 00183420 7C 08 02 A6 */ mflr r0 -/* 801864C4 00183424 90 01 00 64 */ stw r0, 0x64(r1) -/* 801864C8 00183428 DB E1 00 50 */ stfd f31, 0x50(r1) -/* 801864CC 0018342C F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 -/* 801864D0 00183430 DB C1 00 40 */ stfd f30, 0x40(r1) -/* 801864D4 00183434 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 -/* 801864D8 00183438 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 801864DC 0018343C 93 C1 00 38 */ stw r30, 0x38(r1) -/* 801864E0 00183440 93 A1 00 34 */ stw r29, 0x34(r1) -/* 801864E4 00183444 93 81 00 30 */ stw r28, 0x30(r1) -/* 801864E8 00183448 7C 7C 1B 78 */ mr r28, r3 -/* 801864EC 0018344C 7C BE 2B 78 */ mr r30, r5 -/* 801864F0 00183450 C0 43 00 04 */ lfs f2, 4(r3) -/* 801864F4 00183454 7C 9D 23 78 */ mr r29, r4 -/* 801864F8 00183458 C0 85 00 04 */ lfs f4, 4(r5) -/* 801864FC 0018345C 7C DF 33 78 */ mr r31, r6 -/* 80186500 00183460 C0 C3 00 00 */ lfs f6, 0(r3) -/* 80186504 00183464 EC 02 01 32 */ fmuls f0, f2, f4 -/* 80186508 00183468 C0 A5 00 00 */ lfs f5, 0(r5) -/* 8018650C 0018346C C0 63 00 08 */ lfs f3, 8(r3) -/* 80186510 00183470 C0 E5 00 08 */ lfs f7, 8(r5) -/* 80186514 00183474 EC 26 01 7A */ fmadds f1, f6, f5, f0 -/* 80186518 00183478 C0 02 A3 24 */ lfs f0, lbl_805AC044@sda21(r2) -/* 8018651C 0018347C EF E3 09 FA */ fmadds f31, f3, f7, f1 -/* 80186520 00183480 FC 20 FA 10 */ fabs f1, f31 -/* 80186524 00183484 FC 20 08 18 */ frsp f1, f1 -/* 80186528 00183488 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8018652C 0018348C 40 81 00 0C */ ble lbl_80186538 -/* 80186530 00183490 38 60 00 00 */ li r3, 0 -/* 80186534 00183494 48 00 01 10 */ b lbl_80186644 -lbl_80186538: -/* 80186538 00183498 C0 1D 00 04 */ lfs f0, 4(r29) -/* 8018653C 0018349C ED 3F 00 B2 */ fmuls f9, f31, f2 -/* 80186540 001834A0 ED 1F 00 F2 */ fmuls f8, f31, f3 -/* 80186544 001834A4 C0 5D 00 00 */ lfs f2, 0(r29) -/* 80186548 001834A8 EC 00 01 32 */ fmuls f0, f0, f4 -/* 8018654C 001834AC C0 7D 00 08 */ lfs f3, 8(r29) -/* 80186550 001834B0 EC 3F 01 B2 */ fmuls f1, f31, f6 -/* 80186554 001834B4 EC C4 48 28 */ fsubs f6, f4, f9 -/* 80186558 001834B8 EC 42 01 7A */ fmadds f2, f2, f5, f0 -/* 8018655C 001834BC D1 21 00 0C */ stfs f9, 0xc(r1) -/* 80186560 001834C0 EC 87 40 28 */ fsubs f4, f7, f8 -/* 80186564 001834C4 38 61 00 20 */ addi r3, r1, 0x20 -/* 80186568 001834C8 EC 05 08 28 */ fsubs f0, f5, f1 -/* 8018656C 001834CC EF C3 11 FA */ fmadds f30, f3, f7, f2 -/* 80186570 001834D0 D0 21 00 08 */ stfs f1, 8(r1) -/* 80186574 001834D4 38 81 00 14 */ addi r4, r1, 0x14 -/* 80186578 001834D8 D1 01 00 10 */ stfs f8, 0x10(r1) -/* 8018657C 001834DC D0 01 00 14 */ stfs f0, 0x14(r1) -/* 80186580 001834E0 D0 C1 00 18 */ stfs f6, 0x18(r1) -/* 80186584 001834E4 D0 81 00 1C */ stfs f4, 0x1c(r1) -/* 80186588 001834E8 48 18 E2 C9 */ bl AsNormalized__9CVector3fCFv -/* 8018658C 001834EC C0 5D 00 04 */ lfs f2, 4(r29) -/* 80186590 001834F0 C0 21 00 24 */ lfs f1, 0x24(r1) -/* 80186594 001834F4 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) -/* 80186598 001834F8 EC 22 00 72 */ fmuls f1, f2, f1 -/* 8018659C 001834FC C0 7D 00 00 */ lfs f3, 0(r29) -/* 801865A0 00183500 C0 41 00 20 */ lfs f2, 0x20(r1) -/* 801865A4 00183504 FC 1E 00 40 */ fcmpo cr0, f30, f0 -/* 801865A8 00183508 C0 9D 00 08 */ lfs f4, 8(r29) -/* 801865AC 0018350C EC 23 08 BA */ fmadds f1, f3, f2, f1 -/* 801865B0 00183510 C0 41 00 28 */ lfs f2, 0x28(r1) -/* 801865B4 00183514 EC 44 08 BA */ fmadds f2, f4, f2, f1 -/* 801865B8 00183518 40 81 00 14 */ ble lbl_801865CC -/* 801865BC 0018351C FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 801865C0 00183520 40 80 00 0C */ bge lbl_801865CC -/* 801865C4 00183524 38 60 00 00 */ li r3, 0 -/* 801865C8 00183528 48 00 00 7C */ b lbl_80186644 -lbl_801865CC: -/* 801865CC 0018352C FC 20 F2 10 */ fabs f1, f30 -/* 801865D0 00183530 C0 02 A3 28 */ lfs f0, lbl_805AC048@sda21(r2) -/* 801865D4 00183534 FC 20 08 18 */ frsp f1, f1 -/* 801865D8 00183538 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801865DC 0018353C 40 81 00 24 */ ble lbl_80186600 -/* 801865E0 00183540 EC 22 F0 24 */ fdivs f1, f2, f30 -/* 801865E4 00183544 C0 02 A3 2C */ lfs f0, lbl_805AC04C@sda21(r2) -/* 801865E8 00183548 FC 20 0A 10 */ fabs f1, f1 -/* 801865EC 0018354C FC 20 08 18 */ frsp f1, f1 -/* 801865F0 00183550 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801865F4 00183554 40 81 00 0C */ ble lbl_80186600 -/* 801865F8 00183558 38 60 00 00 */ li r3, 0 -/* 801865FC 0018355C 48 00 00 48 */ b lbl_80186644 -lbl_80186600: -/* 80186600 00183560 C0 1C 00 00 */ lfs f0, 0(r28) -/* 80186604 00183564 38 60 00 01 */ li r3, 1 -/* 80186608 00183568 C0 7C 00 04 */ lfs f3, 4(r28) -/* 8018660C 0018356C EC 1F 00 32 */ fmuls f0, f31, f0 -/* 80186610 00183570 C0 3E 00 00 */ lfs f1, 0(r30) -/* 80186614 00183574 C0 5C 00 08 */ lfs f2, 8(r28) -/* 80186618 00183578 EC 7F 00 F2 */ fmuls f3, f31, f3 -/* 8018661C 0018357C EC 01 00 28 */ fsubs f0, f1, f0 -/* 80186620 00183580 EC 3F 00 B2 */ fmuls f1, f31, f2 -/* 80186624 00183584 D0 1E 00 00 */ stfs f0, 0(r30) -/* 80186628 00183588 C0 1E 00 04 */ lfs f0, 4(r30) -/* 8018662C 0018358C EC 00 18 28 */ fsubs f0, f0, f3 -/* 80186630 00183590 D0 1E 00 04 */ stfs f0, 4(r30) -/* 80186634 00183594 C0 1E 00 08 */ lfs f0, 8(r30) -/* 80186638 00183598 EC 00 08 28 */ fsubs f0, f0, f1 -/* 8018663C 0018359C D0 1E 00 08 */ stfs f0, 8(r30) -/* 80186640 001835A0 D3 FF 00 00 */ stfs f31, 0(r31) -lbl_80186644: -/* 80186644 001835A4 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 -/* 80186648 001835A8 CB E1 00 50 */ lfd f31, 0x50(r1) -/* 8018664C 001835AC E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 -/* 80186650 001835B0 CB C1 00 40 */ lfd f30, 0x40(r1) -/* 80186654 001835B4 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 80186658 001835B8 83 C1 00 38 */ lwz r30, 0x38(r1) -/* 8018665C 001835BC 83 A1 00 34 */ lwz r29, 0x34(r1) -/* 80186660 001835C0 80 01 00 64 */ lwz r0, 0x64(r1) -/* 80186664 001835C4 83 81 00 30 */ lwz r28, 0x30(r1) -/* 80186668 001835C8 7C 08 03 A6 */ mtlr r0 -/* 8018666C 001835CC 38 21 00 60 */ addi r1, r1, 0x60 -/* 80186670 001835D0 4E 80 00 20 */ blr - -.global RemovePositiveZComponentFromNormal__FR9CVector3f -RemovePositiveZComponentFromNormal__FR9CVector3f: -/* 80186674 001835D4 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80186678 001835D8 7C 08 02 A6 */ mflr r0 -/* 8018667C 001835DC C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) -/* 80186680 001835E0 90 01 00 34 */ stw r0, 0x34(r1) -/* 80186684 001835E4 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 80186688 001835E8 7C 7F 1B 78 */ mr r31, r3 -/* 8018668C 001835EC C0 43 00 08 */ lfs f2, 8(r3) -/* 80186690 001835F0 FC 02 08 40 */ fcmpo cr0, f2, f1 -/* 80186694 001835F4 40 81 00 50 */ ble lbl_801866E4 -/* 80186698 001835F8 C0 02 A3 24 */ lfs f0, lbl_805AC044@sda21(r2) -/* 8018669C 001835FC FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 801866A0 00183600 40 80 00 44 */ bge lbl_801866E4 -/* 801866A4 00183604 C0 5F 00 04 */ lfs f2, 4(r31) -/* 801866A8 00183608 38 61 00 14 */ addi r3, r1, 0x14 -/* 801866AC 0018360C C0 1F 00 00 */ lfs f0, 0(r31) -/* 801866B0 00183610 38 81 00 08 */ addi r4, r1, 8 -/* 801866B4 00183614 D0 01 00 08 */ stfs f0, 8(r1) -/* 801866B8 00183618 D0 41 00 0C */ stfs f2, 0xc(r1) -/* 801866BC 0018361C D0 21 00 10 */ stfs f1, 0x10(r1) -/* 801866C0 00183620 48 18 E1 91 */ bl AsNormalized__9CVector3fCFv -/* 801866C4 00183624 C0 01 00 14 */ lfs f0, 0x14(r1) -/* 801866C8 00183628 38 60 00 01 */ li r3, 1 -/* 801866CC 0018362C D0 1F 00 00 */ stfs f0, 0(r31) -/* 801866D0 00183630 C0 01 00 18 */ lfs f0, 0x18(r1) -/* 801866D4 00183634 D0 1F 00 04 */ stfs f0, 4(r31) -/* 801866D8 00183638 C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 801866DC 0018363C D0 1F 00 08 */ stfs f0, 8(r31) -/* 801866E0 00183640 48 00 00 08 */ b lbl_801866E8 -lbl_801866E4: -/* 801866E4 00183644 38 60 00 00 */ li r3, 0 -lbl_801866E8: -/* 801866E8 00183648 80 01 00 34 */ lwz r0, 0x34(r1) -/* 801866EC 0018364C 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 801866F0 00183650 7C 08 03 A6 */ mtlr r0 -/* 801866F4 00183654 38 21 00 30 */ addi r1, r1, 0x30 -/* 801866F8 00183658 4E 80 00 20 */ blr - -.global "MoveGroundCollider_New__15CGroundMovementFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>" -"MoveGroundCollider_New__15CGroundMovementFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>": -/* 801866FC 0018365C 94 21 C5 60 */ stwu r1, -0x3aa0(r1) -/* 80186700 00183660 7C 08 02 A6 */ mflr r0 -/* 80186704 00183664 90 01 3A A4 */ stw r0, 0x3aa4(r1) -/* 80186708 00183668 38 00 3A 98 */ li r0, 0x3a98 -/* 8018670C 0018366C DB E1 3A 90 */ stfd f31, 0x3a90(r1) -/* 80186710 00183670 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 -/* 80186714 00183674 38 00 3A 88 */ li r0, 0x3a88 -/* 80186718 00183678 DB C1 3A 80 */ stfd f30, 0x3a80(r1) -/* 8018671C 0018367C 13 C1 00 0E */ psq_stx f30, r1, r0, 0, qr0 -/* 80186720 00183680 38 00 3A 78 */ li r0, 0x3a78 -/* 80186724 00183684 DB A1 3A 70 */ stfd f29, 0x3a70(r1) -/* 80186728 00183688 13 A1 00 0E */ psq_stx f29, r1, r0, 0, qr0 -/* 8018672C 0018368C 38 00 3A 68 */ li r0, 0x3a68 -/* 80186730 00183690 DB 81 3A 60 */ stfd f28, 0x3a60(r1) -/* 80186734 00183694 13 81 00 0E */ psq_stx f28, r1, r0, 0, qr0 -/* 80186738 00183698 38 00 3A 58 */ li r0, 0x3a58 -/* 8018673C 0018369C DB 61 3A 50 */ stfd f27, 0x3a50(r1) -/* 80186740 001836A0 13 61 00 0E */ psq_stx f27, r1, r0, 0, qr0 -/* 80186744 001836A4 38 00 3A 48 */ li r0, 0x3a48 -/* 80186748 001836A8 DB 41 3A 40 */ stfd f26, 0x3a40(r1) -/* 8018674C 001836AC 13 41 00 0E */ psq_stx f26, r1, r0, 0, qr0 -/* 80186750 001836B0 38 00 3A 38 */ li r0, 0x3a38 -/* 80186754 001836B4 DB 21 3A 30 */ stfd f25, 0x3a30(r1) -/* 80186758 001836B8 13 21 00 0E */ psq_stx f25, r1, r0, 0, qr0 -/* 8018675C 001836BC 38 00 3A 28 */ li r0, 0x3a28 -/* 80186760 001836C0 DB 01 3A 20 */ stfd f24, 0x3a20(r1) -/* 80186764 001836C4 13 01 00 0E */ psq_stx f24, r1, r0, 0, qr0 -/* 80186768 001836C8 38 00 3A 18 */ li r0, 0x3a18 -/* 8018676C 001836CC DA E1 3A 10 */ stfd f23, 0x3a10(r1) -/* 80186770 001836D0 12 E1 00 0E */ psq_stx f23, r1, r0, 0, qr0 -/* 80186774 001836D4 38 00 3A 08 */ li r0, 0x3a08 -/* 80186778 001836D8 DA C1 3A 00 */ stfd f22, 0x3a00(r1) -/* 8018677C 001836DC 12 C1 00 0E */ psq_stx f22, r1, r0, 0, qr0 -/* 80186780 001836E0 38 00 39 F8 */ li r0, 0x39f8 -/* 80186784 001836E4 DA A1 39 F0 */ stfd f21, 0x39f0(r1) -/* 80186788 001836E8 12 A1 00 0E */ psq_stx f21, r1, r0, 0, qr0 -/* 8018678C 001836EC BD C1 39 A8 */ stmw r14, 0x39a8(r1) -/* 80186790 001836F0 38 00 00 00 */ li r0, 0 -/* 80186794 001836F4 FE E0 08 90 */ fmr f23, f1 -/* 80186798 001836F8 90 01 31 94 */ stw r0, 0x3194(r1) -/* 8018679C 001836FC 7C 70 1B 78 */ mr r16, r3 -/* 801867A0 00183700 7C 91 23 78 */ mr r17, r4 -/* 801867A4 00183704 7C AE 2B 78 */ mr r14, r5 -/* 801867A8 00183708 38 61 02 28 */ addi r3, r1, 0x228 -/* 801867AC 0018370C 4B F9 3F 09 */ bl GetMotionVolume__13CPhysicsActorCFf -/* 801867B0 00183710 C0 A1 02 28 */ lfs f5, 0x228(r1) -/* 801867B4 00183714 28 0E 00 00 */ cmplwi r14, 0 -/* 801867B8 00183718 C0 81 02 2C */ lfs f4, 0x22c(r1) -/* 801867BC 0018371C C0 61 02 30 */ lfs f3, 0x230(r1) -/* 801867C0 00183720 C0 41 02 34 */ lfs f2, 0x234(r1) -/* 801867C4 00183724 C0 21 02 38 */ lfs f1, 0x238(r1) -/* 801867C8 00183728 C0 01 02 3C */ lfs f0, 0x23c(r1) -/* 801867CC 0018372C D0 A1 02 54 */ stfs f5, 0x254(r1) -/* 801867D0 00183730 D0 81 02 58 */ stfs f4, 0x258(r1) -/* 801867D4 00183734 D0 61 02 5C */ stfs f3, 0x25c(r1) -/* 801867D8 00183738 D0 41 02 60 */ stfs f2, 0x260(r1) -/* 801867DC 0018373C D0 21 02 64 */ stfs f1, 0x264(r1) -/* 801867E0 00183740 D0 01 02 68 */ stfs f0, 0x268(r1) -/* 801867E4 00183744 41 82 00 AC */ beq lbl_80186890 -/* 801867E8 00183748 38 01 31 94 */ addi r0, r1, 0x3194 -/* 801867EC 0018374C 7C 00 70 40 */ cmplw r0, r14 -/* 801867F0 00183750 41 82 00 B4 */ beq lbl_801868A4 -/* 801867F4 00183754 80 A1 31 94 */ lwz r5, 0x3194(r1) -/* 801867F8 00183758 38 C1 31 98 */ addi r6, r1, 0x3198 -/* 801867FC 0018375C 38 60 00 00 */ li r3, 0 -/* 80186800 00183760 2C 05 00 00 */ cmpwi r5, 0 -/* 80186804 00183764 40 81 00 40 */ ble lbl_80186844 -/* 80186808 00183768 2C 05 00 08 */ cmpwi r5, 8 -/* 8018680C 0018376C 38 85 FF F8 */ addi r4, r5, -8 -/* 80186810 00183770 40 81 00 20 */ ble lbl_80186830 -/* 80186814 00183774 38 04 00 07 */ addi r0, r4, 7 -/* 80186818 00183778 54 00 E8 FE */ srwi r0, r0, 3 -/* 8018681C 0018377C 7C 09 03 A6 */ mtctr r0 -/* 80186820 00183780 2C 04 00 00 */ cmpwi r4, 0 -/* 80186824 00183784 40 81 00 0C */ ble lbl_80186830 -lbl_80186828: -/* 80186828 00183788 38 63 00 08 */ addi r3, r3, 8 -/* 8018682C 0018378C 42 00 FF FC */ bdnz lbl_80186828 -lbl_80186830: -/* 80186830 00183790 7C 03 28 50 */ subf r0, r3, r5 -/* 80186834 00183794 7C 09 03 A6 */ mtctr r0 -/* 80186838 00183798 7C 03 28 00 */ cmpw r3, r5 -/* 8018683C 0018379C 40 80 00 08 */ bge lbl_80186844 -lbl_80186840: -/* 80186840 001837A0 42 00 00 00 */ bdnz lbl_80186840 -lbl_80186844: -/* 80186844 001837A4 80 0E 00 00 */ lwz r0, 0(r14) -/* 80186848 001837A8 38 60 00 00 */ li r3, 0 -/* 8018684C 001837AC 90 61 31 94 */ stw r3, 0x3194(r1) -/* 80186850 001837B0 38 6E 00 04 */ addi r3, r14, 4 -/* 80186854 001837B4 54 00 08 3C */ slwi r0, r0, 1 -/* 80186858 001837B8 7C 8E 02 14 */ add r4, r14, r0 -/* 8018685C 001837BC 38 84 00 04 */ addi r4, r4, 4 -/* 80186860 001837C0 48 00 00 1C */ b lbl_8018687C -lbl_80186864: -/* 80186864 001837C4 28 06 00 00 */ cmplwi r6, 0 -/* 80186868 001837C8 41 82 00 0C */ beq lbl_80186874 -/* 8018686C 001837CC A0 03 00 00 */ lhz r0, 0(r3) -/* 80186870 001837D0 B0 06 00 00 */ sth r0, 0(r6) -lbl_80186874: -/* 80186874 001837D4 38 C6 00 02 */ addi r6, r6, 2 -/* 80186878 001837D8 38 63 00 02 */ addi r3, r3, 2 -lbl_8018687C: -/* 8018687C 001837DC 7C 03 20 40 */ cmplw r3, r4 -/* 80186880 001837E0 40 82 FF E4 */ bne lbl_80186864 -/* 80186884 001837E4 80 0E 00 00 */ lwz r0, 0(r14) -/* 80186888 001837E8 90 01 31 94 */ stw r0, 0x3194(r1) -/* 8018688C 001837EC 48 00 00 18 */ b lbl_801868A4 -lbl_80186890: -/* 80186890 001837F0 7E 03 83 78 */ mr r3, r16 -/* 80186894 001837F4 7E 25 8B 78 */ mr r5, r17 -/* 80186898 001837F8 38 81 31 94 */ addi r4, r1, 0x3194 -/* 8018689C 001837FC 38 C1 02 54 */ addi r6, r1, 0x254 -/* 801868A0 00183800 4B EC 5E 5D */ bl "BuildColliderList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CActorRC6CAABox" -lbl_801868A4: -/* 801868A4 00183804 38 61 16 50 */ addi r3, r1, 0x1650 -/* 801868A8 00183808 38 81 02 54 */ addi r4, r1, 0x254 -/* 801868AC 0018380C 48 11 D1 E5 */ bl __ct__19CAreaCollisionCacheFRC6CAABox -/* 801868B0 00183810 7E 03 83 78 */ mr r3, r16 -/* 801868B4 00183814 38 81 16 50 */ addi r4, r1, 0x1650 -/* 801868B8 00183818 4B FF DE 0D */ bl BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache -/* 801868BC 0018381C 7E 24 8B 78 */ mr r4, r17 -/* 801868C0 00183820 38 61 00 80 */ addi r3, r1, 0x80 -/* 801868C4 00183824 4B F2 5A D1 */ bl "__ct__20TCastToPtr<7CPlayer>FP7CEntity" -/* 801868C8 00183828 83 A3 00 04 */ lwz r29, 4(r3) -/* 801868CC 0018382C 39 C0 00 00 */ li r14, 0 -/* 801868D0 00183830 88 1D 09 C5 */ lbz r0, 0x9c5(r29) -/* 801868D4 00183834 51 C0 1F 38 */ rlwimi r0, r14, 3, 0x1c, 0x1c -/* 801868D8 00183838 98 1D 09 C5 */ stb r0, 0x9c5(r29) -/* 801868DC 0018383C 88 1D 09 C4 */ lbz r0, 0x9c4(r29) -/* 801868E0 00183840 80 7D 02 58 */ lwz r3, 0x258(r29) -/* 801868E4 00183844 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 801868E8 00183848 20 63 00 02 */ subfic r3, r3, 2 -/* 801868EC 0018384C 7C 63 00 34 */ cntlzw r3, r3 -/* 801868F0 00183850 54 6F D9 7E */ srwi r15, r3, 5 -/* 801868F4 00183854 41 82 00 20 */ beq lbl_80186914 -/* 801868F8 00183858 80 70 08 B8 */ lwz r3, 0x8b8(r16) -/* 801868FC 0018385C 38 80 00 15 */ li r4, 0x15 -/* 80186900 00183860 80 63 00 00 */ lwz r3, 0(r3) -/* 80186904 00183864 4B F0 B1 BD */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType -/* 80186908 00183868 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8018690C 0018386C 40 82 00 08 */ bne lbl_80186914 -/* 80186910 00183870 39 C0 00 01 */ li r14, 1 -lbl_80186914: -/* 80186914 00183874 80 1D 02 58 */ lwz r0, 0x258(r29) -/* 80186918 00183878 3A 80 00 00 */ li r20, 0 -/* 8018691C 0018387C 2C 00 00 02 */ cmpwi r0, 2 -/* 80186920 00183880 41 82 00 10 */ beq lbl_80186930 -/* 80186924 00183884 2C 00 00 01 */ cmpwi r0, 1 -/* 80186928 00183888 41 82 00 08 */ beq lbl_80186930 -/* 8018692C 0018388C 3A 80 00 01 */ li r20, 1 -lbl_80186930: -/* 80186930 00183890 7E 23 8B 78 */ mr r3, r17 -/* 80186934 00183894 81 91 00 00 */ lwz r12, 0(r17) -/* 80186938 00183898 81 8C 00 78 */ lwz r12, 0x78(r12) -/* 8018693C 0018389C 7D 89 03 A6 */ mtctr r12 -/* 80186940 001838A0 4E 80 04 21 */ bctrl -/* 80186944 001838A4 7E 23 8B 78 */ mr r3, r17 -/* 80186948 001838A8 FF 80 08 90 */ fmr f28, f1 -/* 8018694C 001838AC 81 91 00 00 */ lwz r12, 0(r17) -/* 80186950 001838B0 81 8C 00 7C */ lwz r12, 0x7c(r12) -/* 80186954 001838B4 7D 89 03 A6 */ mtctr r12 -/* 80186958 001838B8 4E 80 04 21 */ bctrl -/* 8018695C 001838BC 38 00 00 01 */ li r0, 1 -/* 80186960 001838C0 FF 00 08 90 */ fmr f24, f1 -/* 80186964 001838C4 80 AD 8E BC */ lwz r5, lbl_805A7A7C@sda21(r13) -/* 80186968 001838C8 38 60 00 00 */ li r3, 0 -/* 8018696C 001838CC 98 01 39 98 */ stb r0, 0x3998(r1) -/* 80186970 001838D0 38 80 00 01 */ li r4, 1 -/* 80186974 001838D4 48 20 35 81 */ bl __shl2i -/* 80186978 001838D8 38 A0 00 00 */ li r5, 0 -/* 8018697C 001838DC 55 E0 06 3F */ clrlwi. r0, r15, 0x18 -/* 80186980 001838E0 98 A1 08 34 */ stb r5, 0x834(r1) -/* 80186984 001838E4 7C 92 23 78 */ mr r18, r4 -/* 80186988 001838E8 7C 6F 1B 78 */ mr r15, r3 -/* 8018698C 001838EC 98 A1 08 98 */ stb r5, 0x898(r1) -/* 80186990 001838F0 40 82 0A 5C */ bne lbl_801873EC -/* 80186994 001838F4 C0 A2 A3 18 */ lfs f5, lbl_805AC038@sda21(r2) -/* 80186998 001838F8 38 D1 02 28 */ addi r6, r17, 0x228 -/* 8018699C 001838FC C0 82 A3 30 */ lfs f4, lbl_805AC050@sda21(r2) -/* 801869A0 00183900 38 01 08 20 */ addi r0, r1, 0x820 -/* 801869A4 00183904 C0 62 A3 34 */ lfs f3, lbl_805AC054@sda21(r2) -/* 801869A8 00183908 38 80 00 01 */ li r4, 1 -/* 801869AC 0018390C C0 42 A3 38 */ lfs f2, lbl_805AC058@sda21(r2) -/* 801869B0 00183910 38 60 00 04 */ li r3, 4 -/* 801869B4 00183914 C0 22 A3 10 */ lfs f1, lbl_805AC030@sda21(r2) -/* 801869B8 00183918 7C 00 30 40 */ cmplw r0, r6 -/* 801869BC 0018391C C0 02 A3 3C */ lfs f0, lbl_805AC05C@sda21(r2) -/* 801869C0 00183920 56 93 06 3E */ clrlwi r19, r20, 0x18 -/* 801869C4 00183924 98 A1 08 2C */ stb r5, 0x82c(r1) -/* 801869C8 00183928 98 A1 07 E4 */ stb r5, 0x7e4(r1) -/* 801869CC 0018392C D0 A1 07 E8 */ stfs f5, 0x7e8(r1) -/* 801869D0 00183930 D0 A1 07 EC */ stfs f5, 0x7ec(r1) -/* 801869D4 00183934 D0 81 07 F0 */ stfs f4, 0x7f0(r1) -/* 801869D8 00183938 D0 61 07 F4 */ stfs f3, 0x7f4(r1) -/* 801869DC 0018393C D0 A1 07 F8 */ stfs f5, 0x7f8(r1) -/* 801869E0 00183940 98 81 07 FC */ stb r4, 0x7fc(r1) -/* 801869E4 00183944 98 A1 07 FD */ stb r5, 0x7fd(r1) -/* 801869E8 00183948 9A 81 07 FE */ stb r20, 0x7fe(r1) -/* 801869EC 0018394C 90 61 08 00 */ stw r3, 0x800(r1) -/* 801869F0 00183950 D0 41 08 04 */ stfs f2, 0x804(r1) -/* 801869F4 00183954 D0 A1 08 08 */ stfs f5, 0x808(r1) -/* 801869F8 00183958 D0 21 08 0C */ stfs f1, 0x80c(r1) -/* 801869FC 0018395C D0 A1 08 10 */ stfs f5, 0x810(r1) -/* 80186A00 00183960 D0 01 08 14 */ stfs f0, 0x814(r1) -/* 80186A04 00183964 41 82 00 64 */ beq lbl_80186A68 -/* 80186A08 00183968 88 06 00 0C */ lbz r0, 0xc(r6) -/* 80186A0C 0018396C 28 00 00 00 */ cmplwi r0, 0 -/* 80186A10 00183970 41 82 00 54 */ beq lbl_80186A64 -/* 80186A14 00183974 28 05 00 00 */ cmplwi r5, 0 -/* 80186A18 00183978 40 82 00 30 */ bne lbl_80186A48 -/* 80186A1C 0018397C 34 01 08 20 */ addic. r0, r1, 0x820 -/* 80186A20 00183980 41 82 00 1C */ beq lbl_80186A3C -/* 80186A24 00183984 C0 06 00 00 */ lfs f0, 0(r6) -/* 80186A28 00183988 D0 01 08 20 */ stfs f0, 0x820(r1) -/* 80186A2C 0018398C C0 06 00 04 */ lfs f0, 4(r6) -/* 80186A30 00183990 D0 01 08 24 */ stfs f0, 0x824(r1) -/* 80186A34 00183994 C0 06 00 08 */ lfs f0, 8(r6) -/* 80186A38 00183998 D0 01 08 28 */ stfs f0, 0x828(r1) -lbl_80186A3C: -/* 80186A3C 0018399C 38 00 00 01 */ li r0, 1 -/* 80186A40 001839A0 98 01 08 2C */ stb r0, 0x82c(r1) -/* 80186A44 001839A4 48 00 00 24 */ b lbl_80186A68 -lbl_80186A48: -/* 80186A48 001839A8 C0 06 00 00 */ lfs f0, 0(r6) -/* 80186A4C 001839AC D0 01 08 20 */ stfs f0, 0x820(r1) -/* 80186A50 001839B0 C0 06 00 04 */ lfs f0, 4(r6) -/* 80186A54 001839B4 D0 01 08 24 */ stfs f0, 0x824(r1) -/* 80186A58 001839B8 C0 06 00 08 */ lfs f0, 8(r6) -/* 80186A5C 001839BC D0 01 08 28 */ stfs f0, 0x828(r1) -/* 80186A60 001839C0 48 00 00 08 */ b lbl_80186A68 -lbl_80186A64: -/* 80186A64 001839C4 98 A1 08 2C */ stb r5, 0x82c(r1) -lbl_80186A68: -/* 80186A68 001839C8 C0 02 A3 40 */ lfs f0, lbl_805AC060@sda21(r2) -/* 80186A6C 001839CC 7F A3 EB 78 */ mr r3, r29 -/* 80186A70 001839D0 7E 04 83 78 */ mr r4, r16 -/* 80186A74 001839D4 D0 01 08 18 */ stfs f0, 0x818(r1) -/* 80186A78 001839D8 4B E8 E0 C9 */ bl GetMaximumPlayerPositiveVerticalVelocity__7CPlayerCFRC13CStateManager -/* 80186A7C 001839DC 56 80 06 3F */ clrlwi. r0, r20, 0x18 -/* 80186A80 001839E0 D0 21 08 1C */ stfs f1, 0x81c(r1) -/* 80186A84 001839E4 41 82 00 40 */ beq lbl_80186AC4 -/* 80186A88 001839E8 C0 31 01 38 */ lfs f1, 0x138(r17) -/* 80186A8C 001839EC 7E 23 8B 78 */ mr r3, r17 -/* 80186A90 001839F0 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) -/* 80186A94 001839F4 38 81 02 04 */ addi r4, r1, 0x204 -/* 80186A98 001839F8 D0 21 02 04 */ stfs f1, 0x204(r1) -/* 80186A9C 001839FC C0 31 01 3C */ lfs f1, 0x13c(r17) -/* 80186AA0 00183A00 D0 21 02 08 */ stfs f1, 0x208(r1) -/* 80186AA4 00183A04 C0 31 01 40 */ lfs f1, 0x140(r17) -/* 80186AA8 00183A08 D0 21 02 0C */ stfs f1, 0x20c(r1) -/* 80186AAC 00183A0C D0 01 02 0C */ stfs f0, 0x20c(r1) -/* 80186AB0 00183A10 4B F9 41 F1 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -/* 80186AB4 00183A14 C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) -/* 80186AB8 00183A18 D0 31 01 64 */ stfs f1, 0x164(r17) -/* 80186ABC 00183A1C D0 31 01 58 */ stfs f1, 0x158(r17) -/* 80186AC0 00183A20 D0 31 01 70 */ stfs f1, 0x170(r17) -lbl_80186AC4: -/* 80186AC4 00183A24 7E 24 8B 78 */ mr r4, r17 -/* 80186AC8 00183A28 38 61 04 14 */ addi r3, r1, 0x414 -/* 80186ACC 00183A2C 4B F9 55 21 */ bl GetPhysicsState__13CPhysicsActorCFv -/* 80186AD0 00183A30 38 61 07 74 */ addi r3, r1, 0x774 -/* 80186AD4 00183A34 38 81 04 14 */ addi r4, r1, 0x414 -/* 80186AD8 00183A38 4B F2 C9 E9 */ bl __ct__13CPhysicsStateFRC13CPhysicsState -/* 80186ADC 00183A3C FC 20 B8 90 */ fmr f1, f23 -/* 80186AE0 00183A40 7E 04 83 78 */ mr r4, r16 -/* 80186AE4 00183A44 7E 25 8B 78 */ mr r5, r17 -/* 80186AE8 00183A48 38 61 00 78 */ addi r3, r1, 0x78 -/* 80186AEC 00183A4C 38 C1 31 94 */ addi r6, r1, 0x3194 -/* 80186AF0 00183A50 38 E1 16 50 */ addi r7, r1, 0x1650 -/* 80186AF4 00183A54 39 01 07 E4 */ addi r8, r1, 0x7e4 -/* 80186AF8 00183A58 39 21 08 30 */ addi r9, r1, 0x830 -/* 80186AFC 00183A5C 4B FF EF 15 */ bl "MoveObjectAnalytical__15CGroundMovementFR13CStateManagerR13CPhysicsActorfRCQ24rstl32reserved_vector<9TUniqueId,1024>R19CAreaCollisionCacheRfRCQ215CGroundMovement16SMovementOptions" -/* 80186B00 00183A60 81 C1 00 78 */ lwz r14, 0x78(r1) -/* 80186B04 00183A64 7E 24 8B 78 */ mr r4, r17 -/* 80186B08 00183A68 83 81 00 7C */ lwz r28, 0x7c(r1) -/* 80186B0C 00183A6C 38 61 03 A4 */ addi r3, r1, 0x3a4 -/* 80186B10 00183A70 4B F9 54 DD */ bl GetPhysicsState__13CPhysicsActorCFv -/* 80186B14 00183A74 38 61 07 04 */ addi r3, r1, 0x704 -/* 80186B18 00183A78 38 81 03 A4 */ addi r4, r1, 0x3a4 -/* 80186B1C 00183A7C 4B F2 C9 A5 */ bl __ct__13CPhysicsStateFRC13CPhysicsState -/* 80186B20 00183A80 38 60 00 01 */ li r3, 1 -/* 80186B24 00183A84 38 00 00 00 */ li r0, 0 -/* 80186B28 00183A88 7F 83 1A 78 */ xor r3, r28, r3 -/* 80186B2C 00183A8C 7D C0 02 78 */ xor r0, r14, r0 -/* 80186B30 00183A90 7C 60 03 79 */ or. r0, r3, r0 -/* 80186B34 00183A94 41 82 08 A4 */ beq lbl_801873D8 -/* 80186B38 00183A98 38 61 06 B8 */ addi r3, r1, 0x6b8 -/* 80186B3C 00183A9C 38 81 07 E4 */ addi r4, r1, 0x7e4 -/* 80186B40 00183AA0 48 00 14 0D */ bl __ct__Q215CGroundMovement16SMovementOptionsFRCQ215CGroundMovement16SMovementOptions -/* 80186B44 00183AA4 C1 41 07 04 */ lfs f10, 0x704(r1) -/* 80186B48 00183AA8 38 00 00 00 */ li r0, 0 -/* 80186B4C 00183AAC C0 E1 07 74 */ lfs f7, 0x774(r1) -/* 80186B50 00183AB0 3B 21 05 C8 */ addi r25, r1, 0x5c8 -/* 80186B54 00183AB4 C1 21 07 08 */ lfs f9, 0x708(r1) -/* 80186B58 00183AB8 3B 01 05 B8 */ addi r24, r1, 0x5b8 -/* 80186B5C 00183ABC C0 C1 07 78 */ lfs f6, 0x778(r1) -/* 80186B60 00183AC0 EC 87 50 28 */ fsubs f4, f7, f10 -/* 80186B64 00183AC4 C1 01 07 0C */ lfs f8, 0x70c(r1) -/* 80186B68 00183AC8 3A C1 01 FC */ addi r22, r1, 0x1fc -/* 80186B6C 00183ACC ED A6 48 28 */ fsubs f13, f6, f9 -/* 80186B70 00183AD0 C0 A1 07 7C */ lfs f5, 0x77c(r1) -/* 80186B74 00183AD4 EC 44 01 32 */ fmuls f2, f4, f4 -/* 80186B78 00183AD8 ED 85 40 28 */ fsubs f12, f5, f8 -/* 80186B7C 00183ADC C0 02 A3 34 */ lfs f0, lbl_805AC054@sda21(r2) -/* 80186B80 00183AE0 EC 2D 03 72 */ fmuls f1, f13, f13 -/* 80186B84 00183AE4 C1 62 A3 44 */ lfs f11, lbl_805AC064@sda21(r2) -/* 80186B88 00183AE8 EF 20 06 32 */ fmuls f25, f0, f24 -/* 80186B8C 00183AEC EC 6C 03 32 */ fmuls f3, f12, f12 -/* 80186B90 00183AF0 EC 02 08 2A */ fadds f0, f2, f1 -/* 80186B94 00183AF4 9A 61 06 D1 */ stb r19, 0x6d1(r1) -/* 80186B98 00183AF8 C3 A2 A3 18 */ lfs f29, lbl_805AC038@sda21(r2) -/* 80186B9C 00183AFC 3A 81 00 A4 */ addi r20, r1, 0xa4 -/* 80186BA0 00183B00 D1 61 06 E8 */ stfs f11, 0x6e8(r1) -/* 80186BA4 00183B04 EF 63 00 2A */ fadds f27, f3, f0 -/* 80186BA8 00183B08 90 01 09 68 */ stw r0, 0x968(r1) -/* 80186BAC 00183B0C 3A A1 02 44 */ addi r21, r1, 0x244 -/* 80186BB0 00183B10 C3 C2 A3 10 */ lfs f30, lbl_805AC030@sda21(r2) -/* 80186BB4 00183B14 3A E1 05 E8 */ addi r23, r1, 0x5e8 -/* 80186BB8 00183B18 90 01 01 F8 */ stw r0, 0x1f8(r1) -/* 80186BBC 00183B1C CB E2 A3 48 */ lfd f31, lbl_805AC068@sda21(r2) -/* 80186BC0 00183B20 3B C1 06 58 */ addi r30, r1, 0x658 -/* 80186BC4 00183B24 90 01 08 A4 */ stw r0, 0x8a4(r1) -/* 80186BC8 00183B28 3B E1 00 98 */ addi r31, r1, 0x98 -/* 80186BCC 00183B2C 3A 60 00 00 */ li r19, 0 -/* 80186BD0 00183B30 3A 40 00 00 */ li r18, 0 -/* 80186BD4 00183B34 90 01 00 A0 */ stw r0, 0xa0(r1) -/* 80186BD8 00183B38 90 01 02 40 */ stw r0, 0x240(r1) -/* 80186BDC 00183B3C D1 41 01 D4 */ stfs f10, 0x1d4(r1) -/* 80186BE0 00183B40 D1 21 01 D8 */ stfs f9, 0x1d8(r1) -/* 80186BE4 00183B44 D1 01 01 DC */ stfs f8, 0x1dc(r1) -/* 80186BE8 00183B48 D0 E1 01 E0 */ stfs f7, 0x1e0(r1) -/* 80186BEC 00183B4C D0 C1 01 E4 */ stfs f6, 0x1e4(r1) -/* 80186BF0 00183B50 D0 A1 01 E8 */ stfs f5, 0x1e8(r1) -/* 80186BF4 00183B54 D0 81 01 EC */ stfs f4, 0x1ec(r1) -/* 80186BF8 00183B58 D1 A1 01 F0 */ stfs f13, 0x1f0(r1) -/* 80186BFC 00183B5C D1 81 01 F4 */ stfs f12, 0x1f4(r1) -/* 80186C00 00183B60 48 00 04 30 */ b lbl_80187030 -lbl_80186C04: -/* 80186C04 00183B64 2C 12 00 00 */ cmpwi r18, 0 -/* 80186C08 00183B68 40 82 00 0C */ bne lbl_80186C14 -/* 80186C0C 00183B6C FE A0 C8 90 */ fmr f21, f25 -/* 80186C10 00183B70 48 00 00 08 */ b lbl_80186C18 -lbl_80186C14: -/* 80186C14 00183B74 FE A0 C0 90 */ fmr f21, f24 -lbl_80186C18: -/* 80186C18 00183B78 7E 23 8B 78 */ mr r3, r17 -/* 80186C1C 00183B7C 38 81 07 74 */ addi r4, r1, 0x774 -/* 80186C20 00183B80 4B F9 52 05 */ bl SetPhysicsState__13CPhysicsActorFRC13CPhysicsState -/* 80186C24 00183B84 38 61 06 58 */ addi r3, r1, 0x658 -/* 80186C28 00183B88 38 80 00 00 */ li r4, 0 -/* 80186C2C 00183B8C 48 14 75 5D */ bl __ct__14CCollisionInfoFQ214CCollisionInfo8EInvalid -/* 80186C30 00183B90 D3 A1 01 BC */ stfs f29, 0x1bc(r1) -/* 80186C34 00183B94 7E 23 8B 78 */ mr r3, r17 -/* 80186C38 00183B98 A0 CD A3 8C */ lhz r6, lbl_805A8F4C@sda21(r13) -/* 80186C3C 00183B9C D3 A1 01 C0 */ stfs f29, 0x1c0(r1) -/* 80186C40 00183BA0 80 A1 01 BC */ lwz r5, 0x1bc(r1) -/* 80186C44 00183BA4 D3 C1 01 C4 */ stfs f30, 0x1c4(r1) -/* 80186C48 00183BA8 80 81 01 C0 */ lwz r4, 0x1c0(r1) -/* 80186C4C 00183BAC 80 01 01 C4 */ lwz r0, 0x1c4(r1) -/* 80186C50 00183BB0 DA A1 00 98 */ stfd f21, 0x98(r1) -/* 80186C54 00183BB4 B0 C1 00 38 */ sth r6, 0x38(r1) -/* 80186C58 00183BB8 90 A1 01 C8 */ stw r5, 0x1c8(r1) -/* 80186C5C 00183BBC 90 81 01 CC */ stw r4, 0x1cc(r1) -/* 80186C60 00183BC0 90 01 01 D0 */ stw r0, 0x1d0(r1) -/* 80186C64 00183BC4 4B EC CC 59 */ bl GetMaterialFilter__6CActorCFv -/* 80186C68 00183BC8 7C 6F 1B 78 */ mr r15, r3 -/* 80186C6C 00183BCC 7E 23 8B 78 */ mr r3, r17 -/* 80186C70 00183BD0 81 91 00 00 */ lwz r12, 0(r17) -/* 80186C74 00183BD4 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 80186C78 00183BD8 7D 89 03 A6 */ mtctr r12 -/* 80186C7C 00183BDC 4E 80 04 21 */ bctrl -/* 80186C80 00183BE0 93 C1 00 08 */ stw r30, 8(r1) -/* 80186C84 00183BE4 7C 65 1B 78 */ mr r5, r3 -/* 80186C88 00183BE8 7E 03 83 78 */ mr r3, r16 -/* 80186C8C 00183BEC 7D E7 7B 78 */ mr r7, r15 -/* 80186C90 00183BF0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80186C94 00183BF4 38 81 16 50 */ addi r4, r1, 0x1650 -/* 80186C98 00183BF8 38 D1 00 34 */ addi r6, r17, 0x34 -/* 80186C9C 00183BFC 39 01 31 94 */ addi r8, r1, 0x3194 -/* 80186CA0 00183C00 39 21 01 C8 */ addi r9, r1, 0x1c8 -/* 80186CA4 00183C04 39 41 00 38 */ addi r10, r1, 0x38 -/* 80186CA8 00183C08 4B FF D6 45 */ bl "DetectCollision_Cached_Moving__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>9CVector3fR9TUniqueIdR14CCollisionInfoRd" -/* 80186CAC 00183C0C 88 01 06 88 */ lbz r0, 0x688(r1) -/* 80186CB0 00183C10 28 00 00 00 */ cmplwi r0, 0 -/* 80186CB4 00183C14 41 82 00 38 */ beq lbl_80186CEC -/* 80186CB8 00183C18 C8 41 00 98 */ lfd f2, 0x98(r1) -/* 80186CBC 00183C1C C0 21 06 D8 */ lfs f1, 0x6d8(r1) -/* 80186CC0 00183C20 C8 0D 8E C0 */ lfd f0, lbl_805A7A80@sda21(r13) -/* 80186CC4 00183C24 FC 22 08 28 */ fsub f1, f2, f1 -/* 80186CC8 00183C28 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 80186CCC 00183C2C D8 21 00 70 */ stfd f1, 0x70(r1) -/* 80186CD0 00183C30 40 80 00 0C */ bge lbl_80186CDC -/* 80186CD4 00183C34 38 61 00 70 */ addi r3, r1, 0x70 -/* 80186CD8 00183C38 48 00 00 08 */ b lbl_80186CE0 -lbl_80186CDC: -/* 80186CDC 00183C3C 38 6D 8E C0 */ addi r3, r13, lbl_805A7A80@sda21 -lbl_80186CE0: -/* 80186CE0 00183C40 C8 03 00 00 */ lfd f0, 0(r3) -/* 80186CE4 00183C44 3A 60 00 01 */ li r19, 1 -/* 80186CE8 00183C48 D8 01 00 98 */ stfd f0, 0x98(r1) -lbl_80186CEC: -/* 80186CEC 00183C4C C8 01 00 98 */ lfd f0, 0x98(r1) -/* 80186CF0 00183C50 FC 00 F8 40 */ fcmpo cr0, f0, f31 -/* 80186CF4 00183C54 40 81 03 38 */ ble lbl_8018702C -/* 80186CF8 00183C58 FC 00 00 18 */ frsp f0, f0 -/* 80186CFC 00183C5C C0 D1 00 60 */ lfs f6, 0x60(r17) -/* 80186D00 00183C60 C0 B1 00 50 */ lfs f5, 0x50(r17) -/* 80186D04 00183C64 7E 23 8B 78 */ mr r3, r17 -/* 80186D08 00183C68 C0 51 00 40 */ lfs f2, 0x40(r17) -/* 80186D0C 00183C6C 38 81 01 B0 */ addi r4, r1, 0x1b0 -/* 80186D10 00183C70 C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) -/* 80186D14 00183C74 EC 66 00 2A */ fadds f3, f6, f0 -/* 80186D18 00183C78 D0 41 01 A4 */ stfs f2, 0x1a4(r1) -/* 80186D1C 00183C7C EC 85 08 2A */ fadds f4, f5, f1 -/* 80186D20 00183C80 EC 02 08 2A */ fadds f0, f2, f1 -/* 80186D24 00183C84 D0 A1 01 A8 */ stfs f5, 0x1a8(r1) -/* 80186D28 00183C88 D0 C1 01 AC */ stfs f6, 0x1ac(r1) -/* 80186D2C 00183C8C D0 01 01 B0 */ stfs f0, 0x1b0(r1) -/* 80186D30 00183C90 D0 81 01 B4 */ stfs f4, 0x1b4(r1) -/* 80186D34 00183C94 D0 61 01 B8 */ stfs f3, 0x1b8(r1) -/* 80186D38 00183C98 4B EC C1 55 */ bl SetTranslation__6CActorFRC9CVector3f -/* 80186D3C 00183C9C 38 00 00 00 */ li r0, 0 -/* 80186D40 00183CA0 FC 20 B8 90 */ fmr f1, f23 -/* 80186D44 00183CA4 98 01 05 E4 */ stb r0, 0x5e4(r1) -/* 80186D48 00183CA8 7E 04 83 78 */ mr r4, r16 -/* 80186D4C 00183CAC 7E 25 8B 78 */ mr r5, r17 -/* 80186D50 00183CB0 38 61 00 68 */ addi r3, r1, 0x68 -/* 80186D54 00183CB4 98 01 06 48 */ stb r0, 0x648(r1) -/* 80186D58 00183CB8 38 C1 31 94 */ addi r6, r1, 0x3194 -/* 80186D5C 00183CBC 38 E1 16 50 */ addi r7, r1, 0x1650 -/* 80186D60 00183CC0 39 01 06 B8 */ addi r8, r1, 0x6b8 -/* 80186D64 00183CC4 39 21 05 E0 */ addi r9, r1, 0x5e0 -/* 80186D68 00183CC8 4B FF EC A9 */ bl "MoveObjectAnalytical__15CGroundMovementFR13CStateManagerR13CPhysicsActorfRCQ24rstl32reserved_vector<9TUniqueId,1024>R19CAreaCollisionCacheRfRCQ215CGroundMovement16SMovementOptions" -/* 80186D6C 00183CCC 83 61 00 68 */ lwz r27, 0x68(r1) -/* 80186D70 00183CD0 38 61 05 80 */ addi r3, r1, 0x580 -/* 80186D74 00183CD4 83 41 00 6C */ lwz r26, 0x6c(r1) -/* 80186D78 00183CD8 38 80 00 00 */ li r4, 0 -/* 80186D7C 00183CDC 48 14 74 0D */ bl __ct__14CCollisionInfoFQ214CCollisionInfo8EInvalid -/* 80186D80 00183CE0 C8 01 00 98 */ lfd f0, 0x98(r1) -/* 80186D84 00183CE4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80186D88 00183CE8 FC 20 E0 2A */ fadd f1, f0, f28 -/* 80186D8C 00183CEC C8 02 A3 50 */ lfd f0, lbl_805AC070@sda21(r2) -/* 80186D90 00183CF0 B0 01 00 34 */ sth r0, 0x34(r1) -/* 80186D94 00183CF4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80186D98 00183CF8 D8 21 00 90 */ stfd f1, 0x90(r1) -/* 80186D9C 00183CFC 40 81 00 88 */ ble lbl_80186E24 -/* 80186DA0 00183D00 C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) -/* 80186DA4 00183D04 7E 23 8B 78 */ mr r3, r17 -/* 80186DA8 00183D08 C0 02 A3 58 */ lfs f0, lbl_805AC078@sda21(r2) -/* 80186DAC 00183D0C D0 21 01 8C */ stfs f1, 0x18c(r1) -/* 80186DB0 00183D10 D0 21 01 90 */ stfs f1, 0x190(r1) -/* 80186DB4 00183D14 80 A1 01 8C */ lwz r5, 0x18c(r1) -/* 80186DB8 00183D18 D0 01 01 94 */ stfs f0, 0x194(r1) -/* 80186DBC 00183D1C 80 81 01 90 */ lwz r4, 0x190(r1) -/* 80186DC0 00183D20 80 01 01 94 */ lwz r0, 0x194(r1) -/* 80186DC4 00183D24 90 A1 01 98 */ stw r5, 0x198(r1) -/* 80186DC8 00183D28 90 81 01 9C */ stw r4, 0x19c(r1) -/* 80186DCC 00183D2C 90 01 01 A0 */ stw r0, 0x1a0(r1) -/* 80186DD0 00183D30 4B EC CA ED */ bl GetMaterialFilter__6CActorCFv -/* 80186DD4 00183D34 7C 6F 1B 78 */ mr r15, r3 -/* 80186DD8 00183D38 7E 23 8B 78 */ mr r3, r17 -/* 80186DDC 00183D3C 81 91 00 00 */ lwz r12, 0(r17) -/* 80186DE0 00183D40 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 80186DE4 00183D44 7D 89 03 A6 */ mtctr r12 -/* 80186DE8 00183D48 4E 80 04 21 */ bctrl -/* 80186DEC 00183D4C 38 01 05 80 */ addi r0, r1, 0x580 -/* 80186DF0 00183D50 7C 65 1B 78 */ mr r5, r3 -/* 80186DF4 00183D54 90 01 00 08 */ stw r0, 8(r1) -/* 80186DF8 00183D58 38 01 00 90 */ addi r0, r1, 0x90 -/* 80186DFC 00183D5C 7E 03 83 78 */ mr r3, r16 -/* 80186E00 00183D60 7D E7 7B 78 */ mr r7, r15 -/* 80186E04 00183D64 90 01 00 0C */ stw r0, 0xc(r1) -/* 80186E08 00183D68 38 81 16 50 */ addi r4, r1, 0x1650 -/* 80186E0C 00183D6C 38 D1 00 34 */ addi r6, r17, 0x34 -/* 80186E10 00183D70 39 01 31 94 */ addi r8, r1, 0x3194 -/* 80186E14 00183D74 39 21 01 98 */ addi r9, r1, 0x198 -/* 80186E18 00183D78 39 41 00 34 */ addi r10, r1, 0x34 -/* 80186E1C 00183D7C 4B FF D4 D1 */ bl "DetectCollision_Cached_Moving__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>9CVector3fR9TUniqueIdR14CCollisionInfoRd" -/* 80186E20 00183D80 48 00 00 08 */ b lbl_80186E28 -lbl_80186E24: -/* 80186E24 00183D84 D8 01 00 90 */ stfd f0, 0x90(r1) -lbl_80186E28: -/* 80186E28 00183D88 C8 21 00 98 */ lfd f1, 0x98(r1) -/* 80186E2C 00183D8C C8 01 00 90 */ lfd f0, 0x90(r1) -/* 80186E30 00183D90 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80186E34 00183D94 40 80 00 0C */ bge lbl_80186E40 -/* 80186E38 00183D98 38 61 00 98 */ addi r3, r1, 0x98 -/* 80186E3C 00183D9C 48 00 00 08 */ b lbl_80186E44 -lbl_80186E40: -/* 80186E40 00183DA0 38 61 00 90 */ addi r3, r1, 0x90 -lbl_80186E44: -/* 80186E44 00183DA4 C8 83 00 00 */ lfd f4, 0(r3) -/* 80186E48 00183DA8 39 E0 00 00 */ li r15, 0 -/* 80186E4C 00183DAC 88 01 05 B0 */ lbz r0, 0x5b0(r1) -/* 80186E50 00183DB0 FC 80 20 18 */ frsp f4, f4 -/* 80186E54 00183DB4 C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) -/* 80186E58 00183DB8 C0 02 A3 10 */ lfs f0, lbl_805AC030@sda21(r2) -/* 80186E5C 00183DBC 28 00 00 00 */ cmplwi r0, 0 -/* 80186E60 00183DC0 C0 71 00 40 */ lfs f3, 0x40(r17) -/* 80186E64 00183DC4 EC A4 00 72 */ fmuls f5, f4, f1 -/* 80186E68 00183DC8 C0 51 00 50 */ lfs f2, 0x50(r17) -/* 80186E6C 00183DCC EC 04 00 32 */ fmuls f0, f4, f0 -/* 80186E70 00183DD0 C0 31 00 60 */ lfs f1, 0x60(r17) -/* 80186E74 00183DD4 EE A3 28 28 */ fsubs f21, f3, f5 -/* 80186E78 00183DD8 EE C2 28 28 */ fsubs f22, f2, f5 -/* 80186E7C 00183DDC EF 41 00 28 */ fsubs f26, f1, f0 -/* 80186E80 00183DE0 41 82 00 1C */ beq lbl_80186E9C -/* 80186E84 00183DE4 7F 03 C3 78 */ mr r3, r24 -/* 80186E88 00183DE8 7F 24 CB 78 */ mr r4, r25 -/* 80186E8C 00183DEC 4B FF B9 7D */ bl CanBlock__14CGameCollisionFRC13CMaterialListRC9CVector3f -/* 80186E90 00183DF0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80186E94 00183DF4 41 82 00 08 */ beq lbl_80186E9C -/* 80186E98 00183DF8 39 E0 00 01 */ li r15, 1 -lbl_80186E9C: -/* 80186E9C 00183DFC C0 01 07 74 */ lfs f0, 0x774(r1) -/* 80186EA0 00183E00 55 E0 06 3F */ clrlwi. r0, r15, 0x18 -/* 80186EA4 00183E04 C0 41 07 78 */ lfs f2, 0x778(r1) -/* 80186EA8 00183E08 EC 60 A8 28 */ fsubs f3, f0, f21 -/* 80186EAC 00183E0C C0 81 07 7C */ lfs f4, 0x77c(r1) -/* 80186EB0 00183E10 EC C2 B0 28 */ fsubs f6, f2, f22 -/* 80186EB4 00183E14 D0 01 01 74 */ stfs f0, 0x174(r1) -/* 80186EB8 00183E18 EC A4 D0 28 */ fsubs f5, f4, f26 -/* 80186EBC 00183E1C EC 23 00 F2 */ fmuls f1, f3, f3 -/* 80186EC0 00183E20 EC 06 01 B2 */ fmuls f0, f6, f6 -/* 80186EC4 00183E24 D0 41 01 78 */ stfs f2, 0x178(r1) -/* 80186EC8 00183E28 EC 45 01 72 */ fmuls f2, f5, f5 -/* 80186ECC 00183E2C D0 81 01 7C */ stfs f4, 0x17c(r1) -/* 80186ED0 00183E30 EC 01 00 2A */ fadds f0, f1, f0 -/* 80186ED4 00183E34 D0 61 01 80 */ stfs f3, 0x180(r1) -/* 80186ED8 00183E38 EF 42 00 2A */ fadds f26, f2, f0 -/* 80186EDC 00183E3C D0 C1 01 84 */ stfs f6, 0x184(r1) -/* 80186EE0 00183E40 D0 A1 01 88 */ stfs f5, 0x188(r1) -/* 80186EE4 00183E44 41 82 01 30 */ beq lbl_80187014 -/* 80186EE8 00183E48 FC 1B D0 40 */ fcmpo cr0, f27, f26 -/* 80186EEC 00183E4C 40 80 01 28 */ bge lbl_80187014 -/* 80186EF0 00183E50 C8 41 00 90 */ lfd f2, 0x90(r1) -/* 80186EF4 00183E54 C8 22 A3 48 */ lfd f1, lbl_805AC068@sda21(r2) -/* 80186EF8 00183E58 C8 0D 8E C8 */ lfd f0, lbl_805A7A88@sda21(r13) -/* 80186EFC 00183E5C FC 22 08 28 */ fsub f1, f2, f1 -/* 80186F00 00183E60 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80186F04 00183E64 D8 21 00 60 */ stfd f1, 0x60(r1) -/* 80186F08 00183E68 40 80 00 0C */ bge lbl_80186F14 -/* 80186F0C 00183E6C 38 6D 8E C8 */ addi r3, r13, lbl_805A7A88@sda21 -/* 80186F10 00183E70 48 00 00 08 */ b lbl_80186F18 -lbl_80186F14: -/* 80186F14 00183E74 38 61 00 60 */ addi r3, r1, 0x60 -lbl_80186F18: -/* 80186F18 00183E78 C8 23 00 00 */ lfd f1, 0(r3) -/* 80186F1C 00183E7C 7E 23 8B 78 */ mr r3, r17 -/* 80186F20 00183E80 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) -/* 80186F24 00183E84 38 81 01 68 */ addi r4, r1, 0x168 -/* 80186F28 00183E88 FC 60 08 18 */ frsp f3, f1 -/* 80186F2C 00183E8C D8 21 00 90 */ stfd f1, 0x90(r1) -/* 80186F30 00183E90 C0 42 A3 10 */ lfs f2, lbl_805AC030@sda21(r2) -/* 80186F34 00183E94 C1 11 00 60 */ lfs f8, 0x60(r17) -/* 80186F38 00183E98 EC 83 00 32 */ fmuls f4, f3, f0 -/* 80186F3C 00183E9C C0 F1 00 50 */ lfs f7, 0x50(r17) -/* 80186F40 00183EA0 EC 63 00 B2 */ fmuls f3, f3, f2 -/* 80186F44 00183EA4 C0 31 00 40 */ lfs f1, 0x40(r17) -/* 80186F48 00183EA8 D0 01 01 44 */ stfs f0, 0x144(r1) -/* 80186F4C 00183EAC EC C7 20 28 */ fsubs f6, f7, f4 -/* 80186F50 00183EB0 EC A8 18 28 */ fsubs f5, f8, f3 -/* 80186F54 00183EB4 D0 01 01 48 */ stfs f0, 0x148(r1) -/* 80186F58 00183EB8 EC 01 20 28 */ fsubs f0, f1, f4 -/* 80186F5C 00183EBC D0 41 01 4C */ stfs f2, 0x14c(r1) -/* 80186F60 00183EC0 D0 81 01 50 */ stfs f4, 0x150(r1) -/* 80186F64 00183EC4 D0 81 01 54 */ stfs f4, 0x154(r1) -/* 80186F68 00183EC8 D0 61 01 58 */ stfs f3, 0x158(r1) -/* 80186F6C 00183ECC D0 21 01 5C */ stfs f1, 0x15c(r1) -/* 80186F70 00183ED0 D0 E1 01 60 */ stfs f7, 0x160(r1) -/* 80186F74 00183ED4 D1 01 01 64 */ stfs f8, 0x164(r1) -/* 80186F78 00183ED8 D0 01 01 68 */ stfs f0, 0x168(r1) -/* 80186F7C 00183EDC D0 C1 01 6C */ stfs f6, 0x16c(r1) -/* 80186F80 00183EE0 D0 A1 01 70 */ stfs f5, 0x170(r1) -/* 80186F84 00183EE4 4B EC BF 09 */ bl SetTranslation__6CActorFRC9CVector3f -/* 80186F88 00183EE8 7E 24 8B 78 */ mr r4, r17 -/* 80186F8C 00183EEC 38 61 03 34 */ addi r3, r1, 0x334 -/* 80186F90 00183EF0 4B F9 50 5D */ bl GetPhysicsState__13CPhysicsActorCFv -/* 80186F94 00183EF4 38 61 09 68 */ addi r3, r1, 0x968 -/* 80186F98 00183EF8 38 81 03 34 */ addi r4, r1, 0x334 -/* 80186F9C 00183EFC 48 00 0F 41 */ bl sub_80187edc -/* 80186FA0 00183F00 80 01 01 F8 */ lwz r0, 0x1f8(r1) -/* 80186FA4 00183F04 54 00 10 3A */ slwi r0, r0, 2 -/* 80186FA8 00183F08 7C 76 02 15 */ add. r3, r22, r0 -/* 80186FAC 00183F0C 41 82 00 08 */ beq lbl_80186FB4 -/* 80186FB0 00183F10 D3 43 00 00 */ stfs f26, 0(r3) -lbl_80186FB4: -/* 80186FB4 00183F14 80 A1 01 F8 */ lwz r5, 0x1f8(r1) -/* 80186FB8 00183F18 38 61 08 A4 */ addi r3, r1, 0x8a4 -/* 80186FBC 00183F1C 38 81 06 58 */ addi r4, r1, 0x658 -/* 80186FC0 00183F20 38 05 00 01 */ addi r0, r5, 1 -/* 80186FC4 00183F24 90 01 01 F8 */ stw r0, 0x1f8(r1) -/* 80186FC8 00183F28 48 00 0E CD */ bl sub_80187e94 -/* 80186FCC 00183F2C 80 01 00 A0 */ lwz r0, 0xa0(r1) -/* 80186FD0 00183F30 54 00 08 3C */ slwi r0, r0, 1 -/* 80186FD4 00183F34 7C 74 02 15 */ add. r3, r20, r0 -/* 80186FD8 00183F38 41 82 00 0C */ beq lbl_80186FE4 -/* 80186FDC 00183F3C A0 01 00 34 */ lhz r0, 0x34(r1) -/* 80186FE0 00183F40 B0 03 00 00 */ sth r0, 0(r3) -lbl_80186FE4: -/* 80186FE4 00183F44 80 01 02 40 */ lwz r0, 0x240(r1) -/* 80186FE8 00183F48 80 61 00 A0 */ lwz r3, 0xa0(r1) -/* 80186FEC 00183F4C 54 00 18 38 */ slwi r0, r0, 3 -/* 80186FF0 00183F50 38 63 00 01 */ addi r3, r3, 1 -/* 80186FF4 00183F54 7C 95 02 15 */ add. r4, r21, r0 -/* 80186FF8 00183F58 90 61 00 A0 */ stw r3, 0xa0(r1) -/* 80186FFC 00183F5C 41 82 00 0C */ beq lbl_80187008 -/* 80187000 00183F60 93 44 00 04 */ stw r26, 4(r4) -/* 80187004 00183F64 93 64 00 00 */ stw r27, 0(r4) -lbl_80187008: -/* 80187008 00183F68 80 61 02 40 */ lwz r3, 0x240(r1) -/* 8018700C 00183F6C 38 03 00 01 */ addi r0, r3, 1 -/* 80187010 00183F70 90 01 02 40 */ stw r0, 0x240(r1) -lbl_80187014: -/* 80187014 00183F74 28 17 00 00 */ cmplwi r23, 0 -/* 80187018 00183F78 41 82 00 0C */ beq lbl_80187024 -/* 8018701C 00183F7C 38 00 00 00 */ li r0, 0 -/* 80187020 00183F80 98 01 06 48 */ stb r0, 0x648(r1) -lbl_80187024: -/* 80187024 00183F84 38 00 00 00 */ li r0, 0 -/* 80187028 00183F88 98 01 05 E4 */ stb r0, 0x5e4(r1) -lbl_8018702C: -/* 8018702C 00183F8C 3A 52 00 01 */ addi r18, r18, 1 -lbl_80187030: -/* 80187030 00183F90 2C 12 00 02 */ cmpwi r18, 2 -/* 80187034 00183F94 40 80 00 0C */ bge lbl_80187040 -/* 80187038 00183F98 56 60 06 3F */ clrlwi. r0, r19, 0x18 -/* 8018703C 00183F9C 41 82 FB C8 */ beq lbl_80186C04 -lbl_80187040: -/* 80187040 00183FA0 80 01 09 68 */ lwz r0, 0x968(r1) -/* 80187044 00183FA4 2C 00 00 00 */ cmpwi r0, 0 -/* 80187048 00183FA8 40 82 00 1C */ bne lbl_80187064 -/* 8018704C 00183FAC 7E 23 8B 78 */ mr r3, r17 -/* 80187050 00183FB0 38 81 07 04 */ addi r4, r1, 0x704 -/* 80187054 00183FB4 4B F9 4D D1 */ bl SetPhysicsState__13CPhysicsActorFRC13CPhysicsState -/* 80187058 00183FB8 7F 92 E3 78 */ mr r18, r28 -/* 8018705C 00183FBC 7D CF 73 78 */ mr r15, r14 -/* 80187060 00183FC0 48 00 01 E0 */ b lbl_80187240 -lbl_80187064: -/* 80187064 00183FC4 C0 22 A3 5C */ lfs f1, lbl_805AC07C@sda21(r2) -/* 80187068 00183FC8 39 C0 FF FF */ li r14, -1 -/* 8018706C 00183FCC 38 60 00 00 */ li r3, 0 -/* 80187070 00183FD0 7C 09 03 A6 */ mtctr r0 -/* 80187074 00183FD4 40 81 00 24 */ ble lbl_80187098 -lbl_80187078: -/* 80187078 00183FD8 C0 16 00 00 */ lfs f0, 0(r22) -/* 8018707C 00183FDC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80187080 00183FE0 40 80 00 0C */ bge lbl_8018708C -/* 80187084 00183FE4 FC 20 00 90 */ fmr f1, f0 -/* 80187088 00183FE8 7C 6E 1B 78 */ mr r14, r3 -lbl_8018708C: -/* 8018708C 00183FEC 3A D6 00 04 */ addi r22, r22, 4 -/* 80187090 00183FF0 38 63 00 01 */ addi r3, r3, 1 -/* 80187094 00183FF4 42 00 FF E4 */ bdnz lbl_80187078 -lbl_80187098: -/* 80187098 00183FF8 1C 0E 00 70 */ mulli r0, r14, 0x70 -/* 8018709C 00183FFC 38 81 09 6C */ addi r4, r1, 0x96c -/* 801870A0 00184000 7E 23 8B 78 */ mr r3, r17 -/* 801870A4 00184004 7C 84 02 14 */ add r4, r4, r0 -/* 801870A8 00184008 4B F9 4D 7D */ bl SetPhysicsState__13CPhysicsActorFRC13CPhysicsState -/* 801870AC 0018400C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 801870B0 00184010 7E 03 83 78 */ mr r3, r16 -/* 801870B4 00184014 7E 24 8B 78 */ mr r4, r17 -/* 801870B8 00184018 38 A1 00 2C */ addi r5, r1, 0x2c -/* 801870BC 0018401C B0 01 00 2C */ sth r0, 0x2c(r1) -/* 801870C0 00184020 38 C0 00 17 */ li r6, 0x17 -/* 801870C4 00184024 4B EB CE 0D */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -/* 801870C8 00184028 55 D3 08 3C */ slwi r19, r14, 1 -/* 801870CC 0018402C 55 C3 18 38 */ slwi r3, r14, 3 -/* 801870D0 00184030 7C 14 9A 2E */ lhzx r0, r20, r19 -/* 801870D4 00184034 7E 55 1A 14 */ add r18, r21, r3 -/* 801870D8 00184038 81 F2 00 00 */ lwz r15, 0(r18) -/* 801870DC 0018403C 7E 03 83 78 */ mr r3, r16 -/* 801870E0 00184040 B0 01 00 28 */ sth r0, 0x28(r1) -/* 801870E4 00184044 38 81 00 28 */ addi r4, r1, 0x28 -/* 801870E8 00184048 82 52 00 04 */ lwz r18, 4(r18) -/* 801870EC 0018404C 4B EC 54 89 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 801870F0 00184050 7C 75 1B 79 */ or. r21, r3, r3 -/* 801870F4 00184054 41 82 00 80 */ beq lbl_80187174 -/* 801870F8 00184058 88 01 08 34 */ lbz r0, 0x834(r1) -/* 801870FC 0018405C 28 00 00 00 */ cmplwi r0, 0 -/* 80187100 00184060 40 82 00 20 */ bne lbl_80187120 -/* 80187104 00184064 34 61 08 30 */ addic. r3, r1, 0x830 -/* 80187108 00184068 41 82 00 0C */ beq lbl_80187114 -/* 8018710C 0018406C 7C 14 9A 2E */ lhzx r0, r20, r19 -/* 80187110 00184070 B0 03 00 00 */ sth r0, 0(r3) -lbl_80187114: -/* 80187114 00184074 38 00 00 01 */ li r0, 1 -/* 80187118 00184078 98 01 08 34 */ stb r0, 0x834(r1) -/* 8018711C 0018407C 48 00 00 0C */ b lbl_80187128 -lbl_80187120: -/* 80187120 00184080 7C 14 9A 2E */ lhzx r0, r20, r19 -/* 80187124 00184084 B0 01 08 30 */ sth r0, 0x830(r1) -lbl_80187128: -/* 80187128 00184088 1C 0E 00 60 */ mulli r0, r14, 0x60 -/* 8018712C 0018408C 38 81 08 A8 */ addi r4, r1, 0x8a8 -/* 80187130 00184090 38 61 08 38 */ addi r3, r1, 0x838 -/* 80187134 00184094 7C 84 02 14 */ add r4, r4, r0 -/* 80187138 00184098 4B FF F1 C1 */ bl sub_801862f8 -/* 8018713C 0018409C 7E A4 AB 78 */ mr r4, r21 -/* 80187140 001840A0 38 61 00 58 */ addi r3, r1, 0x58 -/* 80187144 001840A4 4B F2 1C D1 */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" -/* 80187148 001840A8 80 03 00 04 */ lwz r0, 4(r3) -/* 8018714C 001840AC 28 00 00 00 */ cmplwi r0, 0 -/* 80187150 001840B0 41 82 00 24 */ beq lbl_80187174 -/* 80187154 001840B4 A0 11 00 08 */ lhz r0, 8(r17) -/* 80187158 001840B8 7E 03 83 78 */ mr r3, r16 -/* 8018715C 001840BC 7E A4 AB 78 */ mr r4, r21 -/* 80187160 001840C0 38 A1 00 24 */ addi r5, r1, 0x24 -/* 80187164 001840C4 B0 01 00 20 */ sth r0, 0x20(r1) -/* 80187168 001840C8 38 C0 00 1F */ li r6, 0x1f -/* 8018716C 001840CC B0 01 00 24 */ sth r0, 0x24(r1) -/* 80187170 001840D0 4B EB CD 61 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -lbl_80187174: -/* 80187174 001840D4 1C 0E 00 60 */ mulli r0, r14, 0x60 -/* 80187178 001840D8 39 C1 08 A8 */ addi r14, r1, 0x8a8 -/* 8018717C 001840DC 7E 03 83 78 */ mr r3, r16 -/* 80187180 001840E0 7E 25 8B 78 */ mr r5, r17 -/* 80187184 001840E4 7D CE 02 14 */ add r14, r14, r0 -/* 80187188 001840E8 38 8E 00 38 */ addi r4, r14, 0x38 -/* 8018718C 001840EC 4B FF B7 CD */ bl SendMaterialMessage__14CGameCollisionFR13CStateManagerRC13CMaterialListR6CActor -/* 80187190 001840F0 38 00 00 01 */ li r0, 1 -/* 80187194 001840F4 34 61 01 34 */ addic. r3, r1, 0x134 -/* 80187198 001840F8 98 01 01 40 */ stb r0, 0x140(r1) -/* 8018719C 001840FC 38 00 00 00 */ li r0, 0 -/* 801871A0 00184100 98 01 39 98 */ stb r0, 0x3998(r1) -/* 801871A4 00184104 41 82 00 1C */ beq lbl_801871C0 -/* 801871A8 00184108 C0 0E 00 48 */ lfs f0, 0x48(r14) -/* 801871AC 0018410C D0 03 00 00 */ stfs f0, 0(r3) -/* 801871B0 00184110 C0 0E 00 4C */ lfs f0, 0x4c(r14) -/* 801871B4 00184114 D0 03 00 04 */ stfs f0, 4(r3) -/* 801871B8 00184118 C0 0E 00 50 */ lfs f0, 0x50(r14) -/* 801871BC 0018411C D0 03 00 08 */ stfs f0, 8(r3) -lbl_801871C0: -/* 801871C0 00184120 38 71 02 28 */ addi r3, r17, 0x228 -/* 801871C4 00184124 38 01 01 34 */ addi r0, r1, 0x134 -/* 801871C8 00184128 7C 03 00 40 */ cmplw r3, r0 -/* 801871CC 0018412C 41 82 00 6C */ beq lbl_80187238 -/* 801871D0 00184130 88 01 01 40 */ lbz r0, 0x140(r1) -/* 801871D4 00184134 28 00 00 00 */ cmplwi r0, 0 -/* 801871D8 00184138 41 82 00 58 */ beq lbl_80187230 -/* 801871DC 0018413C 88 11 02 34 */ lbz r0, 0x234(r17) -/* 801871E0 00184140 28 00 00 00 */ cmplwi r0, 0 -/* 801871E4 00184144 40 82 00 30 */ bne lbl_80187214 -/* 801871E8 00184148 34 71 02 28 */ addic. r3, r17, 0x228 -/* 801871EC 0018414C 41 82 00 1C */ beq lbl_80187208 -/* 801871F0 00184150 C0 01 01 34 */ lfs f0, 0x134(r1) -/* 801871F4 00184154 D0 03 00 00 */ stfs f0, 0(r3) -/* 801871F8 00184158 C0 01 01 38 */ lfs f0, 0x138(r1) -/* 801871FC 0018415C D0 03 00 04 */ stfs f0, 4(r3) -/* 80187200 00184160 C0 01 01 3C */ lfs f0, 0x13c(r1) -/* 80187204 00184164 D0 03 00 08 */ stfs f0, 8(r3) -lbl_80187208: -/* 80187208 00184168 38 00 00 01 */ li r0, 1 -/* 8018720C 0018416C 98 11 02 34 */ stb r0, 0x234(r17) -/* 80187210 00184170 48 00 00 28 */ b lbl_80187238 -lbl_80187214: -/* 80187214 00184174 C0 01 01 34 */ lfs f0, 0x134(r1) -/* 80187218 00184178 D0 03 00 00 */ stfs f0, 0(r3) -/* 8018721C 0018417C C0 01 01 38 */ lfs f0, 0x138(r1) -/* 80187220 00184180 D0 03 00 04 */ stfs f0, 4(r3) -/* 80187224 00184184 C0 01 01 3C */ lfs f0, 0x13c(r1) -/* 80187228 00184188 D0 03 00 08 */ stfs f0, 8(r3) -/* 8018722C 0018418C 48 00 00 0C */ b lbl_80187238 -lbl_80187230: -/* 80187230 00184190 38 00 00 00 */ li r0, 0 -/* 80187234 00184194 98 11 02 34 */ stb r0, 0x234(r17) -lbl_80187238: -/* 80187238 00184198 38 00 00 00 */ li r0, 0 -/* 8018723C 0018419C 98 01 01 40 */ stb r0, 0x140(r1) -lbl_80187240: -/* 80187240 001841A0 80 A1 02 40 */ lwz r5, 0x240(r1) -/* 80187244 001841A4 38 60 00 00 */ li r3, 0 -/* 80187248 001841A8 2C 05 00 00 */ cmpwi r5, 0 -/* 8018724C 001841AC 40 81 00 40 */ ble lbl_8018728C -/* 80187250 001841B0 2C 05 00 08 */ cmpwi r5, 8 -/* 80187254 001841B4 38 85 FF F8 */ addi r4, r5, -8 -/* 80187258 001841B8 40 81 00 20 */ ble lbl_80187278 -/* 8018725C 001841BC 38 04 00 07 */ addi r0, r4, 7 -/* 80187260 001841C0 54 00 E8 FE */ srwi r0, r0, 3 -/* 80187264 001841C4 7C 09 03 A6 */ mtctr r0 -/* 80187268 001841C8 2C 04 00 00 */ cmpwi r4, 0 -/* 8018726C 001841CC 40 81 00 0C */ ble lbl_80187278 -lbl_80187270: -/* 80187270 001841D0 38 63 00 08 */ addi r3, r3, 8 -/* 80187274 001841D4 42 00 FF FC */ bdnz lbl_80187270 -lbl_80187278: -/* 80187278 001841D8 7C 03 28 50 */ subf r0, r3, r5 -/* 8018727C 001841DC 7C 09 03 A6 */ mtctr r0 -/* 80187280 001841E0 7C 03 28 00 */ cmpw r3, r5 -/* 80187284 001841E4 40 80 00 08 */ bge lbl_8018728C -lbl_80187288: -/* 80187288 001841E8 42 00 00 00 */ bdnz lbl_80187288 -lbl_8018728C: -/* 8018728C 001841EC 80 A1 00 A0 */ lwz r5, 0xa0(r1) -/* 80187290 001841F0 38 60 00 00 */ li r3, 0 -/* 80187294 001841F4 90 61 02 40 */ stw r3, 0x240(r1) -/* 80187298 001841F8 2C 05 00 00 */ cmpwi r5, 0 -/* 8018729C 001841FC 40 81 00 40 */ ble lbl_801872DC -/* 801872A0 00184200 2C 05 00 08 */ cmpwi r5, 8 -/* 801872A4 00184204 38 85 FF F8 */ addi r4, r5, -8 -/* 801872A8 00184208 40 81 00 20 */ ble lbl_801872C8 -/* 801872AC 0018420C 38 04 00 07 */ addi r0, r4, 7 -/* 801872B0 00184210 54 00 E8 FE */ srwi r0, r0, 3 -/* 801872B4 00184214 7C 09 03 A6 */ mtctr r0 -/* 801872B8 00184218 2C 04 00 00 */ cmpwi r4, 0 -/* 801872BC 0018421C 40 81 00 0C */ ble lbl_801872C8 -lbl_801872C0: -/* 801872C0 00184220 38 63 00 08 */ addi r3, r3, 8 -/* 801872C4 00184224 42 00 FF FC */ bdnz lbl_801872C0 -lbl_801872C8: -/* 801872C8 00184228 7C 03 28 50 */ subf r0, r3, r5 -/* 801872CC 0018422C 7C 09 03 A6 */ mtctr r0 -/* 801872D0 00184230 7C 03 28 00 */ cmpw r3, r5 -/* 801872D4 00184234 40 80 00 08 */ bge lbl_801872DC -lbl_801872D8: -/* 801872D8 00184238 42 00 00 00 */ bdnz lbl_801872D8 -lbl_801872DC: -/* 801872DC 0018423C 80 A1 08 A4 */ lwz r5, 0x8a4(r1) -/* 801872E0 00184240 38 60 00 00 */ li r3, 0 -/* 801872E4 00184244 90 61 00 A0 */ stw r3, 0xa0(r1) -/* 801872E8 00184248 2C 05 00 00 */ cmpwi r5, 0 -/* 801872EC 0018424C 40 81 00 40 */ ble lbl_8018732C -/* 801872F0 00184250 2C 05 00 08 */ cmpwi r5, 8 -/* 801872F4 00184254 38 85 FF F8 */ addi r4, r5, -8 -/* 801872F8 00184258 40 81 00 20 */ ble lbl_80187318 -/* 801872FC 0018425C 38 04 00 07 */ addi r0, r4, 7 -/* 80187300 00184260 54 00 E8 FE */ srwi r0, r0, 3 -/* 80187304 00184264 7C 09 03 A6 */ mtctr r0 -/* 80187308 00184268 2C 04 00 00 */ cmpwi r4, 0 -/* 8018730C 0018426C 40 81 00 0C */ ble lbl_80187318 -lbl_80187310: -/* 80187310 00184270 38 63 00 08 */ addi r3, r3, 8 -/* 80187314 00184274 42 00 FF FC */ bdnz lbl_80187310 -lbl_80187318: -/* 80187318 00184278 7C 03 28 50 */ subf r0, r3, r5 -/* 8018731C 0018427C 7C 09 03 A6 */ mtctr r0 -/* 80187320 00184280 7C 03 28 00 */ cmpw r3, r5 -/* 80187324 00184284 40 80 00 08 */ bge lbl_8018732C -lbl_80187328: -/* 80187328 00184288 42 00 00 00 */ bdnz lbl_80187328 -lbl_8018732C: -/* 8018732C 0018428C 80 A1 01 F8 */ lwz r5, 0x1f8(r1) -/* 80187330 00184290 38 60 00 00 */ li r3, 0 -/* 80187334 00184294 90 61 08 A4 */ stw r3, 0x8a4(r1) -/* 80187338 00184298 2C 05 00 00 */ cmpwi r5, 0 -/* 8018733C 0018429C 40 81 00 40 */ ble lbl_8018737C -/* 80187340 001842A0 2C 05 00 08 */ cmpwi r5, 8 -/* 80187344 001842A4 38 85 FF F8 */ addi r4, r5, -8 -/* 80187348 001842A8 40 81 00 20 */ ble lbl_80187368 -/* 8018734C 001842AC 38 04 00 07 */ addi r0, r4, 7 -/* 80187350 001842B0 54 00 E8 FE */ srwi r0, r0, 3 -/* 80187354 001842B4 7C 09 03 A6 */ mtctr r0 -/* 80187358 001842B8 2C 04 00 00 */ cmpwi r4, 0 -/* 8018735C 001842BC 40 81 00 0C */ ble lbl_80187368 -lbl_80187360: -/* 80187360 001842C0 38 63 00 08 */ addi r3, r3, 8 -/* 80187364 001842C4 42 00 FF FC */ bdnz lbl_80187360 -lbl_80187368: -/* 80187368 001842C8 7C 03 28 50 */ subf r0, r3, r5 -/* 8018736C 001842CC 7C 09 03 A6 */ mtctr r0 -/* 80187370 001842D0 7C 03 28 00 */ cmpw r3, r5 -/* 80187374 001842D4 40 80 00 08 */ bge lbl_8018737C -lbl_80187378: -/* 80187378 001842D8 42 00 00 00 */ bdnz lbl_80187378 -lbl_8018737C: -/* 8018737C 001842DC 80 A1 09 68 */ lwz r5, 0x968(r1) -/* 80187380 001842E0 38 60 00 00 */ li r3, 0 -/* 80187384 001842E4 90 61 01 F8 */ stw r3, 0x1f8(r1) -/* 80187388 001842E8 2C 05 00 00 */ cmpwi r5, 0 -/* 8018738C 001842EC 40 81 00 40 */ ble lbl_801873CC -/* 80187390 001842F0 2C 05 00 08 */ cmpwi r5, 8 -/* 80187394 001842F4 38 85 FF F8 */ addi r4, r5, -8 -/* 80187398 001842F8 40 81 00 20 */ ble lbl_801873B8 -/* 8018739C 001842FC 38 04 00 07 */ addi r0, r4, 7 -/* 801873A0 00184300 54 00 E8 FE */ srwi r0, r0, 3 -/* 801873A4 00184304 7C 09 03 A6 */ mtctr r0 -/* 801873A8 00184308 2C 04 00 00 */ cmpwi r4, 0 -/* 801873AC 0018430C 40 81 00 0C */ ble lbl_801873B8 -lbl_801873B0: -/* 801873B0 00184310 38 63 00 08 */ addi r3, r3, 8 -/* 801873B4 00184314 42 00 FF FC */ bdnz lbl_801873B0 -lbl_801873B8: -/* 801873B8 00184318 7C 03 28 50 */ subf r0, r3, r5 -/* 801873BC 0018431C 7C 09 03 A6 */ mtctr r0 -/* 801873C0 00184320 7C 03 28 00 */ cmpw r3, r5 -/* 801873C4 00184324 40 80 00 08 */ bge lbl_801873CC -lbl_801873C8: -/* 801873C8 00184328 42 00 00 00 */ bdnz lbl_801873C8 -lbl_801873CC: -/* 801873CC 0018432C 38 00 00 00 */ li r0, 0 -/* 801873D0 00184330 90 01 09 68 */ stw r0, 0x968(r1) -/* 801873D4 00184334 98 01 07 00 */ stb r0, 0x700(r1) -lbl_801873D8: -/* 801873D8 00184338 34 01 08 20 */ addic. r0, r1, 0x820 -/* 801873DC 0018433C 41 82 01 28 */ beq lbl_80187504 -/* 801873E0 00184340 38 00 00 00 */ li r0, 0 -/* 801873E4 00184344 98 01 08 2C */ stb r0, 0x82c(r1) -/* 801873E8 00184348 48 00 01 1C */ b lbl_80187504 -lbl_801873EC: -/* 801873EC 0018434C 38 60 00 01 */ li r3, 1 -/* 801873F0 00184350 55 C0 06 3F */ clrlwi. r0, r14, 0x18 -/* 801873F4 00184354 98 A1 05 78 */ stb r5, 0x578(r1) -/* 801873F8 00184358 98 61 05 30 */ stb r3, 0x530(r1) -/* 801873FC 0018435C 41 82 00 0C */ beq lbl_80187408 -/* 80187400 00184360 C0 02 A3 60 */ lfs f0, lbl_805AC080@sda21(r2) -/* 80187404 00184364 48 00 00 08 */ b lbl_8018740C -lbl_80187408: -/* 80187408 00184368 C0 02 A3 10 */ lfs f0, lbl_805AC030@sda21(r2) -lbl_8018740C: -/* 8018740C 0018436C 55 C0 06 3F */ clrlwi. r0, r14, 0x18 -/* 80187410 00184370 D0 01 05 34 */ stfs f0, 0x534(r1) -/* 80187414 00184374 41 82 00 0C */ beq lbl_80187420 -/* 80187418 00184378 C0 02 A3 64 */ lfs f0, lbl_805AC084@sda21(r2) -/* 8018741C 0018437C 48 00 00 08 */ b lbl_80187424 -lbl_80187420: -/* 80187420 00184380 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) -lbl_80187424: -/* 80187424 00184384 55 C0 06 3F */ clrlwi. r0, r14, 0x18 -/* 80187428 00184388 D0 01 05 38 */ stfs f0, 0x538(r1) -/* 8018742C 0018438C 41 82 00 0C */ beq lbl_80187438 -/* 80187430 00184390 C0 02 A3 68 */ lfs f0, lbl_805AC088@sda21(r2) -/* 80187434 00184394 48 00 00 08 */ b lbl_8018743C -lbl_80187438: -/* 80187438 00184398 C0 02 A3 30 */ lfs f0, lbl_805AC050@sda21(r2) -lbl_8018743C: -/* 8018743C 0018439C 55 C0 06 3F */ clrlwi. r0, r14, 0x18 -/* 80187440 001843A0 D0 01 05 3C */ stfs f0, 0x53c(r1) -/* 80187444 001843A4 41 82 00 0C */ beq lbl_80187450 -/* 80187448 001843A8 C0 02 A3 28 */ lfs f0, lbl_805AC048@sda21(r2) -/* 8018744C 001843AC 48 00 00 08 */ b lbl_80187454 -lbl_80187450: -/* 80187450 001843B0 C0 02 A3 34 */ lfs f0, lbl_805AC054@sda21(r2) -lbl_80187454: -/* 80187454 001843B4 55 C0 06 3F */ clrlwi. r0, r14, 0x18 -/* 80187458 001843B8 D0 01 05 40 */ stfs f0, 0x540(r1) -/* 8018745C 001843BC 41 82 00 0C */ beq lbl_80187468 -/* 80187460 001843C0 C0 82 A3 40 */ lfs f4, lbl_805AC060@sda21(r2) -/* 80187464 001843C4 48 00 00 08 */ b lbl_8018746C -lbl_80187468: -/* 80187468 001843C8 C0 82 A3 18 */ lfs f4, lbl_805AC038@sda21(r2) -lbl_8018746C: -/* 8018746C 001843CC C0 62 A3 38 */ lfs f3, lbl_805AC058@sda21(r2) -/* 80187470 001843D0 38 80 00 00 */ li r4, 0 -/* 80187474 001843D4 C0 42 A3 18 */ lfs f2, lbl_805AC038@sda21(r2) -/* 80187478 001843D8 38 60 00 04 */ li r3, 4 -/* 8018747C 001843DC C0 22 A3 10 */ lfs f1, lbl_805AC030@sda21(r2) -/* 80187480 001843E0 55 C0 06 3F */ clrlwi. r0, r14, 0x18 -/* 80187484 001843E4 C0 02 A3 6C */ lfs f0, lbl_805AC08C@sda21(r2) -/* 80187488 001843E8 D0 81 05 44 */ stfs f4, 0x544(r1) -/* 8018748C 001843EC 98 81 05 48 */ stb r4, 0x548(r1) -/* 80187490 001843F0 98 81 05 49 */ stb r4, 0x549(r1) -/* 80187494 001843F4 98 81 05 4A */ stb r4, 0x54a(r1) -/* 80187498 001843F8 90 61 05 4C */ stw r3, 0x54c(r1) -/* 8018749C 001843FC D0 61 05 50 */ stfs f3, 0x550(r1) -/* 801874A0 00184400 D0 41 05 54 */ stfs f2, 0x554(r1) -/* 801874A4 00184404 D0 21 05 58 */ stfs f1, 0x558(r1) -/* 801874A8 00184408 D0 01 05 5C */ stfs f0, 0x55c(r1) -/* 801874AC 0018440C 41 82 00 0C */ beq lbl_801874B8 -/* 801874B0 00184410 C0 02 A3 40 */ lfs f0, lbl_805AC060@sda21(r2) -/* 801874B4 00184414 48 00 00 08 */ b lbl_801874BC -lbl_801874B8: -/* 801874B8 00184418 C0 02 A3 40 */ lfs f0, lbl_805AC060@sda21(r2) -lbl_801874BC: -/* 801874BC 0018441C D0 01 05 60 */ stfs f0, 0x560(r1) -/* 801874C0 00184420 7F A3 EB 78 */ mr r3, r29 -/* 801874C4 00184424 7E 04 83 78 */ mr r4, r16 -/* 801874C8 00184428 4B E8 D6 79 */ bl GetMaximumPlayerPositiveVerticalVelocity__7CPlayerCFRC13CStateManager -/* 801874CC 0018442C D0 21 05 68 */ stfs f1, 0x568(r1) -/* 801874D0 00184430 FC 20 B8 90 */ fmr f1, f23 -/* 801874D4 00184434 7E 04 83 78 */ mr r4, r16 -/* 801874D8 00184438 7E 25 8B 78 */ mr r5, r17 -/* 801874DC 0018443C 38 61 00 50 */ addi r3, r1, 0x50 -/* 801874E0 00184440 38 C1 31 94 */ addi r6, r1, 0x3194 -/* 801874E4 00184444 38 E1 16 50 */ addi r7, r1, 0x1650 -/* 801874E8 00184448 39 01 05 30 */ addi r8, r1, 0x530 -/* 801874EC 0018444C 39 21 08 30 */ addi r9, r1, 0x830 -/* 801874F0 00184450 4B FF E5 21 */ bl "MoveObjectAnalytical__15CGroundMovementFR13CStateManagerR13CPhysicsActorfRCQ24rstl32reserved_vector<9TUniqueId,1024>R19CAreaCollisionCacheRfRCQ215CGroundMovement16SMovementOptions" -/* 801874F4 00184454 38 00 00 00 */ li r0, 0 -/* 801874F8 00184458 81 E1 00 50 */ lwz r15, 0x50(r1) -/* 801874FC 0018445C 98 01 05 78 */ stb r0, 0x578(r1) -/* 80187500 00184460 82 41 00 54 */ lwz r18, 0x54(r1) -lbl_80187504: -/* 80187504 00184464 88 01 39 98 */ lbz r0, 0x3998(r1) -/* 80187508 00184468 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 8018750C 0018446C 41 82 04 8C */ beq lbl_80187998 -/* 80187510 00184470 38 61 04 D0 */ addi r3, r1, 0x4d0 -/* 80187514 00184474 38 80 00 00 */ li r4, 0 -/* 80187518 00184478 48 14 6C 71 */ bl __ct__14CCollisionInfoFQ214CCollisionInfo8EInvalid -/* 8018751C 0018447C 7E 23 8B 78 */ mr r3, r17 -/* 80187520 00184480 81 91 00 00 */ lwz r12, 0(r17) -/* 80187524 00184484 81 8C 00 78 */ lwz r12, 0x78(r12) -/* 80187528 00184488 7D 89 03 A6 */ mtctr r12 -/* 8018752C 0018448C 4E 80 04 21 */ bctrl -/* 80187530 00184490 C8 02 A3 70 */ lfd f0, lbl_805AC090@sda21(r2) -/* 80187534 00184494 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80187538 00184498 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8018753C 0018449C D8 21 00 88 */ stfd f1, 0x88(r1) -/* 80187540 001844A0 C3 02 A3 18 */ lfs f24, lbl_805AC038@sda21(r2) -/* 80187544 001844A4 B0 01 00 30 */ sth r0, 0x30(r1) -/* 80187548 001844A8 40 81 01 38 */ ble lbl_80187680 -/* 8018754C 001844AC 38 61 03 04 */ addi r3, r1, 0x304 -/* 80187550 001844B0 38 91 00 34 */ addi r4, r17, 0x34 -/* 80187554 001844B4 48 18 B6 21 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80187558 001844B8 C0 61 03 30 */ lfs f3, 0x330(r1) -/* 8018755C 001844BC 7E 23 8B 78 */ mr r3, r17 -/* 80187560 001844C0 C0 02 A3 78 */ lfs f0, lbl_805AC098@sda21(r2) -/* 80187564 001844C4 C0 21 03 20 */ lfs f1, 0x320(r1) -/* 80187568 001844C8 C0 42 A3 18 */ lfs f2, lbl_805AC038@sda21(r2) -/* 8018756C 001844CC EC 03 00 2A */ fadds f0, f3, f0 -/* 80187570 001844D0 C0 61 03 10 */ lfs f3, 0x310(r1) -/* 80187574 001844D4 EC 21 10 2A */ fadds f1, f1, f2 -/* 80187578 001844D8 EC 43 10 2A */ fadds f2, f3, f2 -/* 8018757C 001844DC D0 01 03 30 */ stfs f0, 0x330(r1) -/* 80187580 001844E0 D0 21 03 20 */ stfs f1, 0x320(r1) -/* 80187584 001844E4 D0 41 03 10 */ stfs f2, 0x310(r1) -/* 80187588 001844E8 4B EC C3 35 */ bl GetMaterialFilter__6CActorCFv -/* 8018758C 001844EC 7C 6E 1B 78 */ mr r14, r3 -/* 80187590 001844F0 7E 23 8B 78 */ mr r3, r17 -/* 80187594 001844F4 81 91 00 00 */ lwz r12, 0(r17) -/* 80187598 001844F8 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 8018759C 001844FC 7D 89 03 A6 */ mtctr r12 -/* 801875A0 00184500 4E 80 04 21 */ bctrl -/* 801875A4 00184504 7C 65 1B 78 */ mr r5, r3 -/* 801875A8 00184508 7E 03 83 78 */ mr r3, r16 -/* 801875AC 0018450C 7D C7 73 78 */ mr r7, r14 -/* 801875B0 00184510 38 81 16 50 */ addi r4, r1, 0x1650 -/* 801875B4 00184514 38 C1 03 04 */ addi r6, r1, 0x304 -/* 801875B8 00184518 39 01 31 94 */ addi r8, r1, 0x3194 -/* 801875BC 0018451C 4B FF CF A9 */ bl "DetectCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 801875C0 00184520 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801875C4 00184524 40 82 00 3C */ bne lbl_80187600 -/* 801875C8 00184528 C0 41 03 10 */ lfs f2, 0x310(r1) -/* 801875CC 0018452C 7E 23 8B 78 */ mr r3, r17 -/* 801875D0 00184530 C0 21 03 20 */ lfs f1, 0x320(r1) -/* 801875D4 00184534 38 81 01 28 */ addi r4, r1, 0x128 -/* 801875D8 00184538 C0 01 03 30 */ lfs f0, 0x330(r1) -/* 801875DC 0018453C D0 41 01 28 */ stfs f2, 0x128(r1) -/* 801875E0 00184540 C3 02 A3 78 */ lfs f24, lbl_805AC098@sda21(r2) -/* 801875E4 00184544 D0 21 01 2C */ stfs f1, 0x12c(r1) -/* 801875E8 00184548 D0 01 01 30 */ stfs f0, 0x130(r1) -/* 801875EC 0018454C 4B EC B8 A1 */ bl SetTranslation__6CActorFRC9CVector3f -/* 801875F0 00184550 C8 21 00 88 */ lfd f1, 0x88(r1) -/* 801875F4 00184554 C0 02 A3 78 */ lfs f0, lbl_805AC098@sda21(r2) -/* 801875F8 00184558 FC 01 00 2A */ fadd f0, f1, f0 -/* 801875FC 0018455C D8 01 00 88 */ stfd f0, 0x88(r1) -lbl_80187600: -/* 80187600 00184560 C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) -/* 80187604 00184564 7E 23 8B 78 */ mr r3, r17 -/* 80187608 00184568 C0 02 A3 58 */ lfs f0, lbl_805AC078@sda21(r2) -/* 8018760C 0018456C D0 21 01 10 */ stfs f1, 0x110(r1) -/* 80187610 00184570 D0 21 01 14 */ stfs f1, 0x114(r1) -/* 80187614 00184574 80 A1 01 10 */ lwz r5, 0x110(r1) -/* 80187618 00184578 D0 01 01 18 */ stfs f0, 0x118(r1) -/* 8018761C 0018457C 80 81 01 14 */ lwz r4, 0x114(r1) -/* 80187620 00184580 80 01 01 18 */ lwz r0, 0x118(r1) -/* 80187624 00184584 90 A1 01 1C */ stw r5, 0x11c(r1) -/* 80187628 00184588 90 81 01 20 */ stw r4, 0x120(r1) -/* 8018762C 0018458C 90 01 01 24 */ stw r0, 0x124(r1) -/* 80187630 00184590 4B EC C2 8D */ bl GetMaterialFilter__6CActorCFv -/* 80187634 00184594 7C 6E 1B 78 */ mr r14, r3 -/* 80187638 00184598 7E 23 8B 78 */ mr r3, r17 -/* 8018763C 0018459C 81 91 00 00 */ lwz r12, 0(r17) -/* 80187640 001845A0 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 80187644 001845A4 7D 89 03 A6 */ mtctr r12 -/* 80187648 001845A8 4E 80 04 21 */ bctrl -/* 8018764C 001845AC 38 01 04 D0 */ addi r0, r1, 0x4d0 -/* 80187650 001845B0 7C 65 1B 78 */ mr r5, r3 -/* 80187654 001845B4 90 01 00 08 */ stw r0, 8(r1) -/* 80187658 001845B8 38 01 00 88 */ addi r0, r1, 0x88 -/* 8018765C 001845BC 7E 03 83 78 */ mr r3, r16 -/* 80187660 001845C0 7D C7 73 78 */ mr r7, r14 -/* 80187664 001845C4 90 01 00 0C */ stw r0, 0xc(r1) -/* 80187668 001845C8 38 81 16 50 */ addi r4, r1, 0x1650 -/* 8018766C 001845CC 38 D1 00 34 */ addi r6, r17, 0x34 -/* 80187670 001845D0 39 01 31 94 */ addi r8, r1, 0x3194 -/* 80187674 001845D4 39 21 01 1C */ addi r9, r1, 0x11c -/* 80187678 001845D8 39 41 00 30 */ addi r10, r1, 0x30 -/* 8018767C 001845DC 4B FF CC 71 */ bl "DetectCollision_Cached_Moving__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>9CVector3fR9TUniqueIdR14CCollisionInfoRd" -lbl_80187680: -/* 80187680 001845E0 A0 81 00 30 */ lhz r4, 0x30(r1) -/* 80187684 001845E4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80187688 001845E8 7C 04 00 40 */ cmplw r4, r0 -/* 8018768C 001845EC 41 82 00 38 */ beq lbl_801876C4 -/* 80187690 001845F0 88 01 08 34 */ lbz r0, 0x834(r1) -/* 80187694 001845F4 28 00 00 00 */ cmplwi r0, 0 -/* 80187698 001845F8 40 82 00 1C */ bne lbl_801876B4 -/* 8018769C 001845FC 34 61 08 30 */ addic. r3, r1, 0x830 -/* 801876A0 00184600 41 82 00 08 */ beq lbl_801876A8 -/* 801876A4 00184604 B0 83 00 00 */ sth r4, 0(r3) -lbl_801876A8: -/* 801876A8 00184608 38 00 00 01 */ li r0, 1 -/* 801876AC 0018460C 98 01 08 34 */ stb r0, 0x834(r1) -/* 801876B0 00184610 48 00 00 08 */ b lbl_801876B8 -lbl_801876B4: -/* 801876B4 00184614 B0 81 08 30 */ sth r4, 0x830(r1) -lbl_801876B8: -/* 801876B8 00184618 38 61 08 38 */ addi r3, r1, 0x838 -/* 801876BC 0018461C 38 81 04 D0 */ addi r4, r1, 0x4d0 -/* 801876C0 00184620 4B FF EC 39 */ bl sub_801862f8 -lbl_801876C4: -/* 801876C4 00184624 88 01 05 00 */ lbz r0, 0x500(r1) -/* 801876C8 00184628 28 00 00 00 */ cmplwi r0, 0 -/* 801876CC 0018462C 41 82 00 1C */ beq lbl_801876E8 -/* 801876D0 00184630 39 C1 05 08 */ addi r14, r1, 0x508 -/* 801876D4 00184634 38 81 05 18 */ addi r4, r1, 0x518 -/* 801876D8 00184638 7D C3 73 78 */ mr r3, r14 -/* 801876DC 0018463C 4B FF B1 2D */ bl CanBlock__14CGameCollisionFRC13CMaterialListRC9CVector3f -/* 801876E0 00184640 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801876E4 00184644 40 82 00 F4 */ bne lbl_801877D8 -lbl_801876E8: -/* 801876E8 00184648 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) -/* 801876EC 0018464C FC 18 00 40 */ fcmpo cr0, f24, f0 -/* 801876F0 00184650 40 81 00 38 */ ble lbl_80187728 -/* 801876F4 00184654 38 61 02 D4 */ addi r3, r1, 0x2d4 -/* 801876F8 00184658 38 91 00 34 */ addi r4, r17, 0x34 -/* 801876FC 0018465C 48 18 B4 79 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 80187700 00184660 C0 01 03 00 */ lfs f0, 0x300(r1) -/* 80187704 00184664 C0 21 02 F0 */ lfs f1, 0x2f0(r1) -/* 80187708 00184668 C0 42 A3 18 */ lfs f2, lbl_805AC038@sda21(r2) -/* 8018770C 0018466C EC 00 C0 28 */ fsubs f0, f0, f24 -/* 80187710 00184670 C0 61 02 E0 */ lfs f3, 0x2e0(r1) -/* 80187714 00184674 EC 21 10 28 */ fsubs f1, f1, f2 -/* 80187718 00184678 EC 43 10 28 */ fsubs f2, f3, f2 -/* 8018771C 0018467C D0 01 03 00 */ stfs f0, 0x300(r1) -/* 80187720 00184680 D0 21 02 F0 */ stfs f1, 0x2f0(r1) -/* 80187724 00184684 D0 41 02 E0 */ stfs f2, 0x2e0(r1) -lbl_80187728: -/* 80187728 00184688 88 01 05 00 */ lbz r0, 0x500(r1) -/* 8018772C 0018468C 28 00 00 00 */ cmplwi r0, 0 -/* 80187730 00184690 41 82 00 14 */ beq lbl_80187744 -/* 80187734 00184694 88 1D 09 C5 */ lbz r0, 0x9c5(r29) -/* 80187738 00184698 38 60 00 01 */ li r3, 1 -/* 8018773C 0018469C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 80187740 001846A0 98 1D 09 C5 */ stb r0, 0x9c5(r29) -lbl_80187744: -/* 80187744 001846A4 FC 20 B8 90 */ fmr f1, f23 -/* 80187748 001846A8 7E 23 8B 78 */ mr r3, r17 -/* 8018774C 001846AC 7E 04 83 78 */ mr r4, r16 -/* 80187750 001846B0 48 00 24 E1 */ bl CheckFalling__15CGroundMovementFR13CPhysicsActorR13CStateManagerf -/* 80187754 001846B4 38 71 02 28 */ addi r3, r17, 0x228 -/* 80187758 001846B8 38 01 01 00 */ addi r0, r1, 0x100 -/* 8018775C 001846BC 38 80 00 00 */ li r4, 0 -/* 80187760 001846C0 7C 03 00 40 */ cmplw r3, r0 -/* 80187764 001846C4 98 81 01 0C */ stb r4, 0x10c(r1) -/* 80187768 001846C8 41 82 00 64 */ beq lbl_801877CC -/* 8018776C 001846CC 28 04 00 00 */ cmplwi r4, 0 -/* 80187770 001846D0 41 82 00 58 */ beq lbl_801877C8 -/* 80187774 001846D4 88 11 02 34 */ lbz r0, 0x234(r17) -/* 80187778 001846D8 28 00 00 00 */ cmplwi r0, 0 -/* 8018777C 001846DC 40 82 00 30 */ bne lbl_801877AC -/* 80187780 001846E0 34 71 02 28 */ addic. r3, r17, 0x228 -/* 80187784 001846E4 41 82 00 1C */ beq lbl_801877A0 -/* 80187788 001846E8 C0 01 01 00 */ lfs f0, 0x100(r1) -/* 8018778C 001846EC D0 03 00 00 */ stfs f0, 0(r3) -/* 80187790 001846F0 C0 01 01 04 */ lfs f0, 0x104(r1) -/* 80187794 001846F4 D0 03 00 04 */ stfs f0, 4(r3) -/* 80187798 001846F8 C0 01 01 08 */ lfs f0, 0x108(r1) -/* 8018779C 001846FC D0 03 00 08 */ stfs f0, 8(r3) -lbl_801877A0: -/* 801877A0 00184700 38 00 00 01 */ li r0, 1 -/* 801877A4 00184704 98 11 02 34 */ stb r0, 0x234(r17) -/* 801877A8 00184708 48 00 00 24 */ b lbl_801877CC -lbl_801877AC: -/* 801877AC 0018470C C0 01 01 00 */ lfs f0, 0x100(r1) -/* 801877B0 00184710 D0 03 00 00 */ stfs f0, 0(r3) -/* 801877B4 00184714 C0 01 01 04 */ lfs f0, 0x104(r1) -/* 801877B8 00184718 D0 03 00 04 */ stfs f0, 4(r3) -/* 801877BC 0018471C C0 01 01 08 */ lfs f0, 0x108(r1) -/* 801877C0 00184720 D0 03 00 08 */ stfs f0, 8(r3) -/* 801877C4 00184724 48 00 00 08 */ b lbl_801877CC -lbl_801877C8: -/* 801877C8 00184728 98 91 02 34 */ stb r4, 0x234(r17) -lbl_801877CC: -/* 801877CC 0018472C 38 00 00 00 */ li r0, 0 -/* 801877D0 00184730 98 01 01 0C */ stb r0, 0x10c(r1) -/* 801877D4 00184734 48 00 01 C4 */ b lbl_80187998 -lbl_801877D8: -/* 801877D8 00184738 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 801877DC 0018473C 7E 03 83 78 */ mr r3, r16 -/* 801877E0 00184740 7E 24 8B 78 */ mr r4, r17 -/* 801877E4 00184744 38 A1 00 1C */ addi r5, r1, 0x1c -/* 801877E8 00184748 B0 01 00 1C */ sth r0, 0x1c(r1) -/* 801877EC 0018474C 38 C0 00 17 */ li r6, 0x17 -/* 801877F0 00184750 4B EB C6 E1 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -/* 801877F4 00184754 C8 41 00 88 */ lfd f2, 0x88(r1) -/* 801877F8 00184758 C8 22 A3 48 */ lfd f1, lbl_805AC068@sda21(r2) -/* 801877FC 0018475C C8 0D 8E D0 */ lfd f0, lbl_805A7A90@sda21(r13) -/* 80187800 00184760 FC 22 08 28 */ fsub f1, f2, f1 -/* 80187804 00184764 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80187808 00184768 D8 21 00 48 */ stfd f1, 0x48(r1) -/* 8018780C 0018476C 40 80 00 0C */ bge lbl_80187818 -/* 80187810 00184770 38 6D 8E D0 */ addi r3, r13, lbl_805A7A90@sda21 -/* 80187814 00184774 48 00 00 08 */ b lbl_8018781C -lbl_80187818: -/* 80187818 00184778 38 61 00 48 */ addi r3, r1, 0x48 -lbl_8018781C: -/* 8018781C 0018477C C8 23 00 00 */ lfd f1, 0(r3) -/* 80187820 00184780 7E 23 8B 78 */ mr r3, r17 -/* 80187824 00184784 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) -/* 80187828 00184788 38 81 00 F4 */ addi r4, r1, 0xf4 -/* 8018782C 0018478C FC 60 08 18 */ frsp f3, f1 -/* 80187830 00184790 D8 21 00 88 */ stfd f1, 0x88(r1) -/* 80187834 00184794 C0 42 A3 10 */ lfs f2, lbl_805AC030@sda21(r2) -/* 80187838 00184798 C1 11 00 60 */ lfs f8, 0x60(r17) -/* 8018783C 0018479C EC 83 00 32 */ fmuls f4, f3, f0 -/* 80187840 001847A0 C0 F1 00 50 */ lfs f7, 0x50(r17) -/* 80187844 001847A4 EC 63 00 B2 */ fmuls f3, f3, f2 -/* 80187848 001847A8 C0 31 00 40 */ lfs f1, 0x40(r17) -/* 8018784C 001847AC D0 01 00 D0 */ stfs f0, 0xd0(r1) -/* 80187850 001847B0 EC C7 20 28 */ fsubs f6, f7, f4 -/* 80187854 001847B4 EC A8 18 28 */ fsubs f5, f8, f3 -/* 80187858 001847B8 D0 01 00 D4 */ stfs f0, 0xd4(r1) -/* 8018785C 001847BC EC 01 20 28 */ fsubs f0, f1, f4 -/* 80187860 001847C0 D0 41 00 D8 */ stfs f2, 0xd8(r1) -/* 80187864 001847C4 D0 81 00 DC */ stfs f4, 0xdc(r1) -/* 80187868 001847C8 D0 81 00 E0 */ stfs f4, 0xe0(r1) -/* 8018786C 001847CC D0 61 00 E4 */ stfs f3, 0xe4(r1) -/* 80187870 001847D0 D0 21 00 E8 */ stfs f1, 0xe8(r1) -/* 80187874 001847D4 D0 E1 00 EC */ stfs f7, 0xec(r1) -/* 80187878 001847D8 D1 01 00 F0 */ stfs f8, 0xf0(r1) -/* 8018787C 001847DC D0 01 00 F4 */ stfs f0, 0xf4(r1) -/* 80187880 001847E0 D0 C1 00 F8 */ stfs f6, 0xf8(r1) -/* 80187884 001847E4 D0 A1 00 FC */ stfs f5, 0xfc(r1) -/* 80187888 001847E8 4B EC B6 05 */ bl SetTranslation__6CActorFRC9CVector3f -/* 8018788C 001847EC A0 01 00 30 */ lhz r0, 0x30(r1) -/* 80187890 001847F0 7E 03 83 78 */ mr r3, r16 -/* 80187894 001847F4 38 81 00 18 */ addi r4, r1, 0x18 -/* 80187898 001847F8 B0 01 00 18 */ sth r0, 0x18(r1) -/* 8018789C 001847FC 4B EC 4C D9 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 801878A0 00184800 7C 60 1B 78 */ mr r0, r3 -/* 801878A4 00184804 38 61 00 3C */ addi r3, r1, 0x3c -/* 801878A8 00184808 7C 13 03 78 */ mr r19, r0 -/* 801878AC 0018480C 7E 64 9B 78 */ mr r4, r19 -/* 801878B0 00184810 4B F2 15 65 */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" -/* 801878B4 00184814 80 03 00 04 */ lwz r0, 4(r3) -/* 801878B8 00184818 28 00 00 00 */ cmplwi r0, 0 -/* 801878BC 0018481C 41 82 00 24 */ beq lbl_801878E0 -/* 801878C0 00184820 A0 11 00 08 */ lhz r0, 8(r17) -/* 801878C4 00184824 7E 03 83 78 */ mr r3, r16 -/* 801878C8 00184828 7E 64 9B 78 */ mr r4, r19 -/* 801878CC 0018482C 38 A1 00 14 */ addi r5, r1, 0x14 -/* 801878D0 00184830 B0 01 00 10 */ sth r0, 0x10(r1) -/* 801878D4 00184834 38 C0 00 1F */ li r6, 0x1f -/* 801878D8 00184838 B0 01 00 14 */ sth r0, 0x14(r1) -/* 801878DC 0018483C 4B EB C5 F5 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -lbl_801878E0: -/* 801878E0 00184840 7E 03 83 78 */ mr r3, r16 -/* 801878E4 00184844 7D C4 73 78 */ mr r4, r14 -/* 801878E8 00184848 7E 25 8B 78 */ mr r5, r17 -/* 801878EC 0018484C 4B FF B0 6D */ bl SendMaterialMessage__14CGameCollisionFR13CStateManagerRC13CMaterialListR6CActor -/* 801878F0 00184850 38 00 00 01 */ li r0, 1 -/* 801878F4 00184854 34 61 00 C0 */ addic. r3, r1, 0xc0 -/* 801878F8 00184858 98 01 00 CC */ stb r0, 0xcc(r1) -/* 801878FC 0018485C 41 82 00 1C */ beq lbl_80187918 -/* 80187900 00184860 C0 01 05 18 */ lfs f0, 0x518(r1) -/* 80187904 00184864 D0 03 00 00 */ stfs f0, 0(r3) -/* 80187908 00184868 C0 01 05 1C */ lfs f0, 0x51c(r1) -/* 8018790C 0018486C D0 03 00 04 */ stfs f0, 4(r3) -/* 80187910 00184870 C0 01 05 20 */ lfs f0, 0x520(r1) -/* 80187914 00184874 D0 03 00 08 */ stfs f0, 8(r3) -lbl_80187918: -/* 80187918 00184878 38 71 02 28 */ addi r3, r17, 0x228 -/* 8018791C 0018487C 38 01 00 C0 */ addi r0, r1, 0xc0 -/* 80187920 00184880 7C 03 00 40 */ cmplw r3, r0 -/* 80187924 00184884 41 82 00 6C */ beq lbl_80187990 -/* 80187928 00184888 88 01 00 CC */ lbz r0, 0xcc(r1) -/* 8018792C 0018488C 28 00 00 00 */ cmplwi r0, 0 -/* 80187930 00184890 41 82 00 58 */ beq lbl_80187988 -/* 80187934 00184894 88 11 02 34 */ lbz r0, 0x234(r17) -/* 80187938 00184898 28 00 00 00 */ cmplwi r0, 0 -/* 8018793C 0018489C 40 82 00 30 */ bne lbl_8018796C -/* 80187940 001848A0 34 71 02 28 */ addic. r3, r17, 0x228 -/* 80187944 001848A4 41 82 00 1C */ beq lbl_80187960 -/* 80187948 001848A8 C0 01 00 C0 */ lfs f0, 0xc0(r1) -/* 8018794C 001848AC D0 03 00 00 */ stfs f0, 0(r3) -/* 80187950 001848B0 C0 01 00 C4 */ lfs f0, 0xc4(r1) -/* 80187954 001848B4 D0 03 00 04 */ stfs f0, 4(r3) -/* 80187958 001848B8 C0 01 00 C8 */ lfs f0, 0xc8(r1) -/* 8018795C 001848BC D0 03 00 08 */ stfs f0, 8(r3) -lbl_80187960: -/* 80187960 001848C0 38 00 00 01 */ li r0, 1 -/* 80187964 001848C4 98 11 02 34 */ stb r0, 0x234(r17) -/* 80187968 001848C8 48 00 00 28 */ b lbl_80187990 -lbl_8018796C: -/* 8018796C 001848CC C0 01 00 C0 */ lfs f0, 0xc0(r1) -/* 80187970 001848D0 D0 03 00 00 */ stfs f0, 0(r3) -/* 80187974 001848D4 C0 01 00 C4 */ lfs f0, 0xc4(r1) -/* 80187978 001848D8 D0 03 00 04 */ stfs f0, 4(r3) -/* 8018797C 001848DC C0 01 00 C8 */ lfs f0, 0xc8(r1) -/* 80187980 001848E0 D0 03 00 08 */ stfs f0, 8(r3) -/* 80187984 001848E4 48 00 00 0C */ b lbl_80187990 -lbl_80187988: -/* 80187988 001848E8 38 00 00 00 */ li r0, 0 -/* 8018798C 001848EC 98 11 02 34 */ stb r0, 0x234(r17) -lbl_80187990: -/* 80187990 001848F0 38 00 00 00 */ li r0, 0 -/* 80187994 001848F4 98 01 00 CC */ stb r0, 0xcc(r1) -lbl_80187998: -/* 80187998 001848F8 7E 23 8B 78 */ mr r3, r17 -/* 8018799C 001848FC 4B F9 39 19 */ bl ClearForcesAndTorques__13CPhysicsActorFv -/* 801879A0 00184900 3C 00 40 00 */ lis r0, 0x4000 -/* 801879A4 00184904 38 80 00 00 */ li r4, 0 -/* 801879A8 00184908 7E 43 00 38 */ and r3, r18, r0 -/* 801879AC 0018490C 7D E0 20 38 */ and r0, r15, r4 -/* 801879B0 00184910 7C 63 22 78 */ xor r3, r3, r4 -/* 801879B4 00184914 7C 00 22 78 */ xor r0, r0, r4 -/* 801879B8 00184918 7C 60 03 79 */ or. r0, r3, r0 -/* 801879BC 0018491C 41 82 00 0C */ beq lbl_801879C8 -/* 801879C0 00184920 7F A3 EB 78 */ mr r3, r29 -/* 801879C4 00184924 4B E8 97 B1 */ bl SetPlayerHitWallDuringMove__7CPlayerFv -lbl_801879C8: -/* 801879C8 00184928 88 01 08 34 */ lbz r0, 0x834(r1) -/* 801879CC 0018492C 28 00 00 00 */ cmplwi r0, 0 -/* 801879D0 00184930 41 82 00 84 */ beq lbl_80187A54 -/* 801879D4 00184934 38 00 00 00 */ li r0, 0 -/* 801879D8 00184938 38 61 0A 4C */ addi r3, r1, 0xa4c -/* 801879DC 0018493C 90 01 0A 4C */ stw r0, 0xa4c(r1) -/* 801879E0 00184940 38 81 08 38 */ addi r4, r1, 0x838 -/* 801879E4 00184944 38 A0 00 00 */ li r5, 0 -/* 801879E8 00184948 4B FF DC 39 */ bl Add__18CCollisionInfoListFRC14CCollisionInfob -/* 801879EC 0018494C 7E 03 83 78 */ mr r3, r16 -/* 801879F0 00184950 7E 24 8B 78 */ mr r4, r17 -/* 801879F4 00184954 38 A1 08 30 */ addi r5, r1, 0x830 -/* 801879F8 00184958 38 C1 0A 4C */ addi r6, r1, 0xa4c -/* 801879FC 0018495C 4B FF B1 BD */ bl MakeCollisionCallbacks__14CGameCollisionFR13CStateManagerR13CPhysicsActorRC9TUniqueIdRC18CCollisionInfoList -/* 80187A00 00184960 80 A1 0A 4C */ lwz r5, 0xa4c(r1) -/* 80187A04 00184964 38 60 00 00 */ li r3, 0 -/* 80187A08 00184968 2C 05 00 00 */ cmpwi r5, 0 -/* 80187A0C 0018496C 40 81 00 40 */ ble lbl_80187A4C -/* 80187A10 00184970 2C 05 00 08 */ cmpwi r5, 8 -/* 80187A14 00184974 38 85 FF F8 */ addi r4, r5, -8 -/* 80187A18 00184978 40 81 00 20 */ ble lbl_80187A38 -/* 80187A1C 0018497C 38 04 00 07 */ addi r0, r4, 7 -/* 80187A20 00184980 54 00 E8 FE */ srwi r0, r0, 3 -/* 80187A24 00184984 7C 09 03 A6 */ mtctr r0 -/* 80187A28 00184988 2C 04 00 00 */ cmpwi r4, 0 -/* 80187A2C 0018498C 40 81 00 0C */ ble lbl_80187A38 -lbl_80187A30: -/* 80187A30 00184990 38 63 00 08 */ addi r3, r3, 8 -/* 80187A34 00184994 42 00 FF FC */ bdnz lbl_80187A30 -lbl_80187A38: -/* 80187A38 00184998 7C 03 28 50 */ subf r0, r3, r5 -/* 80187A3C 0018499C 7C 09 03 A6 */ mtctr r0 -/* 80187A40 001849A0 7C 03 28 00 */ cmpw r3, r5 -/* 80187A44 001849A4 40 80 00 08 */ bge lbl_80187A4C -lbl_80187A48: -/* 80187A48 001849A8 42 00 00 00 */ bdnz lbl_80187A48 -lbl_80187A4C: -/* 80187A4C 001849AC 38 00 00 00 */ li r0, 0 -/* 80187A50 001849B0 90 01 0A 4C */ stw r0, 0xa4c(r1) -lbl_80187A54: -/* 80187A54 001849B4 7E 24 8B 78 */ mr r4, r17 -/* 80187A58 001849B8 38 61 02 6C */ addi r3, r1, 0x26c -/* 80187A5C 001849BC 4B F9 3C 19 */ bl GetMotionState__13CPhysicsActorCFv -/* 80187A60 001849C0 C0 01 02 6C */ lfs f0, 0x26c(r1) -/* 80187A64 001849C4 7E 23 8B 78 */ mr r3, r17 -/* 80187A68 001849C8 C1 61 02 70 */ lfs f11, 0x270(r1) -/* 80187A6C 001849CC D0 01 02 A0 */ stfs f0, 0x2a0(r1) -/* 80187A70 001849D0 C0 11 01 F4 */ lfs f0, 0x1f4(r17) -/* 80187A74 001849D4 C1 41 02 74 */ lfs f10, 0x274(r1) -/* 80187A78 001849D8 D0 01 02 A0 */ stfs f0, 0x2a0(r1) -/* 80187A7C 001849DC C1 21 02 78 */ lfs f9, 0x278(r1) -/* 80187A80 001849E0 C1 01 02 7C */ lfs f8, 0x27c(r1) -/* 80187A84 001849E4 C0 E1 02 80 */ lfs f7, 0x280(r1) -/* 80187A88 001849E8 C0 C1 02 84 */ lfs f6, 0x284(r1) -/* 80187A8C 001849EC C0 A1 02 88 */ lfs f5, 0x288(r1) -/* 80187A90 001849F0 C0 81 02 8C */ lfs f4, 0x28c(r1) -/* 80187A94 001849F4 C0 61 02 90 */ lfs f3, 0x290(r1) -/* 80187A98 001849F8 C0 41 02 94 */ lfs f2, 0x294(r1) -/* 80187A9C 001849FC C0 21 02 98 */ lfs f1, 0x298(r1) -/* 80187AA0 00184A00 C0 01 02 9C */ lfs f0, 0x29c(r1) -/* 80187AA4 00184A04 D1 21 02 AC */ stfs f9, 0x2ac(r1) -/* 80187AA8 00184A08 C1 31 01 F8 */ lfs f9, 0x1f8(r17) -/* 80187AAC 00184A0C D1 61 02 A4 */ stfs f11, 0x2a4(r1) -/* 80187AB0 00184A10 C1 71 01 FC */ lfs f11, 0x1fc(r17) -/* 80187AB4 00184A14 D1 41 02 A8 */ stfs f10, 0x2a8(r1) -/* 80187AB8 00184A18 C1 51 02 10 */ lfs f10, 0x210(r17) -/* 80187ABC 00184A1C D1 21 02 A4 */ stfs f9, 0x2a4(r1) -/* 80187AC0 00184A20 C1 31 02 14 */ lfs f9, 0x214(r17) -/* 80187AC4 00184A24 D1 61 02 A8 */ stfs f11, 0x2a8(r1) -/* 80187AC8 00184A28 C1 71 02 18 */ lfs f11, 0x218(r17) -/* 80187ACC 00184A2C 80 81 02 A0 */ lwz r4, 0x2a0(r1) -/* 80187AD0 00184A30 D1 01 02 B0 */ stfs f8, 0x2b0(r1) -/* 80187AD4 00184A34 80 01 02 A4 */ lwz r0, 0x2a4(r1) -/* 80187AD8 00184A38 90 91 01 F4 */ stw r4, 0x1f4(r17) -/* 80187ADC 00184A3C 80 81 02 A8 */ lwz r4, 0x2a8(r1) -/* 80187AE0 00184A40 90 11 01 F8 */ stw r0, 0x1f8(r17) -/* 80187AE4 00184A44 80 01 02 AC */ lwz r0, 0x2ac(r1) -/* 80187AE8 00184A48 90 91 01 FC */ stw r4, 0x1fc(r17) -/* 80187AEC 00184A4C 80 A1 02 B0 */ lwz r5, 0x2b0(r1) -/* 80187AF0 00184A50 D0 E1 02 B4 */ stfs f7, 0x2b4(r1) -/* 80187AF4 00184A54 90 11 02 00 */ stw r0, 0x200(r17) -/* 80187AF8 00184A58 80 81 02 B4 */ lwz r4, 0x2b4(r1) -/* 80187AFC 00184A5C D0 C1 02 B8 */ stfs f6, 0x2b8(r1) -/* 80187B00 00184A60 D0 A1 02 BC */ stfs f5, 0x2bc(r1) -/* 80187B04 00184A64 80 01 02 B8 */ lwz r0, 0x2b8(r1) -/* 80187B08 00184A68 90 B1 02 04 */ stw r5, 0x204(r17) -/* 80187B0C 00184A6C D0 81 02 C0 */ stfs f4, 0x2c0(r1) -/* 80187B10 00184A70 D1 41 02 BC */ stfs f10, 0x2bc(r1) -/* 80187B14 00184A74 90 91 02 08 */ stw r4, 0x208(r17) -/* 80187B18 00184A78 80 81 02 BC */ lwz r4, 0x2bc(r1) -/* 80187B1C 00184A7C D0 61 02 C4 */ stfs f3, 0x2c4(r1) -/* 80187B20 00184A80 D1 21 02 C0 */ stfs f9, 0x2c0(r1) -/* 80187B24 00184A84 90 11 02 0C */ stw r0, 0x20c(r17) -/* 80187B28 00184A88 80 01 02 C0 */ lwz r0, 0x2c0(r1) -/* 80187B2C 00184A8C D1 61 02 C4 */ stfs f11, 0x2c4(r1) -/* 80187B30 00184A90 90 91 02 10 */ stw r4, 0x210(r17) -/* 80187B34 00184A94 80 81 02 C4 */ lwz r4, 0x2c4(r1) -/* 80187B38 00184A98 D0 41 02 C8 */ stfs f2, 0x2c8(r1) -/* 80187B3C 00184A9C 90 11 02 14 */ stw r0, 0x214(r17) -/* 80187B40 00184AA0 80 01 02 C8 */ lwz r0, 0x2c8(r1) -/* 80187B44 00184AA4 D0 21 02 CC */ stfs f1, 0x2cc(r1) -/* 80187B48 00184AA8 90 91 02 18 */ stw r4, 0x218(r17) -/* 80187B4C 00184AAC 80 81 02 CC */ lwz r4, 0x2cc(r1) -/* 80187B50 00184AB0 D0 01 02 D0 */ stfs f0, 0x2d0(r1) -/* 80187B54 00184AB4 90 11 02 1C */ stw r0, 0x21c(r17) -/* 80187B58 00184AB8 80 01 02 D0 */ lwz r0, 0x2d0(r1) -/* 80187B5C 00184ABC 90 91 02 20 */ stw r4, 0x220(r17) -/* 80187B60 00184AC0 90 11 02 24 */ stw r0, 0x224(r17) -/* 80187B64 00184AC4 81 91 00 00 */ lwz r12, 0(r17) -/* 80187B68 00184AC8 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 80187B6C 00184ACC 7D 89 03 A6 */ mtctr r12 -/* 80187B70 00184AD0 4E 80 04 21 */ bctrl -/* 80187B74 00184AD4 81 83 00 00 */ lwz r12, 0(r3) -/* 80187B78 00184AD8 7C 6F 1B 78 */ mr r15, r3 -/* 80187B7C 00184ADC 3A 41 04 84 */ addi r18, r1, 0x484 -/* 80187B80 00184AE0 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 80187B84 00184AE4 7D EE 7B 78 */ mr r14, r15 -/* 80187B88 00184AE8 7D 89 03 A6 */ mtctr r12 -/* 80187B8C 00184AEC 4E 80 04 21 */ bctrl -/* 80187B90 00184AF0 3C 03 BE BF */ addis r0, r3, 0xbebf -/* 80187B94 00184AF4 28 00 42 58 */ cmplwi r0, 0x4258 -/* 80187B98 00184AF8 40 82 00 D0 */ bne lbl_80187C68 -/* 80187B9C 00184AFC 28 12 00 00 */ cmplwi r18, 0 -/* 80187BA0 00184B00 7E 4E 93 78 */ mr r14, r18 -/* 80187BA4 00184B04 41 82 01 44 */ beq lbl_80187CE8 -/* 80187BA8 00184B08 C0 4F 00 14 */ lfs f2, 0x14(r15) -/* 80187BAC 00184B0C 7D E3 7B 78 */ mr r3, r15 -/* 80187BB0 00184B10 C0 62 A3 7C */ lfs f3, lbl_805AC09C@sda21(r2) -/* 80187BB4 00184B14 C0 2F 00 18 */ lfs f1, 0x18(r15) -/* 80187BB8 00184B18 C0 0F 00 10 */ lfs f0, 0x10(r15) -/* 80187BBC 00184B1C EC 42 18 2A */ fadds f2, f2, f3 -/* 80187BC0 00184B20 EC 21 18 2A */ fadds f1, f1, f3 -/* 80187BC4 00184B24 EC 00 18 2A */ fadds f0, f0, f3 -/* 80187BC8 00184B28 D0 41 00 AC */ stfs f2, 0xac(r1) -/* 80187BCC 00184B2C D0 01 00 A8 */ stfs f0, 0xa8(r1) -/* 80187BD0 00184B30 D0 21 00 B0 */ stfs f1, 0xb0(r1) -/* 80187BD4 00184B34 C0 4F 00 20 */ lfs f2, 0x20(r15) -/* 80187BD8 00184B38 C0 2F 00 24 */ lfs f1, 0x24(r15) -/* 80187BDC 00184B3C C0 0F 00 1C */ lfs f0, 0x1c(r15) -/* 80187BE0 00184B40 EC 42 18 28 */ fsubs f2, f2, f3 -/* 80187BE4 00184B44 EC 21 18 28 */ fsubs f1, f1, f3 -/* 80187BE8 00184B48 EC 00 18 28 */ fsubs f0, f0, f3 -/* 80187BEC 00184B4C D0 41 00 B8 */ stfs f2, 0xb8(r1) -/* 80187BF0 00184B50 D0 01 00 B4 */ stfs f0, 0xb4(r1) -/* 80187BF4 00184B54 D0 21 00 BC */ stfs f1, 0xbc(r1) -/* 80187BF8 00184B58 81 8F 00 00 */ lwz r12, 0(r15) -/* 80187BFC 00184B5C 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 80187C00 00184B60 7D 89 03 A6 */ mtctr r12 -/* 80187C04 00184B64 4E 80 04 21 */ bctrl -/* 80187C08 00184B68 7C 6F 1B 78 */ mr r15, r3 -/* 80187C0C 00184B6C 38 61 02 10 */ addi r3, r1, 0x210 -/* 80187C10 00184B70 38 81 00 A8 */ addi r4, r1, 0xa8 -/* 80187C14 00184B74 38 A1 00 B4 */ addi r5, r1, 0xb4 -/* 80187C18 00184B78 48 1B 08 F1 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 80187C1C 00184B7C 7E 43 93 78 */ mr r3, r18 -/* 80187C20 00184B80 7D E4 7B 78 */ mr r4, r15 -/* 80187C24 00184B84 48 14 7C 91 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList -/* 80187C28 00184B88 C0 A1 02 10 */ lfs f5, 0x210(r1) -/* 80187C2C 00184B8C 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha -/* 80187C30 00184B90 C0 81 02 14 */ lfs f4, 0x214(r1) -/* 80187C34 00184B94 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l -/* 80187C38 00184B98 C0 61 02 18 */ lfs f3, 0x218(r1) -/* 80187C3C 00184B9C C0 41 02 1C */ lfs f2, 0x21c(r1) -/* 80187C40 00184BA0 C0 21 02 20 */ lfs f1, 0x220(r1) -/* 80187C44 00184BA4 C0 01 02 24 */ lfs f0, 0x224(r1) -/* 80187C48 00184BA8 90 01 04 84 */ stw r0, 0x484(r1) -/* 80187C4C 00184BAC D0 A1 04 94 */ stfs f5, 0x494(r1) -/* 80187C50 00184BB0 D0 81 04 98 */ stfs f4, 0x498(r1) -/* 80187C54 00184BB4 D0 61 04 9C */ stfs f3, 0x49c(r1) -/* 80187C58 00184BB8 D0 41 04 A0 */ stfs f2, 0x4a0(r1) -/* 80187C5C 00184BBC D0 21 04 A4 */ stfs f1, 0x4a4(r1) -/* 80187C60 00184BC0 D0 01 04 A8 */ stfs f0, 0x4a8(r1) -/* 80187C64 00184BC4 48 00 00 84 */ b lbl_80187CE8 -lbl_80187C68: -/* 80187C68 00184BC8 7D E3 7B 78 */ mr r3, r15 -/* 80187C6C 00184BCC 81 8F 00 00 */ lwz r12, 0(r15) -/* 80187C70 00184BD0 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 80187C74 00184BD4 7D 89 03 A6 */ mtctr r12 -/* 80187C78 00184BD8 4E 80 04 21 */ bctrl -/* 80187C7C 00184BDC 3C 03 AC B0 */ addis r0, r3, 0xacb0 -/* 80187C80 00184BE0 28 00 48 52 */ cmplwi r0, 0x4852 -/* 80187C84 00184BE4 40 82 00 64 */ bne lbl_80187CE8 -/* 80187C88 00184BE8 28 12 00 00 */ cmplwi r18, 0 -/* 80187C8C 00184BEC 7E 4E 93 78 */ mr r14, r18 -/* 80187C90 00184BF0 41 82 00 58 */ beq lbl_80187CE8 -/* 80187C94 00184BF4 7D E3 7B 78 */ mr r3, r15 -/* 80187C98 00184BF8 C0 2F 00 1C */ lfs f1, 0x1c(r15) -/* 80187C9C 00184BFC 81 8F 00 00 */ lwz r12, 0(r15) -/* 80187CA0 00184C00 C0 02 A3 7C */ lfs f0, lbl_805AC09C@sda21(r2) -/* 80187CA4 00184C04 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 80187CA8 00184C08 EF 01 00 28 */ fsubs f24, f1, f0 -/* 80187CAC 00184C0C C2 AF 00 10 */ lfs f21, 0x10(r15) -/* 80187CB0 00184C10 C2 CF 00 14 */ lfs f22, 0x14(r15) -/* 80187CB4 00184C14 C2 EF 00 18 */ lfs f23, 0x18(r15) -/* 80187CB8 00184C18 7D 89 03 A6 */ mtctr r12 -/* 80187CBC 00184C1C 4E 80 04 21 */ bctrl -/* 80187CC0 00184C20 7C 64 1B 78 */ mr r4, r3 -/* 80187CC4 00184C24 7E 43 93 78 */ mr r3, r18 -/* 80187CC8 00184C28 48 14 7B ED */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList -/* 80187CCC 00184C2C 3C 60 80 3F */ lis r3, lbl_803ECAF8@ha -/* 80187CD0 00184C30 D2 A1 04 94 */ stfs f21, 0x494(r1) -/* 80187CD4 00184C34 38 03 CA F8 */ addi r0, r3, lbl_803ECAF8@l -/* 80187CD8 00184C38 90 01 04 84 */ stw r0, 0x484(r1) -/* 80187CDC 00184C3C D2 C1 04 98 */ stfs f22, 0x498(r1) -/* 80187CE0 00184C40 D2 E1 04 9C */ stfs f23, 0x49c(r1) -/* 80187CE4 00184C44 D3 01 04 A0 */ stfs f24, 0x4a0(r1) -lbl_80187CE8: -/* 80187CE8 00184C48 C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) -/* 80187CEC 00184C4C 7E 03 83 78 */ mr r3, r16 -/* 80187CF0 00184C50 7E 25 8B 78 */ mr r5, r17 -/* 80187CF4 00184C54 7D C6 73 78 */ mr r6, r14 -/* 80187CF8 00184C58 38 81 16 50 */ addi r4, r1, 0x1650 -/* 80187CFC 00184C5C 38 E1 31 94 */ addi r7, r1, 0x3194 -/* 80187D00 00184C60 39 00 00 01 */ li r8, 1 -/* 80187D04 00184C64 4B FF 8B 89 */ bl "CollisionFailsafe__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheR13CPhysicsActorRC19CCollisionPrimitiveRCQ24rstl32reserved_vector<9TUniqueId,1024>fUi" -/* 80187D08 00184C68 38 60 00 00 */ li r3, 0 -/* 80187D0C 00184C6C 34 E1 16 68 */ addic. r7, r1, 0x1668 -/* 80187D10 00184C70 98 61 08 98 */ stb r3, 0x898(r1) -/* 80187D14 00184C74 98 61 08 34 */ stb r3, 0x834(r1) -/* 80187D18 00184C78 41 82 00 90 */ beq lbl_80187DA8 -/* 80187D1C 00184C7C 38 C7 00 04 */ addi r6, r7, 4 -/* 80187D20 00184C80 48 00 00 74 */ b lbl_80187D94 -lbl_80187D24: -/* 80187D24 00184C84 28 06 00 00 */ cmplwi r6, 0 -/* 80187D28 00184C88 41 82 00 64 */ beq lbl_80187D8C -/* 80187D2C 00184C8C 34 06 00 04 */ addic. r0, r6, 4 -/* 80187D30 00184C90 41 82 00 5C */ beq lbl_80187D8C -/* 80187D34 00184C94 81 06 00 04 */ lwz r8, 4(r6) -/* 80187D38 00184C98 38 80 00 00 */ li r4, 0 -/* 80187D3C 00184C9C 2C 08 00 00 */ cmpwi r8, 0 -/* 80187D40 00184CA0 40 81 00 44 */ ble lbl_80187D84 -/* 80187D44 00184CA4 2C 08 00 08 */ cmpwi r8, 8 -/* 80187D48 00184CA8 38 A8 FF F8 */ addi r5, r8, -8 -/* 80187D4C 00184CAC 40 81 00 20 */ ble lbl_80187D6C -/* 80187D50 00184CB0 38 05 00 07 */ addi r0, r5, 7 -/* 80187D54 00184CB4 54 00 E8 FE */ srwi r0, r0, 3 -/* 80187D58 00184CB8 7C 09 03 A6 */ mtctr r0 -/* 80187D5C 00184CBC 2C 05 00 00 */ cmpwi r5, 0 -/* 80187D60 00184CC0 40 81 00 0C */ ble lbl_80187D6C -lbl_80187D64: -/* 80187D64 00184CC4 38 84 00 08 */ addi r4, r4, 8 -/* 80187D68 00184CC8 42 00 FF FC */ bdnz lbl_80187D64 -lbl_80187D6C: -/* 80187D6C 00184CCC 7C 04 40 50 */ subf r0, r4, r8 -/* 80187D70 00184CD0 7C 09 03 A6 */ mtctr r0 -/* 80187D74 00184CD4 7C 04 40 00 */ cmpw r4, r8 -/* 80187D78 00184CD8 40 80 00 0C */ bge lbl_80187D84 -lbl_80187D7C: -/* 80187D7C 00184CDC 38 84 00 01 */ addi r4, r4, 1 -/* 80187D80 00184CE0 42 00 FF FC */ bdnz lbl_80187D7C -lbl_80187D84: -/* 80187D84 00184CE4 38 00 00 00 */ li r0, 0 -/* 80187D88 00184CE8 90 06 00 04 */ stw r0, 4(r6) -lbl_80187D8C: -/* 80187D8C 00184CEC 38 C6 09 0C */ addi r6, r6, 0x90c -/* 80187D90 00184CF0 38 63 00 01 */ addi r3, r3, 1 -lbl_80187D94: -/* 80187D94 00184CF4 80 07 00 00 */ lwz r0, 0(r7) -/* 80187D98 00184CF8 7C 03 00 00 */ cmpw r3, r0 -/* 80187D9C 00184CFC 41 80 FF 88 */ blt lbl_80187D24 -/* 80187DA0 00184D00 38 00 00 00 */ li r0, 0 -/* 80187DA4 00184D04 90 07 00 00 */ stw r0, 0(r7) -lbl_80187DA8: -/* 80187DA8 00184D08 80 A1 31 94 */ lwz r5, 0x3194(r1) -/* 80187DAC 00184D0C 38 60 00 00 */ li r3, 0 -/* 80187DB0 00184D10 2C 05 00 00 */ cmpwi r5, 0 -/* 80187DB4 00184D14 40 81 00 40 */ ble lbl_80187DF4 -/* 80187DB8 00184D18 2C 05 00 08 */ cmpwi r5, 8 -/* 80187DBC 00184D1C 38 85 FF F8 */ addi r4, r5, -8 -/* 80187DC0 00184D20 40 81 00 20 */ ble lbl_80187DE0 -/* 80187DC4 00184D24 38 04 00 07 */ addi r0, r4, 7 -/* 80187DC8 00184D28 54 00 E8 FE */ srwi r0, r0, 3 -/* 80187DCC 00184D2C 7C 09 03 A6 */ mtctr r0 -/* 80187DD0 00184D30 2C 04 00 00 */ cmpwi r4, 0 -/* 80187DD4 00184D34 40 81 00 0C */ ble lbl_80187DE0 -lbl_80187DD8: -/* 80187DD8 00184D38 38 63 00 08 */ addi r3, r3, 8 -/* 80187DDC 00184D3C 42 00 FF FC */ bdnz lbl_80187DD8 -lbl_80187DE0: -/* 80187DE0 00184D40 7C 03 28 50 */ subf r0, r3, r5 -/* 80187DE4 00184D44 7C 09 03 A6 */ mtctr r0 -/* 80187DE8 00184D48 7C 03 28 00 */ cmpw r3, r5 -/* 80187DEC 00184D4C 40 80 00 08 */ bge lbl_80187DF4 -lbl_80187DF0: -/* 80187DF0 00184D50 42 00 00 00 */ bdnz lbl_80187DF0 -lbl_80187DF4: -/* 80187DF4 00184D54 38 00 00 00 */ li r0, 0 -/* 80187DF8 00184D58 90 01 31 94 */ stw r0, 0x3194(r1) -/* 80187DFC 00184D5C 38 00 3A 98 */ li r0, 0x3a98 -/* 80187E00 00184D60 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 -/* 80187E04 00184D64 CB E1 3A 90 */ lfd f31, 0x3a90(r1) -/* 80187E08 00184D68 38 00 3A 88 */ li r0, 0x3a88 -/* 80187E0C 00184D6C 13 C1 00 0C */ psq_lx f30, r1, r0, 0, qr0 -/* 80187E10 00184D70 CB C1 3A 80 */ lfd f30, 0x3a80(r1) -/* 80187E14 00184D74 38 00 3A 78 */ li r0, 0x3a78 -/* 80187E18 00184D78 13 A1 00 0C */ psq_lx f29, r1, r0, 0, qr0 -/* 80187E1C 00184D7C CB A1 3A 70 */ lfd f29, 0x3a70(r1) -/* 80187E20 00184D80 38 00 3A 68 */ li r0, 0x3a68 -/* 80187E24 00184D84 13 81 00 0C */ psq_lx f28, r1, r0, 0, qr0 -/* 80187E28 00184D88 CB 81 3A 60 */ lfd f28, 0x3a60(r1) -/* 80187E2C 00184D8C 38 00 3A 58 */ li r0, 0x3a58 -/* 80187E30 00184D90 13 61 00 0C */ psq_lx f27, r1, r0, 0, qr0 -/* 80187E34 00184D94 CB 61 3A 50 */ lfd f27, 0x3a50(r1) -/* 80187E38 00184D98 38 00 3A 48 */ li r0, 0x3a48 -/* 80187E3C 00184D9C 13 41 00 0C */ psq_lx f26, r1, r0, 0, qr0 -/* 80187E40 00184DA0 CB 41 3A 40 */ lfd f26, 0x3a40(r1) -/* 80187E44 00184DA4 38 00 3A 38 */ li r0, 0x3a38 -/* 80187E48 00184DA8 13 21 00 0C */ psq_lx f25, r1, r0, 0, qr0 -/* 80187E4C 00184DAC CB 21 3A 30 */ lfd f25, 0x3a30(r1) -/* 80187E50 00184DB0 38 00 3A 28 */ li r0, 0x3a28 -/* 80187E54 00184DB4 13 01 00 0C */ psq_lx f24, r1, r0, 0, qr0 -/* 80187E58 00184DB8 CB 01 3A 20 */ lfd f24, 0x3a20(r1) -/* 80187E5C 00184DBC 38 00 3A 18 */ li r0, 0x3a18 -/* 80187E60 00184DC0 12 E1 00 0C */ psq_lx f23, r1, r0, 0, qr0 -/* 80187E64 00184DC4 CA E1 3A 10 */ lfd f23, 0x3a10(r1) -/* 80187E68 00184DC8 38 00 3A 08 */ li r0, 0x3a08 -/* 80187E6C 00184DCC 12 C1 00 0C */ psq_lx f22, r1, r0, 0, qr0 -/* 80187E70 00184DD0 CA C1 3A 00 */ lfd f22, 0x3a00(r1) -/* 80187E74 00184DD4 38 00 39 F8 */ li r0, 0x39f8 -/* 80187E78 00184DD8 12 A1 00 0C */ psq_lx f21, r1, r0, 0, qr0 -/* 80187E7C 00184DDC CA A1 39 F0 */ lfd f21, 0x39f0(r1) -/* 80187E80 00184DE0 B9 C1 39 A8 */ lmw r14, 0x39a8(r1) -/* 80187E84 00184DE4 80 01 3A A4 */ lwz r0, 0x3aa4(r1) -/* 80187E88 00184DE8 7C 08 03 A6 */ mtlr r0 -/* 80187E8C 00184DEC 38 21 3A A0 */ addi r1, r1, 0x3aa0 -/* 80187E90 00184DF0 4E 80 00 20 */ blr - -.global sub_80187e94 -sub_80187e94: -/* 80187E94 00184DF4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80187E98 00184DF8 7C 08 02 A6 */ mflr r0 -/* 80187E9C 00184DFC 90 01 00 14 */ stw r0, 0x14(r1) -/* 80187EA0 00184E00 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80187EA4 00184E04 7C 7F 1B 78 */ mr r31, r3 -/* 80187EA8 00184E08 80 03 00 00 */ lwz r0, 0(r3) -/* 80187EAC 00184E0C 1C 00 00 60 */ mulli r0, r0, 0x60 -/* 80187EB0 00184E10 7C 7F 02 14 */ add r3, r31, r0 -/* 80187EB4 00184E14 38 63 00 04 */ addi r3, r3, 4 -/* 80187EB8 00184E18 4B FF E5 65 */ bl sub_8018641c -/* 80187EBC 00184E1C 80 7F 00 00 */ lwz r3, 0(r31) -/* 80187EC0 00184E20 38 03 00 01 */ addi r0, r3, 1 -/* 80187EC4 00184E24 90 1F 00 00 */ stw r0, 0(r31) -/* 80187EC8 00184E28 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80187ECC 00184E2C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80187ED0 00184E30 7C 08 03 A6 */ mtlr r0 -/* 80187ED4 00184E34 38 21 00 10 */ addi r1, r1, 0x10 -/* 80187ED8 00184E38 4E 80 00 20 */ blr - -.global sub_80187edc -sub_80187edc: -/* 80187EDC 00184E3C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80187EE0 00184E40 7C 08 02 A6 */ mflr r0 -/* 80187EE4 00184E44 90 01 00 14 */ stw r0, 0x14(r1) -/* 80187EE8 00184E48 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80187EEC 00184E4C 7C 7F 1B 78 */ mr r31, r3 -/* 80187EF0 00184E50 80 03 00 00 */ lwz r0, 0(r3) -/* 80187EF4 00184E54 1C 00 00 70 */ mulli r0, r0, 0x70 -/* 80187EF8 00184E58 7C 7F 02 14 */ add r3, r31, r0 -/* 80187EFC 00184E5C 38 63 00 04 */ addi r3, r3, 4 -/* 80187F00 00184E60 48 00 00 25 */ bl sub_80187f24 -/* 80187F04 00184E64 80 7F 00 00 */ lwz r3, 0(r31) -/* 80187F08 00184E68 38 03 00 01 */ addi r0, r3, 1 -/* 80187F0C 00184E6C 90 1F 00 00 */ stw r0, 0(r31) -/* 80187F10 00184E70 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80187F14 00184E74 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80187F18 00184E78 7C 08 03 A6 */ mtlr r0 -/* 80187F1C 00184E7C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80187F20 00184E80 4E 80 00 20 */ blr - -.global sub_80187f24 -sub_80187f24: -/* 80187F24 00184E84 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80187F28 00184E88 7C 08 02 A6 */ mflr r0 -/* 80187F2C 00184E8C 28 03 00 00 */ cmplwi r3, 0 -/* 80187F30 00184E90 90 01 00 14 */ stw r0, 0x14(r1) -/* 80187F34 00184E94 41 82 00 08 */ beq lbl_80187F3C -/* 80187F38 00184E98 4B F2 B5 89 */ bl __ct__13CPhysicsStateFRC13CPhysicsState -lbl_80187F3C: -/* 80187F3C 00184E9C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80187F40 00184EA0 7C 08 03 A6 */ mtlr r0 -/* 80187F44 00184EA4 38 21 00 10 */ addi r1, r1, 0x10 -/* 80187F48 00184EA8 4E 80 00 20 */ blr - -.global __ct__Q215CGroundMovement16SMovementOptionsFRCQ215CGroundMovement16SMovementOptions -__ct__Q215CGroundMovement16SMovementOptionsFRCQ215CGroundMovement16SMovementOptions: -/* 80187F4C 00184EAC 88 04 00 00 */ lbz r0, 0(r4) -/* 80187F50 00184EB0 98 03 00 00 */ stb r0, 0(r3) -/* 80187F54 00184EB4 C0 04 00 04 */ lfs f0, 4(r4) -/* 80187F58 00184EB8 D0 03 00 04 */ stfs f0, 4(r3) -/* 80187F5C 00184EBC C0 04 00 08 */ lfs f0, 8(r4) -/* 80187F60 00184EC0 D0 03 00 08 */ stfs f0, 8(r3) -/* 80187F64 00184EC4 C0 04 00 0C */ lfs f0, 0xc(r4) -/* 80187F68 00184EC8 D0 03 00 0C */ stfs f0, 0xc(r3) -/* 80187F6C 00184ECC C0 04 00 10 */ lfs f0, 0x10(r4) -/* 80187F70 00184ED0 D0 03 00 10 */ stfs f0, 0x10(r3) -/* 80187F74 00184ED4 C0 04 00 14 */ lfs f0, 0x14(r4) -/* 80187F78 00184ED8 D0 03 00 14 */ stfs f0, 0x14(r3) -/* 80187F7C 00184EDC 88 04 00 18 */ lbz r0, 0x18(r4) -/* 80187F80 00184EE0 98 03 00 18 */ stb r0, 0x18(r3) -/* 80187F84 00184EE4 88 04 00 19 */ lbz r0, 0x19(r4) -/* 80187F88 00184EE8 98 03 00 19 */ stb r0, 0x19(r3) -/* 80187F8C 00184EEC 88 04 00 1A */ lbz r0, 0x1a(r4) -/* 80187F90 00184EF0 98 03 00 1A */ stb r0, 0x1a(r3) -/* 80187F94 00184EF4 80 04 00 1C */ lwz r0, 0x1c(r4) -/* 80187F98 00184EF8 90 03 00 1C */ stw r0, 0x1c(r3) -/* 80187F9C 00184EFC C0 04 00 20 */ lfs f0, 0x20(r4) -/* 80187FA0 00184F00 D0 03 00 20 */ stfs f0, 0x20(r3) -/* 80187FA4 00184F04 C0 04 00 24 */ lfs f0, 0x24(r4) -/* 80187FA8 00184F08 D0 03 00 24 */ stfs f0, 0x24(r3) -/* 80187FAC 00184F0C C0 04 00 28 */ lfs f0, 0x28(r4) -/* 80187FB0 00184F10 D0 03 00 28 */ stfs f0, 0x28(r3) -/* 80187FB4 00184F14 C0 04 00 2C */ lfs f0, 0x2c(r4) -/* 80187FB8 00184F18 D0 03 00 2C */ stfs f0, 0x2c(r3) -/* 80187FBC 00184F1C C0 04 00 30 */ lfs f0, 0x30(r4) -/* 80187FC0 00184F20 D0 03 00 30 */ stfs f0, 0x30(r3) -/* 80187FC4 00184F24 C0 04 00 34 */ lfs f0, 0x34(r4) -/* 80187FC8 00184F28 D0 03 00 34 */ stfs f0, 0x34(r3) -/* 80187FCC 00184F2C C0 04 00 38 */ lfs f0, 0x38(r4) -/* 80187FD0 00184F30 D0 03 00 38 */ stfs f0, 0x38(r3) -/* 80187FD4 00184F34 88 04 00 48 */ lbz r0, 0x48(r4) -/* 80187FD8 00184F38 98 03 00 48 */ stb r0, 0x48(r3) -/* 80187FDC 00184F3C 88 04 00 48 */ lbz r0, 0x48(r4) -/* 80187FE0 00184F40 28 00 00 00 */ cmplwi r0, 0 -/* 80187FE4 00184F44 4D 82 00 20 */ beqlr -/* 80187FE8 00184F48 34 A3 00 3C */ addic. r5, r3, 0x3c -/* 80187FEC 00184F4C 4D 82 00 20 */ beqlr -/* 80187FF0 00184F50 C0 04 00 3C */ lfs f0, 0x3c(r4) -/* 80187FF4 00184F54 D0 05 00 00 */ stfs f0, 0(r5) -/* 80187FF8 00184F58 C0 04 00 40 */ lfs f0, 0x40(r4) -/* 80187FFC 00184F5C D0 05 00 04 */ stfs f0, 4(r5) -/* 80188000 00184F60 C0 04 00 44 */ lfs f0, 0x44(r4) -/* 80188004 00184F64 D0 05 00 08 */ stfs f0, 8(r5) -/* 80188008 00184F68 4E 80 00 20 */ blr - -.global CollisionDamping__15CGroundMovementFRC9CVector3fRC9CVector3fRC9CVector3fff -CollisionDamping__15CGroundMovementFRC9CVector3fRC9CVector3fRC9CVector3fff: -/* 8018800C 00184F6C 94 21 FF 20 */ stwu r1, -0xe0(r1) -/* 80188010 00184F70 7C 08 02 A6 */ mflr r0 -/* 80188014 00184F74 90 01 00 E4 */ stw r0, 0xe4(r1) -/* 80188018 00184F78 DB E1 00 D0 */ stfd f31, 0xd0(r1) -/* 8018801C 00184F7C F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 -/* 80188020 00184F80 DB C1 00 C0 */ stfd f30, 0xc0(r1) -/* 80188024 00184F84 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 -/* 80188028 00184F88 DB A1 00 B0 */ stfd f29, 0xb0(r1) -/* 8018802C 00184F8C F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0 -/* 80188030 00184F90 DB 81 00 A0 */ stfd f28, 0xa0(r1) -/* 80188034 00184F94 F3 81 00 A8 */ psq_st f28, 168(r1), 0, qr0 -/* 80188038 00184F98 DB 61 00 90 */ stfd f27, 0x90(r1) -/* 8018803C 00184F9C F3 61 00 98 */ psq_st f27, 152(r1), 0, qr0 -/* 80188040 00184FA0 DB 41 00 80 */ stfd f26, 0x80(r1) -/* 80188044 00184FA4 F3 41 00 88 */ psq_st f26, 136(r1), 0, qr0 -/* 80188048 00184FA8 DB 21 00 70 */ stfd f25, 0x70(r1) -/* 8018804C 00184FAC F3 21 00 78 */ psq_st f25, 120(r1), 0, qr0 -/* 80188050 00184FB0 DB 01 00 60 */ stfd f24, 0x60(r1) -/* 80188054 00184FB4 F3 01 00 68 */ psq_st f24, 104(r1), 0, qr0 -/* 80188058 00184FB8 DA E1 00 50 */ stfd f23, 0x50(r1) -/* 8018805C 00184FBC F2 E1 00 58 */ psq_st f23, 88(r1), 0, qr0 -/* 80188060 00184FC0 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 80188064 00184FC4 93 C1 00 48 */ stw r30, 0x48(r1) -/* 80188068 00184FC8 93 A1 00 44 */ stw r29, 0x44(r1) -/* 8018806C 00184FCC 7C DF 33 78 */ mr r31, r6 -/* 80188070 00184FD0 7C 7D 1B 78 */ mr r29, r3 -/* 80188074 00184FD4 C0 86 00 04 */ lfs f4, 4(r6) -/* 80188078 00184FD8 7C 9E 23 78 */ mr r30, r4 -/* 8018807C 00184FDC C0 E5 00 04 */ lfs f7, 4(r5) -/* 80188080 00184FE0 FF C0 08 90 */ fmr f30, f1 -/* 80188084 00184FE4 C0 02 A3 80 */ lfs f0, lbl_805AC0A0@sda21(r2) -/* 80188088 00184FE8 FF E0 10 90 */ fmr f31, f2 -/* 8018808C 00184FEC C0 66 00 00 */ lfs f3, 0(r6) -/* 80188090 00184FF0 EC 24 01 F2 */ fmuls f1, f4, f7 -/* 80188094 00184FF4 C0 C5 00 00 */ lfs f6, 0(r5) -/* 80188098 00184FF8 C0 A6 00 08 */ lfs f5, 8(r6) -/* 8018809C 00184FFC EC 40 00 F2 */ fmuls f2, f0, f3 -/* 801880A0 00185000 EC 63 09 BA */ fmadds f3, f3, f6, f1 -/* 801880A4 00185004 C1 05 00 08 */ lfs f8, 8(r5) -/* 801880A8 00185008 EC 20 01 32 */ fmuls f1, f0, f4 -/* 801880AC 0018500C 38 61 00 2C */ addi r3, r1, 0x2c -/* 801880B0 00185010 EC 00 01 72 */ fmuls f0, f0, f5 -/* 801880B4 00185014 EC A5 1A 3A */ fmadds f5, f5, f8, f3 -/* 801880B8 00185018 D0 41 00 08 */ stfs f2, 8(r1) -/* 801880BC 0018501C 38 81 00 20 */ addi r4, r1, 0x20 -/* 801880C0 00185020 EC 85 00 72 */ fmuls f4, f5, f1 -/* 801880C4 00185024 D0 21 00 0C */ stfs f1, 0xc(r1) -/* 801880C8 00185028 EC 65 00 32 */ fmuls f3, f5, f0 -/* 801880CC 0018502C EC 25 00 B2 */ fmuls f1, f5, f2 -/* 801880D0 00185030 D0 01 00 10 */ stfs f0, 0x10(r1) -/* 801880D4 00185034 EC A7 20 2A */ fadds f5, f7, f4 -/* 801880D8 00185038 EC 48 18 2A */ fadds f2, f8, f3 -/* 801880DC 0018503C D0 81 00 18 */ stfs f4, 0x18(r1) -/* 801880E0 00185040 EC 06 08 2A */ fadds f0, f6, f1 -/* 801880E4 00185044 D0 21 00 14 */ stfs f1, 0x14(r1) -/* 801880E8 00185048 D0 61 00 1C */ stfs f3, 0x1c(r1) -/* 801880EC 0018504C D0 01 00 20 */ stfs f0, 0x20(r1) -/* 801880F0 00185050 D0 A1 00 24 */ stfs f5, 0x24(r1) -/* 801880F4 00185054 D0 41 00 28 */ stfs f2, 0x28(r1) -/* 801880F8 00185058 48 18 C7 59 */ bl AsNormalized__9CVector3fCFv -/* 801880FC 0018505C C3 21 00 30 */ lfs f25, 0x30(r1) -/* 80188100 00185060 7F C3 F3 78 */ mr r3, r30 -/* 80188104 00185064 C0 5F 00 04 */ lfs f2, 4(r31) -/* 80188108 00185068 C0 3F 00 00 */ lfs f1, 0(r31) -/* 8018810C 0018506C EC 02 06 72 */ fmuls f0, f2, f25 -/* 80188110 00185070 C2 E1 00 2C */ lfs f23, 0x2c(r1) -/* 80188114 00185074 C3 01 00 34 */ lfs f24, 0x34(r1) -/* 80188118 00185078 C0 7F 00 08 */ lfs f3, 8(r31) -/* 8018811C 0018507C EC 01 05 FA */ fmadds f0, f1, f23, f0 -/* 80188120 00185080 EC 03 06 3A */ fmadds f0, f3, f24, f0 -/* 80188124 00185084 EF 40 00 72 */ fmuls f26, f0, f1 -/* 80188128 00185088 EF 60 00 B2 */ fmuls f27, f0, f2 -/* 8018812C 0018508C EF 80 00 F2 */ fmuls f28, f0, f3 -/* 80188130 00185090 48 18 C7 89 */ bl Magnitude__9CVector3fCFv -/* 80188134 00185094 FF A0 08 90 */ fmr f29, f1 -/* 80188138 00185098 7F C3 F3 78 */ mr r3, r30 -/* 8018813C 0018509C 48 18 C7 7D */ bl Magnitude__9CVector3fCFv -/* 80188140 001850A0 EC 17 D0 28 */ fsubs f0, f23, f26 -/* 80188144 001850A4 EC 59 D8 28 */ fsubs f2, f25, f27 -/* 80188148 001850A8 EC A1 06 B2 */ fmuls f5, f1, f26 -/* 8018814C 001850AC EC 9D 00 32 */ fmuls f4, f29, f0 -/* 80188150 001850B0 EC 18 E0 28 */ fsubs f0, f24, f28 -/* 80188154 001850B4 EC 61 06 F2 */ fmuls f3, f1, f27 -/* 80188158 001850B8 EC 5D 00 B2 */ fmuls f2, f29, f2 -/* 8018815C 001850BC EC 21 07 32 */ fmuls f1, f1, f28 -/* 80188160 001850C0 EC 1D 00 32 */ fmuls f0, f29, f0 -/* 80188164 001850C4 EC BE 01 72 */ fmuls f5, f30, f5 -/* 80188168 001850C8 EC 9F 01 32 */ fmuls f4, f31, f4 -/* 8018816C 001850CC EC 7E 00 F2 */ fmuls f3, f30, f3 -/* 80188170 001850D0 EC 5F 00 B2 */ fmuls f2, f31, f2 -/* 80188174 001850D4 EC 85 20 2A */ fadds f4, f5, f4 -/* 80188178 001850D8 EC 3E 00 72 */ fmuls f1, f30, f1 -/* 8018817C 001850DC EC 1F 00 32 */ fmuls f0, f31, f0 -/* 80188180 001850E0 EC 43 10 2A */ fadds f2, f3, f2 -/* 80188184 001850E4 D0 9D 00 00 */ stfs f4, 0(r29) -/* 80188188 001850E8 EC 01 00 2A */ fadds f0, f1, f0 -/* 8018818C 001850EC D0 5D 00 04 */ stfs f2, 4(r29) -/* 80188190 001850F0 D0 1D 00 08 */ stfs f0, 8(r29) -/* 80188194 001850F4 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 -/* 80188198 001850F8 CB E1 00 D0 */ lfd f31, 0xd0(r1) -/* 8018819C 001850FC E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 -/* 801881A0 00185100 CB C1 00 C0 */ lfd f30, 0xc0(r1) -/* 801881A4 00185104 E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0 -/* 801881A8 00185108 CB A1 00 B0 */ lfd f29, 0xb0(r1) -/* 801881AC 0018510C E3 81 00 A8 */ psq_l f28, 168(r1), 0, qr0 -/* 801881B0 00185110 CB 81 00 A0 */ lfd f28, 0xa0(r1) -/* 801881B4 00185114 E3 61 00 98 */ psq_l f27, 152(r1), 0, qr0 -/* 801881B8 00185118 CB 61 00 90 */ lfd f27, 0x90(r1) -/* 801881BC 0018511C E3 41 00 88 */ psq_l f26, 136(r1), 0, qr0 -/* 801881C0 00185120 CB 41 00 80 */ lfd f26, 0x80(r1) -/* 801881C4 00185124 E3 21 00 78 */ psq_l f25, 120(r1), 0, qr0 -/* 801881C8 00185128 CB 21 00 70 */ lfd f25, 0x70(r1) -/* 801881CC 0018512C E3 01 00 68 */ psq_l f24, 104(r1), 0, qr0 -/* 801881D0 00185130 CB 01 00 60 */ lfd f24, 0x60(r1) -/* 801881D4 00185134 E2 E1 00 58 */ psq_l f23, 88(r1), 0, qr0 -/* 801881D8 00185138 CA E1 00 50 */ lfd f23, 0x50(r1) -/* 801881DC 0018513C 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 801881E0 00185140 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 801881E4 00185144 80 01 00 E4 */ lwz r0, 0xe4(r1) -/* 801881E8 00185148 83 A1 00 44 */ lwz r29, 0x44(r1) -/* 801881EC 0018514C 7C 08 03 A6 */ mtlr r0 -/* 801881F0 00185150 38 21 00 E0 */ addi r1, r1, 0xe0 -/* 801881F4 00185154 4E 80 00 20 */ blr - -.global "MoveGroundColliderXY__15CGroundMovementFR19CAreaCollisionCacheR13CStateManagerR13CPhysicsActorRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>f" -"MoveGroundColliderXY__15CGroundMovementFR19CAreaCollisionCacheR13CStateManagerR13CPhysicsActorRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>f": -/* 801881F8 00185158 94 21 D8 E0 */ stwu r1, -0x2720(r1) -/* 801881FC 0018515C 7C 08 02 A6 */ mflr r0 -/* 80188200 00185160 90 01 27 24 */ stw r0, 0x2724(r1) -/* 80188204 00185164 38 00 27 18 */ li r0, 0x2718 -/* 80188208 00185168 DB E1 27 10 */ stfd f31, 0x2710(r1) -/* 8018820C 0018516C 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 -/* 80188210 00185170 38 00 27 08 */ li r0, 0x2708 -/* 80188214 00185174 DB C1 27 00 */ stfd f30, 0x2700(r1) -/* 80188218 00185178 13 C1 00 0E */ psq_stx f30, r1, r0, 0, qr0 -/* 8018821C 0018517C 38 00 26 F8 */ li r0, 0x26f8 -/* 80188220 00185180 DB A1 26 F0 */ stfd f29, 0x26f0(r1) -/* 80188224 00185184 13 A1 00 0E */ psq_stx f29, r1, r0, 0, qr0 -/* 80188228 00185188 BE 01 26 B0 */ stmw r16, 0x26b0(r1) -/* 8018822C 0018518C 7C BE 2B 78 */ mr r30, r5 -/* 80188230 00185190 80 A5 00 6C */ lwz r5, 0x6c(r5) -/* 80188234 00185194 80 1E 00 68 */ lwz r0, 0x68(r30) -/* 80188238 00185198 39 00 00 00 */ li r8, 0 -/* 8018823C 0018519C 3B 40 00 01 */ li r26, 1 -/* 80188240 001851A0 7C 7C 1B 78 */ mr r28, r3 -/* 80188244 001851A4 7C A5 40 38 */ and r5, r5, r8 -/* 80188248 001851A8 FF E0 08 90 */ fmr f31, f1 -/* 8018824C 001851AC 7C 00 D0 38 */ and r0, r0, r26 -/* 80188250 001851B0 7C 9D 23 78 */ mr r29, r4 -/* 80188254 001851B4 7C A3 42 78 */ xor r3, r5, r8 -/* 80188258 001851B8 7C D6 33 78 */ mr r22, r6 -/* 8018825C 001851BC 7C 00 42 78 */ xor r0, r0, r8 -/* 80188260 001851C0 7C 60 03 79 */ or. r0, r3, r0 -/* 80188264 001851C4 7C F5 3B 78 */ mr r21, r7 -/* 80188268 001851C8 3A 80 00 00 */ li r20, 0 -/* 8018826C 001851CC 41 82 00 08 */ beq lbl_80188274 -/* 80188270 001851D0 48 00 00 08 */ b lbl_80188278 -lbl_80188274: -/* 80188274 001851D4 7D 1A 43 78 */ mr r26, r8 -lbl_80188278: -/* 80188278 001851D8 7F C4 F3 78 */ mr r4, r30 -/* 8018827C 001851DC 38 61 01 A4 */ addi r3, r1, 0x1a4 -/* 80188280 001851E0 4B F9 33 F5 */ bl GetMotionState__13CPhysicsActorCFv -/* 80188284 001851E4 C1 81 01 A4 */ lfs f12, 0x1a4(r1) -/* 80188288 001851E8 38 60 00 00 */ li r3, 0 -/* 8018828C 001851EC C1 61 01 A8 */ lfs f11, 0x1a8(r1) -/* 80188290 001851F0 C1 41 01 AC */ lfs f10, 0x1ac(r1) -/* 80188294 001851F4 C1 21 01 B0 */ lfs f9, 0x1b0(r1) -/* 80188298 001851F8 C1 01 01 B4 */ lfs f8, 0x1b4(r1) -/* 8018829C 001851FC C0 E1 01 B8 */ lfs f7, 0x1b8(r1) -/* 801882A0 00185200 C0 C1 01 BC */ lfs f6, 0x1bc(r1) -/* 801882A4 00185204 C0 A1 01 C0 */ lfs f5, 0x1c0(r1) -/* 801882A8 00185208 C0 81 01 C4 */ lfs f4, 0x1c4(r1) -/* 801882AC 0018520C C0 61 01 C8 */ lfs f3, 0x1c8(r1) -/* 801882B0 00185210 C0 41 01 CC */ lfs f2, 0x1cc(r1) -/* 801882B4 00185214 C0 21 01 D0 */ lfs f1, 0x1d0(r1) -/* 801882B8 00185218 C0 01 01 D4 */ lfs f0, 0x1d4(r1) -/* 801882BC 0018521C D1 81 02 0C */ stfs f12, 0x20c(r1) -/* 801882C0 00185220 D1 61 02 10 */ stfs f11, 0x210(r1) -/* 801882C4 00185224 D1 41 02 14 */ stfs f10, 0x214(r1) -/* 801882C8 00185228 D1 21 02 18 */ stfs f9, 0x218(r1) -/* 801882CC 0018522C D1 01 02 1C */ stfs f8, 0x21c(r1) -/* 801882D0 00185230 D0 E1 02 20 */ stfs f7, 0x220(r1) -/* 801882D4 00185234 D0 C1 02 24 */ stfs f6, 0x224(r1) -/* 801882D8 00185238 D0 A1 02 28 */ stfs f5, 0x228(r1) -/* 801882DC 0018523C D0 81 02 2C */ stfs f4, 0x22c(r1) -/* 801882E0 00185240 D0 61 02 30 */ stfs f3, 0x230(r1) -/* 801882E4 00185244 D0 41 02 34 */ stfs f2, 0x234(r1) -/* 801882E8 00185248 D0 21 02 38 */ stfs f1, 0x238(r1) -/* 801882EC 0018524C D0 01 02 3C */ stfs f0, 0x23c(r1) -/* 801882F0 00185250 4B F2 C2 09 */ bl IsUser__Fi -/* 801882F4 00185254 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801882F8 00185258 41 82 00 20 */ beq lbl_80188318 -/* 801882FC 0018525C 3C 80 80 5A */ lis r4, skZero3f@ha -/* 80188300 00185260 7F C3 F3 78 */ mr r3, r30 -/* 80188304 00185264 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 80188308 00185268 4B F9 27 31 */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f -/* 8018830C 0018526C 7F C3 F3 78 */ mr r3, r30 -/* 80188310 00185270 38 81 02 0C */ addi r4, r1, 0x20c -/* 80188314 00185274 4B F9 34 15 */ bl SetMotionState__13CPhysicsActorFRC12CMotionState -lbl_80188318: -/* 80188318 00185278 88 0D A4 6C */ lbz r0, lbl_805A902C@sda21(r13) -/* 8018831C 0018527C 7C 00 07 75 */ extsb. r0, r0 -/* 80188320 00185280 40 82 00 14 */ bne lbl_80188334 -/* 80188324 00185284 38 60 00 00 */ li r3, 0 -/* 80188328 00185288 38 00 00 01 */ li r0, 1 -/* 8018832C 0018528C 90 6D A4 68 */ stw r3, lbl_805A9028@sda21(r13) -/* 80188330 00185290 98 0D A4 6C */ stb r0, lbl_805A902C@sda21(r13) -lbl_80188334: -/* 80188334 00185294 88 0D A4 74 */ lbz r0, lbl_805A9034@sda21(r13) -/* 80188338 00185298 7C 00 07 75 */ extsb. r0, r0 -/* 8018833C 0018529C 40 82 00 14 */ bne lbl_80188350 -/* 80188340 001852A0 38 60 00 00 */ li r3, 0 -/* 80188344 001852A4 38 00 00 01 */ li r0, 1 -/* 80188348 001852A8 90 6D A4 70 */ stw r3, lbl_805A9030@sda21(r13) -/* 8018834C 001852AC 98 0D A4 74 */ stb r0, lbl_805A9034@sda21(r13) -lbl_80188350: -/* 80188350 001852B0 88 0D A4 7C */ lbz r0, lbl_805A903C@sda21(r13) -/* 80188354 001852B4 7C 00 07 75 */ extsb. r0, r0 -/* 80188358 001852B8 40 82 00 10 */ bne lbl_80188368 -/* 8018835C 001852BC 38 00 00 01 */ li r0, 1 -/* 80188360 001852C0 90 0D A4 78 */ stw r0, lbl_805A9038@sda21(r13) -/* 80188364 001852C4 98 0D A4 7C */ stb r0, lbl_805A903C@sda21(r13) -lbl_80188368: -/* 80188368 001852C8 38 00 00 00 */ li r0, 0 -/* 8018836C 001852CC FC 20 F8 90 */ fmr f1, f31 -/* 80188370 001852D0 D3 E1 00 28 */ stfs f31, 0x28(r1) -/* 80188374 001852D4 7F C4 F3 78 */ mr r4, r30 -/* 80188378 001852D8 38 61 01 70 */ addi r3, r1, 0x170 -/* 8018837C 001852DC 3B E0 00 00 */ li r31, 0 -/* 80188380 001852E0 D3 E1 00 24 */ stfs f31, 0x24(r1) -/* 80188384 001852E4 3A E0 00 00 */ li r23, 0 -/* 80188388 001852E8 90 01 1A A8 */ stw r0, 0x1aa8(r1) -/* 8018838C 001852EC 4B F9 34 7D */ bl PredictMotion_Internal__13CPhysicsActorCFf -/* 80188390 001852F0 C1 81 01 70 */ lfs f12, 0x170(r1) -/* 80188394 001852F4 38 61 01 D8 */ addi r3, r1, 0x1d8 -/* 80188398 001852F8 C1 61 01 74 */ lfs f11, 0x174(r1) -/* 8018839C 001852FC C1 41 01 78 */ lfs f10, 0x178(r1) -/* 801883A0 00185300 C1 21 01 7C */ lfs f9, 0x17c(r1) -/* 801883A4 00185304 C1 01 01 80 */ lfs f8, 0x180(r1) -/* 801883A8 00185308 C0 E1 01 84 */ lfs f7, 0x184(r1) -/* 801883AC 0018530C C0 C1 01 88 */ lfs f6, 0x188(r1) -/* 801883B0 00185310 C0 A1 01 8C */ lfs f5, 0x18c(r1) -/* 801883B4 00185314 C0 81 01 90 */ lfs f4, 0x190(r1) -/* 801883B8 00185318 C0 61 01 94 */ lfs f3, 0x194(r1) -/* 801883BC 0018531C C0 41 01 98 */ lfs f2, 0x198(r1) -/* 801883C0 00185320 C0 21 01 9C */ lfs f1, 0x19c(r1) -/* 801883C4 00185324 C0 01 01 A0 */ lfs f0, 0x1a0(r1) -/* 801883C8 00185328 D1 81 01 D8 */ stfs f12, 0x1d8(r1) -/* 801883CC 0018532C D1 61 01 DC */ stfs f11, 0x1dc(r1) -/* 801883D0 00185330 D1 41 01 E0 */ stfs f10, 0x1e0(r1) -/* 801883D4 00185334 D1 21 01 E4 */ stfs f9, 0x1e4(r1) -/* 801883D8 00185338 D1 01 01 E8 */ stfs f8, 0x1e8(r1) -/* 801883DC 0018533C D0 E1 01 EC */ stfs f7, 0x1ec(r1) -/* 801883E0 00185340 D0 C1 01 F0 */ stfs f6, 0x1f0(r1) -/* 801883E4 00185344 D0 A1 01 F4 */ stfs f5, 0x1f4(r1) -/* 801883E8 00185348 D0 81 01 F8 */ stfs f4, 0x1f8(r1) -/* 801883EC 0018534C D0 61 01 FC */ stfs f3, 0x1fc(r1) -/* 801883F0 00185350 D0 41 02 00 */ stfs f2, 0x200(r1) -/* 801883F4 00185354 D0 21 02 04 */ stfs f1, 0x204(r1) -/* 801883F8 00185358 D0 01 02 08 */ stfs f0, 0x208(r1) -/* 801883FC 0018535C 48 18 C4 BD */ bl Magnitude__9CVector3fCFv -/* 80188400 00185360 57 40 06 3F */ clrlwi. r0, r26, 0x18 -/* 80188404 00185364 FF A0 08 90 */ fmr f29, f1 -/* 80188408 00185368 41 82 00 30 */ beq lbl_80188438 -/* 8018840C 0018536C C0 22 A3 64 */ lfs f1, lbl_805AC084@sda21(r2) -/* 80188410 00185370 C0 0D 8E B0 */ lfs f0, lbl_805A7A70@sda21(r13) -/* 80188414 00185374 EC 3D 08 24 */ fdivs f1, f29, f1 -/* 80188418 00185378 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8018841C 0018537C D0 21 00 18 */ stfs f1, 0x18(r1) -/* 80188420 00185380 40 80 00 0C */ bge lbl_8018842C -/* 80188424 00185384 38 6D 8E B0 */ addi r3, r13, lbl_805A7A70@sda21 -/* 80188428 00185388 48 00 00 08 */ b lbl_80188430 -lbl_8018842C: -/* 8018842C 0018538C 38 61 00 18 */ addi r3, r1, 0x18 -lbl_80188430: -/* 80188430 00185390 C0 03 00 00 */ lfs f0, 0(r3) -/* 80188434 00185394 48 00 00 2C */ b lbl_80188460 -lbl_80188438: -/* 80188438 00185398 C0 22 A3 84 */ lfs f1, lbl_805AC0A4@sda21(r2) -/* 8018843C 0018539C C0 0D 8E B4 */ lfs f0, lbl_805A7A74@sda21(r13) -/* 80188440 001853A0 EC 3D 08 24 */ fdivs f1, f29, f1 -/* 80188444 001853A4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80188448 001853A8 D0 21 00 14 */ stfs f1, 0x14(r1) -/* 8018844C 001853AC 40 80 00 0C */ bge lbl_80188458 -/* 80188450 001853B0 38 6D 8E B4 */ addi r3, r13, lbl_805A7A74@sda21 -/* 80188454 001853B4 48 00 00 08 */ b lbl_8018845C -lbl_80188458: -/* 80188458 001853B8 38 61 00 14 */ addi r3, r1, 0x14 -lbl_8018845C: -/* 8018845C 001853BC C0 03 00 00 */ lfs f0, 0(r3) -lbl_80188460: -/* 80188460 001853C0 D0 01 00 20 */ stfs f0, 0x20(r1) -/* 80188464 001853C4 7F C3 F3 78 */ mr r3, r30 -/* 80188468 001853C8 81 9E 00 00 */ lwz r12, 0(r30) -/* 8018846C 001853CC 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 80188470 001853D0 7D 89 03 A6 */ mtctr r12 -/* 80188474 001853D4 4E 80 04 21 */ bctrl -/* 80188478 001853D8 4B FF A2 55 */ bl GetMinExtentForCollisionPrimitive__14CGameCollisionFRC19CCollisionPrimitive -/* 8018847C 001853DC C0 02 A3 20 */ lfs f0, lbl_805AC040@sda21(r2) -/* 80188480 001853E0 EC 20 00 72 */ fmuls f1, f0, f1 -/* 80188484 001853E4 FC 1D 08 40 */ fcmpo cr0, f29, f1 -/* 80188488 001853E8 D0 21 00 1C */ stfs f1, 0x1c(r1) -/* 8018848C 001853EC 40 81 00 AC */ ble lbl_80188538 -/* 80188490 001853F0 EC 1F E8 24 */ fdivs f0, f31, f29 -/* 80188494 001853F4 7F C4 F3 78 */ mr r4, r30 -/* 80188498 001853F8 38 61 01 3C */ addi r3, r1, 0x13c -/* 8018849C 001853FC EC 21 00 32 */ fmuls f1, f1, f0 -/* 801884A0 00185400 FF E0 08 90 */ fmr f31, f1 -/* 801884A4 00185404 D0 21 00 24 */ stfs f1, 0x24(r1) -/* 801884A8 00185408 4B F9 33 61 */ bl PredictMotion_Internal__13CPhysicsActorCFf -/* 801884AC 0018540C C0 21 00 20 */ lfs f1, 0x20(r1) -/* 801884B0 00185410 C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 801884B4 00185414 82 21 01 3C */ lwz r17, 0x13c(r1) -/* 801884B8 00185418 82 01 01 40 */ lwz r16, 0x140(r1) -/* 801884BC 0018541C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801884C0 00185420 81 81 01 44 */ lwz r12, 0x144(r1) -/* 801884C4 00185424 81 61 01 48 */ lwz r11, 0x148(r1) -/* 801884C8 00185428 81 41 01 4C */ lwz r10, 0x14c(r1) -/* 801884CC 0018542C 81 21 01 50 */ lwz r9, 0x150(r1) -/* 801884D0 00185430 81 01 01 54 */ lwz r8, 0x154(r1) -/* 801884D4 00185434 80 E1 01 58 */ lwz r7, 0x158(r1) -/* 801884D8 00185438 80 C1 01 5C */ lwz r6, 0x15c(r1) -/* 801884DC 0018543C 80 A1 01 60 */ lwz r5, 0x160(r1) -/* 801884E0 00185440 80 81 01 64 */ lwz r4, 0x164(r1) -/* 801884E4 00185444 80 61 01 68 */ lwz r3, 0x168(r1) -/* 801884E8 00185448 80 01 01 6C */ lwz r0, 0x16c(r1) -/* 801884EC 0018544C 92 21 01 D8 */ stw r17, 0x1d8(r1) -/* 801884F0 00185450 92 01 01 DC */ stw r16, 0x1dc(r1) -/* 801884F4 00185454 91 81 01 E0 */ stw r12, 0x1e0(r1) -/* 801884F8 00185458 91 61 01 E4 */ stw r11, 0x1e4(r1) -/* 801884FC 0018545C 91 41 01 E8 */ stw r10, 0x1e8(r1) -/* 80188500 00185460 91 21 01 EC */ stw r9, 0x1ec(r1) -/* 80188504 00185464 91 01 01 F0 */ stw r8, 0x1f0(r1) -/* 80188508 00185468 90 E1 01 F4 */ stw r7, 0x1f4(r1) -/* 8018850C 0018546C 90 C1 01 F8 */ stw r6, 0x1f8(r1) -/* 80188510 00185470 90 A1 01 FC */ stw r5, 0x1fc(r1) -/* 80188514 00185474 90 81 02 00 */ stw r4, 0x200(r1) -/* 80188518 00185478 90 61 02 04 */ stw r3, 0x204(r1) -/* 8018851C 0018547C 90 01 02 08 */ stw r0, 0x208(r1) -/* 80188520 00185480 40 80 00 0C */ bge lbl_8018852C -/* 80188524 00185484 38 61 00 20 */ addi r3, r1, 0x20 -/* 80188528 00185488 48 00 00 08 */ b lbl_80188530 -lbl_8018852C: -/* 8018852C 0018548C 38 61 00 1C */ addi r3, r1, 0x1c -lbl_80188530: -/* 80188530 00185490 C0 03 00 00 */ lfs f0, 0(r3) -/* 80188534 00185494 D0 01 00 20 */ stfs f0, 0x20(r1) -lbl_80188538: -/* 80188538 00185498 FF A0 F8 90 */ fmr f29, f31 -/* 8018853C 0018549C 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80188540 001854A0 C3 C2 A3 18 */ lfs f30, lbl_805AC038@sda21(r2) -/* 80188544 001854A4 3A 01 01 00 */ addi r16, r1, 0x100 -/* 80188548 001854A8 3A 21 02 A4 */ addi r17, r1, 0x2a4 -/* 8018854C 001854AC 3B 21 02 80 */ addi r25, r1, 0x280 -/* 80188550 001854B0 3B 01 02 78 */ addi r24, r1, 0x278 -/* 80188554 001854B4 3B 63 66 A0 */ addi r27, r3, skZero3f@l -/* 80188558 001854B8 38 00 00 01 */ li r0, 1 -/* 8018855C 001854BC 48 00 05 40 */ b lbl_80188A9C -lbl_80188560: -/* 80188560 001854C0 7F C3 F3 78 */ mr r3, r30 -/* 80188564 001854C4 38 81 01 D8 */ addi r4, r1, 0x1d8 -/* 80188568 001854C8 4B F9 24 D1 */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f -/* 8018856C 001854CC 80 A1 1A A8 */ lwz r5, 0x1aa8(r1) -/* 80188570 001854D0 38 60 00 00 */ li r3, 0 -/* 80188574 001854D4 2C 05 00 00 */ cmpwi r5, 0 -/* 80188578 001854D8 40 81 00 44 */ ble lbl_801885BC -/* 8018857C 001854DC 2C 05 00 08 */ cmpwi r5, 8 -/* 80188580 001854E0 38 85 FF F8 */ addi r4, r5, -8 -/* 80188584 001854E4 40 81 00 20 */ ble lbl_801885A4 -/* 80188588 001854E8 38 04 00 07 */ addi r0, r4, 7 -/* 8018858C 001854EC 54 00 E8 FE */ srwi r0, r0, 3 -/* 80188590 001854F0 7C 09 03 A6 */ mtctr r0 -/* 80188594 001854F4 2C 04 00 00 */ cmpwi r4, 0 -/* 80188598 001854F8 40 81 00 0C */ ble lbl_801885A4 -lbl_8018859C: -/* 8018859C 001854FC 38 63 00 08 */ addi r3, r3, 8 -/* 801885A0 00185500 42 00 FF FC */ bdnz lbl_8018859C -lbl_801885A4: -/* 801885A4 00185504 7C 03 28 50 */ subf r0, r3, r5 -/* 801885A8 00185508 7C 09 03 A6 */ mtctr r0 -/* 801885AC 0018550C 7C 03 28 00 */ cmpw r3, r5 -/* 801885B0 00185510 40 80 00 0C */ bge lbl_801885BC -lbl_801885B4: -/* 801885B4 00185514 38 63 00 01 */ addi r3, r3, 1 -/* 801885B8 00185518 42 00 FF FC */ bdnz lbl_801885B4 -lbl_801885BC: -/* 801885BC 0018551C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 801885C0 00185520 38 60 00 00 */ li r3, 0 -/* 801885C4 00185524 90 61 1A A8 */ stw r3, 0x1aa8(r1) -/* 801885C8 00185528 7F C4 F3 78 */ mr r4, r30 -/* 801885CC 0018552C 38 61 01 0C */ addi r3, r1, 0x10c -/* 801885D0 00185530 B0 01 00 10 */ sth r0, 0x10(r1) -/* 801885D4 00185534 81 9E 00 00 */ lwz r12, 0(r30) -/* 801885D8 00185538 81 8C 00 70 */ lwz r12, 0x70(r12) -/* 801885DC 0018553C 7D 89 03 A6 */ mtctr r12 -/* 801885E0 00185540 3B FF 00 01 */ addi r31, r31, 1 -/* 801885E4 00185544 4E 80 04 21 */ bctrl -/* 801885E8 00185548 7F C3 F3 78 */ mr r3, r30 -/* 801885EC 0018554C 81 9E 00 00 */ lwz r12, 0(r30) -/* 801885F0 00185550 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 801885F4 00185554 7D 89 03 A6 */ mtctr r12 -/* 801885F8 00185558 4E 80 04 21 */ bctrl -/* 801885FC 0018555C 7C 65 1B 78 */ mr r5, r3 -/* 80188600 00185560 7F A3 EB 78 */ mr r3, r29 -/* 80188604 00185564 7F 84 E3 78 */ mr r4, r28 -/* 80188608 00185568 7E C7 B3 78 */ mr r7, r22 -/* 8018860C 0018556C 7E A8 AB 78 */ mr r8, r21 -/* 80188610 00185570 38 C1 01 0C */ addi r6, r1, 0x10c -/* 80188614 00185574 39 21 00 10 */ addi r9, r1, 0x10 -/* 80188618 00185578 39 41 1A A8 */ addi r10, r1, 0x1aa8 -/* 8018861C 0018557C 4B FF BD C9 */ bl "DetectCollision_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>R9TUniqueIdR18CCollisionInfoList" -/* 80188620 00185580 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80188624 00185584 7C 72 1B 78 */ mr r18, r3 -/* 80188628 00185588 41 82 00 28 */ beq lbl_80188650 -/* 8018862C 0018558C A0 01 00 10 */ lhz r0, 0x10(r1) -/* 80188630 00185590 7F A3 EB 78 */ mr r3, r29 -/* 80188634 00185594 38 81 00 0C */ addi r4, r1, 0xc -/* 80188638 00185598 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8018863C 0018559C 4B EC 3F 39 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80188640 001855A0 7C 64 1B 78 */ mr r4, r3 -/* 80188644 001855A4 38 61 00 2C */ addi r3, r1, 0x2c -/* 80188648 001855A8 4B F2 40 9D */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" -/* 8018864C 001855AC 82 E3 00 04 */ lwz r23, 4(r3) -lbl_80188650: -/* 80188650 001855B0 7F C3 F3 78 */ mr r3, r30 -/* 80188654 001855B4 7F 64 DB 78 */ mr r4, r27 -/* 80188658 001855B8 4B F9 23 E1 */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f -/* 8018865C 001855BC 56 40 06 3F */ clrlwi. r0, r18, 0x18 -/* 80188660 001855C0 41 82 03 88 */ beq lbl_801889E8 -/* 80188664 001855C4 38 61 01 D8 */ addi r3, r1, 0x1d8 -/* 80188668 001855C8 3A 80 00 01 */ li r20, 1 -/* 8018866C 001855CC 48 18 C2 4D */ bl Magnitude__9CVector3fCFv -/* 80188670 001855D0 C0 01 00 20 */ lfs f0, 0x20(r1) -/* 80188674 001855D4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80188678 001855D8 40 80 03 60 */ bge lbl_801889D8 -/* 8018867C 001855DC 38 00 00 00 */ li r0, 0 -/* 80188680 001855E0 28 17 00 00 */ cmplwi r23, 0 -/* 80188684 001855E4 90 01 0E A4 */ stw r0, 0xea4(r1) -/* 80188688 001855E8 90 01 02 A0 */ stw r0, 0x2a0(r1) -/* 8018868C 001855EC C0 7E 01 38 */ lfs f3, 0x138(r30) -/* 80188690 001855F0 D0 61 00 64 */ stfs f3, 0x64(r1) -/* 80188694 001855F4 C0 5E 01 3C */ lfs f2, 0x13c(r30) -/* 80188698 001855F8 D0 41 00 68 */ stfs f2, 0x68(r1) -/* 8018869C 001855FC C0 3E 01 40 */ lfs f1, 0x140(r30) -/* 801886A0 00185600 D0 21 00 6C */ stfs f1, 0x6c(r1) -/* 801886A4 00185604 41 82 00 28 */ beq lbl_801886CC -/* 801886A8 00185608 C0 17 01 38 */ lfs f0, 0x138(r23) -/* 801886AC 0018560C EC 03 00 28 */ fsubs f0, f3, f0 -/* 801886B0 00185610 D0 01 00 64 */ stfs f0, 0x64(r1) -/* 801886B4 00185614 C0 17 01 3C */ lfs f0, 0x13c(r23) -/* 801886B8 00185618 EC 02 00 28 */ fsubs f0, f2, f0 -/* 801886BC 0018561C D0 01 00 68 */ stfs f0, 0x68(r1) -/* 801886C0 00185620 C0 17 01 40 */ lfs f0, 0x140(r23) -/* 801886C4 00185624 EC 01 00 28 */ fsubs f0, f1, f0 -/* 801886C8 00185628 D0 01 00 6C */ stfs f0, 0x6c(r1) -lbl_801886CC: -/* 801886CC 0018562C 38 61 00 64 */ addi r3, r1, 0x64 -/* 801886D0 00185630 38 81 1A A8 */ addi r4, r1, 0x1aa8 -/* 801886D4 00185634 38 A1 0E A4 */ addi r5, r1, 0xea4 -/* 801886D8 00185638 48 14 9C 71 */ bl FilterOutBackfaces__13CollisionUtilFRC9CVector3fRC18CCollisionInfoListR18CCollisionInfoList -/* 801886DC 0018563C 38 61 0E A4 */ addi r3, r1, 0xea4 -/* 801886E0 00185640 38 81 02 A0 */ addi r4, r1, 0x2a0 -/* 801886E4 00185644 4B FF D1 95 */ bl FilterBoxFloorCollisions__12CAABoxFilterFRC18CCollisionInfoListR18CCollisionInfoList -/* 801886E8 00185648 7F A3 EB 78 */ mr r3, r29 -/* 801886EC 0018564C 7F C4 F3 78 */ mr r4, r30 -/* 801886F0 00185650 38 A1 00 10 */ addi r5, r1, 0x10 -/* 801886F4 00185654 38 C1 02 A0 */ addi r6, r1, 0x2a0 -/* 801886F8 00185658 4B FF A4 C1 */ bl MakeCollisionCallbacks__14CGameCollisionFR13CStateManagerR13CPhysicsActorRC9TUniqueIdRC18CCollisionInfoList -/* 801886FC 0018565C 80 01 02 A0 */ lwz r0, 0x2a0(r1) -/* 80188700 00185660 2C 00 00 00 */ cmpwi r0, 0 -/* 80188704 00185664 40 82 01 14 */ bne lbl_80188818 -/* 80188708 00185668 57 40 06 3F */ clrlwi. r0, r26, 0x18 -/* 8018870C 0018566C 41 82 01 0C */ beq lbl_80188818 -/* 80188710 00185670 C0 1E 01 F4 */ lfs f0, 0x1f4(r30) -/* 80188714 00185674 7E 04 83 78 */ mr r4, r16 -/* 80188718 00185678 38 61 00 40 */ addi r3, r1, 0x40 -/* 8018871C 0018567C 38 AD 8E B8 */ addi r5, r13, lbl_805A7A78@sda21 -/* 80188720 00185680 D0 01 00 D8 */ stfs f0, 0xd8(r1) -/* 80188724 00185684 C0 1E 01 F8 */ lfs f0, 0x1f8(r30) -/* 80188728 00185688 D0 01 00 DC */ stfs f0, 0xdc(r1) -/* 8018872C 0018568C C0 1E 01 FC */ lfs f0, 0x1fc(r30) -/* 80188730 00185690 D0 01 00 E0 */ stfs f0, 0xe0(r1) -/* 80188734 00185694 C0 1E 02 00 */ lfs f0, 0x200(r30) -/* 80188738 00185698 D0 01 00 E4 */ stfs f0, 0xe4(r1) -/* 8018873C 0018569C C0 1E 02 04 */ lfs f0, 0x204(r30) -/* 80188740 001856A0 D0 01 00 E8 */ stfs f0, 0xe8(r1) -/* 80188744 001856A4 C0 1E 02 08 */ lfs f0, 0x208(r30) -/* 80188748 001856A8 D0 01 00 EC */ stfs f0, 0xec(r1) -/* 8018874C 001856AC C0 1E 02 0C */ lfs f0, 0x20c(r30) -/* 80188750 001856B0 D0 01 00 F0 */ stfs f0, 0xf0(r1) -/* 80188754 001856B4 C0 1E 02 10 */ lfs f0, 0x210(r30) -/* 80188758 001856B8 D0 01 00 F4 */ stfs f0, 0xf4(r1) -/* 8018875C 001856BC C0 1E 02 14 */ lfs f0, 0x214(r30) -/* 80188760 001856C0 D0 01 00 F8 */ stfs f0, 0xf8(r1) -/* 80188764 001856C4 C0 1E 02 18 */ lfs f0, 0x218(r30) -/* 80188768 001856C8 D0 01 00 FC */ stfs f0, 0xfc(r1) -/* 8018876C 001856CC C0 1E 02 1C */ lfs f0, 0x21c(r30) -/* 80188770 001856D0 D0 01 01 00 */ stfs f0, 0x100(r1) -/* 80188774 001856D4 C0 1E 02 20 */ lfs f0, 0x220(r30) -/* 80188778 001856D8 D0 01 01 04 */ stfs f0, 0x104(r1) -/* 8018877C 001856DC C0 1E 02 24 */ lfs f0, 0x224(r30) -/* 80188780 001856E0 D0 01 01 08 */ stfs f0, 0x108(r1) -/* 80188784 001856E4 4B E9 2D 01 */ bl __ml__FRC10CAxisAngleRCf -/* 80188788 001856E8 C0 42 A3 20 */ lfs f2, lbl_805AC040@sda21(r2) -/* 8018878C 001856EC 7F C3 F3 78 */ mr r3, r30 -/* 80188790 001856F0 C0 01 00 F8 */ lfs f0, 0xf8(r1) -/* 80188794 001856F4 38 81 00 A4 */ addi r4, r1, 0xa4 -/* 80188798 001856F8 C0 21 00 FC */ lfs f1, 0xfc(r1) -/* 8018879C 001856FC ED 82 00 32 */ fmuls f12, f2, f0 -/* 801887A0 00185700 C0 01 00 F4 */ lfs f0, 0xf4(r1) -/* 801887A4 00185704 ED 62 00 72 */ fmuls f11, f2, f1 -/* 801887A8 00185708 C1 21 00 D8 */ lfs f9, 0xd8(r1) -/* 801887AC 0018570C ED 42 00 32 */ fmuls f10, f2, f0 -/* 801887B0 00185710 C1 01 00 DC */ lfs f8, 0xdc(r1) -/* 801887B4 00185714 C0 E1 00 E0 */ lfs f7, 0xe0(r1) -/* 801887B8 00185718 C0 C1 00 E4 */ lfs f6, 0xe4(r1) -/* 801887BC 0018571C C0 A1 00 E8 */ lfs f5, 0xe8(r1) -/* 801887C0 00185720 C0 81 00 EC */ lfs f4, 0xec(r1) -/* 801887C4 00185724 C0 61 00 F0 */ lfs f3, 0xf0(r1) -/* 801887C8 00185728 C0 41 00 40 */ lfs f2, 0x40(r1) -/* 801887CC 0018572C C0 21 00 44 */ lfs f1, 0x44(r1) -/* 801887D0 00185730 C0 01 00 48 */ lfs f0, 0x48(r1) -/* 801887D4 00185734 D1 41 00 4C */ stfs f10, 0x4c(r1) -/* 801887D8 00185738 D1 81 00 50 */ stfs f12, 0x50(r1) -/* 801887DC 0018573C D1 61 00 54 */ stfs f11, 0x54(r1) -/* 801887E0 00185740 D1 21 00 A4 */ stfs f9, 0xa4(r1) -/* 801887E4 00185744 D1 01 00 A8 */ stfs f8, 0xa8(r1) -/* 801887E8 00185748 D0 E1 00 AC */ stfs f7, 0xac(r1) -/* 801887EC 0018574C D0 C1 00 B0 */ stfs f6, 0xb0(r1) -/* 801887F0 00185750 D0 A1 00 B4 */ stfs f5, 0xb4(r1) -/* 801887F4 00185754 D0 81 00 B8 */ stfs f4, 0xb8(r1) -/* 801887F8 00185758 D0 61 00 BC */ stfs f3, 0xbc(r1) -/* 801887FC 0018575C D1 41 00 C0 */ stfs f10, 0xc0(r1) -/* 80188800 00185760 D1 81 00 C4 */ stfs f12, 0xc4(r1) -/* 80188804 00185764 D1 61 00 C8 */ stfs f11, 0xc8(r1) -/* 80188808 00185768 D0 41 00 CC */ stfs f2, 0xcc(r1) -/* 8018880C 0018576C D0 21 00 D0 */ stfs f1, 0xd0(r1) -/* 80188810 00185770 D0 01 00 D4 */ stfs f0, 0xd4(r1) -/* 80188814 00185774 4B F9 2F 15 */ bl SetMotionState__13CPhysicsActorFRC12CMotionState -lbl_80188818: -/* 80188818 00185778 38 60 00 00 */ li r3, 0 -/* 8018881C 0018577C 4B F2 BC DD */ bl IsUser__Fi -/* 80188820 00185780 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80188824 00185784 41 82 00 34 */ beq lbl_80188858 -/* 80188828 00185788 80 01 02 A0 */ lwz r0, 0x2a0(r1) -/* 8018882C 0018578C 2C 00 00 00 */ cmpwi r0, 0 -/* 80188830 00185790 40 81 00 18 */ ble lbl_80188848 -/* 80188834 00185794 48 1C 17 79 */ bl White__6CColorFv -/* 80188838 00185798 7C 64 1B 78 */ mr r4, r3 -/* 8018883C 0018579C 38 61 02 A0 */ addi r3, r1, 0x2a0 -/* 80188840 001857A0 4B FF A1 15 */ bl ShowCollisionResults__14CGameCollisionFR18CCollisionInfoListRC6CColor -/* 80188844 001857A4 48 00 00 14 */ b lbl_80188858 -lbl_80188848: -/* 80188848 001857A8 48 1C 17 45 */ bl Yellow__6CColorFv -/* 8018884C 001857AC 7C 64 1B 78 */ mr r4, r3 -/* 80188850 001857B0 38 61 1A A8 */ addi r3, r1, 0x1aa8 -/* 80188854 001857B4 4B FF A1 01 */ bl ShowCollisionResults__14CGameCollisionFR18CCollisionInfoListRC6CColor -lbl_80188858: -/* 80188858 001857B8 7E 33 8B 78 */ mr r19, r17 -/* 8018885C 001857BC 3A 40 00 00 */ li r18, 0 -/* 80188860 001857C0 48 00 00 94 */ b lbl_801888F4 -lbl_80188864: -/* 80188864 001857C4 7E 64 9B 78 */ mr r4, r19 -/* 80188868 001857C8 38 61 02 40 */ addi r3, r1, 0x240 -/* 8018886C 001857CC 4B F6 8C 35 */ bl __ct__14CCollisionInfoFRC14CCollisionInfo -/* 80188870 001857D0 7F C3 F3 78 */ mr r3, r30 -/* 80188874 001857D4 4B F9 1C 65 */ bl GetCoefficientOfRestitutionModifier__13CPhysicsActorCFv -/* 80188878 001857D8 FF A0 08 90 */ fmr f29, f1 -/* 8018887C 001857DC 38 61 02 40 */ addi r3, r1, 0x240 -/* 80188880 001857E0 4B FF A0 CD */ bl GetCoefficientOfRestitution__14CGameCollisionFRC14CCollisionInfo -/* 80188884 001857E4 C0 61 02 88 */ lfs f3, 0x288(r1) -/* 80188888 001857E8 28 17 00 00 */ cmplwi r23, 0 -/* 8018888C 001857EC C0 41 02 8C */ lfs f2, 0x28c(r1) -/* 80188890 001857F0 EF A1 E8 2A */ fadds f29, f1, f29 -/* 80188894 001857F4 C0 01 02 90 */ lfs f0, 0x290(r1) -/* 80188898 001857F8 D0 61 00 58 */ stfs f3, 0x58(r1) -/* 8018889C 001857FC D0 41 00 5C */ stfs f2, 0x5c(r1) -/* 801888A0 00185800 D0 01 00 60 */ stfs f0, 0x60(r1) -/* 801888A4 00185804 41 82 00 20 */ beq lbl_801888C4 -/* 801888A8 00185808 FC 20 E8 90 */ fmr f1, f29 -/* 801888AC 0018580C 7F C3 F3 78 */ mr r3, r30 -/* 801888B0 00185810 7E E4 BB 78 */ mr r4, r23 -/* 801888B4 00185814 38 A1 02 40 */ addi r5, r1, 0x240 -/* 801888B8 00185818 38 C0 00 01 */ li r6, 1 -/* 801888BC 0018581C 4B FF 98 45 */ bl CollideWithDynamicBodyNoRot__14CGameCollisionFR13CPhysicsActorR13CPhysicsActorRC14CCollisionInfofb -/* 801888C0 00185820 48 00 00 2C */ b lbl_801888EC -lbl_801888C4: -/* 801888C4 00185824 38 61 00 34 */ addi r3, r1, 0x34 -/* 801888C8 00185828 38 81 00 58 */ addi r4, r1, 0x58 -/* 801888CC 0018582C 48 18 B5 05 */ bl __ct__11CUnitVectorFRC9CVector3f -/* 801888D0 00185830 FC 20 E8 90 */ fmr f1, f29 -/* 801888D4 00185834 7C 66 1B 78 */ mr r6, r3 -/* 801888D8 00185838 7F C3 F3 78 */ mr r3, r30 -/* 801888DC 0018583C 7F 04 C3 78 */ mr r4, r24 -/* 801888E0 00185840 7F 25 CB 78 */ mr r5, r25 -/* 801888E4 00185844 38 E0 00 01 */ li r7, 1 -/* 801888E8 00185848 4B FF 96 85 */ bl CollideWithStaticBodyNoRot__14CGameCollisionFR13CPhysicsActorRC13CMaterialListRC13CMaterialListRC13CUnitVector3ffb -lbl_801888EC: -/* 801888EC 0018584C 3A 73 00 60 */ addi r19, r19, 0x60 -/* 801888F0 00185850 3A 52 00 01 */ addi r18, r18, 1 -lbl_801888F4: -/* 801888F4 00185854 80 A1 02 A0 */ lwz r5, 0x2a0(r1) -/* 801888F8 00185858 7C 12 28 00 */ cmpw r18, r5 -/* 801888FC 0018585C 41 80 FF 68 */ blt lbl_80188864 -/* 80188900 00185860 C0 21 00 28 */ lfs f1, 0x28(r1) -/* 80188904 00185864 C0 01 00 24 */ lfs f0, 0x24(r1) -/* 80188908 00185868 EC 21 F8 28 */ fsubs f1, f1, f31 -/* 8018890C 0018586C FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 80188910 00185870 D0 21 00 28 */ stfs f1, 0x28(r1) -/* 80188914 00185874 40 80 00 0C */ bge lbl_80188920 -/* 80188918 00185878 38 61 00 24 */ addi r3, r1, 0x24 -/* 8018891C 0018587C 48 00 00 08 */ b lbl_80188924 -lbl_80188920: -/* 80188920 00185880 38 61 00 28 */ addi r3, r1, 0x28 -lbl_80188924: -/* 80188924 00185884 C3 A3 00 00 */ lfs f29, 0(r3) -/* 80188928 00185888 2C 05 00 00 */ cmpwi r5, 0 -/* 8018892C 0018588C 38 60 00 00 */ li r3, 0 -/* 80188930 00185890 FF E0 E8 90 */ fmr f31, f29 -/* 80188934 00185894 40 81 00 44 */ ble lbl_80188978 -/* 80188938 00185898 2C 05 00 08 */ cmpwi r5, 8 -/* 8018893C 0018589C 38 85 FF F8 */ addi r4, r5, -8 -/* 80188940 001858A0 40 81 00 20 */ ble lbl_80188960 -/* 80188944 001858A4 38 04 00 07 */ addi r0, r4, 7 -/* 80188948 001858A8 54 00 E8 FE */ srwi r0, r0, 3 -/* 8018894C 001858AC 7C 09 03 A6 */ mtctr r0 -/* 80188950 001858B0 2C 04 00 00 */ cmpwi r4, 0 -/* 80188954 001858B4 40 81 00 0C */ ble lbl_80188960 -lbl_80188958: -/* 80188958 001858B8 38 63 00 08 */ addi r3, r3, 8 -/* 8018895C 001858BC 42 00 FF FC */ bdnz lbl_80188958 -lbl_80188960: -/* 80188960 001858C0 7C 03 28 50 */ subf r0, r3, r5 -/* 80188964 001858C4 7C 09 03 A6 */ mtctr r0 -/* 80188968 001858C8 7C 03 28 00 */ cmpw r3, r5 -/* 8018896C 001858CC 40 80 00 0C */ bge lbl_80188978 -lbl_80188970: -/* 80188970 001858D0 38 63 00 01 */ addi r3, r3, 1 -/* 80188974 001858D4 42 00 FF FC */ bdnz lbl_80188970 -lbl_80188978: -/* 80188978 001858D8 80 A1 0E A4 */ lwz r5, 0xea4(r1) -/* 8018897C 001858DC 38 60 00 00 */ li r3, 0 -/* 80188980 001858E0 90 61 02 A0 */ stw r3, 0x2a0(r1) -/* 80188984 001858E4 2C 05 00 00 */ cmpwi r5, 0 -/* 80188988 001858E8 40 81 00 44 */ ble lbl_801889CC -/* 8018898C 001858EC 2C 05 00 08 */ cmpwi r5, 8 -/* 80188990 001858F0 38 85 FF F8 */ addi r4, r5, -8 -/* 80188994 001858F4 40 81 00 20 */ ble lbl_801889B4 -/* 80188998 001858F8 38 04 00 07 */ addi r0, r4, 7 -/* 8018899C 001858FC 54 00 E8 FE */ srwi r0, r0, 3 -/* 801889A0 00185900 7C 09 03 A6 */ mtctr r0 -/* 801889A4 00185904 2C 04 00 00 */ cmpwi r4, 0 -/* 801889A8 00185908 40 81 00 0C */ ble lbl_801889B4 -lbl_801889AC: -/* 801889AC 0018590C 38 63 00 08 */ addi r3, r3, 8 -/* 801889B0 00185910 42 00 FF FC */ bdnz lbl_801889AC -lbl_801889B4: -/* 801889B4 00185914 7C 03 28 50 */ subf r0, r3, r5 -/* 801889B8 00185918 7C 09 03 A6 */ mtctr r0 -/* 801889BC 0018591C 7C 03 28 00 */ cmpw r3, r5 -/* 801889C0 00185920 40 80 00 0C */ bge lbl_801889CC -lbl_801889C4: -/* 801889C4 00185924 38 63 00 01 */ addi r3, r3, 1 -/* 801889C8 00185928 42 00 FF FC */ bdnz lbl_801889C4 -lbl_801889CC: -/* 801889CC 0018592C 38 00 00 00 */ li r0, 0 -/* 801889D0 00185930 90 01 0E A4 */ stw r0, 0xea4(r1) -/* 801889D4 00185934 48 00 00 40 */ b lbl_80188A14 -lbl_801889D8: -/* 801889D8 00185938 C0 02 A3 20 */ lfs f0, lbl_805AC040@sda21(r2) -/* 801889DC 0018593C EF BD 00 32 */ fmuls f29, f29, f0 -/* 801889E0 00185940 EF FF 00 32 */ fmuls f31, f31, f0 -/* 801889E4 00185944 48 00 00 30 */ b lbl_80188A14 -lbl_801889E8: -/* 801889E8 00185948 7F C3 F3 78 */ mr r3, r30 -/* 801889EC 0018594C 38 81 01 D8 */ addi r4, r1, 0x1d8 -/* 801889F0 00185950 4B F9 2B 25 */ bl AddMotionState__13CPhysicsActorFRC12CMotionState -/* 801889F4 00185954 C0 01 00 28 */ lfs f0, 0x28(r1) -/* 801889F8 00185958 3C 60 80 5A */ lis r3, skZero3f@ha -/* 801889FC 0018595C 38 83 66 A0 */ addi r4, r3, skZero3f@l -/* 80188A00 00185960 EC 00 F8 28 */ fsubs f0, f0, f31 -/* 80188A04 00185964 7F C3 F3 78 */ mr r3, r30 -/* 80188A08 00185968 FF E0 E8 90 */ fmr f31, f29 -/* 80188A0C 0018596C D0 01 00 28 */ stfs f0, 0x28(r1) -/* 80188A10 00185970 4B F9 20 29 */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f -lbl_80188A14: -/* 80188A14 00185974 FC 20 F8 90 */ fmr f1, f31 -/* 80188A18 00185978 7F C4 F3 78 */ mr r4, r30 -/* 80188A1C 0018597C 38 61 00 70 */ addi r3, r1, 0x70 -/* 80188A20 00185980 4B F9 2D E9 */ bl PredictMotion_Internal__13CPhysicsActorCFf -/* 80188A24 00185984 C0 01 00 28 */ lfs f0, 0x28(r1) -/* 80188A28 00185988 82 61 00 70 */ lwz r19, 0x70(r1) -/* 80188A2C 0018598C FC 00 F0 40 */ fcmpo cr0, f0, f30 -/* 80188A30 00185990 82 41 00 74 */ lwz r18, 0x74(r1) -/* 80188A34 00185994 81 81 00 78 */ lwz r12, 0x78(r1) -/* 80188A38 00185998 81 61 00 7C */ lwz r11, 0x7c(r1) -/* 80188A3C 0018599C 81 41 00 80 */ lwz r10, 0x80(r1) -/* 80188A40 001859A0 81 21 00 84 */ lwz r9, 0x84(r1) -/* 80188A44 001859A4 81 01 00 88 */ lwz r8, 0x88(r1) -/* 80188A48 001859A8 80 E1 00 8C */ lwz r7, 0x8c(r1) -/* 80188A4C 001859AC 80 C1 00 90 */ lwz r6, 0x90(r1) -/* 80188A50 001859B0 80 A1 00 94 */ lwz r5, 0x94(r1) -/* 80188A54 001859B4 80 81 00 98 */ lwz r4, 0x98(r1) -/* 80188A58 001859B8 80 61 00 9C */ lwz r3, 0x9c(r1) -/* 80188A5C 001859BC 80 01 00 A0 */ lwz r0, 0xa0(r1) -/* 80188A60 001859C0 92 61 01 D8 */ stw r19, 0x1d8(r1) -/* 80188A64 001859C4 92 41 01 DC */ stw r18, 0x1dc(r1) -/* 80188A68 001859C8 91 81 01 E0 */ stw r12, 0x1e0(r1) -/* 80188A6C 001859CC 91 61 01 E4 */ stw r11, 0x1e4(r1) -/* 80188A70 001859D0 91 41 01 E8 */ stw r10, 0x1e8(r1) -/* 80188A74 001859D4 91 21 01 EC */ stw r9, 0x1ec(r1) -/* 80188A78 001859D8 91 01 01 F0 */ stw r8, 0x1f0(r1) -/* 80188A7C 001859DC 90 E1 01 F4 */ stw r7, 0x1f4(r1) -/* 80188A80 001859E0 90 C1 01 F8 */ stw r6, 0x1f8(r1) -/* 80188A84 001859E4 90 A1 01 FC */ stw r5, 0x1fc(r1) -/* 80188A88 001859E8 90 81 02 00 */ stw r4, 0x200(r1) -/* 80188A8C 001859EC 90 61 02 04 */ stw r3, 0x204(r1) -/* 80188A90 001859F0 90 01 02 08 */ stw r0, 0x208(r1) -/* 80188A94 001859F4 7C 00 00 26 */ mfcr r0 -/* 80188A98 001859F8 54 00 17 FE */ rlwinm r0, r0, 2, 0x1f, 0x1f -lbl_80188A9C: -/* 80188A9C 001859FC 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 80188AA0 00185A00 40 82 FA C0 */ bne lbl_80188560 -/* 80188AA4 00185A04 56 80 06 3F */ clrlwi. r0, r20, 0x18 -/* 80188AA8 00185A08 40 82 00 48 */ bne lbl_80188AF0 -/* 80188AAC 00185A0C 80 7E 00 68 */ lwz r3, 0x68(r30) -/* 80188AB0 00185A10 38 00 00 20 */ li r0, 0x20 -/* 80188AB4 00185A14 80 BE 00 6C */ lwz r5, 0x6c(r30) -/* 80188AB8 00185A18 38 80 00 00 */ li r4, 0 -/* 80188ABC 00185A1C 7C 60 00 38 */ and r0, r3, r0 -/* 80188AC0 00185A20 7C A3 20 38 */ and r3, r5, r4 -/* 80188AC4 00185A24 7C 63 22 78 */ xor r3, r3, r4 -/* 80188AC8 00185A28 7C 00 22 78 */ xor r0, r0, r4 -/* 80188ACC 00185A2C 7C 60 03 79 */ or. r0, r3, r0 -/* 80188AD0 00185A30 40 82 00 20 */ bne lbl_80188AF0 -/* 80188AD4 00185A34 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80188AD8 00185A38 7F A3 EB 78 */ mr r3, r29 -/* 80188ADC 00185A3C 7F C4 F3 78 */ mr r4, r30 -/* 80188AE0 00185A40 38 A1 00 08 */ addi r5, r1, 8 -/* 80188AE4 00185A44 B0 01 00 08 */ sth r0, 8(r1) -/* 80188AE8 00185A48 38 C0 00 1A */ li r6, 0x1a -/* 80188AEC 00185A4C 4B EB B3 E5 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -lbl_80188AF0: -/* 80188AF0 00185A50 3C 80 80 5A */ lis r4, skZero3f@ha -/* 80188AF4 00185A54 7F C3 F3 78 */ mr r3, r30 -/* 80188AF8 00185A58 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 80188AFC 00185A5C 4B F9 1F 3D */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f -/* 80188B00 00185A60 38 60 00 00 */ li r3, 0 -/* 80188B04 00185A64 4B F2 B9 F5 */ bl IsUser__Fi -/* 80188B08 00185A68 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80188B0C 00185A6C 41 82 00 34 */ beq lbl_80188B40 -/* 80188B10 00185A70 56 80 06 3F */ clrlwi. r0, r20, 0x18 -/* 80188B14 00185A74 41 82 00 1C */ beq lbl_80188B30 -/* 80188B18 00185A78 80 0D A4 70 */ lwz r0, lbl_805A9030@sda21(r13) -/* 80188B1C 00185A7C 80 6D A4 68 */ lwz r3, lbl_805A9028@sda21(r13) -/* 80188B20 00185A80 7C 80 FA 14 */ add r4, r0, r31 -/* 80188B24 00185A84 38 03 00 01 */ addi r0, r3, 1 -/* 80188B28 00185A88 90 8D A4 70 */ stw r4, lbl_805A9030@sda21(r13) -/* 80188B2C 00185A8C 90 0D A4 68 */ stw r0, lbl_805A9028@sda21(r13) -lbl_80188B30: -/* 80188B30 00185A90 80 0D A4 78 */ lwz r0, lbl_805A9038@sda21(r13) -/* 80188B34 00185A94 7C 1F 00 00 */ cmpw r31, r0 -/* 80188B38 00185A98 40 81 00 08 */ ble lbl_80188B40 -/* 80188B3C 00185A9C 93 ED A4 78 */ stw r31, lbl_805A9038@sda21(r13) -lbl_80188B40: -/* 80188B40 00185AA0 80 A1 1A A8 */ lwz r5, 0x1aa8(r1) -/* 80188B44 00185AA4 38 60 00 00 */ li r3, 0 -/* 80188B48 00185AA8 2C 05 00 00 */ cmpwi r5, 0 -/* 80188B4C 00185AAC 40 81 00 40 */ ble lbl_80188B8C -/* 80188B50 00185AB0 2C 05 00 08 */ cmpwi r5, 8 -/* 80188B54 00185AB4 38 85 FF F8 */ addi r4, r5, -8 -/* 80188B58 00185AB8 40 81 00 20 */ ble lbl_80188B78 -/* 80188B5C 00185ABC 38 04 00 07 */ addi r0, r4, 7 -/* 80188B60 00185AC0 54 00 E8 FE */ srwi r0, r0, 3 -/* 80188B64 00185AC4 7C 09 03 A6 */ mtctr r0 -/* 80188B68 00185AC8 2C 04 00 00 */ cmpwi r4, 0 -/* 80188B6C 00185ACC 40 81 00 0C */ ble lbl_80188B78 -lbl_80188B70: -/* 80188B70 00185AD0 38 63 00 08 */ addi r3, r3, 8 -/* 80188B74 00185AD4 42 00 FF FC */ bdnz lbl_80188B70 -lbl_80188B78: -/* 80188B78 00185AD8 7C 03 28 50 */ subf r0, r3, r5 -/* 80188B7C 00185ADC 7C 09 03 A6 */ mtctr r0 -/* 80188B80 00185AE0 7C 03 28 00 */ cmpw r3, r5 -/* 80188B84 00185AE4 40 80 00 08 */ bge lbl_80188B8C -lbl_80188B88: -/* 80188B88 00185AE8 42 00 00 00 */ bdnz lbl_80188B88 -lbl_80188B8C: -/* 80188B8C 00185AEC 38 00 00 00 */ li r0, 0 -/* 80188B90 00185AF0 7E 83 A3 78 */ mr r3, r20 -/* 80188B94 00185AF4 90 01 1A A8 */ stw r0, 0x1aa8(r1) -/* 80188B98 00185AF8 38 00 27 18 */ li r0, 0x2718 -/* 80188B9C 00185AFC 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 -/* 80188BA0 00185B00 CB E1 27 10 */ lfd f31, 0x2710(r1) -/* 80188BA4 00185B04 38 00 27 08 */ li r0, 0x2708 -/* 80188BA8 00185B08 13 C1 00 0C */ psq_lx f30, r1, r0, 0, qr0 -/* 80188BAC 00185B0C CB C1 27 00 */ lfd f30, 0x2700(r1) -/* 80188BB0 00185B10 38 00 26 F8 */ li r0, 0x26f8 -/* 80188BB4 00185B14 13 A1 00 0C */ psq_lx f29, r1, r0, 0, qr0 -/* 80188BB8 00185B18 CB A1 26 F0 */ lfd f29, 0x26f0(r1) -/* 80188BBC 00185B1C BA 01 26 B0 */ lmw r16, 0x26b0(r1) -/* 80188BC0 00185B20 80 01 27 24 */ lwz r0, 0x2724(r1) -/* 80188BC4 00185B24 7C 08 03 A6 */ mtlr r0 -/* 80188BC8 00185B28 38 21 27 20 */ addi r1, r1, 0x2720 -/* 80188BCC 00185B2C 4E 80 00 20 */ blr - -.global "MoveGroundColliderZ__15CGroundMovementFR19CAreaCollisionCacheR13CStateManagerR13CPhysicsActorRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>fRfR18CCollisionInfoListR9TUniqueId" -"MoveGroundColliderZ__15CGroundMovementFR19CAreaCollisionCacheR13CStateManagerR13CPhysicsActorRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>fRfR18CCollisionInfoListR9TUniqueId": -/* 80188BD0 00185B30 94 21 F2 B0 */ stwu r1, -0xd50(r1) -/* 80188BD4 00185B34 7C 08 02 A6 */ mflr r0 -/* 80188BD8 00185B38 90 01 0D 54 */ stw r0, 0xd54(r1) -/* 80188BDC 00185B3C DB E1 0D 40 */ stfd f31, 0xd40(r1) -/* 80188BE0 00185B40 F3 E1 0D 48 */ psq_st f31, -696(r1), 0, qr0 -/* 80188BE4 00185B44 DB C1 0D 30 */ stfd f30, 0xd30(r1) -/* 80188BE8 00185B48 F3 C1 0D 38 */ psq_st f30, -712(r1), 0, qr0 -/* 80188BEC 00185B4C BE 81 0D 00 */ stmw r20, 0xd00(r1) -/* 80188BF0 00185B50 FF E0 08 90 */ fmr f31, f1 -/* 80188BF4 00185B54 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) -/* 80188BF8 00185B58 7C 97 23 78 */ mr r23, r4 -/* 80188BFC 00185B5C 7C B8 2B 78 */ mr r24, r5 -/* 80188C00 00185B60 7C 76 1B 78 */ mr r22, r3 -/* 80188C04 00185B64 D0 01 00 54 */ stfs f0, 0x54(r1) -/* 80188C08 00185B68 D0 01 00 58 */ stfs f0, 0x58(r1) -/* 80188C0C 00185B6C 7C D9 33 78 */ mr r25, r6 -/* 80188C10 00185B70 7C FA 3B 78 */ mr r26, r7 -/* 80188C14 00185B74 7D 1B 43 78 */ mr r27, r8 -/* 80188C18 00185B78 D3 E1 00 5C */ stfs f31, 0x5c(r1) -/* 80188C1C 00185B7C 7D 3C 4B 78 */ mr r28, r9 -/* 80188C20 00185B80 7D 5D 53 78 */ mr r29, r10 -/* 80188C24 00185B84 7F 03 C3 78 */ mr r3, r24 -/* 80188C28 00185B88 38 81 00 54 */ addi r4, r1, 0x54 -/* 80188C2C 00185B8C 4B F9 1E 0D */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f -/* 80188C30 00185B90 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80188C34 00185B94 3C 60 80 5A */ lis r3, lbl_805A6754@ha -/* 80188C38 00185B98 38 A3 67 54 */ addi r5, r3, lbl_805A6754@l -/* 80188C3C 00185B9C 7F 04 C3 78 */ mr r4, r24 -/* 80188C40 00185BA0 B0 1D 00 00 */ sth r0, 0(r29) -/* 80188C44 00185BA4 38 61 00 C0 */ addi r3, r1, 0xc0 -/* 80188C48 00185BA8 C0 A5 00 00 */ lfs f5, 0(r5) -/* 80188C4C 00185BAC C0 85 00 04 */ lfs f4, 4(r5) -/* 80188C50 00185BB0 C0 65 00 08 */ lfs f3, 8(r5) -/* 80188C54 00185BB4 C0 45 00 0C */ lfs f2, 0xc(r5) -/* 80188C58 00185BB8 C0 25 00 10 */ lfs f1, 0x10(r5) -/* 80188C5C 00185BBC C0 05 00 14 */ lfs f0, 0x14(r5) -/* 80188C60 00185BC0 D0 A1 00 78 */ stfs f5, 0x78(r1) -/* 80188C64 00185BC4 D0 81 00 7C */ stfs f4, 0x7c(r1) -/* 80188C68 00185BC8 D0 61 00 80 */ stfs f3, 0x80(r1) -/* 80188C6C 00185BCC D0 41 00 84 */ stfs f2, 0x84(r1) -/* 80188C70 00185BD0 D0 21 00 88 */ stfs f1, 0x88(r1) -/* 80188C74 00185BD4 D0 01 00 8C */ stfs f0, 0x8c(r1) -/* 80188C78 00185BD8 81 98 00 00 */ lwz r12, 0(r24) -/* 80188C7C 00185BDC 81 8C 00 70 */ lwz r12, 0x70(r12) -/* 80188C80 00185BE0 7D 89 03 A6 */ mtctr r12 -/* 80188C84 00185BE4 4E 80 04 21 */ bctrl -/* 80188C88 00185BE8 7F 03 C3 78 */ mr r3, r24 -/* 80188C8C 00185BEC 81 98 00 00 */ lwz r12, 0(r24) -/* 80188C90 00185BF0 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 80188C94 00185BF4 7D 89 03 A6 */ mtctr r12 -/* 80188C98 00185BF8 4E 80 04 21 */ bctrl -/* 80188C9C 00185BFC 7C 65 1B 78 */ mr r5, r3 -/* 80188CA0 00185C00 7E E3 BB 78 */ mr r3, r23 -/* 80188CA4 00185C04 7E C4 B3 78 */ mr r4, r22 -/* 80188CA8 00185C08 7F 27 CB 78 */ mr r7, r25 -/* 80188CAC 00185C0C 7F 48 D3 78 */ mr r8, r26 -/* 80188CB0 00185C10 7F A9 EB 78 */ mr r9, r29 -/* 80188CB4 00185C14 7F 8A E3 78 */ mr r10, r28 -/* 80188CB8 00185C18 38 C1 00 C0 */ addi r6, r1, 0xc0 -/* 80188CBC 00185C1C 4B FF B7 29 */ bl "DetectCollision_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>R9TUniqueIdR18CCollisionInfoList" -/* 80188CC0 00185C20 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80188CC4 00185C24 7C 7E 1B 78 */ mr r30, r3 -/* 80188CC8 00185C28 41 82 02 8C */ beq lbl_80188F54 -/* 80188CCC 00185C2C 3B FC 00 04 */ addi r31, r28, 4 -/* 80188CD0 00185C30 3A 80 00 00 */ li r20, 0 -/* 80188CD4 00185C34 7F F5 FB 78 */ mr r21, r31 -/* 80188CD8 00185C38 48 00 00 30 */ b lbl_80188D08 -lbl_80188CDC: -/* 80188CDC 00185C3C 7E A4 AB 78 */ mr r4, r21 -/* 80188CE0 00185C40 38 61 00 78 */ addi r3, r1, 0x78 -/* 80188CE4 00185C44 48 1A EE 25 */ bl AccumulateBounds__6CAABoxFRC9CVector3f -/* 80188CE8 00185C48 7E A4 AB 78 */ mr r4, r21 -/* 80188CEC 00185C4C 38 61 00 48 */ addi r3, r1, 0x48 -/* 80188CF0 00185C50 48 14 54 35 */ bl GetExtreme__14CCollisionInfoCFv -/* 80188CF4 00185C54 38 61 00 78 */ addi r3, r1, 0x78 -/* 80188CF8 00185C58 38 81 00 48 */ addi r4, r1, 0x48 -/* 80188CFC 00185C5C 48 1A EE 0D */ bl AccumulateBounds__6CAABoxFRC9CVector3f -/* 80188D00 00185C60 3A B5 00 60 */ addi r21, r21, 0x60 -/* 80188D04 00185C64 3A 94 00 01 */ addi r20, r20, 1 -lbl_80188D08: -/* 80188D08 00185C68 80 1C 00 00 */ lwz r0, 0(r28) -/* 80188D0C 00185C6C 7C 14 00 00 */ cmpw r20, r0 -/* 80188D10 00185C70 41 80 FF CC */ blt lbl_80188CDC -/* 80188D14 00185C74 7F 04 C3 78 */ mr r4, r24 -/* 80188D18 00185C78 38 61 00 60 */ addi r3, r1, 0x60 -/* 80188D1C 00185C7C 4B F9 1C 11 */ bl GetBoundingBox__13CPhysicsActorCFv -/* 80188D20 00185C80 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) -/* 80188D24 00185C84 FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 80188D28 00185C88 40 81 00 20 */ ble lbl_80188D48 -/* 80188D2C 00185C8C C0 41 00 80 */ lfs f2, 0x80(r1) -/* 80188D30 00185C90 C0 21 00 74 */ lfs f1, 0x74(r1) -/* 80188D34 00185C94 C0 02 A3 3C */ lfs f0, lbl_805AC05C@sda21(r2) -/* 80188D38 00185C98 EC 22 08 28 */ fsubs f1, f2, f1 -/* 80188D3C 00185C9C EC 01 00 28 */ fsubs f0, f1, f0 -/* 80188D40 00185CA0 EF DF 00 2A */ fadds f30, f31, f0 -/* 80188D44 00185CA4 48 00 00 1C */ b lbl_80188D60 -lbl_80188D48: -/* 80188D48 00185CA8 C0 21 00 8C */ lfs f1, 0x8c(r1) -/* 80188D4C 00185CAC C0 01 00 68 */ lfs f0, 0x68(r1) -/* 80188D50 00185CB0 C0 42 A3 3C */ lfs f2, lbl_805AC05C@sda21(r2) -/* 80188D54 00185CB4 EC 01 00 28 */ fsubs f0, f1, f0 -/* 80188D58 00185CB8 EC 02 00 2A */ fadds f0, f2, f0 -/* 80188D5C 00185CBC EF DF 00 2A */ fadds f30, f31, f0 -lbl_80188D60: -/* 80188D60 00185CC0 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) -/* 80188D64 00185CC4 7F 03 C3 78 */ mr r3, r24 -/* 80188D68 00185CC8 D3 C1 00 44 */ stfs f30, 0x44(r1) -/* 80188D6C 00185CCC 38 81 00 3C */ addi r4, r1, 0x3c -/* 80188D70 00185CD0 D0 01 00 3C */ stfs f0, 0x3c(r1) -/* 80188D74 00185CD4 D0 01 00 40 */ stfs f0, 0x40(r1) -/* 80188D78 00185CD8 4B F9 1C C1 */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f -/* 80188D7C 00185CDC 7F 04 C3 78 */ mr r4, r24 -/* 80188D80 00185CE0 38 61 00 90 */ addi r3, r1, 0x90 -/* 80188D84 00185CE4 81 98 00 00 */ lwz r12, 0(r24) -/* 80188D88 00185CE8 81 8C 00 70 */ lwz r12, 0x70(r12) -/* 80188D8C 00185CEC 7D 89 03 A6 */ mtctr r12 -/* 80188D90 00185CF0 4E 80 04 21 */ bctrl -/* 80188D94 00185CF4 7F 03 C3 78 */ mr r3, r24 -/* 80188D98 00185CF8 81 98 00 00 */ lwz r12, 0(r24) -/* 80188D9C 00185CFC 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 80188DA0 00185D00 7D 89 03 A6 */ mtctr r12 -/* 80188DA4 00185D04 4E 80 04 21 */ bctrl -/* 80188DA8 00185D08 7C 65 1B 78 */ mr r5, r3 -/* 80188DAC 00185D0C 7E E3 BB 78 */ mr r3, r23 -/* 80188DB0 00185D10 7E C4 B3 78 */ mr r4, r22 -/* 80188DB4 00185D14 7F 27 CB 78 */ mr r7, r25 -/* 80188DB8 00185D18 7F 48 D3 78 */ mr r8, r26 -/* 80188DBC 00185D1C 38 C1 00 90 */ addi r6, r1, 0x90 -/* 80188DC0 00185D20 4B FF B7 A5 */ bl "DetectCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 80188DC4 00185D24 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80188DC8 00185D28 40 82 00 58 */ bne lbl_80188E20 -/* 80188DCC 00185D2C D3 DB 00 00 */ stfs f30, 0(r27) -/* 80188DD0 00185D30 7F 03 C3 78 */ mr r3, r24 -/* 80188DD4 00185D34 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) -/* 80188DD8 00185D38 38 81 00 30 */ addi r4, r1, 0x30 -/* 80188DDC 00185D3C C0 B8 00 60 */ lfs f5, 0x60(r24) -/* 80188DE0 00185D40 C0 98 00 50 */ lfs f4, 0x50(r24) -/* 80188DE4 00185D44 C0 38 00 40 */ lfs f1, 0x40(r24) -/* 80188DE8 00185D48 EC 45 F0 2A */ fadds f2, f5, f30 -/* 80188DEC 00185D4C EC 64 00 2A */ fadds f3, f4, f0 -/* 80188DF0 00185D50 D0 81 00 28 */ stfs f4, 0x28(r1) -/* 80188DF4 00185D54 EC 01 00 2A */ fadds f0, f1, f0 -/* 80188DF8 00185D58 D0 21 00 24 */ stfs f1, 0x24(r1) -/* 80188DFC 00185D5C D0 A1 00 2C */ stfs f5, 0x2c(r1) -/* 80188E00 00185D60 D0 01 00 30 */ stfs f0, 0x30(r1) -/* 80188E04 00185D64 D0 61 00 34 */ stfs f3, 0x34(r1) -/* 80188E08 00185D68 D0 41 00 38 */ stfs f2, 0x38(r1) -/* 80188E0C 00185D6C 4B EC A0 81 */ bl SetTranslation__6CActorFRC9CVector3f -/* 80188E10 00185D70 3C 80 80 5A */ lis r4, skZero3f@ha -/* 80188E14 00185D74 7F 03 C3 78 */ mr r3, r24 -/* 80188E18 00185D78 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 80188E1C 00185D7C 4B F9 1C 1D */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f -lbl_80188E20: -/* 80188E20 00185D80 3A 80 00 00 */ li r20, 0 -/* 80188E24 00185D84 3A A0 00 00 */ li r21, 0 -/* 80188E28 00185D88 48 00 00 28 */ b lbl_80188E50 -lbl_80188E2C: -/* 80188E2C 00185D8C 38 7F 00 38 */ addi r3, r31, 0x38 -/* 80188E30 00185D90 38 9F 00 48 */ addi r4, r31, 0x48 -/* 80188E34 00185D94 4B FF 9A 95 */ bl IsFloor__14CGameCollisionFRC13CMaterialListRC9CVector3f -/* 80188E38 00185D98 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80188E3C 00185D9C 41 82 00 0C */ beq lbl_80188E48 -/* 80188E40 00185DA0 3A 80 00 01 */ li r20, 1 -/* 80188E44 00185DA4 48 00 00 18 */ b lbl_80188E5C -lbl_80188E48: -/* 80188E48 00185DA8 3B FF 00 60 */ addi r31, r31, 0x60 -/* 80188E4C 00185DAC 3A B5 00 01 */ addi r21, r21, 1 -lbl_80188E50: -/* 80188E50 00185DB0 80 1C 00 00 */ lwz r0, 0(r28) -/* 80188E54 00185DB4 7C 15 00 00 */ cmpw r21, r0 -/* 80188E58 00185DB8 41 80 FF D4 */ blt lbl_80188E2C -lbl_80188E5C: -/* 80188E5C 00185DBC 56 80 06 3F */ clrlwi. r0, r20, 0x18 -/* 80188E60 00185DC0 40 82 00 20 */ bne lbl_80188E80 -/* 80188E64 00185DC4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80188E68 00185DC8 7E E3 BB 78 */ mr r3, r23 -/* 80188E6C 00185DCC 7F 04 C3 78 */ mr r4, r24 -/* 80188E70 00185DD0 38 A1 00 08 */ addi r5, r1, 8 -/* 80188E74 00185DD4 B0 01 00 08 */ sth r0, 8(r1) -/* 80188E78 00185DD8 38 C0 00 20 */ li r6, 0x20 -/* 80188E7C 00185DDC 4B EB B0 55 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -lbl_80188E80: -/* 80188E80 00185DE0 C8 02 A3 50 */ lfd f0, lbl_805AC070@sda21(r2) -/* 80188E84 00185DE4 38 00 00 00 */ li r0, 0 -/* 80188E88 00185DE8 90 01 00 F0 */ stw r0, 0xf0(r1) -/* 80188E8C 00185DEC FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 80188E90 00185DF0 40 81 00 2C */ ble lbl_80188EBC -/* 80188E94 00185DF4 C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) -/* 80188E98 00185DF8 7F 84 E3 78 */ mr r4, r28 -/* 80188E9C 00185DFC C0 02 A3 58 */ lfs f0, lbl_805AC078@sda21(r2) -/* 80188EA0 00185E00 38 61 00 18 */ addi r3, r1, 0x18 -/* 80188EA4 00185E04 D0 21 00 18 */ stfs f1, 0x18(r1) -/* 80188EA8 00185E08 38 A1 00 F0 */ addi r5, r1, 0xf0 -/* 80188EAC 00185E0C D0 21 00 1C */ stfs f1, 0x1c(r1) -/* 80188EB0 00185E10 D0 01 00 20 */ stfs f0, 0x20(r1) -/* 80188EB4 00185E14 48 14 95 A5 */ bl FilterByClosestNormal__13CollisionUtilFRC9CVector3fRC18CCollisionInfoListR18CCollisionInfoList -/* 80188EB8 00185E18 48 00 00 28 */ b lbl_80188EE0 -lbl_80188EBC: -/* 80188EBC 00185E1C C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) -/* 80188EC0 00185E20 7F 84 E3 78 */ mr r4, r28 -/* 80188EC4 00185E24 C0 02 A3 10 */ lfs f0, lbl_805AC030@sda21(r2) -/* 80188EC8 00185E28 38 61 00 0C */ addi r3, r1, 0xc -/* 80188ECC 00185E2C D0 21 00 0C */ stfs f1, 0xc(r1) -/* 80188ED0 00185E30 38 A1 00 F0 */ addi r5, r1, 0xf0 -/* 80188ED4 00185E34 D0 21 00 10 */ stfs f1, 0x10(r1) -/* 80188ED8 00185E38 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 80188EDC 00185E3C 48 14 95 7D */ bl FilterByClosestNormal__13CollisionUtilFRC9CVector3fRC18CCollisionInfoListR18CCollisionInfoList -lbl_80188EE0: -/* 80188EE0 00185E40 80 01 00 F0 */ lwz r0, 0xf0(r1) -/* 80188EE4 00185E44 2C 00 00 00 */ cmpwi r0, 0 -/* 80188EE8 00185E48 40 81 00 18 */ ble lbl_80188F00 -/* 80188EEC 00185E4C 7E E3 BB 78 */ mr r3, r23 -/* 80188EF0 00185E50 7F 04 C3 78 */ mr r4, r24 -/* 80188EF4 00185E54 7F A5 EB 78 */ mr r5, r29 -/* 80188EF8 00185E58 38 C1 00 F0 */ addi r6, r1, 0xf0 -/* 80188EFC 00185E5C 4B FF 9C BD */ bl MakeCollisionCallbacks__14CGameCollisionFR13CStateManagerR13CPhysicsActorRC9TUniqueIdRC18CCollisionInfoList -lbl_80188F00: -/* 80188F00 00185E60 80 A1 00 F0 */ lwz r5, 0xf0(r1) -/* 80188F04 00185E64 38 60 00 00 */ li r3, 0 -/* 80188F08 00185E68 2C 05 00 00 */ cmpwi r5, 0 -/* 80188F0C 00185E6C 40 81 00 40 */ ble lbl_80188F4C -/* 80188F10 00185E70 2C 05 00 08 */ cmpwi r5, 8 -/* 80188F14 00185E74 38 85 FF F8 */ addi r4, r5, -8 -/* 80188F18 00185E78 40 81 00 20 */ ble lbl_80188F38 -/* 80188F1C 00185E7C 38 04 00 07 */ addi r0, r4, 7 -/* 80188F20 00185E80 54 00 E8 FE */ srwi r0, r0, 3 -/* 80188F24 00185E84 7C 09 03 A6 */ mtctr r0 -/* 80188F28 00185E88 2C 04 00 00 */ cmpwi r4, 0 -/* 80188F2C 00185E8C 40 81 00 0C */ ble lbl_80188F38 -lbl_80188F30: -/* 80188F30 00185E90 38 63 00 08 */ addi r3, r3, 8 -/* 80188F34 00185E94 42 00 FF FC */ bdnz lbl_80188F30 -lbl_80188F38: -/* 80188F38 00185E98 7C 03 28 50 */ subf r0, r3, r5 -/* 80188F3C 00185E9C 7C 09 03 A6 */ mtctr r0 -/* 80188F40 00185EA0 7C 03 28 00 */ cmpw r3, r5 -/* 80188F44 00185EA4 40 80 00 08 */ bge lbl_80188F4C -lbl_80188F48: -/* 80188F48 00185EA8 42 00 00 00 */ bdnz lbl_80188F48 -lbl_80188F4C: -/* 80188F4C 00185EAC 38 00 00 00 */ li r0, 0 -/* 80188F50 00185EB0 90 01 00 F0 */ stw r0, 0xf0(r1) -lbl_80188F54: -/* 80188F54 00185EB4 7F C3 F3 78 */ mr r3, r30 -/* 80188F58 00185EB8 E3 E1 0D 48 */ psq_l f31, -696(r1), 0, qr0 -/* 80188F5C 00185EBC CB E1 0D 40 */ lfd f31, 0xd40(r1) -/* 80188F60 00185EC0 E3 C1 0D 38 */ psq_l f30, -712(r1), 0, qr0 -/* 80188F64 00185EC4 CB C1 0D 30 */ lfd f30, 0xd30(r1) -/* 80188F68 00185EC8 BA 81 0D 00 */ lmw r20, 0xd00(r1) -/* 80188F6C 00185ECC 80 01 0D 54 */ lwz r0, 0xd54(r1) -/* 80188F70 00185ED0 7C 08 03 A6 */ mtlr r0 -/* 80188F74 00185ED4 38 21 0D 50 */ addi r1, r1, 0xd50 -/* 80188F78 00185ED8 4E 80 00 20 */ blr - -.global "ResolveUpDown__15CGroundMovementFR19CAreaCollisionCacheR13CStateManagerR13CPhysicsActorRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>ffRfR18CCollisionInfoList" -"ResolveUpDown__15CGroundMovementFR19CAreaCollisionCacheR13CStateManagerR13CPhysicsActorRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>ffRfR18CCollisionInfoList": -/* 80188F7C 00185EDC 94 21 FF 00 */ stwu r1, -0x100(r1) -/* 80188F80 00185EE0 7C 08 02 A6 */ mflr r0 -/* 80188F84 00185EE4 90 01 01 04 */ stw r0, 0x104(r1) -/* 80188F88 00185EE8 DB E1 00 F0 */ stfd f31, 0xf0(r1) -/* 80188F8C 00185EEC F3 E1 00 F8 */ psq_st f31, 248(r1), 0, qr0 -/* 80188F90 00185EF0 DB C1 00 E0 */ stfd f30, 0xe0(r1) -/* 80188F94 00185EF4 F3 C1 00 E8 */ psq_st f30, 232(r1), 0, qr0 -/* 80188F98 00185EF8 BE C1 00 B8 */ stmw r22, 0xb8(r1) -/* 80188F9C 00185EFC 7D 3F 4B 78 */ mr r31, r9 -/* 80188FA0 00185F00 FF C0 08 90 */ fmr f30, f1 -/* 80188FA4 00185F04 80 09 00 00 */ lwz r0, 0(r9) -/* 80188FA8 00185F08 FF E0 10 90 */ fmr f31, f2 -/* 80188FAC 00185F0C 7C 76 1B 78 */ mr r22, r3 -/* 80188FB0 00185F10 7C 9D 23 78 */ mr r29, r4 -/* 80188FB4 00185F14 2C 00 00 00 */ cmpwi r0, 0 -/* 80188FB8 00185F18 7C BE 2B 78 */ mr r30, r5 -/* 80188FBC 00185F1C 7C D7 33 78 */ mr r23, r6 -/* 80188FC0 00185F20 7C F8 3B 78 */ mr r24, r7 -/* 80188FC4 00185F24 7D 19 43 78 */ mr r25, r8 -/* 80188FC8 00185F28 40 81 02 A8 */ ble lbl_80189270 -/* 80188FCC 00185F2C 3C 60 80 5A */ lis r3, lbl_805A6754@ha -/* 80188FD0 00185F30 C4 C3 67 54 */ lfsu f6, lbl_805A6754@l(r3) -/* 80188FD4 00185F34 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) -/* 80188FD8 00185F38 3B 7F 00 04 */ addi r27, r31, 4 -/* 80188FDC 00185F3C C0 A3 00 04 */ lfs f5, 4(r3) -/* 80188FE0 00185F40 7F 7C DB 78 */ mr r28, r27 -/* 80188FE4 00185F44 C0 83 00 08 */ lfs f4, 8(r3) -/* 80188FE8 00185F48 3B 40 00 00 */ li r26, 0 -/* 80188FEC 00185F4C C0 63 00 0C */ lfs f3, 0xc(r3) -/* 80188FF0 00185F50 C0 43 00 10 */ lfs f2, 0x10(r3) -/* 80188FF4 00185F54 C0 23 00 14 */ lfs f1, 0x14(r3) -/* 80188FF8 00185F58 D0 C1 00 6C */ stfs f6, 0x6c(r1) -/* 80188FFC 00185F5C D0 A1 00 70 */ stfs f5, 0x70(r1) -/* 80189000 00185F60 D0 81 00 74 */ stfs f4, 0x74(r1) -/* 80189004 00185F64 D0 61 00 78 */ stfs f3, 0x78(r1) -/* 80189008 00185F68 D0 41 00 7C */ stfs f2, 0x7c(r1) -/* 8018900C 00185F6C D0 21 00 80 */ stfs f1, 0x80(r1) -/* 80189010 00185F70 D0 01 00 48 */ stfs f0, 0x48(r1) -/* 80189014 00185F74 D0 01 00 4C */ stfs f0, 0x4c(r1) -/* 80189018 00185F78 D0 01 00 50 */ stfs f0, 0x50(r1) -/* 8018901C 00185F7C 48 00 00 74 */ b lbl_80189090 -lbl_80189020: -/* 80189020 00185F80 38 7C 00 38 */ addi r3, r28, 0x38 -/* 80189024 00185F84 38 9C 00 48 */ addi r4, r28, 0x48 -/* 80189028 00185F88 4B FF 98 A1 */ bl IsFloor__14CGameCollisionFRC13CMaterialListRC9CVector3f -/* 8018902C 00185F8C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80189030 00185F90 41 82 00 58 */ beq lbl_80189088 -/* 80189034 00185F94 7F 84 E3 78 */ mr r4, r28 -/* 80189038 00185F98 38 61 00 6C */ addi r3, r1, 0x6c -/* 8018903C 00185F9C 48 1A EA CD */ bl AccumulateBounds__6CAABoxFRC9CVector3f -/* 80189040 00185FA0 7F 84 E3 78 */ mr r4, r28 -/* 80189044 00185FA4 38 61 00 3C */ addi r3, r1, 0x3c -/* 80189048 00185FA8 48 14 50 DD */ bl GetExtreme__14CCollisionInfoCFv -/* 8018904C 00185FAC 38 61 00 6C */ addi r3, r1, 0x6c -/* 80189050 00185FB0 38 81 00 3C */ addi r4, r1, 0x3c -/* 80189054 00185FB4 48 1A EA B5 */ bl AccumulateBounds__6CAABoxFRC9CVector3f -/* 80189058 00185FB8 C0 21 00 48 */ lfs f1, 0x48(r1) -/* 8018905C 00185FBC C0 1C 00 48 */ lfs f0, 0x48(r28) -/* 80189060 00185FC0 C0 41 00 4C */ lfs f2, 0x4c(r1) -/* 80189064 00185FC4 EC 01 00 2A */ fadds f0, f1, f0 -/* 80189068 00185FC8 C0 21 00 50 */ lfs f1, 0x50(r1) -/* 8018906C 00185FCC D0 01 00 48 */ stfs f0, 0x48(r1) -/* 80189070 00185FD0 C0 1C 00 4C */ lfs f0, 0x4c(r28) -/* 80189074 00185FD4 EC 02 00 2A */ fadds f0, f2, f0 -/* 80189078 00185FD8 D0 01 00 4C */ stfs f0, 0x4c(r1) -/* 8018907C 00185FDC C0 1C 00 50 */ lfs f0, 0x50(r28) -/* 80189080 00185FE0 EC 01 00 2A */ fadds f0, f1, f0 -/* 80189084 00185FE4 D0 01 00 50 */ stfs f0, 0x50(r1) -lbl_80189088: -/* 80189088 00185FE8 3B 9C 00 60 */ addi r28, r28, 0x60 -/* 8018908C 00185FEC 3B 5A 00 01 */ addi r26, r26, 1 -lbl_80189090: -/* 80189090 00185FF0 80 1F 00 00 */ lwz r0, 0(r31) -/* 80189094 00185FF4 7C 1A 00 00 */ cmpw r26, r0 -/* 80189098 00185FF8 41 80 FF 88 */ blt lbl_80189020 -/* 8018909C 00185FFC 38 61 00 48 */ addi r3, r1, 0x48 -/* 801890A0 00186000 48 18 B6 59 */ bl CanBeNormalized__9CVector3fCFv -/* 801890A4 00186004 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801890A8 00186008 41 82 00 2C */ beq lbl_801890D4 -/* 801890AC 0018600C 38 61 00 30 */ addi r3, r1, 0x30 -/* 801890B0 00186010 38 81 00 48 */ addi r4, r1, 0x48 -/* 801890B4 00186014 48 18 B7 9D */ bl AsNormalized__9CVector3fCFv -/* 801890B8 00186018 C0 41 00 30 */ lfs f2, 0x30(r1) -/* 801890BC 0018601C C0 21 00 34 */ lfs f1, 0x34(r1) -/* 801890C0 00186020 C0 01 00 38 */ lfs f0, 0x38(r1) -/* 801890C4 00186024 D0 41 00 48 */ stfs f2, 0x48(r1) -/* 801890C8 00186028 D0 21 00 4C */ stfs f1, 0x4c(r1) -/* 801890CC 0018602C D0 01 00 50 */ stfs f0, 0x50(r1) -/* 801890D0 00186030 48 00 00 0C */ b lbl_801890DC -lbl_801890D4: -/* 801890D4 00186034 38 60 00 01 */ li r3, 1 -/* 801890D8 00186038 48 00 01 9C */ b lbl_80189274 -lbl_801890DC: -/* 801890DC 0018603C 7F C4 F3 78 */ mr r4, r30 -/* 801890E0 00186040 38 61 00 54 */ addi r3, r1, 0x54 -/* 801890E4 00186044 4B F9 18 49 */ bl GetBoundingBox__13CPhysicsActorCFv -/* 801890E8 00186048 C0 21 00 50 */ lfs f1, 0x50(r1) -/* 801890EC 0018604C C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) -/* 801890F0 00186050 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801890F4 00186054 4C 41 13 82 */ cror 2, 1, 2 -/* 801890F8 00186058 40 82 00 28 */ bne lbl_80189120 -/* 801890FC 0018605C C0 21 00 80 */ lfs f1, 0x80(r1) -/* 80189100 00186060 C0 01 00 5C */ lfs f0, 0x5c(r1) -/* 80189104 00186064 C0 42 A3 3C */ lfs f2, lbl_805AC05C@sda21(r2) -/* 80189108 00186068 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8018910C 0018606C EF E2 00 2A */ fadds f31, f2, f0 -/* 80189110 00186070 FC 1F F0 40 */ fcmpo cr0, f31, f30 -/* 80189114 00186074 40 81 00 34 */ ble lbl_80189148 -/* 80189118 00186078 38 60 00 01 */ li r3, 1 -/* 8018911C 0018607C 48 00 01 58 */ b lbl_80189274 -lbl_80189120: -/* 80189120 00186080 C0 61 00 74 */ lfs f3, 0x74(r1) -/* 80189124 00186084 FC 00 F8 50 */ fneg f0, f31 -/* 80189128 00186088 C0 41 00 68 */ lfs f2, 0x68(r1) -/* 8018912C 0018608C C0 22 A3 3C */ lfs f1, lbl_805AC05C@sda21(r2) -/* 80189130 00186090 EC 43 10 28 */ fsubs f2, f3, f2 -/* 80189134 00186094 EF E2 08 28 */ fsubs f31, f2, f1 -/* 80189138 00186098 FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 8018913C 0018609C 40 80 00 0C */ bge lbl_80189148 -/* 80189140 001860A0 38 60 00 01 */ li r3, 1 -/* 80189144 001860A4 48 00 01 30 */ b lbl_80189274 -lbl_80189148: -/* 80189148 001860A8 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) -/* 8018914C 001860AC 7F C3 F3 78 */ mr r3, r30 -/* 80189150 001860B0 D3 E1 00 2C */ stfs f31, 0x2c(r1) -/* 80189154 001860B4 38 81 00 24 */ addi r4, r1, 0x24 -/* 80189158 001860B8 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 8018915C 001860BC D0 01 00 28 */ stfs f0, 0x28(r1) -/* 80189160 001860C0 4B F9 18 D9 */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f -/* 80189164 001860C4 7F C4 F3 78 */ mr r4, r30 -/* 80189168 001860C8 38 61 00 84 */ addi r3, r1, 0x84 -/* 8018916C 001860CC 81 9E 00 00 */ lwz r12, 0(r30) -/* 80189170 001860D0 81 8C 00 70 */ lwz r12, 0x70(r12) -/* 80189174 001860D4 7D 89 03 A6 */ mtctr r12 -/* 80189178 001860D8 4E 80 04 21 */ bctrl -/* 8018917C 001860DC 7F C3 F3 78 */ mr r3, r30 -/* 80189180 001860E0 81 9E 00 00 */ lwz r12, 0(r30) -/* 80189184 001860E4 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 80189188 001860E8 7D 89 03 A6 */ mtctr r12 -/* 8018918C 001860EC 4E 80 04 21 */ bctrl -/* 80189190 001860F0 7C 65 1B 78 */ mr r5, r3 -/* 80189194 001860F4 7F A3 EB 78 */ mr r3, r29 -/* 80189198 001860F8 7E C4 B3 78 */ mr r4, r22 -/* 8018919C 001860FC 7E E7 BB 78 */ mr r7, r23 -/* 801891A0 00186100 7F 08 C3 78 */ mr r8, r24 -/* 801891A4 00186104 38 C1 00 84 */ addi r6, r1, 0x84 -/* 801891A8 00186108 4B FF B3 BD */ bl "DetectCollisionBoolean_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 801891AC 0018610C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801891B0 00186110 40 82 00 C0 */ bne lbl_80189270 -/* 801891B4 00186114 D3 F9 00 00 */ stfs f31, 0(r25) -/* 801891B8 00186118 7F C3 F3 78 */ mr r3, r30 -/* 801891BC 0018611C C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) -/* 801891C0 00186120 38 81 00 18 */ addi r4, r1, 0x18 -/* 801891C4 00186124 C0 BE 00 60 */ lfs f5, 0x60(r30) -/* 801891C8 00186128 C0 9E 00 50 */ lfs f4, 0x50(r30) -/* 801891CC 0018612C C0 3E 00 40 */ lfs f1, 0x40(r30) -/* 801891D0 00186130 EC 45 F8 2A */ fadds f2, f5, f31 -/* 801891D4 00186134 EC 64 00 2A */ fadds f3, f4, f0 -/* 801891D8 00186138 D0 81 00 10 */ stfs f4, 0x10(r1) -/* 801891DC 0018613C EC 01 00 2A */ fadds f0, f1, f0 -/* 801891E0 00186140 D0 21 00 0C */ stfs f1, 0xc(r1) -/* 801891E4 00186144 D0 A1 00 14 */ stfs f5, 0x14(r1) -/* 801891E8 00186148 D0 01 00 18 */ stfs f0, 0x18(r1) -/* 801891EC 0018614C D0 61 00 1C */ stfs f3, 0x1c(r1) -/* 801891F0 00186150 D0 41 00 20 */ stfs f2, 0x20(r1) -/* 801891F4 00186154 4B EC 9C 99 */ bl SetTranslation__6CActorFRC9CVector3f -/* 801891F8 00186158 3C 80 80 5A */ lis r4, skZero3f@ha -/* 801891FC 0018615C 7F C3 F3 78 */ mr r3, r30 -/* 80189200 00186160 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 80189204 00186164 4B F9 18 35 */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f -/* 80189208 00186168 3B 40 00 00 */ li r26, 0 -/* 8018920C 0018616C 3B 80 00 00 */ li r28, 0 -/* 80189210 00186170 48 00 00 28 */ b lbl_80189238 -lbl_80189214: -/* 80189214 00186174 38 7B 00 38 */ addi r3, r27, 0x38 -/* 80189218 00186178 38 9B 00 48 */ addi r4, r27, 0x48 -/* 8018921C 0018617C 4B FF 96 AD */ bl IsFloor__14CGameCollisionFRC13CMaterialListRC9CVector3f -/* 80189220 00186180 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80189224 00186184 41 82 00 0C */ beq lbl_80189230 -/* 80189228 00186188 3B 40 00 01 */ li r26, 1 -/* 8018922C 0018618C 48 00 00 18 */ b lbl_80189244 -lbl_80189230: -/* 80189230 00186190 3B 7B 00 60 */ addi r27, r27, 0x60 -/* 80189234 00186194 3B 9C 00 01 */ addi r28, r28, 1 -lbl_80189238: -/* 80189238 00186198 80 1F 00 00 */ lwz r0, 0(r31) -/* 8018923C 0018619C 7C 1C 00 00 */ cmpw r28, r0 -/* 80189240 001861A0 41 80 FF D4 */ blt lbl_80189214 -lbl_80189244: -/* 80189244 001861A4 57 40 06 3F */ clrlwi. r0, r26, 0x18 -/* 80189248 001861A8 40 82 00 20 */ bne lbl_80189268 -/* 8018924C 001861AC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80189250 001861B0 7F A3 EB 78 */ mr r3, r29 -/* 80189254 001861B4 7F C4 F3 78 */ mr r4, r30 -/* 80189258 001861B8 38 A1 00 08 */ addi r5, r1, 8 -/* 8018925C 001861BC B0 01 00 08 */ sth r0, 8(r1) -/* 80189260 001861C0 38 C0 00 20 */ li r6, 0x20 -/* 80189264 001861C4 4B EB AC 6D */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -lbl_80189268: -/* 80189268 001861C8 38 60 00 00 */ li r3, 0 -/* 8018926C 001861CC 48 00 00 08 */ b lbl_80189274 -lbl_80189270: -/* 80189270 001861D0 38 60 00 01 */ li r3, 1 -lbl_80189274: -/* 80189274 001861D4 E3 E1 00 F8 */ psq_l f31, 248(r1), 0, qr0 -/* 80189278 001861D8 CB E1 00 F0 */ lfd f31, 0xf0(r1) -/* 8018927C 001861DC E3 C1 00 E8 */ psq_l f30, 232(r1), 0, qr0 -/* 80189280 001861E0 CB C1 00 E0 */ lfd f30, 0xe0(r1) -/* 80189284 001861E4 BA C1 00 B8 */ lmw r22, 0xb8(r1) -/* 80189288 001861E8 80 01 01 04 */ lwz r0, 0x104(r1) -/* 8018928C 001861EC 7C 08 03 A6 */ mtlr r0 -/* 80189290 001861F0 38 21 01 00 */ addi r1, r1, 0x100 -/* 80189294 001861F4 4E 80 00 20 */ blr - -.global "MoveGroundCollider__15CGroundMovementFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>" -"MoveGroundCollider__15CGroundMovementFR13CStateManagerR13CPhysicsActorfPCQ24rstl32reserved_vector<9TUniqueId,1024>": -/* 80189298 001861F8 94 21 C1 90 */ stwu r1, -0x3e70(r1) -/* 8018929C 001861FC 7C 08 02 A6 */ mflr r0 -/* 801892A0 00186200 90 01 3E 74 */ stw r0, 0x3e74(r1) -/* 801892A4 00186204 38 00 3E 68 */ li r0, 0x3e68 -/* 801892A8 00186208 DB E1 3E 60 */ stfd f31, 0x3e60(r1) -/* 801892AC 0018620C 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 -/* 801892B0 00186210 38 00 3E 58 */ li r0, 0x3e58 -/* 801892B4 00186214 DB C1 3E 50 */ stfd f30, 0x3e50(r1) -/* 801892B8 00186218 13 C1 00 0E */ psq_stx f30, r1, r0, 0, qr0 -/* 801892BC 0018621C 38 00 3E 48 */ li r0, 0x3e48 -/* 801892C0 00186220 DB A1 3E 40 */ stfd f29, 0x3e40(r1) -/* 801892C4 00186224 13 A1 00 0E */ psq_stx f29, r1, r0, 0, qr0 -/* 801892C8 00186228 BF 61 3E 2C */ stmw r27, 0x3e2c(r1) -/* 801892CC 0018622C FF A0 08 90 */ fmr f29, f1 -/* 801892D0 00186230 7C 7C 1B 78 */ mr r28, r3 -/* 801892D4 00186234 7C 9D 23 78 */ mr r29, r4 -/* 801892D8 00186238 7C BE 2B 78 */ mr r30, r5 -/* 801892DC 0018623C 38 61 01 DC */ addi r3, r1, 0x1dc -/* 801892E0 00186240 4B F9 23 95 */ bl GetMotionState__13CPhysicsActorCFv -/* 801892E4 00186244 C1 81 01 DC */ lfs f12, 0x1dc(r1) -/* 801892E8 00186248 38 60 00 00 */ li r3, 0 -/* 801892EC 0018624C C1 61 01 E0 */ lfs f11, 0x1e0(r1) -/* 801892F0 00186250 C1 41 01 E4 */ lfs f10, 0x1e4(r1) -/* 801892F4 00186254 C1 21 01 E8 */ lfs f9, 0x1e8(r1) -/* 801892F8 00186258 C1 01 01 EC */ lfs f8, 0x1ec(r1) -/* 801892FC 0018625C C0 E1 01 F0 */ lfs f7, 0x1f0(r1) -/* 80189300 00186260 C0 C1 01 F4 */ lfs f6, 0x1f4(r1) -/* 80189304 00186264 C0 A1 01 F8 */ lfs f5, 0x1f8(r1) -/* 80189308 00186268 C0 81 01 FC */ lfs f4, 0x1fc(r1) -/* 8018930C 0018626C C0 61 02 00 */ lfs f3, 0x200(r1) -/* 80189310 00186270 C0 41 02 04 */ lfs f2, 0x204(r1) -/* 80189314 00186274 C0 21 02 08 */ lfs f1, 0x208(r1) -/* 80189318 00186278 C0 01 02 0C */ lfs f0, 0x20c(r1) -/* 8018931C 0018627C D1 81 02 44 */ stfs f12, 0x244(r1) -/* 80189320 00186280 D1 61 02 48 */ stfs f11, 0x248(r1) -/* 80189324 00186284 D1 41 02 4C */ stfs f10, 0x24c(r1) -/* 80189328 00186288 D1 21 02 50 */ stfs f9, 0x250(r1) -/* 8018932C 0018628C D1 01 02 54 */ stfs f8, 0x254(r1) -/* 80189330 00186290 D0 E1 02 58 */ stfs f7, 0x258(r1) -/* 80189334 00186294 D0 C1 02 5C */ stfs f6, 0x25c(r1) -/* 80189338 00186298 D0 A1 02 60 */ stfs f5, 0x260(r1) -/* 8018933C 0018629C D0 81 02 64 */ stfs f4, 0x264(r1) -/* 80189340 001862A0 D0 61 02 68 */ stfs f3, 0x268(r1) -/* 80189344 001862A4 D0 41 02 6C */ stfs f2, 0x26c(r1) -/* 80189348 001862A8 D0 21 02 70 */ stfs f1, 0x270(r1) -/* 8018934C 001862AC D0 01 02 74 */ stfs f0, 0x274(r1) -/* 80189350 001862B0 4B F2 B1 A9 */ bl IsUser__Fi -/* 80189354 001862B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80189358 001862B8 41 82 00 10 */ beq lbl_80189368 -/* 8018935C 001862BC 7F A3 EB 78 */ mr r3, r29 -/* 80189360 001862C0 38 81 02 44 */ addi r4, r1, 0x244 -/* 80189364 001862C4 4B F9 23 C5 */ bl SetMotionState__13CPhysicsActorFRC12CMotionState -lbl_80189368: -/* 80189368 001862C8 FC 20 E8 90 */ fmr f1, f29 -/* 8018936C 001862CC 7F A4 EB 78 */ mr r4, r29 -/* 80189370 001862D0 38 61 01 A8 */ addi r3, r1, 0x1a8 -/* 80189374 001862D4 4B F9 24 95 */ bl PredictMotion_Internal__13CPhysicsActorCFf -/* 80189378 001862D8 C1 81 01 A8 */ lfs f12, 0x1a8(r1) -/* 8018937C 001862DC 38 61 02 10 */ addi r3, r1, 0x210 -/* 80189380 001862E0 C1 61 01 AC */ lfs f11, 0x1ac(r1) -/* 80189384 001862E4 C1 41 01 B0 */ lfs f10, 0x1b0(r1) -/* 80189388 001862E8 C1 21 01 B4 */ lfs f9, 0x1b4(r1) -/* 8018938C 001862EC C1 01 01 B8 */ lfs f8, 0x1b8(r1) -/* 80189390 001862F0 C0 E1 01 BC */ lfs f7, 0x1bc(r1) -/* 80189394 001862F4 C0 C1 01 C0 */ lfs f6, 0x1c0(r1) -/* 80189398 001862F8 C0 A1 01 C4 */ lfs f5, 0x1c4(r1) -/* 8018939C 001862FC C0 81 01 C8 */ lfs f4, 0x1c8(r1) -/* 801893A0 00186300 C0 61 01 CC */ lfs f3, 0x1cc(r1) -/* 801893A4 00186304 C0 41 01 D0 */ lfs f2, 0x1d0(r1) -/* 801893A8 00186308 C0 21 01 D4 */ lfs f1, 0x1d4(r1) -/* 801893AC 0018630C C0 01 01 D8 */ lfs f0, 0x1d8(r1) -/* 801893B0 00186310 D1 81 02 10 */ stfs f12, 0x210(r1) -/* 801893B4 00186314 D1 61 02 14 */ stfs f11, 0x214(r1) -/* 801893B8 00186318 D1 41 02 18 */ stfs f10, 0x218(r1) -/* 801893BC 0018631C D1 21 02 1C */ stfs f9, 0x21c(r1) -/* 801893C0 00186320 D1 01 02 20 */ stfs f8, 0x220(r1) -/* 801893C4 00186324 D0 E1 02 24 */ stfs f7, 0x224(r1) -/* 801893C8 00186328 D0 C1 02 28 */ stfs f6, 0x228(r1) -/* 801893CC 0018632C D0 A1 02 2C */ stfs f5, 0x22c(r1) -/* 801893D0 00186330 D0 81 02 30 */ stfs f4, 0x230(r1) -/* 801893D4 00186334 D0 61 02 34 */ stfs f3, 0x234(r1) -/* 801893D8 00186338 D0 41 02 38 */ stfs f2, 0x238(r1) -/* 801893DC 0018633C D0 21 02 3C */ stfs f1, 0x23c(r1) -/* 801893E0 00186340 D0 01 02 40 */ stfs f0, 0x240(r1) -/* 801893E4 00186344 48 18 B4 D5 */ bl Magnitude__9CVector3fCFv -/* 801893E8 00186348 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 801893EC 0018634C 38 80 00 00 */ li r4, 0 -/* 801893F0 00186350 FF E0 08 90 */ fmr f31, f1 -/* 801893F4 00186354 90 81 32 24 */ stw r4, 0x3224(r1) -/* 801893F8 00186358 7F A3 EB 78 */ mr r3, r29 -/* 801893FC 0018635C B0 01 00 20 */ sth r0, 0x20(r1) -/* 80189400 00186360 90 81 2A 20 */ stw r4, 0x2a20(r1) -/* 80189404 00186364 4B EC A4 B9 */ bl GetMaterialFilter__6CActorCFv -/* 80189408 00186368 FC 20 E8 90 */ fmr f1, f29 -/* 8018940C 0018636C 7C 7F 1B 78 */ mr r31, r3 -/* 80189410 00186370 7F A4 EB 78 */ mr r4, r29 -/* 80189414 00186374 38 61 00 98 */ addi r3, r1, 0x98 -/* 80189418 00186378 4B F9 12 9D */ bl GetMotionVolume__13CPhysicsActorCFf -/* 8018941C 0018637C C0 A1 00 98 */ lfs f5, 0x98(r1) -/* 80189420 00186380 28 1E 00 00 */ cmplwi r30, 0 -/* 80189424 00186384 C0 81 00 9C */ lfs f4, 0x9c(r1) -/* 80189428 00186388 C0 61 00 A0 */ lfs f3, 0xa0(r1) -/* 8018942C 0018638C C0 41 00 A4 */ lfs f2, 0xa4(r1) -/* 80189430 00186390 C0 21 00 A8 */ lfs f1, 0xa8(r1) -/* 80189434 00186394 C0 01 00 AC */ lfs f0, 0xac(r1) -/* 80189438 00186398 D0 A1 00 C8 */ stfs f5, 0xc8(r1) -/* 8018943C 0018639C D0 81 00 CC */ stfs f4, 0xcc(r1) -/* 80189440 001863A0 D0 61 00 D0 */ stfs f3, 0xd0(r1) -/* 80189444 001863A4 D0 41 00 D4 */ stfs f2, 0xd4(r1) -/* 80189448 001863A8 D0 21 00 D8 */ stfs f1, 0xd8(r1) -/* 8018944C 001863AC D0 01 00 DC */ stfs f0, 0xdc(r1) -/* 80189450 001863B0 41 82 00 AC */ beq lbl_801894FC -/* 80189454 001863B4 38 01 2A 20 */ addi r0, r1, 0x2a20 -/* 80189458 001863B8 7C 00 F0 40 */ cmplw r0, r30 -/* 8018945C 001863BC 41 82 00 B4 */ beq lbl_80189510 -/* 80189460 001863C0 80 A1 2A 20 */ lwz r5, 0x2a20(r1) -/* 80189464 001863C4 38 C1 2A 24 */ addi r6, r1, 0x2a24 -/* 80189468 001863C8 38 60 00 00 */ li r3, 0 -/* 8018946C 001863CC 2C 05 00 00 */ cmpwi r5, 0 -/* 80189470 001863D0 40 81 00 40 */ ble lbl_801894B0 -/* 80189474 001863D4 2C 05 00 08 */ cmpwi r5, 8 -/* 80189478 001863D8 38 85 FF F8 */ addi r4, r5, -8 -/* 8018947C 001863DC 40 81 00 20 */ ble lbl_8018949C -/* 80189480 001863E0 38 04 00 07 */ addi r0, r4, 7 -/* 80189484 001863E4 54 00 E8 FE */ srwi r0, r0, 3 -/* 80189488 001863E8 7C 09 03 A6 */ mtctr r0 -/* 8018948C 001863EC 2C 04 00 00 */ cmpwi r4, 0 -/* 80189490 001863F0 40 81 00 0C */ ble lbl_8018949C -lbl_80189494: -/* 80189494 001863F4 38 63 00 08 */ addi r3, r3, 8 -/* 80189498 001863F8 42 00 FF FC */ bdnz lbl_80189494 -lbl_8018949C: -/* 8018949C 001863FC 7C 03 28 50 */ subf r0, r3, r5 -/* 801894A0 00186400 7C 09 03 A6 */ mtctr r0 -/* 801894A4 00186404 7C 03 28 00 */ cmpw r3, r5 -/* 801894A8 00186408 40 80 00 08 */ bge lbl_801894B0 -lbl_801894AC: -/* 801894AC 0018640C 42 00 00 00 */ bdnz lbl_801894AC -lbl_801894B0: -/* 801894B0 00186410 80 1E 00 00 */ lwz r0, 0(r30) -/* 801894B4 00186414 38 60 00 00 */ li r3, 0 -/* 801894B8 00186418 90 61 2A 20 */ stw r3, 0x2a20(r1) -/* 801894BC 0018641C 38 7E 00 04 */ addi r3, r30, 4 -/* 801894C0 00186420 54 00 08 3C */ slwi r0, r0, 1 -/* 801894C4 00186424 7C 9E 02 14 */ add r4, r30, r0 -/* 801894C8 00186428 38 84 00 04 */ addi r4, r4, 4 -/* 801894CC 0018642C 48 00 00 1C */ b lbl_801894E8 -lbl_801894D0: -/* 801894D0 00186430 28 06 00 00 */ cmplwi r6, 0 -/* 801894D4 00186434 41 82 00 0C */ beq lbl_801894E0 -/* 801894D8 00186438 A0 03 00 00 */ lhz r0, 0(r3) -/* 801894DC 0018643C B0 06 00 00 */ sth r0, 0(r6) -lbl_801894E0: -/* 801894E0 00186440 38 C6 00 02 */ addi r6, r6, 2 -/* 801894E4 00186444 38 63 00 02 */ addi r3, r3, 2 -lbl_801894E8: -/* 801894E8 00186448 7C 03 20 40 */ cmplw r3, r4 -/* 801894EC 0018644C 40 82 FF E4 */ bne lbl_801894D0 -/* 801894F0 00186450 80 1E 00 00 */ lwz r0, 0(r30) -/* 801894F4 00186454 90 01 2A 20 */ stw r0, 0x2a20(r1) -/* 801894F8 00186458 48 00 00 18 */ b lbl_80189510 -lbl_801894FC: -/* 801894FC 0018645C 7F 83 E3 78 */ mr r3, r28 -/* 80189500 00186460 7F A5 EB 78 */ mr r5, r29 -/* 80189504 00186464 38 81 2A 20 */ addi r4, r1, 0x2a20 -/* 80189508 00186468 38 C1 00 C8 */ addi r6, r1, 0xc8 -/* 8018950C 0018646C 4B EC 31 F1 */ bl "BuildColliderList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CActorRC6CAABox" -lbl_80189510: -/* 80189510 00186470 38 61 0E DC */ addi r3, r1, 0xedc -/* 80189514 00186474 38 81 00 C8 */ addi r4, r1, 0xc8 -/* 80189518 00186478 48 11 A5 79 */ bl __ct__19CAreaCollisionCacheFRC6CAABox -/* 8018951C 0018647C 7F A3 EB 78 */ mr r3, r29 -/* 80189520 00186480 FF C0 E8 90 */ fmr f30, f29 -/* 80189524 00186484 81 9D 00 00 */ lwz r12, 0(r29) -/* 80189528 00186488 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 8018952C 0018648C 7D 89 03 A6 */ mtctr r12 -/* 80189530 00186490 4E 80 04 21 */ bctrl -/* 80189534 00186494 81 83 00 00 */ lwz r12, 0(r3) -/* 80189538 00186498 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 8018953C 0018649C 7D 89 03 A6 */ mtctr r12 -/* 80189540 001864A0 4E 80 04 21 */ bctrl -/* 80189544 001864A4 3C 03 B0 BE */ addis r0, r3, 0xb0be -/* 80189548 001864A8 28 00 54 47 */ cmplwi r0, 0x5447 -/* 8018954C 001864AC 41 82 01 E8 */ beq lbl_80189734 -/* 80189550 001864B0 7F 83 E3 78 */ mr r3, r28 -/* 80189554 001864B4 38 81 0E DC */ addi r4, r1, 0xedc -/* 80189558 001864B8 4B FF B1 6D */ bl BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache -/* 8018955C 001864BC 7F A3 EB 78 */ mr r3, r29 -/* 80189560 001864C0 81 9D 00 00 */ lwz r12, 0(r29) -/* 80189564 001864C4 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 80189568 001864C8 7D 89 03 A6 */ mtctr r12 -/* 8018956C 001864CC 4E 80 04 21 */ bctrl -/* 80189570 001864D0 4B FF 91 5D */ bl GetMinExtentForCollisionPrimitive__14CGameCollisionFRC19CCollisionPrimitive -/* 80189574 001864D4 C0 02 A3 20 */ lfs f0, lbl_805AC040@sda21(r2) -/* 80189578 001864D8 EC 00 00 72 */ fmuls f0, f0, f1 -/* 8018957C 001864DC FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 80189580 001864E0 40 81 01 B4 */ ble lbl_80189734 -/* 80189584 001864E4 7F A4 EB 78 */ mr r4, r29 -/* 80189588 001864E8 38 61 01 78 */ addi r3, r1, 0x178 -/* 8018958C 001864EC 81 9D 00 00 */ lwz r12, 0(r29) -/* 80189590 001864F0 81 8C 00 70 */ lwz r12, 0x70(r12) -/* 80189594 001864F4 7D 89 03 A6 */ mtctr r12 -/* 80189598 001864F8 4E 80 04 21 */ bctrl -/* 8018959C 001864FC 7F A3 EB 78 */ mr r3, r29 -/* 801895A0 00186500 81 9D 00 00 */ lwz r12, 0(r29) -/* 801895A4 00186504 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 801895A8 00186508 7D 89 03 A6 */ mtctr r12 -/* 801895AC 0018650C 4E 80 04 21 */ bctrl -/* 801895B0 00186510 7C 64 1B 78 */ mr r4, r3 -/* 801895B4 00186514 38 61 00 80 */ addi r3, r1, 0x80 -/* 801895B8 00186518 81 84 00 00 */ lwz r12, 0(r4) -/* 801895BC 0018651C 38 A1 01 78 */ addi r5, r1, 0x178 -/* 801895C0 00186520 81 8C 00 14 */ lwz r12, 0x14(r12) -/* 801895C4 00186524 7D 89 03 A6 */ mtctr r12 -/* 801895C8 00186528 4E 80 04 21 */ bctrl -/* 801895CC 0018652C C0 A1 00 80 */ lfs f5, 0x80(r1) -/* 801895D0 00186530 38 61 00 40 */ addi r3, r1, 0x40 -/* 801895D4 00186534 C0 81 00 84 */ lfs f4, 0x84(r1) -/* 801895D8 00186538 38 81 00 B0 */ addi r4, r1, 0xb0 -/* 801895DC 0018653C C0 61 00 88 */ lfs f3, 0x88(r1) -/* 801895E0 00186540 C0 41 00 8C */ lfs f2, 0x8c(r1) -/* 801895E4 00186544 C0 21 00 90 */ lfs f1, 0x90(r1) -/* 801895E8 00186548 C0 01 00 94 */ lfs f0, 0x94(r1) -/* 801895EC 0018654C D0 A1 00 B0 */ stfs f5, 0xb0(r1) -/* 801895F0 00186550 D0 81 00 B4 */ stfs f4, 0xb4(r1) -/* 801895F4 00186554 D0 61 00 B8 */ stfs f3, 0xb8(r1) -/* 801895F8 00186558 D0 41 00 BC */ stfs f2, 0xbc(r1) -/* 801895FC 0018655C D0 21 00 C0 */ stfs f1, 0xc0(r1) -/* 80189600 00186560 D0 01 00 C4 */ stfs f0, 0xc4(r1) -/* 80189604 00186564 48 1A E0 09 */ bl GetCenterPoint__6CAABoxCFv -/* 80189608 00186568 C0 02 A3 10 */ lfs f0, lbl_805AC030@sda21(r2) -/* 8018960C 0018656C 38 60 00 00 */ li r3, 0 -/* 80189610 00186570 C0 A1 00 40 */ lfs f5, 0x40(r1) -/* 80189614 00186574 38 80 00 01 */ li r4, 1 -/* 80189618 00186578 EC C0 F8 24 */ fdivs f6, f0, f31 -/* 8018961C 0018657C C0 41 02 14 */ lfs f2, 0x214(r1) -/* 80189620 00186580 C0 21 02 18 */ lfs f1, 0x218(r1) -/* 80189624 00186584 C0 01 02 10 */ lfs f0, 0x210(r1) -/* 80189628 00186588 C0 81 00 44 */ lfs f4, 0x44(r1) -/* 8018962C 0018658C C0 61 00 48 */ lfs f3, 0x48(r1) -/* 80189630 00186590 EC 46 00 B2 */ fmuls f2, f6, f2 -/* 80189634 00186594 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80189638 00186598 EC 26 00 72 */ fmuls f1, f6, f1 -/* 8018963C 0018659C 80 AD 8E AC */ lwz r5, lbl_805A7A6C@sda21(r13) -/* 80189640 001865A0 EC 06 00 32 */ fmuls f0, f6, f0 -/* 80189644 001865A4 D0 A1 00 58 */ stfs f5, 0x58(r1) -/* 80189648 001865A8 D0 81 00 5C */ stfs f4, 0x5c(r1) -/* 8018964C 001865AC D0 61 00 60 */ stfs f3, 0x60(r1) -/* 80189650 001865B0 D0 01 00 4C */ stfs f0, 0x4c(r1) -/* 80189654 001865B4 D0 41 00 50 */ stfs f2, 0x50(r1) -/* 80189658 001865B8 D0 21 00 54 */ stfs f1, 0x54(r1) -/* 8018965C 001865BC B0 01 00 1C */ sth r0, 0x1c(r1) -/* 80189660 001865C0 48 20 08 95 */ bl __shl2i -/* 80189664 001865C4 39 40 00 00 */ li r10, 0 -/* 80189668 001865C8 38 00 00 01 */ li r0, 1 -/* 8018966C 001865CC 90 81 00 6C */ stw r4, 0x6c(r1) -/* 80189670 001865D0 FC 20 F8 90 */ fmr f1, f31 -/* 80189674 001865D4 7F 84 E3 78 */ mr r4, r28 -/* 80189678 001865D8 38 A1 00 1C */ addi r5, r1, 0x1c -/* 8018967C 001865DC 90 61 00 68 */ stw r3, 0x68(r1) -/* 80189680 001865E0 38 61 01 48 */ addi r3, r1, 0x148 -/* 80189684 001865E4 38 C1 00 58 */ addi r6, r1, 0x58 -/* 80189688 001865E8 91 41 00 74 */ stw r10, 0x74(r1) -/* 8018968C 001865EC 38 E1 00 4C */ addi r7, r1, 0x4c -/* 80189690 001865F0 39 01 00 68 */ addi r8, r1, 0x68 -/* 80189694 001865F4 39 21 2A 20 */ addi r9, r1, 0x2a20 -/* 80189698 001865F8 91 41 00 70 */ stw r10, 0x70(r1) -/* 8018969C 001865FC 90 01 00 78 */ stw r0, 0x78(r1) -/* 801896A0 00186600 4B EC 39 25 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" -/* 801896A4 00186604 88 01 01 68 */ lbz r0, 0x168(r1) -/* 801896A8 00186608 C0 01 01 48 */ lfs f0, 0x148(r1) -/* 801896AC 0018660C 28 00 00 00 */ cmplwi r0, 0 -/* 801896B0 00186610 41 82 00 84 */ beq lbl_80189734 -/* 801896B4 00186614 EC 00 F8 24 */ fdivs f0, f0, f31 -/* 801896B8 00186618 7F A4 EB 78 */ mr r4, r29 -/* 801896BC 0018661C 38 61 01 10 */ addi r3, r1, 0x110 -/* 801896C0 00186620 EF DD 00 32 */ fmuls f30, f29, f0 -/* 801896C4 00186624 FC 20 F0 90 */ fmr f1, f30 -/* 801896C8 00186628 4B F9 21 41 */ bl PredictMotion_Internal__13CPhysicsActorCFf -/* 801896CC 0018662C 83 61 01 10 */ lwz r27, 0x110(r1) -/* 801896D0 00186630 83 C1 01 14 */ lwz r30, 0x114(r1) -/* 801896D4 00186634 81 81 01 18 */ lwz r12, 0x118(r1) -/* 801896D8 00186638 81 61 01 1C */ lwz r11, 0x11c(r1) -/* 801896DC 0018663C 81 41 01 20 */ lwz r10, 0x120(r1) -/* 801896E0 00186640 81 21 01 24 */ lwz r9, 0x124(r1) -/* 801896E4 00186644 81 01 01 28 */ lwz r8, 0x128(r1) -/* 801896E8 00186648 80 E1 01 2C */ lwz r7, 0x12c(r1) -/* 801896EC 0018664C 80 C1 01 30 */ lwz r6, 0x130(r1) -/* 801896F0 00186650 80 A1 01 34 */ lwz r5, 0x134(r1) -/* 801896F4 00186654 80 81 01 38 */ lwz r4, 0x138(r1) -/* 801896F8 00186658 80 61 01 3C */ lwz r3, 0x13c(r1) -/* 801896FC 0018665C 80 01 01 40 */ lwz r0, 0x140(r1) -/* 80189700 00186660 93 61 02 10 */ stw r27, 0x210(r1) -/* 80189704 00186664 93 C1 02 14 */ stw r30, 0x214(r1) -/* 80189708 00186668 91 81 02 18 */ stw r12, 0x218(r1) -/* 8018970C 0018666C 91 61 02 1C */ stw r11, 0x21c(r1) -/* 80189710 00186670 91 41 02 20 */ stw r10, 0x220(r1) -/* 80189714 00186674 91 21 02 24 */ stw r9, 0x224(r1) -/* 80189718 00186678 91 01 02 28 */ stw r8, 0x228(r1) -/* 8018971C 0018667C 90 E1 02 2C */ stw r7, 0x22c(r1) -/* 80189720 00186680 90 C1 02 30 */ stw r6, 0x230(r1) -/* 80189724 00186684 90 A1 02 34 */ stw r5, 0x234(r1) -/* 80189728 00186688 90 81 02 38 */ stw r4, 0x238(r1) -/* 8018972C 0018668C 90 61 02 3C */ stw r3, 0x23c(r1) -/* 80189730 00186690 90 01 02 40 */ stw r0, 0x240(r1) -lbl_80189734: -/* 80189734 00186694 7F A3 EB 78 */ mr r3, r29 -/* 80189738 00186698 38 81 02 10 */ addi r4, r1, 0x210 -/* 8018973C 0018669C 4B F9 12 FD */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f -/* 80189740 001866A0 7F A4 EB 78 */ mr r4, r29 -/* 80189744 001866A4 38 61 00 E0 */ addi r3, r1, 0xe0 -/* 80189748 001866A8 81 9D 00 00 */ lwz r12, 0(r29) -/* 8018974C 001866AC 81 8C 00 70 */ lwz r12, 0x70(r12) -/* 80189750 001866B0 7D 89 03 A6 */ mtctr r12 -/* 80189754 001866B4 4E 80 04 21 */ bctrl -/* 80189758 001866B8 7F A3 EB 78 */ mr r3, r29 -/* 8018975C 001866BC 81 9D 00 00 */ lwz r12, 0(r29) -/* 80189760 001866C0 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 80189764 001866C4 7D 89 03 A6 */ mtctr r12 -/* 80189768 001866C8 4E 80 04 21 */ bctrl -/* 8018976C 001866CC 7C 65 1B 78 */ mr r5, r3 -/* 80189770 001866D0 7F 83 E3 78 */ mr r3, r28 -/* 80189774 001866D4 7F E7 FB 78 */ mr r7, r31 -/* 80189778 001866D8 38 81 0E DC */ addi r4, r1, 0xedc -/* 8018977C 001866DC 38 C1 00 E0 */ addi r6, r1, 0xe0 -/* 80189780 001866E0 39 01 2A 20 */ addi r8, r1, 0x2a20 -/* 80189784 001866E4 39 21 00 20 */ addi r9, r1, 0x20 -/* 80189788 001866E8 39 41 32 24 */ addi r10, r1, 0x3224 -/* 8018978C 001866EC 4B FF AC 59 */ bl "DetectCollision_Cached__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>R9TUniqueIdR18CCollisionInfoList" -/* 80189790 001866F0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80189794 001866F4 41 82 00 8C */ beq lbl_80189820 -/* 80189798 001866F8 7F A3 EB 78 */ mr r3, r29 -/* 8018979C 001866FC 81 9D 00 00 */ lwz r12, 0(r29) -/* 801897A0 00186700 81 8C 00 7C */ lwz r12, 0x7c(r12) -/* 801897A4 00186704 7D 89 03 A6 */ mtctr r12 -/* 801897A8 00186708 4E 80 04 21 */ bctrl -/* 801897AC 0018670C C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) -/* 801897B0 00186710 FF E0 08 90 */ fmr f31, f1 -/* 801897B4 00186714 7F A3 EB 78 */ mr r3, r29 -/* 801897B8 00186718 38 81 02 10 */ addi r4, r1, 0x210 -/* 801897BC 0018671C D0 01 00 28 */ stfs f0, 0x28(r1) -/* 801897C0 00186720 4B F9 1D 55 */ bl AddMotionState__13CPhysicsActorFRC12CMotionState -/* 801897C4 00186724 FC 20 F8 90 */ fmr f1, f31 -/* 801897C8 00186728 C0 42 A3 18 */ lfs f2, lbl_805AC038@sda21(r2) -/* 801897CC 0018672C 7F 84 E3 78 */ mr r4, r28 -/* 801897D0 00186730 7F A5 EB 78 */ mr r5, r29 -/* 801897D4 00186734 7F E6 FB 78 */ mr r6, r31 -/* 801897D8 00186738 38 61 0E DC */ addi r3, r1, 0xedc -/* 801897DC 0018673C 38 E1 2A 20 */ addi r7, r1, 0x2a20 -/* 801897E0 00186740 39 01 00 28 */ addi r8, r1, 0x28 -/* 801897E4 00186744 39 21 32 24 */ addi r9, r1, 0x3224 -/* 801897E8 00186748 4B FF F7 95 */ bl "ResolveUpDown__15CGroundMovementFR19CAreaCollisionCacheR13CStateManagerR13CPhysicsActorRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>ffRfR18CCollisionInfoList" -/* 801897EC 0018674C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801897F0 00186750 41 82 00 3C */ beq lbl_8018982C -/* 801897F4 00186754 7F A3 EB 78 */ mr r3, r29 -/* 801897F8 00186758 38 81 02 44 */ addi r4, r1, 0x244 -/* 801897FC 0018675C 4B F9 1F 2D */ bl SetMotionState__13CPhysicsActorFRC12CMotionState -/* 80189800 00186760 FC 20 F0 90 */ fmr f1, f30 -/* 80189804 00186764 7F 84 E3 78 */ mr r4, r28 -/* 80189808 00186768 7F A5 EB 78 */ mr r5, r29 -/* 8018980C 0018676C 7F E6 FB 78 */ mr r6, r31 -/* 80189810 00186770 38 61 0E DC */ addi r3, r1, 0xedc -/* 80189814 00186774 38 E1 2A 20 */ addi r7, r1, 0x2a20 -/* 80189818 00186778 4B FF E9 E1 */ bl "MoveGroundColliderXY__15CGroundMovementFR19CAreaCollisionCacheR13CStateManagerR13CPhysicsActorRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>f" -/* 8018981C 0018677C 48 00 00 10 */ b lbl_8018982C -lbl_80189820: -/* 80189820 00186780 7F A3 EB 78 */ mr r3, r29 -/* 80189824 00186784 38 81 02 10 */ addi r4, r1, 0x210 -/* 80189828 00186788 4B F9 1C ED */ bl AddMotionState__13CPhysicsActorFRC12CMotionState -lbl_8018982C: -/* 8018982C 0018678C C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) -/* 80189830 00186790 7F A3 EB 78 */ mr r3, r29 -/* 80189834 00186794 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 80189838 00186798 81 9D 00 00 */ lwz r12, 0(r29) -/* 8018983C 0018679C 81 8C 00 78 */ lwz r12, 0x78(r12) -/* 80189840 001867A0 7D 89 03 A6 */ mtctr r12 -/* 80189844 001867A4 4E 80 04 21 */ bctrl -/* 80189848 001867A8 80 A1 32 24 */ lwz r5, 0x3224(r1) -/* 8018984C 001867AC 38 60 00 00 */ li r3, 0 -/* 80189850 001867B0 2C 05 00 00 */ cmpwi r5, 0 -/* 80189854 001867B4 40 81 00 40 */ ble lbl_80189894 -/* 80189858 001867B8 2C 05 00 08 */ cmpwi r5, 8 -/* 8018985C 001867BC 38 85 FF F8 */ addi r4, r5, -8 -/* 80189860 001867C0 40 81 00 20 */ ble lbl_80189880 -/* 80189864 001867C4 38 04 00 07 */ addi r0, r4, 7 -/* 80189868 001867C8 54 00 E8 FE */ srwi r0, r0, 3 -/* 8018986C 001867CC 7C 09 03 A6 */ mtctr r0 -/* 80189870 001867D0 2C 04 00 00 */ cmpwi r4, 0 -/* 80189874 001867D4 40 81 00 0C */ ble lbl_80189880 -lbl_80189878: -/* 80189878 001867D8 38 63 00 08 */ addi r3, r3, 8 -/* 8018987C 001867DC 42 00 FF FC */ bdnz lbl_80189878 -lbl_80189880: -/* 80189880 001867E0 7C 03 28 50 */ subf r0, r3, r5 -/* 80189884 001867E4 7C 09 03 A6 */ mtctr r0 -/* 80189888 001867E8 7C 03 28 00 */ cmpw r3, r5 -/* 8018988C 001867EC 40 80 00 08 */ bge lbl_80189894 -lbl_80189890: -/* 80189890 001867F0 42 00 00 00 */ bdnz lbl_80189890 -lbl_80189894: -/* 80189894 001867F4 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) -/* 80189898 001867F8 38 60 00 00 */ li r3, 0 -/* 8018989C 001867FC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 801898A0 00186800 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 801898A4 00186804 90 61 32 24 */ stw r3, 0x3224(r1) -/* 801898A8 00186808 B0 01 00 18 */ sth r0, 0x18(r1) -/* 801898AC 0018680C 4C 41 13 82 */ cror 2, 1, 2 -/* 801898B0 00186810 40 82 01 88 */ bne lbl_80189A38 -/* 801898B4 00186814 FC 20 08 50 */ fneg f1, f1 -/* 801898B8 00186818 7F 84 E3 78 */ mr r4, r28 -/* 801898BC 0018681C 7F A5 EB 78 */ mr r5, r29 -/* 801898C0 00186820 7F E6 FB 78 */ mr r6, r31 -/* 801898C4 00186824 38 61 0E DC */ addi r3, r1, 0xedc -/* 801898C8 00186828 38 E1 2A 20 */ addi r7, r1, 0x2a20 -/* 801898CC 0018682C 39 01 00 24 */ addi r8, r1, 0x24 -/* 801898D0 00186830 39 21 32 24 */ addi r9, r1, 0x3224 -/* 801898D4 00186834 39 41 00 18 */ addi r10, r1, 0x18 -/* 801898D8 00186838 4B FF F2 F9 */ bl "MoveGroundColliderZ__15CGroundMovementFR19CAreaCollisionCacheR13CStateManagerR13CPhysicsActorRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>fRfR18CCollisionInfoListR9TUniqueId" -/* 801898DC 0018683C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 801898E0 00186840 41 82 01 58 */ beq lbl_80189A38 -/* 801898E4 00186844 80 01 32 24 */ lwz r0, 0x3224(r1) -/* 801898E8 00186848 2C 00 00 00 */ cmpwi r0, 0 -/* 801898EC 0018684C 40 81 01 5C */ ble lbl_80189A48 -/* 801898F0 00186850 C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) -/* 801898F4 00186854 38 00 00 00 */ li r0, 0 -/* 801898F8 00186858 C0 02 A3 10 */ lfs f0, lbl_805AC030@sda21(r2) -/* 801898FC 0018685C 38 61 00 34 */ addi r3, r1, 0x34 -/* 80189900 00186860 90 01 02 D8 */ stw r0, 0x2d8(r1) -/* 80189904 00186864 38 81 32 24 */ addi r4, r1, 0x3224 -/* 80189908 00186868 38 A1 02 D8 */ addi r5, r1, 0x2d8 -/* 8018990C 0018686C D0 21 00 34 */ stfs f1, 0x34(r1) -/* 80189910 00186870 D0 21 00 38 */ stfs f1, 0x38(r1) -/* 80189914 00186874 D0 01 00 3C */ stfs f0, 0x3c(r1) -/* 80189918 00186878 48 14 8B 41 */ bl FilterByClosestNormal__13CollisionUtilFRC9CVector3fRC18CCollisionInfoListR18CCollisionInfoList -/* 8018991C 0018687C 80 01 02 D8 */ lwz r0, 0x2d8(r1) -/* 80189920 00186880 2C 00 00 00 */ cmpwi r0, 0 -/* 80189924 00186884 40 81 00 BC */ ble lbl_801899E0 -/* 80189928 00186888 38 61 02 78 */ addi r3, r1, 0x278 -/* 8018992C 0018688C 38 81 02 DC */ addi r4, r1, 0x2dc -/* 80189930 00186890 4B F6 7B 71 */ bl __ct__14CCollisionInfoFRC14CCollisionInfo -/* 80189934 00186894 3B 61 02 B0 */ addi r27, r1, 0x2b0 -/* 80189938 00186898 38 81 02 C0 */ addi r4, r1, 0x2c0 -/* 8018993C 0018689C 7F 63 DB 78 */ mr r3, r27 -/* 80189940 001868A0 4B FF 8F 89 */ bl IsFloor__14CGameCollisionFRC13CMaterialListRC9CVector3f -/* 80189944 001868A4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80189948 001868A8 41 82 00 88 */ beq lbl_801899D0 -/* 8018994C 001868AC A0 01 00 18 */ lhz r0, 0x18(r1) -/* 80189950 001868B0 7F 83 E3 78 */ mr r3, r28 -/* 80189954 001868B4 38 81 00 14 */ addi r4, r1, 0x14 -/* 80189958 001868B8 B0 01 00 14 */ sth r0, 0x14(r1) -/* 8018995C 001868BC 4B EC 2C 19 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 80189960 001868C0 7C 60 1B 78 */ mr r0, r3 -/* 80189964 001868C4 38 61 00 2C */ addi r3, r1, 0x2c -/* 80189968 001868C8 7C 1E 03 78 */ mr r30, r0 -/* 8018996C 001868CC 7F C4 F3 78 */ mr r4, r30 -/* 80189970 001868D0 4B F1 F4 A5 */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" -/* 80189974 001868D4 80 03 00 04 */ lwz r0, 4(r3) -/* 80189978 001868D8 28 00 00 00 */ cmplwi r0, 0 -/* 8018997C 001868DC 41 82 00 24 */ beq lbl_801899A0 -/* 80189980 001868E0 A0 1D 00 08 */ lhz r0, 8(r29) -/* 80189984 001868E4 7F 83 E3 78 */ mr r3, r28 -/* 80189988 001868E8 7F C4 F3 78 */ mr r4, r30 -/* 8018998C 001868EC 38 A1 00 10 */ addi r5, r1, 0x10 -/* 80189990 001868F0 B0 01 00 0C */ sth r0, 0xc(r1) -/* 80189994 001868F4 38 C0 00 1F */ li r6, 0x1f -/* 80189998 001868F8 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8018999C 001868FC 4B EB A5 35 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -lbl_801899A0: -/* 801899A0 00186900 7F 83 E3 78 */ mr r3, r28 -/* 801899A4 00186904 7F 64 DB 78 */ mr r4, r27 -/* 801899A8 00186908 7F A5 EB 78 */ mr r5, r29 -/* 801899AC 0018690C 4B FF 8F AD */ bl SendMaterialMessage__14CGameCollisionFR13CStateManagerRC13CMaterialListR6CActor -/* 801899B0 00186910 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 801899B4 00186914 7F 83 E3 78 */ mr r3, r28 -/* 801899B8 00186918 7F A4 EB 78 */ mr r4, r29 -/* 801899BC 0018691C 38 A1 00 08 */ addi r5, r1, 8 -/* 801899C0 00186920 B0 01 00 08 */ sth r0, 8(r1) -/* 801899C4 00186924 38 C0 00 17 */ li r6, 0x17 -/* 801899C8 00186928 4B EB A5 09 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -/* 801899CC 0018692C 48 00 00 14 */ b lbl_801899E0 -lbl_801899D0: -/* 801899D0 00186930 FC 20 E8 90 */ fmr f1, f29 -/* 801899D4 00186934 7F A3 EB 78 */ mr r3, r29 -/* 801899D8 00186938 7F 84 E3 78 */ mr r4, r28 -/* 801899DC 0018693C 48 00 02 55 */ bl CheckFalling__15CGroundMovementFR13CPhysicsActorR13CStateManagerf -lbl_801899E0: -/* 801899E0 00186940 80 A1 02 D8 */ lwz r5, 0x2d8(r1) -/* 801899E4 00186944 38 60 00 00 */ li r3, 0 -/* 801899E8 00186948 2C 05 00 00 */ cmpwi r5, 0 -/* 801899EC 0018694C 40 81 00 40 */ ble lbl_80189A2C -/* 801899F0 00186950 2C 05 00 08 */ cmpwi r5, 8 -/* 801899F4 00186954 38 85 FF F8 */ addi r4, r5, -8 -/* 801899F8 00186958 40 81 00 20 */ ble lbl_80189A18 -/* 801899FC 0018695C 38 04 00 07 */ addi r0, r4, 7 -/* 80189A00 00186960 54 00 E8 FE */ srwi r0, r0, 3 -/* 80189A04 00186964 7C 09 03 A6 */ mtctr r0 -/* 80189A08 00186968 2C 04 00 00 */ cmpwi r4, 0 -/* 80189A0C 0018696C 40 81 00 0C */ ble lbl_80189A18 -lbl_80189A10: -/* 80189A10 00186970 38 63 00 08 */ addi r3, r3, 8 -/* 80189A14 00186974 42 00 FF FC */ bdnz lbl_80189A10 -lbl_80189A18: -/* 80189A18 00186978 7C 03 28 50 */ subf r0, r3, r5 -/* 80189A1C 0018697C 7C 09 03 A6 */ mtctr r0 -/* 80189A20 00186980 7C 03 28 00 */ cmpw r3, r5 -/* 80189A24 00186984 40 80 00 08 */ bge lbl_80189A2C -lbl_80189A28: -/* 80189A28 00186988 42 00 00 00 */ bdnz lbl_80189A28 -lbl_80189A2C: -/* 80189A2C 0018698C 38 00 00 00 */ li r0, 0 -/* 80189A30 00186990 90 01 02 D8 */ stw r0, 0x2d8(r1) -/* 80189A34 00186994 48 00 00 14 */ b lbl_80189A48 -lbl_80189A38: -/* 80189A38 00186998 FC 20 E8 90 */ fmr f1, f29 -/* 80189A3C 0018699C 7F A3 EB 78 */ mr r3, r29 -/* 80189A40 001869A0 7F 84 E3 78 */ mr r4, r28 -/* 80189A44 001869A4 48 00 01 ED */ bl CheckFalling__15CGroundMovementFR13CPhysicsActorR13CStateManagerf -lbl_80189A48: -/* 80189A48 001869A8 7F A3 EB 78 */ mr r3, r29 -/* 80189A4C 001869AC 4B F9 18 69 */ bl ClearForcesAndTorques__13CPhysicsActorFv -/* 80189A50 001869B0 3C 80 80 5A */ lis r4, skZero3f@ha -/* 80189A54 001869B4 7F A3 EB 78 */ mr r3, r29 -/* 80189A58 001869B8 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 80189A5C 001869BC 4B F9 0F DD */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f -/* 80189A60 001869C0 80 7D 00 68 */ lwz r3, 0x68(r29) -/* 80189A64 001869C4 38 00 00 01 */ li r0, 1 -/* 80189A68 001869C8 80 BD 00 6C */ lwz r5, 0x6c(r29) -/* 80189A6C 001869CC 38 80 00 00 */ li r4, 0 -/* 80189A70 001869D0 7C 60 00 38 */ and r0, r3, r0 -/* 80189A74 001869D4 7C A3 20 38 */ and r3, r5, r4 -/* 80189A78 001869D8 7C 63 22 78 */ xor r3, r3, r4 -/* 80189A7C 001869DC 7C 00 22 78 */ xor r0, r0, r4 -/* 80189A80 001869E0 7C 60 03 79 */ or. r0, r3, r0 -/* 80189A84 001869E4 41 82 00 38 */ beq lbl_80189ABC -/* 80189A88 001869E8 7F A3 EB 78 */ mr r3, r29 -/* 80189A8C 001869EC 81 9D 00 00 */ lwz r12, 0(r29) -/* 80189A90 001869F0 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 80189A94 001869F4 7D 89 03 A6 */ mtctr r12 -/* 80189A98 001869F8 4E 80 04 21 */ bctrl -/* 80189A9C 001869FC C0 22 A3 18 */ lfs f1, lbl_805AC038@sda21(r2) -/* 80189AA0 00186A00 7C 66 1B 78 */ mr r6, r3 -/* 80189AA4 00186A04 7F 83 E3 78 */ mr r3, r28 -/* 80189AA8 00186A08 7F A5 EB 78 */ mr r5, r29 -/* 80189AAC 00186A0C 38 81 0E DC */ addi r4, r1, 0xedc -/* 80189AB0 00186A10 38 E1 2A 20 */ addi r7, r1, 0x2a20 -/* 80189AB4 00186A14 39 00 00 01 */ li r8, 1 -/* 80189AB8 00186A18 4B FF 6D D5 */ bl "CollisionFailsafe__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCacheR13CPhysicsActorRC19CCollisionPrimitiveRCQ24rstl32reserved_vector<9TUniqueId,1024>fUi" -lbl_80189ABC: -/* 80189ABC 00186A1C 34 E1 0E F4 */ addic. r7, r1, 0xef4 -/* 80189AC0 00186A20 41 82 00 94 */ beq lbl_80189B54 -/* 80189AC4 00186A24 38 C7 00 04 */ addi r6, r7, 4 -/* 80189AC8 00186A28 38 60 00 00 */ li r3, 0 -/* 80189ACC 00186A2C 48 00 00 74 */ b lbl_80189B40 -lbl_80189AD0: -/* 80189AD0 00186A30 28 06 00 00 */ cmplwi r6, 0 -/* 80189AD4 00186A34 41 82 00 64 */ beq lbl_80189B38 -/* 80189AD8 00186A38 34 06 00 04 */ addic. r0, r6, 4 -/* 80189ADC 00186A3C 41 82 00 5C */ beq lbl_80189B38 -/* 80189AE0 00186A40 81 06 00 04 */ lwz r8, 4(r6) -/* 80189AE4 00186A44 38 80 00 00 */ li r4, 0 -/* 80189AE8 00186A48 2C 08 00 00 */ cmpwi r8, 0 -/* 80189AEC 00186A4C 40 81 00 44 */ ble lbl_80189B30 -/* 80189AF0 00186A50 2C 08 00 08 */ cmpwi r8, 8 -/* 80189AF4 00186A54 38 A8 FF F8 */ addi r5, r8, -8 -/* 80189AF8 00186A58 40 81 00 20 */ ble lbl_80189B18 -/* 80189AFC 00186A5C 38 05 00 07 */ addi r0, r5, 7 -/* 80189B00 00186A60 54 00 E8 FE */ srwi r0, r0, 3 -/* 80189B04 00186A64 7C 09 03 A6 */ mtctr r0 -/* 80189B08 00186A68 2C 05 00 00 */ cmpwi r5, 0 -/* 80189B0C 00186A6C 40 81 00 0C */ ble lbl_80189B18 -lbl_80189B10: -/* 80189B10 00186A70 38 84 00 08 */ addi r4, r4, 8 -/* 80189B14 00186A74 42 00 FF FC */ bdnz lbl_80189B10 -lbl_80189B18: -/* 80189B18 00186A78 7C 04 40 50 */ subf r0, r4, r8 -/* 80189B1C 00186A7C 7C 09 03 A6 */ mtctr r0 -/* 80189B20 00186A80 7C 04 40 00 */ cmpw r4, r8 -/* 80189B24 00186A84 40 80 00 0C */ bge lbl_80189B30 -lbl_80189B28: -/* 80189B28 00186A88 38 84 00 01 */ addi r4, r4, 1 -/* 80189B2C 00186A8C 42 00 FF FC */ bdnz lbl_80189B28 -lbl_80189B30: -/* 80189B30 00186A90 38 00 00 00 */ li r0, 0 -/* 80189B34 00186A94 90 06 00 04 */ stw r0, 4(r6) -lbl_80189B38: -/* 80189B38 00186A98 38 C6 09 0C */ addi r6, r6, 0x90c -/* 80189B3C 00186A9C 38 63 00 01 */ addi r3, r3, 1 -lbl_80189B40: -/* 80189B40 00186AA0 80 07 00 00 */ lwz r0, 0(r7) -/* 80189B44 00186AA4 7C 03 00 00 */ cmpw r3, r0 -/* 80189B48 00186AA8 41 80 FF 88 */ blt lbl_80189AD0 -/* 80189B4C 00186AAC 38 00 00 00 */ li r0, 0 -/* 80189B50 00186AB0 90 07 00 00 */ stw r0, 0(r7) -lbl_80189B54: -/* 80189B54 00186AB4 80 A1 2A 20 */ lwz r5, 0x2a20(r1) -/* 80189B58 00186AB8 38 60 00 00 */ li r3, 0 -/* 80189B5C 00186ABC 2C 05 00 00 */ cmpwi r5, 0 -/* 80189B60 00186AC0 40 81 00 40 */ ble lbl_80189BA0 -/* 80189B64 00186AC4 2C 05 00 08 */ cmpwi r5, 8 -/* 80189B68 00186AC8 38 85 FF F8 */ addi r4, r5, -8 -/* 80189B6C 00186ACC 40 81 00 20 */ ble lbl_80189B8C -/* 80189B70 00186AD0 38 04 00 07 */ addi r0, r4, 7 -/* 80189B74 00186AD4 54 00 E8 FE */ srwi r0, r0, 3 -/* 80189B78 00186AD8 7C 09 03 A6 */ mtctr r0 -/* 80189B7C 00186ADC 2C 04 00 00 */ cmpwi r4, 0 -/* 80189B80 00186AE0 40 81 00 0C */ ble lbl_80189B8C -lbl_80189B84: -/* 80189B84 00186AE4 38 63 00 08 */ addi r3, r3, 8 -/* 80189B88 00186AE8 42 00 FF FC */ bdnz lbl_80189B84 -lbl_80189B8C: -/* 80189B8C 00186AEC 7C 03 28 50 */ subf r0, r3, r5 -/* 80189B90 00186AF0 7C 09 03 A6 */ mtctr r0 -/* 80189B94 00186AF4 7C 03 28 00 */ cmpw r3, r5 -/* 80189B98 00186AF8 40 80 00 08 */ bge lbl_80189BA0 -lbl_80189B9C: -/* 80189B9C 00186AFC 42 00 00 00 */ bdnz lbl_80189B9C -lbl_80189BA0: -/* 80189BA0 00186B00 80 A1 32 24 */ lwz r5, 0x3224(r1) -/* 80189BA4 00186B04 38 60 00 00 */ li r3, 0 -/* 80189BA8 00186B08 90 61 2A 20 */ stw r3, 0x2a20(r1) -/* 80189BAC 00186B0C 2C 05 00 00 */ cmpwi r5, 0 -/* 80189BB0 00186B10 40 81 00 40 */ ble lbl_80189BF0 -/* 80189BB4 00186B14 2C 05 00 08 */ cmpwi r5, 8 -/* 80189BB8 00186B18 38 85 FF F8 */ addi r4, r5, -8 -/* 80189BBC 00186B1C 40 81 00 20 */ ble lbl_80189BDC -/* 80189BC0 00186B20 38 04 00 07 */ addi r0, r4, 7 -/* 80189BC4 00186B24 54 00 E8 FE */ srwi r0, r0, 3 -/* 80189BC8 00186B28 7C 09 03 A6 */ mtctr r0 -/* 80189BCC 00186B2C 2C 04 00 00 */ cmpwi r4, 0 -/* 80189BD0 00186B30 40 81 00 0C */ ble lbl_80189BDC -lbl_80189BD4: -/* 80189BD4 00186B34 38 63 00 08 */ addi r3, r3, 8 -/* 80189BD8 00186B38 42 00 FF FC */ bdnz lbl_80189BD4 -lbl_80189BDC: -/* 80189BDC 00186B3C 7C 03 28 50 */ subf r0, r3, r5 -/* 80189BE0 00186B40 7C 09 03 A6 */ mtctr r0 -/* 80189BE4 00186B44 7C 03 28 00 */ cmpw r3, r5 -/* 80189BE8 00186B48 40 80 00 08 */ bge lbl_80189BF0 -lbl_80189BEC: -/* 80189BEC 00186B4C 42 00 00 00 */ bdnz lbl_80189BEC -lbl_80189BF0: -/* 80189BF0 00186B50 38 00 00 00 */ li r0, 0 -/* 80189BF4 00186B54 90 01 32 24 */ stw r0, 0x3224(r1) -/* 80189BF8 00186B58 38 00 3E 68 */ li r0, 0x3e68 -/* 80189BFC 00186B5C 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 -/* 80189C00 00186B60 CB E1 3E 60 */ lfd f31, 0x3e60(r1) -/* 80189C04 00186B64 38 00 3E 58 */ li r0, 0x3e58 -/* 80189C08 00186B68 13 C1 00 0C */ psq_lx f30, r1, r0, 0, qr0 -/* 80189C0C 00186B6C CB C1 3E 50 */ lfd f30, 0x3e50(r1) -/* 80189C10 00186B70 38 00 3E 48 */ li r0, 0x3e48 -/* 80189C14 00186B74 13 A1 00 0C */ psq_lx f29, r1, r0, 0, qr0 -/* 80189C18 00186B78 CB A1 3E 40 */ lfd f29, 0x3e40(r1) -/* 80189C1C 00186B7C BB 61 3E 2C */ lmw r27, 0x3e2c(r1) -/* 80189C20 00186B80 80 01 3E 74 */ lwz r0, 0x3e74(r1) -/* 80189C24 00186B84 7C 08 03 A6 */ mtlr r0 -/* 80189C28 00186B88 38 21 3E 70 */ addi r1, r1, 0x3e70 -/* 80189C2C 00186B8C 4E 80 00 20 */ blr - -.global CheckFalling__15CGroundMovementFR13CPhysicsActorR13CStateManagerf -CheckFalling__15CGroundMovementFR13CPhysicsActorR13CStateManagerf: -/* 80189C30 00186B90 94 21 FF 70 */ stwu r1, -0x90(r1) -/* 80189C34 00186B94 7C 08 02 A6 */ mflr r0 -/* 80189C38 00186B98 90 01 00 94 */ stw r0, 0x94(r1) -/* 80189C3C 00186B9C BF 61 00 7C */ stmw r27, 0x7c(r1) -/* 80189C40 00186BA0 7C 7B 1B 78 */ mr r27, r3 -/* 80189C44 00186BA4 7C 9C 23 78 */ mr r28, r4 -/* 80189C48 00186BA8 38 61 00 54 */ addi r3, r1, 0x54 -/* 80189C4C 00186BAC 7F 64 DB 78 */ mr r4, r27 -/* 80189C50 00186BB0 3B A0 00 01 */ li r29, 1 -/* 80189C54 00186BB4 81 9B 00 00 */ lwz r12, 0(r27) -/* 80189C58 00186BB8 81 8C 00 40 */ lwz r12, 0x40(r12) -/* 80189C5C 00186BBC 7D 89 03 A6 */ mtctr r12 -/* 80189C60 00186BC0 4E 80 04 21 */ bctrl -/* 80189C64 00186BC4 3B E0 00 00 */ li r31, 0 -/* 80189C68 00186BC8 9B E1 00 6C */ stb r31, 0x6c(r1) -/* 80189C6C 00186BCC 80 7C 08 50 */ lwz r3, 0x850(r28) -/* 80189C70 00186BD0 83 C3 00 58 */ lwz r30, 0x58(r3) -/* 80189C74 00186BD4 48 00 00 40 */ b lbl_80189CB4 -lbl_80189C78: -/* 80189C78 00186BD8 7F 64 DB 78 */ mr r4, r27 -/* 80189C7C 00186BDC 38 61 00 38 */ addi r3, r1, 0x38 -/* 80189C80 00186BE0 81 9B 00 00 */ lwz r12, 0(r27) -/* 80189C84 00186BE4 81 8C 00 40 */ lwz r12, 0x40(r12) -/* 80189C88 00186BE8 7D 89 03 A6 */ mtctr r12 -/* 80189C8C 00186BEC 4E 80 04 21 */ bctrl -/* 80189C90 00186BF0 38 7E 00 6C */ addi r3, r30, 0x6c -/* 80189C94 00186BF4 38 81 00 38 */ addi r4, r1, 0x38 -/* 80189C98 00186BF8 48 1A DE ED */ bl DoBoundsOverlap__6CAABoxCFRC6CAABox -/* 80189C9C 00186BFC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80189CA0 00186C00 9B E1 00 50 */ stb r31, 0x50(r1) -/* 80189CA4 00186C04 41 82 00 0C */ beq lbl_80189CB0 -/* 80189CA8 00186C08 3B A0 00 00 */ li r29, 0 -/* 80189CAC 00186C0C 48 00 00 1C */ b lbl_80189CC8 -lbl_80189CB0: -/* 80189CB0 00186C10 83 DE 01 30 */ lwz r30, 0x130(r30) -lbl_80189CB4: -/* 80189CB4 00186C14 38 61 00 10 */ addi r3, r1, 0x10 -/* 80189CB8 00186C18 4B EB D0 55 */ bl GetAliveAreasEnd__6CWorldFv -/* 80189CBC 00186C1C 80 01 00 10 */ lwz r0, 0x10(r1) -/* 80189CC0 00186C20 7C 1E 00 40 */ cmplw r30, r0 -/* 80189CC4 00186C24 40 82 FF B4 */ bne lbl_80189C78 -lbl_80189CC8: -/* 80189CC8 00186C28 57 A0 06 3F */ clrlwi. r0, r29, 0x18 -/* 80189CCC 00186C2C 40 82 00 24 */ bne lbl_80189CF0 -/* 80189CD0 00186C30 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80189CD4 00186C34 7F 83 E3 78 */ mr r3, r28 -/* 80189CD8 00186C38 7F 64 DB 78 */ mr r4, r27 -/* 80189CDC 00186C3C 38 A1 00 0C */ addi r5, r1, 0xc -/* 80189CE0 00186C40 B0 01 00 0C */ sth r0, 0xc(r1) -/* 80189CE4 00186C44 38 C0 00 1A */ li r6, 0x1a -/* 80189CE8 00186C48 4B EB A1 E9 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -/* 80189CEC 00186C4C 48 00 00 94 */ b lbl_80189D80 -lbl_80189CF0: -/* 80189CF0 00186C50 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80189CF4 00186C54 7F 83 E3 78 */ mr r3, r28 -/* 80189CF8 00186C58 7F 64 DB 78 */ mr r4, r27 -/* 80189CFC 00186C5C 38 A1 00 08 */ addi r5, r1, 8 -/* 80189D00 00186C60 B0 01 00 08 */ sth r0, 8(r1) -/* 80189D04 00186C64 38 C0 00 17 */ li r6, 0x17 -/* 80189D08 00186C68 4B EB A1 C9 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -/* 80189D0C 00186C6C 38 61 00 20 */ addi r3, r1, 0x20 -/* 80189D10 00186C70 38 9B 01 44 */ addi r4, r27, 0x144 -/* 80189D14 00186C74 38 AD 8E A8 */ addi r5, r13, lbl_805A7A68@sda21 -/* 80189D18 00186C78 4B E9 17 6D */ bl __ml__FRC10CAxisAngleRCf -/* 80189D1C 00186C7C 7F 63 DB 78 */ mr r3, r27 -/* 80189D20 00186C80 38 81 00 20 */ addi r4, r1, 0x20 -/* 80189D24 00186C84 4B F9 0E D9 */ bl SetAngularVelocityWR__13CPhysicsActorFRC10CAxisAngle -/* 80189D28 00186C88 38 61 00 14 */ addi r3, r1, 0x14 -/* 80189D2C 00186C8C 38 9B 00 34 */ addi r4, r27, 0x34 -/* 80189D30 00186C90 38 BB 01 38 */ addi r5, r27, 0x138 -/* 80189D34 00186C94 48 18 8C F1 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f -/* 80189D38 00186C98 C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 80189D3C 00186C9C 7F 63 DB 78 */ mr r3, r27 -/* 80189D40 00186CA0 C0 41 00 14 */ lfs f2, 0x14(r1) -/* 80189D44 00186CA4 38 81 00 2C */ addi r4, r1, 0x2c -/* 80189D48 00186CA8 C0 21 00 18 */ lfs f1, 0x18(r1) -/* 80189D4C 00186CAC D0 01 00 34 */ stfs f0, 0x34(r1) -/* 80189D50 00186CB0 C0 02 A3 18 */ lfs f0, lbl_805AC038@sda21(r2) -/* 80189D54 00186CB4 D0 41 00 2C */ stfs f2, 0x2c(r1) -/* 80189D58 00186CB8 D0 21 00 30 */ stfs f1, 0x30(r1) -/* 80189D5C 00186CBC D0 01 00 34 */ stfs f0, 0x34(r1) -/* 80189D60 00186CC0 4B F9 0F B9 */ bl SetVelocityOR__13CPhysicsActorFRC9CVector3f -/* 80189D64 00186CC4 3C 60 80 5A */ lis r3, skZero3f@ha -/* 80189D68 00186CC8 C4 03 66 A0 */ lfsu f0, skZero3f@l(r3) -/* 80189D6C 00186CCC D0 1B 01 50 */ stfs f0, 0x150(r27) -/* 80189D70 00186CD0 C0 03 00 04 */ lfs f0, 4(r3) -/* 80189D74 00186CD4 D0 1B 01 54 */ stfs f0, 0x154(r27) -/* 80189D78 00186CD8 C0 03 00 08 */ lfs f0, 8(r3) -/* 80189D7C 00186CDC D0 1B 01 58 */ stfs f0, 0x158(r27) -lbl_80189D80: -/* 80189D80 00186CE0 BB 61 00 7C */ lmw r27, 0x7c(r1) -/* 80189D84 00186CE4 80 01 00 94 */ lwz r0, 0x94(r1) -/* 80189D88 00186CE8 7C 08 03 A6 */ mtlr r0 -/* 80189D8C 00186CEC 38 21 00 90 */ addi r1, r1, 0x90 -/* 80189D90 00186CF0 4E 80 00 20 */ blr - -.global __dt__13CNewIntroBossFv -__dt__13CNewIntroBossFv: -/* 80189D94 00186CF4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80189D98 00186CF8 7C 08 02 A6 */ mflr r0 -/* 80189D9C 00186CFC 90 01 00 14 */ stw r0, 0x14(r1) -/* 80189DA0 00186D00 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80189DA4 00186D04 7C 9F 23 78 */ mr r31, r4 -/* 80189DA8 00186D08 93 C1 00 08 */ stw r30, 8(r1) -/* 80189DAC 00186D0C 7C 7E 1B 79 */ or. r30, r3, r3 -/* 80189DB0 00186D10 41 82 00 8C */ beq lbl_80189E3C -/* 80189DB4 00186D14 3C 60 80 3E */ lis r3, lbl_803E4018@ha -/* 80189DB8 00186D18 34 1E 05 EC */ addic. r0, r30, 0x5ec -/* 80189DBC 00186D1C 38 03 40 18 */ addi r0, r3, lbl_803E4018@l -/* 80189DC0 00186D20 90 1E 00 00 */ stw r0, 0(r30) -/* 80189DC4 00186D24 41 82 00 10 */ beq lbl_80189DD4 -/* 80189DC8 00186D28 80 7E 05 EC */ lwz r3, 0x5ec(r30) -/* 80189DCC 00186D2C 38 80 00 01 */ li r4, 1 -/* 80189DD0 00186D30 48 01 DB 0D */ bl sub_801a78dc -lbl_80189DD4: -/* 80189DD4 00186D34 34 1E 05 DC */ addic. r0, r30, 0x5dc -/* 80189DD8 00186D38 41 82 00 0C */ beq lbl_80189DE4 -/* 80189DDC 00186D3C 38 7E 05 DC */ addi r3, r30, 0x5dc -/* 80189DE0 00186D40 48 1B 3D 01 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -lbl_80189DE4: -/* 80189DE4 00186D44 34 1E 05 AC */ addic. r0, r30, 0x5ac -/* 80189DE8 00186D48 41 82 00 20 */ beq lbl_80189E08 -/* 80189DEC 00186D4C 34 1E 05 AC */ addic. r0, r30, 0x5ac -/* 80189DF0 00186D50 41 82 00 18 */ beq lbl_80189E08 -/* 80189DF4 00186D54 34 1E 05 AC */ addic. r0, r30, 0x5ac -/* 80189DF8 00186D58 41 82 00 10 */ beq lbl_80189E08 -/* 80189DFC 00186D5C 38 7E 05 AC */ addi r3, r30, 0x5ac -/* 80189E00 00186D60 38 80 00 00 */ li r4, 0 -/* 80189E04 00186D64 48 1B 70 3D */ bl __dt__6CTokenFv -lbl_80189E08: -/* 80189E08 00186D68 34 1E 05 74 */ addic. r0, r30, 0x574 -/* 80189E0C 00186D6C 41 82 00 14 */ beq lbl_80189E20 -/* 80189E10 00186D70 34 1E 05 98 */ addic. r0, r30, 0x598 -/* 80189E14 00186D74 41 82 00 0C */ beq lbl_80189E20 -/* 80189E18 00186D78 38 00 00 00 */ li r0, 0 -/* 80189E1C 00186D7C 98 1E 05 A4 */ stb r0, 0x5a4(r30) -lbl_80189E20: -/* 80189E20 00186D80 7F C3 F3 78 */ mr r3, r30 -/* 80189E24 00186D84 38 80 00 00 */ li r4, 0 -/* 80189E28 00186D88 4B EE D7 49 */ bl __dt__10CPatternedFv -/* 80189E2C 00186D8C 7F E0 07 35 */ extsh. r0, r31 -/* 80189E30 00186D90 40 81 00 0C */ ble lbl_80189E3C -/* 80189E34 00186D94 7F C3 F3 78 */ mr r3, r30 -/* 80189E38 00186D98 48 18 BA F9 */ bl Free__7CMemoryFPCv -lbl_80189E3C: -/* 80189E3C 00186D9C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80189E40 00186DA0 7F C3 F3 78 */ mr r3, r30 -/* 80189E44 00186DA4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80189E48 00186DA8 83 C1 00 08 */ lwz r30, 8(r1) -/* 80189E4C 00186DAC 7C 08 03 A6 */ mtlr r0 -/* 80189E50 00186DB0 38 21 00 10 */ addi r1, r1, 0x10 -/* 80189E54 00186DB4 4E 80 00 20 */ blr - -.global StopRumble__13CNewIntroBossFR13CStateManager -StopRumble__13CNewIntroBossFR13CStateManager: -/* 80189E58 00186DB8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80189E5C 00186DBC 7C 08 02 A6 */ mflr r0 -/* 80189E60 00186DC0 90 01 00 14 */ stw r0, 0x14(r1) -/* 80189E64 00186DC4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80189E68 00186DC8 7C 7F 1B 78 */ mr r31, r3 -/* 80189E6C 00186DCC A8 03 06 74 */ lha r0, 0x674(r3) -/* 80189E70 00186DD0 2C 00 FF FF */ cmpwi r0, -1 -/* 80189E74 00186DD4 41 82 00 18 */ beq lbl_80189E8C -/* 80189E78 00186DD8 80 64 08 8C */ lwz r3, 0x88c(r4) -/* 80189E7C 00186DDC 7C 04 03 78 */ mr r4, r0 -/* 80189E80 00186DE0 48 0A 42 95 */ bl StopRumble__14CRumbleManagerFs -/* 80189E84 00186DE4 38 00 FF FF */ li r0, -1 -/* 80189E88 00186DE8 B0 1F 06 74 */ sth r0, 0x674(r31) -lbl_80189E8C: -/* 80189E8C 00186DEC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80189E90 00186DF0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80189E94 00186DF4 7C 08 03 A6 */ mtlr r0 -/* 80189E98 00186DF8 38 21 00 10 */ addi r1, r1, 0x10 -/* 80189E9C 00186DFC 4E 80 00 20 */ blr - -.global DeleteBeam__13CNewIntroBossFR13CStateManager -DeleteBeam__13CNewIntroBossFR13CStateManager: -/* 80189EA0 00186E00 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80189EA4 00186E04 7C 08 02 A6 */ mflr r0 -/* 80189EA8 00186E08 90 01 00 24 */ stw r0, 0x24(r1) -/* 80189EAC 00186E0C 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80189EB0 00186E10 7C 9F 23 78 */ mr r31, r4 -/* 80189EB4 00186E14 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80189EB8 00186E18 7C 7E 1B 78 */ mr r30, r3 -/* 80189EBC 00186E1C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80189EC0 00186E20 A0 63 05 D4 */ lhz r3, 0x5d4(r3) -/* 80189EC4 00186E24 7C 03 00 40 */ cmplw r3, r0 -/* 80189EC8 00186E28 41 82 00 20 */ beq lbl_80189EE8 -/* 80189ECC 00186E2C A0 1E 05 D4 */ lhz r0, 0x5d4(r30) -/* 80189ED0 00186E30 7F E3 FB 78 */ mr r3, r31 -/* 80189ED4 00186E34 38 81 00 10 */ addi r4, r1, 0x10 -/* 80189ED8 00186E38 B0 01 00 10 */ sth r0, 0x10(r1) -/* 80189EDC 00186E3C 4B EC 23 91 */ bl FreeScriptObject__13CStateManagerF9TUniqueId -/* 80189EE0 00186E40 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80189EE4 00186E44 B0 1E 05 D4 */ sth r0, 0x5d4(r30) -lbl_80189EE8: -/* 80189EE8 00186E48 A0 7E 05 D6 */ lhz r3, 0x5d6(r30) -/* 80189EEC 00186E4C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80189EF0 00186E50 7C 03 00 40 */ cmplw r3, r0 -/* 80189EF4 00186E54 41 82 00 20 */ beq lbl_80189F14 -/* 80189EF8 00186E58 A0 1E 05 D6 */ lhz r0, 0x5d6(r30) -/* 80189EFC 00186E5C 7F E3 FB 78 */ mr r3, r31 -/* 80189F00 00186E60 38 81 00 0C */ addi r4, r1, 0xc -/* 80189F04 00186E64 B0 01 00 0C */ sth r0, 0xc(r1) -/* 80189F08 00186E68 4B EC 23 65 */ bl FreeScriptObject__13CStateManagerF9TUniqueId -/* 80189F0C 00186E6C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80189F10 00186E70 B0 1E 05 D6 */ sth r0, 0x5d6(r30) -lbl_80189F14: -/* 80189F14 00186E74 A0 7E 05 D8 */ lhz r3, 0x5d8(r30) -/* 80189F18 00186E78 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80189F1C 00186E7C 7C 03 00 40 */ cmplw r3, r0 -/* 80189F20 00186E80 41 82 00 20 */ beq lbl_80189F40 -/* 80189F24 00186E84 A0 1E 05 D8 */ lhz r0, 0x5d8(r30) -/* 80189F28 00186E88 7F E3 FB 78 */ mr r3, r31 -/* 80189F2C 00186E8C 38 81 00 08 */ addi r4, r1, 8 -/* 80189F30 00186E90 B0 01 00 08 */ sth r0, 8(r1) -/* 80189F34 00186E94 4B EC 23 39 */ bl FreeScriptObject__13CStateManagerF9TUniqueId -/* 80189F38 00186E98 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 80189F3C 00186E9C B0 1E 05 D8 */ sth r0, 0x5d8(r30) -lbl_80189F40: -/* 80189F40 00186EA0 7F C3 F3 78 */ mr r3, r30 -/* 80189F44 00186EA4 7F E4 FB 78 */ mr r4, r31 -/* 80189F48 00186EA8 4B FF FF 11 */ bl StopRumble__13CNewIntroBossFR13CStateManager -/* 80189F4C 00186EAC 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80189F50 00186EB0 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80189F54 00186EB4 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 80189F58 00186EB8 7C 08 03 A6 */ mtlr r0 -/* 80189F5C 00186EBC 38 21 00 20 */ addi r1, r1, 0x20 -/* 80189F60 00186EC0 4E 80 00 20 */ blr - -.global Accept__13CNewIntroBossFR8IVisitor -Accept__13CNewIntroBossFR8IVisitor: -/* 80189F64 00186EC4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80189F68 00186EC8 7C 08 02 A6 */ mflr r0 -/* 80189F6C 00186ECC 90 01 00 14 */ stw r0, 0x14(r1) -/* 80189F70 00186ED0 7C 60 1B 78 */ mr r0, r3 -/* 80189F74 00186ED4 7C 83 23 78 */ mr r3, r4 -/* 80189F78 00186ED8 81 84 00 00 */ lwz r12, 0(r4) -/* 80189F7C 00186EDC 7C 04 03 78 */ mr r4, r0 -/* 80189F80 00186EE0 81 8C 00 4C */ lwz r12, 0x4c(r12) -/* 80189F84 00186EE4 7D 89 03 A6 */ mtctr r12 -/* 80189F88 00186EE8 4E 80 04 21 */ bctrl -/* 80189F8C 00186EEC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80189F90 00186EF0 7C 08 03 A6 */ mtlr r0 -/* 80189F94 00186EF4 38 21 00 10 */ addi r1, r1, 0x10 -/* 80189F98 00186EF8 4E 80 00 20 */ blr - -.global GetRenderBounds__13CNewIntroBossCFRC12CTransform4f -GetRenderBounds__13CNewIntroBossCFRC12CTransform4f: -/* 80189F9C 00186EFC 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 80189FA0 00186F00 7C 08 02 A6 */ mflr r0 -/* 80189FA4 00186F04 90 01 00 44 */ stw r0, 0x44(r1) -/* 80189FA8 00186F08 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 80189FAC 00186F0C 7C 9F 23 78 */ mr r31, r4 -/* 80189FB0 00186F10 93 C1 00 38 */ stw r30, 0x38(r1) -/* 80189FB4 00186F14 7C 7E 1B 78 */ mr r30, r3 -/* 80189FB8 00186F18 38 61 00 20 */ addi r3, r1, 0x20 -/* 80189FBC 00186F1C 80 84 00 64 */ lwz r4, 0x64(r4) -/* 80189FC0 00186F20 4B F8 B6 05 */ bl GetBounds__10CModelDataCFv -/* 80189FC4 00186F24 C0 62 A3 88 */ lfs f3, lbl_805AC0A8@sda21(r2) -/* 80189FC8 00186F28 7F C3 F3 78 */ mr r3, r30 -/* 80189FCC 00186F2C C0 22 A3 8C */ lfs f1, lbl_805AC0AC@sda21(r2) -/* 80189FD0 00186F30 38 81 00 08 */ addi r4, r1, 8 -/* 80189FD4 00186F34 C0 41 00 28 */ lfs f2, 0x28(r1) -/* 80189FD8 00186F38 38 BF 00 34 */ addi r5, r31, 0x34 -/* 80189FDC 00186F3C C0 01 00 34 */ lfs f0, 0x34(r1) -/* 80189FE0 00186F40 D0 61 00 08 */ stfs f3, 8(r1) -/* 80189FE4 00186F44 D0 61 00 0C */ stfs f3, 0xc(r1) -/* 80189FE8 00186F48 D0 41 00 10 */ stfs f2, 0x10(r1) -/* 80189FEC 00186F4C D0 21 00 14 */ stfs f1, 0x14(r1) -/* 80189FF0 00186F50 D0 21 00 18 */ stfs f1, 0x18(r1) -/* 80189FF4 00186F54 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 80189FF8 00186F58 48 1A D9 05 */ bl GetTransformedAABox__6CAABoxCFRC12CTransform4f -/* 80189FFC 00186F5C 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8018A000 00186F60 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 8018A004 00186F64 83 C1 00 38 */ lwz r30, 0x38(r1) -/* 8018A008 00186F68 7C 08 03 A6 */ mtlr r0 -/* 8018A00C 00186F6C 38 21 00 40 */ addi r1, r1, 0x40 -/* 8018A010 00186F70 4E 80 00 20 */ blr - -.global AddToRenderer__13CNewIntroBossCFRC14CFrustumPlanesRC13CStateManager -AddToRenderer__13CNewIntroBossCFRC14CFrustumPlanesRC13CStateManager: -/* 8018A014 00186F74 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8018A018 00186F78 7C 08 02 A6 */ mflr r0 -/* 8018A01C 00186F7C 7C A4 2B 78 */ mr r4, r5 -/* 8018A020 00186F80 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018A024 00186F84 4B EC A9 A9 */ bl EnsureRendered__6CActorCFRC13CStateManager -/* 8018A028 00186F88 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8018A02C 00186F8C 7C 08 03 A6 */ mtlr r0 -/* 8018A030 00186F90 38 21 00 10 */ addi r1, r1, 0x10 -/* 8018A034 00186F94 4E 80 00 20 */ blr - -.global OnScanStateChange__13CNewIntroBossFQ26CActor10EScanStateR13CStateManager -OnScanStateChange__13CNewIntroBossFQ26CActor10EScanStateR13CStateManager: -/* 8018A038 00186F98 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8018A03C 00186F9C 7C 08 02 A6 */ mflr r0 -/* 8018A040 00186FA0 90 01 00 34 */ stw r0, 0x34(r1) -/* 8018A044 00186FA4 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8018A048 00186FA8 93 C1 00 28 */ stw r30, 0x28(r1) -/* 8018A04C 00186FAC 7C 9E 23 78 */ mr r30, r4 -/* 8018A050 00186FB0 93 A1 00 24 */ stw r29, 0x24(r1) -/* 8018A054 00186FB4 7C BD 2B 78 */ mr r29, r5 -/* 8018A058 00186FB8 93 81 00 20 */ stw r28, 0x20(r1) -/* 8018A05C 00186FBC 7C 7C 1B 78 */ mr r28, r3 -/* 8018A060 00186FC0 4B EC 95 11 */ bl OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager -/* 8018A064 00186FC4 2C 1E 00 02 */ cmpwi r30, 2 -/* 8018A068 00186FC8 40 82 00 7C */ bne lbl_8018A0E4 -/* 8018A06C 00186FCC A0 1C 06 00 */ lhz r0, 0x600(r28) -/* 8018A070 00186FD0 7F A3 EB 78 */ mr r3, r29 -/* 8018A074 00186FD4 38 81 00 0C */ addi r4, r1, 0xc -/* 8018A078 00186FD8 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8018A07C 00186FDC 4B EC 24 F9 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8018A080 00186FE0 7C 64 1B 78 */ mr r4, r3 -/* 8018A084 00186FE4 38 61 00 18 */ addi r3, r1, 0x18 -/* 8018A088 00186FE8 4B F2 52 C5 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" -/* 8018A08C 00186FEC 83 E3 00 04 */ lwz r31, 4(r3) -/* 8018A090 00186FF0 7F A3 EB 78 */ mr r3, r29 -/* 8018A094 00186FF4 A0 1C 06 02 */ lhz r0, 0x602(r28) -/* 8018A098 00186FF8 38 81 00 08 */ addi r4, r1, 8 -/* 8018A09C 00186FFC B0 01 00 08 */ sth r0, 8(r1) -/* 8018A0A0 00187000 4B EC 24 D5 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8018A0A4 00187004 7C 64 1B 78 */ mr r4, r3 -/* 8018A0A8 00187008 38 61 00 10 */ addi r3, r1, 0x10 -/* 8018A0AC 0018700C 4B F2 52 A1 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" -/* 8018A0B0 00187010 28 1F 00 00 */ cmplwi r31, 0 -/* 8018A0B4 00187014 83 C3 00 04 */ lwz r30, 4(r3) -/* 8018A0B8 00187018 41 82 00 14 */ beq lbl_8018A0CC -/* 8018A0BC 0018701C 7F E3 FB 78 */ mr r3, r31 -/* 8018A0C0 00187020 7F A5 EB 78 */ mr r5, r29 -/* 8018A0C4 00187024 38 80 00 29 */ li r4, 0x29 -/* 8018A0C8 00187028 4B EC A2 89 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager -lbl_8018A0CC: -/* 8018A0CC 0018702C 28 1E 00 00 */ cmplwi r30, 0 -/* 8018A0D0 00187030 41 82 00 14 */ beq lbl_8018A0E4 -/* 8018A0D4 00187034 7F C3 F3 78 */ mr r3, r30 -/* 8018A0D8 00187038 7F A5 EB 78 */ mr r5, r29 -/* 8018A0DC 0018703C 38 80 00 29 */ li r4, 0x29 -/* 8018A0E0 00187040 4B EC 9E A1 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager -lbl_8018A0E4: -/* 8018A0E4 00187044 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8018A0E8 00187048 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8018A0EC 0018704C 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 8018A0F0 00187050 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 8018A0F4 00187054 83 81 00 20 */ lwz r28, 0x20(r1) -/* 8018A0F8 00187058 7C 08 03 A6 */ mtlr r0 -/* 8018A0FC 0018705C 38 21 00 30 */ addi r1, r1, 0x30 -/* 8018A100 00187060 4E 80 00 20 */ blr - -.global AcceptScriptMsg__13CNewIntroBossF20EScriptObjectMessage9TUniqueIdR13CStateManager -AcceptScriptMsg__13CNewIntroBossF20EScriptObjectMessage9TUniqueIdR13CStateManager: -/* 8018A104 00187064 94 21 FC 00 */ stwu r1, -0x400(r1) -/* 8018A108 00187068 7C 08 02 A6 */ mflr r0 -/* 8018A10C 0018706C 90 01 04 04 */ stw r0, 0x404(r1) -/* 8018A110 00187070 BE E1 03 DC */ stmw r23, 0x3dc(r1) -/* 8018A114 00187074 7C 9D 23 78 */ mr r29, r4 -/* 8018A118 00187078 2C 1D 00 22 */ cmpwi r29, 0x22 -/* 8018A11C 0018707C 7C 7F 1B 78 */ mr r31, r3 -/* 8018A120 00187080 7C BC 2B 78 */ mr r28, r5 -/* 8018A124 00187084 7C DE 33 78 */ mr r30, r6 -/* 8018A128 00187088 41 82 0A E4 */ beq lbl_8018AC0C -/* 8018A12C 0018708C 40 80 00 10 */ bge lbl_8018A13C -/* 8018A130 00187090 2C 1D 00 21 */ cmpwi r29, 0x21 -/* 8018A134 00187094 40 80 00 14 */ bge lbl_8018A148 -/* 8018A138 00187098 48 00 0B 28 */ b lbl_8018AC60 -lbl_8018A13C: -/* 8018A13C 0018709C 2C 1D 00 29 */ cmpwi r29, 0x29 -/* 8018A140 001870A0 41 82 0A E4 */ beq lbl_8018AC24 -/* 8018A144 001870A4 48 00 0B 1C */ b lbl_8018AC60 -lbl_8018A148: -/* 8018A148 001870A8 7F C5 F3 78 */ mr r5, r30 -/* 8018A14C 001870AC 38 80 00 13 */ li r4, 0x13 -/* 8018A150 001870B0 4B EC 9E 31 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 8018A154 001870B4 7F E3 FB 78 */ mr r3, r31 -/* 8018A158 001870B8 7F C5 F3 78 */ mr r5, r30 -/* 8018A15C 001870BC 38 80 00 28 */ li r4, 0x28 -/* 8018A160 001870C0 4B EC 9E 21 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 8018A164 001870C4 7F E3 FB 78 */ mr r3, r31 -/* 8018A168 001870C8 7F C5 F3 78 */ mr r5, r30 -/* 8018A16C 001870CC 38 80 00 29 */ li r4, 0x29 -/* 8018A170 001870D0 4B EC 9E 11 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 8018A174 001870D4 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8018A178 001870D8 7F C4 F3 78 */ mr r4, r30 -/* 8018A17C 001870DC 4B FB 0B 75 */ bl Activate__15CBodyControllerFR13CStateManager -/* 8018A180 001870E0 A0 7F 05 D4 */ lhz r3, 0x5d4(r31) -/* 8018A184 001870E4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8018A188 001870E8 7C 03 00 40 */ cmplw r3, r0 -/* 8018A18C 001870EC 40 82 05 4C */ bne lbl_8018A6D8 -/* 8018A190 001870F0 C0 22 A3 90 */ lfs f1, lbl_805AC0B0@sda21(r2) -/* 8018A194 001870F4 38 61 00 A4 */ addi r3, r1, 0xa4 -/* 8018A198 001870F8 C0 42 A3 94 */ lfs f2, lbl_805AC0B4@sda21(r2) -/* 8018A19C 001870FC C0 62 A3 98 */ lfs f3, lbl_805AC0B8@sda21(r2) -/* 8018A1A0 00187100 C0 82 A3 9C */ lfs f4, lbl_805AC0BC@sda21(r2) -/* 8018A1A4 00187104 48 1D 92 49 */ bl __ct__6CColorFffff -/* 8018A1A8 00187108 48 1B FD E5 */ bl Yellow__6CColorFv -/* 8018A1AC 0018710C C0 82 A3 9C */ lfs f4, lbl_805AC0BC@sda21(r2) -/* 8018A1B0 00187110 38 00 00 03 */ li r0, 3 -/* 8018A1B4 00187114 81 1F 05 FC */ lwz r8, 0x5fc(r31) -/* 8018A1B8 00187118 38 80 00 32 */ li r4, 0x32 -/* 8018A1BC 0018711C 80 FF 05 F8 */ lwz r7, 0x5f8(r31) -/* 8018A1C0 00187120 80 DF 05 F4 */ lwz r6, 0x5f4(r31) -/* 8018A1C4 00187124 80 BF 05 F0 */ lwz r5, 0x5f0(r31) -/* 8018A1C8 00187128 C1 02 A3 A0 */ lfs f8, lbl_805AC0C0@sda21(r2) -/* 8018A1CC 0018712C C0 E2 A3 A4 */ lfs f7, lbl_805AC0C4@sda21(r2) -/* 8018A1D0 00187130 C0 C2 A3 A8 */ lfs f6, lbl_805AC0C8@sda21(r2) -/* 8018A1D4 00187134 C0 A2 A3 AC */ lfs f5, lbl_805AC0CC@sda21(r2) -/* 8018A1D8 00187138 C0 02 A3 B0 */ lfs f0, lbl_805AC0D0@sda21(r2) -/* 8018A1DC 0018713C 90 01 03 90 */ stw r0, 0x390(r1) -/* 8018A1E0 00187140 80 01 00 A4 */ lwz r0, 0xa4(r1) -/* 8018A1E4 00187144 90 A1 03 94 */ stw r5, 0x394(r1) -/* 8018A1E8 00187148 C0 22 A3 90 */ lfs f1, lbl_805AC0B0@sda21(r2) -/* 8018A1EC 0018714C 90 C1 03 98 */ stw r6, 0x398(r1) -/* 8018A1F0 00187150 C0 42 A3 94 */ lfs f2, lbl_805AC0B4@sda21(r2) -/* 8018A1F4 00187154 90 E1 03 9C */ stw r7, 0x39c(r1) -/* 8018A1F8 00187158 C0 62 A3 98 */ lfs f3, lbl_805AC0B8@sda21(r2) -/* 8018A1FC 0018715C 91 01 03 A0 */ stw r8, 0x3a0(r1) -/* 8018A200 00187160 90 81 03 A4 */ stw r4, 0x3a4(r1) -/* 8018A204 00187164 D0 81 03 A8 */ stfs f4, 0x3a8(r1) -/* 8018A208 00187168 D0 81 03 AC */ stfs f4, 0x3ac(r1) -/* 8018A20C 0018716C D1 01 03 B0 */ stfs f8, 0x3b0(r1) -/* 8018A210 00187170 D0 E1 03 B4 */ stfs f7, 0x3b4(r1) -/* 8018A214 00187174 D0 81 03 B8 */ stfs f4, 0x3b8(r1) -/* 8018A218 00187178 D0 C1 03 BC */ stfs f6, 0x3bc(r1) -/* 8018A21C 0018717C D0 A1 03 C0 */ stfs f5, 0x3c0(r1) -/* 8018A220 00187180 D0 01 03 C4 */ stfs f0, 0x3c4(r1) -/* 8018A224 00187184 80 83 00 00 */ lwz r4, 0(r3) -/* 8018A228 00187188 38 61 00 A0 */ addi r3, r1, 0xa0 -/* 8018A22C 0018718C 90 81 03 C8 */ stw r4, 0x3c8(r1) -/* 8018A230 00187190 90 01 03 CC */ stw r0, 0x3cc(r1) -/* 8018A234 00187194 48 1D 91 B9 */ bl __ct__6CColorFffff -/* 8018A238 00187198 48 1B FD 55 */ bl Yellow__6CColorFv -/* 8018A23C 0018719C C0 82 A3 9C */ lfs f4, lbl_805AC0BC@sda21(r2) -/* 8018A240 001871A0 38 00 00 03 */ li r0, 3 -/* 8018A244 001871A4 81 1F 05 FC */ lwz r8, 0x5fc(r31) -/* 8018A248 001871A8 38 80 00 32 */ li r4, 0x32 -/* 8018A24C 001871AC 80 FF 05 F8 */ lwz r7, 0x5f8(r31) -/* 8018A250 001871B0 80 DF 05 F4 */ lwz r6, 0x5f4(r31) -/* 8018A254 001871B4 80 BF 05 F0 */ lwz r5, 0x5f0(r31) -/* 8018A258 001871B8 C1 02 A3 B4 */ lfs f8, lbl_805AC0D4@sda21(r2) -/* 8018A25C 001871BC C0 E2 A3 A4 */ lfs f7, lbl_805AC0C4@sda21(r2) -/* 8018A260 001871C0 C0 C2 A3 A8 */ lfs f6, lbl_805AC0C8@sda21(r2) -/* 8018A264 001871C4 C0 A2 A3 AC */ lfs f5, lbl_805AC0CC@sda21(r2) -/* 8018A268 001871C8 C0 02 A3 B0 */ lfs f0, lbl_805AC0D0@sda21(r2) -/* 8018A26C 001871CC 90 01 03 4C */ stw r0, 0x34c(r1) -/* 8018A270 001871D0 80 01 00 A0 */ lwz r0, 0xa0(r1) -/* 8018A274 001871D4 90 A1 03 50 */ stw r5, 0x350(r1) -/* 8018A278 001871D8 C0 22 A3 90 */ lfs f1, lbl_805AC0B0@sda21(r2) -/* 8018A27C 001871DC 90 C1 03 54 */ stw r6, 0x354(r1) -/* 8018A280 001871E0 C0 42 A3 94 */ lfs f2, lbl_805AC0B4@sda21(r2) -/* 8018A284 001871E4 90 E1 03 58 */ stw r7, 0x358(r1) -/* 8018A288 001871E8 C0 62 A3 98 */ lfs f3, lbl_805AC0B8@sda21(r2) -/* 8018A28C 001871EC 91 01 03 5C */ stw r8, 0x35c(r1) -/* 8018A290 001871F0 90 81 03 60 */ stw r4, 0x360(r1) -/* 8018A294 001871F4 D0 81 03 64 */ stfs f4, 0x364(r1) -/* 8018A298 001871F8 D0 81 03 68 */ stfs f4, 0x368(r1) -/* 8018A29C 001871FC D1 01 03 6C */ stfs f8, 0x36c(r1) -/* 8018A2A0 00187200 D0 E1 03 70 */ stfs f7, 0x370(r1) -/* 8018A2A4 00187204 D0 81 03 74 */ stfs f4, 0x374(r1) -/* 8018A2A8 00187208 D0 C1 03 78 */ stfs f6, 0x378(r1) -/* 8018A2AC 0018720C D0 A1 03 7C */ stfs f5, 0x37c(r1) -/* 8018A2B0 00187210 D0 01 03 80 */ stfs f0, 0x380(r1) -/* 8018A2B4 00187214 80 83 00 00 */ lwz r4, 0(r3) -/* 8018A2B8 00187218 38 61 00 9C */ addi r3, r1, 0x9c -/* 8018A2BC 0018721C 90 81 03 84 */ stw r4, 0x384(r1) -/* 8018A2C0 00187220 90 01 03 88 */ stw r0, 0x388(r1) -/* 8018A2C4 00187224 48 1D 91 29 */ bl __ct__6CColorFffff -/* 8018A2C8 00187228 48 1B FC C5 */ bl Yellow__6CColorFv -/* 8018A2CC 0018722C 81 3F 05 FC */ lwz r9, 0x5fc(r31) -/* 8018A2D0 00187230 38 00 00 03 */ li r0, 3 -/* 8018A2D4 00187234 81 1F 05 F8 */ lwz r8, 0x5f8(r31) -/* 8018A2D8 00187238 38 A0 00 32 */ li r5, 0x32 -/* 8018A2DC 0018723C 80 FF 05 F4 */ lwz r7, 0x5f4(r31) -/* 8018A2E0 00187240 7F C4 F3 78 */ mr r4, r30 -/* 8018A2E4 00187244 80 DF 05 F0 */ lwz r6, 0x5f0(r31) -/* 8018A2E8 00187248 C0 A2 A3 9C */ lfs f5, lbl_805AC0BC@sda21(r2) -/* 8018A2EC 0018724C C0 82 A3 B4 */ lfs f4, lbl_805AC0D4@sda21(r2) -/* 8018A2F0 00187250 C0 62 A3 A4 */ lfs f3, lbl_805AC0C4@sda21(r2) -/* 8018A2F4 00187254 C0 42 A3 A8 */ lfs f2, lbl_805AC0C8@sda21(r2) -/* 8018A2F8 00187258 C0 22 A3 AC */ lfs f1, lbl_805AC0CC@sda21(r2) -/* 8018A2FC 0018725C C0 02 A3 B0 */ lfs f0, lbl_805AC0D0@sda21(r2) -/* 8018A300 00187260 90 01 03 08 */ stw r0, 0x308(r1) -/* 8018A304 00187264 80 01 00 9C */ lwz r0, 0x9c(r1) -/* 8018A308 00187268 90 C1 03 0C */ stw r6, 0x30c(r1) -/* 8018A30C 0018726C 90 E1 03 10 */ stw r7, 0x310(r1) -/* 8018A310 00187270 91 01 03 14 */ stw r8, 0x314(r1) -/* 8018A314 00187274 91 21 03 18 */ stw r9, 0x318(r1) -/* 8018A318 00187278 90 A1 03 1C */ stw r5, 0x31c(r1) -/* 8018A31C 0018727C D0 A1 03 20 */ stfs f5, 0x320(r1) -/* 8018A320 00187280 D0 A1 03 24 */ stfs f5, 0x324(r1) -/* 8018A324 00187284 D0 81 03 28 */ stfs f4, 0x328(r1) -/* 8018A328 00187288 D0 61 03 2C */ stfs f3, 0x32c(r1) -/* 8018A32C 0018728C D0 A1 03 30 */ stfs f5, 0x330(r1) -/* 8018A330 00187290 D0 41 03 34 */ stfs f2, 0x334(r1) -/* 8018A334 00187294 D0 21 03 38 */ stfs f1, 0x338(r1) -/* 8018A338 00187298 D0 01 03 3C */ stfs f0, 0x33c(r1) -/* 8018A33C 0018729C 80 A3 00 00 */ lwz r5, 0(r3) -/* 8018A340 001872A0 38 61 00 78 */ addi r3, r1, 0x78 -/* 8018A344 001872A4 90 A1 03 40 */ stw r5, 0x340(r1) -/* 8018A348 001872A8 90 01 03 44 */ stw r0, 0x344(r1) -/* 8018A34C 001872AC 4B EC 2D 91 */ bl AllocateUniqueId__13CStateManagerFv -/* 8018A350 001872B0 A0 01 00 78 */ lhz r0, 0x78(r1) -/* 8018A354 001872B4 7F C4 F3 78 */ mr r4, r30 -/* 8018A358 001872B8 38 61 00 74 */ addi r3, r1, 0x74 -/* 8018A35C 001872BC B0 1F 05 D4 */ sth r0, 0x5d4(r31) -/* 8018A360 001872C0 4B EC 2D 7D */ bl AllocateUniqueId__13CStateManagerFv -/* 8018A364 001872C4 A0 01 00 74 */ lhz r0, 0x74(r1) -/* 8018A368 001872C8 7F C4 F3 78 */ mr r4, r30 -/* 8018A36C 001872CC 38 61 00 70 */ addi r3, r1, 0x70 -/* 8018A370 001872D0 B0 1F 05 D6 */ sth r0, 0x5d6(r31) -/* 8018A374 001872D4 4B EC 2D 69 */ bl AllocateUniqueId__13CStateManagerFv -/* 8018A378 001872D8 A0 01 00 70 */ lhz r0, 0x70(r1) -/* 8018A37C 001872DC 3C 60 80 3D */ lis r3, lbl_803D07E4@ha -/* 8018A380 001872E0 38 63 07 E4 */ addi r3, r3, lbl_803D07E4@l -/* 8018A384 001872E4 3A E0 00 00 */ li r23, 0 -/* 8018A388 001872E8 B0 1F 05 D8 */ sth r0, 0x5d8(r31) -/* 8018A38C 001872EC 38 83 00 E7 */ addi r4, r3, 0xe7 -/* 8018A390 001872F0 38 60 05 50 */ li r3, 0x550 -/* 8018A394 001872F4 38 A0 00 00 */ li r5, 0 -/* 8018A398 001872F8 48 18 B4 D5 */ bl __nw__FUlPCcPCc -/* 8018A39C 001872FC 7C 7B 1B 79 */ or. r27, r3, r3 -/* 8018A3A0 00187300 41 82 00 C4 */ beq lbl_8018A464 -/* 8018A3A4 00187304 38 00 FF FF */ li r0, -1 -/* 8018A3A8 00187308 38 60 00 08 */ li r3, 8 -/* 8018A3AC 0018730C 90 61 01 D0 */ stw r3, 0x1d0(r1) -/* 8018A3B0 00187310 3C 60 80 3D */ lis r3, lbl_803D07E4@ha -/* 8018A3B4 00187314 38 83 07 E4 */ addi r4, r3, lbl_803D07E4@l -/* 8018A3B8 00187318 38 61 01 4C */ addi r3, r1, 0x14c -/* 8018A3BC 0018731C 90 01 01 D4 */ stw r0, 0x1d4(r1) -/* 8018A3C0 00187320 38 84 00 EE */ addi r4, r4, 0xee -/* 8018A3C4 00187324 90 01 01 D8 */ stw r0, 0x1d8(r1) -/* 8018A3C8 00187328 90 01 01 DC */ stw r0, 0x1dc(r1) -/* 8018A3CC 0018732C 90 01 01 E0 */ stw r0, 0x1e0(r1) -/* 8018A3D0 00187330 90 01 01 E4 */ stw r0, 0x1e4(r1) -/* 8018A3D4 00187334 90 01 01 E8 */ stw r0, 0x1e8(r1) -/* 8018A3D8 00187338 90 01 01 EC */ stw r0, 0x1ec(r1) -/* 8018A3DC 0018733C 90 01 01 F0 */ stw r0, 0x1f0(r1) -/* 8018A3E0 00187340 A0 1F 00 08 */ lhz r0, 8(r31) -/* 8018A3E4 00187344 B0 01 00 6C */ sth r0, 0x6c(r1) -/* 8018A3E8 00187348 80 BF 00 04 */ lwz r5, 4(r31) -/* 8018A3EC 0018734C B0 01 00 68 */ sth r0, 0x68(r1) -/* 8018A3F0 00187350 90 A1 00 98 */ stw r5, 0x98(r1) -/* 8018A3F4 00187354 A0 1F 05 D4 */ lhz r0, 0x5d4(r31) -/* 8018A3F8 00187358 90 A1 00 94 */ stw r5, 0x94(r1) -/* 8018A3FC 0018735C B0 01 00 64 */ sth r0, 0x64(r1) -/* 8018A400 00187360 4B E7 A8 B9 */ bl string_l__4rstlFPCc -/* 8018A404 00187364 38 01 00 64 */ addi r0, r1, 0x64 -/* 8018A408 00187368 3C 60 80 5A */ lis r3, skIdentity4f@ha -/* 8018A40C 0018736C 90 01 00 08 */ stw r0, 8(r1) -/* 8018A410 00187370 38 01 00 98 */ addi r0, r1, 0x98 -/* 8018A414 00187374 39 03 66 70 */ addi r8, r3, skIdentity4f@l -/* 8018A418 00187378 38 61 00 6C */ addi r3, r1, 0x6c -/* 8018A41C 0018737C 90 01 00 0C */ stw r0, 0xc(r1) -/* 8018A420 00187380 38 A1 01 D0 */ addi r5, r1, 0x1d0 -/* 8018A424 00187384 38 C0 00 01 */ li r6, 1 -/* 8018A428 00187388 3C 00 00 02 */ lis r0, 2 -/* 8018A42C 0018738C 90 61 00 10 */ stw r3, 0x10(r1) -/* 8018A430 00187390 7F 63 DB 78 */ mr r3, r27 -/* 8018A434 00187394 38 9F 05 AC */ addi r4, r31, 0x5ac -/* 8018A438 00187398 38 E1 03 8C */ addi r7, r1, 0x38c -/* 8018A43C 0018739C 90 A1 00 14 */ stw r5, 0x14(r1) -/* 8018A440 001873A0 38 A1 01 4C */ addi r5, r1, 0x14c -/* 8018A444 001873A4 39 5F 05 B8 */ addi r10, r31, 0x5b8 -/* 8018A448 001873A8 3A E0 00 01 */ li r23, 1 -/* 8018A44C 001873AC 90 C1 00 18 */ stw r6, 0x18(r1) -/* 8018A450 001873B0 38 C0 00 09 */ li r6, 9 -/* 8018A454 001873B4 39 20 00 21 */ li r9, 0x21 -/* 8018A458 001873B8 90 01 00 1C */ stw r0, 0x1c(r1) -/* 8018A45C 001873BC 4B FE E7 CD */ bl "__ct__17CPlasmaProjectileFRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC9CBeamInfoRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId9TUniqueIdbUi" -/* 8018A460 001873C0 7C 7B 1B 78 */ mr r27, r3 -lbl_8018A464: -/* 8018A464 001873C4 7E E0 07 75 */ extsb. r0, r23 -/* 8018A468 001873C8 7F 7A DB 78 */ mr r26, r27 -/* 8018A46C 001873CC 41 82 00 0C */ beq lbl_8018A478 -/* 8018A470 001873D0 38 61 01 4C */ addi r3, r1, 0x14c -/* 8018A474 001873D4 48 1B 36 6D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -lbl_8018A478: -/* 8018A478 001873D8 3C 60 80 3D */ lis r3, lbl_803D07E4@ha -/* 8018A47C 001873DC 3A E0 00 00 */ li r23, 0 -/* 8018A480 001873E0 38 83 07 E4 */ addi r4, r3, lbl_803D07E4@l -/* 8018A484 001873E4 38 60 05 50 */ li r3, 0x550 -/* 8018A488 001873E8 38 84 00 E7 */ addi r4, r4, 0xe7 -/* 8018A48C 001873EC 38 A0 00 00 */ li r5, 0 -/* 8018A490 001873F0 48 18 B3 DD */ bl __nw__FUlPCcPCc -/* 8018A494 001873F4 7C 7B 1B 79 */ or. r27, r3, r3 -/* 8018A498 001873F8 41 82 00 C4 */ beq lbl_8018A55C -/* 8018A49C 001873FC 38 00 FF FF */ li r0, -1 -/* 8018A4A0 00187400 38 60 00 08 */ li r3, 8 -/* 8018A4A4 00187404 90 61 01 AC */ stw r3, 0x1ac(r1) -/* 8018A4A8 00187408 3C 60 80 3D */ lis r3, lbl_803D07E4@ha -/* 8018A4AC 0018740C 38 83 07 E4 */ addi r4, r3, lbl_803D07E4@l -/* 8018A4B0 00187410 38 61 01 3C */ addi r3, r1, 0x13c -/* 8018A4B4 00187414 90 01 01 B0 */ stw r0, 0x1b0(r1) -/* 8018A4B8 00187418 38 84 00 FD */ addi r4, r4, 0xfd -/* 8018A4BC 0018741C 90 01 01 B4 */ stw r0, 0x1b4(r1) -/* 8018A4C0 00187420 90 01 01 B8 */ stw r0, 0x1b8(r1) -/* 8018A4C4 00187424 90 01 01 BC */ stw r0, 0x1bc(r1) -/* 8018A4C8 00187428 90 01 01 C0 */ stw r0, 0x1c0(r1) -/* 8018A4CC 0018742C 90 01 01 C4 */ stw r0, 0x1c4(r1) -/* 8018A4D0 00187430 90 01 01 C8 */ stw r0, 0x1c8(r1) -/* 8018A4D4 00187434 90 01 01 CC */ stw r0, 0x1cc(r1) -/* 8018A4D8 00187438 A0 1F 00 08 */ lhz r0, 8(r31) -/* 8018A4DC 0018743C B0 01 00 60 */ sth r0, 0x60(r1) -/* 8018A4E0 00187440 80 BF 00 04 */ lwz r5, 4(r31) -/* 8018A4E4 00187444 B0 01 00 5C */ sth r0, 0x5c(r1) -/* 8018A4E8 00187448 90 A1 00 90 */ stw r5, 0x90(r1) -/* 8018A4EC 0018744C A0 1F 05 D6 */ lhz r0, 0x5d6(r31) -/* 8018A4F0 00187450 90 A1 00 8C */ stw r5, 0x8c(r1) -/* 8018A4F4 00187454 B0 01 00 58 */ sth r0, 0x58(r1) -/* 8018A4F8 00187458 4B E7 A7 C1 */ bl string_l__4rstlFPCc -/* 8018A4FC 0018745C 38 01 00 58 */ addi r0, r1, 0x58 -/* 8018A500 00187460 3C 60 80 5A */ lis r3, skIdentity4f@ha -/* 8018A504 00187464 90 01 00 08 */ stw r0, 8(r1) -/* 8018A508 00187468 38 01 00 90 */ addi r0, r1, 0x90 -/* 8018A50C 0018746C 39 03 66 70 */ addi r8, r3, skIdentity4f@l -/* 8018A510 00187470 38 61 00 60 */ addi r3, r1, 0x60 -/* 8018A514 00187474 90 01 00 0C */ stw r0, 0xc(r1) -/* 8018A518 00187478 38 A1 01 AC */ addi r5, r1, 0x1ac -/* 8018A51C 0018747C 38 C0 00 01 */ li r6, 1 -/* 8018A520 00187480 3C 00 00 02 */ lis r0, 2 -/* 8018A524 00187484 90 61 00 10 */ stw r3, 0x10(r1) -/* 8018A528 00187488 7F 63 DB 78 */ mr r3, r27 -/* 8018A52C 0018748C 38 9F 05 AC */ addi r4, r31, 0x5ac -/* 8018A530 00187490 38 E1 03 48 */ addi r7, r1, 0x348 -/* 8018A534 00187494 90 A1 00 14 */ stw r5, 0x14(r1) -/* 8018A538 00187498 38 A1 01 3C */ addi r5, r1, 0x13c -/* 8018A53C 0018749C 39 5F 05 B8 */ addi r10, r31, 0x5b8 -/* 8018A540 001874A0 3A E0 00 01 */ li r23, 1 -/* 8018A544 001874A4 90 C1 00 18 */ stw r6, 0x18(r1) -/* 8018A548 001874A8 38 C0 00 09 */ li r6, 9 -/* 8018A54C 001874AC 39 20 00 21 */ li r9, 0x21 -/* 8018A550 001874B0 90 01 00 1C */ stw r0, 0x1c(r1) -/* 8018A554 001874B4 4B FE E6 D5 */ bl "__ct__17CPlasmaProjectileFRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC9CBeamInfoRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId9TUniqueIdbUi" -/* 8018A558 001874B8 7C 7B 1B 78 */ mr r27, r3 -lbl_8018A55C: -/* 8018A55C 001874BC 7E E0 07 75 */ extsb. r0, r23 -/* 8018A560 001874C0 7F 79 DB 78 */ mr r25, r27 -/* 8018A564 001874C4 41 82 00 0C */ beq lbl_8018A570 -/* 8018A568 001874C8 38 61 01 3C */ addi r3, r1, 0x13c -/* 8018A56C 001874CC 48 1B 35 75 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -lbl_8018A570: -/* 8018A570 001874D0 80 1F 05 B8 */ lwz r0, 0x5b8(r31) -/* 8018A574 001874D4 3C 60 80 3D */ lis r3, lbl_803D07E4@ha -/* 8018A578 001874D8 38 63 07 E4 */ addi r3, r3, lbl_803D07E4@l -/* 8018A57C 001874DC C0 02 A3 B8 */ lfs f0, lbl_805AC0D8@sda21(r2) -/* 8018A580 001874E0 90 01 01 6C */ stw r0, 0x16c(r1) -/* 8018A584 001874E4 38 83 00 E7 */ addi r4, r3, 0xe7 -/* 8018A588 001874E8 3A E0 00 00 */ li r23, 0 -/* 8018A58C 001874EC 38 60 05 50 */ li r3, 0x550 -/* 8018A590 001874F0 88 1F 05 BC */ lbz r0, 0x5bc(r31) -/* 8018A594 001874F4 38 A0 00 00 */ li r5, 0 -/* 8018A598 001874F8 98 01 01 70 */ stb r0, 0x170(r1) -/* 8018A59C 001874FC C0 3F 05 C0 */ lfs f1, 0x5c0(r31) -/* 8018A5A0 00187500 D0 21 01 74 */ stfs f1, 0x174(r1) -/* 8018A5A4 00187504 EC 00 00 72 */ fmuls f0, f0, f1 -/* 8018A5A8 00187508 C0 3F 05 C4 */ lfs f1, 0x5c4(r31) -/* 8018A5AC 0018750C D0 21 01 78 */ stfs f1, 0x178(r1) -/* 8018A5B0 00187510 C0 3F 05 C8 */ lfs f1, 0x5c8(r31) -/* 8018A5B4 00187514 D0 21 01 7C */ stfs f1, 0x17c(r1) -/* 8018A5B8 00187518 C0 3F 05 CC */ lfs f1, 0x5cc(r31) -/* 8018A5BC 0018751C D0 21 01 80 */ stfs f1, 0x180(r1) -/* 8018A5C0 00187520 88 1F 05 D0 */ lbz r0, 0x5d0(r31) -/* 8018A5C4 00187524 98 01 01 84 */ stb r0, 0x184(r1) -/* 8018A5C8 00187528 D0 01 01 74 */ stfs f0, 0x174(r1) -/* 8018A5CC 0018752C 48 18 B2 A1 */ bl __nw__FUlPCcPCc -/* 8018A5D0 00187530 7C 7B 1B 79 */ or. r27, r3, r3 -/* 8018A5D4 00187534 41 82 00 C4 */ beq lbl_8018A698 -/* 8018A5D8 00187538 38 00 FF FF */ li r0, -1 -/* 8018A5DC 0018753C 38 60 00 08 */ li r3, 8 -/* 8018A5E0 00187540 90 61 01 88 */ stw r3, 0x188(r1) -/* 8018A5E4 00187544 3C 60 80 3D */ lis r3, lbl_803D07E4@ha -/* 8018A5E8 00187548 38 83 07 E4 */ addi r4, r3, lbl_803D07E4@l -/* 8018A5EC 0018754C 38 61 01 2C */ addi r3, r1, 0x12c -/* 8018A5F0 00187550 90 01 01 8C */ stw r0, 0x18c(r1) -/* 8018A5F4 00187554 38 84 00 FD */ addi r4, r4, 0xfd -/* 8018A5F8 00187558 90 01 01 90 */ stw r0, 0x190(r1) -/* 8018A5FC 0018755C 90 01 01 94 */ stw r0, 0x194(r1) -/* 8018A600 00187560 90 01 01 98 */ stw r0, 0x198(r1) -/* 8018A604 00187564 90 01 01 9C */ stw r0, 0x19c(r1) -/* 8018A608 00187568 90 01 01 A0 */ stw r0, 0x1a0(r1) -/* 8018A60C 0018756C 90 01 01 A4 */ stw r0, 0x1a4(r1) -/* 8018A610 00187570 90 01 01 A8 */ stw r0, 0x1a8(r1) -/* 8018A614 00187574 A0 1F 00 08 */ lhz r0, 8(r31) -/* 8018A618 00187578 B0 01 00 54 */ sth r0, 0x54(r1) -/* 8018A61C 0018757C 80 BF 00 04 */ lwz r5, 4(r31) -/* 8018A620 00187580 B0 01 00 50 */ sth r0, 0x50(r1) -/* 8018A624 00187584 90 A1 00 88 */ stw r5, 0x88(r1) -/* 8018A628 00187588 A0 1F 05 D8 */ lhz r0, 0x5d8(r31) -/* 8018A62C 0018758C 90 A1 00 84 */ stw r5, 0x84(r1) -/* 8018A630 00187590 B0 01 00 4C */ sth r0, 0x4c(r1) -/* 8018A634 00187594 4B E7 A6 85 */ bl string_l__4rstlFPCc -/* 8018A638 00187598 38 01 00 4C */ addi r0, r1, 0x4c -/* 8018A63C 0018759C 3C 60 80 5A */ lis r3, skIdentity4f@ha -/* 8018A640 001875A0 90 01 00 08 */ stw r0, 8(r1) -/* 8018A644 001875A4 38 01 00 88 */ addi r0, r1, 0x88 -/* 8018A648 001875A8 39 03 66 70 */ addi r8, r3, skIdentity4f@l -/* 8018A64C 001875AC 38 61 00 54 */ addi r3, r1, 0x54 -/* 8018A650 001875B0 90 01 00 0C */ stw r0, 0xc(r1) -/* 8018A654 001875B4 38 A1 01 88 */ addi r5, r1, 0x188 -/* 8018A658 001875B8 38 C0 00 01 */ li r6, 1 -/* 8018A65C 001875BC 3C 00 00 02 */ lis r0, 2 -/* 8018A660 001875C0 90 61 00 10 */ stw r3, 0x10(r1) -/* 8018A664 001875C4 7F 63 DB 78 */ mr r3, r27 -/* 8018A668 001875C8 38 9F 05 AC */ addi r4, r31, 0x5ac -/* 8018A66C 001875CC 38 E1 03 04 */ addi r7, r1, 0x304 -/* 8018A670 001875D0 90 A1 00 14 */ stw r5, 0x14(r1) -/* 8018A674 001875D4 38 A1 01 2C */ addi r5, r1, 0x12c -/* 8018A678 001875D8 39 41 01 6C */ addi r10, r1, 0x16c -/* 8018A67C 001875DC 3A E0 00 01 */ li r23, 1 -/* 8018A680 001875E0 90 C1 00 18 */ stw r6, 0x18(r1) -/* 8018A684 001875E4 38 C0 00 09 */ li r6, 9 -/* 8018A688 001875E8 39 20 00 21 */ li r9, 0x21 -/* 8018A68C 001875EC 90 01 00 1C */ stw r0, 0x1c(r1) -/* 8018A690 001875F0 4B FE E5 99 */ bl "__ct__17CPlasmaProjectileFRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>11EWeaponTypeRC9CBeamInfoRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId9TUniqueIdbUi" -/* 8018A694 001875F4 7C 7B 1B 78 */ mr r27, r3 -lbl_8018A698: -/* 8018A698 001875F8 7E E0 07 75 */ extsb. r0, r23 -/* 8018A69C 001875FC 7F 77 DB 78 */ mr r23, r27 -/* 8018A6A0 00187600 41 82 00 0C */ beq lbl_8018A6AC -/* 8018A6A4 00187604 38 61 01 2C */ addi r3, r1, 0x12c -/* 8018A6A8 00187608 48 1B 34 39 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -lbl_8018A6AC: -/* 8018A6AC 0018760C 7F C3 F3 78 */ mr r3, r30 -/* 8018A6B0 00187610 7F 44 D3 78 */ mr r4, r26 -/* 8018A6B4 00187614 4B EC 24 61 */ bl AddObject__13CStateManagerFR7CEntity -/* 8018A6B8 00187618 7F C3 F3 78 */ mr r3, r30 -/* 8018A6BC 0018761C 7F 24 CB 78 */ mr r4, r25 -/* 8018A6C0 00187620 4B EC 24 55 */ bl AddObject__13CStateManagerFR7CEntity -/* 8018A6C4 00187624 7F C3 F3 78 */ mr r3, r30 -/* 8018A6C8 00187628 7E E4 BB 78 */ mr r4, r23 -/* 8018A6CC 0018762C 4B EC 24 49 */ bl AddObject__13CStateManagerFR7CEntity -/* 8018A6D0 00187630 A0 1F 05 D4 */ lhz r0, 0x5d4(r31) -/* 8018A6D4 00187634 B0 1F 06 76 */ sth r0, 0x676(r31) -lbl_8018A6D8: -/* 8018A6D8 00187638 38 00 00 00 */ li r0, 0 -/* 8018A6DC 0018763C 38 61 01 5C */ addi r3, r1, 0x15c -/* 8018A6E0 00187640 90 01 01 60 */ stw r0, 0x160(r1) -/* 8018A6E4 00187644 38 80 00 0F */ li r4, 0xf -/* 8018A6E8 00187648 90 01 01 64 */ stw r0, 0x164(r1) -/* 8018A6EC 0018764C 90 01 01 68 */ stw r0, 0x168(r1) -/* 8018A6F0 00187650 4B FC C0 C9 */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" -/* 8018A6F4 00187654 80 9F 00 64 */ lwz r4, 0x64(r31) -/* 8018A6F8 00187658 3C 60 80 3D */ lis r3, lbl_803D07D4@ha -/* 8018A6FC 0018765C 3A E3 07 D4 */ addi r23, r3, lbl_803D07D4@l -/* 8018A700 00187660 3B 01 02 64 */ addi r24, r1, 0x264 -/* 8018A704 00187664 83 64 00 10 */ lwz r27, 0x10(r4) -/* 8018A708 00187668 3B 21 02 EC */ addi r25, r1, 0x2ec -/* 8018A70C 0018766C 3B 40 00 00 */ li r26, 0 -lbl_8018A710: -/* 8018A710 00187670 80 97 00 00 */ lwz r4, 0(r23) -/* 8018A714 00187674 38 61 01 1C */ addi r3, r1, 0x11c -/* 8018A718 00187678 4B E7 A5 A1 */ bl string_l__4rstlFPCc -/* 8018A71C 0018767C 80 97 00 00 */ lwz r4, 0(r23) -/* 8018A720 00187680 38 61 01 0C */ addi r3, r1, 0x10c -/* 8018A724 00187684 4B E7 A5 95 */ bl string_l__4rstlFPCc -/* 8018A728 00187688 7F 64 DB 78 */ mr r4, r27 -/* 8018A72C 0018768C 38 61 00 30 */ addi r3, r1, 0x30 -/* 8018A730 00187690 38 A1 01 1C */ addi r5, r1, 0x11c -/* 8018A734 00187694 4B EA 41 05 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8018A738 00187698 88 01 00 30 */ lbz r0, 0x30(r1) -/* 8018A73C 0018769C 38 61 02 38 */ addi r3, r1, 0x238 -/* 8018A740 001876A0 C0 37 00 04 */ lfs f1, 4(r23) -/* 8018A744 001876A4 38 81 00 34 */ addi r4, r1, 0x34 -/* 8018A748 001876A8 98 01 00 34 */ stb r0, 0x34(r1) -/* 8018A74C 001876AC 38 A1 01 0C */ addi r5, r1, 0x10c -/* 8018A750 001876B0 C0 42 A3 BC */ lfs f2, lbl_805AC0DC@sda21(r2) -/* 8018A754 001876B4 48 01 E0 B9 */ bl "SphereCollision__26CJointCollisionDescriptionF6CSegIdfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" -/* 8018A758 001876B8 80 E1 02 38 */ lwz r7, 0x238(r1) -/* 8018A75C 001876BC 7F 23 CB 78 */ mr r3, r25 -/* 8018A760 001876C0 80 C1 02 3C */ lwz r6, 0x23c(r1) -/* 8018A764 001876C4 7F 04 C3 78 */ mr r4, r24 -/* 8018A768 001876C8 88 A1 02 40 */ lbz r5, 0x240(r1) -/* 8018A76C 001876CC 88 01 02 41 */ lbz r0, 0x241(r1) -/* 8018A770 001876D0 C0 E1 02 44 */ lfs f7, 0x244(r1) -/* 8018A774 001876D4 C0 C1 02 48 */ lfs f6, 0x248(r1) -/* 8018A778 001876D8 C0 A1 02 4C */ lfs f5, 0x24c(r1) -/* 8018A77C 001876DC C0 81 02 50 */ lfs f4, 0x250(r1) -/* 8018A780 001876E0 C0 61 02 54 */ lfs f3, 0x254(r1) -/* 8018A784 001876E4 C0 41 02 58 */ lfs f2, 0x258(r1) -/* 8018A788 001876E8 C0 21 02 5C */ lfs f1, 0x25c(r1) -/* 8018A78C 001876EC C0 01 02 60 */ lfs f0, 0x260(r1) -/* 8018A790 001876F0 90 E1 02 C0 */ stw r7, 0x2c0(r1) -/* 8018A794 001876F4 90 C1 02 C4 */ stw r6, 0x2c4(r1) -/* 8018A798 001876F8 98 A1 02 C8 */ stb r5, 0x2c8(r1) -/* 8018A79C 001876FC 98 01 02 C9 */ stb r0, 0x2c9(r1) -/* 8018A7A0 00187700 D0 E1 02 CC */ stfs f7, 0x2cc(r1) -/* 8018A7A4 00187704 D0 C1 02 D0 */ stfs f6, 0x2d0(r1) -/* 8018A7A8 00187708 D0 A1 02 D4 */ stfs f5, 0x2d4(r1) -/* 8018A7AC 0018770C D0 81 02 D8 */ stfs f4, 0x2d8(r1) -/* 8018A7B0 00187710 D0 61 02 DC */ stfs f3, 0x2dc(r1) -/* 8018A7B4 00187714 D0 41 02 E0 */ stfs f2, 0x2e0(r1) -/* 8018A7B8 00187718 D0 21 02 E4 */ stfs f1, 0x2e4(r1) -/* 8018A7BC 0018771C D0 01 02 E8 */ stfs f0, 0x2e8(r1) -/* 8018A7C0 00187720 48 1B 39 A1 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8018A7C4 00187724 A0 01 02 74 */ lhz r0, 0x274(r1) -/* 8018A7C8 00187728 28 18 00 00 */ cmplwi r24, 0 -/* 8018A7CC 0018772C C0 01 02 78 */ lfs f0, 0x278(r1) -/* 8018A7D0 00187730 B0 01 02 FC */ sth r0, 0x2fc(r1) -/* 8018A7D4 00187734 D0 01 03 00 */ stfs f0, 0x300(r1) -/* 8018A7D8 00187738 41 82 00 0C */ beq lbl_8018A7E4 -/* 8018A7DC 0018773C 7F 03 C3 78 */ mr r3, r24 -/* 8018A7E0 00187740 48 1B 33 01 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -lbl_8018A7E4: -/* 8018A7E4 00187744 38 61 01 0C */ addi r3, r1, 0x10c -/* 8018A7E8 00187748 48 1B 32 F9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 8018A7EC 0018774C 38 61 01 1C */ addi r3, r1, 0x11c -/* 8018A7F0 00187750 48 1B 32 F1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 8018A7F4 00187754 38 61 01 5C */ addi r3, r1, 0x15c -/* 8018A7F8 00187758 38 81 02 C0 */ addi r4, r1, 0x2c0 -/* 8018A7FC 0018775C 4B FC BA 35 */ bl sub_80156230 -/* 8018A800 00187760 28 19 00 00 */ cmplwi r25, 0 -/* 8018A804 00187764 41 82 00 0C */ beq lbl_8018A810 -/* 8018A808 00187768 7F 23 CB 78 */ mr r3, r25 -/* 8018A80C 0018776C 48 1B 32 D5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -lbl_8018A810: -/* 8018A810 00187770 3B 5A 00 01 */ addi r26, r26, 1 -/* 8018A814 00187774 3A F7 00 08 */ addi r23, r23, 8 -/* 8018A818 00187778 28 1A 00 02 */ cmplwi r26, 2 -/* 8018A81C 0018777C 41 80 FE F4 */ blt lbl_8018A710 -/* 8018A820 00187780 3C 60 80 3D */ lis r3, lbl_803D06D0@ha -/* 8018A824 00187784 3B 01 02 20 */ addi r24, r1, 0x220 -/* 8018A828 00187788 3A E3 06 D0 */ addi r23, r3, lbl_803D06D0@l -/* 8018A82C 0018778C 3B 21 02 A8 */ addi r25, r1, 0x2a8 -/* 8018A830 00187790 3B 40 00 00 */ li r26, 0 -lbl_8018A834: -/* 8018A834 00187794 80 97 00 00 */ lwz r4, 0(r23) -/* 8018A838 00187798 38 61 00 FC */ addi r3, r1, 0xfc -/* 8018A83C 0018779C 4B E7 A4 7D */ bl string_l__4rstlFPCc -/* 8018A840 001877A0 80 97 00 04 */ lwz r4, 4(r23) -/* 8018A844 001877A4 38 61 00 EC */ addi r3, r1, 0xec -/* 8018A848 001877A8 4B E7 A4 71 */ bl string_l__4rstlFPCc -/* 8018A84C 001877AC 80 97 00 00 */ lwz r4, 0(r23) -/* 8018A850 001877B0 38 61 00 D0 */ addi r3, r1, 0xd0 -/* 8018A854 001877B4 4B E7 A4 65 */ bl string_l__4rstlFPCc -/* 8018A858 001877B8 C0 57 00 10 */ lfs f2, 0x10(r23) -/* 8018A85C 001877BC 7F 64 DB 78 */ mr r4, r27 -/* 8018A860 001877C0 C0 37 00 0C */ lfs f1, 0xc(r23) -/* 8018A864 001877C4 38 61 00 20 */ addi r3, r1, 0x20 -/* 8018A868 001877C8 C0 17 00 08 */ lfs f0, 8(r23) -/* 8018A86C 001877CC 38 A1 00 EC */ addi r5, r1, 0xec -/* 8018A870 001877D0 D0 21 00 E4 */ stfs f1, 0xe4(r1) -/* 8018A874 001877D4 D0 01 00 E0 */ stfs f0, 0xe0(r1) -/* 8018A878 001877D8 D0 41 00 E8 */ stfs f2, 0xe8(r1) -/* 8018A87C 001877DC 4B EA 3F BD */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8018A880 001877E0 88 01 00 20 */ lbz r0, 0x20(r1) -/* 8018A884 001877E4 7F 64 DB 78 */ mr r4, r27 -/* 8018A888 001877E8 38 61 00 28 */ addi r3, r1, 0x28 -/* 8018A88C 001877EC 38 A1 00 FC */ addi r5, r1, 0xfc -/* 8018A890 001877F0 98 01 00 24 */ stb r0, 0x24(r1) -/* 8018A894 001877F4 4B EA 3F A5 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8018A898 001877F8 88 01 00 28 */ lbz r0, 0x28(r1) -/* 8018A89C 001877FC 38 61 01 F4 */ addi r3, r1, 0x1f4 -/* 8018A8A0 00187800 C0 22 A3 BC */ lfs f1, lbl_805AC0DC@sda21(r2) -/* 8018A8A4 00187804 38 81 00 2C */ addi r4, r1, 0x2c -/* 8018A8A8 00187808 98 01 00 2C */ stb r0, 0x2c(r1) -/* 8018A8AC 0018780C 38 A1 00 24 */ addi r5, r1, 0x24 -/* 8018A8B0 00187810 38 C1 00 E0 */ addi r6, r1, 0xe0 -/* 8018A8B4 00187814 39 01 00 D0 */ addi r8, r1, 0xd0 -/* 8018A8B8 00187818 38 E0 00 01 */ li r7, 1 -/* 8018A8BC 0018781C 48 01 DD 19 */ bl "OBBAutoSizeCollision__26CJointCollisionDescriptionF6CSegId6CSegIdRC9CVector3fQ226CJointCollisionDescription16EOrientationTypeRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" -/* 8018A8C0 00187820 80 E1 01 F4 */ lwz r7, 0x1f4(r1) -/* 8018A8C4 00187824 7F 23 CB 78 */ mr r3, r25 -/* 8018A8C8 00187828 80 C1 01 F8 */ lwz r6, 0x1f8(r1) -/* 8018A8CC 0018782C 7F 04 C3 78 */ mr r4, r24 -/* 8018A8D0 00187830 88 A1 01 FC */ lbz r5, 0x1fc(r1) -/* 8018A8D4 00187834 88 01 01 FD */ lbz r0, 0x1fd(r1) -/* 8018A8D8 00187838 C0 E1 02 00 */ lfs f7, 0x200(r1) -/* 8018A8DC 0018783C C0 C1 02 04 */ lfs f6, 0x204(r1) -/* 8018A8E0 00187840 C0 A1 02 08 */ lfs f5, 0x208(r1) -/* 8018A8E4 00187844 C0 81 02 0C */ lfs f4, 0x20c(r1) -/* 8018A8E8 00187848 C0 61 02 10 */ lfs f3, 0x210(r1) -/* 8018A8EC 0018784C C0 41 02 14 */ lfs f2, 0x214(r1) -/* 8018A8F0 00187850 C0 21 02 18 */ lfs f1, 0x218(r1) -/* 8018A8F4 00187854 C0 01 02 1C */ lfs f0, 0x21c(r1) -/* 8018A8F8 00187858 90 E1 02 7C */ stw r7, 0x27c(r1) -/* 8018A8FC 0018785C 90 C1 02 80 */ stw r6, 0x280(r1) -/* 8018A900 00187860 98 A1 02 84 */ stb r5, 0x284(r1) -/* 8018A904 00187864 98 01 02 85 */ stb r0, 0x285(r1) -/* 8018A908 00187868 D0 E1 02 88 */ stfs f7, 0x288(r1) -/* 8018A90C 0018786C D0 C1 02 8C */ stfs f6, 0x28c(r1) -/* 8018A910 00187870 D0 A1 02 90 */ stfs f5, 0x290(r1) -/* 8018A914 00187874 D0 81 02 94 */ stfs f4, 0x294(r1) -/* 8018A918 00187878 D0 61 02 98 */ stfs f3, 0x298(r1) -/* 8018A91C 0018787C D0 41 02 9C */ stfs f2, 0x29c(r1) -/* 8018A920 00187880 D0 21 02 A0 */ stfs f1, 0x2a0(r1) -/* 8018A924 00187884 D0 01 02 A4 */ stfs f0, 0x2a4(r1) -/* 8018A928 00187888 48 1B 38 39 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8018A92C 0018788C A0 01 02 30 */ lhz r0, 0x230(r1) -/* 8018A930 00187890 28 18 00 00 */ cmplwi r24, 0 -/* 8018A934 00187894 C0 01 02 34 */ lfs f0, 0x234(r1) -/* 8018A938 00187898 B0 01 02 B8 */ sth r0, 0x2b8(r1) -/* 8018A93C 0018789C D0 01 02 BC */ stfs f0, 0x2bc(r1) -/* 8018A940 001878A0 41 82 00 0C */ beq lbl_8018A94C -/* 8018A944 001878A4 7F 03 C3 78 */ mr r3, r24 -/* 8018A948 001878A8 48 1B 31 99 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -lbl_8018A94C: -/* 8018A94C 001878AC 38 61 00 D0 */ addi r3, r1, 0xd0 -/* 8018A950 001878B0 48 1B 31 91 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 8018A954 001878B4 38 61 00 EC */ addi r3, r1, 0xec -/* 8018A958 001878B8 48 1B 31 89 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 8018A95C 001878BC 38 61 00 FC */ addi r3, r1, 0xfc -/* 8018A960 001878C0 48 1B 31 81 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 8018A964 001878C4 38 61 01 5C */ addi r3, r1, 0x15c -/* 8018A968 001878C8 38 81 02 7C */ addi r4, r1, 0x27c -/* 8018A96C 001878CC 4B FC B8 C5 */ bl sub_80156230 -/* 8018A970 001878D0 28 19 00 00 */ cmplwi r25, 0 -/* 8018A974 001878D4 41 82 00 0C */ beq lbl_8018A980 -/* 8018A978 001878D8 7F 23 CB 78 */ mr r3, r25 -/* 8018A97C 001878DC 48 1B 31 65 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -lbl_8018A980: -/* 8018A980 001878E0 3B 5A 00 01 */ addi r26, r26, 1 -/* 8018A984 001878E4 3A F7 00 14 */ addi r23, r23, 0x14 -/* 8018A988 001878E8 28 1A 00 0D */ cmplwi r26, 0xd -/* 8018A98C 001878EC 41 80 FE A8 */ blt lbl_8018A834 -/* 8018A990 001878F0 3C 80 80 3D */ lis r4, lbl_803D07E4@ha -/* 8018A994 001878F4 38 60 00 18 */ li r3, 0x18 -/* 8018A998 001878F8 38 84 07 E4 */ addi r4, r4, lbl_803D07E4@l -/* 8018A99C 001878FC 38 A0 00 00 */ li r5, 0 -/* 8018A9A0 00187900 38 84 00 E7 */ addi r4, r4, 0xe7 -/* 8018A9A4 00187904 48 18 AE C9 */ bl __nw__FUlPCcPCc -/* 8018A9A8 00187908 7C 77 1B 79 */ or. r23, r3, r3 -/* 8018A9AC 0018790C 41 82 00 3C */ beq lbl_8018A9E8 -/* 8018A9B0 00187910 88 1F 00 30 */ lbz r0, 0x30(r31) -/* 8018A9B4 00187914 7F C4 F3 78 */ mr r4, r30 -/* 8018A9B8 00187918 81 3F 00 04 */ lwz r9, 4(r31) -/* 8018A9BC 0018791C 38 A1 00 48 */ addi r5, r1, 0x48 -/* 8018A9C0 00187920 54 08 CF FE */ rlwinm r8, r0, 0x19, 0x1f, 0x1f -/* 8018A9C4 00187924 38 C1 00 80 */ addi r6, r1, 0x80 -/* 8018A9C8 00187928 91 21 00 80 */ stw r9, 0x80(r1) -/* 8018A9CC 0018792C 38 E1 01 5C */ addi r7, r1, 0x15c -/* 8018A9D0 00187930 A0 1F 00 08 */ lhz r0, 8(r31) -/* 8018A9D4 00187934 91 21 00 7C */ stw r9, 0x7c(r1) -/* 8018A9D8 00187938 B0 01 00 44 */ sth r0, 0x44(r1) -/* 8018A9DC 0018793C B0 01 00 48 */ sth r0, 0x48(r1) -/* 8018A9E0 00187940 48 01 CF 51 */ bl "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b" -/* 8018A9E4 00187944 7C 77 1B 78 */ mr r23, r3 -lbl_8018A9E8: -/* 8018A9E8 00187948 80 7F 05 EC */ lwz r3, 0x5ec(r31) -/* 8018A9EC 0018794C 38 80 00 01 */ li r4, 1 -/* 8018A9F0 00187950 48 01 CE ED */ bl sub_801a78dc -/* 8018A9F4 00187954 92 FF 05 EC */ stw r23, 0x5ec(r31) -/* 8018A9F8 00187958 38 61 01 5C */ addi r3, r1, 0x15c -/* 8018A9FC 0018795C 38 80 FF FF */ li r4, -1 -/* 8018AA00 00187960 4B FC B9 2D */ bl sub_8015632c -/* 8018AA04 00187964 7F E3 FB 78 */ mr r3, r31 -/* 8018AA08 00187968 7F C4 F3 78 */ mr r4, r30 -/* 8018AA0C 0018796C 81 9F 00 00 */ lwz r12, 0(r31) -/* 8018AA10 00187970 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8018AA14 00187974 7D 89 03 A6 */ mtctr r12 -/* 8018AA18 00187978 4E 80 04 21 */ bctrl -/* 8018AA1C 0018797C C0 03 00 00 */ lfs f0, 0(r3) -/* 8018AA20 00187980 3C 60 80 3D */ lis r3, lbl_803D07D4@ha -/* 8018AA24 00187984 3B 63 07 D4 */ addi r27, r3, lbl_803D07D4@l -/* 8018AA28 00187988 3B 20 00 00 */ li r25, 0 -/* 8018AA2C 0018798C D0 1F 06 40 */ stfs f0, 0x640(r31) -/* 8018AA30 00187990 48 00 01 C8 */ b lbl_8018ABF8 -lbl_8018AA34: -/* 8018AA34 00187994 80 7F 05 EC */ lwz r3, 0x5ec(r31) -/* 8018AA38 00187998 7F 24 CB 78 */ mr r4, r25 -/* 8018AA3C 0018799C 48 01 C7 FD */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi -/* 8018AA40 001879A0 7C 77 1B 78 */ mr r23, r3 -/* 8018AA44 001879A4 7F C3 F3 78 */ mr r3, r30 -/* 8018AA48 001879A8 A0 17 00 3C */ lhz r0, 0x3c(r23) -/* 8018AA4C 001879AC 38 81 00 40 */ addi r4, r1, 0x40 -/* 8018AA50 001879B0 B0 01 00 3C */ sth r0, 0x3c(r1) -/* 8018AA54 001879B4 B0 01 00 40 */ sth r0, 0x40(r1) -/* 8018AA58 001879B8 4B EC 1B 1D */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8018AA5C 001879BC 7C 64 1B 78 */ mr r4, r3 -/* 8018AA60 001879C0 38 61 00 A8 */ addi r3, r1, 0xa8 -/* 8018AA64 001879C4 4B F2 48 E9 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" -/* 8018AA68 001879C8 83 43 00 04 */ lwz r26, 4(r3) -/* 8018AA6C 001879CC 38 61 00 C0 */ addi r3, r1, 0xc0 -/* 8018AA70 001879D0 80 9B 00 00 */ lwz r4, 0(r27) -/* 8018AA74 001879D4 4B E7 A2 45 */ bl string_l__4rstlFPCc -/* 8018AA78 001879D8 38 77 00 2C */ addi r3, r23, 0x2c -/* 8018AA7C 001879DC 38 81 00 C0 */ addi r4, r1, 0xc0 -/* 8018AA80 001879E0 4B EC 7B 61 */ bl "find__Q24rstl418red_black_tree,Q24rstl17rmemory_allocator>,Q24rstl83pair,Q24rstl17rmemory_allocator>,s>,0,Q24rstl103select1st,Q24rstl17rmemory_allocator>,s>>,Q24rstl81less,Q24rstl17rmemory_allocator>>,Q24rstl17rmemory_allocator>CFRCQ24rstl66basic_string,Q24rstl17rmemory_allocat" -/* 8018AA84 001879E4 7C 78 1B 78 */ mr r24, r3 -/* 8018AA88 001879E8 38 61 00 C0 */ addi r3, r1, 0xc0 -/* 8018AA8C 001879EC 48 1B 30 55 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 8018AA90 001879F0 57 00 06 3F */ clrlwi. r0, r24, 0x18 -/* 8018AA94 001879F4 41 82 00 8C */ beq lbl_8018AB20 -/* 8018AA98 001879F8 A0 17 00 3C */ lhz r0, 0x3c(r23) -/* 8018AA9C 001879FC 28 1A 00 00 */ cmplwi r26, 0 -/* 8018AAA0 00187A00 B0 1F 06 00 */ sth r0, 0x600(r31) -/* 8018AAA4 00187A04 41 82 01 50 */ beq lbl_8018ABF4 -/* 8018AAA8 00187A08 7F E3 FB 78 */ mr r3, r31 -/* 8018AAAC 00187A0C 7F C4 F3 78 */ mr r4, r30 -/* 8018AAB0 00187A10 81 9F 00 00 */ lwz r12, 0(r31) -/* 8018AAB4 00187A14 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8018AAB8 00187A18 7D 89 03 A6 */ mtctr r12 -/* 8018AABC 00187A1C 4E 80 04 21 */ bctrl -/* 8018AAC0 00187A20 7C 78 1B 78 */ mr r24, r3 -/* 8018AAC4 00187A24 7F 43 D3 78 */ mr r3, r26 -/* 8018AAC8 00187A28 81 9A 00 00 */ lwz r12, 0(r26) -/* 8018AACC 00187A2C 7F C4 F3 78 */ mr r4, r30 -/* 8018AAD0 00187A30 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8018AAD4 00187A34 7D 89 03 A6 */ mtctr r12 -/* 8018AAD8 00187A38 4E 80 04 21 */ bctrl -/* 8018AADC 00187A3C C0 18 00 00 */ lfs f0, 0(r24) -/* 8018AAE0 00187A40 D0 03 00 00 */ stfs f0, 0(r3) -/* 8018AAE4 00187A44 C0 18 00 04 */ lfs f0, 4(r24) -/* 8018AAE8 00187A48 D0 03 00 04 */ stfs f0, 4(r3) -/* 8018AAEC 00187A4C 7F E3 FB 78 */ mr r3, r31 -/* 8018AAF0 00187A50 81 9F 00 00 */ lwz r12, 0(r31) -/* 8018AAF4 00187A54 81 8C 00 38 */ lwz r12, 0x38(r12) -/* 8018AAF8 00187A58 7D 89 03 A6 */ mtctr r12 -/* 8018AAFC 00187A5C 4E 80 04 21 */ bctrl -/* 8018AB00 00187A60 7C 64 1B 78 */ mr r4, r3 -/* 8018AB04 00187A64 7F 43 D3 78 */ mr r3, r26 -/* 8018AB08 00187A68 48 01 E0 91 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability -/* 8018AB0C 00187A6C 7F 43 D3 78 */ mr r3, r26 -/* 8018AB10 00187A70 7F C5 F3 78 */ mr r5, r30 -/* 8018AB14 00187A74 38 80 00 29 */ li r4, 0x29 -/* 8018AB18 00187A78 4B EC 94 69 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 8018AB1C 00187A7C 48 00 00 D8 */ b lbl_8018ABF4 -lbl_8018AB20: -/* 8018AB20 00187A80 3C 80 80 3D */ lis r4, lbl_803D06D0@ha -/* 8018AB24 00187A84 38 61 00 B0 */ addi r3, r1, 0xb0 -/* 8018AB28 00187A88 38 84 06 D0 */ addi r4, r4, lbl_803D06D0@l -/* 8018AB2C 00187A8C 80 84 00 00 */ lwz r4, 0(r4) -/* 8018AB30 00187A90 4B E7 A1 89 */ bl string_l__4rstlFPCc -/* 8018AB34 00187A94 38 77 00 2C */ addi r3, r23, 0x2c -/* 8018AB38 00187A98 38 81 00 B0 */ addi r4, r1, 0xb0 -/* 8018AB3C 00187A9C 4B EC 7A A5 */ bl "find__Q24rstl418red_black_tree,Q24rstl17rmemory_allocator>,Q24rstl83pair,Q24rstl17rmemory_allocator>,s>,0,Q24rstl103select1st,Q24rstl17rmemory_allocator>,s>>,Q24rstl81less,Q24rstl17rmemory_allocator>>,Q24rstl17rmemory_allocator>CFRCQ24rstl66basic_string,Q24rstl17rmemory_allocat" -/* 8018AB40 00187AA0 7C 78 1B 78 */ mr r24, r3 -/* 8018AB44 00187AA4 38 61 00 B0 */ addi r3, r1, 0xb0 -/* 8018AB48 00187AA8 48 1B 2F 99 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 8018AB4C 00187AAC 57 00 06 3F */ clrlwi. r0, r24, 0x18 -/* 8018AB50 00187AB0 41 82 00 8C */ beq lbl_8018ABDC -/* 8018AB54 00187AB4 A0 17 00 3C */ lhz r0, 0x3c(r23) -/* 8018AB58 00187AB8 28 1A 00 00 */ cmplwi r26, 0 -/* 8018AB5C 00187ABC B0 1F 06 02 */ sth r0, 0x602(r31) -/* 8018AB60 00187AC0 41 82 00 94 */ beq lbl_8018ABF4 -/* 8018AB64 00187AC4 7F E3 FB 78 */ mr r3, r31 -/* 8018AB68 00187AC8 7F C4 F3 78 */ mr r4, r30 -/* 8018AB6C 00187ACC 81 9F 00 00 */ lwz r12, 0(r31) -/* 8018AB70 00187AD0 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8018AB74 00187AD4 7D 89 03 A6 */ mtctr r12 -/* 8018AB78 00187AD8 4E 80 04 21 */ bctrl -/* 8018AB7C 00187ADC 7C 78 1B 78 */ mr r24, r3 -/* 8018AB80 00187AE0 7F 43 D3 78 */ mr r3, r26 -/* 8018AB84 00187AE4 81 9A 00 00 */ lwz r12, 0(r26) -/* 8018AB88 00187AE8 7F C4 F3 78 */ mr r4, r30 -/* 8018AB8C 00187AEC 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8018AB90 00187AF0 7D 89 03 A6 */ mtctr r12 -/* 8018AB94 00187AF4 4E 80 04 21 */ bctrl -/* 8018AB98 00187AF8 C0 18 00 00 */ lfs f0, 0(r24) -/* 8018AB9C 00187AFC 3C 80 80 57 */ lis r4, lbl_8056D578@ha -/* 8018ABA0 00187B00 38 84 D5 78 */ addi r4, r4, lbl_8056D578@l -/* 8018ABA4 00187B04 D0 03 00 00 */ stfs f0, 0(r3) -/* 8018ABA8 00187B08 C0 18 00 04 */ lfs f0, 4(r24) -/* 8018ABAC 00187B0C D0 03 00 04 */ stfs f0, 4(r3) -/* 8018ABB0 00187B10 7F 43 D3 78 */ mr r3, r26 -/* 8018ABB4 00187B14 48 01 DF E5 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability -/* 8018ABB8 00187B18 7F 43 D3 78 */ mr r3, r26 -/* 8018ABBC 00187B1C 7F C5 F3 78 */ mr r5, r30 -/* 8018ABC0 00187B20 38 80 00 29 */ li r4, 0x29 -/* 8018ABC4 00187B24 4B EC 97 8D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager -/* 8018ABC8 00187B28 7F E3 FB 78 */ mr r3, r31 -/* 8018ABCC 00187B2C 7F 44 D3 78 */ mr r4, r26 -/* 8018ABD0 00187B30 7F C5 F3 78 */ mr r5, r30 -/* 8018ABD4 00187B34 4B EC 88 45 */ bl MoveScannableObjectInfoToActor__6CActorFP6CActorR13CStateManager -/* 8018ABD8 00187B38 48 00 00 1C */ b lbl_8018ABF4 -lbl_8018ABDC: -/* 8018ABDC 00187B3C 28 1A 00 00 */ cmplwi r26, 0 -/* 8018ABE0 00187B40 41 82 00 14 */ beq lbl_8018ABF4 -/* 8018ABE4 00187B44 7F 43 D3 78 */ mr r3, r26 -/* 8018ABE8 00187B48 7F C5 F3 78 */ mr r5, r30 -/* 8018ABEC 00187B4C 38 80 00 29 */ li r4, 0x29 -/* 8018ABF0 00187B50 4B EC 93 91 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager -lbl_8018ABF4: -/* 8018ABF4 00187B54 3B 39 00 01 */ addi r25, r25, 1 -lbl_8018ABF8: -/* 8018ABF8 00187B58 80 7F 05 EC */ lwz r3, 0x5ec(r31) -/* 8018ABFC 00187B5C 48 01 C6 4D */ bl GetNumCollisionActors__22CCollisionActorManagerCFv -/* 8018AC00 00187B60 7C 19 18 40 */ cmplw r25, r3 -/* 8018AC04 00187B64 41 80 FE 30 */ blt lbl_8018AA34 -/* 8018AC08 00187B68 48 00 00 58 */ b lbl_8018AC60 -lbl_8018AC0C: -/* 8018AC0C 00187B6C 7F C4 F3 78 */ mr r4, r30 -/* 8018AC10 00187B70 4B FF F2 91 */ bl DeleteBeam__13CNewIntroBossFR13CStateManager -/* 8018AC14 00187B74 80 7F 05 EC */ lwz r3, 0x5ec(r31) -/* 8018AC18 00187B78 7F C4 F3 78 */ mr r4, r30 -/* 8018AC1C 00187B7C 48 01 C7 A9 */ bl Destroy__22CCollisionActorManagerCFR13CStateManager -/* 8018AC20 00187B80 48 00 00 40 */ b lbl_8018AC60 -lbl_8018AC24: -/* 8018AC24 00187B84 A0 7C 00 00 */ lhz r3, 0(r28) -/* 8018AC28 00187B88 A0 1F 06 00 */ lhz r0, 0x600(r31) -/* 8018AC2C 00187B8C 7C 03 00 40 */ cmplw r3, r0 -/* 8018AC30 00187B90 41 82 00 10 */ beq lbl_8018AC40 -/* 8018AC34 00187B94 A0 1F 06 02 */ lhz r0, 0x602(r31) -/* 8018AC38 00187B98 7C 03 00 40 */ cmplw r3, r0 -/* 8018AC3C 00187B9C 40 82 00 24 */ bne lbl_8018AC60 -lbl_8018AC40: -/* 8018AC40 00187BA0 81 9F 00 00 */ lwz r12, 0(r31) -/* 8018AC44 00187BA4 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8018AC48 00187BA8 7F E3 FB 78 */ mr r3, r31 -/* 8018AC4C 00187BAC C0 22 A3 C0 */ lfs f1, lbl_805AC0E0@sda21(r2) -/* 8018AC50 00187BB0 81 8C 00 90 */ lwz r12, 0x90(r12) -/* 8018AC54 00187BB4 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 8018AC58 00187BB8 7D 89 03 A6 */ mtctr r12 -/* 8018AC5C 00187BBC 4E 80 04 21 */ bctrl -lbl_8018AC60: -/* 8018AC60 00187BC0 88 BF 00 30 */ lbz r5, 0x30(r31) -/* 8018AC64 00187BC4 7F E3 FB 78 */ mr r3, r31 -/* 8018AC68 00187BC8 A0 1C 00 00 */ lhz r0, 0(r28) -/* 8018AC6C 00187BCC 7F A4 EB 78 */ mr r4, r29 -/* 8018AC70 00187BD0 7F C6 F3 78 */ mr r6, r30 -/* 8018AC74 00187BD4 54 B7 CF FE */ rlwinm r23, r5, 0x19, 0x1f, 0x1f -/* 8018AC78 00187BD8 B0 01 00 38 */ sth r0, 0x38(r1) -/* 8018AC7C 00187BDC 38 A1 00 38 */ addi r5, r1, 0x38 -/* 8018AC80 00187BE0 4B EF 1E F9 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager -/* 8018AC84 00187BE4 88 1F 00 30 */ lbz r0, 0x30(r31) -/* 8018AC88 00187BE8 54 05 CF FE */ rlwinm r5, r0, 0x19, 0x1f, 0x1f -/* 8018AC8C 00187BEC 7C 17 28 40 */ cmplw r23, r5 -/* 8018AC90 00187BF0 41 82 00 20 */ beq lbl_8018ACB0 -/* 8018AC94 00187BF4 80 7F 05 EC */ lwz r3, 0x5ec(r31) -/* 8018AC98 00187BF8 28 03 00 00 */ cmplwi r3, 0 -/* 8018AC9C 00187BFC 41 82 00 0C */ beq lbl_8018ACA8 -/* 8018ACA0 00187C00 7F C4 F3 78 */ mr r4, r30 -/* 8018ACA4 00187C04 48 01 C6 55 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb -lbl_8018ACA8: -/* 8018ACA8 00187C08 C0 02 A3 AC */ lfs f0, lbl_805AC0CC@sda21(r2) -/* 8018ACAC 00187C0C D0 1F 06 3C */ stfs f0, 0x63c(r31) -lbl_8018ACB0: -/* 8018ACB0 00187C10 BA E1 03 DC */ lmw r23, 0x3dc(r1) -/* 8018ACB4 00187C14 80 01 04 04 */ lwz r0, 0x404(r1) -/* 8018ACB8 00187C18 7C 08 03 A6 */ mtlr r0 -/* 8018ACBC 00187C1C 38 21 04 00 */ addi r1, r1, 0x400 -/* 8018ACC0 00187C20 4E 80 00 20 */ blr - -.global Generate__13CNewIntroBossFR13CStateManager9EStateMsgf -Generate__13CNewIntroBossFR13CStateManager9EStateMsgf: -/* 8018ACC4 00187C24 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8018ACC8 00187C28 7C 08 02 A6 */ mflr r0 -/* 8018ACCC 00187C2C 2C 05 00 01 */ cmpwi r5, 1 -/* 8018ACD0 00187C30 90 01 00 34 */ stw r0, 0x34(r1) -/* 8018ACD4 00187C34 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8018ACD8 00187C38 7C 7F 1B 78 */ mr r31, r3 -/* 8018ACDC 00187C3C 93 C1 00 28 */ stw r30, 0x28(r1) -/* 8018ACE0 00187C40 7C 9E 23 78 */ mr r30, r4 -/* 8018ACE4 00187C44 41 82 00 40 */ beq lbl_8018AD24 -/* 8018ACE8 00187C48 40 80 01 78 */ bge lbl_8018AE60 -/* 8018ACEC 00187C4C 2C 05 00 00 */ cmpwi r5, 0 -/* 8018ACF0 00187C50 40 80 00 0C */ bge lbl_8018ACFC -/* 8018ACF4 00187C54 48 00 01 6C */ b lbl_8018AE60 -/* 8018ACF8 00187C58 48 00 01 68 */ b lbl_8018AE60 -lbl_8018ACFC: -/* 8018ACFC 00187C5C 38 00 00 00 */ li r0, 0 -/* 8018AD00 00187C60 90 1F 05 6C */ stw r0, 0x56c(r31) -/* 8018AD04 00187C64 48 00 14 B1 */ bl GetLocoForHealth__13CNewIntroBossCFRC13CStateManager -/* 8018AD08 00187C68 90 7F 05 68 */ stw r3, 0x568(r31) -/* 8018AD0C 00187C6C 7F E3 FB 78 */ mr r3, r31 -/* 8018AD10 00187C70 7F C5 F3 78 */ mr r5, r30 -/* 8018AD14 00187C74 38 80 00 03 */ li r4, 3 -/* 8018AD18 00187C78 38 C0 FF FF */ li r6, -1 -/* 8018AD1C 00187C7C 4B EC 63 A5 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 8018AD20 00187C80 48 00 01 40 */ b lbl_8018AE60 -lbl_8018AD24: -/* 8018AD24 00187C84 80 1F 05 6C */ lwz r0, 0x56c(r31) -/* 8018AD28 00187C88 2C 00 00 01 */ cmpwi r0, 1 -/* 8018AD2C 00187C8C 41 82 01 34 */ beq lbl_8018AE60 -/* 8018AD30 00187C90 40 80 00 10 */ bge lbl_8018AD40 -/* 8018AD34 00187C94 2C 00 00 00 */ cmpwi r0, 0 -/* 8018AD38 00187C98 40 80 00 14 */ bge lbl_8018AD4C -/* 8018AD3C 00187C9C 48 00 01 24 */ b lbl_8018AE60 -lbl_8018AD40: -/* 8018AD40 00187CA0 2C 00 00 03 */ cmpwi r0, 3 -/* 8018AD44 00187CA4 40 80 01 1C */ bge lbl_8018AE60 -/* 8018AD48 00187CA8 48 00 00 F0 */ b lbl_8018AE38 -lbl_8018AD4C: -/* 8018AD4C 00187CAC 80 BF 04 50 */ lwz r5, 0x450(r31) -/* 8018AD50 00187CB0 80 05 02 B8 */ lwz r0, 0x2b8(r5) -/* 8018AD54 00187CB4 2C 00 00 0C */ cmpwi r0, 0xc -/* 8018AD58 00187CB8 40 82 00 10 */ bne lbl_8018AD68 -/* 8018AD5C 00187CBC 38 00 00 02 */ li r0, 2 -/* 8018AD60 00187CC0 90 1F 05 6C */ stw r0, 0x56c(r31) -/* 8018AD64 00187CC4 48 00 00 FC */ b lbl_8018AE60 -lbl_8018AD68: -/* 8018AD68 00187CC8 48 00 13 F1 */ bl GetGenerateForHealth__13CNewIntroBossCFRC13CStateManager -/* 8018AD6C 00187CCC 3C E0 80 3E */ lis r7, lbl_803DAA68@ha -/* 8018AD70 00187CD0 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8018AD74 00187CD4 C4 44 66 A0 */ lfsu f2, skZero3f@l(r4) -/* 8018AD78 00187CD8 39 47 AA 68 */ addi r10, r7, lbl_803DAA68@l -/* 8018AD7C 00187CDC 3D 00 80 3E */ lis r8, lbl_803DA9F0@ha -/* 8018AD80 00187CE0 80 A1 00 24 */ lwz r5, 0x24(r1) -/* 8018AD84 00187CE4 38 C0 00 00 */ li r6, 0 -/* 8018AD88 00187CE8 C0 24 00 04 */ lfs f1, 4(r4) -/* 8018AD8C 00187CEC 50 C5 F8 00 */ rlwimi r5, r6, 0x1f, 0, 0 -/* 8018AD90 00187CF0 C0 04 00 08 */ lfs f0, 8(r4) -/* 8018AD94 00187CF4 80 9F 04 50 */ lwz r4, 0x450(r31) -/* 8018AD98 00187CF8 7C A0 2B 78 */ mr r0, r5 -/* 8018AD9C 00187CFC 39 20 00 0E */ li r9, 0xe -/* 8018ADA0 00187D00 38 E0 FF FF */ li r7, -1 -/* 8018ADA4 00187D04 3B E4 00 04 */ addi r31, r4, 4 -/* 8018ADA8 00187D08 90 61 00 10 */ stw r3, 0x10(r1) -/* 8018ADAC 00187D0C 39 08 A9 F0 */ addi r8, r8, lbl_803DA9F0@l -/* 8018ADB0 00187D10 50 C0 F0 42 */ rlwimi r0, r6, 0x1e, 1, 1 -/* 8018ADB4 00187D14 91 41 00 08 */ stw r10, 8(r1) -/* 8018ADB8 00187D18 38 80 00 0E */ li r4, 0xe -/* 8018ADBC 00187D1C 7F E3 FB 78 */ mr r3, r31 -/* 8018ADC0 00187D20 90 A1 00 24 */ stw r5, 0x24(r1) -/* 8018ADC4 00187D24 91 21 00 0C */ stw r9, 0xc(r1) -/* 8018ADC8 00187D28 91 01 00 08 */ stw r8, 8(r1) -/* 8018ADCC 00187D2C D0 41 00 14 */ stfs f2, 0x14(r1) -/* 8018ADD0 00187D30 D0 21 00 18 */ stfs f1, 0x18(r1) -/* 8018ADD4 00187D34 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 8018ADD8 00187D38 90 E1 00 20 */ stw r7, 0x20(r1) -/* 8018ADDC 00187D3C 90 01 00 24 */ stw r0, 0x24(r1) -/* 8018ADE0 00187D40 4B FA 66 59 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8018ADE4 00187D44 80 01 00 0C */ lwz r0, 0xc(r1) -/* 8018ADE8 00187D48 3C 60 80 3E */ lis r3, lbl_803DA9F0@ha -/* 8018ADEC 00187D4C 38 83 A9 F0 */ addi r4, r3, lbl_803DA9F0@l -/* 8018ADF0 00187D50 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 8018ADF4 00187D54 90 1F 01 90 */ stw r0, 0x190(r31) -/* 8018ADF8 00187D58 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 8018ADFC 00187D5C 80 A1 00 10 */ lwz r5, 0x10(r1) -/* 8018AE00 00187D60 80 61 00 14 */ lwz r3, 0x14(r1) -/* 8018AE04 00187D64 90 BF 01 94 */ stw r5, 0x194(r31) -/* 8018AE08 00187D68 80 A1 00 18 */ lwz r5, 0x18(r1) -/* 8018AE0C 00187D6C 90 7F 01 98 */ stw r3, 0x198(r31) -/* 8018AE10 00187D70 80 61 00 1C */ lwz r3, 0x1c(r1) -/* 8018AE14 00187D74 90 BF 01 9C */ stw r5, 0x19c(r31) -/* 8018AE18 00187D78 80 A1 00 20 */ lwz r5, 0x20(r1) -/* 8018AE1C 00187D7C 90 7F 01 A0 */ stw r3, 0x1a0(r31) -/* 8018AE20 00187D80 80 61 00 24 */ lwz r3, 0x24(r1) -/* 8018AE24 00187D84 90 BF 01 A4 */ stw r5, 0x1a4(r31) -/* 8018AE28 00187D88 90 81 00 08 */ stw r4, 8(r1) -/* 8018AE2C 00187D8C 90 7F 01 A8 */ stw r3, 0x1a8(r31) -/* 8018AE30 00187D90 90 01 00 08 */ stw r0, 8(r1) -/* 8018AE34 00187D94 48 00 00 2C */ b lbl_8018AE60 -lbl_8018AE38: -/* 8018AE38 00187D98 80 9F 04 50 */ lwz r4, 0x450(r31) -/* 8018AE3C 00187D9C 80 04 02 B8 */ lwz r0, 0x2b8(r4) -/* 8018AE40 00187DA0 2C 00 00 0C */ cmpwi r0, 0xc -/* 8018AE44 00187DA4 41 82 00 1C */ beq lbl_8018AE60 -/* 8018AE48 00187DA8 38 00 00 03 */ li r0, 3 -/* 8018AE4C 00187DAC 7F C5 F3 78 */ mr r5, r30 -/* 8018AE50 00187DB0 90 1F 05 6C */ stw r0, 0x56c(r31) -/* 8018AE54 00187DB4 38 80 00 04 */ li r4, 4 -/* 8018AE58 00187DB8 38 C0 FF FF */ li r6, -1 -/* 8018AE5C 00187DBC 4B EC 62 65 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -lbl_8018AE60: -/* 8018AE60 00187DC0 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8018AE64 00187DC4 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8018AE68 00187DC8 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 8018AE6C 00187DCC 7C 08 03 A6 */ mtlr r0 -/* 8018AE70 00187DD0 38 21 00 30 */ addi r1, r1, 0x30 -/* 8018AE74 00187DD4 4E 80 00 20 */ blr - -.global AIStage__13CNewIntroBossFR13CStateManagerf -AIStage__13CNewIntroBossFR13CStateManagerf: -/* 8018AE78 00187DD8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8018AE7C 00187DDC 7C 08 02 A6 */ mflr r0 -/* 8018AE80 00187DE0 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018AE84 00187DE4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8018AE88 00187DE8 7C 7F 1B 78 */ mr r31, r3 -/* 8018AE8C 00187DEC 48 00 13 29 */ bl GetLocoForHealth__13CNewIntroBossCFRC13CStateManager -/* 8018AE90 00187DF0 80 1F 05 68 */ lwz r0, 0x568(r31) -/* 8018AE94 00187DF4 7C 80 18 50 */ subf r4, r0, r3 -/* 8018AE98 00187DF8 7C 03 00 50 */ subf r0, r3, r0 -/* 8018AE9C 00187DFC 7C 80 03 78 */ or r0, r4, r0 -/* 8018AEA0 00187E00 54 03 0F FE */ srwi r3, r0, 0x1f -/* 8018AEA4 00187E04 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8018AEA8 00187E08 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8018AEAC 00187E0C 7C 08 03 A6 */ mtlr r0 -/* 8018AEB0 00187E10 38 21 00 10 */ addi r1, r1, 0x10 -/* 8018AEB4 00187E14 4E 80 00 20 */ blr - -.global AnimOver__13CNewIntroBossFR13CStateManagerf -AnimOver__13CNewIntroBossFR13CStateManagerf: -/* 8018AEB8 00187E18 80 03 05 6C */ lwz r0, 0x56c(r3) -/* 8018AEBC 00187E1C 20 00 00 03 */ subfic r0, r0, 3 -/* 8018AEC0 00187E20 7C 00 00 34 */ cntlzw r0, r0 -/* 8018AEC4 00187E24 54 03 D9 7E */ srwi r3, r0, 5 -/* 8018AEC8 00187E28 4E 80 00 20 */ blr - -.global InAttackPosition__13CNewIntroBossFR13CStateManagerf -InAttackPosition__13CNewIntroBossFR13CStateManagerf: -/* 8018AECC 00187E2C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8018AED0 00187E30 7C 08 02 A6 */ mflr r0 -/* 8018AED4 00187E34 C0 02 A3 C4 */ lfs f0, lbl_805AC0E4@sda21(r2) -/* 8018AED8 00187E38 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018AEDC 00187E3C C0 23 03 38 */ lfs f1, 0x338(r3) -/* 8018AEE0 00187E40 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8018AEE4 00187E44 40 81 00 44 */ ble lbl_8018AF28 -/* 8018AEE8 00187E48 88 03 06 78 */ lbz r0, 0x678(r3) -/* 8018AEEC 00187E4C 28 00 00 00 */ cmplwi r0, 0 -/* 8018AEF0 00187E50 41 82 00 38 */ beq lbl_8018AF28 -/* 8018AEF4 00187E54 80 A3 04 50 */ lwz r5, 0x450(r3) -/* 8018AEF8 00187E58 80 05 02 B8 */ lwz r0, 0x2b8(r5) -/* 8018AEFC 00187E5C 2C 00 00 08 */ cmpwi r0, 8 -/* 8018AF00 00187E60 41 82 00 28 */ beq lbl_8018AF28 -/* 8018AF04 00187E64 81 83 00 00 */ lwz r12, 0(r3) -/* 8018AF08 00187E68 C0 22 A3 C0 */ lfs f1, lbl_805AC0E0@sda21(r2) -/* 8018AF0C 00187E6C 81 8C 01 E8 */ lwz r12, 0x1e8(r12) -/* 8018AF10 00187E70 7D 89 03 A6 */ mtctr r12 -/* 8018AF14 00187E74 4E 80 04 21 */ bctrl -/* 8018AF18 00187E78 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8018AF1C 00187E7C 40 82 00 0C */ bne lbl_8018AF28 -/* 8018AF20 00187E80 38 60 00 01 */ li r3, 1 -/* 8018AF24 00187E84 48 00 00 08 */ b lbl_8018AF2C -lbl_8018AF28: -/* 8018AF28 00187E88 38 60 00 00 */ li r3, 0 -lbl_8018AF2C: -/* 8018AF2C 00187E8C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8018AF30 00187E90 7C 08 03 A6 */ mtlr r0 -/* 8018AF34 00187E94 38 21 00 10 */ addi r1, r1, 0x10 -/* 8018AF38 00187E98 4E 80 00 20 */ blr - -.global ShouldAttack__13CNewIntroBossFR13CStateManagerf -ShouldAttack__13CNewIntroBossFR13CStateManagerf: -/* 8018AF3C 00187E9C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8018AF40 00187EA0 7C 08 02 A6 */ mflr r0 -/* 8018AF44 00187EA4 C0 22 A3 C0 */ lfs f1, lbl_805AC0E0@sda21(r2) -/* 8018AF48 00187EA8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018AF4C 00187EAC C0 03 06 3C */ lfs f0, 0x63c(r3) -/* 8018AF50 00187EB0 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 8018AF54 00187EB4 4C 40 13 82 */ cror 2, 0, 2 -/* 8018AF58 00187EB8 40 82 00 34 */ bne lbl_8018AF8C -/* 8018AF5C 00187EBC 80 A3 04 50 */ lwz r5, 0x450(r3) -/* 8018AF60 00187EC0 80 05 02 B8 */ lwz r0, 0x2b8(r5) -/* 8018AF64 00187EC4 2C 00 00 08 */ cmpwi r0, 8 -/* 8018AF68 00187EC8 41 82 00 24 */ beq lbl_8018AF8C -/* 8018AF6C 00187ECC 81 83 00 00 */ lwz r12, 0(r3) -/* 8018AF70 00187ED0 81 8C 01 E8 */ lwz r12, 0x1e8(r12) -/* 8018AF74 00187ED4 7D 89 03 A6 */ mtctr r12 -/* 8018AF78 00187ED8 4E 80 04 21 */ bctrl -/* 8018AF7C 00187EDC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8018AF80 00187EE0 40 82 00 0C */ bne lbl_8018AF8C -/* 8018AF84 00187EE4 38 60 00 01 */ li r3, 1 -/* 8018AF88 00187EE8 48 00 00 08 */ b lbl_8018AF90 -lbl_8018AF8C: -/* 8018AF8C 00187EEC 38 60 00 00 */ li r3, 0 -lbl_8018AF90: -/* 8018AF90 00187EF0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8018AF94 00187EF4 7C 08 03 A6 */ mtlr r0 -/* 8018AF98 00187EF8 38 21 00 10 */ addi r1, r1, 0x10 -/* 8018AF9C 00187EFC 4E 80 00 20 */ blr - -.global Attack__13CNewIntroBossFR13CStateManager9EStateMsgf -Attack__13CNewIntroBossFR13CStateManager9EStateMsgf: -/* 8018AFA0 00187F00 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8018AFA4 00187F04 7C 08 02 A6 */ mflr r0 -/* 8018AFA8 00187F08 2C 05 00 01 */ cmpwi r5, 1 -/* 8018AFAC 00187F0C 90 01 00 34 */ stw r0, 0x34(r1) -/* 8018AFB0 00187F10 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8018AFB4 00187F14 7C 7F 1B 78 */ mr r31, r3 -/* 8018AFB8 00187F18 93 C1 00 28 */ stw r30, 0x28(r1) -/* 8018AFBC 00187F1C 7C 9E 23 78 */ mr r30, r4 -/* 8018AFC0 00187F20 41 82 00 2C */ beq lbl_8018AFEC -/* 8018AFC4 00187F24 40 80 00 10 */ bge lbl_8018AFD4 -/* 8018AFC8 00187F28 2C 05 00 00 */ cmpwi r5, 0 -/* 8018AFCC 00187F2C 40 80 00 14 */ bge lbl_8018AFE0 -/* 8018AFD0 00187F30 48 00 01 AC */ b lbl_8018B17C -lbl_8018AFD4: -/* 8018AFD4 00187F34 2C 05 00 03 */ cmpwi r5, 3 -/* 8018AFD8 00187F38 40 80 01 A4 */ bge lbl_8018B17C -/* 8018AFDC 00187F3C 48 00 01 64 */ b lbl_8018B140 -lbl_8018AFE0: -/* 8018AFE0 00187F40 38 00 00 00 */ li r0, 0 -/* 8018AFE4 00187F44 90 1F 05 6C */ stw r0, 0x56c(r31) -/* 8018AFE8 00187F48 48 00 01 94 */ b lbl_8018B17C -lbl_8018AFEC: -/* 8018AFEC 00187F4C 80 1F 05 6C */ lwz r0, 0x56c(r31) -/* 8018AFF0 00187F50 2C 00 00 01 */ cmpwi r0, 1 -/* 8018AFF4 00187F54 41 82 01 88 */ beq lbl_8018B17C -/* 8018AFF8 00187F58 40 80 00 10 */ bge lbl_8018B008 -/* 8018AFFC 00187F5C 2C 00 00 00 */ cmpwi r0, 0 -/* 8018B000 00187F60 40 80 00 14 */ bge lbl_8018B014 -/* 8018B004 00187F64 48 00 01 78 */ b lbl_8018B17C -lbl_8018B008: -/* 8018B008 00187F68 2C 00 00 03 */ cmpwi r0, 3 -/* 8018B00C 00187F6C 40 80 01 70 */ bge lbl_8018B17C -/* 8018B010 00187F70 48 00 00 C8 */ b lbl_8018B0D8 -lbl_8018B014: -/* 8018B014 00187F74 80 DF 04 50 */ lwz r6, 0x450(r31) -/* 8018B018 00187F78 80 06 02 B8 */ lwz r0, 0x2b8(r6) -/* 8018B01C 00187F7C 2C 00 00 12 */ cmpwi r0, 0x12 -/* 8018B020 00187F80 40 82 00 10 */ bne lbl_8018B030 -/* 8018B024 00187F84 38 00 00 02 */ li r0, 2 -/* 8018B028 00187F88 90 1F 05 6C */ stw r0, 0x56c(r31) -/* 8018B02C 00187F8C 48 00 01 50 */ b lbl_8018B17C -lbl_8018B030: -/* 8018B030 00187F90 81 1E 08 4C */ lwz r8, 0x84c(r30) -/* 8018B034 00187F94 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 8018B038 00187F98 38 83 AA 68 */ addi r4, r3, lbl_803DAA68@l -/* 8018B03C 00187F9C 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha -/* 8018B040 00187FA0 C0 48 00 60 */ lfs f2, 0x60(r8) -/* 8018B044 00187FA4 38 E0 00 06 */ li r7, 6 -/* 8018B048 00187FA8 C0 28 00 50 */ lfs f1, 0x50(r8) -/* 8018B04C 00187FAC 38 A0 00 01 */ li r5, 1 -/* 8018B050 00187FB0 C0 08 00 40 */ lfs f0, 0x40(r8) -/* 8018B054 00187FB4 38 00 00 00 */ li r0, 0 -/* 8018B058 00187FB8 3B E6 00 04 */ addi r31, r6, 4 -/* 8018B05C 00187FBC 90 81 00 0C */ stw r4, 0xc(r1) -/* 8018B060 00187FC0 38 C3 A9 CC */ addi r6, r3, lbl_803DA9CC@l -/* 8018B064 00187FC4 38 80 00 06 */ li r4, 6 -/* 8018B068 00187FC8 90 E1 00 10 */ stw r7, 0x10(r1) -/* 8018B06C 00187FCC 7F E3 FB 78 */ mr r3, r31 -/* 8018B070 00187FD0 90 C1 00 0C */ stw r6, 0xc(r1) -/* 8018B074 00187FD4 90 A1 00 14 */ stw r5, 0x14(r1) -/* 8018B078 00187FD8 D0 01 00 18 */ stfs f0, 0x18(r1) -/* 8018B07C 00187FDC D0 21 00 1C */ stfs f1, 0x1c(r1) -/* 8018B080 00187FE0 D0 41 00 20 */ stfs f2, 0x20(r1) -/* 8018B084 00187FE4 98 01 00 24 */ stb r0, 0x24(r1) -/* 8018B088 00187FE8 4B FA 63 B1 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8018B08C 00187FEC 80 01 00 10 */ lwz r0, 0x10(r1) -/* 8018B090 00187FF0 3C 60 80 3E */ lis r3, lbl_803DA9CC@ha -/* 8018B094 00187FF4 38 83 A9 CC */ addi r4, r3, lbl_803DA9CC@l -/* 8018B098 00187FF8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha -/* 8018B09C 00187FFC 90 1F 01 2C */ stw r0, 0x12c(r31) -/* 8018B0A0 00188000 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l -/* 8018B0A4 00188004 80 61 00 14 */ lwz r3, 0x14(r1) -/* 8018B0A8 00188008 80 A1 00 18 */ lwz r5, 0x18(r1) -/* 8018B0AC 0018800C 90 7F 01 30 */ stw r3, 0x130(r31) -/* 8018B0B0 00188010 80 61 00 1C */ lwz r3, 0x1c(r1) -/* 8018B0B4 00188014 90 BF 01 34 */ stw r5, 0x134(r31) -/* 8018B0B8 00188018 80 A1 00 20 */ lwz r5, 0x20(r1) -/* 8018B0BC 0018801C 90 7F 01 38 */ stw r3, 0x138(r31) -/* 8018B0C0 00188020 88 61 00 24 */ lbz r3, 0x24(r1) -/* 8018B0C4 00188024 90 BF 01 3C */ stw r5, 0x13c(r31) -/* 8018B0C8 00188028 90 81 00 0C */ stw r4, 0xc(r1) -/* 8018B0CC 0018802C 98 7F 01 40 */ stb r3, 0x140(r31) -/* 8018B0D0 00188030 90 01 00 0C */ stw r0, 0xc(r1) -/* 8018B0D4 00188034 48 00 00 A8 */ b lbl_8018B17C -lbl_8018B0D8: -/* 8018B0D8 00188038 80 7F 04 50 */ lwz r3, 0x450(r31) -/* 8018B0DC 0018803C 80 03 02 B8 */ lwz r0, 0x2b8(r3) -/* 8018B0E0 00188040 2C 00 00 12 */ cmpwi r0, 0x12 -/* 8018B0E4 00188044 41 82 00 14 */ beq lbl_8018B0F8 -/* 8018B0E8 00188048 38 00 00 03 */ li r0, 3 -/* 8018B0EC 0018804C C0 02 A3 C0 */ lfs f0, lbl_805AC0E0@sda21(r2) -/* 8018B0F0 00188050 90 1F 05 6C */ stw r0, 0x56c(r31) -/* 8018B0F4 00188054 D0 1F 06 38 */ stfs f0, 0x638(r31) -lbl_8018B0F8: -/* 8018B0F8 00188058 A0 1F 06 76 */ lhz r0, 0x676(r31) -/* 8018B0FC 0018805C 7F C3 F3 78 */ mr r3, r30 -/* 8018B100 00188060 38 81 00 08 */ addi r4, r1, 8 -/* 8018B104 00188064 B0 01 00 08 */ sth r0, 8(r1) -/* 8018B108 00188068 4B EC 14 9D */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8018B10C 0018806C 28 03 00 00 */ cmplwi r3, 0 -/* 8018B110 00188070 41 82 00 6C */ beq lbl_8018B17C -/* 8018B114 00188074 88 03 00 30 */ lbz r0, 0x30(r3) -/* 8018B118 00188078 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8018B11C 0018807C 40 82 00 60 */ bne lbl_8018B17C -/* 8018B120 00188080 80 7E 08 4C */ lwz r3, 0x84c(r30) -/* 8018B124 00188084 C0 43 00 60 */ lfs f2, 0x60(r3) -/* 8018B128 00188088 C0 23 00 50 */ lfs f1, 0x50(r3) -/* 8018B12C 0018808C C0 03 00 40 */ lfs f0, 0x40(r3) -/* 8018B130 00188090 D0 1F 06 2C */ stfs f0, 0x62c(r31) -/* 8018B134 00188094 D0 3F 06 30 */ stfs f1, 0x630(r31) -/* 8018B138 00188098 D0 5F 06 34 */ stfs f2, 0x634(r31) -/* 8018B13C 0018809C 48 00 00 40 */ b lbl_8018B17C -lbl_8018B140: -/* 8018B140 001880A0 48 00 10 75 */ bl GetLocoForHealth__13CNewIntroBossCFRC13CStateManager -/* 8018B144 001880A4 2C 03 00 02 */ cmpwi r3, 2 -/* 8018B148 001880A8 41 82 00 18 */ beq lbl_8018B160 -/* 8018B14C 001880AC 7F E3 FB 78 */ mr r3, r31 -/* 8018B150 001880B0 7F C4 F3 78 */ mr r4, r30 -/* 8018B154 001880B4 48 00 10 61 */ bl GetLocoForHealth__13CNewIntroBossCFRC13CStateManager -/* 8018B158 001880B8 2C 03 00 03 */ cmpwi r3, 3 -/* 8018B15C 001880BC 40 82 00 18 */ bne lbl_8018B174 -lbl_8018B160: -/* 8018B160 001880C0 88 1F 06 78 */ lbz r0, 0x678(r31) -/* 8018B164 001880C4 7C 00 00 34 */ cntlzw r0, r0 -/* 8018B168 001880C8 54 00 D9 7E */ srwi r0, r0, 5 -/* 8018B16C 001880CC 98 1F 06 78 */ stb r0, 0x678(r31) -/* 8018B170 001880D0 48 00 00 0C */ b lbl_8018B17C -lbl_8018B174: -/* 8018B174 001880D4 38 00 00 00 */ li r0, 0 -/* 8018B178 001880D8 98 1F 06 78 */ stb r0, 0x678(r31) -lbl_8018B17C: -/* 8018B17C 001880DC 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8018B180 001880E0 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8018B184 001880E4 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 8018B188 001880E8 7C 08 03 A6 */ mtlr r0 -/* 8018B18C 001880EC 38 21 00 30 */ addi r1, r1, 0x30 -/* 8018B190 001880F0 4E 80 00 20 */ blr - -.global Patrol__13CNewIntroBossFR13CStateManager9EStateMsgf -Patrol__13CNewIntroBossFR13CStateManager9EStateMsgf: -/* 8018B194 001880F4 94 21 FF 90 */ stwu r1, -0x70(r1) -/* 8018B198 001880F8 7C 08 02 A6 */ mflr r0 -/* 8018B19C 001880FC 90 01 00 74 */ stw r0, 0x74(r1) -/* 8018B1A0 00188100 DB E1 00 60 */ stfd f31, 0x60(r1) -/* 8018B1A4 00188104 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 -/* 8018B1A8 00188108 93 E1 00 5C */ stw r31, 0x5c(r1) -/* 8018B1AC 0018810C 93 C1 00 58 */ stw r30, 0x58(r1) -/* 8018B1B0 00188110 2C 05 00 02 */ cmpwi r5, 2 -/* 8018B1B4 00188114 7C 7E 1B 78 */ mr r30, r3 -/* 8018B1B8 00188118 7C 9F 23 78 */ mr r31, r4 -/* 8018B1BC 0018811C 40 80 01 68 */ bge lbl_8018B324 -/* 8018B1C0 00188120 2C 05 00 00 */ cmpwi r5, 0 -/* 8018B1C4 00188124 40 80 00 08 */ bge lbl_8018B1CC -/* 8018B1C8 00188128 48 00 01 5C */ b lbl_8018B324 -lbl_8018B1CC: -/* 8018B1CC 0018812C 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 8018B1D0 00188130 80 9E 05 68 */ lwz r4, 0x568(r30) -/* 8018B1D4 00188134 4B FA F8 05 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType -/* 8018B1D8 00188138 C0 3E 06 38 */ lfs f1, 0x638(r30) -/* 8018B1DC 0018813C C0 02 A3 C8 */ lfs f0, lbl_805AC0E8@sda21(r2) -/* 8018B1E0 00188140 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8018B1E4 00188144 40 81 00 30 */ ble lbl_8018B214 -/* 8018B1E8 00188148 7F C4 F3 78 */ mr r4, r30 -/* 8018B1EC 0018814C 7F E5 FB 78 */ mr r5, r31 -/* 8018B1F0 00188150 38 61 00 20 */ addi r3, r1, 0x20 -/* 8018B1F4 00188154 48 00 0A E9 */ bl PlayerPos__13CNewIntroBossCFRC13CStateManager -/* 8018B1F8 00188158 C0 01 00 20 */ lfs f0, 0x20(r1) -/* 8018B1FC 0018815C D0 1E 06 2C */ stfs f0, 0x62c(r30) -/* 8018B200 00188160 C0 01 00 24 */ lfs f0, 0x24(r1) -/* 8018B204 00188164 D0 1E 06 30 */ stfs f0, 0x630(r30) -/* 8018B208 00188168 C0 01 00 28 */ lfs f0, 0x28(r1) -/* 8018B20C 0018816C D0 1E 06 34 */ stfs f0, 0x634(r30) -/* 8018B210 00188170 48 00 00 60 */ b lbl_8018B270 -lbl_8018B214: -/* 8018B214 00188174 EF E1 00 24 */ fdivs f31, f1, f0 -/* 8018B218 00188178 7F C4 F3 78 */ mr r4, r30 -/* 8018B21C 0018817C 7F E5 FB 78 */ mr r5, r31 -/* 8018B220 00188180 38 61 00 14 */ addi r3, r1, 0x14 -/* 8018B224 00188184 48 00 0A B9 */ bl PlayerPos__13CNewIntroBossCFRC13CStateManager -/* 8018B228 00188188 C0 21 00 14 */ lfs f1, 0x14(r1) -/* 8018B22C 0018818C C0 9E 06 10 */ lfs f4, 0x610(r30) -/* 8018B230 00188190 C0 01 00 18 */ lfs f0, 0x18(r1) -/* 8018B234 00188194 EC 61 20 28 */ fsubs f3, f1, f4 -/* 8018B238 00188198 C0 BE 06 14 */ lfs f5, 0x614(r30) -/* 8018B23C 0018819C C0 21 00 1C */ lfs f1, 0x1c(r1) -/* 8018B240 001881A0 EC 40 28 28 */ fsubs f2, f0, f5 -/* 8018B244 001881A4 C0 DE 06 18 */ lfs f6, 0x618(r30) -/* 8018B248 001881A8 EC 1F 00 F2 */ fmuls f0, f31, f3 -/* 8018B24C 001881AC EC 61 30 28 */ fsubs f3, f1, f6 -/* 8018B250 001881B0 EC 3F 00 B2 */ fmuls f1, f31, f2 -/* 8018B254 001881B4 EC 44 00 2A */ fadds f2, f4, f0 -/* 8018B258 001881B8 EC 1F 00 F2 */ fmuls f0, f31, f3 -/* 8018B25C 001881BC EC 25 08 2A */ fadds f1, f5, f1 -/* 8018B260 001881C0 D0 5E 06 2C */ stfs f2, 0x62c(r30) -/* 8018B264 001881C4 EC 06 00 2A */ fadds f0, f6, f0 -/* 8018B268 001881C8 D0 3E 06 30 */ stfs f1, 0x630(r30) -/* 8018B26C 001881CC D0 1E 06 34 */ stfs f0, 0x634(r30) -lbl_8018B270: -/* 8018B270 001881D0 7F C3 F3 78 */ mr r3, r30 -/* 8018B274 001881D4 7F E4 FB 78 */ mr r4, r31 -/* 8018B278 001881D8 81 9E 00 00 */ lwz r12, 0(r30) -/* 8018B27C 001881DC C0 22 A3 C0 */ lfs f1, lbl_805AC0E0@sda21(r2) -/* 8018B280 001881E0 81 8C 01 E8 */ lwz r12, 0x1e8(r12) -/* 8018B284 001881E4 7D 89 03 A6 */ mtctr r12 -/* 8018B288 001881E8 4E 80 04 21 */ bctrl -/* 8018B28C 001881EC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8018B290 001881F0 41 82 00 94 */ beq lbl_8018B324 -/* 8018B294 001881F4 38 00 00 00 */ li r0, 0 -/* 8018B298 001881F8 38 61 00 08 */ addi r3, r1, 8 -/* 8018B29C 001881FC 90 1E 05 6C */ stw r0, 0x56c(r30) -/* 8018B2A0 00188200 38 81 00 2C */ addi r4, r1, 0x2c -/* 8018B2A4 00188204 C0 3E 06 08 */ lfs f1, 0x608(r30) -/* 8018B2A8 00188208 C0 1E 00 50 */ lfs f0, 0x50(r30) -/* 8018B2AC 0018820C C0 7E 06 0C */ lfs f3, 0x60c(r30) -/* 8018B2B0 00188210 C0 5E 00 60 */ lfs f2, 0x60(r30) -/* 8018B2B4 00188214 EC 81 00 28 */ fsubs f4, f1, f0 -/* 8018B2B8 00188218 C0 3E 06 04 */ lfs f1, 0x604(r30) -/* 8018B2BC 0018821C C0 1E 00 40 */ lfs f0, 0x40(r30) -/* 8018B2C0 00188220 EC 43 10 28 */ fsubs f2, f3, f2 -/* 8018B2C4 00188224 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8018B2C8 00188228 D0 81 00 30 */ stfs f4, 0x30(r1) -/* 8018B2CC 0018822C D0 41 00 34 */ stfs f2, 0x34(r1) -/* 8018B2D0 00188230 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 8018B2D4 00188234 48 18 95 7D */ bl AsNormalized__9CVector3fCFv -/* 8018B2D8 00188238 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8018B2DC 0018823C C4 C3 66 A0 */ lfsu f6, skZero3f@l(r3) -/* 8018B2E0 00188240 C0 61 00 08 */ lfs f3, 8(r1) -/* 8018B2E4 00188244 38 81 00 38 */ addi r4, r1, 0x38 -/* 8018B2E8 00188248 C0 41 00 0C */ lfs f2, 0xc(r1) -/* 8018B2EC 0018824C C0 A3 00 04 */ lfs f5, 4(r3) -/* 8018B2F0 00188250 C0 83 00 08 */ lfs f4, 8(r3) -/* 8018B2F4 00188254 C0 21 00 10 */ lfs f1, 0x10(r1) -/* 8018B2F8 00188258 C0 02 A3 9C */ lfs f0, lbl_805AC0BC@sda21(r2) -/* 8018B2FC 0018825C D0 C1 00 38 */ stfs f6, 0x38(r1) -/* 8018B300 00188260 D0 A1 00 3C */ stfs f5, 0x3c(r1) -/* 8018B304 00188264 D0 81 00 40 */ stfs f4, 0x40(r1) -/* 8018B308 00188268 D0 61 00 44 */ stfs f3, 0x44(r1) -/* 8018B30C 0018826C D0 41 00 48 */ stfs f2, 0x48(r1) -/* 8018B310 00188270 D0 21 00 4C */ stfs f1, 0x4c(r1) -/* 8018B314 00188274 D0 01 00 50 */ stfs f0, 0x50(r1) -/* 8018B318 00188278 80 7E 04 50 */ lwz r3, 0x450(r30) -/* 8018B31C 0018827C 38 63 00 04 */ addi r3, r3, 4 -/* 8018B320 00188280 4B FA 63 F9 */ bl DeliverCmd__16CBodyStateCmdMgrFRC16CBCLocomotionCmd -lbl_8018B324: -/* 8018B324 00188284 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 -/* 8018B328 00188288 80 01 00 74 */ lwz r0, 0x74(r1) -/* 8018B32C 0018828C CB E1 00 60 */ lfd f31, 0x60(r1) -/* 8018B330 00188290 83 E1 00 5C */ lwz r31, 0x5c(r1) -/* 8018B334 00188294 83 C1 00 58 */ lwz r30, 0x58(r1) -/* 8018B338 00188298 7C 08 03 A6 */ mtlr r0 -/* 8018B33C 0018829C 38 21 00 70 */ addi r1, r1, 0x70 -/* 8018B340 001882A0 4E 80 00 20 */ blr - -.global ShouldTurn__13CNewIntroBossFR13CStateManagerf -ShouldTurn__13CNewIntroBossFR13CStateManagerf: -/* 8018B344 001882A4 94 21 FF 70 */ stwu r1, -0x90(r1) -/* 8018B348 001882A8 7C 08 02 A6 */ mflr r0 -/* 8018B34C 001882AC 90 01 00 94 */ stw r0, 0x94(r1) -/* 8018B350 001882B0 DB E1 00 80 */ stfd f31, 0x80(r1) -/* 8018B354 001882B4 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 -/* 8018B358 001882B8 DB C1 00 70 */ stfd f30, 0x70(r1) -/* 8018B35C 001882BC F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0 -/* 8018B360 001882C0 DB A1 00 60 */ stfd f29, 0x60(r1) -/* 8018B364 001882C4 F3 A1 00 68 */ psq_st f29, 104(r1), 0, qr0 -/* 8018B368 001882C8 93 E1 00 5C */ stw r31, 0x5c(r1) -/* 8018B36C 001882CC 80 C4 08 4C */ lwz r6, 0x84c(r4) -/* 8018B370 001882D0 7C 7F 1B 78 */ mr r31, r3 -/* 8018B374 001882D4 7C 85 23 78 */ mr r5, r4 -/* 8018B378 001882D8 C0 62 A3 9C */ lfs f3, lbl_805AC0BC@sda21(r2) -/* 8018B37C 001882DC C0 46 01 38 */ lfs f2, 0x138(r6) -/* 8018B380 001882E0 7F E4 FB 78 */ mr r4, r31 -/* 8018B384 001882E4 C0 26 01 3C */ lfs f1, 0x13c(r6) -/* 8018B388 001882E8 38 61 00 40 */ addi r3, r1, 0x40 -/* 8018B38C 001882EC C0 06 01 40 */ lfs f0, 0x140(r6) -/* 8018B390 001882F0 EF A3 00 B2 */ fmuls f29, f3, f2 -/* 8018B394 001882F4 EF C3 00 72 */ fmuls f30, f3, f1 -/* 8018B398 001882F8 EF E3 00 32 */ fmuls f31, f3, f0 -/* 8018B39C 001882FC 48 00 09 41 */ bl PlayerPos__13CNewIntroBossCFRC13CStateManager -/* 8018B3A0 00188300 C0 01 00 40 */ lfs f0, 0x40(r1) -/* 8018B3A4 00188304 38 61 00 10 */ addi r3, r1, 0x10 -/* 8018B3A8 00188308 C0 41 00 44 */ lfs f2, 0x44(r1) -/* 8018B3AC 0018830C EC 00 E8 2A */ fadds f0, f0, f29 -/* 8018B3B0 00188310 C0 21 00 48 */ lfs f1, 0x48(r1) -/* 8018B3B4 00188314 EC 42 F0 2A */ fadds f2, f2, f30 -/* 8018B3B8 00188318 EC 21 F8 2A */ fadds f1, f1, f31 -/* 8018B3BC 0018831C D0 1F 06 04 */ stfs f0, 0x604(r31) -/* 8018B3C0 00188320 D0 5F 06 08 */ stfs f2, 0x608(r31) -/* 8018B3C4 00188324 D0 3F 06 0C */ stfs f1, 0x60c(r31) -/* 8018B3C8 00188328 C0 5F 06 08 */ lfs f2, 0x608(r31) -/* 8018B3CC 0018832C C0 1F 00 50 */ lfs f0, 0x50(r31) -/* 8018B3D0 00188330 C0 3F 06 04 */ lfs f1, 0x604(r31) -/* 8018B3D4 00188334 EC 42 00 28 */ fsubs f2, f2, f0 -/* 8018B3D8 00188338 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 8018B3DC 0018833C C0 7F 06 0C */ lfs f3, 0x60c(r31) -/* 8018B3E0 00188340 EC 21 00 28 */ fsubs f1, f1, f0 -/* 8018B3E4 00188344 C0 1F 00 60 */ lfs f0, 0x60(r31) -/* 8018B3E8 00188348 D0 41 00 38 */ stfs f2, 0x38(r1) -/* 8018B3EC 0018834C EC 03 00 28 */ fsubs f0, f3, f0 -/* 8018B3F0 00188350 D0 21 00 34 */ stfs f1, 0x34(r1) -/* 8018B3F4 00188354 D0 01 00 3C */ stfs f0, 0x3c(r1) -/* 8018B3F8 00188358 48 18 8E 09 */ bl __ct__9CVector2fFff -/* 8018B3FC 0018835C C0 21 00 10 */ lfs f1, 0x10(r1) -/* 8018B400 00188360 38 61 00 08 */ addi r3, r1, 8 -/* 8018B404 00188364 C0 01 00 14 */ lfs f0, 0x14(r1) -/* 8018B408 00188368 D0 21 00 20 */ stfs f1, 0x20(r1) -/* 8018B40C 0018836C D0 01 00 24 */ stfs f0, 0x24(r1) -/* 8018B410 00188370 C0 5F 00 48 */ lfs f2, 0x48(r31) -/* 8018B414 00188374 C0 3F 00 38 */ lfs f1, 0x38(r31) -/* 8018B418 00188378 C0 1F 00 58 */ lfs f0, 0x58(r31) -/* 8018B41C 0018837C D0 21 00 28 */ stfs f1, 0x28(r1) -/* 8018B420 00188380 D0 41 00 2C */ stfs f2, 0x2c(r1) -/* 8018B424 00188384 D0 01 00 30 */ stfs f0, 0x30(r1) -/* 8018B428 00188388 48 18 8D D9 */ bl __ct__9CVector2fFff -/* 8018B42C 0018838C C0 21 00 08 */ lfs f1, 8(r1) -/* 8018B430 00188390 38 61 00 18 */ addi r3, r1, 0x18 -/* 8018B434 00188394 C0 01 00 0C */ lfs f0, 0xc(r1) -/* 8018B438 00188398 38 81 00 20 */ addi r4, r1, 0x20 -/* 8018B43C 0018839C D0 21 00 18 */ stfs f1, 0x18(r1) -/* 8018B440 001883A0 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 8018B444 001883A4 48 18 8B 81 */ bl GetAngleDiff__9CVector2fFRC9CVector2fRC9CVector2f -/* 8018B448 001883A8 C0 42 A3 CC */ lfs f2, lbl_805AC0EC@sda21(r2) -/* 8018B44C 001883AC C0 1F 05 70 */ lfs f0, 0x570(r31) -/* 8018B450 001883B0 EC 02 00 32 */ fmuls f0, f2, f0 -/* 8018B454 001883B4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8018B458 001883B8 7C 00 00 26 */ mfcr r0 -/* 8018B45C 001883BC 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f -/* 8018B460 001883C0 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 -/* 8018B464 001883C4 CB E1 00 80 */ lfd f31, 0x80(r1) -/* 8018B468 001883C8 E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0 -/* 8018B46C 001883CC CB C1 00 70 */ lfd f30, 0x70(r1) -/* 8018B470 001883D0 E3 A1 00 68 */ psq_l f29, 104(r1), 0, qr0 -/* 8018B474 001883D4 CB A1 00 60 */ lfd f29, 0x60(r1) -/* 8018B478 001883D8 80 01 00 94 */ lwz r0, 0x94(r1) -/* 8018B47C 001883DC 83 E1 00 5C */ lwz r31, 0x5c(r1) -/* 8018B480 001883E0 7C 08 03 A6 */ mtlr r0 -/* 8018B484 001883E4 38 21 00 90 */ addi r1, r1, 0x90 -/* 8018B488 001883E8 4E 80 00 20 */ blr - -.global Think__13CNewIntroBossFfR13CStateManager -Think__13CNewIntroBossFfR13CStateManager: -/* 8018B48C 001883EC 94 21 FE 10 */ stwu r1, -0x1f0(r1) -/* 8018B490 001883F0 7C 08 02 A6 */ mflr r0 -/* 8018B494 001883F4 90 01 01 F4 */ stw r0, 0x1f4(r1) -/* 8018B498 001883F8 DB E1 01 E0 */ stfd f31, 0x1e0(r1) -/* 8018B49C 001883FC F3 E1 01 E8 */ psq_st f31, 488(r1), 0, qr0 -/* 8018B4A0 00188400 BF 41 01 C8 */ stmw r26, 0x1c8(r1) -/* 8018B4A4 00188404 FF E0 08 90 */ fmr f31, f1 -/* 8018B4A8 00188408 7C 7D 1B 78 */ mr r29, r3 -/* 8018B4AC 0018840C 7C 9E 23 78 */ mr r30, r4 -/* 8018B4B0 00188410 4B EE E6 69 */ bl Think__10CPatternedFfR13CStateManager -/* 8018B4B4 00188414 C0 3D 06 38 */ lfs f1, 0x638(r29) -/* 8018B4B8 00188418 C0 02 A3 C8 */ lfs f0, lbl_805AC0E8@sda21(r2) -/* 8018B4BC 0018841C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8018B4C0 00188420 40 80 00 0C */ bge lbl_8018B4CC -/* 8018B4C4 00188424 EC 01 F8 2A */ fadds f0, f1, f31 -/* 8018B4C8 00188428 D0 1D 06 38 */ stfs f0, 0x638(r29) -lbl_8018B4CC: -/* 8018B4CC 0018842C 88 1D 04 00 */ lbz r0, 0x400(r29) -/* 8018B4D0 00188430 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 8018B4D4 00188434 41 82 00 48 */ beq lbl_8018B51C -/* 8018B4D8 00188438 C0 3D 06 30 */ lfs f1, 0x630(r29) -/* 8018B4DC 0018843C 38 7D 05 74 */ addi r3, r29, 0x574 -/* 8018B4E0 00188440 C0 62 A3 C0 */ lfs f3, lbl_805AC0E0@sda21(r2) -/* 8018B4E4 00188444 38 81 00 84 */ addi r4, r1, 0x84 -/* 8018B4E8 00188448 C0 1D 06 2C */ lfs f0, 0x62c(r29) -/* 8018B4EC 0018844C C0 5D 06 34 */ lfs f2, 0x634(r29) -/* 8018B4F0 00188450 EC 81 18 2A */ fadds f4, f1, f3 -/* 8018B4F4 00188454 C0 22 A3 D0 */ lfs f1, lbl_805AC0F0@sda21(r2) -/* 8018B4F8 00188458 EC 00 18 2A */ fadds f0, f0, f3 -/* 8018B4FC 0018845C EC 22 08 2A */ fadds f1, f2, f1 -/* 8018B500 00188460 D0 81 00 88 */ stfs f4, 0x88(r1) -/* 8018B504 00188464 D0 01 00 84 */ stfs f0, 0x84(r1) -/* 8018B508 00188468 D0 21 00 8C */ stfs f1, 0x8c(r1) -/* 8018B50C 0018846C 4B FE 9C AD */ bl SetTargetPosition__13CBoneTrackingFRC9CVector3f -/* 8018B510 00188470 FC 20 F8 90 */ fmr f1, f31 -/* 8018B514 00188474 38 7D 05 74 */ addi r3, r29, 0x574 -/* 8018B518 00188478 4B FE A4 91 */ bl Update__13CBoneTrackingFf -lbl_8018B51C: -/* 8018B51C 0018847C C0 3D 06 3C */ lfs f1, 0x63c(r29) -/* 8018B520 00188480 C0 02 A3 C0 */ lfs f0, lbl_805AC0E0@sda21(r2) -/* 8018B524 00188484 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8018B528 00188488 40 81 00 0C */ ble lbl_8018B534 -/* 8018B52C 0018848C EC 01 F8 28 */ fsubs f0, f1, f31 -/* 8018B530 00188490 D0 1D 06 3C */ stfs f0, 0x63c(r29) -lbl_8018B534: -/* 8018B534 00188494 80 7D 00 64 */ lwz r3, 0x64(r29) -/* 8018B538 00188498 80 63 00 10 */ lwz r3, 0x10(r3) -/* 8018B53C 0018849C 4B EA 14 C9 */ bl PreRender__9CAnimDataFv -/* 8018B540 001884A0 88 1D 04 00 */ lbz r0, 0x400(r29) -/* 8018B544 001884A4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 8018B548 001884A8 41 82 00 40 */ beq lbl_8018B588 -/* 8018B54C 001884AC 80 BD 00 64 */ lwz r5, 0x64(r29) -/* 8018B550 001884B0 7F C4 F3 78 */ mr r4, r30 -/* 8018B554 001884B4 81 1D 04 50 */ lwz r8, 0x450(r29) -/* 8018B558 001884B8 38 7D 05 74 */ addi r3, r29, 0x574 -/* 8018B55C 001884BC C0 05 00 00 */ lfs f0, 0(r5) -/* 8018B560 001884C0 38 DD 00 34 */ addi r6, r29, 0x34 -/* 8018B564 001884C4 38 E1 00 78 */ addi r7, r1, 0x78 -/* 8018B568 001884C8 D0 01 00 78 */ stfs f0, 0x78(r1) -/* 8018B56C 001884CC C0 05 00 04 */ lfs f0, 4(r5) -/* 8018B570 001884D0 D0 01 00 7C */ stfs f0, 0x7c(r1) -/* 8018B574 001884D4 C0 05 00 08 */ lfs f0, 8(r5) -/* 8018B578 001884D8 D0 01 00 80 */ stfs f0, 0x80(r1) -/* 8018B57C 001884DC 80 BD 00 64 */ lwz r5, 0x64(r29) -/* 8018B580 001884E0 80 A5 00 10 */ lwz r5, 0x10(r5) -/* 8018B584 001884E4 4B FE A3 8D */ bl PreRender__13CBoneTrackingFRC13CStateManagerR9CAnimDataRC12CTransform4fRC9CVector3fRC15CBodyController -lbl_8018B588: -/* 8018B588 001884E8 FC 20 F8 90 */ fmr f1, f31 -/* 8018B58C 001884EC 80 7D 05 EC */ lwz r3, 0x5ec(r29) -/* 8018B590 001884F0 7F C4 F3 78 */ mr r4, r30 -/* 8018B594 001884F4 38 A0 00 00 */ li r5, 0 -/* 8018B598 001884F8 48 01 BE B9 */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions -/* 8018B59C 001884FC A0 1D 06 76 */ lhz r0, 0x676(r29) -/* 8018B5A0 00188500 7F C3 F3 78 */ mr r3, r30 -/* 8018B5A4 00188504 38 81 00 10 */ addi r4, r1, 0x10 -/* 8018B5A8 00188508 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8018B5AC 0018850C 4B EC 0F C9 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8018B5B0 00188510 7C 7F 1B 79 */ or. r31, r3, r3 -/* 8018B5B4 00188514 41 82 01 D0 */ beq lbl_8018B784 -/* 8018B5B8 00188518 88 1F 00 30 */ lbz r0, 0x30(r31) -/* 8018B5BC 0018851C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8018B5C0 00188520 41 82 01 C4 */ beq lbl_8018B784 -/* 8018B5C4 00188524 C0 1D 06 28 */ lfs f0, 0x628(r29) -/* 8018B5C8 00188528 7F A4 EB 78 */ mr r4, r29 -/* 8018B5CC 0018852C 38 61 01 30 */ addi r3, r1, 0x130 -/* 8018B5D0 00188530 38 BD 05 DC */ addi r5, r29, 0x5dc -/* 8018B5D4 00188534 EC 00 F8 2A */ fadds f0, f0, f31 -/* 8018B5D8 00188538 D0 1D 06 28 */ stfs f0, 0x628(r29) -/* 8018B5DC 0018853C 4B EE D3 9D */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8018B5E0 00188540 38 61 01 90 */ addi r3, r1, 0x190 -/* 8018B5E4 00188544 38 81 01 30 */ addi r4, r1, 0x130 -/* 8018B5E8 00188548 48 18 75 8D */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8018B5EC 0018854C 88 1D 04 00 */ lbz r0, 0x400(r29) -/* 8018B5F0 00188550 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 8018B5F4 00188554 41 82 01 70 */ beq lbl_8018B764 -/* 8018B5F8 00188558 C0 5D 06 28 */ lfs f2, 0x628(r29) -/* 8018B5FC 0018855C C0 22 A3 A0 */ lfs f1, lbl_805AC0C0@sda21(r2) -/* 8018B600 00188560 C0 0D 8E E4 */ lfs f0, lbl_805A7AA4@sda21(r13) -/* 8018B604 00188564 EC 22 08 24 */ fdivs f1, f2, f1 -/* 8018B608 00188568 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8018B60C 0018856C D0 21 00 18 */ stfs f1, 0x18(r1) -/* 8018B610 00188570 40 80 00 0C */ bge lbl_8018B61C -/* 8018B614 00188574 38 A1 00 18 */ addi r5, r1, 0x18 -/* 8018B618 00188578 48 00 00 08 */ b lbl_8018B620 -lbl_8018B61C: -/* 8018B61C 0018857C 38 AD 8E E4 */ addi r5, r13, lbl_805A7AA4@sda21 -lbl_8018B620: -/* 8018B620 00188580 C0 3D 06 1C */ lfs f1, 0x61c(r29) -/* 8018B624 00188584 38 61 00 44 */ addi r3, r1, 0x44 -/* 8018B628 00188588 C0 FD 06 10 */ lfs f7, 0x610(r29) -/* 8018B62C 0018858C 38 81 00 38 */ addi r4, r1, 0x38 -/* 8018B630 00188590 C0 1D 06 20 */ lfs f0, 0x620(r29) -/* 8018B634 00188594 C1 3D 06 14 */ lfs f9, 0x614(r29) -/* 8018B638 00188598 EC 81 38 28 */ fsubs f4, f1, f7 -/* 8018B63C 0018859C C0 45 00 00 */ lfs f2, 0(r5) -/* 8018B640 001885A0 EC 60 48 28 */ fsubs f3, f0, f9 -/* 8018B644 001885A4 C0 3D 06 24 */ lfs f1, 0x624(r29) -/* 8018B648 001885A8 C1 5D 06 18 */ lfs f10, 0x618(r29) -/* 8018B64C 001885AC EC 02 01 32 */ fmuls f0, f2, f4 -/* 8018B650 001885B0 C0 C2 A3 D4 */ lfs f6, lbl_805AC0F4@sda21(r2) -/* 8018B654 001885B4 EC A1 50 28 */ fsubs f5, f1, f10 -/* 8018B658 001885B8 EC 82 00 F2 */ fmuls f4, f2, f3 -/* 8018B65C 001885BC C1 01 01 BC */ lfs f8, 0x1bc(r1) -/* 8018B660 001885C0 EC 27 00 2A */ fadds f1, f7, f0 -/* 8018B664 001885C4 C0 61 01 9C */ lfs f3, 0x19c(r1) -/* 8018B668 001885C8 EC 02 01 72 */ fmuls f0, f2, f5 -/* 8018B66C 001885CC C0 41 01 94 */ lfs f2, 0x194(r1) -/* 8018B670 001885D0 EC A1 18 28 */ fsubs f5, f1, f3 -/* 8018B674 001885D4 C0 21 01 A4 */ lfs f1, 0x1a4(r1) -/* 8018B678 001885D8 EC 6A 00 2A */ fadds f3, f10, f0 -/* 8018B67C 001885DC C0 01 01 B4 */ lfs f0, 0x1b4(r1) -/* 8018B680 001885E0 EC 89 20 2A */ fadds f4, f9, f4 -/* 8018B684 001885E4 C0 E1 01 AC */ lfs f7, 0x1ac(r1) -/* 8018B688 001885E8 EC 63 40 28 */ fsubs f3, f3, f8 -/* 8018B68C 001885EC D0 C1 00 14 */ stfs f6, 0x14(r1) -/* 8018B690 001885F0 EC 84 38 28 */ fsubs f4, f4, f7 -/* 8018B694 001885F4 D0 A1 00 38 */ stfs f5, 0x38(r1) -/* 8018B698 001885F8 D0 81 00 3C */ stfs f4, 0x3c(r1) -/* 8018B69C 001885FC D0 61 00 40 */ stfs f3, 0x40(r1) -/* 8018B6A0 00188600 D0 41 00 50 */ stfs f2, 0x50(r1) -/* 8018B6A4 00188604 D0 21 00 54 */ stfs f1, 0x54(r1) -/* 8018B6A8 00188608 D0 01 00 58 */ stfs f0, 0x58(r1) -/* 8018B6AC 0018860C 48 18 87 25 */ bl __ct__11CUnitVectorFRC9CVector3f -/* 8018B6B0 00188610 7C 7C 1B 78 */ mr r28, r3 -/* 8018B6B4 00188614 38 61 00 5C */ addi r3, r1, 0x5c -/* 8018B6B8 00188618 38 81 00 50 */ addi r4, r1, 0x50 -/* 8018B6BC 0018861C 48 18 87 15 */ bl __ct__11CUnitVectorFRC9CVector3f -/* 8018B6C0 00188620 7C 64 1B 78 */ mr r4, r3 -/* 8018B6C4 00188624 7F 85 E3 78 */ mr r5, r28 -/* 8018B6C8 00188628 38 61 00 68 */ addi r3, r1, 0x68 -/* 8018B6CC 0018862C 38 C1 00 14 */ addi r6, r1, 0x14 -/* 8018B6D0 00188630 48 18 59 51 */ bl ClampedRotateTo__11CQuaternionFRC10UnitVectorRC10UnitVectorRC9CRelAngle -/* 8018B6D4 00188634 C0 61 00 68 */ lfs f3, 0x68(r1) -/* 8018B6D8 00188638 38 61 00 A0 */ addi r3, r1, 0xa0 -/* 8018B6DC 0018863C C0 41 00 6C */ lfs f2, 0x6c(r1) -/* 8018B6E0 00188640 38 81 01 90 */ addi r4, r1, 0x190 -/* 8018B6E4 00188644 C0 21 00 70 */ lfs f1, 0x70(r1) -/* 8018B6E8 00188648 C0 01 00 74 */ lfs f0, 0x74(r1) -/* 8018B6EC 0018864C D0 61 00 90 */ stfs f3, 0x90(r1) -/* 8018B6F0 00188650 D0 41 00 94 */ stfs f2, 0x94(r1) -/* 8018B6F4 00188654 D0 21 00 98 */ stfs f1, 0x98(r1) -/* 8018B6F8 00188658 D0 01 00 9C */ stfs f0, 0x9c(r1) -/* 8018B6FC 0018865C 48 18 75 45 */ bl GetRotation__12CTransform4fCFv -/* 8018B700 00188660 38 61 00 D0 */ addi r3, r1, 0xd0 -/* 8018B704 00188664 38 81 00 90 */ addi r4, r1, 0x90 -/* 8018B708 00188668 48 18 68 B1 */ bl BuildTransform4f__11CQuaternionCFv -/* 8018B70C 0018866C 38 61 01 00 */ addi r3, r1, 0x100 -/* 8018B710 00188670 38 81 00 D0 */ addi r4, r1, 0xd0 -/* 8018B714 00188674 38 A1 00 A0 */ addi r5, r1, 0xa0 -/* 8018B718 00188678 48 18 72 39 */ bl __ml__12CTransform4fCFRC12CTransform4f -/* 8018B71C 0018867C 38 61 01 60 */ addi r3, r1, 0x160 -/* 8018B720 00188680 38 81 01 00 */ addi r4, r1, 0x100 -/* 8018B724 00188684 48 18 74 51 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8018B728 00188688 C0 61 01 BC */ lfs f3, 0x1bc(r1) -/* 8018B72C 0018868C 7F E3 FB 78 */ mr r3, r31 -/* 8018B730 00188690 C0 41 01 AC */ lfs f2, 0x1ac(r1) -/* 8018B734 00188694 FC 20 F8 90 */ fmr f1, f31 -/* 8018B738 00188698 C0 01 01 9C */ lfs f0, 0x19c(r1) -/* 8018B73C 0018869C 7F C5 F3 78 */ mr r5, r30 -/* 8018B740 001886A0 D0 41 01 7C */ stfs f2, 0x17c(r1) -/* 8018B744 001886A4 38 81 01 60 */ addi r4, r1, 0x160 -/* 8018B748 001886A8 D0 01 01 6C */ stfs f0, 0x16c(r1) -/* 8018B74C 001886AC D0 61 01 8C */ stfs f3, 0x18c(r1) -/* 8018B750 001886B0 81 9F 00 00 */ lwz r12, 0(r31) -/* 8018B754 001886B4 81 8C 00 70 */ lwz r12, 0x70(r12) -/* 8018B758 001886B8 7D 89 03 A6 */ mtctr r12 -/* 8018B75C 001886BC 4E 80 04 21 */ bctrl -/* 8018B760 001886C0 48 00 00 24 */ b lbl_8018B784 -lbl_8018B764: -/* 8018B764 001886C4 7F E3 FB 78 */ mr r3, r31 -/* 8018B768 001886C8 FC 20 F8 90 */ fmr f1, f31 -/* 8018B76C 001886CC 81 9F 00 00 */ lwz r12, 0(r31) -/* 8018B770 001886D0 7F C5 F3 78 */ mr r5, r30 -/* 8018B774 001886D4 38 81 01 90 */ addi r4, r1, 0x190 -/* 8018B778 001886D8 81 8C 00 70 */ lwz r12, 0x70(r12) -/* 8018B77C 001886DC 7D 89 03 A6 */ mtctr r12 -/* 8018B780 001886E0 4E 80 04 21 */ bctrl -lbl_8018B784: -/* 8018B784 001886E4 A0 1D 06 00 */ lhz r0, 0x600(r29) -/* 8018B788 001886E8 7F C3 F3 78 */ mr r3, r30 -/* 8018B78C 001886EC 38 81 00 0C */ addi r4, r1, 0xc -/* 8018B790 001886F0 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8018B794 001886F4 4B EC 0D E1 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8018B798 001886F8 7C 64 1B 78 */ mr r4, r3 -/* 8018B79C 001886FC 38 61 00 24 */ addi r3, r1, 0x24 -/* 8018B7A0 00188700 4B F2 3B AD */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" -/* 8018B7A4 00188704 83 63 00 04 */ lwz r27, 4(r3) -/* 8018B7A8 00188708 7F C3 F3 78 */ mr r3, r30 -/* 8018B7AC 0018870C A0 1D 06 02 */ lhz r0, 0x602(r29) -/* 8018B7B0 00188710 38 81 00 08 */ addi r4, r1, 8 -/* 8018B7B4 00188714 B0 01 00 08 */ sth r0, 8(r1) -/* 8018B7B8 00188718 4B EC 0D BD */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8018B7BC 0018871C 7C 64 1B 78 */ mr r4, r3 -/* 8018B7C0 00188720 38 61 00 1C */ addi r3, r1, 0x1c -/* 8018B7C4 00188724 4B F2 3B 89 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" -/* 8018B7C8 00188728 28 1B 00 00 */ cmplwi r27, 0 -/* 8018B7CC 0018872C 83 43 00 04 */ lwz r26, 4(r3) -/* 8018B7D0 00188730 41 82 01 68 */ beq lbl_8018B938 -/* 8018B7D4 00188734 28 1A 00 00 */ cmplwi r26, 0 -/* 8018B7D8 00188738 41 82 01 60 */ beq lbl_8018B938 -/* 8018B7DC 0018873C 7F 43 D3 78 */ mr r3, r26 -/* 8018B7E0 00188740 7F C4 F3 78 */ mr r4, r30 -/* 8018B7E4 00188744 81 9A 00 00 */ lwz r12, 0(r26) -/* 8018B7E8 00188748 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8018B7EC 0018874C 7D 89 03 A6 */ mtctr r12 -/* 8018B7F0 00188750 4E 80 04 21 */ bctrl -/* 8018B7F4 00188754 C3 E3 00 00 */ lfs f31, 0(r3) -/* 8018B7F8 00188758 7F 63 DB 78 */ mr r3, r27 -/* 8018B7FC 0018875C 81 9B 00 00 */ lwz r12, 0(r27) -/* 8018B800 00188760 7F C4 F3 78 */ mr r4, r30 -/* 8018B804 00188764 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8018B808 00188768 7D 89 03 A6 */ mtctr r12 -/* 8018B80C 0018876C 4E 80 04 21 */ bctrl -/* 8018B810 00188770 C0 03 00 00 */ lfs f0, 0(r3) -/* 8018B814 00188774 FC 00 F8 40 */ fcmpo cr0, f0, f31 -/* 8018B818 00188778 40 80 00 90 */ bge lbl_8018B8A8 -/* 8018B81C 0018877C 7F 63 DB 78 */ mr r3, r27 -/* 8018B820 00188780 7F C4 F3 78 */ mr r4, r30 -/* 8018B824 00188784 81 9B 00 00 */ lwz r12, 0(r27) -/* 8018B828 00188788 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8018B82C 0018878C 7D 89 03 A6 */ mtctr r12 -/* 8018B830 00188790 4E 80 04 21 */ bctrl -/* 8018B834 00188794 7C 7C 1B 78 */ mr r28, r3 -/* 8018B838 00188798 7F A3 EB 78 */ mr r3, r29 -/* 8018B83C 0018879C 81 9D 00 00 */ lwz r12, 0(r29) -/* 8018B840 001887A0 7F C4 F3 78 */ mr r4, r30 -/* 8018B844 001887A4 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8018B848 001887A8 7D 89 03 A6 */ mtctr r12 -/* 8018B84C 001887AC 4E 80 04 21 */ bctrl -/* 8018B850 001887B0 C0 1C 00 00 */ lfs f0, 0(r28) -/* 8018B854 001887B4 7F C4 F3 78 */ mr r4, r30 -/* 8018B858 001887B8 D0 03 00 00 */ stfs f0, 0(r3) -/* 8018B85C 001887BC C0 1C 00 04 */ lfs f0, 4(r28) -/* 8018B860 001887C0 D0 03 00 04 */ stfs f0, 4(r3) -/* 8018B864 001887C4 7F 63 DB 78 */ mr r3, r27 -/* 8018B868 001887C8 81 9B 00 00 */ lwz r12, 0(r27) -/* 8018B86C 001887CC 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8018B870 001887D0 7D 89 03 A6 */ mtctr r12 -/* 8018B874 001887D4 4E 80 04 21 */ bctrl -/* 8018B878 001887D8 7C 7C 1B 78 */ mr r28, r3 -/* 8018B87C 001887DC 7F 43 D3 78 */ mr r3, r26 -/* 8018B880 001887E0 81 9A 00 00 */ lwz r12, 0(r26) -/* 8018B884 001887E4 7F C4 F3 78 */ mr r4, r30 -/* 8018B888 001887E8 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8018B88C 001887EC 7D 89 03 A6 */ mtctr r12 -/* 8018B890 001887F0 4E 80 04 21 */ bctrl -/* 8018B894 001887F4 C0 1C 00 00 */ lfs f0, 0(r28) -/* 8018B898 001887F8 D0 03 00 00 */ stfs f0, 0(r3) -/* 8018B89C 001887FC C0 1C 00 04 */ lfs f0, 4(r28) -/* 8018B8A0 00188800 D0 03 00 04 */ stfs f0, 4(r3) -/* 8018B8A4 00188804 48 00 00 94 */ b lbl_8018B938 -lbl_8018B8A8: -/* 8018B8A8 00188808 28 1A 00 00 */ cmplwi r26, 0 -/* 8018B8AC 0018880C 41 82 00 8C */ beq lbl_8018B938 -/* 8018B8B0 00188810 7F 43 D3 78 */ mr r3, r26 -/* 8018B8B4 00188814 7F C4 F3 78 */ mr r4, r30 -/* 8018B8B8 00188818 81 9A 00 00 */ lwz r12, 0(r26) -/* 8018B8BC 0018881C 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8018B8C0 00188820 7D 89 03 A6 */ mtctr r12 -/* 8018B8C4 00188824 4E 80 04 21 */ bctrl -/* 8018B8C8 00188828 7C 7C 1B 78 */ mr r28, r3 -/* 8018B8CC 0018882C 7F A3 EB 78 */ mr r3, r29 -/* 8018B8D0 00188830 81 9D 00 00 */ lwz r12, 0(r29) -/* 8018B8D4 00188834 7F C4 F3 78 */ mr r4, r30 -/* 8018B8D8 00188838 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8018B8DC 0018883C 7D 89 03 A6 */ mtctr r12 -/* 8018B8E0 00188840 4E 80 04 21 */ bctrl -/* 8018B8E4 00188844 C0 1C 00 00 */ lfs f0, 0(r28) -/* 8018B8E8 00188848 7F C4 F3 78 */ mr r4, r30 -/* 8018B8EC 0018884C D0 03 00 00 */ stfs f0, 0(r3) -/* 8018B8F0 00188850 C0 1C 00 04 */ lfs f0, 4(r28) -/* 8018B8F4 00188854 D0 03 00 04 */ stfs f0, 4(r3) -/* 8018B8F8 00188858 7F 43 D3 78 */ mr r3, r26 -/* 8018B8FC 0018885C 81 9A 00 00 */ lwz r12, 0(r26) -/* 8018B900 00188860 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8018B904 00188864 7D 89 03 A6 */ mtctr r12 -/* 8018B908 00188868 4E 80 04 21 */ bctrl -/* 8018B90C 0018886C 7C 7C 1B 78 */ mr r28, r3 -/* 8018B910 00188870 7F 63 DB 78 */ mr r3, r27 -/* 8018B914 00188874 81 9B 00 00 */ lwz r12, 0(r27) -/* 8018B918 00188878 7F C4 F3 78 */ mr r4, r30 -/* 8018B91C 0018887C 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8018B920 00188880 7D 89 03 A6 */ mtctr r12 -/* 8018B924 00188884 4E 80 04 21 */ bctrl -/* 8018B928 00188888 C0 1C 00 00 */ lfs f0, 0(r28) -/* 8018B92C 0018888C D0 03 00 00 */ stfs f0, 0(r3) -/* 8018B930 00188890 C0 1C 00 04 */ lfs f0, 4(r28) -/* 8018B934 00188894 D0 03 00 04 */ stfs f0, 4(r3) -lbl_8018B938: -/* 8018B938 00188898 7F A3 EB 78 */ mr r3, r29 -/* 8018B93C 0018889C 7F C4 F3 78 */ mr r4, r30 -/* 8018B940 001888A0 81 9D 00 00 */ lwz r12, 0(r29) -/* 8018B944 001888A4 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8018B948 001888A8 7D 89 03 A6 */ mtctr r12 -/* 8018B94C 001888AC 4E 80 04 21 */ bctrl -/* 8018B950 001888B0 C0 23 00 00 */ lfs f1, 0(r3) -/* 8018B954 001888B4 C0 02 A3 C0 */ lfs f0, lbl_805AC0E0@sda21(r2) -/* 8018B958 001888B8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8018B95C 001888BC 4C 40 13 82 */ cror 2, 0, 2 -/* 8018B960 001888C0 40 82 00 B8 */ bne lbl_8018BA18 -/* 8018B964 001888C4 88 1D 04 00 */ lbz r0, 0x400(r29) -/* 8018B968 001888C8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 8018B96C 001888CC 41 82 00 AC */ beq lbl_8018BA18 -/* 8018B970 001888D0 28 1F 00 00 */ cmplwi r31, 0 -/* 8018B974 001888D4 41 82 00 20 */ beq lbl_8018B994 -/* 8018B978 001888D8 7F E3 FB 78 */ mr r3, r31 -/* 8018B97C 001888DC 7F C4 F3 78 */ mr r4, r30 -/* 8018B980 001888E0 81 9F 00 00 */ lwz r12, 0(r31) -/* 8018B984 001888E4 38 A0 00 01 */ li r5, 1 -/* 8018B988 001888E8 81 8C 00 74 */ lwz r12, 0x74(r12) -/* 8018B98C 001888EC 7D 89 03 A6 */ mtctr r12 -/* 8018B990 001888F0 4E 80 04 21 */ bctrl -lbl_8018B994: -/* 8018B994 001888F4 80 7D 04 50 */ lwz r3, 0x450(r29) -/* 8018B998 001888F8 C0 22 A3 9C */ lfs f1, lbl_805AC0BC@sda21(r2) -/* 8018B99C 001888FC 4B FA EE F1 */ bl SetPlaybackRate__15CBodyControllerFf -/* 8018B9A0 00188900 38 7D 00 34 */ addi r3, r29, 0x34 -/* 8018B9A4 00188904 38 9D 06 44 */ addi r4, r29, 0x644 -/* 8018B9A8 00188908 48 18 71 99 */ bl __as__12CTransform4fFRC12CTransform4f -/* 8018B9AC 0018890C 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 8018B9B0 00188910 38 A0 00 01 */ li r5, 1 -/* 8018B9B4 00188914 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b -/* 8018B9B8 00188918 7F A3 EB 78 */ mr r3, r29 -/* 8018B9BC 0018891C 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 8018B9C0 00188920 7F C4 F3 78 */ mr r4, r30 -/* 8018B9C4 00188924 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 8018B9C8 00188928 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c -/* 8018B9CC 0018892C 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 8018B9D0 00188930 88 1D 00 E4 */ lbz r0, 0xe4(r29) -/* 8018B9D4 00188934 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d -/* 8018B9D8 00188938 98 1D 00 E4 */ stb r0, 0xe4(r29) -/* 8018B9DC 0018893C 4B FF E4 7D */ bl StopRumble__13CNewIntroBossFR13CStateManager -/* 8018B9E0 00188940 C0 5D 00 58 */ lfs f2, 0x58(r29) -/* 8018B9E4 00188944 7F A3 EB 78 */ mr r3, r29 -/* 8018B9E8 00188948 C0 3D 00 48 */ lfs f1, 0x48(r29) -/* 8018B9EC 0018894C 7F C4 F3 78 */ mr r4, r30 -/* 8018B9F0 00188950 C0 1D 00 38 */ lfs f0, 0x38(r29) -/* 8018B9F4 00188954 38 A1 00 2C */ addi r5, r1, 0x2c -/* 8018B9F8 00188958 38 C0 00 14 */ li r6, 0x14 -/* 8018B9FC 0018895C D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 8018BA00 00188960 D0 21 00 30 */ stfs f1, 0x30(r1) -/* 8018BA04 00188964 D0 41 00 34 */ stfs f2, 0x34(r1) -/* 8018BA08 00188968 81 9D 00 00 */ lwz r12, 0(r29) -/* 8018BA0C 0018896C 81 8C 00 84 */ lwz r12, 0x84(r12) -/* 8018BA10 00188970 7D 89 03 A6 */ mtctr r12 -/* 8018BA14 00188974 4E 80 04 21 */ bctrl -lbl_8018BA18: -/* 8018BA18 00188978 E3 E1 01 E8 */ psq_l f31, 488(r1), 0, qr0 -/* 8018BA1C 0018897C CB E1 01 E0 */ lfd f31, 0x1e0(r1) -/* 8018BA20 00188980 BB 41 01 C8 */ lmw r26, 0x1c8(r1) -/* 8018BA24 00188984 80 01 01 F4 */ lwz r0, 0x1f4(r1) -/* 8018BA28 00188988 7C 08 03 A6 */ mtlr r0 -/* 8018BA2C 0018898C 38 21 01 F0 */ addi r1, r1, 0x1f0 -/* 8018BA30 00188990 4E 80 00 20 */ blr - -.global GetTouchBounds__13CNewIntroBossCFv -GetTouchBounds__13CNewIntroBossCFv: -/* 8018BA34 00188994 38 00 00 00 */ li r0, 0 -/* 8018BA38 00188998 98 03 00 18 */ stb r0, 0x18(r3) -/* 8018BA3C 0018899C 4E 80 00 20 */ blr - -.global DoUserAnimEvent__13CNewIntroBossFR13CStateManagerRC13CInt32POINode14EUserEventType -DoUserAnimEvent__13CNewIntroBossFR13CStateManagerRC13CInt32POINode14EUserEventType: -/* 8018BA40 001889A0 94 21 FE F0 */ stwu r1, -0x110(r1) -/* 8018BA44 001889A4 7C 08 02 A6 */ mflr r0 -/* 8018BA48 001889A8 90 01 01 14 */ stw r0, 0x114(r1) -/* 8018BA4C 001889AC DB E1 01 00 */ stfd f31, 0x100(r1) -/* 8018BA50 001889B0 F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 -/* 8018BA54 001889B4 93 E1 00 FC */ stw r31, 0xfc(r1) -/* 8018BA58 001889B8 93 C1 00 F8 */ stw r30, 0xf8(r1) -/* 8018BA5C 001889BC 93 A1 00 F4 */ stw r29, 0xf4(r1) -/* 8018BA60 001889C0 93 81 00 F0 */ stw r28, 0xf0(r1) -/* 8018BA64 001889C4 7C DF 33 78 */ mr r31, r6 -/* 8018BA68 001889C8 FF E0 08 90 */ fmr f31, f1 -/* 8018BA6C 001889CC 2C 1F 00 08 */ cmpwi r31, 8 -/* 8018BA70 001889D0 7C 7C 1B 78 */ mr r28, r3 -/* 8018BA74 001889D4 7C 9D 23 78 */ mr r29, r4 -/* 8018BA78 001889D8 7C BE 2B 78 */ mr r30, r5 -/* 8018BA7C 001889DC 38 00 00 00 */ li r0, 0 -/* 8018BA80 001889E0 41 82 00 20 */ beq lbl_8018BAA0 -/* 8018BA84 001889E4 40 80 00 10 */ bge lbl_8018BA94 -/* 8018BA88 001889E8 2C 1F 00 00 */ cmpwi r31, 0 -/* 8018BA8C 001889EC 41 82 02 08 */ beq lbl_8018BC94 -/* 8018BA90 001889F0 48 00 02 04 */ b lbl_8018BC94 -lbl_8018BA94: -/* 8018BA94 001889F4 2C 1F 00 0A */ cmpwi r31, 0xa -/* 8018BA98 001889F8 40 80 01 FC */ bge lbl_8018BC94 -/* 8018BA9C 001889FC 48 00 01 90 */ b lbl_8018BC2C -lbl_8018BAA0: -/* 8018BAA0 00188A00 38 7C 05 DC */ addi r3, r28, 0x5dc -/* 8018BAA4 00188A04 38 9E 00 3C */ addi r4, r30, 0x3c -/* 8018BAA8 00188A08 48 1B 22 B5 */ bl "assign__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8018BAAC 00188A0C 7F 84 E3 78 */ mr r4, r28 -/* 8018BAB0 00188A10 38 61 00 58 */ addi r3, r1, 0x58 -/* 8018BAB4 00188A14 38 BC 05 DC */ addi r5, r28, 0x5dc -/* 8018BAB8 00188A18 4B EE CE C1 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8018BABC 00188A1C 38 61 00 B8 */ addi r3, r1, 0xb8 -/* 8018BAC0 00188A20 38 81 00 58 */ addi r4, r1, 0x58 -/* 8018BAC4 00188A24 48 18 70 B1 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8018BAC8 00188A28 7F 84 E3 78 */ mr r4, r28 -/* 8018BACC 00188A2C 7F A5 EB 78 */ mr r5, r29 -/* 8018BAD0 00188A30 38 61 00 1C */ addi r3, r1, 0x1c -/* 8018BAD4 00188A34 48 00 02 09 */ bl PlayerPos__13CNewIntroBossCFRC13CStateManager -/* 8018BAD8 00188A38 C0 81 00 1C */ lfs f4, 0x1c(r1) -/* 8018BADC 00188A3C 7F 83 E3 78 */ mr r3, r28 -/* 8018BAE0 00188A40 C0 41 00 20 */ lfs f2, 0x20(r1) -/* 8018BAE4 00188A44 7F A4 EB 78 */ mr r4, r29 -/* 8018BAE8 00188A48 C0 61 00 24 */ lfs f3, 0x24(r1) -/* 8018BAEC 00188A4C C0 02 A3 C0 */ lfs f0, lbl_805AC0E0@sda21(r2) -/* 8018BAF0 00188A50 D0 9C 06 04 */ stfs f4, 0x604(r28) -/* 8018BAF4 00188A54 D0 5C 06 08 */ stfs f2, 0x608(r28) -/* 8018BAF8 00188A58 D0 7C 06 0C */ stfs f3, 0x60c(r28) -/* 8018BAFC 00188A5C C0 3C 06 04 */ lfs f1, 0x604(r28) -/* 8018BB00 00188A60 D0 3C 06 10 */ stfs f1, 0x610(r28) -/* 8018BB04 00188A64 C0 3C 06 08 */ lfs f1, 0x608(r28) -/* 8018BB08 00188A68 D0 3C 06 14 */ stfs f1, 0x614(r28) -/* 8018BB0C 00188A6C C0 3C 06 0C */ lfs f1, 0x60c(r28) -/* 8018BB10 00188A70 D0 3C 06 18 */ stfs f1, 0x618(r28) -/* 8018BB14 00188A74 C0 3C 06 10 */ lfs f1, 0x610(r28) -/* 8018BB18 00188A78 D0 3C 06 2C */ stfs f1, 0x62c(r28) -/* 8018BB1C 00188A7C C0 3C 06 14 */ lfs f1, 0x614(r28) -/* 8018BB20 00188A80 D0 3C 06 30 */ stfs f1, 0x630(r28) -/* 8018BB24 00188A84 C0 3C 06 18 */ lfs f1, 0x618(r28) -/* 8018BB28 00188A88 D0 3C 06 34 */ stfs f1, 0x634(r28) -/* 8018BB2C 00188A8C D0 9C 06 1C */ stfs f4, 0x61c(r28) -/* 8018BB30 00188A90 D0 5C 06 20 */ stfs f2, 0x620(r28) -/* 8018BB34 00188A94 D0 7C 06 24 */ stfs f3, 0x624(r28) -/* 8018BB38 00188A98 D0 1C 06 28 */ stfs f0, 0x628(r28) -/* 8018BB3C 00188A9C 48 00 06 79 */ bl GetLocoForHealth__13CNewIntroBossCFRC13CStateManager -/* 8018BB40 00188AA0 2C 03 00 03 */ cmpwi r3, 3 -/* 8018BB44 00188AA4 40 82 00 10 */ bne lbl_8018BB54 -/* 8018BB48 00188AA8 A0 1C 05 D8 */ lhz r0, 0x5d8(r28) -/* 8018BB4C 00188AAC B0 1C 06 76 */ sth r0, 0x676(r28) -/* 8018BB50 00188AB0 48 00 00 2C */ b lbl_8018BB7C -lbl_8018BB54: -/* 8018BB54 00188AB4 7F 83 E3 78 */ mr r3, r28 -/* 8018BB58 00188AB8 7F A4 EB 78 */ mr r4, r29 -/* 8018BB5C 00188ABC 48 00 06 59 */ bl GetLocoForHealth__13CNewIntroBossCFRC13CStateManager -/* 8018BB60 00188AC0 2C 03 00 02 */ cmpwi r3, 2 -/* 8018BB64 00188AC4 40 82 00 10 */ bne lbl_8018BB74 -/* 8018BB68 00188AC8 A0 1C 05 D6 */ lhz r0, 0x5d6(r28) -/* 8018BB6C 00188ACC B0 1C 06 76 */ sth r0, 0x676(r28) -/* 8018BB70 00188AD0 48 00 00 0C */ b lbl_8018BB7C -lbl_8018BB74: -/* 8018BB74 00188AD4 A0 1C 05 D4 */ lhz r0, 0x5d4(r28) -/* 8018BB78 00188AD8 B0 1C 06 76 */ sth r0, 0x676(r28) -lbl_8018BB7C: -/* 8018BB7C 00188ADC C0 41 00 C4 */ lfs f2, 0xc4(r1) -/* 8018BB80 00188AE0 3C 60 80 5A */ lis r3, lbl_805A66F4@ha -/* 8018BB84 00188AE4 C0 21 00 D4 */ lfs f1, 0xd4(r1) -/* 8018BB88 00188AE8 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l -/* 8018BB8C 00188AEC C0 01 00 E4 */ lfs f0, 0xe4(r1) -/* 8018BB90 00188AF0 38 61 00 28 */ addi r3, r1, 0x28 -/* 8018BB94 00188AF4 D0 41 00 10 */ stfs f2, 0x10(r1) -/* 8018BB98 00188AF8 38 81 00 10 */ addi r4, r1, 0x10 -/* 8018BB9C 00188AFC 38 BC 06 10 */ addi r5, r28, 0x610 -/* 8018BBA0 00188B00 D0 21 00 14 */ stfs f1, 0x14(r1) -/* 8018BBA4 00188B04 D0 01 00 18 */ stfs f0, 0x18(r1) -/* 8018BBA8 00188B08 48 18 7F 69 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f -/* 8018BBAC 00188B0C 38 61 00 88 */ addi r3, r1, 0x88 -/* 8018BBB0 00188B10 38 81 00 28 */ addi r4, r1, 0x28 -/* 8018BBB4 00188B14 48 18 6F C1 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8018BBB8 00188B18 A0 1C 06 76 */ lhz r0, 0x676(r28) -/* 8018BBBC 00188B1C 7F A3 EB 78 */ mr r3, r29 -/* 8018BBC0 00188B20 38 81 00 0C */ addi r4, r1, 0xc -/* 8018BBC4 00188B24 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8018BBC8 00188B28 4B EC 09 AD */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8018BBCC 00188B2C 28 03 00 00 */ cmplwi r3, 0 -/* 8018BBD0 00188B30 41 82 00 54 */ beq lbl_8018BC24 -/* 8018BBD4 00188B34 88 03 00 30 */ lbz r0, 0x30(r3) -/* 8018BBD8 00188B38 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8018BBDC 00188B3C 40 82 00 48 */ bne lbl_8018BC24 -/* 8018BBE0 00188B40 81 83 00 00 */ lwz r12, 0(r3) -/* 8018BBE4 00188B44 7F A5 EB 78 */ mr r5, r29 -/* 8018BBE8 00188B48 38 81 00 88 */ addi r4, r1, 0x88 -/* 8018BBEC 00188B4C 38 C0 00 00 */ li r6, 0 -/* 8018BBF0 00188B50 81 8C 00 78 */ lwz r12, 0x78(r12) -/* 8018BBF4 00188B54 7D 89 03 A6 */ mtctr r12 -/* 8018BBF8 00188B58 4E 80 04 21 */ bctrl -/* 8018BBFC 00188B5C A8 1C 06 74 */ lha r0, 0x674(r28) -/* 8018BC00 00188B60 2C 00 FF FF */ cmpwi r0, -1 -/* 8018BC04 00188B64 40 82 00 20 */ bne lbl_8018BC24 -/* 8018BC08 00188B68 80 7D 08 8C */ lwz r3, 0x88c(r29) -/* 8018BC0C 00188B6C 7F A4 EB 78 */ mr r4, r29 -/* 8018BC10 00188B70 C0 22 A3 9C */ lfs f1, lbl_805AC0BC@sda21(r2) -/* 8018BC14 00188B74 38 A0 00 13 */ li r5, 0x13 -/* 8018BC18 00188B78 38 C0 00 02 */ li r6, 2 -/* 8018BC1C 00188B7C 48 0A 26 29 */ bl Rumble__14CRumbleManagerFR13CStateManager11ERumbleFxIdf15ERumblePriority -/* 8018BC20 00188B80 B0 7C 06 74 */ sth r3, 0x674(r28) -lbl_8018BC24: -/* 8018BC24 00188B84 38 00 00 01 */ li r0, 1 -/* 8018BC28 00188B88 48 00 00 6C */ b lbl_8018BC94 -lbl_8018BC2C: -/* 8018BC2C 00188B8C A0 1C 06 76 */ lhz r0, 0x676(r28) -/* 8018BC30 00188B90 7F A3 EB 78 */ mr r3, r29 -/* 8018BC34 00188B94 38 81 00 08 */ addi r4, r1, 8 -/* 8018BC38 00188B98 B0 01 00 08 */ sth r0, 8(r1) -/* 8018BC3C 00188B9C 4B EC 09 39 */ bl ObjectById__13CStateManagerF9TUniqueId -/* 8018BC40 00188BA0 28 03 00 00 */ cmplwi r3, 0 -/* 8018BC44 00188BA4 41 82 00 1C */ beq lbl_8018BC60 -/* 8018BC48 00188BA8 81 83 00 00 */ lwz r12, 0(r3) -/* 8018BC4C 00188BAC 7F A4 EB 78 */ mr r4, r29 -/* 8018BC50 00188BB0 38 A0 00 00 */ li r5, 0 -/* 8018BC54 00188BB4 81 8C 00 74 */ lwz r12, 0x74(r12) -/* 8018BC58 00188BB8 7D 89 03 A6 */ mtctr r12 -/* 8018BC5C 00188BBC 4E 80 04 21 */ bctrl -lbl_8018BC60: -/* 8018BC60 00188BC0 7F 83 E3 78 */ mr r3, r28 -/* 8018BC64 00188BC4 7F A4 EB 78 */ mr r4, r29 -/* 8018BC68 00188BC8 4B FF E1 F1 */ bl StopRumble__13CNewIntroBossFR13CStateManager -/* 8018BC6C 00188BCC 7F 83 E3 78 */ mr r3, r28 -/* 8018BC70 00188BD0 7F A4 EB 78 */ mr r4, r29 -/* 8018BC74 00188BD4 48 00 04 31 */ bl GetNextAttackTime__13CNewIntroBossCFR13CStateManager -/* 8018BC78 00188BD8 D0 3C 06 3C */ stfs f1, 0x63c(r28) -/* 8018BC7C 00188BDC 7F 83 E3 78 */ mr r3, r28 -/* 8018BC80 00188BE0 7F A5 EB 78 */ mr r5, r29 -/* 8018BC84 00188BE4 38 80 00 0A */ li r4, 0xa -/* 8018BC88 00188BE8 38 C0 FF FF */ li r6, -1 -/* 8018BC8C 00188BEC 4B EC 54 35 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -/* 8018BC90 00188BF0 38 00 00 01 */ li r0, 1 -lbl_8018BC94: -/* 8018BC94 00188BF4 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 8018BC98 00188BF8 40 82 00 1C */ bne lbl_8018BCB4 -/* 8018BC9C 00188BFC FC 20 F8 90 */ fmr f1, f31 -/* 8018BCA0 00188C00 7F 83 E3 78 */ mr r3, r28 -/* 8018BCA4 00188C04 7F A4 EB 78 */ mr r4, r29 -/* 8018BCA8 00188C08 7F C5 F3 78 */ mr r5, r30 -/* 8018BCAC 00188C0C 7F E6 FB 78 */ mr r6, r31 -/* 8018BCB0 00188C10 4B EE D2 01 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType -lbl_8018BCB4: -/* 8018BCB4 00188C14 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 -/* 8018BCB8 00188C18 80 01 01 14 */ lwz r0, 0x114(r1) -/* 8018BCBC 00188C1C CB E1 01 00 */ lfd f31, 0x100(r1) -/* 8018BCC0 00188C20 83 E1 00 FC */ lwz r31, 0xfc(r1) -/* 8018BCC4 00188C24 83 C1 00 F8 */ lwz r30, 0xf8(r1) -/* 8018BCC8 00188C28 83 A1 00 F4 */ lwz r29, 0xf4(r1) -/* 8018BCCC 00188C2C 83 81 00 F0 */ lwz r28, 0xf0(r1) -/* 8018BCD0 00188C30 7C 08 03 A6 */ mtlr r0 -/* 8018BCD4 00188C34 38 21 01 10 */ addi r1, r1, 0x110 -/* 8018BCD8 00188C38 4E 80 00 20 */ blr - -.global PlayerPos__13CNewIntroBossCFRC13CStateManager -PlayerPos__13CNewIntroBossCFRC13CStateManager: -/* 8018BCDC 00188C3C 94 21 FF 60 */ stwu r1, -0xa0(r1) -/* 8018BCE0 00188C40 7C 08 02 A6 */ mflr r0 -/* 8018BCE4 00188C44 90 01 00 A4 */ stw r0, 0xa4(r1) -/* 8018BCE8 00188C48 93 E1 00 9C */ stw r31, 0x9c(r1) -/* 8018BCEC 00188C4C 7C BF 2B 78 */ mr r31, r5 -/* 8018BCF0 00188C50 93 C1 00 98 */ stw r30, 0x98(r1) -/* 8018BCF4 00188C54 7C 7E 1B 78 */ mr r30, r3 -/* 8018BCF8 00188C58 80 65 08 4C */ lwz r3, 0x84c(r5) -/* 8018BCFC 00188C5C 48 0F 90 E5 */ bl GetEyeHeight__7CPlayerCFv -/* 8018BD00 00188C60 C0 02 A3 8C */ lfs f0, lbl_805AC0AC@sda21(r2) -/* 8018BD04 00188C64 38 60 00 00 */ li r3, 0 -/* 8018BD08 00188C68 80 DF 08 4C */ lwz r6, 0x84c(r31) -/* 8018BD0C 00188C6C 38 80 00 01 */ li r4, 1 -/* 8018BD10 00188C70 EC 81 00 32 */ fmuls f4, f1, f0 -/* 8018BD14 00188C74 C0 42 A3 C0 */ lfs f2, lbl_805AC0E0@sda21(r2) -/* 8018BD18 00188C78 C0 26 00 60 */ lfs f1, 0x60(r6) -/* 8018BD1C 00188C7C C0 66 00 50 */ lfs f3, 0x50(r6) -/* 8018BD20 00188C80 C0 06 00 40 */ lfs f0, 0x40(r6) -/* 8018BD24 00188C84 EC 21 20 2A */ fadds f1, f1, f4 -/* 8018BD28 00188C88 EC 63 10 2A */ fadds f3, f3, f2 -/* 8018BD2C 00188C8C 80 AD 8E E0 */ lwz r5, lbl_805A7AA0@sda21(r13) -/* 8018BD30 00188C90 EC 00 10 2A */ fadds f0, f0, f2 -/* 8018BD34 00188C94 D0 21 00 10 */ stfs f1, 0x10(r1) -/* 8018BD38 00188C98 D0 01 00 08 */ stfs f0, 8(r1) -/* 8018BD3C 00188C9C D0 61 00 0C */ stfs f3, 0xc(r1) -/* 8018BD40 00188CA0 48 1F E1 B5 */ bl __shl2i -/* 8018BD44 00188CA4 39 00 00 00 */ li r8, 0 -/* 8018BD48 00188CA8 38 00 00 01 */ li r0, 1 -/* 8018BD4C 00188CAC 3C A0 80 5A */ lis r5, lbl_805A6700@ha -/* 8018BD50 00188CB0 90 81 00 1C */ stw r4, 0x1c(r1) -/* 8018BD54 00188CB4 38 C5 67 00 */ addi r6, r5, lbl_805A6700@l -/* 8018BD58 00188CB8 C0 22 A3 D8 */ lfs f1, lbl_805AC0F8@sda21(r2) -/* 8018BD5C 00188CBC 90 61 00 18 */ stw r3, 0x18(r1) -/* 8018BD60 00188CC0 7F E4 FB 78 */ mr r4, r31 -/* 8018BD64 00188CC4 38 61 00 30 */ addi r3, r1, 0x30 -/* 8018BD68 00188CC8 38 A1 00 08 */ addi r5, r1, 8 -/* 8018BD6C 00188CCC 91 01 00 24 */ stw r8, 0x24(r1) -/* 8018BD70 00188CD0 38 E1 00 18 */ addi r7, r1, 0x18 -/* 8018BD74 00188CD4 91 01 00 20 */ stw r8, 0x20(r1) -/* 8018BD78 00188CD8 90 01 00 28 */ stw r0, 0x28(r1) -/* 8018BD7C 00188CDC 4B FF 8A 8D */ bl RayStaticIntersection__14CGameCollisionFRC13CStateManagerRC9CVector3fRC9CVector3ffRC15CMaterialFilter -/* 8018BD80 00188CE0 88 81 00 50 */ lbz r4, 0x50(r1) -/* 8018BD84 00188CE4 C0 E1 00 30 */ lfs f7, 0x30(r1) -/* 8018BD88 00188CE8 C0 C1 00 34 */ lfs f6, 0x34(r1) -/* 8018BD8C 00188CEC 28 04 00 00 */ cmplwi r4, 0 -/* 8018BD90 00188CF0 C0 A1 00 38 */ lfs f5, 0x38(r1) -/* 8018BD94 00188CF4 C0 81 00 3C */ lfs f4, 0x3c(r1) -/* 8018BD98 00188CF8 C0 61 00 40 */ lfs f3, 0x40(r1) -/* 8018BD9C 00188CFC C0 41 00 44 */ lfs f2, 0x44(r1) -/* 8018BDA0 00188D00 C0 21 00 48 */ lfs f1, 0x48(r1) -/* 8018BDA4 00188D04 C0 01 00 4C */ lfs f0, 0x4c(r1) -/* 8018BDA8 00188D08 80 01 00 58 */ lwz r0, 0x58(r1) -/* 8018BDAC 00188D0C 80 61 00 5C */ lwz r3, 0x5c(r1) -/* 8018BDB0 00188D10 D0 E1 00 60 */ stfs f7, 0x60(r1) -/* 8018BDB4 00188D14 D0 C1 00 64 */ stfs f6, 0x64(r1) -/* 8018BDB8 00188D18 D0 A1 00 68 */ stfs f5, 0x68(r1) -/* 8018BDBC 00188D1C D0 81 00 6C */ stfs f4, 0x6c(r1) -/* 8018BDC0 00188D20 D0 61 00 70 */ stfs f3, 0x70(r1) -/* 8018BDC4 00188D24 D0 41 00 74 */ stfs f2, 0x74(r1) -/* 8018BDC8 00188D28 D0 21 00 78 */ stfs f1, 0x78(r1) -/* 8018BDCC 00188D2C D0 01 00 7C */ stfs f0, 0x7c(r1) -/* 8018BDD0 00188D30 98 81 00 80 */ stb r4, 0x80(r1) -/* 8018BDD4 00188D34 90 61 00 8C */ stw r3, 0x8c(r1) -/* 8018BDD8 00188D38 90 01 00 88 */ stw r0, 0x88(r1) -/* 8018BDDC 00188D3C 40 82 00 48 */ bne lbl_8018BE24 -/* 8018BDE0 00188D40 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8018BDE4 00188D44 48 0F 8F FD */ bl GetEyeHeight__7CPlayerCFv -/* 8018BDE8 00188D48 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8018BDEC 00188D4C C0 62 A3 C0 */ lfs f3, lbl_805AC0E0@sda21(r2) -/* 8018BDF0 00188D50 C0 03 00 40 */ lfs f0, 0x40(r3) -/* 8018BDF4 00188D54 C0 C2 A3 8C */ lfs f6, lbl_805AC0AC@sda21(r2) -/* 8018BDF8 00188D58 C0 A2 A3 C8 */ lfs f5, lbl_805AC0E8@sda21(r2) -/* 8018BDFC 00188D5C EC 00 18 2A */ fadds f0, f0, f3 -/* 8018BE00 00188D60 C0 83 00 50 */ lfs f4, 0x50(r3) -/* 8018BE04 00188D64 C0 43 00 60 */ lfs f2, 0x60(r3) -/* 8018BE08 00188D68 EC A1 29 BA */ fmadds f5, f1, f6, f5 -/* 8018BE0C 00188D6C EC 24 18 2A */ fadds f1, f4, f3 -/* 8018BE10 00188D70 D0 1E 00 00 */ stfs f0, 0(r30) -/* 8018BE14 00188D74 EC 02 28 2A */ fadds f0, f2, f5 -/* 8018BE18 00188D78 D0 3E 00 04 */ stfs f1, 4(r30) -/* 8018BE1C 00188D7C D0 1E 00 08 */ stfs f0, 8(r30) -/* 8018BE20 00188D80 48 00 00 40 */ b lbl_8018BE60 -lbl_8018BE24: -/* 8018BE24 00188D84 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8018BE28 00188D88 48 0F 8F B9 */ bl GetEyeHeight__7CPlayerCFv -/* 8018BE2C 00188D8C C0 42 A3 C0 */ lfs f2, lbl_805AC0E0@sda21(r2) -/* 8018BE30 00188D90 C0 01 00 64 */ lfs f0, 0x64(r1) -/* 8018BE34 00188D94 C0 61 00 68 */ lfs f3, 0x68(r1) -/* 8018BE38 00188D98 EC 00 10 2A */ fadds f0, f0, f2 -/* 8018BE3C 00188D9C C0 A2 A3 8C */ lfs f5, lbl_805AC0AC@sda21(r2) -/* 8018BE40 00188DA0 C0 82 A3 C8 */ lfs f4, lbl_805AC0E8@sda21(r2) -/* 8018BE44 00188DA4 EC 63 10 2A */ fadds f3, f3, f2 -/* 8018BE48 00188DA8 C0 41 00 6C */ lfs f2, 0x6c(r1) -/* 8018BE4C 00188DAC D0 1E 00 00 */ stfs f0, 0(r30) -/* 8018BE50 00188DB0 EC 21 21 7A */ fmadds f1, f1, f5, f4 -/* 8018BE54 00188DB4 D0 7E 00 04 */ stfs f3, 4(r30) -/* 8018BE58 00188DB8 EC 02 08 2A */ fadds f0, f2, f1 -/* 8018BE5C 00188DBC D0 1E 00 08 */ stfs f0, 8(r30) -lbl_8018BE60: -/* 8018BE60 00188DC0 80 01 00 A4 */ lwz r0, 0xa4(r1) -/* 8018BE64 00188DC4 83 E1 00 9C */ lwz r31, 0x9c(r1) -/* 8018BE68 00188DC8 83 C1 00 98 */ lwz r30, 0x98(r1) -/* 8018BE6C 00188DCC 7C 08 03 A6 */ mtlr r0 -/* 8018BE70 00188DD0 38 21 00 A0 */ addi r1, r1, 0xa0 -/* 8018BE74 00188DD4 4E 80 00 20 */ blr - -.global ProjectileInfo__13CNewIntroBossFv -ProjectileInfo__13CNewIntroBossFv: -/* 8018BE78 00188DD8 38 63 05 AC */ addi r3, r3, 0x5ac -/* 8018BE7C 00188DDC 4E 80 00 20 */ blr - -.global "__ct__13CNewIntroBossF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersfUiRC11CDamageInfoUiUiUiUi" -"__ct__13CNewIntroBossF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersfUiRC11CDamageInfoUiUiUiUi": -/* 8018BE80 00188DE0 94 21 FF 90 */ stwu r1, -0x70(r1) -/* 8018BE84 00188DE4 7C 08 02 A6 */ mflr r0 -/* 8018BE88 00188DE8 90 01 00 74 */ stw r0, 0x74(r1) -/* 8018BE8C 00188DEC DB E1 00 60 */ stfd f31, 0x60(r1) -/* 8018BE90 00188DF0 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 -/* 8018BE94 00188DF4 BF 01 00 40 */ stmw r24, 0x40(r1) -/* 8018BE98 00188DF8 A0 04 00 00 */ lhz r0, 0(r4) -/* 8018BE9C 00188DFC 7C C4 33 78 */ mr r4, r6 -/* 8018BEA0 00188E00 7C F9 3B 78 */ mr r25, r7 -/* 8018BEA4 00188E04 7D 07 43 78 */ mr r7, r8 -/* 8018BEA8 00188E08 B0 01 00 20 */ sth r0, 0x20(r1) -/* 8018BEAC 00188E0C 7C A6 2B 78 */ mr r6, r5 -/* 8018BEB0 00188E10 7C 88 23 78 */ mr r8, r4 -/* 8018BEB4 00188E14 39 60 00 01 */ li r11, 1 -/* 8018BEB8 00188E18 91 21 00 08 */ stw r9, 8(r1) -/* 8018BEBC 00188E1C 38 00 00 02 */ li r0, 2 -/* 8018BEC0 00188E20 FF E0 08 90 */ fmr f31, f1 -/* 8018BEC4 00188E24 83 41 00 78 */ lwz r26, 0x78(r1) -/* 8018BEC8 00188E28 91 61 00 0C */ stw r11, 0xc(r1) -/* 8018BECC 00188E2C 7C 78 1B 78 */ mr r24, r3 -/* 8018BED0 00188E30 83 61 00 7C */ lwz r27, 0x7c(r1) -/* 8018BED4 00188E34 7F 29 CB 78 */ mr r9, r25 -/* 8018BED8 00188E38 91 61 00 10 */ stw r11, 0x10(r1) -/* 8018BEDC 00188E3C 38 A1 00 20 */ addi r5, r1, 0x20 -/* 8018BEE0 00188E40 83 81 00 80 */ lwz r28, 0x80(r1) -/* 8018BEE4 00188E44 38 80 00 17 */ li r4, 0x17 -/* 8018BEE8 00188E48 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018BEEC 00188E4C 83 A1 00 84 */ lwz r29, 0x84(r1) -/* 8018BEF0 00188E50 91 41 00 18 */ stw r10, 0x18(r1) -/* 8018BEF4 00188E54 7C EA 3B 78 */ mr r10, r7 -/* 8018BEF8 00188E58 83 C1 00 88 */ lwz r30, 0x88(r1) -/* 8018BEFC 00188E5C 38 E0 00 00 */ li r7, 0 -/* 8018BF00 00188E60 91 61 00 1C */ stw r11, 0x1c(r1) -/* 8018BF04 00188E64 83 E1 00 8C */ lwz r31, 0x8c(r1) -/* 8018BF08 00188E68 4B EF 15 49 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi" -/* 8018BF0C 00188E6C 3C 80 80 3E */ lis r4, lbl_803E4018@ha -/* 8018BF10 00188E70 3C 60 80 3D */ lis r3, lbl_803D07E4@ha -/* 8018BF14 00188E74 38 04 40 18 */ addi r0, r4, lbl_803E4018@l -/* 8018BF18 00188E78 38 A0 00 01 */ li r5, 1 -/* 8018BF1C 00188E7C 90 18 00 00 */ stw r0, 0(r24) -/* 8018BF20 00188E80 38 83 07 E4 */ addi r4, r3, lbl_803D07E4@l -/* 8018BF24 00188E84 38 00 00 00 */ li r0, 0 -/* 8018BF28 00188E88 38 61 00 24 */ addi r3, r1, 0x24 -/* 8018BF2C 00188E8C 90 B8 05 68 */ stw r5, 0x568(r24) -/* 8018BF30 00188E90 38 84 00 D9 */ addi r4, r4, 0xd9 -/* 8018BF34 00188E94 90 18 05 6C */ stw r0, 0x56c(r24) -/* 8018BF38 00188E98 D3 F8 05 70 */ stfs f31, 0x570(r24) -/* 8018BF3C 00188E9C 4B E7 8D 7D */ bl string_l__4rstlFPCc -/* 8018BF40 00188EA0 80 98 00 64 */ lwz r4, 0x64(r24) -/* 8018BF44 00188EA4 38 78 05 74 */ addi r3, r24, 0x574 -/* 8018BF48 00188EA8 C0 22 A3 DC */ lfs f1, lbl_805AC0FC@sda21(r2) -/* 8018BF4C 00188EAC 38 A1 00 24 */ addi r5, r1, 0x24 -/* 8018BF50 00188EB0 80 84 00 10 */ lwz r4, 0x10(r4) -/* 8018BF54 00188EB4 38 C0 00 00 */ li r6, 0 -/* 8018BF58 00188EB8 C0 42 A3 E0 */ lfs f2, lbl_805AC100@sda21(r2) -/* 8018BF5C 00188EBC 4B FE 9A 5D */ bl "__ct__13CBoneTrackingFRC9CAnimDataRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>ffb" -/* 8018BF60 00188EC0 38 61 00 24 */ addi r3, r1, 0x24 -/* 8018BF64 00188EC4 48 1B 1B 7D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 8018BF68 00188EC8 7F 44 D3 78 */ mr r4, r26 -/* 8018BF6C 00188ECC 7F 65 DB 78 */ mr r5, r27 -/* 8018BF70 00188ED0 38 78 05 AC */ addi r3, r24, 0x5ac -/* 8018BF74 00188ED4 48 09 01 35 */ bl __ct__15CProjectileInfoFUiRC11CDamageInfo -/* 8018BF78 00188ED8 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) -/* 8018BF7C 00188EDC 3C 60 80 5A */ lis r3, skZero3f@ha -/* 8018BF80 00188EE0 38 CD A9 18 */ addi r6, r13, "_EmptyString__Q24rstl66basic_string,Q24rstl17rmemory_allocator>"@sda21 -/* 8018BF84 00188EE4 38 00 00 00 */ li r0, 0 -/* 8018BF88 00188EE8 B0 98 05 D4 */ sth r4, 0x5d4(r24) -/* 8018BF8C 00188EEC 38 A3 66 A0 */ addi r5, r3, skZero3f@l -/* 8018BF90 00188EF0 C0 62 A3 C0 */ lfs f3, lbl_805AC0E0@sda21(r2) -/* 8018BF94 00188EF4 7F 24 CB 78 */ mr r4, r25 -/* 8018BF98 00188EF8 A0 ED A3 8C */ lhz r7, lbl_805A8F4C@sda21(r13) -/* 8018BF9C 00188EFC 38 78 06 44 */ addi r3, r24, 0x644 -/* 8018BFA0 00188F00 C0 22 A3 C8 */ lfs f1, lbl_805AC0E8@sda21(r2) -/* 8018BFA4 00188F04 B0 F8 05 D6 */ sth r7, 0x5d6(r24) -/* 8018BFA8 00188F08 C0 02 A3 AC */ lfs f0, lbl_805AC0CC@sda21(r2) -/* 8018BFAC 00188F0C A0 ED A3 8C */ lhz r7, lbl_805A8F4C@sda21(r13) -/* 8018BFB0 00188F10 B0 F8 05 D8 */ sth r7, 0x5d8(r24) -/* 8018BFB4 00188F14 90 D8 05 DC */ stw r6, 0x5dc(r24) -/* 8018BFB8 00188F18 90 18 05 E0 */ stw r0, 0x5e0(r24) -/* 8018BFBC 00188F1C 90 18 05 E4 */ stw r0, 0x5e4(r24) -/* 8018BFC0 00188F20 90 18 05 EC */ stw r0, 0x5ec(r24) -/* 8018BFC4 00188F24 93 98 05 F0 */ stw r28, 0x5f0(r24) -/* 8018BFC8 00188F28 93 B8 05 F4 */ stw r29, 0x5f4(r24) -/* 8018BFCC 00188F2C 93 D8 05 F8 */ stw r30, 0x5f8(r24) -/* 8018BFD0 00188F30 93 F8 05 FC */ stw r31, 0x5fc(r24) -/* 8018BFD4 00188F34 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8018BFD8 00188F38 B0 18 06 00 */ sth r0, 0x600(r24) -/* 8018BFDC 00188F3C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8018BFE0 00188F40 B0 18 06 02 */ sth r0, 0x602(r24) -/* 8018BFE4 00188F44 C0 45 00 00 */ lfs f2, 0(r5) -/* 8018BFE8 00188F48 D0 58 06 04 */ stfs f2, 0x604(r24) -/* 8018BFEC 00188F4C C0 45 00 04 */ lfs f2, 4(r5) -/* 8018BFF0 00188F50 D0 58 06 08 */ stfs f2, 0x608(r24) -/* 8018BFF4 00188F54 C0 45 00 08 */ lfs f2, 8(r5) -/* 8018BFF8 00188F58 D0 58 06 0C */ stfs f2, 0x60c(r24) -/* 8018BFFC 00188F5C C0 45 00 00 */ lfs f2, 0(r5) -/* 8018C000 00188F60 D0 58 06 10 */ stfs f2, 0x610(r24) -/* 8018C004 00188F64 C0 45 00 04 */ lfs f2, 4(r5) -/* 8018C008 00188F68 D0 58 06 14 */ stfs f2, 0x614(r24) -/* 8018C00C 00188F6C C0 45 00 08 */ lfs f2, 8(r5) -/* 8018C010 00188F70 D0 58 06 18 */ stfs f2, 0x618(r24) -/* 8018C014 00188F74 C0 45 00 00 */ lfs f2, 0(r5) -/* 8018C018 00188F78 D0 58 06 1C */ stfs f2, 0x61c(r24) -/* 8018C01C 00188F7C C0 45 00 04 */ lfs f2, 4(r5) -/* 8018C020 00188F80 D0 58 06 20 */ stfs f2, 0x620(r24) -/* 8018C024 00188F84 C0 45 00 08 */ lfs f2, 8(r5) -/* 8018C028 00188F88 D0 58 06 24 */ stfs f2, 0x624(r24) -/* 8018C02C 00188F8C D0 78 06 28 */ stfs f3, 0x628(r24) -/* 8018C030 00188F90 C0 45 00 00 */ lfs f2, 0(r5) -/* 8018C034 00188F94 D0 58 06 2C */ stfs f2, 0x62c(r24) -/* 8018C038 00188F98 C0 45 00 04 */ lfs f2, 4(r5) -/* 8018C03C 00188F9C D0 58 06 30 */ stfs f2, 0x630(r24) -/* 8018C040 00188FA0 C0 45 00 08 */ lfs f2, 8(r5) -/* 8018C044 00188FA4 D0 58 06 34 */ stfs f2, 0x634(r24) -/* 8018C048 00188FA8 D0 38 06 38 */ stfs f1, 0x638(r24) -/* 8018C04C 00188FAC D0 18 06 3C */ stfs f0, 0x63c(r24) -/* 8018C050 00188FB0 D0 78 06 40 */ stfs f3, 0x640(r24) -/* 8018C054 00188FB4 48 18 6B 21 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8018C058 00188FB8 38 60 FF FF */ li r3, -1 -/* 8018C05C 00188FBC 38 00 00 00 */ li r0, 0 -/* 8018C060 00188FC0 B0 78 06 74 */ sth r3, 0x674(r24) -/* 8018C064 00188FC4 38 78 05 AC */ addi r3, r24, 0x5ac -/* 8018C068 00188FC8 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) -/* 8018C06C 00188FCC B0 98 06 76 */ sth r4, 0x676(r24) -/* 8018C070 00188FD0 98 18 06 78 */ stb r0, 0x678(r24) -/* 8018C074 00188FD4 48 1B 4D 11 */ bl Lock__6CTokenFv -/* 8018C078 00188FD8 38 78 05 74 */ addi r3, r24, 0x574 -/* 8018C07C 00188FDC 38 80 00 01 */ li r4, 1 -/* 8018C080 00188FE0 4B FE 91 A5 */ bl SetActive__13CBoneTrackingFb -/* 8018C084 00188FE4 7F 03 C3 78 */ mr r3, r24 -/* 8018C088 00188FE8 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 -/* 8018C08C 00188FEC CB E1 00 60 */ lfd f31, 0x60(r1) -/* 8018C090 00188FF0 BB 01 00 40 */ lmw r24, 0x40(r1) -/* 8018C094 00188FF4 80 01 00 74 */ lwz r0, 0x74(r1) -/* 8018C098 00188FF8 7C 08 03 A6 */ mtlr r0 -/* 8018C09C 00188FFC 38 21 00 70 */ addi r1, r1, 0x70 -/* 8018C0A0 00189000 4E 80 00 20 */ blr - -.global GetNextAttackTime__13CNewIntroBossCFR13CStateManager -GetNextAttackTime__13CNewIntroBossCFR13CStateManager: -/* 8018C0A4 00189004 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8018C0A8 00189008 7C 08 02 A6 */ mflr r0 -/* 8018C0AC 0018900C 90 01 00 24 */ stw r0, 0x24(r1) -/* 8018C0B0 00189010 DB E1 00 10 */ stfd f31, 0x10(r1) -/* 8018C0B4 00189014 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 -/* 8018C0B8 00189018 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8018C0BC 0018901C 93 C1 00 08 */ stw r30, 8(r1) -/* 8018C0C0 00189020 7C 9F 23 78 */ mr r31, r4 -/* 8018C0C4 00189024 7C 7E 1B 78 */ mr r30, r3 -/* 8018C0C8 00189028 80 64 09 00 */ lwz r3, 0x900(r4) -/* 8018C0CC 0018902C 48 18 64 11 */ bl Float__9CRandom16Fv -/* 8018C0D0 00189030 7F C3 F3 78 */ mr r3, r30 -/* 8018C0D4 00189034 C0 42 A3 B4 */ lfs f2, lbl_805AC0D4@sda21(r2) -/* 8018C0D8 00189038 81 9E 00 00 */ lwz r12, 0(r30) -/* 8018C0DC 0018903C 7F E4 FB 78 */ mr r4, r31 -/* 8018C0E0 00189040 C0 02 A3 E4 */ lfs f0, lbl_805AC104@sda21(r2) -/* 8018C0E4 00189044 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8018C0E8 00189048 EF E2 00 7A */ fmadds f31, f2, f1, f0 -/* 8018C0EC 0018904C 7D 89 03 A6 */ mtctr r12 -/* 8018C0F0 00189050 4E 80 04 21 */ bctrl -/* 8018C0F4 00189054 C0 02 A3 E8 */ lfs f0, lbl_805AC108@sda21(r2) -/* 8018C0F8 00189058 C0 3E 06 40 */ lfs f1, 0x640(r30) -/* 8018C0FC 0018905C C0 43 00 00 */ lfs f2, 0(r3) -/* 8018C100 00189060 EC 00 00 72 */ fmuls f0, f0, f1 -/* 8018C104 00189064 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8018C108 00189068 40 81 00 0C */ ble lbl_8018C114 -/* 8018C10C 0018906C FC 20 F8 90 */ fmr f1, f31 -/* 8018C110 00189070 48 00 00 28 */ b lbl_8018C138 -lbl_8018C114: -/* 8018C114 00189074 C0 02 A3 F4 */ lfs f0, lbl_805AC114@sda21(r2) -/* 8018C118 00189078 EC 00 00 72 */ fmuls f0, f0, f1 -/* 8018C11C 0018907C FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8018C120 00189080 40 81 00 10 */ ble lbl_8018C130 -/* 8018C124 00189084 C0 02 A3 EC */ lfs f0, lbl_805AC10C@sda21(r2) -/* 8018C128 00189088 EC 20 FF FC */ fnmsubs f1, f0, f31, f31 -/* 8018C12C 0018908C 48 00 00 0C */ b lbl_8018C138 -lbl_8018C130: -/* 8018C130 00189090 C0 02 A3 F0 */ lfs f0, lbl_805AC110@sda21(r2) -/* 8018C134 00189094 EC 20 FF FC */ fnmsubs f1, f0, f31, f31 -lbl_8018C138: -/* 8018C138 00189098 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 -/* 8018C13C 0018909C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8018C140 001890A0 CB E1 00 10 */ lfd f31, 0x10(r1) -/* 8018C144 001890A4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8018C148 001890A8 83 C1 00 08 */ lwz r30, 8(r1) -/* 8018C14C 001890AC 7C 08 03 A6 */ mtlr r0 -/* 8018C150 001890B0 38 21 00 20 */ addi r1, r1, 0x20 -/* 8018C154 001890B4 4E 80 00 20 */ blr - -.global GetGenerateForHealth__13CNewIntroBossCFRC13CStateManager -GetGenerateForHealth__13CNewIntroBossCFRC13CStateManager: -/* 8018C158 001890B8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8018C15C 001890BC 7C 08 02 A6 */ mflr r0 -/* 8018C160 001890C0 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018C164 001890C4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8018C168 001890C8 7C 7F 1B 78 */ mr r31, r3 -/* 8018C16C 001890CC 81 83 00 00 */ lwz r12, 0(r3) -/* 8018C170 001890D0 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8018C174 001890D4 7D 89 03 A6 */ mtctr r12 -/* 8018C178 001890D8 4E 80 04 21 */ bctrl -/* 8018C17C 001890DC C0 22 A3 F4 */ lfs f1, lbl_805AC114@sda21(r2) -/* 8018C180 001890E0 C0 1F 06 40 */ lfs f0, 0x640(r31) -/* 8018C184 001890E4 C0 43 00 00 */ lfs f2, 0(r3) -/* 8018C188 001890E8 EC 01 00 32 */ fmuls f0, f1, f0 -/* 8018C18C 001890EC FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8018C190 001890F0 40 81 00 0C */ ble lbl_8018C19C -/* 8018C194 001890F4 38 60 00 03 */ li r3, 3 -/* 8018C198 001890F8 48 00 00 08 */ b lbl_8018C1A0 -lbl_8018C19C: -/* 8018C19C 001890FC 38 60 00 04 */ li r3, 4 -lbl_8018C1A0: -/* 8018C1A0 00189100 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8018C1A4 00189104 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8018C1A8 00189108 7C 08 03 A6 */ mtlr r0 -/* 8018C1AC 0018910C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8018C1B0 00189110 4E 80 00 20 */ blr - -.global GetLocoForHealth__13CNewIntroBossCFRC13CStateManager -GetLocoForHealth__13CNewIntroBossCFRC13CStateManager: -/* 8018C1B4 00189114 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8018C1B8 00189118 7C 08 02 A6 */ mflr r0 -/* 8018C1BC 0018911C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018C1C0 00189120 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8018C1C4 00189124 7C 7F 1B 78 */ mr r31, r3 -/* 8018C1C8 00189128 81 83 00 00 */ lwz r12, 0(r3) -/* 8018C1CC 0018912C 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8018C1D0 00189130 7D 89 03 A6 */ mtctr r12 -/* 8018C1D4 00189134 4E 80 04 21 */ bctrl -/* 8018C1D8 00189138 C0 02 A3 E8 */ lfs f0, lbl_805AC108@sda21(r2) -/* 8018C1DC 0018913C C0 3F 06 40 */ lfs f1, 0x640(r31) -/* 8018C1E0 00189140 C0 43 00 00 */ lfs f2, 0(r3) -/* 8018C1E4 00189144 EC 00 00 72 */ fmuls f0, f0, f1 -/* 8018C1E8 00189148 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8018C1EC 0018914C 40 81 00 0C */ ble lbl_8018C1F8 -/* 8018C1F0 00189150 38 60 00 01 */ li r3, 1 -/* 8018C1F4 00189154 48 00 00 20 */ b lbl_8018C214 -lbl_8018C1F8: -/* 8018C1F8 00189158 C0 02 A3 F4 */ lfs f0, lbl_805AC114@sda21(r2) -/* 8018C1FC 0018915C EC 00 00 72 */ fmuls f0, f0, f1 -/* 8018C200 00189160 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8018C204 00189164 40 81 00 0C */ ble lbl_8018C210 -/* 8018C208 00189168 38 60 00 02 */ li r3, 2 -/* 8018C20C 0018916C 48 00 00 08 */ b lbl_8018C214 -lbl_8018C210: -/* 8018C210 00189170 38 60 00 03 */ li r3, 3 -lbl_8018C214: -/* 8018C214 00189174 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8018C218 00189178 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8018C21C 0018917C 7C 08 03 A6 */ mtlr r0 -/* 8018C220 00189180 38 21 00 10 */ addi r1, r1, 0x10 -/* 8018C224 00189184 4E 80 00 20 */ blr - -.global AcceptScriptMsg__11CPhazonBeamF20EScriptObjectMessage9TUniqueIdR13CStateManager -AcceptScriptMsg__11CPhazonBeamF20EScriptObjectMessage9TUniqueIdR13CStateManager: -/* 8018C228 00189188 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8018C22C 0018918C 7C 08 02 A6 */ mflr r0 -/* 8018C230 00189190 2C 04 00 22 */ cmpwi r4, 0x22 -/* 8018C234 00189194 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018C238 00189198 41 82 00 08 */ beq lbl_8018C240 -/* 8018C23C 0018919C 48 00 00 40 */ b lbl_8018C27C -lbl_8018C240: -/* 8018C240 001891A0 80 66 08 4C */ lwz r3, 0x84c(r6) -/* 8018C244 001891A4 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) -/* 8018C248 001891A8 80 A3 00 04 */ lwz r5, 4(r3) -/* 8018C24C 001891AC 7C 05 00 00 */ cmpw r5, r0 -/* 8018C250 001891B0 90 A1 00 0C */ stw r5, 0xc(r1) -/* 8018C254 001891B4 41 82 00 28 */ beq lbl_8018C27C -/* 8018C258 001891B8 80 86 08 50 */ lwz r4, 0x850(r6) -/* 8018C25C 001891BC 54 A3 18 38 */ slwi r3, r5, 3 -/* 8018C260 001891C0 38 03 00 04 */ addi r0, r3, 4 -/* 8018C264 001891C4 90 A1 00 08 */ stw r5, 8(r1) -/* 8018C268 001891C8 80 64 00 20 */ lwz r3, 0x20(r4) -/* 8018C26C 001891CC C0 22 A4 08 */ lfs f1, lbl_805AC128@sda21(r2) -/* 8018C270 001891D0 7C 63 00 2E */ lwzx r3, r3, r0 -/* 8018C274 001891D4 C0 42 A4 0C */ lfs f2, lbl_805AC12C@sda21(r2) -/* 8018C278 001891D8 4B ED 1F 5D */ bl SetWeaponWorldLighting__9CGameAreaFff -lbl_8018C27C: -/* 8018C27C 001891DC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8018C280 001891E0 7C 08 03 A6 */ mtlr r0 -/* 8018C284 001891E4 38 21 00 10 */ addi r1, r1, 0x10 -/* 8018C288 001891E8 4E 80 00 20 */ blr - -.global CreateBeam__11CPhazonBeamFR13CStateManager -CreateBeam__11CPhazonBeamFR13CStateManager: -/* 8018C28C 001891EC 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8018C290 001891F0 7C 08 02 A6 */ mflr r0 -/* 8018C294 001891F4 3C 80 80 3D */ lis r4, lbl_803D08F8@ha -/* 8018C298 001891F8 38 A0 00 00 */ li r5, 0 -/* 8018C29C 001891FC 90 01 00 24 */ stw r0, 0x24(r1) -/* 8018C2A0 00189200 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8018C2A4 00189204 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8018C2A8 00189208 7C 7E 1B 78 */ mr r30, r3 -/* 8018C2AC 0018920C 38 64 08 F8 */ addi r3, r4, lbl_803D08F8@l -/* 8018C2B0 00189210 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8018C2B4 00189214 38 83 00 2F */ addi r4, r3, 0x2f -/* 8018C2B8 00189218 3B A0 00 00 */ li r29, 0 -/* 8018C2BC 0018921C 38 60 03 40 */ li r3, 0x340 -/* 8018C2C0 00189220 48 18 95 AD */ bl __nw__FUlPCcPCc -/* 8018C2C4 00189224 7C 7F 1B 79 */ or. r31, r3, r3 -/* 8018C2C8 00189228 41 82 00 2C */ beq lbl_8018C2F4 -/* 8018C2CC 0018922C 38 61 00 08 */ addi r3, r1, 8 -/* 8018C2D0 00189230 38 9E 02 28 */ addi r4, r30, 0x228 -/* 8018C2D4 00189234 48 1B 4B D5 */ bl __ct__6CTokenFRC6CToken -/* 8018C2D8 00189238 7F E3 FB 78 */ mr r3, r31 -/* 8018C2DC 0018923C 38 81 00 08 */ addi r4, r1, 8 -/* 8018C2E0 00189240 3B A0 00 01 */ li r29, 1 -/* 8018C2E4 00189244 38 A0 00 00 */ li r5, 0 -/* 8018C2E8 00189248 38 C0 00 01 */ li r6, 1 -/* 8018C2EC 0018924C 48 19 30 F5 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" -/* 8018C2F0 00189250 7C 7F 1B 78 */ mr r31, r3 -lbl_8018C2F4: -/* 8018C2F4 00189254 80 7E 02 34 */ lwz r3, 0x234(r30) -/* 8018C2F8 00189258 28 03 00 00 */ cmplwi r3, 0 -/* 8018C2FC 0018925C 41 82 00 18 */ beq lbl_8018C314 -/* 8018C300 00189260 81 83 00 00 */ lwz r12, 0(r3) -/* 8018C304 00189264 38 80 00 01 */ li r4, 1 -/* 8018C308 00189268 81 8C 00 08 */ lwz r12, 8(r12) -/* 8018C30C 0018926C 7D 89 03 A6 */ mtctr r12 -/* 8018C310 00189270 4E 80 04 21 */ bctrl -lbl_8018C314: -/* 8018C314 00189274 7F A0 07 75 */ extsb. r0, r29 -/* 8018C318 00189278 93 FE 02 34 */ stw r31, 0x234(r30) -/* 8018C31C 0018927C 41 82 00 10 */ beq lbl_8018C32C -/* 8018C320 00189280 38 61 00 08 */ addi r3, r1, 8 -/* 8018C324 00189284 38 80 00 00 */ li r4, 0 -/* 8018C328 00189288 48 1B 4B 19 */ bl __dt__6CTokenFv -lbl_8018C32C: -/* 8018C32C 0018928C 80 7E 02 34 */ lwz r3, 0x234(r30) -/* 8018C330 00189290 28 03 00 00 */ cmplwi r3, 0 -/* 8018C334 00189294 41 82 00 30 */ beq lbl_8018C364 -/* 8018C338 00189298 81 83 00 00 */ lwz r12, 0(r3) -/* 8018C33C 0018929C 38 9E 00 04 */ addi r4, r30, 4 -/* 8018C340 001892A0 81 8C 00 24 */ lwz r12, 0x24(r12) -/* 8018C344 001892A4 7D 89 03 A6 */ mtctr r12 -/* 8018C348 001892A8 4E 80 04 21 */ bctrl -/* 8018C34C 001892AC 80 7E 02 34 */ lwz r3, 0x234(r30) -/* 8018C350 001892B0 38 80 00 00 */ li r4, 0 -/* 8018C354 001892B4 81 83 00 00 */ lwz r12, 0(r3) -/* 8018C358 001892B8 81 8C 00 2C */ lwz r12, 0x2c(r12) -/* 8018C35C 001892BC 7D 89 03 A6 */ mtctr r12 -/* 8018C360 001892C0 4E 80 04 21 */ bctrl -lbl_8018C364: -/* 8018C364 001892C4 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8018C368 001892C8 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8018C36C 001892CC 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8018C370 001892D0 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 8018C374 001892D4 7C 08 03 A6 */ mtlr r0 -/* 8018C378 001892D8 38 21 00 20 */ addi r1, r1, 0x20 -/* 8018C37C 001892DC 4E 80 00 20 */ blr - -.global IsLoaded__11CPhazonBeamCFv -IsLoaded__11CPhazonBeamCFv: -/* 8018C380 001892E0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8018C384 001892E4 7C 08 02 A6 */ mflr r0 -/* 8018C388 001892E8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018C38C 001892EC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8018C390 001892F0 3B E0 00 00 */ li r31, 0 -/* 8018C394 001892F4 93 C1 00 08 */ stw r30, 8(r1) -/* 8018C398 001892F8 7C 7E 1B 78 */ mr r30, r3 -/* 8018C39C 001892FC 48 02 F0 09 */ bl IsLoaded__10CGunWeaponCFv -/* 8018C3A0 00189300 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8018C3A4 00189304 41 82 00 14 */ beq lbl_8018C3B8 -/* 8018C3A8 00189308 88 1E 02 74 */ lbz r0, 0x274(r30) -/* 8018C3AC 0018930C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8018C3B0 00189310 41 82 00 08 */ beq lbl_8018C3B8 -/* 8018C3B4 00189314 3B E0 00 01 */ li r31, 1 -lbl_8018C3B8: -/* 8018C3B8 00189318 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8018C3BC 0018931C 7F E3 FB 78 */ mr r3, r31 -/* 8018C3C0 00189320 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8018C3C4 00189324 83 C1 00 08 */ lwz r30, 8(r1) -/* 8018C3C8 00189328 7C 08 03 A6 */ mtlr r0 -/* 8018C3CC 0018932C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8018C3D0 00189330 4E 80 00 20 */ blr - -.global Unload__11CPhazonBeamFR13CStateManager -Unload__11CPhazonBeamFR13CStateManager: -/* 8018C3D4 00189334 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8018C3D8 00189338 7C 08 02 A6 */ mflr r0 -/* 8018C3DC 0018933C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018C3E0 00189340 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8018C3E4 00189344 7C 7F 1B 78 */ mr r31, r3 -/* 8018C3E8 00189348 48 02 EF C9 */ bl Unload__10CGunWeaponFR13CStateManager -/* 8018C3EC 0018934C 38 00 00 00 */ li r0, 0 -/* 8018C3F0 00189350 38 7F 02 28 */ addi r3, r31, 0x228 -/* 8018C3F4 00189354 90 1F 02 30 */ stw r0, 0x230(r31) -/* 8018C3F8 00189358 48 1B 49 49 */ bl Unlock__6CTokenFv -/* 8018C3FC 0018935C 38 7F 02 1C */ addi r3, r31, 0x21c -/* 8018C400 00189360 48 1B 49 41 */ bl Unlock__6CTokenFv -/* 8018C404 00189364 7F E3 FB 78 */ mr r3, r31 -/* 8018C408 00189368 48 00 0A C5 */ bl ReInitVariables__11CPhazonBeamFv -/* 8018C40C 0018936C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8018C410 00189370 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8018C414 00189374 7C 08 03 A6 */ mtlr r0 -/* 8018C418 00189378 38 21 00 10 */ addi r1, r1, 0x10 -/* 8018C41C 0018937C 4E 80 00 20 */ blr - -.global Load__11CPhazonBeamFb -Load__11CPhazonBeamFb: -/* 8018C420 00189380 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8018C424 00189384 7C 08 02 A6 */ mflr r0 -/* 8018C428 00189388 90 01 00 24 */ stw r0, 0x24(r1) -/* 8018C42C 0018938C 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8018C430 00189390 7C 9F 23 78 */ mr r31, r4 -/* 8018C434 00189394 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8018C438 00189398 7C 7E 1B 78 */ mr r30, r3 -/* 8018C43C 0018939C 48 02 F0 99 */ bl Load__10CGunWeaponFR13CStateManagerb -/* 8018C440 001893A0 38 7E 02 28 */ addi r3, r30, 0x228 -/* 8018C444 001893A4 48 1B 49 41 */ bl Lock__6CTokenFv -/* 8018C448 001893A8 80 7F 09 00 */ lwz r3, 0x900(r31) -/* 8018C44C 001893AC 48 18 60 D5 */ bl Next__9CRandom16Fv -/* 8018C450 001893B0 88 1E 02 74 */ lbz r0, 0x274(r30) -/* 8018C454 001893B4 50 60 1E F6 */ rlwimi r0, r3, 3, 0x1b, 0x1b -/* 8018C458 001893B8 38 61 00 10 */ addi r3, r1, 0x10 -/* 8018C45C 001893BC 98 1E 02 74 */ stb r0, 0x274(r30) -/* 8018C460 001893C0 88 1E 02 74 */ lbz r0, 0x274(r30) -/* 8018C464 001893C4 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) -/* 8018C468 001893C8 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f -/* 8018C46C 001893CC 41 82 00 0C */ beq lbl_8018C478 -/* 8018C470 001893D0 80 A2 A4 00 */ lwz r5, lbl_805AC120@sda21(r2) -/* 8018C474 001893D4 48 00 00 08 */ b lbl_8018C47C -lbl_8018C478: -/* 8018C478 001893D8 80 A2 A3 FC */ lwz r5, lbl_805AC11C@sda21(r2) -lbl_8018C47C: -/* 8018C47C 001893DC 81 84 00 00 */ lwz r12, 0(r4) -/* 8018C480 001893E0 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 8018C484 001893E4 7D 89 03 A6 */ mtctr r12 -/* 8018C488 001893E8 4E 80 04 21 */ bctrl -/* 8018C48C 001893EC 38 61 00 08 */ addi r3, r1, 8 -/* 8018C490 001893F0 38 81 00 10 */ addi r4, r1, 0x10 -/* 8018C494 001893F4 48 1B 4A 15 */ bl __ct__6CTokenFRC6CToken -/* 8018C498 001893F8 38 7E 02 1C */ addi r3, r30, 0x21c -/* 8018C49C 001893FC 38 81 00 08 */ addi r4, r1, 8 -/* 8018C4A0 00189400 48 1B 48 25 */ bl __as__6CTokenFRC6CToken -/* 8018C4A4 00189404 38 61 00 08 */ addi r3, r1, 8 -/* 8018C4A8 00189408 38 80 00 00 */ li r4, 0 -/* 8018C4AC 0018940C 48 1B 49 95 */ bl __dt__6CTokenFv -/* 8018C4B0 00189410 38 61 00 10 */ addi r3, r1, 0x10 -/* 8018C4B4 00189414 38 80 FF FF */ li r4, -1 -/* 8018C4B8 00189418 48 1B 49 89 */ bl __dt__6CTokenFv -/* 8018C4BC 0018941C 38 7E 02 1C */ addi r3, r30, 0x21c -/* 8018C4C0 00189420 48 1B 48 C5 */ bl Lock__6CTokenFv -/* 8018C4C4 00189424 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8018C4C8 00189428 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8018C4CC 0018942C 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8018C4D0 00189430 7C 08 03 A6 */ mtlr r0 -/* 8018C4D4 00189434 38 21 00 20 */ addi r1, r1, 0x20 -/* 8018C4D8 00189438 4E 80 00 20 */ blr - -.global StopBeam__11CPhazonBeamFR13CStateManagerb -StopBeam__11CPhazonBeamFR13CStateManagerb: -/* 8018C4DC 0018943C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8018C4E0 00189440 7C 08 02 A6 */ mflr r0 -/* 8018C4E4 00189444 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018C4E8 00189448 80 63 02 34 */ lwz r3, 0x234(r3) -/* 8018C4EC 0018944C 28 03 00 00 */ cmplwi r3, 0 -/* 8018C4F0 00189450 41 82 00 18 */ beq lbl_8018C508 -/* 8018C4F4 00189454 81 83 00 00 */ lwz r12, 0(r3) -/* 8018C4F8 00189458 38 80 00 00 */ li r4, 0 -/* 8018C4FC 0018945C 81 8C 00 2C */ lwz r12, 0x2c(r12) -/* 8018C500 00189460 7D 89 03 A6 */ mtctr r12 -/* 8018C504 00189464 4E 80 04 21 */ bctrl -lbl_8018C508: -/* 8018C508 00189468 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8018C50C 0018946C 7C 08 03 A6 */ mtlr r0 -/* 8018C510 00189470 38 21 00 10 */ addi r1, r1, 0x10 -/* 8018C514 00189474 4E 80 00 20 */ blr - -.global UpdateBeam__11CPhazonBeamFfRC12CTransform4fRC9CVector3fR13CStateManager -UpdateBeam__11CPhazonBeamFfRC12CTransform4fRC9CVector3fR13CStateManager: -/* 8018C518 00189478 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8018C51C 0018947C 7C 08 02 A6 */ mflr r0 -/* 8018C520 00189480 90 01 00 24 */ stw r0, 0x24(r1) -/* 8018C524 00189484 DB E1 00 18 */ stfd f31, 0x18(r1) -/* 8018C528 00189488 FF E0 08 90 */ fmr f31, f1 -/* 8018C52C 0018948C 93 E1 00 14 */ stw r31, 0x14(r1) -/* 8018C530 00189490 93 C1 00 10 */ stw r30, 0x10(r1) -/* 8018C534 00189494 7C DE 33 78 */ mr r30, r6 -/* 8018C538 00189498 93 A1 00 0C */ stw r29, 0xc(r1) -/* 8018C53C 0018949C 7C BD 2B 78 */ mr r29, r5 -/* 8018C540 001894A0 93 81 00 08 */ stw r28, 8(r1) -/* 8018C544 001894A4 7C 7C 1B 78 */ mr r28, r3 -/* 8018C548 001894A8 83 E3 02 34 */ lwz r31, 0x234(r3) -/* 8018C54C 001894AC 28 1F 00 00 */ cmplwi r31, 0 -/* 8018C550 001894B0 41 82 00 24 */ beq lbl_8018C574 -/* 8018C554 001894B4 7F C4 F3 78 */ mr r4, r30 -/* 8018C558 001894B8 48 00 09 5D */ bl IsFiring__11CPhazonBeamCFRC13CStateManager -/* 8018C55C 001894BC 81 9F 00 00 */ lwz r12, 0(r31) -/* 8018C560 001894C0 7C 64 1B 78 */ mr r4, r3 -/* 8018C564 001894C4 7F E3 FB 78 */ mr r3, r31 -/* 8018C568 001894C8 81 8C 00 2C */ lwz r12, 0x2c(r12) -/* 8018C56C 001894CC 7D 89 03 A6 */ mtctr r12 -/* 8018C570 001894D0 4E 80 04 21 */ bctrl -lbl_8018C574: -/* 8018C574 001894D4 7F 83 E3 78 */ mr r3, r28 -/* 8018C578 001894D8 7F C4 F3 78 */ mr r4, r30 -/* 8018C57C 001894DC 48 00 09 39 */ bl IsFiring__11CPhazonBeamCFRC13CStateManager -/* 8018C580 001894E0 FC 20 F8 90 */ fmr f1, f31 -/* 8018C584 001894E4 7C 66 1B 78 */ mr r6, r3 -/* 8018C588 001894E8 7F 83 E3 78 */ mr r3, r28 -/* 8018C58C 001894EC 7F A5 EB 78 */ mr r5, r29 -/* 8018C590 001894F0 38 9C 00 04 */ addi r4, r28, 4 -/* 8018C594 001894F4 48 02 FC 61 */ bl UpdateMuzzleFx__10CGunWeaponFfRC9CVector3fRC9CVector3fb -/* 8018C598 001894F8 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8018C59C 001894FC CB E1 00 18 */ lfd f31, 0x18(r1) -/* 8018C5A0 00189500 83 E1 00 14 */ lwz r31, 0x14(r1) -/* 8018C5A4 00189504 83 C1 00 10 */ lwz r30, 0x10(r1) -/* 8018C5A8 00189508 83 A1 00 0C */ lwz r29, 0xc(r1) -/* 8018C5AC 0018950C 83 81 00 08 */ lwz r28, 8(r1) -/* 8018C5B0 00189510 7C 08 03 A6 */ mtlr r0 -/* 8018C5B4 00189514 38 21 00 20 */ addi r1, r1, 0x20 -/* 8018C5B8 00189518 4E 80 00 20 */ blr - -.global Update__11CPhazonBeamFfR13CStateManager -Update__11CPhazonBeamFfR13CStateManager: -/* 8018C5BC 0018951C 94 21 FF 40 */ stwu r1, -0xc0(r1) -/* 8018C5C0 00189520 7C 08 02 A6 */ mflr r0 -/* 8018C5C4 00189524 90 01 00 C4 */ stw r0, 0xc4(r1) -/* 8018C5C8 00189528 DB E1 00 B0 */ stfd f31, 0xb0(r1) -/* 8018C5CC 0018952C F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 -/* 8018C5D0 00189530 93 E1 00 AC */ stw r31, 0xac(r1) -/* 8018C5D4 00189534 93 C1 00 A8 */ stw r30, 0xa8(r1) -/* 8018C5D8 00189538 FF E0 08 90 */ fmr f31, f1 -/* 8018C5DC 0018953C 7C 7E 1B 78 */ mr r30, r3 -/* 8018C5E0 00189540 7C 9F 23 78 */ mr r31, r4 -/* 8018C5E4 00189544 48 02 FE 95 */ bl Update__10CGunWeaponFfR13CStateManager -/* 8018C5E8 00189548 C0 1E 02 78 */ lfs f0, 0x278(r30) -/* 8018C5EC 0018954C EC 00 F8 2A */ fadds f0, f0, f31 -/* 8018C5F0 00189550 D0 1E 02 78 */ stfs f0, 0x278(r30) -/* 8018C5F4 00189554 80 7F 08 4C */ lwz r3, 0x84c(r31) -/* 8018C5F8 00189558 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) -/* 8018C5FC 0018955C 80 A3 00 04 */ lwz r5, 4(r3) -/* 8018C600 00189560 7C 05 00 00 */ cmpw r5, r0 -/* 8018C604 00189564 90 A1 00 0C */ stw r5, 0xc(r1) -/* 8018C608 00189568 41 82 00 48 */ beq lbl_8018C650 -/* 8018C60C 0018956C 80 9F 08 50 */ lwz r4, 0x850(r31) -/* 8018C610 00189570 54 A3 18 38 */ slwi r3, r5, 3 -/* 8018C614 00189574 C0 3E 02 78 */ lfs f1, 0x278(r30) -/* 8018C618 00189578 38 03 00 04 */ addi r0, r3, 4 -/* 8018C61C 0018957C C0 02 A4 10 */ lfs f0, lbl_805AC130@sda21(r2) -/* 8018C620 00189580 80 64 00 20 */ lwz r3, 0x20(r4) -/* 8018C624 00189584 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8018C628 00189588 90 A1 00 08 */ stw r5, 8(r1) -/* 8018C62C 0018958C 7C 63 00 2E */ lwzx r3, r3, r0 -/* 8018C630 00189590 40 81 00 14 */ ble lbl_8018C644 -/* 8018C634 00189594 C0 22 A4 08 */ lfs f1, lbl_805AC128@sda21(r2) -/* 8018C638 00189598 C0 42 A4 0C */ lfs f2, lbl_805AC12C@sda21(r2) -/* 8018C63C 0018959C 4B ED 1B 99 */ bl SetWeaponWorldLighting__9CGameAreaFff -/* 8018C640 001895A0 48 00 00 10 */ b lbl_8018C650 -lbl_8018C644: -/* 8018C644 001895A4 C0 22 A4 08 */ lfs f1, lbl_805AC128@sda21(r2) -/* 8018C648 001895A8 C0 42 A4 14 */ lfs f2, lbl_805AC134@sda21(r2) -/* 8018C64C 001895AC 4B ED 1B 89 */ bl SetWeaponWorldLighting__9CGameAreaFff -lbl_8018C650: -/* 8018C650 001895B0 7F C3 F3 78 */ mr r3, r30 -/* 8018C654 001895B4 81 9E 00 00 */ lwz r12, 0(r30) -/* 8018C658 001895B8 81 8C 00 40 */ lwz r12, 0x40(r12) -/* 8018C65C 001895BC 7D 89 03 A6 */ mtctr r12 -/* 8018C660 001895C0 4E 80 04 21 */ bctrl -/* 8018C664 001895C4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8018C668 001895C8 40 82 01 44 */ bne lbl_8018C7AC -/* 8018C66C 001895CC 7F C3 F3 78 */ mr r3, r30 -/* 8018C670 001895D0 48 02 ED 35 */ bl IsLoaded__10CGunWeaponCFv -/* 8018C674 001895D4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8018C678 001895D8 41 82 01 FC */ beq lbl_8018C874 -/* 8018C67C 001895DC 88 1E 02 74 */ lbz r0, 0x274(r30) -/* 8018C680 001895E0 54 00 CF FE */ rlwinm r0, r0, 0x19, 0x1f, 0x1f -/* 8018C684 001895E4 28 00 00 01 */ cmplwi r0, 1 -/* 8018C688 001895E8 41 82 01 EC */ beq lbl_8018C874 -/* 8018C68C 001895EC 80 1E 02 30 */ lwz r0, 0x230(r30) -/* 8018C690 001895F0 28 00 00 00 */ cmplwi r0, 0 -/* 8018C694 001895F4 41 82 00 0C */ beq lbl_8018C6A0 -/* 8018C698 001895F8 38 60 00 01 */ li r3, 1 -/* 8018C69C 001895FC 48 00 00 3C */ b lbl_8018C6D8 -lbl_8018C6A0: -/* 8018C6A0 00189600 88 1E 02 2C */ lbz r0, 0x22c(r30) -/* 8018C6A4 00189604 28 00 00 00 */ cmplwi r0, 0 -/* 8018C6A8 00189608 41 82 00 2C */ beq lbl_8018C6D4 -/* 8018C6AC 0018960C 80 7E 02 28 */ lwz r3, 0x228(r30) -/* 8018C6B0 00189610 80 03 00 10 */ lwz r0, 0x10(r3) -/* 8018C6B4 00189614 28 00 00 00 */ cmplwi r0, 0 -/* 8018C6B8 00189618 41 82 00 1C */ beq lbl_8018C6D4 -/* 8018C6BC 0018961C 38 7E 02 28 */ addi r3, r30, 0x228 -/* 8018C6C0 00189620 48 1B 47 4D */ bl GetObj__6CTokenFv -/* 8018C6C4 00189624 80 03 00 04 */ lwz r0, 4(r3) -/* 8018C6C8 00189628 38 60 00 01 */ li r3, 1 -/* 8018C6CC 0018962C 90 1E 02 30 */ stw r0, 0x230(r30) -/* 8018C6D0 00189630 48 00 00 08 */ b lbl_8018C6D8 -lbl_8018C6D4: -/* 8018C6D4 00189634 38 60 00 00 */ li r3, 0 -lbl_8018C6D8: -/* 8018C6D8 00189638 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8018C6DC 0018963C 41 82 00 18 */ beq lbl_8018C6F4 -/* 8018C6E0 00189640 80 7E 02 1C */ lwz r3, 0x21c(r30) -/* 8018C6E4 00189644 80 63 00 10 */ lwz r3, 0x10(r3) -/* 8018C6E8 00189648 7C 03 00 D0 */ neg r0, r3 -/* 8018C6EC 0018964C 7C 00 1B 78 */ or r0, r0, r3 -/* 8018C6F0 00189650 54 03 0F FE */ srwi r3, r0, 0x1f -lbl_8018C6F4: -/* 8018C6F4 00189654 88 1E 02 74 */ lbz r0, 0x274(r30) -/* 8018C6F8 00189658 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 8018C6FC 0018965C 98 1E 02 74 */ stb r0, 0x274(r30) -/* 8018C700 00189660 88 1E 02 74 */ lbz r0, 0x274(r30) -/* 8018C704 00189664 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8018C708 00189668 41 82 01 6C */ beq lbl_8018C874 -/* 8018C70C 0018966C 7F C3 F3 78 */ mr r3, r30 -/* 8018C710 00189670 7F E4 FB 78 */ mr r4, r31 -/* 8018C714 00189674 4B FF FB 79 */ bl CreateBeam__11CPhazonBeamFR13CStateManager -/* 8018C718 00189678 3C 80 80 3D */ lis r4, lbl_803D08F8@ha -/* 8018C71C 0018967C 38 60 00 4C */ li r3, 0x4c -/* 8018C720 00189680 38 84 08 F8 */ addi r4, r4, lbl_803D08F8@l -/* 8018C724 00189684 38 A0 00 00 */ li r5, 0 -/* 8018C728 00189688 38 84 00 2F */ addi r4, r4, 0x2f -/* 8018C72C 0018968C 48 18 91 41 */ bl __nw__FUlPCcPCc -/* 8018C730 00189690 7C 7F 1B 79 */ or. r31, r3, r3 -/* 8018C734 00189694 41 82 00 4C */ beq lbl_8018C780 -/* 8018C738 00189698 88 1E 02 74 */ lbz r0, 0x274(r30) -/* 8018C73C 0018969C 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f -/* 8018C740 001896A0 41 82 00 0C */ beq lbl_8018C74C -/* 8018C744 001896A4 80 62 A4 00 */ lwz r3, lbl_805AC120@sda21(r2) -/* 8018C748 001896A8 48 00 00 08 */ b lbl_8018C750 -lbl_8018C74C: -/* 8018C74C 001896AC 80 62 A3 FC */ lwz r3, lbl_805AC11C@sda21(r2) -lbl_8018C750: -/* 8018C750 001896B0 48 0F EC F9 */ bl get_asset_id_from_name__12NWeaponTypesFPCc -/* 8018C754 001896B4 90 61 00 2C */ stw r3, 0x2c(r1) -/* 8018C758 001896B8 7F E3 FB 78 */ mr r3, r31 -/* 8018C75C 001896BC 38 81 00 2C */ addi r4, r1, 0x2c -/* 8018C760 001896C0 C0 1E 00 04 */ lfs f0, 4(r30) -/* 8018C764 001896C4 D0 01 00 30 */ stfs f0, 0x30(r1) -/* 8018C768 001896C8 C0 1E 00 08 */ lfs f0, 8(r30) -/* 8018C76C 001896CC D0 01 00 34 */ stfs f0, 0x34(r1) -/* 8018C770 001896D0 C0 1E 00 0C */ lfs f0, 0xc(r30) -/* 8018C774 001896D4 D0 01 00 38 */ stfs f0, 0x38(r1) -/* 8018C778 001896D8 4B F8 A5 E5 */ bl __ct__10CModelDataFRC10CStaticRes -/* 8018C77C 001896DC 7C 7F 1B 78 */ mr r31, r3 -lbl_8018C780: -/* 8018C780 001896E0 80 7E 02 24 */ lwz r3, 0x224(r30) -/* 8018C784 001896E4 38 80 00 01 */ li r4, 1 -/* 8018C788 001896E8 4B F8 A2 C5 */ bl __dt__10CModelDataFv -/* 8018C78C 001896EC 93 FE 02 24 */ stw r31, 0x224(r30) -/* 8018C790 001896F0 38 7E 02 1C */ addi r3, r30, 0x21c -/* 8018C794 001896F4 48 1B 45 AD */ bl Unlock__6CTokenFv -/* 8018C798 001896F8 88 1E 02 74 */ lbz r0, 0x274(r30) -/* 8018C79C 001896FC 38 60 00 01 */ li r3, 1 -/* 8018C7A0 00189700 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 8018C7A4 00189704 98 1E 02 74 */ stb r0, 0x274(r30) -/* 8018C7A8 00189708 48 00 00 CC */ b lbl_8018C874 -lbl_8018C7AC: -/* 8018C7AC 0018970C 88 7E 02 74 */ lbz r3, 0x274(r30) -/* 8018C7B0 00189710 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f -/* 8018C7B4 00189714 41 82 00 6C */ beq lbl_8018C820 -/* 8018C7B8 00189718 C0 02 A4 18 */ lfs f0, lbl_805AC138@sda21(r2) -/* 8018C7BC 0018971C C0 3E 02 68 */ lfs f1, 0x268(r30) -/* 8018C7C0 00189720 EC 40 07 F2 */ fmuls f2, f0, f31 -/* 8018C7C4 00189724 C0 02 A4 0C */ lfs f0, lbl_805AC12C@sda21(r2) -/* 8018C7C8 00189728 EC 21 10 2A */ fadds f1, f1, f2 -/* 8018C7CC 0018972C D0 3E 02 68 */ stfs f1, 0x268(r30) -/* 8018C7D0 00189730 C0 3E 02 68 */ lfs f1, 0x268(r30) -/* 8018C7D4 00189734 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8018C7D8 00189738 40 81 00 08 */ ble lbl_8018C7E0 -/* 8018C7DC 0018973C D0 1E 02 68 */ stfs f0, 0x268(r30) -lbl_8018C7E0: -/* 8018C7E0 00189740 C0 3E 02 68 */ lfs f1, 0x268(r30) -/* 8018C7E4 00189744 C0 02 A4 1C */ lfs f0, lbl_805AC13C@sda21(r2) -/* 8018C7E8 00189748 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8018C7EC 0018974C 40 81 00 88 */ ble lbl_8018C874 -/* 8018C7F0 00189750 C0 3E 02 6C */ lfs f1, 0x26c(r30) -/* 8018C7F4 00189754 C0 02 A4 20 */ lfs f0, lbl_805AC140@sda21(r2) -/* 8018C7F8 00189758 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8018C7FC 0018975C 40 80 00 10 */ bge lbl_8018C80C -/* 8018C800 00189760 EC 01 10 2A */ fadds f0, f1, f2 -/* 8018C804 00189764 D0 1E 02 6C */ stfs f0, 0x26c(r30) -/* 8018C808 00189768 48 00 00 6C */ b lbl_8018C874 -lbl_8018C80C: -/* 8018C80C 0018976C 88 1E 02 74 */ lbz r0, 0x274(r30) -/* 8018C810 00189770 38 60 00 00 */ li r3, 0 -/* 8018C814 00189774 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 8018C818 00189778 98 1E 02 74 */ stb r0, 0x274(r30) -/* 8018C81C 0018977C 48 00 00 58 */ b lbl_8018C874 -lbl_8018C820: -/* 8018C820 00189780 54 60 DF FF */ rlwinm. r0, r3, 0x1b, 0x1f, 0x1f -/* 8018C824 00189784 41 82 00 50 */ beq lbl_8018C874 -/* 8018C828 00189788 80 82 A4 04 */ lwz r4, lbl_805AC124@sda21(r2) -/* 8018C82C 0018978C 38 61 00 1C */ addi r3, r1, 0x1c -/* 8018C830 00189790 4B E7 84 89 */ bl string_l__4rstlFPCc -/* 8018C834 00189794 38 61 00 3C */ addi r3, r1, 0x3c -/* 8018C838 00189798 38 9E 00 10 */ addi r4, r30, 0x10 -/* 8018C83C 0018979C 38 A1 00 1C */ addi r5, r1, 0x1c -/* 8018C840 001897A0 4B F8 92 2D */ bl "GetLocatorTransform__10CModelDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8018C844 001897A4 38 61 00 6C */ addi r3, r1, 0x6c -/* 8018C848 001897A8 38 81 00 3C */ addi r4, r1, 0x3c -/* 8018C84C 001897AC 48 18 63 29 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8018C850 001897B0 38 61 00 1C */ addi r3, r1, 0x1c -/* 8018C854 001897B4 48 1B 12 8D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 8018C858 001897B8 C0 41 00 78 */ lfs f2, 0x78(r1) -/* 8018C85C 001897BC C0 21 00 88 */ lfs f1, 0x88(r1) -/* 8018C860 001897C0 C0 01 00 98 */ lfs f0, 0x98(r1) -/* 8018C864 001897C4 D0 41 00 10 */ stfs f2, 0x10(r1) -/* 8018C868 001897C8 D0 21 00 14 */ stfs f1, 0x14(r1) -/* 8018C86C 001897CC D0 01 00 18 */ stfs f0, 0x18(r1) -/* 8018C870 001897D0 D0 3E 02 70 */ stfs f1, 0x270(r30) -lbl_8018C874: -/* 8018C874 001897D4 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 -/* 8018C878 001897D8 80 01 00 C4 */ lwz r0, 0xc4(r1) -/* 8018C87C 001897DC CB E1 00 B0 */ lfd f31, 0xb0(r1) -/* 8018C880 001897E0 83 E1 00 AC */ lwz r31, 0xac(r1) -/* 8018C884 001897E4 83 C1 00 A8 */ lwz r30, 0xa8(r1) -/* 8018C888 001897E8 7C 08 03 A6 */ mtlr r0 -/* 8018C88C 001897EC 38 21 00 C0 */ addi r1, r1, 0xc0 -/* 8018C890 001897F0 4E 80 00 20 */ blr - -.global Fire__11CPhazonBeamFbfQ212CPlayerState12EChargeStageRC12CTransform4fR13CStateManager9TUniqueId -Fire__11CPhazonBeamFbfQ212CPlayerState12EChargeStageRC12CTransform4fR13CStateManager9TUniqueId: -/* 8018C894 001897F4 94 21 FF 90 */ stwu r1, -0x70(r1) -/* 8018C898 001897F8 7C 08 02 A6 */ mflr r0 -/* 8018C89C 001897FC 90 01 00 74 */ stw r0, 0x74(r1) -/* 8018C8A0 00189800 DB E1 00 60 */ stfd f31, 0x60(r1) -/* 8018C8A4 00189804 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 -/* 8018C8A8 00189808 DB C1 00 50 */ stfd f30, 0x50(r1) -/* 8018C8AC 0018980C F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 -/* 8018C8B0 00189810 DB A1 00 40 */ stfd f29, 0x40(r1) -/* 8018C8B4 00189814 F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 -/* 8018C8B8 00189818 BE E1 00 1C */ stmw r23, 0x1c(r1) -/* 8018C8BC 0018981C 7C B9 2B 79 */ or. r25, r5, r5 -/* 8018C8C0 00189820 FF A0 08 90 */ fmr f29, f1 -/* 8018C8C4 00189824 FF C0 10 90 */ fmr f30, f2 -/* 8018C8C8 00189828 7C 77 1B 78 */ mr r23, r3 -/* 8018C8CC 0018982C FF E0 18 90 */ fmr f31, f3 -/* 8018C8D0 00189830 7C 98 23 78 */ mr r24, r4 -/* 8018C8D4 00189834 7C DA 33 78 */ mr r26, r6 -/* 8018C8D8 00189838 7C FB 3B 78 */ mr r27, r7 -/* 8018C8DC 0018983C 7D 1C 43 78 */ mr r28, r8 -/* 8018C8E0 00189840 40 82 00 9C */ bne lbl_8018C97C -/* 8018C8E4 00189844 38 80 00 00 */ li r4, 0 -/* 8018C8E8 00189848 38 A0 00 00 */ li r5, 0 -/* 8018C8EC 0018984C 48 02 F6 9D */ bl ActivateCharge__10CGunWeaponFbb -/* 8018C8F0 00189850 C0 37 02 78 */ lfs f1, 0x278(r23) -/* 8018C8F4 00189854 C0 02 A4 24 */ lfs f0, lbl_805AC144@sda21(r2) -/* 8018C8F8 00189858 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8018C8FC 0018985C 40 81 00 0C */ ble lbl_8018C908 -/* 8018C900 00189860 3B E0 00 05 */ li r31, 5 -/* 8018C904 00189864 48 00 00 08 */ b lbl_8018C90C -lbl_8018C908: -/* 8018C908 00189868 3B E0 00 02 */ li r31, 2 -lbl_8018C90C: -/* 8018C90C 0018986C 3B A0 00 00 */ li r29, 0 -/* 8018C910 00189870 3B C0 00 00 */ li r30, 0 -/* 8018C914 00189874 48 00 00 50 */ b lbl_8018C964 -lbl_8018C918: -/* 8018C918 00189878 80 1B 08 D8 */ lwz r0, 0x8d8(r27) -/* 8018C91C 0018987C 7C 7E 02 14 */ add r3, r30, r0 -/* 8018C920 00189880 48 12 27 E9 */ bl SetGlobalSeed__17CProjectileWeaponFUs -/* 8018C924 00189884 A0 1C 00 00 */ lhz r0, 0(r28) -/* 8018C928 00189888 FC 20 E8 90 */ fmr f1, f29 -/* 8018C92C 0018988C FC 40 F0 90 */ fmr f2, f30 -/* 8018C930 00189890 7E E3 BB 78 */ mr r3, r23 -/* 8018C934 00189894 FC 60 F8 90 */ fmr f3, f31 -/* 8018C938 00189898 B0 01 00 0C */ sth r0, 0xc(r1) -/* 8018C93C 0018989C 7F 04 C3 78 */ mr r4, r24 -/* 8018C940 001898A0 7F 25 CB 78 */ mr r5, r25 -/* 8018C944 001898A4 7F 46 D3 78 */ mr r6, r26 -/* 8018C948 001898A8 7F 67 DB 78 */ mr r7, r27 -/* 8018C94C 001898AC 39 01 00 0C */ addi r8, r1, 0xc -/* 8018C950 001898B0 48 02 EF 39 */ bl Fire__10CGunWeaponFbfQ212CPlayerState12EChargeStageRC12CTransform4fR13CStateManager9TUniqueId -/* 8018C954 001898B4 80 7B 08 D8 */ lwz r3, 0x8d8(r27) -/* 8018C958 001898B8 48 12 27 B1 */ bl SetGlobalSeed__17CProjectileWeaponFUs -/* 8018C95C 001898BC 3B DE 03 E8 */ addi r30, r30, 0x3e8 -/* 8018C960 001898C0 3B BD 00 01 */ addi r29, r29, 1 -lbl_8018C964: -/* 8018C964 001898C4 7C 1D F8 00 */ cmpw r29, r31 -/* 8018C968 001898C8 41 80 FF B0 */ blt lbl_8018C918 -/* 8018C96C 001898CC C0 02 A4 28 */ lfs f0, lbl_805AC148@sda21(r2) -/* 8018C970 001898D0 38 00 00 01 */ li r0, 1 -/* 8018C974 001898D4 D0 17 02 78 */ stfs f0, 0x278(r23) -/* 8018C978 001898D8 48 00 00 18 */ b lbl_8018C990 -lbl_8018C97C: -/* 8018C97C 001898DC A0 1C 00 00 */ lhz r0, 0(r28) -/* 8018C980 001898E0 39 01 00 08 */ addi r8, r1, 8 -/* 8018C984 001898E4 B0 01 00 08 */ sth r0, 8(r1) -/* 8018C988 001898E8 48 02 EF 01 */ bl Fire__10CGunWeaponFbfQ212CPlayerState12EChargeStageRC12CTransform4fR13CStateManager9TUniqueId -/* 8018C98C 001898EC 38 00 00 01 */ li r0, 1 -lbl_8018C990: -/* 8018C990 001898F0 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 8018C994 001898F4 41 82 00 24 */ beq lbl_8018C9B8 -/* 8018C998 001898F8 57 20 08 3C */ slwi r0, r25, 1 -/* 8018C99C 001898FC 38 62 A3 F8 */ addi r3, r2, lbl_805AC118@sda21 -/* 8018C9A0 00189900 7C 83 02 2E */ lhzx r4, r3, r0 -/* 8018C9A4 00189904 7F 05 C3 78 */ mr r5, r24 -/* 8018C9A8 00189908 38 61 00 10 */ addi r3, r1, 0x10 -/* 8018C9AC 0018990C 38 C0 00 00 */ li r6, 0 -/* 8018C9B0 00189910 38 E0 00 4A */ li r7, 0x4a -/* 8018C9B4 00189914 48 0F E1 45 */ bl play_sfx__12NWeaponTypesFUsbbs -lbl_8018C9B8: -/* 8018C9B8 00189918 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 -/* 8018C9BC 0018991C CB E1 00 60 */ lfd f31, 0x60(r1) -/* 8018C9C0 00189920 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 -/* 8018C9C4 00189924 CB C1 00 50 */ lfd f30, 0x50(r1) -/* 8018C9C8 00189928 E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 -/* 8018C9CC 0018992C CB A1 00 40 */ lfd f29, 0x40(r1) -/* 8018C9D0 00189930 BA E1 00 1C */ lmw r23, 0x1c(r1) -/* 8018C9D4 00189934 80 01 00 74 */ lwz r0, 0x74(r1) -/* 8018C9D8 00189938 7C 08 03 A6 */ mtlr r0 -/* 8018C9DC 0018993C 38 21 00 70 */ addi r1, r1, 0x70 -/* 8018C9E0 00189940 4E 80 00 20 */ blr - -.global Draw__11CPhazonBeamCFbRC13CStateManagerRC12CTransform4fRC11CModelFlagsPC12CActorLights -Draw__11CPhazonBeamCFbRC13CStateManagerRC12CTransform4fRC11CModelFlagsPC12CActorLights: -/* 8018C9E4 00189944 94 21 FD F0 */ stwu r1, -0x210(r1) -/* 8018C9E8 00189948 7C 08 02 A6 */ mflr r0 -/* 8018C9EC 0018994C 90 01 02 14 */ stw r0, 0x214(r1) -/* 8018C9F0 00189950 BF 01 01 F0 */ stmw r24, 0x1f0(r1) -/* 8018C9F4 00189954 7C 98 23 78 */ mr r24, r4 -/* 8018C9F8 00189958 7C BD 2B 78 */ mr r29, r5 -/* 8018C9FC 0018995C 7C 7C 1B 78 */ mr r28, r3 -/* 8018CA00 00189960 7C D9 33 78 */ mr r25, r6 -/* 8018CA04 00189964 7C FE 3B 78 */ mr r30, r7 -/* 8018CA08 00189968 7D 1F 43 78 */ mr r31, r8 -/* 8018CA0C 0018996C 80 85 08 B8 */ lwz r4, 0x8b8(r5) -/* 8018CA10 00189970 80 64 00 00 */ lwz r3, 0(r4) -/* 8018CA14 00189974 7F A4 EB 78 */ mr r4, r29 -/* 8018CA18 00189978 4B F0 4B 41 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager -/* 8018CA1C 0018997C 2C 03 00 00 */ cmpwi r3, 0 -/* 8018CA20 00189980 3B 60 00 00 */ li r27, 0 -/* 8018CA24 00189984 41 82 00 0C */ beq lbl_8018CA30 -/* 8018CA28 00189988 2C 03 00 02 */ cmpwi r3, 2 -/* 8018CA2C 0018998C 40 82 00 08 */ bne lbl_8018CA34 -lbl_8018CA30: -/* 8018CA30 00189990 3B 60 00 01 */ li r27, 1 -lbl_8018CA34: -/* 8018CA34 00189994 57 60 06 3F */ clrlwi. r0, r27, 0x18 -/* 8018CA38 00189998 83 4D A0 68 */ lwz r26, gpRender@sda21(r13) -/* 8018CA3C 0018999C 41 82 00 2C */ beq lbl_8018CA68 -/* 8018CA40 001899A0 80 CD A8 28 */ lwz r6, lbl_805A93E8@sda21(r13) -/* 8018CA44 001899A4 7F 43 D3 78 */ mr r3, r26 -/* 8018CA48 001899A8 38 80 00 01 */ li r4, 1 -/* 8018CA4C 001899AC 38 A0 00 01 */ li r5, 1 -/* 8018CA50 001899B0 38 E0 00 04 */ li r7, 4 -/* 8018CA54 001899B4 39 00 00 00 */ li r8, 0 -/* 8018CA58 001899B8 48 12 A8 F5 */ bl CopyTex__13CCubeRendererFibPv8GXTexFmtb -/* 8018CA5C 001899BC 38 60 00 01 */ li r3, 1 -/* 8018CA60 001899C0 38 80 00 FF */ li r4, 0xff -/* 8018CA64 001899C4 48 1E F6 7D */ bl GXSetDstAlpha -lbl_8018CA68: -/* 8018CA68 001899C8 7F 83 E3 78 */ mr r3, r28 -/* 8018CA6C 001899CC 7F 04 C3 78 */ mr r4, r24 -/* 8018CA70 001899D0 7F A5 EB 78 */ mr r5, r29 -/* 8018CA74 001899D4 7F 26 CB 78 */ mr r6, r25 -/* 8018CA78 001899D8 7F C7 F3 78 */ mr r7, r30 -/* 8018CA7C 001899DC 7F E8 FB 78 */ mr r8, r31 -/* 8018CA80 001899E0 48 02 F2 89 */ bl Draw__10CGunWeaponCFbRC13CStateManagerRC12CTransform4fRC11CModelFlagsPC12CActorLights -/* 8018CA84 001899E4 57 60 06 3F */ clrlwi. r0, r27, 0x18 -/* 8018CA88 001899E8 41 82 00 88 */ beq lbl_8018CB10 -/* 8018CA8C 001899EC 38 00 00 00 */ li r0, 0 -/* 8018CA90 001899F0 98 01 00 30 */ stb r0, 0x30(r1) -/* 8018CA94 001899F4 48 1B D5 19 */ bl White__6CColorFv -/* 8018CA98 001899F8 C0 7C 02 70 */ lfs f3, 0x270(r28) -/* 8018CA9C 001899FC 7C 7B 1B 78 */ mr r27, r3 -/* 8018CAA0 00189A00 C0 22 A4 2C */ lfs f1, lbl_805AC14C@sda21(r2) -/* 8018CAA4 00189A04 38 61 00 08 */ addi r3, r1, 8 -/* 8018CAA8 00189A08 C0 42 A4 30 */ lfs f2, lbl_805AC150@sda21(r2) -/* 8018CAAC 00189A0C C0 02 A4 20 */ lfs f0, lbl_805AC140@sda21(r2) -/* 8018CAB0 00189A10 EC 21 00 F2 */ fmuls f1, f1, f3 -/* 8018CAB4 00189A14 EC 42 00 F2 */ fmuls f2, f2, f3 -/* 8018CAB8 00189A18 EC 80 00 F2 */ fmuls f4, f0, f3 -/* 8018CABC 00189A1C 48 1D 69 31 */ bl __ct__6CColorFffff -/* 8018CAC0 00189A20 C0 42 A4 28 */ lfs f2, lbl_805AC148@sda21(r2) -/* 8018CAC4 00189A24 7C 64 1B 78 */ mr r4, r3 -/* 8018CAC8 00189A28 C0 22 A4 0C */ lfs f1, lbl_805AC12C@sda21(r2) -/* 8018CACC 00189A2C 7F 43 D3 78 */ mr r3, r26 -/* 8018CAD0 00189A30 FC 60 10 90 */ fmr f3, f2 -/* 8018CAD4 00189A34 7F 66 DB 78 */ mr r6, r27 -/* 8018CAD8 00189A38 FC 80 10 90 */ fmr f4, f2 -/* 8018CADC 00189A3C 38 A1 00 24 */ addi r5, r1, 0x24 -/* 8018CAE0 00189A40 48 12 95 41 */ bl "DrawPhazonSuitIndirectEffect__13CCubeRendererFRC6CColorRC23TLockedToken<8CTexture>RC6CColorffff" -/* 8018CAE4 00189A44 88 01 00 30 */ lbz r0, 0x30(r1) -/* 8018CAE8 00189A48 28 00 00 00 */ cmplwi r0, 0 -/* 8018CAEC 00189A4C 41 82 00 1C */ beq lbl_8018CB08 -/* 8018CAF0 00189A50 34 61 00 24 */ addic. r3, r1, 0x24 -/* 8018CAF4 00189A54 41 82 00 14 */ beq lbl_8018CB08 -/* 8018CAF8 00189A58 28 03 00 00 */ cmplwi r3, 0 -/* 8018CAFC 00189A5C 41 82 00 0C */ beq lbl_8018CB08 -/* 8018CB00 00189A60 38 80 00 00 */ li r4, 0 -/* 8018CB04 00189A64 48 1B 43 3D */ bl __dt__6CTokenFv -lbl_8018CB08: -/* 8018CB08 00189A68 38 00 00 00 */ li r0, 0 -/* 8018CB0C 00189A6C 98 01 00 30 */ stb r0, 0x30(r1) -lbl_8018CB10: -/* 8018CB10 00189A70 80 1C 02 24 */ lwz r0, 0x224(r28) -/* 8018CB14 00189A74 28 00 00 00 */ cmplwi r0, 0 -/* 8018CB18 00189A78 41 82 01 84 */ beq lbl_8018CC9C -/* 8018CB1C 00189A7C 80 82 A9 CC */ lwz r4, lbl_805AC6EC@sda21(r2) -/* 8018CB20 00189A80 38 61 00 14 */ addi r3, r1, 0x14 -/* 8018CB24 00189A84 4B E7 81 95 */ bl string_l__4rstlFPCc -/* 8018CB28 00189A88 38 61 01 54 */ addi r3, r1, 0x154 -/* 8018CB2C 00189A8C 38 9C 00 10 */ addi r4, r28, 0x10 -/* 8018CB30 00189A90 38 A1 00 14 */ addi r5, r1, 0x14 -/* 8018CB34 00189A94 4B F8 8E 6D */ bl "GetScaledLocatorTransform__10CModelDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" -/* 8018CB38 00189A98 7F 24 CB 78 */ mr r4, r25 -/* 8018CB3C 00189A9C 38 61 01 84 */ addi r3, r1, 0x184 -/* 8018CB40 00189AA0 38 A1 01 54 */ addi r5, r1, 0x154 -/* 8018CB44 00189AA4 48 18 5E 0D */ bl __ml__12CTransform4fCFRC12CTransform4f -/* 8018CB48 00189AA8 38 61 01 B4 */ addi r3, r1, 0x1b4 -/* 8018CB4C 00189AAC 38 81 01 84 */ addi r4, r1, 0x184 -/* 8018CB50 00189AB0 48 18 60 25 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8018CB54 00189AB4 38 61 00 14 */ addi r3, r1, 0x14 -/* 8018CB58 00189AB8 48 1B 0F 89 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" -/* 8018CB5C 00189ABC 88 1C 02 74 */ lbz r0, 0x274(r28) -/* 8018CB60 00189AC0 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 8018CB64 00189AC4 41 82 00 98 */ beq lbl_8018CBFC -/* 8018CB68 00189AC8 C0 22 A4 0C */ lfs f1, lbl_805AC12C@sda21(r2) -/* 8018CB6C 00189ACC 38 61 00 F4 */ addi r3, r1, 0xf4 -/* 8018CB70 00189AD0 C0 1C 02 68 */ lfs f0, 0x268(r28) -/* 8018CB74 00189AD4 EC 21 00 28 */ fsubs f1, f1, f0 -/* 8018CB78 00189AD8 FC 40 08 90 */ fmr f2, f1 -/* 8018CB7C 00189ADC FC 60 08 90 */ fmr f3, f1 -/* 8018CB80 00189AE0 48 18 66 89 */ bl Scale__12CTransform4fFfff -/* 8018CB84 00189AE4 38 61 01 24 */ addi r3, r1, 0x124 -/* 8018CB88 00189AE8 38 81 01 B4 */ addi r4, r1, 0x1b4 -/* 8018CB8C 00189AEC 38 A1 00 F4 */ addi r5, r1, 0xf4 -/* 8018CB90 00189AF0 48 18 5D C1 */ bl __ml__12CTransform4fCFRC12CTransform4f -/* 8018CB94 00189AF4 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) -/* 8018CB98 00189AF8 38 81 01 24 */ addi r4, r1, 0x124 -/* 8018CB9C 00189AFC 81 83 00 00 */ lwz r12, 0(r3) -/* 8018CBA0 00189B00 81 8C 00 30 */ lwz r12, 0x30(r12) -/* 8018CBA4 00189B04 7D 89 03 A6 */ mtctr r12 -/* 8018CBA8 00189B08 4E 80 04 21 */ bctrl -/* 8018CBAC 00189B0C 38 7C 02 38 */ addi r3, r28, 0x238 -/* 8018CBB0 00189B10 48 02 D0 9D */ bl DrawClipCube__FRC6CAABox -/* 8018CBB4 00189B14 C0 22 A4 28 */ lfs f1, lbl_805AC148@sda21(r2) -/* 8018CBB8 00189B18 38 61 00 94 */ addi r3, r1, 0x94 -/* 8018CBBC 00189B1C C0 1C 02 6C */ lfs f0, 0x26c(r28) -/* 8018CBC0 00189B20 FC 60 08 90 */ fmr f3, f1 -/* 8018CBC4 00189B24 FC 40 00 50 */ fneg f2, f0 -/* 8018CBC8 00189B28 48 18 65 C1 */ bl Translate__12CTransform4fFfff -/* 8018CBCC 00189B2C 38 61 00 C4 */ addi r3, r1, 0xc4 -/* 8018CBD0 00189B30 38 81 01 B4 */ addi r4, r1, 0x1b4 -/* 8018CBD4 00189B34 38 A1 00 94 */ addi r5, r1, 0x94 -/* 8018CBD8 00189B38 48 18 5D 79 */ bl __ml__12CTransform4fCFRC12CTransform4f -/* 8018CBDC 00189B3C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) -/* 8018CBE0 00189B40 38 81 00 C4 */ addi r4, r1, 0xc4 -/* 8018CBE4 00189B44 81 83 00 00 */ lwz r12, 0(r3) -/* 8018CBE8 00189B48 81 8C 00 30 */ lwz r12, 0x30(r12) -/* 8018CBEC 00189B4C 7D 89 03 A6 */ mtctr r12 -/* 8018CBF0 00189B50 4E 80 04 21 */ bctrl -/* 8018CBF4 00189B54 38 7C 02 50 */ addi r3, r28, 0x250 -/* 8018CBF8 00189B58 48 02 D0 55 */ bl DrawClipCube__FRC6CAABox -lbl_8018CBFC: -/* 8018CBFC 00189B5C 88 1C 02 74 */ lbz r0, 0x274(r28) -/* 8018CC00 00189B60 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f -/* 8018CC04 00189B64 41 82 00 80 */ beq lbl_8018CC84 -/* 8018CC08 00189B68 C0 22 A4 0C */ lfs f1, lbl_805AC12C@sda21(r2) -/* 8018CC0C 00189B6C 38 60 00 05 */ li r3, 5 -/* 8018CC10 00189B70 C0 42 A4 20 */ lfs f2, lbl_805AC140@sda21(r2) -/* 8018CC14 00189B74 38 80 00 00 */ li r4, 0 -/* 8018CC18 00189B78 C0 1C 02 70 */ lfs f0, 0x270(r28) -/* 8018CC1C 00189B7C 38 00 00 03 */ li r0, 3 -/* 8018CC20 00189B80 98 61 00 0C */ stb r3, 0xc(r1) -/* 8018CC24 00189B84 FC 60 08 90 */ fmr f3, f1 -/* 8018CC28 00189B88 EC 82 00 32 */ fmuls f4, f2, f0 -/* 8018CC2C 00189B8C 38 61 00 10 */ addi r3, r1, 0x10 -/* 8018CC30 00189B90 FC 40 08 90 */ fmr f2, f1 -/* 8018CC34 00189B94 98 81 00 0D */ stb r4, 0xd(r1) -/* 8018CC38 00189B98 B0 01 00 0E */ sth r0, 0xe(r1) -/* 8018CC3C 00189B9C 48 1D 67 B1 */ bl __ct__6CColorFffff -/* 8018CC40 00189BA0 C0 3C 02 70 */ lfs f1, 0x270(r28) -/* 8018CC44 00189BA4 38 61 00 34 */ addi r3, r1, 0x34 -/* 8018CC48 00189BA8 83 7C 02 24 */ lwz r27, 0x224(r28) -/* 8018CC4C 00189BAC FC 40 08 90 */ fmr f2, f1 -/* 8018CC50 00189BB0 FC 60 08 90 */ fmr f3, f1 -/* 8018CC54 00189BB4 48 18 65 B5 */ bl Scale__12CTransform4fFfff -/* 8018CC58 00189BB8 38 61 00 64 */ addi r3, r1, 0x64 -/* 8018CC5C 00189BBC 38 81 01 B4 */ addi r4, r1, 0x1b4 -/* 8018CC60 00189BC0 38 A1 00 34 */ addi r5, r1, 0x34 -/* 8018CC64 00189BC4 48 18 5C ED */ bl __ml__12CTransform4fCFRC12CTransform4f -/* 8018CC68 00189BC8 7F 63 DB 78 */ mr r3, r27 -/* 8018CC6C 00189BCC 7F A4 EB 78 */ mr r4, r29 -/* 8018CC70 00189BD0 7F E6 FB 78 */ mr r6, r31 -/* 8018CC74 00189BD4 38 A1 00 64 */ addi r5, r1, 0x64 -/* 8018CC78 00189BD8 38 E1 00 0C */ addi r7, r1, 0xc -/* 8018CC7C 00189BDC 4B F8 81 41 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags -/* 8018CC80 00189BE0 48 00 00 1C */ b lbl_8018CC9C -lbl_8018CC84: -/* 8018CC84 00189BE4 80 7C 02 24 */ lwz r3, 0x224(r28) -/* 8018CC88 00189BE8 7F A4 EB 78 */ mr r4, r29 -/* 8018CC8C 00189BEC 7F E6 FB 78 */ mr r6, r31 -/* 8018CC90 00189BF0 7F C7 F3 78 */ mr r7, r30 -/* 8018CC94 00189BF4 38 A1 01 B4 */ addi r5, r1, 0x1b4 -/* 8018CC98 00189BF8 4B F8 81 25 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags -lbl_8018CC9C: -/* 8018CC9C 00189BFC BB 01 01 F0 */ lmw r24, 0x1f0(r1) -/* 8018CCA0 00189C00 80 01 02 14 */ lwz r0, 0x214(r1) -/* 8018CCA4 00189C04 7C 08 03 A6 */ mtlr r0 -/* 8018CCA8 00189C08 38 21 02 10 */ addi r1, r1, 0x210 -/* 8018CCAC 00189C0C 4E 80 00 20 */ blr - -.global DrawMuzzleFx__11CPhazonBeamCFRC13CStateManager -DrawMuzzleFx__11CPhazonBeamCFRC13CStateManager: -/* 8018CCB0 00189C10 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8018CCB4 00189C14 7C 08 02 A6 */ mflr r0 -/* 8018CCB8 00189C18 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018CCBC 00189C1C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8018CCC0 00189C20 7C 9F 23 78 */ mr r31, r4 -/* 8018CCC4 00189C24 93 C1 00 08 */ stw r30, 8(r1) -/* 8018CCC8 00189C28 7C 7E 1B 78 */ mr r30, r3 -/* 8018CCCC 00189C2C 48 00 01 E9 */ bl IsFiring__11CPhazonBeamCFRC13CStateManager -/* 8018CCD0 00189C30 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8018CCD4 00189C34 41 82 00 10 */ beq lbl_8018CCE4 -/* 8018CCD8 00189C38 7F C3 F3 78 */ mr r3, r30 -/* 8018CCDC 00189C3C 7F E4 FB 78 */ mr r4, r31 -/* 8018CCE0 00189C40 48 02 F4 41 */ bl DrawMuzzleFx__10CGunWeaponCFRC13CStateManager -lbl_8018CCE4: -/* 8018CCE4 00189C44 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8018CCE8 00189C48 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8018CCEC 00189C4C 83 C1 00 08 */ lwz r30, 8(r1) -/* 8018CCF0 00189C50 7C 08 03 A6 */ mtlr r0 -/* 8018CCF4 00189C54 38 21 00 10 */ addi r1, r1, 0x10 -/* 8018CCF8 00189C58 4E 80 00 20 */ blr - -.global UpdateGunFx__11CPhazonBeamFbfRC13CStateManagerRC12CTransform4f -UpdateGunFx__11CPhazonBeamFbfRC13CStateManagerRC12CTransform4f: -/* 8018CCFC 00189C5C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8018CD00 00189C60 7C 08 02 A6 */ mflr r0 -/* 8018CD04 00189C64 90 01 00 24 */ stw r0, 0x24(r1) -/* 8018CD08 00189C68 DB E1 00 18 */ stfd f31, 0x18(r1) -/* 8018CD0C 00189C6C FF E0 08 90 */ fmr f31, f1 -/* 8018CD10 00189C70 93 E1 00 14 */ stw r31, 0x14(r1) -/* 8018CD14 00189C74 7C DF 33 78 */ mr r31, r6 -/* 8018CD18 00189C78 93 C1 00 10 */ stw r30, 0x10(r1) -/* 8018CD1C 00189C7C 7C BE 2B 78 */ mr r30, r5 -/* 8018CD20 00189C80 93 A1 00 0C */ stw r29, 0xc(r1) -/* 8018CD24 00189C84 7C 9D 23 78 */ mr r29, r4 -/* 8018CD28 00189C88 93 81 00 08 */ stw r28, 8(r1) -/* 8018CD2C 00189C8C 7C 7C 1B 78 */ mr r28, r3 -/* 8018CD30 00189C90 80 63 02 34 */ lwz r3, 0x234(r3) -/* 8018CD34 00189C94 28 03 00 00 */ cmplwi r3, 0 -/* 8018CD38 00189C98 41 82 00 24 */ beq lbl_8018CD5C -/* 8018CD3C 00189C9C 7F E4 FB 78 */ mr r4, r31 -/* 8018CD40 00189CA0 48 19 1E 45 */ bl SetGlobalOrientAndTrans__11CElementGenFRC12CTransform4f -/* 8018CD44 00189CA4 80 7C 02 34 */ lwz r3, 0x234(r28) -/* 8018CD48 00189CA8 FC 20 F8 90 */ fmr f1, f31 -/* 8018CD4C 00189CAC 81 83 00 00 */ lwz r12, 0(r3) -/* 8018CD50 00189CB0 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 8018CD54 00189CB4 7D 89 03 A6 */ mtctr r12 -/* 8018CD58 00189CB8 4E 80 04 21 */ bctrl -lbl_8018CD5C: -/* 8018CD5C 00189CBC FC 20 F8 90 */ fmr f1, f31 -/* 8018CD60 00189CC0 7F 83 E3 78 */ mr r3, r28 -/* 8018CD64 00189CC4 7F A4 EB 78 */ mr r4, r29 -/* 8018CD68 00189CC8 7F C5 F3 78 */ mr r5, r30 -/* 8018CD6C 00189CCC 7F E6 FB 78 */ mr r6, r31 -/* 8018CD70 00189CD0 48 02 F5 6D */ bl UpdateGunFx__10CGunWeaponFbfRC13CStateManagerRC12CTransform4f -/* 8018CD74 00189CD4 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8018CD78 00189CD8 CB E1 00 18 */ lfd f31, 0x18(r1) -/* 8018CD7C 00189CDC 83 E1 00 14 */ lwz r31, 0x14(r1) -/* 8018CD80 00189CE0 83 C1 00 10 */ lwz r30, 0x10(r1) -/* 8018CD84 00189CE4 83 A1 00 0C */ lwz r29, 0xc(r1) -/* 8018CD88 00189CE8 83 81 00 08 */ lwz r28, 8(r1) -/* 8018CD8C 00189CEC 7C 08 03 A6 */ mtlr r0 -/* 8018CD90 00189CF0 38 21 00 20 */ addi r1, r1, 0x20 -/* 8018CD94 00189CF4 4E 80 00 20 */ blr - -.global PostRenderGunFx__11CPhazonBeamFRC13CStateManagerRC12CTransform4f -PostRenderGunFx__11CPhazonBeamFRC13CStateManagerRC12CTransform4f: -/* 8018CD98 00189CF8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8018CD9C 00189CFC 7C 08 02 A6 */ mflr r0 -/* 8018CDA0 00189D00 90 01 00 24 */ stw r0, 0x24(r1) -/* 8018CDA4 00189D04 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8018CDA8 00189D08 7C BF 2B 78 */ mr r31, r5 -/* 8018CDAC 00189D0C 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8018CDB0 00189D10 7C 9E 23 78 */ mr r30, r4 -/* 8018CDB4 00189D14 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8018CDB8 00189D18 7C 7D 1B 78 */ mr r29, r3 -/* 8018CDBC 00189D1C 80 63 02 34 */ lwz r3, 0x234(r3) -/* 8018CDC0 00189D20 28 03 00 00 */ cmplwi r3, 0 -/* 8018CDC4 00189D24 41 82 00 14 */ beq lbl_8018CDD8 -/* 8018CDC8 00189D28 81 83 00 00 */ lwz r12, 0(r3) -/* 8018CDCC 00189D2C 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 8018CDD0 00189D30 7D 89 03 A6 */ mtctr r12 -/* 8018CDD4 00189D34 4E 80 04 21 */ bctrl -lbl_8018CDD8: -/* 8018CDD8 00189D38 7F A3 EB 78 */ mr r3, r29 -/* 8018CDDC 00189D3C 7F C4 F3 78 */ mr r4, r30 -/* 8018CDE0 00189D40 7F E5 FB 78 */ mr r5, r31 -/* 8018CDE4 00189D44 48 02 F6 41 */ bl PostRenderGunFx__10CGunWeaponFRC13CStateManagerRC12CTransform4f -/* 8018CDE8 00189D48 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8018CDEC 00189D4C 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8018CDF0 00189D50 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8018CDF4 00189D54 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 8018CDF8 00189D58 7C 08 03 A6 */ mtlr r0 -/* 8018CDFC 00189D5C 38 21 00 20 */ addi r1, r1, 0x20 -/* 8018CE00 00189D60 4E 80 00 20 */ blr - -.global PreRenderGunFx__11CPhazonBeamFRC13CStateManagerRC12CTransform4f -PreRenderGunFx__11CPhazonBeamFRC13CStateManagerRC12CTransform4f: -/* 8018CE04 00189D64 94 21 FF 50 */ stwu r1, -0xb0(r1) -/* 8018CE08 00189D68 7C 08 02 A6 */ mflr r0 -/* 8018CE0C 00189D6C 90 01 00 B4 */ stw r0, 0xb4(r1) -/* 8018CE10 00189D70 93 E1 00 AC */ stw r31, 0xac(r1) -/* 8018CE14 00189D74 7C BF 2B 78 */ mr r31, r5 -/* 8018CE18 00189D78 93 C1 00 A8 */ stw r30, 0xa8(r1) -/* 8018CE1C 00189D7C 7C 9E 23 78 */ mr r30, r4 -/* 8018CE20 00189D80 93 A1 00 A4 */ stw r29, 0xa4(r1) -/* 8018CE24 00189D84 7C 7D 1B 78 */ mr r29, r3 -/* 8018CE28 00189D88 48 00 00 8D */ bl IsFiring__11CPhazonBeamCFRC13CStateManager -/* 8018CE2C 00189D8C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8018CE30 00189D90 41 82 00 68 */ beq lbl_8018CE98 -/* 8018CE34 00189D94 3C 80 80 5A */ lis r4, lbl_805A61D4@ha -/* 8018CE38 00189D98 38 61 00 68 */ addi r3, r1, 0x68 -/* 8018CE3C 00189D9C 38 84 61 D4 */ addi r4, r4, lbl_805A61D4@l -/* 8018CE40 00189DA0 48 18 5D 35 */ bl __ct__12CTransform4fFRC12CTransform4f -/* 8018CE44 00189DA4 7F E4 FB 78 */ mr r4, r31 -/* 8018CE48 00189DA8 38 61 00 08 */ addi r3, r1, 8 -/* 8018CE4C 00189DAC 48 18 58 95 */ bl GetInverse__12CTransform4fCFv -/* 8018CE50 00189DB0 38 61 00 38 */ addi r3, r1, 0x38 -/* 8018CE54 00189DB4 38 81 00 08 */ addi r4, r1, 8 -/* 8018CE58 00189DB8 38 A1 00 68 */ addi r5, r1, 0x68 -/* 8018CE5C 00189DBC 48 18 5A F5 */ bl __ml__12CTransform4fCFRC12CTransform4f -/* 8018CE60 00189DC0 38 61 00 38 */ addi r3, r1, 0x38 -/* 8018CE64 00189DC4 48 17 F8 E9 */ bl SetViewPointMatrix__9CGraphicsFRC12CTransform4f -/* 8018CE68 00189DC8 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) -/* 8018CE6C 00189DCC 3C 80 80 5A */ lis r4, skIdentity4f@ha -/* 8018CE70 00189DD0 38 84 66 70 */ addi r4, r4, skIdentity4f@l -/* 8018CE74 00189DD4 81 83 00 00 */ lwz r12, 0(r3) -/* 8018CE78 00189DD8 81 8C 00 30 */ lwz r12, 0x30(r12) -/* 8018CE7C 00189DDC 7D 89 03 A6 */ mtctr r12 -/* 8018CE80 00189DE0 4E 80 04 21 */ bctrl -/* 8018CE84 00189DE4 7F A3 EB 78 */ mr r3, r29 -/* 8018CE88 00189DE8 7F C4 F3 78 */ mr r4, r30 -/* 8018CE8C 00189DEC 48 02 F2 95 */ bl DrawMuzzleFx__10CGunWeaponCFRC13CStateManager -/* 8018CE90 00189DF0 38 61 00 68 */ addi r3, r1, 0x68 -/* 8018CE94 00189DF4 48 17 F8 B9 */ bl SetViewPointMatrix__9CGraphicsFRC12CTransform4f -lbl_8018CE98: -/* 8018CE98 00189DF8 80 01 00 B4 */ lwz r0, 0xb4(r1) -/* 8018CE9C 00189DFC 83 E1 00 AC */ lwz r31, 0xac(r1) -/* 8018CEA0 00189E00 83 C1 00 A8 */ lwz r30, 0xa8(r1) -/* 8018CEA4 00189E04 83 A1 00 A4 */ lwz r29, 0xa4(r1) -/* 8018CEA8 00189E08 7C 08 03 A6 */ mtlr r0 -/* 8018CEAC 00189E0C 38 21 00 B0 */ addi r1, r1, 0xb0 -/* 8018CEB0 00189E10 4E 80 00 20 */ blr - -.global IsFiring__11CPhazonBeamCFRC13CStateManager -IsFiring__11CPhazonBeamCFRC13CStateManager: -/* 8018CEB4 00189E14 C0 23 02 78 */ lfs f1, 0x278(r3) -/* 8018CEB8 00189E18 C0 02 A4 10 */ lfs f0, lbl_805AC130@sda21(r2) -/* 8018CEBC 00189E1C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8018CEC0 00189E20 7C 00 00 26 */ mfcr r0 -/* 8018CEC4 00189E24 54 03 0F FE */ srwi r3, r0, 0x1f -/* 8018CEC8 00189E28 4E 80 00 20 */ blr - -.global ReInitVariables__11CPhazonBeamFv -ReInitVariables__11CPhazonBeamFv: -/* 8018CECC 00189E2C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8018CED0 00189E30 7C 08 02 A6 */ mflr r0 -/* 8018CED4 00189E34 C0 22 A4 28 */ lfs f1, lbl_805AC148@sda21(r2) -/* 8018CED8 00189E38 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018CEDC 00189E3C C0 02 A4 0C */ lfs f0, lbl_805AC12C@sda21(r2) -/* 8018CEE0 00189E40 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8018CEE4 00189E44 7C 7F 1B 78 */ mr r31, r3 -/* 8018CEE8 00189E48 D0 23 02 68 */ stfs f1, 0x268(r3) -/* 8018CEEC 00189E4C D0 23 02 6C */ stfs f1, 0x26c(r3) -/* 8018CEF0 00189E50 D0 03 02 70 */ stfs f0, 0x270(r3) -/* 8018CEF4 00189E54 80 63 02 34 */ lwz r3, 0x234(r3) -/* 8018CEF8 00189E58 28 03 00 00 */ cmplwi r3, 0 -/* 8018CEFC 00189E5C 41 82 00 18 */ beq lbl_8018CF14 -/* 8018CF00 00189E60 81 83 00 00 */ lwz r12, 0(r3) -/* 8018CF04 00189E64 38 80 00 01 */ li r4, 1 -/* 8018CF08 00189E68 81 8C 00 08 */ lwz r12, 8(r12) -/* 8018CF0C 00189E6C 7D 89 03 A6 */ mtctr r12 -/* 8018CF10 00189E70 4E 80 04 21 */ bctrl -lbl_8018CF14: -/* 8018CF14 00189E74 38 00 00 00 */ li r0, 0 -/* 8018CF18 00189E78 38 80 00 01 */ li r4, 1 -/* 8018CF1C 00189E7C 90 1F 02 34 */ stw r0, 0x234(r31) -/* 8018CF20 00189E80 80 7F 02 24 */ lwz r3, 0x224(r31) -/* 8018CF24 00189E84 4B F8 9B 29 */ bl __dt__10CModelDataFv -/* 8018CF28 00189E88 38 80 00 00 */ li r4, 0 -/* 8018CF2C 00189E8C 38 60 00 01 */ li r3, 1 -/* 8018CF30 00189E90 90 9F 02 24 */ stw r4, 0x224(r31) -/* 8018CF34 00189E94 88 1F 02 74 */ lbz r0, 0x274(r31) -/* 8018CF38 00189E98 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 -/* 8018CF3C 00189E9C 98 1F 02 74 */ stb r0, 0x274(r31) -/* 8018CF40 00189EA0 88 1F 02 74 */ lbz r0, 0x274(r31) -/* 8018CF44 00189EA4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 8018CF48 00189EA8 98 1F 02 74 */ stb r0, 0x274(r31) -/* 8018CF4C 00189EAC 88 1F 02 74 */ lbz r0, 0x274(r31) -/* 8018CF50 00189EB0 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a -/* 8018CF54 00189EB4 98 1F 02 74 */ stb r0, 0x274(r31) -/* 8018CF58 00189EB8 90 9F 01 CC */ stw r4, 0x1cc(r31) -/* 8018CF5C 00189EBC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8018CF60 00189EC0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8018CF64 00189EC4 7C 08 03 A6 */ mtlr r0 -/* 8018CF68 00189EC8 38 21 00 10 */ addi r1, r1, 0x10 -/* 8018CF6C 00189ECC 4E 80 00 20 */ blr - -.global __dt__11CPhazonBeamFv -__dt__11CPhazonBeamFv: -/* 8018CF70 00189ED0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8018CF74 00189ED4 7C 08 02 A6 */ mflr r0 -/* 8018CF78 00189ED8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018CF7C 00189EDC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8018CF80 00189EE0 7C 9F 23 78 */ mr r31, r4 -/* 8018CF84 00189EE4 93 C1 00 08 */ stw r30, 8(r1) -/* 8018CF88 00189EE8 7C 7E 1B 79 */ or. r30, r3, r3 -/* 8018CF8C 00189EEC 41 82 00 98 */ beq lbl_8018D024 -/* 8018CF90 00189EF0 3C 60 80 3E */ lis r3, lbl_803E42E8@ha -/* 8018CF94 00189EF4 34 1E 02 34 */ addic. r0, r30, 0x234 -/* 8018CF98 00189EF8 38 03 42 E8 */ addi r0, r3, lbl_803E42E8@l -/* 8018CF9C 00189EFC 90 1E 00 00 */ stw r0, 0(r30) -/* 8018CFA0 00189F00 41 82 00 24 */ beq lbl_8018CFC4 -/* 8018CFA4 00189F04 80 7E 02 34 */ lwz r3, 0x234(r30) -/* 8018CFA8 00189F08 28 03 00 00 */ cmplwi r3, 0 -/* 8018CFAC 00189F0C 41 82 00 18 */ beq lbl_8018CFC4 -/* 8018CFB0 00189F10 81 83 00 00 */ lwz r12, 0(r3) -/* 8018CFB4 00189F14 38 80 00 01 */ li r4, 1 -/* 8018CFB8 00189F18 81 8C 00 08 */ lwz r12, 8(r12) -/* 8018CFBC 00189F1C 7D 89 03 A6 */ mtctr r12 -/* 8018CFC0 00189F20 4E 80 04 21 */ bctrl -lbl_8018CFC4: -/* 8018CFC4 00189F24 34 1E 02 28 */ addic. r0, r30, 0x228 -/* 8018CFC8 00189F28 41 82 00 18 */ beq lbl_8018CFE0 -/* 8018CFCC 00189F2C 34 1E 02 28 */ addic. r0, r30, 0x228 -/* 8018CFD0 00189F30 41 82 00 10 */ beq lbl_8018CFE0 -/* 8018CFD4 00189F34 38 7E 02 28 */ addi r3, r30, 0x228 -/* 8018CFD8 00189F38 38 80 00 00 */ li r4, 0 -/* 8018CFDC 00189F3C 48 1B 3E 65 */ bl __dt__6CTokenFv -lbl_8018CFE0: -/* 8018CFE0 00189F40 34 1E 02 24 */ addic. r0, r30, 0x224 -/* 8018CFE4 00189F44 41 82 00 10 */ beq lbl_8018CFF4 -/* 8018CFE8 00189F48 80 7E 02 24 */ lwz r3, 0x224(r30) -/* 8018CFEC 00189F4C 38 80 00 01 */ li r4, 1 -/* 8018CFF0 00189F50 4B F8 9A 5D */ bl __dt__10CModelDataFv -lbl_8018CFF4: -/* 8018CFF4 00189F54 34 1E 02 1C */ addic. r0, r30, 0x21c -/* 8018CFF8 00189F58 41 82 00 10 */ beq lbl_8018D008 -/* 8018CFFC 00189F5C 38 7E 02 1C */ addi r3, r30, 0x21c -/* 8018D000 00189F60 38 80 00 00 */ li r4, 0 -/* 8018D004 00189F64 48 1B 3E 3D */ bl __dt__6CTokenFv -lbl_8018D008: -/* 8018D008 00189F68 7F C3 F3 78 */ mr r3, r30 -/* 8018D00C 00189F6C 38 80 00 00 */ li r4, 0 -/* 8018D010 00189F70 48 02 FC B1 */ bl __dt__10CGunWeaponFv -/* 8018D014 00189F74 7F E0 07 35 */ extsh. r0, r31 -/* 8018D018 00189F78 40 81 00 0C */ ble lbl_8018D024 -/* 8018D01C 00189F7C 7F C3 F3 78 */ mr r3, r30 -/* 8018D020 00189F80 48 18 89 11 */ bl Free__7CMemoryFPCv -lbl_8018D024: -/* 8018D024 00189F84 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8018D028 00189F88 7F C3 F3 78 */ mr r3, r30 -/* 8018D02C 00189F8C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8018D030 00189F90 83 C1 00 08 */ lwz r30, 8(r1) -/* 8018D034 00189F94 7C 08 03 A6 */ mtlr r0 -/* 8018D038 00189F98 38 21 00 10 */ addi r1, r1, 0x10 -/* 8018D03C 00189F9C 4E 80 00 20 */ blr - -.global __ct__11CPhazonBeamFUi11EWeaponType9TUniqueId14EMaterialTypesRC9CVector3f -__ct__11CPhazonBeamFUi11EWeaponType9TUniqueId14EMaterialTypesRC9CVector3f: -/* 8018D040 00189FA0 94 21 FF 70 */ stwu r1, -0x90(r1) -/* 8018D044 00189FA4 7C 08 02 A6 */ mflr r0 -/* 8018D048 00189FA8 90 01 00 94 */ stw r0, 0x94(r1) -/* 8018D04C 00189FAC 93 E1 00 8C */ stw r31, 0x8c(r1) -/* 8018D050 00189FB0 7D 1F 43 78 */ mr r31, r8 -/* 8018D054 00189FB4 93 C1 00 88 */ stw r30, 0x88(r1) -/* 8018D058 00189FB8 7C 7E 1B 78 */ mr r30, r3 -/* 8018D05C 00189FBC 93 A1 00 84 */ stw r29, 0x84(r1) -/* 8018D060 00189FC0 A0 06 00 00 */ lhz r0, 0(r6) -/* 8018D064 00189FC4 38 C1 00 08 */ addi r6, r1, 8 -/* 8018D068 00189FC8 B0 01 00 08 */ sth r0, 8(r1) -/* 8018D06C 00189FCC 48 03 01 45 */ bl __ct__10CGunWeaponFUi11EWeaponType9TUniqueId14EMaterialTypesRC9CVector3f -/* 8018D070 00189FD0 3C 80 80 3E */ lis r4, lbl_803E42E8@ha -/* 8018D074 00189FD4 38 61 00 14 */ addi r3, r1, 0x14 -/* 8018D078 00189FD8 38 04 42 E8 */ addi r0, r4, lbl_803E42E8@l -/* 8018D07C 00189FDC 80 A2 A3 FC */ lwz r5, lbl_805AC11C@sda21(r2) -/* 8018D080 00189FE0 90 1E 00 00 */ stw r0, 0(r30) -/* 8018D084 00189FE4 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) -/* 8018D088 00189FE8 81 84 00 00 */ lwz r12, 0(r4) -/* 8018D08C 00189FEC 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 8018D090 00189FF0 7D 89 03 A6 */ mtctr r12 -/* 8018D094 00189FF4 4E 80 04 21 */ bctrl -/* 8018D098 00189FF8 38 7E 02 1C */ addi r3, r30, 0x21c -/* 8018D09C 00189FFC 38 81 00 14 */ addi r4, r1, 0x14 -/* 8018D0A0 0018A000 48 1B 3E 09 */ bl __ct__6CTokenFRC6CToken -/* 8018D0A4 0018A004 38 61 00 14 */ addi r3, r1, 0x14 -/* 8018D0A8 0018A008 38 80 FF FF */ li r4, -1 -/* 8018D0AC 0018A00C 48 1B 3D 95 */ bl __dt__6CTokenFv -/* 8018D0B0 0018A010 38 00 00 00 */ li r0, 0 -/* 8018D0B4 0018A014 3C 60 80 3D */ lis r3, lbl_803D08F8@ha -/* 8018D0B8 0018A018 90 1E 02 24 */ stw r0, 0x224(r30) -/* 8018D0BC 0018A01C 38 A3 08 F8 */ addi r5, r3, lbl_803D08F8@l -/* 8018D0C0 0018A020 38 61 00 0C */ addi r3, r1, 0xc -/* 8018D0C4 0018A024 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) -/* 8018D0C8 0018A028 38 A5 00 36 */ addi r5, r5, 0x36 -/* 8018D0CC 0018A02C 81 84 00 00 */ lwz r12, 0(r4) -/* 8018D0D0 0018A030 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 8018D0D4 0018A034 7D 89 03 A6 */ mtctr r12 -/* 8018D0D8 0018A038 4E 80 04 21 */ bctrl -/* 8018D0DC 0018A03C 3B BE 02 28 */ addi r29, r30, 0x228 -/* 8018D0E0 0018A040 38 81 00 0C */ addi r4, r1, 0xc -/* 8018D0E4 0018A044 7F A3 EB 78 */ mr r3, r29 -/* 8018D0E8 0018A048 48 1B 3D C1 */ bl __ct__6CTokenFRC6CToken -/* 8018D0EC 0018A04C 38 00 00 00 */ li r0, 0 -/* 8018D0F0 0018A050 38 61 00 0C */ addi r3, r1, 0xc -/* 8018D0F4 0018A054 90 1D 00 08 */ stw r0, 8(r29) -/* 8018D0F8 0018A058 38 80 FF FF */ li r4, -1 -/* 8018D0FC 0018A05C 48 1B 3D 45 */ bl __dt__6CTokenFv -/* 8018D100 0018A060 38 00 00 00 */ li r0, 0 -/* 8018D104 0018A064 C0 02 A4 34 */ lfs f0, lbl_805AC154@sda21(r2) -/* 8018D108 0018A068 90 1E 02 34 */ stw r0, 0x234(r30) -/* 8018D10C 0018A06C 38 7E 02 38 */ addi r3, r30, 0x238 -/* 8018D110 0018A070 C0 C2 A4 38 */ lfs f6, lbl_805AC158@sda21(r2) -/* 8018D114 0018A074 38 81 00 70 */ addi r4, r1, 0x70 -/* 8018D118 0018A078 C1 7F 00 04 */ lfs f11, 4(r31) -/* 8018D11C 0018A07C 38 A1 00 58 */ addi r5, r1, 0x58 -/* 8018D120 0018A080 C0 A2 A4 3C */ lfs f5, lbl_805AC15C@sda21(r2) -/* 8018D124 0018A084 C0 62 A4 40 */ lfs f3, lbl_805AC160@sda21(r2) -/* 8018D128 0018A088 ED 4B 01 B2 */ fmuls f10, f11, f6 -/* 8018D12C 0018A08C C0 42 A4 28 */ lfs f2, lbl_805AC148@sda21(r2) -/* 8018D130 0018A090 ED 2B 01 72 */ fmuls f9, f11, f5 -/* 8018D134 0018A094 C0 22 A4 44 */ lfs f1, lbl_805AC164@sda21(r2) -/* 8018D138 0018A098 EC 8B 00 32 */ fmuls f4, f11, f0 -/* 8018D13C 0018A09C ED 0B 00 B2 */ fmuls f8, f11, f2 -/* 8018D140 0018A0A0 EC EB 00 72 */ fmuls f7, f11, f1 -/* 8018D144 0018A0A4 D0 01 00 4C */ stfs f0, 0x4c(r1) -/* 8018D148 0018A0A8 EC 0B 00 F2 */ fmuls f0, f11, f3 -/* 8018D14C 0018A0AC D0 C1 00 50 */ stfs f6, 0x50(r1) -/* 8018D150 0018A0B0 D0 A1 00 54 */ stfs f5, 0x54(r1) -/* 8018D154 0018A0B4 D0 81 00 58 */ stfs f4, 0x58(r1) -/* 8018D158 0018A0B8 D1 41 00 5C */ stfs f10, 0x5c(r1) -/* 8018D15C 0018A0BC D1 21 00 60 */ stfs f9, 0x60(r1) -/* 8018D160 0018A0C0 D0 61 00 64 */ stfs f3, 0x64(r1) -/* 8018D164 0018A0C4 D0 41 00 68 */ stfs f2, 0x68(r1) -/* 8018D168 0018A0C8 D0 21 00 6C */ stfs f1, 0x6c(r1) -/* 8018D16C 0018A0CC D0 01 00 70 */ stfs f0, 0x70(r1) -/* 8018D170 0018A0D0 D1 01 00 74 */ stfs f8, 0x74(r1) -/* 8018D174 0018A0D4 D0 E1 00 78 */ stfs f7, 0x78(r1) -/* 8018D178 0018A0D8 48 1A B3 91 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 8018D17C 0018A0DC C0 02 A4 48 */ lfs f0, lbl_805AC168@sda21(r2) -/* 8018D180 0018A0E0 38 7E 02 50 */ addi r3, r30, 0x250 -/* 8018D184 0018A0E4 C1 7F 00 04 */ lfs f11, 4(r31) -/* 8018D188 0018A0E8 38 81 00 40 */ addi r4, r1, 0x40 -/* 8018D18C 0018A0EC C0 C2 A4 4C */ lfs f6, lbl_805AC16C@sda21(r2) -/* 8018D190 0018A0F0 38 A1 00 28 */ addi r5, r1, 0x28 -/* 8018D194 0018A0F4 C0 A2 A4 50 */ lfs f5, lbl_805AC170@sda21(r2) -/* 8018D198 0018A0F8 EC 8B 00 32 */ fmuls f4, f11, f0 -/* 8018D19C 0018A0FC C0 62 A4 54 */ lfs f3, lbl_805AC174@sda21(r2) -/* 8018D1A0 0018A100 ED 4B 01 B2 */ fmuls f10, f11, f6 -/* 8018D1A4 0018A104 C0 42 A4 28 */ lfs f2, lbl_805AC148@sda21(r2) -/* 8018D1A8 0018A108 ED 2B 01 72 */ fmuls f9, f11, f5 -/* 8018D1AC 0018A10C C0 22 A4 58 */ lfs f1, lbl_805AC178@sda21(r2) -/* 8018D1B0 0018A110 ED 0B 00 B2 */ fmuls f8, f11, f2 -/* 8018D1B4 0018A114 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 8018D1B8 0018A118 EC EB 00 72 */ fmuls f7, f11, f1 -/* 8018D1BC 0018A11C EC 0B 00 F2 */ fmuls f0, f11, f3 -/* 8018D1C0 0018A120 D0 C1 00 20 */ stfs f6, 0x20(r1) -/* 8018D1C4 0018A124 D0 A1 00 24 */ stfs f5, 0x24(r1) -/* 8018D1C8 0018A128 D0 81 00 28 */ stfs f4, 0x28(r1) -/* 8018D1CC 0018A12C D1 41 00 2C */ stfs f10, 0x2c(r1) -/* 8018D1D0 0018A130 D1 21 00 30 */ stfs f9, 0x30(r1) -/* 8018D1D4 0018A134 D0 61 00 34 */ stfs f3, 0x34(r1) -/* 8018D1D8 0018A138 D0 41 00 38 */ stfs f2, 0x38(r1) -/* 8018D1DC 0018A13C D0 21 00 3C */ stfs f1, 0x3c(r1) -/* 8018D1E0 0018A140 D0 01 00 40 */ stfs f0, 0x40(r1) -/* 8018D1E4 0018A144 D1 01 00 44 */ stfs f8, 0x44(r1) -/* 8018D1E8 0018A148 D0 E1 00 48 */ stfs f7, 0x48(r1) -/* 8018D1EC 0018A14C 48 1A B3 1D */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 8018D1F0 0018A150 C0 42 A4 28 */ lfs f2, lbl_805AC148@sda21(r2) -/* 8018D1F4 0018A154 38 A0 00 00 */ li r5, 0 -/* 8018D1F8 0018A158 C0 22 A4 0C */ lfs f1, lbl_805AC12C@sda21(r2) -/* 8018D1FC 0018A15C 38 80 00 01 */ li r4, 1 -/* 8018D200 0018A160 D0 5E 02 68 */ stfs f2, 0x268(r30) -/* 8018D204 0018A164 7F C3 F3 78 */ mr r3, r30 -/* 8018D208 0018A168 C0 02 A4 24 */ lfs f0, lbl_805AC144@sda21(r2) -/* 8018D20C 0018A16C D0 5E 02 6C */ stfs f2, 0x26c(r30) -/* 8018D210 0018A170 D0 3E 02 70 */ stfs f1, 0x270(r30) -/* 8018D214 0018A174 88 1E 02 74 */ lbz r0, 0x274(r30) -/* 8018D218 0018A178 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 -/* 8018D21C 0018A17C 98 1E 02 74 */ stb r0, 0x274(r30) -/* 8018D220 0018A180 88 1E 02 74 */ lbz r0, 0x274(r30) -/* 8018D224 0018A184 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 -/* 8018D228 0018A188 98 1E 02 74 */ stb r0, 0x274(r30) -/* 8018D22C 0018A18C 88 1E 02 74 */ lbz r0, 0x274(r30) -/* 8018D230 0018A190 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a -/* 8018D234 0018A194 98 1E 02 74 */ stb r0, 0x274(r30) -/* 8018D238 0018A198 88 1E 02 74 */ lbz r0, 0x274(r30) -/* 8018D23C 0018A19C 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b -/* 8018D240 0018A1A0 98 1E 02 74 */ stb r0, 0x274(r30) -/* 8018D244 0018A1A4 D0 1E 02 78 */ stfs f0, 0x278(r30) -/* 8018D248 0018A1A8 83 E1 00 8C */ lwz r31, 0x8c(r1) -/* 8018D24C 0018A1AC 83 C1 00 88 */ lwz r30, 0x88(r1) -/* 8018D250 0018A1B0 83 A1 00 84 */ lwz r29, 0x84(r1) -/* 8018D254 0018A1B4 80 01 00 94 */ lwz r0, 0x94(r1) -/* 8018D258 0018A1B8 7C 08 03 A6 */ mtlr r0 -/* 8018D25C 0018A1BC 38 21 00 90 */ addi r1, r1, 0x90 -/* 8018D260 0018A1C0 4E 80 00 20 */ blr - -.global __dt__21CScriptTargetingPointFv -__dt__21CScriptTargetingPointFv: -/* 8018D264 0018A1C4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8018D268 0018A1C8 7C 08 02 A6 */ mflr r0 -/* 8018D26C 0018A1CC 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018D270 0018A1D0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8018D274 0018A1D4 7C 9F 23 78 */ mr r31, r4 -/* 8018D278 0018A1D8 93 C1 00 08 */ stw r30, 8(r1) -/* 8018D27C 0018A1DC 7C 7E 1B 79 */ or. r30, r3, r3 -/* 8018D280 0018A1E0 41 82 00 28 */ beq lbl_8018D2A8 -/* 8018D284 0018A1E4 3C A0 80 3E */ lis r5, lbl_803E4330@ha -/* 8018D288 0018A1E8 38 80 00 00 */ li r4, 0 -/* 8018D28C 0018A1EC 38 05 43 30 */ addi r0, r5, lbl_803E4330@l -/* 8018D290 0018A1F0 90 1E 00 00 */ stw r0, 0(r30) -/* 8018D294 0018A1F4 4B EC 84 5D */ bl __dt__6CActorFv -/* 8018D298 0018A1F8 7F E0 07 35 */ extsh. r0, r31 -/* 8018D29C 0018A1FC 40 81 00 0C */ ble lbl_8018D2A8 -/* 8018D2A0 0018A200 7F C3 F3 78 */ mr r3, r30 -/* 8018D2A4 0018A204 48 18 86 8D */ bl Free__7CMemoryFPCv -lbl_8018D2A8: -/* 8018D2A8 0018A208 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8018D2AC 0018A20C 7F C3 F3 78 */ mr r3, r30 -/* 8018D2B0 0018A210 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8018D2B4 0018A214 83 C1 00 08 */ lwz r30, 8(r1) -/* 8018D2B8 0018A218 7C 08 03 A6 */ mtlr r0 -/* 8018D2BC 0018A21C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8018D2C0 0018A220 4E 80 00 20 */ blr - -.global Render__21CScriptTargetingPointCFRC13CStateManager -Render__21CScriptTargetingPointCFRC13CStateManager: -/* 8018D2C4 0018A224 4E 80 00 20 */ blr - -.global AddToRenderer__21CScriptTargetingPointCFRC14CFrustumPlanesRC13CStateManager -AddToRenderer__21CScriptTargetingPointCFRC14CFrustumPlanesRC13CStateManager: -/* 8018D2C8 0018A228 4E 80 00 20 */ blr - -.global Think__21CScriptTargetingPointFfR13CStateManager -Think__21CScriptTargetingPointFfR13CStateManager: -/* 8018D2CC 0018A22C C0 43 00 EC */ lfs f2, 0xec(r3) -/* 8018D2D0 0018A230 C0 02 A4 60 */ lfs f0, lbl_805AC180@sda21(r2) -/* 8018D2D4 0018A234 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8018D2D8 0018A238 4C 81 00 20 */ blelr -/* 8018D2DC 0018A23C EC 02 08 28 */ fsubs f0, f2, f1 -/* 8018D2E0 0018A240 D0 03 00 EC */ stfs f0, 0xec(r3) -/* 8018D2E4 0018A244 4E 80 00 20 */ blr - -.global GetLocked__21CScriptTargetingPointCFv -GetLocked__21CScriptTargetingPointCFv: -/* 8018D2E8 0018A248 80 63 00 24 */ lwz r3, 0x24(r3) -/* 8018D2EC 0018A24C 7C 03 00 D0 */ neg r0, r3 -/* 8018D2F0 0018A250 7C 00 18 78 */ andc r0, r0, r3 -/* 8018D2F4 0018A254 54 03 0F FE */ srwi r3, r0, 0x1f -/* 8018D2F8 0018A258 4E 80 00 20 */ blr - -.global AcceptScriptMsg__21CScriptTargetingPointF20EScriptObjectMessage9TUniqueIdR13CStateManager -AcceptScriptMsg__21CScriptTargetingPointF20EScriptObjectMessage9TUniqueIdR13CStateManager: -/* 8018D2FC 0018A25C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8018D300 0018A260 7C 08 02 A6 */ mflr r0 -/* 8018D304 0018A264 90 01 00 24 */ stw r0, 0x24(r1) -/* 8018D308 0018A268 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8018D30C 0018A26C 7C DF 33 78 */ mr r31, r6 -/* 8018D310 0018A270 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8018D314 0018A274 7C 9E 23 78 */ mr r30, r4 -/* 8018D318 0018A278 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8018D31C 0018A27C 7C 7D 1B 78 */ mr r29, r3 -/* 8018D320 0018A280 A0 05 00 00 */ lhz r0, 0(r5) -/* 8018D324 0018A284 38 A1 00 08 */ addi r5, r1, 8 -/* 8018D328 0018A288 B0 01 00 08 */ sth r0, 8(r1) -/* 8018D32C 0018A28C 4B EC 62 E9 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager -/* 8018D330 0018A290 2C 1E 00 04 */ cmpwi r30, 4 -/* 8018D334 0018A294 41 82 00 14 */ beq lbl_8018D348 -/* 8018D338 0018A298 40 80 00 24 */ bge lbl_8018D35C -/* 8018D33C 0018A29C 2C 1E 00 01 */ cmpwi r30, 1 -/* 8018D340 0018A2A0 41 82 00 08 */ beq lbl_8018D348 -/* 8018D344 0018A2A4 48 00 00 18 */ b lbl_8018D35C -lbl_8018D348: -/* 8018D348 0018A2A8 7F A3 EB 78 */ mr r3, r29 -/* 8018D34C 0018A2AC 7F E5 FB 78 */ mr r5, r31 -/* 8018D350 0018A2B0 38 80 00 0A */ li r4, 0xa -/* 8018D354 0018A2B4 38 C0 FF FF */ li r6, -1 -/* 8018D358 0018A2B8 4B EC 3D 69 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage -lbl_8018D35C: -/* 8018D35C 0018A2BC 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8018D360 0018A2C0 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8018D364 0018A2C4 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8018D368 0018A2C8 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 8018D36C 0018A2CC 7C 08 03 A6 */ mtlr r0 -/* 8018D370 0018A2D0 38 21 00 20 */ addi r1, r1, 0x20 -/* 8018D374 0018A2D4 4E 80 00 20 */ blr - -.global Accept__21CScriptTargetingPointFR8IVisitor -Accept__21CScriptTargetingPointFR8IVisitor: -/* 8018D378 0018A2D8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8018D37C 0018A2DC 7C 08 02 A6 */ mflr r0 -/* 8018D380 0018A2E0 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018D384 0018A2E4 7C 60 1B 78 */ mr r0, r3 -/* 8018D388 0018A2E8 7C 83 23 78 */ mr r3, r4 -/* 8018D38C 0018A2EC 81 84 00 00 */ lwz r12, 0(r4) -/* 8018D390 0018A2F0 7C 04 03 78 */ mr r4, r0 -/* 8018D394 0018A2F4 81 8C 00 C0 */ lwz r12, 0xc0(r12) -/* 8018D398 0018A2F8 7D 89 03 A6 */ mtctr r12 -/* 8018D39C 0018A2FC 4E 80 04 21 */ bctrl -/* 8018D3A0 0018A300 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8018D3A4 0018A304 7C 08 03 A6 */ mtlr r0 -/* 8018D3A8 0018A308 38 21 00 10 */ addi r1, r1, 0x10 -/* 8018D3AC 0018A30C 4E 80 00 20 */ blr - -.global "__ct__21CScriptTargetingPointF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fb" -"__ct__21CScriptTargetingPointF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fb": -/* 8018D3B0 0018A310 94 21 FF 10 */ stwu r1, -0xf0(r1) -/* 8018D3B4 0018A314 7C 08 02 A6 */ mflr r0 -/* 8018D3B8 0018A318 90 01 00 F4 */ stw r0, 0xf4(r1) -/* 8018D3BC 0018A31C BF 41 00 D8 */ stmw r26, 0xd8(r1) -/* 8018D3C0 0018A320 7C 7F 1B 78 */ mr r31, r3 -/* 8018D3C4 0018A324 7C 9A 23 78 */ mr r26, r4 -/* 8018D3C8 0018A328 7C BB 2B 78 */ mr r27, r5 -/* 8018D3CC 0018A32C 7C DC 33 78 */ mr r28, r6 -/* 8018D3D0 0018A330 7C FD 3B 78 */ mr r29, r7 -/* 8018D3D4 0018A334 7D 1E 43 78 */ mr r30, r8 -/* 8018D3D8 0018A338 38 61 00 88 */ addi r3, r1, 0x88 -/* 8018D3DC 0018A33C 4B EA D3 C9 */ bl CModelDataNull__10CModelDataFv -/* 8018D3E0 0018A340 38 61 00 20 */ addi r3, r1, 0x20 -/* 8018D3E4 0018A344 4B E8 DA 55 */ bl None__16CActorParametersFv -/* 8018D3E8 0018A348 A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) -/* 8018D3EC 0018A34C 38 00 00 00 */ li r0, 0 -/* 8018D3F0 0018A350 80 AD 8E E8 */ lwz r5, lbl_805A7AA8@sda21(r13) -/* 8018D3F4 0018A354 38 60 00 00 */ li r3, 0 -/* 8018D3F8 0018A358 B0 81 00 10 */ sth r4, 0x10(r1) -/* 8018D3FC 0018A35C 38 80 00 01 */ li r4, 1 -/* 8018D400 0018A360 90 01 00 1C */ stw r0, 0x1c(r1) -/* 8018D404 0018A364 90 01 00 18 */ stw r0, 0x18(r1) -/* 8018D408 0018A368 48 1F CA ED */ bl __shl2i -/* 8018D40C 0018A36C 80 A1 00 18 */ lwz r5, 0x18(r1) -/* 8018D410 0018A370 39 61 00 20 */ addi r11, r1, 0x20 -/* 8018D414 0018A374 80 C1 00 1C */ lwz r6, 0x1c(r1) -/* 8018D418 0018A378 38 01 00 10 */ addi r0, r1, 0x10 -/* 8018D41C 0018A37C 7C A3 1B 78 */ or r3, r5, r3 -/* 8018D420 0018A380 A1 3A 00 00 */ lhz r9, 0(r26) -/* 8018D424 0018A384 7C C4 23 78 */ or r4, r6, r4 -/* 8018D428 0018A388 90 61 00 18 */ stw r3, 0x18(r1) -/* 8018D42C 0018A38C 7F E3 FB 78 */ mr r3, r31 -/* 8018D430 0018A390 7F C5 F3 78 */ mr r5, r30 -/* 8018D434 0018A394 90 81 00 1C */ stw r4, 0x1c(r1) -/* 8018D438 0018A398 7F 66 DB 78 */ mr r6, r27 -/* 8018D43C 0018A39C 7F 87 E3 78 */ mr r7, r28 -/* 8018D440 0018A3A0 7F A8 EB 78 */ mr r8, r29 -/* 8018D444 0018A3A4 B1 21 00 14 */ sth r9, 0x14(r1) -/* 8018D448 0018A3A8 38 81 00 14 */ addi r4, r1, 0x14 -/* 8018D44C 0018A3AC 39 21 00 88 */ addi r9, r1, 0x88 -/* 8018D450 0018A3B0 39 41 00 18 */ addi r10, r1, 0x18 -/* 8018D454 0018A3B4 91 61 00 08 */ stw r11, 8(r1) -/* 8018D458 0018A3B8 90 01 00 0C */ stw r0, 0xc(r1) -/* 8018D45C 0018A3BC 4B EC 83 C5 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" -/* 8018D460 0018A3C0 38 61 00 20 */ addi r3, r1, 0x20 -/* 8018D464 0018A3C4 38 80 FF FF */ li r4, -1 -/* 8018D468 0018A3C8 4B F7 91 A1 */ bl __dt__16CActorParametersFv -/* 8018D46C 0018A3CC 38 61 00 88 */ addi r3, r1, 0x88 -/* 8018D470 0018A3D0 38 80 FF FF */ li r4, -1 -/* 8018D474 0018A3D4 4B F8 95 D9 */ bl __dt__10CModelDataFv -/* 8018D478 0018A3D8 3C 60 80 3E */ lis r3, lbl_803E4330@ha -/* 8018D47C 0018A3DC 38 80 00 00 */ li r4, 0 -/* 8018D480 0018A3E0 38 03 43 30 */ addi r0, r3, lbl_803E4330@l -/* 8018D484 0018A3E4 C0 02 A4 60 */ lfs f0, lbl_805AC180@sda21(r2) -/* 8018D488 0018A3E8 90 1F 00 00 */ stw r0, 0(r31) -/* 8018D48C 0018A3EC 7F E3 FB 78 */ mr r3, r31 -/* 8018D490 0018A3F0 88 1F 00 E8 */ lbz r0, 0xe8(r31) -/* 8018D494 0018A3F4 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 -/* 8018D498 0018A3F8 98 1F 00 E8 */ stb r0, 0xe8(r31) -/* 8018D49C 0018A3FC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8018D4A0 0018A400 B0 1F 00 EA */ sth r0, 0xea(r31) -/* 8018D4A4 0018A404 D0 1F 00 EC */ stfs f0, 0xec(r31) -/* 8018D4A8 0018A408 BB 41 00 D8 */ lmw r26, 0xd8(r1) -/* 8018D4AC 0018A40C 80 01 00 F4 */ lwz r0, 0xf4(r1) -/* 8018D4B0 0018A410 7C 08 03 A6 */ mtlr r0 -/* 8018D4B4 0018A414 38 21 00 F0 */ addi r1, r1, 0xf0 -/* 8018D4B8 0018A418 4E 80 00 20 */ blr - -.global __dt__11CBSWallHangFv -__dt__11CBSWallHangFv: -/* 8018D4BC 0018A41C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8018D4C0 0018A420 7C 08 02 A6 */ mflr r0 -/* 8018D4C4 0018A424 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018D4C8 0018A428 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8018D4CC 0018A42C 7C 7F 1B 79 */ or. r31, r3, r3 -/* 8018D4D0 0018A430 41 82 00 30 */ beq lbl_8018D500 -/* 8018D4D4 0018A434 3C 60 80 3E */ lis r3, lbl_803E43A0@ha -/* 8018D4D8 0018A438 38 03 43 A0 */ addi r0, r3, lbl_803E43A0@l -/* 8018D4DC 0018A43C 90 1F 00 00 */ stw r0, 0(r31) -/* 8018D4E0 0018A440 41 82 00 10 */ beq lbl_8018D4F0 -/* 8018D4E4 0018A444 3C 60 80 3E */ lis r3, lbl_803E1318@ha -/* 8018D4E8 0018A448 38 03 13 18 */ addi r0, r3, lbl_803E1318@l -/* 8018D4EC 0018A44C 90 1F 00 00 */ stw r0, 0(r31) -lbl_8018D4F0: -/* 8018D4F0 0018A450 7C 80 07 35 */ extsh. r0, r4 -/* 8018D4F4 0018A454 40 81 00 0C */ ble lbl_8018D500 -/* 8018D4F8 0018A458 7F E3 FB 78 */ mr r3, r31 -/* 8018D4FC 0018A45C 48 18 84 35 */ bl Free__7CMemoryFPCv -lbl_8018D500: -/* 8018D500 0018A460 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8018D504 0018A464 7F E3 FB 78 */ mr r3, r31 -/* 8018D508 0018A468 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8018D50C 0018A46C 7C 08 03 A6 */ mtlr r0 -/* 8018D510 0018A470 38 21 00 10 */ addi r1, r1, 0x10 -/* 8018D514 0018A474 4E 80 00 20 */ blr - -.global IsMoving__11CBSWallHangCFv -IsMoving__11CBSWallHangCFv: -/* 8018D518 0018A478 38 60 00 01 */ li r3, 1 -/* 8018D51C 0018A47C 4E 80 00 20 */ blr - -.global GetBodyStateTransition__11CBSWallHangFfR15CBodyController -GetBodyStateTransition__11CBSWallHangFfR15CBodyController: -/* 8018D520 0018A480 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8018D524 0018A484 7C 08 02 A6 */ mflr r0 -/* 8018D528 0018A488 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018D52C 0018A48C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8018D530 0018A490 3B E4 00 04 */ addi r31, r4, 4 -/* 8018D534 0018A494 38 80 00 0F */ li r4, 0xf -/* 8018D538 0018A498 7F E3 FB 78 */ mr r3, r31 -/* 8018D53C 0018A49C 4B FA 3F 15 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8018D540 0018A4A0 28 03 00 00 */ cmplwi r3, 0 -/* 8018D544 0018A4A4 41 82 00 0C */ beq lbl_8018D550 -/* 8018D548 0018A4A8 38 60 00 0E */ li r3, 0xe -/* 8018D54C 0018A4AC 48 00 00 1C */ b lbl_8018D568 -lbl_8018D550: -/* 8018D550 0018A4B0 7F E3 FB 78 */ mr r3, r31 -/* 8018D554 0018A4B4 38 80 00 03 */ li r4, 3 -/* 8018D558 0018A4B8 4B FA 3E F9 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8018D55C 0018A4BC 7C 60 00 34 */ cntlzw r0, r3 -/* 8018D560 0018A4C0 54 00 DF FE */ rlwinm r0, r0, 0x1b, 0x1f, 0x1f -/* 8018D564 0018A4C4 7C 60 00 D0 */ neg r3, r0 -lbl_8018D568: -/* 8018D568 0018A4C8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8018D56C 0018A4CC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8018D570 0018A4D0 7C 08 03 A6 */ mtlr r0 -/* 8018D574 0018A4D4 38 21 00 10 */ addi r1, r1, 0x10 -/* 8018D578 0018A4D8 4E 80 00 20 */ blr - -.global FixInPlace__11CBSWallHangFR15CBodyController -FixInPlace__11CBSWallHangFR15CBodyController: -/* 8018D57C 0018A4DC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8018D580 0018A4E0 7C 08 02 A6 */ mflr r0 -/* 8018D584 0018A4E4 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018D588 0018A4E8 38 61 00 08 */ addi r3, r1, 8 -/* 8018D58C 0018A4EC 80 84 00 00 */ lwz r4, 0(r4) -/* 8018D590 0018A4F0 4B F1 F4 CD */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" -/* 8018D594 0018A4F4 80 63 00 04 */ lwz r3, 4(r3) -/* 8018D598 0018A4F8 28 03 00 00 */ cmplwi r3, 0 -/* 8018D59C 0018A4FC 41 82 00 24 */ beq lbl_8018D5C0 -/* 8018D5A0 0018A500 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8018D5A4 0018A504 C4 04 66 A0 */ lfsu f0, skZero3f@l(r4) -/* 8018D5A8 0018A508 D0 03 00 FC */ stfs f0, 0xfc(r3) -/* 8018D5AC 0018A50C C0 04 00 04 */ lfs f0, 4(r4) -/* 8018D5B0 0018A510 D0 03 01 00 */ stfs f0, 0x100(r3) -/* 8018D5B4 0018A514 C0 04 00 08 */ lfs f0, 8(r4) -/* 8018D5B8 0018A518 D0 03 01 04 */ stfs f0, 0x104(r3) -/* 8018D5BC 0018A51C 4B F8 D6 E5 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -lbl_8018D5C0: -/* 8018D5C0 0018A520 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8018D5C4 0018A524 7C 08 03 A6 */ mtlr r0 -/* 8018D5C8 0018A528 38 21 00 10 */ addi r1, r1, 0x10 -/* 8018D5CC 0018A52C 4E 80 00 20 */ blr - -.global CheckForLand__11CBSWallHangFR15CBodyControllerR13CStateManager -CheckForLand__11CBSWallHangFR15CBodyControllerR13CStateManager: -/* 8018D5D0 0018A530 94 21 FF 40 */ stwu r1, -0xc0(r1) -/* 8018D5D4 0018A534 7C 08 02 A6 */ mflr r0 -/* 8018D5D8 0018A538 90 01 00 C4 */ stw r0, 0xc4(r1) -/* 8018D5DC 0018A53C BF 61 00 AC */ stmw r27, 0xac(r1) -/* 8018D5E0 0018A540 7C 9C 23 78 */ mr r28, r4 -/* 8018D5E4 0018A544 7C 7B 1B 78 */ mr r27, r3 -/* 8018D5E8 0018A548 7C BD 2B 78 */ mr r29, r5 -/* 8018D5EC 0018A54C 38 61 00 54 */ addi r3, r1, 0x54 -/* 8018D5F0 0018A550 3B C0 00 00 */ li r30, 0 -/* 8018D5F4 0018A554 80 84 00 00 */ lwz r4, 0(r4) -/* 8018D5F8 0018A558 4B F1 F4 65 */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" -/* 8018D5FC 0018A55C 83 E3 00 04 */ lwz r31, 4(r3) -/* 8018D600 0018A560 28 1F 00 00 */ cmplwi r31, 0 -/* 8018D604 0018A564 41 82 01 38 */ beq lbl_8018D73C -/* 8018D608 0018A568 88 1F 03 28 */ lbz r0, 0x328(r31) -/* 8018D60C 0018A56C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f -/* 8018D610 0018A570 40 82 00 20 */ bne lbl_8018D630 -/* 8018D614 0018A574 7F E3 FB 78 */ mr r3, r31 -/* 8018D618 0018A578 81 9F 00 00 */ lwz r12, 0(r31) -/* 8018D61C 0018A57C 81 8C 02 B8 */ lwz r12, 0x2b8(r12) -/* 8018D620 0018A580 7D 89 03 A6 */ mtctr r12 -/* 8018D624 0018A584 4E 80 04 21 */ bctrl -/* 8018D628 0018A588 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8018D62C 0018A58C 41 82 01 10 */ beq lbl_8018D73C -lbl_8018D630: -/* 8018D630 0018A590 38 00 00 09 */ li r0, 9 -/* 8018D634 0018A594 38 61 00 14 */ addi r3, r1, 0x14 -/* 8018D638 0018A598 90 1B 00 04 */ stw r0, 4(r27) -/* 8018D63C 0018A59C 48 15 5A 41 */ bl NoParameter__12CPASAnimParmFv -/* 8018D640 0018A5A0 38 61 00 1C */ addi r3, r1, 0x1c -/* 8018D644 0018A5A4 48 15 5A 39 */ bl NoParameter__12CPASAnimParmFv -/* 8018D648 0018A5A8 38 61 00 24 */ addi r3, r1, 0x24 -/* 8018D64C 0018A5AC 48 15 5A 31 */ bl NoParameter__12CPASAnimParmFv -/* 8018D650 0018A5B0 38 61 00 2C */ addi r3, r1, 0x2c -/* 8018D654 0018A5B4 48 15 5A 29 */ bl NoParameter__12CPASAnimParmFv -/* 8018D658 0018A5B8 38 61 00 34 */ addi r3, r1, 0x34 -/* 8018D65C 0018A5BC 48 15 5A 21 */ bl NoParameter__12CPASAnimParmFv -/* 8018D660 0018A5C0 38 61 00 3C */ addi r3, r1, 0x3c -/* 8018D664 0018A5C4 48 15 5A 19 */ bl NoParameter__12CPASAnimParmFv -/* 8018D668 0018A5C8 38 61 00 44 */ addi r3, r1, 0x44 -/* 8018D66C 0018A5CC 48 15 5A 11 */ bl NoParameter__12CPASAnimParmFv -/* 8018D670 0018A5D0 80 9B 00 04 */ lwz r4, 4(r27) -/* 8018D674 0018A5D4 38 61 00 4C */ addi r3, r1, 0x4c -/* 8018D678 0018A5D8 48 15 59 0D */ bl FromEnum__12CPASAnimParmFi -/* 8018D67C 0018A5DC 38 61 00 1C */ addi r3, r1, 0x1c -/* 8018D680 0018A5E0 38 01 00 14 */ addi r0, r1, 0x14 -/* 8018D684 0018A5E4 90 61 00 08 */ stw r3, 8(r1) -/* 8018D688 0018A5E8 38 61 00 5C */ addi r3, r1, 0x5c -/* 8018D68C 0018A5EC 38 A1 00 4C */ addi r5, r1, 0x4c -/* 8018D690 0018A5F0 38 C1 00 44 */ addi r6, r1, 0x44 -/* 8018D694 0018A5F4 90 01 00 0C */ stw r0, 0xc(r1) -/* 8018D698 0018A5F8 38 E1 00 3C */ addi r7, r1, 0x3c -/* 8018D69C 0018A5FC 39 01 00 34 */ addi r8, r1, 0x34 -/* 8018D6A0 0018A600 39 21 00 2C */ addi r9, r1, 0x2c -/* 8018D6A4 0018A604 39 41 00 24 */ addi r10, r1, 0x24 -/* 8018D6A8 0018A608 38 80 00 14 */ li r4, 0x14 -/* 8018D6AC 0018A60C 4B EE FC 19 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm -/* 8018D6B0 0018A610 80 BD 09 00 */ lwz r5, 0x900(r29) -/* 8018D6B4 0018A614 7F 83 E3 78 */ mr r3, r28 -/* 8018D6B8 0018A618 38 81 00 5C */ addi r4, r1, 0x5c -/* 8018D6BC 0018A61C 4B FA CC ED */ bl PlayBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16 -/* 8018D6C0 0018A620 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8018D6C4 0018A624 7F A3 EB 78 */ mr r3, r29 -/* 8018D6C8 0018A628 7F E4 FB 78 */ mr r4, r31 -/* 8018D6CC 0018A62C 38 A1 00 10 */ addi r5, r1, 0x10 -/* 8018D6D0 0018A630 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8018D6D4 0018A634 38 C0 00 17 */ li r6, 0x17 -/* 8018D6D8 0018A638 4B EB 67 F9 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -/* 8018D6DC 0018A63C 34 A1 00 60 */ addic. r5, r1, 0x60 -/* 8018D6E0 0018A640 3B C0 00 01 */ li r30, 1 -/* 8018D6E4 0018A644 41 82 00 58 */ beq lbl_8018D73C -/* 8018D6E8 0018A648 80 C5 00 00 */ lwz r6, 0(r5) -/* 8018D6EC 0018A64C 38 60 00 00 */ li r3, 0 -/* 8018D6F0 0018A650 2C 06 00 00 */ cmpwi r6, 0 -/* 8018D6F4 0018A654 40 81 00 40 */ ble lbl_8018D734 -/* 8018D6F8 0018A658 2C 06 00 08 */ cmpwi r6, 8 -/* 8018D6FC 0018A65C 38 86 FF F8 */ addi r4, r6, -8 -/* 8018D700 0018A660 40 81 00 20 */ ble lbl_8018D720 -/* 8018D704 0018A664 38 04 00 07 */ addi r0, r4, 7 -/* 8018D708 0018A668 54 00 E8 FE */ srwi r0, r0, 3 -/* 8018D70C 0018A66C 7C 09 03 A6 */ mtctr r0 -/* 8018D710 0018A670 2C 04 00 00 */ cmpwi r4, 0 -/* 8018D714 0018A674 40 81 00 0C */ ble lbl_8018D720 -lbl_8018D718: -/* 8018D718 0018A678 38 63 00 08 */ addi r3, r3, 8 -/* 8018D71C 0018A67C 42 00 FF FC */ bdnz lbl_8018D718 -lbl_8018D720: -/* 8018D720 0018A680 7C 03 30 50 */ subf r0, r3, r6 -/* 8018D724 0018A684 7C 09 03 A6 */ mtctr r0 -/* 8018D728 0018A688 7C 03 30 00 */ cmpw r3, r6 -/* 8018D72C 0018A68C 40 80 00 08 */ bge lbl_8018D734 -lbl_8018D730: -/* 8018D730 0018A690 42 00 00 00 */ bdnz lbl_8018D730 -lbl_8018D734: -/* 8018D734 0018A694 38 00 00 00 */ li r0, 0 -/* 8018D738 0018A698 90 05 00 00 */ stw r0, 0(r5) -lbl_8018D73C: -/* 8018D73C 0018A69C 7F C3 F3 78 */ mr r3, r30 -/* 8018D740 0018A6A0 BB 61 00 AC */ lmw r27, 0xac(r1) -/* 8018D744 0018A6A4 80 01 00 C4 */ lwz r0, 0xc4(r1) -/* 8018D748 0018A6A8 7C 08 03 A6 */ mtlr r0 -/* 8018D74C 0018A6AC 38 21 00 C0 */ addi r1, r1, 0xc0 -/* 8018D750 0018A6B0 4E 80 00 20 */ blr - -.global CheckForWall__11CBSWallHangFR15CBodyControllerR13CStateManager -CheckForWall__11CBSWallHangFR15CBodyControllerR13CStateManager: -/* 8018D754 0018A6B4 94 21 FE C0 */ stwu r1, -0x140(r1) -/* 8018D758 0018A6B8 7C 08 02 A6 */ mflr r0 -/* 8018D75C 0018A6BC 90 01 01 44 */ stw r0, 0x144(r1) -/* 8018D760 0018A6C0 BF 41 01 28 */ stmw r26, 0x128(r1) -/* 8018D764 0018A6C4 7C 9D 23 78 */ mr r29, r4 -/* 8018D768 0018A6C8 7C 7A 1B 78 */ mr r26, r3 -/* 8018D76C 0018A6CC 7C BE 2B 78 */ mr r30, r5 -/* 8018D770 0018A6D0 38 61 00 68 */ addi r3, r1, 0x68 -/* 8018D774 0018A6D4 3B 60 00 00 */ li r27, 0 -/* 8018D778 0018A6D8 80 84 00 00 */ lwz r4, 0(r4) -/* 8018D77C 0018A6DC 4B F1 F2 E1 */ bl "__ct__16TCastToPtr<3CAi>FP7CEntity" -/* 8018D780 0018A6E0 83 E3 00 04 */ lwz r31, 4(r3) -/* 8018D784 0018A6E4 28 1F 00 00 */ cmplwi r31, 0 -/* 8018D788 0018A6E8 41 82 02 C4 */ beq lbl_8018DA4C -/* 8018D78C 0018A6EC A0 1A 00 08 */ lhz r0, 8(r26) -/* 8018D790 0018A6F0 7F C3 F3 78 */ mr r3, r30 -/* 8018D794 0018A6F4 38 81 00 14 */ addi r4, r1, 0x14 -/* 8018D798 0018A6F8 B0 01 00 14 */ sth r0, 0x14(r1) -/* 8018D79C 0018A6FC 4B EB EE 09 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8018D7A0 0018A700 7C 64 1B 78 */ mr r4, r3 -/* 8018D7A4 0018A704 38 61 00 18 */ addi r3, r1, 0x18 -/* 8018D7A8 0018A708 4B F2 24 E9 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8018D7AC 0018A70C 83 83 00 04 */ lwz r28, 4(r3) -/* 8018D7B0 0018A710 C0 22 A4 68 */ lfs f1, lbl_805AC188@sda21(r2) -/* 8018D7B4 0018A714 28 1C 00 00 */ cmplwi r28, 0 -/* 8018D7B8 0018A718 41 82 00 58 */ beq lbl_8018D810 -/* 8018D7BC 0018A71C C0 DC 00 50 */ lfs f6, 0x50(r28) -/* 8018D7C0 0018A720 C0 1F 00 50 */ lfs f0, 0x50(r31) -/* 8018D7C4 0018A724 C0 3C 00 40 */ lfs f1, 0x40(r28) -/* 8018D7C8 0018A728 EC A6 00 28 */ fsubs f5, f6, f0 -/* 8018D7CC 0018A72C C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 8018D7D0 0018A730 C0 FC 00 60 */ lfs f7, 0x60(r28) -/* 8018D7D4 0018A734 EC 61 00 28 */ fsubs f3, f1, f0 -/* 8018D7D8 0018A738 C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 8018D7DC 0018A73C EC 05 01 72 */ fmuls f0, f5, f5 -/* 8018D7E0 0018A740 EC 87 10 28 */ fsubs f4, f7, f2 -/* 8018D7E4 0018A744 D0 21 00 88 */ stfs f1, 0x88(r1) -/* 8018D7E8 0018A748 EC 23 00 F2 */ fmuls f1, f3, f3 -/* 8018D7EC 0018A74C D0 C1 00 8C */ stfs f6, 0x8c(r1) -/* 8018D7F0 0018A750 EC 44 01 32 */ fmuls f2, f4, f4 -/* 8018D7F4 0018A754 EC 01 00 2A */ fadds f0, f1, f0 -/* 8018D7F8 0018A758 D0 E1 00 90 */ stfs f7, 0x90(r1) -/* 8018D7FC 0018A75C D0 61 00 94 */ stfs f3, 0x94(r1) -/* 8018D800 0018A760 EC 02 00 2A */ fadds f0, f2, f0 -/* 8018D804 0018A764 D0 A1 00 98 */ stfs f5, 0x98(r1) -/* 8018D808 0018A768 FC 20 00 90 */ fmr f1, f0 -/* 8018D80C 0018A76C D0 81 00 9C */ stfs f4, 0x9c(r1) -lbl_8018D810: -/* 8018D810 0018A770 C0 02 A4 6C */ lfs f0, lbl_805AC18C@sda21(r2) -/* 8018D814 0018A774 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8018D818 0018A778 41 80 00 10 */ blt lbl_8018D828 -/* 8018D81C 0018A77C 88 1F 03 28 */ lbz r0, 0x328(r31) -/* 8018D820 0018A780 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f -/* 8018D824 0018A784 41 82 02 28 */ beq lbl_8018DA4C -lbl_8018D828: -/* 8018D828 0018A788 38 00 00 03 */ li r0, 3 -/* 8018D82C 0018A78C 38 61 00 28 */ addi r3, r1, 0x28 -/* 8018D830 0018A790 90 1A 00 04 */ stw r0, 4(r26) -/* 8018D834 0018A794 48 15 58 49 */ bl NoParameter__12CPASAnimParmFv -/* 8018D838 0018A798 38 61 00 30 */ addi r3, r1, 0x30 -/* 8018D83C 0018A79C 48 15 58 41 */ bl NoParameter__12CPASAnimParmFv -/* 8018D840 0018A7A0 38 61 00 38 */ addi r3, r1, 0x38 -/* 8018D844 0018A7A4 48 15 58 39 */ bl NoParameter__12CPASAnimParmFv -/* 8018D848 0018A7A8 38 61 00 40 */ addi r3, r1, 0x40 -/* 8018D84C 0018A7AC 48 15 58 31 */ bl NoParameter__12CPASAnimParmFv -/* 8018D850 0018A7B0 38 61 00 48 */ addi r3, r1, 0x48 -/* 8018D854 0018A7B4 48 15 58 29 */ bl NoParameter__12CPASAnimParmFv -/* 8018D858 0018A7B8 38 61 00 50 */ addi r3, r1, 0x50 -/* 8018D85C 0018A7BC 48 15 58 21 */ bl NoParameter__12CPASAnimParmFv -/* 8018D860 0018A7C0 38 61 00 58 */ addi r3, r1, 0x58 -/* 8018D864 0018A7C4 48 15 58 19 */ bl NoParameter__12CPASAnimParmFv -/* 8018D868 0018A7C8 80 9A 00 04 */ lwz r4, 4(r26) -/* 8018D86C 0018A7CC 38 61 00 60 */ addi r3, r1, 0x60 -/* 8018D870 0018A7D0 48 15 57 15 */ bl FromEnum__12CPASAnimParmFi -/* 8018D874 0018A7D4 38 61 00 30 */ addi r3, r1, 0x30 -/* 8018D878 0018A7D8 38 01 00 28 */ addi r0, r1, 0x28 -/* 8018D87C 0018A7DC 90 61 00 08 */ stw r3, 8(r1) -/* 8018D880 0018A7E0 38 61 00 E0 */ addi r3, r1, 0xe0 -/* 8018D884 0018A7E4 38 A1 00 60 */ addi r5, r1, 0x60 -/* 8018D888 0018A7E8 38 C1 00 58 */ addi r6, r1, 0x58 -/* 8018D88C 0018A7EC 90 01 00 0C */ stw r0, 0xc(r1) -/* 8018D890 0018A7F0 38 E1 00 50 */ addi r7, r1, 0x50 -/* 8018D894 0018A7F4 39 01 00 48 */ addi r8, r1, 0x48 -/* 8018D898 0018A7F8 39 21 00 40 */ addi r9, r1, 0x40 -/* 8018D89C 0018A7FC 39 41 00 38 */ addi r10, r1, 0x38 -/* 8018D8A0 0018A800 38 80 00 14 */ li r4, 0x14 -/* 8018D8A4 0018A804 4B EE FA 21 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm -/* 8018D8A8 0018A808 7F A3 EB 78 */ mr r3, r29 -/* 8018D8AC 0018A80C 4B FA CB A9 */ bl GetPASDatabase__15CBodyControllerCFv -/* 8018D8B0 0018A810 80 DE 09 00 */ lwz r6, 0x900(r30) -/* 8018D8B4 0018A814 7C 64 1B 78 */ mr r4, r3 -/* 8018D8B8 0018A818 38 61 00 20 */ addi r3, r1, 0x20 -/* 8018D8BC 0018A81C 38 A1 00 E0 */ addi r5, r1, 0xe0 -/* 8018D8C0 0018A820 38 E0 FF FF */ li r7, -1 -/* 8018D8C4 0018A824 48 15 77 9D */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i -/* 8018D8C8 0018A828 28 1C 00 00 */ cmplwi r28, 0 -/* 8018D8CC 0018A82C 83 61 00 24 */ lwz r27, 0x24(r1) -/* 8018D8D0 0018A830 41 82 00 24 */ beq lbl_8018D8F4 -/* 8018D8D4 0018A834 C0 5C 00 60 */ lfs f2, 0x60(r28) -/* 8018D8D8 0018A838 39 61 00 7C */ addi r11, r1, 0x7c -/* 8018D8DC 0018A83C C0 3C 00 50 */ lfs f1, 0x50(r28) -/* 8018D8E0 0018A840 C0 1C 00 40 */ lfs f0, 0x40(r28) -/* 8018D8E4 0018A844 D0 01 00 7C */ stfs f0, 0x7c(r1) -/* 8018D8E8 0018A848 D0 21 00 80 */ stfs f1, 0x80(r1) -/* 8018D8EC 0018A84C D0 41 00 84 */ stfs f2, 0x84(r1) -/* 8018D8F0 0018A850 48 00 00 20 */ b lbl_8018D910 -lbl_8018D8F4: -/* 8018D8F4 0018A854 C0 5F 00 60 */ lfs f2, 0x60(r31) -/* 8018D8F8 0018A858 39 61 00 70 */ addi r11, r1, 0x70 -/* 8018D8FC 0018A85C C0 3F 00 50 */ lfs f1, 0x50(r31) -/* 8018D900 0018A860 C0 1F 00 40 */ lfs f0, 0x40(r31) -/* 8018D904 0018A864 D0 01 00 70 */ stfs f0, 0x70(r1) -/* 8018D908 0018A868 D0 21 00 74 */ stfs f1, 0x74(r1) -/* 8018D90C 0018A86C D0 41 00 78 */ stfs f2, 0x78(r1) -lbl_8018D910: -/* 8018D910 0018A870 C0 2B 00 00 */ lfs f1, 0(r11) -/* 8018D914 0018A874 38 E1 00 AC */ addi r7, r1, 0xac -/* 8018D918 0018A878 C0 02 A4 6C */ lfs f0, lbl_805AC18C@sda21(r2) -/* 8018D91C 0018A87C 38 01 00 A0 */ addi r0, r1, 0xa0 -/* 8018D920 0018A880 D0 21 00 AC */ stfs f1, 0xac(r1) -/* 8018D924 0018A884 39 40 FF FF */ li r10, -1 -/* 8018D928 0018A888 39 20 00 01 */ li r9, 1 -/* 8018D92C 0018A88C 39 00 00 00 */ li r8, 0 -/* 8018D930 0018A890 C0 2B 00 04 */ lfs f1, 4(r11) -/* 8018D934 0018A894 7F A3 EB 78 */ mr r3, r29 -/* 8018D938 0018A898 38 81 00 B8 */ addi r4, r1, 0xb8 -/* 8018D93C 0018A89C 38 A0 00 00 */ li r5, 0 -/* 8018D940 0018A8A0 D0 21 00 B0 */ stfs f1, 0xb0(r1) -/* 8018D944 0018A8A4 38 C0 00 00 */ li r6, 0 -/* 8018D948 0018A8A8 C0 2B 00 08 */ lfs f1, 8(r11) -/* 8018D94C 0018A8AC D0 21 00 B4 */ stfs f1, 0xb4(r1) -/* 8018D950 0018A8B0 81 7D 00 00 */ lwz r11, 0(r29) -/* 8018D954 0018A8B4 81 8B 00 64 */ lwz r12, 0x64(r11) -/* 8018D958 0018A8B8 39 6B 00 34 */ addi r11, r11, 0x34 -/* 8018D95C 0018A8BC C0 4C 00 04 */ lfs f2, 4(r12) -/* 8018D960 0018A8C0 C0 6C 00 08 */ lfs f3, 8(r12) -/* 8018D964 0018A8C4 C0 2C 00 00 */ lfs f1, 0(r12) -/* 8018D968 0018A8C8 D0 21 00 A0 */ stfs f1, 0xa0(r1) -/* 8018D96C 0018A8CC D0 41 00 A4 */ stfs f2, 0xa4(r1) -/* 8018D970 0018A8D0 D0 61 00 A8 */ stfs f3, 0xa8(r1) -/* 8018D974 0018A8D4 93 61 00 B8 */ stw r27, 0xb8(r1) -/* 8018D978 0018A8D8 91 41 00 BC */ stw r10, 0xbc(r1) -/* 8018D97C 0018A8DC D0 01 00 C0 */ stfs f0, 0xc0(r1) -/* 8018D980 0018A8E0 99 21 00 C4 */ stb r9, 0xc4(r1) -/* 8018D984 0018A8E4 91 01 00 C8 */ stw r8, 0xc8(r1) -/* 8018D988 0018A8E8 90 E1 00 CC */ stw r7, 0xcc(r1) -/* 8018D98C 0018A8EC 99 01 00 D0 */ stb r8, 0xd0(r1) -/* 8018D990 0018A8F0 91 01 00 D4 */ stw r8, 0xd4(r1) -/* 8018D994 0018A8F4 91 61 00 D8 */ stw r11, 0xd8(r1) -/* 8018D998 0018A8F8 90 01 00 DC */ stw r0, 0xdc(r1) -/* 8018D99C 0018A8FC 4B FA CF 81 */ bl SetCurrentAnimation__15CBodyControllerFRC18CAnimPlaybackParmsbb -/* 8018D9A0 0018A900 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8018D9A4 0018A904 7F E3 FB 78 */ mr r3, r31 -/* 8018D9A8 0018A908 38 84 66 A0 */ addi r4, r4, skZero3f@l -/* 8018D9AC 0018A90C 4B F8 D2 F5 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -/* 8018D9B0 0018A910 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8018D9B4 0018A914 7F C3 F3 78 */ mr r3, r30 -/* 8018D9B8 0018A918 38 E4 66 A0 */ addi r7, r4, skZero3f@l -/* 8018D9BC 0018A91C 7F E4 FB 78 */ mr r4, r31 -/* 8018D9C0 0018A920 C0 07 00 00 */ lfs f0, 0(r7) -/* 8018D9C4 0018A924 38 A1 00 10 */ addi r5, r1, 0x10 -/* 8018D9C8 0018A928 38 C0 00 17 */ li r6, 0x17 -/* 8018D9CC 0018A92C D0 1F 01 50 */ stfs f0, 0x150(r31) -/* 8018D9D0 0018A930 C0 07 00 04 */ lfs f0, 4(r7) -/* 8018D9D4 0018A934 D0 1F 01 54 */ stfs f0, 0x154(r31) -/* 8018D9D8 0018A938 C0 07 00 08 */ lfs f0, 8(r7) -/* 8018D9DC 0018A93C D0 1F 01 58 */ stfs f0, 0x158(r31) -/* 8018D9E0 0018A940 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8018D9E4 0018A944 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8018D9E8 0018A948 4B EB 64 E9 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -/* 8018D9EC 0018A94C 34 A1 00 E4 */ addic. r5, r1, 0xe4 -/* 8018D9F0 0018A950 3B 60 00 01 */ li r27, 1 -/* 8018D9F4 0018A954 41 82 00 58 */ beq lbl_8018DA4C -/* 8018D9F8 0018A958 80 C5 00 00 */ lwz r6, 0(r5) -/* 8018D9FC 0018A95C 38 60 00 00 */ li r3, 0 -/* 8018DA00 0018A960 2C 06 00 00 */ cmpwi r6, 0 -/* 8018DA04 0018A964 40 81 00 40 */ ble lbl_8018DA44 -/* 8018DA08 0018A968 2C 06 00 08 */ cmpwi r6, 8 -/* 8018DA0C 0018A96C 38 86 FF F8 */ addi r4, r6, -8 -/* 8018DA10 0018A970 40 81 00 20 */ ble lbl_8018DA30 -/* 8018DA14 0018A974 38 04 00 07 */ addi r0, r4, 7 -/* 8018DA18 0018A978 54 00 E8 FE */ srwi r0, r0, 3 -/* 8018DA1C 0018A97C 7C 09 03 A6 */ mtctr r0 -/* 8018DA20 0018A980 2C 04 00 00 */ cmpwi r4, 0 -/* 8018DA24 0018A984 40 81 00 0C */ ble lbl_8018DA30 -lbl_8018DA28: -/* 8018DA28 0018A988 38 63 00 08 */ addi r3, r3, 8 -/* 8018DA2C 0018A98C 42 00 FF FC */ bdnz lbl_8018DA28 -lbl_8018DA30: -/* 8018DA30 0018A990 7C 03 30 50 */ subf r0, r3, r6 -/* 8018DA34 0018A994 7C 09 03 A6 */ mtctr r0 -/* 8018DA38 0018A998 7C 03 30 00 */ cmpw r3, r6 -/* 8018DA3C 0018A99C 40 80 00 08 */ bge lbl_8018DA44 -lbl_8018DA40: -/* 8018DA40 0018A9A0 42 00 00 00 */ bdnz lbl_8018DA40 -lbl_8018DA44: -/* 8018DA44 0018A9A4 38 00 00 00 */ li r0, 0 -/* 8018DA48 0018A9A8 90 05 00 00 */ stw r0, 0(r5) -lbl_8018DA4C: -/* 8018DA4C 0018A9AC 7F 63 DB 78 */ mr r3, r27 -/* 8018DA50 0018A9B0 BB 41 01 28 */ lmw r26, 0x128(r1) -/* 8018DA54 0018A9B4 80 01 01 44 */ lwz r0, 0x144(r1) -/* 8018DA58 0018A9B8 7C 08 03 A6 */ mtlr r0 -/* 8018DA5C 0018A9BC 38 21 01 40 */ addi r1, r1, 0x140 -/* 8018DA60 0018A9C0 4E 80 00 20 */ blr - -.global nullsub_134 -nullsub_134: -/* 8018DA64 0018A9C4 4E 80 00 20 */ blr - -.global UpdateBody__11CBSWallHangFfR15CBodyControllerR13CStateManager -UpdateBody__11CBSWallHangFfR15CBodyControllerR13CStateManager: -/* 8018DA68 0018A9C8 94 21 F9 F0 */ stwu r1, -0x610(r1) -/* 8018DA6C 0018A9CC 7C 08 02 A6 */ mflr r0 -/* 8018DA70 0018A9D0 90 01 06 14 */ stw r0, 0x614(r1) -/* 8018DA74 0018A9D4 DB E1 06 00 */ stfd f31, 0x600(r1) -/* 8018DA78 0018A9D8 F3 E1 06 08 */ psq_st f31, 1544(r1), 0, qr0 -/* 8018DA7C 0018A9DC DB C1 05 F0 */ stfd f30, 0x5f0(r1) -/* 8018DA80 0018A9E0 F3 C1 05 F8 */ psq_st f30, 1528(r1), 0, qr0 -/* 8018DA84 0018A9E4 DB A1 05 E0 */ stfd f29, 0x5e0(r1) -/* 8018DA88 0018A9E8 F3 A1 05 E8 */ psq_st f29, 1512(r1), 0, qr0 -/* 8018DA8C 0018A9EC BF 21 05 C4 */ stmw r25, 0x5c4(r1) -/* 8018DA90 0018A9F0 FF E0 08 90 */ fmr f31, f1 -/* 8018DA94 0018A9F4 7C 7C 1B 78 */ mr r28, r3 -/* 8018DA98 0018A9F8 7C 9D 23 78 */ mr r29, r4 -/* 8018DA9C 0018A9FC 7C BE 2B 78 */ mr r30, r5 -/* 8018DAA0 0018AA00 4B FF FA 81 */ bl GetBodyStateTransition__11CBSWallHangFfR15CBodyController -/* 8018DAA4 0018AA04 7C 7F 1B 78 */ mr r31, r3 -/* 8018DAA8 0018AA08 2C 1F FF FF */ cmpwi r31, -1 -/* 8018DAAC 0018AA0C 40 82 0D C0 */ bne lbl_8018E86C -/* 8018DAB0 0018AA10 80 1C 00 04 */ lwz r0, 4(r28) -/* 8018DAB4 0018AA14 28 00 00 09 */ cmplwi r0, 9 -/* 8018DAB8 0018AA18 41 81 0D B4 */ bgt lbl_8018E86C -/* 8018DABC 0018AA1C 3C 60 80 3E */ lis r3, lbl_803E43D8@ha -/* 8018DAC0 0018AA20 54 00 10 3A */ slwi r0, r0, 2 -/* 8018DAC4 0018AA24 38 63 43 D8 */ addi r3, r3, lbl_803E43D8@l -/* 8018DAC8 0018AA28 7C 03 00 2E */ lwzx r0, r3, r0 -/* 8018DACC 0018AA2C 7C 09 03 A6 */ mtctr r0 -/* 8018DAD0 0018AA30 4E 80 04 20 */ bctr -/* 8018DAD4 0018AA34 88 1D 03 00 */ lbz r0, 0x300(r29) -/* 8018DAD8 0018AA38 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8018DADC 0018AA3C 41 82 0D 90 */ beq lbl_8018E86C -/* 8018DAE0 0018AA40 38 61 02 64 */ addi r3, r1, 0x264 -/* 8018DAE4 0018AA44 48 15 55 99 */ bl NoParameter__12CPASAnimParmFv -/* 8018DAE8 0018AA48 38 61 02 6C */ addi r3, r1, 0x26c -/* 8018DAEC 0018AA4C 48 15 55 91 */ bl NoParameter__12CPASAnimParmFv -/* 8018DAF0 0018AA50 38 61 02 74 */ addi r3, r1, 0x274 -/* 8018DAF4 0018AA54 48 15 55 89 */ bl NoParameter__12CPASAnimParmFv -/* 8018DAF8 0018AA58 38 61 02 7C */ addi r3, r1, 0x27c -/* 8018DAFC 0018AA5C 48 15 55 81 */ bl NoParameter__12CPASAnimParmFv -/* 8018DB00 0018AA60 38 61 02 84 */ addi r3, r1, 0x284 -/* 8018DB04 0018AA64 48 15 55 79 */ bl NoParameter__12CPASAnimParmFv -/* 8018DB08 0018AA68 38 61 02 8C */ addi r3, r1, 0x28c -/* 8018DB0C 0018AA6C 48 15 55 71 */ bl NoParameter__12CPASAnimParmFv -/* 8018DB10 0018AA70 38 61 02 94 */ addi r3, r1, 0x294 -/* 8018DB14 0018AA74 48 15 55 69 */ bl NoParameter__12CPASAnimParmFv -/* 8018DB18 0018AA78 38 61 02 9C */ addi r3, r1, 0x29c -/* 8018DB1C 0018AA7C 38 80 00 01 */ li r4, 1 -/* 8018DB20 0018AA80 48 15 54 65 */ bl FromEnum__12CPASAnimParmFi -/* 8018DB24 0018AA84 38 61 02 6C */ addi r3, r1, 0x26c -/* 8018DB28 0018AA88 38 01 02 64 */ addi r0, r1, 0x264 -/* 8018DB2C 0018AA8C 90 61 00 08 */ stw r3, 8(r1) -/* 8018DB30 0018AA90 38 61 05 70 */ addi r3, r1, 0x570 -/* 8018DB34 0018AA94 38 A1 02 9C */ addi r5, r1, 0x29c -/* 8018DB38 0018AA98 38 C1 02 94 */ addi r6, r1, 0x294 -/* 8018DB3C 0018AA9C 90 01 00 0C */ stw r0, 0xc(r1) -/* 8018DB40 0018AAA0 38 E1 02 8C */ addi r7, r1, 0x28c -/* 8018DB44 0018AAA4 39 01 02 84 */ addi r8, r1, 0x284 -/* 8018DB48 0018AAA8 39 21 02 7C */ addi r9, r1, 0x27c -/* 8018DB4C 0018AAAC 39 41 02 74 */ addi r10, r1, 0x274 -/* 8018DB50 0018AAB0 38 80 00 14 */ li r4, 0x14 -/* 8018DB54 0018AAB4 4B EE F7 71 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm -/* 8018DB58 0018AAB8 7F A3 EB 78 */ mr r3, r29 -/* 8018DB5C 0018AABC 4B FA C8 F9 */ bl GetPASDatabase__15CBodyControllerCFv -/* 8018DB60 0018AAC0 80 DE 09 00 */ lwz r6, 0x900(r30) -/* 8018DB64 0018AAC4 7C 64 1B 78 */ mr r4, r3 -/* 8018DB68 0018AAC8 38 61 02 5C */ addi r3, r1, 0x25c -/* 8018DB6C 0018AACC 38 A1 05 70 */ addi r5, r1, 0x570 -/* 8018DB70 0018AAD0 38 E0 FF FF */ li r7, -1 -/* 8018DB74 0018AAD4 48 15 74 ED */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i -/* 8018DB78 0018AAD8 C0 21 02 5C */ lfs f1, 0x25c(r1) -/* 8018DB7C 0018AADC C0 02 A4 70 */ lfs f0, lbl_805AC190@sda21(r2) -/* 8018DB80 0018AAE0 80 81 02 60 */ lwz r4, 0x260(r1) -/* 8018DB84 0018AAE4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8018DB88 0018AAE8 40 81 00 58 */ ble lbl_8018DBE0 -/* 8018DB8C 0018AAEC 39 00 00 01 */ li r8, 1 -/* 8018DB90 0018AAF0 C0 02 A4 6C */ lfs f0, lbl_805AC18C@sda21(r2) -/* 8018DB94 0018AAF4 91 1C 00 04 */ stw r8, 4(r28) -/* 8018DB98 0018AAF8 38 00 00 00 */ li r0, 0 -/* 8018DB9C 0018AAFC 38 E0 FF FF */ li r7, -1 -/* 8018DBA0 0018AB00 7F A3 EB 78 */ mr r3, r29 -/* 8018DBA4 0018AB04 90 81 03 08 */ stw r4, 0x308(r1) -/* 8018DBA8 0018AB08 38 81 03 08 */ addi r4, r1, 0x308 -/* 8018DBAC 0018AB0C 38 A0 00 00 */ li r5, 0 -/* 8018DBB0 0018AB10 38 C0 00 00 */ li r6, 0 -/* 8018DBB4 0018AB14 90 E1 03 0C */ stw r7, 0x30c(r1) -/* 8018DBB8 0018AB18 D0 01 03 10 */ stfs f0, 0x310(r1) -/* 8018DBBC 0018AB1C 99 01 03 14 */ stb r8, 0x314(r1) -/* 8018DBC0 0018AB20 90 01 03 18 */ stw r0, 0x318(r1) -/* 8018DBC4 0018AB24 90 01 03 1C */ stw r0, 0x31c(r1) -/* 8018DBC8 0018AB28 98 01 03 20 */ stb r0, 0x320(r1) -/* 8018DBCC 0018AB2C 90 01 03 24 */ stw r0, 0x324(r1) -/* 8018DBD0 0018AB30 90 01 03 28 */ stw r0, 0x328(r1) -/* 8018DBD4 0018AB34 90 01 03 2C */ stw r0, 0x32c(r1) -/* 8018DBD8 0018AB38 4B FA CD 45 */ bl SetCurrentAnimation__15CBodyControllerFRC18CAnimPlaybackParmsbb -/* 8018DBDC 0018AB3C 48 00 00 F0 */ b lbl_8018DCCC -lbl_8018DBE0: -/* 8018DBE0 0018AB40 38 00 00 02 */ li r0, 2 -/* 8018DBE4 0018AB44 38 61 02 1C */ addi r3, r1, 0x21c -/* 8018DBE8 0018AB48 90 1C 00 04 */ stw r0, 4(r28) -/* 8018DBEC 0018AB4C 48 15 54 91 */ bl NoParameter__12CPASAnimParmFv -/* 8018DBF0 0018AB50 38 61 02 24 */ addi r3, r1, 0x224 -/* 8018DBF4 0018AB54 48 15 54 89 */ bl NoParameter__12CPASAnimParmFv -/* 8018DBF8 0018AB58 38 61 02 2C */ addi r3, r1, 0x22c -/* 8018DBFC 0018AB5C 48 15 54 81 */ bl NoParameter__12CPASAnimParmFv -/* 8018DC00 0018AB60 38 61 02 34 */ addi r3, r1, 0x234 -/* 8018DC04 0018AB64 48 15 54 79 */ bl NoParameter__12CPASAnimParmFv -/* 8018DC08 0018AB68 38 61 02 3C */ addi r3, r1, 0x23c -/* 8018DC0C 0018AB6C 48 15 54 71 */ bl NoParameter__12CPASAnimParmFv -/* 8018DC10 0018AB70 38 61 02 44 */ addi r3, r1, 0x244 -/* 8018DC14 0018AB74 48 15 54 69 */ bl NoParameter__12CPASAnimParmFv -/* 8018DC18 0018AB78 38 61 02 4C */ addi r3, r1, 0x24c -/* 8018DC1C 0018AB7C 48 15 54 61 */ bl NoParameter__12CPASAnimParmFv -/* 8018DC20 0018AB80 80 9C 00 04 */ lwz r4, 4(r28) -/* 8018DC24 0018AB84 38 61 02 54 */ addi r3, r1, 0x254 -/* 8018DC28 0018AB88 48 15 53 5D */ bl FromEnum__12CPASAnimParmFi -/* 8018DC2C 0018AB8C 38 61 02 24 */ addi r3, r1, 0x224 -/* 8018DC30 0018AB90 38 01 02 1C */ addi r0, r1, 0x21c -/* 8018DC34 0018AB94 90 61 00 08 */ stw r3, 8(r1) -/* 8018DC38 0018AB98 38 61 05 28 */ addi r3, r1, 0x528 -/* 8018DC3C 0018AB9C 38 A1 02 54 */ addi r5, r1, 0x254 -/* 8018DC40 0018ABA0 38 C1 02 4C */ addi r6, r1, 0x24c -/* 8018DC44 0018ABA4 90 01 00 0C */ stw r0, 0xc(r1) -/* 8018DC48 0018ABA8 38 E1 02 44 */ addi r7, r1, 0x244 -/* 8018DC4C 0018ABAC 39 01 02 3C */ addi r8, r1, 0x23c -/* 8018DC50 0018ABB0 39 21 02 34 */ addi r9, r1, 0x234 -/* 8018DC54 0018ABB4 39 41 02 2C */ addi r10, r1, 0x22c -/* 8018DC58 0018ABB8 38 80 00 14 */ li r4, 0x14 -/* 8018DC5C 0018ABBC 4B EE F6 69 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm -/* 8018DC60 0018ABC0 80 BE 09 00 */ lwz r5, 0x900(r30) -/* 8018DC64 0018ABC4 7F A3 EB 78 */ mr r3, r29 -/* 8018DC68 0018ABC8 38 81 05 28 */ addi r4, r1, 0x528 -/* 8018DC6C 0018ABCC 4B FA C6 91 */ bl LoopBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16 -/* 8018DC70 0018ABD0 34 A1 05 2C */ addic. r5, r1, 0x52c -/* 8018DC74 0018ABD4 41 82 00 58 */ beq lbl_8018DCCC -/* 8018DC78 0018ABD8 80 C5 00 00 */ lwz r6, 0(r5) -/* 8018DC7C 0018ABDC 38 60 00 00 */ li r3, 0 -/* 8018DC80 0018ABE0 2C 06 00 00 */ cmpwi r6, 0 -/* 8018DC84 0018ABE4 40 81 00 40 */ ble lbl_8018DCC4 -/* 8018DC88 0018ABE8 2C 06 00 08 */ cmpwi r6, 8 -/* 8018DC8C 0018ABEC 38 86 FF F8 */ addi r4, r6, -8 -/* 8018DC90 0018ABF0 40 81 00 20 */ ble lbl_8018DCB0 -/* 8018DC94 0018ABF4 38 04 00 07 */ addi r0, r4, 7 -/* 8018DC98 0018ABF8 54 00 E8 FE */ srwi r0, r0, 3 -/* 8018DC9C 0018ABFC 7C 09 03 A6 */ mtctr r0 -/* 8018DCA0 0018AC00 2C 04 00 00 */ cmpwi r4, 0 -/* 8018DCA4 0018AC04 40 81 00 0C */ ble lbl_8018DCB0 -lbl_8018DCA8: -/* 8018DCA8 0018AC08 38 63 00 08 */ addi r3, r3, 8 -/* 8018DCAC 0018AC0C 42 00 FF FC */ bdnz lbl_8018DCA8 -lbl_8018DCB0: -/* 8018DCB0 0018AC10 7C 03 30 50 */ subf r0, r3, r6 -/* 8018DCB4 0018AC14 7C 09 03 A6 */ mtctr r0 -/* 8018DCB8 0018AC18 7C 03 30 00 */ cmpw r3, r6 -/* 8018DCBC 0018AC1C 40 80 00 08 */ bge lbl_8018DCC4 -lbl_8018DCC0: -/* 8018DCC0 0018AC20 42 00 00 00 */ bdnz lbl_8018DCC0 -lbl_8018DCC4: -/* 8018DCC4 0018AC24 38 00 00 00 */ li r0, 0 -/* 8018DCC8 0018AC28 90 05 00 00 */ stw r0, 0(r5) -lbl_8018DCCC: -/* 8018DCCC 0018AC2C 80 9D 00 00 */ lwz r4, 0(r29) -/* 8018DCD0 0018AC30 38 61 02 14 */ addi r3, r1, 0x214 -/* 8018DCD4 0018AC34 4B F1 EA 11 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" -/* 8018DCD8 0018AC38 83 43 00 04 */ lwz r26, 4(r3) -/* 8018DCDC 0018AC3C 28 1A 00 00 */ cmplwi r26, 0 -/* 8018DCE0 0018AC40 41 82 00 CC */ beq lbl_8018DDAC -/* 8018DCE4 0018AC44 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8018DCE8 0018AC48 7F C3 F3 78 */ mr r3, r30 -/* 8018DCEC 0018AC4C 7F 44 D3 78 */ mr r4, r26 -/* 8018DCF0 0018AC50 38 A1 00 20 */ addi r5, r1, 0x20 -/* 8018DCF4 0018AC54 B0 01 00 20 */ sth r0, 0x20(r1) -/* 8018DCF8 0018AC58 38 C0 00 28 */ li r6, 0x28 -/* 8018DCFC 0018AC5C 4B EB 61 D5 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -/* 8018DD00 0018AC60 A0 1C 00 08 */ lhz r0, 8(r28) -/* 8018DD04 0018AC64 7F C3 F3 78 */ mr r3, r30 -/* 8018DD08 0018AC68 38 81 00 1C */ addi r4, r1, 0x1c -/* 8018DD0C 0018AC6C B0 01 00 1C */ sth r0, 0x1c(r1) -/* 8018DD10 0018AC70 4B EB E8 95 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8018DD14 0018AC74 7C 64 1B 78 */ mr r4, r3 -/* 8018DD18 0018AC78 38 61 00 34 */ addi r3, r1, 0x34 -/* 8018DD1C 0018AC7C 4B F2 1F 75 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8018DD20 0018AC80 80 63 00 04 */ lwz r3, 4(r3) -/* 8018DD24 0018AC84 28 03 00 00 */ cmplwi r3, 0 -/* 8018DD28 0018AC88 41 82 00 84 */ beq lbl_8018DDAC -/* 8018DD2C 0018AC8C C0 23 00 60 */ lfs f1, 0x60(r3) -/* 8018DD30 0018AC90 C0 1A 00 60 */ lfs f0, 0x60(r26) -/* 8018DD34 0018AC94 C0 83 00 40 */ lfs f4, 0x40(r3) -/* 8018DD38 0018AC98 C0 7A 00 40 */ lfs f3, 0x40(r26) -/* 8018DD3C 0018AC9C EC A1 00 28 */ fsubs f5, f1, f0 -/* 8018DD40 0018ACA0 C0 02 A4 70 */ lfs f0, lbl_805AC190@sda21(r2) -/* 8018DD44 0018ACA4 C0 43 00 50 */ lfs f2, 0x50(r3) -/* 8018DD48 0018ACA8 EF C4 18 28 */ fsubs f30, f4, f3 -/* 8018DD4C 0018ACAC C0 3A 00 50 */ lfs f1, 0x50(r26) -/* 8018DD50 0018ACB0 FC 05 00 40 */ fcmpo cr0, f5, f0 -/* 8018DD54 0018ACB4 EF E2 08 28 */ fsubs f31, f2, f1 -/* 8018DD58 0018ACB8 41 80 00 54 */ blt lbl_8018DDAC -/* 8018DD5C 0018ACBC C0 1A 01 58 */ lfs f0, 0x158(r26) -/* 8018DD60 0018ACC0 C0 3A 00 E8 */ lfs f1, 0xe8(r26) -/* 8018DD64 0018ACC4 FC 40 00 50 */ fneg f2, f0 -/* 8018DD68 0018ACC8 C0 02 A4 74 */ lfs f0, lbl_805AC194@sda21(r2) -/* 8018DD6C 0018ACCC EF A2 08 24 */ fdivs f29, f2, f1 -/* 8018DD70 0018ACD0 EC 00 07 72 */ fmuls f0, f0, f29 -/* 8018DD74 0018ACD4 EC 20 01 72 */ fmuls f1, f0, f5 -/* 8018DD78 0018ACD8 48 18 77 89 */ bl SqrtF__5CMathFf -/* 8018DD7C 0018ACDC EC 01 E8 24 */ fdivs f0, f1, f29 -/* 8018DD80 0018ACE0 C0 42 A4 6C */ lfs f2, lbl_805AC18C@sda21(r2) -/* 8018DD84 0018ACE4 88 1C 00 18 */ lbz r0, 0x18(r28) -/* 8018DD88 0018ACE8 38 60 00 00 */ li r3, 0 -/* 8018DD8C 0018ACEC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 8018DD90 0018ACF0 98 1C 00 18 */ stb r0, 0x18(r28) -/* 8018DD94 0018ACF4 EC 02 00 24 */ fdivs f0, f2, f0 -/* 8018DD98 0018ACF8 EC 40 07 B2 */ fmuls f2, f0, f30 -/* 8018DD9C 0018ACFC EC 00 07 F2 */ fmuls f0, f0, f31 -/* 8018DDA0 0018AD00 D0 5C 00 0C */ stfs f2, 0xc(r28) -/* 8018DDA4 0018AD04 D0 1C 00 10 */ stfs f0, 0x10(r28) -/* 8018DDA8 0018AD08 D0 3C 00 14 */ stfs f1, 0x14(r28) -lbl_8018DDAC: -/* 8018DDAC 0018AD0C 34 A1 05 74 */ addic. r5, r1, 0x574 -/* 8018DDB0 0018AD10 41 82 0A BC */ beq lbl_8018E86C -/* 8018DDB4 0018AD14 80 C5 00 00 */ lwz r6, 0(r5) -/* 8018DDB8 0018AD18 38 60 00 00 */ li r3, 0 -/* 8018DDBC 0018AD1C 2C 06 00 00 */ cmpwi r6, 0 -/* 8018DDC0 0018AD20 40 81 00 40 */ ble lbl_8018DE00 -/* 8018DDC4 0018AD24 2C 06 00 08 */ cmpwi r6, 8 -/* 8018DDC8 0018AD28 38 86 FF F8 */ addi r4, r6, -8 -/* 8018DDCC 0018AD2C 40 81 00 20 */ ble lbl_8018DDEC -/* 8018DDD0 0018AD30 38 04 00 07 */ addi r0, r4, 7 -/* 8018DDD4 0018AD34 54 00 E8 FE */ srwi r0, r0, 3 -/* 8018DDD8 0018AD38 7C 09 03 A6 */ mtctr r0 -/* 8018DDDC 0018AD3C 2C 04 00 00 */ cmpwi r4, 0 -/* 8018DDE0 0018AD40 40 81 00 0C */ ble lbl_8018DDEC -lbl_8018DDE4: -/* 8018DDE4 0018AD44 38 63 00 08 */ addi r3, r3, 8 -/* 8018DDE8 0018AD48 42 00 FF FC */ bdnz lbl_8018DDE4 -lbl_8018DDEC: -/* 8018DDEC 0018AD4C 7C 03 30 50 */ subf r0, r3, r6 -/* 8018DDF0 0018AD50 7C 09 03 A6 */ mtctr r0 -/* 8018DDF4 0018AD54 7C 03 30 00 */ cmpw r3, r6 -/* 8018DDF8 0018AD58 40 80 00 08 */ bge lbl_8018DE00 -lbl_8018DDFC: -/* 8018DDFC 0018AD5C 42 00 00 00 */ bdnz lbl_8018DDFC -lbl_8018DE00: -/* 8018DE00 0018AD60 38 00 00 00 */ li r0, 0 -/* 8018DE04 0018AD64 90 05 00 00 */ stw r0, 0(r5) -/* 8018DE08 0018AD68 48 00 0A 64 */ b lbl_8018E86C -/* 8018DE0C 0018AD6C 7F 83 E3 78 */ mr r3, r28 -/* 8018DE10 0018AD70 7F A4 EB 78 */ mr r4, r29 -/* 8018DE14 0018AD74 48 00 0C A1 */ bl SetLaunchVelocity__11CBSWallHangFR15CBodyController -/* 8018DE18 0018AD78 88 1D 03 00 */ lbz r0, 0x300(r29) -/* 8018DE1C 0018AD7C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8018DE20 0018AD80 41 82 00 F4 */ beq lbl_8018DF14 -/* 8018DE24 0018AD84 38 00 00 02 */ li r0, 2 -/* 8018DE28 0018AD88 38 61 01 D4 */ addi r3, r1, 0x1d4 -/* 8018DE2C 0018AD8C 90 1C 00 04 */ stw r0, 4(r28) -/* 8018DE30 0018AD90 48 15 52 4D */ bl NoParameter__12CPASAnimParmFv -/* 8018DE34 0018AD94 38 61 01 DC */ addi r3, r1, 0x1dc -/* 8018DE38 0018AD98 48 15 52 45 */ bl NoParameter__12CPASAnimParmFv -/* 8018DE3C 0018AD9C 38 61 01 E4 */ addi r3, r1, 0x1e4 -/* 8018DE40 0018ADA0 48 15 52 3D */ bl NoParameter__12CPASAnimParmFv -/* 8018DE44 0018ADA4 38 61 01 EC */ addi r3, r1, 0x1ec -/* 8018DE48 0018ADA8 48 15 52 35 */ bl NoParameter__12CPASAnimParmFv -/* 8018DE4C 0018ADAC 38 61 01 F4 */ addi r3, r1, 0x1f4 -/* 8018DE50 0018ADB0 48 15 52 2D */ bl NoParameter__12CPASAnimParmFv -/* 8018DE54 0018ADB4 38 61 01 FC */ addi r3, r1, 0x1fc -/* 8018DE58 0018ADB8 48 15 52 25 */ bl NoParameter__12CPASAnimParmFv -/* 8018DE5C 0018ADBC 38 61 02 04 */ addi r3, r1, 0x204 -/* 8018DE60 0018ADC0 48 15 52 1D */ bl NoParameter__12CPASAnimParmFv -/* 8018DE64 0018ADC4 80 9C 00 04 */ lwz r4, 4(r28) -/* 8018DE68 0018ADC8 38 61 02 0C */ addi r3, r1, 0x20c -/* 8018DE6C 0018ADCC 48 15 51 19 */ bl FromEnum__12CPASAnimParmFi -/* 8018DE70 0018ADD0 38 61 01 DC */ addi r3, r1, 0x1dc -/* 8018DE74 0018ADD4 38 01 01 D4 */ addi r0, r1, 0x1d4 -/* 8018DE78 0018ADD8 90 61 00 08 */ stw r3, 8(r1) -/* 8018DE7C 0018ADDC 38 61 04 E0 */ addi r3, r1, 0x4e0 -/* 8018DE80 0018ADE0 38 A1 02 0C */ addi r5, r1, 0x20c -/* 8018DE84 0018ADE4 38 C1 02 04 */ addi r6, r1, 0x204 -/* 8018DE88 0018ADE8 90 01 00 0C */ stw r0, 0xc(r1) -/* 8018DE8C 0018ADEC 38 E1 01 FC */ addi r7, r1, 0x1fc -/* 8018DE90 0018ADF0 39 01 01 F4 */ addi r8, r1, 0x1f4 -/* 8018DE94 0018ADF4 39 21 01 EC */ addi r9, r1, 0x1ec -/* 8018DE98 0018ADF8 39 41 01 E4 */ addi r10, r1, 0x1e4 -/* 8018DE9C 0018ADFC 38 80 00 14 */ li r4, 0x14 -/* 8018DEA0 0018AE00 4B EE F4 25 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm -/* 8018DEA4 0018AE04 80 BE 09 00 */ lwz r5, 0x900(r30) -/* 8018DEA8 0018AE08 7F A3 EB 78 */ mr r3, r29 -/* 8018DEAC 0018AE0C 38 81 04 E0 */ addi r4, r1, 0x4e0 -/* 8018DEB0 0018AE10 4B FA C4 4D */ bl LoopBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16 -/* 8018DEB4 0018AE14 34 A1 04 E4 */ addic. r5, r1, 0x4e4 -/* 8018DEB8 0018AE18 41 82 09 B4 */ beq lbl_8018E86C -/* 8018DEBC 0018AE1C 80 C5 00 00 */ lwz r6, 0(r5) -/* 8018DEC0 0018AE20 38 60 00 00 */ li r3, 0 -/* 8018DEC4 0018AE24 2C 06 00 00 */ cmpwi r6, 0 -/* 8018DEC8 0018AE28 40 81 00 40 */ ble lbl_8018DF08 -/* 8018DECC 0018AE2C 2C 06 00 08 */ cmpwi r6, 8 -/* 8018DED0 0018AE30 38 86 FF F8 */ addi r4, r6, -8 -/* 8018DED4 0018AE34 40 81 00 20 */ ble lbl_8018DEF4 -/* 8018DED8 0018AE38 38 04 00 07 */ addi r0, r4, 7 -/* 8018DEDC 0018AE3C 54 00 E8 FE */ srwi r0, r0, 3 -/* 8018DEE0 0018AE40 7C 09 03 A6 */ mtctr r0 -/* 8018DEE4 0018AE44 2C 04 00 00 */ cmpwi r4, 0 -/* 8018DEE8 0018AE48 40 81 00 0C */ ble lbl_8018DEF4 -lbl_8018DEEC: -/* 8018DEEC 0018AE4C 38 63 00 08 */ addi r3, r3, 8 -/* 8018DEF0 0018AE50 42 00 FF FC */ bdnz lbl_8018DEEC -lbl_8018DEF4: -/* 8018DEF4 0018AE54 7C 03 30 50 */ subf r0, r3, r6 -/* 8018DEF8 0018AE58 7C 09 03 A6 */ mtctr r0 -/* 8018DEFC 0018AE5C 7C 03 30 00 */ cmpw r3, r6 -/* 8018DF00 0018AE60 40 80 00 08 */ bge lbl_8018DF08 -lbl_8018DF04: -/* 8018DF04 0018AE64 42 00 00 00 */ bdnz lbl_8018DF04 -lbl_8018DF08: -/* 8018DF08 0018AE68 38 00 00 00 */ li r0, 0 -/* 8018DF0C 0018AE6C 90 05 00 00 */ stw r0, 0(r5) -/* 8018DF10 0018AE70 48 00 09 5C */ b lbl_8018E86C -lbl_8018DF14: -/* 8018DF14 0018AE74 7F 83 E3 78 */ mr r3, r28 -/* 8018DF18 0018AE78 7F A4 EB 78 */ mr r4, r29 -/* 8018DF1C 0018AE7C 7F C5 F3 78 */ mr r5, r30 -/* 8018DF20 0018AE80 4B FF F8 35 */ bl CheckForWall__11CBSWallHangFR15CBodyControllerR13CStateManager -/* 8018DF24 0018AE84 48 00 09 48 */ b lbl_8018E86C -/* 8018DF28 0018AE88 7F 83 E3 78 */ mr r3, r28 -/* 8018DF2C 0018AE8C 7F A4 EB 78 */ mr r4, r29 -/* 8018DF30 0018AE90 48 00 0B 85 */ bl SetLaunchVelocity__11CBSWallHangFR15CBodyController -/* 8018DF34 0018AE94 7F 83 E3 78 */ mr r3, r28 -/* 8018DF38 0018AE98 7F A4 EB 78 */ mr r4, r29 -/* 8018DF3C 0018AE9C 7F C5 F3 78 */ mr r5, r30 -/* 8018DF40 0018AEA0 4B FF F8 15 */ bl CheckForWall__11CBSWallHangFR15CBodyControllerR13CStateManager -/* 8018DF44 0018AEA4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8018DF48 0018AEA8 40 82 09 24 */ bne lbl_8018E86C -/* 8018DF4C 0018AEAC 7F 83 E3 78 */ mr r3, r28 -/* 8018DF50 0018AEB0 7F A4 EB 78 */ mr r4, r29 -/* 8018DF54 0018AEB4 7F C5 F3 78 */ mr r5, r30 -/* 8018DF58 0018AEB8 4B FF F6 79 */ bl CheckForLand__11CBSWallHangFR15CBodyControllerR13CStateManager -/* 8018DF5C 0018AEBC 48 00 09 10 */ b lbl_8018E86C -/* 8018DF60 0018AEC0 88 1D 03 00 */ lbz r0, 0x300(r29) -/* 8018DF64 0018AEC4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8018DF68 0018AEC8 41 82 00 F4 */ beq lbl_8018E05C -/* 8018DF6C 0018AECC 38 00 00 04 */ li r0, 4 -/* 8018DF70 0018AED0 38 61 01 94 */ addi r3, r1, 0x194 -/* 8018DF74 0018AED4 90 1C 00 04 */ stw r0, 4(r28) -/* 8018DF78 0018AED8 48 15 51 05 */ bl NoParameter__12CPASAnimParmFv -/* 8018DF7C 0018AEDC 38 61 01 9C */ addi r3, r1, 0x19c -/* 8018DF80 0018AEE0 48 15 50 FD */ bl NoParameter__12CPASAnimParmFv -/* 8018DF84 0018AEE4 38 61 01 A4 */ addi r3, r1, 0x1a4 -/* 8018DF88 0018AEE8 48 15 50 F5 */ bl NoParameter__12CPASAnimParmFv -/* 8018DF8C 0018AEEC 38 61 01 AC */ addi r3, r1, 0x1ac -/* 8018DF90 0018AEF0 48 15 50 ED */ bl NoParameter__12CPASAnimParmFv -/* 8018DF94 0018AEF4 38 61 01 B4 */ addi r3, r1, 0x1b4 -/* 8018DF98 0018AEF8 48 15 50 E5 */ bl NoParameter__12CPASAnimParmFv -/* 8018DF9C 0018AEFC 38 61 01 BC */ addi r3, r1, 0x1bc -/* 8018DFA0 0018AF00 48 15 50 DD */ bl NoParameter__12CPASAnimParmFv -/* 8018DFA4 0018AF04 38 61 01 C4 */ addi r3, r1, 0x1c4 -/* 8018DFA8 0018AF08 48 15 50 D5 */ bl NoParameter__12CPASAnimParmFv -/* 8018DFAC 0018AF0C 80 9C 00 04 */ lwz r4, 4(r28) -/* 8018DFB0 0018AF10 38 61 01 CC */ addi r3, r1, 0x1cc -/* 8018DFB4 0018AF14 48 15 4F D1 */ bl FromEnum__12CPASAnimParmFi -/* 8018DFB8 0018AF18 38 61 01 9C */ addi r3, r1, 0x19c -/* 8018DFBC 0018AF1C 38 01 01 94 */ addi r0, r1, 0x194 -/* 8018DFC0 0018AF20 90 61 00 08 */ stw r3, 8(r1) -/* 8018DFC4 0018AF24 38 61 04 98 */ addi r3, r1, 0x498 -/* 8018DFC8 0018AF28 38 A1 01 CC */ addi r5, r1, 0x1cc -/* 8018DFCC 0018AF2C 38 C1 01 C4 */ addi r6, r1, 0x1c4 -/* 8018DFD0 0018AF30 90 01 00 0C */ stw r0, 0xc(r1) -/* 8018DFD4 0018AF34 38 E1 01 BC */ addi r7, r1, 0x1bc -/* 8018DFD8 0018AF38 39 01 01 B4 */ addi r8, r1, 0x1b4 -/* 8018DFDC 0018AF3C 39 21 01 AC */ addi r9, r1, 0x1ac -/* 8018DFE0 0018AF40 39 41 01 A4 */ addi r10, r1, 0x1a4 -/* 8018DFE4 0018AF44 38 80 00 14 */ li r4, 0x14 -/* 8018DFE8 0018AF48 4B EE F2 DD */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm -/* 8018DFEC 0018AF4C 80 BE 09 00 */ lwz r5, 0x900(r30) -/* 8018DFF0 0018AF50 7F A3 EB 78 */ mr r3, r29 -/* 8018DFF4 0018AF54 38 81 04 98 */ addi r4, r1, 0x498 -/* 8018DFF8 0018AF58 4B FA C3 05 */ bl LoopBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16 -/* 8018DFFC 0018AF5C 34 A1 04 9C */ addic. r5, r1, 0x49c -/* 8018E000 0018AF60 41 82 08 6C */ beq lbl_8018E86C -/* 8018E004 0018AF64 80 C5 00 00 */ lwz r6, 0(r5) -/* 8018E008 0018AF68 38 60 00 00 */ li r3, 0 -/* 8018E00C 0018AF6C 2C 06 00 00 */ cmpwi r6, 0 -/* 8018E010 0018AF70 40 81 00 40 */ ble lbl_8018E050 -/* 8018E014 0018AF74 2C 06 00 08 */ cmpwi r6, 8 -/* 8018E018 0018AF78 38 86 FF F8 */ addi r4, r6, -8 -/* 8018E01C 0018AF7C 40 81 00 20 */ ble lbl_8018E03C -/* 8018E020 0018AF80 38 04 00 07 */ addi r0, r4, 7 -/* 8018E024 0018AF84 54 00 E8 FE */ srwi r0, r0, 3 -/* 8018E028 0018AF88 7C 09 03 A6 */ mtctr r0 -/* 8018E02C 0018AF8C 2C 04 00 00 */ cmpwi r4, 0 -/* 8018E030 0018AF90 40 81 00 0C */ ble lbl_8018E03C -lbl_8018E034: -/* 8018E034 0018AF94 38 63 00 08 */ addi r3, r3, 8 -/* 8018E038 0018AF98 42 00 FF FC */ bdnz lbl_8018E034 -lbl_8018E03C: -/* 8018E03C 0018AF9C 7C 03 30 50 */ subf r0, r3, r6 -/* 8018E040 0018AFA0 7C 09 03 A6 */ mtctr r0 -/* 8018E044 0018AFA4 7C 03 30 00 */ cmpw r3, r6 -/* 8018E048 0018AFA8 40 80 00 08 */ bge lbl_8018E050 -lbl_8018E04C: -/* 8018E04C 0018AFAC 42 00 00 00 */ bdnz lbl_8018E04C -lbl_8018E050: -/* 8018E050 0018AFB0 38 00 00 00 */ li r0, 0 -/* 8018E054 0018AFB4 90 05 00 00 */ stw r0, 0(r5) -/* 8018E058 0018AFB8 48 00 08 14 */ b lbl_8018E86C -lbl_8018E05C: -/* 8018E05C 0018AFBC 38 7D 00 04 */ addi r3, r29, 4 -/* 8018E060 0018AFC0 38 80 00 0A */ li r4, 0xa -/* 8018E064 0018AFC4 4B FA 33 ED */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8018E068 0018AFC8 28 03 00 00 */ cmplwi r3, 0 -/* 8018E06C 0018AFCC 41 82 08 00 */ beq lbl_8018E86C -/* 8018E070 0018AFD0 88 1C 00 18 */ lbz r0, 0x18(r28) -/* 8018E074 0018AFD4 38 60 00 01 */ li r3, 1 -/* 8018E078 0018AFD8 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 8018E07C 0018AFDC 98 1C 00 18 */ stb r0, 0x18(r28) -/* 8018E080 0018AFE0 48 00 07 EC */ b lbl_8018E86C -/* 8018E084 0018AFE4 3B 7D 00 04 */ addi r27, r29, 4 -/* 8018E088 0018AFE8 C0 22 A4 70 */ lfs f1, lbl_805AC190@sda21(r2) -/* 8018E08C 0018AFEC C0 1D 00 1C */ lfs f0, 0x1c(r29) -/* 8018E090 0018AFF0 38 00 00 00 */ li r0, 0 -/* 8018E094 0018AFF4 FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 8018E098 0018AFF8 40 82 00 1C */ bne lbl_8018E0B4 -/* 8018E09C 0018AFFC C0 1B 00 1C */ lfs f0, 0x1c(r27) -/* 8018E0A0 0018B000 FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 8018E0A4 0018B004 40 82 00 10 */ bne lbl_8018E0B4 -/* 8018E0A8 0018B008 C0 1B 00 20 */ lfs f0, 0x20(r27) -/* 8018E0AC 0018B00C FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 8018E0B0 0018B010 41 82 00 08 */ beq lbl_8018E0B8 -lbl_8018E0B4: -/* 8018E0B4 0018B014 38 00 00 01 */ li r0, 1 -lbl_8018E0B8: -/* 8018E0B8 0018B018 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 8018E0BC 0018B01C 41 82 00 F4 */ beq lbl_8018E1B0 -/* 8018E0C0 0018B020 A0 1C 00 08 */ lhz r0, 8(r28) -/* 8018E0C4 0018B024 7F C3 F3 78 */ mr r3, r30 -/* 8018E0C8 0018B028 38 81 00 18 */ addi r4, r1, 0x18 -/* 8018E0CC 0018B02C B0 01 00 18 */ sth r0, 0x18(r1) -/* 8018E0D0 0018B030 4B EB E4 D5 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8018E0D4 0018B034 7C 64 1B 78 */ mr r4, r3 -/* 8018E0D8 0018B038 38 61 00 2C */ addi r3, r1, 0x2c -/* 8018E0DC 0018B03C 4B F2 1B B5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8018E0E0 0018B040 83 43 00 04 */ lwz r26, 4(r3) -/* 8018E0E4 0018B044 28 1A 00 00 */ cmplwi r26, 0 -/* 8018E0E8 0018B048 41 82 00 C8 */ beq lbl_8018E1B0 -/* 8018E0EC 0018B04C 80 9D 00 00 */ lwz r4, 0(r29) -/* 8018E0F0 0018B050 38 61 01 8C */ addi r3, r1, 0x18c -/* 8018E0F4 0018B054 4B F2 1B 9D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8018E0F8 0018B058 83 23 00 04 */ lwz r25, 4(r3) -/* 8018E0FC 0018B05C 28 19 00 00 */ cmplwi r25, 0 -/* 8018E100 0018B060 41 82 00 B0 */ beq lbl_8018E1B0 -/* 8018E104 0018B064 38 61 02 D4 */ addi r3, r1, 0x2d4 -/* 8018E108 0018B068 38 9B 00 18 */ addi r4, r27, 0x18 -/* 8018E10C 0018B06C 48 18 67 45 */ bl AsNormalized__9CVector3fCFv -/* 8018E110 0018B070 C0 BA 00 48 */ lfs f5, 0x48(r26) -/* 8018E114 0018B074 C0 F9 00 48 */ lfs f7, 0x48(r25) -/* 8018E118 0018B078 C0 9A 00 38 */ lfs f4, 0x38(r26) -/* 8018E11C 0018B07C C1 21 02 D8 */ lfs f9, 0x2d8(r1) -/* 8018E120 0018B080 EC 27 01 72 */ fmuls f1, f7, f5 -/* 8018E124 0018B084 C0 79 00 38 */ lfs f3, 0x38(r25) -/* 8018E128 0018B088 EC 09 01 72 */ fmuls f0, f9, f5 -/* 8018E12C 0018B08C C0 DA 00 58 */ lfs f6, 0x58(r26) -/* 8018E130 0018B090 C1 61 02 D4 */ lfs f11, 0x2d4(r1) -/* 8018E134 0018B094 EC 43 09 3A */ fmadds f2, f3, f4, f1 -/* 8018E138 0018B098 C1 19 00 58 */ lfs f8, 0x58(r25) -/* 8018E13C 0018B09C EC 2B 01 3A */ fmadds f1, f11, f4, f0 -/* 8018E140 0018B0A0 C1 41 02 DC */ lfs f10, 0x2dc(r1) -/* 8018E144 0018B0A4 EC 48 11 BA */ fmadds f2, f8, f6, f2 -/* 8018E148 0018B0A8 C0 02 A4 78 */ lfs f0, lbl_805AC198@sda21(r2) -/* 8018E14C 0018B0AC EC 2A 09 BA */ fmadds f1, f10, f6, f1 -/* 8018E150 0018B0B0 D0 81 02 BC */ stfs f4, 0x2bc(r1) -/* 8018E154 0018B0B4 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8018E158 0018B0B8 D0 A1 02 C0 */ stfs f5, 0x2c0(r1) -/* 8018E15C 0018B0BC D0 C1 02 C4 */ stfs f6, 0x2c4(r1) -/* 8018E160 0018B0C0 D0 61 02 C8 */ stfs f3, 0x2c8(r1) -/* 8018E164 0018B0C4 D0 E1 02 CC */ stfs f7, 0x2cc(r1) -/* 8018E168 0018B0C8 D1 01 02 D0 */ stfs f8, 0x2d0(r1) -/* 8018E16C 0018B0CC D0 81 02 B0 */ stfs f4, 0x2b0(r1) -/* 8018E170 0018B0D0 D0 A1 02 B4 */ stfs f5, 0x2b4(r1) -/* 8018E174 0018B0D4 D0 C1 02 B8 */ stfs f6, 0x2b8(r1) -/* 8018E178 0018B0D8 41 80 00 10 */ blt lbl_8018E188 -/* 8018E17C 0018B0DC C0 02 A4 7C */ lfs f0, lbl_805AC19C@sda21(r2) -/* 8018E180 0018B0E0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8018E184 0018B0E4 40 81 00 2C */ ble lbl_8018E1B0 -lbl_8018E188: -/* 8018E188 0018B0E8 FC 60 58 50 */ fneg f3, f11 -/* 8018E18C 0018B0EC 7F A3 EB 78 */ mr r3, r29 -/* 8018E190 0018B0F0 FC 40 48 50 */ fneg f2, f9 -/* 8018E194 0018B0F4 38 81 02 A4 */ addi r4, r1, 0x2a4 -/* 8018E198 0018B0F8 FC 00 50 50 */ fneg f0, f10 -/* 8018E19C 0018B0FC FC 20 F8 90 */ fmr f1, f31 -/* 8018E1A0 0018B100 D0 61 02 A4 */ stfs f3, 0x2a4(r1) -/* 8018E1A4 0018B104 D0 41 02 A8 */ stfs f2, 0x2a8(r1) -/* 8018E1A8 0018B108 D0 01 02 AC */ stfs f0, 0x2ac(r1) -/* 8018E1AC 0018B10C 4B FA C4 F9 */ bl FaceDirection__15CBodyControllerFRC9CVector3ff -lbl_8018E1B0: -/* 8018E1B0 0018B110 7F 63 DB 78 */ mr r3, r27 -/* 8018E1B4 0018B114 38 80 00 0A */ li r4, 0xa -/* 8018E1B8 0018B118 4B FA 32 99 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8018E1BC 0018B11C 28 03 00 00 */ cmplwi r3, 0 -/* 8018E1C0 0018B120 40 82 00 10 */ bne lbl_8018E1D0 -/* 8018E1C4 0018B124 88 1C 00 18 */ lbz r0, 0x18(r28) -/* 8018E1C8 0018B128 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f -/* 8018E1CC 0018B12C 41 82 00 F0 */ beq lbl_8018E2BC -lbl_8018E1D0: -/* 8018E1D0 0018B130 38 00 00 06 */ li r0, 6 -/* 8018E1D4 0018B134 38 61 01 4C */ addi r3, r1, 0x14c -/* 8018E1D8 0018B138 90 1C 00 04 */ stw r0, 4(r28) -/* 8018E1DC 0018B13C 48 15 4E A1 */ bl NoParameter__12CPASAnimParmFv -/* 8018E1E0 0018B140 38 61 01 54 */ addi r3, r1, 0x154 -/* 8018E1E4 0018B144 48 15 4E 99 */ bl NoParameter__12CPASAnimParmFv -/* 8018E1E8 0018B148 38 61 01 5C */ addi r3, r1, 0x15c -/* 8018E1EC 0018B14C 48 15 4E 91 */ bl NoParameter__12CPASAnimParmFv -/* 8018E1F0 0018B150 38 61 01 64 */ addi r3, r1, 0x164 -/* 8018E1F4 0018B154 48 15 4E 89 */ bl NoParameter__12CPASAnimParmFv -/* 8018E1F8 0018B158 38 61 01 6C */ addi r3, r1, 0x16c -/* 8018E1FC 0018B15C 48 15 4E 81 */ bl NoParameter__12CPASAnimParmFv -/* 8018E200 0018B160 38 61 01 74 */ addi r3, r1, 0x174 -/* 8018E204 0018B164 48 15 4E 79 */ bl NoParameter__12CPASAnimParmFv -/* 8018E208 0018B168 38 61 01 7C */ addi r3, r1, 0x17c -/* 8018E20C 0018B16C 48 15 4E 71 */ bl NoParameter__12CPASAnimParmFv -/* 8018E210 0018B170 80 9C 00 04 */ lwz r4, 4(r28) -/* 8018E214 0018B174 38 61 01 84 */ addi r3, r1, 0x184 -/* 8018E218 0018B178 48 15 4D 6D */ bl FromEnum__12CPASAnimParmFi -/* 8018E21C 0018B17C 38 61 01 54 */ addi r3, r1, 0x154 -/* 8018E220 0018B180 38 01 01 4C */ addi r0, r1, 0x14c -/* 8018E224 0018B184 90 61 00 08 */ stw r3, 8(r1) -/* 8018E228 0018B188 38 61 04 50 */ addi r3, r1, 0x450 -/* 8018E22C 0018B18C 38 A1 01 84 */ addi r5, r1, 0x184 -/* 8018E230 0018B190 38 C1 01 7C */ addi r6, r1, 0x17c -/* 8018E234 0018B194 90 01 00 0C */ stw r0, 0xc(r1) -/* 8018E238 0018B198 38 E1 01 74 */ addi r7, r1, 0x174 -/* 8018E23C 0018B19C 39 01 01 6C */ addi r8, r1, 0x16c -/* 8018E240 0018B1A0 39 21 01 64 */ addi r9, r1, 0x164 -/* 8018E244 0018B1A4 39 41 01 5C */ addi r10, r1, 0x15c -/* 8018E248 0018B1A8 38 80 00 14 */ li r4, 0x14 -/* 8018E24C 0018B1AC 4B EE F0 79 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm -/* 8018E250 0018B1B0 80 BE 09 00 */ lwz r5, 0x900(r30) -/* 8018E254 0018B1B4 7F A3 EB 78 */ mr r3, r29 -/* 8018E258 0018B1B8 38 81 04 50 */ addi r4, r1, 0x450 -/* 8018E25C 0018B1BC 4B FA C1 4D */ bl PlayBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16 -/* 8018E260 0018B1C0 34 A1 04 54 */ addic. r5, r1, 0x454 -/* 8018E264 0018B1C4 41 82 00 58 */ beq lbl_8018E2BC -/* 8018E268 0018B1C8 80 C5 00 00 */ lwz r6, 0(r5) -/* 8018E26C 0018B1CC 38 60 00 00 */ li r3, 0 -/* 8018E270 0018B1D0 2C 06 00 00 */ cmpwi r6, 0 -/* 8018E274 0018B1D4 40 81 00 40 */ ble lbl_8018E2B4 -/* 8018E278 0018B1D8 2C 06 00 08 */ cmpwi r6, 8 -/* 8018E27C 0018B1DC 38 86 FF F8 */ addi r4, r6, -8 -/* 8018E280 0018B1E0 40 81 00 20 */ ble lbl_8018E2A0 -/* 8018E284 0018B1E4 38 04 00 07 */ addi r0, r4, 7 -/* 8018E288 0018B1E8 54 00 E8 FE */ srwi r0, r0, 3 -/* 8018E28C 0018B1EC 7C 09 03 A6 */ mtctr r0 -/* 8018E290 0018B1F0 2C 04 00 00 */ cmpwi r4, 0 -/* 8018E294 0018B1F4 40 81 00 0C */ ble lbl_8018E2A0 -lbl_8018E298: -/* 8018E298 0018B1F8 38 63 00 08 */ addi r3, r3, 8 -/* 8018E29C 0018B1FC 42 00 FF FC */ bdnz lbl_8018E298 -lbl_8018E2A0: -/* 8018E2A0 0018B200 7C 03 30 50 */ subf r0, r3, r6 -/* 8018E2A4 0018B204 7C 09 03 A6 */ mtctr r0 -/* 8018E2A8 0018B208 7C 03 30 00 */ cmpw r3, r6 -/* 8018E2AC 0018B20C 40 80 00 08 */ bge lbl_8018E2B4 -lbl_8018E2B0: -/* 8018E2B0 0018B210 42 00 00 00 */ bdnz lbl_8018E2B0 -lbl_8018E2B4: -/* 8018E2B4 0018B214 38 00 00 00 */ li r0, 0 -/* 8018E2B8 0018B218 90 05 00 00 */ stw r0, 0(r5) -lbl_8018E2BC: -/* 8018E2BC 0018B21C 7F 83 E3 78 */ mr r3, r28 -/* 8018E2C0 0018B220 7F A4 EB 78 */ mr r4, r29 -/* 8018E2C4 0018B224 4B FF F2 B9 */ bl FixInPlace__11CBSWallHangFR15CBodyController -/* 8018E2C8 0018B228 48 00 05 A4 */ b lbl_8018E86C -/* 8018E2CC 0018B22C 88 1D 03 00 */ lbz r0, 0x300(r29) -/* 8018E2D0 0018B230 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8018E2D4 0018B234 41 82 00 F0 */ beq lbl_8018E3C4 -/* 8018E2D8 0018B238 38 00 00 04 */ li r0, 4 -/* 8018E2DC 0018B23C 38 61 01 0C */ addi r3, r1, 0x10c -/* 8018E2E0 0018B240 90 1C 00 04 */ stw r0, 4(r28) -/* 8018E2E4 0018B244 48 15 4D 99 */ bl NoParameter__12CPASAnimParmFv -/* 8018E2E8 0018B248 38 61 01 14 */ addi r3, r1, 0x114 -/* 8018E2EC 0018B24C 48 15 4D 91 */ bl NoParameter__12CPASAnimParmFv -/* 8018E2F0 0018B250 38 61 01 1C */ addi r3, r1, 0x11c -/* 8018E2F4 0018B254 48 15 4D 89 */ bl NoParameter__12CPASAnimParmFv -/* 8018E2F8 0018B258 38 61 01 24 */ addi r3, r1, 0x124 -/* 8018E2FC 0018B25C 48 15 4D 81 */ bl NoParameter__12CPASAnimParmFv -/* 8018E300 0018B260 38 61 01 2C */ addi r3, r1, 0x12c -/* 8018E304 0018B264 48 15 4D 79 */ bl NoParameter__12CPASAnimParmFv -/* 8018E308 0018B268 38 61 01 34 */ addi r3, r1, 0x134 -/* 8018E30C 0018B26C 48 15 4D 71 */ bl NoParameter__12CPASAnimParmFv -/* 8018E310 0018B270 38 61 01 3C */ addi r3, r1, 0x13c -/* 8018E314 0018B274 48 15 4D 69 */ bl NoParameter__12CPASAnimParmFv -/* 8018E318 0018B278 80 9C 00 04 */ lwz r4, 4(r28) -/* 8018E31C 0018B27C 38 61 01 44 */ addi r3, r1, 0x144 -/* 8018E320 0018B280 48 15 4C 65 */ bl FromEnum__12CPASAnimParmFi -/* 8018E324 0018B284 38 61 01 14 */ addi r3, r1, 0x114 -/* 8018E328 0018B288 38 01 01 0C */ addi r0, r1, 0x10c -/* 8018E32C 0018B28C 90 61 00 08 */ stw r3, 8(r1) -/* 8018E330 0018B290 38 61 04 08 */ addi r3, r1, 0x408 -/* 8018E334 0018B294 38 A1 01 44 */ addi r5, r1, 0x144 -/* 8018E338 0018B298 38 C1 01 3C */ addi r6, r1, 0x13c -/* 8018E33C 0018B29C 90 01 00 0C */ stw r0, 0xc(r1) -/* 8018E340 0018B2A0 38 E1 01 34 */ addi r7, r1, 0x134 -/* 8018E344 0018B2A4 39 01 01 2C */ addi r8, r1, 0x12c -/* 8018E348 0018B2A8 39 21 01 24 */ addi r9, r1, 0x124 -/* 8018E34C 0018B2AC 39 41 01 1C */ addi r10, r1, 0x11c -/* 8018E350 0018B2B0 38 80 00 14 */ li r4, 0x14 -/* 8018E354 0018B2B4 4B EE EF 71 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm -/* 8018E358 0018B2B8 80 BE 09 00 */ lwz r5, 0x900(r30) -/* 8018E35C 0018B2BC 7F A3 EB 78 */ mr r3, r29 -/* 8018E360 0018B2C0 38 81 04 08 */ addi r4, r1, 0x408 -/* 8018E364 0018B2C4 4B FA BF 99 */ bl LoopBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16 -/* 8018E368 0018B2C8 34 A1 04 0C */ addic. r5, r1, 0x40c -/* 8018E36C 0018B2CC 41 82 00 58 */ beq lbl_8018E3C4 -/* 8018E370 0018B2D0 80 C5 00 00 */ lwz r6, 0(r5) -/* 8018E374 0018B2D4 38 60 00 00 */ li r3, 0 -/* 8018E378 0018B2D8 2C 06 00 00 */ cmpwi r6, 0 -/* 8018E37C 0018B2DC 40 81 00 40 */ ble lbl_8018E3BC -/* 8018E380 0018B2E0 2C 06 00 08 */ cmpwi r6, 8 -/* 8018E384 0018B2E4 38 86 FF F8 */ addi r4, r6, -8 -/* 8018E388 0018B2E8 40 81 00 20 */ ble lbl_8018E3A8 -/* 8018E38C 0018B2EC 38 04 00 07 */ addi r0, r4, 7 -/* 8018E390 0018B2F0 54 00 E8 FE */ srwi r0, r0, 3 -/* 8018E394 0018B2F4 7C 09 03 A6 */ mtctr r0 -/* 8018E398 0018B2F8 2C 04 00 00 */ cmpwi r4, 0 -/* 8018E39C 0018B2FC 40 81 00 0C */ ble lbl_8018E3A8 -lbl_8018E3A0: -/* 8018E3A0 0018B300 38 63 00 08 */ addi r3, r3, 8 -/* 8018E3A4 0018B304 42 00 FF FC */ bdnz lbl_8018E3A0 -lbl_8018E3A8: -/* 8018E3A8 0018B308 7C 03 30 50 */ subf r0, r3, r6 -/* 8018E3AC 0018B30C 7C 09 03 A6 */ mtctr r0 -/* 8018E3B0 0018B310 7C 03 30 00 */ cmpw r3, r6 -/* 8018E3B4 0018B314 40 80 00 08 */ bge lbl_8018E3BC -lbl_8018E3B8: -/* 8018E3B8 0018B318 42 00 00 00 */ bdnz lbl_8018E3B8 -lbl_8018E3BC: -/* 8018E3BC 0018B31C 38 00 00 00 */ li r0, 0 -/* 8018E3C0 0018B320 90 05 00 00 */ stw r0, 0(r5) -lbl_8018E3C4: -/* 8018E3C4 0018B324 7F 83 E3 78 */ mr r3, r28 -/* 8018E3C8 0018B328 7F A4 EB 78 */ mr r4, r29 -/* 8018E3CC 0018B32C 4B FF F1 B1 */ bl FixInPlace__11CBSWallHangFR15CBodyController -/* 8018E3D0 0018B330 48 00 04 9C */ b lbl_8018E86C -/* 8018E3D4 0018B334 88 1D 03 00 */ lbz r0, 0x300(r29) -/* 8018E3D8 0018B338 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8018E3DC 0018B33C 41 82 04 90 */ beq lbl_8018E86C -/* 8018E3E0 0018B340 38 61 00 CC */ addi r3, r1, 0xcc -/* 8018E3E4 0018B344 48 15 4C 99 */ bl NoParameter__12CPASAnimParmFv -/* 8018E3E8 0018B348 38 61 00 D4 */ addi r3, r1, 0xd4 -/* 8018E3EC 0018B34C 48 15 4C 91 */ bl NoParameter__12CPASAnimParmFv -/* 8018E3F0 0018B350 38 61 00 DC */ addi r3, r1, 0xdc -/* 8018E3F4 0018B354 48 15 4C 89 */ bl NoParameter__12CPASAnimParmFv -/* 8018E3F8 0018B358 38 61 00 E4 */ addi r3, r1, 0xe4 -/* 8018E3FC 0018B35C 48 15 4C 81 */ bl NoParameter__12CPASAnimParmFv -/* 8018E400 0018B360 38 61 00 EC */ addi r3, r1, 0xec -/* 8018E404 0018B364 48 15 4C 79 */ bl NoParameter__12CPASAnimParmFv -/* 8018E408 0018B368 38 61 00 F4 */ addi r3, r1, 0xf4 -/* 8018E40C 0018B36C 48 15 4C 71 */ bl NoParameter__12CPASAnimParmFv -/* 8018E410 0018B370 38 61 00 FC */ addi r3, r1, 0xfc -/* 8018E414 0018B374 48 15 4C 69 */ bl NoParameter__12CPASAnimParmFv -/* 8018E418 0018B378 38 61 01 04 */ addi r3, r1, 0x104 -/* 8018E41C 0018B37C 38 80 00 07 */ li r4, 7 -/* 8018E420 0018B380 48 15 4B 65 */ bl FromEnum__12CPASAnimParmFi -/* 8018E424 0018B384 38 61 00 D4 */ addi r3, r1, 0xd4 -/* 8018E428 0018B388 38 01 00 CC */ addi r0, r1, 0xcc -/* 8018E42C 0018B38C 90 61 00 08 */ stw r3, 8(r1) -/* 8018E430 0018B390 38 61 03 C0 */ addi r3, r1, 0x3c0 -/* 8018E434 0018B394 38 A1 01 04 */ addi r5, r1, 0x104 -/* 8018E438 0018B398 38 C1 00 FC */ addi r6, r1, 0xfc -/* 8018E43C 0018B39C 90 01 00 0C */ stw r0, 0xc(r1) -/* 8018E440 0018B3A0 38 E1 00 F4 */ addi r7, r1, 0xf4 -/* 8018E444 0018B3A4 39 01 00 EC */ addi r8, r1, 0xec -/* 8018E448 0018B3A8 39 21 00 E4 */ addi r9, r1, 0xe4 -/* 8018E44C 0018B3AC 39 41 00 DC */ addi r10, r1, 0xdc -/* 8018E450 0018B3B0 38 80 00 14 */ li r4, 0x14 -/* 8018E454 0018B3B4 4B EE EE 71 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm -/* 8018E458 0018B3B8 7F A3 EB 78 */ mr r3, r29 -/* 8018E45C 0018B3BC 4B FA BF F9 */ bl GetPASDatabase__15CBodyControllerCFv -/* 8018E460 0018B3C0 80 DE 09 00 */ lwz r6, 0x900(r30) -/* 8018E464 0018B3C4 7C 64 1B 78 */ mr r4, r3 -/* 8018E468 0018B3C8 38 61 00 C4 */ addi r3, r1, 0xc4 -/* 8018E46C 0018B3CC 38 A1 03 C0 */ addi r5, r1, 0x3c0 -/* 8018E470 0018B3D0 38 E0 FF FF */ li r7, -1 -/* 8018E474 0018B3D4 48 15 6B ED */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i -/* 8018E478 0018B3D8 C0 21 00 C4 */ lfs f1, 0xc4(r1) -/* 8018E47C 0018B3DC C0 02 A4 70 */ lfs f0, lbl_805AC190@sda21(r2) -/* 8018E480 0018B3E0 80 61 00 C8 */ lwz r3, 0xc8(r1) -/* 8018E484 0018B3E4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8018E488 0018B3E8 40 81 00 5C */ ble lbl_8018E4E4 -/* 8018E48C 0018B3EC 38 00 00 07 */ li r0, 7 -/* 8018E490 0018B3F0 C0 02 A4 6C */ lfs f0, lbl_805AC18C@sda21(r2) -/* 8018E494 0018B3F4 90 1C 00 04 */ stw r0, 4(r28) -/* 8018E498 0018B3F8 38 00 00 00 */ li r0, 0 -/* 8018E49C 0018B3FC 38 C0 FF FF */ li r6, -1 -/* 8018E4A0 0018B400 38 E0 00 01 */ li r7, 1 -/* 8018E4A4 0018B404 90 61 02 E0 */ stw r3, 0x2e0(r1) -/* 8018E4A8 0018B408 7F A3 EB 78 */ mr r3, r29 -/* 8018E4AC 0018B40C 38 81 02 E0 */ addi r4, r1, 0x2e0 -/* 8018E4B0 0018B410 38 A0 00 00 */ li r5, 0 -/* 8018E4B4 0018B414 90 C1 02 E4 */ stw r6, 0x2e4(r1) -/* 8018E4B8 0018B418 38 C0 00 00 */ li r6, 0 -/* 8018E4BC 0018B41C D0 01 02 E8 */ stfs f0, 0x2e8(r1) -/* 8018E4C0 0018B420 98 E1 02 EC */ stb r7, 0x2ec(r1) -/* 8018E4C4 0018B424 90 01 02 F0 */ stw r0, 0x2f0(r1) -/* 8018E4C8 0018B428 90 01 02 F4 */ stw r0, 0x2f4(r1) -/* 8018E4CC 0018B42C 98 01 02 F8 */ stb r0, 0x2f8(r1) -/* 8018E4D0 0018B430 90 01 02 FC */ stw r0, 0x2fc(r1) -/* 8018E4D4 0018B434 90 01 03 00 */ stw r0, 0x300(r1) -/* 8018E4D8 0018B438 90 01 03 04 */ stw r0, 0x304(r1) -/* 8018E4DC 0018B43C 4B FA C4 41 */ bl SetCurrentAnimation__15CBodyControllerFRC18CAnimPlaybackParmsbb -/* 8018E4E0 0018B440 48 00 00 F0 */ b lbl_8018E5D0 -lbl_8018E4E4: -/* 8018E4E4 0018B444 38 00 00 08 */ li r0, 8 -/* 8018E4E8 0018B448 38 61 00 84 */ addi r3, r1, 0x84 -/* 8018E4EC 0018B44C 90 1C 00 04 */ stw r0, 4(r28) -/* 8018E4F0 0018B450 48 15 4B 8D */ bl NoParameter__12CPASAnimParmFv -/* 8018E4F4 0018B454 38 61 00 8C */ addi r3, r1, 0x8c -/* 8018E4F8 0018B458 48 15 4B 85 */ bl NoParameter__12CPASAnimParmFv -/* 8018E4FC 0018B45C 38 61 00 94 */ addi r3, r1, 0x94 -/* 8018E500 0018B460 48 15 4B 7D */ bl NoParameter__12CPASAnimParmFv -/* 8018E504 0018B464 38 61 00 9C */ addi r3, r1, 0x9c -/* 8018E508 0018B468 48 15 4B 75 */ bl NoParameter__12CPASAnimParmFv -/* 8018E50C 0018B46C 38 61 00 A4 */ addi r3, r1, 0xa4 -/* 8018E510 0018B470 48 15 4B 6D */ bl NoParameter__12CPASAnimParmFv -/* 8018E514 0018B474 38 61 00 AC */ addi r3, r1, 0xac -/* 8018E518 0018B478 48 15 4B 65 */ bl NoParameter__12CPASAnimParmFv -/* 8018E51C 0018B47C 38 61 00 B4 */ addi r3, r1, 0xb4 -/* 8018E520 0018B480 48 15 4B 5D */ bl NoParameter__12CPASAnimParmFv -/* 8018E524 0018B484 80 9C 00 04 */ lwz r4, 4(r28) -/* 8018E528 0018B488 38 61 00 BC */ addi r3, r1, 0xbc -/* 8018E52C 0018B48C 48 15 4A 59 */ bl FromEnum__12CPASAnimParmFi -/* 8018E530 0018B490 38 61 00 8C */ addi r3, r1, 0x8c -/* 8018E534 0018B494 38 01 00 84 */ addi r0, r1, 0x84 -/* 8018E538 0018B498 90 61 00 08 */ stw r3, 8(r1) -/* 8018E53C 0018B49C 38 61 03 78 */ addi r3, r1, 0x378 -/* 8018E540 0018B4A0 38 A1 00 BC */ addi r5, r1, 0xbc -/* 8018E544 0018B4A4 38 C1 00 B4 */ addi r6, r1, 0xb4 -/* 8018E548 0018B4A8 90 01 00 0C */ stw r0, 0xc(r1) -/* 8018E54C 0018B4AC 38 E1 00 AC */ addi r7, r1, 0xac -/* 8018E550 0018B4B0 39 01 00 A4 */ addi r8, r1, 0xa4 -/* 8018E554 0018B4B4 39 21 00 9C */ addi r9, r1, 0x9c -/* 8018E558 0018B4B8 39 41 00 94 */ addi r10, r1, 0x94 -/* 8018E55C 0018B4BC 38 80 00 14 */ li r4, 0x14 -/* 8018E560 0018B4C0 4B EE ED 65 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm -/* 8018E564 0018B4C4 80 BE 09 00 */ lwz r5, 0x900(r30) -/* 8018E568 0018B4C8 7F A3 EB 78 */ mr r3, r29 -/* 8018E56C 0018B4CC 38 81 03 78 */ addi r4, r1, 0x378 -/* 8018E570 0018B4D0 4B FA BD 8D */ bl LoopBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16 -/* 8018E574 0018B4D4 34 A1 03 7C */ addic. r5, r1, 0x37c -/* 8018E578 0018B4D8 41 82 00 58 */ beq lbl_8018E5D0 -/* 8018E57C 0018B4DC 80 C5 00 00 */ lwz r6, 0(r5) -/* 8018E580 0018B4E0 38 60 00 00 */ li r3, 0 -/* 8018E584 0018B4E4 2C 06 00 00 */ cmpwi r6, 0 -/* 8018E588 0018B4E8 40 81 00 40 */ ble lbl_8018E5C8 -/* 8018E58C 0018B4EC 2C 06 00 08 */ cmpwi r6, 8 -/* 8018E590 0018B4F0 38 86 FF F8 */ addi r4, r6, -8 -/* 8018E594 0018B4F4 40 81 00 20 */ ble lbl_8018E5B4 -/* 8018E598 0018B4F8 38 04 00 07 */ addi r0, r4, 7 -/* 8018E59C 0018B4FC 54 00 E8 FE */ srwi r0, r0, 3 -/* 8018E5A0 0018B500 7C 09 03 A6 */ mtctr r0 -/* 8018E5A4 0018B504 2C 04 00 00 */ cmpwi r4, 0 -/* 8018E5A8 0018B508 40 81 00 0C */ ble lbl_8018E5B4 -lbl_8018E5AC: -/* 8018E5AC 0018B50C 38 63 00 08 */ addi r3, r3, 8 -/* 8018E5B0 0018B510 42 00 FF FC */ bdnz lbl_8018E5AC -lbl_8018E5B4: -/* 8018E5B4 0018B514 7C 03 30 50 */ subf r0, r3, r6 -/* 8018E5B8 0018B518 7C 09 03 A6 */ mtctr r0 -/* 8018E5BC 0018B51C 7C 03 30 00 */ cmpw r3, r6 -/* 8018E5C0 0018B520 40 80 00 08 */ bge lbl_8018E5C8 -lbl_8018E5C4: -/* 8018E5C4 0018B524 42 00 00 00 */ bdnz lbl_8018E5C4 -lbl_8018E5C8: -/* 8018E5C8 0018B528 38 00 00 00 */ li r0, 0 -/* 8018E5CC 0018B52C 90 05 00 00 */ stw r0, 0(r5) -lbl_8018E5D0: -/* 8018E5D0 0018B530 80 9D 00 00 */ lwz r4, 0(r29) -/* 8018E5D4 0018B534 38 61 00 7C */ addi r3, r1, 0x7c -/* 8018E5D8 0018B538 4B F1 E1 0D */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" -/* 8018E5DC 0018B53C 83 23 00 04 */ lwz r25, 4(r3) -/* 8018E5E0 0018B540 28 19 00 00 */ cmplwi r25, 0 -/* 8018E5E4 0018B544 41 82 00 D4 */ beq lbl_8018E6B8 -/* 8018E5E8 0018B548 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8018E5EC 0018B54C 7F C3 F3 78 */ mr r3, r30 -/* 8018E5F0 0018B550 7F 24 CB 78 */ mr r4, r25 -/* 8018E5F4 0018B554 38 A1 00 14 */ addi r5, r1, 0x14 -/* 8018E5F8 0018B558 B0 01 00 14 */ sth r0, 0x14(r1) -/* 8018E5FC 0018B55C 38 C0 00 28 */ li r6, 0x28 -/* 8018E600 0018B560 4B EB 58 D1 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage -/* 8018E604 0018B564 88 1C 00 18 */ lbz r0, 0x18(r28) -/* 8018E608 0018B568 38 60 00 00 */ li r3, 0 -/* 8018E60C 0018B56C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 8018E610 0018B570 7F C3 F3 78 */ mr r3, r30 -/* 8018E614 0018B574 98 1C 00 18 */ stb r0, 0x18(r28) -/* 8018E618 0018B578 38 81 00 10 */ addi r4, r1, 0x10 -/* 8018E61C 0018B57C A0 1C 00 08 */ lhz r0, 8(r28) -/* 8018E620 0018B580 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8018E624 0018B584 4B EB DF 81 */ bl GetObjectById__13CStateManagerCF9TUniqueId -/* 8018E628 0018B588 7C 64 1B 78 */ mr r4, r3 -/* 8018E62C 0018B58C 38 61 00 24 */ addi r3, r1, 0x24 -/* 8018E630 0018B590 4B F2 16 61 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" -/* 8018E634 0018B594 80 63 00 04 */ lwz r3, 4(r3) -/* 8018E638 0018B598 28 03 00 00 */ cmplwi r3, 0 -/* 8018E63C 0018B59C 41 82 00 38 */ beq lbl_8018E674 -/* 8018E640 0018B5A0 C0 82 A4 80 */ lfs f4, lbl_805AC1A0@sda21(r2) -/* 8018E644 0018B5A4 C0 03 00 38 */ lfs f0, 0x38(r3) -/* 8018E648 0018B5A8 C0 63 00 48 */ lfs f3, 0x48(r3) -/* 8018E64C 0018B5AC C0 43 00 58 */ lfs f2, 0x58(r3) -/* 8018E650 0018B5B0 EC 24 00 32 */ fmuls f1, f4, f0 -/* 8018E654 0018B5B4 EC 64 00 F2 */ fmuls f3, f4, f3 -/* 8018E658 0018B5B8 C0 02 A4 84 */ lfs f0, lbl_805AC1A4@sda21(r2) -/* 8018E65C 0018B5BC EC 44 00 B2 */ fmuls f2, f4, f2 -/* 8018E660 0018B5C0 D0 3C 00 0C */ stfs f1, 0xc(r28) -/* 8018E664 0018B5C4 D0 7C 00 10 */ stfs f3, 0x10(r28) -/* 8018E668 0018B5C8 D0 5C 00 14 */ stfs f2, 0x14(r28) -/* 8018E66C 0018B5CC D0 1C 00 14 */ stfs f0, 0x14(r28) -/* 8018E670 0018B5D0 48 00 00 2C */ b lbl_8018E69C -lbl_8018E674: -/* 8018E674 0018B5D4 C0 62 A4 88 */ lfs f3, lbl_805AC1A8@sda21(r2) -/* 8018E678 0018B5D8 C0 19 00 38 */ lfs f0, 0x38(r25) -/* 8018E67C 0018B5DC C0 59 00 48 */ lfs f2, 0x48(r25) -/* 8018E680 0018B5E0 C0 39 00 58 */ lfs f1, 0x58(r25) -/* 8018E684 0018B5E4 EC 03 00 32 */ fmuls f0, f3, f0 -/* 8018E688 0018B5E8 EC 43 00 B2 */ fmuls f2, f3, f2 -/* 8018E68C 0018B5EC EC 23 00 72 */ fmuls f1, f3, f1 -/* 8018E690 0018B5F0 D0 1C 00 0C */ stfs f0, 0xc(r28) -/* 8018E694 0018B5F4 D0 5C 00 10 */ stfs f2, 0x10(r28) -/* 8018E698 0018B5F8 D0 3C 00 14 */ stfs f1, 0x14(r28) -lbl_8018E69C: -/* 8018E69C 0018B5FC 4B E8 CE 99 */ bl Identity__10CAxisAngleFv -/* 8018E6A0 0018B600 80 83 00 00 */ lwz r4, 0(r3) -/* 8018E6A4 0018B604 80 03 00 04 */ lwz r0, 4(r3) -/* 8018E6A8 0018B608 90 99 01 08 */ stw r4, 0x108(r25) -/* 8018E6AC 0018B60C 90 19 01 0C */ stw r0, 0x10c(r25) -/* 8018E6B0 0018B610 80 03 00 08 */ lwz r0, 8(r3) -/* 8018E6B4 0018B614 90 19 01 10 */ stw r0, 0x110(r25) -lbl_8018E6B8: -/* 8018E6B8 0018B618 34 A1 03 C4 */ addic. r5, r1, 0x3c4 -/* 8018E6BC 0018B61C 41 82 01 B0 */ beq lbl_8018E86C -/* 8018E6C0 0018B620 80 C5 00 00 */ lwz r6, 0(r5) -/* 8018E6C4 0018B624 38 60 00 00 */ li r3, 0 -/* 8018E6C8 0018B628 2C 06 00 00 */ cmpwi r6, 0 -/* 8018E6CC 0018B62C 40 81 00 40 */ ble lbl_8018E70C -/* 8018E6D0 0018B630 2C 06 00 08 */ cmpwi r6, 8 -/* 8018E6D4 0018B634 38 86 FF F8 */ addi r4, r6, -8 -/* 8018E6D8 0018B638 40 81 00 20 */ ble lbl_8018E6F8 -/* 8018E6DC 0018B63C 38 04 00 07 */ addi r0, r4, 7 -/* 8018E6E0 0018B640 54 00 E8 FE */ srwi r0, r0, 3 -/* 8018E6E4 0018B644 7C 09 03 A6 */ mtctr r0 -/* 8018E6E8 0018B648 2C 04 00 00 */ cmpwi r4, 0 -/* 8018E6EC 0018B64C 40 81 00 0C */ ble lbl_8018E6F8 -lbl_8018E6F0: -/* 8018E6F0 0018B650 38 63 00 08 */ addi r3, r3, 8 -/* 8018E6F4 0018B654 42 00 FF FC */ bdnz lbl_8018E6F0 -lbl_8018E6F8: -/* 8018E6F8 0018B658 7C 03 30 50 */ subf r0, r3, r6 -/* 8018E6FC 0018B65C 7C 09 03 A6 */ mtctr r0 -/* 8018E700 0018B660 7C 03 30 00 */ cmpw r3, r6 -/* 8018E704 0018B664 40 80 00 08 */ bge lbl_8018E70C -lbl_8018E708: -/* 8018E708 0018B668 42 00 00 00 */ bdnz lbl_8018E708 -lbl_8018E70C: -/* 8018E70C 0018B66C 38 00 00 00 */ li r0, 0 -/* 8018E710 0018B670 90 05 00 00 */ stw r0, 0(r5) -/* 8018E714 0018B674 48 00 01 58 */ b lbl_8018E86C -/* 8018E718 0018B678 7F 83 E3 78 */ mr r3, r28 -/* 8018E71C 0018B67C 7F A4 EB 78 */ mr r4, r29 -/* 8018E720 0018B680 48 00 03 95 */ bl SetLaunchVelocity__11CBSWallHangFR15CBodyController -/* 8018E724 0018B684 88 1D 03 00 */ lbz r0, 0x300(r29) -/* 8018E728 0018B688 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8018E72C 0018B68C 41 82 00 F4 */ beq lbl_8018E820 -/* 8018E730 0018B690 38 00 00 08 */ li r0, 8 -/* 8018E734 0018B694 38 61 00 3C */ addi r3, r1, 0x3c -/* 8018E738 0018B698 90 1C 00 04 */ stw r0, 4(r28) -/* 8018E73C 0018B69C 48 15 49 41 */ bl NoParameter__12CPASAnimParmFv -/* 8018E740 0018B6A0 38 61 00 44 */ addi r3, r1, 0x44 -/* 8018E744 0018B6A4 48 15 49 39 */ bl NoParameter__12CPASAnimParmFv -/* 8018E748 0018B6A8 38 61 00 4C */ addi r3, r1, 0x4c -/* 8018E74C 0018B6AC 48 15 49 31 */ bl NoParameter__12CPASAnimParmFv -/* 8018E750 0018B6B0 38 61 00 54 */ addi r3, r1, 0x54 -/* 8018E754 0018B6B4 48 15 49 29 */ bl NoParameter__12CPASAnimParmFv -/* 8018E758 0018B6B8 38 61 00 5C */ addi r3, r1, 0x5c -/* 8018E75C 0018B6BC 48 15 49 21 */ bl NoParameter__12CPASAnimParmFv -/* 8018E760 0018B6C0 38 61 00 64 */ addi r3, r1, 0x64 -/* 8018E764 0018B6C4 48 15 49 19 */ bl NoParameter__12CPASAnimParmFv -/* 8018E768 0018B6C8 38 61 00 6C */ addi r3, r1, 0x6c -/* 8018E76C 0018B6CC 48 15 49 11 */ bl NoParameter__12CPASAnimParmFv -/* 8018E770 0018B6D0 80 9C 00 04 */ lwz r4, 4(r28) -/* 8018E774 0018B6D4 38 61 00 74 */ addi r3, r1, 0x74 -/* 8018E778 0018B6D8 48 15 48 0D */ bl FromEnum__12CPASAnimParmFi -/* 8018E77C 0018B6DC 38 61 00 44 */ addi r3, r1, 0x44 -/* 8018E780 0018B6E0 38 01 00 3C */ addi r0, r1, 0x3c -/* 8018E784 0018B6E4 90 61 00 08 */ stw r3, 8(r1) -/* 8018E788 0018B6E8 38 61 03 30 */ addi r3, r1, 0x330 -/* 8018E78C 0018B6EC 38 A1 00 74 */ addi r5, r1, 0x74 -/* 8018E790 0018B6F0 38 C1 00 6C */ addi r6, r1, 0x6c -/* 8018E794 0018B6F4 90 01 00 0C */ stw r0, 0xc(r1) -/* 8018E798 0018B6F8 38 E1 00 64 */ addi r7, r1, 0x64 -/* 8018E79C 0018B6FC 39 01 00 5C */ addi r8, r1, 0x5c -/* 8018E7A0 0018B700 39 21 00 54 */ addi r9, r1, 0x54 -/* 8018E7A4 0018B704 39 41 00 4C */ addi r10, r1, 0x4c -/* 8018E7A8 0018B708 38 80 00 14 */ li r4, 0x14 -/* 8018E7AC 0018B70C 4B EE EB 19 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm -/* 8018E7B0 0018B710 80 BE 09 00 */ lwz r5, 0x900(r30) -/* 8018E7B4 0018B714 7F A3 EB 78 */ mr r3, r29 -/* 8018E7B8 0018B718 38 81 03 30 */ addi r4, r1, 0x330 -/* 8018E7BC 0018B71C 4B FA BB 41 */ bl LoopBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16 -/* 8018E7C0 0018B720 34 A1 03 34 */ addic. r5, r1, 0x334 -/* 8018E7C4 0018B724 41 82 00 A8 */ beq lbl_8018E86C -/* 8018E7C8 0018B728 80 C5 00 00 */ lwz r6, 0(r5) -/* 8018E7CC 0018B72C 38 60 00 00 */ li r3, 0 -/* 8018E7D0 0018B730 2C 06 00 00 */ cmpwi r6, 0 -/* 8018E7D4 0018B734 40 81 00 40 */ ble lbl_8018E814 -/* 8018E7D8 0018B738 2C 06 00 08 */ cmpwi r6, 8 -/* 8018E7DC 0018B73C 38 86 FF F8 */ addi r4, r6, -8 -/* 8018E7E0 0018B740 40 81 00 20 */ ble lbl_8018E800 -/* 8018E7E4 0018B744 38 04 00 07 */ addi r0, r4, 7 -/* 8018E7E8 0018B748 54 00 E8 FE */ srwi r0, r0, 3 -/* 8018E7EC 0018B74C 7C 09 03 A6 */ mtctr r0 -/* 8018E7F0 0018B750 2C 04 00 00 */ cmpwi r4, 0 -/* 8018E7F4 0018B754 40 81 00 0C */ ble lbl_8018E800 -lbl_8018E7F8: -/* 8018E7F8 0018B758 38 63 00 08 */ addi r3, r3, 8 -/* 8018E7FC 0018B75C 42 00 FF FC */ bdnz lbl_8018E7F8 -lbl_8018E800: -/* 8018E800 0018B760 7C 03 30 50 */ subf r0, r3, r6 -/* 8018E804 0018B764 7C 09 03 A6 */ mtctr r0 -/* 8018E808 0018B768 7C 03 30 00 */ cmpw r3, r6 -/* 8018E80C 0018B76C 40 80 00 08 */ bge lbl_8018E814 -lbl_8018E810: -/* 8018E810 0018B770 42 00 00 00 */ bdnz lbl_8018E810 -lbl_8018E814: -/* 8018E814 0018B774 38 00 00 00 */ li r0, 0 -/* 8018E818 0018B778 90 05 00 00 */ stw r0, 0(r5) -/* 8018E81C 0018B77C 48 00 00 50 */ b lbl_8018E86C -lbl_8018E820: -/* 8018E820 0018B780 7F 83 E3 78 */ mr r3, r28 -/* 8018E824 0018B784 7F A4 EB 78 */ mr r4, r29 -/* 8018E828 0018B788 7F C5 F3 78 */ mr r5, r30 -/* 8018E82C 0018B78C 4B FF ED A5 */ bl CheckForLand__11CBSWallHangFR15CBodyControllerR13CStateManager -/* 8018E830 0018B790 48 00 00 3C */ b lbl_8018E86C -/* 8018E834 0018B794 7F 83 E3 78 */ mr r3, r28 -/* 8018E838 0018B798 7F A4 EB 78 */ mr r4, r29 -/* 8018E83C 0018B79C 48 00 02 79 */ bl SetLaunchVelocity__11CBSWallHangFR15CBodyController -/* 8018E840 0018B7A0 7F 83 E3 78 */ mr r3, r28 -/* 8018E844 0018B7A4 7F A4 EB 78 */ mr r4, r29 -/* 8018E848 0018B7A8 7F C5 F3 78 */ mr r5, r30 -/* 8018E84C 0018B7AC 4B FF ED 85 */ bl CheckForLand__11CBSWallHangFR15CBodyControllerR13CStateManager -/* 8018E850 0018B7B0 48 00 00 1C */ b lbl_8018E86C -/* 8018E854 0018B7B4 88 1D 03 00 */ lbz r0, 0x300(r29) -/* 8018E858 0018B7B8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8018E85C 0018B7BC 41 82 00 10 */ beq lbl_8018E86C -/* 8018E860 0018B7C0 38 00 FF FF */ li r0, -1 -/* 8018E864 0018B7C4 3B E0 00 05 */ li r31, 5 -/* 8018E868 0018B7C8 90 1C 00 04 */ stw r0, 4(r28) -lbl_8018E86C: -/* 8018E86C 0018B7CC 7F E3 FB 78 */ mr r3, r31 -/* 8018E870 0018B7D0 E3 E1 06 08 */ psq_l f31, 1544(r1), 0, qr0 -/* 8018E874 0018B7D4 CB E1 06 00 */ lfd f31, 0x600(r1) -/* 8018E878 0018B7D8 E3 C1 05 F8 */ psq_l f30, 1528(r1), 0, qr0 -/* 8018E87C 0018B7DC CB C1 05 F0 */ lfd f30, 0x5f0(r1) -/* 8018E880 0018B7E0 E3 A1 05 E8 */ psq_l f29, 1512(r1), 0, qr0 -/* 8018E884 0018B7E4 CB A1 05 E0 */ lfd f29, 0x5e0(r1) -/* 8018E888 0018B7E8 BB 21 05 C4 */ lmw r25, 0x5c4(r1) -/* 8018E88C 0018B7EC 80 01 06 14 */ lwz r0, 0x614(r1) -/* 8018E890 0018B7F0 7C 08 03 A6 */ mtlr r0 -/* 8018E894 0018B7F4 38 21 06 10 */ addi r1, r1, 0x610 -/* 8018E898 0018B7F8 4E 80 00 20 */ blr - -.global Start__11CBSWallHangFR15CBodyControllerR13CStateManager -Start__11CBSWallHangFR15CBodyControllerR13CStateManager: -/* 8018E89C 0018B7FC 94 21 FF 50 */ stwu r1, -0xb0(r1) -/* 8018E8A0 0018B800 7C 08 02 A6 */ mflr r0 -/* 8018E8A4 0018B804 90 01 00 B4 */ stw r0, 0xb4(r1) -/* 8018E8A8 0018B808 93 E1 00 AC */ stw r31, 0xac(r1) -/* 8018E8AC 0018B80C 7C BF 2B 78 */ mr r31, r5 -/* 8018E8B0 0018B810 93 C1 00 A8 */ stw r30, 0xa8(r1) -/* 8018E8B4 0018B814 7C 9E 23 78 */ mr r30, r4 -/* 8018E8B8 0018B818 38 80 00 15 */ li r4, 0x15 -/* 8018E8BC 0018B81C 93 A1 00 A4 */ stw r29, 0xa4(r1) -/* 8018E8C0 0018B820 7C 7D 1B 78 */ mr r29, r3 -/* 8018E8C4 0018B824 38 7E 00 04 */ addi r3, r30, 4 -/* 8018E8C8 0018B828 4B FA 2B 89 */ bl GetCmd__16CBodyStateCmdMgrF13EBodyStateCmd -/* 8018E8CC 0018B82C 38 80 00 00 */ li r4, 0 -/* 8018E8D0 0018B830 90 9D 00 04 */ stw r4, 4(r29) -/* 8018E8D4 0018B834 A0 03 00 08 */ lhz r0, 8(r3) -/* 8018E8D8 0018B838 38 61 00 10 */ addi r3, r1, 0x10 -/* 8018E8DC 0018B83C B0 1D 00 08 */ sth r0, 8(r29) -/* 8018E8E0 0018B840 88 1D 00 18 */ lbz r0, 0x18(r29) -/* 8018E8E4 0018B844 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 -/* 8018E8E8 0018B848 98 1D 00 18 */ stb r0, 0x18(r29) -/* 8018E8EC 0018B84C 48 15 47 91 */ bl NoParameter__12CPASAnimParmFv -/* 8018E8F0 0018B850 38 61 00 18 */ addi r3, r1, 0x18 -/* 8018E8F4 0018B854 48 15 47 89 */ bl NoParameter__12CPASAnimParmFv -/* 8018E8F8 0018B858 38 61 00 20 */ addi r3, r1, 0x20 -/* 8018E8FC 0018B85C 48 15 47 81 */ bl NoParameter__12CPASAnimParmFv -/* 8018E900 0018B860 38 61 00 28 */ addi r3, r1, 0x28 -/* 8018E904 0018B864 48 15 47 79 */ bl NoParameter__12CPASAnimParmFv -/* 8018E908 0018B868 38 61 00 30 */ addi r3, r1, 0x30 -/* 8018E90C 0018B86C 48 15 47 71 */ bl NoParameter__12CPASAnimParmFv -/* 8018E910 0018B870 38 61 00 38 */ addi r3, r1, 0x38 -/* 8018E914 0018B874 48 15 47 69 */ bl NoParameter__12CPASAnimParmFv -/* 8018E918 0018B878 38 61 00 40 */ addi r3, r1, 0x40 -/* 8018E91C 0018B87C 48 15 47 61 */ bl NoParameter__12CPASAnimParmFv -/* 8018E920 0018B880 80 9D 00 04 */ lwz r4, 4(r29) -/* 8018E924 0018B884 38 61 00 48 */ addi r3, r1, 0x48 -/* 8018E928 0018B888 48 15 46 5D */ bl FromEnum__12CPASAnimParmFi -/* 8018E92C 0018B88C 38 61 00 18 */ addi r3, r1, 0x18 -/* 8018E930 0018B890 38 01 00 10 */ addi r0, r1, 0x10 -/* 8018E934 0018B894 90 61 00 08 */ stw r3, 8(r1) -/* 8018E938 0018B898 38 61 00 50 */ addi r3, r1, 0x50 -/* 8018E93C 0018B89C 38 A1 00 48 */ addi r5, r1, 0x48 -/* 8018E940 0018B8A0 38 C1 00 40 */ addi r6, r1, 0x40 -/* 8018E944 0018B8A4 90 01 00 0C */ stw r0, 0xc(r1) -/* 8018E948 0018B8A8 38 E1 00 38 */ addi r7, r1, 0x38 -/* 8018E94C 0018B8AC 39 01 00 30 */ addi r8, r1, 0x30 -/* 8018E950 0018B8B0 39 21 00 28 */ addi r9, r1, 0x28 -/* 8018E954 0018B8B4 39 41 00 20 */ addi r10, r1, 0x20 -/* 8018E958 0018B8B8 38 80 00 14 */ li r4, 0x14 -/* 8018E95C 0018B8BC 4B EE E9 69 */ bl __ct__16CPASAnimParmDataFiRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParmRC12CPASAnimParm -/* 8018E960 0018B8C0 80 BF 09 00 */ lwz r5, 0x900(r31) -/* 8018E964 0018B8C4 7F C3 F3 78 */ mr r3, r30 -/* 8018E968 0018B8C8 38 81 00 50 */ addi r4, r1, 0x50 -/* 8018E96C 0018B8CC 4B FA BA 3D */ bl PlayBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16 -/* 8018E970 0018B8D0 34 A1 00 54 */ addic. r5, r1, 0x54 -/* 8018E974 0018B8D4 41 82 00 58 */ beq lbl_8018E9CC -/* 8018E978 0018B8D8 80 C5 00 00 */ lwz r6, 0(r5) -/* 8018E97C 0018B8DC 38 60 00 00 */ li r3, 0 -/* 8018E980 0018B8E0 2C 06 00 00 */ cmpwi r6, 0 -/* 8018E984 0018B8E4 40 81 00 40 */ ble lbl_8018E9C4 -/* 8018E988 0018B8E8 2C 06 00 08 */ cmpwi r6, 8 -/* 8018E98C 0018B8EC 38 86 FF F8 */ addi r4, r6, -8 -/* 8018E990 0018B8F0 40 81 00 20 */ ble lbl_8018E9B0 -/* 8018E994 0018B8F4 38 04 00 07 */ addi r0, r4, 7 -/* 8018E998 0018B8F8 54 00 E8 FE */ srwi r0, r0, 3 -/* 8018E99C 0018B8FC 7C 09 03 A6 */ mtctr r0 -/* 8018E9A0 0018B900 2C 04 00 00 */ cmpwi r4, 0 -/* 8018E9A4 0018B904 40 81 00 0C */ ble lbl_8018E9B0 -lbl_8018E9A8: -/* 8018E9A8 0018B908 38 63 00 08 */ addi r3, r3, 8 -/* 8018E9AC 0018B90C 42 00 FF FC */ bdnz lbl_8018E9A8 -lbl_8018E9B0: -/* 8018E9B0 0018B910 7C 03 30 50 */ subf r0, r3, r6 -/* 8018E9B4 0018B914 7C 09 03 A6 */ mtctr r0 -/* 8018E9B8 0018B918 7C 03 30 00 */ cmpw r3, r6 -/* 8018E9BC 0018B91C 40 80 00 08 */ bge lbl_8018E9C4 -lbl_8018E9C0: -/* 8018E9C0 0018B920 42 00 00 00 */ bdnz lbl_8018E9C0 -lbl_8018E9C4: -/* 8018E9C4 0018B924 38 00 00 00 */ li r0, 0 -/* 8018E9C8 0018B928 90 05 00 00 */ stw r0, 0(r5) -lbl_8018E9CC: -/* 8018E9CC 0018B92C 80 01 00 B4 */ lwz r0, 0xb4(r1) -/* 8018E9D0 0018B930 83 E1 00 AC */ lwz r31, 0xac(r1) -/* 8018E9D4 0018B934 83 C1 00 A8 */ lwz r30, 0xa8(r1) -/* 8018E9D8 0018B938 83 A1 00 A4 */ lwz r29, 0xa4(r1) -/* 8018E9DC 0018B93C 7C 08 03 A6 */ mtlr r0 -/* 8018E9E0 0018B940 38 21 00 B0 */ addi r1, r1, 0xb0 -/* 8018E9E4 0018B944 4E 80 00 20 */ blr - -.global ApplyGravity__11CBSWallHangCFv -ApplyGravity__11CBSWallHangCFv: -/* 8018E9E8 0018B948 80 03 00 04 */ lwz r0, 4(r3) -/* 8018E9EC 0018B94C 38 60 00 00 */ li r3, 0 -/* 8018E9F0 0018B950 2C 00 00 04 */ cmpwi r0, 4 -/* 8018E9F4 0018B954 4D 82 00 20 */ beqlr -/* 8018E9F8 0018B958 2C 00 00 03 */ cmpwi r0, 3 -/* 8018E9FC 0018B95C 4D 82 00 20 */ beqlr -/* 8018EA00 0018B960 2C 00 00 06 */ cmpwi r0, 6 -/* 8018EA04 0018B964 4D 82 00 20 */ beqlr -/* 8018EA08 0018B968 38 60 00 01 */ li r3, 1 -/* 8018EA0C 0018B96C 4E 80 00 20 */ blr - -.global CanShoot__11CBSWallHangCFv -CanShoot__11CBSWallHangCFv: -/* 8018EA10 0018B970 80 03 00 04 */ lwz r0, 4(r3) -/* 8018EA14 0018B974 20 00 00 04 */ subfic r0, r0, 4 -/* 8018EA18 0018B978 7C 00 00 34 */ cntlzw r0, r0 -/* 8018EA1C 0018B97C 54 03 D9 7E */ srwi r3, r0, 5 -/* 8018EA20 0018B980 4E 80 00 20 */ blr - -.global ApplyHeadTracking__11CBSWallHangCFv -ApplyHeadTracking__11CBSWallHangCFv: -/* 8018EA24 0018B984 80 03 00 04 */ lwz r0, 4(r3) -/* 8018EA28 0018B988 38 60 00 00 */ li r3, 0 -/* 8018EA2C 0018B98C 2C 00 00 04 */ cmpwi r0, 4 -/* 8018EA30 0018B990 41 82 00 0C */ beq lbl_8018EA3C -/* 8018EA34 0018B994 2C 00 00 05 */ cmpwi r0, 5 -/* 8018EA38 0018B998 4C 82 00 20 */ bnelr -lbl_8018EA3C: -/* 8018EA3C 0018B99C 38 60 00 01 */ li r3, 1 -/* 8018EA40 0018B9A0 4E 80 00 20 */ blr - -.global ApplyAnimationDeltas__11CBSWallHangCFv -ApplyAnimationDeltas__11CBSWallHangCFv: -/* 8018EA44 0018B9A4 80 03 00 04 */ lwz r0, 4(r3) -/* 8018EA48 0018B9A8 38 60 00 00 */ li r3, 0 -/* 8018EA4C 0018B9AC 2C 00 00 00 */ cmpwi r0, 0 -/* 8018EA50 0018B9B0 41 82 00 2C */ beq lbl_8018EA7C -/* 8018EA54 0018B9B4 2C 00 00 03 */ cmpwi r0, 3 -/* 8018EA58 0018B9B8 41 82 00 24 */ beq lbl_8018EA7C -/* 8018EA5C 0018B9BC 2C 00 00 04 */ cmpwi r0, 4 -/* 8018EA60 0018B9C0 41 82 00 1C */ beq lbl_8018EA7C -/* 8018EA64 0018B9C4 2C 00 00 05 */ cmpwi r0, 5 -/* 8018EA68 0018B9C8 41 82 00 14 */ beq lbl_8018EA7C -/* 8018EA6C 0018B9CC 2C 00 00 06 */ cmpwi r0, 6 -/* 8018EA70 0018B9D0 41 82 00 0C */ beq lbl_8018EA7C -/* 8018EA74 0018B9D4 2C 00 00 09 */ cmpwi r0, 9 -/* 8018EA78 0018B9D8 4C 82 00 20 */ bnelr -lbl_8018EA7C: -/* 8018EA7C 0018B9DC 38 60 00 01 */ li r3, 1 -/* 8018EA80 0018B9E0 4E 80 00 20 */ blr - -.global IsInAir__11CBSWallHangCFRC15CBodyController -IsInAir__11CBSWallHangCFRC15CBodyController: -/* 8018EA84 0018B9E4 80 03 00 04 */ lwz r0, 4(r3) -/* 8018EA88 0018B9E8 38 60 00 00 */ li r3, 0 -/* 8018EA8C 0018B9EC 2C 00 00 01 */ cmpwi r0, 1 -/* 8018EA90 0018B9F0 41 82 00 1C */ beq lbl_8018EAAC -/* 8018EA94 0018B9F4 2C 00 00 02 */ cmpwi r0, 2 -/* 8018EA98 0018B9F8 41 82 00 14 */ beq lbl_8018EAAC -/* 8018EA9C 0018B9FC 2C 00 00 07 */ cmpwi r0, 7 -/* 8018EAA0 0018BA00 41 82 00 0C */ beq lbl_8018EAAC -/* 8018EAA4 0018BA04 2C 00 00 08 */ cmpwi r0, 8 -/* 8018EAA8 0018BA08 4C 82 00 20 */ bnelr -lbl_8018EAAC: -/* 8018EAAC 0018BA0C 38 60 00 01 */ li r3, 1 -/* 8018EAB0 0018BA10 4E 80 00 20 */ blr - -.global SetLaunchVelocity__11CBSWallHangFR15CBodyController -SetLaunchVelocity__11CBSWallHangFR15CBodyController: -/* 8018EAB4 0018BA14 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8018EAB8 0018BA18 7C 08 02 A6 */ mflr r0 -/* 8018EABC 0018BA1C 90 01 00 24 */ stw r0, 0x24(r1) -/* 8018EAC0 0018BA20 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8018EAC4 0018BA24 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8018EAC8 0018BA28 7C 7E 1B 78 */ mr r30, r3 -/* 8018EACC 0018BA2C 88 03 00 18 */ lbz r0, 0x18(r3) -/* 8018EAD0 0018BA30 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8018EAD4 0018BA34 40 82 00 60 */ bne lbl_8018EB34 -/* 8018EAD8 0018BA38 80 84 00 00 */ lwz r4, 0(r4) -/* 8018EADC 0018BA3C 38 61 00 08 */ addi r3, r1, 8 -/* 8018EAE0 0018BA40 4B F1 DC 05 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" -/* 8018EAE4 0018BA44 83 E3 00 04 */ lwz r31, 4(r3) -/* 8018EAE8 0018BA48 28 1F 00 00 */ cmplwi r31, 0 -/* 8018EAEC 0018BA4C 41 82 00 38 */ beq lbl_8018EB24 -/* 8018EAF0 0018BA50 7F E3 FB 78 */ mr r3, r31 -/* 8018EAF4 0018BA54 38 9E 00 0C */ addi r4, r30, 0xc -/* 8018EAF8 0018BA58 4B F8 C1 A9 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f -/* 8018EAFC 0018BA5C C0 7F 00 E8 */ lfs f3, 0xe8(r31) -/* 8018EB00 0018BA60 C0 1E 00 0C */ lfs f0, 0xc(r30) -/* 8018EB04 0018BA64 C0 5E 00 10 */ lfs f2, 0x10(r30) -/* 8018EB08 0018BA68 C0 3E 00 14 */ lfs f1, 0x14(r30) -/* 8018EB0C 0018BA6C EC 03 00 32 */ fmuls f0, f3, f0 -/* 8018EB10 0018BA70 EC 43 00 B2 */ fmuls f2, f3, f2 -/* 8018EB14 0018BA74 EC 23 00 72 */ fmuls f1, f3, f1 -/* 8018EB18 0018BA78 D0 1F 00 FC */ stfs f0, 0xfc(r31) -/* 8018EB1C 0018BA7C D0 5F 01 00 */ stfs f2, 0x100(r31) -/* 8018EB20 0018BA80 D0 3F 01 04 */ stfs f1, 0x104(r31) -lbl_8018EB24: -/* 8018EB24 0018BA84 88 1E 00 18 */ lbz r0, 0x18(r30) -/* 8018EB28 0018BA88 38 60 00 01 */ li r3, 1 -/* 8018EB2C 0018BA8C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 8018EB30 0018BA90 98 1E 00 18 */ stb r0, 0x18(r30) -lbl_8018EB34: -/* 8018EB34 0018BA94 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8018EB38 0018BA98 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8018EB3C 0018BA9C 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8018EB40 0018BAA0 7C 08 03 A6 */ mtlr r0 -/* 8018EB44 0018BAA4 38 21 00 20 */ addi r1, r1, 0x20 -/* 8018EB48 0018BAA8 4E 80 00 20 */ blr - -.global __ct__11CBSWallHangFv -__ct__11CBSWallHangFv: -/* 8018EB4C 0018BAAC 3C C0 80 3E */ lis r6, lbl_803E1318@ha -/* 8018EB50 0018BAB0 3C A0 80 3E */ lis r5, lbl_803E43A0@ha -/* 8018EB54 0018BAB4 38 06 13 18 */ addi r0, r6, lbl_803E1318@l -/* 8018EB58 0018BAB8 3C 80 80 5A */ lis r4, skZero3f@ha -/* 8018EB5C 0018BABC 90 03 00 00 */ stw r0, 0(r3) -/* 8018EB60 0018BAC0 38 C5 43 A0 */ addi r6, r5, lbl_803E43A0@l -/* 8018EB64 0018BAC4 38 A4 66 A0 */ addi r5, r4, skZero3f@l -/* 8018EB68 0018BAC8 38 00 FF FF */ li r0, -1 -/* 8018EB6C 0018BACC 90 C3 00 00 */ stw r6, 0(r3) -/* 8018EB70 0018BAD0 38 80 00 00 */ li r4, 0 -/* 8018EB74 0018BAD4 90 03 00 04 */ stw r0, 4(r3) -/* 8018EB78 0018BAD8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) -/* 8018EB7C 0018BADC B0 03 00 08 */ sth r0, 8(r3) -/* 8018EB80 0018BAE0 C0 05 00 00 */ lfs f0, 0(r5) -/* 8018EB84 0018BAE4 D0 03 00 0C */ stfs f0, 0xc(r3) -/* 8018EB88 0018BAE8 C0 05 00 04 */ lfs f0, 4(r5) -/* 8018EB8C 0018BAEC D0 03 00 10 */ stfs f0, 0x10(r3) -/* 8018EB90 0018BAF0 C0 05 00 08 */ lfs f0, 8(r5) -/* 8018EB94 0018BAF4 D0 03 00 14 */ stfs f0, 0x14(r3) -/* 8018EB98 0018BAF8 88 03 00 18 */ lbz r0, 0x18(r3) -/* 8018EB9C 0018BAFC 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 -/* 8018EBA0 0018BB00 98 03 00 18 */ stb r0, 0x18(r3) -/* 8018EBA4 0018BB04 88 03 00 18 */ lbz r0, 0x18(r3) -/* 8018EBA8 0018BB08 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 -/* 8018EBAC 0018BB0C 98 03 00 18 */ stb r0, 0x18(r3) -/* 8018EBB0 0018BB10 4E 80 00 20 */ blr - -.global __dt__14CScriptEMPulseFv -__dt__14CScriptEMPulseFv: -/* 8018EBB4 0018BB14 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8018EBB8 0018BB18 7C 08 02 A6 */ mflr r0 -/* 8018EBBC 0018BB1C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018EBC0 0018BB20 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8018EBC4 0018BB24 7C 9F 23 78 */ mr r31, r4 -/* 8018EBC8 0018BB28 93 C1 00 08 */ stw r30, 8(r1) -/* 8018EBCC 0018BB2C 7C 7E 1B 79 */ or. r30, r3, r3 -/* 8018EBD0 0018BB30 41 82 00 70 */ beq lbl_8018EC40 -/* 8018EBD4 0018BB34 3C 60 80 3E */ lis r3, lbl_803E4400@ha -/* 8018EBD8 0018BB38 34 1E 01 14 */ addic. r0, r30, 0x114 -/* 8018EBDC 0018BB3C 38 03 44 00 */ addi r0, r3, lbl_803E4400@l -/* 8018EBE0 0018BB40 90 1E 00 00 */ stw r0, 0(r30) -/* 8018EBE4 0018BB44 41 82 00 24 */ beq lbl_8018EC08 -/* 8018EBE8 0018BB48 80 7E 01 14 */ lwz r3, 0x114(r30) -/* 8018EBEC 0018BB4C 28 03 00 00 */ cmplwi r3, 0 -/* 8018EBF0 0018BB50 41 82 00 18 */ beq lbl_8018EC08 -/* 8018EBF4 0018BB54 81 83 00 00 */ lwz r12, 0(r3) -/* 8018EBF8 0018BB58 38 80 00 01 */ li r4, 1 -/* 8018EBFC 0018BB5C 81 8C 00 08 */ lwz r12, 8(r12) -/* 8018EC00 0018BB60 7D 89 03 A6 */ mtctr r12 -/* 8018EC04 0018BB64 4E 80 04 21 */ bctrl -lbl_8018EC08: -/* 8018EC08 0018BB68 34 1E 01 08 */ addic. r0, r30, 0x108 -/* 8018EC0C 0018BB6C 41 82 00 18 */ beq lbl_8018EC24 -/* 8018EC10 0018BB70 34 1E 01 08 */ addic. r0, r30, 0x108 -/* 8018EC14 0018BB74 41 82 00 10 */ beq lbl_8018EC24 -/* 8018EC18 0018BB78 38 7E 01 08 */ addi r3, r30, 0x108 -/* 8018EC1C 0018BB7C 38 80 00 00 */ li r4, 0 -/* 8018EC20 0018BB80 48 1B 22 21 */ bl __dt__6CTokenFv -lbl_8018EC24: -/* 8018EC24 0018BB84 7F C3 F3 78 */ mr r3, r30 -/* 8018EC28 0018BB88 38 80 00 00 */ li r4, 0 -/* 8018EC2C 0018BB8C 4B EC 6A C5 */ bl __dt__6CActorFv -/* 8018EC30 0018BB90 7F E0 07 35 */ extsh. r0, r31 -/* 8018EC34 0018BB94 40 81 00 0C */ ble lbl_8018EC40 -/* 8018EC38 0018BB98 7F C3 F3 78 */ mr r3, r30 -/* 8018EC3C 0018BB9C 48 18 6C F5 */ bl Free__7CMemoryFPCv -lbl_8018EC40: -/* 8018EC40 0018BBA0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8018EC44 0018BBA4 7F C3 F3 78 */ mr r3, r30 -/* 8018EC48 0018BBA8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8018EC4C 0018BBAC 83 C1 00 08 */ lwz r30, 8(r1) -/* 8018EC50 0018BBB0 7C 08 03 A6 */ mtlr r0 -/* 8018EC54 0018BBB4 38 21 00 10 */ addi r1, r1, 0x10 -/* 8018EC58 0018BBB8 4E 80 00 20 */ blr - -.global AddToRenderer__14CScriptEMPulseCFRC14CFrustumPlanesRC13CStateManager -AddToRenderer__14CScriptEMPulseCFRC14CFrustumPlanesRC13CStateManager: -/* 8018EC5C 0018BBBC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8018EC60 0018BBC0 7C 08 02 A6 */ mflr r0 -/* 8018EC64 0018BBC4 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018EC68 0018BBC8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8018EC6C 0018BBCC 7C 7F 1B 78 */ mr r31, r3 -/* 8018EC70 0018BBD0 4B EC 5E C9 */ bl AddToRenderer__6CActorCFRC14CFrustumPlanesRC13CStateManager -/* 8018EC74 0018BBD4 88 1F 00 30 */ lbz r0, 0x30(r31) -/* 8018EC78 0018BBD8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8018EC7C 0018BBDC 41 82 00 1C */ beq lbl_8018EC98 -/* 8018EC80 0018BBE0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) -/* 8018EC84 0018BBE4 80 9F 01 14 */ lwz r4, 0x114(r31) -/* 8018EC88 0018BBE8 81 83 00 00 */ lwz r12, 0(r3) -/* 8018EC8C 0018BBEC 81 8C 00 34 */ lwz r12, 0x34(r12) -/* 8018EC90 0018BBF0 7D 89 03 A6 */ mtctr r12 -/* 8018EC94 0018BBF4 4E 80 04 21 */ bctrl -lbl_8018EC98: -/* 8018EC98 0018BBF8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8018EC9C 0018BBFC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8018ECA0 0018BC00 7C 08 03 A6 */ mtlr r0 -/* 8018ECA4 0018BC04 38 21 00 10 */ addi r1, r1, 0x10 -/* 8018ECA8 0018BC08 4E 80 00 20 */ blr - -.global Touch__14CScriptEMPulseFR6CActorR13CStateManager -Touch__14CScriptEMPulseFR6CActorR13CStateManager: -/* 8018ECAC 0018BC0C 94 21 FF 90 */ stwu r1, -0x70(r1) -/* 8018ECB0 0018BC10 7C 08 02 A6 */ mflr r0 -/* 8018ECB4 0018BC14 90 01 00 74 */ stw r0, 0x74(r1) -/* 8018ECB8 0018BC18 DB E1 00 60 */ stfd f31, 0x60(r1) -/* 8018ECBC 0018BC1C F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 -/* 8018ECC0 0018BC20 DB C1 00 50 */ stfd f30, 0x50(r1) -/* 8018ECC4 0018BC24 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 -/* 8018ECC8 0018BC28 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 8018ECCC 0018BC2C 93 C1 00 48 */ stw r30, 0x48(r1) -/* 8018ECD0 0018BC30 93 A1 00 44 */ stw r29, 0x44(r1) -/* 8018ECD4 0018BC34 88 03 00 30 */ lbz r0, 0x30(r3) -/* 8018ECD8 0018BC38 7C 7D 1B 78 */ mr r29, r3 -/* 8018ECDC 0018BC3C 7C BE 2B 78 */ mr r30, r5 -/* 8018ECE0 0018BC40 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8018ECE4 0018BC44 41 82 01 00 */ beq lbl_8018EDE4 -/* 8018ECE8 0018BC48 38 61 00 18 */ addi r3, r1, 0x18 -/* 8018ECEC 0018BC4C 4B F1 D7 15 */ bl "__ct__20TCastToPtr<7CPlayer>FR7CEntity" -/* 8018ECF0 0018BC50 83 E3 00 04 */ lwz r31, 4(r3) -/* 8018ECF4 0018BC54 28 1F 00 00 */ cmplwi r31, 0 -/* 8018ECF8 0018BC58 41 82 00 EC */ beq lbl_8018EDE4 -/* 8018ECFC 0018BC5C C0 BD 00 60 */ lfs f5, 0x60(r29) -/* 8018ED00 0018BC60 38 61 00 2C */ addi r3, r1, 0x2c -/* 8018ED04 0018BC64 C0 1F 00 60 */ lfs f0, 0x60(r31) -/* 8018ED08 0018BC68 C0 9D 00 50 */ lfs f4, 0x50(r29) -/* 8018ED0C 0018BC6C C0 5F 00 50 */ lfs f2, 0x50(r31) -/* 8018ED10 0018BC70 EC 25 00 28 */ fsubs f1, f5, f0 -/* 8018ED14 0018BC74 C0 1D 00 40 */ lfs f0, 0x40(r29) -/* 8018ED18 0018BC78 C0 7F 00 40 */ lfs f3, 0x40(r31) -/* 8018ED1C 0018BC7C EC 44 10 28 */ fsubs f2, f4, f2 -/* 8018ED20 0018BC80 D0 01 00 20 */ stfs f0, 0x20(r1) -/* 8018ED24 0018BC84 EC 00 18 28 */ fsubs f0, f0, f3 -/* 8018ED28 0018BC88 D0 81 00 24 */ stfs f4, 0x24(r1) -/* 8018ED2C 0018BC8C D0 A1 00 28 */ stfs f5, 0x28(r1) -/* 8018ED30 0018BC90 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 8018ED34 0018BC94 D0 41 00 30 */ stfs f2, 0x30(r1) -/* 8018ED38 0018BC98 D0 21 00 34 */ stfs f1, 0x34(r1) -/* 8018ED3C 0018BC9C 48 18 5B 7D */ bl Magnitude__9CVector3fCFv -/* 8018ED40 0018BCA0 C0 1D 00 EC */ lfs f0, 0xec(r29) -/* 8018ED44 0018BCA4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8018ED48 0018BCA8 40 80 00 9C */ bge lbl_8018EDE4 -/* 8018ED4C 0018BCAC EC 01 00 24 */ fdivs f0, f1, f0 -/* 8018ED50 0018BCB0 C0 62 A4 90 */ lfs f3, lbl_805AC1B0@sda21(r2) -/* 8018ED54 0018BCB4 C0 9D 00 F8 */ lfs f4, 0xf8(r29) -/* 8018ED58 0018BCB8 C0 5D 00 FC */ lfs f2, 0xfc(r29) -/* 8018ED5C 0018BCBC C0 BD 01 00 */ lfs f5, 0x100(r29) -/* 8018ED60 0018BCC0 C0 3D 01 04 */ lfs f1, 0x104(r29) -/* 8018ED64 0018BCC4 EC 63 00 28 */ fsubs f3, f3, f0 -/* 8018ED68 0018BCC8 C0 1F 07 40 */ lfs f0, 0x740(r31) -/* 8018ED6C 0018BCCC EC 42 20 28 */ fsubs f2, f2, f4 -/* 8018ED70 0018BCD0 EC 21 28 28 */ fsubs f1, f1, f5 -/* 8018ED74 0018BCD4 EF E3 20 BA */ fmadds f31, f3, f2, f4 -/* 8018ED78 0018BCD8 EF C3 28 7A */ fmadds f30, f3, f1, f5 -/* 8018ED7C 0018BCDC FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 8018ED80 0018BCE0 40 81 00 3C */ ble lbl_8018EDBC -/* 8018ED84 0018BCE4 FC 20 F8 90 */ fmr f1, f31 -/* 8018ED88 0018BCE8 C0 42 80 F8 */ lfs f2, lbl_805A9E18@sda21(r2) -/* 8018ED8C 0018BCEC C0 62 80 FC */ lfs f3, lbl_805A9E1C@sda21(r2) -/* 8018ED90 0018BCF0 7F E3 FB 78 */ mr r3, r31 -/* 8018ED94 0018BCF4 4B E8 42 D9 */ bl SetHudDisable__7CPlayerFfff -/* 8018ED98 0018BCF8 80 BE 08 4C */ lwz r5, 0x84c(r30) -/* 8018ED9C 0018BCFC 7F E3 FB 78 */ mr r3, r31 -/* 8018EDA0 0018BD00 7F C6 F3 78 */ mr r6, r30 -/* 8018EDA4 0018BD04 38 81 00 14 */ addi r4, r1, 0x14 -/* 8018EDA8 0018BD08 A0 05 03 10 */ lhz r0, 0x310(r5) -/* 8018EDAC 0018BD0C 38 A0 00 08 */ li r5, 8 -/* 8018EDB0 0018BD10 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8018EDB4 0018BD14 B0 01 00 14 */ sth r0, 0x14(r1) -/* 8018EDB8 0018BD18 4B FE C4 9D */ bl SetOrbitRequestForTarget__7CPlayerF9TUniqueId19EPlayerOrbitRequestR13CStateManager -lbl_8018EDBC: -/* 8018EDBC 0018BD1C A0 1D 00 08 */ lhz r0, 8(r29) -/* 8018EDC0 0018BD20 FC 20 F0 90 */ fmr f1, f30 -/* 8018EDC4 0018BD24 FC 40 F8 90 */ fmr f2, f31 -/* 8018EDC8 0018BD28 38 81 00 0C */ addi r4, r1, 0xc -/* 8018EDCC 0018BD2C B0 01 00 0C */ sth r0, 0xc(r1) -/* 8018EDD0 0018BD30 80 7E 08 B8 */ lwz r3, 0x8b8(r30) -/* 8018EDD4 0018BD34 B0 01 00 08 */ sth r0, 8(r1) -/* 8018EDD8 0018BD38 80 63 00 00 */ lwz r3, 0(r3) -/* 8018EDDC 0018BD3C 38 63 01 88 */ addi r3, r3, 0x188 -/* 8018EDE0 0018BD40 48 03 1D 59 */ bl AddSource__19CStaticInterferenceF9TUniqueId -lbl_8018EDE4: -/* 8018EDE4 0018BD44 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 -/* 8018EDE8 0018BD48 CB E1 00 60 */ lfd f31, 0x60(r1) -/* 8018EDEC 0018BD4C E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 -/* 8018EDF0 0018BD50 CB C1 00 50 */ lfd f30, 0x50(r1) -/* 8018EDF4 0018BD54 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 8018EDF8 0018BD58 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 8018EDFC 0018BD5C 80 01 00 74 */ lwz r0, 0x74(r1) -/* 8018EE00 0018BD60 83 A1 00 44 */ lwz r29, 0x44(r1) -/* 8018EE04 0018BD64 7C 08 03 A6 */ mtlr r0 -/* 8018EE08 0018BD68 38 21 00 70 */ addi r1, r1, 0x70 -/* 8018EE0C 0018BD6C 4E 80 00 20 */ blr - -.global CalculateRenderBounds__14CScriptEMPulseFv -CalculateRenderBounds__14CScriptEMPulseFv: -/* 8018EE10 0018BD70 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8018EE14 0018BD74 7C 08 02 A6 */ mflr r0 -/* 8018EE18 0018BD78 90 01 00 34 */ stw r0, 0x34(r1) -/* 8018EE1C 0018BD7C 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8018EE20 0018BD80 7C 7F 1B 78 */ mr r31, r3 -/* 8018EE24 0018BD84 38 61 00 08 */ addi r3, r1, 8 -/* 8018EE28 0018BD88 7F E4 FB 78 */ mr r4, r31 -/* 8018EE2C 0018BD8C 48 00 00 B9 */ bl CalculateBoundingBox__14CScriptEMPulseCFv -/* 8018EE30 0018BD90 80 61 00 08 */ lwz r3, 8(r1) -/* 8018EE34 0018BD94 80 01 00 0C */ lwz r0, 0xc(r1) -/* 8018EE38 0018BD98 90 7F 00 9C */ stw r3, 0x9c(r31) -/* 8018EE3C 0018BD9C 90 1F 00 A0 */ stw r0, 0xa0(r31) -/* 8018EE40 0018BDA0 80 01 00 10 */ lwz r0, 0x10(r1) -/* 8018EE44 0018BDA4 90 1F 00 A4 */ stw r0, 0xa4(r31) -/* 8018EE48 0018BDA8 80 61 00 14 */ lwz r3, 0x14(r1) -/* 8018EE4C 0018BDAC 80 01 00 18 */ lwz r0, 0x18(r1) -/* 8018EE50 0018BDB0 90 7F 00 A8 */ stw r3, 0xa8(r31) -/* 8018EE54 0018BDB4 90 1F 00 AC */ stw r0, 0xac(r31) -/* 8018EE58 0018BDB8 80 01 00 1C */ lwz r0, 0x1c(r1) -/* 8018EE5C 0018BDBC 90 1F 00 B0 */ stw r0, 0xb0(r31) -/* 8018EE60 0018BDC0 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8018EE64 0018BDC4 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8018EE68 0018BDC8 7C 08 03 A6 */ mtlr r0 -/* 8018EE6C 0018BDCC 38 21 00 30 */ addi r1, r1, 0x30 -/* 8018EE70 0018BDD0 4E 80 00 20 */ blr - -.global GetTouchBounds__14CScriptEMPulseCFv -GetTouchBounds__14CScriptEMPulseCFv: -/* 8018EE74 0018BDD4 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8018EE78 0018BDD8 7C 08 02 A6 */ mflr r0 -/* 8018EE7C 0018BDDC 90 01 00 34 */ stw r0, 0x34(r1) -/* 8018EE80 0018BDE0 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 8018EE84 0018BDE4 7C 7F 1B 78 */ mr r31, r3 -/* 8018EE88 0018BDE8 38 61 00 08 */ addi r3, r1, 8 -/* 8018EE8C 0018BDEC 48 00 00 59 */ bl CalculateBoundingBox__14CScriptEMPulseCFv -/* 8018EE90 0018BDF0 38 00 00 01 */ li r0, 1 -/* 8018EE94 0018BDF4 28 1F 00 00 */ cmplwi r31, 0 -/* 8018EE98 0018BDF8 98 1F 00 18 */ stb r0, 0x18(r31) -/* 8018EE9C 0018BDFC 41 82 00 34 */ beq lbl_8018EED0 -/* 8018EEA0 0018BE00 C0 01 00 08 */ lfs f0, 8(r1) -/* 8018EEA4 0018BE04 D0 1F 00 00 */ stfs f0, 0(r31) -/* 8018EEA8 0018BE08 C0 01 00 0C */ lfs f0, 0xc(r1) -/* 8018EEAC 0018BE0C D0 1F 00 04 */ stfs f0, 4(r31) -/* 8018EEB0 0018BE10 C0 01 00 10 */ lfs f0, 0x10(r1) -/* 8018EEB4 0018BE14 D0 1F 00 08 */ stfs f0, 8(r31) -/* 8018EEB8 0018BE18 C0 01 00 14 */ lfs f0, 0x14(r1) -/* 8018EEBC 0018BE1C D0 1F 00 0C */ stfs f0, 0xc(r31) -/* 8018EEC0 0018BE20 C0 01 00 18 */ lfs f0, 0x18(r1) -/* 8018EEC4 0018BE24 D0 1F 00 10 */ stfs f0, 0x10(r31) -/* 8018EEC8 0018BE28 C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 8018EECC 0018BE2C D0 1F 00 14 */ stfs f0, 0x14(r31) -lbl_8018EED0: -/* 8018EED0 0018BE30 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8018EED4 0018BE34 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 8018EED8 0018BE38 7C 08 03 A6 */ mtlr r0 -/* 8018EEDC 0018BE3C 38 21 00 30 */ addi r1, r1, 0x30 -/* 8018EEE0 0018BE40 4E 80 00 20 */ blr - -.global CalculateBoundingBox__14CScriptEMPulseCFv -CalculateBoundingBox__14CScriptEMPulseCFv: -/* 8018EEE4 0018BE44 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8018EEE8 0018BE48 7C 08 02 A6 */ mflr r0 -/* 8018EEEC 0018BE4C 90 01 00 24 */ stw r0, 0x24(r1) -/* 8018EEF0 0018BE50 38 A1 00 08 */ addi r5, r1, 8 -/* 8018EEF4 0018BE54 C0 E4 00 F0 */ lfs f7, 0xf0(r4) -/* 8018EEF8 0018BE58 C0 C4 00 60 */ lfs f6, 0x60(r4) -/* 8018EEFC 0018BE5C C0 24 00 40 */ lfs f1, 0x40(r4) -/* 8018EF00 0018BE60 C0 A4 00 50 */ lfs f5, 0x50(r4) -/* 8018EF04 0018BE64 EC 06 38 2A */ fadds f0, f6, f7 -/* 8018EF08 0018BE68 EC 81 38 2A */ fadds f4, f1, f7 -/* 8018EF0C 0018BE6C 38 81 00 14 */ addi r4, r1, 0x14 -/* 8018EF10 0018BE70 EC 41 38 28 */ fsubs f2, f1, f7 -/* 8018EF14 0018BE74 EC 65 38 2A */ fadds f3, f5, f7 -/* 8018EF18 0018BE78 D0 01 00 10 */ stfs f0, 0x10(r1) -/* 8018EF1C 0018BE7C EC 25 38 28 */ fsubs f1, f5, f7 -/* 8018EF20 0018BE80 EC 06 38 28 */ fsubs f0, f6, f7 -/* 8018EF24 0018BE84 D0 81 00 08 */ stfs f4, 8(r1) -/* 8018EF28 0018BE88 D0 61 00 0C */ stfs f3, 0xc(r1) -/* 8018EF2C 0018BE8C D0 41 00 14 */ stfs f2, 0x14(r1) -/* 8018EF30 0018BE90 D0 21 00 18 */ stfs f1, 0x18(r1) -/* 8018EF34 0018BE94 D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 8018EF38 0018BE98 48 1A 95 D1 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f -/* 8018EF3C 0018BE9C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8018EF40 0018BEA0 7C 08 03 A6 */ mtlr r0 -/* 8018EF44 0018BEA4 38 21 00 20 */ addi r1, r1, 0x20 -/* 8018EF48 0018BEA8 4E 80 00 20 */ blr - -.global Think__14CScriptEMPulseFfR13CStateManager -Think__14CScriptEMPulseFfR13CStateManager: -/* 8018EF4C 0018BEAC 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8018EF50 0018BEB0 7C 08 02 A6 */ mflr r0 -/* 8018EF54 0018BEB4 90 01 00 34 */ stw r0, 0x34(r1) -/* 8018EF58 0018BEB8 DB E1 00 20 */ stfd f31, 0x20(r1) -/* 8018EF5C 0018BEBC F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 -/* 8018EF60 0018BEC0 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8018EF64 0018BEC4 88 03 00 30 */ lbz r0, 0x30(r3) -/* 8018EF68 0018BEC8 FF E0 08 90 */ fmr f31, f1 -/* 8018EF6C 0018BECC 7C 7F 1B 78 */ mr r31, r3 -/* 8018EF70 0018BED0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f -/* 8018EF74 0018BED4 41 82 00 68 */ beq lbl_8018EFDC -/* 8018EF78 0018BED8 C0 5F 00 EC */ lfs f2, 0xec(r31) -/* 8018EF7C 0018BEDC C0 1F 00 F4 */ lfs f0, 0xf4(r31) -/* 8018EF80 0018BEE0 C0 3F 00 E8 */ lfs f1, 0xe8(r31) -/* 8018EF84 0018BEE4 EC 42 00 28 */ fsubs f2, f2, f0 -/* 8018EF88 0018BEE8 C0 1F 00 F0 */ lfs f0, 0xf0(r31) -/* 8018EF8C 0018BEEC EC 22 08 24 */ fdivs f1, f2, f1 -/* 8018EF90 0018BEF0 EC 01 07 FA */ fmadds f0, f1, f31, f0 -/* 8018EF94 0018BEF4 D0 1F 00 F0 */ stfs f0, 0xf0(r31) -/* 8018EF98 0018BEF8 C0 3F 00 F0 */ lfs f1, 0xf0(r31) -/* 8018EF9C 0018BEFC C0 1F 00 EC */ lfs f0, 0xec(r31) -/* 8018EFA0 0018BF00 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8018EFA4 0018BF04 4C 41 13 82 */ cror 2, 1, 2 -/* 8018EFA8 0018BF08 40 82 00 1C */ bne lbl_8018EFC4 -/* 8018EFAC 0018BF0C A0 1F 00 08 */ lhz r0, 8(r31) -/* 8018EFB0 0018BF10 7C 83 23 78 */ mr r3, r4 -/* 8018EFB4 0018BF14 38 81 00 0C */ addi r4, r1, 0xc -/* 8018EFB8 0018BF18 B0 01 00 08 */ sth r0, 8(r1) -/* 8018EFBC 0018BF1C B0 01 00 0C */ sth r0, 0xc(r1) -/* 8018EFC0 0018BF20 4B EB D2 AD */ bl FreeScriptObject__13CStateManagerF9TUniqueId -lbl_8018EFC4: -/* 8018EFC4 0018BF24 80 7F 01 14 */ lwz r3, 0x114(r31) -/* 8018EFC8 0018BF28 FC 20 F8 90 */ fmr f1, f31 -/* 8018EFCC 0018BF2C 81 83 00 00 */ lwz r12, 0(r3) -/* 8018EFD0 0018BF30 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 8018EFD4 0018BF34 7D 89 03 A6 */ mtctr r12 -/* 8018EFD8 0018BF38 4E 80 04 21 */ bctrl -lbl_8018EFDC: -/* 8018EFDC 0018BF3C E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 -/* 8018EFE0 0018BF40 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8018EFE4 0018BF44 CB E1 00 20 */ lfd f31, 0x20(r1) -/* 8018EFE8 0018BF48 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8018EFEC 0018BF4C 7C 08 03 A6 */ mtlr r0 -/* 8018EFF0 0018BF50 38 21 00 30 */ addi r1, r1, 0x30 -/* 8018EFF4 0018BF54 4E 80 00 20 */ blr - -.global Accept__14CScriptEMPulseFR8IVisitor -Accept__14CScriptEMPulseFR8IVisitor: -/* 8018EFF8 0018BF58 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8018EFFC 0018BF5C 7C 08 02 A6 */ mflr r0 -/* 8018F000 0018BF60 90 01 00 14 */ stw r0, 0x14(r1) -/* 8018F004 0018BF64 7C 60 1B 78 */ mr r0, r3 -/* 8018F008 0018BF68 7C 83 23 78 */ mr r3, r4 -/* 8018F00C 0018BF6C 81 84 00 00 */ lwz r12, 0(r4) -/* 8018F010 0018BF70 7C 04 03 78 */ mr r4, r0 -/* 8018F014 0018BF74 81 8C 00 08 */ lwz r12, 8(r12) -/* 8018F018 0018BF78 7D 89 03 A6 */ mtctr r12 -/* 8018F01C 0018BF7C 4E 80 04 21 */ bctrl -/* 8018F020 0018BF80 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8018F024 0018BF84 7C 08 03 A6 */ mtlr r0 -/* 8018F028 0018BF88 38 21 00 10 */ addi r1, r1, 0x10 -/* 8018F02C 0018BF8C 4E 80 00 20 */ blr - -.global AcceptScriptMsg__14CScriptEMPulseF20EScriptObjectMessage9TUniqueIdR13CStateManager -AcceptScriptMsg__14CScriptEMPulseF20EScriptObjectMessage9TUniqueIdR13CStateManager: -/* 8018F030 0018BF90 94 21 FF 90 */ stwu r1, -0x70(r1) -/* 8018F034 0018BF94 7C 08 02 A6 */ mflr r0 -/* 8018F038 0018BF98 90 01 00 74 */ stw r0, 0x74(r1) -/* 8018F03C 0018BF9C 93 E1 00 6C */ stw r31, 0x6c(r1) -/* 8018F040 0018BFA0 7C 9F 23 78 */ mr r31, r4 -/* 8018F044 0018BFA4 93 C1 00 68 */ stw r30, 0x68(r1) -/* 8018F048 0018BFA8 7C DE 33 78 */ mr r30, r6 -/* 8018F04C 0018BFAC 93 A1 00 64 */ stw r29, 0x64(r1) -/* 8018F050 0018BFB0 7C 7D 1B 78 */ mr r29, r3 -/* 8018F054 0018BFB4 93 81 00 60 */ stw r28, 0x60(r1) -/* 8018F058 0018BFB8 A0 05 00 00 */ lhz r0, 0(r5) -/* 8018F05C 0018BFBC 38 A1 00 10 */ addi r5, r1, 0x10 -/* 8018F060 0018BFC0 B0 01 00 10 */ sth r0, 0x10(r1) -/* 8018F064 0018BFC4 4B EC 45 B1 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager -/* 8018F068 0018BFC8 2C 1F 00 01 */ cmpwi r31, 1 -/* 8018F06C 0018BFCC 41 82 00 08 */ beq lbl_8018F074 -/* 8018F070 0018BFD0 48 00 01 1C */ b lbl_8018F18C -lbl_8018F074: -/* 8018F074 0018BFD4 3C 60 80 3D */ lis r3, lbl_803D0940@ha -/* 8018F078 0018BFD8 3B 80 00 00 */ li r28, 0 -/* 8018F07C 0018BFDC 38 83 09 40 */ addi r4, r3, lbl_803D0940@l -/* 8018F080 0018BFE0 38 A0 00 00 */ li r5, 0 -/* 8018F084 0018BFE4 38 60 03 40 */ li r3, 0x340 -/* 8018F088 0018BFE8 48 18 67 E5 */ bl __nw__FUlPCcPCc -/* 8018F08C 0018BFEC 7C 7F 1B 79 */ or. r31, r3, r3 -/* 8018F090 0018BFF0 41 82 00 2C */ beq lbl_8018F0BC -/* 8018F094 0018BFF4 38 61 00 14 */ addi r3, r1, 0x14 -/* 8018F098 0018BFF8 38 9D 01 08 */ addi r4, r29, 0x108 -/* 8018F09C 0018BFFC 48 1B 1E 0D */ bl __ct__6CTokenFRC6CToken -/* 8018F0A0 0018C000 7F E3 FB 78 */ mr r3, r31 -/* 8018F0A4 0018C004 38 81 00 14 */ addi r4, r1, 0x14 -/* 8018F0A8 0018C008 3B 80 00 01 */ li r28, 1 -/* 8018F0AC 0018C00C 38 A0 00 00 */ li r5, 0 -/* 8018F0B0 0018C010 38 C0 00 01 */ li r6, 1 -/* 8018F0B4 0018C014 48 19 03 2D */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" -/* 8018F0B8 0018C018 7C 7F 1B 78 */ mr r31, r3 -lbl_8018F0BC: -/* 8018F0BC 0018C01C 80 7D 01 14 */ lwz r3, 0x114(r29) -/* 8018F0C0 0018C020 28 03 00 00 */ cmplwi r3, 0 -/* 8018F0C4 0018C024 41 82 00 18 */ beq lbl_8018F0DC -/* 8018F0C8 0018C028 81 83 00 00 */ lwz r12, 0(r3) -/* 8018F0CC 0018C02C 38 80 00 01 */ li r4, 1 -/* 8018F0D0 0018C030 81 8C 00 08 */ lwz r12, 8(r12) -/* 8018F0D4 0018C034 7D 89 03 A6 */ mtctr r12 -/* 8018F0D8 0018C038 4E 80 04 21 */ bctrl -lbl_8018F0DC: -/* 8018F0DC 0018C03C 7F 80 07 75 */ extsb. r0, r28 -/* 8018F0E0 0018C040 93 FD 01 14 */ stw r31, 0x114(r29) -/* 8018F0E4 0018C044 41 82 00 10 */ beq lbl_8018F0F4 -/* 8018F0E8 0018C048 38 61 00 14 */ addi r3, r1, 0x14 -/* 8018F0EC 0018C04C 38 80 00 00 */ li r4, 0 -/* 8018F0F0 0018C050 48 1B 1D 51 */ bl __dt__6CTokenFv -lbl_8018F0F4: -/* 8018F0F4 0018C054 83 FD 01 14 */ lwz r31, 0x114(r29) -/* 8018F0F8 0018C058 38 61 00 28 */ addi r3, r1, 0x28 -/* 8018F0FC 0018C05C 38 9D 00 34 */ addi r4, r29, 0x34 -/* 8018F100 0018C060 48 18 3B 41 */ bl GetRotation__12CTransform4fCFv -/* 8018F104 0018C064 7F E3 FB 78 */ mr r3, r31 -/* 8018F108 0018C068 38 81 00 28 */ addi r4, r1, 0x28 -/* 8018F10C 0018C06C 81 9F 00 00 */ lwz r12, 0(r31) -/* 8018F110 0018C070 81 8C 00 14 */ lwz r12, 0x14(r12) -/* 8018F114 0018C074 7D 89 03 A6 */ mtctr r12 -/* 8018F118 0018C078 4E 80 04 21 */ bctrl -/* 8018F11C 0018C07C C0 5D 00 60 */ lfs f2, 0x60(r29) -/* 8018F120 0018C080 38 81 00 1C */ addi r4, r1, 0x1c -/* 8018F124 0018C084 C0 3D 00 50 */ lfs f1, 0x50(r29) -/* 8018F128 0018C088 C0 1D 00 40 */ lfs f0, 0x40(r29) -/* 8018F12C 0018C08C D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 8018F130 0018C090 D0 21 00 20 */ stfs f1, 0x20(r1) -/* 8018F134 0018C094 D0 41 00 24 */ stfs f2, 0x24(r1) -/* 8018F138 0018C098 80 7D 01 14 */ lwz r3, 0x114(r29) -/* 8018F13C 0018C09C 81 83 00 00 */ lwz r12, 0(r3) -/* 8018F140 0018C0A0 81 8C 00 20 */ lwz r12, 0x20(r12) -/* 8018F144 0018C0A4 7D 89 03 A6 */ mtctr r12 -/* 8018F148 0018C0A8 4E 80 04 21 */ bctrl -/* 8018F14C 0018C0AC 80 7D 01 14 */ lwz r3, 0x114(r29) -/* 8018F150 0018C0B0 38 80 00 01 */ li r4, 1 -/* 8018F154 0018C0B4 81 83 00 00 */ lwz r12, 0(r3) -/* 8018F158 0018C0B8 81 8C 00 2C */ lwz r12, 0x2c(r12) -/* 8018F15C 0018C0BC 7D 89 03 A6 */ mtctr r12 -/* 8018F160 0018C0C0 4E 80 04 21 */ bctrl -/* 8018F164 0018C0C4 A0 1D 00 08 */ lhz r0, 8(r29) -/* 8018F168 0018C0C8 38 81 00 0C */ addi r4, r1, 0xc -/* 8018F16C 0018C0CC B0 01 00 0C */ sth r0, 0xc(r1) -/* 8018F170 0018C0D0 80 7E 08 B8 */ lwz r3, 0x8b8(r30) -/* 8018F174 0018C0D4 B0 01 00 08 */ sth r0, 8(r1) -/* 8018F178 0018C0D8 80 63 00 00 */ lwz r3, 0(r3) -/* 8018F17C 0018C0DC C0 3D 01 00 */ lfs f1, 0x100(r29) -/* 8018F180 0018C0E0 C0 5D 00 F8 */ lfs f2, 0xf8(r29) -/* 8018F184 0018C0E4 38 63 01 88 */ addi r3, r3, 0x188 -/* 8018F188 0018C0E8 48 03 19 B1 */ bl AddSource__19CStaticInterferenceF9TUniqueId -lbl_8018F18C: -/* 8018F18C 0018C0EC 80 01 00 74 */ lwz r0, 0x74(r1) -/* 8018F190 0018C0F0 83 E1 00 6C */ lwz r31, 0x6c(r1) -/* 8018F194 0018C0F4 83 C1 00 68 */ lwz r30, 0x68(r1) -/* 8018F198 0018C0F8 83 A1 00 64 */ lwz r29, 0x64(r1) -/* 8018F19C 0018C0FC 83 81 00 60 */ lwz r28, 0x60(r1) -/* 8018F1A0 0018C100 7C 08 03 A6 */ mtlr r0 -/* 8018F1A4 0018C104 38 21 00 70 */ addi r1, r1, 0x70 -/* 8018F1A8 0018C108 4E 80 00 20 */ blr - -.global "__ct__14CScriptEMPulseF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fbfffffUi" -"__ct__14CScriptEMPulseF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fbfffffUi": -/* 8018F1AC 0018C10C 94 21 FE 50 */ stwu r1, -0x1b0(r1) -/* 8018F1B0 0018C110 7C 08 02 A6 */ mflr r0 -/* 8018F1B4 0018C114 90 01 01 B4 */ stw r0, 0x1b4(r1) -/* 8018F1B8 0018C118 39 61 01 B0 */ addi r11, r1, 0x1b0 -/* 8018F1BC 0018C11C 48 1F A8 21 */ bl sub_803899dc -/* 8018F1C0 0018C120 BF 21 01 5C */ stmw r25, 0x15c(r1) -/* 8018F1C4 0018C124 FF 20 08 90 */ fmr f25, f1 -/* 8018F1C8 0018C128 7C 7F 1B 78 */ mr r31, r3 -/* 8018F1CC 0018C12C FF 40 10 90 */ fmr f26, f2 -/* 8018F1D0 0018C130 7C 99 23 78 */ mr r25, r4 -/* 8018F1D4 0018C134 FF 60 18 90 */ fmr f27, f3 -/* 8018F1D8 0018C138 7C BA 2B 78 */ mr r26, r5 -/* 8018F1DC 0018C13C FF 80 20 90 */ fmr f28, f4 -/* 8018F1E0 0018C140 7C DB 33 78 */ mr r27, r6 -/* 8018F1E4 0018C144 FF A0 28 90 */ fmr f29, f5 -/* 8018F1E8 0018C148 7C FC 3B 78 */ mr r28, r7 -/* 8018F1EC 0018C14C FF C0 30 90 */ fmr f30, f6 -/* 8018F1F0 0018C150 7D 1D 43 78 */ mr r29, r8 -/* 8018F1F4 0018C154 FF E0 38 90 */ fmr f31, f7 -/* 8018F1F8 0018C158 7D 3E 4B 78 */ mr r30, r9 -/* 8018F1FC 0018C15C 38 61 01 00 */ addi r3, r1, 0x100 -/* 8018F200 0018C160 4B EA B5 A5 */ bl CModelDataNull__10CModelDataFv -/* 8018F204 0018C164 38 61 00 98 */ addi r3, r1, 0x98 -/* 8018F208 0018C168 4B E8 BC 31 */ bl None__16CActorParametersFv -/* 8018F20C 0018C16C 38 61 00 30 */ addi r3, r1, 0x30 -/* 8018F210 0018C170 38 81 00 98 */ addi r4, r1, 0x98 -/* 8018F214 0018C174 38 A0 00 01 */ li r5, 1 -/* 8018F218 0018C178 4B F7 75 F5 */ bl sub_8010680c -/* 8018F21C 0018C17C A0 8D A3 8C */ lhz r4, lbl_805A8F4C@sda21(r13) -/* 8018F220 0018C180 38 00 00 00 */ li r0, 0 -/* 8018F224 0018C184 80 AD 8E F0 */ lwz r5, lbl_805A7AB0@sda21(r13) -/* 8018F228 0018C188 38 60 00 00 */ li r3, 0 -/* 8018F22C 0018C18C B0 81 00 10 */ sth r4, 0x10(r1) -/* 8018F230 0018C190 38 80 00 01 */ li r4, 1 -/* 8018F234 0018C194 90 01 00 2C */ stw r0, 0x2c(r1) -/* 8018F238 0018C198 90 01 00 28 */ stw r0, 0x28(r1) -/* 8018F23C 0018C19C 48 1F AC B9 */ bl __shl2i -/* 8018F240 0018C1A0 80 A1 00 28 */ lwz r5, 0x28(r1) -/* 8018F244 0018C1A4 39 61 00 30 */ addi r11, r1, 0x30 -/* 8018F248 0018C1A8 80 C1 00 2C */ lwz r6, 0x2c(r1) -/* 8018F24C 0018C1AC 38 01 00 10 */ addi r0, r1, 0x10 -/* 8018F250 0018C1B0 7C A3 1B 78 */ or r3, r5, r3 -/* 8018F254 0018C1B4 A1 39 00 00 */ lhz r9, 0(r25) -/* 8018F258 0018C1B8 7C C4 23 78 */ or r4, r6, r4 -/* 8018F25C 0018C1BC 90 61 00 28 */ stw r3, 0x28(r1) -/* 8018F260 0018C1C0 7F E3 FB 78 */ mr r3, r31 -/* 8018F264 0018C1C4 7F A5 EB 78 */ mr r5, r29 -/* 8018F268 0018C1C8 90 81 00 2C */ stw r4, 0x2c(r1) -/* 8018F26C 0018C1CC 7F 46 D3 78 */ mr r6, r26 -/* 8018F270 0018C1D0 7F 67 DB 78 */ mr r7, r27 -/* 8018F274 0018C1D4 7F 88 E3 78 */ mr r8, r28 -/* 8018F278 0018C1D8 B1 21 00 14 */ sth r9, 0x14(r1) -/* 8018F27C 0018C1DC 38 81 00 14 */ addi r4, r1, 0x14 -/* 8018F280 0018C1E0 39 21 01 00 */ addi r9, r1, 0x100 -/* 8018F284 0018C1E4 39 41 00 28 */ addi r10, r1, 0x28 -/* 8018F288 0018C1E8 91 61 00 08 */ stw r11, 8(r1) -/* 8018F28C 0018C1EC 90 01 00 0C */ stw r0, 0xc(r1) -/* 8018F290 0018C1F0 4B EC 65 91 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" -/* 8018F294 0018C1F4 38 61 00 30 */ addi r3, r1, 0x30 -/* 8018F298 0018C1F8 38 80 FF FF */ li r4, -1 -/* 8018F29C 0018C1FC 4B F7 73 6D */ bl __dt__16CActorParametersFv -/* 8018F2A0 0018C200 38 61 00 98 */ addi r3, r1, 0x98 -/* 8018F2A4 0018C204 38 80 FF FF */ li r4, -1 -/* 8018F2A8 0018C208 4B F7 73 61 */ bl __dt__16CActorParametersFv -/* 8018F2AC 0018C20C 38 61 01 00 */ addi r3, r1, 0x100 -/* 8018F2B0 0018C210 38 80 FF FF */ li r4, -1 -/* 8018F2B4 0018C214 4B F8 77 99 */ bl __dt__10CModelDataFv -/* 8018F2B8 0018C218 3C 60 80 3E */ lis r3, lbl_803E4400@ha -/* 8018F2BC 0018C21C 3C 80 50 41 */ lis r4, 0x50415254@ha -/* 8018F2C0 0018C220 38 03 44 00 */ addi r0, r3, lbl_803E4400@l -/* 8018F2C4 0018C224 38 61 00 18 */ addi r3, r1, 0x18 -/* 8018F2C8 0018C228 90 1F 00 00 */ stw r0, 0(r31) -/* 8018F2CC 0018C22C 38 04 52 54 */ addi r0, r4, 0x50415254@l -/* 8018F2D0 0018C230 38 A1 00 20 */ addi r5, r1, 0x20 -/* 8018F2D4 0018C234 D3 7F 00 E8 */ stfs f27, 0xe8(r31) -/* 8018F2D8 0018C238 D3 5F 00 EC */ stfs f26, 0xec(r31) -/* 8018F2DC 0018C23C D3 3F 00 F0 */ stfs f25, 0xf0(r31) -/* 8018F2E0 0018C240 D3 3F 00 F4 */ stfs f25, 0xf4(r31) -/* 8018F2E4 0018C244 D3 9F 00 F8 */ stfs f28, 0xf8(r31) -/* 8018F2E8 0018C248 D3 BF 00 FC */ stfs f29, 0xfc(r31) -/* 8018F2EC 0018C24C D3 DF 01 00 */ stfs f30, 0x100(r31) -/* 8018F2F0 0018C250 D3 FF 01 04 */ stfs f31, 0x104(r31) -/* 8018F2F4 0018C254 90 01 00 20 */ stw r0, 0x20(r1) -/* 8018F2F8 0018C258 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) -/* 8018F2FC 0018C25C 93 C1 00 24 */ stw r30, 0x24(r1) -/* 8018F300 0018C260 81 84 00 00 */ lwz r12, 0(r4) -/* 8018F304 0018C264 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 8018F308 0018C268 7D 89 03 A6 */ mtctr r12 -/* 8018F30C 0018C26C 4E 80 04 21 */ bctrl -/* 8018F310 0018C270 3B 3F 01 08 */ addi r25, r31, 0x108 -/* 8018F314 0018C274 38 81 00 18 */ addi r4, r1, 0x18 -/* 8018F318 0018C278 7F 23 CB 78 */ mr r3, r25 -/* 8018F31C 0018C27C 48 1B 1B 8D */ bl __ct__6CTokenFRC6CToken -/* 8018F320 0018C280 7F 23 CB 78 */ mr r3, r25 -/* 8018F324 0018C284 48 1B 1A E9 */ bl GetObj__6CTokenFv -/* 8018F328 0018C288 80 03 00 04 */ lwz r0, 4(r3) -/* 8018F32C 0018C28C 38 61 00 18 */ addi r3, r1, 0x18 -/* 8018F330 0018C290 38 80 FF FF */ li r4, -1 -/* 8018F334 0018C294 90 19 00 08 */ stw r0, 8(r25) -/* 8018F338 0018C298 48 1B 1B 09 */ bl __dt__6CTokenFv -/* 8018F33C 0018C29C 38 00 00 00 */ li r0, 0 -/* 8018F340 0018C2A0 7F E3 FB 78 */ mr r3, r31 -/* 8018F344 0018C2A4 90 1F 01 14 */ stw r0, 0x114(r31) -/* 8018F348 0018C2A8 39 61 01 B0 */ addi r11, r1, 0x1b0 -/* 8018F34C 0018C2AC 48 1F A6 DD */ bl sub_80389a28 -/* 8018F350 0018C2B0 BB 21 01 5C */ lmw r25, 0x15c(r1) -/* 8018F354 0018C2B4 80 01 01 B4 */ lwz r0, 0x1b4(r1) -/* 8018F358 0018C2B8 7C 08 03 A6 */ mtlr r0 -/* 8018F35C 0018C2BC 38 21 01 B0 */ addi r1, r1, 0x1b0 -/* 8018F360 0018C2C0 4E 80 00 20 */ blr - .global Update__23CHudBossEnergyInterfaceFf Update__23CHudBossEnergyInterfaceFf: /* 8018F364 0018C2C4 94 21 FF C0 */ stwu r1, -0x40(r1) diff --git a/ldscript.lcf b/ldscript.lcf index 9c2c84cd..444d49a3 100644 --- a/ldscript.lcf +++ b/ldscript.lcf @@ -40,4 +40,5 @@ FORCEFILES extabindex.o uart_console_io.o mslsupp.o + CBallFilter.o } diff --git a/obj_files.mk b/obj_files.mk index bf9a8394..2f37f39e 100644 --- a/obj_files.mk +++ b/obj_files.mk @@ -184,6 +184,46 @@ KYOTO_CWD :=\ $(BUILD_DIR)/asm/Kyoto_CWD/CSortedLists.o\ $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptDebugCameraWaypoint.o\ $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptSpiderBallAttractionSurface.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/BodyState/CBSScripted.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CPuddleToadGamma.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptDistanceFog.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/BodyState/CBSProjectileAttack.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Weapons/CPowerBomb.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CMetaree.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptDockAreaChange.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptSpecialFunction.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptActorRotate.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Player/CFidget.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CSpankWeed.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CParasite.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Player/CSamusFaceReflection.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptPlayerHint.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CRipper.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CCameraShakeData.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptPickupGenerator.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptPointOfInterest.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CDrone.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CMapWorldInfo.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Factories/CScannableObjectInfo.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CMetroid.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Player/CScanDisplay.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptSteam.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptRipple.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CBoneTracking.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Player/CFaceplateDecoration.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/BodyState/CBSCover.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptBallTrigger.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Weapons/CPlasmaProjectile.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Player/CPlayerOrbit.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CGameCollision.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CBallFilter.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CAABoxFilter.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CGroundMovement.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Enemies/CNewIntroBoss.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/Weapons/CPhazonBeam.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptTargetingPoint.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/BodyState/CBSWallHang.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/ScriptObjects/CScriptEMPulse.o\ AI_FILES :=\ $(BUILD_DIR)/asm/Dolphin/ai.o